diff --git a/.gitignore b/.gitignore index c4906cb1d..c3e90bcaf 100644 --- a/.gitignore +++ b/.gitignore @@ -42,9 +42,11 @@ node_modules # This is the Yarn install state cache, it can be rebuilt anytime /.yarn/install-state.gz /.yarn/sdks +/.yarn/raijin dist/ -!yarn/cli/dist +!yarn/cli/dist/ +yarn/cli/dist/* yarn/plugin-*/bundles/ !yarn/plugin-badges/bundles/ !yarn/plugin-badges/bundles/** diff --git a/.yarn/releases/yarn.mjs b/.yarn/releases/yarn.mjs index ab0436f40..c81db0ac3 100755 --- a/.yarn/releases/yarn.mjs +++ b/.yarn/releases/yarn.mjs @@ -24,41 +24,41 @@ } })(); -var rjs=Object.create;var Hat=Object.defineProperty;var njs=Object.getOwnPropertyDescriptor;var ijs=Object.getOwnPropertyNames;var sjs=Object.getPrototypeOf,ojs=Object.prototype.hasOwnProperty;var wt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var bc=(e,t)=>()=>(e&&(t=e(e=0)),t);var H=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),sI=(e,t)=>{for(var r in t)Hat(e,r,{get:t[r],enumerable:!0})},Ayn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ijs(t))!ojs.call(e,a)&&a!==r&&Hat(e,a,{get:()=>t[a],enumerable:!(n=njs(t,a))||n.enumerable});return e};var Nt=(e,t,r)=>(r=e!=null?rjs(sjs(e)):{},Ayn(t||!e||!e.__esModule?Hat(r,"default",{value:e,enumerable:!0}):r,e)),vi=e=>Ayn(Hat({},"__esModule",{value:!0}),e);var jy,CC,lfe,$8t,Yat,dyn,ejt,tjt,Qat=bc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})(jy||(jy={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(CC||(CC={}));lfe=-1,$8t=/^(-h|--help)(?:=([0-9]+))?$/,Yat=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,dyn=/^-[a-zA-Z]{2,}$/,ejt=/^([^=]+)=([\s\S]*)$/,tjt=process.env.DEBUG_CLI==="1"});var ufe,gSe,Xat,rjt,Jat=bc(()=>{Qat();ufe=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},gSe=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(n=>n.reason!==null&&n.reason===r[0].reason)){let[{reason:n}]=this.candidates;this.message=`${n} +var mjs=Object.create;var Qat=Object.defineProperty;var Cjs=Object.getOwnPropertyDescriptor;var _js=Object.getOwnPropertyNames;var yjs=Object.getPrototypeOf,bjs=Object.prototype.hasOwnProperty;var wt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var bc=(e,t)=>()=>(e&&(t=e(e=0)),t);var H=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),sI=(e,t)=>{for(var r in t)Qat(e,r,{get:t[r],enumerable:!0})},Cyn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of _js(t))!bjs.call(e,a)&&a!==r&&Qat(e,a,{get:()=>t[a],enumerable:!(n=Cjs(t,a))||n.enumerable});return e};var Nt=(e,t,r)=>(r=e!=null?mjs(yjs(e)):{},Cyn(t||!e||!e.__esModule?Qat(r,"default",{value:e,enumerable:!0}):r,e)),vi=e=>Cyn(Qat({},"__esModule",{value:!0}),e);var jy,CC,ufe,njt,Xat,_yn,ijt,sjt,Jat=bc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})(jy||(jy={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(CC||(CC={}));ufe=-1,njt=/^(-h|--help)(?:=([0-9]+))?$/,Xat=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,_yn=/^-[a-zA-Z]{2,}$/,ijt=/^([^=]+)=([\s\S]*)$/,sjt=process.env.DEBUG_CLI==="1"});var gfe,ASe,Uat,ojt,Kat=bc(()=>{Jat();gfe=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},ASe=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(n=>n.reason!==null&&n.reason===r[0].reason)){let[{reason:n}]=this.candidates;this.message=`${n} ${this.candidates.map(({usage:a})=>`$ ${a}`).join(` `)}`}else if(this.candidates.length===1){let[{usage:n}]=this.candidates;this.message=`Command not found; did you mean: $ ${n} -${rjt(t)}`}else this.message=`Command not found; did you mean one of: +${ojt(t)}`}else this.message=`Command not found; did you mean one of: ${this.candidates.map(({usage:n},a)=>`${`${a}.`.padStart(4)} ${n}`).join(` `)} -${rjt(t)}`}},Xat=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: +${ojt(t)}`}},Uat=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: ${this.usages.map((n,a)=>`${`${a}.`.padStart(4)} ${n}`).join(` `)} -${rjt(t)}`}},rjt=e=>`While running ${e.filter(t=>t!==jy.EndOfInput&&t!==jy.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function ajs(e){let t=e.split(` +${ojt(t)}`}},ojt=e=>`While running ${e.filter(t=>t!==jy.EndOfInput&&t!==jy.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function Ejs(e){let t=e.split(` `),r=t.filter(a=>a.match(/\S/)),n=r.length>0?r.reduce((a,o)=>Math.min(a,o.length-o.trimStart().length),Number.MAX_VALUE):0;return t.map(a=>a.slice(n).trimRight()).join(` `)}function G9(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,` -`),e=ajs(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 +`),e=Ejs(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 `),e=e.replace(/\n(\n)?\n*/g,(n,a)=>a||" "),r&&(e=e.split(/\n/).map(n=>{let a=n.match(/^\s*[*-][\t ]+(.*)/);if(!a)return n.match(/(.{1,80})(?: |$)/g).join(` `);let o=n.length-n.trimStart().length;return a[1].match(new RegExp(`(.{1,${78-o}})(?: |$)`,"g")).map((l,A)=>" ".repeat(o)+(A===0?"- ":" ")+l).join(` `)}).join(` `)),e=e.replace(/(`+)((?:.|[\n])*?)\1/g,(n,a,o)=>t.code(a+o+a)),e=e.replace(/(\*\*)((?:.|[\n])*?)\1/g,(n,a,o)=>t.bold(a+o+a)),e?`${e} -`:""}var njt,pyn,fyn,ijt=bc(()=>{njt=Array(80).fill("\u2501");for(let e=0;e<=24;++e)njt[njt.length-e]=`\x1B[38;5;${232+e}m\u2501`;pyn={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${njt.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},fyn={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function hZ(e){return{...e,[VOe]:!0}}function FK(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function Uat(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,n,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=n!=="."||!t?`${n.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function POe(e,t){return t.length===1?new ufe(`${e}${Uat(t[0],{mergeName:!0})}`):new ufe(`${e}: +`:""}var ajt,yyn,byn,cjt=bc(()=>{ajt=Array(80).fill("\u2501");for(let e=0;e<=24;++e)ajt[ajt.length-e]=`\x1B[38;5;${232+e}m\u2501`;yyn={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${ajt.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},byn={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function hZ(e){return{...e,[WOe]:!0}}function FK(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function jat(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,n,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=n!=="."||!t?`${n.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function OOe(e,t){return t.length===1?new gfe(`${e}${jat(t[0],{mergeName:!0})}`):new gfe(`${e}: ${t.map(r=>` -- ${Uat(r)}`).join("")}`)}function gfe(e,t,r){if(typeof r>"u")return t;let n=[],a=[],o=A=>{let f=t;return t=A,o.bind(null,f)};if(!r(t,{errors:n,coercions:a,coercion:o}))throw POe(`Invalid value for ${e}`,n);for(let[,A]of a)A();return t}var VOe,Mq=bc(()=>{Jat();VOe=Symbol("clipanion/isOption")});var mZ={};sI(mZ,{KeyRelationship:()=>ASe,TypeAssertionError:()=>Kse,applyCascade:()=>Ujs,as:()=>Tjs,assert:()=>vjs,assertWithErrors:()=>Bjs,cascade:()=>byn,fn:()=>Rjs,hasAtLeastOneKey:()=>qjs,hasExactLength:()=>yyn,hasForbiddenKeys:()=>$js,hasKeyRelationship:()=>r6s,hasMaxLength:()=>Djs,hasMinLength:()=>Njs,hasMutuallyExclusiveKeys:()=>e6s,hasRequiredKeys:()=>zjs,hasUniqueItems:()=>kjs,isArray:()=>Kat,isAtLeast:()=>Fjs,isAtMost:()=>Zjs,isBase64:()=>Xjs,isBoolean:()=>fjs,isDate:()=>mjs,isDict:()=>yjs,isEnum:()=>ajt,isHexColor:()=>Qjs,isISO8601:()=>Yjs,isInExclusiveRange:()=>Vjs,isInInclusiveRange:()=>Ljs,isInstanceOf:()=>Ejs,isInteger:()=>Pjs,isJSON:()=>Jjs,isLiteral:()=>hyn,isLowerCase:()=>Ojs,isMap:()=>_js,isNegative:()=>xjs,isNullable:()=>jjs,isNumber:()=>Ijs,isObject:()=>Cyn,isOneOf:()=>Sjs,isOptional:()=>Kjs,isPartial:()=>bjs,isPayload:()=>hjs,isPositive:()=>Gjs,isRecord:()=>zat,isSet:()=>Cjs,isString:()=>myn,isTuple:()=>jat,isUUID4:()=>Hjs,isUnknown:()=>ojt,isUpperCase:()=>Mjs,makeTrait:()=>_yn,makeValidator:()=>DI,matchesRegExp:()=>Wjs,softAssert:()=>wjs});function zy(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function dSe(e,t){if(e.length===0)return"nothing";if(e.length===1)return zy(e[0]);let r=e.slice(0,-1),n=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>zy(o)).join(", ")}${a}${zy(n)}`}function Use(e,t){var r,n,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:cjs.test(t)?`${(n=e?.p)!==null&&n!==void 0?n:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function sjt(e,t,r){return e===1?t:r}function hd({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function djs(e,t){return r=>{e[t]=r}}function ZK(e,t){return r=>{let n=e[t];return e[t]=r,ZK(e,t).bind(null,n)}}function WOe(e,t,r){let n=()=>(e(r()),a),a=()=>(e(t),n);return n}function ojt(){return DI({test:(e,t)=>!0})}function hyn(e){return DI({test:(t,r)=>t!==e?hd(r,`Expected ${zy(e)} (got ${zy(t)})`):!0})}function myn(){return DI({test:(e,t)=>typeof e!="string"?hd(t,`Expected a string (got ${zy(e)})`):!0})}function ajt(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),n=new Set(t);return n.size===1?hyn([...n][0]):DI({test:(a,o)=>n.has(a)?!0:r?hd(o,`Expected one of ${dSe(t,"or")} (got ${zy(a)})`):hd(o,`Expected a valid enumeration value (got ${zy(a)})`)})}function fjs(){return DI({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n=pjs.get(e);if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a boolean (got ${zy(e)})`)}return!0}})}function Ijs(){return DI({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)n=a;else return hd(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a number (got ${zy(e)})`)}return!0}})}function hjs(e){return DI({test:(t,r)=>{var n;if(typeof r?.coercions>"u")return hd(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return hd(r,"Unbound coercion result");if(typeof t!="string")return hd(r,`Expected a string (got ${zy(t)})`);let a;try{a=JSON.parse(t)}catch{return hd(r,`Expected a JSON string (got ${zy(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:ZK(o,"value")}))?(r.coercions.push([(n=r.p)!==null&&n!==void 0?n:".",r.coercion.bind(null,o.value)]),!0):!1}})}function mjs(){return DI({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n;if(typeof e=="string"&&Iyn.test(e))n=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))n=new Date(a*1e3);else return hd(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a date (got ${zy(e)})`)}return!0}})}function Kat(e,{delimiter:t}={}){return DI({test:(r,n)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return hd(n,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return hd(n,`Expected an array (got ${zy(r)})`);let l=!0;for(let A=0,f=r.length;A{var o,l;if(Object.getPrototypeOf(n).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");let A=[...n],f=[...n];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let I=()=>f.some((C,b)=>C!==A[b])?new Set(f):n;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",WOe(a.coercion,n,I)]),!0}else{let A=!0;for(let f of n)if(A=e(f,Object.assign({},a))&&A,!A&&a?.errors==null)break;return A}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");let A={value:n};return r(n,Object.assign(Object.assign({},a),{coercion:ZK(A,"value")}))?(a.coercions.push([(l=a.p)!==null&&l!==void 0?l:".",WOe(a.coercion,n,()=>new Set(A.value))]),!0):!1}return hd(a,`Expected a set (got ${zy(n)})`)}})}function _js(e,t){let r=Kat(jat([e,t])),n=zat(t,{keys:e});return DI({test:(a,o)=>{var l,A,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return hd(o,"Unbound coercion result");let I=[...a],C=[...a];if(!r(C,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let b=()=>C.some((E,N)=>E[0]!==I[N][0]||E[1]!==I[N][1])?new Map(C):a;return o.coercions.push([(l=o.p)!==null&&l!==void 0?l:".",WOe(o.coercion,a,b)]),!0}else{let I=!0;for(let[C,b]of a)if(I=e(C,Object.assign({},o))&&I,!I&&o?.errors==null||(I=t(b,Object.assign(Object.assign({},o),{p:Use(o,C)}))&&I,!I&&o?.errors==null))break;return I}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return hd(o,"Unbound coercion result");let I={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(A=o.p)!==null&&A!==void 0?A:".",WOe(o.coercion,a,()=>new Map(I.value))]),!0):!1:n(a,Object.assign(Object.assign({},o),{coercion:ZK(I,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",WOe(o.coercion,a,()=>new Map(Object.entries(I.value)))]),!0):!1}return hd(o,`Expected a map (got ${zy(a)})`)}})}function jat(e,{delimiter:t}={}){let r=yyn(e.length);return DI({test:(n,a)=>{var o;if(typeof n=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");n=n.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)])}if(!Array.isArray(n))return hd(a,`Expected a tuple (got ${zy(n)})`);let l=r(n,Object.assign({},a));for(let A=0,f=n.length;A{var o;if(Array.isArray(n)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?hd(a,"Unbound coercion result"):r(n,Object.assign(Object.assign({},a),{coercion:void 0}))?(n=Object.fromEntries(n),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)]),!0):!1;if(typeof n!="object"||n===null)return hd(a,`Expected an object (got ${zy(n)})`);let l=Object.keys(n),A=!0;for(let f=0,I=l.length;f{if(typeof a!="object"||a===null)return hd(o,`Expected an object (got ${zy(a)})`);let l=new Set([...r,...Object.keys(a)]),A={},f=!0;for(let I of l){if(I==="constructor"||I==="__proto__")f=hd(Object.assign(Object.assign({},o),{p:Use(o,I)}),"Unsafe property name");else{let C=Object.prototype.hasOwnProperty.call(e,I)?e[I]:void 0,b=Object.prototype.hasOwnProperty.call(a,I)?a[I]:void 0;typeof C<"u"?f=C(b,Object.assign(Object.assign({},o),{p:Use(o,I),coercion:ZK(a,I)}))&&f:t===null?f=hd(Object.assign(Object.assign({},o),{p:Use(o,I)}),`Extraneous property (got ${zy(b)})`):Object.defineProperty(A,I,{enumerable:!0,get:()=>b,set:djs(a,I)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(A,o)&&f),f}});return Object.assign(n,{properties:e})}function bjs(e){return Cyn(e,{extra:zat(ojt())})}function _yn(e){return()=>e}function DI({test:e}){return _yn(e)()}function vjs(e,t){if(!t(e))throw new Kse}function Bjs(e,t){let r=[];if(!t(e,{errors:r}))throw new Kse({errors:r})}function wjs(e,t){}function Tjs(e,t,{coerce:r=!1,errors:n,throw:a}={}){let o=n?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new Kse({errors:o});return{value:void 0,errors:o??!0}}let l={value:e},A=ZK(l,"value"),f=[];if(!t(e,{errors:o,coercion:A,coercions:f})){if(a)throw new Kse({errors:o});return{value:void 0,errors:o??!0}}for(let[,I]of f)I();return a?l.value:{value:l.value,errors:void 0}}function Rjs(e,t){let r=jat(e);return(...n)=>{if(!r(n))throw new Kse;return t(...n)}}function Njs(e){return DI({test:(t,r)=>t.length>=e?!0:hd(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function Djs(e){return DI({test:(t,r)=>t.length<=e?!0:hd(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function yyn(e){return DI({test:(t,r)=>t.length!==e?hd(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function kjs({map:e}={}){return DI({test:(t,r)=>{let n=new Set,a=new Set;for(let o=0,l=t.length;oe<=0?!0:hd(t,`Expected to be negative (got ${e})`)})}function Gjs(){return DI({test:(e,t)=>e>=0?!0:hd(t,`Expected to be positive (got ${e})`)})}function Fjs(e){return DI({test:(t,r)=>t>=e?!0:hd(r,`Expected to be at least ${e} (got ${t})`)})}function Zjs(e){return DI({test:(t,r)=>t<=e?!0:hd(r,`Expected to be at most ${e} (got ${t})`)})}function Ljs(e,t){return DI({test:(r,n)=>r>=e&&r<=t?!0:hd(n,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function Vjs(e,t){return DI({test:(r,n)=>r>=e&&rt!==Math.round(t)?hd(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?hd(r,`Expected to be a safe integer (got ${t})`):!0})}function Wjs(e){return DI({test:(t,r)=>e.test(t)?!0:hd(r,`Expected to match the pattern ${e.toString()} (got ${zy(t)})`)})}function Ojs(){return DI({test:(e,t)=>e!==e.toLowerCase()?hd(t,`Expected to be all-lowercase (got ${e})`):!0})}function Mjs(){return DI({test:(e,t)=>e!==e.toUpperCase()?hd(t,`Expected to be all-uppercase (got ${e})`):!0})}function Hjs(){return DI({test:(e,t)=>Ajs.test(e)?!0:hd(t,`Expected to be a valid UUID v4 (got ${zy(e)})`)})}function Yjs(){return DI({test:(e,t)=>Iyn.test(e)?!0:hd(t,`Expected to be a valid ISO 8601 date string (got ${zy(e)})`)})}function Qjs({alpha:e=!1}){return DI({test:(t,r)=>(e?ljs.test(t):ujs.test(t))?!0:hd(r,`Expected to be a valid hexadecimal color string (got ${zy(t)})`)})}function Xjs(){return DI({test:(e,t)=>gjs.test(e)?!0:hd(t,`Expected to be a valid base 64 string (got ${zy(e)})`)})}function Jjs(e=ojt()){return DI({test:(t,r)=>{let n;try{n=JSON.parse(t)}catch{return hd(r,`Expected to be a valid JSON string (got ${zy(t)})`)}return e(n,r)}})}function byn(e,...t){let r=Array.isArray(t[0])?t[0]:t;return DI({test:(n,a)=>{var o,l;let A={value:n},f=typeof a?.coercions<"u"?ZK(A,"value"):void 0,I=typeof a?.coercions<"u"?[]:void 0;if(!e(n,Object.assign(Object.assign({},a),{coercion:f,coercions:I})))return!1;let C=[];if(typeof I<"u")for(let[,b]of I)C.push(b());try{if(typeof a?.coercions<"u"){if(A.value!==n){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,A.value)])}(l=a?.coercions)===null||l===void 0||l.push(...I)}return r.every(b=>b(A.value,a))}finally{for(let b of C)b()}}})}function Ujs(e,...t){let r=Array.isArray(t[0])?t[0]:t;return byn(e,r)}function Kjs(e){return DI({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function jjs(e){return DI({test:(t,r)=>t===null?!0:e(t,r)})}function zjs(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)||f.push(I);return f.length>0?hd(l,`Missing required ${sjt(f.length,"property","properties")} ${dSe(f,"and")}`):!0}})}function qjs(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>Object.keys(o).some(I=>a(n,I,o))?!0:hd(l,`Missing at least one property from ${dSe(Array.from(n),"or")}`)})}function $js(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>0?hd(l,`Forbidden ${sjt(f.length,"property","properties")} ${dSe(f,"and")}`):!0}})}function e6s(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>1?hd(l,`Mutually exclusive properties ${dSe(f,"and")}`):!0}})}function r6s(e,t,r,n){var a,o;let l=new Set((a=n?.ignore)!==null&&a!==void 0?a:[]),A=OOe[(o=n?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),I=t6s[t],C=t===ASe.Forbids?"or":"and";return DI({test:(b,E)=>{let N=new Set(Object.keys(b));if(!A(N,e,b)||l.has(b[e]))return!0;let B=[];for(let F of f)(A(N,F,b)&&!l.has(b[F]))!==I.expect&&B.push(F);return B.length>=1?hd(E,`Property "${e}" ${I.message} ${sjt(B.length,"property","properties")} ${dSe(B,C)}`):!0}})}var cjs,ljs,ujs,gjs,Ajs,Iyn,pjs,Ejs,Sjs,Kse,OOe,ASe,t6s,CZ=bc(()=>{cjs=/^[a-zA-Z_][a-zA-Z0-9_]*$/;ljs=/^#[0-9a-f]{6}$/i,ujs=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,gjs=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Ajs=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Iyn=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;pjs=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);Ejs=e=>DI({test:(t,r)=>t instanceof e?!0:hd(r,`Expected an instance of ${e.name} (got ${zy(t)})`)}),Sjs=(e,{exclusive:t=!1}={})=>DI({test:(r,n)=>{var a,o,l;let A=[],f=typeof n?.errors<"u"?[]:void 0;for(let I=0,C=e.length;I1?hd(n,`Expected to match exactly a single predicate (matched ${A.join(", ")})`):(l=n?.errors)===null||l===void 0||l.push(...f),!1}});Kse=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` +- ${jat(r)}`).join("")}`)}function Afe(e,t,r){if(typeof r>"u")return t;let n=[],a=[],o=A=>{let f=t;return t=A,o.bind(null,f)};if(!r(t,{errors:n,coercions:a,coercion:o}))throw OOe(`Invalid value for ${e}`,n);for(let[,A]of a)A();return t}var WOe,Mq=bc(()=>{Kat();WOe=Symbol("clipanion/isOption")});var mZ={};sI(mZ,{KeyRelationship:()=>dSe,TypeAssertionError:()=>jse,applyCascade:()=>u6s,as:()=>Yjs,assert:()=>Ojs,assertWithErrors:()=>Mjs,cascade:()=>Ryn,fn:()=>Qjs,hasAtLeastOneKey:()=>p6s,hasExactLength:()=>Tyn,hasForbiddenKeys:()=>f6s,hasKeyRelationship:()=>m6s,hasMaxLength:()=>Jjs,hasMinLength:()=>Xjs,hasMutuallyExclusiveKeys:()=>I6s,hasRequiredKeys:()=>d6s,hasUniqueItems:()=>Ujs,isArray:()=>zat,isAtLeast:()=>zjs,isAtMost:()=>qjs,isBase64:()=>c6s,isBoolean:()=>Djs,isDate:()=>Gjs,isDict:()=>Ljs,isEnum:()=>gjt,isHexColor:()=>a6s,isISO8601:()=>o6s,isInExclusiveRange:()=>e6s,isInInclusiveRange:()=>$js,isInstanceOf:()=>Pjs,isInteger:()=>t6s,isJSON:()=>l6s,isLiteral:()=>Syn,isLowerCase:()=>n6s,isMap:()=>Zjs,isNegative:()=>Kjs,isNullable:()=>A6s,isNumber:()=>kjs,isObject:()=>Byn,isOneOf:()=>Wjs,isOptional:()=>g6s,isPartial:()=>Vjs,isPayload:()=>xjs,isPositive:()=>jjs,isRecord:()=>$at,isSet:()=>Fjs,isString:()=>vyn,isTuple:()=>qat,isUUID4:()=>s6s,isUnknown:()=>ujt,isUpperCase:()=>i6s,makeTrait:()=>wyn,makeValidator:()=>DI,matchesRegExp:()=>r6s,softAssert:()=>Hjs});function zy(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function pSe(e,t){if(e.length===0)return"nothing";if(e.length===1)return zy(e[0]);let r=e.slice(0,-1),n=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>zy(o)).join(", ")}${a}${zy(n)}`}function Kse(e,t){var r,n,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:Sjs.test(t)?`${(n=e?.p)!==null&&n!==void 0?n:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function ljt(e,t,r){return e===1?t:r}function hd({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function Rjs(e,t){return r=>{e[t]=r}}function ZK(e,t){return r=>{let n=e[t];return e[t]=r,ZK(e,t).bind(null,n)}}function MOe(e,t,r){let n=()=>(e(r()),a),a=()=>(e(t),n);return n}function ujt(){return DI({test:(e,t)=>!0})}function Syn(e){return DI({test:(t,r)=>t!==e?hd(r,`Expected ${zy(e)} (got ${zy(t)})`):!0})}function vyn(){return DI({test:(e,t)=>typeof e!="string"?hd(t,`Expected a string (got ${zy(e)})`):!0})}function gjt(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),n=new Set(t);return n.size===1?Syn([...n][0]):DI({test:(a,o)=>n.has(a)?!0:r?hd(o,`Expected one of ${pSe(t,"or")} (got ${zy(a)})`):hd(o,`Expected a valid enumeration value (got ${zy(a)})`)})}function Djs(){return DI({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n=Njs.get(e);if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a boolean (got ${zy(e)})`)}return!0}})}function kjs(){return DI({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)n=a;else return hd(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a number (got ${zy(e)})`)}return!0}})}function xjs(e){return DI({test:(t,r)=>{var n;if(typeof r?.coercions>"u")return hd(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return hd(r,"Unbound coercion result");if(typeof t!="string")return hd(r,`Expected a string (got ${zy(t)})`);let a;try{a=JSON.parse(t)}catch{return hd(r,`Expected a JSON string (got ${zy(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:ZK(o,"value")}))?(r.coercions.push([(n=r.p)!==null&&n!==void 0?n:".",r.coercion.bind(null,o.value)]),!0):!1}})}function Gjs(){return DI({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n;if(typeof e=="string"&&Eyn.test(e))n=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))n=new Date(a*1e3);else return hd(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a date (got ${zy(e)})`)}return!0}})}function zat(e,{delimiter:t}={}){return DI({test:(r,n)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return hd(n,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return hd(n,`Expected an array (got ${zy(r)})`);let l=!0;for(let A=0,f=r.length;A{var o,l;if(Object.getPrototypeOf(n).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");let A=[...n],f=[...n];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let I=()=>f.some((C,b)=>C!==A[b])?new Set(f):n;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",MOe(a.coercion,n,I)]),!0}else{let A=!0;for(let f of n)if(A=e(f,Object.assign({},a))&&A,!A&&a?.errors==null)break;return A}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");let A={value:n};return r(n,Object.assign(Object.assign({},a),{coercion:ZK(A,"value")}))?(a.coercions.push([(l=a.p)!==null&&l!==void 0?l:".",MOe(a.coercion,n,()=>new Set(A.value))]),!0):!1}return hd(a,`Expected a set (got ${zy(n)})`)}})}function Zjs(e,t){let r=zat(qat([e,t])),n=$at(t,{keys:e});return DI({test:(a,o)=>{var l,A,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return hd(o,"Unbound coercion result");let I=[...a],C=[...a];if(!r(C,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let b=()=>C.some((E,N)=>E[0]!==I[N][0]||E[1]!==I[N][1])?new Map(C):a;return o.coercions.push([(l=o.p)!==null&&l!==void 0?l:".",MOe(o.coercion,a,b)]),!0}else{let I=!0;for(let[C,b]of a)if(I=e(C,Object.assign({},o))&&I,!I&&o?.errors==null||(I=t(b,Object.assign(Object.assign({},o),{p:Kse(o,C)}))&&I,!I&&o?.errors==null))break;return I}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return hd(o,"Unbound coercion result");let I={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(A=o.p)!==null&&A!==void 0?A:".",MOe(o.coercion,a,()=>new Map(I.value))]),!0):!1:n(a,Object.assign(Object.assign({},o),{coercion:ZK(I,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",MOe(o.coercion,a,()=>new Map(Object.entries(I.value)))]),!0):!1}return hd(o,`Expected a map (got ${zy(a)})`)}})}function qat(e,{delimiter:t}={}){let r=Tyn(e.length);return DI({test:(n,a)=>{var o;if(typeof n=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");n=n.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)])}if(!Array.isArray(n))return hd(a,`Expected a tuple (got ${zy(n)})`);let l=r(n,Object.assign({},a));for(let A=0,f=n.length;A{var o;if(Array.isArray(n)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?hd(a,"Unbound coercion result"):r(n,Object.assign(Object.assign({},a),{coercion:void 0}))?(n=Object.fromEntries(n),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)]),!0):!1;if(typeof n!="object"||n===null)return hd(a,`Expected an object (got ${zy(n)})`);let l=Object.keys(n),A=!0;for(let f=0,I=l.length;f{if(typeof a!="object"||a===null)return hd(o,`Expected an object (got ${zy(a)})`);let l=new Set([...r,...Object.keys(a)]),A={},f=!0;for(let I of l){if(I==="constructor"||I==="__proto__")f=hd(Object.assign(Object.assign({},o),{p:Kse(o,I)}),"Unsafe property name");else{let C=Object.prototype.hasOwnProperty.call(e,I)?e[I]:void 0,b=Object.prototype.hasOwnProperty.call(a,I)?a[I]:void 0;typeof C<"u"?f=C(b,Object.assign(Object.assign({},o),{p:Kse(o,I),coercion:ZK(a,I)}))&&f:t===null?f=hd(Object.assign(Object.assign({},o),{p:Kse(o,I)}),`Extraneous property (got ${zy(b)})`):Object.defineProperty(A,I,{enumerable:!0,get:()=>b,set:Rjs(a,I)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(A,o)&&f),f}});return Object.assign(n,{properties:e})}function Vjs(e){return Byn(e,{extra:$at(ujt())})}function wyn(e){return()=>e}function DI({test:e}){return wyn(e)()}function Ojs(e,t){if(!t(e))throw new jse}function Mjs(e,t){let r=[];if(!t(e,{errors:r}))throw new jse({errors:r})}function Hjs(e,t){}function Yjs(e,t,{coerce:r=!1,errors:n,throw:a}={}){let o=n?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new jse({errors:o});return{value:void 0,errors:o??!0}}let l={value:e},A=ZK(l,"value"),f=[];if(!t(e,{errors:o,coercion:A,coercions:f})){if(a)throw new jse({errors:o});return{value:void 0,errors:o??!0}}for(let[,I]of f)I();return a?l.value:{value:l.value,errors:void 0}}function Qjs(e,t){let r=qat(e);return(...n)=>{if(!r(n))throw new jse;return t(...n)}}function Xjs(e){return DI({test:(t,r)=>t.length>=e?!0:hd(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function Jjs(e){return DI({test:(t,r)=>t.length<=e?!0:hd(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function Tyn(e){return DI({test:(t,r)=>t.length!==e?hd(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function Ujs({map:e}={}){return DI({test:(t,r)=>{let n=new Set,a=new Set;for(let o=0,l=t.length;oe<=0?!0:hd(t,`Expected to be negative (got ${e})`)})}function jjs(){return DI({test:(e,t)=>e>=0?!0:hd(t,`Expected to be positive (got ${e})`)})}function zjs(e){return DI({test:(t,r)=>t>=e?!0:hd(r,`Expected to be at least ${e} (got ${t})`)})}function qjs(e){return DI({test:(t,r)=>t<=e?!0:hd(r,`Expected to be at most ${e} (got ${t})`)})}function $js(e,t){return DI({test:(r,n)=>r>=e&&r<=t?!0:hd(n,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function e6s(e,t){return DI({test:(r,n)=>r>=e&&rt!==Math.round(t)?hd(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?hd(r,`Expected to be a safe integer (got ${t})`):!0})}function r6s(e){return DI({test:(t,r)=>e.test(t)?!0:hd(r,`Expected to match the pattern ${e.toString()} (got ${zy(t)})`)})}function n6s(){return DI({test:(e,t)=>e!==e.toLowerCase()?hd(t,`Expected to be all-lowercase (got ${e})`):!0})}function i6s(){return DI({test:(e,t)=>e!==e.toUpperCase()?hd(t,`Expected to be all-uppercase (got ${e})`):!0})}function s6s(){return DI({test:(e,t)=>Tjs.test(e)?!0:hd(t,`Expected to be a valid UUID v4 (got ${zy(e)})`)})}function o6s(){return DI({test:(e,t)=>Eyn.test(e)?!0:hd(t,`Expected to be a valid ISO 8601 date string (got ${zy(e)})`)})}function a6s({alpha:e=!1}){return DI({test:(t,r)=>(e?vjs.test(t):Bjs.test(t))?!0:hd(r,`Expected to be a valid hexadecimal color string (got ${zy(t)})`)})}function c6s(){return DI({test:(e,t)=>wjs.test(e)?!0:hd(t,`Expected to be a valid base 64 string (got ${zy(e)})`)})}function l6s(e=ujt()){return DI({test:(t,r)=>{let n;try{n=JSON.parse(t)}catch{return hd(r,`Expected to be a valid JSON string (got ${zy(t)})`)}return e(n,r)}})}function Ryn(e,...t){let r=Array.isArray(t[0])?t[0]:t;return DI({test:(n,a)=>{var o,l;let A={value:n},f=typeof a?.coercions<"u"?ZK(A,"value"):void 0,I=typeof a?.coercions<"u"?[]:void 0;if(!e(n,Object.assign(Object.assign({},a),{coercion:f,coercions:I})))return!1;let C=[];if(typeof I<"u")for(let[,b]of I)C.push(b());try{if(typeof a?.coercions<"u"){if(A.value!==n){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,A.value)])}(l=a?.coercions)===null||l===void 0||l.push(...I)}return r.every(b=>b(A.value,a))}finally{for(let b of C)b()}}})}function u6s(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Ryn(e,r)}function g6s(e){return DI({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function A6s(e){return DI({test:(t,r)=>t===null?!0:e(t,r)})}function d6s(e,t){var r;let n=new Set(e),a=HOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)||f.push(I);return f.length>0?hd(l,`Missing required ${ljt(f.length,"property","properties")} ${pSe(f,"and")}`):!0}})}function p6s(e,t){var r;let n=new Set(e),a=HOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>Object.keys(o).some(I=>a(n,I,o))?!0:hd(l,`Missing at least one property from ${pSe(Array.from(n),"or")}`)})}function f6s(e,t){var r;let n=new Set(e),a=HOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>0?hd(l,`Forbidden ${ljt(f.length,"property","properties")} ${pSe(f,"and")}`):!0}})}function I6s(e,t){var r;let n=new Set(e),a=HOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>1?hd(l,`Mutually exclusive properties ${pSe(f,"and")}`):!0}})}function m6s(e,t,r,n){var a,o;let l=new Set((a=n?.ignore)!==null&&a!==void 0?a:[]),A=HOe[(o=n?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),I=h6s[t],C=t===dSe.Forbids?"or":"and";return DI({test:(b,E)=>{let N=new Set(Object.keys(b));if(!A(N,e,b)||l.has(b[e]))return!0;let B=[];for(let F of f)(A(N,F,b)&&!l.has(b[F]))!==I.expect&&B.push(F);return B.length>=1?hd(E,`Property "${e}" ${I.message} ${ljt(B.length,"property","properties")} ${pSe(B,C)}`):!0}})}var Sjs,vjs,Bjs,wjs,Tjs,Eyn,Njs,Pjs,Wjs,jse,HOe,dSe,h6s,CZ=bc(()=>{Sjs=/^[a-zA-Z_][a-zA-Z0-9_]*$/;vjs=/^#[0-9a-f]{6}$/i,Bjs=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,wjs=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Tjs=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Eyn=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;Njs=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);Pjs=e=>DI({test:(t,r)=>t instanceof e?!0:hd(r,`Expected an instance of ${e.name} (got ${zy(t)})`)}),Wjs=(e,{exclusive:t=!1}={})=>DI({test:(r,n)=>{var a,o,l;let A=[],f=typeof n?.errors<"u"?[]:void 0;for(let I=0,C=e.length;I1?hd(n,`Expected to match exactly a single predicate (matched ${A.join(", ")})`):(l=n?.errors)===null||l===void 0||l.push(...f),!1}});jse=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` `;for(let n of t)r+=` -- ${n}`}super(r)}};OOe={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(ASe||(ASe={}));t6s={[ASe.Forbids]:{expect:!1,message:"forbids using"},[ASe.Requires]:{expect:!0,message:"requires using"}}});var _C,jse=bc(()=>{Mq();_C=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:l}=await Promise.resolve().then(()=>(CZ(),mZ)),A=l(a(o()),r),f=[],I=[];if(!A(this,{errors:f,coercions:I}))throw POe("Invalid option schema",f);for(let[,b]of I)b()}else if(r!=null)throw new Error("Invalid command schema");let n=await this.execute();return typeof n<"u"?n:0}};_C.isOption=VOe;_C.Default=[]});function F9(e){tjt&&console.log(e)}function Syn(){let e={nodes:[]};for(let t=0;t{if(t.has(n))return;t.add(n);let a=e.nodes[n];for(let l of Object.values(a.statics))for(let{to:A}of l)r(A);for(let[,{to:l}]of a.dynamics)r(l);for(let{to:l}of a.shortcuts)r(l);let o=new Set(a.shortcuts.map(({to:l})=>l));for(;a.shortcuts.length>0;){let{to:l}=a.shortcuts.shift(),A=e.nodes[l];for(let[f,I]of Object.entries(A.statics)){let C=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let b of I)C.some(({to:E})=>b.to===E)||C.push(b)}for(let[f,I]of A.dynamics)a.dynamics.some(([C,{to:b}])=>f===C&&I.to===b)||a.dynamics.push([f,I]);for(let f of A.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(CC.InitialNode)}function s6s(e,{prefix:t=""}={}){if(tjt){F9(`${t}Nodes are:`);for(let r=0;rC!==CC.ErrorNode).map(({state:C})=>({usage:C.candidateUsage,reason:null})));if(I.every(({node:C})=>C===CC.ErrorNode))throw new gSe(t,I.map(({state:C})=>({usage:C.candidateUsage,reason:C.errorMessage})));n=c6s(I)}if(n.length>0){F9(" Results:");for(let o of n)F9(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else F9(" No results");return n}function a6s(e,t,{endToken:r=jy.EndOfInput}={}){let n=o6s(e,[...t,r]);return l6s(t,n.map(({state:a})=>a))}function c6s(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function l6s(e,t){let r=t.filter(E=>E.selectedIndex!==null),n=r.filter(E=>!E.partial);if(n.length>0&&(r=n),r.length===0)throw new Error;let a=r.filter(E=>E.selectedIndex===lfe||E.requiredOptions.every(N=>N.some(B=>E.options.find(F=>F.name===B))));if(a.length===0)throw new gSe(e,r.map(E=>({usage:E.candidateUsage,reason:null})));let o=0;for(let E of a)E.path.length>o&&(o=E.path.length);let l=a.filter(E=>E.path.length===o),A=E=>E.positionals.filter(({extra:N})=>!N).length+E.options.length,f=l.map(E=>({state:E,positionalCount:A(E)})),I=0;for(let{positionalCount:E}of f)E>I&&(I=E);let C=f.filter(({positionalCount:E})=>E===I).map(({state:E})=>E),b=u6s(C);if(b.length>1)throw new Xat(e,b.map(E=>E.candidateUsage));return b[0]}function u6s(e){let t=[],r=[];for(let n of e)n.selectedIndex===lfe?r.push(n):t.push(n);return r.length>0&&t.push({...Eyn,path:vyn(...r.map(n=>n.path)),options:r.reduce((n,a)=>n.concat(a.options),[])}),t}function vyn(e,t,...r){return t===void 0?Array.from(e):vyn(e.filter((n,a)=>n===t[a]),...r)}function BW(){return{dynamics:[],shortcuts:[],statics:{}}}function Byn(e){return e===CC.SuccessNode||e===CC.ErrorNode}function cjt(e,t=0){return{to:Byn(e.to)?e.to:e.to>=CC.CustomNode?e.to+t-CC.CustomNode+1:e.to+t,reducer:e.reducer}}function g6s(e,t=0){let r=BW();for(let[n,a]of e.dynamics)r.dynamics.push([n,cjt(a,t)]);for(let n of e.shortcuts)r.shortcuts.push(cjt(n,t));for(let[n,a]of Object.entries(e.statics))r.statics[n]=a.map(o=>cjt(o,t));return r}function QN(e,t,r,n,a){e.nodes[t].dynamics.push([r,{to:n,reducer:a}])}function pSe(e,t,r,n){e.nodes[t].shortcuts.push({to:r,reducer:n})}function _Z(e,t,r,n,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:n,reducer:a})}function qat(e,t,r,n,a){if(Array.isArray(t)){let[o,...l]=t;return e[o](r,n,a,...l)}else return e[t](r,n,a)}var Eyn,A6s,ljt,wW,ujt,$at,ect=bc(()=>{Qat();Jat();Eyn={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:lfe,partial:!1,tokens:[]};A6s={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,n)=>!e.ignoreOptions&&t===n,isBatchOption:(e,t,r,n)=>!e.ignoreOptions&&dyn.test(t)&&[...t.slice(1)].every(a=>n.has(`-${a}`)),isBoundOption:(e,t,r,n,a)=>{let o=t.match(ejt);return!e.ignoreOptions&&!!o&&Yat.test(o[1])&&n.has(o[1])&&a.filter(l=>l.nameSet.includes(o[1])).every(l=>l.allowBinding)},isNegatedOption:(e,t,r,n)=>!e.ignoreOptions&&t===`--no-${n.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&$8t.test(t),isUnsupportedOption:(e,t,r,n)=>!e.ignoreOptions&&t.startsWith("-")&&Yat.test(t)&&!n.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!Yat.test(t)},ljt={setCandidateState:(e,t,r,n)=>({...e,...n}),setSelectedIndex:(e,t,r,n)=>({...e,selectedIndex:n}),setPartialIndex:(e,t,r,n)=>({...e,selectedIndex:n,partial:!0}),pushBatch:(e,t,r,n)=>{let a=e.options.slice(),o=e.tokens.slice();for(let l=1;l{let[,n,a]=t.match(ejt),o=e.options.concat({name:n,value:a}),l=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,n.length],option:n},{segmentIndex:r,type:"assign",slice:[n.length,n.length+1]},{segmentIndex:r,type:"value",slice:[n.length+1,n.length+a.length+1]}]);return{...e,options:o,tokens:l}},pushPath:(e,t,r)=>{let n=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:n,tokens:a}},pushPositional:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtra:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:wW}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushTrue:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,n)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var n;let a=e.options[e.options.length-1],o=e.options.slice(),l=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((n=a.value)!==null&&n!==void 0?n:[]).concat([t]),{...e,options:o,tokens:l}},setStringValue:(e,t,r)=>{let n=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return n.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,n)=>{let[,,a]=t.match($8t);return typeof a<"u"?{...e,options:[{name:"-c",value:String(n)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(n)}]}},setError:(e,t,r,n)=>t===jy.EndOfInput||t===jy.EndOfPartialInput?{...e,errorMessage:`${n}.`}:{...e,errorMessage:`${n} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},wW=Symbol(),ujt=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:n=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:n,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===wW)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==wW?this.arity.extra.push(t):this.arity.extra!==wW&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===wW)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let n=0;n1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(n))throw new Error(`The arity must be an integer, got ${n}`);if(n<0)throw new Error(`The arity must be positive, got ${n}`);let A=t.reduce((f,I)=>I.length>f.length?I:f,"");for(let f of t)this.allOptionNames.set(f,A);this.options.push({preferredName:A,nameSet:t,description:r,arity:n,hidden:a,required:o,allowBinding:l})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let n=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&n.push(...this.paths[0]),t){for(let{preferredName:l,nameSet:A,arity:f,hidden:I,description:C,required:b}of this.options){if(I)continue;let E=[];for(let B=0;B`:`[${N}]`)}n.push(...this.arity.leading.map(l=>`<${l}>`)),this.arity.extra===wW?n.push("..."):n.push(...this.arity.extra.map(l=>`[${l}]`)),n.push(...this.arity.trailing.map(l=>`<${l}>`))}return{usage:n.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=Syn(),r=CC.InitialNode,n=this.usage().usage,a=this.options.filter(A=>A.required).map(A=>A.nameSet);r=qQ(t,BW()),_Z(t,CC.InitialNode,jy.StartOfInput,r,["setCandidateState",{candidateUsage:n,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",l=this.paths.length>0?this.paths:[[]];for(let A of l){let f=r;if(A.length>0){let E=qQ(t,BW());pSe(t,f,E),this.registerOptions(t,E),f=E}for(let E=0;E0||!this.arity.proxy){let E=qQ(t,BW());QN(t,f,"isHelp",E,["useHelp",this.cliIndex]),QN(t,E,"always",E,"pushExtra"),_Z(t,E,jy.EndOfInput,CC.SuccessNode,["setSelectedIndex",lfe]),this.registerOptions(t,f)}this.arity.leading.length>0&&(_Z(t,f,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,f,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex]));let I=f;for(let E=0;E0||E+1!==this.arity.leading.length)&&(_Z(t,N,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,N,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex])),QN(t,I,"isNotOptionLike",N,"pushPositional"),I=N}let C=I;if(this.arity.extra===wW||this.arity.extra.length>0){let E=qQ(t,BW());if(pSe(t,I,E),this.arity.extra===wW){let N=qQ(t,BW());this.arity.proxy||this.registerOptions(t,N),QN(t,I,o,N,"pushExtraNoLimits"),QN(t,N,o,N,"pushExtraNoLimits"),pSe(t,N,E)}else for(let N=0;N0)&&this.registerOptions(t,B),QN(t,C,o,B,"pushExtra"),pSe(t,B,E),C=B}C=E}this.arity.trailing.length>0&&(_Z(t,C,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,C,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex]));let b=C;for(let E=0;E=0&&t{let l=o?jy.EndOfPartialInput:jy.EndOfInput;return a6s(n,a,{endToken:l})}}}}});import gjt from"tty";function Tyn(){return gjt&&"getColorDepth"in gjt.WriteStream.prototype?gjt.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function Ryn(e){let t=wyn;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=wt("async_hooks");t=wyn=new r;let n=process.stdout._write;process.stdout._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?n.call(this,o,l,A):f.stdout.write(o,l,A)};let a=process.stderr._write;process.stderr._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?a.call(this,o,l,A):f.stderr.write(o,l,A)}}return r=>t.run(e,r)}var wyn,Nyn=bc(()=>{});var tct,Dyn=bc(()=>{jse();tct=class e extends _C{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let n=new e(r);n.path=t.path;for(let a of t.options)switch(a.name){case"-c":n.commands.push(Number(a.value));break;case"-i":n.index=Number(a.value);break}return n}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: +- ${n}`}super(r)}};HOe={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(dSe||(dSe={}));h6s={[dSe.Forbids]:{expect:!1,message:"forbids using"},[dSe.Requires]:{expect:!0,message:"requires using"}}});var _C,zse=bc(()=>{Mq();_C=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:l}=await Promise.resolve().then(()=>(CZ(),mZ)),A=l(a(o()),r),f=[],I=[];if(!A(this,{errors:f,coercions:I}))throw OOe("Invalid option schema",f);for(let[,b]of I)b()}else if(r!=null)throw new Error("Invalid command schema");let n=await this.execute();return typeof n<"u"?n:0}};_C.isOption=WOe;_C.Default=[]});function F9(e){sjt&&console.log(e)}function Dyn(){let e={nodes:[]};for(let t=0;t{if(t.has(n))return;t.add(n);let a=e.nodes[n];for(let l of Object.values(a.statics))for(let{to:A}of l)r(A);for(let[,{to:l}]of a.dynamics)r(l);for(let{to:l}of a.shortcuts)r(l);let o=new Set(a.shortcuts.map(({to:l})=>l));for(;a.shortcuts.length>0;){let{to:l}=a.shortcuts.shift(),A=e.nodes[l];for(let[f,I]of Object.entries(A.statics)){let C=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let b of I)C.some(({to:E})=>b.to===E)||C.push(b)}for(let[f,I]of A.dynamics)a.dynamics.some(([C,{to:b}])=>f===C&&I.to===b)||a.dynamics.push([f,I]);for(let f of A.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(CC.InitialNode)}function y6s(e,{prefix:t=""}={}){if(sjt){F9(`${t}Nodes are:`);for(let r=0;rC!==CC.ErrorNode).map(({state:C})=>({usage:C.candidateUsage,reason:null})));if(I.every(({node:C})=>C===CC.ErrorNode))throw new ASe(t,I.map(({state:C})=>({usage:C.candidateUsage,reason:C.errorMessage})));n=S6s(I)}if(n.length>0){F9(" Results:");for(let o of n)F9(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else F9(" No results");return n}function E6s(e,t,{endToken:r=jy.EndOfInput}={}){let n=b6s(e,[...t,r]);return v6s(t,n.map(({state:a})=>a))}function S6s(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function v6s(e,t){let r=t.filter(E=>E.selectedIndex!==null),n=r.filter(E=>!E.partial);if(n.length>0&&(r=n),r.length===0)throw new Error;let a=r.filter(E=>E.selectedIndex===ufe||E.requiredOptions.every(N=>N.some(B=>E.options.find(F=>F.name===B))));if(a.length===0)throw new ASe(e,r.map(E=>({usage:E.candidateUsage,reason:null})));let o=0;for(let E of a)E.path.length>o&&(o=E.path.length);let l=a.filter(E=>E.path.length===o),A=E=>E.positionals.filter(({extra:N})=>!N).length+E.options.length,f=l.map(E=>({state:E,positionalCount:A(E)})),I=0;for(let{positionalCount:E}of f)E>I&&(I=E);let C=f.filter(({positionalCount:E})=>E===I).map(({state:E})=>E),b=B6s(C);if(b.length>1)throw new Uat(e,b.map(E=>E.candidateUsage));return b[0]}function B6s(e){let t=[],r=[];for(let n of e)n.selectedIndex===ufe?r.push(n):t.push(n);return r.length>0&&t.push({...Nyn,path:kyn(...r.map(n=>n.path)),options:r.reduce((n,a)=>n.concat(a.options),[])}),t}function kyn(e,t,...r){return t===void 0?Array.from(e):kyn(e.filter((n,a)=>n===t[a]),...r)}function BW(){return{dynamics:[],shortcuts:[],statics:{}}}function xyn(e){return e===CC.SuccessNode||e===CC.ErrorNode}function Ajt(e,t=0){return{to:xyn(e.to)?e.to:e.to>=CC.CustomNode?e.to+t-CC.CustomNode+1:e.to+t,reducer:e.reducer}}function w6s(e,t=0){let r=BW();for(let[n,a]of e.dynamics)r.dynamics.push([n,Ajt(a,t)]);for(let n of e.shortcuts)r.shortcuts.push(Ajt(n,t));for(let[n,a]of Object.entries(e.statics))r.statics[n]=a.map(o=>Ajt(o,t));return r}function QN(e,t,r,n,a){e.nodes[t].dynamics.push([r,{to:n,reducer:a}])}function fSe(e,t,r,n){e.nodes[t].shortcuts.push({to:r,reducer:n})}function _Z(e,t,r,n,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:n,reducer:a})}function ect(e,t,r,n,a){if(Array.isArray(t)){let[o,...l]=t;return e[o](r,n,a,...l)}else return e[t](r,n,a)}var Nyn,T6s,djt,wW,pjt,tct,rct=bc(()=>{Jat();Kat();Nyn={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:ufe,partial:!1,tokens:[]};T6s={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,n)=>!e.ignoreOptions&&t===n,isBatchOption:(e,t,r,n)=>!e.ignoreOptions&&_yn.test(t)&&[...t.slice(1)].every(a=>n.has(`-${a}`)),isBoundOption:(e,t,r,n,a)=>{let o=t.match(ijt);return!e.ignoreOptions&&!!o&&Xat.test(o[1])&&n.has(o[1])&&a.filter(l=>l.nameSet.includes(o[1])).every(l=>l.allowBinding)},isNegatedOption:(e,t,r,n)=>!e.ignoreOptions&&t===`--no-${n.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&njt.test(t),isUnsupportedOption:(e,t,r,n)=>!e.ignoreOptions&&t.startsWith("-")&&Xat.test(t)&&!n.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!Xat.test(t)},djt={setCandidateState:(e,t,r,n)=>({...e,...n}),setSelectedIndex:(e,t,r,n)=>({...e,selectedIndex:n}),setPartialIndex:(e,t,r,n)=>({...e,selectedIndex:n,partial:!0}),pushBatch:(e,t,r,n)=>{let a=e.options.slice(),o=e.tokens.slice();for(let l=1;l{let[,n,a]=t.match(ijt),o=e.options.concat({name:n,value:a}),l=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,n.length],option:n},{segmentIndex:r,type:"assign",slice:[n.length,n.length+1]},{segmentIndex:r,type:"value",slice:[n.length+1,n.length+a.length+1]}]);return{...e,options:o,tokens:l}},pushPath:(e,t,r)=>{let n=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:n,tokens:a}},pushPositional:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtra:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:wW}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushTrue:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,n)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var n;let a=e.options[e.options.length-1],o=e.options.slice(),l=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((n=a.value)!==null&&n!==void 0?n:[]).concat([t]),{...e,options:o,tokens:l}},setStringValue:(e,t,r)=>{let n=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return n.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,n)=>{let[,,a]=t.match(njt);return typeof a<"u"?{...e,options:[{name:"-c",value:String(n)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(n)}]}},setError:(e,t,r,n)=>t===jy.EndOfInput||t===jy.EndOfPartialInput?{...e,errorMessage:`${n}.`}:{...e,errorMessage:`${n} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},wW=Symbol(),pjt=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:n=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:n,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===wW)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==wW?this.arity.extra.push(t):this.arity.extra!==wW&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===wW)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let n=0;n1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(n))throw new Error(`The arity must be an integer, got ${n}`);if(n<0)throw new Error(`The arity must be positive, got ${n}`);let A=t.reduce((f,I)=>I.length>f.length?I:f,"");for(let f of t)this.allOptionNames.set(f,A);this.options.push({preferredName:A,nameSet:t,description:r,arity:n,hidden:a,required:o,allowBinding:l})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let n=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&n.push(...this.paths[0]),t){for(let{preferredName:l,nameSet:A,arity:f,hidden:I,description:C,required:b}of this.options){if(I)continue;let E=[];for(let B=0;B`:`[${N}]`)}n.push(...this.arity.leading.map(l=>`<${l}>`)),this.arity.extra===wW?n.push("..."):n.push(...this.arity.extra.map(l=>`[${l}]`)),n.push(...this.arity.trailing.map(l=>`<${l}>`))}return{usage:n.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=Dyn(),r=CC.InitialNode,n=this.usage().usage,a=this.options.filter(A=>A.required).map(A=>A.nameSet);r=qQ(t,BW()),_Z(t,CC.InitialNode,jy.StartOfInput,r,["setCandidateState",{candidateUsage:n,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",l=this.paths.length>0?this.paths:[[]];for(let A of l){let f=r;if(A.length>0){let E=qQ(t,BW());fSe(t,f,E),this.registerOptions(t,E),f=E}for(let E=0;E0||!this.arity.proxy){let E=qQ(t,BW());QN(t,f,"isHelp",E,["useHelp",this.cliIndex]),QN(t,E,"always",E,"pushExtra"),_Z(t,E,jy.EndOfInput,CC.SuccessNode,["setSelectedIndex",ufe]),this.registerOptions(t,f)}this.arity.leading.length>0&&(_Z(t,f,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,f,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex]));let I=f;for(let E=0;E0||E+1!==this.arity.leading.length)&&(_Z(t,N,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,N,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex])),QN(t,I,"isNotOptionLike",N,"pushPositional"),I=N}let C=I;if(this.arity.extra===wW||this.arity.extra.length>0){let E=qQ(t,BW());if(fSe(t,I,E),this.arity.extra===wW){let N=qQ(t,BW());this.arity.proxy||this.registerOptions(t,N),QN(t,I,o,N,"pushExtraNoLimits"),QN(t,N,o,N,"pushExtraNoLimits"),fSe(t,N,E)}else for(let N=0;N0)&&this.registerOptions(t,B),QN(t,C,o,B,"pushExtra"),fSe(t,B,E),C=B}C=E}this.arity.trailing.length>0&&(_Z(t,C,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,C,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex]));let b=C;for(let E=0;E=0&&t{let l=o?jy.EndOfPartialInput:jy.EndOfInput;return E6s(n,a,{endToken:l})}}}}});import fjt from"tty";function Fyn(){return fjt&&"getColorDepth"in fjt.WriteStream.prototype?fjt.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function Zyn(e){let t=Gyn;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=wt("async_hooks");t=Gyn=new r;let n=process.stdout._write;process.stdout._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?n.call(this,o,l,A):f.stdout.write(o,l,A)};let a=process.stderr._write;process.stderr._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?a.call(this,o,l,A):f.stderr.write(o,l,A)}}return r=>t.run(e,r)}var Gyn,Lyn=bc(()=>{});var nct,Vyn=bc(()=>{zse();nct=class e extends _C{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let n=new e(r);n.path=t.path;for(let a of t.options)switch(a.name){case"-c":n.commands.push(Number(a.value));break;case"-i":n.index=Number(a.value);break}return n}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: `),this.context.stdout.write(` `);let r=0;for(let n of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[n].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` `),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}}});async function Gyn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=Zyn(e);return Afe.from(r,t).runExit(n,a)}async function Fyn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=Zyn(e);return Afe.from(r,t).run(n,a)}function Zyn(e){let t,r,n,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(n=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof _C||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?n=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],n=e[2]):e[0]&&e[0].prototype instanceof _C||Array.isArray(e[0])?(r=e[0],n=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],n=e[2],a=e[3];break}if(typeof n>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}}function xyn(e){return e()}var kyn,Afe,Lyn=bc(()=>{Qat();ect();ijt();Nyn();jse();Dyn();kyn=Symbol("clipanion/errorCommand");Afe=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:n,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new $at({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=n,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let n=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)n.register(o);return n}register(t){var r;let n=new Map,a=new t;for(let f in a){let I=a[f];typeof I=="object"&&I!==null&&I[_C.isOption]&&n.set(f,I)}let o=this.builder.command(),l=o.cliIndex,A=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof A<"u")for(let f of A)o.addPath(f);this.registrations.set(t,{specs:n,builder:o,index:l});for(let[f,{definition:I}]of n.entries())I(o,f);o.setContext({commandClass:t})}process(t,r){let{input:n,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:l,process:A}=this.builder.compile(),f=A(n,{partial:o}),I={...e.defaultContext,...a};switch(f.selectedIndex){case lfe:{let C=tct.from(f,l);return C.context=I,C.tokens=f.tokens,C}default:{let{commandClass:C}=l[f.selectedIndex],b=this.registrations.get(C);if(typeof b>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let E=new C;E.context=I,E.tokens=f.tokens,E.path=f.path;try{for(let[N,{transformer:B}]of b.specs.entries())E[N]=B(b.builder,N,f,I);return E}catch(N){throw N[kyn]=E,N}}break}}async run(t,r){var n,a;let o,l={...e.defaultContext,...r},A=(n=this.enableColors)!==null&&n!==void 0?n:l.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,l)}catch(C){return l.stdout.write(this.error(C,{colored:A})),1}if(o.help)return l.stdout.write(this.usage(o,{colored:A,detailed:!0})),0;o.context=l,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:C=>this.definition(C),error:(C,b)=>this.error(C,b),format:C=>this.format(C),process:(C,b)=>this.process(C,{...l,...b}),run:(C,b)=>this.run(C,{...l,...b}),usage:(C,b)=>this.usage(C,b)};let f=this.enableCapture&&(a=Ryn(l))!==null&&a!==void 0?a:xyn,I;try{I=await f(()=>o.validateAndExecute().catch(C=>o.catch(C).then(()=>0)))}catch(C){return l.stdout.write(this.error(C,{colored:A,command:o})),1}return I}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:n}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),l=typeof t.usage.category<"u"?G9(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,A=typeof t.usage.description<"u"?G9(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?G9(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,I=typeof t.usage.examples<"u"?t.usage.examples.map(([C,b])=>[G9(C,{format:this.format(r),paragraphs:!1}),b.replace(/\$0/g,this.binaryName)]):void 0;return{path:n,usage:a,category:l,description:A,details:f,examples:I,options:o}}definitions({colored:t=!1}={}){let r=[];for(let n of this.registrations.keys()){let a=this.definition(n,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:n=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let I=f.paths,C=typeof f.usage<"u";if(!I||I.length===0||I.length===1&&I[0].length===0||((o=I?.some(N=>N.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(C){t=null;continue}}t&&(n=!0)}let l=t!==null&&t instanceof _C?t.constructor:t,A="";if(l)if(n){let{description:f="",details:I="",examples:C=[]}=l.usage||{};f!==""&&(A+=G9(f,{format:this.format(r),paragraphs:!1}).replace(/^./,N=>N.toUpperCase()),A+=` +`)}}}});async function Oyn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=Hyn(e);return dfe.from(r,t).runExit(n,a)}async function Myn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=Hyn(e);return dfe.from(r,t).run(n,a)}function Hyn(e){let t,r,n,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(n=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof _C||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?n=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],n=e[2]):e[0]&&e[0].prototype instanceof _C||Array.isArray(e[0])?(r=e[0],n=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],n=e[2],a=e[3];break}if(typeof n>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}}function Wyn(e){return e()}var Pyn,dfe,Yyn=bc(()=>{Jat();rct();cjt();Lyn();zse();Vyn();Pyn=Symbol("clipanion/errorCommand");dfe=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:n,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new tct({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=n,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let n=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)n.register(o);return n}register(t){var r;let n=new Map,a=new t;for(let f in a){let I=a[f];typeof I=="object"&&I!==null&&I[_C.isOption]&&n.set(f,I)}let o=this.builder.command(),l=o.cliIndex,A=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof A<"u")for(let f of A)o.addPath(f);this.registrations.set(t,{specs:n,builder:o,index:l});for(let[f,{definition:I}]of n.entries())I(o,f);o.setContext({commandClass:t})}process(t,r){let{input:n,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:l,process:A}=this.builder.compile(),f=A(n,{partial:o}),I={...e.defaultContext,...a};switch(f.selectedIndex){case ufe:{let C=nct.from(f,l);return C.context=I,C.tokens=f.tokens,C}default:{let{commandClass:C}=l[f.selectedIndex],b=this.registrations.get(C);if(typeof b>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let E=new C;E.context=I,E.tokens=f.tokens,E.path=f.path;try{for(let[N,{transformer:B}]of b.specs.entries())E[N]=B(b.builder,N,f,I);return E}catch(N){throw N[Pyn]=E,N}}break}}async run(t,r){var n,a;let o,l={...e.defaultContext,...r},A=(n=this.enableColors)!==null&&n!==void 0?n:l.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,l)}catch(C){return l.stdout.write(this.error(C,{colored:A})),1}if(o.help)return l.stdout.write(this.usage(o,{colored:A,detailed:!0})),0;o.context=l,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:C=>this.definition(C),error:(C,b)=>this.error(C,b),format:C=>this.format(C),process:(C,b)=>this.process(C,{...l,...b}),run:(C,b)=>this.run(C,{...l,...b}),usage:(C,b)=>this.usage(C,b)};let f=this.enableCapture&&(a=Zyn(l))!==null&&a!==void 0?a:Wyn,I;try{I=await f(()=>o.validateAndExecute().catch(C=>o.catch(C).then(()=>0)))}catch(C){return l.stdout.write(this.error(C,{colored:A,command:o})),1}return I}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:n}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),l=typeof t.usage.category<"u"?G9(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,A=typeof t.usage.description<"u"?G9(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?G9(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,I=typeof t.usage.examples<"u"?t.usage.examples.map(([C,b])=>[G9(C,{format:this.format(r),paragraphs:!1}),b.replace(/\$0/g,this.binaryName)]):void 0;return{path:n,usage:a,category:l,description:A,details:f,examples:I,options:o}}definitions({colored:t=!1}={}){let r=[];for(let n of this.registrations.keys()){let a=this.definition(n,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:n=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let I=f.paths,C=typeof f.usage<"u";if(!I||I.length===0||I.length===1&&I[0].length===0||((o=I?.some(N=>N.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(C){t=null;continue}}t&&(n=!0)}let l=t!==null&&t instanceof _C?t.constructor:t,A="";if(l)if(n){let{description:f="",details:I="",examples:C=[]}=l.usage||{};f!==""&&(A+=G9(f,{format:this.format(r),paragraphs:!1}).replace(/^./,N=>N.toUpperCase()),A+=` `),(I!==""||C.length>0)&&(A+=`${this.format(r).header("Usage")} `,A+=` `);let{usage:b,options:E}=this.getUsageByRegistration(l,{inlineOptions:!1});if(A+=`${this.format(r).bold(a)}${b} @@ -84,51 +84,51 @@ ${t.map(r=>` `;for(let{commandClass:F,usage:Q}of N){let X=F.usage.description||"undocumented";A+=` `,A+=` ${this.format(r).bold(Q)} `,A+=` ${G9(X,{format:this.format(r),paragraphs:!1})}`}}A+=` -`,A+=G9("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return A}error(t,r){var n,{colored:a,command:o=(n=t[kyn])!==null&&n!==void 0?n:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let l="",A=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");A==="Error"&&(A="Internal Error"),l+=`${this.format(a).error(A)}: ${t.message} +`,A+=G9("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return A}error(t,r){var n,{colored:a,command:o=(n=t[Pyn])!==null&&n!==void 0?n:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let l="",A=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");A==="Error"&&(A="Internal Error"),l+=`${this.format(a).error(A)}: ${t.message} `;let f=t.clipanion;return typeof f<"u"?f.type==="usage"&&(l+=` `,l+=this.usage(o)):t.stack&&(l+=`${t.stack.replace(/^.*\n/,"")} -`),l}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?pyn:fyn}getUsageByRegistration(t,r){let n=this.registrations.get(t);if(typeof n>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(n.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};Afe.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:Tyn()}});var MOe,Vyn=bc(()=>{jse();MOe=class extends _C{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};MOe.paths=[["--clipanion=definitions"]]});var HOe,Pyn=bc(()=>{jse();HOe=class extends _C{async execute(){this.context.stdout.write(this.cli.usage())}};HOe.paths=[["-h"],["--help"]]});function rct(e={}){return hZ({definition(t,r){var n;t.addProxy({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){return n.positionals.map(({value:a})=>a)}})}var Ajt=bc(()=>{Mq()});var YOe,Wyn=bc(()=>{jse();Ajt();YOe=class extends _C{constructor(){super(...arguments),this.args=rct()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} -`)}};YOe.paths=[["--clipanion=tokens"]]});var QOe,Oyn=bc(()=>{jse();QOe=class extends _C{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} -`)}};QOe.paths=[["-v"],["--version"]]});var djt={};sI(djt,{DefinitionsCommand:()=>MOe,HelpCommand:()=>HOe,TokensCommand:()=>YOe,VersionCommand:()=>QOe});var Myn=bc(()=>{Vyn();Pyn();Wyn();Oyn()});function Hyn(e,t,r){let[n,a]=FK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return hZ({definition(f){f.addOption({names:l,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,I,C){let b,E=typeof n<"u"?[...n]:void 0;for(let{name:N,value:B}of C.options)A.has(N)&&(b=N,E=E??[],E.push(B));return typeof E<"u"?gfe(b??I,E,a.validator):E}})}var Yyn=bc(()=>{Mq()});function Qyn(e,t,r){let[n,a]=FK(t,r??{}),o=e.split(","),l=new Set(o);return hZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C=E);return C}})}var Xyn=bc(()=>{Mq()});function Jyn(e,t,r){let[n,a]=FK(t,r??{}),o=e.split(","),l=new Set(o);return hZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C??(C=0),E?C+=1:C=0);return C}})}var Uyn=bc(()=>{Mq()});function Kyn(e={}){return hZ({definition(t,r){var n;t.addRest({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){let a=l=>{let A=n.positionals[l];return A.extra===wW||A.extra===!1&&ll)}})}var jyn=bc(()=>{ect();Mq()});function d6s(e,t,r){let[n,a]=FK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return hZ({definition(f){f.addOption({names:l,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,I,C,b){let E,N=n;typeof a.env<"u"&&b.env[a.env]&&(E=a.env,N=b.env[a.env]);for(let{name:B,value:F}of C.options)A.has(B)&&(E=B,N=F);return typeof N=="string"?gfe(E??I,N,a.validator):N}})}function p6s(e={}){let{required:t=!0}=e;return hZ({definition(r,n){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:n,required:e.required})},transformer(r,n,a){var o;for(let l=0;l{ect();Mq()});var Su={};sI(Su,{Array:()=>Hyn,Boolean:()=>Qyn,Counter:()=>Jyn,Proxy:()=>rct,Rest:()=>Kyn,String:()=>zyn,applyValidator:()=>gfe,cleanValidationError:()=>Uat,formatError:()=>POe,isOptionSymbol:()=>VOe,makeCommandOption:()=>hZ,rerouteArguments:()=>FK});var $yn=bc(()=>{Mq();Ajt();Yyn();Xyn();Uyn();jyn();qyn()});var rg={};sI(rg,{Builtins:()=>djt,Cli:()=>Afe,Command:()=>_C,Option:()=>Su,UsageError:()=>ufe,formatMarkdownish:()=>G9,run:()=>Fyn,runExit:()=>Gyn});var $c=bc(()=>{Jat();ijt();jse();Lyn();Myn();$yn()});var ebn=H(nct=>{"use strict";Object.defineProperty(nct,"__esModule",{value:!0});nct.BaseCommand=void 0;var pjt=($c(),vi(rg)),fjt=class extends pjt.Command{constructor(){super(...arguments),this.cwd=pjt.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new pjt.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};nct.BaseCommand=fjt});var Va={};sI(Va,{__addDisposableResource:()=>vbn,__assign:()=>ict,__asyncDelegator:()=>hbn,__asyncGenerator:()=>Ibn,__asyncValues:()=>mbn,__await:()=>fSe,__awaiter:()=>ubn,__classPrivateFieldGet:()=>bbn,__classPrivateFieldIn:()=>Sbn,__classPrivateFieldSet:()=>Ebn,__createBinding:()=>oct,__decorate:()=>nbn,__disposeResources:()=>Bbn,__esDecorate:()=>sbn,__exportStar:()=>Abn,__extends:()=>tbn,__generator:()=>gbn,__importDefault:()=>ybn,__importStar:()=>_bn,__makeTemplateObject:()=>Cbn,__metadata:()=>lbn,__param:()=>ibn,__propKey:()=>abn,__read:()=>mjt,__rest:()=>rbn,__rewriteRelativeImportExtension:()=>wbn,__runInitializers:()=>obn,__setFunctionName:()=>cbn,__spread:()=>dbn,__spreadArray:()=>fbn,__spreadArrays:()=>pbn,__values:()=>sct,default:()=>h6s});function tbn(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Ijt(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function rbn(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function ibn(e,t){return function(r,n){t(r,n,e)}}function sbn(e,t,r,n,a,o){function l(X){if(X!==void 0&&typeof X!="function")throw new TypeError("Function expected");return X}for(var A=n.kind,f=A==="getter"?"get":A==="setter"?"set":"value",I=!t&&e?n.static?e:e.prototype:null,C=t||(I?Object.getOwnPropertyDescriptor(I,n.name):{}),b,E=!1,N=r.length-1;N>=0;N--){var B={};for(var F in n)B[F]=F==="access"?{}:n[F];for(var F in n.access)B.access[F]=n.access[F];B.addInitializer=function(X){if(E)throw new TypeError("Cannot add initializers after decoration has completed");o.push(l(X||null))};var Q=(0,r[N])(A==="accessor"?{get:C.get,set:C.set}:C[f],B);if(A==="accessor"){if(Q===void 0)continue;if(Q===null||typeof Q!="object")throw new TypeError("Object expected");(b=l(Q.get))&&(C.get=b),(b=l(Q.set))&&(C.set=b),(b=l(Q.init))&&a.unshift(b)}else(b=l(Q))&&(A==="field"?a.unshift(b):C[f]=b)}I&&Object.defineProperty(I,n.name,C),E=!0}function obn(e,t,r){for(var n=arguments.length>2,a=0;a0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function mjt(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o}function dbn(){for(var e=[],t=0;t1||f(N,F)})},B&&(a[N]=B(a[N])))}function f(N,B){try{I(n[N](B))}catch(F){E(o[0][3],F)}}function I(N){N.value instanceof fSe?Promise.resolve(N.value.v).then(C,b):E(o[0][2],N)}function C(N){f("next",N)}function b(N){f("throw",N)}function E(N,B){N(B),o.shift(),o.length&&f(o[0][0],o[0][1])}}function hbn(e){var t,r;return t={},n("next"),n("throw",function(a){throw a}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(a,o){t[a]=e[a]?function(l){return(r=!r)?{value:fSe(e[a](l)),done:!1}:o?o(l):l}:o}}function mbn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof sct=="function"?sct(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=e[o]&&function(l){return new Promise(function(A,f){l=e[o](l),a(A,f,l.done,l.value)})}}function a(o,l,A,f){Promise.resolve(f).then(function(I){o({value:I,done:A})},l)}}function Cbn(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function _bn(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=hjt(e),n=0;n{Ijt=function(e,t){return Ijt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(r[a]=n[a])},Ijt(e,t)};ict=function(){return ict=Object.assign||function(t){for(var r,n=1,a=arguments.length;n{"use strict";Object.defineProperty(X5,"__esModule",{value:!0});X5.SAFE_TIME=X5.S_IFLNK=X5.S_IFREG=X5.S_IFDIR=X5.S_IFMT=void 0;X5.S_IFMT=61440;X5.S_IFDIR=16384;X5.S_IFREG=32768;X5.S_IFLNK=40960;X5.SAFE_TIME=456789e3});var cct=H(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});Z9.EBUSY=m6s;Z9.ENOSYS=C6s;Z9.EINVAL=_6s;Z9.EBADF=y6s;Z9.ENOENT=b6s;Z9.ENOTDIR=E6s;Z9.EISDIR=S6s;Z9.EEXIST=v6s;Z9.EROFS=B6s;Z9.ENOTEMPTY=w6s;Z9.EOPNOTSUPP=T6s;Z9.ERR_DIR_CLOSED=R6s;function J5(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function m6s(e){return J5("EBUSY",e)}function C6s(e,t){return J5("ENOSYS",`${e}, ${t}`)}function _6s(e){return J5("EINVAL",`invalid argument, ${e}`)}function y6s(e){return J5("EBADF",`bad file descriptor, ${e}`)}function b6s(e){return J5("ENOENT",`no such file or directory, ${e}`)}function E6s(e){return J5("ENOTDIR",`not a directory, ${e}`)}function S6s(e){return J5("EISDIR",`illegal operation on a directory, ${e}`)}function v6s(e){return J5("EEXIST",`file already exists, ${e}`)}function B6s(e){return J5("EROFS",`read-only filesystem, ${e}`)}function w6s(e){return J5("ENOTEMPTY",`directory not empty, ${e}`)}function T6s(e){return J5("EOPNOTSUPP",`operation not supported, ${e}`)}function R6s(){return J5("ERR_DIR_CLOSED","Directory handle was closed")}});var _jt=H(bk=>{"use strict";Object.defineProperty(bk,"__esModule",{value:!0});bk.BigIntStatsEntry=bk.StatEntry=bk.DirEntry=bk.DEFAULT_MODE=void 0;bk.makeDefaultStats=Rbn;bk.makeEmptyStats=D6s;bk.clearStats=Nbn;bk.convertToBigIntStats=k6s;bk.areStatsEqual=x6s;var N6s=(Pa(),vi(Va)),Tbn=N6s.__importStar(wt("util")),bR=act();bk.DEFAULT_MODE=bR.S_IFREG|420;var Cjt=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&bR.S_IFMT)===bR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&bR.S_IFMT)===bR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&bR.S_IFMT)===bR.S_IFLNK}};bk.DirEntry=Cjt;var lct=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=bk.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&bR.S_IFMT)===bR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&bR.S_IFMT)===bR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&bR.S_IFMT)===bR.S_IFLNK}};bk.StatEntry=lct;var uct=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(bk.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFLNK)}};bk.BigIntStatsEntry=uct;function Rbn(){return new lct}function D6s(){return Nbn(Rbn())}function Nbn(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):Tbn.types.isDate(r)&&(e[t]=new Date(0))}return e}function k6s(e){let t=new uct;for(let r in e)if(Object.hasOwn(e,r)){let n=e[r];typeof n=="number"?t[r]=BigInt(Math.floor(n)):Tbn.types.isDate(n)&&(t[r]=new Date(n))}return t.atimeNs=t.atimeMs*BigInt(1e6)+BigInt(Math.floor(e.atimeMs%1*1e3))*BigInt(1e3),t.mtimeNs=t.mtimeMs*BigInt(1e6)+BigInt(Math.floor(e.mtimeMs%1*1e3))*BigInt(1e3),t.ctimeNs=t.ctimeMs*BigInt(1e6)+BigInt(Math.floor(e.ctimeMs%1*1e3))*BigInt(1e3),t.birthtimeNs=t.birthtimeMs*BigInt(1e6)+BigInt(Math.floor(e.birthtimeMs%1*1e3))*BigInt(1e3),t}function x6s(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,n=t;return!(r.atimeNs!==n.atimeNs||r.mtimeNs!==n.mtimeNs||r.ctimeNs!==n.ctimeNs||r.birthtimeNs!==n.birthtimeNs)}});var L9=H(BS=>{"use strict";Object.defineProperty(BS,"__esModule",{value:!0});BS.ppath=BS.npath=BS.Filename=BS.PortablePath=void 0;BS.convertPath=O6s;var G6s=(Pa(),vi(Va)),gct=G6s.__importDefault(wt("path")),Dbn;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(Dbn||(Dbn={}));BS.PortablePath={root:"/",dot:".",parent:".."};BS.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};BS.npath=Object.create(gct.default);BS.ppath=Object.create(gct.default.posix);BS.npath.cwd=()=>process.cwd();BS.ppath.cwd=process.platform==="win32"?()=>yjt(process.cwd()):process.cwd;process.platform==="win32"&&(BS.ppath.resolve=(...e)=>e.length>0&&BS.ppath.isAbsolute(e[0])?gct.default.posix.resolve(...e):gct.default.posix.resolve(BS.ppath.cwd(),...e));var kbn=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};BS.npath.contains=(e,t)=>kbn(BS.npath,e,t);BS.ppath.contains=(e,t)=>kbn(BS.ppath,e,t);var F6s=/^([a-zA-Z]:.*)$/,Z6s=/^\/\/(\.\/)?(.*)$/,L6s=/^\/([a-zA-Z]:.*)$/,V6s=/^\/unc\/(\.dot\/)?(.*)$/;function P6s(e){let t,r;if(t=e.match(L6s))e=t[1];else if(r=e.match(V6s))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function W6s(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(F6s))?e=`/${t[1]}`:(r=e.match(Z6s))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var yjt=process.platform==="win32"?W6s:e=>e,xbn=process.platform==="win32"?P6s:e=>e;BS.npath.fromPortablePath=xbn;BS.npath.toPortablePath=yjt;function O6s(e,t){return e===BS.npath?xbn(t):yjt(t)}});var Ejt=H(Act=>{"use strict";Object.defineProperty(Act,"__esModule",{value:!0});Act.setupCopyIndex=X6s;Act.copyPromise=J6s;var M6s=(Pa(),vi(Va)),H6s=M6s.__importStar(act()),Y6s=L9(),dfe=new Date(H6s.SAFE_TIME*1e3),Q6s=dfe.getTime();async function X6s(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let n=[];for(let a of r)for(let o of r)n.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(n),t.indexPath}async function J6s(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:dfe,mtime:dfe}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await bjt(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function bjt(e,t,r,n,a,o,l){let A=l.didParentExist?await Gbn(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:dfe,mtime:dfe}:f,b;switch(!0){case f.isDirectory():b=await U6s(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await z6s(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await q6s(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function Gbn(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function U6s(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await bjt(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await bjt(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function K6s(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(function(ce){ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=F.Rename,X=await Gbn(r,B);if(a){let ce=X&&a.dev===X.dev&&a.ino===X.ino,fe=X?.mtimeMs!==Q6s;if(ce&&fe&&I.autoRepair&&(Q=F.Lock,X=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!X&&Q===F.Rename?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!X&&(Q===F.Lock&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===F.Rename&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{X||(await r.lutimesPromise(B,dfe,dfe),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function j6s(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function z6s(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?K6s(e,t,r,n,a,o,l,A,f,f.linkStrategy):j6s(e,t,r,n,a,o,l,A,f)}async function q6s(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,Y6s.convertPath)(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}});var Fbn=H(XOe=>{"use strict";Object.defineProperty(XOe,"__esModule",{value:!0});XOe.CustomDir=void 0;XOe.opendir=t7s;var $6s=(Pa(),vi(Va)),e7s=$6s.__importStar(cct()),dct=class{constructor(t,r,n={}){this.path=t,this.nextDirent=r,this.opts=n,this.closed=!1}throwIfClosed(){if(this.closed)throw e7s.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};XOe.CustomDir=dct;function t7s(e,t,r,n){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let l=e.pathUtils.join(t,o);return Object.assign(e.statSync(l),{name:o,path:void 0})};return new dct(t,a,n)}});var Zbn=H(Hq=>{"use strict";Object.defineProperty(Hq,"__esModule",{value:!0});Hq.CustomStatWatcher=Hq.Status=Hq.Event=void 0;Hq.assertStatus=Sjt;var r7s=(Pa(),vi(Va)),n7s=wt("events"),pct=r7s.__importStar(_jt()),pfe;(function(e){e.Change="change",e.Stop="stop"})(pfe||(Hq.Event=pfe={}));var ffe;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(ffe||(Hq.Status=ffe={}));function Sjt(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var vjt=class e extends n7s.EventEmitter{static create(t,r,n){let a=new e(t,r,n);return a.start(),a}constructor(t,r,{bigint:n=!1}={}){super(),this.status=ffe.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=n,this.lastStats=this.stat()}start(){Sjt(this.status,ffe.Ready),this.status=ffe.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(pfe.Change,this.lastStats,this.lastStats)},3)}stop(){Sjt(this.status,ffe.Running),this.status=ffe.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(pfe.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let t=this.bigint?new pct.BigIntStatsEntry:new pct.StatEntry;return pct.clearStats(t)}}makeInterval(t){let r=setInterval(()=>{let n=this.stat(),a=this.lastStats;pct.areStatsEqual(n,a)||(this.lastStats=n,this.emit(pfe.Change,n,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(pfe.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(pfe.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};Hq.CustomStatWatcher=vjt});var Bjt=H(JOe=>{"use strict";Object.defineProperty(JOe,"__esModule",{value:!0});JOe.watchFile=s7s;JOe.unwatchFile=Lbn;JOe.unwatchAllFiles=o7s;var i7s=Zbn(),fct=new WeakMap;function s7s(e,t,r,n){let a,o,l,A;switch(typeof r){case"function":a=!1,o=!0,l=5007,A=r;break;default:({bigint:a=!1,persistent:o=!0,interval:l=5007}=r),A=n;break}let f=fct.get(e);typeof f>"u"&&fct.set(e,f=new Map);let I=f.get(t);return typeof I>"u"&&(I=i7s.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,I)),I.registerChangeListener(A,{persistent:o,interval:l}),I}function Lbn(e,t,r){let n=fct.get(e);if(typeof n>"u")return;let a=n.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),n.delete(t)))}function o7s(e){let t=fct.get(e);if(!(typeof t>"u"))for(let r of t.keys())Lbn(e,r)}});var hfe=H(Ife=>{"use strict";Object.defineProperty(Ife,"__esModule",{value:!0});Ife.BasePortableFakeFS=Ife.FakeFS=void 0;Ife.normalizeLineEndings=Tjt;var a7s=wt("crypto"),c7s=wt("os"),l7s=Ejt(),Vbn=L9(),Ict=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,a7s.createHash)(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await(0,l7s.copyPromise)(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync((0,Vbn.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?Tjt(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?Tjt(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} +`),l}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?yyn:byn}getUsageByRegistration(t,r){let n=this.registrations.get(t);if(typeof n>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(n.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};dfe.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:Fyn()}});var YOe,Qyn=bc(()=>{zse();YOe=class extends _C{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} +`)}};YOe.paths=[["--clipanion=definitions"]]});var QOe,Xyn=bc(()=>{zse();QOe=class extends _C{async execute(){this.context.stdout.write(this.cli.usage())}};QOe.paths=[["-h"],["--help"]]});function ict(e={}){return hZ({definition(t,r){var n;t.addProxy({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){return n.positionals.map(({value:a})=>a)}})}var Ijt=bc(()=>{Mq()});var XOe,Jyn=bc(()=>{zse();Ijt();XOe=class extends _C{constructor(){super(...arguments),this.args=ict()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} +`)}};XOe.paths=[["--clipanion=tokens"]]});var JOe,Uyn=bc(()=>{zse();JOe=class extends _C{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} +`)}};JOe.paths=[["-v"],["--version"]]});var hjt={};sI(hjt,{DefinitionsCommand:()=>YOe,HelpCommand:()=>QOe,TokensCommand:()=>XOe,VersionCommand:()=>JOe});var Kyn=bc(()=>{Qyn();Xyn();Jyn();Uyn()});function jyn(e,t,r){let[n,a]=FK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return hZ({definition(f){f.addOption({names:l,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,I,C){let b,E=typeof n<"u"?[...n]:void 0;for(let{name:N,value:B}of C.options)A.has(N)&&(b=N,E=E??[],E.push(B));return typeof E<"u"?Afe(b??I,E,a.validator):E}})}var zyn=bc(()=>{Mq()});function qyn(e,t,r){let[n,a]=FK(t,r??{}),o=e.split(","),l=new Set(o);return hZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C=E);return C}})}var $yn=bc(()=>{Mq()});function ebn(e,t,r){let[n,a]=FK(t,r??{}),o=e.split(","),l=new Set(o);return hZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C??(C=0),E?C+=1:C=0);return C}})}var tbn=bc(()=>{Mq()});function rbn(e={}){return hZ({definition(t,r){var n;t.addRest({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){let a=l=>{let A=n.positionals[l];return A.extra===wW||A.extra===!1&&ll)}})}var nbn=bc(()=>{rct();Mq()});function R6s(e,t,r){let[n,a]=FK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return hZ({definition(f){f.addOption({names:l,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,I,C,b){let E,N=n;typeof a.env<"u"&&b.env[a.env]&&(E=a.env,N=b.env[a.env]);for(let{name:B,value:F}of C.options)A.has(B)&&(E=B,N=F);return typeof N=="string"?Afe(E??I,N,a.validator):N}})}function N6s(e={}){let{required:t=!0}=e;return hZ({definition(r,n){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:n,required:e.required})},transformer(r,n,a){var o;for(let l=0;l{rct();Mq()});var Su={};sI(Su,{Array:()=>jyn,Boolean:()=>qyn,Counter:()=>ebn,Proxy:()=>ict,Rest:()=>rbn,String:()=>ibn,applyValidator:()=>Afe,cleanValidationError:()=>jat,formatError:()=>OOe,isOptionSymbol:()=>WOe,makeCommandOption:()=>hZ,rerouteArguments:()=>FK});var obn=bc(()=>{Mq();Ijt();zyn();$yn();tbn();nbn();sbn()});var rg={};sI(rg,{Builtins:()=>hjt,Cli:()=>dfe,Command:()=>_C,Option:()=>Su,UsageError:()=>gfe,formatMarkdownish:()=>G9,run:()=>Myn,runExit:()=>Oyn});var $c=bc(()=>{Kat();cjt();zse();Yyn();Kyn();obn()});var abn=H(sct=>{"use strict";Object.defineProperty(sct,"__esModule",{value:!0});sct.BaseCommand=void 0;var mjt=($c(),vi(rg)),Cjt=class extends mjt.Command{constructor(){super(...arguments),this.cwd=mjt.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new mjt.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};sct.BaseCommand=Cjt});var Va={};sI(Va,{__addDisposableResource:()=>kbn,__assign:()=>oct,__asyncDelegator:()=>Sbn,__asyncGenerator:()=>Ebn,__asyncValues:()=>vbn,__await:()=>ISe,__awaiter:()=>hbn,__classPrivateFieldGet:()=>Rbn,__classPrivateFieldIn:()=>Dbn,__classPrivateFieldSet:()=>Nbn,__createBinding:()=>cct,__decorate:()=>ubn,__disposeResources:()=>xbn,__esDecorate:()=>Abn,__exportStar:()=>Cbn,__extends:()=>cbn,__generator:()=>mbn,__importDefault:()=>Tbn,__importStar:()=>wbn,__makeTemplateObject:()=>Bbn,__metadata:()=>Ibn,__param:()=>gbn,__propKey:()=>pbn,__read:()=>bjt,__rest:()=>lbn,__rewriteRelativeImportExtension:()=>Gbn,__runInitializers:()=>dbn,__setFunctionName:()=>fbn,__spread:()=>_bn,__spreadArray:()=>bbn,__spreadArrays:()=>ybn,__values:()=>act,default:()=>x6s});function cbn(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");_jt(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function lbn(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function gbn(e,t){return function(r,n){t(r,n,e)}}function Abn(e,t,r,n,a,o){function l(X){if(X!==void 0&&typeof X!="function")throw new TypeError("Function expected");return X}for(var A=n.kind,f=A==="getter"?"get":A==="setter"?"set":"value",I=!t&&e?n.static?e:e.prototype:null,C=t||(I?Object.getOwnPropertyDescriptor(I,n.name):{}),b,E=!1,N=r.length-1;N>=0;N--){var B={};for(var F in n)B[F]=F==="access"?{}:n[F];for(var F in n.access)B.access[F]=n.access[F];B.addInitializer=function(X){if(E)throw new TypeError("Cannot add initializers after decoration has completed");o.push(l(X||null))};var Q=(0,r[N])(A==="accessor"?{get:C.get,set:C.set}:C[f],B);if(A==="accessor"){if(Q===void 0)continue;if(Q===null||typeof Q!="object")throw new TypeError("Object expected");(b=l(Q.get))&&(C.get=b),(b=l(Q.set))&&(C.set=b),(b=l(Q.init))&&a.unshift(b)}else(b=l(Q))&&(A==="field"?a.unshift(b):C[f]=b)}I&&Object.defineProperty(I,n.name,C),E=!0}function dbn(e,t,r){for(var n=arguments.length>2,a=0;a0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function bjt(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o}function _bn(){for(var e=[],t=0;t1||f(N,F)})},B&&(a[N]=B(a[N])))}function f(N,B){try{I(n[N](B))}catch(F){E(o[0][3],F)}}function I(N){N.value instanceof ISe?Promise.resolve(N.value.v).then(C,b):E(o[0][2],N)}function C(N){f("next",N)}function b(N){f("throw",N)}function E(N,B){N(B),o.shift(),o.length&&f(o[0][0],o[0][1])}}function Sbn(e){var t,r;return t={},n("next"),n("throw",function(a){throw a}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(a,o){t[a]=e[a]?function(l){return(r=!r)?{value:ISe(e[a](l)),done:!1}:o?o(l):l}:o}}function vbn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof act=="function"?act(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=e[o]&&function(l){return new Promise(function(A,f){l=e[o](l),a(A,f,l.done,l.value)})}}function a(o,l,A,f){Promise.resolve(f).then(function(I){o({value:I,done:A})},l)}}function Bbn(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function wbn(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=yjt(e),n=0;n{_jt=function(e,t){return _jt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(r[a]=n[a])},_jt(e,t)};oct=function(){return oct=Object.assign||function(t){for(var r,n=1,a=arguments.length;n{"use strict";Object.defineProperty(X5,"__esModule",{value:!0});X5.SAFE_TIME=X5.S_IFLNK=X5.S_IFREG=X5.S_IFDIR=X5.S_IFMT=void 0;X5.S_IFMT=61440;X5.S_IFDIR=16384;X5.S_IFREG=32768;X5.S_IFLNK=40960;X5.SAFE_TIME=456789e3});var uct=H(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});Z9.EBUSY=G6s;Z9.ENOSYS=F6s;Z9.EINVAL=Z6s;Z9.EBADF=L6s;Z9.ENOENT=V6s;Z9.ENOTDIR=P6s;Z9.EISDIR=W6s;Z9.EEXIST=O6s;Z9.EROFS=M6s;Z9.ENOTEMPTY=H6s;Z9.EOPNOTSUPP=Y6s;Z9.ERR_DIR_CLOSED=Q6s;function J5(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function G6s(e){return J5("EBUSY",e)}function F6s(e,t){return J5("ENOSYS",`${e}, ${t}`)}function Z6s(e){return J5("EINVAL",`invalid argument, ${e}`)}function L6s(e){return J5("EBADF",`bad file descriptor, ${e}`)}function V6s(e){return J5("ENOENT",`no such file or directory, ${e}`)}function P6s(e){return J5("ENOTDIR",`not a directory, ${e}`)}function W6s(e){return J5("EISDIR",`illegal operation on a directory, ${e}`)}function O6s(e){return J5("EEXIST",`file already exists, ${e}`)}function M6s(e){return J5("EROFS",`read-only filesystem, ${e}`)}function H6s(e){return J5("ENOTEMPTY",`directory not empty, ${e}`)}function Y6s(e){return J5("EOPNOTSUPP",`operation not supported, ${e}`)}function Q6s(){return J5("ERR_DIR_CLOSED","Directory handle was closed")}});var Sjt=H(bk=>{"use strict";Object.defineProperty(bk,"__esModule",{value:!0});bk.BigIntStatsEntry=bk.StatEntry=bk.DirEntry=bk.DEFAULT_MODE=void 0;bk.makeDefaultStats=Zbn;bk.makeEmptyStats=J6s;bk.clearStats=Lbn;bk.convertToBigIntStats=U6s;bk.areStatsEqual=K6s;var X6s=(Pa(),vi(Va)),Fbn=X6s.__importStar(wt("util")),bR=lct();bk.DEFAULT_MODE=bR.S_IFREG|420;var Ejt=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&bR.S_IFMT)===bR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&bR.S_IFMT)===bR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&bR.S_IFMT)===bR.S_IFLNK}};bk.DirEntry=Ejt;var gct=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=bk.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&bR.S_IFMT)===bR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&bR.S_IFMT)===bR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&bR.S_IFMT)===bR.S_IFLNK}};bk.StatEntry=gct;var Act=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(bk.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFLNK)}};bk.BigIntStatsEntry=Act;function Zbn(){return new gct}function J6s(){return Lbn(Zbn())}function Lbn(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):Fbn.types.isDate(r)&&(e[t]=new Date(0))}return e}function U6s(e){let t=new Act;for(let r in e)if(Object.hasOwn(e,r)){let n=e[r];typeof n=="number"?t[r]=BigInt(Math.floor(n)):Fbn.types.isDate(n)&&(t[r]=new Date(n))}return t.atimeNs=t.atimeMs*BigInt(1e6)+BigInt(Math.floor(e.atimeMs%1*1e3))*BigInt(1e3),t.mtimeNs=t.mtimeMs*BigInt(1e6)+BigInt(Math.floor(e.mtimeMs%1*1e3))*BigInt(1e3),t.ctimeNs=t.ctimeMs*BigInt(1e6)+BigInt(Math.floor(e.ctimeMs%1*1e3))*BigInt(1e3),t.birthtimeNs=t.birthtimeMs*BigInt(1e6)+BigInt(Math.floor(e.birthtimeMs%1*1e3))*BigInt(1e3),t}function K6s(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,n=t;return!(r.atimeNs!==n.atimeNs||r.mtimeNs!==n.mtimeNs||r.ctimeNs!==n.ctimeNs||r.birthtimeNs!==n.birthtimeNs)}});var L9=H(BS=>{"use strict";Object.defineProperty(BS,"__esModule",{value:!0});BS.ppath=BS.npath=BS.Filename=BS.PortablePath=void 0;BS.convertPath=n7s;var j6s=(Pa(),vi(Va)),dct=j6s.__importDefault(wt("path")),Vbn;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(Vbn||(Vbn={}));BS.PortablePath={root:"/",dot:".",parent:".."};BS.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};BS.npath=Object.create(dct.default);BS.ppath=Object.create(dct.default.posix);BS.npath.cwd=()=>process.cwd();BS.ppath.cwd=process.platform==="win32"?()=>vjt(process.cwd()):process.cwd;process.platform==="win32"&&(BS.ppath.resolve=(...e)=>e.length>0&&BS.ppath.isAbsolute(e[0])?dct.default.posix.resolve(...e):dct.default.posix.resolve(BS.ppath.cwd(),...e));var Pbn=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};BS.npath.contains=(e,t)=>Pbn(BS.npath,e,t);BS.ppath.contains=(e,t)=>Pbn(BS.ppath,e,t);var z6s=/^([a-zA-Z]:.*)$/,q6s=/^\/\/(\.\/)?(.*)$/,$6s=/^\/([a-zA-Z]:.*)$/,e7s=/^\/unc\/(\.dot\/)?(.*)$/;function t7s(e){let t,r;if(t=e.match($6s))e=t[1];else if(r=e.match(e7s))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function r7s(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(z6s))?e=`/${t[1]}`:(r=e.match(q6s))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var vjt=process.platform==="win32"?r7s:e=>e,Wbn=process.platform==="win32"?t7s:e=>e;BS.npath.fromPortablePath=Wbn;BS.npath.toPortablePath=vjt;function n7s(e,t){return e===BS.npath?Wbn(t):vjt(t)}});var wjt=H(pct=>{"use strict";Object.defineProperty(pct,"__esModule",{value:!0});pct.setupCopyIndex=c7s;pct.copyPromise=l7s;var i7s=(Pa(),vi(Va)),s7s=i7s.__importStar(lct()),o7s=L9(),pfe=new Date(s7s.SAFE_TIME*1e3),a7s=pfe.getTime();async function c7s(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let n=[];for(let a of r)for(let o of r)n.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(n),t.indexPath}async function l7s(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:pfe,mtime:pfe}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await Bjt(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function Bjt(e,t,r,n,a,o,l){let A=l.didParentExist?await Obn(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:pfe,mtime:pfe}:f,b;switch(!0){case f.isDirectory():b=await u7s(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await d7s(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await p7s(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function Obn(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function u7s(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await Bjt(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await Bjt(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function g7s(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(function(ce){ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=F.Rename,X=await Obn(r,B);if(a){let ce=X&&a.dev===X.dev&&a.ino===X.ino,fe=X?.mtimeMs!==a7s;if(ce&&fe&&I.autoRepair&&(Q=F.Lock,X=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!X&&Q===F.Rename?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!X&&(Q===F.Lock&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===F.Rename&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{X||(await r.lutimesPromise(B,pfe,pfe),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function A7s(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function d7s(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?g7s(e,t,r,n,a,o,l,A,f,f.linkStrategy):A7s(e,t,r,n,a,o,l,A,f)}async function p7s(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,o7s.convertPath)(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}});var Mbn=H(UOe=>{"use strict";Object.defineProperty(UOe,"__esModule",{value:!0});UOe.CustomDir=void 0;UOe.opendir=h7s;var f7s=(Pa(),vi(Va)),I7s=f7s.__importStar(uct()),fct=class{constructor(t,r,n={}){this.path=t,this.nextDirent=r,this.opts=n,this.closed=!1}throwIfClosed(){if(this.closed)throw I7s.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};UOe.CustomDir=fct;function h7s(e,t,r,n){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let l=e.pathUtils.join(t,o);return Object.assign(e.statSync(l),{name:o,path:void 0})};return new fct(t,a,n)}});var Hbn=H(Hq=>{"use strict";Object.defineProperty(Hq,"__esModule",{value:!0});Hq.CustomStatWatcher=Hq.Status=Hq.Event=void 0;Hq.assertStatus=Tjt;var m7s=(Pa(),vi(Va)),C7s=wt("events"),Ict=m7s.__importStar(Sjt()),ffe;(function(e){e.Change="change",e.Stop="stop"})(ffe||(Hq.Event=ffe={}));var Ife;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(Ife||(Hq.Status=Ife={}));function Tjt(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var Rjt=class e extends C7s.EventEmitter{static create(t,r,n){let a=new e(t,r,n);return a.start(),a}constructor(t,r,{bigint:n=!1}={}){super(),this.status=Ife.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=n,this.lastStats=this.stat()}start(){Tjt(this.status,Ife.Ready),this.status=Ife.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(ffe.Change,this.lastStats,this.lastStats)},3)}stop(){Tjt(this.status,Ife.Running),this.status=Ife.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(ffe.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let t=this.bigint?new Ict.BigIntStatsEntry:new Ict.StatEntry;return Ict.clearStats(t)}}makeInterval(t){let r=setInterval(()=>{let n=this.stat(),a=this.lastStats;Ict.areStatsEqual(n,a)||(this.lastStats=n,this.emit(ffe.Change,n,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(ffe.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(ffe.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};Hq.CustomStatWatcher=Rjt});var Njt=H(KOe=>{"use strict";Object.defineProperty(KOe,"__esModule",{value:!0});KOe.watchFile=y7s;KOe.unwatchFile=Ybn;KOe.unwatchAllFiles=b7s;var _7s=Hbn(),hct=new WeakMap;function y7s(e,t,r,n){let a,o,l,A;switch(typeof r){case"function":a=!1,o=!0,l=5007,A=r;break;default:({bigint:a=!1,persistent:o=!0,interval:l=5007}=r),A=n;break}let f=hct.get(e);typeof f>"u"&&hct.set(e,f=new Map);let I=f.get(t);return typeof I>"u"&&(I=_7s.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,I)),I.registerChangeListener(A,{persistent:o,interval:l}),I}function Ybn(e,t,r){let n=hct.get(e);if(typeof n>"u")return;let a=n.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),n.delete(t)))}function b7s(e){let t=hct.get(e);if(!(typeof t>"u"))for(let r of t.keys())Ybn(e,r)}});var mfe=H(hfe=>{"use strict";Object.defineProperty(hfe,"__esModule",{value:!0});hfe.BasePortableFakeFS=hfe.FakeFS=void 0;hfe.normalizeLineEndings=kjt;var E7s=wt("crypto"),S7s=wt("os"),v7s=wjt(),Qbn=L9(),mct=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,E7s.createHash)(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await(0,v7s.copyPromise)(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync((0,Qbn.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?kjt(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?kjt(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} `)}writeJsonSync(t,r,{compact:n=!1}={}){let a=n?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}};Ife.FakeFS=Ict;var wjt=class extends Ict{constructor(){super(Vbn.ppath)}};Ife.BasePortableFakeFS=wjt;function u7s(e){let t=e.match(/\r?\n/g);if(t===null)return c7s.EOL;let r=t.filter(a=>a===`\r +`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}};hfe.FakeFS=mct;var Djt=class extends mct{constructor(){super(Qbn.ppath)}};hfe.BasePortableFakeFS=Djt;function B7s(e){let t=e.match(/\r?\n/g);if(t===null)return S7s.EOL;let r=t.filter(a=>a===`\r `).length,n=t.length-r;return r>n?`\r `:` -`}function Tjt(e,t){return t.replace(/\r?\n/g,u7s(e))}});var Yq=H(hct=>{"use strict";Object.defineProperty(hct,"__esModule",{value:!0});hct.ProxiedFS=void 0;var g7s=hfe(),Rjt=class extends g7s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};hct.ProxiedFS=Rjt});var Pbn=H(mct=>{"use strict";Object.defineProperty(mct,"__esModule",{value:!0});mct.AliasFS=void 0;var A7s=Yq(),Njt=class extends A7s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:n}){super(n),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};mct.AliasFS=Njt});var mfe=H(Cct=>{"use strict";Object.defineProperty(Cct,"__esModule",{value:!0});Cct.NodeFS=void 0;var d7s=(Pa(),vi(Va)),p7s=d7s.__importDefault(wt("fs")),f7s=hfe(),ku=L9();function Wbn(e){let t=e;return typeof e.path=="string"&&(t.path=ku.npath.toPortablePath(e.path)),t}var Djt=class extends f7s.BasePortableFakeFS{constructor(t=p7s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return ku.PortablePath.root}resolve(t){return ku.ppath.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(ku.npath.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(ku.npath.fromPortablePath(t),r):this.realFs.opendirSync(ku.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(ku.npath.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}realpathSync(t){return ku.npath.toPortablePath(this.realFs.realpathSync(ku.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(ku.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(ku.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(ku.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(ku.npath.fromPortablePath(t),r):this.realFs.statSync(ku.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(ku.npath.fromPortablePath(t),r):this.realFs.lstatSync(ku.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(ku.npath.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(ku.npath.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(ku.npath.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(ku.npath.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(ku.npath.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(ku.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(ku.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(ku.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?ku.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?ku.npath.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Wbn)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(ku.npath.toPortablePath)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(Wbn):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(ku.npath.toPortablePath):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r):this.realFs.readdirSync(ku.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}readlinkSync(t){return ku.npath.toPortablePath(this.realFs.readlinkSync(ku.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(ku.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(ku.npath.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(ku.npath.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(ku.npath.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}};Cct.NodeFS=Djt});var Obn=H(_ct=>{"use strict";Object.defineProperty(_ct,"__esModule",{value:!0});_ct.CwdFS=void 0;var I7s=mfe(),h7s=Yq(),kjt=L9(),xjt=class extends h7s.ProxiedFS{constructor(t,{baseFs:r=new I7s.NodeFS}={}){super(kjt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?kjt.ppath.normalize(t):this.baseFs.resolve(kjt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};_ct.CwdFS=xjt});var Hbn=H(bct=>{"use strict";Object.defineProperty(bct,"__esModule",{value:!0});bct.JailFS=void 0;var m7s=mfe(),C7s=Yq(),yct=L9(),Mbn=yct.PortablePath.root,Gjt=class extends C7s.ProxiedFS{constructor(t,{baseFs:r=new m7s.NodeFS}={}){super(yct.ppath),this.target=this.pathUtils.resolve(yct.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(yct.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(Mbn,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(Mbn,this.pathUtils.relative(this.target,t))}};bct.JailFS=Gjt});var Ybn=H(Ect=>{"use strict";Object.defineProperty(Ect,"__esModule",{value:!0});Ect.LazyFS=void 0;var _7s=Yq(),Fjt=class extends _7s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};Ect.LazyFS=Fjt});var Qbn=H(Bct=>{"use strict";Object.defineProperty(Bct,"__esModule",{value:!0});Bct.MountFS=void 0;var y7s=(Pa(),vi(Va)),ISe=wt("fs"),b7s=hfe(),E7s=mfe(),Sct=Bjt(),V9=y7s.__importStar(cct()),vct=L9(),P9=4278190080,Zjt=class extends b7s.BasePortableFakeFS{constructor({baseFs:t=new E7s.NodeFS,filter:r=null,magicByte:n=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:l=5e3,typeCheck:A=ISe.constants.S_IFREG,getMountPoint:f,factoryPromise:I,factorySync:C}){if(Math.floor(n)!==n||!(n>1&&n<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=I,this.factorySync=C,this.filter=r,this.getMountPoint=f,this.magic=n<<24,this.maxAge=l,this.maxOpenFiles=a,this.typeCheck=A}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Sct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Sct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let n=this.nextFd++|this.magic;return this.fdMap.set(n,[t,r]),n}async openPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,n),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,n)))}openSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,n),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,n)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(n,{subPath:a})=>await n.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(n,{subPath:a})=>n.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,n,a,o){if((t&P9)!==this.magic)return await this.baseFs.readPromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("read");let[A,f]=l;return await A.readPromise(f,r,n,a,o)}readSync(t,r,n,a,o){if((t&P9)!==this.magic)return this.baseFs.readSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("readSync");let[A,f]=l;return A.readSync(f,r,n,a,o)}async writePromise(t,r,n,a,o){if((t&P9)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("write");let[A,f]=l;return typeof r=="string"?await A.writePromise(f,r,n):await A.writePromise(f,r,n,a,o)}writeSync(t,r,n,a,o){if((t&P9)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("writeSync");let[A,f]=l;return typeof r=="string"?A.writeSync(f,r,n):A.writeSync(f,r,n,a,o)}async closePromise(t){if((t&P9)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw V9.EBADF("close");this.fdMap.delete(t);let[n,a]=r;return await n.closePromise(a)}closeSync(t){if((t&P9)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw V9.EBADF("closeSync");this.fdMap.delete(t);let[n,a]=r;return n.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(n,{archivePath:a,subPath:o})=>{let l=n.createReadStream(o,r);return l.path=vct.npath.fromPortablePath(this.pathUtils.join(a,o)),l})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(n,{subPath:a})=>n.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(vct.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=this.baseFs.realpathSync(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(vct.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:n})=>await r.existsPromise(n))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:n})=>r.existsSync(n))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(n,{subPath:a})=>await n.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(n,{subPath:a})=>n.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(n,{subPath:a})=>await n.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(n,{subPath:a})=>n.statSync(a,r))}async fstatPromise(t,r){if((t&P9)!==this.magic)return this.baseFs.fstatPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fstat");let[a,o]=n;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&P9)!==this.magic)return this.baseFs.fstatSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fstatSync");let[a,o]=n;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(n,{subPath:a})=>await n.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(n,{subPath:a})=>n.lstatSync(a,r))}async fchmodPromise(t,r){if((t&P9)!==this.magic)return this.baseFs.fchmodPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fchmod");let[a,o]=n;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&P9)!==this.magic)return this.baseFs.fchmodSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fchmodSync");let[a,o]=n;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(n,{subPath:a})=>await n.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(n,{subPath:a})=>n.chmodSync(a,r))}async fchownPromise(t,r,n){if((t&P9)!==this.magic)return this.baseFs.fchownPromise(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw V9.EBADF("fchown");let[o,l]=a;return o.fchownPromise(l,r,n)}fchownSync(t,r,n){if((t&P9)!==this.magic)return this.baseFs.fchownSync(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw V9.EBADF("fchownSync");let[o,l]=a;return o.fchownSync(l,r,n)}async chownPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,n),async(a,{subPath:o})=>await a.chownPromise(o,r,n))}chownSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,n),(a,{subPath:o})=>a.chownSync(o,r,n))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(n,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await n.renamePromise(a,l)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(n,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return n.renameSync(a,l)}))}async copyFilePromise(t,r,n=0){let a=async(o,l,A,f)=>{if(n&ISe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&ISe.constants.COPYFILE_EXCL&&await this.existsPromise(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=await o.readFilePromise(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}await A.writeFilePromise(f,I)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,n),async(o,{subPath:l})=>await a(this.baseFs,t,o,l)),async(o,{subPath:l})=>await this.makeCallPromise(r,async()=>await a(o,l,this.baseFs,r),async(A,{subPath:f})=>o!==A?await a(o,l,A,f):await o.copyFilePromise(l,f,n)))}copyFileSync(t,r,n=0){let a=(o,l,A,f)=>{if(n&ISe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&ISe.constants.COPYFILE_EXCL&&this.existsSync(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=o.readFileSync(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}A.writeFileSync(f,I)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,n),(o,{subPath:l})=>a(this.baseFs,t,o,l)),(o,{subPath:l})=>this.makeCallSync(r,()=>a(o,l,this.baseFs,r),(A,{subPath:f})=>o!==A?a(o,l,A,f):o.copyFileSync(l,f,n)))}async appendFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,n),async(a,{subPath:o})=>await a.appendFilePromise(o,r,n))}appendFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,n),(a,{subPath:o})=>a.appendFileSync(o,r,n))}async writeFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,n),async(a,{subPath:o})=>await a.writeFilePromise(o,r,n))}writeFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,n),(a,{subPath:o})=>a.writeFileSync(o,r,n))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:n})=>await r.unlinkPromise(n))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:n})=>r.unlinkSync(n))}async utimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,n),async(a,{subPath:o})=>await a.utimesPromise(o,r,n))}utimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,n),(a,{subPath:o})=>a.utimesSync(o,r,n))}async lutimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,n),async(a,{subPath:o})=>await a.lutimesPromise(o,r,n))}lutimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,n),(a,{subPath:o})=>a.lutimesSync(o,r,n))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(n,{subPath:a})=>await n.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(n,{subPath:a})=>n.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(n,{subPath:a})=>await n.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(n,{subPath:a})=>n.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(n,{subPath:a})=>await n.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(n,{subPath:a})=>n.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(n,{subPath:a})=>await n.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(n,{subPath:a})=>n.linkSync(t,a))}async symlinkPromise(t,r,n){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,n),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,n){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,n),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(n,{subPath:a})=>await n.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(n,{subPath:a})=>n.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(n,{subPath:a})=>await n.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(n,{subPath:a})=>n.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:n})=>await r.readlinkPromise(n))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:n})=>r.readlinkSync(n))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(n,{subPath:a})=>await n.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(n,{subPath:a})=>n.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&P9)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("ftruncate");let[a,o]=n;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&P9)!==this.magic)return this.baseFs.ftruncateSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("ftruncateSync");let[a,o]=n;return a.ftruncateSync(o,r)}watch(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,n),(a,{subPath:o})=>a.watch(o,r,n))}watchFile(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,n),()=>(0,Sct.watchFile)(this,t,r,n))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Sct.unwatchFile)(this,t,r))}async makeCallPromise(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),l=this.findMount(o);return l?a&&l.subPath==="/"?await r():await this.getMountPromise(l.archivePath,async A=>await n(A,l)):await r()}makeCallSync(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),l=this.findMount(o);return!l||a&&l.subPath==="/"?r():this.getMountSync(l.archivePath,A=>n(A,l))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let n=t.substring(r.length),a=this.getMountPoint(n,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.statSync(r).mode&ISe.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(vct.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),n=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:l,expiresAt:A,refCount:f}]of this.mountInstances.entries())if(!(f!==0||l.hasOpenFileHandles?.())){if(r>=A){l.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){n=A;break}l.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(n)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},n-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);if(!n){let a=await this.factoryPromise(this.baseFs,t);n=this.mountInstances.get(t),n||(n={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.childFs)}finally{n.refCount-=1}}else{let n=(await this.factoryPromise(this.baseFs,t))();try{return await r(n)}finally{n.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);return n||(n={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,r(n.childFs)}else{let n=this.factorySync(this.baseFs,t);try{return r(n)}finally{n.saveAndClose?.()}}}};Bct.MountFS=Zjt});var Xbn=H(wct=>{"use strict";Object.defineProperty(wct,"__esModule",{value:!0});wct.NoFS=void 0;var S7s=hfe(),v7s=L9(),Pg=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),UOe=class extends S7s.FakeFS{constructor(){super(v7s.ppath)}getExtractHint(){throw Pg()}getRealPath(){throw Pg()}resolve(){throw Pg()}async openPromise(){throw Pg()}openSync(){throw Pg()}async opendirPromise(){throw Pg()}opendirSync(){throw Pg()}async readPromise(){throw Pg()}readSync(){throw Pg()}async writePromise(){throw Pg()}writeSync(){throw Pg()}async closePromise(){throw Pg()}closeSync(){throw Pg()}createWriteStream(){throw Pg()}createReadStream(){throw Pg()}async realpathPromise(){throw Pg()}realpathSync(){throw Pg()}async readdirPromise(){throw Pg()}readdirSync(){throw Pg()}async existsPromise(t){throw Pg()}existsSync(t){throw Pg()}async accessPromise(){throw Pg()}accessSync(){throw Pg()}async statPromise(){throw Pg()}statSync(){throw Pg()}async fstatPromise(t){throw Pg()}fstatSync(t){throw Pg()}async lstatPromise(t){throw Pg()}lstatSync(t){throw Pg()}async fchmodPromise(){throw Pg()}fchmodSync(){throw Pg()}async chmodPromise(){throw Pg()}chmodSync(){throw Pg()}async fchownPromise(){throw Pg()}fchownSync(){throw Pg()}async chownPromise(){throw Pg()}chownSync(){throw Pg()}async mkdirPromise(){throw Pg()}mkdirSync(){throw Pg()}async rmdirPromise(){throw Pg()}rmdirSync(){throw Pg()}async rmPromise(){throw Pg()}rmSync(){throw Pg()}async linkPromise(){throw Pg()}linkSync(){throw Pg()}async symlinkPromise(){throw Pg()}symlinkSync(){throw Pg()}async renamePromise(){throw Pg()}renameSync(){throw Pg()}async copyFilePromise(){throw Pg()}copyFileSync(){throw Pg()}async appendFilePromise(){throw Pg()}appendFileSync(){throw Pg()}async writeFilePromise(){throw Pg()}writeFileSync(){throw Pg()}async unlinkPromise(){throw Pg()}unlinkSync(){throw Pg()}async utimesPromise(){throw Pg()}utimesSync(){throw Pg()}async lutimesPromise(){throw Pg()}lutimesSync(){throw Pg()}async readFilePromise(){throw Pg()}readFileSync(){throw Pg()}async readlinkPromise(){throw Pg()}readlinkSync(){throw Pg()}async truncatePromise(){throw Pg()}truncateSync(){throw Pg()}async ftruncatePromise(t,r){throw Pg()}ftruncateSync(t,r){throw Pg()}watch(){throw Pg()}watchFile(){throw Pg()}unwatchFile(){throw Pg()}};wct.NoFS=UOe;UOe.instance=new UOe});var Jbn=H(Tct=>{"use strict";Object.defineProperty(Tct,"__esModule",{value:!0});Tct.PosixFS=void 0;var B7s=Yq(),Ljt=L9(),Vjt=class extends B7s.ProxiedFS{constructor(t){super(Ljt.npath),this.baseFs=t}mapFromBase(t){return Ljt.npath.fromPortablePath(t)}mapToBase(t){return Ljt.npath.toPortablePath(t)}};Tct.PosixFS=Vjt});var Ubn=H(Rct=>{"use strict";Object.defineProperty(Rct,"__esModule",{value:!0});Rct.VirtualFS=void 0;var w7s=mfe(),T7s=Yq(),$Q=L9(),R7s=/^[0-9]+$/,Pjt=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,N7s=/^([^/]+-)?[a-f0-9]+$/,Wjt=class e extends T7s.ProxiedFS{static makeVirtualPath(t,r,n){if($Q.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!$Q.ppath.basename(r).match(N7s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=$Q.ppath.relative($Q.ppath.dirname(t),n).split("/"),l=0;for(;l{"use strict";Object.defineProperty(Nct,"__esModule",{value:!0});Nct.NodePathFS=void 0;var D7s=(Pa(),vi(Va)),Kbn=D7s.__importDefault(wt("buffer")),k7s=wt("url"),x7s=wt("util"),G7s=Yq(),F7s=L9(),Ojt=class extends G7s.ProxiedFS{constructor(t){super(F7s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,k7s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!Z7s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,x7s.inspect)(t)}`)}};Nct.NodePathFS=Ojt;function Z7s(e,t){return typeof Kbn.default.isUtf8<"u"?Kbn.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var tEn=H(xct=>{"use strict";var zbn,qbn,$bn,eEn;Object.defineProperty(xct,"__esModule",{value:!0});xct.FileHandle=void 0;var L7s=wt("readline"),yZ=Symbol("kBaseFs"),zse=Symbol("kFd"),qse=Symbol("kClosePromise"),Dct=Symbol("kCloseResolve"),kct=Symbol("kCloseReject"),hSe=Symbol("kRefs"),eX=Symbol("kRef"),tX=Symbol("kUnref"),Mjt=class{constructor(t,r){this[zbn]=1,this[qbn]=void 0,this[$bn]=void 0,this[eEn]=void 0,this[yZ]=r,this[zse]=t}get fd(){return this[zse]}async appendFile(t,r){try{this[eX](this.appendFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;return await this[yZ].appendFilePromise(this.fd,t,n?{encoding:n}:void 0)}finally{this[tX]()}}async chown(t,r){try{return this[eX](this.chown),await this[yZ].fchownPromise(this.fd,t,r)}finally{this[tX]()}}async chmod(t){try{return this[eX](this.chmod),await this[yZ].fchmodPromise(this.fd,t)}finally{this[tX]()}}createReadStream(t){return this[yZ].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[yZ].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,n,a){try{this[eX](this.read);let o,l;return ArrayBuffer.isView(t)?typeof r=="object"&&r!==null?(o=t,l=r?.offset??0,n=r?.length??o.byteLength-l,a=r?.position??null):(o=t,l=r??0,n??=0):(o=t?.buffer??Buffer.alloc(16384),l=t?.offset??0,n=t?.length??o.byteLength-l,a=t?.position??null),n===0?{bytesRead:n,buffer:o}:{bytesRead:await this[yZ].readPromise(this.fd,Buffer.isBuffer(o)?o:Buffer.from(o.buffer,o.byteOffset,o.byteLength),l,n,a),buffer:o}}finally{this[tX]()}}async readFile(t){try{this[eX](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[yZ].readFilePromise(this.fd,r)}finally{this[tX]()}}readLines(t){return(0,L7s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[eX](this.stat),await this[yZ].fstatPromise(this.fd,t)}finally{this[tX]()}}async truncate(t){try{return this[eX](this.truncate),await this[yZ].ftruncatePromise(this.fd,t)}finally{this[tX]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[eX](this.writeFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;await this[yZ].writeFilePromise(this.fd,t,n)}finally{this[tX]()}}async write(...t){try{if(this[eX](this.write),ArrayBuffer.isView(t[0])){let[r,n,a,o]=t;return{bytesWritten:await this[yZ].writePromise(this.fd,r,n??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,n,a]=t;return{bytesWritten:await this[yZ].writePromise(this.fd,r,n,a),buffer:r}}}finally{this[tX]()}}async writev(t,r){try{this[eX](this.writev);let n=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);n+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);n+=o.bytesWritten}return{buffers:t,bytesWritten:n}}finally{this[tX]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[zse]===-1)return Promise.resolve();if(this[qse])return this[qse];if(this[hSe]--,this[hSe]===0){let t=this[zse];this[zse]=-1,this[qse]=this[yZ].closePromise(t).finally(()=>{this[qse]=void 0})}else this[qse]=new Promise((t,r)=>{this[Dct]=t,this[kct]=r}).finally(()=>{this[qse]=void 0,this[kct]=void 0,this[Dct]=void 0});return this[qse]}[(zbn=hSe,qbn=qse,$bn=Dct,eEn=kct,eX)](t){if(this[zse]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[hSe]++}[tX](){if(this[hSe]--,this[hSe]===0){let t=this[zse];this[zse]=-1,this[yZ].closePromise(t).then(this[Dct],this[kct])}}};xct.FileHandle=Mjt});var sEn=H(Gct=>{"use strict";Object.defineProperty(Gct,"__esModule",{value:!0});Gct.patchFs=iEn;Gct.extendFs=W7s;var KOe=wt("util"),V7s=jbn(),rEn=tEn(),P7s=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),nEn=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function iEn(e,t){t=new V7s.NodePathFS(t);let r=(n,a,o)=>{let l=n[a];n[a]=o,typeof l?.[KOe.promisify.custom]<"u"&&(o[KOe.promisify.custom]=l[KOe.promisify.custom])};{r(e,"exists",(n,...a)=>{let l=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(n).then(A=>{l(A)},()=>{l(!1)})})}),r(e,"read",(...n)=>{let[a,o,l,A,f,I]=n;if(n.length<=3){let C={};n.length<3?I=n[1]:(C=n[1],I=n[2]),{buffer:o=Buffer.alloc(16384),offset:l=0,length:A=o.byteLength,position:f}=C}if(l==null&&(l=0),A|=0,A===0){process.nextTick(()=>{I(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,l,A,f).then(C=>{I(null,C,o)},C=>{I(C,0,o)})})});for(let n of nEn){let a=n.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[n];if(typeof o>"u")continue;r(e,a,(...A)=>{let I=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{o.apply(t,A).then(C=>{I(null,C)},C=>{I(C)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",n=>{try{return t.existsSync(n)}catch{return!1}}),r(e,"readSync",(...n)=>{let[a,o,l,A,f]=n;return n.length<=3&&({offset:l=0,length:A=o.byteLength,position:f}=n[2]||{}),l==null&&(l=0),A|=0,A===0?0:(f==null&&(f=-1),t.readSync(a,o,l,A,f))});for(let n of P7s){let a=n;if(typeof e[a]>"u")continue;let o=t[n];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let n=e.promises;for(let a of nEn){let o=a.replace(/Promise$/,"");if(typeof n[o]>"u")continue;let l=t[a];typeof l>"u"||a!=="open"&&r(n,o,(A,...f)=>A instanceof rEn.FileHandle?A[o].apply(A,f):l.call(t,A,...f))}r(n,"open",async(...a)=>{let o=await t.openPromise(...a);return new rEn.FileHandle(o,t)})}e.read[KOe.promisify.custom]=async(n,a,...o)=>({bytesRead:await t.readPromise(n,a,...o),buffer:a}),e.write[KOe.promisify.custom]=async(n,a,...o)=>({bytesWritten:await t.writePromise(n,a,...o),buffer:a})}function W7s(e,t){let r=Object.create(e);return iEn(r,t),r}});var cEn=H($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.xfs=void 0;var O7s=(Pa(),vi(Va)),M7s=O7s.__importDefault(wt("os")),H7s=mfe(),jOe=L9();function oEn(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var rX=new Set,Hjt=null;function aEn(){if(Hjt)return Hjt;let e=jOe.npath.toPortablePath(M7s.default.tmpdir()),t=$se.xfs.realpathSync(e);return process.once("exit",()=>{$se.xfs.rmtempSync()}),Hjt={tmpdir:e,realTmpdir:t}}$se.xfs=Object.assign(new H7s.NodeFS,{detachTemp(e){rX.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=aEn();for(;;){let n=oEn("xfs-");try{this.mkdirSync(jOe.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=jOe.ppath.join(r,n);if(rX.add(a),typeof e>"u")return a;try{return e(a)}finally{if(rX.has(a)){rX.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=aEn();for(;;){let n=oEn("xfs-");try{await this.mkdirPromise(jOe.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=jOe.ppath.join(r,n);if(rX.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(rX.has(a)){rX.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(rX.values()).map(async e=>{try{await $se.xfs.removePromise(e,{maxRetries:0}),rX.delete(e)}catch{}}))},rmtempSync(){for(let e of rX)try{$se.xfs.removeSync(e),rX.delete(e)}catch{}}})});var ro=H(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.xfs=md.extendFs=md.patchFs=md.VirtualFS=md.ProxiedFS=md.PosixFS=md.NodeFS=md.NoFS=md.MountFS=md.LazyFS=md.JailFS=md.CwdFS=md.BasePortableFakeFS=md.FakeFS=md.AliasFS=md.ppath=md.npath=md.Filename=md.PortablePath=md.normalizeLineEndings=md.unwatchAllFiles=md.unwatchFile=md.watchFile=md.CustomDir=md.opendir=md.setupCopyIndex=md.statUtils=md.errors=md.constants=void 0;var Yjt=(Pa(),vi(Va)),Y7s=Yjt.__importStar(act());md.constants=Y7s;var Q7s=Yjt.__importStar(cct());md.errors=Q7s;var X7s=Yjt.__importStar(_jt());md.statUtils=X7s;var J7s=Ejt();Object.defineProperty(md,"setupCopyIndex",{enumerable:!0,get:function(){return J7s.setupCopyIndex}});var lEn=Fbn();Object.defineProperty(md,"opendir",{enumerable:!0,get:function(){return lEn.opendir}});Object.defineProperty(md,"CustomDir",{enumerable:!0,get:function(){return lEn.CustomDir}});var Qjt=Bjt();Object.defineProperty(md,"watchFile",{enumerable:!0,get:function(){return Qjt.watchFile}});Object.defineProperty(md,"unwatchFile",{enumerable:!0,get:function(){return Qjt.unwatchFile}});Object.defineProperty(md,"unwatchAllFiles",{enumerable:!0,get:function(){return Qjt.unwatchAllFiles}});var U7s=hfe();Object.defineProperty(md,"normalizeLineEndings",{enumerable:!0,get:function(){return U7s.normalizeLineEndings}});var uEn=L9();Object.defineProperty(md,"PortablePath",{enumerable:!0,get:function(){return uEn.PortablePath}});Object.defineProperty(md,"Filename",{enumerable:!0,get:function(){return uEn.Filename}});var gEn=L9();Object.defineProperty(md,"npath",{enumerable:!0,get:function(){return gEn.npath}});Object.defineProperty(md,"ppath",{enumerable:!0,get:function(){return gEn.ppath}});var K7s=Pbn();Object.defineProperty(md,"AliasFS",{enumerable:!0,get:function(){return K7s.AliasFS}});var AEn=hfe();Object.defineProperty(md,"FakeFS",{enumerable:!0,get:function(){return AEn.FakeFS}});Object.defineProperty(md,"BasePortableFakeFS",{enumerable:!0,get:function(){return AEn.BasePortableFakeFS}});var j7s=Obn();Object.defineProperty(md,"CwdFS",{enumerable:!0,get:function(){return j7s.CwdFS}});var z7s=Hbn();Object.defineProperty(md,"JailFS",{enumerable:!0,get:function(){return z7s.JailFS}});var q7s=Ybn();Object.defineProperty(md,"LazyFS",{enumerable:!0,get:function(){return q7s.LazyFS}});var $7s=Qbn();Object.defineProperty(md,"MountFS",{enumerable:!0,get:function(){return $7s.MountFS}});var ezs=Xbn();Object.defineProperty(md,"NoFS",{enumerable:!0,get:function(){return ezs.NoFS}});var tzs=mfe();Object.defineProperty(md,"NodeFS",{enumerable:!0,get:function(){return tzs.NodeFS}});var rzs=Jbn();Object.defineProperty(md,"PosixFS",{enumerable:!0,get:function(){return rzs.PosixFS}});var nzs=Yq();Object.defineProperty(md,"ProxiedFS",{enumerable:!0,get:function(){return nzs.ProxiedFS}});var izs=Ubn();Object.defineProperty(md,"VirtualFS",{enumerable:!0,get:function(){return izs.VirtualFS}});var dEn=sEn();Object.defineProperty(md,"patchFs",{enumerable:!0,get:function(){return dEn.patchFs}});Object.defineProperty(md,"extendFs",{enumerable:!0,get:function(){return dEn.extendFs}});var szs=cEn();Object.defineProperty(md,"xfs",{enumerable:!0,get:function(){return szs.xfs}})});var mEn=H((T3l,hEn)=>{hEn.exports=IEn;IEn.sync=azs;var pEn=wt("fs");function ozs(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{bEn.exports=_En;_En.sync=czs;var CEn=wt("fs");function _En(e,t,r){CEn.stat(e,function(n,a){r(n,n?!1:yEn(a,t))})}function czs(e,t){return yEn(CEn.statSync(e),t)}function yEn(e,t){return e.isFile()&&lzs(e,t)}function lzs(e,t){var r=e.mode,n=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),l=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),A=parseInt("100",8),f=parseInt("010",8),I=parseInt("001",8),C=A|f,b=r&I||r&f&&a===l||r&A&&n===o||r&C&&o===0;return b}});var vEn=H((D3l,SEn)=>{var N3l=wt("fs"),Fct;process.platform==="win32"||global.TESTING_WINDOWS?Fct=mEn():Fct=EEn();SEn.exports=Xjt;Xjt.sync=uzs;function Xjt(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,a){Xjt(e,t||{},function(o,l){o?a(o):n(l)})})}Fct(e,t||{},function(n,a){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,a=!1),r(n,a)})}function uzs(e,t){try{return Fct.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var Jjt=H((k3l,DEn)=>{var mSe=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",BEn=wt("path"),gzs=mSe?";":":",wEn=vEn(),TEn=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),REn=(e,t)=>{let r=t.colon||gzs,n=e.match(/\//)||mSe&&e.match(/\\/)?[""]:[...mSe?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=mSe?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=mSe?a.split(r):[""];return mSe&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:a}},NEn=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:a,pathExtExe:o}=REn(e,t),l=[],A=I=>new Promise((C,b)=>{if(I===n.length)return t.all&&l.length?C(l):b(TEn(e));let E=n[I],N=/^".*"$/.test(E)?E.slice(1,-1):E,B=BEn.join(N,e),F=!N&&/^\.[\\\/]/.test(e)?e.slice(0,2)+B:B;C(f(F,I,0))}),f=(I,C,b)=>new Promise((E,N)=>{if(b===a.length)return E(A(C+1));let B=a[b];wEn(I+B,{pathExt:o},(F,Q)=>{if(!F&&Q)if(t.all)l.push(I+B);else return E(I+B);return E(f(I,C,b+1))})});return r?A(0).then(I=>r(null,I),r):A(0)},Azs=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:a}=REn(e,t),o=[];for(let l=0;l{"use strict";var kEn=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Ujt.exports=kEn;Ujt.exports.default=kEn});var ZEn=H((G3l,FEn)=>{"use strict";var xEn=wt("path"),dzs=Jjt(),pzs=Kjt();function GEn(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=dzs.sync(e.command,{path:r[pzs({env:r})],pathExt:t?xEn.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=xEn.resolve(a?e.options.cwd:"",l)),l}function fzs(e){return GEn(e)||GEn(e,!0)}FEn.exports=fzs});var LEn=H((F3l,zjt)=>{"use strict";var jjt=/([()\][%!^"`<>&|;, *?])/g;function Izs(e){return e=e.replace(jjt,"^$1"),e}function hzs(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(jjt,"^$1"),t&&(e=e.replace(jjt,"^$1")),e}zjt.exports.command=Izs;zjt.exports.argument=hzs});var PEn=H((Z3l,VEn)=>{"use strict";VEn.exports=/^#!(.*)/});var qjt=H((L3l,WEn)=>{"use strict";var mzs=PEn();WEn.exports=(e="")=>{let t=e.match(mzs);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?n:n?`${a} ${n}`:a}});var MEn=H((V3l,OEn)=>{"use strict";var $jt=wt("fs"),Czs=qjt();function _zs(e){let r=Buffer.alloc(150),n;try{n=$jt.openSync(e,"r"),$jt.readSync(n,r,0,150,0),$jt.closeSync(n)}catch{}return Czs(r.toString())}OEn.exports=_zs});var XEn=H((P3l,QEn)=>{"use strict";var yzs=wt("path"),HEn=ZEn(),YEn=LEn(),bzs=MEn(),Ezs=process.platform==="win32",Szs=/\.(?:com|exe)$/i,vzs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Bzs(e){e.file=HEn(e);let t=e.file&&bzs(e.file);return t?(e.args.unshift(e.file),e.command=t,HEn(e)):e.file}function wzs(e){if(!Ezs)return e;let t=Bzs(e),r=!Szs.test(t);if(e.options.forceShell||r){let n=vzs.test(t);e.command=yzs.normalize(e.command),e.command=YEn.command(e.command),e.args=e.args.map(o=>YEn.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function Tzs(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:wzs(n)}QEn.exports=Tzs});var KEn=H((W3l,UEn)=>{"use strict";var e6t=process.platform==="win32";function t6t(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function Rzs(e,t){if(!e6t)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=JEn(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function JEn(e,t){return e6t&&e===1&&!t.file?t6t(t.original,"spawn"):null}function Nzs(e,t){return e6t&&e===1&&!t.file?t6t(t.original,"spawnSync"):null}UEn.exports={hookChildProcess:Rzs,verifyENOENT:JEn,verifyENOENTSync:Nzs,notFoundError:t6t}});var Zct=H((O3l,CSe)=>{"use strict";var jEn=wt("child_process"),r6t=XEn(),n6t=KEn();function zEn(e,t,r){let n=r6t(e,t,r),a=jEn.spawn(n.command,n.args,n.options);return n6t.hookChildProcess(a,n),a}function Dzs(e,t,r){let n=r6t(e,t,r),a=jEn.spawnSync(n.command,n.args,n.options);return a.error=a.error||n6t.verifyENOENTSync(a.status,n),a}CSe.exports=zEn;CSe.exports.spawn=zEn;CSe.exports.sync=Dzs;CSe.exports._parse=r6t;CSe.exports._enoent=n6t});var $En=H((M3l,qEn)=>{"use strict";function kzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Cfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Cfe)}kzs(Cfe,Error);Cfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b>",_n=ca(">>",!1),ke=">&",jt=ca(">&",!1),Fn=">",Nn=ca(">",!1),Hi="<<<",po=ca("<<<",!1),Vr="<&",xi=ca("<&",!1),io="<",ga=ca("<",!1),Ya=function(ut){return{type:"argument",segments:[].concat(...ut)}},Gc=function(ut){return ut},cl="$'",Sc=ca("$'",!1),Hr="'",Wr=ca("'",!1),Ft=function(ut){return[{type:"text",text:ut}]},zr='""',Rn=ca('""',!1),Or=function(){return{type:"text",text:""}},Qi='"',ps=ca('"',!1),yo=function(ut){return ut},bo=function(ut){return{type:"arithmetic",arithmetic:ut,quoted:!0}},Qa=function(ut){return{type:"shell",shell:ut,quoted:!0}},gc=function(ut){return{type:"variable",...ut,quoted:!0}},Cg=function(ut){return{type:"text",text:ut}},Nc=function(ut){return{type:"arithmetic",arithmetic:ut,quoted:!1}},iA=function(ut){return{type:"shell",shell:ut,quoted:!1}},ma=function(ut){return{type:"variable",...ut,quoted:!1}},vu=function(ut){return{type:"glob",pattern:ut}},li=/^[^']/,Ei=Bl(["'"],!0,!1),Ps=function(ut){return ut.join("")},Xa=/^[^$"]/,ac=Bl(["$",'"'],!0,!1),Yl=`\\ +`}function kjt(e,t){return t.replace(/\r?\n/g,B7s(e))}});var Yq=H(Cct=>{"use strict";Object.defineProperty(Cct,"__esModule",{value:!0});Cct.ProxiedFS=void 0;var w7s=mfe(),xjt=class extends w7s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};Cct.ProxiedFS=xjt});var Xbn=H(_ct=>{"use strict";Object.defineProperty(_ct,"__esModule",{value:!0});_ct.AliasFS=void 0;var T7s=Yq(),Gjt=class extends T7s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:n}){super(n),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};_ct.AliasFS=Gjt});var Cfe=H(yct=>{"use strict";Object.defineProperty(yct,"__esModule",{value:!0});yct.NodeFS=void 0;var R7s=(Pa(),vi(Va)),N7s=R7s.__importDefault(wt("fs")),D7s=mfe(),ku=L9();function Jbn(e){let t=e;return typeof e.path=="string"&&(t.path=ku.npath.toPortablePath(e.path)),t}var Fjt=class extends D7s.BasePortableFakeFS{constructor(t=N7s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return ku.PortablePath.root}resolve(t){return ku.ppath.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(ku.npath.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(ku.npath.fromPortablePath(t),r):this.realFs.opendirSync(ku.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(ku.npath.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}realpathSync(t){return ku.npath.toPortablePath(this.realFs.realpathSync(ku.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(ku.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(ku.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(ku.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(ku.npath.fromPortablePath(t),r):this.realFs.statSync(ku.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(ku.npath.fromPortablePath(t),r):this.realFs.lstatSync(ku.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(ku.npath.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(ku.npath.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(ku.npath.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(ku.npath.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(ku.npath.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(ku.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(ku.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(ku.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?ku.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?ku.npath.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Jbn)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(ku.npath.toPortablePath)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(Jbn):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(ku.npath.toPortablePath):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r):this.realFs.readdirSync(ku.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}readlinkSync(t){return ku.npath.toPortablePath(this.realFs.readlinkSync(ku.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(ku.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(ku.npath.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(ku.npath.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(ku.npath.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}};yct.NodeFS=Fjt});var Ubn=H(bct=>{"use strict";Object.defineProperty(bct,"__esModule",{value:!0});bct.CwdFS=void 0;var k7s=Cfe(),x7s=Yq(),Zjt=L9(),Ljt=class extends x7s.ProxiedFS{constructor(t,{baseFs:r=new k7s.NodeFS}={}){super(Zjt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?Zjt.ppath.normalize(t):this.baseFs.resolve(Zjt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};bct.CwdFS=Ljt});var jbn=H(Sct=>{"use strict";Object.defineProperty(Sct,"__esModule",{value:!0});Sct.JailFS=void 0;var G7s=Cfe(),F7s=Yq(),Ect=L9(),Kbn=Ect.PortablePath.root,Vjt=class extends F7s.ProxiedFS{constructor(t,{baseFs:r=new G7s.NodeFS}={}){super(Ect.ppath),this.target=this.pathUtils.resolve(Ect.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Ect.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(Kbn,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(Kbn,this.pathUtils.relative(this.target,t))}};Sct.JailFS=Vjt});var zbn=H(vct=>{"use strict";Object.defineProperty(vct,"__esModule",{value:!0});vct.LazyFS=void 0;var Z7s=Yq(),Pjt=class extends Z7s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};vct.LazyFS=Pjt});var qbn=H(Tct=>{"use strict";Object.defineProperty(Tct,"__esModule",{value:!0});Tct.MountFS=void 0;var L7s=(Pa(),vi(Va)),hSe=wt("fs"),V7s=mfe(),P7s=Cfe(),Bct=Njt(),V9=L7s.__importStar(uct()),wct=L9(),P9=4278190080,Wjt=class extends V7s.BasePortableFakeFS{constructor({baseFs:t=new P7s.NodeFS,filter:r=null,magicByte:n=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:l=5e3,typeCheck:A=hSe.constants.S_IFREG,getMountPoint:f,factoryPromise:I,factorySync:C}){if(Math.floor(n)!==n||!(n>1&&n<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=I,this.factorySync=C,this.filter=r,this.getMountPoint=f,this.magic=n<<24,this.maxAge=l,this.maxOpenFiles=a,this.typeCheck=A}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Bct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Bct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let n=this.nextFd++|this.magic;return this.fdMap.set(n,[t,r]),n}async openPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,n),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,n)))}openSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,n),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,n)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(n,{subPath:a})=>await n.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(n,{subPath:a})=>n.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,n,a,o){if((t&P9)!==this.magic)return await this.baseFs.readPromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("read");let[A,f]=l;return await A.readPromise(f,r,n,a,o)}readSync(t,r,n,a,o){if((t&P9)!==this.magic)return this.baseFs.readSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("readSync");let[A,f]=l;return A.readSync(f,r,n,a,o)}async writePromise(t,r,n,a,o){if((t&P9)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("write");let[A,f]=l;return typeof r=="string"?await A.writePromise(f,r,n):await A.writePromise(f,r,n,a,o)}writeSync(t,r,n,a,o){if((t&P9)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("writeSync");let[A,f]=l;return typeof r=="string"?A.writeSync(f,r,n):A.writeSync(f,r,n,a,o)}async closePromise(t){if((t&P9)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw V9.EBADF("close");this.fdMap.delete(t);let[n,a]=r;return await n.closePromise(a)}closeSync(t){if((t&P9)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw V9.EBADF("closeSync");this.fdMap.delete(t);let[n,a]=r;return n.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(n,{archivePath:a,subPath:o})=>{let l=n.createReadStream(o,r);return l.path=wct.npath.fromPortablePath(this.pathUtils.join(a,o)),l})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(n,{subPath:a})=>n.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(wct.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=this.baseFs.realpathSync(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(wct.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:n})=>await r.existsPromise(n))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:n})=>r.existsSync(n))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(n,{subPath:a})=>await n.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(n,{subPath:a})=>n.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(n,{subPath:a})=>await n.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(n,{subPath:a})=>n.statSync(a,r))}async fstatPromise(t,r){if((t&P9)!==this.magic)return this.baseFs.fstatPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fstat");let[a,o]=n;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&P9)!==this.magic)return this.baseFs.fstatSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fstatSync");let[a,o]=n;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(n,{subPath:a})=>await n.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(n,{subPath:a})=>n.lstatSync(a,r))}async fchmodPromise(t,r){if((t&P9)!==this.magic)return this.baseFs.fchmodPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fchmod");let[a,o]=n;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&P9)!==this.magic)return this.baseFs.fchmodSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fchmodSync");let[a,o]=n;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(n,{subPath:a})=>await n.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(n,{subPath:a})=>n.chmodSync(a,r))}async fchownPromise(t,r,n){if((t&P9)!==this.magic)return this.baseFs.fchownPromise(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw V9.EBADF("fchown");let[o,l]=a;return o.fchownPromise(l,r,n)}fchownSync(t,r,n){if((t&P9)!==this.magic)return this.baseFs.fchownSync(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw V9.EBADF("fchownSync");let[o,l]=a;return o.fchownSync(l,r,n)}async chownPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,n),async(a,{subPath:o})=>await a.chownPromise(o,r,n))}chownSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,n),(a,{subPath:o})=>a.chownSync(o,r,n))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(n,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await n.renamePromise(a,l)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(n,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return n.renameSync(a,l)}))}async copyFilePromise(t,r,n=0){let a=async(o,l,A,f)=>{if(n&hSe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&hSe.constants.COPYFILE_EXCL&&await this.existsPromise(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=await o.readFilePromise(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}await A.writeFilePromise(f,I)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,n),async(o,{subPath:l})=>await a(this.baseFs,t,o,l)),async(o,{subPath:l})=>await this.makeCallPromise(r,async()=>await a(o,l,this.baseFs,r),async(A,{subPath:f})=>o!==A?await a(o,l,A,f):await o.copyFilePromise(l,f,n)))}copyFileSync(t,r,n=0){let a=(o,l,A,f)=>{if(n&hSe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&hSe.constants.COPYFILE_EXCL&&this.existsSync(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=o.readFileSync(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}A.writeFileSync(f,I)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,n),(o,{subPath:l})=>a(this.baseFs,t,o,l)),(o,{subPath:l})=>this.makeCallSync(r,()=>a(o,l,this.baseFs,r),(A,{subPath:f})=>o!==A?a(o,l,A,f):o.copyFileSync(l,f,n)))}async appendFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,n),async(a,{subPath:o})=>await a.appendFilePromise(o,r,n))}appendFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,n),(a,{subPath:o})=>a.appendFileSync(o,r,n))}async writeFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,n),async(a,{subPath:o})=>await a.writeFilePromise(o,r,n))}writeFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,n),(a,{subPath:o})=>a.writeFileSync(o,r,n))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:n})=>await r.unlinkPromise(n))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:n})=>r.unlinkSync(n))}async utimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,n),async(a,{subPath:o})=>await a.utimesPromise(o,r,n))}utimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,n),(a,{subPath:o})=>a.utimesSync(o,r,n))}async lutimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,n),async(a,{subPath:o})=>await a.lutimesPromise(o,r,n))}lutimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,n),(a,{subPath:o})=>a.lutimesSync(o,r,n))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(n,{subPath:a})=>await n.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(n,{subPath:a})=>n.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(n,{subPath:a})=>await n.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(n,{subPath:a})=>n.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(n,{subPath:a})=>await n.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(n,{subPath:a})=>n.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(n,{subPath:a})=>await n.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(n,{subPath:a})=>n.linkSync(t,a))}async symlinkPromise(t,r,n){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,n),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,n){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,n),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(n,{subPath:a})=>await n.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(n,{subPath:a})=>n.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(n,{subPath:a})=>await n.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(n,{subPath:a})=>n.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:n})=>await r.readlinkPromise(n))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:n})=>r.readlinkSync(n))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(n,{subPath:a})=>await n.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(n,{subPath:a})=>n.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&P9)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("ftruncate");let[a,o]=n;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&P9)!==this.magic)return this.baseFs.ftruncateSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("ftruncateSync");let[a,o]=n;return a.ftruncateSync(o,r)}watch(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,n),(a,{subPath:o})=>a.watch(o,r,n))}watchFile(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,n),()=>(0,Bct.watchFile)(this,t,r,n))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Bct.unwatchFile)(this,t,r))}async makeCallPromise(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),l=this.findMount(o);return l?a&&l.subPath==="/"?await r():await this.getMountPromise(l.archivePath,async A=>await n(A,l)):await r()}makeCallSync(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),l=this.findMount(o);return!l||a&&l.subPath==="/"?r():this.getMountSync(l.archivePath,A=>n(A,l))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let n=t.substring(r.length),a=this.getMountPoint(n,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.statSync(r).mode&hSe.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(wct.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),n=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:l,expiresAt:A,refCount:f}]of this.mountInstances.entries())if(!(f!==0||l.hasOpenFileHandles?.())){if(r>=A){l.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){n=A;break}l.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(n)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},n-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);if(!n){let a=await this.factoryPromise(this.baseFs,t);n=this.mountInstances.get(t),n||(n={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.childFs)}finally{n.refCount-=1}}else{let n=(await this.factoryPromise(this.baseFs,t))();try{return await r(n)}finally{n.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);return n||(n={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,r(n.childFs)}else{let n=this.factorySync(this.baseFs,t);try{return r(n)}finally{n.saveAndClose?.()}}}};Tct.MountFS=Wjt});var $bn=H(Rct=>{"use strict";Object.defineProperty(Rct,"__esModule",{value:!0});Rct.NoFS=void 0;var W7s=mfe(),O7s=L9(),Pg=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),jOe=class extends W7s.FakeFS{constructor(){super(O7s.ppath)}getExtractHint(){throw Pg()}getRealPath(){throw Pg()}resolve(){throw Pg()}async openPromise(){throw Pg()}openSync(){throw Pg()}async opendirPromise(){throw Pg()}opendirSync(){throw Pg()}async readPromise(){throw Pg()}readSync(){throw Pg()}async writePromise(){throw Pg()}writeSync(){throw Pg()}async closePromise(){throw Pg()}closeSync(){throw Pg()}createWriteStream(){throw Pg()}createReadStream(){throw Pg()}async realpathPromise(){throw Pg()}realpathSync(){throw Pg()}async readdirPromise(){throw Pg()}readdirSync(){throw Pg()}async existsPromise(t){throw Pg()}existsSync(t){throw Pg()}async accessPromise(){throw Pg()}accessSync(){throw Pg()}async statPromise(){throw Pg()}statSync(){throw Pg()}async fstatPromise(t){throw Pg()}fstatSync(t){throw Pg()}async lstatPromise(t){throw Pg()}lstatSync(t){throw Pg()}async fchmodPromise(){throw Pg()}fchmodSync(){throw Pg()}async chmodPromise(){throw Pg()}chmodSync(){throw Pg()}async fchownPromise(){throw Pg()}fchownSync(){throw Pg()}async chownPromise(){throw Pg()}chownSync(){throw Pg()}async mkdirPromise(){throw Pg()}mkdirSync(){throw Pg()}async rmdirPromise(){throw Pg()}rmdirSync(){throw Pg()}async rmPromise(){throw Pg()}rmSync(){throw Pg()}async linkPromise(){throw Pg()}linkSync(){throw Pg()}async symlinkPromise(){throw Pg()}symlinkSync(){throw Pg()}async renamePromise(){throw Pg()}renameSync(){throw Pg()}async copyFilePromise(){throw Pg()}copyFileSync(){throw Pg()}async appendFilePromise(){throw Pg()}appendFileSync(){throw Pg()}async writeFilePromise(){throw Pg()}writeFileSync(){throw Pg()}async unlinkPromise(){throw Pg()}unlinkSync(){throw Pg()}async utimesPromise(){throw Pg()}utimesSync(){throw Pg()}async lutimesPromise(){throw Pg()}lutimesSync(){throw Pg()}async readFilePromise(){throw Pg()}readFileSync(){throw Pg()}async readlinkPromise(){throw Pg()}readlinkSync(){throw Pg()}async truncatePromise(){throw Pg()}truncateSync(){throw Pg()}async ftruncatePromise(t,r){throw Pg()}ftruncateSync(t,r){throw Pg()}watch(){throw Pg()}watchFile(){throw Pg()}unwatchFile(){throw Pg()}};Rct.NoFS=jOe;jOe.instance=new jOe});var eEn=H(Nct=>{"use strict";Object.defineProperty(Nct,"__esModule",{value:!0});Nct.PosixFS=void 0;var M7s=Yq(),Ojt=L9(),Mjt=class extends M7s.ProxiedFS{constructor(t){super(Ojt.npath),this.baseFs=t}mapFromBase(t){return Ojt.npath.fromPortablePath(t)}mapToBase(t){return Ojt.npath.toPortablePath(t)}};Nct.PosixFS=Mjt});var tEn=H(Dct=>{"use strict";Object.defineProperty(Dct,"__esModule",{value:!0});Dct.VirtualFS=void 0;var H7s=Cfe(),Y7s=Yq(),$Q=L9(),Q7s=/^[0-9]+$/,Hjt=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,X7s=/^([^/]+-)?[a-f0-9]+$/,Yjt=class e extends Y7s.ProxiedFS{static makeVirtualPath(t,r,n){if($Q.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!$Q.ppath.basename(r).match(X7s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=$Q.ppath.relative($Q.ppath.dirname(t),n).split("/"),l=0;for(;l{"use strict";Object.defineProperty(kct,"__esModule",{value:!0});kct.NodePathFS=void 0;var J7s=(Pa(),vi(Va)),rEn=J7s.__importDefault(wt("buffer")),U7s=wt("url"),K7s=wt("util"),j7s=Yq(),z7s=L9(),Qjt=class extends j7s.ProxiedFS{constructor(t){super(z7s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,U7s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!q7s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,K7s.inspect)(t)}`)}};kct.NodePathFS=Qjt;function q7s(e,t){return typeof rEn.default.isUtf8<"u"?rEn.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var cEn=H(Fct=>{"use strict";var iEn,sEn,oEn,aEn;Object.defineProperty(Fct,"__esModule",{value:!0});Fct.FileHandle=void 0;var $7s=wt("readline"),yZ=Symbol("kBaseFs"),qse=Symbol("kFd"),$se=Symbol("kClosePromise"),xct=Symbol("kCloseResolve"),Gct=Symbol("kCloseReject"),mSe=Symbol("kRefs"),eX=Symbol("kRef"),tX=Symbol("kUnref"),Xjt=class{constructor(t,r){this[iEn]=1,this[sEn]=void 0,this[oEn]=void 0,this[aEn]=void 0,this[yZ]=r,this[qse]=t}get fd(){return this[qse]}async appendFile(t,r){try{this[eX](this.appendFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;return await this[yZ].appendFilePromise(this.fd,t,n?{encoding:n}:void 0)}finally{this[tX]()}}async chown(t,r){try{return this[eX](this.chown),await this[yZ].fchownPromise(this.fd,t,r)}finally{this[tX]()}}async chmod(t){try{return this[eX](this.chmod),await this[yZ].fchmodPromise(this.fd,t)}finally{this[tX]()}}createReadStream(t){return this[yZ].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[yZ].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,n,a){try{this[eX](this.read);let o,l;return ArrayBuffer.isView(t)?typeof r=="object"&&r!==null?(o=t,l=r?.offset??0,n=r?.length??o.byteLength-l,a=r?.position??null):(o=t,l=r??0,n??=0):(o=t?.buffer??Buffer.alloc(16384),l=t?.offset??0,n=t?.length??o.byteLength-l,a=t?.position??null),n===0?{bytesRead:n,buffer:o}:{bytesRead:await this[yZ].readPromise(this.fd,Buffer.isBuffer(o)?o:Buffer.from(o.buffer,o.byteOffset,o.byteLength),l,n,a),buffer:o}}finally{this[tX]()}}async readFile(t){try{this[eX](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[yZ].readFilePromise(this.fd,r)}finally{this[tX]()}}readLines(t){return(0,$7s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[eX](this.stat),await this[yZ].fstatPromise(this.fd,t)}finally{this[tX]()}}async truncate(t){try{return this[eX](this.truncate),await this[yZ].ftruncatePromise(this.fd,t)}finally{this[tX]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[eX](this.writeFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;await this[yZ].writeFilePromise(this.fd,t,n)}finally{this[tX]()}}async write(...t){try{if(this[eX](this.write),ArrayBuffer.isView(t[0])){let[r,n,a,o]=t;return{bytesWritten:await this[yZ].writePromise(this.fd,r,n??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,n,a]=t;return{bytesWritten:await this[yZ].writePromise(this.fd,r,n,a),buffer:r}}}finally{this[tX]()}}async writev(t,r){try{this[eX](this.writev);let n=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);n+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);n+=o.bytesWritten}return{buffers:t,bytesWritten:n}}finally{this[tX]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[qse]===-1)return Promise.resolve();if(this[$se])return this[$se];if(this[mSe]--,this[mSe]===0){let t=this[qse];this[qse]=-1,this[$se]=this[yZ].closePromise(t).finally(()=>{this[$se]=void 0})}else this[$se]=new Promise((t,r)=>{this[xct]=t,this[Gct]=r}).finally(()=>{this[$se]=void 0,this[Gct]=void 0,this[xct]=void 0});return this[$se]}[(iEn=mSe,sEn=$se,oEn=xct,aEn=Gct,eX)](t){if(this[qse]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[mSe]++}[tX](){if(this[mSe]--,this[mSe]===0){let t=this[qse];this[qse]=-1,this[yZ].closePromise(t).then(this[xct],this[Gct])}}};Fct.FileHandle=Xjt});var AEn=H(Zct=>{"use strict";Object.defineProperty(Zct,"__esModule",{value:!0});Zct.patchFs=gEn;Zct.extendFs=rzs;var zOe=wt("util"),ezs=nEn(),lEn=cEn(),tzs=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),uEn=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function gEn(e,t){t=new ezs.NodePathFS(t);let r=(n,a,o)=>{let l=n[a];n[a]=o,typeof l?.[zOe.promisify.custom]<"u"&&(o[zOe.promisify.custom]=l[zOe.promisify.custom])};{r(e,"exists",(n,...a)=>{let l=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(n).then(A=>{l(A)},()=>{l(!1)})})}),r(e,"read",(...n)=>{let[a,o,l,A,f,I]=n;if(n.length<=3){let C={};n.length<3?I=n[1]:(C=n[1],I=n[2]),{buffer:o=Buffer.alloc(16384),offset:l=0,length:A=o.byteLength,position:f}=C}if(l==null&&(l=0),A|=0,A===0){process.nextTick(()=>{I(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,l,A,f).then(C=>{I(null,C,o)},C=>{I(C,0,o)})})});for(let n of uEn){let a=n.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[n];if(typeof o>"u")continue;r(e,a,(...A)=>{let I=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{o.apply(t,A).then(C=>{I(null,C)},C=>{I(C)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",n=>{try{return t.existsSync(n)}catch{return!1}}),r(e,"readSync",(...n)=>{let[a,o,l,A,f]=n;return n.length<=3&&({offset:l=0,length:A=o.byteLength,position:f}=n[2]||{}),l==null&&(l=0),A|=0,A===0?0:(f==null&&(f=-1),t.readSync(a,o,l,A,f))});for(let n of tzs){let a=n;if(typeof e[a]>"u")continue;let o=t[n];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let n=e.promises;for(let a of uEn){let o=a.replace(/Promise$/,"");if(typeof n[o]>"u")continue;let l=t[a];typeof l>"u"||a!=="open"&&r(n,o,(A,...f)=>A instanceof lEn.FileHandle?A[o].apply(A,f):l.call(t,A,...f))}r(n,"open",async(...a)=>{let o=await t.openPromise(...a);return new lEn.FileHandle(o,t)})}e.read[zOe.promisify.custom]=async(n,a,...o)=>({bytesRead:await t.readPromise(n,a,...o),buffer:a}),e.write[zOe.promisify.custom]=async(n,a,...o)=>({bytesWritten:await t.writePromise(n,a,...o),buffer:a})}function rzs(e,t){let r=Object.create(e);return gEn(r,t),r}});var fEn=H(eoe=>{"use strict";Object.defineProperty(eoe,"__esModule",{value:!0});eoe.xfs=void 0;var nzs=(Pa(),vi(Va)),izs=nzs.__importDefault(wt("os")),szs=Cfe(),qOe=L9();function dEn(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var rX=new Set,Jjt=null;function pEn(){if(Jjt)return Jjt;let e=qOe.npath.toPortablePath(izs.default.tmpdir()),t=eoe.xfs.realpathSync(e);return process.once("exit",()=>{eoe.xfs.rmtempSync()}),Jjt={tmpdir:e,realTmpdir:t}}eoe.xfs=Object.assign(new szs.NodeFS,{detachTemp(e){rX.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=pEn();for(;;){let n=dEn("xfs-");try{this.mkdirSync(qOe.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=qOe.ppath.join(r,n);if(rX.add(a),typeof e>"u")return a;try{return e(a)}finally{if(rX.has(a)){rX.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=pEn();for(;;){let n=dEn("xfs-");try{await this.mkdirPromise(qOe.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=qOe.ppath.join(r,n);if(rX.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(rX.has(a)){rX.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(rX.values()).map(async e=>{try{await eoe.xfs.removePromise(e,{maxRetries:0}),rX.delete(e)}catch{}}))},rmtempSync(){for(let e of rX)try{eoe.xfs.removeSync(e),rX.delete(e)}catch{}}})});var zs=H(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.xfs=md.extendFs=md.patchFs=md.VirtualFS=md.ProxiedFS=md.PosixFS=md.NodeFS=md.NoFS=md.MountFS=md.LazyFS=md.JailFS=md.CwdFS=md.BasePortableFakeFS=md.FakeFS=md.AliasFS=md.ppath=md.npath=md.Filename=md.PortablePath=md.normalizeLineEndings=md.unwatchAllFiles=md.unwatchFile=md.watchFile=md.CustomDir=md.opendir=md.setupCopyIndex=md.statUtils=md.errors=md.constants=void 0;var Ujt=(Pa(),vi(Va)),ozs=Ujt.__importStar(lct());md.constants=ozs;var azs=Ujt.__importStar(uct());md.errors=azs;var czs=Ujt.__importStar(Sjt());md.statUtils=czs;var lzs=wjt();Object.defineProperty(md,"setupCopyIndex",{enumerable:!0,get:function(){return lzs.setupCopyIndex}});var IEn=Mbn();Object.defineProperty(md,"opendir",{enumerable:!0,get:function(){return IEn.opendir}});Object.defineProperty(md,"CustomDir",{enumerable:!0,get:function(){return IEn.CustomDir}});var Kjt=Njt();Object.defineProperty(md,"watchFile",{enumerable:!0,get:function(){return Kjt.watchFile}});Object.defineProperty(md,"unwatchFile",{enumerable:!0,get:function(){return Kjt.unwatchFile}});Object.defineProperty(md,"unwatchAllFiles",{enumerable:!0,get:function(){return Kjt.unwatchAllFiles}});var uzs=mfe();Object.defineProperty(md,"normalizeLineEndings",{enumerable:!0,get:function(){return uzs.normalizeLineEndings}});var hEn=L9();Object.defineProperty(md,"PortablePath",{enumerable:!0,get:function(){return hEn.PortablePath}});Object.defineProperty(md,"Filename",{enumerable:!0,get:function(){return hEn.Filename}});var mEn=L9();Object.defineProperty(md,"npath",{enumerable:!0,get:function(){return mEn.npath}});Object.defineProperty(md,"ppath",{enumerable:!0,get:function(){return mEn.ppath}});var gzs=Xbn();Object.defineProperty(md,"AliasFS",{enumerable:!0,get:function(){return gzs.AliasFS}});var CEn=mfe();Object.defineProperty(md,"FakeFS",{enumerable:!0,get:function(){return CEn.FakeFS}});Object.defineProperty(md,"BasePortableFakeFS",{enumerable:!0,get:function(){return CEn.BasePortableFakeFS}});var Azs=Ubn();Object.defineProperty(md,"CwdFS",{enumerable:!0,get:function(){return Azs.CwdFS}});var dzs=jbn();Object.defineProperty(md,"JailFS",{enumerable:!0,get:function(){return dzs.JailFS}});var pzs=zbn();Object.defineProperty(md,"LazyFS",{enumerable:!0,get:function(){return pzs.LazyFS}});var fzs=qbn();Object.defineProperty(md,"MountFS",{enumerable:!0,get:function(){return fzs.MountFS}});var Izs=$bn();Object.defineProperty(md,"NoFS",{enumerable:!0,get:function(){return Izs.NoFS}});var hzs=Cfe();Object.defineProperty(md,"NodeFS",{enumerable:!0,get:function(){return hzs.NodeFS}});var mzs=eEn();Object.defineProperty(md,"PosixFS",{enumerable:!0,get:function(){return mzs.PosixFS}});var Czs=Yq();Object.defineProperty(md,"ProxiedFS",{enumerable:!0,get:function(){return Czs.ProxiedFS}});var _zs=tEn();Object.defineProperty(md,"VirtualFS",{enumerable:!0,get:function(){return _zs.VirtualFS}});var _En=AEn();Object.defineProperty(md,"patchFs",{enumerable:!0,get:function(){return _En.patchFs}});Object.defineProperty(md,"extendFs",{enumerable:!0,get:function(){return _En.extendFs}});var yzs=fEn();Object.defineProperty(md,"xfs",{enumerable:!0,get:function(){return yzs.xfs}})});var vEn=H((_5l,SEn)=>{SEn.exports=EEn;EEn.sync=Ezs;var yEn=wt("fs");function bzs(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{REn.exports=wEn;wEn.sync=Szs;var BEn=wt("fs");function wEn(e,t,r){BEn.stat(e,function(n,a){r(n,n?!1:TEn(a,t))})}function Szs(e,t){return TEn(BEn.statSync(e),t)}function TEn(e,t){return e.isFile()&&vzs(e,t)}function vzs(e,t){var r=e.mode,n=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),l=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),A=parseInt("100",8),f=parseInt("010",8),I=parseInt("001",8),C=A|f,b=r&I||r&f&&a===l||r&A&&n===o||r&C&&o===0;return b}});var kEn=H((E5l,DEn)=>{var b5l=wt("fs"),Lct;process.platform==="win32"||global.TESTING_WINDOWS?Lct=vEn():Lct=NEn();DEn.exports=jjt;jjt.sync=Bzs;function jjt(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,a){jjt(e,t||{},function(o,l){o?a(o):n(l)})})}Lct(e,t||{},function(n,a){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,a=!1),r(n,a)})}function Bzs(e,t){try{return Lct.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var zjt=H((S5l,VEn)=>{var CSe=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",xEn=wt("path"),wzs=CSe?";":":",GEn=kEn(),FEn=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),ZEn=(e,t)=>{let r=t.colon||wzs,n=e.match(/\//)||CSe&&e.match(/\\/)?[""]:[...CSe?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=CSe?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=CSe?a.split(r):[""];return CSe&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:a}},LEn=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:a,pathExtExe:o}=ZEn(e,t),l=[],A=I=>new Promise((C,b)=>{if(I===n.length)return t.all&&l.length?C(l):b(FEn(e));let E=n[I],N=/^".*"$/.test(E)?E.slice(1,-1):E,B=xEn.join(N,e),F=!N&&/^\.[\\\/]/.test(e)?e.slice(0,2)+B:B;C(f(F,I,0))}),f=(I,C,b)=>new Promise((E,N)=>{if(b===a.length)return E(A(C+1));let B=a[b];GEn(I+B,{pathExt:o},(F,Q)=>{if(!F&&Q)if(t.all)l.push(I+B);else return E(I+B);return E(f(I,C,b+1))})});return r?A(0).then(I=>r(null,I),r):A(0)},Tzs=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:a}=ZEn(e,t),o=[];for(let l=0;l{"use strict";var PEn=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};qjt.exports=PEn;qjt.exports.default=PEn});var HEn=H((B5l,MEn)=>{"use strict";var WEn=wt("path"),Rzs=zjt(),Nzs=$jt();function OEn(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=Rzs.sync(e.command,{path:r[Nzs({env:r})],pathExt:t?WEn.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=WEn.resolve(a?e.options.cwd:"",l)),l}function Dzs(e){return OEn(e)||OEn(e,!0)}MEn.exports=Dzs});var YEn=H((w5l,t6t)=>{"use strict";var e6t=/([()\][%!^"`<>&|;, *?])/g;function kzs(e){return e=e.replace(e6t,"^$1"),e}function xzs(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(e6t,"^$1"),t&&(e=e.replace(e6t,"^$1")),e}t6t.exports.command=kzs;t6t.exports.argument=xzs});var XEn=H((T5l,QEn)=>{"use strict";QEn.exports=/^#!(.*)/});var r6t=H((R5l,JEn)=>{"use strict";var Gzs=XEn();JEn.exports=(e="")=>{let t=e.match(Gzs);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?n:n?`${a} ${n}`:a}});var KEn=H((N5l,UEn)=>{"use strict";var n6t=wt("fs"),Fzs=r6t();function Zzs(e){let r=Buffer.alloc(150),n;try{n=n6t.openSync(e,"r"),n6t.readSync(n,r,0,150,0),n6t.closeSync(n)}catch{}return Fzs(r.toString())}UEn.exports=Zzs});var $En=H((D5l,qEn)=>{"use strict";var Lzs=wt("path"),jEn=HEn(),zEn=YEn(),Vzs=KEn(),Pzs=process.platform==="win32",Wzs=/\.(?:com|exe)$/i,Ozs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Mzs(e){e.file=jEn(e);let t=e.file&&Vzs(e.file);return t?(e.args.unshift(e.file),e.command=t,jEn(e)):e.file}function Hzs(e){if(!Pzs)return e;let t=Mzs(e),r=!Wzs.test(t);if(e.options.forceShell||r){let n=Ozs.test(t);e.command=Lzs.normalize(e.command),e.command=zEn.command(e.command),e.args=e.args.map(o=>zEn.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function Yzs(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:Hzs(n)}qEn.exports=Yzs});var r1n=H((k5l,t1n)=>{"use strict";var i6t=process.platform==="win32";function s6t(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function Qzs(e,t){if(!i6t)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=e1n(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function e1n(e,t){return i6t&&e===1&&!t.file?s6t(t.original,"spawn"):null}function Xzs(e,t){return i6t&&e===1&&!t.file?s6t(t.original,"spawnSync"):null}t1n.exports={hookChildProcess:Qzs,verifyENOENT:e1n,verifyENOENTSync:Xzs,notFoundError:s6t}});var Vct=H((x5l,_Se)=>{"use strict";var n1n=wt("child_process"),o6t=$En(),a6t=r1n();function i1n(e,t,r){let n=o6t(e,t,r),a=n1n.spawn(n.command,n.args,n.options);return a6t.hookChildProcess(a,n),a}function Jzs(e,t,r){let n=o6t(e,t,r),a=n1n.spawnSync(n.command,n.args,n.options);return a.error=a.error||a6t.verifyENOENTSync(a.status,n),a}_Se.exports=i1n;_Se.exports.spawn=i1n;_Se.exports.sync=Jzs;_Se.exports._parse=o6t;_Se.exports._enoent=a6t});var o1n=H((G5l,s1n)=>{"use strict";function Uzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function _fe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,_fe)}Uzs(_fe,Error);_fe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b>",_n=ca(">>",!1),ke=">&",jt=ca(">&",!1),Fn=">",Nn=ca(">",!1),Hi="<<<",po=ca("<<<",!1),Vr="<&",xi=ca("<&",!1),io="<",ga=ca("<",!1),Ya=function(ut){return{type:"argument",segments:[].concat(...ut)}},Gc=function(ut){return ut},cl="$'",Sc=ca("$'",!1),Hr="'",Wr=ca("'",!1),Ft=function(ut){return[{type:"text",text:ut}]},zr='""',Rn=ca('""',!1),Or=function(){return{type:"text",text:""}},Qi='"',ps=ca('"',!1),yo=function(ut){return ut},bo=function(ut){return{type:"arithmetic",arithmetic:ut,quoted:!0}},Qa=function(ut){return{type:"shell",shell:ut,quoted:!0}},gc=function(ut){return{type:"variable",...ut,quoted:!0}},Cg=function(ut){return{type:"text",text:ut}},Nc=function(ut){return{type:"arithmetic",arithmetic:ut,quoted:!1}},iA=function(ut){return{type:"shell",shell:ut,quoted:!1}},ma=function(ut){return{type:"variable",...ut,quoted:!1}},vu=function(ut){return{type:"glob",pattern:ut}},li=/^[^']/,Ei=Bl(["'"],!0,!1),Ps=function(ut){return ut.join("")},Xa=/^[^$"]/,ac=Bl(["$",'"'],!0,!1),Yl=`\\ `,Wc=ca(`\\ `,!1),Sg=function(){return""},Ul="\\",Xu=ca("\\",!1),Da=/^[\\$"`]/,pu=Bl(["\\","$",'"',"`"],!1,!1),_g=function(ut){return ut},mI="\\a",Qh=ca("\\a",!1),Ri=function(){return"a"},Do="\\b",Wt=ca("\\b",!1),Hu=function(){return"\b"},Ru=/^[Ee]/,Vs=Bl(["E","e"],!1,!1),Ju=function(){return"\x1B"},Yn="\\f",Ko=ca("\\f",!1),Eg=function(){return"\f"},OA="\\n",GA=ca("\\n",!1),$i=function(){return` -`},dl="\\r",Uf=ca("\\r",!1),Kd=function(){return"\r"},oA="\\t",oo=ca("\\t",!1),Ki=function(){return" "},cc="\\v",Xs=ca("\\v",!1),ws=function(){return"\v"},Gs=/^[\\'"?]/,Ma=Bl(["\\","'",'"',"?"],!1,!1),Dc=function(ut){return String.fromCharCode(parseInt(ut,16))},As="\\x",Tf=ca("\\x",!1),cm="\\u",Fl=ca("\\u",!1),rc="\\U",sd=ca("\\U",!1),Om=function(ut){return String.fromCodePoint(parseInt(ut,16))},il=/^[0-7]/,FA=Bl([["0","7"]],!1,!1),ZA=/^[0-9a-fA-f]/,El=Bl([["0","9"],["a","f"],["A","f"]],!1,!1),yg=$g(),Mp="{}",MA=ca("{}",!1),Er=function(){return"{}"},Zt="-",yn=ca("-",!1),ls="+",oa=ca("+",!1),Fs=".",Wa=ca(".",!1),Ca=function(ut,ar,Jr){return{type:"number",value:(ut==="-"?-1:1)*parseFloat(ar.join("")+"."+Jr.join(""))}},ld=function(ut,ar){return{type:"number",value:(ut==="-"?-1:1)*parseInt(ar.join(""))}},Rp=function(ut){return{type:"variable",...ut}},np=function(ut){return{type:"variable",name:ut}},HA=function(ut){return ut},df="*",Zs=ca("*",!1),so="/",Ea=ca("/",!1),Ml=function(ut,ar,Jr){return{type:ar==="*"?"multiplication":"division",right:Jr}},Dr=function(ut,ar){return ar.reduce((Jr,Gn)=>({left:Jr,...Gn}),ut)},Wn=function(ut,ar,Jr){return{type:ar==="+"?"addition":"subtraction",right:Jr}},di="$((",aa=ca("$((",!1),Bo="))",us=ca("))",!1),Ql=function(ut){return ut},LA="$(",pf=ca("$(",!1),ef=function(ut){return ut},ip="${",_d=ca("${",!1),j1=":-",pw=ca(":-",!1),YA=function(ut,ar){return{name:ut,defaultValue:ar}},Ac=":-}",Nm=ca(":-}",!1),HS=function(ut){return{name:ut,defaultValue:[]}},jd=":+",dh=ca(":+",!1),Hp=function(ut,ar){return{name:ut,alternativeValue:ar}},uC=":+}",nE=ca(":+}",!1),J_=function(ut){return{name:ut,alternativeValue:[]}},q0=function(ut){return{name:ut}},XE="$",TC=ca("$",!1),t_=function(ut){return t.isGlobPattern(ut)},cp=function(ut){return ut},Mm=/^[a-zA-Z0-9_]/,fb=Bl([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),pe=function(){return $n()},lm=/^[$@*?#a-zA-Z0-9_\-]/,Kf=Bl(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),CI=/^[()}<>$|&; \t"']/,_I=Bl(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),H2=/^[<>&; \t"']/,iE=Bl(["<",">","&",";"," "," ",'"',"'"],!1,!1),se=/^[ \t]/,O=Bl([" "," "],!1,!1),K=0,we=0,gt=[{line:1,column:1}],sr=0,Yr=[],Lr=0,fi;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function $n(){return e.substring(we,K)}function ra(){return Ib(we,K)}function kc(ut,ar){throw ar=ar!==void 0?ar:Ib(we,K),z1([lI(ut)],e.substring(we,K),ar)}function Nl(ut,ar){throw ar=ar!==void 0?ar:Ib(we,K),wd(ut,ar)}function ca(ut,ar){return{type:"literal",text:ut,ignoreCase:ar}}function Bl(ut,ar,Jr){return{type:"class",parts:ut,inverted:ar,ignoreCase:Jr}}function $g(){return{type:"any"}}function SA(){return{type:"end"}}function lI(ut){return{type:"other",description:ut}}function lp(ut){var ar=gt[ut],Jr;if(ar)return ar;for(Jr=ut-1;!gt[Jr];)Jr--;for(ar=gt[Jr],ar={line:ar.line,column:ar.column};Jrsr&&(sr=K,Yr=[]),Yr.push(ut))}function wd(ut,ar){return new Cfe(ut,null,null,ar)}function z1(ut,ar,Jr){return new Cfe(Cfe.buildMessage(ut,ar),ut,ar,Jr)}function T_(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=RC(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=o(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function RC(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=Fg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=YS(),Gn!==r?(Ts=Hm(),Ts===r&&(Ts=null),Ts!==r?(we=ut,ar=l(ar,Gn,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;if(ut===r)if(ut=K,ar=Fg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=YS(),Gn===r&&(Gn=null),Gn!==r?(we=ut,ar=A(ar,Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;return ut}function Hm(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=RC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=f(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;return ut}function YS(){var ut;return e.charCodeAt(K)===59?(ut=I,K++):(ut=r,Lr===0&&Na(C)),ut===r&&(e.charCodeAt(K)===38?(ut=b,K++):(ut=r,Lr===0&&Na(E))),ut}function Fg(){var ut,ar,Jr;return ut=K,ar=NC(),ar!==r?(Jr=hb(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=N(ar,Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function hb(){var ut,ar,Jr,Gn,Ts,Qo,vg;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=gC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=Fg(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=B(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;return ut}function gC(){var ut;return e.substr(K,2)===F?(ut=F,K+=2):(ut=r,Lr===0&&Na(Q)),ut===r&&(e.substr(K,2)===X?(ut=X,K+=2):(ut=r,Lr===0&&Na(ae))),ut}function NC(){var ut,ar,Jr;return ut=K,ar=kC(),ar!==r?(Jr=Y2(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=ne(ar,Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function Y2(){var ut,ar,Jr,Gn,Ts,Qo,vg;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=U_(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=NC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=ce(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;return ut}function U_(){var ut;return e.substr(K,2)===fe?(ut=fe,K+=2):(ut=r,Lr===0&&Na(ue)),ut===r&&(e.charCodeAt(K)===124?(ut=de,K++):(ut=r,Lr===0&&Na(be))),ut}function DC(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,ar=By(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r)if(Gn=Pf(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(we=ut,ar=k(ar,Gn),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;else K=ut,ut=r;if(ut===r)if(ut=K,ar=By(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=et(ar),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;return ut}function kC(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng,Rf,uI,Th;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===40?(Jr=ct,K++):(Jr=r,Lr===0&&Na(Me)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=RC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();if(Qo!==r)if(e.charCodeAt(K)===41?(vg=je,K++):(vg=r,Lr===0&&Na(St)),vg!==r){for(Ng=[],Rf=xc();Rf!==r;)Ng.push(Rf),Rf=xc();if(Ng!==r){for(Rf=[],uI=vA();uI!==r;)Rf.push(uI),uI=vA();if(Rf!==r){for(uI=[],Th=xc();Th!==r;)uI.push(Th),Th=xc();uI!==r?(we=ut,ar=At(Ts,Rf),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===123?(Jr=Yt,K++):(Jr=r,Lr===0&&Na(Tr)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=RC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();if(Qo!==r)if(e.charCodeAt(K)===125?(vg=Nr,K++):(vg=r,Lr===0&&Na(er)),vg!==r){for(Ng=[],Rf=xc();Rf!==r;)Ng.push(Rf),Rf=xc();if(Ng!==r){for(Rf=[],uI=vA();uI!==r;)Rf.push(uI),uI=vA();if(Rf!==r){for(uI=[],Th=xc();Th!==r;)uI.push(Th),Th=xc();uI!==r?(we=ut,ar=vt(Ts,Rf),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){for(Jr=[],Gn=DC();Gn!==r;)Jr.push(Gn),Gn=DC();if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r){if(Ts=[],Qo=ph(),Qo!==r)for(;Qo!==r;)Ts.push(Qo),Qo=ph();else Ts=r;if(Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=xt(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=DC(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=DC();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=Zr(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}}}return ut}function qI(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=Mc(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=Mc();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=qt(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r;return ut}function ph(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r?(Jr=vA(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();ar!==r?(Jr=Mc(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}return ut}function vA(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(lr.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(cr)),Jr===r&&(Jr=null),Jr!==r?(Gn=Td(),Gn!==r?(Ts=Mc(),Ts!==r?(we=ut,ar=Ar(Jr,Gn,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function Td(){var ut;return e.substr(K,2)===qr?(ut=qr,K+=2):(ut=r,Lr===0&&Na(_n)),ut===r&&(e.substr(K,2)===ke?(ut=ke,K+=2):(ut=r,Lr===0&&Na(jt)),ut===r&&(e.charCodeAt(K)===62?(ut=Fn,K++):(ut=r,Lr===0&&Na(Nn)),ut===r&&(e.substr(K,3)===Hi?(ut=Hi,K+=3):(ut=r,Lr===0&&Na(po)),ut===r&&(e.substr(K,2)===Vr?(ut=Vr,K+=2):(ut=r,Lr===0&&Na(xi)),ut===r&&(e.charCodeAt(K)===60?(ut=io,K++):(ut=r,Lr===0&&Na(ga))))))),ut}function Mc(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=Pf(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function Pf(){var ut,ar,Jr;if(ut=K,ar=[],Jr=sE(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=sE();else ar=r;return ar!==r&&(we=ut,ar=Ya(ar)),ut=ar,ut}function sE(){var ut,ar;return ut=K,ar=eA(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=QS(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=XS(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=um(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar))),ut}function eA(){var ut,ar,Jr,Gn;return ut=K,e.substr(K,2)===cl?(ar=cl,K+=2):(ar=r,Lr===0&&Na(Sc)),ar!==r?(Jr=Kl(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Wr)),Gn!==r?(we=ut,ar=Ft(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function QS(){var ut,ar,Jr,Gn;return ut=K,e.charCodeAt(K)===39?(ar=Hr,K++):(ar=r,Lr===0&&Na(Wr)),ar!==r?(Jr=na(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Wr)),Gn!==r?(we=ut,ar=Ft(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function XS(){var ut,ar,Jr,Gn;if(ut=K,e.substr(K,2)===zr?(ar=zr,K+=2):(ar=r,Lr===0&&Na(Rn)),ar!==r&&(we=ut,ar=Or()),ut=ar,ut===r)if(ut=K,e.charCodeAt(K)===34?(ar=Qi,K++):(ar=r,Lr===0&&Na(ps)),ar!==r){for(Jr=[],Gn=gm();Gn!==r;)Jr.push(Gn),Gn=gm();Jr!==r?(e.charCodeAt(K)===34?(Gn=Qi,K++):(Gn=r,Lr===0&&Na(ps)),Gn!==r?(we=ut,ar=yo(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;return ut}function um(){var ut,ar,Jr;if(ut=K,ar=[],Jr=cs(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=cs();else ar=r;return ar!==r&&(we=ut,ar=yo(ar)),ut=ar,ut}function gm(){var ut,ar;return ut=K,ar=od(),ar!==r&&(we=ut,ar=bo(ar)),ut=ar,ut===r&&(ut=K,ar=UE(),ar!==r&&(we=ut,ar=Qa(ar)),ut=ar,ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=gc(ar)),ut=ar,ut===r&&(ut=K,ar=ko(),ar!==r&&(we=ut,ar=Cg(ar)),ut=ar))),ut}function cs(){var ut,ar;return ut=K,ar=od(),ar!==r&&(we=ut,ar=Nc(ar)),ut=ar,ut===r&&(ut=K,ar=UE(),ar!==r&&(we=ut,ar=iA(ar)),ut=ar,ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=ma(ar)),ut=ar,ut===r&&(ut=K,ar=Yp(),ar!==r&&(we=ut,ar=vu(ar)),ut=ar,ut===r&&(ut=K,ar=JE(),ar!==r&&(we=ut,ar=Cg(ar)),ut=ar)))),ut}function na(){var ut,ar,Jr;for(ut=K,ar=[],li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));Jr!==r;)ar.push(Jr),li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function ko(){var ut,ar,Jr;if(ut=K,ar=[],Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac)));else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function ki(){var ut,ar,Jr;return ut=K,e.substr(K,2)===Yl?(ar=Yl,K+=2):(ar=r,Lr===0&&Na(Wc)),ar!==r&&(we=ut,ar=Sg()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Da.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(pu)),Jr!==r?(we=ut,ar=_g(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)),ut}function Kl(){var ut,ar,Jr;for(ut=K,ar=[],Jr=fd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));Jr!==r;)ar.push(Jr),Jr=fd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function fd(){var ut,ar,Jr;return ut=K,e.substr(K,2)===mI?(ar=mI,K+=2):(ar=r,Lr===0&&Na(Qh)),ar!==r&&(we=ut,ar=Ri()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===Do?(ar=Do,K+=2):(ar=r,Lr===0&&Na(Wt)),ar!==r&&(we=ut,ar=Hu()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Ru.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Vs)),Jr!==r?(we=ut,ar=Ju(),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===Yn?(ar=Yn,K+=2):(ar=r,Lr===0&&Na(Ko)),ar!==r&&(we=ut,ar=Eg()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===OA?(ar=OA,K+=2):(ar=r,Lr===0&&Na(GA)),ar!==r&&(we=ut,ar=$i()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===dl?(ar=dl,K+=2):(ar=r,Lr===0&&Na(Uf)),ar!==r&&(we=ut,ar=Kd()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===oA?(ar=oA,K+=2):(ar=r,Lr===0&&Na(oo)),ar!==r&&(we=ut,ar=Ki()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===cc?(ar=cc,K+=2):(ar=r,Lr===0&&Na(Xs)),ar!==r&&(we=ut,ar=ws()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Gs.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ma)),Jr!==r?(we=ut,ar=_g(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=jf()))))))))),ut}function jf(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng,Rf,uI,Th,oE;return ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Jr=Ld(),Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===As?(ar=As,K+=2):(ar=r,Lr===0&&Na(Tf)),ar!==r?(Jr=K,Gn=K,Ts=Ld(),Ts!==r?(Qo=AC(),Qo!==r?(Ts=[Ts,Qo],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn===r&&(Gn=Ld()),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===cm?(ar=cm,K+=2):(ar=r,Lr===0&&Na(Fl)),ar!==r?(Jr=K,Gn=K,Ts=AC(),Ts!==r?(Qo=AC(),Qo!==r?(vg=AC(),vg!==r?(Ng=AC(),Ng!==r?(Ts=[Ts,Qo,vg,Ng],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===rc?(ar=rc,K+=2):(ar=r,Lr===0&&Na(sd)),ar!==r?(Jr=K,Gn=K,Ts=AC(),Ts!==r?(Qo=AC(),Qo!==r?(vg=AC(),vg!==r?(Ng=AC(),Ng!==r?(Rf=AC(),Rf!==r?(uI=AC(),uI!==r?(Th=AC(),Th!==r?(oE=AC(),oE!==r?(Ts=[Ts,Qo,vg,Ng,Rf,uI,Th,oE],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Om(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)))),ut}function Ld(){var ut;return il.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(FA)),ut}function AC(){var ut;return ZA.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(El)),ut}function JE(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=[],Jr=K,e.charCodeAt(K)===92?(Gn=Ul,K++):(Gn=r,Lr===0&&Na(Xu)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Mp?(Gn=Mp,K+=2):(Gn=r,Lr===0&&Na(MA)),Gn!==r&&(we=Jr,Gn=Er()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=fw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,e.charCodeAt(K)===92?(Gn=Ul,K++):(Gn=r,Lr===0&&Na(Xu)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Mp?(Gn=Mp,K+=2):(Gn=r,Lr===0&&Na(MA)),Gn!==r&&(we=Jr,Gn=Er()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=fw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r)));else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function Ym(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(yn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;if(Jr!==r)if(e.charCodeAt(K)===46?(Gn=Fs,K++):(Gn=r,Lr===0&&Na(Wa)),Gn!==r){if(Ts=[],lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr)),Qo!==r)for(;Qo!==r;)Ts.push(Qo),lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr));else Ts=r;Ts!==r?(we=ut,ar=Ca(ar,Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;if(ut===r){if(ut=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(yn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;Jr!==r?(we=ut,ar=ld(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;if(ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=Rp(ar)),ut=ar,ut===r&&(ut=K,ar=$0(),ar!==r&&(we=ut,ar=np(ar)),ut=ar,ut===r)))if(ut=K,e.charCodeAt(K)===40?(ar=ct,K++):(ar=r,Lr===0&&Na(Me)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=K_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.charCodeAt(K)===41?(Qo=je,K++):(Qo=r,Lr===0&&Na(St)),Qo!==r?(we=ut,ar=HA(Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r}return ut}function vy(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng;if(ut=K,ar=Ym(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=df,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=so,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=Ym(),Ng!==r?(we=Gn,Ts=Ml(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=df,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=so,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=Ym(),Ng!==r?(we=Gn,Ts=Ml(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=ut,ar=Dr(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;return ut}function K_(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng;if(ut=K,ar=vy(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(yn))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=vy(),Ng!==r?(we=Gn,Ts=Wn(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(yn))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=vy(),Ng!==r?(we=Gn,Ts=Wn(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=ut,ar=Dr(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;return ut}function od(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,e.substr(K,3)===di?(ar=di,K+=3):(ar=r,Lr===0&&Na(aa)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=K_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.substr(K,2)===Bo?(Qo=Bo,K+=2):(Qo=r,Lr===0&&Na(us)),Qo!==r?(we=ut,ar=Ql(Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;return ut}function UE(){var ut,ar,Jr,Gn;return ut=K,e.substr(K,2)===LA?(ar=LA,K+=2):(ar=r,Lr===0&&Na(pf)),ar!==r?(Jr=RC(),Jr!==r?(e.charCodeAt(K)===41?(Gn=je,K++):(Gn=r,Lr===0&&Na(St)),Gn!==r?(we=ut,ar=ef(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function KE(){var ut,ar,Jr,Gn,Ts,Qo;return ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,2)===j1?(Gn=j1,K+=2):(Gn=r,Lr===0&&Na(pw)),Gn!==r?(Ts=qI(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Nr,K++):(Qo=r,Lr===0&&Na(er)),Qo!==r?(we=ut,ar=YA(Jr,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,3)===Ac?(Gn=Ac,K+=3):(Gn=r,Lr===0&&Na(Nm)),Gn!==r?(we=ut,ar=HS(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,2)===jd?(Gn=jd,K+=2):(Gn=r,Lr===0&&Na(dh)),Gn!==r?(Ts=qI(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Nr,K++):(Qo=r,Lr===0&&Na(er)),Qo!==r?(we=ut,ar=Hp(Jr,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,3)===uC?(Gn=uC,K+=3):(Gn=r,Lr===0&&Na(nE)),Gn!==r?(we=ut,ar=J_(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.charCodeAt(K)===125?(Gn=Nr,K++):(Gn=r,Lr===0&&Na(er)),Gn!==r?(we=ut,ar=q0(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.charCodeAt(K)===36?(ar=XE,K++):(ar=r,Lr===0&&Na(TC)),ar!==r?(Jr=$0(),Jr!==r?(we=ut,ar=q0(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)))))),ut}function Yp(){var ut,ar,Jr;return ut=K,ar=JS(),ar!==r?(we=K,Jr=t_(ar),Jr?Jr=void 0:Jr=r,Jr!==r?(we=ut,ar=cp(ar),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function JS(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=[],Jr=K,Gn=K,Lr++,Ts=Q2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,Gn=K,Lr++,Ts=Q2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r);else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function By(){var ut,ar,Jr;if(ut=K,ar=[],Mm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fb)),Jr!==r)for(;Jr!==r;)ar.push(Jr),Mm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fb));else ar=r;return ar!==r&&(we=ut,ar=pe()),ut=ar,ut}function $0(){var ut,ar,Jr;if(ut=K,ar=[],lm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Kf)),Jr!==r)for(;Jr!==r;)ar.push(Jr),lm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Kf));else ar=r;return ar!==r&&(we=ut,ar=pe()),ut=ar,ut}function fw(){var ut;return CI.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(_I)),ut}function Q2(){var ut;return H2.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(iE)),ut}function xc(){var ut,ar;if(ut=[],se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(O)),ar!==r)for(;ar!==r;)ut.push(ar),se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(O));else ut=r;return ut}if(fi=a(),fi!==r&&K===e.length)return fi;throw fi!==r&&K{"use strict";Object.defineProperty(XN,"__esModule",{value:!0});XN.parseShell=Fzs;XN.stringifyShellLine=_fe;XN.stringifyShell=_fe;XN.stringifyCommandLine=s6t;XN.stringifyCommandLineThen=e1n;XN.stringifyCommandChain=o6t;XN.stringifyCommandChainThen=t1n;XN.stringifyCommand=r1n;XN.stringifyEnvSegment=i6t;XN.stringifyArgument=n1n;XN.stringifyRedirectArgument=Lct;XN.stringifyValueArgument=_Se;XN.stringifyArgumentSegment=o1n;XN.stringifyArithmeticExpression=a6t;XN.stringifyShellLine=_fe;XN.stringifyShell=_fe;var Gzs=$En();function Fzs(e,t={isGlobPattern:()=>!1}){try{return(0,Gzs.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function _fe(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:n},a)=>`${s6t(r)}${n===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function s6t(e){return`${o6t(e.chain)}${e.then?` ${e1n(e.then)}`:""}`}function e1n(e){return`${e.type} ${s6t(e.line)}`}function o6t(e){return`${r1n(e)}${e.then?` ${t1n(e.then)}`:""}`}function t1n(e){return`${e.type} ${o6t(e.chain)}`}function r1n(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>i6t(t)).join(" ")} `:""}${e.args.map(t=>n1n(t)).join(" ")}`;case"subshell":return`(${_fe(e.subshell)})${e.args.length>0?` ${e.args.map(t=>Lct(t)).join(" ")}`:""}`;case"group":return`{ ${_fe(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>Lct(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>i6t(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function i6t(e){return`${e.name}=${e.args[0]?_Se(e.args[0]):""}`}function n1n(e){switch(e.type){case"redirection":return Lct(e);case"argument":return _Se(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function Lct(e){return`${e.subtype} ${e.args.map(t=>_Se(t)).join(" ")}`}function _Se(e){return e.segments.map(t=>o1n(t)).join("")}var i1n=new Map([["\f","\\f"],[` -`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),Zzs=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(i1n,([e,t])=>[e,`"$'${t}'"`])]),s1n=e=>i1n.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,Lzs=e=>Zzs.get(e)??`"$'${s1n(e)}'"`;function o1n(e){let t=(n,a)=>a?`"${n}"`:n,r=n=>n===""?"''":n.match(/[()}<>$|&;"'\n\t ]/)?n.match(/['\t\p{C}]/u)?n.match(/'/)?`"${n.replace(/["$\t\p{C}]/u,Lzs)}"`:`$'${n.replace(/[\t\p{C}]/u,s1n)}'`:`'${n}'`:n;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${_fe(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(n=>_Se(n)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(n=>_Se(n)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${a6t(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function a6t(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,n=a=>r(a6t(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${n(e.left)} ${t(e.type)} ${n(e.right)}`}}});var l1n=H((Y3l,c1n)=>{"use strict";function Vzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function yfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,yfe)}Vzs(yfe,Error);yfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;bfe&&(fe=ae,ue=[]),ue.push(cr))}function er(cr,Ar){return new yfe(cr,null,null,Ar)}function vt(cr,Ar,qr){return new yfe(yfe.buildMessage(cr,Ar),cr,Ar,qr)}function xt(){var cr,Ar,qr,_n;return cr=ae,Ar=Zr(),Ar!==r?(e.charCodeAt(ae)===47?(qr=o,ae++):(qr=r,de===0&&Nr(l)),qr!==r?(_n=Zr(),_n!==r?(ne=cr,Ar=A(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Zr(),Ar!==r&&(ne=cr,Ar=f(Ar)),cr=Ar),cr}function Zr(){var cr,Ar,qr,_n;return cr=ae,Ar=qt(),Ar!==r?(e.charCodeAt(ae)===64?(qr=I,ae++):(qr=r,de===0&&Nr(C)),qr!==r?(_n=lr(),_n!==r?(ne=cr,Ar=b(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=qt(),Ar!==r&&(ne=cr,Ar=E(Ar)),cr=Ar),cr}function qt(){var cr,Ar,qr,_n,ke;return cr=ae,e.charCodeAt(ae)===64?(Ar=I,ae++):(Ar=r,de===0&&Nr(C)),Ar!==r?(qr=Xt(),qr!==r?(e.charCodeAt(ae)===47?(_n=o,ae++):(_n=r,de===0&&Nr(l)),_n!==r?(ke=Xt(),ke!==r?(ne=cr,Ar=N(),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Xt(),Ar!==r&&(ne=cr,Ar=N()),cr=Ar),cr}function Xt(){var cr,Ar,qr;if(cr=ae,Ar=[],B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(F)),qr!==r)for(;qr!==r;)Ar.push(qr),B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(F));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}function lr(){var cr,Ar,qr;if(cr=ae,Ar=[],Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(X)),qr!==r)for(;qr!==r;)Ar.push(qr),Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(X));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}if(be=a(),be!==r&&ae===e.length)return be;throw be!==r&&ae{"use strict";Object.defineProperty(Vct,"__esModule",{value:!0});Vct.parseResolution=Ozs;Vct.stringifyResolution=Mzs;var Wzs=l1n();function Ozs(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,Wzs.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Mzs(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var Efe=H((X3l,bfe)=>{"use strict";function g1n(e){return typeof e>"u"||e===null}function Hzs(e){return typeof e=="object"&&e!==null}function Yzs(e){return Array.isArray(e)?e:g1n(e)?[]:[e]}function Qzs(e,t){var r,n,a,o;if(t)for(o=Object.keys(t),r=0,n=o.length;r{"use strict";function zOe(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}zOe.prototype=Object.create(Error.prototype);zOe.prototype.constructor=zOe;zOe.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};A1n.exports=zOe});var f1n=H((U3l,p1n)=>{"use strict";var d1n=Efe();function c6t(e,t,r,n,a){this.name=e,this.buffer=t,this.position=r,this.line=n,this.column=a}c6t.prototype.getSnippet=function(t,r){var n,a,o,l,A;if(!this.buffer)return null;for(t=t||4,r=r||75,n="",a=this.position;a>0&&`\0\r +`},dl="\\r",Uf=ca("\\r",!1),Kd=function(){return"\r"},oA="\\t",oo=ca("\\t",!1),Ki=function(){return" "},cc="\\v",Xs=ca("\\v",!1),ws=function(){return"\v"},Gs=/^[\\'"?]/,Ma=Bl(["\\","'",'"',"?"],!1,!1),Dc=function(ut){return String.fromCharCode(parseInt(ut,16))},As="\\x",Tf=ca("\\x",!1),cm="\\u",Fl=ca("\\u",!1),rc="\\U",sd=ca("\\U",!1),Om=function(ut){return String.fromCodePoint(parseInt(ut,16))},il=/^[0-7]/,FA=Bl([["0","7"]],!1,!1),ZA=/^[0-9a-fA-f]/,El=Bl([["0","9"],["a","f"],["A","f"]],!1,!1),yg=$g(),Mp="{}",MA=ca("{}",!1),Er=function(){return"{}"},Zt="-",bn=ca("-",!1),ls="+",oa=ca("+",!1),Fs=".",Wa=ca(".",!1),Ca=function(ut,ar,Jr){return{type:"number",value:(ut==="-"?-1:1)*parseFloat(ar.join("")+"."+Jr.join(""))}},ld=function(ut,ar){return{type:"number",value:(ut==="-"?-1:1)*parseInt(ar.join(""))}},Rp=function(ut){return{type:"variable",...ut}},np=function(ut){return{type:"variable",name:ut}},HA=function(ut){return ut},df="*",Zs=ca("*",!1),so="/",Ea=ca("/",!1),Ml=function(ut,ar,Jr){return{type:ar==="*"?"multiplication":"division",right:Jr}},Dr=function(ut,ar){return ar.reduce((Jr,Gn)=>({left:Jr,...Gn}),ut)},Wn=function(ut,ar,Jr){return{type:ar==="+"?"addition":"subtraction",right:Jr}},di="$((",aa=ca("$((",!1),Bo="))",us=ca("))",!1),Ql=function(ut){return ut},LA="$(",pf=ca("$(",!1),ef=function(ut){return ut},ip="${",_d=ca("${",!1),j1=":-",pw=ca(":-",!1),YA=function(ut,ar){return{name:ut,defaultValue:ar}},Ac=":-}",Nm=ca(":-}",!1),HS=function(ut){return{name:ut,defaultValue:[]}},jd=":+",dh=ca(":+",!1),Hp=function(ut,ar){return{name:ut,alternativeValue:ar}},uC=":+}",nE=ca(":+}",!1),J_=function(ut){return{name:ut,alternativeValue:[]}},q0=function(ut){return{name:ut}},XE="$",TC=ca("$",!1),t_=function(ut){return t.isGlobPattern(ut)},cp=function(ut){return ut},Mm=/^[a-zA-Z0-9_]/,fb=Bl([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),pe=function(){return $n()},lm=/^[$@*?#a-zA-Z0-9_\-]/,Kf=Bl(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),CI=/^[()}<>$|&; \t"']/,_I=Bl(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),H2=/^[<>&; \t"']/,iE=Bl(["<",">","&",";"," "," ",'"',"'"],!1,!1),se=/^[ \t]/,O=Bl([" "," "],!1,!1),K=0,we=0,gt=[{line:1,column:1}],sr=0,Yr=[],Lr=0,fi;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function $n(){return e.substring(we,K)}function ra(){return Ib(we,K)}function kc(ut,ar){throw ar=ar!==void 0?ar:Ib(we,K),z1([lI(ut)],e.substring(we,K),ar)}function Nl(ut,ar){throw ar=ar!==void 0?ar:Ib(we,K),wd(ut,ar)}function ca(ut,ar){return{type:"literal",text:ut,ignoreCase:ar}}function Bl(ut,ar,Jr){return{type:"class",parts:ut,inverted:ar,ignoreCase:Jr}}function $g(){return{type:"any"}}function SA(){return{type:"end"}}function lI(ut){return{type:"other",description:ut}}function lp(ut){var ar=gt[ut],Jr;if(ar)return ar;for(Jr=ut-1;!gt[Jr];)Jr--;for(ar=gt[Jr],ar={line:ar.line,column:ar.column};Jrsr&&(sr=K,Yr=[]),Yr.push(ut))}function wd(ut,ar){return new _fe(ut,null,null,ar)}function z1(ut,ar,Jr){return new _fe(_fe.buildMessage(ut,ar),ut,ar,Jr)}function T_(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=RC(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=o(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function RC(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=Fg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=YS(),Gn!==r?(Ts=Hm(),Ts===r&&(Ts=null),Ts!==r?(we=ut,ar=l(ar,Gn,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;if(ut===r)if(ut=K,ar=Fg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=YS(),Gn===r&&(Gn=null),Gn!==r?(we=ut,ar=A(ar,Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;return ut}function Hm(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=RC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=f(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;return ut}function YS(){var ut;return e.charCodeAt(K)===59?(ut=I,K++):(ut=r,Lr===0&&Na(C)),ut===r&&(e.charCodeAt(K)===38?(ut=b,K++):(ut=r,Lr===0&&Na(E))),ut}function Fg(){var ut,ar,Jr;return ut=K,ar=NC(),ar!==r?(Jr=hb(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=N(ar,Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function hb(){var ut,ar,Jr,Gn,Ts,Qo,vg;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=gC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=Fg(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=B(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;return ut}function gC(){var ut;return e.substr(K,2)===F?(ut=F,K+=2):(ut=r,Lr===0&&Na(Q)),ut===r&&(e.substr(K,2)===X?(ut=X,K+=2):(ut=r,Lr===0&&Na(ae))),ut}function NC(){var ut,ar,Jr;return ut=K,ar=kC(),ar!==r?(Jr=Y2(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=ne(ar,Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function Y2(){var ut,ar,Jr,Gn,Ts,Qo,vg;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=U_(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=NC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=ce(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;return ut}function U_(){var ut;return e.substr(K,2)===fe?(ut=fe,K+=2):(ut=r,Lr===0&&Na(ue)),ut===r&&(e.charCodeAt(K)===124?(ut=de,K++):(ut=r,Lr===0&&Na(be))),ut}function DC(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,ar=By(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r)if(Gn=Pf(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(we=ut,ar=k(ar,Gn),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;else K=ut,ut=r;if(ut===r)if(ut=K,ar=By(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=et(ar),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;return ut}function kC(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng,Rf,uI,Th;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===40?(Jr=ct,K++):(Jr=r,Lr===0&&Na(Me)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=RC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();if(Qo!==r)if(e.charCodeAt(K)===41?(vg=je,K++):(vg=r,Lr===0&&Na(St)),vg!==r){for(Ng=[],Rf=xc();Rf!==r;)Ng.push(Rf),Rf=xc();if(Ng!==r){for(Rf=[],uI=vA();uI!==r;)Rf.push(uI),uI=vA();if(Rf!==r){for(uI=[],Th=xc();Th!==r;)uI.push(Th),Th=xc();uI!==r?(we=ut,ar=At(Ts,Rf),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===123?(Jr=Yt,K++):(Jr=r,Lr===0&&Na(Tr)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=RC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();if(Qo!==r)if(e.charCodeAt(K)===125?(vg=Nr,K++):(vg=r,Lr===0&&Na(er)),vg!==r){for(Ng=[],Rf=xc();Rf!==r;)Ng.push(Rf),Rf=xc();if(Ng!==r){for(Rf=[],uI=vA();uI!==r;)Rf.push(uI),uI=vA();if(Rf!==r){for(uI=[],Th=xc();Th!==r;)uI.push(Th),Th=xc();uI!==r?(we=ut,ar=vt(Ts,Rf),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){for(Jr=[],Gn=DC();Gn!==r;)Jr.push(Gn),Gn=DC();if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r){if(Ts=[],Qo=ph(),Qo!==r)for(;Qo!==r;)Ts.push(Qo),Qo=ph();else Ts=r;if(Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=xt(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=DC(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=DC();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=Zr(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}}}return ut}function qI(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=Mc(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=Mc();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=qt(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r;return ut}function ph(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r?(Jr=vA(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();ar!==r?(Jr=Mc(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}return ut}function vA(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(lr.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(cr)),Jr===r&&(Jr=null),Jr!==r?(Gn=Td(),Gn!==r?(Ts=Mc(),Ts!==r?(we=ut,ar=Ar(Jr,Gn,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function Td(){var ut;return e.substr(K,2)===qr?(ut=qr,K+=2):(ut=r,Lr===0&&Na(_n)),ut===r&&(e.substr(K,2)===ke?(ut=ke,K+=2):(ut=r,Lr===0&&Na(jt)),ut===r&&(e.charCodeAt(K)===62?(ut=Fn,K++):(ut=r,Lr===0&&Na(Nn)),ut===r&&(e.substr(K,3)===Hi?(ut=Hi,K+=3):(ut=r,Lr===0&&Na(po)),ut===r&&(e.substr(K,2)===Vr?(ut=Vr,K+=2):(ut=r,Lr===0&&Na(xi)),ut===r&&(e.charCodeAt(K)===60?(ut=io,K++):(ut=r,Lr===0&&Na(ga))))))),ut}function Mc(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=Pf(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function Pf(){var ut,ar,Jr;if(ut=K,ar=[],Jr=sE(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=sE();else ar=r;return ar!==r&&(we=ut,ar=Ya(ar)),ut=ar,ut}function sE(){var ut,ar;return ut=K,ar=eA(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=QS(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=XS(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=um(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar))),ut}function eA(){var ut,ar,Jr,Gn;return ut=K,e.substr(K,2)===cl?(ar=cl,K+=2):(ar=r,Lr===0&&Na(Sc)),ar!==r?(Jr=Kl(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Wr)),Gn!==r?(we=ut,ar=Ft(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function QS(){var ut,ar,Jr,Gn;return ut=K,e.charCodeAt(K)===39?(ar=Hr,K++):(ar=r,Lr===0&&Na(Wr)),ar!==r?(Jr=na(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Wr)),Gn!==r?(we=ut,ar=Ft(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function XS(){var ut,ar,Jr,Gn;if(ut=K,e.substr(K,2)===zr?(ar=zr,K+=2):(ar=r,Lr===0&&Na(Rn)),ar!==r&&(we=ut,ar=Or()),ut=ar,ut===r)if(ut=K,e.charCodeAt(K)===34?(ar=Qi,K++):(ar=r,Lr===0&&Na(ps)),ar!==r){for(Jr=[],Gn=gm();Gn!==r;)Jr.push(Gn),Gn=gm();Jr!==r?(e.charCodeAt(K)===34?(Gn=Qi,K++):(Gn=r,Lr===0&&Na(ps)),Gn!==r?(we=ut,ar=yo(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;return ut}function um(){var ut,ar,Jr;if(ut=K,ar=[],Jr=cs(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=cs();else ar=r;return ar!==r&&(we=ut,ar=yo(ar)),ut=ar,ut}function gm(){var ut,ar;return ut=K,ar=od(),ar!==r&&(we=ut,ar=bo(ar)),ut=ar,ut===r&&(ut=K,ar=UE(),ar!==r&&(we=ut,ar=Qa(ar)),ut=ar,ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=gc(ar)),ut=ar,ut===r&&(ut=K,ar=ko(),ar!==r&&(we=ut,ar=Cg(ar)),ut=ar))),ut}function cs(){var ut,ar;return ut=K,ar=od(),ar!==r&&(we=ut,ar=Nc(ar)),ut=ar,ut===r&&(ut=K,ar=UE(),ar!==r&&(we=ut,ar=iA(ar)),ut=ar,ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=ma(ar)),ut=ar,ut===r&&(ut=K,ar=Yp(),ar!==r&&(we=ut,ar=vu(ar)),ut=ar,ut===r&&(ut=K,ar=JE(),ar!==r&&(we=ut,ar=Cg(ar)),ut=ar)))),ut}function na(){var ut,ar,Jr;for(ut=K,ar=[],li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));Jr!==r;)ar.push(Jr),li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function ko(){var ut,ar,Jr;if(ut=K,ar=[],Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac)));else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function ki(){var ut,ar,Jr;return ut=K,e.substr(K,2)===Yl?(ar=Yl,K+=2):(ar=r,Lr===0&&Na(Wc)),ar!==r&&(we=ut,ar=Sg()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Da.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(pu)),Jr!==r?(we=ut,ar=_g(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)),ut}function Kl(){var ut,ar,Jr;for(ut=K,ar=[],Jr=fd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));Jr!==r;)ar.push(Jr),Jr=fd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function fd(){var ut,ar,Jr;return ut=K,e.substr(K,2)===mI?(ar=mI,K+=2):(ar=r,Lr===0&&Na(Qh)),ar!==r&&(we=ut,ar=Ri()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===Do?(ar=Do,K+=2):(ar=r,Lr===0&&Na(Wt)),ar!==r&&(we=ut,ar=Hu()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Ru.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Vs)),Jr!==r?(we=ut,ar=Ju(),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===Yn?(ar=Yn,K+=2):(ar=r,Lr===0&&Na(Ko)),ar!==r&&(we=ut,ar=Eg()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===OA?(ar=OA,K+=2):(ar=r,Lr===0&&Na(GA)),ar!==r&&(we=ut,ar=$i()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===dl?(ar=dl,K+=2):(ar=r,Lr===0&&Na(Uf)),ar!==r&&(we=ut,ar=Kd()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===oA?(ar=oA,K+=2):(ar=r,Lr===0&&Na(oo)),ar!==r&&(we=ut,ar=Ki()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===cc?(ar=cc,K+=2):(ar=r,Lr===0&&Na(Xs)),ar!==r&&(we=ut,ar=ws()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Gs.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ma)),Jr!==r?(we=ut,ar=_g(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=jf()))))))))),ut}function jf(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng,Rf,uI,Th,oE;return ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Jr=Ld(),Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===As?(ar=As,K+=2):(ar=r,Lr===0&&Na(Tf)),ar!==r?(Jr=K,Gn=K,Ts=Ld(),Ts!==r?(Qo=AC(),Qo!==r?(Ts=[Ts,Qo],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn===r&&(Gn=Ld()),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===cm?(ar=cm,K+=2):(ar=r,Lr===0&&Na(Fl)),ar!==r?(Jr=K,Gn=K,Ts=AC(),Ts!==r?(Qo=AC(),Qo!==r?(vg=AC(),vg!==r?(Ng=AC(),Ng!==r?(Ts=[Ts,Qo,vg,Ng],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===rc?(ar=rc,K+=2):(ar=r,Lr===0&&Na(sd)),ar!==r?(Jr=K,Gn=K,Ts=AC(),Ts!==r?(Qo=AC(),Qo!==r?(vg=AC(),vg!==r?(Ng=AC(),Ng!==r?(Rf=AC(),Rf!==r?(uI=AC(),uI!==r?(Th=AC(),Th!==r?(oE=AC(),oE!==r?(Ts=[Ts,Qo,vg,Ng,Rf,uI,Th,oE],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Om(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)))),ut}function Ld(){var ut;return il.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(FA)),ut}function AC(){var ut;return ZA.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(El)),ut}function JE(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=[],Jr=K,e.charCodeAt(K)===92?(Gn=Ul,K++):(Gn=r,Lr===0&&Na(Xu)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Mp?(Gn=Mp,K+=2):(Gn=r,Lr===0&&Na(MA)),Gn!==r&&(we=Jr,Gn=Er()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=fw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,e.charCodeAt(K)===92?(Gn=Ul,K++):(Gn=r,Lr===0&&Na(Xu)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Mp?(Gn=Mp,K+=2):(Gn=r,Lr===0&&Na(MA)),Gn!==r&&(we=Jr,Gn=Er()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=fw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r)));else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function Ym(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(bn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;if(Jr!==r)if(e.charCodeAt(K)===46?(Gn=Fs,K++):(Gn=r,Lr===0&&Na(Wa)),Gn!==r){if(Ts=[],lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr)),Qo!==r)for(;Qo!==r;)Ts.push(Qo),lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr));else Ts=r;Ts!==r?(we=ut,ar=Ca(ar,Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;if(ut===r){if(ut=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(bn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;Jr!==r?(we=ut,ar=ld(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;if(ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=Rp(ar)),ut=ar,ut===r&&(ut=K,ar=$0(),ar!==r&&(we=ut,ar=np(ar)),ut=ar,ut===r)))if(ut=K,e.charCodeAt(K)===40?(ar=ct,K++):(ar=r,Lr===0&&Na(Me)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=K_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.charCodeAt(K)===41?(Qo=je,K++):(Qo=r,Lr===0&&Na(St)),Qo!==r?(we=ut,ar=HA(Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r}return ut}function vy(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng;if(ut=K,ar=Ym(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=df,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=so,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=Ym(),Ng!==r?(we=Gn,Ts=Ml(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=df,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=so,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=Ym(),Ng!==r?(we=Gn,Ts=Ml(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=ut,ar=Dr(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;return ut}function K_(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng;if(ut=K,ar=vy(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(bn))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=vy(),Ng!==r?(we=Gn,Ts=Wn(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(bn))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=vy(),Ng!==r?(we=Gn,Ts=Wn(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=ut,ar=Dr(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;return ut}function od(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,e.substr(K,3)===di?(ar=di,K+=3):(ar=r,Lr===0&&Na(aa)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=K_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.substr(K,2)===Bo?(Qo=Bo,K+=2):(Qo=r,Lr===0&&Na(us)),Qo!==r?(we=ut,ar=Ql(Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;return ut}function UE(){var ut,ar,Jr,Gn;return ut=K,e.substr(K,2)===LA?(ar=LA,K+=2):(ar=r,Lr===0&&Na(pf)),ar!==r?(Jr=RC(),Jr!==r?(e.charCodeAt(K)===41?(Gn=je,K++):(Gn=r,Lr===0&&Na(St)),Gn!==r?(we=ut,ar=ef(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function KE(){var ut,ar,Jr,Gn,Ts,Qo;return ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,2)===j1?(Gn=j1,K+=2):(Gn=r,Lr===0&&Na(pw)),Gn!==r?(Ts=qI(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Nr,K++):(Qo=r,Lr===0&&Na(er)),Qo!==r?(we=ut,ar=YA(Jr,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,3)===Ac?(Gn=Ac,K+=3):(Gn=r,Lr===0&&Na(Nm)),Gn!==r?(we=ut,ar=HS(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,2)===jd?(Gn=jd,K+=2):(Gn=r,Lr===0&&Na(dh)),Gn!==r?(Ts=qI(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Nr,K++):(Qo=r,Lr===0&&Na(er)),Qo!==r?(we=ut,ar=Hp(Jr,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,3)===uC?(Gn=uC,K+=3):(Gn=r,Lr===0&&Na(nE)),Gn!==r?(we=ut,ar=J_(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.charCodeAt(K)===125?(Gn=Nr,K++):(Gn=r,Lr===0&&Na(er)),Gn!==r?(we=ut,ar=q0(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.charCodeAt(K)===36?(ar=XE,K++):(ar=r,Lr===0&&Na(TC)),ar!==r?(Jr=$0(),Jr!==r?(we=ut,ar=q0(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)))))),ut}function Yp(){var ut,ar,Jr;return ut=K,ar=JS(),ar!==r?(we=K,Jr=t_(ar),Jr?Jr=void 0:Jr=r,Jr!==r?(we=ut,ar=cp(ar),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function JS(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=[],Jr=K,Gn=K,Lr++,Ts=Q2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,Gn=K,Lr++,Ts=Q2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r);else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function By(){var ut,ar,Jr;if(ut=K,ar=[],Mm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fb)),Jr!==r)for(;Jr!==r;)ar.push(Jr),Mm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fb));else ar=r;return ar!==r&&(we=ut,ar=pe()),ut=ar,ut}function $0(){var ut,ar,Jr;if(ut=K,ar=[],lm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Kf)),Jr!==r)for(;Jr!==r;)ar.push(Jr),lm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Kf));else ar=r;return ar!==r&&(we=ut,ar=pe()),ut=ar,ut}function fw(){var ut;return CI.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(_I)),ut}function Q2(){var ut;return H2.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(iE)),ut}function xc(){var ut,ar;if(ut=[],se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(O)),ar!==r)for(;ar!==r;)ut.push(ar),se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(O));else ut=r;return ut}if(fi=a(),fi!==r&&K===e.length)return fi;throw fi!==r&&K{"use strict";Object.defineProperty(XN,"__esModule",{value:!0});XN.parseShell=zzs;XN.stringifyShellLine=yfe;XN.stringifyShell=yfe;XN.stringifyCommandLine=l6t;XN.stringifyCommandLineThen=a1n;XN.stringifyCommandChain=u6t;XN.stringifyCommandChainThen=c1n;XN.stringifyCommand=l1n;XN.stringifyEnvSegment=c6t;XN.stringifyArgument=u1n;XN.stringifyRedirectArgument=Pct;XN.stringifyValueArgument=ySe;XN.stringifyArgumentSegment=d1n;XN.stringifyArithmeticExpression=g6t;XN.stringifyShellLine=yfe;XN.stringifyShell=yfe;var jzs=o1n();function zzs(e,t={isGlobPattern:()=>!1}){try{return(0,jzs.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function yfe(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:n},a)=>`${l6t(r)}${n===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function l6t(e){return`${u6t(e.chain)}${e.then?` ${a1n(e.then)}`:""}`}function a1n(e){return`${e.type} ${l6t(e.line)}`}function u6t(e){return`${l1n(e)}${e.then?` ${c1n(e.then)}`:""}`}function c1n(e){return`${e.type} ${u6t(e.chain)}`}function l1n(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>c6t(t)).join(" ")} `:""}${e.args.map(t=>u1n(t)).join(" ")}`;case"subshell":return`(${yfe(e.subshell)})${e.args.length>0?` ${e.args.map(t=>Pct(t)).join(" ")}`:""}`;case"group":return`{ ${yfe(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>Pct(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>c6t(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function c6t(e){return`${e.name}=${e.args[0]?ySe(e.args[0]):""}`}function u1n(e){switch(e.type){case"redirection":return Pct(e);case"argument":return ySe(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function Pct(e){return`${e.subtype} ${e.args.map(t=>ySe(t)).join(" ")}`}function ySe(e){return e.segments.map(t=>d1n(t)).join("")}var g1n=new Map([["\f","\\f"],[` +`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),qzs=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(g1n,([e,t])=>[e,`"$'${t}'"`])]),A1n=e=>g1n.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,$zs=e=>qzs.get(e)??`"$'${A1n(e)}'"`;function d1n(e){let t=(n,a)=>a?`"${n}"`:n,r=n=>n===""?"''":n.match(/[()}<>$|&;"'\n\t ]/)?n.match(/['\t\p{C}]/u)?n.match(/'/)?`"${n.replace(/["$\t\p{C}]/u,$zs)}"`:`$'${n.replace(/[\t\p{C}]/u,A1n)}'`:`'${n}'`:n;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${yfe(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(n=>ySe(n)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(n=>ySe(n)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${g6t(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function g6t(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,n=a=>r(g6t(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${n(e.left)} ${t(e.type)} ${n(e.right)}`}}});var I1n=H((Z5l,f1n)=>{"use strict";function eqs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function bfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,bfe)}eqs(bfe,Error);bfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;bfe&&(fe=ae,ue=[]),ue.push(cr))}function er(cr,Ar){return new bfe(cr,null,null,Ar)}function vt(cr,Ar,qr){return new bfe(bfe.buildMessage(cr,Ar),cr,Ar,qr)}function xt(){var cr,Ar,qr,_n;return cr=ae,Ar=Zr(),Ar!==r?(e.charCodeAt(ae)===47?(qr=o,ae++):(qr=r,de===0&&Nr(l)),qr!==r?(_n=Zr(),_n!==r?(ne=cr,Ar=A(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Zr(),Ar!==r&&(ne=cr,Ar=f(Ar)),cr=Ar),cr}function Zr(){var cr,Ar,qr,_n;return cr=ae,Ar=qt(),Ar!==r?(e.charCodeAt(ae)===64?(qr=I,ae++):(qr=r,de===0&&Nr(C)),qr!==r?(_n=lr(),_n!==r?(ne=cr,Ar=b(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=qt(),Ar!==r&&(ne=cr,Ar=E(Ar)),cr=Ar),cr}function qt(){var cr,Ar,qr,_n,ke;return cr=ae,e.charCodeAt(ae)===64?(Ar=I,ae++):(Ar=r,de===0&&Nr(C)),Ar!==r?(qr=Xt(),qr!==r?(e.charCodeAt(ae)===47?(_n=o,ae++):(_n=r,de===0&&Nr(l)),_n!==r?(ke=Xt(),ke!==r?(ne=cr,Ar=N(),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Xt(),Ar!==r&&(ne=cr,Ar=N()),cr=Ar),cr}function Xt(){var cr,Ar,qr;if(cr=ae,Ar=[],B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(F)),qr!==r)for(;qr!==r;)Ar.push(qr),B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(F));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}function lr(){var cr,Ar,qr;if(cr=ae,Ar=[],Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(X)),qr!==r)for(;qr!==r;)Ar.push(qr),Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(X));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}if(be=a(),be!==r&&ae===e.length)return be;throw be!==r&&ae{"use strict";Object.defineProperty(Wct,"__esModule",{value:!0});Wct.parseResolution=nqs;Wct.stringifyResolution=iqs;var rqs=I1n();function nqs(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,rqs.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function iqs(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var Sfe=H((V5l,Efe)=>{"use strict";function m1n(e){return typeof e>"u"||e===null}function sqs(e){return typeof e=="object"&&e!==null}function oqs(e){return Array.isArray(e)?e:m1n(e)?[]:[e]}function aqs(e,t){var r,n,a,o;if(t)for(o=Object.keys(t),r=0,n=o.length;r{"use strict";function $Oe(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}$Oe.prototype=Object.create(Error.prototype);$Oe.prototype.constructor=$Oe;$Oe.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};C1n.exports=$Oe});var b1n=H((W5l,y1n)=>{"use strict";var _1n=Sfe();function A6t(e,t,r,n,a){this.name=e,this.buffer=t,this.position=r,this.line=n,this.column=a}A6t.prototype.getSnippet=function(t,r){var n,a,o,l,A;if(!this.buffer)return null;for(t=t||4,r=r||75,n="",a=this.position;a>0&&`\0\r \x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){n=" ... ",a+=5;break}for(o="",l=this.position;lr/2-1){o=" ... ",l-=5;break}return A=this.buffer.slice(a,l),d1n.repeat(" ",t)+n+A+o+` -`+d1n.repeat(" ",t+this.position-a+n.length)+"^"};c6t.prototype.toString=function(t){var r,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(n+=`: -`+r)),n};p1n.exports=c6t});var ER=H((K3l,h1n)=>{"use strict";var I1n=ySe(),Uzs=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],Kzs=["scalar","sequence","mapping"];function jzs(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function zzs(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(Uzs.indexOf(r)===-1)throw new I1n('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=jzs(t.styleAliases||null),Kzs.indexOf(this.kind)===-1)throw new I1n('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}h1n.exports=zzs});var Sfe=H((j3l,C1n)=>{"use strict";var m1n=Efe(),Pct=ySe(),qzs=ER();function l6t(e,t,r){var n=[];return e.include.forEach(function(a){r=l6t(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,l){o.tag===a.tag&&o.kind===a.kind&&n.push(l)}),r.push(a)}),r.filter(function(a,o){return n.indexOf(o)===-1})}function $zs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function n(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var eqs=ER();_1n.exports=new eqs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var E1n=H((q3l,b1n)=>{"use strict";var tqs=ER();b1n.exports=new tqs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var v1n=H(($3l,S1n)=>{"use strict";var rqs=ER();S1n.exports=new rqs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var Wct=H((e5l,B1n)=>{"use strict";var nqs=Sfe();B1n.exports=new nqs({explicit:[y1n(),E1n(),v1n()]})});var T1n=H((t5l,w1n)=>{"use strict";var iqs=ER();function sqs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function oqs(){return null}function aqs(e){return e===null}w1n.exports=new iqs("tag:yaml.org,2002:null",{kind:"scalar",resolve:sqs,construct:oqs,predicate:aqs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var N1n=H((r5l,R1n)=>{"use strict";var cqs=ER();function lqs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function uqs(e){return e==="true"||e==="True"||e==="TRUE"}function gqs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}R1n.exports=new cqs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:lqs,construct:uqs,predicate:gqs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var k1n=H((n5l,D1n)=>{"use strict";var Aqs=Efe(),dqs=ER();function pqs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function fqs(e){return 48<=e&&e<=55}function Iqs(e){return 48<=e&&e<=57}function hqs(e){if(e===null)return!1;var t=e.length,r=0,n=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var F1n=H((i5l,G1n)=>{"use strict";var x1n=Efe(),_qs=ER(),yqs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function bqs(e){return!(e===null||!yqs.test(e)||e[e.length-1]==="_")}function Eqs(e){var t,r,n,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,n=1,a.forEach(function(o){t+=o*n,n*=60}),r*t):r*parseFloat(t,10)}var Sqs=/^[-+]?[0-9]+e/;function vqs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(x1n.isNegativeZero(e))return"-0.0";return r=e.toString(10),Sqs.test(r)?r.replace("e",".e"):r}function Bqs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||x1n.isNegativeZero(e))}G1n.exports=new _qs("tag:yaml.org,2002:float",{kind:"scalar",resolve:bqs,construct:Eqs,predicate:Bqs,represent:vqs,defaultStyle:"lowercase"})});var u6t=H((s5l,Z1n)=>{"use strict";var wqs=Sfe();Z1n.exports=new wqs({include:[Wct()],implicit:[T1n(),N1n(),k1n(),F1n()]})});var g6t=H((o5l,L1n)=>{"use strict";var Tqs=Sfe();L1n.exports=new Tqs({include:[u6t()]})});var O1n=H((a5l,W1n)=>{"use strict";var Rqs=ER(),V1n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),P1n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Nqs(e){return e===null?!1:V1n.exec(e)!==null||P1n.exec(e)!==null}function Dqs(e){var t,r,n,a,o,l,A,f=0,I=null,C,b,E;if(t=V1n.exec(e),t===null&&(t=P1n.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,n,a));if(o=+t[4],l=+t[5],A=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(C=+t[10],b=+(t[11]||0),I=(C*60+b)*6e4,t[9]==="-"&&(I=-I)),E=new Date(Date.UTC(r,n,a,o,l,A,f)),I&&E.setTime(E.getTime()-I),E}function kqs(e){return e.toISOString()}W1n.exports=new Rqs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Nqs,construct:Dqs,instanceOf:Date,represent:kqs})});var H1n=H((c5l,M1n)=>{"use strict";var xqs=ER();function Gqs(e){return e==="<<"||e===null}M1n.exports=new xqs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Gqs})});var X1n=H((l5l,Q1n)=>{"use strict";var vfe;try{Y1n=wt,vfe=Y1n("buffer").Buffer}catch{}var Y1n,Fqs=ER(),A6t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Zqs(e){if(e===null)return!1;var t,r,n=0,a=e.length,o=A6t;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function Lqs(e){var t,r,n=e.replace(/[\r\n=]/g,""),a=n.length,o=A6t,l=0,A=[];for(t=0;t>16&255),A.push(l>>8&255),A.push(l&255)),l=l<<6|o.indexOf(n.charAt(t));return r=a%4*6,r===0?(A.push(l>>16&255),A.push(l>>8&255),A.push(l&255)):r===18?(A.push(l>>10&255),A.push(l>>2&255)):r===12&&A.push(l>>4&255),vfe?vfe.from?vfe.from(A):new vfe(A):A}function Vqs(e){var t="",r=0,n,a,o=e.length,l=A6t;for(n=0;n>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]),r=(r<<8)+e[n];return a=o%3,a===0?(t+=l[r>>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]):a===2?(t+=l[r>>10&63],t+=l[r>>4&63],t+=l[r<<2&63],t+=l[64]):a===1&&(t+=l[r>>2&63],t+=l[r<<4&63],t+=l[64],t+=l[64]),t}function Pqs(e){return vfe&&vfe.isBuffer(e)}Q1n.exports=new Fqs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Zqs,construct:Lqs,predicate:Pqs,represent:Vqs})});var U1n=H((g5l,J1n)=>{"use strict";var Wqs=ER(),Oqs=Object.prototype.hasOwnProperty,Mqs=Object.prototype.toString;function Hqs(e){if(e===null)return!0;var t=[],r,n,a,o,l,A=e;for(r=0,n=A.length;r{"use strict";var Qqs=ER(),Xqs=Object.prototype.toString;function Jqs(e){if(e===null)return!0;var t,r,n,a,o,l=e;for(o=new Array(l.length),t=0,r=l.length;t{"use strict";var Kqs=ER(),jqs=Object.prototype.hasOwnProperty;function zqs(e){if(e===null)return!0;var t,r=e;for(t in r)if(jqs.call(r,t)&&r[t]!==null)return!1;return!0}function qqs(e){return e!==null?e:{}}z1n.exports=new Kqs("tag:yaml.org,2002:set",{kind:"mapping",resolve:zqs,construct:qqs})});var ESe=H((p5l,$1n)=>{"use strict";var $qs=Sfe();$1n.exports=new $qs({include:[g6t()],implicit:[O1n(),H1n()],explicit:[X1n(),U1n(),j1n(),q1n()]})});var t2n=H((f5l,e2n)=>{"use strict";var e$s=ER();function t$s(){return!0}function r$s(){}function n$s(){return""}function i$s(e){return typeof e>"u"}e2n.exports=new e$s("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:t$s,construct:r$s,predicate:i$s,represent:n$s})});var n2n=H((I5l,r2n)=>{"use strict";var s$s=ER();function o$s(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),n="";return!(t[0]==="/"&&(r&&(n=r[1]),n.length>3||t[t.length-n.length-1]!=="/"))}function a$s(e){var t=e,r=/\/([gim]*)$/.exec(e),n="";return t[0]==="/"&&(r&&(n=r[1]),t=t.slice(1,t.length-n.length-1)),new RegExp(t,n)}function c$s(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function l$s(e){return Object.prototype.toString.call(e)==="[object RegExp]"}r2n.exports=new s$s("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:o$s,construct:a$s,predicate:l$s,represent:c$s})});var o2n=H((h5l,s2n)=>{"use strict";var Oct;try{i2n=wt,Oct=i2n("esprima")}catch{typeof window<"u"&&(Oct=window.esprima)}var i2n,u$s=ER();function g$s(e){if(e===null)return!1;try{var t="("+e+")",r=Oct.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function A$s(e){var t="("+e+")",r=Oct.parse(t,{range:!0}),n=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){n.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(n,t.slice(a[0]+1,a[1]-1)):new Function(n,"return "+t.slice(a[0],a[1]))}function d$s(e){return e.toString()}function p$s(e){return Object.prototype.toString.call(e)==="[object Function]"}s2n.exports=new u$s("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:g$s,construct:A$s,predicate:p$s,represent:d$s})});var qOe=H((C5l,c2n)=>{"use strict";var a2n=Sfe();c2n.exports=a2n.DEFAULT=new a2n({include:[ESe()],explicit:[t2n(),n2n(),o2n()]})});var w2n=H((_5l,$Oe)=>{"use strict";var Qq=Efe(),f2n=ySe(),f$s=f1n(),I2n=ESe(),I$s=qOe(),toe=Object.prototype.hasOwnProperty,Mct=1,h2n=2,m2n=3,Hct=4,d6t=1,h$s=2,l2n=3,m$s=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,C$s=/[\x85\u2028\u2029]/,_$s=/[,\[\]\{\}]/,C2n=/^(?:!|!!|![a-z\-]+!)$/i,_2n=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function u2n(e){return Object.prototype.toString.call(e)}function LK(e){return e===10||e===13}function wfe(e){return e===9||e===32}function W9(e){return e===9||e===32||e===10||e===13}function SSe(e){return e===44||e===91||e===93||e===123||e===125}function y$s(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function b$s(e){return e===120?2:e===117?4:e===85?8:0}function E$s(e){return 48<=e&&e<=57?e-48:-1}function g2n(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` -`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function S$s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var y2n=new Array(256),b2n=new Array(256);for(Bfe=0;Bfe<256;Bfe++)y2n[Bfe]=g2n(Bfe)?1:0,b2n[Bfe]=g2n(Bfe);var Bfe;function v$s(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||I$s,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function E2n(e,t){return new f2n(t,new f$s(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function zp(e,t){throw E2n(e,t)}function Yct(e,t){e.onWarning&&e.onWarning.call(null,E2n(e,t))}var A2n={YAML:function(t,r,n){var a,o,l;t.version!==null&&zp(t,"duplication of %YAML directive"),n.length!==1&&zp(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),a===null&&zp(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),l=parseInt(a[2],10),o!==1&&zp(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&Yct(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var a,o;n.length!==2&&zp(t,"TAG directive accepts exactly two arguments"),a=n[0],o=n[1],C2n.test(a)||zp(t,"ill-formed tag handle (first argument) of the TAG directive"),toe.call(t.tagMap,a)&&zp(t,'there is a previously declared suffix for "'+a+'" tag handle'),_2n.test(o)||zp(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function eoe(e,t,r,n){var a,o,l,A;if(t1&&(e.result+=Qq.repeat(` -`,t-1))}function B$s(e,t,r){var n,a,o,l,A,f,I,C,b=e.kind,E=e.result,N;if(N=e.input.charCodeAt(e.position),W9(N)||SSe(N)||N===35||N===38||N===42||N===33||N===124||N===62||N===39||N===34||N===37||N===64||N===96||(N===63||N===45)&&(a=e.input.charCodeAt(e.position+1),W9(a)||r&&SSe(a)))return!1;for(e.kind="scalar",e.result="",o=l=e.position,A=!1;N!==0;){if(N===58){if(a=e.input.charCodeAt(e.position+1),W9(a)||r&&SSe(a))break}else if(N===35){if(n=e.input.charCodeAt(e.position-1),W9(n))break}else{if(e.position===e.lineStart&&Qct(e)||r&&SSe(N))break;if(LK(N))if(f=e.line,I=e.lineStart,C=e.lineIndent,qw(e,!1,-1),e.lineIndent>=t){A=!0,N=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=f,e.lineStart=I,e.lineIndent=C;break}}A&&(eoe(e,o,l,!1),f6t(e,e.line-f),o=l=e.position,A=!1),wfe(N)||(l=e.position+1),N=e.input.charCodeAt(++e.position)}return eoe(e,o,l,!1),e.result?!0:(e.kind=b,e.result=E,!1)}function w$s(e,t){var r,n,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(eoe(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,a=e.position;else return!0;else LK(r)?(eoe(e,n,a,!0),f6t(e,qw(e,!1,t)),n=a=e.position):e.position===e.lineStart&&Qct(e)?zp(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);zp(e,"unexpected end of the stream within a single quoted scalar")}function T$s(e,t){var r,n,a,o,l,A;if(A=e.input.charCodeAt(e.position),A!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(A=e.input.charCodeAt(e.position))!==0;){if(A===34)return eoe(e,r,e.position,!0),e.position++,!0;if(A===92){if(eoe(e,r,e.position,!0),A=e.input.charCodeAt(++e.position),LK(A))qw(e,!1,t);else if(A<256&&y2n[A])e.result+=b2n[A],e.position++;else if((l=b$s(A))>0){for(a=l,o=0;a>0;a--)A=e.input.charCodeAt(++e.position),(l=y$s(A))>=0?o=(o<<4)+l:zp(e,"expected hexadecimal character");e.result+=S$s(o),e.position++}else zp(e,"unknown escape sequence");r=n=e.position}else LK(A)?(eoe(e,r,n,!0),f6t(e,qw(e,!1,t)),r=n=e.position):e.position===e.lineStart&&Qct(e)?zp(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}zp(e,"unexpected end of the stream within a double quoted scalar")}function R$s(e,t){var r=!0,n,a=e.tag,o,l=e.anchor,A,f,I,C,b,E={},N,B,F,Q;if(Q=e.input.charCodeAt(e.position),Q===91)f=93,b=!1,o=[];else if(Q===123)f=125,b=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),Q=e.input.charCodeAt(++e.position);Q!==0;){if(qw(e,!0,t),Q=e.input.charCodeAt(e.position),Q===f)return e.position++,e.tag=a,e.anchor=l,e.kind=b?"mapping":"sequence",e.result=o,!0;r||zp(e,"missed comma between flow collection entries"),B=N=F=null,I=C=!1,Q===63&&(A=e.input.charCodeAt(e.position+1),W9(A)&&(I=C=!0,e.position++,qw(e,!0,t))),n=e.line,BSe(e,t,Mct,!1,!0),B=e.tag,N=e.result,qw(e,!0,t),Q=e.input.charCodeAt(e.position),(C||e.line===n)&&Q===58&&(I=!0,Q=e.input.charCodeAt(++e.position),qw(e,!0,t),BSe(e,t,Mct,!1,!0),F=e.result),b?vSe(e,o,E,B,N,F):I?o.push(vSe(e,null,E,B,N,F)):o.push(N),qw(e,!0,t),Q=e.input.charCodeAt(e.position),Q===44?(r=!0,Q=e.input.charCodeAt(++e.position)):r=!1}zp(e,"unexpected end of the stream within a flow collection")}function N$s(e,t){var r,n,a=d6t,o=!1,l=!1,A=t,f=0,I=!1,C,b;if(b=e.input.charCodeAt(e.position),b===124)n=!1;else if(b===62)n=!0;else return!1;for(e.kind="scalar",e.result="";b!==0;)if(b=e.input.charCodeAt(++e.position),b===43||b===45)d6t===a?a=b===43?l2n:h$s:zp(e,"repeat of a chomping mode identifier");else if((C=E$s(b))>=0)C===0?zp(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?zp(e,"repeat of an indentation width identifier"):(A=t+C-1,l=!0);else break;if(wfe(b)){do b=e.input.charCodeAt(++e.position);while(wfe(b));if(b===35)do b=e.input.charCodeAt(++e.position);while(!LK(b)&&b!==0)}for(;b!==0;){for(p6t(e),e.lineIndent=0,b=e.input.charCodeAt(e.position);(!l||e.lineIndentA&&(A=e.lineIndent),LK(b)){f++;continue}if(e.lineIndentr/2-1){o=" ... ",l-=5;break}return A=this.buffer.slice(a,l),_1n.repeat(" ",t)+n+A+o+` +`+_1n.repeat(" ",t+this.position-a+n.length)+"^"};A6t.prototype.toString=function(t){var r,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(n+=`: +`+r)),n};y1n.exports=A6t});var ER=H((O5l,S1n)=>{"use strict";var E1n=bSe(),uqs=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],gqs=["scalar","sequence","mapping"];function Aqs(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function dqs(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(uqs.indexOf(r)===-1)throw new E1n('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=Aqs(t.styleAliases||null),gqs.indexOf(this.kind)===-1)throw new E1n('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}S1n.exports=dqs});var vfe=H((M5l,B1n)=>{"use strict";var v1n=Sfe(),Oct=bSe(),pqs=ER();function d6t(e,t,r){var n=[];return e.include.forEach(function(a){r=d6t(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,l){o.tag===a.tag&&o.kind===a.kind&&n.push(l)}),r.push(a)}),r.filter(function(a,o){return n.indexOf(o)===-1})}function fqs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function n(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var Iqs=ER();w1n.exports=new Iqs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var N1n=H((Y5l,R1n)=>{"use strict";var hqs=ER();R1n.exports=new hqs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var k1n=H((Q5l,D1n)=>{"use strict";var mqs=ER();D1n.exports=new mqs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var Mct=H((X5l,x1n)=>{"use strict";var Cqs=vfe();x1n.exports=new Cqs({explicit:[T1n(),N1n(),k1n()]})});var F1n=H((J5l,G1n)=>{"use strict";var _qs=ER();function yqs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function bqs(){return null}function Eqs(e){return e===null}G1n.exports=new _qs("tag:yaml.org,2002:null",{kind:"scalar",resolve:yqs,construct:bqs,predicate:Eqs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var L1n=H((U5l,Z1n)=>{"use strict";var Sqs=ER();function vqs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function Bqs(e){return e==="true"||e==="True"||e==="TRUE"}function wqs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}Z1n.exports=new Sqs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:vqs,construct:Bqs,predicate:wqs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var P1n=H((K5l,V1n)=>{"use strict";var Tqs=Sfe(),Rqs=ER();function Nqs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function Dqs(e){return 48<=e&&e<=55}function kqs(e){return 48<=e&&e<=57}function xqs(e){if(e===null)return!1;var t=e.length,r=0,n=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var M1n=H((j5l,O1n)=>{"use strict";var W1n=Sfe(),Zqs=ER(),Lqs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Vqs(e){return!(e===null||!Lqs.test(e)||e[e.length-1]==="_")}function Pqs(e){var t,r,n,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,n=1,a.forEach(function(o){t+=o*n,n*=60}),r*t):r*parseFloat(t,10)}var Wqs=/^[-+]?[0-9]+e/;function Oqs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(W1n.isNegativeZero(e))return"-0.0";return r=e.toString(10),Wqs.test(r)?r.replace("e",".e"):r}function Mqs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||W1n.isNegativeZero(e))}O1n.exports=new Zqs("tag:yaml.org,2002:float",{kind:"scalar",resolve:Vqs,construct:Pqs,predicate:Mqs,represent:Oqs,defaultStyle:"lowercase"})});var p6t=H((z5l,H1n)=>{"use strict";var Hqs=vfe();H1n.exports=new Hqs({include:[Mct()],implicit:[F1n(),L1n(),P1n(),M1n()]})});var f6t=H((q5l,Y1n)=>{"use strict";var Yqs=vfe();Y1n.exports=new Yqs({include:[p6t()]})});var U1n=H(($5l,J1n)=>{"use strict";var Qqs=ER(),Q1n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),X1n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Xqs(e){return e===null?!1:Q1n.exec(e)!==null||X1n.exec(e)!==null}function Jqs(e){var t,r,n,a,o,l,A,f=0,I=null,C,b,E;if(t=Q1n.exec(e),t===null&&(t=X1n.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,n,a));if(o=+t[4],l=+t[5],A=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(C=+t[10],b=+(t[11]||0),I=(C*60+b)*6e4,t[9]==="-"&&(I=-I)),E=new Date(Date.UTC(r,n,a,o,l,A,f)),I&&E.setTime(E.getTime()-I),E}function Uqs(e){return e.toISOString()}J1n.exports=new Qqs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Xqs,construct:Jqs,instanceOf:Date,represent:Uqs})});var j1n=H((eMl,K1n)=>{"use strict";var Kqs=ER();function jqs(e){return e==="<<"||e===null}K1n.exports=new Kqs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jqs})});var $1n=H((tMl,q1n)=>{"use strict";var Bfe;try{z1n=wt,Bfe=z1n("buffer").Buffer}catch{}var z1n,zqs=ER(),I6t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function qqs(e){if(e===null)return!1;var t,r,n=0,a=e.length,o=I6t;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function $qs(e){var t,r,n=e.replace(/[\r\n=]/g,""),a=n.length,o=I6t,l=0,A=[];for(t=0;t>16&255),A.push(l>>8&255),A.push(l&255)),l=l<<6|o.indexOf(n.charAt(t));return r=a%4*6,r===0?(A.push(l>>16&255),A.push(l>>8&255),A.push(l&255)):r===18?(A.push(l>>10&255),A.push(l>>2&255)):r===12&&A.push(l>>4&255),Bfe?Bfe.from?Bfe.from(A):new Bfe(A):A}function e$s(e){var t="",r=0,n,a,o=e.length,l=I6t;for(n=0;n>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]),r=(r<<8)+e[n];return a=o%3,a===0?(t+=l[r>>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]):a===2?(t+=l[r>>10&63],t+=l[r>>4&63],t+=l[r<<2&63],t+=l[64]):a===1&&(t+=l[r>>2&63],t+=l[r<<4&63],t+=l[64],t+=l[64]),t}function t$s(e){return Bfe&&Bfe.isBuffer(e)}q1n.exports=new zqs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:qqs,construct:$qs,predicate:t$s,represent:e$s})});var t2n=H((nMl,e2n)=>{"use strict";var r$s=ER(),n$s=Object.prototype.hasOwnProperty,i$s=Object.prototype.toString;function s$s(e){if(e===null)return!0;var t=[],r,n,a,o,l,A=e;for(r=0,n=A.length;r{"use strict";var a$s=ER(),c$s=Object.prototype.toString;function l$s(e){if(e===null)return!0;var t,r,n,a,o,l=e;for(o=new Array(l.length),t=0,r=l.length;t{"use strict";var g$s=ER(),A$s=Object.prototype.hasOwnProperty;function d$s(e){if(e===null)return!0;var t,r=e;for(t in r)if(A$s.call(r,t)&&r[t]!==null)return!1;return!0}function p$s(e){return e!==null?e:{}}i2n.exports=new g$s("tag:yaml.org,2002:set",{kind:"mapping",resolve:d$s,construct:p$s})});var SSe=H((oMl,o2n)=>{"use strict";var f$s=vfe();o2n.exports=new f$s({include:[f6t()],implicit:[U1n(),j1n()],explicit:[$1n(),t2n(),n2n(),s2n()]})});var c2n=H((aMl,a2n)=>{"use strict";var I$s=ER();function h$s(){return!0}function m$s(){}function C$s(){return""}function _$s(e){return typeof e>"u"}a2n.exports=new I$s("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:h$s,construct:m$s,predicate:_$s,represent:C$s})});var u2n=H((cMl,l2n)=>{"use strict";var y$s=ER();function b$s(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),n="";return!(t[0]==="/"&&(r&&(n=r[1]),n.length>3||t[t.length-n.length-1]!=="/"))}function E$s(e){var t=e,r=/\/([gim]*)$/.exec(e),n="";return t[0]==="/"&&(r&&(n=r[1]),t=t.slice(1,t.length-n.length-1)),new RegExp(t,n)}function S$s(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function v$s(e){return Object.prototype.toString.call(e)==="[object RegExp]"}l2n.exports=new y$s("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:b$s,construct:E$s,predicate:v$s,represent:S$s})});var d2n=H((lMl,A2n)=>{"use strict";var Hct;try{g2n=wt,Hct=g2n("esprima")}catch{typeof window<"u"&&(Hct=window.esprima)}var g2n,B$s=ER();function w$s(e){if(e===null)return!1;try{var t="("+e+")",r=Hct.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function T$s(e){var t="("+e+")",r=Hct.parse(t,{range:!0}),n=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){n.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(n,t.slice(a[0]+1,a[1]-1)):new Function(n,"return "+t.slice(a[0],a[1]))}function R$s(e){return e.toString()}function N$s(e){return Object.prototype.toString.call(e)==="[object Function]"}A2n.exports=new B$s("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:w$s,construct:T$s,predicate:N$s,represent:R$s})});var e3e=H((gMl,f2n)=>{"use strict";var p2n=vfe();f2n.exports=p2n.DEFAULT=new p2n({include:[SSe()],explicit:[c2n(),u2n(),d2n()]})});var G2n=H((AMl,t3e)=>{"use strict";var Qq=Sfe(),b2n=bSe(),D$s=b1n(),E2n=SSe(),k$s=e3e(),roe=Object.prototype.hasOwnProperty,Yct=1,S2n=2,v2n=3,Qct=4,h6t=1,x$s=2,I2n=3,G$s=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,F$s=/[\x85\u2028\u2029]/,Z$s=/[,\[\]\{\}]/,B2n=/^(?:!|!!|![a-z\-]+!)$/i,w2n=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function h2n(e){return Object.prototype.toString.call(e)}function LK(e){return e===10||e===13}function Tfe(e){return e===9||e===32}function W9(e){return e===9||e===32||e===10||e===13}function vSe(e){return e===44||e===91||e===93||e===123||e===125}function L$s(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function V$s(e){return e===120?2:e===117?4:e===85?8:0}function P$s(e){return 48<=e&&e<=57?e-48:-1}function m2n(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` +`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function W$s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var T2n=new Array(256),R2n=new Array(256);for(wfe=0;wfe<256;wfe++)T2n[wfe]=m2n(wfe)?1:0,R2n[wfe]=m2n(wfe);var wfe;function O$s(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||k$s,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function N2n(e,t){return new b2n(t,new D$s(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function zp(e,t){throw N2n(e,t)}function Xct(e,t){e.onWarning&&e.onWarning.call(null,N2n(e,t))}var C2n={YAML:function(t,r,n){var a,o,l;t.version!==null&&zp(t,"duplication of %YAML directive"),n.length!==1&&zp(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),a===null&&zp(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),l=parseInt(a[2],10),o!==1&&zp(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&Xct(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var a,o;n.length!==2&&zp(t,"TAG directive accepts exactly two arguments"),a=n[0],o=n[1],B2n.test(a)||zp(t,"ill-formed tag handle (first argument) of the TAG directive"),roe.call(t.tagMap,a)&&zp(t,'there is a previously declared suffix for "'+a+'" tag handle'),w2n.test(o)||zp(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function toe(e,t,r,n){var a,o,l,A;if(t1&&(e.result+=Qq.repeat(` +`,t-1))}function M$s(e,t,r){var n,a,o,l,A,f,I,C,b=e.kind,E=e.result,N;if(N=e.input.charCodeAt(e.position),W9(N)||vSe(N)||N===35||N===38||N===42||N===33||N===124||N===62||N===39||N===34||N===37||N===64||N===96||(N===63||N===45)&&(a=e.input.charCodeAt(e.position+1),W9(a)||r&&vSe(a)))return!1;for(e.kind="scalar",e.result="",o=l=e.position,A=!1;N!==0;){if(N===58){if(a=e.input.charCodeAt(e.position+1),W9(a)||r&&vSe(a))break}else if(N===35){if(n=e.input.charCodeAt(e.position-1),W9(n))break}else{if(e.position===e.lineStart&&Jct(e)||r&&vSe(N))break;if(LK(N))if(f=e.line,I=e.lineStart,C=e.lineIndent,qw(e,!1,-1),e.lineIndent>=t){A=!0,N=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=f,e.lineStart=I,e.lineIndent=C;break}}A&&(toe(e,o,l,!1),C6t(e,e.line-f),o=l=e.position,A=!1),Tfe(N)||(l=e.position+1),N=e.input.charCodeAt(++e.position)}return toe(e,o,l,!1),e.result?!0:(e.kind=b,e.result=E,!1)}function H$s(e,t){var r,n,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(toe(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,a=e.position;else return!0;else LK(r)?(toe(e,n,a,!0),C6t(e,qw(e,!1,t)),n=a=e.position):e.position===e.lineStart&&Jct(e)?zp(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);zp(e,"unexpected end of the stream within a single quoted scalar")}function Y$s(e,t){var r,n,a,o,l,A;if(A=e.input.charCodeAt(e.position),A!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(A=e.input.charCodeAt(e.position))!==0;){if(A===34)return toe(e,r,e.position,!0),e.position++,!0;if(A===92){if(toe(e,r,e.position,!0),A=e.input.charCodeAt(++e.position),LK(A))qw(e,!1,t);else if(A<256&&T2n[A])e.result+=R2n[A],e.position++;else if((l=V$s(A))>0){for(a=l,o=0;a>0;a--)A=e.input.charCodeAt(++e.position),(l=L$s(A))>=0?o=(o<<4)+l:zp(e,"expected hexadecimal character");e.result+=W$s(o),e.position++}else zp(e,"unknown escape sequence");r=n=e.position}else LK(A)?(toe(e,r,n,!0),C6t(e,qw(e,!1,t)),r=n=e.position):e.position===e.lineStart&&Jct(e)?zp(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}zp(e,"unexpected end of the stream within a double quoted scalar")}function Q$s(e,t){var r=!0,n,a=e.tag,o,l=e.anchor,A,f,I,C,b,E={},N,B,F,Q;if(Q=e.input.charCodeAt(e.position),Q===91)f=93,b=!1,o=[];else if(Q===123)f=125,b=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),Q=e.input.charCodeAt(++e.position);Q!==0;){if(qw(e,!0,t),Q=e.input.charCodeAt(e.position),Q===f)return e.position++,e.tag=a,e.anchor=l,e.kind=b?"mapping":"sequence",e.result=o,!0;r||zp(e,"missed comma between flow collection entries"),B=N=F=null,I=C=!1,Q===63&&(A=e.input.charCodeAt(e.position+1),W9(A)&&(I=C=!0,e.position++,qw(e,!0,t))),n=e.line,wSe(e,t,Yct,!1,!0),B=e.tag,N=e.result,qw(e,!0,t),Q=e.input.charCodeAt(e.position),(C||e.line===n)&&Q===58&&(I=!0,Q=e.input.charCodeAt(++e.position),qw(e,!0,t),wSe(e,t,Yct,!1,!0),F=e.result),b?BSe(e,o,E,B,N,F):I?o.push(BSe(e,null,E,B,N,F)):o.push(N),qw(e,!0,t),Q=e.input.charCodeAt(e.position),Q===44?(r=!0,Q=e.input.charCodeAt(++e.position)):r=!1}zp(e,"unexpected end of the stream within a flow collection")}function X$s(e,t){var r,n,a=h6t,o=!1,l=!1,A=t,f=0,I=!1,C,b;if(b=e.input.charCodeAt(e.position),b===124)n=!1;else if(b===62)n=!0;else return!1;for(e.kind="scalar",e.result="";b!==0;)if(b=e.input.charCodeAt(++e.position),b===43||b===45)h6t===a?a=b===43?I2n:x$s:zp(e,"repeat of a chomping mode identifier");else if((C=P$s(b))>=0)C===0?zp(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?zp(e,"repeat of an indentation width identifier"):(A=t+C-1,l=!0);else break;if(Tfe(b)){do b=e.input.charCodeAt(++e.position);while(Tfe(b));if(b===35)do b=e.input.charCodeAt(++e.position);while(!LK(b)&&b!==0)}for(;b!==0;){for(m6t(e),e.lineIndent=0,b=e.input.charCodeAt(e.position);(!l||e.lineIndentA&&(A=e.lineIndent),LK(b)){f++;continue}if(e.lineIndentt)&&f!==0)zp(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(BSe(e,t,Hct,!0,a)&&(B?E=e.result:N=e.result),B||(vSe(e,I,C,b,E,N,o,l),b=E=N=null),qw(e,!0,-1),Q=e.input.charCodeAt(e.position)),e.lineIndent>t&&Q!==0)zp(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),b=0,E=e.implicitTypes.length;b tag; it should be "'+N.kind+'", not "'+e.kind+'"'),N.resolve(e.result)?(e.result=N.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):zp(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):zp(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||C}function F$s(e){var t=e.position,r,n,a,o=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(l=e.input.charCodeAt(e.position))!==0&&(qw(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(o=!0,l=e.input.charCodeAt(++e.position),r=e.position;l!==0&&!W9(l);)l=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),a=[],n.length<1&&zp(e,"directive name must not be less than one character in length");l!==0;){for(;wfe(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!LK(l));break}if(LK(l))break;for(r=e.position;l!==0&&!W9(l);)l=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}l!==0&&p6t(e),toe.call(A2n,n)?A2n[n](e,n,a):Yct(e,'unknown document directive "'+n+'"')}if(qw(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,qw(e,!0,-1)):o&&zp(e,"directives end mark is expected"),BSe(e,e.lineIndent-1,Hct,!1,!0),qw(e,!0,-1),e.checkLineBreaks&&C$s.test(e.input.slice(t,e.position))&&Yct(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Qct(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,qw(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=S2n(e,r);if(typeof t!="function")return n;for(var a=0,o=n.length;a"u"&&(r=t,t=null),v2n(e,t,Qq.extend({schema:I2n},r))}function L$s(e,t){return B2n(e,Qq.extend({schema:I2n},t))}$Oe.exports.loadAll=v2n;$Oe.exports.load=B2n;$Oe.exports.safeLoadAll=Z$s;$Oe.exports.safeLoad=L$s});var j2n=H((y5l,C6t)=>{"use strict";var t3e=Efe(),r3e=ySe(),V$s=qOe(),P$s=ESe(),F2n=Object.prototype.toString,Z2n=Object.prototype.hasOwnProperty,W$s=9,e3e=10,O$s=13,M$s=32,H$s=33,Y$s=34,L2n=35,Q$s=37,X$s=38,J$s=39,U$s=42,V2n=44,K$s=45,P2n=58,j$s=61,z$s=62,q$s=63,$$s=64,W2n=91,O2n=93,eeo=96,M2n=123,teo=124,H2n=125,aG={};aG[0]="\\0";aG[7]="\\a";aG[8]="\\b";aG[9]="\\t";aG[10]="\\n";aG[11]="\\v";aG[12]="\\f";aG[13]="\\r";aG[27]="\\e";aG[34]='\\"';aG[92]="\\\\";aG[133]="\\N";aG[160]="\\_";aG[8232]="\\L";aG[8233]="\\P";var reo=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function neo(e,t){var r,n,a,o,l,A,f;if(t===null)return{};for(r={},n=Object.keys(t),a=0,o=n.length;at)&&f!==0)zp(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(wSe(e,t,Qct,!0,a)&&(B?E=e.result:N=e.result),B||(BSe(e,I,C,b,E,N,o,l),b=E=N=null),qw(e,!0,-1),Q=e.input.charCodeAt(e.position)),e.lineIndent>t&&Q!==0)zp(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),b=0,E=e.implicitTypes.length;b tag; it should be "'+N.kind+'", not "'+e.kind+'"'),N.resolve(e.result)?(e.result=N.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):zp(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):zp(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||C}function z$s(e){var t=e.position,r,n,a,o=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(l=e.input.charCodeAt(e.position))!==0&&(qw(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(o=!0,l=e.input.charCodeAt(++e.position),r=e.position;l!==0&&!W9(l);)l=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),a=[],n.length<1&&zp(e,"directive name must not be less than one character in length");l!==0;){for(;Tfe(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!LK(l));break}if(LK(l))break;for(r=e.position;l!==0&&!W9(l);)l=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}l!==0&&m6t(e),roe.call(C2n,n)?C2n[n](e,n,a):Xct(e,'unknown document directive "'+n+'"')}if(qw(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,qw(e,!0,-1)):o&&zp(e,"directives end mark is expected"),wSe(e,e.lineIndent-1,Qct,!1,!0),qw(e,!0,-1),e.checkLineBreaks&&F$s.test(e.input.slice(t,e.position))&&Xct(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Jct(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,qw(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=D2n(e,r);if(typeof t!="function")return n;for(var a=0,o=n.length;a"u"&&(r=t,t=null),k2n(e,t,Qq.extend({schema:E2n},r))}function $$s(e,t){return x2n(e,Qq.extend({schema:E2n},t))}t3e.exports.loadAll=k2n;t3e.exports.load=x2n;t3e.exports.safeLoadAll=q$s;t3e.exports.safeLoad=$$s});var nSn=H((dMl,E6t)=>{"use strict";var n3e=Sfe(),i3e=bSe(),eeo=e3e(),teo=SSe(),M2n=Object.prototype.toString,H2n=Object.prototype.hasOwnProperty,reo=9,r3e=10,neo=13,ieo=32,seo=33,oeo=34,Y2n=35,aeo=37,ceo=38,leo=39,ueo=42,Q2n=44,geo=45,X2n=58,Aeo=61,deo=62,peo=63,feo=64,J2n=91,U2n=93,Ieo=96,K2n=123,heo=124,j2n=125,aG={};aG[0]="\\0";aG[7]="\\a";aG[8]="\\b";aG[9]="\\t";aG[10]="\\n";aG[11]="\\v";aG[12]="\\f";aG[13]="\\r";aG[27]="\\e";aG[34]='\\"';aG[92]="\\\\";aG[133]="\\N";aG[160]="\\_";aG[8232]="\\L";aG[8233]="\\P";var meo=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function Ceo(e,t){var r,n,a,o,l,A,f;if(t===null)return{};for(r={},n=Object.keys(t),a=0,o=n.length;a0?e.charCodeAt(o-1):null,E=E&&N2n(l,A)}else{for(o=0;on&&e[b+1]!==" ",b=o);else if(!wSe(l))return Xct;A=o>0?e.charCodeAt(o-1):null,E=E&&N2n(l,A)}I=I||C&&o-b-1>n&&e[b+1]!==" "}return!f&&!I?E&&!a(e)?Q2n:X2n:r>9&&Y2n(e)?Xct:I?U2n:J2n}function leo(e,t,r,n){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&reo.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function A(f){return seo(e,f)}switch(ceo(t,l,e.indent,o,A)){case Q2n:return t;case X2n:return"'"+t.replace(/'/g,"''")+"'";case J2n:return"|"+D2n(t,e.indent)+k2n(R2n(t,a));case U2n:return">"+D2n(t,e.indent)+k2n(R2n(ueo(t,o),a));case Xct:return'"'+geo(t,o)+'"';default:throw new r3e("impossible error: invalid scalar style")}}()}function D2n(e,t){var r=Y2n(e)?String(t):"",n=e[e.length-1]===` +`&&(o+=r),o+=l;return o}function _6t(e,t){return` +`+n3e.repeat(" ",e.indent*t)}function yeo(e,t){var r,n,a;for(r=0,n=e.implicitTypes.length;r0?e.charCodeAt(o-1):null,E=E&&L2n(l,A)}else{for(o=0;on&&e[b+1]!==" ",b=o);else if(!TSe(l))return Uct;A=o>0?e.charCodeAt(o-1):null,E=E&&L2n(l,A)}I=I||C&&o-b-1>n&&e[b+1]!==" "}return!f&&!I?E&&!a(e)?q2n:$2n:r>9&&z2n(e)?Uct:I?tSn:eSn}function veo(e,t,r,n){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&meo.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function A(f){return yeo(e,f)}switch(Seo(t,l,e.indent,o,A)){case q2n:return t;case $2n:return"'"+t.replace(/'/g,"''")+"'";case eSn:return"|"+V2n(t,e.indent)+P2n(Z2n(t,a));case tSn:return">"+V2n(t,e.indent)+P2n(Z2n(Beo(t,o),a));case Uct:return'"'+weo(t,o)+'"';default:throw new i3e("impossible error: invalid scalar style")}}()}function V2n(e,t){var r=z2n(e)?String(t):"",n=e[e.length-1]===` `,a=n&&(e[e.length-2]===` `||e===` `),o=a?"+":n?"":"-";return r+o+` -`}function k2n(e){return e[e.length-1]===` -`?e.slice(0,-1):e}function ueo(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var I=e.indexOf(` -`);return I=I!==-1?I:e.length,r.lastIndex=I,x2n(e.slice(0,I),t)}(),a=e[0]===` +`}function P2n(e){return e[e.length-1]===` +`?e.slice(0,-1):e}function Beo(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var I=e.indexOf(` +`);return I=I!==-1?I:e.length,r.lastIndex=I,W2n(e.slice(0,I),t)}(),a=e[0]===` `||e[0]===" ",o,l;l=r.exec(e);){var A=l[1],f=l[2];o=f[0]===" ",n+=A+(!a&&!o&&f!==""?` -`:"")+x2n(f,t),a=o}return n}function x2n(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,a=0,o,l=0,A=0,f="";n=r.exec(e);)A=n.index,A-a>t&&(o=l>a?l:A,f+=` +`:"")+W2n(f,t),a=o}return n}function W2n(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,a=0,o,l=0,A=0,f="";n=r.exec(e);)A=n.index,A-a>t&&(o=l>a?l:A,f+=` `+e.slice(a,o),a=o+1),l=A;return f+=` `,e.length-a>t&&l>a?f+=e.slice(a,l)+` -`+e.slice(l+1):f+=e.slice(a),f.slice(1)}function geo(e){for(var t="",r,n,a,o=0;o=55296&&r<=56319&&(n=e.charCodeAt(o+1),n>=56320&&n<=57343)){t+=T2n((r-55296)*1024+n-56320+65536),o++;continue}a=aG[r],t+=!a&&wSe(r)?e[o]:a||T2n(r)}return t}function Aeo(e,t,r){var n="",a=e.tag,o,l;for(o=0,l=r.length;o1024&&(C+="? "),C+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Tfe(e,t,I,!1,!1)&&(C+=e.dump,n+=C));e.tag=a,e.dump="{"+n+"}"}function feo(e,t,r,n){var a="",o=e.tag,l=Object.keys(r),A,f,I,C,b,E;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new r3e("sortKeys must be a boolean or a function");for(A=0,f=l.length;A1024,b&&(e.dump&&e3e===e.dump.charCodeAt(0)?E+="?":E+="? "),E+=e.dump,b&&(E+=I6t(e,t)),Tfe(e,t+1,C,!0,b)&&(e.dump&&e3e===e.dump.charCodeAt(0)?E+=":":E+=": ",E+=e.dump,a+=E));e.tag=o,e.dump=a||"{}"}function G2n(e,t,r){var n,a,o,l,A,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,l=a.length;o tag resolver accepts not "'+f+'" style');e.dump=n}return!0}return!1}function Tfe(e,t,r,n,a,o){e.tag=null,e.dump=r,G2n(e,r,!1)||G2n(e,r,!0);var l=F2n.call(e.dump);n&&(n=e.flowLevel<0||e.flowLevel>t);var A=l==="[object Object]"||l==="[object Array]",f,I;if(A&&(f=e.duplicates.indexOf(r),I=f!==-1),(e.tag!==null&&e.tag!=="?"||I||e.indent!==2&&t>0)&&(a=!1),I&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(A&&I&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(feo(e,t,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(peo(e,t,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump));else if(l==="[object Array]"){var C=e.noArrayIndent&&t>0?t-1:t;n&&e.dump.length!==0?(deo(e,C,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(Aeo(e,C,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump))}else if(l==="[object String]")e.tag!=="?"&&leo(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new r3e("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function Ieo(e,t){var r=[],n=[],a,o;for(h6t(e,r,n),a=0,o=n.length;a{"use strict";var Jct=w2n(),z2n=j2n();function Uct(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}Fv.exports.Type=ER();Fv.exports.Schema=Sfe();Fv.exports.FAILSAFE_SCHEMA=Wct();Fv.exports.JSON_SCHEMA=u6t();Fv.exports.CORE_SCHEMA=g6t();Fv.exports.DEFAULT_SAFE_SCHEMA=ESe();Fv.exports.DEFAULT_FULL_SCHEMA=qOe();Fv.exports.load=Jct.load;Fv.exports.loadAll=Jct.loadAll;Fv.exports.safeLoad=Jct.safeLoad;Fv.exports.safeLoadAll=Jct.safeLoadAll;Fv.exports.dump=z2n.dump;Fv.exports.safeDump=z2n.safeDump;Fv.exports.YAMLException=ySe();Fv.exports.MINIMAL_SCHEMA=Wct();Fv.exports.SAFE_SCHEMA=ESe();Fv.exports.DEFAULT_SCHEMA=qOe();Fv.exports.scan=Uct("scan");Fv.exports.parse=Uct("parse");Fv.exports.compose=Uct("compose");Fv.exports.addConstructor=Uct("addConstructor")});var eSn=H((E5l,$2n)=>{"use strict";var meo=q2n();$2n.exports=meo});var rSn=H((S5l,tSn)=>{"use strict";function Ceo(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Rfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Rfe)}Ceo(Rfe,Error);Rfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b({[aa]:di})))},fe=function(Dr){return Dr},ue=function(Dr){return Dr},de=Gs("correct indentation"),be=" ",Se=Ki(" ",!1),De=function(Dr){return Dr.length===Ml*Ea},k=function(Dr){return Dr.length===(Ml+1)*Ea},et=function(){return Ml++,!0},ct=function(){return Ml--,!0},Me=function(){return Uf()},je=Gs("pseudostring"),St=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,At=cc(["\r",` +`+e.slice(l+1):f+=e.slice(a),f.slice(1)}function weo(e){for(var t="",r,n,a,o=0;o=55296&&r<=56319&&(n=e.charCodeAt(o+1),n>=56320&&n<=57343)){t+=F2n((r-55296)*1024+n-56320+65536),o++;continue}a=aG[r],t+=!a&&TSe(r)?e[o]:a||F2n(r)}return t}function Teo(e,t,r){var n="",a=e.tag,o,l;for(o=0,l=r.length;o1024&&(C+="? "),C+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Rfe(e,t,I,!1,!1)&&(C+=e.dump,n+=C));e.tag=a,e.dump="{"+n+"}"}function Deo(e,t,r,n){var a="",o=e.tag,l=Object.keys(r),A,f,I,C,b,E;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new i3e("sortKeys must be a boolean or a function");for(A=0,f=l.length;A1024,b&&(e.dump&&r3e===e.dump.charCodeAt(0)?E+="?":E+="? "),E+=e.dump,b&&(E+=_6t(e,t)),Rfe(e,t+1,C,!0,b)&&(e.dump&&r3e===e.dump.charCodeAt(0)?E+=":":E+=": ",E+=e.dump,a+=E));e.tag=o,e.dump=a||"{}"}function O2n(e,t,r){var n,a,o,l,A,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,l=a.length;o tag resolver accepts not "'+f+'" style');e.dump=n}return!0}return!1}function Rfe(e,t,r,n,a,o){e.tag=null,e.dump=r,O2n(e,r,!1)||O2n(e,r,!0);var l=M2n.call(e.dump);n&&(n=e.flowLevel<0||e.flowLevel>t);var A=l==="[object Object]"||l==="[object Array]",f,I;if(A&&(f=e.duplicates.indexOf(r),I=f!==-1),(e.tag!==null&&e.tag!=="?"||I||e.indent!==2&&t>0)&&(a=!1),I&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(A&&I&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(Deo(e,t,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(Neo(e,t,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump));else if(l==="[object Array]"){var C=e.noArrayIndent&&t>0?t-1:t;n&&e.dump.length!==0?(Reo(e,C,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(Teo(e,C,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump))}else if(l==="[object String]")e.tag!=="?"&&veo(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new i3e("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function keo(e,t){var r=[],n=[],a,o;for(y6t(e,r,n),a=0,o=n.length;a{"use strict";var Kct=G2n(),iSn=nSn();function jct(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}Fv.exports.Type=ER();Fv.exports.Schema=vfe();Fv.exports.FAILSAFE_SCHEMA=Mct();Fv.exports.JSON_SCHEMA=p6t();Fv.exports.CORE_SCHEMA=f6t();Fv.exports.DEFAULT_SAFE_SCHEMA=SSe();Fv.exports.DEFAULT_FULL_SCHEMA=e3e();Fv.exports.load=Kct.load;Fv.exports.loadAll=Kct.loadAll;Fv.exports.safeLoad=Kct.safeLoad;Fv.exports.safeLoadAll=Kct.safeLoadAll;Fv.exports.dump=iSn.dump;Fv.exports.safeDump=iSn.safeDump;Fv.exports.YAMLException=bSe();Fv.exports.MINIMAL_SCHEMA=Mct();Fv.exports.SAFE_SCHEMA=SSe();Fv.exports.DEFAULT_SCHEMA=e3e();Fv.exports.scan=jct("scan");Fv.exports.parse=jct("parse");Fv.exports.compose=jct("compose");Fv.exports.addConstructor=jct("addConstructor")});var aSn=H((fMl,oSn)=>{"use strict";var Geo=sSn();oSn.exports=Geo});var lSn=H((IMl,cSn)=>{"use strict";function Feo(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Nfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Nfe)}Feo(Nfe,Error);Nfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b({[aa]:di})))},fe=function(Dr){return Dr},ue=function(Dr){return Dr},de=Gs("correct indentation"),be=" ",Se=Ki(" ",!1),De=function(Dr){return Dr.length===Ml*Ea},k=function(Dr){return Dr.length===(Ml+1)*Ea},et=function(){return Ml++,!0},ct=function(){return Ml--,!0},Me=function(){return Uf()},je=Gs("pseudostring"),St=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,At=cc(["\r",` `," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Yt=/^[^\r\n\t ,\][{}:#"']/,Tr=cc(["\r",` `," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Nr=function(){return Uf().replace(/^ *| *$/g,"")},er="--",vt=Ki("--",!1),xt=/^[a-zA-Z\/0-9]/,Zr=cc([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),qt=/^[^\r\n\t :,]/,Xt=cc(["\r",` `," "," ",":",","],!0,!1),lr="null",cr=Ki("null",!1),Ar=function(){return null},qr="true",_n=Ki("true",!1),ke=function(){return!0},jt="false",Fn=Ki("false",!1),Nn=function(){return!1},Hi=Gs("string"),po='"',Vr=Ki('"',!1),xi=function(){return""},io=function(Dr){return Dr},ga=function(Dr){return Dr.join("")},Ya=/^[^"\\\0-\x1F\x7F]/,Gc=cc(['"',"\\",["\0",""],"\x7F"],!0,!1),cl='\\"',Sc=Ki('\\"',!1),Hr=function(){return'"'},Wr="\\\\",Ft=Ki("\\\\",!1),zr=function(){return"\\"},Rn="\\/",Or=Ki("\\/",!1),Qi=function(){return"/"},ps="\\b",yo=Ki("\\b",!1),bo=function(){return"\b"},Qa="\\f",gc=Ki("\\f",!1),Cg=function(){return"\f"},Nc="\\n",iA=Ki("\\n",!1),ma=function(){return` @@ -137,33 +137,33 @@ ${t.map(r=>` `,Wt=Ki(`\r `,!1),Hu=` `,Ru=Ki(` -`,!1),Vs="\r",Ju=Ki("\r",!1),Yn=0,Ko=0,Eg=[{line:1,column:1}],OA=0,GA=[],$i=0,dl;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Uf(){return e.substring(Ko,Yn)}function Kd(){return Dc(Ko,Yn)}function oA(Dr,Wn){throw Wn=Wn!==void 0?Wn:Dc(Ko,Yn),cm([Gs(Dr)],e.substring(Ko,Yn),Wn)}function oo(Dr,Wn){throw Wn=Wn!==void 0?Wn:Dc(Ko,Yn),Tf(Dr,Wn)}function Ki(Dr,Wn){return{type:"literal",text:Dr,ignoreCase:Wn}}function cc(Dr,Wn,di){return{type:"class",parts:Dr,inverted:Wn,ignoreCase:di}}function Xs(){return{type:"any"}}function ws(){return{type:"end"}}function Gs(Dr){return{type:"other",description:Dr}}function Ma(Dr){var Wn=Eg[Dr],di;if(Wn)return Wn;for(di=Dr-1;!Eg[di];)di--;for(Wn=Eg[di],Wn={line:Wn.line,column:Wn.column};diOA&&(OA=Yn,GA=[]),GA.push(Dr))}function Tf(Dr,Wn){return new Rfe(Dr,null,null,Wn)}function cm(Dr,Wn,di){return new Rfe(Rfe.buildMessage(Dr,Wn),Dr,Wn,di)}function Fl(){var Dr;return Dr=Om(),Dr}function rc(){var Dr,Wn,di;for(Dr=Yn,Wn=[],di=sd();di!==r;)Wn.push(di),di=sd();return Wn!==r&&(Ko=Dr,Wn=o(Wn)),Dr=Wn,Dr}function sd(){var Dr,Wn,di,aa,Bo;return Dr=Yn,Wn=ZA(),Wn!==r?(e.charCodeAt(Yn)===45?(di=l,Yn++):(di=r,$i===0&&As(A)),di!==r?(aa=HA(),aa!==r?(Bo=FA(),Bo!==r?(Ko=Dr,Wn=f(Bo),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function Om(){var Dr,Wn,di;for(Dr=Yn,Wn=[],di=il();di!==r;)Wn.push(di),di=il();return Wn!==r&&(Ko=Dr,Wn=I(Wn)),Dr=Wn,Dr}function il(){var Dr,Wn,di,aa,Bo,us,Ql,LA,pf;if(Dr=Yn,Wn=HA(),Wn===r&&(Wn=null),Wn!==r){if(di=Yn,e.charCodeAt(Yn)===35?(aa=C,Yn++):(aa=r,$i===0&&As(b)),aa!==r){if(Bo=[],us=Yn,Ql=Yn,$i++,LA=so(),$i--,LA===r?Ql=void 0:(Yn=Ql,Ql=r),Ql!==r?(e.length>Yn?(LA=e.charAt(Yn),Yn++):(LA=r,$i===0&&As(E)),LA!==r?(Ql=[Ql,LA],us=Ql):(Yn=us,us=r)):(Yn=us,us=r),us!==r)for(;us!==r;)Bo.push(us),us=Yn,Ql=Yn,$i++,LA=so(),$i--,LA===r?Ql=void 0:(Yn=Ql,Ql=r),Ql!==r?(e.length>Yn?(LA=e.charAt(Yn),Yn++):(LA=r,$i===0&&As(E)),LA!==r?(Ql=[Ql,LA],us=Ql):(Yn=us,us=r)):(Yn=us,us=r);else Bo=r;Bo!==r?(aa=[aa,Bo],di=aa):(Yn=di,di=r)}else Yn=di,di=r;if(di===r&&(di=null),di!==r){if(aa=[],Bo=Zs(),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Zs();else aa=r;aa!==r?(Ko=Dr,Wn=N(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r}else Yn=Dr,Dr=r;if(Dr===r&&(Dr=Yn,Wn=ZA(),Wn!==r?(di=MA(),di!==r?(aa=HA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=HA(),us===r&&(us=null),us!==r?(Ql=FA(),Ql!==r?(Ko=Dr,Wn=Q(di,Ql),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,Wn=ZA(),Wn!==r?(di=Er(),di!==r?(aa=HA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=HA(),us===r&&(us=null),us!==r?(Ql=FA(),Ql!==r?(Ko=Dr,Wn=Q(di,Ql),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))){if(Dr=Yn,Wn=ZA(),Wn!==r)if(di=Er(),di!==r)if(aa=HA(),aa!==r)if(Bo=yn(),Bo!==r){if(us=[],Ql=Zs(),Ql!==r)for(;Ql!==r;)us.push(Ql),Ql=Zs();else us=r;us!==r?(Ko=Dr,Wn=Q(di,Bo),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;if(Dr===r)if(Dr=Yn,Wn=ZA(),Wn!==r)if(di=Er(),di!==r){if(aa=[],Bo=Yn,us=HA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Ql=X,Yn++):(Ql=r,$i===0&&As(ae)),Ql!==r?(LA=HA(),LA===r&&(LA=null),LA!==r?(pf=Er(),pf!==r?(Ko=Bo,us=ne(di,pf),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Yn,us=HA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Ql=X,Yn++):(Ql=r,$i===0&&As(ae)),Ql!==r?(LA=HA(),LA===r&&(LA=null),LA!==r?(pf=Er(),pf!==r?(Ko=Bo,us=ne(di,pf),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r);else aa=r;aa!==r?(Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(e.charCodeAt(Yn)===58?(us=B,Yn++):(us=r,$i===0&&As(F)),us!==r?(Ql=HA(),Ql===r&&(Ql=null),Ql!==r?(LA=FA(),LA!==r?(Ko=Dr,Wn=ce(di,aa,LA),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r}return Dr}function FA(){var Dr,Wn,di,aa,Bo,us,Ql;if(Dr=Yn,Wn=Yn,$i++,di=Yn,aa=so(),aa!==r?(Bo=El(),Bo!==r?(e.charCodeAt(Yn)===45?(us=l,Yn++):(us=r,$i===0&&As(A)),us!==r?(Ql=HA(),Ql!==r?(aa=[aa,Bo,us,Ql],di=aa):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r),$i--,di!==r?(Yn=Wn,Wn=void 0):Wn=r,Wn!==r?(di=Zs(),di!==r?(aa=yg(),aa!==r?(Bo=rc(),Bo!==r?(us=Mp(),us!==r?(Ko=Dr,Wn=fe(Bo),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,Wn=so(),Wn!==r?(di=yg(),di!==r?(aa=Om(),aa!==r?(Bo=Mp(),Bo!==r?(Ko=Dr,Wn=fe(aa),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))if(Dr=Yn,Wn=Zt(),Wn!==r){if(di=[],aa=Zs(),aa!==r)for(;aa!==r;)di.push(aa),aa=Zs();else di=r;di!==r?(Ko=Dr,Wn=ue(Wn),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function ZA(){var Dr,Wn,di;for($i++,Dr=Yn,Wn=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)Wn.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return Wn!==r?(Ko=Yn,di=De(Wn),di?di=void 0:di=r,di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),$i--,Dr===r&&(Wn=r,$i===0&&As(de)),Dr}function El(){var Dr,Wn,di;for(Dr=Yn,Wn=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)Wn.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return Wn!==r?(Ko=Yn,di=k(Wn),di?di=void 0:di=r,di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function yg(){var Dr;return Ko=Yn,Dr=et(),Dr?Dr=void 0:Dr=r,Dr}function Mp(){var Dr;return Ko=Yn,Dr=ct(),Dr?Dr=void 0:Dr=r,Dr}function MA(){var Dr;return Dr=Ca(),Dr===r&&(Dr=ls()),Dr}function Er(){var Dr,Wn,di;if(Dr=Ca(),Dr===r){if(Dr=Yn,Wn=[],di=oa(),di!==r)for(;di!==r;)Wn.push(di),di=oa();else Wn=r;Wn!==r&&(Ko=Dr,Wn=Me()),Dr=Wn}return Dr}function Zt(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Wa(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=ls()))),Dr}function yn(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=oa())),Dr}function ls(){var Dr,Wn,di,aa,Bo,us;if($i++,Dr=Yn,St.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(At)),Wn!==r){for(di=[],aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(Yt.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Tr)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(Yt.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Tr)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Ko=Dr,Wn=Nr(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(je)),Dr}function oa(){var Dr,Wn,di,aa,Bo;if(Dr=Yn,e.substr(Yn,2)===er?(Wn=er,Yn+=2):(Wn=r,$i===0&&As(vt)),Wn===r&&(Wn=null),Wn!==r)if(xt.test(e.charAt(Yn))?(di=e.charAt(Yn),Yn++):(di=r,$i===0&&As(Zr)),di!==r){for(aa=[],qt.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));Bo!==r;)aa.push(Bo),qt.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));aa!==r?(Ko=Dr,Wn=Nr(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;return Dr}function Fs(){var Dr,Wn;return Dr=Yn,e.substr(Yn,4)===lr?(Wn=lr,Yn+=4):(Wn=r,$i===0&&As(cr)),Wn!==r&&(Ko=Dr,Wn=Ar()),Dr=Wn,Dr}function Wa(){var Dr,Wn;return Dr=Yn,e.substr(Yn,4)===qr?(Wn=qr,Yn+=4):(Wn=r,$i===0&&As(_n)),Wn!==r&&(Ko=Dr,Wn=ke()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,5)===jt?(Wn=jt,Yn+=5):(Wn=r,$i===0&&As(Fn)),Wn!==r&&(Ko=Dr,Wn=Nn()),Dr=Wn),Dr}function Ca(){var Dr,Wn,di,aa;return $i++,Dr=Yn,e.charCodeAt(Yn)===34?(Wn=po,Yn++):(Wn=r,$i===0&&As(Vr)),Wn!==r?(e.charCodeAt(Yn)===34?(di=po,Yn++):(di=r,$i===0&&As(Vr)),di!==r?(Ko=Dr,Wn=xi(),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,e.charCodeAt(Yn)===34?(Wn=po,Yn++):(Wn=r,$i===0&&As(Vr)),Wn!==r?(di=ld(),di!==r?(e.charCodeAt(Yn)===34?(aa=po,Yn++):(aa=r,$i===0&&As(Vr)),aa!==r?(Ko=Dr,Wn=io(di),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)),$i--,Dr===r&&(Wn=r,$i===0&&As(Hi)),Dr}function ld(){var Dr,Wn,di;if(Dr=Yn,Wn=[],di=Rp(),di!==r)for(;di!==r;)Wn.push(di),di=Rp();else Wn=r;return Wn!==r&&(Ko=Dr,Wn=ga(Wn)),Dr=Wn,Dr}function Rp(){var Dr,Wn,di,aa,Bo,us;return Ya.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Gc)),Dr===r&&(Dr=Yn,e.substr(Yn,2)===cl?(Wn=cl,Yn+=2):(Wn=r,$i===0&&As(Sc)),Wn!==r&&(Ko=Dr,Wn=Hr()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Wr?(Wn=Wr,Yn+=2):(Wn=r,$i===0&&As(Ft)),Wn!==r&&(Ko=Dr,Wn=zr()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Rn?(Wn=Rn,Yn+=2):(Wn=r,$i===0&&As(Or)),Wn!==r&&(Ko=Dr,Wn=Qi()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===ps?(Wn=ps,Yn+=2):(Wn=r,$i===0&&As(yo)),Wn!==r&&(Ko=Dr,Wn=bo()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Qa?(Wn=Qa,Yn+=2):(Wn=r,$i===0&&As(gc)),Wn!==r&&(Ko=Dr,Wn=Cg()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Nc?(Wn=Nc,Yn+=2):(Wn=r,$i===0&&As(iA)),Wn!==r&&(Ko=Dr,Wn=ma()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===vu?(Wn=vu,Yn+=2):(Wn=r,$i===0&&As(li)),Wn!==r&&(Ko=Dr,Wn=Ei()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ps?(Wn=Ps,Yn+=2):(Wn=r,$i===0&&As(Xa)),Wn!==r&&(Ko=Dr,Wn=ac()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Yl?(Wn=Yl,Yn+=2):(Wn=r,$i===0&&As(Wc)),Wn!==r?(di=np(),di!==r?(aa=np(),aa!==r?(Bo=np(),Bo!==r?(us=np(),us!==r?(Ko=Dr,Wn=Sg(di,aa,Bo,us),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)))))))))),Dr}function np(){var Dr;return Ul.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Xu)),Dr}function HA(){var Dr,Wn;if($i++,Dr=[],pu.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(_g)),Wn!==r)for(;Wn!==r;)Dr.push(Wn),pu.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(_g));else Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(Da)),Dr}function df(){var Dr,Wn;if($i++,Dr=[],Qh.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(Ri)),Wn!==r)for(;Wn!==r;)Dr.push(Wn),Qh.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(Ri));else Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(mI)),Dr}function Zs(){var Dr,Wn,di,aa,Bo,us;if(Dr=Yn,Wn=so(),Wn!==r){for(di=[],aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(us=so(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(us=so(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function so(){var Dr;return e.substr(Yn,2)===Do?(Dr=Do,Yn+=2):(Dr=r,$i===0&&As(Wt)),Dr===r&&(e.charCodeAt(Yn)===10?(Dr=Hu,Yn++):(Dr=r,$i===0&&As(Ru)),Dr===r&&(e.charCodeAt(Yn)===13?(Dr=Vs,Yn++):(Dr=r,$i===0&&As(Ju)))),Dr}let Ea=2,Ml=0;if(dl=a(),dl!==r&&Yn===e.length)return dl;throw dl!==r&&Yn{"use strict";Object.defineProperty(TSe,"__esModule",{value:!0});TSe.PreserveOrdering=void 0;TSe.stringifySyml=aSn;TSe.parseSyml=Beo;var nSn=eSn(),yeo=rSn(),beo=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,iSn=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],n3e=class{constructor(t){this.data=t}};TSe.PreserveOrdering=n3e;function sSn(e){return e.match(beo)?e:JSON.stringify(e)}function oSn(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>oSn(e[t])):!1}function _6t(e,t,r){if(e===null)return`null +`,!1),Vs="\r",Ju=Ki("\r",!1),Yn=0,Ko=0,Eg=[{line:1,column:1}],OA=0,GA=[],$i=0,dl;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Uf(){return e.substring(Ko,Yn)}function Kd(){return Dc(Ko,Yn)}function oA(Dr,Wn){throw Wn=Wn!==void 0?Wn:Dc(Ko,Yn),cm([Gs(Dr)],e.substring(Ko,Yn),Wn)}function oo(Dr,Wn){throw Wn=Wn!==void 0?Wn:Dc(Ko,Yn),Tf(Dr,Wn)}function Ki(Dr,Wn){return{type:"literal",text:Dr,ignoreCase:Wn}}function cc(Dr,Wn,di){return{type:"class",parts:Dr,inverted:Wn,ignoreCase:di}}function Xs(){return{type:"any"}}function ws(){return{type:"end"}}function Gs(Dr){return{type:"other",description:Dr}}function Ma(Dr){var Wn=Eg[Dr],di;if(Wn)return Wn;for(di=Dr-1;!Eg[di];)di--;for(Wn=Eg[di],Wn={line:Wn.line,column:Wn.column};diOA&&(OA=Yn,GA=[]),GA.push(Dr))}function Tf(Dr,Wn){return new Nfe(Dr,null,null,Wn)}function cm(Dr,Wn,di){return new Nfe(Nfe.buildMessage(Dr,Wn),Dr,Wn,di)}function Fl(){var Dr;return Dr=Om(),Dr}function rc(){var Dr,Wn,di;for(Dr=Yn,Wn=[],di=sd();di!==r;)Wn.push(di),di=sd();return Wn!==r&&(Ko=Dr,Wn=o(Wn)),Dr=Wn,Dr}function sd(){var Dr,Wn,di,aa,Bo;return Dr=Yn,Wn=ZA(),Wn!==r?(e.charCodeAt(Yn)===45?(di=l,Yn++):(di=r,$i===0&&As(A)),di!==r?(aa=HA(),aa!==r?(Bo=FA(),Bo!==r?(Ko=Dr,Wn=f(Bo),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function Om(){var Dr,Wn,di;for(Dr=Yn,Wn=[],di=il();di!==r;)Wn.push(di),di=il();return Wn!==r&&(Ko=Dr,Wn=I(Wn)),Dr=Wn,Dr}function il(){var Dr,Wn,di,aa,Bo,us,Ql,LA,pf;if(Dr=Yn,Wn=HA(),Wn===r&&(Wn=null),Wn!==r){if(di=Yn,e.charCodeAt(Yn)===35?(aa=C,Yn++):(aa=r,$i===0&&As(b)),aa!==r){if(Bo=[],us=Yn,Ql=Yn,$i++,LA=so(),$i--,LA===r?Ql=void 0:(Yn=Ql,Ql=r),Ql!==r?(e.length>Yn?(LA=e.charAt(Yn),Yn++):(LA=r,$i===0&&As(E)),LA!==r?(Ql=[Ql,LA],us=Ql):(Yn=us,us=r)):(Yn=us,us=r),us!==r)for(;us!==r;)Bo.push(us),us=Yn,Ql=Yn,$i++,LA=so(),$i--,LA===r?Ql=void 0:(Yn=Ql,Ql=r),Ql!==r?(e.length>Yn?(LA=e.charAt(Yn),Yn++):(LA=r,$i===0&&As(E)),LA!==r?(Ql=[Ql,LA],us=Ql):(Yn=us,us=r)):(Yn=us,us=r);else Bo=r;Bo!==r?(aa=[aa,Bo],di=aa):(Yn=di,di=r)}else Yn=di,di=r;if(di===r&&(di=null),di!==r){if(aa=[],Bo=Zs(),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Zs();else aa=r;aa!==r?(Ko=Dr,Wn=N(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r}else Yn=Dr,Dr=r;if(Dr===r&&(Dr=Yn,Wn=ZA(),Wn!==r?(di=MA(),di!==r?(aa=HA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=HA(),us===r&&(us=null),us!==r?(Ql=FA(),Ql!==r?(Ko=Dr,Wn=Q(di,Ql),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,Wn=ZA(),Wn!==r?(di=Er(),di!==r?(aa=HA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=HA(),us===r&&(us=null),us!==r?(Ql=FA(),Ql!==r?(Ko=Dr,Wn=Q(di,Ql),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))){if(Dr=Yn,Wn=ZA(),Wn!==r)if(di=Er(),di!==r)if(aa=HA(),aa!==r)if(Bo=bn(),Bo!==r){if(us=[],Ql=Zs(),Ql!==r)for(;Ql!==r;)us.push(Ql),Ql=Zs();else us=r;us!==r?(Ko=Dr,Wn=Q(di,Bo),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;if(Dr===r)if(Dr=Yn,Wn=ZA(),Wn!==r)if(di=Er(),di!==r){if(aa=[],Bo=Yn,us=HA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Ql=X,Yn++):(Ql=r,$i===0&&As(ae)),Ql!==r?(LA=HA(),LA===r&&(LA=null),LA!==r?(pf=Er(),pf!==r?(Ko=Bo,us=ne(di,pf),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Yn,us=HA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Ql=X,Yn++):(Ql=r,$i===0&&As(ae)),Ql!==r?(LA=HA(),LA===r&&(LA=null),LA!==r?(pf=Er(),pf!==r?(Ko=Bo,us=ne(di,pf),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r);else aa=r;aa!==r?(Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(e.charCodeAt(Yn)===58?(us=B,Yn++):(us=r,$i===0&&As(F)),us!==r?(Ql=HA(),Ql===r&&(Ql=null),Ql!==r?(LA=FA(),LA!==r?(Ko=Dr,Wn=ce(di,aa,LA),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r}return Dr}function FA(){var Dr,Wn,di,aa,Bo,us,Ql;if(Dr=Yn,Wn=Yn,$i++,di=Yn,aa=so(),aa!==r?(Bo=El(),Bo!==r?(e.charCodeAt(Yn)===45?(us=l,Yn++):(us=r,$i===0&&As(A)),us!==r?(Ql=HA(),Ql!==r?(aa=[aa,Bo,us,Ql],di=aa):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r),$i--,di!==r?(Yn=Wn,Wn=void 0):Wn=r,Wn!==r?(di=Zs(),di!==r?(aa=yg(),aa!==r?(Bo=rc(),Bo!==r?(us=Mp(),us!==r?(Ko=Dr,Wn=fe(Bo),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,Wn=so(),Wn!==r?(di=yg(),di!==r?(aa=Om(),aa!==r?(Bo=Mp(),Bo!==r?(Ko=Dr,Wn=fe(aa),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))if(Dr=Yn,Wn=Zt(),Wn!==r){if(di=[],aa=Zs(),aa!==r)for(;aa!==r;)di.push(aa),aa=Zs();else di=r;di!==r?(Ko=Dr,Wn=ue(Wn),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function ZA(){var Dr,Wn,di;for($i++,Dr=Yn,Wn=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)Wn.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return Wn!==r?(Ko=Yn,di=De(Wn),di?di=void 0:di=r,di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),$i--,Dr===r&&(Wn=r,$i===0&&As(de)),Dr}function El(){var Dr,Wn,di;for(Dr=Yn,Wn=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)Wn.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return Wn!==r?(Ko=Yn,di=k(Wn),di?di=void 0:di=r,di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function yg(){var Dr;return Ko=Yn,Dr=et(),Dr?Dr=void 0:Dr=r,Dr}function Mp(){var Dr;return Ko=Yn,Dr=ct(),Dr?Dr=void 0:Dr=r,Dr}function MA(){var Dr;return Dr=Ca(),Dr===r&&(Dr=ls()),Dr}function Er(){var Dr,Wn,di;if(Dr=Ca(),Dr===r){if(Dr=Yn,Wn=[],di=oa(),di!==r)for(;di!==r;)Wn.push(di),di=oa();else Wn=r;Wn!==r&&(Ko=Dr,Wn=Me()),Dr=Wn}return Dr}function Zt(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Wa(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=ls()))),Dr}function bn(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=oa())),Dr}function ls(){var Dr,Wn,di,aa,Bo,us;if($i++,Dr=Yn,St.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(At)),Wn!==r){for(di=[],aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(Yt.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Tr)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(Yt.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Tr)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Ko=Dr,Wn=Nr(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(je)),Dr}function oa(){var Dr,Wn,di,aa,Bo;if(Dr=Yn,e.substr(Yn,2)===er?(Wn=er,Yn+=2):(Wn=r,$i===0&&As(vt)),Wn===r&&(Wn=null),Wn!==r)if(xt.test(e.charAt(Yn))?(di=e.charAt(Yn),Yn++):(di=r,$i===0&&As(Zr)),di!==r){for(aa=[],qt.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));Bo!==r;)aa.push(Bo),qt.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));aa!==r?(Ko=Dr,Wn=Nr(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;return Dr}function Fs(){var Dr,Wn;return Dr=Yn,e.substr(Yn,4)===lr?(Wn=lr,Yn+=4):(Wn=r,$i===0&&As(cr)),Wn!==r&&(Ko=Dr,Wn=Ar()),Dr=Wn,Dr}function Wa(){var Dr,Wn;return Dr=Yn,e.substr(Yn,4)===qr?(Wn=qr,Yn+=4):(Wn=r,$i===0&&As(_n)),Wn!==r&&(Ko=Dr,Wn=ke()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,5)===jt?(Wn=jt,Yn+=5):(Wn=r,$i===0&&As(Fn)),Wn!==r&&(Ko=Dr,Wn=Nn()),Dr=Wn),Dr}function Ca(){var Dr,Wn,di,aa;return $i++,Dr=Yn,e.charCodeAt(Yn)===34?(Wn=po,Yn++):(Wn=r,$i===0&&As(Vr)),Wn!==r?(e.charCodeAt(Yn)===34?(di=po,Yn++):(di=r,$i===0&&As(Vr)),di!==r?(Ko=Dr,Wn=xi(),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,e.charCodeAt(Yn)===34?(Wn=po,Yn++):(Wn=r,$i===0&&As(Vr)),Wn!==r?(di=ld(),di!==r?(e.charCodeAt(Yn)===34?(aa=po,Yn++):(aa=r,$i===0&&As(Vr)),aa!==r?(Ko=Dr,Wn=io(di),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)),$i--,Dr===r&&(Wn=r,$i===0&&As(Hi)),Dr}function ld(){var Dr,Wn,di;if(Dr=Yn,Wn=[],di=Rp(),di!==r)for(;di!==r;)Wn.push(di),di=Rp();else Wn=r;return Wn!==r&&(Ko=Dr,Wn=ga(Wn)),Dr=Wn,Dr}function Rp(){var Dr,Wn,di,aa,Bo,us;return Ya.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Gc)),Dr===r&&(Dr=Yn,e.substr(Yn,2)===cl?(Wn=cl,Yn+=2):(Wn=r,$i===0&&As(Sc)),Wn!==r&&(Ko=Dr,Wn=Hr()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Wr?(Wn=Wr,Yn+=2):(Wn=r,$i===0&&As(Ft)),Wn!==r&&(Ko=Dr,Wn=zr()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Rn?(Wn=Rn,Yn+=2):(Wn=r,$i===0&&As(Or)),Wn!==r&&(Ko=Dr,Wn=Qi()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===ps?(Wn=ps,Yn+=2):(Wn=r,$i===0&&As(yo)),Wn!==r&&(Ko=Dr,Wn=bo()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Qa?(Wn=Qa,Yn+=2):(Wn=r,$i===0&&As(gc)),Wn!==r&&(Ko=Dr,Wn=Cg()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Nc?(Wn=Nc,Yn+=2):(Wn=r,$i===0&&As(iA)),Wn!==r&&(Ko=Dr,Wn=ma()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===vu?(Wn=vu,Yn+=2):(Wn=r,$i===0&&As(li)),Wn!==r&&(Ko=Dr,Wn=Ei()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ps?(Wn=Ps,Yn+=2):(Wn=r,$i===0&&As(Xa)),Wn!==r&&(Ko=Dr,Wn=ac()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Yl?(Wn=Yl,Yn+=2):(Wn=r,$i===0&&As(Wc)),Wn!==r?(di=np(),di!==r?(aa=np(),aa!==r?(Bo=np(),Bo!==r?(us=np(),us!==r?(Ko=Dr,Wn=Sg(di,aa,Bo,us),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)))))))))),Dr}function np(){var Dr;return Ul.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Xu)),Dr}function HA(){var Dr,Wn;if($i++,Dr=[],pu.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(_g)),Wn!==r)for(;Wn!==r;)Dr.push(Wn),pu.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(_g));else Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(Da)),Dr}function df(){var Dr,Wn;if($i++,Dr=[],Qh.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(Ri)),Wn!==r)for(;Wn!==r;)Dr.push(Wn),Qh.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(Ri));else Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(mI)),Dr}function Zs(){var Dr,Wn,di,aa,Bo,us;if(Dr=Yn,Wn=so(),Wn!==r){for(di=[],aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(us=so(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(us=so(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function so(){var Dr;return e.substr(Yn,2)===Do?(Dr=Do,Yn+=2):(Dr=r,$i===0&&As(Wt)),Dr===r&&(e.charCodeAt(Yn)===10?(Dr=Hu,Yn++):(Dr=r,$i===0&&As(Ru)),Dr===r&&(e.charCodeAt(Yn)===13?(Dr=Vs,Yn++):(Dr=r,$i===0&&As(Ju)))),Dr}let Ea=2,Ml=0;if(dl=a(),dl!==r&&Yn===e.length)return dl;throw dl!==r&&Yn{"use strict";Object.defineProperty(RSe,"__esModule",{value:!0});RSe.PreserveOrdering=void 0;RSe.stringifySyml=pSn;RSe.parseSyml=Meo;var uSn=aSn(),Leo=lSn(),Veo=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,gSn=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],s3e=class{constructor(t){this.data=t}};RSe.PreserveOrdering=s3e;function ASn(e){return e.match(Veo)?e:JSON.stringify(e)}function dSn(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>dSn(e[t])):!1}function S6t(e,t,r){if(e===null)return`null `;if(typeof e=="number"||typeof e=="boolean")return`${e.toString()} -`;if(typeof e=="string")return`${sSn(e)} +`;if(typeof e=="string")return`${ASn(e)} `;if(Array.isArray(e)){if(e.length===0)return`[] `;let n=" ".repeat(t);return` -${e.map(o=>`${n}- ${_6t(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[n,a]=e instanceof n3e?[e.data,!1]:[e,!0],o=" ".repeat(t),l=Object.keys(n);a&&l.sort((f,I)=>{let C=iSn.indexOf(f),b=iSn.indexOf(I);return C===-1&&b===-1?fI?1:0:C!==-1&&b===-1?-1:C===-1&&b!==-1?1:C-b});let A=l.filter(f=>!oSn(n[f])).map((f,I)=>{let C=n[f],b=sSn(f),E=_6t(C,t+1,!0),N=I>0||r?o:"",B=b.length>1024?`? ${b} +${e.map(o=>`${n}- ${S6t(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[n,a]=e instanceof s3e?[e.data,!1]:[e,!0],o=" ".repeat(t),l=Object.keys(n);a&&l.sort((f,I)=>{let C=gSn.indexOf(f),b=gSn.indexOf(I);return C===-1&&b===-1?fI?1:0:C!==-1&&b===-1?-1:C===-1&&b!==-1?1:C-b});let A=l.filter(f=>!dSn(n[f])).map((f,I)=>{let C=n[f],b=ASn(f),E=S6t(C,t+1,!0),N=I>0||r?o:"",B=b.length>1024?`? ${b} ${N}:`:`${b}:`,F=E.startsWith(` `)?E:` ${E}`;return`${N}${B}${F}`}).join(t===0?` `:"")||` `;return r?` -${A}`:`${A}`}throw new Error(`Unsupported value type (${e})`)}function aSn(e){try{let t=_6t(e,0,!1);return t!==` -`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}aSn.PreserveOrdering=n3e;function Eeo(e){return e.endsWith(` +${A}`:`${A}`}throw new Error(`Unsupported value type (${e})`)}function pSn(e){try{let t=S6t(e,0,!1);return t!==` +`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}pSn.PreserveOrdering=s3e;function Peo(e){return e.endsWith(` `)||(e+=` -`),(0,yeo.parse)(e)}var Seo=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function veo(e){if(Seo.test(e))return Eeo(e);let t=(0,nSn.safeLoad)(e,{schema:nSn.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function Beo(e){return veo(e)}});var TW=H(ym=>{"use strict";Object.defineProperty(ym,"__esModule",{value:!0});ym.stringifySyml=ym.parseSyml=ym.stringifyResolution=ym.parseResolution=ym.stringifyValueArgument=ym.stringifyShellLine=ym.stringifyRedirectArgument=ym.stringifyEnvSegment=ym.stringifyCommandLineThen=ym.stringifyCommandLine=ym.stringifyCommandChainThen=ym.stringifyCommandChain=ym.stringifyCommand=ym.stringifyArithmeticExpression=ym.stringifyArgumentSegment=ym.stringifyArgument=ym.stringifyShell=ym.parseShell=void 0;var O9=a1n();Object.defineProperty(ym,"parseShell",{enumerable:!0,get:function(){return O9.parseShell}});Object.defineProperty(ym,"stringifyShell",{enumerable:!0,get:function(){return O9.stringifyShell}});Object.defineProperty(ym,"stringifyArgument",{enumerable:!0,get:function(){return O9.stringifyArgument}});Object.defineProperty(ym,"stringifyArgumentSegment",{enumerable:!0,get:function(){return O9.stringifyArgumentSegment}});Object.defineProperty(ym,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return O9.stringifyArithmeticExpression}});Object.defineProperty(ym,"stringifyCommand",{enumerable:!0,get:function(){return O9.stringifyCommand}});Object.defineProperty(ym,"stringifyCommandChain",{enumerable:!0,get:function(){return O9.stringifyCommandChain}});Object.defineProperty(ym,"stringifyCommandChainThen",{enumerable:!0,get:function(){return O9.stringifyCommandChainThen}});Object.defineProperty(ym,"stringifyCommandLine",{enumerable:!0,get:function(){return O9.stringifyCommandLine}});Object.defineProperty(ym,"stringifyCommandLineThen",{enumerable:!0,get:function(){return O9.stringifyCommandLineThen}});Object.defineProperty(ym,"stringifyEnvSegment",{enumerable:!0,get:function(){return O9.stringifyEnvSegment}});Object.defineProperty(ym,"stringifyRedirectArgument",{enumerable:!0,get:function(){return O9.stringifyRedirectArgument}});Object.defineProperty(ym,"stringifyShellLine",{enumerable:!0,get:function(){return O9.stringifyShellLine}});Object.defineProperty(ym,"stringifyValueArgument",{enumerable:!0,get:function(){return O9.stringifyValueArgument}});var lSn=u1n();Object.defineProperty(ym,"parseResolution",{enumerable:!0,get:function(){return lSn.parseResolution}});Object.defineProperty(ym,"stringifyResolution",{enumerable:!0,get:function(){return lSn.stringifyResolution}});var uSn=cSn();Object.defineProperty(ym,"parseSyml",{enumerable:!0,get:function(){return uSn.parseSyml}});Object.defineProperty(ym,"stringifySyml",{enumerable:!0,get:function(){return uSn.stringifySyml}})});var ASn=H((w5l,y6t)=>{"use strict";var weo=e=>{let t=!1,r=!1,n=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=weo(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};y6t.exports=gSn;y6t.exports.default=gSn});var dSn=H((T5l,Teo)=>{Teo.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var Nfe=H(RW=>{"use strict";var fSn=dSn(),SR=process.env;Object.defineProperty(RW,"_vendors",{value:fSn.map(function(e){return e.constant})});RW.name=null;RW.isPR=null;fSn.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(n){return pSn(n)});if(RW[e.constant]=r,!!r)switch(RW.name=e.name,typeof e.pr){case"string":RW.isPR=!!SR[e.pr];break;case"object":"env"in e.pr?RW.isPR=e.pr.env in SR&&SR[e.pr.env]!==e.pr.ne:"any"in e.pr?RW.isPR=e.pr.any.some(function(n){return!!SR[n]}):RW.isPR=pSn(e.pr);break;default:RW.isPR=null}});RW.isCI=!!(SR.CI!=="false"&&(SR.BUILD_ID||SR.BUILD_NUMBER||SR.CI||SR.CI_APP_ID||SR.CI_BUILD_ID||SR.CI_BUILD_NUMBER||SR.CI_NAME||SR.CONTINUOUS_INTEGRATION||SR.RUN_ID||RW.name));function pSn(e){return typeof e=="string"?!!SR[e]:"env"in e?SR[e.env]&&SR[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!SR[t]}):Object.keys(e).every(function(t){return SR[t]===e[t]})}});var ISn=H((N5l,Reo)=>{Reo.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var _Sn=H((D5l,Xq)=>{var b6t=wt("fs"),E6t=wt("path"),Neo=wt("os"),Deo=wt("crypto"),keo=ISn(),S6t=keo.version,xeo=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Geo(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` -`);let n;for(;(n=xeo.exec(r))!=null;){let a=n[1],o=n[2]||"";o=o.trim();let l=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),l==='"'&&(o=o.replace(/\\n/g,` -`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function Feo(e){let t=CSn(e),r=vR.configDotenv({path:t});if(!r.parsed){let l=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw l.code="MISSING_DATA",l}let n=mSn(e).split(","),a=n.length,o;for(let l=0;l=a)throw A}return vR.parse(o)}function Zeo(e){console.log(`[dotenv@${S6t}][INFO] ${e}`)}function Leo(e){console.log(`[dotenv@${S6t}][WARN] ${e}`)}function Kct(e){console.log(`[dotenv@${S6t}][DEBUG] ${e}`)}function mSn(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function Veo(e,t){let r;try{r=new URL(t)}catch(A){if(A.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw A}let n=r.password;if(!n){let A=new Error("INVALID_DOTENV_KEY: Missing key part");throw A.code="INVALID_DOTENV_KEY",A}let a=r.searchParams.get("environment");if(!a){let A=new Error("INVALID_DOTENV_KEY: Missing environment part");throw A.code="INVALID_DOTENV_KEY",A}let o=`DOTENV_VAULT_${a.toUpperCase()}`,l=e.parsed[o];if(!l){let A=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw A.code="NOT_FOUND_DOTENV_ENVIRONMENT",A}return{ciphertext:l,key:n}}function CSn(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)b6t.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=E6t.resolve(process.cwd(),".env.vault");return b6t.existsSync(t)?t:null}function hSn(e){return e[0]==="~"?E6t.join(Neo.homedir(),e.slice(1)):e}function Peo(e){Zeo("Loading env from encrypted .env.vault");let t=vR._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),vR.populate(r,t,e),{parsed:t}}function Weo(e){let t=E6t.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&Kct("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[hSn(e.path)];else{a=[];for(let f of e.path)a.push(hSn(f))}let o,l={};for(let f of a)try{let I=vR.parse(b6t.readFileSync(f,{encoding:r}));vR.populate(l,I,e)}catch(I){n&&Kct(`Failed to load ${f} ${I.message}`),o=I}let A=process.env;return e&&e.processEnv!=null&&(A=e.processEnv),vR.populate(A,l,e),o?{parsed:l,error:o}:{parsed:l}}function Oeo(e){if(mSn(e).length===0)return vR.configDotenv(e);let t=CSn(e);return t?vR._configVault(e):(Leo(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),vR.configDotenv(e))}function Meo(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),a=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let l=Deo.createDecipheriv("aes-256-gcm",r,a);return l.setAuthTag(o),`${l.update(n)}${l.final()}`}catch(l){let A=l instanceof RangeError,f=l.message==="Invalid key length",I=l.message==="Unsupported state or unable to authenticate data";if(A||f){let C=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw C.code="INVALID_DOTENV_KEY",C}else if(I){let C=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw C.code="DECRYPTION_FAILED",C}else throw l}}function Heo(e,t,r={}){let n=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),n&&Kct(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var vR={configDotenv:Weo,_configVault:Peo,_parseVault:Feo,config:Oeo,decrypt:Meo,parse:Geo,populate:Heo};Xq.exports.configDotenv=vR.configDotenv;Xq.exports._configVault=vR._configVault;Xq.exports._parseVault=vR._parseVault;Xq.exports.config=vR.config;Xq.exports.decrypt=vR.decrypt;Xq.exports.parse=vR.parse;Xq.exports.populate=vR.populate;Xq.exports=vR});var bSn=H((k5l,v6t)=>{"use strict";var ySn=(e,...t)=>new Promise(r=>{r(e(...t))});v6t.exports=ySn;v6t.exports.default=ySn});var Dfe=H((x5l,B6t)=>{"use strict";var Yeo=bSn(),ESn=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,n=()=>{r--,t.length>0&&t.shift()()},a=(A,f,...I)=>{r++;let C=Yeo(A,...I);f(C),C.then(n,n)},o=(A,f,...I)=>{rnew Promise(I=>o(A,I,...f));return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),l};B6t.exports=ESn;B6t.exports.default=ESn});var M9=H(RSe=>{"use strict";Object.defineProperty(RSe,"__esModule",{value:!0});RSe.MessageName=void 0;RSe.stringifyMessageName=Qeo;RSe.parseMessageName=Xeo;var w6t;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED",e[e.INVALID_PROVENANCE_ENVIRONMENT=91]="INVALID_PROVENANCE_ENVIRONMENT",e[e.EXPERIMENTAL=92]="EXPERIMENTAL"})(w6t||(RSe.MessageName=w6t={}));function Qeo(e){return`YN${e.toString(10).padStart(4,"0")}`}function Xeo(e){let t=Number(e.slice(2));if(typeof w6t[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var i3e=H((F5l,SSn)=>{var Jeo="2.0.0",Ueo=Number.MAX_SAFE_INTEGER||9007199254740991,Keo=16,jeo=250,zeo=["major","premajor","minor","preminor","patch","prepatch","prerelease"];SSn.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Keo,MAX_SAFE_BUILD_LENGTH:jeo,MAX_SAFE_INTEGER:Ueo,RELEASE_TYPES:zeo,SEMVER_SPEC_VERSION:Jeo,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var s3e=H((Z5l,vSn)=>{var qeo=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};vSn.exports=qeo});var NSe=H((Jq,BSn)=>{var{MAX_SAFE_COMPONENT_LENGTH:T6t,MAX_SAFE_BUILD_LENGTH:$eo,MAX_LENGTH:eto}=i3e(),tto=s3e();Jq=BSn.exports={};var rto=Jq.re=[],nto=Jq.safeRe=[],AA=Jq.src=[],dA=Jq.t={},ito=0,R6t="[a-zA-Z0-9-]",sto=[["\\s",1],["\\d",eto],[R6t,$eo]],oto=e=>{for(let[t,r]of sto)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},jI=(e,t,r)=>{let n=oto(t),a=ito++;tto(e,a,t),dA[e]=a,AA[a]=t,rto[a]=new RegExp(t,r?"g":void 0),nto[a]=new RegExp(n,r?"g":void 0)};jI("NUMERICIDENTIFIER","0|[1-9]\\d*");jI("NUMERICIDENTIFIERLOOSE","\\d+");jI("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${R6t}*`);jI("MAINVERSION",`(${AA[dA.NUMERICIDENTIFIER]})\\.(${AA[dA.NUMERICIDENTIFIER]})\\.(${AA[dA.NUMERICIDENTIFIER]})`);jI("MAINVERSIONLOOSE",`(${AA[dA.NUMERICIDENTIFIERLOOSE]})\\.(${AA[dA.NUMERICIDENTIFIERLOOSE]})\\.(${AA[dA.NUMERICIDENTIFIERLOOSE]})`);jI("PRERELEASEIDENTIFIER",`(?:${AA[dA.NUMERICIDENTIFIER]}|${AA[dA.NONNUMERICIDENTIFIER]})`);jI("PRERELEASEIDENTIFIERLOOSE",`(?:${AA[dA.NUMERICIDENTIFIERLOOSE]}|${AA[dA.NONNUMERICIDENTIFIER]})`);jI("PRERELEASE",`(?:-(${AA[dA.PRERELEASEIDENTIFIER]}(?:\\.${AA[dA.PRERELEASEIDENTIFIER]})*))`);jI("PRERELEASELOOSE",`(?:-?(${AA[dA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${AA[dA.PRERELEASEIDENTIFIERLOOSE]})*))`);jI("BUILDIDENTIFIER",`${R6t}+`);jI("BUILD",`(?:\\+(${AA[dA.BUILDIDENTIFIER]}(?:\\.${AA[dA.BUILDIDENTIFIER]})*))`);jI("FULLPLAIN",`v?${AA[dA.MAINVERSION]}${AA[dA.PRERELEASE]}?${AA[dA.BUILD]}?`);jI("FULL",`^${AA[dA.FULLPLAIN]}$`);jI("LOOSEPLAIN",`[v=\\s]*${AA[dA.MAINVERSIONLOOSE]}${AA[dA.PRERELEASELOOSE]}?${AA[dA.BUILD]}?`);jI("LOOSE",`^${AA[dA.LOOSEPLAIN]}$`);jI("GTLT","((?:<|>)?=?)");jI("XRANGEIDENTIFIERLOOSE",`${AA[dA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);jI("XRANGEIDENTIFIER",`${AA[dA.NUMERICIDENTIFIER]}|x|X|\\*`);jI("XRANGEPLAIN",`[v=\\s]*(${AA[dA.XRANGEIDENTIFIER]})(?:\\.(${AA[dA.XRANGEIDENTIFIER]})(?:\\.(${AA[dA.XRANGEIDENTIFIER]})(?:${AA[dA.PRERELEASE]})?${AA[dA.BUILD]}?)?)?`);jI("XRANGEPLAINLOOSE",`[v=\\s]*(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:${AA[dA.PRERELEASELOOSE]})?${AA[dA.BUILD]}?)?)?`);jI("XRANGE",`^${AA[dA.GTLT]}\\s*${AA[dA.XRANGEPLAIN]}$`);jI("XRANGELOOSE",`^${AA[dA.GTLT]}\\s*${AA[dA.XRANGEPLAINLOOSE]}$`);jI("COERCEPLAIN",`(^|[^\\d])(\\d{1,${T6t}})(?:\\.(\\d{1,${T6t}}))?(?:\\.(\\d{1,${T6t}}))?`);jI("COERCE",`${AA[dA.COERCEPLAIN]}(?:$|[^\\d])`);jI("COERCEFULL",AA[dA.COERCEPLAIN]+`(?:${AA[dA.PRERELEASE]})?(?:${AA[dA.BUILD]})?(?:$|[^\\d])`);jI("COERCERTL",AA[dA.COERCE],!0);jI("COERCERTLFULL",AA[dA.COERCEFULL],!0);jI("LONETILDE","(?:~>?)");jI("TILDETRIM",`(\\s*)${AA[dA.LONETILDE]}\\s+`,!0);Jq.tildeTrimReplace="$1~";jI("TILDE",`^${AA[dA.LONETILDE]}${AA[dA.XRANGEPLAIN]}$`);jI("TILDELOOSE",`^${AA[dA.LONETILDE]}${AA[dA.XRANGEPLAINLOOSE]}$`);jI("LONECARET","(?:\\^)");jI("CARETTRIM",`(\\s*)${AA[dA.LONECARET]}\\s+`,!0);Jq.caretTrimReplace="$1^";jI("CARET",`^${AA[dA.LONECARET]}${AA[dA.XRANGEPLAIN]}$`);jI("CARETLOOSE",`^${AA[dA.LONECARET]}${AA[dA.XRANGEPLAINLOOSE]}$`);jI("COMPARATORLOOSE",`^${AA[dA.GTLT]}\\s*(${AA[dA.LOOSEPLAIN]})$|^$`);jI("COMPARATOR",`^${AA[dA.GTLT]}\\s*(${AA[dA.FULLPLAIN]})$|^$`);jI("COMPARATORTRIM",`(\\s*)${AA[dA.GTLT]}\\s*(${AA[dA.LOOSEPLAIN]}|${AA[dA.XRANGEPLAIN]})`,!0);Jq.comparatorTrimReplace="$1$2$3";jI("HYPHENRANGE",`^\\s*(${AA[dA.XRANGEPLAIN]})\\s+-\\s+(${AA[dA.XRANGEPLAIN]})\\s*$`);jI("HYPHENRANGELOOSE",`^\\s*(${AA[dA.XRANGEPLAINLOOSE]})\\s+-\\s+(${AA[dA.XRANGEPLAINLOOSE]})\\s*$`);jI("STAR","(<|>)?=?\\s*\\*");jI("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");jI("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var jct=H((L5l,wSn)=>{var ato=Object.freeze({loose:!0}),cto=Object.freeze({}),lto=e=>e?typeof e!="object"?ato:e:cto;wSn.exports=lto});var N6t=H((V5l,NSn)=>{var TSn=/^[0-9]+$/,RSn=(e,t)=>{let r=TSn.test(e),n=TSn.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:eRSn(t,e);NSn.exports={compareIdentifiers:RSn,rcompareIdentifiers:uto}});var cG=H((P5l,GSn)=>{var zct=s3e(),{MAX_LENGTH:DSn,MAX_SAFE_INTEGER:qct}=i3e(),{safeRe:kSn,t:xSn}=NSe(),gto=jct(),{compareIdentifiers:DSe}=N6t(),D6t=class e{constructor(t,r){if(r=gto(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>DSn)throw new TypeError(`version is longer than ${DSn} characters`);zct("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?kSn[xSn.LOOSE]:kSn[xSn.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>qct||this.major<0)throw new TypeError("Invalid major version");if(this.minor>qct||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>qct||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];n===!1&&(o=[r]),DSe(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};GSn.exports=D6t});var kfe=H((W5l,ZSn)=>{var FSn=cG(),Ato=(e,t,r=!1)=>{if(e instanceof FSn)return e;try{return new FSn(e,t)}catch(n){if(!r)return null;throw n}};ZSn.exports=Ato});var k6t=H((O5l,LSn)=>{var dto=kfe(),pto=(e,t)=>{let r=dto(e,t);return r?r.version:null};LSn.exports=pto});var x6t=H((M5l,VSn)=>{var fto=kfe(),Ito=(e,t)=>{let r=fto(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};VSn.exports=Ito});var OSn=H((H5l,WSn)=>{var PSn=cG(),hto=(e,t,r,n,a)=>{typeof r=="string"&&(a=n,n=r,r=void 0);try{return new PSn(e instanceof PSn?e.version:e,r).inc(t,n,a).version}catch{return null}};WSn.exports=hto});var YSn=H((Y5l,HSn)=>{var MSn=kfe(),mto=(e,t)=>{let r=MSn(e,null,!0),n=MSn(t,null,!0),a=r.compare(n);if(a===0)return null;let o=a>0,l=o?r:n,A=o?n:r,f=!!l.prerelease.length;if(!!A.prerelease.length&&!f)return!A.patch&&!A.minor?"major":l.patch?"patch":l.minor?"minor":"major";let C=f?"pre":"";return r.major!==n.major?C+"major":r.minor!==n.minor?C+"minor":r.patch!==n.patch?C+"patch":"prerelease"};HSn.exports=mto});var XSn=H((Q5l,QSn)=>{var Cto=cG(),_to=(e,t)=>new Cto(e,t).major;QSn.exports=_to});var USn=H((X5l,JSn)=>{var yto=cG(),bto=(e,t)=>new yto(e,t).minor;JSn.exports=bto});var jSn=H((J5l,KSn)=>{var Eto=cG(),Sto=(e,t)=>new Eto(e,t).patch;KSn.exports=Sto});var qSn=H((U5l,zSn)=>{var vto=kfe(),Bto=(e,t)=>{let r=vto(e,t);return r&&r.prerelease.length?r.prerelease:null};zSn.exports=Bto});var U5=H((K5l,evn)=>{var $Sn=cG(),wto=(e,t,r)=>new $Sn(e,r).compare(new $Sn(t,r));evn.exports=wto});var rvn=H((j5l,tvn)=>{var Tto=U5(),Rto=(e,t,r)=>Tto(t,e,r);tvn.exports=Rto});var ivn=H((z5l,nvn)=>{var Nto=U5(),Dto=(e,t)=>Nto(e,t,!0);nvn.exports=Dto});var $ct=H((q5l,ovn)=>{var svn=cG(),kto=(e,t,r)=>{let n=new svn(e,r),a=new svn(t,r);return n.compare(a)||n.compareBuild(a)};ovn.exports=kto});var cvn=H(($5l,avn)=>{var xto=$ct(),Gto=(e,t)=>e.sort((r,n)=>xto(r,n,t));avn.exports=Gto});var uvn=H((eMl,lvn)=>{var Fto=$ct(),Zto=(e,t)=>e.sort((r,n)=>Fto(n,r,t));lvn.exports=Zto});var o3e=H((tMl,gvn)=>{var Lto=U5(),Vto=(e,t,r)=>Lto(e,t,r)>0;gvn.exports=Vto});var elt=H((rMl,Avn)=>{var Pto=U5(),Wto=(e,t,r)=>Pto(e,t,r)<0;Avn.exports=Wto});var G6t=H((nMl,dvn)=>{var Oto=U5(),Mto=(e,t,r)=>Oto(e,t,r)===0;dvn.exports=Mto});var F6t=H((iMl,pvn)=>{var Hto=U5(),Yto=(e,t,r)=>Hto(e,t,r)!==0;pvn.exports=Yto});var tlt=H((sMl,fvn)=>{var Qto=U5(),Xto=(e,t,r)=>Qto(e,t,r)>=0;fvn.exports=Xto});var rlt=H((oMl,Ivn)=>{var Jto=U5(),Uto=(e,t,r)=>Jto(e,t,r)<=0;Ivn.exports=Uto});var Z6t=H((aMl,hvn)=>{var Kto=G6t(),jto=F6t(),zto=o3e(),qto=tlt(),$to=elt(),ero=rlt(),tro=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return Kto(e,r,n);case"!=":return jto(e,r,n);case">":return zto(e,r,n);case">=":return qto(e,r,n);case"<":return $to(e,r,n);case"<=":return ero(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};hvn.exports=tro});var Cvn=H((cMl,mvn)=>{var rro=cG(),nro=kfe(),{safeRe:nlt,t:ilt}=NSe(),iro=(e,t)=>{if(e instanceof rro)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?nlt[ilt.COERCEFULL]:nlt[ilt.COERCE]);else{let f=t.includePrerelease?nlt[ilt.COERCERTLFULL]:nlt[ilt.COERCERTL],I;for(;(I=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||I.index+I[0].length!==r.index+r[0].length)&&(r=I),f.lastIndex=I.index+I[1].length+I[2].length;f.lastIndex=-1}if(r===null)return null;let n=r[2],a=r[3]||"0",o=r[4]||"0",l=t.includePrerelease&&r[5]?`-${r[5]}`:"",A=t.includePrerelease&&r[6]?`+${r[6]}`:"";return nro(`${n}.${a}.${o}${l}${A}`,t)};mvn.exports=iro});var yvn=H((lMl,_vn)=>{var L6t=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};_vn.exports=L6t});var K5=H((uMl,vvn)=>{var sro=/\s+/g,V6t=class e{constructor(t,r){if(r=aro(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof P6t)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(sro," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(a=>!Evn(a[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&pro(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&Aro)|(this.options.loose&&dro))+":"+t,a=bvn.get(n);if(a)return a;let o=this.options.loose,l=o?H9[bZ.HYPHENRANGELOOSE]:H9[bZ.HYPHENRANGE];t=t.replace(l,Sro(this.options.includePrerelease)),k1("hyphen replace",t),t=t.replace(H9[bZ.COMPARATORTRIM],lro),k1("comparator trim",t),t=t.replace(H9[bZ.TILDETRIM],uro),k1("tilde trim",t),t=t.replace(H9[bZ.CARETTRIM],gro),k1("caret trim",t);let A=t.split(" ").map(b=>fro(b,this.options)).join(" ").split(/\s+/).map(b=>Ero(b,this.options));o&&(A=A.filter(b=>(k1("loose invalid filter",b,this.options),!!b.match(H9[bZ.COMPARATORLOOSE])))),k1("range list",A);let f=new Map,I=A.map(b=>new P6t(b,this.options));for(let b of I){if(Evn(b))return[b];f.set(b.value,b)}f.size>1&&f.has("")&&f.delete("");let C=[...f.values()];return bvn.set(n,C),C}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>Svn(n,r)&&t.set.some(a=>Svn(a,r)&&n.every(o=>a.every(l=>o.intersects(l,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new cro(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",pro=e=>e.value==="",Svn=(e,t)=>{let r=!0,n=e.slice(),a=n.pop();for(;r&&n.length;)r=n.every(o=>a.intersects(o,t)),a=n.pop();return r},fro=(e,t)=>(k1("comp",e,t),e=mro(e,t),k1("caret",e),e=Iro(e,t),k1("tildes",e),e=_ro(e,t),k1("xrange",e),e=bro(e,t),k1("stars",e),e),EZ=e=>!e||e.toLowerCase()==="x"||e==="*",Iro=(e,t)=>e.trim().split(/\s+/).map(r=>hro(r,t)).join(" "),hro=(e,t)=>{let r=t.loose?H9[bZ.TILDELOOSE]:H9[bZ.TILDE];return e.replace(r,(n,a,o,l,A)=>{k1("tilde",e,n,a,o,l,A);let f;return EZ(a)?f="":EZ(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:EZ(l)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:A?(k1("replaceTilde pr",A),f=`>=${a}.${o}.${l}-${A} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${l} <${a}.${+o+1}.0-0`,k1("tilde return",f),f})},mro=(e,t)=>e.trim().split(/\s+/).map(r=>Cro(r,t)).join(" "),Cro=(e,t)=>{k1("caret",e,t);let r=t.loose?H9[bZ.CARETLOOSE]:H9[bZ.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(a,o,l,A,f)=>{k1("caret",e,a,o,l,A,f);let I;return EZ(o)?I="":EZ(l)?I=`>=${o}.0.0${n} <${+o+1}.0.0-0`:EZ(A)?o==="0"?I=`>=${o}.${l}.0${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.0${n} <${+o+1}.0.0-0`:f?(k1("replaceCaret pr",f),o==="0"?l==="0"?I=`>=${o}.${l}.${A}-${f} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}-${f} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A}-${f} <${+o+1}.0.0-0`):(k1("no pr"),o==="0"?l==="0"?I=`>=${o}.${l}.${A}${n} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A} <${+o+1}.0.0-0`),k1("caret return",I),I})},_ro=(e,t)=>(k1("replaceXRanges",e,t),e.split(/\s+/).map(r=>yro(r,t)).join(" ")),yro=(e,t)=>{e=e.trim();let r=t.loose?H9[bZ.XRANGELOOSE]:H9[bZ.XRANGE];return e.replace(r,(n,a,o,l,A,f)=>{k1("xRange",e,n,a,o,l,A,f);let I=EZ(o),C=I||EZ(l),b=C||EZ(A),E=b;return a==="="&&E&&(a=""),f=t.includePrerelease?"-0":"",I?a===">"||a==="<"?n="<0.0.0-0":n="*":a&&E?(C&&(l=0),A=0,a===">"?(a=">=",C?(o=+o+1,l=0,A=0):(l=+l+1,A=0)):a==="<="&&(a="<",C?o=+o+1:l=+l+1),a==="<"&&(f="-0"),n=`${a+o}.${l}.${A}${f}`):C?n=`>=${o}.0.0${f} <${+o+1}.0.0-0`:b&&(n=`>=${o}.${l}.0${f} <${o}.${+l+1}.0-0`),k1("xRange return",n),n})},bro=(e,t)=>(k1("replaceStars",e,t),e.trim().replace(H9[bZ.STAR],"")),Ero=(e,t)=>(k1("replaceGTE0",e,t),e.trim().replace(H9[t.includePrerelease?bZ.GTE0PRE:bZ.GTE0],"")),Sro=e=>(t,r,n,a,o,l,A,f,I,C,b,E)=>(EZ(n)?r="":EZ(a)?r=`>=${n}.0.0${e?"-0":""}`:EZ(o)?r=`>=${n}.${a}.0${e?"-0":""}`:l?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,EZ(I)?f="":EZ(C)?f=`<${+I+1}.0.0-0`:EZ(b)?f=`<${I}.${+C+1}.0-0`:E?f=`<=${I}.${C}.${b}-${E}`:e?f=`<${I}.${C}.${+b+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),vro=(e,t,r)=>{for(let n=0;n0){let a=e[n].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var a3e=H((gMl,Dvn)=>{var c3e=Symbol("SemVer ANY"),M6t=class e{static get ANY(){return c3e}constructor(t,r){if(r=Bvn(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),O6t("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===c3e?this.value="":this.value=this.operator+this.semver.version,O6t("comp",this)}parse(t){let r=this.options.loose?wvn[Tvn.COMPARATORLOOSE]:wvn[Tvn.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Rvn(n[2],this.options.loose):this.semver=c3e}toString(){return this.value}test(t){if(O6t("Comparator.test",t,this.options.loose),this.semver===c3e||t===c3e)return!0;if(typeof t=="string")try{t=new Rvn(t,this.options)}catch{return!1}return W6t(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Nvn(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new Nvn(this.value,r).test(t.semver):(r=Bvn(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||W6t(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||W6t(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};Dvn.exports=M6t;var Bvn=jct(),{safeRe:wvn,t:Tvn}=NSe(),W6t=Z6t(),O6t=s3e(),Rvn=cG(),Nvn=K5()});var l3e=H((AMl,kvn)=>{var Bro=K5(),wro=(e,t,r)=>{try{t=new Bro(t,r)}catch{return!1}return t.test(e)};kvn.exports=wro});var Gvn=H((dMl,xvn)=>{var Tro=K5(),Rro=(e,t)=>new Tro(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));xvn.exports=Rro});var Zvn=H((pMl,Fvn)=>{var Nro=cG(),Dro=K5(),kro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Dro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===-1)&&(n=l,a=new Nro(n,r))}),n};Fvn.exports=kro});var Vvn=H((fMl,Lvn)=>{var xro=cG(),Gro=K5(),Fro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Gro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===1)&&(n=l,a=new xro(n,r))}),n};Lvn.exports=Fro});var Ovn=H((IMl,Wvn)=>{var H6t=cG(),Zro=K5(),Pvn=o3e(),Lro=(e,t)=>{e=new Zro(e,t);let r=new H6t("0.0.0");if(e.test(r)||(r=new H6t("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let A=new H6t(l.semver.version);switch(l.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!o||Pvn(A,o))&&(o=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${l.operator}`)}}),o&&(!r||Pvn(r,o))&&(r=o)}return r&&e.test(r)?r:null};Wvn.exports=Lro});var Hvn=H((hMl,Mvn)=>{var Vro=K5(),Pro=(e,t)=>{try{return new Vro(e,t).range||"*"}catch{return null}};Mvn.exports=Pro});var slt=H((mMl,Jvn)=>{var Wro=cG(),Xvn=a3e(),{ANY:Oro}=Xvn,Mro=K5(),Hro=l3e(),Yvn=o3e(),Qvn=elt(),Yro=rlt(),Qro=tlt(),Xro=(e,t,r,n)=>{e=new Wro(e,n),t=new Mro(t,n);let a,o,l,A,f;switch(r){case">":a=Yvn,o=Yro,l=Qvn,A=">",f=">=";break;case"<":a=Qvn,o=Qro,l=Yvn,A="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Hro(e,t,n))return!1;for(let I=0;I{N.semver===Oro&&(N=new Xvn(">=0.0.0")),b=b||N,E=E||N,a(N.semver,b.semver,n)?b=N:l(N.semver,E.semver,n)&&(E=N)}),b.operator===A||b.operator===f||(!E.operator||E.operator===A)&&o(e,E.semver))return!1;if(E.operator===f&&l(e,E.semver))return!1}return!0};Jvn.exports=Xro});var Kvn=H((CMl,Uvn)=>{var Jro=slt(),Uro=(e,t,r)=>Jro(e,t,">",r);Uvn.exports=Uro});var zvn=H((_Ml,jvn)=>{var Kro=slt(),jro=(e,t,r)=>Kro(e,t,"<",r);jvn.exports=jro});var eBn=H((yMl,$vn)=>{var qvn=K5(),zro=(e,t,r)=>(e=new qvn(e,r),t=new qvn(t,r),e.intersects(t,r));$vn.exports=zro});var rBn=H((bMl,tBn)=>{var qro=l3e(),$ro=U5();tBn.exports=(e,t,r)=>{let n=[],a=null,o=null,l=e.sort((C,b)=>$ro(C,b,r));for(let C of l)qro(C,t,r)?(o=C,a||(a=C)):(o&&n.push([a,o]),o=null,a=null);a&&n.push([a,null]);let A=[];for(let[C,b]of n)C===b?A.push(C):!b&&C===l[0]?A.push("*"):b?C===l[0]?A.push(`<=${b}`):A.push(`${C} - ${b}`):A.push(`>=${C}`);let f=A.join(" || "),I=typeof t.raw=="string"?t.raw:String(t);return f.length{var nBn=K5(),Q6t=a3e(),{ANY:Y6t}=Q6t,u3e=l3e(),X6t=U5(),eno=(e,t,r={})=>{if(e===t)return!0;e=new nBn(e,r),t=new nBn(t,r);let n=!1;e:for(let a of e.set){for(let o of t.set){let l=rno(a,o,r);if(n=n||l!==null,l)continue e}if(n)return!1}return!0},tno=[new Q6t(">=0.0.0-0")],iBn=[new Q6t(">=0.0.0")],rno=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===Y6t){if(t.length===1&&t[0].semver===Y6t)return!0;r.includePrerelease?e=tno:e=iBn}if(t.length===1&&t[0].semver===Y6t){if(r.includePrerelease)return!0;t=iBn}let n=new Set,a,o;for(let N of e)N.operator===">"||N.operator===">="?a=sBn(a,N,r):N.operator==="<"||N.operator==="<="?o=oBn(o,N,r):n.add(N.semver);if(n.size>1)return null;let l;if(a&&o){if(l=X6t(a.semver,o.semver,r),l>0)return null;if(l===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let N of n){if(a&&!u3e(N,String(a),r)||o&&!u3e(N,String(o),r))return null;for(let B of t)if(!u3e(N,String(B),r))return!1;return!0}let A,f,I,C,b=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,E=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;b&&b.prerelease.length===1&&o.operator==="<"&&b.prerelease[0]===0&&(b=!1);for(let N of t){if(C=C||N.operator===">"||N.operator===">=",I=I||N.operator==="<"||N.operator==="<=",a){if(E&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===E.major&&N.semver.minor===E.minor&&N.semver.patch===E.patch&&(E=!1),N.operator===">"||N.operator===">="){if(A=sBn(a,N,r),A===N&&A!==a)return!1}else if(a.operator===">="&&!u3e(a.semver,String(N),r))return!1}if(o){if(b&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===b.major&&N.semver.minor===b.minor&&N.semver.patch===b.patch&&(b=!1),N.operator==="<"||N.operator==="<="){if(f=oBn(o,N,r),f===N&&f!==o)return!1}else if(o.operator==="<="&&!u3e(o.semver,String(N),r))return!1}if(!N.operator&&(o||a)&&l!==0)return!1}return!(a&&I&&!o&&l!==0||o&&C&&!a&&l!==0||E||b)},sBn=(e,t,r)=>{if(!e)return t;let n=X6t(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},oBn=(e,t,r)=>{if(!e)return t;let n=X6t(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};aBn.exports=eno});var UC=H((SMl,gBn)=>{var J6t=NSe(),lBn=i3e(),nno=cG(),uBn=N6t(),ino=kfe(),sno=k6t(),ono=x6t(),ano=OSn(),cno=YSn(),lno=XSn(),uno=USn(),gno=jSn(),Ano=qSn(),dno=U5(),pno=rvn(),fno=ivn(),Ino=$ct(),hno=cvn(),mno=uvn(),Cno=o3e(),_no=elt(),yno=G6t(),bno=F6t(),Eno=tlt(),Sno=rlt(),vno=Z6t(),Bno=Cvn(),wno=a3e(),Tno=K5(),Rno=l3e(),Nno=Gvn(),Dno=Zvn(),kno=Vvn(),xno=Ovn(),Gno=Hvn(),Fno=slt(),Zno=Kvn(),Lno=zvn(),Vno=eBn(),Pno=rBn(),Wno=cBn();gBn.exports={parse:ino,valid:sno,clean:ono,inc:ano,diff:cno,major:lno,minor:uno,patch:gno,prerelease:Ano,compare:dno,rcompare:pno,compareLoose:fno,compareBuild:Ino,sort:hno,rsort:mno,gt:Cno,lt:_no,eq:yno,neq:bno,gte:Eno,lte:Sno,cmp:vno,coerce:Bno,Comparator:wno,Range:Tno,satisfies:Rno,toComparators:Nno,maxSatisfying:Dno,minSatisfying:kno,minVersion:xno,validRange:Gno,outside:Fno,gtr:Zno,ltr:Lno,intersects:Vno,simplifyRange:Pno,subset:Wno,SemVer:nno,re:J6t.re,src:J6t.src,tokens:J6t.t,SEMVER_SPEC_VERSION:lBn.SEMVER_SPEC_VERSION,RELEASE_TYPES:lBn.RELEASE_TYPES,compareIdentifiers:uBn.compareIdentifiers,rcompareIdentifiers:uBn.rcompareIdentifiers}});var dBn=H((vMl,ABn)=>{"use strict";function Ono(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function xfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,xfe)}Ono(xfe,Error);xfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b{switch(xi[1]){case"|":return Vr|xi[3];case"&":return Vr&xi[3];case"^":return Vr^xi[3]}},Hi)},E="!",N=vt("!",!1),B=function(Hi){return!Hi},F="(",Q=vt("(",!1),X=")",ae=vt(")",!1),ne=function(Hi){return Hi},ce=/^[^ \t\n\r()!|&\^]/,fe=xt([" "," ",` +`),(0,Leo.parse)(e)}var Weo=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function Oeo(e){if(Weo.test(e))return Peo(e);let t=(0,uSn.safeLoad)(e,{schema:uSn.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function Meo(e){return Oeo(e)}});var TW=H(ym=>{"use strict";Object.defineProperty(ym,"__esModule",{value:!0});ym.stringifySyml=ym.parseSyml=ym.stringifyResolution=ym.parseResolution=ym.stringifyValueArgument=ym.stringifyShellLine=ym.stringifyRedirectArgument=ym.stringifyEnvSegment=ym.stringifyCommandLineThen=ym.stringifyCommandLine=ym.stringifyCommandChainThen=ym.stringifyCommandChain=ym.stringifyCommand=ym.stringifyArithmeticExpression=ym.stringifyArgumentSegment=ym.stringifyArgument=ym.stringifyShell=ym.parseShell=void 0;var O9=p1n();Object.defineProperty(ym,"parseShell",{enumerable:!0,get:function(){return O9.parseShell}});Object.defineProperty(ym,"stringifyShell",{enumerable:!0,get:function(){return O9.stringifyShell}});Object.defineProperty(ym,"stringifyArgument",{enumerable:!0,get:function(){return O9.stringifyArgument}});Object.defineProperty(ym,"stringifyArgumentSegment",{enumerable:!0,get:function(){return O9.stringifyArgumentSegment}});Object.defineProperty(ym,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return O9.stringifyArithmeticExpression}});Object.defineProperty(ym,"stringifyCommand",{enumerable:!0,get:function(){return O9.stringifyCommand}});Object.defineProperty(ym,"stringifyCommandChain",{enumerable:!0,get:function(){return O9.stringifyCommandChain}});Object.defineProperty(ym,"stringifyCommandChainThen",{enumerable:!0,get:function(){return O9.stringifyCommandChainThen}});Object.defineProperty(ym,"stringifyCommandLine",{enumerable:!0,get:function(){return O9.stringifyCommandLine}});Object.defineProperty(ym,"stringifyCommandLineThen",{enumerable:!0,get:function(){return O9.stringifyCommandLineThen}});Object.defineProperty(ym,"stringifyEnvSegment",{enumerable:!0,get:function(){return O9.stringifyEnvSegment}});Object.defineProperty(ym,"stringifyRedirectArgument",{enumerable:!0,get:function(){return O9.stringifyRedirectArgument}});Object.defineProperty(ym,"stringifyShellLine",{enumerable:!0,get:function(){return O9.stringifyShellLine}});Object.defineProperty(ym,"stringifyValueArgument",{enumerable:!0,get:function(){return O9.stringifyValueArgument}});var ISn=h1n();Object.defineProperty(ym,"parseResolution",{enumerable:!0,get:function(){return ISn.parseResolution}});Object.defineProperty(ym,"stringifyResolution",{enumerable:!0,get:function(){return ISn.stringifyResolution}});var hSn=fSn();Object.defineProperty(ym,"parseSyml",{enumerable:!0,get:function(){return hSn.parseSyml}});Object.defineProperty(ym,"stringifySyml",{enumerable:!0,get:function(){return hSn.stringifySyml}})});var CSn=H((CMl,v6t)=>{"use strict";var Heo=e=>{let t=!1,r=!1,n=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=Heo(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};v6t.exports=mSn;v6t.exports.default=mSn});var _Sn=H((_Ml,Yeo)=>{Yeo.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var Dfe=H(RW=>{"use strict";var bSn=_Sn(),SR=process.env;Object.defineProperty(RW,"_vendors",{value:bSn.map(function(e){return e.constant})});RW.name=null;RW.isPR=null;bSn.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(n){return ySn(n)});if(RW[e.constant]=r,!!r)switch(RW.name=e.name,typeof e.pr){case"string":RW.isPR=!!SR[e.pr];break;case"object":"env"in e.pr?RW.isPR=e.pr.env in SR&&SR[e.pr.env]!==e.pr.ne:"any"in e.pr?RW.isPR=e.pr.any.some(function(n){return!!SR[n]}):RW.isPR=ySn(e.pr);break;default:RW.isPR=null}});RW.isCI=!!(SR.CI!=="false"&&(SR.BUILD_ID||SR.BUILD_NUMBER||SR.CI||SR.CI_APP_ID||SR.CI_BUILD_ID||SR.CI_BUILD_NUMBER||SR.CI_NAME||SR.CONTINUOUS_INTEGRATION||SR.RUN_ID||RW.name));function ySn(e){return typeof e=="string"?!!SR[e]:"env"in e?SR[e.env]&&SR[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!SR[t]}):Object.keys(e).every(function(t){return SR[t]===e[t]})}});var ESn=H((bMl,Qeo)=>{Qeo.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var wSn=H((EMl,Xq)=>{var B6t=wt("fs"),w6t=wt("path"),Xeo=wt("os"),Jeo=wt("crypto"),Ueo=ESn(),T6t=Ueo.version,Keo=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function jeo(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` +`);let n;for(;(n=Keo.exec(r))!=null;){let a=n[1],o=n[2]||"";o=o.trim();let l=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),l==='"'&&(o=o.replace(/\\n/g,` +`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function zeo(e){let t=BSn(e),r=vR.configDotenv({path:t});if(!r.parsed){let l=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw l.code="MISSING_DATA",l}let n=vSn(e).split(","),a=n.length,o;for(let l=0;l=a)throw A}return vR.parse(o)}function qeo(e){console.log(`[dotenv@${T6t}][INFO] ${e}`)}function $eo(e){console.log(`[dotenv@${T6t}][WARN] ${e}`)}function zct(e){console.log(`[dotenv@${T6t}][DEBUG] ${e}`)}function vSn(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function eto(e,t){let r;try{r=new URL(t)}catch(A){if(A.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw A}let n=r.password;if(!n){let A=new Error("INVALID_DOTENV_KEY: Missing key part");throw A.code="INVALID_DOTENV_KEY",A}let a=r.searchParams.get("environment");if(!a){let A=new Error("INVALID_DOTENV_KEY: Missing environment part");throw A.code="INVALID_DOTENV_KEY",A}let o=`DOTENV_VAULT_${a.toUpperCase()}`,l=e.parsed[o];if(!l){let A=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw A.code="NOT_FOUND_DOTENV_ENVIRONMENT",A}return{ciphertext:l,key:n}}function BSn(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)B6t.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=w6t.resolve(process.cwd(),".env.vault");return B6t.existsSync(t)?t:null}function SSn(e){return e[0]==="~"?w6t.join(Xeo.homedir(),e.slice(1)):e}function tto(e){qeo("Loading env from encrypted .env.vault");let t=vR._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),vR.populate(r,t,e),{parsed:t}}function rto(e){let t=w6t.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&zct("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[SSn(e.path)];else{a=[];for(let f of e.path)a.push(SSn(f))}let o,l={};for(let f of a)try{let I=vR.parse(B6t.readFileSync(f,{encoding:r}));vR.populate(l,I,e)}catch(I){n&&zct(`Failed to load ${f} ${I.message}`),o=I}let A=process.env;return e&&e.processEnv!=null&&(A=e.processEnv),vR.populate(A,l,e),o?{parsed:l,error:o}:{parsed:l}}function nto(e){if(vSn(e).length===0)return vR.configDotenv(e);let t=BSn(e);return t?vR._configVault(e):($eo(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),vR.configDotenv(e))}function ito(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),a=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let l=Jeo.createDecipheriv("aes-256-gcm",r,a);return l.setAuthTag(o),`${l.update(n)}${l.final()}`}catch(l){let A=l instanceof RangeError,f=l.message==="Invalid key length",I=l.message==="Unsupported state or unable to authenticate data";if(A||f){let C=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw C.code="INVALID_DOTENV_KEY",C}else if(I){let C=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw C.code="DECRYPTION_FAILED",C}else throw l}}function sto(e,t,r={}){let n=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),n&&zct(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var vR={configDotenv:rto,_configVault:tto,_parseVault:zeo,config:nto,decrypt:ito,parse:jeo,populate:sto};Xq.exports.configDotenv=vR.configDotenv;Xq.exports._configVault=vR._configVault;Xq.exports._parseVault=vR._parseVault;Xq.exports.config=vR.config;Xq.exports.decrypt=vR.decrypt;Xq.exports.parse=vR.parse;Xq.exports.populate=vR.populate;Xq.exports=vR});var RSn=H((SMl,R6t)=>{"use strict";var TSn=(e,...t)=>new Promise(r=>{r(e(...t))});R6t.exports=TSn;R6t.exports.default=TSn});var kfe=H((vMl,N6t)=>{"use strict";var oto=RSn(),NSn=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,n=()=>{r--,t.length>0&&t.shift()()},a=(A,f,...I)=>{r++;let C=oto(A,...I);f(C),C.then(n,n)},o=(A,f,...I)=>{rnew Promise(I=>o(A,I,...f));return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),l};N6t.exports=NSn;N6t.exports.default=NSn});var M9=H(NSe=>{"use strict";Object.defineProperty(NSe,"__esModule",{value:!0});NSe.MessageName=void 0;NSe.stringifyMessageName=ato;NSe.parseMessageName=cto;var D6t;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED",e[e.INVALID_PROVENANCE_ENVIRONMENT=91]="INVALID_PROVENANCE_ENVIRONMENT",e[e.EXPERIMENTAL=92]="EXPERIMENTAL"})(D6t||(NSe.MessageName=D6t={}));function ato(e){return`YN${e.toString(10).padStart(4,"0")}`}function cto(e){let t=Number(e.slice(2));if(typeof D6t[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var o3e=H((wMl,DSn)=>{var lto="2.0.0",uto=Number.MAX_SAFE_INTEGER||9007199254740991,gto=16,Ato=250,dto=["major","premajor","minor","preminor","patch","prepatch","prerelease"];DSn.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:gto,MAX_SAFE_BUILD_LENGTH:Ato,MAX_SAFE_INTEGER:uto,RELEASE_TYPES:dto,SEMVER_SPEC_VERSION:lto,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var a3e=H((TMl,kSn)=>{var pto=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};kSn.exports=pto});var DSe=H((Jq,xSn)=>{var{MAX_SAFE_COMPONENT_LENGTH:k6t,MAX_SAFE_BUILD_LENGTH:fto,MAX_LENGTH:Ito}=o3e(),hto=a3e();Jq=xSn.exports={};var mto=Jq.re=[],Cto=Jq.safeRe=[],AA=Jq.src=[],dA=Jq.t={},_to=0,x6t="[a-zA-Z0-9-]",yto=[["\\s",1],["\\d",Ito],[x6t,fto]],bto=e=>{for(let[t,r]of yto)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},jI=(e,t,r)=>{let n=bto(t),a=_to++;hto(e,a,t),dA[e]=a,AA[a]=t,mto[a]=new RegExp(t,r?"g":void 0),Cto[a]=new RegExp(n,r?"g":void 0)};jI("NUMERICIDENTIFIER","0|[1-9]\\d*");jI("NUMERICIDENTIFIERLOOSE","\\d+");jI("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${x6t}*`);jI("MAINVERSION",`(${AA[dA.NUMERICIDENTIFIER]})\\.(${AA[dA.NUMERICIDENTIFIER]})\\.(${AA[dA.NUMERICIDENTIFIER]})`);jI("MAINVERSIONLOOSE",`(${AA[dA.NUMERICIDENTIFIERLOOSE]})\\.(${AA[dA.NUMERICIDENTIFIERLOOSE]})\\.(${AA[dA.NUMERICIDENTIFIERLOOSE]})`);jI("PRERELEASEIDENTIFIER",`(?:${AA[dA.NUMERICIDENTIFIER]}|${AA[dA.NONNUMERICIDENTIFIER]})`);jI("PRERELEASEIDENTIFIERLOOSE",`(?:${AA[dA.NUMERICIDENTIFIERLOOSE]}|${AA[dA.NONNUMERICIDENTIFIER]})`);jI("PRERELEASE",`(?:-(${AA[dA.PRERELEASEIDENTIFIER]}(?:\\.${AA[dA.PRERELEASEIDENTIFIER]})*))`);jI("PRERELEASELOOSE",`(?:-?(${AA[dA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${AA[dA.PRERELEASEIDENTIFIERLOOSE]})*))`);jI("BUILDIDENTIFIER",`${x6t}+`);jI("BUILD",`(?:\\+(${AA[dA.BUILDIDENTIFIER]}(?:\\.${AA[dA.BUILDIDENTIFIER]})*))`);jI("FULLPLAIN",`v?${AA[dA.MAINVERSION]}${AA[dA.PRERELEASE]}?${AA[dA.BUILD]}?`);jI("FULL",`^${AA[dA.FULLPLAIN]}$`);jI("LOOSEPLAIN",`[v=\\s]*${AA[dA.MAINVERSIONLOOSE]}${AA[dA.PRERELEASELOOSE]}?${AA[dA.BUILD]}?`);jI("LOOSE",`^${AA[dA.LOOSEPLAIN]}$`);jI("GTLT","((?:<|>)?=?)");jI("XRANGEIDENTIFIERLOOSE",`${AA[dA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);jI("XRANGEIDENTIFIER",`${AA[dA.NUMERICIDENTIFIER]}|x|X|\\*`);jI("XRANGEPLAIN",`[v=\\s]*(${AA[dA.XRANGEIDENTIFIER]})(?:\\.(${AA[dA.XRANGEIDENTIFIER]})(?:\\.(${AA[dA.XRANGEIDENTIFIER]})(?:${AA[dA.PRERELEASE]})?${AA[dA.BUILD]}?)?)?`);jI("XRANGEPLAINLOOSE",`[v=\\s]*(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:${AA[dA.PRERELEASELOOSE]})?${AA[dA.BUILD]}?)?)?`);jI("XRANGE",`^${AA[dA.GTLT]}\\s*${AA[dA.XRANGEPLAIN]}$`);jI("XRANGELOOSE",`^${AA[dA.GTLT]}\\s*${AA[dA.XRANGEPLAINLOOSE]}$`);jI("COERCEPLAIN",`(^|[^\\d])(\\d{1,${k6t}})(?:\\.(\\d{1,${k6t}}))?(?:\\.(\\d{1,${k6t}}))?`);jI("COERCE",`${AA[dA.COERCEPLAIN]}(?:$|[^\\d])`);jI("COERCEFULL",AA[dA.COERCEPLAIN]+`(?:${AA[dA.PRERELEASE]})?(?:${AA[dA.BUILD]})?(?:$|[^\\d])`);jI("COERCERTL",AA[dA.COERCE],!0);jI("COERCERTLFULL",AA[dA.COERCEFULL],!0);jI("LONETILDE","(?:~>?)");jI("TILDETRIM",`(\\s*)${AA[dA.LONETILDE]}\\s+`,!0);Jq.tildeTrimReplace="$1~";jI("TILDE",`^${AA[dA.LONETILDE]}${AA[dA.XRANGEPLAIN]}$`);jI("TILDELOOSE",`^${AA[dA.LONETILDE]}${AA[dA.XRANGEPLAINLOOSE]}$`);jI("LONECARET","(?:\\^)");jI("CARETTRIM",`(\\s*)${AA[dA.LONECARET]}\\s+`,!0);Jq.caretTrimReplace="$1^";jI("CARET",`^${AA[dA.LONECARET]}${AA[dA.XRANGEPLAIN]}$`);jI("CARETLOOSE",`^${AA[dA.LONECARET]}${AA[dA.XRANGEPLAINLOOSE]}$`);jI("COMPARATORLOOSE",`^${AA[dA.GTLT]}\\s*(${AA[dA.LOOSEPLAIN]})$|^$`);jI("COMPARATOR",`^${AA[dA.GTLT]}\\s*(${AA[dA.FULLPLAIN]})$|^$`);jI("COMPARATORTRIM",`(\\s*)${AA[dA.GTLT]}\\s*(${AA[dA.LOOSEPLAIN]}|${AA[dA.XRANGEPLAIN]})`,!0);Jq.comparatorTrimReplace="$1$2$3";jI("HYPHENRANGE",`^\\s*(${AA[dA.XRANGEPLAIN]})\\s+-\\s+(${AA[dA.XRANGEPLAIN]})\\s*$`);jI("HYPHENRANGELOOSE",`^\\s*(${AA[dA.XRANGEPLAINLOOSE]})\\s+-\\s+(${AA[dA.XRANGEPLAINLOOSE]})\\s*$`);jI("STAR","(<|>)?=?\\s*\\*");jI("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");jI("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var qct=H((RMl,GSn)=>{var Eto=Object.freeze({loose:!0}),Sto=Object.freeze({}),vto=e=>e?typeof e!="object"?Eto:e:Sto;GSn.exports=vto});var G6t=H((NMl,LSn)=>{var FSn=/^[0-9]+$/,ZSn=(e,t)=>{let r=FSn.test(e),n=FSn.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:eZSn(t,e);LSn.exports={compareIdentifiers:ZSn,rcompareIdentifiers:Bto}});var cG=H((DMl,OSn)=>{var $ct=a3e(),{MAX_LENGTH:VSn,MAX_SAFE_INTEGER:elt}=o3e(),{safeRe:PSn,t:WSn}=DSe(),wto=qct(),{compareIdentifiers:kSe}=G6t(),F6t=class e{constructor(t,r){if(r=wto(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>VSn)throw new TypeError(`version is longer than ${VSn} characters`);$ct("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?PSn[WSn.LOOSE]:PSn[WSn.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>elt||this.major<0)throw new TypeError("Invalid major version");if(this.minor>elt||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>elt||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];n===!1&&(o=[r]),kSe(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};OSn.exports=F6t});var xfe=H((kMl,HSn)=>{var MSn=cG(),Tto=(e,t,r=!1)=>{if(e instanceof MSn)return e;try{return new MSn(e,t)}catch(n){if(!r)return null;throw n}};HSn.exports=Tto});var Z6t=H((xMl,YSn)=>{var Rto=xfe(),Nto=(e,t)=>{let r=Rto(e,t);return r?r.version:null};YSn.exports=Nto});var L6t=H((GMl,QSn)=>{var Dto=xfe(),kto=(e,t)=>{let r=Dto(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};QSn.exports=kto});var USn=H((FMl,JSn)=>{var XSn=cG(),xto=(e,t,r,n,a)=>{typeof r=="string"&&(a=n,n=r,r=void 0);try{return new XSn(e instanceof XSn?e.version:e,r).inc(t,n,a).version}catch{return null}};JSn.exports=xto});var zSn=H((ZMl,jSn)=>{var KSn=xfe(),Gto=(e,t)=>{let r=KSn(e,null,!0),n=KSn(t,null,!0),a=r.compare(n);if(a===0)return null;let o=a>0,l=o?r:n,A=o?n:r,f=!!l.prerelease.length;if(!!A.prerelease.length&&!f)return!A.patch&&!A.minor?"major":l.patch?"patch":l.minor?"minor":"major";let C=f?"pre":"";return r.major!==n.major?C+"major":r.minor!==n.minor?C+"minor":r.patch!==n.patch?C+"patch":"prerelease"};jSn.exports=Gto});var $Sn=H((LMl,qSn)=>{var Fto=cG(),Zto=(e,t)=>new Fto(e,t).major;qSn.exports=Zto});var tvn=H((VMl,evn)=>{var Lto=cG(),Vto=(e,t)=>new Lto(e,t).minor;evn.exports=Vto});var nvn=H((PMl,rvn)=>{var Pto=cG(),Wto=(e,t)=>new Pto(e,t).patch;rvn.exports=Wto});var svn=H((WMl,ivn)=>{var Oto=xfe(),Mto=(e,t)=>{let r=Oto(e,t);return r&&r.prerelease.length?r.prerelease:null};ivn.exports=Mto});var U5=H((OMl,avn)=>{var ovn=cG(),Hto=(e,t,r)=>new ovn(e,r).compare(new ovn(t,r));avn.exports=Hto});var lvn=H((MMl,cvn)=>{var Yto=U5(),Qto=(e,t,r)=>Yto(t,e,r);cvn.exports=Qto});var gvn=H((HMl,uvn)=>{var Xto=U5(),Jto=(e,t)=>Xto(e,t,!0);uvn.exports=Jto});var tlt=H((YMl,dvn)=>{var Avn=cG(),Uto=(e,t,r)=>{let n=new Avn(e,r),a=new Avn(t,r);return n.compare(a)||n.compareBuild(a)};dvn.exports=Uto});var fvn=H((QMl,pvn)=>{var Kto=tlt(),jto=(e,t)=>e.sort((r,n)=>Kto(r,n,t));pvn.exports=jto});var hvn=H((XMl,Ivn)=>{var zto=tlt(),qto=(e,t)=>e.sort((r,n)=>zto(n,r,t));Ivn.exports=qto});var c3e=H((JMl,mvn)=>{var $to=U5(),ero=(e,t,r)=>$to(e,t,r)>0;mvn.exports=ero});var rlt=H((UMl,Cvn)=>{var tro=U5(),rro=(e,t,r)=>tro(e,t,r)<0;Cvn.exports=rro});var V6t=H((KMl,_vn)=>{var nro=U5(),iro=(e,t,r)=>nro(e,t,r)===0;_vn.exports=iro});var P6t=H((jMl,yvn)=>{var sro=U5(),oro=(e,t,r)=>sro(e,t,r)!==0;yvn.exports=oro});var nlt=H((zMl,bvn)=>{var aro=U5(),cro=(e,t,r)=>aro(e,t,r)>=0;bvn.exports=cro});var ilt=H((qMl,Evn)=>{var lro=U5(),uro=(e,t,r)=>lro(e,t,r)<=0;Evn.exports=uro});var W6t=H(($Ml,Svn)=>{var gro=V6t(),Aro=P6t(),dro=c3e(),pro=nlt(),fro=rlt(),Iro=ilt(),hro=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return gro(e,r,n);case"!=":return Aro(e,r,n);case">":return dro(e,r,n);case">=":return pro(e,r,n);case"<":return fro(e,r,n);case"<=":return Iro(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Svn.exports=hro});var Bvn=H((eHl,vvn)=>{var mro=cG(),Cro=xfe(),{safeRe:slt,t:olt}=DSe(),_ro=(e,t)=>{if(e instanceof mro)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?slt[olt.COERCEFULL]:slt[olt.COERCE]);else{let f=t.includePrerelease?slt[olt.COERCERTLFULL]:slt[olt.COERCERTL],I;for(;(I=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||I.index+I[0].length!==r.index+r[0].length)&&(r=I),f.lastIndex=I.index+I[1].length+I[2].length;f.lastIndex=-1}if(r===null)return null;let n=r[2],a=r[3]||"0",o=r[4]||"0",l=t.includePrerelease&&r[5]?`-${r[5]}`:"",A=t.includePrerelease&&r[6]?`+${r[6]}`:"";return Cro(`${n}.${a}.${o}${l}${A}`,t)};vvn.exports=_ro});var Tvn=H((tHl,wvn)=>{var O6t=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};wvn.exports=O6t});var K5=H((rHl,kvn)=>{var yro=/\s+/g,M6t=class e{constructor(t,r){if(r=Ero(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof H6t)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(yro," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(a=>!Nvn(a[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&Nro(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&Tro)|(this.options.loose&&Rro))+":"+t,a=Rvn.get(n);if(a)return a;let o=this.options.loose,l=o?H9[bZ.HYPHENRANGELOOSE]:H9[bZ.HYPHENRANGE];t=t.replace(l,Wro(this.options.includePrerelease)),k1("hyphen replace",t),t=t.replace(H9[bZ.COMPARATORTRIM],vro),k1("comparator trim",t),t=t.replace(H9[bZ.TILDETRIM],Bro),k1("tilde trim",t),t=t.replace(H9[bZ.CARETTRIM],wro),k1("caret trim",t);let A=t.split(" ").map(b=>Dro(b,this.options)).join(" ").split(/\s+/).map(b=>Pro(b,this.options));o&&(A=A.filter(b=>(k1("loose invalid filter",b,this.options),!!b.match(H9[bZ.COMPARATORLOOSE])))),k1("range list",A);let f=new Map,I=A.map(b=>new H6t(b,this.options));for(let b of I){if(Nvn(b))return[b];f.set(b.value,b)}f.size>1&&f.has("")&&f.delete("");let C=[...f.values()];return Rvn.set(n,C),C}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>Dvn(n,r)&&t.set.some(a=>Dvn(a,r)&&n.every(o=>a.every(l=>o.intersects(l,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new Sro(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",Nro=e=>e.value==="",Dvn=(e,t)=>{let r=!0,n=e.slice(),a=n.pop();for(;r&&n.length;)r=n.every(o=>a.intersects(o,t)),a=n.pop();return r},Dro=(e,t)=>(k1("comp",e,t),e=Gro(e,t),k1("caret",e),e=kro(e,t),k1("tildes",e),e=Zro(e,t),k1("xrange",e),e=Vro(e,t),k1("stars",e),e),EZ=e=>!e||e.toLowerCase()==="x"||e==="*",kro=(e,t)=>e.trim().split(/\s+/).map(r=>xro(r,t)).join(" "),xro=(e,t)=>{let r=t.loose?H9[bZ.TILDELOOSE]:H9[bZ.TILDE];return e.replace(r,(n,a,o,l,A)=>{k1("tilde",e,n,a,o,l,A);let f;return EZ(a)?f="":EZ(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:EZ(l)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:A?(k1("replaceTilde pr",A),f=`>=${a}.${o}.${l}-${A} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${l} <${a}.${+o+1}.0-0`,k1("tilde return",f),f})},Gro=(e,t)=>e.trim().split(/\s+/).map(r=>Fro(r,t)).join(" "),Fro=(e,t)=>{k1("caret",e,t);let r=t.loose?H9[bZ.CARETLOOSE]:H9[bZ.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(a,o,l,A,f)=>{k1("caret",e,a,o,l,A,f);let I;return EZ(o)?I="":EZ(l)?I=`>=${o}.0.0${n} <${+o+1}.0.0-0`:EZ(A)?o==="0"?I=`>=${o}.${l}.0${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.0${n} <${+o+1}.0.0-0`:f?(k1("replaceCaret pr",f),o==="0"?l==="0"?I=`>=${o}.${l}.${A}-${f} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}-${f} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A}-${f} <${+o+1}.0.0-0`):(k1("no pr"),o==="0"?l==="0"?I=`>=${o}.${l}.${A}${n} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A} <${+o+1}.0.0-0`),k1("caret return",I),I})},Zro=(e,t)=>(k1("replaceXRanges",e,t),e.split(/\s+/).map(r=>Lro(r,t)).join(" ")),Lro=(e,t)=>{e=e.trim();let r=t.loose?H9[bZ.XRANGELOOSE]:H9[bZ.XRANGE];return e.replace(r,(n,a,o,l,A,f)=>{k1("xRange",e,n,a,o,l,A,f);let I=EZ(o),C=I||EZ(l),b=C||EZ(A),E=b;return a==="="&&E&&(a=""),f=t.includePrerelease?"-0":"",I?a===">"||a==="<"?n="<0.0.0-0":n="*":a&&E?(C&&(l=0),A=0,a===">"?(a=">=",C?(o=+o+1,l=0,A=0):(l=+l+1,A=0)):a==="<="&&(a="<",C?o=+o+1:l=+l+1),a==="<"&&(f="-0"),n=`${a+o}.${l}.${A}${f}`):C?n=`>=${o}.0.0${f} <${+o+1}.0.0-0`:b&&(n=`>=${o}.${l}.0${f} <${o}.${+l+1}.0-0`),k1("xRange return",n),n})},Vro=(e,t)=>(k1("replaceStars",e,t),e.trim().replace(H9[bZ.STAR],"")),Pro=(e,t)=>(k1("replaceGTE0",e,t),e.trim().replace(H9[t.includePrerelease?bZ.GTE0PRE:bZ.GTE0],"")),Wro=e=>(t,r,n,a,o,l,A,f,I,C,b,E)=>(EZ(n)?r="":EZ(a)?r=`>=${n}.0.0${e?"-0":""}`:EZ(o)?r=`>=${n}.${a}.0${e?"-0":""}`:l?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,EZ(I)?f="":EZ(C)?f=`<${+I+1}.0.0-0`:EZ(b)?f=`<${I}.${+C+1}.0-0`:E?f=`<=${I}.${C}.${b}-${E}`:e?f=`<${I}.${C}.${+b+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),Oro=(e,t,r)=>{for(let n=0;n0){let a=e[n].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var l3e=H((nHl,Vvn)=>{var u3e=Symbol("SemVer ANY"),X6t=class e{static get ANY(){return u3e}constructor(t,r){if(r=xvn(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),Q6t("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===u3e?this.value="":this.value=this.operator+this.semver.version,Q6t("comp",this)}parse(t){let r=this.options.loose?Gvn[Fvn.COMPARATORLOOSE]:Gvn[Fvn.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Zvn(n[2],this.options.loose):this.semver=u3e}toString(){return this.value}test(t){if(Q6t("Comparator.test",t,this.options.loose),this.semver===u3e||t===u3e)return!0;if(typeof t=="string")try{t=new Zvn(t,this.options)}catch{return!1}return Y6t(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Lvn(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new Lvn(this.value,r).test(t.semver):(r=xvn(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||Y6t(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||Y6t(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};Vvn.exports=X6t;var xvn=qct(),{safeRe:Gvn,t:Fvn}=DSe(),Y6t=W6t(),Q6t=a3e(),Zvn=cG(),Lvn=K5()});var g3e=H((iHl,Pvn)=>{var Mro=K5(),Hro=(e,t,r)=>{try{t=new Mro(t,r)}catch{return!1}return t.test(e)};Pvn.exports=Hro});var Ovn=H((sHl,Wvn)=>{var Yro=K5(),Qro=(e,t)=>new Yro(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));Wvn.exports=Qro});var Hvn=H((oHl,Mvn)=>{var Xro=cG(),Jro=K5(),Uro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Jro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===-1)&&(n=l,a=new Xro(n,r))}),n};Mvn.exports=Uro});var Qvn=H((aHl,Yvn)=>{var Kro=cG(),jro=K5(),zro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new jro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===1)&&(n=l,a=new Kro(n,r))}),n};Yvn.exports=zro});var Uvn=H((cHl,Jvn)=>{var J6t=cG(),qro=K5(),Xvn=c3e(),$ro=(e,t)=>{e=new qro(e,t);let r=new J6t("0.0.0");if(e.test(r)||(r=new J6t("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let A=new J6t(l.semver.version);switch(l.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!o||Xvn(A,o))&&(o=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${l.operator}`)}}),o&&(!r||Xvn(r,o))&&(r=o)}return r&&e.test(r)?r:null};Jvn.exports=$ro});var jvn=H((lHl,Kvn)=>{var eno=K5(),tno=(e,t)=>{try{return new eno(e,t).range||"*"}catch{return null}};Kvn.exports=tno});var alt=H((uHl,eBn)=>{var rno=cG(),$vn=l3e(),{ANY:nno}=$vn,ino=K5(),sno=g3e(),zvn=c3e(),qvn=rlt(),ono=ilt(),ano=nlt(),cno=(e,t,r,n)=>{e=new rno(e,n),t=new ino(t,n);let a,o,l,A,f;switch(r){case">":a=zvn,o=ono,l=qvn,A=">",f=">=";break;case"<":a=qvn,o=ano,l=zvn,A="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(sno(e,t,n))return!1;for(let I=0;I{N.semver===nno&&(N=new $vn(">=0.0.0")),b=b||N,E=E||N,a(N.semver,b.semver,n)?b=N:l(N.semver,E.semver,n)&&(E=N)}),b.operator===A||b.operator===f||(!E.operator||E.operator===A)&&o(e,E.semver))return!1;if(E.operator===f&&l(e,E.semver))return!1}return!0};eBn.exports=cno});var rBn=H((gHl,tBn)=>{var lno=alt(),uno=(e,t,r)=>lno(e,t,">",r);tBn.exports=uno});var iBn=H((AHl,nBn)=>{var gno=alt(),Ano=(e,t,r)=>gno(e,t,"<",r);nBn.exports=Ano});var aBn=H((dHl,oBn)=>{var sBn=K5(),dno=(e,t,r)=>(e=new sBn(e,r),t=new sBn(t,r),e.intersects(t,r));oBn.exports=dno});var lBn=H((pHl,cBn)=>{var pno=g3e(),fno=U5();cBn.exports=(e,t,r)=>{let n=[],a=null,o=null,l=e.sort((C,b)=>fno(C,b,r));for(let C of l)pno(C,t,r)?(o=C,a||(a=C)):(o&&n.push([a,o]),o=null,a=null);a&&n.push([a,null]);let A=[];for(let[C,b]of n)C===b?A.push(C):!b&&C===l[0]?A.push("*"):b?C===l[0]?A.push(`<=${b}`):A.push(`${C} - ${b}`):A.push(`>=${C}`);let f=A.join(" || "),I=typeof t.raw=="string"?t.raw:String(t);return f.length{var uBn=K5(),K6t=l3e(),{ANY:U6t}=K6t,A3e=g3e(),j6t=U5(),Ino=(e,t,r={})=>{if(e===t)return!0;e=new uBn(e,r),t=new uBn(t,r);let n=!1;e:for(let a of e.set){for(let o of t.set){let l=mno(a,o,r);if(n=n||l!==null,l)continue e}if(n)return!1}return!0},hno=[new K6t(">=0.0.0-0")],gBn=[new K6t(">=0.0.0")],mno=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===U6t){if(t.length===1&&t[0].semver===U6t)return!0;r.includePrerelease?e=hno:e=gBn}if(t.length===1&&t[0].semver===U6t){if(r.includePrerelease)return!0;t=gBn}let n=new Set,a,o;for(let N of e)N.operator===">"||N.operator===">="?a=ABn(a,N,r):N.operator==="<"||N.operator==="<="?o=dBn(o,N,r):n.add(N.semver);if(n.size>1)return null;let l;if(a&&o){if(l=j6t(a.semver,o.semver,r),l>0)return null;if(l===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let N of n){if(a&&!A3e(N,String(a),r)||o&&!A3e(N,String(o),r))return null;for(let B of t)if(!A3e(N,String(B),r))return!1;return!0}let A,f,I,C,b=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,E=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;b&&b.prerelease.length===1&&o.operator==="<"&&b.prerelease[0]===0&&(b=!1);for(let N of t){if(C=C||N.operator===">"||N.operator===">=",I=I||N.operator==="<"||N.operator==="<=",a){if(E&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===E.major&&N.semver.minor===E.minor&&N.semver.patch===E.patch&&(E=!1),N.operator===">"||N.operator===">="){if(A=ABn(a,N,r),A===N&&A!==a)return!1}else if(a.operator===">="&&!A3e(a.semver,String(N),r))return!1}if(o){if(b&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===b.major&&N.semver.minor===b.minor&&N.semver.patch===b.patch&&(b=!1),N.operator==="<"||N.operator==="<="){if(f=dBn(o,N,r),f===N&&f!==o)return!1}else if(o.operator==="<="&&!A3e(o.semver,String(N),r))return!1}if(!N.operator&&(o||a)&&l!==0)return!1}return!(a&&I&&!o&&l!==0||o&&C&&!a&&l!==0||E||b)},ABn=(e,t,r)=>{if(!e)return t;let n=j6t(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},dBn=(e,t,r)=>{if(!e)return t;let n=j6t(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};pBn.exports=Ino});var UC=H((IHl,mBn)=>{var z6t=DSe(),IBn=o3e(),Cno=cG(),hBn=G6t(),_no=xfe(),yno=Z6t(),bno=L6t(),Eno=USn(),Sno=zSn(),vno=$Sn(),Bno=tvn(),wno=nvn(),Tno=svn(),Rno=U5(),Nno=lvn(),Dno=gvn(),kno=tlt(),xno=fvn(),Gno=hvn(),Fno=c3e(),Zno=rlt(),Lno=V6t(),Vno=P6t(),Pno=nlt(),Wno=ilt(),Ono=W6t(),Mno=Bvn(),Hno=l3e(),Yno=K5(),Qno=g3e(),Xno=Ovn(),Jno=Hvn(),Uno=Qvn(),Kno=Uvn(),jno=jvn(),zno=alt(),qno=rBn(),$no=iBn(),eio=aBn(),tio=lBn(),rio=fBn();mBn.exports={parse:_no,valid:yno,clean:bno,inc:Eno,diff:Sno,major:vno,minor:Bno,patch:wno,prerelease:Tno,compare:Rno,rcompare:Nno,compareLoose:Dno,compareBuild:kno,sort:xno,rsort:Gno,gt:Fno,lt:Zno,eq:Lno,neq:Vno,gte:Pno,lte:Wno,cmp:Ono,coerce:Mno,Comparator:Hno,Range:Yno,satisfies:Qno,toComparators:Xno,maxSatisfying:Jno,minSatisfying:Uno,minVersion:Kno,validRange:jno,outside:zno,gtr:qno,ltr:$no,intersects:eio,simplifyRange:tio,subset:rio,SemVer:Cno,re:z6t.re,src:z6t.src,tokens:z6t.t,SEMVER_SPEC_VERSION:IBn.SEMVER_SPEC_VERSION,RELEASE_TYPES:IBn.RELEASE_TYPES,compareIdentifiers:hBn.compareIdentifiers,rcompareIdentifiers:hBn.rcompareIdentifiers}});var _Bn=H((hHl,CBn)=>{"use strict";function nio(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Gfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Gfe)}nio(Gfe,Error);Gfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b{switch(xi[1]){case"|":return Vr|xi[3];case"&":return Vr&xi[3];case"^":return Vr^xi[3]}},Hi)},E="!",N=vt("!",!1),B=function(Hi){return!Hi},F="(",Q=vt("(",!1),X=")",ae=vt(")",!1),ne=function(Hi){return Hi},ce=/^[^ \t\n\r()!|&\^]/,fe=xt([" "," ",` `,"\r","(",")","!","|","&","^"],!0,!1),ue=function(Hi){return t.queryPattern.test(Hi)},de=function(Hi){return t.checkFn(Hi)},be=Xt("whitespace"),Se=/^[ \t\n\r]/,De=xt([" "," ",` -`,"\r"],!1,!1),k=0,et=0,ct=[{line:1,column:1}],Me=0,je=[],St=0,At;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Yt(){return e.substring(et,k)}function Tr(){return cr(et,k)}function Nr(Hi,po){throw po=po!==void 0?po:cr(et,k),_n([Xt(Hi)],e.substring(et,k),po)}function er(Hi,po){throw po=po!==void 0?po:cr(et,k),qr(Hi,po)}function vt(Hi,po){return{type:"literal",text:Hi,ignoreCase:po}}function xt(Hi,po,Vr){return{type:"class",parts:Hi,inverted:po,ignoreCase:Vr}}function Zr(){return{type:"any"}}function qt(){return{type:"end"}}function Xt(Hi){return{type:"other",description:Hi}}function lr(Hi){var po=ct[Hi],Vr;if(po)return po;for(Vr=Hi-1;!ct[Vr];)Vr--;for(po=ct[Vr],po={line:po.line,column:po.column};VrMe&&(Me=k,je=[]),je.push(Hi))}function qr(Hi,po){return new xfe(Hi,null,null,po)}function _n(Hi,po,Vr){return new xfe(xfe.buildMessage(Hi,po),Hi,po,Vr)}function ke(){var Hi,po,Vr,xi,io,ga,Ya,Gc;if(Hi=k,po=jt(),po!==r){for(Vr=[],xi=k,io=Nn(),io!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,St===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,St===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,St===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=jt(),Gc!==r?(io=[io,ga,Ya,Gc],xi=io):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);xi!==r;)Vr.push(xi),xi=k,io=Nn(),io!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,St===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,St===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,St===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=jt(),Gc!==r?(io=[io,ga,Ya,Gc],xi=io):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);Vr!==r?(et=Hi,po=b(po,Vr),Hi=po):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function jt(){var Hi,po,Vr,xi,io,ga;return Hi=k,e.charCodeAt(k)===33?(po=E,k++):(po=r,St===0&&Ar(N)),po!==r?(Vr=jt(),Vr!==r?(et=Hi,po=B(Vr),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=k,e.charCodeAt(k)===40?(po=F,k++):(po=r,St===0&&Ar(Q)),po!==r?(Vr=Nn(),Vr!==r?(xi=ke(),xi!==r?(io=Nn(),io!==r?(e.charCodeAt(k)===41?(ga=X,k++):(ga=r,St===0&&Ar(ae)),ga!==r?(et=Hi,po=ne(xi),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=Fn())),Hi}function Fn(){var Hi,po,Vr,xi,io;if(Hi=k,po=Nn(),po!==r){if(Vr=k,xi=[],ce.test(e.charAt(k))?(io=e.charAt(k),k++):(io=r,St===0&&Ar(fe)),io!==r)for(;io!==r;)xi.push(io),ce.test(e.charAt(k))?(io=e.charAt(k),k++):(io=r,St===0&&Ar(fe));else xi=r;xi!==r?Vr=e.substring(Vr,k):Vr=xi,Vr!==r?(et=k,xi=ue(Vr),xi?xi=void 0:xi=r,xi!==r?(et=Hi,po=de(Vr),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function Nn(){var Hi,po;for(St++,Hi=[],Se.test(e.charAt(k))?(po=e.charAt(k),k++):(po=r,St===0&&Ar(De));po!==r;)Hi.push(po),Se.test(e.charAt(k))?(po=e.charAt(k),k++):(po=r,St===0&&Ar(De));return St--,Hi===r&&(po=r,St===0&&Ar(be)),Hi}if(At=a(),At!==r&&k===e.length)return At;throw At!==r&&k{var{parse:Hno}=dBn();olt.makeParser=(e=/[a-z]+/)=>(t,r)=>Hno(t,{queryPattern:e,checkFn:r});olt.parse=olt.makeParser()});var IBn=H((wMl,fBn)=>{"use strict";fBn.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var U6t=H((TMl,mBn)=>{var g3e=IBn(),hBn={};for(let e of Object.keys(g3e))hBn[g3e[e]]=e;var dd={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};mBn.exports=dd;for(let e of Object.keys(dd)){if(!("channels"in dd[e]))throw new Error("missing channels property: "+e);if(!("labels"in dd[e]))throw new Error("missing channel labels property: "+e);if(dd[e].labels.length!==dd[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=dd[e];delete dd[e].channels,delete dd[e].labels,Object.defineProperty(dd[e],"channels",{value:t}),Object.defineProperty(dd[e],"labels",{value:r})}dd.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f;o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360);let I=(a+o)/2;return o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};dd.rgb.hsv=function(e){let t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?(a=0,o=0):(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};dd.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],a=dd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};dd.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(1-t,1-r,1-n),o=(1-t-a)/(1-a)||0,l=(1-r-a)/(1-a)||0,A=(1-n-a)/(1-a)||0;return[o*100,l*100,A*100,a*100]};function Yno(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}dd.rgb.keyword=function(e){let t=hBn[e];if(t)return t;let r=1/0,n;for(let a of Object.keys(g3e)){let o=g3e[a],l=Yno(e,o);l.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92;let a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};dd.rgb.lab=function(e){let t=dd.rgb.xyz(e),r=t[0],n=t[1],a=t[2];r/=95.047,n/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*n-16,l=500*(r-n),A=200*(n-a);return[o,l,A]};dd.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?a=n*(1+r):a=n+r-n*r;let A=2*n-a,f=[0,0,0];for(let I=0;I<3;I++)o=t+1/3*-(I-1),o<0&&o++,o>1&&o--,6*o<1?l=A+(a-A)*6*o:2*o<1?l=a:3*o<2?l=A+(a-A)*(2/3-o)*6:l=A,f[I]=l*255;return f};dd.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o;let l=(n+r)/2,A=n===0?2*a/(o+a):2*r/(n+r);return[t,A*100,l*100]};dd.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};dd.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l;l=(2-r)*n;let A=(2-r)*a;return o=r*a,o/=A<=1?A:2-A,o=o||0,l/=2,[t,o*100,l*100]};dd.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o;a>1&&(r/=a,n/=a);let l=Math.floor(6*t),A=1-n;o=6*t-l,l&1&&(o=1-o);let f=r+o*(A-r),I,C,b;switch(l){default:case 6:case 0:I=A,C=f,b=r;break;case 1:I=f,C=A,b=r;break;case 2:I=r,C=A,b=f;break;case 3:I=r,C=f,b=A;break;case 4:I=f,C=r,b=A;break;case 5:I=A,C=r,b=f;break}return[I*255,C*255,b*255]};dd.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a);return[o*255,l*255,A*255]};dd.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,l=l>.0031308?1.055*l**(1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};dd.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let a=116*r-16,o=500*(t-r),l=200*(r-n);return[a,o,l]};dd.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;let A=o**3,f=a**3,I=l**3;return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};dd.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],a;a=Math.atan2(n,r)*360/2/Math.PI,a<0&&(a+=360);let l=Math.sqrt(r*r+n*n);return[t,l,a]};dd.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),l=r*Math.sin(a);return[t,o,l]};dd.rgb.ansi16=function(e,t=null){let[r,n,a]=e,o=t===null?dd.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let l=30+(Math.round(a/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return o===2&&(l+=60),l};dd.hsv.ansi16=function(e){return dd.rgb.ansi16(dd.hsv.rgb(e),e[2])};dd.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};dd.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};dd.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,n,a]};dd.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};dd.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(A=>A+A).join(""));let n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};dd.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l,f/=6,f%=1,[f*360,l*100,A*100]};dd.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),a=0;return n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};dd.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};dd.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};dd.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};dd.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};dd.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};dd.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};dd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};dd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};dd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};dd.gray.hsl=function(e){return[0,0,e[0]]};dd.gray.hsv=dd.gray.hsl;dd.gray.hwb=function(e){return[0,100,e[0]]};dd.gray.cmyk=function(e){return[0,0,0,e[0]]};dd.gray.lab=function(e){return[e[0],0,0]};dd.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n};dd.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var _Bn=H((RMl,CBn)=>{var alt=U6t();function Qno(){let e={},t=Object.keys(alt);for(let r=t.length,n=0;n{var K6t=U6t(),Kno=_Bn(),kSe={},jno=Object.keys(K6t);function zno(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function qno(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let a=e(r);if(typeof a=="object")for(let o=a.length,l=0;l{kSe[e]={},Object.defineProperty(kSe[e],"channels",{value:K6t[e].channels}),Object.defineProperty(kSe[e],"labels",{value:K6t[e].labels});let t=Kno(e);Object.keys(t).forEach(n=>{let a=t[n];kSe[e][n]=qno(a),kSe[e][n].raw=zno(a)})});yBn.exports=kSe});var llt=H((DMl,wBn)=>{"use strict";var EBn=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,SBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};5;${n}m`},vBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};2;${n[0]};${n[1]};${n[2]}m`},clt=e=>e,BBn=(e,t,r)=>[e,t,r],xSe=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let n=r();return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0}),n},enumerable:!0,configurable:!0})},j6t,GSe=(e,t,r,n)=>{j6t===void 0&&(j6t=bBn());let a=n?10:0,o={};for(let[l,A]of Object.entries(j6t)){let f=l==="ansi16"?"ansi":l;l===t?o[f]=e(r,a):typeof A=="object"&&(o[f]=e(A[t],a))}return o};function $no(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,n]of Object.entries(t)){for(let[a,o]of Object.entries(n))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:n,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",xSe(t.color,"ansi",()=>GSe(EBn,"ansi16",clt,!1)),xSe(t.color,"ansi256",()=>GSe(SBn,"ansi256",clt,!1)),xSe(t.color,"ansi16m",()=>GSe(vBn,"rgb",BBn,!1)),xSe(t.bgColor,"ansi",()=>GSe(EBn,"ansi16",clt,!0)),xSe(t.bgColor,"ansi256",()=>GSe(SBn,"ansi256",clt,!0)),xSe(t.bgColor,"ansi16m",()=>GSe(vBn,"rgb",BBn,!0)),t}Object.defineProperty(wBn,"exports",{enumerable:!0,get:$no})});var z6t=H((kMl,TBn)=>{"use strict";TBn.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n{"use strict";var eio=wt("os"),RBn=wt("tty"),j5=z6t(),{env:JN}=process,roe;j5("no-color")||j5("no-colors")||j5("color=false")||j5("color=never")?roe=0:(j5("color")||j5("colors")||j5("color=true")||j5("color=always"))&&(roe=1);"FORCE_COLOR"in JN&&(JN.FORCE_COLOR==="true"?roe=1:JN.FORCE_COLOR==="false"?roe=0:roe=JN.FORCE_COLOR.length===0?1:Math.min(parseInt(JN.FORCE_COLOR,10),3));function q6t(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function $6t(e,t){if(roe===0)return 0;if(j5("color=16m")||j5("color=full")||j5("color=truecolor"))return 3;if(j5("color=256"))return 2;if(e&&!t&&roe===void 0)return 0;let r=roe||0;if(JN.TERM==="dumb")return r;if(process.platform==="win32"){let n=eio.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in JN)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in JN)||JN.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in JN)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(JN.TEAMCITY_VERSION)?1:0;if(JN.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in JN){let n=parseInt((JN.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(JN.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(JN.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(JN.TERM)||"COLORTERM"in JN?1:r}function tio(e){let t=$6t(e,e&&e.isTTY);return q6t(t)}NBn.exports={supportsColor:tio,stdout:q6t($6t(!0,RBn.isatty(1))),stderr:q6t($6t(!0,RBn.isatty(2)))}});var kBn=H((GMl,DBn)=>{"use strict";var rio=(e,t,r)=>{let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.substr(o,n-o)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.substr(o),l},nio=(e,t,r,n)=>{let a=0,o="";do{let l=e[n-1]==="\r";o+=e.substr(a,(l?n-1:n)-a)+t+(l?`\r +`,"\r"],!1,!1),k=0,et=0,ct=[{line:1,column:1}],Me=0,je=[],St=0,At;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Yt(){return e.substring(et,k)}function Tr(){return cr(et,k)}function Nr(Hi,po){throw po=po!==void 0?po:cr(et,k),_n([Xt(Hi)],e.substring(et,k),po)}function er(Hi,po){throw po=po!==void 0?po:cr(et,k),qr(Hi,po)}function vt(Hi,po){return{type:"literal",text:Hi,ignoreCase:po}}function xt(Hi,po,Vr){return{type:"class",parts:Hi,inverted:po,ignoreCase:Vr}}function Zr(){return{type:"any"}}function qt(){return{type:"end"}}function Xt(Hi){return{type:"other",description:Hi}}function lr(Hi){var po=ct[Hi],Vr;if(po)return po;for(Vr=Hi-1;!ct[Vr];)Vr--;for(po=ct[Vr],po={line:po.line,column:po.column};VrMe&&(Me=k,je=[]),je.push(Hi))}function qr(Hi,po){return new Gfe(Hi,null,null,po)}function _n(Hi,po,Vr){return new Gfe(Gfe.buildMessage(Hi,po),Hi,po,Vr)}function ke(){var Hi,po,Vr,xi,io,ga,Ya,Gc;if(Hi=k,po=jt(),po!==r){for(Vr=[],xi=k,io=Nn(),io!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,St===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,St===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,St===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=jt(),Gc!==r?(io=[io,ga,Ya,Gc],xi=io):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);xi!==r;)Vr.push(xi),xi=k,io=Nn(),io!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,St===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,St===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,St===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=jt(),Gc!==r?(io=[io,ga,Ya,Gc],xi=io):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);Vr!==r?(et=Hi,po=b(po,Vr),Hi=po):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function jt(){var Hi,po,Vr,xi,io,ga;return Hi=k,e.charCodeAt(k)===33?(po=E,k++):(po=r,St===0&&Ar(N)),po!==r?(Vr=jt(),Vr!==r?(et=Hi,po=B(Vr),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=k,e.charCodeAt(k)===40?(po=F,k++):(po=r,St===0&&Ar(Q)),po!==r?(Vr=Nn(),Vr!==r?(xi=ke(),xi!==r?(io=Nn(),io!==r?(e.charCodeAt(k)===41?(ga=X,k++):(ga=r,St===0&&Ar(ae)),ga!==r?(et=Hi,po=ne(xi),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=Fn())),Hi}function Fn(){var Hi,po,Vr,xi,io;if(Hi=k,po=Nn(),po!==r){if(Vr=k,xi=[],ce.test(e.charAt(k))?(io=e.charAt(k),k++):(io=r,St===0&&Ar(fe)),io!==r)for(;io!==r;)xi.push(io),ce.test(e.charAt(k))?(io=e.charAt(k),k++):(io=r,St===0&&Ar(fe));else xi=r;xi!==r?Vr=e.substring(Vr,k):Vr=xi,Vr!==r?(et=k,xi=ue(Vr),xi?xi=void 0:xi=r,xi!==r?(et=Hi,po=de(Vr),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function Nn(){var Hi,po;for(St++,Hi=[],Se.test(e.charAt(k))?(po=e.charAt(k),k++):(po=r,St===0&&Ar(De));po!==r;)Hi.push(po),Se.test(e.charAt(k))?(po=e.charAt(k),k++):(po=r,St===0&&Ar(De));return St--,Hi===r&&(po=r,St===0&&Ar(be)),Hi}if(At=a(),At!==r&&k===e.length)return At;throw At!==r&&k{var{parse:sio}=_Bn();clt.makeParser=(e=/[a-z]+/)=>(t,r)=>sio(t,{queryPattern:e,checkFn:r});clt.parse=clt.makeParser()});var EBn=H((CHl,bBn)=>{"use strict";bBn.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var q6t=H((_Hl,vBn)=>{var d3e=EBn(),SBn={};for(let e of Object.keys(d3e))SBn[d3e[e]]=e;var dd={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};vBn.exports=dd;for(let e of Object.keys(dd)){if(!("channels"in dd[e]))throw new Error("missing channels property: "+e);if(!("labels"in dd[e]))throw new Error("missing channel labels property: "+e);if(dd[e].labels.length!==dd[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=dd[e];delete dd[e].channels,delete dd[e].labels,Object.defineProperty(dd[e],"channels",{value:t}),Object.defineProperty(dd[e],"labels",{value:r})}dd.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f;o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360);let I=(a+o)/2;return o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};dd.rgb.hsv=function(e){let t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?(a=0,o=0):(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};dd.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],a=dd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};dd.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(1-t,1-r,1-n),o=(1-t-a)/(1-a)||0,l=(1-r-a)/(1-a)||0,A=(1-n-a)/(1-a)||0;return[o*100,l*100,A*100,a*100]};function oio(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}dd.rgb.keyword=function(e){let t=SBn[e];if(t)return t;let r=1/0,n;for(let a of Object.keys(d3e)){let o=d3e[a],l=oio(e,o);l.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92;let a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};dd.rgb.lab=function(e){let t=dd.rgb.xyz(e),r=t[0],n=t[1],a=t[2];r/=95.047,n/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*n-16,l=500*(r-n),A=200*(n-a);return[o,l,A]};dd.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?a=n*(1+r):a=n+r-n*r;let A=2*n-a,f=[0,0,0];for(let I=0;I<3;I++)o=t+1/3*-(I-1),o<0&&o++,o>1&&o--,6*o<1?l=A+(a-A)*6*o:2*o<1?l=a:3*o<2?l=A+(a-A)*(2/3-o)*6:l=A,f[I]=l*255;return f};dd.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o;let l=(n+r)/2,A=n===0?2*a/(o+a):2*r/(n+r);return[t,A*100,l*100]};dd.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};dd.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l;l=(2-r)*n;let A=(2-r)*a;return o=r*a,o/=A<=1?A:2-A,o=o||0,l/=2,[t,o*100,l*100]};dd.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o;a>1&&(r/=a,n/=a);let l=Math.floor(6*t),A=1-n;o=6*t-l,l&1&&(o=1-o);let f=r+o*(A-r),I,C,b;switch(l){default:case 6:case 0:I=A,C=f,b=r;break;case 1:I=f,C=A,b=r;break;case 2:I=r,C=A,b=f;break;case 3:I=r,C=f,b=A;break;case 4:I=f,C=r,b=A;break;case 5:I=A,C=r,b=f;break}return[I*255,C*255,b*255]};dd.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a);return[o*255,l*255,A*255]};dd.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,l=l>.0031308?1.055*l**(1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};dd.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let a=116*r-16,o=500*(t-r),l=200*(r-n);return[a,o,l]};dd.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;let A=o**3,f=a**3,I=l**3;return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};dd.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],a;a=Math.atan2(n,r)*360/2/Math.PI,a<0&&(a+=360);let l=Math.sqrt(r*r+n*n);return[t,l,a]};dd.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),l=r*Math.sin(a);return[t,o,l]};dd.rgb.ansi16=function(e,t=null){let[r,n,a]=e,o=t===null?dd.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let l=30+(Math.round(a/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return o===2&&(l+=60),l};dd.hsv.ansi16=function(e){return dd.rgb.ansi16(dd.hsv.rgb(e),e[2])};dd.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};dd.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};dd.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,n,a]};dd.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};dd.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(A=>A+A).join(""));let n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};dd.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l,f/=6,f%=1,[f*360,l*100,A*100]};dd.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),a=0;return n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};dd.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};dd.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};dd.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};dd.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};dd.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};dd.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};dd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};dd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};dd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};dd.gray.hsl=function(e){return[0,0,e[0]]};dd.gray.hsv=dd.gray.hsl;dd.gray.hwb=function(e){return[0,100,e[0]]};dd.gray.cmyk=function(e){return[0,0,0,e[0]]};dd.gray.lab=function(e){return[e[0],0,0]};dd.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n};dd.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var wBn=H((yHl,BBn)=>{var llt=q6t();function aio(){let e={},t=Object.keys(llt);for(let r=t.length,n=0;n{var $6t=q6t(),gio=wBn(),xSe={},Aio=Object.keys($6t);function dio(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function pio(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let a=e(r);if(typeof a=="object")for(let o=a.length,l=0;l{xSe[e]={},Object.defineProperty(xSe[e],"channels",{value:$6t[e].channels}),Object.defineProperty(xSe[e],"labels",{value:$6t[e].labels});let t=gio(e);Object.keys(t).forEach(n=>{let a=t[n];xSe[e][n]=pio(a),xSe[e][n].raw=dio(a)})});TBn.exports=xSe});var glt=H((EHl,GBn)=>{"use strict";var NBn=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,DBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};5;${n}m`},kBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};2;${n[0]};${n[1]};${n[2]}m`},ult=e=>e,xBn=(e,t,r)=>[e,t,r],GSe=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let n=r();return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0}),n},enumerable:!0,configurable:!0})},e7t,FSe=(e,t,r,n)=>{e7t===void 0&&(e7t=RBn());let a=n?10:0,o={};for(let[l,A]of Object.entries(e7t)){let f=l==="ansi16"?"ansi":l;l===t?o[f]=e(r,a):typeof A=="object"&&(o[f]=e(A[t],a))}return o};function fio(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,n]of Object.entries(t)){for(let[a,o]of Object.entries(n))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:n,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",GSe(t.color,"ansi",()=>FSe(NBn,"ansi16",ult,!1)),GSe(t.color,"ansi256",()=>FSe(DBn,"ansi256",ult,!1)),GSe(t.color,"ansi16m",()=>FSe(kBn,"rgb",xBn,!1)),GSe(t.bgColor,"ansi",()=>FSe(NBn,"ansi16",ult,!0)),GSe(t.bgColor,"ansi256",()=>FSe(DBn,"ansi256",ult,!0)),GSe(t.bgColor,"ansi16m",()=>FSe(kBn,"rgb",xBn,!0)),t}Object.defineProperty(GBn,"exports",{enumerable:!0,get:fio})});var t7t=H((SHl,FBn)=>{"use strict";FBn.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n{"use strict";var Iio=wt("os"),ZBn=wt("tty"),j5=t7t(),{env:JN}=process,noe;j5("no-color")||j5("no-colors")||j5("color=false")||j5("color=never")?noe=0:(j5("color")||j5("colors")||j5("color=true")||j5("color=always"))&&(noe=1);"FORCE_COLOR"in JN&&(JN.FORCE_COLOR==="true"?noe=1:JN.FORCE_COLOR==="false"?noe=0:noe=JN.FORCE_COLOR.length===0?1:Math.min(parseInt(JN.FORCE_COLOR,10),3));function r7t(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function n7t(e,t){if(noe===0)return 0;if(j5("color=16m")||j5("color=full")||j5("color=truecolor"))return 3;if(j5("color=256"))return 2;if(e&&!t&&noe===void 0)return 0;let r=noe||0;if(JN.TERM==="dumb")return r;if(process.platform==="win32"){let n=Iio.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in JN)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in JN)||JN.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in JN)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(JN.TEAMCITY_VERSION)?1:0;if(JN.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in JN){let n=parseInt((JN.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(JN.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(JN.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(JN.TERM)||"COLORTERM"in JN?1:r}function hio(e){let t=n7t(e,e&&e.isTTY);return r7t(t)}LBn.exports={supportsColor:hio,stdout:r7t(n7t(!0,ZBn.isatty(1))),stderr:r7t(n7t(!0,ZBn.isatty(2)))}});var PBn=H((BHl,VBn)=>{"use strict";var mio=(e,t,r)=>{let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.substr(o,n-o)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.substr(o),l},Cio=(e,t,r,n)=>{let a=0,o="";do{let l=e[n-1]==="\r";o+=e.substr(a,(l?n-1:n)-a)+t+(l?`\r `:` `)+r,a=n+1,n=e.indexOf(` -`,a)}while(n!==-1);return o+=e.substr(a),o};DBn.exports={stringReplaceAll:rio,stringEncaseCRLFWithFirstIndex:nio}});var LBn=H((FMl,ZBn)=>{"use strict";var iio=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,xBn=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,sio=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,oio=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,aio=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function FBn(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):aio.get(e)||e}function cio(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n){let l=Number(o);if(!Number.isNaN(l))r.push(l);else if(a=o.match(sio))r.push(a[2].replace(oio,(A,f,I)=>f?FBn(f):I));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function lio(e){xBn.lastIndex=0;let t=[],r;for(;(r=xBn.exec(e))!==null;){let n=r[1];if(r[2]){let a=cio(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function GBn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);n=o.length>0?n[a](...o):n[a]}return n}ZBn.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(iio,(o,l,A,f,I,C)=>{if(l)a.push(FBn(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:GBn(e,r)(b)),r.push({inverse:A,styles:lio(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(GBn(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var VK=H((ZMl,HBn)=>{"use strict";var A3e=llt(),{stdout:r7t,stderr:n7t}=e7t(),{stringReplaceAll:uio,stringEncaseCRLFWithFirstIndex:gio}=kBn(),{isArray:ult}=Array,PBn=["ansi","ansi","ansi256","ansi16m"],FSe=Object.create(null),Aio=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=r7t?r7t.level:0;e.level=t.level===void 0?r:t.level},i7t=class{constructor(t){return WBn(t)}},WBn=e=>{let t={};return Aio(t,e),t.template=(...r)=>MBn(t.template,...r),Object.setPrototypeOf(t,glt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=i7t,t.template};function glt(e){return WBn(e)}for(let[e,t]of Object.entries(A3e))FSe[e]={get(){let r=Alt(this,s7t(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};FSe.visible={get(){let e=Alt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var OBn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of OBn)FSe[e]={get(){let{level:t}=this;return function(...r){let n=s7t(A3e.color[PBn[t]][e](...r),A3e.color.close,this._styler);return Alt(this,n,this._isEmpty)}}};for(let e of OBn){let t="bg"+e[0].toUpperCase()+e.slice(1);FSe[t]={get(){let{level:r}=this;return function(...n){let a=s7t(A3e.bgColor[PBn[r]][e](...n),A3e.bgColor.close,this._styler);return Alt(this,a,this._isEmpty)}}}}var dio=Object.defineProperties(()=>{},{...FSe,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),s7t=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},Alt=(e,t,r)=>{let n=(...a)=>ult(a[0])&&ult(a[0].raw)?VBn(n,MBn(n,...a)):VBn(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,dio),n._generator=e,n._styler=t,n._isEmpty=r,n},VBn=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=uio(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=gio(t,a,n,o)),n+t+a},t7t,MBn=(e,...t)=>{let[r]=t;if(!ult(r)||!ult(r.raw))return t.join(" ");let n=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";z5.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;z5.find=(e,t)=>e.nodes.find(r=>r.type===t);z5.exceedsLimit=(e,t,r=1,n)=>n===!1||!z5.isInteger(e)||!z5.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=n;z5.escapeNode=(e,t=0,r)=>{let n=e.nodes[t];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};z5.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);z5.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;z5.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;z5.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);z5.flatten=(...e)=>{let t=[],r=n=>{for(let a=0;a{"use strict";var YBn=plt();QBn.exports=(e,t={})=>{let r=(n,a={})=>{let o=t.escapeInvalid&&YBn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A="";if(n.value)return(o||l)&&YBn.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let f of n.nodes)A+=r(f);return A};return r(e)}});var JBn=H((PMl,XBn)=>{"use strict";XBn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var rwn=H((WMl,twn)=>{"use strict";var UBn=JBn(),Gfe=(e,t,r)=>{if(UBn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(UBn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let a=String(n.relaxZeros),o=String(n.shorthand),l=String(n.capture),A=String(n.wrap),f=e+":"+t+"="+a+o+l+A;if(Gfe.cache.hasOwnProperty(f))return Gfe.cache[f].result;let I=Math.min(e,t),C=Math.max(e,t);if(Math.abs(I-C)===1){let F=e+"|"+t;return n.capture?`(${F})`:n.wrap===!1?F:`(?:${F})`}let b=ewn(e)||ewn(t),E={min:e,max:t,a:I,b:C},N=[],B=[];if(b&&(E.isPadded=b,E.maxLen=String(E.max).length),I<0){let F=C<0?Math.abs(C):1;B=KBn(F,Math.abs(I),E,n),I=E.a=0}return C>=0&&(N=KBn(I,C,E,n)),E.negatives=B,E.positives=N,E.result=pio(B,N,n),n.capture===!0?E.result=`(${E.result})`:n.wrap!==!1&&N.length+B.length>1&&(E.result=`(?:${E.result})`),Gfe.cache[f]=E,E.result};function pio(e,t,r){let n=o7t(e,t,"-",!1,r)||[],a=o7t(t,e,"",!1,r)||[],o=o7t(e,t,"-?",!0,r)||[];return n.concat(o).concat(a).join("|")}function fio(e,t){let r=1,n=1,a=zBn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=zBn(e,r);for(a=qBn(t+1,n)-1;e1&&A.count.pop(),A.count.push(C.count[0]),A.string=A.pattern+$Bn(A.count),l=I+1;continue}r.isPadded&&(b=_io(I,r,n)),C.string=b+C.pattern+$Bn(C.count),o.push(C),l=I+1,A=C}return o}function o7t(e,t,r,n,a){let o=[];for(let l of e){let{string:A}=l;!n&&!jBn(t,"string",A)&&o.push(r+A),n&&jBn(t,"string",A)&&o.push(r+A)}return o}function hio(e,t){let r=[];for(let n=0;nt?1:t>e?-1:0}function jBn(e,t,r){return e.some(n=>n[t]===r)}function zBn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function qBn(e,t){return e-e%Math.pow(10,t)}function $Bn(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function Cio(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function ewn(e){return/^-?(0+)\d/.test(e)}function _io(e,t,r){if(!t.isPadded)return e;let n=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${n}}`:`0{${n}}`}}Gfe.cache={};Gfe.clearCache=()=>Gfe.cache={};twn.exports=Gfe});var l7t=H((OMl,lwn)=>{"use strict";var yio=wt("util"),iwn=rwn(),nwn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),bio=e=>t=>e===!0?Number(t):String(t),a7t=e=>typeof e=="number"||typeof e=="string"&&e!=="",d3e=e=>Number.isInteger(+e),c7t=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},Eio=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,Sio=(e,t,r)=>{if(t>0){let n=e[0]==="-"?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return r===!1?String(e):e},hlt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((A,f)=>Af?1:0),e.positives.sort((A,f)=>Af?1:0);let n=t.capture?"":"?:",a="",o="",l;return e.positives.length&&(a=e.positives.map(A=>hlt(String(A),r)).join("|")),e.negatives.length&&(o=`-(${n}${e.negatives.map(A=>hlt(String(A),r)).join("|")})`),a&&o?l=`${a}|${o}`:l=a||o,t.wrap?`(${n}${l})`:l},swn=(e,t,r,n)=>{if(r)return iwn(e,t,{wrap:!1,...n});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},own=(e,t,r)=>{if(Array.isArray(e)){let n=r.wrap===!0,a=r.capture?"":"?:";return n?`(${a}${e.join("|")})`:e.join("|")}return iwn(e,t,r)},awn=(...e)=>new RangeError("Invalid range arguments: "+yio.inspect(...e)),cwn=(e,t,r)=>{if(r.strictRanges===!0)throw awn([e,t]);return[]},Bio=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},wio=(e,t,r=1,n={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(n.strictRanges===!0)throw awn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let l=a>o,A=String(e),f=String(t),I=String(r);r=Math.max(Math.abs(r),1);let C=c7t(A)||c7t(f)||c7t(I),b=C?Math.max(A.length,f.length,I.length):0,E=C===!1&&Eio(e,t,n)===!1,N=n.transform||bio(E);if(n.toRegex&&r===1)return swn(hlt(e,b),hlt(t,b),!0,n);let B={negatives:[],positives:[]},F=ae=>B[ae<0?"negatives":"positives"].push(Math.abs(ae)),Q=[],X=0;for(;l?a>=o:a<=o;)n.toRegex===!0&&r>1?F(a):Q.push(Sio(N(a,X),b,E)),a=l?a-r:a+r,X++;return n.toRegex===!0?r>1?vio(B,n,b):own(Q,null,{wrap:!1,...n}):Q},Tio=(e,t,r=1,n={})=>{if(!d3e(e)&&e.length>1||!d3e(t)&&t.length>1)return cwn(e,t,n);let a=n.transform||(E=>String.fromCharCode(E)),o=`${e}`.charCodeAt(0),l=`${t}`.charCodeAt(0),A=o>l,f=Math.min(o,l),I=Math.max(o,l);if(n.toRegex&&r===1)return swn(f,I,!1,n);let C=[],b=0;for(;A?o>=l:o<=l;)C.push(a(o,b)),o=A?o-r:o+r,b++;return n.toRegex===!0?own(C,null,{wrap:!1,options:n}):C},Ilt=(e,t,r,n={})=>{if(t==null&&a7t(e))return[e];if(!a7t(e)||!a7t(t))return cwn(e,t,n);if(typeof r=="function")return Ilt(e,t,1,{transform:r});if(nwn(r))return Ilt(e,t,0,r);let a={...n};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,d3e(r)?d3e(e)&&d3e(t)?wio(e,t,r,a):Tio(e,t,Math.max(Math.abs(r),1),a):r!=null&&!nwn(r)?Bio(r,a):Ilt(e,t,1,r)};lwn.exports=Ilt});var Awn=H((MMl,gwn)=>{"use strict";var Rio=l7t(),uwn=plt(),Nio=(e,t={})=>{let r=(n,a={})=>{let o=uwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A=o===!0||l===!0,f=t.escapeInvalid===!0?"\\":"",I="";if(n.isOpen===!0)return f+n.value;if(n.isClose===!0)return console.log("node.isClose",f,n.value),f+n.value;if(n.type==="open")return A?f+n.value:"(";if(n.type==="close")return A?f+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":A?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let C=uwn.reduce(n.nodes),b=Rio(...C,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(b.length!==0)return C.length>1&&b.length>1?`(${b})`:b}if(n.nodes)for(let C of n.nodes)I+=r(C,n);return I};return r(e)};gwn.exports=Nio});var fwn=H((HMl,pwn)=>{"use strict";var Dio=l7t(),dwn=flt(),ZSe=plt(),Ffe=(e="",t="",r=!1)=>{let n=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?ZSe.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)n.push(Ffe(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),n.push(Array.isArray(o)?Ffe(a,o,r):a+o);return ZSe.flatten(n)},kio=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,n=(a,o={})=>{a.queue=[];let l=o,A=o.queue;for(;l.type!=="brace"&&l.type!=="root"&&l.parent;)l=l.parent,A=l.queue;if(a.invalid||a.dollar){A.push(Ffe(A.pop(),dwn(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){A.push(Ffe(A.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let b=ZSe.reduce(a.nodes);if(ZSe.exceedsLimit(...b,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let E=Dio(...b,t);E.length===0&&(E=dwn(a,t)),A.push(Ffe(A.pop(),E)),a.nodes=[];return}let f=ZSe.encloseBrace(a),I=a.queue,C=a;for(;C.type!=="brace"&&C.type!=="root"&&C.parent;)C=C.parent,I=C.queue;for(let b=0;b{"use strict";Iwn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` -`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var bwn=H((QMl,ywn)=>{"use strict";var xio=flt(),{MAX_LENGTH:mwn,CHAR_BACKSLASH:u7t,CHAR_BACKTICK:Gio,CHAR_COMMA:Fio,CHAR_DOT:Zio,CHAR_LEFT_PARENTHESES:Lio,CHAR_RIGHT_PARENTHESES:Vio,CHAR_LEFT_CURLY_BRACE:Pio,CHAR_RIGHT_CURLY_BRACE:Wio,CHAR_LEFT_SQUARE_BRACKET:Cwn,CHAR_RIGHT_SQUARE_BRACKET:_wn,CHAR_DOUBLE_QUOTE:Oio,CHAR_SINGLE_QUOTE:Mio,CHAR_NO_BREAK_SPACE:Hio,CHAR_ZERO_WIDTH_NOBREAK_SPACE:Yio}=hwn(),Qio=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},n=typeof r.maxLength=="number"?Math.min(mwn,r.maxLength):mwn;if(e.length>n)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${n})`);let a={type:"root",input:e,nodes:[]},o=[a],l=a,A=a,f=0,I=e.length,C=0,b=0,E,N=()=>e[C++],B=F=>{if(F.type==="text"&&A.type==="dot"&&(A.type="text"),A&&A.type==="text"&&F.type==="text"){A.value+=F.value;return}return l.nodes.push(F),F.parent=l,F.prev=A,A=F,F};for(B({type:"bos"});C0){if(l.ranges>0){l.ranges=0;let F=l.nodes.shift();l.nodes=[F,{type:"text",value:xio(l)}]}B({type:"comma",value:E}),l.commas++;continue}if(E===Zio&&b>0&&l.commas===0){let F=l.nodes;if(b===0||F.length===0){B({type:"text",value:E});continue}if(A.type==="dot"){if(l.range=[],A.value+=E,A.type="range",l.nodes.length!==3&&l.nodes.length!==5){l.invalid=!0,l.ranges=0,A.type="text";continue}l.ranges++,l.args=[];continue}if(A.type==="range"){F.pop();let Q=F[F.length-1];Q.value+=A.value+E,A=Q,l.ranges--;continue}B({type:"dot",value:E});continue}B({type:"text",value:E})}do if(l=o.pop(),l.type!=="root"){l.nodes.forEach(X=>{X.nodes||(X.type==="open"&&(X.isOpen=!0),X.type==="close"&&(X.isClose=!0),X.nodes||(X.type="text"),X.invalid=!0)});let F=o[o.length-1],Q=F.nodes.indexOf(l);F.nodes.splice(Q,1,...l.nodes)}while(o.length>0);return B({type:"eos"}),a};ywn.exports=Qio});var vwn=H((XMl,Swn)=>{"use strict";var Ewn=flt(),Xio=Awn(),Jio=fwn(),Uio=bwn(),NW=(e,t={})=>{let r=[];if(Array.isArray(e))for(let n of e){let a=NW.create(n,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(NW.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};NW.parse=(e,t={})=>Uio(e,t);NW.stringify=(e,t={})=>Ewn(typeof e=="string"?NW.parse(e,t):e,t);NW.compile=(e,t={})=>(typeof e=="string"&&(e=NW.parse(e,t)),Xio(e,t));NW.expand=(e,t={})=>{typeof e=="string"&&(e=NW.parse(e,t));let r=Jio(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};NW.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?NW.compile(e,t):NW.expand(e,t);Swn.exports=NW});var p3e=H((JMl,Nwn)=>{"use strict";var Kio=wt("path"),PK="\\\\/",Bwn=`[^${PK}]`,Uq="\\.",jio="\\+",zio="\\?",mlt="\\/",qio="(?=.)",wwn="[^/]",g7t=`(?:${mlt}|$)`,Twn=`(?:^|${mlt})`,A7t=`${Uq}{1,2}${g7t}`,$io=`(?!${Uq})`,eso=`(?!${Twn}${A7t})`,tso=`(?!${Uq}{0,1}${g7t})`,rso=`(?!${A7t})`,nso=`[^.${mlt}]`,iso=`${wwn}*?`,Rwn={DOT_LITERAL:Uq,PLUS_LITERAL:jio,QMARK_LITERAL:zio,SLASH_LITERAL:mlt,ONE_CHAR:qio,QMARK:wwn,END_ANCHOR:g7t,DOTS_SLASH:A7t,NO_DOT:$io,NO_DOTS:eso,NO_DOT_SLASH:tso,NO_DOTS_SLASH:rso,QMARK_NO_DOT:nso,STAR:iso,START_ANCHOR:Twn},sso={...Rwn,SLASH_LITERAL:`[${PK}]`,QMARK:Bwn,STAR:`${Bwn}*?`,DOTS_SLASH:`${Uq}{1,2}(?:[${PK}]|$)`,NO_DOT:`(?!${Uq})`,NO_DOTS:`(?!(?:^|[${PK}])${Uq}{1,2}(?:[${PK}]|$))`,NO_DOT_SLASH:`(?!${Uq}{0,1}(?:[${PK}]|$))`,NO_DOTS_SLASH:`(?!${Uq}{1,2}(?:[${PK}]|$))`,QMARK_NO_DOT:`[^.${PK}]`,START_ANCHOR:`(?:^|[${PK}])`,END_ANCHOR:`(?:[${PK}]|$)`},oso={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Nwn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:oso,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:Kio.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?sso:Rwn}}});var f3e=H(Y9=>{"use strict";var aso=wt("path"),cso=process.platform==="win32",{REGEX_BACKSLASH:lso,REGEX_REMOVE_BACKSLASH:uso,REGEX_SPECIAL_CHARS:gso,REGEX_SPECIAL_CHARS_GLOBAL:Aso}=p3e();Y9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);Y9.hasRegexChars=e=>gso.test(e);Y9.isRegexChar=e=>e.length===1&&Y9.hasRegexChars(e);Y9.escapeRegex=e=>e.replace(Aso,"\\$1");Y9.toPosixSlashes=e=>e.replace(lso,"/");Y9.removeBackslashes=e=>e.replace(uso,t=>t==="\\"?"":t);Y9.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};Y9.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:cso===!0||aso.sep==="\\";Y9.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?Y9.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};Y9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};Y9.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var Vwn=H((KMl,Lwn)=>{"use strict";var Dwn=f3e(),{CHAR_ASTERISK:d7t,CHAR_AT:dso,CHAR_BACKWARD_SLASH:I3e,CHAR_COMMA:pso,CHAR_DOT:p7t,CHAR_EXCLAMATION_MARK:f7t,CHAR_FORWARD_SLASH:Zwn,CHAR_LEFT_CURLY_BRACE:I7t,CHAR_LEFT_PARENTHESES:h7t,CHAR_LEFT_SQUARE_BRACKET:fso,CHAR_PLUS:Iso,CHAR_QUESTION_MARK:kwn,CHAR_RIGHT_CURLY_BRACE:hso,CHAR_RIGHT_PARENTHESES:xwn,CHAR_RIGHT_SQUARE_BRACKET:mso}=p3e(),Gwn=e=>e===Zwn||e===I3e,Fwn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Cso=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,X=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),et=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Me=f.slice(0,C),f=f.slice(C),b-=C),ct&&B===!0&&b>0?(ct=f.slice(0,b),je=f.slice(b)):B===!0?(ct="",je=f):ct=f,ct&&ct!==""&&ct!=="/"&&ct!==f&&Gwn(ct.charCodeAt(ct.length-1))&&(ct=ct.slice(0,-1)),r.unescape===!0&&(je&&(je=Dwn.removeBackslashes(je)),ct&&ae===!0&&(ct=Dwn.removeBackslashes(ct)));let St={prefix:Me,input:e,start:C,base:ct,glob:je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(St.maxDepth=0,Gwn(be)||l.push(Se),St.tokens=l),r.parts===!0||r.tokens===!0){let At;for(let Yt=0;Yt{"use strict";var Clt=p3e(),DW=f3e(),{MAX_LENGTH:_lt,POSIX_REGEX_SOURCE:_so,REGEX_NON_SPECIAL_CHARS:yso,REGEX_SPECIAL_CHARS_BACKREF:bso,REPLACEMENTS:Pwn}=Clt,Eso=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>DW.escapeRegex(a)).join("..")}return r},LSe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,m7t=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=Pwn[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(_lt,r.maxLength):_lt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=DW.isWindows(t),I=Clt.globChars(f),C=Clt.extglobChars(I),{DOT_LITERAL:b,PLUS_LITERAL:E,SLASH_LITERAL:N,ONE_CHAR:B,DOTS_SLASH:F,NO_DOT:Q,NO_DOT_SLASH:X,NO_DOTS_SLASH:ae,QMARK:ne,QMARK_NO_DOT:ce,STAR:fe,START_ANCHOR:ue}=I,de=Ar=>`(${A}(?:(?!${ue}${Ar.dot?F:b}).)*?)`,be=r.dot?"":Q,Se=r.dot?ne:ce,De=r.bash===!0?de(r):fe;r.capture&&(De=`(${De})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let k={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=DW.removePrefix(e,k),a=e.length;let et=[],ct=[],Me=[],je=o,St,At=()=>k.index===a-1,Yt=k.peek=(Ar=1)=>e[k.index+Ar],Tr=k.advance=()=>e[++k.index]||"",Nr=()=>e.slice(k.index+1),er=(Ar="",qr=0)=>{k.consumed+=Ar,k.index+=qr},vt=Ar=>{k.output+=Ar.output!=null?Ar.output:Ar.value,er(Ar.value)},xt=()=>{let Ar=1;for(;Yt()==="!"&&(Yt(2)!=="("||Yt(3)==="?");)Tr(),k.start++,Ar++;return Ar%2===0?!1:(k.negated=!0,k.start++,!0)},Zr=Ar=>{k[Ar]++,Me.push(Ar)},qt=Ar=>{k[Ar]--,Me.pop()},Xt=Ar=>{if(je.type==="globstar"){let qr=k.braces>0&&(Ar.type==="comma"||Ar.type==="brace"),_n=Ar.extglob===!0||et.length&&(Ar.type==="pipe"||Ar.type==="paren");Ar.type!=="slash"&&Ar.type!=="paren"&&!qr&&!_n&&(k.output=k.output.slice(0,-je.output.length),je.type="star",je.value="*",je.output=De,k.output+=je.output)}if(et.length&&Ar.type!=="paren"&&(et[et.length-1].inner+=Ar.value),(Ar.value||Ar.output)&&vt(Ar),je&&je.type==="text"&&Ar.type==="text"){je.value+=Ar.value,je.output=(je.output||"")+Ar.value;return}Ar.prev=je,l.push(Ar),je=Ar},lr=(Ar,qr)=>{let _n={...C[qr],conditions:1,inner:""};_n.prev=je,_n.parens=k.parens,_n.output=k.output;let ke=(r.capture?"(":"")+_n.open;Zr("parens"),Xt({type:Ar,value:qr,output:k.output?"":B}),Xt({type:"paren",extglob:!0,value:Tr(),output:ke}),et.push(_n)},cr=Ar=>{let qr=Ar.close+(r.capture?")":""),_n;if(Ar.type==="negate"){let ke=De;if(Ar.inner&&Ar.inner.length>1&&Ar.inner.includes("/")&&(ke=de(r)),(ke!==De||At()||/^\)+$/.test(Nr()))&&(qr=Ar.close=`)$))${ke}`),Ar.inner.includes("*")&&(_n=Nr())&&/^\.[^\\/.]+$/.test(_n)){let jt=m7t(_n,{...t,fastpaths:!1}).output;qr=Ar.close=`)${jt})${ke})`}Ar.prev.type==="bos"&&(k.negatedExtglob=!0)}Xt({type:"paren",extglob:!0,value:St,output:qr}),qt("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Ar=!1,qr=e.replace(bso,(_n,ke,jt,Fn,Nn,Hi)=>Fn==="\\"?(Ar=!0,_n):Fn==="?"?ke?ke+Fn+(Nn?ne.repeat(Nn.length):""):Hi===0?Se+(Nn?ne.repeat(Nn.length):""):ne.repeat(jt.length):Fn==="."?b.repeat(jt.length):Fn==="*"?ke?ke+Fn+(Nn?De:""):De:ke?_n:`\\${_n}`);return Ar===!0&&(r.unescape===!0?qr=qr.replace(/\\/g,""):qr=qr.replace(/\\+/g,_n=>_n.length%2===0?"\\\\":_n?"\\":"")),qr===e&&r.contains===!0?(k.output=e,k):(k.output=DW.wrapOutput(qr,k,t),k)}for(;!At();){if(St=Tr(),St==="\0")continue;if(St==="\\"){let _n=Yt();if(_n==="/"&&r.bash!==!0||_n==="."||_n===";")continue;if(!_n){St+="\\",Xt({type:"text",value:St});continue}let ke=/^\\+/.exec(Nr()),jt=0;if(ke&&ke[0].length>2&&(jt=ke[0].length,k.index+=jt,jt%2!==0&&(St+="\\")),r.unescape===!0?St=Tr():St+=Tr(),k.brackets===0){Xt({type:"text",value:St});continue}}if(k.brackets>0&&(St!=="]"||je.value==="["||je.value==="[^")){if(r.posix!==!1&&St===":"){let _n=je.value.slice(1);if(_n.includes("[")&&(je.posix=!0,_n.includes(":"))){let ke=je.value.lastIndexOf("["),jt=je.value.slice(0,ke),Fn=je.value.slice(ke+2),Nn=_so[Fn];if(Nn){je.value=jt+Nn,k.backtrack=!0,Tr(),!o.output&&l.indexOf(je)===1&&(o.output=B);continue}}}(St==="["&&Yt()!==":"||St==="-"&&Yt()==="]")&&(St=`\\${St}`),St==="]"&&(je.value==="["||je.value==="[^")&&(St=`\\${St}`),r.posix===!0&&St==="!"&&je.value==="["&&(St="^"),je.value+=St,vt({value:St});continue}if(k.quotes===1&&St!=='"'){St=DW.escapeRegex(St),je.value+=St,vt({value:St});continue}if(St==='"'){k.quotes=k.quotes===1?0:1,r.keepQuotes===!0&&Xt({type:"text",value:St});continue}if(St==="("){Zr("parens"),Xt({type:"paren",value:St});continue}if(St===")"){if(k.parens===0&&r.strictBrackets===!0)throw new SyntaxError(LSe("opening","("));let _n=et[et.length-1];if(_n&&k.parens===_n.parens+1){cr(et.pop());continue}Xt({type:"paren",value:St,output:k.parens?")":"\\)"}),qt("parens");continue}if(St==="["){if(r.nobracket===!0||!Nr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(LSe("closing","]"));St=`\\${St}`}else Zr("brackets");Xt({type:"bracket",value:St});continue}if(St==="]"){if(r.nobracket===!0||je&&je.type==="bracket"&&je.value.length===1){Xt({type:"text",value:St,output:`\\${St}`});continue}if(k.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(LSe("opening","["));Xt({type:"text",value:St,output:`\\${St}`});continue}qt("brackets");let _n=je.value.slice(1);if(je.posix!==!0&&_n[0]==="^"&&!_n.includes("/")&&(St=`/${St}`),je.value+=St,vt({value:St}),r.literalBrackets===!1||DW.hasRegexChars(_n))continue;let ke=DW.escapeRegex(je.value);if(k.output=k.output.slice(0,-je.value.length),r.literalBrackets===!0){k.output+=ke,je.value=ke;continue}je.value=`(${A}${ke}|${je.value})`,k.output+=je.value;continue}if(St==="{"&&r.nobrace!==!0){Zr("braces");let _n={type:"brace",value:St,output:"(",outputIndex:k.output.length,tokensIndex:k.tokens.length};ct.push(_n),Xt(_n);continue}if(St==="}"){let _n=ct[ct.length-1];if(r.nobrace===!0||!_n){Xt({type:"text",value:St,output:St});continue}let ke=")";if(_n.dots===!0){let jt=l.slice(),Fn=[];for(let Nn=jt.length-1;Nn>=0&&(l.pop(),jt[Nn].type!=="brace");Nn--)jt[Nn].type!=="dots"&&Fn.unshift(jt[Nn].value);ke=Eso(Fn,r),k.backtrack=!0}if(_n.comma!==!0&&_n.dots!==!0){let jt=k.output.slice(0,_n.outputIndex),Fn=k.tokens.slice(_n.tokensIndex);_n.value=_n.output="\\{",St=ke="\\}",k.output=jt;for(let Nn of Fn)k.output+=Nn.output||Nn.value}Xt({type:"brace",value:St,output:ke}),qt("braces"),ct.pop();continue}if(St==="|"){et.length>0&&et[et.length-1].conditions++,Xt({type:"text",value:St});continue}if(St===","){let _n=St,ke=ct[ct.length-1];ke&&Me[Me.length-1]==="braces"&&(ke.comma=!0,_n="|"),Xt({type:"comma",value:St,output:_n});continue}if(St==="/"){if(je.type==="dot"&&k.index===k.start+1){k.start=k.index+1,k.consumed="",k.output="",l.pop(),je=o;continue}Xt({type:"slash",value:St,output:N});continue}if(St==="."){if(k.braces>0&&je.type==="dot"){je.value==="."&&(je.output=b);let _n=ct[ct.length-1];je.type="dots",je.output+=St,je.value+=St,_n.dots=!0;continue}if(k.braces+k.parens===0&&je.type!=="bos"&&je.type!=="slash"){Xt({type:"text",value:St,output:b});continue}Xt({type:"dot",value:St,output:b});continue}if(St==="?"){if(!(je&&je.value==="(")&&r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){lr("qmark",St);continue}if(je&&je.type==="paren"){let ke=Yt(),jt=St;if(ke==="<"&&!DW.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(je.value==="("&&!/[!=<:]/.test(ke)||ke==="<"&&!/<([!=]|\w+>)/.test(Nr()))&&(jt=`\\${St}`),Xt({type:"text",value:St,output:jt});continue}if(r.dot!==!0&&(je.type==="slash"||je.type==="bos")){Xt({type:"qmark",value:St,output:ce});continue}Xt({type:"qmark",value:St,output:ne});continue}if(St==="!"){if(r.noextglob!==!0&&Yt()==="("&&(Yt(2)!=="?"||!/[!=<:]/.test(Yt(3)))){lr("negate",St);continue}if(r.nonegate!==!0&&k.index===0){xt();continue}}if(St==="+"){if(r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){lr("plus",St);continue}if(je&&je.value==="("||r.regex===!1){Xt({type:"plus",value:St,output:E});continue}if(je&&(je.type==="bracket"||je.type==="paren"||je.type==="brace")||k.parens>0){Xt({type:"plus",value:St});continue}Xt({type:"plus",value:E});continue}if(St==="@"){if(r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){Xt({type:"at",extglob:!0,value:St,output:""});continue}Xt({type:"text",value:St});continue}if(St!=="*"){(St==="$"||St==="^")&&(St=`\\${St}`);let _n=yso.exec(Nr());_n&&(St+=_n[0],k.index+=_n[0].length),Xt({type:"text",value:St});continue}if(je&&(je.type==="globstar"||je.star===!0)){je.type="star",je.star=!0,je.value+=St,je.output=De,k.backtrack=!0,k.globstar=!0,er(St);continue}let Ar=Nr();if(r.noextglob!==!0&&/^\([^?]/.test(Ar)){lr("star",St);continue}if(je.type==="star"){if(r.noglobstar===!0){er(St);continue}let _n=je.prev,ke=_n.prev,jt=_n.type==="slash"||_n.type==="bos",Fn=ke&&(ke.type==="star"||ke.type==="globstar");if(r.bash===!0&&(!jt||Ar[0]&&Ar[0]!=="/")){Xt({type:"star",value:St,output:""});continue}let Nn=k.braces>0&&(_n.type==="comma"||_n.type==="brace"),Hi=et.length&&(_n.type==="pipe"||_n.type==="paren");if(!jt&&_n.type!=="paren"&&!Nn&&!Hi){Xt({type:"star",value:St,output:""});continue}for(;Ar.slice(0,3)==="/**";){let po=e[k.index+4];if(po&&po!=="/")break;Ar=Ar.slice(3),er("/**",3)}if(_n.type==="bos"&&At()){je.type="globstar",je.value+=St,je.output=de(r),k.output=je.output,k.globstar=!0,er(St);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&!Fn&&At()){k.output=k.output.slice(0,-(_n.output+je.output).length),_n.output=`(?:${_n.output}`,je.type="globstar",je.output=de(r)+(r.strictSlashes?")":"|$)"),je.value+=St,k.globstar=!0,k.output+=_n.output+je.output,er(St);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&Ar[0]==="/"){let po=Ar[1]!==void 0?"|$":"";k.output=k.output.slice(0,-(_n.output+je.output).length),_n.output=`(?:${_n.output}`,je.type="globstar",je.output=`${de(r)}${N}|${N}${po})`,je.value+=St,k.output+=_n.output+je.output,k.globstar=!0,er(St+Tr()),Xt({type:"slash",value:"/",output:""});continue}if(_n.type==="bos"&&Ar[0]==="/"){je.type="globstar",je.value+=St,je.output=`(?:^|${N}|${de(r)}${N})`,k.output=je.output,k.globstar=!0,er(St+Tr()),Xt({type:"slash",value:"/",output:""});continue}k.output=k.output.slice(0,-je.output.length),je.type="globstar",je.output=de(r),je.value+=St,k.output+=je.output,k.globstar=!0,er(St);continue}let qr={type:"star",value:St,output:De};if(r.bash===!0){qr.output=".*?",(je.type==="bos"||je.type==="slash")&&(qr.output=be+qr.output),Xt(qr);continue}if(je&&(je.type==="bracket"||je.type==="paren")&&r.regex===!0){qr.output=St,Xt(qr);continue}(k.index===k.start||je.type==="slash"||je.type==="dot")&&(je.type==="dot"?(k.output+=X,je.output+=X):r.dot===!0?(k.output+=ae,je.output+=ae):(k.output+=be,je.output+=be),Yt()!=="*"&&(k.output+=B,je.output+=B)),Xt(qr)}for(;k.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(LSe("closing","]"));k.output=DW.escapeLast(k.output,"["),qt("brackets")}for(;k.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(LSe("closing",")"));k.output=DW.escapeLast(k.output,"("),qt("parens")}for(;k.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(LSe("closing","}"));k.output=DW.escapeLast(k.output,"{"),qt("braces")}if(r.strictSlashes!==!0&&(je.type==="star"||je.type==="bracket")&&Xt({type:"maybe_slash",value:"",output:`${N}?`}),k.backtrack===!0){k.output="";for(let Ar of k.tokens)k.output+=Ar.output!=null?Ar.output:Ar.value,Ar.suffix&&(k.output+=Ar.suffix)}return k};m7t.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(_lt,r.maxLength):_lt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=Pwn[e]||e;let o=DW.isWindows(t),{DOT_LITERAL:l,SLASH_LITERAL:A,ONE_CHAR:f,DOTS_SLASH:I,NO_DOT:C,NO_DOTS:b,NO_DOTS_SLASH:E,STAR:N,START_ANCHOR:B}=Clt.globChars(o),F=r.dot?b:C,Q=r.dot?E:C,X=r.capture?"":"?:",ae={negated:!1,prefix:""},ne=r.bash===!0?".*?":N;r.capture&&(ne=`(${ne})`);let ce=be=>be.noglobstar===!0?ne:`(${X}(?:(?!${B}${be.dot?I:l}).)*?)`,fe=be=>{switch(be){case"*":return`${F}${f}${ne}`;case".*":return`${l}${f}${ne}`;case"*.*":return`${F}${ne}${l}${f}${ne}`;case"*/*":return`${F}${ne}${A}${f}${Q}${ne}`;case"**":return F+ce(r);case"**/*":return`(?:${F}${ce(r)}${A})?${Q}${f}${ne}`;case"**/*.*":return`(?:${F}${ce(r)}${A})?${Q}${ne}${l}${f}${ne}`;case"**/.*":return`(?:${F}${ce(r)}${A})?${l}${f}${ne}`;default:{let Se=/^(.*?)\.(\w+)$/.exec(be);if(!Se)return;let De=fe(Se[1]);return De?De+l+Se[2]:void 0}}},ue=DW.removePrefix(e,ae),de=fe(ue);return de&&r.strictSlashes!==!0&&(de+=`${A}?`),de};Wwn.exports=m7t});var Hwn=H((zMl,Mwn)=>{"use strict";var Sso=wt("path"),vso=Vwn(),C7t=Own(),_7t=f3e(),Bso=p3e(),wso=e=>e&&typeof e=="object"&&!Array.isArray(e),KB=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>KB(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=wso(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=_7t.isWindows(t),l=n?KB.compileRe(e,t):KB.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=KB(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=KB.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};KB.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?_7t.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=KB.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};KB.matchBase=(e,t,r,n=_7t.isWindows(r))=>(t instanceof RegExp?t:KB.makeRe(t,r)).test(Sso.basename(e));KB.isMatch=(e,t,r)=>KB(t,r)(e);KB.parse=(e,t)=>Array.isArray(e)?e.map(r=>KB.parse(r,t)):C7t(e,{...t,fastpaths:!1});KB.scan=(e,t)=>vso(e,t);KB.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=KB.toRegex(A,t);return n===!0&&(f.state=e),f};KB.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=C7t.fastpaths(e,t)),a.output||(a=C7t(e,t)),KB.compileRe(a,t,r,n)};KB.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};KB.constants=Bso;Mwn.exports=KB});var Qwn=H((qMl,Ywn)=>{"use strict";Ywn.exports=Hwn()});var Ek=H(($Ml,jwn)=>{"use strict";var Jwn=wt("util"),Uwn=vwn(),WK=Qwn(),y7t=f3e(),Xwn=e=>e===""||e==="./",Kwn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},x1=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let n=new Set,a=new Set,o=new Set,l=0,A=C=>{o.add(C.output),r&&r.onResult&&r.onResult(C)};for(let C=0;C!n.has(C));if(r&&I.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(C=>C.replace(/\\/g,"")):t}return I};x1.match=x1;x1.matcher=(e,t)=>WK(e,t);x1.isMatch=(e,t,r)=>WK(t,r)(e);x1.any=x1.isMatch;x1.not=(e,t,r={})=>{t=[].concat(t).map(String);let n=new Set,a=[],o=A=>{r.onResult&&r.onResult(A),a.push(A.output)},l=new Set(x1(e,t,{...r,onResult:o}));for(let A of a)l.has(A)||n.add(A);return[...n]};x1.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${Jwn.inspect(e)}"`);if(Array.isArray(t))return t.some(n=>x1.contains(e,n,r));if(typeof t=="string"){if(Xwn(e)||Xwn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return x1.isMatch(e,t,{...r,contains:!0})};x1.matchKeys=(e,t,r)=>{if(!y7t.isObject(e))throw new TypeError("Expected the first argument to be an object");let n=x1(Object.keys(e),t,r),a={};for(let o of n)a[o]=e[o];return a};x1.some=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=WK(String(a),r);if(n.some(l=>o(l)))return!0}return!1};x1.every=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=WK(String(a),r);if(!n.every(l=>o(l)))return!1}return!0};x1.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${Jwn.inspect(e)}"`);return[].concat(t).every(n=>WK(n,r)(e))};x1.capture=(e,t,r)=>{let n=y7t.isWindows(r),o=WK.makeRe(String(e),{...r,capture:!0}).exec(n?y7t.toPosixSlashes(t):t);if(o)return o.slice(1).map(l=>l===void 0?"":l)};x1.makeRe=(...e)=>WK.makeRe(...e);x1.scan=(...e)=>WK.scan(...e);x1.parse=(e,t)=>{let r=[];for(let n of[].concat(e||[]))for(let a of Uwn(String(n),t))r.push(WK.parse(a,t));return r};x1.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!Kwn(e)?[e]:Uwn(e,t)};x1.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return x1.braces(e,{...t,expand:!0})};x1.hasBraces=Kwn;jwn.exports=x1});var qwn=H((eHl,zwn)=>{"use strict";zwn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var q5=H((tHl,$wn)=>{"use strict";var Tso=qwn();$wn.exports=e=>typeof e=="string"?e.replace(Tso(),""):e});var E7t=H(b7t=>{"use strict";Object.defineProperty(b7t,Symbol.toStringTag,{value:"Module"});function Rso(e){return arguments.length===0?[]:Array.isArray(e)?e:[e]}b7t.castArray=Rso});var eTn=H(S7t=>{"use strict";Object.defineProperty(S7t,Symbol.toStringTag,{value:"Module"});function Nso(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Size must be an integer greater than zero.");let r=Math.ceil(e.length/t),n=Array(r);for(let a=0;a{"use strict";Object.defineProperty(v7t,Symbol.toStringTag,{value:"Module"});function Dso(e){return Array.isArray(e)?e:Array.from(e)}v7t.toArray=Dso});var tTn=H(B7t=>{"use strict";Object.defineProperty(B7t,Symbol.toStringTag,{value:"Module"});function kso(e){return Number.isSafeInteger(e)&&e>=0}B7t.isLength=kso});var Sf=H(w7t=>{"use strict";Object.defineProperty(w7t,Symbol.toStringTag,{value:"Module"});var xso=tTn();function Gso(e){return e!=null&&typeof e!="function"&&xso.isLength(e.length)}w7t.isArrayLike=Gso});var R7t=H(T7t=>{"use strict";Object.defineProperty(T7t,Symbol.toStringTag,{value:"Module"});var Fso=eTn(),Zso=SZ(),Lso=Sf();function Vso(e,t=1){return t=Math.max(Math.floor(t),0),t===0||!Lso.isArrayLike(e)?[]:Fso.chunk(Zso.toArray(e),t)}T7t.chunk=Vso});var rTn=H(N7t=>{"use strict";Object.defineProperty(N7t,Symbol.toStringTag,{value:"Module"});function Pso(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(D7t,Symbol.toStringTag,{value:"Module"});var Wso=rTn(),Oso=Sf();function Mso(e){return Oso.isArrayLike(e)?Wso.compact(Array.from(e)):[]}D7t.compact=Mso});var h3e=H(x7t=>{"use strict";Object.defineProperty(x7t,Symbol.toStringTag,{value:"Module"});function Hso(e,t=1){let r=[],n=Math.floor(t),a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(G7t,Symbol.toStringTag,{value:"Module"});var Yso=h3e();function Qso(...e){return Yso.flatten(e)}G7t.concat=Qso});var bm=H(Z7t=>{"use strict";Object.defineProperty(Z7t,Symbol.toStringTag,{value:"Module"});function Xso(e){return e}Z7t.identity=Xso});var m3e=H(L7t=>{"use strict";Object.defineProperty(L7t,Symbol.toStringTag,{value:"Module"});function Jso(e){return e==="__proto__"}L7t.isUnsafeProperty=Jso});var VSe=H(V7t=>{"use strict";Object.defineProperty(V7t,Symbol.toStringTag,{value:"Module"});function Uso(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}V7t.isDeepKey=Uso});var Kq=H(P7t=>{"use strict";Object.defineProperty(P7t,Symbol.toStringTag,{value:"Module"});function Kso(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}P7t.toKey=Kso});var qy=H(W7t=>{"use strict";Object.defineProperty(W7t,Symbol.toStringTag,{value:"Module"});function nTn(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(nTn).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}W7t.toString=nTn});var $5=H(O7t=>{"use strict";Object.defineProperty(O7t,Symbol.toStringTag,{value:"Module"});var jso=qy(),zso=Kq();function qso(e){if(Array.isArray(e))return e.map(zso.toKey);if(typeof e=="symbol")return[e];e=jso.toString(e);let t=[],r=e.length;if(r===0)return t;let n=0,a="",o="",l=!1;for(e.charCodeAt(0)===46&&(t.push(""),n++);n{"use strict";Object.defineProperty(H7t,Symbol.toStringTag,{value:"Module"});var M7t=m3e(),$so=VSe(),eoo=Kq(),too=$5();function iTn(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(M7t.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?$so.isDeepKey(t)?iTn(e,too.toPath(t),r):r:n}case"number":case"symbol":{typeof t=="number"&&(t=eoo.toKey(t));let n=e[t];return n===void 0?r:n}default:{if(Array.isArray(t))return roo(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),M7t.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?r:n}}}function roo(e,t,r){if(t.length===0)return r;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Y7t,Symbol.toStringTag,{value:"Module"});var noo=eM();function ioo(e){return function(t){return noo.get(t,e)}}Y7t.property=ioo});var tM=H(Q7t=>{"use strict";Object.defineProperty(Q7t,Symbol.toStringTag,{value:"Module"});function soo(e){return e!==null&&(typeof e=="object"||typeof e=="function")}Q7t.isObject=soo});var PSe=H(X7t=>{"use strict";Object.defineProperty(X7t,Symbol.toStringTag,{value:"Module"});function ooo(e){return e==null||typeof e!="object"&&typeof e!="function"}X7t.isPrimitive=ooo});var Sk=H(J7t=>{"use strict";Object.defineProperty(J7t,Symbol.toStringTag,{value:"Module"});function aoo(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}J7t.isEqualsSameValueZero=aoo});var blt=H(ylt=>{"use strict";Object.defineProperty(ylt,Symbol.toStringTag,{value:"Module"});var coo=tM(),sTn=PSe(),oTn=Sk();function aTn(e,t,r){return typeof r!="function"?aTn(e,t,()=>{}):U7t(e,t,function n(a,o,l,A,f,I){let C=r(a,o,l,A,f,I);return C!==void 0?!!C:U7t(a,o,n,I)},new Map)}function U7t(e,t,r,n){if(t===e)return!0;switch(typeof t){case"object":return loo(e,t,r,n);case"function":return Object.keys(t).length>0?U7t(e,{...t},r,n):oTn.isEqualsSameValueZero(e,t);default:return coo.isObject(e)?typeof t=="string"?t==="":!0:oTn.isEqualsSameValueZero(e,t)}}function loo(e,t,r,n){if(t==null)return!0;if(Array.isArray(t))return cTn(e,t,r,n);if(t instanceof Map)return uoo(e,t,r,n);if(t instanceof Set)return lTn(e,t,r,n);let a=Object.keys(t);if(e==null||sTn.isPrimitive(e))return a.length===0;if(a.length===0)return!0;if(n?.has(t))return n.get(t)===e;n?.set(t,e);try{for(let o=0;o{"use strict";Object.defineProperty(K7t,Symbol.toStringTag,{value:"Module"});var goo=blt();function Aoo(e,t){return goo.isMatchWith(e,t,()=>{})}K7t.isMatch=Aoo});var _3e=H(j7t=>{"use strict";Object.defineProperty(j7t,Symbol.toStringTag,{value:"Module"});function doo(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}j7t.getSymbols=doo});var Zfe=H(z7t=>{"use strict";Object.defineProperty(z7t,Symbol.toStringTag,{value:"Module"});function poo(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}z7t.getTag=poo});var y3e=H($y=>{"use strict";Object.defineProperty($y,Symbol.toStringTag,{value:"Module"});var foo="[object RegExp]",Ioo="[object String]",hoo="[object Number]",moo="[object Boolean]",Coo="[object Arguments]",_oo="[object Symbol]",yoo="[object Date]",boo="[object Map]",Eoo="[object Set]",Soo="[object Array]",voo="[object Function]",Boo="[object ArrayBuffer]",woo="[object Object]",Too="[object Error]",Roo="[object DataView]",Noo="[object Uint8Array]",Doo="[object Uint8ClampedArray]",koo="[object Uint16Array]",xoo="[object Uint32Array]",Goo="[object BigUint64Array]",Foo="[object Int8Array]",Zoo="[object Int16Array]",Loo="[object Int32Array]",Voo="[object BigInt64Array]",Poo="[object Float32Array]",Woo="[object Float64Array]";$y.argumentsTag=Coo;$y.arrayBufferTag=Boo;$y.arrayTag=Soo;$y.bigInt64ArrayTag=Voo;$y.bigUint64ArrayTag=Goo;$y.booleanTag=moo;$y.dataViewTag=Roo;$y.dateTag=yoo;$y.errorTag=Too;$y.float32ArrayTag=Poo;$y.float64ArrayTag=Woo;$y.functionTag=voo;$y.int16ArrayTag=Zoo;$y.int32ArrayTag=Loo;$y.int8ArrayTag=Foo;$y.mapTag=boo;$y.numberTag=hoo;$y.objectTag=woo;$y.regexpTag=foo;$y.setTag=Eoo;$y.stringTag=Ioo;$y.symbolTag=_oo;$y.uint16ArrayTag=koo;$y.uint32ArrayTag=xoo;$y.uint8ArrayTag=Noo;$y.uint8ClampedArrayTag=Doo});var $7t=H(q7t=>{"use strict";Object.defineProperty(q7t,Symbol.toStringTag,{value:"Module"});var Ooo=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||function(){return this}()||Function("return this")();q7t.globalThis=Ooo});var noe=H(ezt=>{"use strict";Object.defineProperty(ezt,Symbol.toStringTag,{value:"Module"});var uTn=$7t();function Moo(e){return typeof uTn.globalThis.Buffer<"u"&&uTn.globalThis.Buffer.isBuffer(e)}ezt.isBuffer=Moo});var Elt=H(tzt=>{"use strict";Object.defineProperty(tzt,Symbol.toStringTag,{value:"Module"});function Hoo(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}tzt.isTypedArray=Hoo});var rzt=H(b3e=>{"use strict";Object.defineProperty(b3e,Symbol.toStringTag,{value:"Module"});var Yoo=_3e(),Qoo=Zfe(),Zv=y3e(),Xoo=noe(),Joo=PSe(),Uoo=Elt();function Koo(e,t){return Lfe(e,void 0,e,new Map,t)}function Lfe(e,t,r,n=new Map,a=void 0){let o=a?.(e,t,r,n);if(o!==void 0)return o;if(Joo.isPrimitive(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){let l=new Array(e.length);n.set(e,l);for(let A=0;A{"use strict";Object.defineProperty(nzt,Symbol.toStringTag,{value:"Module"});var zoo=rzt();function qoo(e){return zoo.cloneDeepWithImpl(e,void 0,e,new Map,void 0)}nzt.cloneDeep=qoo});var OK=H(szt=>{"use strict";Object.defineProperty(szt,Symbol.toStringTag,{value:"Module"});var $oo=C3e(),eao=izt();function tao(e){return e=eao.cloneDeep(e),t=>$oo.isMatch(t,e)}szt.matches=tao});var S3e=H(ozt=>{"use strict";Object.defineProperty(ozt,Symbol.toStringTag,{value:"Module"});var Slt=rzt(),rao=Zfe(),E3e=y3e();function nao(e,t){return Slt.cloneDeepWith(e,(r,n,a,o)=>{let l=t?.(r,n,a,o);if(l!==void 0)return l;if(typeof e=="object"){if(rao.getTag(e)===E3e.objectTag&&typeof e.constructor!="function"){let A={};return o.set(e,A),Slt.copyProperties(A,e,a,o),A}switch(Object.prototype.toString.call(e)){case E3e.numberTag:case E3e.stringTag:case E3e.booleanTag:{let A=new e.constructor(e?.valueOf());return Slt.copyProperties(A,e),A}case E3e.argumentsTag:{let A={};return Slt.copyProperties(A,e),A.length=e.length,A[Symbol.iterator]=e[Symbol.iterator],A}default:return}}})}ozt.cloneDeepWith=nao});var WSe=H(azt=>{"use strict";Object.defineProperty(azt,Symbol.toStringTag,{value:"Module"});var iao=S3e();function sao(e){return iao.cloneDeepWith(e)}azt.cloneDeep=sao});var OSe=H(czt=>{"use strict";Object.defineProperty(czt,Symbol.toStringTag,{value:"Module"});var oao=/^(?:0|[1-9]\d*)$/;function aao(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e{"use strict";Object.defineProperty(lzt,Symbol.toStringTag,{value:"Module"});var cao=Zfe();function lao(e){return e!==null&&typeof e=="object"&&cao.getTag(e)==="[object Arguments]"}lzt.isArguments=lao});var v3e=H(uzt=>{"use strict";Object.defineProperty(uzt,Symbol.toStringTag,{value:"Module"});var uao=VSe(),gao=OSe(),Aao=Vfe(),dao=$5();function pao(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&uao.isDeepKey(t)&&e?.[t]==null?r=dao.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(gzt,Symbol.toStringTag,{value:"Module"});var fao=C3e(),Iao=Kq(),hao=WSe(),mao=eM(),Cao=v3e();function _ao(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=Iao.toKey(e);break}}return t=hao.cloneDeep(t),function(r){let n=mao.get(r,e);return n===void 0?Cao.has(r,e):t===void 0?n===void 0:fao.isMatch(n,t)}}gzt.matchesProperty=_ao});var im=H(Azt=>{"use strict";Object.defineProperty(Azt,Symbol.toStringTag,{value:"Module"});var yao=bm(),bao=nX(),Eao=OK(),Sao=MK();function vao(e){if(e==null)return yao.identity;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?Sao.matchesProperty(e[0],e[1]):Eao.matches(e);case"string":case"symbol":case"number":return bao.property(e)}}Azt.iteratee=vao});var pzt=H(dzt=>{"use strict";Object.defineProperty(dzt,Symbol.toStringTag,{value:"Module"});var Bao=Sf(),wao=im();function Tao(e,t){if(e==null)return{};let r=Bao.isArrayLike(e)?Array.from(e):Object.values(e),n=wao.iteratee(t??void 0),a=Object.create(null);for(let o=0;o{"use strict";Object.defineProperty(fzt,Symbol.toStringTag,{value:"Module"});function Rao(e,t){let r=new Set(t);return e.filter(n=>!r.has(n))}fzt.difference=Rao});var ioe=H(Izt=>{"use strict";Object.defineProperty(Izt,Symbol.toStringTag,{value:"Module"});function Nao(e){return typeof e=="object"&&e!==null}Izt.isObjectLike=Nao});var b2=H(hzt=>{"use strict";Object.defineProperty(hzt,Symbol.toStringTag,{value:"Module"});var Dao=Sf(),kao=ioe();function xao(e){return kao.isObjectLike(e)&&Dao.isArrayLike(e)}hzt.isArrayLikeObject=xao});var Czt=H(mzt=>{"use strict";Object.defineProperty(mzt,Symbol.toStringTag,{value:"Module"});var Gao=B3e(),Fao=SZ(),gTn=b2();function Zao(e,...t){if(!gTn.isArrayLikeObject(e))return[];let r=Fao.toArray(e),n=[];for(let a=0;a{"use strict";Object.defineProperty(_zt,Symbol.toStringTag,{value:"Module"});function Lao(e){return e[e.length-1]}_zt.last=Lao});var zq=H(yzt=>{"use strict";Object.defineProperty(yzt,Symbol.toStringTag,{value:"Module"});var Vao=w3e(),Pao=SZ(),Wao=Sf();function Oao(e){if(Wao.isArrayLike(e))return Vao.last(Pao.toArray(e))}yzt.last=Oao});var ATn=H(bzt=>{"use strict";Object.defineProperty(bzt,Symbol.toStringTag,{value:"Module"});function Mao(e,t,r){let n=new Set(t.map(a=>r(a)));return e.filter(a=>!n.has(r(a)))}bzt.differenceBy=Mao});var T3e=H(Ezt=>{"use strict";Object.defineProperty(Ezt,Symbol.toStringTag,{value:"Module"});var Hao=b2();function Yao(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(Szt,Symbol.toStringTag,{value:"Module"});var Qao=zq(),Xao=B3e(),Jao=ATn(),Uao=T3e(),dTn=b2(),Kao=im();function jao(e,...t){if(!dTn.isArrayLikeObject(e))return[];let r=Qao.last(t),n=Uao.flattenArrayLike(t);return dTn.isArrayLikeObject(r)?Xao.difference(Array.from(e),n):Jao.differenceBy(Array.from(e),n,Kao.iteratee(r))}Szt.differenceBy=jao});var pTn=H(vzt=>{"use strict";Object.defineProperty(vzt,Symbol.toStringTag,{value:"Module"});function zao(e,t,r){return e.filter(n=>t.every(a=>!r(n,a)))}vzt.differenceWith=zao});var Blt=H(Bzt=>{"use strict";Object.defineProperty(Bzt,Symbol.toStringTag,{value:"Module"});var qao=zq(),$ao=B3e(),eco=pTn(),tco=T3e(),rco=b2();function nco(e,...t){if(!rco.isArrayLikeObject(e))return[];let r=qao.last(t),n=tco.flattenArrayLike(t);return typeof r=="function"?eco.differenceWith(Array.from(e),n,r):$ao.difference(Array.from(e),n)}Bzt.differenceWith=nco});var fTn=H(wzt=>{"use strict";Object.defineProperty(wzt,Symbol.toStringTag,{value:"Module"});function ico(e,t){return t=Math.max(t,0),e.slice(t)}wzt.drop=ico});var soe=H(Tzt=>{"use strict";Object.defineProperty(Tzt,Symbol.toStringTag,{value:"Module"});function sco(e){return typeof e=="symbol"||e instanceof Symbol}Tzt.isSymbol=sco});var Q9=H(Rzt=>{"use strict";Object.defineProperty(Rzt,Symbol.toStringTag,{value:"Module"});var oco=soe();function aco(e){return oco.isSymbol(e)?NaN:Number(e)}Rzt.toNumber=aco});var MSe=H(Nzt=>{"use strict";Object.defineProperty(Nzt,Symbol.toStringTag,{value:"Module"});var cco=Q9();function lco(e){return e?(e=cco.toNumber(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}Nzt.toFinite=lco});var $w=H(Dzt=>{"use strict";Object.defineProperty(Dzt,Symbol.toStringTag,{value:"Module"});var uco=MSe();function gco(e){let t=uco.toFinite(e),r=t%1;return r?t-r:t}Dzt.toInteger=gco});var xzt=H(kzt=>{"use strict";Object.defineProperty(kzt,Symbol.toStringTag,{value:"Module"});var Aco=fTn(),dco=SZ(),pco=Sf(),fco=$w();function Ico(e,t=1,r){return pco.isArrayLike(e)?(t=r?1:fco.toInteger(t),Aco.drop(dco.toArray(e),t)):[]}kzt.drop=Ico});var ITn=H(Gzt=>{"use strict";Object.defineProperty(Gzt,Symbol.toStringTag,{value:"Module"});function hco(e,t){return t=Math.min(-t,0),t===0?e.slice():e.slice(0,t)}Gzt.dropRight=hco});var Zzt=H(Fzt=>{"use strict";Object.defineProperty(Fzt,Symbol.toStringTag,{value:"Module"});var mco=ITn(),Cco=SZ(),_co=Sf(),yco=$w();function bco(e,t=1,r){return _co.isArrayLike(e)?(t=r?1:yco.toInteger(t),mco.dropRight(Cco.toArray(e),t)):[]}Fzt.dropRight=bco});var hTn=H(Lzt=>{"use strict";Object.defineProperty(Lzt,Symbol.toStringTag,{value:"Module"});function Eco(e,t){for(let r=e.length-1;r>=0;r--)if(!t(e[r],r,e))return e.slice(0,r+1);return[]}Lzt.dropRightWhile=Eco});var Pzt=H(Vzt=>{"use strict";Object.defineProperty(Vzt,Symbol.toStringTag,{value:"Module"});var wlt=hTn(),Sco=bm(),vco=nX(),Bco=Sf(),wco=OK(),Tco=MK();function Rco(e,t=Sco.identity){return Bco.isArrayLike(e)?Nco(Array.from(e),t):[]}function Nco(e,t){switch(typeof t){case"function":return wlt.dropRightWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return wlt.dropRightWhile(e,Tco.matchesProperty(r,n))}else return wlt.dropRightWhile(e,wco.matches(t));case"symbol":case"number":case"string":return wlt.dropRightWhile(e,vco.property(t))}}Vzt.dropRightWhile=Rco});var mTn=H(Wzt=>{"use strict";Object.defineProperty(Wzt,Symbol.toStringTag,{value:"Module"});function Dco(e,t){let r=e.findIndex((n,a,o)=>!t(n,a,o));return r===-1?[]:e.slice(r)}Wzt.dropWhile=Dco});var Mzt=H(Ozt=>{"use strict";Object.defineProperty(Ozt,Symbol.toStringTag,{value:"Module"});var Tlt=mTn(),kco=bm(),xco=SZ(),Gco=nX(),Fco=Sf(),Zco=OK(),Lco=MK();function Vco(e,t=kco.identity){return Fco.isArrayLike(e)?Pco(xco.toArray(e),t):[]}function Pco(e,t){switch(typeof t){case"function":return Tlt.dropWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return Tlt.dropWhile(e,Lco.matchesProperty(r,n))}else return Tlt.dropWhile(e,Zco.matches(t));case"number":case"symbol":case"string":return Tlt.dropWhile(e,Gco.property(t))}}Ozt.dropWhile=Vco});var ooe=H(Hzt=>{"use strict";Object.defineProperty(Hzt,Symbol.toStringTag,{value:"Module"});function Wco(e,t,r=1){if(t==null&&(t=e,e=0),!Number.isInteger(r)||r===0)throw new Error("The step value must be a non-zero integer.");let n=Math.max(Math.ceil((t-e)/r),0),a=new Array(n);for(let o=0;o{"use strict";Object.defineProperty(Yzt,Symbol.toStringTag,{value:"Module"});var Oco=bm(),Mco=ooe(),Hco=Sf();function Yco(e,t=Oco.identity){if(!e)return e;let r=Hco.isArrayLike(e)||Array.isArray(e)?Mco.range(0,e.length):Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(Qzt,Symbol.toStringTag,{value:"Module"});var Qco=bm(),Xco=ooe(),Jco=Sf();function Uco(e,t=Qco.identity){if(!e)return e;let r=Jco.isArrayLike(e)?Xco.range(0,e.length):Object.keys(e);for(let n=r.length-1;n>=0;n--){let a=r[n],o=e[a];if(t(o,a,e)===!1)break}return e}Qzt.forEachRight=Uco});var qq=H(Jzt=>{"use strict";Object.defineProperty(Jzt,Symbol.toStringTag,{value:"Module"});var Kco=OSe(),jco=Sf(),zco=tM(),qco=Sk();function $co(e,t,r){return zco.isObject(r)&&(typeof t=="number"&&jco.isArrayLike(r)&&Kco.isIndex(t)&&t{"use strict";Object.defineProperty(Uzt,Symbol.toStringTag,{value:"Module"});var elo=bm(),tlo=qq(),rlo=nX(),nlo=Sf(),ilo=OK(),slo=MK();function olo(e,t,r){if(!e)return!0;r&&tlo.isIterateeCall(e,t,r)&&(t=void 0),t||(t=elo.identity);let n;switch(typeof t){case"function":{n=t;break}case"object":{if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];n=slo.matchesProperty(a,o)}else n=ilo.matches(t);break}case"symbol":case"number":case"string":n=rlo.property(t)}if(!nlo.isArrayLike(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(jzt,Symbol.toStringTag,{value:"Module"});function alo(e,t,r=0,n=e.length){let a=e.length,o=Math.max(r>=0?r:a+r,0),l=Math.min(n>=0?n:a+n,a);for(let A=o;A{"use strict";Object.defineProperty(zzt,Symbol.toStringTag,{value:"Module"});function clo(e){return typeof e=="string"||e instanceof String}zzt.isString=clo});var $zt=H(qzt=>{"use strict";Object.defineProperty(qzt,Symbol.toStringTag,{value:"Module"});var llo=CTn(),ulo=Sf(),glo=HSe();function Alo(e,t,r=0,n=e?e.length:0){return ulo.isArrayLike(e)?glo.isString(e)?e:(r=Math.floor(r),n=Math.floor(n),r||(r=0),n||(n=0),llo.fill(e,t,r,n)):[]}qzt.fill=Alo});var Nlt=H(eqt=>{"use strict";Object.defineProperty(eqt,Symbol.toStringTag,{value:"Module"});var dlo=bm(),plo=Sf(),flo=im();function Ilo(e,t=dlo.identity){if(!e)return[];if(t=flo.iteratee(t),!Array.isArray(e)){let a=[],o=Object.keys(e),l=plo.isArrayLike(e)?e.length:o.length;for(let A=0;A{"use strict";Object.defineProperty(tqt,Symbol.toStringTag,{value:"Module"});var hlo=bm(),mlo=im();function Clo(e,t=hlo.identity,r=0){if(!e)return;r<0&&(r=Math.max(e.length+r,0));let n=mlo.iteratee(t);if(!Array.isArray(e)){let a=Object.keys(e);for(let o=r;o{"use strict";Object.defineProperty(nqt,Symbol.toStringTag,{value:"Module"});function _lo(e){return e}nqt.identity=_lo});var sqt=H(iqt=>{"use strict";Object.defineProperty(iqt,Symbol.toStringTag,{value:"Module"});var ylo=HK(),blo=nX(),Elo=OK(),Slo=MK();function vlo(e,t=ylo.identity,r=0){if(!e)return-1;r<0&&(r=Math.max(e.length+r,0));let n=Array.from(e).slice(r),a=-1;switch(typeof t){case"function":{a=n.findIndex(t);break}case"object":{if(Array.isArray(t)&&t.length===2){let o=t[0],l=t[1];a=n.findIndex(Slo.matchesProperty(o,l))}else a=n.findIndex(Elo.matches(t));break}case"number":case"symbol":case"string":a=n.findIndex(blo.property(t))}return a===-1?-1:a+r}iqt.findIndex=vlo});var aqt=H(oqt=>{"use strict";Object.defineProperty(oqt,Symbol.toStringTag,{value:"Module"});var Blo=bm(),wlo=im(),Tlo=$w();function Rlo(e,t=Blo.identity,r){if(!e)return;let n=Array.isArray(e)?e.length:Object.keys(e).length;r=Tlo.toInteger(r??n-1),r<0?r=Math.max(n+r,0):r=Math.min(r,n-1);let a=wlo.iteratee(t);if(!Array.isArray(e)){let o=Object.keys(e);for(let l=r;l>=0;l--){let A=o[l],f=e[A];if(a(f,A,e))return f}return}return e.slice(0,r+1).findLast(a)}oqt.findLast=Rlo});var lqt=H(cqt=>{"use strict";Object.defineProperty(cqt,Symbol.toStringTag,{value:"Module"});var Nlo=bm(),Dlo=SZ(),klo=nX(),xlo=OK(),Glo=MK();function Flo(e,t=Nlo.identity,r=e?e.length-1:0){if(!e)return-1;r<0?r=Math.max(e.length+r,0):r=Math.min(r,e.length-1);let n=Dlo.toArray(e).slice(0,r+1);switch(typeof t){case"function":return n.findLastIndex(t);case"object":if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];return n.findLastIndex(Glo.matchesProperty(a,o))}else return n.findLastIndex(xlo.matches(t));case"number":case"symbol":case"string":return n.findLastIndex(klo.property(t))}}cqt.findLastIndex=Flo});var _Tn=H(uqt=>{"use strict";Object.defineProperty(uqt,Symbol.toStringTag,{value:"Module"});function Zlo(e){return e[0]}uqt.head=Zlo});var Aqt=H(gqt=>{"use strict";Object.defineProperty(gqt,Symbol.toStringTag,{value:"Module"});var Llo=_Tn(),Vlo=SZ(),Plo=Sf();function Wlo(e){if(Plo.isArrayLike(e))return Llo.head(Vlo.toArray(e))}gqt.head=Wlo});var Pfe=H(dqt=>{"use strict";Object.defineProperty(dqt,Symbol.toStringTag,{value:"Module"});var Olo=Sf();function Mlo(e,t=1){let r=[],n=Math.floor(t);if(!Olo.isArrayLike(e))return r;let a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(pqt,Symbol.toStringTag,{value:"Module"});var Hlo=Pfe();function Ylo(e,t=1){return Hlo.flatten(e,t)}pqt.flattenDepth=Ylo});var R3e=H(fqt=>{"use strict";Object.defineProperty(fqt,Symbol.toStringTag,{value:"Module"});var Qlo=bm(),Xlo=ooe(),Jlo=Sf(),Ulo=im();function Klo(e,t){if(!e)return[];let r=Jlo.isArrayLike(e)||Array.isArray(e)?Xlo.range(0,e.length):Object.keys(e),n=Ulo.iteratee(t??Qlo.identity),a=new Array(r.length);for(let o=0;o{"use strict";Object.defineProperty(Iqt,Symbol.toStringTag,{value:"Module"});function jlo(e){return e==null}Iqt.isNil=jlo});var mqt=H(hqt=>{"use strict";Object.defineProperty(hqt,Symbol.toStringTag,{value:"Module"});var zlo=YSe(),yTn=R3e(),bTn=aoe();function qlo(e,t){if(bTn.isNil(e))return[];let r=bTn.isNil(t)?yTn.map(e):yTn.map(e,t);return zlo.flattenDepth(r,1)}hqt.flatMap=qlo});var N3e=H(Cqt=>{"use strict";Object.defineProperty(Cqt,Symbol.toStringTag,{value:"Module"});var $lo=Pfe(),euo=R3e(),tuo=bm(),ruo=im();function nuo(e,t=tuo.identity,r=1){if(e==null)return[];let n=ruo.iteratee(t),a=euo.map(e,n);return $lo.flatten(a,r)}Cqt.flatMapDepth=nuo});var yqt=H(_qt=>{"use strict";Object.defineProperty(_qt,Symbol.toStringTag,{value:"Module"});var iuo=N3e();function suo(e,t){return iuo.flatMapDepth(e,t,1/0)}_qt.flatMapDeep=suo});var Eqt=H(bqt=>{"use strict";Object.defineProperty(bqt,Symbol.toStringTag,{value:"Module"});var ouo=YSe();function auo(e){return ouo.flattenDepth(e,1/0)}bqt.flattenDeep=auo});var ETn=H(Sqt=>{"use strict";Object.defineProperty(Sqt,Symbol.toStringTag,{value:"Module"});function cuo(e,t){let r={};for(let n=0;n{"use strict";Object.defineProperty(vqt,Symbol.toStringTag,{value:"Module"});var luo=ETn(),uuo=bm(),guo=Sf(),Auo=im();function duo(e,t){if(e==null)return{};let r=guo.isArrayLike(e)?Array.from(e):Object.values(e),n=Auo.iteratee(t??uuo.identity);return luo.groupBy(r,n)}vqt.groupBy=duo});var Tqt=H(wqt=>{"use strict";Object.defineProperty(wqt,Symbol.toStringTag,{value:"Module"});var puo=HSe(),fuo=Sk(),Iuo=$w();function huo(e,t,r,n){if(e==null)return!1;if(n||!r?r=0:r=Iuo.toInteger(r),puo.isString(e))return r>e.length||t instanceof RegExp?!1:(r<0&&(r=Math.max(0,e.length+r)),e.includes(t,r));if(Array.isArray(e))return e.includes(t,r);let a=Object.keys(e);r<0&&(r=Math.max(0,a.length+r));for(let o=r;o{"use strict";Object.defineProperty(Rqt,Symbol.toStringTag,{value:"Module"});var muo=Sf();function Cuo(e,t,r){if(!muo.isArrayLike(e))return-1;if(Number.isNaN(t)){r=r??0,r<0&&(r=Math.max(0,e.length+r));for(let n=r;n{"use strict";Object.defineProperty(Dqt,Symbol.toStringTag,{value:"Module"});function _uo(e){return e.slice(0,-1)}Dqt.initial=_uo});var xqt=H(kqt=>{"use strict";Object.defineProperty(kqt,Symbol.toStringTag,{value:"Module"});var yuo=STn(),buo=Sf();function Euo(e){return buo.isArrayLike(e)?yuo.initial(Array.from(e)):[]}kqt.initial=Euo});var vTn=H(Gqt=>{"use strict";Object.defineProperty(Gqt,Symbol.toStringTag,{value:"Module"});function Suo(e,t){let r=new Set(t);return e.filter(n=>r.has(n))}Gqt.intersection=Suo});var Wfe=H(Fqt=>{"use strict";Object.defineProperty(Fqt,Symbol.toStringTag,{value:"Module"});function vuo(e){return[...new Set(e)]}Fqt.uniq=vuo});var Lqt=H(Zqt=>{"use strict";Object.defineProperty(Zqt,Symbol.toStringTag,{value:"Module"});var Buo=vTn(),wuo=Wfe(),BTn=b2();function Tuo(...e){if(e.length===0)return[];if(!BTn.isArrayLikeObject(e[0]))return[];let t=wuo.uniq(Array.from(e[0]));for(let r=1;r{"use strict";Object.defineProperty(Vqt,Symbol.toStringTag,{value:"Module"});function Ruo(e,t,r){let n=[],a=new Set(t.map(r));for(let o=0;o{"use strict";Object.defineProperty(Wqt,Symbol.toStringTag,{value:"Module"});var Pqt=wTn(),Nuo=w3e(),Duo=Wfe(),kuo=bm(),xuo=nX(),Dlt=b2();function Guo(e,...t){if(!Dlt.isArrayLikeObject(e))return[];let r=Nuo.last(t);if(r===void 0)return Array.from(e);let n=Duo.uniq(Array.from(e)),a=Dlt.isArrayLikeObject(r)?t.length:t.length-1;for(let o=0;or(A)):typeof r=="string"&&(n=Pqt.intersectionBy(n,Array.from(l),xuo.property(r)))}return n}Wqt.intersectionBy=Guo});var TTn=H(Oqt=>{"use strict";Object.defineProperty(Oqt,Symbol.toStringTag,{value:"Module"});function Fuo(e,t,r){return e.filter(n=>t.some(a=>r(n,a)))}Oqt.intersectionWith=Fuo});var D3e=H(Mqt=>{"use strict";Object.defineProperty(Mqt,Symbol.toStringTag,{value:"Module"});var Zuo=Wfe(),Luo=Sf();function Vuo(e){return Luo.isArrayLike(e)?Zuo.uniq(Array.from(e)):[]}Mqt.uniq=Vuo});var xlt=H(Hqt=>{"use strict";Object.defineProperty(Hqt,Symbol.toStringTag,{value:"Module"});var Puo=zq(),Wuo=TTn(),Ouo=D3e(),Muo=Sk();function Huo(e,...t){if(e==null)return[];let r=Puo.last(t),n=Muo.isEqualsSameValueZero,a=Ouo.uniq;typeof r=="function"&&(n=r,a=Yuo,t.pop());let o=a(Array.from(e));for(let l=0;l{"use strict";Object.defineProperty(Yqt,Symbol.toStringTag,{value:"Module"});function Quo(e){return typeof e=="function"}Yqt.isFunction=Quo});var Jqt=H(Xqt=>{"use strict";Object.defineProperty(Xqt,Symbol.toStringTag,{value:"Module"});$7t();var Xuo=coe(),Juo=aoe(),Qqt=eM(),Uuo=Sf();function Kuo(e,t,...r){if(Juo.isNil(e))return[];let n=Uuo.isArrayLike(e)?Array.from(e):Object.values(e),a=[];for(let o=0;o0&&(f=Qqt.get(l,I))}else if(typeof t=="string"&&t.includes(".")){let C=t.split(".").slice(0,-1).join(".");f=Qqt.get(l,C)}a.push(A?.apply(f,r))}return a}Xqt.invokeMap=Kuo});var Kqt=H(Uqt=>{"use strict";Object.defineProperty(Uqt,Symbol.toStringTag,{value:"Module"});var juo=Sf();function zuo(e,t){return juo.isArrayLike(e)?Array.from(e).join(t):""}Uqt.join=zuo});var Glt=H(jqt=>{"use strict";Object.defineProperty(jqt,Symbol.toStringTag,{value:"Module"});var quo=bm(),$uo=ooe(),ego=Sf();function tgo(e,t=quo.identity,r){if(!e)return r;let n,a=0;ego.isArrayLike(e)?(n=$uo.range(0,e.length),r==null&&e.length>0&&(r=e[0],a+=1)):(n=Object.keys(e),r==null&&(r=e[n[0]],a+=1));for(let o=a;o{"use strict";Object.defineProperty(zqt,Symbol.toStringTag,{value:"Module"});var rgo=Glt(),ngo=bm(),igo=Sf(),sgo=ioe(),ogo=im();function ago(e,t){if(!igo.isArrayLike(e)&&!sgo.isObjectLike(e))return{};let r=ogo.iteratee(t??ngo.identity);return rgo.reduce(e,(n,a)=>{let o=r(a);return n[o]=a,n},{})}zqt.keyBy=ago});var e$t=H($qt=>{"use strict";Object.defineProperty($qt,Symbol.toStringTag,{value:"Module"});var cgo=Sf();function lgo(e,t,r){if(!cgo.isArrayLike(e)||e.length===0)return-1;let n=e.length,a=r??n-1;if(r!=null&&(a=a<0?Math.max(n+a,0):Math.min(a,n-1)),Number.isNaN(t)){for(let o=a;o>=0;o--)if(Number.isNaN(e[o]))return o}return Array.from(e).lastIndexOf(t,a)}$qt.lastIndexOf=lgo});var r$t=H(t$t=>{"use strict";Object.defineProperty(t$t,Symbol.toStringTag,{value:"Module"});var ugo=b2(),ggo=$w();function Ago(e,t=0){if(!(!ugo.isArrayLikeObject(e)||e.length===0))return t=ggo.toInteger(t),t<0&&(t+=e.length),e[t]}t$t.nth=Ago});var NTn=H(n$t=>{"use strict";Object.defineProperty(n$t,Symbol.toStringTag,{value:"Module"});function RTn(e){return typeof e=="symbol"?1:e===null?2:e===void 0?3:e!==e?4:0}var dgo=(e,t,r)=>{if(e!==t){let n=RTn(e),a=RTn(t);if(n===a&&n===0){if(et)return r==="desc"?-1:1}return r==="desc"?a-n:n-a}return 0};n$t.compareValues=dgo});var k3e=H(i$t=>{"use strict";Object.defineProperty(i$t,Symbol.toStringTag,{value:"Module"});var pgo=soe(),fgo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Igo=/^\w*$/;function hgo(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||pgo.isSymbol(e)?!0:typeof e=="string"&&(Igo.test(e)||!fgo.test(e))||t!=null&&Object.hasOwn(t,e)}i$t.isKey=hgo});var Flt=H(s$t=>{"use strict";Object.defineProperty(s$t,Symbol.toStringTag,{value:"Module"});var mgo=NTn(),Cgo=k3e(),_go=$5();function ygo(e,t,r,n){if(e==null)return[];r=n?void 0:r,Array.isArray(e)||(e=Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(r)||(r=r==null?[]:[r]),r=r.map(f=>String(f));let a=(f,I)=>{let C=f;for(let b=0;bI==null||f==null?I:typeof f=="object"&&"key"in f?Object.hasOwn(I,f.key)?I[f.key]:a(I,f.path):typeof f=="function"?f(I):Array.isArray(f)?a(I,f):typeof I=="object"?I[f]:I,l=t.map(f=>(Array.isArray(f)&&f.length===1&&(f=f[0]),f==null||typeof f=="function"||Array.isArray(f)||Cgo.isKey(f)?f:{key:f,path:_go.toPath(f)}));return e.map(f=>({original:f,criteria:l.map(I=>o(I,f))})).slice().sort((f,I)=>{for(let C=0;Cf.original)}s$t.orderBy=ygo});var a$t=H(o$t=>{"use strict";Object.defineProperty(o$t,Symbol.toStringTag,{value:"Module"});var bgo=bm(),Ego=Sf(),Sgo=im();function vgo(e,t=bgo.identity){if(!e)return[[],[]];let r=Ego.isArrayLike(e)?e:Object.values(e);t=Sgo.iteratee(t);let n=[],a=[];for(let o=0;o{"use strict";Object.defineProperty(c$t,Symbol.toStringTag,{value:"Module"});function Bgo(e,t){let r=new Set(t),n=0;for(let a=0;a{"use strict";Object.defineProperty(u$t,Symbol.toStringTag,{value:"Module"});var wgo=l$t();function Tgo(e,...t){return wgo.pull(e,t)}u$t.pull=Tgo});var d$t=H(A$t=>{"use strict";Object.defineProperty(A$t,Symbol.toStringTag,{value:"Module"});var Rgo=l$t();function Ngo(e,t=[]){return Rgo.pull(e,Array.from(t))}A$t.pullAll=Ngo});var f$t=H(p$t=>{"use strict";Object.defineProperty(p$t,Symbol.toStringTag,{value:"Module"});var Dgo=im();function kgo(e,t,r){let n=Dgo.iteratee(r),a=new Set(Array.from(t).map(l=>n(l))),o=0;for(let l=0;l{"use strict";function xgo(e,t){let r=e.length;t==null&&(t=Array(r));for(let n=0;n{"use strict";Object.defineProperty(I$t,Symbol.toStringTag,{value:"Module"});var Ggo=kTn(),Fgo=Sk();function Zgo(e,t,r){if(e?.length==null||t?.length==null)return e;e===t&&(t=Ggo(t));let n=0;r==null&&(r=(l,A)=>Fgo.isEqualsSameValueZero(l,A));let a=Array.isArray(t)?t:Array.from(t),o=a.includes(void 0);for(let l=0;lr(e[l],f))||(e[n++]=e[l]);continue}o||delete e[n++]}return e.length=n,e}I$t.pullAllWith=Zgo});var Zlt=H(m$t=>{"use strict";Object.defineProperty(m$t,Symbol.toStringTag,{value:"Module"});var Lgo=eM(),Vgo=Sf(),Pgo=HSe();function Wgo(e,...t){if(t.length===0)return[];let r=[];for(let a=0;a{"use strict";Object.defineProperty(_$t,Symbol.toStringTag,{value:"Module"});var Ogo=eM(),C$t=m3e(),Mgo=VSe(),Hgo=Kq(),Ygo=$5();function Qgo(e,t){if(e==null)return!0;switch(typeof t){case"symbol":case"number":case"object":{if(Array.isArray(t))return xTn(e,t);if(typeof t=="number"?t=Hgo.toKey(t):typeof t=="object"&&(Object.is(t?.valueOf(),-0)?t="-0":t=String(t)),C$t.isUnsafeProperty(t))return!1;if(e?.[t]===void 0)return!0;try{return delete e[t],!0}catch{return!1}}case"string":{if(e?.[t]===void 0&&Mgo.isDeepKey(t))return xTn(e,Ygo.toPath(t));if(C$t.isUnsafeProperty(t))return!1;try{return delete e[t],!0}catch{return!1}}}}function xTn(e,t){let r=t.length===1?e:Ogo.get(e,t.slice(0,-1)),n=t[t.length-1];if(r?.[n]===void 0)return!0;if(C$t.isUnsafeProperty(n))return!1;try{return delete r[n],!0}catch{return!1}}_$t.unset=Qgo});var $q=H(y$t=>{"use strict";Object.defineProperty(y$t,Symbol.toStringTag,{value:"Module"});function Xgo(e){return Array.isArray(e)}y$t.isArray=Xgo});var E$t=H(b$t=>{"use strict";Object.defineProperty(b$t,Symbol.toStringTag,{value:"Module"});var Jgo=YSe(),GTn=OSe(),Ugo=k3e(),Kgo=Kq(),jgo=Zlt(),zgo=x3e(),qgo=$q(),$go=$5();function eAo(e,...t){let r=Jgo.flattenDepth(t,1);if(!e)return Array(r.length);let n=jgo.at(e,r),a=r.map(o=>GTn.isIndex(o,e.length)?Number(o):o).sort((o,l)=>l-o);for(let o of new Set(a)){if(GTn.isIndex(o,e.length)){Array.prototype.splice.call(e,o,1);continue}if(Ugo.isKey(o,e)){delete e[Kgo.toKey(o)];continue}let l=qgo.isArray(o)?o:$go.toPath(o);zgo.unset(e,l)}return n}b$t.pullAt=eAo});var v$t=H(S$t=>{"use strict";Object.defineProperty(S$t,Symbol.toStringTag,{value:"Module"});var tAo=bm(),rAo=ooe(),nAo=Sf();function iAo(e,t=tAo.identity,r){if(!e)return r;let n,a;nAo.isArrayLike(e)?(n=rAo.range(0,e.length).reverse(),r==null&&e.length>0?(r=e[e.length-1],a=1):a=0):(n=Object.keys(e).reverse(),r==null?(r=e[n[0]],a=1):a=0);for(let o=a;o{"use strict";Object.defineProperty(B$t,Symbol.toStringTag,{value:"Module"});function sAo(e){if(typeof e!="function")throw new TypeError("Expected a function");return function(...t){return!e.apply(this,t)}}B$t.negate=sAo});var T$t=H(w$t=>{"use strict";Object.defineProperty(w$t,Symbol.toStringTag,{value:"Module"});var oAo=Nlt(),aAo=bm(),cAo=G3e(),lAo=im();function uAo(e,t=aAo.identity){return oAo.filter(e,cAo.negate(lAo.iteratee(t)))}w$t.reject=uAo});var FTn=H(R$t=>{"use strict";Object.defineProperty(R$t,Symbol.toStringTag,{value:"Module"});function gAo(e,t){let r=e.slice(),n=[],a=0;for(let o=0;o{"use strict";Object.defineProperty(N$t,Symbol.toStringTag,{value:"Module"});var AAo=FTn(),dAo=bm(),pAo=im();function fAo(e,t=dAo.identity){return AAo.remove(e,pAo.iteratee(t))}N$t.remove=fAo});var x$t=H(k$t=>{"use strict";Object.defineProperty(k$t,Symbol.toStringTag,{value:"Module"});function IAo(e){return e==null?e:e.reverse()}k$t.reverse=IAo});var ZTn=H(G$t=>{"use strict";Object.defineProperty(G$t,Symbol.toStringTag,{value:"Module"});function hAo(e){let t=Math.floor(Math.random()*e.length);return e[t]}G$t.sample=hAo});var Z$t=H(F$t=>{"use strict";Object.defineProperty(F$t,Symbol.toStringTag,{value:"Module"});var LTn=ZTn(),mAo=SZ(),CAo=Sf();function _Ao(e){if(e!=null)return CAo.isArrayLike(e)?LTn.sample(mAo.toArray(e)):LTn.sample(Object.values(e))}F$t.sample=_Ao});var V$t=H(L$t=>{"use strict";Object.defineProperty(L$t,Symbol.toStringTag,{value:"Module"});function yAo(e,t){if(t==null&&(t=e,e=0),e>=t)throw new Error("Invalid input: The maximum value must be greater than the minimum value.");return Math.random()*(t-e)+e}L$t.random=yAo});var W$t=H(P$t=>{"use strict";Object.defineProperty(P$t,Symbol.toStringTag,{value:"Module"});var bAo=V$t();function EAo(e,t){return Math.floor(bAo.random(e,t))}P$t.randomInt=EAo});var VTn=H(O$t=>{"use strict";Object.defineProperty(O$t,Symbol.toStringTag,{value:"Module"});var SAo=W$t();function vAo(e,t){if(t>e.length)throw new Error("Size must be less than or equal to the length of array.");let r=new Array(t),n=new Set;for(let a=e.length-t,o=0;a{"use strict";Object.defineProperty(M$t,Symbol.toStringTag,{value:"Module"});var PTn=Q9();function BAo(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=PTn.toNumber(r),e=Math.min(e,Number.isNaN(r)?0:r)),t!==void 0&&(t=PTn.toNumber(t),e=Math.max(e,Number.isNaN(t)?0:t)),e}M$t.clamp=BAo});var WTn=H(H$t=>{"use strict";Object.defineProperty(H$t,Symbol.toStringTag,{value:"Module"});function wAo(e){return e instanceof Map}H$t.isMap=wAo});var Llt=H(Y$t=>{"use strict";Object.defineProperty(Y$t,Symbol.toStringTag,{value:"Module"});var TAo=WTn();function RAo(e){return TAo.isMap(e)}Y$t.isMap=RAo});var F3e=H(Q$t=>{"use strict";Object.defineProperty(Q$t,Symbol.toStringTag,{value:"Module"});var NAo=Sf(),DAo=Llt();function kAo(e){return e==null?[]:NAo.isArrayLike(e)||DAo.isMap(e)?Array.from(e):typeof e=="object"?Object.values(e):[]}Q$t.toArray=kAo});var J$t=H(X$t=>{"use strict";Object.defineProperty(X$t,Symbol.toStringTag,{value:"Module"});var xAo=VTn(),GAo=qq(),FAo=Ofe(),ZAo=F3e(),LAo=$w();function VAo(e,t,r){let n=ZAo.toArray(e);return(r?GAo.isIterateeCall(e,t,r):t===void 0)?t=1:t=FAo.clamp(LAo.toInteger(t),0,n.length),xAo.sampleSize(n,t)}X$t.sampleSize=VAo});var OTn=H(U$t=>{"use strict";Object.defineProperty(U$t,Symbol.toStringTag,{value:"Module"});function PAo(e){let t=e.slice();for(let r=t.length-1;r>=1;r--){let n=Math.floor(Math.random()*(r+1));[t[r],t[n]]=[t[n],t[r]]}return t}U$t.shuffle=PAo});var Vlt=H(K$t=>{"use strict";Object.defineProperty(K$t,Symbol.toStringTag,{value:"Module"});function WAo(e){return e==null?[]:Object.values(e)}K$t.values=WAo});var QSe=H(j$t=>{"use strict";Object.defineProperty(j$t,Symbol.toStringTag,{value:"Module"});function OAo(e){return e==null}j$t.isNil=OAo});var $$t=H(q$t=>{"use strict";Object.defineProperty(q$t,Symbol.toStringTag,{value:"Module"});var z$t=OTn(),MAo=Vlt(),HAo=$q(),YAo=Sf(),QAo=QSe(),XAo=ioe();function JAo(e){return QAo.isNil(e)?[]:HAo.isArray(e)?z$t.shuffle(e):YAo.isArrayLike(e)?z$t.shuffle(Array.from(e)):XAo.isObjectLike(e)?z$t.shuffle(MAo.values(e)):[]}q$t.shuffle=JAo});var ter=H(eer=>{"use strict";Object.defineProperty(eer,Symbol.toStringTag,{value:"Module"});var UAo=aoe();function KAo(e){return UAo.isNil(e)?0:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}eer.size=KAo});var ner=H(rer=>{"use strict";Object.defineProperty(rer,Symbol.toStringTag,{value:"Module"});var jAo=qq(),zAo=Sf(),MTn=$w();function qAo(e,t,r){if(!zAo.isArrayLike(e))return[];let n=e.length;r===void 0?r=n:typeof r!="number"&&jAo.isIterateeCall(e,t,r)&&(t=0,r=n),t=MTn.toInteger(t),r=MTn.toInteger(r),t<0?t=Math.max(n+t,0):t=Math.min(t,n),r<0?r=Math.max(n+r,0):r=Math.min(r,n);let a=Math.max(r-t,0),o=new Array(a);for(let l=0;l{"use strict";Object.defineProperty(ier,Symbol.toStringTag,{value:"Module"});var $Ao=bm(),edo=nX(),tdo=OK(),rdo=MK();function ndo(e,t,r){if(!e)return!1;r!=null&&(t=void 0),t==null&&(t=$Ao.identity);let n=Array.isArray(e)?e:Object.values(e);switch(typeof t){case"function":{if(!Array.isArray(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(oer,Symbol.toStringTag,{value:"Module"});var ido=Flt(),sdo=h3e(),HTn=qq();function odo(e,...t){let r=t.length;return r>1&&HTn.isIterateeCall(e,t[0],t[1])?t=[]:r>2&&HTn.isIterateeCall(t[0],t[1],t[2])&&(t=[t[0]]),ido.orderBy(e,sdo.flatten(t),["asc"])}oer.sortBy=odo});var Plt=H(cer=>{"use strict";Object.defineProperty(cer,Symbol.toStringTag,{value:"Module"});function ado(e){return e===null}cer.isNull=ado});var uer=H(ler=>{"use strict";Object.defineProperty(ler,Symbol.toStringTag,{value:"Module"});function cdo(e){return e===void 0}ler.isUndefined=cdo});var Wlt=H(ger=>{"use strict";Object.defineProperty(ger,Symbol.toStringTag,{value:"Module"});function ldo(e){return Number.isNaN(e)}ger.isNaN=ldo});var Z3e=H(Aer=>{"use strict";Object.defineProperty(Aer,Symbol.toStringTag,{value:"Module"});var YTn=Plt(),QTn=uer(),udo=HK(),XTn=Wlt(),gdo=QSe(),JTn=soe(),Ado=im(),ddo=4294967295,pdo=ddo-1;function fdo(e,t,r=udo.identity,n){if(gdo.isNil(e)||e.length===0)return 0;let a=0,o=e.length,l=Ado.iteratee(r),A=l(t),f=XTn.isNaN(A),I=YTn.isNull(A),C=JTn.isSymbol(A),b=QTn.isUndefined(A);for(;a{"use strict";Object.defineProperty(der,Symbol.toStringTag,{value:"Module"});function Ido(e){return typeof e=="symbol"}der.isSymbol=Ido});var L3e=H(fer=>{"use strict";Object.defineProperty(fer,Symbol.toStringTag,{value:"Module"});function hdo(e){return typeof e=="number"||e instanceof Number}fer.isNumber=hdo});var Olt=H(Ier=>{"use strict";Object.defineProperty(Ier,Symbol.toStringTag,{value:"Module"});var mdo=Z3e(),Cdo=aoe(),_do=Plt(),ydo=per(),bdo=L3e(),Edo=4294967295,Sdo=Edo>>>1;function vdo(e,t){if(Cdo.isNil(e))return 0;let r=0,n=e.length;if(bdo.isNumber(t)&&t===t&&n<=Sdo){for(;r>>1,o=e[a];!_do.isNull(o)&&!ydo.isSymbol(o)&&oa)}Ier.sortedIndex=vdo});var mer=H(her=>{"use strict";Object.defineProperty(her,Symbol.toStringTag,{value:"Module"});var Bdo=Olt(),wdo=Sk();function Tdo(e,t){if(!e?.length)return-1;let r=Bdo.sortedIndex(e,t);return r{"use strict";Object.defineProperty(Cer,Symbol.toStringTag,{value:"Module"});var Rdo=Z3e();function Ndo(e,t,r){return Rdo.sortedIndexBy(e,t,r,!0)}Cer.sortedLastIndexBy=Ndo});var Hlt=H(_er=>{"use strict";Object.defineProperty(_er,Symbol.toStringTag,{value:"Module"});var Ddo=Mlt(),kdo=aoe(),xdo=Plt(),Gdo=per(),Fdo=L3e(),Zdo=4294967295,Ldo=Zdo>>>1;function Vdo(e,t){if(kdo.isNil(e))return 0;let r=e.length;if(!Fdo.isNumber(t)||Number.isNaN(t)||r>Ldo)return Ddo.sortedLastIndexBy(e,t,a=>a);let n=0;for(;n>>1,o=e[a];!xdo.isNull(o)&&!Gdo.isSymbol(o)&&o<=t?n=a+1:r=a}return r}_er.sortedLastIndex=Vdo});var ber=H(yer=>{"use strict";Object.defineProperty(yer,Symbol.toStringTag,{value:"Module"});var Pdo=Hlt(),Wdo=Sk();function Odo(e,t){if(!e?.length)return-1;let r=Pdo.sortedLastIndex(e,t)-1;return r>=0&&Wdo.isEqualsSameValueZero(e[r],t)?r:-1}yer.sortedLastIndexOf=Odo});var UTn=H(Eer=>{"use strict";Object.defineProperty(Eer,Symbol.toStringTag,{value:"Module"});function Mdo(e){return e.slice(1)}Eer.tail=Mdo});var ver=H(Ser=>{"use strict";Object.defineProperty(Ser,Symbol.toStringTag,{value:"Module"});var Hdo=UTn(),Ydo=SZ(),Qdo=Sf();function Xdo(e){return Qdo.isArrayLike(e)?Hdo.tail(Ydo.toArray(e)):[]}Ser.tail=Xdo});var KTn=H(Ber=>{"use strict";Object.defineProperty(Ber,Symbol.toStringTag,{value:"Module"});var Jdo=$w();function Udo(e,t,r){return t=r||t===void 0?1:Jdo.toInteger(t),e.slice(0,t)}Ber.take=Udo});var Ter=H(wer=>{"use strict";Object.defineProperty(wer,Symbol.toStringTag,{value:"Module"});var Kdo=KTn(),jdo=SZ(),zdo=Sf(),qdo=$w();function $do(e,t=1,r){return t=r?1:qdo.toInteger(t),t<1||!zdo.isArrayLike(e)?[]:Kdo.take(jdo.toArray(e),t)}wer.take=$do});var jTn=H(Rer=>{"use strict";Object.defineProperty(Rer,Symbol.toStringTag,{value:"Module"});var epo=$w();function tpo(e,t,r){return t=r||t===void 0?1:epo.toInteger(t),t<=0||e.length===0?[]:e.slice(-t)}Rer.takeRight=tpo});var Der=H(Ner=>{"use strict";Object.defineProperty(Ner,Symbol.toStringTag,{value:"Module"});var rpo=jTn(),npo=SZ(),ipo=Sf(),spo=$w();function opo(e,t=1,r){return t=r?1:spo.toInteger(t),t<=0||!ipo.isArrayLike(e)?[]:rpo.takeRight(npo.toArray(e),t)}Ner.takeRight=opo});var zTn=H(ker=>{"use strict";Object.defineProperty(ker,Symbol.toStringTag,{value:"Module"});function apo(e){return(...t)=>!e(...t)}ker.negate=apo});var Ger=H(xer=>{"use strict";Object.defineProperty(xer,Symbol.toStringTag,{value:"Module"});var cpo=bm(),lpo=zTn(),upo=SZ(),gpo=b2(),Apo=im();function dpo(e,t){if(!gpo.isArrayLikeObject(e))return[];let r=upo.toArray(e),n=r.findLastIndex(lpo.negate(Apo.iteratee(t??cpo.identity)));return r.slice(n+1)}xer.takeRightWhile=dpo});var Zer=H(Fer=>{"use strict";Object.defineProperty(Fer,Symbol.toStringTag,{value:"Module"});var ppo=SZ(),fpo=HK(),Ipo=G3e(),hpo=b2(),mpo=im();function Cpo(e,t){if(!hpo.isArrayLikeObject(e))return[];let r=ppo.toArray(e),n=r.findIndex(Ipo.negate(mpo.iteratee(t??fpo.identity)));return n===-1?r:r.slice(0,n)}Fer.takeWhile=Cpo});var Ver=H(Ler=>{"use strict";Object.defineProperty(Ler,Symbol.toStringTag,{value:"Module"});var _po=N3e(),ypo=Wfe(),bpo=b2();function Epo(...e){let t=e.filter(bpo.isArrayLikeObject),r=_po.flatMapDepth(t,n=>Array.from(n),1);return ypo.uniq(r)}Ler.union=Epo});var Wer=H(Per=>{"use strict";Object.defineProperty(Per,Symbol.toStringTag,{value:"Module"});function Spo(e,t){let r=new Map;for(let n=0;n{"use strict";Object.defineProperty(Oer,Symbol.toStringTag,{value:"Module"});function vpo(e,t){return function(...r){return e.apply(this,r.slice(0,t))}}Oer.ary=vpo});var Qlt=H(Mer=>{"use strict";Object.defineProperty(Mer,Symbol.toStringTag,{value:"Module"});var Bpo=w3e(),wpo=Wfe(),Tpo=Wer(),Rpo=Ylt(),Npo=T3e(),Dpo=b2(),kpo=im();function xpo(...e){let t=Bpo.last(e),r=Npo.flattenArrayLike(e);return Dpo.isArrayLikeObject(t)||t==null?wpo.uniq(r):Tpo.uniqBy(r,Rpo.ary(kpo.iteratee(t),1))}Mer.unionBy=xpo});var Yer=H(Her=>{"use strict";Object.defineProperty(Her,Symbol.toStringTag,{value:"Module"});function Gpo(e,t){let r=[];for(let n=0;n!t(l,a))&&r.push(a)}return r}Her.uniqWith=Gpo});var Xlt=H(Qer=>{"use strict";Object.defineProperty(Qer,Symbol.toStringTag,{value:"Module"});var Fpo=w3e(),Zpo=Wfe(),Lpo=Yer(),Vpo=T3e(),Ppo=b2();function Wpo(...e){let t=Fpo.last(e),r=Vpo.flattenArrayLike(e);return Ppo.isArrayLikeObject(t)||t==null?Zpo.uniq(r):Lpo.uniqWith(r,t)}Qer.unionWith=Wpo});var Jer=H(Xer=>{"use strict";Object.defineProperty(Xer,Symbol.toStringTag,{value:"Module"});var Opo=Wer(),Mpo=Ylt(),Hpo=bm(),Ypo=b2(),Qpo=im();function Xpo(e,t=Hpo.identity){return Ypo.isArrayLikeObject(e)?Opo.uniqBy(Array.from(e),Mpo.ary(Qpo.iteratee(t),1)):[]}Xer.uniqBy=Xpo});var Ker=H(Uer=>{"use strict";Object.defineProperty(Uer,Symbol.toStringTag,{value:"Module"});var Jpo=Yer(),Upo=D3e(),Kpo=Sf();function jpo(e,t){return Kpo.isArrayLike(e)?typeof t=="function"?Jpo.uniqWith(Array.from(e),t):Upo.uniq(Array.from(e)):[]}Uer.uniqWith=jpo});var zer=H(jer=>{"use strict";Object.defineProperty(jer,Symbol.toStringTag,{value:"Module"});function zpo(e){let t=0;for(let n=0;nt&&(t=e[n].length);let r=new Array(t);for(let n=0;n{"use strict";Object.defineProperty(qer,Symbol.toStringTag,{value:"Module"});var qpo=zer(),$po=$q(),qTn=b2();function efo(e){return!qTn.isArrayLikeObject(e)||!e.length?[]:(e=$po.isArray(e)?e:Array.from(e),e=e.filter(t=>qTn.isArrayLikeObject(t)),qpo.unzip(e))}qer.unzip=efo});var etr=H($er=>{"use strict";Object.defineProperty($er,Symbol.toStringTag,{value:"Module"});var $Tn=zer(),tfo=$q(),rfo=b2();function nfo(e,t){if(!rfo.isArrayLikeObject(e)||!e.length)return[];let r=tfo.isArray(e)?$Tn.unzip(e):$Tn.unzip(Array.from(e,a=>Array.from(a)));if(!t)return r;let n=new Array(r.length);for(let a=0;a{"use strict";Object.defineProperty(ttr,Symbol.toStringTag,{value:"Module"});var ifo=B3e();function sfo(e,...t){return ifo.difference(e,t)}ttr.without=sfo});var ntr=H(rtr=>{"use strict";Object.defineProperty(rtr,Symbol.toStringTag,{value:"Module"});var ofo=eRn(),afo=b2();function cfo(e,...t){return afo.isArrayLikeObject(e)?ofo.without(Array.from(e),...t):[]}rtr.without=cfo});var str=H(itr=>{"use strict";Object.defineProperty(itr,Symbol.toStringTag,{value:"Module"});var lfo=b2(),ufo=F3e();function gfo(...e){let t=new Map;for(let n=0;n{"use strict";Object.defineProperty(otr,Symbol.toStringTag,{value:"Module"});function Afo(e,t,r=1,{partialWindows:n=!1}={}){if(t<=0||!Number.isInteger(t))throw new Error("Size must be a positive integer.");if(r<=0||!Number.isInteger(r))throw new Error("Step must be a positive integer.");let a=[],o=n?e.length:e.length-t+1;for(let l=0;l{"use strict";Object.defineProperty(ctr,Symbol.toStringTag,{value:"Module"});var dfo=vlt(),pfo=klt(),ffo=zq(),tRn=Qlt(),Ifo=atr(),hfo=bm(),rRn=b2(),mfo=im();function Cfo(...e){let t=ffo.last(e),r=hfo.identity;!rRn.isArrayLikeObject(t)&&t!=null&&(r=mfo.iteratee(t),e=e.slice(0,-1));let n=e.filter(rRn.isArrayLikeObject),a=tRn.unionBy(...n,r),o=Ifo.windowed(n,2).map(([l,A])=>pfo.intersectionBy(l,A,r));return dfo.differenceBy(a,tRn.unionBy(...o,r),r)}ctr.xorBy=Cfo});var gtr=H(utr=>{"use strict";Object.defineProperty(utr,Symbol.toStringTag,{value:"Module"});var _fo=Blt(),yfo=xlt(),bfo=zq(),nRn=Xlt(),Efo=atr(),Sfo=b2();function vfo(...e){let t=bfo.last(e),r=(l,A)=>l===A;typeof t=="function"&&(r=t,e=e.slice(0,-1));let n=e.filter(Sfo.isArrayLikeObject),a=nRn.unionWith(...n,r),o=Efo.windowed(n,2).map(([l,A])=>yfo.intersectionWith(l,A,r));return _fo.differenceWith(a,nRn.unionWith(...o,r),r)}utr.xorWith=vfo});var dtr=H(Atr=>{"use strict";Object.defineProperty(Atr,Symbol.toStringTag,{value:"Module"});function Bfo(...e){let t=0;for(let a=0;at&&(t=e[a].length);let r=e.length,n=Array(t);for(let a=0;a{"use strict";Object.defineProperty(ftr,Symbol.toStringTag,{value:"Module"});var wfo=dtr(),Tfo=b2();function Rfo(...e){return e.length?wfo.zip(...e.filter(t=>Tfo.isArrayLikeObject(t))):[]}ftr.zip=Rfo});var Ult=H(htr=>{"use strict";Object.defineProperty(htr,Symbol.toStringTag,{value:"Module"});var Nfo=Sk(),Dfo=(e,t,r)=>{let n=e[t];(!(Object.hasOwn(e,t)&&Nfo.isEqualsSameValueZero(n,r))||r===void 0&&!(t in e))&&(e[t]=r)};htr.assignValue=Dfo});var Ctr=H(mtr=>{"use strict";Object.defineProperty(mtr,Symbol.toStringTag,{value:"Module"});var kfo=Ult();function xfo(e=[],t=[]){let r={};for(let n=0;n{"use strict";Object.defineProperty(_tr,Symbol.toStringTag,{value:"Module"});var Gfo=eM(),Ffo=m3e(),Zfo=Ult(),Lfo=OSe(),Vfo=k3e(),Pfo=Kq(),iRn=tM(),Wfo=$5();function Ofo(e,t,r,n){if(e==null&&!iRn.isObject(e))return e;let a;Vfo.isKey(t,e)?a=[t]:Array.isArray(t)?a=t:a=Wfo.toPath(t);let o=r(Gfo.get(e,a)),l=e;for(let A=0;A{"use strict";Object.defineProperty(ytr,Symbol.toStringTag,{value:"Module"});var Mfo=XSe();function Hfo(e,t,r){return Mfo.updateWith(e,t,()=>r,()=>{})}ytr.set=Hfo});var Etr=H(btr=>{"use strict";Object.defineProperty(btr,Symbol.toStringTag,{value:"Module"});var Yfo=dtr(),Qfo=V3e(),sRn=Sf();function Xfo(e,t){let r={};if(!sRn.isArrayLike(e))return r;sRn.isArrayLike(t)||(t=[]);let n=Yfo.zip(Array.from(e),Array.from(t));for(let a=0;a{"use strict";Object.defineProperty(Str,Symbol.toStringTag,{value:"Module"});var Jfo=Jlt(),Ufo=coe();function Kfo(...e){let t=e.pop();if(Ufo.isFunction(t)||(e.push(t),t=void 0),!e?.length)return[];let r=Jfo.unzip(e);return t==null?r:r.map(n=>t(...n))}Str.zipWith=Kfo});var wtr=H(Btr=>{"use strict";Object.defineProperty(Btr,Symbol.toStringTag,{value:"Module"});var jfo=$w();function zfo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");return e=jfo.toInteger(e),function(...r){if(--e<1)return t.apply(this,r)}}Btr.after=zfo});var Klt=H(Ttr=>{"use strict";Object.defineProperty(Ttr,Symbol.toStringTag,{value:"Module"});var qfo=Ylt();function $fo(e,t=e.length,r){return r&&(t=e.length),(Number.isNaN(t)||t<0)&&(t=0),qfo.ary(e,t)}Ttr.ary=$fo});var jlt=H(Rtr=>{"use strict";Object.defineProperty(Rtr,Symbol.toStringTag,{value:"Module"});function eIo(e,...t){try{return e(...t)}catch(r){return r instanceof Error?r:new Error(r)}}Rtr.attempt=eIo});var Dtr=H(Ntr=>{"use strict";Object.defineProperty(Ntr,Symbol.toStringTag,{value:"Module"});var tIo=$w();function rIo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");let r;return e=tIo.toInteger(e),function(...n){return--e>0&&(r=t.apply(this,n)),e<=1&&t&&(t=void 0),r}}Ntr.before=rIo});var Gtr=H(xtr=>{"use strict";Object.defineProperty(xtr,Symbol.toStringTag,{value:"Module"});function ktr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Ztr,Symbol.toStringTag,{value:"Module"});function Ftr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Ptr,Symbol.toStringTag,{value:"Module"});function P3e(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===P3e.placeholder),l=a.length-o.length;return lA===P3e.placeholder),l=a.length-o.length;return a=sIo(a,r),l{"use strict";Object.defineProperty(Mtr,Symbol.toStringTag,{value:"Module"});function JSe(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===JSe.placeholder),l=a.length-o.length;return lA===JSe.placeholder),l=a.length-o.length;return a=oIo(a,r),ll===JSe.placeholder).length,n=Math.max(e.length-r,0),a=[],o=0;for(let l=0;l{"use strict";Object.defineProperty(Ytr,Symbol.toStringTag,{value:"Module"});function aIo(e,t,{signal:r,edges:n}={}){let a,o=null,l=n!=null&&n.includes("leading"),A=n==null||n.includes("trailing"),f=()=>{o!==null&&(e.apply(a,o),a=void 0,o=null)},I=()=>{A&&f(),N()},C=null,b=()=>{C!=null&&clearTimeout(C),C=setTimeout(()=>{C=null,I()},t)},E=()=>{C!==null&&(clearTimeout(C),C=null)},N=()=>{E(),a=void 0,o=null},B=()=>{f()},F=function(...Q){if(r?.aborted)return;a=this,o=Q;let X=C==null;b(),l&&X&&f()};return F.schedule=b,F.cancel=N,F.flush=B,r?.addEventListener("abort",N,{once:!0}),F}Ytr.debounce=aIo});var zlt=H(Qtr=>{"use strict";Object.defineProperty(Qtr,Symbol.toStringTag,{value:"Module"});var cIo=cRn();function lIo(e,t=0,r={}){typeof r!="object"&&(r={});let{leading:n=!1,trailing:a=!0,maxWait:o}=r,l=Array(2);n&&(l[0]="leading"),a&&(l[1]="trailing");let A,f=null,I=cIo.debounce(function(...E){A=e.apply(this,E),f=null},t,{edges:l}),C=function(...E){return o!=null&&(f===null&&(f=Date.now()),Date.now()-f>=o)?(A=e.apply(this,E),f=Date.now(),I.cancel(),I.schedule(),A):(I.apply(this,E),A)},b=()=>(I.flush(),A);return C.cancel=I.cancel,C.flush=b,C}Qtr.debounce=lIo});var Jtr=H(Xtr=>{"use strict";Object.defineProperty(Xtr,Symbol.toStringTag,{value:"Module"});function uIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,1,...t)}Xtr.defer=uIo});var Ktr=H(Utr=>{"use strict";Object.defineProperty(Utr,Symbol.toStringTag,{value:"Module"});var gIo=Q9();function AIo(e,t,...r){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,gIo.toNumber(t)||0,...r)}Utr.delay=AIo});var ztr=H(jtr=>{"use strict";Object.defineProperty(jtr,Symbol.toStringTag,{value:"Module"});function dIo(e){return function(...t){return e.apply(this,t.reverse())}}jtr.flip=dIo});var $tr=H(qtr=>{"use strict";Object.defineProperty(qtr,Symbol.toStringTag,{value:"Module"});function pIo(...e){return function(...t){let r=e.length?e[0].apply(this,t):t[0];for(let n=1;n{"use strict";Object.defineProperty(trr,Symbol.toStringTag,{value:"Module"});var fIo=h3e(),IIo=$tr();function hIo(...e){let t=fIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return IIo.flow(...t)}trr.flow=hIo});var lRn=H(nrr=>{"use strict";Object.defineProperty(nrr,Symbol.toStringTag,{value:"Module"});var mIo=$tr();function CIo(...e){return mIo.flow(...e.reverse())}nrr.flowRight=CIo});var srr=H(irr=>{"use strict";Object.defineProperty(irr,Symbol.toStringTag,{value:"Module"});var _Io=h3e(),yIo=lRn();function bIo(...e){let t=_Io.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return yIo.flowRight(...t)}irr.flowRight=bIo});var crr=H(arr=>{"use strict";Object.defineProperty(arr,Symbol.toStringTag,{value:"Module"});function orr(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError("Expected a function");let r=function(...a){let o=t?t.apply(this,a):a[0],l=r.cache;if(l.has(o))return l.get(o);let A=e.apply(this,a);return r.cache=l.set(o,A)||l,A},n=orr.Cache||Map;return r.cache=new n,r}orr.Cache=Map;arr.memoize=orr});var urr=H(lrr=>{"use strict";Object.defineProperty(lrr,Symbol.toStringTag,{value:"Module"});var EIo=$w();function SIo(e=0){return function(...t){return t.at(EIo.toInteger(e))}}lrr.nthArg=SIo});var uRn=H(grr=>{"use strict";Object.defineProperty(grr,Symbol.toStringTag,{value:"Module"});function vIo(e){let t=!1,r;return function(...n){return t||(t=!0,r=e(...n)),r}}grr.once=vIo});var drr=H(Arr=>{"use strict";Object.defineProperty(Arr,Symbol.toStringTag,{value:"Module"});var BIo=uRn();function wIo(e){return BIo.once(e)}Arr.once=wIo});var frr=H(prr=>{"use strict";Object.defineProperty(prr,Symbol.toStringTag,{value:"Module"});var TIo=bm(),RIo=im();function NIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");let r=t.flat();return function(...n){let a=Math.min(n.length,r.length),o=[...n];for(let l=0;l{"use strict";Object.defineProperty(qlt,Symbol.toStringTag,{value:"Module"});function gRn(e,...t){return ARn(e,dRn,...t)}function ARn(e,t,...r){let n=function(...a){let o=0,l=r.slice().map(f=>f===t?a[o++]:f),A=a.slice(o);return e.apply(this,l.concat(A))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var dRn=Symbol("partial.placeholder");gRn.placeholder=dRn;qlt.partial=gRn;qlt.partialImpl=ARn});var mrr=H(hrr=>{"use strict";Object.defineProperty(hrr,Symbol.toStringTag,{value:"Module"});var DIo=pRn();function Irr(e,...t){return DIo.partialImpl(e,Irr.placeholder,...t)}Irr.placeholder=Symbol("compat.partial.placeholder");hrr.partial=Irr});var mRn=H($lt=>{"use strict";Object.defineProperty($lt,Symbol.toStringTag,{value:"Module"});function fRn(e,...t){return IRn(e,hRn,...t)}function IRn(e,t,...r){let n=function(...a){let o=r.filter(C=>C===t).length,l=Math.max(a.length-o,0),A=a.slice(0,l),f=l,I=r.slice().map(C=>C===t?a[f++]:C);return e.apply(this,A.concat(I))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var hRn=Symbol("partialRight.placeholder");fRn.placeholder=hRn;$lt.partialRight=fRn;$lt.partialRightImpl=IRn});var yrr=H(_rr=>{"use strict";Object.defineProperty(_rr,Symbol.toStringTag,{value:"Module"});var kIo=mRn();function Crr(e,...t){return kIo.partialRightImpl(e,Crr.placeholder,...t)}Crr.placeholder=Symbol("compat.partialRight.placeholder");_rr.partialRight=Crr});var Err=H(brr=>{"use strict";Object.defineProperty(brr,Symbol.toStringTag,{value:"Module"});var xIo=Pfe();function GIo(e,...t){let r=xIo.flatten(t);return function(...n){let a=r.map(o=>n[o]).slice(0,n.length);for(let o=a.length;o{"use strict";Object.defineProperty(Srr,Symbol.toStringTag,{value:"Module"});function FIo(e,t=e.length-1){return function(...r){let n=r.slice(t),a=r.slice(0,t);for(;a.length{"use strict";Object.defineProperty(vrr,Symbol.toStringTag,{value:"Module"});var ZIo=CRn();function LIo(e,t=e.length-1){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=e.length-1),ZIo.rest(e,t)}vrr.rest=LIo});var Trr=H(wrr=>{"use strict";Object.defineProperty(wrr,Symbol.toStringTag,{value:"Module"});function VIo(e,t=0){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=0),function(...r){let n=r[t],a=r.slice(0,t);return n&&a.push(...n),e.apply(this,a)}}wrr.spread=VIo});var Nrr=H(Rrr=>{"use strict";Object.defineProperty(Rrr,Symbol.toStringTag,{value:"Module"});var PIo=zlt();function WIo(e,t=0,r={}){let{leading:n=!0,trailing:a=!0}=r;return PIo.debounce(e,t,{leading:n,maxWait:t,trailing:a})}Rrr.throttle=WIo});var krr=H(Drr=>{"use strict";Object.defineProperty(Drr,Symbol.toStringTag,{value:"Module"});var OIo=Klt();function MIo(e){return OIo.ary(e,1)}Drr.unary=MIo});var Grr=H(xrr=>{"use strict";Object.defineProperty(xrr,Symbol.toStringTag,{value:"Module"});var HIo=bm(),YIo=coe();function QIo(e,t){return function(...r){return(YIo.isFunction(t)?t:HIo.identity).apply(this,[e,...r])}}xrr.wrap=QIo});var Zrr=H(Frr=>{"use strict";Object.defineProperty(Frr,Symbol.toStringTag,{value:"Module"});var _Rn=Q9(),yRn=qy();function XIo(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=yRn.toString(e),t=yRn.toString(t)):(e=_Rn.toNumber(e),t=_Rn.toNumber(t)),e+t)}Frr.add=XIo});var eut=H(Lrr=>{"use strict";Object.defineProperty(Lrr,Symbol.toStringTag,{value:"Module"});function JIo(e,t,r=0){if(t=Number(t),Object.is(t,-0)&&(t="-0"),r=Math.min(Number.parseInt(r,10),292),r){let[n,a=0]=t.toString().split("e"),o=Math[e](+`${n}e${Number(a)+r}`);Object.is(o,-0)&&(o="-0");let[l,A=0]=o.toString().split("e");return+`${l}e${Number(A)-r}`}return Math[e](Number(t))}Lrr.decimalAdjust=JIo});var Prr=H(Vrr=>{"use strict";Object.defineProperty(Vrr,Symbol.toStringTag,{value:"Module"});var UIo=eut();function KIo(e,t=0){return UIo.decimalAdjust("ceil",e,t)}Vrr.ceil=KIo});var Orr=H(Wrr=>{"use strict";Object.defineProperty(Wrr,Symbol.toStringTag,{value:"Module"});var bRn=Q9(),ERn=qy();function jIo(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=ERn.toString(e),t=ERn.toString(t)):(e=bRn.toNumber(e),t=bRn.toNumber(t)),e/t)}Wrr.divide=jIo});var Hrr=H(Mrr=>{"use strict";Object.defineProperty(Mrr,Symbol.toStringTag,{value:"Module"});var zIo=eut();function qIo(e,t=0){return zIo.decimalAdjust("floor",e,t)}Mrr.floor=qIo});var SRn=H(Yrr=>{"use strict";Object.defineProperty(Yrr,Symbol.toStringTag,{value:"Module"});function $Io(e,t,r){if(r==null&&(r=t,t=0),t>=r)throw new Error("The maximum value must be greater than the minimum value.");return t<=e&&e{"use strict";Object.defineProperty(Qrr,Symbol.toStringTag,{value:"Module"});var eho=SRn();function tho(e,t,r){return t||(t=0),r!=null&&!r&&(r=0),t!=null&&typeof t!="number"&&(t=Number(t)),r==null&&t===0||(r!=null&&typeof r!="number"&&(r=Number(r)),r!=null&&t>r&&([t,r]=[r,t]),t===r)?!1:eho.inRange(e,t,r)}Qrr.inRange=tho});var Urr=H(Jrr=>{"use strict";Object.defineProperty(Jrr,Symbol.toStringTag,{value:"Module"});function rho(e){if(!e||e.length===0)return;let t;for(let r=0;rt)&&(t=n)}return t}Jrr.max=rho});var vRn=H(Krr=>{"use strict";Object.defineProperty(Krr,Symbol.toStringTag,{value:"Module"});function nho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;an&&(n=l,r=o)}return r}Krr.maxBy=nho});var zrr=H(jrr=>{"use strict";Object.defineProperty(jrr,Symbol.toStringTag,{value:"Module"});var iho=vRn(),sho=bm(),oho=im();function aho(e,t){if(e!=null)return iho.maxBy(Array.from(e),oho.iteratee(t??sho.identity))}jrr.maxBy=aho});var tut=H(qrr=>{"use strict";Object.defineProperty(qrr,Symbol.toStringTag,{value:"Module"});var cho=im();function lho(e,t){if(!e||!e.length)return 0;t!=null&&(t=cho.iteratee(t));let r;for(let n=0;n{"use strict";Object.defineProperty($rr,Symbol.toStringTag,{value:"Module"});var uho=tut();function gho(e){return uho.sumBy(e)}$rr.sum=gho});var tnr=H(enr=>{"use strict";Object.defineProperty(enr,Symbol.toStringTag,{value:"Module"});var Aho=rut();function dho(e){let t=e?e.length:0;return t===0?NaN:Aho.sum(e)/t}enr.mean=dho});var BRn=H(rnr=>{"use strict";Object.defineProperty(rnr,Symbol.toStringTag,{value:"Module"});function pho(e,t){let r=0;for(let n=0;n{"use strict";Object.defineProperty(nnr,Symbol.toStringTag,{value:"Module"});var fho=BRn();function Iho(e,t){return fho.sumBy(e,r=>t(r))/e.length}nnr.meanBy=Iho});var snr=H(inr=>{"use strict";Object.defineProperty(inr,Symbol.toStringTag,{value:"Module"});var hho=bm(),mho=wRn(),Cho=im();function _ho(e,t){return e==null?NaN:mho.meanBy(Array.from(e),Cho.iteratee(t??hho.identity))}inr.meanBy=_ho});var anr=H(onr=>{"use strict";Object.defineProperty(onr,Symbol.toStringTag,{value:"Module"});function yho(e){if(!e||e.length===0)return;let t;for(let r=0;r{"use strict";Object.defineProperty(cnr,Symbol.toStringTag,{value:"Module"});function bho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;a{"use strict";Object.defineProperty(lnr,Symbol.toStringTag,{value:"Module"});var Eho=TRn(),Sho=bm(),vho=im();function Bho(e,t){if(e!=null)return Eho.minBy(Array.from(e),vho.iteratee(t??Sho.identity))}lnr.minBy=Bho});var Anr=H(gnr=>{"use strict";Object.defineProperty(gnr,Symbol.toStringTag,{value:"Module"});var RRn=Q9(),NRn=qy();function who(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=NRn.toString(e),t=NRn.toString(t)):(e=RRn.toNumber(e),t=RRn.toNumber(t)),e*t)}gnr.multiply=who});var pnr=H(dnr=>{"use strict";Object.defineProperty(dnr,Symbol.toStringTag,{value:"Module"});function Tho(e,t=0,r){return r&&(t=0),Number.parseInt(e,t)}dnr.parseInt=Tho});var Inr=H(fnr=>{"use strict";Object.defineProperty(fnr,Symbol.toStringTag,{value:"Module"});var DRn=Ofe(),Rho=V$t(),Nho=W$t();function Dho(...e){let t=0,r=1,n=!1;switch(e.length){case 1:{typeof e[0]=="boolean"?n=e[0]:r=e[0];break}case 2:typeof e[1]=="boolean"?(r=e[0],n=e[1]):(t=e[0],r=e[1]);case 3:typeof e[2]=="object"&&e[2]!=null&&e[2][e[1]]===e[0]?(t=0,r=e[0],n=!1):(t=e[0],r=e[1],n=e[2])}return typeof t!="number"&&(t=Number(t)),typeof r!="number"&&(t=Number(r)),t||(t=0),r||(r=0),t>r&&([t,r]=[r,t]),t=DRn.clamp(t,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),r=DRn.clamp(r,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),t===r?t:n?Rho.random(t,r+1):Nho.randomInt(t,r+1)}fnr.random=Dho});var Cnr=H(mnr=>{"use strict";Object.defineProperty(mnr,Symbol.toStringTag,{value:"Module"});var kho=qq(),hnr=MSe();function xho(e,t,r){r&&typeof r!="number"&&kho.isIterateeCall(e,t,r)&&(t=r=void 0),e=hnr.toFinite(e),t===void 0?(t=e,e=0):t=hnr.toFinite(t),r=r===void 0?e{"use strict";Object.defineProperty(ynr,Symbol.toStringTag,{value:"Module"});var Gho=qq(),_nr=MSe();function Fho(e,t,r){r&&typeof r!="number"&&Gho.isIterateeCall(e,t,r)&&(t=r=void 0),e=_nr.toFinite(e),t===void 0?(t=e,e=0):t=_nr.toFinite(t),r=r===void 0?e=0;o--)a[o]=e,e+=r;return a}ynr.rangeRight=Fho});var Snr=H(Enr=>{"use strict";Object.defineProperty(Enr,Symbol.toStringTag,{value:"Module"});var Zho=eut();function Lho(e,t=0){return Zho.decimalAdjust("round",e,t)}Enr.round=Lho});var Bnr=H(vnr=>{"use strict";Object.defineProperty(vnr,Symbol.toStringTag,{value:"Module"});var kRn=Q9(),xRn=qy();function Vho(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=xRn.toString(e),t=xRn.toString(t)):(e=kRn.toNumber(e),t=kRn.toNumber(t)),e-t)}vnr.subtract=Vho});var GRn=H(wnr=>{"use strict";Object.defineProperty(wnr,Symbol.toStringTag,{value:"Module"});function Pho(e){if(!e||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}wnr.isPlainObject=Pho});var Rnr=H(Tnr=>{"use strict";Object.defineProperty(Tnr,Symbol.toStringTag,{value:"Module"});var FRn=noe(),ZRn=GRn(),LRn=_3e(),VRn=Zfe(),hy=y3e(),Who=Sk();function Oho(e,t,r){return W3e(e,t,void 0,void 0,void 0,void 0,r)}function W3e(e,t,r,n,a,o,l){let A=l(e,t,r,n,a,o);if(A!==void 0)return A;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return O3e(e,t,o,l)}return O3e(e,t,o,l)}function O3e(e,t,r,n){if(Object.is(e,t))return!0;let a=VRn.getTag(e),o=VRn.getTag(t);if(a===hy.argumentsTag&&(a=hy.objectTag),o===hy.argumentsTag&&(o=hy.objectTag),a!==o)return!1;switch(a){case hy.stringTag:return e.toString()===t.toString();case hy.numberTag:{let f=e.valueOf(),I=t.valueOf();return Who.isEqualsSameValueZero(f,I)}case hy.booleanTag:case hy.dateTag:case hy.symbolTag:return Object.is(e.valueOf(),t.valueOf());case hy.regexpTag:return e.source===t.source&&e.flags===t.flags;case hy.functionTag:return e===t}r=r??new Map;let l=r.get(e),A=r.get(t);if(l!=null&&A!=null)return l===t;r.set(e,t),r.set(t,e);try{switch(a){case hy.mapTag:{if(e.size!==t.size)return!1;for(let[f,I]of e.entries())if(!t.has(f)||!W3e(I,t.get(f),f,e,t,r,n))return!1;return!0}case hy.setTag:{if(e.size!==t.size)return!1;let f=Array.from(e.values()),I=Array.from(t.values());for(let C=0;CW3e(b,N,void 0,e,t,r,n));if(E===-1)return!1;I.splice(E,1)}return!0}case hy.arrayTag:case hy.uint8ArrayTag:case hy.uint8ClampedArrayTag:case hy.uint16ArrayTag:case hy.uint32ArrayTag:case hy.bigUint64ArrayTag:case hy.int8ArrayTag:case hy.int16ArrayTag:case hy.int32ArrayTag:case hy.bigInt64ArrayTag:case hy.float32ArrayTag:case hy.float64ArrayTag:{if(FRn.isBuffer(e)!==FRn.isBuffer(t)||e.length!==t.length)return!1;for(let f=0;f{"use strict";Object.defineProperty(Nnr,Symbol.toStringTag,{value:"Module"});function Mho(){}Nnr.noop=Mho});var xnr=H(knr=>{"use strict";Object.defineProperty(knr,Symbol.toStringTag,{value:"Module"});var Hho=Rnr(),Yho=Dnr();function Qho(e,t){return Hho.isEqualWith(e,t,Yho.noop)}knr.isEqual=Qho});var Fnr=H(Gnr=>{"use strict";Object.defineProperty(Gnr,Symbol.toStringTag,{value:"Module"});function Xho(...e){}Gnr.noop=Xho});var nut=H(Znr=>{"use strict";Object.defineProperty(Znr,Symbol.toStringTag,{value:"Module"});function Jho(e){let t=e?.constructor,r=typeof t=="function"?t.prototype:Object.prototype;return e===r}Znr.isPrototype=Jho});var e$=H(Lnr=>{"use strict";Object.defineProperty(Lnr,Symbol.toStringTag,{value:"Module"});var Uho=Elt();function Kho(e){return Uho.isTypedArray(e)}Lnr.isTypedArray=Kho});var M3e=H(Vnr=>{"use strict";Object.defineProperty(Vnr,Symbol.toStringTag,{value:"Module"});var jho=$w();function zho(e,t){if(e=jho.toInteger(e),e<1||!Number.isSafeInteger(e))return[];let r=new Array(e);for(let n=0;n{"use strict";Object.defineProperty(Pnr,Symbol.toStringTag,{value:"Module"});var qho=noe(),$ho=nut(),emo=Sf(),tmo=e$(),rmo=M3e();function nmo(e){if(emo.isArrayLike(e))return imo(e);let t=Object.keys(Object(e));return $ho.isPrototype(e)?t.filter(r=>r!=="constructor"):t}function imo(e){let t=rmo.times(e.length,a=>`${a}`),r=new Set(t);qho.isBuffer(e)&&(r.add("offset"),r.add("parent")),tmo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=Object.keys(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}Pnr.keys=nmo});var Onr=H(Wnr=>{"use strict";Object.defineProperty(Wnr,Symbol.toStringTag,{value:"Module"});var smo=YK(),omo=Sk();function amo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(Mnr,Symbol.toStringTag,{value:"Module"});var lmo=noe(),umo=nut(),gmo=Sf(),Amo=e$(),dmo=M3e();function pmo(e){if(e==null)return[];switch(typeof e){case"object":case"function":return gmo.isArrayLike(e)?Imo(e):umo.isPrototype(e)?fmo(e):iut(e);default:return iut(Object(e))}}function iut(e){let t=[];for(let r in e)t.push(r);return t}function fmo(e){return iut(e).filter(r=>r!=="constructor")}function Imo(e){let t=dmo.times(e.length,a=>`${a}`),r=new Set(t);lmo.isBuffer(e)&&(r.add("offset"),r.add("parent")),Amo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=iut(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}Mnr.keysIn=pmo});var Ynr=H(Hnr=>{"use strict";Object.defineProperty(Hnr,Symbol.toStringTag,{value:"Module"});var hmo=iX(),mmo=Sk();function Cmo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(Qnr,Symbol.toStringTag,{value:"Module"});var ymo=iX(),bmo=Sk();function Emo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(Jnr,Symbol.toStringTag,{value:"Module"});var vmo=YK(),Bmo=Sk();function wmo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(jnr,Symbol.toStringTag,{value:"Module"});var Rmo=PSe(),PRn=Zfe(),KC=y3e(),Nmo=$q(),Dmo=e$();function kmo(e){if(Rmo.isPrimitive(e))return e;let t=PRn.getTag(e);if(!xmo(e))return{};if(Nmo.isArray(e)){let n=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(n.index=e.index,n.input=e.input),n}if(Dmo.isTypedArray(e)){let n=e,a=n.constructor;return new a(n.buffer,n.byteOffset,n.length)}if(t===KC.arrayBufferTag)return new ArrayBuffer(e.byteLength);if(t===KC.dataViewTag){let n=e,a=n.buffer,o=n.byteOffset,l=n.byteLength,A=new ArrayBuffer(l),f=new Uint8Array(a,o,l);return new Uint8Array(A).set(f),new DataView(A)}if(t===KC.booleanTag||t===KC.numberTag||t===KC.stringTag){let n=e.constructor,a=new n(e.valueOf());return t===KC.stringTag?Fmo(a,e):Knr(a,e),a}if(t===KC.dateTag)return new Date(Number(e));if(t===KC.regexpTag){let n=e,a=new RegExp(n.source,n.flags);return a.lastIndex=n.lastIndex,a}if(t===KC.symbolTag)return Object(Symbol.prototype.valueOf.call(e));if(t===KC.mapTag){let n=e,a=new Map;return n.forEach((o,l)=>{a.set(l,o)}),a}if(t===KC.setTag){let n=e,a=new Set;return n.forEach(o=>{a.add(o)}),a}if(t===KC.argumentsTag){let n=e,a={};return Knr(a,n),a.length=n.length,a[Symbol.iterator]=n[Symbol.iterator],a}let r={};return Zmo(r,e),Knr(r,e),Gmo(r,e),r}function xmo(e){switch(PRn.getTag(e)){case KC.argumentsTag:case KC.arrayTag:case KC.arrayBufferTag:case KC.dataViewTag:case KC.booleanTag:case KC.dateTag:case KC.float32ArrayTag:case KC.float64ArrayTag:case KC.int8ArrayTag:case KC.int16ArrayTag:case KC.int32ArrayTag:case KC.mapTag:case KC.numberTag:case KC.objectTag:case KC.regexpTag:case KC.setTag:case KC.stringTag:case KC.symbolTag:case KC.uint8ArrayTag:case KC.uint8ClampedArrayTag:case KC.uint16ArrayTag:case KC.uint32ArrayTag:return!0;default:return!1}}function Knr(e,t){for(let r in t)Object.hasOwn(t,r)&&(e[r]=t[r])}function Gmo(e,t){let r=Object.getOwnPropertySymbols(t);for(let n=0;n=r)&&(e[n]=t[n])}function Zmo(e,t){let r=Object.getPrototypeOf(t);r!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,r)}jnr.clone=kmo});var qnr=H(znr=>{"use strict";Object.defineProperty(znr,Symbol.toStringTag,{value:"Module"});var WRn=sut();function Lmo(e,t){if(!t)return WRn.clone(e);let r=t(e);return r!==void 0?r:WRn.clone(e)}znr.cloneWith=Lmo});var eir=H($nr=>{"use strict";Object.defineProperty($nr,Symbol.toStringTag,{value:"Module"});var Vmo=YK(),Pmo=Ult(),Wmo=tM();function Omo(e,t){let r=Wmo.isObject(e)?Object.create(e):{};if(t!=null){let n=Vmo.keys(t);for(let a=0;a{"use strict";Object.defineProperty(tir,Symbol.toStringTag,{value:"Module"});var Mmo=aoe(),Hmo=qq(),Ymo=Sk();function Qmo(e,...t){e=Object(e);let r=Object.prototype,n=t.length,a=n>2?t[2]:void 0;a&&Hmo.isIterateeCall(t[0],t[1],a)&&(n=1);for(let o=0;o{"use strict";Object.defineProperty(rir,Symbol.toStringTag,{value:"Module"});function Xmo(e){if(typeof e!="object"||e==null)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!=="[object Object]"){let r=e[Symbol.toStringTag];return r==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${r}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}rir.isPlainObject=Xmo});var iir=H(nir=>{"use strict";Object.defineProperty(nir,Symbol.toStringTag,{value:"Module"});var Y3e=Mfe();function Jmo(e,...t){e=Object(e);for(let r=0;r{"use strict";Object.defineProperty(sir,Symbol.toStringTag,{value:"Module"});function zmo(e,t){return Object.keys(e).find(n=>t(e[n],n,e))}sir.findKey=zmo});var air=H(oir=>{"use strict";Object.defineProperty(oir,Symbol.toStringTag,{value:"Module"});var qmo=ORn(),$mo=HK(),eCo=tM(),tCo=im();function rCo(e,t){if(!eCo.isObject(e))return;let r=tCo.iteratee(t??$mo.identity);return qmo.findKey(e,r)}oir.findKey=rCo});var lir=H(cir=>{"use strict";Object.defineProperty(cir,Symbol.toStringTag,{value:"Module"});var nCo=HK(),iCo=tM(),sCo=im();function oCo(e,t){if(!iCo.isObject(e))return;let r=sCo.iteratee(t??nCo.identity);return Object.keys(e).findLast(a=>r(e[a],a,e))}cir.findLastKey=oCo});var gir=H(uir=>{"use strict";Object.defineProperty(uir,Symbol.toStringTag,{value:"Module"});var aCo=bm();function cCo(e,t=aCo.identity){if(e==null)return e;for(let r in e)if(t(e[r],r,e)===!1)break;return e}uir.forIn=cCo});var dir=H(Air=>{"use strict";Object.defineProperty(Air,Symbol.toStringTag,{value:"Module"});var lCo=bm();function uCo(e,t=lCo.identity){if(e==null)return e;let r=[];for(let n in e)r.push(n);for(let n=r.length-1;n>=0;n--){let a=r[n];if(t(e[a],a,e)===!1)break}return e}Air.forInRight=uCo});var fir=H(pir=>{"use strict";Object.defineProperty(pir,Symbol.toStringTag,{value:"Module"});var gCo=YK(),ACo=bm();function dCo(e,t=ACo.identity){if(e==null)return e;let r=Object(e),n=gCo.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Iir,Symbol.toStringTag,{value:"Module"});var pCo=YK(),fCo=bm();function ICo(e,t=fCo.identity){if(e==null)return e;let r=Object(e),n=pCo.keys(e);for(let a=n.length-1;a>=0;--a){let o=n[a];if(t(r[o],o,r)===!1)break}return e}Iir.forOwnRight=ICo});var Cir=H(mir=>{"use strict";Object.defineProperty(mir,Symbol.toStringTag,{value:"Module"});var hCo=Sf();function mCo(e){if(!hCo.isArrayLike(e))return{};let t={};for(let r=0;r{"use strict";Object.defineProperty(_ir,Symbol.toStringTag,{value:"Module"});var CCo=YK();function _Co(e){return e==null?[]:CCo.keys(e).filter(t=>typeof e[t]=="function")}_ir.functions=_Co});var Eir=H(bir=>{"use strict";Object.defineProperty(bir,Symbol.toStringTag,{value:"Module"});var yCo=coe();function bCo(e){if(e==null)return[];let t=[];for(let r in e)yCo.isFunction(e[r])&&t.push(r);return t}bir.functionsIn=bCo});var vir=H(Sir=>{"use strict";Object.defineProperty(Sir,Symbol.toStringTag,{value:"Module"});var ECo=VSe(),SCo=OSe(),vCo=Vfe(),BCo=$5();function wCo(e,t){if(e==null)return!1;let r;if(Array.isArray(t)?r=t:typeof t=="string"&&ECo.isDeepKey(t)&&e[t]==null?r=BCo.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Bir,Symbol.toStringTag,{value:"Module"});function TCo(e){let t={},r=Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(wir,Symbol.toStringTag,{value:"Module"});var RCo=MRn();function NCo(e){return RCo.invert(e)}wir.invert=NCo});var Nir=H(Rir=>{"use strict";Object.defineProperty(Rir,Symbol.toStringTag,{value:"Module"});var DCo=bm(),kCo=aoe(),xCo=im();function GCo(e,t){let r={};if(kCo.isNil(e))return r;t==null&&(t=DCo.identity);let n=Object.keys(e),a=xCo.iteratee(t);for(let o=0;o{"use strict";Object.defineProperty(Dir,Symbol.toStringTag,{value:"Module"});function FCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(kir,Symbol.toStringTag,{value:"Module"});var ZCo=bm(),LCo=HRn(),VCo=im();function PCo(e,t=ZCo.identity){return e==null?{}:LCo.mapKeys(e,VCo.iteratee(t))}kir.mapKeys=PCo});var YRn=H(Gir=>{"use strict";Object.defineProperty(Gir,Symbol.toStringTag,{value:"Module"});function WCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Fir,Symbol.toStringTag,{value:"Module"});var OCo=bm(),MCo=YRn(),HCo=im();function YCo(e,t=OCo.identity){return e==null?{}:MCo.mapValues(e,HCo.iteratee(t))}Fir.mapValues=YCo});var QRn=H(Lir=>{"use strict";Object.defineProperty(Lir,Symbol.toStringTag,{value:"Module"});var QCo=PSe(),XCo=Elt();function JCo(e){if(QCo.isPrimitive(e))return e;if(Array.isArray(e)||XCo.isTypedArray(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){let n=new r(e);return n.lastIndex=e.lastIndex,n}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let n;return e instanceof AggregateError?n=new r(e.errors,e.message,{cause:e.cause}):n=new r(e.message,{cause:e.cause}),n.stack=e.stack,Object.assign(n,e),n}if(typeof File<"u"&&e instanceof File)return new r([e],e.name,{type:e.type,lastModified:e.lastModified});if(typeof e=="object"){let n=Object.create(t);return Object.assign(n,e)}return e}Lir.clone=JCo});var cut=H(Wir=>{"use strict";Object.defineProperty(Wir,Symbol.toStringTag,{value:"Module"});var XRn=WSe(),UCo=m3e(),KCo=QRn(),jCo=noe(),zCo=PSe(),qCo=_3e(),JRn=Vfe(),$Co=b2(),URn=ioe(),Vir=Mfe(),Pir=e$();function e_o(e,...t){let r=t.slice(0,-1),n=t[t.length-1],a=e;for(let o=0;o{"use strict";Object.defineProperty(Oir,Symbol.toStringTag,{value:"Module"});var t_o=cut(),r_o=Dnr();function n_o(e,...t){return t_o.mergeWith(e,...t,r_o.noop)}Oir.merge=n_o});var lut=H(Hir=>{"use strict";Object.defineProperty(Hir,Symbol.toStringTag,{value:"Module"});var i_o=_3e();function s_o(e){let t=[];for(;e;)t.push(...i_o.getSymbols(e)),e=Object.getPrototypeOf(e);return t}Hir.getSymbolsIn=s_o});var Qir=H(Yir=>{"use strict";Object.defineProperty(Yir,Symbol.toStringTag,{value:"Module"});var o_o=S3e(),jRn=iX(),KRn=x3e(),zRn=lut(),a_o=VSe(),c_o=Pfe(),l_o=Mfe();function u_o(e,...t){if(e==null)return{};t=c_o.flatten(t);let r=g_o(e,t);for(let n=0;nArray.isArray(n)||a_o.isDeepKey(n))?d_o(e):A_o(e)}function A_o(e){let t={},r=[...jRn.keysIn(e),...zRn.getSymbolsIn(e)];for(let n=0;n{if(!l_o.isPlainObject(o))return o})}return t}Yir.omit=u_o});var Jir=H(Xir=>{"use strict";Object.defineProperty(Xir,Symbol.toStringTag,{value:"Module"});var p_o=iX(),f_o=ooe(),I_o=lut(),h_o=HK(),m_o=Sf(),C_o=soe(),__o=im();function y_o(e,t){if(e==null)return{};let r={},n=__o.iteratee(t??h_o.identity),a=m_o.isArrayLike(e)?f_o.range(0,e.length):[...p_o.keysIn(e),...I_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(Uir,Symbol.toStringTag,{value:"Module"});var b_o=eM(),E_o=v3e(),S_o=V3e(),v_o=Sf(),B_o=QSe();function w_o(e,...t){if(B_o.isNil(e))return{};let r={};for(let n=0;n{"use strict";Object.defineProperty(jir,Symbol.toStringTag,{value:"Module"});var T_o=iX(),R_o=ooe(),N_o=lut(),D_o=HK(),k_o=Sf(),x_o=soe(),G_o=im();function F_o(e,t){if(e==null)return{};let r=G_o.iteratee(t??D_o.identity),n={},a=k_o.isArrayLike(e)?R_o.range(0,e.length):[...T_o.keysIn(e),...N_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(qir,Symbol.toStringTag,{value:"Module"});var Z_o=eM();function L_o(e){return function(t){return Z_o.get(e,t)}}qir.propertyOf=L_o});var tsr=H(esr=>{"use strict";Object.defineProperty(esr,Symbol.toStringTag,{value:"Module"});var V_o=k3e(),P_o=Kq(),W_o=$5(),O_o=qy();function M_o(e,t,r){V_o.isKey(t,e)?t=[t]:Array.isArray(t)||(t=W_o.toPath(O_o.toString(t)));let n=Math.max(t.length,1);for(let a=0;a{"use strict";Object.defineProperty(rsr,Symbol.toStringTag,{value:"Module"});var H_o=XSe();function Y_o(e,t,r,n){let a;return typeof n=="function"?a=n:a=()=>{},H_o.updateWith(e,t,()=>r,a)}rsr.setWith=Y_o});var ssr=H(isr=>{"use strict";Object.defineProperty(isr,Symbol.toStringTag,{value:"Module"});var Q_o=WSe(),X_o=H3e();function J_o(e,...t){let r=Q_o.cloneDeep(e);return X_o.defaults(r,...t)}isr.toDefaulted=J_o});var asr=H(osr=>{"use strict";Object.defineProperty(osr,Symbol.toStringTag,{value:"Module"});function U_o(e){let t=new Array(e.size),r=e.keys(),n=e.values();for(let a=0;a{"use strict";Object.defineProperty(csr,Symbol.toStringTag,{value:"Module"});function K_o(e){let t=new Array(e.size),r=e.values();for(let n=0;n{"use strict";Object.defineProperty(usr,Symbol.toStringTag,{value:"Module"});var j_o=YK(),z_o=asr(),q_o=lsr();function $_o(e){if(e==null)return[];if(e instanceof Set)return q_o.setToEntries(e);if(e instanceof Map)return z_o.mapToEntries(e);let t=j_o.keys(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Asr,Symbol.toStringTag,{value:"Module"});var e0o=iX(),t0o=asr(),r0o=lsr();function n0o(e){if(e==null)return[];if(e instanceof Set)return r0o.setToEntries(e);if(e instanceof Map)return t0o.mapToEntries(e);let t=e0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(psr,Symbol.toStringTag,{value:"Module"});var i0o=noe();function s0o(e){return i0o.isBuffer(e)}psr.isBuffer=s0o});var Isr=H(fsr=>{"use strict";Object.defineProperty(fsr,Symbol.toStringTag,{value:"Module"});var o0o=bm(),a0o=coe(),c0o=Rlt(),l0o=uut(),u0o=tM(),g0o=e$(),A0o=im();function d0o(e,t=o0o.identity,r){let n=Array.isArray(e)||l0o.isBuffer(e)||g0o.isTypedArray(e);return t=A0o.iteratee(t),r==null&&(n?r=[]:u0o.isObject(e)&&a0o.isFunction(e.constructor)?r=Object.create(Object.getPrototypeOf(e)):r={}),e==null||c0o.forEach(e,(a,o,l)=>t(r,a,o,l)),r}fsr.transform=d0o});var msr=H(hsr=>{"use strict";Object.defineProperty(hsr,Symbol.toStringTag,{value:"Module"});var p0o=XSe();function f0o(e,t,r){return p0o.updateWith(e,t,r,()=>{})}hsr.update=f0o});var _sr=H(Csr=>{"use strict";Object.defineProperty(Csr,Symbol.toStringTag,{value:"Module"});var I0o=iX();function h0o(e){let t=I0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(ysr,Symbol.toStringTag,{value:"Module"});function m0o(e){return typeof e=="function"}ysr.isFunction=m0o});var Ssr=H(Esr=>{"use strict";Object.defineProperty(Esr,Symbol.toStringTag,{value:"Module"});function C0o(e){return Number.isSafeInteger(e)&&e>=0}Esr.isLength=C0o});var Bsr=H(vsr=>{"use strict";Object.defineProperty(vsr,Symbol.toStringTag,{value:"Module"});var qRn=Function.prototype.toString,_0o=/[\\^$.*+?()[\]{}|]/g,y0o=RegExp(`^${qRn.call(Object.prototype.hasOwnProperty).replace(_0o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")}$`);function b0o(e){if(typeof e!="function")return!1;if(globalThis?.["__core-js_shared__"]!=null)throw new Error("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return y0o.test(qRn.call(e))}vsr.isNative=b0o});var Tsr=H(wsr=>{"use strict";Object.defineProperty(wsr,Symbol.toStringTag,{value:"Module"});function E0o(e){return e===null}wsr.isNull=E0o});var Nsr=H(Rsr=>{"use strict";Object.defineProperty(Rsr,Symbol.toStringTag,{value:"Module"});var S0o=uer();function v0o(e){return S0o.isUndefined(e)}Rsr.isUndefined=v0o});var gut=H(Dsr=>{"use strict";Object.defineProperty(Dsr,Symbol.toStringTag,{value:"Module"});function B0o(e,t){if(t==null)return!0;if(e==null)return Object.keys(t).length===0;let r=Object.keys(t);for(let n=0;n{"use strict";Object.defineProperty(ksr,Symbol.toStringTag,{value:"Module"});var w0o=gut(),T0o=izt();function R0o(e){return e=T0o.cloneDeep(e),function(t){return w0o.conformsTo(t,e)}}ksr.conforms=R0o});var $Rn=H(Gsr=>{"use strict";Object.defineProperty(Gsr,Symbol.toStringTag,{value:"Module"});function N0o(e){return e instanceof ArrayBuffer}Gsr.isArrayBuffer=N0o});var Zsr=H(Fsr=>{"use strict";Object.defineProperty(Fsr,Symbol.toStringTag,{value:"Module"});var D0o=$Rn();function k0o(e){return D0o.isArrayBuffer(e)}Fsr.isArrayBuffer=k0o});var Vsr=H(Lsr=>{"use strict";Object.defineProperty(Lsr,Symbol.toStringTag,{value:"Module"});function x0o(e){return typeof e=="boolean"||e instanceof Boolean}Lsr.isBoolean=x0o});var eNn=H(Psr=>{"use strict";Object.defineProperty(Psr,Symbol.toStringTag,{value:"Module"});function G0o(e){return e instanceof Date}Psr.isDate=G0o});var Osr=H(Wsr=>{"use strict";Object.defineProperty(Wsr,Symbol.toStringTag,{value:"Module"});var F0o=eNn();function Z0o(e){return F0o.isDate(e)}Wsr.isDate=Z0o});var Hsr=H(Msr=>{"use strict";Object.defineProperty(Msr,Symbol.toStringTag,{value:"Module"});var L0o=ioe(),V0o=Mfe();function P0o(e){return L0o.isObjectLike(e)&&e.nodeType===1&&!V0o.isPlainObject(e)}Msr.isElement=P0o});var Qsr=H(Ysr=>{"use strict";Object.defineProperty(Ysr,Symbol.toStringTag,{value:"Module"});var W0o=Vfe(),O0o=Sf(),M0o=e$(),H0o=noe(),Y0o=nut();function Q0o(e){if(e==null)return!0;if(O0o.isArrayLike(e))return typeof e.splice!="function"&&typeof e!="string"&&!H0o.isBuffer(e)&&!M0o.isTypedArray(e)&&!W0o.isArguments(e)?!1:e.length===0;if(typeof e=="object"){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return Y0o.isPrototype(e)?t.filter(r=>r!=="constructor").length===0:t.length===0}return!0}Ysr.isEmpty=Q0o});var tNn=H(Xsr=>{"use strict";Object.defineProperty(Xsr,Symbol.toStringTag,{value:"Module"});function X0o(e,t){if(!Number.isInteger(e)||e<0)throw new Error("n must be a non-negative integer.");let r=0;return(...n)=>{if(++r>=e)return t(...n)}}Xsr.after=X0o});var Ksr=H(Usr=>{"use strict";Object.defineProperty(Usr,Symbol.toStringTag,{value:"Module"});var rNn=tNn(),J0o=Rnr();function Jsr(e,t,r){return typeof r!="function"&&(r=()=>{}),J0o.isEqualWith(e,t,(...n)=>{let a=r(...n);if(a!==void 0)return!!a;if(e instanceof Map&&t instanceof Map||e instanceof Set&&t instanceof Set)return Jsr(Array.from(e),Array.from(t),rNn.after(2,r))})}Usr.isEqualWith=Jsr});var zsr=H(jsr=>{"use strict";Object.defineProperty(jsr,Symbol.toStringTag,{value:"Module"});var U0o=Zfe();function K0o(e){return U0o.getTag(e)==="[object Error]"}jsr.isError=K0o});var $sr=H(qsr=>{"use strict";Object.defineProperty(qsr,Symbol.toStringTag,{value:"Module"});function j0o(e){return Number.isFinite(e)}qsr.isFinite=j0o});var tor=H(eor=>{"use strict";Object.defineProperty(eor,Symbol.toStringTag,{value:"Module"});function z0o(e){return Number.isInteger(e)}eor.isInteger=z0o});var nNn=H(ror=>{"use strict";Object.defineProperty(ror,Symbol.toStringTag,{value:"Module"});function q0o(e){return e instanceof RegExp}ror.isRegExp=q0o});var ior=H(nor=>{"use strict";Object.defineProperty(nor,Symbol.toStringTag,{value:"Module"});var $0o=nNn();function eyo(e){return $0o.isRegExp(e)}nor.isRegExp=eyo});var oor=H(sor=>{"use strict";Object.defineProperty(sor,Symbol.toStringTag,{value:"Module"});function tyo(e){return Number.isSafeInteger(e)}sor.isSafeInteger=tyo});var iNn=H(aor=>{"use strict";Object.defineProperty(aor,Symbol.toStringTag,{value:"Module"});function ryo(e){return e instanceof Set}aor.isSet=ryo});var lor=H(cor=>{"use strict";Object.defineProperty(cor,Symbol.toStringTag,{value:"Module"});var nyo=iNn();function iyo(e){return nyo.isSet(e)}cor.isSet=iyo});var sNn=H(uor=>{"use strict";Object.defineProperty(uor,Symbol.toStringTag,{value:"Module"});function syo(e){return e instanceof WeakMap}uor.isWeakMap=syo});var Aor=H(gor=>{"use strict";Object.defineProperty(gor,Symbol.toStringTag,{value:"Module"});var oyo=sNn();function ayo(e){return oyo.isWeakMap(e)}gor.isWeakMap=ayo});var oNn=H(dor=>{"use strict";Object.defineProperty(dor,Symbol.toStringTag,{value:"Module"});function cyo(e){return e instanceof WeakSet}dor.isWeakSet=cyo});var Ior=H(por=>{"use strict";Object.defineProperty(por,Symbol.toStringTag,{value:"Module"});var lyo=oNn();function uyo(e){return lyo.isWeakSet(e)}por.isWeakSet=uyo});var mor=H(hor=>{"use strict";Object.defineProperty(hor,Symbol.toStringTag,{value:"Module"});function gyo(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}hor.capitalize=gyo});var _or=H(Cor=>{"use strict";Object.defineProperty(Cor,Symbol.toStringTag,{value:"Module"});var Ayo=mor(),dyo=qy();function pyo(e){return Ayo.capitalize(dyo.toString(e))}Cor.capitalize=pyo});var bor=H(yor=>{"use strict";Object.defineProperty(yor,Symbol.toStringTag,{value:"Module"});var fyo=coe(),aNn=$q(),Iyo=tM(),hyo=qy();function myo(e,...t){if(e==null||!Iyo.isObject(e)||aNn.isArray(e)&&t.length===0)return e;let r=[];for(let n=0;n{"use strict";Object.defineProperty(Eor,Symbol.toStringTag,{value:"Module"});var Cyo=new Map([["\xC6","Ae"],["\xD0","D"],["\xD8","O"],["\xDE","Th"],["\xDF","ss"],["\xE6","ae"],["\xF0","d"],["\xF8","o"],["\xFE","th"],["\u0110","D"],["\u0111","d"],["\u0126","H"],["\u0127","h"],["\u0131","i"],["\u0132","IJ"],["\u0133","ij"],["\u0138","k"],["\u013F","L"],["\u0140","l"],["\u0141","L"],["\u0142","l"],["\u0149","'n"],["\u014A","N"],["\u014B","n"],["\u0152","Oe"],["\u0153","oe"],["\u0166","T"],["\u0167","t"],["\u017F","s"]]);function _yo(e){e=e.normalize("NFD");let t="";for(let r=0;r="\u0300"&&n<="\u036F"||n>="\uFE20"&&n<="\uFE23"||(t+=Cyo.get(n)??n)}return t}Eor.deburr=_yo});var t$=H(Sor=>{"use strict";Object.defineProperty(Sor,Symbol.toStringTag,{value:"Module"});var yyo=cNn(),byo=qy();function Eyo(e){return yyo.deburr(byo.toString(e))}Sor.deburr=Eyo});var Hfe=H(Aut=>{"use strict";Object.defineProperty(Aut,Symbol.toStringTag,{value:"Module"});var lNn=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function Syo(e){return Array.from(e.match(lNn)??[])}Aut.CASE_SPLIT_PATTERN=lNn;Aut.words=Syo});var uNn=H(vor=>{"use strict";Object.defineProperty(vor,Symbol.toStringTag,{value:"Module"});var vyo=mor(),Byo=Hfe();function wyo(e){let t=Byo.words(e);if(t.length===0)return"";let[r,...n]=t;return`${r.toLowerCase()}${n.map(a=>vyo.capitalize(a)).join("")}`}vor.camelCase=wyo});var Yfe=H(Bor=>{"use strict";Object.defineProperty(Bor,Symbol.toStringTag,{value:"Module"});var Tyo=qy();function Ryo(e){return typeof e!="string"&&(e=Tyo.toString(e)),e.replace(/['\u2019]/g,"")}Bor.normalizeForCase=Ryo});var Tor=H(wor=>{"use strict";Object.defineProperty(wor,Symbol.toStringTag,{value:"Module"});var Nyo=t$(),Dyo=uNn(),kyo=Yfe();function xyo(e){return Dyo.camelCase(kyo.normalizeForCase(Nyo.deburr(e)))}wor.camelCase=xyo});var Nor=H(Ror=>{"use strict";Object.defineProperty(Ror,Symbol.toStringTag,{value:"Module"});function Gyo(e,t,r){return e==null||t==null?!1:(r==null&&(r=e.length),e.endsWith(t,r))}Ror.endsWith=Gyo});var gNn=H(Dor=>{"use strict";Object.defineProperty(Dor,Symbol.toStringTag,{value:"Module"});var Fyo={"&":"&","<":"<",">":">",'"':""","'":"'"};function Zyo(e){return e.replace(/[&<>"']/g,t=>Fyo[t])}Dor.escape=Zyo});var dut=H(kor=>{"use strict";Object.defineProperty(kor,Symbol.toStringTag,{value:"Module"});var Lyo=gNn(),Vyo=qy();function Pyo(e){return Lyo.escape(Vyo.toString(e))}kor.escape=Pyo});var ANn=H(xor=>{"use strict";Object.defineProperty(xor,Symbol.toStringTag,{value:"Module"});function Wyo(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}xor.escapeRegExp=Wyo});var For=H(Gor=>{"use strict";Object.defineProperty(Gor,Symbol.toStringTag,{value:"Module"});var Oyo=ANn(),Myo=qy();function Hyo(e){return Oyo.escapeRegExp(Myo.toString(e))}Gor.escapeRegExp=Hyo});var dNn=H(Zor=>{"use strict";Object.defineProperty(Zor,Symbol.toStringTag,{value:"Module"});var Yyo=Hfe();function Qyo(e){return Yyo.words(e).map(r=>r.toLowerCase()).join("-")}Zor.kebabCase=Qyo});var Vor=H(Lor=>{"use strict";Object.defineProperty(Lor,Symbol.toStringTag,{value:"Module"});var Xyo=t$(),Jyo=dNn(),Uyo=Yfe();function Kyo(e){return Jyo.kebabCase(Uyo.normalizeForCase(Xyo.deburr(e)))}Lor.kebabCase=Kyo});var pNn=H(Por=>{"use strict";Object.defineProperty(Por,Symbol.toStringTag,{value:"Module"});var jyo=Hfe();function zyo(e){return jyo.words(e).map(r=>r.toLowerCase()).join(" ")}Por.lowerCase=zyo});var Oor=H(Wor=>{"use strict";Object.defineProperty(Wor,Symbol.toStringTag,{value:"Module"});var qyo=t$(),$yo=pNn(),ebo=Yfe();function tbo(e){return $yo.lowerCase(ebo.normalizeForCase(qyo.deburr(e)))}Wor.lowerCase=tbo});var fNn=H(Mor=>{"use strict";Object.defineProperty(Mor,Symbol.toStringTag,{value:"Module"});function rbo(e){return e.substring(0,1).toLowerCase()+e.substring(1)}Mor.lowerFirst=rbo});var Yor=H(Hor=>{"use strict";Object.defineProperty(Hor,Symbol.toStringTag,{value:"Module"});var nbo=fNn(),ibo=qy();function sbo(e){return nbo.lowerFirst(ibo.toString(e))}Hor.lowerFirst=sbo});var INn=H(Qor=>{"use strict";Object.defineProperty(Qor,Symbol.toStringTag,{value:"Module"});function obo(e,t,r=" "){return e.padStart(Math.floor((t-e.length)/2)+e.length,r).padEnd(t,r)}Qor.pad=obo});var Jor=H(Xor=>{"use strict";Object.defineProperty(Xor,Symbol.toStringTag,{value:"Module"});var abo=INn(),cbo=qy();function lbo(e,t,r){return abo.pad(cbo.toString(e),t,r)}Xor.pad=lbo});var Kor=H(Uor=>{"use strict";Object.defineProperty(Uor,Symbol.toStringTag,{value:"Module"});var ubo=qy();function gbo(e,t=0,r=" "){return ubo.toString(e).padEnd(t,r)}Uor.padEnd=gbo});var zor=H(jor=>{"use strict";Object.defineProperty(jor,Symbol.toStringTag,{value:"Module"});var Abo=qy();function dbo(e,t=0,r=" "){return Abo.toString(e).padStart(t,r)}jor.padStart=dbo});var $or=H(qor=>{"use strict";Object.defineProperty(qor,Symbol.toStringTag,{value:"Module"});var pbo=Number.MAX_SAFE_INTEGER;qor.MAX_SAFE_INTEGER=pbo});var tar=H(ear=>{"use strict";Object.defineProperty(ear,Symbol.toStringTag,{value:"Module"});var fbo=qq(),Ibo=$or(),hbo=$w(),mbo=qy();function Cbo(e,t,r){return(r?fbo.isIterateeCall(e,t,r):t===void 0)?t=1:t=hbo.toInteger(t),t<1||t>Ibo.MAX_SAFE_INTEGER?"":mbo.toString(e).repeat(t)}ear.repeat=Cbo});var nar=H(rar=>{"use strict";Object.defineProperty(rar,Symbol.toStringTag,{value:"Module"});var hNn=qy();function _bo(e,t,r){return arguments.length<3?hNn.toString(e):hNn.toString(e).replace(t,r)}rar.replace=_bo});var mNn=H(iar=>{"use strict";Object.defineProperty(iar,Symbol.toStringTag,{value:"Module"});var ybo=Hfe();function bbo(e){return ybo.words(e).map(r=>r.toLowerCase()).join("_")}iar.snakeCase=bbo});var oar=H(sar=>{"use strict";Object.defineProperty(sar,Symbol.toStringTag,{value:"Module"});var Ebo=t$(),Sbo=mNn(),vbo=Yfe();function Bbo(e){return Sbo.snakeCase(vbo.normalizeForCase(Ebo.deburr(e)))}sar.snakeCase=Bbo});var car=H(aar=>{"use strict";Object.defineProperty(aar,Symbol.toStringTag,{value:"Module"});var wbo=qy();function Tbo(e,t,r){return wbo.toString(e).split(t,r)}aar.split=Tbo});var uar=H(lar=>{"use strict";Object.defineProperty(lar,Symbol.toStringTag,{value:"Module"});var Rbo=t$(),Nbo=Hfe(),Dbo=Yfe();function kbo(e){let t=Nbo.words(Dbo.normalizeForCase(Rbo.deburr(e)).trim()),r="";for(let n=0;n{"use strict";Object.defineProperty(gar,Symbol.toStringTag,{value:"Module"});function xbo(e,t,r){return e==null||t==null?!1:(r==null&&(r=0),e.startsWith(t,r))}gar.startsWith=xbo});var dar=H(Iut=>{"use strict";Object.defineProperty(Iut,Symbol.toStringTag,{value:"Module"});var Gbo=dut(),Fbo=jlt(),CNn=H3e(),Zbo=qy(),Lbo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Vbo=/['\n\r\u2028\u2029\\]/g,put=/($^)/,Pbo=new Map([["\\","\\"],["'","'"],[` -`,"n"],["\r","r"],["\u2028","u2028"],["\u2029","u2029"]]);function Wbo(e){return`\\${Pbo.get(e)}`}var _Nn=/<%=([\s\S]+?)%>/g,fut={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:_Nn,variable:"",imports:{_:{escape:Gbo.escape,template:yNn}}};function yNn(e,t,r){e=Zbo.toString(e),r&&(t=fut),t=CNn.defaults({...t},fut);let n=new RegExp([t.escape?.source??put.source,t.interpolate?.source??put.source,t.interpolate===_Nn?Lbo.source:put.source,t.evaluate?.source??put.source,"$"].join("|"),"g"),a=0,o=!1,l="__p += ''";for(let N of e.matchAll(n)){let[B,F,Q,X,ae]=N,{index:ne}=N;l+=` + '${e.slice(a,ne).replace(Vbo,Wbo)}'`,F&&(l+=` + _.escape(${F})`),Q?l+=` + ((${Q}) == null ? '' : ${Q})`:X&&(l+=` + ((${X}) == null ? '' : ${X})`),ae&&(l+=`; +`,a)}while(n!==-1);return o+=e.substr(a),o};VBn.exports={stringReplaceAll:mio,stringEncaseCRLFWithFirstIndex:Cio}});var YBn=H((wHl,HBn)=>{"use strict";var _io=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,WBn=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,yio=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,bio=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,Eio=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function MBn(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):Eio.get(e)||e}function Sio(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n){let l=Number(o);if(!Number.isNaN(l))r.push(l);else if(a=o.match(yio))r.push(a[2].replace(bio,(A,f,I)=>f?MBn(f):I));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function vio(e){WBn.lastIndex=0;let t=[],r;for(;(r=WBn.exec(e))!==null;){let n=r[1];if(r[2]){let a=Sio(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function OBn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);n=o.length>0?n[a](...o):n[a]}return n}HBn.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(_io,(o,l,A,f,I,C)=>{if(l)a.push(MBn(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:OBn(e,r)(b)),r.push({inverse:A,styles:vio(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(OBn(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var VK=H((THl,jBn)=>{"use strict";var p3e=glt(),{stdout:o7t,stderr:a7t}=i7t(),{stringReplaceAll:Bio,stringEncaseCRLFWithFirstIndex:wio}=PBn(),{isArray:Alt}=Array,XBn=["ansi","ansi","ansi256","ansi16m"],ZSe=Object.create(null),Tio=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=o7t?o7t.level:0;e.level=t.level===void 0?r:t.level},c7t=class{constructor(t){return JBn(t)}},JBn=e=>{let t={};return Tio(t,e),t.template=(...r)=>KBn(t.template,...r),Object.setPrototypeOf(t,dlt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=c7t,t.template};function dlt(e){return JBn(e)}for(let[e,t]of Object.entries(p3e))ZSe[e]={get(){let r=plt(this,l7t(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};ZSe.visible={get(){let e=plt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var UBn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of UBn)ZSe[e]={get(){let{level:t}=this;return function(...r){let n=l7t(p3e.color[XBn[t]][e](...r),p3e.color.close,this._styler);return plt(this,n,this._isEmpty)}}};for(let e of UBn){let t="bg"+e[0].toUpperCase()+e.slice(1);ZSe[t]={get(){let{level:r}=this;return function(...n){let a=l7t(p3e.bgColor[XBn[r]][e](...n),p3e.bgColor.close,this._styler);return plt(this,a,this._isEmpty)}}}}var Rio=Object.defineProperties(()=>{},{...ZSe,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),l7t=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},plt=(e,t,r)=>{let n=(...a)=>Alt(a[0])&&Alt(a[0].raw)?QBn(n,KBn(n,...a)):QBn(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,Rio),n._generator=e,n._styler=t,n._isEmpty=r,n},QBn=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=Bio(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=wio(t,a,n,o)),n+t+a},s7t,KBn=(e,...t)=>{let[r]=t;if(!Alt(r)||!Alt(r.raw))return t.join(" ");let n=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";z5.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;z5.find=(e,t)=>e.nodes.find(r=>r.type===t);z5.exceedsLimit=(e,t,r=1,n)=>n===!1||!z5.isInteger(e)||!z5.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=n;z5.escapeNode=(e,t=0,r)=>{let n=e.nodes[t];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};z5.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);z5.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;z5.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;z5.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);z5.flatten=(...e)=>{let t=[],r=n=>{for(let a=0;a{"use strict";var zBn=Ilt();qBn.exports=(e,t={})=>{let r=(n,a={})=>{let o=t.escapeInvalid&&zBn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A="";if(n.value)return(o||l)&&zBn.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let f of n.nodes)A+=r(f);return A};return r(e)}});var ewn=H((DHl,$Bn)=>{"use strict";$Bn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var lwn=H((kHl,cwn)=>{"use strict";var twn=ewn(),Ffe=(e,t,r)=>{if(twn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(twn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let a=String(n.relaxZeros),o=String(n.shorthand),l=String(n.capture),A=String(n.wrap),f=e+":"+t+"="+a+o+l+A;if(Ffe.cache.hasOwnProperty(f))return Ffe.cache[f].result;let I=Math.min(e,t),C=Math.max(e,t);if(Math.abs(I-C)===1){let F=e+"|"+t;return n.capture?`(${F})`:n.wrap===!1?F:`(?:${F})`}let b=awn(e)||awn(t),E={min:e,max:t,a:I,b:C},N=[],B=[];if(b&&(E.isPadded=b,E.maxLen=String(E.max).length),I<0){let F=C<0?Math.abs(C):1;B=rwn(F,Math.abs(I),E,n),I=E.a=0}return C>=0&&(N=rwn(I,C,E,n)),E.negatives=B,E.positives=N,E.result=Nio(B,N,n),n.capture===!0?E.result=`(${E.result})`:n.wrap!==!1&&N.length+B.length>1&&(E.result=`(?:${E.result})`),Ffe.cache[f]=E,E.result};function Nio(e,t,r){let n=u7t(e,t,"-",!1,r)||[],a=u7t(t,e,"",!1,r)||[],o=u7t(e,t,"-?",!0,r)||[];return n.concat(o).concat(a).join("|")}function Dio(e,t){let r=1,n=1,a=iwn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=iwn(e,r);for(a=swn(t+1,n)-1;e1&&A.count.pop(),A.count.push(C.count[0]),A.string=A.pattern+own(A.count),l=I+1;continue}r.isPadded&&(b=Zio(I,r,n)),C.string=b+C.pattern+own(C.count),o.push(C),l=I+1,A=C}return o}function u7t(e,t,r,n,a){let o=[];for(let l of e){let{string:A}=l;!n&&!nwn(t,"string",A)&&o.push(r+A),n&&nwn(t,"string",A)&&o.push(r+A)}return o}function xio(e,t){let r=[];for(let n=0;nt?1:t>e?-1:0}function nwn(e,t,r){return e.some(n=>n[t]===r)}function iwn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function swn(e,t){return e-e%Math.pow(10,t)}function own(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function Fio(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function awn(e){return/^-?(0+)\d/.test(e)}function Zio(e,t,r){if(!t.isPadded)return e;let n=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${n}}`:`0{${n}}`}}Ffe.cache={};Ffe.clearCache=()=>Ffe.cache={};cwn.exports=Ffe});var d7t=H((xHl,Iwn)=>{"use strict";var Lio=wt("util"),gwn=lwn(),uwn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),Vio=e=>t=>e===!0?Number(t):String(t),g7t=e=>typeof e=="number"||typeof e=="string"&&e!=="",f3e=e=>Number.isInteger(+e),A7t=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},Pio=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,Wio=(e,t,r)=>{if(t>0){let n=e[0]==="-"?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return r===!1?String(e):e},Clt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((A,f)=>Af?1:0),e.positives.sort((A,f)=>Af?1:0);let n=t.capture?"":"?:",a="",o="",l;return e.positives.length&&(a=e.positives.map(A=>Clt(String(A),r)).join("|")),e.negatives.length&&(o=`-(${n}${e.negatives.map(A=>Clt(String(A),r)).join("|")})`),a&&o?l=`${a}|${o}`:l=a||o,t.wrap?`(${n}${l})`:l},Awn=(e,t,r,n)=>{if(r)return gwn(e,t,{wrap:!1,...n});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},dwn=(e,t,r)=>{if(Array.isArray(e)){let n=r.wrap===!0,a=r.capture?"":"?:";return n?`(${a}${e.join("|")})`:e.join("|")}return gwn(e,t,r)},pwn=(...e)=>new RangeError("Invalid range arguments: "+Lio.inspect(...e)),fwn=(e,t,r)=>{if(r.strictRanges===!0)throw pwn([e,t]);return[]},Mio=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},Hio=(e,t,r=1,n={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(n.strictRanges===!0)throw pwn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let l=a>o,A=String(e),f=String(t),I=String(r);r=Math.max(Math.abs(r),1);let C=A7t(A)||A7t(f)||A7t(I),b=C?Math.max(A.length,f.length,I.length):0,E=C===!1&&Pio(e,t,n)===!1,N=n.transform||Vio(E);if(n.toRegex&&r===1)return Awn(Clt(e,b),Clt(t,b),!0,n);let B={negatives:[],positives:[]},F=ae=>B[ae<0?"negatives":"positives"].push(Math.abs(ae)),Q=[],X=0;for(;l?a>=o:a<=o;)n.toRegex===!0&&r>1?F(a):Q.push(Wio(N(a,X),b,E)),a=l?a-r:a+r,X++;return n.toRegex===!0?r>1?Oio(B,n,b):dwn(Q,null,{wrap:!1,...n}):Q},Yio=(e,t,r=1,n={})=>{if(!f3e(e)&&e.length>1||!f3e(t)&&t.length>1)return fwn(e,t,n);let a=n.transform||(E=>String.fromCharCode(E)),o=`${e}`.charCodeAt(0),l=`${t}`.charCodeAt(0),A=o>l,f=Math.min(o,l),I=Math.max(o,l);if(n.toRegex&&r===1)return Awn(f,I,!1,n);let C=[],b=0;for(;A?o>=l:o<=l;)C.push(a(o,b)),o=A?o-r:o+r,b++;return n.toRegex===!0?dwn(C,null,{wrap:!1,options:n}):C},mlt=(e,t,r,n={})=>{if(t==null&&g7t(e))return[e];if(!g7t(e)||!g7t(t))return fwn(e,t,n);if(typeof r=="function")return mlt(e,t,1,{transform:r});if(uwn(r))return mlt(e,t,0,r);let a={...n};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,f3e(r)?f3e(e)&&f3e(t)?Hio(e,t,r,a):Yio(e,t,Math.max(Math.abs(r),1),a):r!=null&&!uwn(r)?Mio(r,a):mlt(e,t,1,r)};Iwn.exports=mlt});var Cwn=H((GHl,mwn)=>{"use strict";var Qio=d7t(),hwn=Ilt(),Xio=(e,t={})=>{let r=(n,a={})=>{let o=hwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A=o===!0||l===!0,f=t.escapeInvalid===!0?"\\":"",I="";if(n.isOpen===!0)return f+n.value;if(n.isClose===!0)return console.log("node.isClose",f,n.value),f+n.value;if(n.type==="open")return A?f+n.value:"(";if(n.type==="close")return A?f+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":A?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let C=hwn.reduce(n.nodes),b=Qio(...C,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(b.length!==0)return C.length>1&&b.length>1?`(${b})`:b}if(n.nodes)for(let C of n.nodes)I+=r(C,n);return I};return r(e)};mwn.exports=Xio});var bwn=H((FHl,ywn)=>{"use strict";var Jio=d7t(),_wn=hlt(),LSe=Ilt(),Zfe=(e="",t="",r=!1)=>{let n=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?LSe.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)n.push(Zfe(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),n.push(Array.isArray(o)?Zfe(a,o,r):a+o);return LSe.flatten(n)},Uio=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,n=(a,o={})=>{a.queue=[];let l=o,A=o.queue;for(;l.type!=="brace"&&l.type!=="root"&&l.parent;)l=l.parent,A=l.queue;if(a.invalid||a.dollar){A.push(Zfe(A.pop(),_wn(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){A.push(Zfe(A.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let b=LSe.reduce(a.nodes);if(LSe.exceedsLimit(...b,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let E=Jio(...b,t);E.length===0&&(E=_wn(a,t)),A.push(Zfe(A.pop(),E)),a.nodes=[];return}let f=LSe.encloseBrace(a),I=a.queue,C=a;for(;C.type!=="brace"&&C.type!=="root"&&C.parent;)C=C.parent,I=C.queue;for(let b=0;b{"use strict";Ewn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` +`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Rwn=H((LHl,Twn)=>{"use strict";var Kio=hlt(),{MAX_LENGTH:vwn,CHAR_BACKSLASH:p7t,CHAR_BACKTICK:jio,CHAR_COMMA:zio,CHAR_DOT:qio,CHAR_LEFT_PARENTHESES:$io,CHAR_RIGHT_PARENTHESES:eso,CHAR_LEFT_CURLY_BRACE:tso,CHAR_RIGHT_CURLY_BRACE:rso,CHAR_LEFT_SQUARE_BRACKET:Bwn,CHAR_RIGHT_SQUARE_BRACKET:wwn,CHAR_DOUBLE_QUOTE:nso,CHAR_SINGLE_QUOTE:iso,CHAR_NO_BREAK_SPACE:sso,CHAR_ZERO_WIDTH_NOBREAK_SPACE:oso}=Swn(),aso=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},n=typeof r.maxLength=="number"?Math.min(vwn,r.maxLength):vwn;if(e.length>n)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${n})`);let a={type:"root",input:e,nodes:[]},o=[a],l=a,A=a,f=0,I=e.length,C=0,b=0,E,N=()=>e[C++],B=F=>{if(F.type==="text"&&A.type==="dot"&&(A.type="text"),A&&A.type==="text"&&F.type==="text"){A.value+=F.value;return}return l.nodes.push(F),F.parent=l,F.prev=A,A=F,F};for(B({type:"bos"});C0){if(l.ranges>0){l.ranges=0;let F=l.nodes.shift();l.nodes=[F,{type:"text",value:Kio(l)}]}B({type:"comma",value:E}),l.commas++;continue}if(E===qio&&b>0&&l.commas===0){let F=l.nodes;if(b===0||F.length===0){B({type:"text",value:E});continue}if(A.type==="dot"){if(l.range=[],A.value+=E,A.type="range",l.nodes.length!==3&&l.nodes.length!==5){l.invalid=!0,l.ranges=0,A.type="text";continue}l.ranges++,l.args=[];continue}if(A.type==="range"){F.pop();let Q=F[F.length-1];Q.value+=A.value+E,A=Q,l.ranges--;continue}B({type:"dot",value:E});continue}B({type:"text",value:E})}do if(l=o.pop(),l.type!=="root"){l.nodes.forEach(X=>{X.nodes||(X.type==="open"&&(X.isOpen=!0),X.type==="close"&&(X.isClose=!0),X.nodes||(X.type="text"),X.invalid=!0)});let F=o[o.length-1],Q=F.nodes.indexOf(l);F.nodes.splice(Q,1,...l.nodes)}while(o.length>0);return B({type:"eos"}),a};Twn.exports=aso});var kwn=H((VHl,Dwn)=>{"use strict";var Nwn=hlt(),cso=Cwn(),lso=bwn(),uso=Rwn(),NW=(e,t={})=>{let r=[];if(Array.isArray(e))for(let n of e){let a=NW.create(n,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(NW.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};NW.parse=(e,t={})=>uso(e,t);NW.stringify=(e,t={})=>Nwn(typeof e=="string"?NW.parse(e,t):e,t);NW.compile=(e,t={})=>(typeof e=="string"&&(e=NW.parse(e,t)),cso(e,t));NW.expand=(e,t={})=>{typeof e=="string"&&(e=NW.parse(e,t));let r=lso(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};NW.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?NW.compile(e,t):NW.expand(e,t);Dwn.exports=NW});var I3e=H((PHl,Lwn)=>{"use strict";var gso=wt("path"),PK="\\\\/",xwn=`[^${PK}]`,Uq="\\.",Aso="\\+",dso="\\?",_lt="\\/",pso="(?=.)",Gwn="[^/]",f7t=`(?:${_lt}|$)`,Fwn=`(?:^|${_lt})`,I7t=`${Uq}{1,2}${f7t}`,fso=`(?!${Uq})`,Iso=`(?!${Fwn}${I7t})`,hso=`(?!${Uq}{0,1}${f7t})`,mso=`(?!${I7t})`,Cso=`[^.${_lt}]`,_so=`${Gwn}*?`,Zwn={DOT_LITERAL:Uq,PLUS_LITERAL:Aso,QMARK_LITERAL:dso,SLASH_LITERAL:_lt,ONE_CHAR:pso,QMARK:Gwn,END_ANCHOR:f7t,DOTS_SLASH:I7t,NO_DOT:fso,NO_DOTS:Iso,NO_DOT_SLASH:hso,NO_DOTS_SLASH:mso,QMARK_NO_DOT:Cso,STAR:_so,START_ANCHOR:Fwn},yso={...Zwn,SLASH_LITERAL:`[${PK}]`,QMARK:xwn,STAR:`${xwn}*?`,DOTS_SLASH:`${Uq}{1,2}(?:[${PK}]|$)`,NO_DOT:`(?!${Uq})`,NO_DOTS:`(?!(?:^|[${PK}])${Uq}{1,2}(?:[${PK}]|$))`,NO_DOT_SLASH:`(?!${Uq}{0,1}(?:[${PK}]|$))`,NO_DOTS_SLASH:`(?!${Uq}{1,2}(?:[${PK}]|$))`,QMARK_NO_DOT:`[^.${PK}]`,START_ANCHOR:`(?:^|[${PK}])`,END_ANCHOR:`(?:[${PK}]|$)`},bso={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Lwn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:bso,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:gso.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?yso:Zwn}}});var h3e=H(Y9=>{"use strict";var Eso=wt("path"),Sso=process.platform==="win32",{REGEX_BACKSLASH:vso,REGEX_REMOVE_BACKSLASH:Bso,REGEX_SPECIAL_CHARS:wso,REGEX_SPECIAL_CHARS_GLOBAL:Tso}=I3e();Y9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);Y9.hasRegexChars=e=>wso.test(e);Y9.isRegexChar=e=>e.length===1&&Y9.hasRegexChars(e);Y9.escapeRegex=e=>e.replace(Tso,"\\$1");Y9.toPosixSlashes=e=>e.replace(vso,"/");Y9.removeBackslashes=e=>e.replace(Bso,t=>t==="\\"?"":t);Y9.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};Y9.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:Sso===!0||Eso.sep==="\\";Y9.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?Y9.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};Y9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};Y9.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var Qwn=H((OHl,Ywn)=>{"use strict";var Vwn=h3e(),{CHAR_ASTERISK:h7t,CHAR_AT:Rso,CHAR_BACKWARD_SLASH:m3e,CHAR_COMMA:Nso,CHAR_DOT:m7t,CHAR_EXCLAMATION_MARK:C7t,CHAR_FORWARD_SLASH:Hwn,CHAR_LEFT_CURLY_BRACE:_7t,CHAR_LEFT_PARENTHESES:y7t,CHAR_LEFT_SQUARE_BRACKET:Dso,CHAR_PLUS:kso,CHAR_QUESTION_MARK:Pwn,CHAR_RIGHT_CURLY_BRACE:xso,CHAR_RIGHT_PARENTHESES:Wwn,CHAR_RIGHT_SQUARE_BRACKET:Gso}=I3e(),Own=e=>e===Hwn||e===m3e,Mwn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Fso=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,X=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),et=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Me=f.slice(0,C),f=f.slice(C),b-=C),ct&&B===!0&&b>0?(ct=f.slice(0,b),je=f.slice(b)):B===!0?(ct="",je=f):ct=f,ct&&ct!==""&&ct!=="/"&&ct!==f&&Own(ct.charCodeAt(ct.length-1))&&(ct=ct.slice(0,-1)),r.unescape===!0&&(je&&(je=Vwn.removeBackslashes(je)),ct&&ae===!0&&(ct=Vwn.removeBackslashes(ct)));let St={prefix:Me,input:e,start:C,base:ct,glob:je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(St.maxDepth=0,Own(be)||l.push(Se),St.tokens=l),r.parts===!0||r.tokens===!0){let At;for(let Yt=0;Yt{"use strict";var ylt=I3e(),DW=h3e(),{MAX_LENGTH:blt,POSIX_REGEX_SOURCE:Zso,REGEX_NON_SPECIAL_CHARS:Lso,REGEX_SPECIAL_CHARS_BACKREF:Vso,REPLACEMENTS:Xwn}=ylt,Pso=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>DW.escapeRegex(a)).join("..")}return r},VSe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,b7t=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=Xwn[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(blt,r.maxLength):blt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=DW.isWindows(t),I=ylt.globChars(f),C=ylt.extglobChars(I),{DOT_LITERAL:b,PLUS_LITERAL:E,SLASH_LITERAL:N,ONE_CHAR:B,DOTS_SLASH:F,NO_DOT:Q,NO_DOT_SLASH:X,NO_DOTS_SLASH:ae,QMARK:ne,QMARK_NO_DOT:ce,STAR:fe,START_ANCHOR:ue}=I,de=Ar=>`(${A}(?:(?!${ue}${Ar.dot?F:b}).)*?)`,be=r.dot?"":Q,Se=r.dot?ne:ce,De=r.bash===!0?de(r):fe;r.capture&&(De=`(${De})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let k={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=DW.removePrefix(e,k),a=e.length;let et=[],ct=[],Me=[],je=o,St,At=()=>k.index===a-1,Yt=k.peek=(Ar=1)=>e[k.index+Ar],Tr=k.advance=()=>e[++k.index]||"",Nr=()=>e.slice(k.index+1),er=(Ar="",qr=0)=>{k.consumed+=Ar,k.index+=qr},vt=Ar=>{k.output+=Ar.output!=null?Ar.output:Ar.value,er(Ar.value)},xt=()=>{let Ar=1;for(;Yt()==="!"&&(Yt(2)!=="("||Yt(3)==="?");)Tr(),k.start++,Ar++;return Ar%2===0?!1:(k.negated=!0,k.start++,!0)},Zr=Ar=>{k[Ar]++,Me.push(Ar)},qt=Ar=>{k[Ar]--,Me.pop()},Xt=Ar=>{if(je.type==="globstar"){let qr=k.braces>0&&(Ar.type==="comma"||Ar.type==="brace"),_n=Ar.extglob===!0||et.length&&(Ar.type==="pipe"||Ar.type==="paren");Ar.type!=="slash"&&Ar.type!=="paren"&&!qr&&!_n&&(k.output=k.output.slice(0,-je.output.length),je.type="star",je.value="*",je.output=De,k.output+=je.output)}if(et.length&&Ar.type!=="paren"&&(et[et.length-1].inner+=Ar.value),(Ar.value||Ar.output)&&vt(Ar),je&&je.type==="text"&&Ar.type==="text"){je.value+=Ar.value,je.output=(je.output||"")+Ar.value;return}Ar.prev=je,l.push(Ar),je=Ar},lr=(Ar,qr)=>{let _n={...C[qr],conditions:1,inner:""};_n.prev=je,_n.parens=k.parens,_n.output=k.output;let ke=(r.capture?"(":"")+_n.open;Zr("parens"),Xt({type:Ar,value:qr,output:k.output?"":B}),Xt({type:"paren",extglob:!0,value:Tr(),output:ke}),et.push(_n)},cr=Ar=>{let qr=Ar.close+(r.capture?")":""),_n;if(Ar.type==="negate"){let ke=De;if(Ar.inner&&Ar.inner.length>1&&Ar.inner.includes("/")&&(ke=de(r)),(ke!==De||At()||/^\)+$/.test(Nr()))&&(qr=Ar.close=`)$))${ke}`),Ar.inner.includes("*")&&(_n=Nr())&&/^\.[^\\/.]+$/.test(_n)){let jt=b7t(_n,{...t,fastpaths:!1}).output;qr=Ar.close=`)${jt})${ke})`}Ar.prev.type==="bos"&&(k.negatedExtglob=!0)}Xt({type:"paren",extglob:!0,value:St,output:qr}),qt("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Ar=!1,qr=e.replace(Vso,(_n,ke,jt,Fn,Nn,Hi)=>Fn==="\\"?(Ar=!0,_n):Fn==="?"?ke?ke+Fn+(Nn?ne.repeat(Nn.length):""):Hi===0?Se+(Nn?ne.repeat(Nn.length):""):ne.repeat(jt.length):Fn==="."?b.repeat(jt.length):Fn==="*"?ke?ke+Fn+(Nn?De:""):De:ke?_n:`\\${_n}`);return Ar===!0&&(r.unescape===!0?qr=qr.replace(/\\/g,""):qr=qr.replace(/\\+/g,_n=>_n.length%2===0?"\\\\":_n?"\\":"")),qr===e&&r.contains===!0?(k.output=e,k):(k.output=DW.wrapOutput(qr,k,t),k)}for(;!At();){if(St=Tr(),St==="\0")continue;if(St==="\\"){let _n=Yt();if(_n==="/"&&r.bash!==!0||_n==="."||_n===";")continue;if(!_n){St+="\\",Xt({type:"text",value:St});continue}let ke=/^\\+/.exec(Nr()),jt=0;if(ke&&ke[0].length>2&&(jt=ke[0].length,k.index+=jt,jt%2!==0&&(St+="\\")),r.unescape===!0?St=Tr():St+=Tr(),k.brackets===0){Xt({type:"text",value:St});continue}}if(k.brackets>0&&(St!=="]"||je.value==="["||je.value==="[^")){if(r.posix!==!1&&St===":"){let _n=je.value.slice(1);if(_n.includes("[")&&(je.posix=!0,_n.includes(":"))){let ke=je.value.lastIndexOf("["),jt=je.value.slice(0,ke),Fn=je.value.slice(ke+2),Nn=Zso[Fn];if(Nn){je.value=jt+Nn,k.backtrack=!0,Tr(),!o.output&&l.indexOf(je)===1&&(o.output=B);continue}}}(St==="["&&Yt()!==":"||St==="-"&&Yt()==="]")&&(St=`\\${St}`),St==="]"&&(je.value==="["||je.value==="[^")&&(St=`\\${St}`),r.posix===!0&&St==="!"&&je.value==="["&&(St="^"),je.value+=St,vt({value:St});continue}if(k.quotes===1&&St!=='"'){St=DW.escapeRegex(St),je.value+=St,vt({value:St});continue}if(St==='"'){k.quotes=k.quotes===1?0:1,r.keepQuotes===!0&&Xt({type:"text",value:St});continue}if(St==="("){Zr("parens"),Xt({type:"paren",value:St});continue}if(St===")"){if(k.parens===0&&r.strictBrackets===!0)throw new SyntaxError(VSe("opening","("));let _n=et[et.length-1];if(_n&&k.parens===_n.parens+1){cr(et.pop());continue}Xt({type:"paren",value:St,output:k.parens?")":"\\)"}),qt("parens");continue}if(St==="["){if(r.nobracket===!0||!Nr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(VSe("closing","]"));St=`\\${St}`}else Zr("brackets");Xt({type:"bracket",value:St});continue}if(St==="]"){if(r.nobracket===!0||je&&je.type==="bracket"&&je.value.length===1){Xt({type:"text",value:St,output:`\\${St}`});continue}if(k.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(VSe("opening","["));Xt({type:"text",value:St,output:`\\${St}`});continue}qt("brackets");let _n=je.value.slice(1);if(je.posix!==!0&&_n[0]==="^"&&!_n.includes("/")&&(St=`/${St}`),je.value+=St,vt({value:St}),r.literalBrackets===!1||DW.hasRegexChars(_n))continue;let ke=DW.escapeRegex(je.value);if(k.output=k.output.slice(0,-je.value.length),r.literalBrackets===!0){k.output+=ke,je.value=ke;continue}je.value=`(${A}${ke}|${je.value})`,k.output+=je.value;continue}if(St==="{"&&r.nobrace!==!0){Zr("braces");let _n={type:"brace",value:St,output:"(",outputIndex:k.output.length,tokensIndex:k.tokens.length};ct.push(_n),Xt(_n);continue}if(St==="}"){let _n=ct[ct.length-1];if(r.nobrace===!0||!_n){Xt({type:"text",value:St,output:St});continue}let ke=")";if(_n.dots===!0){let jt=l.slice(),Fn=[];for(let Nn=jt.length-1;Nn>=0&&(l.pop(),jt[Nn].type!=="brace");Nn--)jt[Nn].type!=="dots"&&Fn.unshift(jt[Nn].value);ke=Pso(Fn,r),k.backtrack=!0}if(_n.comma!==!0&&_n.dots!==!0){let jt=k.output.slice(0,_n.outputIndex),Fn=k.tokens.slice(_n.tokensIndex);_n.value=_n.output="\\{",St=ke="\\}",k.output=jt;for(let Nn of Fn)k.output+=Nn.output||Nn.value}Xt({type:"brace",value:St,output:ke}),qt("braces"),ct.pop();continue}if(St==="|"){et.length>0&&et[et.length-1].conditions++,Xt({type:"text",value:St});continue}if(St===","){let _n=St,ke=ct[ct.length-1];ke&&Me[Me.length-1]==="braces"&&(ke.comma=!0,_n="|"),Xt({type:"comma",value:St,output:_n});continue}if(St==="/"){if(je.type==="dot"&&k.index===k.start+1){k.start=k.index+1,k.consumed="",k.output="",l.pop(),je=o;continue}Xt({type:"slash",value:St,output:N});continue}if(St==="."){if(k.braces>0&&je.type==="dot"){je.value==="."&&(je.output=b);let _n=ct[ct.length-1];je.type="dots",je.output+=St,je.value+=St,_n.dots=!0;continue}if(k.braces+k.parens===0&&je.type!=="bos"&&je.type!=="slash"){Xt({type:"text",value:St,output:b});continue}Xt({type:"dot",value:St,output:b});continue}if(St==="?"){if(!(je&&je.value==="(")&&r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){lr("qmark",St);continue}if(je&&je.type==="paren"){let ke=Yt(),jt=St;if(ke==="<"&&!DW.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(je.value==="("&&!/[!=<:]/.test(ke)||ke==="<"&&!/<([!=]|\w+>)/.test(Nr()))&&(jt=`\\${St}`),Xt({type:"text",value:St,output:jt});continue}if(r.dot!==!0&&(je.type==="slash"||je.type==="bos")){Xt({type:"qmark",value:St,output:ce});continue}Xt({type:"qmark",value:St,output:ne});continue}if(St==="!"){if(r.noextglob!==!0&&Yt()==="("&&(Yt(2)!=="?"||!/[!=<:]/.test(Yt(3)))){lr("negate",St);continue}if(r.nonegate!==!0&&k.index===0){xt();continue}}if(St==="+"){if(r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){lr("plus",St);continue}if(je&&je.value==="("||r.regex===!1){Xt({type:"plus",value:St,output:E});continue}if(je&&(je.type==="bracket"||je.type==="paren"||je.type==="brace")||k.parens>0){Xt({type:"plus",value:St});continue}Xt({type:"plus",value:E});continue}if(St==="@"){if(r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){Xt({type:"at",extglob:!0,value:St,output:""});continue}Xt({type:"text",value:St});continue}if(St!=="*"){(St==="$"||St==="^")&&(St=`\\${St}`);let _n=Lso.exec(Nr());_n&&(St+=_n[0],k.index+=_n[0].length),Xt({type:"text",value:St});continue}if(je&&(je.type==="globstar"||je.star===!0)){je.type="star",je.star=!0,je.value+=St,je.output=De,k.backtrack=!0,k.globstar=!0,er(St);continue}let Ar=Nr();if(r.noextglob!==!0&&/^\([^?]/.test(Ar)){lr("star",St);continue}if(je.type==="star"){if(r.noglobstar===!0){er(St);continue}let _n=je.prev,ke=_n.prev,jt=_n.type==="slash"||_n.type==="bos",Fn=ke&&(ke.type==="star"||ke.type==="globstar");if(r.bash===!0&&(!jt||Ar[0]&&Ar[0]!=="/")){Xt({type:"star",value:St,output:""});continue}let Nn=k.braces>0&&(_n.type==="comma"||_n.type==="brace"),Hi=et.length&&(_n.type==="pipe"||_n.type==="paren");if(!jt&&_n.type!=="paren"&&!Nn&&!Hi){Xt({type:"star",value:St,output:""});continue}for(;Ar.slice(0,3)==="/**";){let po=e[k.index+4];if(po&&po!=="/")break;Ar=Ar.slice(3),er("/**",3)}if(_n.type==="bos"&&At()){je.type="globstar",je.value+=St,je.output=de(r),k.output=je.output,k.globstar=!0,er(St);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&!Fn&&At()){k.output=k.output.slice(0,-(_n.output+je.output).length),_n.output=`(?:${_n.output}`,je.type="globstar",je.output=de(r)+(r.strictSlashes?")":"|$)"),je.value+=St,k.globstar=!0,k.output+=_n.output+je.output,er(St);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&Ar[0]==="/"){let po=Ar[1]!==void 0?"|$":"";k.output=k.output.slice(0,-(_n.output+je.output).length),_n.output=`(?:${_n.output}`,je.type="globstar",je.output=`${de(r)}${N}|${N}${po})`,je.value+=St,k.output+=_n.output+je.output,k.globstar=!0,er(St+Tr()),Xt({type:"slash",value:"/",output:""});continue}if(_n.type==="bos"&&Ar[0]==="/"){je.type="globstar",je.value+=St,je.output=`(?:^|${N}|${de(r)}${N})`,k.output=je.output,k.globstar=!0,er(St+Tr()),Xt({type:"slash",value:"/",output:""});continue}k.output=k.output.slice(0,-je.output.length),je.type="globstar",je.output=de(r),je.value+=St,k.output+=je.output,k.globstar=!0,er(St);continue}let qr={type:"star",value:St,output:De};if(r.bash===!0){qr.output=".*?",(je.type==="bos"||je.type==="slash")&&(qr.output=be+qr.output),Xt(qr);continue}if(je&&(je.type==="bracket"||je.type==="paren")&&r.regex===!0){qr.output=St,Xt(qr);continue}(k.index===k.start||je.type==="slash"||je.type==="dot")&&(je.type==="dot"?(k.output+=X,je.output+=X):r.dot===!0?(k.output+=ae,je.output+=ae):(k.output+=be,je.output+=be),Yt()!=="*"&&(k.output+=B,je.output+=B)),Xt(qr)}for(;k.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(VSe("closing","]"));k.output=DW.escapeLast(k.output,"["),qt("brackets")}for(;k.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(VSe("closing",")"));k.output=DW.escapeLast(k.output,"("),qt("parens")}for(;k.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(VSe("closing","}"));k.output=DW.escapeLast(k.output,"{"),qt("braces")}if(r.strictSlashes!==!0&&(je.type==="star"||je.type==="bracket")&&Xt({type:"maybe_slash",value:"",output:`${N}?`}),k.backtrack===!0){k.output="";for(let Ar of k.tokens)k.output+=Ar.output!=null?Ar.output:Ar.value,Ar.suffix&&(k.output+=Ar.suffix)}return k};b7t.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(blt,r.maxLength):blt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=Xwn[e]||e;let o=DW.isWindows(t),{DOT_LITERAL:l,SLASH_LITERAL:A,ONE_CHAR:f,DOTS_SLASH:I,NO_DOT:C,NO_DOTS:b,NO_DOTS_SLASH:E,STAR:N,START_ANCHOR:B}=ylt.globChars(o),F=r.dot?b:C,Q=r.dot?E:C,X=r.capture?"":"?:",ae={negated:!1,prefix:""},ne=r.bash===!0?".*?":N;r.capture&&(ne=`(${ne})`);let ce=be=>be.noglobstar===!0?ne:`(${X}(?:(?!${B}${be.dot?I:l}).)*?)`,fe=be=>{switch(be){case"*":return`${F}${f}${ne}`;case".*":return`${l}${f}${ne}`;case"*.*":return`${F}${ne}${l}${f}${ne}`;case"*/*":return`${F}${ne}${A}${f}${Q}${ne}`;case"**":return F+ce(r);case"**/*":return`(?:${F}${ce(r)}${A})?${Q}${f}${ne}`;case"**/*.*":return`(?:${F}${ce(r)}${A})?${Q}${ne}${l}${f}${ne}`;case"**/.*":return`(?:${F}${ce(r)}${A})?${l}${f}${ne}`;default:{let Se=/^(.*?)\.(\w+)$/.exec(be);if(!Se)return;let De=fe(Se[1]);return De?De+l+Se[2]:void 0}}},ue=DW.removePrefix(e,ae),de=fe(ue);return de&&r.strictSlashes!==!0&&(de+=`${A}?`),de};Jwn.exports=b7t});var jwn=H((HHl,Kwn)=>{"use strict";var Wso=wt("path"),Oso=Qwn(),E7t=Uwn(),S7t=h3e(),Mso=I3e(),Hso=e=>e&&typeof e=="object"&&!Array.isArray(e),KB=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>KB(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=Hso(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=S7t.isWindows(t),l=n?KB.compileRe(e,t):KB.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=KB(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=KB.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};KB.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?S7t.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=KB.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};KB.matchBase=(e,t,r,n=S7t.isWindows(r))=>(t instanceof RegExp?t:KB.makeRe(t,r)).test(Wso.basename(e));KB.isMatch=(e,t,r)=>KB(t,r)(e);KB.parse=(e,t)=>Array.isArray(e)?e.map(r=>KB.parse(r,t)):E7t(e,{...t,fastpaths:!1});KB.scan=(e,t)=>Oso(e,t);KB.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=KB.toRegex(A,t);return n===!0&&(f.state=e),f};KB.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=E7t.fastpaths(e,t)),a.output||(a=E7t(e,t)),KB.compileRe(a,t,r,n)};KB.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};KB.constants=Mso;Kwn.exports=KB});var qwn=H((YHl,zwn)=>{"use strict";zwn.exports=jwn()});var Ek=H((QHl,nTn)=>{"use strict";var eTn=wt("util"),tTn=kwn(),WK=qwn(),v7t=h3e(),$wn=e=>e===""||e==="./",rTn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},x1=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let n=new Set,a=new Set,o=new Set,l=0,A=C=>{o.add(C.output),r&&r.onResult&&r.onResult(C)};for(let C=0;C!n.has(C));if(r&&I.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(C=>C.replace(/\\/g,"")):t}return I};x1.match=x1;x1.matcher=(e,t)=>WK(e,t);x1.isMatch=(e,t,r)=>WK(t,r)(e);x1.any=x1.isMatch;x1.not=(e,t,r={})=>{t=[].concat(t).map(String);let n=new Set,a=[],o=A=>{r.onResult&&r.onResult(A),a.push(A.output)},l=new Set(x1(e,t,{...r,onResult:o}));for(let A of a)l.has(A)||n.add(A);return[...n]};x1.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${eTn.inspect(e)}"`);if(Array.isArray(t))return t.some(n=>x1.contains(e,n,r));if(typeof t=="string"){if($wn(e)||$wn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return x1.isMatch(e,t,{...r,contains:!0})};x1.matchKeys=(e,t,r)=>{if(!v7t.isObject(e))throw new TypeError("Expected the first argument to be an object");let n=x1(Object.keys(e),t,r),a={};for(let o of n)a[o]=e[o];return a};x1.some=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=WK(String(a),r);if(n.some(l=>o(l)))return!0}return!1};x1.every=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=WK(String(a),r);if(!n.every(l=>o(l)))return!1}return!0};x1.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${eTn.inspect(e)}"`);return[].concat(t).every(n=>WK(n,r)(e))};x1.capture=(e,t,r)=>{let n=v7t.isWindows(r),o=WK.makeRe(String(e),{...r,capture:!0}).exec(n?v7t.toPosixSlashes(t):t);if(o)return o.slice(1).map(l=>l===void 0?"":l)};x1.makeRe=(...e)=>WK.makeRe(...e);x1.scan=(...e)=>WK.scan(...e);x1.parse=(e,t)=>{let r=[];for(let n of[].concat(e||[]))for(let a of tTn(String(n),t))r.push(WK.parse(a,t));return r};x1.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!rTn(e)?[e]:tTn(e,t)};x1.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return x1.braces(e,{...t,expand:!0})};x1.hasBraces=rTn;nTn.exports=x1});var sTn=H((XHl,iTn)=>{"use strict";iTn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var q5=H((JHl,oTn)=>{"use strict";var Yso=sTn();oTn.exports=e=>typeof e=="string"?e.replace(Yso(),""):e});var w7t=H(B7t=>{"use strict";Object.defineProperty(B7t,Symbol.toStringTag,{value:"Module"});function Qso(e){return arguments.length===0?[]:Array.isArray(e)?e:[e]}B7t.castArray=Qso});var aTn=H(T7t=>{"use strict";Object.defineProperty(T7t,Symbol.toStringTag,{value:"Module"});function Xso(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Size must be an integer greater than zero.");let r=Math.ceil(e.length/t),n=Array(r);for(let a=0;a{"use strict";Object.defineProperty(R7t,Symbol.toStringTag,{value:"Module"});function Jso(e){return Array.isArray(e)?e:Array.from(e)}R7t.toArray=Jso});var cTn=H(N7t=>{"use strict";Object.defineProperty(N7t,Symbol.toStringTag,{value:"Module"});function Uso(e){return Number.isSafeInteger(e)&&e>=0}N7t.isLength=Uso});var Sf=H(D7t=>{"use strict";Object.defineProperty(D7t,Symbol.toStringTag,{value:"Module"});var Kso=cTn();function jso(e){return e!=null&&typeof e!="function"&&Kso.isLength(e.length)}D7t.isArrayLike=jso});var x7t=H(k7t=>{"use strict";Object.defineProperty(k7t,Symbol.toStringTag,{value:"Module"});var zso=aTn(),qso=SZ(),$so=Sf();function eoo(e,t=1){return t=Math.max(Math.floor(t),0),t===0||!$so.isArrayLike(e)?[]:zso.chunk(qso.toArray(e),t)}k7t.chunk=eoo});var lTn=H(G7t=>{"use strict";Object.defineProperty(G7t,Symbol.toStringTag,{value:"Module"});function too(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(F7t,Symbol.toStringTag,{value:"Module"});var roo=lTn(),noo=Sf();function ioo(e){return noo.isArrayLike(e)?roo.compact(Array.from(e)):[]}F7t.compact=ioo});var C3e=H(L7t=>{"use strict";Object.defineProperty(L7t,Symbol.toStringTag,{value:"Module"});function soo(e,t=1){let r=[],n=Math.floor(t),a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(V7t,Symbol.toStringTag,{value:"Module"});var ooo=C3e();function aoo(...e){return ooo.flatten(e)}V7t.concat=aoo});var bm=H(W7t=>{"use strict";Object.defineProperty(W7t,Symbol.toStringTag,{value:"Module"});function coo(e){return e}W7t.identity=coo});var _3e=H(O7t=>{"use strict";Object.defineProperty(O7t,Symbol.toStringTag,{value:"Module"});function loo(e){return e==="__proto__"}O7t.isUnsafeProperty=loo});var PSe=H(M7t=>{"use strict";Object.defineProperty(M7t,Symbol.toStringTag,{value:"Module"});function uoo(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}M7t.isDeepKey=uoo});var Kq=H(H7t=>{"use strict";Object.defineProperty(H7t,Symbol.toStringTag,{value:"Module"});function goo(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}H7t.toKey=goo});var qy=H(Y7t=>{"use strict";Object.defineProperty(Y7t,Symbol.toStringTag,{value:"Module"});function uTn(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(uTn).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}Y7t.toString=uTn});var $5=H(Q7t=>{"use strict";Object.defineProperty(Q7t,Symbol.toStringTag,{value:"Module"});var Aoo=qy(),doo=Kq();function poo(e){if(Array.isArray(e))return e.map(doo.toKey);if(typeof e=="symbol")return[e];e=Aoo.toString(e);let t=[],r=e.length;if(r===0)return t;let n=0,a="",o="",l=!1;for(e.charCodeAt(0)===46&&(t.push(""),n++);n{"use strict";Object.defineProperty(J7t,Symbol.toStringTag,{value:"Module"});var X7t=_3e(),foo=PSe(),Ioo=Kq(),hoo=$5();function gTn(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(X7t.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?foo.isDeepKey(t)?gTn(e,hoo.toPath(t),r):r:n}case"number":case"symbol":{typeof t=="number"&&(t=Ioo.toKey(t));let n=e[t];return n===void 0?r:n}default:{if(Array.isArray(t))return moo(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),X7t.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?r:n}}}function moo(e,t,r){if(t.length===0)return r;let n=e;for(let a=0;a{"use strict";Object.defineProperty(U7t,Symbol.toStringTag,{value:"Module"});var Coo=eM();function _oo(e){return function(t){return Coo.get(t,e)}}U7t.property=_oo});var tM=H(K7t=>{"use strict";Object.defineProperty(K7t,Symbol.toStringTag,{value:"Module"});function yoo(e){return e!==null&&(typeof e=="object"||typeof e=="function")}K7t.isObject=yoo});var WSe=H(j7t=>{"use strict";Object.defineProperty(j7t,Symbol.toStringTag,{value:"Module"});function boo(e){return e==null||typeof e!="object"&&typeof e!="function"}j7t.isPrimitive=boo});var Sk=H(z7t=>{"use strict";Object.defineProperty(z7t,Symbol.toStringTag,{value:"Module"});function Eoo(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}z7t.isEqualsSameValueZero=Eoo});var Slt=H(Elt=>{"use strict";Object.defineProperty(Elt,Symbol.toStringTag,{value:"Module"});var Soo=tM(),ATn=WSe(),dTn=Sk();function pTn(e,t,r){return typeof r!="function"?pTn(e,t,()=>{}):q7t(e,t,function n(a,o,l,A,f,I){let C=r(a,o,l,A,f,I);return C!==void 0?!!C:q7t(a,o,n,I)},new Map)}function q7t(e,t,r,n){if(t===e)return!0;switch(typeof t){case"object":return voo(e,t,r,n);case"function":return Object.keys(t).length>0?q7t(e,{...t},r,n):dTn.isEqualsSameValueZero(e,t);default:return Soo.isObject(e)?typeof t=="string"?t==="":!0:dTn.isEqualsSameValueZero(e,t)}}function voo(e,t,r,n){if(t==null)return!0;if(Array.isArray(t))return fTn(e,t,r,n);if(t instanceof Map)return Boo(e,t,r,n);if(t instanceof Set)return ITn(e,t,r,n);let a=Object.keys(t);if(e==null||ATn.isPrimitive(e))return a.length===0;if(a.length===0)return!0;if(n?.has(t))return n.get(t)===e;n?.set(t,e);try{for(let o=0;o{"use strict";Object.defineProperty($7t,Symbol.toStringTag,{value:"Module"});var woo=Slt();function Too(e,t){return woo.isMatchWith(e,t,()=>{})}$7t.isMatch=Too});var b3e=H(ezt=>{"use strict";Object.defineProperty(ezt,Symbol.toStringTag,{value:"Module"});function Roo(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}ezt.getSymbols=Roo});var Lfe=H(tzt=>{"use strict";Object.defineProperty(tzt,Symbol.toStringTag,{value:"Module"});function Noo(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}tzt.getTag=Noo});var E3e=H($y=>{"use strict";Object.defineProperty($y,Symbol.toStringTag,{value:"Module"});var Doo="[object RegExp]",koo="[object String]",xoo="[object Number]",Goo="[object Boolean]",Foo="[object Arguments]",Zoo="[object Symbol]",Loo="[object Date]",Voo="[object Map]",Poo="[object Set]",Woo="[object Array]",Ooo="[object Function]",Moo="[object ArrayBuffer]",Hoo="[object Object]",Yoo="[object Error]",Qoo="[object DataView]",Xoo="[object Uint8Array]",Joo="[object Uint8ClampedArray]",Uoo="[object Uint16Array]",Koo="[object Uint32Array]",joo="[object BigUint64Array]",zoo="[object Int8Array]",qoo="[object Int16Array]",$oo="[object Int32Array]",eao="[object BigInt64Array]",tao="[object Float32Array]",rao="[object Float64Array]";$y.argumentsTag=Foo;$y.arrayBufferTag=Moo;$y.arrayTag=Woo;$y.bigInt64ArrayTag=eao;$y.bigUint64ArrayTag=joo;$y.booleanTag=Goo;$y.dataViewTag=Qoo;$y.dateTag=Loo;$y.errorTag=Yoo;$y.float32ArrayTag=tao;$y.float64ArrayTag=rao;$y.functionTag=Ooo;$y.int16ArrayTag=qoo;$y.int32ArrayTag=$oo;$y.int8ArrayTag=zoo;$y.mapTag=Voo;$y.numberTag=xoo;$y.objectTag=Hoo;$y.regexpTag=Doo;$y.setTag=Poo;$y.stringTag=koo;$y.symbolTag=Zoo;$y.uint16ArrayTag=Uoo;$y.uint32ArrayTag=Koo;$y.uint8ArrayTag=Xoo;$y.uint8ClampedArrayTag=Joo});var nzt=H(rzt=>{"use strict";Object.defineProperty(rzt,Symbol.toStringTag,{value:"Module"});var nao=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||function(){return this}()||Function("return this")();rzt.globalThis=nao});var ioe=H(izt=>{"use strict";Object.defineProperty(izt,Symbol.toStringTag,{value:"Module"});var hTn=nzt();function iao(e){return typeof hTn.globalThis.Buffer<"u"&&hTn.globalThis.Buffer.isBuffer(e)}izt.isBuffer=iao});var vlt=H(szt=>{"use strict";Object.defineProperty(szt,Symbol.toStringTag,{value:"Module"});function sao(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}szt.isTypedArray=sao});var ozt=H(S3e=>{"use strict";Object.defineProperty(S3e,Symbol.toStringTag,{value:"Module"});var oao=b3e(),aao=Lfe(),Zv=E3e(),cao=ioe(),lao=WSe(),uao=vlt();function gao(e,t){return Vfe(e,void 0,e,new Map,t)}function Vfe(e,t,r,n=new Map,a=void 0){let o=a?.(e,t,r,n);if(o!==void 0)return o;if(lao.isPrimitive(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){let l=new Array(e.length);n.set(e,l);for(let A=0;A{"use strict";Object.defineProperty(azt,Symbol.toStringTag,{value:"Module"});var dao=ozt();function pao(e){return dao.cloneDeepWithImpl(e,void 0,e,new Map,void 0)}azt.cloneDeep=pao});var OK=H(lzt=>{"use strict";Object.defineProperty(lzt,Symbol.toStringTag,{value:"Module"});var fao=y3e(),Iao=czt();function hao(e){return e=Iao.cloneDeep(e),t=>fao.isMatch(t,e)}lzt.matches=hao});var B3e=H(uzt=>{"use strict";Object.defineProperty(uzt,Symbol.toStringTag,{value:"Module"});var Blt=ozt(),mao=Lfe(),v3e=E3e();function Cao(e,t){return Blt.cloneDeepWith(e,(r,n,a,o)=>{let l=t?.(r,n,a,o);if(l!==void 0)return l;if(typeof e=="object"){if(mao.getTag(e)===v3e.objectTag&&typeof e.constructor!="function"){let A={};return o.set(e,A),Blt.copyProperties(A,e,a,o),A}switch(Object.prototype.toString.call(e)){case v3e.numberTag:case v3e.stringTag:case v3e.booleanTag:{let A=new e.constructor(e?.valueOf());return Blt.copyProperties(A,e),A}case v3e.argumentsTag:{let A={};return Blt.copyProperties(A,e),A.length=e.length,A[Symbol.iterator]=e[Symbol.iterator],A}default:return}}})}uzt.cloneDeepWith=Cao});var OSe=H(gzt=>{"use strict";Object.defineProperty(gzt,Symbol.toStringTag,{value:"Module"});var _ao=B3e();function yao(e){return _ao.cloneDeepWith(e)}gzt.cloneDeep=yao});var MSe=H(Azt=>{"use strict";Object.defineProperty(Azt,Symbol.toStringTag,{value:"Module"});var bao=/^(?:0|[1-9]\d*)$/;function Eao(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e{"use strict";Object.defineProperty(dzt,Symbol.toStringTag,{value:"Module"});var Sao=Lfe();function vao(e){return e!==null&&typeof e=="object"&&Sao.getTag(e)==="[object Arguments]"}dzt.isArguments=vao});var w3e=H(pzt=>{"use strict";Object.defineProperty(pzt,Symbol.toStringTag,{value:"Module"});var Bao=PSe(),wao=MSe(),Tao=Pfe(),Rao=$5();function Nao(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&Bao.isDeepKey(t)&&e?.[t]==null?r=Rao.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(fzt,Symbol.toStringTag,{value:"Module"});var Dao=y3e(),kao=Kq(),xao=OSe(),Gao=eM(),Fao=w3e();function Zao(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=kao.toKey(e);break}}return t=xao.cloneDeep(t),function(r){let n=Gao.get(r,e);return n===void 0?Fao.has(r,e):t===void 0?n===void 0:Dao.isMatch(n,t)}}fzt.matchesProperty=Zao});var im=H(Izt=>{"use strict";Object.defineProperty(Izt,Symbol.toStringTag,{value:"Module"});var Lao=bm(),Vao=nX(),Pao=OK(),Wao=MK();function Oao(e){if(e==null)return Lao.identity;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?Wao.matchesProperty(e[0],e[1]):Pao.matches(e);case"string":case"symbol":case"number":return Vao.property(e)}}Izt.iteratee=Oao});var mzt=H(hzt=>{"use strict";Object.defineProperty(hzt,Symbol.toStringTag,{value:"Module"});var Mao=Sf(),Hao=im();function Yao(e,t){if(e==null)return{};let r=Mao.isArrayLike(e)?Array.from(e):Object.values(e),n=Hao.iteratee(t??void 0),a=Object.create(null);for(let o=0;o{"use strict";Object.defineProperty(Czt,Symbol.toStringTag,{value:"Module"});function Qao(e,t){let r=new Set(t);return e.filter(n=>!r.has(n))}Czt.difference=Qao});var soe=H(_zt=>{"use strict";Object.defineProperty(_zt,Symbol.toStringTag,{value:"Module"});function Xao(e){return typeof e=="object"&&e!==null}_zt.isObjectLike=Xao});var b2=H(yzt=>{"use strict";Object.defineProperty(yzt,Symbol.toStringTag,{value:"Module"});var Jao=Sf(),Uao=soe();function Kao(e){return Uao.isObjectLike(e)&&Jao.isArrayLike(e)}yzt.isArrayLikeObject=Kao});var Ezt=H(bzt=>{"use strict";Object.defineProperty(bzt,Symbol.toStringTag,{value:"Module"});var jao=T3e(),zao=SZ(),mTn=b2();function qao(e,...t){if(!mTn.isArrayLikeObject(e))return[];let r=zao.toArray(e),n=[];for(let a=0;a{"use strict";Object.defineProperty(Szt,Symbol.toStringTag,{value:"Module"});function $ao(e){return e[e.length-1]}Szt.last=$ao});var zq=H(vzt=>{"use strict";Object.defineProperty(vzt,Symbol.toStringTag,{value:"Module"});var eco=R3e(),tco=SZ(),rco=Sf();function nco(e){if(rco.isArrayLike(e))return eco.last(tco.toArray(e))}vzt.last=nco});var CTn=H(Bzt=>{"use strict";Object.defineProperty(Bzt,Symbol.toStringTag,{value:"Module"});function ico(e,t,r){let n=new Set(t.map(a=>r(a)));return e.filter(a=>!n.has(r(a)))}Bzt.differenceBy=ico});var N3e=H(wzt=>{"use strict";Object.defineProperty(wzt,Symbol.toStringTag,{value:"Module"});var sco=b2();function oco(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(Tzt,Symbol.toStringTag,{value:"Module"});var aco=zq(),cco=T3e(),lco=CTn(),uco=N3e(),_Tn=b2(),gco=im();function Aco(e,...t){if(!_Tn.isArrayLikeObject(e))return[];let r=aco.last(t),n=uco.flattenArrayLike(t);return _Tn.isArrayLikeObject(r)?cco.difference(Array.from(e),n):lco.differenceBy(Array.from(e),n,gco.iteratee(r))}Tzt.differenceBy=Aco});var yTn=H(Rzt=>{"use strict";Object.defineProperty(Rzt,Symbol.toStringTag,{value:"Module"});function dco(e,t,r){return e.filter(n=>t.every(a=>!r(n,a)))}Rzt.differenceWith=dco});var Tlt=H(Nzt=>{"use strict";Object.defineProperty(Nzt,Symbol.toStringTag,{value:"Module"});var pco=zq(),fco=T3e(),Ico=yTn(),hco=N3e(),mco=b2();function Cco(e,...t){if(!mco.isArrayLikeObject(e))return[];let r=pco.last(t),n=hco.flattenArrayLike(t);return typeof r=="function"?Ico.differenceWith(Array.from(e),n,r):fco.difference(Array.from(e),n)}Nzt.differenceWith=Cco});var bTn=H(Dzt=>{"use strict";Object.defineProperty(Dzt,Symbol.toStringTag,{value:"Module"});function _co(e,t){return t=Math.max(t,0),e.slice(t)}Dzt.drop=_co});var ooe=H(kzt=>{"use strict";Object.defineProperty(kzt,Symbol.toStringTag,{value:"Module"});function yco(e){return typeof e=="symbol"||e instanceof Symbol}kzt.isSymbol=yco});var Q9=H(xzt=>{"use strict";Object.defineProperty(xzt,Symbol.toStringTag,{value:"Module"});var bco=ooe();function Eco(e){return bco.isSymbol(e)?NaN:Number(e)}xzt.toNumber=Eco});var HSe=H(Gzt=>{"use strict";Object.defineProperty(Gzt,Symbol.toStringTag,{value:"Module"});var Sco=Q9();function vco(e){return e?(e=Sco.toNumber(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}Gzt.toFinite=vco});var $w=H(Fzt=>{"use strict";Object.defineProperty(Fzt,Symbol.toStringTag,{value:"Module"});var Bco=HSe();function wco(e){let t=Bco.toFinite(e),r=t%1;return r?t-r:t}Fzt.toInteger=wco});var Lzt=H(Zzt=>{"use strict";Object.defineProperty(Zzt,Symbol.toStringTag,{value:"Module"});var Tco=bTn(),Rco=SZ(),Nco=Sf(),Dco=$w();function kco(e,t=1,r){return Nco.isArrayLike(e)?(t=r?1:Dco.toInteger(t),Tco.drop(Rco.toArray(e),t)):[]}Zzt.drop=kco});var ETn=H(Vzt=>{"use strict";Object.defineProperty(Vzt,Symbol.toStringTag,{value:"Module"});function xco(e,t){return t=Math.min(-t,0),t===0?e.slice():e.slice(0,t)}Vzt.dropRight=xco});var Wzt=H(Pzt=>{"use strict";Object.defineProperty(Pzt,Symbol.toStringTag,{value:"Module"});var Gco=ETn(),Fco=SZ(),Zco=Sf(),Lco=$w();function Vco(e,t=1,r){return Zco.isArrayLike(e)?(t=r?1:Lco.toInteger(t),Gco.dropRight(Fco.toArray(e),t)):[]}Pzt.dropRight=Vco});var STn=H(Ozt=>{"use strict";Object.defineProperty(Ozt,Symbol.toStringTag,{value:"Module"});function Pco(e,t){for(let r=e.length-1;r>=0;r--)if(!t(e[r],r,e))return e.slice(0,r+1);return[]}Ozt.dropRightWhile=Pco});var Hzt=H(Mzt=>{"use strict";Object.defineProperty(Mzt,Symbol.toStringTag,{value:"Module"});var Rlt=STn(),Wco=bm(),Oco=nX(),Mco=Sf(),Hco=OK(),Yco=MK();function Qco(e,t=Wco.identity){return Mco.isArrayLike(e)?Xco(Array.from(e),t):[]}function Xco(e,t){switch(typeof t){case"function":return Rlt.dropRightWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return Rlt.dropRightWhile(e,Yco.matchesProperty(r,n))}else return Rlt.dropRightWhile(e,Hco.matches(t));case"symbol":case"number":case"string":return Rlt.dropRightWhile(e,Oco.property(t))}}Mzt.dropRightWhile=Qco});var vTn=H(Yzt=>{"use strict";Object.defineProperty(Yzt,Symbol.toStringTag,{value:"Module"});function Jco(e,t){let r=e.findIndex((n,a,o)=>!t(n,a,o));return r===-1?[]:e.slice(r)}Yzt.dropWhile=Jco});var Xzt=H(Qzt=>{"use strict";Object.defineProperty(Qzt,Symbol.toStringTag,{value:"Module"});var Nlt=vTn(),Uco=bm(),Kco=SZ(),jco=nX(),zco=Sf(),qco=OK(),$co=MK();function elo(e,t=Uco.identity){return zco.isArrayLike(e)?tlo(Kco.toArray(e),t):[]}function tlo(e,t){switch(typeof t){case"function":return Nlt.dropWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return Nlt.dropWhile(e,$co.matchesProperty(r,n))}else return Nlt.dropWhile(e,qco.matches(t));case"number":case"symbol":case"string":return Nlt.dropWhile(e,jco.property(t))}}Qzt.dropWhile=elo});var aoe=H(Jzt=>{"use strict";Object.defineProperty(Jzt,Symbol.toStringTag,{value:"Module"});function rlo(e,t,r=1){if(t==null&&(t=e,e=0),!Number.isInteger(r)||r===0)throw new Error("The step value must be a non-zero integer.");let n=Math.max(Math.ceil((t-e)/r),0),a=new Array(n);for(let o=0;o{"use strict";Object.defineProperty(Uzt,Symbol.toStringTag,{value:"Module"});var nlo=bm(),ilo=aoe(),slo=Sf();function olo(e,t=nlo.identity){if(!e)return e;let r=slo.isArrayLike(e)||Array.isArray(e)?ilo.range(0,e.length):Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(Kzt,Symbol.toStringTag,{value:"Module"});var alo=bm(),clo=aoe(),llo=Sf();function ulo(e,t=alo.identity){if(!e)return e;let r=llo.isArrayLike(e)?clo.range(0,e.length):Object.keys(e);for(let n=r.length-1;n>=0;n--){let a=r[n],o=e[a];if(t(o,a,e)===!1)break}return e}Kzt.forEachRight=ulo});var qq=H(zzt=>{"use strict";Object.defineProperty(zzt,Symbol.toStringTag,{value:"Module"});var glo=MSe(),Alo=Sf(),dlo=tM(),plo=Sk();function flo(e,t,r){return dlo.isObject(r)&&(typeof t=="number"&&Alo.isArrayLike(r)&&glo.isIndex(t)&&t{"use strict";Object.defineProperty(qzt,Symbol.toStringTag,{value:"Module"});var Ilo=bm(),hlo=qq(),mlo=nX(),Clo=Sf(),_lo=OK(),ylo=MK();function blo(e,t,r){if(!e)return!0;r&&hlo.isIterateeCall(e,t,r)&&(t=void 0),t||(t=Ilo.identity);let n;switch(typeof t){case"function":{n=t;break}case"object":{if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];n=ylo.matchesProperty(a,o)}else n=_lo.matches(t);break}case"symbol":case"number":case"string":n=mlo.property(t)}if(!Clo.isArrayLike(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(eqt,Symbol.toStringTag,{value:"Module"});function Elo(e,t,r=0,n=e.length){let a=e.length,o=Math.max(r>=0?r:a+r,0),l=Math.min(n>=0?n:a+n,a);for(let A=o;A{"use strict";Object.defineProperty(tqt,Symbol.toStringTag,{value:"Module"});function Slo(e){return typeof e=="string"||e instanceof String}tqt.isString=Slo});var nqt=H(rqt=>{"use strict";Object.defineProperty(rqt,Symbol.toStringTag,{value:"Module"});var vlo=BTn(),Blo=Sf(),wlo=YSe();function Tlo(e,t,r=0,n=e?e.length:0){return Blo.isArrayLike(e)?wlo.isString(e)?e:(r=Math.floor(r),n=Math.floor(n),r||(r=0),n||(n=0),vlo.fill(e,t,r,n)):[]}rqt.fill=Tlo});var klt=H(iqt=>{"use strict";Object.defineProperty(iqt,Symbol.toStringTag,{value:"Module"});var Rlo=bm(),Nlo=Sf(),Dlo=im();function klo(e,t=Rlo.identity){if(!e)return[];if(t=Dlo.iteratee(t),!Array.isArray(e)){let a=[],o=Object.keys(e),l=Nlo.isArrayLike(e)?e.length:o.length;for(let A=0;A{"use strict";Object.defineProperty(sqt,Symbol.toStringTag,{value:"Module"});var xlo=bm(),Glo=im();function Flo(e,t=xlo.identity,r=0){if(!e)return;r<0&&(r=Math.max(e.length+r,0));let n=Glo.iteratee(t);if(!Array.isArray(e)){let a=Object.keys(e);for(let o=r;o{"use strict";Object.defineProperty(aqt,Symbol.toStringTag,{value:"Module"});function Zlo(e){return e}aqt.identity=Zlo});var lqt=H(cqt=>{"use strict";Object.defineProperty(cqt,Symbol.toStringTag,{value:"Module"});var Llo=HK(),Vlo=nX(),Plo=OK(),Wlo=MK();function Olo(e,t=Llo.identity,r=0){if(!e)return-1;r<0&&(r=Math.max(e.length+r,0));let n=Array.from(e).slice(r),a=-1;switch(typeof t){case"function":{a=n.findIndex(t);break}case"object":{if(Array.isArray(t)&&t.length===2){let o=t[0],l=t[1];a=n.findIndex(Wlo.matchesProperty(o,l))}else a=n.findIndex(Plo.matches(t));break}case"number":case"symbol":case"string":a=n.findIndex(Vlo.property(t))}return a===-1?-1:a+r}cqt.findIndex=Olo});var gqt=H(uqt=>{"use strict";Object.defineProperty(uqt,Symbol.toStringTag,{value:"Module"});var Mlo=bm(),Hlo=im(),Ylo=$w();function Qlo(e,t=Mlo.identity,r){if(!e)return;let n=Array.isArray(e)?e.length:Object.keys(e).length;r=Ylo.toInteger(r??n-1),r<0?r=Math.max(n+r,0):r=Math.min(r,n-1);let a=Hlo.iteratee(t);if(!Array.isArray(e)){let o=Object.keys(e);for(let l=r;l>=0;l--){let A=o[l],f=e[A];if(a(f,A,e))return f}return}return e.slice(0,r+1).findLast(a)}uqt.findLast=Qlo});var dqt=H(Aqt=>{"use strict";Object.defineProperty(Aqt,Symbol.toStringTag,{value:"Module"});var Xlo=bm(),Jlo=SZ(),Ulo=nX(),Klo=OK(),jlo=MK();function zlo(e,t=Xlo.identity,r=e?e.length-1:0){if(!e)return-1;r<0?r=Math.max(e.length+r,0):r=Math.min(r,e.length-1);let n=Jlo.toArray(e).slice(0,r+1);switch(typeof t){case"function":return n.findLastIndex(t);case"object":if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];return n.findLastIndex(jlo.matchesProperty(a,o))}else return n.findLastIndex(Klo.matches(t));case"number":case"symbol":case"string":return n.findLastIndex(Ulo.property(t))}}Aqt.findLastIndex=zlo});var wTn=H(pqt=>{"use strict";Object.defineProperty(pqt,Symbol.toStringTag,{value:"Module"});function qlo(e){return e[0]}pqt.head=qlo});var Iqt=H(fqt=>{"use strict";Object.defineProperty(fqt,Symbol.toStringTag,{value:"Module"});var $lo=wTn(),euo=SZ(),tuo=Sf();function ruo(e){if(tuo.isArrayLike(e))return $lo.head(euo.toArray(e))}fqt.head=ruo});var Wfe=H(hqt=>{"use strict";Object.defineProperty(hqt,Symbol.toStringTag,{value:"Module"});var nuo=Sf();function iuo(e,t=1){let r=[],n=Math.floor(t);if(!nuo.isArrayLike(e))return r;let a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(mqt,Symbol.toStringTag,{value:"Module"});var suo=Wfe();function ouo(e,t=1){return suo.flatten(e,t)}mqt.flattenDepth=ouo});var D3e=H(Cqt=>{"use strict";Object.defineProperty(Cqt,Symbol.toStringTag,{value:"Module"});var auo=bm(),cuo=aoe(),luo=Sf(),uuo=im();function guo(e,t){if(!e)return[];let r=luo.isArrayLike(e)||Array.isArray(e)?cuo.range(0,e.length):Object.keys(e),n=uuo.iteratee(t??auo.identity),a=new Array(r.length);for(let o=0;o{"use strict";Object.defineProperty(_qt,Symbol.toStringTag,{value:"Module"});function Auo(e){return e==null}_qt.isNil=Auo});var bqt=H(yqt=>{"use strict";Object.defineProperty(yqt,Symbol.toStringTag,{value:"Module"});var duo=QSe(),TTn=D3e(),RTn=coe();function puo(e,t){if(RTn.isNil(e))return[];let r=RTn.isNil(t)?TTn.map(e):TTn.map(e,t);return duo.flattenDepth(r,1)}yqt.flatMap=puo});var k3e=H(Eqt=>{"use strict";Object.defineProperty(Eqt,Symbol.toStringTag,{value:"Module"});var fuo=Wfe(),Iuo=D3e(),huo=bm(),muo=im();function Cuo(e,t=huo.identity,r=1){if(e==null)return[];let n=muo.iteratee(t),a=Iuo.map(e,n);return fuo.flatten(a,r)}Eqt.flatMapDepth=Cuo});var vqt=H(Sqt=>{"use strict";Object.defineProperty(Sqt,Symbol.toStringTag,{value:"Module"});var _uo=k3e();function yuo(e,t){return _uo.flatMapDepth(e,t,1/0)}Sqt.flatMapDeep=yuo});var wqt=H(Bqt=>{"use strict";Object.defineProperty(Bqt,Symbol.toStringTag,{value:"Module"});var buo=QSe();function Euo(e){return buo.flattenDepth(e,1/0)}Bqt.flattenDeep=Euo});var NTn=H(Tqt=>{"use strict";Object.defineProperty(Tqt,Symbol.toStringTag,{value:"Module"});function Suo(e,t){let r={};for(let n=0;n{"use strict";Object.defineProperty(Rqt,Symbol.toStringTag,{value:"Module"});var vuo=NTn(),Buo=bm(),wuo=Sf(),Tuo=im();function Ruo(e,t){if(e==null)return{};let r=wuo.isArrayLike(e)?Array.from(e):Object.values(e),n=Tuo.iteratee(t??Buo.identity);return vuo.groupBy(r,n)}Rqt.groupBy=Ruo});var kqt=H(Dqt=>{"use strict";Object.defineProperty(Dqt,Symbol.toStringTag,{value:"Module"});var Nuo=YSe(),Duo=Sk(),kuo=$w();function xuo(e,t,r,n){if(e==null)return!1;if(n||!r?r=0:r=kuo.toInteger(r),Nuo.isString(e))return r>e.length||t instanceof RegExp?!1:(r<0&&(r=Math.max(0,e.length+r)),e.includes(t,r));if(Array.isArray(e))return e.includes(t,r);let a=Object.keys(e);r<0&&(r=Math.max(0,a.length+r));for(let o=r;o{"use strict";Object.defineProperty(xqt,Symbol.toStringTag,{value:"Module"});var Guo=Sf();function Fuo(e,t,r){if(!Guo.isArrayLike(e))return-1;if(Number.isNaN(t)){r=r??0,r<0&&(r=Math.max(0,e.length+r));for(let n=r;n{"use strict";Object.defineProperty(Fqt,Symbol.toStringTag,{value:"Module"});function Zuo(e){return e.slice(0,-1)}Fqt.initial=Zuo});var Lqt=H(Zqt=>{"use strict";Object.defineProperty(Zqt,Symbol.toStringTag,{value:"Module"});var Luo=DTn(),Vuo=Sf();function Puo(e){return Vuo.isArrayLike(e)?Luo.initial(Array.from(e)):[]}Zqt.initial=Puo});var kTn=H(Vqt=>{"use strict";Object.defineProperty(Vqt,Symbol.toStringTag,{value:"Module"});function Wuo(e,t){let r=new Set(t);return e.filter(n=>r.has(n))}Vqt.intersection=Wuo});var Ofe=H(Pqt=>{"use strict";Object.defineProperty(Pqt,Symbol.toStringTag,{value:"Module"});function Ouo(e){return[...new Set(e)]}Pqt.uniq=Ouo});var Oqt=H(Wqt=>{"use strict";Object.defineProperty(Wqt,Symbol.toStringTag,{value:"Module"});var Muo=kTn(),Huo=Ofe(),xTn=b2();function Yuo(...e){if(e.length===0)return[];if(!xTn.isArrayLikeObject(e[0]))return[];let t=Huo.uniq(Array.from(e[0]));for(let r=1;r{"use strict";Object.defineProperty(Mqt,Symbol.toStringTag,{value:"Module"});function Quo(e,t,r){let n=[],a=new Set(t.map(r));for(let o=0;o{"use strict";Object.defineProperty(Yqt,Symbol.toStringTag,{value:"Module"});var Hqt=GTn(),Xuo=R3e(),Juo=Ofe(),Uuo=bm(),Kuo=nX(),xlt=b2();function juo(e,...t){if(!xlt.isArrayLikeObject(e))return[];let r=Xuo.last(t);if(r===void 0)return Array.from(e);let n=Juo.uniq(Array.from(e)),a=xlt.isArrayLikeObject(r)?t.length:t.length-1;for(let o=0;or(A)):typeof r=="string"&&(n=Hqt.intersectionBy(n,Array.from(l),Kuo.property(r)))}return n}Yqt.intersectionBy=juo});var FTn=H(Qqt=>{"use strict";Object.defineProperty(Qqt,Symbol.toStringTag,{value:"Module"});function zuo(e,t,r){return e.filter(n=>t.some(a=>r(n,a)))}Qqt.intersectionWith=zuo});var x3e=H(Xqt=>{"use strict";Object.defineProperty(Xqt,Symbol.toStringTag,{value:"Module"});var quo=Ofe(),$uo=Sf();function ego(e){return $uo.isArrayLike(e)?quo.uniq(Array.from(e)):[]}Xqt.uniq=ego});var Flt=H(Jqt=>{"use strict";Object.defineProperty(Jqt,Symbol.toStringTag,{value:"Module"});var tgo=zq(),rgo=FTn(),ngo=x3e(),igo=Sk();function sgo(e,...t){if(e==null)return[];let r=tgo.last(t),n=igo.isEqualsSameValueZero,a=ngo.uniq;typeof r=="function"&&(n=r,a=ogo,t.pop());let o=a(Array.from(e));for(let l=0;l{"use strict";Object.defineProperty(Uqt,Symbol.toStringTag,{value:"Module"});function ago(e){return typeof e=="function"}Uqt.isFunction=ago});var zqt=H(jqt=>{"use strict";Object.defineProperty(jqt,Symbol.toStringTag,{value:"Module"});nzt();var cgo=loe(),lgo=coe(),Kqt=eM(),ugo=Sf();function ggo(e,t,...r){if(lgo.isNil(e))return[];let n=ugo.isArrayLike(e)?Array.from(e):Object.values(e),a=[];for(let o=0;o0&&(f=Kqt.get(l,I))}else if(typeof t=="string"&&t.includes(".")){let C=t.split(".").slice(0,-1).join(".");f=Kqt.get(l,C)}a.push(A?.apply(f,r))}return a}jqt.invokeMap=ggo});var $qt=H(qqt=>{"use strict";Object.defineProperty(qqt,Symbol.toStringTag,{value:"Module"});var Ago=Sf();function dgo(e,t){return Ago.isArrayLike(e)?Array.from(e).join(t):""}qqt.join=dgo});var Zlt=H(e$t=>{"use strict";Object.defineProperty(e$t,Symbol.toStringTag,{value:"Module"});var pgo=bm(),fgo=aoe(),Igo=Sf();function hgo(e,t=pgo.identity,r){if(!e)return r;let n,a=0;Igo.isArrayLike(e)?(n=fgo.range(0,e.length),r==null&&e.length>0&&(r=e[0],a+=1)):(n=Object.keys(e),r==null&&(r=e[n[0]],a+=1));for(let o=a;o{"use strict";Object.defineProperty(t$t,Symbol.toStringTag,{value:"Module"});var mgo=Zlt(),Cgo=bm(),_go=Sf(),ygo=soe(),bgo=im();function Ego(e,t){if(!_go.isArrayLike(e)&&!ygo.isObjectLike(e))return{};let r=bgo.iteratee(t??Cgo.identity);return mgo.reduce(e,(n,a)=>{let o=r(a);return n[o]=a,n},{})}t$t.keyBy=Ego});var i$t=H(n$t=>{"use strict";Object.defineProperty(n$t,Symbol.toStringTag,{value:"Module"});var Sgo=Sf();function vgo(e,t,r){if(!Sgo.isArrayLike(e)||e.length===0)return-1;let n=e.length,a=r??n-1;if(r!=null&&(a=a<0?Math.max(n+a,0):Math.min(a,n-1)),Number.isNaN(t)){for(let o=a;o>=0;o--)if(Number.isNaN(e[o]))return o}return Array.from(e).lastIndexOf(t,a)}n$t.lastIndexOf=vgo});var o$t=H(s$t=>{"use strict";Object.defineProperty(s$t,Symbol.toStringTag,{value:"Module"});var Bgo=b2(),wgo=$w();function Tgo(e,t=0){if(!(!Bgo.isArrayLikeObject(e)||e.length===0))return t=wgo.toInteger(t),t<0&&(t+=e.length),e[t]}s$t.nth=Tgo});var LTn=H(a$t=>{"use strict";Object.defineProperty(a$t,Symbol.toStringTag,{value:"Module"});function ZTn(e){return typeof e=="symbol"?1:e===null?2:e===void 0?3:e!==e?4:0}var Rgo=(e,t,r)=>{if(e!==t){let n=ZTn(e),a=ZTn(t);if(n===a&&n===0){if(et)return r==="desc"?-1:1}return r==="desc"?a-n:n-a}return 0};a$t.compareValues=Rgo});var G3e=H(c$t=>{"use strict";Object.defineProperty(c$t,Symbol.toStringTag,{value:"Module"});var Ngo=ooe(),Dgo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,kgo=/^\w*$/;function xgo(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||Ngo.isSymbol(e)?!0:typeof e=="string"&&(kgo.test(e)||!Dgo.test(e))||t!=null&&Object.hasOwn(t,e)}c$t.isKey=xgo});var Llt=H(l$t=>{"use strict";Object.defineProperty(l$t,Symbol.toStringTag,{value:"Module"});var Ggo=LTn(),Fgo=G3e(),Zgo=$5();function Lgo(e,t,r,n){if(e==null)return[];r=n?void 0:r,Array.isArray(e)||(e=Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(r)||(r=r==null?[]:[r]),r=r.map(f=>String(f));let a=(f,I)=>{let C=f;for(let b=0;bI==null||f==null?I:typeof f=="object"&&"key"in f?Object.hasOwn(I,f.key)?I[f.key]:a(I,f.path):typeof f=="function"?f(I):Array.isArray(f)?a(I,f):typeof I=="object"?I[f]:I,l=t.map(f=>(Array.isArray(f)&&f.length===1&&(f=f[0]),f==null||typeof f=="function"||Array.isArray(f)||Fgo.isKey(f)?f:{key:f,path:Zgo.toPath(f)}));return e.map(f=>({original:f,criteria:l.map(I=>o(I,f))})).slice().sort((f,I)=>{for(let C=0;Cf.original)}l$t.orderBy=Lgo});var g$t=H(u$t=>{"use strict";Object.defineProperty(u$t,Symbol.toStringTag,{value:"Module"});var Vgo=bm(),Pgo=Sf(),Wgo=im();function Ogo(e,t=Vgo.identity){if(!e)return[[],[]];let r=Pgo.isArrayLike(e)?e:Object.values(e);t=Wgo.iteratee(t);let n=[],a=[];for(let o=0;o{"use strict";Object.defineProperty(A$t,Symbol.toStringTag,{value:"Module"});function Mgo(e,t){let r=new Set(t),n=0;for(let a=0;a{"use strict";Object.defineProperty(p$t,Symbol.toStringTag,{value:"Module"});var Hgo=d$t();function Ygo(e,...t){return Hgo.pull(e,t)}p$t.pull=Ygo});var h$t=H(I$t=>{"use strict";Object.defineProperty(I$t,Symbol.toStringTag,{value:"Module"});var Qgo=d$t();function Xgo(e,t=[]){return Qgo.pull(e,Array.from(t))}I$t.pullAll=Xgo});var C$t=H(m$t=>{"use strict";Object.defineProperty(m$t,Symbol.toStringTag,{value:"Module"});var Jgo=im();function Ugo(e,t,r){let n=Jgo.iteratee(r),a=new Set(Array.from(t).map(l=>n(l))),o=0;for(let l=0;l{"use strict";function Kgo(e,t){let r=e.length;t==null&&(t=Array(r));for(let n=0;n{"use strict";Object.defineProperty(_$t,Symbol.toStringTag,{value:"Module"});var jgo=PTn(),zgo=Sk();function qgo(e,t,r){if(e?.length==null||t?.length==null)return e;e===t&&(t=jgo(t));let n=0;r==null&&(r=(l,A)=>zgo.isEqualsSameValueZero(l,A));let a=Array.isArray(t)?t:Array.from(t),o=a.includes(void 0);for(let l=0;lr(e[l],f))||(e[n++]=e[l]);continue}o||delete e[n++]}return e.length=n,e}_$t.pullAllWith=qgo});var Vlt=H(b$t=>{"use strict";Object.defineProperty(b$t,Symbol.toStringTag,{value:"Module"});var $go=eM(),eAo=Sf(),tAo=YSe();function rAo(e,...t){if(t.length===0)return[];let r=[];for(let a=0;a{"use strict";Object.defineProperty(S$t,Symbol.toStringTag,{value:"Module"});var nAo=eM(),E$t=_3e(),iAo=PSe(),sAo=Kq(),oAo=$5();function aAo(e,t){if(e==null)return!0;switch(typeof t){case"symbol":case"number":case"object":{if(Array.isArray(t))return WTn(e,t);if(typeof t=="number"?t=sAo.toKey(t):typeof t=="object"&&(Object.is(t?.valueOf(),-0)?t="-0":t=String(t)),E$t.isUnsafeProperty(t))return!1;if(e?.[t]===void 0)return!0;try{return delete e[t],!0}catch{return!1}}case"string":{if(e?.[t]===void 0&&iAo.isDeepKey(t))return WTn(e,oAo.toPath(t));if(E$t.isUnsafeProperty(t))return!1;try{return delete e[t],!0}catch{return!1}}}}function WTn(e,t){let r=t.length===1?e:nAo.get(e,t.slice(0,-1)),n=t[t.length-1];if(r?.[n]===void 0)return!0;if(E$t.isUnsafeProperty(n))return!1;try{return delete r[n],!0}catch{return!1}}S$t.unset=aAo});var $q=H(v$t=>{"use strict";Object.defineProperty(v$t,Symbol.toStringTag,{value:"Module"});function cAo(e){return Array.isArray(e)}v$t.isArray=cAo});var w$t=H(B$t=>{"use strict";Object.defineProperty(B$t,Symbol.toStringTag,{value:"Module"});var lAo=QSe(),OTn=MSe(),uAo=G3e(),gAo=Kq(),AAo=Vlt(),dAo=F3e(),pAo=$q(),fAo=$5();function IAo(e,...t){let r=lAo.flattenDepth(t,1);if(!e)return Array(r.length);let n=AAo.at(e,r),a=r.map(o=>OTn.isIndex(o,e.length)?Number(o):o).sort((o,l)=>l-o);for(let o of new Set(a)){if(OTn.isIndex(o,e.length)){Array.prototype.splice.call(e,o,1);continue}if(uAo.isKey(o,e)){delete e[gAo.toKey(o)];continue}let l=pAo.isArray(o)?o:fAo.toPath(o);dAo.unset(e,l)}return n}B$t.pullAt=IAo});var R$t=H(T$t=>{"use strict";Object.defineProperty(T$t,Symbol.toStringTag,{value:"Module"});var hAo=bm(),mAo=aoe(),CAo=Sf();function _Ao(e,t=hAo.identity,r){if(!e)return r;let n,a;CAo.isArrayLike(e)?(n=mAo.range(0,e.length).reverse(),r==null&&e.length>0?(r=e[e.length-1],a=1):a=0):(n=Object.keys(e).reverse(),r==null?(r=e[n[0]],a=1):a=0);for(let o=a;o{"use strict";Object.defineProperty(N$t,Symbol.toStringTag,{value:"Module"});function yAo(e){if(typeof e!="function")throw new TypeError("Expected a function");return function(...t){return!e.apply(this,t)}}N$t.negate=yAo});var k$t=H(D$t=>{"use strict";Object.defineProperty(D$t,Symbol.toStringTag,{value:"Module"});var bAo=klt(),EAo=bm(),SAo=Z3e(),vAo=im();function BAo(e,t=EAo.identity){return bAo.filter(e,SAo.negate(vAo.iteratee(t)))}D$t.reject=BAo});var MTn=H(x$t=>{"use strict";Object.defineProperty(x$t,Symbol.toStringTag,{value:"Module"});function wAo(e,t){let r=e.slice(),n=[],a=0;for(let o=0;o{"use strict";Object.defineProperty(G$t,Symbol.toStringTag,{value:"Module"});var TAo=MTn(),RAo=bm(),NAo=im();function DAo(e,t=RAo.identity){return TAo.remove(e,NAo.iteratee(t))}G$t.remove=DAo});var L$t=H(Z$t=>{"use strict";Object.defineProperty(Z$t,Symbol.toStringTag,{value:"Module"});function kAo(e){return e==null?e:e.reverse()}Z$t.reverse=kAo});var HTn=H(V$t=>{"use strict";Object.defineProperty(V$t,Symbol.toStringTag,{value:"Module"});function xAo(e){let t=Math.floor(Math.random()*e.length);return e[t]}V$t.sample=xAo});var W$t=H(P$t=>{"use strict";Object.defineProperty(P$t,Symbol.toStringTag,{value:"Module"});var YTn=HTn(),GAo=SZ(),FAo=Sf();function ZAo(e){if(e!=null)return FAo.isArrayLike(e)?YTn.sample(GAo.toArray(e)):YTn.sample(Object.values(e))}P$t.sample=ZAo});var M$t=H(O$t=>{"use strict";Object.defineProperty(O$t,Symbol.toStringTag,{value:"Module"});function LAo(e,t){if(t==null&&(t=e,e=0),e>=t)throw new Error("Invalid input: The maximum value must be greater than the minimum value.");return Math.random()*(t-e)+e}O$t.random=LAo});var Y$t=H(H$t=>{"use strict";Object.defineProperty(H$t,Symbol.toStringTag,{value:"Module"});var VAo=M$t();function PAo(e,t){return Math.floor(VAo.random(e,t))}H$t.randomInt=PAo});var QTn=H(Q$t=>{"use strict";Object.defineProperty(Q$t,Symbol.toStringTag,{value:"Module"});var WAo=Y$t();function OAo(e,t){if(t>e.length)throw new Error("Size must be less than or equal to the length of array.");let r=new Array(t),n=new Set;for(let a=e.length-t,o=0;a{"use strict";Object.defineProperty(X$t,Symbol.toStringTag,{value:"Module"});var XTn=Q9();function MAo(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=XTn.toNumber(r),e=Math.min(e,Number.isNaN(r)?0:r)),t!==void 0&&(t=XTn.toNumber(t),e=Math.max(e,Number.isNaN(t)?0:t)),e}X$t.clamp=MAo});var JTn=H(J$t=>{"use strict";Object.defineProperty(J$t,Symbol.toStringTag,{value:"Module"});function HAo(e){return e instanceof Map}J$t.isMap=HAo});var Plt=H(U$t=>{"use strict";Object.defineProperty(U$t,Symbol.toStringTag,{value:"Module"});var YAo=JTn();function QAo(e){return YAo.isMap(e)}U$t.isMap=QAo});var L3e=H(K$t=>{"use strict";Object.defineProperty(K$t,Symbol.toStringTag,{value:"Module"});var XAo=Sf(),JAo=Plt();function UAo(e){return e==null?[]:XAo.isArrayLike(e)||JAo.isMap(e)?Array.from(e):typeof e=="object"?Object.values(e):[]}K$t.toArray=UAo});var z$t=H(j$t=>{"use strict";Object.defineProperty(j$t,Symbol.toStringTag,{value:"Module"});var KAo=QTn(),jAo=qq(),zAo=Mfe(),qAo=L3e(),$Ao=$w();function edo(e,t,r){let n=qAo.toArray(e);return(r?jAo.isIterateeCall(e,t,r):t===void 0)?t=1:t=zAo.clamp($Ao.toInteger(t),0,n.length),KAo.sampleSize(n,t)}j$t.sampleSize=edo});var UTn=H(q$t=>{"use strict";Object.defineProperty(q$t,Symbol.toStringTag,{value:"Module"});function tdo(e){let t=e.slice();for(let r=t.length-1;r>=1;r--){let n=Math.floor(Math.random()*(r+1));[t[r],t[n]]=[t[n],t[r]]}return t}q$t.shuffle=tdo});var Wlt=H($$t=>{"use strict";Object.defineProperty($$t,Symbol.toStringTag,{value:"Module"});function rdo(e){return e==null?[]:Object.values(e)}$$t.values=rdo});var XSe=H(eer=>{"use strict";Object.defineProperty(eer,Symbol.toStringTag,{value:"Module"});function ndo(e){return e==null}eer.isNil=ndo});var ner=H(rer=>{"use strict";Object.defineProperty(rer,Symbol.toStringTag,{value:"Module"});var ter=UTn(),ido=Wlt(),sdo=$q(),odo=Sf(),ado=XSe(),cdo=soe();function ldo(e){return ado.isNil(e)?[]:sdo.isArray(e)?ter.shuffle(e):odo.isArrayLike(e)?ter.shuffle(Array.from(e)):cdo.isObjectLike(e)?ter.shuffle(ido.values(e)):[]}rer.shuffle=ldo});var ser=H(ier=>{"use strict";Object.defineProperty(ier,Symbol.toStringTag,{value:"Module"});var udo=coe();function gdo(e){return udo.isNil(e)?0:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}ier.size=gdo});var aer=H(oer=>{"use strict";Object.defineProperty(oer,Symbol.toStringTag,{value:"Module"});var Ado=qq(),ddo=Sf(),KTn=$w();function pdo(e,t,r){if(!ddo.isArrayLike(e))return[];let n=e.length;r===void 0?r=n:typeof r!="number"&&Ado.isIterateeCall(e,t,r)&&(t=0,r=n),t=KTn.toInteger(t),r=KTn.toInteger(r),t<0?t=Math.max(n+t,0):t=Math.min(t,n),r<0?r=Math.max(n+r,0):r=Math.min(r,n);let a=Math.max(r-t,0),o=new Array(a);for(let l=0;l{"use strict";Object.defineProperty(cer,Symbol.toStringTag,{value:"Module"});var fdo=bm(),Ido=nX(),hdo=OK(),mdo=MK();function Cdo(e,t,r){if(!e)return!1;r!=null&&(t=void 0),t==null&&(t=fdo.identity);let n=Array.isArray(e)?e:Object.values(e);switch(typeof t){case"function":{if(!Array.isArray(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(uer,Symbol.toStringTag,{value:"Module"});var _do=Llt(),ydo=C3e(),jTn=qq();function bdo(e,...t){let r=t.length;return r>1&&jTn.isIterateeCall(e,t[0],t[1])?t=[]:r>2&&jTn.isIterateeCall(t[0],t[1],t[2])&&(t=[t[0]]),_do.orderBy(e,ydo.flatten(t),["asc"])}uer.sortBy=bdo});var Olt=H(Aer=>{"use strict";Object.defineProperty(Aer,Symbol.toStringTag,{value:"Module"});function Edo(e){return e===null}Aer.isNull=Edo});var per=H(der=>{"use strict";Object.defineProperty(der,Symbol.toStringTag,{value:"Module"});function Sdo(e){return e===void 0}der.isUndefined=Sdo});var Mlt=H(fer=>{"use strict";Object.defineProperty(fer,Symbol.toStringTag,{value:"Module"});function vdo(e){return Number.isNaN(e)}fer.isNaN=vdo});var V3e=H(Ier=>{"use strict";Object.defineProperty(Ier,Symbol.toStringTag,{value:"Module"});var zTn=Olt(),qTn=per(),Bdo=HK(),$Tn=Mlt(),wdo=XSe(),eRn=ooe(),Tdo=im(),Rdo=4294967295,Ndo=Rdo-1;function Ddo(e,t,r=Bdo.identity,n){if(wdo.isNil(e)||e.length===0)return 0;let a=0,o=e.length,l=Tdo.iteratee(r),A=l(t),f=$Tn.isNaN(A),I=zTn.isNull(A),C=eRn.isSymbol(A),b=qTn.isUndefined(A);for(;a{"use strict";Object.defineProperty(her,Symbol.toStringTag,{value:"Module"});function kdo(e){return typeof e=="symbol"}her.isSymbol=kdo});var P3e=H(Cer=>{"use strict";Object.defineProperty(Cer,Symbol.toStringTag,{value:"Module"});function xdo(e){return typeof e=="number"||e instanceof Number}Cer.isNumber=xdo});var Hlt=H(_er=>{"use strict";Object.defineProperty(_er,Symbol.toStringTag,{value:"Module"});var Gdo=V3e(),Fdo=coe(),Zdo=Olt(),Ldo=mer(),Vdo=P3e(),Pdo=4294967295,Wdo=Pdo>>>1;function Odo(e,t){if(Fdo.isNil(e))return 0;let r=0,n=e.length;if(Vdo.isNumber(t)&&t===t&&n<=Wdo){for(;r>>1,o=e[a];!Zdo.isNull(o)&&!Ldo.isSymbol(o)&&oa)}_er.sortedIndex=Odo});var ber=H(yer=>{"use strict";Object.defineProperty(yer,Symbol.toStringTag,{value:"Module"});var Mdo=Hlt(),Hdo=Sk();function Ydo(e,t){if(!e?.length)return-1;let r=Mdo.sortedIndex(e,t);return r{"use strict";Object.defineProperty(Eer,Symbol.toStringTag,{value:"Module"});var Qdo=V3e();function Xdo(e,t,r){return Qdo.sortedIndexBy(e,t,r,!0)}Eer.sortedLastIndexBy=Xdo});var Qlt=H(Ser=>{"use strict";Object.defineProperty(Ser,Symbol.toStringTag,{value:"Module"});var Jdo=Ylt(),Udo=coe(),Kdo=Olt(),jdo=mer(),zdo=P3e(),qdo=4294967295,$do=qdo>>>1;function epo(e,t){if(Udo.isNil(e))return 0;let r=e.length;if(!zdo.isNumber(t)||Number.isNaN(t)||r>$do)return Jdo.sortedLastIndexBy(e,t,a=>a);let n=0;for(;n>>1,o=e[a];!Kdo.isNull(o)&&!jdo.isSymbol(o)&&o<=t?n=a+1:r=a}return r}Ser.sortedLastIndex=epo});var Ber=H(ver=>{"use strict";Object.defineProperty(ver,Symbol.toStringTag,{value:"Module"});var tpo=Qlt(),rpo=Sk();function npo(e,t){if(!e?.length)return-1;let r=tpo.sortedLastIndex(e,t)-1;return r>=0&&rpo.isEqualsSameValueZero(e[r],t)?r:-1}ver.sortedLastIndexOf=npo});var tRn=H(wer=>{"use strict";Object.defineProperty(wer,Symbol.toStringTag,{value:"Module"});function ipo(e){return e.slice(1)}wer.tail=ipo});var Rer=H(Ter=>{"use strict";Object.defineProperty(Ter,Symbol.toStringTag,{value:"Module"});var spo=tRn(),opo=SZ(),apo=Sf();function cpo(e){return apo.isArrayLike(e)?spo.tail(opo.toArray(e)):[]}Ter.tail=cpo});var rRn=H(Ner=>{"use strict";Object.defineProperty(Ner,Symbol.toStringTag,{value:"Module"});var lpo=$w();function upo(e,t,r){return t=r||t===void 0?1:lpo.toInteger(t),e.slice(0,t)}Ner.take=upo});var ker=H(Der=>{"use strict";Object.defineProperty(Der,Symbol.toStringTag,{value:"Module"});var gpo=rRn(),Apo=SZ(),dpo=Sf(),ppo=$w();function fpo(e,t=1,r){return t=r?1:ppo.toInteger(t),t<1||!dpo.isArrayLike(e)?[]:gpo.take(Apo.toArray(e),t)}Der.take=fpo});var nRn=H(xer=>{"use strict";Object.defineProperty(xer,Symbol.toStringTag,{value:"Module"});var Ipo=$w();function hpo(e,t,r){return t=r||t===void 0?1:Ipo.toInteger(t),t<=0||e.length===0?[]:e.slice(-t)}xer.takeRight=hpo});var Fer=H(Ger=>{"use strict";Object.defineProperty(Ger,Symbol.toStringTag,{value:"Module"});var mpo=nRn(),Cpo=SZ(),_po=Sf(),ypo=$w();function bpo(e,t=1,r){return t=r?1:ypo.toInteger(t),t<=0||!_po.isArrayLike(e)?[]:mpo.takeRight(Cpo.toArray(e),t)}Ger.takeRight=bpo});var iRn=H(Zer=>{"use strict";Object.defineProperty(Zer,Symbol.toStringTag,{value:"Module"});function Epo(e){return(...t)=>!e(...t)}Zer.negate=Epo});var Ver=H(Ler=>{"use strict";Object.defineProperty(Ler,Symbol.toStringTag,{value:"Module"});var Spo=bm(),vpo=iRn(),Bpo=SZ(),wpo=b2(),Tpo=im();function Rpo(e,t){if(!wpo.isArrayLikeObject(e))return[];let r=Bpo.toArray(e),n=r.findLastIndex(vpo.negate(Tpo.iteratee(t??Spo.identity)));return r.slice(n+1)}Ler.takeRightWhile=Rpo});var Wer=H(Per=>{"use strict";Object.defineProperty(Per,Symbol.toStringTag,{value:"Module"});var Npo=SZ(),Dpo=HK(),kpo=Z3e(),xpo=b2(),Gpo=im();function Fpo(e,t){if(!xpo.isArrayLikeObject(e))return[];let r=Npo.toArray(e),n=r.findIndex(kpo.negate(Gpo.iteratee(t??Dpo.identity)));return n===-1?r:r.slice(0,n)}Per.takeWhile=Fpo});var Mer=H(Oer=>{"use strict";Object.defineProperty(Oer,Symbol.toStringTag,{value:"Module"});var Zpo=k3e(),Lpo=Ofe(),Vpo=b2();function Ppo(...e){let t=e.filter(Vpo.isArrayLikeObject),r=Zpo.flatMapDepth(t,n=>Array.from(n),1);return Lpo.uniq(r)}Oer.union=Ppo});var Yer=H(Her=>{"use strict";Object.defineProperty(Her,Symbol.toStringTag,{value:"Module"});function Wpo(e,t){let r=new Map;for(let n=0;n{"use strict";Object.defineProperty(Qer,Symbol.toStringTag,{value:"Module"});function Opo(e,t){return function(...r){return e.apply(this,r.slice(0,t))}}Qer.ary=Opo});var Jlt=H(Xer=>{"use strict";Object.defineProperty(Xer,Symbol.toStringTag,{value:"Module"});var Mpo=R3e(),Hpo=Ofe(),Ypo=Yer(),Qpo=Xlt(),Xpo=N3e(),Jpo=b2(),Upo=im();function Kpo(...e){let t=Mpo.last(e),r=Xpo.flattenArrayLike(e);return Jpo.isArrayLikeObject(t)||t==null?Hpo.uniq(r):Ypo.uniqBy(r,Qpo.ary(Upo.iteratee(t),1))}Xer.unionBy=Kpo});var Uer=H(Jer=>{"use strict";Object.defineProperty(Jer,Symbol.toStringTag,{value:"Module"});function jpo(e,t){let r=[];for(let n=0;n!t(l,a))&&r.push(a)}return r}Jer.uniqWith=jpo});var Ult=H(Ker=>{"use strict";Object.defineProperty(Ker,Symbol.toStringTag,{value:"Module"});var zpo=R3e(),qpo=Ofe(),$po=Uer(),efo=N3e(),tfo=b2();function rfo(...e){let t=zpo.last(e),r=efo.flattenArrayLike(e);return tfo.isArrayLikeObject(t)||t==null?qpo.uniq(r):$po.uniqWith(r,t)}Ker.unionWith=rfo});var zer=H(jer=>{"use strict";Object.defineProperty(jer,Symbol.toStringTag,{value:"Module"});var nfo=Yer(),ifo=Xlt(),sfo=bm(),ofo=b2(),afo=im();function cfo(e,t=sfo.identity){return ofo.isArrayLikeObject(e)?nfo.uniqBy(Array.from(e),ifo.ary(afo.iteratee(t),1)):[]}jer.uniqBy=cfo});var $er=H(qer=>{"use strict";Object.defineProperty(qer,Symbol.toStringTag,{value:"Module"});var lfo=Uer(),ufo=x3e(),gfo=Sf();function Afo(e,t){return gfo.isArrayLike(e)?typeof t=="function"?lfo.uniqWith(Array.from(e),t):ufo.uniq(Array.from(e)):[]}qer.uniqWith=Afo});var ttr=H(etr=>{"use strict";Object.defineProperty(etr,Symbol.toStringTag,{value:"Module"});function dfo(e){let t=0;for(let n=0;nt&&(t=e[n].length);let r=new Array(t);for(let n=0;n{"use strict";Object.defineProperty(rtr,Symbol.toStringTag,{value:"Module"});var pfo=ttr(),ffo=$q(),sRn=b2();function Ifo(e){return!sRn.isArrayLikeObject(e)||!e.length?[]:(e=ffo.isArray(e)?e:Array.from(e),e=e.filter(t=>sRn.isArrayLikeObject(t)),pfo.unzip(e))}rtr.unzip=Ifo});var itr=H(ntr=>{"use strict";Object.defineProperty(ntr,Symbol.toStringTag,{value:"Module"});var oRn=ttr(),hfo=$q(),mfo=b2();function Cfo(e,t){if(!mfo.isArrayLikeObject(e)||!e.length)return[];let r=hfo.isArray(e)?oRn.unzip(e):oRn.unzip(Array.from(e,a=>Array.from(a)));if(!t)return r;let n=new Array(r.length);for(let a=0;a{"use strict";Object.defineProperty(str,Symbol.toStringTag,{value:"Module"});var _fo=T3e();function yfo(e,...t){return _fo.difference(e,t)}str.without=yfo});var atr=H(otr=>{"use strict";Object.defineProperty(otr,Symbol.toStringTag,{value:"Module"});var bfo=aRn(),Efo=b2();function Sfo(e,...t){return Efo.isArrayLikeObject(e)?bfo.without(Array.from(e),...t):[]}otr.without=Sfo});var ltr=H(ctr=>{"use strict";Object.defineProperty(ctr,Symbol.toStringTag,{value:"Module"});var vfo=b2(),Bfo=L3e();function wfo(...e){let t=new Map;for(let n=0;n{"use strict";Object.defineProperty(utr,Symbol.toStringTag,{value:"Module"});function Tfo(e,t,r=1,{partialWindows:n=!1}={}){if(t<=0||!Number.isInteger(t))throw new Error("Size must be a positive integer.");if(r<=0||!Number.isInteger(r))throw new Error("Step must be a positive integer.");let a=[],o=n?e.length:e.length-t+1;for(let l=0;l{"use strict";Object.defineProperty(Atr,Symbol.toStringTag,{value:"Module"});var Rfo=wlt(),Nfo=Glt(),Dfo=zq(),cRn=Jlt(),kfo=gtr(),xfo=bm(),lRn=b2(),Gfo=im();function Ffo(...e){let t=Dfo.last(e),r=xfo.identity;!lRn.isArrayLikeObject(t)&&t!=null&&(r=Gfo.iteratee(t),e=e.slice(0,-1));let n=e.filter(lRn.isArrayLikeObject),a=cRn.unionBy(...n,r),o=kfo.windowed(n,2).map(([l,A])=>Nfo.intersectionBy(l,A,r));return Rfo.differenceBy(a,cRn.unionBy(...o,r),r)}Atr.xorBy=Ffo});var Itr=H(ftr=>{"use strict";Object.defineProperty(ftr,Symbol.toStringTag,{value:"Module"});var Zfo=Tlt(),Lfo=Flt(),Vfo=zq(),uRn=Ult(),Pfo=gtr(),Wfo=b2();function Ofo(...e){let t=Vfo.last(e),r=(l,A)=>l===A;typeof t=="function"&&(r=t,e=e.slice(0,-1));let n=e.filter(Wfo.isArrayLikeObject),a=uRn.unionWith(...n,r),o=Pfo.windowed(n,2).map(([l,A])=>Lfo.intersectionWith(l,A,r));return Zfo.differenceWith(a,uRn.unionWith(...o,r),r)}ftr.xorWith=Ofo});var mtr=H(htr=>{"use strict";Object.defineProperty(htr,Symbol.toStringTag,{value:"Module"});function Mfo(...e){let t=0;for(let a=0;at&&(t=e[a].length);let r=e.length,n=Array(t);for(let a=0;a{"use strict";Object.defineProperty(Ctr,Symbol.toStringTag,{value:"Module"});var Hfo=mtr(),Yfo=b2();function Qfo(...e){return e.length?Hfo.zip(...e.filter(t=>Yfo.isArrayLikeObject(t))):[]}Ctr.zip=Qfo});var jlt=H(ytr=>{"use strict";Object.defineProperty(ytr,Symbol.toStringTag,{value:"Module"});var Xfo=Sk(),Jfo=(e,t,r)=>{let n=e[t];(!(Object.hasOwn(e,t)&&Xfo.isEqualsSameValueZero(n,r))||r===void 0&&!(t in e))&&(e[t]=r)};ytr.assignValue=Jfo});var Etr=H(btr=>{"use strict";Object.defineProperty(btr,Symbol.toStringTag,{value:"Module"});var Ufo=jlt();function Kfo(e=[],t=[]){let r={};for(let n=0;n{"use strict";Object.defineProperty(Str,Symbol.toStringTag,{value:"Module"});var jfo=eM(),zfo=_3e(),qfo=jlt(),$fo=MSe(),eIo=G3e(),tIo=Kq(),gRn=tM(),rIo=$5();function nIo(e,t,r,n){if(e==null&&!gRn.isObject(e))return e;let a;eIo.isKey(t,e)?a=[t]:Array.isArray(t)?a=t:a=rIo.toPath(t);let o=r(jfo.get(e,a)),l=e;for(let A=0;A{"use strict";Object.defineProperty(vtr,Symbol.toStringTag,{value:"Module"});var iIo=JSe();function sIo(e,t,r){return iIo.updateWith(e,t,()=>r,()=>{})}vtr.set=sIo});var wtr=H(Btr=>{"use strict";Object.defineProperty(Btr,Symbol.toStringTag,{value:"Module"});var oIo=mtr(),aIo=W3e(),ARn=Sf();function cIo(e,t){let r={};if(!ARn.isArrayLike(e))return r;ARn.isArrayLike(t)||(t=[]);let n=oIo.zip(Array.from(e),Array.from(t));for(let a=0;a{"use strict";Object.defineProperty(Ttr,Symbol.toStringTag,{value:"Module"});var lIo=Klt(),uIo=loe();function gIo(...e){let t=e.pop();if(uIo.isFunction(t)||(e.push(t),t=void 0),!e?.length)return[];let r=lIo.unzip(e);return t==null?r:r.map(n=>t(...n))}Ttr.zipWith=gIo});var Dtr=H(Ntr=>{"use strict";Object.defineProperty(Ntr,Symbol.toStringTag,{value:"Module"});var AIo=$w();function dIo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");return e=AIo.toInteger(e),function(...r){if(--e<1)return t.apply(this,r)}}Ntr.after=dIo});var zlt=H(ktr=>{"use strict";Object.defineProperty(ktr,Symbol.toStringTag,{value:"Module"});var pIo=Xlt();function fIo(e,t=e.length,r){return r&&(t=e.length),(Number.isNaN(t)||t<0)&&(t=0),pIo.ary(e,t)}ktr.ary=fIo});var qlt=H(xtr=>{"use strict";Object.defineProperty(xtr,Symbol.toStringTag,{value:"Module"});function IIo(e,...t){try{return e(...t)}catch(r){return r instanceof Error?r:new Error(r)}}xtr.attempt=IIo});var Ftr=H(Gtr=>{"use strict";Object.defineProperty(Gtr,Symbol.toStringTag,{value:"Module"});var hIo=$w();function mIo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");let r;return e=hIo.toInteger(e),function(...n){return--e>0&&(r=t.apply(this,n)),e<=1&&t&&(t=void 0),r}}Gtr.before=mIo});var Vtr=H(Ltr=>{"use strict";Object.defineProperty(Ltr,Symbol.toStringTag,{value:"Module"});function Ztr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Wtr,Symbol.toStringTag,{value:"Module"});function Ptr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Htr,Symbol.toStringTag,{value:"Module"});function O3e(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===O3e.placeholder),l=a.length-o.length;return lA===O3e.placeholder),l=a.length-o.length;return a=yIo(a,r),l{"use strict";Object.defineProperty(Xtr,Symbol.toStringTag,{value:"Module"});function USe(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===USe.placeholder),l=a.length-o.length;return lA===USe.placeholder),l=a.length-o.length;return a=bIo(a,r),ll===USe.placeholder).length,n=Math.max(e.length-r,0),a=[],o=0;for(let l=0;l{"use strict";Object.defineProperty(Utr,Symbol.toStringTag,{value:"Module"});function EIo(e,t,{signal:r,edges:n}={}){let a,o=null,l=n!=null&&n.includes("leading"),A=n==null||n.includes("trailing"),f=()=>{o!==null&&(e.apply(a,o),a=void 0,o=null)},I=()=>{A&&f(),N()},C=null,b=()=>{C!=null&&clearTimeout(C),C=setTimeout(()=>{C=null,I()},t)},E=()=>{C!==null&&(clearTimeout(C),C=null)},N=()=>{E(),a=void 0,o=null},B=()=>{f()},F=function(...Q){if(r?.aborted)return;a=this,o=Q;let X=C==null;b(),l&&X&&f()};return F.schedule=b,F.cancel=N,F.flush=B,r?.addEventListener("abort",N,{once:!0}),F}Utr.debounce=EIo});var $lt=H(Ktr=>{"use strict";Object.defineProperty(Ktr,Symbol.toStringTag,{value:"Module"});var SIo=fRn();function vIo(e,t=0,r={}){typeof r!="object"&&(r={});let{leading:n=!1,trailing:a=!0,maxWait:o}=r,l=Array(2);n&&(l[0]="leading"),a&&(l[1]="trailing");let A,f=null,I=SIo.debounce(function(...E){A=e.apply(this,E),f=null},t,{edges:l}),C=function(...E){return o!=null&&(f===null&&(f=Date.now()),Date.now()-f>=o)?(A=e.apply(this,E),f=Date.now(),I.cancel(),I.schedule(),A):(I.apply(this,E),A)},b=()=>(I.flush(),A);return C.cancel=I.cancel,C.flush=b,C}Ktr.debounce=vIo});var ztr=H(jtr=>{"use strict";Object.defineProperty(jtr,Symbol.toStringTag,{value:"Module"});function BIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,1,...t)}jtr.defer=BIo});var $tr=H(qtr=>{"use strict";Object.defineProperty(qtr,Symbol.toStringTag,{value:"Module"});var wIo=Q9();function TIo(e,t,...r){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,wIo.toNumber(t)||0,...r)}qtr.delay=TIo});var rrr=H(trr=>{"use strict";Object.defineProperty(trr,Symbol.toStringTag,{value:"Module"});function RIo(e){return function(...t){return e.apply(this,t.reverse())}}trr.flip=RIo});var irr=H(nrr=>{"use strict";Object.defineProperty(nrr,Symbol.toStringTag,{value:"Module"});function NIo(...e){return function(...t){let r=e.length?e[0].apply(this,t):t[0];for(let n=1;n{"use strict";Object.defineProperty(srr,Symbol.toStringTag,{value:"Module"});var DIo=C3e(),kIo=irr();function xIo(...e){let t=DIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return kIo.flow(...t)}srr.flow=xIo});var IRn=H(arr=>{"use strict";Object.defineProperty(arr,Symbol.toStringTag,{value:"Module"});var GIo=irr();function FIo(...e){return GIo.flow(...e.reverse())}arr.flowRight=FIo});var lrr=H(crr=>{"use strict";Object.defineProperty(crr,Symbol.toStringTag,{value:"Module"});var ZIo=C3e(),LIo=IRn();function VIo(...e){let t=ZIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return LIo.flowRight(...t)}crr.flowRight=VIo});var Arr=H(grr=>{"use strict";Object.defineProperty(grr,Symbol.toStringTag,{value:"Module"});function urr(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError("Expected a function");let r=function(...a){let o=t?t.apply(this,a):a[0],l=r.cache;if(l.has(o))return l.get(o);let A=e.apply(this,a);return r.cache=l.set(o,A)||l,A},n=urr.Cache||Map;return r.cache=new n,r}urr.Cache=Map;grr.memoize=urr});var prr=H(drr=>{"use strict";Object.defineProperty(drr,Symbol.toStringTag,{value:"Module"});var PIo=$w();function WIo(e=0){return function(...t){return t.at(PIo.toInteger(e))}}drr.nthArg=WIo});var hRn=H(frr=>{"use strict";Object.defineProperty(frr,Symbol.toStringTag,{value:"Module"});function OIo(e){let t=!1,r;return function(...n){return t||(t=!0,r=e(...n)),r}}frr.once=OIo});var hrr=H(Irr=>{"use strict";Object.defineProperty(Irr,Symbol.toStringTag,{value:"Module"});var MIo=hRn();function HIo(e){return MIo.once(e)}Irr.once=HIo});var Crr=H(mrr=>{"use strict";Object.defineProperty(mrr,Symbol.toStringTag,{value:"Module"});var YIo=bm(),QIo=im();function XIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");let r=t.flat();return function(...n){let a=Math.min(n.length,r.length),o=[...n];for(let l=0;l{"use strict";Object.defineProperty(eut,Symbol.toStringTag,{value:"Module"});function mRn(e,...t){return CRn(e,_Rn,...t)}function CRn(e,t,...r){let n=function(...a){let o=0,l=r.slice().map(f=>f===t?a[o++]:f),A=a.slice(o);return e.apply(this,l.concat(A))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var _Rn=Symbol("partial.placeholder");mRn.placeholder=_Rn;eut.partial=mRn;eut.partialImpl=CRn});var brr=H(yrr=>{"use strict";Object.defineProperty(yrr,Symbol.toStringTag,{value:"Module"});var JIo=yRn();function _rr(e,...t){return JIo.partialImpl(e,_rr.placeholder,...t)}_rr.placeholder=Symbol("compat.partial.placeholder");yrr.partial=_rr});var vRn=H(tut=>{"use strict";Object.defineProperty(tut,Symbol.toStringTag,{value:"Module"});function bRn(e,...t){return ERn(e,SRn,...t)}function ERn(e,t,...r){let n=function(...a){let o=r.filter(C=>C===t).length,l=Math.max(a.length-o,0),A=a.slice(0,l),f=l,I=r.slice().map(C=>C===t?a[f++]:C);return e.apply(this,A.concat(I))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var SRn=Symbol("partialRight.placeholder");bRn.placeholder=SRn;tut.partialRight=bRn;tut.partialRightImpl=ERn});var vrr=H(Srr=>{"use strict";Object.defineProperty(Srr,Symbol.toStringTag,{value:"Module"});var UIo=vRn();function Err(e,...t){return UIo.partialRightImpl(e,Err.placeholder,...t)}Err.placeholder=Symbol("compat.partialRight.placeholder");Srr.partialRight=Err});var wrr=H(Brr=>{"use strict";Object.defineProperty(Brr,Symbol.toStringTag,{value:"Module"});var KIo=Wfe();function jIo(e,...t){let r=KIo.flatten(t);return function(...n){let a=r.map(o=>n[o]).slice(0,n.length);for(let o=a.length;o{"use strict";Object.defineProperty(Trr,Symbol.toStringTag,{value:"Module"});function zIo(e,t=e.length-1){return function(...r){let n=r.slice(t),a=r.slice(0,t);for(;a.length{"use strict";Object.defineProperty(Rrr,Symbol.toStringTag,{value:"Module"});var qIo=BRn();function $Io(e,t=e.length-1){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=e.length-1),qIo.rest(e,t)}Rrr.rest=$Io});var krr=H(Drr=>{"use strict";Object.defineProperty(Drr,Symbol.toStringTag,{value:"Module"});function eho(e,t=0){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=0),function(...r){let n=r[t],a=r.slice(0,t);return n&&a.push(...n),e.apply(this,a)}}Drr.spread=eho});var Grr=H(xrr=>{"use strict";Object.defineProperty(xrr,Symbol.toStringTag,{value:"Module"});var tho=$lt();function rho(e,t=0,r={}){let{leading:n=!0,trailing:a=!0}=r;return tho.debounce(e,t,{leading:n,maxWait:t,trailing:a})}xrr.throttle=rho});var Zrr=H(Frr=>{"use strict";Object.defineProperty(Frr,Symbol.toStringTag,{value:"Module"});var nho=zlt();function iho(e){return nho.ary(e,1)}Frr.unary=iho});var Vrr=H(Lrr=>{"use strict";Object.defineProperty(Lrr,Symbol.toStringTag,{value:"Module"});var sho=bm(),oho=loe();function aho(e,t){return function(...r){return(oho.isFunction(t)?t:sho.identity).apply(this,[e,...r])}}Lrr.wrap=aho});var Wrr=H(Prr=>{"use strict";Object.defineProperty(Prr,Symbol.toStringTag,{value:"Module"});var wRn=Q9(),TRn=qy();function cho(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=TRn.toString(e),t=TRn.toString(t)):(e=wRn.toNumber(e),t=wRn.toNumber(t)),e+t)}Prr.add=cho});var rut=H(Orr=>{"use strict";Object.defineProperty(Orr,Symbol.toStringTag,{value:"Module"});function lho(e,t,r=0){if(t=Number(t),Object.is(t,-0)&&(t="-0"),r=Math.min(Number.parseInt(r,10),292),r){let[n,a=0]=t.toString().split("e"),o=Math[e](+`${n}e${Number(a)+r}`);Object.is(o,-0)&&(o="-0");let[l,A=0]=o.toString().split("e");return+`${l}e${Number(A)-r}`}return Math[e](Number(t))}Orr.decimalAdjust=lho});var Hrr=H(Mrr=>{"use strict";Object.defineProperty(Mrr,Symbol.toStringTag,{value:"Module"});var uho=rut();function gho(e,t=0){return uho.decimalAdjust("ceil",e,t)}Mrr.ceil=gho});var Qrr=H(Yrr=>{"use strict";Object.defineProperty(Yrr,Symbol.toStringTag,{value:"Module"});var RRn=Q9(),NRn=qy();function Aho(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=NRn.toString(e),t=NRn.toString(t)):(e=RRn.toNumber(e),t=RRn.toNumber(t)),e/t)}Yrr.divide=Aho});var Jrr=H(Xrr=>{"use strict";Object.defineProperty(Xrr,Symbol.toStringTag,{value:"Module"});var dho=rut();function pho(e,t=0){return dho.decimalAdjust("floor",e,t)}Xrr.floor=pho});var DRn=H(Urr=>{"use strict";Object.defineProperty(Urr,Symbol.toStringTag,{value:"Module"});function fho(e,t,r){if(r==null&&(r=t,t=0),t>=r)throw new Error("The maximum value must be greater than the minimum value.");return t<=e&&e{"use strict";Object.defineProperty(Krr,Symbol.toStringTag,{value:"Module"});var Iho=DRn();function hho(e,t,r){return t||(t=0),r!=null&&!r&&(r=0),t!=null&&typeof t!="number"&&(t=Number(t)),r==null&&t===0||(r!=null&&typeof r!="number"&&(r=Number(r)),r!=null&&t>r&&([t,r]=[r,t]),t===r)?!1:Iho.inRange(e,t,r)}Krr.inRange=hho});var qrr=H(zrr=>{"use strict";Object.defineProperty(zrr,Symbol.toStringTag,{value:"Module"});function mho(e){if(!e||e.length===0)return;let t;for(let r=0;rt)&&(t=n)}return t}zrr.max=mho});var kRn=H($rr=>{"use strict";Object.defineProperty($rr,Symbol.toStringTag,{value:"Module"});function Cho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;an&&(n=l,r=o)}return r}$rr.maxBy=Cho});var tnr=H(enr=>{"use strict";Object.defineProperty(enr,Symbol.toStringTag,{value:"Module"});var _ho=kRn(),yho=bm(),bho=im();function Eho(e,t){if(e!=null)return _ho.maxBy(Array.from(e),bho.iteratee(t??yho.identity))}enr.maxBy=Eho});var nut=H(rnr=>{"use strict";Object.defineProperty(rnr,Symbol.toStringTag,{value:"Module"});var Sho=im();function vho(e,t){if(!e||!e.length)return 0;t!=null&&(t=Sho.iteratee(t));let r;for(let n=0;n{"use strict";Object.defineProperty(nnr,Symbol.toStringTag,{value:"Module"});var Bho=nut();function who(e){return Bho.sumBy(e)}nnr.sum=who});var snr=H(inr=>{"use strict";Object.defineProperty(inr,Symbol.toStringTag,{value:"Module"});var Tho=iut();function Rho(e){let t=e?e.length:0;return t===0?NaN:Tho.sum(e)/t}inr.mean=Rho});var xRn=H(onr=>{"use strict";Object.defineProperty(onr,Symbol.toStringTag,{value:"Module"});function Nho(e,t){let r=0;for(let n=0;n{"use strict";Object.defineProperty(anr,Symbol.toStringTag,{value:"Module"});var Dho=xRn();function kho(e,t){return Dho.sumBy(e,r=>t(r))/e.length}anr.meanBy=kho});var lnr=H(cnr=>{"use strict";Object.defineProperty(cnr,Symbol.toStringTag,{value:"Module"});var xho=bm(),Gho=GRn(),Fho=im();function Zho(e,t){return e==null?NaN:Gho.meanBy(Array.from(e),Fho.iteratee(t??xho.identity))}cnr.meanBy=Zho});var gnr=H(unr=>{"use strict";Object.defineProperty(unr,Symbol.toStringTag,{value:"Module"});function Lho(e){if(!e||e.length===0)return;let t;for(let r=0;r{"use strict";Object.defineProperty(Anr,Symbol.toStringTag,{value:"Module"});function Vho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;a{"use strict";Object.defineProperty(dnr,Symbol.toStringTag,{value:"Module"});var Pho=FRn(),Who=bm(),Oho=im();function Mho(e,t){if(e!=null)return Pho.minBy(Array.from(e),Oho.iteratee(t??Who.identity))}dnr.minBy=Mho});var Inr=H(fnr=>{"use strict";Object.defineProperty(fnr,Symbol.toStringTag,{value:"Module"});var ZRn=Q9(),LRn=qy();function Hho(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=LRn.toString(e),t=LRn.toString(t)):(e=ZRn.toNumber(e),t=ZRn.toNumber(t)),e*t)}fnr.multiply=Hho});var mnr=H(hnr=>{"use strict";Object.defineProperty(hnr,Symbol.toStringTag,{value:"Module"});function Yho(e,t=0,r){return r&&(t=0),Number.parseInt(e,t)}hnr.parseInt=Yho});var _nr=H(Cnr=>{"use strict";Object.defineProperty(Cnr,Symbol.toStringTag,{value:"Module"});var VRn=Mfe(),Qho=M$t(),Xho=Y$t();function Jho(...e){let t=0,r=1,n=!1;switch(e.length){case 1:{typeof e[0]=="boolean"?n=e[0]:r=e[0];break}case 2:typeof e[1]=="boolean"?(r=e[0],n=e[1]):(t=e[0],r=e[1]);case 3:typeof e[2]=="object"&&e[2]!=null&&e[2][e[1]]===e[0]?(t=0,r=e[0],n=!1):(t=e[0],r=e[1],n=e[2])}return typeof t!="number"&&(t=Number(t)),typeof r!="number"&&(t=Number(r)),t||(t=0),r||(r=0),t>r&&([t,r]=[r,t]),t=VRn.clamp(t,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),r=VRn.clamp(r,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),t===r?t:n?Qho.random(t,r+1):Xho.randomInt(t,r+1)}Cnr.random=Jho});var Enr=H(bnr=>{"use strict";Object.defineProperty(bnr,Symbol.toStringTag,{value:"Module"});var Uho=qq(),ynr=HSe();function Kho(e,t,r){r&&typeof r!="number"&&Uho.isIterateeCall(e,t,r)&&(t=r=void 0),e=ynr.toFinite(e),t===void 0?(t=e,e=0):t=ynr.toFinite(t),r=r===void 0?e{"use strict";Object.defineProperty(vnr,Symbol.toStringTag,{value:"Module"});var jho=qq(),Snr=HSe();function zho(e,t,r){r&&typeof r!="number"&&jho.isIterateeCall(e,t,r)&&(t=r=void 0),e=Snr.toFinite(e),t===void 0?(t=e,e=0):t=Snr.toFinite(t),r=r===void 0?e=0;o--)a[o]=e,e+=r;return a}vnr.rangeRight=zho});var Tnr=H(wnr=>{"use strict";Object.defineProperty(wnr,Symbol.toStringTag,{value:"Module"});var qho=rut();function $ho(e,t=0){return qho.decimalAdjust("round",e,t)}wnr.round=$ho});var Nnr=H(Rnr=>{"use strict";Object.defineProperty(Rnr,Symbol.toStringTag,{value:"Module"});var PRn=Q9(),WRn=qy();function emo(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=WRn.toString(e),t=WRn.toString(t)):(e=PRn.toNumber(e),t=PRn.toNumber(t)),e-t)}Rnr.subtract=emo});var ORn=H(Dnr=>{"use strict";Object.defineProperty(Dnr,Symbol.toStringTag,{value:"Module"});function tmo(e){if(!e||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}Dnr.isPlainObject=tmo});var xnr=H(knr=>{"use strict";Object.defineProperty(knr,Symbol.toStringTag,{value:"Module"});var MRn=ioe(),HRn=ORn(),YRn=b3e(),QRn=Lfe(),hy=E3e(),rmo=Sk();function nmo(e,t,r){return M3e(e,t,void 0,void 0,void 0,void 0,r)}function M3e(e,t,r,n,a,o,l){let A=l(e,t,r,n,a,o);if(A!==void 0)return A;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return H3e(e,t,o,l)}return H3e(e,t,o,l)}function H3e(e,t,r,n){if(Object.is(e,t))return!0;let a=QRn.getTag(e),o=QRn.getTag(t);if(a===hy.argumentsTag&&(a=hy.objectTag),o===hy.argumentsTag&&(o=hy.objectTag),a!==o)return!1;switch(a){case hy.stringTag:return e.toString()===t.toString();case hy.numberTag:{let f=e.valueOf(),I=t.valueOf();return rmo.isEqualsSameValueZero(f,I)}case hy.booleanTag:case hy.dateTag:case hy.symbolTag:return Object.is(e.valueOf(),t.valueOf());case hy.regexpTag:return e.source===t.source&&e.flags===t.flags;case hy.functionTag:return e===t}r=r??new Map;let l=r.get(e),A=r.get(t);if(l!=null&&A!=null)return l===t;r.set(e,t),r.set(t,e);try{switch(a){case hy.mapTag:{if(e.size!==t.size)return!1;for(let[f,I]of e.entries())if(!t.has(f)||!M3e(I,t.get(f),f,e,t,r,n))return!1;return!0}case hy.setTag:{if(e.size!==t.size)return!1;let f=Array.from(e.values()),I=Array.from(t.values());for(let C=0;CM3e(b,N,void 0,e,t,r,n));if(E===-1)return!1;I.splice(E,1)}return!0}case hy.arrayTag:case hy.uint8ArrayTag:case hy.uint8ClampedArrayTag:case hy.uint16ArrayTag:case hy.uint32ArrayTag:case hy.bigUint64ArrayTag:case hy.int8ArrayTag:case hy.int16ArrayTag:case hy.int32ArrayTag:case hy.bigInt64ArrayTag:case hy.float32ArrayTag:case hy.float64ArrayTag:{if(MRn.isBuffer(e)!==MRn.isBuffer(t)||e.length!==t.length)return!1;for(let f=0;f{"use strict";Object.defineProperty(Gnr,Symbol.toStringTag,{value:"Module"});function imo(){}Gnr.noop=imo});var Lnr=H(Znr=>{"use strict";Object.defineProperty(Znr,Symbol.toStringTag,{value:"Module"});var smo=xnr(),omo=Fnr();function amo(e,t){return smo.isEqualWith(e,t,omo.noop)}Znr.isEqual=amo});var Pnr=H(Vnr=>{"use strict";Object.defineProperty(Vnr,Symbol.toStringTag,{value:"Module"});function cmo(...e){}Vnr.noop=cmo});var sut=H(Wnr=>{"use strict";Object.defineProperty(Wnr,Symbol.toStringTag,{value:"Module"});function lmo(e){let t=e?.constructor,r=typeof t=="function"?t.prototype:Object.prototype;return e===r}Wnr.isPrototype=lmo});var e$=H(Onr=>{"use strict";Object.defineProperty(Onr,Symbol.toStringTag,{value:"Module"});var umo=vlt();function gmo(e){return umo.isTypedArray(e)}Onr.isTypedArray=gmo});var Y3e=H(Mnr=>{"use strict";Object.defineProperty(Mnr,Symbol.toStringTag,{value:"Module"});var Amo=$w();function dmo(e,t){if(e=Amo.toInteger(e),e<1||!Number.isSafeInteger(e))return[];let r=new Array(e);for(let n=0;n{"use strict";Object.defineProperty(Hnr,Symbol.toStringTag,{value:"Module"});var pmo=ioe(),fmo=sut(),Imo=Sf(),hmo=e$(),mmo=Y3e();function Cmo(e){if(Imo.isArrayLike(e))return _mo(e);let t=Object.keys(Object(e));return fmo.isPrototype(e)?t.filter(r=>r!=="constructor"):t}function _mo(e){let t=mmo.times(e.length,a=>`${a}`),r=new Set(t);pmo.isBuffer(e)&&(r.add("offset"),r.add("parent")),hmo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=Object.keys(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}Hnr.keys=Cmo});var Qnr=H(Ynr=>{"use strict";Object.defineProperty(Ynr,Symbol.toStringTag,{value:"Module"});var ymo=YK(),bmo=Sk();function Emo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(Xnr,Symbol.toStringTag,{value:"Module"});var vmo=ioe(),Bmo=sut(),wmo=Sf(),Tmo=e$(),Rmo=Y3e();function Nmo(e){if(e==null)return[];switch(typeof e){case"object":case"function":return wmo.isArrayLike(e)?kmo(e):Bmo.isPrototype(e)?Dmo(e):out(e);default:return out(Object(e))}}function out(e){let t=[];for(let r in e)t.push(r);return t}function Dmo(e){return out(e).filter(r=>r!=="constructor")}function kmo(e){let t=Rmo.times(e.length,a=>`${a}`),r=new Set(t);vmo.isBuffer(e)&&(r.add("offset"),r.add("parent")),Tmo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=out(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}Xnr.keysIn=Nmo});var Unr=H(Jnr=>{"use strict";Object.defineProperty(Jnr,Symbol.toStringTag,{value:"Module"});var xmo=iX(),Gmo=Sk();function Fmo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(Knr,Symbol.toStringTag,{value:"Module"});var Lmo=iX(),Vmo=Sk();function Pmo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(znr,Symbol.toStringTag,{value:"Module"});var Omo=YK(),Mmo=Sk();function Hmo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(eir,Symbol.toStringTag,{value:"Module"});var Qmo=WSe(),XRn=Lfe(),KC=E3e(),Xmo=$q(),Jmo=e$();function Umo(e){if(Qmo.isPrimitive(e))return e;let t=XRn.getTag(e);if(!Kmo(e))return{};if(Xmo.isArray(e)){let n=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(n.index=e.index,n.input=e.input),n}if(Jmo.isTypedArray(e)){let n=e,a=n.constructor;return new a(n.buffer,n.byteOffset,n.length)}if(t===KC.arrayBufferTag)return new ArrayBuffer(e.byteLength);if(t===KC.dataViewTag){let n=e,a=n.buffer,o=n.byteOffset,l=n.byteLength,A=new ArrayBuffer(l),f=new Uint8Array(a,o,l);return new Uint8Array(A).set(f),new DataView(A)}if(t===KC.booleanTag||t===KC.numberTag||t===KC.stringTag){let n=e.constructor,a=new n(e.valueOf());return t===KC.stringTag?zmo(a,e):$nr(a,e),a}if(t===KC.dateTag)return new Date(Number(e));if(t===KC.regexpTag){let n=e,a=new RegExp(n.source,n.flags);return a.lastIndex=n.lastIndex,a}if(t===KC.symbolTag)return Object(Symbol.prototype.valueOf.call(e));if(t===KC.mapTag){let n=e,a=new Map;return n.forEach((o,l)=>{a.set(l,o)}),a}if(t===KC.setTag){let n=e,a=new Set;return n.forEach(o=>{a.add(o)}),a}if(t===KC.argumentsTag){let n=e,a={};return $nr(a,n),a.length=n.length,a[Symbol.iterator]=n[Symbol.iterator],a}let r={};return qmo(r,e),$nr(r,e),jmo(r,e),r}function Kmo(e){switch(XRn.getTag(e)){case KC.argumentsTag:case KC.arrayTag:case KC.arrayBufferTag:case KC.dataViewTag:case KC.booleanTag:case KC.dateTag:case KC.float32ArrayTag:case KC.float64ArrayTag:case KC.int8ArrayTag:case KC.int16ArrayTag:case KC.int32ArrayTag:case KC.mapTag:case KC.numberTag:case KC.objectTag:case KC.regexpTag:case KC.setTag:case KC.stringTag:case KC.symbolTag:case KC.uint8ArrayTag:case KC.uint8ClampedArrayTag:case KC.uint16ArrayTag:case KC.uint32ArrayTag:return!0;default:return!1}}function $nr(e,t){for(let r in t)Object.hasOwn(t,r)&&(e[r]=t[r])}function jmo(e,t){let r=Object.getOwnPropertySymbols(t);for(let n=0;n=r)&&(e[n]=t[n])}function qmo(e,t){let r=Object.getPrototypeOf(t);r!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,r)}eir.clone=Umo});var rir=H(tir=>{"use strict";Object.defineProperty(tir,Symbol.toStringTag,{value:"Module"});var JRn=aut();function $mo(e,t){if(!t)return JRn.clone(e);let r=t(e);return r!==void 0?r:JRn.clone(e)}tir.cloneWith=$mo});var iir=H(nir=>{"use strict";Object.defineProperty(nir,Symbol.toStringTag,{value:"Module"});var eCo=YK(),tCo=jlt(),rCo=tM();function nCo(e,t){let r=rCo.isObject(e)?Object.create(e):{};if(t!=null){let n=eCo.keys(t);for(let a=0;a{"use strict";Object.defineProperty(sir,Symbol.toStringTag,{value:"Module"});var iCo=coe(),sCo=qq(),oCo=Sk();function aCo(e,...t){e=Object(e);let r=Object.prototype,n=t.length,a=n>2?t[2]:void 0;a&&sCo.isIterateeCall(t[0],t[1],a)&&(n=1);for(let o=0;o{"use strict";Object.defineProperty(oir,Symbol.toStringTag,{value:"Module"});function cCo(e){if(typeof e!="object"||e==null)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!=="[object Object]"){let r=e[Symbol.toStringTag];return r==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${r}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}oir.isPlainObject=cCo});var cir=H(air=>{"use strict";Object.defineProperty(air,Symbol.toStringTag,{value:"Module"});var X3e=Hfe();function lCo(e,...t){e=Object(e);for(let r=0;r{"use strict";Object.defineProperty(lir,Symbol.toStringTag,{value:"Module"});function dCo(e,t){return Object.keys(e).find(n=>t(e[n],n,e))}lir.findKey=dCo});var gir=H(uir=>{"use strict";Object.defineProperty(uir,Symbol.toStringTag,{value:"Module"});var pCo=URn(),fCo=HK(),ICo=tM(),hCo=im();function mCo(e,t){if(!ICo.isObject(e))return;let r=hCo.iteratee(t??fCo.identity);return pCo.findKey(e,r)}uir.findKey=mCo});var dir=H(Air=>{"use strict";Object.defineProperty(Air,Symbol.toStringTag,{value:"Module"});var CCo=HK(),_Co=tM(),yCo=im();function bCo(e,t){if(!_Co.isObject(e))return;let r=yCo.iteratee(t??CCo.identity);return Object.keys(e).findLast(a=>r(e[a],a,e))}Air.findLastKey=bCo});var fir=H(pir=>{"use strict";Object.defineProperty(pir,Symbol.toStringTag,{value:"Module"});var ECo=bm();function SCo(e,t=ECo.identity){if(e==null)return e;for(let r in e)if(t(e[r],r,e)===!1)break;return e}pir.forIn=SCo});var hir=H(Iir=>{"use strict";Object.defineProperty(Iir,Symbol.toStringTag,{value:"Module"});var vCo=bm();function BCo(e,t=vCo.identity){if(e==null)return e;let r=[];for(let n in e)r.push(n);for(let n=r.length-1;n>=0;n--){let a=r[n];if(t(e[a],a,e)===!1)break}return e}Iir.forInRight=BCo});var Cir=H(mir=>{"use strict";Object.defineProperty(mir,Symbol.toStringTag,{value:"Module"});var wCo=YK(),TCo=bm();function RCo(e,t=TCo.identity){if(e==null)return e;let r=Object(e),n=wCo.keys(e);for(let a=0;a{"use strict";Object.defineProperty(_ir,Symbol.toStringTag,{value:"Module"});var NCo=YK(),DCo=bm();function kCo(e,t=DCo.identity){if(e==null)return e;let r=Object(e),n=NCo.keys(e);for(let a=n.length-1;a>=0;--a){let o=n[a];if(t(r[o],o,r)===!1)break}return e}_ir.forOwnRight=kCo});var Eir=H(bir=>{"use strict";Object.defineProperty(bir,Symbol.toStringTag,{value:"Module"});var xCo=Sf();function GCo(e){if(!xCo.isArrayLike(e))return{};let t={};for(let r=0;r{"use strict";Object.defineProperty(Sir,Symbol.toStringTag,{value:"Module"});var FCo=YK();function ZCo(e){return e==null?[]:FCo.keys(e).filter(t=>typeof e[t]=="function")}Sir.functions=ZCo});var wir=H(Bir=>{"use strict";Object.defineProperty(Bir,Symbol.toStringTag,{value:"Module"});var LCo=loe();function VCo(e){if(e==null)return[];let t=[];for(let r in e)LCo.isFunction(e[r])&&t.push(r);return t}Bir.functionsIn=VCo});var Rir=H(Tir=>{"use strict";Object.defineProperty(Tir,Symbol.toStringTag,{value:"Module"});var PCo=PSe(),WCo=MSe(),OCo=Pfe(),MCo=$5();function HCo(e,t){if(e==null)return!1;let r;if(Array.isArray(t)?r=t:typeof t=="string"&&PCo.isDeepKey(t)&&e[t]==null?r=MCo.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Nir,Symbol.toStringTag,{value:"Module"});function YCo(e){let t={},r=Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(Dir,Symbol.toStringTag,{value:"Module"});var QCo=KRn();function XCo(e){return QCo.invert(e)}Dir.invert=XCo});var Gir=H(xir=>{"use strict";Object.defineProperty(xir,Symbol.toStringTag,{value:"Module"});var JCo=bm(),UCo=coe(),KCo=im();function jCo(e,t){let r={};if(UCo.isNil(e))return r;t==null&&(t=JCo.identity);let n=Object.keys(e),a=KCo.iteratee(t);for(let o=0;o{"use strict";Object.defineProperty(Fir,Symbol.toStringTag,{value:"Module"});function zCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Zir,Symbol.toStringTag,{value:"Module"});var qCo=bm(),$Co=jRn(),e_o=im();function t_o(e,t=qCo.identity){return e==null?{}:$Co.mapKeys(e,e_o.iteratee(t))}Zir.mapKeys=t_o});var zRn=H(Vir=>{"use strict";Object.defineProperty(Vir,Symbol.toStringTag,{value:"Module"});function r_o(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Pir,Symbol.toStringTag,{value:"Module"});var n_o=bm(),i_o=zRn(),s_o=im();function o_o(e,t=n_o.identity){return e==null?{}:i_o.mapValues(e,s_o.iteratee(t))}Pir.mapValues=o_o});var qRn=H(Oir=>{"use strict";Object.defineProperty(Oir,Symbol.toStringTag,{value:"Module"});var a_o=WSe(),c_o=vlt();function l_o(e){if(a_o.isPrimitive(e))return e;if(Array.isArray(e)||c_o.isTypedArray(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){let n=new r(e);return n.lastIndex=e.lastIndex,n}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let n;return e instanceof AggregateError?n=new r(e.errors,e.message,{cause:e.cause}):n=new r(e.message,{cause:e.cause}),n.stack=e.stack,Object.assign(n,e),n}if(typeof File<"u"&&e instanceof File)return new r([e],e.name,{type:e.type,lastModified:e.lastModified});if(typeof e=="object"){let n=Object.create(t);return Object.assign(n,e)}return e}Oir.clone=l_o});var uut=H(Yir=>{"use strict";Object.defineProperty(Yir,Symbol.toStringTag,{value:"Module"});var $Rn=OSe(),u_o=_3e(),g_o=qRn(),A_o=ioe(),d_o=WSe(),p_o=b3e(),eNn=Pfe(),f_o=b2(),tNn=soe(),Mir=Hfe(),Hir=e$();function I_o(e,...t){let r=t.slice(0,-1),n=t[t.length-1],a=e;for(let o=0;o{"use strict";Object.defineProperty(Qir,Symbol.toStringTag,{value:"Module"});var h_o=uut(),m_o=Fnr();function C_o(e,...t){return h_o.mergeWith(e,...t,m_o.noop)}Qir.merge=C_o});var gut=H(Jir=>{"use strict";Object.defineProperty(Jir,Symbol.toStringTag,{value:"Module"});var __o=b3e();function y_o(e){let t=[];for(;e;)t.push(...__o.getSymbols(e)),e=Object.getPrototypeOf(e);return t}Jir.getSymbolsIn=y_o});var Kir=H(Uir=>{"use strict";Object.defineProperty(Uir,Symbol.toStringTag,{value:"Module"});var b_o=B3e(),nNn=iX(),rNn=F3e(),iNn=gut(),E_o=PSe(),S_o=Wfe(),v_o=Hfe();function B_o(e,...t){if(e==null)return{};t=S_o.flatten(t);let r=w_o(e,t);for(let n=0;nArray.isArray(n)||E_o.isDeepKey(n))?R_o(e):T_o(e)}function T_o(e){let t={},r=[...nNn.keysIn(e),...iNn.getSymbolsIn(e)];for(let n=0;n{if(!v_o.isPlainObject(o))return o})}return t}Uir.omit=B_o});var zir=H(jir=>{"use strict";Object.defineProperty(jir,Symbol.toStringTag,{value:"Module"});var N_o=iX(),D_o=aoe(),k_o=gut(),x_o=HK(),G_o=Sf(),F_o=ooe(),Z_o=im();function L_o(e,t){if(e==null)return{};let r={},n=Z_o.iteratee(t??x_o.identity),a=G_o.isArrayLike(e)?D_o.range(0,e.length):[...N_o.keysIn(e),...k_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(qir,Symbol.toStringTag,{value:"Module"});var V_o=eM(),P_o=w3e(),W_o=W3e(),O_o=Sf(),M_o=XSe();function H_o(e,...t){if(M_o.isNil(e))return{};let r={};for(let n=0;n{"use strict";Object.defineProperty(esr,Symbol.toStringTag,{value:"Module"});var Y_o=iX(),Q_o=aoe(),X_o=gut(),J_o=HK(),U_o=Sf(),K_o=ooe(),j_o=im();function z_o(e,t){if(e==null)return{};let r=j_o.iteratee(t??J_o.identity),n={},a=U_o.isArrayLike(e)?Q_o.range(0,e.length):[...Y_o.keysIn(e),...X_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(rsr,Symbol.toStringTag,{value:"Module"});var q_o=eM();function $_o(e){return function(t){return q_o.get(e,t)}}rsr.propertyOf=$_o});var ssr=H(isr=>{"use strict";Object.defineProperty(isr,Symbol.toStringTag,{value:"Module"});var e0o=G3e(),t0o=Kq(),r0o=$5(),n0o=qy();function i0o(e,t,r){e0o.isKey(t,e)?t=[t]:Array.isArray(t)||(t=r0o.toPath(n0o.toString(t)));let n=Math.max(t.length,1);for(let a=0;a{"use strict";Object.defineProperty(osr,Symbol.toStringTag,{value:"Module"});var s0o=JSe();function o0o(e,t,r,n){let a;return typeof n=="function"?a=n:a=()=>{},s0o.updateWith(e,t,()=>r,a)}osr.setWith=o0o});var lsr=H(csr=>{"use strict";Object.defineProperty(csr,Symbol.toStringTag,{value:"Module"});var a0o=OSe(),c0o=Q3e();function l0o(e,...t){let r=a0o.cloneDeep(e);return c0o.defaults(r,...t)}csr.toDefaulted=l0o});var gsr=H(usr=>{"use strict";Object.defineProperty(usr,Symbol.toStringTag,{value:"Module"});function u0o(e){let t=new Array(e.size),r=e.keys(),n=e.values();for(let a=0;a{"use strict";Object.defineProperty(Asr,Symbol.toStringTag,{value:"Module"});function g0o(e){let t=new Array(e.size),r=e.values();for(let n=0;n{"use strict";Object.defineProperty(psr,Symbol.toStringTag,{value:"Module"});var A0o=YK(),d0o=gsr(),p0o=dsr();function f0o(e){if(e==null)return[];if(e instanceof Set)return p0o.setToEntries(e);if(e instanceof Map)return d0o.mapToEntries(e);let t=A0o.keys(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Isr,Symbol.toStringTag,{value:"Module"});var I0o=iX(),h0o=gsr(),m0o=dsr();function C0o(e){if(e==null)return[];if(e instanceof Set)return m0o.setToEntries(e);if(e instanceof Map)return h0o.mapToEntries(e);let t=I0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(msr,Symbol.toStringTag,{value:"Module"});var _0o=ioe();function y0o(e){return _0o.isBuffer(e)}msr.isBuffer=y0o});var _sr=H(Csr=>{"use strict";Object.defineProperty(Csr,Symbol.toStringTag,{value:"Module"});var b0o=bm(),E0o=loe(),S0o=Dlt(),v0o=Aut(),B0o=tM(),w0o=e$(),T0o=im();function R0o(e,t=b0o.identity,r){let n=Array.isArray(e)||v0o.isBuffer(e)||w0o.isTypedArray(e);return t=T0o.iteratee(t),r==null&&(n?r=[]:B0o.isObject(e)&&E0o.isFunction(e.constructor)?r=Object.create(Object.getPrototypeOf(e)):r={}),e==null||S0o.forEach(e,(a,o,l)=>t(r,a,o,l)),r}Csr.transform=R0o});var bsr=H(ysr=>{"use strict";Object.defineProperty(ysr,Symbol.toStringTag,{value:"Module"});var N0o=JSe();function D0o(e,t,r){return N0o.updateWith(e,t,r,()=>{})}ysr.update=D0o});var Ssr=H(Esr=>{"use strict";Object.defineProperty(Esr,Symbol.toStringTag,{value:"Module"});var k0o=iX();function x0o(e){let t=k0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(vsr,Symbol.toStringTag,{value:"Module"});function G0o(e){return typeof e=="function"}vsr.isFunction=G0o});var Tsr=H(wsr=>{"use strict";Object.defineProperty(wsr,Symbol.toStringTag,{value:"Module"});function F0o(e){return Number.isSafeInteger(e)&&e>=0}wsr.isLength=F0o});var Nsr=H(Rsr=>{"use strict";Object.defineProperty(Rsr,Symbol.toStringTag,{value:"Module"});var sNn=Function.prototype.toString,Z0o=/[\\^$.*+?()[\]{}|]/g,L0o=RegExp(`^${sNn.call(Object.prototype.hasOwnProperty).replace(Z0o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")}$`);function V0o(e){if(typeof e!="function")return!1;if(globalThis?.["__core-js_shared__"]!=null)throw new Error("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return L0o.test(sNn.call(e))}Rsr.isNative=V0o});var ksr=H(Dsr=>{"use strict";Object.defineProperty(Dsr,Symbol.toStringTag,{value:"Module"});function P0o(e){return e===null}Dsr.isNull=P0o});var Gsr=H(xsr=>{"use strict";Object.defineProperty(xsr,Symbol.toStringTag,{value:"Module"});var W0o=per();function O0o(e){return W0o.isUndefined(e)}xsr.isUndefined=O0o});var dut=H(Fsr=>{"use strict";Object.defineProperty(Fsr,Symbol.toStringTag,{value:"Module"});function M0o(e,t){if(t==null)return!0;if(e==null)return Object.keys(t).length===0;let r=Object.keys(t);for(let n=0;n{"use strict";Object.defineProperty(Zsr,Symbol.toStringTag,{value:"Module"});var H0o=dut(),Y0o=czt();function Q0o(e){return e=Y0o.cloneDeep(e),function(t){return H0o.conformsTo(t,e)}}Zsr.conforms=Q0o});var oNn=H(Vsr=>{"use strict";Object.defineProperty(Vsr,Symbol.toStringTag,{value:"Module"});function X0o(e){return e instanceof ArrayBuffer}Vsr.isArrayBuffer=X0o});var Wsr=H(Psr=>{"use strict";Object.defineProperty(Psr,Symbol.toStringTag,{value:"Module"});var J0o=oNn();function U0o(e){return J0o.isArrayBuffer(e)}Psr.isArrayBuffer=U0o});var Msr=H(Osr=>{"use strict";Object.defineProperty(Osr,Symbol.toStringTag,{value:"Module"});function K0o(e){return typeof e=="boolean"||e instanceof Boolean}Osr.isBoolean=K0o});var aNn=H(Hsr=>{"use strict";Object.defineProperty(Hsr,Symbol.toStringTag,{value:"Module"});function j0o(e){return e instanceof Date}Hsr.isDate=j0o});var Qsr=H(Ysr=>{"use strict";Object.defineProperty(Ysr,Symbol.toStringTag,{value:"Module"});var z0o=aNn();function q0o(e){return z0o.isDate(e)}Ysr.isDate=q0o});var Jsr=H(Xsr=>{"use strict";Object.defineProperty(Xsr,Symbol.toStringTag,{value:"Module"});var $0o=soe(),eyo=Hfe();function tyo(e){return $0o.isObjectLike(e)&&e.nodeType===1&&!eyo.isPlainObject(e)}Xsr.isElement=tyo});var Ksr=H(Usr=>{"use strict";Object.defineProperty(Usr,Symbol.toStringTag,{value:"Module"});var ryo=Pfe(),nyo=Sf(),iyo=e$(),syo=ioe(),oyo=sut();function ayo(e){if(e==null)return!0;if(nyo.isArrayLike(e))return typeof e.splice!="function"&&typeof e!="string"&&!syo.isBuffer(e)&&!iyo.isTypedArray(e)&&!ryo.isArguments(e)?!1:e.length===0;if(typeof e=="object"){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return oyo.isPrototype(e)?t.filter(r=>r!=="constructor").length===0:t.length===0}return!0}Usr.isEmpty=ayo});var cNn=H(jsr=>{"use strict";Object.defineProperty(jsr,Symbol.toStringTag,{value:"Module"});function cyo(e,t){if(!Number.isInteger(e)||e<0)throw new Error("n must be a non-negative integer.");let r=0;return(...n)=>{if(++r>=e)return t(...n)}}jsr.after=cyo});var $sr=H(qsr=>{"use strict";Object.defineProperty(qsr,Symbol.toStringTag,{value:"Module"});var lNn=cNn(),lyo=xnr();function zsr(e,t,r){return typeof r!="function"&&(r=()=>{}),lyo.isEqualWith(e,t,(...n)=>{let a=r(...n);if(a!==void 0)return!!a;if(e instanceof Map&&t instanceof Map||e instanceof Set&&t instanceof Set)return zsr(Array.from(e),Array.from(t),lNn.after(2,r))})}qsr.isEqualWith=zsr});var tor=H(eor=>{"use strict";Object.defineProperty(eor,Symbol.toStringTag,{value:"Module"});var uyo=Lfe();function gyo(e){return uyo.getTag(e)==="[object Error]"}eor.isError=gyo});var nor=H(ror=>{"use strict";Object.defineProperty(ror,Symbol.toStringTag,{value:"Module"});function Ayo(e){return Number.isFinite(e)}ror.isFinite=Ayo});var sor=H(ior=>{"use strict";Object.defineProperty(ior,Symbol.toStringTag,{value:"Module"});function dyo(e){return Number.isInteger(e)}ior.isInteger=dyo});var uNn=H(oor=>{"use strict";Object.defineProperty(oor,Symbol.toStringTag,{value:"Module"});function pyo(e){return e instanceof RegExp}oor.isRegExp=pyo});var cor=H(aor=>{"use strict";Object.defineProperty(aor,Symbol.toStringTag,{value:"Module"});var fyo=uNn();function Iyo(e){return fyo.isRegExp(e)}aor.isRegExp=Iyo});var uor=H(lor=>{"use strict";Object.defineProperty(lor,Symbol.toStringTag,{value:"Module"});function hyo(e){return Number.isSafeInteger(e)}lor.isSafeInteger=hyo});var gNn=H(gor=>{"use strict";Object.defineProperty(gor,Symbol.toStringTag,{value:"Module"});function myo(e){return e instanceof Set}gor.isSet=myo});var dor=H(Aor=>{"use strict";Object.defineProperty(Aor,Symbol.toStringTag,{value:"Module"});var Cyo=gNn();function _yo(e){return Cyo.isSet(e)}Aor.isSet=_yo});var ANn=H(por=>{"use strict";Object.defineProperty(por,Symbol.toStringTag,{value:"Module"});function yyo(e){return e instanceof WeakMap}por.isWeakMap=yyo});var hor=H(Ior=>{"use strict";Object.defineProperty(Ior,Symbol.toStringTag,{value:"Module"});var byo=ANn();function Eyo(e){return byo.isWeakMap(e)}Ior.isWeakMap=Eyo});var dNn=H(mor=>{"use strict";Object.defineProperty(mor,Symbol.toStringTag,{value:"Module"});function Syo(e){return e instanceof WeakSet}mor.isWeakSet=Syo});var _or=H(Cor=>{"use strict";Object.defineProperty(Cor,Symbol.toStringTag,{value:"Module"});var vyo=dNn();function Byo(e){return vyo.isWeakSet(e)}Cor.isWeakSet=Byo});var bor=H(yor=>{"use strict";Object.defineProperty(yor,Symbol.toStringTag,{value:"Module"});function wyo(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}yor.capitalize=wyo});var Sor=H(Eor=>{"use strict";Object.defineProperty(Eor,Symbol.toStringTag,{value:"Module"});var Tyo=bor(),Ryo=qy();function Nyo(e){return Tyo.capitalize(Ryo.toString(e))}Eor.capitalize=Nyo});var Bor=H(vor=>{"use strict";Object.defineProperty(vor,Symbol.toStringTag,{value:"Module"});var Dyo=loe(),pNn=$q(),kyo=tM(),xyo=qy();function Gyo(e,...t){if(e==null||!kyo.isObject(e)||pNn.isArray(e)&&t.length===0)return e;let r=[];for(let n=0;n{"use strict";Object.defineProperty(wor,Symbol.toStringTag,{value:"Module"});var Fyo=new Map([["\xC6","Ae"],["\xD0","D"],["\xD8","O"],["\xDE","Th"],["\xDF","ss"],["\xE6","ae"],["\xF0","d"],["\xF8","o"],["\xFE","th"],["\u0110","D"],["\u0111","d"],["\u0126","H"],["\u0127","h"],["\u0131","i"],["\u0132","IJ"],["\u0133","ij"],["\u0138","k"],["\u013F","L"],["\u0140","l"],["\u0141","L"],["\u0142","l"],["\u0149","'n"],["\u014A","N"],["\u014B","n"],["\u0152","Oe"],["\u0153","oe"],["\u0166","T"],["\u0167","t"],["\u017F","s"]]);function Zyo(e){e=e.normalize("NFD");let t="";for(let r=0;r="\u0300"&&n<="\u036F"||n>="\uFE20"&&n<="\uFE23"||(t+=Fyo.get(n)??n)}return t}wor.deburr=Zyo});var t$=H(Tor=>{"use strict";Object.defineProperty(Tor,Symbol.toStringTag,{value:"Module"});var Lyo=fNn(),Vyo=qy();function Pyo(e){return Lyo.deburr(Vyo.toString(e))}Tor.deburr=Pyo});var Yfe=H(put=>{"use strict";Object.defineProperty(put,Symbol.toStringTag,{value:"Module"});var INn=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function Wyo(e){return Array.from(e.match(INn)??[])}put.CASE_SPLIT_PATTERN=INn;put.words=Wyo});var hNn=H(Ror=>{"use strict";Object.defineProperty(Ror,Symbol.toStringTag,{value:"Module"});var Oyo=bor(),Myo=Yfe();function Hyo(e){let t=Myo.words(e);if(t.length===0)return"";let[r,...n]=t;return`${r.toLowerCase()}${n.map(a=>Oyo.capitalize(a)).join("")}`}Ror.camelCase=Hyo});var Qfe=H(Nor=>{"use strict";Object.defineProperty(Nor,Symbol.toStringTag,{value:"Module"});var Yyo=qy();function Qyo(e){return typeof e!="string"&&(e=Yyo.toString(e)),e.replace(/['\u2019]/g,"")}Nor.normalizeForCase=Qyo});var kor=H(Dor=>{"use strict";Object.defineProperty(Dor,Symbol.toStringTag,{value:"Module"});var Xyo=t$(),Jyo=hNn(),Uyo=Qfe();function Kyo(e){return Jyo.camelCase(Uyo.normalizeForCase(Xyo.deburr(e)))}Dor.camelCase=Kyo});var Gor=H(xor=>{"use strict";Object.defineProperty(xor,Symbol.toStringTag,{value:"Module"});function jyo(e,t,r){return e==null||t==null?!1:(r==null&&(r=e.length),e.endsWith(t,r))}xor.endsWith=jyo});var mNn=H(For=>{"use strict";Object.defineProperty(For,Symbol.toStringTag,{value:"Module"});var zyo={"&":"&","<":"<",">":">",'"':""","'":"'"};function qyo(e){return e.replace(/[&<>"']/g,t=>zyo[t])}For.escape=qyo});var fut=H(Zor=>{"use strict";Object.defineProperty(Zor,Symbol.toStringTag,{value:"Module"});var $yo=mNn(),ebo=qy();function tbo(e){return $yo.escape(ebo.toString(e))}Zor.escape=tbo});var CNn=H(Lor=>{"use strict";Object.defineProperty(Lor,Symbol.toStringTag,{value:"Module"});function rbo(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}Lor.escapeRegExp=rbo});var Por=H(Vor=>{"use strict";Object.defineProperty(Vor,Symbol.toStringTag,{value:"Module"});var nbo=CNn(),ibo=qy();function sbo(e){return nbo.escapeRegExp(ibo.toString(e))}Vor.escapeRegExp=sbo});var _Nn=H(Wor=>{"use strict";Object.defineProperty(Wor,Symbol.toStringTag,{value:"Module"});var obo=Yfe();function abo(e){return obo.words(e).map(r=>r.toLowerCase()).join("-")}Wor.kebabCase=abo});var Mor=H(Oor=>{"use strict";Object.defineProperty(Oor,Symbol.toStringTag,{value:"Module"});var cbo=t$(),lbo=_Nn(),ubo=Qfe();function gbo(e){return lbo.kebabCase(ubo.normalizeForCase(cbo.deburr(e)))}Oor.kebabCase=gbo});var yNn=H(Hor=>{"use strict";Object.defineProperty(Hor,Symbol.toStringTag,{value:"Module"});var Abo=Yfe();function dbo(e){return Abo.words(e).map(r=>r.toLowerCase()).join(" ")}Hor.lowerCase=dbo});var Qor=H(Yor=>{"use strict";Object.defineProperty(Yor,Symbol.toStringTag,{value:"Module"});var pbo=t$(),fbo=yNn(),Ibo=Qfe();function hbo(e){return fbo.lowerCase(Ibo.normalizeForCase(pbo.deburr(e)))}Yor.lowerCase=hbo});var bNn=H(Xor=>{"use strict";Object.defineProperty(Xor,Symbol.toStringTag,{value:"Module"});function mbo(e){return e.substring(0,1).toLowerCase()+e.substring(1)}Xor.lowerFirst=mbo});var Uor=H(Jor=>{"use strict";Object.defineProperty(Jor,Symbol.toStringTag,{value:"Module"});var Cbo=bNn(),_bo=qy();function ybo(e){return Cbo.lowerFirst(_bo.toString(e))}Jor.lowerFirst=ybo});var ENn=H(Kor=>{"use strict";Object.defineProperty(Kor,Symbol.toStringTag,{value:"Module"});function bbo(e,t,r=" "){return e.padStart(Math.floor((t-e.length)/2)+e.length,r).padEnd(t,r)}Kor.pad=bbo});var zor=H(jor=>{"use strict";Object.defineProperty(jor,Symbol.toStringTag,{value:"Module"});var Ebo=ENn(),Sbo=qy();function vbo(e,t,r){return Ebo.pad(Sbo.toString(e),t,r)}jor.pad=vbo});var $or=H(qor=>{"use strict";Object.defineProperty(qor,Symbol.toStringTag,{value:"Module"});var Bbo=qy();function wbo(e,t=0,r=" "){return Bbo.toString(e).padEnd(t,r)}qor.padEnd=wbo});var tar=H(ear=>{"use strict";Object.defineProperty(ear,Symbol.toStringTag,{value:"Module"});var Tbo=qy();function Rbo(e,t=0,r=" "){return Tbo.toString(e).padStart(t,r)}ear.padStart=Rbo});var nar=H(rar=>{"use strict";Object.defineProperty(rar,Symbol.toStringTag,{value:"Module"});var Nbo=Number.MAX_SAFE_INTEGER;rar.MAX_SAFE_INTEGER=Nbo});var sar=H(iar=>{"use strict";Object.defineProperty(iar,Symbol.toStringTag,{value:"Module"});var Dbo=qq(),kbo=nar(),xbo=$w(),Gbo=qy();function Fbo(e,t,r){return(r?Dbo.isIterateeCall(e,t,r):t===void 0)?t=1:t=xbo.toInteger(t),t<1||t>kbo.MAX_SAFE_INTEGER?"":Gbo.toString(e).repeat(t)}iar.repeat=Fbo});var aar=H(oar=>{"use strict";Object.defineProperty(oar,Symbol.toStringTag,{value:"Module"});var SNn=qy();function Zbo(e,t,r){return arguments.length<3?SNn.toString(e):SNn.toString(e).replace(t,r)}oar.replace=Zbo});var vNn=H(car=>{"use strict";Object.defineProperty(car,Symbol.toStringTag,{value:"Module"});var Lbo=Yfe();function Vbo(e){return Lbo.words(e).map(r=>r.toLowerCase()).join("_")}car.snakeCase=Vbo});var uar=H(lar=>{"use strict";Object.defineProperty(lar,Symbol.toStringTag,{value:"Module"});var Pbo=t$(),Wbo=vNn(),Obo=Qfe();function Mbo(e){return Wbo.snakeCase(Obo.normalizeForCase(Pbo.deburr(e)))}lar.snakeCase=Mbo});var Aar=H(gar=>{"use strict";Object.defineProperty(gar,Symbol.toStringTag,{value:"Module"});var Hbo=qy();function Ybo(e,t,r){return Hbo.toString(e).split(t,r)}gar.split=Ybo});var par=H(dar=>{"use strict";Object.defineProperty(dar,Symbol.toStringTag,{value:"Module"});var Qbo=t$(),Xbo=Yfe(),Jbo=Qfe();function Ubo(e){let t=Xbo.words(Jbo.normalizeForCase(Qbo.deburr(e)).trim()),r="";for(let n=0;n{"use strict";Object.defineProperty(far,Symbol.toStringTag,{value:"Module"});function Kbo(e,t,r){return e==null||t==null?!1:(r==null&&(r=0),e.startsWith(t,r))}far.startsWith=Kbo});var har=H(mut=>{"use strict";Object.defineProperty(mut,Symbol.toStringTag,{value:"Module"});var jbo=fut(),zbo=qlt(),BNn=Q3e(),qbo=qy(),$bo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,eEo=/['\n\r\u2028\u2029\\]/g,Iut=/($^)/,tEo=new Map([["\\","\\"],["'","'"],[` +`,"n"],["\r","r"],["\u2028","u2028"],["\u2029","u2029"]]);function rEo(e){return`\\${tEo.get(e)}`}var wNn=/<%=([\s\S]+?)%>/g,hut={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:wNn,variable:"",imports:{_:{escape:jbo.escape,template:TNn}}};function TNn(e,t,r){e=qbo.toString(e),r&&(t=hut),t=BNn.defaults({...t},hut);let n=new RegExp([t.escape?.source??Iut.source,t.interpolate?.source??Iut.source,t.interpolate===wNn?$bo.source:Iut.source,t.evaluate?.source??Iut.source,"$"].join("|"),"g"),a=0,o=!1,l="__p += ''";for(let N of e.matchAll(n)){let[B,F,Q,X,ae]=N,{index:ne}=N;l+=` + '${e.slice(a,ne).replace(eEo,rEo)}'`,F&&(l+=` + _.escape(${F})`),Q?l+=` + ((${Q}) == null ? '' : ${Q})`:X&&(l+=` + ((${X}) == null ? '' : ${X})`),ae&&(l+=`; ${ae}; - __p += ''`,o=!0),a=ne+B.length}let A=CNn.defaults({...t.imports},fut.imports),f=Object.keys(A),I=Object.values(A),C=`//# sourceURL=${t.sourceURL?String(t.sourceURL).replace(/[\r\n]/g," "):`es-toolkit.templateSource[${Date.now()}]`} + __p += ''`,o=!0),a=ne+B.length}let A=BNn.defaults({...t.imports},hut.imports),f=Object.keys(A),I=Object.values(A),C=`//# sourceURL=${t.sourceURL?String(t.sourceURL).replace(/[\r\n]/g," "):`es-toolkit.templateSource[${Date.now()}]`} `,b=`function(${t.variable||"obj"}) { let __p = ''; ${t.variable?"":"if (obj == null) { obj = {}; }"} @@ -172,15 +172,15 @@ ${ae}; ${l} }`} return __p; - }`,E=Fbo.attempt(()=>new Function(...f,`${C}return ${b}`)(...I));if(E.source=b,E instanceof Error)throw E;return E}Iut.template=yNn;Iut.templateSettings=fut});var far=H(par=>{"use strict";Object.defineProperty(par,Symbol.toStringTag,{value:"Module"});var Obo=qy();function Mbo(e){return Obo.toString(e).toLowerCase()}par.toLower=Mbo});var har=H(Iar=>{"use strict";Object.defineProperty(Iar,Symbol.toStringTag,{value:"Module"});var Hbo=qy();function Ybo(e){return Hbo.toString(e).toUpperCase()}Iar.toUpper=Ybo});var Car=H(mar=>{"use strict";Object.defineProperty(mar,Symbol.toStringTag,{value:"Module"});function Qbo(e,t){if(t===void 0)return e.trimEnd();let r=e.length;switch(typeof t){case"string":{if(t.length!==1)throw new Error("The 'chars' parameter should be a single character string.");for(;r>0&&e[r-1]===t;)r--;break}case"object":for(;r>0&&t.includes(e[r-1]);)r--}return e.substring(0,r)}mar.trimEnd=Qbo});var yar=H(_ar=>{"use strict";Object.defineProperty(_ar,Symbol.toStringTag,{value:"Module"});function Xbo(e,t){if(t===void 0)return e.trimStart();let r=0;switch(typeof t){case"string":{for(;r{"use strict";Object.defineProperty(bar,Symbol.toStringTag,{value:"Module"});var Jbo=Car(),Ubo=yar();function Kbo(e,t){return t===void 0?e.trim():Ubo.trimStart(Jbo.trimEnd(e,t),t)}bar.trim=Kbo});var Bar=H(Sar=>{"use strict";Object.defineProperty(Sar,Symbol.toStringTag,{value:"Module"});var Ear=bNn();function jbo(e,t,r){if(e==null)return"";if(r!=null||t==null)return e.toString().trim();switch(typeof t){case"object":return Array.isArray(t)?Ear.trim(e,t.flatMap(n=>n.toString().split(""))):Ear.trim(e,t.toString().split(""));default:return Ear.trim(e,t.toString().split(""))}}Sar.trim=jbo});var Tar=H(war=>{"use strict";Object.defineProperty(war,Symbol.toStringTag,{value:"Module"});var zbo=Car();function qbo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimEnd():zbo.trimEnd(e,t.toString().split(""))}war.trimEnd=qbo});var Nar=H(Rar=>{"use strict";Object.defineProperty(Rar,Symbol.toStringTag,{value:"Module"});var $bo=yar();function eEo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimStart():$bo.trimStart(e,t.toString().split(""))}Rar.trimStart=eEo});var kar=H(Dar=>{"use strict";Object.defineProperty(Dar,Symbol.toStringTag,{value:"Module"});var tEo=tM(),rEo=/[\u200d\ud800-\udfff\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff\ufe0e\ufe0f]/;function nEo(e,t){e=e!=null?`${e}`:"";let r=30,n="...";tEo.isObject(t)&&(r=iEo(t.length),n="omission"in t?`${t.omission}`:"...");let a=e.length,o=Array.from(n).length,l=Math.max(r-o,0),A;if(rEo.test(e)&&(A=Array.from(e),a=A.length),r>=a)return e;if(a<=o)return n;let I=A===void 0?e.slice(0,l):A?.slice(0,l).join(""),C=t?.separator;if(!C)return I+=n,I;let b=C instanceof RegExp?C.source:C,E="u"+(C instanceof RegExp?C.flags.replace("u",""):""),N=new RegExp(`(?.*(?:(?!${b}).))(?:${b})`,E).exec(I);return(N?.groups?N.groups.result:I)+n}function iEo(e){return e==null?30:e<=0?0:e}Dar.truncate=nEo});var ENn=H(xar=>{"use strict";Object.defineProperty(xar,Symbol.toStringTag,{value:"Module"});var sEo={"&":"&","<":"<",">":">",""":'"',"'":"'"};function oEo(e){return e.replace(/&(?:amp|lt|gt|quot|#(0+)?39);/g,t=>sEo[t]||"'")}xar.unescape=oEo});var Far=H(Gar=>{"use strict";Object.defineProperty(Gar,Symbol.toStringTag,{value:"Module"});var aEo=ENn(),cEo=qy();function lEo(e){return aEo.unescape(cEo.toString(e))}Gar.unescape=lEo});var SNn=H(Zar=>{"use strict";Object.defineProperty(Zar,Symbol.toStringTag,{value:"Module"});var uEo=Hfe();function gEo(e){let t=uEo.words(e),r="";for(let n=0;n{"use strict";Object.defineProperty(Lar,Symbol.toStringTag,{value:"Module"});var AEo=t$(),dEo=SNn(),pEo=Yfe();function fEo(e){return dEo.upperCase(pEo.normalizeForCase(AEo.deburr(e)))}Lar.upperCase=fEo});var vNn=H(War=>{"use strict";Object.defineProperty(War,Symbol.toStringTag,{value:"Module"});function IEo(e){return e.substring(0,1).toUpperCase()+e.substring(1)}War.upperFirst=IEo});var Mar=H(Oar=>{"use strict";Object.defineProperty(Oar,Symbol.toStringTag,{value:"Module"});var hEo=vNn(),mEo=qy();function CEo(e){return hEo.upperFirst(mEo.toString(e))}Oar.upperFirst=CEo});var Yar=H(Har=>{"use strict";Object.defineProperty(Har,Symbol.toStringTag,{value:"Module"});var _Eo=qy(),yEo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\xd7\\xf7",USe="\\p{Lu}",DNn="\\p{Ll}",kNn="(?:[\\p{Lm}\\p{Lo}]\\p{M}*)",Q3e="\\d",BNn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",wNn="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",TNn=`[\\p{Z}\\p{P}${yEo}]`,bEo=`(?:${USe}|${kNn})`,RNn=`(?:${DNn}|${kNn})`,NNn=RegExp([`${USe}?${DNn}+${BNn}(?=${TNn}|${USe}|$)`,`${bEo}+${wNn}(?=${TNn}|${USe}${RNn}|$)`,`${USe}?${RNn}+${BNn}`,`${USe}+${wNn}`,`${Q3e}*(?:1ST|2ND|3RD|(?![123])${Q3e}TH)(?=\\b|[a-z_])`,`${Q3e}*(?:1st|2nd|3rd|(?![123])${Q3e}th)(?=\\b|[A-Z_])`,`${Q3e}+`,"\\p{Emoji_Presentation}","\\p{Extended_Pictographic}"].join("|"),"gu");function EEo(e,t=NNn,r){let n=_Eo.toString(e);return r&&(t=NNn),typeof t=="number"&&(t=t.toString()),Array.from(n.match(t)??[]).filter(o=>o!=="")}Har.words=EEo});var Xar=H(Qar=>{"use strict";Object.defineProperty(Qar,Symbol.toStringTag,{value:"Module"});var SEo=im(),vEo=coe();function BEo(e){let t=e.length,r=e.map(n=>{let a=n[0],o=n[1];if(!vEo.isFunction(o))throw new TypeError("Expected a function");return[SEo.iteratee(a),o]});return function(...n){for(let a=0;a{"use strict";Object.defineProperty(Jar,Symbol.toStringTag,{value:"Module"});function wEo(e){return()=>e}Jar.constant=wEo});var jar=H(Kar=>{"use strict";Object.defineProperty(Kar,Symbol.toStringTag,{value:"Module"});function TEo(e,t){return e==null||Number.isNaN(e)?t:e}Kar.defaultTo=TEo});var qar=H(zar=>{"use strict";Object.defineProperty(zar,Symbol.toStringTag,{value:"Module"});var xNn=Q9();function REo(e,t){return typeof e=="string"&&typeof t=="string"?e>t:xNn.toNumber(e)>xNn.toNumber(t)}zar.gt=REo});var ecr=H($ar=>{"use strict";Object.defineProperty($ar,Symbol.toStringTag,{value:"Module"});var GNn=Q9();function NEo(e,t){return typeof e=="string"&&typeof t=="string"?e>=t:GNn.toNumber(e)>=GNn.toNumber(t)}$ar.gte=NEo});var J3e=H(tcr=>{"use strict";Object.defineProperty(tcr,Symbol.toStringTag,{value:"Module"});var DEo=$5(),kEo=Kq(),xEo=zq(),FNn=eM();function GEo(e,t,...r){if(r=r.flat(1),e!=null)switch(typeof t){case"string":return typeof e=="object"&&Object.hasOwn(e,t)?X3e(e,[t],r):X3e(e,DEo.toPath(t),r);case"number":case"symbol":return X3e(e,[t],r);default:return Array.isArray(t)?X3e(e,t,r):X3e(e,[t],r)}}function X3e(e,t,r){let n=FNn.get(e,t.slice(0,-1),e);if(n==null)return;let a=xEo.last(t),o=a?.valueOf();return typeof o=="number"?a=kEo.toKey(o):a=String(a),FNn.get(n,a)?.apply(n,r)}tcr.invoke=GEo});var ncr=H(rcr=>{"use strict";Object.defineProperty(rcr,Symbol.toStringTag,{value:"Module"});var ZNn=Q9();function FEo(e,t){return typeof e=="string"&&typeof t=="string"?e{"use strict";Object.defineProperty(icr,Symbol.toStringTag,{value:"Module"});var LNn=Q9();function ZEo(e,t){return typeof e=="string"&&typeof t=="string"?e<=t:LNn.toNumber(e)<=LNn.toNumber(t)}icr.lte=ZEo});var acr=H(ocr=>{"use strict";Object.defineProperty(ocr,Symbol.toStringTag,{value:"Module"});var LEo=J3e();function VEo(e,...t){return function(r){return LEo.invoke(r,e,t)}}ocr.method=VEo});var lcr=H(ccr=>{"use strict";Object.defineProperty(ccr,Symbol.toStringTag,{value:"Module"});var PEo=J3e();function WEo(e,...t){return function(r){return PEo.invoke(e,r,t)}}ccr.methodOf=WEo});var gcr=H(ucr=>{"use strict";Object.defineProperty(ucr,Symbol.toStringTag,{value:"Module"});function OEo(){return Date.now()}ucr.now=OEo});var dcr=H(Acr=>{"use strict";Object.defineProperty(Acr,Symbol.toStringTag,{value:"Module"});var MEo=im();function HEo(...e){e.length===1&&Array.isArray(e[0])&&(e=e[0]);let t=e.map(r=>MEo.iteratee(r));return function(...r){return t.map(n=>n.apply(this,r))}}Acr.over=HEo});var fcr=H(pcr=>{"use strict";Object.defineProperty(pcr,Symbol.toStringTag,{value:"Module"});var VNn=im();function YEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(Icr,Symbol.toStringTag,{value:"Module"});var PNn=im();function QEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(mcr,Symbol.toStringTag,{value:"Module"});function XEo(){return[]}mcr.stubArray=XEo});var ycr=H(_cr=>{"use strict";Object.defineProperty(_cr,Symbol.toStringTag,{value:"Module"});function JEo(){return!1}_cr.stubFalse=JEo});var Ecr=H(bcr=>{"use strict";Object.defineProperty(bcr,Symbol.toStringTag,{value:"Module"});function UEo(){return{}}bcr.stubObject=UEo});var vcr=H(Scr=>{"use strict";Object.defineProperty(Scr,Symbol.toStringTag,{value:"Module"});function KEo(){return""}Scr.stubString=KEo});var wcr=H(Bcr=>{"use strict";Object.defineProperty(Bcr,Symbol.toStringTag,{value:"Module"});function jEo(){return!0}Bcr.stubTrue=jEo});var WNn=H(Tcr=>{"use strict";Object.defineProperty(Tcr,Symbol.toStringTag,{value:"Module"});var zEo=4294967295;Tcr.MAX_ARRAY_LENGTH=zEo});var Ncr=H(Rcr=>{"use strict";Object.defineProperty(Rcr,Symbol.toStringTag,{value:"Module"});var qEo=WNn(),$Eo=Ofe();function e1o(e){if(e==null)return 0;let t=Math.floor(Number(e));return $Eo.clamp(t,0,qEo.MAX_ARRAY_LENGTH)}Rcr.toLength=e1o});var kcr=H(Dcr=>{"use strict";Object.defineProperty(Dcr,Symbol.toStringTag,{value:"Module"});var t1o=iX();function r1o(e){let t={},r=t1o.keysIn(e);for(let n=0;n{"use strict";Object.defineProperty(xcr,Symbol.toStringTag,{value:"Module"});var n1o=$w(),ONn=$or(),i1o=Ofe();function s1o(e){return e==null?0:i1o.clamp(n1o.toInteger(e),-ONn.MAX_SAFE_INTEGER,ONn.MAX_SAFE_INTEGER)}xcr.toSafeInteger=s1o});var Zcr=H(Fcr=>{"use strict";Object.defineProperty(Fcr,Symbol.toStringTag,{value:"Module"});var o1o=0;function a1o(e=""){let t=++o1o;return`${e}${t}`}Fcr.uniqueId=a1o});var UNn=H(Kn=>{"use strict";Object.defineProperty(Kn,Symbol.toStringTag,{value:"Module"});var c1o=E7t(),l1o=R7t(),u1o=k7t(),g1o=F7t(),A1o=pzt(),d1o=Czt(),p1o=vlt(),f1o=Blt(),I1o=xzt(),h1o=Zzt(),m1o=Pzt(),C1o=Mzt(),MNn=Rlt(),HNn=Xzt(),_1o=Kzt(),y1o=$zt(),b1o=Nlt(),E1o=rqt(),S1o=sqt(),v1o=aqt(),B1o=lqt(),YNn=Aqt(),w1o=mqt(),T1o=yqt(),R1o=N3e(),N1o=Pfe(),D1o=Eqt(),k1o=YSe(),x1o=Bqt(),G1o=Tqt(),F1o=Nqt(),Z1o=xqt(),L1o=Lqt(),V1o=klt(),P1o=xlt(),W1o=Jqt(),O1o=Kqt(),M1o=qqt(),H1o=zq(),Y1o=e$t(),Q1o=R3e(),X1o=r$t(),J1o=Flt(),U1o=a$t(),K1o=g$t(),j1o=d$t(),z1o=f$t(),q1o=h$t(),$1o=E$t(),e2o=Glt(),t2o=v$t(),r2o=T$t(),n2o=D$t(),i2o=x$t(),s2o=Z$t(),o2o=J$t(),a2o=$$t(),c2o=ter(),l2o=ner(),u2o=ser(),g2o=aer(),A2o=Olt(),d2o=Z3e(),p2o=mer(),f2o=Hlt(),I2o=Mlt(),h2o=ber(),m2o=ver(),C2o=Ter(),_2o=Der(),y2o=Ger(),b2o=Zer(),E2o=Ver(),S2o=Qlt(),v2o=Xlt(),B2o=D3e(),w2o=Jer(),T2o=Ker(),R2o=Jlt(),N2o=etr(),D2o=ntr(),k2o=str(),x2o=ltr(),G2o=gtr(),F2o=Itr(),Z2o=Ctr(),L2o=Etr(),V2o=vtr(),P2o=wtr(),W2o=Klt(),O2o=jlt(),M2o=Dtr(),H2o=Gtr(),Y2o=Ltr(),Q2o=Wtr(),X2o=Htr(),J2o=zlt(),U2o=Jtr(),K2o=Ktr(),j2o=ztr(),z2o=rrr(),q2o=srr(),$2o=crr(),eSo=G3e(),tSo=urr(),rSo=drr(),nSo=frr(),iSo=mrr(),sSo=yrr(),oSo=Err(),aSo=Brr(),cSo=Trr(),lSo=Nrr(),uSo=krr(),gSo=Grr(),ASo=Zrr(),dSo=Prr(),pSo=Ofe(),fSo=Orr(),ISo=Hrr(),hSo=Xrr(),mSo=Urr(),CSo=zrr(),_So=tnr(),ySo=snr(),bSo=anr(),ESo=unr(),SSo=Anr(),vSo=pnr(),BSo=Inr(),wSo=Cnr(),TSo=bnr(),RSo=Snr(),NSo=Bnr(),DSo=rut(),kSo=tut(),xSo=xnr(),GSo=HK(),FSo=Fnr(),ZSo=Onr(),QNn=Ynr(),XNn=Xnr(),LSo=Unr(),VSo=Zlt(),PSo=sut(),WSo=WSe(),OSo=S3e(),MSo=qnr(),HSo=eir(),YSo=H3e(),QSo=iir(),XSo=air(),JSo=lir(),USo=gir(),KSo=dir(),jSo=fir(),zSo=hir(),qSo=Cir(),$So=yir(),evo=Eir(),tvo=eM(),rvo=v3e(),nvo=vir(),ivo=Tir(),svo=Nir(),ovo=YK(),avo=iX(),cvo=xir(),lvo=Zir(),uvo=Mir(),gvo=cut(),Avo=Qir(),dvo=Jir(),pvo=Kir(),fvo=zir(),Ivo=nX(),hvo=$ir(),mvo=tsr(),Cvo=V3e(),_vo=nsr(),yvo=ssr(),bvo=gsr(),Evo=dsr(),Svo=Isr(),vvo=x3e(),Bvo=msr(),wvo=XSe(),Tvo=Vlt(),Rvo=_sr(),Nvo=bsr(),Dvo=Ssr(),kvo=blt(),xvo=Bsr(),Gvo=Tsr(),Fvo=Nsr(),Zvo=xsr(),Lvo=gut(),Vvo=Vfe(),Pvo=$q(),Wvo=Zsr(),Ovo=Sf(),Mvo=b2(),Hvo=Vsr(),Yvo=uut(),Qvo=Osr(),Xvo=Hsr(),Jvo=Qsr(),Uvo=Ksr(),Kvo=zsr(),jvo=$sr(),zvo=tor(),qvo=Llt(),$vo=C3e(),eBo=Wlt(),tBo=QSe(),rBo=L3e(),nBo=tM(),iBo=ioe(),sBo=Mfe(),oBo=ior(),aBo=oor(),cBo=lor(),lBo=HSe(),uBo=soe(),gBo=e$(),ABo=Aor(),dBo=Ior(),pBo=OK(),fBo=MK(),IBo=_or(),hBo=bor(),mBo=Tor(),CBo=t$(),_Bo=Nor(),yBo=dut(),bBo=For(),EBo=Vor(),SBo=Oor(),vBo=Yor(),BBo=Jor(),wBo=Kor(),TBo=zor(),RBo=tar(),NBo=nar(),DBo=oar(),kBo=car(),xBo=uar(),GBo=Aar(),JNn=dar(),FBo=far(),ZBo=har(),LBo=Bar(),VBo=Tar(),PBo=Nar(),WBo=kar(),OBo=Far(),MBo=Par(),HBo=Mar(),YBo=Yar(),QBo=Xar(),XBo=Uar(),JBo=jar(),UBo=Sk(),KBo=qar(),jBo=ecr(),zBo=J3e(),qBo=im(),$Bo=ncr(),ewo=scr(),two=acr(),rwo=lcr(),nwo=gcr(),iwo=dcr(),swo=fcr(),owo=hcr(),awo=Ccr(),cwo=ycr(),lwo=Ecr(),uwo=vcr(),gwo=wcr(),Awo=M3e(),dwo=F3e(),pwo=MSe(),fwo=$w(),Iwo=Ncr(),hwo=Q9(),mwo=$5(),Cwo=kcr(),_wo=Gcr(),ywo=qy(),bwo=Zcr();Kn.castArray=c1o.castArray;Kn.chunk=l1o.chunk;Kn.compact=u1o.compact;Kn.concat=g1o.concat;Kn.countBy=A1o.countBy;Kn.difference=d1o.difference;Kn.differenceBy=p1o.differenceBy;Kn.differenceWith=f1o.differenceWith;Kn.drop=I1o.drop;Kn.dropRight=h1o.dropRight;Kn.dropRightWhile=m1o.dropRightWhile;Kn.dropWhile=C1o.dropWhile;Kn.each=MNn.forEach;Kn.forEach=MNn.forEach;Kn.eachRight=HNn.forEachRight;Kn.forEachRight=HNn.forEachRight;Kn.every=_1o.every;Kn.fill=y1o.fill;Kn.filter=b1o.filter;Kn.find=E1o.find;Kn.findIndex=S1o.findIndex;Kn.findLast=v1o.findLast;Kn.findLastIndex=B1o.findLastIndex;Kn.first=YNn.head;Kn.head=YNn.head;Kn.flatMap=w1o.flatMap;Kn.flatMapDeep=T1o.flatMapDeep;Kn.flatMapDepth=R1o.flatMapDepth;Kn.flatten=N1o.flatten;Kn.flattenDeep=D1o.flattenDeep;Kn.flattenDepth=k1o.flattenDepth;Kn.groupBy=x1o.groupBy;Kn.includes=G1o.includes;Kn.indexOf=F1o.indexOf;Kn.initial=Z1o.initial;Kn.intersection=L1o.intersection;Kn.intersectionBy=V1o.intersectionBy;Kn.intersectionWith=P1o.intersectionWith;Kn.invokeMap=W1o.invokeMap;Kn.join=O1o.join;Kn.keyBy=M1o.keyBy;Kn.last=H1o.last;Kn.lastIndexOf=Y1o.lastIndexOf;Kn.map=Q1o.map;Kn.nth=X1o.nth;Kn.orderBy=J1o.orderBy;Kn.partition=U1o.partition;Kn.pull=K1o.pull;Kn.pullAll=j1o.pullAll;Kn.pullAllBy=z1o.pullAllBy;Kn.pullAllWith=q1o.pullAllWith;Kn.pullAt=$1o.pullAt;Kn.reduce=e2o.reduce;Kn.reduceRight=t2o.reduceRight;Kn.reject=r2o.reject;Kn.remove=n2o.remove;Kn.reverse=i2o.reverse;Kn.sample=s2o.sample;Kn.sampleSize=o2o.sampleSize;Kn.shuffle=a2o.shuffle;Kn.size=c2o.size;Kn.slice=l2o.slice;Kn.some=u2o.some;Kn.sortBy=g2o.sortBy;Kn.sortedIndex=A2o.sortedIndex;Kn.sortedIndexBy=d2o.sortedIndexBy;Kn.sortedIndexOf=p2o.sortedIndexOf;Kn.sortedLastIndex=f2o.sortedLastIndex;Kn.sortedLastIndexBy=I2o.sortedLastIndexBy;Kn.sortedLastIndexOf=h2o.sortedLastIndexOf;Kn.tail=m2o.tail;Kn.take=C2o.take;Kn.takeRight=_2o.takeRight;Kn.takeRightWhile=y2o.takeRightWhile;Kn.takeWhile=b2o.takeWhile;Kn.union=E2o.union;Kn.unionBy=S2o.unionBy;Kn.unionWith=v2o.unionWith;Kn.uniq=B2o.uniq;Kn.uniqBy=w2o.uniqBy;Kn.uniqWith=T2o.uniqWith;Kn.unzip=R2o.unzip;Kn.unzipWith=N2o.unzipWith;Kn.without=D2o.without;Kn.xor=k2o.xor;Kn.xorBy=x2o.xorBy;Kn.xorWith=G2o.xorWith;Kn.zip=F2o.zip;Kn.zipObject=Z2o.zipObject;Kn.zipObjectDeep=L2o.zipObjectDeep;Kn.zipWith=V2o.zipWith;Kn.after=P2o.after;Kn.ary=W2o.ary;Kn.attempt=O2o.attempt;Kn.before=M2o.before;Kn.bind=H2o.bind;Kn.bindKey=Y2o.bindKey;Kn.curry=Q2o.curry;Kn.curryRight=X2o.curryRight;Kn.debounce=J2o.debounce;Kn.defer=U2o.defer;Kn.delay=K2o.delay;Kn.flip=j2o.flip;Kn.flow=z2o.flow;Kn.flowRight=q2o.flowRight;Kn.memoize=$2o.memoize;Kn.negate=eSo.negate;Kn.nthArg=tSo.nthArg;Kn.once=rSo.once;Kn.overArgs=nSo.overArgs;Kn.partial=iSo.partial;Kn.partialRight=sSo.partialRight;Kn.rearg=oSo.rearg;Kn.rest=aSo.rest;Kn.spread=cSo.spread;Kn.throttle=lSo.throttle;Kn.unary=uSo.unary;Kn.wrap=gSo.wrap;Kn.add=ASo.add;Kn.ceil=dSo.ceil;Kn.clamp=pSo.clamp;Kn.divide=fSo.divide;Kn.floor=ISo.floor;Kn.inRange=hSo.inRange;Kn.max=mSo.max;Kn.maxBy=CSo.maxBy;Kn.mean=_So.mean;Kn.meanBy=ySo.meanBy;Kn.min=bSo.min;Kn.minBy=ESo.minBy;Kn.multiply=SSo.multiply;Kn.parseInt=vSo.parseInt;Kn.random=BSo.random;Kn.range=wSo.range;Kn.rangeRight=TSo.rangeRight;Kn.round=RSo.round;Kn.subtract=NSo.subtract;Kn.sum=DSo.sum;Kn.sumBy=kSo.sumBy;Kn.isEqual=xSo.isEqual;Kn.identity=GSo.identity;Kn.noop=FSo.noop;Kn.assign=ZSo.assign;Kn.assignIn=QNn.assignIn;Kn.extend=QNn.assignIn;Kn.assignInWith=XNn.assignInWith;Kn.extendWith=XNn.assignInWith;Kn.assignWith=LSo.assignWith;Kn.at=VSo.at;Kn.clone=PSo.clone;Kn.cloneDeep=WSo.cloneDeep;Kn.cloneDeepWith=OSo.cloneDeepWith;Kn.cloneWith=MSo.cloneWith;Kn.create=HSo.create;Kn.defaults=YSo.defaults;Kn.defaultsDeep=QSo.defaultsDeep;Kn.findKey=XSo.findKey;Kn.findLastKey=JSo.findLastKey;Kn.forIn=USo.forIn;Kn.forInRight=KSo.forInRight;Kn.forOwn=jSo.forOwn;Kn.forOwnRight=zSo.forOwnRight;Kn.fromPairs=qSo.fromPairs;Kn.functions=$So.functions;Kn.functionsIn=evo.functionsIn;Kn.get=tvo.get;Kn.has=rvo.has;Kn.hasIn=nvo.hasIn;Kn.invert=ivo.invert;Kn.invertBy=svo.invertBy;Kn.keys=ovo.keys;Kn.keysIn=avo.keysIn;Kn.mapKeys=cvo.mapKeys;Kn.mapValues=lvo.mapValues;Kn.merge=uvo.merge;Kn.mergeWith=gvo.mergeWith;Kn.omit=Avo.omit;Kn.omitBy=dvo.omitBy;Kn.pick=pvo.pick;Kn.pickBy=fvo.pickBy;Kn.property=Ivo.property;Kn.propertyOf=hvo.propertyOf;Kn.result=mvo.result;Kn.set=Cvo.set;Kn.setWith=_vo.setWith;Kn.toDefaulted=yvo.toDefaulted;Kn.toPairs=bvo.toPairs;Kn.toPairsIn=Evo.toPairsIn;Kn.transform=Svo.transform;Kn.unset=vvo.unset;Kn.update=Bvo.update;Kn.updateWith=wvo.updateWith;Kn.values=Tvo.values;Kn.valuesIn=Rvo.valuesIn;Kn.isFunction=Nvo.isFunction;Kn.isLength=Dvo.isLength;Kn.isMatchWith=kvo.isMatchWith;Kn.isNative=xvo.isNative;Kn.isNull=Gvo.isNull;Kn.isUndefined=Fvo.isUndefined;Kn.conforms=Zvo.conforms;Kn.conformsTo=Lvo.conformsTo;Kn.isArguments=Vvo.isArguments;Kn.isArray=Pvo.isArray;Kn.isArrayBuffer=Wvo.isArrayBuffer;Kn.isArrayLike=Ovo.isArrayLike;Kn.isArrayLikeObject=Mvo.isArrayLikeObject;Kn.isBoolean=Hvo.isBoolean;Kn.isBuffer=Yvo.isBuffer;Kn.isDate=Qvo.isDate;Kn.isElement=Xvo.isElement;Kn.isEmpty=Jvo.isEmpty;Kn.isEqualWith=Uvo.isEqualWith;Kn.isError=Kvo.isError;Kn.isFinite=jvo.isFinite;Kn.isInteger=zvo.isInteger;Kn.isMap=qvo.isMap;Kn.isMatch=$vo.isMatch;Kn.isNaN=eBo.isNaN;Kn.isNil=tBo.isNil;Kn.isNumber=rBo.isNumber;Kn.isObject=nBo.isObject;Kn.isObjectLike=iBo.isObjectLike;Kn.isPlainObject=sBo.isPlainObject;Kn.isRegExp=oBo.isRegExp;Kn.isSafeInteger=aBo.isSafeInteger;Kn.isSet=cBo.isSet;Kn.isString=lBo.isString;Kn.isSymbol=uBo.isSymbol;Kn.isTypedArray=gBo.isTypedArray;Kn.isWeakMap=ABo.isWeakMap;Kn.isWeakSet=dBo.isWeakSet;Kn.matches=pBo.matches;Kn.matchesProperty=fBo.matchesProperty;Kn.capitalize=IBo.capitalize;Kn.bindAll=hBo.bindAll;Kn.camelCase=mBo.camelCase;Kn.deburr=CBo.deburr;Kn.endsWith=_Bo.endsWith;Kn.escape=yBo.escape;Kn.escapeRegExp=bBo.escapeRegExp;Kn.kebabCase=EBo.kebabCase;Kn.lowerCase=SBo.lowerCase;Kn.lowerFirst=vBo.lowerFirst;Kn.pad=BBo.pad;Kn.padEnd=wBo.padEnd;Kn.padStart=TBo.padStart;Kn.repeat=RBo.repeat;Kn.replace=NBo.replace;Kn.snakeCase=DBo.snakeCase;Kn.split=kBo.split;Kn.startCase=xBo.startCase;Kn.startsWith=GBo.startsWith;Kn.template=JNn.template;Kn.templateSettings=JNn.templateSettings;Kn.toLower=FBo.toLower;Kn.toUpper=ZBo.toUpper;Kn.trim=LBo.trim;Kn.trimEnd=VBo.trimEnd;Kn.trimStart=PBo.trimStart;Kn.truncate=WBo.truncate;Kn.unescape=OBo.unescape;Kn.upperCase=MBo.upperCase;Kn.upperFirst=HBo.upperFirst;Kn.words=YBo.words;Kn.cond=QBo.cond;Kn.constant=XBo.constant;Kn.defaultTo=JBo.defaultTo;Kn.eq=UBo.isEqualsSameValueZero;Kn.gt=KBo.gt;Kn.gte=jBo.gte;Kn.invoke=zBo.invoke;Kn.iteratee=qBo.iteratee;Kn.lt=$Bo.lt;Kn.lte=ewo.lte;Kn.method=two.method;Kn.methodOf=rwo.methodOf;Kn.now=nwo.now;Kn.over=iwo.over;Kn.overEvery=swo.overEvery;Kn.overSome=owo.overSome;Kn.stubArray=awo.stubArray;Kn.stubFalse=cwo.stubFalse;Kn.stubObject=lwo.stubObject;Kn.stubString=uwo.stubString;Kn.stubTrue=gwo.stubTrue;Kn.times=Awo.times;Kn.toArray=dwo.toArray;Kn.toFinite=pwo.toFinite;Kn.toInteger=fwo.toInteger;Kn.toLength=Iwo.toLength;Kn.toNumber=hwo.toNumber;Kn.toPath=mwo.toPath;Kn.toPlainObject=Cwo.toPlainObject;Kn.toSafeInteger=_wo.toSafeInteger;Kn.toString=ywo.toString;Kn.uniqueId=bwo.uniqueId});var KNn=H(Lcr=>{"use strict";Object.defineProperty(Lcr,Symbol.toStringTag,{value:"Module"});var Ewo=UNn(),KSe=e=>e;Object.assign(KSe,Ewo);KSe.partial.placeholder=KSe;KSe.partialRight.placeholder=KSe;Lcr.toolkit=KSe});var kW=H(Jn=>{"use strict";Object.defineProperties(Jn,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var Swo=E7t(),vwo=R7t(),Bwo=k7t(),wwo=F7t(),Two=pzt(),Rwo=Czt(),Nwo=vlt(),Dwo=Blt(),kwo=xzt(),xwo=Zzt(),Gwo=Pzt(),Fwo=Mzt(),jNn=Rlt(),zNn=Xzt(),Zwo=Kzt(),Lwo=$zt(),Vwo=Nlt(),Pwo=rqt(),Wwo=sqt(),Owo=aqt(),Mwo=lqt(),qNn=Aqt(),Hwo=mqt(),Ywo=yqt(),Qwo=N3e(),Xwo=Pfe(),Jwo=Eqt(),Uwo=YSe(),Kwo=Bqt(),jwo=Tqt(),zwo=Nqt(),qwo=xqt(),$wo=Lqt(),eTo=klt(),tTo=xlt(),rTo=Jqt(),nTo=Kqt(),iTo=qqt(),sTo=zq(),oTo=e$t(),aTo=R3e(),cTo=r$t(),lTo=Flt(),uTo=a$t(),gTo=g$t(),ATo=d$t(),dTo=f$t(),pTo=h$t(),fTo=E$t(),ITo=Glt(),hTo=v$t(),mTo=T$t(),CTo=D$t(),_To=x$t(),yTo=Z$t(),bTo=J$t(),ETo=$$t(),STo=ter(),vTo=ner(),BTo=ser(),wTo=aer(),TTo=Olt(),RTo=Z3e(),NTo=mer(),DTo=Hlt(),kTo=Mlt(),xTo=ber(),GTo=ver(),FTo=Ter(),ZTo=Der(),LTo=Ger(),VTo=Zer(),PTo=Ver(),WTo=Qlt(),OTo=Xlt(),MTo=D3e(),HTo=Jer(),YTo=Ker(),QTo=Jlt(),XTo=etr(),JTo=ntr(),UTo=str(),KTo=ltr(),jTo=gtr(),zTo=Itr(),qTo=Ctr(),$To=Etr(),eRo=vtr(),tRo=wtr(),rRo=Klt(),nRo=jlt(),iRo=Dtr(),sRo=Gtr(),oRo=Ltr(),aRo=Wtr(),cRo=Htr(),lRo=zlt(),uRo=Jtr(),gRo=Ktr(),ARo=ztr(),dRo=rrr(),pRo=srr(),fRo=crr(),IRo=G3e(),hRo=urr(),mRo=drr(),CRo=frr(),_Ro=mrr(),yRo=yrr(),bRo=Err(),ERo=Brr(),SRo=Trr(),vRo=Nrr(),BRo=krr(),wRo=Grr(),TRo=Zrr(),RRo=Prr(),NRo=Ofe(),DRo=Orr(),kRo=Hrr(),xRo=Xrr(),GRo=Urr(),FRo=zrr(),ZRo=tnr(),LRo=snr(),VRo=anr(),PRo=unr(),WRo=Anr(),ORo=pnr(),MRo=Inr(),HRo=Cnr(),YRo=bnr(),QRo=Snr(),XRo=Bnr(),JRo=rut(),URo=tut(),KRo=xnr(),jRo=HK(),zRo=Fnr(),qRo=Onr(),$Nn=Ynr(),eDn=Xnr(),$Ro=Unr(),eNo=Zlt(),tNo=sut(),rNo=WSe(),nNo=S3e(),iNo=qnr(),sNo=eir(),oNo=H3e(),aNo=iir(),cNo=air(),lNo=lir(),uNo=gir(),gNo=dir(),ANo=fir(),dNo=hir(),pNo=Cir(),fNo=yir(),INo=Eir(),hNo=eM(),mNo=v3e(),CNo=vir(),_No=Tir(),yNo=Nir(),bNo=YK(),ENo=iX(),SNo=xir(),vNo=Zir(),BNo=Mir(),wNo=cut(),TNo=Qir(),RNo=Jir(),NNo=Kir(),DNo=zir(),kNo=nX(),xNo=$ir(),GNo=tsr(),FNo=V3e(),ZNo=nsr(),LNo=ssr(),VNo=gsr(),PNo=dsr(),WNo=Isr(),ONo=x3e(),MNo=msr(),HNo=XSe(),YNo=Vlt(),QNo=_sr(),XNo=bsr(),JNo=Ssr(),UNo=blt(),KNo=Bsr(),jNo=Tsr(),zNo=Nsr(),qNo=xsr(),$No=gut(),eDo=Vfe(),tDo=$q(),rDo=Zsr(),nDo=Sf(),iDo=b2(),sDo=Vsr(),oDo=uut(),aDo=Osr(),cDo=Hsr(),lDo=Qsr(),uDo=Ksr(),gDo=zsr(),ADo=$sr(),dDo=tor(),pDo=Llt(),fDo=C3e(),IDo=Wlt(),hDo=QSe(),mDo=L3e(),CDo=tM(),_Do=ioe(),yDo=Mfe(),bDo=ior(),EDo=oor(),SDo=lor(),vDo=HSe(),BDo=soe(),wDo=e$(),TDo=Aor(),RDo=Ior(),NDo=OK(),DDo=MK(),kDo=_or(),xDo=bor(),GDo=Tor(),FDo=t$(),ZDo=Nor(),LDo=dut(),VDo=For(),PDo=Vor(),WDo=Oor(),ODo=Yor(),MDo=Jor(),HDo=Kor(),YDo=zor(),QDo=tar(),XDo=nar(),JDo=oar(),UDo=car(),KDo=uar(),jDo=Aar(),tDn=dar(),zDo=far(),qDo=har(),$Do=Bar(),eko=Tar(),tko=Nar(),rko=kar(),nko=Far(),iko=Par(),sko=Mar(),oko=Yar(),ako=Xar(),cko=Uar(),lko=jar(),uko=Sk(),gko=qar(),Ako=ecr(),dko=J3e(),pko=im(),fko=ncr(),Iko=scr(),hko=acr(),mko=lcr(),Cko=gcr(),_ko=dcr(),yko=fcr(),bko=hcr(),Eko=Ccr(),Sko=ycr(),vko=Ecr(),Bko=vcr(),wko=wcr(),Tko=M3e(),Rko=F3e(),Nko=MSe(),Dko=$w(),kko=Ncr(),xko=Q9(),Gko=$5(),Fko=kcr(),Zko=Gcr(),Lko=qy(),Vko=Zcr(),Pko=KNn();Jn.castArray=Swo.castArray;Jn.chunk=vwo.chunk;Jn.compact=Bwo.compact;Jn.concat=wwo.concat;Jn.countBy=Two.countBy;Jn.difference=Rwo.difference;Jn.differenceBy=Nwo.differenceBy;Jn.differenceWith=Dwo.differenceWith;Jn.drop=kwo.drop;Jn.dropRight=xwo.dropRight;Jn.dropRightWhile=Gwo.dropRightWhile;Jn.dropWhile=Fwo.dropWhile;Jn.each=jNn.forEach;Jn.forEach=jNn.forEach;Jn.eachRight=zNn.forEachRight;Jn.forEachRight=zNn.forEachRight;Jn.every=Zwo.every;Jn.fill=Lwo.fill;Jn.filter=Vwo.filter;Jn.find=Pwo.find;Jn.findIndex=Wwo.findIndex;Jn.findLast=Owo.findLast;Jn.findLastIndex=Mwo.findLastIndex;Jn.first=qNn.head;Jn.head=qNn.head;Jn.flatMap=Hwo.flatMap;Jn.flatMapDeep=Ywo.flatMapDeep;Jn.flatMapDepth=Qwo.flatMapDepth;Jn.flatten=Xwo.flatten;Jn.flattenDeep=Jwo.flattenDeep;Jn.flattenDepth=Uwo.flattenDepth;Jn.groupBy=Kwo.groupBy;Jn.includes=jwo.includes;Jn.indexOf=zwo.indexOf;Jn.initial=qwo.initial;Jn.intersection=$wo.intersection;Jn.intersectionBy=eTo.intersectionBy;Jn.intersectionWith=tTo.intersectionWith;Jn.invokeMap=rTo.invokeMap;Jn.join=nTo.join;Jn.keyBy=iTo.keyBy;Jn.last=sTo.last;Jn.lastIndexOf=oTo.lastIndexOf;Jn.map=aTo.map;Jn.nth=cTo.nth;Jn.orderBy=lTo.orderBy;Jn.partition=uTo.partition;Jn.pull=gTo.pull;Jn.pullAll=ATo.pullAll;Jn.pullAllBy=dTo.pullAllBy;Jn.pullAllWith=pTo.pullAllWith;Jn.pullAt=fTo.pullAt;Jn.reduce=ITo.reduce;Jn.reduceRight=hTo.reduceRight;Jn.reject=mTo.reject;Jn.remove=CTo.remove;Jn.reverse=_To.reverse;Jn.sample=yTo.sample;Jn.sampleSize=bTo.sampleSize;Jn.shuffle=ETo.shuffle;Jn.size=STo.size;Jn.slice=vTo.slice;Jn.some=BTo.some;Jn.sortBy=wTo.sortBy;Jn.sortedIndex=TTo.sortedIndex;Jn.sortedIndexBy=RTo.sortedIndexBy;Jn.sortedIndexOf=NTo.sortedIndexOf;Jn.sortedLastIndex=DTo.sortedLastIndex;Jn.sortedLastIndexBy=kTo.sortedLastIndexBy;Jn.sortedLastIndexOf=xTo.sortedLastIndexOf;Jn.tail=GTo.tail;Jn.take=FTo.take;Jn.takeRight=ZTo.takeRight;Jn.takeRightWhile=LTo.takeRightWhile;Jn.takeWhile=VTo.takeWhile;Jn.union=PTo.union;Jn.unionBy=WTo.unionBy;Jn.unionWith=OTo.unionWith;Jn.uniq=MTo.uniq;Jn.uniqBy=HTo.uniqBy;Jn.uniqWith=YTo.uniqWith;Jn.unzip=QTo.unzip;Jn.unzipWith=XTo.unzipWith;Jn.without=JTo.without;Jn.xor=UTo.xor;Jn.xorBy=KTo.xorBy;Jn.xorWith=jTo.xorWith;Jn.zip=zTo.zip;Jn.zipObject=qTo.zipObject;Jn.zipObjectDeep=$To.zipObjectDeep;Jn.zipWith=eRo.zipWith;Jn.after=tRo.after;Jn.ary=rRo.ary;Jn.attempt=nRo.attempt;Jn.before=iRo.before;Jn.bind=sRo.bind;Jn.bindKey=oRo.bindKey;Jn.curry=aRo.curry;Jn.curryRight=cRo.curryRight;Jn.debounce=lRo.debounce;Jn.defer=uRo.defer;Jn.delay=gRo.delay;Jn.flip=ARo.flip;Jn.flow=dRo.flow;Jn.flowRight=pRo.flowRight;Jn.memoize=fRo.memoize;Jn.negate=IRo.negate;Jn.nthArg=hRo.nthArg;Jn.once=mRo.once;Jn.overArgs=CRo.overArgs;Jn.partial=_Ro.partial;Jn.partialRight=yRo.partialRight;Jn.rearg=bRo.rearg;Jn.rest=ERo.rest;Jn.spread=SRo.spread;Jn.throttle=vRo.throttle;Jn.unary=BRo.unary;Jn.wrap=wRo.wrap;Jn.add=TRo.add;Jn.ceil=RRo.ceil;Jn.clamp=NRo.clamp;Jn.divide=DRo.divide;Jn.floor=kRo.floor;Jn.inRange=xRo.inRange;Jn.max=GRo.max;Jn.maxBy=FRo.maxBy;Jn.mean=ZRo.mean;Jn.meanBy=LRo.meanBy;Jn.min=VRo.min;Jn.minBy=PRo.minBy;Jn.multiply=WRo.multiply;Jn.parseInt=ORo.parseInt;Jn.random=MRo.random;Jn.range=HRo.range;Jn.rangeRight=YRo.rangeRight;Jn.round=QRo.round;Jn.subtract=XRo.subtract;Jn.sum=JRo.sum;Jn.sumBy=URo.sumBy;Jn.isEqual=KRo.isEqual;Jn.identity=jRo.identity;Jn.noop=zRo.noop;Jn.assign=qRo.assign;Jn.assignIn=$Nn.assignIn;Jn.extend=$Nn.assignIn;Jn.assignInWith=eDn.assignInWith;Jn.extendWith=eDn.assignInWith;Jn.assignWith=$Ro.assignWith;Jn.at=eNo.at;Jn.clone=tNo.clone;Jn.cloneDeep=rNo.cloneDeep;Jn.cloneDeepWith=nNo.cloneDeepWith;Jn.cloneWith=iNo.cloneWith;Jn.create=sNo.create;Jn.defaults=oNo.defaults;Jn.defaultsDeep=aNo.defaultsDeep;Jn.findKey=cNo.findKey;Jn.findLastKey=lNo.findLastKey;Jn.forIn=uNo.forIn;Jn.forInRight=gNo.forInRight;Jn.forOwn=ANo.forOwn;Jn.forOwnRight=dNo.forOwnRight;Jn.fromPairs=pNo.fromPairs;Jn.functions=fNo.functions;Jn.functionsIn=INo.functionsIn;Jn.get=hNo.get;Jn.has=mNo.has;Jn.hasIn=CNo.hasIn;Jn.invert=_No.invert;Jn.invertBy=yNo.invertBy;Jn.keys=bNo.keys;Jn.keysIn=ENo.keysIn;Jn.mapKeys=SNo.mapKeys;Jn.mapValues=vNo.mapValues;Jn.merge=BNo.merge;Jn.mergeWith=wNo.mergeWith;Jn.omit=TNo.omit;Jn.omitBy=RNo.omitBy;Jn.pick=NNo.pick;Jn.pickBy=DNo.pickBy;Jn.property=kNo.property;Jn.propertyOf=xNo.propertyOf;Jn.result=GNo.result;Jn.set=FNo.set;Jn.setWith=ZNo.setWith;Jn.toDefaulted=LNo.toDefaulted;Jn.toPairs=VNo.toPairs;Jn.toPairsIn=PNo.toPairsIn;Jn.transform=WNo.transform;Jn.unset=ONo.unset;Jn.update=MNo.update;Jn.updateWith=HNo.updateWith;Jn.values=YNo.values;Jn.valuesIn=QNo.valuesIn;Jn.isFunction=XNo.isFunction;Jn.isLength=JNo.isLength;Jn.isMatchWith=UNo.isMatchWith;Jn.isNative=KNo.isNative;Jn.isNull=jNo.isNull;Jn.isUndefined=zNo.isUndefined;Jn.conforms=qNo.conforms;Jn.conformsTo=$No.conformsTo;Jn.isArguments=eDo.isArguments;Jn.isArray=tDo.isArray;Jn.isArrayBuffer=rDo.isArrayBuffer;Jn.isArrayLike=nDo.isArrayLike;Jn.isArrayLikeObject=iDo.isArrayLikeObject;Jn.isBoolean=sDo.isBoolean;Jn.isBuffer=oDo.isBuffer;Jn.isDate=aDo.isDate;Jn.isElement=cDo.isElement;Jn.isEmpty=lDo.isEmpty;Jn.isEqualWith=uDo.isEqualWith;Jn.isError=gDo.isError;Jn.isFinite=ADo.isFinite;Jn.isInteger=dDo.isInteger;Jn.isMap=pDo.isMap;Jn.isMatch=fDo.isMatch;Jn.isNaN=IDo.isNaN;Jn.isNil=hDo.isNil;Jn.isNumber=mDo.isNumber;Jn.isObject=CDo.isObject;Jn.isObjectLike=_Do.isObjectLike;Jn.isPlainObject=yDo.isPlainObject;Jn.isRegExp=bDo.isRegExp;Jn.isSafeInteger=EDo.isSafeInteger;Jn.isSet=SDo.isSet;Jn.isString=vDo.isString;Jn.isSymbol=BDo.isSymbol;Jn.isTypedArray=wDo.isTypedArray;Jn.isWeakMap=TDo.isWeakMap;Jn.isWeakSet=RDo.isWeakSet;Jn.matches=NDo.matches;Jn.matchesProperty=DDo.matchesProperty;Jn.capitalize=kDo.capitalize;Jn.bindAll=xDo.bindAll;Jn.camelCase=GDo.camelCase;Jn.deburr=FDo.deburr;Jn.endsWith=ZDo.endsWith;Jn.escape=LDo.escape;Jn.escapeRegExp=VDo.escapeRegExp;Jn.kebabCase=PDo.kebabCase;Jn.lowerCase=WDo.lowerCase;Jn.lowerFirst=ODo.lowerFirst;Jn.pad=MDo.pad;Jn.padEnd=HDo.padEnd;Jn.padStart=YDo.padStart;Jn.repeat=QDo.repeat;Jn.replace=XDo.replace;Jn.snakeCase=JDo.snakeCase;Jn.split=UDo.split;Jn.startCase=KDo.startCase;Jn.startsWith=jDo.startsWith;Jn.template=tDn.template;Jn.templateSettings=tDn.templateSettings;Jn.toLower=zDo.toLower;Jn.toUpper=qDo.toUpper;Jn.trim=$Do.trim;Jn.trimEnd=eko.trimEnd;Jn.trimStart=tko.trimStart;Jn.truncate=rko.truncate;Jn.unescape=nko.unescape;Jn.upperCase=iko.upperCase;Jn.upperFirst=sko.upperFirst;Jn.words=oko.words;Jn.cond=ako.cond;Jn.constant=cko.constant;Jn.defaultTo=lko.defaultTo;Jn.eq=uko.isEqualsSameValueZero;Jn.gt=gko.gt;Jn.gte=Ako.gte;Jn.invoke=dko.invoke;Jn.iteratee=pko.iteratee;Jn.lt=fko.lt;Jn.lte=Iko.lte;Jn.method=hko.method;Jn.methodOf=mko.methodOf;Jn.now=Cko.now;Jn.over=_ko.over;Jn.overEvery=yko.overEvery;Jn.overSome=bko.overSome;Jn.stubArray=Eko.stubArray;Jn.stubFalse=Sko.stubFalse;Jn.stubObject=vko.stubObject;Jn.stubString=Bko.stubString;Jn.stubTrue=wko.stubTrue;Jn.times=Tko.times;Jn.toArray=Rko.toArray;Jn.toFinite=Nko.toFinite;Jn.toInteger=Dko.toInteger;Jn.toLength=kko.toLength;Jn.toNumber=xko.toNumber;Jn.toPath=Gko.toPath;Jn.toPlainObject=Fko.toPlainObject;Jn.toSafeInteger=Zko.toSafeInteger;Jn.toString=Lko.toString;Jn.uniqueId=Vko.uniqueId;Jn.default=Pko.toolkit});var xW=H((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;exports.parseDuration=parseDuration;var tslib_1=(Pa(),vi(Va)),fslib_1=ro(),clipanion_1=($c(),vi(rg)),compat_1=kW(),micromatch_1=tslib_1.__importDefault(Ek()),p_limit_1=tslib_1.__importDefault(Dfe()),semver_1=tslib_1.__importDefault(UC()),stream_1=wt("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:n=r}){return e===0?n:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(n=>JSON.stringify(n)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let n of e){let a=t(n);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let n=t(r);if(n!==mapAndFindSkip)return n}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let n of t){if(n.status==="rejected")throw n.reason;r.push(n.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let n=e.get(t);return typeof n>"u"&&e.set(t,n=r()),n}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let n=[];e.on("error",a=>{r(a)}),e.on("data",a=>{n.push(a)}),e.on("end",()=>{t(Buffer.concat(n))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),n(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let n=this.deferred.get(t);typeof n>"u"&&this.deferred.set(t,n=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&n.resolve()},o=>{this.promises.get(t)===a&&n.reject(o)}),n.promise}reduce(t,r){let n=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(n))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,n(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let n=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:n}),n}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r="",n=0,a=0,o=e.matchAll(/\\(?[\\$}])|\$\{(?[a-zA-Z]\w*)(?:-|-|(?=\}))|(?\$\{)|\}/g),l=()=>{let A=a;for(let{0:f,index:I,groups:{variable:C}={}}of o)if(C)a++;else if(f==="}"&&--a0)throw new clipanion_1.UsageError(`Incomplete variable substitution in input: ${e}`);return r+e.slice(n)}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=l=>({value:l}),n=r(e),a=t.map(l=>r(l)),{value:o}=(0,compat_1.mergeWith)(n,...a,(l,A)=>{if(Array.isArray(l)&&Array.isArray(A)){for(let f of A)l.find(I=>(0,compat_1.isEqual)(I,f))||l.push(f);return l}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let n of e){let a=n[t];r[a]??=[],r[a].push(n)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}var DURATION_UNITS={ms:1,s:1e3,m:60*1e3,h:60*60*1e3,d:24*60*60*1e3,w:7*24*60*60*1e3},DURATION_REGEXP=new RegExp(`^(?\\d*\\.?\\d+)(?${Object.keys(DURATION_UNITS).join("|")})?$`);function parseDuration(e,t){let r=DURATION_REGEXP.exec(e)?.groups;if(!r)throw new Error(`Couldn't parse "${e}" as a duration`);if(r.unit===void 0)return parseFloat(r.num);let n=DURATION_UNITS[r.unit];if(!n)throw new Error(`Invalid duration unit "${r.unit}"`);return parseFloat(r.num)*n/DURATION_UNITS[t]}});var Qfe=H(loe=>{"use strict";Object.defineProperty(loe,"__esModule",{value:!0});loe.PackageExtensionStatus=loe.PackageExtensionType=loe.LinkType=void 0;var rDn;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(rDn||(loe.LinkType=rDn={}));var nDn;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(nDn||(loe.PackageExtensionType=nDn={}));var iDn;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(iDn||(loe.PackageExtensionStatus=iDn={}))});var rM=H(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});Wu.LogLevel=Wu.supportsHyperlinks=Wu.supportsColor=Wu.Style=Wu.Type=Wu.stripAnsi=void 0;Wu.tuple=Yko;Wu.applyStyle=cDn;Wu.applyColor=eb;Wu.applyHyperlink=lDn;Wu.pretty=Xfe;Wu.prettyList=Xko;Wu.json=uDn;Wu.jsonOrPretty=Jko;Wu.mark=Uko;Wu.prettyField=Kko;Wu.prettyTruncatedLocatorList=jko;Wu.addLogFilterSupport=zko;var zSe=(Pa(),vi(Va)),sDn=ro(),_ut=zSe.__importDefault(VK()),mut=zSe.__importDefault(Nfe()),Wko=($c(),vi(rg)),Oko=zSe.__importDefault(Ek()),aDn=zSe.__importDefault(q5());Wu.stripAnsi=aDn.default;var hut=M9(),Mko=zSe.__importStar(xW()),DE=zSe.__importStar(uG()),jSe=Qfe();Wu.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",STRING:"STRING",BOOLEAN:"BOOLEAN",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var yut;(function(e){e[e.BOLD=2]="BOLD"})(yut||(Wu.Style=yut={}));var Pcr=mut.default.GITHUB_ACTIONS?{level:2}:_ut.default.supportsColor?{level:_ut.default.supportsColor.level}:{level:0};Wu.supportsColor=Pcr.level!==0;Wu.supportsHyperlinks=Wu.supportsColor&&!mut.default.GITHUB_ACTIONS&&!mut.default.CIRCLE&&!mut.default.GITLAB;var Vcr=new _ut.default.Instance(Pcr),Hko=new Map([[Wu.Type.NO_HINT,null],[Wu.Type.NULL,["#a853b5",129]],[Wu.Type.SCOPE,["#d75f00",166]],[Wu.Type.NAME,["#d7875f",173]],[Wu.Type.RANGE,["#00afaf",37]],[Wu.Type.REFERENCE,["#87afff",111]],[Wu.Type.NUMBER,["#ffd700",220]],[Wu.Type.STRING,["#b4bd68",32]],[Wu.Type.BOOLEAN,["#faa023",209]],[Wu.Type.PATH,["#d75fd7",170]],[Wu.Type.URL,["#d75fd7",170]],[Wu.Type.ADDED,["#5faf00",70]],[Wu.Type.REMOVED,["#ff3131",160]],[Wu.Type.CODE,["#87afff",111]],[Wu.Type.SIZE,["#ffd700",220]]]),lG=e=>e;function oDn(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let n=1024**r;return`${Math.floor(e*100/n)/100} ${t[r-1]}`}function Cut(e,t){if(Array.isArray(t))return t.length===0?eb(e,"[]",Wu.Type.CODE):eb(e,"[ ",Wu.Type.CODE)+t.map(r=>Cut(e,r)).join(", ")+eb(e," ]",Wu.Type.CODE);if(typeof t=="string")return eb(e,JSON.stringify(t),Wu.Type.STRING);if(typeof t=="number")return eb(e,JSON.stringify(t),Wu.Type.NUMBER);if(typeof t=="boolean")return eb(e,JSON.stringify(t),Wu.Type.BOOLEAN);if(t===null)return eb(e,"null",Wu.Type.NULL);if(typeof t=="object"&&Object.getPrototypeOf(t)===Object.prototype){let r=Object.entries(t);return r.length===0?eb(e,"{}",Wu.Type.CODE):eb(e,"{ ",Wu.Type.CODE)+r.map(([n,a])=>`${Cut(e,n)}: ${Cut(e,a)}`).join(", ")+eb(e," }",Wu.Type.CODE)}if(typeof t>"u")return eb(e,"undefined",Wu.Type.NULL);throw new Error("Assertion failed: The value doesn't seem to be a valid JSON object")}var but={[Wu.Type.ID]:lG({pretty:(e,t)=>typeof t=="number"?eb(e,`${t}`,Wu.Type.NUMBER):eb(e,t,Wu.Type.CODE),json:e=>e}),[Wu.Type.INSPECT]:lG({pretty:(e,t)=>Cut(e,t),json:e=>e}),[Wu.Type.NUMBER]:lG({pretty:(e,t)=>eb(e,`${t}`,Wu.Type.NUMBER),json:e=>e}),[Wu.Type.IDENT]:lG({pretty:(e,t)=>DE.prettyIdent(e,t),json:e=>DE.stringifyIdent(e)}),[Wu.Type.LOCATOR]:lG({pretty:(e,t)=>DE.prettyLocator(e,t),json:e=>DE.stringifyLocator(e)}),[Wu.Type.DESCRIPTOR]:lG({pretty:(e,t)=>DE.prettyDescriptor(e,t),json:e=>DE.stringifyDescriptor(e)}),[Wu.Type.RESOLUTION]:lG({pretty:(e,{descriptor:t,locator:r})=>DE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:DE.stringifyDescriptor(e),locator:t!==null?DE.stringifyLocator(t):null})}),[Wu.Type.DEPENDENT]:lG({pretty:(e,{locator:t,descriptor:r})=>DE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:DE.stringifyLocator(e),descriptor:DE.stringifyDescriptor(t)})}),[Wu.Type.PACKAGE_EXTENSION]:lG({pretty:(e,t)=>{switch(t.type){case jSe.PackageExtensionType.Dependency:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"dependencies",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,t.descriptor)}`;case jSe.PackageExtensionType.PeerDependency:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"peerDependencies",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,t.descriptor)}`;case jSe.PackageExtensionType.PeerDependencyMeta:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"peerDependenciesMeta",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,DE.parseIdent(t.selector))} \u27A4 ${eb(e,t.key,Wu.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case jSe.PackageExtensionType.Dependency:return`${DE.stringifyIdent(e.parentDescriptor)} > ${DE.stringifyIdent(e.descriptor)}`;case jSe.PackageExtensionType.PeerDependency:return`${DE.stringifyIdent(e.parentDescriptor)} >> ${DE.stringifyIdent(e.descriptor)}`;case jSe.PackageExtensionType.PeerDependencyMeta:return`${DE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Wu.Type.SETTING]:lG({pretty:(e,t)=>(e.get(t),lDn(e,eb(e,t,Wu.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Wu.Type.DURATION]:lG({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),n=Math.ceil((t-r*60*1e3)/1e3);return n===0?`${r}m`:`${r}m ${n}s`}else{let r=Math.floor(t/1e3),n=t-r*1e3;return n===0?`${r}s`:`${r}s ${n}ms`}},json:e=>e}),[Wu.Type.SIZE]:lG({pretty:(e,t)=>eb(e,oDn(t),Wu.Type.NUMBER),json:e=>e}),[Wu.Type.SIZE_DIFF]:lG({pretty:(e,t)=>{let r=t>=0?"+":"-",n=r==="+"?Wu.Type.REMOVED:Wu.Type.ADDED;return eb(e,`${r} ${oDn(Math.max(Math.abs(t),1))}`,n)},json:e=>e}),[Wu.Type.PATH]:lG({pretty:(e,t)=>eb(e,sDn.npath.fromPortablePath(t),Wu.Type.PATH),json:e=>sDn.npath.fromPortablePath(e)}),[Wu.Type.MARKDOWN]:lG({pretty:(e,{text:t,format:r,paragraphs:n})=>(0,Wko.formatMarkdownish)(t,{format:r,paragraphs:n}),json:({text:e})=>e}),[Wu.Type.MARKDOWN_INLINE]:lG({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,n,a)=>Xfe(e,n+a+n,Wu.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,n,a)=>cDn(e,a,yut.BOLD)),t),json:e=>e})};function Yko(e,t){return[t,e]}function cDn(e,t,r){return e.get("enableColors")&&r&yut.BOLD&&(t=_ut.default.bold(t)),t}function eb(e,t,r){if(!e.get("enableColors"))return t;let n=Hko.get(r);if(n===null)return t;let a=typeof n>"u"?r:Pcr.level>=3?n[0]:n[1],o=typeof a=="number"?Vcr.ansi256(a):a.startsWith("#")?Vcr.hex(a):Vcr[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var Qko=!!process.env.KONSOLE_VERSION;function lDn(e,t,r){return e.get("enableHyperlinks")?Qko?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function Xfe(e,t,r){if(t===null)return eb(e,"null",Wu.Type.NULL);if(Object.hasOwn(but,r))return but[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return eb(e,t,r)}function Xko(e,t,r,{separator:n=", "}={}){return[...t].map(a=>Xfe(e,a,r)).join(n)}function uDn(e,t){if(e===null)return null;if(Object.hasOwn(but,t))return Mko.overrideType(t),but[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function Jko(e,t,[r,n]){return e?uDn(r,n):Xfe(t,r,n)}function Uko(e){return{Check:eb(e,"\u2713","green"),Cross:eb(e,"\u2718","red"),Question:eb(e,"?","cyan")}}function Kko(e,{label:t,value:[r,n]}){return`${Xfe(e,t,Wu.Type.CODE)}: ${Xfe(e,r,n)}`}function jko(e,t,r){let n=[],a=[...t],o=r;for(;a.length>0;){let I=a[0],C=`${DE.prettyLocator(e,I)}, `,b=DE.prettyLocatorNoColors(I).length+2;if(n.length>0&&oI).join("").slice(0,-2);let l="X".repeat(a.length.toString().length),A=`and ${l} more.`,f=a.length;for(;n.length>1&&oI).join(""),A.replace(l,Xfe(e,f,Wu.Type.NUMBER))].join("")}var uoe;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(uoe||(Wu.LogLevel=uoe={}));function zko(e,{configuration:t}){let r=t.get("logFilters"),n=new Map,a=new Map,o=[];for(let b of r){let E=b.get("level");if(typeof E>"u")continue;let N=b.get("code");typeof N<"u"&&n.set(N,E);let B=b.get("text");typeof B<"u"&&a.set(B,E);let F=b.get("pattern");typeof F<"u"&&o.push([Oko.default.matcher(F,{contains:!0}),E])}o.reverse();let l=(b,E,N)=>{if(b===null||b===hut.MessageName.UNNAMED)return N;let B=a.size>0||o.length>0?(0,aDn.default)(E):E;if(a.size>0){let F=a.get(B);if(typeof F<"u")return F??N}if(o.length>0){for(let[F,Q]of o)if(F(B))return Q??N}if(n.size>0){let F=n.get((0,hut.stringifyMessageName)(b));if(typeof F<"u")return F??N}return N},A=e.reportInfo,f=e.reportWarning,I=e.reportError,C=function(b,E,N,B){switch(l(E,N,B)){case uoe.Info:A.call(b,E,N);break;case uoe.Warning:f.call(b,E??hut.MessageName.UNNAMED,N);break;case uoe.Error:I.call(b,E??hut.MessageName.UNNAMED,N);break}};e.reportInfo=function(...b){return C(this,...b,uoe.Info)},e.reportWarning=function(...b){return C(this,...b,uoe.Warning)},e.reportError=function(...b){return C(this,...b,uoe.Error)}}});var gDn=H(qSe=>{"use strict";Object.defineProperty(qSe,"__esModule",{value:!0});qSe.splitWhen=qSe.flatten=void 0;function qko(e){return e.reduce((t,r)=>[].concat(t,r),[])}qSe.flatten=qko;function $ko(e,t){let r=[[]],n=0;for(let a of e)t(a)?(n++,r[n]=[]):r[n].push(a);return r}qSe.splitWhen=$ko});var ADn=H(Eut=>{"use strict";Object.defineProperty(Eut,"__esModule",{value:!0});Eut.isEnoentCodeError=void 0;function exo(e){return e.code==="ENOENT"}Eut.isEnoentCodeError=exo});var dDn=H(Sut=>{"use strict";Object.defineProperty(Sut,"__esModule",{value:!0});Sut.createDirentFromStats=void 0;var Wcr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function txo(e,t){return new Wcr(e,t)}Sut.createDirentFromStats=txo});var hDn=H(eT=>{"use strict";Object.defineProperty(eT,"__esModule",{value:!0});eT.convertPosixPathToPattern=eT.convertWindowsPathToPattern=eT.convertPathToPattern=eT.escapePosixPath=eT.escapeWindowsPath=eT.escape=eT.removeLeadingDotSegment=eT.makeAbsolute=eT.unixify=void 0;var rxo=wt("os"),nxo=wt("path"),pDn=rxo.platform()==="win32",ixo=2,sxo=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,oxo=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,axo=/^\\\\([.?])/,cxo=/\\(?![!()+@[\]{}])/g;function lxo(e){return e.replace(/\\/g,"/")}eT.unixify=lxo;function uxo(e,t){return nxo.resolve(e,t)}eT.makeAbsolute=uxo;function gxo(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(ixo)}return e}eT.removeLeadingDotSegment=gxo;eT.escape=pDn?Ocr:Mcr;function Ocr(e){return e.replace(oxo,"\\$2")}eT.escapeWindowsPath=Ocr;function Mcr(e){return e.replace(sxo,"\\$2")}eT.escapePosixPath=Mcr;eT.convertPathToPattern=pDn?fDn:IDn;function fDn(e){return Ocr(e).replace(axo,"//$1").replace(cxo,"/")}eT.convertWindowsPathToPattern=fDn;function IDn(e){return Mcr(e)}eT.convertPosixPathToPattern=IDn});var CDn=H((MKl,mDn)=>{mDn.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var bDn=H((HKl,yDn)=>{var Axo=CDn(),_Dn={"{":"}","(":")","[":"]"},dxo=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,n=-2,a=-2,o=-2,l=-2;tt&&(l===-1||l>n||(l=e.indexOf("\\",t),l===-1||l>n)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(l=e.indexOf("\\",t),l===-1||l>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(l=e.indexOf("\\",t),l===-1||l>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(l=e.indexOf("\\",r),l===-1||l>o))))return!0;if(e[t]==="\\"){var A=e[t+1];t+=2;var f=_Dn[A];if(f){var I=e.indexOf(f,t);I!==-1&&(t=I+1)}if(e[t]==="!")return!0}else t++}return!1},pxo=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var fxo=bDn(),Ixo=wt("path").posix.dirname,hxo=wt("os").platform()==="win32",Hcr="/",mxo=/\\/g,Cxo=/[\{\[].*[\}\]]$/,_xo=/(^|[^\\])([\{\[]|\([^\)]+$)/,yxo=/\\([\!\*\?\|\[\]\(\)\{\}])/g;EDn.exports=function(t,r){var n=Object.assign({flipBackslashes:!0},r);n.flipBackslashes&&hxo&&t.indexOf(Hcr)<0&&(t=t.replace(mxo,Hcr)),Cxo.test(t)&&(t+=Hcr),t+="a";do t=Ixo(t);while(fxo(t)||_xo.test(t));return t.replace(yxo,"$1")}});var kDn=H(oI=>{"use strict";Object.defineProperty(oI,"__esModule",{value:!0});oI.removeDuplicateSlashes=oI.matchAny=oI.convertPatternsToRe=oI.makeRe=oI.getPatternParts=oI.expandBraceExpansion=oI.expandPatternsWithBraceExpansion=oI.isAffectDepthOfReadingPattern=oI.endsWithSlashGlobStar=oI.hasGlobStar=oI.getBaseDirectory=oI.isPatternRelatedToParentDirectory=oI.getPatternsOutsideCurrentDirectory=oI.getPatternsInsideCurrentDirectory=oI.getPositivePatterns=oI.getNegativePatterns=oI.isPositivePattern=oI.isNegativePattern=oI.convertToNegativePattern=oI.convertToPositivePattern=oI.isDynamicPattern=oI.isStaticPattern=void 0;var bxo=wt("path"),Exo=SDn(),Ycr=Ek(),vDn="**",Sxo="\\",vxo=/[*?]|^!/,Bxo=/\[[^[]*]/,wxo=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,Txo=/[!*+?@]\([^(]*\)/,Rxo=/,|\.\./,Nxo=/(?!^)\/{2,}/g;function BDn(e,t={}){return!wDn(e,t)}oI.isStaticPattern=BDn;function wDn(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(Sxo)||vxo.test(e)||Bxo.test(e)||wxo.test(e)||t.extglob!==!1&&Txo.test(e)||t.braceExpansion!==!1&&Dxo(e))}oI.isDynamicPattern=wDn;function Dxo(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let n=e.slice(t,r);return Rxo.test(n)}function kxo(e){return vut(e)?e.slice(1):e}oI.convertToPositivePattern=kxo;function xxo(e){return"!"+e}oI.convertToNegativePattern=xxo;function vut(e){return e.startsWith("!")&&e[1]!=="("}oI.isNegativePattern=vut;function TDn(e){return!vut(e)}oI.isPositivePattern=TDn;function Gxo(e){return e.filter(vut)}oI.getNegativePatterns=Gxo;function Fxo(e){return e.filter(TDn)}oI.getPositivePatterns=Fxo;function Zxo(e){return e.filter(t=>!Qcr(t))}oI.getPatternsInsideCurrentDirectory=Zxo;function Lxo(e){return e.filter(Qcr)}oI.getPatternsOutsideCurrentDirectory=Lxo;function Qcr(e){return e.startsWith("..")||e.startsWith("./..")}oI.isPatternRelatedToParentDirectory=Qcr;function Vxo(e){return Exo(e,{flipBackslashes:!1})}oI.getBaseDirectory=Vxo;function Pxo(e){return e.includes(vDn)}oI.hasGlobStar=Pxo;function RDn(e){return e.endsWith("/"+vDn)}oI.endsWithSlashGlobStar=RDn;function Wxo(e){let t=bxo.basename(e);return RDn(e)||BDn(t)}oI.isAffectDepthOfReadingPattern=Wxo;function Oxo(e){return e.reduce((t,r)=>t.concat(NDn(r)),[])}oI.expandPatternsWithBraceExpansion=Oxo;function NDn(e){let t=Ycr.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,n)=>r.length-n.length),t.filter(r=>r!=="")}oI.expandBraceExpansion=NDn;function Mxo(e,t){let{parts:r}=Ycr.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}oI.getPatternParts=Mxo;function DDn(e,t){return Ycr.makeRe(e,t)}oI.makeRe=DDn;function Hxo(e,t){return e.map(r=>DDn(r,t))}oI.convertPatternsToRe=Hxo;function Yxo(e,t){return t.some(r=>r.test(e))}oI.matchAny=Yxo;function Qxo(e){return e.replace(Nxo,"/")}oI.removeDuplicateSlashes=Qxo});var Xcr=H((XKl,FDn)=>{"use strict";var Xxo=wt("stream"),xDn=Xxo.PassThrough,Jxo=Array.prototype.slice;FDn.exports=Uxo;function Uxo(){let e=[],t=Jxo.call(arguments),r=!1,n=t[t.length-1];n&&!Array.isArray(n)&&n.pipe==null?t.pop():n={};let a=n.end!==!1,o=n.pipeError===!0;n.objectMode==null&&(n.objectMode=!0),n.highWaterMark==null&&(n.highWaterMark=64*1024);let l=xDn(n);function A(){for(let C=0,b=arguments.length;C0||(r=!1,f())}function N(B){function F(){B.removeListener("merge2UnpipeEnd",F),B.removeListener("end",F),o&&B.removeListener("error",Q),E()}function Q(X){l.emit("error",X)}if(B._readableState.endEmitted)return E();B.on("merge2UnpipeEnd",F),B.on("end",F),o&&B.on("error",Q),B.pipe(l,{end:!1}),B.resume()}for(let B=0;B{"use strict";Object.defineProperty(But,"__esModule",{value:!0});But.merge=void 0;var Kxo=Xcr();function jxo(e){let t=Kxo(e);return e.forEach(r=>{r.once("error",n=>t.emit("error",n))}),t.once("close",()=>ZDn(e)),t.once("end",()=>ZDn(e)),t}But.merge=jxo;function ZDn(e){e.forEach(t=>t.emit("close"))}});var VDn=H($Se=>{"use strict";Object.defineProperty($Se,"__esModule",{value:!0});$Se.isEmpty=$Se.isString=void 0;function zxo(e){return typeof e=="string"}$Se.isString=zxo;function qxo(e){return e===""}$Se.isEmpty=qxo});var r$=H(gG=>{"use strict";Object.defineProperty(gG,"__esModule",{value:!0});gG.string=gG.stream=gG.pattern=gG.path=gG.fs=gG.errno=gG.array=void 0;var $xo=gDn();gG.array=$xo;var eGo=ADn();gG.errno=eGo;var tGo=dDn();gG.fs=tGo;var rGo=hDn();gG.path=rGo;var nGo=kDn();gG.pattern=nGo;var iGo=LDn();gG.stream=iGo;var sGo=VDn();gG.string=sGo});var MDn=H(AG=>{"use strict";Object.defineProperty(AG,"__esModule",{value:!0});AG.convertPatternGroupToTask=AG.convertPatternGroupsToTasks=AG.groupPatternsByBaseDirectory=AG.getNegativePatternsAsPositive=AG.getPositivePatterns=AG.convertPatternsToTasks=AG.generate=void 0;var sX=r$();function oGo(e,t){let r=PDn(e,t),n=PDn(t.ignore,t),a=WDn(r),o=ODn(r,n),l=a.filter(C=>sX.pattern.isStaticPattern(C,t)),A=a.filter(C=>sX.pattern.isDynamicPattern(C,t)),f=Jcr(l,o,!1),I=Jcr(A,o,!0);return f.concat(I)}AG.generate=oGo;function PDn(e,t){let r=e;return t.braceExpansion&&(r=sX.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(n=>n.includes("/")?n:`**/${n}`)),r.map(n=>sX.pattern.removeDuplicateSlashes(n))}function Jcr(e,t,r){let n=[],a=sX.pattern.getPatternsOutsideCurrentDirectory(e),o=sX.pattern.getPatternsInsideCurrentDirectory(e),l=Ucr(a),A=Ucr(o);return n.push(...Kcr(l,t,r)),"."in A?n.push(jcr(".",o,t,r)):n.push(...Kcr(A,t,r)),n}AG.convertPatternsToTasks=Jcr;function WDn(e){return sX.pattern.getPositivePatterns(e)}AG.getPositivePatterns=WDn;function ODn(e,t){return sX.pattern.getNegativePatterns(e).concat(t).map(sX.pattern.convertToPositivePattern)}AG.getNegativePatternsAsPositive=ODn;function Ucr(e){let t={};return e.reduce((r,n)=>{let a=sX.pattern.getBaseDirectory(n);return a in r?r[a].push(n):r[a]=[n],r},t)}AG.groupPatternsByBaseDirectory=Ucr;function Kcr(e,t,r){return Object.keys(e).map(n=>jcr(n,e[n],t,r))}AG.convertPatternGroupsToTasks=Kcr;function jcr(e,t,r,n){return{dynamic:n,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(sX.pattern.convertToNegativePattern))}}AG.convertPatternGroupToTask=jcr});var YDn=H(wut=>{"use strict";Object.defineProperty(wut,"__esModule",{value:!0});wut.read=void 0;function aGo(e,t,r){t.fs.lstat(e,(n,a)=>{if(n!==null){HDn(r,n);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){zcr(r,a);return}t.fs.stat(e,(o,l)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){HDn(r,o);return}zcr(r,a);return}t.markSymbolicLink&&(l.isSymbolicLink=()=>!0),zcr(r,l)})})}wut.read=aGo;function HDn(e,t){e(t)}function zcr(e,t){e(null,t)}});var QDn=H(Tut=>{"use strict";Object.defineProperty(Tut,"__esModule",{value:!0});Tut.read=void 0;function cGo(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let n=t.fs.statSync(e);return t.markSymbolicLink&&(n.isSymbolicLink=()=>!0),n}catch(n){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw n}}Tut.read=cGo});var XDn=H(goe=>{"use strict";Object.defineProperty(goe,"__esModule",{value:!0});goe.createFileSystemAdapter=goe.FILE_SYSTEM_ADAPTER=void 0;var Rut=wt("fs");goe.FILE_SYSTEM_ADAPTER={lstat:Rut.lstat,stat:Rut.stat,lstatSync:Rut.lstatSync,statSync:Rut.statSync};function lGo(e){return e===void 0?goe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},goe.FILE_SYSTEM_ADAPTER),e)}goe.createFileSystemAdapter=lGo});var JDn=H($cr=>{"use strict";Object.defineProperty($cr,"__esModule",{value:!0});var uGo=XDn(),qcr=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=uGo.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};$cr.default=qcr});var Jfe=H(Aoe=>{"use strict";Object.defineProperty(Aoe,"__esModule",{value:!0});Aoe.statSync=Aoe.stat=Aoe.Settings=void 0;var UDn=YDn(),gGo=QDn(),elr=JDn();Aoe.Settings=elr.default;function AGo(e,t,r){if(typeof t=="function"){UDn.read(e,tlr(),t);return}UDn.read(e,tlr(t),r)}Aoe.stat=AGo;function dGo(e,t){let r=tlr(t);return gGo.read(e,r)}Aoe.statSync=dGo;function tlr(e={}){return e instanceof elr.default?e:new elr.default(e)}});var zDn=H((r8l,jDn)=>{var KDn;jDn.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(KDn||(KDn=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var $Dn=H((n8l,qDn)=>{qDn.exports=fGo;var pGo=zDn();function fGo(e,t){let r,n,a,o=!0;Array.isArray(e)?(r=[],n=e.length):(a=Object.keys(e),r={},n=a.length);function l(f){function I(){t&&t(f,r),t=null}o?pGo(I):I()}function A(f,I,C){r[f]=C,(--n===0||I)&&l(I)}n?a?a.forEach(function(f){e[f](function(I,C){A(f,I,C)})}):e.forEach(function(f,I){f(function(C,b){A(I,C,b)})}):l(null),o=!1}});var rlr=H(Dut=>{"use strict";Object.defineProperty(Dut,"__esModule",{value:!0});Dut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var Nut=process.versions.node.split(".");if(Nut[0]===void 0||Nut[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var ekn=Number.parseInt(Nut[0],10),IGo=Number.parseInt(Nut[1],10),tkn=10,hGo=10,mGo=ekn>tkn,CGo=ekn===tkn&&IGo>=hGo;Dut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=mGo||CGo});var rkn=H(kut=>{"use strict";Object.defineProperty(kut,"__esModule",{value:!0});kut.createDirentFromStats=void 0;var nlr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function _Go(e,t){return new nlr(e,t)}kut.createDirentFromStats=_Go});var ilr=H(xut=>{"use strict";Object.defineProperty(xut,"__esModule",{value:!0});xut.fs=void 0;var yGo=rkn();xut.fs=yGo});var slr=H(Gut=>{"use strict";Object.defineProperty(Gut,"__esModule",{value:!0});Gut.joinPathSegments=void 0;function bGo(e,t,r){return e.endsWith(r)?e+t:e+r+t}Gut.joinPathSegments=bGo});var ckn=H(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});doe.readdir=doe.readdirWithFileTypes=doe.read=void 0;var EGo=Jfe(),nkn=$Dn(),SGo=rlr(),ikn=ilr(),skn=slr();function vGo(e,t,r){if(!t.stats&&SGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES){okn(e,t,r);return}akn(e,t,r)}doe.read=vGo;function okn(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(n,a)=>{if(n!==null){Fut(r,n);return}let o=a.map(A=>({dirent:A,name:A.name,path:skn.joinPathSegments(e,A.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){olr(r,o);return}let l=o.map(A=>BGo(A,t));nkn(l,(A,f)=>{if(A!==null){Fut(r,A);return}olr(r,f)})})}doe.readdirWithFileTypes=okn;function BGo(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(n,a)=>{if(n!==null){if(t.throwErrorOnBrokenSymbolicLink){r(n);return}r(null,e);return}e.dirent=ikn.fs.createDirentFromStats(e.name,a),r(null,e)})}}function akn(e,t,r){t.fs.readdir(e,(n,a)=>{if(n!==null){Fut(r,n);return}let o=a.map(l=>{let A=skn.joinPathSegments(e,l,t.pathSegmentSeparator);return f=>{EGo.stat(A,t.fsStatSettings,(I,C)=>{if(I!==null){f(I);return}let b={name:l,path:A,dirent:ikn.fs.createDirentFromStats(l,C)};t.stats&&(b.stats=C),f(null,b)})}});nkn(o,(l,A)=>{if(l!==null){Fut(r,l);return}olr(r,A)})})}doe.readdir=akn;function Fut(e,t){e(t)}function olr(e,t){e(null,t)}});var dkn=H(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});poe.readdir=poe.readdirWithFileTypes=poe.read=void 0;var wGo=Jfe(),TGo=rlr(),lkn=ilr(),ukn=slr();function RGo(e,t){return!t.stats&&TGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES?gkn(e,t):Akn(e,t)}poe.read=RGo;function gkn(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(n=>{let a={dirent:n,name:n.name,path:ukn.joinPathSegments(e,n.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=lkn.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}poe.readdirWithFileTypes=gkn;function Akn(e,t){return t.fs.readdirSync(e).map(n=>{let a=ukn.joinPathSegments(e,n,t.pathSegmentSeparator),o=wGo.statSync(a,t.fsStatSettings),l={name:n,path:a,dirent:lkn.fs.createDirentFromStats(n,o)};return t.stats&&(l.stats=o),l})}poe.readdir=Akn});var pkn=H(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});foe.createFileSystemAdapter=foe.FILE_SYSTEM_ADAPTER=void 0;var eve=wt("fs");foe.FILE_SYSTEM_ADAPTER={lstat:eve.lstat,stat:eve.stat,lstatSync:eve.lstatSync,statSync:eve.statSync,readdir:eve.readdir,readdirSync:eve.readdirSync};function NGo(e){return e===void 0?foe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},foe.FILE_SYSTEM_ADAPTER),e)}foe.createFileSystemAdapter=NGo});var fkn=H(clr=>{"use strict";Object.defineProperty(clr,"__esModule",{value:!0});var DGo=wt("path"),kGo=Jfe(),xGo=pkn(),alr=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=xGo.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,DGo.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new kGo.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};clr.default=alr});var Zut=H(Ioe=>{"use strict";Object.defineProperty(Ioe,"__esModule",{value:!0});Ioe.Settings=Ioe.scandirSync=Ioe.scandir=void 0;var Ikn=ckn(),GGo=dkn(),llr=fkn();Ioe.Settings=llr.default;function FGo(e,t,r){if(typeof t=="function"){Ikn.read(e,ulr(),t);return}Ikn.read(e,ulr(t),r)}Ioe.scandir=FGo;function ZGo(e,t){let r=ulr(t);return GGo.read(e,r)}Ioe.scandirSync=ZGo;function ulr(e={}){return e instanceof llr.default?e:new llr.default(e)}});var mkn=H((d8l,hkn)=>{"use strict";function LGo(e){var t=new e,r=t;function n(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:n,release:a}}hkn.exports=LGo});var _kn=H((p8l,glr)=>{"use strict";var VGo=mkn();function Ckn(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=VGo(PGo),a=null,o=null,l=0,A=null,f={push:F,drain:nM,saturated:nM,pause:C,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&l=r||f.paused?o?(o.next=de,o=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function Q(fe,ue){var de=n.get();de.context=e,de.release=X,de.value=fe,de.callback=ue||nM,de.errorHandler=A,l>=r||f.paused?a?(de.next=a,a=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function X(fe){fe&&n.release(fe);var ue=a;ue&&l<=r?f.paused?l--:(o===a&&(o=null),a=ue.next,ue.next=null,t.call(e,ue.value,ue.worked),o===null&&f.empty()):--l===0&&f.drain()}function ae(){a=null,o=null,f.drain=nM}function ne(){a=null,o=null,f.drain(),f.drain=nM}function ce(fe){A=fe}}function nM(){}function PGo(){this.value=null,this.callback=nM,this.next=null,this.release=nM,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var a=e.callback,o=e.errorHandler,l=e.value;e.value=null,e.callback=nM,e.errorHandler&&o(r,l),a.call(e.context,r,n),e.release(e)}}function WGo(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(C,b){t.call(this,C).then(function(E){b(null,E)},b)}var a=Ckn(e,n,r),o=a.push,l=a.unshift;return a.push=A,a.unshift=f,a.drained=I,a;function A(C){var b=new Promise(function(E,N){o(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(nM),b}function f(C){var b=new Promise(function(E,N){l(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(nM),b}function I(){if(a.idle())return new Promise(function(E){E()});var C=a.drain,b=new Promise(function(E){a.drain=function(){C(),E()}});return b}}glr.exports=Ckn;glr.exports.promise=WGo});var Lut=H(QK=>{"use strict";Object.defineProperty(QK,"__esModule",{value:!0});QK.joinPathSegments=QK.replacePathSegmentSeparator=QK.isAppliedFilter=QK.isFatalError=void 0;function OGo(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}QK.isFatalError=OGo;function MGo(e,t){return e===null||e(t)}QK.isAppliedFilter=MGo;function HGo(e,t){return e.split(/[/\\]/).join(t)}QK.replacePathSegmentSeparator=HGo;function YGo(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}QK.joinPathSegments=YGo});var plr=H(dlr=>{"use strict";Object.defineProperty(dlr,"__esModule",{value:!0});var QGo=Lut(),Alr=class{constructor(t,r){this._root=t,this._settings=r,this._root=QGo.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};dlr.default=Alr});var hlr=H(Ilr=>{"use strict";Object.defineProperty(Ilr,"__esModule",{value:!0});var XGo=wt("events"),JGo=Zut(),UGo=_kn(),Vut=Lut(),KGo=plr(),flr=class extends KGo.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=JGo.scandir,this._emitter=new XGo.EventEmitter,this._queue=UGo(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let n={directory:t,base:r};this._queue.push(n,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(n,a)=>{if(n!==null){r(n,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!Vut.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let n=t.path;r!==void 0&&(t.path=Vut.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Vut.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&Vut.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};Ilr.default=flr});var ykn=H(Clr=>{"use strict";Object.defineProperty(Clr,"__esModule",{value:!0});var jGo=hlr(),mlr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new jGo.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{zGo(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{qGo(t,this._storage)}),this._reader.read()}};Clr.default=mlr;function zGo(e,t){e(t)}function qGo(e,t){e(null,t)}});var bkn=H(ylr=>{"use strict";Object.defineProperty(ylr,"__esModule",{value:!0});var $Go=wt("stream"),eFo=hlr(),_lr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new eFo.default(this._root,this._settings),this._stream=new $Go.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};ylr.default=_lr});var Ekn=H(Elr=>{"use strict";Object.defineProperty(Elr,"__esModule",{value:!0});var tFo=Zut(),Put=Lut(),rFo=plr(),blr=class extends rFo.default{constructor(){super(...arguments),this._scandir=tFo.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let n=this._scandir(t,this._settings.fsScandirSettings);for(let a of n)this._handleEntry(a,r)}catch(n){this._handleError(n)}}_handleError(t){if(Put.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let n=t.path;r!==void 0&&(t.path=Put.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Put.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&Put.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};Elr.default=blr});var Skn=H(vlr=>{"use strict";Object.defineProperty(vlr,"__esModule",{value:!0});var nFo=Ekn(),Slr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new nFo.default(this._root,this._settings)}read(){return this._reader.read()}};vlr.default=Slr});var vkn=H(wlr=>{"use strict";Object.defineProperty(wlr,"__esModule",{value:!0});var iFo=wt("path"),sFo=Zut(),Blr=class{constructor(t={}){this._options=t,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,iFo.sep),this.fsScandirSettings=new sFo.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};wlr.default=Blr});var Out=H(XK=>{"use strict";Object.defineProperty(XK,"__esModule",{value:!0});XK.Settings=XK.walkStream=XK.walkSync=XK.walk=void 0;var Bkn=ykn(),oFo=bkn(),aFo=Skn(),Tlr=vkn();XK.Settings=Tlr.default;function cFo(e,t,r){if(typeof t=="function"){new Bkn.default(e,Wut()).read(t);return}new Bkn.default(e,Wut(t)).read(r)}XK.walk=cFo;function lFo(e,t){let r=Wut(t);return new aFo.default(e,r).read()}XK.walkSync=lFo;function uFo(e,t){let r=Wut(t);return new oFo.default(e,r).read()}XK.walkStream=uFo;function Wut(e={}){return e instanceof Tlr.default?e:new Tlr.default(e)}});var Mut=H(Nlr=>{"use strict";Object.defineProperty(Nlr,"__esModule",{value:!0});var gFo=wt("path"),AFo=Jfe(),wkn=r$(),Rlr=class{constructor(t){this._settings=t,this._fsStatSettings=new AFo.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return gFo.resolve(this._settings.cwd,t)}_makeEntry(t,r){let n={name:r,path:r,dirent:wkn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(n.stats=t),n}_isFatalError(t){return!wkn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};Nlr.default=Rlr});var xlr=H(klr=>{"use strict";Object.defineProperty(klr,"__esModule",{value:!0});var dFo=wt("stream"),pFo=Jfe(),fFo=Out(),IFo=Mut(),Dlr=class extends IFo.default{constructor(){super(...arguments),this._walkStream=fFo.walkStream,this._stat=pFo.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let n=t.map(this._getFullEntryPath,this),a=new dFo.PassThrough({objectMode:!0});a._write=(o,l,A)=>this._getEntry(n[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===n.length-1&&a.end(),A()}).catch(A);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(n.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,n)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):n(a))})}};klr.default=Dlr});var Tkn=H(Flr=>{"use strict";Object.defineProperty(Flr,"__esModule",{value:!0});var hFo=Out(),mFo=Mut(),CFo=xlr(),Glr=class extends mFo.default{constructor(){super(...arguments),this._walkAsync=hFo.walk,this._readerStream=new CFo.default(this._settings)}dynamic(t,r){return new Promise((n,a)=>{this._walkAsync(t,r,(o,l)=>{o===null?n(l):a(o)})})}async static(t,r){let n=[],a=this._readerStream.static(t,r);return new Promise((o,l)=>{a.once("error",l),a.on("data",A=>n.push(A)),a.once("end",()=>o(n))})}};Flr.default=Glr});var Rkn=H(Llr=>{"use strict";Object.defineProperty(Llr,"__esModule",{value:!0});var U3e=r$(),Zlr=class{constructor(t,r,n){this._patterns=t,this._settings=r,this._micromatchOptions=n,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),n=this._splitSegmentsIntoSections(r);this._storage.push({complete:n.length<=1,pattern:t,segments:r,sections:n})}}_getPatternSegments(t){return U3e.pattern.getPatternParts(t,this._micromatchOptions).map(n=>U3e.pattern.isDynamicPattern(n,this._settings)?{dynamic:!0,pattern:n,patternRe:U3e.pattern.makeRe(n,this._micromatchOptions)}:{dynamic:!1,pattern:n})}_splitSegmentsIntoSections(t){return U3e.array.splitWhen(t,r=>r.dynamic&&U3e.pattern.hasGlobStar(r.pattern))}};Llr.default=Zlr});var Nkn=H(Plr=>{"use strict";Object.defineProperty(Plr,"__esModule",{value:!0});var _Fo=Rkn(),Vlr=class extends _Fo.default{match(t){let r=t.split("/"),n=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>n);for(let o of a){let l=o.sections[0];if(!o.complete&&n>l.length||r.every((f,I)=>{let C=o.segments[I];return!!(C.dynamic&&C.patternRe.test(f)||!C.dynamic&&C.pattern===f)}))return!0}return!1}};Plr.default=Vlr});var Dkn=H(Olr=>{"use strict";Object.defineProperty(Olr,"__esModule",{value:!0});var Hut=r$(),yFo=Nkn(),Wlr=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,n){let a=this._getMatcher(r),o=this._getNegativePatternsRe(n);return l=>this._filter(t,l,a,o)}_getMatcher(t){return new yFo.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(Hut.pattern.isAffectDepthOfReadingPattern);return Hut.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,n,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=Hut.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,n)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let n=r.split("/").length;if(t==="")return n;let a=t.split("/").length;return n-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!Hut.pattern.matchAny(t,r)}};Olr.default=Wlr});var kkn=H(Hlr=>{"use strict";Object.defineProperty(Hlr,"__esModule",{value:!0});var Ufe=r$(),Mlr=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let n=Ufe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=Ufe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,n,a)}_filter(t,r,n){let a=Ufe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,n))return!1;let o=t.dirent.isDirectory(),l=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,n,o);return this._settings.unique&&l&&this._createIndexRecord(a),l}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let n=Ufe.path.makeAbsolute(this._settings.cwd,t);return Ufe.pattern.matchAny(n,r)}_isMatchToPatterns(t,r,n){let a=Ufe.pattern.matchAny(t,r);return!a&&n?Ufe.pattern.matchAny(t+"/",r):a}};Hlr.default=Mlr});var xkn=H(Qlr=>{"use strict";Object.defineProperty(Qlr,"__esModule",{value:!0});var bFo=r$(),Ylr=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return bFo.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};Qlr.default=Ylr});var Fkn=H(Jlr=>{"use strict";Object.defineProperty(Jlr,"__esModule",{value:!0});var Gkn=r$(),Xlr=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=Gkn.path.makeAbsolute(this._settings.cwd,r),r=Gkn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};Jlr.default=Xlr});var Yut=H(Klr=>{"use strict";Object.defineProperty(Klr,"__esModule",{value:!0});var EFo=wt("path"),SFo=Dkn(),vFo=kkn(),BFo=xkn(),wFo=Fkn(),Ulr=class{constructor(t){this._settings=t,this.errorFilter=new BFo.default(this._settings),this.entryFilter=new vFo.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new SFo.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new wFo.default(this._settings)}_getRootDirectory(t){return EFo.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};Klr.default=Ulr});var Zkn=H(zlr=>{"use strict";Object.defineProperty(zlr,"__esModule",{value:!0});var TFo=Tkn(),RFo=Yut(),jlr=class extends RFo.default{constructor(){super(...arguments),this._reader=new TFo.default(this._settings)}async read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return(await this.api(r,t,n)).map(o=>n.transform(o))}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};zlr.default=jlr});var Lkn=H($lr=>{"use strict";Object.defineProperty($lr,"__esModule",{value:!0});var NFo=wt("stream"),DFo=xlr(),kFo=Yut(),qlr=class extends kFo.default{constructor(){super(...arguments),this._reader=new DFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t),a=this.api(r,t,n),o=new NFo.Readable({objectMode:!0,read:()=>{}});return a.once("error",l=>o.emit("error",l)).on("data",l=>o.emit("data",n.transform(l))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};$lr.default=qlr});var Vkn=H(tur=>{"use strict";Object.defineProperty(tur,"__esModule",{value:!0});var xFo=Jfe(),GFo=Out(),FFo=Mut(),eur=class extends FFo.default{constructor(){super(...arguments),this._walkSync=GFo.walkSync,this._statSync=xFo.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let n=[];for(let a of t){let o=this._getFullEntryPath(a),l=this._getEntry(o,a,r);l===null||!r.entryFilter(l)||n.push(l)}return n}_getEntry(t,r,n){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(n.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};tur.default=eur});var Pkn=H(nur=>{"use strict";Object.defineProperty(nur,"__esModule",{value:!0});var ZFo=Vkn(),LFo=Yut(),rur=class extends LFo.default{constructor(){super(...arguments),this._reader=new ZFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return this.api(r,t,n).map(n.transform)}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};nur.default=rur});var Wkn=H(rve=>{"use strict";Object.defineProperty(rve,"__esModule",{value:!0});rve.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var tve=wt("fs"),VFo=wt("os"),PFo=Math.max(VFo.cpus().length,1);rve.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:tve.lstat,lstatSync:tve.lstatSync,stat:tve.stat,statSync:tve.statSync,readdir:tve.readdir,readdirSync:tve.readdirSync};var iur=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,PFo),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},rve.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};rve.default=iur});var nve=H((P8l,Mkn)=>{"use strict";var Okn=MDn(),WFo=Zkn(),OFo=Lkn(),MFo=Pkn(),sur=Wkn(),iM=r$();async function our(e,t){oX(e);let r=aur(e,WFo.default,t),n=await Promise.all(r);return iM.array.flatten(n)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(I,C){oX(I);let b=aur(I,MFo.default,C);return iM.array.flatten(b)}e.sync=t;function r(I,C){oX(I);let b=aur(I,OFo.default,C);return iM.stream.merge(b)}e.stream=r;function n(I,C){oX(I);let b=[].concat(I),E=new sur.default(C);return Okn.generate(b,E)}e.generateTasks=n;function a(I,C){oX(I);let b=new sur.default(C);return iM.pattern.isDynamicPattern(I,b)}e.isDynamicPattern=a;function o(I){return oX(I),iM.path.escape(I)}e.escapePath=o;function l(I){return oX(I),iM.path.convertPathToPattern(I)}e.convertPathToPattern=l;let A;(function(I){function C(E){return oX(E),iM.path.escapePosixPath(E)}I.escapePath=C;function b(E){return oX(E),iM.path.convertPosixPathToPattern(E)}I.convertPathToPattern=b})(A=e.posix||(e.posix={}));let f;(function(I){function C(E){return oX(E),iM.path.escapeWindowsPath(E)}I.escapePath=C;function b(E){return oX(E),iM.path.convertWindowsPathToPattern(E)}I.convertPathToPattern=b})(f=e.win32||(e.win32={}))})(our||(our={}));function aur(e,t,r){let n=[].concat(e),a=new sur.default(r),o=Okn.generate(n,a),l=new t(a);return o.map(l.read,l)}function oX(e){if(![].concat(e).every(n=>iM.string.isString(n)&&!iM.string.isEmpty(n)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}Mkn.exports=our});var moe=H(K3e=>{"use strict";Object.defineProperty(K3e,"__esModule",{value:!0});K3e.makeHash=YFo;K3e.checksumFile=QFo;K3e.checksumPattern=XFo;var HFo=(Pa(),vi(Va)),hoe=ro(),cur=wt("crypto"),Hkn=HFo.__importDefault(nve());function YFo(...e){let t=(0,cur.createHash)("sha512"),r="";for(let n of e)typeof n=="string"?r+=n:n&&(r&&(t.update(r),r=""),t.update(n));return r&&t.update(r),t.digest("hex")}async function QFo(e,{baseFs:t,algorithm:r}={baseFs:hoe.xfs,algorithm:"sha512"}){let n=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,cur.createHash)(r),A=0;for(;(A=await t.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await t.closePromise(n)}}async function XFo(e,{cwd:t}){let n=(await(0,Hkn.default)(e,{cwd:hoe.npath.fromPortablePath(t),onlyDirectories:!0})).map(A=>`${A}/**/*`),a=await(0,Hkn.default)([e,...n],{cwd:hoe.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async A=>{let f=[Buffer.from(A)],I=hoe.ppath.join(t,hoe.npath.toPortablePath(A)),C=await hoe.xfs.lstatPromise(I);return C.isSymbolicLink()?f.push(Buffer.from(await hoe.xfs.readlinkPromise(I))):C.isFile()&&f.push(await hoe.xfs.readFilePromise(I)),f.join("\0")})),l=(0,cur.createHash)("sha512");for(let A of o)l.update(A);return l.digest("hex")}});var uG=H(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.makeIdent=sve;Xd.makeDescriptor=ave;Xd.makeLocator=cve;Xd.convertToIdent=zFo;Xd.convertDescriptorToLocator=qFo;Xd.convertLocatorToDescriptor=$Fo;Xd.convertPackageToLocator=eZo;Xd.renamePackage=Aur;Xd.copyPackage=tZo;Xd.virtualizeDescriptor=rZo;Xd.virtualizePackage=nZo;Xd.isVirtualDescriptor=Xut;Xd.isVirtualLocator=q3e;Xd.devirtualizeDescriptor=Jkn;Xd.devirtualizeLocator=iZo;Xd.ensureDevirtualizedDescriptor=sZo;Xd.ensureDevirtualizedLocator=oZo;Xd.bindDescriptor=aZo;Xd.bindLocator=cZo;Xd.areIdentsEqual=Ukn;Xd.areDescriptorsEqual=Kkn;Xd.areLocatorsEqual=lZo;Xd.areVirtualPackagesEquivalent=uZo;Xd.parseIdent=gZo;Xd.tryParseIdent=jkn;Xd.parseDescriptor=dZo;Xd.tryParseDescriptor=zkn;Xd.parseLocator=qkn;Xd.tryParseLocator=$kn;Xd.parseRange=$3e;Xd.tryParseRange=CZo;Xd.parseFileStyleRange=_Zo;Xd.makeRange=exn;Xd.convertToManifestRange=bZo;Xd.stringifyIdent=Uut;Xd.wrapIdentIntoScope=EZo;Xd.unwrapIdentFromScope=SZo;Xd.stringifyDescriptor=vZo;Xd.stringifyLocator=BZo;Xd.slugifyIdent=uur;Xd.slugifyLocator=TZo;Xd.prettyIdent=Kut;Xd.prettyRange=txn;Xd.prettyDescriptor=NZo;Xd.prettyReference=dur;Xd.prettyLocator=Qut;Xd.prettyLocatorNoColors=DZo;Xd.sortDescriptors=kZo;Xd.prettyWorkspace=xZo;Xd.prettyResolution=GZo;Xd.prettyDependent=FZo;Xd.getIdentVendorPath=ZZo;Xd.isPackageInRange=LZo;Xd.isPackageCompatible=VZo;Xd.allPeerRequests=PZo;var ove=(Pa(),vi(Va)),z3e=ove.__importDefault(wt("querystring")),Qkn=ove.__importDefault(UC()),JFo=pBn(),vZ=ove.__importStar(rM()),gur=ove.__importStar(moe()),UFo=ove.__importStar(xW()),ive=ove.__importStar(uG()),j3e="virtual:",KFo=5,Xkn=/(os|cpu|libc)=([a-z0-9_-]+)/,jFo=(0,JFo.makeParser)(Xkn);function sve(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:gur.makeHash(e,t),scope:e,name:t}}function ave(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:gur.makeHash(e.identHash,t),range:t}}function cve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:gur.makeHash(e.identHash,t),reference:t}}function zFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function qFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function $Fo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function eZo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function Aur(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function tZo(e){return Aur(e,e)}function rZo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return ave(e,`virtual:${t}#${e.range}`)}function nZo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Aur(e,cve(e,`virtual:${t}#${e.reference}`))}function Xut(e){return e.range.startsWith(j3e)}function q3e(e){return e.reference.startsWith(j3e)}var Jut=/^[^#]*#/;function Jkn(e){if(!Xut(e))throw new Error("Not a virtual descriptor");return ave(e,e.range.replace(Jut,""))}function iZo(e){if(!q3e(e))throw new Error("Not a virtual descriptor");return cve(e,e.reference.replace(Jut,""))}function sZo(e){return Xut(e)?ave(e,e.range.replace(Jut,"")):e}function oZo(e){return q3e(e)?cve(e,e.reference.replace(Jut,"")):e}function aZo(e,t){return e.range.includes("::")?e:ave(e,`${e.range}::${z3e.default.stringify(t)}`)}function cZo(e,t){return e.reference.includes("::")?e:cve(e,`${e.reference}::${z3e.default.stringify(t)}`)}function Ukn(e,t){return e.identHash===t.identHash}function Kkn(e,t){return e.descriptorHash===t.descriptorHash}function lZo(e,t){return e.locatorHash===t.locatorHash}function uZo(e,t){if(!q3e(e))throw new Error("Invalid package type");if(!q3e(t))throw new Error("Invalid package type");if(!Ukn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let n=t.dependencies.get(r.identHash);if(!n||!Kkn(r,n))return!1}return!0}function gZo(e){let t=jkn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var AZo=/^(?:@([^/]+?)\/)?([^@/]+)$/;function jkn(e){let t=e.match(AZo);if(!t)return null;let[,r,n]=t;return sve(typeof r<"u"?r:null,n)}function dZo(e,t=!1){let r=zkn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var pZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,fZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/,lur="unknown";function zkn(e,t=!1){let r=t?e.match(pZo):e.match(fZo);if(!r)return null;let[,n,a,o]=r;if(o===lur)throw new Error(`Invalid range (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:lur;return ave(sve(l,a),A)}function qkn(e,t=!1){let r=$kn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var IZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,hZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function $kn(e,t=!1){let r=t?e.match(IZo):e.match(hZo);if(!r)return null;let[,n,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:"unknown";return cve(sve(l,a),A)}var mZo=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function $3e(e,t){let r=e.match(mZo);if(r===null)throw new Error(`Invalid range (${e})`);let n=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&n!==t.requireProtocol)throw new Error(`Invalid protocol (${n})`);if(t?.requireProtocol&&n===null)throw new Error(`Missing protocol (${n})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),l=t?.parseSelector?z3e.default.parse(o):o,A=typeof r[4]<"u"?z3e.default.parse(r[4]):null;return{protocol:n,source:a,selector:l,params:A}}function CZo(e,t){try{return $3e(e,t)}catch{return null}}function _Zo(e,{protocol:t}){let{selector:r,params:n}=$3e(e,{requireProtocol:t,requireBindings:!0});if(typeof n.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:qkn(n.locator,!0),path:r}}function Ykn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function yZo(e){return e===null?!1:Object.entries(e).length>0}function exn({protocol:e,source:t,selector:r,params:n}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${Ykn(t)}#`),a+=Ykn(r),yZo(n)&&(a+=`::${z3e.default.stringify(n)}`),a}function bZo(e){let{params:t,protocol:r,source:n,selector:a}=$3e(e);for(let o in t)o.startsWith("__")&&delete t[o];return exn({protocol:r,source:n,params:t,selector:a})}function Uut(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function EZo(e,t){return e.scope?ive.makeIdent(t,`${e.scope}__${e.name}`):ive.makeIdent(t,e.name)}function SZo(e,t){if(e.scope!==t)return e;let r=e.name.indexOf("__");if(r===-1)return sve(null,e.name);let n=e.name.slice(0,r),a=e.name.slice(r+2);return sve(n,a)}function vZo(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function BZo(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function uur(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var wZo=/:$/;function TZo(e){let{protocol:t,selector:r}=$3e(e.reference),n=t!==null?t.replace(wZo,""):"exotic",a=Qkn.default.valid(r),o=a!==null?`${n}-${a}`:`${n}`,l=10;return e.scope?`${uur(e)}-${o}-${e.locatorHash.slice(0,l)}`:`${uur(e)}-${o}-${e.locatorHash.slice(0,l)}`}function Kut(e,t){return t.scope?`${vZ.pretty(e,`@${t.scope}/`,vZ.Type.SCOPE)}${vZ.pretty(e,t.name,vZ.Type.NAME)}`:`${vZ.pretty(e,t.name,vZ.Type.NAME)}`}var RZo=/\?.*/;function jut(e){if(e.startsWith(j3e)){let t=jut(e.substring(e.indexOf("#")+1)),r=e.substring(j3e.length,j3e.length+KFo);return`${t} [${r}]`}else return e.replace(RZo,"?[...]")}function txn(e,t){return`${vZ.pretty(e,jut(t),vZ.Type.RANGE)}`}function NZo(e,t){return`${Kut(e,t)}${vZ.pretty(e,"@",vZ.Type.RANGE)}${txn(e,t.range)}`}function dur(e,t){return`${vZ.pretty(e,jut(t),vZ.Type.REFERENCE)}`}function Qut(e,t){return`${Kut(e,t)}${vZ.pretty(e,"@",vZ.Type.REFERENCE)}${dur(e,t.reference)}`}function DZo(e){return`${Uut(e)}@${jut(e.reference)}`}function kZo(e){return UFo.sortMap(e,[t=>Uut(t),t=>t.range])}function xZo(e,t){return Kut(e,t.anchoredLocator)}function GZo(e,t,r){let n=Xut(t)?Jkn(t):t;return r===null?`${ive.prettyDescriptor(e,n)} \u2192 ${vZ.mark(e).Cross}`:n.identHash===r.identHash?`${ive.prettyDescriptor(e,n)} \u2192 ${dur(e,r.reference)}`:`${ive.prettyDescriptor(e,n)} \u2192 ${Qut(e,r)}`}function FZo(e,t,r){return r===null?`${Qut(e,t)}`:`${Qut(e,t)} (via ${ive.prettyRange(e,r.range)})`}function ZZo(e){return`node_modules/${Uut(e)}`}function LZo(e,t){return t===lur||!e.version?!0:Qkn.default.satisfies(e.version??"",t)}function VZo(e,t){return e.conditions?jFo(e.conditions,r=>{let[,n,a]=r.match(Xkn),o=t[n];return o?o.includes(a):!0}):!0}function PZo(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let n of r.children.values())t.add(n);return t}});var rxn=H(zut=>{"use strict";Object.defineProperty(zut,"__esModule",{value:!0});zut.CorePlugin=void 0;var WZo=(Pa(),vi(Va)),OZo=M9(),Coe=WZo.__importStar(uG());zut.CorePlugin={hooks:{reduceDependency:(e,t,r,n,{resolver:a,resolveOptions:o})=>{for(let{pattern:l,reference:A}of t.topLevelWorkspace.manifest.resolutions){if(l.from&&(l.from.fullName!==Coe.stringifyIdent(r)||t.configuration.normalizeLocator(Coe.makeLocator(Coe.parseIdent(l.from.fullName),l.from.description??r.reference)).locatorHash!==r.locatorHash)||l.descriptor.fullName!==Coe.stringifyIdent(e)||t.configuration.normalizeDependency(Coe.makeDescriptor(Coe.parseLocator(l.descriptor.fullName),l.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(Coe.makeDescriptor(e,A)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let n=Coe.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${n}: ${o}`),reportError:(a,o)=>t.reportError(a,`${n}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let n of r.errors)t.reportWarning(OZo.MessageName.INVALID_MANIFEST,n.message)}}}});var Kfe=H($ut=>{"use strict";Object.defineProperty($ut,"__esModule",{value:!0});$ut.WorkspaceResolver=void 0;var MZo=Qfe(),qut=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[n.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:n.manifest.version||"0.0.0",languageName:"unknown",linkType:MZo.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...n.manifest.dependencies,...n.manifest.devDependencies])),peerDependencies:new Map([...n.manifest.peerDependencies]),dependenciesMeta:n.manifest.dependenciesMeta,peerDependenciesMeta:n.manifest.peerDependenciesMeta,bin:n.manifest.bin}}};$ut.WorkspaceResolver=qut;qut.protocol="workspace:"});var n$=H(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.SemVer=void 0;aX.satisfiesWithPrereleases=QZo;aX.validRange=sxn;aX.clean=JZo;aX.getComparator=oxn;aX.mergeComparators=pur;aX.stringifyComparator=axn;aX.simplifyRanges=UZo;var HZo=(Pa(),vi(Va)),_oe=HZo.__importDefault(UC()),YZo=UC();Object.defineProperty(aX,"SemVer",{enumerable:!0,get:function(){return YZo.SemVer}});var nxn=new Map;function QZo(e,t,r=!1){if(!e)return!1;let n=`${t}${r}`,a=nxn.get(n);if(typeof a>"u")try{a=new _oe.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{nxn.set(n,a||null)}else if(a===null)return!1;let o;try{o=new _oe.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(l=>{for(let A of l)A.semver.prerelease&&(A.semver.prerelease=[]);return l.every(A=>A.test(o))}))}var ixn=new Map;function sxn(e){if(e.indexOf(":")!==-1)return null;let t=ixn.get(e);if(typeof t<"u")return t;try{t=new _oe.default.Range(e)}catch{t=null}return ixn.set(e,t),t}var XZo=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function JZo(e){let t=XZo.exec(e);return t?t[1]:null}function oxn(e){if(e.semver===_oe.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function pur(e){if(e.length===0)return null;let t=null,r=null;for(let n of e){if(n.gt){let a=t!==null?_oe.default.compare(n.gt[1],t[1]):null;(a===null||a>0||a===0&&n.gt[0]===">")&&(t=n.gt)}if(n.lt){let a=r!==null?_oe.default.compare(n.lt[1],r[1]):null;(a===null||a<0||a===0&&n.lt[0]==="<")&&(r=n.lt)}}if(t&&r){let n=_oe.default.compare(t[1],r[1]);if(n===0&&(t[0]===">"||r[0]==="<")||n>0)return null}return{gt:t,lt:r}}function axn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function UZo(e){let t=e.map(KZo).map(n=>sxn(n).set.map(a=>a.map(o=>oxn(o)))),r=t.shift().map(n=>pur(n)).filter(n=>n!==null);for(let n of t){let a=[];for(let o of r)for(let l of n){let A=pur([o,...l]);A!==null&&a.push(A)}r=a}return r.length===0?null:r.map(n=>axn(n)).join(" || ")}function KZo(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let n of t)t.some(a=>a!==n&&_oe.default.subset(n,a))||r.add(n);if(r.size{"use strict";Object.defineProperty(igt,"__esModule",{value:!0});igt.Manifest=void 0;var ngt=(Pa(),vi(Va)),egt=ro(),cxn=TW(),jZo=ngt.__importDefault(UC()),zZo=Kfe(),rgt=ngt.__importStar(xW()),qZo=ngt.__importStar(n$()),O0=ngt.__importStar(uG()),lve=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new egt.NodeFS}={}){let n=egt.ppath.join(t,"package.json");try{return await e.fromFile(n,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let n=await e.tryFind(t,{baseFs:r});if(n===null)throw new Error("Manifest not found");return n}static async fromFile(t,{baseFs:r=new egt.NodeFS}={}){let n=new e;return await n.loadFile(t,{baseFs:r}),n}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(uxn(t)||"{}")}catch(n){throw n.message+=` (when parsing ${t})`,n}this.load(r),this.indent=lxn(t)}async loadFile(t,{baseFs:r=new egt.NodeFS}){let n=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(uxn(n)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=lxn(n)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let n=[];if(this.name=null,typeof t.name=="string")try{this.name=O0.parseIdent(t.name)}catch{n.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let l of t.os)typeof l!="string"?n.push(new Error("Parsing failed for the 'os' field")):o.push(l)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let l of t.cpu)typeof l!="string"?n.push(new Error("Parsing failed for the 'cpu' field")):o.push(l)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let l of t.libc)typeof l!="string"?n.push(new Error("Parsing failed for the 'libc' field")):o.push(l)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=BZ(t.main):this.main=null,typeof t.module=="string"?this.module=BZ(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=BZ(t.browser);else{this.browser=new Map;for(let[o,l]of Object.entries(t.browser))this.browser.set(BZ(o),typeof l=="string"?BZ(l):l)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?n.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,BZ(t.bin)):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,l]of Object.entries(t.bin)){if(typeof l!="string"||l.trim()===""){n.push(new Error(`Invalid bin definition for '${o}'`));continue}let A=O0.parseIdent(o);this.bin.set(A.name,BZ(l))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,l]of Object.entries(t.scripts)){if(typeof l!="string"){n.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,l)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,l]of Object.entries(t.dependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,l]of Object.entries(t.devDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,l]of Object.entries(t.peerDependencies)){let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof l!="string"||!l.startsWith(zZo.WorkspaceResolver.protocol)&&!qZo.validRange(l))&&(n.push(new Error(`Invalid dependency range for '${o}'`)),l="*");let f=O0.makeDescriptor(A,l);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&n.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){n.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,l]of Object.entries(t.dependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}`));continue}let A=O0.parseDescriptor(o),f=this.ensureDependencyMeta(A),I=tgt(l.built,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid built meta field for '${o}'`));continue}let C=tgt(l.optional,{yamlCompatibilityMode:r});if(C===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}let b=tgt(l.unplugged,{yamlCompatibilityMode:r});if(b===null){n.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:I,optional:C,unplugged:b})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,l]of Object.entries(t.peerDependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}'`));continue}let A=O0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(A),I=tgt(l.optional,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:I})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,l]of Object.entries(t.resolutions)){if(typeof l!="string"){n.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,cxn.parseResolution)(o),reference:l})}catch(A){n.push(A);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){n.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=BZ(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=BZ(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=BZ(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,l]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(BZ(o),typeof l=="string"?BZ(l):l)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.provenance=="boolean"&&(this.publishConfig.provenance=t.publishConfig.provenance),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,BZ(t.publishConfig.bin)]]):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,l]of Object.entries(t.publishConfig.bin)){if(typeof l!="string"){n.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,BZ(l))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){n.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(BZ(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:n.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:n.push(new Error("Invalid selfReferences definition, must be a boolean value")):n.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,l]of Object.entries(t.optionalDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f);let I=O0.makeDescriptor(A,"unknown"),C=this.ensureDependencyMeta(I);Object.assign(C,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=n}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(fur("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(fur("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(fur("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!jZo.default.valid(t.range))throw new Error(`Invalid meta field range for '${O0.stringifyDescriptor(t)}'`);let r=O0.stringifyIdent(t),n=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(n);return o||a.set(n,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${O0.stringifyDescriptor(t)}'`);let r=O0.stringifyIdent(t),n=this.peerDependenciesMeta.get(r);return n||this.peerDependenciesMeta.set(r,n={}),n}setRawField(t,r,{after:n=[]}={}){let a=new Set(n.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,l=this.raw={},A=!1;for(let f of Object.keys(o))l[f]=o[f],A||(a.delete(f),a.size===0&&(l[t]=r,A=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=O0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(l=>({[l]:o.get(l)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let n=[],a=[];for(let o of this.dependencies.values()){let l=this.dependenciesMeta.get(O0.stringifyIdent(o)),A=!1;if(r&&l){let f=l.get(null);f&&f.optional&&(A=!0)}A?a.push(o):n.push(o)}n.length>0?t.dependencies=Object.assign({},...O0.sortDescriptors(n).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...O0.sortDescriptors(a).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...O0.sortDescriptors(this.devDependencies.values()).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...O0.sortDescriptors(this.peerDependencies.values()).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,l]of rgt.sortMap(this.dependenciesMeta.entries(),([A,f])=>A))for(let[A,f]of rgt.sortMap(l.entries(),([I,C])=>I!==null?`0${I}`:"1")){let I=A!==null?O0.stringifyDescriptor(O0.makeDescriptor(O0.parseIdent(o),A)):o,C={...f};r&&A===null&&delete C.optional,Object.keys(C).length!==0&&(t.dependenciesMeta[I]=C)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...rgt.sortMap(this.peerDependenciesMeta.entries(),([o,l])=>o).map(([o,l])=>({[o]:l}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:l})=>({[(0,cxn.stringifyResolution)(o)]:l}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,l]of this.scripts.entries())t.scripts[o]=l}else delete t.scripts;return t}};igt.Manifest=lve;lve.fileName="package.json";lve.allDependencies=["dependencies","devDependencies","peerDependencies"];lve.hardDependencies=["dependencies","devDependencies"];function lxn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function uxn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function BZ(e){return e.replace(/\\/g,"/")}function tgt(e,{yamlCompatibilityMode:t}){return t?rgt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function gxn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let n=r%2===0?"":"!",a=t.slice(r);return`${n}${e}=${a}`}function fur(e,t){return t.length===1?gxn(e,t[0]):`(${t.map(r=>gxn(e,r)).join(" | ")})`}});var sM=H(jfe=>{"use strict";Object.defineProperty(jfe,"__esModule",{value:!0});jfe.Report=jfe.ReportError=void 0;jfe.isReportError=Axn;var $Zo=kW(),eLo=wt("stream"),tLo=wt("string_decoder"),rLo=M9(),nLo=15,Iur=class extends Error{constructor(t,r,n){super(r),this.reportExtra=n,this.reportCode=t}};jfe.ReportError=Iur;function Axn(e){return typeof e.reportCode<"u"}var hur=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,n,a=new Promise(f=>{n=f}),o=f=>{let I=n;a=new Promise(C=>{n=C}),r=f,I()},l=(f=0)=>{o(r+1)},A=async function*(){for(;r{r=l}),a=(0,$Zo.throttle)(l=>{let A=r;n=new Promise(f=>{r=f}),t=l,A()},1e3/nLo),o=async function*(){for(;;)await n,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let n=this.reportProgress(t);try{return await r(t)}finally{n.stop()}}startProgressSync(t,r){let n=this.reportProgress(t);try{return r(t)}finally{n.stop()}}reportInfoOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),n?.reportExtra?.(this))}reportWarningOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),n?.reportExtra?.(this))}reportErrorOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),n?.reportExtra?.(this))}reportExceptionOnce(t){Axn(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(rLo.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new eLo.PassThrough,n=new tLo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` -`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};jfe.Report=hur});var Cur=H(sgt=>{"use strict";Object.defineProperty(sgt,"__esModule",{value:!0});sgt.MultiFetcher=void 0;var iLo=(Pa(),vi(Va)),sLo=M9(),oLo=sM(),aLo=iLo.__importStar(uG()),mur=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));return n||null}getFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));if(!n)throw new oLo.ReportError(sLo.MessageName.FETCHER_NOT_FOUND,`${aLo.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return n}};sgt.MultiFetcher=mur});var yur=H(ogt=>{"use strict";Object.defineProperty(ogt,"__esModule",{value:!0});ogt.MultiResolver=void 0;var cLo=(Pa(),vi(Va)),dxn=cLo.__importStar(uG()),_ur=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${dxn.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${dxn.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};ogt.MultiResolver=_ur});var vur=H(agt=>{"use strict";Object.defineProperty(agt,"__esModule",{value:!0});agt.VirtualFetcher=void 0;var lLo=(Pa(),vi(Va)),bur=ro(),Eur=lLo.__importStar(uG()),Sur=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=Eur.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=Eur.makeLocator(t,a),l=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,l,r)}getLocatorFilename(t){return Eur.slugifyLocator(t)}async ensureVirtualLink(t,r,n){let a=r.packageFs.getRealPath(),o=n.project.configuration.get("virtualFolder"),l=this.getLocatorFilename(t),A=bur.VirtualFS.makeVirtualPath(o,l,a),f=new bur.AliasFS(A,{baseFs:r.packageFs,pathUtils:bur.ppath});return{...r,packageFs:f}}};agt.VirtualFetcher=Sur});var pxn=H(lgt=>{"use strict";Object.defineProperty(lgt,"__esModule",{value:!0});lgt.VirtualResolver=void 0;var cgt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};lgt.VirtualResolver=cgt;cgt.protocol="virtual:"});var wur=H(ugt=>{"use strict";Object.defineProperty(ugt,"__esModule",{value:!0});ugt.WorkspaceFetcher=void 0;var fxn=ro(),Ixn=Kfe(),Bur=class{supports(t){return!!t.reference.startsWith(Ixn.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let n=this.getWorkspace(t,r).cwd;return{packageFs:new fxn.CwdFS(n),prefixPath:fxn.PortablePath.dot,localPath:n}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(Ixn.WorkspaceResolver.protocol.length))}};ugt.WorkspaceFetcher=Bur});var Cxn=H(JK=>{"use strict";Object.defineProperty(JK,"__esModule",{value:!0});JK.RESOLVED_RC_FILE=void 0;JK.resolveRcFiles=dLo;JK.getValue=pLo;JK.getValueByTree=Nur;JK.getSource=fLo;var uLo=(e,t,r)=>{let n=[...e];return n.reverse(),n.findIndex(t,r)};function e5e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var oM;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(oM||(oM={}));function hxn(e){return typeof e>"u"?oM.Undefined:e5e(e)?oM.Object:Array.isArray(e)?oM.Array:oM.Literal}function Dur(e,t){return Object.hasOwn(e,t)}function gLo(e){return e5e(e)&&Dur(e,"onConflict")&&typeof e.onConflict=="string"}function ALo(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!gLo(e))return{onConflict:"default",value:e};if(Dur(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function mxn(e,t){let r=e5e(e)&&Dur(e,t)?e[t]:void 0;return ALo(r)}JK.RESOLVED_RC_FILE=Symbol();function gve(e,t){return[e,t,JK.RESOLVED_RC_FILE]}function kur(e){return Array.isArray(e)?e[2]===JK.RESOLVED_RC_FILE:!1}function Tur(e,t){if(e5e(e)){let r={};for(let n of Object.keys(e))r[n]=Tur(e[n],t);return gve(t,r)}return Array.isArray(e)?gve(t,e.map(r=>Tur(r,t))):gve(t,e)}function Rur(e,t,r,n,a){let o,l=[],A=a,f=0;for(let C=a-1;C>=n;--C){let[b,E]=e[C],{onConflict:N,value:B}=mxn(E,r),F=hxn(B);if(F!==oM.Undefined){if(o??=F,F!==o||N==="hardReset"){f=A;break}if(F===oM.Literal)return gve(b,B);if(l.unshift([b,B]),N==="reset"){f=C;break}N==="extend"&&C===n&&(n=0),A=C}}if(typeof o>"u")return null;let I=l.map(([C])=>C).join(", ");switch(o){case oM.Array:return gve(I,new Array().concat(...l.map(([C,b])=>b.map(E=>Tur(E,C)))));case oM.Object:{let C=Object.assign({},...l.map(([,F])=>F)),b=Object.keys(C),E={},N=e.map(([F,Q])=>[F,mxn(Q,r).value]),B=uLo(N,([F,Q])=>{let X=hxn(Q);return X!==oM.Object&&X!==oM.Undefined});if(B!==-1){let F=N.slice(B+1);for(let Q of b)E[Q]=Rur(F,t,Q,0,F.length)}else for(let F of b)E[F]=Rur(N,t,F,f,N.length);return gve(I,E)}default:throw new Error("Assertion failed: Non-extendable value type")}}function dLo(e){return Rur(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function pLo(e){return kur(e)?e[1]:e}function Nur(e){let t=kur(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>Nur(r));if(e5e(t)){let r={};for(let[n,a]of Object.entries(t))r[n]=Nur(a);return r}return t}function fLo(e){return kur(e)?e[0]:null}});var ggt=H(t5e=>{"use strict";Object.defineProperty(t5e,"__esModule",{value:!0});t5e.getDefaultGlobalFolder=ILo;t5e.getHomeFolder=yxn;t5e.isFolderInside=hLo;var i$=ro(),_xn=wt("os");function ILo(){if(process.platform==="win32"){let e=i$.npath.toPortablePath(process.env.LOCALAPPDATA||i$.npath.join((0,_xn.homedir)(),"AppData","Local"));return i$.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=i$.npath.toPortablePath(process.env.XDG_DATA_HOME);return i$.ppath.resolve(e,"yarn/berry")}return i$.ppath.resolve(yxn(),".yarn/berry")}function yxn(){return i$.npath.toPortablePath((0,_xn.homedir)()||"/usr/local/share")}function hLo(e,t){let r=i$.ppath.relative(t,e);return r&&!r.startsWith("..")&&!i$.ppath.isAbsolute(r)}});var Sxn=H((ejl,Exn)=>{"use strict";var xur=wt("https"),Gur=wt("http"),{URL:bxn}=wt("url"),Fur=class extends Gur.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new bxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?Gur:xur).request(n);a.once("connect",(o,l,A)=>{a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200?r(null,l):(l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null))}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}},Zur=class extends xur.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new bxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?Gur:xur).request(n);a.once("connect",(o,l,A)=>{if(a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200){let f=super.createConnection({...t,socket:l});r(null,f)}else l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null)}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}};Exn.exports={HttpProxyAgent:Fur,HttpsProxyAgent:Zur}});var o$=H((s$,Agt)=>{"use strict";Object.defineProperty(s$,"__esModule",{value:!0});var vxn=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function mLo(e){return vxn.includes(e)}var CLo=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...vxn];function _Lo(e){return CLo.includes(e)}var yLo=["null","undefined","string","number","bigint","boolean","symbol"];function bLo(e){return yLo.includes(e)}function Ave(e){return t=>typeof t===e}var{toString:Bxn}=Object.prototype,r5e=e=>{let t=Bxn.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&Xi.domElement(e))return"HTMLElement";if(_Lo(t))return t},Xb=e=>t=>r5e(t)===e;function Xi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(Xi.observable(e))return"Observable";if(Xi.array(e))return"Array";if(Xi.buffer(e))return"Buffer";let t=r5e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}Xi.undefined=Ave("undefined");Xi.string=Ave("string");var ELo=Ave("number");Xi.number=e=>ELo(e)&&!Xi.nan(e);Xi.bigint=Ave("bigint");Xi.function_=Ave("function");Xi.null_=e=>e===null;Xi.class_=e=>Xi.function_(e)&&e.toString().startsWith("class ");Xi.boolean=e=>e===!0||e===!1;Xi.symbol=Ave("symbol");Xi.numericString=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));Xi.array=(e,t)=>Array.isArray(e)?Xi.function_(t)?e.every(t):!0:!1;Xi.buffer=e=>{var t,r,n,a;return(a=(n=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||n===void 0?void 0:n.call(r,e))!==null&&a!==void 0?a:!1};Xi.blob=e=>Xb("Blob")(e);Xi.nullOrUndefined=e=>Xi.null_(e)||Xi.undefined(e);Xi.object=e=>!Xi.null_(e)&&(typeof e=="object"||Xi.function_(e));Xi.iterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};Xi.asyncIterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};Xi.generator=e=>{var t,r;return Xi.iterable(e)&&Xi.function_((t=e)===null||t===void 0?void 0:t.next)&&Xi.function_((r=e)===null||r===void 0?void 0:r.throw)};Xi.asyncGenerator=e=>Xi.asyncIterable(e)&&Xi.function_(e.next)&&Xi.function_(e.throw);Xi.nativePromise=e=>Xb("Promise")(e);var SLo=e=>{var t,r;return Xi.function_((t=e)===null||t===void 0?void 0:t.then)&&Xi.function_((r=e)===null||r===void 0?void 0:r.catch)};Xi.promise=e=>Xi.nativePromise(e)||SLo(e);Xi.generatorFunction=Xb("GeneratorFunction");Xi.asyncGeneratorFunction=e=>r5e(e)==="AsyncGeneratorFunction";Xi.asyncFunction=e=>r5e(e)==="AsyncFunction";Xi.boundFunction=e=>Xi.function_(e)&&!e.hasOwnProperty("prototype");Xi.regExp=Xb("RegExp");Xi.date=Xb("Date");Xi.error=Xb("Error");Xi.map=e=>Xb("Map")(e);Xi.set=e=>Xb("Set")(e);Xi.weakMap=e=>Xb("WeakMap")(e);Xi.weakSet=e=>Xb("WeakSet")(e);Xi.int8Array=Xb("Int8Array");Xi.uint8Array=Xb("Uint8Array");Xi.uint8ClampedArray=Xb("Uint8ClampedArray");Xi.int16Array=Xb("Int16Array");Xi.uint16Array=Xb("Uint16Array");Xi.int32Array=Xb("Int32Array");Xi.uint32Array=Xb("Uint32Array");Xi.float32Array=Xb("Float32Array");Xi.float64Array=Xb("Float64Array");Xi.bigInt64Array=Xb("BigInt64Array");Xi.bigUint64Array=Xb("BigUint64Array");Xi.arrayBuffer=Xb("ArrayBuffer");Xi.sharedArrayBuffer=Xb("SharedArrayBuffer");Xi.dataView=Xb("DataView");Xi.enumCase=(e,t)=>Object.values(t).includes(e);Xi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;Xi.urlInstance=e=>Xb("URL")(e);Xi.urlString=e=>{if(!Xi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};Xi.truthy=e=>!!e;Xi.falsy=e=>!e;Xi.nan=e=>Number.isNaN(e);Xi.primitive=e=>Xi.null_(e)||bLo(typeof e);Xi.integer=e=>Number.isInteger(e);Xi.safeInteger=e=>Number.isSafeInteger(e);Xi.plainObject=e=>{if(Bxn.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};Xi.typedArray=e=>mLo(r5e(e));var vLo=e=>Xi.safeInteger(e)&&e>=0;Xi.arrayLike=e=>!Xi.nullOrUndefined(e)&&!Xi.function_(e)&&vLo(e.length);Xi.inRange=(e,t)=>{if(Xi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(Xi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var BLo=1,wLo=["innerHTML","ownerDocument","style","attributes","nodeValue"];Xi.domElement=e=>Xi.object(e)&&e.nodeType===BLo&&Xi.string(e.nodeName)&&!Xi.plainObject(e)&&wLo.every(t=>t in e);Xi.observable=e=>{var t,r,n,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(n=e)["@@observable"])===null||a===void 0?void 0:a.call(n)):!1};Xi.nodeStream=e=>Xi.object(e)&&Xi.function_(e.pipe)&&!Xi.observable(e);Xi.infinite=e=>e===1/0||e===-1/0;var wxn=e=>t=>Xi.integer(t)&&Math.abs(t%2)===e;Xi.evenInteger=wxn(0);Xi.oddInteger=wxn(1);Xi.emptyArray=e=>Xi.array(e)&&e.length===0;Xi.nonEmptyArray=e=>Xi.array(e)&&e.length>0;Xi.emptyString=e=>Xi.string(e)&&e.length===0;var TLo=e=>Xi.string(e)&&!/\S/.test(e);Xi.emptyStringOrWhitespace=e=>Xi.emptyString(e)||TLo(e);Xi.nonEmptyString=e=>Xi.string(e)&&e.length>0;Xi.nonEmptyStringAndNotWhitespace=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e);Xi.emptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length===0;Xi.nonEmptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length>0;Xi.emptySet=e=>Xi.set(e)&&e.size===0;Xi.nonEmptySet=e=>Xi.set(e)&&e.size>0;Xi.emptyMap=e=>Xi.map(e)&&e.size===0;Xi.nonEmptyMap=e=>Xi.map(e)&&e.size>0;Xi.propertyKey=e=>Xi.any([Xi.string,Xi.number,Xi.symbol],e);Xi.formData=e=>Xb("FormData")(e);Xi.urlSearchParams=e=>Xb("URLSearchParams")(e);var Txn=(e,t,r)=>{if(!Xi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};Xi.any=(e,...t)=>(Xi.array(e)?e:[e]).some(n=>Txn(Array.prototype.some,n,t));Xi.all=(e,...t)=>Txn(Array.prototype.every,e,t);var Mu=(e,t,r,n={})=>{if(!e){let{multipleValues:a}=n,o=a?`received values of types ${[...new Set(r.map(l=>`\`${Xi(l)}\``))].join(", ")}`:`received value of type \`${Xi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};s$.assert={undefined:e=>Mu(Xi.undefined(e),"undefined",e),string:e=>Mu(Xi.string(e),"string",e),number:e=>Mu(Xi.number(e),"number",e),bigint:e=>Mu(Xi.bigint(e),"bigint",e),function_:e=>Mu(Xi.function_(e),"Function",e),null_:e=>Mu(Xi.null_(e),"null",e),class_:e=>Mu(Xi.class_(e),"Class",e),boolean:e=>Mu(Xi.boolean(e),"boolean",e),symbol:e=>Mu(Xi.symbol(e),"symbol",e),numericString:e=>Mu(Xi.numericString(e),"string with a number",e),array:(e,t)=>{Mu(Xi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>Mu(Xi.buffer(e),"Buffer",e),blob:e=>Mu(Xi.blob(e),"Blob",e),nullOrUndefined:e=>Mu(Xi.nullOrUndefined(e),"null or undefined",e),object:e=>Mu(Xi.object(e),"Object",e),iterable:e=>Mu(Xi.iterable(e),"Iterable",e),asyncIterable:e=>Mu(Xi.asyncIterable(e),"AsyncIterable",e),generator:e=>Mu(Xi.generator(e),"Generator",e),asyncGenerator:e=>Mu(Xi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>Mu(Xi.nativePromise(e),"native Promise",e),promise:e=>Mu(Xi.promise(e),"Promise",e),generatorFunction:e=>Mu(Xi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>Mu(Xi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>Mu(Xi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>Mu(Xi.boundFunction(e),"Function",e),regExp:e=>Mu(Xi.regExp(e),"RegExp",e),date:e=>Mu(Xi.date(e),"Date",e),error:e=>Mu(Xi.error(e),"Error",e),map:e=>Mu(Xi.map(e),"Map",e),set:e=>Mu(Xi.set(e),"Set",e),weakMap:e=>Mu(Xi.weakMap(e),"WeakMap",e),weakSet:e=>Mu(Xi.weakSet(e),"WeakSet",e),int8Array:e=>Mu(Xi.int8Array(e),"Int8Array",e),uint8Array:e=>Mu(Xi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>Mu(Xi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>Mu(Xi.int16Array(e),"Int16Array",e),uint16Array:e=>Mu(Xi.uint16Array(e),"Uint16Array",e),int32Array:e=>Mu(Xi.int32Array(e),"Int32Array",e),uint32Array:e=>Mu(Xi.uint32Array(e),"Uint32Array",e),float32Array:e=>Mu(Xi.float32Array(e),"Float32Array",e),float64Array:e=>Mu(Xi.float64Array(e),"Float64Array",e),bigInt64Array:e=>Mu(Xi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>Mu(Xi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>Mu(Xi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>Mu(Xi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>Mu(Xi.dataView(e),"DataView",e),enumCase:(e,t)=>Mu(Xi.enumCase(e,t),"EnumCase",e),urlInstance:e=>Mu(Xi.urlInstance(e),"URL",e),urlString:e=>Mu(Xi.urlString(e),"string with a URL",e),truthy:e=>Mu(Xi.truthy(e),"truthy",e),falsy:e=>Mu(Xi.falsy(e),"falsy",e),nan:e=>Mu(Xi.nan(e),"NaN",e),primitive:e=>Mu(Xi.primitive(e),"primitive",e),integer:e=>Mu(Xi.integer(e),"integer",e),safeInteger:e=>Mu(Xi.safeInteger(e),"integer",e),plainObject:e=>Mu(Xi.plainObject(e),"plain object",e),typedArray:e=>Mu(Xi.typedArray(e),"TypedArray",e),arrayLike:e=>Mu(Xi.arrayLike(e),"array-like",e),domElement:e=>Mu(Xi.domElement(e),"HTMLElement",e),observable:e=>Mu(Xi.observable(e),"Observable",e),nodeStream:e=>Mu(Xi.nodeStream(e),"Node.js Stream",e),infinite:e=>Mu(Xi.infinite(e),"infinite number",e),emptyArray:e=>Mu(Xi.emptyArray(e),"empty array",e),nonEmptyArray:e=>Mu(Xi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>Mu(Xi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>Mu(Xi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>Mu(Xi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>Mu(Xi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>Mu(Xi.emptyObject(e),"empty object",e),nonEmptyObject:e=>Mu(Xi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>Mu(Xi.emptySet(e),"empty set",e),nonEmptySet:e=>Mu(Xi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>Mu(Xi.emptyMap(e),"empty map",e),nonEmptyMap:e=>Mu(Xi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>Mu(Xi.propertyKey(e),"PropertyKey",e),formData:e=>Mu(Xi.formData(e),"FormData",e),urlSearchParams:e=>Mu(Xi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>Mu(Xi.evenInteger(e),"even integer",e),oddInteger:e=>Mu(Xi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>Mu(Xi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>Mu(Xi.inRange(e,t),"in range",e),any:(e,...t)=>Mu(Xi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>Mu(Xi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(Xi,{class:{value:Xi.class_},function:{value:Xi.function_},null:{value:Xi.null_}});Object.defineProperties(s$.assert,{class:{value:s$.assert.class_},function:{value:s$.assert.function_},null:{value:s$.assert.null_}});s$.default=Xi;Agt.exports=Xi;Agt.exports.default=Xi;Agt.exports.assert=s$.assert});var Rxn=H((tjl,Lur)=>{"use strict";var dgt=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},pgt=class e{static fn(t){return(...r)=>new e((n,a,o)=>{r.push(o),t(...r).then(n,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,n)=>{this._reject=n;let a=A=>{(!this._isCanceled||!l.shouldReject)&&(this._isPending=!1,r(A))},o=A=>{this._isPending=!1,n(A)},l=A=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(A)};return Object.defineProperties(l,{shouldReject:{get:()=>this._rejectOnCancel,set:A=>{this._rejectOnCancel=A}}}),t(a,o,l)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new dgt(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(pgt.prototype,Promise.prototype);Lur.exports=pgt;Lur.exports.CancelError=dgt});var Nxn=H((Pur,Wur)=>{"use strict";Object.defineProperty(Pur,"__esModule",{value:!0});function RLo(e){return e.encrypted}var Vur=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let n=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",l=()=>{n&&r.connect(),RLo(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?l():e.connecting?e.once("connect",l):e.destroyed&&o&&r.close(e._hadError)};Pur.default=Vur;Wur.exports=Vur;Wur.exports.default=Vur});var Dxn=H((Mur,Hur)=>{"use strict";Object.defineProperty(Mur,"__esModule",{value:!0});var NLo=Nxn(),DLo=wt("util"),kLo=Number(process.versions.node.split(".")[0]),Our=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=A=>{let f=A.emit.bind(A);A.emit=(I,...C)=>(I==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,A.emit=f),f(I,...C))};r(e);let n=()=>{t.abort=Date.now(),(!t.response||kLo>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",n);let a=A=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,DLo.types.isProxy(A))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};A.prependOnceListener("lookup",f),NLo.default(A,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(A.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var A;t.upload=Date.now(),t.phases.request=t.upload-((A=t.secureConnect)!==null&&A!==void 0?A:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",A=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,A.timings=t,r(A),A.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),A.prependOnceListener("aborted",n)}),t};Mur.default=Our;Hur.exports=Our;Hur.exports.default=Our});var Vxn=H((rjl,Xur)=>{"use strict";var{V4MAPPED:xLo,ADDRCONFIG:GLo,ALL:Lxn,promises:{Resolver:kxn},lookup:FLo}=wt("dns"),{promisify:Yur}=wt("util"),ZLo=wt("os"),dve=Symbol("cacheableLookupCreateConnection"),Qur=Symbol("cacheableLookupInstance"),xxn=Symbol("expires"),LLo=typeof Lxn=="number",Gxn=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},VLo=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},Fxn=()=>{let e=!1,t=!1;for(let r of Object.values(ZLo.networkInterfaces()))for(let n of r)if(!n.internal&&(n.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},PLo=e=>Symbol.iterator in e,Zxn={ttl:!0},WLo={all:!0},fgt=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:n=3600,errorTtl:a=.15,resolver:o=new kxn,lookup:l=FLo}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=Yur(l),this._resolver instanceof kxn?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Yur(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Yur(this._resolver.resolve6.bind(this._resolver))),this._iface=Fxn(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,n<1)this._fallback=!1;else{this._fallback=!0;let A=setInterval(()=>{this._hostnamesToFallback.clear()},n*1e3);A.unref&&A.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,n){if(typeof r=="function"?(n=r,r={}):typeof r=="number"&&(r={family:r}),!n)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?n(null,a):n(null,a.address,a.family,a.expires,a.ttl)},n)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let n=await this.query(t);if(r.family===6){let a=n.filter(o=>o.family===6);r.hints&xLo&&(LLo&&r.hints&Lxn||a.length===0)?VLo(n):n=a}else r.family===4&&(n=n.filter(a=>a.family===4));if(r.hints&GLo){let{_iface:a}=this;n=n.filter(o=>o.family===6?a.has6:a.has4)}if(n.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?n:n[0]}async query(t){let r=await this._cache.get(t);if(!r){let n=this._pending[t];if(n)r=await n;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(n=>({...n})),r}async _resolve(t){let r=async I=>{try{return await I}catch(C){if(C.code==="ENODATA"||C.code==="ENOTFOUND")return[];throw C}},[n,a]=await Promise.all([this._resolve4(t,Zxn),this._resolve6(t,Zxn)].map(I=>r(I))),o=0,l=0,A=0,f=Date.now();for(let I of n)I.family=4,I.expires=f+I.ttl*1e3,o=Math.max(o,I.ttl);for(let I of a)I.family=6,I.expires=f+I.ttl*1e3,l=Math.max(l,I.ttl);return n.length>0?a.length>0?A=Math.min(o,l):A=o:A=l,{entries:[...n,...a],cacheTtl:A}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,n){if(this.maxTtl>0&&n>0){n=Math.min(n,this.maxTtl)*1e3,r[xxn]=Date.now()+n;try{await this._cache.set(t,r,n)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}PLo(this._cache)&&this._tick(n)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,WLo);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let n=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,n),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let n=1/0,a=Date.now();for(let[o,l]of this._cache){let A=l[xxn];a>=A?this._cache.delete(o):A("lookup"in r||(r.lookup=this.lookup),t[dve](r,n))}uninstall(t){if(Gxn(t),t[dve]){if(t[Qur]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[dve],delete t[dve],delete t[Qur]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=Fxn(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};Xur.exports=fgt;Xur.exports.default=fgt});var Oxn=H((njl,Wxn)=>{"use strict";var OLo="text/plain",MLo="us-ascii",Pxn=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),HLo=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===MLo)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length!==0||f&&f!==OLo)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`},YLo=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return HLo(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let l=a.pathname.split("/"),A=l[l.length-1];Pxn(A,t.removeDirectoryIndex)&&(l=l.slice(0,l.length-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])Pxn(l,t.removeQueryParameters)&&a.searchParams.delete(l);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};Wxn.exports=YLo});var Yxn=H((ijl,Hxn)=>{Hxn.exports=Mxn;function Mxn(e,t){if(e&&t)return Mxn(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),a=0;a{var Qxn=Yxn();Jur.exports=Qxn(Igt);Jur.exports.strict=Qxn(Xxn);Igt.proto=Igt(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return Igt(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return Xxn(this)},configurable:!0})});function Igt(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function Xxn(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var Uur=H((ojl,Uxn)=>{var QLo=hgt(),XLo=function(){},JLo=function(e){return e.setHeader&&typeof e.abort=="function"},ULo=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},Jxn=function(e,t,r){if(typeof t=="function")return Jxn(e,null,t);t||(t={}),r=QLo(r||XLo);var n=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,l=t.writable||t.writable!==!1&&e.writable,A=!1,f=function(){e.writable||I()},I=function(){l=!1,o||r.call(e)},C=function(){o=!1,l||r.call(e)},b=function(Q){r.call(e,Q?new Error("exited with error code: "+Q):null)},E=function(Q){r.call(e,Q)},N=function(){process.nextTick(B)},B=function(){if(!A){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(l&&!(n&&n.ended&&!n.destroyed))return r.call(e,new Error("premature close"))}},F=function(){e.req.on("finish",I)};return JLo(e)?(e.on("complete",I),e.on("abort",N),e.req?F():e.on("request",F)):l&&!n&&(e.on("end",f),e.on("close",f)),ULo(e)&&e.on("exit",b),e.on("end",C),e.on("finish",I),t.error!==!1&&e.on("error",E),e.on("close",N),function(){A=!0,e.removeListener("complete",I),e.removeListener("abort",N),e.removeListener("request",F),e.req&&e.req.removeListener("finish",I),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",I),e.removeListener("exit",b),e.removeListener("end",C),e.removeListener("error",E),e.removeListener("close",N)}};Uxn.exports=Jxn});var zxn=H((ajl,jxn)=>{var KLo=hgt(),jLo=Uur(),mgt;try{mgt=wt("fs")}catch{}var n5e=function(){},zLo=/^v?\.0/.test(process.version),Cgt=function(e){return typeof e=="function"},qLo=function(e){return!zLo||!mgt?!1:(e instanceof(mgt.ReadStream||n5e)||e instanceof(mgt.WriteStream||n5e))&&Cgt(e.close)},$Lo=function(e){return e.setHeader&&Cgt(e.abort)},e9o=function(e,t,r,n){n=KLo(n);var a=!1;e.on("close",function(){a=!0}),jLo(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,qLo(e))return e.close(n5e);if($Lo(e))return e.abort();if(Cgt(e.destroy))return e.destroy();n(l||new Error("stream was destroyed"))}}},Kxn=function(e){e()},t9o=function(e,t){return e.pipe(t)},r9o=function(){var e=Array.prototype.slice.call(arguments),t=Cgt(e[e.length-1]||n5e)&&e.pop()||n5e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,n=e.map(function(a,o){var l=o0;return e9o(a,l,A,function(f){r||(r=f),f&&n.forEach(Kxn),!l&&(n.forEach(Kxn),t(r))})});return e.reduce(t9o)};jxn.exports=r9o});var $xn=H((cjl,qxn)=>{"use strict";var{PassThrough:n9o}=wt("stream");qxn.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,n=r==="buffer",a=!1;t?a=!(r||n):r=r||"utf8",n&&(r=null);let o=new n9o({objectMode:a});r&&o.setEncoding(r);let l=0,A=[];return o.on("data",f=>{A.push(f),a?l=A.length:l+=f.length}),o.getBufferedValue=()=>t?A:n?Buffer.concat(A,l):A.join(""),o.getBufferedLength=()=>l,o}});var eGn=H((ljl,pve)=>{"use strict";var{constants:i9o}=wt("buffer"),s9o=zxn(),o9o=$xn(),_gt=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function ygt(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,n;return await new Promise((a,o)=>{let l=A=>{A&&n.getBufferedLength()<=i9o.MAX_LENGTH&&(A.bufferedData=n.getBufferedValue()),o(A)};n=s9o(e,o9o(t),A=>{if(A){l(A);return}a()}),n.on("data",()=>{n.getBufferedLength()>r&&l(new _gt)})}),n.getBufferedValue()}pve.exports=ygt;pve.exports.default=ygt;pve.exports.buffer=(e,t)=>ygt(e,{...t,encoding:"buffer"});pve.exports.array=(e,t)=>ygt(e,{...t,array:!0});pve.exports.MaxBufferError=_gt});var jur=H((gjl,tGn)=>{"use strict";var a9o=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),c9o=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),l9o=new Set([500,502,503,504]),u9o={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},g9o={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function zfe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function A9o(e){return e?l9o.has(e.status):!0}function Kur(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let n of r){let[a,o]=n.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function d9o(e){let t=[];for(let r in e){let n=e[r];t.push(n===!0?r:r+"="+n)}if(t.length)return t.join(", ")}tGn.exports=class{constructor(t,r,{shared:n,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:l,_fromObject:A}={}){if(A){this._fromObject(A);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=n!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=Kur(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=Kur(t.headers["cache-control"]),l&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":d9o(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&c9o.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||a9o.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=Kur(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let n of r)if(t.headers[n]!==this._reqHeaders[n])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let n in t)u9o[n]||(r[n]=t[n]);if(t.connection){let n=t.connection.trim().split(/\s*,\s*/);for(let a of n)delete r[a]}if(r.warning){let n=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));n.length?r.warning=n.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return zfe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return zfe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return zfe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let n=Date.parse(this._resHeaders.expires);return Number.isNaN(n)||nn)return Math.max(t,(r-n)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+zfe(this._rescc["stale-if-error"]),n=t+zfe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,n)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+zfe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+zfe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&A9o(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let n=!1;if(r.status!==void 0&&r.status!=304?n=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?n=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?n=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?n=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(n=!0),!n)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let l in this._resHeaders)a[l]=l in r.headers&&!g9o[l]?r.headers[l]:this._resHeaders[l];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var bgt=H((Ajl,rGn)=>{"use strict";rGn.exports=e=>{let t={};for(let[r,n]of Object.entries(e))t[r.toLowerCase()]=n;return t}});var iGn=H((djl,nGn)=>{"use strict";var p9o=wt("stream").Readable,f9o=bgt(),zur=class extends p9o{constructor(t,r,n,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(n instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=f9o(r),this.body=n,this.url=a}_read(){this.push(this.body),this.push(null)}};nGn.exports=zur});var oGn=H((pjl,sGn)=>{"use strict";var I9o=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];sGn.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(I9o));for(let n of r)n in t||(t[n]=typeof e[n]=="function"?e[n].bind(e):e[n])}});var cGn=H((fjl,aGn)=>{"use strict";var h9o=wt("stream").PassThrough,m9o=oGn(),C9o=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new h9o;return m9o(e,t),e.pipe(t)};aGn.exports=C9o});var lGn=H(qur=>{qur.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",n=Array.isArray(t);r=n?"[":"{";var a=!0;for(var o in t){var l=typeof t[o]=="function"||!n&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!l&&(a||(r+=","),a=!1,n?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=n?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};qur.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var dGn=H((hjl,AGn)=>{"use strict";var _9o=wt("events"),uGn=lGn(),y9o=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(wt(t[r]))(e)}return new Map},gGn=["sqlite","postgres","mysql","mongo","redis","tiered"],$ur=class extends _9o{constructor(t,{emitErrors:r=!0,...n}={}){if(super(),this.opts={namespace:"keyv",serialize:uGn.stringify,deserialize:uGn.parse,...typeof t=="string"?{uri:t}:t,...n},!this.opts.store){let o={...this.opts};this.opts.store=y9o(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[l,A]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(A);if(!(this.opts.store.namespace&&!l.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(l);continue}yield[this._getKeyUnprefix(l),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return gGn.includes(this.opts.store.opts.dialect)||gGn.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:n}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&n.getMany===void 0){let l=[];for(let A of o)l.push(Promise.resolve().then(()=>n.get(A)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(A).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(l).then(A=>{let f=[];for(let I of A)f.push(I.value);return f})}return Promise.resolve().then(()=>a?n.getMany(o):n.get(o)).then(l=>typeof l=="string"?this.opts.deserialize(l):this.opts.compression?this.opts.deserialize(l):l).then(l=>{if(l!=null)return a?l.map((A,f)=>{if(typeof A=="string"&&(A=this.opts.deserialize(A)),A!=null){if(typeof A.expires=="number"&&Date.now()>A.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?A:A.value}}):typeof l.expires=="number"&&Date.now()>l.expires?this.delete(t).then(()=>{}):r&&r.raw?l:l.value})}set(t,r,n){let a=this._getKeyPrefix(t);typeof n>"u"&&(n=this.opts.ttl),n===0&&(n=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let l=typeof n=="number"?Date.now()+n:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:l},this.opts.serialize(r)}).then(l=>o.set(a,l,n)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let l of a)o.push(r.delete(l));return Promise.allSettled(o).then(l=>l.every(A=>A.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let n=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(n))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:n}=this.opts;return Promise.resolve().then(async()=>typeof n.has=="function"?n.has(r):await n.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};AGn.exports=$ur});var IGn=H((Cjl,fGn)=>{"use strict";var b9o=wt("events"),Egt=wt("url"),E9o=Oxn(),S9o=eGn(),egr=jur(),pGn=iGn(),v9o=bgt(),B9o=cGn(),w9o=dGn(),i5e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new w9o({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,n)=>{let a;if(typeof r=="string")a=tgr(Egt.parse(r)),r={};else if(r instanceof Egt.URL)a=tgr(Egt.parse(r.toString())),r={};else{let[b,...E]=(r.path||"").split("?"),N=E.length>0?`?${E.join("?")}`:"";a=tgr({...r,pathname:b,search:N})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...T9o(a)},r.headers=v9o(r.headers);let o=new b9o,l=E9o(Egt.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),A=`${r.method}:${l}`,f=!1,I=!1,C=b=>{I=!0;let E=!1,N,B=new Promise(Q=>{N=()=>{E||(E=!0,Q())}}),F=Q=>{if(f&&!b.forceRefresh){Q.status=Q.statusCode;let ae=egr.fromObject(f.cachePolicy).revalidatedPolicy(b,Q);if(!ae.modified){let ne=ae.policy.responseHeaders();Q=new pGn(f.statusCode,ne,f.body,f.url),Q.cachePolicy=ae.policy,Q.fromCache=!0}}Q.fromCache||(Q.cachePolicy=new egr(b,Q,b),Q.fromCache=!1);let X;b.cache&&Q.cachePolicy.storable()?(X=B9o(Q),(async()=>{try{let ae=S9o.buffer(Q);if(await Promise.race([B,new Promise(ue=>Q.once("end",ue))]),E)return;let ne=await ae,ce={cachePolicy:Q.cachePolicy.toObject(),url:Q.url,statusCode:Q.fromCache?f.statusCode:Q.statusCode,body:ne},fe=b.strictTtl?Q.cachePolicy.timeToLive():void 0;b.maxTtl&&(fe=fe?Math.min(fe,b.maxTtl):b.maxTtl),await this.cache.set(A,ce,fe)}catch(ae){o.emit("error",new e.CacheError(ae))}})()):b.cache&&f&&(async()=>{try{await this.cache.delete(A)}catch(ae){o.emit("error",new e.CacheError(ae))}})(),o.emit("response",X||Q),typeof n=="function"&&n(X||Q)};try{let Q=t(b,F);Q.once("error",N),Q.once("abort",N),o.emit("request",Q)}catch(Q){o.emit("error",new e.RequestError(Q))}};return(async()=>{let b=async N=>{await Promise.resolve();let B=N.cache?await this.cache.get(A):void 0;if(typeof B>"u")return C(N);let F=egr.fromObject(B.cachePolicy);if(F.satisfiesWithoutRevalidation(N)&&!N.forceRefresh){let Q=F.responseHeaders(),X=new pGn(B.statusCode,Q,B.body,B.url);X.cachePolicy=F,X.fromCache=!0,o.emit("response",X),typeof n=="function"&&n(X)}else f=B,N.headers=F.revalidationHeaders(N),C(N)},E=N=>o.emit("error",new e.CacheError(N));this.cache.once("error",E),o.on("response",()=>this.cache.removeListener("error",E));try{await b(r)}catch(N){r.automaticFailover&&!I&&C(r),o.emit("error",new e.CacheError(N))}})(),o}}};function T9o(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function tgr(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}i5e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};i5e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};fGn.exports=i5e});var mGn=H((bjl,hGn)=>{"use strict";var R9o=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];hGn.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(R9o)),n={};for(let a of r)a in t||(n[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,n),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var _Gn=H((Ejl,CGn)=>{"use strict";var{Transform:N9o,PassThrough:D9o}=wt("stream"),rgr=wt("zlib"),k9o=mGn();CGn.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof rgr.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let n=!0,a=new N9o({transform(A,f,I){n=!1,I(null,A)},flush(A){A()}}),o=new D9o({autoDestroy:!1,destroy(A,f){e.destroy(),f(A)}}),l=r?rgr.createBrotliDecompress():rgr.createUnzip();return l.once("error",A=>{if(n&&!e.readable){o.end();return}o.destroy(A)}),k9o(e,o),e.pipe(a).pipe(l).pipe(o),o}});var igr=H((Sjl,yGn)=>{"use strict";var ngr=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[n,a]of this.oldCache.entries())this.onEviction(n,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};yGn.exports=ngr});var ogr=H((vjl,vGn)=>{"use strict";var x9o=wt("events"),G9o=wt("tls"),F9o=wt("http2"),Z9o=igr(),wZ=Symbol("currentStreamsCount"),bGn=Symbol("request"),aM=Symbol("cachedOriginSet"),fve=Symbol("gracefullyClosing"),L9o=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],V9o=(e,t,r)=>{let n=0,a=e.length;for(;n>>1;r(e[o],t)?n=o+1:a=o}return n},P9o=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,sgr=(e,t)=>{for(let r of e)r[aM].lengtht[aM].includes(n))&&r[wZ]+t[wZ]<=t.remoteSettings.maxConcurrentStreams&&SGn(r)},W9o=(e,t)=>{for(let r of e)t[aM].lengthr[aM].includes(n))&&t[wZ]+r[wZ]<=r.remoteSettings.maxConcurrentStreams&&SGn(t)},EGn=({agent:e,isFree:t})=>{let r={};for(let n in e.sessions){let o=e.sessions[n].filter(l=>{let A=l[qfe.kCurrentStreamsCount]{e[fve]=!0,e[wZ]===0&&e.close()},qfe=class e extends x9o{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:n=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=n,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new Z9o({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let n of L9o)t[n]&&(r+=`:${t[n]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let n=this.queue[t][r];this._sessionsCount{Array.isArray(n)?(n=[...n],a()):n=[{resolve:a,reject:o}];let l=this.normalizeOptions(r),A=e.normalizeOrigin(t,r&&r.servername);if(A===void 0){for(let{reject:C}of n)C(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(l in this.sessions){let C=this.sessions[l],b=-1,E=-1,N;for(let B of C){let F=B.remoteSettings.maxConcurrentStreams;if(F=F||B[fve]||B.destroyed)continue;N||(b=F),Q>E&&(N=B,E=Q)}}if(N){if(n.length!==1){for(let{reject:B}of n){let F=new Error(`Expected the length of listeners to be 1, got ${n.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return}n[0].resolve(N);return}}if(l in this.queue){if(A in this.queue[l]){this.queue[l][A].listeners.push(...n),this._tryToCreateNewSession(l,A);return}}else this.queue[l]={};let f=()=>{l in this.queue&&this.queue[l][A]===I&&(delete this.queue[l][A],Object.keys(this.queue[l]).length===0&&delete this.queue[l])},I=()=>{let C=`${A}:${l}`,b=!1;try{let E=F9o.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(C),...r});E[wZ]=0,E[fve]=!1;let N=()=>E[wZ]{this.tlsSessionCache.set(C,Q)}),E.once("error",Q=>{for(let{reject:X}of n)X(Q);this.tlsSessionCache.delete(C)}),E.setTimeout(this.timeout,()=>{E.destroy()}),E.once("close",()=>{if(b){B&&this._freeSessionsCount--,this._sessionsCount--;let Q=this.sessions[l];Q.splice(Q.indexOf(E),1),Q.length===0&&delete this.sessions[l]}else{let Q=new Error("Session closed without receiving a SETTINGS frame");Q.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:X}of n)X(Q);f()}this._tryToCreateNewSession(l,A)});let F=()=>{if(!(!(l in this.queue)||!N())){for(let Q of E[aM])if(Q in this.queue[l]){let{listeners:X}=this.queue[l][Q];for(;X.length!==0&&N();)X.shift().resolve(E);let ae=this.queue[l];if(ae[Q].listeners.length===0&&(delete ae[Q],Object.keys(ae).length===0)){delete this.queue[l];break}if(!N())break}}};E.on("origin",()=>{E[aM]=E.originSet,N()&&(F(),sgr(this.sessions[l],E))}),E.once("remoteSettings",()=>{if(E.ref(),E.unref(),this._sessionsCount++,I.destroyed){let Q=new Error("Agent has been destroyed");for(let X of n)X.reject(Q);E.destroy();return}E[aM]=E.originSet;{let Q=this.sessions;if(l in Q){let X=Q[l];X.splice(V9o(X,E,P9o),0,E)}else Q[l]=[E]}this._freeSessionsCount+=1,b=!0,this.emit("session",E),F(),f(),E[wZ]===0&&this._freeSessionsCount>this.maxFreeSessions&&E.close(),n.length!==0&&(this.getSession(A,r,n),n.length=0),E.on("remoteSettings",()=>{F(),sgr(this.sessions[l],E)})}),E[bGn]=E.request,E.request=(Q,X)=>{if(E[fve])throw new Error("The session is gracefully closing. No new streams are allowed.");let ae=E[bGn](Q,X);return E.ref(),++E[wZ],E[wZ]===E.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,ae.once("close",()=>{if(B=N(),--E[wZ],!E.destroyed&&!E.closed&&(W9o(this.sessions[l],E),N()&&!E.closed)){B||(this._freeSessionsCount++,B=!0);let ne=E[wZ]===0;ne&&E.unref(),ne&&(this._freeSessionsCount>this.maxFreeSessions||E[fve])?E.close():(sgr(this.sessions[l],E),F())}}),ae}}catch(E){for(let N of n)N.reject(E);f()}};I.listeners=n,I.completed=!1,I.destroyed=!1,this.queue[l][A]=I,this._tryToCreateNewSession(l,A)})}request(t,r,n,a){return new Promise((o,l)=>{this.getSession(t,r,[{reject:l,resolve:A=>{try{o(A.request(n,a))}catch(f){l(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let n=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),G9o.connect(n,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[wZ]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let n of r)n.destroy(t);for(let r of Object.values(this.queue))for(let n of Object.values(r))n.destroyed=!0;this.queue={}}get freeSessions(){return EGn({agent:this,isFree:!0})}get busySessions(){return EGn({agent:this,isFree:!1})}};qfe.kCurrentStreamsCount=wZ;qfe.kGracefullyClosing=fve;vGn.exports={Agent:qfe,globalAgent:new qfe}});var cgr=H((Bjl,BGn)=>{"use strict";var{Readable:O9o}=wt("stream"),agr=class extends O9o{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};BGn.exports=agr});var lgr=H((wjl,wGn)=>{"use strict";wGn.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var RGn=H((Tjl,TGn)=>{"use strict";TGn.exports=(e,t,r)=>{for(let n of r)e.on(n,(...a)=>t.emit(n,...a))}});var DGn=H((Rjl,NGn)=>{"use strict";NGn.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var xGn=H((Djl,kGn)=>{"use strict";var Ive=(e,t,r)=>{kGn.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};Ive(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],n=Array.isArray(r);return n&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${n?"one of":"of"} type ${r}. Received ${typeof e[2]}`});Ive(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);Ive(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);Ive(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);Ive(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);Ive(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var pgr=H((kjl,WGn)=>{"use strict";var M9o=wt("http2"),{Writable:H9o}=wt("stream"),{Agent:GGn,globalAgent:Y9o}=ogr(),Q9o=cgr(),X9o=lgr(),J9o=RGn(),U9o=DGn(),{ERR_INVALID_ARG_TYPE:ugr,ERR_INVALID_PROTOCOL:K9o,ERR_HTTP_HEADERS_SENT:FGn,ERR_INVALID_HTTP_TOKEN:j9o,ERR_HTTP_INVALID_HEADER_VALUE:z9o,ERR_INVALID_CHAR:q9o}=xGn(),{HTTP2_HEADER_STATUS:ZGn,HTTP2_HEADER_METHOD:LGn,HTTP2_HEADER_PATH:VGn,HTTP2_METHOD_CONNECT:$9o}=M9o.constants,dG=Symbol("headers"),ggr=Symbol("origin"),Agr=Symbol("session"),PGn=Symbol("options"),Sgt=Symbol("flushedHeaders"),s5e=Symbol("jobs"),eVo=/^[\^`\-\w!#$%&*+.|~]+$/,tVo=/[^\t\u0020-\u007E\u0080-\u00FF]/,dgr=class extends H9o{constructor(t,r,n){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=X9o(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(n=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[Agr]=r.h2session;else if(r.agent===!1)this.agent=new GGn({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new GGn({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=Y9o;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new ugr("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new K9o(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,l=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:A}=r;if(r.timeout=void 0,this[dG]=Object.create(null),this[s5e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,I]of Object.entries(r.headers))this.setHeader(f,I);r.auth&&!("authorization"in this[dG])&&(this[dG].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[PGn]=r,o===443?(this[ggr]=`https://${l}`,":authority"in this[dG]||(this[dG][":authority"]=l)):(this[ggr]=`https://${l}:${o}`,":authority"in this[dG]||(this[dG][":authority"]=`${l}:${o}`)),A&&this.setTimeout(A),n&&this.once("response",n),this[Sgt]=!1}get method(){return this[dG][LGn]}set method(t){t&&(this[dG][LGn]=t.toUpperCase())}get path(){return this[dG][VGn]}set path(t){t&&(this[dG][VGn]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,n){if(this._mustNotHaveABody){n(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,n);this._request?a():this[s5e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[s5e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[Sgt]||this.destroyed)return;this[Sgt]=!0;let t=this.method===$9o,r=n=>{if(this._request=n,this.destroyed){n.destroy();return}t||J9o(n,this,["timeout","continue","close","error"]);let a=l=>(...A)=>{!this.writable&&!this.destroyed?l(...A):this.once("finish",()=>{l(...A)})};n.once("response",a((l,A,f)=>{let I=new Q9o(this.socket,n.readableHighWaterMark);this.res=I,I.req=this,I.statusCode=l[ZGn],I.headers=l,I.rawHeaders=f,I.once("end",()=>{this.aborted?(I.aborted=!0,I.emit("aborted")):(I.complete=!0,I.socket=null,I.connection=null)}),t?(I.upgrade=!0,this.emit("connect",I,n,Buffer.alloc(0))?this.emit("close"):n.destroy()):(n.on("data",C=>{!I._dumped&&!I.push(C)&&n.pause()}),n.once("end",()=>{I.push(null)}),this.emit("response",I)||I._dump())})),n.once("headers",a(l=>this.emit("information",{statusCode:l[ZGn]}))),n.once("trailers",a((l,A,f)=>{let{res:I}=this;I.trailers=l,I.rawTrailers=f}));let{socket:o}=n.session;this.socket=o,this.connection=o;for(let l of this[s5e])l();this.emit("socket",this.socket)};if(this[Agr])try{r(this[Agr].request(this[dG]))}catch(n){this.emit("error",n)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[ggr],this[PGn],this[dG]))}catch(n){this.emit("error",n)}}}getHeader(t){if(typeof t!="string")throw new ugr("name","string",t);return this[dG][t.toLowerCase()]}get headersSent(){return this[Sgt]}removeHeader(t){if(typeof t!="string")throw new ugr("name","string",t);if(this.headersSent)throw new FGn("remove");delete this[dG][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new FGn("set");if(typeof t!="string"||!eVo.test(t)&&!U9o(t))throw new j9o("Header name",t);if(typeof r>"u")throw new z9o(r,t);if(tVo.test(r))throw new q9o("header content",t);this[dG][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let n=()=>this._request.setTimeout(t,r);return this._request?n():this[s5e].push(n),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};WGn.exports=dgr});var MGn=H((xjl,OGn)=>{"use strict";var rVo=wt("tls");OGn.exports=(e={},t=rVo.connect)=>new Promise((r,n)=>{let a=!1,o,l=async()=>{await f,o.off("timeout",A),o.off("error",n),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},A=async()=>{a=!0,l()},f=(async()=>{try{o=await t(e,l),o.on("error",n),o.once("timeout",A)}catch(I){n(I)}})()})});var YGn=H((Gjl,HGn)=>{"use strict";var nVo=wt("net");HGn.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),nVo.isIP(t)?"":t}});var JGn=H((Fjl,Igr)=>{"use strict";var QGn=wt("http"),fgr=wt("https"),iVo=MGn(),sVo=igr(),oVo=pgr(),aVo=YGn(),cVo=lgr(),vgt=new sVo({maxSize:100}),o5e=new Map,XGn=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let n=()=>{e.emit("free",t,r)};t.on("free",n);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",n),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},lVo=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!vgt.has(t)){if(o5e.has(t))return(await o5e.get(t)).alpnProtocol;let{path:r,agent:n}=e;e.path=e.socketPath;let a=iVo(e);o5e.set(t,a);try{let{socket:o,alpnProtocol:l}=await a;if(vgt.set(t,l),e.path=r,l==="h2")o.destroy();else{let{globalAgent:A}=fgr,f=fgr.Agent.prototype.createConnection;n?n.createConnection===f?XGn(n,o,e):o.destroy():A.createConnection===f?XGn(A,o,e):o.destroy()}return o5e.delete(t),l}catch(o){throw o5e.delete(t),o}}return vgt.get(t)};Igr.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=cVo(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let n=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||aVo(t),t.port=t.port||(n?443:80),t._defaultAgent=n?fgr.globalAgent:QGn.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[n?"https":"http"]}return n&&await lVo(t)==="h2"?(a&&(t.agent=a.http2),new oVo(t,r)):QGn.request(t,r)};Igr.exports.protocolCache=vgt});var KGn=H((Zjl,UGn)=>{"use strict";var uVo=wt("http2"),gVo=ogr(),hgr=pgr(),AVo=cgr(),dVo=JGn(),pVo=(e,t,r)=>new hgr(e,t,r),fVo=(e,t,r)=>{let n=new hgr(e,t,r);return n.end(),n};UGn.exports={...uVo,ClientRequest:hgr,IncomingMessage:AVo,...gVo,request:pVo,get:fVo,auto:dVo}});var Cgr=H(mgr=>{"use strict";Object.defineProperty(mgr,"__esModule",{value:!0});var jGn=o$();mgr.default=e=>jGn.default.nodeStream(e)&&jGn.default.function_(e.getBoundary)});var eFn=H(_gr=>{"use strict";Object.defineProperty(_gr,"__esModule",{value:!0});var qGn=wt("fs"),$Gn=wt("util"),zGn=o$(),IVo=Cgr(),hVo=$Gn.promisify(qGn.stat);_gr.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if(zGn.default.string(e))return Buffer.byteLength(e);if(zGn.default.buffer(e))return e.length;if(IVo.default(e))return $Gn.promisify(e.getLength.bind(e))();if(e instanceof qGn.ReadStream){let{size:r}=await hVo(e.path);return r===0?void 0:r}}});var bgr=H(ygr=>{"use strict";Object.defineProperty(ygr,"__esModule",{value:!0});function mVo(e,t,r){let n={};for(let a of r)n[a]=(...o)=>{t.emit(a,...o)},e.on(a,n[a]);return()=>{for(let a of r)e.off(a,n[a])}}ygr.default=mVo});var tFn=H(Egr=>{"use strict";Object.defineProperty(Egr,"__esModule",{value:!0});Egr.default=()=>{let e=[];return{once(t,r,n){t.once(r,n),e.push({origin:t,event:r,fn:n})},unhandleAll(){for(let t of e){let{origin:r,event:n,fn:a}=t;r.removeListener(n,a)}e.length=0}}}});var nFn=H(a5e=>{"use strict";Object.defineProperty(a5e,"__esModule",{value:!0});a5e.TimeoutError=void 0;var CVo=wt("net"),_Vo=tFn(),rFn=Symbol("reentry"),yVo=()=>{},Bgt=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};a5e.TimeoutError=Bgt;a5e.default=(e,t,r)=>{if(rFn in e)return yVo;e[rFn]=!0;let n=[],{once:a,unhandleAll:o}=_Vo.default(),l=(b,E,N)=>{var B;let F=setTimeout(E,b,b,N);(B=F.unref)===null||B===void 0||B.call(F);let Q=()=>{clearTimeout(F)};return n.push(Q),Q},{host:A,hostname:f}=r,I=(b,E)=>{e.destroy(new Bgt(b,E))},C=()=>{for(let b of n)b();o()};if(e.once("error",b=>{if(C(),e.listenerCount("error")===0)throw b}),e.once("close",C),a(e,"response",b=>{a(b,"end",C)}),typeof t.request<"u"&&l(t.request,I,"request"),typeof t.socket<"u"){let b=()=>{I(t.socket,"socket")};e.setTimeout(t.socket,b),n.push(()=>{e.removeListener("timeout",b)})}return a(e,"socket",b=>{var E;let{socketPath:N}=e;if(b.connecting){let B=!!(N??CVo.isIP((E=f??A)!==null&&E!==void 0?E:"")!==0);if(typeof t.lookup<"u"&&!B&&typeof b.address().address>"u"){let F=l(t.lookup,I,"lookup");a(b,"lookup",F)}if(typeof t.connect<"u"){let F=()=>l(t.connect,I,"connect");B?a(b,"connect",F()):a(b,"lookup",Q=>{Q===null&&a(b,"connect",F())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(b,"connect",()=>{let F=l(t.secureConnect,I,"secureConnect");a(b,"secureConnect",F)})}if(typeof t.send<"u"){let B=()=>l(t.send,I,"send");b.connecting?a(b,"connect",()=>{a(e,"upload-complete",B())}):a(e,"upload-complete",B())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let b=l(t.response,I,"response");a(e,"response",b)}),C}});var sFn=H(Sgr=>{"use strict";Object.defineProperty(Sgr,"__esModule",{value:!0});var iFn=o$();Sgr.default=e=>{e=e;let t={protocol:e.protocol,hostname:iFn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return iFn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var oFn=H(vgr=>{"use strict";Object.defineProperty(vgr,"__esModule",{value:!0});var bVo=wt("url"),EVo=["protocol","host","hostname","port","pathname","search"];vgr.default=(e,t)=>{var r,n;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(n=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&n!==void 0?n:""}`}let a=new bVo.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of EVo)t[o]&&(a[o]=t[o].toString());return a}});var aFn=H(wgr=>{"use strict";Object.defineProperty(wgr,"__esModule",{value:!0});var Bgr=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};wgr.default=Bgr});var Rgr=H(Tgr=>{"use strict";Object.defineProperty(Tgr,"__esModule",{value:!0});var SVo=async e=>{let t=[],r=0;for await(let n of e)t.push(n),r+=Buffer.byteLength(n);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};Tgr.default=SVo});var lFn=H($fe=>{"use strict";Object.defineProperty($fe,"__esModule",{value:!0});$fe.dnsLookupIpVersionToFamily=$fe.isDnsLookupIpVersion=void 0;var cFn={auto:0,ipv4:4,ipv6:6};$fe.isDnsLookupIpVersion=e=>e in cFn;$fe.dnsLookupIpVersionToFamily=e=>{if($fe.isDnsLookupIpVersion(e))return cFn[e];throw new Error("Invalid DNS lookup IP version")}});var Ngr=H(wgt=>{"use strict";Object.defineProperty(wgt,"__esModule",{value:!0});wgt.isResponseOk=void 0;wgt.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var gFn=H(Dgr=>{"use strict";Object.defineProperty(Dgr,"__esModule",{value:!0});var uFn=new Set;Dgr.default=e=>{uFn.has(e)||(uFn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var AFn=H(kgr=>{"use strict";Object.defineProperty(kgr,"__esModule",{value:!0});var G1=o$(),vVo=(e,t)=>{if(G1.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");G1.assert.any([G1.default.string,G1.default.undefined],e.encoding),G1.assert.any([G1.default.boolean,G1.default.undefined],e.resolveBodyOnly),G1.assert.any([G1.default.boolean,G1.default.undefined],e.methodRewriting),G1.assert.any([G1.default.boolean,G1.default.undefined],e.isStream),G1.assert.any([G1.default.string,G1.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:n=>n.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},G1.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(n=>n.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):G1.default.number(r)&&(e.retry.limit=r),G1.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(G1.default.number))),G1.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:n}=e;if(!G1.default.function_(n.transform))throw new Error("`options.pagination.transform` must be implemented");if(!G1.default.function_(n.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!G1.default.function_(n.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!G1.default.function_(n.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};kgr.default=vVo});var dFn=H(c5e=>{"use strict";Object.defineProperty(c5e,"__esModule",{value:!0});c5e.retryAfterStatusCodes=void 0;c5e.retryAfterStatusCodes=new Set([413,429,503]);var BVo=({attemptCount:e,retryOptions:t,error:r,retryAfter:n})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),l=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!l)return 0;if(r.response){if(n)return t.maxRetryAfter===void 0||n>t.maxRetryAfter?0:n;if(r.response.statusCode===413)return 0}let A=Math.random()*100;return 2**(e-1)*1e3+A};c5e.default=BVo});var g5e=H(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});O_.UnsupportedProtocolError=O_.ReadError=O_.TimeoutError=O_.UploadError=O_.CacheError=O_.HTTPError=O_.MaxRedirectsError=O_.RequestError=O_.setNonEnumerableProperties=O_.knownHookEvents=O_.withoutBody=O_.kIsNormalizedAlready=void 0;var pFn=wt("util"),fFn=wt("stream"),wVo=wt("fs"),yoe=wt("url"),IFn=wt("http"),xgr=wt("http"),TVo=wt("https"),RVo=Dxn(),NVo=Vxn(),hFn=IGn(),DVo=_Gn(),kVo=KGn(),xVo=bgt(),va=o$(),GVo=eFn(),mFn=Cgr(),FVo=bgr(),CFn=nFn(),ZVo=sFn(),_Fn=oFn(),LVo=aFn(),VVo=Rgr(),yFn=lFn(),PVo=Ngr(),boe=gFn(),WVo=AFn(),OVo=dFn(),Ggr,vk=Symbol("request"),Ngt=Symbol("response"),hve=Symbol("responseSize"),mve=Symbol("downloadedSize"),Cve=Symbol("bodySize"),_ve=Symbol("uploadedSize"),Tgt=Symbol("serverResponsesPiped"),bFn=Symbol("unproxyEvents"),EFn=Symbol("isFromCache"),Fgr=Symbol("cancelTimeouts"),SFn=Symbol("startedReading"),yve=Symbol("stopReading"),Rgt=Symbol("triggerRead"),Eoe=Symbol("body"),l5e=Symbol("jobs"),vFn=Symbol("originalResponse"),BFn=Symbol("retryTimeout");O_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var MVo=va.default.string(process.versions.brotli);O_.withoutBody=new Set(["GET","HEAD"]);O_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function HVo(e){for(let t in e){let r=e[t];if(!va.default.string(r)&&!va.default.number(r)&&!va.default.boolean(r)&&!va.default.null_(r)&&!va.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function YVo(e){return va.default.object(e)&&!("statusCode"in e)}var Zgr=new LVo.default,QVo=async e=>new Promise((t,r)=>{let n=a=>{r(a)};e.pending||t(),e.once("error",n),e.once("ready",()=>{e.off("error",n),t()})}),XVo=new Set([300,301,302,303,304,307,308]),JVo=["context","body","json","form"];O_.setNonEnumerableProperties=(e,t)=>{let r={};for(let n of e)if(n)for(let a of JVo)a in n&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:n[a]});Object.defineProperties(t,r)};var jB=class extends Error{constructor(t,r,n){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",n instanceof Lgt?(Object.defineProperty(this,"request",{enumerable:!1,value:n}),Object.defineProperty(this,"response",{enumerable:!1,value:n[Ngt]}),Object.defineProperty(this,"options",{enumerable:!1,value:n.options})):Object.defineProperty(this,"options",{enumerable:!1,value:n}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,va.default.string(r.stack)&&va.default.string(this.stack)){let l=this.stack.indexOf(this.message)+this.message.length,A=this.stack.slice(l).split(` + }`,E=zbo.attempt(()=>new Function(...f,`${C}return ${b}`)(...I));if(E.source=b,E instanceof Error)throw E;return E}mut.template=TNn;mut.templateSettings=hut});var Car=H(mar=>{"use strict";Object.defineProperty(mar,Symbol.toStringTag,{value:"Module"});var nEo=qy();function iEo(e){return nEo.toString(e).toLowerCase()}mar.toLower=iEo});var yar=H(_ar=>{"use strict";Object.defineProperty(_ar,Symbol.toStringTag,{value:"Module"});var sEo=qy();function oEo(e){return sEo.toString(e).toUpperCase()}_ar.toUpper=oEo});var Ear=H(bar=>{"use strict";Object.defineProperty(bar,Symbol.toStringTag,{value:"Module"});function aEo(e,t){if(t===void 0)return e.trimEnd();let r=e.length;switch(typeof t){case"string":{if(t.length!==1)throw new Error("The 'chars' parameter should be a single character string.");for(;r>0&&e[r-1]===t;)r--;break}case"object":for(;r>0&&t.includes(e[r-1]);)r--}return e.substring(0,r)}bar.trimEnd=aEo});var Bar=H(Sar=>{"use strict";Object.defineProperty(Sar,Symbol.toStringTag,{value:"Module"});function cEo(e,t){if(t===void 0)return e.trimStart();let r=0;switch(typeof t){case"string":{for(;r{"use strict";Object.defineProperty(war,Symbol.toStringTag,{value:"Module"});var lEo=Ear(),uEo=Bar();function gEo(e,t){return t===void 0?e.trim():uEo.trimStart(lEo.trimEnd(e,t),t)}war.trim=gEo});var Nar=H(Rar=>{"use strict";Object.defineProperty(Rar,Symbol.toStringTag,{value:"Module"});var Tar=RNn();function AEo(e,t,r){if(e==null)return"";if(r!=null||t==null)return e.toString().trim();switch(typeof t){case"object":return Array.isArray(t)?Tar.trim(e,t.flatMap(n=>n.toString().split(""))):Tar.trim(e,t.toString().split(""));default:return Tar.trim(e,t.toString().split(""))}}Rar.trim=AEo});var kar=H(Dar=>{"use strict";Object.defineProperty(Dar,Symbol.toStringTag,{value:"Module"});var dEo=Ear();function pEo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimEnd():dEo.trimEnd(e,t.toString().split(""))}Dar.trimEnd=pEo});var Gar=H(xar=>{"use strict";Object.defineProperty(xar,Symbol.toStringTag,{value:"Module"});var fEo=Bar();function IEo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimStart():fEo.trimStart(e,t.toString().split(""))}xar.trimStart=IEo});var Zar=H(Far=>{"use strict";Object.defineProperty(Far,Symbol.toStringTag,{value:"Module"});var hEo=tM(),mEo=/[\u200d\ud800-\udfff\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff\ufe0e\ufe0f]/;function CEo(e,t){e=e!=null?`${e}`:"";let r=30,n="...";hEo.isObject(t)&&(r=_Eo(t.length),n="omission"in t?`${t.omission}`:"...");let a=e.length,o=Array.from(n).length,l=Math.max(r-o,0),A;if(mEo.test(e)&&(A=Array.from(e),a=A.length),r>=a)return e;if(a<=o)return n;let I=A===void 0?e.slice(0,l):A?.slice(0,l).join(""),C=t?.separator;if(!C)return I+=n,I;let b=C instanceof RegExp?C.source:C,E="u"+(C instanceof RegExp?C.flags.replace("u",""):""),N=new RegExp(`(?.*(?:(?!${b}).))(?:${b})`,E).exec(I);return(N?.groups?N.groups.result:I)+n}function _Eo(e){return e==null?30:e<=0?0:e}Far.truncate=CEo});var NNn=H(Lar=>{"use strict";Object.defineProperty(Lar,Symbol.toStringTag,{value:"Module"});var yEo={"&":"&","<":"<",">":">",""":'"',"'":"'"};function bEo(e){return e.replace(/&(?:amp|lt|gt|quot|#(0+)?39);/g,t=>yEo[t]||"'")}Lar.unescape=bEo});var War=H(Par=>{"use strict";Object.defineProperty(Par,Symbol.toStringTag,{value:"Module"});var EEo=NNn(),SEo=qy();function vEo(e){return EEo.unescape(SEo.toString(e))}Par.unescape=vEo});var DNn=H(Oar=>{"use strict";Object.defineProperty(Oar,Symbol.toStringTag,{value:"Module"});var BEo=Yfe();function wEo(e){let t=BEo.words(e),r="";for(let n=0;n{"use strict";Object.defineProperty(Mar,Symbol.toStringTag,{value:"Module"});var TEo=t$(),REo=DNn(),NEo=Qfe();function DEo(e){return REo.upperCase(NEo.normalizeForCase(TEo.deburr(e)))}Mar.upperCase=DEo});var kNn=H(Yar=>{"use strict";Object.defineProperty(Yar,Symbol.toStringTag,{value:"Module"});function kEo(e){return e.substring(0,1).toUpperCase()+e.substring(1)}Yar.upperFirst=kEo});var Xar=H(Qar=>{"use strict";Object.defineProperty(Qar,Symbol.toStringTag,{value:"Module"});var xEo=kNn(),GEo=qy();function FEo(e){return xEo.upperFirst(GEo.toString(e))}Qar.upperFirst=FEo});var Uar=H(Jar=>{"use strict";Object.defineProperty(Jar,Symbol.toStringTag,{value:"Module"});var ZEo=qy(),LEo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\xd7\\xf7",KSe="\\p{Lu}",VNn="\\p{Ll}",PNn="(?:[\\p{Lm}\\p{Lo}]\\p{M}*)",J3e="\\d",xNn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",GNn="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",FNn=`[\\p{Z}\\p{P}${LEo}]`,VEo=`(?:${KSe}|${PNn})`,ZNn=`(?:${VNn}|${PNn})`,LNn=RegExp([`${KSe}?${VNn}+${xNn}(?=${FNn}|${KSe}|$)`,`${VEo}+${GNn}(?=${FNn}|${KSe}${ZNn}|$)`,`${KSe}?${ZNn}+${xNn}`,`${KSe}+${GNn}`,`${J3e}*(?:1ST|2ND|3RD|(?![123])${J3e}TH)(?=\\b|[a-z_])`,`${J3e}*(?:1st|2nd|3rd|(?![123])${J3e}th)(?=\\b|[A-Z_])`,`${J3e}+`,"\\p{Emoji_Presentation}","\\p{Extended_Pictographic}"].join("|"),"gu");function PEo(e,t=LNn,r){let n=ZEo.toString(e);return r&&(t=LNn),typeof t=="number"&&(t=t.toString()),Array.from(n.match(t)??[]).filter(o=>o!=="")}Jar.words=PEo});var jar=H(Kar=>{"use strict";Object.defineProperty(Kar,Symbol.toStringTag,{value:"Module"});var WEo=im(),OEo=loe();function MEo(e){let t=e.length,r=e.map(n=>{let a=n[0],o=n[1];if(!OEo.isFunction(o))throw new TypeError("Expected a function");return[WEo.iteratee(a),o]});return function(...n){for(let a=0;a{"use strict";Object.defineProperty(zar,Symbol.toStringTag,{value:"Module"});function HEo(e){return()=>e}zar.constant=HEo});var ecr=H($ar=>{"use strict";Object.defineProperty($ar,Symbol.toStringTag,{value:"Module"});function YEo(e,t){return e==null||Number.isNaN(e)?t:e}$ar.defaultTo=YEo});var rcr=H(tcr=>{"use strict";Object.defineProperty(tcr,Symbol.toStringTag,{value:"Module"});var WNn=Q9();function QEo(e,t){return typeof e=="string"&&typeof t=="string"?e>t:WNn.toNumber(e)>WNn.toNumber(t)}tcr.gt=QEo});var icr=H(ncr=>{"use strict";Object.defineProperty(ncr,Symbol.toStringTag,{value:"Module"});var ONn=Q9();function XEo(e,t){return typeof e=="string"&&typeof t=="string"?e>=t:ONn.toNumber(e)>=ONn.toNumber(t)}ncr.gte=XEo});var K3e=H(scr=>{"use strict";Object.defineProperty(scr,Symbol.toStringTag,{value:"Module"});var JEo=$5(),UEo=Kq(),KEo=zq(),MNn=eM();function jEo(e,t,...r){if(r=r.flat(1),e!=null)switch(typeof t){case"string":return typeof e=="object"&&Object.hasOwn(e,t)?U3e(e,[t],r):U3e(e,JEo.toPath(t),r);case"number":case"symbol":return U3e(e,[t],r);default:return Array.isArray(t)?U3e(e,t,r):U3e(e,[t],r)}}function U3e(e,t,r){let n=MNn.get(e,t.slice(0,-1),e);if(n==null)return;let a=KEo.last(t),o=a?.valueOf();return typeof o=="number"?a=UEo.toKey(o):a=String(a),MNn.get(n,a)?.apply(n,r)}scr.invoke=jEo});var acr=H(ocr=>{"use strict";Object.defineProperty(ocr,Symbol.toStringTag,{value:"Module"});var HNn=Q9();function zEo(e,t){return typeof e=="string"&&typeof t=="string"?e{"use strict";Object.defineProperty(ccr,Symbol.toStringTag,{value:"Module"});var YNn=Q9();function qEo(e,t){return typeof e=="string"&&typeof t=="string"?e<=t:YNn.toNumber(e)<=YNn.toNumber(t)}ccr.lte=qEo});var gcr=H(ucr=>{"use strict";Object.defineProperty(ucr,Symbol.toStringTag,{value:"Module"});var $Eo=K3e();function e1o(e,...t){return function(r){return $Eo.invoke(r,e,t)}}ucr.method=e1o});var dcr=H(Acr=>{"use strict";Object.defineProperty(Acr,Symbol.toStringTag,{value:"Module"});var t1o=K3e();function r1o(e,...t){return function(r){return t1o.invoke(e,r,t)}}Acr.methodOf=r1o});var fcr=H(pcr=>{"use strict";Object.defineProperty(pcr,Symbol.toStringTag,{value:"Module"});function n1o(){return Date.now()}pcr.now=n1o});var hcr=H(Icr=>{"use strict";Object.defineProperty(Icr,Symbol.toStringTag,{value:"Module"});var i1o=im();function s1o(...e){e.length===1&&Array.isArray(e[0])&&(e=e[0]);let t=e.map(r=>i1o.iteratee(r));return function(...r){return t.map(n=>n.apply(this,r))}}Icr.over=s1o});var Ccr=H(mcr=>{"use strict";Object.defineProperty(mcr,Symbol.toStringTag,{value:"Module"});var QNn=im();function o1o(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(_cr,Symbol.toStringTag,{value:"Module"});var XNn=im();function a1o(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(bcr,Symbol.toStringTag,{value:"Module"});function c1o(){return[]}bcr.stubArray=c1o});var vcr=H(Scr=>{"use strict";Object.defineProperty(Scr,Symbol.toStringTag,{value:"Module"});function l1o(){return!1}Scr.stubFalse=l1o});var wcr=H(Bcr=>{"use strict";Object.defineProperty(Bcr,Symbol.toStringTag,{value:"Module"});function u1o(){return{}}Bcr.stubObject=u1o});var Rcr=H(Tcr=>{"use strict";Object.defineProperty(Tcr,Symbol.toStringTag,{value:"Module"});function g1o(){return""}Tcr.stubString=g1o});var Dcr=H(Ncr=>{"use strict";Object.defineProperty(Ncr,Symbol.toStringTag,{value:"Module"});function A1o(){return!0}Ncr.stubTrue=A1o});var JNn=H(kcr=>{"use strict";Object.defineProperty(kcr,Symbol.toStringTag,{value:"Module"});var d1o=4294967295;kcr.MAX_ARRAY_LENGTH=d1o});var Gcr=H(xcr=>{"use strict";Object.defineProperty(xcr,Symbol.toStringTag,{value:"Module"});var p1o=JNn(),f1o=Mfe();function I1o(e){if(e==null)return 0;let t=Math.floor(Number(e));return f1o.clamp(t,0,p1o.MAX_ARRAY_LENGTH)}xcr.toLength=I1o});var Zcr=H(Fcr=>{"use strict";Object.defineProperty(Fcr,Symbol.toStringTag,{value:"Module"});var h1o=iX();function m1o(e){let t={},r=h1o.keysIn(e);for(let n=0;n{"use strict";Object.defineProperty(Lcr,Symbol.toStringTag,{value:"Module"});var C1o=$w(),UNn=nar(),_1o=Mfe();function y1o(e){return e==null?0:_1o.clamp(C1o.toInteger(e),-UNn.MAX_SAFE_INTEGER,UNn.MAX_SAFE_INTEGER)}Lcr.toSafeInteger=y1o});var Wcr=H(Pcr=>{"use strict";Object.defineProperty(Pcr,Symbol.toStringTag,{value:"Module"});var b1o=0;function E1o(e=""){let t=++b1o;return`${e}${t}`}Pcr.uniqueId=E1o});var tDn=H(Kn=>{"use strict";Object.defineProperty(Kn,Symbol.toStringTag,{value:"Module"});var S1o=w7t(),v1o=x7t(),B1o=Z7t(),w1o=P7t(),T1o=mzt(),R1o=Ezt(),N1o=wlt(),D1o=Tlt(),k1o=Lzt(),x1o=Wzt(),G1o=Hzt(),F1o=Xzt(),KNn=Dlt(),jNn=jzt(),Z1o=$zt(),L1o=nqt(),V1o=klt(),P1o=oqt(),W1o=lqt(),O1o=gqt(),M1o=dqt(),zNn=Iqt(),H1o=bqt(),Y1o=vqt(),Q1o=k3e(),X1o=Wfe(),J1o=wqt(),U1o=QSe(),K1o=Nqt(),j1o=kqt(),z1o=Gqt(),q1o=Lqt(),$1o=Oqt(),e2o=Glt(),t2o=Flt(),r2o=zqt(),n2o=$qt(),i2o=r$t(),s2o=zq(),o2o=i$t(),a2o=D3e(),c2o=o$t(),l2o=Llt(),u2o=g$t(),g2o=f$t(),A2o=h$t(),d2o=C$t(),p2o=y$t(),f2o=w$t(),I2o=Zlt(),h2o=R$t(),m2o=k$t(),C2o=F$t(),_2o=L$t(),y2o=W$t(),b2o=z$t(),E2o=ner(),S2o=ser(),v2o=aer(),B2o=ler(),w2o=ger(),T2o=Hlt(),R2o=V3e(),N2o=ber(),D2o=Qlt(),k2o=Ylt(),x2o=Ber(),G2o=Rer(),F2o=ker(),Z2o=Fer(),L2o=Ver(),V2o=Wer(),P2o=Mer(),W2o=Jlt(),O2o=Ult(),M2o=x3e(),H2o=zer(),Y2o=$er(),Q2o=Klt(),X2o=itr(),J2o=atr(),U2o=ltr(),K2o=dtr(),j2o=Itr(),z2o=_tr(),q2o=Etr(),$2o=wtr(),eSo=Rtr(),tSo=Dtr(),rSo=zlt(),nSo=qlt(),iSo=Ftr(),sSo=Vtr(),oSo=Otr(),aSo=Ytr(),cSo=Jtr(),lSo=$lt(),uSo=ztr(),gSo=$tr(),ASo=rrr(),dSo=orr(),pSo=lrr(),fSo=Arr(),ISo=Z3e(),hSo=prr(),mSo=hrr(),CSo=Crr(),_So=brr(),ySo=vrr(),bSo=wrr(),ESo=Nrr(),SSo=krr(),vSo=Grr(),BSo=Zrr(),wSo=Vrr(),TSo=Wrr(),RSo=Hrr(),NSo=Mfe(),DSo=Qrr(),kSo=Jrr(),xSo=jrr(),GSo=qrr(),FSo=tnr(),ZSo=snr(),LSo=lnr(),VSo=gnr(),PSo=pnr(),WSo=Inr(),OSo=mnr(),MSo=_nr(),HSo=Enr(),YSo=Bnr(),QSo=Tnr(),XSo=Nnr(),JSo=iut(),USo=nut(),KSo=Lnr(),jSo=HK(),zSo=Pnr(),qSo=Qnr(),qNn=Unr(),$Nn=jnr(),$So=qnr(),evo=Vlt(),tvo=aut(),rvo=OSe(),nvo=B3e(),ivo=rir(),svo=iir(),ovo=Q3e(),avo=cir(),cvo=gir(),lvo=dir(),uvo=fir(),gvo=hir(),Avo=Cir(),dvo=yir(),pvo=Eir(),fvo=vir(),Ivo=wir(),hvo=eM(),mvo=w3e(),Cvo=Rir(),_vo=kir(),yvo=Gir(),bvo=YK(),Evo=iX(),Svo=Lir(),vvo=Wir(),Bvo=Xir(),wvo=uut(),Tvo=Kir(),Rvo=zir(),Nvo=$ir(),Dvo=tsr(),kvo=nX(),xvo=nsr(),Gvo=ssr(),Fvo=W3e(),Zvo=asr(),Lvo=lsr(),Vvo=fsr(),Pvo=hsr(),Wvo=_sr(),Ovo=F3e(),Mvo=bsr(),Hvo=JSe(),Yvo=Wlt(),Qvo=Ssr(),Xvo=Bsr(),Jvo=Tsr(),Uvo=Slt(),Kvo=Nsr(),jvo=ksr(),zvo=Gsr(),qvo=Lsr(),$vo=dut(),eBo=Pfe(),tBo=$q(),rBo=Wsr(),nBo=Sf(),iBo=b2(),sBo=Msr(),oBo=Aut(),aBo=Qsr(),cBo=Jsr(),lBo=Ksr(),uBo=$sr(),gBo=tor(),ABo=nor(),dBo=sor(),pBo=Plt(),fBo=y3e(),IBo=Mlt(),hBo=XSe(),mBo=P3e(),CBo=tM(),_Bo=soe(),yBo=Hfe(),bBo=cor(),EBo=uor(),SBo=dor(),vBo=YSe(),BBo=ooe(),wBo=e$(),TBo=hor(),RBo=_or(),NBo=OK(),DBo=MK(),kBo=Sor(),xBo=Bor(),GBo=kor(),FBo=t$(),ZBo=Gor(),LBo=fut(),VBo=Por(),PBo=Mor(),WBo=Qor(),OBo=Uor(),MBo=zor(),HBo=$or(),YBo=tar(),QBo=sar(),XBo=aar(),JBo=uar(),UBo=Aar(),KBo=par(),jBo=Iar(),eDn=har(),zBo=Car(),qBo=yar(),$Bo=Nar(),ewo=kar(),two=Gar(),rwo=Zar(),nwo=War(),iwo=Har(),swo=Xar(),owo=Uar(),awo=jar(),cwo=qar(),lwo=ecr(),uwo=Sk(),gwo=rcr(),Awo=icr(),dwo=K3e(),pwo=im(),fwo=acr(),Iwo=lcr(),hwo=gcr(),mwo=dcr(),Cwo=fcr(),_wo=hcr(),ywo=Ccr(),bwo=ycr(),Ewo=Ecr(),Swo=vcr(),vwo=wcr(),Bwo=Rcr(),wwo=Dcr(),Two=Y3e(),Rwo=L3e(),Nwo=HSe(),Dwo=$w(),kwo=Gcr(),xwo=Q9(),Gwo=$5(),Fwo=Zcr(),Zwo=Vcr(),Lwo=qy(),Vwo=Wcr();Kn.castArray=S1o.castArray;Kn.chunk=v1o.chunk;Kn.compact=B1o.compact;Kn.concat=w1o.concat;Kn.countBy=T1o.countBy;Kn.difference=R1o.difference;Kn.differenceBy=N1o.differenceBy;Kn.differenceWith=D1o.differenceWith;Kn.drop=k1o.drop;Kn.dropRight=x1o.dropRight;Kn.dropRightWhile=G1o.dropRightWhile;Kn.dropWhile=F1o.dropWhile;Kn.each=KNn.forEach;Kn.forEach=KNn.forEach;Kn.eachRight=jNn.forEachRight;Kn.forEachRight=jNn.forEachRight;Kn.every=Z1o.every;Kn.fill=L1o.fill;Kn.filter=V1o.filter;Kn.find=P1o.find;Kn.findIndex=W1o.findIndex;Kn.findLast=O1o.findLast;Kn.findLastIndex=M1o.findLastIndex;Kn.first=zNn.head;Kn.head=zNn.head;Kn.flatMap=H1o.flatMap;Kn.flatMapDeep=Y1o.flatMapDeep;Kn.flatMapDepth=Q1o.flatMapDepth;Kn.flatten=X1o.flatten;Kn.flattenDeep=J1o.flattenDeep;Kn.flattenDepth=U1o.flattenDepth;Kn.groupBy=K1o.groupBy;Kn.includes=j1o.includes;Kn.indexOf=z1o.indexOf;Kn.initial=q1o.initial;Kn.intersection=$1o.intersection;Kn.intersectionBy=e2o.intersectionBy;Kn.intersectionWith=t2o.intersectionWith;Kn.invokeMap=r2o.invokeMap;Kn.join=n2o.join;Kn.keyBy=i2o.keyBy;Kn.last=s2o.last;Kn.lastIndexOf=o2o.lastIndexOf;Kn.map=a2o.map;Kn.nth=c2o.nth;Kn.orderBy=l2o.orderBy;Kn.partition=u2o.partition;Kn.pull=g2o.pull;Kn.pullAll=A2o.pullAll;Kn.pullAllBy=d2o.pullAllBy;Kn.pullAllWith=p2o.pullAllWith;Kn.pullAt=f2o.pullAt;Kn.reduce=I2o.reduce;Kn.reduceRight=h2o.reduceRight;Kn.reject=m2o.reject;Kn.remove=C2o.remove;Kn.reverse=_2o.reverse;Kn.sample=y2o.sample;Kn.sampleSize=b2o.sampleSize;Kn.shuffle=E2o.shuffle;Kn.size=S2o.size;Kn.slice=v2o.slice;Kn.some=B2o.some;Kn.sortBy=w2o.sortBy;Kn.sortedIndex=T2o.sortedIndex;Kn.sortedIndexBy=R2o.sortedIndexBy;Kn.sortedIndexOf=N2o.sortedIndexOf;Kn.sortedLastIndex=D2o.sortedLastIndex;Kn.sortedLastIndexBy=k2o.sortedLastIndexBy;Kn.sortedLastIndexOf=x2o.sortedLastIndexOf;Kn.tail=G2o.tail;Kn.take=F2o.take;Kn.takeRight=Z2o.takeRight;Kn.takeRightWhile=L2o.takeRightWhile;Kn.takeWhile=V2o.takeWhile;Kn.union=P2o.union;Kn.unionBy=W2o.unionBy;Kn.unionWith=O2o.unionWith;Kn.uniq=M2o.uniq;Kn.uniqBy=H2o.uniqBy;Kn.uniqWith=Y2o.uniqWith;Kn.unzip=Q2o.unzip;Kn.unzipWith=X2o.unzipWith;Kn.without=J2o.without;Kn.xor=U2o.xor;Kn.xorBy=K2o.xorBy;Kn.xorWith=j2o.xorWith;Kn.zip=z2o.zip;Kn.zipObject=q2o.zipObject;Kn.zipObjectDeep=$2o.zipObjectDeep;Kn.zipWith=eSo.zipWith;Kn.after=tSo.after;Kn.ary=rSo.ary;Kn.attempt=nSo.attempt;Kn.before=iSo.before;Kn.bind=sSo.bind;Kn.bindKey=oSo.bindKey;Kn.curry=aSo.curry;Kn.curryRight=cSo.curryRight;Kn.debounce=lSo.debounce;Kn.defer=uSo.defer;Kn.delay=gSo.delay;Kn.flip=ASo.flip;Kn.flow=dSo.flow;Kn.flowRight=pSo.flowRight;Kn.memoize=fSo.memoize;Kn.negate=ISo.negate;Kn.nthArg=hSo.nthArg;Kn.once=mSo.once;Kn.overArgs=CSo.overArgs;Kn.partial=_So.partial;Kn.partialRight=ySo.partialRight;Kn.rearg=bSo.rearg;Kn.rest=ESo.rest;Kn.spread=SSo.spread;Kn.throttle=vSo.throttle;Kn.unary=BSo.unary;Kn.wrap=wSo.wrap;Kn.add=TSo.add;Kn.ceil=RSo.ceil;Kn.clamp=NSo.clamp;Kn.divide=DSo.divide;Kn.floor=kSo.floor;Kn.inRange=xSo.inRange;Kn.max=GSo.max;Kn.maxBy=FSo.maxBy;Kn.mean=ZSo.mean;Kn.meanBy=LSo.meanBy;Kn.min=VSo.min;Kn.minBy=PSo.minBy;Kn.multiply=WSo.multiply;Kn.parseInt=OSo.parseInt;Kn.random=MSo.random;Kn.range=HSo.range;Kn.rangeRight=YSo.rangeRight;Kn.round=QSo.round;Kn.subtract=XSo.subtract;Kn.sum=JSo.sum;Kn.sumBy=USo.sumBy;Kn.isEqual=KSo.isEqual;Kn.identity=jSo.identity;Kn.noop=zSo.noop;Kn.assign=qSo.assign;Kn.assignIn=qNn.assignIn;Kn.extend=qNn.assignIn;Kn.assignInWith=$Nn.assignInWith;Kn.extendWith=$Nn.assignInWith;Kn.assignWith=$So.assignWith;Kn.at=evo.at;Kn.clone=tvo.clone;Kn.cloneDeep=rvo.cloneDeep;Kn.cloneDeepWith=nvo.cloneDeepWith;Kn.cloneWith=ivo.cloneWith;Kn.create=svo.create;Kn.defaults=ovo.defaults;Kn.defaultsDeep=avo.defaultsDeep;Kn.findKey=cvo.findKey;Kn.findLastKey=lvo.findLastKey;Kn.forIn=uvo.forIn;Kn.forInRight=gvo.forInRight;Kn.forOwn=Avo.forOwn;Kn.forOwnRight=dvo.forOwnRight;Kn.fromPairs=pvo.fromPairs;Kn.functions=fvo.functions;Kn.functionsIn=Ivo.functionsIn;Kn.get=hvo.get;Kn.has=mvo.has;Kn.hasIn=Cvo.hasIn;Kn.invert=_vo.invert;Kn.invertBy=yvo.invertBy;Kn.keys=bvo.keys;Kn.keysIn=Evo.keysIn;Kn.mapKeys=Svo.mapKeys;Kn.mapValues=vvo.mapValues;Kn.merge=Bvo.merge;Kn.mergeWith=wvo.mergeWith;Kn.omit=Tvo.omit;Kn.omitBy=Rvo.omitBy;Kn.pick=Nvo.pick;Kn.pickBy=Dvo.pickBy;Kn.property=kvo.property;Kn.propertyOf=xvo.propertyOf;Kn.result=Gvo.result;Kn.set=Fvo.set;Kn.setWith=Zvo.setWith;Kn.toDefaulted=Lvo.toDefaulted;Kn.toPairs=Vvo.toPairs;Kn.toPairsIn=Pvo.toPairsIn;Kn.transform=Wvo.transform;Kn.unset=Ovo.unset;Kn.update=Mvo.update;Kn.updateWith=Hvo.updateWith;Kn.values=Yvo.values;Kn.valuesIn=Qvo.valuesIn;Kn.isFunction=Xvo.isFunction;Kn.isLength=Jvo.isLength;Kn.isMatchWith=Uvo.isMatchWith;Kn.isNative=Kvo.isNative;Kn.isNull=jvo.isNull;Kn.isUndefined=zvo.isUndefined;Kn.conforms=qvo.conforms;Kn.conformsTo=$vo.conformsTo;Kn.isArguments=eBo.isArguments;Kn.isArray=tBo.isArray;Kn.isArrayBuffer=rBo.isArrayBuffer;Kn.isArrayLike=nBo.isArrayLike;Kn.isArrayLikeObject=iBo.isArrayLikeObject;Kn.isBoolean=sBo.isBoolean;Kn.isBuffer=oBo.isBuffer;Kn.isDate=aBo.isDate;Kn.isElement=cBo.isElement;Kn.isEmpty=lBo.isEmpty;Kn.isEqualWith=uBo.isEqualWith;Kn.isError=gBo.isError;Kn.isFinite=ABo.isFinite;Kn.isInteger=dBo.isInteger;Kn.isMap=pBo.isMap;Kn.isMatch=fBo.isMatch;Kn.isNaN=IBo.isNaN;Kn.isNil=hBo.isNil;Kn.isNumber=mBo.isNumber;Kn.isObject=CBo.isObject;Kn.isObjectLike=_Bo.isObjectLike;Kn.isPlainObject=yBo.isPlainObject;Kn.isRegExp=bBo.isRegExp;Kn.isSafeInteger=EBo.isSafeInteger;Kn.isSet=SBo.isSet;Kn.isString=vBo.isString;Kn.isSymbol=BBo.isSymbol;Kn.isTypedArray=wBo.isTypedArray;Kn.isWeakMap=TBo.isWeakMap;Kn.isWeakSet=RBo.isWeakSet;Kn.matches=NBo.matches;Kn.matchesProperty=DBo.matchesProperty;Kn.capitalize=kBo.capitalize;Kn.bindAll=xBo.bindAll;Kn.camelCase=GBo.camelCase;Kn.deburr=FBo.deburr;Kn.endsWith=ZBo.endsWith;Kn.escape=LBo.escape;Kn.escapeRegExp=VBo.escapeRegExp;Kn.kebabCase=PBo.kebabCase;Kn.lowerCase=WBo.lowerCase;Kn.lowerFirst=OBo.lowerFirst;Kn.pad=MBo.pad;Kn.padEnd=HBo.padEnd;Kn.padStart=YBo.padStart;Kn.repeat=QBo.repeat;Kn.replace=XBo.replace;Kn.snakeCase=JBo.snakeCase;Kn.split=UBo.split;Kn.startCase=KBo.startCase;Kn.startsWith=jBo.startsWith;Kn.template=eDn.template;Kn.templateSettings=eDn.templateSettings;Kn.toLower=zBo.toLower;Kn.toUpper=qBo.toUpper;Kn.trim=$Bo.trim;Kn.trimEnd=ewo.trimEnd;Kn.trimStart=two.trimStart;Kn.truncate=rwo.truncate;Kn.unescape=nwo.unescape;Kn.upperCase=iwo.upperCase;Kn.upperFirst=swo.upperFirst;Kn.words=owo.words;Kn.cond=awo.cond;Kn.constant=cwo.constant;Kn.defaultTo=lwo.defaultTo;Kn.eq=uwo.isEqualsSameValueZero;Kn.gt=gwo.gt;Kn.gte=Awo.gte;Kn.invoke=dwo.invoke;Kn.iteratee=pwo.iteratee;Kn.lt=fwo.lt;Kn.lte=Iwo.lte;Kn.method=hwo.method;Kn.methodOf=mwo.methodOf;Kn.now=Cwo.now;Kn.over=_wo.over;Kn.overEvery=ywo.overEvery;Kn.overSome=bwo.overSome;Kn.stubArray=Ewo.stubArray;Kn.stubFalse=Swo.stubFalse;Kn.stubObject=vwo.stubObject;Kn.stubString=Bwo.stubString;Kn.stubTrue=wwo.stubTrue;Kn.times=Two.times;Kn.toArray=Rwo.toArray;Kn.toFinite=Nwo.toFinite;Kn.toInteger=Dwo.toInteger;Kn.toLength=kwo.toLength;Kn.toNumber=xwo.toNumber;Kn.toPath=Gwo.toPath;Kn.toPlainObject=Fwo.toPlainObject;Kn.toSafeInteger=Zwo.toSafeInteger;Kn.toString=Lwo.toString;Kn.uniqueId=Vwo.uniqueId});var rDn=H(Ocr=>{"use strict";Object.defineProperty(Ocr,Symbol.toStringTag,{value:"Module"});var Pwo=tDn(),jSe=e=>e;Object.assign(jSe,Pwo);jSe.partial.placeholder=jSe;jSe.partialRight.placeholder=jSe;Ocr.toolkit=jSe});var kW=H(Jn=>{"use strict";Object.defineProperties(Jn,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var Wwo=w7t(),Owo=x7t(),Mwo=Z7t(),Hwo=P7t(),Ywo=mzt(),Qwo=Ezt(),Xwo=wlt(),Jwo=Tlt(),Uwo=Lzt(),Kwo=Wzt(),jwo=Hzt(),zwo=Xzt(),nDn=Dlt(),iDn=jzt(),qwo=$zt(),$wo=nqt(),eTo=klt(),tTo=oqt(),rTo=lqt(),nTo=gqt(),iTo=dqt(),sDn=Iqt(),sTo=bqt(),oTo=vqt(),aTo=k3e(),cTo=Wfe(),lTo=wqt(),uTo=QSe(),gTo=Nqt(),ATo=kqt(),dTo=Gqt(),pTo=Lqt(),fTo=Oqt(),ITo=Glt(),hTo=Flt(),mTo=zqt(),CTo=$qt(),_To=r$t(),yTo=zq(),bTo=i$t(),ETo=D3e(),STo=o$t(),vTo=Llt(),BTo=g$t(),wTo=f$t(),TTo=h$t(),RTo=C$t(),NTo=y$t(),DTo=w$t(),kTo=Zlt(),xTo=R$t(),GTo=k$t(),FTo=F$t(),ZTo=L$t(),LTo=W$t(),VTo=z$t(),PTo=ner(),WTo=ser(),OTo=aer(),MTo=ler(),HTo=ger(),YTo=Hlt(),QTo=V3e(),XTo=ber(),JTo=Qlt(),UTo=Ylt(),KTo=Ber(),jTo=Rer(),zTo=ker(),qTo=Fer(),$To=Ver(),eRo=Wer(),tRo=Mer(),rRo=Jlt(),nRo=Ult(),iRo=x3e(),sRo=zer(),oRo=$er(),aRo=Klt(),cRo=itr(),lRo=atr(),uRo=ltr(),gRo=dtr(),ARo=Itr(),dRo=_tr(),pRo=Etr(),fRo=wtr(),IRo=Rtr(),hRo=Dtr(),mRo=zlt(),CRo=qlt(),_Ro=Ftr(),yRo=Vtr(),bRo=Otr(),ERo=Ytr(),SRo=Jtr(),vRo=$lt(),BRo=ztr(),wRo=$tr(),TRo=rrr(),RRo=orr(),NRo=lrr(),DRo=Arr(),kRo=Z3e(),xRo=prr(),GRo=hrr(),FRo=Crr(),ZRo=brr(),LRo=vrr(),VRo=wrr(),PRo=Nrr(),WRo=krr(),ORo=Grr(),MRo=Zrr(),HRo=Vrr(),YRo=Wrr(),QRo=Hrr(),XRo=Mfe(),JRo=Qrr(),URo=Jrr(),KRo=jrr(),jRo=qrr(),zRo=tnr(),qRo=snr(),$Ro=lnr(),eNo=gnr(),tNo=pnr(),rNo=Inr(),nNo=mnr(),iNo=_nr(),sNo=Enr(),oNo=Bnr(),aNo=Tnr(),cNo=Nnr(),lNo=iut(),uNo=nut(),gNo=Lnr(),ANo=HK(),dNo=Pnr(),pNo=Qnr(),oDn=Unr(),aDn=jnr(),fNo=qnr(),INo=Vlt(),hNo=aut(),mNo=OSe(),CNo=B3e(),_No=rir(),yNo=iir(),bNo=Q3e(),ENo=cir(),SNo=gir(),vNo=dir(),BNo=fir(),wNo=hir(),TNo=Cir(),RNo=yir(),NNo=Eir(),DNo=vir(),kNo=wir(),xNo=eM(),GNo=w3e(),FNo=Rir(),ZNo=kir(),LNo=Gir(),VNo=YK(),PNo=iX(),WNo=Lir(),ONo=Wir(),MNo=Xir(),HNo=uut(),YNo=Kir(),QNo=zir(),XNo=$ir(),JNo=tsr(),UNo=nX(),KNo=nsr(),jNo=ssr(),zNo=W3e(),qNo=asr(),$No=lsr(),eDo=fsr(),tDo=hsr(),rDo=_sr(),nDo=F3e(),iDo=bsr(),sDo=JSe(),oDo=Wlt(),aDo=Ssr(),cDo=Bsr(),lDo=Tsr(),uDo=Slt(),gDo=Nsr(),ADo=ksr(),dDo=Gsr(),pDo=Lsr(),fDo=dut(),IDo=Pfe(),hDo=$q(),mDo=Wsr(),CDo=Sf(),_Do=b2(),yDo=Msr(),bDo=Aut(),EDo=Qsr(),SDo=Jsr(),vDo=Ksr(),BDo=$sr(),wDo=tor(),TDo=nor(),RDo=sor(),NDo=Plt(),DDo=y3e(),kDo=Mlt(),xDo=XSe(),GDo=P3e(),FDo=tM(),ZDo=soe(),LDo=Hfe(),VDo=cor(),PDo=uor(),WDo=dor(),ODo=YSe(),MDo=ooe(),HDo=e$(),YDo=hor(),QDo=_or(),XDo=OK(),JDo=MK(),UDo=Sor(),KDo=Bor(),jDo=kor(),zDo=t$(),qDo=Gor(),$Do=fut(),eko=Por(),tko=Mor(),rko=Qor(),nko=Uor(),iko=zor(),sko=$or(),oko=tar(),ako=sar(),cko=aar(),lko=uar(),uko=Aar(),gko=par(),Ako=Iar(),cDn=har(),dko=Car(),pko=yar(),fko=Nar(),Iko=kar(),hko=Gar(),mko=Zar(),Cko=War(),_ko=Har(),yko=Xar(),bko=Uar(),Eko=jar(),Sko=qar(),vko=ecr(),Bko=Sk(),wko=rcr(),Tko=icr(),Rko=K3e(),Nko=im(),Dko=acr(),kko=lcr(),xko=gcr(),Gko=dcr(),Fko=fcr(),Zko=hcr(),Lko=Ccr(),Vko=ycr(),Pko=Ecr(),Wko=vcr(),Oko=wcr(),Mko=Rcr(),Hko=Dcr(),Yko=Y3e(),Qko=L3e(),Xko=HSe(),Jko=$w(),Uko=Gcr(),Kko=Q9(),jko=$5(),zko=Zcr(),qko=Vcr(),$ko=qy(),exo=Wcr(),txo=rDn();Jn.castArray=Wwo.castArray;Jn.chunk=Owo.chunk;Jn.compact=Mwo.compact;Jn.concat=Hwo.concat;Jn.countBy=Ywo.countBy;Jn.difference=Qwo.difference;Jn.differenceBy=Xwo.differenceBy;Jn.differenceWith=Jwo.differenceWith;Jn.drop=Uwo.drop;Jn.dropRight=Kwo.dropRight;Jn.dropRightWhile=jwo.dropRightWhile;Jn.dropWhile=zwo.dropWhile;Jn.each=nDn.forEach;Jn.forEach=nDn.forEach;Jn.eachRight=iDn.forEachRight;Jn.forEachRight=iDn.forEachRight;Jn.every=qwo.every;Jn.fill=$wo.fill;Jn.filter=eTo.filter;Jn.find=tTo.find;Jn.findIndex=rTo.findIndex;Jn.findLast=nTo.findLast;Jn.findLastIndex=iTo.findLastIndex;Jn.first=sDn.head;Jn.head=sDn.head;Jn.flatMap=sTo.flatMap;Jn.flatMapDeep=oTo.flatMapDeep;Jn.flatMapDepth=aTo.flatMapDepth;Jn.flatten=cTo.flatten;Jn.flattenDeep=lTo.flattenDeep;Jn.flattenDepth=uTo.flattenDepth;Jn.groupBy=gTo.groupBy;Jn.includes=ATo.includes;Jn.indexOf=dTo.indexOf;Jn.initial=pTo.initial;Jn.intersection=fTo.intersection;Jn.intersectionBy=ITo.intersectionBy;Jn.intersectionWith=hTo.intersectionWith;Jn.invokeMap=mTo.invokeMap;Jn.join=CTo.join;Jn.keyBy=_To.keyBy;Jn.last=yTo.last;Jn.lastIndexOf=bTo.lastIndexOf;Jn.map=ETo.map;Jn.nth=STo.nth;Jn.orderBy=vTo.orderBy;Jn.partition=BTo.partition;Jn.pull=wTo.pull;Jn.pullAll=TTo.pullAll;Jn.pullAllBy=RTo.pullAllBy;Jn.pullAllWith=NTo.pullAllWith;Jn.pullAt=DTo.pullAt;Jn.reduce=kTo.reduce;Jn.reduceRight=xTo.reduceRight;Jn.reject=GTo.reject;Jn.remove=FTo.remove;Jn.reverse=ZTo.reverse;Jn.sample=LTo.sample;Jn.sampleSize=VTo.sampleSize;Jn.shuffle=PTo.shuffle;Jn.size=WTo.size;Jn.slice=OTo.slice;Jn.some=MTo.some;Jn.sortBy=HTo.sortBy;Jn.sortedIndex=YTo.sortedIndex;Jn.sortedIndexBy=QTo.sortedIndexBy;Jn.sortedIndexOf=XTo.sortedIndexOf;Jn.sortedLastIndex=JTo.sortedLastIndex;Jn.sortedLastIndexBy=UTo.sortedLastIndexBy;Jn.sortedLastIndexOf=KTo.sortedLastIndexOf;Jn.tail=jTo.tail;Jn.take=zTo.take;Jn.takeRight=qTo.takeRight;Jn.takeRightWhile=$To.takeRightWhile;Jn.takeWhile=eRo.takeWhile;Jn.union=tRo.union;Jn.unionBy=rRo.unionBy;Jn.unionWith=nRo.unionWith;Jn.uniq=iRo.uniq;Jn.uniqBy=sRo.uniqBy;Jn.uniqWith=oRo.uniqWith;Jn.unzip=aRo.unzip;Jn.unzipWith=cRo.unzipWith;Jn.without=lRo.without;Jn.xor=uRo.xor;Jn.xorBy=gRo.xorBy;Jn.xorWith=ARo.xorWith;Jn.zip=dRo.zip;Jn.zipObject=pRo.zipObject;Jn.zipObjectDeep=fRo.zipObjectDeep;Jn.zipWith=IRo.zipWith;Jn.after=hRo.after;Jn.ary=mRo.ary;Jn.attempt=CRo.attempt;Jn.before=_Ro.before;Jn.bind=yRo.bind;Jn.bindKey=bRo.bindKey;Jn.curry=ERo.curry;Jn.curryRight=SRo.curryRight;Jn.debounce=vRo.debounce;Jn.defer=BRo.defer;Jn.delay=wRo.delay;Jn.flip=TRo.flip;Jn.flow=RRo.flow;Jn.flowRight=NRo.flowRight;Jn.memoize=DRo.memoize;Jn.negate=kRo.negate;Jn.nthArg=xRo.nthArg;Jn.once=GRo.once;Jn.overArgs=FRo.overArgs;Jn.partial=ZRo.partial;Jn.partialRight=LRo.partialRight;Jn.rearg=VRo.rearg;Jn.rest=PRo.rest;Jn.spread=WRo.spread;Jn.throttle=ORo.throttle;Jn.unary=MRo.unary;Jn.wrap=HRo.wrap;Jn.add=YRo.add;Jn.ceil=QRo.ceil;Jn.clamp=XRo.clamp;Jn.divide=JRo.divide;Jn.floor=URo.floor;Jn.inRange=KRo.inRange;Jn.max=jRo.max;Jn.maxBy=zRo.maxBy;Jn.mean=qRo.mean;Jn.meanBy=$Ro.meanBy;Jn.min=eNo.min;Jn.minBy=tNo.minBy;Jn.multiply=rNo.multiply;Jn.parseInt=nNo.parseInt;Jn.random=iNo.random;Jn.range=sNo.range;Jn.rangeRight=oNo.rangeRight;Jn.round=aNo.round;Jn.subtract=cNo.subtract;Jn.sum=lNo.sum;Jn.sumBy=uNo.sumBy;Jn.isEqual=gNo.isEqual;Jn.identity=ANo.identity;Jn.noop=dNo.noop;Jn.assign=pNo.assign;Jn.assignIn=oDn.assignIn;Jn.extend=oDn.assignIn;Jn.assignInWith=aDn.assignInWith;Jn.extendWith=aDn.assignInWith;Jn.assignWith=fNo.assignWith;Jn.at=INo.at;Jn.clone=hNo.clone;Jn.cloneDeep=mNo.cloneDeep;Jn.cloneDeepWith=CNo.cloneDeepWith;Jn.cloneWith=_No.cloneWith;Jn.create=yNo.create;Jn.defaults=bNo.defaults;Jn.defaultsDeep=ENo.defaultsDeep;Jn.findKey=SNo.findKey;Jn.findLastKey=vNo.findLastKey;Jn.forIn=BNo.forIn;Jn.forInRight=wNo.forInRight;Jn.forOwn=TNo.forOwn;Jn.forOwnRight=RNo.forOwnRight;Jn.fromPairs=NNo.fromPairs;Jn.functions=DNo.functions;Jn.functionsIn=kNo.functionsIn;Jn.get=xNo.get;Jn.has=GNo.has;Jn.hasIn=FNo.hasIn;Jn.invert=ZNo.invert;Jn.invertBy=LNo.invertBy;Jn.keys=VNo.keys;Jn.keysIn=PNo.keysIn;Jn.mapKeys=WNo.mapKeys;Jn.mapValues=ONo.mapValues;Jn.merge=MNo.merge;Jn.mergeWith=HNo.mergeWith;Jn.omit=YNo.omit;Jn.omitBy=QNo.omitBy;Jn.pick=XNo.pick;Jn.pickBy=JNo.pickBy;Jn.property=UNo.property;Jn.propertyOf=KNo.propertyOf;Jn.result=jNo.result;Jn.set=zNo.set;Jn.setWith=qNo.setWith;Jn.toDefaulted=$No.toDefaulted;Jn.toPairs=eDo.toPairs;Jn.toPairsIn=tDo.toPairsIn;Jn.transform=rDo.transform;Jn.unset=nDo.unset;Jn.update=iDo.update;Jn.updateWith=sDo.updateWith;Jn.values=oDo.values;Jn.valuesIn=aDo.valuesIn;Jn.isFunction=cDo.isFunction;Jn.isLength=lDo.isLength;Jn.isMatchWith=uDo.isMatchWith;Jn.isNative=gDo.isNative;Jn.isNull=ADo.isNull;Jn.isUndefined=dDo.isUndefined;Jn.conforms=pDo.conforms;Jn.conformsTo=fDo.conformsTo;Jn.isArguments=IDo.isArguments;Jn.isArray=hDo.isArray;Jn.isArrayBuffer=mDo.isArrayBuffer;Jn.isArrayLike=CDo.isArrayLike;Jn.isArrayLikeObject=_Do.isArrayLikeObject;Jn.isBoolean=yDo.isBoolean;Jn.isBuffer=bDo.isBuffer;Jn.isDate=EDo.isDate;Jn.isElement=SDo.isElement;Jn.isEmpty=vDo.isEmpty;Jn.isEqualWith=BDo.isEqualWith;Jn.isError=wDo.isError;Jn.isFinite=TDo.isFinite;Jn.isInteger=RDo.isInteger;Jn.isMap=NDo.isMap;Jn.isMatch=DDo.isMatch;Jn.isNaN=kDo.isNaN;Jn.isNil=xDo.isNil;Jn.isNumber=GDo.isNumber;Jn.isObject=FDo.isObject;Jn.isObjectLike=ZDo.isObjectLike;Jn.isPlainObject=LDo.isPlainObject;Jn.isRegExp=VDo.isRegExp;Jn.isSafeInteger=PDo.isSafeInteger;Jn.isSet=WDo.isSet;Jn.isString=ODo.isString;Jn.isSymbol=MDo.isSymbol;Jn.isTypedArray=HDo.isTypedArray;Jn.isWeakMap=YDo.isWeakMap;Jn.isWeakSet=QDo.isWeakSet;Jn.matches=XDo.matches;Jn.matchesProperty=JDo.matchesProperty;Jn.capitalize=UDo.capitalize;Jn.bindAll=KDo.bindAll;Jn.camelCase=jDo.camelCase;Jn.deburr=zDo.deburr;Jn.endsWith=qDo.endsWith;Jn.escape=$Do.escape;Jn.escapeRegExp=eko.escapeRegExp;Jn.kebabCase=tko.kebabCase;Jn.lowerCase=rko.lowerCase;Jn.lowerFirst=nko.lowerFirst;Jn.pad=iko.pad;Jn.padEnd=sko.padEnd;Jn.padStart=oko.padStart;Jn.repeat=ako.repeat;Jn.replace=cko.replace;Jn.snakeCase=lko.snakeCase;Jn.split=uko.split;Jn.startCase=gko.startCase;Jn.startsWith=Ako.startsWith;Jn.template=cDn.template;Jn.templateSettings=cDn.templateSettings;Jn.toLower=dko.toLower;Jn.toUpper=pko.toUpper;Jn.trim=fko.trim;Jn.trimEnd=Iko.trimEnd;Jn.trimStart=hko.trimStart;Jn.truncate=mko.truncate;Jn.unescape=Cko.unescape;Jn.upperCase=_ko.upperCase;Jn.upperFirst=yko.upperFirst;Jn.words=bko.words;Jn.cond=Eko.cond;Jn.constant=Sko.constant;Jn.defaultTo=vko.defaultTo;Jn.eq=Bko.isEqualsSameValueZero;Jn.gt=wko.gt;Jn.gte=Tko.gte;Jn.invoke=Rko.invoke;Jn.iteratee=Nko.iteratee;Jn.lt=Dko.lt;Jn.lte=kko.lte;Jn.method=xko.method;Jn.methodOf=Gko.methodOf;Jn.now=Fko.now;Jn.over=Zko.over;Jn.overEvery=Lko.overEvery;Jn.overSome=Vko.overSome;Jn.stubArray=Pko.stubArray;Jn.stubFalse=Wko.stubFalse;Jn.stubObject=Oko.stubObject;Jn.stubString=Mko.stubString;Jn.stubTrue=Hko.stubTrue;Jn.times=Yko.times;Jn.toArray=Qko.toArray;Jn.toFinite=Xko.toFinite;Jn.toInteger=Jko.toInteger;Jn.toLength=Uko.toLength;Jn.toNumber=Kko.toNumber;Jn.toPath=jko.toPath;Jn.toPlainObject=zko.toPlainObject;Jn.toSafeInteger=qko.toSafeInteger;Jn.toString=$ko.toString;Jn.uniqueId=exo.uniqueId;Jn.default=txo.toolkit});var xW=H((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;exports.parseDuration=parseDuration;var tslib_1=(Pa(),vi(Va)),fslib_1=zs(),clipanion_1=($c(),vi(rg)),compat_1=kW(),micromatch_1=tslib_1.__importDefault(Ek()),p_limit_1=tslib_1.__importDefault(kfe()),semver_1=tslib_1.__importDefault(UC()),stream_1=wt("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:n=r}){return e===0?n:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(n=>JSON.stringify(n)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let n of e){let a=t(n);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let n=t(r);if(n!==mapAndFindSkip)return n}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let n of t){if(n.status==="rejected")throw n.reason;r.push(n.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let n=e.get(t);return typeof n>"u"&&e.set(t,n=r()),n}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let n=[];e.on("error",a=>{r(a)}),e.on("data",a=>{n.push(a)}),e.on("end",()=>{t(Buffer.concat(n))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),n(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let n=this.deferred.get(t);typeof n>"u"&&this.deferred.set(t,n=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&n.resolve()},o=>{this.promises.get(t)===a&&n.reject(o)}),n.promise}reduce(t,r){let n=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(n))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,n(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let n=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:n}),n}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r="",n=0,a=0,o=e.matchAll(/\\(?[\\$}])|\$\{(?[a-zA-Z]\w*)(?:-|-|(?=\}))|(?\$\{)|\}/g),l=()=>{let A=a;for(let{0:f,index:I,groups:{variable:C}={}}of o)if(C)a++;else if(f==="}"&&--a0)throw new clipanion_1.UsageError(`Incomplete variable substitution in input: ${e}`);return r+e.slice(n)}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=l=>({value:l}),n=r(e),a=t.map(l=>r(l)),{value:o}=(0,compat_1.mergeWith)(n,...a,(l,A)=>{if(Array.isArray(l)&&Array.isArray(A)){for(let f of A)l.find(I=>(0,compat_1.isEqual)(I,f))||l.push(f);return l}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let n of e){let a=n[t];r[a]??=[],r[a].push(n)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}var DURATION_UNITS={ms:1,s:1e3,m:60*1e3,h:60*60*1e3,d:24*60*60*1e3,w:7*24*60*60*1e3},DURATION_REGEXP=new RegExp(`^(?\\d*\\.?\\d+)(?${Object.keys(DURATION_UNITS).join("|")})?$`);function parseDuration(e,t){let r=DURATION_REGEXP.exec(e)?.groups;if(!r)throw new Error(`Couldn't parse "${e}" as a duration`);if(r.unit===void 0)return parseFloat(r.num);let n=DURATION_UNITS[r.unit];if(!n)throw new Error(`Invalid duration unit "${r.unit}"`);return parseFloat(r.num)*n/DURATION_UNITS[t]}});var Xfe=H(uoe=>{"use strict";Object.defineProperty(uoe,"__esModule",{value:!0});uoe.PackageExtensionStatus=uoe.PackageExtensionType=uoe.LinkType=void 0;var lDn;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(lDn||(uoe.LinkType=lDn={}));var uDn;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(uDn||(uoe.PackageExtensionType=uDn={}));var gDn;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(gDn||(uoe.PackageExtensionStatus=gDn={}))});var rM=H(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});Wu.LogLevel=Wu.supportsHyperlinks=Wu.supportsColor=Wu.Style=Wu.Type=Wu.stripAnsi=void 0;Wu.tuple=oxo;Wu.applyStyle=fDn;Wu.applyColor=eb;Wu.applyHyperlink=IDn;Wu.pretty=Jfe;Wu.prettyList=cxo;Wu.json=hDn;Wu.jsonOrPretty=lxo;Wu.mark=uxo;Wu.prettyField=gxo;Wu.prettyTruncatedLocatorList=Axo;Wu.addLogFilterSupport=dxo;var qSe=(Pa(),vi(Va)),ADn=zs(),but=qSe.__importDefault(VK()),_ut=qSe.__importDefault(Dfe()),rxo=($c(),vi(rg)),nxo=qSe.__importDefault(Ek()),pDn=qSe.__importDefault(q5());Wu.stripAnsi=pDn.default;var Cut=M9(),ixo=qSe.__importStar(xW()),DE=qSe.__importStar(uG()),zSe=Xfe();Wu.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",STRING:"STRING",BOOLEAN:"BOOLEAN",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var Eut;(function(e){e[e.BOLD=2]="BOLD"})(Eut||(Wu.Style=Eut={}));var Hcr=_ut.default.GITHUB_ACTIONS?{level:2}:but.default.supportsColor?{level:but.default.supportsColor.level}:{level:0};Wu.supportsColor=Hcr.level!==0;Wu.supportsHyperlinks=Wu.supportsColor&&!_ut.default.GITHUB_ACTIONS&&!_ut.default.CIRCLE&&!_ut.default.GITLAB;var Mcr=new but.default.Instance(Hcr),sxo=new Map([[Wu.Type.NO_HINT,null],[Wu.Type.NULL,["#a853b5",129]],[Wu.Type.SCOPE,["#d75f00",166]],[Wu.Type.NAME,["#d7875f",173]],[Wu.Type.RANGE,["#00afaf",37]],[Wu.Type.REFERENCE,["#87afff",111]],[Wu.Type.NUMBER,["#ffd700",220]],[Wu.Type.STRING,["#b4bd68",32]],[Wu.Type.BOOLEAN,["#faa023",209]],[Wu.Type.PATH,["#d75fd7",170]],[Wu.Type.URL,["#d75fd7",170]],[Wu.Type.ADDED,["#5faf00",70]],[Wu.Type.REMOVED,["#ff3131",160]],[Wu.Type.CODE,["#87afff",111]],[Wu.Type.SIZE,["#ffd700",220]]]),lG=e=>e;function dDn(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let n=1024**r;return`${Math.floor(e*100/n)/100} ${t[r-1]}`}function yut(e,t){if(Array.isArray(t))return t.length===0?eb(e,"[]",Wu.Type.CODE):eb(e,"[ ",Wu.Type.CODE)+t.map(r=>yut(e,r)).join(", ")+eb(e," ]",Wu.Type.CODE);if(typeof t=="string")return eb(e,JSON.stringify(t),Wu.Type.STRING);if(typeof t=="number")return eb(e,JSON.stringify(t),Wu.Type.NUMBER);if(typeof t=="boolean")return eb(e,JSON.stringify(t),Wu.Type.BOOLEAN);if(t===null)return eb(e,"null",Wu.Type.NULL);if(typeof t=="object"&&Object.getPrototypeOf(t)===Object.prototype){let r=Object.entries(t);return r.length===0?eb(e,"{}",Wu.Type.CODE):eb(e,"{ ",Wu.Type.CODE)+r.map(([n,a])=>`${yut(e,n)}: ${yut(e,a)}`).join(", ")+eb(e," }",Wu.Type.CODE)}if(typeof t>"u")return eb(e,"undefined",Wu.Type.NULL);throw new Error("Assertion failed: The value doesn't seem to be a valid JSON object")}var Sut={[Wu.Type.ID]:lG({pretty:(e,t)=>typeof t=="number"?eb(e,`${t}`,Wu.Type.NUMBER):eb(e,t,Wu.Type.CODE),json:e=>e}),[Wu.Type.INSPECT]:lG({pretty:(e,t)=>yut(e,t),json:e=>e}),[Wu.Type.NUMBER]:lG({pretty:(e,t)=>eb(e,`${t}`,Wu.Type.NUMBER),json:e=>e}),[Wu.Type.IDENT]:lG({pretty:(e,t)=>DE.prettyIdent(e,t),json:e=>DE.stringifyIdent(e)}),[Wu.Type.LOCATOR]:lG({pretty:(e,t)=>DE.prettyLocator(e,t),json:e=>DE.stringifyLocator(e)}),[Wu.Type.DESCRIPTOR]:lG({pretty:(e,t)=>DE.prettyDescriptor(e,t),json:e=>DE.stringifyDescriptor(e)}),[Wu.Type.RESOLUTION]:lG({pretty:(e,{descriptor:t,locator:r})=>DE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:DE.stringifyDescriptor(e),locator:t!==null?DE.stringifyLocator(t):null})}),[Wu.Type.DEPENDENT]:lG({pretty:(e,{locator:t,descriptor:r})=>DE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:DE.stringifyLocator(e),descriptor:DE.stringifyDescriptor(t)})}),[Wu.Type.PACKAGE_EXTENSION]:lG({pretty:(e,t)=>{switch(t.type){case zSe.PackageExtensionType.Dependency:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"dependencies",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,t.descriptor)}`;case zSe.PackageExtensionType.PeerDependency:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"peerDependencies",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,t.descriptor)}`;case zSe.PackageExtensionType.PeerDependencyMeta:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"peerDependenciesMeta",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,DE.parseIdent(t.selector))} \u27A4 ${eb(e,t.key,Wu.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case zSe.PackageExtensionType.Dependency:return`${DE.stringifyIdent(e.parentDescriptor)} > ${DE.stringifyIdent(e.descriptor)}`;case zSe.PackageExtensionType.PeerDependency:return`${DE.stringifyIdent(e.parentDescriptor)} >> ${DE.stringifyIdent(e.descriptor)}`;case zSe.PackageExtensionType.PeerDependencyMeta:return`${DE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Wu.Type.SETTING]:lG({pretty:(e,t)=>(e.get(t),IDn(e,eb(e,t,Wu.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Wu.Type.DURATION]:lG({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),n=Math.ceil((t-r*60*1e3)/1e3);return n===0?`${r}m`:`${r}m ${n}s`}else{let r=Math.floor(t/1e3),n=t-r*1e3;return n===0?`${r}s`:`${r}s ${n}ms`}},json:e=>e}),[Wu.Type.SIZE]:lG({pretty:(e,t)=>eb(e,dDn(t),Wu.Type.NUMBER),json:e=>e}),[Wu.Type.SIZE_DIFF]:lG({pretty:(e,t)=>{let r=t>=0?"+":"-",n=r==="+"?Wu.Type.REMOVED:Wu.Type.ADDED;return eb(e,`${r} ${dDn(Math.max(Math.abs(t),1))}`,n)},json:e=>e}),[Wu.Type.PATH]:lG({pretty:(e,t)=>eb(e,ADn.npath.fromPortablePath(t),Wu.Type.PATH),json:e=>ADn.npath.fromPortablePath(e)}),[Wu.Type.MARKDOWN]:lG({pretty:(e,{text:t,format:r,paragraphs:n})=>(0,rxo.formatMarkdownish)(t,{format:r,paragraphs:n}),json:({text:e})=>e}),[Wu.Type.MARKDOWN_INLINE]:lG({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,n,a)=>Jfe(e,n+a+n,Wu.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,n,a)=>fDn(e,a,Eut.BOLD)),t),json:e=>e})};function oxo(e,t){return[t,e]}function fDn(e,t,r){return e.get("enableColors")&&r&Eut.BOLD&&(t=but.default.bold(t)),t}function eb(e,t,r){if(!e.get("enableColors"))return t;let n=sxo.get(r);if(n===null)return t;let a=typeof n>"u"?r:Hcr.level>=3?n[0]:n[1],o=typeof a=="number"?Mcr.ansi256(a):a.startsWith("#")?Mcr.hex(a):Mcr[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var axo=!!process.env.KONSOLE_VERSION;function IDn(e,t,r){return e.get("enableHyperlinks")?axo?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function Jfe(e,t,r){if(t===null)return eb(e,"null",Wu.Type.NULL);if(Object.hasOwn(Sut,r))return Sut[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return eb(e,t,r)}function cxo(e,t,r,{separator:n=", "}={}){return[...t].map(a=>Jfe(e,a,r)).join(n)}function hDn(e,t){if(e===null)return null;if(Object.hasOwn(Sut,t))return ixo.overrideType(t),Sut[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function lxo(e,t,[r,n]){return e?hDn(r,n):Jfe(t,r,n)}function uxo(e){return{Check:eb(e,"\u2713","green"),Cross:eb(e,"\u2718","red"),Question:eb(e,"?","cyan")}}function gxo(e,{label:t,value:[r,n]}){return`${Jfe(e,t,Wu.Type.CODE)}: ${Jfe(e,r,n)}`}function Axo(e,t,r){let n=[],a=[...t],o=r;for(;a.length>0;){let I=a[0],C=`${DE.prettyLocator(e,I)}, `,b=DE.prettyLocatorNoColors(I).length+2;if(n.length>0&&oI).join("").slice(0,-2);let l="X".repeat(a.length.toString().length),A=`and ${l} more.`,f=a.length;for(;n.length>1&&oI).join(""),A.replace(l,Jfe(e,f,Wu.Type.NUMBER))].join("")}var goe;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(goe||(Wu.LogLevel=goe={}));function dxo(e,{configuration:t}){let r=t.get("logFilters"),n=new Map,a=new Map,o=[];for(let b of r){let E=b.get("level");if(typeof E>"u")continue;let N=b.get("code");typeof N<"u"&&n.set(N,E);let B=b.get("text");typeof B<"u"&&a.set(B,E);let F=b.get("pattern");typeof F<"u"&&o.push([nxo.default.matcher(F,{contains:!0}),E])}o.reverse();let l=(b,E,N)=>{if(b===null||b===Cut.MessageName.UNNAMED)return N;let B=a.size>0||o.length>0?(0,pDn.default)(E):E;if(a.size>0){let F=a.get(B);if(typeof F<"u")return F??N}if(o.length>0){for(let[F,Q]of o)if(F(B))return Q??N}if(n.size>0){let F=n.get((0,Cut.stringifyMessageName)(b));if(typeof F<"u")return F??N}return N},A=e.reportInfo,f=e.reportWarning,I=e.reportError,C=function(b,E,N,B){switch(l(E,N,B)){case goe.Info:A.call(b,E,N);break;case goe.Warning:f.call(b,E??Cut.MessageName.UNNAMED,N);break;case goe.Error:I.call(b,E??Cut.MessageName.UNNAMED,N);break}};e.reportInfo=function(...b){return C(this,...b,goe.Info)},e.reportWarning=function(...b){return C(this,...b,goe.Warning)},e.reportError=function(...b){return C(this,...b,goe.Error)}}});var mDn=H($Se=>{"use strict";Object.defineProperty($Se,"__esModule",{value:!0});$Se.splitWhen=$Se.flatten=void 0;function pxo(e){return e.reduce((t,r)=>[].concat(t,r),[])}$Se.flatten=pxo;function fxo(e,t){let r=[[]],n=0;for(let a of e)t(a)?(n++,r[n]=[]):r[n].push(a);return r}$Se.splitWhen=fxo});var CDn=H(vut=>{"use strict";Object.defineProperty(vut,"__esModule",{value:!0});vut.isEnoentCodeError=void 0;function Ixo(e){return e.code==="ENOENT"}vut.isEnoentCodeError=Ixo});var _Dn=H(But=>{"use strict";Object.defineProperty(But,"__esModule",{value:!0});But.createDirentFromStats=void 0;var Ycr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function hxo(e,t){return new Ycr(e,t)}But.createDirentFromStats=hxo});var SDn=H(eT=>{"use strict";Object.defineProperty(eT,"__esModule",{value:!0});eT.convertPosixPathToPattern=eT.convertWindowsPathToPattern=eT.convertPathToPattern=eT.escapePosixPath=eT.escapeWindowsPath=eT.escape=eT.removeLeadingDotSegment=eT.makeAbsolute=eT.unixify=void 0;var mxo=wt("os"),Cxo=wt("path"),yDn=mxo.platform()==="win32",_xo=2,yxo=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,bxo=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,Exo=/^\\\\([.?])/,Sxo=/\\(?![!()+@[\]{}])/g;function vxo(e){return e.replace(/\\/g,"/")}eT.unixify=vxo;function Bxo(e,t){return Cxo.resolve(e,t)}eT.makeAbsolute=Bxo;function wxo(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(_xo)}return e}eT.removeLeadingDotSegment=wxo;eT.escape=yDn?Qcr:Xcr;function Qcr(e){return e.replace(bxo,"\\$2")}eT.escapeWindowsPath=Qcr;function Xcr(e){return e.replace(yxo,"\\$2")}eT.escapePosixPath=Xcr;eT.convertPathToPattern=yDn?bDn:EDn;function bDn(e){return Qcr(e).replace(Exo,"//$1").replace(Sxo,"/")}eT.convertWindowsPathToPattern=bDn;function EDn(e){return Xcr(e)}eT.convertPosixPathToPattern=EDn});var BDn=H((G8l,vDn)=>{vDn.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var RDn=H((F8l,TDn)=>{var Txo=BDn(),wDn={"{":"}","(":")","[":"]"},Rxo=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,n=-2,a=-2,o=-2,l=-2;tt&&(l===-1||l>n||(l=e.indexOf("\\",t),l===-1||l>n)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(l=e.indexOf("\\",t),l===-1||l>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(l=e.indexOf("\\",t),l===-1||l>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(l=e.indexOf("\\",r),l===-1||l>o))))return!0;if(e[t]==="\\"){var A=e[t+1];t+=2;var f=wDn[A];if(f){var I=e.indexOf(f,t);I!==-1&&(t=I+1)}if(e[t]==="!")return!0}else t++}return!1},Nxo=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var Dxo=RDn(),kxo=wt("path").posix.dirname,xxo=wt("os").platform()==="win32",Jcr="/",Gxo=/\\/g,Fxo=/[\{\[].*[\}\]]$/,Zxo=/(^|[^\\])([\{\[]|\([^\)]+$)/,Lxo=/\\([\!\*\?\|\[\]\(\)\{\}])/g;NDn.exports=function(t,r){var n=Object.assign({flipBackslashes:!0},r);n.flipBackslashes&&xxo&&t.indexOf(Jcr)<0&&(t=t.replace(Gxo,Jcr)),Fxo.test(t)&&(t+=Jcr),t+="a";do t=kxo(t);while(Dxo(t)||Zxo.test(t));return t.replace(Lxo,"$1")}});var PDn=H(oI=>{"use strict";Object.defineProperty(oI,"__esModule",{value:!0});oI.removeDuplicateSlashes=oI.matchAny=oI.convertPatternsToRe=oI.makeRe=oI.getPatternParts=oI.expandBraceExpansion=oI.expandPatternsWithBraceExpansion=oI.isAffectDepthOfReadingPattern=oI.endsWithSlashGlobStar=oI.hasGlobStar=oI.getBaseDirectory=oI.isPatternRelatedToParentDirectory=oI.getPatternsOutsideCurrentDirectory=oI.getPatternsInsideCurrentDirectory=oI.getPositivePatterns=oI.getNegativePatterns=oI.isPositivePattern=oI.isNegativePattern=oI.convertToNegativePattern=oI.convertToPositivePattern=oI.isDynamicPattern=oI.isStaticPattern=void 0;var Vxo=wt("path"),Pxo=DDn(),Ucr=Ek(),kDn="**",Wxo="\\",Oxo=/[*?]|^!/,Mxo=/\[[^[]*]/,Hxo=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,Yxo=/[!*+?@]\([^(]*\)/,Qxo=/,|\.\./,Xxo=/(?!^)\/{2,}/g;function xDn(e,t={}){return!GDn(e,t)}oI.isStaticPattern=xDn;function GDn(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(Wxo)||Oxo.test(e)||Mxo.test(e)||Hxo.test(e)||t.extglob!==!1&&Yxo.test(e)||t.braceExpansion!==!1&&Jxo(e))}oI.isDynamicPattern=GDn;function Jxo(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let n=e.slice(t,r);return Qxo.test(n)}function Uxo(e){return wut(e)?e.slice(1):e}oI.convertToPositivePattern=Uxo;function Kxo(e){return"!"+e}oI.convertToNegativePattern=Kxo;function wut(e){return e.startsWith("!")&&e[1]!=="("}oI.isNegativePattern=wut;function FDn(e){return!wut(e)}oI.isPositivePattern=FDn;function jxo(e){return e.filter(wut)}oI.getNegativePatterns=jxo;function zxo(e){return e.filter(FDn)}oI.getPositivePatterns=zxo;function qxo(e){return e.filter(t=>!Kcr(t))}oI.getPatternsInsideCurrentDirectory=qxo;function $xo(e){return e.filter(Kcr)}oI.getPatternsOutsideCurrentDirectory=$xo;function Kcr(e){return e.startsWith("..")||e.startsWith("./..")}oI.isPatternRelatedToParentDirectory=Kcr;function eGo(e){return Pxo(e,{flipBackslashes:!1})}oI.getBaseDirectory=eGo;function tGo(e){return e.includes(kDn)}oI.hasGlobStar=tGo;function ZDn(e){return e.endsWith("/"+kDn)}oI.endsWithSlashGlobStar=ZDn;function rGo(e){let t=Vxo.basename(e);return ZDn(e)||xDn(t)}oI.isAffectDepthOfReadingPattern=rGo;function nGo(e){return e.reduce((t,r)=>t.concat(LDn(r)),[])}oI.expandPatternsWithBraceExpansion=nGo;function LDn(e){let t=Ucr.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,n)=>r.length-n.length),t.filter(r=>r!=="")}oI.expandBraceExpansion=LDn;function iGo(e,t){let{parts:r}=Ucr.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}oI.getPatternParts=iGo;function VDn(e,t){return Ucr.makeRe(e,t)}oI.makeRe=VDn;function sGo(e,t){return e.map(r=>VDn(r,t))}oI.convertPatternsToRe=sGo;function oGo(e,t){return t.some(r=>r.test(e))}oI.matchAny=oGo;function aGo(e){return e.replace(Xxo,"/")}oI.removeDuplicateSlashes=aGo});var jcr=H((V8l,MDn)=>{"use strict";var cGo=wt("stream"),WDn=cGo.PassThrough,lGo=Array.prototype.slice;MDn.exports=uGo;function uGo(){let e=[],t=lGo.call(arguments),r=!1,n=t[t.length-1];n&&!Array.isArray(n)&&n.pipe==null?t.pop():n={};let a=n.end!==!1,o=n.pipeError===!0;n.objectMode==null&&(n.objectMode=!0),n.highWaterMark==null&&(n.highWaterMark=64*1024);let l=WDn(n);function A(){for(let C=0,b=arguments.length;C0||(r=!1,f())}function N(B){function F(){B.removeListener("merge2UnpipeEnd",F),B.removeListener("end",F),o&&B.removeListener("error",Q),E()}function Q(X){l.emit("error",X)}if(B._readableState.endEmitted)return E();B.on("merge2UnpipeEnd",F),B.on("end",F),o&&B.on("error",Q),B.pipe(l,{end:!1}),B.resume()}for(let B=0;B{"use strict";Object.defineProperty(Tut,"__esModule",{value:!0});Tut.merge=void 0;var gGo=jcr();function AGo(e){let t=gGo(e);return e.forEach(r=>{r.once("error",n=>t.emit("error",n))}),t.once("close",()=>HDn(e)),t.once("end",()=>HDn(e)),t}Tut.merge=AGo;function HDn(e){e.forEach(t=>t.emit("close"))}});var QDn=H(eve=>{"use strict";Object.defineProperty(eve,"__esModule",{value:!0});eve.isEmpty=eve.isString=void 0;function dGo(e){return typeof e=="string"}eve.isString=dGo;function pGo(e){return e===""}eve.isEmpty=pGo});var r$=H(gG=>{"use strict";Object.defineProperty(gG,"__esModule",{value:!0});gG.string=gG.stream=gG.pattern=gG.path=gG.fs=gG.errno=gG.array=void 0;var fGo=mDn();gG.array=fGo;var IGo=CDn();gG.errno=IGo;var hGo=_Dn();gG.fs=hGo;var mGo=SDn();gG.path=mGo;var CGo=PDn();gG.pattern=CGo;var _Go=YDn();gG.stream=_Go;var yGo=QDn();gG.string=yGo});var KDn=H(AG=>{"use strict";Object.defineProperty(AG,"__esModule",{value:!0});AG.convertPatternGroupToTask=AG.convertPatternGroupsToTasks=AG.groupPatternsByBaseDirectory=AG.getNegativePatternsAsPositive=AG.getPositivePatterns=AG.convertPatternsToTasks=AG.generate=void 0;var sX=r$();function bGo(e,t){let r=XDn(e,t),n=XDn(t.ignore,t),a=JDn(r),o=UDn(r,n),l=a.filter(C=>sX.pattern.isStaticPattern(C,t)),A=a.filter(C=>sX.pattern.isDynamicPattern(C,t)),f=zcr(l,o,!1),I=zcr(A,o,!0);return f.concat(I)}AG.generate=bGo;function XDn(e,t){let r=e;return t.braceExpansion&&(r=sX.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(n=>n.includes("/")?n:`**/${n}`)),r.map(n=>sX.pattern.removeDuplicateSlashes(n))}function zcr(e,t,r){let n=[],a=sX.pattern.getPatternsOutsideCurrentDirectory(e),o=sX.pattern.getPatternsInsideCurrentDirectory(e),l=qcr(a),A=qcr(o);return n.push(...$cr(l,t,r)),"."in A?n.push(elr(".",o,t,r)):n.push(...$cr(A,t,r)),n}AG.convertPatternsToTasks=zcr;function JDn(e){return sX.pattern.getPositivePatterns(e)}AG.getPositivePatterns=JDn;function UDn(e,t){return sX.pattern.getNegativePatterns(e).concat(t).map(sX.pattern.convertToPositivePattern)}AG.getNegativePatternsAsPositive=UDn;function qcr(e){let t={};return e.reduce((r,n)=>{let a=sX.pattern.getBaseDirectory(n);return a in r?r[a].push(n):r[a]=[n],r},t)}AG.groupPatternsByBaseDirectory=qcr;function $cr(e,t,r){return Object.keys(e).map(n=>elr(n,e[n],t,r))}AG.convertPatternGroupsToTasks=$cr;function elr(e,t,r,n){return{dynamic:n,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(sX.pattern.convertToNegativePattern))}}AG.convertPatternGroupToTask=elr});var zDn=H(Rut=>{"use strict";Object.defineProperty(Rut,"__esModule",{value:!0});Rut.read=void 0;function EGo(e,t,r){t.fs.lstat(e,(n,a)=>{if(n!==null){jDn(r,n);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){tlr(r,a);return}t.fs.stat(e,(o,l)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){jDn(r,o);return}tlr(r,a);return}t.markSymbolicLink&&(l.isSymbolicLink=()=>!0),tlr(r,l)})})}Rut.read=EGo;function jDn(e,t){e(t)}function tlr(e,t){e(null,t)}});var qDn=H(Nut=>{"use strict";Object.defineProperty(Nut,"__esModule",{value:!0});Nut.read=void 0;function SGo(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let n=t.fs.statSync(e);return t.markSymbolicLink&&(n.isSymbolicLink=()=>!0),n}catch(n){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw n}}Nut.read=SGo});var $Dn=H(Aoe=>{"use strict";Object.defineProperty(Aoe,"__esModule",{value:!0});Aoe.createFileSystemAdapter=Aoe.FILE_SYSTEM_ADAPTER=void 0;var Dut=wt("fs");Aoe.FILE_SYSTEM_ADAPTER={lstat:Dut.lstat,stat:Dut.stat,lstatSync:Dut.lstatSync,statSync:Dut.statSync};function vGo(e){return e===void 0?Aoe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Aoe.FILE_SYSTEM_ADAPTER),e)}Aoe.createFileSystemAdapter=vGo});var ekn=H(nlr=>{"use strict";Object.defineProperty(nlr,"__esModule",{value:!0});var BGo=$Dn(),rlr=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=BGo.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};nlr.default=rlr});var Ufe=H(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});doe.statSync=doe.stat=doe.Settings=void 0;var tkn=zDn(),wGo=qDn(),ilr=ekn();doe.Settings=ilr.default;function TGo(e,t,r){if(typeof t=="function"){tkn.read(e,slr(),t);return}tkn.read(e,slr(t),r)}doe.stat=TGo;function RGo(e,t){let r=slr(t);return wGo.read(e,r)}doe.statSync=RGo;function slr(e={}){return e instanceof ilr.default?e:new ilr.default(e)}});var ikn=H((U8l,nkn)=>{var rkn;nkn.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(rkn||(rkn=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var okn=H((K8l,skn)=>{skn.exports=DGo;var NGo=ikn();function DGo(e,t){let r,n,a,o=!0;Array.isArray(e)?(r=[],n=e.length):(a=Object.keys(e),r={},n=a.length);function l(f){function I(){t&&t(f,r),t=null}o?NGo(I):I()}function A(f,I,C){r[f]=C,(--n===0||I)&&l(I)}n?a?a.forEach(function(f){e[f](function(I,C){A(f,I,C)})}):e.forEach(function(f,I){f(function(C,b){A(I,C,b)})}):l(null),o=!1}});var olr=H(xut=>{"use strict";Object.defineProperty(xut,"__esModule",{value:!0});xut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var kut=process.versions.node.split(".");if(kut[0]===void 0||kut[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var akn=Number.parseInt(kut[0],10),kGo=Number.parseInt(kut[1],10),ckn=10,xGo=10,GGo=akn>ckn,FGo=akn===ckn&&kGo>=xGo;xut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=GGo||FGo});var lkn=H(Gut=>{"use strict";Object.defineProperty(Gut,"__esModule",{value:!0});Gut.createDirentFromStats=void 0;var alr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function ZGo(e,t){return new alr(e,t)}Gut.createDirentFromStats=ZGo});var clr=H(Fut=>{"use strict";Object.defineProperty(Fut,"__esModule",{value:!0});Fut.fs=void 0;var LGo=lkn();Fut.fs=LGo});var llr=H(Zut=>{"use strict";Object.defineProperty(Zut,"__esModule",{value:!0});Zut.joinPathSegments=void 0;function VGo(e,t,r){return e.endsWith(r)?e+t:e+r+t}Zut.joinPathSegments=VGo});var fkn=H(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});poe.readdir=poe.readdirWithFileTypes=poe.read=void 0;var PGo=Ufe(),ukn=okn(),WGo=olr(),gkn=clr(),Akn=llr();function OGo(e,t,r){if(!t.stats&&WGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES){dkn(e,t,r);return}pkn(e,t,r)}poe.read=OGo;function dkn(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(n,a)=>{if(n!==null){Lut(r,n);return}let o=a.map(A=>({dirent:A,name:A.name,path:Akn.joinPathSegments(e,A.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){ulr(r,o);return}let l=o.map(A=>MGo(A,t));ukn(l,(A,f)=>{if(A!==null){Lut(r,A);return}ulr(r,f)})})}poe.readdirWithFileTypes=dkn;function MGo(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(n,a)=>{if(n!==null){if(t.throwErrorOnBrokenSymbolicLink){r(n);return}r(null,e);return}e.dirent=gkn.fs.createDirentFromStats(e.name,a),r(null,e)})}}function pkn(e,t,r){t.fs.readdir(e,(n,a)=>{if(n!==null){Lut(r,n);return}let o=a.map(l=>{let A=Akn.joinPathSegments(e,l,t.pathSegmentSeparator);return f=>{PGo.stat(A,t.fsStatSettings,(I,C)=>{if(I!==null){f(I);return}let b={name:l,path:A,dirent:gkn.fs.createDirentFromStats(l,C)};t.stats&&(b.stats=C),f(null,b)})}});ukn(o,(l,A)=>{if(l!==null){Lut(r,l);return}ulr(r,A)})})}poe.readdir=pkn;function Lut(e,t){e(t)}function ulr(e,t){e(null,t)}});var _kn=H(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});foe.readdir=foe.readdirWithFileTypes=foe.read=void 0;var HGo=Ufe(),YGo=olr(),Ikn=clr(),hkn=llr();function QGo(e,t){return!t.stats&&YGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES?mkn(e,t):Ckn(e,t)}foe.read=QGo;function mkn(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(n=>{let a={dirent:n,name:n.name,path:hkn.joinPathSegments(e,n.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=Ikn.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}foe.readdirWithFileTypes=mkn;function Ckn(e,t){return t.fs.readdirSync(e).map(n=>{let a=hkn.joinPathSegments(e,n,t.pathSegmentSeparator),o=HGo.statSync(a,t.fsStatSettings),l={name:n,path:a,dirent:Ikn.fs.createDirentFromStats(n,o)};return t.stats&&(l.stats=o),l})}foe.readdir=Ckn});var ykn=H(Ioe=>{"use strict";Object.defineProperty(Ioe,"__esModule",{value:!0});Ioe.createFileSystemAdapter=Ioe.FILE_SYSTEM_ADAPTER=void 0;var tve=wt("fs");Ioe.FILE_SYSTEM_ADAPTER={lstat:tve.lstat,stat:tve.stat,lstatSync:tve.lstatSync,statSync:tve.statSync,readdir:tve.readdir,readdirSync:tve.readdirSync};function XGo(e){return e===void 0?Ioe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Ioe.FILE_SYSTEM_ADAPTER),e)}Ioe.createFileSystemAdapter=XGo});var bkn=H(Alr=>{"use strict";Object.defineProperty(Alr,"__esModule",{value:!0});var JGo=wt("path"),UGo=Ufe(),KGo=ykn(),glr=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=KGo.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,JGo.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new UGo.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};Alr.default=glr});var Vut=H(hoe=>{"use strict";Object.defineProperty(hoe,"__esModule",{value:!0});hoe.Settings=hoe.scandirSync=hoe.scandir=void 0;var Ekn=fkn(),jGo=_kn(),dlr=bkn();hoe.Settings=dlr.default;function zGo(e,t,r){if(typeof t=="function"){Ekn.read(e,plr(),t);return}Ekn.read(e,plr(t),r)}hoe.scandir=zGo;function qGo(e,t){let r=plr(t);return jGo.read(e,r)}hoe.scandirSync=qGo;function plr(e={}){return e instanceof dlr.default?e:new dlr.default(e)}});var vkn=H((sjl,Skn)=>{"use strict";function $Go(e){var t=new e,r=t;function n(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:n,release:a}}Skn.exports=$Go});var wkn=H((ojl,flr)=>{"use strict";var eFo=vkn();function Bkn(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=eFo(tFo),a=null,o=null,l=0,A=null,f={push:F,drain:nM,saturated:nM,pause:C,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&l=r||f.paused?o?(o.next=de,o=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function Q(fe,ue){var de=n.get();de.context=e,de.release=X,de.value=fe,de.callback=ue||nM,de.errorHandler=A,l>=r||f.paused?a?(de.next=a,a=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function X(fe){fe&&n.release(fe);var ue=a;ue&&l<=r?f.paused?l--:(o===a&&(o=null),a=ue.next,ue.next=null,t.call(e,ue.value,ue.worked),o===null&&f.empty()):--l===0&&f.drain()}function ae(){a=null,o=null,f.drain=nM}function ne(){a=null,o=null,f.drain(),f.drain=nM}function ce(fe){A=fe}}function nM(){}function tFo(){this.value=null,this.callback=nM,this.next=null,this.release=nM,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var a=e.callback,o=e.errorHandler,l=e.value;e.value=null,e.callback=nM,e.errorHandler&&o(r,l),a.call(e.context,r,n),e.release(e)}}function rFo(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(C,b){t.call(this,C).then(function(E){b(null,E)},b)}var a=Bkn(e,n,r),o=a.push,l=a.unshift;return a.push=A,a.unshift=f,a.drained=I,a;function A(C){var b=new Promise(function(E,N){o(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(nM),b}function f(C){var b=new Promise(function(E,N){l(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(nM),b}function I(){if(a.idle())return new Promise(function(E){E()});var C=a.drain,b=new Promise(function(E){a.drain=function(){C(),E()}});return b}}flr.exports=Bkn;flr.exports.promise=rFo});var Put=H(QK=>{"use strict";Object.defineProperty(QK,"__esModule",{value:!0});QK.joinPathSegments=QK.replacePathSegmentSeparator=QK.isAppliedFilter=QK.isFatalError=void 0;function nFo(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}QK.isFatalError=nFo;function iFo(e,t){return e===null||e(t)}QK.isAppliedFilter=iFo;function sFo(e,t){return e.split(/[/\\]/).join(t)}QK.replacePathSegmentSeparator=sFo;function oFo(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}QK.joinPathSegments=oFo});var mlr=H(hlr=>{"use strict";Object.defineProperty(hlr,"__esModule",{value:!0});var aFo=Put(),Ilr=class{constructor(t,r){this._root=t,this._settings=r,this._root=aFo.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};hlr.default=Ilr});var ylr=H(_lr=>{"use strict";Object.defineProperty(_lr,"__esModule",{value:!0});var cFo=wt("events"),lFo=Vut(),uFo=wkn(),Wut=Put(),gFo=mlr(),Clr=class extends gFo.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=lFo.scandir,this._emitter=new cFo.EventEmitter,this._queue=uFo(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let n={directory:t,base:r};this._queue.push(n,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(n,a)=>{if(n!==null){r(n,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!Wut.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let n=t.path;r!==void 0&&(t.path=Wut.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Wut.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&Wut.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};_lr.default=Clr});var Tkn=H(Elr=>{"use strict";Object.defineProperty(Elr,"__esModule",{value:!0});var AFo=ylr(),blr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new AFo.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{dFo(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{pFo(t,this._storage)}),this._reader.read()}};Elr.default=blr;function dFo(e,t){e(t)}function pFo(e,t){e(null,t)}});var Rkn=H(vlr=>{"use strict";Object.defineProperty(vlr,"__esModule",{value:!0});var fFo=wt("stream"),IFo=ylr(),Slr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new IFo.default(this._root,this._settings),this._stream=new fFo.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};vlr.default=Slr});var Nkn=H(wlr=>{"use strict";Object.defineProperty(wlr,"__esModule",{value:!0});var hFo=Vut(),Out=Put(),mFo=mlr(),Blr=class extends mFo.default{constructor(){super(...arguments),this._scandir=hFo.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let n=this._scandir(t,this._settings.fsScandirSettings);for(let a of n)this._handleEntry(a,r)}catch(n){this._handleError(n)}}_handleError(t){if(Out.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let n=t.path;r!==void 0&&(t.path=Out.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Out.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&Out.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};wlr.default=Blr});var Dkn=H(Rlr=>{"use strict";Object.defineProperty(Rlr,"__esModule",{value:!0});var CFo=Nkn(),Tlr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new CFo.default(this._root,this._settings)}read(){return this._reader.read()}};Rlr.default=Tlr});var kkn=H(Dlr=>{"use strict";Object.defineProperty(Dlr,"__esModule",{value:!0});var _Fo=wt("path"),yFo=Vut(),Nlr=class{constructor(t={}){this._options=t,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,_Fo.sep),this.fsScandirSettings=new yFo.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};Dlr.default=Nlr});var Hut=H(XK=>{"use strict";Object.defineProperty(XK,"__esModule",{value:!0});XK.Settings=XK.walkStream=XK.walkSync=XK.walk=void 0;var xkn=Tkn(),bFo=Rkn(),EFo=Dkn(),klr=kkn();XK.Settings=klr.default;function SFo(e,t,r){if(typeof t=="function"){new xkn.default(e,Mut()).read(t);return}new xkn.default(e,Mut(t)).read(r)}XK.walk=SFo;function vFo(e,t){let r=Mut(t);return new EFo.default(e,r).read()}XK.walkSync=vFo;function BFo(e,t){let r=Mut(t);return new bFo.default(e,r).read()}XK.walkStream=BFo;function Mut(e={}){return e instanceof klr.default?e:new klr.default(e)}});var Yut=H(Glr=>{"use strict";Object.defineProperty(Glr,"__esModule",{value:!0});var wFo=wt("path"),TFo=Ufe(),Gkn=r$(),xlr=class{constructor(t){this._settings=t,this._fsStatSettings=new TFo.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return wFo.resolve(this._settings.cwd,t)}_makeEntry(t,r){let n={name:r,path:r,dirent:Gkn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(n.stats=t),n}_isFatalError(t){return!Gkn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};Glr.default=xlr});var Llr=H(Zlr=>{"use strict";Object.defineProperty(Zlr,"__esModule",{value:!0});var RFo=wt("stream"),NFo=Ufe(),DFo=Hut(),kFo=Yut(),Flr=class extends kFo.default{constructor(){super(...arguments),this._walkStream=DFo.walkStream,this._stat=NFo.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let n=t.map(this._getFullEntryPath,this),a=new RFo.PassThrough({objectMode:!0});a._write=(o,l,A)=>this._getEntry(n[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===n.length-1&&a.end(),A()}).catch(A);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(n.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,n)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):n(a))})}};Zlr.default=Flr});var Fkn=H(Plr=>{"use strict";Object.defineProperty(Plr,"__esModule",{value:!0});var xFo=Hut(),GFo=Yut(),FFo=Llr(),Vlr=class extends GFo.default{constructor(){super(...arguments),this._walkAsync=xFo.walk,this._readerStream=new FFo.default(this._settings)}dynamic(t,r){return new Promise((n,a)=>{this._walkAsync(t,r,(o,l)=>{o===null?n(l):a(o)})})}async static(t,r){let n=[],a=this._readerStream.static(t,r);return new Promise((o,l)=>{a.once("error",l),a.on("data",A=>n.push(A)),a.once("end",()=>o(n))})}};Plr.default=Vlr});var Zkn=H(Olr=>{"use strict";Object.defineProperty(Olr,"__esModule",{value:!0});var j3e=r$(),Wlr=class{constructor(t,r,n){this._patterns=t,this._settings=r,this._micromatchOptions=n,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),n=this._splitSegmentsIntoSections(r);this._storage.push({complete:n.length<=1,pattern:t,segments:r,sections:n})}}_getPatternSegments(t){return j3e.pattern.getPatternParts(t,this._micromatchOptions).map(n=>j3e.pattern.isDynamicPattern(n,this._settings)?{dynamic:!0,pattern:n,patternRe:j3e.pattern.makeRe(n,this._micromatchOptions)}:{dynamic:!1,pattern:n})}_splitSegmentsIntoSections(t){return j3e.array.splitWhen(t,r=>r.dynamic&&j3e.pattern.hasGlobStar(r.pattern))}};Olr.default=Wlr});var Lkn=H(Hlr=>{"use strict";Object.defineProperty(Hlr,"__esModule",{value:!0});var ZFo=Zkn(),Mlr=class extends ZFo.default{match(t){let r=t.split("/"),n=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>n);for(let o of a){let l=o.sections[0];if(!o.complete&&n>l.length||r.every((f,I)=>{let C=o.segments[I];return!!(C.dynamic&&C.patternRe.test(f)||!C.dynamic&&C.pattern===f)}))return!0}return!1}};Hlr.default=Mlr});var Vkn=H(Qlr=>{"use strict";Object.defineProperty(Qlr,"__esModule",{value:!0});var Qut=r$(),LFo=Lkn(),Ylr=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,n){let a=this._getMatcher(r),o=this._getNegativePatternsRe(n);return l=>this._filter(t,l,a,o)}_getMatcher(t){return new LFo.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(Qut.pattern.isAffectDepthOfReadingPattern);return Qut.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,n,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=Qut.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,n)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let n=r.split("/").length;if(t==="")return n;let a=t.split("/").length;return n-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!Qut.pattern.matchAny(t,r)}};Qlr.default=Ylr});var Pkn=H(Jlr=>{"use strict";Object.defineProperty(Jlr,"__esModule",{value:!0});var Kfe=r$(),Xlr=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let n=Kfe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=Kfe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,n,a)}_filter(t,r,n){let a=Kfe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,n))return!1;let o=t.dirent.isDirectory(),l=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,n,o);return this._settings.unique&&l&&this._createIndexRecord(a),l}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let n=Kfe.path.makeAbsolute(this._settings.cwd,t);return Kfe.pattern.matchAny(n,r)}_isMatchToPatterns(t,r,n){let a=Kfe.pattern.matchAny(t,r);return!a&&n?Kfe.pattern.matchAny(t+"/",r):a}};Jlr.default=Xlr});var Wkn=H(Klr=>{"use strict";Object.defineProperty(Klr,"__esModule",{value:!0});var VFo=r$(),Ulr=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return VFo.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};Klr.default=Ulr});var Mkn=H(zlr=>{"use strict";Object.defineProperty(zlr,"__esModule",{value:!0});var Okn=r$(),jlr=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=Okn.path.makeAbsolute(this._settings.cwd,r),r=Okn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};zlr.default=jlr});var Xut=H($lr=>{"use strict";Object.defineProperty($lr,"__esModule",{value:!0});var PFo=wt("path"),WFo=Vkn(),OFo=Pkn(),MFo=Wkn(),HFo=Mkn(),qlr=class{constructor(t){this._settings=t,this.errorFilter=new MFo.default(this._settings),this.entryFilter=new OFo.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new WFo.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new HFo.default(this._settings)}_getRootDirectory(t){return PFo.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};$lr.default=qlr});var Hkn=H(tur=>{"use strict";Object.defineProperty(tur,"__esModule",{value:!0});var YFo=Fkn(),QFo=Xut(),eur=class extends QFo.default{constructor(){super(...arguments),this._reader=new YFo.default(this._settings)}async read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return(await this.api(r,t,n)).map(o=>n.transform(o))}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};tur.default=eur});var Ykn=H(nur=>{"use strict";Object.defineProperty(nur,"__esModule",{value:!0});var XFo=wt("stream"),JFo=Llr(),UFo=Xut(),rur=class extends UFo.default{constructor(){super(...arguments),this._reader=new JFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t),a=this.api(r,t,n),o=new XFo.Readable({objectMode:!0,read:()=>{}});return a.once("error",l=>o.emit("error",l)).on("data",l=>o.emit("data",n.transform(l))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};nur.default=rur});var Qkn=H(sur=>{"use strict";Object.defineProperty(sur,"__esModule",{value:!0});var KFo=Ufe(),jFo=Hut(),zFo=Yut(),iur=class extends zFo.default{constructor(){super(...arguments),this._walkSync=jFo.walkSync,this._statSync=KFo.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let n=[];for(let a of t){let o=this._getFullEntryPath(a),l=this._getEntry(o,a,r);l===null||!r.entryFilter(l)||n.push(l)}return n}_getEntry(t,r,n){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(n.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};sur.default=iur});var Xkn=H(aur=>{"use strict";Object.defineProperty(aur,"__esModule",{value:!0});var qFo=Qkn(),$Fo=Xut(),our=class extends $Fo.default{constructor(){super(...arguments),this._reader=new qFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return this.api(r,t,n).map(n.transform)}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};aur.default=our});var Jkn=H(nve=>{"use strict";Object.defineProperty(nve,"__esModule",{value:!0});nve.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var rve=wt("fs"),eZo=wt("os"),tZo=Math.max(eZo.cpus().length,1);nve.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:rve.lstat,lstatSync:rve.lstatSync,stat:rve.stat,statSync:rve.statSync,readdir:rve.readdir,readdirSync:rve.readdirSync};var cur=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,tZo),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},nve.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};nve.default=cur});var ive=H((Djl,Kkn)=>{"use strict";var Ukn=KDn(),rZo=Hkn(),nZo=Ykn(),iZo=Xkn(),lur=Jkn(),iM=r$();async function uur(e,t){oX(e);let r=gur(e,rZo.default,t),n=await Promise.all(r);return iM.array.flatten(n)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(I,C){oX(I);let b=gur(I,iZo.default,C);return iM.array.flatten(b)}e.sync=t;function r(I,C){oX(I);let b=gur(I,nZo.default,C);return iM.stream.merge(b)}e.stream=r;function n(I,C){oX(I);let b=[].concat(I),E=new lur.default(C);return Ukn.generate(b,E)}e.generateTasks=n;function a(I,C){oX(I);let b=new lur.default(C);return iM.pattern.isDynamicPattern(I,b)}e.isDynamicPattern=a;function o(I){return oX(I),iM.path.escape(I)}e.escapePath=o;function l(I){return oX(I),iM.path.convertPathToPattern(I)}e.convertPathToPattern=l;let A;(function(I){function C(E){return oX(E),iM.path.escapePosixPath(E)}I.escapePath=C;function b(E){return oX(E),iM.path.convertPosixPathToPattern(E)}I.convertPathToPattern=b})(A=e.posix||(e.posix={}));let f;(function(I){function C(E){return oX(E),iM.path.escapeWindowsPath(E)}I.escapePath=C;function b(E){return oX(E),iM.path.convertWindowsPathToPattern(E)}I.convertPathToPattern=b})(f=e.win32||(e.win32={}))})(uur||(uur={}));function gur(e,t,r){let n=[].concat(e),a=new lur.default(r),o=Ukn.generate(n,a),l=new t(a);return o.map(l.read,l)}function oX(e){if(![].concat(e).every(n=>iM.string.isString(n)&&!iM.string.isEmpty(n)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}Kkn.exports=uur});var Coe=H(z3e=>{"use strict";Object.defineProperty(z3e,"__esModule",{value:!0});z3e.makeHash=oZo;z3e.checksumFile=aZo;z3e.checksumPattern=cZo;var sZo=(Pa(),vi(Va)),moe=zs(),Aur=wt("crypto"),jkn=sZo.__importDefault(ive());function oZo(...e){let t=(0,Aur.createHash)("sha512"),r="";for(let n of e)typeof n=="string"?r+=n:n&&(r&&(t.update(r),r=""),t.update(n));return r&&t.update(r),t.digest("hex")}async function aZo(e,{baseFs:t,algorithm:r}={baseFs:moe.xfs,algorithm:"sha512"}){let n=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,Aur.createHash)(r),A=0;for(;(A=await t.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await t.closePromise(n)}}async function cZo(e,{cwd:t}){let n=(await(0,jkn.default)(e,{cwd:moe.npath.fromPortablePath(t),onlyDirectories:!0})).map(A=>`${A}/**/*`),a=await(0,jkn.default)([e,...n],{cwd:moe.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async A=>{let f=[Buffer.from(A)],I=moe.ppath.join(t,moe.npath.toPortablePath(A)),C=await moe.xfs.lstatPromise(I);return C.isSymbolicLink()?f.push(Buffer.from(await moe.xfs.readlinkPromise(I))):C.isFile()&&f.push(await moe.xfs.readFilePromise(I)),f.join("\0")})),l=(0,Aur.createHash)("sha512");for(let A of o)l.update(A);return l.digest("hex")}});var uG=H(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.makeIdent=ove;Xd.makeDescriptor=cve;Xd.makeLocator=lve;Xd.convertToIdent=dZo;Xd.convertDescriptorToLocator=pZo;Xd.convertLocatorToDescriptor=fZo;Xd.convertPackageToLocator=IZo;Xd.renamePackage=Iur;Xd.copyPackage=hZo;Xd.virtualizeDescriptor=mZo;Xd.virtualizePackage=CZo;Xd.isVirtualDescriptor=Uut;Xd.isVirtualLocator=e5e;Xd.devirtualizeDescriptor=exn;Xd.devirtualizeLocator=_Zo;Xd.ensureDevirtualizedDescriptor=yZo;Xd.ensureDevirtualizedLocator=bZo;Xd.bindDescriptor=EZo;Xd.bindLocator=SZo;Xd.areIdentsEqual=txn;Xd.areDescriptorsEqual=rxn;Xd.areLocatorsEqual=vZo;Xd.areVirtualPackagesEquivalent=BZo;Xd.parseIdent=wZo;Xd.tryParseIdent=nxn;Xd.parseDescriptor=RZo;Xd.tryParseDescriptor=ixn;Xd.parseLocator=sxn;Xd.tryParseLocator=oxn;Xd.parseRange=t5e;Xd.tryParseRange=FZo;Xd.parseFileStyleRange=ZZo;Xd.makeRange=axn;Xd.convertToManifestRange=VZo;Xd.stringifyIdent=jut;Xd.wrapIdentIntoScope=PZo;Xd.unwrapIdentFromScope=WZo;Xd.stringifyDescriptor=OZo;Xd.stringifyLocator=MZo;Xd.slugifyIdent=pur;Xd.slugifyLocator=YZo;Xd.prettyIdent=zut;Xd.prettyRange=cxn;Xd.prettyDescriptor=XZo;Xd.prettyReference=hur;Xd.prettyLocator=Jut;Xd.prettyLocatorNoColors=JZo;Xd.sortDescriptors=UZo;Xd.prettyWorkspace=KZo;Xd.prettyResolution=jZo;Xd.prettyDependent=zZo;Xd.getIdentVendorPath=qZo;Xd.isPackageInRange=$Zo;Xd.isPackageCompatible=eLo;Xd.allPeerRequests=tLo;var ave=(Pa(),vi(Va)),$3e=ave.__importDefault(wt("querystring")),qkn=ave.__importDefault(UC()),lZo=yBn(),vZ=ave.__importStar(rM()),fur=ave.__importStar(Coe()),uZo=ave.__importStar(xW()),sve=ave.__importStar(uG()),q3e="virtual:",gZo=5,$kn=/(os|cpu|libc)=([a-z0-9_-]+)/,AZo=(0,lZo.makeParser)($kn);function ove(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:fur.makeHash(e,t),scope:e,name:t}}function cve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:fur.makeHash(e.identHash,t),range:t}}function lve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:fur.makeHash(e.identHash,t),reference:t}}function dZo(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function pZo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function fZo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function IZo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function Iur(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function hZo(e){return Iur(e,e)}function mZo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return cve(e,`virtual:${t}#${e.range}`)}function CZo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Iur(e,lve(e,`virtual:${t}#${e.reference}`))}function Uut(e){return e.range.startsWith(q3e)}function e5e(e){return e.reference.startsWith(q3e)}var Kut=/^[^#]*#/;function exn(e){if(!Uut(e))throw new Error("Not a virtual descriptor");return cve(e,e.range.replace(Kut,""))}function _Zo(e){if(!e5e(e))throw new Error("Not a virtual descriptor");return lve(e,e.reference.replace(Kut,""))}function yZo(e){return Uut(e)?cve(e,e.range.replace(Kut,"")):e}function bZo(e){return e5e(e)?lve(e,e.reference.replace(Kut,"")):e}function EZo(e,t){return e.range.includes("::")?e:cve(e,`${e.range}::${$3e.default.stringify(t)}`)}function SZo(e,t){return e.reference.includes("::")?e:lve(e,`${e.reference}::${$3e.default.stringify(t)}`)}function txn(e,t){return e.identHash===t.identHash}function rxn(e,t){return e.descriptorHash===t.descriptorHash}function vZo(e,t){return e.locatorHash===t.locatorHash}function BZo(e,t){if(!e5e(e))throw new Error("Invalid package type");if(!e5e(t))throw new Error("Invalid package type");if(!txn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let n=t.dependencies.get(r.identHash);if(!n||!rxn(r,n))return!1}return!0}function wZo(e){let t=nxn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var TZo=/^(?:@([^/]+?)\/)?([^@/]+)$/;function nxn(e){let t=e.match(TZo);if(!t)return null;let[,r,n]=t;return ove(typeof r<"u"?r:null,n)}function RZo(e,t=!1){let r=ixn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var NZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,DZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/,dur="unknown";function ixn(e,t=!1){let r=t?e.match(NZo):e.match(DZo);if(!r)return null;let[,n,a,o]=r;if(o===dur)throw new Error(`Invalid range (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:dur;return cve(ove(l,a),A)}function sxn(e,t=!1){let r=oxn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var kZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,xZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function oxn(e,t=!1){let r=t?e.match(kZo):e.match(xZo);if(!r)return null;let[,n,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:"unknown";return lve(ove(l,a),A)}var GZo=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function t5e(e,t){let r=e.match(GZo);if(r===null)throw new Error(`Invalid range (${e})`);let n=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&n!==t.requireProtocol)throw new Error(`Invalid protocol (${n})`);if(t?.requireProtocol&&n===null)throw new Error(`Missing protocol (${n})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),l=t?.parseSelector?$3e.default.parse(o):o,A=typeof r[4]<"u"?$3e.default.parse(r[4]):null;return{protocol:n,source:a,selector:l,params:A}}function FZo(e,t){try{return t5e(e,t)}catch{return null}}function ZZo(e,{protocol:t}){let{selector:r,params:n}=t5e(e,{requireProtocol:t,requireBindings:!0});if(typeof n.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:sxn(n.locator,!0),path:r}}function zkn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function LZo(e){return e===null?!1:Object.entries(e).length>0}function axn({protocol:e,source:t,selector:r,params:n}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${zkn(t)}#`),a+=zkn(r),LZo(n)&&(a+=`::${$3e.default.stringify(n)}`),a}function VZo(e){let{params:t,protocol:r,source:n,selector:a}=t5e(e);for(let o in t)o.startsWith("__")&&delete t[o];return axn({protocol:r,source:n,params:t,selector:a})}function jut(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function PZo(e,t){return e.scope?sve.makeIdent(t,`${e.scope}__${e.name}`):sve.makeIdent(t,e.name)}function WZo(e,t){if(e.scope!==t)return e;let r=e.name.indexOf("__");if(r===-1)return ove(null,e.name);let n=e.name.slice(0,r),a=e.name.slice(r+2);return ove(n,a)}function OZo(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function MZo(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function pur(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var HZo=/:$/;function YZo(e){let{protocol:t,selector:r}=t5e(e.reference),n=t!==null?t.replace(HZo,""):"exotic",a=qkn.default.valid(r),o=a!==null?`${n}-${a}`:`${n}`,l=10;return e.scope?`${pur(e)}-${o}-${e.locatorHash.slice(0,l)}`:`${pur(e)}-${o}-${e.locatorHash.slice(0,l)}`}function zut(e,t){return t.scope?`${vZ.pretty(e,`@${t.scope}/`,vZ.Type.SCOPE)}${vZ.pretty(e,t.name,vZ.Type.NAME)}`:`${vZ.pretty(e,t.name,vZ.Type.NAME)}`}var QZo=/\?.*/;function qut(e){if(e.startsWith(q3e)){let t=qut(e.substring(e.indexOf("#")+1)),r=e.substring(q3e.length,q3e.length+gZo);return`${t} [${r}]`}else return e.replace(QZo,"?[...]")}function cxn(e,t){return`${vZ.pretty(e,qut(t),vZ.Type.RANGE)}`}function XZo(e,t){return`${zut(e,t)}${vZ.pretty(e,"@",vZ.Type.RANGE)}${cxn(e,t.range)}`}function hur(e,t){return`${vZ.pretty(e,qut(t),vZ.Type.REFERENCE)}`}function Jut(e,t){return`${zut(e,t)}${vZ.pretty(e,"@",vZ.Type.REFERENCE)}${hur(e,t.reference)}`}function JZo(e){return`${jut(e)}@${qut(e.reference)}`}function UZo(e){return uZo.sortMap(e,[t=>jut(t),t=>t.range])}function KZo(e,t){return zut(e,t.anchoredLocator)}function jZo(e,t,r){let n=Uut(t)?exn(t):t;return r===null?`${sve.prettyDescriptor(e,n)} \u2192 ${vZ.mark(e).Cross}`:n.identHash===r.identHash?`${sve.prettyDescriptor(e,n)} \u2192 ${hur(e,r.reference)}`:`${sve.prettyDescriptor(e,n)} \u2192 ${Jut(e,r)}`}function zZo(e,t,r){return r===null?`${Jut(e,t)}`:`${Jut(e,t)} (via ${sve.prettyRange(e,r.range)})`}function qZo(e){return`node_modules/${jut(e)}`}function $Zo(e,t){return t===dur||!e.version?!0:qkn.default.satisfies(e.version??"",t)}function eLo(e,t){return e.conditions?AZo(e.conditions,r=>{let[,n,a]=r.match($kn),o=t[n];return o?o.includes(a):!0}):!0}function tLo(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let n of r.children.values())t.add(n);return t}});var lxn=H($ut=>{"use strict";Object.defineProperty($ut,"__esModule",{value:!0});$ut.CorePlugin=void 0;var rLo=(Pa(),vi(Va)),nLo=M9(),_oe=rLo.__importStar(uG());$ut.CorePlugin={hooks:{reduceDependency:(e,t,r,n,{resolver:a,resolveOptions:o})=>{for(let{pattern:l,reference:A}of t.topLevelWorkspace.manifest.resolutions){if(l.from&&(l.from.fullName!==_oe.stringifyIdent(r)||t.configuration.normalizeLocator(_oe.makeLocator(_oe.parseIdent(l.from.fullName),l.from.description??r.reference)).locatorHash!==r.locatorHash)||l.descriptor.fullName!==_oe.stringifyIdent(e)||t.configuration.normalizeDependency(_oe.makeDescriptor(_oe.parseLocator(l.descriptor.fullName),l.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(_oe.makeDescriptor(e,A)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let n=_oe.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${n}: ${o}`),reportError:(a,o)=>t.reportError(a,`${n}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let n of r.errors)t.reportWarning(nLo.MessageName.INVALID_MANIFEST,n.message)}}}});var jfe=H(tgt=>{"use strict";Object.defineProperty(tgt,"__esModule",{value:!0});tgt.WorkspaceResolver=void 0;var iLo=Xfe(),egt=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[n.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:n.manifest.version||"0.0.0",languageName:"unknown",linkType:iLo.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...n.manifest.dependencies,...n.manifest.devDependencies])),peerDependencies:new Map([...n.manifest.peerDependencies]),dependenciesMeta:n.manifest.dependenciesMeta,peerDependenciesMeta:n.manifest.peerDependenciesMeta,bin:n.manifest.bin}}};tgt.WorkspaceResolver=egt;egt.protocol="workspace:"});var n$=H(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.SemVer=void 0;aX.satisfiesWithPrereleases=aLo;aX.validRange=Axn;aX.clean=lLo;aX.getComparator=dxn;aX.mergeComparators=mur;aX.stringifyComparator=pxn;aX.simplifyRanges=uLo;var sLo=(Pa(),vi(Va)),yoe=sLo.__importDefault(UC()),oLo=UC();Object.defineProperty(aX,"SemVer",{enumerable:!0,get:function(){return oLo.SemVer}});var uxn=new Map;function aLo(e,t,r=!1){if(!e)return!1;let n=`${t}${r}`,a=uxn.get(n);if(typeof a>"u")try{a=new yoe.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{uxn.set(n,a||null)}else if(a===null)return!1;let o;try{o=new yoe.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(l=>{for(let A of l)A.semver.prerelease&&(A.semver.prerelease=[]);return l.every(A=>A.test(o))}))}var gxn=new Map;function Axn(e){if(e.indexOf(":")!==-1)return null;let t=gxn.get(e);if(typeof t<"u")return t;try{t=new yoe.default.Range(e)}catch{t=null}return gxn.set(e,t),t}var cLo=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function lLo(e){let t=cLo.exec(e);return t?t[1]:null}function dxn(e){if(e.semver===yoe.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function mur(e){if(e.length===0)return null;let t=null,r=null;for(let n of e){if(n.gt){let a=t!==null?yoe.default.compare(n.gt[1],t[1]):null;(a===null||a>0||a===0&&n.gt[0]===">")&&(t=n.gt)}if(n.lt){let a=r!==null?yoe.default.compare(n.lt[1],r[1]):null;(a===null||a<0||a===0&&n.lt[0]==="<")&&(r=n.lt)}}if(t&&r){let n=yoe.default.compare(t[1],r[1]);if(n===0&&(t[0]===">"||r[0]==="<")||n>0)return null}return{gt:t,lt:r}}function pxn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function uLo(e){let t=e.map(gLo).map(n=>Axn(n).set.map(a=>a.map(o=>dxn(o)))),r=t.shift().map(n=>mur(n)).filter(n=>n!==null);for(let n of t){let a=[];for(let o of r)for(let l of n){let A=mur([o,...l]);A!==null&&a.push(A)}r=a}return r.length===0?null:r.map(n=>pxn(n)).join(" || ")}function gLo(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let n of t)t.some(a=>a!==n&&yoe.default.subset(n,a))||r.add(n);if(r.size{"use strict";Object.defineProperty(ogt,"__esModule",{value:!0});ogt.Manifest=void 0;var sgt=(Pa(),vi(Va)),rgt=zs(),fxn=TW(),ALo=sgt.__importDefault(UC()),dLo=jfe(),igt=sgt.__importStar(xW()),pLo=sgt.__importStar(n$()),O0=sgt.__importStar(uG()),uve=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new rgt.NodeFS}={}){let n=rgt.ppath.join(t,"package.json");try{return await e.fromFile(n,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let n=await e.tryFind(t,{baseFs:r});if(n===null)throw new Error("Manifest not found");return n}static async fromFile(t,{baseFs:r=new rgt.NodeFS}={}){let n=new e;return await n.loadFile(t,{baseFs:r}),n}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(hxn(t)||"{}")}catch(n){throw n.message+=` (when parsing ${t})`,n}this.load(r),this.indent=Ixn(t)}async loadFile(t,{baseFs:r=new rgt.NodeFS}){let n=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(hxn(n)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=Ixn(n)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let n=[];if(this.name=null,typeof t.name=="string")try{this.name=O0.parseIdent(t.name)}catch{n.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let l of t.os)typeof l!="string"?n.push(new Error("Parsing failed for the 'os' field")):o.push(l)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let l of t.cpu)typeof l!="string"?n.push(new Error("Parsing failed for the 'cpu' field")):o.push(l)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let l of t.libc)typeof l!="string"?n.push(new Error("Parsing failed for the 'libc' field")):o.push(l)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=BZ(t.main):this.main=null,typeof t.module=="string"?this.module=BZ(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=BZ(t.browser);else{this.browser=new Map;for(let[o,l]of Object.entries(t.browser))this.browser.set(BZ(o),typeof l=="string"?BZ(l):l)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?n.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,BZ(t.bin)):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,l]of Object.entries(t.bin)){if(typeof l!="string"||l.trim()===""){n.push(new Error(`Invalid bin definition for '${o}'`));continue}let A=O0.parseIdent(o);this.bin.set(A.name,BZ(l))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,l]of Object.entries(t.scripts)){if(typeof l!="string"){n.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,l)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,l]of Object.entries(t.dependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,l]of Object.entries(t.devDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,l]of Object.entries(t.peerDependencies)){let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof l!="string"||!l.startsWith(dLo.WorkspaceResolver.protocol)&&!pLo.validRange(l))&&(n.push(new Error(`Invalid dependency range for '${o}'`)),l="*");let f=O0.makeDescriptor(A,l);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&n.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){n.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,l]of Object.entries(t.dependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}`));continue}let A=O0.parseDescriptor(o),f=this.ensureDependencyMeta(A),I=ngt(l.built,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid built meta field for '${o}'`));continue}let C=ngt(l.optional,{yamlCompatibilityMode:r});if(C===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}let b=ngt(l.unplugged,{yamlCompatibilityMode:r});if(b===null){n.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:I,optional:C,unplugged:b})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,l]of Object.entries(t.peerDependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}'`));continue}let A=O0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(A),I=ngt(l.optional,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:I})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,l]of Object.entries(t.resolutions)){if(typeof l!="string"){n.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,fxn.parseResolution)(o),reference:l})}catch(A){n.push(A);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){n.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=BZ(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=BZ(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=BZ(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,l]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(BZ(o),typeof l=="string"?BZ(l):l)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.provenance=="boolean"&&(this.publishConfig.provenance=t.publishConfig.provenance),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,BZ(t.publishConfig.bin)]]):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,l]of Object.entries(t.publishConfig.bin)){if(typeof l!="string"){n.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,BZ(l))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){n.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(BZ(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:n.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:n.push(new Error("Invalid selfReferences definition, must be a boolean value")):n.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,l]of Object.entries(t.optionalDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f);let I=O0.makeDescriptor(A,"unknown"),C=this.ensureDependencyMeta(I);Object.assign(C,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=n}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(Cur("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(Cur("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(Cur("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!ALo.default.valid(t.range))throw new Error(`Invalid meta field range for '${O0.stringifyDescriptor(t)}'`);let r=O0.stringifyIdent(t),n=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(n);return o||a.set(n,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${O0.stringifyDescriptor(t)}'`);let r=O0.stringifyIdent(t),n=this.peerDependenciesMeta.get(r);return n||this.peerDependenciesMeta.set(r,n={}),n}setRawField(t,r,{after:n=[]}={}){let a=new Set(n.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,l=this.raw={},A=!1;for(let f of Object.keys(o))l[f]=o[f],A||(a.delete(f),a.size===0&&(l[t]=r,A=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=O0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(l=>({[l]:o.get(l)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let n=[],a=[];for(let o of this.dependencies.values()){let l=this.dependenciesMeta.get(O0.stringifyIdent(o)),A=!1;if(r&&l){let f=l.get(null);f&&f.optional&&(A=!0)}A?a.push(o):n.push(o)}n.length>0?t.dependencies=Object.assign({},...O0.sortDescriptors(n).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...O0.sortDescriptors(a).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...O0.sortDescriptors(this.devDependencies.values()).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...O0.sortDescriptors(this.peerDependencies.values()).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,l]of igt.sortMap(this.dependenciesMeta.entries(),([A,f])=>A))for(let[A,f]of igt.sortMap(l.entries(),([I,C])=>I!==null?`0${I}`:"1")){let I=A!==null?O0.stringifyDescriptor(O0.makeDescriptor(O0.parseIdent(o),A)):o,C={...f};r&&A===null&&delete C.optional,Object.keys(C).length!==0&&(t.dependenciesMeta[I]=C)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...igt.sortMap(this.peerDependenciesMeta.entries(),([o,l])=>o).map(([o,l])=>({[o]:l}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:l})=>({[(0,fxn.stringifyResolution)(o)]:l}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,l]of this.scripts.entries())t.scripts[o]=l}else delete t.scripts;return t}};ogt.Manifest=uve;uve.fileName="package.json";uve.allDependencies=["dependencies","devDependencies","peerDependencies"];uve.hardDependencies=["dependencies","devDependencies"];function Ixn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function hxn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function BZ(e){return e.replace(/\\/g,"/")}function ngt(e,{yamlCompatibilityMode:t}){return t?igt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function mxn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let n=r%2===0?"":"!",a=t.slice(r);return`${n}${e}=${a}`}function Cur(e,t){return t.length===1?mxn(e,t[0]):`(${t.map(r=>mxn(e,r)).join(" | ")})`}});var sM=H(zfe=>{"use strict";Object.defineProperty(zfe,"__esModule",{value:!0});zfe.Report=zfe.ReportError=void 0;zfe.isReportError=Cxn;var fLo=kW(),ILo=wt("stream"),hLo=wt("string_decoder"),mLo=M9(),CLo=15,_ur=class extends Error{constructor(t,r,n){super(r),this.reportExtra=n,this.reportCode=t}};zfe.ReportError=_ur;function Cxn(e){return typeof e.reportCode<"u"}var yur=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,n,a=new Promise(f=>{n=f}),o=f=>{let I=n;a=new Promise(C=>{n=C}),r=f,I()},l=(f=0)=>{o(r+1)},A=async function*(){for(;r{r=l}),a=(0,fLo.throttle)(l=>{let A=r;n=new Promise(f=>{r=f}),t=l,A()},1e3/CLo),o=async function*(){for(;;)await n,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let n=this.reportProgress(t);try{return await r(t)}finally{n.stop()}}startProgressSync(t,r){let n=this.reportProgress(t);try{return r(t)}finally{n.stop()}}reportInfoOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),n?.reportExtra?.(this))}reportWarningOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),n?.reportExtra?.(this))}reportErrorOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),n?.reportExtra?.(this))}reportExceptionOnce(t){Cxn(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(mLo.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new ILo.PassThrough,n=new hLo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` +`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};zfe.Report=yur});var Eur=H(agt=>{"use strict";Object.defineProperty(agt,"__esModule",{value:!0});agt.MultiFetcher=void 0;var _Lo=(Pa(),vi(Va)),yLo=M9(),bLo=sM(),ELo=_Lo.__importStar(uG()),bur=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));return n||null}getFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));if(!n)throw new bLo.ReportError(yLo.MessageName.FETCHER_NOT_FOUND,`${ELo.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return n}};agt.MultiFetcher=bur});var vur=H(cgt=>{"use strict";Object.defineProperty(cgt,"__esModule",{value:!0});cgt.MultiResolver=void 0;var SLo=(Pa(),vi(Va)),_xn=SLo.__importStar(uG()),Sur=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${_xn.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${_xn.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};cgt.MultiResolver=Sur});var Rur=H(lgt=>{"use strict";Object.defineProperty(lgt,"__esModule",{value:!0});lgt.VirtualFetcher=void 0;var vLo=(Pa(),vi(Va)),Bur=zs(),wur=vLo.__importStar(uG()),Tur=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=wur.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=wur.makeLocator(t,a),l=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,l,r)}getLocatorFilename(t){return wur.slugifyLocator(t)}async ensureVirtualLink(t,r,n){let a=r.packageFs.getRealPath(),o=n.project.configuration.get("virtualFolder"),l=this.getLocatorFilename(t),A=Bur.VirtualFS.makeVirtualPath(o,l,a),f=new Bur.AliasFS(A,{baseFs:r.packageFs,pathUtils:Bur.ppath});return{...r,packageFs:f}}};lgt.VirtualFetcher=Tur});var yxn=H(ggt=>{"use strict";Object.defineProperty(ggt,"__esModule",{value:!0});ggt.VirtualResolver=void 0;var ugt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};ggt.VirtualResolver=ugt;ugt.protocol="virtual:"});var Dur=H(Agt=>{"use strict";Object.defineProperty(Agt,"__esModule",{value:!0});Agt.WorkspaceFetcher=void 0;var bxn=zs(),Exn=jfe(),Nur=class{supports(t){return!!t.reference.startsWith(Exn.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let n=this.getWorkspace(t,r).cwd;return{packageFs:new bxn.CwdFS(n),prefixPath:bxn.PortablePath.dot,localPath:n}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(Exn.WorkspaceResolver.protocol.length))}};Agt.WorkspaceFetcher=Nur});var Bxn=H(JK=>{"use strict";Object.defineProperty(JK,"__esModule",{value:!0});JK.RESOLVED_RC_FILE=void 0;JK.resolveRcFiles=RLo;JK.getValue=NLo;JK.getValueByTree=Gur;JK.getSource=DLo;var BLo=(e,t,r)=>{let n=[...e];return n.reverse(),n.findIndex(t,r)};function r5e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var oM;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(oM||(oM={}));function Sxn(e){return typeof e>"u"?oM.Undefined:r5e(e)?oM.Object:Array.isArray(e)?oM.Array:oM.Literal}function Fur(e,t){return Object.hasOwn(e,t)}function wLo(e){return r5e(e)&&Fur(e,"onConflict")&&typeof e.onConflict=="string"}function TLo(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!wLo(e))return{onConflict:"default",value:e};if(Fur(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function vxn(e,t){let r=r5e(e)&&Fur(e,t)?e[t]:void 0;return TLo(r)}JK.RESOLVED_RC_FILE=Symbol();function Ave(e,t){return[e,t,JK.RESOLVED_RC_FILE]}function Zur(e){return Array.isArray(e)?e[2]===JK.RESOLVED_RC_FILE:!1}function kur(e,t){if(r5e(e)){let r={};for(let n of Object.keys(e))r[n]=kur(e[n],t);return Ave(t,r)}return Array.isArray(e)?Ave(t,e.map(r=>kur(r,t))):Ave(t,e)}function xur(e,t,r,n,a){let o,l=[],A=a,f=0;for(let C=a-1;C>=n;--C){let[b,E]=e[C],{onConflict:N,value:B}=vxn(E,r),F=Sxn(B);if(F!==oM.Undefined){if(o??=F,F!==o||N==="hardReset"){f=A;break}if(F===oM.Literal)return Ave(b,B);if(l.unshift([b,B]),N==="reset"){f=C;break}N==="extend"&&C===n&&(n=0),A=C}}if(typeof o>"u")return null;let I=l.map(([C])=>C).join(", ");switch(o){case oM.Array:return Ave(I,new Array().concat(...l.map(([C,b])=>b.map(E=>kur(E,C)))));case oM.Object:{let C=Object.assign({},...l.map(([,F])=>F)),b=Object.keys(C),E={},N=e.map(([F,Q])=>[F,vxn(Q,r).value]),B=BLo(N,([F,Q])=>{let X=Sxn(Q);return X!==oM.Object&&X!==oM.Undefined});if(B!==-1){let F=N.slice(B+1);for(let Q of b)E[Q]=xur(F,t,Q,0,F.length)}else for(let F of b)E[F]=xur(N,t,F,f,N.length);return Ave(I,E)}default:throw new Error("Assertion failed: Non-extendable value type")}}function RLo(e){return xur(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function NLo(e){return Zur(e)?e[1]:e}function Gur(e){let t=Zur(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>Gur(r));if(r5e(t)){let r={};for(let[n,a]of Object.entries(t))r[n]=Gur(a);return r}return t}function DLo(e){return Zur(e)?e[0]:null}});var dgt=H(n5e=>{"use strict";Object.defineProperty(n5e,"__esModule",{value:!0});n5e.getDefaultGlobalFolder=kLo;n5e.getHomeFolder=Txn;n5e.isFolderInside=xLo;var i$=zs(),wxn=wt("os");function kLo(){if(process.platform==="win32"){let e=i$.npath.toPortablePath(process.env.LOCALAPPDATA||i$.npath.join((0,wxn.homedir)(),"AppData","Local"));return i$.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=i$.npath.toPortablePath(process.env.XDG_DATA_HOME);return i$.ppath.resolve(e,"yarn/berry")}return i$.ppath.resolve(Txn(),".yarn/berry")}function Txn(){return i$.npath.toPortablePath((0,wxn.homedir)()||"/usr/local/share")}function xLo(e,t){let r=i$.ppath.relative(t,e);return r&&!r.startsWith("..")&&!i$.ppath.isAbsolute(r)}});var Dxn=H((Xjl,Nxn)=>{"use strict";var Lur=wt("https"),Vur=wt("http"),{URL:Rxn}=wt("url"),Pur=class extends Vur.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new Rxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?Vur:Lur).request(n);a.once("connect",(o,l,A)=>{a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200?r(null,l):(l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null))}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}},Wur=class extends Lur.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new Rxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?Vur:Lur).request(n);a.once("connect",(o,l,A)=>{if(a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200){let f=super.createConnection({...t,socket:l});r(null,f)}else l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null)}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}};Nxn.exports={HttpProxyAgent:Pur,HttpsProxyAgent:Wur}});var o$=H((s$,pgt)=>{"use strict";Object.defineProperty(s$,"__esModule",{value:!0});var kxn=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function GLo(e){return kxn.includes(e)}var FLo=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...kxn];function ZLo(e){return FLo.includes(e)}var LLo=["null","undefined","string","number","bigint","boolean","symbol"];function VLo(e){return LLo.includes(e)}function dve(e){return t=>typeof t===e}var{toString:xxn}=Object.prototype,i5e=e=>{let t=xxn.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&Xi.domElement(e))return"HTMLElement";if(ZLo(t))return t},Xb=e=>t=>i5e(t)===e;function Xi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(Xi.observable(e))return"Observable";if(Xi.array(e))return"Array";if(Xi.buffer(e))return"Buffer";let t=i5e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}Xi.undefined=dve("undefined");Xi.string=dve("string");var PLo=dve("number");Xi.number=e=>PLo(e)&&!Xi.nan(e);Xi.bigint=dve("bigint");Xi.function_=dve("function");Xi.null_=e=>e===null;Xi.class_=e=>Xi.function_(e)&&e.toString().startsWith("class ");Xi.boolean=e=>e===!0||e===!1;Xi.symbol=dve("symbol");Xi.numericString=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));Xi.array=(e,t)=>Array.isArray(e)?Xi.function_(t)?e.every(t):!0:!1;Xi.buffer=e=>{var t,r,n,a;return(a=(n=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||n===void 0?void 0:n.call(r,e))!==null&&a!==void 0?a:!1};Xi.blob=e=>Xb("Blob")(e);Xi.nullOrUndefined=e=>Xi.null_(e)||Xi.undefined(e);Xi.object=e=>!Xi.null_(e)&&(typeof e=="object"||Xi.function_(e));Xi.iterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};Xi.asyncIterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};Xi.generator=e=>{var t,r;return Xi.iterable(e)&&Xi.function_((t=e)===null||t===void 0?void 0:t.next)&&Xi.function_((r=e)===null||r===void 0?void 0:r.throw)};Xi.asyncGenerator=e=>Xi.asyncIterable(e)&&Xi.function_(e.next)&&Xi.function_(e.throw);Xi.nativePromise=e=>Xb("Promise")(e);var WLo=e=>{var t,r;return Xi.function_((t=e)===null||t===void 0?void 0:t.then)&&Xi.function_((r=e)===null||r===void 0?void 0:r.catch)};Xi.promise=e=>Xi.nativePromise(e)||WLo(e);Xi.generatorFunction=Xb("GeneratorFunction");Xi.asyncGeneratorFunction=e=>i5e(e)==="AsyncGeneratorFunction";Xi.asyncFunction=e=>i5e(e)==="AsyncFunction";Xi.boundFunction=e=>Xi.function_(e)&&!e.hasOwnProperty("prototype");Xi.regExp=Xb("RegExp");Xi.date=Xb("Date");Xi.error=Xb("Error");Xi.map=e=>Xb("Map")(e);Xi.set=e=>Xb("Set")(e);Xi.weakMap=e=>Xb("WeakMap")(e);Xi.weakSet=e=>Xb("WeakSet")(e);Xi.int8Array=Xb("Int8Array");Xi.uint8Array=Xb("Uint8Array");Xi.uint8ClampedArray=Xb("Uint8ClampedArray");Xi.int16Array=Xb("Int16Array");Xi.uint16Array=Xb("Uint16Array");Xi.int32Array=Xb("Int32Array");Xi.uint32Array=Xb("Uint32Array");Xi.float32Array=Xb("Float32Array");Xi.float64Array=Xb("Float64Array");Xi.bigInt64Array=Xb("BigInt64Array");Xi.bigUint64Array=Xb("BigUint64Array");Xi.arrayBuffer=Xb("ArrayBuffer");Xi.sharedArrayBuffer=Xb("SharedArrayBuffer");Xi.dataView=Xb("DataView");Xi.enumCase=(e,t)=>Object.values(t).includes(e);Xi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;Xi.urlInstance=e=>Xb("URL")(e);Xi.urlString=e=>{if(!Xi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};Xi.truthy=e=>!!e;Xi.falsy=e=>!e;Xi.nan=e=>Number.isNaN(e);Xi.primitive=e=>Xi.null_(e)||VLo(typeof e);Xi.integer=e=>Number.isInteger(e);Xi.safeInteger=e=>Number.isSafeInteger(e);Xi.plainObject=e=>{if(xxn.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};Xi.typedArray=e=>GLo(i5e(e));var OLo=e=>Xi.safeInteger(e)&&e>=0;Xi.arrayLike=e=>!Xi.nullOrUndefined(e)&&!Xi.function_(e)&&OLo(e.length);Xi.inRange=(e,t)=>{if(Xi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(Xi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var MLo=1,HLo=["innerHTML","ownerDocument","style","attributes","nodeValue"];Xi.domElement=e=>Xi.object(e)&&e.nodeType===MLo&&Xi.string(e.nodeName)&&!Xi.plainObject(e)&&HLo.every(t=>t in e);Xi.observable=e=>{var t,r,n,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(n=e)["@@observable"])===null||a===void 0?void 0:a.call(n)):!1};Xi.nodeStream=e=>Xi.object(e)&&Xi.function_(e.pipe)&&!Xi.observable(e);Xi.infinite=e=>e===1/0||e===-1/0;var Gxn=e=>t=>Xi.integer(t)&&Math.abs(t%2)===e;Xi.evenInteger=Gxn(0);Xi.oddInteger=Gxn(1);Xi.emptyArray=e=>Xi.array(e)&&e.length===0;Xi.nonEmptyArray=e=>Xi.array(e)&&e.length>0;Xi.emptyString=e=>Xi.string(e)&&e.length===0;var YLo=e=>Xi.string(e)&&!/\S/.test(e);Xi.emptyStringOrWhitespace=e=>Xi.emptyString(e)||YLo(e);Xi.nonEmptyString=e=>Xi.string(e)&&e.length>0;Xi.nonEmptyStringAndNotWhitespace=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e);Xi.emptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length===0;Xi.nonEmptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length>0;Xi.emptySet=e=>Xi.set(e)&&e.size===0;Xi.nonEmptySet=e=>Xi.set(e)&&e.size>0;Xi.emptyMap=e=>Xi.map(e)&&e.size===0;Xi.nonEmptyMap=e=>Xi.map(e)&&e.size>0;Xi.propertyKey=e=>Xi.any([Xi.string,Xi.number,Xi.symbol],e);Xi.formData=e=>Xb("FormData")(e);Xi.urlSearchParams=e=>Xb("URLSearchParams")(e);var Fxn=(e,t,r)=>{if(!Xi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};Xi.any=(e,...t)=>(Xi.array(e)?e:[e]).some(n=>Fxn(Array.prototype.some,n,t));Xi.all=(e,...t)=>Fxn(Array.prototype.every,e,t);var Mu=(e,t,r,n={})=>{if(!e){let{multipleValues:a}=n,o=a?`received values of types ${[...new Set(r.map(l=>`\`${Xi(l)}\``))].join(", ")}`:`received value of type \`${Xi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};s$.assert={undefined:e=>Mu(Xi.undefined(e),"undefined",e),string:e=>Mu(Xi.string(e),"string",e),number:e=>Mu(Xi.number(e),"number",e),bigint:e=>Mu(Xi.bigint(e),"bigint",e),function_:e=>Mu(Xi.function_(e),"Function",e),null_:e=>Mu(Xi.null_(e),"null",e),class_:e=>Mu(Xi.class_(e),"Class",e),boolean:e=>Mu(Xi.boolean(e),"boolean",e),symbol:e=>Mu(Xi.symbol(e),"symbol",e),numericString:e=>Mu(Xi.numericString(e),"string with a number",e),array:(e,t)=>{Mu(Xi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>Mu(Xi.buffer(e),"Buffer",e),blob:e=>Mu(Xi.blob(e),"Blob",e),nullOrUndefined:e=>Mu(Xi.nullOrUndefined(e),"null or undefined",e),object:e=>Mu(Xi.object(e),"Object",e),iterable:e=>Mu(Xi.iterable(e),"Iterable",e),asyncIterable:e=>Mu(Xi.asyncIterable(e),"AsyncIterable",e),generator:e=>Mu(Xi.generator(e),"Generator",e),asyncGenerator:e=>Mu(Xi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>Mu(Xi.nativePromise(e),"native Promise",e),promise:e=>Mu(Xi.promise(e),"Promise",e),generatorFunction:e=>Mu(Xi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>Mu(Xi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>Mu(Xi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>Mu(Xi.boundFunction(e),"Function",e),regExp:e=>Mu(Xi.regExp(e),"RegExp",e),date:e=>Mu(Xi.date(e),"Date",e),error:e=>Mu(Xi.error(e),"Error",e),map:e=>Mu(Xi.map(e),"Map",e),set:e=>Mu(Xi.set(e),"Set",e),weakMap:e=>Mu(Xi.weakMap(e),"WeakMap",e),weakSet:e=>Mu(Xi.weakSet(e),"WeakSet",e),int8Array:e=>Mu(Xi.int8Array(e),"Int8Array",e),uint8Array:e=>Mu(Xi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>Mu(Xi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>Mu(Xi.int16Array(e),"Int16Array",e),uint16Array:e=>Mu(Xi.uint16Array(e),"Uint16Array",e),int32Array:e=>Mu(Xi.int32Array(e),"Int32Array",e),uint32Array:e=>Mu(Xi.uint32Array(e),"Uint32Array",e),float32Array:e=>Mu(Xi.float32Array(e),"Float32Array",e),float64Array:e=>Mu(Xi.float64Array(e),"Float64Array",e),bigInt64Array:e=>Mu(Xi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>Mu(Xi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>Mu(Xi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>Mu(Xi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>Mu(Xi.dataView(e),"DataView",e),enumCase:(e,t)=>Mu(Xi.enumCase(e,t),"EnumCase",e),urlInstance:e=>Mu(Xi.urlInstance(e),"URL",e),urlString:e=>Mu(Xi.urlString(e),"string with a URL",e),truthy:e=>Mu(Xi.truthy(e),"truthy",e),falsy:e=>Mu(Xi.falsy(e),"falsy",e),nan:e=>Mu(Xi.nan(e),"NaN",e),primitive:e=>Mu(Xi.primitive(e),"primitive",e),integer:e=>Mu(Xi.integer(e),"integer",e),safeInteger:e=>Mu(Xi.safeInteger(e),"integer",e),plainObject:e=>Mu(Xi.plainObject(e),"plain object",e),typedArray:e=>Mu(Xi.typedArray(e),"TypedArray",e),arrayLike:e=>Mu(Xi.arrayLike(e),"array-like",e),domElement:e=>Mu(Xi.domElement(e),"HTMLElement",e),observable:e=>Mu(Xi.observable(e),"Observable",e),nodeStream:e=>Mu(Xi.nodeStream(e),"Node.js Stream",e),infinite:e=>Mu(Xi.infinite(e),"infinite number",e),emptyArray:e=>Mu(Xi.emptyArray(e),"empty array",e),nonEmptyArray:e=>Mu(Xi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>Mu(Xi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>Mu(Xi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>Mu(Xi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>Mu(Xi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>Mu(Xi.emptyObject(e),"empty object",e),nonEmptyObject:e=>Mu(Xi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>Mu(Xi.emptySet(e),"empty set",e),nonEmptySet:e=>Mu(Xi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>Mu(Xi.emptyMap(e),"empty map",e),nonEmptyMap:e=>Mu(Xi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>Mu(Xi.propertyKey(e),"PropertyKey",e),formData:e=>Mu(Xi.formData(e),"FormData",e),urlSearchParams:e=>Mu(Xi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>Mu(Xi.evenInteger(e),"even integer",e),oddInteger:e=>Mu(Xi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>Mu(Xi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>Mu(Xi.inRange(e,t),"in range",e),any:(e,...t)=>Mu(Xi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>Mu(Xi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(Xi,{class:{value:Xi.class_},function:{value:Xi.function_},null:{value:Xi.null_}});Object.defineProperties(s$.assert,{class:{value:s$.assert.class_},function:{value:s$.assert.function_},null:{value:s$.assert.null_}});s$.default=Xi;pgt.exports=Xi;pgt.exports.default=Xi;pgt.exports.assert=s$.assert});var Zxn=H((Jjl,Our)=>{"use strict";var fgt=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},Igt=class e{static fn(t){return(...r)=>new e((n,a,o)=>{r.push(o),t(...r).then(n,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,n)=>{this._reject=n;let a=A=>{(!this._isCanceled||!l.shouldReject)&&(this._isPending=!1,r(A))},o=A=>{this._isPending=!1,n(A)},l=A=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(A)};return Object.defineProperties(l,{shouldReject:{get:()=>this._rejectOnCancel,set:A=>{this._rejectOnCancel=A}}}),t(a,o,l)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new fgt(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(Igt.prototype,Promise.prototype);Our.exports=Igt;Our.exports.CancelError=fgt});var Lxn=H((Hur,Yur)=>{"use strict";Object.defineProperty(Hur,"__esModule",{value:!0});function QLo(e){return e.encrypted}var Mur=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let n=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",l=()=>{n&&r.connect(),QLo(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?l():e.connecting?e.once("connect",l):e.destroyed&&o&&r.close(e._hadError)};Hur.default=Mur;Yur.exports=Mur;Yur.exports.default=Mur});var Vxn=H((Xur,Jur)=>{"use strict";Object.defineProperty(Xur,"__esModule",{value:!0});var XLo=Lxn(),JLo=wt("util"),ULo=Number(process.versions.node.split(".")[0]),Qur=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=A=>{let f=A.emit.bind(A);A.emit=(I,...C)=>(I==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,A.emit=f),f(I,...C))};r(e);let n=()=>{t.abort=Date.now(),(!t.response||ULo>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",n);let a=A=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,JLo.types.isProxy(A))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};A.prependOnceListener("lookup",f),XLo.default(A,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(A.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var A;t.upload=Date.now(),t.phases.request=t.upload-((A=t.secureConnect)!==null&&A!==void 0?A:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",A=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,A.timings=t,r(A),A.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),A.prependOnceListener("aborted",n)}),t};Xur.default=Qur;Jur.exports=Qur;Jur.exports.default=Qur});var Qxn=H((Ujl,jur)=>{"use strict";var{V4MAPPED:KLo,ADDRCONFIG:jLo,ALL:Yxn,promises:{Resolver:Pxn},lookup:zLo}=wt("dns"),{promisify:Uur}=wt("util"),qLo=wt("os"),pve=Symbol("cacheableLookupCreateConnection"),Kur=Symbol("cacheableLookupInstance"),Wxn=Symbol("expires"),$Lo=typeof Yxn=="number",Oxn=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},e9o=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},Mxn=()=>{let e=!1,t=!1;for(let r of Object.values(qLo.networkInterfaces()))for(let n of r)if(!n.internal&&(n.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},t9o=e=>Symbol.iterator in e,Hxn={ttl:!0},r9o={all:!0},hgt=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:n=3600,errorTtl:a=.15,resolver:o=new Pxn,lookup:l=zLo}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=Uur(l),this._resolver instanceof Pxn?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Uur(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Uur(this._resolver.resolve6.bind(this._resolver))),this._iface=Mxn(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,n<1)this._fallback=!1;else{this._fallback=!0;let A=setInterval(()=>{this._hostnamesToFallback.clear()},n*1e3);A.unref&&A.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,n){if(typeof r=="function"?(n=r,r={}):typeof r=="number"&&(r={family:r}),!n)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?n(null,a):n(null,a.address,a.family,a.expires,a.ttl)},n)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let n=await this.query(t);if(r.family===6){let a=n.filter(o=>o.family===6);r.hints&KLo&&($Lo&&r.hints&Yxn||a.length===0)?e9o(n):n=a}else r.family===4&&(n=n.filter(a=>a.family===4));if(r.hints&jLo){let{_iface:a}=this;n=n.filter(o=>o.family===6?a.has6:a.has4)}if(n.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?n:n[0]}async query(t){let r=await this._cache.get(t);if(!r){let n=this._pending[t];if(n)r=await n;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(n=>({...n})),r}async _resolve(t){let r=async I=>{try{return await I}catch(C){if(C.code==="ENODATA"||C.code==="ENOTFOUND")return[];throw C}},[n,a]=await Promise.all([this._resolve4(t,Hxn),this._resolve6(t,Hxn)].map(I=>r(I))),o=0,l=0,A=0,f=Date.now();for(let I of n)I.family=4,I.expires=f+I.ttl*1e3,o=Math.max(o,I.ttl);for(let I of a)I.family=6,I.expires=f+I.ttl*1e3,l=Math.max(l,I.ttl);return n.length>0?a.length>0?A=Math.min(o,l):A=o:A=l,{entries:[...n,...a],cacheTtl:A}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,n){if(this.maxTtl>0&&n>0){n=Math.min(n,this.maxTtl)*1e3,r[Wxn]=Date.now()+n;try{await this._cache.set(t,r,n)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}t9o(this._cache)&&this._tick(n)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,r9o);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let n=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,n),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let n=1/0,a=Date.now();for(let[o,l]of this._cache){let A=l[Wxn];a>=A?this._cache.delete(o):A("lookup"in r||(r.lookup=this.lookup),t[pve](r,n))}uninstall(t){if(Oxn(t),t[pve]){if(t[Kur]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[pve],delete t[pve],delete t[Kur]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=Mxn(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};jur.exports=hgt;jur.exports.default=hgt});var Uxn=H((Kjl,Jxn)=>{"use strict";var n9o="text/plain",i9o="us-ascii",Xxn=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),s9o=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===i9o)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length!==0||f&&f!==n9o)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`},o9o=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return s9o(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let l=a.pathname.split("/"),A=l[l.length-1];Xxn(A,t.removeDirectoryIndex)&&(l=l.slice(0,l.length-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])Xxn(l,t.removeQueryParameters)&&a.searchParams.delete(l);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};Jxn.exports=o9o});var zxn=H((jjl,jxn)=>{jxn.exports=Kxn;function Kxn(e,t){if(e&&t)return Kxn(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),a=0;a{var qxn=zxn();zur.exports=qxn(mgt);zur.exports.strict=qxn($xn);mgt.proto=mgt(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return mgt(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return $xn(this)},configurable:!0})});function mgt(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function $xn(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var qur=H((qjl,tGn)=>{var a9o=Cgt(),c9o=function(){},l9o=function(e){return e.setHeader&&typeof e.abort=="function"},u9o=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},eGn=function(e,t,r){if(typeof t=="function")return eGn(e,null,t);t||(t={}),r=a9o(r||c9o);var n=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,l=t.writable||t.writable!==!1&&e.writable,A=!1,f=function(){e.writable||I()},I=function(){l=!1,o||r.call(e)},C=function(){o=!1,l||r.call(e)},b=function(Q){r.call(e,Q?new Error("exited with error code: "+Q):null)},E=function(Q){r.call(e,Q)},N=function(){process.nextTick(B)},B=function(){if(!A){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(l&&!(n&&n.ended&&!n.destroyed))return r.call(e,new Error("premature close"))}},F=function(){e.req.on("finish",I)};return l9o(e)?(e.on("complete",I),e.on("abort",N),e.req?F():e.on("request",F)):l&&!n&&(e.on("end",f),e.on("close",f)),u9o(e)&&e.on("exit",b),e.on("end",C),e.on("finish",I),t.error!==!1&&e.on("error",E),e.on("close",N),function(){A=!0,e.removeListener("complete",I),e.removeListener("abort",N),e.removeListener("request",F),e.req&&e.req.removeListener("finish",I),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",I),e.removeListener("exit",b),e.removeListener("end",C),e.removeListener("error",E),e.removeListener("close",N)}};tGn.exports=eGn});var iGn=H(($jl,nGn)=>{var g9o=Cgt(),A9o=qur(),_gt;try{_gt=wt("fs")}catch{}var s5e=function(){},d9o=/^v?\.0/.test(process.version),ygt=function(e){return typeof e=="function"},p9o=function(e){return!d9o||!_gt?!1:(e instanceof(_gt.ReadStream||s5e)||e instanceof(_gt.WriteStream||s5e))&&ygt(e.close)},f9o=function(e){return e.setHeader&&ygt(e.abort)},I9o=function(e,t,r,n){n=g9o(n);var a=!1;e.on("close",function(){a=!0}),A9o(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,p9o(e))return e.close(s5e);if(f9o(e))return e.abort();if(ygt(e.destroy))return e.destroy();n(l||new Error("stream was destroyed"))}}},rGn=function(e){e()},h9o=function(e,t){return e.pipe(t)},m9o=function(){var e=Array.prototype.slice.call(arguments),t=ygt(e[e.length-1]||s5e)&&e.pop()||s5e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,n=e.map(function(a,o){var l=o0;return I9o(a,l,A,function(f){r||(r=f),f&&n.forEach(rGn),!l&&(n.forEach(rGn),t(r))})});return e.reduce(h9o)};nGn.exports=m9o});var oGn=H((e6l,sGn)=>{"use strict";var{PassThrough:C9o}=wt("stream");sGn.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,n=r==="buffer",a=!1;t?a=!(r||n):r=r||"utf8",n&&(r=null);let o=new C9o({objectMode:a});r&&o.setEncoding(r);let l=0,A=[];return o.on("data",f=>{A.push(f),a?l=A.length:l+=f.length}),o.getBufferedValue=()=>t?A:n?Buffer.concat(A,l):A.join(""),o.getBufferedLength=()=>l,o}});var aGn=H((t6l,fve)=>{"use strict";var{constants:_9o}=wt("buffer"),y9o=iGn(),b9o=oGn(),bgt=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function Egt(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,n;return await new Promise((a,o)=>{let l=A=>{A&&n.getBufferedLength()<=_9o.MAX_LENGTH&&(A.bufferedData=n.getBufferedValue()),o(A)};n=y9o(e,b9o(t),A=>{if(A){l(A);return}a()}),n.on("data",()=>{n.getBufferedLength()>r&&l(new bgt)})}),n.getBufferedValue()}fve.exports=Egt;fve.exports.default=Egt;fve.exports.buffer=(e,t)=>Egt(e,{...t,encoding:"buffer"});fve.exports.array=(e,t)=>Egt(e,{...t,array:!0});fve.exports.MaxBufferError=bgt});var egr=H((n6l,cGn)=>{"use strict";var E9o=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),S9o=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),v9o=new Set([500,502,503,504]),B9o={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},w9o={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function qfe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function T9o(e){return e?v9o.has(e.status):!0}function $ur(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let n of r){let[a,o]=n.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function R9o(e){let t=[];for(let r in e){let n=e[r];t.push(n===!0?r:r+"="+n)}if(t.length)return t.join(", ")}cGn.exports=class{constructor(t,r,{shared:n,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:l,_fromObject:A}={}){if(A){this._fromObject(A);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=n!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=$ur(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=$ur(t.headers["cache-control"]),l&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":R9o(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&S9o.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||E9o.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=$ur(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let n of r)if(t.headers[n]!==this._reqHeaders[n])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let n in t)B9o[n]||(r[n]=t[n]);if(t.connection){let n=t.connection.trim().split(/\s*,\s*/);for(let a of n)delete r[a]}if(r.warning){let n=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));n.length?r.warning=n.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return qfe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return qfe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return qfe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let n=Date.parse(this._resHeaders.expires);return Number.isNaN(n)||nn)return Math.max(t,(r-n)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+qfe(this._rescc["stale-if-error"]),n=t+qfe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,n)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+qfe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+qfe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&T9o(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let n=!1;if(r.status!==void 0&&r.status!=304?n=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?n=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?n=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?n=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(n=!0),!n)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let l in this._resHeaders)a[l]=l in r.headers&&!w9o[l]?r.headers[l]:this._resHeaders[l];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var Sgt=H((i6l,lGn)=>{"use strict";lGn.exports=e=>{let t={};for(let[r,n]of Object.entries(e))t[r.toLowerCase()]=n;return t}});var gGn=H((s6l,uGn)=>{"use strict";var N9o=wt("stream").Readable,D9o=Sgt(),tgr=class extends N9o{constructor(t,r,n,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(n instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=D9o(r),this.body=n,this.url=a}_read(){this.push(this.body),this.push(null)}};uGn.exports=tgr});var dGn=H((o6l,AGn)=>{"use strict";var k9o=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];AGn.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(k9o));for(let n of r)n in t||(t[n]=typeof e[n]=="function"?e[n].bind(e):e[n])}});var fGn=H((a6l,pGn)=>{"use strict";var x9o=wt("stream").PassThrough,G9o=dGn(),F9o=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new x9o;return G9o(e,t),e.pipe(t)};pGn.exports=F9o});var IGn=H(rgr=>{rgr.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",n=Array.isArray(t);r=n?"[":"{";var a=!0;for(var o in t){var l=typeof t[o]=="function"||!n&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!l&&(a||(r+=","),a=!1,n?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=n?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};rgr.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var _Gn=H((l6l,CGn)=>{"use strict";var Z9o=wt("events"),hGn=IGn(),L9o=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(wt(t[r]))(e)}return new Map},mGn=["sqlite","postgres","mysql","mongo","redis","tiered"],ngr=class extends Z9o{constructor(t,{emitErrors:r=!0,...n}={}){if(super(),this.opts={namespace:"keyv",serialize:hGn.stringify,deserialize:hGn.parse,...typeof t=="string"?{uri:t}:t,...n},!this.opts.store){let o={...this.opts};this.opts.store=L9o(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[l,A]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(A);if(!(this.opts.store.namespace&&!l.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(l);continue}yield[this._getKeyUnprefix(l),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return mGn.includes(this.opts.store.opts.dialect)||mGn.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:n}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&n.getMany===void 0){let l=[];for(let A of o)l.push(Promise.resolve().then(()=>n.get(A)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(A).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(l).then(A=>{let f=[];for(let I of A)f.push(I.value);return f})}return Promise.resolve().then(()=>a?n.getMany(o):n.get(o)).then(l=>typeof l=="string"?this.opts.deserialize(l):this.opts.compression?this.opts.deserialize(l):l).then(l=>{if(l!=null)return a?l.map((A,f)=>{if(typeof A=="string"&&(A=this.opts.deserialize(A)),A!=null){if(typeof A.expires=="number"&&Date.now()>A.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?A:A.value}}):typeof l.expires=="number"&&Date.now()>l.expires?this.delete(t).then(()=>{}):r&&r.raw?l:l.value})}set(t,r,n){let a=this._getKeyPrefix(t);typeof n>"u"&&(n=this.opts.ttl),n===0&&(n=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let l=typeof n=="number"?Date.now()+n:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:l},this.opts.serialize(r)}).then(l=>o.set(a,l,n)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let l of a)o.push(r.delete(l));return Promise.allSettled(o).then(l=>l.every(A=>A.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let n=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(n))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:n}=this.opts;return Promise.resolve().then(async()=>typeof n.has=="function"?n.has(r):await n.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};CGn.exports=ngr});var EGn=H((g6l,bGn)=>{"use strict";var V9o=wt("events"),vgt=wt("url"),P9o=Uxn(),W9o=aGn(),igr=egr(),yGn=gGn(),O9o=Sgt(),M9o=fGn(),H9o=_Gn(),o5e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new H9o({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,n)=>{let a;if(typeof r=="string")a=sgr(vgt.parse(r)),r={};else if(r instanceof vgt.URL)a=sgr(vgt.parse(r.toString())),r={};else{let[b,...E]=(r.path||"").split("?"),N=E.length>0?`?${E.join("?")}`:"";a=sgr({...r,pathname:b,search:N})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...Y9o(a)},r.headers=O9o(r.headers);let o=new V9o,l=P9o(vgt.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),A=`${r.method}:${l}`,f=!1,I=!1,C=b=>{I=!0;let E=!1,N,B=new Promise(Q=>{N=()=>{E||(E=!0,Q())}}),F=Q=>{if(f&&!b.forceRefresh){Q.status=Q.statusCode;let ae=igr.fromObject(f.cachePolicy).revalidatedPolicy(b,Q);if(!ae.modified){let ne=ae.policy.responseHeaders();Q=new yGn(f.statusCode,ne,f.body,f.url),Q.cachePolicy=ae.policy,Q.fromCache=!0}}Q.fromCache||(Q.cachePolicy=new igr(b,Q,b),Q.fromCache=!1);let X;b.cache&&Q.cachePolicy.storable()?(X=M9o(Q),(async()=>{try{let ae=W9o.buffer(Q);if(await Promise.race([B,new Promise(ue=>Q.once("end",ue))]),E)return;let ne=await ae,ce={cachePolicy:Q.cachePolicy.toObject(),url:Q.url,statusCode:Q.fromCache?f.statusCode:Q.statusCode,body:ne},fe=b.strictTtl?Q.cachePolicy.timeToLive():void 0;b.maxTtl&&(fe=fe?Math.min(fe,b.maxTtl):b.maxTtl),await this.cache.set(A,ce,fe)}catch(ae){o.emit("error",new e.CacheError(ae))}})()):b.cache&&f&&(async()=>{try{await this.cache.delete(A)}catch(ae){o.emit("error",new e.CacheError(ae))}})(),o.emit("response",X||Q),typeof n=="function"&&n(X||Q)};try{let Q=t(b,F);Q.once("error",N),Q.once("abort",N),o.emit("request",Q)}catch(Q){o.emit("error",new e.RequestError(Q))}};return(async()=>{let b=async N=>{await Promise.resolve();let B=N.cache?await this.cache.get(A):void 0;if(typeof B>"u")return C(N);let F=igr.fromObject(B.cachePolicy);if(F.satisfiesWithoutRevalidation(N)&&!N.forceRefresh){let Q=F.responseHeaders(),X=new yGn(B.statusCode,Q,B.body,B.url);X.cachePolicy=F,X.fromCache=!0,o.emit("response",X),typeof n=="function"&&n(X)}else f=B,N.headers=F.revalidationHeaders(N),C(N)},E=N=>o.emit("error",new e.CacheError(N));this.cache.once("error",E),o.on("response",()=>this.cache.removeListener("error",E));try{await b(r)}catch(N){r.automaticFailover&&!I&&C(r),o.emit("error",new e.CacheError(N))}})(),o}}};function Y9o(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function sgr(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}o5e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};o5e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};bGn.exports=o5e});var vGn=H((p6l,SGn)=>{"use strict";var Q9o=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];SGn.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(Q9o)),n={};for(let a of r)a in t||(n[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,n),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var wGn=H((f6l,BGn)=>{"use strict";var{Transform:X9o,PassThrough:J9o}=wt("stream"),ogr=wt("zlib"),U9o=vGn();BGn.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof ogr.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let n=!0,a=new X9o({transform(A,f,I){n=!1,I(null,A)},flush(A){A()}}),o=new J9o({autoDestroy:!1,destroy(A,f){e.destroy(),f(A)}}),l=r?ogr.createBrotliDecompress():ogr.createUnzip();return l.once("error",A=>{if(n&&!e.readable){o.end();return}o.destroy(A)}),U9o(e,o),e.pipe(a).pipe(l).pipe(o),o}});var cgr=H((I6l,TGn)=>{"use strict";var agr=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[n,a]of this.oldCache.entries())this.onEviction(n,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};TGn.exports=agr});var ugr=H((h6l,kGn)=>{"use strict";var K9o=wt("events"),j9o=wt("tls"),z9o=wt("http2"),q9o=cgr(),wZ=Symbol("currentStreamsCount"),RGn=Symbol("request"),aM=Symbol("cachedOriginSet"),Ive=Symbol("gracefullyClosing"),$9o=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],eVo=(e,t,r)=>{let n=0,a=e.length;for(;n>>1;r(e[o],t)?n=o+1:a=o}return n},tVo=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,lgr=(e,t)=>{for(let r of e)r[aM].lengtht[aM].includes(n))&&r[wZ]+t[wZ]<=t.remoteSettings.maxConcurrentStreams&&DGn(r)},rVo=(e,t)=>{for(let r of e)t[aM].lengthr[aM].includes(n))&&t[wZ]+r[wZ]<=r.remoteSettings.maxConcurrentStreams&&DGn(t)},NGn=({agent:e,isFree:t})=>{let r={};for(let n in e.sessions){let o=e.sessions[n].filter(l=>{let A=l[$fe.kCurrentStreamsCount]{e[Ive]=!0,e[wZ]===0&&e.close()},$fe=class e extends K9o{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:n=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=n,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new q9o({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let n of $9o)t[n]&&(r+=`:${t[n]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let n=this.queue[t][r];this._sessionsCount{Array.isArray(n)?(n=[...n],a()):n=[{resolve:a,reject:o}];let l=this.normalizeOptions(r),A=e.normalizeOrigin(t,r&&r.servername);if(A===void 0){for(let{reject:C}of n)C(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(l in this.sessions){let C=this.sessions[l],b=-1,E=-1,N;for(let B of C){let F=B.remoteSettings.maxConcurrentStreams;if(F=F||B[Ive]||B.destroyed)continue;N||(b=F),Q>E&&(N=B,E=Q)}}if(N){if(n.length!==1){for(let{reject:B}of n){let F=new Error(`Expected the length of listeners to be 1, got ${n.length}. +Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return}n[0].resolve(N);return}}if(l in this.queue){if(A in this.queue[l]){this.queue[l][A].listeners.push(...n),this._tryToCreateNewSession(l,A);return}}else this.queue[l]={};let f=()=>{l in this.queue&&this.queue[l][A]===I&&(delete this.queue[l][A],Object.keys(this.queue[l]).length===0&&delete this.queue[l])},I=()=>{let C=`${A}:${l}`,b=!1;try{let E=z9o.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(C),...r});E[wZ]=0,E[Ive]=!1;let N=()=>E[wZ]{this.tlsSessionCache.set(C,Q)}),E.once("error",Q=>{for(let{reject:X}of n)X(Q);this.tlsSessionCache.delete(C)}),E.setTimeout(this.timeout,()=>{E.destroy()}),E.once("close",()=>{if(b){B&&this._freeSessionsCount--,this._sessionsCount--;let Q=this.sessions[l];Q.splice(Q.indexOf(E),1),Q.length===0&&delete this.sessions[l]}else{let Q=new Error("Session closed without receiving a SETTINGS frame");Q.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:X}of n)X(Q);f()}this._tryToCreateNewSession(l,A)});let F=()=>{if(!(!(l in this.queue)||!N())){for(let Q of E[aM])if(Q in this.queue[l]){let{listeners:X}=this.queue[l][Q];for(;X.length!==0&&N();)X.shift().resolve(E);let ae=this.queue[l];if(ae[Q].listeners.length===0&&(delete ae[Q],Object.keys(ae).length===0)){delete this.queue[l];break}if(!N())break}}};E.on("origin",()=>{E[aM]=E.originSet,N()&&(F(),lgr(this.sessions[l],E))}),E.once("remoteSettings",()=>{if(E.ref(),E.unref(),this._sessionsCount++,I.destroyed){let Q=new Error("Agent has been destroyed");for(let X of n)X.reject(Q);E.destroy();return}E[aM]=E.originSet;{let Q=this.sessions;if(l in Q){let X=Q[l];X.splice(eVo(X,E,tVo),0,E)}else Q[l]=[E]}this._freeSessionsCount+=1,b=!0,this.emit("session",E),F(),f(),E[wZ]===0&&this._freeSessionsCount>this.maxFreeSessions&&E.close(),n.length!==0&&(this.getSession(A,r,n),n.length=0),E.on("remoteSettings",()=>{F(),lgr(this.sessions[l],E)})}),E[RGn]=E.request,E.request=(Q,X)=>{if(E[Ive])throw new Error("The session is gracefully closing. No new streams are allowed.");let ae=E[RGn](Q,X);return E.ref(),++E[wZ],E[wZ]===E.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,ae.once("close",()=>{if(B=N(),--E[wZ],!E.destroyed&&!E.closed&&(rVo(this.sessions[l],E),N()&&!E.closed)){B||(this._freeSessionsCount++,B=!0);let ne=E[wZ]===0;ne&&E.unref(),ne&&(this._freeSessionsCount>this.maxFreeSessions||E[Ive])?E.close():(lgr(this.sessions[l],E),F())}}),ae}}catch(E){for(let N of n)N.reject(E);f()}};I.listeners=n,I.completed=!1,I.destroyed=!1,this.queue[l][A]=I,this._tryToCreateNewSession(l,A)})}request(t,r,n,a){return new Promise((o,l)=>{this.getSession(t,r,[{reject:l,resolve:A=>{try{o(A.request(n,a))}catch(f){l(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let n=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),j9o.connect(n,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[wZ]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let n of r)n.destroy(t);for(let r of Object.values(this.queue))for(let n of Object.values(r))n.destroyed=!0;this.queue={}}get freeSessions(){return NGn({agent:this,isFree:!0})}get busySessions(){return NGn({agent:this,isFree:!1})}};$fe.kCurrentStreamsCount=wZ;$fe.kGracefullyClosing=Ive;kGn.exports={Agent:$fe,globalAgent:new $fe}});var Agr=H((m6l,xGn)=>{"use strict";var{Readable:nVo}=wt("stream"),ggr=class extends nVo{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};xGn.exports=ggr});var dgr=H((C6l,GGn)=>{"use strict";GGn.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var ZGn=H((_6l,FGn)=>{"use strict";FGn.exports=(e,t,r)=>{for(let n of r)e.on(n,(...a)=>t.emit(n,...a))}});var VGn=H((y6l,LGn)=>{"use strict";LGn.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var WGn=H((E6l,PGn)=>{"use strict";var hve=(e,t,r)=>{PGn.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};hve(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],n=Array.isArray(r);return n&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${n?"one of":"of"} type ${r}. Received ${typeof e[2]}`});hve(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);hve(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);hve(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);hve(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);hve(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var mgr=H((S6l,JGn)=>{"use strict";var iVo=wt("http2"),{Writable:sVo}=wt("stream"),{Agent:OGn,globalAgent:oVo}=ugr(),aVo=Agr(),cVo=dgr(),lVo=ZGn(),uVo=VGn(),{ERR_INVALID_ARG_TYPE:pgr,ERR_INVALID_PROTOCOL:gVo,ERR_HTTP_HEADERS_SENT:MGn,ERR_INVALID_HTTP_TOKEN:AVo,ERR_HTTP_INVALID_HEADER_VALUE:dVo,ERR_INVALID_CHAR:pVo}=WGn(),{HTTP2_HEADER_STATUS:HGn,HTTP2_HEADER_METHOD:YGn,HTTP2_HEADER_PATH:QGn,HTTP2_METHOD_CONNECT:fVo}=iVo.constants,dG=Symbol("headers"),fgr=Symbol("origin"),Igr=Symbol("session"),XGn=Symbol("options"),Bgt=Symbol("flushedHeaders"),a5e=Symbol("jobs"),IVo=/^[\^`\-\w!#$%&*+.|~]+$/,hVo=/[^\t\u0020-\u007E\u0080-\u00FF]/,hgr=class extends sVo{constructor(t,r,n){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=cVo(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(n=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[Igr]=r.h2session;else if(r.agent===!1)this.agent=new OGn({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new OGn({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=oVo;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new pgr("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new gVo(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,l=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:A}=r;if(r.timeout=void 0,this[dG]=Object.create(null),this[a5e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,I]of Object.entries(r.headers))this.setHeader(f,I);r.auth&&!("authorization"in this[dG])&&(this[dG].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[XGn]=r,o===443?(this[fgr]=`https://${l}`,":authority"in this[dG]||(this[dG][":authority"]=l)):(this[fgr]=`https://${l}:${o}`,":authority"in this[dG]||(this[dG][":authority"]=`${l}:${o}`)),A&&this.setTimeout(A),n&&this.once("response",n),this[Bgt]=!1}get method(){return this[dG][YGn]}set method(t){t&&(this[dG][YGn]=t.toUpperCase())}get path(){return this[dG][QGn]}set path(t){t&&(this[dG][QGn]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,n){if(this._mustNotHaveABody){n(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,n);this._request?a():this[a5e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[a5e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[Bgt]||this.destroyed)return;this[Bgt]=!0;let t=this.method===fVo,r=n=>{if(this._request=n,this.destroyed){n.destroy();return}t||lVo(n,this,["timeout","continue","close","error"]);let a=l=>(...A)=>{!this.writable&&!this.destroyed?l(...A):this.once("finish",()=>{l(...A)})};n.once("response",a((l,A,f)=>{let I=new aVo(this.socket,n.readableHighWaterMark);this.res=I,I.req=this,I.statusCode=l[HGn],I.headers=l,I.rawHeaders=f,I.once("end",()=>{this.aborted?(I.aborted=!0,I.emit("aborted")):(I.complete=!0,I.socket=null,I.connection=null)}),t?(I.upgrade=!0,this.emit("connect",I,n,Buffer.alloc(0))?this.emit("close"):n.destroy()):(n.on("data",C=>{!I._dumped&&!I.push(C)&&n.pause()}),n.once("end",()=>{I.push(null)}),this.emit("response",I)||I._dump())})),n.once("headers",a(l=>this.emit("information",{statusCode:l[HGn]}))),n.once("trailers",a((l,A,f)=>{let{res:I}=this;I.trailers=l,I.rawTrailers=f}));let{socket:o}=n.session;this.socket=o,this.connection=o;for(let l of this[a5e])l();this.emit("socket",this.socket)};if(this[Igr])try{r(this[Igr].request(this[dG]))}catch(n){this.emit("error",n)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[fgr],this[XGn],this[dG]))}catch(n){this.emit("error",n)}}}getHeader(t){if(typeof t!="string")throw new pgr("name","string",t);return this[dG][t.toLowerCase()]}get headersSent(){return this[Bgt]}removeHeader(t){if(typeof t!="string")throw new pgr("name","string",t);if(this.headersSent)throw new MGn("remove");delete this[dG][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new MGn("set");if(typeof t!="string"||!IVo.test(t)&&!uVo(t))throw new AVo("Header name",t);if(typeof r>"u")throw new dVo(r,t);if(hVo.test(r))throw new pVo("header content",t);this[dG][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let n=()=>this._request.setTimeout(t,r);return this._request?n():this[a5e].push(n),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};JGn.exports=hgr});var KGn=H((v6l,UGn)=>{"use strict";var mVo=wt("tls");UGn.exports=(e={},t=mVo.connect)=>new Promise((r,n)=>{let a=!1,o,l=async()=>{await f,o.off("timeout",A),o.off("error",n),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},A=async()=>{a=!0,l()},f=(async()=>{try{o=await t(e,l),o.on("error",n),o.once("timeout",A)}catch(I){n(I)}})()})});var zGn=H((B6l,jGn)=>{"use strict";var CVo=wt("net");jGn.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),CVo.isIP(t)?"":t}});var eFn=H((w6l,_gr)=>{"use strict";var qGn=wt("http"),Cgr=wt("https"),_Vo=KGn(),yVo=cgr(),bVo=mgr(),EVo=zGn(),SVo=dgr(),wgt=new yVo({maxSize:100}),c5e=new Map,$Gn=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let n=()=>{e.emit("free",t,r)};t.on("free",n);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",n),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},vVo=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!wgt.has(t)){if(c5e.has(t))return(await c5e.get(t)).alpnProtocol;let{path:r,agent:n}=e;e.path=e.socketPath;let a=_Vo(e);c5e.set(t,a);try{let{socket:o,alpnProtocol:l}=await a;if(wgt.set(t,l),e.path=r,l==="h2")o.destroy();else{let{globalAgent:A}=Cgr,f=Cgr.Agent.prototype.createConnection;n?n.createConnection===f?$Gn(n,o,e):o.destroy():A.createConnection===f?$Gn(A,o,e):o.destroy()}return c5e.delete(t),l}catch(o){throw c5e.delete(t),o}}return wgt.get(t)};_gr.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=SVo(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let n=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||EVo(t),t.port=t.port||(n?443:80),t._defaultAgent=n?Cgr.globalAgent:qGn.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[n?"https":"http"]}return n&&await vVo(t)==="h2"?(a&&(t.agent=a.http2),new bVo(t,r)):qGn.request(t,r)};_gr.exports.protocolCache=wgt});var rFn=H((T6l,tFn)=>{"use strict";var BVo=wt("http2"),wVo=ugr(),ygr=mgr(),TVo=Agr(),RVo=eFn(),NVo=(e,t,r)=>new ygr(e,t,r),DVo=(e,t,r)=>{let n=new ygr(e,t,r);return n.end(),n};tFn.exports={...BVo,ClientRequest:ygr,IncomingMessage:TVo,...wVo,request:NVo,get:DVo,auto:RVo}});var Egr=H(bgr=>{"use strict";Object.defineProperty(bgr,"__esModule",{value:!0});var nFn=o$();bgr.default=e=>nFn.default.nodeStream(e)&&nFn.default.function_(e.getBoundary)});var aFn=H(Sgr=>{"use strict";Object.defineProperty(Sgr,"__esModule",{value:!0});var sFn=wt("fs"),oFn=wt("util"),iFn=o$(),kVo=Egr(),xVo=oFn.promisify(sFn.stat);Sgr.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if(iFn.default.string(e))return Buffer.byteLength(e);if(iFn.default.buffer(e))return e.length;if(kVo.default(e))return oFn.promisify(e.getLength.bind(e))();if(e instanceof sFn.ReadStream){let{size:r}=await xVo(e.path);return r===0?void 0:r}}});var Bgr=H(vgr=>{"use strict";Object.defineProperty(vgr,"__esModule",{value:!0});function GVo(e,t,r){let n={};for(let a of r)n[a]=(...o)=>{t.emit(a,...o)},e.on(a,n[a]);return()=>{for(let a of r)e.off(a,n[a])}}vgr.default=GVo});var cFn=H(wgr=>{"use strict";Object.defineProperty(wgr,"__esModule",{value:!0});wgr.default=()=>{let e=[];return{once(t,r,n){t.once(r,n),e.push({origin:t,event:r,fn:n})},unhandleAll(){for(let t of e){let{origin:r,event:n,fn:a}=t;r.removeListener(n,a)}e.length=0}}}});var uFn=H(l5e=>{"use strict";Object.defineProperty(l5e,"__esModule",{value:!0});l5e.TimeoutError=void 0;var FVo=wt("net"),ZVo=cFn(),lFn=Symbol("reentry"),LVo=()=>{},Tgt=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};l5e.TimeoutError=Tgt;l5e.default=(e,t,r)=>{if(lFn in e)return LVo;e[lFn]=!0;let n=[],{once:a,unhandleAll:o}=ZVo.default(),l=(b,E,N)=>{var B;let F=setTimeout(E,b,b,N);(B=F.unref)===null||B===void 0||B.call(F);let Q=()=>{clearTimeout(F)};return n.push(Q),Q},{host:A,hostname:f}=r,I=(b,E)=>{e.destroy(new Tgt(b,E))},C=()=>{for(let b of n)b();o()};if(e.once("error",b=>{if(C(),e.listenerCount("error")===0)throw b}),e.once("close",C),a(e,"response",b=>{a(b,"end",C)}),typeof t.request<"u"&&l(t.request,I,"request"),typeof t.socket<"u"){let b=()=>{I(t.socket,"socket")};e.setTimeout(t.socket,b),n.push(()=>{e.removeListener("timeout",b)})}return a(e,"socket",b=>{var E;let{socketPath:N}=e;if(b.connecting){let B=!!(N??FVo.isIP((E=f??A)!==null&&E!==void 0?E:"")!==0);if(typeof t.lookup<"u"&&!B&&typeof b.address().address>"u"){let F=l(t.lookup,I,"lookup");a(b,"lookup",F)}if(typeof t.connect<"u"){let F=()=>l(t.connect,I,"connect");B?a(b,"connect",F()):a(b,"lookup",Q=>{Q===null&&a(b,"connect",F())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(b,"connect",()=>{let F=l(t.secureConnect,I,"secureConnect");a(b,"secureConnect",F)})}if(typeof t.send<"u"){let B=()=>l(t.send,I,"send");b.connecting?a(b,"connect",()=>{a(e,"upload-complete",B())}):a(e,"upload-complete",B())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let b=l(t.response,I,"response");a(e,"response",b)}),C}});var AFn=H(Tgr=>{"use strict";Object.defineProperty(Tgr,"__esModule",{value:!0});var gFn=o$();Tgr.default=e=>{e=e;let t={protocol:e.protocol,hostname:gFn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return gFn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var dFn=H(Rgr=>{"use strict";Object.defineProperty(Rgr,"__esModule",{value:!0});var VVo=wt("url"),PVo=["protocol","host","hostname","port","pathname","search"];Rgr.default=(e,t)=>{var r,n;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(n=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&n!==void 0?n:""}`}let a=new VVo.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of PVo)t[o]&&(a[o]=t[o].toString());return a}});var pFn=H(Dgr=>{"use strict";Object.defineProperty(Dgr,"__esModule",{value:!0});var Ngr=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};Dgr.default=Ngr});var xgr=H(kgr=>{"use strict";Object.defineProperty(kgr,"__esModule",{value:!0});var WVo=async e=>{let t=[],r=0;for await(let n of e)t.push(n),r+=Buffer.byteLength(n);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};kgr.default=WVo});var IFn=H(eIe=>{"use strict";Object.defineProperty(eIe,"__esModule",{value:!0});eIe.dnsLookupIpVersionToFamily=eIe.isDnsLookupIpVersion=void 0;var fFn={auto:0,ipv4:4,ipv6:6};eIe.isDnsLookupIpVersion=e=>e in fFn;eIe.dnsLookupIpVersionToFamily=e=>{if(eIe.isDnsLookupIpVersion(e))return fFn[e];throw new Error("Invalid DNS lookup IP version")}});var Ggr=H(Rgt=>{"use strict";Object.defineProperty(Rgt,"__esModule",{value:!0});Rgt.isResponseOk=void 0;Rgt.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var mFn=H(Fgr=>{"use strict";Object.defineProperty(Fgr,"__esModule",{value:!0});var hFn=new Set;Fgr.default=e=>{hFn.has(e)||(hFn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var CFn=H(Zgr=>{"use strict";Object.defineProperty(Zgr,"__esModule",{value:!0});var G1=o$(),OVo=(e,t)=>{if(G1.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");G1.assert.any([G1.default.string,G1.default.undefined],e.encoding),G1.assert.any([G1.default.boolean,G1.default.undefined],e.resolveBodyOnly),G1.assert.any([G1.default.boolean,G1.default.undefined],e.methodRewriting),G1.assert.any([G1.default.boolean,G1.default.undefined],e.isStream),G1.assert.any([G1.default.string,G1.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:n=>n.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},G1.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(n=>n.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):G1.default.number(r)&&(e.retry.limit=r),G1.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(G1.default.number))),G1.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:n}=e;if(!G1.default.function_(n.transform))throw new Error("`options.pagination.transform` must be implemented");if(!G1.default.function_(n.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!G1.default.function_(n.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!G1.default.function_(n.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};Zgr.default=OVo});var _Fn=H(u5e=>{"use strict";Object.defineProperty(u5e,"__esModule",{value:!0});u5e.retryAfterStatusCodes=void 0;u5e.retryAfterStatusCodes=new Set([413,429,503]);var MVo=({attemptCount:e,retryOptions:t,error:r,retryAfter:n})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),l=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!l)return 0;if(r.response){if(n)return t.maxRetryAfter===void 0||n>t.maxRetryAfter?0:n;if(r.response.statusCode===413)return 0}let A=Math.random()*100;return 2**(e-1)*1e3+A};u5e.default=MVo});var d5e=H(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});O_.UnsupportedProtocolError=O_.ReadError=O_.TimeoutError=O_.UploadError=O_.CacheError=O_.HTTPError=O_.MaxRedirectsError=O_.RequestError=O_.setNonEnumerableProperties=O_.knownHookEvents=O_.withoutBody=O_.kIsNormalizedAlready=void 0;var yFn=wt("util"),bFn=wt("stream"),HVo=wt("fs"),boe=wt("url"),EFn=wt("http"),Lgr=wt("http"),YVo=wt("https"),QVo=Vxn(),XVo=Qxn(),SFn=EGn(),JVo=wGn(),UVo=rFn(),KVo=Sgt(),va=o$(),jVo=aFn(),vFn=Egr(),zVo=Bgr(),BFn=uFn(),qVo=AFn(),wFn=dFn(),$Vo=pFn(),ePo=xgr(),TFn=IFn(),tPo=Ggr(),Eoe=mFn(),rPo=CFn(),nPo=_Fn(),Vgr,vk=Symbol("request"),kgt=Symbol("response"),mve=Symbol("responseSize"),Cve=Symbol("downloadedSize"),_ve=Symbol("bodySize"),yve=Symbol("uploadedSize"),Ngt=Symbol("serverResponsesPiped"),RFn=Symbol("unproxyEvents"),NFn=Symbol("isFromCache"),Pgr=Symbol("cancelTimeouts"),DFn=Symbol("startedReading"),bve=Symbol("stopReading"),Dgt=Symbol("triggerRead"),Soe=Symbol("body"),g5e=Symbol("jobs"),kFn=Symbol("originalResponse"),xFn=Symbol("retryTimeout");O_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var iPo=va.default.string(process.versions.brotli);O_.withoutBody=new Set(["GET","HEAD"]);O_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function sPo(e){for(let t in e){let r=e[t];if(!va.default.string(r)&&!va.default.number(r)&&!va.default.boolean(r)&&!va.default.null_(r)&&!va.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function oPo(e){return va.default.object(e)&&!("statusCode"in e)}var Wgr=new $Vo.default,aPo=async e=>new Promise((t,r)=>{let n=a=>{r(a)};e.pending||t(),e.once("error",n),e.once("ready",()=>{e.off("error",n),t()})}),cPo=new Set([300,301,302,303,304,307,308]),lPo=["context","body","json","form"];O_.setNonEnumerableProperties=(e,t)=>{let r={};for(let n of e)if(n)for(let a of lPo)a in n&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:n[a]});Object.defineProperties(t,r)};var jB=class extends Error{constructor(t,r,n){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",n instanceof Pgt?(Object.defineProperty(this,"request",{enumerable:!1,value:n}),Object.defineProperty(this,"response",{enumerable:!1,value:n[kgt]}),Object.defineProperty(this,"options",{enumerable:!1,value:n.options})):Object.defineProperty(this,"options",{enumerable:!1,value:n}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,va.default.string(r.stack)&&va.default.string(this.stack)){let l=this.stack.indexOf(this.message)+this.message.length,A=this.stack.slice(l).split(` `).reverse(),f=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` `).reverse();for(;f.length!==0&&f[0]===A[0];)A.shift();this.stack=`${this.stack.slice(0,l)}${A.reverse().join(` `)}${f.reverse().join(` -`)}`}}};O_.RequestError=jB;var Dgt=class extends jB{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};O_.MaxRedirectsError=Dgt;var kgt=class extends jB{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};O_.HTTPError=kgt;var xgt=class extends jB{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};O_.CacheError=xgt;var Ggt=class extends jB{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};O_.UploadError=Ggt;var Fgt=class extends jB{constructor(t,r,n){super(t.message,t,n),this.name="TimeoutError",this.event=t.event,this.timings=r}};O_.TimeoutError=Fgt;var u5e=class extends jB{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};O_.ReadError=u5e;var Zgt=class extends jB{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};O_.UnsupportedProtocolError=Zgt;var UVo=["socket","connect","continue","information","upgrade","timeout"],Lgt=class extends fFn.Duplex{constructor(t,r={},n){super({autoDestroy:!1,highWaterMark:0}),this[mve]=0,this[_ve]=0,this.requestInitialized=!1,this[Tgt]=new Set,this.redirects=[],this[yve]=!1,this[Rgt]=!1,this[l5e]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",I=>{I.prependListener("data",a),I.on("data",o),I.prependListener("end",a),I.on("end",o)}),this.on("unpipe",I=>{I.off("data",a),I.off("data",o),I.off("end",a),I.off("end",o)}),this.on("pipe",I=>{I instanceof xgr.IncomingMessage&&(this.options.headers={...I.headers,...this.options.headers})});let{json:l,body:A,form:f}=r;if((l||A||f)&&this._lockWrite(),O_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,n)}catch(I){va.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(I);return}(async()=>{var I;try{this.options.body instanceof wVo.ReadStream&&await QVo(this.options.body);let{url:C}=this.options;if(!C)throw new TypeError("Missing `url` property");if(this.requestUrl=C.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(I=this[vk])===null||I===void 0||I.destroy();return}for(let b of this[l5e])b();this[l5e].length=0,this.requestInitialized=!0}catch(C){if(C instanceof jB){this._beforeError(C);return}this.destroyed||this.destroy(C)}})()}static normalizeArguments(t,r,n){var a,o,l,A,f;let I=r;if(va.default.object(t)&&!va.default.urlInstance(t))r={...n,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...n,...r},t!==void 0&&(r.url=t),va.default.urlInstance(r.url)&&(r.url=new yoe.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),va.assert.any([va.default.string,va.default.undefined],r.method),va.assert.any([va.default.object,va.default.undefined],r.headers),va.assert.any([va.default.string,va.default.urlInstance,va.default.undefined],r.prefixUrl),va.assert.any([va.default.object,va.default.undefined],r.cookieJar),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.searchParams),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.cache),va.assert.any([va.default.object,va.default.number,va.default.undefined],r.timeout),va.assert.any([va.default.object,va.default.undefined],r.context),va.assert.any([va.default.object,va.default.undefined],r.hooks),va.assert.any([va.default.boolean,va.default.undefined],r.decompress),va.assert.any([va.default.boolean,va.default.undefined],r.ignoreInvalidCookies),va.assert.any([va.default.boolean,va.default.undefined],r.followRedirect),va.assert.any([va.default.number,va.default.undefined],r.maxRedirects),va.assert.any([va.default.boolean,va.default.undefined],r.throwHttpErrors),va.assert.any([va.default.boolean,va.default.undefined],r.http2),va.assert.any([va.default.boolean,va.default.undefined],r.allowGetBody),va.assert.any([va.default.string,va.default.undefined],r.localAddress),va.assert.any([yFn.isDnsLookupIpVersion,va.default.undefined],r.dnsLookupIpVersion),va.assert.any([va.default.object,va.default.undefined],r.https),va.assert.any([va.default.boolean,va.default.undefined],r.rejectUnauthorized),r.https&&(va.assert.any([va.default.boolean,va.default.undefined],r.https.rejectUnauthorized),va.assert.any([va.default.function_,va.default.undefined],r.https.checkServerIdentity),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificateAuthority),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.key),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificate),va.assert.any([va.default.string,va.default.undefined],r.https.passphrase),va.assert.any([va.default.string,va.default.buffer,va.default.array,va.default.undefined],r.https.pfx)),va.assert.any([va.default.object,va.default.undefined],r.cacheOptions),va.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===n?.headers?r.headers={...r.headers}:r.headers=xVo({...n?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==n?.searchParams){let N;if(va.default.string(r.searchParams)||r.searchParams instanceof yoe.URLSearchParams)N=new yoe.URLSearchParams(r.searchParams);else{HVo(r.searchParams),N=new yoe.URLSearchParams;for(let B in r.searchParams){let F=r.searchParams[B];F===null?N.append(B,""):F!==void 0&&N.append(B,F)}}(a=n?.searchParams)===null||a===void 0||a.forEach((B,F)=>{N.has(F)||N.append(F,B)}),r.searchParams=N}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(l=r.password)!==null&&l!==void 0?l:"",va.default.undefined(r.prefixUrl)?r.prefixUrl=(A=n?.prefixUrl)!==null&&A!==void 0?A:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),va.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=_Fn.default(r.prefixUrl+r.url,r)}else(va.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=_Fn.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:N}=r;Object.defineProperty(r,"prefixUrl",{set:F=>{let Q=r.url;if(!Q.href.startsWith(F))throw new Error(`Cannot change \`prefixUrl\` from ${N} to ${F}: ${Q.href}`);r.url=new yoe.URL(F+Q.href.slice(N.length)),N=F},get:()=>N});let{protocol:B}=r.url;if(B==="unix:"&&(B="http:",r.url=new yoe.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),B!=="http:"&&B!=="https:")throw new Zgt(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:C}=r;if(C){let{setCookie:N,getCookieString:B}=C;va.assert.function_(N),va.assert.function_(B),N.length===4&&B.length===0&&(N=pFn.promisify(N.bind(r.cookieJar)),B=pFn.promisify(B.bind(r.cookieJar)),r.cookieJar={setCookie:N,getCookieString:B})}let{cache:b}=r;if(b&&(Zgr.has(b)||Zgr.set(b,new hFn((N,B)=>{let F=N[vk](N,B);return va.default.promise(F)&&(F.once=(Q,X)=>{if(Q==="error")F.catch(X);else if(Q==="abort")(async()=>{try{(await F).once("abort",X)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${Q}`);return F}),F},b))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)Ggr||(Ggr=new NVo.default),r.dnsCache=Ggr;else if(!va.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${va.default(r.dnsCache)}`);va.default.number(r.timeout)?r.timeout={request:r.timeout}:n&&r.timeout!==n.timeout?r.timeout={...n.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let E=r.hooks===n?.hooks;r.hooks={...r.hooks};for(let N of O_.knownHookEvents)if(N in r.hooks)if(va.default.array(r.hooks[N]))r.hooks[N]=[...r.hooks[N]];else throw new TypeError(`Parameter \`${N}\` must be an Array, got ${va.default(r.hooks[N])}`);else r.hooks[N]=[];if(n&&!E)for(let N of O_.knownHookEvents)n.hooks[N].length>0&&(r.hooks[N]=[...n.hooks[N],...r.hooks[N]]);if("family"in r&&boe.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),n?.https&&(r.https={...n.https,...r.https}),"rejectUnauthorized"in r&&boe.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&boe.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&boe.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&boe.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&boe.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&boe.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&boe.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let N in r.agent)if(N!=="http"&&N!=="https"&&N!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${N}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,O_.setNonEnumerableProperties([n,I],r),WVo.default(r,n)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,n=!va.default.undefined(t.form),a=!va.default.undefined(t.json),o=!va.default.undefined(t.body),l=n||a||o,A=O_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=A,l){if(A)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,n,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof fFn.Readable)&&!va.default.string(t.body)&&!va.default.buffer(t.body)&&!mFn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(n&&!va.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!va.default.string(r["content-type"]);o?(mFn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[Eoe]=t.body):n?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[Eoe]=new yoe.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[Eoe]=t.stringifyJson(t.json));let I=await GVo.default(this[Eoe],t.headers);va.default.undefined(r["content-length"])&&va.default.undefined(r["transfer-encoding"])&&!A&&!va.default.undefined(I)&&(r["content-length"]=String(I))}}else A?this._lockWrite():this._unlockWrite();this[Cve]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:n}=r;this[vFn]=t,r.decompress&&(t=DVo(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:IFn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[EFn]=o.isFromCache,this[hve]=Number(t.headers["content-length"])||void 0,this[Ngt]=t,t.once("end",()=>{this[hve]=this[mve],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",A=>{t.destroy(),this._beforeError(new u5e(A,this))}),t.once("aborted",()=>{this._beforeError(new u5e({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let l=t.headers["set-cookie"];if(va.default.object(r.cookieJar)&&l){let A=l.map(async f=>r.cookieJar.setCookie(f,n.toString()));r.ignoreInvalidCookies&&(A=A.map(async f=>f.catch(()=>{})));try{await Promise.all(A)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&XVo.has(a)){if(t.resume(),this[vk]&&(this[Fgr](),delete this[vk],this[bFn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[Eoe]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new Dgt(this));return}try{let b=function(E){return E.protocol==="unix:"||E.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),I=new yoe.URL(f,n),C=I.toString();if(decodeURI(C),!b(n)&&b(I)){this._beforeError(new jB("Cannot redirect to UNIX socket",{},this));return}I.hostname!==n.hostname||I.port!==n.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(I.username=r.username,I.password=r.password),this.redirects.push(C),r.url=I;for(let E of r.hooks.beforeRedirect)await E(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!PVo.isResponseOk(o)){this._beforeError(new kgt(o));return}t.on("readable",()=>{this[Rgt]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let A of this[Tgt])if(!A.headersSent){for(let f in t.headers){let I=r.decompress?f!=="content-encoding":!0,C=t.headers[f];I&&A.setHeader(f,C)}A.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:n,url:a}=r;RVo.default(t),this[Fgr]=CFn.default(t,n,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var I;t.destroy(),(I=t.res)===null||I===void 0||I.removeAllListeners("end"),f=f instanceof CFn.TimeoutError?new Fgt(f,this.timings,this):new jB(f.message,f,this),this._beforeError(f)}),this[bFn]=FVo.default(t,this,UVo),this[vk]=t,this.emit("uploadProgress",this.uploadProgress);let l=this[Eoe],A=this.redirects.length===0?this:t;va.default.nodeStream(l)?(l.pipe(A),l.once("error",f=>{this._beforeError(new Ggt(f,this))})):(this._unlockWrite(),va.default.undefined(l)?(this._cannotHaveBody||this._noPipe)&&(A.end(),this._lockWrite()):(this._writeRequest(l,void 0,()=>{}),A.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((n,a)=>{Object.assign(r,ZVo.default(t)),delete r.url;let o,l=Zgr.get(r.cache)(r,async A=>{A._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",A),n(A)});r.url=t,l.once("error",a),l.once("request",async A=>{o=A,n(o)})})}async _makeRequest(){var t,r,n,a,o;let{options:l}=this,{headers:A}=l;for(let X in A)if(va.default.undefined(A[X]))delete A[X];else if(va.default.null_(A[X]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${X}\` header`);if(l.decompress&&va.default.undefined(A["accept-encoding"])&&(A["accept-encoding"]=MVo?"gzip, deflate, br":"gzip, deflate"),l.cookieJar){let X=await l.cookieJar.getCookieString(l.url.toString());va.default.nonEmptyString(X)&&(l.headers.cookie=X)}for(let X of l.hooks.beforeRequest){let ae=await X(l);if(!va.default.undefined(ae)){l.request=()=>ae;break}}l.body&&this[Eoe]!==l.body&&(this[Eoe]=l.body);let{agent:f,request:I,timeout:C,url:b}=l;if(l.dnsCache&&!("lookup"in l)&&(l.lookup=l.dnsCache.lookup),b.hostname==="unix"){let X=/(?.+?):(?.+)/.exec(`${b.pathname}${b.search}`);if(X?.groups){let{socketPath:ae,path:ne}=X.groups;Object.assign(l,{socketPath:ae,path:ne,host:""})}}let E=b.protocol==="https:",N;l.http2?N=kVo.auto:N=E?TVo.request:IFn.request;let B=(t=l.request)!==null&&t!==void 0?t:N,F=l.cache?this._createCacheableRequest:B;f&&!l.http2&&(l.agent=f[E?"https":"http"]),l[vk]=B,delete l.request,delete l.timeout;let Q=l;if(Q.shared=(r=l.cacheOptions)===null||r===void 0?void 0:r.shared,Q.cacheHeuristic=(n=l.cacheOptions)===null||n===void 0?void 0:n.cacheHeuristic,Q.immutableMinTimeToLive=(a=l.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,Q.ignoreCargoCult=(o=l.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,l.dnsLookupIpVersion!==void 0)try{Q.family=yFn.dnsLookupIpVersionToFamily(l.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}l.https&&("rejectUnauthorized"in l.https&&(Q.rejectUnauthorized=l.https.rejectUnauthorized),l.https.checkServerIdentity&&(Q.checkServerIdentity=l.https.checkServerIdentity),l.https.certificateAuthority&&(Q.ca=l.https.certificateAuthority),l.https.certificate&&(Q.cert=l.https.certificate),l.https.key&&(Q.key=l.https.key),l.https.passphrase&&(Q.passphrase=l.https.passphrase),l.https.pfx&&(Q.pfx=l.https.pfx));try{let X=await F(b,Q);va.default.undefined(X)&&(X=N(b,Q)),l.request=I,l.timeout=C,l.agent=f,l.https&&("rejectUnauthorized"in l.https&&delete Q.rejectUnauthorized,l.https.checkServerIdentity&&delete Q.checkServerIdentity,l.https.certificateAuthority&&delete Q.ca,l.https.certificate&&delete Q.cert,l.https.key&&delete Q.key,l.https.passphrase&&delete Q.passphrase,l.https.pfx&&delete Q.pfx),YVo(X)?this._onRequest(X):this.writable?(this.once("finish",()=>{this._onResponse(X)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(X)}catch(X){throw X instanceof hFn.CacheError?new xgt(X,this):new jB(X.message,X,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new jB(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[yve])return;let{options:r}=this,n=this.retryCount+1;this[yve]=!0,t instanceof jB||(t=new jB(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await VVo.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let l;try{let A;o&&"retry-after"in o.headers&&(A=Number(o.headers["retry-after"]),Number.isNaN(A)?(A=Date.parse(o.headers["retry-after"])-Date.now(),A<=0&&(A=1)):A*=1e3),l=await r.retry.calculateDelay({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:OVo.default({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:0})})}catch(A){this._error(new jB(A.message,A,this));return}if(l){let A=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,n)}catch(f){this._error(new jB(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",n,t))};this[BFn]=setTimeout(A,l);return}}this._error(a)})()}_read(){this[Rgt]=!0;let t=this[Ngt];if(t&&!this[yve]){t.readableLength&&(this[Rgt]=!1);let r;for(;(r=t.read())!==null;){this[mve]+=r.length,this[SFn]=!0;let n=this.downloadProgress;n.percent<1&&this.emit("downloadProgress",n),this.push(r)}}}_write(t,r,n){let a=()=>{this._writeRequest(t,r,n)};this.requestInitialized?a():this[l5e].push(a)}_writeRequest(t,r,n){this[vk].destroyed||(this._progressCallbacks.push(()=>{this[_ve]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[vk].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(vk in this)){t();return}if(this[vk].destroyed){t();return}this[vk].end(n=>{n||(this[Cve]=this[_ve],this.emit("uploadProgress",this.uploadProgress),this[vk].emit("upload-complete")),t(n)})};this.requestInitialized?r():this[l5e].push(r)}_destroy(t,r){var n;this[yve]=!0,clearTimeout(this[BFn]),vk in this&&(this[Fgr](),!((n=this[Ngt])===null||n===void 0)&&n.complete||this[vk].destroy()),t!==null&&!va.default.undefined(t)&&!(t instanceof jB)&&(t=new jB(t.message,t,this)),r(t)}get _isAboutToError(){return this[yve]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,n;return((r=(t=this[vk])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((n=this[vFn])===null||n===void 0)&&n.complete)}get socket(){var t,r;return(r=(t=this[vk])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[hve]?t=this[mve]/this[hve]:this[hve]===this[mve]?t=1:t=0,{percent:t,transferred:this[mve],total:this[hve]}}get uploadProgress(){let t;return this[Cve]?t=this[_ve]/this[Cve]:this[Cve]===this[_ve]?t=1:t=0,{percent:t,transferred:this[_ve],total:this[Cve]}}get timings(){var t;return(t=this[vk])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[EFn]}pipe(t,r){if(this[SFn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof xgr.ServerResponse&&this[Tgt].add(t),super.pipe(t,r)}unpipe(t){return t instanceof xgr.ServerResponse&&this[Tgt].delete(t),super.unpipe(t),this}};O_.default=Lgt});var A5e=H(cX=>{"use strict";var KVo=cX&&cX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jVo=cX&&cX.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&KVo(t,e,r)};Object.defineProperty(cX,"__esModule",{value:!0});cX.CancelError=cX.ParseError=void 0;var wFn=g5e(),Lgr=class extends wFn.RequestError{constructor(t,r){let{options:n}=r.request;super(`${t.message} in "${n.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};cX.ParseError=Lgr;var Vgr=class extends wFn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};cX.CancelError=Vgr;jVo(g5e(),cX)});var RFn=H(Pgr=>{"use strict";Object.defineProperty(Pgr,"__esModule",{value:!0});var TFn=A5e(),zVo=(e,t,r,n)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(n);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new TFn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new TFn.ParseError(o,e)}};Pgr.default=zVo});var Wgr=H(Soe=>{"use strict";var qVo=Soe&&Soe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Vo=Soe&&Soe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qVo(t,e,r)};Object.defineProperty(Soe,"__esModule",{value:!0});var ePo=wt("events"),tPo=o$(),rPo=Rxn(),Vgt=A5e(),NFn=RFn(),DFn=g5e(),nPo=bgr(),iPo=Rgr(),kFn=Ngr(),sPo=["request","response","redirect","uploadProgress","downloadProgress"];function xFn(e){let t,r,n=new ePo.EventEmitter,a=new rPo((l,A,f)=>{let I=C=>{let b=new DFn.default(void 0,e);b.retryCount=C,b._noPipe=!0,f(()=>b.destroy()),f.shouldReject=!1,f(()=>A(new Vgt.CancelError(b))),t=b,b.once("response",async B=>{var F;if(B.retryCount=C,B.request.aborted)return;let Q;try{Q=await iPo.default(b),B.rawBody=Q}catch{return}if(b._isAboutToError)return;let X=((F=B.headers["content-encoding"])!==null&&F!==void 0?F:"").toLowerCase(),ae=["gzip","deflate","br"].includes(X),{options:ne}=b;if(ae&&!ne.decompress)B.body=Q;else try{B.body=NFn.default(B,ne.responseType,ne.parseJson,ne.encoding)}catch(ce){if(B.body=Q.toString(),kFn.isResponseOk(B)){b._beforeError(ce);return}}try{for(let[ce,fe]of ne.hooks.afterResponse.entries())B=await fe(B,async ue=>{let de=DFn.default.normalizeArguments(void 0,{...ue,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ne);de.hooks.afterResponse=de.hooks.afterResponse.slice(0,ce);for(let Se of de.hooks.beforeRetry)await Se(de);let be=xFn(de);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ce){b._beforeError(new Vgt.RequestError(ce.message,ce,b));return}if(r=B,!kFn.isResponseOk(B)){b._beforeError(new Vgt.HTTPError(B));return}b.destroy(),l(b.options.resolveBodyOnly?B.body:B)});let E=B=>{if(a.isCanceled)return;let{options:F}=b;if(B instanceof Vgt.HTTPError&&!F.throwHttpErrors){let{response:Q}=B;l(b.options.resolveBodyOnly?Q.body:Q);return}A(B)};b.once("error",E);let N=b.options.body;b.once("retry",(B,F)=>{var Q,X;if(N===((Q=F.request)===null||Q===void 0?void 0:Q.options.body)&&tPo.default.nodeStream((X=F.request)===null||X===void 0?void 0:X.options.body)){E(F);return}I(B)}),nPo.default(b,n,sPo)};I(0)});a.on=(l,A)=>(n.on(l,A),a);let o=l=>{let A=(async()=>{await a;let{options:f}=r.request;return NFn.default(r,l,f.parseJson,f.encoding)})();return Object.defineProperties(A,Object.getOwnPropertyDescriptors(a)),A};return a.json=()=>{let{headers:l}=t.options;return!t.writableFinished&&l.accept===void 0&&(l.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}Soe.default=xFn;$Vo(A5e(),Soe)});var GFn=H(Ogr=>{"use strict";Object.defineProperty(Ogr,"__esModule",{value:!0});var oPo=A5e();function aPo(e,...t){let r=(async()=>{if(e instanceof oPo.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),n=()=>r;return r.json=n,r.text=n,r.buffer=n,r.on=n,r}Ogr.default=aPo});var LFn=H(Mgr=>{"use strict";Object.defineProperty(Mgr,"__esModule",{value:!0});var FFn=o$();function ZFn(e){for(let t of Object.values(e))(FFn.default.plainObject(t)||FFn.default.array(t))&&ZFn(t);return Object.freeze(e)}Mgr.default=ZFn});var PFn=H(VFn=>{"use strict";Object.defineProperty(VFn,"__esModule",{value:!0})});var Hgr=H(lM=>{"use strict";var cPo=lM&&lM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lPo=lM&&lM.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&cPo(t,e,r)};Object.defineProperty(lM,"__esModule",{value:!0});lM.defaultHandler=void 0;var WFn=o$(),cM=Wgr(),uPo=GFn(),Wgt=g5e(),gPo=LFn(),APo={RequestError:cM.RequestError,CacheError:cM.CacheError,ReadError:cM.ReadError,HTTPError:cM.HTTPError,MaxRedirectsError:cM.MaxRedirectsError,TimeoutError:cM.TimeoutError,ParseError:cM.ParseError,CancelError:cM.CancelError,UnsupportedProtocolError:cM.UnsupportedProtocolError,UploadError:cM.UploadError},dPo=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:Pgt}=Wgt.default,OFn=(...e)=>{let t;for(let r of e)t=Pgt(void 0,r,t);return t},pPo=e=>e.isStream?new Wgt.default(void 0,e):cM.default(e),fPo=e=>"defaults"in e&&"options"in e.defaults,IPo=["get","post","put","patch","head","delete"];lM.defaultHandler=(e,t)=>t(e);var MFn=(e,t)=>{if(e)for(let r of e)r(t)},HFn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(n=>(a,o)=>{let l,A=n(a,f=>(l=o(f),l));if(A!==l&&!a.isStream&&l){let f=A,{then:I,catch:C,finally:b}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(l)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(l)),f.then=I,f.catch=C,f.finally=b}return A});let t=(n,a={},o)=>{var l,A;let f=0,I=C=>e.handlers[f++](C,f===e.handlers.length?pPo:I);if(WFn.default.plainObject(n)){let C={...n,...a};Wgt.setNonEnumerableProperties([n,a],C),a=C,n=void 0}try{let C;try{MFn(e.options.hooks.init,a),MFn((l=a.hooks)===null||l===void 0?void 0:l.init,a)}catch(E){C=E}let b=Pgt(n,a,o??e.options);if(b[Wgt.kIsNormalizedAlready]=!0,C)throw new cM.RequestError(C.message,C,b);return I(b)}catch(C){if(a.isStream)throw C;return uPo.default(C,e.options.hooks.beforeError,(A=a.hooks)===null||A===void 0?void 0:A.beforeError)}};t.extend=(...n)=>{let a=[e.options],o=[...e._rawHandlers],l;for(let A of n)fPo(A)?(a.push(A.defaults.options),o.push(...A.defaults._rawHandlers),l=A.defaults.mutableDefaults):(a.push(A),"handlers"in A&&o.push(...A.handlers),l=A.mutableDefaults);return o=o.filter(A=>A!==lM.defaultHandler),o.length===0&&o.push(lM.defaultHandler),HFn({options:OFn(...a),handlers:o,mutableDefaults:!!l})};let r=async function*(n,a){let o=Pgt(n,a,e.options);o.resolveBodyOnly=!1;let l=o.pagination;if(!WFn.default.object(l))throw new TypeError("`options.pagination` must be implemented");let A=[],{countLimit:f}=l,I=0;for(;I{let o=[];for await(let l of r(n,a))o.push(l);return o},t.paginate.each=r,t.stream=(n,a)=>t(n,{...a,isStream:!0});for(let n of IPo)t[n]=(a,o)=>t(a,{...o,method:n}),t.stream[n]=(a,o)=>t(a,{...o,method:n,isStream:!0});return Object.assign(t,APo),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:gPo.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=OFn,t};lM.default=HFn;lPo(PFn(),lM)});var XFn=H((a$,Ogt)=>{"use strict";var hPo=a$&&a$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YFn=a$&&a$.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&hPo(t,e,r)};Object.defineProperty(a$,"__esModule",{value:!0});var mPo=wt("url"),QFn=Hgr(),CPo={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let n of t){let a=n.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new mPo.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[QFn.defaultHandler],mutableDefaults:!1},Ygr=QFn.default(CPo);a$.default=Ygr;Ogt.exports=Ygr;Ogt.exports.default=Ygr;Ogt.exports.__esModule=!0;YFn(Hgr(),a$);YFn(Wgr(),a$)});var Ygt=H(UK=>{"use strict";Object.defineProperty(UK,"__esModule",{value:!0});UK.Method=void 0;UK.getNetworkSettings=qFn;UK.request=d5e;UK.get=BPo;UK.put=wPo;UK.post=TPo;UK.del=RPo;var Mgt=(Pa(),vi(Va)),_Po=ro(),JFn=Sxn(),yPo=wt("https"),bPo=wt("http"),jFn=Mgt.__importDefault(Ek()),voe=M9(),Xgr=sM(),kE=Mgt.__importStar(rM()),zFn=Mgt.__importStar(xW()),UFn=new Map,KFn=new Map,EPo=new bPo.Agent({keepAlive:!0}),SPo=new yPo.Agent({keepAlive:!0});async function Qgr(e){return zFn.getFactoryWithDefault(KFn,e,()=>_Po.xfs.readFilePromise(e).then(t=>(KFn.set(e,t),t)))}function vPo({statusCode:e,statusMessage:t},r){let n=kE.pretty(r,e,kE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return kE.applyHyperlink(r,`${n}${t?` (${t})`:""}`,a)}async function Hgt(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(n){if(n.name!=="HTTPError")throw n;let a=r?.(n,t)??n.response.body?.error;a==null&&(n.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=n.message),n.code==="ETIMEDOUT"&&n.event==="socket"&&(a+=`(can be increased via ${kE.pretty(t,"httpTimeout",kE.Type.SETTING)})`);let o=new Xgr.ReportError(voe.MessageName.NETWORK_ERROR,a,l=>{n.response&&l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Response Code",value:kE.tuple(kE.Type.NO_HINT,vPo(n.response,t))})}`),n.request&&(l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Method",value:kE.tuple(kE.Type.NO_HINT,n.request.options.method)})}`),l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request URL",value:kE.tuple(kE.Type.URL,n.request.requestUrl)})}`)),n.request.redirects.length>0&&l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Redirects",value:kE.tuple(kE.Type.NO_HINT,kE.prettyList(t,n.request.redirects,kE.Type.URL))})}`),n.request.retryCount===n.request.options.retry.limit&&l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Retry Count",value:kE.tuple(kE.Type.NO_HINT,`${kE.pretty(t,n.request.retryCount,kE.Type.NUMBER)} (can be increased via ${kE.pretty(t,"httpRetry",kE.Type.SETTING)})`)})}`)});throw o.originalError=n,o}}function qFn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([l],[A])=>A.length-l.length),n={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(n),o=typeof e=="string"?new URL(e):e;for(let[l,A]of r)if(jFn.default.isMatch(o.hostname,l))for(let f of a){let I=A.get(f);I!==null&&typeof n[f]>"u"&&(n[f]=I)}for(let l of a)typeof n[l]>"u"&&(n[l]=t.configuration.get(l));return n}var eIe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(eIe||(UK.Method=eIe={}));async function d5e(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=eIe.GET,wrapNetworkRequest:A}){let f={target:e,body:t,configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l},I=async()=>await NPo(e,t,f),C=typeof A<"u"?await A(I,f):I;return await(await r.reduceHook(E=>E.wrapNetworkRequest,C,f))()}async function BPo(e,{configuration:t,jsonResponse:r,customErrorMessage:n,wrapNetworkRequest:a,...o}){let l=()=>Hgt(d5e(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:n}).then(f=>f.body),A=await(typeof a<"u"?l():zFn.getFactoryWithDefault(UFn,e,()=>l().then(f=>(UFn.set(e,f),f))));return r?JSON.parse(A.toString()):A}async function wPo(e,t,{customErrorMessage:r,...n}){return(await Hgt(d5e(e,t,{...n,method:eIe.PUT}),{customErrorMessage:r,configuration:n.configuration})).body}async function TPo(e,t,{customErrorMessage:r,...n}){return(await Hgt(d5e(e,t,{...n,method:eIe.POST}),{customErrorMessage:r,configuration:n.configuration})).body}async function RPo(e,{customErrorMessage:t,...r}){return(await Hgt(d5e(e,null,{...r,method:eIe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function NPo(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=eIe.GET}){let A=typeof e=="string"?new URL(e):e,f=qFn(A,{configuration:r});if(f.enableNetwork===!1)throw new Xgr.ReportError(voe.MessageName.NETWORK_DISABLED,`Request to '${A.href}' has been blocked because of your configuration settings`);if(A.protocol==="http:"&&!jFn.default.isMatch(A.hostname,r.get("unsafeHttpWhitelist")))throw new Xgr.ReportError(voe.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${A.hostname})`);let I={headers:n,method:l};I.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?I.body=t:I.json=t);let C=r.get("httpTimeout"),b=r.get("httpRetry"),E=r.get("enableStrictSsl"),N=f.httpsCaFilePath,B=f.httpsCertFilePath,F=f.httpsKeyFilePath,{default:Q}=await Promise.resolve().then(()=>Mgt.__importStar(XFn())),X=N?await Qgr(N):void 0,ae=B?await Qgr(B):void 0,ne=F?await Qgr(F):void 0,ce={rejectUnauthorized:E,ca:X,cert:ae,key:ne},fe={http:f.httpProxy?new JFn.HttpProxyAgent({proxy:f.httpProxy,proxyRequestOptions:ce}):EPo,https:f.httpsProxy?new JFn.HttpsProxyAgent({proxy:f.httpsProxy,proxyRequestOptions:ce}):SPo},ue=Q.extend({timeout:{socket:C},retry:b,agent:fe,https:{rejectUnauthorized:E,certificateAuthority:X,certificate:ae,key:ne},...I});return r.getLimit("networkConcurrency")(()=>ue(A))}});var Qgt=H(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.openUrl=lX.major=void 0;lX.getArchitecture=Kgr;lX.getArchitectureName=GPo;lX.getArchitectureSet=FPo;lX.getCaller=PPo;lX.availableParallelism=WPo;var Ugr=(Pa(),vi(Va)),nZn=ro(),Jgr=Ugr.__importDefault(wt("os")),DPo=Ugr.__importStar(Xgt()),$Fn=Ugr.__importStar(xW());lX.major=Number(process.versions.node.split(".")[0]);var eZn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);lX.openUrl=typeof eZn<"u"?async e=>{try{return await DPo.execvp(eZn,[e],{cwd:nZn.ppath.cwd()}),!0}catch{return!1}}:void 0;var kPo="/usr/bin/ldd";function xPo(){if(process.platform!=="linux")return null;let e;try{e=nZn.xfs.readFileSync(kPo)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("GNU libc")||e.includes("GNU C Library")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],n=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return $Fn.mapAndFind(r,a=>{let o=a.match(n);if(!o)return $Fn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var tZn,rZn;function Kgr(){return tZn=tZn??{os:(process.env.YARN_IS_TEST_ENV?process.env.YARN_OS_OVERRIDE:void 0)??process.platform,cpu:(process.env.YARN_IS_TEST_ENV?process.env.YARN_CPU_OVERRIDE:void 0)??process.arch,libc:(process.env.YARN_IS_TEST_ENV?process.env.YARN_LIBC_OVERRIDE:void 0)??xPo()}}function GPo(e=Kgr()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function FPo(){let e=Kgr();return rZn=rZn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var ZPo=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,LPo=/\((\S*)(?::(\d+))(?::(\d+))\)/;function VPo(e){let t=ZPo.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,a=LPo.exec(t[2]);return n&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function PPo(){let t=new Error().stack.split(` -`)[3];return VPo(t)}function WPo(){return typeof Jgr.default.availableParallelism<"u"?Jgr.default.availableParallelism():Math.max(1,Jgr.default.cpus().length)}});var f5e=H(Zm=>{"use strict";Object.defineProperty(Zm,"__esModule",{value:!0});Zm.Configuration=Zm.coreDefinitions=Zm.WindowsLinkType=Zm.DurationUnit=Zm.FormatType=Zm.SettingsType=Zm.SECRET=Zm.DEFAULT_RC_FILENAME=Zm.ENVIRONMENT_PREFIX=Zm.TAG_REGEXP=Zm.LEGACY_PLUGINS=void 0;var gX=(Pa(),vi(Va)),Gf=ro(),Jgt=TW(),OPo=gX.__importDefault(ASn()),bve=Nfe(),uX=($c(),vi(rg)),MPo=_Sn(),HPo=wt("module"),YPo=gX.__importDefault(Dfe()),iZn=wt("stream"),QPo=rxn(),XPo=uve(),JPo=Cur(),UPo=yur(),KPo=vur(),jPo=pxn(),zPo=wur(),qPo=Kfe(),Boe=gX.__importStar(Cxn()),Kgt=gX.__importStar(ggt()),tb=gX.__importStar(rM()),$Po=gX.__importStar(moe()),eWo=gX.__importStar(Ygt()),UN=gX.__importStar(xW()),aZn=gX.__importStar(Qgt()),Ugt=gX.__importStar(n$()),TZ=gX.__importStar(uG()),uM=Qfe(),tWo=function(){if(!bve.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=Gf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=Gf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();Zm.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var rWo=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","osOverride","cpuOverride","libcOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);Zm.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;Zm.ENVIRONMENT_PREFIX="yarn_";Zm.DEFAULT_RC_FILENAME=".yarnrc.yml";Zm.SECRET="********";var Vl;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.DURATION="DURATION",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(Vl||(Zm.SettingsType=Vl={}));Zm.FormatType=tb.Type;var zgt;(function(e){e.MILLISECONDS="ms",e.SECONDS="s",e.MINUTES="m",e.HOURS="h",e.DAYS="d",e.WEEKS="w"})(zgt||(Zm.DurationUnit=zgt={}));var sZn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(sZn||(Zm.WindowsLinkType=sZn={}));Zm.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Vl.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Vl.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Vl.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:Vl.ABSOLUTE_PATH,default:Kgt.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:Vl.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Vl.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Vl.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:Vl.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Vl.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Vl.STRING,default:zgr()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Vl.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:Vl.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Vl.BOOLEAN,default:tb.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Vl.BOOLEAN,default:tb.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Vl.BOOLEAN,default:bve.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Vl.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Vl.BOOLEAN,default:!bve.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Vl.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:Vl.BOOLEAN,default:!bve.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Vl.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Vl.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Vl.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Vl.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Vl.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Vl.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:Vl.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Vl.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:Vl.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:Vl.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Vl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Vl.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Vl.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request",type:Vl.DURATION,unit:zgt.MILLISECONDS,default:"1m"},httpRetry:{description:"Retry times on http failure",type:Vl.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Vl.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:Vl.NUMBER,default:aZn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:Vl.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Vl.MAP,valueDefinition:{description:"",type:Vl.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Vl.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Vl.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Vl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Vl.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Vl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Vl.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Vl.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Vl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Vl.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Vl.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Vl.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Vl.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Vl.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:Vl.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Vl.STRING,values:Object.values(tb.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Vl.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads",type:Vl.DURATION,unit:zgt.DAYS,default:"7d"},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Vl.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:Vl.BOOLEAN,default:bve.isPR&&tWo,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Vl.BOOLEAN,default:!1},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:Vl.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Vl.BOOLEAN,default:!1},enableCacheClean:{description:"If false, disallows the `cache clean` command",type:Vl.BOOLEAN,default:!0},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Vl.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:Vl.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Vl.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Vl.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Vl.MAP,valueDefinition:{description:"A range",type:Vl.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Vl.MAP,valueDefinition:{description:"A semver range",type:Vl.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Vl.MAP,valueDefinition:{description:"The peerDependency meta",type:Vl.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Vl.BOOLEAN,default:!1}}}}}}}};function qgr(e,t,r,n,a){let o=Boe.getValue(r);if(n.isArray||n.type===Vl.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((l,A)=>jgr(e,`${t}[${A}]`,l,n,a)):String(o).split(/,/).map(l=>jgr(e,t,l,n,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return jgr(e,t,r,n,a)}function jgr(e,t,r,n,a){let o=Boe.getValue(r);switch(n.type){case Vl.ANY:return Boe.getValueByTree(o);case Vl.SHAPE:return nWo(e,t,r,n,a);case Vl.MAP:return iWo(e,t,r,n,a)}if(o===null&&!n.isNullable&&n.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if("values"in n&&n.values?.includes(o))return o;let A=(()=>{if(n.type===Vl.BOOLEAN&&typeof o!="string")return UN.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=UN.replaceEnvVariables(o,{env:e.env});switch(n.type){case Vl.ABSOLUTE_PATH:{let I=a,C=Boe.getSource(r);return C&&C[0]!=="<"&&(I=Gf.ppath.dirname(C)),Gf.ppath.resolve(I,Gf.npath.toPortablePath(f))}case Vl.LOCATOR_LOOSE:return TZ.parseLocator(f,!1);case Vl.NUMBER:return parseInt(f);case Vl.LOCATOR:return TZ.parseLocator(f);case Vl.BOOLEAN:return UN.parseBoolean(f);case Vl.DURATION:return UN.parseDuration(f,n.unit);default:return f}})();if("values"in n&&n.values&&!n.values.includes(A))throw new Error(`Invalid value, expected one of ${n.values.join(", ")}`);return A}function nWo(e,t,r,n,a){let o=Boe.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new uX.UsageError(`Object configuration settings "${t}" must be an object`);let l=$gr(e,n,{ignoreArrays:!0});if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=`${t}.${A}`;if(!n.properties[A])throw new uX.UsageError(`Unrecognized configuration settings found: ${t}.${A} - run "yarn config" to see the list of settings supported in Yarn`);l.set(A,qgr(e,I,f,n.properties[A],a))}return l}function iWo(e,t,r,n,a){let o=Boe.getValue(r),l=new Map;if(typeof o!="object"||Array.isArray(o))throw new uX.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=n.normalizeKeys?n.normalizeKeys(A):A,C=`${t}['${I}']`,b=n.valueDefinition;l.set(I,qgr(e,C,f,b,a))}return l}function $gr(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case Vl.SHAPE:{if(t.isArray&&!r)return[];let n=new Map;for(let[a,o]of Object.entries(t.properties))n.set(a,$gr(e,o));return n}case Vl.MAP:return t.isArray&&!r?[]:new Map;case Vl.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(n=>Gf.ppath.normalize(n)):Gf.ppath.isAbsolute(t.default)?Gf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(n=>Gf.ppath.resolve(e.projectCwd,n)):Gf.ppath.resolve(e.projectCwd,t.default);case Vl.DURATION:return UN.parseDuration(t.default,t.unit);default:return t.default}}function jgt(e,t,r){if(t.type===Vl.SECRET&&typeof e=="string"&&r.hideSecrets)return Zm.SECRET;if(t.type===Vl.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return Gf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let n=[];for(let a of e)n.push(jgt(a,t,r));return n}if(t.type===Vl.MAP&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=jgt(o,t.valueDefinition,r);typeof l<"u"&&n.set(a,l)}return n}if(t.type===Vl.SHAPE&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=t.properties[a],A=jgt(o,l,r);typeof A<"u"&&n.set(a,A)}return n}return e}function sWo(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(Zm.ENVIRONMENT_PREFIX)&&(t=(0,OPo.default)(t.slice(Zm.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function zgr(){let e=`${Zm.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return Zm.DEFAULT_RC_FILENAME}async function oZn(e){try{return await Gf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function oWo(e,t){return Buffer.compare(...await Promise.all([oZn(e),oZn(t)]))===0}async function aWo(e,t){let[r,n]=await Promise.all([Gf.xfs.statPromise(e),Gf.xfs.statPromise(t)]);return r.dev===n.dev&&r.ino===n.ino}var cWo=process.platform==="win32"?oWo:aWo;async function lWo({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await cWo(r,t)?null:r}var p5e=class e{static create(t,r,n){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(Zm.coreDefinitions);let o=typeof n<"u"?n:r instanceof Map?r:new Map;for(let[l,A]of o)a.activatePlugin(l,A);return a}static async find(t,r,{strict:n=!0,usePathCheck:a=null,useRc:o=!0}={}){let l=sWo();delete l.rcFilename;let A=new e(t),f=await e.findRcFiles(t),I=await e.findFolderRcFile(Kgt.getHomeFolder());I&&(f.find(de=>de.path===I.path)||f.unshift(I));let C=Boe.resolveRcFiles(f.map(ue=>[ue.path,ue.data])),b=Gf.PortablePath.dot,E=new Set(Object.keys(Zm.coreDefinitions)),N=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be})=>({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be}),B=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be,...Se})=>{let De={};for(let[k,et]of Object.entries(Se))E.has(k)&&(De[k]=et);return De},F=({yarnPath:ue,ignorePath:de,...be})=>{let Se={};for(let[De,k]of Object.entries(be))E.has(De)||(Se[De]=k);return Se};if(A.importSettings(N(Zm.coreDefinitions)),A.useWithSource("",N(l),t,{strict:!1}),C){let[ue,de]=C;A.useWithSource(ue,N(de),b,{strict:!1})}if(a){if(await lWo({configuration:A,selfPath:a})!==null)return A;A.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let Q=await e.findProjectCwd(t);A.startingCwd=t,A.projectCwd=Q;let X=Object.assign(Object.create(null),process.env);A.env=X;let ae=await Promise.all(A.get("injectEnvironmentFiles").map(async ue=>{let de=ue.endsWith("?")?await Gf.xfs.readFilePromise(ue.slice(0,-1),"utf8").catch(()=>""):await Gf.xfs.readFilePromise(ue,"utf8");return(0,MPo.parse)(de)}));for(let ue of ae)for(let[de,be]of Object.entries(ue))A.env[de]=UN.replaceEnvVariables(be,{env:X});if(A.importSettings(B(Zm.coreDefinitions)),A.useWithSource("",B(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,B(de),b,{strict:n})}let ne=ue=>"default"in ue?ue.default:ue,ce=new Map([["@@core",QPo.CorePlugin]]);if(r!==null)for(let ue of r.plugins.keys())ce.set(ue,ne(r.modules.get(ue)));for(let[ue,de]of ce)A.activatePlugin(ue,de);let fe=new Map([]);if(r!==null){let ue=new Map;for(let[Se,De]of r.modules)ue.set(Se,()=>De);let de=new Set,be=async(Se,De)=>{let{factory:k,name:et}=UN.dynamicRequire(Se);if(!k||de.has(et))return;let ct=new Map(ue),Me=St=>{if((0,HPo.isBuiltin)(St))return UN.dynamicRequire(St);if(ct.has(St))return ct.get(St)();throw new uX.UsageError(`This plugin cannot access the package referenced via ${St} which is neither a builtin, nor an exposed entry`)},je=await UN.prettifyAsyncErrors(async()=>ne(await k(Me)),St=>`${St} (when initializing ${et}, defined in ${De})`);ue.set(et,()=>je),de.add(et),fe.set(et,je)};if(l.plugins)for(let Se of l.plugins.split(";")){let De=Gf.ppath.resolve(t,Gf.npath.toPortablePath(Se));await be(De,"")}for(let{path:Se,cwd:De,data:k}of f)if(o&&Array.isArray(k.plugins))for(let et of k.plugins){let ct=typeof et!="string"?et.path:et,Me=et?.spec??"",je=et?.checksum??"";if(Zm.LEGACY_PLUGINS.has(Me))continue;let St=Gf.ppath.resolve(De,Gf.npath.toPortablePath(ct));if(!await Gf.xfs.existsPromise(St)){if(!Me){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,".gitignore",tb.Type.NAME),er=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME),vt=tb.pretty(A,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",tb.Type.URL);throw new uX.UsageError(`Missing source for the ${Tr} plugin - please try to remove the plugin from ${er} then reinstall it manually. This error usually occurs because ${Nr} is incorrect, check ${vt} to make sure your plugin folder isn't gitignored.`)}if(!Me.match(/^https?:/)){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME);throw new uX.UsageError(`Failed to recognize the source for the ${Tr} plugin - please try to delete the plugin from ${Nr} then reinstall it manually.`)}let At=await eWo.get(Me,{configuration:A}),Yt=$Po.makeHash(At);if(je&&je!==Yt){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME),er=tb.pretty(A,`yarn plugin import ${Me}`,tb.Type.CODE);throw new uX.UsageError(`Failed to fetch the ${Tr} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Nr} then run ${er} to reimport it.`)}await Gf.xfs.mkdirPromise(Gf.ppath.dirname(St),{recursive:!0}),await Gf.xfs.writeFilePromise(St,At)}await be(St,Se)}}for(let[ue,de]of fe)A.activatePlugin(ue,de);if(A.useWithSource("",F(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,F(de),b,{strict:n})}return A.get("enableGlobalCache")&&(A.values.set("cacheFolder",`${A.get("globalFolder")}/cache`),A.sources.set("cacheFolder","")),A}static async findRcFiles(t){let r=zgr(),n=[],a=t,o=null;for(;a!==o;){o=a;let l=Gf.ppath.join(o,r);if(Gf.xfs.existsSync(l)){let A,f;try{f=await Gf.xfs.readFilePromise(l,"utf8"),A=(0,Jgt.parseSyml)(f)}catch{let I="";throw f?.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(I=" (in particular, make sure you list the colons after each key name)"),new uX.UsageError(`Parse error when loading ${l}; please check it's proper Yaml${I}`)}n.unshift({path:l,cwd:o,data:A})}a=Gf.ppath.dirname(o)}return n}static async findFolderRcFile(t){let r=Gf.ppath.join(t,Gf.Filename.rc),n;try{n=await Gf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,Jgt.parseSyml)(n);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,n=t,a=null;for(;n!==a;){if(a=n,Gf.xfs.existsSync(Gf.ppath.join(a,Gf.Filename.lockfile)))return a;Gf.xfs.existsSync(Gf.ppath.join(a,Gf.Filename.manifest))&&(r=a),n=Gf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,n={}){let a=zgr(),o=Gf.ppath.join(t,a),l=Gf.xfs.existsSync(o)?(0,Jgt.parseSyml)(await Gf.xfs.readFilePromise(o,"utf8")):{},A=!1,f;if(typeof r=="function"){try{f=r(l)}catch{f=r({})}if(f===l)return!1}else{f=l;for(let I of Object.keys(r)){let C=l[I],b=r[I],E;if(typeof b=="function")try{E=b(C)}catch{E=b(void 0)}else E=b;C!==E&&(E===e.deleteProperty?delete f[I]:f[I]=E,A=!0)}if(!A)return!1}return await Gf.xfs.changeFilePromise(o,(0,Jgt.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,n=>{let a=n.plugins??[];if(a.length===0)return{...n,plugins:r};let o=[],l=[...r];for(let A of a){let f=typeof A!="string"?A.path:A,I=l.find(C=>C.path===f);I?(o.push(I),l=l.filter(C=>C!==I)):o.push(A)}return o.push(...l),{...n,plugins:o}})}static async updateHomeConfiguration(t){let r=Kgt.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=bve.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,n]of Object.entries(t))if(n!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,n),this.values.set(r,$gr(this,n))}}useWithSource(t,r,n,a){try{this.use(t,r,n,a)}catch(o){throw o.message+=` (in ${tb.pretty(this,t,tb.Type.PATH)})`,o}}use(t,r,n,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let l of["enableStrictSettings",...Object.keys(r)]){let A=r[l],f=Boe.getSource(A);if(f&&(t=f),typeof A>"u"||l==="plugins"||t===""&&rWo.has(l))continue;if(l==="rcFilename")throw new uX.UsageError(`The rcFilename settings can only be set via ${`${Zm.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let I=this.settings.get(l);if(!I){let b=Kgt.getHomeFolder(),E=t[0]!=="<"?Gf.ppath.dirname(t):null;if(a&&!(E!==null?b===E:!1))throw new uX.UsageError(`Unrecognized or legacy configuration settings found: ${l} - run "yarn config" to see the list of settings supported in Yarn`);this.invalid.set(l,t);continue}if(this.sources.has(l)&&!(o||I.type===Vl.MAP||I.isArray&&I.concatenateValues))continue;let C;try{C=qgr(this,l,A,I,n)}catch(b){throw b.message+=` in ${tb.pretty(this,t,tb.Type.PATH)}`,b}if(l==="enableStrictSettings"&&t!==""){a=C;continue}if(I.type===Vl.MAP){let b=this.values.get(l);this.values.set(l,new Map(o?[...b,...C]:[...C,...b])),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else if(I.isArray&&I.concatenateValues){let b=this.values.get(l);this.values.set(l,o?[...b,...C]:[...C,...b]),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else this.values.set(l,C),this.sources.set(l,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:n=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new uX.UsageError(`Couldn't find a configuration settings named "${t}"`);return jgt(a,o,{hideSecrets:r,getNativePaths:n})}getSubprocessStreams(t,{header:r,prefix:n,report:a}){let o,l,A=Gf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${n} ${tb.pretty(this,"STDOUT","green")}`),I=a.createStreamReporter(`${n} ${tb.pretty(this,"STDERR","red")}`);o=new iZn.PassThrough,o.pipe(f),o.pipe(A),l=new iZn.PassThrough,l.pipe(I),l.pipe(A)}else o=A,l=A,typeof r<"u"&&o.write(`${r} -`);return{stdout:o,stderr:l}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new UPo.MultiResolver([new jPo.VirtualResolver,new qPo.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new JPo.MultiFetcher([new KPo.VirtualFetcher,new zPo.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let n of r.linkers||[])t.push(new n);return t}getSupportedArchitectures(){let t=aZn.getArchitecture(),r=this.get("supportedArchitectures"),n=r.get("os");n!==null&&(n=n.map(l=>l==="current"?t.os:l));let a=r.get("cpu");a!==null&&(a=a.map(l=>l==="current"?t.cpu:l));let o=r.get("libc");return o!==null&&(o=UN.mapAndFilter(o,l=>l==="current"?t.libc??UN.mapAndFilter.skip:l)),{os:n,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(n,a,{userProvided:o=!1}={})=>{if(!Ugt.validRange(n.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let l=new XPo.Manifest;l.load(a,{yamlCompatibilityMode:!0});let A=UN.getArrayWithDefault(t,n.identHash),f=[];A.push([n.range,f]);let I={status:uM.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:n};for(let C of l.dependencies.values())f.push({...I,type:uM.PackageExtensionType.Dependency,descriptor:C});for(let C of l.peerDependencies.values())f.push({...I,type:uM.PackageExtensionType.PeerDependency,descriptor:C});for(let[C,b]of l.peerDependenciesMeta)for(let[E,N]of Object.entries(b))f.push({...I,type:uM.PackageExtensionType.PeerDependencyMeta,selector:C,key:E,value:N})};await this.triggerHook(n=>n.registerPackageExtensions,this,r);for(let[n,a]of this.get("packageExtensions"))r(TZ.parseDescriptor(n,!0),UN.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return Ugt.validRange(t.reference)?TZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):Zm.TAG_REGEXP.test(t.reference)?TZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return Ugt.validRange(t.range)?TZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):Zm.TAG_REGEXP.test(t.range)?TZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,n])=>[r,this.normalizeDependency(n)]))}normalizePackage(t,{packageExtensions:r}){let n=TZ.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let l=t.version;if(l!==null){for(let[A,f]of a)if(Ugt.satisfiesWithPrereleases(l,A))for(let I of f)switch(I.status===uM.PackageExtensionStatus.Inactive&&(I.status=uM.PackageExtensionStatus.Redundant),I.type){case uM.PackageExtensionType.Dependency:typeof n.dependencies.get(I.descriptor.identHash)>"u"&&(I.status=uM.PackageExtensionStatus.Active,n.dependencies.set(I.descriptor.identHash,this.normalizeDependency(I.descriptor)));break;case uM.PackageExtensionType.PeerDependency:typeof n.peerDependencies.get(I.descriptor.identHash)>"u"&&(I.status=uM.PackageExtensionStatus.Active,n.peerDependencies.set(I.descriptor.identHash,I.descriptor));break;case uM.PackageExtensionType.PeerDependencyMeta:{let C=n.peerDependenciesMeta.get(I.selector);(typeof C>"u"||!Object.hasOwn(C,I.key)||C[I.key]!==I.value)&&(I.status=uM.PackageExtensionStatus.Active,UN.getFactoryWithDefault(n.peerDependenciesMeta,I.selector,()=>({}))[I.key]=I.value)}break;default:UN.assertNever(I)}}}let o=l=>l.scope?`${l.scope}__${l.name}`:`${l.name}`;for(let l of n.peerDependenciesMeta.keys()){let A=TZ.parseIdent(l);n.peerDependencies.has(A.identHash)||n.peerDependencies.set(A.identHash,TZ.makeDescriptor(A,"*"))}for(let l of n.peerDependencies.values()){if(l.scope==="types")continue;let A=o(l),f=TZ.makeIdent("types",A),I=TZ.stringifyIdent(f);n.peerDependencies.has(f.identHash)||n.peerDependenciesMeta.has(I)||n.dependencies.has(f.identHash)||(n.peerDependencies.set(f.identHash,TZ.makeDescriptor(f,"*")),n.peerDependenciesMeta.set(I,{optional:!0}))}return n.dependencies=new Map(UN.sortMap(n.dependencies,([,l])=>TZ.stringifyDescriptor(l))),n.peerDependencies=new Map(UN.sortMap(n.peerDependencies,([,l])=>TZ.stringifyDescriptor(l))),n}getLimit(t){return UN.getFactoryWithDefault(this.limits,t,()=>(0,YPo.default)(this.get(t)))}async triggerHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let n of r)await this.triggerHook(t,...n)}async reduceHook(t,r,...n){let a=r;for(let o of this.plugins.values()){let l=o.hooks;if(!l)continue;let A=t(l);A&&(a=await A(a,...n))}return a}async firstHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);if(!o)continue;let l=await o(...r);if(typeof l<"u")return l}return null}};Zm.Configuration=p5e;p5e.deleteProperty=Symbol();p5e.telemetry=null});var Xgt=H(KK=>{"use strict";Object.defineProperty(KK,"__esModule",{value:!0});KK.ExecError=KK.PipeError=KK.EndStrategy=void 0;KK.pipevp=uWo;KK.execvp=gWo;var cZn=(Pa(),vi(Va)),qgt=ro(),lZn=cZn.__importDefault(Zct()),uZn=f5e(),$gt=M9(),gZn=sM(),gM=cZn.__importStar(rM()),nIe;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(nIe||(KK.EndStrategy=nIe={}));var I5e=class extends gZn.ReportError{constructor({fileName:t,code:r,signal:n}){let a=uZn.Configuration.create(qgt.ppath.cwd()),o=gM.pretty(a,t,gM.Type.PATH);super($gt.MessageName.EXCEPTION,`Child ${o} reported an error`,l=>{dWo(r,n,{configuration:a,report:l})}),this.code=rAr(r,n)}};KK.PipeError=I5e;var eAt=class extends I5e{constructor({fileName:t,code:r,signal:n,stdout:a,stderr:o}){super({fileName:t,code:r,signal:n}),this.stdout=a,this.stderr=o}};KK.ExecError=eAt;function tIe(e){return e!==null&&typeof e.fd=="number"}var rIe=new Set;function eAr(){}function tAr(){for(let e of rIe)e.kill()}async function uWo(e,t,{cwd:r,env:n=process.env,strict:a=!1,stdin:o=null,stdout:l,stderr:A,end:f=nIe.Always}){let I=["pipe","pipe","pipe"];o===null?I[0]="ignore":tIe(o)&&(I[0]=o),tIe(l)&&(I[1]=l),tIe(A)&&(I[2]=A);let C=(0,lZn.default)(e,t,{cwd:qgt.npath.fromPortablePath(r),env:{...n,PWD:qgt.npath.fromPortablePath(r)},stdio:I});rIe.add(C),rIe.size===1&&(process.on("SIGINT",eAr),process.on("SIGTERM",tAr)),!tIe(o)&&o!==null&&o.pipe(C.stdin),tIe(l)||C.stdout.pipe(l,{end:!1}),tIe(A)||C.stderr.pipe(A,{end:!1});let b=()=>{for(let E of new Set([l,A]))tIe(E)||E.end()};return new Promise((E,N)=>{C.on("error",B=>{rIe.delete(C),rIe.size===0&&(process.off("SIGINT",eAr),process.off("SIGTERM",tAr)),(f===nIe.Always||f===nIe.ErrorCode)&&b(),N(B)}),C.on("close",(B,F)=>{rIe.delete(C),rIe.size===0&&(process.off("SIGINT",eAr),process.off("SIGTERM",tAr)),(f===nIe.Always||f===nIe.ErrorCode&&B!==0)&&b(),B===0||!a?E({code:rAr(B,F)}):N(new I5e({fileName:e,code:B,signal:F}))})})}async function gWo(e,t,{cwd:r,env:n=process.env,encoding:a="utf8",strict:o=!1}){let l=["ignore","pipe","pipe"],A=[],f=[],I=qgt.npath.fromPortablePath(r);typeof n.PWD<"u"&&(n={...n,PWD:I});let C=(0,lZn.default)(e,t,{cwd:I,env:n,stdio:l});return C.stdout.on("data",b=>{A.push(b)}),C.stderr.on("data",b=>{f.push(b)}),await new Promise((b,E)=>{C.on("error",N=>{let B=uZn.Configuration.create(r),F=gM.pretty(B,e,gM.Type.PATH);E(new gZn.ReportError($gt.MessageName.EXCEPTION,`Process ${F} failed to spawn`,Q=>{Q.reportError($gt.MessageName.EXCEPTION,` ${gM.prettyField(B,{label:"Thrown Error",value:gM.tuple(gM.Type.NO_HINT,N.message)})}`)}))}),C.on("close",(N,B)=>{let F=a==="buffer"?Buffer.concat(A):Buffer.concat(A).toString(a),Q=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);N===0||!o?b({code:rAr(N,B),stdout:F,stderr:Q}):E(new eAt({fileName:e,code:N,signal:B,stdout:F,stderr:Q}))})})}var AWo=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function rAr(e,t){let r=AWo.get(t);return typeof r<"u"?128+r:e??1}function dWo(e,t,{configuration:r,report:n}){n.reportError($gt.MessageName.EXCEPTION,` ${gM.prettyField(r,e!==null?{label:"Exit Code",value:gM.tuple(gM.Type.NUMBER,e)}:{label:"Exit Signal",value:gM.tuple(gM.Type.CODE,t)})}`)}});var nAr=H(jK=>{"use strict";Object.defineProperty(jK,"__esModule",{value:!0});jK.cachedInstance=void 0;jK.setFactory=pWo;jK.getInstance=fWo;jK.tryInstance=IWo;var AZn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function pWo(e){AZn=e}function fWo(){return typeof jK.cachedInstance>"u"&&(jK.cachedInstance=AZn()),jK.cachedInstance}function IWo(){return jK.cachedInstance}});var dZn=H((tAt,sAr)=>{var hWo=Object.assign({},wt("fs")),iAr=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},n,a;r.ready=new Promise(function(Zs,so){n=Zs,a=so});var o={},l;for(l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var A=[],f="./this.program",I=function(Zs,so){throw so},C=!1,b=!0,E="";function N(Zs){return r.locateFile?r.locateFile(Zs,E):E+Zs}var B,F,Q,X;b&&(C?E=wt("path").dirname(E)+"/":E=__dirname+"/",B=function(so,Ea){var Ml=mI(so);return Ml?Ea?Ml:Ml.toString():(Q||(Q=hWo),X||(X=wt("path")),so=X.normalize(so),Q.readFileSync(so,Ea?null:"utf8"))},F=function(so){var Ea=B(so,!0);return Ea.buffer||(Ea=new Uint8Array(Ea)),et(Ea.buffer),Ea},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),A=process.argv.slice(2),I=function(Zs){process.exit(Zs)},r.inspect=function(){return"[Emscripten Module object]"});var ae=r.print||console.log.bind(console),ne=r.printErr||console.warn.bind(console);for(l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);o=null,r.arguments&&(A=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(I=r.quit);var ce=0,fe=function(Zs){ce=Zs},ue;r.wasmBinary&&(ue=r.wasmBinary);var de=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Qi("no native wasm support detected");function be(Zs,so,Ea){switch(so=so||"i8",so.charAt(so.length-1)==="*"&&(so="i32"),so){case"i1":return qt[Zs>>0];case"i8":return qt[Zs>>0];case"i16":return ma((Zs>>1)*2);case"i32":return vu((Zs>>2)*4);case"i64":return vu((Zs>>2)*4);case"float":return Nc((Zs>>2)*4);case"double":return iA((Zs>>3)*8);default:Qi("invalid type for getValue: "+so)}return null}var Se,De=!1,k;function et(Zs,so){Zs||Qi("Assertion failed: "+so)}function ct(Zs){var so=r["_"+Zs];return et(so,"Cannot call unknown function "+Zs+", make sure it is exported"),so}function Me(Zs,so,Ea,Ml,Dr){var Wn={string:function(ef){var ip=0;if(ef!=null&&ef!==0){var _d=(ef.length<<2)+1;ip=np(_d),Tr(ef,ip,_d)}return ip},array:function(ef){var ip=np(ef.length);return vt(ef,ip),ip}};function di(ef){return so==="string"?At(ef):so==="boolean"?!!ef:ef}var aa=ct(Zs),Bo=[],us=0;if(Ml)for(var Ql=0;Ql=Ea)&&Xt[Ml];)++Ml;return St.decode(Xt.subarray(Zs,Ml))}function Yt(Zs,so,Ea,Ml){if(!(Ml>0))return 0;for(var Dr=Ea,Wn=Ea+Ml-1,di=0;di=55296&&aa<=57343){var Bo=Zs.charCodeAt(++di);aa=65536+((aa&1023)<<10)|Bo&1023}if(aa<=127){if(Ea>=Wn)break;so[Ea++]=aa}else if(aa<=2047){if(Ea+1>=Wn)break;so[Ea++]=192|aa>>6,so[Ea++]=128|aa&63}else if(aa<=65535){if(Ea+2>=Wn)break;so[Ea++]=224|aa>>12,so[Ea++]=128|aa>>6&63,so[Ea++]=128|aa&63}else{if(Ea+3>=Wn)break;so[Ea++]=240|aa>>18,so[Ea++]=128|aa>>12&63,so[Ea++]=128|aa>>6&63,so[Ea++]=128|aa&63}}return so[Ea]=0,Ea-Dr}function Tr(Zs,so,Ea){return Yt(Zs,Xt,so,Ea)}function Nr(Zs){for(var so=0,Ea=0;Ea=55296&&Ml<=57343&&(Ml=65536+((Ml&1023)<<10)|Zs.charCodeAt(++Ea)&1023),Ml<=127?++so:Ml<=2047?so+=2:Ml<=65535?so+=3:so+=4}return so}function er(Zs){var so=Nr(Zs)+1,Ea=Ma(so);return Ea&&Yt(Zs,qt,Ea,so),Ea}function vt(Zs,so){qt.set(Zs,so)}function xt(Zs,so){return Zs%so>0&&(Zs+=so-Zs%so),Zs}var Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt;function Fn(Zs){Zr=Zs,r.HEAP_DATA_VIEW=jt=new DataView(Zs),r.HEAP8=qt=new Int8Array(Zs),r.HEAP16=lr=new Int16Array(Zs),r.HEAP32=Ar=new Int32Array(Zs),r.HEAPU8=Xt=new Uint8Array(Zs),r.HEAPU16=cr=new Uint16Array(Zs),r.HEAPU32=qr=new Uint32Array(Zs),r.HEAPF32=_n=new Float32Array(Zs),r.HEAPF64=ke=new Float64Array(Zs)}var Nn=r.INITIAL_MEMORY||16777216,Hi,po=[],Vr=[],xi=[],io=!1;function ga(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)cl(r.preRun.shift());Ei(po)}function Ya(){io=!0,Ei(Vr)}function Gc(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Hr(r.postRun.shift());Ei(xi)}function cl(Zs){po.unshift(Zs)}function Sc(Zs){Vr.unshift(Zs)}function Hr(Zs){xi.unshift(Zs)}var Wr=0,Ft=null,zr=null;function Rn(Zs){Wr++,r.monitorRunDependencies&&r.monitorRunDependencies(Wr)}function Or(Zs){if(Wr--,r.monitorRunDependencies&&r.monitorRunDependencies(Wr),Wr==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),zr)){var so=zr;zr=null,so()}}r.preloadedImages={},r.preloadedAudios={};function Qi(Zs){r.onAbort&&r.onAbort(Zs),Zs+="",ne(Zs),De=!0,k=1,Zs="abort("+Zs+"). Build with -s ASSERTIONS=1 for more info.";var so=new WebAssembly.RuntimeError(Zs);throw a(so),so}var ps="data:application/octet-stream;base64,";function yo(Zs){return Zs.startsWith(ps)}var bo="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsi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CyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcN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DCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQLDAILAn8CQANAAkACQAJAAkACQCADKAI8Ig1BggJLDQAgAxAvAkAgAygCPCINQYICSw0AIAoNAEEADAgLIA1FDQQgDUECSw0AIAMoAmghCAwBCyADKAJoIghFBEBBACEIDAELIAMoAkggCGoiAUEBayIELQAAIgYgAS0AAEcNACAGIAQtAAJHDQAgBEEDaiEEQQAhCQJAA0AgBiAELQAARw0BIAQtAAEgBkcEQCAJQQFyIQkMAgsgBC0AAiAGRwRAIAlBAnIhCQwCCyAELQADIAZHBEAgCUEDciEJDAILIAQtAAQgBkcEQCAJQQRyIQkMAgsgBC0ABSAGRwRAIAlBBXIhCQwCCyAELQAGIAZHBEAgCUEGciEJDAILIAQtAAcgBkcEQCAJQQdyIQkMAgsgBEEIaiEEIAlB+AFJIQEgCUEIaiEJIAENAAtBgAIhCQtBggIhBCANIAlBAmoiASABIA1LGyIBQYECSw0BIAEiBEECSw0BCyADKAJIIAhqLQAAIQQgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtakEAOgAAIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qIAQ6AAAgAyAEQQJ0aiIBIAEvAeQBQQFqOwHkASADIAMoAjxBAWs2AjwgAyADKAJoQQFqIgQ2AmgMAQsgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtakEBOgAAIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qIARBA2s6AAAgAyADKAKALkEBajYCgC4gBEH9zgBqLQAAQQJ0IANqQegJaiIBIAEvAQBBAWo7AQAgA0GAywAtAABBAnRqQdgTaiIBIAEvAQBBAWo7AQAgAyADKAI8IARrNgI8IAMgAygCaCAEaiIENgJoCyADKALwLSADKAL0LUcNAUEAIQggAyADKAJYIgFBAE4EfyADKAJIIAFqBUEACyAEIAFrQQAQDyADIAMoAmg2AlggAygCABAKIAMoAgAoAhANAQwCCwsgA0EANgKELiAKQQRGBEAgAyADKAJYIgFBAE4EfyADKAJIIAFqBUEACyADKAJoIAFrQQEQDyADIAMoAmg2AlggAygCABAKQQNBAiADKAIAKAIQGwwCCyADKALwLQRAQQAhCCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEEUNAQtBASEICyAICwwBCyADIAogAUEMbEG42ABqKAIAEQIACyIBQX5xQQJGBEAgA0GaBTYCIAsgAUF9cUUEQEEAIQQgBSgCEA0CDAQLIAFBAUcNAAJAAkACQCAKQQFrDgUAAQEBAgELIAMpA5guISICfwJ+IAMoAqAuIgFBA2oiCUE/TQRAQgIgAa2GICKEDAELIAFBwABGBEAgAygCBCADKAIQaiAiNwAAIAMgAygCEEEIajYCEEICISJBCgwCCyADKAIEIAMoAhBqQgIgAa2GICKENwAAIAMgAygCEEEIajYCECABQT1rIQlCAkHAACABa62ICyEiIAlBB2ogCUE5SQ0AGiADKAIEIAMoAhBqICI3AAAgAyADKAIQQQhqNgIQQgAhIiAJQTlrCyEBIAMgIjcDmC4gAyABNgKgLiADEDAMAQsgA0EAQQBBABA5IApBA0cNACADKAJQQQBBgIAIEBkgAygCPA0AIANBADYChC4gA0EANgJYIANBADYCaAsgBRAKIAUoAhANAAwDC0EAIQQgCkEERw0AAkACfwJAAkAgAygCFEEBaw4CAQADCyAFIANBoAFqQeCAASgCABEBACIBNgIwIAMoAgQgAygCEGogATYAACADIAMoAhBBBGoiATYCECADKAIEIAFqIQQgBSgCCAwBCyADKAIEIAMoAhBqIQQgBSgCMCIBQRh0IAFBCHRBgID8B3FyIAFBCHZBgP4DcSABQRh2cnILIQEgBCABNgAAIAMgAygCEEEEajYCEAsgBRAKIAMoAhQiAUEBTgRAIANBACABazYCFAsgAygCEEUhBAsgBAwCCyAFQezAACgCADYCGEF7DAELIANBfzYCJEEACwwBCyMAQRBrIhQkAEF+IRcCQCABIgxFDQAgDCgCIEUNACAMKAIkRQ0AIAwoAhwiB0UNACAHKAIAIAxHDQAgBygCBCIIQbT+AGtBH0sNACAMKAIMIhBFDQAgDCgCACIBRQRAIAwoAgQNAQsgCEG//gBGBEAgB0HA/gA2AgRBwP4AIQgLIAdBpAFqIR8gB0G8BmohGSAHQbwBaiEcIAdBoAFqIR0gB0G4AWohGiAHQfwKaiEYIAdBQGshHiAHKAKIASEFIAwoAgQiICEGIAcoAoQBIQogDCgCECIPIRYCfwJAAkACQANAAkBBfSEEQQEhCQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAhBtP4Aaw4fBwYICQolJicoBSwtLQsZGgQMAjIzATUANw0OAzlISUwLIAcoApQBIQMgASEEIAYhCAw1CyAHKAKUASEDIAEhBCAGIQgMMgsgBygCtAEhCAwuCyAHKAIMIQgMQQsgBUEOTw0pIAZFDUEgBUEIaiEIIAFBAWohBCAGQQFrIQkgAS0AACAFdCAKaiEKIAVBBkkNDCAEIQEgCSEGIAghBQwpCyAFQSBPDSUgBkUNQCABQQFqIQQgBkEBayEIIAEtAAAgBXQgCmohCiAFQRhJDQ0gBCEBIAghBgwlCyAFQRBPDRUgBkUNPyAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEISQ0NIAQhASAJIQYgCCEFDBULIAcoAgwiC0UNByAFQRBPDSIgBkUNPiAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEISQ0NIAQhASAJIQYgCCEFDCILIAVBH0sNFQwUCyAFQQ9LDRYMFQsgBygCFCIEQYAIcUUEQCAFIQgMFwsgCiEIIAVBD0sNGAwXCyAKIAVBB3F2IQogBUF4cSIFQR9LDQwgBkUNOiAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEYSQ0GIAQhASAJIQYgCCEFDAwLIAcoArQBIgggBygCqAEiC08NIwwiCyAPRQ0qIBAgBygCjAE6AAAgB0HI/gA2AgQgD0EBayEPIBBBAWohECAHKAIEIQgMOQsgBygCDCIDRQRAQQAhCAwJCyAFQR9LDQcgBkUNNyAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEYSQ0BIAQhASAJIQYgCCEFDAcLIAdBwP4ANgIEDCoLIAlFBEAgBCEBQQAhBiAIIQUgDSEEDDgLIAVBEGohCSABQQJqIQQgBkECayELIAEtAAEgCHQgCmohCiAFQQ9LBEAgBCEBIAshBiAJIQUMBgsgC0UEQCAEIQFBACEGIAkhBSANIQQMOAsgBUEYaiEIIAFBA2ohBCAGQQNrIQsgAS0AAiAJdCAKaiEKIAVBB0sEQCAEIQEgCyEGIAghBQwGCyALRQRAIAQhAUEAIQYgCCEFIA0hBAw4CyAFQSBqIQUgBkEEayEGIAEtAAMgCHQgCmohCiABQQRqIQEMBQsgCUUEQCAEIQFBACEGIAghBSANIQQMNwsgBUEQaiEFIAZBAmshBiABLQABIAh0IApqIQogAUECaiEBDBwLIAlFBEAgBCEBQQAhBiAIIQUgDSEEDDYLIAVBEGohCSABQQJqIQQgBkECayELIAEtAAEgCHQgCmohCiAFQQ9LBEAgBCEBIAshBiAJIQUMBgsgC0UEQCAEIQFBACEGIAkhBSANIQQMNgsgBUEYaiEIIAFBA2ohBCAGQQNrIQsgAS0AAiAJdCAKaiEKIAUEQCAEIQEgCyEGIAghBQwGCyALRQRAIAQhAUEAIQYgCCEFIA0hBAw2CyAFQSBqIQUgBkEEayEGIAEtAAMgCHQgCmohCiABQQRqIQEMBQsgBUEIaiEJIAhFBEAgBCEBQQAhBiAJIQUgDSEEDDULIAFBAmohBCAGQQJrIQggAS0AASAJdCAKaiEKIAVBD0sEQCAEIQEgCCEGDBgLIAVBEGohCSAIRQRAIAQhAUEAIQYgCSEFIA0hBAw1CyABQQNqIQQgBkEDayEIIAEtAAIgCXQgCmohCiAFQQdLBEAgBCEBIAghBgwYCyAFQRhqIQUgCEUEQCAEIQFBACEGIA0hBAw1CyAGQQRrIQYgAS0AAyAFdCAKaiEKIAFBBGohAQwXCyAJDQYgBCEBQQAhBiAIIQUgDSEEDDMLIAlFBEAgBCEBQQAhBiAIIQUgDSEEDDMLIAVBEGohBSAGQQJrIQYgAS0AASAIdCAKaiEKIAFBAmohAQwUCyAMIBYgD2siCSAMKAIUajYCFCAHIAcoAiAgCWo2AiACQCADQQRxRQ0AIAkEQAJAIBAgCWshBCAMKAIcIggoAhQEQCAIQUBrIAQgCUEAQdiAASgCABEIAAwBCyAIIAgoAhwgBCAJQcCAASgCABEAACIENgIcIAwgBDYCMAsLIAcoAhRFDQAgByAeQeCAASgCABEBACIENgIcIAwgBDYCMAsCQCAHKAIMIghBBHFFDQAgBygCHCAKIApBCHRBgID8B3EgCkEYdHIgCkEIdkGA/gNxIApBGHZyciAHKAIUG0YNACAHQdH+ADYCBCAMQaQMNgIYIA8hFiAHKAIEIQgMMQtBACEKQQAhBSAPIRYLIAdBz/4ANgIEDC0LIApB//8DcSIEIApBf3NBEHZHBEAgB0HR/gA2AgQgDEGOCjYCGCAHKAIEIQgMLwsgB0HC/gA2AgQgByAENgKMAUEAIQpBACEFCyAHQcP+ADYCBAsgBygCjAEiBARAIA8gBiAEIAQgBksbIgQgBCAPSxsiCEUNHiAQIAEgCBAHIQQgByAHKAKMASAIazYCjAEgBCAIaiEQIA8gCGshDyABIAhqIQEgBiAIayEGIAcoAgQhCAwtCyAHQb/+ADYCBCAHKAIEIQgMLAsgBUEQaiEFIAZBAmshBiABLQABIAh0IApqIQogAUECaiEBCyAHIAo2AhQgCkH/AXFBCEcEQCAHQdH+ADYCBCAMQYIPNgIYIAcoAgQhCAwrCyAKQYDAA3EEQCAHQdH+ADYCBCAMQY0JNgIYIAcoAgQhCAwrCyAHKAIkIgQEQCAEIApBCHZBAXE2AgALAkAgCkGABHFFDQAgBy0ADEEEcUUNACAUIAo7AAwgBwJ/IAcoAhwhBUEAIBRBDGoiBEUNABogBSAEQQJB1IABKAIAEQAACzYCHAsgB0G2/gA2AgRBACEFQQAhCgsgBkUNKCABQQFqIQQgBkEBayEIIAEtAAAgBXQgCmohCiAFQRhPBEAgBCEBIAghBgwBCyAFQQhqIQkgCEUEQCAEIQFBACEGIAkhBSANIQQMKwsgAUECaiEEIAZBAmshCCABLQABIAl0IApqIQogBUEPSwRAIAQhASAIIQYMAQsgBUEQaiEJIAhFBEAgBCEBQQAhBiAJIQUgDSEEDCsLIAFBA2ohBCAGQQNrIQggAS0AAiAJdCAKaiEKIAVBB0sEQCAEIQEgCCEGDAELIAVBGGohBSAIRQRAIAQhAUEAIQYgDSEEDCsLIAZBBGshBiABLQADIAV0IApqIQogAUEEaiEBCyAHKAIkIgQEQCAEIAo2AgQLAkAgBy0AFUECcUUNACAHLQAMQQRxRQ0AIBQgCjYADCAHAn8gBygCHCEFQQAgFEEMaiIERQ0AGiAFIARBBEHUgAEoAgARAAALNgIcCyAHQbf+ADYCBEEAIQVBACEKCyAGRQ0mIAFBAWohBCAGQQFrIQggAS0AACAFdCAKaiEKIAVBCE8EQCAEIQEgCCEGDAELIAVBCGohBSAIRQRAIAQhAUEAIQYgDSEEDCkLIAZBAmshBiABLQABIAV0IApqIQogAUECaiEBCyAHKAIkIgQEQCAEIApBCHY2AgwgBCAKQf8BcTYCCAsCQCAHLQAVQQJxRQ0AIActAAxBBHFFDQAgFCAKOwAMIAcCfyAHKAIcIQVBACAUQQxqIgRFDQAaIAUgBEECQdSAASgCABEAAAs2AhwLIAdBuP4ANgIEQQAhCEEAIQVBACEKIAcoAhQiBEGACHENAQsgBygCJCIEBEAgBEEANgIQCyAIIQUMAgsgBkUEQEEAIQYgCCEKIA0hBAwmCyABQQFqIQkgBkEBayELIAEtAAAgBXQgCGohCiAFQQhPBEAgCSEBIAshBgwBCyAFQQhqIQUgC0UEQCAJIQFBACEGIA0hBAwmCyAGQQJrIQYgAS0AASAFdCAKaiEKIAFBAmohAQsgByAKQf//A3EiCDYCjAEgBygCJCIFBEAgBSAINgIUC0EAIQUCQCAEQYAEcUUNACAHLQAMQQRxRQ0AIBQgCjsADCAHAn8gBygCHCEIQQAgFEEMaiIERQ0AGiAIIARBAkHUgAEoAgARAAALNgIcC0EAIQoLIAdBuf4ANgIECyAHKAIUIglBgAhxBEAgBiAHKAKMASIIIAYgCEkbIg4EQAJAIAcoAiQiA0UNACADKAIQIgRFDQAgAygCGCILIAMoAhQgCGsiCE0NACAEIAhqIAEgCyAIayAOIAggDmogC0sbEAcaIAcoAhQhCQsCQCAJQYAEcUUNACAHLQAMQQRxRQ0AIAcCfyAHKAIcIQRBACABRQ0AGiAEIAEgDkHUgAEoAgARAAALNgIcCyAHIAcoAowBIA5rIgg2AowBIAYgDmshBiABIA5qIQELIAgNEwsgB0G6/gA2AgQgB0EANgKMAQsCQCAHLQAVQQhxBEBBACEIIAZFDQQDQCABIAhqLQAAIQMCQCAHKAIkIgtFDQAgCygCHCIERQ0AIAcoAowBIgkgCygCIE8NACAHIAlBAWo2AowBIAQgCWogAzoAAAsgA0EAIAYgCEEBaiIISxsNAAsCQCAHLQAVQQJxRQ0AIActAAxBBHFFDQAgBwJ/IAcoAhwhBEEAIAFFDQAaIAQgASAIQdSAASgCABEAAAs2AhwLIAEgCGohASAGIAhrIQYgA0UNAQwTCyAHKAIkIgRFDQAgBEEANgIcCyAHQbv+ADYCBCAHQQA2AowBCwJAIActABVBEHEEQEEAIQggBkUNAwNAIAEgCGotAAAhAwJAIAcoAiQiC0UNACALKAIkIgRFDQAgBygCjAEiCSALKAIoTw0AIAcgCUEBajYCjAEgBCAJaiADOgAACyADQQAgBiAIQQFqIghLGw0ACwJAIActABVBAnFFDQAgBy0ADEEEcUUNACAHAn8gBygCHCEEQQAgAUUNABogBCABIAhB1IABKAIAEQAACzYCHAsgASAIaiEBIAYgCGshBiADRQ0BDBILIAcoAiQiBEUNACAEQQA2AiQLIAdBvP4ANgIECyAHKAIUIgtBgARxBEACQCAFQQ9LDQAgBkUNHyAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEITwRAIAQhASAJIQYgCCEFDAELIAlFBEAgBCEBQQAhBiAIIQUgDSEEDCILIAVBEGohBSAGQQJrIQYgAS0AASAIdCAKaiEKIAFBAmohAQsCQCAHLQAMQQRxRQ0AIAogBy8BHEYNACAHQdH+ADYCBCAMQdcMNgIYIAcoAgQhCAwgC0EAIQpBACEFCyAHKAIkIgQEQCAEQQE2AjAgBCALQQl2QQFxNgIsCwJAIActAAxBBHFFDQAgC0UNACAHIB5B5IABKAIAEQEAIgQ2AhwgDCAENgIwCyAHQb/+ADYCBCAHKAIEIQgMHgtBACEGDA4LAkAgC0ECcUUNACAKQZ+WAkcNACAHKAIoRQRAIAdBDzYCKAtBACEKIAdBADYCHCAUQZ+WAjsADCAHIBRBDGoiBAR/QQAgBEECQdSAASgCABEAAAVBAAs2AhwgB0G1/gA2AgRBACEFIAcoAgQhCAwdCyAHKAIkIgQEQCAEQX82AjALAkAgC0EBcQRAIApBCHRBgP4DcSAKQQh2akEfcEUNAQsgB0HR/gA2AgQgDEH2CzYCGCAHKAIEIQgMHQsgCkEPcUEIRwRAIAdB0f4ANgIEIAxBgg82AhggBygCBCEIDB0LIApBBHYiBEEPcSIJQQhqIQsgCUEHTUEAIAcoAigiCAR/IAgFIAcgCzYCKCALCyALTxtFBEAgBUEEayEFIAdB0f4ANgIEIAxB+gw2AhggBCEKIAcoAgQhCAwdCyAHQQE2AhxBACEFIAdBADYCFCAHQYACIAl0NgIYIAxBATYCMCAHQb3+AEG//gAgCkGAwABxGzYCBEEAIQogBygCBCEIDBwLIAcgCkEIdEGAgPwHcSAKQRh0ciAKQQh2QYD+A3EgCkEYdnJyIgQ2AhwgDCAENgIwIAdBvv4ANgIEQQAhCkEAIQULIAcoAhBFBEAgDCAPNgIQIAwgEDYCDCAMIAY2AgQgDCABNgIAIAcgBTYCiAEgByAKNgKEAUECIRcMIAsgB0EBNgIcIAxBATYCMCAHQb/+ADYCBAsCfwJAIAcoAghFBEAgBUEDSQ0BIAUMAgsgB0HO/gA2AgQgCiAFQQdxdiEKIAVBeHEhBSAHKAIEIQgMGwsgBkUNGSAGQQFrIQYgAS0AACAFdCAKaiEKIAFBAWohASAFQQhqCyEEIAcgCkEBcTYCCAJAAkACQAJAAkAgCkEBdkEDcUEBaw4DAQIDAAsgB0HB/gA2AgQMAwsgB0Gw2wA2ApgBIAdCiYCAgNAANwOgASAHQbDrADYCnAEgB0HH/gA2AgQMAgsgB0HE/gA2AgQMAQsgB0HR/gA2AgQgDEHXDTYCGAsgBEEDayEFIApBA3YhCiAHKAIEIQgMGQsgByAKQR9xIghBgQJqNgKsASAHIApBBXZBH3EiBEEBajYCsAEgByAKQQp2QQ9xQQRqIgs2AqgBIAVBDmshBSAKQQ52IQogCEEdTUEAIARBHkkbRQRAIAdB0f4ANgIEIAxB6gk2AhggBygCBCEIDBkLIAdBxf4ANgIEQQAhCCAHQQA2ArQBCyAIIQQDQCAFQQJNBEAgBkUNGCAGQQFrIQYgAS0AACAFdCAKaiEKIAVBCGohBSABQQFqIQELIAcgBEEBaiIINgK0ASAHIARBAXRBsOwAai8BAEEBdGogCkEHcTsBvAEgBUEDayEFIApBA3YhCiALIAgiBEsNAAsLIAhBEk0EQEESIAhrIQ1BAyAIa0EDcSIEBEADQCAHIAhBAXRBsOwAai8BAEEBdGpBADsBvAEgCEEBaiEIIARBAWsiBA0ACwsgDUEDTwRAA0AgB0G8AWoiDSAIQQF0IgRBsOwAai8BAEEBdGpBADsBACANIARBsuwAai8BAEEBdGpBADsBACANIARBtOwAai8BAEEBdGpBADsBACANIARBtuwAai8BAEEBdGpBADsBACAIQQRqIghBE0cNAAsLIAdBEzYCtAELIAdBBzYCoAEgByAYNgKYASAHIBg2ArgBQQAhCEEAIBxBEyAaIB0gGRBOIg0EQCAHQdH+ADYCBCAMQfQINgIYIAcoAgQhCAwXCyAHQcb+ADYCBCAHQQA2ArQBQQAhDQsgBygCrAEiFSAHKAKwAWoiESAISwRAQX8gBygCoAF0QX9zIRIgBygCmAEhGwNAIAYhCSABIQsCQCAFIgMgGyAKIBJxIhNBAnRqLQABIg5PBEAgBSEEDAELA0AgCUUNDSALLQAAIAN0IQ4gC0EBaiELIAlBAWshCSADQQhqIgQhAyAEIBsgCiAOaiIKIBJxIhNBAnRqLQABIg5JDQALIAshASAJIQYLAkAgGyATQQJ0ai8BAiIFQQ9NBEAgByAIQQFqIgk2ArQBIAcgCEEBdGogBTsBvAEgBCAOayEFIAogDnYhCiAJIQgMAQsCfwJ/AkACQAJAIAVBEGsOAgABAgsgDkECaiIFIARLBEADQCAGRQ0bIAZBAWshBiABLQAAIAR0IApqIQogAUEBaiEBIARBCGoiBCAFSQ0ACwsgBCAOayEFIAogDnYhBCAIRQRAIAdB0f4ANgIEIAxBvAk2AhggBCEKIAcoAgQhCAwdCyAFQQJrIQUgBEECdiEKIARBA3FBA2ohCSAIQQF0IAdqLwG6AQwDCyAOQQNqIgUgBEsEQANAIAZFDRogBkEBayEGIAEtAAAgBHQgCmohCiABQQFqIQEgBEEIaiIEIAVJDQALCyAEIA5rQQNrIQUgCiAOdiIEQQN2IQogBEEHcUEDagwBCyAOQQdqIgUgBEsEQANAIAZFDRkgBkEBayEGIAEtAAAgBHQgCmohCiABQQFqIQEgBEEIaiIEIAVJDQALCyAEIA5rQQdrIQUgCiAOdiIEQQd2IQogBEH/AHFBC2oLIQlBAAshAyAIIAlqIBFLDRMgCUEBayEEIAlBA3EiCwRAA0AgByAIQQF0aiADOwG8ASAIQQFqIQggCUEBayEJIAtBAWsiCw0ACwsgBEEDTwRAA0AgByAIQQF0aiIEIAM7Ab4BIAQgAzsBvAEgBCADOwHAASAEIAM7AcIBIAhBBGohCCAJQQRrIgkNAAsLIAcgCDYCtAELIAggEUkNAAsLIAcvAbwFRQRAIAdB0f4ANgIEIAxB0Qs2AhggBygCBCEIDBYLIAdBCjYCoAEgByAYNgKYASAHIBg2ArgBQQEgHCAVIBogHSAZEE4iDQRAIAdB0f4ANgIEIAxB2Ag2AhggBygCBCEIDBYLIAdBCTYCpAEgByAHKAK4ATYCnAFBAiAHIAcoAqwBQQF0akG8AWogBygCsAEgGiAfIBkQTiINBEAgB0HR/gA2AgQgDEGmCTYCGCAHKAIEIQgMFgsgB0HH/gA2AgRBACENCyAHQcj+ADYCBAsCQCAGQQ9JDQAgD0GEAkkNACAMIA82AhAgDCAQNgIMIAwgBjYCBCAMIAE2AgAgByAFNgKIASAHIAo2AoQBIAwgFkHogAEoAgARBwAgBygCiAEhBSAHKAKEASEKIAwoAgQhBiAMKAIAIQEgDCgCECEPIAwoAgwhECAHKAIEQb/+AEcNByAHQX82ApBHIAcoAgQhCAwUCyAHQQA2ApBHIAUhCSAGIQggASEEAkAgBygCmAEiEiAKQX8gBygCoAF0QX9zIhVxIg5BAnRqLQABIgsgBU0EQCAFIQMMAQsDQCAIRQ0PIAQtAAAgCXQhCyAEQQFqIQQgCEEBayEIIAlBCGoiAyEJIAMgEiAKIAtqIgogFXEiDkECdGotAAEiC0kNAAsLIBIgDkECdGoiAS8BAiETAkBBACABLQAAIhEgEUHwAXEbRQRAIAshBgwBCyAIIQYgBCEBAkAgAyIFIAsgEiAKQX8gCyARanRBf3MiFXEgC3YgE2oiEUECdGotAAEiDmpPBEAgAyEJDAELA0AgBkUNDyABLQAAIAV0IQ4gAUEBaiEBIAZBAWshBiAFQQhqIgkhBSALIBIgCiAOaiIKIBVxIAt2IBNqIhFBAnRqLQABIg5qIAlLDQALIAEhBCAGIQgLIBIgEUECdGoiAS0AACERIAEvAQIhEyAHIAs2ApBHIAsgDmohBiAJIAtrIQMgCiALdiEKIA4hCwsgByAGNgKQRyAHIBNB//8DcTYCjAEgAyALayEFIAogC3YhCiARRQRAIAdBzf4ANgIEDBALIBFBIHEEQCAHQb/+ADYCBCAHQX82ApBHDBALIBFBwABxBEAgB0HR/gA2AgQgDEHQDjYCGAwQCyAHQcn+ADYCBCAHIBFBD3EiAzYClAELAkAgA0UEQCAHKAKMASELIAQhASAIIQYMAQsgBSEJIAghBiAEIQsCQCADIAVNBEAgBCEBDAELA0AgBkUNDSAGQQFrIQYgCy0AACAJdCAKaiEKIAtBAWoiASELIAlBCGoiCSADSQ0ACwsgByAHKAKQRyADajYCkEcgByAHKAKMASAKQX8gA3RBf3NxaiILNgKMASAJIANrIQUgCiADdiEKCyAHQcr+ADYCBCAHIAs2ApRHCyAFIQkgBiEIIAEhBAJAIAcoApwBIhIgCkF/IAcoAqQBdEF/cyIVcSIOQQJ0ai0AASIDIAVNBEAgBSELDAELA0AgCEUNCiAELQAAIAl0IQMgBEEBaiEEIAhBAWshCCAJQQhqIgshCSALIBIgAyAKaiIKIBVxIg5BAnRqLQABIgNJDQALCyASIA5BAnRqIgEvAQIhEwJAIAEtAAAiEUHwAXEEQCAHKAKQRyEGIAMhCQwBCyAIIQYgBCEBAkAgCyIFIAMgEiAKQX8gAyARanRBf3MiFXEgA3YgE2oiEUECdGotAAEiCWpPBEAgCyEODAELA0AgBkUNCiABLQAAIAV0IQkgAUEBaiEBIAZBAWshBiAFQQhqIg4hBSADIBIgCSAKaiIKIBVxIAN2IBNqIhFBAnRqLQABIglqIA5LDQALIAEhBCAGIQgLIBIgEUECdGoiAS0AACERIAEvAQIhEyAHIAcoApBHIANqIgY2ApBHIA4gA2shCyAKIAN2IQoLIAcgBiAJajYCkEcgCyAJayEFIAogCXYhCiARQcAAcQRAIAdB0f4ANgIEIAxB7A42AhggBCEBIAghBiAHKAIEIQgMEgsgB0HL/gA2AgQgByARQQ9xIgM2ApQBIAcgE0H//wNxNgKQAQsCQCADRQRAIAQhASAIIQYMAQsgBSEJIAghBiAEIQsCQCADIAVNBEAgBCEBDAELA0AgBkUNCCAGQQFrIQYgCy0AACAJdCAKaiEKIAtBAWoiASELIAlBCGoiCSADSQ0ACwsgByAHKAKQRyADajYCkEcgByAHKAKQASAKQX8gA3RBf3NxajYCkAEgCSADayEFIAogA3YhCgsgB0HM/gA2AgQLIA9FDQACfyAHKAKQASIIIBYgD2siBEsEQAJAIAggBGsiCCAHKAIwTQ0AIAcoAoxHRQ0AIAdB0f4ANgIEIAxBuQw2AhggBygCBCEIDBILAn8CQAJ/IAcoAjQiBCAISQRAIAcoAjggBygCLCAIIARrIghragwBCyAHKAI4IAQgCGtqCyILIBAgDyAQaiAQa0EBaqwiISAPIAcoAowBIgQgCCAEIAhJGyIEIAQgD0sbIgitIiIgISAiVBsiIqciCWoiBEkgCyAQT3ENACALIBBNIAkgC2ogEEtxDQAgECALIAkQBxogBAwBCyAQIAsgCyAQayIEIARBH3UiBGogBHMiCRAHIAlqIQQgIiAJrSIkfSIjUEUEQCAJIAtqIQkDQAJAICMgJCAjICRUGyIiQiBUBEAgIiEhDAELICIiIUIgfSImQgWIQgF8QgODIiVQRQRAA0AgBCAJKQAANwAAIAQgCSkAGDcAGCAEIAkpABA3ABAgBCAJKQAINwAIICFCIH0hISAJQSBqIQkgBEEgaiEEICVCAX0iJUIAUg0ACwsgJkLgAFQNAANAIAQgCSkAADcAACAEIAkpABg3ABggBCAJKQAQNwAQIAQgCSkACDcACCAEIAkpADg3ADggBCAJKQAwNwAwIAQgCSkAKDcAKCAEIAkpACA3ACAgBCAJKQBYNwBYIAQgCSkAUDcAUCAEIAkpAEg3AEggBCAJKQBANwBAIAQgCSkAYDcAYCAEIAkpAGg3AGggBCAJKQBwNwBwIAQgCSkAeDcAeCAJQYABaiEJIARBgAFqIQQgIUKAAX0iIUIfVg0ACwsgIUIQWgRAIAQgCSkAADcAACAEIAkpAAg3AAggIUIQfSEhIAlBEGohCSAEQRBqIQQLICFCCFoEQCAEIAkpAAA3AAAgIUIIfSEhIAlBCGohCSAEQQhqIQQLICFCBFoEQCAEIAkoAAA2AAAgIUIEfSEhIAlBBGohCSAEQQRqIQQLICFCAloEQCAEIAkvAAA7AAAgIUICfSEhIAlBAmohCSAEQQJqIQQLICMgIn0hIyAhUEUEQCAEIAktAAA6AAAgCUEBaiEJIARBAWohBAsgI0IAUg0ACwsgBAsMAQsgECAIIA8gBygCjAEiBCAEIA9LGyIIIA9ByIABKAIAEQQACyEQIAcgBygCjAEgCGsiBDYCjAEgDyAIayEPIAQNAiAHQcj+ADYCBCAHKAIEIQgMDwsgDSEJCyAJIQQMDgsgBygCBCEIDAwLIAEgBmohASAFIAZBA3RqIQUMCgsgBCAIaiEBIAUgCEEDdGohBQwJCyAEIAhqIQEgCyAIQQN0aiEFDAgLIAEgBmohASAFIAZBA3RqIQUMBwsgBCAIaiEBIAUgCEEDdGohBQwGCyAEIAhqIQEgAyAIQQN0aiEFDAULIAEgBmohASAFIAZBA3RqIQUMBAsgB0HR/gA2AgQgDEG8CTYCGCAHKAIEIQgMBAsgBCEBIAghBiAHKAIEIQgMAwtBACEGIAQhBSANIQQMAwsCQAJAIAhFBEAgCiEJDAELIAcoAhRFBEAgCiEJDAELAkAgBUEfSw0AIAZFDQMgBUEIaiEJIAFBAWohBCAGQQFrIQsgAS0AACAFdCAKaiEKIAVBGE8EQCAEIQEgCyEGIAkhBQwBCyALRQRAIAQhAUEAIQYgCSEFIA0hBAwGCyAFQRBqIQsgAUECaiEEIAZBAmshAyABLQABIAl0IApqIQogBUEPSwRAIAQhASADIQYgCyEFDAELIANFBEAgBCEBQQAhBiALIQUgDSEEDAYLIAVBGGohCSABQQNqIQQgBkEDayEDIAEtAAIgC3QgCmohCiAFQQdLBEAgBCEBIAMhBiAJIQUMAQsgA0UEQCAEIQFBACEGIAkhBSANIQQMBgsgBUEgaiEFIAZBBGshBiABLQADIAl0IApqIQogAUEEaiEBC0EAIQkgCEEEcQRAIAogBygCIEcNAgtBACEFCyAHQdD+ADYCBEEBIQQgCSEKDAMLIAdB0f4ANgIEIAxBjQw2AhggBygCBCEIDAELC0EAIQYgDSEECyAMIA82AhAgDCAQNgIMIAwgBjYCBCAMIAE2AgAgByAFNgKIASAHIAo2AoQBAkAgBygCLA0AIA8gFkYNAiAHKAIEIgFB0P4ASw0CIAFBzv4ASQ0ACwJ/IBYgD2shCiAHKAIMQQRxIQkCQAJAAkAgDCgCHCIDKAI4Ig1FBEBBASEIIAMgAygCACIBKAIgIAEoAiggAygCmEdBASADKAIodGpBARAoIg02AjggDUUNAQsgAygCLCIGRQRAIANCADcDMCADQQEgAygCKHQiBjYCLAsgBiAKTQRAAkAgCQRAAkAgBiAKTw0AIAogBmshBSAQIAprIQEgDCgCHCIGKAIUBEAgBkFAayABIAVBAEHYgAEoAgARCAAMAQsgBiAGKAIcIAEgBUHAgAEoAgARAAAiATYCHCAMIAE2AjALIAMoAiwiDUUNASAQIA1rIQUgAygCOCEBIAwoAhwiBigCFARAIAZBQGsgASAFIA1B3IABKAIAEQgADAILIAYgBigCHCABIAUgDUHEgAEoAgARBAAiATYCHCAMIAE2AjAMAQsgDSAQIAZrIAYQBxoLIANBADYCNCADIAMoAiw2AjBBAAwECyAKIAYgAygCNCIFayIBIAEgCksbIQsgECAKayEGIAUgDWohBQJAIAkEQAJAIAtFDQAgDCgCHCIBKAIUBEAgAUFAayAFIAYgC0HcgAEoAgARCAAMAQsgASABKAIcIAUgBiALQcSAASgCABEEACIBNgIcIAwgATYCMAsgCiALayIFRQ0BIBAgBWshBiADKAI4IQEgDCgCHCINKAIUBEAgDUFAayABIAYgBUHcgAEoAgARCAAMBQsgDSANKAIcIAEgBiAFQcSAASgCABEEACIBNgIcIAwgATYCMAwECyAFIAYgCxAHGiAKIAtrIgUNAgtBACEIIANBACADKAI0IAtqIgUgBSADKAIsIgFGGzYCNCABIAMoAjAiAU0NACADIAEgC2o2AjALIAgMAgsgAygCOCAQIAVrIAUQBxoLIAMgBTYCNCADIAMoAiw2AjBBAAtFBEAgDCgCECEPIAwoAgQhFyAHKAKIAQwDCyAHQdL+ADYCBAtBfCEXDAILIAYhFyAFCyEFIAwgICAXayIBIAwoAghqNgIIIAwgFiAPayIGIAwoAhRqNgIUIAcgBygCICAGajYCICAMIAcoAghBAEdBBnQgBWogBygCBCIFQb/+AEZBB3RqQYACIAVBwv4ARkEIdCAFQcf+AEYbajYCLCAEIARBeyAEGyABIAZyGyEXCyAUQRBqJAAgFwshASACIAIpAwAgADUCIH03AwACQAJAAkACQCABQQVqDgcBAgICAgMAAgtBAQ8LIAAoAhQNAEEDDwsgACgCACIABEAgACABNgIEIABBDTYCAAtBAiEBCyABCwkAIABBAToADAtEAAJAIAJC/////w9YBEAgACgCFEUNAQsgACgCACIABEAgAEEANgIEIABBEjYCAAtBAA8LIAAgATYCECAAIAI+AhRBAQu5AQEEfyAAQRBqIQECfyAALQAEBEAgARCEAQwBC0F+IQMCQCABRQ0AIAEoAiBFDQAgASgCJCIERQ0AIAEoAhwiAkUNACACKAIAIAFHDQAgAigCBEG0/gBrQR9LDQAgAigCOCIDBEAgBCABKAIoIAMQHiABKAIkIQQgASgCHCECCyAEIAEoAiggAhAeQQAhAyABQQA2AhwLIAMLIgEEQCAAKAIAIgAEQCAAIAE2AgQgAEENNgIACwsgAUUL0gwBBn8gAEIANwIQIABCADcCHCAAQRBqIQICfyAALQAEBEAgACgCCCEBQesMLQAAQTFGBH8Cf0F+IQMCQCACRQ0AIAJBADYCGCACKAIgIgRFBEAgAkEANgIoIAJBJzYCIEEnIQQLIAIoAiRFBEAgAkEoNgIkC0EGIAEgAUF/RhsiBUEASA0AIAVBCUoNAEF8IQMgBCACKAIoQQFB0C4QKCIBRQ0AIAIgATYCHCABIAI2AgAgAUEPNgI0IAFCgICAgKAFNwIcIAFBADYCFCABQYCAAjYCMCABQf//ATYCOCABIAIoAiAgAigCKEGAgAJBAhAoNgJIIAEgAigCICACKAIoIAEoAjBBAhAoIgM2AkwgA0EAIAEoAjBBAXQQGSACKAIgIAIoAihBgIAEQQIQKCEDIAFBgIACNgLoLSABQQA2AkAgASADNgJQIAEgAigCICACKAIoQYCAAkEEECgiAzYCBCABIAEoAugtIgRBAnQ2AgwCQAJAIAEoAkhFDQAgASgCTEUNACABKAJQRQ0AIAMNAQsgAUGaBTYCICACQejAACgCADYCGCACEIQBGkF8DAILIAFBADYCjAEgASAFNgKIASABQgA3AyggASADIARqNgLsLSABIARBA2xBA2s2AvQtQX4hAwJAIAJFDQAgAigCIEUNACACKAIkRQ0AIAIoAhwiAUUNACABKAIAIAJHDQACQAJAIAEoAiAiBEE5aw45AQICAgICAgICAgICAQICAgECAgICAgICAgICAgICAgICAgECAgICAgICAgICAgECAgICAgICAgIBAAsgBEGaBUYNACAEQSpHDQELIAJBAjYCLCACQQA2AgggAkIANwIUIAFBADYCECABIAEoAgQ2AgggASgCFCIDQX9MBEAgAUEAIANrIgM2AhQLIAFBOUEqIANBAkYbNgIgIAIgA0ECRgR/IAFBoAFqQeSAASgCABEBAAVBAQs2AjAgAUF+NgIkIAFBADYCoC4gAUIANwOYLiABQYgXakGg0wA2AgAgASABQcwVajYCgBcgAUH8FmpBjNMANgIAIAEgAUHYE2o2AvQWIAFB8BZqQfjSADYCACABIAFB5AFqNgLoFiABEIgBQQAhAwsgAw0AIAIoAhwiAiACKAIwQQF0NgJEQQAhAyACKAJQQQBBgIAIEBkgAiACKAKIASIEQQxsIgFBtNgAai8BADYClAEgAiABQbDYAGovAQA2ApABIAIgAUGy2ABqLwEANgJ4IAIgAUG22ABqLwEANgJ0QfiAASgCACEFQeyAASgCACEGQYCBASgCACEBIAJCADcCbCACQgA3AmQgAkEANgI8IAJBADYChC4gAkIANwJUIAJBKSABIARBCUYiARs2AnwgAkEqIAYgARs2AoABIAJBKyAFIAEbNgKEAQsgAwsFQXoLDAELAn9BekHrDC0AAEExRw0AGkF+IAJFDQAaIAJBADYCGCACKAIgIgNFBEAgAkEANgIoIAJBJzYCIEEnIQMLIAIoAiRFBEAgAkEoNgIkC0F8IAMgAigCKEEBQaDHABAoIgRFDQAaIAIgBDYCHCAEQQA2AjggBCACNgIAIARBtP4ANgIEIARBzIABKAIAEQkANgKYR0F+IQMCQCACRQ0AIAIoAiBFDQAgAigCJCIFRQ0AIAIoAhwiAUUNACABKAIAIAJHDQAgASgCBEG0/gBrQR9LDQACQAJAIAEoAjgiBgRAIAEoAihBD0cNAQsgAUEPNgIoIAFBADYCDAwBCyAFIAIoAiggBhAeIAFBADYCOCACKAIgIQUgAUEPNgIoIAFBADYCDCAFRQ0BCyACKAIkRQ0AIAIoAhwiAUUNACABKAIAIAJHDQAgASgCBEG0/gBrQR9LDQBBACEDIAFBADYCNCABQgA3AiwgAUEANgIgIAJBADYCCCACQgA3AhQgASgCDCIFBEAgAiAFQQFxNgIwCyABQrT+ADcCBCABQgA3AoQBIAFBADYCJCABQoCAgoAQNwMYIAFCgICAgHA3AxAgAUKBgICAcDcCjEcgASABQfwKaiIFNgK4ASABIAU2ApwBIAEgBTYCmAELQQAgA0UNABogAigCJCACKAIoIAQQHiACQQA2AhwgAwsLIgIEQCAAKAIAIgAEQCAAIAI2AgQgAEENNgIACwsgAkULKQEBfyAALQAERQRAQQAPC0ECIQEgACgCCCIAQQNOBH8gAEEHSgVBAgsLBgAgABAGC2MAQcgAEAkiAEUEQEGEhAEoAgAhASACBEAgAiABNgIEIAJBATYCAAsgAA8LIABBADoADCAAQQE6AAQgACACNgIAIABBADYCOCAAQgA3AzAgACABQQkgAUEBa0EJSRs2AgggAAukCgIIfwF+QfCAAUH0gAEgACgCdEGBCEkbIQYCQANAAkACfwJAIAAoAjxBhQJLDQAgABAvAkAgACgCPCICQYUCSw0AIAENAEEADwsgAkUNAiACQQRPDQBBAAwBCyAAIAAoAmggACgChAERAgALIQMgACAAKAJsOwFgQQIhAgJAIAA1AmggA619IgpCAVMNACAKIAAoAjBBhgJrrVUNACAAKAJwIAAoAnhPDQAgA0UNACAAIAMgBigCABECACICQQVLDQBBAiACIAAoAowBQQFGGyECCwJAIAAoAnAiA0EDSQ0AIAIgA0sNACAAIAAoAvAtIgJBAWo2AvAtIAAoAjwhBCACIAAoAuwtaiAAKAJoIgcgAC8BYEF/c2oiAjoAACAAIAAoAvAtIgVBAWo2AvAtIAUgACgC7C1qIAJBCHY6AAAgACAAKALwLSIFQQFqNgLwLSAFIAAoAuwtaiADQQNrOgAAIAAgACgCgC5BAWo2AoAuIANB/c4Aai0AAEECdCAAakHoCWoiAyADLwEAQQFqOwEAIAAgAkEBayICIAJBB3ZBgAJqIAJBgAJJG0GAywBqLQAAQQJ0akHYE2oiAiACLwEAQQFqOwEAIAAgACgCcCIFQQFrIgM2AnAgACAAKAI8IANrNgI8IAAoAvQtIQggACgC8C0hCSAEIAdqQQNrIgQgACgCaCICSwRAIAAgAkEBaiAEIAJrIgIgBUECayIEIAIgBEkbIAAoAoABEQUAIAAoAmghAgsgAEEANgJkIABBADYCcCAAIAIgA2oiBDYCaCAIIAlHDQJBACECIAAgACgCWCIDQQBOBH8gACgCSCADagVBAAsgBCADa0EAEA8gACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQDQIMAwsgACgCZARAIAAoAmggACgCSGpBAWstAAAhAyAAIAAoAvAtIgRBAWo2AvAtIAQgACgC7C1qQQA6AAAgACAAKALwLSIEQQFqNgLwLSAEIAAoAuwtakEAOgAAIAAgACgC8C0iBEEBajYC8C0gBCAAKALsLWogAzoAACAAIANBAnRqIgMgAy8B5AFBAWo7AeQBIAAoAvAtIAAoAvQtRgRAIAAgACgCWCIDQQBOBH8gACgCSCADagVBAAsgACgCaCADa0EAEA8gACAAKAJoNgJYIAAoAgAQCgsgACACNgJwIAAgACgCaEEBajYCaCAAIAAoAjxBAWs2AjwgACgCACgCEA0CQQAPBSAAQQE2AmQgACACNgJwIAAgACgCaEEBajYCaCAAIAAoAjxBAWs2AjwMAgsACwsgACgCZARAIAAoAmggACgCSGpBAWstAAAhAiAAIAAoAvAtIgNBAWo2AvAtIAMgACgC7C1qQQA6AAAgACAAKALwLSIDQQFqNgLwLSADIAAoAuwtakEAOgAAIAAgACgC8C0iA0EBajYC8C0gAyAAKALsLWogAjoAACAAIAJBAnRqIgIgAi8B5AFBAWo7AeQBIAAoAvAtIAAoAvQtRhogAEEANgJkCyAAIAAoAmgiA0ECIANBAkkbNgKELiABQQRGBEAgACAAKAJYIgFBAE4EfyAAKAJIIAFqBUEACyADIAFrQQEQDyAAIAAoAmg2AlggACgCABAKQQNBAiAAKAIAKAIQGw8LIAAoAvAtBEBBACECIAAgACgCWCIBQQBOBH8gACgCSCABagVBAAsgAyABa0EAEA8gACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQRQ0BC0EBIQILIAIL2BACEH8BfiAAKAKIAUEFSCEOA0ACQAJ/AkACQAJAAn8CQAJAIAAoAjxBhQJNBEAgABAvIAAoAjwiA0GFAksNASABDQFBAA8LIA4NASAIIQMgBSEHIAohDSAGQf//A3FFDQEMAwsgA0UNA0EAIANBBEkNARoLIAAgACgCaEH4gAEoAgARAgALIQZBASECQQAhDSAAKAJoIgOtIAatfSISQgFTDQIgEiAAKAIwQYYCa61VDQIgBkUNAiAAIAZB8IABKAIAEQIAIgZBASAGQfz/A3EbQQEgACgCbCINQf//A3EgA0H//wNxSRshBiADIQcLAkAgACgCPCIEIAZB//8DcSICQQRqTQ0AIAZB//8DcUEDTQRAQQEgBkEBa0H//wNxIglFDQQaIANB//8DcSIEIAdBAWpB//8DcSIDSw0BIAAgAyAJIAQgA2tBAWogAyAJaiAESxtB7IABKAIAEQUADAELAkAgACgCeEEEdCACSQ0AIARBBEkNACAGQQFrQf//A3EiDCAHQQFqQf//A3EiBGohCSAEIANB//8DcSIDTwRAQeyAASgCACELIAMgCUkEQCAAIAQgDCALEQUADAMLIAAgBCADIARrQQFqIAsRBQAMAgsgAyAJTw0BIAAgAyAJIANrQeyAASgCABEFAAwBCyAGIAdqQf//A3EiA0UNACAAIANBAWtB+IABKAIAEQIAGgsgBgwCCyAAIAAoAmgiBUECIAVBAkkbNgKELiABQQRGBEBBACEDIAAgACgCWCIBQQBOBH8gACgCSCABagVBAAsgBSABa0EBEA8gACAAKAJoNgJYIAAoAgAQCkEDQQIgACgCACgCEBsPCyAAKALwLQRAQQAhAkEAIQMgACAAKAJYIgFBAE4EfyAAKAJIIAFqBUEACyAFIAFrQQAQDyAAIAAoAmg2AlggACgCABAKIAAoAgAoAhBFDQMLQQEhAgwCCyADIQdBAQshBEEAIQYCQCAODQAgACgCPEGHAkkNACACIAdB//8DcSIQaiIDIAAoAkRBhgJrTw0AIAAgAzYCaEEAIQogACADQfiAASgCABECACEFAn8CQCAAKAJoIgitIAWtfSISQgFTDQAgEiAAKAIwQYYCa61VDQAgBUUNACAAIAVB8IABKAIAEQIAIQYgAC8BbCIKIAhB//8DcSIFTw0AIAZB//8DcSIDQQRJDQAgCCAEQf//A3FBAkkNARogCCACIApBAWpLDQEaIAggAiAFQQFqSw0BGiAIIAAoAkgiCSACa0EBaiICIApqLQAAIAIgBWotAABHDQEaIAggCUEBayICIApqIgwtAAAgAiAFaiIPLQAARw0BGiAIIAUgCCAAKAIwQYYCayICa0H//wNxQQAgAiAFSRsiEU0NARogCCADQf8BSw0BGiAGIQUgCCECIAQhAyAIIAoiCUECSQ0BGgNAAkAgA0EBayEDIAVBAWohCyAJQQFrIQkgAkEBayECIAxBAWsiDC0AACAPQQFrIg8tAABHDQAgA0H//wNxRQ0AIBEgAkH//wNxTw0AIAVB//8DcUH+AUsNACALIQUgCUH//wNxQQFLDQELCyAIIANB//8DcUEBSw0BGiAIIAtB//8DcUECRg0BGiAIQQFqIQggAyEEIAshBiAJIQogAgwBC0EBIQYgCAshBSAAIBA2AmgLAn8gBEH//wNxIgNBA00EQCAEQf//A3EiA0UNAyAAKAJIIAdB//8DcWotAAAhBCAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qQQA6AAAgACAAKALwLSICQQFqNgLwLSACIAAoAuwtakEAOgAAIAAgACgC8C0iAkEBajYC8C0gAiAAKALsLWogBDoAACAAIARBAnRqIgRB5AFqIAQvAeQBQQFqOwEAIAAgACgCPEEBazYCPCAAKALwLSICIAAoAvQtRiIEIANBAUYNARogACgCSCAHQQFqQf//A3FqLQAAIQkgACACQQFqNgLwLSAAKALsLSACakEAOgAAIAAgACgC8C0iAkEBajYC8C0gAiAAKALsLWpBADoAACAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qIAk6AAAgACAJQQJ0aiICQeQBaiACLwHkAUEBajsBACAAIAAoAjxBAWs2AjwgBCAAKALwLSICIAAoAvQtRmoiBCADQQJGDQEaIAAoAkggB0ECakH//wNxai0AACEHIAAgAkEBajYC8C0gACgC7C0gAmpBADoAACAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qQQA6AAAgACAAKALwLSICQQFqNgLwLSACIAAoAuwtaiAHOgAAIAAgB0ECdGoiB0HkAWogBy8B5AFBAWo7AQAgACAAKAI8QQFrNgI8IAQgACgC8C0gACgC9C1GagwBCyAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qIAdB//8DcSANQf//A3FrIgc6AAAgACAAKALwLSICQQFqNgLwLSACIAAoAuwtaiAHQQh2OgAAIAAgACgC8C0iAkEBajYC8C0gAiAAKALsLWogBEEDazoAACAAIAAoAoAuQQFqNgKALiADQf3OAGotAABBAnQgAGpB6AlqIgQgBC8BAEEBajsBACAAIAdBAWsiBCAEQQd2QYACaiAEQYACSRtBgMsAai0AAEECdGpB2BNqIgQgBC8BAEEBajsBACAAIAAoAjwgA2s2AjwgACgC8C0gACgC9C1GCyEEIAAgACgCaCADaiIHNgJoIARFDQFBACECQQAhBCAAIAAoAlgiA0EATgR/IAAoAkggA2oFQQALIAcgA2tBABAPIAAgACgCaDYCWCAAKAIAEAogACgCACgCEA0BCwsgAgu0BwIEfwF+AkADQAJAAkACQAJAIAAoAjxBhQJNBEAgABAvAkAgACgCPCICQYUCSw0AIAENAEEADwsgAkUNBCACQQRJDQELIAAgACgCaEH4gAEoAgARAgAhAiAANQJoIAKtfSIGQgFTDQAgBiAAKAIwQYYCa61VDQAgAkUNACAAIAJB8IABKAIAEQIAIgJBBEkNACAAIAAoAvAtIgNBAWo2AvAtIAMgACgC7C1qIAAoAmggACgCbGsiAzoAACAAIAAoAvAtIgRBAWo2AvAtIAQgACgC7C1qIANBCHY6AAAgACAAKALwLSIEQQFqNgLwLSAEIAAoAuwtaiACQQNrOgAAIAAgACgCgC5BAWo2AoAuIAJB/c4Aai0AAEECdCAAakHoCWoiBCAELwEAQQFqOwEAIAAgA0EBayIDIANBB3ZBgAJqIANBgAJJG0GAywBqLQAAQQJ0akHYE2oiAyADLwEAQQFqOwEAIAAgACgCPCACayIFNgI8IAAoAvQtIQMgACgC8C0hBCAAKAJ4IAJPQQAgBUEDSxsNASAAIAAoAmggAmoiAjYCaCAAIAJBAWtB+IABKAIAEQIAGiADIARHDQQMAgsgACgCSCAAKAJoai0AACECIAAgACgC8C0iA0EBajYC8C0gAyAAKALsLWpBADoAACAAIAAoAvAtIgNBAWo2AvAtIAMgACgC7C1qQQA6AAAgACAAKALwLSIDQQFqNgLwLSADIAAoAuwtaiACOgAAIAAgAkECdGoiAkHkAWogAi8B5AFBAWo7AQAgACAAKAI8QQFrNgI8IAAgACgCaEEBajYCaCAAKALwLSAAKAL0LUcNAwwBCyAAIAAoAmhBAWoiBTYCaCAAIAUgAkEBayICQeyAASgCABEFACAAIAAoAmggAmo2AmggAyAERw0CC0EAIQNBACECIAAgACgCWCIEQQBOBH8gACgCSCAEagVBAAsgACgCaCAEa0EAEA8gACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQDQEMAgsLIAAgACgCaCIEQQIgBEECSRs2AoQuIAFBBEYEQEEAIQIgACAAKAJYIgFBAE4EfyAAKAJIIAFqBUEACyAEIAFrQQEQDyAAIAAoAmg2AlggACgCABAKQQNBAiAAKAIAKAIQGw8LIAAoAvAtBEBBACEDQQAhAiAAIAAoAlgiAUEATgR/IAAoAkggAWoFQQALIAQgAWtBABAPIAAgACgCaDYCWCAAKAIAEAogACgCACgCEEUNAQtBASEDCyADC80JAgl/An4gAUEERiEGIAAoAiwhAgJAAkACQCABQQRGBEAgAkECRg0CIAIEQCAAQQAQUCAAQQA2AiwgACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQRQ0ECyAAIAYQTyAAQQI2AiwMAQsgAg0BIAAoAjxFDQEgACAGEE8gAEEBNgIsCyAAIAAoAmg2AlgLQQJBASABQQRGGyEKA0ACQCAAKAIMIAAoAhBBCGpLDQAgACgCABAKIAAoAgAiAigCEA0AQQAhAyABQQRHDQIgAigCBA0CIAAoAqAuDQIgACgCLEVBAXQPCwJAAkAgACgCPEGFAk0EQCAAEC8CQCAAKAI8IgNBhQJLDQAgAQ0AQQAPCyADRQ0CIAAoAiwEfyADBSAAIAYQTyAAIAo2AiwgACAAKAJoNgJYIAAoAjwLQQRJDQELIAAgACgCaEH4gAEoAgARAgAhBCAAKAJoIgKtIAStfSILQgFTDQAgCyAAKAIwQYYCa61VDQAgAiAAKAJIIgJqIgMvAAAgAiAEaiICLwAARw0AIANBAmogAkECakHQgAEoAgARAgBBAmoiA0EESQ0AIAAoAjwiAiADIAIgA0kbIgJBggIgAkGCAkkbIgdB/c4Aai0AACICQQJ0IgRBhMkAajMBACEMIARBhskAai8BACEDIAJBCGtBE00EQCAHQQNrIARBgNEAaigCAGutIAOthiAMhCEMIARBsNYAaigCACADaiEDCyAAKAKgLiEFIAMgC6dBAWsiCCAIQQd2QYACaiAIQYACSRtBgMsAai0AACICQQJ0IglBgsoAai8BAGohBCAJQYDKAGozAQAgA62GIAyEIQsgACkDmC4hDAJAIAUgAkEESQR/IAQFIAggCUGA0gBqKAIAa60gBK2GIAuEIQsgCUGw1wBqKAIAIARqCyICaiIDQT9NBEAgCyAFrYYgDIQhCwwBCyAFQcAARgRAIAAoAgQgACgCEGogDDcAACAAIAAoAhBBCGo2AhAgAiEDDAELIAAoAgQgACgCEGogCyAFrYYgDIQ3AAAgACAAKAIQQQhqNgIQIANBQGohAyALQcAAIAVrrYghCwsgACALNwOYLiAAIAM2AqAuIAAgACgCPCAHazYCPCAAIAAoAmggB2o2AmgMAgsgACgCSCAAKAJoai0AAEECdCICQYDBAGozAQAhCyAAKQOYLiEMAkAgACgCoC4iBCACQYLBAGovAQAiAmoiA0E/TQRAIAsgBK2GIAyEIQsMAQsgBEHAAEYEQCAAKAIEIAAoAhBqIAw3AAAgACAAKAIQQQhqNgIQIAIhAwwBCyAAKAIEIAAoAhBqIAsgBK2GIAyENwAAIAAgACgCEEEIajYCECADQUBqIQMgC0HAACAEa62IIQsLIAAgCzcDmC4gACADNgKgLiAAIAAoAmhBAWo2AmggACAAKAI8QQFrNgI8DAELCyAAIAAoAmgiAkECIAJBAkkbNgKELiAAKAIsIQIgAUEERgRAAkAgAkUNACAAQQEQUCAAQQA2AiwgACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQDQBBAg8LQQMPCyACBEBBACEDIABBABBQIABBADYCLCAAIAAoAmg2AlggACgCABAKIAAoAgAoAhBFDQELQQEhAwsgAwucAQEFfyACQQFOBEAgAiAAKAJIIAFqIgNqQQJqIQQgA0ECaiECIAAoAlQhAyAAKAJQIQUDQCAAIAItAAAgA0EFdEHg/wFxcyIDNgJUIAUgA0EBdGoiBi8BACIHIAFB//8DcUcEQCAAKAJMIAEgACgCOHFB//8DcUEBdGogBzsBACAGIAE7AQALIAFBAWohASACQQFqIgIgBEkNAAsLC1sBAn8gACAAKAJIIAFqLQACIAAoAlRBBXRB4P8BcXMiAjYCVCABIAAoAlAgAkEBdGoiAy8BACICRwRAIAAoAkwgACgCOCABcUEBdGogAjsBACADIAE7AQALIAILEwAgAUEFdEHg/wFxIAJB/wFxcwsGACABEAYLLwAjAEEQayIAJAAgAEEMaiABIAJsEIwBIQEgACgCDCECIABBEGokAEEAIAIgARsLjAoCAX4CfyMAQfAAayIGJAACQAJAAkACQAJAAkACQAJAIAQODwABBwIEBQYGBgYGBgYGAwYLQn8hBQJAIAAgBkHkAGpCDBARIgNCf1cEQCABBEAgASAAKAIMNgIAIAEgACgCEDYCBAsMAQsCQCADQgxSBEAgAQRAIAFBADYCBCABQRE2AgALDAELIAEoAhQhBEEAIQJCASEFA0AgBkHkAGogAmoiAiACLQAAIARB/f8DcSICQQJyIAJBA3NsQQh2cyICOgAAIAYgAjoAKCABAn8gASgCDEF/cyECQQAgBkEoaiIERQ0AGiACIARBAUHUgAEoAgARAAALQX9zIgI2AgwgASABKAIQIAJB/wFxakGFiKLAAGxBAWoiAjYCECAGIAJBGHY6ACggAQJ/IAEoAhRBf3MhAkEAIAZBKGoiBEUNABogAiAEQQFB1IABKAIAEQAAC0F/cyIENgIUIAVCDFIEQCAFpyECIAVCAXwhBQwBCwtCACEFIAAgBkEoahAhQQBIDQEgBigCUCEAIwBBEGsiAiQAIAIgADYCDCAGAn8gAkEMahCNASIARQRAIAZBITsBJEEADAELAn8gACgCFCIEQdAATgRAIARBCXQMAQsgAEHQADYCFEGAwAILIQQgBiAAKAIMIAQgACgCEEEFdGpqQaDAAWo7ASQgACgCBEEFdCAAKAIIQQt0aiAAKAIAQQF2ags7ASYgAkEQaiQAIAYtAG8iACAGLQBXRg0BIAYtACcgAEYNASABBEAgAUEANgIEIAFBGzYCAAsLQn8hBQsgBkHwAGokACAFDwtCfyEFIAAgAiADEBEiA0J/VwRAIAEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwGCyMAQRBrIgAkAAJAIANQDQAgASgCFCEEIAJFBEBCASEFA0AgACACIAdqLQAAIARB/f8DcSIEQQJyIARBA3NsQQh2czoADyABAn8gASgCDEF/cyEEQQAgAEEPaiIHRQ0AGiAEIAdBAUHUgAEoAgARAAALQX9zIgQ2AgwgASABKAIQIARB/wFxakGFiKLAAGxBAWoiBDYCECAAIARBGHY6AA8gAQJ/IAEoAhRBf3MhBEEAIABBD2oiB0UNABogBCAHQQFB1IABKAIAEQAAC0F/cyIENgIUIAMgBVENAiAFpyEHIAVCAXwhBQwACwALQgEhBQNAIAAgAiAHai0AACAEQf3/A3EiBEECciAEQQNzbEEIdnMiBDoADyACIAdqIAQ6AAAgAQJ/IAEoAgxBf3MhBEEAIABBD2oiB0UNABogBCAHQQFB1IABKAIAEQAAC0F/cyIENgIMIAEgASgCECAEQf8BcWpBhYiiwABsQQFqIgQ2AhAgACAEQRh2OgAPIAECfyABKAIUQX9zIQRBACAAQQ9qIgdFDQAaIAQgB0EBQdSAASgCABEAAAtBf3MiBDYCFCADIAVRDQEgBachByAFQgF8IQUMAAsACyAAQRBqJAAgAyEFDAULIAJBADsBMiACIAIpAwAiA0KAAYQ3AwAgA0IIg1ANBCACIAIpAyBCDH03AyAMBAsgBkKFgICAcDcDECAGQoOAgIDAADcDCCAGQoGAgIAgNwMAQQAgBhAkIQUMAwsgA0IIWgR+IAIgASgCADYCACACIAEoAgQ2AgRCCAVCfwshBQwCCyABEAYMAQsgAQRAIAFBADYCBCABQRI2AgALQn8hBQsgBkHwAGokACAFC60DAgJ/An4jAEEQayIGJAACQAJAAkAgBEUNACABRQ0AIAJBAUYNAQtBACEDIABBCGoiAARAIABBADYCBCAAQRI2AgALDAELIANBAXEEQEEAIQMgAEEIaiIABEAgAEEANgIEIABBGDYCAAsMAQtBGBAJIgVFBEBBACEDIABBCGoiAARAIABBADYCBCAAQQ42AgALDAELIAVBADYCCCAFQgA3AgAgBUGQ8dmiAzYCFCAFQvis0ZGR8dmiIzcCDAJAIAQQIiICRQ0AIAKtIQhBACEDQYfTru5+IQJCASEHA0AgBiADIARqLQAAOgAPIAUgBkEPaiIDBH8gAiADQQFB1IABKAIAEQAABUEAC0F/cyICNgIMIAUgBSgCECACQf8BcWpBhYiiwABsQQFqIgI2AhAgBiACQRh2OgAPIAUCfyAFKAIUQX9zIQJBACAGQQ9qIgNFDQAaIAIgA0EBQdSAASgCABEAAAtBf3M2AhQgByAIUQ0BIAUoAgxBf3MhAiAHpyEDIAdCAXwhBwwACwALIAAgAUElIAUQQiIDDQAgBRAGQQAhAwsgBkEQaiQAIAMLnRoCBn4FfyMAQdAAayILJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADDhQFBhULAwQJDgACCBAKDw0HEQERDBELAkBByAAQCSIBBEAgAUIANwMAIAFCADcDMCABQQA2AiggAUIANwMgIAFCADcDGCABQgA3AxAgAUIANwMIIAFCADcDOCABQQgQCSIDNgIEIAMNASABEAYgAARAIABBADYCBCAAQQ42AgALCyAAQQA2AhQMFAsgA0IANwMAIAAgATYCFCABQUBrQgA3AwAgAUIANwM4DBQLAkACQCACUARAQcgAEAkiA0UNFCADQgA3AwAgA0IANwMwIANBADYCKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwM4IANBCBAJIgE2AgQgAQ0BIAMQBiAABEAgAEEANgIEIABBDjYCAAsMFAsgAiAAKAIQIgEpAzBWBEAgAARAIABBADYCBCAAQRI2AgALDBQLIAEoAigEQCAABEAgAEEANgIEIABBHTYCAAsMFAsgASgCBCEDAkAgASkDCCIGQgF9IgdQDQADQAJAIAIgAyAHIAR9QgGIIAR8IgWnQQN0aikDAFQEQCAFQgF9IQcMAQsgBSAGUQRAIAYhBQwDCyADIAVCAXwiBKdBA3RqKQMAIAJWDQILIAQhBSAEIAdUDQALCwJAIAIgAyAFpyIKQQN0aikDAH0iBFBFBEAgASgCACIDIApBBHRqKQMIIQcMAQsgASgCACIDIAVCAX0iBadBBHRqKQMIIgchBAsgAiAHIAR9VARAIAAEQCAAQQA2AgQgAEEcNgIACwwUCyADIAVCAXwiBUEAIAAQiQEiA0UNEyADKAIAIAMoAggiCkEEdGpBCGsgBDcDACADKAIEIApBA3RqIAI3AwAgAyACNwMwIAMgASkDGCIGIAMpAwgiBEIBfSIHIAYgB1QbNwMYIAEgAzYCKCADIAE2AiggASAENwMgIAMgBTcDIAwBCyABQgA3AwALIAAgAzYCFCADIAQ3A0AgAyACNwM4QgAhBAwTCyAAKAIQIgEEQAJAIAEoAigiA0UEQCABKQMYIQIMAQsgA0EANgIoIAEoAihCADcDICABIAEpAxgiAiABKQMgIgUgAiAFVhsiAjcDGAsgASkDCCACVgRAA0AgASgCACACp0EEdGooAgAQBiACQgF8IgIgASkDCFQNAAsLIAEoAgAQBiABKAIEEAYgARAGCyAAKAIUIQEgAEEANgIUIAAgATYCEAwSCyACQghaBH4gASAAKAIANgIAIAEgACgCBDYCBEIIBUJ/CyEEDBELIAAoAhAiAQRAAkAgASgCKCIDRQRAIAEpAxghAgwBCyADQQA2AiggASgCKEIANwMgIAEgASkDGCICIAEpAyAiBSACIAVWGyICNwMYCyABKQMIIAJWBEADQCABKAIAIAKnQQR0aigCABAGIAJCAXwiAiABKQMIVA0ACwsgASgCABAGIAEoAgQQBiABEAYLIAAoAhQiAQRAAkAgASgCKCIDRQRAIAEpAxghAgwBCyADQQA2AiggASgCKEIANwMgIAEgASkDGCICIAEpAyAiBSACIAVWGyICNwMYCyABKQMIIAJWBEADQCABKAIAIAKnQQR0aigCABAGIAJCAXwiAiABKQMIVA0ACwsgASgCABAGIAEoAgQQBiABEAYLIAAQBgwQCyAAKAIQIgBCADcDOCAAQUBrQgA3AwAMDwsgAkJ/VwRAIAAEQCAAQQA2AgQgAEESNgIACwwOCyACIAAoAhAiAykDMCADKQM4IgZ9IgUgAiAFVBsiBVANDiABIAMpA0AiB6ciAEEEdCIBIAMoAgBqIgooAgAgBiADKAIEIABBA3RqKQMAfSICp2ogBSAKKQMIIAJ9IgYgBSAGVBsiBKcQByEKIAcgBCADKAIAIgAgAWopAwggAn1RrXwhAiAFIAZWBEADQCAKIASnaiAAIAKnQQR0IgFqIgAoAgAgBSAEfSIGIAApAwgiByAGIAdUGyIGpxAHGiACIAYgAygCACIAIAFqKQMIUa18IQIgBSAEIAZ8IgRWDQALCyADIAI3A0AgAyADKQM4IAR8NwM4DA4LQn8hBEHIABAJIgNFDQ0gA0IANwMAIANCADcDMCADQQA2AiggA0IANwMgIANCADcDGCADQgA3AxAgA0IANwMIIANCADcDOCADQQgQCSIBNgIEIAFFBEAgAxAGIAAEQCAAQQA2AgQgAEEONgIACwwOCyABQgA3AwAgACgCECIBBEACQCABKAIoIgpFBEAgASkDGCEEDAELIApBADYCKCABKAIoQgA3AyAgASABKQMYIgIgASkDICIFIAIgBVYbIgQ3AxgLIAEpAwggBFYEQANAIAEoAgAgBKdBBHRqKAIAEAYgBEIBfCIEIAEpAwhUDQALCyABKAIAEAYgASgCBBAGIAEQBgsgACADNgIQQgAhBAwNCyAAKAIUIgEEQAJAIAEoAigiA0UEQCABKQMYIQIMAQsgA0EANgIoIAEoAihCADcDICABIAEpAxgiAiABKQMgIgUgAiAFVhsiAjcDGAsgASkDCCACVgRAA0AgASgCACACp0EEdGooAgAQBiACQgF8IgIgASkDCFQNAAsLIAEoAgAQBiABKAIEEAYgARAGCyAAQQA2AhQMDAsgACgCECIDKQM4IAMpAzAgASACIAAQRCIHQgBTDQogAyAHNwM4AkAgAykDCCIGQgF9IgJQDQAgAygCBCEAA0ACQCAHIAAgAiAEfUIBiCAEfCIFp0EDdGopAwBUBEAgBUIBfSECDAELIAUgBlEEQCAGIQUMAwsgACAFQgF8IgSnQQN0aikDACAHVg0CCyAEIQUgAiAEVg0ACwsgAyAFNwNAQgAhBAwLCyAAKAIUIgMpAzggAykDMCABIAIgABBEIgdCAFMNCSADIAc3AzgCQCADKQMIIgZCAX0iAlANACADKAIEIQADQAJAIAcgACACIAR9QgGIIAR8IgWnQQN0aikDAFQEQCAFQgF9IQIMAQsgBSAGUQRAIAYhBQwDCyAAIAVCAXwiBKdBA3RqKQMAIAdWDQILIAQhBSACIARWDQALCyADIAU3A0BCACEEDAoLIAJCN1gEQCAABEAgAEEANgIEIABBEjYCAAsMCQsgARAqIAEgACgCDDYCKCAAKAIQKQMwIQIgAUEANgIwIAEgAjcDICABIAI3AxggAULcATcDAEI4IQQMCQsgACABKAIANgIMDAgLIAtBQGtBfzYCACALQouAgICwAjcDOCALQoyAgIDQATcDMCALQo+AgICgATcDKCALQpGAgICQATcDICALQoeAgICAATcDGCALQoWAgIDgADcDECALQoOAgIDAADcDCCALQoGAgIAgNwMAQQAgCxAkIQQMBwsgACgCECkDOCIEQn9VDQYgAARAIABBPTYCBCAAQR42AgALDAULIAAoAhQpAzgiBEJ/VQ0FIAAEQCAAQT02AgQgAEEeNgIACwwEC0J/IQQgAkJ/VwRAIAAEQCAAQQA2AgQgAEESNgIACwwFCyACIAAoAhQiAykDOCACfCIFQv//A3wiBFYEQCAABEAgAEEANgIEIABBEjYCAAsMBAsCQCAFIAMoAgQiCiADKQMIIganQQN0aikDACIHWA0AAkAgBCAHfUIQiCAGfCIIIAMpAxAiCVgNAEIQIAkgCVAbIQUDQCAFIgRCAYYhBSAEIAhUDQALIAQgCVQNACADKAIAIASnIgpBBHQQNCIMRQ0DIAMgDDYCACADKAIEIApBA3RBCGoQNCIKRQ0DIAMgBDcDECADIAo2AgQgAykDCCEGCyAGIAhaDQAgAygCACEMA0AgDCAGp0EEdGoiDUGAgAQQCSIONgIAIA5FBEAgAARAIABBADYCBCAAQQ42AgALDAYLIA1CgIAENwMIIAMgBkIBfCIFNwMIIAogBadBA3RqIAdCgIAEfCIHNwMAIAMpAwgiBiAIVA0ACwsgAykDQCEFIAMpAzghBwJAIAJQBEBCACEEDAELIAWnIgBBBHQiDCADKAIAaiINKAIAIAcgCiAAQQN0aikDAH0iBqdqIAEgAiANKQMIIAZ9IgcgAiAHVBsiBKcQBxogBSAEIAMoAgAiACAMaikDCCAGfVGtfCEFIAIgB1YEQANAIAAgBadBBHQiCmoiACgCACABIASnaiACIAR9IgYgACkDCCIHIAYgB1QbIganEAcaIAUgBiADKAIAIgAgCmopAwhRrXwhBSAEIAZ8IgQgAlQNAAsLIAMpAzghBwsgAyAFNwNAIAMgBCAHfCICNwM4IAIgAykDMFgNBCADIAI3AzAMBAsgAARAIABBADYCBCAAQRw2AgALDAILIAAEQCAAQQA2AgQgAEEONgIACyAABEAgAEEANgIEIABBDjYCAAsMAQsgAEEANgIUC0J/IQQLIAtB0ABqJAAgBAtIAQF/IABCADcCBCAAIAE2AgACQCABQQBIDQBBsBMoAgAgAUwNACABQQJ0QcATaigCAEEBRw0AQYSEASgCACECCyAAIAI2AgQLDgAgAkGx893xeWxBEHYLvgEAIwBBEGsiACQAIABBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAQRBqJAAgAkGx893xeWxBEHYLuQEBAX8jAEEQayIBJAAgAUEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAQjgEgAUEQaiQAC78BAQF/IwBBEGsiAiQAIAJBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAEQkAEhACACQRBqJAAgAAu+AQEBfyMAQRBrIgIkACACQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABEFohACACQRBqJAAgAAu+AQEBfyMAQRBrIgIkACACQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABEFshACACQRBqJAAgAAu9AQEBfyMAQRBrIgMkACADQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABIAIQjwEgA0EQaiQAC4UBAgR/AX4jAEEQayIBJAACQCAAKQMwUARADAELA0ACQCAAIAVBACABQQ9qIAFBCGoQZiIEQX9GDQAgAS0AD0EDRw0AIAIgASgCCEGAgICAf3FBgICAgHpGaiECC0F/IQMgBEF/Rg0BIAIhAyAFQgF8IgUgACkDMFQNAAsLIAFBEGokACADCwuMdSUAQYAIC7ELaW5zdWZmaWNpZW50IG1lbW9yeQBuZWVkIGRpY3Rpb25hcnkALSsgICAwWDB4AFppcCBhcmNoaXZlIGluY29uc2lzdGVudABJbnZhbGlkIGFyZ3VtZW50AGludmFsaWQgbGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRlZABPcGVyYXRpb24gbm90IHN1cHBvcnRlZABFbmNyeXB0aW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAENvbXByZXNzaW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAEVudHJ5IGhhcyBiZWVuIGRlbGV0ZWQAQ29udGFpbmluZyB6aXAgYXJjaGl2ZSB3YXMgY2xvc2VkAENsb3NpbmcgemlwIGFyY2hpdmUgZmFpbGVkAFJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlIGZhaWxlZABFbnRyeSBoYXMgYmVlbiBjaGFuZ2VkAE5vIHBhc3N3b3JkIHByb3ZpZGVkAFdyb25nIHBhc3N3b3JkIHByb3ZpZGVkAFVua25vd24gZXJyb3IgJWQAQUUAKG51bGwpADogAFBLBgcAUEsGBgBQSwUGAFBLAwQAUEsBAgAAAAA/BQAAwAcAAJMIAAB4CAAAbwUAAJEFAAB6BQAAsgUAAFYIAAAbBwAA1gQAAAsHAADqBgAAnAUAAMgGAACyCAAAHggAACgHAABHBAAAoAYAAGAFAAAuBAAAPgcAAD8IAAD+BwAAjgYAAMkIAADeCAAA5gcAALIGAABVBQAAqAcAACAAQcgTCxEBAAAAAQAAAAEAAAABAAAAAQBB7BMLCQEAAAABAAAAAgBBmBQLAQEAQbgUCwEBAEHSFAukLDomOyZlJmYmYyZgJiIg2CXLJdklQiZAJmomayY8JrolxCWVITwgtgCnAKwlqCGRIZMhkiGQIR8ilCGyJbwlIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEAYgBjAGQAZQBmAGcAaABpAGoAawBsAG0AbgBvAHAAcQByAHMAdAB1AHYAdwB4AHkAegB7AHwAfQB+AAIjxwD8AOkA4gDkAOAA5QDnAOoA6wDoAO8A7gDsAMQAxQDJAOYAxgD0APYA8gD7APkA/wDWANwAogCjAKUApyCSAeEA7QDzAPoA8QDRAKoAugC/ABAjrAC9ALwAoQCrALsAkSWSJZMlAiUkJWElYiVWJVUlYyVRJVclXSVcJVslECUUJTQlLCUcJQAlPCVeJV8lWiVUJWklZiVgJVAlbCVnJWglZCVlJVklWCVSJVMlayVqJRglDCWIJYQljCWQJYAlsQPfAJMDwAOjA8MDtQDEA6YDmAOpA7QDHiLGA7UDKSJhIrEAZSJkIiAjISP3AEgisAAZIrcAGiJ/ILIAoCWgAAAAAACWMAd3LGEO7rpRCZkZxG0Hj/RqcDWlY+mjlWSeMojbDqS43Hke6dXgiNnSlytMtgm9fLF+By2455Edv5BkELcd8iCwakhxufPeQb6EfdTaGuvk3W1RtdT0x4XTg1aYbBPAqGtkevli/ezJZYpPXAEU2WwGY2M9D/r1DQiNyCBuO14QaUzkQWDVcnFnotHkAzxH1ARL/YUN0mu1CqX6qLU1bJiyQtbJu9tA+bys42zYMnVc30XPDdbcWT3Rq6ww2SY6AN5RgFHXyBZh0L+19LQhI8SzVpmVus8Ppb24nrgCKAiIBV+y2QzGJOkLsYd8by8RTGhYqx1hwT0tZraQQdx2BnHbAbwg0pgqENXviYWxcR+1tgal5L+fM9S46KLJB3g0+QAPjqgJlhiYDuG7DWp/LT1tCJdsZJEBXGPm9FFra2JhbBzYMGWFTgBi8u2VBmx7pQEbwfQIglfED/XG2bBlUOm3Euq4vot8iLn83x3dYkkt2hXzfNOMZUzU+1hhsk3OUbU6dAC8o+Iwu9RBpd9K15XYPW3E0aT79NbTaulpQ/zZbjRGiGet0Lhg2nMtBETlHQMzX0wKqsl8Dd08cQVQqkECJxAQC76GIAzJJbVoV7OFbyAJ1Ga5n+Rhzg753l6YydkpIpjQsLSo18cXPbNZgQ20LjtcvbetbLrAIIO47bazv5oM4rYDmtKxdDlH1eqvd9KdFSbbBIMW3HMSC2PjhDtklD5qbQ2oWmp6C88O5J3/CZMnrgAKsZ4HfUSTD/DSowiHaPIBHv7CBmldV2L3y2dlgHE2bBnnBmtudhvU/uAr04laetoQzErdZ2/fufn5776OQ763F9WOsGDoo9bWfpPRocTC2DhS8t9P8We70WdXvKbdBrU/SzaySNorDdhMGwqv9koDNmB6BEHD72DfVd9nqO+ObjF5vmlGjLNhyxqDZryg0m8lNuJoUpV3DMwDRwu7uRYCIi8mBVW+O7rFKAu9spJatCsEarNcp//XwjHP0LWLntksHa7eW7DCZJsm8mPsnKNqdQqTbQKpBgmcPzYO64VnB3ITVwAFgkq/lRR6uOKuK7F7OBu2DJuO0pINvtXlt+/cfCHf2wvU0tOGQuLU8fiz3Whug9ofzRa+gVsmufbhd7Bvd0e3GOZaCIhwag//yjsGZlwLARH/nmWPaa5i+NP/a2FFz2wWeOIKoO7SDddUgwROwrMDOWEmZ6f3FmDQTUdpSdt3bj5KatGu3FrW2WYL30DwO9g3U668qcWeu95/z7JH6f+1MBzyvb2KwrrKMJOzU6ajtCQFNtC6kwbXzSlX3lS/Z9kjLnpms7hKYcQCG2hdlCtvKje+C7ShjgzDG98FWo3vAi0AAAAARjtnZYx2zsrKTamvWevtTh/QiivVnSOEk6ZE4bLW25307bz4PqAVV3ibcjLrPTbTrQZRtmdL+BkhcJ98JavG4GOQoYWp3Qgq7+ZvT3xAK646e0zL8DblZLYNggGXfR190UZ6GBsL07ddMLTSzpbwM4itl1ZC4D75BNtZnAtQ/BpNa5t/hyYy0MEdVbVSuxFUFIB2Md7N356Y9rj7uYYnh/+9QOI18OlNc8uOKOBtysmmVq2sbBsEAyogY2Yu+zr6aMBdn6KN9DDktpNVdxDXtDErsNH7Zhl+vV1+G5wt4WfaFoYCEFsvrVZgSMjFxgwpg/1rTEmwwuMPi6WGFqD4NVCbn1Ca1jb/3O1Rmk9LFXsJcHIewz3bsYUGvNSkdiOo4k1EzSgA7WJuO4oH/Z3O5rumqYNx6wAsN9BnSTMLPtV1MFmwv33wH/lGl3pq4NObLNu0/uaWHVGgrXo0gd3lSMfmgi0NqyuCS5BM59g2CAaeDW9jVEDGzBJ7oakd8AQvW8tjSpGGyuXXva2ARBvpYQIgjgTIbSerjlZAzq8m37LpHbjXI1AReGVrdh32zTL8sPZVmXq7/DY8gJtTOFvCz35gpaq0LQwF8hZrYGGwL4Eni0jk7cbhS6v9hi6KjRlSzLZ+Nwb715hAwLD902b0HJVdk3lfEDrWGStdsyxA8Wtqe5YOoDY/oeYNWMR1qxwlM5B7QPnd0u+/5rWKnpYq9titTZMS4OQ8VNuDWcd9x7iBRqDdSwsJcg0wbhcJ6zeLT9BQ7oWd+UHDpp4kUADaxRY7vaDcdhQPmk1zars97Bb9BotzN0si3HFwRbni1gFYpO1mPW6gz5Iom6j3JxANcWErahSrZsO77V2k3n774D84wIda8o0u9bS2SZCVxtbs0/2xiRmwGCZfi39DzC07oooWXMdAW/VoBmCSDQK7y5FEgKz0js0FW8j2Yj5bUCbfHWtButcm6BWRHY9wsG0QDPZWd2k8G97GeiC5o+mG/UKvvZonZfAziCPLVO064AlefNtuO7aWx5TwraDxYwvkECUwg3XvfSraqUZNv4g20sPODbWmBEAcCUJ7e2zR3T+Nl+ZY6F2r8UcbkJYiH0vPvllwqNuTPQF01QZmEUagIvAAm0WVytbsOozti1+tnRQj66ZzRiHr2uln0L2M9Hb5bbJNngh4ADenPjtQwjGw9UR3i5IhvcY7jvv9XOtoWxgKLmB/b+Qt1sCiFrGlg2Yu2cVdSbwPEOATSSuHdtqNw5ectqTyVvsNXRDAajgUGzOkUiBUwZht/W7eVpoLTfDe6gvLuY/BhhAgh713RabN6Dng9o9cKrsm82yAQZb/JgV3uR1iEnNQy701a6zYAAAAAFiA4tfxBrR0qYZWo+INaOm6jYo+EwvcnUuLPkqFHaEJ3Z1D3nQbFX0sm/eqZxDJ4D+QKzeWFn2UzpafQwo7QhNSu6DE+z32Z6O9FLDoNir6sLbILRkwno5BsHxZjybjGtemAc1+IFduJqC1uW0ri/M1q2kknC0/h8St3VAUdoQmTPZm8eVwMFK98NKF9nvsz677DhgHfVi7X/26bJFrJS/J68f4YG2RWzjtc4xzZk3GK+avEYJg+bLa4BtlHk3GNUbNJOLvS3JBt8uQlvxArtykwEwLDUYaqFXG+H+bUGc8w9CF62pW00gy1jGfeV0P1SHd7QKIW7uh0NtZdijsCE1wbOqa2eq8OYFqXu7K4WCkkmGCczvn1NBjZzYHrfGpRPVxS5Nc9x0wBHf/50/8wa0XfCN6vvp12eZ6lw4i10peeleoidPR/iqLURz9wNoit5hawGAx3JbDaVx0FKfK61f/SgmAVsxfIw5MvfRFx4O+HUdhabTBN8rsQdUdPJqMa2QabrzNnDgflRzayN6X5IKGFwZVL5FQ9ncRsiG5hy1i4QfPtUiBmRYQAXvBW4pFiwMKp1yqjPH/8gwTKDahznhuISyvx6d6DJ8nmNvUrKaRjCxERiWqEuV9KvAys7xvces8jaZCutsFGjo50lGxB5gJMeVPoLez7Pg3UTtQ2BGaCFjzTaHepe75Xkc5stV5c+pVm6RD080HG1Mv0NXFsJONRVJEJMME53xD5jA3yNh6b0g6rcbObA6eTo7ZWuNTiQJjsV6r5ef982UFKrjuO2Dgbtm3SeiPFBFobcPf/vKAh34QVy74RvR2eKQjPfOaaWVzeL7M9S4dlHXMykSulbwcLndrtaghyO0owx+mo/1V/iMfglelSSEPJav2wbM0tZkz1mIwtYDBaDViFiO+XFx7Pr6L0rjoKIo4Cv9OldevFhU1eL+TY9vnE4EMrJi/RvQYXZFdngsyBR7p5cuIdqaTCJRxOo7C0mIOIAUphR5PcQX8mNiDqjuAA0jseDQZ1yC0+wCJMq2j0bJPdJo5cT7CuZPpaz/FSjO/J539KbjepalaCQwvDKpUr+59HyTQN0ekMuDuImRDtqKGlHIPW8Qqj7kTgwnvsNuJDWeQAjMtyILR+mEEh1k5hGWO9xL6za+SGBoGFE65XpSsbhUfkiRNn3Dz5BkmULyZxIdsQp3xNMJ/Jp1EKYXFxMtSjk/1GNbPF89/SUFsJ8mju+lfPPix394vGFmIjEDZalsLUlQRU9K2xvpU4GWi1AKyZnnf4j75PTWXf2uWz/+JQYR0twvc9FXcdXIDfy3y4ajjZH7ru+ScPBJiyp9K4ihIAWkWAlnp9NXwb6J2qO9AoQAAAADhtlLvg2vUBWLdhuoG16gL52H65IW8fA5kCi7hDK5RF+0YA/iPxYUSbnPX/Qp5+Rzrz6vziRItGWikf/YYXKMu+erxwZs3dyt6gSXEHosLJf89Wcqd4N8gfFaNzxTy8jn1RKDWl5kmPHYvdNMSJVoy85MI3ZFOjjdw+NzYMLhGXdEOFLKz05JYUmXAtzZv7lbX2by5tQQ6U1SyaLw8FhdK3aBFpb99w09ey5GgOsG/Qdt37a65qmtEWBw5qyjk5XPJUrecq48xdko5Y5kuM014z4Ufl61YmX1M7suSJEq0ZMX85ounIWBhRpcyjiKdHG/DK06AofbIakBAmoVgcI26gcbfVeMbWb8CrQtQZqclsYcRd17lzPG0BHqjW2ze3K2NaI5C77UIqA4DWkdqCXSmi78mSelioKMI1PJMeCwulJmafHv7R/qRGvGofn77hp+fTdRw/ZBSmhwmAHV0gn+DlTQtbPfpq4YWX/lpclXXiJPjhWfxPgONEIhRYlDIy+exfpkI06Mf4jIVTQ1WH2Pst6kxA9V0t+k0wuUGXGaa8L3QyB/fDU71PrscGlqxMvu7B2AU2drm/jhstBFIlGjJqSI6Jsv/vMwqSe4jTkPAwq/1ki3NKBTHLJ5GKEQ6Od6ljGsxx1Ht2ybnvzRC7ZHVo1vDOsGGRdAgMBc/geZrrmBQOUECjb+r4zvtRIcxw6Vmh5FKBFoXoOXsRU+NSDq5bP5oVg4j7rzvlbxTi5+SsmopwF0I9Ea36UIUWJm6yIB4DJpvGtEchftnTmqfbWCLftsyZBwGtI79sOZhlRSZl3Siy3gWf02S98kffZPDMZxydWNzEKjlmfEet3axXi3zUOh/HDI1+fbTg6sZt4mF+FY/1xc04lH91VQDEr3wfORcRi4LPpuo4d8t+g67J9TvWpGGADhMAOrZ+lIFqQKO3Ui03DIqaVrYy98IN6/VJtZOY3Q5LL7y080IoDylrN/KRBqNJSbHC8/HcVkgo3t3wULNJS4gEKPEwabxK+GW5hQAILT7Yv0yEYNLYP7nQU4fBvcc8GQqmhqFnMj17Ti3AwyO5exuU2MGj+Ux6evvHwgKWU3naITLDYkymeL5ykU6GHwX1XqhkT+bF8PQ/x3tMR6rv958djk0ncBr2/VkFC0U0kbCdg/AKJe5ksfzs7wmEgXuyXDYaCORbjrM0S6gSTCY8qZSRXRMs/Mmo9f5CEI2T1qtVJLcR7UkjqjdgPFePDajsV7rJVu/XXe021dZVTrhC7pYPI1QuYrfv8lyA2coxFGIShnXYquvhY3PpatsLhP5g0zOf2mteC2GxdxScCRqAJ9Gt4Z1pwHUmsML+nsivaiUQGAufqHWfJEAAAAAQ8umh8eQPNSEW5pTzycIc4zsrvQItzSnS3ySIJ5PEObdhLZhWd8sMhoUirVRaBiVEqO+Epb4JEHVM4LGfZlRFz5S95C6CW3D+cLLRLK+WWTxdf/jdS5lsDblwzfj1kHxoB3ndiRGfSVnjduiLPFJgm867wXrYXVWqKrT0foyoy65+QWpPaKf+n5pOX01Fatddt4N2vKFl4mxTjEOZH2zyCe2FU+j7Y8c4CYpm6tau7vokR08bMqHby8BIeiHq/I5xGBUvkA7zu0D8GhqSIz6SgtHXM2PHMaezNdgGRnk4t9aL0RY3nTeC52/eIzWw+qslQhMKxFT1nhSmHD/9GVGXbeu4Noz9XqJcD7cDjtCTi54ieip/NJy+r8Z1H1qKla7KeHwPK26am/ucczopQ1eyObG+E9inWIcIVbEm4n8F0rKN7HNTmwrng2njRlG2x85BRC5voFLI+3CgIVqF7MHrFR4oSvQIzt4k+id/9iUD9+bX6lYHwQzC1zPlYwOV+VzTZxD9MnH2aeKDH8gwXDtAIK7S4cG4NHURSt3U5AY9ZXT01MSV4jJQRRDb8ZfP/3mHPRbYZivwTLbZGe1c860ZDAFEuO0Xoiw95UuN7zpvBf/IhqQe3mAwziyJkTtgaSCrkoCBSoRmFZp2j7RIqas8WFtCnblNpAlpv02oujLjLqrACo9L1uwbmyQFukn7ITJZCciTuB8uB2jtx6adoScXDVPOtuxFKCI8t8GD7mjlC/6aDKofjOo+z34DnyVUt2t1pl7KlLC4XkRCUf+WnXV3hm+c1md5ekK3i5PjQsdzUtI1mvMzI3xn49GVxjEOsU4h/FjvwOq+exAYV9rEvkvlFEyiRPVaRNAlqK1x93eJ+eeFYFgGk4bM1mFvbSMtj9yz32Z9UsmA6YI7aUhQ5E3AQBakYaEAQvVx8qtUm9gfoMsq9gEqPBCV+s75NCgR3bw44zQd2fXSiQkHOyj8S9uZbLkyOI2v1KxdXT0Nj4IZhZ9w8CR+ZhawrpT/EUcrsrnX2VsYNs+9jOY9VC004nClJBCZBMUGf5AV9JYx4Lh2gHBKnyGRXHm1Qa6QFJNxtJyDg109YpW7qbJnUghYTeb8CL8PXemp6ck5WwBo64Qk4Pt2zUEaYCvVypLCdD/eIsWvLMtkTjot8J7IxFFMF+DZXOUJeL3z7+xtAQZNuacacmlV89OIQxVHWLH85opu2G6anDHPe4rXW6t4PvpeNN5LzsY36i/Q0X7/IjjfLf0cVz0P9fbcGRNiDOv6w+bBTje2M6eWVyVBAofXqKNVCIwrRfpliqTsgx50Hmq/gVKKDhGgY6/wtoU7IERsmvKbSBLiaaGzA39HJ9ONroYFAQAAJ0HAAAsCQAAhgUAAEgFAACnBQAAAAQAADIFAAC8BQAALAkAQYDBAAv3CQwACACMAAgATAAIAMwACAAsAAgArAAIAGwACADsAAgAHAAIAJwACABcAAgA3AAIADwACAC8AAgAfAAIAPwACAACAAgAggAIAEIACADCAAgAIgAIAKIACABiAAgA4gAIABIACACSAAgAUgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";yo(bo)||(bo=N(bo));function Qa(Zs){try{if(Zs==bo&&ue)return new Uint8Array(ue);var so=mI(Zs);if(so)return so;if(F)return F(Zs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Ea){Qi(Ea)}}function gc(Zs,so){var Ea,Ml,Dr;try{Dr=Qa(Zs),Ml=new WebAssembly.Module(Dr),Ea=new WebAssembly.Instance(Ml,so)}catch(di){var Wn=di.toString();throw ne("failed to compile wasm module: "+Wn),(Wn.includes("imported Memory")||Wn.includes("memory import"))&&ne("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),di}return[Ea,Ml]}function Cg(){var Zs={a:Qh};function so(Dr,Wn){var di=Dr.exports;r.asm=di,Se=r.asm.g,Fn(Se.buffer),Hi=r.asm.W,Sc(r.asm.h),Or("wasm-instantiate")}if(Rn("wasm-instantiate"),r.instantiateWasm)try{var Ea=r.instantiateWasm(Zs,so);return Ea}catch(Dr){return ne("Module.instantiateWasm callback failed with error: "+Dr),!1}var Ml=gc(bo,Zs);return so(Ml[0]),r.asm}function Nc(Zs){return jt.getFloat32(Zs,!0)}function iA(Zs){return jt.getFloat64(Zs,!0)}function ma(Zs){return jt.getInt16(Zs,!0)}function vu(Zs){return jt.getInt32(Zs,!0)}function li(Zs,so){jt.setInt32(Zs,so,!0)}function Ei(Zs){for(;Zs.length>0;){var so=Zs.shift();if(typeof so=="function"){so(r);continue}var Ea=so.func;typeof Ea=="number"?so.arg===void 0?Hi.get(Ea)():Hi.get(Ea)(so.arg):Ea(so.arg===void 0?null:so.arg)}}function Ps(Zs,so){var Ea=new Date(vu((Zs>>2)*4)*1e3);li((so>>2)*4,Ea.getUTCSeconds()),li((so+4>>2)*4,Ea.getUTCMinutes()),li((so+8>>2)*4,Ea.getUTCHours()),li((so+12>>2)*4,Ea.getUTCDate()),li((so+16>>2)*4,Ea.getUTCMonth()),li((so+20>>2)*4,Ea.getUTCFullYear()-1900),li((so+24>>2)*4,Ea.getUTCDay()),li((so+36>>2)*4,0),li((so+32>>2)*4,0);var Ml=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Ml)/(1e3*60*60*24)|0;return li((so+28>>2)*4,Dr),Ps.GMTString||(Ps.GMTString=er("GMT")),li((so+40>>2)*4,Ps.GMTString),so}function Xa(Zs,so){return Ps(Zs,so)}function ac(Zs,so,Ea){Xt.copyWithin(Zs,so,so+Ea)}function Yl(Zs){try{return Se.grow(Zs-Zr.byteLength+65535>>>16),Fn(Se.buffer),1}catch{}}function Wc(Zs){var so=Xt.length;Zs=Zs>>>0;var Ea=2147483648;if(Zs>Ea)return!1;for(var Ml=1;Ml<=4;Ml*=2){var Dr=so*(1+.2/Ml);Dr=Math.min(Dr,Zs+100663296);var Wn=Math.min(Ea,xt(Math.max(Zs,Dr),65536)),di=Yl(Wn);if(di)return!0}return!1}function Sg(Zs){fe(Zs)}function Ul(Zs){var so=Date.now()/1e3|0;return Zs&&li((Zs>>2)*4,so),so}function Xu(){if(Xu.called)return;Xu.called=!0;var Zs=new Date().getFullYear(),so=new Date(Zs,0,1),Ea=new Date(Zs,6,1),Ml=so.getTimezoneOffset(),Dr=Ea.getTimezoneOffset(),Wn=Math.max(Ml,Dr);li((Ca()>>2)*4,Wn*60),li((Wa()>>2)*4,+(Ml!=Dr));function di(LA){var pf=LA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return pf?pf[1]:"GMT"}var aa=di(so),Bo=di(Ea),us=er(aa),Ql=er(Bo);Dr>2)*4,us),li((Fs()+4>>2)*4,Ql)):(li((Fs()>>2)*4,Ql),li((Fs()+4>>2)*4,us))}function Da(Zs){Xu();var so=Date.UTC(vu((Zs+20>>2)*4)+1900,vu((Zs+16>>2)*4),vu((Zs+12>>2)*4),vu((Zs+8>>2)*4),vu((Zs+4>>2)*4),vu((Zs>>2)*4),0),Ea=new Date(so);li((Zs+24>>2)*4,Ea.getUTCDay());var Ml=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Ml)/(1e3*60*60*24)|0;return li((Zs+28>>2)*4,Dr),Ea.getTime()/1e3|0}var pu=typeof atob=="function"?atob:function(Zs){var so="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ea="",Ml,Dr,Wn,di,aa,Bo,us,Ql=0;Zs=Zs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do di=so.indexOf(Zs.charAt(Ql++)),aa=so.indexOf(Zs.charAt(Ql++)),Bo=so.indexOf(Zs.charAt(Ql++)),us=so.indexOf(Zs.charAt(Ql++)),Ml=di<<2|aa>>4,Dr=(aa&15)<<4|Bo>>2,Wn=(Bo&3)<<6|us,Ea=Ea+String.fromCharCode(Ml),Bo!==64&&(Ea=Ea+String.fromCharCode(Dr)),us!==64&&(Ea=Ea+String.fromCharCode(Wn));while(Ql0||(ga(),Wr>0))return;function so(){HA||(HA=!0,r.calledRun=!0,!De&&(Ya(),n(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),Gc()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),so()},1)):so()}if(r.run=df,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return df(),t}}();typeof tAt=="object"&&typeof sAr=="object"?sAr.exports=iAr:typeof define=="function"&&define.amd?define([],function(){return iAr}):typeof tAt=="object"&&(tAt.createModule=iAr)});var pZn=H(Eve=>{"use strict";Object.defineProperty(Eve,"__esModule",{value:!0});Eve.makeInterface=Eve.Errors=void 0;var c$=["number","number"],oAr;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(oAr||(Eve.Errors=oAr={}));var mWo=e=>({get HEAPU8(){return e.HEAPU8},errors:oAr,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...c$,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...c$,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...c$,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...c$,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...c$,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...c$,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...c$,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...c$,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...c$,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});Eve.makeInterface=mWo});var IZn=H(h5e=>{"use strict";Object.defineProperty(h5e,"__esModule",{value:!0});h5e.ZipOpenFS=void 0;h5e.getArchivePart=cAr;var CWo=ro(),aAr=ro(),fZn=zK();function cAr(e,t){let r=e.indexOf(t);if(r<=0)return null;let n=r;for(;r>=0&&(n=r+t.length,e[n]!==aAr.ppath.sep);){if(e[r-1]===aAr.ppath.sep)return null;r=e.indexOf(t,n)}return e.length>n&&e[n]!==aAr.ppath.sep?null:e.slice(0,n)}var lAr=class e extends CWo.MountFS{static async openPromise(t,r){let n=new e(r);try{return await t(n)}finally{n.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,n=t.readOnlyArchives,a=typeof r>"u"?A=>cAr(A,".zip"):A=>{for(let f of r){let I=cAr(A,f);if(I)return I}return null},o=(A,f)=>new fZn.ZipFS(f,{baseFs:A,readOnly:n,stats:A.statSync(f),customZipImplementation:t.customZipImplementation}),l=async(A,f)=>{let I={baseFs:A,readOnly:n,stats:await A.statPromise(f),customZipImplementation:t.customZipImplementation};return()=>new fZn.ZipFS(f,I)};super({...t,factorySync:o,factoryPromise:l,getMountPoint:a})}};h5e.ZipOpenFS=lAr});var gAr=H(Sve=>{"use strict";Object.defineProperty(Sve,"__esModule",{value:!0});Sve.LibZipImpl=Sve.LibzipError=void 0;var _Wo=nAr(),rAt=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};Sve.LibzipError=rAt;var uAr=class{constructor(t){this.filesShouldBeCached=!0;let r="buffer"in t?t.buffer:t.baseFs.readFileSync(t.path);this.libzip=(0,_Wo.getInstance)();let n=this.libzip.malloc(4);try{let l=0;t.readOnly&&(l|=this.libzip.ZIP_RDONLY);let A=this.allocateUnattachedSource(r);try{this.zip=this.libzip.openFromSource(A,l,n),this.lzSource=A}catch(f){throw this.libzip.source.free(A),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(n,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(n)}let a=this.libzip.getNumEntries(this.zip,0),o=new Array(a);for(let l=0;l>>0,o=this.libzip.struct.statMtime(r)>>>0,l=this.libzip.struct.statCrc(r)>>>0;return{size:a,mtime:o,crc:l}}makeLibzipError(t){let r=this.libzip.struct.errorCodeZip(t),n=this.libzip.error.strerror(t),a=new rAt(n,this.libzip.errors[r]);if(r===this.libzip.errors.ZIP_ER_CHANGED)throw new Error(`Assertion failed: Unexpected libzip error: ${a.message}`);return a}setFileSource(t,r,n){let a=this.allocateSource(n);try{let o=this.libzip.file.add(this.zip,t,a,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(r!==null&&this.libzip.file.setCompression(this.zip,o,0,r[0],r[1])===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return o}catch(o){throw this.libzip.source.free(a),o}}setMtime(t,r){if(this.libzip.file.setMtime(this.zip,t,0,r,0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}getExternalAttributes(t){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let n=this.libzip.getValue(this.libzip.uint08S,"i8")>>>0,a=this.libzip.getValue(this.libzip.uint32S,"i32")>>>0;return[n,a]}setExternalAttributes(t,r,n){if(this.libzip.file.setExternalAttributes(this.zip,t,0,0,r,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}locate(t){return this.libzip.name.locate(this.zip,t,0)}getFileSource(t){let r=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.libzip.struct.statCompSize(r),o=this.libzip.struct.statCompMethod(r),l=this.libzip.malloc(a);try{let A=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(A===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let f=this.libzip.fread(A,l,a,0);if(f===-1)throw this.makeLibzipError(this.libzip.file.getError(A));if(fa)throw new Error("Overread");let I=this.libzip.HEAPU8.subarray(l,l+a);return{data:Buffer.from(I),compressionMethod:o}}finally{this.libzip.fclose(A)}}finally{this.libzip.free(l)}}deleteEntry(t){if(this.libzip.delete(this.zip,t)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}addDirectory(t){let r=this.libzip.dir.add(this.zip,t);if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return r}getBufferAndClose(){try{if(this.libzip.source.keep(this.lzSource),this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.libzip.source.open(this.lzSource)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_END)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let t=this.libzip.source.tell(this.lzSource);if(t===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_SET)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let r=this.libzip.malloc(t);if(!r)throw new Error("Couldn't allocate enough memory");try{let n=this.libzip.source.read(this.lzSource,r,t);if(n===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(nt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource)}}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:n,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(n,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:n}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,n,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}discard(){this.libzip.discard(this.zip)}};Sve.LibZipImpl=uAr});var iAt=H(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});Lv.ZipFS=Lv.DEFAULT_COMPRESSION_LEVEL=Lv.DEFLATE=Lv.STORE=Lv.ZIP_UNIX=void 0;Lv.makeEmptyArchive=nAt;var yWo=(Pa(),vi(Va)),bWo=ro(),EWo=ro(),SWo=ro(),AAr=ro(),pA=ro(),bh=ro(),X9=wt("fs"),hZn=wt("stream"),vWo=wt("util"),mZn=yWo.__importDefault(wt("zlib")),BWo=gAr();Lv.ZIP_UNIX=3;Lv.STORE=0;Lv.DEFLATE=8;Lv.DEFAULT_COMPRESSION_LEVEL="mixed";function wWo(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(vWo.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function nAt(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var dAr=class extends bWo.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1,r.readOnly&&(this.readOnly=!0);let n=r;this.level=typeof n.level<"u"?n.level:Lv.DEFAULT_COMPRESSION_LEVEL;let a=r.customZipImplementation??BWo.LibZipImpl;if(typeof t=="string"){let{baseFs:l=new EWo.NodeFS}=n;this.baseFs=l,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(l){if(l.code==="ENOENT"&&n.create)this.stats=pA.statUtils.makeDefaultStats();else throw l}else this.stats=pA.statUtils.makeDefaultStats();typeof t=="string"?r.create?this.zipImpl=new a({buffer:nAt(),readOnly:this.readOnly}):this.zipImpl=new a({path:t,baseFs:this.baseFs,readOnly:this.readOnly,size:this.stats.size}):this.zipImpl=new a({buffer:t??nAt(),readOnly:this.readOnly}),this.listings.set(bh.PortablePath.root,new Set);let o=this.zipImpl.getListings();for(let l=0;l{this.closeSync(l)};return(0,SWo.opendir)(this,n,o,{onClose:A})}async readPromise(t,r,n,a,o){return this.readSync(t,r,n,a,o)}readSync(t,r,n=0,a=r.byteLength,o=-1){let l=this.fds.get(t);if(typeof l>"u")throw pA.errors.EBADF("read");let A=o===-1||o===null?l.cursor:o,f=this.readFileSync(l.p);f.copy(r,n,A,A+a);let I=Math.max(0,Math.min(f.length-A,a));return(o===-1||o===null)&&(l.cursor+=I),I}async writePromise(t,r,n,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,n,a,o)}writeSync(t,r,n,a,o){throw typeof this.fds.get(t)>"u"?pA.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw pA.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let n=this.openSync(t,"r"),a=Object.assign(new hZn.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(l,A)=>{clearImmediate(o),this.closeSync(n),A(l)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let l=await this.readFilePromise(t,r);a.bytesRead=l.length,a.end(l)}catch(l){a.destroy(l)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let n=[],a=this.openSync(t,"w"),o=Object.assign(new hZn.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(l,A)=>{try{l?A(l):(this.writeFileSync(t,Buffer.concat(n),r),A(null))}catch(f){A(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",l=>{let A=Buffer.from(l);o.bytesWritten+=A.length,n.push(A)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw pA.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw pA.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let n=bh.ppath.resolve(bh.PortablePath.root,t);return this.entries.has(n)||this.listings.has(n)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=X9.constants.F_OK){let n=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&X9.constants.W_OK)throw pA.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw pA.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,n,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let n=this.fds.get(t);if(typeof n>"u")throw pA.errors.EBADF("fstatSync");let{p:a}=n,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw pA.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw pA.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw pA.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,n,r)}}statImpl(t,r,n={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.zipImpl.stat(a),l=o.crc,A=o.size,f=o.mtime*1e3,I=this.stats.uid,C=this.stats.gid,b=512,E=Math.ceil(o.size/b),N=f,B=f,F=f,Q=new Date(N),X=new Date(B),ae=new Date(F),ne=new Date(f),ce=this.listings.has(r)?X9.constants.S_IFDIR:this.isSymbolicLink(a)?X9.constants.S_IFLNK:X9.constants.S_IFREG,fe=ce===X9.constants.S_IFDIR?493:420,ue=ce|this.getUnixMode(a,fe)&511,de=Object.assign(new pA.statUtils.StatEntry,{uid:I,gid:C,size:A,blksize:b,blocks:E,atime:Q,birthtime:X,ctime:ae,mtime:ne,atimeMs:N,birthtimeMs:B,ctimeMs:F,mtimeMs:f,mode:ue,crc:l});return n.bigint===!0?pA.statUtils.convertToBigIntStats(de):de}if(this.listings.has(r)){let o=this.stats.uid,l=this.stats.gid,A=0,f=512,I=0,C=this.stats.mtimeMs,b=this.stats.mtimeMs,E=this.stats.mtimeMs,N=this.stats.mtimeMs,B=new Date(C),F=new Date(b),Q=new Date(E),X=new Date(N),ae=X9.constants.S_IFDIR|493,ce=Object.assign(new pA.statUtils.StatEntry,{uid:o,gid:l,size:A,blksize:f,blocks:I,atime:B,birthtime:F,ctime:Q,mtime:X,atimeMs:C,birthtimeMs:b,ctimeMs:E,mtimeMs:N,mode:ae,crc:0});return n.bigint===!0?pA.statUtils.convertToBigIntStats(ce):ce}throw new Error("Unreachable")}getUnixMode(t,r){let[n,a]=this.zipImpl.getExternalAttributes(t);return n!==Lv.ZIP_UNIX?r:a>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(bh.ppath.dirname(t)).add(bh.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(bh.ppath.dirname(t)).add(bh.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(bh.ppath.dirname(t))?.delete(bh.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){this.unregisterEntry(t),this.zipImpl.deleteEntry(r)}resolveFilename(t,r,n=!0,a=!0){if(!this.ready)throw pA.errors.EBUSY(`archive closed, ${t}`);let o=bh.ppath.resolve(bh.PortablePath.root,r);if(o==="/")return bh.PortablePath.root;let l=this.entries.get(o);if(n&&l!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(l)){let A=this.getFileSource(l).toString();return this.resolveFilename(t,bh.ppath.resolve(bh.ppath.dirname(o),A),!0,a)}else return o;for(;;){let A=this.resolveFilename(t,bh.ppath.dirname(o),!0,a);if(A===void 0)return A;let f=this.listings.has(A),I=this.entries.has(A);if(!f&&!I){if(a===!1)return;throw pA.errors.ENOENT(t)}if(!f)throw pA.errors.ENOTDIR(t);if(o=bh.ppath.resolve(A,bh.ppath.basename(o)),!n||this.symlinkCount===0)break;let C=this.zipImpl.locate(o.slice(1));if(C===-1)break;if(this.isSymbolicLink(C)){let b=this.getFileSource(C).toString();o=bh.ppath.resolve(bh.ppath.dirname(o),b)}else break}return o}setFileSource(t,r){let n=Buffer.isBuffer(r)?r:Buffer.from(r),a=bh.ppath.relative(bh.PortablePath.root,t),o=null;this.level!=="mixed"&&(o=[this.level===0?Lv.STORE:Lv.DEFLATE,this.level]);let l=this.zipImpl.setFileSource(a,o,n);return this.fileSources.set(l,n),l}isSymbolicLink(t){if(this.symlinkCount===0)return!1;let[r,n]=this.zipImpl.getExternalAttributes(t);return r!==Lv.ZIP_UNIX?!1:(n>>>16&X9.constants.S_IFMT)===X9.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let n=this.fileSources.get(t);if(typeof n<"u")return n;let{data:a,compressionMethod:o}=this.zipImpl.getFileSource(t);if(o===Lv.STORE)return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,a),a;if(o===Lv.DEFLATE){if(r.asyncDecompress)return new Promise((l,A)=>{mZn.default.inflateRaw(a,(f,I)=>{f?A(f):(this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,I),l(I))})});{let l=mZn.default.inflateRawSync(a);return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,l),l}}else throw new Error(`Unsupported compression method: ${o}`)}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw pA.errors.EROFS(`chmod '${t}'`);r&=493;let n=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(n);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${n})`);let l=this.getUnixMode(a,X9.constants.S_IFREG|0)&-512|r;this.zipImpl.setExternalAttributes(a,Lv.ZIP_UNIX,l<<16)}async fchownPromise(t,r,n){return this.chownPromise(this.fdToPath(t,"fchown"),r,n)}fchownSync(t,r,n){return this.chownSync(this.fdToPath(t,"fchownSync"),r,n)}async chownPromise(t,r,n){return this.chownSync(t,r,n)}chownSync(t,r,n){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,n){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}copyFileSync(t,r,n=0){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=this.getFileSource(a),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}prepareCopyFile(t,r,n=0){if(this.readOnly)throw pA.errors.EROFS(`copyfile '${t} -> '${r}'`);if(n&X9.constants.COPYFILE_FICLONE_FORCE)throw pA.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw pA.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let l=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),A=this.entries.get(l);if(n&(X9.constants.COPYFILE_EXCL|X9.constants.COPYFILE_FICLONE_FORCE)&&typeof A<"u")throw pA.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:l,indexDest:A}}async appendFilePromise(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFilePromise(t,r,n)}appendFileSync(t,r,n={}){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFileSync(t,r,n)}fdToPath(t,r){let n=this.fds.get(t)?.p;if(typeof n>"u")throw pA.errors.EBADF(r);return n}async writeFilePromise(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(l,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&await this.chmodPromise(A,o)}writeFileSync(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(l),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&this.chmodSync(A,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw pA.errors.EROFS(`open '${t}'`);let n=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(n))throw pA.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let l=this.entries.get(n);return{encoding:a,mode:o,resolvedP:n,index:l}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw pA.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw pA.errors.EISDIR(`unlink '${t}'`);let n=this.entries.get(r);if(typeof n>"u")throw pA.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,n)}async utimesPromise(t,r,n){return this.utimesSync(t,r,n)}utimesSync(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,n)}async lutimesPromise(t,r,n){return this.lutimesSync(t,r,n)}lutimesSync(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,n)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let n=this.entries.get(t);if(n===void 0)throw new Error("Unreachable");this.zipImpl.setMtime(n,wWo(r))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:n=!1}={}){if(n)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw pA.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw pA.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw pA.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw pA.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw pA.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw pA.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw pA.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw pA.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.zipImpl.addDirectory(bh.ppath.relative(bh.PortablePath.root,t));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw pA.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw pA.errors.EROFS(`symlink '${t}' -> '${r}'`);let n=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(n))throw pA.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(n))throw pA.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(n,t);this.registerEntry(n,a),this.zipImpl.setExternalAttributes(a,Lv.ZIP_UNIX,(X9.constants.S_IFLNK|511)<<16),this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=await this.readFileBuffer(t,{asyncDecompress:!0});return r?n.toString(r):n}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=this.readFileBuffer(t);return r?n.toString(r):n}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let n=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(n))throw pA.errors.EISDIR("read");let a=this.entries.get(n);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let n=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,l=>Object.assign(this.statImpl("lstat",bh.ppath.join(t,l)),{name:l,path:bh.PortablePath.dot,parentPath:bh.PortablePath.dot}));for(let l of o){if(!l.isDirectory())continue;let A=bh.ppath.join(l.path,l.name),f=this.listings.get(bh.ppath.join(n,A));for(let I of f)o.push(Object.assign(this.statImpl("lstat",bh.ppath.join(t,A,I)),{name:I,path:A,parentPath:A}))}return o}else{let o=[...a];for(let l of o){let A=this.listings.get(bh.ppath.join(n,l));if(!(typeof A>"u"))for(let f of A)o.push(bh.ppath.join(l,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",bh.ppath.join(t,o)),{name:o,path:void 0,parentPath:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw pA.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw pA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw pA.errors.EINVAL(`readlink '${t}'`);let n=this.entries.get(r);if(n===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(n))throw pA.errors.EINVAL(`readlink '${t}'`);return n}async truncatePromise(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw pA.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),l=Buffer.alloc(r,0);return o.copy(l),await this.writeFilePromise(t,l)}truncateSync(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw pA.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),l=Buffer.alloc(r,0);return o.copy(l),this.writeFileSync(t,l)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,n){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,n){let a=bh.ppath.resolve(bh.PortablePath.root,t);return(0,AAr.watchFile)(this,a,r,n)}unwatchFile(t,r){let n=bh.ppath.resolve(bh.PortablePath.root,t);return(0,AAr.unwatchFile)(this,n,r)}};Lv.ZipFS=dAr});var CZn=H(pAr=>{"use strict";Object.defineProperty(pAr,"__esModule",{value:!0});pAr.mountMemoryDrive=DWo;var TWo=(Pa(),vi(Va)),sAt=ro(),RWo=TWo.__importDefault(wt("fs")),NWo=iAt();function DWo(e,t,r=Buffer.alloc(0),n){let a=new NWo.ZipFS(r),o=b=>b===t||b.startsWith(`${t}/`)?b.slice(0,t.length):null,l=async(b,E)=>()=>a,A=(b,E)=>a,f={...e},I=new sAt.NodeFS(f),C=new sAt.MountFS({baseFs:I,getMountPoint:o,factoryPromise:l,factorySync:A,magicByte:21,maxAge:1/0,typeCheck:n?.typeCheck});return(0,sAt.patchFs)(RWo.default,new sAt.PosixFS(C)),a}});var yZn=H(vve=>{"use strict";Object.defineProperty(vve,"__esModule",{value:!0});vve.mountMemoryDrive=void 0;var _Zn=(Pa(),vi(Va));_Zn.__exportStar(IZn(),vve);_Zn.__exportStar(iAt(),vve);var kWo=CZn();Object.defineProperty(vve,"mountMemoryDrive",{enumerable:!0,get:function(){return kWo.mountMemoryDrive}})});var bZn=H(oAt=>{"use strict";Object.defineProperty(oAt,"__esModule",{value:!0});oAt.JsZipImpl=void 0;var fAr=ro(),xWo=iAt(),IAr={CENTRAL_DIRECTORY:33639248,END_OF_CENTRAL_DIRECTORY:101010256},m5e=22,hAr=class e{constructor(t){if(this.filesShouldBeCached=!1,"buffer"in t)throw new Error("Buffer based zip archives are not supported");if(!t.readOnly)throw new Error("Writable zip archives are not supported");this.baseFs=t.baseFs,this.fd=this.baseFs.openSync(t.path,"r");try{this.entries=e.readZipSync(this.fd,this.baseFs,t.size)}catch(r){throw this.baseFs.closeSync(this.fd),this.fd="closed",r}}static readZipSync(t,r,n){if(n=0;Q--)if(o.readUInt32LE(Q)===IAr.END_OF_CENTRAL_DIRECTORY){a=Q;break}if(a===-1)throw new Error("Not a zip archive")}let l=o.readUInt16LE(a+10),A=o.readUInt32LE(a+12),f=o.readUInt32LE(a+16),I=o.readUInt16LE(a+20);if(a+I+m5e>o.length)throw new Error("Zip archive inconsistent");if(l==65535||A==4294967295||f==4294967295)throw new Error("Zip 64 is not supported");if(A>n)throw new Error("Zip archive inconsistent");if(l>A/46)throw new Error("Zip archive inconsistent");let C=Buffer.alloc(A);if(r.readSync(t,C,0,C.length,f)!==C.length)throw new Error("Zip archive inconsistent");let b=[],E=0,N=0,B=0;for(;NC.length)throw new Error("Zip archive inconsistent");if(C.readUInt32LE(E)!==IAr.CENTRAL_DIRECTORY)throw new Error("Zip archive inconsistent");let Q=C.readUInt16LE(E+4)>>>8;if(C.readUInt16LE(E+8)&1)throw new Error("Encrypted zip files are not supported");let ae=C.readUInt16LE(E+10),ne=C.readUInt32LE(E+16),ce=C.readUInt16LE(E+28),fe=C.readUInt16LE(E+30),ue=C.readUInt16LE(E+32),de=C.readUInt32LE(E+42),be=C.toString("utf8",E+46,E+46+ce).replaceAll("\0"," ");if(be.includes("\0"))throw new Error("Invalid ZIP file");let Se=C.readUInt32LE(E+20),De=C.readUInt32LE(E+38);b.push({name:be,os:Q,mtime:fAr.constants.SAFE_TIME,crc:ne,compressionMethod:ae,isSymbolicLink:Q===xWo.ZIP_UNIX&&(De>>>16&fAr.constants.S_IFMT)===fAr.constants.S_IFLNK,size:C.readUInt32LE(E+24),compressedSize:Se,externalAttributes:De,localHeaderOffset:de}),B+=Se,N+=1,E+=46+ce+fe+ue}if(B>n)throw new Error("Zip archive inconsistent");if(E!==C.length)throw new Error("Zip archive inconsistent");return b}getExternalAttributes(t){let r=this.entries[t];return[r.os,r.externalAttributes]}getListings(){return this.entries.map(t=>t.name)}getSymlinkCount(){let t=0;for(let r of this.entries)r.isSymbolicLink&&(t+=1);return t}stat(t){let r=this.entries[t];return{crc:r.crc,mtime:r.mtime,size:r.size}}locate(t){for(let r=0;r{"use strict";Object.defineProperty(l$,"__esModule",{value:!0});l$.LibZipImpl=l$.JsZipImpl=void 0;l$.getLibzipSync=ZWo;l$.getLibzipPromise=LWo;var EZn=(Pa(),vi(Va)),mAr=nAr(),GWo=EZn.__importDefault(dZn()),FWo=pZn();EZn.__exportStar(yZn(),l$);(0,mAr.setFactory)(()=>{let e=(0,GWo.default)();return(0,FWo.makeInterface)(e)});function ZWo(){return(0,mAr.getInstance)()}async function LWo(){return(0,mAr.getInstance)()}var VWo=bZn();Object.defineProperty(l$,"JsZipImpl",{enumerable:!0,get:function(){return VWo.JsZipImpl}});var PWo=gAr();Object.defineProperty(l$,"LibZipImpl",{enumerable:!0,get:function(){return PWo.LibZipImpl}})});var SZn=H(CAr=>{"use strict";Object.defineProperty(CAr,"__esModule",{value:!0});var WWo=ro(),aAt=($c(),vi(rg)),OWo=C5e(),cAt=class extends aAt.Command{constructor(){super(...arguments),this.cwd=aAt.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=aAt.Option.String(),this.args=aAt.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,OWo.execute)(t,[],{cwd:WWo.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};cAt.usage={description:"run a command using yarn's portable shell",details:` +`)}`}}};O_.RequestError=jB;var xgt=class extends jB{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};O_.MaxRedirectsError=xgt;var Ggt=class extends jB{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};O_.HTTPError=Ggt;var Fgt=class extends jB{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};O_.CacheError=Fgt;var Zgt=class extends jB{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};O_.UploadError=Zgt;var Lgt=class extends jB{constructor(t,r,n){super(t.message,t,n),this.name="TimeoutError",this.event=t.event,this.timings=r}};O_.TimeoutError=Lgt;var A5e=class extends jB{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};O_.ReadError=A5e;var Vgt=class extends jB{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};O_.UnsupportedProtocolError=Vgt;var uPo=["socket","connect","continue","information","upgrade","timeout"],Pgt=class extends bFn.Duplex{constructor(t,r={},n){super({autoDestroy:!1,highWaterMark:0}),this[Cve]=0,this[yve]=0,this.requestInitialized=!1,this[Ngt]=new Set,this.redirects=[],this[bve]=!1,this[Dgt]=!1,this[g5e]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",I=>{I.prependListener("data",a),I.on("data",o),I.prependListener("end",a),I.on("end",o)}),this.on("unpipe",I=>{I.off("data",a),I.off("data",o),I.off("end",a),I.off("end",o)}),this.on("pipe",I=>{I instanceof Lgr.IncomingMessage&&(this.options.headers={...I.headers,...this.options.headers})});let{json:l,body:A,form:f}=r;if((l||A||f)&&this._lockWrite(),O_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,n)}catch(I){va.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(I);return}(async()=>{var I;try{this.options.body instanceof HVo.ReadStream&&await aPo(this.options.body);let{url:C}=this.options;if(!C)throw new TypeError("Missing `url` property");if(this.requestUrl=C.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(I=this[vk])===null||I===void 0||I.destroy();return}for(let b of this[g5e])b();this[g5e].length=0,this.requestInitialized=!0}catch(C){if(C instanceof jB){this._beforeError(C);return}this.destroyed||this.destroy(C)}})()}static normalizeArguments(t,r,n){var a,o,l,A,f;let I=r;if(va.default.object(t)&&!va.default.urlInstance(t))r={...n,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...n,...r},t!==void 0&&(r.url=t),va.default.urlInstance(r.url)&&(r.url=new boe.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),va.assert.any([va.default.string,va.default.undefined],r.method),va.assert.any([va.default.object,va.default.undefined],r.headers),va.assert.any([va.default.string,va.default.urlInstance,va.default.undefined],r.prefixUrl),va.assert.any([va.default.object,va.default.undefined],r.cookieJar),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.searchParams),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.cache),va.assert.any([va.default.object,va.default.number,va.default.undefined],r.timeout),va.assert.any([va.default.object,va.default.undefined],r.context),va.assert.any([va.default.object,va.default.undefined],r.hooks),va.assert.any([va.default.boolean,va.default.undefined],r.decompress),va.assert.any([va.default.boolean,va.default.undefined],r.ignoreInvalidCookies),va.assert.any([va.default.boolean,va.default.undefined],r.followRedirect),va.assert.any([va.default.number,va.default.undefined],r.maxRedirects),va.assert.any([va.default.boolean,va.default.undefined],r.throwHttpErrors),va.assert.any([va.default.boolean,va.default.undefined],r.http2),va.assert.any([va.default.boolean,va.default.undefined],r.allowGetBody),va.assert.any([va.default.string,va.default.undefined],r.localAddress),va.assert.any([TFn.isDnsLookupIpVersion,va.default.undefined],r.dnsLookupIpVersion),va.assert.any([va.default.object,va.default.undefined],r.https),va.assert.any([va.default.boolean,va.default.undefined],r.rejectUnauthorized),r.https&&(va.assert.any([va.default.boolean,va.default.undefined],r.https.rejectUnauthorized),va.assert.any([va.default.function_,va.default.undefined],r.https.checkServerIdentity),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificateAuthority),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.key),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificate),va.assert.any([va.default.string,va.default.undefined],r.https.passphrase),va.assert.any([va.default.string,va.default.buffer,va.default.array,va.default.undefined],r.https.pfx)),va.assert.any([va.default.object,va.default.undefined],r.cacheOptions),va.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===n?.headers?r.headers={...r.headers}:r.headers=KVo({...n?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==n?.searchParams){let N;if(va.default.string(r.searchParams)||r.searchParams instanceof boe.URLSearchParams)N=new boe.URLSearchParams(r.searchParams);else{sPo(r.searchParams),N=new boe.URLSearchParams;for(let B in r.searchParams){let F=r.searchParams[B];F===null?N.append(B,""):F!==void 0&&N.append(B,F)}}(a=n?.searchParams)===null||a===void 0||a.forEach((B,F)=>{N.has(F)||N.append(F,B)}),r.searchParams=N}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(l=r.password)!==null&&l!==void 0?l:"",va.default.undefined(r.prefixUrl)?r.prefixUrl=(A=n?.prefixUrl)!==null&&A!==void 0?A:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),va.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=wFn.default(r.prefixUrl+r.url,r)}else(va.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=wFn.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:N}=r;Object.defineProperty(r,"prefixUrl",{set:F=>{let Q=r.url;if(!Q.href.startsWith(F))throw new Error(`Cannot change \`prefixUrl\` from ${N} to ${F}: ${Q.href}`);r.url=new boe.URL(F+Q.href.slice(N.length)),N=F},get:()=>N});let{protocol:B}=r.url;if(B==="unix:"&&(B="http:",r.url=new boe.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),B!=="http:"&&B!=="https:")throw new Vgt(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:C}=r;if(C){let{setCookie:N,getCookieString:B}=C;va.assert.function_(N),va.assert.function_(B),N.length===4&&B.length===0&&(N=yFn.promisify(N.bind(r.cookieJar)),B=yFn.promisify(B.bind(r.cookieJar)),r.cookieJar={setCookie:N,getCookieString:B})}let{cache:b}=r;if(b&&(Wgr.has(b)||Wgr.set(b,new SFn((N,B)=>{let F=N[vk](N,B);return va.default.promise(F)&&(F.once=(Q,X)=>{if(Q==="error")F.catch(X);else if(Q==="abort")(async()=>{try{(await F).once("abort",X)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${Q}`);return F}),F},b))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)Vgr||(Vgr=new XVo.default),r.dnsCache=Vgr;else if(!va.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${va.default(r.dnsCache)}`);va.default.number(r.timeout)?r.timeout={request:r.timeout}:n&&r.timeout!==n.timeout?r.timeout={...n.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let E=r.hooks===n?.hooks;r.hooks={...r.hooks};for(let N of O_.knownHookEvents)if(N in r.hooks)if(va.default.array(r.hooks[N]))r.hooks[N]=[...r.hooks[N]];else throw new TypeError(`Parameter \`${N}\` must be an Array, got ${va.default(r.hooks[N])}`);else r.hooks[N]=[];if(n&&!E)for(let N of O_.knownHookEvents)n.hooks[N].length>0&&(r.hooks[N]=[...n.hooks[N],...r.hooks[N]]);if("family"in r&&Eoe.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),n?.https&&(r.https={...n.https,...r.https}),"rejectUnauthorized"in r&&Eoe.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&Eoe.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&Eoe.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&Eoe.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&Eoe.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&Eoe.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&Eoe.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let N in r.agent)if(N!=="http"&&N!=="https"&&N!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${N}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,O_.setNonEnumerableProperties([n,I],r),rPo.default(r,n)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,n=!va.default.undefined(t.form),a=!va.default.undefined(t.json),o=!va.default.undefined(t.body),l=n||a||o,A=O_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=A,l){if(A)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,n,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof bFn.Readable)&&!va.default.string(t.body)&&!va.default.buffer(t.body)&&!vFn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(n&&!va.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!va.default.string(r["content-type"]);o?(vFn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[Soe]=t.body):n?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[Soe]=new boe.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[Soe]=t.stringifyJson(t.json));let I=await jVo.default(this[Soe],t.headers);va.default.undefined(r["content-length"])&&va.default.undefined(r["transfer-encoding"])&&!A&&!va.default.undefined(I)&&(r["content-length"]=String(I))}}else A?this._lockWrite():this._unlockWrite();this[_ve]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:n}=r;this[kFn]=t,r.decompress&&(t=JVo(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:EFn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[NFn]=o.isFromCache,this[mve]=Number(t.headers["content-length"])||void 0,this[kgt]=t,t.once("end",()=>{this[mve]=this[Cve],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",A=>{t.destroy(),this._beforeError(new A5e(A,this))}),t.once("aborted",()=>{this._beforeError(new A5e({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let l=t.headers["set-cookie"];if(va.default.object(r.cookieJar)&&l){let A=l.map(async f=>r.cookieJar.setCookie(f,n.toString()));r.ignoreInvalidCookies&&(A=A.map(async f=>f.catch(()=>{})));try{await Promise.all(A)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&cPo.has(a)){if(t.resume(),this[vk]&&(this[Pgr](),delete this[vk],this[RFn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[Soe]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new xgt(this));return}try{let b=function(E){return E.protocol==="unix:"||E.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),I=new boe.URL(f,n),C=I.toString();if(decodeURI(C),!b(n)&&b(I)){this._beforeError(new jB("Cannot redirect to UNIX socket",{},this));return}I.hostname!==n.hostname||I.port!==n.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(I.username=r.username,I.password=r.password),this.redirects.push(C),r.url=I;for(let E of r.hooks.beforeRedirect)await E(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!tPo.isResponseOk(o)){this._beforeError(new Ggt(o));return}t.on("readable",()=>{this[Dgt]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let A of this[Ngt])if(!A.headersSent){for(let f in t.headers){let I=r.decompress?f!=="content-encoding":!0,C=t.headers[f];I&&A.setHeader(f,C)}A.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:n,url:a}=r;QVo.default(t),this[Pgr]=BFn.default(t,n,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var I;t.destroy(),(I=t.res)===null||I===void 0||I.removeAllListeners("end"),f=f instanceof BFn.TimeoutError?new Lgt(f,this.timings,this):new jB(f.message,f,this),this._beforeError(f)}),this[RFn]=zVo.default(t,this,uPo),this[vk]=t,this.emit("uploadProgress",this.uploadProgress);let l=this[Soe],A=this.redirects.length===0?this:t;va.default.nodeStream(l)?(l.pipe(A),l.once("error",f=>{this._beforeError(new Zgt(f,this))})):(this._unlockWrite(),va.default.undefined(l)?(this._cannotHaveBody||this._noPipe)&&(A.end(),this._lockWrite()):(this._writeRequest(l,void 0,()=>{}),A.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((n,a)=>{Object.assign(r,qVo.default(t)),delete r.url;let o,l=Wgr.get(r.cache)(r,async A=>{A._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",A),n(A)});r.url=t,l.once("error",a),l.once("request",async A=>{o=A,n(o)})})}async _makeRequest(){var t,r,n,a,o;let{options:l}=this,{headers:A}=l;for(let X in A)if(va.default.undefined(A[X]))delete A[X];else if(va.default.null_(A[X]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${X}\` header`);if(l.decompress&&va.default.undefined(A["accept-encoding"])&&(A["accept-encoding"]=iPo?"gzip, deflate, br":"gzip, deflate"),l.cookieJar){let X=await l.cookieJar.getCookieString(l.url.toString());va.default.nonEmptyString(X)&&(l.headers.cookie=X)}for(let X of l.hooks.beforeRequest){let ae=await X(l);if(!va.default.undefined(ae)){l.request=()=>ae;break}}l.body&&this[Soe]!==l.body&&(this[Soe]=l.body);let{agent:f,request:I,timeout:C,url:b}=l;if(l.dnsCache&&!("lookup"in l)&&(l.lookup=l.dnsCache.lookup),b.hostname==="unix"){let X=/(?.+?):(?.+)/.exec(`${b.pathname}${b.search}`);if(X?.groups){let{socketPath:ae,path:ne}=X.groups;Object.assign(l,{socketPath:ae,path:ne,host:""})}}let E=b.protocol==="https:",N;l.http2?N=UVo.auto:N=E?YVo.request:EFn.request;let B=(t=l.request)!==null&&t!==void 0?t:N,F=l.cache?this._createCacheableRequest:B;f&&!l.http2&&(l.agent=f[E?"https":"http"]),l[vk]=B,delete l.request,delete l.timeout;let Q=l;if(Q.shared=(r=l.cacheOptions)===null||r===void 0?void 0:r.shared,Q.cacheHeuristic=(n=l.cacheOptions)===null||n===void 0?void 0:n.cacheHeuristic,Q.immutableMinTimeToLive=(a=l.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,Q.ignoreCargoCult=(o=l.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,l.dnsLookupIpVersion!==void 0)try{Q.family=TFn.dnsLookupIpVersionToFamily(l.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}l.https&&("rejectUnauthorized"in l.https&&(Q.rejectUnauthorized=l.https.rejectUnauthorized),l.https.checkServerIdentity&&(Q.checkServerIdentity=l.https.checkServerIdentity),l.https.certificateAuthority&&(Q.ca=l.https.certificateAuthority),l.https.certificate&&(Q.cert=l.https.certificate),l.https.key&&(Q.key=l.https.key),l.https.passphrase&&(Q.passphrase=l.https.passphrase),l.https.pfx&&(Q.pfx=l.https.pfx));try{let X=await F(b,Q);va.default.undefined(X)&&(X=N(b,Q)),l.request=I,l.timeout=C,l.agent=f,l.https&&("rejectUnauthorized"in l.https&&delete Q.rejectUnauthorized,l.https.checkServerIdentity&&delete Q.checkServerIdentity,l.https.certificateAuthority&&delete Q.ca,l.https.certificate&&delete Q.cert,l.https.key&&delete Q.key,l.https.passphrase&&delete Q.passphrase,l.https.pfx&&delete Q.pfx),oPo(X)?this._onRequest(X):this.writable?(this.once("finish",()=>{this._onResponse(X)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(X)}catch(X){throw X instanceof SFn.CacheError?new Fgt(X,this):new jB(X.message,X,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new jB(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[bve])return;let{options:r}=this,n=this.retryCount+1;this[bve]=!0,t instanceof jB||(t=new jB(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await ePo.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let l;try{let A;o&&"retry-after"in o.headers&&(A=Number(o.headers["retry-after"]),Number.isNaN(A)?(A=Date.parse(o.headers["retry-after"])-Date.now(),A<=0&&(A=1)):A*=1e3),l=await r.retry.calculateDelay({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:nPo.default({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:0})})}catch(A){this._error(new jB(A.message,A,this));return}if(l){let A=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,n)}catch(f){this._error(new jB(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",n,t))};this[xFn]=setTimeout(A,l);return}}this._error(a)})()}_read(){this[Dgt]=!0;let t=this[kgt];if(t&&!this[bve]){t.readableLength&&(this[Dgt]=!1);let r;for(;(r=t.read())!==null;){this[Cve]+=r.length,this[DFn]=!0;let n=this.downloadProgress;n.percent<1&&this.emit("downloadProgress",n),this.push(r)}}}_write(t,r,n){let a=()=>{this._writeRequest(t,r,n)};this.requestInitialized?a():this[g5e].push(a)}_writeRequest(t,r,n){this[vk].destroyed||(this._progressCallbacks.push(()=>{this[yve]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[vk].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(vk in this)){t();return}if(this[vk].destroyed){t();return}this[vk].end(n=>{n||(this[_ve]=this[yve],this.emit("uploadProgress",this.uploadProgress),this[vk].emit("upload-complete")),t(n)})};this.requestInitialized?r():this[g5e].push(r)}_destroy(t,r){var n;this[bve]=!0,clearTimeout(this[xFn]),vk in this&&(this[Pgr](),!((n=this[kgt])===null||n===void 0)&&n.complete||this[vk].destroy()),t!==null&&!va.default.undefined(t)&&!(t instanceof jB)&&(t=new jB(t.message,t,this)),r(t)}get _isAboutToError(){return this[bve]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,n;return((r=(t=this[vk])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((n=this[kFn])===null||n===void 0)&&n.complete)}get socket(){var t,r;return(r=(t=this[vk])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[mve]?t=this[Cve]/this[mve]:this[mve]===this[Cve]?t=1:t=0,{percent:t,transferred:this[Cve],total:this[mve]}}get uploadProgress(){let t;return this[_ve]?t=this[yve]/this[_ve]:this[_ve]===this[yve]?t=1:t=0,{percent:t,transferred:this[yve],total:this[_ve]}}get timings(){var t;return(t=this[vk])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[NFn]}pipe(t,r){if(this[DFn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof Lgr.ServerResponse&&this[Ngt].add(t),super.pipe(t,r)}unpipe(t){return t instanceof Lgr.ServerResponse&&this[Ngt].delete(t),super.unpipe(t),this}};O_.default=Pgt});var p5e=H(cX=>{"use strict";var gPo=cX&&cX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),APo=cX&&cX.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&gPo(t,e,r)};Object.defineProperty(cX,"__esModule",{value:!0});cX.CancelError=cX.ParseError=void 0;var GFn=d5e(),Ogr=class extends GFn.RequestError{constructor(t,r){let{options:n}=r.request;super(`${t.message} in "${n.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};cX.ParseError=Ogr;var Mgr=class extends GFn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};cX.CancelError=Mgr;APo(d5e(),cX)});var ZFn=H(Hgr=>{"use strict";Object.defineProperty(Hgr,"__esModule",{value:!0});var FFn=p5e(),dPo=(e,t,r,n)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(n);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new FFn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new FFn.ParseError(o,e)}};Hgr.default=dPo});var Ygr=H(voe=>{"use strict";var pPo=voe&&voe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fPo=voe&&voe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&pPo(t,e,r)};Object.defineProperty(voe,"__esModule",{value:!0});var IPo=wt("events"),hPo=o$(),mPo=Zxn(),Wgt=p5e(),LFn=ZFn(),VFn=d5e(),CPo=Bgr(),_Po=xgr(),PFn=Ggr(),yPo=["request","response","redirect","uploadProgress","downloadProgress"];function WFn(e){let t,r,n=new IPo.EventEmitter,a=new mPo((l,A,f)=>{let I=C=>{let b=new VFn.default(void 0,e);b.retryCount=C,b._noPipe=!0,f(()=>b.destroy()),f.shouldReject=!1,f(()=>A(new Wgt.CancelError(b))),t=b,b.once("response",async B=>{var F;if(B.retryCount=C,B.request.aborted)return;let Q;try{Q=await _Po.default(b),B.rawBody=Q}catch{return}if(b._isAboutToError)return;let X=((F=B.headers["content-encoding"])!==null&&F!==void 0?F:"").toLowerCase(),ae=["gzip","deflate","br"].includes(X),{options:ne}=b;if(ae&&!ne.decompress)B.body=Q;else try{B.body=LFn.default(B,ne.responseType,ne.parseJson,ne.encoding)}catch(ce){if(B.body=Q.toString(),PFn.isResponseOk(B)){b._beforeError(ce);return}}try{for(let[ce,fe]of ne.hooks.afterResponse.entries())B=await fe(B,async ue=>{let de=VFn.default.normalizeArguments(void 0,{...ue,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ne);de.hooks.afterResponse=de.hooks.afterResponse.slice(0,ce);for(let Se of de.hooks.beforeRetry)await Se(de);let be=WFn(de);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ce){b._beforeError(new Wgt.RequestError(ce.message,ce,b));return}if(r=B,!PFn.isResponseOk(B)){b._beforeError(new Wgt.HTTPError(B));return}b.destroy(),l(b.options.resolveBodyOnly?B.body:B)});let E=B=>{if(a.isCanceled)return;let{options:F}=b;if(B instanceof Wgt.HTTPError&&!F.throwHttpErrors){let{response:Q}=B;l(b.options.resolveBodyOnly?Q.body:Q);return}A(B)};b.once("error",E);let N=b.options.body;b.once("retry",(B,F)=>{var Q,X;if(N===((Q=F.request)===null||Q===void 0?void 0:Q.options.body)&&hPo.default.nodeStream((X=F.request)===null||X===void 0?void 0:X.options.body)){E(F);return}I(B)}),CPo.default(b,n,yPo)};I(0)});a.on=(l,A)=>(n.on(l,A),a);let o=l=>{let A=(async()=>{await a;let{options:f}=r.request;return LFn.default(r,l,f.parseJson,f.encoding)})();return Object.defineProperties(A,Object.getOwnPropertyDescriptors(a)),A};return a.json=()=>{let{headers:l}=t.options;return!t.writableFinished&&l.accept===void 0&&(l.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}voe.default=WFn;fPo(p5e(),voe)});var OFn=H(Qgr=>{"use strict";Object.defineProperty(Qgr,"__esModule",{value:!0});var bPo=p5e();function EPo(e,...t){let r=(async()=>{if(e instanceof bPo.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),n=()=>r;return r.json=n,r.text=n,r.buffer=n,r.on=n,r}Qgr.default=EPo});var YFn=H(Xgr=>{"use strict";Object.defineProperty(Xgr,"__esModule",{value:!0});var MFn=o$();function HFn(e){for(let t of Object.values(e))(MFn.default.plainObject(t)||MFn.default.array(t))&&HFn(t);return Object.freeze(e)}Xgr.default=HFn});var XFn=H(QFn=>{"use strict";Object.defineProperty(QFn,"__esModule",{value:!0})});var Jgr=H(lM=>{"use strict";var SPo=lM&&lM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vPo=lM&&lM.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&SPo(t,e,r)};Object.defineProperty(lM,"__esModule",{value:!0});lM.defaultHandler=void 0;var JFn=o$(),cM=Ygr(),BPo=OFn(),Mgt=d5e(),wPo=YFn(),TPo={RequestError:cM.RequestError,CacheError:cM.CacheError,ReadError:cM.ReadError,HTTPError:cM.HTTPError,MaxRedirectsError:cM.MaxRedirectsError,TimeoutError:cM.TimeoutError,ParseError:cM.ParseError,CancelError:cM.CancelError,UnsupportedProtocolError:cM.UnsupportedProtocolError,UploadError:cM.UploadError},RPo=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:Ogt}=Mgt.default,UFn=(...e)=>{let t;for(let r of e)t=Ogt(void 0,r,t);return t},NPo=e=>e.isStream?new Mgt.default(void 0,e):cM.default(e),DPo=e=>"defaults"in e&&"options"in e.defaults,kPo=["get","post","put","patch","head","delete"];lM.defaultHandler=(e,t)=>t(e);var KFn=(e,t)=>{if(e)for(let r of e)r(t)},jFn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(n=>(a,o)=>{let l,A=n(a,f=>(l=o(f),l));if(A!==l&&!a.isStream&&l){let f=A,{then:I,catch:C,finally:b}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(l)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(l)),f.then=I,f.catch=C,f.finally=b}return A});let t=(n,a={},o)=>{var l,A;let f=0,I=C=>e.handlers[f++](C,f===e.handlers.length?NPo:I);if(JFn.default.plainObject(n)){let C={...n,...a};Mgt.setNonEnumerableProperties([n,a],C),a=C,n=void 0}try{let C;try{KFn(e.options.hooks.init,a),KFn((l=a.hooks)===null||l===void 0?void 0:l.init,a)}catch(E){C=E}let b=Ogt(n,a,o??e.options);if(b[Mgt.kIsNormalizedAlready]=!0,C)throw new cM.RequestError(C.message,C,b);return I(b)}catch(C){if(a.isStream)throw C;return BPo.default(C,e.options.hooks.beforeError,(A=a.hooks)===null||A===void 0?void 0:A.beforeError)}};t.extend=(...n)=>{let a=[e.options],o=[...e._rawHandlers],l;for(let A of n)DPo(A)?(a.push(A.defaults.options),o.push(...A.defaults._rawHandlers),l=A.defaults.mutableDefaults):(a.push(A),"handlers"in A&&o.push(...A.handlers),l=A.mutableDefaults);return o=o.filter(A=>A!==lM.defaultHandler),o.length===0&&o.push(lM.defaultHandler),jFn({options:UFn(...a),handlers:o,mutableDefaults:!!l})};let r=async function*(n,a){let o=Ogt(n,a,e.options);o.resolveBodyOnly=!1;let l=o.pagination;if(!JFn.default.object(l))throw new TypeError("`options.pagination` must be implemented");let A=[],{countLimit:f}=l,I=0;for(;I{let o=[];for await(let l of r(n,a))o.push(l);return o},t.paginate.each=r,t.stream=(n,a)=>t(n,{...a,isStream:!0});for(let n of kPo)t[n]=(a,o)=>t(a,{...o,method:n}),t.stream[n]=(a,o)=>t(a,{...o,method:n,isStream:!0});return Object.assign(t,TPo),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:wPo.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=UFn,t};lM.default=jFn;vPo(XFn(),lM)});var $Fn=H((a$,Hgt)=>{"use strict";var xPo=a$&&a$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zFn=a$&&a$.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&xPo(t,e,r)};Object.defineProperty(a$,"__esModule",{value:!0});var GPo=wt("url"),qFn=Jgr(),FPo={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let n of t){let a=n.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new GPo.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[qFn.defaultHandler],mutableDefaults:!1},Ugr=qFn.default(FPo);a$.default=Ugr;Hgt.exports=Ugr;Hgt.exports.default=Ugr;Hgt.exports.__esModule=!0;zFn(Jgr(),a$);zFn(Ygr(),a$)});var Xgt=H(UK=>{"use strict";Object.defineProperty(UK,"__esModule",{value:!0});UK.Method=void 0;UK.getNetworkSettings=sZn;UK.request=f5e;UK.get=MPo;UK.put=HPo;UK.post=YPo;UK.del=QPo;var Ygt=(Pa(),vi(Va)),ZPo=zs(),eZn=Dxn(),LPo=wt("https"),VPo=wt("http"),nZn=Ygt.__importDefault(Ek()),Boe=M9(),jgr=sM(),kE=Ygt.__importStar(rM()),iZn=Ygt.__importStar(xW()),tZn=new Map,rZn=new Map,PPo=new VPo.Agent({keepAlive:!0}),WPo=new LPo.Agent({keepAlive:!0});async function Kgr(e){return iZn.getFactoryWithDefault(rZn,e,()=>ZPo.xfs.readFilePromise(e).then(t=>(rZn.set(e,t),t)))}function OPo({statusCode:e,statusMessage:t},r){let n=kE.pretty(r,e,kE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return kE.applyHyperlink(r,`${n}${t?` (${t})`:""}`,a)}async function Qgt(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(n){if(n.name!=="HTTPError")throw n;let a=r?.(n,t)??n.response.body?.error;a==null&&(n.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=n.message),n.code==="ETIMEDOUT"&&n.event==="socket"&&(a+=`(can be increased via ${kE.pretty(t,"httpTimeout",kE.Type.SETTING)})`);let o=new jgr.ReportError(Boe.MessageName.NETWORK_ERROR,a,l=>{n.response&&l.reportError(Boe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Response Code",value:kE.tuple(kE.Type.NO_HINT,OPo(n.response,t))})}`),n.request&&(l.reportError(Boe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Method",value:kE.tuple(kE.Type.NO_HINT,n.request.options.method)})}`),l.reportError(Boe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request URL",value:kE.tuple(kE.Type.URL,n.request.requestUrl)})}`)),n.request.redirects.length>0&&l.reportError(Boe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Redirects",value:kE.tuple(kE.Type.NO_HINT,kE.prettyList(t,n.request.redirects,kE.Type.URL))})}`),n.request.retryCount===n.request.options.retry.limit&&l.reportError(Boe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Retry Count",value:kE.tuple(kE.Type.NO_HINT,`${kE.pretty(t,n.request.retryCount,kE.Type.NUMBER)} (can be increased via ${kE.pretty(t,"httpRetry",kE.Type.SETTING)})`)})}`)});throw o.originalError=n,o}}function sZn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([l],[A])=>A.length-l.length),n={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(n),o=typeof e=="string"?new URL(e):e;for(let[l,A]of r)if(nZn.default.isMatch(o.hostname,l))for(let f of a){let I=A.get(f);I!==null&&typeof n[f]>"u"&&(n[f]=I)}for(let l of a)typeof n[l]>"u"&&(n[l]=t.configuration.get(l));return n}var tIe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(tIe||(UK.Method=tIe={}));async function f5e(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=tIe.GET,wrapNetworkRequest:A}){let f={target:e,body:t,configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l},I=async()=>await XPo(e,t,f),C=typeof A<"u"?await A(I,f):I;return await(await r.reduceHook(E=>E.wrapNetworkRequest,C,f))()}async function MPo(e,{configuration:t,jsonResponse:r,customErrorMessage:n,wrapNetworkRequest:a,...o}){let l=()=>Qgt(f5e(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:n}).then(f=>f.body),A=await(typeof a<"u"?l():iZn.getFactoryWithDefault(tZn,e,()=>l().then(f=>(tZn.set(e,f),f))));return r?JSON.parse(A.toString()):A}async function HPo(e,t,{customErrorMessage:r,...n}){return(await Qgt(f5e(e,t,{...n,method:tIe.PUT}),{customErrorMessage:r,configuration:n.configuration})).body}async function YPo(e,t,{customErrorMessage:r,...n}){return(await Qgt(f5e(e,t,{...n,method:tIe.POST}),{customErrorMessage:r,configuration:n.configuration})).body}async function QPo(e,{customErrorMessage:t,...r}){return(await Qgt(f5e(e,null,{...r,method:tIe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function XPo(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=tIe.GET}){let A=typeof e=="string"?new URL(e):e,f=sZn(A,{configuration:r});if(f.enableNetwork===!1)throw new jgr.ReportError(Boe.MessageName.NETWORK_DISABLED,`Request to '${A.href}' has been blocked because of your configuration settings`);if(A.protocol==="http:"&&!nZn.default.isMatch(A.hostname,r.get("unsafeHttpWhitelist")))throw new jgr.ReportError(Boe.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${A.hostname})`);let I={headers:n,method:l};I.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?I.body=t:I.json=t);let C=r.get("httpTimeout"),b=r.get("httpRetry"),E=r.get("enableStrictSsl"),N=f.httpsCaFilePath,B=f.httpsCertFilePath,F=f.httpsKeyFilePath,{default:Q}=await Promise.resolve().then(()=>Ygt.__importStar($Fn())),X=N?await Kgr(N):void 0,ae=B?await Kgr(B):void 0,ne=F?await Kgr(F):void 0,ce={rejectUnauthorized:E,ca:X,cert:ae,key:ne},fe={http:f.httpProxy?new eZn.HttpProxyAgent({proxy:f.httpProxy,proxyRequestOptions:ce}):PPo,https:f.httpsProxy?new eZn.HttpsProxyAgent({proxy:f.httpsProxy,proxyRequestOptions:ce}):WPo},ue=Q.extend({timeout:{socket:C},retry:b,agent:fe,https:{rejectUnauthorized:E,certificateAuthority:X,certificate:ae,key:ne},...I});return r.getLimit("networkConcurrency")(()=>ue(A))}});var Jgt=H(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.openUrl=lX.major=void 0;lX.getArchitecture=$gr;lX.getArchitectureName=jPo;lX.getArchitectureSet=zPo;lX.getCaller=tWo;lX.availableParallelism=rWo;var qgr=(Pa(),vi(Va)),uZn=zs(),zgr=qgr.__importDefault(wt("os")),JPo=qgr.__importStar(Ugt()),oZn=qgr.__importStar(xW());lX.major=Number(process.versions.node.split(".")[0]);var aZn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);lX.openUrl=typeof aZn<"u"?async e=>{try{return await JPo.execvp(aZn,[e],{cwd:uZn.ppath.cwd()}),!0}catch{return!1}}:void 0;var UPo="/usr/bin/ldd";function KPo(){if(process.platform!=="linux")return null;let e;try{e=uZn.xfs.readFileSync(UPo)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("GNU libc")||e.includes("GNU C Library")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],n=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return oZn.mapAndFind(r,a=>{let o=a.match(n);if(!o)return oZn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var cZn,lZn;function $gr(){return cZn=cZn??{os:(process.env.YARN_IS_TEST_ENV?process.env.YARN_OS_OVERRIDE:void 0)??process.platform,cpu:(process.env.YARN_IS_TEST_ENV?process.env.YARN_CPU_OVERRIDE:void 0)??process.arch,libc:(process.env.YARN_IS_TEST_ENV?process.env.YARN_LIBC_OVERRIDE:void 0)??KPo()}}function jPo(e=$gr()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function zPo(){let e=$gr();return lZn=lZn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var qPo=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,$Po=/\((\S*)(?::(\d+))(?::(\d+))\)/;function eWo(e){let t=qPo.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,a=$Po.exec(t[2]);return n&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function tWo(){let t=new Error().stack.split(` +`)[3];return eWo(t)}function rWo(){return typeof zgr.default.availableParallelism<"u"?zgr.default.availableParallelism():Math.max(1,zgr.default.cpus().length)}});var h5e=H(Zm=>{"use strict";Object.defineProperty(Zm,"__esModule",{value:!0});Zm.Configuration=Zm.coreDefinitions=Zm.WindowsLinkType=Zm.DurationUnit=Zm.FormatType=Zm.SettingsType=Zm.SECRET=Zm.DEFAULT_RC_FILENAME=Zm.ENVIRONMENT_PREFIX=Zm.TAG_REGEXP=Zm.LEGACY_PLUGINS=void 0;var gX=(Pa(),vi(Va)),Gf=zs(),Kgt=TW(),nWo=gX.__importDefault(CSn()),Eve=Dfe(),uX=($c(),vi(rg)),iWo=wSn(),sWo=wt("module"),oWo=gX.__importDefault(kfe()),gZn=wt("stream"),aWo=lxn(),cWo=gve(),lWo=Eur(),uWo=vur(),gWo=Rur(),AWo=yxn(),dWo=Dur(),pWo=jfe(),woe=gX.__importStar(Bxn()),zgt=gX.__importStar(dgt()),tb=gX.__importStar(rM()),fWo=gX.__importStar(Coe()),IWo=gX.__importStar(Xgt()),UN=gX.__importStar(xW()),pZn=gX.__importStar(Jgt()),jgt=gX.__importStar(n$()),TZ=gX.__importStar(uG()),uM=Xfe(),hWo=function(){if(!Eve.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=Gf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=Gf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();Zm.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var mWo=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","osOverride","cpuOverride","libcOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);Zm.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;Zm.ENVIRONMENT_PREFIX="yarn_";Zm.DEFAULT_RC_FILENAME=".yarnrc.yml";Zm.SECRET="********";var Vl;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.DURATION="DURATION",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(Vl||(Zm.SettingsType=Vl={}));Zm.FormatType=tb.Type;var $gt;(function(e){e.MILLISECONDS="ms",e.SECONDS="s",e.MINUTES="m",e.HOURS="h",e.DAYS="d",e.WEEKS="w"})($gt||(Zm.DurationUnit=$gt={}));var AZn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(AZn||(Zm.WindowsLinkType=AZn={}));Zm.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Vl.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Vl.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Vl.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:Vl.ABSOLUTE_PATH,default:zgt.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:Vl.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Vl.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Vl.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:Vl.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Vl.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Vl.STRING,default:tAr()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Vl.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:Vl.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Vl.BOOLEAN,default:tb.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Vl.BOOLEAN,default:tb.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Vl.BOOLEAN,default:Eve.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Vl.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Vl.BOOLEAN,default:!Eve.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Vl.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:Vl.BOOLEAN,default:!Eve.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Vl.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Vl.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Vl.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Vl.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Vl.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Vl.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:Vl.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Vl.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:Vl.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:Vl.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Vl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Vl.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Vl.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request",type:Vl.DURATION,unit:$gt.MILLISECONDS,default:"1m"},httpRetry:{description:"Retry times on http failure",type:Vl.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Vl.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:Vl.NUMBER,default:pZn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:Vl.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Vl.MAP,valueDefinition:{description:"",type:Vl.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Vl.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Vl.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Vl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Vl.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Vl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Vl.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Vl.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Vl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Vl.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Vl.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Vl.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Vl.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Vl.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:Vl.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Vl.STRING,values:Object.values(tb.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Vl.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads",type:Vl.DURATION,unit:$gt.DAYS,default:"7d"},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Vl.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:Vl.BOOLEAN,default:Eve.isPR&&hWo,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Vl.BOOLEAN,default:!1},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:Vl.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Vl.BOOLEAN,default:!1},enableCacheClean:{description:"If false, disallows the `cache clean` command",type:Vl.BOOLEAN,default:!0},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Vl.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:Vl.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Vl.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Vl.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Vl.MAP,valueDefinition:{description:"A range",type:Vl.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Vl.MAP,valueDefinition:{description:"A semver range",type:Vl.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Vl.MAP,valueDefinition:{description:"The peerDependency meta",type:Vl.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Vl.BOOLEAN,default:!1}}}}}}}};function rAr(e,t,r,n,a){let o=woe.getValue(r);if(n.isArray||n.type===Vl.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((l,A)=>eAr(e,`${t}[${A}]`,l,n,a)):String(o).split(/,/).map(l=>eAr(e,t,l,n,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return eAr(e,t,r,n,a)}function eAr(e,t,r,n,a){let o=woe.getValue(r);switch(n.type){case Vl.ANY:return woe.getValueByTree(o);case Vl.SHAPE:return CWo(e,t,r,n,a);case Vl.MAP:return _Wo(e,t,r,n,a)}if(o===null&&!n.isNullable&&n.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if("values"in n&&n.values?.includes(o))return o;let A=(()=>{if(n.type===Vl.BOOLEAN&&typeof o!="string")return UN.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=UN.replaceEnvVariables(o,{env:e.env});switch(n.type){case Vl.ABSOLUTE_PATH:{let I=a,C=woe.getSource(r);return C&&C[0]!=="<"&&(I=Gf.ppath.dirname(C)),Gf.ppath.resolve(I,Gf.npath.toPortablePath(f))}case Vl.LOCATOR_LOOSE:return TZ.parseLocator(f,!1);case Vl.NUMBER:return parseInt(f);case Vl.LOCATOR:return TZ.parseLocator(f);case Vl.BOOLEAN:return UN.parseBoolean(f);case Vl.DURATION:return UN.parseDuration(f,n.unit);default:return f}})();if("values"in n&&n.values&&!n.values.includes(A))throw new Error(`Invalid value, expected one of ${n.values.join(", ")}`);return A}function CWo(e,t,r,n,a){let o=woe.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new uX.UsageError(`Object configuration settings "${t}" must be an object`);let l=nAr(e,n,{ignoreArrays:!0});if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=`${t}.${A}`;if(!n.properties[A])throw new uX.UsageError(`Unrecognized configuration settings found: ${t}.${A} - run "yarn config" to see the list of settings supported in Yarn`);l.set(A,rAr(e,I,f,n.properties[A],a))}return l}function _Wo(e,t,r,n,a){let o=woe.getValue(r),l=new Map;if(typeof o!="object"||Array.isArray(o))throw new uX.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=n.normalizeKeys?n.normalizeKeys(A):A,C=`${t}['${I}']`,b=n.valueDefinition;l.set(I,rAr(e,C,f,b,a))}return l}function nAr(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case Vl.SHAPE:{if(t.isArray&&!r)return[];let n=new Map;for(let[a,o]of Object.entries(t.properties))n.set(a,nAr(e,o));return n}case Vl.MAP:return t.isArray&&!r?[]:new Map;case Vl.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(n=>Gf.ppath.normalize(n)):Gf.ppath.isAbsolute(t.default)?Gf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(n=>Gf.ppath.resolve(e.projectCwd,n)):Gf.ppath.resolve(e.projectCwd,t.default);case Vl.DURATION:return UN.parseDuration(t.default,t.unit);default:return t.default}}function qgt(e,t,r){if(t.type===Vl.SECRET&&typeof e=="string"&&r.hideSecrets)return Zm.SECRET;if(t.type===Vl.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return Gf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let n=[];for(let a of e)n.push(qgt(a,t,r));return n}if(t.type===Vl.MAP&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=qgt(o,t.valueDefinition,r);typeof l<"u"&&n.set(a,l)}return n}if(t.type===Vl.SHAPE&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=t.properties[a],A=qgt(o,l,r);typeof A<"u"&&n.set(a,A)}return n}return e}function yWo(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(Zm.ENVIRONMENT_PREFIX)&&(t=(0,nWo.default)(t.slice(Zm.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function tAr(){let e=`${Zm.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return Zm.DEFAULT_RC_FILENAME}async function dZn(e){try{return await Gf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function bWo(e,t){return Buffer.compare(...await Promise.all([dZn(e),dZn(t)]))===0}async function EWo(e,t){let[r,n]=await Promise.all([Gf.xfs.statPromise(e),Gf.xfs.statPromise(t)]);return r.dev===n.dev&&r.ino===n.ino}var SWo=process.platform==="win32"?bWo:EWo;async function vWo({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await SWo(r,t)?null:r}var I5e=class e{static create(t,r,n){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(Zm.coreDefinitions);let o=typeof n<"u"?n:r instanceof Map?r:new Map;for(let[l,A]of o)a.activatePlugin(l,A);return a}static async find(t,r,{strict:n=!0,usePathCheck:a=null,useRc:o=!0}={}){let l=yWo();delete l.rcFilename;let A=new e(t),f=await e.findRcFiles(t),I=await e.findFolderRcFile(zgt.getHomeFolder());I&&(f.find(de=>de.path===I.path)||f.unshift(I));let C=woe.resolveRcFiles(f.map(ue=>[ue.path,ue.data])),b=Gf.PortablePath.dot,E=new Set(Object.keys(Zm.coreDefinitions)),N=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be})=>({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be}),B=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be,...Se})=>{let De={};for(let[k,et]of Object.entries(Se))E.has(k)&&(De[k]=et);return De},F=({yarnPath:ue,ignorePath:de,...be})=>{let Se={};for(let[De,k]of Object.entries(be))E.has(De)||(Se[De]=k);return Se};if(A.importSettings(N(Zm.coreDefinitions)),A.useWithSource("",N(l),t,{strict:!1}),C){let[ue,de]=C;A.useWithSource(ue,N(de),b,{strict:!1})}if(a){if(await vWo({configuration:A,selfPath:a})!==null)return A;A.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let Q=await e.findProjectCwd(t);A.startingCwd=t,A.projectCwd=Q;let X=Object.assign(Object.create(null),process.env);A.env=X;let ae=await Promise.all(A.get("injectEnvironmentFiles").map(async ue=>{let de=ue.endsWith("?")?await Gf.xfs.readFilePromise(ue.slice(0,-1),"utf8").catch(()=>""):await Gf.xfs.readFilePromise(ue,"utf8");return(0,iWo.parse)(de)}));for(let ue of ae)for(let[de,be]of Object.entries(ue))A.env[de]=UN.replaceEnvVariables(be,{env:X});if(A.importSettings(B(Zm.coreDefinitions)),A.useWithSource("",B(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,B(de),b,{strict:n})}let ne=ue=>"default"in ue?ue.default:ue,ce=new Map([["@@core",aWo.CorePlugin]]);if(r!==null)for(let ue of r.plugins.keys())ce.set(ue,ne(r.modules.get(ue)));for(let[ue,de]of ce)A.activatePlugin(ue,de);let fe=new Map([]);if(r!==null){let ue=new Map;for(let[Se,De]of r.modules)ue.set(Se,()=>De);let de=new Set,be=async(Se,De)=>{let{factory:k,name:et}=UN.dynamicRequire(Se);if(!k||de.has(et))return;let ct=new Map(ue),Me=St=>{if((0,sWo.isBuiltin)(St))return UN.dynamicRequire(St);if(ct.has(St))return ct.get(St)();throw new uX.UsageError(`This plugin cannot access the package referenced via ${St} which is neither a builtin, nor an exposed entry`)},je=await UN.prettifyAsyncErrors(async()=>ne(await k(Me)),St=>`${St} (when initializing ${et}, defined in ${De})`);ue.set(et,()=>je),de.add(et),fe.set(et,je)};if(l.plugins)for(let Se of l.plugins.split(";")){let De=Gf.ppath.resolve(t,Gf.npath.toPortablePath(Se));await be(De,"")}for(let{path:Se,cwd:De,data:k}of f)if(o&&Array.isArray(k.plugins))for(let et of k.plugins){let ct=typeof et!="string"?et.path:et,Me=et?.spec??"",je=et?.checksum??"";if(Zm.LEGACY_PLUGINS.has(Me))continue;let St=Gf.ppath.resolve(De,Gf.npath.toPortablePath(ct));if(!await Gf.xfs.existsPromise(St)){if(!Me){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,".gitignore",tb.Type.NAME),er=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME),vt=tb.pretty(A,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",tb.Type.URL);throw new uX.UsageError(`Missing source for the ${Tr} plugin - please try to remove the plugin from ${er} then reinstall it manually. This error usually occurs because ${Nr} is incorrect, check ${vt} to make sure your plugin folder isn't gitignored.`)}if(!Me.match(/^https?:/)){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME);throw new uX.UsageError(`Failed to recognize the source for the ${Tr} plugin - please try to delete the plugin from ${Nr} then reinstall it manually.`)}let At=await IWo.get(Me,{configuration:A}),Yt=fWo.makeHash(At);if(je&&je!==Yt){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME),er=tb.pretty(A,`yarn plugin import ${Me}`,tb.Type.CODE);throw new uX.UsageError(`Failed to fetch the ${Tr} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Nr} then run ${er} to reimport it.`)}await Gf.xfs.mkdirPromise(Gf.ppath.dirname(St),{recursive:!0}),await Gf.xfs.writeFilePromise(St,At)}await be(St,Se)}}for(let[ue,de]of fe)A.activatePlugin(ue,de);if(A.useWithSource("",F(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,F(de),b,{strict:n})}return A.get("enableGlobalCache")&&(A.values.set("cacheFolder",`${A.get("globalFolder")}/cache`),A.sources.set("cacheFolder","")),A}static async findRcFiles(t){let r=tAr(),n=[],a=t,o=null;for(;a!==o;){o=a;let l=Gf.ppath.join(o,r);if(Gf.xfs.existsSync(l)){let A,f;try{f=await Gf.xfs.readFilePromise(l,"utf8"),A=(0,Kgt.parseSyml)(f)}catch{let I="";throw f?.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(I=" (in particular, make sure you list the colons after each key name)"),new uX.UsageError(`Parse error when loading ${l}; please check it's proper Yaml${I}`)}n.unshift({path:l,cwd:o,data:A})}a=Gf.ppath.dirname(o)}return n}static async findFolderRcFile(t){let r=Gf.ppath.join(t,Gf.Filename.rc),n;try{n=await Gf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,Kgt.parseSyml)(n);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,n=t,a=null;for(;n!==a;){if(a=n,Gf.xfs.existsSync(Gf.ppath.join(a,Gf.Filename.lockfile)))return a;Gf.xfs.existsSync(Gf.ppath.join(a,Gf.Filename.manifest))&&(r=a),n=Gf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,n={}){let a=tAr(),o=Gf.ppath.join(t,a),l=Gf.xfs.existsSync(o)?(0,Kgt.parseSyml)(await Gf.xfs.readFilePromise(o,"utf8")):{},A=!1,f;if(typeof r=="function"){try{f=r(l)}catch{f=r({})}if(f===l)return!1}else{f=l;for(let I of Object.keys(r)){let C=l[I],b=r[I],E;if(typeof b=="function")try{E=b(C)}catch{E=b(void 0)}else E=b;C!==E&&(E===e.deleteProperty?delete f[I]:f[I]=E,A=!0)}if(!A)return!1}return await Gf.xfs.changeFilePromise(o,(0,Kgt.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,n=>{let a=n.plugins??[];if(a.length===0)return{...n,plugins:r};let o=[],l=[...r];for(let A of a){let f=typeof A!="string"?A.path:A,I=l.find(C=>C.path===f);I?(o.push(I),l=l.filter(C=>C!==I)):o.push(A)}return o.push(...l),{...n,plugins:o}})}static async updateHomeConfiguration(t){let r=zgt.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=Eve.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,n]of Object.entries(t))if(n!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,n),this.values.set(r,nAr(this,n))}}useWithSource(t,r,n,a){try{this.use(t,r,n,a)}catch(o){throw o.message+=` (in ${tb.pretty(this,t,tb.Type.PATH)})`,o}}use(t,r,n,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let l of["enableStrictSettings",...Object.keys(r)]){let A=r[l],f=woe.getSource(A);if(f&&(t=f),typeof A>"u"||l==="plugins"||t===""&&mWo.has(l))continue;if(l==="rcFilename")throw new uX.UsageError(`The rcFilename settings can only be set via ${`${Zm.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let I=this.settings.get(l);if(!I){let b=zgt.getHomeFolder(),E=t[0]!=="<"?Gf.ppath.dirname(t):null;if(a&&!(E!==null?b===E:!1))throw new uX.UsageError(`Unrecognized or legacy configuration settings found: ${l} - run "yarn config" to see the list of settings supported in Yarn`);this.invalid.set(l,t);continue}if(this.sources.has(l)&&!(o||I.type===Vl.MAP||I.isArray&&I.concatenateValues))continue;let C;try{C=rAr(this,l,A,I,n)}catch(b){throw b.message+=` in ${tb.pretty(this,t,tb.Type.PATH)}`,b}if(l==="enableStrictSettings"&&t!==""){a=C;continue}if(I.type===Vl.MAP){let b=this.values.get(l);this.values.set(l,new Map(o?[...b,...C]:[...C,...b])),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else if(I.isArray&&I.concatenateValues){let b=this.values.get(l);this.values.set(l,o?[...b,...C]:[...C,...b]),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else this.values.set(l,C),this.sources.set(l,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:n=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new uX.UsageError(`Couldn't find a configuration settings named "${t}"`);return qgt(a,o,{hideSecrets:r,getNativePaths:n})}getSubprocessStreams(t,{header:r,prefix:n,report:a}){let o,l,A=Gf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${n} ${tb.pretty(this,"STDOUT","green")}`),I=a.createStreamReporter(`${n} ${tb.pretty(this,"STDERR","red")}`);o=new gZn.PassThrough,o.pipe(f),o.pipe(A),l=new gZn.PassThrough,l.pipe(I),l.pipe(A)}else o=A,l=A,typeof r<"u"&&o.write(`${r} +`);return{stdout:o,stderr:l}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new uWo.MultiResolver([new AWo.VirtualResolver,new pWo.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new lWo.MultiFetcher([new gWo.VirtualFetcher,new dWo.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let n of r.linkers||[])t.push(new n);return t}getSupportedArchitectures(){let t=pZn.getArchitecture(),r=this.get("supportedArchitectures"),n=r.get("os");n!==null&&(n=n.map(l=>l==="current"?t.os:l));let a=r.get("cpu");a!==null&&(a=a.map(l=>l==="current"?t.cpu:l));let o=r.get("libc");return o!==null&&(o=UN.mapAndFilter(o,l=>l==="current"?t.libc??UN.mapAndFilter.skip:l)),{os:n,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(n,a,{userProvided:o=!1}={})=>{if(!jgt.validRange(n.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let l=new cWo.Manifest;l.load(a,{yamlCompatibilityMode:!0});let A=UN.getArrayWithDefault(t,n.identHash),f=[];A.push([n.range,f]);let I={status:uM.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:n};for(let C of l.dependencies.values())f.push({...I,type:uM.PackageExtensionType.Dependency,descriptor:C});for(let C of l.peerDependencies.values())f.push({...I,type:uM.PackageExtensionType.PeerDependency,descriptor:C});for(let[C,b]of l.peerDependenciesMeta)for(let[E,N]of Object.entries(b))f.push({...I,type:uM.PackageExtensionType.PeerDependencyMeta,selector:C,key:E,value:N})};await this.triggerHook(n=>n.registerPackageExtensions,this,r);for(let[n,a]of this.get("packageExtensions"))r(TZ.parseDescriptor(n,!0),UN.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return jgt.validRange(t.reference)?TZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):Zm.TAG_REGEXP.test(t.reference)?TZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return jgt.validRange(t.range)?TZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):Zm.TAG_REGEXP.test(t.range)?TZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,n])=>[r,this.normalizeDependency(n)]))}normalizePackage(t,{packageExtensions:r}){let n=TZ.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let l=t.version;if(l!==null){for(let[A,f]of a)if(jgt.satisfiesWithPrereleases(l,A))for(let I of f)switch(I.status===uM.PackageExtensionStatus.Inactive&&(I.status=uM.PackageExtensionStatus.Redundant),I.type){case uM.PackageExtensionType.Dependency:typeof n.dependencies.get(I.descriptor.identHash)>"u"&&(I.status=uM.PackageExtensionStatus.Active,n.dependencies.set(I.descriptor.identHash,this.normalizeDependency(I.descriptor)));break;case uM.PackageExtensionType.PeerDependency:typeof n.peerDependencies.get(I.descriptor.identHash)>"u"&&(I.status=uM.PackageExtensionStatus.Active,n.peerDependencies.set(I.descriptor.identHash,I.descriptor));break;case uM.PackageExtensionType.PeerDependencyMeta:{let C=n.peerDependenciesMeta.get(I.selector);(typeof C>"u"||!Object.hasOwn(C,I.key)||C[I.key]!==I.value)&&(I.status=uM.PackageExtensionStatus.Active,UN.getFactoryWithDefault(n.peerDependenciesMeta,I.selector,()=>({}))[I.key]=I.value)}break;default:UN.assertNever(I)}}}let o=l=>l.scope?`${l.scope}__${l.name}`:`${l.name}`;for(let l of n.peerDependenciesMeta.keys()){let A=TZ.parseIdent(l);n.peerDependencies.has(A.identHash)||n.peerDependencies.set(A.identHash,TZ.makeDescriptor(A,"*"))}for(let l of n.peerDependencies.values()){if(l.scope==="types")continue;let A=o(l),f=TZ.makeIdent("types",A),I=TZ.stringifyIdent(f);n.peerDependencies.has(f.identHash)||n.peerDependenciesMeta.has(I)||n.dependencies.has(f.identHash)||(n.peerDependencies.set(f.identHash,TZ.makeDescriptor(f,"*")),n.peerDependenciesMeta.set(I,{optional:!0}))}return n.dependencies=new Map(UN.sortMap(n.dependencies,([,l])=>TZ.stringifyDescriptor(l))),n.peerDependencies=new Map(UN.sortMap(n.peerDependencies,([,l])=>TZ.stringifyDescriptor(l))),n}getLimit(t){return UN.getFactoryWithDefault(this.limits,t,()=>(0,oWo.default)(this.get(t)))}async triggerHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let n of r)await this.triggerHook(t,...n)}async reduceHook(t,r,...n){let a=r;for(let o of this.plugins.values()){let l=o.hooks;if(!l)continue;let A=t(l);A&&(a=await A(a,...n))}return a}async firstHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);if(!o)continue;let l=await o(...r);if(typeof l<"u")return l}return null}};Zm.Configuration=I5e;I5e.deleteProperty=Symbol();I5e.telemetry=null});var Ugt=H(KK=>{"use strict";Object.defineProperty(KK,"__esModule",{value:!0});KK.ExecError=KK.PipeError=KK.EndStrategy=void 0;KK.pipevp=BWo;KK.execvp=wWo;var fZn=(Pa(),vi(Va)),eAt=zs(),IZn=fZn.__importDefault(Vct()),hZn=h5e(),tAt=M9(),mZn=sM(),gM=fZn.__importStar(rM()),iIe;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(iIe||(KK.EndStrategy=iIe={}));var m5e=class extends mZn.ReportError{constructor({fileName:t,code:r,signal:n}){let a=hZn.Configuration.create(eAt.ppath.cwd()),o=gM.pretty(a,t,gM.Type.PATH);super(tAt.MessageName.EXCEPTION,`Child ${o} reported an error`,l=>{RWo(r,n,{configuration:a,report:l})}),this.code=oAr(r,n)}};KK.PipeError=m5e;var rAt=class extends m5e{constructor({fileName:t,code:r,signal:n,stdout:a,stderr:o}){super({fileName:t,code:r,signal:n}),this.stdout=a,this.stderr=o}};KK.ExecError=rAt;function rIe(e){return e!==null&&typeof e.fd=="number"}var nIe=new Set;function iAr(){}function sAr(){for(let e of nIe)e.kill()}async function BWo(e,t,{cwd:r,env:n=process.env,strict:a=!1,stdin:o=null,stdout:l,stderr:A,end:f=iIe.Always}){let I=["pipe","pipe","pipe"];o===null?I[0]="ignore":rIe(o)&&(I[0]=o),rIe(l)&&(I[1]=l),rIe(A)&&(I[2]=A);let C=(0,IZn.default)(e,t,{cwd:eAt.npath.fromPortablePath(r),env:{...n,PWD:eAt.npath.fromPortablePath(r)},stdio:I});nIe.add(C),nIe.size===1&&(process.on("SIGINT",iAr),process.on("SIGTERM",sAr)),!rIe(o)&&o!==null&&o.pipe(C.stdin),rIe(l)||C.stdout.pipe(l,{end:!1}),rIe(A)||C.stderr.pipe(A,{end:!1});let b=()=>{for(let E of new Set([l,A]))rIe(E)||E.end()};return new Promise((E,N)=>{C.on("error",B=>{nIe.delete(C),nIe.size===0&&(process.off("SIGINT",iAr),process.off("SIGTERM",sAr)),(f===iIe.Always||f===iIe.ErrorCode)&&b(),N(B)}),C.on("close",(B,F)=>{nIe.delete(C),nIe.size===0&&(process.off("SIGINT",iAr),process.off("SIGTERM",sAr)),(f===iIe.Always||f===iIe.ErrorCode&&B!==0)&&b(),B===0||!a?E({code:oAr(B,F)}):N(new m5e({fileName:e,code:B,signal:F}))})})}async function wWo(e,t,{cwd:r,env:n=process.env,encoding:a="utf8",strict:o=!1}){let l=["ignore","pipe","pipe"],A=[],f=[],I=eAt.npath.fromPortablePath(r);typeof n.PWD<"u"&&(n={...n,PWD:I});let C=(0,IZn.default)(e,t,{cwd:I,env:n,stdio:l});return C.stdout.on("data",b=>{A.push(b)}),C.stderr.on("data",b=>{f.push(b)}),await new Promise((b,E)=>{C.on("error",N=>{let B=hZn.Configuration.create(r),F=gM.pretty(B,e,gM.Type.PATH);E(new mZn.ReportError(tAt.MessageName.EXCEPTION,`Process ${F} failed to spawn`,Q=>{Q.reportError(tAt.MessageName.EXCEPTION,` ${gM.prettyField(B,{label:"Thrown Error",value:gM.tuple(gM.Type.NO_HINT,N.message)})}`)}))}),C.on("close",(N,B)=>{let F=a==="buffer"?Buffer.concat(A):Buffer.concat(A).toString(a),Q=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);N===0||!o?b({code:oAr(N,B),stdout:F,stderr:Q}):E(new rAt({fileName:e,code:N,signal:B,stdout:F,stderr:Q}))})})}var TWo=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function oAr(e,t){let r=TWo.get(t);return typeof r<"u"?128+r:e??1}function RWo(e,t,{configuration:r,report:n}){n.reportError(tAt.MessageName.EXCEPTION,` ${gM.prettyField(r,e!==null?{label:"Exit Code",value:gM.tuple(gM.Type.NUMBER,e)}:{label:"Exit Signal",value:gM.tuple(gM.Type.CODE,t)})}`)}});var aAr=H(jK=>{"use strict";Object.defineProperty(jK,"__esModule",{value:!0});jK.cachedInstance=void 0;jK.setFactory=NWo;jK.getInstance=DWo;jK.tryInstance=kWo;var CZn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function NWo(e){CZn=e}function DWo(){return typeof jK.cachedInstance>"u"&&(jK.cachedInstance=CZn()),jK.cachedInstance}function kWo(){return jK.cachedInstance}});var _Zn=H((nAt,lAr)=>{var xWo=Object.assign({},wt("fs")),cAr=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},n,a;r.ready=new Promise(function(Zs,so){n=Zs,a=so});var o={},l;for(l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var A=[],f="./this.program",I=function(Zs,so){throw so},C=!1,b=!0,E="";function N(Zs){return r.locateFile?r.locateFile(Zs,E):E+Zs}var B,F,Q,X;b&&(C?E=wt("path").dirname(E)+"/":E=__dirname+"/",B=function(so,Ea){var Ml=mI(so);return Ml?Ea?Ml:Ml.toString():(Q||(Q=xWo),X||(X=wt("path")),so=X.normalize(so),Q.readFileSync(so,Ea?null:"utf8"))},F=function(so){var Ea=B(so,!0);return Ea.buffer||(Ea=new Uint8Array(Ea)),et(Ea.buffer),Ea},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),A=process.argv.slice(2),I=function(Zs){process.exit(Zs)},r.inspect=function(){return"[Emscripten Module object]"});var ae=r.print||console.log.bind(console),ne=r.printErr||console.warn.bind(console);for(l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);o=null,r.arguments&&(A=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(I=r.quit);var ce=0,fe=function(Zs){ce=Zs},ue;r.wasmBinary&&(ue=r.wasmBinary);var de=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Qi("no native wasm support detected");function be(Zs,so,Ea){switch(so=so||"i8",so.charAt(so.length-1)==="*"&&(so="i32"),so){case"i1":return qt[Zs>>0];case"i8":return qt[Zs>>0];case"i16":return ma((Zs>>1)*2);case"i32":return vu((Zs>>2)*4);case"i64":return vu((Zs>>2)*4);case"float":return Nc((Zs>>2)*4);case"double":return iA((Zs>>3)*8);default:Qi("invalid type for getValue: "+so)}return null}var Se,De=!1,k;function et(Zs,so){Zs||Qi("Assertion failed: "+so)}function ct(Zs){var so=r["_"+Zs];return et(so,"Cannot call unknown function "+Zs+", make sure it is exported"),so}function Me(Zs,so,Ea,Ml,Dr){var Wn={string:function(ef){var ip=0;if(ef!=null&&ef!==0){var _d=(ef.length<<2)+1;ip=np(_d),Tr(ef,ip,_d)}return ip},array:function(ef){var ip=np(ef.length);return vt(ef,ip),ip}};function di(ef){return so==="string"?At(ef):so==="boolean"?!!ef:ef}var aa=ct(Zs),Bo=[],us=0;if(Ml)for(var Ql=0;Ql=Ea)&&Xt[Ml];)++Ml;return St.decode(Xt.subarray(Zs,Ml))}function Yt(Zs,so,Ea,Ml){if(!(Ml>0))return 0;for(var Dr=Ea,Wn=Ea+Ml-1,di=0;di=55296&&aa<=57343){var Bo=Zs.charCodeAt(++di);aa=65536+((aa&1023)<<10)|Bo&1023}if(aa<=127){if(Ea>=Wn)break;so[Ea++]=aa}else if(aa<=2047){if(Ea+1>=Wn)break;so[Ea++]=192|aa>>6,so[Ea++]=128|aa&63}else if(aa<=65535){if(Ea+2>=Wn)break;so[Ea++]=224|aa>>12,so[Ea++]=128|aa>>6&63,so[Ea++]=128|aa&63}else{if(Ea+3>=Wn)break;so[Ea++]=240|aa>>18,so[Ea++]=128|aa>>12&63,so[Ea++]=128|aa>>6&63,so[Ea++]=128|aa&63}}return so[Ea]=0,Ea-Dr}function Tr(Zs,so,Ea){return Yt(Zs,Xt,so,Ea)}function Nr(Zs){for(var so=0,Ea=0;Ea=55296&&Ml<=57343&&(Ml=65536+((Ml&1023)<<10)|Zs.charCodeAt(++Ea)&1023),Ml<=127?++so:Ml<=2047?so+=2:Ml<=65535?so+=3:so+=4}return so}function er(Zs){var so=Nr(Zs)+1,Ea=Ma(so);return Ea&&Yt(Zs,qt,Ea,so),Ea}function vt(Zs,so){qt.set(Zs,so)}function xt(Zs,so){return Zs%so>0&&(Zs+=so-Zs%so),Zs}var Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt;function Fn(Zs){Zr=Zs,r.HEAP_DATA_VIEW=jt=new DataView(Zs),r.HEAP8=qt=new Int8Array(Zs),r.HEAP16=lr=new Int16Array(Zs),r.HEAP32=Ar=new Int32Array(Zs),r.HEAPU8=Xt=new Uint8Array(Zs),r.HEAPU16=cr=new Uint16Array(Zs),r.HEAPU32=qr=new Uint32Array(Zs),r.HEAPF32=_n=new Float32Array(Zs),r.HEAPF64=ke=new Float64Array(Zs)}var Nn=r.INITIAL_MEMORY||16777216,Hi,po=[],Vr=[],xi=[],io=!1;function ga(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)cl(r.preRun.shift());Ei(po)}function Ya(){io=!0,Ei(Vr)}function Gc(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Hr(r.postRun.shift());Ei(xi)}function cl(Zs){po.unshift(Zs)}function Sc(Zs){Vr.unshift(Zs)}function Hr(Zs){xi.unshift(Zs)}var Wr=0,Ft=null,zr=null;function Rn(Zs){Wr++,r.monitorRunDependencies&&r.monitorRunDependencies(Wr)}function Or(Zs){if(Wr--,r.monitorRunDependencies&&r.monitorRunDependencies(Wr),Wr==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),zr)){var so=zr;zr=null,so()}}r.preloadedImages={},r.preloadedAudios={};function Qi(Zs){r.onAbort&&r.onAbort(Zs),Zs+="",ne(Zs),De=!0,k=1,Zs="abort("+Zs+"). Build with -s ASSERTIONS=1 for more info.";var so=new WebAssembly.RuntimeError(Zs);throw a(so),so}var ps="data:application/octet-stream;base64,";function yo(Zs){return Zs.startsWith(ps)}var bo="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsi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CyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcN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DCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQLDAILAn8CQANAAkACQAJAAkACQCADKAI8Ig1BggJLDQAgAxAvAkAgAygCPCINQYICSw0AIAoNAEEADAgLIA1FDQQgDUECSw0AIAMoAmghCAwBCyADKAJoIghFBEBBACEIDAELIAMoAkggCGoiAUEBayIELQAAIgYgAS0AAEcNACAGIAQtAAJHDQAgBEEDaiEEQQAhCQJAA0AgBiAELQAARw0BIAQtAAEgBkcEQCAJQQFyIQkMAgsgBC0AAiAGRwRAIAlBAnIhCQwCCyAELQADIAZHBEAgCUEDciEJDAILIAQtAAQgBkcEQCAJQQRyIQkMAgsgBC0ABSAGRwRAIAlBBXIhCQwCCyAELQAGIAZHBEAgCUEGciEJDAILIAQtAAcgBkcEQCAJQQdyIQkMAgsgBEEIaiEEIAlB+AFJIQEgCUEIaiEJIAENAAtBgAIhCQtBggIhBCANIAlBAmoiASABIA1LGyIBQYECSw0BIAEiBEECSw0BCyADKAJIIAhqLQAAIQQgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtakEAOgAAIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qIAQ6AAAgAyAEQQJ0aiIBIAEvAeQBQQFqOwHkASADIAMoAjxBAWs2AjwgAyADKAJoQQFqIgQ2AmgMAQsgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtakEBOgAAIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qIARBA2s6AAAgAyADKAKALkEBajYCgC4gBEH9zgBqLQAAQQJ0IANqQegJaiIBIAEvAQBBAWo7AQAgA0GAywAtAABBAnRqQdgTaiIBIAEvAQBBAWo7AQAgAyADKAI8IARrNgI8IAMgAygCaCAEaiIENgJoCyADKALwLSADKAL0LUcNAUEAIQggAyADKAJYIgFBAE4EfyADKAJIIAFqBUEACyAEIAFrQQAQDyADIAMoAmg2AlggAygCABAKIAMoAgAoAhANAQwCCwsgA0EANgKELiAKQQRGBEAgAyADKAJYIgFBAE4EfyADKAJIIAFqBUEACyADKAJoIAFrQQEQDyADIAMoAmg2AlggAygCABAKQQNBAiADKAIAKAIQGwwCCyADKALwLQRAQQAhCCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEEUNAQtBASEICyAICwwBCyADIAogAUEMbEG42ABqKAIAEQIACyIBQX5xQQJGBEAgA0GaBTYCIAsgAUF9cUUEQEEAIQQgBSgCEA0CDAQLIAFBAUcNAAJAAkACQCAKQQFrDgUAAQEBAgELIAMpA5guISICfwJ+IAMoAqAuIgFBA2oiCUE/TQRAQgIgAa2GICKEDAELIAFBwABGBEAgAygCBCADKAIQaiAiNwAAIAMgAygCEEEIajYCEEICISJBCgwCCyADKAIEIAMoAhBqQgIgAa2GICKENwAAIAMgAygCEEEIajYCECABQT1rIQlCAkHAACABa62ICyEiIAlBB2ogCUE5SQ0AGiADKAIEIAMoAhBqICI3AAAgAyADKAIQQQhqNgIQQgAhIiAJQTlrCyEBIAMgIjcDmC4gAyABNgKgLiADEDAMAQsgA0EAQQBBABA5IApBA0cNACADKAJQQQBBgIAIEBkgAygCPA0AIANBADYChC4gA0EANgJYIANBADYCaAsgBRAKIAUoAhANAAwDC0EAIQQgCkEERw0AAkACfwJAAkAgAygCFEEBaw4CAQADCyAFIANBoAFqQeCAASgCABEBACIBNgIwIAMoAgQgAygCEGogATYAACADIAMoAhBBBGoiATYCECADKAIEIAFqIQQgBSgCCAwBCyADKAIEIAMoAhBqIQQgBSgCMCIBQRh0IAFBCHRBgID8B3FyIAFBCHZBgP4DcSABQRh2cnILIQEgBCABNgAAIAMgAygCEEEEajYCEAsgBRAKIAMoAhQiAUEBTgRAIANBACABazYCFAsgAygCEEUhBAsgBAwCCyAFQezAACgCADYCGEF7DAELIANBfzYCJEEACwwBCyMAQRBrIhQkAEF+IRcCQCABIgxFDQAgDCgCIEUNACAMKAIkRQ0AIAwoAhwiB0UNACAHKAIAIAxHDQAgBygCBCIIQbT+AGtBH0sNACAMKAIMIhBFDQAgDCgCACIBRQRAIAwoAgQNAQsgCEG//gBGBEAgB0HA/gA2AgRBwP4AIQgLIAdBpAFqIR8gB0G8BmohGSAHQbwBaiEcIAdBoAFqIR0gB0G4AWohGiAHQfwKaiEYIAdBQGshHiAHKAKIASEFIAwoAgQiICEGIAcoAoQBIQogDCgCECIPIRYCfwJAAkACQANAAkBBfSEEQQEhCQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAhBtP4Aaw4fBwYICQolJicoBSwtLQsZGgQMAjIzATUANw0OAzlISUwLIAcoApQBIQMgASEEIAYhCAw1CyAHKAKUASEDIAEhBCAGIQgMMgsgBygCtAEhCAwuCyAHKAIMIQgMQQsgBUEOTw0pIAZFDUEgBUEIaiEIIAFBAWohBCAGQQFrIQkgAS0AACAFdCAKaiEKIAVBBkkNDCAEIQEgCSEGIAghBQwpCyAFQSBPDSUgBkUNQCABQQFqIQQgBkEBayEIIAEtAAAgBXQgCmohCiAFQRhJDQ0gBCEBIAghBgwlCyAFQRBPDRUgBkUNPyAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEISQ0NIAQhASAJIQYgCCEFDBULIAcoAgwiC0UNByAFQRBPDSIgBkUNPiAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEISQ0NIAQhASAJIQYgCCEFDCILIAVBH0sNFQwUCyAFQQ9LDRYMFQsgBygCFCIEQYAIcUUEQCAFIQgMFwsgCiEIIAVBD0sNGAwXCyAKIAVBB3F2IQogBUF4cSIFQR9LDQwgBkUNOiAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEYSQ0GIAQhASAJIQYgCCEFDAwLIAcoArQBIgggBygCqAEiC08NIwwiCyAPRQ0qIBAgBygCjAE6AAAgB0HI/gA2AgQgD0EBayEPIBBBAWohECAHKAIEIQgMOQsgBygCDCIDRQRAQQAhCAwJCyAFQR9LDQcgBkUNNyAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEYSQ0BIAQhASAJIQYgCCEFDAcLIAdBwP4ANgIEDCoLIAlFBEAgBCEBQQAhBiAIIQUgDSEEDDgLIAVBEGohCSABQQJqIQQgBkECayELIAEtAAEgCHQgCmohCiAFQQ9LBEAgBCEBIAshBiAJIQUMBgsgC0UEQCAEIQFBACEGIAkhBSANIQQMOAsgBUEYaiEIIAFBA2ohBCAGQQNrIQsgAS0AAiAJdCAKaiEKIAVBB0sEQCAEIQEgCyEGIAghBQwGCyALRQRAIAQhAUEAIQYgCCEFIA0hBAw4CyAFQSBqIQUgBkEEayEGIAEtAAMgCHQgCmohCiABQQRqIQEMBQsgCUUEQCAEIQFBACEGIAghBSANIQQMNwsgBUEQaiEFIAZBAmshBiABLQABIAh0IApqIQogAUECaiEBDBwLIAlFBEAgBCEBQQAhBiAIIQUgDSEEDDYLIAVBEGohCSABQQJqIQQgBkECayELIAEtAAEgCHQgCmohCiAFQQ9LBEAgBCEBIAshBiAJIQUMBgsgC0UEQCAEIQFBACEGIAkhBSANIQQMNgsgBUEYaiEIIAFBA2ohBCAGQQNrIQsgAS0AAiAJdCAKaiEKIAUEQCAEIQEgCyEGIAghBQwGCyALRQRAIAQhAUEAIQYgCCEFIA0hBAw2CyAFQSBqIQUgBkEEayEGIAEtAAMgCHQgCmohCiABQQRqIQEMBQsgBUEIaiEJIAhFBEAgBCEBQQAhBiAJIQUgDSEEDDULIAFBAmohBCAGQQJrIQggAS0AASAJdCAKaiEKIAVBD0sEQCAEIQEgCCEGDBgLIAVBEGohCSAIRQRAIAQhAUEAIQYgCSEFIA0hBAw1CyABQQNqIQQgBkEDayEIIAEtAAIgCXQgCmohCiAFQQdLBEAgBCEBIAghBgwYCyAFQRhqIQUgCEUEQCAEIQFBACEGIA0hBAw1CyAGQQRrIQYgAS0AAyAFdCAKaiEKIAFBBGohAQwXCyAJDQYgBCEBQQAhBiAIIQUgDSEEDDMLIAlFBEAgBCEBQQAhBiAIIQUgDSEEDDMLIAVBEGohBSAGQQJrIQYgAS0AASAIdCAKaiEKIAFBAmohAQwUCyAMIBYgD2siCSAMKAIUajYCFCAHIAcoAiAgCWo2AiACQCADQQRxRQ0AIAkEQAJAIBAgCWshBCAMKAIcIggoAhQEQCAIQUBrIAQgCUEAQdiAASgCABEIAAwBCyAIIAgoAhwgBCAJQcCAASgCABEAACIENgIcIAwgBDYCMAsLIAcoAhRFDQAgByAeQeCAASgCABEBACIENgIcIAwgBDYCMAsCQCAHKAIMIghBBHFFDQAgBygCHCAKIApBCHRBgID8B3EgCkEYdHIgCkEIdkGA/gNxIApBGHZyciAHKAIUG0YNACAHQdH+ADYCBCAMQaQMNgIYIA8hFiAHKAIEIQgMMQtBACEKQQAhBSAPIRYLIAdBz/4ANgIEDC0LIApB//8DcSIEIApBf3NBEHZHBEAgB0HR/gA2AgQgDEGOCjYCGCAHKAIEIQgMLwsgB0HC/gA2AgQgByAENgKMAUEAIQpBACEFCyAHQcP+ADYCBAsgBygCjAEiBARAIA8gBiAEIAQgBksbIgQgBCAPSxsiCEUNHiAQIAEgCBAHIQQgByAHKAKMASAIazYCjAEgBCAIaiEQIA8gCGshDyABIAhqIQEgBiAIayEGIAcoAgQhCAwtCyAHQb/+ADYCBCAHKAIEIQgMLAsgBUEQaiEFIAZBAmshBiABLQABIAh0IApqIQogAUECaiEBCyAHIAo2AhQgCkH/AXFBCEcEQCAHQdH+ADYCBCAMQYIPNgIYIAcoAgQhCAwrCyAKQYDAA3EEQCAHQdH+ADYCBCAMQY0JNgIYIAcoAgQhCAwrCyAHKAIkIgQEQCAEIApBCHZBAXE2AgALAkAgCkGABHFFDQAgBy0ADEEEcUUNACAUIAo7AAwgBwJ/IAcoAhwhBUEAIBRBDGoiBEUNABogBSAEQQJB1IABKAIAEQAACzYCHAsgB0G2/gA2AgRBACEFQQAhCgsgBkUNKCABQQFqIQQgBkEBayEIIAEtAAAgBXQgCmohCiAFQRhPBEAgBCEBIAghBgwBCyAFQQhqIQkgCEUEQCAEIQFBACEGIAkhBSANIQQMKwsgAUECaiEEIAZBAmshCCABLQABIAl0IApqIQogBUEPSwRAIAQhASAIIQYMAQsgBUEQaiEJIAhFBEAgBCEBQQAhBiAJIQUgDSEEDCsLIAFBA2ohBCAGQQNrIQggAS0AAiAJdCAKaiEKIAVBB0sEQCAEIQEgCCEGDAELIAVBGGohBSAIRQRAIAQhAUEAIQYgDSEEDCsLIAZBBGshBiABLQADIAV0IApqIQogAUEEaiEBCyAHKAIkIgQEQCAEIAo2AgQLAkAgBy0AFUECcUUNACAHLQAMQQRxRQ0AIBQgCjYADCAHAn8gBygCHCEFQQAgFEEMaiIERQ0AGiAFIARBBEHUgAEoAgARAAALNgIcCyAHQbf+ADYCBEEAIQVBACEKCyAGRQ0mIAFBAWohBCAGQQFrIQggAS0AACAFdCAKaiEKIAVBCE8EQCAEIQEgCCEGDAELIAVBCGohBSAIRQRAIAQhAUEAIQYgDSEEDCkLIAZBAmshBiABLQABIAV0IApqIQogAUECaiEBCyAHKAIkIgQEQCAEIApBCHY2AgwgBCAKQf8BcTYCCAsCQCAHLQAVQQJxRQ0AIActAAxBBHFFDQAgFCAKOwAMIAcCfyAHKAIcIQVBACAUQQxqIgRFDQAaIAUgBEECQdSAASgCABEAAAs2AhwLIAdBuP4ANgIEQQAhCEEAIQVBACEKIAcoAhQiBEGACHENAQsgBygCJCIEBEAgBEEANgIQCyAIIQUMAgsgBkUEQEEAIQYgCCEKIA0hBAwmCyABQQFqIQkgBkEBayELIAEtAAAgBXQgCGohCiAFQQhPBEAgCSEBIAshBgwBCyAFQQhqIQUgC0UEQCAJIQFBACEGIA0hBAwmCyAGQQJrIQYgAS0AASAFdCAKaiEKIAFBAmohAQsgByAKQf//A3EiCDYCjAEgBygCJCIFBEAgBSAINgIUC0EAIQUCQCAEQYAEcUUNACAHLQAMQQRxRQ0AIBQgCjsADCAHAn8gBygCHCEIQQAgFEEMaiIERQ0AGiAIIARBAkHUgAEoAgARAAALNgIcC0EAIQoLIAdBuf4ANgIECyAHKAIUIglBgAhxBEAgBiAHKAKMASIIIAYgCEkbIg4EQAJAIAcoAiQiA0UNACADKAIQIgRFDQAgAygCGCILIAMoAhQgCGsiCE0NACAEIAhqIAEgCyAIayAOIAggDmogC0sbEAcaIAcoAhQhCQsCQCAJQYAEcUUNACAHLQAMQQRxRQ0AIAcCfyAHKAIcIQRBACABRQ0AGiAEIAEgDkHUgAEoAgARAAALNgIcCyAHIAcoAowBIA5rIgg2AowBIAYgDmshBiABIA5qIQELIAgNEwsgB0G6/gA2AgQgB0EANgKMAQsCQCAHLQAVQQhxBEBBACEIIAZFDQQDQCABIAhqLQAAIQMCQCAHKAIkIgtFDQAgCygCHCIERQ0AIAcoAowBIgkgCygCIE8NACAHIAlBAWo2AowBIAQgCWogAzoAAAsgA0EAIAYgCEEBaiIISxsNAAsCQCAHLQAVQQJxRQ0AIActAAxBBHFFDQAgBwJ/IAcoAhwhBEEAIAFFDQAaIAQgASAIQdSAASgCABEAAAs2AhwLIAEgCGohASAGIAhrIQYgA0UNAQwTCyAHKAIkIgRFDQAgBEEANgIcCyAHQbv+ADYCBCAHQQA2AowBCwJAIActABVBEHEEQEEAIQggBkUNAwNAIAEgCGotAAAhAwJAIAcoAiQiC0UNACALKAIkIgRFDQAgBygCjAEiCSALKAIoTw0AIAcgCUEBajYCjAEgBCAJaiADOgAACyADQQAgBiAIQQFqIghLGw0ACwJAIActABVBAnFFDQAgBy0ADEEEcUUNACAHAn8gBygCHCEEQQAgAUUNABogBCABIAhB1IABKAIAEQAACzYCHAsgASAIaiEBIAYgCGshBiADRQ0BDBILIAcoAiQiBEUNACAEQQA2AiQLIAdBvP4ANgIECyAHKAIUIgtBgARxBEACQCAFQQ9LDQAgBkUNHyAFQQhqIQggAUEBaiEEIAZBAWshCSABLQAAIAV0IApqIQogBUEITwRAIAQhASAJIQYgCCEFDAELIAlFBEAgBCEBQQAhBiAIIQUgDSEEDCILIAVBEGohBSAGQQJrIQYgAS0AASAIdCAKaiEKIAFBAmohAQsCQCAHLQAMQQRxRQ0AIAogBy8BHEYNACAHQdH+ADYCBCAMQdcMNgIYIAcoAgQhCAwgC0EAIQpBACEFCyAHKAIkIgQEQCAEQQE2AjAgBCALQQl2QQFxNgIsCwJAIActAAxBBHFFDQAgC0UNACAHIB5B5IABKAIAEQEAIgQ2AhwgDCAENgIwCyAHQb/+ADYCBCAHKAIEIQgMHgtBACEGDA4LAkAgC0ECcUUNACAKQZ+WAkcNACAHKAIoRQRAIAdBDzYCKAtBACEKIAdBADYCHCAUQZ+WAjsADCAHIBRBDGoiBAR/QQAgBEECQdSAASgCABEAAAVBAAs2AhwgB0G1/gA2AgRBACEFIAcoAgQhCAwdCyAHKAIkIgQEQCAEQX82AjALAkAgC0EBcQRAIApBCHRBgP4DcSAKQQh2akEfcEUNAQsgB0HR/gA2AgQgDEH2CzYCGCAHKAIEIQgMHQsgCkEPcUEIRwRAIAdB0f4ANgIEIAxBgg82AhggBygCBCEIDB0LIApBBHYiBEEPcSIJQQhqIQsgCUEHTUEAIAcoAigiCAR/IAgFIAcgCzYCKCALCyALTxtFBEAgBUEEayEFIAdB0f4ANgIEIAxB+gw2AhggBCEKIAcoAgQhCAwdCyAHQQE2AhxBACEFIAdBADYCFCAHQYACIAl0NgIYIAxBATYCMCAHQb3+AEG//gAgCkGAwABxGzYCBEEAIQogBygCBCEIDBwLIAcgCkEIdEGAgPwHcSAKQRh0ciAKQQh2QYD+A3EgCkEYdnJyIgQ2AhwgDCAENgIwIAdBvv4ANgIEQQAhCkEAIQULIAcoAhBFBEAgDCAPNgIQIAwgEDYCDCAMIAY2AgQgDCABNgIAIAcgBTYCiAEgByAKNgKEAUECIRcMIAsgB0EBNgIcIAxBATYCMCAHQb/+ADYCBAsCfwJAIAcoAghFBEAgBUEDSQ0BIAUMAgsgB0HO/gA2AgQgCiAFQQdxdiEKIAVBeHEhBSAHKAIEIQgMGwsgBkUNGSAGQQFrIQYgAS0AACAFdCAKaiEKIAFBAWohASAFQQhqCyEEIAcgCkEBcTYCCAJAAkACQAJAAkAgCkEBdkEDcUEBaw4DAQIDAAsgB0HB/gA2AgQMAwsgB0Gw2wA2ApgBIAdCiYCAgNAANwOgASAHQbDrADYCnAEgB0HH/gA2AgQMAgsgB0HE/gA2AgQMAQsgB0HR/gA2AgQgDEHXDTYCGAsgBEEDayEFIApBA3YhCiAHKAIEIQgMGQsgByAKQR9xIghBgQJqNgKsASAHIApBBXZBH3EiBEEBajYCsAEgByAKQQp2QQ9xQQRqIgs2AqgBIAVBDmshBSAKQQ52IQogCEEdTUEAIARBHkkbRQRAIAdB0f4ANgIEIAxB6gk2AhggBygCBCEIDBkLIAdBxf4ANgIEQQAhCCAHQQA2ArQBCyAIIQQDQCAFQQJNBEAgBkUNGCAGQQFrIQYgAS0AACAFdCAKaiEKIAVBCGohBSABQQFqIQELIAcgBEEBaiIINgK0ASAHIARBAXRBsOwAai8BAEEBdGogCkEHcTsBvAEgBUEDayEFIApBA3YhCiALIAgiBEsNAAsLIAhBEk0EQEESIAhrIQ1BAyAIa0EDcSIEBEADQCAHIAhBAXRBsOwAai8BAEEBdGpBADsBvAEgCEEBaiEIIARBAWsiBA0ACwsgDUEDTwRAA0AgB0G8AWoiDSAIQQF0IgRBsOwAai8BAEEBdGpBADsBACANIARBsuwAai8BAEEBdGpBADsBACANIARBtOwAai8BAEEBdGpBADsBACANIARBtuwAai8BAEEBdGpBADsBACAIQQRqIghBE0cNAAsLIAdBEzYCtAELIAdBBzYCoAEgByAYNgKYASAHIBg2ArgBQQAhCEEAIBxBEyAaIB0gGRBOIg0EQCAHQdH+ADYCBCAMQfQINgIYIAcoAgQhCAwXCyAHQcb+ADYCBCAHQQA2ArQBQQAhDQsgBygCrAEiFSAHKAKwAWoiESAISwRAQX8gBygCoAF0QX9zIRIgBygCmAEhGwNAIAYhCSABIQsCQCAFIgMgGyAKIBJxIhNBAnRqLQABIg5PBEAgBSEEDAELA0AgCUUNDSALLQAAIAN0IQ4gC0EBaiELIAlBAWshCSADQQhqIgQhAyAEIBsgCiAOaiIKIBJxIhNBAnRqLQABIg5JDQALIAshASAJIQYLAkAgGyATQQJ0ai8BAiIFQQ9NBEAgByAIQQFqIgk2ArQBIAcgCEEBdGogBTsBvAEgBCAOayEFIAogDnYhCiAJIQgMAQsCfwJ/AkACQAJAIAVBEGsOAgABAgsgDkECaiIFIARLBEADQCAGRQ0bIAZBAWshBiABLQAAIAR0IApqIQogAUEBaiEBIARBCGoiBCAFSQ0ACwsgBCAOayEFIAogDnYhBCAIRQRAIAdB0f4ANgIEIAxBvAk2AhggBCEKIAcoAgQhCAwdCyAFQQJrIQUgBEECdiEKIARBA3FBA2ohCSAIQQF0IAdqLwG6AQwDCyAOQQNqIgUgBEsEQANAIAZFDRogBkEBayEGIAEtAAAgBHQgCmohCiABQQFqIQEgBEEIaiIEIAVJDQALCyAEIA5rQQNrIQUgCiAOdiIEQQN2IQogBEEHcUEDagwBCyAOQQdqIgUgBEsEQANAIAZFDRkgBkEBayEGIAEtAAAgBHQgCmohCiABQQFqIQEgBEEIaiIEIAVJDQALCyAEIA5rQQdrIQUgCiAOdiIEQQd2IQogBEH/AHFBC2oLIQlBAAshAyAIIAlqIBFLDRMgCUEBayEEIAlBA3EiCwRAA0AgByAIQQF0aiADOwG8ASAIQQFqIQggCUEBayEJIAtBAWsiCw0ACwsgBEEDTwRAA0AgByAIQQF0aiIEIAM7Ab4BIAQgAzsBvAEgBCADOwHAASAEIAM7AcIBIAhBBGohCCAJQQRrIgkNAAsLIAcgCDYCtAELIAggEUkNAAsLIAcvAbwFRQRAIAdB0f4ANgIEIAxB0Qs2AhggBygCBCEIDBYLIAdBCjYCoAEgByAYNgKYASAHIBg2ArgBQQEgHCAVIBogHSAZEE4iDQRAIAdB0f4ANgIEIAxB2Ag2AhggBygCBCEIDBYLIAdBCTYCpAEgByAHKAK4ATYCnAFBAiAHIAcoAqwBQQF0akG8AWogBygCsAEgGiAfIBkQTiINBEAgB0HR/gA2AgQgDEGmCTYCGCAHKAIEIQgMFgsgB0HH/gA2AgRBACENCyAHQcj+ADYCBAsCQCAGQQ9JDQAgD0GEAkkNACAMIA82AhAgDCAQNgIMIAwgBjYCBCAMIAE2AgAgByAFNgKIASAHIAo2AoQBIAwgFkHogAEoAgARBwAgBygCiAEhBSAHKAKEASEKIAwoAgQhBiAMKAIAIQEgDCgCECEPIAwoAgwhECAHKAIEQb/+AEcNByAHQX82ApBHIAcoAgQhCAwUCyAHQQA2ApBHIAUhCSAGIQggASEEAkAgBygCmAEiEiAKQX8gBygCoAF0QX9zIhVxIg5BAnRqLQABIgsgBU0EQCAFIQMMAQsDQCAIRQ0PIAQtAAAgCXQhCyAEQQFqIQQgCEEBayEIIAlBCGoiAyEJIAMgEiAKIAtqIgogFXEiDkECdGotAAEiC0kNAAsLIBIgDkECdGoiAS8BAiETAkBBACABLQAAIhEgEUHwAXEbRQRAIAshBgwBCyAIIQYgBCEBAkAgAyIFIAsgEiAKQX8gCyARanRBf3MiFXEgC3YgE2oiEUECdGotAAEiDmpPBEAgAyEJDAELA0AgBkUNDyABLQAAIAV0IQ4gAUEBaiEBIAZBAWshBiAFQQhqIgkhBSALIBIgCiAOaiIKIBVxIAt2IBNqIhFBAnRqLQABIg5qIAlLDQALIAEhBCAGIQgLIBIgEUECdGoiAS0AACERIAEvAQIhEyAHIAs2ApBHIAsgDmohBiAJIAtrIQMgCiALdiEKIA4hCwsgByAGNgKQRyAHIBNB//8DcTYCjAEgAyALayEFIAogC3YhCiARRQRAIAdBzf4ANgIEDBALIBFBIHEEQCAHQb/+ADYCBCAHQX82ApBHDBALIBFBwABxBEAgB0HR/gA2AgQgDEHQDjYCGAwQCyAHQcn+ADYCBCAHIBFBD3EiAzYClAELAkAgA0UEQCAHKAKMASELIAQhASAIIQYMAQsgBSEJIAghBiAEIQsCQCADIAVNBEAgBCEBDAELA0AgBkUNDSAGQQFrIQYgCy0AACAJdCAKaiEKIAtBAWoiASELIAlBCGoiCSADSQ0ACwsgByAHKAKQRyADajYCkEcgByAHKAKMASAKQX8gA3RBf3NxaiILNgKMASAJIANrIQUgCiADdiEKCyAHQcr+ADYCBCAHIAs2ApRHCyAFIQkgBiEIIAEhBAJAIAcoApwBIhIgCkF/IAcoAqQBdEF/cyIVcSIOQQJ0ai0AASIDIAVNBEAgBSELDAELA0AgCEUNCiAELQAAIAl0IQMgBEEBaiEEIAhBAWshCCAJQQhqIgshCSALIBIgAyAKaiIKIBVxIg5BAnRqLQABIgNJDQALCyASIA5BAnRqIgEvAQIhEwJAIAEtAAAiEUHwAXEEQCAHKAKQRyEGIAMhCQwBCyAIIQYgBCEBAkAgCyIFIAMgEiAKQX8gAyARanRBf3MiFXEgA3YgE2oiEUECdGotAAEiCWpPBEAgCyEODAELA0AgBkUNCiABLQAAIAV0IQkgAUEBaiEBIAZBAWshBiAFQQhqIg4hBSADIBIgCSAKaiIKIBVxIAN2IBNqIhFBAnRqLQABIglqIA5LDQALIAEhBCAGIQgLIBIgEUECdGoiAS0AACERIAEvAQIhEyAHIAcoApBHIANqIgY2ApBHIA4gA2shCyAKIAN2IQoLIAcgBiAJajYCkEcgCyAJayEFIAogCXYhCiARQcAAcQRAIAdB0f4ANgIEIAxB7A42AhggBCEBIAghBiAHKAIEIQgMEgsgB0HL/gA2AgQgByARQQ9xIgM2ApQBIAcgE0H//wNxNgKQAQsCQCADRQRAIAQhASAIIQYMAQsgBSEJIAghBiAEIQsCQCADIAVNBEAgBCEBDAELA0AgBkUNCCAGQQFrIQYgCy0AACAJdCAKaiEKIAtBAWoiASELIAlBCGoiCSADSQ0ACwsgByAHKAKQRyADajYCkEcgByAHKAKQASAKQX8gA3RBf3NxajYCkAEgCSADayEFIAogA3YhCgsgB0HM/gA2AgQLIA9FDQACfyAHKAKQASIIIBYgD2siBEsEQAJAIAggBGsiCCAHKAIwTQ0AIAcoAoxHRQ0AIAdB0f4ANgIEIAxBuQw2AhggBygCBCEIDBILAn8CQAJ/IAcoAjQiBCAISQRAIAcoAjggBygCLCAIIARrIghragwBCyAHKAI4IAQgCGtqCyILIBAgDyAQaiAQa0EBaqwiISAPIAcoAowBIgQgCCAEIAhJGyIEIAQgD0sbIgitIiIgISAiVBsiIqciCWoiBEkgCyAQT3ENACALIBBNIAkgC2ogEEtxDQAgECALIAkQBxogBAwBCyAQIAsgCyAQayIEIARBH3UiBGogBHMiCRAHIAlqIQQgIiAJrSIkfSIjUEUEQCAJIAtqIQkDQAJAICMgJCAjICRUGyIiQiBUBEAgIiEhDAELICIiIUIgfSImQgWIQgF8QgODIiVQRQRAA0AgBCAJKQAANwAAIAQgCSkAGDcAGCAEIAkpABA3ABAgBCAJKQAINwAIICFCIH0hISAJQSBqIQkgBEEgaiEEICVCAX0iJUIAUg0ACwsgJkLgAFQNAANAIAQgCSkAADcAACAEIAkpABg3ABggBCAJKQAQNwAQIAQgCSkACDcACCAEIAkpADg3ADggBCAJKQAwNwAwIAQgCSkAKDcAKCAEIAkpACA3ACAgBCAJKQBYNwBYIAQgCSkAUDcAUCAEIAkpAEg3AEggBCAJKQBANwBAIAQgCSkAYDcAYCAEIAkpAGg3AGggBCAJKQBwNwBwIAQgCSkAeDcAeCAJQYABaiEJIARBgAFqIQQgIUKAAX0iIUIfVg0ACwsgIUIQWgRAIAQgCSkAADcAACAEIAkpAAg3AAggIUIQfSEhIAlBEGohCSAEQRBqIQQLICFCCFoEQCAEIAkpAAA3AAAgIUIIfSEhIAlBCGohCSAEQQhqIQQLICFCBFoEQCAEIAkoAAA2AAAgIUIEfSEhIAlBBGohCSAEQQRqIQQLICFCAloEQCAEIAkvAAA7AAAgIUICfSEhIAlBAmohCSAEQQJqIQQLICMgIn0hIyAhUEUEQCAEIAktAAA6AAAgCUEBaiEJIARBAWohBAsgI0IAUg0ACwsgBAsMAQsgECAIIA8gBygCjAEiBCAEIA9LGyIIIA9ByIABKAIAEQQACyEQIAcgBygCjAEgCGsiBDYCjAEgDyAIayEPIAQNAiAHQcj+ADYCBCAHKAIEIQgMDwsgDSEJCyAJIQQMDgsgBygCBCEIDAwLIAEgBmohASAFIAZBA3RqIQUMCgsgBCAIaiEBIAUgCEEDdGohBQwJCyAEIAhqIQEgCyAIQQN0aiEFDAgLIAEgBmohASAFIAZBA3RqIQUMBwsgBCAIaiEBIAUgCEEDdGohBQwGCyAEIAhqIQEgAyAIQQN0aiEFDAULIAEgBmohASAFIAZBA3RqIQUMBAsgB0HR/gA2AgQgDEG8CTYCGCAHKAIEIQgMBAsgBCEBIAghBiAHKAIEIQgMAwtBACEGIAQhBSANIQQMAwsCQAJAIAhFBEAgCiEJDAELIAcoAhRFBEAgCiEJDAELAkAgBUEfSw0AIAZFDQMgBUEIaiEJIAFBAWohBCAGQQFrIQsgAS0AACAFdCAKaiEKIAVBGE8EQCAEIQEgCyEGIAkhBQwBCyALRQRAIAQhAUEAIQYgCSEFIA0hBAwGCyAFQRBqIQsgAUECaiEEIAZBAmshAyABLQABIAl0IApqIQogBUEPSwRAIAQhASADIQYgCyEFDAELIANFBEAgBCEBQQAhBiALIQUgDSEEDAYLIAVBGGohCSABQQNqIQQgBkEDayEDIAEtAAIgC3QgCmohCiAFQQdLBEAgBCEBIAMhBiAJIQUMAQsgA0UEQCAEIQFBACEGIAkhBSANIQQMBgsgBUEgaiEFIAZBBGshBiABLQADIAl0IApqIQogAUEEaiEBC0EAIQkgCEEEcQRAIAogBygCIEcNAgtBACEFCyAHQdD+ADYCBEEBIQQgCSEKDAMLIAdB0f4ANgIEIAxBjQw2AhggBygCBCEIDAELC0EAIQYgDSEECyAMIA82AhAgDCAQNgIMIAwgBjYCBCAMIAE2AgAgByAFNgKIASAHIAo2AoQBAkAgBygCLA0AIA8gFkYNAiAHKAIEIgFB0P4ASw0CIAFBzv4ASQ0ACwJ/IBYgD2shCiAHKAIMQQRxIQkCQAJAAkAgDCgCHCIDKAI4Ig1FBEBBASEIIAMgAygCACIBKAIgIAEoAiggAygCmEdBASADKAIodGpBARAoIg02AjggDUUNAQsgAygCLCIGRQRAIANCADcDMCADQQEgAygCKHQiBjYCLAsgBiAKTQRAAkAgCQRAAkAgBiAKTw0AIAogBmshBSAQIAprIQEgDCgCHCIGKAIUBEAgBkFAayABIAVBAEHYgAEoAgARCAAMAQsgBiAGKAIcIAEgBUHAgAEoAgARAAAiATYCHCAMIAE2AjALIAMoAiwiDUUNASAQIA1rIQUgAygCOCEBIAwoAhwiBigCFARAIAZBQGsgASAFIA1B3IABKAIAEQgADAILIAYgBigCHCABIAUgDUHEgAEoAgARBAAiATYCHCAMIAE2AjAMAQsgDSAQIAZrIAYQBxoLIANBADYCNCADIAMoAiw2AjBBAAwECyAKIAYgAygCNCIFayIBIAEgCksbIQsgECAKayEGIAUgDWohBQJAIAkEQAJAIAtFDQAgDCgCHCIBKAIUBEAgAUFAayAFIAYgC0HcgAEoAgARCAAMAQsgASABKAIcIAUgBiALQcSAASgCABEEACIBNgIcIAwgATYCMAsgCiALayIFRQ0BIBAgBWshBiADKAI4IQEgDCgCHCINKAIUBEAgDUFAayABIAYgBUHcgAEoAgARCAAMBQsgDSANKAIcIAEgBiAFQcSAASgCABEEACIBNgIcIAwgATYCMAwECyAFIAYgCxAHGiAKIAtrIgUNAgtBACEIIANBACADKAI0IAtqIgUgBSADKAIsIgFGGzYCNCABIAMoAjAiAU0NACADIAEgC2o2AjALIAgMAgsgAygCOCAQIAVrIAUQBxoLIAMgBTYCNCADIAMoAiw2AjBBAAtFBEAgDCgCECEPIAwoAgQhFyAHKAKIAQwDCyAHQdL+ADYCBAtBfCEXDAILIAYhFyAFCyEFIAwgICAXayIBIAwoAghqNgIIIAwgFiAPayIGIAwoAhRqNgIUIAcgBygCICAGajYCICAMIAcoAghBAEdBBnQgBWogBygCBCIFQb/+AEZBB3RqQYACIAVBwv4ARkEIdCAFQcf+AEYbajYCLCAEIARBeyAEGyABIAZyGyEXCyAUQRBqJAAgFwshASACIAIpAwAgADUCIH03AwACQAJAAkACQCABQQVqDgcBAgICAgMAAgtBAQ8LIAAoAhQNAEEDDwsgACgCACIABEAgACABNgIEIABBDTYCAAtBAiEBCyABCwkAIABBAToADAtEAAJAIAJC/////w9YBEAgACgCFEUNAQsgACgCACIABEAgAEEANgIEIABBEjYCAAtBAA8LIAAgATYCECAAIAI+AhRBAQu5AQEEfyAAQRBqIQECfyAALQAEBEAgARCEAQwBC0F+IQMCQCABRQ0AIAEoAiBFDQAgASgCJCIERQ0AIAEoAhwiAkUNACACKAIAIAFHDQAgAigCBEG0/gBrQR9LDQAgAigCOCIDBEAgBCABKAIoIAMQHiABKAIkIQQgASgCHCECCyAEIAEoAiggAhAeQQAhAyABQQA2AhwLIAMLIgEEQCAAKAIAIgAEQCAAIAE2AgQgAEENNgIACwsgAUUL0gwBBn8gAEIANwIQIABCADcCHCAAQRBqIQICfyAALQAEBEAgACgCCCEBQesMLQAAQTFGBH8Cf0F+IQMCQCACRQ0AIAJBADYCGCACKAIgIgRFBEAgAkEANgIoIAJBJzYCIEEnIQQLIAIoAiRFBEAgAkEoNgIkC0EGIAEgAUF/RhsiBUEASA0AIAVBCUoNAEF8IQMgBCACKAIoQQFB0C4QKCIBRQ0AIAIgATYCHCABIAI2AgAgAUEPNgI0IAFCgICAgKAFNwIcIAFBADYCFCABQYCAAjYCMCABQf//ATYCOCABIAIoAiAgAigCKEGAgAJBAhAoNgJIIAEgAigCICACKAIoIAEoAjBBAhAoIgM2AkwgA0EAIAEoAjBBAXQQGSACKAIgIAIoAihBgIAEQQIQKCEDIAFBgIACNgLoLSABQQA2AkAgASADNgJQIAEgAigCICACKAIoQYCAAkEEECgiAzYCBCABIAEoAugtIgRBAnQ2AgwCQAJAIAEoAkhFDQAgASgCTEUNACABKAJQRQ0AIAMNAQsgAUGaBTYCICACQejAACgCADYCGCACEIQBGkF8DAILIAFBADYCjAEgASAFNgKIASABQgA3AyggASADIARqNgLsLSABIARBA2xBA2s2AvQtQX4hAwJAIAJFDQAgAigCIEUNACACKAIkRQ0AIAIoAhwiAUUNACABKAIAIAJHDQACQAJAIAEoAiAiBEE5aw45AQICAgICAgICAgICAQICAgECAgICAgICAgICAgICAgICAgECAgICAgICAgICAgECAgICAgICAgIBAAsgBEGaBUYNACAEQSpHDQELIAJBAjYCLCACQQA2AgggAkIANwIUIAFBADYCECABIAEoAgQ2AgggASgCFCIDQX9MBEAgAUEAIANrIgM2AhQLIAFBOUEqIANBAkYbNgIgIAIgA0ECRgR/IAFBoAFqQeSAASgCABEBAAVBAQs2AjAgAUF+NgIkIAFBADYCoC4gAUIANwOYLiABQYgXakGg0wA2AgAgASABQcwVajYCgBcgAUH8FmpBjNMANgIAIAEgAUHYE2o2AvQWIAFB8BZqQfjSADYCACABIAFB5AFqNgLoFiABEIgBQQAhAwsgAw0AIAIoAhwiAiACKAIwQQF0NgJEQQAhAyACKAJQQQBBgIAIEBkgAiACKAKIASIEQQxsIgFBtNgAai8BADYClAEgAiABQbDYAGovAQA2ApABIAIgAUGy2ABqLwEANgJ4IAIgAUG22ABqLwEANgJ0QfiAASgCACEFQeyAASgCACEGQYCBASgCACEBIAJCADcCbCACQgA3AmQgAkEANgI8IAJBADYChC4gAkIANwJUIAJBKSABIARBCUYiARs2AnwgAkEqIAYgARs2AoABIAJBKyAFIAEbNgKEAQsgAwsFQXoLDAELAn9BekHrDC0AAEExRw0AGkF+IAJFDQAaIAJBADYCGCACKAIgIgNFBEAgAkEANgIoIAJBJzYCIEEnIQMLIAIoAiRFBEAgAkEoNgIkC0F8IAMgAigCKEEBQaDHABAoIgRFDQAaIAIgBDYCHCAEQQA2AjggBCACNgIAIARBtP4ANgIEIARBzIABKAIAEQkANgKYR0F+IQMCQCACRQ0AIAIoAiBFDQAgAigCJCIFRQ0AIAIoAhwiAUUNACABKAIAIAJHDQAgASgCBEG0/gBrQR9LDQACQAJAIAEoAjgiBgRAIAEoAihBD0cNAQsgAUEPNgIoIAFBADYCDAwBCyAFIAIoAiggBhAeIAFBADYCOCACKAIgIQUgAUEPNgIoIAFBADYCDCAFRQ0BCyACKAIkRQ0AIAIoAhwiAUUNACABKAIAIAJHDQAgASgCBEG0/gBrQR9LDQBBACEDIAFBADYCNCABQgA3AiwgAUEANgIgIAJBADYCCCACQgA3AhQgASgCDCIFBEAgAiAFQQFxNgIwCyABQrT+ADcCBCABQgA3AoQBIAFBADYCJCABQoCAgoAQNwMYIAFCgICAgHA3AxAgAUKBgICAcDcCjEcgASABQfwKaiIFNgK4ASABIAU2ApwBIAEgBTYCmAELQQAgA0UNABogAigCJCACKAIoIAQQHiACQQA2AhwgAwsLIgIEQCAAKAIAIgAEQCAAIAI2AgQgAEENNgIACwsgAkULKQEBfyAALQAERQRAQQAPC0ECIQEgACgCCCIAQQNOBH8gAEEHSgVBAgsLBgAgABAGC2MAQcgAEAkiAEUEQEGEhAEoAgAhASACBEAgAiABNgIEIAJBATYCAAsgAA8LIABBADoADCAAQQE6AAQgACACNgIAIABBADYCOCAAQgA3AzAgACABQQkgAUEBa0EJSRs2AgggAAukCgIIfwF+QfCAAUH0gAEgACgCdEGBCEkbIQYCQANAAkACfwJAIAAoAjxBhQJLDQAgABAvAkAgACgCPCICQYUCSw0AIAENAEEADwsgAkUNAiACQQRPDQBBAAwBCyAAIAAoAmggACgChAERAgALIQMgACAAKAJsOwFgQQIhAgJAIAA1AmggA619IgpCAVMNACAKIAAoAjBBhgJrrVUNACAAKAJwIAAoAnhPDQAgA0UNACAAIAMgBigCABECACICQQVLDQBBAiACIAAoAowBQQFGGyECCwJAIAAoAnAiA0EDSQ0AIAIgA0sNACAAIAAoAvAtIgJBAWo2AvAtIAAoAjwhBCACIAAoAuwtaiAAKAJoIgcgAC8BYEF/c2oiAjoAACAAIAAoAvAtIgVBAWo2AvAtIAUgACgC7C1qIAJBCHY6AAAgACAAKALwLSIFQQFqNgLwLSAFIAAoAuwtaiADQQNrOgAAIAAgACgCgC5BAWo2AoAuIANB/c4Aai0AAEECdCAAakHoCWoiAyADLwEAQQFqOwEAIAAgAkEBayICIAJBB3ZBgAJqIAJBgAJJG0GAywBqLQAAQQJ0akHYE2oiAiACLwEAQQFqOwEAIAAgACgCcCIFQQFrIgM2AnAgACAAKAI8IANrNgI8IAAoAvQtIQggACgC8C0hCSAEIAdqQQNrIgQgACgCaCICSwRAIAAgAkEBaiAEIAJrIgIgBUECayIEIAIgBEkbIAAoAoABEQUAIAAoAmghAgsgAEEANgJkIABBADYCcCAAIAIgA2oiBDYCaCAIIAlHDQJBACECIAAgACgCWCIDQQBOBH8gACgCSCADagVBAAsgBCADa0EAEA8gACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQDQIMAwsgACgCZARAIAAoAmggACgCSGpBAWstAAAhAyAAIAAoAvAtIgRBAWo2AvAtIAQgACgC7C1qQQA6AAAgACAAKALwLSIEQQFqNgLwLSAEIAAoAuwtakEAOgAAIAAgACgC8C0iBEEBajYC8C0gBCAAKALsLWogAzoAACAAIANBAnRqIgMgAy8B5AFBAWo7AeQBIAAoAvAtIAAoAvQtRgRAIAAgACgCWCIDQQBOBH8gACgCSCADagVBAAsgACgCaCADa0EAEA8gACAAKAJoNgJYIAAoAgAQCgsgACACNgJwIAAgACgCaEEBajYCaCAAIAAoAjxBAWs2AjwgACgCACgCEA0CQQAPBSAAQQE2AmQgACACNgJwIAAgACgCaEEBajYCaCAAIAAoAjxBAWs2AjwMAgsACwsgACgCZARAIAAoAmggACgCSGpBAWstAAAhAiAAIAAoAvAtIgNBAWo2AvAtIAMgACgC7C1qQQA6AAAgACAAKALwLSIDQQFqNgLwLSADIAAoAuwtakEAOgAAIAAgACgC8C0iA0EBajYC8C0gAyAAKALsLWogAjoAACAAIAJBAnRqIgIgAi8B5AFBAWo7AeQBIAAoAvAtIAAoAvQtRhogAEEANgJkCyAAIAAoAmgiA0ECIANBAkkbNgKELiABQQRGBEAgACAAKAJYIgFBAE4EfyAAKAJIIAFqBUEACyADIAFrQQEQDyAAIAAoAmg2AlggACgCABAKQQNBAiAAKAIAKAIQGw8LIAAoAvAtBEBBACECIAAgACgCWCIBQQBOBH8gACgCSCABagVBAAsgAyABa0EAEA8gACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQRQ0BC0EBIQILIAIL2BACEH8BfiAAKAKIAUEFSCEOA0ACQAJ/AkACQAJAAn8CQAJAIAAoAjxBhQJNBEAgABAvIAAoAjwiA0GFAksNASABDQFBAA8LIA4NASAIIQMgBSEHIAohDSAGQf//A3FFDQEMAwsgA0UNA0EAIANBBEkNARoLIAAgACgCaEH4gAEoAgARAgALIQZBASECQQAhDSAAKAJoIgOtIAatfSISQgFTDQIgEiAAKAIwQYYCa61VDQIgBkUNAiAAIAZB8IABKAIAEQIAIgZBASAGQfz/A3EbQQEgACgCbCINQf//A3EgA0H//wNxSRshBiADIQcLAkAgACgCPCIEIAZB//8DcSICQQRqTQ0AIAZB//8DcUEDTQRAQQEgBkEBa0H//wNxIglFDQQaIANB//8DcSIEIAdBAWpB//8DcSIDSw0BIAAgAyAJIAQgA2tBAWogAyAJaiAESxtB7IABKAIAEQUADAELAkAgACgCeEEEdCACSQ0AIARBBEkNACAGQQFrQf//A3EiDCAHQQFqQf//A3EiBGohCSAEIANB//8DcSIDTwRAQeyAASgCACELIAMgCUkEQCAAIAQgDCALEQUADAMLIAAgBCADIARrQQFqIAsRBQAMAgsgAyAJTw0BIAAgAyAJIANrQeyAASgCABEFAAwBCyAGIAdqQf//A3EiA0UNACAAIANBAWtB+IABKAIAEQIAGgsgBgwCCyAAIAAoAmgiBUECIAVBAkkbNgKELiABQQRGBEBBACEDIAAgACgCWCIBQQBOBH8gACgCSCABagVBAAsgBSABa0EBEA8gACAAKAJoNgJYIAAoAgAQCkEDQQIgACgCACgCEBsPCyAAKALwLQRAQQAhAkEAIQMgACAAKAJYIgFBAE4EfyAAKAJIIAFqBUEACyAFIAFrQQAQDyAAIAAoAmg2AlggACgCABAKIAAoAgAoAhBFDQMLQQEhAgwCCyADIQdBAQshBEEAIQYCQCAODQAgACgCPEGHAkkNACACIAdB//8DcSIQaiIDIAAoAkRBhgJrTw0AIAAgAzYCaEEAIQogACADQfiAASgCABECACEFAn8CQCAAKAJoIgitIAWtfSISQgFTDQAgEiAAKAIwQYYCa61VDQAgBUUNACAAIAVB8IABKAIAEQIAIQYgAC8BbCIKIAhB//8DcSIFTw0AIAZB//8DcSIDQQRJDQAgCCAEQf//A3FBAkkNARogCCACIApBAWpLDQEaIAggAiAFQQFqSw0BGiAIIAAoAkgiCSACa0EBaiICIApqLQAAIAIgBWotAABHDQEaIAggCUEBayICIApqIgwtAAAgAiAFaiIPLQAARw0BGiAIIAUgCCAAKAIwQYYCayICa0H//wNxQQAgAiAFSRsiEU0NARogCCADQf8BSw0BGiAGIQUgCCECIAQhAyAIIAoiCUECSQ0BGgNAAkAgA0EBayEDIAVBAWohCyAJQQFrIQkgAkEBayECIAxBAWsiDC0AACAPQQFrIg8tAABHDQAgA0H//wNxRQ0AIBEgAkH//wNxTw0AIAVB//8DcUH+AUsNACALIQUgCUH//wNxQQFLDQELCyAIIANB//8DcUEBSw0BGiAIIAtB//8DcUECRg0BGiAIQQFqIQggAyEEIAshBiAJIQogAgwBC0EBIQYgCAshBSAAIBA2AmgLAn8gBEH//wNxIgNBA00EQCAEQf//A3EiA0UNAyAAKAJIIAdB//8DcWotAAAhBCAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qQQA6AAAgACAAKALwLSICQQFqNgLwLSACIAAoAuwtakEAOgAAIAAgACgC8C0iAkEBajYC8C0gAiAAKALsLWogBDoAACAAIARBAnRqIgRB5AFqIAQvAeQBQQFqOwEAIAAgACgCPEEBazYCPCAAKALwLSICIAAoAvQtRiIEIANBAUYNARogACgCSCAHQQFqQf//A3FqLQAAIQkgACACQQFqNgLwLSAAKALsLSACakEAOgAAIAAgACgC8C0iAkEBajYC8C0gAiAAKALsLWpBADoAACAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qIAk6AAAgACAJQQJ0aiICQeQBaiACLwHkAUEBajsBACAAIAAoAjxBAWs2AjwgBCAAKALwLSICIAAoAvQtRmoiBCADQQJGDQEaIAAoAkggB0ECakH//wNxai0AACEHIAAgAkEBajYC8C0gACgC7C0gAmpBADoAACAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qQQA6AAAgACAAKALwLSICQQFqNgLwLSACIAAoAuwtaiAHOgAAIAAgB0ECdGoiB0HkAWogBy8B5AFBAWo7AQAgACAAKAI8QQFrNgI8IAQgACgC8C0gACgC9C1GagwBCyAAIAAoAvAtIgJBAWo2AvAtIAIgACgC7C1qIAdB//8DcSANQf//A3FrIgc6AAAgACAAKALwLSICQQFqNgLwLSACIAAoAuwtaiAHQQh2OgAAIAAgACgC8C0iAkEBajYC8C0gAiAAKALsLWogBEEDazoAACAAIAAoAoAuQQFqNgKALiADQf3OAGotAABBAnQgAGpB6AlqIgQgBC8BAEEBajsBACAAIAdBAWsiBCAEQQd2QYACaiAEQYACSRtBgMsAai0AAEECdGpB2BNqIgQgBC8BAEEBajsBACAAIAAoAjwgA2s2AjwgACgC8C0gACgC9C1GCyEEIAAgACgCaCADaiIHNgJoIARFDQFBACECQQAhBCAAIAAoAlgiA0EATgR/IAAoAkggA2oFQQALIAcgA2tBABAPIAAgACgCaDYCWCAAKAIAEAogACgCACgCEA0BCwsgAgu0BwIEfwF+AkADQAJAAkACQAJAIAAoAjxBhQJNBEAgABAvAkAgACgCPCICQYUCSw0AIAENAEEADwsgAkUNBCACQQRJDQELIAAgACgCaEH4gAEoAgARAgAhAiAANQJoIAKtfSIGQgFTDQAgBiAAKAIwQYYCa61VDQAgAkUNACAAIAJB8IABKAIAEQIAIgJBBEkNACAAIAAoAvAtIgNBAWo2AvAtIAMgACgC7C1qIAAoAmggACgCbGsiAzoAACAAIAAoAvAtIgRBAWo2AvAtIAQgACgC7C1qIANBCHY6AAAgACAAKALwLSIEQQFqNgLwLSAEIAAoAuwtaiACQQNrOgAAIAAgACgCgC5BAWo2AoAuIAJB/c4Aai0AAEECdCAAakHoCWoiBCAELwEAQQFqOwEAIAAgA0EBayIDIANBB3ZBgAJqIANBgAJJG0GAywBqLQAAQQJ0akHYE2oiAyADLwEAQQFqOwEAIAAgACgCPCACayIFNgI8IAAoAvQtIQMgACgC8C0hBCAAKAJ4IAJPQQAgBUEDSxsNASAAIAAoAmggAmoiAjYCaCAAIAJBAWtB+IABKAIAEQIAGiADIARHDQQMAgsgACgCSCAAKAJoai0AACECIAAgACgC8C0iA0EBajYC8C0gAyAAKALsLWpBADoAACAAIAAoAvAtIgNBAWo2AvAtIAMgACgC7C1qQQA6AAAgACAAKALwLSIDQQFqNgLwLSADIAAoAuwtaiACOgAAIAAgAkECdGoiAkHkAWogAi8B5AFBAWo7AQAgACAAKAI8QQFrNgI8IAAgACgCaEEBajYCaCAAKALwLSAAKAL0LUcNAwwBCyAAIAAoAmhBAWoiBTYCaCAAIAUgAkEBayICQeyAASgCABEFACAAIAAoAmggAmo2AmggAyAERw0CC0EAIQNBACECIAAgACgCWCIEQQBOBH8gACgCSCAEagVBAAsgACgCaCAEa0EAEA8gACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQDQEMAgsLIAAgACgCaCIEQQIgBEECSRs2AoQuIAFBBEYEQEEAIQIgACAAKAJYIgFBAE4EfyAAKAJIIAFqBUEACyAEIAFrQQEQDyAAIAAoAmg2AlggACgCABAKQQNBAiAAKAIAKAIQGw8LIAAoAvAtBEBBACEDQQAhAiAAIAAoAlgiAUEATgR/IAAoAkggAWoFQQALIAQgAWtBABAPIAAgACgCaDYCWCAAKAIAEAogACgCACgCEEUNAQtBASEDCyADC80JAgl/An4gAUEERiEGIAAoAiwhAgJAAkACQCABQQRGBEAgAkECRg0CIAIEQCAAQQAQUCAAQQA2AiwgACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQRQ0ECyAAIAYQTyAAQQI2AiwMAQsgAg0BIAAoAjxFDQEgACAGEE8gAEEBNgIsCyAAIAAoAmg2AlgLQQJBASABQQRGGyEKA0ACQCAAKAIMIAAoAhBBCGpLDQAgACgCABAKIAAoAgAiAigCEA0AQQAhAyABQQRHDQIgAigCBA0CIAAoAqAuDQIgACgCLEVBAXQPCwJAAkAgACgCPEGFAk0EQCAAEC8CQCAAKAI8IgNBhQJLDQAgAQ0AQQAPCyADRQ0CIAAoAiwEfyADBSAAIAYQTyAAIAo2AiwgACAAKAJoNgJYIAAoAjwLQQRJDQELIAAgACgCaEH4gAEoAgARAgAhBCAAKAJoIgKtIAStfSILQgFTDQAgCyAAKAIwQYYCa61VDQAgAiAAKAJIIgJqIgMvAAAgAiAEaiICLwAARw0AIANBAmogAkECakHQgAEoAgARAgBBAmoiA0EESQ0AIAAoAjwiAiADIAIgA0kbIgJBggIgAkGCAkkbIgdB/c4Aai0AACICQQJ0IgRBhMkAajMBACEMIARBhskAai8BACEDIAJBCGtBE00EQCAHQQNrIARBgNEAaigCAGutIAOthiAMhCEMIARBsNYAaigCACADaiEDCyAAKAKgLiEFIAMgC6dBAWsiCCAIQQd2QYACaiAIQYACSRtBgMsAai0AACICQQJ0IglBgsoAai8BAGohBCAJQYDKAGozAQAgA62GIAyEIQsgACkDmC4hDAJAIAUgAkEESQR/IAQFIAggCUGA0gBqKAIAa60gBK2GIAuEIQsgCUGw1wBqKAIAIARqCyICaiIDQT9NBEAgCyAFrYYgDIQhCwwBCyAFQcAARgRAIAAoAgQgACgCEGogDDcAACAAIAAoAhBBCGo2AhAgAiEDDAELIAAoAgQgACgCEGogCyAFrYYgDIQ3AAAgACAAKAIQQQhqNgIQIANBQGohAyALQcAAIAVrrYghCwsgACALNwOYLiAAIAM2AqAuIAAgACgCPCAHazYCPCAAIAAoAmggB2o2AmgMAgsgACgCSCAAKAJoai0AAEECdCICQYDBAGozAQAhCyAAKQOYLiEMAkAgACgCoC4iBCACQYLBAGovAQAiAmoiA0E/TQRAIAsgBK2GIAyEIQsMAQsgBEHAAEYEQCAAKAIEIAAoAhBqIAw3AAAgACAAKAIQQQhqNgIQIAIhAwwBCyAAKAIEIAAoAhBqIAsgBK2GIAyENwAAIAAgACgCEEEIajYCECADQUBqIQMgC0HAACAEa62IIQsLIAAgCzcDmC4gACADNgKgLiAAIAAoAmhBAWo2AmggACAAKAI8QQFrNgI8DAELCyAAIAAoAmgiAkECIAJBAkkbNgKELiAAKAIsIQIgAUEERgRAAkAgAkUNACAAQQEQUCAAQQA2AiwgACAAKAJoNgJYIAAoAgAQCiAAKAIAKAIQDQBBAg8LQQMPCyACBEBBACEDIABBABBQIABBADYCLCAAIAAoAmg2AlggACgCABAKIAAoAgAoAhBFDQELQQEhAwsgAwucAQEFfyACQQFOBEAgAiAAKAJIIAFqIgNqQQJqIQQgA0ECaiECIAAoAlQhAyAAKAJQIQUDQCAAIAItAAAgA0EFdEHg/wFxcyIDNgJUIAUgA0EBdGoiBi8BACIHIAFB//8DcUcEQCAAKAJMIAEgACgCOHFB//8DcUEBdGogBzsBACAGIAE7AQALIAFBAWohASACQQFqIgIgBEkNAAsLC1sBAn8gACAAKAJIIAFqLQACIAAoAlRBBXRB4P8BcXMiAjYCVCABIAAoAlAgAkEBdGoiAy8BACICRwRAIAAoAkwgACgCOCABcUEBdGogAjsBACADIAE7AQALIAILEwAgAUEFdEHg/wFxIAJB/wFxcwsGACABEAYLLwAjAEEQayIAJAAgAEEMaiABIAJsEIwBIQEgACgCDCECIABBEGokAEEAIAIgARsLjAoCAX4CfyMAQfAAayIGJAACQAJAAkACQAJAAkACQAJAIAQODwABBwIEBQYGBgYGBgYGAwYLQn8hBQJAIAAgBkHkAGpCDBARIgNCf1cEQCABBEAgASAAKAIMNgIAIAEgACgCEDYCBAsMAQsCQCADQgxSBEAgAQRAIAFBADYCBCABQRE2AgALDAELIAEoAhQhBEEAIQJCASEFA0AgBkHkAGogAmoiAiACLQAAIARB/f8DcSICQQJyIAJBA3NsQQh2cyICOgAAIAYgAjoAKCABAn8gASgCDEF/cyECQQAgBkEoaiIERQ0AGiACIARBAUHUgAEoAgARAAALQX9zIgI2AgwgASABKAIQIAJB/wFxakGFiKLAAGxBAWoiAjYCECAGIAJBGHY6ACggAQJ/IAEoAhRBf3MhAkEAIAZBKGoiBEUNABogAiAEQQFB1IABKAIAEQAAC0F/cyIENgIUIAVCDFIEQCAFpyECIAVCAXwhBQwBCwtCACEFIAAgBkEoahAhQQBIDQEgBigCUCEAIwBBEGsiAiQAIAIgADYCDCAGAn8gAkEMahCNASIARQRAIAZBITsBJEEADAELAn8gACgCFCIEQdAATgRAIARBCXQMAQsgAEHQADYCFEGAwAILIQQgBiAAKAIMIAQgACgCEEEFdGpqQaDAAWo7ASQgACgCBEEFdCAAKAIIQQt0aiAAKAIAQQF2ags7ASYgAkEQaiQAIAYtAG8iACAGLQBXRg0BIAYtACcgAEYNASABBEAgAUEANgIEIAFBGzYCAAsLQn8hBQsgBkHwAGokACAFDwtCfyEFIAAgAiADEBEiA0J/VwRAIAEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwGCyMAQRBrIgAkAAJAIANQDQAgASgCFCEEIAJFBEBCASEFA0AgACACIAdqLQAAIARB/f8DcSIEQQJyIARBA3NsQQh2czoADyABAn8gASgCDEF/cyEEQQAgAEEPaiIHRQ0AGiAEIAdBAUHUgAEoAgARAAALQX9zIgQ2AgwgASABKAIQIARB/wFxakGFiKLAAGxBAWoiBDYCECAAIARBGHY6AA8gAQJ/IAEoAhRBf3MhBEEAIABBD2oiB0UNABogBCAHQQFB1IABKAIAEQAAC0F/cyIENgIUIAMgBVENAiAFpyEHIAVCAXwhBQwACwALQgEhBQNAIAAgAiAHai0AACAEQf3/A3EiBEECciAEQQNzbEEIdnMiBDoADyACIAdqIAQ6AAAgAQJ/IAEoAgxBf3MhBEEAIABBD2oiB0UNABogBCAHQQFB1IABKAIAEQAAC0F/cyIENgIMIAEgASgCECAEQf8BcWpBhYiiwABsQQFqIgQ2AhAgACAEQRh2OgAPIAECfyABKAIUQX9zIQRBACAAQQ9qIgdFDQAaIAQgB0EBQdSAASgCABEAAAtBf3MiBDYCFCADIAVRDQEgBachByAFQgF8IQUMAAsACyAAQRBqJAAgAyEFDAULIAJBADsBMiACIAIpAwAiA0KAAYQ3AwAgA0IIg1ANBCACIAIpAyBCDH03AyAMBAsgBkKFgICAcDcDECAGQoOAgIDAADcDCCAGQoGAgIAgNwMAQQAgBhAkIQUMAwsgA0IIWgR+IAIgASgCADYCACACIAEoAgQ2AgRCCAVCfwshBQwCCyABEAYMAQsgAQRAIAFBADYCBCABQRI2AgALQn8hBQsgBkHwAGokACAFC60DAgJ/An4jAEEQayIGJAACQAJAAkAgBEUNACABRQ0AIAJBAUYNAQtBACEDIABBCGoiAARAIABBADYCBCAAQRI2AgALDAELIANBAXEEQEEAIQMgAEEIaiIABEAgAEEANgIEIABBGDYCAAsMAQtBGBAJIgVFBEBBACEDIABBCGoiAARAIABBADYCBCAAQQ42AgALDAELIAVBADYCCCAFQgA3AgAgBUGQ8dmiAzYCFCAFQvis0ZGR8dmiIzcCDAJAIAQQIiICRQ0AIAKtIQhBACEDQYfTru5+IQJCASEHA0AgBiADIARqLQAAOgAPIAUgBkEPaiIDBH8gAiADQQFB1IABKAIAEQAABUEAC0F/cyICNgIMIAUgBSgCECACQf8BcWpBhYiiwABsQQFqIgI2AhAgBiACQRh2OgAPIAUCfyAFKAIUQX9zIQJBACAGQQ9qIgNFDQAaIAIgA0EBQdSAASgCABEAAAtBf3M2AhQgByAIUQ0BIAUoAgxBf3MhAiAHpyEDIAdCAXwhBwwACwALIAAgAUElIAUQQiIDDQAgBRAGQQAhAwsgBkEQaiQAIAMLnRoCBn4FfyMAQdAAayILJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADDhQFBhULAwQJDgACCBAKDw0HEQERDBELAkBByAAQCSIBBEAgAUIANwMAIAFCADcDMCABQQA2AiggAUIANwMgIAFCADcDGCABQgA3AxAgAUIANwMIIAFCADcDOCABQQgQCSIDNgIEIAMNASABEAYgAARAIABBADYCBCAAQQ42AgALCyAAQQA2AhQMFAsgA0IANwMAIAAgATYCFCABQUBrQgA3AwAgAUIANwM4DBQLAkACQCACUARAQcgAEAkiA0UNFCADQgA3AwAgA0IANwMwIANBADYCKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwM4IANBCBAJIgE2AgQgAQ0BIAMQBiAABEAgAEEANgIEIABBDjYCAAsMFAsgAiAAKAIQIgEpAzBWBEAgAARAIABBADYCBCAAQRI2AgALDBQLIAEoAigEQCAABEAgAEEANgIEIABBHTYCAAsMFAsgASgCBCEDAkAgASkDCCIGQgF9IgdQDQADQAJAIAIgAyAHIAR9QgGIIAR8IgWnQQN0aikDAFQEQCAFQgF9IQcMAQsgBSAGUQRAIAYhBQwDCyADIAVCAXwiBKdBA3RqKQMAIAJWDQILIAQhBSAEIAdUDQALCwJAIAIgAyAFpyIKQQN0aikDAH0iBFBFBEAgASgCACIDIApBBHRqKQMIIQcMAQsgASgCACIDIAVCAX0iBadBBHRqKQMIIgchBAsgAiAHIAR9VARAIAAEQCAAQQA2AgQgAEEcNgIACwwUCyADIAVCAXwiBUEAIAAQiQEiA0UNEyADKAIAIAMoAggiCkEEdGpBCGsgBDcDACADKAIEIApBA3RqIAI3AwAgAyACNwMwIAMgASkDGCIGIAMpAwgiBEIBfSIHIAYgB1QbNwMYIAEgAzYCKCADIAE2AiggASAENwMgIAMgBTcDIAwBCyABQgA3AwALIAAgAzYCFCADIAQ3A0AgAyACNwM4QgAhBAwTCyAAKAIQIgEEQAJAIAEoAigiA0UEQCABKQMYIQIMAQsgA0EANgIoIAEoAihCADcDICABIAEpAxgiAiABKQMgIgUgAiAFVhsiAjcDGAsgASkDCCACVgRAA0AgASgCACACp0EEdGooAgAQBiACQgF8IgIgASkDCFQNAAsLIAEoAgAQBiABKAIEEAYgARAGCyAAKAIUIQEgAEEANgIUIAAgATYCEAwSCyACQghaBH4gASAAKAIANgIAIAEgACgCBDYCBEIIBUJ/CyEEDBELIAAoAhAiAQRAAkAgASgCKCIDRQRAIAEpAxghAgwBCyADQQA2AiggASgCKEIANwMgIAEgASkDGCICIAEpAyAiBSACIAVWGyICNwMYCyABKQMIIAJWBEADQCABKAIAIAKnQQR0aigCABAGIAJCAXwiAiABKQMIVA0ACwsgASgCABAGIAEoAgQQBiABEAYLIAAoAhQiAQRAAkAgASgCKCIDRQRAIAEpAxghAgwBCyADQQA2AiggASgCKEIANwMgIAEgASkDGCICIAEpAyAiBSACIAVWGyICNwMYCyABKQMIIAJWBEADQCABKAIAIAKnQQR0aigCABAGIAJCAXwiAiABKQMIVA0ACwsgASgCABAGIAEoAgQQBiABEAYLIAAQBgwQCyAAKAIQIgBCADcDOCAAQUBrQgA3AwAMDwsgAkJ/VwRAIAAEQCAAQQA2AgQgAEESNgIACwwOCyACIAAoAhAiAykDMCADKQM4IgZ9IgUgAiAFVBsiBVANDiABIAMpA0AiB6ciAEEEdCIBIAMoAgBqIgooAgAgBiADKAIEIABBA3RqKQMAfSICp2ogBSAKKQMIIAJ9IgYgBSAGVBsiBKcQByEKIAcgBCADKAIAIgAgAWopAwggAn1RrXwhAiAFIAZWBEADQCAKIASnaiAAIAKnQQR0IgFqIgAoAgAgBSAEfSIGIAApAwgiByAGIAdUGyIGpxAHGiACIAYgAygCACIAIAFqKQMIUa18IQIgBSAEIAZ8IgRWDQALCyADIAI3A0AgAyADKQM4IAR8NwM4DA4LQn8hBEHIABAJIgNFDQ0gA0IANwMAIANCADcDMCADQQA2AiggA0IANwMgIANCADcDGCADQgA3AxAgA0IANwMIIANCADcDOCADQQgQCSIBNgIEIAFFBEAgAxAGIAAEQCAAQQA2AgQgAEEONgIACwwOCyABQgA3AwAgACgCECIBBEACQCABKAIoIgpFBEAgASkDGCEEDAELIApBADYCKCABKAIoQgA3AyAgASABKQMYIgIgASkDICIFIAIgBVYbIgQ3AxgLIAEpAwggBFYEQANAIAEoAgAgBKdBBHRqKAIAEAYgBEIBfCIEIAEpAwhUDQALCyABKAIAEAYgASgCBBAGIAEQBgsgACADNgIQQgAhBAwNCyAAKAIUIgEEQAJAIAEoAigiA0UEQCABKQMYIQIMAQsgA0EANgIoIAEoAihCADcDICABIAEpAxgiAiABKQMgIgUgAiAFVhsiAjcDGAsgASkDCCACVgRAA0AgASgCACACp0EEdGooAgAQBiACQgF8IgIgASkDCFQNAAsLIAEoAgAQBiABKAIEEAYgARAGCyAAQQA2AhQMDAsgACgCECIDKQM4IAMpAzAgASACIAAQRCIHQgBTDQogAyAHNwM4AkAgAykDCCIGQgF9IgJQDQAgAygCBCEAA0ACQCAHIAAgAiAEfUIBiCAEfCIFp0EDdGopAwBUBEAgBUIBfSECDAELIAUgBlEEQCAGIQUMAwsgACAFQgF8IgSnQQN0aikDACAHVg0CCyAEIQUgAiAEVg0ACwsgAyAFNwNAQgAhBAwLCyAAKAIUIgMpAzggAykDMCABIAIgABBEIgdCAFMNCSADIAc3AzgCQCADKQMIIgZCAX0iAlANACADKAIEIQADQAJAIAcgACACIAR9QgGIIAR8IgWnQQN0aikDAFQEQCAFQgF9IQIMAQsgBSAGUQRAIAYhBQwDCyAAIAVCAXwiBKdBA3RqKQMAIAdWDQILIAQhBSACIARWDQALCyADIAU3A0BCACEEDAoLIAJCN1gEQCAABEAgAEEANgIEIABBEjYCAAsMCQsgARAqIAEgACgCDDYCKCAAKAIQKQMwIQIgAUEANgIwIAEgAjcDICABIAI3AxggAULcATcDAEI4IQQMCQsgACABKAIANgIMDAgLIAtBQGtBfzYCACALQouAgICwAjcDOCALQoyAgIDQATcDMCALQo+AgICgATcDKCALQpGAgICQATcDICALQoeAgICAATcDGCALQoWAgIDgADcDECALQoOAgIDAADcDCCALQoGAgIAgNwMAQQAgCxAkIQQMBwsgACgCECkDOCIEQn9VDQYgAARAIABBPTYCBCAAQR42AgALDAULIAAoAhQpAzgiBEJ/VQ0FIAAEQCAAQT02AgQgAEEeNgIACwwEC0J/IQQgAkJ/VwRAIAAEQCAAQQA2AgQgAEESNgIACwwFCyACIAAoAhQiAykDOCACfCIFQv//A3wiBFYEQCAABEAgAEEANgIEIABBEjYCAAsMBAsCQCAFIAMoAgQiCiADKQMIIganQQN0aikDACIHWA0AAkAgBCAHfUIQiCAGfCIIIAMpAxAiCVgNAEIQIAkgCVAbIQUDQCAFIgRCAYYhBSAEIAhUDQALIAQgCVQNACADKAIAIASnIgpBBHQQNCIMRQ0DIAMgDDYCACADKAIEIApBA3RBCGoQNCIKRQ0DIAMgBDcDECADIAo2AgQgAykDCCEGCyAGIAhaDQAgAygCACEMA0AgDCAGp0EEdGoiDUGAgAQQCSIONgIAIA5FBEAgAARAIABBADYCBCAAQQ42AgALDAYLIA1CgIAENwMIIAMgBkIBfCIFNwMIIAogBadBA3RqIAdCgIAEfCIHNwMAIAMpAwgiBiAIVA0ACwsgAykDQCEFIAMpAzghBwJAIAJQBEBCACEEDAELIAWnIgBBBHQiDCADKAIAaiINKAIAIAcgCiAAQQN0aikDAH0iBqdqIAEgAiANKQMIIAZ9IgcgAiAHVBsiBKcQBxogBSAEIAMoAgAiACAMaikDCCAGfVGtfCEFIAIgB1YEQANAIAAgBadBBHQiCmoiACgCACABIASnaiACIAR9IgYgACkDCCIHIAYgB1QbIganEAcaIAUgBiADKAIAIgAgCmopAwhRrXwhBSAEIAZ8IgQgAlQNAAsLIAMpAzghBwsgAyAFNwNAIAMgBCAHfCICNwM4IAIgAykDMFgNBCADIAI3AzAMBAsgAARAIABBADYCBCAAQRw2AgALDAILIAAEQCAAQQA2AgQgAEEONgIACyAABEAgAEEANgIEIABBDjYCAAsMAQsgAEEANgIUC0J/IQQLIAtB0ABqJAAgBAtIAQF/IABCADcCBCAAIAE2AgACQCABQQBIDQBBsBMoAgAgAUwNACABQQJ0QcATaigCAEEBRw0AQYSEASgCACECCyAAIAI2AgQLDgAgAkGx893xeWxBEHYLvgEAIwBBEGsiACQAIABBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAQRBqJAAgAkGx893xeWxBEHYLuQEBAX8jAEEQayIBJAAgAUEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAQjgEgAUEQaiQAC78BAQF/IwBBEGsiAiQAIAJBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAEQkAEhACACQRBqJAAgAAu+AQEBfyMAQRBrIgIkACACQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABEFohACACQRBqJAAgAAu+AQEBfyMAQRBrIgIkACACQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABEFshACACQRBqJAAgAAu9AQEBfyMAQRBrIgMkACADQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABIAIQjwEgA0EQaiQAC4UBAgR/AX4jAEEQayIBJAACQCAAKQMwUARADAELA0ACQCAAIAVBACABQQ9qIAFBCGoQZiIEQX9GDQAgAS0AD0EDRw0AIAIgASgCCEGAgICAf3FBgICAgHpGaiECC0F/IQMgBEF/Rg0BIAIhAyAFQgF8IgUgACkDMFQNAAsLIAFBEGokACADCwuMdSUAQYAIC7ELaW5zdWZmaWNpZW50IG1lbW9yeQBuZWVkIGRpY3Rpb25hcnkALSsgICAwWDB4AFppcCBhcmNoaXZlIGluY29uc2lzdGVudABJbnZhbGlkIGFyZ3VtZW50AGludmFsaWQgbGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRl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UgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkAvwEJAH8ACQB/AQkA/wAJAP8BCQAAAAcAQAAHACAABwBgAAcAEAAHAFAABwAwAAcAcAAHAAgABwBIAAcAKAAHAGgABwAYAAcAWAAHADgABwB4AAcABAAHAEQABwAkAAcAZAAHABQABwBUAAcANAAHAHQABwADAAgAgwAIAEMACADDAAgAIwAIAKMACABjAAgA4wAIAAAABQAQAAUACAAFABgABQAEAAUAFAAFAAwABQAcAAUAAgAFABIABQAKAAUAGgAFAAYABQAWAAUADgAFAB4ABQABAAUAEQAFAAkABQAZAAUABQAFABUABQANAAUAHQAFAAMABQATAAUACwAFABsABQAHAAUAFwAFAEGBywAL7AYBAgMEBAUFBgYGBgcHBwcICAgICAgICAkJCQkJCQkJCgoKCgoKCgoKCgoKCgoKCgsLCwsLCwsLCwsLCwsLCwsMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8AABAREhITExQUFBQVFRUVFhYWFhYWFhYXFxcXFxcXFxgYGBgYGBgYGBgYGBgYGBgZGRkZGRkZGRkZGRkZGRkZGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhobGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAAECAwQFBgcICAkJCgoLCwwMDAwNDQ0NDg4ODg8PDw8QEBAQEBAQEBEREREREREREhISEhISEhITExMTExMTExQUFBQUFBQUFBQUFBQUFBQVFRUVFRUVFRUVFRUVFRUVFhYWFhYWFhYWFhYWFhYWFhcXFxcXFxcXFxcXFxcXFxcYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhobGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbHAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAoAAAAMAAAADgAAABAAAAAUAAAAGAAAABwAAAAgAAAAKAAAADAAAAA4AAAAQAAAAFAAAABgAAAAcAAAAIAAAACgAAAAwAAAAOAAQYTSAAutAQEAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAAABAACAAQAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAgCAAAMApAAABAQAAHgEAAA8AAAAAJQAAQCoAAAAAAAAeAAAADwAAAAAAAADAKgAAAAAAABMAAAAHAEHg0wALTQEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAACAAAAAwAAAAMAAAADAAAAAwAAAAQAAAAEAAAABAAAAAQAAAAFAAAABQAAAAUAAAAFAEHQ1AALZQEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABgAAAAcAAAAHAAAACAAAAAgAAAAJAAAACQAAAAoAAAAKAAAACwAAAAsAAAAMAAAADAAAAA0AAAANAEGA1gALIwIAAAADAAAABwAAAAAAAAAQERIACAcJBgoFCwQMAw0CDgEPAEHQ1gALTQEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAACAAAAAwAAAAMAAAADAAAAAwAAAAQAAAAEAAAABAAAAAQAAAAFAAAABQAAAAUAAAAFAEHA1wALZQEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABgAAAAcAAAAHAAAACAAAAAgAAAAJAAAACQAAAAoAAAAKAAAACwAAAAsAAAAMAAAADAAAAA0AAAANAEG42AALASwAQcTYAAthLQAAAAQABAAIAAQALgAAAAQABgAQAAYALwAAAAQADAAgABgALwAAAAgAEAAgACAALwAAAAgAEACAAIAALwAAAAgAIACAAAABMAAAACAAgAACAQAEMAAAACAAAgECAQAQMABBsNkAC6UTAwAEAAUABgAHAAgACQAKAAsADQAPABEAEwAXABsAHwAjACsAMwA7AEMAUwBjAHMAgwCjAMMA4wACAQAAAAAAABAAEAAQABAAEAAQABAAEAARABEAEQARABIAEgASABIAEwATABMAEwAUABQAFAAUABUAFQAVABUAEABNAMoAAAABAAIAAwAEAAUABwAJAA0AEQAZACEAMQBBAGEAgQDBAAEBgQEBAgEDAQQBBgEIAQwBEAEYASABMAFAAWAAAAAAEAAQABAAEAARABEAEgASABMAEwAUABQAFQAVABYAFgAXABcAGAAYABkAGQAaABoAGwAbABwAHAAdAB0AQABAAGAHAAAACFAAAAgQABQIcwASBx8AAAhwAAAIMAAACcAAEAcKAAAIYAAACCAAAAmgAAAIAAAACIAAAAhAAAAJ4AAQBwYAAAhYAAAIGAAACZAAEwc7AAAIeAAACDgAAAnQABEHEQAACGgAAAgoAAAJsAAACAgAAAiIAAAISAAACfAAEAcEAAAIVAAACBQAFQjjABMHKwAACHQAAAg0AAAJyAARBw0AAAhkAAAIJAAACagAAAgEAAAIhAAACEQAAAnoABAHCAAACFwAAAgcAAAJmAAUB1MAAAh8AAAIPAAACdgAEgcXAAAIbAAACCwAAAm4AAAIDAAACIwAAAhMAAAJ+AAQBwMAAAhSAAAIEgAVCKMAEwcjAAAIcgAACDIAAAnEABEHCwAACGIAAAgiAAAJpAAACAIAAAiCAAAIQgAACeQAEAcHAAAIWgAACBoAAAmUABQHQwAACHoAAAg6AAAJ1AASBxMAAAhqAAAIKgAACbQAAAgKAAAIigAACEoAAAn0ABAHBQAACFYAAAgWAEAIAAATBzMAAAh2AAAINgAACcwAEQcPAAAIZgAACCYAAAmsAAAIBgAACIYAAAhGAAAJ7AAQBwkAAAheAAAIHgAACZwAFAdjAAAIfgAACD4AAAncABIHGwAACG4AAAguAAAJvAAACA4AAAiOAAAITgAACfwAYAcAAAAIUQAACBEAFQiDABIHHwAACHEAAAgxAAAJwgAQBwoAAAhhAAAIIQAACaIAAAgBAAAIgQAACEEAAAniABAHBgAACFkAAAgZAAAJkgATBzsAAAh5AAAIOQAACdIAEQcRAAAIaQAACCkAAAmyAAAICQAACIkAAAhJAAAJ8gAQBwQAAAhVAAAIFQAQCAIBEwcrAAAIdQAACDUAAAnKABEHDQAACGUAAAglAAAJqgAACAUAAAiFAAAIRQAACeoAEAcIAAAIXQAACB0AAAmaABQHUwAACH0AAAg9AAAJ2gASBxcAAAhtAAAILQAACboAAAgNAAAIjQAACE0AAAn6ABAHAwAACFMAAAgTABUIwwATByMAAAhzAAAIMwAACcYAEQcLAAAIYwAACCMAAAmmAAAIAwAACIMAAAhDAAAJ5gAQBwcAAAhbAAAIGwAACZYAFAdDAAAIewAACDsAAAnWABIHEwAACGsAAAgrAAAJtgAACAsAAAiLAAAISwAACfYAEAcFAAAIVwAACBcAQAgAABMHMwAACHcAAAg3AAAJzgARBw8AAAhnAAAIJwAACa4AAAgHAAAIhwAACEcAAAnuABAHCQAACF8AAAgfAAAJngAUB2MAAAh/AAAIPwAACd4AEgcbAAAIbwAACC8AAAm+AAAIDwAACI8AAAhPAAAJ/gBgBwAAAAhQAAAIEAAUCHMAEgcfAAAIcAAACDAAAAnBABAHCgAACGAAAAggAAAJoQAACAAAAAiAAAAIQAAACeEAEAcGAAAIWAAACBgAAAmRABMHOwAACHgAAAg4AAAJ0QARBxEAAAhoAAAIKAAACbEAAAgIAAAIiAAACEgAAAnxABAHBAAACFQAAAgUABUI4wATBysAAAh0AAAINAAACckAEQcNAAAIZAAACCQAAAmpAAAIBAAACIQAAAhEAAAJ6QAQBwgAAAhcAAAIHAAACZkAFAdTAAAIfAAACDwAAAnZABIHFwAACGwAAAgsAAAJuQAACAwAAAiMAAAITAAACfkAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxQARBwsAAAhiAAAIIgAACaUAAAgCAAAIggAACEIAAAnlABAHBwAACFoAAAgaAAAJlQAUB0MAAAh6AAAIOgAACdUAEgcTAAAIagAACCoAAAm1AAAICgAACIoAAAhKAAAJ9QAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnNABEHDwAACGYAAAgmAAAJrQAACAYAAAiGAAAIRgAACe0AEAcJAAAIXgAACB4AAAmdABQHYwAACH4AAAg+AAAJ3QASBxsAAAhuAAAILgAACb0AAAgOAAAIjgAACE4AAAn9AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcMAEAcKAAAIYQAACCEAAAmjAAAIAQAACIEAAAhBAAAJ4wAQBwYAAAhZAAAIGQAACZMAEwc7AAAIeQAACDkAAAnTABEHEQAACGkAAAgpAAAJswAACAkAAAiJAAAISQAACfMAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJywARBw0AAAhlAAAIJQAACasAAAgFAAAIhQAACEUAAAnrABAHCAAACF0AAAgdAAAJmwAUB1MAAAh9AAAIPQAACdsAEgcXAAAIbQAACC0AAAm7AAAIDQAACI0AAAhNAAAJ+wAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnHABEHCwAACGMAAAgjAAAJpwAACAMAAAiDAAAIQwAACecAEAcHAAAIWwAACBsAAAmXABQHQwAACHsAAAg7AAAJ1wASBxMAAAhrAAAIKwAACbcAAAgLAAAIiwAACEsAAAn3ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc8AEQcPAAAIZwAACCcAAAmvAAAIBwAACIcAAAhHAAAJ7wAQBwkAAAhfAAAIHwAACZ8AFAdjAAAIfwAACD8AAAnfABIHGwAACG8AAAgvAAAJvwAACA8AAAiPAAAITwAACf8AEAUBABcFAQETBREAGwUBEBEFBQAZBQEEFQVBAB0FAUAQBQMAGAUBAhQFIQAcBQEgEgUJABoFAQgWBYEAQAUAABAFAgAXBYEBEwUZABsFARgRBQcAGQUBBhUFYQAdBQFgEAUEABgFAQMUBTEAHAUBMBIFDQAaBQEMFgXBAEAFAAAQABEAEgAAAAgABwAJAAYACgAFAAsABAAMAAMADQACAA4AAQAPAEHg7AALQREACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABAAkLCwAACQYLAAALAAYRAAAAERERAEGx7QALIQsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwBB6+0ACwEMAEH37QALFQwAAAAADAAAAAAJDAAAAAAADAAADABBpe4ACwEOAEGx7gALFQ0AAAAEDQAAAAAJDgAAAAAADgAADgBB3+4ACwEQAEHr7gALHg8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgBBou8ACw4SAAAAEhISAAAAAAAACQBB0+8ACwELAEHf7wALFQoAAAAACgAAAAAJCwAAAAAACwAACwBBjfAACwEMAEGZ8AALJwwAAAAADAAAAAAJDAAAAAAADAAADAAAMDEyMzQ1Njc4OUFCQ0RFRgBB5PAACwE+AEGL8QALBf//////AEHQ8QALVxkSRDsCPyxHFD0zMAobBkZLRTcPSQ6OFwNAHTxpKzYfSi0cASAlKSEIDBUWIi4QOD4LNDEYZHR1di9BCX85ESNDMkKJiosFBCYoJw0qHjWMBxpIkxOUlQBBsPIAC4oOSWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";yo(bo)||(bo=N(bo));function Qa(Zs){try{if(Zs==bo&&ue)return new Uint8Array(ue);var so=mI(Zs);if(so)return so;if(F)return F(Zs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Ea){Qi(Ea)}}function gc(Zs,so){var Ea,Ml,Dr;try{Dr=Qa(Zs),Ml=new WebAssembly.Module(Dr),Ea=new WebAssembly.Instance(Ml,so)}catch(di){var Wn=di.toString();throw ne("failed to compile wasm module: "+Wn),(Wn.includes("imported Memory")||Wn.includes("memory import"))&&ne("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),di}return[Ea,Ml]}function Cg(){var Zs={a:Qh};function so(Dr,Wn){var di=Dr.exports;r.asm=di,Se=r.asm.g,Fn(Se.buffer),Hi=r.asm.W,Sc(r.asm.h),Or("wasm-instantiate")}if(Rn("wasm-instantiate"),r.instantiateWasm)try{var Ea=r.instantiateWasm(Zs,so);return Ea}catch(Dr){return ne("Module.instantiateWasm callback failed with error: "+Dr),!1}var Ml=gc(bo,Zs);return so(Ml[0]),r.asm}function Nc(Zs){return jt.getFloat32(Zs,!0)}function iA(Zs){return jt.getFloat64(Zs,!0)}function ma(Zs){return jt.getInt16(Zs,!0)}function vu(Zs){return jt.getInt32(Zs,!0)}function li(Zs,so){jt.setInt32(Zs,so,!0)}function Ei(Zs){for(;Zs.length>0;){var so=Zs.shift();if(typeof so=="function"){so(r);continue}var Ea=so.func;typeof Ea=="number"?so.arg===void 0?Hi.get(Ea)():Hi.get(Ea)(so.arg):Ea(so.arg===void 0?null:so.arg)}}function Ps(Zs,so){var Ea=new Date(vu((Zs>>2)*4)*1e3);li((so>>2)*4,Ea.getUTCSeconds()),li((so+4>>2)*4,Ea.getUTCMinutes()),li((so+8>>2)*4,Ea.getUTCHours()),li((so+12>>2)*4,Ea.getUTCDate()),li((so+16>>2)*4,Ea.getUTCMonth()),li((so+20>>2)*4,Ea.getUTCFullYear()-1900),li((so+24>>2)*4,Ea.getUTCDay()),li((so+36>>2)*4,0),li((so+32>>2)*4,0);var Ml=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Ml)/(1e3*60*60*24)|0;return li((so+28>>2)*4,Dr),Ps.GMTString||(Ps.GMTString=er("GMT")),li((so+40>>2)*4,Ps.GMTString),so}function Xa(Zs,so){return Ps(Zs,so)}function ac(Zs,so,Ea){Xt.copyWithin(Zs,so,so+Ea)}function Yl(Zs){try{return Se.grow(Zs-Zr.byteLength+65535>>>16),Fn(Se.buffer),1}catch{}}function Wc(Zs){var so=Xt.length;Zs=Zs>>>0;var Ea=2147483648;if(Zs>Ea)return!1;for(var Ml=1;Ml<=4;Ml*=2){var Dr=so*(1+.2/Ml);Dr=Math.min(Dr,Zs+100663296);var Wn=Math.min(Ea,xt(Math.max(Zs,Dr),65536)),di=Yl(Wn);if(di)return!0}return!1}function Sg(Zs){fe(Zs)}function Ul(Zs){var so=Date.now()/1e3|0;return Zs&&li((Zs>>2)*4,so),so}function Xu(){if(Xu.called)return;Xu.called=!0;var Zs=new Date().getFullYear(),so=new Date(Zs,0,1),Ea=new Date(Zs,6,1),Ml=so.getTimezoneOffset(),Dr=Ea.getTimezoneOffset(),Wn=Math.max(Ml,Dr);li((Ca()>>2)*4,Wn*60),li((Wa()>>2)*4,+(Ml!=Dr));function di(LA){var pf=LA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return pf?pf[1]:"GMT"}var aa=di(so),Bo=di(Ea),us=er(aa),Ql=er(Bo);Dr>2)*4,us),li((Fs()+4>>2)*4,Ql)):(li((Fs()>>2)*4,Ql),li((Fs()+4>>2)*4,us))}function Da(Zs){Xu();var so=Date.UTC(vu((Zs+20>>2)*4)+1900,vu((Zs+16>>2)*4),vu((Zs+12>>2)*4),vu((Zs+8>>2)*4),vu((Zs+4>>2)*4),vu((Zs>>2)*4),0),Ea=new Date(so);li((Zs+24>>2)*4,Ea.getUTCDay());var Ml=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Ml)/(1e3*60*60*24)|0;return li((Zs+28>>2)*4,Dr),Ea.getTime()/1e3|0}var pu=typeof atob=="function"?atob:function(Zs){var so="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ea="",Ml,Dr,Wn,di,aa,Bo,us,Ql=0;Zs=Zs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do di=so.indexOf(Zs.charAt(Ql++)),aa=so.indexOf(Zs.charAt(Ql++)),Bo=so.indexOf(Zs.charAt(Ql++)),us=so.indexOf(Zs.charAt(Ql++)),Ml=di<<2|aa>>4,Dr=(aa&15)<<4|Bo>>2,Wn=(Bo&3)<<6|us,Ea=Ea+String.fromCharCode(Ml),Bo!==64&&(Ea=Ea+String.fromCharCode(Dr)),us!==64&&(Ea=Ea+String.fromCharCode(Wn));while(Ql0||(ga(),Wr>0))return;function so(){HA||(HA=!0,r.calledRun=!0,!De&&(Ya(),n(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),Gc()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),so()},1)):so()}if(r.run=df,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return df(),t}}();typeof nAt=="object"&&typeof lAr=="object"?lAr.exports=cAr:typeof define=="function"&&define.amd?define([],function(){return cAr}):typeof nAt=="object"&&(nAt.createModule=cAr)});var yZn=H(Sve=>{"use strict";Object.defineProperty(Sve,"__esModule",{value:!0});Sve.makeInterface=Sve.Errors=void 0;var c$=["number","number"],uAr;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(uAr||(Sve.Errors=uAr={}));var GWo=e=>({get HEAPU8(){return e.HEAPU8},errors:uAr,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...c$,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...c$,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...c$,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...c$,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...c$,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...c$,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...c$,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...c$,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...c$,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});Sve.makeInterface=GWo});var EZn=H(C5e=>{"use strict";Object.defineProperty(C5e,"__esModule",{value:!0});C5e.ZipOpenFS=void 0;C5e.getArchivePart=AAr;var FWo=zs(),gAr=zs(),bZn=zK();function AAr(e,t){let r=e.indexOf(t);if(r<=0)return null;let n=r;for(;r>=0&&(n=r+t.length,e[n]!==gAr.ppath.sep);){if(e[r-1]===gAr.ppath.sep)return null;r=e.indexOf(t,n)}return e.length>n&&e[n]!==gAr.ppath.sep?null:e.slice(0,n)}var dAr=class e extends FWo.MountFS{static async openPromise(t,r){let n=new e(r);try{return await t(n)}finally{n.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,n=t.readOnlyArchives,a=typeof r>"u"?A=>AAr(A,".zip"):A=>{for(let f of r){let I=AAr(A,f);if(I)return I}return null},o=(A,f)=>new bZn.ZipFS(f,{baseFs:A,readOnly:n,stats:A.statSync(f),customZipImplementation:t.customZipImplementation}),l=async(A,f)=>{let I={baseFs:A,readOnly:n,stats:await A.statPromise(f),customZipImplementation:t.customZipImplementation};return()=>new bZn.ZipFS(f,I)};super({...t,factorySync:o,factoryPromise:l,getMountPoint:a})}};C5e.ZipOpenFS=dAr});var fAr=H(vve=>{"use strict";Object.defineProperty(vve,"__esModule",{value:!0});vve.LibZipImpl=vve.LibzipError=void 0;var ZWo=aAr(),iAt=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};vve.LibzipError=iAt;var pAr=class{constructor(t){this.filesShouldBeCached=!0;let r="buffer"in t?t.buffer:t.baseFs.readFileSync(t.path);this.libzip=(0,ZWo.getInstance)();let n=this.libzip.malloc(4);try{let l=0;t.readOnly&&(l|=this.libzip.ZIP_RDONLY);let A=this.allocateUnattachedSource(r);try{this.zip=this.libzip.openFromSource(A,l,n),this.lzSource=A}catch(f){throw this.libzip.source.free(A),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(n,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(n)}let a=this.libzip.getNumEntries(this.zip,0),o=new Array(a);for(let l=0;l>>0,o=this.libzip.struct.statMtime(r)>>>0,l=this.libzip.struct.statCrc(r)>>>0;return{size:a,mtime:o,crc:l}}makeLibzipError(t){let r=this.libzip.struct.errorCodeZip(t),n=this.libzip.error.strerror(t),a=new iAt(n,this.libzip.errors[r]);if(r===this.libzip.errors.ZIP_ER_CHANGED)throw new Error(`Assertion failed: Unexpected libzip error: ${a.message}`);return a}setFileSource(t,r,n){let a=this.allocateSource(n);try{let o=this.libzip.file.add(this.zip,t,a,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(r!==null&&this.libzip.file.setCompression(this.zip,o,0,r[0],r[1])===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return o}catch(o){throw this.libzip.source.free(a),o}}setMtime(t,r){if(this.libzip.file.setMtime(this.zip,t,0,r,0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}getExternalAttributes(t){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let n=this.libzip.getValue(this.libzip.uint08S,"i8")>>>0,a=this.libzip.getValue(this.libzip.uint32S,"i32")>>>0;return[n,a]}setExternalAttributes(t,r,n){if(this.libzip.file.setExternalAttributes(this.zip,t,0,0,r,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}locate(t){return this.libzip.name.locate(this.zip,t,0)}getFileSource(t){let r=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.libzip.struct.statCompSize(r),o=this.libzip.struct.statCompMethod(r),l=this.libzip.malloc(a);try{let A=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(A===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let f=this.libzip.fread(A,l,a,0);if(f===-1)throw this.makeLibzipError(this.libzip.file.getError(A));if(fa)throw new Error("Overread");let I=this.libzip.HEAPU8.subarray(l,l+a);return{data:Buffer.from(I),compressionMethod:o}}finally{this.libzip.fclose(A)}}finally{this.libzip.free(l)}}deleteEntry(t){if(this.libzip.delete(this.zip,t)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}addDirectory(t){let r=this.libzip.dir.add(this.zip,t);if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return r}getBufferAndClose(){try{if(this.libzip.source.keep(this.lzSource),this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.libzip.source.open(this.lzSource)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_END)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let t=this.libzip.source.tell(this.lzSource);if(t===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_SET)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let r=this.libzip.malloc(t);if(!r)throw new Error("Couldn't allocate enough memory");try{let n=this.libzip.source.read(this.lzSource,r,t);if(n===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(nt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource)}}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:n,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(n,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:n}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,n,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}discard(){this.libzip.discard(this.zip)}};vve.LibZipImpl=pAr});var oAt=H(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});Lv.ZipFS=Lv.DEFAULT_COMPRESSION_LEVEL=Lv.DEFLATE=Lv.STORE=Lv.ZIP_UNIX=void 0;Lv.makeEmptyArchive=sAt;var LWo=(Pa(),vi(Va)),VWo=zs(),PWo=zs(),WWo=zs(),IAr=zs(),pA=zs(),bh=zs(),X9=wt("fs"),SZn=wt("stream"),OWo=wt("util"),vZn=LWo.__importDefault(wt("zlib")),MWo=fAr();Lv.ZIP_UNIX=3;Lv.STORE=0;Lv.DEFLATE=8;Lv.DEFAULT_COMPRESSION_LEVEL="mixed";function HWo(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(OWo.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function sAt(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var hAr=class extends VWo.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1,r.readOnly&&(this.readOnly=!0);let n=r;this.level=typeof n.level<"u"?n.level:Lv.DEFAULT_COMPRESSION_LEVEL;let a=r.customZipImplementation??MWo.LibZipImpl;if(typeof t=="string"){let{baseFs:l=new PWo.NodeFS}=n;this.baseFs=l,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(l){if(l.code==="ENOENT"&&n.create)this.stats=pA.statUtils.makeDefaultStats();else throw l}else this.stats=pA.statUtils.makeDefaultStats();typeof t=="string"?r.create?this.zipImpl=new a({buffer:sAt(),readOnly:this.readOnly}):this.zipImpl=new a({path:t,baseFs:this.baseFs,readOnly:this.readOnly,size:this.stats.size}):this.zipImpl=new a({buffer:t??sAt(),readOnly:this.readOnly}),this.listings.set(bh.PortablePath.root,new Set);let o=this.zipImpl.getListings();for(let l=0;l{this.closeSync(l)};return(0,WWo.opendir)(this,n,o,{onClose:A})}async readPromise(t,r,n,a,o){return this.readSync(t,r,n,a,o)}readSync(t,r,n=0,a=r.byteLength,o=-1){let l=this.fds.get(t);if(typeof l>"u")throw pA.errors.EBADF("read");let A=o===-1||o===null?l.cursor:o,f=this.readFileSync(l.p);f.copy(r,n,A,A+a);let I=Math.max(0,Math.min(f.length-A,a));return(o===-1||o===null)&&(l.cursor+=I),I}async writePromise(t,r,n,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,n,a,o)}writeSync(t,r,n,a,o){throw typeof this.fds.get(t)>"u"?pA.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw pA.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let n=this.openSync(t,"r"),a=Object.assign(new SZn.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(l,A)=>{clearImmediate(o),this.closeSync(n),A(l)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let l=await this.readFilePromise(t,r);a.bytesRead=l.length,a.end(l)}catch(l){a.destroy(l)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let n=[],a=this.openSync(t,"w"),o=Object.assign(new SZn.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(l,A)=>{try{l?A(l):(this.writeFileSync(t,Buffer.concat(n),r),A(null))}catch(f){A(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",l=>{let A=Buffer.from(l);o.bytesWritten+=A.length,n.push(A)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw pA.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw pA.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let n=bh.ppath.resolve(bh.PortablePath.root,t);return this.entries.has(n)||this.listings.has(n)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=X9.constants.F_OK){let n=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&X9.constants.W_OK)throw pA.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw pA.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,n,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let n=this.fds.get(t);if(typeof n>"u")throw pA.errors.EBADF("fstatSync");let{p:a}=n,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw pA.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw pA.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw pA.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,n,r)}}statImpl(t,r,n={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.zipImpl.stat(a),l=o.crc,A=o.size,f=o.mtime*1e3,I=this.stats.uid,C=this.stats.gid,b=512,E=Math.ceil(o.size/b),N=f,B=f,F=f,Q=new Date(N),X=new Date(B),ae=new Date(F),ne=new Date(f),ce=this.listings.has(r)?X9.constants.S_IFDIR:this.isSymbolicLink(a)?X9.constants.S_IFLNK:X9.constants.S_IFREG,fe=ce===X9.constants.S_IFDIR?493:420,ue=ce|this.getUnixMode(a,fe)&511,de=Object.assign(new pA.statUtils.StatEntry,{uid:I,gid:C,size:A,blksize:b,blocks:E,atime:Q,birthtime:X,ctime:ae,mtime:ne,atimeMs:N,birthtimeMs:B,ctimeMs:F,mtimeMs:f,mode:ue,crc:l});return n.bigint===!0?pA.statUtils.convertToBigIntStats(de):de}if(this.listings.has(r)){let o=this.stats.uid,l=this.stats.gid,A=0,f=512,I=0,C=this.stats.mtimeMs,b=this.stats.mtimeMs,E=this.stats.mtimeMs,N=this.stats.mtimeMs,B=new Date(C),F=new Date(b),Q=new Date(E),X=new Date(N),ae=X9.constants.S_IFDIR|493,ce=Object.assign(new pA.statUtils.StatEntry,{uid:o,gid:l,size:A,blksize:f,blocks:I,atime:B,birthtime:F,ctime:Q,mtime:X,atimeMs:C,birthtimeMs:b,ctimeMs:E,mtimeMs:N,mode:ae,crc:0});return n.bigint===!0?pA.statUtils.convertToBigIntStats(ce):ce}throw new Error("Unreachable")}getUnixMode(t,r){let[n,a]=this.zipImpl.getExternalAttributes(t);return n!==Lv.ZIP_UNIX?r:a>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(bh.ppath.dirname(t)).add(bh.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(bh.ppath.dirname(t)).add(bh.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(bh.ppath.dirname(t))?.delete(bh.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){this.unregisterEntry(t),this.zipImpl.deleteEntry(r)}resolveFilename(t,r,n=!0,a=!0){if(!this.ready)throw pA.errors.EBUSY(`archive closed, ${t}`);let o=bh.ppath.resolve(bh.PortablePath.root,r);if(o==="/")return bh.PortablePath.root;let l=this.entries.get(o);if(n&&l!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(l)){let A=this.getFileSource(l).toString();return this.resolveFilename(t,bh.ppath.resolve(bh.ppath.dirname(o),A),!0,a)}else return o;for(;;){let A=this.resolveFilename(t,bh.ppath.dirname(o),!0,a);if(A===void 0)return A;let f=this.listings.has(A),I=this.entries.has(A);if(!f&&!I){if(a===!1)return;throw pA.errors.ENOENT(t)}if(!f)throw pA.errors.ENOTDIR(t);if(o=bh.ppath.resolve(A,bh.ppath.basename(o)),!n||this.symlinkCount===0)break;let C=this.zipImpl.locate(o.slice(1));if(C===-1)break;if(this.isSymbolicLink(C)){let b=this.getFileSource(C).toString();o=bh.ppath.resolve(bh.ppath.dirname(o),b)}else break}return o}setFileSource(t,r){let n=Buffer.isBuffer(r)?r:Buffer.from(r),a=bh.ppath.relative(bh.PortablePath.root,t),o=null;this.level!=="mixed"&&(o=[this.level===0?Lv.STORE:Lv.DEFLATE,this.level]);let l=this.zipImpl.setFileSource(a,o,n);return this.fileSources.set(l,n),l}isSymbolicLink(t){if(this.symlinkCount===0)return!1;let[r,n]=this.zipImpl.getExternalAttributes(t);return r!==Lv.ZIP_UNIX?!1:(n>>>16&X9.constants.S_IFMT)===X9.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let n=this.fileSources.get(t);if(typeof n<"u")return n;let{data:a,compressionMethod:o}=this.zipImpl.getFileSource(t);if(o===Lv.STORE)return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,a),a;if(o===Lv.DEFLATE){if(r.asyncDecompress)return new Promise((l,A)=>{vZn.default.inflateRaw(a,(f,I)=>{f?A(f):(this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,I),l(I))})});{let l=vZn.default.inflateRawSync(a);return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,l),l}}else throw new Error(`Unsupported compression method: ${o}`)}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw pA.errors.EROFS(`chmod '${t}'`);r&=493;let n=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(n);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${n})`);let l=this.getUnixMode(a,X9.constants.S_IFREG|0)&-512|r;this.zipImpl.setExternalAttributes(a,Lv.ZIP_UNIX,l<<16)}async fchownPromise(t,r,n){return this.chownPromise(this.fdToPath(t,"fchown"),r,n)}fchownSync(t,r,n){return this.chownSync(this.fdToPath(t,"fchownSync"),r,n)}async chownPromise(t,r,n){return this.chownSync(t,r,n)}chownSync(t,r,n){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,n){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}copyFileSync(t,r,n=0){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=this.getFileSource(a),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}prepareCopyFile(t,r,n=0){if(this.readOnly)throw pA.errors.EROFS(`copyfile '${t} -> '${r}'`);if(n&X9.constants.COPYFILE_FICLONE_FORCE)throw pA.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw pA.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let l=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),A=this.entries.get(l);if(n&(X9.constants.COPYFILE_EXCL|X9.constants.COPYFILE_FICLONE_FORCE)&&typeof A<"u")throw pA.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:l,indexDest:A}}async appendFilePromise(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFilePromise(t,r,n)}appendFileSync(t,r,n={}){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFileSync(t,r,n)}fdToPath(t,r){let n=this.fds.get(t)?.p;if(typeof n>"u")throw pA.errors.EBADF(r);return n}async writeFilePromise(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(l,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&await this.chmodPromise(A,o)}writeFileSync(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(l),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&this.chmodSync(A,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw pA.errors.EROFS(`open '${t}'`);let n=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(n))throw pA.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let l=this.entries.get(n);return{encoding:a,mode:o,resolvedP:n,index:l}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw pA.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw pA.errors.EISDIR(`unlink '${t}'`);let n=this.entries.get(r);if(typeof n>"u")throw pA.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,n)}async utimesPromise(t,r,n){return this.utimesSync(t,r,n)}utimesSync(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,n)}async lutimesPromise(t,r,n){return this.lutimesSync(t,r,n)}lutimesSync(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,n)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let n=this.entries.get(t);if(n===void 0)throw new Error("Unreachable");this.zipImpl.setMtime(n,HWo(r))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:n=!1}={}){if(n)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw pA.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw pA.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw pA.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw pA.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw pA.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw pA.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw pA.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw pA.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.zipImpl.addDirectory(bh.ppath.relative(bh.PortablePath.root,t));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw pA.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw pA.errors.EROFS(`symlink '${t}' -> '${r}'`);let n=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(n))throw pA.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(n))throw pA.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(n,t);this.registerEntry(n,a),this.zipImpl.setExternalAttributes(a,Lv.ZIP_UNIX,(X9.constants.S_IFLNK|511)<<16),this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=await this.readFileBuffer(t,{asyncDecompress:!0});return r?n.toString(r):n}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=this.readFileBuffer(t);return r?n.toString(r):n}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let n=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(n))throw pA.errors.EISDIR("read");let a=this.entries.get(n);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let n=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,l=>Object.assign(this.statImpl("lstat",bh.ppath.join(t,l)),{name:l,path:bh.PortablePath.dot,parentPath:bh.PortablePath.dot}));for(let l of o){if(!l.isDirectory())continue;let A=bh.ppath.join(l.path,l.name),f=this.listings.get(bh.ppath.join(n,A));for(let I of f)o.push(Object.assign(this.statImpl("lstat",bh.ppath.join(t,A,I)),{name:I,path:A,parentPath:A}))}return o}else{let o=[...a];for(let l of o){let A=this.listings.get(bh.ppath.join(n,l));if(!(typeof A>"u"))for(let f of A)o.push(bh.ppath.join(l,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",bh.ppath.join(t,o)),{name:o,path:void 0,parentPath:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw pA.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw pA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw pA.errors.EINVAL(`readlink '${t}'`);let n=this.entries.get(r);if(n===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(n))throw pA.errors.EINVAL(`readlink '${t}'`);return n}async truncatePromise(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw pA.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),l=Buffer.alloc(r,0);return o.copy(l),await this.writeFilePromise(t,l)}truncateSync(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw pA.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),l=Buffer.alloc(r,0);return o.copy(l),this.writeFileSync(t,l)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,n){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,n){let a=bh.ppath.resolve(bh.PortablePath.root,t);return(0,IAr.watchFile)(this,a,r,n)}unwatchFile(t,r){let n=bh.ppath.resolve(bh.PortablePath.root,t);return(0,IAr.unwatchFile)(this,n,r)}};Lv.ZipFS=hAr});var BZn=H(mAr=>{"use strict";Object.defineProperty(mAr,"__esModule",{value:!0});mAr.mountMemoryDrive=JWo;var YWo=(Pa(),vi(Va)),aAt=zs(),QWo=YWo.__importDefault(wt("fs")),XWo=oAt();function JWo(e,t,r=Buffer.alloc(0),n){let a=new XWo.ZipFS(r),o=b=>b===t||b.startsWith(`${t}/`)?b.slice(0,t.length):null,l=async(b,E)=>()=>a,A=(b,E)=>a,f={...e},I=new aAt.NodeFS(f),C=new aAt.MountFS({baseFs:I,getMountPoint:o,factoryPromise:l,factorySync:A,magicByte:21,maxAge:1/0,typeCheck:n?.typeCheck});return(0,aAt.patchFs)(QWo.default,new aAt.PosixFS(C)),a}});var TZn=H(Bve=>{"use strict";Object.defineProperty(Bve,"__esModule",{value:!0});Bve.mountMemoryDrive=void 0;var wZn=(Pa(),vi(Va));wZn.__exportStar(EZn(),Bve);wZn.__exportStar(oAt(),Bve);var UWo=BZn();Object.defineProperty(Bve,"mountMemoryDrive",{enumerable:!0,get:function(){return UWo.mountMemoryDrive}})});var RZn=H(cAt=>{"use strict";Object.defineProperty(cAt,"__esModule",{value:!0});cAt.JsZipImpl=void 0;var CAr=zs(),KWo=oAt(),_Ar={CENTRAL_DIRECTORY:33639248,END_OF_CENTRAL_DIRECTORY:101010256},_5e=22,yAr=class e{constructor(t){if(this.filesShouldBeCached=!1,"buffer"in t)throw new Error("Buffer based zip archives are not supported");if(!t.readOnly)throw new Error("Writable zip archives are not supported");this.baseFs=t.baseFs,this.fd=this.baseFs.openSync(t.path,"r");try{this.entries=e.readZipSync(this.fd,this.baseFs,t.size)}catch(r){throw this.baseFs.closeSync(this.fd),this.fd="closed",r}}static readZipSync(t,r,n){if(n<_5e)throw new Error("Invalid ZIP file: EOCD not found");let a=-1,o=Buffer.alloc(_5e);if(r.readSync(t,o,0,_5e,n-_5e),o.readUInt32LE(0)===_Ar.END_OF_CENTRAL_DIRECTORY)a=0;else{let F=Math.min(65557,n);o=Buffer.alloc(F),r.readSync(t,o,0,F,Math.max(0,n-F));for(let Q=o.length-4;Q>=0;Q--)if(o.readUInt32LE(Q)===_Ar.END_OF_CENTRAL_DIRECTORY){a=Q;break}if(a===-1)throw new Error("Not a zip archive")}let l=o.readUInt16LE(a+10),A=o.readUInt32LE(a+12),f=o.readUInt32LE(a+16),I=o.readUInt16LE(a+20);if(a+I+_5e>o.length)throw new Error("Zip archive inconsistent");if(l==65535||A==4294967295||f==4294967295)throw new Error("Zip 64 is not supported");if(A>n)throw new Error("Zip archive inconsistent");if(l>A/46)throw new Error("Zip archive inconsistent");let C=Buffer.alloc(A);if(r.readSync(t,C,0,C.length,f)!==C.length)throw new Error("Zip archive inconsistent");let b=[],E=0,N=0,B=0;for(;NC.length)throw new Error("Zip archive inconsistent");if(C.readUInt32LE(E)!==_Ar.CENTRAL_DIRECTORY)throw new Error("Zip archive inconsistent");let Q=C.readUInt16LE(E+4)>>>8;if(C.readUInt16LE(E+8)&1)throw new Error("Encrypted zip files are not supported");let ae=C.readUInt16LE(E+10),ne=C.readUInt32LE(E+16),ce=C.readUInt16LE(E+28),fe=C.readUInt16LE(E+30),ue=C.readUInt16LE(E+32),de=C.readUInt32LE(E+42),be=C.toString("utf8",E+46,E+46+ce).replaceAll("\0"," ");if(be.includes("\0"))throw new Error("Invalid ZIP file");let Se=C.readUInt32LE(E+20),De=C.readUInt32LE(E+38);b.push({name:be,os:Q,mtime:CAr.constants.SAFE_TIME,crc:ne,compressionMethod:ae,isSymbolicLink:Q===KWo.ZIP_UNIX&&(De>>>16&CAr.constants.S_IFMT)===CAr.constants.S_IFLNK,size:C.readUInt32LE(E+24),compressedSize:Se,externalAttributes:De,localHeaderOffset:de}),B+=Se,N+=1,E+=46+ce+fe+ue}if(B>n)throw new Error("Zip archive inconsistent");if(E!==C.length)throw new Error("Zip archive inconsistent");return b}getExternalAttributes(t){let r=this.entries[t];return[r.os,r.externalAttributes]}getListings(){return this.entries.map(t=>t.name)}getSymlinkCount(){let t=0;for(let r of this.entries)r.isSymbolicLink&&(t+=1);return t}stat(t){let r=this.entries[t];return{crc:r.crc,mtime:r.mtime,size:r.size}}locate(t){for(let r=0;r{"use strict";Object.defineProperty(l$,"__esModule",{value:!0});l$.LibZipImpl=l$.JsZipImpl=void 0;l$.getLibzipSync=qWo;l$.getLibzipPromise=$Wo;var NZn=(Pa(),vi(Va)),bAr=aAr(),jWo=NZn.__importDefault(_Zn()),zWo=yZn();NZn.__exportStar(TZn(),l$);(0,bAr.setFactory)(()=>{let e=(0,jWo.default)();return(0,zWo.makeInterface)(e)});function qWo(){return(0,bAr.getInstance)()}async function $Wo(){return(0,bAr.getInstance)()}var eOo=RZn();Object.defineProperty(l$,"JsZipImpl",{enumerable:!0,get:function(){return eOo.JsZipImpl}});var tOo=fAr();Object.defineProperty(l$,"LibZipImpl",{enumerable:!0,get:function(){return tOo.LibZipImpl}})});var DZn=H(EAr=>{"use strict";Object.defineProperty(EAr,"__esModule",{value:!0});var rOo=zs(),lAt=($c(),vi(rg)),nOo=y5e(),uAt=class extends lAt.Command{constructor(){super(...arguments),this.cwd=lAt.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=lAt.Option.String(),this.args=lAt.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,nOo.execute)(t,[],{cwd:rOo.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};uAt.usage={description:"run a command using yarn's portable shell",details:` This command will run a command using Yarn's portable shell. Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell. @@ -190,87 +190,87 @@ Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return} Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used. For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md. - `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};CAr.default=cAt});var vZn=H(lAt=>{"use strict";Object.defineProperty(lAt,"__esModule",{value:!0});lAt.ShellError=void 0;var _Ar=class extends Error{constructor(t){super(t),this.name="ShellError"}};lAt.ShellError=_Ar});var BZn=H(GW=>{"use strict";Object.defineProperty(GW,"__esModule",{value:!0});GW.fastGlobOptions=GW.micromatchOptions=void 0;GW.isGlobPattern=YWo;GW.match=QWo;GW.isBraceExpansion=XWo;var EAr=(Pa(),vi(Va)),yAr=ro(),MWo=EAr.__importDefault(nve()),HWo=EAr.__importDefault(wt("fs")),bAr=EAr.__importDefault(Ek());GW.micromatchOptions={strictBrackets:!0};GW.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function YWo(e){if(!bAr.default.scan(e,GW.micromatchOptions).isGlob)return!1;try{bAr.default.parse(e,GW.micromatchOptions)}catch{return!1}return!0}function QWo(e,{cwd:t,baseFs:r}){return(0,MWo.default)(e,{...GW.fastGlobOptions,cwd:yAr.npath.fromPortablePath(t),fs:(0,yAr.extendFs)(HWo.default,new yAr.PosixFS(r))})}function XWo(e){return bAr.default.scan(e,GW.micromatchOptions).isBrace}});var TAr=H(AM=>{"use strict";Object.defineProperty(AM,"__esModule",{value:!0});AM.Handle=AM.ProtectedStream=AM.Pipe=void 0;AM.makeProcess=jWo;AM.makeBuiltin=zWo;AM.start=qWo;AM.createOutputStreamsWithPrefix=$Wo;var JWo=(Pa(),vi(Va)),UWo=JWo.__importDefault(Zct()),woe=wt("stream"),KWo=wt("string_decoder"),sIe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(sIe||(AM.Pipe=sIe={}));var iIe=new Set;function SAr(){}function vAr(){for(let e of iIe)e.kill()}function jWo(e,t,r,n){return a=>{let o=a[0]instanceof woe.Transform?"pipe":a[0],l=a[1]instanceof woe.Transform?"pipe":a[1],A=a[2]instanceof woe.Transform?"pipe":a[2],f=(0,UWo.default)(e,t,{...n,stdio:[o,l,A]});return iIe.add(f),iIe.size===1&&(process.on("SIGINT",SAr),process.on("SIGTERM",vAr)),a[0]instanceof woe.Transform&&a[0].pipe(f.stdin),a[1]instanceof woe.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof woe.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(I=>{f.on("error",C=>{switch(iIe.delete(f),iIe.size===0&&(process.off("SIGINT",SAr),process.off("SIGTERM",vAr)),C.code){case"ENOENT":a[2].write(`command not found: ${e} + `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};EAr.default=uAt});var kZn=H(gAt=>{"use strict";Object.defineProperty(gAt,"__esModule",{value:!0});gAt.ShellError=void 0;var SAr=class extends Error{constructor(t){super(t),this.name="ShellError"}};gAt.ShellError=SAr});var xZn=H(GW=>{"use strict";Object.defineProperty(GW,"__esModule",{value:!0});GW.fastGlobOptions=GW.micromatchOptions=void 0;GW.isGlobPattern=oOo;GW.match=aOo;GW.isBraceExpansion=cOo;var wAr=(Pa(),vi(Va)),vAr=zs(),iOo=wAr.__importDefault(ive()),sOo=wAr.__importDefault(wt("fs")),BAr=wAr.__importDefault(Ek());GW.micromatchOptions={strictBrackets:!0};GW.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function oOo(e){if(!BAr.default.scan(e,GW.micromatchOptions).isGlob)return!1;try{BAr.default.parse(e,GW.micromatchOptions)}catch{return!1}return!0}function aOo(e,{cwd:t,baseFs:r}){return(0,iOo.default)(e,{...GW.fastGlobOptions,cwd:vAr.npath.fromPortablePath(t),fs:(0,vAr.extendFs)(sOo.default,new vAr.PosixFS(r))})}function cOo(e){return BAr.default.scan(e,GW.micromatchOptions).isBrace}});var kAr=H(AM=>{"use strict";Object.defineProperty(AM,"__esModule",{value:!0});AM.Handle=AM.ProtectedStream=AM.Pipe=void 0;AM.makeProcess=AOo;AM.makeBuiltin=dOo;AM.start=pOo;AM.createOutputStreamsWithPrefix=fOo;var lOo=(Pa(),vi(Va)),uOo=lOo.__importDefault(Vct()),Toe=wt("stream"),gOo=wt("string_decoder"),oIe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(oIe||(AM.Pipe=oIe={}));var sIe=new Set;function TAr(){}function RAr(){for(let e of sIe)e.kill()}function AOo(e,t,r,n){return a=>{let o=a[0]instanceof Toe.Transform?"pipe":a[0],l=a[1]instanceof Toe.Transform?"pipe":a[1],A=a[2]instanceof Toe.Transform?"pipe":a[2],f=(0,uOo.default)(e,t,{...n,stdio:[o,l,A]});return sIe.add(f),sIe.size===1&&(process.on("SIGINT",TAr),process.on("SIGTERM",RAr)),a[0]instanceof Toe.Transform&&a[0].pipe(f.stdin),a[1]instanceof Toe.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof Toe.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(I=>{f.on("error",C=>{switch(sIe.delete(f),sIe.size===0&&(process.off("SIGINT",TAr),process.off("SIGTERM",RAr)),C.code){case"ENOENT":a[2].write(`command not found: ${e} `),I(127);break;case"EACCES":a[2].write(`permission denied: ${e} `),I(128);break;default:a[2].write(`uncaught error: ${C.message} -`),I(1);break}}),f.on("close",C=>{iIe.delete(f),iIe.size===0&&(process.off("SIGINT",SAr),process.off("SIGTERM",vAr)),I(C!==null?C:129)})})}}}function zWo(e){return t=>{let r=t[0]==="pipe"?new woe.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var BAr=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};AM.ProtectedStream=BAr;var wAr=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},uAt=class e{static start(t,{stdin:r,stdout:n,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=n,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=sIe.STDOUT){let n=new e(this,t),a=new wAr;return n.pipe=a,n.stdout=this.stdout,n.stderr=this.stderr,(r&sIe.STDOUT)===sIe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&sIe.STDERR)===sIe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),n}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let n;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");n=this.stderr,t[2]=n.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),n.close(),o))}async run(){let t=[];for(let n=this;n;n=n.ancestor)t.push(n.exec());return(await Promise.all(t))[0]}};AM.Handle=uAt;function qWo(e,t){return uAt.start(e,t)}function wZn(e,t=null){let r=new woe.PassThrough,n=new KWo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` -`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",e(t!==null?`${t} ${f}`:f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function $Wo(e,{prefix:t}){return{stdout:wZn(r=>e.stdout.write(`${r} -`),e.stdout.isTTY?t:null),stderr:wZn(r=>e.stderr.write(`${r} -`),e.stderr.isTTY?t:null)}}});var C5e=H(u$=>{"use strict";Object.defineProperty(u$,"__esModule",{value:!0});u$.globUtils=u$.ShellError=u$.EntryCommand=void 0;u$.execute=gOo;var DAr=(Pa(),vi(Va)),qK=ro(),kZn=TW(),eOo=DAr.__importDefault(VK()),tOo=wt("os"),AX=wt("stream"),rOo=wt("timers/promises"),nOo=DAr.__importDefault(SZn());u$.EntryCommand=nOo.default;var $K=vZn();Object.defineProperty(u$,"ShellError",{enumerable:!0,get:function(){return $K.ShellError}});var kAr=DAr.__importStar(BZn());u$.globUtils=kAr;var RAr=TAr(),KN=TAr(),pG;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(pG||(pG={}));function TZn(e,t,r){let n=new AX.PassThrough({autoDestroy:!0});switch(e){case KN.Pipe.STDIN:(t&pG.Readable)===pG.Readable&&r.stdin.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&r.stdin instanceof AX.Writable&&n.pipe(r.stdin,{end:!1});break;case KN.Pipe.STDOUT:(t&pG.Readable)===pG.Readable&&r.stdout.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&n.pipe(r.stdout,{end:!1});break;case KN.Pipe.STDERR:(t&pG.Readable)===pG.Readable&&r.stderr.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&n.pipe(r.stderr,{end:!1});break;default:throw new $K.ShellError(`Bad file descriptor: "${e}"`)}return n}function AAt(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var iOo=new Map([["cd",async([e=(0,tOo.homedir)(),...t],r,n)=>{let a=qK.ppath.resolve(n.cwd,qK.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(l=>{throw l.code==="ENOENT"?new $K.ShellError(`cd: no such file or directory: ${e}`):l})).isDirectory())throw new $K.ShellError(`cd: not a directory: ${e}`);return n.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${qK.npath.fromPortablePath(r.cwd)} +`),I(1);break}}),f.on("close",C=>{sIe.delete(f),sIe.size===0&&(process.off("SIGINT",TAr),process.off("SIGTERM",RAr)),I(C!==null?C:129)})})}}}function dOo(e){return t=>{let r=t[0]==="pipe"?new Toe.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var NAr=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};AM.ProtectedStream=NAr;var DAr=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},AAt=class e{static start(t,{stdin:r,stdout:n,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=n,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=oIe.STDOUT){let n=new e(this,t),a=new DAr;return n.pipe=a,n.stdout=this.stdout,n.stderr=this.stderr,(r&oIe.STDOUT)===oIe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&oIe.STDERR)===oIe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),n}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let n;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");n=this.stderr,t[2]=n.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),n.close(),o))}async run(){let t=[];for(let n=this;n;n=n.ancestor)t.push(n.exec());return(await Promise.all(t))[0]}};AM.Handle=AAt;function pOo(e,t){return AAt.start(e,t)}function GZn(e,t=null){let r=new Toe.PassThrough,n=new gOo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` +`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",e(t!==null?`${t} ${f}`:f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function fOo(e,{prefix:t}){return{stdout:GZn(r=>e.stdout.write(`${r} +`),e.stdout.isTTY?t:null),stderr:GZn(r=>e.stderr.write(`${r} +`),e.stderr.isTTY?t:null)}}});var y5e=H(u$=>{"use strict";Object.defineProperty(u$,"__esModule",{value:!0});u$.globUtils=u$.ShellError=u$.EntryCommand=void 0;u$.execute=wOo;var FAr=(Pa(),vi(Va)),qK=zs(),PZn=TW(),IOo=FAr.__importDefault(VK()),hOo=wt("os"),AX=wt("stream"),mOo=wt("timers/promises"),COo=FAr.__importDefault(DZn());u$.EntryCommand=COo.default;var $K=kZn();Object.defineProperty(u$,"ShellError",{enumerable:!0,get:function(){return $K.ShellError}});var ZAr=FAr.__importStar(xZn());u$.globUtils=ZAr;var xAr=kAr(),KN=kAr(),pG;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(pG||(pG={}));function FZn(e,t,r){let n=new AX.PassThrough({autoDestroy:!0});switch(e){case KN.Pipe.STDIN:(t&pG.Readable)===pG.Readable&&r.stdin.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&r.stdin instanceof AX.Writable&&n.pipe(r.stdin,{end:!1});break;case KN.Pipe.STDOUT:(t&pG.Readable)===pG.Readable&&r.stdout.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&n.pipe(r.stdout,{end:!1});break;case KN.Pipe.STDERR:(t&pG.Readable)===pG.Readable&&r.stderr.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&n.pipe(r.stderr,{end:!1});break;default:throw new $K.ShellError(`Bad file descriptor: "${e}"`)}return n}function pAt(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var _Oo=new Map([["cd",async([e=(0,hOo.homedir)(),...t],r,n)=>{let a=qK.ppath.resolve(n.cwd,qK.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(l=>{throw l.code==="ENOENT"?new $K.ShellError(`cd: no such file or directory: ${e}`):l})).isDirectory())throw new $K.ShellError(`cd: not a directory: ${e}`);return n.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${qK.npath.fromPortablePath(r.cwd)} `),0)],[":",async(e,t,r)=>0],["true",async(e,t,r)=>0],["false",async(e,t,r)=>1],["exit",async([e,...t],r,n)=>n.exitCode=parseInt(e??n.variables["?"],10)],["echo",async(e,t,r)=>(r.stdout.write(`${e.join(" ")} -`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new $K.ShellError("sleep: missing operand");let n=Number(e);if(Number.isNaN(n))throw new $K.ShellError(`sleep: invalid time interval '${e}'`);return await(0,rOo.setTimeout)(1e3*n,0)}],["unset",async(e,t,r)=>{for(let n of e)delete r.environment[n],delete r.variables[n];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let n=r.procedures[e[0]];return await(0,KN.start)(n,{stdin:new KN.ProtectedStream(r.stdin),stdout:new KN.ProtectedStream(r.stdout),stderr:new KN.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let n=r.stdin,a=r.stdout,o=r.stderr,l=[],A=[],f=[],I=0;for(;e[I]!=="--";){let b=e[I++],{type:E,fd:N}=JSON.parse(b),B=ae=>{switch(N){case null:case 0:l.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},F=ae=>{switch(N){case null:case 1:A.push(ae);break;case 2:f.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},Q=Number(e[I++]),X=I+Q;for(let ae=I;aet.baseFs.createReadStream(qK.ppath.resolve(r.cwd,qK.npath.toPortablePath(e[ae]))));break;case"<<<":B(()=>{let ne=new AX.PassThrough;return process.nextTick(()=>{ne.write(`${e[ae]} -`),ne.end()}),ne});break;case"<&":B(()=>TZn(Number(e[ae]),pG.Readable,r));break;case">":case">>":{let ne=qK.ppath.resolve(r.cwd,qK.npath.toPortablePath(e[ae]));F(ne==="/dev/null"?new AX.Writable({autoDestroy:!0,emitClose:!0,write(ce,fe,ue){setImmediate(ue)}}):t.baseFs.createWriteStream(ne,E===">>"?{flags:"a"}:void 0))}break;case">&":F(TZn(Number(e[ae]),pG.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${E}"`)}}if(l.length>0){let b=new AX.PassThrough;n=b;let E=N=>{if(N===l.length)b.end();else{let B=l[N]();B.pipe(b,{end:!1}),B.on("end",()=>{E(N+1)})}};E(0)}if(A.length>0){let b=new AX.PassThrough;a=b;for(let E of A)b.pipe(E)}if(f.length>0){let b=new AX.PassThrough;o=b;for(let E of f)b.pipe(E)}let C=await(0,KN.start)(y5e(e.slice(I+1),t,r),{stdin:new KN.ProtectedStream(n),stdout:new KN.ProtectedStream(a),stderr:new KN.ProtectedStream(o)}).run();return await Promise.all(A.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),await Promise.all(f.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),C}]]);async function sOo(e,t,r){let n=[],a=new AX.PassThrough;return a.on("data",o=>n.push(o)),await dAt(e,t,AAt(r,{stdout:a})),Buffer.concat(n).toString().replace(/[\r\n]+$/,"")}async function RZn(e,t,r){let n=e.map(async o=>{let l=await oIe(o.args,t,r);return{name:o.name,value:l.join(" ")}});return(await Promise.all(n)).reduce((o,l)=>(o[l.name]=l.value,o),{})}function gAt(e){return e.match(/[^ \r\n\t]+/g)||[]}async function xZn(e,t,r,n,a=n){switch(e.name){case"$":n(String(process.pid));break;case"#":n(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let l=gAt(o);for(let A=0;A=0&&o"u"&&(e.defaultValue?l=(await oIe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(l="")),typeof l>"u")throw A?new $K.ShellError(`Unbound argument #${o}`):new $K.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)n(l);else{let f=gAt(l);for(let C=0;Ce+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function _5e(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let n=[];await xZn({...e,quoted:!0},t,r,o=>n.push(o));let a=Number(n.join(" "));return Number.isNaN(a)?_5e({type:"variable",name:n.join(" ")},t,r):_5e({type:"number",value:a},t,r)}else return oOo[e.type](await _5e(e.left,t,r),await _5e(e.right,t,r))}async function oIe(e,t,r){let n=new Map,a=[],o=[],l=C=>{o.push(C)},A=()=>{o.length>0&&a.push(o.join("")),o=[]},f=C=>{l(C),A()},I=(C,b,E)=>{let N=JSON.stringify({type:C,fd:b}),B=n.get(N);typeof B>"u"&&n.set(N,B=[]),B.push(E)};for(let C of e){let b=!1;switch(C.type){case"redirection":{let E=await oIe(C.args,t,r);for(let N of E)I(C.subtype,C.fd,N)}break;case"argument":for(let E of C.segments)switch(E.type){case"text":l(E.text);break;case"glob":l(E.pattern),b=!0;break;case"shell":{let N=await sOo(E.shell,t,r);if(E.quoted)l(N);else{let B=gAt(N);for(let F=0;F"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let N=await t.glob.match(E,{cwd:r.cwd,baseFs:t.baseFs});if(N.length===0){let B=kAr.isBraceExpansion(E)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new $K.ShellError(`No matches found: "${E}"${B}`)}for(let B of N.sort())f(B)}}if(n.size>0){let C=[];for(let[b,E]of n.entries())C.splice(C.length,0,b,String(E.length),...E);a.splice(0,0,"__ysh_set_redirects",...C,"--")}return a}function y5e(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let n=qK.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:n});let[o,...l]=e;if(o==="command")return(0,RAr.makeProcess)(l[0],l.slice(1),t,{cwd:n,env:a});let A=t.builtins.get(o);if(typeof A>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,RAr.makeBuiltin)(async({stdin:f,stdout:I,stderr:C})=>{let{stdin:b,stdout:E,stderr:N}=r;r.stdin=f,r.stdout=I,r.stderr=C;try{return await A(l,t,r)}finally{r.stdin=b,r.stdout=E,r.stderr=N}})}function aOo(e,t,r){return n=>{let a=new AX.PassThrough,o=dAt(e,t,AAt(r,{stdin:a}));return{stdin:a,promise:o}}}function cOo(e,t,r){return n=>{let a=new AX.PassThrough,o=dAt(e,t,r);return{stdin:a,promise:o}}}function NZn(e,t,r,n){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(n.procedures,a));return n.procedures={...n.procedures},n.procedures[a]=e,y5e([...t,"__ysh_run_procedure",a],r,n)}}async function DZn(e,t,r){let n=e,a=null,o=null;for(;n;){let l=n.then?{...r}:r,A;switch(n.type){case"command":{let f=await oIe(n.args,t,r),I=await RZn(n.envs,t,r);A=n.envs.length?y5e(f,t,AAt(l,{environment:I})):y5e(f,t,l)}break;case"subshell":{let f=await oIe(n.args,t,r),I=aOo(n.subshell,t,l);A=NZn(I,f,t,l)}break;case"group":{let f=await oIe(n.args,t,r),I=cOo(n.group,t,l);A=NZn(I,f,t,l)}break;case"envs":{let f=await RZn(n.envs,t,r);l.environment={...l.environment,...f},A=y5e(["true"],t,l)}break}if(typeof A>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,KN.start)(A,{stdin:new KN.ProtectedStream(l.stdin),stdout:new KN.ProtectedStream(l.stdout),stderr:new KN.ProtectedStream(l.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(A,KN.Pipe.STDOUT);break;case"|&":o=o.pipeTo(A,KN.Pipe.STDOUT|KN.Pipe.STDERR);break}}n.then?(a=n.then.type,n=n.then.chain):n=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function lOo(e,t,r,{background:n=!1}={}){function a(o){let l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[o%l.length];return eOo.default.hex(A)}if(n){let o=r.nextBackgroundJobIndex++,l=a(o),A=`[${o}]`,f=l(A),{stdout:I,stderr:C}=(0,RAr.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(DZn(e,t,AAt(r,{stdout:I,stderr:C})).catch(b=>C.write(`${b.message} -`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${l((0,kZn.stringifyCommandChain)(e))}' has ended -`)})),0}return await DZn(e,t,r)}async function uOo(e,t,r,{background:n=!1}={}){let a,o=A=>{a=A,r.variables["?"]=String(A)},l=async A=>{try{return await lOo(A.chain,t,r,{background:n&&typeof A.then>"u"})}catch(f){if(!(f instanceof $K.ShellError))throw f;return r.stderr.write(`${f.message} -`),1}};for(o(await l(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await l(e.then.line));break;case"||":a!==0&&o(await l(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function dAt(e,t,r){let n=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:l}of e){if(a=await uOo(o,t,r,{background:l==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=n,a}function GZn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>b5e(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>b5e(t));case"arithmetic":return NAr(e.arithmetic);case"shell":return xAr(e.shell);default:return!1}}function b5e(e){switch(e.type){case"redirection":return e.args.some(t=>b5e(t));case"argument":return e.segments.some(t=>GZn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function NAr(e){switch(e.type){case"variable":return GZn(e);case"number":return!1;default:return NAr(e.left)||NAr(e.right)}}function xAr(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let n;switch(r.type){case"subshell":n=xAr(r.subshell);break;case"command":n=r.envs.some(a=>a.args.some(o=>b5e(o)))||r.args.some(a=>b5e(a));break}if(n)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function gOo(e,t=[],{baseFs:r=new qK.NodeFS,builtins:n={},cwd:a=qK.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:l=process.stdin,stdout:A=process.stdout,stderr:f=process.stderr,variables:I={},glob:C=kAr}={}){let b={};for(let[B,F]of Object.entries(o))typeof F<"u"&&(b[B]=F);let E=new Map(iOo);for(let[B,F]of Object.entries(n))E.set(B,F);l===null&&(l=new AX.PassThrough,l.end());let N=(0,kZn.parseShell)(e,C);if(!xAr(N)&&N.length>0&&t.length>0){let{command:B}=N[N.length-1];for(;B.then;)B=B.then.line;let F=B.chain;for(;F.then;)F=F.then.chain;F.type==="command"&&(F.args=F.args.concat(t.map(Q=>({type:"argument",segments:[{type:"text",text:Q}]}))))}return await dAt(N,{args:t,baseFs:r,builtins:E,initialStdin:l,initialStdout:A,initialStderr:f,glob:C},{cwd:a,environment:b,exitCode:null,procedures:{},stdin:l,stdout:A,stderr:f,variables:Object.assign({},I,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var FZn=H((E6l,pAt)=>{function AOo(){var e=0,t=1,r=2,n=3,a=4,o=5,l=6,A=7,f=8,I=9,C=10,b=11,E=12,N=13,B=14,F=15,Q=16,X=17,ae=0,ne=1,ce=2,fe=3,ue=4;function de(k,et){return 55296<=k.charCodeAt(et)&&k.charCodeAt(et)<=56319&&56320<=k.charCodeAt(et+1)&&k.charCodeAt(et+1)<=57343}function be(k,et){et===void 0&&(et=0);var ct=k.charCodeAt(et);if(55296<=ct&&ct<=56319&&et=1){var Me=k.charCodeAt(et-1),je=ct;return 55296<=Me&&Me<=56319?(Me-55296)*1024+(je-56320)+65536:je}return ct}function Se(k,et,ct){var Me=[k].concat(et).concat([ct]),je=Me[Me.length-2],St=ct,At=Me.lastIndexOf(B);if(At>1&&Me.slice(1,At).every(function(Nr){return Nr==n})&&[n,N,X].indexOf(k)==-1)return ce;var Yt=Me.lastIndexOf(a);if(Yt>0&&Me.slice(1,Yt).every(function(Nr){return Nr==a})&&[E,a].indexOf(je)==-1)return Me.filter(function(Nr){return Nr==a}).length%2==1?fe:ue;if(je==e&&St==t)return ae;if(je==r||je==e||je==t)return St==B&&et.every(function(Nr){return Nr==n})?ce:ne;if(St==r||St==e||St==t)return ne;if(je==l&&(St==l||St==A||St==I||St==C))return ae;if((je==I||je==A)&&(St==A||St==f))return ae;if((je==C||je==f)&&St==f)return ae;if(St==n||St==F)return ae;if(St==o)return ae;if(je==E)return ae;var Tr=Me.indexOf(n)!=-1?Me.lastIndexOf(n)-1:Me.length-2;return[N,X].indexOf(Me[Tr])!=-1&&Me.slice(Tr+1,-1).every(function(Nr){return Nr==n})&&St==B||je==F&&[Q,X].indexOf(St)!=-1?ae:et.indexOf(a)!=-1?ce:je==a&&St==a?ae:ne}this.nextBreak=function(k,et){if(et===void 0&&(et=0),et<0)return 0;if(et>=k.length-1)return k.length;for(var ct=De(be(k,et)),Me=[],je=et+1;je{var dOo=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,fAt;function pOo(){if(fAt)return fAt;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return fAt=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=FZn(),t=new e;return fAt=r=>t.splitGraphemes(r)}}ZZn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let n=r-t,a="",o=0,l=0;for(;e.length>0;){let A=e.match(dOo)||[e,e,void 0],f=pOo()(A[1]),I=Math.min(t-o,f.length);f=f.slice(I);let C=Math.min(n-l,f.length);a+=f.slice(0,C).join(""),o+=I,l+=C,typeof A[2]<"u"&&(a+=A[2]),e=e.slice(A[0].length)}return a}});var E5e=H(IAt=>{"use strict";Object.defineProperty(IAt,"__esModule",{value:!0});IAt.YarnVersion=void 0;IAt.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.2.22-atls"});var S5e=H(dM=>{"use strict";Object.defineProperty(dM,"__esModule",{value:!0});dM.StreamReport=dM.SUPPORTS_GROUPS=dM.SINGLE_LINE_CHAR=void 0;dM.formatName=ZAr;dM.formatNameWithHyperlink=OZn;dM.reportOptionDeprecations=yOo;var FAr=(Pa(),vi(Va)),fOo=FAr.__importDefault(LZn()),GAr=FAr.__importDefault(Nfe()),e8=M9(),IOo=sM(),hOo=E5e(),dX=FAr.__importStar(rM());dM.SINGLE_LINE_CHAR="\xB7";var VZn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],PZn=80,Toe=GAr.default.GITHUB_ACTIONS?{start:e=>`::group::${e} +`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new $K.ShellError("sleep: missing operand");let n=Number(e);if(Number.isNaN(n))throw new $K.ShellError(`sleep: invalid time interval '${e}'`);return await(0,mOo.setTimeout)(1e3*n,0)}],["unset",async(e,t,r)=>{for(let n of e)delete r.environment[n],delete r.variables[n];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let n=r.procedures[e[0]];return await(0,KN.start)(n,{stdin:new KN.ProtectedStream(r.stdin),stdout:new KN.ProtectedStream(r.stdout),stderr:new KN.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let n=r.stdin,a=r.stdout,o=r.stderr,l=[],A=[],f=[],I=0;for(;e[I]!=="--";){let b=e[I++],{type:E,fd:N}=JSON.parse(b),B=ae=>{switch(N){case null:case 0:l.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},F=ae=>{switch(N){case null:case 1:A.push(ae);break;case 2:f.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},Q=Number(e[I++]),X=I+Q;for(let ae=I;aet.baseFs.createReadStream(qK.ppath.resolve(r.cwd,qK.npath.toPortablePath(e[ae]))));break;case"<<<":B(()=>{let ne=new AX.PassThrough;return process.nextTick(()=>{ne.write(`${e[ae]} +`),ne.end()}),ne});break;case"<&":B(()=>FZn(Number(e[ae]),pG.Readable,r));break;case">":case">>":{let ne=qK.ppath.resolve(r.cwd,qK.npath.toPortablePath(e[ae]));F(ne==="/dev/null"?new AX.Writable({autoDestroy:!0,emitClose:!0,write(ce,fe,ue){setImmediate(ue)}}):t.baseFs.createWriteStream(ne,E===">>"?{flags:"a"}:void 0))}break;case">&":F(FZn(Number(e[ae]),pG.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${E}"`)}}if(l.length>0){let b=new AX.PassThrough;n=b;let E=N=>{if(N===l.length)b.end();else{let B=l[N]();B.pipe(b,{end:!1}),B.on("end",()=>{E(N+1)})}};E(0)}if(A.length>0){let b=new AX.PassThrough;a=b;for(let E of A)b.pipe(E)}if(f.length>0){let b=new AX.PassThrough;o=b;for(let E of f)b.pipe(E)}let C=await(0,KN.start)(E5e(e.slice(I+1),t,r),{stdin:new KN.ProtectedStream(n),stdout:new KN.ProtectedStream(a),stderr:new KN.ProtectedStream(o)}).run();return await Promise.all(A.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),await Promise.all(f.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),C}]]);async function yOo(e,t,r){let n=[],a=new AX.PassThrough;return a.on("data",o=>n.push(o)),await fAt(e,t,pAt(r,{stdout:a})),Buffer.concat(n).toString().replace(/[\r\n]+$/,"")}async function ZZn(e,t,r){let n=e.map(async o=>{let l=await aIe(o.args,t,r);return{name:o.name,value:l.join(" ")}});return(await Promise.all(n)).reduce((o,l)=>(o[l.name]=l.value,o),{})}function dAt(e){return e.match(/[^ \r\n\t]+/g)||[]}async function WZn(e,t,r,n,a=n){switch(e.name){case"$":n(String(process.pid));break;case"#":n(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let l=dAt(o);for(let A=0;A=0&&o"u"&&(e.defaultValue?l=(await aIe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(l="")),typeof l>"u")throw A?new $K.ShellError(`Unbound argument #${o}`):new $K.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)n(l);else{let f=dAt(l);for(let C=0;Ce+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function b5e(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let n=[];await WZn({...e,quoted:!0},t,r,o=>n.push(o));let a=Number(n.join(" "));return Number.isNaN(a)?b5e({type:"variable",name:n.join(" ")},t,r):b5e({type:"number",value:a},t,r)}else return bOo[e.type](await b5e(e.left,t,r),await b5e(e.right,t,r))}async function aIe(e,t,r){let n=new Map,a=[],o=[],l=C=>{o.push(C)},A=()=>{o.length>0&&a.push(o.join("")),o=[]},f=C=>{l(C),A()},I=(C,b,E)=>{let N=JSON.stringify({type:C,fd:b}),B=n.get(N);typeof B>"u"&&n.set(N,B=[]),B.push(E)};for(let C of e){let b=!1;switch(C.type){case"redirection":{let E=await aIe(C.args,t,r);for(let N of E)I(C.subtype,C.fd,N)}break;case"argument":for(let E of C.segments)switch(E.type){case"text":l(E.text);break;case"glob":l(E.pattern),b=!0;break;case"shell":{let N=await yOo(E.shell,t,r);if(E.quoted)l(N);else{let B=dAt(N);for(let F=0;F"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let N=await t.glob.match(E,{cwd:r.cwd,baseFs:t.baseFs});if(N.length===0){let B=ZAr.isBraceExpansion(E)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new $K.ShellError(`No matches found: "${E}"${B}`)}for(let B of N.sort())f(B)}}if(n.size>0){let C=[];for(let[b,E]of n.entries())C.splice(C.length,0,b,String(E.length),...E);a.splice(0,0,"__ysh_set_redirects",...C,"--")}return a}function E5e(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let n=qK.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:n});let[o,...l]=e;if(o==="command")return(0,xAr.makeProcess)(l[0],l.slice(1),t,{cwd:n,env:a});let A=t.builtins.get(o);if(typeof A>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,xAr.makeBuiltin)(async({stdin:f,stdout:I,stderr:C})=>{let{stdin:b,stdout:E,stderr:N}=r;r.stdin=f,r.stdout=I,r.stderr=C;try{return await A(l,t,r)}finally{r.stdin=b,r.stdout=E,r.stderr=N}})}function EOo(e,t,r){return n=>{let a=new AX.PassThrough,o=fAt(e,t,pAt(r,{stdin:a}));return{stdin:a,promise:o}}}function SOo(e,t,r){return n=>{let a=new AX.PassThrough,o=fAt(e,t,r);return{stdin:a,promise:o}}}function LZn(e,t,r,n){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(n.procedures,a));return n.procedures={...n.procedures},n.procedures[a]=e,E5e([...t,"__ysh_run_procedure",a],r,n)}}async function VZn(e,t,r){let n=e,a=null,o=null;for(;n;){let l=n.then?{...r}:r,A;switch(n.type){case"command":{let f=await aIe(n.args,t,r),I=await ZZn(n.envs,t,r);A=n.envs.length?E5e(f,t,pAt(l,{environment:I})):E5e(f,t,l)}break;case"subshell":{let f=await aIe(n.args,t,r),I=EOo(n.subshell,t,l);A=LZn(I,f,t,l)}break;case"group":{let f=await aIe(n.args,t,r),I=SOo(n.group,t,l);A=LZn(I,f,t,l)}break;case"envs":{let f=await ZZn(n.envs,t,r);l.environment={...l.environment,...f},A=E5e(["true"],t,l)}break}if(typeof A>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,KN.start)(A,{stdin:new KN.ProtectedStream(l.stdin),stdout:new KN.ProtectedStream(l.stdout),stderr:new KN.ProtectedStream(l.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(A,KN.Pipe.STDOUT);break;case"|&":o=o.pipeTo(A,KN.Pipe.STDOUT|KN.Pipe.STDERR);break}}n.then?(a=n.then.type,n=n.then.chain):n=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function vOo(e,t,r,{background:n=!1}={}){function a(o){let l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[o%l.length];return IOo.default.hex(A)}if(n){let o=r.nextBackgroundJobIndex++,l=a(o),A=`[${o}]`,f=l(A),{stdout:I,stderr:C}=(0,xAr.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(VZn(e,t,pAt(r,{stdout:I,stderr:C})).catch(b=>C.write(`${b.message} +`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${l((0,PZn.stringifyCommandChain)(e))}' has ended +`)})),0}return await VZn(e,t,r)}async function BOo(e,t,r,{background:n=!1}={}){let a,o=A=>{a=A,r.variables["?"]=String(A)},l=async A=>{try{return await vOo(A.chain,t,r,{background:n&&typeof A.then>"u"})}catch(f){if(!(f instanceof $K.ShellError))throw f;return r.stderr.write(`${f.message} +`),1}};for(o(await l(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await l(e.then.line));break;case"||":a!==0&&o(await l(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function fAt(e,t,r){let n=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:l}of e){if(a=await BOo(o,t,r,{background:l==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=n,a}function OZn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>S5e(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>S5e(t));case"arithmetic":return GAr(e.arithmetic);case"shell":return LAr(e.shell);default:return!1}}function S5e(e){switch(e.type){case"redirection":return e.args.some(t=>S5e(t));case"argument":return e.segments.some(t=>OZn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function GAr(e){switch(e.type){case"variable":return OZn(e);case"number":return!1;default:return GAr(e.left)||GAr(e.right)}}function LAr(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let n;switch(r.type){case"subshell":n=LAr(r.subshell);break;case"command":n=r.envs.some(a=>a.args.some(o=>S5e(o)))||r.args.some(a=>S5e(a));break}if(n)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function wOo(e,t=[],{baseFs:r=new qK.NodeFS,builtins:n={},cwd:a=qK.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:l=process.stdin,stdout:A=process.stdout,stderr:f=process.stderr,variables:I={},glob:C=ZAr}={}){let b={};for(let[B,F]of Object.entries(o))typeof F<"u"&&(b[B]=F);let E=new Map(_Oo);for(let[B,F]of Object.entries(n))E.set(B,F);l===null&&(l=new AX.PassThrough,l.end());let N=(0,PZn.parseShell)(e,C);if(!LAr(N)&&N.length>0&&t.length>0){let{command:B}=N[N.length-1];for(;B.then;)B=B.then.line;let F=B.chain;for(;F.then;)F=F.then.chain;F.type==="command"&&(F.args=F.args.concat(t.map(Q=>({type:"argument",segments:[{type:"text",text:Q}]}))))}return await fAt(N,{args:t,baseFs:r,builtins:E,initialStdin:l,initialStdout:A,initialStderr:f,glob:C},{cwd:a,environment:b,exitCode:null,procedures:{},stdin:l,stdout:A,stderr:f,variables:Object.assign({},I,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var MZn=H((f7l,IAt)=>{function TOo(){var e=0,t=1,r=2,n=3,a=4,o=5,l=6,A=7,f=8,I=9,C=10,b=11,E=12,N=13,B=14,F=15,Q=16,X=17,ae=0,ne=1,ce=2,fe=3,ue=4;function de(k,et){return 55296<=k.charCodeAt(et)&&k.charCodeAt(et)<=56319&&56320<=k.charCodeAt(et+1)&&k.charCodeAt(et+1)<=57343}function be(k,et){et===void 0&&(et=0);var ct=k.charCodeAt(et);if(55296<=ct&&ct<=56319&&et=1){var Me=k.charCodeAt(et-1),je=ct;return 55296<=Me&&Me<=56319?(Me-55296)*1024+(je-56320)+65536:je}return ct}function Se(k,et,ct){var Me=[k].concat(et).concat([ct]),je=Me[Me.length-2],St=ct,At=Me.lastIndexOf(B);if(At>1&&Me.slice(1,At).every(function(Nr){return Nr==n})&&[n,N,X].indexOf(k)==-1)return ce;var Yt=Me.lastIndexOf(a);if(Yt>0&&Me.slice(1,Yt).every(function(Nr){return Nr==a})&&[E,a].indexOf(je)==-1)return Me.filter(function(Nr){return Nr==a}).length%2==1?fe:ue;if(je==e&&St==t)return ae;if(je==r||je==e||je==t)return St==B&&et.every(function(Nr){return Nr==n})?ce:ne;if(St==r||St==e||St==t)return ne;if(je==l&&(St==l||St==A||St==I||St==C))return ae;if((je==I||je==A)&&(St==A||St==f))return ae;if((je==C||je==f)&&St==f)return ae;if(St==n||St==F)return ae;if(St==o)return ae;if(je==E)return ae;var Tr=Me.indexOf(n)!=-1?Me.lastIndexOf(n)-1:Me.length-2;return[N,X].indexOf(Me[Tr])!=-1&&Me.slice(Tr+1,-1).every(function(Nr){return Nr==n})&&St==B||je==F&&[Q,X].indexOf(St)!=-1?ae:et.indexOf(a)!=-1?ce:je==a&&St==a?ae:ne}this.nextBreak=function(k,et){if(et===void 0&&(et=0),et<0)return 0;if(et>=k.length-1)return k.length;for(var ct=De(be(k,et)),Me=[],je=et+1;je{var ROo=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,hAt;function NOo(){if(hAt)return hAt;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return hAt=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=MZn(),t=new e;return hAt=r=>t.splitGraphemes(r)}}HZn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let n=r-t,a="",o=0,l=0;for(;e.length>0;){let A=e.match(ROo)||[e,e,void 0],f=NOo()(A[1]),I=Math.min(t-o,f.length);f=f.slice(I);let C=Math.min(n-l,f.length);a+=f.slice(0,C).join(""),o+=I,l+=C,typeof A[2]<"u"&&(a+=A[2]),e=e.slice(A[0].length)}return a}});var v5e=H(mAt=>{"use strict";Object.defineProperty(mAt,"__esModule",{value:!0});mAt.YarnVersion=void 0;mAt.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.2.22-atls"});var B5e=H(dM=>{"use strict";Object.defineProperty(dM,"__esModule",{value:!0});dM.StreamReport=dM.SUPPORTS_GROUPS=dM.SINGLE_LINE_CHAR=void 0;dM.formatName=WAr;dM.formatNameWithHyperlink=UZn;dM.reportOptionDeprecations=LOo;var PAr=(Pa(),vi(Va)),DOo=PAr.__importDefault(YZn()),VAr=PAr.__importDefault(Dfe()),e8=M9(),kOo=sM(),xOo=v5e(),dX=PAr.__importStar(rM());dM.SINGLE_LINE_CHAR="\xB7";var QZn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],XZn=80,Roe=VAr.default.GITHUB_ACTIONS?{start:e=>`::group::${e} `,end:e=>`::endgroup:: -`}:GAr.default.TRAVIS?{start:e=>`travis_fold:start:${e} +`}:VAr.default.TRAVIS?{start:e=>`travis_fold:start:${e} `,end:e=>`travis_fold:end:${e} -`}:GAr.default.GITLAB?{start:e=>`section_start:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${e} -`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;dM.SUPPORTS_GROUPS=Toe!==null;var WZn=new Date,mOo=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,COo=e=>e,hAt=COo({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),_Oo=mOo&&Object.keys(hAt).find(e=>{let t=hAt[e];return!(t.date&&(t.date[0]!==WZn.getDate()||t.date[1]!==WZn.getMonth()+1))})||"default";function ZAr(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let n=e===null?0:e,a=(0,e8.stringifyMessageName)(n);return!r&&e===null?dX.pretty(t,a,"grey"):a}function OZn(e,{configuration:t,json:r}){let n=ZAr(e,{configuration:t,json:r});if(!n||e===null||e===e8.MessageName.UNNAMED)return n;let a=e8.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${n}---${a}`.toLowerCase();return dX.applyHyperlink(t,n,o)}async function yOo({configuration:e,stdout:t,forceError:r},n){let a=await mAt.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let l=!1,A=!1;for(let f of n)typeof f.option<"u"&&(f.error||r?(A=!0,o.reportError(e8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(l=!0,o.reportWarning(e8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());l&&!A&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var mAt=class extends IOo.Report{static async start(t,r){let n=new this(t),a=process.emitWarning;process.emitWarning=(o,l)=>{if(typeof o!="string"){let f=o;o=f.message,l=l??f.name}let A=typeof l<"u"?`${l}: ${o}`:o;n.reportWarning(e8.MessageName.UNNAMED,A)},t.includeVersion&&n.reportInfo(e8.MessageName.UNNAMED,dX.applyStyle(t.configuration,`Yarn ${hOo.YarnVersion}`,dX.Style.BOLD));try{await r(n)}catch(o){n.reportExceptionOnce(o)}finally{await n.finalize(),process.emitWarning=a}return n}constructor({configuration:t,stdout:r,json:n=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:l=!0,includeFooter:A=!0,includeLogs:f=!n,includeInfos:I=f,includeWarnings:C=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,dX.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=l,this.includeFooter=A,this.includeInfos=I,this.includeWarnings=C,this.json=n,this.stdout=r,t.get("enableProgressBars")&&!n&&r.isTTY&&r.columns>22){let b=t.get("progressBarStyle")||_Oo;if(!Object.hasOwn(hAt,b))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=hAt[b];let E=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*E/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return await a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}startTimerImpl(t,r,n){return{cb:typeof r=="function"?r:n,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,Toe!==null&&!this.json&&this.includeInfos&&this.stdout.write(Toe.start(t))},reportFooter:l=>{if(this.indent-=1,Toe!==null&&!this.json&&this.includeInfos){this.stdout.write(Toe.end(t));for(let A of this.timerFooter)A()}this.configuration.get("enableTimers")&&l>200?this.reportInfo(null,`\u2514 Completed in ${dX.pretty(this.configuration,l,dX.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionSync(o,a)}async startTimerPromise(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!Toe)return;let n=`${Toe.start(t)}${r}${Toe.end(t)}`;this.timerFooter.push(()=>this.stdout.write(n))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,n=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:l,title:A}of t)r||o.progress===l&&o.title===A||(o.progress=l,o.title=A,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...n,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=dX.pretty(this.configuration,Date.now()-this.startTime,dX.Type.DURATION),n=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(e8.MessageName.UNNAMED,n):this.warningCount>0?this.reportWarning(e8.MessageName.UNNAMED,n):this.reportInfo(e8.MessageName.UNNAMED,n)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} +`}:VAr.default.GITLAB?{start:e=>`section_start:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${e} +`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;dM.SUPPORTS_GROUPS=Roe!==null;var JZn=new Date,GOo=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,FOo=e=>e,CAt=FOo({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),ZOo=GOo&&Object.keys(CAt).find(e=>{let t=CAt[e];return!(t.date&&(t.date[0]!==JZn.getDate()||t.date[1]!==JZn.getMonth()+1))})||"default";function WAr(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let n=e===null?0:e,a=(0,e8.stringifyMessageName)(n);return!r&&e===null?dX.pretty(t,a,"grey"):a}function UZn(e,{configuration:t,json:r}){let n=WAr(e,{configuration:t,json:r});if(!n||e===null||e===e8.MessageName.UNNAMED)return n;let a=e8.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${n}---${a}`.toLowerCase();return dX.applyHyperlink(t,n,o)}async function LOo({configuration:e,stdout:t,forceError:r},n){let a=await _At.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let l=!1,A=!1;for(let f of n)typeof f.option<"u"&&(f.error||r?(A=!0,o.reportError(e8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(l=!0,o.reportWarning(e8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());l&&!A&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var _At=class extends kOo.Report{static async start(t,r){let n=new this(t),a=process.emitWarning;process.emitWarning=(o,l)=>{if(typeof o!="string"){let f=o;o=f.message,l=l??f.name}let A=typeof l<"u"?`${l}: ${o}`:o;n.reportWarning(e8.MessageName.UNNAMED,A)},t.includeVersion&&n.reportInfo(e8.MessageName.UNNAMED,dX.applyStyle(t.configuration,`Yarn ${xOo.YarnVersion}`,dX.Style.BOLD));try{await r(n)}catch(o){n.reportExceptionOnce(o)}finally{await n.finalize(),process.emitWarning=a}return n}constructor({configuration:t,stdout:r,json:n=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:l=!0,includeFooter:A=!0,includeLogs:f=!n,includeInfos:I=f,includeWarnings:C=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,dX.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=l,this.includeFooter=A,this.includeInfos=I,this.includeWarnings=C,this.json=n,this.stdout=r,t.get("enableProgressBars")&&!n&&r.isTTY&&r.columns>22){let b=t.get("progressBarStyle")||ZOo;if(!Object.hasOwn(CAt,b))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=CAt[b];let E=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*E/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return await a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}startTimerImpl(t,r,n){return{cb:typeof r=="function"?r:n,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,Roe!==null&&!this.json&&this.includeInfos&&this.stdout.write(Roe.start(t))},reportFooter:l=>{if(this.indent-=1,Roe!==null&&!this.json&&this.includeInfos){this.stdout.write(Roe.end(t));for(let A of this.timerFooter)A()}this.configuration.get("enableTimers")&&l>200?this.reportInfo(null,`\u2514 Completed in ${dX.pretty(this.configuration,l,dX.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionSync(o,a)}async startTimerPromise(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!Roe)return;let n=`${Roe.start(t)}${r}${Roe.end(t)}`;this.timerFooter.push(()=>this.stdout.write(n))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,n=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:l,title:A}of t)r||o.progress===l&&o.title===A||(o.progress=l,o.title=A,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...n,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=dX.pretty(this.configuration,Date.now()-this.startTime,dX.Type.DURATION),n=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(e8.MessageName.UNNAMED,n):this.warningCount>0?this.reportWarning(e8.MessageName.UNNAMED,n):this.reportInfo(e8.MessageName.UNNAMED,n)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} `),this.writeProgress()}writeLines(t,{truncate:r}={}){this.clearProgress({delta:t.length});for(let n of t)this.stdout.write(`${this.truncate(n,{truncate:r})} -`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>PZn&&(this.progressFrame=(this.progressFrame+1)%VZn.length,this.progressTime=t);let r=VZn[this.progressFrame];for(let n of this.progress.values()){let a="";if(typeof n.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(n.lastScaledSize),I=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-n.lastScaledSize);a=` ${f}${I}`}let o=this.formatName(null),l=o?`${o}: `:"",A=n.definition.title?` ${n.definition.title}`:"";this.stdout.write(`${dX.pretty(this.configuration,"\u27A4","blueBright")} ${l}${r}${a}${A} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},PZn)}refreshProgress({delta:t=0,force:r=!1}={}){let n=!1,a=!1;if(r||this.progress.size===0)n=!0;else for(let o of this.progress.values()){let l=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,A=o.lastScaledSize;o.lastScaledSize=l;let f=o.lastTitle;if(o.lastTitle=o.definition.title,l!==A||(a=f!==o.definition.title)){n=!0;break}}n&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,fOo.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?ZAr(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${dX.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?OZn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${dM.SINGLE_LINE_CHAR} `}};dM.StreamReport=mAt});var HAr=H(BR=>{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.PackageManager=void 0;BR.detectPackageManager=QZn;BR.makeScriptEnv=v5e;BR.prepareExternalProject=wOo;BR.hasPackageScript=TOo;BR.executePackageScript=XZn;BR.executePackageShellcode=ROo;BR.executeWorkspaceScript=UZn;BR.hasWorkspaceScript=WAr;BR.executeWorkspaceLifecycleScript=KZn;BR.maybeExecuteWorkspaceLifecycleScript=DOo;BR.isNodeScript=OAr;BR.getPackageAccessibleBinaries=_At;BR.getWorkspaceAccessibleBinaries=jZn;BR.executePackageAccessibleBinary=zZn;BR.executeWorkspaceAccessibleBinary=kOo;var wve=(Pa(),vi(Va)),Noe=ro(),tp=ro(),MZn=zK(),HZn=C5e(),bOo=kW(),EOo=wve.__importDefault(Dfe()),Bve=wt("stream"),PAr=uve(),VAr=M9(),YZn=sM(),CAt=S5e(),LAr=E5e(),FW=wve.__importStar(Xgt()),t8=wve.__importStar(rM()),aIe=wve.__importStar(xW()),SOo=wve.__importStar(n$()),tT=wve.__importStar(uG()),RZ;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(RZ||(BR.PackageManager=RZ={}));async function Roe(e,t,r,n=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${n.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await tp.xfs.writeFilePromise(tp.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await tp.xfs.writeFilePromise(tp.ppath.join(e,t),`#!/bin/sh +`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>XZn&&(this.progressFrame=(this.progressFrame+1)%QZn.length,this.progressTime=t);let r=QZn[this.progressFrame];for(let n of this.progress.values()){let a="";if(typeof n.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(n.lastScaledSize),I=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-n.lastScaledSize);a=` ${f}${I}`}let o=this.formatName(null),l=o?`${o}: `:"",A=n.definition.title?` ${n.definition.title}`:"";this.stdout.write(`${dX.pretty(this.configuration,"\u27A4","blueBright")} ${l}${r}${a}${A} +`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},XZn)}refreshProgress({delta:t=0,force:r=!1}={}){let n=!1,a=!1;if(r||this.progress.size===0)n=!0;else for(let o of this.progress.values()){let l=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,A=o.lastScaledSize;o.lastScaledSize=l;let f=o.lastTitle;if(o.lastTitle=o.definition.title,l!==A||(a=f!==o.definition.title)){n=!0;break}}n&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,DOo.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?WAr(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${dX.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?UZn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${dM.SINGLE_LINE_CHAR} `}};dM.StreamReport=_At});var JAr=H(BR=>{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.PackageManager=void 0;BR.detectPackageManager=qZn;BR.makeScriptEnv=w5e;BR.prepareExternalProject=HOo;BR.hasPackageScript=YOo;BR.executePackageScript=$Zn;BR.executePackageShellcode=QOo;BR.executeWorkspaceScript=tLn;BR.hasWorkspaceScript=YAr;BR.executeWorkspaceLifecycleScript=rLn;BR.maybeExecuteWorkspaceLifecycleScript=JOo;BR.isNodeScript=QAr;BR.getPackageAccessibleBinaries=bAt;BR.getWorkspaceAccessibleBinaries=nLn;BR.executePackageAccessibleBinary=iLn;BR.executeWorkspaceAccessibleBinary=UOo;var Tve=(Pa(),vi(Va)),Doe=zs(),tp=zs(),KZn=zK(),jZn=y5e(),VOo=kW(),POo=Tve.__importDefault(kfe()),wve=wt("stream"),HAr=gve(),MAr=M9(),zZn=sM(),yAt=B5e(),OAr=v5e(),FW=Tve.__importStar(Ugt()),t8=Tve.__importStar(rM()),cIe=Tve.__importStar(xW()),WOo=Tve.__importStar(n$()),tT=Tve.__importStar(uG()),RZ;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(RZ||(BR.PackageManager=RZ={}));async function Noe(e,t,r,n=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${n.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await tp.xfs.writeFilePromise(tp.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await tp.xfs.writeFilePromise(tp.ppath.join(e,t),`#!/bin/sh exec "${r}" ${n.map(a=>`'${a.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`,{mode:493})}async function QZn(e){let t=await PAr.Manifest.tryFind(e);if(t?.packageManager){let n=tT.tryParseLocator(t.packageManager);if(n?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=n.reference.split(".");switch(n.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?RZ.Yarn1:RZ.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:RZ.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:RZ.Pnpm,reason:a}}}}let r;try{r=await tp.xfs.readFilePromise(tp.ppath.join(e,Noe.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:RZ.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:RZ.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:tp.xfs.existsSync(tp.ppath.join(e,"package-lock.json"))?{packageManager:RZ.Npm,reason:`found npm's "package-lock.json" lockfile`}:tp.xfs.existsSync(tp.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:RZ.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function v5e({project:e,locator:t,binFolder:r,ignoreCorepack:n,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let l={};for(let[C,b]of Object.entries(o))typeof b<"u"&&(l[C.toLowerCase()!=="path"?C:"PATH"]=b);let A=tp.npath.fromPortablePath(r);l.BERRY_BIN_FOLDER=tp.npath.fromPortablePath(A);let f=process.env.COREPACK_ROOT&&!n?tp.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Roe(r,"node",process.execPath),...LAr.YarnVersion!==null?[Roe(r,"run",process.execPath,[f,"run"]),Roe(r,"yarn",process.execPath,[f]),Roe(r,"yarnpkg",process.execPath,[f]),Roe(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(l.INIT_CWD=tp.npath.fromPortablePath(e.configuration.startingCwd),l.PROJECT_CWD=tp.npath.fromPortablePath(e.cwd)),l.PATH=l.PATH?`${A}${tp.npath.delimiter}${l.PATH}`:`${A}`,l.npm_execpath=`${A}${tp.npath.sep}yarn`,l.npm_node_execpath=`${A}${tp.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let C=e.tryWorkspaceByLocator(t),b=C?C.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";l.npm_package_name=tT.stringifyIdent(t),l.npm_package_version=b;let E;if(C)E=C.cwd;else{let N=e.storedPackages.get(t.locatorHash);if(!N)throw new Error(`Package for ${tT.prettyLocator(e.configuration,t)} not found in the project`);let B=e.configuration.getLinkers(),F={project:e,report:new CAt.StreamReport({stdout:new Bve.PassThrough,configuration:e.configuration})},Q=B.find(X=>X.supportsPackage(N,F));if(!Q)throw new Error(`The package ${tT.prettyLocator(e.configuration,N)} isn't supported by any of the available linkers`);E=await Q.findPackageLocation(N,F)}l.npm_package_json=tp.npath.fromPortablePath(tp.ppath.join(E,Noe.Filename.manifest))}let I=LAr.YarnVersion!==null?`yarn/${LAr.YarnVersion}`:`yarn/${aIe.dynamicRequire("@yarnpkg/core").version}-core`;return l.npm_config_user_agent=`${I} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(l.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(C=>C.setupScriptEnvironment,e,l,async(C,b,E)=>await Roe(r,C,b,E)),l}var vOo=2,BOo=(0,EOo.default)(vOo);async function wOo(e,t,{configuration:r,report:n,workspace:a=null,locator:o=null}){await BOo(async()=>{await tp.xfs.mktempPromise(async l=>{let A=tp.ppath.join(l,"pack.log"),f=null,{stdout:I,stderr:C}=r.getSubprocessStreams(A,{prefix:tp.npath.fromPortablePath(e),report:n}),b=o&&tT.isVirtualLocator(o)?tT.devirtualizeLocator(o):o,E=b?tT.stringifyLocator(b):"an external project";I.write(`Packing ${E} from sources -`);let N=await QZn(e),B;N!==null?(I.write(`Using ${N.packageManager} for bootstrap. Reason: ${N.reason} +`,{mode:493})}async function qZn(e){let t=await HAr.Manifest.tryFind(e);if(t?.packageManager){let n=tT.tryParseLocator(t.packageManager);if(n?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=n.reference.split(".");switch(n.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?RZ.Yarn1:RZ.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:RZ.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:RZ.Pnpm,reason:a}}}}let r;try{r=await tp.xfs.readFilePromise(tp.ppath.join(e,Doe.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:RZ.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:RZ.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:tp.xfs.existsSync(tp.ppath.join(e,"package-lock.json"))?{packageManager:RZ.Npm,reason:`found npm's "package-lock.json" lockfile`}:tp.xfs.existsSync(tp.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:RZ.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function w5e({project:e,locator:t,binFolder:r,ignoreCorepack:n,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let l={};for(let[C,b]of Object.entries(o))typeof b<"u"&&(l[C.toLowerCase()!=="path"?C:"PATH"]=b);let A=tp.npath.fromPortablePath(r);l.BERRY_BIN_FOLDER=tp.npath.fromPortablePath(A);let f=process.env.COREPACK_ROOT&&!n?tp.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Noe(r,"node",process.execPath),...OAr.YarnVersion!==null?[Noe(r,"run",process.execPath,[f,"run"]),Noe(r,"yarn",process.execPath,[f]),Noe(r,"yarnpkg",process.execPath,[f]),Noe(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(l.INIT_CWD=tp.npath.fromPortablePath(e.configuration.startingCwd),l.PROJECT_CWD=tp.npath.fromPortablePath(e.cwd)),l.PATH=l.PATH?`${A}${tp.npath.delimiter}${l.PATH}`:`${A}`,l.npm_execpath=`${A}${tp.npath.sep}yarn`,l.npm_node_execpath=`${A}${tp.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let C=e.tryWorkspaceByLocator(t),b=C?C.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";l.npm_package_name=tT.stringifyIdent(t),l.npm_package_version=b;let E;if(C)E=C.cwd;else{let N=e.storedPackages.get(t.locatorHash);if(!N)throw new Error(`Package for ${tT.prettyLocator(e.configuration,t)} not found in the project`);let B=e.configuration.getLinkers(),F={project:e,report:new yAt.StreamReport({stdout:new wve.PassThrough,configuration:e.configuration})},Q=B.find(X=>X.supportsPackage(N,F));if(!Q)throw new Error(`The package ${tT.prettyLocator(e.configuration,N)} isn't supported by any of the available linkers`);E=await Q.findPackageLocation(N,F)}l.npm_package_json=tp.npath.fromPortablePath(tp.ppath.join(E,Doe.Filename.manifest))}let I=OAr.YarnVersion!==null?`yarn/${OAr.YarnVersion}`:`yarn/${cIe.dynamicRequire("@yarnpkg/core").version}-core`;return l.npm_config_user_agent=`${I} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(l.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(C=>C.setupScriptEnvironment,e,l,async(C,b,E)=>await Noe(r,C,b,E)),l}var OOo=2,MOo=(0,POo.default)(OOo);async function HOo(e,t,{configuration:r,report:n,workspace:a=null,locator:o=null}){await MOo(async()=>{await tp.xfs.mktempPromise(async l=>{let A=tp.ppath.join(l,"pack.log"),f=null,{stdout:I,stderr:C}=r.getSubprocessStreams(A,{prefix:tp.npath.fromPortablePath(e),report:n}),b=o&&tT.isVirtualLocator(o)?tT.devirtualizeLocator(o):o,E=b?tT.stringifyLocator(b):"an external project";I.write(`Packing ${E} from sources +`);let N=await qZn(e),B;N!==null?(I.write(`Using ${N.packageManager} for bootstrap. Reason: ${N.reason} `),B=N.packageManager):(I.write(`No package manager configuration detected; defaulting to Yarn -`),B=RZ.Yarn2);let F=B===RZ.Yarn2&&!N?.packageManagerField;await tp.xfs.mktempPromise(async Q=>{let X=await v5e({binFolder:Q,ignoreCorepack:F,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ne=new Map([[RZ.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],ue=tp.ppath.join(e,Noe.Filename.manifest),de=await tp.xfs.readFilePromise(ue),be=await FW.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await tp.xfs.writeFilePromise(ue,de),await tp.xfs.appendFilePromise(tp.ppath.join(e,".npmignore"),`/.yarn +`),B=RZ.Yarn2);let F=B===RZ.Yarn2&&!N?.packageManagerField;await tp.xfs.mktempPromise(async Q=>{let X=await w5e({binFolder:Q,ignoreCorepack:F,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ne=new Map([[RZ.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],ue=tp.ppath.join(e,Doe.Filename.manifest),de=await tp.xfs.readFilePromise(ue),be=await FW.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await tp.xfs.writeFilePromise(ue,de),await tp.xfs.appendFilePromise(tp.ppath.join(e,".npmignore"),`/.yarn `),I.write(` `),delete X.NODE_ENV;let Se=await FW.pipevp("yarn",["install"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(Se.code!==0)return Se.code;I.write(` -`);let De=await FW.pipevp("yarn",[...fe,"pack","--filename",tp.npath.fromPortablePath(t)],{cwd:e,env:X,stdin:f,stdout:I,stderr:C});return De.code!==0?De.code:0}],[RZ.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];X.YARN_ENABLE_INLINE_BUILDS="1";let ue=tp.ppath.join(e,Noe.Filename.lockfile);await tp.xfs.existsPromise(ue)||await tp.xfs.writeFilePromise(ue,"");let de=await FW.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",tp.npath.fromPortablePath(t)],{cwd:e,env:X,stdin:f,stdout:I,stderr:C});return de.code!==0?de.code:0}],[RZ.Npm,async()=>{if(a!==null){let et=new Bve.PassThrough,ct=aIe.bufferStream(et);et.pipe(I,{end:!1});let Me=await FW.pipevp("npm",["--version"],{cwd:e,env:X,stdin:f,stdout:et,stderr:C,end:FW.EndStrategy.Never});if(et.end(),Me.code!==0)return I.end(),C.end(),Me.code;let je=(await ct).toString().trim();if(!SOo.satisfiesWithPrereleases(je,">=7.x")){let St=tT.makeIdent(null,"npm"),At=tT.makeDescriptor(St,je),Yt=tT.makeDescriptor(St,">=7.x");throw new Error(`Workspaces aren't supported by ${tT.prettyDescriptor(r,At)}; please upgrade to ${tT.prettyDescriptor(r,Yt)} (npm has been detected as the primary package manager for ${t8.pretty(r,e,t8.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete X.npm_config_user_agent,delete X.npm_config_production,delete X.NPM_CONFIG_PRODUCTION,delete X.NODE_ENV;let ue=await FW.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(ue.code!==0)return ue.code;let de=new Bve.PassThrough,be=aIe.bufferStream(de);de.pipe(I);let Se=await FW.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:X,stdin:f,stdout:de,stderr:C});if(Se.code!==0)return Se.code;let De=(await be).toString().trim().replace(/^.*\n/s,""),k=tp.ppath.resolve(e,tp.npath.toPortablePath(De));return await tp.xfs.renamePromise(k,t),0}]]).get(B);if(typeof ne>"u")throw new Error("Assertion failed: Unsupported workflow");let ce=await ne();if(!(ce===0||typeof ce>"u"))throw tp.xfs.detachTemp(l),new YZn.ReportError(VAr.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ce}, logs can be found here: ${t8.pretty(r,A,t8.Type.PATH)})`)})})})}async function TOo(e,t,{project:r}){let n=r.tryWorkspaceByLocator(e);if(n!==null)return WAr(n,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${tT.prettyLocator(r.configuration,e)} not found in the project`);return await MZn.ZipOpenFS.openPromise(async o=>{let l=r.configuration,A=r.configuration.getLinkers(),f={project:r,report:new CAt.StreamReport({stdout:new Bve.PassThrough,configuration:l})},I=A.find(N=>N.supportsPackage(a,f));if(!I)throw new Error(`The package ${tT.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let C=await I.findPackageLocation(a,f),b=new Noe.CwdFS(C,{baseFs:o});return(await PAr.Manifest.find(Noe.PortablePath.dot,{baseFs:b})).scripts.has(t)})}async function XZn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await tp.xfs.mktempPromise(async f=>{let{manifest:I,env:C,cwd:b}=await JZn(e,{project:a,binFolder:f,cwd:n,lifecycleScript:t}),E=I.scripts.get(t);if(typeof E>"u")return 1;let N=async()=>await(0,HZn.execute)(E,r,{cwd:b,env:C,stdin:o,stdout:l,stderr:A});return await(await a.configuration.reduceHook(F=>F.wrapScriptExecution,N,a,e,t,{script:E,args:r,cwd:b,env:C,stdin:o,stdout:l,stderr:A}))()})}async function ROo(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await tp.xfs.mktempPromise(async f=>{let{env:I,cwd:C}=await JZn(e,{project:a,binFolder:f,cwd:n});return await(0,HZn.execute)(t,r,{cwd:C,env:I,stdin:o,stdout:l,stderr:A})})}async function NOo(e,{binFolder:t,cwd:r,lifecycleScript:n}){let a=await v5e({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:n});return await MAr(t,await jZn(e)),typeof r>"u"&&(r=tp.ppath.dirname(await tp.xfs.realpathPromise(tp.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function JZn(e,{project:t,binFolder:r,cwd:n,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return NOo(o,{binFolder:r,cwd:n,lifecycleScript:a});let l=t.storedPackages.get(e.locatorHash);if(!l)throw new Error(`Package for ${tT.prettyLocator(t.configuration,e)} not found in the project`);return await MZn.ZipOpenFS.openPromise(async A=>{let f=t.configuration,I=t.configuration.getLinkers(),C={project:t,report:new CAt.StreamReport({stdout:new Bve.PassThrough,configuration:f})},b=I.find(Q=>Q.supportsPackage(l,C));if(!b)throw new Error(`The package ${tT.prettyLocator(t.configuration,l)} isn't supported by any of the available linkers`);let E=await v5e({project:t,locator:e,binFolder:r,lifecycleScript:a});await MAr(r,await _At(e,{project:t}));let N=await b.findPackageLocation(l,C),B=new Noe.CwdFS(N,{baseFs:A}),F=await PAr.Manifest.find(Noe.PortablePath.dot,{baseFs:B});return typeof n>"u"&&(n=N),{manifest:F,binFolder:r,env:E,cwd:n}})}async function UZn(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l}){return await XZn(e.anchoredLocator,t,r,{cwd:n,project:e.project,stdin:a,stdout:o,stderr:l})}function WAr(e,t){return e.manifest.scripts.has(t)}async function KZn(e,t,{cwd:r,report:n}){let{configuration:a}=e.project,o=null;await tp.xfs.mktempPromise(async l=>{let A=tp.ppath.join(l,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${tp.npath.fromPortablePath(e.cwd)}") -`,{stdout:I,stderr:C}=a.getSubprocessStreams(A,{report:n,prefix:tT.prettyLocator(a,e.anchoredLocator),header:f});n.reportInfo(VAr.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let b=await UZn(e,t,[],{cwd:r,stdin:o,stdout:I,stderr:C});if(I.end(),C.end(),b!==0)throw tp.xfs.detachTemp(l),new YZn.ReportError(VAr.MessageName.LIFECYCLE_SCRIPT,`${(0,bOo.capitalize)(t)} script failed (exit code ${t8.pretty(a,b,t8.Type.NUMBER)}, logs can be found here: ${t8.pretty(a,A,t8.Type.PATH)}); run ${t8.pretty(a,`yarn ${t}`,t8.Type.CODE)} to investigate`)})}async function DOo(e,t,r){WAr(e,t)&&await KZn(e,t,r)}function OAr(e){let t=tp.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),n;try{n=tp.xfs.openSync(e,"r")}catch{return!0}try{tp.xfs.readSync(n,r,0,r.length,0)}finally{tp.xfs.closeSync(n)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function _At(e,{project:t}){let r=t.configuration,n=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${tT.prettyLocator(r,e)} not found in the project`);let o=new Bve.Writable,l=r.getLinkers(),A={project:t,report:new CAt.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let C of a.dependencies.values()){let b=t.storedResolutions.get(C.descriptorHash);if(!b)throw new Error(`Assertion failed: The resolution (${tT.prettyDescriptor(r,C)}) should have been registered`);f.add(b)}let I=await Promise.all(Array.from(f,async C=>{let b=t.storedPackages.get(C);if(!b)throw new Error(`Assertion failed: The package (${C}) should have been registered`);if(b.bin.size===0)return aIe.mapAndFilter.skip;let E=l.find(B=>B.supportsPackage(b,A));if(!E)return aIe.mapAndFilter.skip;let N=null;try{N=await E.findPackageLocation(b,A)}catch(B){if(B.code==="LOCATOR_NOT_INSTALLED")return aIe.mapAndFilter.skip;throw B}return{dependency:b,packageLocation:N}}));for(let C of I){if(C===aIe.mapAndFilter.skip)continue;let{dependency:b,packageLocation:E}=C;for(let[N,B]of b.bin){let F=tp.ppath.resolve(E,B);n.set(N,[b,tp.npath.fromPortablePath(F),OAr(F)])}}return n}async function jZn(e){return await _At(e.anchoredLocator,{project:e.project})}async function MAr(e,t){await Promise.all(Array.from(t,([r,[,n,a]])=>a?Roe(e,r,process.execPath,[n]):Roe(e,r,n,[])))}async function zZn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A,nodeArgs:f=[],packageAccessibleBinaries:I}){I??=await _At(e,{project:a});let C=I.get(t);if(!C)throw new Error(`Binary not found (${t}) for ${tT.prettyLocator(a.configuration,e)}`);return await tp.xfs.mktempPromise(async b=>{let[,E]=C,N=await v5e({project:a,locator:e,binFolder:b});await MAr(N.BERRY_BIN_FOLDER,I);let B=OAr(tp.npath.toPortablePath(E))?FW.pipevp(process.execPath,[...f,E,...r],{cwd:n,env:N,stdin:o,stdout:l,stderr:A}):FW.pipevp(E,r,{cwd:n,env:N,stdin:o,stdout:l,stderr:A}),F;try{F=await B}finally{await tp.xfs.removePromise(N.BERRY_BIN_FOLDER)}return F.code})}async function kOo(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A}){return await zZn(e.anchoredLocator,t,r,{project:e.project,cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A})}});var gLn=H(jC=>{"use strict";var yC=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),B5e=yC(e=>{"use strict";var t=e&&e.__importDefault||function(Fn){return Fn&&Fn.__esModule?Fn:{default:Fn}};Object.defineProperty(e,"__esModule",{value:!0}),e.Minipass=e.isWritable=e.isReadable=e.isStream=void 0;var r=typeof process=="object"&&process?process:{stdout:null,stderr:null},n=wt("node:events"),a=t(wt("node:stream")),o=wt("node:string_decoder"),l=Fn=>!!Fn&&typeof Fn=="object"&&(Fn instanceof jt||Fn instanceof a.default||(0,e.isReadable)(Fn)||(0,e.isWritable)(Fn));e.isStream=l;var A=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.pipe=="function"&&Fn.pipe!==a.default.Writable.prototype.pipe;e.isReadable=A;var f=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.write=="function"&&typeof Fn.end=="function";e.isWritable=f;var I=Symbol("EOF"),C=Symbol("maybeEmitEnd"),b=Symbol("emittedEnd"),E=Symbol("emittingEnd"),N=Symbol("emittedError"),B=Symbol("closed"),F=Symbol("read"),Q=Symbol("flush"),X=Symbol("flushChunk"),ae=Symbol("encoding"),ne=Symbol("decoder"),ce=Symbol("flowing"),fe=Symbol("paused"),ue=Symbol("resume"),de=Symbol("buffer"),be=Symbol("pipes"),Se=Symbol("bufferLength"),De=Symbol("bufferPush"),k=Symbol("bufferShift"),et=Symbol("objectMode"),ct=Symbol("destroyed"),Me=Symbol("error"),je=Symbol("emitData"),St=Symbol("emitEnd"),At=Symbol("emitEnd2"),Yt=Symbol("async"),Tr=Symbol("abort"),Nr=Symbol("aborted"),er=Symbol("signal"),vt=Symbol("dataListeners"),xt=Symbol("discarded"),Zr=Fn=>Promise.resolve().then(Fn),qt=Fn=>Fn(),Xt=Fn=>Fn==="end"||Fn==="finish"||Fn==="prefinish",lr=Fn=>Fn instanceof ArrayBuffer||!!Fn&&typeof Fn=="object"&&Fn.constructor&&Fn.constructor.name==="ArrayBuffer"&&Fn.byteLength>=0,cr=Fn=>!Buffer.isBuffer(Fn)&&ArrayBuffer.isView(Fn),Ar=class{src;dest;opts;ondrain;constructor(Fn,Nn,Hi){this.src=Fn,this.dest=Nn,this.opts=Hi,this.ondrain=()=>Fn[ue](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(Fn){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},qr=class extends Ar{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(Fn,Nn,Hi){super(Fn,Nn,Hi),this.proxyErrors=po=>this.dest.emit("error",po),Fn.on("error",this.proxyErrors)}},_n=Fn=>!!Fn.objectMode,ke=Fn=>!Fn.objectMode&&!!Fn.encoding&&Fn.encoding!=="buffer",jt=class extends n.EventEmitter{[ce]=!1;[fe]=!1;[be]=[];[de]=[];[et];[ae];[Yt];[ne];[I]=!1;[b]=!1;[E]=!1;[B]=!1;[N]=null;[Se]=0;[ct]=!1;[er];[Nr]=!1;[vt]=0;[xt]=!1;writable=!0;readable=!0;constructor(...Fn){let Nn=Fn[0]||{};if(super(),Nn.objectMode&&typeof Nn.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");_n(Nn)?(this[et]=!0,this[ae]=null):ke(Nn)?(this[ae]=Nn.encoding,this[et]=!1):(this[et]=!1,this[ae]=null),this[Yt]=!!Nn.async,this[ne]=this[ae]?new o.StringDecoder(this[ae]):null,Nn&&Nn.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[de]}),Nn&&Nn.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[be]});let{signal:Hi}=Nn;Hi&&(this[er]=Hi,Hi.aborted?this[Tr]():Hi.addEventListener("abort",()=>this[Tr]()))}get bufferLength(){return this[Se]}get encoding(){return this[ae]}set encoding(Fn){throw new Error("Encoding must be set at instantiation time")}setEncoding(Fn){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[et]}set objectMode(Fn){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Yt]}set async(Fn){this[Yt]=this[Yt]||!!Fn}[Tr](){this[Nr]=!0,this.emit("abort",this[er]?.reason),this.destroy(this[er]?.reason)}get aborted(){return this[Nr]}set aborted(Fn){}write(Fn,Nn,Hi){if(this[Nr])return!1;if(this[I])throw new Error("write after end");if(this[ct])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Nn||(Nn="utf8");let po=this[Yt]?Zr:qt;if(!this[et]&&!Buffer.isBuffer(Fn)){if(cr(Fn))Fn=Buffer.from(Fn.buffer,Fn.byteOffset,Fn.byteLength);else if(lr(Fn))Fn=Buffer.from(Fn);else if(typeof Fn!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[et]?(this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce]):Fn.length?(typeof Fn=="string"&&!(Nn===this[ae]&&!this[ne]?.lastNeed)&&(Fn=Buffer.from(Fn,Nn)),Buffer.isBuffer(Fn)&&this[ae]&&(Fn=this[ne].write(Fn)),this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce]):(this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce])}read(Fn){if(this[ct])return null;if(this[xt]=!1,this[Se]===0||Fn===0||Fn&&Fn>this[Se])return this[C](),null;this[et]&&(Fn=null),this[de].length>1&&!this[et]&&(this[de]=[this[ae]?this[de].join(""):Buffer.concat(this[de],this[Se])]);let Nn=this[F](Fn||null,this[de][0]);return this[C](),Nn}[F](Fn,Nn){if(this[et])this[k]();else{let Hi=Nn;Fn===Hi.length||Fn===null?this[k]():typeof Hi=="string"?(this[de][0]=Hi.slice(Fn),Nn=Hi.slice(0,Fn),this[Se]-=Fn):(this[de][0]=Hi.subarray(Fn),Nn=Hi.subarray(0,Fn),this[Se]-=Fn)}return this.emit("data",Nn),!this[de].length&&!this[I]&&this.emit("drain"),Nn}end(Fn,Nn,Hi){return typeof Fn=="function"&&(Hi=Fn,Fn=void 0),typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Fn!==void 0&&this.write(Fn,Nn),Hi&&this.once("end",Hi),this[I]=!0,this.writable=!1,(this[ce]||!this[fe])&&this[C](),this}[ue](){this[ct]||(!this[vt]&&!this[be].length&&(this[xt]=!0),this[fe]=!1,this[ce]=!0,this.emit("resume"),this[de].length?this[Q]():this[I]?this[C]():this.emit("drain"))}resume(){return this[ue]()}pause(){this[ce]=!1,this[fe]=!0,this[xt]=!1}get destroyed(){return this[ct]}get flowing(){return this[ce]}get paused(){return this[fe]}[De](Fn){this[et]?this[Se]+=1:this[Se]+=Fn.length,this[de].push(Fn)}[k](){return this[et]?this[Se]-=1:this[Se]-=this[de][0].length,this[de].shift()}[Q](Fn=!1){do;while(this[X](this[k]())&&this[de].length);!Fn&&!this[de].length&&!this[I]&&this.emit("drain")}[X](Fn){return this.emit("data",Fn),this[ce]}pipe(Fn,Nn){if(this[ct])return Fn;this[xt]=!1;let Hi=this[b];return Nn=Nn||{},Fn===r.stdout||Fn===r.stderr?Nn.end=!1:Nn.end=Nn.end!==!1,Nn.proxyErrors=!!Nn.proxyErrors,Hi?Nn.end&&Fn.end():(this[be].push(Nn.proxyErrors?new qr(this,Fn,Nn):new Ar(this,Fn,Nn)),this[Yt]?Zr(()=>this[ue]()):this[ue]()),Fn}unpipe(Fn){let Nn=this[be].find(Hi=>Hi.dest===Fn);Nn&&(this[be].length===1?(this[ce]&&this[vt]===0&&(this[ce]=!1),this[be]=[]):this[be].splice(this[be].indexOf(Nn),1),Nn.unpipe())}addListener(Fn,Nn){return this.on(Fn,Nn)}on(Fn,Nn){let Hi=super.on(Fn,Nn);if(Fn==="data")this[xt]=!1,this[vt]++,!this[be].length&&!this[ce]&&this[ue]();else if(Fn==="readable"&&this[Se]!==0)super.emit("readable");else if(Xt(Fn)&&this[b])super.emit(Fn),this.removeAllListeners(Fn);else if(Fn==="error"&&this[N]){let po=Nn;this[Yt]?Zr(()=>po.call(this,this[N])):po.call(this,this[N])}return Hi}removeListener(Fn,Nn){return this.off(Fn,Nn)}off(Fn,Nn){let Hi=super.off(Fn,Nn);return Fn==="data"&&(this[vt]=this.listeners("data").length,this[vt]===0&&!this[xt]&&!this[be].length&&(this[ce]=!1)),Hi}removeAllListeners(Fn){let Nn=super.removeAllListeners(Fn);return(Fn==="data"||Fn===void 0)&&(this[vt]=0,!this[xt]&&!this[be].length&&(this[ce]=!1)),Nn}get emittedEnd(){return this[b]}[C](){!this[E]&&!this[b]&&!this[ct]&&this[de].length===0&&this[I]&&(this[E]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[B]&&this.emit("close"),this[E]=!1)}emit(Fn,...Nn){let Hi=Nn[0];if(Fn!=="error"&&Fn!=="close"&&Fn!==ct&&this[ct])return!1;if(Fn==="data")return!this[et]&&!Hi?!1:this[Yt]?(Zr(()=>this[je](Hi)),!0):this[je](Hi);if(Fn==="end")return this[St]();if(Fn==="close"){if(this[B]=!0,!this[b]&&!this[ct])return!1;let Vr=super.emit("close");return this.removeAllListeners("close"),Vr}else if(Fn==="error"){this[N]=Hi,super.emit(Me,Hi);let Vr=!this[er]||this.listeners("error").length?super.emit("error",Hi):!1;return this[C](),Vr}else if(Fn==="resume"){let Vr=super.emit("resume");return this[C](),Vr}else if(Fn==="finish"||Fn==="prefinish"){let Vr=super.emit(Fn);return this.removeAllListeners(Fn),Vr}let po=super.emit(Fn,...Nn);return this[C](),po}[je](Fn){for(let Hi of this[be])Hi.dest.write(Fn)===!1&&this.pause();let Nn=this[xt]?!1:super.emit("data",Fn);return this[C](),Nn}[St](){return this[b]?!1:(this[b]=!0,this.readable=!1,this[Yt]?(Zr(()=>this[At]()),!0):this[At]())}[At](){if(this[ne]){let Nn=this[ne].end();if(Nn){for(let Hi of this[be])Hi.dest.write(Nn);this[xt]||super.emit("data",Nn)}}for(let Nn of this[be])Nn.end();let Fn=super.emit("end");return this.removeAllListeners("end"),Fn}async collect(){let Fn=Object.assign([],{dataLength:0});this[et]||(Fn.dataLength=0);let Nn=this.promise();return this.on("data",Hi=>{Fn.push(Hi),this[et]||(Fn.dataLength+=Hi.length)}),await Nn,Fn}async concat(){if(this[et])throw new Error("cannot concat in objectMode");let Fn=await this.collect();return this[ae]?Fn.join(""):Buffer.concat(Fn,Fn.dataLength)}async promise(){return new Promise((Fn,Nn)=>{this.on(ct,()=>Nn(new Error("stream destroyed"))),this.on("error",Hi=>Nn(Hi)),this.on("end",()=>Fn())})}[Symbol.asyncIterator](){this[xt]=!1;let Fn=!1,Nn=async()=>(this.pause(),Fn=!0,{value:void 0,done:!0});return{next:()=>{if(Fn)return Nn();let Hi=this.read();if(Hi!==null)return Promise.resolve({done:!1,value:Hi});if(this[I])return Nn();let po,Vr,xi=Gc=>{this.off("data",io),this.off("end",ga),this.off(ct,Ya),Nn(),Vr(Gc)},io=Gc=>{this.off("error",xi),this.off("end",ga),this.off(ct,Ya),this.pause(),po({value:Gc,done:!!this[I]})},ga=()=>{this.off("error",xi),this.off("data",io),this.off(ct,Ya),Nn(),po({done:!0,value:void 0})},Ya=()=>xi(new Error("stream destroyed"));return new Promise((Gc,cl)=>{Vr=cl,po=Gc,this.once(ct,Ya),this.once("error",xi),this.once("end",ga),this.once("data",io)})},throw:Nn,return:Nn,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[xt]=!1;let Fn=!1,Nn=()=>(this.pause(),this.off(Me,Nn),this.off(ct,Nn),this.off("end",Nn),Fn=!0,{done:!0,value:void 0}),Hi=()=>{if(Fn)return Nn();let po=this.read();return po===null?Nn():{done:!1,value:po}};return this.once("end",Nn),this.once(Me,Nn),this.once(ct,Nn),{next:Hi,throw:Nn,return:Nn,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(Fn){if(this[ct])return Fn?this.emit("error",Fn):this.emit(ct),this;this[ct]=!0,this[xt]=!0,this[de].length=0,this[Se]=0;let Nn=this;return typeof Nn.close=="function"&&!this[B]&&Nn.close(),Fn?this.emit("error",Fn):this.emit(ct),this}static get isStream(){return e.isStream}};e.Minipass=jt}),w5e=yC(e=>{"use strict";var t=e&&e.__importDefault||function(vt){return vt&&vt.__esModule?vt:{default:vt}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteStreamSync=e.WriteStream=e.ReadStreamSync=e.ReadStream=void 0;var r=t(wt("events")),n=t(wt("fs")),a=B5e(),o=n.default.writev,l=Symbol("_autoClose"),A=Symbol("_close"),f=Symbol("_ended"),I=Symbol("_fd"),C=Symbol("_finished"),b=Symbol("_flags"),E=Symbol("_flush"),N=Symbol("_handleChunk"),B=Symbol("_makeBuf"),F=Symbol("_mode"),Q=Symbol("_needDrain"),X=Symbol("_onerror"),ae=Symbol("_onopen"),ne=Symbol("_onread"),ce=Symbol("_onwrite"),fe=Symbol("_open"),ue=Symbol("_path"),de=Symbol("_pos"),be=Symbol("_queue"),Se=Symbol("_read"),De=Symbol("_readSize"),k=Symbol("_reading"),et=Symbol("_remain"),ct=Symbol("_size"),Me=Symbol("_write"),je=Symbol("_writing"),St=Symbol("_defaultFlag"),At=Symbol("_errored"),Yt=class extends a.Minipass{[At]=!1;[I];[ue];[De];[k]=!1;[ct];[et];[l];constructor(vt,xt){if(xt=xt||{},super(xt),this.readable=!0,this.writable=!1,typeof vt!="string")throw new TypeError("path must be a string");this[At]=!1,this[I]=typeof xt.fd=="number"?xt.fd:void 0,this[ue]=vt,this[De]=xt.readSize||16*1024*1024,this[k]=!1,this[ct]=typeof xt.size=="number"?xt.size:1/0,this[et]=this[ct],this[l]=typeof xt.autoClose=="boolean"?xt.autoClose:!0,typeof this[I]=="number"?this[Se]():this[fe]()}get fd(){return this[I]}get path(){return this[ue]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[fe](){n.default.open(this[ue],"r",(vt,xt)=>this[ae](vt,xt))}[ae](vt,xt){vt?this[X](vt):(this[I]=xt,this.emit("open",xt),this[Se]())}[B](){return Buffer.allocUnsafe(Math.min(this[De],this[et]))}[Se](){if(!this[k]){this[k]=!0;let vt=this[B]();if(vt.length===0)return process.nextTick(()=>this[ne](null,0,vt));n.default.read(this[I],vt,0,vt.length,null,(xt,Zr,qt)=>this[ne](xt,Zr,qt))}}[ne](vt,xt,Zr){this[k]=!1,vt?this[X](vt):this[N](xt,Zr)&&this[Se]()}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.close(vt,xt=>xt?this.emit("error",xt):this.emit("close"))}}[X](vt){this[k]=!0,this[A](),this.emit("error",vt)}[N](vt,xt){let Zr=!1;return this[et]-=vt,vt>0&&(Zr=super.write(vtthis[ae](vt,xt))}[ae](vt,xt){this[St]&&this[b]==="r+"&&vt&&vt.code==="ENOENT"?(this[b]="w",this[fe]()):vt?this[X](vt):(this[I]=xt,this.emit("open",xt),this[je]||this[E]())}end(vt,xt){return vt&&this.write(vt,xt),this[f]=!0,!this[je]&&!this[be].length&&typeof this[I]=="number"&&this[ce](null,0),this}write(vt,xt){return typeof vt=="string"&&(vt=Buffer.from(vt,xt)),this[f]?(this.emit("error",new Error("write() after end()")),!1):this[I]===void 0||this[je]||this[be].length?(this[be].push(vt),this[Q]=!0,!1):(this[je]=!0,this[Me](vt),!0)}[Me](vt){n.default.write(this[I],vt,0,vt.length,this[de],(xt,Zr)=>this[ce](xt,Zr))}[ce](vt,xt){vt?this[X](vt):(this[de]!==void 0&&typeof xt=="number"&&(this[de]+=xt),this[be].length?this[E]():(this[je]=!1,this[f]&&!this[C]?(this[C]=!0,this[A](),this.emit("finish")):this[Q]&&(this[Q]=!1,this.emit("drain"))))}[E](){if(this[be].length===0)this[f]&&this[ce](null,0);else if(this[be].length===1)this[Me](this[be].pop());else{let vt=this[be];this[be]=[],o(this[I],vt,this[de],(xt,Zr)=>this[ce](xt,Zr))}}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.close(vt,xt=>xt?this.emit("error",xt):this.emit("close"))}}};e.WriteStream=Nr;var er=class extends Nr{[fe](){let vt;if(this[St]&&this[b]==="r+")try{vt=n.default.openSync(this[ue],this[b],this[F])}catch(xt){if(xt?.code==="ENOENT")return this[b]="w",this[fe]();throw xt}else vt=n.default.openSync(this[ue],this[b],this[F]);this[ae](null,vt)}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.closeSync(vt),this.emit("close")}}[Me](vt){let xt=!0;try{this[ce](null,n.default.writeSync(this[I],vt,0,vt.length,this[de])),xt=!1}finally{if(xt)try{this[A]()}catch{}}}};e.WriteStreamSync=er}),YAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dealias=e.isNoFile=e.isFile=e.isAsync=e.isSync=e.isAsyncNoFile=e.isSyncNoFile=e.isAsyncFile=e.isSyncFile=void 0;var t=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),r=E=>!!E.sync&&!!E.file;e.isSyncFile=r;var n=E=>!E.sync&&!!E.file;e.isAsyncFile=n;var a=E=>!!E.sync&&!E.file;e.isSyncNoFile=a;var o=E=>!E.sync&&!E.file;e.isAsyncNoFile=o;var l=E=>!!E.sync;e.isSync=l;var A=E=>!E.sync;e.isAsync=A;var f=E=>!!E.file;e.isFile=f;var I=E=>!E.file;e.isNoFile=I;var C=E=>t.get(E)||E,b=(E={})=>{if(!E)return{};let N={};for(let[B,F]of Object.entries(E)){let Q=C(B);N[Q]=F}return N.chmod===void 0&&N.noChmod===!1&&(N.chmod=!0),delete N.noChmod,N};e.dealias=b}),T5e=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.makeCommand=void 0;var t=YAr(),r=(n,a,o,l,A)=>Object.assign((f=[],I,C)=>{Array.isArray(f)&&(I=f,f={}),typeof I=="function"&&(C=I,I=void 0),I=I?Array.from(I):[];let b=(0,t.dealias)(f);if(A?.(b,I),(0,t.isSyncFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return n(b,I)}else if((0,t.isAsyncFile)(b)){let E=a(b,I);return C?E.then(()=>C(),C):E}else if((0,t.isSyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return o(b,I)}else if((0,t.isAsyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback only supported with file option");return l(b,I)}throw new Error("impossible options??")},{syncFile:n,asyncFile:a,syncNoFile:o,asyncNoFile:l,validate:A});e.makeCommand=r}),qZn=yC(e=>{"use strict";var t=e&&e.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(e,"__esModule",{value:!0}),e.constants=void 0;var r=t(wt("zlib")),n=r.default.constants||{ZLIB_VERNUM:4736};e.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},n))}),$Zn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(At,Yt,Tr,Nr){Nr===void 0&&(Nr=Tr);var er=Object.getOwnPropertyDescriptor(Yt,Tr);(!er||("get"in er?!Yt.__esModule:er.writable||er.configurable))&&(er={enumerable:!0,get:function(){return Yt[Tr]}}),Object.defineProperty(At,Nr,er)}:function(At,Yt,Tr,Nr){Nr===void 0&&(Nr=Tr),At[Nr]=Yt[Tr]}),r=e&&e.__setModuleDefault||(Object.create?function(At,Yt){Object.defineProperty(At,"default",{enumerable:!0,value:Yt})}:function(At,Yt){At.default=Yt}),n=e&&e.__importStar||function(){var At=function(Yt){return At=Object.getOwnPropertyNames||function(Tr){var Nr=[];for(var er in Tr)Object.prototype.hasOwnProperty.call(Tr,er)&&(Nr[Nr.length]=er);return Nr},At(Yt)};return function(Yt){if(Yt&&Yt.__esModule)return Yt;var Tr={};if(Yt!=null)for(var Nr=At(Yt),er=0;erAt,B=E?.writable===!0||E?.set!==void 0?At=>{l.Buffer.concat=At?N:b}:At=>{},F=Symbol("_superWrite"),Q=class extends Error{code;errno;constructor(At,Yt){super("zlib: "+At.message,{cause:At}),this.code=At.code,this.errno=At.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+At.message,Error.captureStackTrace(this,Yt??this.constructor)}get name(){return"ZlibError"}};e.ZlibError=Q;var X=Symbol("flushFlag"),ae=class extends A.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(At,Yt){if(!At||typeof At!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(At),this.#n=At.flush??0,this.#r=At.finishFlush??0,this.#i=At.fullFlushFlag??0,typeof f[Yt]!="function")throw new TypeError("Compression method not supported: "+Yt);try{this.#s=new f[Yt](At)}catch(Tr){throw new Q(Tr,this.constructor)}this.#o=Tr=>{this.#e||(this.#e=!0,this.close(),this.emit("error",Tr))},this.#s?.on("error",Tr=>this.#o(new Q(Tr))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,o.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(At){this.ended||(typeof At!="number"&&(At=this.#i),this.write(Object.assign(l.Buffer.alloc(0),{[X]:At})))}end(At,Yt,Tr){return typeof At=="function"&&(Tr=At,Yt=void 0,At=void 0),typeof Yt=="function"&&(Tr=Yt,Yt=void 0),At&&(Yt?this.write(At,Yt):this.write(At)),this.flush(this.#r),this.#t=!0,super.end(Tr)}get ended(){return this.#t}[F](At){return super.write(At)}write(At,Yt,Tr){if(typeof Yt=="function"&&(Tr=Yt,Yt="utf8"),typeof At=="string"&&(At=l.Buffer.from(At,Yt)),this.#e)return;(0,o.default)(this.#s,"zlib binding closed");let Nr=this.#s._handle,er=Nr.close;Nr.close=()=>{};let vt=this.#s.close;this.#s.close=()=>{},B(!0);let xt;try{let qt=typeof At[X]=="number"?At[X]:this.#n;xt=this.#s._processChunk(At,qt),B(!1)}catch(qt){B(!1),this.#o(new Q(qt,this.write))}finally{this.#s&&(this.#s._handle=Nr,Nr.close=er,this.#s.close=vt,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",qt=>this.#o(new Q(qt,this.write)));let Zr;if(xt)if(Array.isArray(xt)&&xt.length>0){let qt=xt[0];Zr=this[F](l.Buffer.from(qt));for(let Xt=1;Xt{typeof Nr=="function"&&(er=Nr,Nr=this.flushFlag),this.flush(Nr),er?.()};try{this.handle.params(At,Yt)}finally{this.handle.flush=Tr}this.handle&&(this.#e=At,this.#t=Yt)}}}};e.Zlib=ne;var ce=class extends ne{constructor(At){super(At,"Deflate")}};e.Deflate=ce;var fe=class extends ne{constructor(At){super(At,"Inflate")}};e.Inflate=fe;var ue=class extends ne{#e;constructor(At){super(At,"Gzip"),this.#e=At&&!!At.portable}[F](At){return this.#e?(this.#e=!1,At[9]=255,super[F](At)):super[F](At)}};e.Gzip=ue;var de=class extends ne{constructor(At){super(At,"Gunzip")}};e.Gunzip=de;var be=class extends ne{constructor(At){super(At,"DeflateRaw")}};e.DeflateRaw=be;var Se=class extends ne{constructor(At){super(At,"InflateRaw")}};e.InflateRaw=Se;var De=class extends ne{constructor(At){super(At,"Unzip")}};e.Unzip=De;var k=class extends ae{constructor(At,Yt){At=At||{},At.flush=At.flush||I.constants.BROTLI_OPERATION_PROCESS,At.finishFlush=At.finishFlush||I.constants.BROTLI_OPERATION_FINISH,At.fullFlushFlag=I.constants.BROTLI_OPERATION_FLUSH,super(At,Yt)}},et=class extends k{constructor(At){super(At,"BrotliCompress")}};e.BrotliCompress=et;var ct=class extends k{constructor(At){super(At,"BrotliDecompress")}};e.BrotliDecompress=ct;var Me=class extends ae{constructor(At,Yt){At=At||{},At.flush=At.flush||I.constants.ZSTD_e_continue,At.finishFlush=At.finishFlush||I.constants.ZSTD_e_end,At.fullFlushFlag=I.constants.ZSTD_e_flush,super(At,Yt)}},je=class extends Me{constructor(At){super(At,"ZstdCompress")}};e.ZstdCompress=je;var St=class extends Me{constructor(At){super(At,"ZstdDecompress")}};e.ZstdDecompress=St}),xOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.parse=e.encode=void 0;var t=(I,C)=>{if(Number.isSafeInteger(I))I<0?n(I,C):r(I,C);else throw Error("cannot encode number outside of javascript safe integer range");return C};e.encode=t;var r=(I,C)=>{C[0]=128;for(var b=C.length;b>1;b--)C[b-1]=I&255,I=Math.floor(I/256)},n=(I,C)=>{C[0]=255;var b=!1;I=I*-1;for(var E=C.length;E>1;E--){var N=I&255;I=Math.floor(I/256),b?C[E-1]=A(N):N===0?C[E-1]=0:(b=!0,C[E-1]=f(N))}},a=I=>{let C=I[0],b=C===128?l(I.subarray(1,I.length)):C===255?o(I):null;if(b===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(b))throw Error("parsed number outside of javascript safe integer range");return b};e.parse=a;var o=I=>{for(var C=I.length,b=0,E=!1,N=C-1;N>-1;N--){var B=Number(I[N]),F;E?F=A(B):B===0?F=B:(E=!0,F=f(B)),F!==0&&(b-=F*Math.pow(256,C-N-1))}return b},l=I=>{for(var C=I.length,b=0,E=C-1;E>-1;E--){var N=Number(I[E]);N!==0&&(b+=N*Math.pow(256,C-E-1))}return b},A=I=>(255^I)&255,f=I=>(255^I)+1&255}),eLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.code=e.name=e.isName=e.isCode=void 0;var t=n=>e.name.has(n);e.isCode=t;var r=n=>e.code.has(n);e.isName=r,e.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),e.code=new Map(Array.from(e.name).map(n=>[n[1],n[0]]))}),R5e=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(de,be,Se,De){De===void 0&&(De=Se);var k=Object.getOwnPropertyDescriptor(be,Se);(!k||("get"in k?!be.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return be[Se]}}),Object.defineProperty(de,De,k)}:function(de,be,Se,De){De===void 0&&(De=Se),de[De]=be[Se]}),r=e&&e.__setModuleDefault||(Object.create?function(de,be){Object.defineProperty(de,"default",{enumerable:!0,value:be})}:function(de,be){de.default=be}),n=e&&e.__importStar||function(){var de=function(be){return de=Object.getOwnPropertyNames||function(Se){var De=[];for(var k in Se)Object.prototype.hasOwnProperty.call(Se,k)&&(De[De.length]=k);return De},de(be)};return function(be){if(be&&be.__esModule)return be;var Se={};if(be!=null)for(var De=de(be),k=0;k=be+512))throw new Error("need 512 bytes for header");this.path=Se?.path??I(de,be,100),this.mode=Se?.mode??De?.mode??E(de,be+100,8),this.uid=Se?.uid??De?.uid??E(de,be+108,8),this.gid=Se?.gid??De?.gid??E(de,be+116,8),this.size=Se?.size??De?.size??E(de,be+124,12),this.mtime=Se?.mtime??De?.mtime??C(de,be+136,12),this.cksum=E(de,be+148,12),De&&this.#t(De,!0),Se&&this.#t(Se);let k=I(de,be+156,1);if(l.isCode(k)&&(this.#e=k||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=I(de,be+157,100),de.subarray(be+257,be+265).toString()==="ustar\x0000")if(this.uname=Se?.uname??De?.uname??I(de,be+265,32),this.gname=Se?.gname??De?.gname??I(de,be+297,32),this.devmaj=Se?.devmaj??De?.devmaj??E(de,be+329,8)??0,this.devmin=Se?.devmin??De?.devmin??E(de,be+337,8)??0,de[be+475]!==0){let ct=I(de,be+345,155);this.path=ct+"/"+this.path}else{let ct=I(de,be+345,130);ct&&(this.path=ct+"/"+this.path),this.atime=Se?.atime??De?.atime??C(de,be+476,12),this.ctime=Se?.ctime??De?.ctime??C(de,be+488,12)}let et=256;for(let ct=be;ct!(De==null||Se==="path"&&be||Se==="linkpath"&&be||Se==="global"))))}encode(de,be=0){if(de||(de=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(de.length>=be+512))throw new Error("need 512 bytes for header");let Se=this.ctime||this.atime?130:155,De=f(this.path||"",Se),k=De[0],et=De[1];this.needPax=!!De[2],this.needPax=ue(de,be,100,k)||this.needPax,this.needPax=Q(de,be+100,8,this.mode)||this.needPax,this.needPax=Q(de,be+108,8,this.uid)||this.needPax,this.needPax=Q(de,be+116,8,this.gid)||this.needPax,this.needPax=Q(de,be+124,12,this.size)||this.needPax,this.needPax=ce(de,be+136,12,this.mtime)||this.needPax,de[be+156]=Number(this.#e.codePointAt(0)),this.needPax=ue(de,be+157,100,this.linkpath)||this.needPax,de.write("ustar\x0000",be+257,8),this.needPax=ue(de,be+265,32,this.uname)||this.needPax,this.needPax=ue(de,be+297,32,this.gname)||this.needPax,this.needPax=Q(de,be+329,8,this.devmaj)||this.needPax,this.needPax=Q(de,be+337,8,this.devmin)||this.needPax,this.needPax=ue(de,be+345,Se,et)||this.needPax,de[be+475]!==0?this.needPax=ue(de,be+345,155,et)||this.needPax:(this.needPax=ue(de,be+345,130,et)||this.needPax,this.needPax=ce(de,be+476,12,this.atime)||this.needPax,this.needPax=ce(de,be+488,12,this.ctime)||this.needPax);let ct=256;for(let Me=be;Me{let Se=de,De="",k,et=a.posix.parse(de).root||".";if(Buffer.byteLength(Se)<100)k=[Se,De,!1];else{De=a.posix.dirname(Se),Se=a.posix.basename(Se);do Buffer.byteLength(Se)<=100&&Buffer.byteLength(De)<=be?k=[Se,De,!1]:Buffer.byteLength(Se)>100&&Buffer.byteLength(De)<=be?k=[Se.slice(0,99),De,!0]:(Se=a.posix.join(a.posix.basename(De),Se),De=a.posix.dirname(De));while(De!==et&&k===void 0);k||(k=[de.slice(0,99),"",!0])}return k},I=(de,be,Se)=>de.subarray(be,be+Se).toString("utf8").replace(/\0.*/,""),C=(de,be,Se)=>b(E(de,be,Se)),b=de=>de===void 0?void 0:new Date(de*1e3),E=(de,be,Se)=>Number(de[be])&128?o.parse(de.subarray(be,be+Se)):B(de,be,Se),N=de=>isNaN(de)?void 0:de,B=(de,be,Se)=>N(parseInt(de.subarray(be,be+Se).toString("utf8").replace(/\0.*$/,"").trim(),8)),F={12:8589934591,8:2097151},Q=(de,be,Se,De)=>De===void 0?!1:De>F[Se]||De<0?(o.encode(De,de.subarray(be,be+Se)),!0):(X(de,be,Se,De),!1),X=(de,be,Se,De)=>de.write(ae(De,Se),be,Se,"ascii"),ae=(de,be)=>ne(Math.floor(de).toString(8),be),ne=(de,be)=>(de.length===be-1?de:new Array(be-de.length-1).join("0")+de+" ")+"\0",ce=(de,be,Se,De)=>De===void 0?!1:Q(de,be,Se,De.getTime()/1e3),fe=new Array(156).join("\0"),ue=(de,be,Se,De)=>De===void 0?!1:(de.write(De+fe,be,Se,"utf8"),De.length!==Buffer.byteLength(De)||De.length>Se)}),QAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Pax=void 0;var t=wt("node:path"),r=R5e(),n=class tLn{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(f,I=!1){this.atime=f.atime,this.charset=f.charset,this.comment=f.comment,this.ctime=f.ctime,this.dev=f.dev,this.gid=f.gid,this.global=I,this.gname=f.gname,this.ino=f.ino,this.linkpath=f.linkpath,this.mtime=f.mtime,this.nlink=f.nlink,this.path=f.path,this.size=f.size,this.uid=f.uid,this.uname=f.uname}encode(){let f=this.encodeBody();if(f==="")return Buffer.allocUnsafe(0);let I=Buffer.byteLength(f),C=512*Math.ceil(1+I/512),b=Buffer.allocUnsafe(C);for(let E=0;E<512;E++)b[E]=0;new r.Header({path:("PaxHeader/"+(0,t.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:I,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(b),b.write(f,512,I,"utf8");for(let E=I+512;E=Math.pow(10,N)&&(N+=1),N+E+b}static parse(f,I,C=!1){return new tLn(a(o(f),I),C)}};e.Pax=n;var a=(A,f)=>f?Object.assign({},f,A):A,o=A=>A.replace(/\n$/,"").split(` -`).reduce(l,Object.create(null)),l=(A,f)=>{let I=parseInt(f,10);if(I!==Buffer.byteLength(f)+1)return A;f=f.slice((I+" ").length);let C=f.split("="),b=C.shift();if(!b)return A;let E=b.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),N=C.join("=");return A[E]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(E)?new Date(Number(N)*1e3):/^[0-9]+$/.test(N)?+N:N,A}}),N5e=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeWindowsPath=void 0;var t=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;e.normalizeWindowsPath=t!=="win32"?r=>r:r=>r&&r.replaceAll(/\\/g,"/")}),XAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ReadEntry=void 0;var t=B5e(),r=N5e(),n=class extends t.Minipass{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(a,o,l){switch(super({}),this.pause(),this.extended=o,this.globalExtended=l,this.header=a,this.remain=a.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=a.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!a.path)throw new Error("no path provided for tar.ReadEntry");this.path=(0,r.normalizeWindowsPath)(a.path),this.mode=a.mode,this.mode&&(this.mode=this.mode&4095),this.uid=a.uid,this.gid=a.gid,this.uname=a.uname,this.gname=a.gname,this.size=this.remain,this.mtime=a.mtime,this.atime=a.atime,this.ctime=a.ctime,this.linkpath=a.linkpath?(0,r.normalizeWindowsPath)(a.linkpath):void 0,this.uname=a.uname,this.gname=a.gname,o&&this.#e(o),l&&this.#e(l,!0)}write(a){let o=a.length;if(o>this.blockRemain)throw new Error("writing more to entry than is appropriate");let l=this.remain,A=this.blockRemain;return this.remain=Math.max(0,l-o),this.blockRemain=Math.max(0,A-o),this.ignore?!0:l>=o?super.write(a):super.write(a.subarray(0,l))}#e(a,o=!1){a.path&&(a.path=(0,r.normalizeWindowsPath)(a.path)),a.linkpath&&(a.linkpath=(0,r.normalizeWindowsPath)(a.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(a).filter(([l,A])=>!(A==null||l==="path"&&o))))}};e.ReadEntry=n}),JAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.warnMethod=void 0;var t=(r,n,a,o={})=>{r.file&&(o.file=r.file),r.cwd&&(o.cwd=r.cwd),o.code=a instanceof Error&&a.code||n,o.tarCode=n,!r.strict&&o.recoverable!==!1?(a instanceof Error&&(o=Object.assign(a,o),a=a.message),r.emit("warn",n,a,o)):a instanceof Error?r.emit("error",Object.assign(a,o)):r.emit("error",Object.assign(new Error(`${n}: ${a}`),o))};e.warnMethod=t}),UAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Parser=void 0;var t=wt("events"),r=$Zn(),n=R5e(),a=QAr(),o=XAr(),l=JAr(),A=1024*1024,f=Buffer.from([31,139]),I=Buffer.from([40,181,47,253]),C=Math.max(f.length,I.length),b=Symbol("state"),E=Symbol("writeEntry"),N=Symbol("readEntry"),B=Symbol("nextEntry"),F=Symbol("processEntry"),Q=Symbol("extendedHeader"),X=Symbol("globalExtendedHeader"),ae=Symbol("meta"),ne=Symbol("emitMeta"),ce=Symbol("buffer"),fe=Symbol("queue"),ue=Symbol("ended"),de=Symbol("emittedEnd"),be=Symbol("emit"),Se=Symbol("unzip"),De=Symbol("consumeChunk"),k=Symbol("consumeChunkSub"),et=Symbol("consumeBody"),ct=Symbol("consumeMeta"),Me=Symbol("consumeHeader"),je=Symbol("consuming"),St=Symbol("bufferConcat"),At=Symbol("maybeEnd"),Yt=Symbol("writing"),Tr=Symbol("aborted"),Nr=Symbol("onDone"),er=Symbol("sawValidEntry"),vt=Symbol("sawNullBlock"),xt=Symbol("sawEOF"),Zr=Symbol("closeStream"),qt=()=>!0,Xt=class extends t.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[fe]=[];[ce];[N];[E];[b]="begin";[ae]="";[Q];[X];[ue]=!1;[Se];[Tr]=!1;[er];[vt]=!1;[xt]=!1;[Yt]=!1;[je]=!1;[de]=!1;constructor(lr={}){super(),this.file=lr.file||"",this.on(Nr,()=>{(this[b]==="begin"||this[er]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),lr.ondone?this.on(Nr,lr.ondone):this.on(Nr,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!lr.strict,this.maxMetaEntrySize=lr.maxMetaEntrySize||A,this.filter=typeof lr.filter=="function"?lr.filter:qt;let cr=lr.file&&(lr.file.endsWith(".tar.br")||lr.file.endsWith(".tbr"));this.brotli=!(lr.gzip||lr.zstd)&&lr.brotli!==void 0?lr.brotli:cr?void 0:!1;let Ar=lr.file&&(lr.file.endsWith(".tar.zst")||lr.file.endsWith(".tzst"));this.zstd=!(lr.gzip||lr.brotli)&&lr.zstd!==void 0?lr.zstd:Ar?!0:void 0,this.on("end",()=>this[Zr]()),typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn),typeof lr.onReadEntry=="function"&&this.on("entry",lr.onReadEntry)}warn(lr,cr,Ar={}){(0,l.warnMethod)(this,lr,cr,Ar)}[Me](lr,cr){this[er]===void 0&&(this[er]=!1);let Ar;try{Ar=new n.Header(lr,cr,this[Q],this[X])}catch(qr){return this.warn("TAR_ENTRY_INVALID",qr)}if(Ar.nullBlock)this[vt]?(this[xt]=!0,this[b]==="begin"&&(this[b]="header"),this[be]("eof")):(this[vt]=!0,this[be]("nullBlock"));else if(this[vt]=!1,!Ar.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:Ar});else if(!Ar.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:Ar});else{let qr=Ar.type;if(/^(Symbolic)?Link$/.test(qr)&&!Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:Ar});else if(!/^(Symbolic)?Link$/.test(qr)&&!/^(Global)?ExtendedHeader$/.test(qr)&&Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:Ar});else{let _n=this[E]=new o.ReadEntry(Ar,this[Q],this[X]);if(!this[er])if(_n.remain){let ke=()=>{_n.invalid||(this[er]=!0)};_n.on("end",ke)}else this[er]=!0;_n.meta?_n.size>this.maxMetaEntrySize?(_n.ignore=!0,this[be]("ignoredEntry",_n),this[b]="ignore",_n.resume()):_n.size>0&&(this[ae]="",_n.on("data",ke=>this[ae]+=ke),this[b]="meta"):(this[Q]=void 0,_n.ignore=_n.ignore||!this.filter(_n.path,_n),_n.ignore?(this[be]("ignoredEntry",_n),this[b]=_n.remain?"ignore":"header",_n.resume()):(_n.remain?this[b]="body":(this[b]="header",_n.end()),this[N]?this[fe].push(_n):(this[fe].push(_n),this[B]())))}}}[Zr](){queueMicrotask(()=>this.emit("close"))}[F](lr){let cr=!0;if(!lr)this[N]=void 0,cr=!1;else if(Array.isArray(lr)){let[Ar,...qr]=lr;this.emit(Ar,...qr)}else this[N]=lr,this.emit("entry",lr),lr.emittedEnd||(lr.on("end",()=>this[B]()),cr=!1);return cr}[B](){do;while(this[F](this[fe].shift()));if(this[fe].length===0){let lr=this[N];!lr||lr.flowing||lr.size===lr.remain?this[Yt]||this.emit("drain"):lr.once("drain",()=>this.emit("drain"))}}[et](lr,cr){let Ar=this[E];if(!Ar)throw new Error("attempt to consume body without entry??");let qr=Ar.blockRemain??0,_n=qr>=lr.length&&cr===0?lr:lr.subarray(cr,cr+qr);return Ar.write(_n),Ar.blockRemain||(this[b]="header",this[E]=void 0,Ar.end()),_n.length}[ct](lr,cr){let Ar=this[E],qr=this[et](lr,cr);return!this[E]&&Ar&&this[ne](Ar),qr}[be](lr,cr,Ar){this[fe].length===0&&!this[N]?this.emit(lr,cr,Ar):this[fe].push([lr,cr,Ar])}[ne](lr){switch(this[be]("meta",this[ae]),lr.type){case"ExtendedHeader":case"OldExtendedHeader":this[Q]=a.Pax.parse(this[ae],this[Q],!1);break;case"GlobalExtendedHeader":this[X]=a.Pax.parse(this[ae],this[X],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let cr=this[Q]??Object.create(null);this[Q]=cr,cr.path=this[ae].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let cr=this[Q]||Object.create(null);this[Q]=cr,cr.linkpath=this[ae].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+lr.type)}}abort(lr){this[Tr]=!0,this.emit("abort",lr),this.warn("TAR_ABORT",lr,{recoverable:!1})}write(lr,cr,Ar){if(typeof cr=="function"&&(Ar=cr,cr=void 0),typeof lr=="string"&&(lr=Buffer.from(lr,typeof cr=="string"?cr:"utf8")),this[Tr])return Ar?.(),!1;if((this[Se]===void 0||this.brotli===void 0&&this[Se]===!1)&&lr){if(this[ce]&&(lr=Buffer.concat([this[ce],lr]),this[ce]=void 0),lr.lengththis[De](Nn)),this[Se].on("error",Nn=>this.abort(Nn)),this[Se].on("end",()=>{this[ue]=!0,this[De]()}),this[Yt]=!0;let Fn=!!this[Se][jt?"end":"write"](lr);return this[Yt]=!1,Ar?.(),Fn}}this[Yt]=!0,this[Se]?this[Se].write(lr):this[De](lr),this[Yt]=!1;let qr=this[fe].length>0?!1:this[N]?this[N].flowing:!0;return!qr&&this[fe].length===0&&this[N]?.once("drain",()=>this.emit("drain")),Ar?.(),qr}[St](lr){lr&&!this[Tr]&&(this[ce]=this[ce]?Buffer.concat([this[ce],lr]):lr)}[At](){if(this[ue]&&!this[de]&&!this[Tr]&&!this[je]){this[de]=!0;let lr=this[E];if(lr&&lr.blockRemain){let cr=this[ce]?this[ce].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${lr.blockRemain} more bytes, only ${cr} available)`,{entry:lr}),this[ce]&&lr.write(this[ce]),lr.end()}this[be](Nr)}}[De](lr){if(this[je]&&lr)this[St](lr);else if(!lr&&!this[ce])this[At]();else if(lr){if(this[je]=!0,this[ce]){this[St](lr);let cr=this[ce];this[ce]=void 0,this[k](cr)}else this[k](lr);for(;this[ce]&&this[ce]?.length>=512&&!this[Tr]&&!this[xt];){let cr=this[ce];this[ce]=void 0,this[k](cr)}this[je]=!1}(!this[ce]||this[ue])&&this[At]()}[k](lr){let cr=0,Ar=lr.length;for(;cr+512<=Ar&&!this[Tr]&&!this[xt];)switch(this[b]){case"begin":case"header":this[Me](lr,cr),cr+=512;break;case"ignore":case"body":cr+=this[et](lr,cr);break;case"meta":cr+=this[ct](lr,cr);break;default:throw new Error("invalid state: "+this[b])}cr{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripTrailingSlashes=void 0;var t=r=>{let n=r.length-1,a=-1;for(;n>-1&&r.charAt(n)==="/";)a=n,n--;return a===-1?r:r.slice(0,a)};e.stripTrailingSlashes=t}),D5e=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(F,Q,X,ae){ae===void 0&&(ae=X);var ne=Object.getOwnPropertyDescriptor(Q,X);(!ne||("get"in ne?!Q.__esModule:ne.writable||ne.configurable))&&(ne={enumerable:!0,get:function(){return Q[X]}}),Object.defineProperty(F,ae,ne)}:function(F,Q,X,ae){ae===void 0&&(ae=X),F[ae]=Q[X]}),r=e&&e.__setModuleDefault||(Object.create?function(F,Q){Object.defineProperty(F,"default",{enumerable:!0,value:Q})}:function(F,Q){F.default=Q}),n=e&&e.__importStar||function(){var F=function(Q){return F=Object.getOwnPropertyNames||function(X){var ae=[];for(var ne in X)Object.prototype.hasOwnProperty.call(X,ne)&&(ae[ae.length]=ne);return ae},F(Q)};return function(Q){if(Q&&Q.__esModule)return Q;var X={};if(Q!=null)for(var ae=F(Q),ne=0;ne{let Q=F.onReadEntry;F.onReadEntry=Q?X=>{Q(X),X.resume()}:X=>X.resume()},E=(F,Q)=>{let X=new Map(Q.map(ce=>[(0,C.stripTrailingSlashes)(ce),!0])),ae=F.filter,ne=(ce,fe="")=>{let ue=fe||(0,A.parse)(ce).root||".",de;if(ce===ue)de=!1;else{let be=X.get(ce);de=be!==void 0?be:ne((0,A.dirname)(ce),ue)}return X.set(ce,de),de};F.filter=ae?(ce,fe)=>ae(ce,fe)&&ne((0,C.stripTrailingSlashes)(ce)):ce=>ne((0,C.stripTrailingSlashes)(ce))};e.filesFilter=E;var N=F=>{let Q=new I.Parser(F),X=F.file,ae;try{ae=l.default.openSync(X,"r");let ne=l.default.fstatSync(ae),ce=F.maxReadSize||16*1024*1024;if(ne.size{let X=new I.Parser(F),ae=F.maxReadSize||16*1024*1024,ne=F.file;return new Promise((ce,fe)=>{X.on("error",fe),X.on("end",ce),l.default.stat(ne,(ue,de)=>{if(ue)fe(ue);else{let be=new o.ReadStream(ne,{readSize:ae,size:de.size});be.on("error",fe),be.pipe(X)}})})};e.list=(0,f.makeCommand)(N,B,F=>new I.Parser(F),F=>new I.Parser(F),(F,Q)=>{Q?.length&&(0,e.filesFilter)(F,Q),F.noResume||b(F)})}),GOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.modeFix=void 0;var t=(r,n,a)=>(r&=4095,a&&(r=(r|384)&-19),n&&(r&256&&(r|=64),r&32&&(r|=8),r&4&&(r|=1)),r);e.modeFix=t}),rLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripAbsolutePath=void 0;var t=wt("node:path"),{isAbsolute:r,parse:n}=t.win32,a=o=>{let l="",A=n(o);for(;r(o)||A.root;){let f=o.charAt(0)==="/"&&o.slice(0,4)!=="//?/"?"/":A.root;o=o.slice(f.length),l+=f,A=n(o)}return[l,o]};e.stripAbsolutePath=a}),nLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;var t=["|","<",">","?",":"],r=t.map(A=>String.fromCodePoint(61440+Number(A.codePointAt(0)))),n=new Map(t.map((A,f)=>[A,r[f]])),a=new Map(r.map((A,f)=>[A,t[f]])),o=A=>t.reduce((f,I)=>f.split(I).join(n.get(I)),A);e.encode=o;var l=A=>r.reduce((f,I)=>f.split(I).join(a.get(I)),A);e.decode=l}),iLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(qt,Xt,lr,cr){cr===void 0&&(cr=lr);var Ar=Object.getOwnPropertyDescriptor(Xt,lr);(!Ar||("get"in Ar?!Xt.__esModule:Ar.writable||Ar.configurable))&&(Ar={enumerable:!0,get:function(){return Xt[lr]}}),Object.defineProperty(qt,cr,Ar)}:function(qt,Xt,lr,cr){cr===void 0&&(cr=lr),qt[cr]=Xt[lr]}),r=e&&e.__setModuleDefault||(Object.create?function(qt,Xt){Object.defineProperty(qt,"default",{enumerable:!0,value:Xt})}:function(qt,Xt){qt.default=Xt}),n=e&&e.__importStar||function(){var qt=function(Xt){return qt=Object.getOwnPropertyNames||function(lr){var cr=[];for(var Ar in lr)Object.prototype.hasOwnProperty.call(lr,Ar)&&(cr[cr.length]=Ar);return cr},qt(Xt)};return function(Xt){if(Xt&&Xt.__esModule)return Xt;var lr={};if(Xt!=null)for(var cr=qt(Xt),Ar=0;ArXt?(qt=(0,C.normalizeWindowsPath)(qt).replace(/^\.(\/|$)/,""),(0,B.stripTrailingSlashes)(Xt)+"/"+qt):(0,C.normalizeWindowsPath)(qt),ae=16*1024*1024,ne=Symbol("process"),ce=Symbol("file"),fe=Symbol("directory"),ue=Symbol("symlink"),de=Symbol("hardlink"),be=Symbol("header"),Se=Symbol("read"),De=Symbol("lstat"),k=Symbol("onlstat"),et=Symbol("onread"),ct=Symbol("onreadlink"),Me=Symbol("openfile"),je=Symbol("onopenfile"),St=Symbol("close"),At=Symbol("mode"),Yt=Symbol("awaitDrain"),Tr=Symbol("ondrain"),Nr=Symbol("prefix"),er=class extends l.Minipass{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#e=!1;constructor(qt,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.path=(0,C.normalizeWindowsPath)(qt),this.portable=!!lr.portable,this.maxReadSize=lr.maxReadSize||ae,this.linkCache=lr.linkCache||new Map,this.statCache=lr.statCache||new Map,this.preservePaths=!!lr.preservePaths,this.cwd=(0,C.normalizeWindowsPath)(lr.cwd||process.cwd()),this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.mtime=lr.mtime,this.prefix=lr.prefix?(0,C.normalizeWindowsPath)(lr.prefix):void 0,this.onWriteEntry=lr.onWriteEntry,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let cr=!1;if(!this.preservePaths){let[qr,_n]=(0,N.stripAbsolutePath)(this.path);qr&&typeof _n=="string"&&(this.path=_n,cr=qr)}this.win32=!!lr.win32||process.platform==="win32",this.win32&&(this.path=Q.decode(this.path.replaceAll(/\\/g,"/")),qt=qt.replaceAll(/\\/g,"/")),this.absolute=(0,C.normalizeWindowsPath)(lr.absolute||A.default.resolve(this.cwd,qt)),this.path===""&&(this.path="./"),cr&&this.warn("TAR_ENTRY_INFO",`stripping ${cr} from absolute path`,{entry:this,path:cr+this.path});let Ar=this.statCache.get(this.absolute);Ar?this[k](Ar):this[De]()}warn(qt,Xt,lr={}){return(0,F.warnMethod)(this,qt,Xt,lr)}emit(qt,...Xt){return qt==="error"&&(this.#e=!0),super.emit(qt,...Xt)}[De](){o.default.lstat(this.absolute,(qt,Xt)=>{if(qt)return this.emit("error",qt);this[k](Xt)})}[k](qt){this.statCache.set(this.absolute,qt),this.stat=qt,qt.isFile()||(qt.size=0),this.type=Zr(qt),this.emit("stat",qt),this[ne]()}[ne](){switch(this.type){case"File":return this[ce]();case"Directory":return this[fe]();case"SymbolicLink":return this[ue]();default:return this.end()}}[At](qt){return(0,I.modeFix)(qt,this.type==="Directory",this.portable)}[Nr](qt){return X(qt,this.prefix)}[be](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new f.Header({path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,mode:this[At](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let qt=this.header?.block;if(!qt)throw new Error("failed to encode header");super.write(qt)}[fe](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[be](),this.end()}[ue](){o.default.readlink(this.absolute,(qt,Xt)=>{if(qt)return this.emit("error",qt);this[ct](Xt)})}[ct](qt){this.linkpath=(0,C.normalizeWindowsPath)(qt),this[be](),this.end()}[de](qt){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=(0,C.normalizeWindowsPath)(A.default.relative(this.cwd,qt)),this.stat.size=0,this[be](),this.end()}[ce](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let qt=`${this.stat.dev}:${this.stat.ino}`,Xt=this.linkCache.get(qt);if(Xt?.indexOf(this.cwd)===0)return this[de](Xt);this.linkCache.set(qt,this.absolute)}if(this[be](),this.stat.size===0)return this.end();this[Me]()}[Me](){o.default.open(this.absolute,"r",(qt,Xt)=>{if(qt)return this.emit("error",qt);this[je](Xt)})}[je](qt){if(this.fd=qt,this.#e)return this[St]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let Xt=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(Xt),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[Se]()}[Se](){let{fd:qt,buf:Xt,offset:lr,length:cr,pos:Ar}=this;if(qt===void 0||Xt===void 0)throw new Error("cannot read file without first opening");o.default.read(qt,Xt,lr,cr,Ar,(qr,_n)=>{if(qr)return this[St](()=>this.emit("error",qr));this[et](_n)})}[St](qt=()=>{}){this.fd!==void 0&&o.default.close(this.fd,qt)}[et](qt){if(qt<=0&&this.remain>0){let lr=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[St](()=>this.emit("error",lr))}if(qt>this.remain){let lr=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[St](()=>this.emit("error",lr))}if(!this.buf)throw new Error("should have created buffer prior to reading");if(qt===this.remain)for(let lr=qt;lrthis[Tr]())}[Yt](qt){this.once("drain",qt)}write(qt,Xt,lr){if(typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,typeof Xt=="string"?Xt:"utf8")),this.blockRemainqt?this.emit("error",qt):this.end());if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[Se]()}};e.WriteEntry=er;var vt=class extends er{sync=!0;[De](){this[k](o.default.lstatSync(this.absolute))}[ue](){this[ct](o.default.readlinkSync(this.absolute))}[Me](){this[je](o.default.openSync(this.absolute,"r"))}[Se](){let qt=!0;try{let{fd:Xt,buf:lr,offset:cr,length:Ar,pos:qr}=this;if(Xt===void 0||lr===void 0)throw new Error("fd and buf must be set in READ method");let _n=o.default.readSync(Xt,lr,cr,Ar,qr);this[et](_n),qt=!1}finally{if(qt)try{this[St](()=>{})}catch{}}}[Yt](qt){qt()}[St](qt=()=>{}){this.fd!==void 0&&o.default.closeSync(this.fd),qt()}};e.WriteEntrySync=vt;var xt=class extends l.Minipass{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn(qt,Xt,lr={}){return(0,F.warnMethod)(this,qt,Xt,lr)}constructor(qt,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.preservePaths=!!lr.preservePaths,this.portable=!!lr.portable,this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.onWriteEntry=lr.onWriteEntry,this.readEntry=qt;let{type:cr}=qt;if(cr==="Unsupported")throw new Error("writing entry that should be ignored");this.type=cr,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=lr.prefix,this.path=(0,C.normalizeWindowsPath)(qt.path),this.mode=qt.mode!==void 0?this[At](qt.mode):void 0,this.uid=this.portable?void 0:qt.uid,this.gid=this.portable?void 0:qt.gid,this.uname=this.portable?void 0:qt.uname,this.gname=this.portable?void 0:qt.gname,this.size=qt.size,this.mtime=this.noMtime?void 0:lr.mtime||qt.mtime,this.atime=this.portable?void 0:qt.atime,this.ctime=this.portable?void 0:qt.ctime,this.linkpath=qt.linkpath!==void 0?(0,C.normalizeWindowsPath)(qt.linkpath):void 0,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let Ar=!1;if(!this.preservePaths){let[_n,ke]=(0,N.stripAbsolutePath)(this.path);_n&&typeof ke=="string"&&(this.path=ke,Ar=_n)}this.remain=qt.size,this.blockRemain=qt.startBlockSize,this.onWriteEntry?.(this),this.header=new f.Header({path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),Ar&&this.warn("TAR_ENTRY_INFO",`stripping ${Ar} from absolute path`,{entry:this,path:Ar+this.path}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let qr=this.header?.block;if(!qr)throw new Error("failed to encode header");super.write(qr),qt.pipe(this)}[Nr](qt){return X(qt,this.prefix)}[At](qt){return(0,I.modeFix)(qt,this.type==="Directory",this.portable)}write(qt,Xt,lr){typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,typeof Xt=="string"?Xt:"utf8"));let cr=qt.length;if(cr>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=cr,super.write(qt,lr)}end(qt,Xt,lr){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof qt=="function"&&(lr=qt,Xt=void 0,qt=void 0),typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,Xt??"utf8")),lr&&this.once("finish",lr),qt?super.end(qt,lr):super.end(lr),this}};e.WriteEntryTar=xt;var Zr=qt=>qt.isFile()?"File":qt.isDirectory()?"Directory":qt.isSymbolicLink()?"SymbolicLink":"Unsupported"}),FOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Node=e.Yallist=void 0;var t=class Tve{tail;head;length=0;static create(A=[]){return new Tve(A)}constructor(A=[]){for(let f of A)this.push(f)}*[Symbol.iterator](){for(let A=this.head;A;A=A.next)yield A.value}removeNode(A){if(A.list!==this)throw new Error("removing node which does not belong to this list");let f=A.next,I=A.prev;return f&&(f.prev=I),I&&(I.next=f),A===this.head&&(this.head=f),A===this.tail&&(this.tail=I),this.length--,A.next=void 0,A.prev=void 0,A.list=void 0,f}unshiftNode(A){if(A===this.head)return;A.list&&A.list.removeNode(A);let f=this.head;A.list=this,A.next=f,f&&(f.prev=A),this.head=A,this.tail||(this.tail=A),this.length++}pushNode(A){if(A===this.tail)return;A.list&&A.list.removeNode(A);let f=this.tail;A.list=this,A.prev=f,f&&(f.next=A),this.tail=A,this.head||(this.head=A),this.length++}push(...A){for(let f=0,I=A.length;f1)I=f;else if(this.head)C=this.head.next,I=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var b=0;C;b++)I=A(I,C.value,b),C=C.next;return I}reduceReverse(A,f){let I,C=this.tail;if(arguments.length>1)I=f;else if(this.tail)C=this.tail.prev,I=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let b=this.length-1;C;b--)I=A(I,C.value,b),C=C.prev;return I}toArray(){let A=new Array(this.length);for(let f=0,I=this.head;I;f++)A[f]=I.value,I=I.next;return A}toArrayReverse(){let A=new Array(this.length);for(let f=0,I=this.tail;I;f++)A[f]=I.value,I=I.prev;return A}slice(A=0,f=this.length){f<0&&(f+=this.length),A<0&&(A+=this.length);let I=new Tve;if(fthis.length&&(f=this.length);let C=this.head,b=0;for(b=0;C&&bthis.length&&(f=this.length);let C=this.length,b=this.tail;for(;b&&C>f;C--)b=b.prev;for(;b&&C>A;C--,b=b.prev)I.push(b.value);return I}splice(A,f=0,...I){A>this.length&&(A=this.length-1),A<0&&(A=this.length+A);let C=this.head;for(let E=0;C&&E{"use strict";var t=e&&e.__createBinding||(Object.create?function(vt,xt,Zr,qt){qt===void 0&&(qt=Zr);var Xt=Object.getOwnPropertyDescriptor(xt,Zr);(!Xt||("get"in Xt?!xt.__esModule:Xt.writable||Xt.configurable))&&(Xt={enumerable:!0,get:function(){return xt[Zr]}}),Object.defineProperty(vt,qt,Xt)}:function(vt,xt,Zr,qt){qt===void 0&&(qt=Zr),vt[qt]=xt[Zr]}),r=e&&e.__setModuleDefault||(Object.create?function(vt,xt){Object.defineProperty(vt,"default",{enumerable:!0,value:xt})}:function(vt,xt){vt.default=xt}),n=e&&e.__importStar||function(){var vt=function(xt){return vt=Object.getOwnPropertyNames||function(Zr){var qt=[];for(var Xt in Zr)Object.prototype.hasOwnProperty.call(Zr,Xt)&&(qt[qt.length]=Xt);return qt},vt(xt)};return function(xt){if(xt&&xt.__esModule)return xt;var Zr={};if(xt!=null)for(var qt=vt(xt),Xt=0;Xt1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(vt.gzip&&(typeof vt.gzip!="object"&&(vt.gzip={}),this.portable&&(vt.gzip.portable=!0),this.zip=new I.Gzip(vt.gzip)),vt.brotli&&(typeof vt.brotli!="object"&&(vt.brotli={}),this.zip=new I.BrotliCompress(vt.brotli)),vt.zstd&&(typeof vt.zstd!="object"&&(vt.zstd={}),this.zip=new I.ZstdCompress(vt.zstd)),!this.zip)throw new Error("impossible");let xt=this.zip;xt.on("data",Zr=>super.write(Zr)),xt.on("end",()=>super.end()),xt.on("drain",()=>this[At]()),this.on("resume",()=>xt.resume())}else this.on("drain",this[At]);this.noDirRecurse=!!vt.noDirRecurse,this.follow=!!vt.follow,this.noMtime=!!vt.noMtime,vt.mtime&&(this.mtime=vt.mtime),this.filter=typeof vt.filter=="function"?vt.filter:()=>!0,this[Q]=new C.Yallist,this[fe]=0,this.jobs=Number(vt.jobs)||4,this[ne]=!1,this[F]=!1}[St](vt){return super.write(vt)}add(vt){return this.write(vt),this}end(vt,xt,Zr){return typeof vt=="function"&&(Zr=vt,vt=void 0),typeof xt=="function"&&(Zr=xt,xt=void 0),vt&&this.add(vt),this[F]=!0,this[ae](),Zr&&Zr(),this}write(vt){if(this[F])throw new Error("write after end");return vt instanceof b.ReadEntry?this[be](vt):this[de](vt),this.flowing}[be](vt){let xt=(0,Tr.normalizeWindowsPath)(Yt.default.resolve(this.cwd,vt.path));if(!this.filter(vt.path,vt))vt.resume();else{let Zr=new A(vt.path,xt);Zr.entry=new l.WriteEntryTar(vt,this[Me](Zr)),Zr.entry.on("end",()=>this[ue](Zr)),this[fe]+=1,this[Q].push(Zr)}this[ae]()}[de](vt){let xt=(0,Tr.normalizeWindowsPath)(Yt.default.resolve(this.cwd,vt));this[Q].push(new A(vt,xt)),this[ae]()}[Se](vt){vt.pending=!0,this[fe]+=1;let xt=this.follow?"stat":"lstat";o.default[xt](vt.absolute,(Zr,qt)=>{vt.pending=!1,this[fe]-=1,Zr?this.emit("error",Zr):this[B](vt,qt)})}[B](vt,xt){this.statCache.set(vt.absolute,xt),vt.stat=xt,this.filter(vt.path,xt)?xt.isFile()&&xt.nlink>1&&vt===this[X]&&!this.linkCache.get(`${xt.dev}:${xt.ino}`)&&!this.sync&&this[ce](vt):vt.ignore=!0,this[ae]()}[De](vt){vt.pending=!0,this[fe]+=1,o.default.readdir(vt.absolute,(xt,Zr)=>{if(vt.pending=!1,this[fe]-=1,xt)return this.emit("error",xt);this[k](vt,Zr)})}[k](vt,xt){this.readdirCache.set(vt.absolute,xt),vt.readdir=xt,this[ae]()}[ae](){if(!this[ne]){this[ne]=!0;for(let vt=this[Q].head;vt&&this[fe]this.warn(xt,Zr,qt),noPax:this.noPax,cwd:this.cwd,absolute:vt.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[ct](vt){this[fe]+=1;try{return new this[je](vt.path,this[Me](vt)).on("end",()=>this[ue](vt)).on("error",xt=>this.emit("error",xt))}catch(xt){this.emit("error",xt)}}[At](){this[X]&&this[X].entry&&this[X].entry.resume()}[et](vt){vt.piped=!0,vt.readdir&&vt.readdir.forEach(qt=>{let Xt=vt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+qt)});let xt=vt.entry,Zr=this.zip;if(!xt)throw new Error("cannot pipe without source");Zr?xt.on("data",qt=>{Zr.write(qt)||xt.pause()}):xt.on("data",qt=>{super.write(qt)||xt.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(vt,xt,Zr={}){(0,E.warnMethod)(this,vt,xt,Zr)}};e.Pack=Nr;var er=class extends Nr{sync=!0;constructor(vt){super(vt),this[je]=l.WriteEntrySync}pause(){}resume(){}[Se](vt){let xt=this.follow?"statSync":"lstatSync";this[B](vt,o.default[xt](vt.absolute))}[De](vt){this[k](vt,o.default.readdirSync(vt.absolute))}[et](vt){let xt=vt.entry,Zr=this.zip;if(vt.readdir&&vt.readdir.forEach(qt=>{let Xt=vt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+qt)}),!xt)throw new Error("Cannot pipe without source");Zr?xt.on("data",qt=>{Zr.write(qt)}):xt.on("data",qt=>{super[St](qt)})}};e.PackSync=er}),sLn=yC(e=>{"use strict";var t=e&&e.__importDefault||function(N){return N&&N.__esModule?N:{default:N}};Object.defineProperty(e,"__esModule",{value:!0}),e.create=void 0;var r=w5e(),n=t(wt("node:path")),a=D5e(),o=T5e(),l=jAr(),A=(N,B)=>{let F=new l.PackSync(N),Q=new r.WriteStreamSync(N.file,{mode:N.mode||438});F.pipe(Q),I(F,B)},f=(N,B)=>{let F=new l.Pack(N),Q=new r.WriteStream(N.file,{mode:N.mode||438});F.pipe(Q);let X=new Promise((ae,ne)=>{Q.on("error",ne),Q.on("close",ae),F.on("error",ne)});return C(F,B).catch(ae=>F.emit("error",ae)),X},I=(N,B)=>{B.forEach(F=>{F.charAt(0)==="@"?(0,a.list)({file:n.default.resolve(N.cwd,F.slice(1)),sync:!0,noResume:!0,onReadEntry:Q=>N.add(Q)}):N.add(F)}),N.end()},C=async(N,B)=>{for(let F of B)F.charAt(0)==="@"?await(0,a.list)({file:n.default.resolve(String(N.cwd),F.slice(1)),noResume:!0,onReadEntry:Q=>{N.add(Q)}}):N.add(F);N.end()},b=(N,B)=>{let F=new l.PackSync(N);return I(F,B),F},E=(N,B)=>{let F=new l.Pack(N);return C(F,B).catch(Q=>F.emit("error",Q)),F};e.create=(0,o.makeCommand)(A,f,b,E,(N,B)=>{if(!B?.length)throw new TypeError("no paths specified to add to archive")})}),ZOo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(B){return B&&B.__esModule?B:{default:B}};Object.defineProperty(e,"__esModule",{value:!0}),e.getWriteFlag=void 0;var r=t(wt("fs")),n=process.platform,a=n==="win32",{O_CREAT:o,O_NOFOLLOW:l,O_TRUNC:A,O_WRONLY:f}=r.default.constants,I=Number(process.env.__FAKE_FS_O_FILENAME__)||r.default.constants.UV_FS_O_FILEMAP||0,C=a&&!!I,b=512*1024,E=I|A|o|f,N=!a&&typeof l=="number"?l|A|o|f:null;e.getWriteFlag=N!==null?()=>N:C?B=>B"w"}),LOo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(C){return C&&C.__esModule?C:{default:C}};Object.defineProperty(e,"__esModule",{value:!0}),e.chownrSync=e.chownr=void 0;var r=t(wt("node:fs")),n=t(wt("node:path")),a=(C,b,E)=>{try{return r.default.lchownSync(C,b,E)}catch(N){if(N?.code!=="ENOENT")throw N}},o=(C,b,E,N)=>{r.default.lchown(C,b,E,B=>{N(B&&B?.code!=="ENOENT"?B:null)})},l=(C,b,E,N,B)=>{if(b.isDirectory())(0,e.chownr)(n.default.resolve(C,b.name),E,N,F=>{if(F)return B(F);let Q=n.default.resolve(C,b.name);o(Q,E,N,B)});else{let F=n.default.resolve(C,b.name);o(F,E,N,B)}},A=(C,b,E,N)=>{r.default.readdir(C,{withFileTypes:!0},(B,F)=>{if(B){if(B.code==="ENOENT")return N();if(B.code!=="ENOTDIR"&&B.code!=="ENOTSUP")return N(B)}if(B||!F.length)return o(C,b,E,N);let Q=F.length,X=null,ae=ne=>{if(!X){if(ne)return N(X=ne);if(--Q===0)return o(C,b,E,N)}};for(let ne of F)l(C,ne,b,E,ae)})};e.chownr=A;var f=(C,b,E,N)=>{b.isDirectory()&&(0,e.chownrSync)(n.default.resolve(C,b.name),E,N),a(n.default.resolve(C,b.name),E,N)},I=(C,b,E)=>{let N;try{N=r.default.readdirSync(C,{withFileTypes:!0})}catch(B){let F=B;if(F?.code==="ENOENT")return;if(F?.code==="ENOTDIR"||F?.code==="ENOTSUP")return a(C,b,E);throw F}for(let B of N)f(C,B,b,E);return a(C,b,E)};e.chownrSync=I}),VOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CwdError=void 0;var t=class extends Error{path;code;syscall="chdir";constructor(r,n){super(`${n}: Cannot cd into '${r}'`),this.path=r,this.code=n}get name(){return"CwdError"}};e.CwdError=t}),oLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SymlinkError=void 0;var t=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(r,n){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=r,this.path=n}get name(){return"SymlinkError"}};e.SymlinkError=t}),POo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.mkdirSync=e.mkdir=void 0;var r=LOo(),n=t(wt("node:fs")),a=t(wt("node:fs/promises")),o=t(wt("node:path")),l=VOo(),A=N5e(),f=oLn(),I=(F,Q)=>{n.default.stat(F,(X,ae)=>{(X||!ae.isDirectory())&&(X=new l.CwdError(F,X?.code||"ENOTDIR")),Q(X)})},C=(F,Q,X)=>{F=(0,A.normalizeWindowsPath)(F);let ae=Q.umask??18,ne=Q.mode|448,ce=(ne&ae)!==0,fe=Q.uid,ue=Q.gid,de=typeof fe=="number"&&typeof ue=="number"&&(fe!==Q.processUid||ue!==Q.processGid),be=Q.preserve,Se=Q.unlink,De=(0,A.normalizeWindowsPath)(Q.cwd),k=(ct,Me)=>{ct?X(ct):Me&&de?(0,r.chownr)(Me,fe,ue,je=>k(je)):ce?n.default.chmod(F,ne,X):X()};if(F===De)return I(F,k);if(be)return a.default.mkdir(F,{mode:ne,recursive:!0}).then(ct=>k(null,ct??void 0),k);let et=(0,A.normalizeWindowsPath)(o.default.relative(De,F)).split("/");b(De,et,ne,Se,De,void 0,k)};e.mkdir=C;var b=(F,Q,X,ae,ne,ce,fe)=>{if(Q.length===0)return fe(null,ce);let ue=Q.shift(),de=(0,A.normalizeWindowsPath)(o.default.resolve(F+"/"+ue));n.default.mkdir(de,X,E(de,Q,X,ae,ne,ce,fe))},E=(F,Q,X,ae,ne,ce,fe)=>ue=>{ue?n.default.lstat(F,(de,be)=>{if(de)de.path=de.path&&(0,A.normalizeWindowsPath)(de.path),fe(de);else if(be.isDirectory())b(F,Q,X,ae,ne,ce,fe);else if(ae)n.default.unlink(F,Se=>{if(Se)return fe(Se);n.default.mkdir(F,X,E(F,Q,X,ae,ne,ce,fe))});else{if(be.isSymbolicLink())return fe(new f.SymlinkError(F,F+"/"+Q.join("/")));fe(ue)}}):(ce=ce||F,b(F,Q,X,ae,ne,ce,fe))},N=F=>{let Q=!1,X;try{Q=n.default.statSync(F).isDirectory()}catch(ae){X=ae?.code}finally{if(!Q)throw new l.CwdError(F,X??"ENOTDIR")}},B=(F,Q)=>{F=(0,A.normalizeWindowsPath)(F);let X=Q.umask??18,ae=Q.mode|448,ne=(ae&X)!==0,ce=Q.uid,fe=Q.gid,ue=typeof ce=="number"&&typeof fe=="number"&&(ce!==Q.processUid||fe!==Q.processGid),de=Q.preserve,be=Q.unlink,Se=(0,A.normalizeWindowsPath)(Q.cwd),De=ct=>{ct&&ue&&(0,r.chownrSync)(ct,ce,fe),ne&&n.default.chmodSync(F,ae)};if(F===Se)return N(Se),De();if(de)return De(n.default.mkdirSync(F,{mode:ae,recursive:!0})??void 0);let k=(0,A.normalizeWindowsPath)(o.default.relative(Se,F)).split("/"),et;for(let ct=k.shift(),Me=Se;ct&&(Me+="/"+ct);ct=k.shift()){Me=(0,A.normalizeWindowsPath)(o.default.resolve(Me));try{n.default.mkdirSync(Me,ae),et=et||Me}catch{let je=n.default.lstatSync(Me);if(je.isDirectory())continue;if(be){n.default.unlinkSync(Me),n.default.mkdirSync(Me,ae),et=et||Me;continue}else if(je.isSymbolicLink())return new f.SymlinkError(Me,Me+"/"+k.join("/"))}}return De(et)};e.mkdirSync=B}),WOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeUnicode=void 0;var t=Object.create(null),r=1e4,n=new Set,a=o=>{n.has(o)?n.delete(o):t[o]=o.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),n.add(o);let l=t[o],A=n.size-r;if(A>r/10){for(let f of n)if(n.delete(f),delete t[f],--A<=0)break}return l};e.normalizeUnicode=a}),OOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PathReservations=void 0;var t=wt("node:path"),r=WOo(),n=KAr(),a=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,o=a==="win32",l=f=>f.split("/").slice(0,-1).reduce((I,C)=>{let b=I.at(-1);return b!==void 0&&(C=(0,t.join)(b,C)),I.push(C||"/"),I},[]),A=class{#e=new Map;#t=new Map;#n=new Set;reserve(f,I){f=o?["win32 parallelization disabled"]:f.map(b=>(0,n.stripTrailingSlashes)((0,t.join)((0,r.normalizeUnicode)(b))));let C=new Set(f.map(b=>l(b)).reduce((b,E)=>b.concat(E)));this.#t.set(I,{dirs:C,paths:f});for(let b of f){let E=this.#e.get(b);E?E.push(I):this.#e.set(b,[I])}for(let b of C){let E=this.#e.get(b);if(!E)this.#e.set(b,[new Set([I])]);else{let N=E.at(-1);N instanceof Set?N.add(I):E.push(new Set([I]))}}return this.#i(I)}#r(f){let I=this.#t.get(f);if(!I)throw new Error("function does not have any path reservations");return{paths:I.paths.map(C=>this.#e.get(C)),dirs:[...I.dirs].map(C=>this.#e.get(C))}}check(f){let{paths:I,dirs:C}=this.#r(f);return I.every(b=>b&&b[0]===f)&&C.every(b=>b&&b[0]instanceof Set&&b[0].has(f))}#i(f){return this.#n.has(f)||!this.check(f)?!1:(this.#n.add(f),f(()=>this.#s(f)),!0)}#s(f){if(!this.#n.has(f))return!1;let I=this.#t.get(f);if(!I)throw new Error("invalid reservation");let{paths:C,dirs:b}=I,E=new Set;for(let N of C){let B=this.#e.get(N);if(!B||B?.[0]!==f)continue;let F=B[1];if(!F){this.#e.delete(N);continue}if(B.shift(),typeof F=="function")E.add(F);else for(let Q of F)E.add(Q)}for(let N of b){let B=this.#e.get(N),F=B?.[0];if(!(!B||!(F instanceof Set)))if(F.size===1&&B.length===1){this.#e.delete(N);continue}else if(F.size===1){B.shift();let Q=B[0];typeof Q=="function"&&E.add(Q)}else F.delete(f)}return this.#n.delete(f),E.forEach(N=>this.#i(N)),!0}};e.PathReservations=A}),MOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.umask=void 0;var t=()=>process.umask();e.umask=t}),aLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(Vr,xi,io,ga){ga===void 0&&(ga=io);var Ya=Object.getOwnPropertyDescriptor(xi,io);(!Ya||("get"in Ya?!xi.__esModule:Ya.writable||Ya.configurable))&&(Ya={enumerable:!0,get:function(){return xi[io]}}),Object.defineProperty(Vr,ga,Ya)}:function(Vr,xi,io,ga){ga===void 0&&(ga=io),Vr[ga]=xi[io]}),r=e&&e.__setModuleDefault||(Object.create?function(Vr,xi){Object.defineProperty(Vr,"default",{enumerable:!0,value:xi})}:function(Vr,xi){Vr.default=xi}),n=e&&e.__importStar||function(){var Vr=function(xi){return Vr=Object.getOwnPropertyNames||function(io){var ga=[];for(var Ya in io)Object.prototype.hasOwnProperty.call(io,Ya)&&(ga[ga.length]=Ya);return ga},Vr(xi)};return function(xi){if(xi&&xi.__esModule)return xi;var io={};if(xi!=null)for(var ga=Vr(xi),Ya=0;Ya{if(!qr)return f.default.unlink(Vr,xi);let io=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.rename(Vr,io,ga=>{if(ga)return xi(ga);f.default.unlink(io,xi)})},jt=Vr=>{if(!qr)return f.default.unlinkSync(Vr);let xi=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.renameSync(Vr,xi),f.default.unlinkSync(xi)},Fn=(Vr,xi,io)=>Vr!==void 0&&Vr===Vr>>>0?Vr:xi!==void 0&&xi===xi>>>0?xi:io,Nn=class extends N.Parser{[vt]=!1;[cr]=!1;[Tr]=0;reservations=new Q.PathReservations;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(Vr={}){if(Vr.ondone=()=>{this[vt]=!0,this[xt]()},super(Vr),this.transform=Vr.transform,this.chmod=!!Vr.chmod,typeof Vr.uid=="number"||typeof Vr.gid=="number"){if(typeof Vr.uid!="number"||typeof Vr.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(Vr.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=Vr.uid,this.gid=Vr.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;this.preserveOwner=Vr.preserveOwner===void 0&&typeof Vr.uid!="number"?!!(process.getuid&&process.getuid()===0):!!Vr.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof Vr.maxDepth=="number"?Vr.maxDepth:_n,this.forceChown=Vr.forceChown===!0,this.win32=!!Vr.win32||qr,this.newer=!!Vr.newer,this.keep=!!Vr.keep,this.noMtime=!!Vr.noMtime,this.preservePaths=!!Vr.preservePaths,this.unlink=!!Vr.unlink,this.cwd=(0,E.normalizeWindowsPath)(I.default.resolve(Vr.cwd||process.cwd())),this.strip=Number(Vr.strip)||0,this.processUmask=this.chmod?typeof Vr.processUmask=="number"?Vr.processUmask:(0,ae.umask)():0,this.umask=typeof Vr.umask=="number"?Vr.umask:this.processUmask,this.dmode=Vr.dmode||511&~this.umask,this.fmode=Vr.fmode||438&~this.umask,this.on("entry",xi=>this[ne](xi))}warn(Vr,xi,io={}){return(Vr==="TAR_BAD_ARCHIVE"||Vr==="TAR_ABORT")&&(io.recoverable=!1),super.warn(Vr,xi,io)}[xt](){this[vt]&&this[Tr]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[St](Vr,xi){let io=Vr[xi],{type:ga}=Vr;if(!io||this.preservePaths)return!0;let[Ya,Gc]=(0,B.stripAbsolutePath)(io),cl=Gc.replaceAll(/\\/g,"/").split("/");if(cl.includes("..")||qr&&/^[a-z]:\.\.$/i.test(cl[0]??"")){if(xi==="path"||ga==="Link")return this.warn("TAR_ENTRY_ERROR",`${xi} contains '..'`,{entry:Vr,[xi]:io}),!1;let Sc=I.default.posix.dirname(Vr.path),Hr=I.default.posix.normalize(I.default.posix.join(Sc,cl.join("/")));if(Hr.startsWith("../")||Hr==="..")return this.warn("TAR_ENTRY_ERROR",`${xi} escapes extraction directory`,{entry:Vr,[xi]:io}),!1}return Ya&&(Vr[xi]=String(Gc),this.warn("TAR_ENTRY_INFO",`stripping ${Ya} from absolute ${xi}`,{entry:Vr,[xi]:io})),!0}[je](Vr){let xi=(0,E.normalizeWindowsPath)(Vr.path),io=xi.split("/");if(this.strip){if(io.length=this.strip)Vr.linkpath=ga.slice(this.strip).join("/");else return!1}io.splice(0,this.strip),Vr.path=io.join("/")}if(isFinite(this.maxDepth)&&io.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:Vr,path:xi,depth:io.length,maxDepth:this.maxDepth}),!1;if(!this[St](Vr,"path")||!this[St](Vr,"linkpath"))return!1;if(Vr.absolute=I.default.isAbsolute(Vr.path)?(0,E.normalizeWindowsPath)(I.default.resolve(Vr.path)):(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,Vr.path)),!this.preservePaths&&typeof Vr.absolute=="string"&&Vr.absolute.indexOf(this.cwd+"/")!==0&&Vr.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:Vr,path:(0,E.normalizeWindowsPath)(Vr.path),resolvedPath:Vr.absolute,cwd:this.cwd}),!1;if(Vr.absolute===this.cwd&&Vr.type!=="Directory"&&Vr.type!=="GNUDumpDir")return!1;if(this.win32){let{root:ga}=I.default.win32.parse(String(Vr.absolute));Vr.absolute=ga+F.encode(String(Vr.absolute).slice(ga.length));let{root:Ya}=I.default.win32.parse(Vr.path);Vr.path=Ya+F.encode(Vr.path.slice(Ya.length))}return!0}[ne](Vr){if(!this[je](Vr))return Vr.resume();switch(l.default.equal(typeof Vr.absolute,"string"),Vr.type){case"Directory":case"GNUDumpDir":Vr.mode&&(Vr.mode=Vr.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ce](Vr);default:return this[Me](Vr)}}[Yt](Vr,xi){Vr.name==="CwdError"?this.emit("error",Vr):(this.warn("TAR_ENTRY_ERROR",Vr,{entry:xi}),this[er](),xi.resume())}[At](Vr,xi,io){(0,b.mkdir)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi},io)}[qt](Vr){return this.forceChown||this.preserveOwner&&(typeof Vr.uid=="number"&&Vr.uid!==this.processUid||typeof Vr.gid=="number"&&Vr.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Xt](Vr){return Fn(this.uid,Vr.uid,this.processUid)}[lr](Vr){return Fn(this.gid,Vr.gid,this.processGid)}[be](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=new o.WriteStream(String(Vr.absolute),{flags:(0,C.getWriteFlag)(Vr.size),mode:io,autoClose:!1});ga.on("error",Sc=>{ga.fd&&f.default.close(ga.fd,()=>{}),ga.write=()=>!0,this[Yt](Sc,Vr),xi()});let Ya=1,Gc=Sc=>{if(Sc){ga.fd&&f.default.close(ga.fd,()=>{}),this[Yt](Sc,Vr),xi();return}--Ya===0&&ga.fd!==void 0&&f.default.close(ga.fd,Hr=>{Hr?this[Yt](Hr,Vr):this[er](),xi()})};ga.on("finish",()=>{let Sc=String(Vr.absolute),Hr=ga.fd;if(typeof Hr=="number"&&Vr.mtime&&!this.noMtime){Ya++;let Wr=Vr.atime||new Date,Ft=Vr.mtime;f.default.futimes(Hr,Wr,Ft,zr=>zr?f.default.utimes(Sc,Wr,Ft,Rn=>Gc(Rn&&zr)):Gc())}if(typeof Hr=="number"&&this[qt](Vr)){Ya++;let Wr=this[Xt](Vr),Ft=this[lr](Vr);typeof Wr=="number"&&typeof Ft=="number"&&f.default.fchown(Hr,Wr,Ft,zr=>zr?f.default.chown(Sc,Wr,Ft,Rn=>Gc(Rn&&zr)):Gc())}Gc()});let cl=this.transform&&this.transform(Vr)||Vr;cl!==Vr&&(cl.on("error",Sc=>{this[Yt](Sc,Vr),xi()}),Vr.pipe(cl)),cl.pipe(ga)}[Se](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode;this[At](String(Vr.absolute),io,ga=>{if(ga){this[Yt](ga,Vr),xi();return}let Ya=1,Gc=()=>{--Ya===0&&(xi(),this[er](),Vr.resume())};Vr.mtime&&!this.noMtime&&(Ya++,f.default.utimes(String(Vr.absolute),Vr.atime||new Date,Vr.mtime,Gc)),this[qt](Vr)&&(Ya++,f.default.chown(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)),Gc)),Gc()})}[Me](Vr){Vr.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${Vr.type}`,{entry:Vr}),Vr.resume()}[k](Vr,xi){let io=(0,E.normalizeWindowsPath)(I.default.relative(this.cwd,I.default.resolve(I.default.dirname(String(Vr.absolute)),String(Vr.linkpath)))).split("/");this[ct](Vr,this.cwd,io,()=>this[De](Vr,String(Vr.linkpath),"symlink",xi),ga=>{this[Yt](ga,Vr),xi()})}[et](Vr,xi){let io=(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,String(Vr.linkpath))),ga=(0,E.normalizeWindowsPath)(String(Vr.linkpath)).split("/");this[ct](Vr,this.cwd,ga,()=>this[De](Vr,io,"link",xi),Ya=>{this[Yt](Ya,Vr),xi()})}[ct](Vr,xi,io,ga,Ya){let Gc=io.shift();if(this.preservePaths||Gc===void 0)return ga();let cl=I.default.resolve(xi,Gc);f.default.lstat(cl,(Sc,Hr)=>{if(Sc)return ga();if(Hr?.isSymbolicLink())return Ya(new X.SymlinkError(cl,I.default.resolve(cl,io.join("/"))));this[ct](Vr,cl,io,ga,Ya)})}[Nr](){this[Tr]++}[er](){this[Tr]--,this[xt]()}[Zr](Vr){this[er](),Vr.resume()}[ue](Vr,xi){return Vr.type==="File"&&!this.unlink&&xi.isFile()&&xi.nlink<=1&&!qr}[ce](Vr){this[Nr]();let xi=[Vr.path];Vr.linkpath&&xi.push(Vr.linkpath),this.reservations.reserve(xi,io=>this[fe](Vr,io))}[fe](Vr,xi){let io=cl=>{xi(cl)},ga=()=>{this[At](this.cwd,this.dmode,cl=>{if(cl){this[Yt](cl,Vr),io();return}this[cr]=!0,Ya()})},Ya=()=>{if(Vr.absolute!==this.cwd){let cl=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(cl!==this.cwd)return this[At](cl,this.dmode,Sc=>{if(Sc){this[Yt](Sc,Vr),io();return}Gc()})}Gc()},Gc=()=>{f.default.lstat(String(Vr.absolute),(cl,Sc)=>{if(Sc&&(this.keep||this.newer&&Sc.mtime>(Vr.mtime??Sc.mtime))){this[Zr](Vr),io();return}if(cl||this[ue](Vr,Sc))return this[de](null,Vr,io);if(Sc.isDirectory()){if(Vr.type==="Directory"){let Hr=this.chmod&&Vr.mode&&(Sc.mode&4095)!==Vr.mode,Wr=Ft=>this[de](Ft??null,Vr,io);return Hr?f.default.chmod(String(Vr.absolute),Number(Vr.mode),Wr):Wr()}if(Vr.absolute!==this.cwd)return f.default.rmdir(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,io))}if(Vr.absolute===this.cwd)return this[de](null,Vr,io);ke(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,io))})};this[cr]?Ya():ga()}[de](Vr,xi,io){if(Vr){this[Yt](Vr,xi),io();return}switch(xi.type){case"File":case"OldFile":case"ContiguousFile":return this[be](xi,io);case"Link":return this[et](xi,io);case"SymbolicLink":return this[k](xi,io);case"Directory":case"GNUDumpDir":return this[Se](xi,io)}}[De](Vr,xi,io,ga){f.default[io](xi,String(Vr.absolute),Ya=>{Ya?this[Yt](Ya,Vr):(this[er](),Vr.resume()),ga()})}};e.Unpack=Nn;var Hi=Vr=>{try{return[null,Vr()]}catch(xi){return[xi,null]}},po=class extends Nn{sync=!0;[de](Vr,xi){return super[de](Vr,xi,()=>{})}[ce](Vr){if(!this[cr]){let Ya=this[At](this.cwd,this.dmode);if(Ya)return this[Yt](Ya,Vr);this[cr]=!0}if(Vr.absolute!==this.cwd){let Ya=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(Ya!==this.cwd){let Gc=this[At](Ya,this.dmode);if(Gc)return this[Yt](Gc,Vr)}}let[xi,io]=Hi(()=>f.default.lstatSync(String(Vr.absolute)));if(io&&(this.keep||this.newer&&io.mtime>(Vr.mtime??io.mtime)))return this[Zr](Vr);if(xi||this[ue](Vr,io))return this[de](null,Vr);if(io.isDirectory()){if(Vr.type==="Directory"){let Gc=this.chmod&&Vr.mode&&(io.mode&4095)!==Vr.mode,[cl]=Gc?Hi(()=>{f.default.chmodSync(String(Vr.absolute),Number(Vr.mode))}):[];return this[de](cl,Vr)}let[Ya]=Hi(()=>f.default.rmdirSync(String(Vr.absolute)));this[de](Ya,Vr)}let[ga]=Vr.absolute===this.cwd?[]:Hi(()=>jt(String(Vr.absolute)));this[de](ga,Vr)}[be](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=cl=>{let Sc;try{f.default.closeSync(Ya)}catch(Hr){Sc=Hr}(cl||Sc)&&this[Yt](cl||Sc,Vr),xi()},Ya;try{Ya=f.default.openSync(String(Vr.absolute),(0,C.getWriteFlag)(Vr.size),io)}catch(cl){return ga(cl)}let Gc=this.transform&&this.transform(Vr)||Vr;Gc!==Vr&&(Gc.on("error",cl=>this[Yt](cl,Vr)),Vr.pipe(Gc)),Gc.on("data",cl=>{try{f.default.writeSync(Ya,cl,0,cl.length)}catch(Sc){ga(Sc)}}),Gc.on("end",()=>{let cl=null;if(Vr.mtime&&!this.noMtime){let Sc=Vr.atime||new Date,Hr=Vr.mtime;try{f.default.futimesSync(Ya,Sc,Hr)}catch(Wr){try{f.default.utimesSync(String(Vr.absolute),Sc,Hr)}catch{cl=Wr}}}if(this[qt](Vr)){let Sc=this[Xt](Vr),Hr=this[lr](Vr);try{f.default.fchownSync(Ya,Number(Sc),Number(Hr))}catch(Wr){try{f.default.chownSync(String(Vr.absolute),Number(Sc),Number(Hr))}catch{cl=cl||Wr}}}ga(cl)})}[Se](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode,ga=this[At](String(Vr.absolute),io);if(ga){this[Yt](ga,Vr),xi();return}if(Vr.mtime&&!this.noMtime)try{f.default.utimesSync(String(Vr.absolute),Vr.atime||new Date,Vr.mtime)}catch{}if(this[qt](Vr))try{f.default.chownSync(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)))}catch{}xi(),Vr.resume()}[At](Vr,xi){try{return(0,b.mkdirSync)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi})}catch(io){return io}}[ct](Vr,xi,io,ga,Ya){if(this.preservePaths||io.length===0)return ga();let Gc=xi;for(let cl of io){Gc=I.default.resolve(Gc,cl);let[Sc,Hr]=Hi(()=>f.default.lstatSync(Gc));if(Sc)return ga();if(Hr.isSymbolicLink())return Ya(new X.SymlinkError(Gc,I.default.resolve(xi,io.join("/"))))}ga()}[De](Vr,xi,io,ga){let Ya=`${io}Sync`;try{f.default[Ya](xi,String(Vr.absolute)),ga(),Vr.resume()}catch(Gc){return this[Yt](Gc,Vr)}}};e.UnpackSync=po}),cLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(E,N,B,F){F===void 0&&(F=B);var Q=Object.getOwnPropertyDescriptor(N,B);(!Q||("get"in Q?!N.__esModule:Q.writable||Q.configurable))&&(Q={enumerable:!0,get:function(){return N[B]}}),Object.defineProperty(E,F,Q)}:function(E,N,B,F){F===void 0&&(F=B),E[F]=N[B]}),r=e&&e.__setModuleDefault||(Object.create?function(E,N){Object.defineProperty(E,"default",{enumerable:!0,value:N})}:function(E,N){E.default=N}),n=e&&e.__importStar||function(){var E=function(N){return E=Object.getOwnPropertyNames||function(B){var F=[];for(var Q in B)Object.prototype.hasOwnProperty.call(B,Q)&&(F[F.length]=Q);return F},E(N)};return function(N){if(N&&N.__esModule)return N;var B={};if(N!=null)for(var F=E(N),Q=0;Q{let N=new I.UnpackSync(E),B=E.file,F=l.default.statSync(B),Q=E.maxReadSize||16*1024*1024;new o.ReadStreamSync(B,{readSize:Q,size:F.size}).pipe(N)},b=(E,N)=>{let B=new I.Unpack(E),F=E.maxReadSize||16*1024*1024,Q=E.file;return new Promise((X,ae)=>{B.on("error",ae),B.on("close",X),l.default.stat(Q,(ne,ce)=>{if(ne)ae(ne);else{let fe=new o.ReadStream(Q,{readSize:F,size:ce.size});fe.on("error",ae),fe.pipe(B)}})})};e.extract=(0,f.makeCommand)(C,b,E=>new I.UnpackSync(E),E=>new I.Unpack(E),(E,N)=>{N?.length&&(0,A.filesFilter)(E,N)})}),zAr=yC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.replace=void 0;var r=w5e(),n=t(wt("node:fs")),a=t(wt("node:path")),o=R5e(),l=D5e(),A=T5e(),f=YAr(),I=jAr(),C=(F,Q)=>{let X=new I.PackSync(F),ae=!0,ne,ce;try{try{ne=n.default.openSync(F.file,"r+")}catch(de){if(de?.code==="ENOENT")ne=n.default.openSync(F.file,"w+");else throw de}let fe=n.default.fstatSync(ne),ue=Buffer.alloc(512);e:for(ce=0;cefe.size)break;ce+=be,F.mtimeCache&&de.mtime&&F.mtimeCache.set(String(de.path),de.mtime)}ae=!1,b(F,X,ce,ne,Q)}finally{if(ae)try{n.default.closeSync(ne)}catch{}}},b=(F,Q,X,ae,ne)=>{let ce=new r.WriteStreamSync(F.file,{fd:ae,start:X});Q.pipe(ce),N(Q,ne)},E=(F,Q)=>{Q=Array.from(Q);let X=new I.Pack(F),ae=(ne,ce,fe)=>{let ue=(k,et)=>{k?n.default.close(ne,ct=>fe(k)):fe(null,et)},de=0;if(ce===0)return ue(null,0);let be=0,Se=Buffer.alloc(512),De=(k,et)=>{if(k||et===void 0)return ue(k);if(be+=et,be<512&&et)return n.default.read(ne,Se,be,Se.length-be,de+be,De);if(de===0&&Se[0]===31&&Se[1]===139)return ue(new Error("cannot append to compressed archives"));if(be<512)return ue(null,de);let ct=new o.Header(Se);if(!ct.cksumValid)return ue(null,de);let Me=512*Math.ceil((ct.size??0)/512);if(de+Me+512>ce||(de+=Me+512,de>=ce))return ue(null,de);F.mtimeCache&&ct.mtime&&F.mtimeCache.set(String(ct.path),ct.mtime),be=0,n.default.read(ne,Se,0,512,de,De)};n.default.read(ne,Se,0,512,de,De)};return new Promise((ne,ce)=>{X.on("error",ce);let fe="r+",ue=(de,be)=>{if(de&&de.code==="ENOENT"&&fe==="r+")return fe="w+",n.default.open(F.file,fe,ue);if(de||!be)return ce(de);n.default.fstat(be,(Se,De)=>{if(Se)return n.default.close(be,()=>ce(Se));ae(be,De.size,(k,et)=>{if(k)return ce(k);let ct=new r.WriteStream(F.file,{fd:be,start:et});X.pipe(ct),ct.on("error",ce),ct.on("close",ne),B(X,Q)})})};n.default.open(F.file,fe,ue)})},N=(F,Q)=>{Q.forEach(X=>{X.charAt(0)==="@"?(0,l.list)({file:a.default.resolve(F.cwd,X.slice(1)),sync:!0,noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(X)}),F.end()},B=async(F,Q)=>{for(let X of Q)X.charAt(0)==="@"?await(0,l.list)({file:a.default.resolve(String(F.cwd),X.slice(1)),noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(X);F.end()};e.replace=(0,A.makeCommand)(C,E,()=>{throw new TypeError("file is required")},()=>{throw new TypeError("file is required")},(F,Q)=>{if(!(0,f.isFile)(F))throw new TypeError("file is required");if(F.gzip||F.brotli||F.zstd||F.file.endsWith(".br")||F.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!Q?.length)throw new TypeError("no paths specified to add/replace")})}),lLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.update=void 0;var t=T5e(),r=zAr();e.update=(0,t.makeCommand)(r.replace.syncFile,r.replace.asyncFile,r.replace.syncNoFile,r.replace.asyncNoFile,(a,o=[])=>{r.replace.validate?.(a,o),n(a)});var n=a=>{let o=a.filter;a.mtimeCache||(a.mtimeCache=new Map),a.filter=o?(l,A)=>o(l,A)&&!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0)):(l,A)=>!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0))}}),uLn=jC&&jC.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),HOo=jC&&jC.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pM=jC&&jC.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&uLn(t,e,r)},YOo=jC&&jC.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Rve,"__esModule",{value:!0});Rve.WorkerPool=Rve.AsyncPool=void 0;var jOo=(Pa(),vi(Va)),ALn=jOo.__importDefault(Dfe()),zOo=wt("worker_threads"),Doe=Symbol("kTaskInfo"),qAr=class{constructor(t,r){this.fn=t,this.limit=(0,ALn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};Rve.AsyncPool=qAr;var $Ar=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,ALn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let n=this.workers.pop();n?n.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new zOo.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[Doe])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[Doe].resolve(r),t[Doe]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[Doe]?.reject(r),t[Doe]=null}),t.on("exit",r=>{r!==0&&t[Doe]?.reject(new Error(`Worker exited with code ${r}`)),t[Doe]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((n,a)=>{r[Doe]={resolve:n,reject:a},r.postMessage(t)})})}};Rve.WorkerPool=$Ar});var fLn=H((p7l,pLn)=>{var edr;pLn.exports.getContent=()=>(typeof edr>"u"&&(edr=wt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),edr)});var bLn=H(koe=>{"use strict";Object.defineProperty(koe,"__esModule",{value:!0});koe.getDefaultTaskPool=CLn;koe.getTaskPoolForConfiguration=_Ln;koe.convertToZipWorker=rdr;koe.makeArchiveFromDirectory=n3o;koe.convertToZip=i3o;koe.extractArchiveTo=yLn;var ILn=(Pa(),vi(Va)),qOo=Sn(),rb=ro(),yAt=zK(),$Oo=wt("stream"),e3o=ILn.__importStar(gLn()),bAt=dLn(),hLn=ILn.__importStar(xW()),mLn=fLn();function t3o(e,t){switch(e){case"async":return new bAt.AsyncPool(rdr,{poolSize:t});case"workers":return new bAt.WorkerPool((0,mLn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var tdr;function CLn(){return typeof tdr>"u"&&(tdr=t3o("workers",qOo.nodeUtils.availableParallelism())),tdr}var r3o=new WeakMap;function _Ln(e){return typeof e>"u"?CLn():hLn.getFactoryWithDefault(r3o,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new bAt.AsyncPool(rdr,{poolSize:r});case"workers":return new bAt.WorkerPool((0,mLn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function rdr(e){let{tmpFile:t,tgz:r,compressionLevel:n,extractBufferOpts:a}=e,o=new yAt.ZipFS(t,{create:!0,level:n,stats:rb.statUtils.makeDefaultStats()}),l=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await yLn(l,o,a),o.saveAndClose(),t}async function n3o(e,{baseFs:t=new rb.NodeFS,prefixPath:r=rb.PortablePath.root,compressionLevel:n,inMemory:a=!1}={}){let o;if(a)o=new yAt.ZipFS(null,{level:n});else{let A=await rb.xfs.mktempPromise(),f=rb.ppath.join(A,"archive.zip");o=new yAt.ZipFS(f,{create:!0,level:n})}let l=rb.ppath.resolve(rb.PortablePath.root,r);return await o.copyPromise(l,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function i3o(e,t={}){let r=await rb.xfs.mktempPromise(),n=rb.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??_Ln(t.configuration)).run({tmpFile:n,tgz:e,compressionLevel:a,extractBufferOpts:o}),new yAt.ZipFS(n,{level:t.compressionLevel})}async function*s3o(e){let t=new e3o.Parser,r=new $Oo.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",n=>{r.write(n)}),t.on("error",n=>{r.destroy(n)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let n of r){let a=n;yield a,a.resume()}}async function yLn(e,t,{stripComponents:r=0,prefixPath:n=rb.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let l=o.path.split(/\//g);return!!(l.some(A=>A==="..")||l.length<=r)}for await(let o of s3o(e)){if(a(o))continue;let l=rb.ppath.normalize(rb.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let A=l.slice(r).join("/"),f=rb.ppath.join(n,A),I=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(I|=73),o.type){case"Directory":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:I}),t.utimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.writeFileSync(f,await hLn.bufferStream(o),{mode:I}),t.utimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break}}return t}});var SLn=H((ndr,ELn)=>{(function(e,t){typeof ndr=="object"?ELn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(ndr,function(){function e(a,o){var l=o?"\u2514":"\u251C";return a?l+="\u2500 ":l+="\u2500\u2500\u2510",l}function t(a,o){var l=[];for(var A in a)a.hasOwnProperty(A)&&(o&&typeof a[A]=="function"||l.push(A));return l}function r(a,o,l,A,f,I,C){var b="",E=0,N,B,F=A.slice(0);if(F.push([o,l])&&A.length>0&&(A.forEach(function(X,ae){ae>0&&(b+=(X[1]?" ":"\u2502")+" "),!B&&X[0]===o&&(B=!0)}),b+=e(a,l)+a,f&&(typeof o!="object"||o instanceof Date)&&(b+=": "+o),B&&(b+=" (circular ref.)"),C(b)),!B&&typeof o=="object"){var Q=t(o,I);Q.forEach(function(X){N=++E===Q.length,r(X,o[X],N,F,f,I,C)})}}var n={};return n.asLines=function(a,o,l,A){var f=typeof l!="function"?l:!1;r(".",a,!1,[],o,f,A||l)},n.asTree=function(a,o,l){var A="";return r(".",a,!1,[],o,l,function(f){A+=f+` -`}),A},n})});var TLn=H(Nve=>{"use strict";Object.defineProperty(Nve,"__esModule",{value:!0});Nve.treeNodeToTreeify=vLn;Nve.treeNodeToJson=BLn;Nve.emitList=c3o;Nve.emitTree=wLn;var o3o=(Pa(),vi(Va)),a3o=SLn(),cIe=o3o.__importStar(rM());function vLn(e,{configuration:t}){let r={},n=0,a=(o,l)=>{let A=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,I]of A){if(!I)continue;let{label:C,value:b,children:E}=I,N=[];typeof C<"u"&&N.push(cIe.applyStyle(t,C,cIe.Style.BOLD)),typeof b<"u"&&N.push(cIe.pretty(t,b[0],b[1])),N.length===0&&N.push(cIe.applyStyle(t,`${f}`,cIe.Style.BOLD));let B=N.join(": ").trim(),F=`\0${n++}\0`,Q=l[`${F}${B}`]={};typeof E<"u"&&a(E,Q)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function BLn(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return cIe.json(r.value[0],r.value[1])}let n=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,l]of n)l&&(a[l3o(o)]=t(l));return typeof r.value>"u"?a:{value:cIe.json(r.value[0],r.value[1]),children:a}};return t(e)}function c3o(e,{configuration:t,stdout:r,json:n}){let a=e.map(o=>({value:o}));wLn({children:a},{configuration:t,stdout:r,json:n})}function wLn(e,{configuration:t,stdout:r,json:n,separators:a=0}){if(n){let l=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let A of l)A&&r.write(`${JSON.stringify(BLn(A))} -`);return}let o=(0,a3o.asTree)(vLn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 +`);let De=await FW.pipevp("yarn",[...fe,"pack","--filename",tp.npath.fromPortablePath(t)],{cwd:e,env:X,stdin:f,stdout:I,stderr:C});return De.code!==0?De.code:0}],[RZ.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];X.YARN_ENABLE_INLINE_BUILDS="1";let ue=tp.ppath.join(e,Doe.Filename.lockfile);await tp.xfs.existsPromise(ue)||await tp.xfs.writeFilePromise(ue,"");let de=await FW.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",tp.npath.fromPortablePath(t)],{cwd:e,env:X,stdin:f,stdout:I,stderr:C});return de.code!==0?de.code:0}],[RZ.Npm,async()=>{if(a!==null){let et=new wve.PassThrough,ct=cIe.bufferStream(et);et.pipe(I,{end:!1});let Me=await FW.pipevp("npm",["--version"],{cwd:e,env:X,stdin:f,stdout:et,stderr:C,end:FW.EndStrategy.Never});if(et.end(),Me.code!==0)return I.end(),C.end(),Me.code;let je=(await ct).toString().trim();if(!WOo.satisfiesWithPrereleases(je,">=7.x")){let St=tT.makeIdent(null,"npm"),At=tT.makeDescriptor(St,je),Yt=tT.makeDescriptor(St,">=7.x");throw new Error(`Workspaces aren't supported by ${tT.prettyDescriptor(r,At)}; please upgrade to ${tT.prettyDescriptor(r,Yt)} (npm has been detected as the primary package manager for ${t8.pretty(r,e,t8.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete X.npm_config_user_agent,delete X.npm_config_production,delete X.NPM_CONFIG_PRODUCTION,delete X.NODE_ENV;let ue=await FW.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(ue.code!==0)return ue.code;let de=new wve.PassThrough,be=cIe.bufferStream(de);de.pipe(I);let Se=await FW.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:X,stdin:f,stdout:de,stderr:C});if(Se.code!==0)return Se.code;let De=(await be).toString().trim().replace(/^.*\n/s,""),k=tp.ppath.resolve(e,tp.npath.toPortablePath(De));return await tp.xfs.renamePromise(k,t),0}]]).get(B);if(typeof ne>"u")throw new Error("Assertion failed: Unsupported workflow");let ce=await ne();if(!(ce===0||typeof ce>"u"))throw tp.xfs.detachTemp(l),new zZn.ReportError(MAr.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ce}, logs can be found here: ${t8.pretty(r,A,t8.Type.PATH)})`)})})})}async function YOo(e,t,{project:r}){let n=r.tryWorkspaceByLocator(e);if(n!==null)return YAr(n,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${tT.prettyLocator(r.configuration,e)} not found in the project`);return await KZn.ZipOpenFS.openPromise(async o=>{let l=r.configuration,A=r.configuration.getLinkers(),f={project:r,report:new yAt.StreamReport({stdout:new wve.PassThrough,configuration:l})},I=A.find(N=>N.supportsPackage(a,f));if(!I)throw new Error(`The package ${tT.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let C=await I.findPackageLocation(a,f),b=new Doe.CwdFS(C,{baseFs:o});return(await HAr.Manifest.find(Doe.PortablePath.dot,{baseFs:b})).scripts.has(t)})}async function $Zn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await tp.xfs.mktempPromise(async f=>{let{manifest:I,env:C,cwd:b}=await eLn(e,{project:a,binFolder:f,cwd:n,lifecycleScript:t}),E=I.scripts.get(t);if(typeof E>"u")return 1;let N=async()=>await(0,jZn.execute)(E,r,{cwd:b,env:C,stdin:o,stdout:l,stderr:A});return await(await a.configuration.reduceHook(F=>F.wrapScriptExecution,N,a,e,t,{script:E,args:r,cwd:b,env:C,stdin:o,stdout:l,stderr:A}))()})}async function QOo(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await tp.xfs.mktempPromise(async f=>{let{env:I,cwd:C}=await eLn(e,{project:a,binFolder:f,cwd:n});return await(0,jZn.execute)(t,r,{cwd:C,env:I,stdin:o,stdout:l,stderr:A})})}async function XOo(e,{binFolder:t,cwd:r,lifecycleScript:n}){let a=await w5e({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:n});return await XAr(t,await nLn(e)),typeof r>"u"&&(r=tp.ppath.dirname(await tp.xfs.realpathPromise(tp.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function eLn(e,{project:t,binFolder:r,cwd:n,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return XOo(o,{binFolder:r,cwd:n,lifecycleScript:a});let l=t.storedPackages.get(e.locatorHash);if(!l)throw new Error(`Package for ${tT.prettyLocator(t.configuration,e)} not found in the project`);return await KZn.ZipOpenFS.openPromise(async A=>{let f=t.configuration,I=t.configuration.getLinkers(),C={project:t,report:new yAt.StreamReport({stdout:new wve.PassThrough,configuration:f})},b=I.find(Q=>Q.supportsPackage(l,C));if(!b)throw new Error(`The package ${tT.prettyLocator(t.configuration,l)} isn't supported by any of the available linkers`);let E=await w5e({project:t,locator:e,binFolder:r,lifecycleScript:a});await XAr(r,await bAt(e,{project:t}));let N=await b.findPackageLocation(l,C),B=new Doe.CwdFS(N,{baseFs:A}),F=await HAr.Manifest.find(Doe.PortablePath.dot,{baseFs:B});return typeof n>"u"&&(n=N),{manifest:F,binFolder:r,env:E,cwd:n}})}async function tLn(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l}){return await $Zn(e.anchoredLocator,t,r,{cwd:n,project:e.project,stdin:a,stdout:o,stderr:l})}function YAr(e,t){return e.manifest.scripts.has(t)}async function rLn(e,t,{cwd:r,report:n}){let{configuration:a}=e.project,o=null;await tp.xfs.mktempPromise(async l=>{let A=tp.ppath.join(l,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${tp.npath.fromPortablePath(e.cwd)}") +`,{stdout:I,stderr:C}=a.getSubprocessStreams(A,{report:n,prefix:tT.prettyLocator(a,e.anchoredLocator),header:f});n.reportInfo(MAr.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let b=await tLn(e,t,[],{cwd:r,stdin:o,stdout:I,stderr:C});if(I.end(),C.end(),b!==0)throw tp.xfs.detachTemp(l),new zZn.ReportError(MAr.MessageName.LIFECYCLE_SCRIPT,`${(0,VOo.capitalize)(t)} script failed (exit code ${t8.pretty(a,b,t8.Type.NUMBER)}, logs can be found here: ${t8.pretty(a,A,t8.Type.PATH)}); run ${t8.pretty(a,`yarn ${t}`,t8.Type.CODE)} to investigate`)})}async function JOo(e,t,r){YAr(e,t)&&await rLn(e,t,r)}function QAr(e){let t=tp.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),n;try{n=tp.xfs.openSync(e,"r")}catch{return!0}try{tp.xfs.readSync(n,r,0,r.length,0)}finally{tp.xfs.closeSync(n)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function bAt(e,{project:t}){let r=t.configuration,n=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${tT.prettyLocator(r,e)} not found in the project`);let o=new wve.Writable,l=r.getLinkers(),A={project:t,report:new yAt.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let C of a.dependencies.values()){let b=t.storedResolutions.get(C.descriptorHash);if(!b)throw new Error(`Assertion failed: The resolution (${tT.prettyDescriptor(r,C)}) should have been registered`);f.add(b)}let I=await Promise.all(Array.from(f,async C=>{let b=t.storedPackages.get(C);if(!b)throw new Error(`Assertion failed: The package (${C}) should have been registered`);if(b.bin.size===0)return cIe.mapAndFilter.skip;let E=l.find(B=>B.supportsPackage(b,A));if(!E)return cIe.mapAndFilter.skip;let N=null;try{N=await E.findPackageLocation(b,A)}catch(B){if(B.code==="LOCATOR_NOT_INSTALLED")return cIe.mapAndFilter.skip;throw B}return{dependency:b,packageLocation:N}}));for(let C of I){if(C===cIe.mapAndFilter.skip)continue;let{dependency:b,packageLocation:E}=C;for(let[N,B]of b.bin){let F=tp.ppath.resolve(E,B);n.set(N,[b,tp.npath.fromPortablePath(F),QAr(F)])}}return n}async function nLn(e){return await bAt(e.anchoredLocator,{project:e.project})}async function XAr(e,t){await Promise.all(Array.from(t,([r,[,n,a]])=>a?Noe(e,r,process.execPath,[n]):Noe(e,r,n,[])))}async function iLn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A,nodeArgs:f=[],packageAccessibleBinaries:I}){I??=await bAt(e,{project:a});let C=I.get(t);if(!C)throw new Error(`Binary not found (${t}) for ${tT.prettyLocator(a.configuration,e)}`);return await tp.xfs.mktempPromise(async b=>{let[,E]=C,N=await w5e({project:a,locator:e,binFolder:b});await XAr(N.BERRY_BIN_FOLDER,I);let B=QAr(tp.npath.toPortablePath(E))?FW.pipevp(process.execPath,[...f,E,...r],{cwd:n,env:N,stdin:o,stdout:l,stderr:A}):FW.pipevp(E,r,{cwd:n,env:N,stdin:o,stdout:l,stderr:A}),F;try{F=await B}finally{await tp.xfs.removePromise(N.BERRY_BIN_FOLDER)}return F.code})}async function UOo(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A}){return await iLn(e.anchoredLocator,t,r,{project:e.project,cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A})}});var mLn=H(jC=>{"use strict";var yC=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),T5e=yC(e=>{"use strict";var t=e&&e.__importDefault||function(Fn){return Fn&&Fn.__esModule?Fn:{default:Fn}};Object.defineProperty(e,"__esModule",{value:!0}),e.Minipass=e.isWritable=e.isReadable=e.isStream=void 0;var r=typeof process=="object"&&process?process:{stdout:null,stderr:null},n=wt("node:events"),a=t(wt("node:stream")),o=wt("node:string_decoder"),l=Fn=>!!Fn&&typeof Fn=="object"&&(Fn instanceof jt||Fn instanceof a.default||(0,e.isReadable)(Fn)||(0,e.isWritable)(Fn));e.isStream=l;var A=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.pipe=="function"&&Fn.pipe!==a.default.Writable.prototype.pipe;e.isReadable=A;var f=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.write=="function"&&typeof Fn.end=="function";e.isWritable=f;var I=Symbol("EOF"),C=Symbol("maybeEmitEnd"),b=Symbol("emittedEnd"),E=Symbol("emittingEnd"),N=Symbol("emittedError"),B=Symbol("closed"),F=Symbol("read"),Q=Symbol("flush"),X=Symbol("flushChunk"),ae=Symbol("encoding"),ne=Symbol("decoder"),ce=Symbol("flowing"),fe=Symbol("paused"),ue=Symbol("resume"),de=Symbol("buffer"),be=Symbol("pipes"),Se=Symbol("bufferLength"),De=Symbol("bufferPush"),k=Symbol("bufferShift"),et=Symbol("objectMode"),ct=Symbol("destroyed"),Me=Symbol("error"),je=Symbol("emitData"),St=Symbol("emitEnd"),At=Symbol("emitEnd2"),Yt=Symbol("async"),Tr=Symbol("abort"),Nr=Symbol("aborted"),er=Symbol("signal"),vt=Symbol("dataListeners"),xt=Symbol("discarded"),Zr=Fn=>Promise.resolve().then(Fn),qt=Fn=>Fn(),Xt=Fn=>Fn==="end"||Fn==="finish"||Fn==="prefinish",lr=Fn=>Fn instanceof ArrayBuffer||!!Fn&&typeof Fn=="object"&&Fn.constructor&&Fn.constructor.name==="ArrayBuffer"&&Fn.byteLength>=0,cr=Fn=>!Buffer.isBuffer(Fn)&&ArrayBuffer.isView(Fn),Ar=class{src;dest;opts;ondrain;constructor(Fn,Nn,Hi){this.src=Fn,this.dest=Nn,this.opts=Hi,this.ondrain=()=>Fn[ue](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(Fn){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},qr=class extends Ar{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(Fn,Nn,Hi){super(Fn,Nn,Hi),this.proxyErrors=po=>this.dest.emit("error",po),Fn.on("error",this.proxyErrors)}},_n=Fn=>!!Fn.objectMode,ke=Fn=>!Fn.objectMode&&!!Fn.encoding&&Fn.encoding!=="buffer",jt=class extends n.EventEmitter{[ce]=!1;[fe]=!1;[be]=[];[de]=[];[et];[ae];[Yt];[ne];[I]=!1;[b]=!1;[E]=!1;[B]=!1;[N]=null;[Se]=0;[ct]=!1;[er];[Nr]=!1;[vt]=0;[xt]=!1;writable=!0;readable=!0;constructor(...Fn){let Nn=Fn[0]||{};if(super(),Nn.objectMode&&typeof Nn.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");_n(Nn)?(this[et]=!0,this[ae]=null):ke(Nn)?(this[ae]=Nn.encoding,this[et]=!1):(this[et]=!1,this[ae]=null),this[Yt]=!!Nn.async,this[ne]=this[ae]?new o.StringDecoder(this[ae]):null,Nn&&Nn.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[de]}),Nn&&Nn.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[be]});let{signal:Hi}=Nn;Hi&&(this[er]=Hi,Hi.aborted?this[Tr]():Hi.addEventListener("abort",()=>this[Tr]()))}get bufferLength(){return this[Se]}get encoding(){return this[ae]}set encoding(Fn){throw new Error("Encoding must be set at instantiation time")}setEncoding(Fn){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[et]}set objectMode(Fn){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Yt]}set async(Fn){this[Yt]=this[Yt]||!!Fn}[Tr](){this[Nr]=!0,this.emit("abort",this[er]?.reason),this.destroy(this[er]?.reason)}get aborted(){return this[Nr]}set aborted(Fn){}write(Fn,Nn,Hi){if(this[Nr])return!1;if(this[I])throw new Error("write after end");if(this[ct])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Nn||(Nn="utf8");let po=this[Yt]?Zr:qt;if(!this[et]&&!Buffer.isBuffer(Fn)){if(cr(Fn))Fn=Buffer.from(Fn.buffer,Fn.byteOffset,Fn.byteLength);else if(lr(Fn))Fn=Buffer.from(Fn);else if(typeof Fn!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[et]?(this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce]):Fn.length?(typeof Fn=="string"&&!(Nn===this[ae]&&!this[ne]?.lastNeed)&&(Fn=Buffer.from(Fn,Nn)),Buffer.isBuffer(Fn)&&this[ae]&&(Fn=this[ne].write(Fn)),this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce]):(this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce])}read(Fn){if(this[ct])return null;if(this[xt]=!1,this[Se]===0||Fn===0||Fn&&Fn>this[Se])return this[C](),null;this[et]&&(Fn=null),this[de].length>1&&!this[et]&&(this[de]=[this[ae]?this[de].join(""):Buffer.concat(this[de],this[Se])]);let Nn=this[F](Fn||null,this[de][0]);return this[C](),Nn}[F](Fn,Nn){if(this[et])this[k]();else{let Hi=Nn;Fn===Hi.length||Fn===null?this[k]():typeof Hi=="string"?(this[de][0]=Hi.slice(Fn),Nn=Hi.slice(0,Fn),this[Se]-=Fn):(this[de][0]=Hi.subarray(Fn),Nn=Hi.subarray(0,Fn),this[Se]-=Fn)}return this.emit("data",Nn),!this[de].length&&!this[I]&&this.emit("drain"),Nn}end(Fn,Nn,Hi){return typeof Fn=="function"&&(Hi=Fn,Fn=void 0),typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Fn!==void 0&&this.write(Fn,Nn),Hi&&this.once("end",Hi),this[I]=!0,this.writable=!1,(this[ce]||!this[fe])&&this[C](),this}[ue](){this[ct]||(!this[vt]&&!this[be].length&&(this[xt]=!0),this[fe]=!1,this[ce]=!0,this.emit("resume"),this[de].length?this[Q]():this[I]?this[C]():this.emit("drain"))}resume(){return this[ue]()}pause(){this[ce]=!1,this[fe]=!0,this[xt]=!1}get destroyed(){return this[ct]}get flowing(){return this[ce]}get paused(){return this[fe]}[De](Fn){this[et]?this[Se]+=1:this[Se]+=Fn.length,this[de].push(Fn)}[k](){return this[et]?this[Se]-=1:this[Se]-=this[de][0].length,this[de].shift()}[Q](Fn=!1){do;while(this[X](this[k]())&&this[de].length);!Fn&&!this[de].length&&!this[I]&&this.emit("drain")}[X](Fn){return this.emit("data",Fn),this[ce]}pipe(Fn,Nn){if(this[ct])return Fn;this[xt]=!1;let Hi=this[b];return Nn=Nn||{},Fn===r.stdout||Fn===r.stderr?Nn.end=!1:Nn.end=Nn.end!==!1,Nn.proxyErrors=!!Nn.proxyErrors,Hi?Nn.end&&Fn.end():(this[be].push(Nn.proxyErrors?new qr(this,Fn,Nn):new Ar(this,Fn,Nn)),this[Yt]?Zr(()=>this[ue]()):this[ue]()),Fn}unpipe(Fn){let Nn=this[be].find(Hi=>Hi.dest===Fn);Nn&&(this[be].length===1?(this[ce]&&this[vt]===0&&(this[ce]=!1),this[be]=[]):this[be].splice(this[be].indexOf(Nn),1),Nn.unpipe())}addListener(Fn,Nn){return this.on(Fn,Nn)}on(Fn,Nn){let Hi=super.on(Fn,Nn);if(Fn==="data")this[xt]=!1,this[vt]++,!this[be].length&&!this[ce]&&this[ue]();else if(Fn==="readable"&&this[Se]!==0)super.emit("readable");else if(Xt(Fn)&&this[b])super.emit(Fn),this.removeAllListeners(Fn);else if(Fn==="error"&&this[N]){let po=Nn;this[Yt]?Zr(()=>po.call(this,this[N])):po.call(this,this[N])}return Hi}removeListener(Fn,Nn){return this.off(Fn,Nn)}off(Fn,Nn){let Hi=super.off(Fn,Nn);return Fn==="data"&&(this[vt]=this.listeners("data").length,this[vt]===0&&!this[xt]&&!this[be].length&&(this[ce]=!1)),Hi}removeAllListeners(Fn){let Nn=super.removeAllListeners(Fn);return(Fn==="data"||Fn===void 0)&&(this[vt]=0,!this[xt]&&!this[be].length&&(this[ce]=!1)),Nn}get emittedEnd(){return this[b]}[C](){!this[E]&&!this[b]&&!this[ct]&&this[de].length===0&&this[I]&&(this[E]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[B]&&this.emit("close"),this[E]=!1)}emit(Fn,...Nn){let Hi=Nn[0];if(Fn!=="error"&&Fn!=="close"&&Fn!==ct&&this[ct])return!1;if(Fn==="data")return!this[et]&&!Hi?!1:this[Yt]?(Zr(()=>this[je](Hi)),!0):this[je](Hi);if(Fn==="end")return this[St]();if(Fn==="close"){if(this[B]=!0,!this[b]&&!this[ct])return!1;let Vr=super.emit("close");return this.removeAllListeners("close"),Vr}else if(Fn==="error"){this[N]=Hi,super.emit(Me,Hi);let Vr=!this[er]||this.listeners("error").length?super.emit("error",Hi):!1;return this[C](),Vr}else if(Fn==="resume"){let Vr=super.emit("resume");return this[C](),Vr}else if(Fn==="finish"||Fn==="prefinish"){let Vr=super.emit(Fn);return this.removeAllListeners(Fn),Vr}let po=super.emit(Fn,...Nn);return this[C](),po}[je](Fn){for(let Hi of this[be])Hi.dest.write(Fn)===!1&&this.pause();let Nn=this[xt]?!1:super.emit("data",Fn);return this[C](),Nn}[St](){return this[b]?!1:(this[b]=!0,this.readable=!1,this[Yt]?(Zr(()=>this[At]()),!0):this[At]())}[At](){if(this[ne]){let Nn=this[ne].end();if(Nn){for(let Hi of this[be])Hi.dest.write(Nn);this[xt]||super.emit("data",Nn)}}for(let Nn of this[be])Nn.end();let Fn=super.emit("end");return this.removeAllListeners("end"),Fn}async collect(){let Fn=Object.assign([],{dataLength:0});this[et]||(Fn.dataLength=0);let Nn=this.promise();return this.on("data",Hi=>{Fn.push(Hi),this[et]||(Fn.dataLength+=Hi.length)}),await Nn,Fn}async concat(){if(this[et])throw new Error("cannot concat in objectMode");let Fn=await this.collect();return this[ae]?Fn.join(""):Buffer.concat(Fn,Fn.dataLength)}async promise(){return new Promise((Fn,Nn)=>{this.on(ct,()=>Nn(new Error("stream destroyed"))),this.on("error",Hi=>Nn(Hi)),this.on("end",()=>Fn())})}[Symbol.asyncIterator](){this[xt]=!1;let Fn=!1,Nn=async()=>(this.pause(),Fn=!0,{value:void 0,done:!0});return{next:()=>{if(Fn)return Nn();let Hi=this.read();if(Hi!==null)return Promise.resolve({done:!1,value:Hi});if(this[I])return Nn();let po,Vr,xi=Gc=>{this.off("data",io),this.off("end",ga),this.off(ct,Ya),Nn(),Vr(Gc)},io=Gc=>{this.off("error",xi),this.off("end",ga),this.off(ct,Ya),this.pause(),po({value:Gc,done:!!this[I]})},ga=()=>{this.off("error",xi),this.off("data",io),this.off(ct,Ya),Nn(),po({done:!0,value:void 0})},Ya=()=>xi(new Error("stream destroyed"));return new Promise((Gc,cl)=>{Vr=cl,po=Gc,this.once(ct,Ya),this.once("error",xi),this.once("end",ga),this.once("data",io)})},throw:Nn,return:Nn,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[xt]=!1;let Fn=!1,Nn=()=>(this.pause(),this.off(Me,Nn),this.off(ct,Nn),this.off("end",Nn),Fn=!0,{done:!0,value:void 0}),Hi=()=>{if(Fn)return Nn();let po=this.read();return po===null?Nn():{done:!1,value:po}};return this.once("end",Nn),this.once(Me,Nn),this.once(ct,Nn),{next:Hi,throw:Nn,return:Nn,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(Fn){if(this[ct])return Fn?this.emit("error",Fn):this.emit(ct),this;this[ct]=!0,this[xt]=!0,this[de].length=0,this[Se]=0;let Nn=this;return typeof Nn.close=="function"&&!this[B]&&Nn.close(),Fn?this.emit("error",Fn):this.emit(ct),this}static get isStream(){return e.isStream}};e.Minipass=jt}),R5e=yC(e=>{"use strict";var t=e&&e.__importDefault||function(vt){return vt&&vt.__esModule?vt:{default:vt}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteStreamSync=e.WriteStream=e.ReadStreamSync=e.ReadStream=void 0;var r=t(wt("events")),n=t(wt("fs")),a=T5e(),o=n.default.writev,l=Symbol("_autoClose"),A=Symbol("_close"),f=Symbol("_ended"),I=Symbol("_fd"),C=Symbol("_finished"),b=Symbol("_flags"),E=Symbol("_flush"),N=Symbol("_handleChunk"),B=Symbol("_makeBuf"),F=Symbol("_mode"),Q=Symbol("_needDrain"),X=Symbol("_onerror"),ae=Symbol("_onopen"),ne=Symbol("_onread"),ce=Symbol("_onwrite"),fe=Symbol("_open"),ue=Symbol("_path"),de=Symbol("_pos"),be=Symbol("_queue"),Se=Symbol("_read"),De=Symbol("_readSize"),k=Symbol("_reading"),et=Symbol("_remain"),ct=Symbol("_size"),Me=Symbol("_write"),je=Symbol("_writing"),St=Symbol("_defaultFlag"),At=Symbol("_errored"),Yt=class extends a.Minipass{[At]=!1;[I];[ue];[De];[k]=!1;[ct];[et];[l];constructor(vt,xt){if(xt=xt||{},super(xt),this.readable=!0,this.writable=!1,typeof vt!="string")throw new TypeError("path must be a string");this[At]=!1,this[I]=typeof xt.fd=="number"?xt.fd:void 0,this[ue]=vt,this[De]=xt.readSize||16*1024*1024,this[k]=!1,this[ct]=typeof xt.size=="number"?xt.size:1/0,this[et]=this[ct],this[l]=typeof xt.autoClose=="boolean"?xt.autoClose:!0,typeof this[I]=="number"?this[Se]():this[fe]()}get fd(){return this[I]}get path(){return this[ue]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[fe](){n.default.open(this[ue],"r",(vt,xt)=>this[ae](vt,xt))}[ae](vt,xt){vt?this[X](vt):(this[I]=xt,this.emit("open",xt),this[Se]())}[B](){return Buffer.allocUnsafe(Math.min(this[De],this[et]))}[Se](){if(!this[k]){this[k]=!0;let vt=this[B]();if(vt.length===0)return process.nextTick(()=>this[ne](null,0,vt));n.default.read(this[I],vt,0,vt.length,null,(xt,Zr,qt)=>this[ne](xt,Zr,qt))}}[ne](vt,xt,Zr){this[k]=!1,vt?this[X](vt):this[N](xt,Zr)&&this[Se]()}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.close(vt,xt=>xt?this.emit("error",xt):this.emit("close"))}}[X](vt){this[k]=!0,this[A](),this.emit("error",vt)}[N](vt,xt){let Zr=!1;return this[et]-=vt,vt>0&&(Zr=super.write(vtthis[ae](vt,xt))}[ae](vt,xt){this[St]&&this[b]==="r+"&&vt&&vt.code==="ENOENT"?(this[b]="w",this[fe]()):vt?this[X](vt):(this[I]=xt,this.emit("open",xt),this[je]||this[E]())}end(vt,xt){return vt&&this.write(vt,xt),this[f]=!0,!this[je]&&!this[be].length&&typeof this[I]=="number"&&this[ce](null,0),this}write(vt,xt){return typeof vt=="string"&&(vt=Buffer.from(vt,xt)),this[f]?(this.emit("error",new Error("write() after end()")),!1):this[I]===void 0||this[je]||this[be].length?(this[be].push(vt),this[Q]=!0,!1):(this[je]=!0,this[Me](vt),!0)}[Me](vt){n.default.write(this[I],vt,0,vt.length,this[de],(xt,Zr)=>this[ce](xt,Zr))}[ce](vt,xt){vt?this[X](vt):(this[de]!==void 0&&typeof xt=="number"&&(this[de]+=xt),this[be].length?this[E]():(this[je]=!1,this[f]&&!this[C]?(this[C]=!0,this[A](),this.emit("finish")):this[Q]&&(this[Q]=!1,this.emit("drain"))))}[E](){if(this[be].length===0)this[f]&&this[ce](null,0);else if(this[be].length===1)this[Me](this[be].pop());else{let vt=this[be];this[be]=[],o(this[I],vt,this[de],(xt,Zr)=>this[ce](xt,Zr))}}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.close(vt,xt=>xt?this.emit("error",xt):this.emit("close"))}}};e.WriteStream=Nr;var er=class extends Nr{[fe](){let vt;if(this[St]&&this[b]==="r+")try{vt=n.default.openSync(this[ue],this[b],this[F])}catch(xt){if(xt?.code==="ENOENT")return this[b]="w",this[fe]();throw xt}else vt=n.default.openSync(this[ue],this[b],this[F]);this[ae](null,vt)}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.closeSync(vt),this.emit("close")}}[Me](vt){let xt=!0;try{this[ce](null,n.default.writeSync(this[I],vt,0,vt.length,this[de])),xt=!1}finally{if(xt)try{this[A]()}catch{}}}};e.WriteStreamSync=er}),UAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dealias=e.isNoFile=e.isFile=e.isAsync=e.isSync=e.isAsyncNoFile=e.isSyncNoFile=e.isAsyncFile=e.isSyncFile=void 0;var t=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),r=E=>!!E.sync&&!!E.file;e.isSyncFile=r;var n=E=>!E.sync&&!!E.file;e.isAsyncFile=n;var a=E=>!!E.sync&&!E.file;e.isSyncNoFile=a;var o=E=>!E.sync&&!E.file;e.isAsyncNoFile=o;var l=E=>!!E.sync;e.isSync=l;var A=E=>!E.sync;e.isAsync=A;var f=E=>!!E.file;e.isFile=f;var I=E=>!E.file;e.isNoFile=I;var C=E=>t.get(E)||E,b=(E={})=>{if(!E)return{};let N={};for(let[B,F]of Object.entries(E)){let Q=C(B);N[Q]=F}return N.chmod===void 0&&N.noChmod===!1&&(N.chmod=!0),delete N.noChmod,N};e.dealias=b}),N5e=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.makeCommand=void 0;var t=UAr(),r=(n,a,o,l,A)=>Object.assign((f=[],I,C)=>{Array.isArray(f)&&(I=f,f={}),typeof I=="function"&&(C=I,I=void 0),I=I?Array.from(I):[];let b=(0,t.dealias)(f);if(A?.(b,I),(0,t.isSyncFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return n(b,I)}else if((0,t.isAsyncFile)(b)){let E=a(b,I);return C?E.then(()=>C(),C):E}else if((0,t.isSyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return o(b,I)}else if((0,t.isAsyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback only supported with file option");return l(b,I)}throw new Error("impossible options??")},{syncFile:n,asyncFile:a,syncNoFile:o,asyncNoFile:l,validate:A});e.makeCommand=r}),sLn=yC(e=>{"use strict";var t=e&&e.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(e,"__esModule",{value:!0}),e.constants=void 0;var r=t(wt("zlib")),n=r.default.constants||{ZLIB_VERNUM:4736};e.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},n))}),oLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(At,Yt,Tr,Nr){Nr===void 0&&(Nr=Tr);var er=Object.getOwnPropertyDescriptor(Yt,Tr);(!er||("get"in er?!Yt.__esModule:er.writable||er.configurable))&&(er={enumerable:!0,get:function(){return Yt[Tr]}}),Object.defineProperty(At,Nr,er)}:function(At,Yt,Tr,Nr){Nr===void 0&&(Nr=Tr),At[Nr]=Yt[Tr]}),r=e&&e.__setModuleDefault||(Object.create?function(At,Yt){Object.defineProperty(At,"default",{enumerable:!0,value:Yt})}:function(At,Yt){At.default=Yt}),n=e&&e.__importStar||function(){var At=function(Yt){return At=Object.getOwnPropertyNames||function(Tr){var Nr=[];for(var er in Tr)Object.prototype.hasOwnProperty.call(Tr,er)&&(Nr[Nr.length]=er);return Nr},At(Yt)};return function(Yt){if(Yt&&Yt.__esModule)return Yt;var Tr={};if(Yt!=null)for(var Nr=At(Yt),er=0;erAt,B=E?.writable===!0||E?.set!==void 0?At=>{l.Buffer.concat=At?N:b}:At=>{},F=Symbol("_superWrite"),Q=class extends Error{code;errno;constructor(At,Yt){super("zlib: "+At.message,{cause:At}),this.code=At.code,this.errno=At.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+At.message,Error.captureStackTrace(this,Yt??this.constructor)}get name(){return"ZlibError"}};e.ZlibError=Q;var X=Symbol("flushFlag"),ae=class extends A.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(At,Yt){if(!At||typeof At!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(At),this.#n=At.flush??0,this.#r=At.finishFlush??0,this.#i=At.fullFlushFlag??0,typeof f[Yt]!="function")throw new TypeError("Compression method not supported: "+Yt);try{this.#s=new f[Yt](At)}catch(Tr){throw new Q(Tr,this.constructor)}this.#o=Tr=>{this.#e||(this.#e=!0,this.close(),this.emit("error",Tr))},this.#s?.on("error",Tr=>this.#o(new Q(Tr))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,o.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(At){this.ended||(typeof At!="number"&&(At=this.#i),this.write(Object.assign(l.Buffer.alloc(0),{[X]:At})))}end(At,Yt,Tr){return typeof At=="function"&&(Tr=At,Yt=void 0,At=void 0),typeof Yt=="function"&&(Tr=Yt,Yt=void 0),At&&(Yt?this.write(At,Yt):this.write(At)),this.flush(this.#r),this.#t=!0,super.end(Tr)}get ended(){return this.#t}[F](At){return super.write(At)}write(At,Yt,Tr){if(typeof Yt=="function"&&(Tr=Yt,Yt="utf8"),typeof At=="string"&&(At=l.Buffer.from(At,Yt)),this.#e)return;(0,o.default)(this.#s,"zlib binding closed");let Nr=this.#s._handle,er=Nr.close;Nr.close=()=>{};let vt=this.#s.close;this.#s.close=()=>{},B(!0);let xt;try{let qt=typeof At[X]=="number"?At[X]:this.#n;xt=this.#s._processChunk(At,qt),B(!1)}catch(qt){B(!1),this.#o(new Q(qt,this.write))}finally{this.#s&&(this.#s._handle=Nr,Nr.close=er,this.#s.close=vt,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",qt=>this.#o(new Q(qt,this.write)));let Zr;if(xt)if(Array.isArray(xt)&&xt.length>0){let qt=xt[0];Zr=this[F](l.Buffer.from(qt));for(let Xt=1;Xt{typeof Nr=="function"&&(er=Nr,Nr=this.flushFlag),this.flush(Nr),er?.()};try{this.handle.params(At,Yt)}finally{this.handle.flush=Tr}this.handle&&(this.#e=At,this.#t=Yt)}}}};e.Zlib=ne;var ce=class extends ne{constructor(At){super(At,"Deflate")}};e.Deflate=ce;var fe=class extends ne{constructor(At){super(At,"Inflate")}};e.Inflate=fe;var ue=class extends ne{#e;constructor(At){super(At,"Gzip"),this.#e=At&&!!At.portable}[F](At){return this.#e?(this.#e=!1,At[9]=255,super[F](At)):super[F](At)}};e.Gzip=ue;var de=class extends ne{constructor(At){super(At,"Gunzip")}};e.Gunzip=de;var be=class extends ne{constructor(At){super(At,"DeflateRaw")}};e.DeflateRaw=be;var Se=class extends ne{constructor(At){super(At,"InflateRaw")}};e.InflateRaw=Se;var De=class extends ne{constructor(At){super(At,"Unzip")}};e.Unzip=De;var k=class extends ae{constructor(At,Yt){At=At||{},At.flush=At.flush||I.constants.BROTLI_OPERATION_PROCESS,At.finishFlush=At.finishFlush||I.constants.BROTLI_OPERATION_FINISH,At.fullFlushFlag=I.constants.BROTLI_OPERATION_FLUSH,super(At,Yt)}},et=class extends k{constructor(At){super(At,"BrotliCompress")}};e.BrotliCompress=et;var ct=class extends k{constructor(At){super(At,"BrotliDecompress")}};e.BrotliDecompress=ct;var Me=class extends ae{constructor(At,Yt){At=At||{},At.flush=At.flush||I.constants.ZSTD_e_continue,At.finishFlush=At.finishFlush||I.constants.ZSTD_e_end,At.fullFlushFlag=I.constants.ZSTD_e_flush,super(At,Yt)}},je=class extends Me{constructor(At){super(At,"ZstdCompress")}};e.ZstdCompress=je;var St=class extends Me{constructor(At){super(At,"ZstdDecompress")}};e.ZstdDecompress=St}),KOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.parse=e.encode=void 0;var t=(I,C)=>{if(Number.isSafeInteger(I))I<0?n(I,C):r(I,C);else throw Error("cannot encode number outside of javascript safe integer range");return C};e.encode=t;var r=(I,C)=>{C[0]=128;for(var b=C.length;b>1;b--)C[b-1]=I&255,I=Math.floor(I/256)},n=(I,C)=>{C[0]=255;var b=!1;I=I*-1;for(var E=C.length;E>1;E--){var N=I&255;I=Math.floor(I/256),b?C[E-1]=A(N):N===0?C[E-1]=0:(b=!0,C[E-1]=f(N))}},a=I=>{let C=I[0],b=C===128?l(I.subarray(1,I.length)):C===255?o(I):null;if(b===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(b))throw Error("parsed number outside of javascript safe integer range");return b};e.parse=a;var o=I=>{for(var C=I.length,b=0,E=!1,N=C-1;N>-1;N--){var B=Number(I[N]),F;E?F=A(B):B===0?F=B:(E=!0,F=f(B)),F!==0&&(b-=F*Math.pow(256,C-N-1))}return b},l=I=>{for(var C=I.length,b=0,E=C-1;E>-1;E--){var N=Number(I[E]);N!==0&&(b+=N*Math.pow(256,C-E-1))}return b},A=I=>(255^I)&255,f=I=>(255^I)+1&255}),aLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.code=e.name=e.isName=e.isCode=void 0;var t=n=>e.name.has(n);e.isCode=t;var r=n=>e.code.has(n);e.isName=r,e.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),e.code=new Map(Array.from(e.name).map(n=>[n[1],n[0]]))}),D5e=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(de,be,Se,De){De===void 0&&(De=Se);var k=Object.getOwnPropertyDescriptor(be,Se);(!k||("get"in k?!be.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return be[Se]}}),Object.defineProperty(de,De,k)}:function(de,be,Se,De){De===void 0&&(De=Se),de[De]=be[Se]}),r=e&&e.__setModuleDefault||(Object.create?function(de,be){Object.defineProperty(de,"default",{enumerable:!0,value:be})}:function(de,be){de.default=be}),n=e&&e.__importStar||function(){var de=function(be){return de=Object.getOwnPropertyNames||function(Se){var De=[];for(var k in Se)Object.prototype.hasOwnProperty.call(Se,k)&&(De[De.length]=k);return De},de(be)};return function(be){if(be&&be.__esModule)return be;var Se={};if(be!=null)for(var De=de(be),k=0;k=be+512))throw new Error("need 512 bytes for header");this.path=Se?.path??I(de,be,100),this.mode=Se?.mode??De?.mode??E(de,be+100,8),this.uid=Se?.uid??De?.uid??E(de,be+108,8),this.gid=Se?.gid??De?.gid??E(de,be+116,8),this.size=Se?.size??De?.size??E(de,be+124,12),this.mtime=Se?.mtime??De?.mtime??C(de,be+136,12),this.cksum=E(de,be+148,12),De&&this.#t(De,!0),Se&&this.#t(Se);let k=I(de,be+156,1);if(l.isCode(k)&&(this.#e=k||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=I(de,be+157,100),de.subarray(be+257,be+265).toString()==="ustar\x0000")if(this.uname=Se?.uname??De?.uname??I(de,be+265,32),this.gname=Se?.gname??De?.gname??I(de,be+297,32),this.devmaj=Se?.devmaj??De?.devmaj??E(de,be+329,8)??0,this.devmin=Se?.devmin??De?.devmin??E(de,be+337,8)??0,de[be+475]!==0){let ct=I(de,be+345,155);this.path=ct+"/"+this.path}else{let ct=I(de,be+345,130);ct&&(this.path=ct+"/"+this.path),this.atime=Se?.atime??De?.atime??C(de,be+476,12),this.ctime=Se?.ctime??De?.ctime??C(de,be+488,12)}let et=256;for(let ct=be;ct!(De==null||Se==="path"&&be||Se==="linkpath"&&be||Se==="global"))))}encode(de,be=0){if(de||(de=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(de.length>=be+512))throw new Error("need 512 bytes for header");let Se=this.ctime||this.atime?130:155,De=f(this.path||"",Se),k=De[0],et=De[1];this.needPax=!!De[2],this.needPax=ue(de,be,100,k)||this.needPax,this.needPax=Q(de,be+100,8,this.mode)||this.needPax,this.needPax=Q(de,be+108,8,this.uid)||this.needPax,this.needPax=Q(de,be+116,8,this.gid)||this.needPax,this.needPax=Q(de,be+124,12,this.size)||this.needPax,this.needPax=ce(de,be+136,12,this.mtime)||this.needPax,de[be+156]=Number(this.#e.codePointAt(0)),this.needPax=ue(de,be+157,100,this.linkpath)||this.needPax,de.write("ustar\x0000",be+257,8),this.needPax=ue(de,be+265,32,this.uname)||this.needPax,this.needPax=ue(de,be+297,32,this.gname)||this.needPax,this.needPax=Q(de,be+329,8,this.devmaj)||this.needPax,this.needPax=Q(de,be+337,8,this.devmin)||this.needPax,this.needPax=ue(de,be+345,Se,et)||this.needPax,de[be+475]!==0?this.needPax=ue(de,be+345,155,et)||this.needPax:(this.needPax=ue(de,be+345,130,et)||this.needPax,this.needPax=ce(de,be+476,12,this.atime)||this.needPax,this.needPax=ce(de,be+488,12,this.ctime)||this.needPax);let ct=256;for(let Me=be;Me{let Se=de,De="",k,et=a.posix.parse(de).root||".";if(Buffer.byteLength(Se)<100)k=[Se,De,!1];else{De=a.posix.dirname(Se),Se=a.posix.basename(Se);do Buffer.byteLength(Se)<=100&&Buffer.byteLength(De)<=be?k=[Se,De,!1]:Buffer.byteLength(Se)>100&&Buffer.byteLength(De)<=be?k=[Se.slice(0,99),De,!0]:(Se=a.posix.join(a.posix.basename(De),Se),De=a.posix.dirname(De));while(De!==et&&k===void 0);k||(k=[de.slice(0,99),"",!0])}return k},I=(de,be,Se)=>de.subarray(be,be+Se).toString("utf8").replace(/\0.*/,""),C=(de,be,Se)=>b(E(de,be,Se)),b=de=>de===void 0?void 0:new Date(de*1e3),E=(de,be,Se)=>Number(de[be])&128?o.parse(de.subarray(be,be+Se)):B(de,be,Se),N=de=>isNaN(de)?void 0:de,B=(de,be,Se)=>N(parseInt(de.subarray(be,be+Se).toString("utf8").replace(/\0.*$/,"").trim(),8)),F={12:8589934591,8:2097151},Q=(de,be,Se,De)=>De===void 0?!1:De>F[Se]||De<0?(o.encode(De,de.subarray(be,be+Se)),!0):(X(de,be,Se,De),!1),X=(de,be,Se,De)=>de.write(ae(De,Se),be,Se,"ascii"),ae=(de,be)=>ne(Math.floor(de).toString(8),be),ne=(de,be)=>(de.length===be-1?de:new Array(be-de.length-1).join("0")+de+" ")+"\0",ce=(de,be,Se,De)=>De===void 0?!1:Q(de,be,Se,De.getTime()/1e3),fe=new Array(156).join("\0"),ue=(de,be,Se,De)=>De===void 0?!1:(de.write(De+fe,be,Se,"utf8"),De.length!==Buffer.byteLength(De)||De.length>Se)}),KAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Pax=void 0;var t=wt("node:path"),r=D5e(),n=class cLn{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(f,I=!1){this.atime=f.atime,this.charset=f.charset,this.comment=f.comment,this.ctime=f.ctime,this.dev=f.dev,this.gid=f.gid,this.global=I,this.gname=f.gname,this.ino=f.ino,this.linkpath=f.linkpath,this.mtime=f.mtime,this.nlink=f.nlink,this.path=f.path,this.size=f.size,this.uid=f.uid,this.uname=f.uname}encode(){let f=this.encodeBody();if(f==="")return Buffer.allocUnsafe(0);let I=Buffer.byteLength(f),C=512*Math.ceil(1+I/512),b=Buffer.allocUnsafe(C);for(let E=0;E<512;E++)b[E]=0;new r.Header({path:("PaxHeader/"+(0,t.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:I,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(b),b.write(f,512,I,"utf8");for(let E=I+512;E=Math.pow(10,N)&&(N+=1),N+E+b}static parse(f,I,C=!1){return new cLn(a(o(f),I),C)}};e.Pax=n;var a=(A,f)=>f?Object.assign({},f,A):A,o=A=>A.replace(/\n$/,"").split(` +`).reduce(l,Object.create(null)),l=(A,f)=>{let I=parseInt(f,10);if(I!==Buffer.byteLength(f)+1)return A;f=f.slice((I+" ").length);let C=f.split("="),b=C.shift();if(!b)return A;let E=b.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),N=C.join("=");return A[E]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(E)?new Date(Number(N)*1e3):/^[0-9]+$/.test(N)?+N:N,A}}),k5e=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeWindowsPath=void 0;var t=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;e.normalizeWindowsPath=t!=="win32"?r=>r:r=>r&&r.replaceAll(/\\/g,"/")}),jAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ReadEntry=void 0;var t=T5e(),r=k5e(),n=class extends t.Minipass{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(a,o,l){switch(super({}),this.pause(),this.extended=o,this.globalExtended=l,this.header=a,this.remain=a.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=a.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!a.path)throw new Error("no path provided for tar.ReadEntry");this.path=(0,r.normalizeWindowsPath)(a.path),this.mode=a.mode,this.mode&&(this.mode=this.mode&4095),this.uid=a.uid,this.gid=a.gid,this.uname=a.uname,this.gname=a.gname,this.size=this.remain,this.mtime=a.mtime,this.atime=a.atime,this.ctime=a.ctime,this.linkpath=a.linkpath?(0,r.normalizeWindowsPath)(a.linkpath):void 0,this.uname=a.uname,this.gname=a.gname,o&&this.#e(o),l&&this.#e(l,!0)}write(a){let o=a.length;if(o>this.blockRemain)throw new Error("writing more to entry than is appropriate");let l=this.remain,A=this.blockRemain;return this.remain=Math.max(0,l-o),this.blockRemain=Math.max(0,A-o),this.ignore?!0:l>=o?super.write(a):super.write(a.subarray(0,l))}#e(a,o=!1){a.path&&(a.path=(0,r.normalizeWindowsPath)(a.path)),a.linkpath&&(a.linkpath=(0,r.normalizeWindowsPath)(a.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(a).filter(([l,A])=>!(A==null||l==="path"&&o))))}};e.ReadEntry=n}),zAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.warnMethod=void 0;var t=(r,n,a,o={})=>{r.file&&(o.file=r.file),r.cwd&&(o.cwd=r.cwd),o.code=a instanceof Error&&a.code||n,o.tarCode=n,!r.strict&&o.recoverable!==!1?(a instanceof Error&&(o=Object.assign(a,o),a=a.message),r.emit("warn",n,a,o)):a instanceof Error?r.emit("error",Object.assign(a,o)):r.emit("error",Object.assign(new Error(`${n}: ${a}`),o))};e.warnMethod=t}),qAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Parser=void 0;var t=wt("events"),r=oLn(),n=D5e(),a=KAr(),o=jAr(),l=zAr(),A=1024*1024,f=Buffer.from([31,139]),I=Buffer.from([40,181,47,253]),C=Math.max(f.length,I.length),b=Symbol("state"),E=Symbol("writeEntry"),N=Symbol("readEntry"),B=Symbol("nextEntry"),F=Symbol("processEntry"),Q=Symbol("extendedHeader"),X=Symbol("globalExtendedHeader"),ae=Symbol("meta"),ne=Symbol("emitMeta"),ce=Symbol("buffer"),fe=Symbol("queue"),ue=Symbol("ended"),de=Symbol("emittedEnd"),be=Symbol("emit"),Se=Symbol("unzip"),De=Symbol("consumeChunk"),k=Symbol("consumeChunkSub"),et=Symbol("consumeBody"),ct=Symbol("consumeMeta"),Me=Symbol("consumeHeader"),je=Symbol("consuming"),St=Symbol("bufferConcat"),At=Symbol("maybeEnd"),Yt=Symbol("writing"),Tr=Symbol("aborted"),Nr=Symbol("onDone"),er=Symbol("sawValidEntry"),vt=Symbol("sawNullBlock"),xt=Symbol("sawEOF"),Zr=Symbol("closeStream"),qt=()=>!0,Xt=class extends t.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[fe]=[];[ce];[N];[E];[b]="begin";[ae]="";[Q];[X];[ue]=!1;[Se];[Tr]=!1;[er];[vt]=!1;[xt]=!1;[Yt]=!1;[je]=!1;[de]=!1;constructor(lr={}){super(),this.file=lr.file||"",this.on(Nr,()=>{(this[b]==="begin"||this[er]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),lr.ondone?this.on(Nr,lr.ondone):this.on(Nr,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!lr.strict,this.maxMetaEntrySize=lr.maxMetaEntrySize||A,this.filter=typeof lr.filter=="function"?lr.filter:qt;let cr=lr.file&&(lr.file.endsWith(".tar.br")||lr.file.endsWith(".tbr"));this.brotli=!(lr.gzip||lr.zstd)&&lr.brotli!==void 0?lr.brotli:cr?void 0:!1;let Ar=lr.file&&(lr.file.endsWith(".tar.zst")||lr.file.endsWith(".tzst"));this.zstd=!(lr.gzip||lr.brotli)&&lr.zstd!==void 0?lr.zstd:Ar?!0:void 0,this.on("end",()=>this[Zr]()),typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn),typeof lr.onReadEntry=="function"&&this.on("entry",lr.onReadEntry)}warn(lr,cr,Ar={}){(0,l.warnMethod)(this,lr,cr,Ar)}[Me](lr,cr){this[er]===void 0&&(this[er]=!1);let Ar;try{Ar=new n.Header(lr,cr,this[Q],this[X])}catch(qr){return this.warn("TAR_ENTRY_INVALID",qr)}if(Ar.nullBlock)this[vt]?(this[xt]=!0,this[b]==="begin"&&(this[b]="header"),this[be]("eof")):(this[vt]=!0,this[be]("nullBlock"));else if(this[vt]=!1,!Ar.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:Ar});else if(!Ar.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:Ar});else{let qr=Ar.type;if(/^(Symbolic)?Link$/.test(qr)&&!Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:Ar});else if(!/^(Symbolic)?Link$/.test(qr)&&!/^(Global)?ExtendedHeader$/.test(qr)&&Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:Ar});else{let _n=this[E]=new o.ReadEntry(Ar,this[Q],this[X]);if(!this[er])if(_n.remain){let ke=()=>{_n.invalid||(this[er]=!0)};_n.on("end",ke)}else this[er]=!0;_n.meta?_n.size>this.maxMetaEntrySize?(_n.ignore=!0,this[be]("ignoredEntry",_n),this[b]="ignore",_n.resume()):_n.size>0&&(this[ae]="",_n.on("data",ke=>this[ae]+=ke),this[b]="meta"):(this[Q]=void 0,_n.ignore=_n.ignore||!this.filter(_n.path,_n),_n.ignore?(this[be]("ignoredEntry",_n),this[b]=_n.remain?"ignore":"header",_n.resume()):(_n.remain?this[b]="body":(this[b]="header",_n.end()),this[N]?this[fe].push(_n):(this[fe].push(_n),this[B]())))}}}[Zr](){queueMicrotask(()=>this.emit("close"))}[F](lr){let cr=!0;if(!lr)this[N]=void 0,cr=!1;else if(Array.isArray(lr)){let[Ar,...qr]=lr;this.emit(Ar,...qr)}else this[N]=lr,this.emit("entry",lr),lr.emittedEnd||(lr.on("end",()=>this[B]()),cr=!1);return cr}[B](){do;while(this[F](this[fe].shift()));if(this[fe].length===0){let lr=this[N];!lr||lr.flowing||lr.size===lr.remain?this[Yt]||this.emit("drain"):lr.once("drain",()=>this.emit("drain"))}}[et](lr,cr){let Ar=this[E];if(!Ar)throw new Error("attempt to consume body without entry??");let qr=Ar.blockRemain??0,_n=qr>=lr.length&&cr===0?lr:lr.subarray(cr,cr+qr);return Ar.write(_n),Ar.blockRemain||(this[b]="header",this[E]=void 0,Ar.end()),_n.length}[ct](lr,cr){let Ar=this[E],qr=this[et](lr,cr);return!this[E]&&Ar&&this[ne](Ar),qr}[be](lr,cr,Ar){this[fe].length===0&&!this[N]?this.emit(lr,cr,Ar):this[fe].push([lr,cr,Ar])}[ne](lr){switch(this[be]("meta",this[ae]),lr.type){case"ExtendedHeader":case"OldExtendedHeader":this[Q]=a.Pax.parse(this[ae],this[Q],!1);break;case"GlobalExtendedHeader":this[X]=a.Pax.parse(this[ae],this[X],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let cr=this[Q]??Object.create(null);this[Q]=cr,cr.path=this[ae].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let cr=this[Q]||Object.create(null);this[Q]=cr,cr.linkpath=this[ae].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+lr.type)}}abort(lr){this[Tr]=!0,this.emit("abort",lr),this.warn("TAR_ABORT",lr,{recoverable:!1})}write(lr,cr,Ar){if(typeof cr=="function"&&(Ar=cr,cr=void 0),typeof lr=="string"&&(lr=Buffer.from(lr,typeof cr=="string"?cr:"utf8")),this[Tr])return Ar?.(),!1;if((this[Se]===void 0||this.brotli===void 0&&this[Se]===!1)&&lr){if(this[ce]&&(lr=Buffer.concat([this[ce],lr]),this[ce]=void 0),lr.lengththis[De](Nn)),this[Se].on("error",Nn=>this.abort(Nn)),this[Se].on("end",()=>{this[ue]=!0,this[De]()}),this[Yt]=!0;let Fn=!!this[Se][jt?"end":"write"](lr);return this[Yt]=!1,Ar?.(),Fn}}this[Yt]=!0,this[Se]?this[Se].write(lr):this[De](lr),this[Yt]=!1;let qr=this[fe].length>0?!1:this[N]?this[N].flowing:!0;return!qr&&this[fe].length===0&&this[N]?.once("drain",()=>this.emit("drain")),Ar?.(),qr}[St](lr){lr&&!this[Tr]&&(this[ce]=this[ce]?Buffer.concat([this[ce],lr]):lr)}[At](){if(this[ue]&&!this[de]&&!this[Tr]&&!this[je]){this[de]=!0;let lr=this[E];if(lr&&lr.blockRemain){let cr=this[ce]?this[ce].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${lr.blockRemain} more bytes, only ${cr} available)`,{entry:lr}),this[ce]&&lr.write(this[ce]),lr.end()}this[be](Nr)}}[De](lr){if(this[je]&&lr)this[St](lr);else if(!lr&&!this[ce])this[At]();else if(lr){if(this[je]=!0,this[ce]){this[St](lr);let cr=this[ce];this[ce]=void 0,this[k](cr)}else this[k](lr);for(;this[ce]&&this[ce]?.length>=512&&!this[Tr]&&!this[xt];){let cr=this[ce];this[ce]=void 0,this[k](cr)}this[je]=!1}(!this[ce]||this[ue])&&this[At]()}[k](lr){let cr=0,Ar=lr.length;for(;cr+512<=Ar&&!this[Tr]&&!this[xt];)switch(this[b]){case"begin":case"header":this[Me](lr,cr),cr+=512;break;case"ignore":case"body":cr+=this[et](lr,cr);break;case"meta":cr+=this[ct](lr,cr);break;default:throw new Error("invalid state: "+this[b])}cr{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripTrailingSlashes=void 0;var t=r=>{let n=r.length-1,a=-1;for(;n>-1&&r.charAt(n)==="/";)a=n,n--;return a===-1?r:r.slice(0,a)};e.stripTrailingSlashes=t}),x5e=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(F,Q,X,ae){ae===void 0&&(ae=X);var ne=Object.getOwnPropertyDescriptor(Q,X);(!ne||("get"in ne?!Q.__esModule:ne.writable||ne.configurable))&&(ne={enumerable:!0,get:function(){return Q[X]}}),Object.defineProperty(F,ae,ne)}:function(F,Q,X,ae){ae===void 0&&(ae=X),F[ae]=Q[X]}),r=e&&e.__setModuleDefault||(Object.create?function(F,Q){Object.defineProperty(F,"default",{enumerable:!0,value:Q})}:function(F,Q){F.default=Q}),n=e&&e.__importStar||function(){var F=function(Q){return F=Object.getOwnPropertyNames||function(X){var ae=[];for(var ne in X)Object.prototype.hasOwnProperty.call(X,ne)&&(ae[ae.length]=ne);return ae},F(Q)};return function(Q){if(Q&&Q.__esModule)return Q;var X={};if(Q!=null)for(var ae=F(Q),ne=0;ne{let Q=F.onReadEntry;F.onReadEntry=Q?X=>{Q(X),X.resume()}:X=>X.resume()},E=(F,Q)=>{let X=new Map(Q.map(ce=>[(0,C.stripTrailingSlashes)(ce),!0])),ae=F.filter,ne=(ce,fe="")=>{let ue=fe||(0,A.parse)(ce).root||".",de;if(ce===ue)de=!1;else{let be=X.get(ce);de=be!==void 0?be:ne((0,A.dirname)(ce),ue)}return X.set(ce,de),de};F.filter=ae?(ce,fe)=>ae(ce,fe)&&ne((0,C.stripTrailingSlashes)(ce)):ce=>ne((0,C.stripTrailingSlashes)(ce))};e.filesFilter=E;var N=F=>{let Q=new I.Parser(F),X=F.file,ae;try{ae=l.default.openSync(X,"r");let ne=l.default.fstatSync(ae),ce=F.maxReadSize||16*1024*1024;if(ne.size{let X=new I.Parser(F),ae=F.maxReadSize||16*1024*1024,ne=F.file;return new Promise((ce,fe)=>{X.on("error",fe),X.on("end",ce),l.default.stat(ne,(ue,de)=>{if(ue)fe(ue);else{let be=new o.ReadStream(ne,{readSize:ae,size:de.size});be.on("error",fe),be.pipe(X)}})})};e.list=(0,f.makeCommand)(N,B,F=>new I.Parser(F),F=>new I.Parser(F),(F,Q)=>{Q?.length&&(0,e.filesFilter)(F,Q),F.noResume||b(F)})}),jOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.modeFix=void 0;var t=(r,n,a)=>(r&=4095,a&&(r=(r|384)&-19),n&&(r&256&&(r|=64),r&32&&(r|=8),r&4&&(r|=1)),r);e.modeFix=t}),lLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripAbsolutePath=void 0;var t=wt("node:path"),{isAbsolute:r,parse:n}=t.win32,a=o=>{let l="",A=n(o);for(;r(o)||A.root;){let f=o.charAt(0)==="/"&&o.slice(0,4)!=="//?/"?"/":A.root;o=o.slice(f.length),l+=f,A=n(o)}return[l,o]};e.stripAbsolutePath=a}),uLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;var t=["|","<",">","?",":"],r=t.map(A=>String.fromCodePoint(61440+Number(A.codePointAt(0)))),n=new Map(t.map((A,f)=>[A,r[f]])),a=new Map(r.map((A,f)=>[A,t[f]])),o=A=>t.reduce((f,I)=>f.split(I).join(n.get(I)),A);e.encode=o;var l=A=>r.reduce((f,I)=>f.split(I).join(a.get(I)),A);e.decode=l}),gLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(qt,Xt,lr,cr){cr===void 0&&(cr=lr);var Ar=Object.getOwnPropertyDescriptor(Xt,lr);(!Ar||("get"in Ar?!Xt.__esModule:Ar.writable||Ar.configurable))&&(Ar={enumerable:!0,get:function(){return Xt[lr]}}),Object.defineProperty(qt,cr,Ar)}:function(qt,Xt,lr,cr){cr===void 0&&(cr=lr),qt[cr]=Xt[lr]}),r=e&&e.__setModuleDefault||(Object.create?function(qt,Xt){Object.defineProperty(qt,"default",{enumerable:!0,value:Xt})}:function(qt,Xt){qt.default=Xt}),n=e&&e.__importStar||function(){var qt=function(Xt){return qt=Object.getOwnPropertyNames||function(lr){var cr=[];for(var Ar in lr)Object.prototype.hasOwnProperty.call(lr,Ar)&&(cr[cr.length]=Ar);return cr},qt(Xt)};return function(Xt){if(Xt&&Xt.__esModule)return Xt;var lr={};if(Xt!=null)for(var cr=qt(Xt),Ar=0;ArXt?(qt=(0,C.normalizeWindowsPath)(qt).replace(/^\.(\/|$)/,""),(0,B.stripTrailingSlashes)(Xt)+"/"+qt):(0,C.normalizeWindowsPath)(qt),ae=16*1024*1024,ne=Symbol("process"),ce=Symbol("file"),fe=Symbol("directory"),ue=Symbol("symlink"),de=Symbol("hardlink"),be=Symbol("header"),Se=Symbol("read"),De=Symbol("lstat"),k=Symbol("onlstat"),et=Symbol("onread"),ct=Symbol("onreadlink"),Me=Symbol("openfile"),je=Symbol("onopenfile"),St=Symbol("close"),At=Symbol("mode"),Yt=Symbol("awaitDrain"),Tr=Symbol("ondrain"),Nr=Symbol("prefix"),er=class extends l.Minipass{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#e=!1;constructor(qt,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.path=(0,C.normalizeWindowsPath)(qt),this.portable=!!lr.portable,this.maxReadSize=lr.maxReadSize||ae,this.linkCache=lr.linkCache||new Map,this.statCache=lr.statCache||new Map,this.preservePaths=!!lr.preservePaths,this.cwd=(0,C.normalizeWindowsPath)(lr.cwd||process.cwd()),this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.mtime=lr.mtime,this.prefix=lr.prefix?(0,C.normalizeWindowsPath)(lr.prefix):void 0,this.onWriteEntry=lr.onWriteEntry,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let cr=!1;if(!this.preservePaths){let[qr,_n]=(0,N.stripAbsolutePath)(this.path);qr&&typeof _n=="string"&&(this.path=_n,cr=qr)}this.win32=!!lr.win32||process.platform==="win32",this.win32&&(this.path=Q.decode(this.path.replaceAll(/\\/g,"/")),qt=qt.replaceAll(/\\/g,"/")),this.absolute=(0,C.normalizeWindowsPath)(lr.absolute||A.default.resolve(this.cwd,qt)),this.path===""&&(this.path="./"),cr&&this.warn("TAR_ENTRY_INFO",`stripping ${cr} from absolute path`,{entry:this,path:cr+this.path});let Ar=this.statCache.get(this.absolute);Ar?this[k](Ar):this[De]()}warn(qt,Xt,lr={}){return(0,F.warnMethod)(this,qt,Xt,lr)}emit(qt,...Xt){return qt==="error"&&(this.#e=!0),super.emit(qt,...Xt)}[De](){o.default.lstat(this.absolute,(qt,Xt)=>{if(qt)return this.emit("error",qt);this[k](Xt)})}[k](qt){this.statCache.set(this.absolute,qt),this.stat=qt,qt.isFile()||(qt.size=0),this.type=Zr(qt),this.emit("stat",qt),this[ne]()}[ne](){switch(this.type){case"File":return this[ce]();case"Directory":return this[fe]();case"SymbolicLink":return this[ue]();default:return this.end()}}[At](qt){return(0,I.modeFix)(qt,this.type==="Directory",this.portable)}[Nr](qt){return X(qt,this.prefix)}[be](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new f.Header({path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,mode:this[At](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let qt=this.header?.block;if(!qt)throw new Error("failed to encode header");super.write(qt)}[fe](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[be](),this.end()}[ue](){o.default.readlink(this.absolute,(qt,Xt)=>{if(qt)return this.emit("error",qt);this[ct](Xt)})}[ct](qt){this.linkpath=(0,C.normalizeWindowsPath)(qt),this[be](),this.end()}[de](qt){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=(0,C.normalizeWindowsPath)(A.default.relative(this.cwd,qt)),this.stat.size=0,this[be](),this.end()}[ce](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let qt=`${this.stat.dev}:${this.stat.ino}`,Xt=this.linkCache.get(qt);if(Xt?.indexOf(this.cwd)===0)return this[de](Xt);this.linkCache.set(qt,this.absolute)}if(this[be](),this.stat.size===0)return this.end();this[Me]()}[Me](){o.default.open(this.absolute,"r",(qt,Xt)=>{if(qt)return this.emit("error",qt);this[je](Xt)})}[je](qt){if(this.fd=qt,this.#e)return this[St]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let Xt=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(Xt),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[Se]()}[Se](){let{fd:qt,buf:Xt,offset:lr,length:cr,pos:Ar}=this;if(qt===void 0||Xt===void 0)throw new Error("cannot read file without first opening");o.default.read(qt,Xt,lr,cr,Ar,(qr,_n)=>{if(qr)return this[St](()=>this.emit("error",qr));this[et](_n)})}[St](qt=()=>{}){this.fd!==void 0&&o.default.close(this.fd,qt)}[et](qt){if(qt<=0&&this.remain>0){let lr=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[St](()=>this.emit("error",lr))}if(qt>this.remain){let lr=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[St](()=>this.emit("error",lr))}if(!this.buf)throw new Error("should have created buffer prior to reading");if(qt===this.remain)for(let lr=qt;lrthis[Tr]())}[Yt](qt){this.once("drain",qt)}write(qt,Xt,lr){if(typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,typeof Xt=="string"?Xt:"utf8")),this.blockRemainqt?this.emit("error",qt):this.end());if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[Se]()}};e.WriteEntry=er;var vt=class extends er{sync=!0;[De](){this[k](o.default.lstatSync(this.absolute))}[ue](){this[ct](o.default.readlinkSync(this.absolute))}[Me](){this[je](o.default.openSync(this.absolute,"r"))}[Se](){let qt=!0;try{let{fd:Xt,buf:lr,offset:cr,length:Ar,pos:qr}=this;if(Xt===void 0||lr===void 0)throw new Error("fd and buf must be set in READ method");let _n=o.default.readSync(Xt,lr,cr,Ar,qr);this[et](_n),qt=!1}finally{if(qt)try{this[St](()=>{})}catch{}}}[Yt](qt){qt()}[St](qt=()=>{}){this.fd!==void 0&&o.default.closeSync(this.fd),qt()}};e.WriteEntrySync=vt;var xt=class extends l.Minipass{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn(qt,Xt,lr={}){return(0,F.warnMethod)(this,qt,Xt,lr)}constructor(qt,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.preservePaths=!!lr.preservePaths,this.portable=!!lr.portable,this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.onWriteEntry=lr.onWriteEntry,this.readEntry=qt;let{type:cr}=qt;if(cr==="Unsupported")throw new Error("writing entry that should be ignored");this.type=cr,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=lr.prefix,this.path=(0,C.normalizeWindowsPath)(qt.path),this.mode=qt.mode!==void 0?this[At](qt.mode):void 0,this.uid=this.portable?void 0:qt.uid,this.gid=this.portable?void 0:qt.gid,this.uname=this.portable?void 0:qt.uname,this.gname=this.portable?void 0:qt.gname,this.size=qt.size,this.mtime=this.noMtime?void 0:lr.mtime||qt.mtime,this.atime=this.portable?void 0:qt.atime,this.ctime=this.portable?void 0:qt.ctime,this.linkpath=qt.linkpath!==void 0?(0,C.normalizeWindowsPath)(qt.linkpath):void 0,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let Ar=!1;if(!this.preservePaths){let[_n,ke]=(0,N.stripAbsolutePath)(this.path);_n&&typeof ke=="string"&&(this.path=ke,Ar=_n)}this.remain=qt.size,this.blockRemain=qt.startBlockSize,this.onWriteEntry?.(this),this.header=new f.Header({path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),Ar&&this.warn("TAR_ENTRY_INFO",`stripping ${Ar} from absolute path`,{entry:this,path:Ar+this.path}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let qr=this.header?.block;if(!qr)throw new Error("failed to encode header");super.write(qr),qt.pipe(this)}[Nr](qt){return X(qt,this.prefix)}[At](qt){return(0,I.modeFix)(qt,this.type==="Directory",this.portable)}write(qt,Xt,lr){typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,typeof Xt=="string"?Xt:"utf8"));let cr=qt.length;if(cr>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=cr,super.write(qt,lr)}end(qt,Xt,lr){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof qt=="function"&&(lr=qt,Xt=void 0,qt=void 0),typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,Xt??"utf8")),lr&&this.once("finish",lr),qt?super.end(qt,lr):super.end(lr),this}};e.WriteEntryTar=xt;var Zr=qt=>qt.isFile()?"File":qt.isDirectory()?"Directory":qt.isSymbolicLink()?"SymbolicLink":"Unsupported"}),zOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Node=e.Yallist=void 0;var t=class Rve{tail;head;length=0;static create(A=[]){return new Rve(A)}constructor(A=[]){for(let f of A)this.push(f)}*[Symbol.iterator](){for(let A=this.head;A;A=A.next)yield A.value}removeNode(A){if(A.list!==this)throw new Error("removing node which does not belong to this list");let f=A.next,I=A.prev;return f&&(f.prev=I),I&&(I.next=f),A===this.head&&(this.head=f),A===this.tail&&(this.tail=I),this.length--,A.next=void 0,A.prev=void 0,A.list=void 0,f}unshiftNode(A){if(A===this.head)return;A.list&&A.list.removeNode(A);let f=this.head;A.list=this,A.next=f,f&&(f.prev=A),this.head=A,this.tail||(this.tail=A),this.length++}pushNode(A){if(A===this.tail)return;A.list&&A.list.removeNode(A);let f=this.tail;A.list=this,A.prev=f,f&&(f.next=A),this.tail=A,this.head||(this.head=A),this.length++}push(...A){for(let f=0,I=A.length;f1)I=f;else if(this.head)C=this.head.next,I=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var b=0;C;b++)I=A(I,C.value,b),C=C.next;return I}reduceReverse(A,f){let I,C=this.tail;if(arguments.length>1)I=f;else if(this.tail)C=this.tail.prev,I=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let b=this.length-1;C;b--)I=A(I,C.value,b),C=C.prev;return I}toArray(){let A=new Array(this.length);for(let f=0,I=this.head;I;f++)A[f]=I.value,I=I.next;return A}toArrayReverse(){let A=new Array(this.length);for(let f=0,I=this.tail;I;f++)A[f]=I.value,I=I.prev;return A}slice(A=0,f=this.length){f<0&&(f+=this.length),A<0&&(A+=this.length);let I=new Rve;if(fthis.length&&(f=this.length);let C=this.head,b=0;for(b=0;C&&bthis.length&&(f=this.length);let C=this.length,b=this.tail;for(;b&&C>f;C--)b=b.prev;for(;b&&C>A;C--,b=b.prev)I.push(b.value);return I}splice(A,f=0,...I){A>this.length&&(A=this.length-1),A<0&&(A=this.length+A);let C=this.head;for(let E=0;C&&E{"use strict";var t=e&&e.__createBinding||(Object.create?function(vt,xt,Zr,qt){qt===void 0&&(qt=Zr);var Xt=Object.getOwnPropertyDescriptor(xt,Zr);(!Xt||("get"in Xt?!xt.__esModule:Xt.writable||Xt.configurable))&&(Xt={enumerable:!0,get:function(){return xt[Zr]}}),Object.defineProperty(vt,qt,Xt)}:function(vt,xt,Zr,qt){qt===void 0&&(qt=Zr),vt[qt]=xt[Zr]}),r=e&&e.__setModuleDefault||(Object.create?function(vt,xt){Object.defineProperty(vt,"default",{enumerable:!0,value:xt})}:function(vt,xt){vt.default=xt}),n=e&&e.__importStar||function(){var vt=function(xt){return vt=Object.getOwnPropertyNames||function(Zr){var qt=[];for(var Xt in Zr)Object.prototype.hasOwnProperty.call(Zr,Xt)&&(qt[qt.length]=Xt);return qt},vt(xt)};return function(xt){if(xt&&xt.__esModule)return xt;var Zr={};if(xt!=null)for(var qt=vt(xt),Xt=0;Xt1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(vt.gzip&&(typeof vt.gzip!="object"&&(vt.gzip={}),this.portable&&(vt.gzip.portable=!0),this.zip=new I.Gzip(vt.gzip)),vt.brotli&&(typeof vt.brotli!="object"&&(vt.brotli={}),this.zip=new I.BrotliCompress(vt.brotli)),vt.zstd&&(typeof vt.zstd!="object"&&(vt.zstd={}),this.zip=new I.ZstdCompress(vt.zstd)),!this.zip)throw new Error("impossible");let xt=this.zip;xt.on("data",Zr=>super.write(Zr)),xt.on("end",()=>super.end()),xt.on("drain",()=>this[At]()),this.on("resume",()=>xt.resume())}else this.on("drain",this[At]);this.noDirRecurse=!!vt.noDirRecurse,this.follow=!!vt.follow,this.noMtime=!!vt.noMtime,vt.mtime&&(this.mtime=vt.mtime),this.filter=typeof vt.filter=="function"?vt.filter:()=>!0,this[Q]=new C.Yallist,this[fe]=0,this.jobs=Number(vt.jobs)||4,this[ne]=!1,this[F]=!1}[St](vt){return super.write(vt)}add(vt){return this.write(vt),this}end(vt,xt,Zr){return typeof vt=="function"&&(Zr=vt,vt=void 0),typeof xt=="function"&&(Zr=xt,xt=void 0),vt&&this.add(vt),this[F]=!0,this[ae](),Zr&&Zr(),this}write(vt){if(this[F])throw new Error("write after end");return vt instanceof b.ReadEntry?this[be](vt):this[de](vt),this.flowing}[be](vt){let xt=(0,Tr.normalizeWindowsPath)(Yt.default.resolve(this.cwd,vt.path));if(!this.filter(vt.path,vt))vt.resume();else{let Zr=new A(vt.path,xt);Zr.entry=new l.WriteEntryTar(vt,this[Me](Zr)),Zr.entry.on("end",()=>this[ue](Zr)),this[fe]+=1,this[Q].push(Zr)}this[ae]()}[de](vt){let xt=(0,Tr.normalizeWindowsPath)(Yt.default.resolve(this.cwd,vt));this[Q].push(new A(vt,xt)),this[ae]()}[Se](vt){vt.pending=!0,this[fe]+=1;let xt=this.follow?"stat":"lstat";o.default[xt](vt.absolute,(Zr,qt)=>{vt.pending=!1,this[fe]-=1,Zr?this.emit("error",Zr):this[B](vt,qt)})}[B](vt,xt){this.statCache.set(vt.absolute,xt),vt.stat=xt,this.filter(vt.path,xt)?xt.isFile()&&xt.nlink>1&&vt===this[X]&&!this.linkCache.get(`${xt.dev}:${xt.ino}`)&&!this.sync&&this[ce](vt):vt.ignore=!0,this[ae]()}[De](vt){vt.pending=!0,this[fe]+=1,o.default.readdir(vt.absolute,(xt,Zr)=>{if(vt.pending=!1,this[fe]-=1,xt)return this.emit("error",xt);this[k](vt,Zr)})}[k](vt,xt){this.readdirCache.set(vt.absolute,xt),vt.readdir=xt,this[ae]()}[ae](){if(!this[ne]){this[ne]=!0;for(let vt=this[Q].head;vt&&this[fe]this.warn(xt,Zr,qt),noPax:this.noPax,cwd:this.cwd,absolute:vt.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[ct](vt){this[fe]+=1;try{return new this[je](vt.path,this[Me](vt)).on("end",()=>this[ue](vt)).on("error",xt=>this.emit("error",xt))}catch(xt){this.emit("error",xt)}}[At](){this[X]&&this[X].entry&&this[X].entry.resume()}[et](vt){vt.piped=!0,vt.readdir&&vt.readdir.forEach(qt=>{let Xt=vt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+qt)});let xt=vt.entry,Zr=this.zip;if(!xt)throw new Error("cannot pipe without source");Zr?xt.on("data",qt=>{Zr.write(qt)||xt.pause()}):xt.on("data",qt=>{super.write(qt)||xt.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(vt,xt,Zr={}){(0,E.warnMethod)(this,vt,xt,Zr)}};e.Pack=Nr;var er=class extends Nr{sync=!0;constructor(vt){super(vt),this[je]=l.WriteEntrySync}pause(){}resume(){}[Se](vt){let xt=this.follow?"statSync":"lstatSync";this[B](vt,o.default[xt](vt.absolute))}[De](vt){this[k](vt,o.default.readdirSync(vt.absolute))}[et](vt){let xt=vt.entry,Zr=this.zip;if(vt.readdir&&vt.readdir.forEach(qt=>{let Xt=vt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+qt)}),!xt)throw new Error("Cannot pipe without source");Zr?xt.on("data",qt=>{Zr.write(qt)}):xt.on("data",qt=>{super[St](qt)})}};e.PackSync=er}),ALn=yC(e=>{"use strict";var t=e&&e.__importDefault||function(N){return N&&N.__esModule?N:{default:N}};Object.defineProperty(e,"__esModule",{value:!0}),e.create=void 0;var r=R5e(),n=t(wt("node:path")),a=x5e(),o=N5e(),l=edr(),A=(N,B)=>{let F=new l.PackSync(N),Q=new r.WriteStreamSync(N.file,{mode:N.mode||438});F.pipe(Q),I(F,B)},f=(N,B)=>{let F=new l.Pack(N),Q=new r.WriteStream(N.file,{mode:N.mode||438});F.pipe(Q);let X=new Promise((ae,ne)=>{Q.on("error",ne),Q.on("close",ae),F.on("error",ne)});return C(F,B).catch(ae=>F.emit("error",ae)),X},I=(N,B)=>{B.forEach(F=>{F.charAt(0)==="@"?(0,a.list)({file:n.default.resolve(N.cwd,F.slice(1)),sync:!0,noResume:!0,onReadEntry:Q=>N.add(Q)}):N.add(F)}),N.end()},C=async(N,B)=>{for(let F of B)F.charAt(0)==="@"?await(0,a.list)({file:n.default.resolve(String(N.cwd),F.slice(1)),noResume:!0,onReadEntry:Q=>{N.add(Q)}}):N.add(F);N.end()},b=(N,B)=>{let F=new l.PackSync(N);return I(F,B),F},E=(N,B)=>{let F=new l.Pack(N);return C(F,B).catch(Q=>F.emit("error",Q)),F};e.create=(0,o.makeCommand)(A,f,b,E,(N,B)=>{if(!B?.length)throw new TypeError("no paths specified to add to archive")})}),qOo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(B){return B&&B.__esModule?B:{default:B}};Object.defineProperty(e,"__esModule",{value:!0}),e.getWriteFlag=void 0;var r=t(wt("fs")),n=process.platform,a=n==="win32",{O_CREAT:o,O_NOFOLLOW:l,O_TRUNC:A,O_WRONLY:f}=r.default.constants,I=Number(process.env.__FAKE_FS_O_FILENAME__)||r.default.constants.UV_FS_O_FILEMAP||0,C=a&&!!I,b=512*1024,E=I|A|o|f,N=!a&&typeof l=="number"?l|A|o|f:null;e.getWriteFlag=N!==null?()=>N:C?B=>B"w"}),$Oo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(C){return C&&C.__esModule?C:{default:C}};Object.defineProperty(e,"__esModule",{value:!0}),e.chownrSync=e.chownr=void 0;var r=t(wt("node:fs")),n=t(wt("node:path")),a=(C,b,E)=>{try{return r.default.lchownSync(C,b,E)}catch(N){if(N?.code!=="ENOENT")throw N}},o=(C,b,E,N)=>{r.default.lchown(C,b,E,B=>{N(B&&B?.code!=="ENOENT"?B:null)})},l=(C,b,E,N,B)=>{if(b.isDirectory())(0,e.chownr)(n.default.resolve(C,b.name),E,N,F=>{if(F)return B(F);let Q=n.default.resolve(C,b.name);o(Q,E,N,B)});else{let F=n.default.resolve(C,b.name);o(F,E,N,B)}},A=(C,b,E,N)=>{r.default.readdir(C,{withFileTypes:!0},(B,F)=>{if(B){if(B.code==="ENOENT")return N();if(B.code!=="ENOTDIR"&&B.code!=="ENOTSUP")return N(B)}if(B||!F.length)return o(C,b,E,N);let Q=F.length,X=null,ae=ne=>{if(!X){if(ne)return N(X=ne);if(--Q===0)return o(C,b,E,N)}};for(let ne of F)l(C,ne,b,E,ae)})};e.chownr=A;var f=(C,b,E,N)=>{b.isDirectory()&&(0,e.chownrSync)(n.default.resolve(C,b.name),E,N),a(n.default.resolve(C,b.name),E,N)},I=(C,b,E)=>{let N;try{N=r.default.readdirSync(C,{withFileTypes:!0})}catch(B){let F=B;if(F?.code==="ENOENT")return;if(F?.code==="ENOTDIR"||F?.code==="ENOTSUP")return a(C,b,E);throw F}for(let B of N)f(C,B,b,E);return a(C,b,E)};e.chownrSync=I}),e3o=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CwdError=void 0;var t=class extends Error{path;code;syscall="chdir";constructor(r,n){super(`${n}: Cannot cd into '${r}'`),this.path=r,this.code=n}get name(){return"CwdError"}};e.CwdError=t}),dLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SymlinkError=void 0;var t=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(r,n){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=r,this.path=n}get name(){return"SymlinkError"}};e.SymlinkError=t}),t3o=yC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.mkdirSync=e.mkdir=void 0;var r=$Oo(),n=t(wt("node:fs")),a=t(wt("node:fs/promises")),o=t(wt("node:path")),l=e3o(),A=k5e(),f=dLn(),I=(F,Q)=>{n.default.stat(F,(X,ae)=>{(X||!ae.isDirectory())&&(X=new l.CwdError(F,X?.code||"ENOTDIR")),Q(X)})},C=(F,Q,X)=>{F=(0,A.normalizeWindowsPath)(F);let ae=Q.umask??18,ne=Q.mode|448,ce=(ne&ae)!==0,fe=Q.uid,ue=Q.gid,de=typeof fe=="number"&&typeof ue=="number"&&(fe!==Q.processUid||ue!==Q.processGid),be=Q.preserve,Se=Q.unlink,De=(0,A.normalizeWindowsPath)(Q.cwd),k=(ct,Me)=>{ct?X(ct):Me&&de?(0,r.chownr)(Me,fe,ue,je=>k(je)):ce?n.default.chmod(F,ne,X):X()};if(F===De)return I(F,k);if(be)return a.default.mkdir(F,{mode:ne,recursive:!0}).then(ct=>k(null,ct??void 0),k);let et=(0,A.normalizeWindowsPath)(o.default.relative(De,F)).split("/");b(De,et,ne,Se,De,void 0,k)};e.mkdir=C;var b=(F,Q,X,ae,ne,ce,fe)=>{if(Q.length===0)return fe(null,ce);let ue=Q.shift(),de=(0,A.normalizeWindowsPath)(o.default.resolve(F+"/"+ue));n.default.mkdir(de,X,E(de,Q,X,ae,ne,ce,fe))},E=(F,Q,X,ae,ne,ce,fe)=>ue=>{ue?n.default.lstat(F,(de,be)=>{if(de)de.path=de.path&&(0,A.normalizeWindowsPath)(de.path),fe(de);else if(be.isDirectory())b(F,Q,X,ae,ne,ce,fe);else if(ae)n.default.unlink(F,Se=>{if(Se)return fe(Se);n.default.mkdir(F,X,E(F,Q,X,ae,ne,ce,fe))});else{if(be.isSymbolicLink())return fe(new f.SymlinkError(F,F+"/"+Q.join("/")));fe(ue)}}):(ce=ce||F,b(F,Q,X,ae,ne,ce,fe))},N=F=>{let Q=!1,X;try{Q=n.default.statSync(F).isDirectory()}catch(ae){X=ae?.code}finally{if(!Q)throw new l.CwdError(F,X??"ENOTDIR")}},B=(F,Q)=>{F=(0,A.normalizeWindowsPath)(F);let X=Q.umask??18,ae=Q.mode|448,ne=(ae&X)!==0,ce=Q.uid,fe=Q.gid,ue=typeof ce=="number"&&typeof fe=="number"&&(ce!==Q.processUid||fe!==Q.processGid),de=Q.preserve,be=Q.unlink,Se=(0,A.normalizeWindowsPath)(Q.cwd),De=ct=>{ct&&ue&&(0,r.chownrSync)(ct,ce,fe),ne&&n.default.chmodSync(F,ae)};if(F===Se)return N(Se),De();if(de)return De(n.default.mkdirSync(F,{mode:ae,recursive:!0})??void 0);let k=(0,A.normalizeWindowsPath)(o.default.relative(Se,F)).split("/"),et;for(let ct=k.shift(),Me=Se;ct&&(Me+="/"+ct);ct=k.shift()){Me=(0,A.normalizeWindowsPath)(o.default.resolve(Me));try{n.default.mkdirSync(Me,ae),et=et||Me}catch{let je=n.default.lstatSync(Me);if(je.isDirectory())continue;if(be){n.default.unlinkSync(Me),n.default.mkdirSync(Me,ae),et=et||Me;continue}else if(je.isSymbolicLink())return new f.SymlinkError(Me,Me+"/"+k.join("/"))}}return De(et)};e.mkdirSync=B}),r3o=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeUnicode=void 0;var t=Object.create(null),r=1e4,n=new Set,a=o=>{n.has(o)?n.delete(o):t[o]=o.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),n.add(o);let l=t[o],A=n.size-r;if(A>r/10){for(let f of n)if(n.delete(f),delete t[f],--A<=0)break}return l};e.normalizeUnicode=a}),n3o=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PathReservations=void 0;var t=wt("node:path"),r=r3o(),n=$Ar(),a=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,o=a==="win32",l=f=>f.split("/").slice(0,-1).reduce((I,C)=>{let b=I.at(-1);return b!==void 0&&(C=(0,t.join)(b,C)),I.push(C||"/"),I},[]),A=class{#e=new Map;#t=new Map;#n=new Set;reserve(f,I){f=o?["win32 parallelization disabled"]:f.map(b=>(0,n.stripTrailingSlashes)((0,t.join)((0,r.normalizeUnicode)(b))));let C=new Set(f.map(b=>l(b)).reduce((b,E)=>b.concat(E)));this.#t.set(I,{dirs:C,paths:f});for(let b of f){let E=this.#e.get(b);E?E.push(I):this.#e.set(b,[I])}for(let b of C){let E=this.#e.get(b);if(!E)this.#e.set(b,[new Set([I])]);else{let N=E.at(-1);N instanceof Set?N.add(I):E.push(new Set([I]))}}return this.#i(I)}#r(f){let I=this.#t.get(f);if(!I)throw new Error("function does not have any path reservations");return{paths:I.paths.map(C=>this.#e.get(C)),dirs:[...I.dirs].map(C=>this.#e.get(C))}}check(f){let{paths:I,dirs:C}=this.#r(f);return I.every(b=>b&&b[0]===f)&&C.every(b=>b&&b[0]instanceof Set&&b[0].has(f))}#i(f){return this.#n.has(f)||!this.check(f)?!1:(this.#n.add(f),f(()=>this.#s(f)),!0)}#s(f){if(!this.#n.has(f))return!1;let I=this.#t.get(f);if(!I)throw new Error("invalid reservation");let{paths:C,dirs:b}=I,E=new Set;for(let N of C){let B=this.#e.get(N);if(!B||B?.[0]!==f)continue;let F=B[1];if(!F){this.#e.delete(N);continue}if(B.shift(),typeof F=="function")E.add(F);else for(let Q of F)E.add(Q)}for(let N of b){let B=this.#e.get(N),F=B?.[0];if(!(!B||!(F instanceof Set)))if(F.size===1&&B.length===1){this.#e.delete(N);continue}else if(F.size===1){B.shift();let Q=B[0];typeof Q=="function"&&E.add(Q)}else F.delete(f)}return this.#n.delete(f),E.forEach(N=>this.#i(N)),!0}};e.PathReservations=A}),i3o=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.umask=void 0;var t=()=>process.umask();e.umask=t}),pLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(Vr,xi,io,ga){ga===void 0&&(ga=io);var Ya=Object.getOwnPropertyDescriptor(xi,io);(!Ya||("get"in Ya?!xi.__esModule:Ya.writable||Ya.configurable))&&(Ya={enumerable:!0,get:function(){return xi[io]}}),Object.defineProperty(Vr,ga,Ya)}:function(Vr,xi,io,ga){ga===void 0&&(ga=io),Vr[ga]=xi[io]}),r=e&&e.__setModuleDefault||(Object.create?function(Vr,xi){Object.defineProperty(Vr,"default",{enumerable:!0,value:xi})}:function(Vr,xi){Vr.default=xi}),n=e&&e.__importStar||function(){var Vr=function(xi){return Vr=Object.getOwnPropertyNames||function(io){var ga=[];for(var Ya in io)Object.prototype.hasOwnProperty.call(io,Ya)&&(ga[ga.length]=Ya);return ga},Vr(xi)};return function(xi){if(xi&&xi.__esModule)return xi;var io={};if(xi!=null)for(var ga=Vr(xi),Ya=0;Ya{if(!qr)return f.default.unlink(Vr,xi);let io=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.rename(Vr,io,ga=>{if(ga)return xi(ga);f.default.unlink(io,xi)})},jt=Vr=>{if(!qr)return f.default.unlinkSync(Vr);let xi=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.renameSync(Vr,xi),f.default.unlinkSync(xi)},Fn=(Vr,xi,io)=>Vr!==void 0&&Vr===Vr>>>0?Vr:xi!==void 0&&xi===xi>>>0?xi:io,Nn=class extends N.Parser{[vt]=!1;[cr]=!1;[Tr]=0;reservations=new Q.PathReservations;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(Vr={}){if(Vr.ondone=()=>{this[vt]=!0,this[xt]()},super(Vr),this.transform=Vr.transform,this.chmod=!!Vr.chmod,typeof Vr.uid=="number"||typeof Vr.gid=="number"){if(typeof Vr.uid!="number"||typeof Vr.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(Vr.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=Vr.uid,this.gid=Vr.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;this.preserveOwner=Vr.preserveOwner===void 0&&typeof Vr.uid!="number"?!!(process.getuid&&process.getuid()===0):!!Vr.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof Vr.maxDepth=="number"?Vr.maxDepth:_n,this.forceChown=Vr.forceChown===!0,this.win32=!!Vr.win32||qr,this.newer=!!Vr.newer,this.keep=!!Vr.keep,this.noMtime=!!Vr.noMtime,this.preservePaths=!!Vr.preservePaths,this.unlink=!!Vr.unlink,this.cwd=(0,E.normalizeWindowsPath)(I.default.resolve(Vr.cwd||process.cwd())),this.strip=Number(Vr.strip)||0,this.processUmask=this.chmod?typeof Vr.processUmask=="number"?Vr.processUmask:(0,ae.umask)():0,this.umask=typeof Vr.umask=="number"?Vr.umask:this.processUmask,this.dmode=Vr.dmode||511&~this.umask,this.fmode=Vr.fmode||438&~this.umask,this.on("entry",xi=>this[ne](xi))}warn(Vr,xi,io={}){return(Vr==="TAR_BAD_ARCHIVE"||Vr==="TAR_ABORT")&&(io.recoverable=!1),super.warn(Vr,xi,io)}[xt](){this[vt]&&this[Tr]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[St](Vr,xi){let io=Vr[xi],{type:ga}=Vr;if(!io||this.preservePaths)return!0;let[Ya,Gc]=(0,B.stripAbsolutePath)(io),cl=Gc.replaceAll(/\\/g,"/").split("/");if(cl.includes("..")||qr&&/^[a-z]:\.\.$/i.test(cl[0]??"")){if(xi==="path"||ga==="Link")return this.warn("TAR_ENTRY_ERROR",`${xi} contains '..'`,{entry:Vr,[xi]:io}),!1;let Sc=I.default.posix.dirname(Vr.path),Hr=I.default.posix.normalize(I.default.posix.join(Sc,cl.join("/")));if(Hr.startsWith("../")||Hr==="..")return this.warn("TAR_ENTRY_ERROR",`${xi} escapes extraction directory`,{entry:Vr,[xi]:io}),!1}return Ya&&(Vr[xi]=String(Gc),this.warn("TAR_ENTRY_INFO",`stripping ${Ya} from absolute ${xi}`,{entry:Vr,[xi]:io})),!0}[je](Vr){let xi=(0,E.normalizeWindowsPath)(Vr.path),io=xi.split("/");if(this.strip){if(io.length=this.strip)Vr.linkpath=ga.slice(this.strip).join("/");else return!1}io.splice(0,this.strip),Vr.path=io.join("/")}if(isFinite(this.maxDepth)&&io.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:Vr,path:xi,depth:io.length,maxDepth:this.maxDepth}),!1;if(!this[St](Vr,"path")||!this[St](Vr,"linkpath"))return!1;if(Vr.absolute=I.default.isAbsolute(Vr.path)?(0,E.normalizeWindowsPath)(I.default.resolve(Vr.path)):(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,Vr.path)),!this.preservePaths&&typeof Vr.absolute=="string"&&Vr.absolute.indexOf(this.cwd+"/")!==0&&Vr.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:Vr,path:(0,E.normalizeWindowsPath)(Vr.path),resolvedPath:Vr.absolute,cwd:this.cwd}),!1;if(Vr.absolute===this.cwd&&Vr.type!=="Directory"&&Vr.type!=="GNUDumpDir")return!1;if(this.win32){let{root:ga}=I.default.win32.parse(String(Vr.absolute));Vr.absolute=ga+F.encode(String(Vr.absolute).slice(ga.length));let{root:Ya}=I.default.win32.parse(Vr.path);Vr.path=Ya+F.encode(Vr.path.slice(Ya.length))}return!0}[ne](Vr){if(!this[je](Vr))return Vr.resume();switch(l.default.equal(typeof Vr.absolute,"string"),Vr.type){case"Directory":case"GNUDumpDir":Vr.mode&&(Vr.mode=Vr.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ce](Vr);default:return this[Me](Vr)}}[Yt](Vr,xi){Vr.name==="CwdError"?this.emit("error",Vr):(this.warn("TAR_ENTRY_ERROR",Vr,{entry:xi}),this[er](),xi.resume())}[At](Vr,xi,io){(0,b.mkdir)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi},io)}[qt](Vr){return this.forceChown||this.preserveOwner&&(typeof Vr.uid=="number"&&Vr.uid!==this.processUid||typeof Vr.gid=="number"&&Vr.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Xt](Vr){return Fn(this.uid,Vr.uid,this.processUid)}[lr](Vr){return Fn(this.gid,Vr.gid,this.processGid)}[be](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=new o.WriteStream(String(Vr.absolute),{flags:(0,C.getWriteFlag)(Vr.size),mode:io,autoClose:!1});ga.on("error",Sc=>{ga.fd&&f.default.close(ga.fd,()=>{}),ga.write=()=>!0,this[Yt](Sc,Vr),xi()});let Ya=1,Gc=Sc=>{if(Sc){ga.fd&&f.default.close(ga.fd,()=>{}),this[Yt](Sc,Vr),xi();return}--Ya===0&&ga.fd!==void 0&&f.default.close(ga.fd,Hr=>{Hr?this[Yt](Hr,Vr):this[er](),xi()})};ga.on("finish",()=>{let Sc=String(Vr.absolute),Hr=ga.fd;if(typeof Hr=="number"&&Vr.mtime&&!this.noMtime){Ya++;let Wr=Vr.atime||new Date,Ft=Vr.mtime;f.default.futimes(Hr,Wr,Ft,zr=>zr?f.default.utimes(Sc,Wr,Ft,Rn=>Gc(Rn&&zr)):Gc())}if(typeof Hr=="number"&&this[qt](Vr)){Ya++;let Wr=this[Xt](Vr),Ft=this[lr](Vr);typeof Wr=="number"&&typeof Ft=="number"&&f.default.fchown(Hr,Wr,Ft,zr=>zr?f.default.chown(Sc,Wr,Ft,Rn=>Gc(Rn&&zr)):Gc())}Gc()});let cl=this.transform&&this.transform(Vr)||Vr;cl!==Vr&&(cl.on("error",Sc=>{this[Yt](Sc,Vr),xi()}),Vr.pipe(cl)),cl.pipe(ga)}[Se](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode;this[At](String(Vr.absolute),io,ga=>{if(ga){this[Yt](ga,Vr),xi();return}let Ya=1,Gc=()=>{--Ya===0&&(xi(),this[er](),Vr.resume())};Vr.mtime&&!this.noMtime&&(Ya++,f.default.utimes(String(Vr.absolute),Vr.atime||new Date,Vr.mtime,Gc)),this[qt](Vr)&&(Ya++,f.default.chown(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)),Gc)),Gc()})}[Me](Vr){Vr.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${Vr.type}`,{entry:Vr}),Vr.resume()}[k](Vr,xi){let io=(0,E.normalizeWindowsPath)(I.default.relative(this.cwd,I.default.resolve(I.default.dirname(String(Vr.absolute)),String(Vr.linkpath)))).split("/");this[ct](Vr,this.cwd,io,()=>this[De](Vr,String(Vr.linkpath),"symlink",xi),ga=>{this[Yt](ga,Vr),xi()})}[et](Vr,xi){let io=(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,String(Vr.linkpath))),ga=(0,E.normalizeWindowsPath)(String(Vr.linkpath)).split("/");this[ct](Vr,this.cwd,ga,()=>this[De](Vr,io,"link",xi),Ya=>{this[Yt](Ya,Vr),xi()})}[ct](Vr,xi,io,ga,Ya){let Gc=io.shift();if(this.preservePaths||Gc===void 0)return ga();let cl=I.default.resolve(xi,Gc);f.default.lstat(cl,(Sc,Hr)=>{if(Sc)return ga();if(Hr?.isSymbolicLink())return Ya(new X.SymlinkError(cl,I.default.resolve(cl,io.join("/"))));this[ct](Vr,cl,io,ga,Ya)})}[Nr](){this[Tr]++}[er](){this[Tr]--,this[xt]()}[Zr](Vr){this[er](),Vr.resume()}[ue](Vr,xi){return Vr.type==="File"&&!this.unlink&&xi.isFile()&&xi.nlink<=1&&!qr}[ce](Vr){this[Nr]();let xi=[Vr.path];Vr.linkpath&&xi.push(Vr.linkpath),this.reservations.reserve(xi,io=>this[fe](Vr,io))}[fe](Vr,xi){let io=cl=>{xi(cl)},ga=()=>{this[At](this.cwd,this.dmode,cl=>{if(cl){this[Yt](cl,Vr),io();return}this[cr]=!0,Ya()})},Ya=()=>{if(Vr.absolute!==this.cwd){let cl=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(cl!==this.cwd)return this[At](cl,this.dmode,Sc=>{if(Sc){this[Yt](Sc,Vr),io();return}Gc()})}Gc()},Gc=()=>{f.default.lstat(String(Vr.absolute),(cl,Sc)=>{if(Sc&&(this.keep||this.newer&&Sc.mtime>(Vr.mtime??Sc.mtime))){this[Zr](Vr),io();return}if(cl||this[ue](Vr,Sc))return this[de](null,Vr,io);if(Sc.isDirectory()){if(Vr.type==="Directory"){let Hr=this.chmod&&Vr.mode&&(Sc.mode&4095)!==Vr.mode,Wr=Ft=>this[de](Ft??null,Vr,io);return Hr?f.default.chmod(String(Vr.absolute),Number(Vr.mode),Wr):Wr()}if(Vr.absolute!==this.cwd)return f.default.rmdir(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,io))}if(Vr.absolute===this.cwd)return this[de](null,Vr,io);ke(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,io))})};this[cr]?Ya():ga()}[de](Vr,xi,io){if(Vr){this[Yt](Vr,xi),io();return}switch(xi.type){case"File":case"OldFile":case"ContiguousFile":return this[be](xi,io);case"Link":return this[et](xi,io);case"SymbolicLink":return this[k](xi,io);case"Directory":case"GNUDumpDir":return this[Se](xi,io)}}[De](Vr,xi,io,ga){f.default[io](xi,String(Vr.absolute),Ya=>{Ya?this[Yt](Ya,Vr):(this[er](),Vr.resume()),ga()})}};e.Unpack=Nn;var Hi=Vr=>{try{return[null,Vr()]}catch(xi){return[xi,null]}},po=class extends Nn{sync=!0;[de](Vr,xi){return super[de](Vr,xi,()=>{})}[ce](Vr){if(!this[cr]){let Ya=this[At](this.cwd,this.dmode);if(Ya)return this[Yt](Ya,Vr);this[cr]=!0}if(Vr.absolute!==this.cwd){let Ya=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(Ya!==this.cwd){let Gc=this[At](Ya,this.dmode);if(Gc)return this[Yt](Gc,Vr)}}let[xi,io]=Hi(()=>f.default.lstatSync(String(Vr.absolute)));if(io&&(this.keep||this.newer&&io.mtime>(Vr.mtime??io.mtime)))return this[Zr](Vr);if(xi||this[ue](Vr,io))return this[de](null,Vr);if(io.isDirectory()){if(Vr.type==="Directory"){let Gc=this.chmod&&Vr.mode&&(io.mode&4095)!==Vr.mode,[cl]=Gc?Hi(()=>{f.default.chmodSync(String(Vr.absolute),Number(Vr.mode))}):[];return this[de](cl,Vr)}let[Ya]=Hi(()=>f.default.rmdirSync(String(Vr.absolute)));this[de](Ya,Vr)}let[ga]=Vr.absolute===this.cwd?[]:Hi(()=>jt(String(Vr.absolute)));this[de](ga,Vr)}[be](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=cl=>{let Sc;try{f.default.closeSync(Ya)}catch(Hr){Sc=Hr}(cl||Sc)&&this[Yt](cl||Sc,Vr),xi()},Ya;try{Ya=f.default.openSync(String(Vr.absolute),(0,C.getWriteFlag)(Vr.size),io)}catch(cl){return ga(cl)}let Gc=this.transform&&this.transform(Vr)||Vr;Gc!==Vr&&(Gc.on("error",cl=>this[Yt](cl,Vr)),Vr.pipe(Gc)),Gc.on("data",cl=>{try{f.default.writeSync(Ya,cl,0,cl.length)}catch(Sc){ga(Sc)}}),Gc.on("end",()=>{let cl=null;if(Vr.mtime&&!this.noMtime){let Sc=Vr.atime||new Date,Hr=Vr.mtime;try{f.default.futimesSync(Ya,Sc,Hr)}catch(Wr){try{f.default.utimesSync(String(Vr.absolute),Sc,Hr)}catch{cl=Wr}}}if(this[qt](Vr)){let Sc=this[Xt](Vr),Hr=this[lr](Vr);try{f.default.fchownSync(Ya,Number(Sc),Number(Hr))}catch(Wr){try{f.default.chownSync(String(Vr.absolute),Number(Sc),Number(Hr))}catch{cl=cl||Wr}}}ga(cl)})}[Se](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode,ga=this[At](String(Vr.absolute),io);if(ga){this[Yt](ga,Vr),xi();return}if(Vr.mtime&&!this.noMtime)try{f.default.utimesSync(String(Vr.absolute),Vr.atime||new Date,Vr.mtime)}catch{}if(this[qt](Vr))try{f.default.chownSync(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)))}catch{}xi(),Vr.resume()}[At](Vr,xi){try{return(0,b.mkdirSync)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi})}catch(io){return io}}[ct](Vr,xi,io,ga,Ya){if(this.preservePaths||io.length===0)return ga();let Gc=xi;for(let cl of io){Gc=I.default.resolve(Gc,cl);let[Sc,Hr]=Hi(()=>f.default.lstatSync(Gc));if(Sc)return ga();if(Hr.isSymbolicLink())return Ya(new X.SymlinkError(Gc,I.default.resolve(xi,io.join("/"))))}ga()}[De](Vr,xi,io,ga){let Ya=`${io}Sync`;try{f.default[Ya](xi,String(Vr.absolute)),ga(),Vr.resume()}catch(Gc){return this[Yt](Gc,Vr)}}};e.UnpackSync=po}),fLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(E,N,B,F){F===void 0&&(F=B);var Q=Object.getOwnPropertyDescriptor(N,B);(!Q||("get"in Q?!N.__esModule:Q.writable||Q.configurable))&&(Q={enumerable:!0,get:function(){return N[B]}}),Object.defineProperty(E,F,Q)}:function(E,N,B,F){F===void 0&&(F=B),E[F]=N[B]}),r=e&&e.__setModuleDefault||(Object.create?function(E,N){Object.defineProperty(E,"default",{enumerable:!0,value:N})}:function(E,N){E.default=N}),n=e&&e.__importStar||function(){var E=function(N){return E=Object.getOwnPropertyNames||function(B){var F=[];for(var Q in B)Object.prototype.hasOwnProperty.call(B,Q)&&(F[F.length]=Q);return F},E(N)};return function(N){if(N&&N.__esModule)return N;var B={};if(N!=null)for(var F=E(N),Q=0;Q{let N=new I.UnpackSync(E),B=E.file,F=l.default.statSync(B),Q=E.maxReadSize||16*1024*1024;new o.ReadStreamSync(B,{readSize:Q,size:F.size}).pipe(N)},b=(E,N)=>{let B=new I.Unpack(E),F=E.maxReadSize||16*1024*1024,Q=E.file;return new Promise((X,ae)=>{B.on("error",ae),B.on("close",X),l.default.stat(Q,(ne,ce)=>{if(ne)ae(ne);else{let fe=new o.ReadStream(Q,{readSize:F,size:ce.size});fe.on("error",ae),fe.pipe(B)}})})};e.extract=(0,f.makeCommand)(C,b,E=>new I.UnpackSync(E),E=>new I.Unpack(E),(E,N)=>{N?.length&&(0,A.filesFilter)(E,N)})}),tdr=yC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.replace=void 0;var r=R5e(),n=t(wt("node:fs")),a=t(wt("node:path")),o=D5e(),l=x5e(),A=N5e(),f=UAr(),I=edr(),C=(F,Q)=>{let X=new I.PackSync(F),ae=!0,ne,ce;try{try{ne=n.default.openSync(F.file,"r+")}catch(de){if(de?.code==="ENOENT")ne=n.default.openSync(F.file,"w+");else throw de}let fe=n.default.fstatSync(ne),ue=Buffer.alloc(512);e:for(ce=0;cefe.size)break;ce+=be,F.mtimeCache&&de.mtime&&F.mtimeCache.set(String(de.path),de.mtime)}ae=!1,b(F,X,ce,ne,Q)}finally{if(ae)try{n.default.closeSync(ne)}catch{}}},b=(F,Q,X,ae,ne)=>{let ce=new r.WriteStreamSync(F.file,{fd:ae,start:X});Q.pipe(ce),N(Q,ne)},E=(F,Q)=>{Q=Array.from(Q);let X=new I.Pack(F),ae=(ne,ce,fe)=>{let ue=(k,et)=>{k?n.default.close(ne,ct=>fe(k)):fe(null,et)},de=0;if(ce===0)return ue(null,0);let be=0,Se=Buffer.alloc(512),De=(k,et)=>{if(k||et===void 0)return ue(k);if(be+=et,be<512&&et)return n.default.read(ne,Se,be,Se.length-be,de+be,De);if(de===0&&Se[0]===31&&Se[1]===139)return ue(new Error("cannot append to compressed archives"));if(be<512)return ue(null,de);let ct=new o.Header(Se);if(!ct.cksumValid)return ue(null,de);let Me=512*Math.ceil((ct.size??0)/512);if(de+Me+512>ce||(de+=Me+512,de>=ce))return ue(null,de);F.mtimeCache&&ct.mtime&&F.mtimeCache.set(String(ct.path),ct.mtime),be=0,n.default.read(ne,Se,0,512,de,De)};n.default.read(ne,Se,0,512,de,De)};return new Promise((ne,ce)=>{X.on("error",ce);let fe="r+",ue=(de,be)=>{if(de&&de.code==="ENOENT"&&fe==="r+")return fe="w+",n.default.open(F.file,fe,ue);if(de||!be)return ce(de);n.default.fstat(be,(Se,De)=>{if(Se)return n.default.close(be,()=>ce(Se));ae(be,De.size,(k,et)=>{if(k)return ce(k);let ct=new r.WriteStream(F.file,{fd:be,start:et});X.pipe(ct),ct.on("error",ce),ct.on("close",ne),B(X,Q)})})};n.default.open(F.file,fe,ue)})},N=(F,Q)=>{Q.forEach(X=>{X.charAt(0)==="@"?(0,l.list)({file:a.default.resolve(F.cwd,X.slice(1)),sync:!0,noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(X)}),F.end()},B=async(F,Q)=>{for(let X of Q)X.charAt(0)==="@"?await(0,l.list)({file:a.default.resolve(String(F.cwd),X.slice(1)),noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(X);F.end()};e.replace=(0,A.makeCommand)(C,E,()=>{throw new TypeError("file is required")},()=>{throw new TypeError("file is required")},(F,Q)=>{if(!(0,f.isFile)(F))throw new TypeError("file is required");if(F.gzip||F.brotli||F.zstd||F.file.endsWith(".br")||F.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!Q?.length)throw new TypeError("no paths specified to add/replace")})}),ILn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.update=void 0;var t=N5e(),r=tdr();e.update=(0,t.makeCommand)(r.replace.syncFile,r.replace.asyncFile,r.replace.syncNoFile,r.replace.asyncNoFile,(a,o=[])=>{r.replace.validate?.(a,o),n(a)});var n=a=>{let o=a.filter;a.mtimeCache||(a.mtimeCache=new Map),a.filter=o?(l,A)=>o(l,A)&&!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0)):(l,A)=>!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0))}}),hLn=jC&&jC.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),s3o=jC&&jC.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pM=jC&&jC.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&hLn(t,e,r)},o3o=jC&&jC.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Nve,"__esModule",{value:!0});Nve.WorkerPool=Nve.AsyncPool=void 0;var A3o=(Pa(),vi(Va)),CLn=A3o.__importDefault(kfe()),d3o=wt("worker_threads"),koe=Symbol("kTaskInfo"),rdr=class{constructor(t,r){this.fn=t,this.limit=(0,CLn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};Nve.AsyncPool=rdr;var ndr=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,CLn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let n=this.workers.pop();n?n.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new d3o.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[koe])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[koe].resolve(r),t[koe]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[koe]?.reject(r),t[koe]=null}),t.on("exit",r=>{r!==0&&t[koe]?.reject(new Error(`Worker exited with code ${r}`)),t[koe]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((n,a)=>{r[koe]={resolve:n,reject:a},r.postMessage(t)})})}};Nve.WorkerPool=ndr});var bLn=H((ozl,yLn)=>{var idr;yLn.exports.getContent=()=>(typeof idr>"u"&&(idr=wt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),idr)});var RLn=H(xoe=>{"use strict";Object.defineProperty(xoe,"__esModule",{value:!0});xoe.getDefaultTaskPool=BLn;xoe.getTaskPoolForConfiguration=wLn;xoe.convertToZipWorker=odr;xoe.makeArchiveFromDirectory=C3o;xoe.convertToZip=_3o;xoe.extractArchiveTo=TLn;var ELn=(Pa(),vi(Va)),p3o=yn(),rb=zs(),EAt=zK(),f3o=wt("stream"),I3o=ELn.__importStar(mLn()),SAt=_Ln(),SLn=ELn.__importStar(xW()),vLn=bLn();function h3o(e,t){switch(e){case"async":return new SAt.AsyncPool(odr,{poolSize:t});case"workers":return new SAt.WorkerPool((0,vLn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var sdr;function BLn(){return typeof sdr>"u"&&(sdr=h3o("workers",p3o.nodeUtils.availableParallelism())),sdr}var m3o=new WeakMap;function wLn(e){return typeof e>"u"?BLn():SLn.getFactoryWithDefault(m3o,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new SAt.AsyncPool(odr,{poolSize:r});case"workers":return new SAt.WorkerPool((0,vLn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function odr(e){let{tmpFile:t,tgz:r,compressionLevel:n,extractBufferOpts:a}=e,o=new EAt.ZipFS(t,{create:!0,level:n,stats:rb.statUtils.makeDefaultStats()}),l=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await TLn(l,o,a),o.saveAndClose(),t}async function C3o(e,{baseFs:t=new rb.NodeFS,prefixPath:r=rb.PortablePath.root,compressionLevel:n,inMemory:a=!1}={}){let o;if(a)o=new EAt.ZipFS(null,{level:n});else{let A=await rb.xfs.mktempPromise(),f=rb.ppath.join(A,"archive.zip");o=new EAt.ZipFS(f,{create:!0,level:n})}let l=rb.ppath.resolve(rb.PortablePath.root,r);return await o.copyPromise(l,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function _3o(e,t={}){let r=await rb.xfs.mktempPromise(),n=rb.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??wLn(t.configuration)).run({tmpFile:n,tgz:e,compressionLevel:a,extractBufferOpts:o}),new EAt.ZipFS(n,{level:t.compressionLevel})}async function*y3o(e){let t=new I3o.Parser,r=new f3o.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",n=>{r.write(n)}),t.on("error",n=>{r.destroy(n)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let n of r){let a=n;yield a,a.resume()}}async function TLn(e,t,{stripComponents:r=0,prefixPath:n=rb.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let l=o.path.split(/\//g);return!!(l.some(A=>A==="..")||l.length<=r)}for await(let o of y3o(e)){if(a(o))continue;let l=rb.ppath.normalize(rb.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let A=l.slice(r).join("/"),f=rb.ppath.join(n,A),I=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(I|=73),o.type){case"Directory":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:I}),t.utimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.writeFileSync(f,await SLn.bufferStream(o),{mode:I}),t.utimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break}}return t}});var DLn=H((adr,NLn)=>{(function(e,t){typeof adr=="object"?NLn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(adr,function(){function e(a,o){var l=o?"\u2514":"\u251C";return a?l+="\u2500 ":l+="\u2500\u2500\u2510",l}function t(a,o){var l=[];for(var A in a)a.hasOwnProperty(A)&&(o&&typeof a[A]=="function"||l.push(A));return l}function r(a,o,l,A,f,I,C){var b="",E=0,N,B,F=A.slice(0);if(F.push([o,l])&&A.length>0&&(A.forEach(function(X,ae){ae>0&&(b+=(X[1]?" ":"\u2502")+" "),!B&&X[0]===o&&(B=!0)}),b+=e(a,l)+a,f&&(typeof o!="object"||o instanceof Date)&&(b+=": "+o),B&&(b+=" (circular ref.)"),C(b)),!B&&typeof o=="object"){var Q=t(o,I);Q.forEach(function(X){N=++E===Q.length,r(X,o[X],N,F,f,I,C)})}}var n={};return n.asLines=function(a,o,l,A){var f=typeof l!="function"?l:!1;r(".",a,!1,[],o,f,A||l)},n.asTree=function(a,o,l){var A="";return r(".",a,!1,[],o,l,function(f){A+=f+` +`}),A},n})});var FLn=H(Dve=>{"use strict";Object.defineProperty(Dve,"__esModule",{value:!0});Dve.treeNodeToTreeify=kLn;Dve.treeNodeToJson=xLn;Dve.emitList=S3o;Dve.emitTree=GLn;var b3o=(Pa(),vi(Va)),E3o=DLn(),lIe=b3o.__importStar(rM());function kLn(e,{configuration:t}){let r={},n=0,a=(o,l)=>{let A=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,I]of A){if(!I)continue;let{label:C,value:b,children:E}=I,N=[];typeof C<"u"&&N.push(lIe.applyStyle(t,C,lIe.Style.BOLD)),typeof b<"u"&&N.push(lIe.pretty(t,b[0],b[1])),N.length===0&&N.push(lIe.applyStyle(t,`${f}`,lIe.Style.BOLD));let B=N.join(": ").trim(),F=`\0${n++}\0`,Q=l[`${F}${B}`]={};typeof E<"u"&&a(E,Q)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function xLn(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return lIe.json(r.value[0],r.value[1])}let n=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,l]of n)l&&(a[v3o(o)]=t(l));return typeof r.value>"u"?a:{value:lIe.json(r.value[0],r.value[1]),children:a}};return t(e)}function S3o(e,{configuration:t,stdout:r,json:n}){let a=e.map(o=>({value:o}));GLn({children:a},{configuration:t,stdout:r,json:n})}function GLn(e,{configuration:t,stdout:r,json:n,separators:a=0}){if(n){let l=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let A of l)A&&r.write(`${JSON.stringify(xLn(A))} +`);return}let o=(0,E3o.asTree)(kLn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 $1`).replace(/^│\n/,"")),a>=2)for(let l=0;l<2;++l)o=o.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(a>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function l3o(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var RLn=H(EAt=>{"use strict";Object.defineProperty(EAt,"__esModule",{value:!0});EAt.RefCountedCache=void 0;var idr=class{constructor(t){this.releaseFunction=t,this.map=new Map}addOrCreate(t,r){let n=this.map.get(t);if(typeof n<"u"){if(n.refCount<=0)throw new Error(`Race condition in RefCountedMap. While adding a new key the refCount is: ${n.refCount} for ${JSON.stringify(t)}`);return n.refCount++,{value:n.value,release:()=>this.release(t)}}else{let a=r();return this.map.set(t,{refCount:1,value:a}),{value:a,release:()=>this.release(t)}}}release(t){let r=this.map.get(t);if(!r)throw new Error(`Unbalanced calls to release. No known instances of: ${JSON.stringify(t)}`);let n=r.refCount;if(n<=0)throw new Error(`Unbalanced calls to release. Too many release vs alloc refcount would become: ${n-1} of ${JSON.stringify(t)}`);n==1?(this.map.delete(t),this.releaseFunction(r.value)):r.refCount--}};EAt.RefCountedCache=idr});var adr=H(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.Cache=pX.CACHE_VERSION=pX.CACHE_CHECKPOINT=void 0;var SAt=(Pa(),vi(Va)),NLn=Sn(),k5e=ro(),zB=ro(),DLn=zK(),u3o=wt("crypto"),kLn=SAt.__importDefault(wt("fs")),x5e=M9(),g3o=RLn(),G5e=sM(),xLn=SAt.__importStar(moe()),odr=SAt.__importStar(xW()),g$=SAt.__importStar(uG());pX.CACHE_CHECKPOINT=odr.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);pX.CACHE_VERSION=odr.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var sdr=class e{static async find(t,{immutable:r,check:n}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:n});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),n=r!=="mixed"?`c${r}`:"";return{cacheKey:[pX.CACHE_VERSION,n].join(""),cacheSpec:n}}constructor(t,{configuration:r,immutable:n=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.refCountedZipFsCache=new g3o.RefCountedCache(A=>{A.discardAndClose()}),this.cacheId=`-${(0,u3o.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=n,this.check=a;let{cacheSpec:o,cacheKey:l}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=l}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${g$.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=F5e(r).hash.slice(0,10);return`${g$.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:n}=F5e(t);if(r===null||r=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function v3o(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var ZLn=H(vAt=>{"use strict";Object.defineProperty(vAt,"__esModule",{value:!0});vAt.RefCountedCache=void 0;var cdr=class{constructor(t){this.releaseFunction=t,this.map=new Map}addOrCreate(t,r){let n=this.map.get(t);if(typeof n<"u"){if(n.refCount<=0)throw new Error(`Race condition in RefCountedMap. While adding a new key the refCount is: ${n.refCount} for ${JSON.stringify(t)}`);return n.refCount++,{value:n.value,release:()=>this.release(t)}}else{let a=r();return this.map.set(t,{refCount:1,value:a}),{value:a,release:()=>this.release(t)}}}release(t){let r=this.map.get(t);if(!r)throw new Error(`Unbalanced calls to release. No known instances of: ${JSON.stringify(t)}`);let n=r.refCount;if(n<=0)throw new Error(`Unbalanced calls to release. Too many release vs alloc refcount would become: ${n-1} of ${JSON.stringify(t)}`);n==1?(this.map.delete(t),this.releaseFunction(r.value)):r.refCount--}};vAt.RefCountedCache=cdr});var gdr=H(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.Cache=pX.CACHE_VERSION=pX.CACHE_CHECKPOINT=void 0;var BAt=(Pa(),vi(Va)),LLn=yn(),G5e=zs(),zB=zs(),VLn=zK(),B3o=wt("crypto"),PLn=BAt.__importDefault(wt("fs")),F5e=M9(),w3o=ZLn(),Z5e=sM(),WLn=BAt.__importStar(Coe()),udr=BAt.__importStar(xW()),g$=BAt.__importStar(uG());pX.CACHE_CHECKPOINT=udr.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);pX.CACHE_VERSION=udr.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var ldr=class e{static async find(t,{immutable:r,check:n}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:n});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),n=r!=="mixed"?`c${r}`:"";return{cacheKey:[pX.CACHE_VERSION,n].join(""),cacheSpec:n}}constructor(t,{configuration:r,immutable:n=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.refCountedZipFsCache=new w3o.RefCountedCache(A=>{A.discardAndClose()}),this.cacheId=`-${(0,B3o.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=n,this.check=a;let{cacheSpec:o,cacheKey:l}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=l}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${g$.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=L5e(r).hash.slice(0,10);return`${g$.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:n}=L5e(t);if(r===null||r{let be=new DLn.ZipFS,Se=zB.ppath.join(k5e.PortablePath.root,g$.getIdentVendorPath(t));return be.mkdirSync(Se,{recursive:!0}),be.writeJsonSync(zB.ppath.join(Se,k5e.Filename.manifest),{name:g$.stringifyIdent(t),mocked:!0}),be},C=async(be,{isColdHit:Se,controlPath:De=null})=>{if(De===null&&l.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let k=r&&!Se?F5e(r).cacheKey:this.cacheKey,et=!l.skipIntegrityCheck||!r?`${k}/${await xLn.checksumFile(be)}`:r;if(De!==null){let Me=!l.skipIntegrityCheck||!r?`${this.cacheKey}/${await xLn.checksumFile(De)}`:r;if(et!==Me)throw new G5e.ReportError(x5e.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let ct=null;switch(r!==null&&et!==r&&(this.check?ct="throw":F5e(r).cacheKey!==F5e(et).cacheKey?ct="update":ct=this.configuration.get("checksumBehavior")),ct){case null:case"update":return{isValid:!0,hash:et};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new G5e.ReportError(x5e.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},b=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${g$.prettyLocator(this.configuration,t)}`);let Se=await o(),De=Se.getRealPath();Se.saveAndClose(),await zB.xfs.chmodPromise(De,420);let k=await C(be,{controlPath:De,isColdHit:!1});if(!k.isValid)throw new Error("Assertion failed: Expected a valid checksum");return k.hash},E=async()=>{if(A===null||!await zB.xfs.existsPromise(A)){let be=await o(),Se=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Se}}return{source:"mirror",path:A}},N=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new G5e.ReportError(x5e.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}`);let{path:be,source:Se}=await E(),{hash:De}=await C(be,{isColdHit:!0}),k=this.getLocatorPath(t,De),et=[];Se!=="mirror"&&A!==null&&et.push(async()=>{let Me=`${A}${this.cacheId}`;await zB.xfs.copyFilePromise(be,Me,kLn.default.constants.COPYFILE_FICLONE),await zB.xfs.chmodPromise(Me,420),await zB.xfs.renamePromise(Me,A)}),(!l.mirrorWriteOnly||A===null)&&et.push(async()=>{let Me=`${k}${this.cacheId}`;await zB.xfs.copyFilePromise(be,Me,kLn.default.constants.COPYFILE_FICLONE),await zB.xfs.chmodPromise(Me,420),await zB.xfs.renamePromise(Me,k)});let ct=l.mirrorWriteOnly?A??k:k;return await Promise.all(et.map(Me=>Me())),[!1,ct,De]},B=async()=>{let Se=(async()=>{let De=l.unstablePackages?.has(t.locatorHash),k=De||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,et=k!==null?this.markedFiles.has(k)||await f.existsPromise(k):!1,ct=!!l.mockedPackages?.has(t.locatorHash)&&(!this.check||!et),Me=ct||et,je=Me?n:a;if(je&&je(),Me){let St=null,At=k;if(!ct)if(this.check)St=await b(At);else{let Yt=await C(At,{isColdHit:!1});if(Yt.isValid)St=Yt.hash;else return N()}return[ct,At,St]}else{if(this.immutable&&De)throw new G5e.ReportError(x5e.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}; consider defining ${NLn.formatUtils.pretty(this.configuration,"supportedArchitectures",NLn.formatUtils.Type.CODE)} to cache packages for multiple systems`);return N()}})();this.mutexes.set(t.locatorHash,Se);try{return await Se}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[F,Q,X]=await B();F||this.markedFiles.add(Q);let ae=()=>this.refCountedZipFsCache.addOrCreate(Q,()=>F?I():new DLn.ZipFS(Q,{baseFs:f,readOnly:!0})),ne,ce=new k5e.LazyFS(()=>odr.prettifySyncErrors(()=>(ne=ae(),ne.value),be=>`Failed to open the cache entry for ${g$.prettyLocator(this.configuration,t)}: ${be}`),zB.ppath),fe=new k5e.AliasFS(Q,{baseFs:ce,pathUtils:zB.ppath}),ue=()=>{ne?.release()},de=l.unstablePackages?.has(t.locatorHash)?null:X;return[fe,ue,de]}};pX.Cache=sdr;var A3o=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function F5e(e){let t=e.match(A3o);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var cdr=H(vAt=>{"use strict";Object.defineProperty(vAt,"__esModule",{value:!0});vAt.BuildDirectiveType=void 0;var GLn;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(GLn||(vAt.BuildDirectiveType=GLn={}))});var udr=H(lIe=>{"use strict";Object.defineProperty(lIe,"__esModule",{value:!0});lIe.LegacyMigrationResolver=lIe.IMPORTED_PATTERNS=void 0;var ZLn=(Pa(),vi(Va)),BAt=ro(),d3o=TW(),FLn=M9(),p3o=ZLn.__importStar(n$()),xoe=ZLn.__importStar(uG());lIe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,n)=>`${r}#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>xoe.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var ldr=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let n=BAt.ppath.join(t.cwd,BAt.Filename.lockfile);if(!BAt.xfs.existsSync(n))return;let a=await BAt.xfs.readFilePromise(n,"utf8"),o=(0,d3o.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let l=this.resolutions=new Map;for(let A of Object.keys(o)){let f=xoe.tryParseDescriptor(A);if(!f){r.reportWarning(FLn.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${A}" into a proper descriptor`);continue}let I=p3o.validRange(f.range)?xoe.makeDescriptor(f,`npm:${f.range}`):f,{version:C,resolved:b}=o[A];if(!b)continue;let E;for(let[B,F]of lIe.IMPORTED_PATTERNS){let Q=b.match(B);if(Q){E=F(C,...Q);break}}if(!E){r.reportWarning(FLn.MessageName.YARN_IMPORT_FAILED,`${xoe.prettyDescriptor(t.configuration,I)}: Only some patterns can be imported from legacy lockfiles (not "${b}")`);continue}let N=I;try{let B=xoe.parseRange(I.range),F=xoe.tryParseDescriptor(B.selector,!0);F&&(N=F)}catch{}l.set(I.descriptorHash,xoe.makeLocator(N,E))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=xoe.convertLocatorToDescriptor(a),l=n.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(l,r,n)}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};lIe.LegacyMigrationResolver=ldr});var LLn=H(TAt=>{"use strict";Object.defineProperty(TAt,"__esModule",{value:!0});TAt.LightReport=void 0;var f3o=(Pa(),vi(Va)),I3o=sM(),h3o=S5e(),wAt=f3o.__importStar(rM()),gdr=class extends I3o.Report{static async start(t,r){let n=new this(t);try{await r(n)}catch(a){n.reportExceptionOnce(a)}finally{await n.finalize()}return n}constructor({configuration:t,stdout:r,suggestInstall:n=!0}){super(),this.errorCount=0,wAt.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=n}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${wAt.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} +`)}(this.mirrorCwd||!this.immutable)&&await zB.xfs.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(t,r,{onHit:n,onMiss:a,loader:o,...l}){let A=this.getLocatorMirrorPath(t),f=new G5e.NodeFS,I=()=>{let be=new VLn.ZipFS,Se=zB.ppath.join(G5e.PortablePath.root,g$.getIdentVendorPath(t));return be.mkdirSync(Se,{recursive:!0}),be.writeJsonSync(zB.ppath.join(Se,G5e.Filename.manifest),{name:g$.stringifyIdent(t),mocked:!0}),be},C=async(be,{isColdHit:Se,controlPath:De=null})=>{if(De===null&&l.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let k=r&&!Se?L5e(r).cacheKey:this.cacheKey,et=!l.skipIntegrityCheck||!r?`${k}/${await WLn.checksumFile(be)}`:r;if(De!==null){let Me=!l.skipIntegrityCheck||!r?`${this.cacheKey}/${await WLn.checksumFile(De)}`:r;if(et!==Me)throw new Z5e.ReportError(F5e.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let ct=null;switch(r!==null&&et!==r&&(this.check?ct="throw":L5e(r).cacheKey!==L5e(et).cacheKey?ct="update":ct=this.configuration.get("checksumBehavior")),ct){case null:case"update":return{isValid:!0,hash:et};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new Z5e.ReportError(F5e.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},b=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${g$.prettyLocator(this.configuration,t)}`);let Se=await o(),De=Se.getRealPath();Se.saveAndClose(),await zB.xfs.chmodPromise(De,420);let k=await C(be,{controlPath:De,isColdHit:!1});if(!k.isValid)throw new Error("Assertion failed: Expected a valid checksum");return k.hash},E=async()=>{if(A===null||!await zB.xfs.existsPromise(A)){let be=await o(),Se=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Se}}return{source:"mirror",path:A}},N=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new Z5e.ReportError(F5e.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}`);let{path:be,source:Se}=await E(),{hash:De}=await C(be,{isColdHit:!0}),k=this.getLocatorPath(t,De),et=[];Se!=="mirror"&&A!==null&&et.push(async()=>{let Me=`${A}${this.cacheId}`;await zB.xfs.copyFilePromise(be,Me,PLn.default.constants.COPYFILE_FICLONE),await zB.xfs.chmodPromise(Me,420),await zB.xfs.renamePromise(Me,A)}),(!l.mirrorWriteOnly||A===null)&&et.push(async()=>{let Me=`${k}${this.cacheId}`;await zB.xfs.copyFilePromise(be,Me,PLn.default.constants.COPYFILE_FICLONE),await zB.xfs.chmodPromise(Me,420),await zB.xfs.renamePromise(Me,k)});let ct=l.mirrorWriteOnly?A??k:k;return await Promise.all(et.map(Me=>Me())),[!1,ct,De]},B=async()=>{let Se=(async()=>{let De=l.unstablePackages?.has(t.locatorHash),k=De||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,et=k!==null?this.markedFiles.has(k)||await f.existsPromise(k):!1,ct=!!l.mockedPackages?.has(t.locatorHash)&&(!this.check||!et),Me=ct||et,je=Me?n:a;if(je&&je(),Me){let St=null,At=k;if(!ct)if(this.check)St=await b(At);else{let Yt=await C(At,{isColdHit:!1});if(Yt.isValid)St=Yt.hash;else return N()}return[ct,At,St]}else{if(this.immutable&&De)throw new Z5e.ReportError(F5e.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}; consider defining ${LLn.formatUtils.pretty(this.configuration,"supportedArchitectures",LLn.formatUtils.Type.CODE)} to cache packages for multiple systems`);return N()}})();this.mutexes.set(t.locatorHash,Se);try{return await Se}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[F,Q,X]=await B();F||this.markedFiles.add(Q);let ae=()=>this.refCountedZipFsCache.addOrCreate(Q,()=>F?I():new VLn.ZipFS(Q,{baseFs:f,readOnly:!0})),ne,ce=new G5e.LazyFS(()=>udr.prettifySyncErrors(()=>(ne=ae(),ne.value),be=>`Failed to open the cache entry for ${g$.prettyLocator(this.configuration,t)}: ${be}`),zB.ppath),fe=new G5e.AliasFS(Q,{baseFs:ce,pathUtils:zB.ppath}),ue=()=>{ne?.release()},de=l.unstablePackages?.has(t.locatorHash)?null:X;return[fe,ue,de]}};pX.Cache=ldr;var T3o=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function L5e(e){let t=e.match(T3o);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var Adr=H(wAt=>{"use strict";Object.defineProperty(wAt,"__esModule",{value:!0});wAt.BuildDirectiveType=void 0;var OLn;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(OLn||(wAt.BuildDirectiveType=OLn={}))});var pdr=H(uIe=>{"use strict";Object.defineProperty(uIe,"__esModule",{value:!0});uIe.LegacyMigrationResolver=uIe.IMPORTED_PATTERNS=void 0;var HLn=(Pa(),vi(Va)),TAt=zs(),R3o=TW(),MLn=M9(),N3o=HLn.__importStar(n$()),Goe=HLn.__importStar(uG());uIe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,n)=>`${r}#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>Goe.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var ddr=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let n=TAt.ppath.join(t.cwd,TAt.Filename.lockfile);if(!TAt.xfs.existsSync(n))return;let a=await TAt.xfs.readFilePromise(n,"utf8"),o=(0,R3o.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let l=this.resolutions=new Map;for(let A of Object.keys(o)){let f=Goe.tryParseDescriptor(A);if(!f){r.reportWarning(MLn.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${A}" into a proper descriptor`);continue}let I=N3o.validRange(f.range)?Goe.makeDescriptor(f,`npm:${f.range}`):f,{version:C,resolved:b}=o[A];if(!b)continue;let E;for(let[B,F]of uIe.IMPORTED_PATTERNS){let Q=b.match(B);if(Q){E=F(C,...Q);break}}if(!E){r.reportWarning(MLn.MessageName.YARN_IMPORT_FAILED,`${Goe.prettyDescriptor(t.configuration,I)}: Only some patterns can be imported from legacy lockfiles (not "${b}")`);continue}let N=I;try{let B=Goe.parseRange(I.range),F=Goe.tryParseDescriptor(B.selector,!0);F&&(N=F)}catch{}l.set(I.descriptorHash,Goe.makeLocator(N,E))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=Goe.convertLocatorToDescriptor(a),l=n.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(l,r,n)}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};uIe.LegacyMigrationResolver=ddr});var YLn=H(NAt=>{"use strict";Object.defineProperty(NAt,"__esModule",{value:!0});NAt.LightReport=void 0;var D3o=(Pa(),vi(Va)),k3o=sM(),x3o=B5e(),RAt=D3o.__importStar(rM()),fdr=class extends k3o.Report{static async start(t,r){let n=new this(t);try{await r(n)}catch(a){n.reportExceptionOnce(a)}finally{await n.finalize()}return n}constructor({configuration:t,stdout:r,suggestInstall:n=!0}){super(),this.errorCount=0,RAt.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=n}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${RAt.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} `)}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${wAt.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${wAt.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(t){return(0,h3o.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};TAt.LightReport=gdr});var ddr=H(RAt=>{"use strict";Object.defineProperty(RAt,"__esModule",{value:!0});RAt.LockfileResolver=void 0;var m3o=(Pa(),vi(Va)),VLn=m3o.__importStar(uG()),Adr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(VLn.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){let a=n.project.storedResolutions.get(t.descriptorHash);if(a){let l=n.project.originalPackages.get(a);if(l)return[l]}let o=n.project.originalPackages.get(VLn.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.originalPackages.get(t.locatorHash);if(!n)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return n}};RAt.LockfileResolver=Adr});var A$=H(pdr=>{"use strict";Object.defineProperty(pdr,"__esModule",{value:!0});pdr.default=PLn;function PLn(){}PLn.prototype={diff:function(t,r){var n,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var l=this;function A(ce){return o?(setTimeout(function(){o(void 0,ce)},0),!0):ce}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,I=t.length,C=1,b=f+I;a.maxEditLength&&(b=Math.min(b,a.maxEditLength));var E=(n=a.timeout)!==null&&n!==void 0?n:1/0,N=Date.now()+E,B=[{oldPos:-1,lastComponent:void 0}],F=this.extractCommon(B[0],r,t,0);if(B[0].oldPos+1>=I&&F+1>=f)return A([{value:this.join(r),count:r.length}]);var Q=-1/0,X=1/0;function ae(){for(var ce=Math.max(Q,-C);ce<=Math.min(X,C);ce+=2){var fe=void 0,ue=B[ce-1],de=B[ce+1];ue&&(B[ce-1]=void 0);var be=!1;if(de){var Se=de.oldPos-ce;be=de&&0<=Se&&Se=I&&F+1>=f)return A(C3o(l,fe.lastComponent,r,t,l.useLongestToken));B[ce]=fe,fe.oldPos+1>=I&&(X=Math.min(X,ce-1)),F+1>=f&&(Q=Math.max(Q,ce+1))}C++}if(o)(function ce(){setTimeout(function(){if(C>b||Date.now()>N)return o();ae()||ce()},0)})();else for(;C<=b&&Date.now()<=N;){var ne=ae();if(ne)return ne}},addToPath:function(t,r,n,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===n?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:n,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:n,previousComponent:o}}},extractCommon:function(t,r,n,a){for(var o=r.length,l=n.length,A=t.oldPos,f=A-a,I=0;f+1F.length?X:F}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}var B=o[f-1];return f>1&&typeof B.value=="string"&&(B.added||B.removed)&&e.equals("",B.value)&&(o[f-2].value+=B.value,o.pop()),o}});var OLn=H(Z5e=>{"use strict";Object.defineProperty(Z5e,"__esModule",{value:!0});Z5e.diffChars=b3o;Z5e.characterDiff=void 0;var _3o=y3o(A$());function y3o(e){return e&&e.__esModule?e:{default:e}}var WLn=new _3o.default;Z5e.characterDiff=WLn;function b3o(e,t,r){return WLn.diff(e,t,r)}});var Idr=H(fdr=>{"use strict";Object.defineProperty(fdr,"__esModule",{value:!0});fdr.generateOptions=E3o;function E3o(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var YLn=H(Dve=>{"use strict";Object.defineProperty(Dve,"__esModule",{value:!0});Dve.diffWords=w3o;Dve.diffWordsWithSpace=T3o;Dve.wordDiff=void 0;var S3o=B3o(A$()),v3o=Idr();function B3o(e){return e&&e.__esModule?e:{default:e}}var MLn=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,HLn=/\S/,L5e=new S3o.default;Dve.wordDiff=L5e;L5e.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!HLn.test(e)&&!HLn.test(t)};L5e.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(kve,"__esModule",{value:!0});kve.diffLines=k3o;kve.diffTrimmedLines=x3o;kve.lineDiff=void 0;var R3o=D3o(A$()),N3o=Idr();function D3o(e){return e&&e.__esModule?e:{default:e}}var NAt=new R3o.default;kve.lineDiff=NAt;NAt.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var n=0;n{"use strict";Object.defineProperty(V5e,"__esModule",{value:!0});V5e.diffSentences=Z3o;V5e.sentenceDiff=void 0;var G3o=F3o(A$());function F3o(e){return e&&e.__esModule?e:{default:e}}var hdr=new G3o.default;V5e.sentenceDiff=hdr;hdr.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function Z3o(e,t,r){return hdr.diff(e,t,r)}});var XLn=H(P5e=>{"use strict";Object.defineProperty(P5e,"__esModule",{value:!0});P5e.diffCss=P3o;P5e.cssDiff=void 0;var L3o=V3o(A$());function V3o(e){return e&&e.__esModule?e:{default:e}}var mdr=new L3o.default;P5e.cssDiff=mdr;mdr.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function P3o(e,t,r){return mdr.diff(e,t,r)}});var ULn=H(xve=>{"use strict";Object.defineProperty(xve,"__esModule",{value:!0});xve.diffJson=H3o;xve.canonicalize=xAt;xve.jsonDiff=void 0;var JLn=O3o(A$()),W3o=DAt();function O3o(e){return e&&e.__esModule?e:{default:e}}function kAt(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?kAt=function(r){return typeof r}:kAt=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},kAt(e)}var M3o=Object.prototype.toString,uIe=new JLn.default;xve.jsonDiff=uIe;uIe.useLongestToken=!0;uIe.tokenize=W3o.lineDiff.tokenize;uIe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,n=t.stringifyReplacer,a=n===void 0?function(o,l){return typeof l>"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(xAt(e,null,null,a),a," ")};uIe.equals=function(e,t){return JLn.default.prototype.equals.call(uIe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function H3o(e,t,r){return uIe.diff(e,t,r)}function xAt(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(O5e,"__esModule",{value:!0});O5e.diffArrays=X3o;O5e.arrayDiff=void 0;var Y3o=Q3o(A$());function Q3o(e){return e&&e.__esModule?e:{default:e}}var W5e=new Y3o.default;O5e.arrayDiff=W5e;W5e.tokenize=function(e){return e.slice()};W5e.join=W5e.removeEmpty=function(e){return e};function X3o(e,t,r){return W5e.diff(e,t,r)}});var GAt=H(Cdr=>{"use strict";Object.defineProperty(Cdr,"__esModule",{value:!0});Cdr.parsePatch=J3o;function J3o(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),n=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function l(){var I={};for(a.push(I);o"u"?1:+b[2],newStart:+b[3],newLines:typeof b[4]>"u"?1:+b[4],lines:[],linedelimiters:[]};E.oldLines===0&&(E.oldStart+=1),E.newLines===0&&(E.newStart+=1);for(var N=0,B=0;o{"use strict";Object.defineProperty(_dr,"__esModule",{value:!0});_dr.default=U3o;function U3o(e,t,r){var n=!0,a=!1,o=!1,l=1;return function A(){if(n&&!o){if(a?l++:n=!1,e+l<=r)return l;o=!0}if(!a)return o||(n=!0),t<=e-l?-l++:(a=!0,A())}}});var $Ln=H(FAt=>{"use strict";Object.defineProperty(FAt,"__esModule",{value:!0});FAt.applyPatch=qLn;FAt.applyPatches=z3o;var zLn=GAt(),K3o=j3o(jLn());function j3o(e){return e&&e.__esModule?e:{default:e}}function qLn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,zLn.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var n=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,l=r.compareLine||function(je,St,At,Yt){return St===Yt},A=0,f=r.fuzzFactor||0,I=0,C=0,b,E;function N(je,St){for(var At=0;At0?Yt[0]:" ",Nr=Yt.length>0?Yt.substr(1):Yt;if(Tr===" "||Tr==="-"){if(!l(St+1,n[St],Tr,Nr)&&(A++,A>f))return!1;St++}}return!0}for(var B=0;B0?Se[0]:" ",k=Se.length>0?Se.substr(1):Se,et=ue.linedelimiters&&ue.linedelimiters[be]||` +`),this.stdout.write(`${RAt.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. +`),this.suggestInstall&&this.stdout.write(`${RAt.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. +`))}formatNameWithHyperlink(t){return(0,x3o.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};NAt.LightReport=fdr});var hdr=H(DAt=>{"use strict";Object.defineProperty(DAt,"__esModule",{value:!0});DAt.LockfileResolver=void 0;var G3o=(Pa(),vi(Va)),QLn=G3o.__importStar(uG()),Idr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(QLn.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){let a=n.project.storedResolutions.get(t.descriptorHash);if(a){let l=n.project.originalPackages.get(a);if(l)return[l]}let o=n.project.originalPackages.get(QLn.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.originalPackages.get(t.locatorHash);if(!n)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return n}};DAt.LockfileResolver=Idr});var A$=H(mdr=>{"use strict";Object.defineProperty(mdr,"__esModule",{value:!0});mdr.default=XLn;function XLn(){}XLn.prototype={diff:function(t,r){var n,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var l=this;function A(ce){return o?(setTimeout(function(){o(void 0,ce)},0),!0):ce}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,I=t.length,C=1,b=f+I;a.maxEditLength&&(b=Math.min(b,a.maxEditLength));var E=(n=a.timeout)!==null&&n!==void 0?n:1/0,N=Date.now()+E,B=[{oldPos:-1,lastComponent:void 0}],F=this.extractCommon(B[0],r,t,0);if(B[0].oldPos+1>=I&&F+1>=f)return A([{value:this.join(r),count:r.length}]);var Q=-1/0,X=1/0;function ae(){for(var ce=Math.max(Q,-C);ce<=Math.min(X,C);ce+=2){var fe=void 0,ue=B[ce-1],de=B[ce+1];ue&&(B[ce-1]=void 0);var be=!1;if(de){var Se=de.oldPos-ce;be=de&&0<=Se&&Se=I&&F+1>=f)return A(F3o(l,fe.lastComponent,r,t,l.useLongestToken));B[ce]=fe,fe.oldPos+1>=I&&(X=Math.min(X,ce-1)),F+1>=f&&(Q=Math.max(Q,ce+1))}C++}if(o)(function ce(){setTimeout(function(){if(C>b||Date.now()>N)return o();ae()||ce()},0)})();else for(;C<=b&&Date.now()<=N;){var ne=ae();if(ne)return ne}},addToPath:function(t,r,n,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===n?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:n,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:n,previousComponent:o}}},extractCommon:function(t,r,n,a){for(var o=r.length,l=n.length,A=t.oldPos,f=A-a,I=0;f+1F.length?X:F}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}var B=o[f-1];return f>1&&typeof B.value=="string"&&(B.added||B.removed)&&e.equals("",B.value)&&(o[f-2].value+=B.value,o.pop()),o}});var ULn=H(V5e=>{"use strict";Object.defineProperty(V5e,"__esModule",{value:!0});V5e.diffChars=V3o;V5e.characterDiff=void 0;var Z3o=L3o(A$());function L3o(e){return e&&e.__esModule?e:{default:e}}var JLn=new Z3o.default;V5e.characterDiff=JLn;function V3o(e,t,r){return JLn.diff(e,t,r)}});var _dr=H(Cdr=>{"use strict";Object.defineProperty(Cdr,"__esModule",{value:!0});Cdr.generateOptions=P3o;function P3o(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var zLn=H(kve=>{"use strict";Object.defineProperty(kve,"__esModule",{value:!0});kve.diffWords=H3o;kve.diffWordsWithSpace=Y3o;kve.wordDiff=void 0;var W3o=M3o(A$()),O3o=_dr();function M3o(e){return e&&e.__esModule?e:{default:e}}var KLn=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,jLn=/\S/,P5e=new W3o.default;kve.wordDiff=P5e;P5e.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!jLn.test(e)&&!jLn.test(t)};P5e.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(xve,"__esModule",{value:!0});xve.diffLines=U3o;xve.diffTrimmedLines=K3o;xve.lineDiff=void 0;var Q3o=J3o(A$()),X3o=_dr();function J3o(e){return e&&e.__esModule?e:{default:e}}var kAt=new Q3o.default;xve.lineDiff=kAt;kAt.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var n=0;n{"use strict";Object.defineProperty(W5e,"__esModule",{value:!0});W5e.diffSentences=q3o;W5e.sentenceDiff=void 0;var j3o=z3o(A$());function z3o(e){return e&&e.__esModule?e:{default:e}}var ydr=new j3o.default;W5e.sentenceDiff=ydr;ydr.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function q3o(e,t,r){return ydr.diff(e,t,r)}});var $Ln=H(O5e=>{"use strict";Object.defineProperty(O5e,"__esModule",{value:!0});O5e.diffCss=t5o;O5e.cssDiff=void 0;var $3o=e5o(A$());function e5o(e){return e&&e.__esModule?e:{default:e}}var bdr=new $3o.default;O5e.cssDiff=bdr;bdr.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function t5o(e,t,r){return bdr.diff(e,t,r)}});var t9n=H(Gve=>{"use strict";Object.defineProperty(Gve,"__esModule",{value:!0});Gve.diffJson=s5o;Gve.canonicalize=FAt;Gve.jsonDiff=void 0;var e9n=n5o(A$()),r5o=xAt();function n5o(e){return e&&e.__esModule?e:{default:e}}function GAt(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?GAt=function(r){return typeof r}:GAt=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},GAt(e)}var i5o=Object.prototype.toString,gIe=new e9n.default;Gve.jsonDiff=gIe;gIe.useLongestToken=!0;gIe.tokenize=r5o.lineDiff.tokenize;gIe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,n=t.stringifyReplacer,a=n===void 0?function(o,l){return typeof l>"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(FAt(e,null,null,a),a," ")};gIe.equals=function(e,t){return e9n.default.prototype.equals.call(gIe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function s5o(e,t,r){return gIe.diff(e,t,r)}function FAt(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(H5e,"__esModule",{value:!0});H5e.diffArrays=c5o;H5e.arrayDiff=void 0;var o5o=a5o(A$());function a5o(e){return e&&e.__esModule?e:{default:e}}var M5e=new o5o.default;H5e.arrayDiff=M5e;M5e.tokenize=function(e){return e.slice()};M5e.join=M5e.removeEmpty=function(e){return e};function c5o(e,t,r){return M5e.diff(e,t,r)}});var ZAt=H(Edr=>{"use strict";Object.defineProperty(Edr,"__esModule",{value:!0});Edr.parsePatch=l5o;function l5o(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),n=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function l(){var I={};for(a.push(I);o"u"?1:+b[2],newStart:+b[3],newLines:typeof b[4]>"u"?1:+b[4],lines:[],linedelimiters:[]};E.oldLines===0&&(E.oldStart+=1),E.newLines===0&&(E.newStart+=1);for(var N=0,B=0;o{"use strict";Object.defineProperty(Sdr,"__esModule",{value:!0});Sdr.default=u5o;function u5o(e,t,r){var n=!0,a=!1,o=!1,l=1;return function A(){if(n&&!o){if(a?l++:n=!1,e+l<=r)return l;o=!0}if(!a)return o||(n=!0),t<=e-l?-l++:(a=!0,A())}}});var o9n=H(LAt=>{"use strict";Object.defineProperty(LAt,"__esModule",{value:!0});LAt.applyPatch=s9n;LAt.applyPatches=d5o;var i9n=ZAt(),g5o=A5o(n9n());function A5o(e){return e&&e.__esModule?e:{default:e}}function s9n(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,i9n.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var n=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,l=r.compareLine||function(je,St,At,Yt){return St===Yt},A=0,f=r.fuzzFactor||0,I=0,C=0,b,E;function N(je,St){for(var At=0;At0?Yt[0]:" ",Nr=Yt.length>0?Yt.substr(1):Yt;if(Tr===" "||Tr==="-"){if(!l(St+1,n[St],Tr,Nr)&&(A++,A>f))return!1;St++}}return!0}for(var B=0;B0?Se[0]:" ",k=Se.length>0?Se.substr(1):Se,et=ue.linedelimiters&&ue.linedelimiters[be]||` `;if(De===" ")de++;else if(De==="-")n.splice(de,1),a.splice(de,1);else if(De==="+")n.splice(de,0,k),a.splice(de,0,et),de++;else if(De==="\\"){var ct=ue.lines[be-1]?ue.lines[be-1][0]:null;ct==="+"?b=!0:ct==="-"&&(E=!0)}}}if(b)for(;!n[n.length-1];)n.pop(),a.pop();else E&&(n.push(""),a.push(` -`));for(var Me=0;Me{"use strict";Object.defineProperty(Gve,"__esModule",{value:!0});Gve.structuredPatch=e9n;Gve.formatPatch=Edr;Gve.createTwoFilesPatch=t9n;Gve.createPatch=n5o;var q3o=DAt();function ydr(e){return r5o(e)||t5o(e)||e5o(e)||$3o()}function $3o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function e5o(e,t){if(e){if(typeof e=="string")return bdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return bdr(e,t)}}function t5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function r5o(e){if(Array.isArray(e))return bdr(e)}function bdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"&&(l.context=4);var A=(0,q3o.diffLines)(r,n,l);if(!A)return;A.push({value:"",lines:[]});function f(X){return X.map(function(ae){return" "+ae})}for(var I=[],C=0,b=0,E=[],N=1,B=1,F=function(ae){var ne=A[ae],ce=ne.lines||ne.value.replace(/\n$/,"").split(` -`);if(ne.lines=ce,ne.added||ne.removed){var fe;if(!C){var ue=A[ae-1];C=N,b=B,ue&&(E=l.context>0?f(ue.lines.slice(-l.context)):[],C-=E.length,b-=E.length)}(fe=E).push.apply(fe,ydr(ce.map(function(Me){return(ne.added?"+":"-")+Me}))),ne.added?B+=ce.length:N+=ce.length}else{if(C)if(ce.length<=l.context*2&&ae=A.length-2&&ce.length<=l.context){var k=/\n$/.test(r),et=/\n$/.test(n),ct=ce.length==0&&E.length>De.oldLines;!k&&ct&&r.length>0&&E.splice(De.oldLines,0,"\\ No newline at end of file"),(!k&&!ct||!et)&&E.push("\\ No newline at end of file")}I.push(De),C=0,b=0,E=[]}N+=ce.length,B+=ce.length}},Q=0;Q{"use strict";Object.defineProperty(Fve,"__esModule",{value:!0});Fve.structuredPatch=a9n;Fve.formatPatch=wdr;Fve.createTwoFilesPatch=c9n;Fve.createPatch=C5o;var p5o=xAt();function vdr(e){return m5o(e)||h5o(e)||I5o(e)||f5o()}function f5o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function I5o(e,t){if(e){if(typeof e=="string")return Bdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Bdr(e,t)}}function h5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function m5o(e){if(Array.isArray(e))return Bdr(e)}function Bdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"&&(l.context=4);var A=(0,p5o.diffLines)(r,n,l);if(!A)return;A.push({value:"",lines:[]});function f(X){return X.map(function(ae){return" "+ae})}for(var I=[],C=0,b=0,E=[],N=1,B=1,F=function(ae){var ne=A[ae],ce=ne.lines||ne.value.replace(/\n$/,"").split(` +`);if(ne.lines=ce,ne.added||ne.removed){var fe;if(!C){var ue=A[ae-1];C=N,b=B,ue&&(E=l.context>0?f(ue.lines.slice(-l.context)):[],C-=E.length,b-=E.length)}(fe=E).push.apply(fe,vdr(ce.map(function(Me){return(ne.added?"+":"-")+Me}))),ne.added?B+=ce.length:N+=ce.length}else{if(C)if(ce.length<=l.context*2&&ae=A.length-2&&ce.length<=l.context){var k=/\n$/.test(r),et=/\n$/.test(n),ct=ce.length==0&&E.length>De.oldLines;!k&&ct&&r.length>0&&E.splice(De.oldLines,0,"\\ No newline at end of file"),(!k&&!ct||!et)&&E.push("\\ No newline at end of file")}I.push(De),C=0,b=0,E=[]}N+=ce.length,B+=ce.length}},Q=0;Q"u"?"":" "+e.oldHeader)),t.push("+++ "+e.newFileName+(typeof e.newHeader>"u"?"":" "+e.newHeader));for(var r=0;r{"use strict";Object.defineProperty(ZAt,"__esModule",{value:!0});ZAt.arrayEqual=i5o;ZAt.arrayStartsWith=r9n;function i5o(e,t){return e.length!==t.length?!1:r9n(e,t)}function r9n(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(VAt,"__esModule",{value:!0});VAt.calcLineCount=d9n;VAt.merge=g5o;var s5o=Sdr(),o5o=GAt(),vdr=n9n();function Fve(e){return u5o(e)||l5o(e)||c5o(e)||a5o()}function a5o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function c5o(e,t){if(e){if(typeof e=="string")return Bdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Bdr(e,t)}}function l5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function u5o(e){if(Array.isArray(e))return Bdr(e)}function Bdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r{"use strict";Object.defineProperty(Rdr,"__esModule",{value:!0});Rdr.reversePatch=h9n;function f9n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function I9n(e){for(var t=1;t{"use strict";Object.defineProperty(Ndr,"__esModule",{value:!0});Ndr.convertChangesToDMP=I5o;function I5o(e){for(var t=[],r,n,a=0;a{"use strict";Object.defineProperty(Ddr,"__esModule",{value:!0});Ddr.convertChangesToXML=h5o;function h5o(e){for(var t=[],r=0;r"):n.removed&&t.push(""),t.push(m5o(n.value)),n.added?t.push(""):n.removed&&t.push("")}return t.join("")}function m5o(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var kdr=H(E2=>{"use strict";Object.defineProperty(E2,"__esModule",{value:!0});Object.defineProperty(E2,"Diff",{enumerable:!0,get:function(){return C5o.default}});Object.defineProperty(E2,"diffChars",{enumerable:!0,get:function(){return _5o.diffChars}});Object.defineProperty(E2,"diffWords",{enumerable:!0,get:function(){return y9n.diffWords}});Object.defineProperty(E2,"diffWordsWithSpace",{enumerable:!0,get:function(){return y9n.diffWordsWithSpace}});Object.defineProperty(E2,"diffLines",{enumerable:!0,get:function(){return b9n.diffLines}});Object.defineProperty(E2,"diffTrimmedLines",{enumerable:!0,get:function(){return b9n.diffTrimmedLines}});Object.defineProperty(E2,"diffSentences",{enumerable:!0,get:function(){return y5o.diffSentences}});Object.defineProperty(E2,"diffCss",{enumerable:!0,get:function(){return b5o.diffCss}});Object.defineProperty(E2,"diffJson",{enumerable:!0,get:function(){return E9n.diffJson}});Object.defineProperty(E2,"canonicalize",{enumerable:!0,get:function(){return E9n.canonicalize}});Object.defineProperty(E2,"diffArrays",{enumerable:!0,get:function(){return E5o.diffArrays}});Object.defineProperty(E2,"applyPatch",{enumerable:!0,get:function(){return S9n.applyPatch}});Object.defineProperty(E2,"applyPatches",{enumerable:!0,get:function(){return S9n.applyPatches}});Object.defineProperty(E2,"parsePatch",{enumerable:!0,get:function(){return S5o.parsePatch}});Object.defineProperty(E2,"merge",{enumerable:!0,get:function(){return v5o.merge}});Object.defineProperty(E2,"reversePatch",{enumerable:!0,get:function(){return B5o.reversePatch}});Object.defineProperty(E2,"structuredPatch",{enumerable:!0,get:function(){return PAt.structuredPatch}});Object.defineProperty(E2,"createTwoFilesPatch",{enumerable:!0,get:function(){return PAt.createTwoFilesPatch}});Object.defineProperty(E2,"createPatch",{enumerable:!0,get:function(){return PAt.createPatch}});Object.defineProperty(E2,"formatPatch",{enumerable:!0,get:function(){return PAt.formatPatch}});Object.defineProperty(E2,"convertChangesToDMP",{enumerable:!0,get:function(){return w5o.convertChangesToDMP}});Object.defineProperty(E2,"convertChangesToXML",{enumerable:!0,get:function(){return T5o.convertChangesToXML}});var C5o=R5o(A$()),_5o=OLn(),y9n=YLn(),b9n=DAt(),y5o=QLn(),b5o=XLn(),E9n=ULn(),E5o=KLn(),S9n=$Ln(),S5o=GAt(),v5o=p9n(),B5o=m9n(),PAt=Sdr(),w5o=C9n(),T5o=_9n();function R5o(e){return e&&e.__esModule?e:{default:e}}});var v9n=H(WAt=>{"use strict";Object.defineProperty(WAt,"__esModule",{value:!0});WAt.RunInstallPleaseResolver=void 0;var xdr=M9(),Gdr=sM(),Fdr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.resolver.bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){throw new Gdr.ReportError(xdr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,n,a){throw new Gdr.ReportError(xdr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new Gdr.ReportError(xdr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};WAt.RunInstallPleaseResolver=Fdr});var Ldr=H(OAt=>{"use strict";Object.defineProperty(OAt,"__esModule",{value:!0});OAt.ThrowReport=void 0;var N5o=sM(),Zdr=class extends N5o.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};OAt.ThrowReport=Zdr});var Pdr=H(MAt=>{"use strict";Object.defineProperty(MAt,"__esModule",{value:!0});MAt.Workspace=void 0;var Q5e=(Pa(),vi(Va)),ZW=ro(),D5o=Q5e.__importDefault(nve()),M5e=uve(),H5e=Kfe(),B9n=Q5e.__importStar(rM()),k5o=Q5e.__importStar(moe()),x5o=Q5e.__importStar(n$()),Y5e=Q5e.__importStar(uG()),Vdr=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await M5e.Manifest.tryFind(this.cwd)??new M5e.Manifest,this.relativeCwd=ZW.ppath.relative(this.project.cwd,this.cwd)||ZW.PortablePath.dot;let t=this.manifest.name?this.manifest.name:Y5e.makeIdent(null,`${this.computeCandidateName()}-${k5o.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=Y5e.makeDescriptor(t,`${H5e.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=Y5e.makeLocator(t,`${H5e.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let n=await(0,D5o.default)(r,{cwd:ZW.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort(),await n.reduce(async(a,o)=>{let l=ZW.ppath.resolve(this.cwd,ZW.npath.toPortablePath(o)),A=await ZW.xfs.existsPromise(ZW.ppath.join(l,"package.json"));await a,A&&this.workspacesCwds.add(l)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${Y5e.prettyWorkspace(this.project.configuration,this)} (${B9n.pretty(this.project.configuration,ZW.ppath.join(this.cwd,ZW.Filename.manifest),B9n.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),n=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(n===H5e.WorkspaceResolver.protocol&&ZW.ppath.normalize(a)===this.relativeCwd||n===H5e.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=x5o.validRange(a);return o?n===H5e.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${ZW.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=M5e.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of t)for(let l of a.manifest[o].values()){let A=this.project.tryWorkspaceByDescriptor(l);A===null||r.has(A)||(r.add(A),n(A))}};return n(this),r}getRecursiveWorkspaceDependents({dependencies:t=M5e.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of this.project.workspaces)t.some(A=>[...o.manifest[A].values()].some(f=>{let I=this.project.tryWorkspaceByDescriptor(f);return I!==null&&Y5e.areLocatorsEqual(I.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),n(o))};return n(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let n of r.workspacesCwds){let a=this.project.workspacesByCwd.get(n);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=ZW.ppath.join(this.cwd,M5e.Manifest.fileName),n=`${JSON.stringify(t,null,this.manifest.indent)} -`;await ZW.xfs.changeFilePromise(r,n,{automaticNewlines:!0}),this.manifest.raw=t}};MAt.Workspace=Vdr});var P9n=H(fM=>{"use strict";Object.defineProperty(fM,"__esModule",{value:!0});fM.Project=fM.PeerWarningType=fM.InstallMode=fM.LOCKFILE_VERSION=void 0;var fX=(Pa(),vi(Va)),YAt=ro(),Xf=ro(),w9n=TW(),T9n=($c(),vi(rg)),Wdr=wt("crypto"),G5o=kdr(),Odr=kW(),Mdr=fX.__importDefault(Dfe()),F5o=fX.__importDefault(UC()),L9n=wt("util"),R9n=fX.__importDefault(wt("v8")),V9n=fX.__importDefault(wt("zlib")),Z5o=adr(),X5e=f5e(),J5e=cdr(),L5o=udr(),V5o=ddr(),N9n=uve(),Jb=M9(),D9n=yur(),Goe=sM(),P5o=v9n(),k9n=S5e(),x9n=Ldr(),QAt=Kfe(),W5o=Pdr(),O5o=ggt(),qp=fX.__importStar(rM()),r8=fX.__importStar(moe()),m_=fX.__importStar(xW()),M5o=fX.__importStar(Qgt()),G9n=fX.__importStar(HAr()),XAt=fX.__importStar(n$()),ng=fX.__importStar(uG()),H5o=Qfe(),HAt=Qfe();fM.LOCKFILE_VERSION=m_.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??9);var Y5o=3,Q5o=/ *, */g,F9n=/\/$/,X5o=32,J5o=(0,L9n.promisify)(V9n.default.gzip),U5o=(0,L9n.promisify)(V9n.default.gunzip),Zve;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(Zve||(fM.InstallMode=Zve={}));var Hdr={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},n8;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(n8||(fM.PeerWarningType=n8={}));var Z9n=e=>r8.makeHash(`${Y5o}`,e),Ydr=class e{static async find(t,r){if(!t.projectCwd)throw new T9n.UsageError(`No project found in ${r}`);let n=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Xf.xfs.existsSync(Xf.ppath.join(o,Xf.Filename.manifest))){n=o;break}a=Xf.ppath.dirname(o)}let l=new e(t.projectCwd,{configuration:t});X5e.Configuration.telemetry?.reportProject(l.cwd),await l.setupResolutions(),await l.setupWorkspaces(),X5e.Configuration.telemetry?.reportWorkspaceCount(l.workspaces.length),X5e.Configuration.telemetry?.reportDependencyCount(l.workspaces.reduce((B,F)=>B+F.manifest.dependencies.size+F.manifest.devDependencies.size,0));let A=l.tryWorkspaceByCwd(n);if(A)return{project:l,workspace:A,locator:A.anchoredLocator};let f=await l.findLocatorForLocation(`${n}/`,{strict:!0});if(f)return{project:l,locator:f,workspace:null};let I=qp.pretty(t,l.cwd,qp.Type.PATH),C=qp.pretty(t,Xf.ppath.relative(l.cwd,n),qp.Type.PATH),b=`- If ${I} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,E=`- If ${I} is intended to be a project, it might be that you forgot to list ${C} in its workspace configuration.`,N=`- Finally, if ${I} is fine and you intend ${C} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new T9n.UsageError(`The nearest package directory (${qp.pretty(t,n,qp.Type.PATH)}) doesn't seem to be part of the project declared in ${qp.pretty(t,l.cwd,qp.Type.PATH)}. +`}function c9n(e,t,r,n,a,o,l){return wdr(a9n(e,t,r,n,a,o,l))}function C5o(e,t,r,n,a,o){return c9n(e,e,t,r,n,a,o)}});var u9n=H(VAt=>{"use strict";Object.defineProperty(VAt,"__esModule",{value:!0});VAt.arrayEqual=_5o;VAt.arrayStartsWith=l9n;function _5o(e,t){return e.length!==t.length?!1:l9n(e,t)}function l9n(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(WAt,"__esModule",{value:!0});WAt.calcLineCount=_9n;WAt.merge=w5o;var y5o=Tdr(),b5o=ZAt(),Rdr=u9n();function Zve(e){return B5o(e)||v5o(e)||S5o(e)||E5o()}function E5o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function S5o(e,t){if(e){if(typeof e=="string")return Ndr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ndr(e,t)}}function v5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function B5o(e){if(Array.isArray(e))return Ndr(e)}function Ndr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r{"use strict";Object.defineProperty(xdr,"__esModule",{value:!0});xdr.reversePatch=S9n;function b9n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function E9n(e){for(var t=1;t{"use strict";Object.defineProperty(Gdr,"__esModule",{value:!0});Gdr.convertChangesToDMP=k5o;function k5o(e){for(var t=[],r,n,a=0;a{"use strict";Object.defineProperty(Fdr,"__esModule",{value:!0});Fdr.convertChangesToXML=x5o;function x5o(e){for(var t=[],r=0;r"):n.removed&&t.push(""),t.push(G5o(n.value)),n.added?t.push(""):n.removed&&t.push("")}return t.join("")}function G5o(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var Zdr=H(E2=>{"use strict";Object.defineProperty(E2,"__esModule",{value:!0});Object.defineProperty(E2,"Diff",{enumerable:!0,get:function(){return F5o.default}});Object.defineProperty(E2,"diffChars",{enumerable:!0,get:function(){return Z5o.diffChars}});Object.defineProperty(E2,"diffWords",{enumerable:!0,get:function(){return T9n.diffWords}});Object.defineProperty(E2,"diffWordsWithSpace",{enumerable:!0,get:function(){return T9n.diffWordsWithSpace}});Object.defineProperty(E2,"diffLines",{enumerable:!0,get:function(){return R9n.diffLines}});Object.defineProperty(E2,"diffTrimmedLines",{enumerable:!0,get:function(){return R9n.diffTrimmedLines}});Object.defineProperty(E2,"diffSentences",{enumerable:!0,get:function(){return L5o.diffSentences}});Object.defineProperty(E2,"diffCss",{enumerable:!0,get:function(){return V5o.diffCss}});Object.defineProperty(E2,"diffJson",{enumerable:!0,get:function(){return N9n.diffJson}});Object.defineProperty(E2,"canonicalize",{enumerable:!0,get:function(){return N9n.canonicalize}});Object.defineProperty(E2,"diffArrays",{enumerable:!0,get:function(){return P5o.diffArrays}});Object.defineProperty(E2,"applyPatch",{enumerable:!0,get:function(){return D9n.applyPatch}});Object.defineProperty(E2,"applyPatches",{enumerable:!0,get:function(){return D9n.applyPatches}});Object.defineProperty(E2,"parsePatch",{enumerable:!0,get:function(){return W5o.parsePatch}});Object.defineProperty(E2,"merge",{enumerable:!0,get:function(){return O5o.merge}});Object.defineProperty(E2,"reversePatch",{enumerable:!0,get:function(){return M5o.reversePatch}});Object.defineProperty(E2,"structuredPatch",{enumerable:!0,get:function(){return OAt.structuredPatch}});Object.defineProperty(E2,"createTwoFilesPatch",{enumerable:!0,get:function(){return OAt.createTwoFilesPatch}});Object.defineProperty(E2,"createPatch",{enumerable:!0,get:function(){return OAt.createPatch}});Object.defineProperty(E2,"formatPatch",{enumerable:!0,get:function(){return OAt.formatPatch}});Object.defineProperty(E2,"convertChangesToDMP",{enumerable:!0,get:function(){return H5o.convertChangesToDMP}});Object.defineProperty(E2,"convertChangesToXML",{enumerable:!0,get:function(){return Y5o.convertChangesToXML}});var F5o=Q5o(A$()),Z5o=ULn(),T9n=zLn(),R9n=xAt(),L5o=qLn(),V5o=$Ln(),N9n=t9n(),P5o=r9n(),D9n=o9n(),W5o=ZAt(),O5o=y9n(),M5o=v9n(),OAt=Tdr(),H5o=B9n(),Y5o=w9n();function Q5o(e){return e&&e.__esModule?e:{default:e}}});var k9n=H(MAt=>{"use strict";Object.defineProperty(MAt,"__esModule",{value:!0});MAt.RunInstallPleaseResolver=void 0;var Ldr=M9(),Vdr=sM(),Pdr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.resolver.bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){throw new Vdr.ReportError(Ldr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,n,a){throw new Vdr.ReportError(Ldr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new Vdr.ReportError(Ldr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};MAt.RunInstallPleaseResolver=Pdr});var Odr=H(HAt=>{"use strict";Object.defineProperty(HAt,"__esModule",{value:!0});HAt.ThrowReport=void 0;var X5o=sM(),Wdr=class extends X5o.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};HAt.ThrowReport=Wdr});var Hdr=H(YAt=>{"use strict";Object.defineProperty(YAt,"__esModule",{value:!0});YAt.Workspace=void 0;var J5e=(Pa(),vi(Va)),ZW=zs(),J5o=J5e.__importDefault(ive()),Y5e=gve(),Q5e=jfe(),x9n=J5e.__importStar(rM()),U5o=J5e.__importStar(Coe()),K5o=J5e.__importStar(n$()),X5e=J5e.__importStar(uG()),Mdr=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await Y5e.Manifest.tryFind(this.cwd)??new Y5e.Manifest,this.relativeCwd=ZW.ppath.relative(this.project.cwd,this.cwd)||ZW.PortablePath.dot;let t=this.manifest.name?this.manifest.name:X5e.makeIdent(null,`${this.computeCandidateName()}-${U5o.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=X5e.makeDescriptor(t,`${Q5e.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=X5e.makeLocator(t,`${Q5e.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let n=await(0,J5o.default)(r,{cwd:ZW.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort(),await n.reduce(async(a,o)=>{let l=ZW.ppath.resolve(this.cwd,ZW.npath.toPortablePath(o)),A=await ZW.xfs.existsPromise(ZW.ppath.join(l,"package.json"));await a,A&&this.workspacesCwds.add(l)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${X5e.prettyWorkspace(this.project.configuration,this)} (${x9n.pretty(this.project.configuration,ZW.ppath.join(this.cwd,ZW.Filename.manifest),x9n.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),n=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(n===Q5e.WorkspaceResolver.protocol&&ZW.ppath.normalize(a)===this.relativeCwd||n===Q5e.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=K5o.validRange(a);return o?n===Q5e.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${ZW.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=Y5e.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of t)for(let l of a.manifest[o].values()){let A=this.project.tryWorkspaceByDescriptor(l);A===null||r.has(A)||(r.add(A),n(A))}};return n(this),r}getRecursiveWorkspaceDependents({dependencies:t=Y5e.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of this.project.workspaces)t.some(A=>[...o.manifest[A].values()].some(f=>{let I=this.project.tryWorkspaceByDescriptor(f);return I!==null&&X5e.areLocatorsEqual(I.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),n(o))};return n(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let n of r.workspacesCwds){let a=this.project.workspacesByCwd.get(n);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=ZW.ppath.join(this.cwd,Y5e.Manifest.fileName),n=`${JSON.stringify(t,null,this.manifest.indent)} +`;await ZW.xfs.changeFilePromise(r,n,{automaticNewlines:!0}),this.manifest.raw=t}};YAt.Workspace=Mdr});var X9n=H(fM=>{"use strict";Object.defineProperty(fM,"__esModule",{value:!0});fM.Project=fM.PeerWarningType=fM.InstallMode=fM.LOCKFILE_VERSION=void 0;var fX=(Pa(),vi(Va)),XAt=zs(),Xf=zs(),G9n=TW(),F9n=($c(),vi(rg)),Ydr=wt("crypto"),j5o=Zdr(),Qdr=kW(),Xdr=fX.__importDefault(kfe()),z5o=fX.__importDefault(UC()),Y9n=wt("util"),Z9n=fX.__importDefault(wt("v8")),Q9n=fX.__importDefault(wt("zlib")),q5o=gdr(),U5e=h5e(),K5e=Adr(),$5o=pdr(),eMo=hdr(),L9n=gve(),Jb=M9(),V9n=vur(),Foe=sM(),tMo=k9n(),P9n=B5e(),W9n=Odr(),JAt=jfe(),rMo=Hdr(),nMo=dgt(),qp=fX.__importStar(rM()),r8=fX.__importStar(Coe()),m_=fX.__importStar(xW()),iMo=fX.__importStar(Jgt()),O9n=fX.__importStar(JAr()),UAt=fX.__importStar(n$()),ng=fX.__importStar(uG()),sMo=Xfe(),QAt=Xfe();fM.LOCKFILE_VERSION=m_.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??9);var oMo=3,aMo=/ *, */g,M9n=/\/$/,cMo=32,lMo=(0,Y9n.promisify)(Q9n.default.gzip),uMo=(0,Y9n.promisify)(Q9n.default.gunzip),Lve;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(Lve||(fM.InstallMode=Lve={}));var Jdr={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},n8;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(n8||(fM.PeerWarningType=n8={}));var H9n=e=>r8.makeHash(`${oMo}`,e),Udr=class e{static async find(t,r){if(!t.projectCwd)throw new F9n.UsageError(`No project found in ${r}`);let n=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Xf.xfs.existsSync(Xf.ppath.join(o,Xf.Filename.manifest))){n=o;break}a=Xf.ppath.dirname(o)}let l=new e(t.projectCwd,{configuration:t});U5e.Configuration.telemetry?.reportProject(l.cwd),await l.setupResolutions(),await l.setupWorkspaces(),U5e.Configuration.telemetry?.reportWorkspaceCount(l.workspaces.length),U5e.Configuration.telemetry?.reportDependencyCount(l.workspaces.reduce((B,F)=>B+F.manifest.dependencies.size+F.manifest.devDependencies.size,0));let A=l.tryWorkspaceByCwd(n);if(A)return{project:l,workspace:A,locator:A.anchoredLocator};let f=await l.findLocatorForLocation(`${n}/`,{strict:!0});if(f)return{project:l,locator:f,workspace:null};let I=qp.pretty(t,l.cwd,qp.Type.PATH),C=qp.pretty(t,Xf.ppath.relative(l.cwd,n),qp.Type.PATH),b=`- If ${I} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,E=`- If ${I} is intended to be a project, it might be that you forgot to list ${C} in its workspace configuration.`,N=`- Finally, if ${I} is fine and you intend ${C} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new F9n.UsageError(`The nearest package directory (${qp.pretty(t,n,qp.Type.PATH)}) doesn't seem to be part of the project declared in ${qp.pretty(t,l.cwd,qp.Type.PATH)}. ${[b,E,N].join(` -`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Xf.xfs.existsSync(t)){let n=await Xf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=Z9n(n);let a=(0,w9n.parseSyml)(n);if(a.__metadata){let o=a.__metadata.version,l=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${A})`);let I=ng.parseLocator(f.resolution,!0),C=new N9n.Manifest;C.load(f,{yamlCompatibilityMode:!0});let b=C.version,E=C.languageName||r,N=f.linkType.toUpperCase(),B=f.conditions??null,F=C.dependencies,Q=C.peerDependencies,X=C.dependenciesMeta,ae=C.peerDependenciesMeta,ne=C.bin;if(f.checksum!=null){let fe=typeof l<"u"&&!f.checksum.includes("/")?`${l}/${f.checksum}`:f.checksum;this.storedChecksums.set(I.locatorHash,fe)}let ce={...I,version:b,languageName:E,linkType:N,conditions:B,dependencies:F,peerDependencies:Q,dependenciesMeta:X,peerDependenciesMeta:ae,bin:ne};this.originalPackages.set(ce.locatorHash,ce);for(let fe of A.split(Q5o)){let ue=ng.parseDescriptor(fe);o<=6&&(ue=this.configuration.normalizeDependency(ue),ue=ng.makeDescriptor(ue,ue.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(ue.descriptorHash,ue),this.storedResolutions.set(ue.descriptorHash,I.locatorHash)}}}else n.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,Mdr.default)(4),n=async(a,o)=>{if(t.has(o))return a;t.add(o);let l=new W5o.Workspace(o,{project:this});await r(()=>l.setup());let A=a.then(()=>{this.addWorkspace(l)});return Array.from(l.workspacesCwds).reduce(n,A)};await n(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${ng.prettyIdent(this.configuration,t.anchoredLocator)}: ${YAt.npath.fromPortablePath(t.cwd)} conflicts with ${YAt.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Xf.ppath.isAbsolute(t)||(t=Xf.ppath.resolve(this.cwd,t)),t=Xf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let n of this.workspaces)Xf.ppath.relative(n.cwd,t).startsWith("../")||r&&r.cwd.length>=n.cwd.length||(r=n);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${ng.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(QAt.WorkspaceResolver.protocol)){let n=t.range.slice(QAt.WorkspaceResolver.protocol.length);if(n!=="^"&&n!=="~"&&n!=="*"&&!XAt.validRange(n))return this.tryWorkspaceByCwd(n)}let r=this.tryWorkspaceByIdent(t);return r===null||(ng.isVirtualDescriptor(t)&&(t=ng.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${ng.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(ng.isVirtualLocator(t)&&(t=ng.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${ng.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let n=new Set(this.storedResolutions.values());typeof r<"u"&&!n.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,n]of this.storedResolutions)n===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[n,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(n)}for(let n of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(n,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(n.locatorHash);let o=r.get(n.locatorHash);if(o){r.delete(n.locatorHash);for(let l of o)this.deleteDescriptor(l)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,n]of t.dependencies)ng.isVirtualDescriptor(n)&&t.dependencies.set(r,ng.devirtualizeDescriptor(n))}getDependencyMeta(t,r){let n={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(ng.stringifyIdent(t));if(!o)return n;let l=o.get(null);if(l&&Object.assign(n,l),r===null||!F5o.default.valid(r))return n;for(let[A,f]of o)A!==null&&A===r&&Object.assign(n,f);return n}async findLocatorForLocation(t,{strict:r=!1}={}){let n=new x9n.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:n};for(let l of a){let A=await l.findPackageLocator(t,o);if(A){if(r&&(await l.findPackageLocation(A,o)).replace(F9n,"")!==t.replace(F9n,""))continue;return A}}return null}async loadUserConfig(){let t=Xf.ppath.join(this.cwd,".pnp.cjs");await Xf.xfs.existsPromise(t)&&m_.dynamicRequire(t).setup();let r=Xf.ppath.join(this.cwd,"yarn.config.cjs");return await Xf.xfs.existsPromise(r)?m_.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:n}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[l,A]of o.dependencies){let f=await this.configuration.reduceHook(C=>C.reduceDependency,A,this,o,A,{resolver:r,resolveOptions:n});if(!ng.areIdentsEqual(A,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let I=r.bindDescriptor(f,o,n);o.dependencies.set(l,I)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),n=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new L5o.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let l=t.lockfileOnly?[new P5o.RunInstallPleaseResolver(a)]:[o,a],A=new D9n.MultiResolver([new V5o.LockfileResolver(a),...l]),f=new D9n.MultiResolver([...l]),I=this.configuration.makeFetcher(),C=t.lockfileOnly?{project:this,report:t.report,resolver:A}:{project:this,report:t.report,resolver:A,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:I,cacheOptions:{mirrorWriteOnly:!0}}},b=new Map,E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,X=this.topLevelWorkspace.anchoredLocator,ae=new Set,ne=[],ce=M5o.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Goe.Report.progressViaTitle(),async je=>{let St=async er=>{let vt=await m_.prettifyAsyncErrors(async()=>await A.resolve(er,C),Xt=>`${ng.prettyLocator(this.configuration,er)}: ${Xt}`);if(!ng.areLocatorsEqual(er,vt))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${ng.prettyLocator(this.configuration,er)} to ${ng.prettyLocator(this.configuration,vt)})`);B.set(vt.locatorHash,vt),!r.delete(vt.locatorHash)&&!this.tryWorkspaceByLocator(vt)&&n.push(vt);let Zr=await this.preparePackage(vt,{resolver:A,resolveOptions:C}),qt=m_.allSettledSafe([...Zr.dependencies.values()].map(Xt=>Nr(Xt)));return ne.push(qt),qt.catch(()=>{}),E.set(Zr.locatorHash,Zr),Zr},At=async er=>{let vt=F.get(er.locatorHash);if(typeof vt<"u")return vt;let xt=Promise.resolve().then(()=>St(er));return F.set(er.locatorHash,xt),xt},Yt=async(er,vt)=>{let xt=await Nr(vt);return b.set(er.descriptorHash,er),N.set(er.descriptorHash,xt.locatorHash),xt},Tr=async er=>{je.setTitle(ng.prettyDescriptor(this.configuration,er));let vt=this.resolutionAliases.get(er.descriptorHash);if(typeof vt<"u")return Yt(er,this.storedDescriptors.get(vt));let xt=A.getResolutionDependencies(er,C),Zr=Object.fromEntries(await m_.allSettledSafe(Object.entries(xt).map(async([lr,cr])=>{let Ar=A.bindDescriptor(cr,X,C),qr=await Nr(Ar);return ae.add(qr.locatorHash),[lr,qr]}))),Xt=(await m_.prettifyAsyncErrors(async()=>await A.getCandidates(er,Zr,C),lr=>`${ng.prettyDescriptor(this.configuration,er)}: ${lr}`))[0];if(typeof Xt>"u")throw new Goe.ReportError(Jb.MessageName.RESOLUTION_FAILED,`${ng.prettyDescriptor(this.configuration,er)}: No candidates found`);if(t.checkResolutions){let{locators:lr}=await f.getSatisfying(er,Zr,[Xt],{...C,resolver:f});if(!lr.find(cr=>cr.locatorHash===Xt.locatorHash))throw new Goe.ReportError(Jb.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${ng.prettyResolution(this.configuration,er,Xt)}`)}return b.set(er.descriptorHash,er),N.set(er.descriptorHash,Xt.locatorHash),At(Xt)},Nr=er=>{let vt=Q.get(er.descriptorHash);if(typeof vt<"u")return vt;b.set(er.descriptorHash,er);let xt=Promise.resolve().then(()=>Tr(er));return Q.set(er.descriptorHash,xt),xt};for(let er of this.workspaces){let vt=er.anchoredDescriptor;ne.push(Nr(vt))}for(;ne.length>0;){let er=[...ne];ne.length=0,await m_.allSettledSafe(er)}});let ue=m_.mapAndFilter(r.values(),je=>this.tryWorkspaceByLocator(je)?m_.mapAndFilter.skip:je);if(n.length>0||ue.length>0){let je=new Set(this.workspaces.flatMap(er=>{let vt=E.get(er.anchoredLocator.locatorHash);if(!vt)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(vt.dependencies.values(),xt=>{let Zr=N.get(xt.descriptorHash);if(!Zr)throw new Error("Assertion failed: The resolution should have been registered");return Zr})})),St=er=>je.has(er.locatorHash)?"0":"1",At=er=>ng.stringifyLocator(er),Yt=m_.sortMap(n,[St,At]),Tr=m_.sortMap(ue,[St,At]),Nr=t.report.getRecommendedLength();Yt.length>0&&t.report.reportInfo(Jb.MessageName.UPDATED_RESOLUTION_RECORD,`${qp.pretty(this.configuration,"+",qp.Type.ADDED)} ${qp.prettyTruncatedLocatorList(this.configuration,Yt,Nr)}`),Tr.length>0&&t.report.reportInfo(Jb.MessageName.UPDATED_RESOLUTION_RECORD,`${qp.pretty(this.configuration,"-",qp.Type.REMOVED)} ${qp.prettyTruncatedLocatorList(this.configuration,Tr,Nr)}`)}let de=new Set(this.resolutionAliases.values()),be=new Set(E.keys()),Se=new Set,De=new Map,k=[],et=new Map;K5o({project:this,accessibleLocators:Se,volatileDescriptors:de,optionalBuilds:be,peerRequirements:De,peerWarnings:k,peerRequirementNodes:et,allDescriptors:b,allResolutions:N,allPackages:E});for(let je of ae)be.delete(je);for(let je of de)b.delete(je),N.delete(je);let ct=new Set,Me=new Set;for(let je of E.values())je.conditions!=null&&be.has(je.locatorHash)&&(ng.isPackageCompatible(je,fe)||(ng.isPackageCompatible(je,ce)&&t.report.reportWarningOnce(Jb.MessageName.GHOST_ARCHITECTURE,`${ng.prettyLocator(this.configuration,je)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${qp.pretty(this.configuration,"supportedArchitectures",qp.Type.SETTING)} setting`),Me.add(je.locatorHash)),ct.add(je.locatorHash));this.storedResolutions=N,this.storedDescriptors=b,this.storedPackages=E,this.accessibleLocators=Se,this.conditionalLocators=ct,this.disabledLocators=Me,this.originalPackages=B,this.optionalBuilds=be,this.peerRequirements=De,this.peerWarnings=k,this.peerRequirementNodes=et}async fetchEverything({cache:t,report:r,fetcher:n,mode:a,persistProject:o=!0}){let l={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},A=n||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:A,report:r,cacheOptions:l},I=Array.from(new Set(m_.sortMap(this.storedResolutions.values(),[B=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");return ng.stringifyLocator(F)}])));a===Zve.UpdateLockfile&&(I=I.filter(B=>!this.storedChecksums.has(B)));let C=!1,b=Goe.Report.progressViaCounter(I.length);await r.reportProgress(b);let E=(0,Mdr.default)(X5o);if(await m_.allSettledSafe(I.map(B=>E(async()=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");if(ng.isVirtualLocator(F))return;let Q;try{Q=await A.fetch(F,f)}catch(X){X.message=`${ng.prettyLocator(this.configuration,F)}: ${X.message}`,r.reportExceptionOnce(X),C=X;return}Q.checksum!=null?this.storedChecksums.set(F.locatorHash,Q.checksum):this.storedChecksums.delete(F.locatorHash),Q.releaseFs&&Q.releaseFs()}).finally(()=>{b.tick()}))),C)throw C;let N=o&&a!==Zve.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||N){let F=(await Promise.all([...r.cacheMisses].map(async ue=>{let de=this.storedPackages.get(ue),be=this.storedChecksums.get(ue)??null,Se=t.getLocatorPath(de,be);return(await Xf.xfs.statPromise(Se)).size}))).reduce((ue,de)=>ue+de,0)-(N?.size??0),Q=r.cacheMisses.size,X=N?.count??0,ae=`${m_.plural(Q,{zero:"No new packages",one:"A package was",more:`${qp.pretty(this.configuration,Q,qp.Type.NUMBER)} packages were`})} added to the project`,ne=`${m_.plural(X,{zero:"none were",one:"one was",more:`${qp.pretty(this.configuration,X,qp.Type.NUMBER)} were`})} removed`,ce=F!==0?` (${qp.pretty(this.configuration,F,qp.Type.SIZE_DIFF)})`:"",fe=X>0?Q>0?`${ae}, and ${ne}${ce}.`:`${ae}, but ${ne}${ce}.`:`${ae}${ce}.`;r.reportInfo(Jb.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:n,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},l=n||this.configuration.makeFetcher(),A={checksums:this.storedChecksums,project:this,cache:t,fetcher:l,report:r,cacheOptions:o},f=this.configuration.getLinkers(),I={project:this,report:r},C=new Map(f.map(ct=>{let Me=ct.makeInstaller(I),je=ct.getCustomDataKey(),St=this.linkersCustomData.get(je);return typeof St<"u"&&Me.attachCustomData(St),[ct,Me]})),b=new Map,E=new Map,N=new Map,B=new Map(await m_.allSettledSafe([...this.accessibleLocators].map(async ct=>{let Me=this.storedPackages.get(ct);if(!Me)throw new Error("Assertion failed: The locator should have been registered");return[ct,await l.fetch(Me,A)]}))),F=[],Q=new Set,X=[];for(let ct of this.accessibleLocators){let Me=this.storedPackages.get(ct);if(typeof Me>"u")throw new Error("Assertion failed: The locator should have been registered");let je=B.get(Me.locatorHash);if(typeof je>"u")throw new Error("Assertion failed: The fetch result should have been registered");let St=[],At=Tr=>{St.push(Tr)},Yt=this.tryWorkspaceByLocator(Me);if(Yt!==null){let Tr=[],{scripts:Nr}=Yt.manifest;for(let vt of["preinstall","install","postinstall"])Nr.has(vt)&&Tr.push({type:J5e.BuildDirectiveType.SCRIPT,script:vt});try{for(let[vt,xt]of C)if(vt.supportsPackage(Me,I)&&(await xt.installPackage(Me,je,{holdFetchResult:At})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{St.length===0?je.releaseFs?.():F.push(m_.allSettledSafe(St).catch(()=>{}).then(()=>{je.releaseFs?.()}))}let er=Xf.ppath.join(je.packageFs.getRealPath(),je.prefixPath);E.set(Me.locatorHash,er),!ng.isVirtualLocator(Me)&&Tr.length>0&&N.set(Me.locatorHash,{buildDirectives:Tr,buildLocations:[er]})}else{let Tr=f.find(vt=>vt.supportsPackage(Me,I));if(!Tr)throw new Goe.ReportError(Jb.MessageName.LINKER_NOT_FOUND,`${ng.prettyLocator(this.configuration,Me)} isn't supported by any available linker`);let Nr=C.get(Tr);if(!Nr)throw new Error("Assertion failed: The installer should have been registered");let er;try{er=await Nr.installPackage(Me,je,{holdFetchResult:At})}finally{St.length===0?je.releaseFs?.():F.push(m_.allSettledSafe(St).then(()=>{}).then(()=>{je.releaseFs?.()}))}b.set(Me.locatorHash,Tr),E.set(Me.locatorHash,er.packageLocation),er.buildRequest&&er.packageLocation&&(er.buildRequest.skipped?(Q.add(Me.locatorHash),this.skippedBuilds.has(Me.locatorHash)||X.push([Me,er.buildRequest.explain])):N.set(Me.locatorHash,{buildDirectives:er.buildRequest.directives,buildLocations:[er.packageLocation]}))}}let ae=new Map;for(let ct of this.accessibleLocators){let Me=this.storedPackages.get(ct);if(!Me)throw new Error("Assertion failed: The locator should have been registered");let je=this.tryWorkspaceByLocator(Me)!==null,St=async(At,Yt)=>{let Tr=E.get(Me.locatorHash);if(typeof Tr>"u")throw new Error(`Assertion failed: The package (${ng.prettyLocator(this.configuration,Me)}) should have been registered`);let Nr=[];for(let er of Me.dependencies.values()){let vt=this.storedResolutions.get(er.descriptorHash);if(typeof vt>"u")throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,er)}, from ${ng.prettyLocator(this.configuration,Me)})should have been registered`);let xt=this.storedPackages.get(vt);if(typeof xt>"u")throw new Error(`Assertion failed: The package (${vt}, resolved from ${ng.prettyDescriptor(this.configuration,er)}) should have been registered`);let Zr=this.tryWorkspaceByLocator(xt)===null?b.get(vt):null;if(typeof Zr>"u")throw new Error(`Assertion failed: The package (${vt}, resolved from ${ng.prettyDescriptor(this.configuration,er)}) should have been registered`);Zr===At||Zr===null?E.get(xt.locatorHash)!==null&&Nr.push([er,xt]):!je&&Tr!==null&&m_.getArrayWithDefault(ae,vt).push(Tr)}Tr!==null&&await Yt.attachInternalDependencies(Me,Nr)};if(je)for(let[At,Yt]of C)At.supportsPackage(Me,I)&&await St(At,Yt);else{let At=b.get(Me.locatorHash);if(!At)throw new Error("Assertion failed: The linker should have been found");let Yt=C.get(At);if(!Yt)throw new Error("Assertion failed: The installer should have been registered");await St(At,Yt)}}for(let[ct,Me]of ae){let je=this.storedPackages.get(ct);if(!je)throw new Error("Assertion failed: The package should have been registered");let St=b.get(je.locatorHash);if(!St)throw new Error("Assertion failed: The linker should have been found");let At=C.get(St);if(!At)throw new Error("Assertion failed: The installer should have been registered");await At.attachExternalDependents(je,Me)}let ne=new Map;for(let[ct,Me]of C){let je=await Me.finalizeInstall();for(let St of je?.records??[])St.buildRequest.skipped?(Q.add(St.locator.locatorHash),this.skippedBuilds.has(St.locator.locatorHash)||X.push([St.locator,St.buildRequest.explain])):N.set(St.locator.locatorHash,{buildDirectives:St.buildRequest.directives,buildLocations:St.buildLocations});typeof je?.customData<"u"&&ne.set(ct.getCustomDataKey(),je.customData)}if(this.linkersCustomData=ne,await m_.allSettledSafe(F),a===Zve.SkipBuild)return;for(let[,ct]of m_.sortMap(X,([Me])=>ng.stringifyLocator(Me)))ct(r);let ce=new Set(N.keys()),fe=(0,Wdr.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(ct=>ct.globalHashGeneration,this,ct=>{fe.update("\0"),fe.update(ct)});let ue=fe.digest("hex"),de=new Map,be=ct=>{let Me=de.get(ct.locatorHash);if(typeof Me<"u")return Me;let je=this.storedPackages.get(ct.locatorHash);if(typeof je>"u")throw new Error("Assertion failed: The package should have been registered");let St=(0,Wdr.createHash)("sha512");St.update(ct.locatorHash),de.set(ct.locatorHash,"");for(let At of je.dependencies.values()){let Yt=this.storedResolutions.get(At.descriptorHash);if(typeof Yt>"u")throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,At)}) should have been registered`);let Tr=this.storedPackages.get(Yt);if(typeof Tr>"u")throw new Error("Assertion failed: The package should have been registered");St.update(be(Tr))}return Me=St.digest("hex"),de.set(ct.locatorHash,Me),Me},Se=(ct,Me)=>{let je=(0,Wdr.createHash)("sha512");je.update(ue),je.update(be(ct));for(let St of Me)je.update(St);return je.digest("hex")},De=new Map,k=!1,et=ct=>{let Me=new Set([ct.locatorHash]);for(let je of Me){let St=this.storedPackages.get(je);if(!St)throw new Error("Assertion failed: The package should have been registered");for(let At of St.dependencies.values()){let Yt=this.storedResolutions.get(At.descriptorHash);if(!Yt)throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,At)}) should have been registered`);if(Yt!==ct.locatorHash&&ce.has(Yt))return!1;let Tr=this.storedPackages.get(Yt);if(!Tr)throw new Error("Assertion failed: The package should have been registered");let Nr=this.tryWorkspaceByLocator(Tr);if(Nr){if(Nr.anchoredLocator.locatorHash!==ct.locatorHash&&ce.has(Nr.anchoredLocator.locatorHash))return!1;Me.add(Nr.anchoredLocator.locatorHash)}Me.add(Yt)}}return!0};for(;ce.size>0;){let ct=ce.size,Me=[];for(let je of ce){let St=this.storedPackages.get(je);if(!St)throw new Error("Assertion failed: The package should have been registered");if(!et(St))continue;let At=N.get(St.locatorHash);if(!At)throw new Error("Assertion failed: The build directive should have been registered");let Yt=Se(St,At.buildLocations);if(this.storedBuildState.get(St.locatorHash)===Yt){De.set(St.locatorHash,Yt),ce.delete(je);continue}k||(await this.persistInstallStateFile(),k=!0),this.storedBuildState.has(St.locatorHash)?r.reportInfo(Jb.MessageName.MUST_REBUILD,`${ng.prettyLocator(this.configuration,St)} must be rebuilt because its dependency tree changed`):r.reportInfo(Jb.MessageName.MUST_BUILD,`${ng.prettyLocator(this.configuration,St)} must be built because it never has been before or the last one failed`);let Tr=At.buildLocations.map(async Nr=>{if(!Xf.ppath.isAbsolute(Nr))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Nr})`);for(let er of At.buildDirectives){let vt=`# This file contains the result of Yarn building a package (${ng.stringifyLocator(St)}) -`;switch(er.type){case J5e.BuildDirectiveType.SCRIPT:vt+=`# Script name: ${er.script} -`;break;case J5e.BuildDirectiveType.SHELLCODE:vt+=`# Script code: ${er.script} -`;break}let xt=null;if(!await Xf.xfs.mktempPromise(async qt=>{let Xt=Xf.ppath.join(qt,"build.log"),{stdout:lr,stderr:cr}=this.configuration.getSubprocessStreams(Xt,{header:vt,prefix:ng.prettyLocator(this.configuration,St),report:r}),Ar;try{switch(er.type){case J5e.BuildDirectiveType.SCRIPT:Ar=await G9n.executePackageScript(St,er.script,[],{cwd:Nr,project:this,stdin:xt,stdout:lr,stderr:cr});break;case J5e.BuildDirectiveType.SHELLCODE:Ar=await G9n.executePackageShellcode(St,er.script,[],{cwd:Nr,project:this,stdin:xt,stdout:lr,stderr:cr});break}}catch(ke){cr.write(ke.stack),Ar=1}if(lr.end(),cr.end(),Ar===0)return!0;Xf.xfs.detachTemp(qt);let qr=`${ng.prettyLocator(this.configuration,St)} couldn't be built successfully (exit code ${qp.pretty(this.configuration,Ar,qp.Type.NUMBER)}, logs can be found here: ${qp.pretty(this.configuration,Xt,qp.Type.PATH)})`,_n=this.optionalBuilds.has(St.locatorHash);return _n?r.reportInfo(Jb.MessageName.BUILD_FAILED,qr):r.reportError(Jb.MessageName.BUILD_FAILED,qr),k9n.SUPPORTS_GROUPS&&r.reportFold(YAt.npath.fromPortablePath(Xt),Xf.xfs.readFileSync(Xt,"utf8")),_n}))return!1}return!0});Me.push(...Tr,Promise.allSettled(Tr).then(Nr=>{ce.delete(je),Nr.every(er=>er.status==="fulfilled"&&er.value===!0)&&De.set(St.locatorHash,Yt)}))}if(await m_.allSettledSafe(Me),ct===ce.size){let je=Array.from(ce).map(St=>{let At=this.storedPackages.get(St);if(!At)throw new Error("Assertion failed: The package should have been registered");return ng.prettyLocator(this.configuration,At)}).join(", ");r.reportError(Jb.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${je})`);break}}this.storedBuildState=De,this.skippedBuilds=Q}async installWithNewReport(t,r){return(await k9n.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");X5e.Configuration.telemetry?.reportInstall(r);let n=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(Jb.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(C=>C.validateProject,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),n=!0}})}),n)return;let a=await this.configuration.getPackageExtensions();for(let C of a.values())for(let[,b]of C)for(let E of b)E.status=HAt.PackageExtensionStatus.Inactive;let o=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),l=null;if(t.immutable)try{l=await Xf.xfs.readFilePromise(o,"utf8")}catch(C){throw C.code==="ENOENT"?new Goe.ReportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):C}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{z5o(this,t.report);for(let[,C]of a)for(let[,b]of C)for(let E of b)if(E.userProvided){let N=qp.pretty(this.configuration,E,qp.Type.PACKAGE_EXTENSION);switch(E.status){case HAt.PackageExtensionStatus.Inactive:t.report.reportWarning(Jb.MessageName.UNUSED_PACKAGE_EXTENSION,`${N}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case HAt.PackageExtensionStatus.Redundant:t.report.reportWarning(Jb.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${N}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(l!==null){let C=(0,Xf.normalizeLineEndings)(l,this.generateLockfile());if(C!==l){let b=(0,G5o.structuredPatch)(o,o,l,C,void 0,void 0,{maxEditLength:100});if(b){t.report.reportSeparator();for(let E of b.hunks){t.report.reportInfo(null,`@@ -${E.oldStart},${E.oldLines} +${E.newStart},${E.newLines} @@`);for(let N of E.lines)N.startsWith("+")?t.report.reportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,qp.pretty(this.configuration,N,qp.Type.ADDED)):N.startsWith("-")?t.report.reportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,qp.pretty(this.configuration,N,qp.Type.REMOVED)):t.report.reportInfo(null,qp.pretty(this.configuration,N,"grey"))}t.report.reportSeparator()}throw new Goe.ReportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let C of a.values())for(let[,b]of C)for(let E of b)E.userProvided&&E.status===HAt.PackageExtensionStatus.Active&&X5e.Configuration.telemetry?.reportPackageExtension(qp.json(E,qp.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let A=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(A.map(async C=>r8.checksumPattern(C,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===Zve.UpdateLockfile){t.report.reportWarning(Jb.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${qp.pretty(this.configuration,"mode=update-lockfile",qp.Type.CODE)}`);return}await this.linkEverything(t);let C=await Promise.all(A.map(async b=>r8.checksumPattern(b,{cwd:this.cwd})));for(let b=0;b{await this.configuration.triggerHook(C=>C.validateProjectAfterInstall,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),I=!0}})}),!I&&await this.configuration.triggerHook(C=>C.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,l]of this.storedResolutions.entries()){let A=t.get(l);A||t.set(l,A=new Set),A.add(o)}let r={},{cacheKey:n}=Z5o.Cache.getCacheKey(this.configuration);r.__metadata={version:fM.LOCKFILE_VERSION,cacheKey:n};for(let[o,l]of t.entries()){let A=this.originalPackages.get(o);if(!A)continue;let f=[];for(let b of l){let E=this.storedDescriptors.get(b);if(!E)throw new Error("Assertion failed: The descriptor should have been registered");f.push(E)}let I=f.map(b=>ng.stringifyDescriptor(b)).sort().join(", "),C=new N9n.Manifest;C.version=A.linkType===H5o.LinkType.HARD?A.version:"0.0.0-use.local",C.languageName=A.languageName,C.dependencies=new Map(A.dependencies),C.peerDependencies=new Map(A.peerDependencies),C.dependenciesMeta=new Map(A.dependenciesMeta),C.peerDependenciesMeta=new Map(A.peerDependenciesMeta),C.bin=new Map(A.bin),r[I]={...C.exportTo({},{compatibilityMode:!1}),linkType:A.linkType.toLowerCase(),resolution:ng.stringifyLocator(A),checksum:this.storedChecksums.get(A.locatorHash),conditions:A.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. +`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Xf.xfs.existsSync(t)){let n=await Xf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=H9n(n);let a=(0,G9n.parseSyml)(n);if(a.__metadata){let o=a.__metadata.version,l=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${A})`);let I=ng.parseLocator(f.resolution,!0),C=new L9n.Manifest;C.load(f,{yamlCompatibilityMode:!0});let b=C.version,E=C.languageName||r,N=f.linkType.toUpperCase(),B=f.conditions??null,F=C.dependencies,Q=C.peerDependencies,X=C.dependenciesMeta,ae=C.peerDependenciesMeta,ne=C.bin;if(f.checksum!=null){let fe=typeof l<"u"&&!f.checksum.includes("/")?`${l}/${f.checksum}`:f.checksum;this.storedChecksums.set(I.locatorHash,fe)}let ce={...I,version:b,languageName:E,linkType:N,conditions:B,dependencies:F,peerDependencies:Q,dependenciesMeta:X,peerDependenciesMeta:ae,bin:ne};this.originalPackages.set(ce.locatorHash,ce);for(let fe of A.split(aMo)){let ue=ng.parseDescriptor(fe);o<=6&&(ue=this.configuration.normalizeDependency(ue),ue=ng.makeDescriptor(ue,ue.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(ue.descriptorHash,ue),this.storedResolutions.set(ue.descriptorHash,I.locatorHash)}}}else n.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,Xdr.default)(4),n=async(a,o)=>{if(t.has(o))return a;t.add(o);let l=new rMo.Workspace(o,{project:this});await r(()=>l.setup());let A=a.then(()=>{this.addWorkspace(l)});return Array.from(l.workspacesCwds).reduce(n,A)};await n(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${ng.prettyIdent(this.configuration,t.anchoredLocator)}: ${XAt.npath.fromPortablePath(t.cwd)} conflicts with ${XAt.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Xf.ppath.isAbsolute(t)||(t=Xf.ppath.resolve(this.cwd,t)),t=Xf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let n of this.workspaces)Xf.ppath.relative(n.cwd,t).startsWith("../")||r&&r.cwd.length>=n.cwd.length||(r=n);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${ng.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(JAt.WorkspaceResolver.protocol)){let n=t.range.slice(JAt.WorkspaceResolver.protocol.length);if(n!=="^"&&n!=="~"&&n!=="*"&&!UAt.validRange(n))return this.tryWorkspaceByCwd(n)}let r=this.tryWorkspaceByIdent(t);return r===null||(ng.isVirtualDescriptor(t)&&(t=ng.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${ng.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(ng.isVirtualLocator(t)&&(t=ng.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${ng.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let n=new Set(this.storedResolutions.values());typeof r<"u"&&!n.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,n]of this.storedResolutions)n===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[n,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(n)}for(let n of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(n,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(n.locatorHash);let o=r.get(n.locatorHash);if(o){r.delete(n.locatorHash);for(let l of o)this.deleteDescriptor(l)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,n]of t.dependencies)ng.isVirtualDescriptor(n)&&t.dependencies.set(r,ng.devirtualizeDescriptor(n))}getDependencyMeta(t,r){let n={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(ng.stringifyIdent(t));if(!o)return n;let l=o.get(null);if(l&&Object.assign(n,l),r===null||!z5o.default.valid(r))return n;for(let[A,f]of o)A!==null&&A===r&&Object.assign(n,f);return n}async findLocatorForLocation(t,{strict:r=!1}={}){let n=new W9n.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:n};for(let l of a){let A=await l.findPackageLocator(t,o);if(A){if(r&&(await l.findPackageLocation(A,o)).replace(M9n,"")!==t.replace(M9n,""))continue;return A}}return null}async loadUserConfig(){let t=Xf.ppath.join(this.cwd,".pnp.cjs");await Xf.xfs.existsPromise(t)&&m_.dynamicRequire(t).setup();let r=Xf.ppath.join(this.cwd,"yarn.config.cjs");return await Xf.xfs.existsPromise(r)?m_.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:n}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[l,A]of o.dependencies){let f=await this.configuration.reduceHook(C=>C.reduceDependency,A,this,o,A,{resolver:r,resolveOptions:n});if(!ng.areIdentsEqual(A,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let I=r.bindDescriptor(f,o,n);o.dependencies.set(l,I)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),n=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new $5o.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let l=t.lockfileOnly?[new tMo.RunInstallPleaseResolver(a)]:[o,a],A=new V9n.MultiResolver([new eMo.LockfileResolver(a),...l]),f=new V9n.MultiResolver([...l]),I=this.configuration.makeFetcher(),C=t.lockfileOnly?{project:this,report:t.report,resolver:A}:{project:this,report:t.report,resolver:A,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:I,cacheOptions:{mirrorWriteOnly:!0}}},b=new Map,E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,X=this.topLevelWorkspace.anchoredLocator,ae=new Set,ne=[],ce=iMo.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Foe.Report.progressViaTitle(),async je=>{let St=async er=>{let vt=await m_.prettifyAsyncErrors(async()=>await A.resolve(er,C),Xt=>`${ng.prettyLocator(this.configuration,er)}: ${Xt}`);if(!ng.areLocatorsEqual(er,vt))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${ng.prettyLocator(this.configuration,er)} to ${ng.prettyLocator(this.configuration,vt)})`);B.set(vt.locatorHash,vt),!r.delete(vt.locatorHash)&&!this.tryWorkspaceByLocator(vt)&&n.push(vt);let Zr=await this.preparePackage(vt,{resolver:A,resolveOptions:C}),qt=m_.allSettledSafe([...Zr.dependencies.values()].map(Xt=>Nr(Xt)));return ne.push(qt),qt.catch(()=>{}),E.set(Zr.locatorHash,Zr),Zr},At=async er=>{let vt=F.get(er.locatorHash);if(typeof vt<"u")return vt;let xt=Promise.resolve().then(()=>St(er));return F.set(er.locatorHash,xt),xt},Yt=async(er,vt)=>{let xt=await Nr(vt);return b.set(er.descriptorHash,er),N.set(er.descriptorHash,xt.locatorHash),xt},Tr=async er=>{je.setTitle(ng.prettyDescriptor(this.configuration,er));let vt=this.resolutionAliases.get(er.descriptorHash);if(typeof vt<"u")return Yt(er,this.storedDescriptors.get(vt));let xt=A.getResolutionDependencies(er,C),Zr=Object.fromEntries(await m_.allSettledSafe(Object.entries(xt).map(async([lr,cr])=>{let Ar=A.bindDescriptor(cr,X,C),qr=await Nr(Ar);return ae.add(qr.locatorHash),[lr,qr]}))),Xt=(await m_.prettifyAsyncErrors(async()=>await A.getCandidates(er,Zr,C),lr=>`${ng.prettyDescriptor(this.configuration,er)}: ${lr}`))[0];if(typeof Xt>"u")throw new Foe.ReportError(Jb.MessageName.RESOLUTION_FAILED,`${ng.prettyDescriptor(this.configuration,er)}: No candidates found`);if(t.checkResolutions){let{locators:lr}=await f.getSatisfying(er,Zr,[Xt],{...C,resolver:f});if(!lr.find(cr=>cr.locatorHash===Xt.locatorHash))throw new Foe.ReportError(Jb.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${ng.prettyResolution(this.configuration,er,Xt)}`)}return b.set(er.descriptorHash,er),N.set(er.descriptorHash,Xt.locatorHash),At(Xt)},Nr=er=>{let vt=Q.get(er.descriptorHash);if(typeof vt<"u")return vt;b.set(er.descriptorHash,er);let xt=Promise.resolve().then(()=>Tr(er));return Q.set(er.descriptorHash,xt),xt};for(let er of this.workspaces){let vt=er.anchoredDescriptor;ne.push(Nr(vt))}for(;ne.length>0;){let er=[...ne];ne.length=0,await m_.allSettledSafe(er)}});let ue=m_.mapAndFilter(r.values(),je=>this.tryWorkspaceByLocator(je)?m_.mapAndFilter.skip:je);if(n.length>0||ue.length>0){let je=new Set(this.workspaces.flatMap(er=>{let vt=E.get(er.anchoredLocator.locatorHash);if(!vt)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(vt.dependencies.values(),xt=>{let Zr=N.get(xt.descriptorHash);if(!Zr)throw new Error("Assertion failed: The resolution should have been registered");return Zr})})),St=er=>je.has(er.locatorHash)?"0":"1",At=er=>ng.stringifyLocator(er),Yt=m_.sortMap(n,[St,At]),Tr=m_.sortMap(ue,[St,At]),Nr=t.report.getRecommendedLength();Yt.length>0&&t.report.reportInfo(Jb.MessageName.UPDATED_RESOLUTION_RECORD,`${qp.pretty(this.configuration,"+",qp.Type.ADDED)} ${qp.prettyTruncatedLocatorList(this.configuration,Yt,Nr)}`),Tr.length>0&&t.report.reportInfo(Jb.MessageName.UPDATED_RESOLUTION_RECORD,`${qp.pretty(this.configuration,"-",qp.Type.REMOVED)} ${qp.prettyTruncatedLocatorList(this.configuration,Tr,Nr)}`)}let de=new Set(this.resolutionAliases.values()),be=new Set(E.keys()),Se=new Set,De=new Map,k=[],et=new Map;gMo({project:this,accessibleLocators:Se,volatileDescriptors:de,optionalBuilds:be,peerRequirements:De,peerWarnings:k,peerRequirementNodes:et,allDescriptors:b,allResolutions:N,allPackages:E});for(let je of ae)be.delete(je);for(let je of de)b.delete(je),N.delete(je);let ct=new Set,Me=new Set;for(let je of E.values())je.conditions!=null&&be.has(je.locatorHash)&&(ng.isPackageCompatible(je,fe)||(ng.isPackageCompatible(je,ce)&&t.report.reportWarningOnce(Jb.MessageName.GHOST_ARCHITECTURE,`${ng.prettyLocator(this.configuration,je)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${qp.pretty(this.configuration,"supportedArchitectures",qp.Type.SETTING)} setting`),Me.add(je.locatorHash)),ct.add(je.locatorHash));this.storedResolutions=N,this.storedDescriptors=b,this.storedPackages=E,this.accessibleLocators=Se,this.conditionalLocators=ct,this.disabledLocators=Me,this.originalPackages=B,this.optionalBuilds=be,this.peerRequirements=De,this.peerWarnings=k,this.peerRequirementNodes=et}async fetchEverything({cache:t,report:r,fetcher:n,mode:a,persistProject:o=!0}){let l={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},A=n||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:A,report:r,cacheOptions:l},I=Array.from(new Set(m_.sortMap(this.storedResolutions.values(),[B=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");return ng.stringifyLocator(F)}])));a===Lve.UpdateLockfile&&(I=I.filter(B=>!this.storedChecksums.has(B)));let C=!1,b=Foe.Report.progressViaCounter(I.length);await r.reportProgress(b);let E=(0,Xdr.default)(cMo);if(await m_.allSettledSafe(I.map(B=>E(async()=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");if(ng.isVirtualLocator(F))return;let Q;try{Q=await A.fetch(F,f)}catch(X){X.message=`${ng.prettyLocator(this.configuration,F)}: ${X.message}`,r.reportExceptionOnce(X),C=X;return}Q.checksum!=null?this.storedChecksums.set(F.locatorHash,Q.checksum):this.storedChecksums.delete(F.locatorHash),Q.releaseFs&&Q.releaseFs()}).finally(()=>{b.tick()}))),C)throw C;let N=o&&a!==Lve.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||N){let F=(await Promise.all([...r.cacheMisses].map(async ue=>{let de=this.storedPackages.get(ue),be=this.storedChecksums.get(ue)??null,Se=t.getLocatorPath(de,be);return(await Xf.xfs.statPromise(Se)).size}))).reduce((ue,de)=>ue+de,0)-(N?.size??0),Q=r.cacheMisses.size,X=N?.count??0,ae=`${m_.plural(Q,{zero:"No new packages",one:"A package was",more:`${qp.pretty(this.configuration,Q,qp.Type.NUMBER)} packages were`})} added to the project`,ne=`${m_.plural(X,{zero:"none were",one:"one was",more:`${qp.pretty(this.configuration,X,qp.Type.NUMBER)} were`})} removed`,ce=F!==0?` (${qp.pretty(this.configuration,F,qp.Type.SIZE_DIFF)})`:"",fe=X>0?Q>0?`${ae}, and ${ne}${ce}.`:`${ae}, but ${ne}${ce}.`:`${ae}${ce}.`;r.reportInfo(Jb.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:n,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},l=n||this.configuration.makeFetcher(),A={checksums:this.storedChecksums,project:this,cache:t,fetcher:l,report:r,cacheOptions:o},f=this.configuration.getLinkers(),I={project:this,report:r},C=new Map(f.map(ct=>{let Me=ct.makeInstaller(I),je=ct.getCustomDataKey(),St=this.linkersCustomData.get(je);return typeof St<"u"&&Me.attachCustomData(St),[ct,Me]})),b=new Map,E=new Map,N=new Map,B=new Map(await m_.allSettledSafe([...this.accessibleLocators].map(async ct=>{let Me=this.storedPackages.get(ct);if(!Me)throw new Error("Assertion failed: The locator should have been registered");return[ct,await l.fetch(Me,A)]}))),F=[],Q=new Set,X=[];for(let ct of this.accessibleLocators){let Me=this.storedPackages.get(ct);if(typeof Me>"u")throw new Error("Assertion failed: The locator should have been registered");let je=B.get(Me.locatorHash);if(typeof je>"u")throw new Error("Assertion failed: The fetch result should have been registered");let St=[],At=Tr=>{St.push(Tr)},Yt=this.tryWorkspaceByLocator(Me);if(Yt!==null){let Tr=[],{scripts:Nr}=Yt.manifest;for(let vt of["preinstall","install","postinstall"])Nr.has(vt)&&Tr.push({type:K5e.BuildDirectiveType.SCRIPT,script:vt});try{for(let[vt,xt]of C)if(vt.supportsPackage(Me,I)&&(await xt.installPackage(Me,je,{holdFetchResult:At})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{St.length===0?je.releaseFs?.():F.push(m_.allSettledSafe(St).catch(()=>{}).then(()=>{je.releaseFs?.()}))}let er=Xf.ppath.join(je.packageFs.getRealPath(),je.prefixPath);E.set(Me.locatorHash,er),!ng.isVirtualLocator(Me)&&Tr.length>0&&N.set(Me.locatorHash,{buildDirectives:Tr,buildLocations:[er]})}else{let Tr=f.find(vt=>vt.supportsPackage(Me,I));if(!Tr)throw new Foe.ReportError(Jb.MessageName.LINKER_NOT_FOUND,`${ng.prettyLocator(this.configuration,Me)} isn't supported by any available linker`);let Nr=C.get(Tr);if(!Nr)throw new Error("Assertion failed: The installer should have been registered");let er;try{er=await Nr.installPackage(Me,je,{holdFetchResult:At})}finally{St.length===0?je.releaseFs?.():F.push(m_.allSettledSafe(St).then(()=>{}).then(()=>{je.releaseFs?.()}))}b.set(Me.locatorHash,Tr),E.set(Me.locatorHash,er.packageLocation),er.buildRequest&&er.packageLocation&&(er.buildRequest.skipped?(Q.add(Me.locatorHash),this.skippedBuilds.has(Me.locatorHash)||X.push([Me,er.buildRequest.explain])):N.set(Me.locatorHash,{buildDirectives:er.buildRequest.directives,buildLocations:[er.packageLocation]}))}}let ae=new Map;for(let ct of this.accessibleLocators){let Me=this.storedPackages.get(ct);if(!Me)throw new Error("Assertion failed: The locator should have been registered");let je=this.tryWorkspaceByLocator(Me)!==null,St=async(At,Yt)=>{let Tr=E.get(Me.locatorHash);if(typeof Tr>"u")throw new Error(`Assertion failed: The package (${ng.prettyLocator(this.configuration,Me)}) should have been registered`);let Nr=[];for(let er of Me.dependencies.values()){let vt=this.storedResolutions.get(er.descriptorHash);if(typeof vt>"u")throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,er)}, from ${ng.prettyLocator(this.configuration,Me)})should have been registered`);let xt=this.storedPackages.get(vt);if(typeof xt>"u")throw new Error(`Assertion failed: The package (${vt}, resolved from ${ng.prettyDescriptor(this.configuration,er)}) should have been registered`);let Zr=this.tryWorkspaceByLocator(xt)===null?b.get(vt):null;if(typeof Zr>"u")throw new Error(`Assertion failed: The package (${vt}, resolved from ${ng.prettyDescriptor(this.configuration,er)}) should have been registered`);Zr===At||Zr===null?E.get(xt.locatorHash)!==null&&Nr.push([er,xt]):!je&&Tr!==null&&m_.getArrayWithDefault(ae,vt).push(Tr)}Tr!==null&&await Yt.attachInternalDependencies(Me,Nr)};if(je)for(let[At,Yt]of C)At.supportsPackage(Me,I)&&await St(At,Yt);else{let At=b.get(Me.locatorHash);if(!At)throw new Error("Assertion failed: The linker should have been found");let Yt=C.get(At);if(!Yt)throw new Error("Assertion failed: The installer should have been registered");await St(At,Yt)}}for(let[ct,Me]of ae){let je=this.storedPackages.get(ct);if(!je)throw new Error("Assertion failed: The package should have been registered");let St=b.get(je.locatorHash);if(!St)throw new Error("Assertion failed: The linker should have been found");let At=C.get(St);if(!At)throw new Error("Assertion failed: The installer should have been registered");await At.attachExternalDependents(je,Me)}let ne=new Map;for(let[ct,Me]of C){let je=await Me.finalizeInstall();for(let St of je?.records??[])St.buildRequest.skipped?(Q.add(St.locator.locatorHash),this.skippedBuilds.has(St.locator.locatorHash)||X.push([St.locator,St.buildRequest.explain])):N.set(St.locator.locatorHash,{buildDirectives:St.buildRequest.directives,buildLocations:St.buildLocations});typeof je?.customData<"u"&&ne.set(ct.getCustomDataKey(),je.customData)}if(this.linkersCustomData=ne,await m_.allSettledSafe(F),a===Lve.SkipBuild)return;for(let[,ct]of m_.sortMap(X,([Me])=>ng.stringifyLocator(Me)))ct(r);let ce=new Set(N.keys()),fe=(0,Ydr.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(ct=>ct.globalHashGeneration,this,ct=>{fe.update("\0"),fe.update(ct)});let ue=fe.digest("hex"),de=new Map,be=ct=>{let Me=de.get(ct.locatorHash);if(typeof Me<"u")return Me;let je=this.storedPackages.get(ct.locatorHash);if(typeof je>"u")throw new Error("Assertion failed: The package should have been registered");let St=(0,Ydr.createHash)("sha512");St.update(ct.locatorHash),de.set(ct.locatorHash,"");for(let At of je.dependencies.values()){let Yt=this.storedResolutions.get(At.descriptorHash);if(typeof Yt>"u")throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,At)}) should have been registered`);let Tr=this.storedPackages.get(Yt);if(typeof Tr>"u")throw new Error("Assertion failed: The package should have been registered");St.update(be(Tr))}return Me=St.digest("hex"),de.set(ct.locatorHash,Me),Me},Se=(ct,Me)=>{let je=(0,Ydr.createHash)("sha512");je.update(ue),je.update(be(ct));for(let St of Me)je.update(St);return je.digest("hex")},De=new Map,k=!1,et=ct=>{let Me=new Set([ct.locatorHash]);for(let je of Me){let St=this.storedPackages.get(je);if(!St)throw new Error("Assertion failed: The package should have been registered");for(let At of St.dependencies.values()){let Yt=this.storedResolutions.get(At.descriptorHash);if(!Yt)throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,At)}) should have been registered`);if(Yt!==ct.locatorHash&&ce.has(Yt))return!1;let Tr=this.storedPackages.get(Yt);if(!Tr)throw new Error("Assertion failed: The package should have been registered");let Nr=this.tryWorkspaceByLocator(Tr);if(Nr){if(Nr.anchoredLocator.locatorHash!==ct.locatorHash&&ce.has(Nr.anchoredLocator.locatorHash))return!1;Me.add(Nr.anchoredLocator.locatorHash)}Me.add(Yt)}}return!0};for(;ce.size>0;){let ct=ce.size,Me=[];for(let je of ce){let St=this.storedPackages.get(je);if(!St)throw new Error("Assertion failed: The package should have been registered");if(!et(St))continue;let At=N.get(St.locatorHash);if(!At)throw new Error("Assertion failed: The build directive should have been registered");let Yt=Se(St,At.buildLocations);if(this.storedBuildState.get(St.locatorHash)===Yt){De.set(St.locatorHash,Yt),ce.delete(je);continue}k||(await this.persistInstallStateFile(),k=!0),this.storedBuildState.has(St.locatorHash)?r.reportInfo(Jb.MessageName.MUST_REBUILD,`${ng.prettyLocator(this.configuration,St)} must be rebuilt because its dependency tree changed`):r.reportInfo(Jb.MessageName.MUST_BUILD,`${ng.prettyLocator(this.configuration,St)} must be built because it never has been before or the last one failed`);let Tr=At.buildLocations.map(async Nr=>{if(!Xf.ppath.isAbsolute(Nr))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Nr})`);for(let er of At.buildDirectives){let vt=`# This file contains the result of Yarn building a package (${ng.stringifyLocator(St)}) +`;switch(er.type){case K5e.BuildDirectiveType.SCRIPT:vt+=`# Script name: ${er.script} +`;break;case K5e.BuildDirectiveType.SHELLCODE:vt+=`# Script code: ${er.script} +`;break}let xt=null;if(!await Xf.xfs.mktempPromise(async qt=>{let Xt=Xf.ppath.join(qt,"build.log"),{stdout:lr,stderr:cr}=this.configuration.getSubprocessStreams(Xt,{header:vt,prefix:ng.prettyLocator(this.configuration,St),report:r}),Ar;try{switch(er.type){case K5e.BuildDirectiveType.SCRIPT:Ar=await O9n.executePackageScript(St,er.script,[],{cwd:Nr,project:this,stdin:xt,stdout:lr,stderr:cr});break;case K5e.BuildDirectiveType.SHELLCODE:Ar=await O9n.executePackageShellcode(St,er.script,[],{cwd:Nr,project:this,stdin:xt,stdout:lr,stderr:cr});break}}catch(ke){cr.write(ke.stack),Ar=1}if(lr.end(),cr.end(),Ar===0)return!0;Xf.xfs.detachTemp(qt);let qr=`${ng.prettyLocator(this.configuration,St)} couldn't be built successfully (exit code ${qp.pretty(this.configuration,Ar,qp.Type.NUMBER)}, logs can be found here: ${qp.pretty(this.configuration,Xt,qp.Type.PATH)})`,_n=this.optionalBuilds.has(St.locatorHash);return _n?r.reportInfo(Jb.MessageName.BUILD_FAILED,qr):r.reportError(Jb.MessageName.BUILD_FAILED,qr),P9n.SUPPORTS_GROUPS&&r.reportFold(XAt.npath.fromPortablePath(Xt),Xf.xfs.readFileSync(Xt,"utf8")),_n}))return!1}return!0});Me.push(...Tr,Promise.allSettled(Tr).then(Nr=>{ce.delete(je),Nr.every(er=>er.status==="fulfilled"&&er.value===!0)&&De.set(St.locatorHash,Yt)}))}if(await m_.allSettledSafe(Me),ct===ce.size){let je=Array.from(ce).map(St=>{let At=this.storedPackages.get(St);if(!At)throw new Error("Assertion failed: The package should have been registered");return ng.prettyLocator(this.configuration,At)}).join(", ");r.reportError(Jb.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${je})`);break}}this.storedBuildState=De,this.skippedBuilds=Q}async installWithNewReport(t,r){return(await P9n.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");U5e.Configuration.telemetry?.reportInstall(r);let n=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(Jb.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(C=>C.validateProject,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),n=!0}})}),n)return;let a=await this.configuration.getPackageExtensions();for(let C of a.values())for(let[,b]of C)for(let E of b)E.status=QAt.PackageExtensionStatus.Inactive;let o=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),l=null;if(t.immutable)try{l=await Xf.xfs.readFilePromise(o,"utf8")}catch(C){throw C.code==="ENOENT"?new Foe.ReportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):C}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{dMo(this,t.report);for(let[,C]of a)for(let[,b]of C)for(let E of b)if(E.userProvided){let N=qp.pretty(this.configuration,E,qp.Type.PACKAGE_EXTENSION);switch(E.status){case QAt.PackageExtensionStatus.Inactive:t.report.reportWarning(Jb.MessageName.UNUSED_PACKAGE_EXTENSION,`${N}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case QAt.PackageExtensionStatus.Redundant:t.report.reportWarning(Jb.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${N}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(l!==null){let C=(0,Xf.normalizeLineEndings)(l,this.generateLockfile());if(C!==l){let b=(0,j5o.structuredPatch)(o,o,l,C,void 0,void 0,{maxEditLength:100});if(b){t.report.reportSeparator();for(let E of b.hunks){t.report.reportInfo(null,`@@ -${E.oldStart},${E.oldLines} +${E.newStart},${E.newLines} @@`);for(let N of E.lines)N.startsWith("+")?t.report.reportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,qp.pretty(this.configuration,N,qp.Type.ADDED)):N.startsWith("-")?t.report.reportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,qp.pretty(this.configuration,N,qp.Type.REMOVED)):t.report.reportInfo(null,qp.pretty(this.configuration,N,"grey"))}t.report.reportSeparator()}throw new Foe.ReportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let C of a.values())for(let[,b]of C)for(let E of b)E.userProvided&&E.status===QAt.PackageExtensionStatus.Active&&U5e.Configuration.telemetry?.reportPackageExtension(qp.json(E,qp.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let A=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(A.map(async C=>r8.checksumPattern(C,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===Lve.UpdateLockfile){t.report.reportWarning(Jb.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${qp.pretty(this.configuration,"mode=update-lockfile",qp.Type.CODE)}`);return}await this.linkEverything(t);let C=await Promise.all(A.map(async b=>r8.checksumPattern(b,{cwd:this.cwd})));for(let b=0;b{await this.configuration.triggerHook(C=>C.validateProjectAfterInstall,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),I=!0}})}),!I&&await this.configuration.triggerHook(C=>C.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,l]of this.storedResolutions.entries()){let A=t.get(l);A||t.set(l,A=new Set),A.add(o)}let r={},{cacheKey:n}=q5o.Cache.getCacheKey(this.configuration);r.__metadata={version:fM.LOCKFILE_VERSION,cacheKey:n};for(let[o,l]of t.entries()){let A=this.originalPackages.get(o);if(!A)continue;let f=[];for(let b of l){let E=this.storedDescriptors.get(b);if(!E)throw new Error("Assertion failed: The descriptor should have been registered");f.push(E)}let I=f.map(b=>ng.stringifyDescriptor(b)).sort().join(", "),C=new L9n.Manifest;C.version=A.linkType===sMo.LinkType.HARD?A.version:"0.0.0-use.local",C.languageName=A.languageName,C.dependencies=new Map(A.dependencies),C.peerDependencies=new Map(A.peerDependencies),C.dependenciesMeta=new Map(A.dependenciesMeta),C.peerDependenciesMeta=new Map(A.peerDependenciesMeta),C.bin=new Map(A.bin),r[I]={...C.exportTo({},{compatibilityMode:!1}),linkType:A.linkType.toLowerCase(),resolution:ng.stringifyLocator(A),checksum:this.storedChecksums.get(A.locatorHash),conditions:A.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. `,`# Manual changes might be lost - proceed with caution! `].join("")} -`+(0,w9n.stringifySyml)(r)}async persistLockfile(){let t=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),r="";try{r=await Xf.xfs.readFilePromise(t,"utf8")}catch{}let n=this.generateLockfile(),a=(0,Xf.normalizeLineEndings)(r,n);a!==r&&(await Xf.xfs.writeFilePromise(t,a),this.lockFileChecksum=Z9n(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let l of Object.values(Hdr))t.push(...l);let r=(0,Odr.pick)(this,t),n=R9n.default.serialize(r),a=r8.makeHash(n);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Xf.xfs.mkdirPromise(Xf.ppath.dirname(o),{recursive:!0}),await Xf.xfs.writeFilePromise(o,await J5o(n)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:n=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let l=await U5o(await Xf.xfs.readFilePromise(a));o=R9n.default.deserialize(l),this.installStateChecksum=r8.makeHash(l)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),n&&Object.assign(this,(0,Odr.pick)(o,Hdr.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,Odr.pick)(o,Hdr.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new x9n.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,Mdr.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let n=new Set([".gitignore"]);if(!(0,O5o.isFolderInside)(t.cwd,this.cwd)||!await Xf.xfs.existsPromise(t.cwd))return null;let a=[];for(let l of await Xf.xfs.readdirPromise(t.cwd)){if(n.has(l))continue;let A=Xf.ppath.resolve(t.cwd,l);t.markedFiles.has(A)||(t.immutable?r.reportError(Jb.MessageName.IMMUTABLE_CACHE,`${qp.pretty(this.configuration,Xf.ppath.basename(A),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Xf.xfs.lstatPromise(A).then(async f=>(await Xf.xfs.removePromise(A),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((l,A)=>l+A,0)}}};fM.Project=Ydr;function K5o({project:e,allDescriptors:t,allResolutions:r,allPackages:n,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:l=new Map,peerWarnings:A=[],peerRequirementNodes:f=new Map,volatileDescriptors:I=new Set}){let C=new Map,b=[],E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,X=new Map(e.workspaces.map(ue=>{let de=ue.anchoredLocator.locatorHash,be=n.get(de);if(typeof be>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[de,ng.copyPackage(be)]})),ae=()=>{let ue=Xf.xfs.mktempSync(),de=Xf.ppath.join(ue,"stacktrace.log"),be=String(b.length+1).length,Se=b.map((De,k)=>`${`${k+1}.`.padStart(be," ")} ${ng.stringifyLocator(De)} -`).join("");throw Xf.xfs.writeFileSync(de,Se),Xf.xfs.detachTemp(ue),new Goe.ReportError(Jb.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${YAt.npath.fromPortablePath(de)}`)},ne=ue=>{let de=r.get(ue.descriptorHash);if(typeof de>"u")throw new Error("Assertion failed: The resolution should have been registered");let be=n.get(de);if(!be)throw new Error("Assertion failed: The package could not be found");return be},ce=(ue,de,be,{top:Se,optional:De})=>{b.length>1e3&&ae(),b.push(de);let k=fe(ue,de,be,{top:Se,optional:De});return b.pop(),k},fe=(ue,de,be,{top:Se,optional:De})=>{if(De||o.delete(de.locatorHash),a.has(de.locatorHash))return;a.add(de.locatorHash);let k=n.get(de.locatorHash);if(!k)throw new Error(`Assertion failed: The package (${ng.prettyLocator(e.configuration,de)}) should have been registered`);let et=new Set,ct=new Map,Me=[],je=[],St=[],At=[];for(let Yt of Array.from(k.dependencies.values())){if(k.peerDependencies.has(Yt.identHash)&&k.locatorHash!==Se)continue;if(ng.isVirtualDescriptor(Yt))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");I.delete(Yt.descriptorHash);let Tr=De;if(!Tr){let Xt=k.dependenciesMeta.get(ng.stringifyIdent(Yt));if(typeof Xt<"u"){let lr=Xt.get(null);typeof lr<"u"&&lr.optional&&(Tr=!0)}}let Nr=r.get(Yt.descriptorHash);if(!Nr)throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(e.configuration,Yt)}) should have been registered`);let er=X.get(Nr)||n.get(Nr);if(!er)throw new Error(`Assertion failed: The package (${Nr}, resolved from ${ng.prettyDescriptor(e.configuration,Yt)}) should have been registered`);if(er.peerDependencies.size===0){ce(Yt,er,new Map,{top:Se,optional:Tr});continue}let vt,xt,Zr=new Set,qt=new Map;Me.push(()=>{vt=ng.virtualizeDescriptor(Yt,de.locatorHash),xt=ng.virtualizePackage(er,de.locatorHash),k.dependencies.set(Yt.identHash,vt),r.set(vt.descriptorHash,xt.locatorHash),t.set(vt.descriptorHash,vt),n.set(xt.locatorHash,xt),m_.getSetWithDefault(F,xt.locatorHash).add(vt.descriptorHash),et.add(xt.locatorHash)}),je.push(()=>{Q.set(xt.locatorHash,qt);for(let Xt of xt.peerDependencies.values()){let cr=m_.getFactoryWithDefault(ct,Xt.identHash,()=>{let Ar=be.get(Xt.identHash)??null,qr=k.dependencies.get(Xt.identHash);return!qr&&ng.areIdentsEqual(de,Xt)&&(ue.identHash===de.identHash?qr=ue:(qr=ng.makeDescriptor(de,ue.range),t.set(qr.descriptorHash,qr),r.set(qr.descriptorHash,de.locatorHash),I.delete(qr.descriptorHash),Ar=null)),qr||(qr=ng.makeDescriptor(Xt,"missing:")),{subject:de,ident:Xt,provided:qr,root:!Ar,requests:new Map,hash:`p${r8.makeHash(de.locatorHash,Xt.identHash).slice(0,6)}`}}).provided;if(cr.range==="missing:"&&xt.dependencies.has(Xt.identHash)){xt.peerDependencies.delete(Xt.identHash);continue}if(qt.set(Xt.identHash,{requester:xt,descriptor:Xt,meta:xt.peerDependenciesMeta.get(ng.stringifyIdent(Xt)),children:new Map}),xt.dependencies.set(Xt.identHash,cr),ng.isVirtualDescriptor(cr)){let Ar=r.get(cr.descriptorHash);m_.getSetWithDefault(B,Ar).add(xt.locatorHash)}E.set(cr.identHash,cr),cr.range==="missing:"&&Zr.add(cr.identHash)}xt.dependencies=new Map(m_.sortMap(xt.dependencies,([Xt,lr])=>ng.stringifyIdent(lr)))}),St.push(()=>{if(!n.has(xt.locatorHash))return;let Xt=C.get(er.locatorHash);typeof Xt=="number"&&Xt>=2&&ae();let lr=C.get(er.locatorHash),cr=typeof lr<"u"?lr+1:1;C.set(er.locatorHash,cr),ce(vt,xt,qt,{top:Se,optional:Tr}),C.set(er.locatorHash,cr-1)}),At.push(()=>{let Xt=r.get(vt.descriptorHash);if(typeof Xt>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let lr=Q.get(Xt);if(typeof lr>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let cr of ct.values()){let Ar=lr.get(cr.ident.identHash);Ar&&(cr.requests.set(vt.descriptorHash,Ar),f.set(cr.hash,cr),cr.root||be.get(cr.ident.identHash)?.children.set(vt.descriptorHash,Ar))}if(n.has(xt.locatorHash))for(let cr of Zr)xt.dependencies.delete(cr)})}for(let Yt of[...Me,...je])Yt();for(let Yt of et){et.delete(Yt);let Tr=n.get(Yt),Nr=r8.makeHash(ng.devirtualizeLocator(Tr).locatorHash,...Array.from(Tr.dependencies.values(),Zr=>{let qt=Zr.range!=="missing:"?r.get(Zr.descriptorHash):"missing:";if(typeof qt>"u")throw new Error(`Assertion failed: Expected the resolution for ${ng.prettyDescriptor(e.configuration,Zr)} to have been registered`);return qt===Se?`${qt} (top)`:qt})),er=N.get(Nr);if(typeof er>"u"){N.set(Nr,Tr);continue}let vt=m_.getSetWithDefault(F,er.locatorHash);for(let Zr of F.get(Tr.locatorHash)??[])r.set(Zr,er.locatorHash),vt.add(Zr);n.delete(Tr.locatorHash),a.delete(Tr.locatorHash),et.delete(Tr.locatorHash);let xt=B.get(Tr.locatorHash);if(xt!==void 0){let Zr=m_.getSetWithDefault(B,er.locatorHash);for(let qt of xt)Zr.add(qt),et.add(qt)}}for(let Yt of[...St,...At])Yt()};for(let ue of e.workspaces){let de=ue.anchoredLocator;I.delete(ue.anchoredDescriptor.descriptorHash),ce(ue.anchoredDescriptor,de,new Map,{top:de.locatorHash,optional:!1})}for(let ue of f.values()){if(!ue.root)continue;let de=n.get(ue.subject.locatorHash);if(typeof de>"u")continue;for(let Se of ue.requests.values()){let De=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),Se.requester.locatorHash).slice(0,6)}`;l.set(De,{subject:ue.subject.locatorHash,requested:ue.ident,rootRequester:Se.requester.locatorHash,allRequesters:Array.from(ng.allPeerRequests(Se),k=>k.requester.locatorHash)})}let be=[...ng.allPeerRequests(ue)];if(ue.provided.range!=="missing:"){let Se=ne(ue.provided),De=Se.version??"0.0.0",k=ct=>{if(ct.startsWith(QAt.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(Se))return null;ct=ct.slice(QAt.WorkspaceResolver.protocol.length),(ct==="^"||ct==="~")&&(ct="*")}return ct},et=!0;for(let ct of be){let Me=k(ct.descriptor.range);if(Me===null){et=!1;continue}if(!XAt.satisfiesWithPrereleases(De,Me)){et=!1;let je=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),ct.requester.locatorHash).slice(0,6)}`;A.push({type:n8.NotCompatible,subject:de,requested:ue.ident,requester:ct.requester,version:De,hash:je,requirementCount:be.length})}}if(!et){let ct=be.map(Me=>k(Me.descriptor.range));A.push({type:n8.NodeNotCompatible,node:ue,range:ct.includes(null)?null:XAt.simplifyRanges(ct),hash:ue.hash})}}else{let Se=!0;for(let De of be)if(!De.meta?.optional){Se=!1;let k=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),De.requester.locatorHash).slice(0,6)}`;A.push({type:n8.NotProvided,subject:de,requested:ue.ident,requester:De.requester,hash:k})}Se||A.push({type:n8.NodeNotProvided,node:ue,hash:ue.hash})}}}function*j5o(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,n]of t){yield{request:r,root:n};for(let a of r.children.values())t.has(a)||t.set(a,n)}}function z5o(e,t){let r=[],n=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===n8.NotCompatible||o.type===n8.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===n8.NodeNotCompatible){let l=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof l>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let A=e.storedPackages.get(l);if(typeof A>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=m_.mapAndFind(j5o(o.node),({request:b,root:E})=>XAt.satisfiesWithPrereleases(A.version??"0.0.0",b.descriptor.range)?m_.mapAndFind.skip:b===E?ng.prettyIdent(e.configuration,b.requester):`${ng.prettyIdent(e.configuration,b.requester)} (via ${ng.prettyIdent(e.configuration,E.requester)})`),I=[...ng.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",C=o.range?ng.prettyRange(e.configuration,o.range):qp.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${ng.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${ng.prettyReference(e.configuration,A.version??"0.0.0")} (${qp.pretty(e.configuration,o.hash,qp.Type.CODE)}), which doesn't satisfy what ${f} ${I} (${C}).`)}if(o.type===n8.NodeNotProvided){let l=o.node.requests.size>1?" and other dependencies":"";n.push(`${ng.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${ng.prettyIdent(e.configuration,o.node.ident)} (${qp.pretty(e.configuration,o.hash,qp.Type.CODE)}), requested by ${ng.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${l}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(Jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${qp.pretty(e.configuration,"yarn explain peer-requirements ",qp.Type.CODE)} for details, where ${qp.pretty(e.configuration,"",qp.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of m_.sortMap(r,l=>qp.stripAnsi(l)))t.reportWarning(Jb.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of m_.sortMap(n,l=>qp.stripAnsi(l)))t.reportWarning(Jb.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(Jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${qp.pretty(e.configuration,"yarn explain peer-requirements",qp.Type.CODE)} for details.`)}});var M9n=H(AIe=>{"use strict";Object.defineProperty(AIe,"__esModule",{value:!0});AIe.TelemetryManager=AIe.MetricName=void 0;AIe.derive=O9n;var UAt=(Pa(),vi(Va)),i8=ro(),W9n=E5e(),q5o=UAt.__importStar(moe()),$5o=UAt.__importStar(Ygt()),JAt=UAt.__importStar(xW()),eMo=UAt.__importStar(n$()),s8;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(s8||(AIe.MetricName=s8={}));function O9n(e){let n=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),l=o+a,A=e.state.lastTips??n*864e5,f=A+864e5+8*36e5-e.timeZone,I=l<=e.timeNow,C=f<=e.timeNow,b=null;return(I||C||!e.state.lastUpdate||!e.state.lastTips)&&(b={},b.lastUpdate=I?e.timeNow:o,b.lastTips=A,b.blocks=I?{}:e.state.blocks,b.displayedTips=e.state.displayedTips),{nextState:b,triggerUpdate:I,triggerTips:C,nextTips:C?n*864e5:A}}var Qdr=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let n=this.getRegistryPath();this.isNew=!i8.xfs.existsSync(n),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),n=A=>A&&W9n.YarnVersion?eMo.satisfiesWithPrereleases(W9n.YarnVersion,A):!1,a=t.map((A,f)=>f).filter(A=>t[A]&&n(t[A]?.selector));if(a.length===0)return null;let o=a.filter(A=>!r.has(A));if(o.length===0){let A=Math.floor(a.length*.2);this.displayedTips=A>0?this.displayedTips.slice(-A):[],o=a.filter(f=>!r.has(f))}let l=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(l),this.commitTips(),t[l]}reportVersion(t){this.reportValue(s8.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(s8.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(s8.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(s8.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(s8.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(s8.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(s8.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(s8.DEPENDENCY_COUNT,String(t))}reportValue(t,r){JAt.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){JAt.getSetWithDefault(this.enumerators,t).add(q5o.makeHash(r))}reportHit(t,r="*"){let n=JAt.getMapWithDefault(this.hits,t),a=JAt.getFactoryWithDefault(n,r,()=>0);n.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return i8.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),n;try{n=i8.xfs.readJsonSync(r)}catch{n={}}let{nextState:a,triggerUpdate:o,triggerTips:l,nextTips:A}=O9n({state:n,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=A,this.displayedTips=n.displayedTips??[],a!==null)try{i8.xfs.mkdirSync(i8.ppath.dirname(r),{recursive:!0}),i8.xfs.writeJsonSync(r,a)}catch{return!1}if(l&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=n.blocks??{};if(Object.keys(f).length===0){let I=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,C=b=>$5o.post(I,b,{configuration:this.configuration}).catch(()=>{});for(let[b,E]of Object.entries(n.blocks??{})){if(Object.keys(E).length===0)continue;let N=E;N.userId=b,N.reportType="primary";for(let Q of Object.keys(N.enumerators??{}))N.enumerators[Q]=N.enumerators[Q].length;C(N);let B=new Map,F=20;for(let[Q,X]of Object.entries(N.values))X.length>0&&B.set(Q,X.slice(0,F));for(;B.size>0;){let Q={};Q.userId=b,Q.reportType="secondary",Q.metrics={};for(let[X,ae]of B)Q.metrics[X]=ae.shift(),ae.length===0&&B.delete(X);C(Q)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=i8.xfs.readJsonSync(t)}catch{r={}}let n=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[n]=a[n]??{};for(let l of this.hits.keys()){let A=o.hits=o.hits??{},f=A[l]=A[l]??{};for(let[I,C]of this.hits.get(l))f[I]=(f[I]??0)+C}for(let l of["values","enumerators"])for(let A of this[l].keys()){let f=o[l]=o[l]??{};f[A]=[...new Set([...f[A]??[],...this[l].get(A)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),i8.xfs.mkdirSync(i8.ppath.dirname(t),{recursive:!0}),i8.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};AIe.TelemetryManager=Qdr});var Sn=H(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});Rl.treeUtils=Rl.tgzUtils=Rl.structUtils=Rl.semverUtils=Rl.scriptUtils=Rl.nodeUtils=Rl.miscUtils=Rl.formatUtils=Rl.folderUtils=Rl.execUtils=Rl.httpUtils=Rl.hashUtils=Rl.PackageExtensionStatus=Rl.PackageExtensionType=Rl.LinkType=Rl.YarnVersion=Rl.Workspace=Rl.WorkspaceResolver=Rl.WorkspaceFetcher=Rl.VirtualFetcher=Rl.ThrowReport=Rl.TelemetryManager=Rl.reportOptionDeprecations=Rl.StreamReport=Rl.Report=Rl.ReportError=Rl.InstallMode=Rl.Project=Rl.PeerWarningType=Rl.LOCKFILE_VERSION=Rl.MultiFetcher=Rl.stringifyMessageName=Rl.parseMessageName=Rl.MessageName=Rl.Manifest=Rl.LockfileResolver=Rl.LightReport=Rl.LegacyMigrationResolver=Rl.BuildDirectiveType=Rl.WindowsLinkType=Rl.DurationUnit=Rl.SettingsType=Rl.FormatType=Rl.Configuration=Rl.TAG_REGEXP=Rl.LEGACY_PLUGINS=Rl.DEFAULT_RC_FILENAME=Rl.Cache=Rl.CACHE_CHECKPOINT=Rl.CACHE_VERSION=void 0;var IM=(Pa(),vi(Va)),tMo=IM.__importStar(Xgt());Rl.execUtils=tMo;var rMo=IM.__importStar(ggt());Rl.folderUtils=rMo;var nMo=IM.__importStar(rM());Rl.formatUtils=nMo;var iMo=IM.__importStar(moe());Rl.hashUtils=iMo;var sMo=IM.__importStar(Ygt());Rl.httpUtils=sMo;var oMo=IM.__importStar(xW());Rl.miscUtils=oMo;var aMo=IM.__importStar(Qgt());Rl.nodeUtils=aMo;var cMo=IM.__importStar(HAr());Rl.scriptUtils=cMo;var lMo=IM.__importStar(n$());Rl.semverUtils=lMo;var uMo=IM.__importStar(uG());Rl.structUtils=uMo;var gMo=IM.__importStar(bLn());Rl.tgzUtils=gMo;var AMo=IM.__importStar(TLn());Rl.treeUtils=AMo;var Xdr=adr();Object.defineProperty(Rl,"CACHE_VERSION",{enumerable:!0,get:function(){return Xdr.CACHE_VERSION}});Object.defineProperty(Rl,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return Xdr.CACHE_CHECKPOINT}});Object.defineProperty(Rl,"Cache",{enumerable:!0,get:function(){return Xdr.Cache}});var Jdr=f5e();Object.defineProperty(Rl,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return Jdr.DEFAULT_RC_FILENAME}});Object.defineProperty(Rl,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return Jdr.LEGACY_PLUGINS}});Object.defineProperty(Rl,"TAG_REGEXP",{enumerable:!0,get:function(){return Jdr.TAG_REGEXP}});var U5e=f5e();Object.defineProperty(Rl,"Configuration",{enumerable:!0,get:function(){return U5e.Configuration}});Object.defineProperty(Rl,"FormatType",{enumerable:!0,get:function(){return U5e.FormatType}});Object.defineProperty(Rl,"SettingsType",{enumerable:!0,get:function(){return U5e.SettingsType}});Object.defineProperty(Rl,"DurationUnit",{enumerable:!0,get:function(){return U5e.DurationUnit}});Object.defineProperty(Rl,"WindowsLinkType",{enumerable:!0,get:function(){return U5e.WindowsLinkType}});var dMo=cdr();Object.defineProperty(Rl,"BuildDirectiveType",{enumerable:!0,get:function(){return dMo.BuildDirectiveType}});var pMo=udr();Object.defineProperty(Rl,"LegacyMigrationResolver",{enumerable:!0,get:function(){return pMo.LegacyMigrationResolver}});var fMo=LLn();Object.defineProperty(Rl,"LightReport",{enumerable:!0,get:function(){return fMo.LightReport}});var IMo=ddr();Object.defineProperty(Rl,"LockfileResolver",{enumerable:!0,get:function(){return IMo.LockfileResolver}});var hMo=uve();Object.defineProperty(Rl,"Manifest",{enumerable:!0,get:function(){return hMo.Manifest}});var Udr=M9();Object.defineProperty(Rl,"MessageName",{enumerable:!0,get:function(){return Udr.MessageName}});Object.defineProperty(Rl,"parseMessageName",{enumerable:!0,get:function(){return Udr.parseMessageName}});Object.defineProperty(Rl,"stringifyMessageName",{enumerable:!0,get:function(){return Udr.stringifyMessageName}});var mMo=Cur();Object.defineProperty(Rl,"MultiFetcher",{enumerable:!0,get:function(){return mMo.MultiFetcher}});var KAt=P9n();Object.defineProperty(Rl,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return KAt.LOCKFILE_VERSION}});Object.defineProperty(Rl,"PeerWarningType",{enumerable:!0,get:function(){return KAt.PeerWarningType}});Object.defineProperty(Rl,"Project",{enumerable:!0,get:function(){return KAt.Project}});Object.defineProperty(Rl,"InstallMode",{enumerable:!0,get:function(){return KAt.InstallMode}});var H9n=sM();Object.defineProperty(Rl,"ReportError",{enumerable:!0,get:function(){return H9n.ReportError}});Object.defineProperty(Rl,"Report",{enumerable:!0,get:function(){return H9n.Report}});var Y9n=S5e();Object.defineProperty(Rl,"StreamReport",{enumerable:!0,get:function(){return Y9n.StreamReport}});Object.defineProperty(Rl,"reportOptionDeprecations",{enumerable:!0,get:function(){return Y9n.reportOptionDeprecations}});var CMo=M9n();Object.defineProperty(Rl,"TelemetryManager",{enumerable:!0,get:function(){return CMo.TelemetryManager}});var _Mo=Ldr();Object.defineProperty(Rl,"ThrowReport",{enumerable:!0,get:function(){return _Mo.ThrowReport}});var yMo=vur();Object.defineProperty(Rl,"VirtualFetcher",{enumerable:!0,get:function(){return yMo.VirtualFetcher}});var bMo=wur();Object.defineProperty(Rl,"WorkspaceFetcher",{enumerable:!0,get:function(){return bMo.WorkspaceFetcher}});var EMo=Kfe();Object.defineProperty(Rl,"WorkspaceResolver",{enumerable:!0,get:function(){return EMo.WorkspaceResolver}});var SMo=Pdr();Object.defineProperty(Rl,"Workspace",{enumerable:!0,get:function(){return SMo.Workspace}});var vMo=E5e();Object.defineProperty(Rl,"YarnVersion",{enumerable:!0,get:function(){return vMo.YarnVersion}});var Kdr=Qfe();Object.defineProperty(Rl,"LinkType",{enumerable:!0,get:function(){return Kdr.LinkType}});Object.defineProperty(Rl,"PackageExtensionType",{enumerable:!0,get:function(){return Kdr.PackageExtensionType}});Object.defineProperty(Rl,"PackageExtensionStatus",{enumerable:!0,get:function(){return Kdr.PackageExtensionStatus}})});var zdr=H(jAt=>{"use strict";Object.defineProperty(jAt,"__esModule",{value:!0});jAt.WorkspaceRequiredError=void 0;var BMo=Sn(),Q9n=ro(),wMo=($c(),vi(rg)),jdr=class extends wMo.UsageError{constructor(t,r){let n=Q9n.ppath.relative(t,r),a=Q9n.ppath.join(t,BMo.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${n} isn't a workspace of ${a}).`)}};jAt.WorkspaceRequiredError=jdr});var qdr=H(zAt=>{"use strict";Object.defineProperty(zAt,"__esModule",{value:!0});zAt.getDynamicLibs=void 0;var d$=(Pa(),vi(Va)),TMo=d$.__importStar(el()),RMo=d$.__importStar(Sn()),NMo=d$.__importStar(ro()),DMo=d$.__importStar(zK()),kMo=d$.__importStar(TW()),xMo=d$.__importStar(C5e()),GMo=d$.__importStar(($c(),vi(rg))),FMo=d$.__importStar(UC()),ZMo=d$.__importStar((CZ(),vi(mZ))),LMo=()=>new Map([["@yarnpkg/cli",TMo],["@yarnpkg/core",RMo],["@yarnpkg/fslib",NMo],["@yarnpkg/libzip",DMo],["@yarnpkg/parsers",kMo],["@yarnpkg/shell",xMo],["clipanion",GMo],["semver",FMo],["typanion",ZMo]]);zAt.getDynamicLibs=LMo});var $dr=H((j7l,VMo)=>{VMo.exports={name:"@yarnpkg/cli",version:"4.14.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.7.0","@yarnpkg/fslib":"^3.1.5","@yarnpkg/libzip":"^3.2.2","@yarnpkg/parsers":"^3.0.3","@yarnpkg/plugin-catalog":"^1.0.2","@yarnpkg/plugin-compat":"^4.0.12","@yarnpkg/plugin-constraints":"^4.0.5","@yarnpkg/plugin-dlx":"^4.0.2","@yarnpkg/plugin-essentials":"^4.5.0","@yarnpkg/plugin-exec":"^3.1.0","@yarnpkg/plugin-file":"^3.0.2","@yarnpkg/plugin-git":"^3.2.0","@yarnpkg/plugin-github":"^3.0.2","@yarnpkg/plugin-http":"^3.0.3","@yarnpkg/plugin-init":"^4.1.2","@yarnpkg/plugin-interactive-tools":"^4.1.0","@yarnpkg/plugin-jsr":"^1.1.1","@yarnpkg/plugin-link":"^3.0.2","@yarnpkg/plugin-nm":"^4.0.8","@yarnpkg/plugin-npm":"^3.5.0","@yarnpkg/plugin-npm-cli":"^4.4.1","@yarnpkg/plugin-pack":"^4.0.4","@yarnpkg/plugin-patch":"^4.0.3","@yarnpkg/plugin-pnp":"^4.1.5","@yarnpkg/plugin-pnpm":"^2.1.2","@yarnpkg/plugin-stage":"^4.0.2","@yarnpkg/plugin-typescript":"^4.1.3","@yarnpkg/plugin-version":"^4.2.0","@yarnpkg/plugin-workspace-tools":"^4.1.7","@yarnpkg/shell":"^4.1.3","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.3","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.6"},peerDependencies:{"@yarnpkg/core":"^4.7.0"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"git+https://github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var tpr=H(epr=>{"use strict";Object.defineProperty(epr,"__esModule",{value:!0});epr.getPluginConfiguration=MMo;var PMo=(Pa(),vi(Va)),WMo=PMo.__importDefault($dr()),OMo=qdr();function MMo(){let e=new Set;for(let r of WMo.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,OMo.getDynamicLibs)();for(let r of e)t.set(r,wt(r).default);return{plugins:e,modules:t}}});var X9n=H(rpr=>{"use strict";Object.defineProperty(rpr,"__esModule",{value:!0});rpr.openWorkspace=QMo;var HMo=Sn(),YMo=zdr();async function QMo(e,t){let{project:r,workspace:n}=await HMo.Project.find(e,t);if(!n)throw new YMo.WorkspaceRequiredError(r.cwd,t);return n}});var npr=H(qAt=>{"use strict";Object.defineProperty(qAt,"__esModule",{value:!0});qAt.pluginCommands=void 0;qAt.pluginCommands=new Map([])});var j9n=H($At=>{"use strict";Object.defineProperty($At,"__esModule",{value:!0});$At.getCli=tHo;$At.runExit=rHo;var p$=Sn(),IX=ro(),XMo=wt("child_process"),JMo=Nfe(),Lve=($c(),vi(rg)),UMo=npr(),KMo=tpr();function J9n({cwd:e,pluginConfiguration:t}){let r=new Lve.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:p$.YarnVersion??""});return Object.assign(r,{defaultContext:{...Lve.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function jMo(e){if(p$.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,n=">=18.12.0";if(p$.semverUtils.satisfiesWithPrereleases(r,n))return!0;let a=new Lve.UsageError(`This tool requires a Node version compatible with ${n} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return Lve.Cli.defaultContext.stdout.write(e.error(a)),!1}async function U9n({selfPath:e,pluginConfiguration:t}){return await p$.Configuration.find(IX.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function zMo(e,t,{yarnPath:r}){if(!IX.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let n={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,XMo.execFileSync)(process.execPath,[IX.npath.fromPortablePath(r),...t],n)}catch(a){return a.status??1}return 0}function qMo(e,t){let r=null,n=t;return t.length>=2&&t[0]==="--cwd"?(r=IX.npath.toPortablePath(t[1]),n=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=IX.npath.toPortablePath(t[0].slice(6)),n=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=IX.npath.toPortablePath(t[t.length-1]),n=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?IX.ppath.resolve(r):IX.ppath.cwd(),n}function $Mo(e,{configuration:t}){if(!t.get("enableTelemetry")||JMo.isCI||!process.stdout.isTTY)return;p$.Configuration.telemetry=new p$.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let n=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())UMo.pluginCommands.has(a.match(n)?.[1]??"")&&p$.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&p$.Configuration.telemetry.reportVersion(e.binaryVersion)}function K9n(e,{configuration:t}){for(let r of t.plugins.values())for(let n of r.commands||[])e.register(n)}async function eHo(e,t,{selfPath:r,pluginConfiguration:n}){if(!jMo(e))return 1;let a=await U9n({selfPath:r,pluginConfiguration:n}),o=a.get("yarnPath"),l=a.get("ignorePath");if(o&&!l)return zMo(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let A=qMo(e,t);$Mo(e,{configuration:a}),K9n(e,{configuration:a});let f=e.process(A,e.defaultContext);return f.help||p$.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function tHo({cwd:e=IX.ppath.cwd(),pluginConfiguration:t=(0,KMo.getPluginConfiguration)()}={}){let r=J9n({cwd:e,pluginConfiguration:t}),n=await U9n({pluginConfiguration:t,selfPath:null});return K9n(r,{configuration:n}),r}async function rHo(e,{cwd:t=IX.ppath.cwd(),selfPath:r,pluginConfiguration:n}){let a=J9n({cwd:t,pluginConfiguration:n});function o(){Lve.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. -Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await eHo(a,e,{selfPath:r,pluginConfiguration:n})}catch(l){Lve.Cli.defaultContext.stdout.write(a.error(l)),process.exitCode=1}finally{process.off("beforeExit",o),await IX.xfs.rmtempPromise()}}});var el=H(jN=>{"use strict";Object.defineProperty(jN,"__esModule",{value:!0});jN.pluginCommands=jN.runExit=jN.getCli=jN.openWorkspace=jN.getPluginConfiguration=jN.getDynamicLibs=jN.WorkspaceRequiredError=jN.BaseCommand=void 0;var nHo=ebn();Object.defineProperty(jN,"BaseCommand",{enumerable:!0,get:function(){return nHo.BaseCommand}});var iHo=zdr();Object.defineProperty(jN,"WorkspaceRequiredError",{enumerable:!0,get:function(){return iHo.WorkspaceRequiredError}});var sHo=qdr();Object.defineProperty(jN,"getDynamicLibs",{enumerable:!0,get:function(){return sHo.getDynamicLibs}});var oHo=tpr();Object.defineProperty(jN,"getPluginConfiguration",{enumerable:!0,get:function(){return oHo.getPluginConfiguration}});var aHo=X9n();Object.defineProperty(jN,"openWorkspace",{enumerable:!0,get:function(){return aHo.openWorkspace}});var z9n=j9n();Object.defineProperty(jN,"getCli",{enumerable:!0,get:function(){return z9n.getCli}});Object.defineProperty(jN,"runExit",{enumerable:!0,get:function(){return z9n.runExit}});var cHo=npr();Object.defineProperty(jN,"pluginCommands",{enumerable:!0,get:function(){return cHo.pluginCommands}})});var AVn=H((Izl,gVn)=>{"use strict";var cVn=wt("stream").PassThrough,lVn=wt("stream").Writable,uVn=wt("util");uVn.inherits(cpr,cVn);uVn.inherits(lpr,lVn);function cpr(e,t){cVn.call(this,t),this.factory=e,this.opts=t}cpr.prototype._flush=function(e){var t=this.factory();t.pipe(new lpr(this,this.opts)).on("finish",e),t.resume()};function lpr(e,t){lVn.call(this,t),this.target=e}lpr.prototype._write=function(e,t,r){this.target.push(e),r()};function apr(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new cpr(r,t)}apr.obj=function(e,t){return t=t||{},t.objectMode=!0,apr(e,t)};gVn.exports=apr});var fVn=bc(()=>{});function gpr(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function pHo(e,t){if(!e)return IVn;let r=gpr(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function fHo(e,t){if(!e)return IVn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${gpr(e,"|")})([\\w-]*\\d+)`,r)}function IHo(e){if(!e)return/()(.+)/gi;let t=gpr(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function hVn(e={}){let t=pHo(e.noteKeywords,e.notesPattern),r=fHo(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=IHo(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}var IVn,mVn=bc(()=>{IVn=/(?!.*)/});function z5e(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` -`;)n--;return e.substring(r,n+1)}function pIe(e,t){return e?`${e} -${t||""}`:t||""}function CVn(e){return e?t=>!t.startsWith(e):()=>!0}function _Vn(e){let t=e.indexOf(hHo);return t===-1?e:e.slice(0,t)}function yVn(e){return!e.match(/^\s*gpg:/)}var hHo,bVn=bc(()=>{hHo="# ------------------------ >8 ------------------------"});var EVn,SVn=bc(()=>{EVn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function Apr(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var q5e,dpr=bc(()=>{mVn();bVn();SVn();q5e=class{options;regexes;lines=[];lineIndex=0;commit=Apr();constructor(t={}){this.options={...EVn,...t},this.regexes=hVn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[l]=o[A+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:n}=this,a=n.headerCorrespondence||[],o=this.nextLine(),l=null;o&&(n.breakingHeaderPattern&&(l=o.match(n.breakingHeaderPattern)),!l&&n.headerPattern&&(l=o.match(n.headerPattern))),o&&(r.header=o),l&&a.forEach((A,f)=>{r[A]=l[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let n,a=null,o=!1;for(;this.isLineAvailable();){if(n=this.currentLine().match(t.fieldPattern),n){a=n[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=pIe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let n=this.currentLine().match(t.notes),a=[];if(n){let o={title:n[1],text:n[2]};for(r.notes.push(o),r.footer=pIe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=pIe(o.text,this.currentLine()),r.footer=pIe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let n=this.parseReferences(this.currentLine()),a=!n.length&&t;return a?r.body=pIe(r.body,this.currentLine()):(r.references.push(...n),r.footer=pIe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let n=t.header.match(r.breakingHeaderPattern);n&&t.notes.push({title:"BREAKING CHANGE",text:n[3]})}parseMentions(t){let{commit:r,regexes:n}=this,a;for(;a=n.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:n}=this,a=n.revertCorrespondence||[],o=n.revertPattern?t.match(n.revertPattern):null;o&&(r.revert=a.reduce((l,A,f)=>(l[A]=o[f+1]||null,l),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=z5e(t.body)),t.footer&&(t.footer=z5e(t.footer)),t.notes.forEach(r=>{r.text=z5e(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=CVn(this.options.commentChar),n=z5e(t).split(/\r?\n/),a=_Vn(n).filter(f=>r(f)&&yVn(f)),o=Apr();this.lines=a,this.lineIndex=0,this.commit=o;let l=this.parseMerge();this.parseHeader(l),o.header&&(o.references=this.parseReferences(o.header));let A=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(A=!1),this.parseBodyAndFooter(A)||(A=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as mHo}from"stream";function vVn(e={}){let t=e.warn,r=t===!0?n=>{throw n}:t?n=>t(n.toString()):()=>{};return async function*(a){let o=new q5e(e),l;for await(l of a)try{yield o.parse(l.toString())}catch(A){r(A)}}}function ppr(e={}){return mHo.from(vVn(e))}var BVn=bc(()=>{dpr()});var wVn={};sI(wVn,{CommitParser:()=>q5e,createCommitObject:()=>Apr,parseCommits:()=>vVn,parseCommitsStream:()=>ppr});var fpr=bc(()=>{fVn();dpr();BVn()});function CHo(e,t){let r,n;for(let a in t)if(r=e[a],n=t[a],typeof r=="string"&&(r=r.trim()),typeof n=="string"&&(n=n.trim()),r!==n)return!1;return!0}function TVn(e,t){if(!t.size)return null;let r=e.raw||e;for(let n of t)if(n.revert&&CHo(r,n.revert))return n;return null}var RVn=bc(()=>{});var Pve,Ipr=bc(()=>{RVn();Pve=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,n=TVn(t,r);if(n){r.delete(n),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as _Ho}from"stream";async function*NVn(e){let t=new Pve;for await(let r of e)yield*t.process(r);yield*t.flush()}function*hpr(e){let t=new Pve;for(let r of e)yield*t.process(r);yield*t.flush()}function yHo(){return _Ho.from(NVn)}var DVn=bc(()=>{Ipr()});var kVn={};sI(kVn,{RevertedCommitsFilter:()=>Pve,filterRevertedCommits:()=>NVn,filterRevertedCommitsStream:()=>yHo,filterRevertedCommitsSync:()=>hpr});var mpr=bc(()=>{Ipr();DVn()});var NZ=H(LW=>{"use strict";LW.__esModule=!0;LW.extend=WVn;LW.indexOf=DHo;LW.escapeExpression=kHo;LW.isEmpty=xHo;LW.createFrame=GHo;LW.blockParams=FHo;LW.appendContextPath=ZHo;var wHo={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},THo=/[&<>"'`=]/g,RHo=/[&<>"'`=]/;function NHo(e){return wHo[e]}function WVn(e){for(var t=1;t{"use strict";idt.__esModule=!0;var bpr=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function Epr(e,t){var r=t&&t.loc,n=void 0,a=void 0,o=void 0,l=void 0;r&&(n=r.start.line,a=r.end.line,o=r.start.column,l=r.end.column,e+=" - "+n+":"+o);for(var A=Error.prototype.constructor.call(this,e),f=0;f{"use strict";sdt.__esModule=!0;var Spr=NZ();sdt.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var n=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return n(this);if(Spr.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):n(this);if(r.data&&r.ids){var o=Spr.createFrame(r.data);o.contextPath=Spr.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};HVn.exports=sdt.default});var XVn=H((odt,QVn)=>{"use strict";odt.__esModule=!0;function LHo(e){return e&&e.__esModule?e:{default:e}}var tMe=NZ(),VHo=hM(),PHo=LHo(VHo);odt.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new PHo.default("Must pass iterator to #each");var n=r.fn,a=r.inverse,o=0,l="",A=void 0,f=void 0;r.data&&r.ids&&(f=tMe.appendContextPath(r.data.contextPath,r.ids[0])+"."),tMe.isFunction(t)&&(t=t.call(this)),r.data&&(A=tMe.createFrame(r.data));function I(B,F,Q){A&&(A.key=B,A.index=F,A.first=F===0,A.last=!!Q,f&&(A.contextPath=f+B)),l=l+n(t[B],{data:A,blockParams:tMe.blockParams([t[B],B],[f+B,null])})}if(t&&typeof t=="object")if(tMe.isArray(t))for(var C=t.length;o{"use strict";adt.__esModule=!0;function WHo(e){return e&&e.__esModule?e:{default:e}}var OHo=hM(),MHo=WHo(OHo);adt.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new MHo.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};JVn.exports=adt.default});var qVn=H((cdt,zVn)=>{"use strict";cdt.__esModule=!0;function HHo(e){return e&&e.__esModule?e:{default:e}}var KVn=NZ(),YHo=hM(),jVn=HHo(YHo);cdt.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new jVn.default("#if requires exactly one argument");return KVn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||KVn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new jVn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};zVn.exports=cdt.default});var ePn=H((ldt,$Vn)=>{"use strict";ldt.__esModule=!0;ldt.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";udt.__esModule=!0;udt.default=function(e){e.registerHelper("lookup",function(t,r,n){return t&&n.lookupProperty(t,r)})};tPn.exports=udt.default});var iPn=H((gdt,nPn)=>{"use strict";gdt.__esModule=!0;function QHo(e){return e&&e.__esModule?e:{default:e}}var rMe=NZ(),XHo=hM(),JHo=QHo(XHo);gdt.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new JHo.default("#with requires exactly one argument");rMe.isFunction(t)&&(t=t.call(this));var n=r.fn;if(rMe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=rMe.createFrame(r.data),a.contextPath=rMe.appendContextPath(r.data.contextPath,r.ids[0])),n(t,{data:a,blockParams:rMe.blockParams([t],[a&&a.contextPath])})})};nPn.exports=gdt.default});var vpr=H(Adt=>{"use strict";Adt.__esModule=!0;Adt.registerDefaultHelpers=cYo;Adt.moveHelperToHooks=lYo;function fIe(e){return e&&e.__esModule?e:{default:e}}var UHo=YVn(),KHo=fIe(UHo),jHo=XVn(),zHo=fIe(jHo),qHo=UVn(),$Ho=fIe(qHo),eYo=qVn(),tYo=fIe(eYo),rYo=ePn(),nYo=fIe(rYo),iYo=rPn(),sYo=fIe(iYo),oYo=iPn(),aYo=fIe(oYo);function cYo(e){KHo.default(e),zHo.default(e),$Ho.default(e),tYo.default(e),nYo.default(e),sYo.default(e),aYo.default(e)}function lYo(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var oPn=H((ddt,sPn)=>{"use strict";ddt.__esModule=!0;var uYo=NZ();ddt.default=function(e){e.registerDecorator("inline",function(t,r,n,a){var o=t;return r.partials||(r.partials={},o=function(l,A){var f=n.partials;n.partials=uYo.extend({},f,r.partials);var I=t(l,A);return n.partials=f,I}),r.partials[a.args[0]]=a.fn,o})};sPn.exports=ddt.default});var aPn=H(Bpr=>{"use strict";Bpr.__esModule=!0;Bpr.registerDefaultDecorators=pYo;function gYo(e){return e&&e.__esModule?e:{default:e}}var AYo=oPn(),dYo=gYo(AYo);function pYo(e){dYo.default(e)}});var wpr=H((pdt,cPn)=>{"use strict";pdt.__esModule=!0;var fYo=NZ(),Wve={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=fYo.indexOf(Wve.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=Wve.lookupLevel(t),typeof console<"u"&&Wve.lookupLevel(Wve.level)<=t){var r=Wve.methodMap[t];console[r]||(r="log");for(var n=arguments.length,a=Array(n>1?n-1:0),o=1;o{"use strict";Tpr.__esModule=!0;Tpr.createNewLookupObject=hYo;var IYo=NZ();function hYo(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";nMe.__esModule=!0;nMe.createProtoAccessControl=yYo;nMe.resultIsAllowed=bYo;nMe.resetLoggedProperties=SYo;function mYo(e){return e&&e.__esModule?e:{default:e}}var uPn=lPn(),CYo=wpr(),_Yo=mYo(CYo),fdt=Object.create(null);function yYo(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:uPn.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:uPn.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function bYo(e,t,r){return gPn(typeof e=="function"?t.methods:t.properties,r)}function gPn(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(EYo(t),!1)}function EYo(e){fdt[e]!==!0&&(fdt[e]=!0,_Yo.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. +`+(0,G9n.stringifySyml)(r)}async persistLockfile(){let t=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),r="";try{r=await Xf.xfs.readFilePromise(t,"utf8")}catch{}let n=this.generateLockfile(),a=(0,Xf.normalizeLineEndings)(r,n);a!==r&&(await Xf.xfs.writeFilePromise(t,a),this.lockFileChecksum=H9n(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let l of Object.values(Jdr))t.push(...l);let r=(0,Qdr.pick)(this,t),n=Z9n.default.serialize(r),a=r8.makeHash(n);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Xf.xfs.mkdirPromise(Xf.ppath.dirname(o),{recursive:!0}),await Xf.xfs.writeFilePromise(o,await lMo(n)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:n=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let l=await uMo(await Xf.xfs.readFilePromise(a));o=Z9n.default.deserialize(l),this.installStateChecksum=r8.makeHash(l)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),n&&Object.assign(this,(0,Qdr.pick)(o,Jdr.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,Qdr.pick)(o,Jdr.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new W9n.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,Xdr.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let n=new Set([".gitignore"]);if(!(0,nMo.isFolderInside)(t.cwd,this.cwd)||!await Xf.xfs.existsPromise(t.cwd))return null;let a=[];for(let l of await Xf.xfs.readdirPromise(t.cwd)){if(n.has(l))continue;let A=Xf.ppath.resolve(t.cwd,l);t.markedFiles.has(A)||(t.immutable?r.reportError(Jb.MessageName.IMMUTABLE_CACHE,`${qp.pretty(this.configuration,Xf.ppath.basename(A),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Xf.xfs.lstatPromise(A).then(async f=>(await Xf.xfs.removePromise(A),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((l,A)=>l+A,0)}}};fM.Project=Udr;function gMo({project:e,allDescriptors:t,allResolutions:r,allPackages:n,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:l=new Map,peerWarnings:A=[],peerRequirementNodes:f=new Map,volatileDescriptors:I=new Set}){let C=new Map,b=[],E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,X=new Map(e.workspaces.map(ue=>{let de=ue.anchoredLocator.locatorHash,be=n.get(de);if(typeof be>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[de,ng.copyPackage(be)]})),ae=()=>{let ue=Xf.xfs.mktempSync(),de=Xf.ppath.join(ue,"stacktrace.log"),be=String(b.length+1).length,Se=b.map((De,k)=>`${`${k+1}.`.padStart(be," ")} ${ng.stringifyLocator(De)} +`).join("");throw Xf.xfs.writeFileSync(de,Se),Xf.xfs.detachTemp(ue),new Foe.ReportError(Jb.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${XAt.npath.fromPortablePath(de)}`)},ne=ue=>{let de=r.get(ue.descriptorHash);if(typeof de>"u")throw new Error("Assertion failed: The resolution should have been registered");let be=n.get(de);if(!be)throw new Error("Assertion failed: The package could not be found");return be},ce=(ue,de,be,{top:Se,optional:De})=>{b.length>1e3&&ae(),b.push(de);let k=fe(ue,de,be,{top:Se,optional:De});return b.pop(),k},fe=(ue,de,be,{top:Se,optional:De})=>{if(De||o.delete(de.locatorHash),a.has(de.locatorHash))return;a.add(de.locatorHash);let k=n.get(de.locatorHash);if(!k)throw new Error(`Assertion failed: The package (${ng.prettyLocator(e.configuration,de)}) should have been registered`);let et=new Set,ct=new Map,Me=[],je=[],St=[],At=[];for(let Yt of Array.from(k.dependencies.values())){if(k.peerDependencies.has(Yt.identHash)&&k.locatorHash!==Se)continue;if(ng.isVirtualDescriptor(Yt))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");I.delete(Yt.descriptorHash);let Tr=De;if(!Tr){let Xt=k.dependenciesMeta.get(ng.stringifyIdent(Yt));if(typeof Xt<"u"){let lr=Xt.get(null);typeof lr<"u"&&lr.optional&&(Tr=!0)}}let Nr=r.get(Yt.descriptorHash);if(!Nr)throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(e.configuration,Yt)}) should have been registered`);let er=X.get(Nr)||n.get(Nr);if(!er)throw new Error(`Assertion failed: The package (${Nr}, resolved from ${ng.prettyDescriptor(e.configuration,Yt)}) should have been registered`);if(er.peerDependencies.size===0){ce(Yt,er,new Map,{top:Se,optional:Tr});continue}let vt,xt,Zr=new Set,qt=new Map;Me.push(()=>{vt=ng.virtualizeDescriptor(Yt,de.locatorHash),xt=ng.virtualizePackage(er,de.locatorHash),k.dependencies.set(Yt.identHash,vt),r.set(vt.descriptorHash,xt.locatorHash),t.set(vt.descriptorHash,vt),n.set(xt.locatorHash,xt),m_.getSetWithDefault(F,xt.locatorHash).add(vt.descriptorHash),et.add(xt.locatorHash)}),je.push(()=>{Q.set(xt.locatorHash,qt);for(let Xt of xt.peerDependencies.values()){let cr=m_.getFactoryWithDefault(ct,Xt.identHash,()=>{let Ar=be.get(Xt.identHash)??null,qr=k.dependencies.get(Xt.identHash);return!qr&&ng.areIdentsEqual(de,Xt)&&(ue.identHash===de.identHash?qr=ue:(qr=ng.makeDescriptor(de,ue.range),t.set(qr.descriptorHash,qr),r.set(qr.descriptorHash,de.locatorHash),I.delete(qr.descriptorHash),Ar=null)),qr||(qr=ng.makeDescriptor(Xt,"missing:")),{subject:de,ident:Xt,provided:qr,root:!Ar,requests:new Map,hash:`p${r8.makeHash(de.locatorHash,Xt.identHash).slice(0,6)}`}}).provided;if(cr.range==="missing:"&&xt.dependencies.has(Xt.identHash)){xt.peerDependencies.delete(Xt.identHash);continue}if(qt.set(Xt.identHash,{requester:xt,descriptor:Xt,meta:xt.peerDependenciesMeta.get(ng.stringifyIdent(Xt)),children:new Map}),xt.dependencies.set(Xt.identHash,cr),ng.isVirtualDescriptor(cr)){let Ar=r.get(cr.descriptorHash);m_.getSetWithDefault(B,Ar).add(xt.locatorHash)}E.set(cr.identHash,cr),cr.range==="missing:"&&Zr.add(cr.identHash)}xt.dependencies=new Map(m_.sortMap(xt.dependencies,([Xt,lr])=>ng.stringifyIdent(lr)))}),St.push(()=>{if(!n.has(xt.locatorHash))return;let Xt=C.get(er.locatorHash);typeof Xt=="number"&&Xt>=2&&ae();let lr=C.get(er.locatorHash),cr=typeof lr<"u"?lr+1:1;C.set(er.locatorHash,cr),ce(vt,xt,qt,{top:Se,optional:Tr}),C.set(er.locatorHash,cr-1)}),At.push(()=>{let Xt=r.get(vt.descriptorHash);if(typeof Xt>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let lr=Q.get(Xt);if(typeof lr>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let cr of ct.values()){let Ar=lr.get(cr.ident.identHash);Ar&&(cr.requests.set(vt.descriptorHash,Ar),f.set(cr.hash,cr),cr.root||be.get(cr.ident.identHash)?.children.set(vt.descriptorHash,Ar))}if(n.has(xt.locatorHash))for(let cr of Zr)xt.dependencies.delete(cr)})}for(let Yt of[...Me,...je])Yt();for(let Yt of et){et.delete(Yt);let Tr=n.get(Yt),Nr=r8.makeHash(ng.devirtualizeLocator(Tr).locatorHash,...Array.from(Tr.dependencies.values(),Zr=>{let qt=Zr.range!=="missing:"?r.get(Zr.descriptorHash):"missing:";if(typeof qt>"u")throw new Error(`Assertion failed: Expected the resolution for ${ng.prettyDescriptor(e.configuration,Zr)} to have been registered`);return qt===Se?`${qt} (top)`:qt})),er=N.get(Nr);if(typeof er>"u"){N.set(Nr,Tr);continue}let vt=m_.getSetWithDefault(F,er.locatorHash);for(let Zr of F.get(Tr.locatorHash)??[])r.set(Zr,er.locatorHash),vt.add(Zr);n.delete(Tr.locatorHash),a.delete(Tr.locatorHash),et.delete(Tr.locatorHash);let xt=B.get(Tr.locatorHash);if(xt!==void 0){let Zr=m_.getSetWithDefault(B,er.locatorHash);for(let qt of xt)Zr.add(qt),et.add(qt)}}for(let Yt of[...St,...At])Yt()};for(let ue of e.workspaces){let de=ue.anchoredLocator;I.delete(ue.anchoredDescriptor.descriptorHash),ce(ue.anchoredDescriptor,de,new Map,{top:de.locatorHash,optional:!1})}for(let ue of f.values()){if(!ue.root)continue;let de=n.get(ue.subject.locatorHash);if(typeof de>"u")continue;for(let Se of ue.requests.values()){let De=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),Se.requester.locatorHash).slice(0,6)}`;l.set(De,{subject:ue.subject.locatorHash,requested:ue.ident,rootRequester:Se.requester.locatorHash,allRequesters:Array.from(ng.allPeerRequests(Se),k=>k.requester.locatorHash)})}let be=[...ng.allPeerRequests(ue)];if(ue.provided.range!=="missing:"){let Se=ne(ue.provided),De=Se.version??"0.0.0",k=ct=>{if(ct.startsWith(JAt.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(Se))return null;ct=ct.slice(JAt.WorkspaceResolver.protocol.length),(ct==="^"||ct==="~")&&(ct="*")}return ct},et=!0;for(let ct of be){let Me=k(ct.descriptor.range);if(Me===null){et=!1;continue}if(!UAt.satisfiesWithPrereleases(De,Me)){et=!1;let je=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),ct.requester.locatorHash).slice(0,6)}`;A.push({type:n8.NotCompatible,subject:de,requested:ue.ident,requester:ct.requester,version:De,hash:je,requirementCount:be.length})}}if(!et){let ct=be.map(Me=>k(Me.descriptor.range));A.push({type:n8.NodeNotCompatible,node:ue,range:ct.includes(null)?null:UAt.simplifyRanges(ct),hash:ue.hash})}}else{let Se=!0;for(let De of be)if(!De.meta?.optional){Se=!1;let k=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),De.requester.locatorHash).slice(0,6)}`;A.push({type:n8.NotProvided,subject:de,requested:ue.ident,requester:De.requester,hash:k})}Se||A.push({type:n8.NodeNotProvided,node:ue,hash:ue.hash})}}}function*AMo(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,n]of t){yield{request:r,root:n};for(let a of r.children.values())t.has(a)||t.set(a,n)}}function dMo(e,t){let r=[],n=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===n8.NotCompatible||o.type===n8.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===n8.NodeNotCompatible){let l=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof l>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let A=e.storedPackages.get(l);if(typeof A>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=m_.mapAndFind(AMo(o.node),({request:b,root:E})=>UAt.satisfiesWithPrereleases(A.version??"0.0.0",b.descriptor.range)?m_.mapAndFind.skip:b===E?ng.prettyIdent(e.configuration,b.requester):`${ng.prettyIdent(e.configuration,b.requester)} (via ${ng.prettyIdent(e.configuration,E.requester)})`),I=[...ng.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",C=o.range?ng.prettyRange(e.configuration,o.range):qp.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${ng.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${ng.prettyReference(e.configuration,A.version??"0.0.0")} (${qp.pretty(e.configuration,o.hash,qp.Type.CODE)}), which doesn't satisfy what ${f} ${I} (${C}).`)}if(o.type===n8.NodeNotProvided){let l=o.node.requests.size>1?" and other dependencies":"";n.push(`${ng.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${ng.prettyIdent(e.configuration,o.node.ident)} (${qp.pretty(e.configuration,o.hash,qp.Type.CODE)}), requested by ${ng.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${l}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(Jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${qp.pretty(e.configuration,"yarn explain peer-requirements ",qp.Type.CODE)} for details, where ${qp.pretty(e.configuration,"",qp.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of m_.sortMap(r,l=>qp.stripAnsi(l)))t.reportWarning(Jb.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of m_.sortMap(n,l=>qp.stripAnsi(l)))t.reportWarning(Jb.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(Jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${qp.pretty(e.configuration,"yarn explain peer-requirements",qp.Type.CODE)} for details.`)}});var K9n=H(dIe=>{"use strict";Object.defineProperty(dIe,"__esModule",{value:!0});dIe.TelemetryManager=dIe.MetricName=void 0;dIe.derive=U9n;var jAt=(Pa(),vi(Va)),i8=zs(),J9n=v5e(),pMo=jAt.__importStar(Coe()),fMo=jAt.__importStar(Xgt()),KAt=jAt.__importStar(xW()),IMo=jAt.__importStar(n$()),s8;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(s8||(dIe.MetricName=s8={}));function U9n(e){let n=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),l=o+a,A=e.state.lastTips??n*864e5,f=A+864e5+8*36e5-e.timeZone,I=l<=e.timeNow,C=f<=e.timeNow,b=null;return(I||C||!e.state.lastUpdate||!e.state.lastTips)&&(b={},b.lastUpdate=I?e.timeNow:o,b.lastTips=A,b.blocks=I?{}:e.state.blocks,b.displayedTips=e.state.displayedTips),{nextState:b,triggerUpdate:I,triggerTips:C,nextTips:C?n*864e5:A}}var Kdr=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let n=this.getRegistryPath();this.isNew=!i8.xfs.existsSync(n),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),n=A=>A&&J9n.YarnVersion?IMo.satisfiesWithPrereleases(J9n.YarnVersion,A):!1,a=t.map((A,f)=>f).filter(A=>t[A]&&n(t[A]?.selector));if(a.length===0)return null;let o=a.filter(A=>!r.has(A));if(o.length===0){let A=Math.floor(a.length*.2);this.displayedTips=A>0?this.displayedTips.slice(-A):[],o=a.filter(f=>!r.has(f))}let l=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(l),this.commitTips(),t[l]}reportVersion(t){this.reportValue(s8.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(s8.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(s8.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(s8.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(s8.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(s8.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(s8.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(s8.DEPENDENCY_COUNT,String(t))}reportValue(t,r){KAt.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){KAt.getSetWithDefault(this.enumerators,t).add(pMo.makeHash(r))}reportHit(t,r="*"){let n=KAt.getMapWithDefault(this.hits,t),a=KAt.getFactoryWithDefault(n,r,()=>0);n.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return i8.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),n;try{n=i8.xfs.readJsonSync(r)}catch{n={}}let{nextState:a,triggerUpdate:o,triggerTips:l,nextTips:A}=U9n({state:n,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=A,this.displayedTips=n.displayedTips??[],a!==null)try{i8.xfs.mkdirSync(i8.ppath.dirname(r),{recursive:!0}),i8.xfs.writeJsonSync(r,a)}catch{return!1}if(l&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=n.blocks??{};if(Object.keys(f).length===0){let I=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,C=b=>fMo.post(I,b,{configuration:this.configuration}).catch(()=>{});for(let[b,E]of Object.entries(n.blocks??{})){if(Object.keys(E).length===0)continue;let N=E;N.userId=b,N.reportType="primary";for(let Q of Object.keys(N.enumerators??{}))N.enumerators[Q]=N.enumerators[Q].length;C(N);let B=new Map,F=20;for(let[Q,X]of Object.entries(N.values))X.length>0&&B.set(Q,X.slice(0,F));for(;B.size>0;){let Q={};Q.userId=b,Q.reportType="secondary",Q.metrics={};for(let[X,ae]of B)Q.metrics[X]=ae.shift(),ae.length===0&&B.delete(X);C(Q)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=i8.xfs.readJsonSync(t)}catch{r={}}let n=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[n]=a[n]??{};for(let l of this.hits.keys()){let A=o.hits=o.hits??{},f=A[l]=A[l]??{};for(let[I,C]of this.hits.get(l))f[I]=(f[I]??0)+C}for(let l of["values","enumerators"])for(let A of this[l].keys()){let f=o[l]=o[l]??{};f[A]=[...new Set([...f[A]??[],...this[l].get(A)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),i8.xfs.mkdirSync(i8.ppath.dirname(t),{recursive:!0}),i8.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};dIe.TelemetryManager=Kdr});var yn=H(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});Rl.treeUtils=Rl.tgzUtils=Rl.structUtils=Rl.semverUtils=Rl.scriptUtils=Rl.nodeUtils=Rl.miscUtils=Rl.formatUtils=Rl.folderUtils=Rl.execUtils=Rl.httpUtils=Rl.hashUtils=Rl.PackageExtensionStatus=Rl.PackageExtensionType=Rl.LinkType=Rl.YarnVersion=Rl.Workspace=Rl.WorkspaceResolver=Rl.WorkspaceFetcher=Rl.VirtualFetcher=Rl.ThrowReport=Rl.TelemetryManager=Rl.reportOptionDeprecations=Rl.StreamReport=Rl.Report=Rl.ReportError=Rl.InstallMode=Rl.Project=Rl.PeerWarningType=Rl.LOCKFILE_VERSION=Rl.MultiFetcher=Rl.stringifyMessageName=Rl.parseMessageName=Rl.MessageName=Rl.Manifest=Rl.LockfileResolver=Rl.LightReport=Rl.LegacyMigrationResolver=Rl.BuildDirectiveType=Rl.WindowsLinkType=Rl.DurationUnit=Rl.SettingsType=Rl.FormatType=Rl.Configuration=Rl.TAG_REGEXP=Rl.LEGACY_PLUGINS=Rl.DEFAULT_RC_FILENAME=Rl.Cache=Rl.CACHE_CHECKPOINT=Rl.CACHE_VERSION=void 0;var IM=(Pa(),vi(Va)),hMo=IM.__importStar(Ugt());Rl.execUtils=hMo;var mMo=IM.__importStar(dgt());Rl.folderUtils=mMo;var CMo=IM.__importStar(rM());Rl.formatUtils=CMo;var _Mo=IM.__importStar(Coe());Rl.hashUtils=_Mo;var yMo=IM.__importStar(Xgt());Rl.httpUtils=yMo;var bMo=IM.__importStar(xW());Rl.miscUtils=bMo;var EMo=IM.__importStar(Jgt());Rl.nodeUtils=EMo;var SMo=IM.__importStar(JAr());Rl.scriptUtils=SMo;var vMo=IM.__importStar(n$());Rl.semverUtils=vMo;var BMo=IM.__importStar(uG());Rl.structUtils=BMo;var wMo=IM.__importStar(RLn());Rl.tgzUtils=wMo;var TMo=IM.__importStar(FLn());Rl.treeUtils=TMo;var jdr=gdr();Object.defineProperty(Rl,"CACHE_VERSION",{enumerable:!0,get:function(){return jdr.CACHE_VERSION}});Object.defineProperty(Rl,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return jdr.CACHE_CHECKPOINT}});Object.defineProperty(Rl,"Cache",{enumerable:!0,get:function(){return jdr.Cache}});var zdr=h5e();Object.defineProperty(Rl,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return zdr.DEFAULT_RC_FILENAME}});Object.defineProperty(Rl,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return zdr.LEGACY_PLUGINS}});Object.defineProperty(Rl,"TAG_REGEXP",{enumerable:!0,get:function(){return zdr.TAG_REGEXP}});var j5e=h5e();Object.defineProperty(Rl,"Configuration",{enumerable:!0,get:function(){return j5e.Configuration}});Object.defineProperty(Rl,"FormatType",{enumerable:!0,get:function(){return j5e.FormatType}});Object.defineProperty(Rl,"SettingsType",{enumerable:!0,get:function(){return j5e.SettingsType}});Object.defineProperty(Rl,"DurationUnit",{enumerable:!0,get:function(){return j5e.DurationUnit}});Object.defineProperty(Rl,"WindowsLinkType",{enumerable:!0,get:function(){return j5e.WindowsLinkType}});var RMo=Adr();Object.defineProperty(Rl,"BuildDirectiveType",{enumerable:!0,get:function(){return RMo.BuildDirectiveType}});var NMo=pdr();Object.defineProperty(Rl,"LegacyMigrationResolver",{enumerable:!0,get:function(){return NMo.LegacyMigrationResolver}});var DMo=YLn();Object.defineProperty(Rl,"LightReport",{enumerable:!0,get:function(){return DMo.LightReport}});var kMo=hdr();Object.defineProperty(Rl,"LockfileResolver",{enumerable:!0,get:function(){return kMo.LockfileResolver}});var xMo=gve();Object.defineProperty(Rl,"Manifest",{enumerable:!0,get:function(){return xMo.Manifest}});var qdr=M9();Object.defineProperty(Rl,"MessageName",{enumerable:!0,get:function(){return qdr.MessageName}});Object.defineProperty(Rl,"parseMessageName",{enumerable:!0,get:function(){return qdr.parseMessageName}});Object.defineProperty(Rl,"stringifyMessageName",{enumerable:!0,get:function(){return qdr.stringifyMessageName}});var GMo=Eur();Object.defineProperty(Rl,"MultiFetcher",{enumerable:!0,get:function(){return GMo.MultiFetcher}});var zAt=X9n();Object.defineProperty(Rl,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return zAt.LOCKFILE_VERSION}});Object.defineProperty(Rl,"PeerWarningType",{enumerable:!0,get:function(){return zAt.PeerWarningType}});Object.defineProperty(Rl,"Project",{enumerable:!0,get:function(){return zAt.Project}});Object.defineProperty(Rl,"InstallMode",{enumerable:!0,get:function(){return zAt.InstallMode}});var j9n=sM();Object.defineProperty(Rl,"ReportError",{enumerable:!0,get:function(){return j9n.ReportError}});Object.defineProperty(Rl,"Report",{enumerable:!0,get:function(){return j9n.Report}});var z9n=B5e();Object.defineProperty(Rl,"StreamReport",{enumerable:!0,get:function(){return z9n.StreamReport}});Object.defineProperty(Rl,"reportOptionDeprecations",{enumerable:!0,get:function(){return z9n.reportOptionDeprecations}});var FMo=K9n();Object.defineProperty(Rl,"TelemetryManager",{enumerable:!0,get:function(){return FMo.TelemetryManager}});var ZMo=Odr();Object.defineProperty(Rl,"ThrowReport",{enumerable:!0,get:function(){return ZMo.ThrowReport}});var LMo=Rur();Object.defineProperty(Rl,"VirtualFetcher",{enumerable:!0,get:function(){return LMo.VirtualFetcher}});var VMo=Dur();Object.defineProperty(Rl,"WorkspaceFetcher",{enumerable:!0,get:function(){return VMo.WorkspaceFetcher}});var PMo=jfe();Object.defineProperty(Rl,"WorkspaceResolver",{enumerable:!0,get:function(){return PMo.WorkspaceResolver}});var WMo=Hdr();Object.defineProperty(Rl,"Workspace",{enumerable:!0,get:function(){return WMo.Workspace}});var OMo=v5e();Object.defineProperty(Rl,"YarnVersion",{enumerable:!0,get:function(){return OMo.YarnVersion}});var $dr=Xfe();Object.defineProperty(Rl,"LinkType",{enumerable:!0,get:function(){return $dr.LinkType}});Object.defineProperty(Rl,"PackageExtensionType",{enumerable:!0,get:function(){return $dr.PackageExtensionType}});Object.defineProperty(Rl,"PackageExtensionStatus",{enumerable:!0,get:function(){return $dr.PackageExtensionStatus}})});var tpr=H(qAt=>{"use strict";Object.defineProperty(qAt,"__esModule",{value:!0});qAt.WorkspaceRequiredError=void 0;var MMo=yn(),q9n=zs(),HMo=($c(),vi(rg)),epr=class extends HMo.UsageError{constructor(t,r){let n=q9n.ppath.relative(t,r),a=q9n.ppath.join(t,MMo.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${n} isn't a workspace of ${a}).`)}};qAt.WorkspaceRequiredError=epr});var rpr=H($At=>{"use strict";Object.defineProperty($At,"__esModule",{value:!0});$At.getDynamicLibs=void 0;var d$=(Pa(),vi(Va)),YMo=d$.__importStar(el()),QMo=d$.__importStar(yn()),XMo=d$.__importStar(zs()),JMo=d$.__importStar(zK()),UMo=d$.__importStar(TW()),KMo=d$.__importStar(y5e()),jMo=d$.__importStar(($c(),vi(rg))),zMo=d$.__importStar(UC()),qMo=d$.__importStar((CZ(),vi(mZ))),$Mo=()=>new Map([["@yarnpkg/cli",YMo],["@yarnpkg/core",QMo],["@yarnpkg/fslib",XMo],["@yarnpkg/libzip",JMo],["@yarnpkg/parsers",UMo],["@yarnpkg/shell",KMo],["clipanion",jMo],["semver",zMo],["typanion",qMo]]);$At.getDynamicLibs=$Mo});var npr=H((Mzl,eHo)=>{eHo.exports={name:"@yarnpkg/cli",version:"4.14.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.7.0","@yarnpkg/fslib":"^3.1.5","@yarnpkg/libzip":"^3.2.2","@yarnpkg/parsers":"^3.0.3","@yarnpkg/plugin-catalog":"^1.0.2","@yarnpkg/plugin-compat":"^4.0.12","@yarnpkg/plugin-constraints":"^4.0.5","@yarnpkg/plugin-dlx":"^4.0.2","@yarnpkg/plugin-essentials":"^4.5.0","@yarnpkg/plugin-exec":"^3.1.0","@yarnpkg/plugin-file":"^3.0.2","@yarnpkg/plugin-git":"^3.2.0","@yarnpkg/plugin-github":"^3.0.2","@yarnpkg/plugin-http":"^3.0.3","@yarnpkg/plugin-init":"^4.1.2","@yarnpkg/plugin-interactive-tools":"^4.1.0","@yarnpkg/plugin-jsr":"^1.1.1","@yarnpkg/plugin-link":"^3.0.2","@yarnpkg/plugin-nm":"^4.0.8","@yarnpkg/plugin-npm":"^3.5.0","@yarnpkg/plugin-npm-cli":"^4.4.1","@yarnpkg/plugin-pack":"^4.0.4","@yarnpkg/plugin-patch":"^4.0.3","@yarnpkg/plugin-pnp":"^4.1.5","@yarnpkg/plugin-pnpm":"^2.1.2","@yarnpkg/plugin-stage":"^4.0.2","@yarnpkg/plugin-typescript":"^4.1.3","@yarnpkg/plugin-version":"^4.2.0","@yarnpkg/plugin-workspace-tools":"^4.1.7","@yarnpkg/shell":"^4.1.3","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.3","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.6"},peerDependencies:{"@yarnpkg/core":"^4.7.0"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"git+https://github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var spr=H(ipr=>{"use strict";Object.defineProperty(ipr,"__esModule",{value:!0});ipr.getPluginConfiguration=iHo;var tHo=(Pa(),vi(Va)),rHo=tHo.__importDefault(npr()),nHo=rpr();function iHo(){let e=new Set;for(let r of rHo.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,nHo.getDynamicLibs)();for(let r of e)t.set(r,wt(r).default);return{plugins:e,modules:t}}});var $9n=H(opr=>{"use strict";Object.defineProperty(opr,"__esModule",{value:!0});opr.openWorkspace=aHo;var sHo=yn(),oHo=tpr();async function aHo(e,t){let{project:r,workspace:n}=await sHo.Project.find(e,t);if(!n)throw new oHo.WorkspaceRequiredError(r.cwd,t);return n}});var apr=H(edt=>{"use strict";Object.defineProperty(edt,"__esModule",{value:!0});edt.pluginCommands=void 0;edt.pluginCommands=new Map([])});var nVn=H(tdt=>{"use strict";Object.defineProperty(tdt,"__esModule",{value:!0});tdt.getCli=hHo;tdt.runExit=mHo;var p$=yn(),IX=zs(),cHo=wt("child_process"),lHo=Dfe(),Vve=($c(),vi(rg)),uHo=apr(),gHo=spr();function eVn({cwd:e,pluginConfiguration:t}){let r=new Vve.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:p$.YarnVersion??""});return Object.assign(r,{defaultContext:{...Vve.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function AHo(e){if(p$.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,n=">=18.12.0";if(p$.semverUtils.satisfiesWithPrereleases(r,n))return!0;let a=new Vve.UsageError(`This tool requires a Node version compatible with ${n} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return Vve.Cli.defaultContext.stdout.write(e.error(a)),!1}async function tVn({selfPath:e,pluginConfiguration:t}){return await p$.Configuration.find(IX.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function dHo(e,t,{yarnPath:r}){if(!IX.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let n={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,cHo.execFileSync)(process.execPath,[IX.npath.fromPortablePath(r),...t],n)}catch(a){return a.status??1}return 0}function pHo(e,t){let r=null,n=t;return t.length>=2&&t[0]==="--cwd"?(r=IX.npath.toPortablePath(t[1]),n=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=IX.npath.toPortablePath(t[0].slice(6)),n=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=IX.npath.toPortablePath(t[t.length-1]),n=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?IX.ppath.resolve(r):IX.ppath.cwd(),n}function fHo(e,{configuration:t}){if(!t.get("enableTelemetry")||lHo.isCI||!process.stdout.isTTY)return;p$.Configuration.telemetry=new p$.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let n=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())uHo.pluginCommands.has(a.match(n)?.[1]??"")&&p$.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&p$.Configuration.telemetry.reportVersion(e.binaryVersion)}function rVn(e,{configuration:t}){for(let r of t.plugins.values())for(let n of r.commands||[])e.register(n)}async function IHo(e,t,{selfPath:r,pluginConfiguration:n}){if(!AHo(e))return 1;let a=await tVn({selfPath:r,pluginConfiguration:n}),o=a.get("yarnPath"),l=a.get("ignorePath");if(o&&!l)return dHo(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let A=pHo(e,t);fHo(e,{configuration:a}),rVn(e,{configuration:a});let f=e.process(A,e.defaultContext);return f.help||p$.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function hHo({cwd:e=IX.ppath.cwd(),pluginConfiguration:t=(0,gHo.getPluginConfiguration)()}={}){let r=eVn({cwd:e,pluginConfiguration:t}),n=await tVn({pluginConfiguration:t,selfPath:null});return rVn(r,{configuration:n}),r}async function mHo(e,{cwd:t=IX.ppath.cwd(),selfPath:r,pluginConfiguration:n}){let a=eVn({cwd:t,pluginConfiguration:n});function o(){Vve.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. +Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await IHo(a,e,{selfPath:r,pluginConfiguration:n})}catch(l){Vve.Cli.defaultContext.stdout.write(a.error(l)),process.exitCode=1}finally{process.off("beforeExit",o),await IX.xfs.rmtempPromise()}}});var el=H(jN=>{"use strict";Object.defineProperty(jN,"__esModule",{value:!0});jN.pluginCommands=jN.runExit=jN.getCli=jN.openWorkspace=jN.getPluginConfiguration=jN.getDynamicLibs=jN.WorkspaceRequiredError=jN.BaseCommand=void 0;var CHo=abn();Object.defineProperty(jN,"BaseCommand",{enumerable:!0,get:function(){return CHo.BaseCommand}});var _Ho=tpr();Object.defineProperty(jN,"WorkspaceRequiredError",{enumerable:!0,get:function(){return _Ho.WorkspaceRequiredError}});var yHo=rpr();Object.defineProperty(jN,"getDynamicLibs",{enumerable:!0,get:function(){return yHo.getDynamicLibs}});var bHo=spr();Object.defineProperty(jN,"getPluginConfiguration",{enumerable:!0,get:function(){return bHo.getPluginConfiguration}});var EHo=$9n();Object.defineProperty(jN,"openWorkspace",{enumerable:!0,get:function(){return EHo.openWorkspace}});var iVn=nVn();Object.defineProperty(jN,"getCli",{enumerable:!0,get:function(){return iVn.getCli}});Object.defineProperty(jN,"runExit",{enumerable:!0,get:function(){return iVn.runExit}});var SHo=apr();Object.defineProperty(jN,"pluginCommands",{enumerable:!0,get:function(){return SHo.pluginCommands}})});var CVn=H((cql,mVn)=>{"use strict";var fVn=wt("stream").PassThrough,IVn=wt("stream").Writable,hVn=wt("util");hVn.inherits(Apr,fVn);hVn.inherits(dpr,IVn);function Apr(e,t){fVn.call(this,t),this.factory=e,this.opts=t}Apr.prototype._flush=function(e){var t=this.factory();t.pipe(new dpr(this,this.opts)).on("finish",e),t.resume()};function dpr(e,t){IVn.call(this,t),this.target=e}dpr.prototype._write=function(e,t,r){this.target.push(e),r()};function gpr(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new Apr(r,t)}gpr.obj=function(e,t){return t=t||{},t.objectMode=!0,gpr(e,t)};mVn.exports=gpr});var bVn=bc(()=>{});function fpr(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function NHo(e,t){if(!e)return EVn;let r=fpr(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function DHo(e,t){if(!e)return EVn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${fpr(e,"|")})([\\w-]*\\d+)`,r)}function kHo(e){if(!e)return/()(.+)/gi;let t=fpr(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function SVn(e={}){let t=NHo(e.noteKeywords,e.notesPattern),r=DHo(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=kHo(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}var EVn,vVn=bc(()=>{EVn=/(?!.*)/});function $5e(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` +`;)n--;return e.substring(r,n+1)}function fIe(e,t){return e?`${e} +${t||""}`:t||""}function BVn(e){return e?t=>!t.startsWith(e):()=>!0}function wVn(e){let t=e.indexOf(xHo);return t===-1?e:e.slice(0,t)}function TVn(e){return!e.match(/^\s*gpg:/)}var xHo,RVn=bc(()=>{xHo="# ------------------------ >8 ------------------------"});var NVn,DVn=bc(()=>{NVn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function Ipr(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var eMe,hpr=bc(()=>{vVn();RVn();DVn();eMe=class{options;regexes;lines=[];lineIndex=0;commit=Ipr();constructor(t={}){this.options={...NVn,...t},this.regexes=SVn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[l]=o[A+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:n}=this,a=n.headerCorrespondence||[],o=this.nextLine(),l=null;o&&(n.breakingHeaderPattern&&(l=o.match(n.breakingHeaderPattern)),!l&&n.headerPattern&&(l=o.match(n.headerPattern))),o&&(r.header=o),l&&a.forEach((A,f)=>{r[A]=l[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let n,a=null,o=!1;for(;this.isLineAvailable();){if(n=this.currentLine().match(t.fieldPattern),n){a=n[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=fIe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let n=this.currentLine().match(t.notes),a=[];if(n){let o={title:n[1],text:n[2]};for(r.notes.push(o),r.footer=fIe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=fIe(o.text,this.currentLine()),r.footer=fIe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let n=this.parseReferences(this.currentLine()),a=!n.length&&t;return a?r.body=fIe(r.body,this.currentLine()):(r.references.push(...n),r.footer=fIe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let n=t.header.match(r.breakingHeaderPattern);n&&t.notes.push({title:"BREAKING CHANGE",text:n[3]})}parseMentions(t){let{commit:r,regexes:n}=this,a;for(;a=n.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:n}=this,a=n.revertCorrespondence||[],o=n.revertPattern?t.match(n.revertPattern):null;o&&(r.revert=a.reduce((l,A,f)=>(l[A]=o[f+1]||null,l),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=$5e(t.body)),t.footer&&(t.footer=$5e(t.footer)),t.notes.forEach(r=>{r.text=$5e(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=BVn(this.options.commentChar),n=$5e(t).split(/\r?\n/),a=wVn(n).filter(f=>r(f)&&TVn(f)),o=Ipr();this.lines=a,this.lineIndex=0,this.commit=o;let l=this.parseMerge();this.parseHeader(l),o.header&&(o.references=this.parseReferences(o.header));let A=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(A=!1),this.parseBodyAndFooter(A)||(A=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as GHo}from"stream";function kVn(e={}){let t=e.warn,r=t===!0?n=>{throw n}:t?n=>t(n.toString()):()=>{};return async function*(a){let o=new eMe(e),l;for await(l of a)try{yield o.parse(l.toString())}catch(A){r(A)}}}function mpr(e={}){return GHo.from(kVn(e))}var xVn=bc(()=>{hpr()});var GVn={};sI(GVn,{CommitParser:()=>eMe,createCommitObject:()=>Ipr,parseCommits:()=>kVn,parseCommitsStream:()=>mpr});var Cpr=bc(()=>{bVn();hpr();xVn()});function FHo(e,t){let r,n;for(let a in t)if(r=e[a],n=t[a],typeof r=="string"&&(r=r.trim()),typeof n=="string"&&(n=n.trim()),r!==n)return!1;return!0}function FVn(e,t){if(!t.size)return null;let r=e.raw||e;for(let n of t)if(n.revert&&FHo(r,n.revert))return n;return null}var ZVn=bc(()=>{});var Wve,_pr=bc(()=>{ZVn();Wve=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,n=FVn(t,r);if(n){r.delete(n),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as ZHo}from"stream";async function*LVn(e){let t=new Wve;for await(let r of e)yield*t.process(r);yield*t.flush()}function*ypr(e){let t=new Wve;for(let r of e)yield*t.process(r);yield*t.flush()}function LHo(){return ZHo.from(LVn)}var VVn=bc(()=>{_pr()});var PVn={};sI(PVn,{RevertedCommitsFilter:()=>Wve,filterRevertedCommits:()=>LVn,filterRevertedCommitsStream:()=>LHo,filterRevertedCommitsSync:()=>ypr});var bpr=bc(()=>{_pr();VVn()});var NZ=H(LW=>{"use strict";LW.__esModule=!0;LW.extend=JVn;LW.indexOf=JHo;LW.escapeExpression=UHo;LW.isEmpty=KHo;LW.createFrame=jHo;LW.blockParams=zHo;LW.appendContextPath=qHo;var HHo={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},YHo=/[&<>"'`=]/g,QHo=/[&<>"'`=]/;function XHo(e){return HHo[e]}function JVn(e){for(var t=1;t{"use strict";odt.__esModule=!0;var Bpr=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function wpr(e,t){var r=t&&t.loc,n=void 0,a=void 0,o=void 0,l=void 0;r&&(n=r.start.line,a=r.end.line,o=r.start.column,l=r.end.column,e+=" - "+n+":"+o);for(var A=Error.prototype.constructor.call(this,e),f=0;f{"use strict";adt.__esModule=!0;var Tpr=NZ();adt.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var n=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return n(this);if(Tpr.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):n(this);if(r.data&&r.ids){var o=Tpr.createFrame(r.data);o.contextPath=Tpr.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};jVn.exports=adt.default});var $Vn=H((cdt,qVn)=>{"use strict";cdt.__esModule=!0;function $Ho(e){return e&&e.__esModule?e:{default:e}}var nMe=NZ(),eYo=hM(),tYo=$Ho(eYo);cdt.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new tYo.default("Must pass iterator to #each");var n=r.fn,a=r.inverse,o=0,l="",A=void 0,f=void 0;r.data&&r.ids&&(f=nMe.appendContextPath(r.data.contextPath,r.ids[0])+"."),nMe.isFunction(t)&&(t=t.call(this)),r.data&&(A=nMe.createFrame(r.data));function I(B,F,Q){A&&(A.key=B,A.index=F,A.first=F===0,A.last=!!Q,f&&(A.contextPath=f+B)),l=l+n(t[B],{data:A,blockParams:nMe.blockParams([t[B],B],[f+B,null])})}if(t&&typeof t=="object")if(nMe.isArray(t))for(var C=t.length;o{"use strict";ldt.__esModule=!0;function rYo(e){return e&&e.__esModule?e:{default:e}}var nYo=hM(),iYo=rYo(nYo);ldt.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new iYo.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};ePn.exports=ldt.default});var sPn=H((udt,iPn)=>{"use strict";udt.__esModule=!0;function sYo(e){return e&&e.__esModule?e:{default:e}}var rPn=NZ(),oYo=hM(),nPn=sYo(oYo);udt.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new nPn.default("#if requires exactly one argument");return rPn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||rPn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new nPn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};iPn.exports=udt.default});var aPn=H((gdt,oPn)=>{"use strict";gdt.__esModule=!0;gdt.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";Adt.__esModule=!0;Adt.default=function(e){e.registerHelper("lookup",function(t,r,n){return t&&n.lookupProperty(t,r)})};cPn.exports=Adt.default});var gPn=H((ddt,uPn)=>{"use strict";ddt.__esModule=!0;function aYo(e){return e&&e.__esModule?e:{default:e}}var iMe=NZ(),cYo=hM(),lYo=aYo(cYo);ddt.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new lYo.default("#with requires exactly one argument");iMe.isFunction(t)&&(t=t.call(this));var n=r.fn;if(iMe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=iMe.createFrame(r.data),a.contextPath=iMe.appendContextPath(r.data.contextPath,r.ids[0])),n(t,{data:a,blockParams:iMe.blockParams([t],[a&&a.contextPath])})})};uPn.exports=ddt.default});var Rpr=H(pdt=>{"use strict";pdt.__esModule=!0;pdt.registerDefaultHelpers=SYo;pdt.moveHelperToHooks=vYo;function IIe(e){return e&&e.__esModule?e:{default:e}}var uYo=zVn(),gYo=IIe(uYo),AYo=$Vn(),dYo=IIe(AYo),pYo=tPn(),fYo=IIe(pYo),IYo=sPn(),hYo=IIe(IYo),mYo=aPn(),CYo=IIe(mYo),_Yo=lPn(),yYo=IIe(_Yo),bYo=gPn(),EYo=IIe(bYo);function SYo(e){gYo.default(e),dYo.default(e),fYo.default(e),hYo.default(e),CYo.default(e),yYo.default(e),EYo.default(e)}function vYo(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var dPn=H((fdt,APn)=>{"use strict";fdt.__esModule=!0;var BYo=NZ();fdt.default=function(e){e.registerDecorator("inline",function(t,r,n,a){var o=t;return r.partials||(r.partials={},o=function(l,A){var f=n.partials;n.partials=BYo.extend({},f,r.partials);var I=t(l,A);return n.partials=f,I}),r.partials[a.args[0]]=a.fn,o})};APn.exports=fdt.default});var pPn=H(Npr=>{"use strict";Npr.__esModule=!0;Npr.registerDefaultDecorators=NYo;function wYo(e){return e&&e.__esModule?e:{default:e}}var TYo=dPn(),RYo=wYo(TYo);function NYo(e){RYo.default(e)}});var Dpr=H((Idt,fPn)=>{"use strict";Idt.__esModule=!0;var DYo=NZ(),Ove={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=DYo.indexOf(Ove.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=Ove.lookupLevel(t),typeof console<"u"&&Ove.lookupLevel(Ove.level)<=t){var r=Ove.methodMap[t];console[r]||(r="log");for(var n=arguments.length,a=Array(n>1?n-1:0),o=1;o{"use strict";kpr.__esModule=!0;kpr.createNewLookupObject=xYo;var kYo=NZ();function xYo(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";sMe.__esModule=!0;sMe.createProtoAccessControl=LYo;sMe.resultIsAllowed=VYo;sMe.resetLoggedProperties=WYo;function GYo(e){return e&&e.__esModule?e:{default:e}}var hPn=IPn(),FYo=Dpr(),ZYo=GYo(FYo),hdt=Object.create(null);function LYo(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:hPn.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:hPn.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function VYo(e,t,r){return mPn(typeof e=="function"?t.methods:t.properties,r)}function mPn(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(PYo(t),!1)}function PYo(e){hdt[e]!==!0&&(hdt[e]=!0,ZYo.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. You can add a runtime option to disable the check or this warning: -See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function SYo(){Object.keys(fdt).forEach(function(e){delete fdt[e]})}});var hdt=H(o8=>{"use strict";o8.__esModule=!0;o8.HandlebarsEnvironment=kpr;function APn(e){return e&&e.__esModule?e:{default:e}}var IIe=NZ(),vYo=hM(),Npr=APn(vYo),BYo=vpr(),wYo=aPn(),TYo=wpr(),Idt=APn(TYo),RYo=Rpr(),NYo="4.7.8";o8.VERSION=NYo;var DYo=8;o8.COMPILER_REVISION=DYo;var kYo=7;o8.LAST_COMPATIBLE_COMPILER_REVISION=kYo;var xYo={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};o8.REVISION_CHANGES=xYo;var Dpr="[object Object]";function kpr(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},BYo.registerDefaultHelpers(this),wYo.registerDefaultDecorators(this)}kpr.prototype={constructor:kpr,logger:Idt.default,log:Idt.default.log,registerHelper:function(t,r){if(IIe.toString.call(t)===Dpr){if(r)throw new Npr.default("Arg not supported with multiple helpers");IIe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(IIe.toString.call(t)===Dpr)IIe.extend(this.partials,t);else{if(typeof r>"u")throw new Npr.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(IIe.toString.call(t)===Dpr){if(r)throw new Npr.default("Arg not supported with multiple decorators");IIe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){RYo.resetLoggedProperties()}};var GYo=Idt.default.log;o8.log=GYo;o8.createFrame=IIe.createFrame;o8.logger=Idt.default});var pPn=H((mdt,dPn)=>{"use strict";mdt.__esModule=!0;function xpr(e){this.string=e}xpr.prototype.toString=xpr.prototype.toHTML=function(){return""+this.string};mdt.default=xpr;dPn.exports=mdt.default});var fPn=H(Gpr=>{"use strict";Gpr.__esModule=!0;Gpr.wrapHelper=FYo;function FYo(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var _Pn=H(Foe=>{"use strict";Foe.__esModule=!0;Foe.checkRevision=OYo;Foe.template=MYo;Foe.wrapProgram=Cdt;Foe.resolvePartial=HYo;Foe.invokePartial=YYo;Foe.noop=mPn;function ZYo(e){return e&&e.__esModule?e:{default:e}}function LYo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var VYo=NZ(),f$=LYo(VYo),PYo=hM(),I$=ZYo(PYo),h$=hdt(),IPn=vpr(),WYo=fPn(),hPn=Rpr();function OYo(e){var t=e&&e[0]||1,r=h$.COMPILER_REVISION;if(!(t>=h$.LAST_COMPATIBLE_COMPILER_REVISION&&t<=h$.COMPILER_REVISION))if(t{"use strict";o8.__esModule=!0;o8.HandlebarsEnvironment=Zpr;function CPn(e){return e&&e.__esModule?e:{default:e}}var hIe=NZ(),OYo=hM(),Gpr=CPn(OYo),MYo=Rpr(),HYo=pPn(),YYo=Dpr(),mdt=CPn(YYo),QYo=xpr(),XYo="4.7.8";o8.VERSION=XYo;var JYo=8;o8.COMPILER_REVISION=JYo;var UYo=7;o8.LAST_COMPATIBLE_COMPILER_REVISION=UYo;var KYo={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};o8.REVISION_CHANGES=KYo;var Fpr="[object Object]";function Zpr(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},MYo.registerDefaultHelpers(this),HYo.registerDefaultDecorators(this)}Zpr.prototype={constructor:Zpr,logger:mdt.default,log:mdt.default.log,registerHelper:function(t,r){if(hIe.toString.call(t)===Fpr){if(r)throw new Gpr.default("Arg not supported with multiple helpers");hIe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(hIe.toString.call(t)===Fpr)hIe.extend(this.partials,t);else{if(typeof r>"u")throw new Gpr.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(hIe.toString.call(t)===Fpr){if(r)throw new Gpr.default("Arg not supported with multiple decorators");hIe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){QYo.resetLoggedProperties()}};var jYo=mdt.default.log;o8.log=jYo;o8.createFrame=hIe.createFrame;o8.logger=mdt.default});var yPn=H((_dt,_Pn)=>{"use strict";_dt.__esModule=!0;function Lpr(e){this.string=e}Lpr.prototype.toString=Lpr.prototype.toHTML=function(){return""+this.string};_dt.default=Lpr;_Pn.exports=_dt.default});var bPn=H(Vpr=>{"use strict";Vpr.__esModule=!0;Vpr.wrapHelper=zYo;function zYo(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var wPn=H(Zoe=>{"use strict";Zoe.__esModule=!0;Zoe.checkRevision=nQo;Zoe.template=iQo;Zoe.wrapProgram=ydt;Zoe.resolvePartial=sQo;Zoe.invokePartial=oQo;Zoe.noop=vPn;function qYo(e){return e&&e.__esModule?e:{default:e}}function $Yo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var eQo=NZ(),f$=$Yo(eQo),tQo=hM(),I$=qYo(tQo),h$=Cdt(),EPn=Rpr(),rQo=bPn(),SPn=xpr();function nQo(e){var t=e&&e[0]||1,r=h$.COMPILER_REVISION;if(!(t>=h$.LAST_COMPATIBLE_COMPILER_REVISION&&t<=h$.COMPILER_REVISION))if(t{"use strict";_dt.__esModule=!0;_dt.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};yPn.exports=_dt.default});var BPn=H((ydt,vPn)=>{"use strict";ydt.__esModule=!0;function Lpr(e){return e&&e.__esModule?e:{default:e}}function Vpr(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var UYo=hdt(),bPn=Vpr(UYo),KYo=pPn(),jYo=Lpr(KYo),zYo=hM(),qYo=Lpr(zYo),$Yo=NZ(),Zpr=Vpr($Yo),eQo=_Pn(),EPn=Vpr(eQo),tQo=Fpr(),rQo=Lpr(tQo);function SPn(){var e=new bPn.HandlebarsEnvironment;return Zpr.extend(e,bPn),e.SafeString=jYo.default,e.Exception=qYo.default,e.Utils=Zpr,e.escapeExpression=Zpr.escapeExpression,e.VM=EPn,e.template=function(t){return EPn.template(t,e)},e}var iMe=SPn();iMe.create=SPn;rQo.default(iMe);iMe.default=iMe;ydt.default=iMe;vPn.exports=ydt.default});var Ppr=H((bdt,TPn)=>{"use strict";bdt.__esModule=!0;var wPn={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!wPn.helpers.scopedId(t)&&!t.depth}}};bdt.default=wPn;TPn.exports=bdt.default});var NPn=H((Edt,RPn)=>{"use strict";Edt.__esModule=!0;var nQo=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,l,A,f,I,C){var b=I.length-1;switch(f){case 1:return I[b-1];case 2:this.$=A.prepareProgram(I[b]);break;case 3:this.$=I[b];break;case 4:this.$=I[b];break;case 5:this.$=I[b];break;case 6:this.$=I[b];break;case 7:this.$=I[b];break;case 8:this.$=I[b];break;case 9:this.$={type:"CommentStatement",value:A.stripComment(I[b]),strip:A.stripFlags(I[b],I[b]),loc:A.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:I[b],value:I[b],loc:A.locInfo(this._$)};break;case 11:this.$=A.prepareRawBlock(I[b-2],I[b-1],I[b],this._$);break;case 12:this.$={path:I[b-3],params:I[b-2],hash:I[b-1]};break;case 13:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!1,this._$);break;case 14:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!0,this._$);break;case 15:this.$={open:I[b-5],path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 16:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 17:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 18:this.$={strip:A.stripFlags(I[b-1],I[b-1]),program:I[b]};break;case 19:var E=A.prepareBlock(I[b-2],I[b-1],I[b],I[b],!1,this._$),N=A.prepareProgram([E],I[b-1].loc);N.chained=!0,this.$={strip:I[b-2].strip,program:N,chain:!0};break;case 20:this.$=I[b];break;case 21:this.$={path:I[b-1],strip:A.stripFlags(I[b-2],I[b])};break;case 22:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 23:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 24:this.$={type:"PartialStatement",name:I[b-3],params:I[b-2],hash:I[b-1],indent:"",strip:A.stripFlags(I[b-4],I[b]),loc:A.locInfo(this._$)};break;case 25:this.$=A.preparePartialBlock(I[b-2],I[b-1],I[b],this._$);break;case 26:this.$={path:I[b-3],params:I[b-2],hash:I[b-1],strip:A.stripFlags(I[b-4],I[b])};break;case 27:this.$=I[b];break;case 28:this.$=I[b];break;case 29:this.$={type:"SubExpression",path:I[b-3],params:I[b-2],hash:I[b-1],loc:A.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:I[b],loc:A.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:A.id(I[b-2]),value:I[b],loc:A.locInfo(this._$)};break;case 32:this.$=A.id(I[b-1]);break;case 33:this.$=I[b];break;case 34:this.$=I[b];break;case 35:this.$={type:"StringLiteral",value:I[b],original:I[b],loc:A.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(I[b]),original:Number(I[b]),loc:A.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:I[b]==="true",original:I[b]==="true",loc:A.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:A.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:A.locInfo(this._$)};break;case 40:this.$=I[b];break;case 41:this.$=I[b];break;case 42:this.$=A.preparePath(!0,I[b],this._$);break;case 43:this.$=A.preparePath(!1,I[b],this._$);break;case 44:I[b-2].push({part:A.id(I[b]),original:I[b],separator:I[b-1]}),this.$=I[b-2];break;case 45:this.$=[{part:A.id(I[b]),original:I[b]}];break;case 46:this.$=[];break;case 47:I[b-1].push(I[b]);break;case 48:this.$=[];break;case 49:I[b-1].push(I[b]);break;case 50:this.$=[];break;case 51:I[b-1].push(I[b]);break;case 58:this.$=[];break;case 59:I[b-1].push(I[b]);break;case 64:this.$=[];break;case 65:I[b-1].push(I[b]);break;case 70:this.$=[];break;case 71:I[b-1].push(I[b]);break;case 78:this.$=[];break;case 79:I[b-1].push(I[b]);break;case 82:this.$=[];break;case 83:I[b-1].push(I[b]);break;case 86:this.$=[];break;case 87:I[b-1].push(I[b]);break;case 90:this.$=[];break;case 91:I[b-1].push(I[b]);break;case 94:this.$=[];break;case 95:I[b-1].push(I[b]);break;case 98:this.$=[I[b]];break;case 99:I[b-1].push(I[b]);break;case 100:this.$=[I[b]];break;case 101:I[b-1].push(I[b]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,l=[0],A=[null],f=[],I=this.table,C="",b=0,E=0,N=0,B=2,F=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var Q=this.lexer.yylloc;f.push(Q);var X=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function ae(St){l.length=l.length-2*St,A.length=A.length-St,f.length=f.length-St}function ne(){var St;return St=o.lexer.lex()||1,typeof St!="number"&&(St=o.symbols_[St]||St),St}for(var ce,fe,ue,de,be,Se,De={},k,et,ct,Me;;){if(ue=l[l.length-1],this.defaultActions[ue]?de=this.defaultActions[ue]:((ce===null||typeof ce>"u")&&(ce=ne()),de=I[ue]&&I[ue][ce]),typeof de>"u"||!de.length||!de[0]){var je="";if(!N){Me=[];for(k in I[ue])this.terminals_[k]&&k>2&&Me.push("'"+this.terminals_[k]+"'");this.lexer.showPosition?je="Parse error on line "+(b+1)+`: +`)}return C}else throw new I$.default("The partial "+f.name+" could not be compiled when running in runtime-only mode")}var a={strict:function(A,f,I){if(!A||!(f in A))throw new I$.default('"'+f+'" not defined in '+A,{loc:I});return a.lookupProperty(A,f)},lookupProperty:function(A,f){var I=A[f];if(I==null||Object.prototype.hasOwnProperty.call(A,f)||SPn.resultIsAllowed(I,a.protoAccessControl,f))return I},lookup:function(A,f){for(var I=A.length,C=0;C{"use strict";bdt.__esModule=!0;bdt.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};TPn.exports=bdt.default});var xPn=H((Edt,kPn)=>{"use strict";Edt.__esModule=!0;function Opr(e){return e&&e.__esModule?e:{default:e}}function Mpr(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var uQo=Cdt(),RPn=Mpr(uQo),gQo=yPn(),AQo=Opr(gQo),dQo=hM(),pQo=Opr(dQo),fQo=NZ(),Wpr=Mpr(fQo),IQo=wPn(),NPn=Mpr(IQo),hQo=Ppr(),mQo=Opr(hQo);function DPn(){var e=new RPn.HandlebarsEnvironment;return Wpr.extend(e,RPn),e.SafeString=AQo.default,e.Exception=pQo.default,e.Utils=Wpr,e.escapeExpression=Wpr.escapeExpression,e.VM=NPn,e.template=function(t){return NPn.template(t,e)},e}var oMe=DPn();oMe.create=DPn;mQo.default(oMe);oMe.default=oMe;Edt.default=oMe;kPn.exports=Edt.default});var Hpr=H((Sdt,FPn)=>{"use strict";Sdt.__esModule=!0;var GPn={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!GPn.helpers.scopedId(t)&&!t.depth}}};Sdt.default=GPn;FPn.exports=Sdt.default});var LPn=H((vdt,ZPn)=>{"use strict";vdt.__esModule=!0;var CQo=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,l,A,f,I,C){var b=I.length-1;switch(f){case 1:return I[b-1];case 2:this.$=A.prepareProgram(I[b]);break;case 3:this.$=I[b];break;case 4:this.$=I[b];break;case 5:this.$=I[b];break;case 6:this.$=I[b];break;case 7:this.$=I[b];break;case 8:this.$=I[b];break;case 9:this.$={type:"CommentStatement",value:A.stripComment(I[b]),strip:A.stripFlags(I[b],I[b]),loc:A.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:I[b],value:I[b],loc:A.locInfo(this._$)};break;case 11:this.$=A.prepareRawBlock(I[b-2],I[b-1],I[b],this._$);break;case 12:this.$={path:I[b-3],params:I[b-2],hash:I[b-1]};break;case 13:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!1,this._$);break;case 14:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!0,this._$);break;case 15:this.$={open:I[b-5],path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 16:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 17:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 18:this.$={strip:A.stripFlags(I[b-1],I[b-1]),program:I[b]};break;case 19:var E=A.prepareBlock(I[b-2],I[b-1],I[b],I[b],!1,this._$),N=A.prepareProgram([E],I[b-1].loc);N.chained=!0,this.$={strip:I[b-2].strip,program:N,chain:!0};break;case 20:this.$=I[b];break;case 21:this.$={path:I[b-1],strip:A.stripFlags(I[b-2],I[b])};break;case 22:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 23:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 24:this.$={type:"PartialStatement",name:I[b-3],params:I[b-2],hash:I[b-1],indent:"",strip:A.stripFlags(I[b-4],I[b]),loc:A.locInfo(this._$)};break;case 25:this.$=A.preparePartialBlock(I[b-2],I[b-1],I[b],this._$);break;case 26:this.$={path:I[b-3],params:I[b-2],hash:I[b-1],strip:A.stripFlags(I[b-4],I[b])};break;case 27:this.$=I[b];break;case 28:this.$=I[b];break;case 29:this.$={type:"SubExpression",path:I[b-3],params:I[b-2],hash:I[b-1],loc:A.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:I[b],loc:A.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:A.id(I[b-2]),value:I[b],loc:A.locInfo(this._$)};break;case 32:this.$=A.id(I[b-1]);break;case 33:this.$=I[b];break;case 34:this.$=I[b];break;case 35:this.$={type:"StringLiteral",value:I[b],original:I[b],loc:A.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(I[b]),original:Number(I[b]),loc:A.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:I[b]==="true",original:I[b]==="true",loc:A.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:A.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:A.locInfo(this._$)};break;case 40:this.$=I[b];break;case 41:this.$=I[b];break;case 42:this.$=A.preparePath(!0,I[b],this._$);break;case 43:this.$=A.preparePath(!1,I[b],this._$);break;case 44:I[b-2].push({part:A.id(I[b]),original:I[b],separator:I[b-1]}),this.$=I[b-2];break;case 45:this.$=[{part:A.id(I[b]),original:I[b]}];break;case 46:this.$=[];break;case 47:I[b-1].push(I[b]);break;case 48:this.$=[];break;case 49:I[b-1].push(I[b]);break;case 50:this.$=[];break;case 51:I[b-1].push(I[b]);break;case 58:this.$=[];break;case 59:I[b-1].push(I[b]);break;case 64:this.$=[];break;case 65:I[b-1].push(I[b]);break;case 70:this.$=[];break;case 71:I[b-1].push(I[b]);break;case 78:this.$=[];break;case 79:I[b-1].push(I[b]);break;case 82:this.$=[];break;case 83:I[b-1].push(I[b]);break;case 86:this.$=[];break;case 87:I[b-1].push(I[b]);break;case 90:this.$=[];break;case 91:I[b-1].push(I[b]);break;case 94:this.$=[];break;case 95:I[b-1].push(I[b]);break;case 98:this.$=[I[b]];break;case 99:I[b-1].push(I[b]);break;case 100:this.$=[I[b]];break;case 101:I[b-1].push(I[b]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,l=[0],A=[null],f=[],I=this.table,C="",b=0,E=0,N=0,B=2,F=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var Q=this.lexer.yylloc;f.push(Q);var X=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function ae(St){l.length=l.length-2*St,A.length=A.length-St,f.length=f.length-St}function ne(){var St;return St=o.lexer.lex()||1,typeof St!="number"&&(St=o.symbols_[St]||St),St}for(var ce,fe,ue,de,be,Se,De={},k,et,ct,Me;;){if(ue=l[l.length-1],this.defaultActions[ue]?de=this.defaultActions[ue]:((ce===null||typeof ce>"u")&&(ce=ne()),de=I[ue]&&I[ue][ce]),typeof de>"u"||!de.length||!de[0]){var je="";if(!N){Me=[];for(k in I[ue])this.terminals_[k]&&k>2&&Me.push("'"+this.terminals_[k]+"'");this.lexer.showPosition?je="Parse error on line "+(b+1)+`: `+this.lexer.showPosition()+` Expecting `+Me.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":je="Parse error on line "+(b+1)+": Unexpected "+(ce==1?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(je,{text:this.lexer.match,token:this.terminals_[ce]||ce,line:this.lexer.yylineno,loc:Q,expected:Me})}}if(de[0]instanceof Array&&de.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ue+", token: "+ce);switch(de[0]){case 1:l.push(ce),A.push(this.lexer.yytext),f.push(this.lexer.yylloc),l.push(de[1]),ce=null,fe?(ce=fe,fe=null):(E=this.lexer.yyleng,C=this.lexer.yytext,b=this.lexer.yylineno,Q=this.lexer.yylloc,N>0&&N--);break;case 2:if(et=this.productions_[de[1]][1],De.$=A[A.length-et],De._$={first_line:f[f.length-(et||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(et||1)].first_column,last_column:f[f.length-1].last_column},X&&(De._$.range=[f[f.length-(et||1)].range[0],f[f.length-1].range[1]]),Se=this.performAction.call(De,C,E,b,this.yy,de[1],A,f),typeof Se<"u")return Se;et&&(l=l.slice(0,-1*et*2),A=A.slice(0,-1*et),f=f.slice(0,-1*et)),l.push(this.productions_[de[1]][0]),A.push(De.$),f.push(De._$),ct=I[l[l.length-2]][l[l.length-1]],l.push(ct);break;case 3:return!0}}return!0}},t=function(){var n={EOF:1,parseError:function(o,l){if(this.yy.parser)this.yy.parser.parseError(o,l);else throw new Error(o)},setInput:function(o){return this._input=o,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var l=o.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var l=o.length,A=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l-1),this.offset-=l;var f=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),A.length-1&&(this.yylineno-=A.length-1);var I=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:A?(A.length===f.length?this.yylloc.first_column:0)+f[f.length-A.length].length-A[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[I[0],I[0]+this.yyleng-l]),this},more:function(){return this._more=!0,this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),l=new Array(o.length+1).join("-");return o+this.upcomingInput()+` `+l+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,l,A,f,I,C;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),E=0;El[0].length)&&(l=A,f=E,!this.options.flex)));E++);return l?(C=l[0].match(/(?:\r\n?|\n).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+l[0].length},this.yytext+=l[0],this.match+=l[0],this.matches=l,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(l[0].length),this.matched+=l[0],o=this.performAction.call(this,this.yy,this,b[f],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var o=this.next();return typeof o<"u"?o:this.lex()},begin:function(o){this.conditionStack.push(o)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(o){this.begin(o)}};return n.options={},n.performAction=function(o,l,A,f){function I(b,E){return l.yytext=l.yytext.substring(b,l.yyleng-E+b)}var C=f;switch(A){case 0:if(l.yytext.slice(-2)==="\\\\"?(I(0,1),this.begin("mu")):l.yytext.slice(-1)==="\\"?(I(0,1),this.begin("emu")):this.begin("mu"),l.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(I(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(l.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return l.yytext=I(1,2).replace(/\\"/g,'"'),80;break;case 32:return l.yytext=I(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return l.yytext=l.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},n.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},n}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();Edt.default=nQo;RPn.exports=Edt.default});var wdt=H((Bdt,xPn)=>{"use strict";Bdt.__esModule=!0;function iQo(e){return e&&e.__esModule?e:{default:e}}var sQo=hM(),Wpr=iQo(sQo);function Sdt(){this.parents=[]}Sdt.prototype={constructor:Sdt,mutating:!1,acceptKey:function(t,r){var n=this.accept(t[r]);if(this.mutating){if(n&&!Sdt.prototype[n.type])throw new Wpr.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+t.type);t[r]=n}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new Wpr.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,n=t.length;r{"use strict";Tdt.__esModule=!0;function oQo(e){return e&&e.__esModule?e:{default:e}}var aQo=wdt(),cQo=oQo(aQo);function a8(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}a8.prototype=new cQo.default;a8.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=e.body,a=0,o=n.length;a{"use strict";mM.__esModule=!0;mM.SourceLocation=gQo;mM.id=AQo;mM.stripFlags=dQo;mM.stripComment=pQo;mM.preparePath=fQo;mM.prepareMustache=IQo;mM.prepareRawBlock=hQo;mM.prepareBlock=mQo;mM.prepareProgram=CQo;mM.preparePartialBlock=_Qo;function lQo(e){return e&&e.__esModule?e:{default:e}}var uQo=hM(),Hpr=lQo(uQo);function Ypr(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new Hpr.default(e.path.original+" doesn't match "+t,r)}}function gQo(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function AQo(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function dQo(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function pQo(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function fQo(e,t,r){r=this.locInfo(r);for(var n=e?"@":"",a=[],o=0,l=0,A=t.length;l0)throw new Hpr.default("Invalid path: "+n,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:n,loc:r}}function IQo(e,t,r,n,a,o){var l=n.charAt(3)||n.charAt(2),A=l!=="{"&&l!=="&",f=/\*/.test(n);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:A,strip:a,loc:this.locInfo(o)}}function hQo(e,t,r,n){Ypr(e,r),n=this.locInfo(n);var a={type:"Program",body:t,strip:{},loc:n};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function mQo(e,t,r,n,a,o){n&&n.path&&Ypr(e,n);var l=/\*/.test(e.open);t.blockParams=e.blockParams;var A=void 0,f=void 0;if(r){if(l)throw new Hpr.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),f=r.strip,A=r.program}return a&&(a=A,A=t,t=a),{type:l?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:A,openStrip:e.strip,inverseStrip:f,closeStrip:n&&n.strip,loc:this.locInfo(o)}}function CQo(e,t){if(!t&&e.length){var r=e[0].loc,n=e[e.length-1].loc;r&&n&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function _Qo(e,t,r,n){return Ypr(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}});var PPn=H(sMe=>{"use strict";sMe.__esModule=!0;sMe.parseWithoutProcessing=VPn;sMe.parse=TQo;function yQo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function LPn(e){return e&&e.__esModule?e:{default:e}}var bQo=NPn(),Qpr=LPn(bQo),EQo=FPn(),SQo=LPn(EQo),vQo=ZPn(),BQo=yQo(vQo),wQo=NZ();sMe.parser=Qpr.default;var Rdt={};wQo.extend(Rdt,BQo);function VPn(e,t){if(e.type==="Program")return e;Qpr.default.yy=Rdt,Rdt.locInfo=function(n){return new Rdt.SourceLocation(t&&t.srcName,n)};var r=Qpr.default.parse(e);return r}function TQo(e,t){var r=VPn(e,t),n=new SQo.default(t);return n.accept(r)}});var HPn=H(lMe=>{"use strict";lMe.__esModule=!0;lMe.Compiler=Xpr;lMe.precompile=kQo;lMe.compile=xQo;function OPn(e){return e&&e.__esModule?e:{default:e}}var RQo=hM(),aMe=OPn(RQo),cMe=NZ(),NQo=Ppr(),oMe=OPn(NQo),DQo=[].slice;function Xpr(){}Xpr.prototype={compiler:Xpr,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var n=0;n1)throw new aMe.default("Unsupported number of partial arguments: "+n.length,t);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var l=t.indent||"";this.options.preventIndent&&l&&(this.opcode("appendContent",l),l=""),this.opcode("invokePartial",o,a,l),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){WPn(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,n){var a=t.path,o=a.parts[0],l=r!=null||n!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,l)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,n){var a=this.setupFullMustacheParams(t,r,n),o=t.path,l=o.parts[0];if(this.options.knownHelpers[l])this.opcode("invokeKnownHelper",a.length,l);else{if(this.options.knownHelpersOnly)throw new aMe.default("You specified knownHelpersOnly, but used the unknown helper "+l,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,oMe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],n=oMe.default.helpers.scopedId(t),a=!t.depth&&!n&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,n):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,n=0,a=r.length;for(this.opcode("pushHash");n=0)return[r,o]}}};function kQo(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new aMe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=r.parse(e,t),a=new r.Compiler().compile(n,t);return new r.JavaScriptCompiler().compile(a,t)}function xQo(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new aMe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=cMe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=void 0;function a(){var l=r.parse(e,t),A=new r.Compiler().compile(l,t),f=new r.JavaScriptCompiler().compile(A,t,void 0,!0);return r.template(f)}function o(l,A){return n||(n=a()),n.call(this,l,A)}return o._setup=function(l){return n||(n=a()),n._setup(l)},o._child=function(l,A,f,I){return n||(n=a()),n._child(l,A,f,I)},o}function MPn(e,t){if(e===t)return!0;if(cMe.isArray(e)&&cMe.isArray(t)&&e.length===t.length){for(var r=0;r{var YPn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Jpr.encode=function(e){if(0<=e&&e{var XPn=QPn(),Upr=5,JPn=1<>1;return t?-r:r}Kpr.encode=function(t){var r="",n,a=GQo(t);do n=a&UPn,a>>>=Upr,a>0&&(n|=KPn),r+=XPn.encode(n);while(a>0);return r};Kpr.decode=function(t,r,n){var a=t.length,o=0,l=0,A,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=XPn.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));A=!!(f&KPn),f&=UPn,o=o+(f<{function ZQo(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}fG.getArg=ZQo;var jPn=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,LQo=/^data:.+\,.+$/;function uMe(e){var t=e.match(jPn);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}fG.urlParse=uMe;function Ove(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}fG.urlGenerate=Ove;function zpr(e){var t=e,r=uMe(e);if(r){if(!r.path)return e;t=r.path}for(var n=fG.isAbsolute(t),a=t.split(/\/+/),o,l=0,A=a.length-1;A>=0;A--)o=a[A],o==="."?a.splice(A,1):o===".."?l++:l>0&&(o===""?(a.splice(A+1,l),l=0):(a.splice(A,2),l--));return t=a.join("/"),t===""&&(t=n?"/":"."),r?(r.path=t,Ove(r)):t}fG.normalize=zpr;function zPn(e,t){e===""&&(e="."),t===""&&(t=".");var r=uMe(t),n=uMe(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Ove(r);if(r||t.match(LQo))return t;if(n&&!n.host&&!n.path)return n.host=t,Ove(n);var a=t.charAt(0)==="/"?t:zpr(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,Ove(n)):a}fG.join=zPn;fG.isAbsolute=function(e){return e.charAt(0)==="/"||jPn.test(e)};function VQo(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}fG.relative=VQo;var qPn=function(){var e=Object.create(null);return!("__proto__"in e)}();function $Pn(e){return e}function PQo(e){return eWn(e)?"$"+e:e}fG.toSetString=qPn?$Pn:PQo;function WQo(e){return eWn(e)?e.slice(1):e}fG.fromSetString=qPn?$Pn:WQo;function eWn(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function OQo(e,t,r){var n=Mve(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Mve(e.name,t.name)}fG.compareByOriginalPositions=OQo;function MQo(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Mve(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Mve(e.name,t.name)}fG.compareByGeneratedPositionsDeflated=MQo;function Mve(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function HQo(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Mve(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Mve(e.name,t.name)}fG.compareByGeneratedPositionsInflated=HQo;function YQo(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}fG.parseSourceMapInput=YQo;function QQo(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=uMe(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=zPn(Ove(n),t)}return zpr(t)}fG.computeSourceURL=QQo});var efr=H(tWn=>{var qpr=Hve(),$pr=Object.prototype.hasOwnProperty,mIe=typeof Map<"u";function m$(){this._array=[],this._set=mIe?new Map:Object.create(null)}m$.fromArray=function(t,r){for(var n=new m$,a=0,o=t.length;a=0)return r}else{var n=qpr.toSetString(t);if($pr.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};m$.prototype.at=function(t){if(t>=0&&t{var rWn=Hve();function XQo(e,t){var r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||rWn.compareByGeneratedPositionsInflated(e,t)<=0}function Ndt(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Ndt.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};Ndt.prototype.add=function(t){XQo(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};Ndt.prototype.toArray=function(){return this._sorted||(this._array.sort(rWn.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};nWn.MappingList=Ndt});var tfr=H(sWn=>{var gMe=jpr(),rT=Hve(),Ddt=efr().ArraySet,JQo=iWn().MappingList;function CM(e){e||(e={}),this._file=rT.getArg(e,"file",null),this._sourceRoot=rT.getArg(e,"sourceRoot",null),this._skipValidation=rT.getArg(e,"skipValidation",!1),this._sources=new Ddt,this._names=new Ddt,this._mappings=new JQo,this._sourcesContents=null}CM.prototype._version=3;CM.fromSourceMap=function(t){var r=t.sourceRoot,n=new CM({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=rT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=rT.relative(r,a)),n._sources.has(o)||n._sources.add(o);var l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n};CM.prototype.addMapping=function(t){var r=rT.getArg(t,"generated"),n=rT.getArg(t,"original",null),a=rT.getArg(t,"source",null),o=rT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})};CM.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=rT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[rT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[rT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};CM.prototype.applySourceMap=function(t,r,n){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=rT.relative(o,a));var l=new Ddt,A=new Ddt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var I=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});I.source!=null&&(f.source=I.source,n!=null&&(f.source=rT.join(n,f.source)),o!=null&&(f.source=rT.relative(o,f.source)),f.originalLine=I.line,f.originalColumn=I.column,I.name!=null&&(f.name=I.name))}var C=f.source;C!=null&&!l.has(C)&&l.add(C);var b=f.name;b!=null&&!A.has(b)&&A.add(b)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){var I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=rT.join(n,f)),o!=null&&(f=rT.relative(o,f)),this.setSourceContent(f,I))},this)};CM.prototype._validateMapping=function(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}};CM.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray(),N=0,B=E.length;N0){if(!rT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=gMe.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=gMe.encode(b-l),l=b,f+=gMe.encode(I.originalLine-1-a),a=I.originalLine-1,f+=gMe.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=gMe.encode(C-o),o=C)),A+=f}return A};CM.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=rT.relative(r,n));var a=rT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};CM.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};CM.prototype.toString=function(){return JSON.stringify(this.toJSON())};sWn.SourceMapGenerator=CM});var oWn=H(CIe=>{CIe.GREATEST_LOWER_BOUND=1;CIe.LEAST_UPPER_BOUND=2;function rfr(e,t,r,n,a,o){var l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?rfr(l,t,r,n,a,o):o==CIe.LEAST_UPPER_BOUND?t1?rfr(e,l,r,n,a,o):o==CIe.LEAST_UPPER_BOUND?l:e<0?-1:e}CIe.search=function(t,r,n,a){if(r.length===0)return-1;var o=rfr(-1,r.length,t,r,n,a||CIe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var cWn=H(aWn=>{function nfr(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function UQo(e,t){return Math.round(e+Math.random()*(t-e))}function ifr(e,t,r,n){if(r{var id=Hve(),sfr=oWn(),Yve=efr().ArraySet,KQo=jpr(),AMe=cWn().quickSort;function F1(e,t){var r=e;return typeof e=="string"&&(r=id.parseSourceMapInput(e)),r.sections!=null?new hX(r,t):new Bk(r,t)}F1.fromSourceMap=function(e,t){return Bk.fromSourceMap(e,t)};F1.prototype._version=3;F1.prototype.__generatedMappings=null;Object.defineProperty(F1.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});F1.prototype.__originalMappings=null;Object.defineProperty(F1.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});F1.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};F1.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};F1.GENERATED_ORDER=1;F1.ORIGINAL_ORDER=2;F1.GREATEST_LOWER_BOUND=1;F1.LEAST_UPPER_BOUND=2;F1.prototype.eachMapping=function(t,r,n){var a=r||null,o=n||F1.GENERATED_ORDER,l;switch(o){case F1.GENERATED_ORDER:l=this._generatedMappings;break;case F1.ORIGINAL_ORDER:l=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var A=this.sourceRoot;l.map(function(f){var I=f.source===null?null:this._sources.at(f.source);return I=id.computeSourceURL(A,I,this._sourceMapURL),{source:I,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};F1.prototype.allGeneratedPositionsFor=function(t){var r=id.getArg(t,"line"),n={source:id.getArg(t,"source"),originalLine:r,originalColumn:id.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",id.compareByOriginalPositions,sfr.LEAST_UPPER_BOUND);if(o>=0){var l=this._originalMappings[o];if(t.column===void 0)for(var A=l.originalLine;l&&l.originalLine===A;)a.push({line:id.getArg(l,"generatedLine",null),column:id.getArg(l,"generatedColumn",null),lastColumn:id.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o];else for(var f=l.originalColumn;l&&l.originalLine===r&&l.originalColumn==f;)a.push({line:id.getArg(l,"generatedLine",null),column:id.getArg(l,"generatedColumn",null),lastColumn:id.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o]}return a};kdt.SourceMapConsumer=F1;function Bk(e,t){var r=e;typeof e=="string"&&(r=id.parseSourceMapInput(e));var n=id.getArg(r,"version"),a=id.getArg(r,"sources"),o=id.getArg(r,"names",[]),l=id.getArg(r,"sourceRoot",null),A=id.getArg(r,"sourcesContent",null),f=id.getArg(r,"mappings"),I=id.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);l&&(l=id.normalize(l)),a=a.map(String).map(id.normalize).map(function(C){return l&&id.isAbsolute(l)&&id.isAbsolute(C)?id.relative(l,C):C}),this._names=Yve.fromArray(o.map(String),!0),this._sources=Yve.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(C){return id.computeSourceURL(l,C,t)}),this.sourceRoot=l,this.sourcesContent=A,this._mappings=f,this._sourceMapURL=t,this.file=I}Bk.prototype=Object.create(F1.prototype);Bk.prototype.consumer=F1;Bk.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=id.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(F.source=A+X[1],A+=X[1],F.originalLine=o+X[2],o=F.originalLine,F.originalLine+=1,F.originalColumn=l+X[3],l=F.originalColumn,X.length>4&&(F.name=f+X[4],f+=X[4])),B.push(F),typeof F.originalLine=="number"&&N.push(F)}AMe(B,id.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,AMe(N,id.compareByOriginalPositions),this.__originalMappings=N};Bk.prototype._findMapping=function(t,r,n,a,o,l){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return sfr.search(t,r,o,l)};Bk.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[n];if(a.generatedLine===r.generatedLine){var o=id.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=id.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var l=id.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:id.getArg(a,"originalLine",null),column:id.getArg(a,"originalColumn",null),name:l}}}return{source:null,line:null,column:null,name:null}};Bk.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};Bk.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var a=t;this.sourceRoot!=null&&(a=id.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=id.urlParse(this.sourceRoot))){var l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};Bk.prototype.generatedPositionFor=function(t){var r=id.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:id.getArg(t,"line"),originalColumn:id.getArg(t,"column")},a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",id.compareByOriginalPositions,id.getArg(t,"bias",F1.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===n.source)return{line:id.getArg(o,"generatedLine",null),column:id.getArg(o,"generatedColumn",null),lastColumn:id.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};kdt.BasicSourceMapConsumer=Bk;function hX(e,t){var r=e;typeof e=="string"&&(r=id.parseSourceMapInput(e));var n=id.getArg(r,"version"),a=id.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Yve,this._names=new Yve;var o={line:-1,column:0};this._sections=a.map(function(l){if(l.url)throw new Error("Support for url field in sections not implemented.");var A=id.getArg(l,"offset"),f=id.getArg(A,"line"),I=id.getArg(A,"column");if(f{var jQo=tfr().SourceMapGenerator,xdt=Hve(),zQo=/(\r?\n)/,qQo=10,Qve="$$$isSourceNode$$$";function VW(e,t,r,n,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[Qve]=!0,n!=null&&this.add(n)}VW.fromStringWithSourceMap=function(t,r,n){var a=new VW,o=t.split(zQo),l=0,A=function(){var E=B(),N=B()||"";return E+N;function B(){return l=0;r--)this.prepend(t[r]);else if(t[Qve]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};VW.prototype.walk=function(t){for(var r,n=0,a=this.children.length;n0){for(r=[],n=0;n{Gdt.SourceMapGenerator=tfr().SourceMapGenerator;Gdt.SourceMapConsumer=uWn().SourceMapConsumer;Gdt.SourceNode=AWn().SourceNode});var hWn=H((Fdt,IWn)=>{"use strict";Fdt.__esModule=!0;var afr=NZ(),_Ie=void 0;try{(typeof define!="function"||!define.amd)&&(pWn=dWn(),_Ie=pWn.SourceNode)}catch{}var pWn;_Ie||(_Ie=function(e,t,r,n){this.src="",n&&this.add(n)},_Ie.prototype={add:function(t){afr.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){afr.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function ofr(e,t,r){if(afr.isArray(e)){for(var n=[],a=0,o=e.length;a{"use strict";Zdt.__esModule=!0;function _Wn(e){return e&&e.__esModule?e:{default:e}}var mWn=hdt(),$Qo=hM(),cfr=_Wn($Qo),eXo=NZ(),tXo=hWn(),CWn=_Wn(tXo);function Xve(e){this.value=e}function Jve(){}Jve.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=mWn.COMPILER_REVISION,r=mWn.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,n){return eXo.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:n?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,n,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,l=void 0,A=void 0,f=void 0,I=void 0;for(f=0,I=o.length;f@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},n}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();vdt.default=CQo;ZPn.exports=vdt.default});var Rdt=H((Tdt,WPn)=>{"use strict";Tdt.__esModule=!0;function _Qo(e){return e&&e.__esModule?e:{default:e}}var yQo=hM(),Ypr=_Qo(yQo);function Bdt(){this.parents=[]}Bdt.prototype={constructor:Bdt,mutating:!1,acceptKey:function(t,r){var n=this.accept(t[r]);if(this.mutating){if(n&&!Bdt.prototype[n.type])throw new Ypr.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+t.type);t[r]=n}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new Ypr.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,n=t.length;r{"use strict";Ndt.__esModule=!0;function bQo(e){return e&&e.__esModule?e:{default:e}}var EQo=Rdt(),SQo=bQo(EQo);function a8(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}a8.prototype=new SQo.default;a8.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=e.body,a=0,o=n.length;a{"use strict";mM.__esModule=!0;mM.SourceLocation=wQo;mM.id=TQo;mM.stripFlags=RQo;mM.stripComment=NQo;mM.preparePath=DQo;mM.prepareMustache=kQo;mM.prepareRawBlock=xQo;mM.prepareBlock=GQo;mM.prepareProgram=FQo;mM.preparePartialBlock=ZQo;function vQo(e){return e&&e.__esModule?e:{default:e}}var BQo=hM(),Jpr=vQo(BQo);function Upr(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new Jpr.default(e.path.original+" doesn't match "+t,r)}}function wQo(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function TQo(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function RQo(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function NQo(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function DQo(e,t,r){r=this.locInfo(r);for(var n=e?"@":"",a=[],o=0,l=0,A=t.length;l0)throw new Jpr.default("Invalid path: "+n,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:n,loc:r}}function kQo(e,t,r,n,a,o){var l=n.charAt(3)||n.charAt(2),A=l!=="{"&&l!=="&",f=/\*/.test(n);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:A,strip:a,loc:this.locInfo(o)}}function xQo(e,t,r,n){Upr(e,r),n=this.locInfo(n);var a={type:"Program",body:t,strip:{},loc:n};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function GQo(e,t,r,n,a,o){n&&n.path&&Upr(e,n);var l=/\*/.test(e.open);t.blockParams=e.blockParams;var A=void 0,f=void 0;if(r){if(l)throw new Jpr.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),f=r.strip,A=r.program}return a&&(a=A,A=t,t=a),{type:l?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:A,openStrip:e.strip,inverseStrip:f,closeStrip:n&&n.strip,loc:this.locInfo(o)}}function FQo(e,t){if(!t&&e.length){var r=e[0].loc,n=e[e.length-1].loc;r&&n&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function ZQo(e,t,r,n){return Upr(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}});var XPn=H(aMe=>{"use strict";aMe.__esModule=!0;aMe.parseWithoutProcessing=QPn;aMe.parse=YQo;function LQo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function YPn(e){return e&&e.__esModule?e:{default:e}}var VQo=LPn(),Kpr=YPn(VQo),PQo=MPn(),WQo=YPn(PQo),OQo=HPn(),MQo=LQo(OQo),HQo=NZ();aMe.parser=Kpr.default;var Ddt={};HQo.extend(Ddt,MQo);function QPn(e,t){if(e.type==="Program")return e;Kpr.default.yy=Ddt,Ddt.locInfo=function(n){return new Ddt.SourceLocation(t&&t.srcName,n)};var r=Kpr.default.parse(e);return r}function YQo(e,t){var r=QPn(e,t),n=new WQo.default(t);return n.accept(r)}});var jPn=H(gMe=>{"use strict";gMe.__esModule=!0;gMe.Compiler=jpr;gMe.precompile=UQo;gMe.compile=KQo;function UPn(e){return e&&e.__esModule?e:{default:e}}var QQo=hM(),lMe=UPn(QQo),uMe=NZ(),XQo=Hpr(),cMe=UPn(XQo),JQo=[].slice;function jpr(){}jpr.prototype={compiler:jpr,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var n=0;n1)throw new lMe.default("Unsupported number of partial arguments: "+n.length,t);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var l=t.indent||"";this.options.preventIndent&&l&&(this.opcode("appendContent",l),l=""),this.opcode("invokePartial",o,a,l),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){JPn(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,n){var a=t.path,o=a.parts[0],l=r!=null||n!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,l)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,n){var a=this.setupFullMustacheParams(t,r,n),o=t.path,l=o.parts[0];if(this.options.knownHelpers[l])this.opcode("invokeKnownHelper",a.length,l);else{if(this.options.knownHelpersOnly)throw new lMe.default("You specified knownHelpersOnly, but used the unknown helper "+l,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,cMe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],n=cMe.default.helpers.scopedId(t),a=!t.depth&&!n&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,n):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,n=0,a=r.length;for(this.opcode("pushHash");n=0)return[r,o]}}};function UQo(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new lMe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=r.parse(e,t),a=new r.Compiler().compile(n,t);return new r.JavaScriptCompiler().compile(a,t)}function KQo(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new lMe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=uMe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=void 0;function a(){var l=r.parse(e,t),A=new r.Compiler().compile(l,t),f=new r.JavaScriptCompiler().compile(A,t,void 0,!0);return r.template(f)}function o(l,A){return n||(n=a()),n.call(this,l,A)}return o._setup=function(l){return n||(n=a()),n._setup(l)},o._child=function(l,A,f,I){return n||(n=a()),n._child(l,A,f,I)},o}function KPn(e,t){if(e===t)return!0;if(uMe.isArray(e)&&uMe.isArray(t)&&e.length===t.length){for(var r=0;r{var zPn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");zpr.encode=function(e){if(0<=e&&e{var $Pn=qPn(),qpr=5,eWn=1<>1;return t?-r:r}$pr.encode=function(t){var r="",n,a=jQo(t);do n=a&tWn,a>>>=qpr,a>0&&(n|=rWn),r+=$Pn.encode(n);while(a>0);return r};$pr.decode=function(t,r,n){var a=t.length,o=0,l=0,A,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=$Pn.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));A=!!(f&rWn),f&=tWn,o=o+(f<{function qQo(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}fG.getArg=qQo;var nWn=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,$Qo=/^data:.+\,.+$/;function AMe(e){var t=e.match(nWn);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}fG.urlParse=AMe;function Mve(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}fG.urlGenerate=Mve;function tfr(e){var t=e,r=AMe(e);if(r){if(!r.path)return e;t=r.path}for(var n=fG.isAbsolute(t),a=t.split(/\/+/),o,l=0,A=a.length-1;A>=0;A--)o=a[A],o==="."?a.splice(A,1):o===".."?l++:l>0&&(o===""?(a.splice(A+1,l),l=0):(a.splice(A,2),l--));return t=a.join("/"),t===""&&(t=n?"/":"."),r?(r.path=t,Mve(r)):t}fG.normalize=tfr;function iWn(e,t){e===""&&(e="."),t===""&&(t=".");var r=AMe(t),n=AMe(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Mve(r);if(r||t.match($Qo))return t;if(n&&!n.host&&!n.path)return n.host=t,Mve(n);var a=t.charAt(0)==="/"?t:tfr(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,Mve(n)):a}fG.join=iWn;fG.isAbsolute=function(e){return e.charAt(0)==="/"||nWn.test(e)};function eXo(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}fG.relative=eXo;var sWn=function(){var e=Object.create(null);return!("__proto__"in e)}();function oWn(e){return e}function tXo(e){return aWn(e)?"$"+e:e}fG.toSetString=sWn?oWn:tXo;function rXo(e){return aWn(e)?e.slice(1):e}fG.fromSetString=sWn?oWn:rXo;function aWn(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function nXo(e,t,r){var n=Hve(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Hve(e.name,t.name)}fG.compareByOriginalPositions=nXo;function iXo(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Hve(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Hve(e.name,t.name)}fG.compareByGeneratedPositionsDeflated=iXo;function Hve(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function sXo(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Hve(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Hve(e.name,t.name)}fG.compareByGeneratedPositionsInflated=sXo;function oXo(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}fG.parseSourceMapInput=oXo;function aXo(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=AMe(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=iWn(Mve(n),t)}return tfr(t)}fG.computeSourceURL=aXo});var ifr=H(cWn=>{var rfr=Yve(),nfr=Object.prototype.hasOwnProperty,CIe=typeof Map<"u";function m$(){this._array=[],this._set=CIe?new Map:Object.create(null)}m$.fromArray=function(t,r){for(var n=new m$,a=0,o=t.length;a=0)return r}else{var n=rfr.toSetString(t);if(nfr.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};m$.prototype.at=function(t){if(t>=0&&t{var lWn=Yve();function cXo(e,t){var r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||lWn.compareByGeneratedPositionsInflated(e,t)<=0}function kdt(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}kdt.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};kdt.prototype.add=function(t){cXo(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};kdt.prototype.toArray=function(){return this._sorted||(this._array.sort(lWn.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};uWn.MappingList=kdt});var sfr=H(AWn=>{var dMe=efr(),rT=Yve(),xdt=ifr().ArraySet,lXo=gWn().MappingList;function CM(e){e||(e={}),this._file=rT.getArg(e,"file",null),this._sourceRoot=rT.getArg(e,"sourceRoot",null),this._skipValidation=rT.getArg(e,"skipValidation",!1),this._sources=new xdt,this._names=new xdt,this._mappings=new lXo,this._sourcesContents=null}CM.prototype._version=3;CM.fromSourceMap=function(t){var r=t.sourceRoot,n=new CM({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=rT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=rT.relative(r,a)),n._sources.has(o)||n._sources.add(o);var l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n};CM.prototype.addMapping=function(t){var r=rT.getArg(t,"generated"),n=rT.getArg(t,"original",null),a=rT.getArg(t,"source",null),o=rT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})};CM.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=rT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[rT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[rT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};CM.prototype.applySourceMap=function(t,r,n){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=rT.relative(o,a));var l=new xdt,A=new xdt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var I=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});I.source!=null&&(f.source=I.source,n!=null&&(f.source=rT.join(n,f.source)),o!=null&&(f.source=rT.relative(o,f.source)),f.originalLine=I.line,f.originalColumn=I.column,I.name!=null&&(f.name=I.name))}var C=f.source;C!=null&&!l.has(C)&&l.add(C);var b=f.name;b!=null&&!A.has(b)&&A.add(b)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){var I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=rT.join(n,f)),o!=null&&(f=rT.relative(o,f)),this.setSourceContent(f,I))},this)};CM.prototype._validateMapping=function(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}};CM.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray(),N=0,B=E.length;N0){if(!rT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=dMe.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=dMe.encode(b-l),l=b,f+=dMe.encode(I.originalLine-1-a),a=I.originalLine-1,f+=dMe.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=dMe.encode(C-o),o=C)),A+=f}return A};CM.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=rT.relative(r,n));var a=rT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};CM.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};CM.prototype.toString=function(){return JSON.stringify(this.toJSON())};AWn.SourceMapGenerator=CM});var dWn=H(_Ie=>{_Ie.GREATEST_LOWER_BOUND=1;_Ie.LEAST_UPPER_BOUND=2;function ofr(e,t,r,n,a,o){var l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?ofr(l,t,r,n,a,o):o==_Ie.LEAST_UPPER_BOUND?t1?ofr(e,l,r,n,a,o):o==_Ie.LEAST_UPPER_BOUND?l:e<0?-1:e}_Ie.search=function(t,r,n,a){if(r.length===0)return-1;var o=ofr(-1,r.length,t,r,n,a||_Ie.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var fWn=H(pWn=>{function afr(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function uXo(e,t){return Math.round(e+Math.random()*(t-e))}function cfr(e,t,r,n){if(r{var id=Yve(),lfr=dWn(),Qve=ifr().ArraySet,gXo=efr(),pMe=fWn().quickSort;function F1(e,t){var r=e;return typeof e=="string"&&(r=id.parseSourceMapInput(e)),r.sections!=null?new hX(r,t):new Bk(r,t)}F1.fromSourceMap=function(e,t){return Bk.fromSourceMap(e,t)};F1.prototype._version=3;F1.prototype.__generatedMappings=null;Object.defineProperty(F1.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});F1.prototype.__originalMappings=null;Object.defineProperty(F1.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});F1.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};F1.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};F1.GENERATED_ORDER=1;F1.ORIGINAL_ORDER=2;F1.GREATEST_LOWER_BOUND=1;F1.LEAST_UPPER_BOUND=2;F1.prototype.eachMapping=function(t,r,n){var a=r||null,o=n||F1.GENERATED_ORDER,l;switch(o){case F1.GENERATED_ORDER:l=this._generatedMappings;break;case F1.ORIGINAL_ORDER:l=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var A=this.sourceRoot;l.map(function(f){var I=f.source===null?null:this._sources.at(f.source);return I=id.computeSourceURL(A,I,this._sourceMapURL),{source:I,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};F1.prototype.allGeneratedPositionsFor=function(t){var r=id.getArg(t,"line"),n={source:id.getArg(t,"source"),originalLine:r,originalColumn:id.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",id.compareByOriginalPositions,lfr.LEAST_UPPER_BOUND);if(o>=0){var l=this._originalMappings[o];if(t.column===void 0)for(var A=l.originalLine;l&&l.originalLine===A;)a.push({line:id.getArg(l,"generatedLine",null),column:id.getArg(l,"generatedColumn",null),lastColumn:id.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o];else for(var f=l.originalColumn;l&&l.originalLine===r&&l.originalColumn==f;)a.push({line:id.getArg(l,"generatedLine",null),column:id.getArg(l,"generatedColumn",null),lastColumn:id.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o]}return a};Gdt.SourceMapConsumer=F1;function Bk(e,t){var r=e;typeof e=="string"&&(r=id.parseSourceMapInput(e));var n=id.getArg(r,"version"),a=id.getArg(r,"sources"),o=id.getArg(r,"names",[]),l=id.getArg(r,"sourceRoot",null),A=id.getArg(r,"sourcesContent",null),f=id.getArg(r,"mappings"),I=id.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);l&&(l=id.normalize(l)),a=a.map(String).map(id.normalize).map(function(C){return l&&id.isAbsolute(l)&&id.isAbsolute(C)?id.relative(l,C):C}),this._names=Qve.fromArray(o.map(String),!0),this._sources=Qve.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(C){return id.computeSourceURL(l,C,t)}),this.sourceRoot=l,this.sourcesContent=A,this._mappings=f,this._sourceMapURL=t,this.file=I}Bk.prototype=Object.create(F1.prototype);Bk.prototype.consumer=F1;Bk.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=id.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(F.source=A+X[1],A+=X[1],F.originalLine=o+X[2],o=F.originalLine,F.originalLine+=1,F.originalColumn=l+X[3],l=F.originalColumn,X.length>4&&(F.name=f+X[4],f+=X[4])),B.push(F),typeof F.originalLine=="number"&&N.push(F)}pMe(B,id.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,pMe(N,id.compareByOriginalPositions),this.__originalMappings=N};Bk.prototype._findMapping=function(t,r,n,a,o,l){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return lfr.search(t,r,o,l)};Bk.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[n];if(a.generatedLine===r.generatedLine){var o=id.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=id.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var l=id.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:id.getArg(a,"originalLine",null),column:id.getArg(a,"originalColumn",null),name:l}}}return{source:null,line:null,column:null,name:null}};Bk.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};Bk.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var a=t;this.sourceRoot!=null&&(a=id.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=id.urlParse(this.sourceRoot))){var l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};Bk.prototype.generatedPositionFor=function(t){var r=id.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:id.getArg(t,"line"),originalColumn:id.getArg(t,"column")},a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",id.compareByOriginalPositions,id.getArg(t,"bias",F1.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===n.source)return{line:id.getArg(o,"generatedLine",null),column:id.getArg(o,"generatedColumn",null),lastColumn:id.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};Gdt.BasicSourceMapConsumer=Bk;function hX(e,t){var r=e;typeof e=="string"&&(r=id.parseSourceMapInput(e));var n=id.getArg(r,"version"),a=id.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Qve,this._names=new Qve;var o={line:-1,column:0};this._sections=a.map(function(l){if(l.url)throw new Error("Support for url field in sections not implemented.");var A=id.getArg(l,"offset"),f=id.getArg(A,"line"),I=id.getArg(A,"column");if(f{var AXo=sfr().SourceMapGenerator,Fdt=Yve(),dXo=/(\r?\n)/,pXo=10,Xve="$$$isSourceNode$$$";function VW(e,t,r,n,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[Xve]=!0,n!=null&&this.add(n)}VW.fromStringWithSourceMap=function(t,r,n){var a=new VW,o=t.split(dXo),l=0,A=function(){var E=B(),N=B()||"";return E+N;function B(){return l=0;r--)this.prepend(t[r]);else if(t[Xve]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};VW.prototype.walk=function(t){for(var r,n=0,a=this.children.length;n0){for(r=[],n=0;n{Zdt.SourceMapGenerator=sfr().SourceMapGenerator;Zdt.SourceMapConsumer=hWn().SourceMapConsumer;Zdt.SourceNode=CWn().SourceNode});var SWn=H((Ldt,EWn)=>{"use strict";Ldt.__esModule=!0;var gfr=NZ(),yIe=void 0;try{(typeof define!="function"||!define.amd)&&(yWn=_Wn(),yIe=yWn.SourceNode)}catch{}var yWn;yIe||(yIe=function(e,t,r,n){this.src="",n&&this.add(n)},yIe.prototype={add:function(t){gfr.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){gfr.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function ufr(e,t,r){if(gfr.isArray(e)){for(var n=[],a=0,o=e.length;a{"use strict";Vdt.__esModule=!0;function wWn(e){return e&&e.__esModule?e:{default:e}}var vWn=Cdt(),fXo=hM(),Afr=wWn(fXo),IXo=NZ(),hXo=SWn(),BWn=wWn(hXo);function Jve(e){this.value=e}function Uve(){}Uve.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=vWn.COMPILER_REVISION,r=vWn.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,n){return IXo.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:n?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,n,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,l=void 0,A=void 0,f=void 0,I=void 0;for(f=0,I=o.length;f0&&(n+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var I=r.aliases[f];I.children&&I.referenceCount>1&&(n+=", alias"+ ++o+"="+f,I.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var l=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&l.push("blockParams"),this.useDepths&&l.push("depths");var A=this.mergeSource(n);return t?(l.push(A),Function.apply(this,l)):this.source.wrap(["function(",l.join(","),`) { +`),this.decorators=this.decorators.merge()));var C=this.createFunctionContext(a);if(this.isChild)return C;var b={compiler:this.compilerInfo(),main:C};this.decorators&&(b.main_d=this.decorators,b.useDecorators=!0);var E=this.context,N=E.programs,B=E.decorators;for(f=0,I=N.length;f0&&(n+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var I=r.aliases[f];I.children&&I.referenceCount>1&&(n+=", alias"+ ++o+"="+f,I.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var l=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&l.push("blockParams"),this.useDepths&&l.push("depths");var A=this.mergeSource(n);return t?(l.push(A),Function.apply(this,l)):this.source.wrap(["function(",l.join(","),`) { `,A,"}"])},mergeSource:function(t){var r=this.environment.isSimple,n=!this.forceBuffer,a=void 0,o=void 0,l=void 0,A=void 0;return this.source.each(function(f){f.appendToBuffer?(l?f.prepend(" + "):l=f,A=f):(l&&(o?l.prepend("buffer += "):a=!0,A.add(";"),l=A=void 0),o=!0,r||(n=!1))}),n?l?(l.prepend("return "),A.add(";")):o||this.source.push('return "";'):(t+=", buffer = "+(a?"":this.initializeBuffer()),l?(l.prepend("return buffer + "),A.add(";")):this.source.push("return buffer;")),t&&this.source.prepend("var "+t.substring(2)+(a?"":`; `)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return` lookupProperty = container.lookupProperty || function(parent, propertyName) { @@ -279,28 +279,28 @@ Expecting `+Me.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":je="Parse erro } return undefined } - `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(t,0,n);var a=this.popStack();n.splice(1,0,a),this.push(this.source.functionCall(r,"call",n))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,n,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,n)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,n){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},resolvePath:function(t,r,n,a,o){var l=this;if(this.options.strict||this.options.assumeObjects){this.push(rXo(this.options.strict&&o,this,r,n,t));return}for(var A=r.length;nthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,n=t.length;r{"use strict";Ldt.__esModule=!0;function dMe(e){return e&&e.__esModule?e:{default:e}}var nXo=BPn(),iXo=dMe(nXo),sXo=Ppr(),oXo=dMe(sXo),lfr=PPn(),ufr=HPn(),aXo=bWn(),cXo=dMe(aXo),lXo=wdt(),uXo=dMe(lXo),gXo=Fpr(),AXo=dMe(gXo),dXo=iXo.default.create;function EWn(){var e=dXo();return e.compile=function(t,r){return ufr.compile(t,r,e)},e.precompile=function(t,r){return ufr.precompile(t,r,e)},e.AST=oXo.default,e.Compiler=ufr.Compiler,e.JavaScriptCompiler=cXo.default,e.Parser=lfr.parser,e.parse=lfr.parse,e.parseWithoutProcessing=lfr.parseWithoutProcessing,e}var Uve=EWn();Uve.create=EWn;AXo.default(Uve);Uve.Visitor=uXo.default;Uve.default=Uve;Ldt.default=Uve;SWn.exports=Ldt.default});var BWn=H(Vdt=>{"use strict";Vdt.__esModule=!0;Vdt.print=hXo;Vdt.PrintVisitor=Vv;function pXo(e){return e&&e.__esModule?e:{default:e}}var fXo=wdt(),IXo=pXo(fXo);function hXo(e){return new Vv().accept(e)}function Vv(){this.padding=0}Vv.prototype=new IXo.default;Vv.prototype.pad=function(e){for(var t="",r=0,n=this.padding;r "+t+" }}")};Vv.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Vv.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Vv.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Vv.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(Odt,"__esModule",{value:!0});Odt.LRUCache=void 0;var jve=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,PWn=new Set,Afr=typeof process=="object"&&process?process:{},WWn=(e,t,r,n)=>{typeof Afr.emitWarning=="function"?Afr.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)},Wdt=globalThis.AbortController,VWn=globalThis.AbortSignal;if(typeof Wdt>"u"){VWn=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,a){this._onabort.push(a)}},Wdt=class{constructor(){t()}signal=new VWn;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let a of this.signal._onabort)a(n);this.signal.onabort?.(n)}}};let e=Afr.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,WWn("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var vXo=e=>!PWn.has(e),Jql=Symbol("type"),Loe=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),OWn=e=>Loe(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?zve:null:null,zve=class extends Array{constructor(t){super(t),this.fill(0)}},dfr=class e{heap;length;static#e=!1;static create(t){let r=OWn(t);if(!r)return[];e.#e=!0;let n=new e(t,r);return e.#e=!1,n}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},pfr=class e{#e;#t;#n;#r;#i;#s;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#g;#l;#u;#a;#m;#f;#I;#d;#b;#h;#S;#v;#C;#E;#_;#p;static unsafeExposeInternals(t){return{starts:t.#v,ttls:t.#C,sizes:t.#S,keyMap:t.#l,keyList:t.#u,valList:t.#a,next:t.#m,prev:t.#f,get head(){return t.#I},get tail(){return t.#d},free:t.#b,isBackgroundFetch:r=>t.#A(r),backgroundFetch:(r,n,a,o)=>t.#V(r,n,a,o),moveToTail:r=>t.#W(r),indexes:r=>t.#T(r),rindexes:r=>t.#R(r),isStale:r=>t.#y(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#g}get size(){return this.#o}get fetchMethod(){return this.#i}get memoMethod(){return this.#s}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(t){let{max:r=0,ttl:n,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:l,updateAgeOnHas:A,allowStale:f,dispose:I,disposeAfter:C,noDisposeOnSet:b,noUpdateTTL:E,maxSize:N=0,maxEntrySize:B=0,sizeCalculation:F,fetchMethod:Q,memoMethod:X,noDeleteOnFetchRejection:ae,noDeleteOnStaleGet:ne,allowStaleOnFetchRejection:ce,allowStaleOnFetchAbort:fe,ignoreFetchAbort:ue}=t;if(r!==0&&!Loe(r))throw new TypeError("max option must be a nonnegative integer");let de=r?OWn(r):Array;if(!de)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=N,this.maxEntrySize=B||this.#t,this.sizeCalculation=F,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(X!==void 0&&typeof X!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#s=X,Q!==void 0&&typeof Q!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=Q,this.#_=!!Q,this.#l=new Map,this.#u=new Array(r).fill(void 0),this.#a=new Array(r).fill(void 0),this.#m=new de(r),this.#f=new de(r),this.#I=0,this.#d=0,this.#b=dfr.create(r),this.#o=0,this.#g=0,typeof I=="function"&&(this.#n=I),typeof C=="function"?(this.#r=C,this.#h=[]):(this.#r=void 0,this.#h=void 0),this.#E=!!this.#n,this.#p=!!this.#r,this.noDisposeOnSet=!!b,this.noUpdateTTL=!!E,this.noDeleteOnFetchRejection=!!ae,this.allowStaleOnFetchRejection=!!ce,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!ue,this.maxEntrySize!==0){if(this.#t!==0&&!Loe(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!Loe(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#N()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ne,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!A,this.ttlResolution=Loe(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=n||0,this.ttl){if(!Loe(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#B()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";vXo(be)&&(PWn.add(be),WWn("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#l.has(t)?1/0:0}#B(){let t=new zve(this.#e),r=new zve(this.#e);this.#C=t,this.#v=r,this.#k=(o,l,A=jve.now())=>{if(r[o]=l!==0?A:0,t[o]=l,l!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#y(o)&&this.#D(this.#u[o],"expire")},l+1);f.unref&&f.unref()}},this.#w=o=>{r[o]=t[o]!==0?jve.now():0},this.#c=(o,l)=>{if(t[l]){let A=t[l],f=r[l];if(!A||!f)return;o.ttl=A,o.start=f,o.now=n||a();let I=o.now-f;o.remainingTTL=A-I}};let n=0,a=()=>{let o=jve.now();if(this.ttlResolution>0){n=o;let l=setTimeout(()=>n=0,this.ttlResolution);l.unref&&l.unref()}return o};this.getRemainingTTL=o=>{let l=this.#l.get(o);if(l===void 0)return 0;let A=t[l],f=r[l];if(!A||!f)return 1/0;let I=(n||a())-f;return A-I},this.#y=o=>{let l=r[o],A=t[o];return!!A&&!!l&&(n||a())-l>A}}#w=()=>{};#c=()=>{};#k=()=>{};#y=()=>!1;#N(){let t=new zve(this.#e);this.#g=0,this.#S=t,this.#x=r=>{this.#g-=t[r],t[r]=0},this.#F=(r,n,a,o)=>{if(this.#A(n))return 0;if(!Loe(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(n,r),!Loe(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#G=(r,n,a)=>{if(t[r]=n,this.#t){let o=this.#t-t[r];for(;this.#g>o;)this.#L(!0)}this.#g+=t[r],a&&(a.entrySize=n,a.totalCalculatedSize=this.#g)}}#x=t=>{};#G=(t,r,n)=>{};#F=(t,r,n,a)=>{if(n||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#T({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#d;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#I));)r=this.#f[r]}*#R({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#I;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#d));)r=this.#m[r]}#Z(t){return t!==void 0&&this.#l.get(this.#u[t])===t}*entries(){for(let t of this.#T())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*rentries(){for(let t of this.#R())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*keys(){for(let t of this.#T()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*rkeys(){for(let t of this.#R()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*values(){for(let t of this.#T())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}*rvalues(){for(let t of this.#R())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#u[n],this))return this.get(this.#u[n],r)}}forEach(t,r=this){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}rforEach(t,r=this){for(let n of this.#R()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}purgeStale(){let t=!1;for(let r of this.#R({allowStale:!0}))this.#y(r)&&(this.#D(this.#u[r],"expire"),t=!0);return t}info(t){let r=this.#l.get(t);if(r===void 0)return;let n=this.#a[r],a=this.#A(n)?n.__staleWhileFetching:n;if(a===void 0)return;let o={value:a};if(this.#C&&this.#v){let l=this.#C[r],A=this.#v[r];if(l&&A){let f=l-(jve.now()-A);o.ttl=f,o.start=Date.now()}}return this.#S&&(o.size=this.#S[r]),o}dump(){let t=[];for(let r of this.#T({allowStale:!0})){let n=this.#u[r],a=this.#a[r],o=this.#A(a)?a.__staleWhileFetching:a;if(o===void 0||n===void 0)continue;let l={value:o};if(this.#C&&this.#v){l.ttl=this.#C[r];let A=jve.now()-this.#v[r];l.start=Math.floor(Date.now()-A)}this.#S&&(l.size=this.#S[r]),t.unshift([n,l])}return t}load(t){this.clear();for(let[r,n]of t){if(n.start){let a=Date.now()-n.start;n.start=jve.now()-a}this.set(r,n.value,n)}}set(t,r,n={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:l=this.noDisposeOnSet,sizeCalculation:A=this.sizeCalculation,status:f}=n,{noUpdateTTL:I=this.noUpdateTTL}=n,C=this.#F(t,r,n.size||0,A);if(this.maxEntrySize&&C>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#D(t,"set"),this;let b=this.#o===0?void 0:this.#l.get(t);if(b===void 0)b=this.#o===0?this.#d:this.#b.length!==0?this.#b.pop():this.#o===this.#e?this.#L(!1):this.#o,this.#u[b]=t,this.#a[b]=r,this.#l.set(t,b),this.#m[this.#d]=b,this.#f[b]=this.#d,this.#d=b,this.#o++,this.#G(b,C,f),f&&(f.set="add"),I=!1;else{this.#W(b);let E=this.#a[b];if(r!==E){if(this.#_&&this.#A(E)){E.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:N}=E;N!==void 0&&!l&&(this.#E&&this.#n?.(N,t,"set"),this.#p&&this.#h?.push([N,t,"set"]))}else l||(this.#E&&this.#n?.(E,t,"set"),this.#p&&this.#h?.push([E,t,"set"]));if(this.#x(b),this.#G(b,C,f),this.#a[b]=r,f){f.set="replace";let N=E&&this.#A(E)?E.__staleWhileFetching:E;N!==void 0&&(f.oldValue=N)}}else f&&(f.set="update")}if(a!==0&&!this.#C&&this.#B(),this.#C&&(I||this.#k(b,a,o),f&&this.#c(f,b)),!l&&this.#p&&this.#h){let E=this.#h,N;for(;N=E?.shift();)this.#r?.(...N)}return this}pop(){try{for(;this.#o;){let t=this.#a[this.#I];if(this.#L(!0),this.#A(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#p&&this.#h){let t=this.#h,r;for(;r=t?.shift();)this.#r?.(...r)}}}#L(t){let r=this.#I,n=this.#u[r],a=this.#a[r];return this.#_&&this.#A(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(a,n,"evict"),this.#p&&this.#h?.push([a,n,"evict"])),this.#x(r),t&&(this.#u[r]=void 0,this.#a[r]=void 0,this.#b.push(r)),this.#o===1?(this.#I=this.#d=0,this.#b.length=0):this.#I=this.#m[r],this.#l.delete(n),this.#o--,r}has(t,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:a}=r,o=this.#l.get(t);if(o!==void 0){let l=this.#a[o];if(this.#A(l)&&l.__staleWhileFetching===void 0)return!1;if(this.#y(o))a&&(a.has="stale",this.#c(a,o));else return n&&this.#w(o),a&&(a.has="hit",this.#c(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:n=this.allowStale}=r,a=this.#l.get(t);if(a===void 0||!n&&this.#y(a))return;let o=this.#a[a];return this.#A(o)?o.__staleWhileFetching:o}#V(t,r,n,a){let o=r===void 0?void 0:this.#a[r];if(this.#A(o))return o;let l=new Wdt,{signal:A}=n;A?.addEventListener("abort",()=>l.abort(A.reason),{signal:l.signal});let f={signal:l.signal,options:n,context:a},I=(F,Q=!1)=>{let{aborted:X}=l.signal,ae=n.ignoreFetchAbort&&F!==void 0;if(n.status&&(X&&!Q?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,ae&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),X&&!ae&&!Q)return b(l.signal.reason);let ne=N;return this.#a[r]===N&&(F===void 0?ne.__staleWhileFetching?this.#a[r]=ne.__staleWhileFetching:this.#D(t,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(t,F,f.options))),F},C=F=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=F),b(F)),b=F=>{let{aborted:Q}=l.signal,X=Q&&n.allowStaleOnFetchAbort,ae=X||n.allowStaleOnFetchRejection,ne=ae||n.noDeleteOnFetchRejection,ce=N;if(this.#a[r]===N&&(!ne||ce.__staleWhileFetching===void 0?this.#D(t,"fetch"):X||(this.#a[r]=ce.__staleWhileFetching)),ae)return n.status&&ce.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),ce.__staleWhileFetching;if(ce.__returned===ce)throw F},E=(F,Q)=>{let X=this.#i?.(t,o,f);X&&X instanceof Promise&&X.then(ae=>F(ae===void 0?void 0:ae),Q),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(F(void 0),n.allowStaleOnFetchAbort&&(F=ae=>I(ae,!0)))})};n.status&&(n.status.fetchDispatched=!0);let N=new Promise(E).then(I,C),B=Object.assign(N,{__abortController:l,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,B,{...f.options,status:void 0}),r=this.#l.get(t)):this.#a[r]=B,B}#A(t){if(!this.#_)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Wdt}async fetch(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:l=this.ttl,noDisposeOnSet:A=this.noDisposeOnSet,size:f=0,sizeCalculation:I=this.sizeCalculation,noUpdateTTL:C=this.noUpdateTTL,noDeleteOnFetchRejection:b=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:E=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:B=this.allowStaleOnFetchAbort,context:F,forceRefresh:Q=!1,status:X,signal:ae}=r;if(!this.#_)return X&&(X.fetch="get"),this.get(t,{allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:X});let ne={allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:l,noDisposeOnSet:A,size:f,sizeCalculation:I,noUpdateTTL:C,noDeleteOnFetchRejection:b,allowStaleOnFetchRejection:E,allowStaleOnFetchAbort:B,ignoreFetchAbort:N,status:X,signal:ae},ce=this.#l.get(t);if(ce===void 0){X&&(X.fetch="miss");let fe=this.#V(t,ce,ne,F);return fe.__returned=fe}else{let fe=this.#a[ce];if(this.#A(fe)){let De=n&&fe.__staleWhileFetching!==void 0;return X&&(X.fetch="inflight",De&&(X.returnedStale=!0)),De?fe.__staleWhileFetching:fe.__returned=fe}let ue=this.#y(ce);if(!Q&&!ue)return X&&(X.fetch="hit"),this.#W(ce),a&&this.#w(ce),X&&this.#c(X,ce),fe;let de=this.#V(t,ce,ne,F),Se=de.__staleWhileFetching!==void 0&&n;return X&&(X.fetch=ue?"stale":"refresh",Se&&ue&&(X.returnedStale=!0)),Se?de.__staleWhileFetching:de.__returned=de}}async forceFetch(t,r={}){let n=await this.fetch(t,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(t,r={}){let n=this.#s;if(!n)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...l}=r,A=this.get(t,l);if(!o&&A!==void 0)return A;let f=n(t,A,{options:l,context:a});return this.set(t,f,l),f}get(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:l}=r,A=this.#l.get(t);if(A!==void 0){let f=this.#a[A],I=this.#A(f);return l&&this.#c(l,A),this.#y(A)?(l&&(l.get="stale"),I?(l&&n&&f.__staleWhileFetching!==void 0&&(l.returnedStale=!0),n?f.__staleWhileFetching:void 0):(o||this.#D(t,"expire"),l&&n&&(l.returnedStale=!0),n?f:void 0)):(l&&(l.get="hit"),I?f.__staleWhileFetching:(this.#W(A),a&&this.#w(A),f))}else l&&(l.get="miss")}#P(t,r){this.#f[r]=t,this.#m[t]=r}#W(t){t!==this.#d&&(t===this.#I?this.#I=this.#m[t]:this.#P(this.#f[t],this.#m[t]),this.#P(this.#d,t),this.#d=t)}delete(t){return this.#D(t,"delete")}#D(t,r){let n=!1;if(this.#o!==0){let a=this.#l.get(t);if(a!==void 0)if(n=!0,this.#o===1)this.#O(r);else{this.#x(a);let o=this.#a[a];if(this.#A(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(o,t,r),this.#p&&this.#h?.push([o,t,r])),this.#l.delete(t),this.#u[a]=void 0,this.#a[a]=void 0,a===this.#d)this.#d=this.#f[a];else if(a===this.#I)this.#I=this.#m[a];else{let l=this.#f[a];this.#m[l]=this.#m[a];let A=this.#m[a];this.#f[A]=this.#f[a]}this.#o--,this.#b.push(a)}}if(this.#p&&this.#h?.length){let a=this.#h,o;for(;o=a?.shift();)this.#r?.(...o)}return n}clear(){return this.#O("delete")}#O(t){for(let r of this.#R({allowStale:!0})){let n=this.#a[r];if(this.#A(n))n.__abortController.abort(new Error("deleted"));else{let a=this.#u[r];this.#E&&this.#n?.(n,a,t),this.#p&&this.#h?.push([n,a,t])}}if(this.#l.clear(),this.#a.fill(void 0),this.#u.fill(void 0),this.#C&&this.#v&&(this.#C.fill(0),this.#v.fill(0)),this.#S&&this.#S.fill(0),this.#I=0,this.#d=0,this.#b.length=0,this.#g=0,this.#o=0,this.#p&&this.#h){let r=this.#h,n;for(;n=r?.shift();)this.#r?.(...n)}}};Odt.LRUCache=pfr});var YWn=H((Kql,HWn)=>{"use strict";var M_=(...e)=>e.every(t=>t)?e.join(""):"",nT=e=>e?encodeURIComponent(e):"",MWn=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),BXo={sshtemplate:({domain:e,user:t,project:r,committish:n})=>`git@${e}:${t}/${r}.git${M_("#",n)}`,sshurltemplate:({domain:e,user:t,project:r,committish:n})=>`git+ssh://git@${e}/${t}/${r}.git${M_("#",n)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a,path:o})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:n,treepath:a})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${nT(n||"HEAD")}/${o}${M_("#",A(l||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:n,blobpath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${nT(n||"HEAD")}/${o}${M_("#",A(l||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:n,committish:a})=>`https://${e}/${t}/${r}${M_("/",n,"/",nT(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/raw/${nT(n||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:n})=>`${e}:${t}/${r}${M_("#",n)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${M_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:MWn},Voe={};Voe.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:n,path:a})=>`https://${M_(e,"@")}raw.githubusercontent.com/${t}/${r}/${nT(n||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://codeload.${e}/${t}/${r}/tar.gz/${nT(n||"HEAD")}`,extract:e=>{let[,t,r,n,a]=e.pathname.split("/",5);if(!(n&&n!=="tree")&&(n||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};Voe.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,editpath:l})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n||"HEAD"),"/",o,l)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/get/${nT(n||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["get"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};Voe.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${nT(n||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),n=r.pop();n.endsWith(".git")&&(n=n.slice(0,-4));let a=r.join("/");if(!(!a||!n))return{user:a,project:n,committish:e.hash.slice(1)}}};Voe.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${M_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${M_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a})=>`https://${e}/${t}/${r}${M_("/",nT(n))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${M_("/",nT(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${M_("/",nT(r))}${M_("#",a(n))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${M_("/",nT(r))}${M_("#",a(n))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${M_("/",nT(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${M_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:n})=>`https://gist.githubusercontent.com/${e}/${t}/raw${M_("/",nT(r))}/${n}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${M_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${M_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${M_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${nT(t||"HEAD")}`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(n!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+MWn(e)}};Voe.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/blob/${nT(n)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}.git${M_("#",n)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/archive/${nT(n)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["archive"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries(Voe))Voe[e]=Object.assign({},BXo,t);HWn.exports=Voe});var Ifr=H((jql,XWn)=>{var wXo=wt("url"),ffr=(e,t,r)=>{let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)},QWn=e=>{try{return new wXo.URL(e)}catch{}},TXo=(e,t)=>{let r=e.indexOf(":"),n=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,n))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},RXo=e=>{let t=ffr(e,"@","#"),r=ffr(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),ffr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};XWn.exports=(e,t)=>{let r=t?TXo(e,t):e;return QWn(r)||QWn(RXo(r))}});var UWn=H((zql,JWn)=>{"use strict";var NXo=Ifr(),DXo=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),n=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),l=e.indexOf("@"),A=!o||t>-1&&o.index>t,f=l===-1||t>-1&&l>t,I=a===-1||t>-1&&a>t,C=n===-1||t>-1&&n>t,b=r>0,E=t>-1?e[t-1]!=="/":!e.endsWith("/"),N=!e.startsWith(".");return A&&b&&E&&N&&f&&I&&C};JWn.exports=(e,t,{gitHosts:r,protocols:n})=>{if(!e)return;let a=DXo(e)?`github:${e}`:e,o=NXo(a,n);if(!o)return;let l=r.byShortcut[o.protocol],A=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=l||A;if(!f)return;let I=r[l||A],C=null;n[o.protocol]?.auth&&(o.username||o.password)&&(C=`${o.username}${o.password?":"+o.password:""}`);let b=null,E=null,N=null,B=null;try{if(l){let F=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,Q=F.indexOf("@");Q>-1&&(F=F.slice(Q+1));let X=F.lastIndexOf("/");X>-1?(E=decodeURIComponent(F.slice(0,X)),E||(E=null),N=decodeURIComponent(F.slice(X+1))):N=decodeURIComponent(F),N.endsWith(".git")&&(N=N.slice(0,-4)),o.hash&&(b=decodeURIComponent(o.hash.slice(1))),B="shortcut"}else{if(!I.protocols.includes(o.protocol))return;let F=I.extract(o);if(!F)return;E=F.user&&decodeURIComponent(F.user),N=decodeURIComponent(F.project),b=decodeURIComponent(F.committish),B=n[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(F){if(F instanceof URIError)return;throw F}return[f,E,C,N,b,B,t]}});var mfr=H((qql,KWn)=>{"use strict";var{LRUCache:kXo}=yIe(),xXo=YWn(),GXo=UWn(),FXo=Ifr(),hfr=new kXo({max:1e3}),Mdt=class e{constructor(t,r,n,a,o,l,A={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:n,project:a,committish:o,default:l,opts:A})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let n=t+JSON.stringify(r||{});if(!hfr.has(n)){let a=GXo(t,r,{gitHosts:e.#e,protocols:e.#t});hfr.set(n,a?new e(...a):void 0)}return hfr.get(n)}static parseUrl(t){return FXo(t)}#n(t,r){if(typeof t!="function")return null;let n={...this,...this.opts,...r};n.path||(n.path=""),n.path.startsWith("/")&&(n.path=n.path.slice(1)),n.noCommittish&&(n.committish=null);let a=t(n);return n.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#n(this.sshtemplate,t)}sshurl(t){return this.#n(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#n(this.browsetemplate,t):typeof r[0]!="string"?this.#n(this.browsetreetemplate,{...r[0],path:t}):this.#n(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#n(this.browseblobtemplate,{...r[0],path:t}):this.#n(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#n(this.docstemplate,t)}bugs(t){return this.#n(this.bugstemplate,t)}https(t){return this.#n(this.httpstemplate,t)}git(t){return this.#n(this.gittemplate,t)}shortcut(t){return this.#n(this.shortcuttemplate,t)}path(t){return this.#n(this.pathtemplate,t)}tarball(t){return this.#n(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#n(this.filetemplate,{...r,path:t})}edit(t,r){return this.#n(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(xXo))Mdt.addHost(e,t);KWn.exports=Mdt});var zWn=H(($ql,jWn)=>{"use strict";var{URL:ZXo}=wt("url"),LXo=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),VXo=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),PXo=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);jWn.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new ZXo(t,"https://example.com/"),n=a=>({browse:OXo(r,a),domain:r.host,project:a[2]||null,type:WXo(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=VXo.exec(r.pathname)||[];return n(a)}if(r.host.includes("codeload.github.com")){let a=PXo.exec(r.pathname)||[];return n(a)}}return n(LXo.exec(r.pathname)||[])};function WXo({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function OXo(e,t){let n=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>n}});var Cfr=H((r$l,HXo)=>{HXo.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var $Wn=H((n$l,YXo)=>{YXo.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var eOn=H((i$l,QXo)=>{QXo.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var rOn=H((s$l,tOn)=>{"use strict";var XXo=[].concat(Cfr()).concat($Wn()),JXo=eOn();tOn.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return B&&{type:"OPERATOR",string:B}}function l(){return n(/[A-Za-z0-9-.]+/)}function A(){var B=l();if(!B)throw new Error("Expected idstring at offset "+t);return B}function f(){if(n("DocumentRef-")){var B=A();return{type:"DOCUMENTREF",string:B}}}function I(){if(n("LicenseRef-")){var B=A();return{type:"LICENSEREF",string:B}}}function C(){var B=t,F=l();if(XXo.indexOf(F)!==-1)return{type:"LICENSE",string:F};if(JXo.indexOf(F)!==-1)return{type:"EXCEPTION",string:F};t=B}function b(){return o()||f()||I()||C()}for(var E=[];r()&&(a(),!!r());){var N=b();if(!N)throw new Error("Unexpected `"+e[t]+"` at offset "+t);E.push(N)}return E}});var iOn=H((o$l,nOn)=>{"use strict";nOn.exports=function(e){var t=0;function r(){return t{"use strict";var UXo=rOn(),KXo=iOn();sOn.exports=function(e){return KXo(UXo(e))}});var pOn=H((c$l,dOn)=>{var jXo=_fr(),zXo=Cfr();function Hdt(e){try{return jXo(e),!0}catch{return!1}}function AOn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var oOn=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(AOn),qXo=0,$Xo=1,aOn=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],yfr=zXo.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),e4o=Object.keys(yfr).map(function(t){return[t,yfr[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});yfr=void 0;var cOn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(e4o).sort(AOn),t4o=0,r4o=1,lOn=function(e){for(var t=0;t-1)return n[r4o]}return null},gOn=function(e,t){for(var r=0;r-1){var o=e.replace(a,n[$Xo]),l=t(o);if(l!==null)return l}}return null};dOn.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function n(A){return r?n4o(A):A}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),Hdt(e))return n(e);var o=e.replace(/\+$/,"").trim();if(Hdt(o))return n(o);var l=lOn(e);return l!==null||(l=gOn(e,function(A){return Hdt(A)?A:lOn(A)}),l!==null)||(l=uOn(e),l!==null)||(l=gOn(e,uOn),l!==null)?n(l):null};function n4o(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var mOn=H((l$l,hOn)=>{var i4o=_fr(),s4o=pOn(),fOn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',o4o=/^SEE LICEN[CS]E IN (.+)$/;function IOn(e,t){return t.slice(0,e.length)===e}function bfr(e){if(e.hasOwnProperty("license")){var t=e.license;return IOn("LicenseRef",t)||IOn("DocumentRef",t)}else return bfr(e.left)||bfr(e.right)}hOn.exports=function(e){var t;try{t=i4o(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=o4o.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var n={validForOldPackages:!1,validForNewPackages:!1,warnings:[fOn]};if(e.trim().length!==0){var a=s4o(e);a&&n.warnings.push('license is similar to the valid expression "'+a+'"')}return n}return bfr(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[fOn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var _On=H((u$l,COn)=>{COn.exports=a4o;function a4o(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` -`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,n=t+1;for(;n{c4o.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var vOn=H((A$l,SOn)=>{var l4o=k6t(),u4o=x6t(),g4o=mOn(),Ydt=mfr(),A4o=wt("node:module"),d4o=["dependencies","devDependencies","optionalDependencies"],p4o=_On(),Efr=wt("url"),Poe=yOn(),bOn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),h4o(e.name,r,t.allowLegacyCase),A4o.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=p4o(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=Ydt.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")bOn(e.bugs)?e.bugs={email:e.bugs}:Efr.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{E4o(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&Efr.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&bOn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=Ydt.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;Efr.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!g4o(t).validForNewPackages)return this.warn("invalidLicense")}};function f4o(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function I4o(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function h4o(e,t,r){if(e.charAt(0)==="."||!(f4o(e)||I4o(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function EOn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function m4o(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,n=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+n}function C4o(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),n=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),n&&(a.email=n[1]),r&&(a.url=r[1]),a}function _4o(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(n){r[n]=t[n]}),e.dependencies=r}}function y4o(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var n={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),l=a.join("");l=l.trim(),l=l.replace(/^@/,""),n[o]=l}),n}function b4o(e,t){d4o.forEach(function(r){e[r]&&(e[r]=y4o(e[r],r,t))})}function E4o(e,t){e&&Object.keys(e).forEach(function(r){Poe.bugs[r]&&(t("typo",r,Poe.bugs[r],"bugs"),e[Poe.bugs[r]]=e[r],delete e[r])})}});var BOn=H((d$l,S4o)=>{S4o.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var ROn=H((p$l,TOn)=>{var wOn=wt("util"),Sfr=BOn();TOn.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return v4o.apply(null,e);var r=Sfr[t]?Sfr[t]:t+": '%s'";return e.unshift(r),wOn.format.apply(null,e)};function v4o(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),wOn.format(Sfr.typo,e,t)}});var wfr=H((f$l,kOn)=>{kOn.exports=NOn;var vfr=vOn();NOn.fixer=vfr;var B4o=ROn(),w4o=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],T4o=["dependencies","people","typos"],Bfr=w4o.map(function(e){return DOn(e)+"Field"});Bfr=Bfr.concat(T4o);function NOn(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),vfr.warn=function(){t(B4o.apply(null,arguments))},Bfr.forEach(function(n){vfr["fix"+DOn(n)](e,r)}),e._id=e.name+"@"+e.version}function DOn(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var Jdt=H((C$l,Tfr)=>{var Xdt=process||{},ZOn=Xdt.argv||[],Qdt=Xdt.env||{},k4o=!(Qdt.NO_COLOR||ZOn.includes("--no-color"))&&(!!Qdt.FORCE_COLOR||ZOn.includes("--color")||Xdt.platform==="win32"||(Xdt.stdout||{}).isTTY&&Qdt.TERM!=="dumb"||!!Qdt.CI),x4o=(e,t,r=e)=>n=>{let a=""+n,o=a.indexOf(t,e.length);return~o?e+G4o(a,t,r,o)+t:e+a+t},G4o=(e,t,r,n)=>{let a="",o=0;do a+=e.substring(o,n)+r,o=n+t.length,n=e.indexOf(t,o);while(~n);return a+e.substring(o)},LOn=(e=k4o)=>{let t=e?x4o:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};Tfr.exports=LOn();Tfr.exports.createColors=LOn});var Rfr=H(Udt=>{Object.defineProperty(Udt,"__esModule",{value:!0});Udt.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;Udt.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var MOn=H(pMe=>{"use strict";Object.defineProperty(pMe,"__esModule",{value:!0});pMe.isIdentifierChar=OOn;pMe.isIdentifierName=V4o;pMe.isIdentifierStart=WOn;var Dfr="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",VOn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",F4o=new RegExp("["+Dfr+"]"),Z4o=new RegExp("["+Dfr+VOn+"]");Dfr=VOn=null;var POn=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],L4o=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Nfr(e,t){let r=65536;for(let n=0,a=t.length;ne)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function WOn(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&F4o.test(String.fromCharCode(e)):Nfr(e,POn)}function OOn(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Z4o.test(String.fromCharCode(e)):Nfr(e,POn)||Nfr(e,L4o)}function V4o(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(bIe,"__esModule",{value:!0});bIe.isKeyword=H4o;bIe.isReservedWord=HOn;bIe.isStrictBindOnlyReservedWord=QOn;bIe.isStrictBindReservedWord=M4o;bIe.isStrictReservedWord=YOn;var kfr={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},P4o=new Set(kfr.keyword),W4o=new Set(kfr.strict),O4o=new Set(kfr.strictBind);function HOn(e,t){return t&&e==="await"||e==="enum"}function YOn(e,t){return HOn(e,t)||W4o.has(e)}function QOn(e){return O4o.has(e)}function M4o(e,t){return YOn(e,t)||QOn(e)}function H4o(e){return P4o.has(e)}});var Gfr=H(c8=>{"use strict";Object.defineProperty(c8,"__esModule",{value:!0});Object.defineProperty(c8,"isIdentifierChar",{enumerable:!0,get:function(){return xfr.isIdentifierChar}});Object.defineProperty(c8,"isIdentifierName",{enumerable:!0,get:function(){return xfr.isIdentifierName}});Object.defineProperty(c8,"isIdentifierStart",{enumerable:!0,get:function(){return xfr.isIdentifierStart}});Object.defineProperty(c8,"isKeyword",{enumerable:!0,get:function(){return fMe.isKeyword}});Object.defineProperty(c8,"isReservedWord",{enumerable:!0,get:function(){return fMe.isReservedWord}});Object.defineProperty(c8,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return fMe.isStrictBindOnlyReservedWord}});Object.defineProperty(c8,"isStrictBindReservedWord",{enumerable:!0,get:function(){return fMe.isStrictBindReservedWord}});Object.defineProperty(c8,"isStrictReservedWord",{enumerable:!0,get:function(){return fMe.isStrictReservedWord}});var xfr=MOn(),fMe=XOn()});var r3n=H(IMe=>{"use strict";Object.defineProperty(IMe,"__esModule",{value:!0});var Ffr=Jdt(),JOn=Rfr(),UOn=Gfr();function Y4o(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:Ffr.isColorSupported}var Kdt=(e,t)=>r=>e(t(r));function zOn(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:Kdt(Kdt(e.white,e.bgRed),e.bold),gutter:e.gray,marker:Kdt(e.red,e.bold),message:Kdt(e.red,e.bold),reset:e.reset}}var Q4o=zOn(Ffr.createColors(!0)),X4o=zOn(Ffr.createColors(!1));function qOn(e){return e?Q4o:X4o}var J4o=new Set(["as","async","from","get","of","set"]),U4o=/\r\n|[\n\r\u2028\u2029]/,K4o=/^[()[\]{}]$/,$On;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if(UOn.isKeyword(r.value)||UOn.isStrictReservedWord(r.value,!0)||J4o.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="t[n](o)).join(` -`):r+=a;return r}var KOn=!1,jOn=/\r\n|[\n\r\u2028\u2029]/;function j4o(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let X=t[Q-1].length;B[Q]=[f,X-f+1]}else if(F===N)B[Q]=[0,C];else{let X=t[Q-F].length;B[Q]=[0,X]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function t3n(e,t,r={}){let n=r.forceColor||Y4o()&&r.highlightCode,a=qOn(n),o=e.split(jOn),{start:l,end:A,markerLines:f}=j4o(t,o,r),I=t.start&&typeof t.start.column=="number",C=String(A).length,E=(n?e3n(e):e).split(jOn,A).slice(l,A).map((N,B)=>{let F=l+1+B,X=` ${` ${F}`.slice(-C)} |`,ae=f[F],ne=!f[F+1];if(ae){let ce="";if(Array.isArray(ae)){let fe=N.slice(0,Math.max(ae[0]-1,0)).replace(/[^\t]/g," "),ue=ae[1]||1;ce=[` + `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(t,0,n);var a=this.popStack();n.splice(1,0,a),this.push(this.source.functionCall(r,"call",n))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,n,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,n)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,n){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},resolvePath:function(t,r,n,a,o){var l=this;if(this.options.strict||this.options.assumeObjects){this.push(mXo(this.options.strict&&o,this,r,n,t));return}for(var A=r.length;nthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,n=t.length;r{"use strict";Pdt.__esModule=!0;function fMe(e){return e&&e.__esModule?e:{default:e}}var CXo=xPn(),_Xo=fMe(CXo),yXo=Hpr(),bXo=fMe(yXo),dfr=XPn(),pfr=jPn(),EXo=RWn(),SXo=fMe(EXo),vXo=Rdt(),BXo=fMe(vXo),wXo=Ppr(),TXo=fMe(wXo),RXo=_Xo.default.create;function NWn(){var e=RXo();return e.compile=function(t,r){return pfr.compile(t,r,e)},e.precompile=function(t,r){return pfr.precompile(t,r,e)},e.AST=bXo.default,e.Compiler=pfr.Compiler,e.JavaScriptCompiler=SXo.default,e.Parser=dfr.parser,e.parse=dfr.parse,e.parseWithoutProcessing=dfr.parseWithoutProcessing,e}var Kve=NWn();Kve.create=NWn;TXo.default(Kve);Kve.Visitor=BXo.default;Kve.default=Kve;Pdt.default=Kve;DWn.exports=Pdt.default});var xWn=H(Wdt=>{"use strict";Wdt.__esModule=!0;Wdt.print=xXo;Wdt.PrintVisitor=Vv;function NXo(e){return e&&e.__esModule?e:{default:e}}var DXo=Rdt(),kXo=NXo(DXo);function xXo(e){return new Vv().accept(e)}function Vv(){this.padding=0}Vv.prototype=new kXo.default;Vv.prototype.pad=function(e){for(var t="",r=0,n=this.padding;r "+t+" }}")};Vv.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Vv.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Vv.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Vv.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(Hdt,"__esModule",{value:!0});Hdt.LRUCache=void 0;var zve=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,XWn=new Set,Ifr=typeof process=="object"&&process?process:{},JWn=(e,t,r,n)=>{typeof Ifr.emitWarning=="function"?Ifr.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)},Mdt=globalThis.AbortController,QWn=globalThis.AbortSignal;if(typeof Mdt>"u"){QWn=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,a){this._onabort.push(a)}},Mdt=class{constructor(){t()}signal=new QWn;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let a of this.signal._onabort)a(n);this.signal.onabort?.(n)}}};let e=Ifr.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,JWn("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var OXo=e=>!XWn.has(e),P$l=Symbol("type"),Voe=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),UWn=e=>Voe(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?qve:null:null,qve=class extends Array{constructor(t){super(t),this.fill(0)}},hfr=class e{heap;length;static#e=!1;static create(t){let r=UWn(t);if(!r)return[];e.#e=!0;let n=new e(t,r);return e.#e=!1,n}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},mfr=class e{#e;#t;#n;#r;#i;#s;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#g;#l;#u;#a;#m;#f;#I;#d;#b;#h;#S;#v;#C;#E;#_;#p;static unsafeExposeInternals(t){return{starts:t.#v,ttls:t.#C,sizes:t.#S,keyMap:t.#l,keyList:t.#u,valList:t.#a,next:t.#m,prev:t.#f,get head(){return t.#I},get tail(){return t.#d},free:t.#b,isBackgroundFetch:r=>t.#A(r),backgroundFetch:(r,n,a,o)=>t.#V(r,n,a,o),moveToTail:r=>t.#W(r),indexes:r=>t.#T(r),rindexes:r=>t.#R(r),isStale:r=>t.#y(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#g}get size(){return this.#o}get fetchMethod(){return this.#i}get memoMethod(){return this.#s}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(t){let{max:r=0,ttl:n,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:l,updateAgeOnHas:A,allowStale:f,dispose:I,disposeAfter:C,noDisposeOnSet:b,noUpdateTTL:E,maxSize:N=0,maxEntrySize:B=0,sizeCalculation:F,fetchMethod:Q,memoMethod:X,noDeleteOnFetchRejection:ae,noDeleteOnStaleGet:ne,allowStaleOnFetchRejection:ce,allowStaleOnFetchAbort:fe,ignoreFetchAbort:ue}=t;if(r!==0&&!Voe(r))throw new TypeError("max option must be a nonnegative integer");let de=r?UWn(r):Array;if(!de)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=N,this.maxEntrySize=B||this.#t,this.sizeCalculation=F,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(X!==void 0&&typeof X!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#s=X,Q!==void 0&&typeof Q!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=Q,this.#_=!!Q,this.#l=new Map,this.#u=new Array(r).fill(void 0),this.#a=new Array(r).fill(void 0),this.#m=new de(r),this.#f=new de(r),this.#I=0,this.#d=0,this.#b=hfr.create(r),this.#o=0,this.#g=0,typeof I=="function"&&(this.#n=I),typeof C=="function"?(this.#r=C,this.#h=[]):(this.#r=void 0,this.#h=void 0),this.#E=!!this.#n,this.#p=!!this.#r,this.noDisposeOnSet=!!b,this.noUpdateTTL=!!E,this.noDeleteOnFetchRejection=!!ae,this.allowStaleOnFetchRejection=!!ce,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!ue,this.maxEntrySize!==0){if(this.#t!==0&&!Voe(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!Voe(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#N()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ne,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!A,this.ttlResolution=Voe(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=n||0,this.ttl){if(!Voe(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#B()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";OXo(be)&&(XWn.add(be),JWn("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#l.has(t)?1/0:0}#B(){let t=new qve(this.#e),r=new qve(this.#e);this.#C=t,this.#v=r,this.#k=(o,l,A=zve.now())=>{if(r[o]=l!==0?A:0,t[o]=l,l!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#y(o)&&this.#D(this.#u[o],"expire")},l+1);f.unref&&f.unref()}},this.#w=o=>{r[o]=t[o]!==0?zve.now():0},this.#c=(o,l)=>{if(t[l]){let A=t[l],f=r[l];if(!A||!f)return;o.ttl=A,o.start=f,o.now=n||a();let I=o.now-f;o.remainingTTL=A-I}};let n=0,a=()=>{let o=zve.now();if(this.ttlResolution>0){n=o;let l=setTimeout(()=>n=0,this.ttlResolution);l.unref&&l.unref()}return o};this.getRemainingTTL=o=>{let l=this.#l.get(o);if(l===void 0)return 0;let A=t[l],f=r[l];if(!A||!f)return 1/0;let I=(n||a())-f;return A-I},this.#y=o=>{let l=r[o],A=t[o];return!!A&&!!l&&(n||a())-l>A}}#w=()=>{};#c=()=>{};#k=()=>{};#y=()=>!1;#N(){let t=new qve(this.#e);this.#g=0,this.#S=t,this.#x=r=>{this.#g-=t[r],t[r]=0},this.#F=(r,n,a,o)=>{if(this.#A(n))return 0;if(!Voe(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(n,r),!Voe(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#G=(r,n,a)=>{if(t[r]=n,this.#t){let o=this.#t-t[r];for(;this.#g>o;)this.#L(!0)}this.#g+=t[r],a&&(a.entrySize=n,a.totalCalculatedSize=this.#g)}}#x=t=>{};#G=(t,r,n)=>{};#F=(t,r,n,a)=>{if(n||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#T({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#d;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#I));)r=this.#f[r]}*#R({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#I;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#d));)r=this.#m[r]}#Z(t){return t!==void 0&&this.#l.get(this.#u[t])===t}*entries(){for(let t of this.#T())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*rentries(){for(let t of this.#R())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*keys(){for(let t of this.#T()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*rkeys(){for(let t of this.#R()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*values(){for(let t of this.#T())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}*rvalues(){for(let t of this.#R())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#u[n],this))return this.get(this.#u[n],r)}}forEach(t,r=this){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}rforEach(t,r=this){for(let n of this.#R()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}purgeStale(){let t=!1;for(let r of this.#R({allowStale:!0}))this.#y(r)&&(this.#D(this.#u[r],"expire"),t=!0);return t}info(t){let r=this.#l.get(t);if(r===void 0)return;let n=this.#a[r],a=this.#A(n)?n.__staleWhileFetching:n;if(a===void 0)return;let o={value:a};if(this.#C&&this.#v){let l=this.#C[r],A=this.#v[r];if(l&&A){let f=l-(zve.now()-A);o.ttl=f,o.start=Date.now()}}return this.#S&&(o.size=this.#S[r]),o}dump(){let t=[];for(let r of this.#T({allowStale:!0})){let n=this.#u[r],a=this.#a[r],o=this.#A(a)?a.__staleWhileFetching:a;if(o===void 0||n===void 0)continue;let l={value:o};if(this.#C&&this.#v){l.ttl=this.#C[r];let A=zve.now()-this.#v[r];l.start=Math.floor(Date.now()-A)}this.#S&&(l.size=this.#S[r]),t.unshift([n,l])}return t}load(t){this.clear();for(let[r,n]of t){if(n.start){let a=Date.now()-n.start;n.start=zve.now()-a}this.set(r,n.value,n)}}set(t,r,n={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:l=this.noDisposeOnSet,sizeCalculation:A=this.sizeCalculation,status:f}=n,{noUpdateTTL:I=this.noUpdateTTL}=n,C=this.#F(t,r,n.size||0,A);if(this.maxEntrySize&&C>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#D(t,"set"),this;let b=this.#o===0?void 0:this.#l.get(t);if(b===void 0)b=this.#o===0?this.#d:this.#b.length!==0?this.#b.pop():this.#o===this.#e?this.#L(!1):this.#o,this.#u[b]=t,this.#a[b]=r,this.#l.set(t,b),this.#m[this.#d]=b,this.#f[b]=this.#d,this.#d=b,this.#o++,this.#G(b,C,f),f&&(f.set="add"),I=!1;else{this.#W(b);let E=this.#a[b];if(r!==E){if(this.#_&&this.#A(E)){E.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:N}=E;N!==void 0&&!l&&(this.#E&&this.#n?.(N,t,"set"),this.#p&&this.#h?.push([N,t,"set"]))}else l||(this.#E&&this.#n?.(E,t,"set"),this.#p&&this.#h?.push([E,t,"set"]));if(this.#x(b),this.#G(b,C,f),this.#a[b]=r,f){f.set="replace";let N=E&&this.#A(E)?E.__staleWhileFetching:E;N!==void 0&&(f.oldValue=N)}}else f&&(f.set="update")}if(a!==0&&!this.#C&&this.#B(),this.#C&&(I||this.#k(b,a,o),f&&this.#c(f,b)),!l&&this.#p&&this.#h){let E=this.#h,N;for(;N=E?.shift();)this.#r?.(...N)}return this}pop(){try{for(;this.#o;){let t=this.#a[this.#I];if(this.#L(!0),this.#A(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#p&&this.#h){let t=this.#h,r;for(;r=t?.shift();)this.#r?.(...r)}}}#L(t){let r=this.#I,n=this.#u[r],a=this.#a[r];return this.#_&&this.#A(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(a,n,"evict"),this.#p&&this.#h?.push([a,n,"evict"])),this.#x(r),t&&(this.#u[r]=void 0,this.#a[r]=void 0,this.#b.push(r)),this.#o===1?(this.#I=this.#d=0,this.#b.length=0):this.#I=this.#m[r],this.#l.delete(n),this.#o--,r}has(t,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:a}=r,o=this.#l.get(t);if(o!==void 0){let l=this.#a[o];if(this.#A(l)&&l.__staleWhileFetching===void 0)return!1;if(this.#y(o))a&&(a.has="stale",this.#c(a,o));else return n&&this.#w(o),a&&(a.has="hit",this.#c(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:n=this.allowStale}=r,a=this.#l.get(t);if(a===void 0||!n&&this.#y(a))return;let o=this.#a[a];return this.#A(o)?o.__staleWhileFetching:o}#V(t,r,n,a){let o=r===void 0?void 0:this.#a[r];if(this.#A(o))return o;let l=new Mdt,{signal:A}=n;A?.addEventListener("abort",()=>l.abort(A.reason),{signal:l.signal});let f={signal:l.signal,options:n,context:a},I=(F,Q=!1)=>{let{aborted:X}=l.signal,ae=n.ignoreFetchAbort&&F!==void 0;if(n.status&&(X&&!Q?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,ae&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),X&&!ae&&!Q)return b(l.signal.reason);let ne=N;return this.#a[r]===N&&(F===void 0?ne.__staleWhileFetching?this.#a[r]=ne.__staleWhileFetching:this.#D(t,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(t,F,f.options))),F},C=F=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=F),b(F)),b=F=>{let{aborted:Q}=l.signal,X=Q&&n.allowStaleOnFetchAbort,ae=X||n.allowStaleOnFetchRejection,ne=ae||n.noDeleteOnFetchRejection,ce=N;if(this.#a[r]===N&&(!ne||ce.__staleWhileFetching===void 0?this.#D(t,"fetch"):X||(this.#a[r]=ce.__staleWhileFetching)),ae)return n.status&&ce.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),ce.__staleWhileFetching;if(ce.__returned===ce)throw F},E=(F,Q)=>{let X=this.#i?.(t,o,f);X&&X instanceof Promise&&X.then(ae=>F(ae===void 0?void 0:ae),Q),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(F(void 0),n.allowStaleOnFetchAbort&&(F=ae=>I(ae,!0)))})};n.status&&(n.status.fetchDispatched=!0);let N=new Promise(E).then(I,C),B=Object.assign(N,{__abortController:l,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,B,{...f.options,status:void 0}),r=this.#l.get(t)):this.#a[r]=B,B}#A(t){if(!this.#_)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Mdt}async fetch(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:l=this.ttl,noDisposeOnSet:A=this.noDisposeOnSet,size:f=0,sizeCalculation:I=this.sizeCalculation,noUpdateTTL:C=this.noUpdateTTL,noDeleteOnFetchRejection:b=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:E=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:B=this.allowStaleOnFetchAbort,context:F,forceRefresh:Q=!1,status:X,signal:ae}=r;if(!this.#_)return X&&(X.fetch="get"),this.get(t,{allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:X});let ne={allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:l,noDisposeOnSet:A,size:f,sizeCalculation:I,noUpdateTTL:C,noDeleteOnFetchRejection:b,allowStaleOnFetchRejection:E,allowStaleOnFetchAbort:B,ignoreFetchAbort:N,status:X,signal:ae},ce=this.#l.get(t);if(ce===void 0){X&&(X.fetch="miss");let fe=this.#V(t,ce,ne,F);return fe.__returned=fe}else{let fe=this.#a[ce];if(this.#A(fe)){let De=n&&fe.__staleWhileFetching!==void 0;return X&&(X.fetch="inflight",De&&(X.returnedStale=!0)),De?fe.__staleWhileFetching:fe.__returned=fe}let ue=this.#y(ce);if(!Q&&!ue)return X&&(X.fetch="hit"),this.#W(ce),a&&this.#w(ce),X&&this.#c(X,ce),fe;let de=this.#V(t,ce,ne,F),Se=de.__staleWhileFetching!==void 0&&n;return X&&(X.fetch=ue?"stale":"refresh",Se&&ue&&(X.returnedStale=!0)),Se?de.__staleWhileFetching:de.__returned=de}}async forceFetch(t,r={}){let n=await this.fetch(t,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(t,r={}){let n=this.#s;if(!n)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...l}=r,A=this.get(t,l);if(!o&&A!==void 0)return A;let f=n(t,A,{options:l,context:a});return this.set(t,f,l),f}get(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:l}=r,A=this.#l.get(t);if(A!==void 0){let f=this.#a[A],I=this.#A(f);return l&&this.#c(l,A),this.#y(A)?(l&&(l.get="stale"),I?(l&&n&&f.__staleWhileFetching!==void 0&&(l.returnedStale=!0),n?f.__staleWhileFetching:void 0):(o||this.#D(t,"expire"),l&&n&&(l.returnedStale=!0),n?f:void 0)):(l&&(l.get="hit"),I?f.__staleWhileFetching:(this.#W(A),a&&this.#w(A),f))}else l&&(l.get="miss")}#P(t,r){this.#f[r]=t,this.#m[t]=r}#W(t){t!==this.#d&&(t===this.#I?this.#I=this.#m[t]:this.#P(this.#f[t],this.#m[t]),this.#P(this.#d,t),this.#d=t)}delete(t){return this.#D(t,"delete")}#D(t,r){let n=!1;if(this.#o!==0){let a=this.#l.get(t);if(a!==void 0)if(n=!0,this.#o===1)this.#O(r);else{this.#x(a);let o=this.#a[a];if(this.#A(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(o,t,r),this.#p&&this.#h?.push([o,t,r])),this.#l.delete(t),this.#u[a]=void 0,this.#a[a]=void 0,a===this.#d)this.#d=this.#f[a];else if(a===this.#I)this.#I=this.#m[a];else{let l=this.#f[a];this.#m[l]=this.#m[a];let A=this.#m[a];this.#f[A]=this.#f[a]}this.#o--,this.#b.push(a)}}if(this.#p&&this.#h?.length){let a=this.#h,o;for(;o=a?.shift();)this.#r?.(...o)}return n}clear(){return this.#O("delete")}#O(t){for(let r of this.#R({allowStale:!0})){let n=this.#a[r];if(this.#A(n))n.__abortController.abort(new Error("deleted"));else{let a=this.#u[r];this.#E&&this.#n?.(n,a,t),this.#p&&this.#h?.push([n,a,t])}}if(this.#l.clear(),this.#a.fill(void 0),this.#u.fill(void 0),this.#C&&this.#v&&(this.#C.fill(0),this.#v.fill(0)),this.#S&&this.#S.fill(0),this.#I=0,this.#d=0,this.#b.length=0,this.#g=0,this.#o=0,this.#p&&this.#h){let r=this.#h,n;for(;n=r?.shift();)this.#r?.(...n)}}};Hdt.LRUCache=mfr});var zWn=H((O$l,jWn)=>{"use strict";var M_=(...e)=>e.every(t=>t)?e.join(""):"",nT=e=>e?encodeURIComponent(e):"",KWn=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),MXo={sshtemplate:({domain:e,user:t,project:r,committish:n})=>`git@${e}:${t}/${r}.git${M_("#",n)}`,sshurltemplate:({domain:e,user:t,project:r,committish:n})=>`git+ssh://git@${e}/${t}/${r}.git${M_("#",n)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a,path:o})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:n,treepath:a})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${nT(n||"HEAD")}/${o}${M_("#",A(l||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:n,blobpath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${nT(n||"HEAD")}/${o}${M_("#",A(l||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:n,committish:a})=>`https://${e}/${t}/${r}${M_("/",n,"/",nT(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/raw/${nT(n||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:n})=>`${e}:${t}/${r}${M_("#",n)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${M_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:KWn},Poe={};Poe.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:n,path:a})=>`https://${M_(e,"@")}raw.githubusercontent.com/${t}/${r}/${nT(n||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://codeload.${e}/${t}/${r}/tar.gz/${nT(n||"HEAD")}`,extract:e=>{let[,t,r,n,a]=e.pathname.split("/",5);if(!(n&&n!=="tree")&&(n||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};Poe.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,editpath:l})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n||"HEAD"),"/",o,l)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/get/${nT(n||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["get"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};Poe.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${nT(n||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),n=r.pop();n.endsWith(".git")&&(n=n.slice(0,-4));let a=r.join("/");if(!(!a||!n))return{user:a,project:n,committish:e.hash.slice(1)}}};Poe.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${M_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${M_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a})=>`https://${e}/${t}/${r}${M_("/",nT(n))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${M_("/",nT(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${M_("/",nT(r))}${M_("#",a(n))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${M_("/",nT(r))}${M_("#",a(n))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${M_("/",nT(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${M_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:n})=>`https://gist.githubusercontent.com/${e}/${t}/raw${M_("/",nT(r))}/${n}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${M_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${M_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${M_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${nT(t||"HEAD")}`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(n!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+KWn(e)}};Poe.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/blob/${nT(n)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}.git${M_("#",n)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/archive/${nT(n)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["archive"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries(Poe))Poe[e]=Object.assign({},MXo,t);jWn.exports=Poe});var _fr=H((M$l,$Wn)=>{var HXo=wt("url"),Cfr=(e,t,r)=>{let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)},qWn=e=>{try{return new HXo.URL(e)}catch{}},YXo=(e,t)=>{let r=e.indexOf(":"),n=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,n))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},QXo=e=>{let t=Cfr(e,"@","#"),r=Cfr(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),Cfr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};$Wn.exports=(e,t)=>{let r=t?YXo(e,t):e;return qWn(r)||qWn(QXo(r))}});var tOn=H((H$l,eOn)=>{"use strict";var XXo=_fr(),JXo=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),n=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),l=e.indexOf("@"),A=!o||t>-1&&o.index>t,f=l===-1||t>-1&&l>t,I=a===-1||t>-1&&a>t,C=n===-1||t>-1&&n>t,b=r>0,E=t>-1?e[t-1]!=="/":!e.endsWith("/"),N=!e.startsWith(".");return A&&b&&E&&N&&f&&I&&C};eOn.exports=(e,t,{gitHosts:r,protocols:n})=>{if(!e)return;let a=JXo(e)?`github:${e}`:e,o=XXo(a,n);if(!o)return;let l=r.byShortcut[o.protocol],A=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=l||A;if(!f)return;let I=r[l||A],C=null;n[o.protocol]?.auth&&(o.username||o.password)&&(C=`${o.username}${o.password?":"+o.password:""}`);let b=null,E=null,N=null,B=null;try{if(l){let F=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,Q=F.indexOf("@");Q>-1&&(F=F.slice(Q+1));let X=F.lastIndexOf("/");X>-1?(E=decodeURIComponent(F.slice(0,X)),E||(E=null),N=decodeURIComponent(F.slice(X+1))):N=decodeURIComponent(F),N.endsWith(".git")&&(N=N.slice(0,-4)),o.hash&&(b=decodeURIComponent(o.hash.slice(1))),B="shortcut"}else{if(!I.protocols.includes(o.protocol))return;let F=I.extract(o);if(!F)return;E=F.user&&decodeURIComponent(F.user),N=decodeURIComponent(F.project),b=decodeURIComponent(F.committish),B=n[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(F){if(F instanceof URIError)return;throw F}return[f,E,C,N,b,B,t]}});var bfr=H((Y$l,rOn)=>{"use strict";var{LRUCache:UXo}=bIe(),KXo=zWn(),jXo=tOn(),zXo=_fr(),yfr=new UXo({max:1e3}),Ydt=class e{constructor(t,r,n,a,o,l,A={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:n,project:a,committish:o,default:l,opts:A})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let n=t+JSON.stringify(r||{});if(!yfr.has(n)){let a=jXo(t,r,{gitHosts:e.#e,protocols:e.#t});yfr.set(n,a?new e(...a):void 0)}return yfr.get(n)}static parseUrl(t){return zXo(t)}#n(t,r){if(typeof t!="function")return null;let n={...this,...this.opts,...r};n.path||(n.path=""),n.path.startsWith("/")&&(n.path=n.path.slice(1)),n.noCommittish&&(n.committish=null);let a=t(n);return n.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#n(this.sshtemplate,t)}sshurl(t){return this.#n(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#n(this.browsetemplate,t):typeof r[0]!="string"?this.#n(this.browsetreetemplate,{...r[0],path:t}):this.#n(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#n(this.browseblobtemplate,{...r[0],path:t}):this.#n(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#n(this.docstemplate,t)}bugs(t){return this.#n(this.bugstemplate,t)}https(t){return this.#n(this.httpstemplate,t)}git(t){return this.#n(this.gittemplate,t)}shortcut(t){return this.#n(this.shortcuttemplate,t)}path(t){return this.#n(this.pathtemplate,t)}tarball(t){return this.#n(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#n(this.filetemplate,{...r,path:t})}edit(t,r){return this.#n(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(KXo))Ydt.addHost(e,t);rOn.exports=Ydt});var iOn=H((Q$l,nOn)=>{"use strict";var{URL:qXo}=wt("url"),$Xo=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),e4o=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),t4o=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);nOn.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new qXo(t,"https://example.com/"),n=a=>({browse:n4o(r,a),domain:r.host,project:a[2]||null,type:r4o(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=e4o.exec(r.pathname)||[];return n(a)}if(r.host.includes("codeload.github.com")){let a=t4o.exec(r.pathname)||[];return n(a)}}return n($Xo.exec(r.pathname)||[])};function r4o({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function n4o(e,t){let n=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>n}});var Efr=H((U$l,s4o)=>{s4o.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var oOn=H((K$l,o4o)=>{o4o.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var aOn=H((j$l,a4o)=>{a4o.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var lOn=H((z$l,cOn)=>{"use strict";var c4o=[].concat(Efr()).concat(oOn()),l4o=aOn();cOn.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return B&&{type:"OPERATOR",string:B}}function l(){return n(/[A-Za-z0-9-.]+/)}function A(){var B=l();if(!B)throw new Error("Expected idstring at offset "+t);return B}function f(){if(n("DocumentRef-")){var B=A();return{type:"DOCUMENTREF",string:B}}}function I(){if(n("LicenseRef-")){var B=A();return{type:"LICENSEREF",string:B}}}function C(){var B=t,F=l();if(c4o.indexOf(F)!==-1)return{type:"LICENSE",string:F};if(l4o.indexOf(F)!==-1)return{type:"EXCEPTION",string:F};t=B}function b(){return o()||f()||I()||C()}for(var E=[];r()&&(a(),!!r());){var N=b();if(!N)throw new Error("Unexpected `"+e[t]+"` at offset "+t);E.push(N)}return E}});var gOn=H((q$l,uOn)=>{"use strict";uOn.exports=function(e){var t=0;function r(){return t{"use strict";var u4o=lOn(),g4o=gOn();AOn.exports=function(e){return g4o(u4o(e))}});var yOn=H((eeu,_On)=>{var A4o=Sfr(),d4o=Efr();function Qdt(e){try{return A4o(e),!0}catch{return!1}}function COn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var dOn=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(COn),p4o=0,f4o=1,pOn=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],vfr=d4o.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),I4o=Object.keys(vfr).map(function(t){return[t,vfr[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});vfr=void 0;var fOn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(I4o).sort(COn),h4o=0,m4o=1,IOn=function(e){for(var t=0;t-1)return n[m4o]}return null},mOn=function(e,t){for(var r=0;r-1){var o=e.replace(a,n[f4o]),l=t(o);if(l!==null)return l}}return null};_On.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function n(A){return r?C4o(A):A}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),Qdt(e))return n(e);var o=e.replace(/\+$/,"").trim();if(Qdt(o))return n(o);var l=IOn(e);return l!==null||(l=mOn(e,function(A){return Qdt(A)?A:IOn(A)}),l!==null)||(l=hOn(e),l!==null)||(l=mOn(e,hOn),l!==null)?n(l):null};function C4o(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var vOn=H((teu,SOn)=>{var _4o=Sfr(),y4o=yOn(),bOn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',b4o=/^SEE LICEN[CS]E IN (.+)$/;function EOn(e,t){return t.slice(0,e.length)===e}function Bfr(e){if(e.hasOwnProperty("license")){var t=e.license;return EOn("LicenseRef",t)||EOn("DocumentRef",t)}else return Bfr(e.left)||Bfr(e.right)}SOn.exports=function(e){var t;try{t=_4o(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=b4o.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var n={validForOldPackages:!1,validForNewPackages:!1,warnings:[bOn]};if(e.trim().length!==0){var a=y4o(e);a&&n.warnings.push('license is similar to the valid expression "'+a+'"')}return n}return Bfr(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[bOn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var wOn=H((reu,BOn)=>{BOn.exports=E4o;function E4o(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` +`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,n=t+1;for(;n{S4o.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var kOn=H((ieu,DOn)=>{var v4o=Z6t(),B4o=L6t(),w4o=vOn(),Xdt=bfr(),T4o=wt("node:module"),R4o=["dependencies","devDependencies","optionalDependencies"],N4o=wOn(),wfr=wt("url"),Woe=TOn(),ROn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),x4o(e.name,r,t.allowLegacyCase),T4o.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=N4o(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=Xdt.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")ROn(e.bugs)?e.bugs={email:e.bugs}:wfr.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{P4o(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&wfr.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&ROn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=Xdt.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;wfr.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!w4o(t).validForNewPackages)return this.warn("invalidLicense")}};function D4o(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function k4o(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function x4o(e,t,r){if(e.charAt(0)==="."||!(D4o(e)||k4o(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function NOn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function G4o(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,n=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+n}function F4o(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),n=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),n&&(a.email=n[1]),r&&(a.url=r[1]),a}function Z4o(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(n){r[n]=t[n]}),e.dependencies=r}}function L4o(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var n={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),l=a.join("");l=l.trim(),l=l.replace(/^@/,""),n[o]=l}),n}function V4o(e,t){R4o.forEach(function(r){e[r]&&(e[r]=L4o(e[r],r,t))})}function P4o(e,t){e&&Object.keys(e).forEach(function(r){Woe.bugs[r]&&(t("typo",r,Woe.bugs[r],"bugs"),e[Woe.bugs[r]]=e[r],delete e[r])})}});var xOn=H((seu,W4o)=>{W4o.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var ZOn=H((oeu,FOn)=>{var GOn=wt("util"),Tfr=xOn();FOn.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return O4o.apply(null,e);var r=Tfr[t]?Tfr[t]:t+": '%s'";return e.unshift(r),GOn.format.apply(null,e)};function O4o(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),GOn.format(Tfr.typo,e,t)}});var Dfr=H((aeu,POn)=>{POn.exports=LOn;var Rfr=kOn();LOn.fixer=Rfr;var M4o=ZOn(),H4o=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],Y4o=["dependencies","people","typos"],Nfr=H4o.map(function(e){return VOn(e)+"Field"});Nfr=Nfr.concat(Y4o);function LOn(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),Rfr.warn=function(){t(M4o.apply(null,arguments))},Nfr.forEach(function(n){Rfr["fix"+VOn(n)](e,r)}),e._id=e.name+"@"+e.version}function VOn(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var Kdt=H((geu,kfr)=>{var Udt=process||{},HOn=Udt.argv||[],Jdt=Udt.env||{},U4o=!(Jdt.NO_COLOR||HOn.includes("--no-color"))&&(!!Jdt.FORCE_COLOR||HOn.includes("--color")||Udt.platform==="win32"||(Udt.stdout||{}).isTTY&&Jdt.TERM!=="dumb"||!!Jdt.CI),K4o=(e,t,r=e)=>n=>{let a=""+n,o=a.indexOf(t,e.length);return~o?e+j4o(a,t,r,o)+t:e+a+t},j4o=(e,t,r,n)=>{let a="",o=0;do a+=e.substring(o,n)+r,o=n+t.length,n=e.indexOf(t,o);while(~n);return a+e.substring(o)},YOn=(e=U4o)=>{let t=e?K4o:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};kfr.exports=YOn();kfr.exports.createColors=YOn});var xfr=H(jdt=>{Object.defineProperty(jdt,"__esModule",{value:!0});jdt.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;jdt.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var KOn=H(IMe=>{"use strict";Object.defineProperty(IMe,"__esModule",{value:!0});IMe.isIdentifierChar=UOn;IMe.isIdentifierName=eJo;IMe.isIdentifierStart=JOn;var Ffr="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",QOn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",z4o=new RegExp("["+Ffr+"]"),q4o=new RegExp("["+Ffr+QOn+"]");Ffr=QOn=null;var XOn=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],$4o=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Gfr(e,t){let r=65536;for(let n=0,a=t.length;ne)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function JOn(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&z4o.test(String.fromCharCode(e)):Gfr(e,XOn)}function UOn(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&q4o.test(String.fromCharCode(e)):Gfr(e,XOn)||Gfr(e,$4o)}function eJo(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(EIe,"__esModule",{value:!0});EIe.isKeyword=sJo;EIe.isReservedWord=jOn;EIe.isStrictBindOnlyReservedWord=qOn;EIe.isStrictBindReservedWord=iJo;EIe.isStrictReservedWord=zOn;var Zfr={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},tJo=new Set(Zfr.keyword),rJo=new Set(Zfr.strict),nJo=new Set(Zfr.strictBind);function jOn(e,t){return t&&e==="await"||e==="enum"}function zOn(e,t){return jOn(e,t)||rJo.has(e)}function qOn(e){return nJo.has(e)}function iJo(e,t){return zOn(e,t)||qOn(e)}function sJo(e){return tJo.has(e)}});var Vfr=H(c8=>{"use strict";Object.defineProperty(c8,"__esModule",{value:!0});Object.defineProperty(c8,"isIdentifierChar",{enumerable:!0,get:function(){return Lfr.isIdentifierChar}});Object.defineProperty(c8,"isIdentifierName",{enumerable:!0,get:function(){return Lfr.isIdentifierName}});Object.defineProperty(c8,"isIdentifierStart",{enumerable:!0,get:function(){return Lfr.isIdentifierStart}});Object.defineProperty(c8,"isKeyword",{enumerable:!0,get:function(){return hMe.isKeyword}});Object.defineProperty(c8,"isReservedWord",{enumerable:!0,get:function(){return hMe.isReservedWord}});Object.defineProperty(c8,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return hMe.isStrictBindOnlyReservedWord}});Object.defineProperty(c8,"isStrictBindReservedWord",{enumerable:!0,get:function(){return hMe.isStrictBindReservedWord}});Object.defineProperty(c8,"isStrictReservedWord",{enumerable:!0,get:function(){return hMe.isStrictReservedWord}});var Lfr=KOn(),hMe=$On()});var l3n=H(mMe=>{"use strict";Object.defineProperty(mMe,"__esModule",{value:!0});var Pfr=Kdt(),e3n=xfr(),t3n=Vfr();function oJo(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:Pfr.isColorSupported}var zdt=(e,t)=>r=>e(t(r));function i3n(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:zdt(zdt(e.white,e.bgRed),e.bold),gutter:e.gray,marker:zdt(e.red,e.bold),message:zdt(e.red,e.bold),reset:e.reset}}var aJo=i3n(Pfr.createColors(!0)),cJo=i3n(Pfr.createColors(!1));function s3n(e){return e?aJo:cJo}var lJo=new Set(["as","async","from","get","of","set"]),uJo=/\r\n|[\n\r\u2028\u2029]/,gJo=/^[()[\]{}]$/,o3n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if(t3n.isKeyword(r.value)||t3n.isStrictReservedWord(r.value,!0)||lJo.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="t[n](o)).join(` +`):r+=a;return r}var r3n=!1,n3n=/\r\n|[\n\r\u2028\u2029]/;function AJo(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let X=t[Q-1].length;B[Q]=[f,X-f+1]}else if(F===N)B[Q]=[0,C];else{let X=t[Q-F].length;B[Q]=[0,X]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function c3n(e,t,r={}){let n=r.forceColor||oJo()&&r.highlightCode,a=s3n(n),o=e.split(n3n),{start:l,end:A,markerLines:f}=AJo(t,o,r),I=t.start&&typeof t.start.column=="number",C=String(A).length,E=(n?a3n(e):e).split(n3n,A).slice(l,A).map((N,B)=>{let F=l+1+B,X=` ${` ${F}`.slice(-C)} |`,ae=f[F],ne=!f[F+1];if(ae){let ce="";if(Array.isArray(ae)){let fe=N.slice(0,Math.max(ae[0]-1,0)).replace(/[^\t]/g," "),ue=ae[1]||1;ce=[` `,a.gutter(X.replace(/\d/g," "))," ",fe,a.marker("^").repeat(ue)].join(""),ne&&r.message&&(ce+=" "+a.message(r.message))}return[a.marker(">"),a.gutter(X),N.length>0?` ${N}`:"",ce].join("")}else return` ${a.gutter(X)}${N.length>0?` ${N}`:""}`}).join(` `);return r.message&&!I&&(E=`${" ".repeat(C+1)}${r.message} -${E}`),n?a.reset(E):E}function z4o(e,t,r,n={}){if(!KOn){KOn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),t3n(e,{start:{column:r,line:t}},n)}IMe.codeFrameColumns=t3n;IMe.default=z4o;IMe.highlight=e3n});function q4o(e,t){let r=n3n(e,` -`,t-1),n=t-r-1,a=0;for(let o=r;o>=0;o=n3n(e,` -`,o-1))a++;return{line:a,column:n}}function jdt(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let n=q4o(e,t);return r?{line:n.line+1,column:n.column+1}:n}var n3n,i3n=bc(()=>{n3n=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function Lfr(e,t,r){typeof t=="string"&&(r=t,t=void 0);let n;try{return JSON.parse(e,t)}catch(l){n=l.message}let a;e?(a=eJo(e,n),n=tJo(n)):n+=" while parsing empty string";let o=new Zfr(n);throw o.fileName=r,a&&(o.codeFrame=s3n(e,a),o.rawCodeFrame=s3n(e,a,!1)),o}var o3n,$4o,Zfr,s3n,eJo,tJo,a3n=bc(()=>{o3n=Nt(r3n(),1);i3n();$4o=e=>`\\u{${e.codePointAt(0).toString(16)}}`,Zfr=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` +${E}`),n?a.reset(E):E}function dJo(e,t,r,n={}){if(!r3n){r3n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),c3n(e,{start:{column:r,line:t}},n)}mMe.codeFrameColumns=c3n;mMe.default=dJo;mMe.highlight=a3n});function pJo(e,t){let r=u3n(e,` +`,t-1),n=t-r-1,a=0;for(let o=r;o>=0;o=u3n(e,` +`,o-1))a++;return{line:a,column:n}}function qdt(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let n=pJo(e,t);return r?{line:n.line+1,column:n.column+1}:n}var u3n,g3n=bc(()=>{u3n=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function Ofr(e,t,r){typeof t=="string"&&(r=t,t=void 0);let n;try{return JSON.parse(e,t)}catch(l){n=l.message}let a;e?(a=IJo(e,n),n=hJo(n)):n+=" while parsing empty string";let o=new Wfr(n);throw o.fileName=r,a&&(o.codeFrame=A3n(e,a),o.rawCodeFrame=A3n(e,a,!1)),o}var d3n,fJo,Wfr,A3n,IJo,hJo,p3n=bc(()=>{d3n=Nt(l3n(),1);g3n();fJo=e=>`\\u{${e.codePointAt(0).toString(16)}}`,Wfr=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` ${r} -`:""}`}set message(t){this.#e=t}},s3n=(e,t,r=!0)=>(0,o3n.codeFrameColumns)(e,{start:t},{highlightCode:r}),eJo=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:n,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(n=Number(n),n===e.length){let{line:l,column:A}=jdt(e,e.length-1,{oneBased:!0});return{line:l,column:A+1}}return jdt(e,n,{oneBased:!0})},tJo=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,n)=>`"${n}"(${$4o(n)})`)});var c3n=bc(()=>{});import{fileURLToPath as rJo}from"node:url";function hMe(e){return e instanceof URL?rJo(e):e}var Vfr=bc(()=>{c3n()});var g3n={};sI(g3n,{parsePackage:()=>oJo,readPackage:()=>Wfr,readPackageSync:()=>Ofr});import nJo from"node:fs";import iJo from"node:fs/promises";import sJo from"node:path";async function Wfr({cwd:e,normalize:t=!0}={}){let r=await iJo.readFile(u3n(e),"utf8");return Pfr(r,t)}function Ofr({cwd:e,normalize:t=!0}={}){let r=nJo.readFileSync(u3n(e),"utf8");return Pfr(r,t)}function oJo(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return Pfr(a,t)}var l3n,u3n,Pfr,Mfr=bc(()=>{a3n();l3n=Nt(wfr(),1);Vfr();u3n=e=>sJo.resolve(hMe(e)??".","package.json"),Pfr=(e,t)=>{let r=typeof e=="string"?Lfr(e):e;return t&&(0,l3n.default)(r),r}});import A3n from"node:process";import aJo from"node:fs/promises";import{fileURLToPath as cJo}from"node:url";import lJo from"node:fs";import _M from"node:path";async function d3n(e,{cwd:t=A3n.cwd(),type:r="file",stopAt:n}={}){let a=_M.resolve(zdt(t)??""),{root:o}=_M.parse(a);for(n=_M.resolve(a,zdt(n??o));a&&a!==n&&a!==o;){let l=_M.isAbsolute(e)?e:_M.join(a,e);try{let A=await aJo.stat(l);if(r==="file"&&A.isFile()||r==="directory"&&A.isDirectory())return l}catch{}a=_M.dirname(a)}}function p3n(e,{cwd:t=A3n.cwd(),type:r="file",stopAt:n}={}){let a=_M.resolve(zdt(t)??""),{root:o}=_M.parse(a);for(n=_M.resolve(a,zdt(n)??o);a&&a!==n&&a!==o;){let l=_M.isAbsolute(e)?e:_M.join(a,e);try{let A=lJo.statSync(l,{throwIfNoEntry:!1});if(r==="file"&&A?.isFile()||r==="directory"&&A?.isDirectory())return l}catch{}a=_M.dirname(a)}}var zdt,f3n=bc(()=>{zdt=e=>e instanceof URL?cJo(e):e});var h3n={};sI(h3n,{readPackageUp:()=>uJo,readPackageUpSync:()=>gJo});import I3n from"node:path";async function uJo(e){let t=await d3n("package.json",e);if(t)return{packageJson:await Wfr({...e,cwd:I3n.dirname(t)}),path:t}}function gJo(e){let t=p3n("package.json",e);if(t)return{packageJson:Ofr({...e,cwd:I3n.dirname(t)}),path:t}}var m3n=bc(()=>{f3n();Mfr()});var T3n=H((Ieu,w3n)=>{"use strict";w3n.exports=function(e){return Array.isArray(e)?e:[e]}});var N3n=H((heu,R3n)=>{"use strict";R3n.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var k3n=H((meu,D3n)=>{"use strict";var EIe=N3n(),BJo=["__proto__","prototype","constructor"],wJo=e=>!e.some(t=>BJo.includes(t));function qdt(e){let t=e.split("."),r=[];for(let n=0;n{"use strict";var TJo=T3n(),x3n=k3n().get;function RJo(e){return function(t,r){var n=0;return TJo(e).some(function(a){var o,l;if(typeof a=="function"?(o=a(t),l=a(r)):typeof a=="string"?(o=x3n(t,a),l=x3n(r,a)):(o=t,l=r),o===l){n=0;return}return typeof o=="string"&&typeof l=="string"?(n=o.localeCompare(l),n!==0):(n=o{"use strict";var FJo=/[|\\{}()[\]^$+*?.]/g;J3n.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(FJo,"\\$&")}});var K3n=H((Ueu,U3n)=>{"use strict";U3n.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var zfr=H((Keu,$3n)=>{var SIe=K3n(),q3n={};for(tpt in SIe)SIe.hasOwnProperty(tpt)&&(q3n[SIe[tpt]]=tpt);var tpt,pd=$3n.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(DZ in pd)if(pd.hasOwnProperty(DZ)){if(!("channels"in pd[DZ]))throw new Error("missing channels property: "+DZ);if(!("labels"in pd[DZ]))throw new Error("missing channel labels property: "+DZ);if(pd[DZ].labels.length!==pd[DZ].channels)throw new Error("channel and label counts mismatch: "+DZ);j3n=pd[DZ].channels,z3n=pd[DZ].labels,delete pd[DZ].channels,delete pd[DZ].labels,Object.defineProperty(pd[DZ],"channels",{value:j3n}),Object.defineProperty(pd[DZ],"labels",{value:z3n})}var j3n,z3n,DZ;pd.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f,I;return o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360),I=(a+o)/2,o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};pd.rgb.hsv=function(e){var t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?a=o=0:(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};pd.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],a=pd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};pd.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a,o,l,A;return A=Math.min(1-t,1-r,1-n),a=(1-t-A)/(1-A)||0,o=(1-r-A)/(1-A)||0,l=(1-n-A)/(1-A)||0,[a*100,o*100,l*100,A*100]};function ZJo(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}pd.rgb.keyword=function(e){var t=q3n[e];if(t)return t;var r=1/0,n;for(var a in SIe)if(SIe.hasOwnProperty(a)){var o=SIe[a],l=ZJo(e,o);l.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};pd.rgb.lab=function(e){var t=pd.rgb.xyz(e),r=t[0],n=t[1],a=t[2],o,l,A;return r/=95.047,n/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*n-16,l=500*(r-n),A=200*(n-a),[o,l,A]};pd.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l,A,f;if(r===0)return f=n*255,[f,f,f];n<.5?o=n*(1+r):o=n+r-n*r,a=2*n-o,A=[0,0,0];for(var I=0;I<3;I++)l=t+1/3*-(I-1),l<0&&l++,l>1&&l--,6*l<1?f=a+(o-a)*6*l:2*l<1?f=o:3*l<2?f=a+(o-a)*(2/3-l)*6:f=a,A[I]=f*255;return A};pd.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01),l,A;return n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o,A=(n+r)/2,l=n===0?2*a/(o+a):2*r/(n+r),[t,l*100,A*100]};pd.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};pd.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l,A;return A=(2-r)*n,o=(2-r)*a,l=r*a,l/=o<=1?o:2-o,l=l||0,A/=2,[t,l*100,A*100]};pd.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o,l,A,f;a>1&&(r/=a,n/=a),o=Math.floor(6*t),l=1-n,A=6*t-o,o&1&&(A=1-A),f=r+A*(l-r);var I,C,b;switch(o){default:case 6:case 0:I=l,C=f,b=r;break;case 1:I=f,C=l,b=r;break;case 2:I=r,C=l,b=f;break;case 3:I=r,C=f,b=l;break;case 4:I=f,C=r,b=l;break;case 5:I=l,C=r,b=f;break}return[I*255,C*255,b*255]};pd.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o,l,A;return o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a),[o*255,l*255,A*255]};pd.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,l=l>.0031308?1.055*Math.pow(l,1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};pd.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=116*r-16,o=500*(t-r),l=200*(r-n),[a,o,l]};pd.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;var A=Math.pow(o,3),f=Math.pow(a,3),I=Math.pow(l,3);return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};pd.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return a=Math.atan2(n,r),o=a*360/2/Math.PI,o<0&&(o+=360),l=Math.sqrt(r*r+n*n),[t,l,o]};pd.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return l=n/360*2*Math.PI,a=r*Math.cos(l),o=r*Math.sin(l),[t,a,o]};pd.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],a=1 in arguments?arguments[1]:pd.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};pd.hsv.ansi16=function(e){return pd.rgb.ansi16(pd.hsv.rgb(e),e[2])};pd.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return a};pd.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};pd.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,a,o]};pd.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};pd.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(A){return A+A}).join(""));var n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};pd.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l+4,f/=6,f%=1,[f*360,l*100,A*100]};pd.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,a=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};pd.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};pd.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};pd.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};pd.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};pd.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};pd.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};pd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};pd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};pd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};pd.gray.hsl=pd.gray.hsv=function(e){return[0,0,e[0]]};pd.gray.hwb=function(e){return[0,100,e[0]]};pd.gray.cmyk=function(e){return[0,0,0,e[0]]};pd.gray.lab=function(e){return[e[0],0,0]};pd.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};pd.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var t5n=H((jeu,e5n)=>{var rpt=zfr();function LJo(){for(var e={},t=Object.keys(rpt),r=t.length,n=0;n{var qfr=zfr(),OJo=t5n(),qve={},MJo=Object.keys(qfr);function HJo(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function YJo(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var a=n.length,o=0;o{"use strict";var $ve=n5n(),npt=(e,t)=>function(){return`\x1B[${e.apply($ve,arguments)+t}m`},ipt=(e,t)=>function(){let r=e.apply($ve,arguments);return`\x1B[${38+t};5;${r}m`},spt=(e,t)=>function(){let r=e.apply($ve,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function QJo(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let l of Object.keys(o)){let A=o[l];t[l]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},o[l]=t[l],e.set(A[0],A[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,n=(a,o,l)=>[a,o,l];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:npt(r,0)},t.color.ansi256={ansi256:ipt(r,0)},t.color.ansi16m={rgb:spt(n,0)},t.bgColor.ansi={ansi:npt(r,10)},t.bgColor.ansi256={ansi256:ipt(r,10)},t.bgColor.ansi16m={rgb:spt(n,10)};for(let a of Object.keys($ve)){if(typeof $ve[a]!="object")continue;let o=$ve[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=npt(o.ansi16,0),t.bgColor.ansi[a]=npt(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=ipt(o.ansi256,0),t.bgColor.ansi256[a]=ipt(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=spt(o.rgb,0),t.bgColor.ansi16m[a]=spt(o.rgb,10))}return t}Object.defineProperty(i5n,"exports",{enumerable:!0,get:QJo})});var a5n=H(($eu,o5n)=>{"use strict";o5n.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1?!0:n{"use strict";var XJo=wt("os"),mX=a5n(),IG=process.env,eBe;mX("no-color")||mX("no-colors")||mX("color=false")?eBe=!1:(mX("color")||mX("colors")||mX("color=true")||mX("color=always"))&&(eBe=!0);"FORCE_COLOR"in IG&&(eBe=IG.FORCE_COLOR.length===0||parseInt(IG.FORCE_COLOR,10)!==0);function JJo(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function UJo(e){if(eBe===!1)return 0;if(mX("color=16m")||mX("color=full")||mX("color=truecolor"))return 3;if(mX("color=256"))return 2;if(e&&!e.isTTY&&eBe!==!0)return 0;let t=eBe?1:0;if(process.platform==="win32"){let r=XJo.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in IG)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in IG)||IG.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in IG)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(IG.TEAMCITY_VERSION)?1:0;if(IG.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in IG){let r=parseInt((IG.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(IG.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(IG.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(IG.TERM)||"COLORTERM"in IG?1:(IG.TERM==="dumb",t)}function $fr(e){let t=UJo(e);return JJo(t)}c5n.exports={supportsColor:$fr,stdout:$fr(process.stdout),stderr:$fr(process.stderr)}});var p5n=H((ttu,d5n)=>{"use strict";var KJo=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,u5n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,jJo=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,zJo=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,qJo=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function A5n(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):qJo.get(e)||e}function $Jo(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n)if(!isNaN(o))r.push(Number(o));else if(a=o.match(jJo))r.push(a[2].replace(zJo,(l,A,f)=>A?A5n(A):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function eUo(e){u5n.lastIndex=0;let t=[],r;for(;(r=u5n.exec(e))!==null;){let n=r[1];if(r[2]){let a=$Jo(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function g5n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?n=n[a].apply(n,r[a]):n=n[a]}return n}d5n.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(KJo,(o,l,A,f,I,C)=>{if(l)a.push(A5n(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:g5n(e,r)(b)),r.push({inverse:A,styles:eUo(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(g5n(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var C5n=H((rtu,_Me)=>{"use strict";var tIr=jfr(),iT=s5n(),eIr=l5n().stdout,tUo=p5n(),I5n=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),h5n=["ansi","ansi","ansi256","ansi16m"],m5n=new Set(["gray"]),tBe=Object.create(null);function f5n(e,t){t=t||{};let r=eIr?eIr.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function CMe(e){if(!this||!(this instanceof CMe)||this.template){let t={};return f5n(t,e),t.template=function(){let r=[].slice.call(arguments);return iUo.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,CMe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=CMe,t.template}f5n(this,e)}I5n&&(iT.blue.open="\x1B[94m");for(let e of Object.keys(iT))iT[e].closeRe=new RegExp(tIr(iT[e].close),"g"),tBe[e]={get(){let t=iT[e];return opt.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};tBe.visible={get(){return opt.call(this,this._styles||[],!0,"visible")}};iT.color.closeRe=new RegExp(tIr(iT.color.close),"g");for(let e of Object.keys(iT.color.ansi))m5n.has(e)||(tBe[e]={get(){let t=this.level;return function(){let n={open:iT.color[h5n[t]][e].apply(null,arguments),close:iT.color.close,closeRe:iT.color.closeRe};return opt.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});iT.bgColor.closeRe=new RegExp(tIr(iT.bgColor.close),"g");for(let e of Object.keys(iT.bgColor.ansi)){if(m5n.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);tBe[t]={get(){let r=this.level;return function(){let a={open:iT.bgColor[h5n[r]][e].apply(null,arguments),close:iT.bgColor.close,closeRe:iT.bgColor.closeRe};return opt.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var rUo=Object.defineProperties(()=>{},tBe);function opt(e,t,r){let n=function(){return nUo.apply(n,arguments)};n._styles=e,n._empty=t;let a=this;return Object.defineProperty(n,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(n,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),n.hasGrey=this.hasGrey||r==="gray"||r==="grey",n.__proto__=rUo,n}function nUo(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(yMe,"__esModule",{value:!0});yMe.default=AUo;yMe.shouldHighlight=B5n;var _5n=Rfr(),y5n=Gfr(),nIr=sUo(Jdt(),!0);function E5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(E5n=function(n){return n?r:t})(e)}function sUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=E5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var S5n=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,nIr.createColors)(!1):nIr.default,b5n=(e,t)=>r=>e(t(r)),oUo=new Set(["as","async","from","get","of","set"]);function aUo(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:b5n(b5n(e.white,e.bgRed),e.bold)}}var cUo=/\r\n|[\n\r\u2028\u2029]/,lUo=/^[()[\]{}]$/,v5n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if((0,y5n.isKeyword)(r.value)||(0,y5n.isStrictReservedWord)(r.value,!0)||oUo.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="o(l)).join(` -`):r+=a}return r}function B5n(e){return S5n.isColorSupported||e.forceColor}var rIr;function gUo(e){if(e){var t;return(t=rIr)!=null||(rIr=(0,nIr.createColors)(!0)),rIr}return S5n}function AUo(e,t={}){if(e!==""&&B5n(t)){let r=aUo(gUo(t.forceColor));return uUo(r,e)}else return e}{let e,t;yMe.getChalk=({forceColor:r})=>{var n;if((n=e)!=null||(e=C5n()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var oIr=H(apt=>{"use strict";Object.defineProperty(apt,"__esModule",{value:!0});apt.codeFrameColumns=x5n;apt.default=mUo;var T5n=w5n(),sIr=dUo(Jdt(),!0);function k5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(k5n=function(n){return n?r:t})(e)}function dUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=k5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var pUo=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,sIr.createColors)(!1):sIr.default,R5n=(e,t)=>r=>e(t(r)),iIr;function fUo(e){if(e){var t;return(t=iIr)!=null||(iIr=(0,sIr.createColors)(!0)),iIr}return pUo}var N5n=!1;function IUo(e){return{gutter:e.gray,marker:R5n(e.red,e.bold),message:R5n(e.red,e.bold)}}var D5n=/\r\n|[\n\r\u2028\u2029]/;function hUo(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let X=t[Q-1].length;B[Q]=[f,X-f+1]}else if(F===N)B[Q]=[0,C];else{let X=t[Q-F].length;B[Q]=[0,X]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function x5n(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0,T5n.shouldHighlight)(r),a=fUo(r.forceColor),o=IUo(a),l=(F,Q)=>n?F(Q):Q,A=e.split(D5n),{start:f,end:I,markerLines:C}=hUo(t,A,r),b=t.start&&typeof t.start.column=="number",E=String(I).length,B=(n?(0,T5n.default)(e,r):e).split(D5n,I).slice(f,I).map((F,Q)=>{let X=f+1+Q,ne=` ${` ${X}`.slice(-E)} |`,ce=C[X],fe=!C[X+1];if(ce){let ue="";if(Array.isArray(ce)){let de=F.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` +`:""}`}set message(t){this.#e=t}},A3n=(e,t,r=!0)=>(0,d3n.codeFrameColumns)(e,{start:t},{highlightCode:r}),IJo=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:n,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(n=Number(n),n===e.length){let{line:l,column:A}=qdt(e,e.length-1,{oneBased:!0});return{line:l,column:A+1}}return qdt(e,n,{oneBased:!0})},hJo=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,n)=>`"${n}"(${fJo(n)})`)});var f3n=bc(()=>{});import{fileURLToPath as mJo}from"node:url";function CMe(e){return e instanceof URL?mJo(e):e}var Mfr=bc(()=>{f3n()});var m3n={};sI(m3n,{parsePackage:()=>bJo,readPackage:()=>Yfr,readPackageSync:()=>Qfr});import CJo from"node:fs";import _Jo from"node:fs/promises";import yJo from"node:path";async function Yfr({cwd:e,normalize:t=!0}={}){let r=await _Jo.readFile(h3n(e),"utf8");return Hfr(r,t)}function Qfr({cwd:e,normalize:t=!0}={}){let r=CJo.readFileSync(h3n(e),"utf8");return Hfr(r,t)}function bJo(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return Hfr(a,t)}var I3n,h3n,Hfr,Xfr=bc(()=>{p3n();I3n=Nt(Dfr(),1);Mfr();h3n=e=>yJo.resolve(CMe(e)??".","package.json"),Hfr=(e,t)=>{let r=typeof e=="string"?Ofr(e):e;return t&&(0,I3n.default)(r),r}});import C3n from"node:process";import EJo from"node:fs/promises";import{fileURLToPath as SJo}from"node:url";import vJo from"node:fs";import _M from"node:path";async function _3n(e,{cwd:t=C3n.cwd(),type:r="file",stopAt:n}={}){let a=_M.resolve($dt(t)??""),{root:o}=_M.parse(a);for(n=_M.resolve(a,$dt(n??o));a&&a!==n&&a!==o;){let l=_M.isAbsolute(e)?e:_M.join(a,e);try{let A=await EJo.stat(l);if(r==="file"&&A.isFile()||r==="directory"&&A.isDirectory())return l}catch{}a=_M.dirname(a)}}function y3n(e,{cwd:t=C3n.cwd(),type:r="file",stopAt:n}={}){let a=_M.resolve($dt(t)??""),{root:o}=_M.parse(a);for(n=_M.resolve(a,$dt(n)??o);a&&a!==n&&a!==o;){let l=_M.isAbsolute(e)?e:_M.join(a,e);try{let A=vJo.statSync(l,{throwIfNoEntry:!1});if(r==="file"&&A?.isFile()||r==="directory"&&A?.isDirectory())return l}catch{}a=_M.dirname(a)}}var $dt,b3n=bc(()=>{$dt=e=>e instanceof URL?SJo(e):e});var S3n={};sI(S3n,{readPackageUp:()=>BJo,readPackageUpSync:()=>wJo});import E3n from"node:path";async function BJo(e){let t=await _3n("package.json",e);if(t)return{packageJson:await Yfr({...e,cwd:E3n.dirname(t)}),path:t}}function wJo(e){let t=y3n("package.json",e);if(t)return{packageJson:Qfr({...e,cwd:E3n.dirname(t)}),path:t}}var v3n=bc(()=>{b3n();Xfr()});var F3n=H((ctu,G3n)=>{"use strict";G3n.exports=function(e){return Array.isArray(e)?e:[e]}});var L3n=H((ltu,Z3n)=>{"use strict";Z3n.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var P3n=H((utu,V3n)=>{"use strict";var SIe=L3n(),MJo=["__proto__","prototype","constructor"],HJo=e=>!e.some(t=>MJo.includes(t));function ept(e){let t=e.split("."),r=[];for(let n=0;n{"use strict";var YJo=F3n(),W3n=P3n().get;function QJo(e){return function(t,r){var n=0;return YJo(e).some(function(a){var o,l;if(typeof a=="function"?(o=a(t),l=a(r)):typeof a=="string"?(o=W3n(t,a),l=W3n(r,a)):(o=t,l=r),o===l){n=0;return}return typeof o=="string"&&typeof l=="string"?(n=o.localeCompare(l),n!==0):(n=o{"use strict";var zJo=/[|\\{}()[\]^$+*?.]/g;e5n.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(zJo,"\\$&")}});var r5n=H((Wtu,t5n)=>{"use strict";t5n.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var tIr=H((Otu,o5n)=>{var vIe=r5n(),s5n={};for(npt in vIe)vIe.hasOwnProperty(npt)&&(s5n[vIe[npt]]=npt);var npt,pd=o5n.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(DZ in pd)if(pd.hasOwnProperty(DZ)){if(!("channels"in pd[DZ]))throw new Error("missing channels property: "+DZ);if(!("labels"in pd[DZ]))throw new Error("missing channel labels property: "+DZ);if(pd[DZ].labels.length!==pd[DZ].channels)throw new Error("channel and label counts mismatch: "+DZ);n5n=pd[DZ].channels,i5n=pd[DZ].labels,delete pd[DZ].channels,delete pd[DZ].labels,Object.defineProperty(pd[DZ],"channels",{value:n5n}),Object.defineProperty(pd[DZ],"labels",{value:i5n})}var n5n,i5n,DZ;pd.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f,I;return o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360),I=(a+o)/2,o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};pd.rgb.hsv=function(e){var t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?a=o=0:(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};pd.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],a=pd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};pd.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a,o,l,A;return A=Math.min(1-t,1-r,1-n),a=(1-t-A)/(1-A)||0,o=(1-r-A)/(1-A)||0,l=(1-n-A)/(1-A)||0,[a*100,o*100,l*100,A*100]};function qJo(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}pd.rgb.keyword=function(e){var t=s5n[e];if(t)return t;var r=1/0,n;for(var a in vIe)if(vIe.hasOwnProperty(a)){var o=vIe[a],l=qJo(e,o);l.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};pd.rgb.lab=function(e){var t=pd.rgb.xyz(e),r=t[0],n=t[1],a=t[2],o,l,A;return r/=95.047,n/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*n-16,l=500*(r-n),A=200*(n-a),[o,l,A]};pd.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l,A,f;if(r===0)return f=n*255,[f,f,f];n<.5?o=n*(1+r):o=n+r-n*r,a=2*n-o,A=[0,0,0];for(var I=0;I<3;I++)l=t+1/3*-(I-1),l<0&&l++,l>1&&l--,6*l<1?f=a+(o-a)*6*l:2*l<1?f=o:3*l<2?f=a+(o-a)*(2/3-l)*6:f=a,A[I]=f*255;return A};pd.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01),l,A;return n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o,A=(n+r)/2,l=n===0?2*a/(o+a):2*r/(n+r),[t,l*100,A*100]};pd.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};pd.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l,A;return A=(2-r)*n,o=(2-r)*a,l=r*a,l/=o<=1?o:2-o,l=l||0,A/=2,[t,l*100,A*100]};pd.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o,l,A,f;a>1&&(r/=a,n/=a),o=Math.floor(6*t),l=1-n,A=6*t-o,o&1&&(A=1-A),f=r+A*(l-r);var I,C,b;switch(o){default:case 6:case 0:I=l,C=f,b=r;break;case 1:I=f,C=l,b=r;break;case 2:I=r,C=l,b=f;break;case 3:I=r,C=f,b=l;break;case 4:I=f,C=r,b=l;break;case 5:I=l,C=r,b=f;break}return[I*255,C*255,b*255]};pd.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o,l,A;return o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a),[o*255,l*255,A*255]};pd.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,l=l>.0031308?1.055*Math.pow(l,1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};pd.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=116*r-16,o=500*(t-r),l=200*(r-n),[a,o,l]};pd.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;var A=Math.pow(o,3),f=Math.pow(a,3),I=Math.pow(l,3);return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};pd.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return a=Math.atan2(n,r),o=a*360/2/Math.PI,o<0&&(o+=360),l=Math.sqrt(r*r+n*n),[t,l,o]};pd.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return l=n/360*2*Math.PI,a=r*Math.cos(l),o=r*Math.sin(l),[t,a,o]};pd.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],a=1 in arguments?arguments[1]:pd.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};pd.hsv.ansi16=function(e){return pd.rgb.ansi16(pd.hsv.rgb(e),e[2])};pd.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return a};pd.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};pd.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,a,o]};pd.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};pd.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(A){return A+A}).join(""));var n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};pd.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l+4,f/=6,f%=1,[f*360,l*100,A*100]};pd.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,a=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};pd.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};pd.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};pd.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};pd.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};pd.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};pd.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};pd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};pd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};pd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};pd.gray.hsl=pd.gray.hsv=function(e){return[0,0,e[0]]};pd.gray.hwb=function(e){return[0,100,e[0]]};pd.gray.cmyk=function(e){return[0,0,0,e[0]]};pd.gray.lab=function(e){return[e[0],0,0]};pd.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};pd.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var c5n=H((Mtu,a5n)=>{var ipt=tIr();function $Jo(){for(var e={},t=Object.keys(ipt),r=t.length,n=0;n{var rIr=tIr(),nUo=c5n(),$ve={},iUo=Object.keys(rIr);function sUo(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function oUo(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var a=n.length,o=0;o{"use strict";var eBe=u5n(),spt=(e,t)=>function(){return`\x1B[${e.apply(eBe,arguments)+t}m`},opt=(e,t)=>function(){let r=e.apply(eBe,arguments);return`\x1B[${38+t};5;${r}m`},apt=(e,t)=>function(){let r=e.apply(eBe,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function aUo(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let l of Object.keys(o)){let A=o[l];t[l]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},o[l]=t[l],e.set(A[0],A[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,n=(a,o,l)=>[a,o,l];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:spt(r,0)},t.color.ansi256={ansi256:opt(r,0)},t.color.ansi16m={rgb:apt(n,0)},t.bgColor.ansi={ansi:spt(r,10)},t.bgColor.ansi256={ansi256:opt(r,10)},t.bgColor.ansi16m={rgb:apt(n,10)};for(let a of Object.keys(eBe)){if(typeof eBe[a]!="object")continue;let o=eBe[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=spt(o.ansi16,0),t.bgColor.ansi[a]=spt(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=opt(o.ansi256,0),t.bgColor.ansi256[a]=opt(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=apt(o.rgb,0),t.bgColor.ansi16m[a]=apt(o.rgb,10))}return t}Object.defineProperty(g5n,"exports",{enumerable:!0,get:aUo})});var p5n=H((Qtu,d5n)=>{"use strict";d5n.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1?!0:n{"use strict";var cUo=wt("os"),mX=p5n(),IG=process.env,tBe;mX("no-color")||mX("no-colors")||mX("color=false")?tBe=!1:(mX("color")||mX("colors")||mX("color=true")||mX("color=always"))&&(tBe=!0);"FORCE_COLOR"in IG&&(tBe=IG.FORCE_COLOR.length===0||parseInt(IG.FORCE_COLOR,10)!==0);function lUo(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function uUo(e){if(tBe===!1)return 0;if(mX("color=16m")||mX("color=full")||mX("color=truecolor"))return 3;if(mX("color=256"))return 2;if(e&&!e.isTTY&&tBe!==!0)return 0;let t=tBe?1:0;if(process.platform==="win32"){let r=cUo.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in IG)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in IG)||IG.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in IG)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(IG.TEAMCITY_VERSION)?1:0;if(IG.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in IG){let r=parseInt((IG.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(IG.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(IG.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(IG.TERM)||"COLORTERM"in IG?1:(IG.TERM==="dumb",t)}function nIr(e){let t=uUo(e);return lUo(t)}f5n.exports={supportsColor:nIr,stdout:nIr(process.stdout),stderr:nIr(process.stderr)}});var y5n=H((Jtu,_5n)=>{"use strict";var gUo=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,h5n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,AUo=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,dUo=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,pUo=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function C5n(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):pUo.get(e)||e}function fUo(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n)if(!isNaN(o))r.push(Number(o));else if(a=o.match(AUo))r.push(a[2].replace(dUo,(l,A,f)=>A?C5n(A):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function IUo(e){h5n.lastIndex=0;let t=[],r;for(;(r=h5n.exec(e))!==null;){let n=r[1];if(r[2]){let a=fUo(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function m5n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?n=n[a].apply(n,r[a]):n=n[a]}return n}_5n.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(gUo,(o,l,A,f,I,C)=>{if(l)a.push(C5n(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:m5n(e,r)(b)),r.push({inverse:A,styles:IUo(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(m5n(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var B5n=H((Utu,bMe)=>{"use strict";var sIr=eIr(),iT=A5n(),iIr=I5n().stdout,hUo=y5n(),E5n=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),S5n=["ansi","ansi","ansi256","ansi16m"],v5n=new Set(["gray"]),rBe=Object.create(null);function b5n(e,t){t=t||{};let r=iIr?iIr.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function yMe(e){if(!this||!(this instanceof yMe)||this.template){let t={};return b5n(t,e),t.template=function(){let r=[].slice.call(arguments);return _Uo.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,yMe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=yMe,t.template}b5n(this,e)}E5n&&(iT.blue.open="\x1B[94m");for(let e of Object.keys(iT))iT[e].closeRe=new RegExp(sIr(iT[e].close),"g"),rBe[e]={get(){let t=iT[e];return cpt.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};rBe.visible={get(){return cpt.call(this,this._styles||[],!0,"visible")}};iT.color.closeRe=new RegExp(sIr(iT.color.close),"g");for(let e of Object.keys(iT.color.ansi))v5n.has(e)||(rBe[e]={get(){let t=this.level;return function(){let n={open:iT.color[S5n[t]][e].apply(null,arguments),close:iT.color.close,closeRe:iT.color.closeRe};return cpt.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});iT.bgColor.closeRe=new RegExp(sIr(iT.bgColor.close),"g");for(let e of Object.keys(iT.bgColor.ansi)){if(v5n.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);rBe[t]={get(){let r=this.level;return function(){let a={open:iT.bgColor[S5n[r]][e].apply(null,arguments),close:iT.bgColor.close,closeRe:iT.bgColor.closeRe};return cpt.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var mUo=Object.defineProperties(()=>{},rBe);function cpt(e,t,r){let n=function(){return CUo.apply(n,arguments)};n._styles=e,n._empty=t;let a=this;return Object.defineProperty(n,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(n,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),n.hasGrey=this.hasGrey||r==="gray"||r==="grey",n.__proto__=mUo,n}function CUo(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(EMe,"__esModule",{value:!0});EMe.default=TUo;EMe.shouldHighlight=x5n;var w5n=xfr(),T5n=Vfr(),aIr=yUo(Kdt(),!0);function N5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(N5n=function(n){return n?r:t})(e)}function yUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=N5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var D5n=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,aIr.createColors)(!1):aIr.default,R5n=(e,t)=>r=>e(t(r)),bUo=new Set(["as","async","from","get","of","set"]);function EUo(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:R5n(R5n(e.white,e.bgRed),e.bold)}}var SUo=/\r\n|[\n\r\u2028\u2029]/,vUo=/^[()[\]{}]$/,k5n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if((0,T5n.isKeyword)(r.value)||(0,T5n.isStrictReservedWord)(r.value,!0)||bUo.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="o(l)).join(` +`):r+=a}return r}function x5n(e){return D5n.isColorSupported||e.forceColor}var oIr;function wUo(e){if(e){var t;return(t=oIr)!=null||(oIr=(0,aIr.createColors)(!0)),oIr}return D5n}function TUo(e,t={}){if(e!==""&&x5n(t)){let r=EUo(wUo(t.forceColor));return BUo(r,e)}else return e}{let e,t;EMe.getChalk=({forceColor:r})=>{var n;if((n=e)!=null||(e=B5n()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var uIr=H(lpt=>{"use strict";Object.defineProperty(lpt,"__esModule",{value:!0});lpt.codeFrameColumns=W5n;lpt.default=GUo;var F5n=G5n(),lIr=RUo(Kdt(),!0);function P5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(P5n=function(n){return n?r:t})(e)}function RUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=P5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var NUo=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,lIr.createColors)(!1):lIr.default,Z5n=(e,t)=>r=>e(t(r)),cIr;function DUo(e){if(e){var t;return(t=cIr)!=null||(cIr=(0,lIr.createColors)(!0)),cIr}return NUo}var L5n=!1;function kUo(e){return{gutter:e.gray,marker:Z5n(e.red,e.bold),message:Z5n(e.red,e.bold)}}var V5n=/\r\n|[\n\r\u2028\u2029]/;function xUo(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let X=t[Q-1].length;B[Q]=[f,X-f+1]}else if(F===N)B[Q]=[0,C];else{let X=t[Q-F].length;B[Q]=[0,X]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function W5n(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0,F5n.shouldHighlight)(r),a=DUo(r.forceColor),o=kUo(a),l=(F,Q)=>n?F(Q):Q,A=e.split(V5n),{start:f,end:I,markerLines:C}=xUo(t,A,r),b=t.start&&typeof t.start.column=="number",E=String(I).length,B=(n?(0,F5n.default)(e,r):e).split(V5n,I).slice(f,I).map((F,Q)=>{let X=f+1+Q,ne=` ${` ${X}`.slice(-E)} |`,ce=C[X],fe=!C[X+1];if(ce){let ue="";if(Array.isArray(ce)){let de=F.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` `,l(o.gutter,ne.replace(/\d/g," "))," ",de,l(o.marker,"^").repeat(be)].join(""),fe&&r.message&&(ue+=" "+l(o.message,r.message))}return[l(o.marker,">"),l(o.gutter,ne),F.length>0?` ${F}`:"",ue].join("")}else return` ${l(o.gutter,ne)}${F.length>0?` ${F}`:""}`}).join(` `);return r.message&&!b&&(B=`${" ".repeat(E+1)}${r.message} -${B}`),n?a.reset(B):B}function mUo(e,t,r,n={}){if(!N5n){N5n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),x5n(e,{start:{column:r,line:t}},n)}});var Q5n=H(Lm=>{"use strict";var bMe=Symbol.for("react.element"),CUo=Symbol.for("react.portal"),_Uo=Symbol.for("react.fragment"),yUo=Symbol.for("react.strict_mode"),bUo=Symbol.for("react.profiler"),EUo=Symbol.for("react.provider"),SUo=Symbol.for("react.context"),vUo=Symbol.for("react.forward_ref"),BUo=Symbol.for("react.suspense"),wUo=Symbol.for("react.memo"),TUo=Symbol.for("react.lazy"),G5n=Symbol.iterator;function RUo(e){return e===null||typeof e!="object"?null:(e=G5n&&e[G5n]||e["@@iterator"],typeof e=="function"?e:null)}var L5n={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},V5n=Object.assign,P5n={};function rBe(e,t,r){this.props=e,this.context=t,this.refs=P5n,this.updater=r||L5n}rBe.prototype.isReactComponent={};rBe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};rBe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function W5n(){}W5n.prototype=rBe.prototype;function cIr(e,t,r){this.props=e,this.context=t,this.refs=P5n,this.updater=r||L5n}var lIr=cIr.prototype=new W5n;lIr.constructor=cIr;V5n(lIr,rBe.prototype);lIr.isPureReactComponent=!0;var F5n=Array.isArray,O5n=Object.prototype.hasOwnProperty,uIr={current:null},M5n={key:!0,ref:!0,__self:!0,__source:!0};function H5n(e,t,r){var n,a={},o=null,l=null;if(t!=null)for(n in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)O5n.call(t,n)&&!M5n.hasOwnProperty(n)&&(a[n]=t[n]);var A=arguments.length-2;if(A===1)a.children=r;else if(1{"use strict";X5n.exports=Q5n()});var AIr=H((nBe,EMe)=>{(function(){var e,t="4.17.21",r=200,n="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",A=500,f="__lodash_placeholder__",I=1,C=2,b=4,E=1,N=2,B=1,F=2,Q=4,X=8,ae=16,ne=32,ce=64,fe=128,ue=256,de=512,be=30,Se="...",De=800,k=16,et=1,ct=2,Me=3,je=1/0,St=9007199254740991,At=17976931348623157e292,Yt=NaN,Tr=4294967295,Nr=Tr-1,er=Tr>>>1,vt=[["ary",fe],["bind",B],["bindKey",F],["curry",X],["curryRight",ae],["flip",de],["partial",ne],["partialRight",ce],["rearg",ue]],xt="[object Arguments]",Zr="[object Array]",qt="[object AsyncFunction]",Xt="[object Boolean]",lr="[object Date]",cr="[object DOMException]",Ar="[object Error]",qr="[object Function]",_n="[object GeneratorFunction]",ke="[object Map]",jt="[object Number]",Fn="[object Null]",Nn="[object Object]",Hi="[object Promise]",po="[object Proxy]",Vr="[object RegExp]",xi="[object Set]",io="[object String]",ga="[object Symbol]",Ya="[object Undefined]",Gc="[object WeakMap]",cl="[object WeakSet]",Sc="[object ArrayBuffer]",Hr="[object DataView]",Wr="[object Float32Array]",Ft="[object Float64Array]",zr="[object Int8Array]",Rn="[object Int16Array]",Or="[object Int32Array]",Qi="[object Uint8Array]",ps="[object Uint8ClampedArray]",yo="[object Uint16Array]",bo="[object Uint32Array]",Qa=/\b__p \+= '';/g,gc=/\b(__p \+=) '' \+/g,Cg=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Nc=/&(?:amp|lt|gt|quot|#39);/g,iA=/[&<>"']/g,ma=RegExp(Nc.source),vu=RegExp(iA.source),li=/<%-([\s\S]+?)%>/g,Ei=/<%([\s\S]+?)%>/g,Ps=/<%=([\s\S]+?)%>/g,Xa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ac=/^\w*$/,Yl=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Wc=/[\\^$.*+?()[\]{}|]/g,Sg=RegExp(Wc.source),Ul=/^\s+/,Xu=/\s/,Da=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,pu=/\{\n\/\* \[wrapped with (.+)\] \*/,_g=/,? & /,mI=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Qh=/[()=,{}\[\]\/\s]/,Ri=/\\(\\)?/g,Do=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Wt=/\w*$/,Hu=/^[-+]0x[0-9a-f]+$/i,Ru=/^0b[01]+$/i,Vs=/^\[object .+?Constructor\]$/,Ju=/^0o[0-7]+$/i,Yn=/^(?:0|[1-9]\d*)$/,Ko=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Eg=/($^)/,OA=/['\n\r\u2028\u2029\\]/g,GA="\\ud800-\\udfff",$i="\\u0300-\\u036f",dl="\\ufe20-\\ufe2f",Uf="\\u20d0-\\u20ff",Kd=$i+dl+Uf,oA="\\u2700-\\u27bf",oo="a-z\\xdf-\\xf6\\xf8-\\xff",Ki="\\xac\\xb1\\xd7\\xf7",cc="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Xs="\\u2000-\\u206f",ws=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Gs="A-Z\\xc0-\\xd6\\xd8-\\xde",Ma="\\ufe0e\\ufe0f",Dc=Ki+cc+Xs+ws,As="['\u2019]",Tf="["+GA+"]",cm="["+Dc+"]",Fl="["+Kd+"]",rc="\\d+",sd="["+oA+"]",Om="["+oo+"]",il="[^"+GA+Dc+rc+oA+oo+Gs+"]",FA="\\ud83c[\\udffb-\\udfff]",ZA="(?:"+Fl+"|"+FA+")",El="[^"+GA+"]",yg="(?:\\ud83c[\\udde6-\\uddff]){2}",Mp="[\\ud800-\\udbff][\\udc00-\\udfff]",MA="["+Gs+"]",Er="\\u200d",Zt="(?:"+Om+"|"+il+")",yn="(?:"+MA+"|"+il+")",ls="(?:"+As+"(?:d|ll|m|re|s|t|ve))?",oa="(?:"+As+"(?:D|LL|M|RE|S|T|VE))?",Fs=ZA+"?",Wa="["+Ma+"]?",Ca="(?:"+Er+"(?:"+[El,yg,Mp].join("|")+")"+Wa+Fs+")*",ld="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Rp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",np=Wa+Fs+Ca,HA="(?:"+[sd,yg,Mp].join("|")+")"+np,df="(?:"+[El+Fl+"?",Fl,yg,Mp,Tf].join("|")+")",Zs=RegExp(As,"g"),so=RegExp(Fl,"g"),Ea=RegExp(FA+"(?="+FA+")|"+df+np,"g"),Ml=RegExp([MA+"?"+Om+"+"+ls+"(?="+[cm,MA,"$"].join("|")+")",yn+"+"+oa+"(?="+[cm,MA+Zt,"$"].join("|")+")",MA+"?"+Zt+"+"+ls,MA+"+"+oa,Rp,ld,rc,HA].join("|"),"g"),Dr=RegExp("["+Er+GA+Kd+Ma+"]"),Wn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],aa=-1,Bo={};Bo[Wr]=Bo[Ft]=Bo[zr]=Bo[Rn]=Bo[Or]=Bo[Qi]=Bo[ps]=Bo[yo]=Bo[bo]=!0,Bo[xt]=Bo[Zr]=Bo[Sc]=Bo[Xt]=Bo[Hr]=Bo[lr]=Bo[Ar]=Bo[qr]=Bo[ke]=Bo[jt]=Bo[Nn]=Bo[Vr]=Bo[xi]=Bo[io]=Bo[Gc]=!1;var us={};us[xt]=us[Zr]=us[Sc]=us[Hr]=us[Xt]=us[lr]=us[Wr]=us[Ft]=us[zr]=us[Rn]=us[Or]=us[ke]=us[jt]=us[Nn]=us[Vr]=us[xi]=us[io]=us[ga]=us[Qi]=us[ps]=us[yo]=us[bo]=!0,us[Ar]=us[qr]=us[Gc]=!1;var Ql={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},LA={"&":"&","<":"<",">":">",'"':""","'":"'"},pf={"&":"&","<":"<",">":">",""":'"',"'":"'"},ef={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ip=parseFloat,_d=parseInt,j1=typeof global=="object"&&global&&global.Object===Object&&global,pw=typeof self=="object"&&self&&self.Object===Object&&self,YA=j1||pw||Function("return this")(),Ac=typeof nBe=="object"&&nBe&&!nBe.nodeType&&nBe,Nm=Ac&&typeof EMe=="object"&&EMe&&!EMe.nodeType&&EMe,HS=Nm&&Nm.exports===Ac,jd=HS&&j1.process,dh=function(){try{var cs=Nm&&Nm.require&&Nm.require("util").types;return cs||jd&&jd.binding&&jd.binding("util")}catch{}}(),Hp=dh&&dh.isArrayBuffer,uC=dh&&dh.isDate,nE=dh&&dh.isMap,J_=dh&&dh.isRegExp,q0=dh&&dh.isSet,XE=dh&&dh.isTypedArray;function TC(cs,na,ko){switch(ko.length){case 0:return cs.call(na);case 1:return cs.call(na,ko[0]);case 2:return cs.call(na,ko[0],ko[1]);case 3:return cs.call(na,ko[0],ko[1],ko[2])}return cs.apply(na,ko)}function t_(cs,na,ko,ki){for(var Kl=-1,fd=cs==null?0:cs.length;++Kl-1}function Kf(cs,na,ko){for(var ki=-1,Kl=cs==null?0:cs.length;++ki-1;);return ko}function z1(cs,na){for(var ko=cs.length;ko--&&Yr(na,cs[ko],0)>-1;);return ko}function T_(cs,na){for(var ko=cs.length,ki=0;ko--;)cs[ko]===na&&++ki;return ki}var RC=kc(Ql),Hm=kc(LA);function YS(cs){return"\\"+ef[cs]}function Fg(cs,na){return cs==null?e:cs[na]}function hb(cs){return Dr.test(cs)}function gC(cs){return Wn.test(cs)}function NC(cs){for(var na,ko=[];!(na=cs.next()).done;)ko.push(na.value);return ko}function Y2(cs){var na=-1,ko=Array(cs.size);return cs.forEach(function(ki,Kl){ko[++na]=[Kl,ki]}),ko}function U_(cs,na){return function(ko){return cs(na(ko))}}function DC(cs,na){for(var ko=-1,ki=cs.length,Kl=0,fd=[];++ko-1}function yb(ie,he){var ze=this.__data__,Ut=gB(ze,ie);return Ut<0?(++this.size,ze.push([ie,he])):ze[Ut][1]=he,this}N_.prototype.clear=e1,N_.prototype.delete=t1,N_.prototype.get=ry,N_.prototype.has=xT,N_.prototype.set=yb;function r_(ie){var he=-1,ze=ie==null?0:ie.length;for(this.clear();++he=he?ie:he)),ie}function bI(ie,he,ze,Ut,Qr,kn){var Fi,rs=he&I,qs=he&C,vc=he&b;if(ze&&(Fi=Qr?ze(ie,Ut,Qr,kn):ze(ie)),Fi!==e)return Fi;if(!WI(ie))return ie;var qa=Ed(ie);if(qa){if(Fi=IE(ie),!rs)return Cl(ie,Fi)}else{var fc=Nh(ie),vl=fc==qr||fc==_n;if(PT(ie))return cA(ie,rs);if(fc==Nn||fc==xt||vl&&!Qr){if(Fi=qs||vl?{}:zR(ie),!rs)return qs?j2(ie,b0(Fi,ie)):$f(ie,GT(Fi,ie))}else{if(!us[fc])return Qr?ie:{};Fi=e3(ie,fc,rs)}}kn||(kn=new lc);var Zu=kn.get(ie);if(Zu)return Zu;kn.set(ie,Fi),wJ(ie)?ie.forEach(function(Sd){Fi.add(bI(Sd,he,ze,Sd,ie,kn))}):Dre(ie)&&ie.forEach(function(Sd,tI){Fi.set(tI,bI(Sd,he,ze,tI,ie,kn))});var VA=vc?qs?Xr:kr:qs?Ew:S0,hf=qa?e:VA(ie);return cp(hf||ie,function(Sd,tI){hf&&(tI=Sd,Sd=ie[tI]),r1(Fi,tI,bI(Sd,he,ze,tI,ie,kn))}),Fi}function ag(ie){var he=S0(ie);return function(ze){return Eb(ze,ie,he)}}function Eb(ie,he,ze){var Ut=ze.length;if(ie==null)return!Ut;for(ie=Ld(ie);Ut--;){var Qr=ze[Ut],kn=he[Qr],Fi=ie[Qr];if(Fi===e&&!(Qr in ie)||!kn(Fi))return!1}return!0}function n1(ie,he,ze){if(typeof ie!="function")throw new Ym(a);return Dd(function(){ie.apply(e,ze)},he)}function U2(ie,he,ze,Ut){var Qr=-1,kn=lm,Fi=!0,rs=ie.length,qs=[],vc=he.length;if(!rs)return qs;ze&&(he=CI(he,lp(ze))),Ut?(kn=Kf,Fi=!1):he.length>=r&&(kn=Na,Fi=!1,he=new q_(he));e:for(;++QrQr?0:Qr+ze),Ut=Ut===e||Ut>Qr?Qr:If(Ut),Ut<0&&(Ut+=Qr),Ut=ze>Ut?0:WT(Ut);ze0&&ze(rs)?he>1?Xh(rs,he-1,ze,Ut,Qr):_I(Qr,rs):Ut||(Qr[Qr.length]=rs)}return Qr}var E0=Yu(),aA=Yu(!0);function fu(ie,he){return ie&&E0(ie,he,S0)}function Jp(ie,he){return ie&&aA(ie,he,S0)}function dC(ie,he){return pe(he,function(ze){return wx(ie[ze])})}function uE(ie,he){he=Ta(he,ie);for(var ze=0,Ut=he.length;ie!=null&&zehe}function gp(ie,he){return ie!=null&&Yp.call(ie,he)}function lF(ie,he){return ie!=null&&he in Ld(ie)}function uF(ie,he,ze){return ie>=BA(he,ze)&&ie<$I(he,ze)}function gE(ie,he,ze){for(var Ut=ze?Kf:lm,Qr=ie[0].length,kn=ie.length,Fi=kn,rs=ko(kn),qs=1/0,vc=[];Fi--;){var qa=ie[Fi];Fi&&he&&(qa=CI(qa,lp(he))),qs=BA(qa.length,qs),rs[Fi]=!ze&&(he||Qr>=120&&qa.length>=120)?new q_(Fi&&qa):e}qa=ie[0];var fc=-1,vl=rs[0];e:for(;++fc-1;)rs!==ie&&Ng.call(rs,qs,1),Ng.call(ie,qs,1);return ie}function r2(ie,he){for(var ze=ie?he.length:0,Ut=ze-1;ze--;){var Qr=he[ze];if(ze==Ut||Qr!==kn){var kn=Qr;zd(Qr)?Ng.call(ie,Qr,1):te(ie,Qr)}}return ie}function i1(ie,he){return ie+jE(zf()*(he-ie+1))}function Of(ie,he,ze,Ut){for(var Qr=-1,kn=$I(wy((he-ie)/(ze||1)),0),Fi=ko(kn);kn--;)Fi[Ut?kn:++Qr]=ie,ie+=ze;return Fi}function pE(ie,he){var ze="";if(!ie||he<1||he>St)return ze;do he%2&&(ze+=ie),he=jE(he/2),he&&(ie+=ie);while(he);return ze}function Vd(ie,he){return ji(ad(ie,he,vw),ie+"")}function j(ie){return uB(GJ(ie))}function Z(ie,he){var ze=GJ(ie);return Ap(ze,yd(he,0,ze.length))}function Id(ie,he,ze,Ut){if(!WI(ie))return ie;he=Ta(he,ie);for(var Qr=-1,kn=he.length,Fi=kn-1,rs=ie;rs!=null&&++QrQr?0:Qr+he),ze=ze>Qr?Qr:ze,ze<0&&(ze+=Qr),Qr=he>ze?0:ze-he>>>0,he>>>=0;for(var kn=ko(Qr);++Ut>>1,Fi=ie[kn];Fi!==null&&!eI(Fi)&&(ze?Fi<=he:Fi=r){var vc=he?null:Uh(ie);if(vc)return kC(vc);Fi=!1,Qr=Na,qs=new q_}else qs=he?[]:rs;e:for(;++Ut=Ut?ie:vb(ie,he,ze)}var Wg=TT||function(ie){return YA.clearTimeout(ie)};function cA(ie,he){if(he)return ie.slice();var ze=ie.length,Ut=Gn?Gn(ze):new ie.constructor(ze);return ie.copy(Ut),Ut}function th(ie){var he=new ie.constructor(ie.byteLength);return new Jr(he).set(new Jr(ie)),he}function xn(ie,he){var ze=he?th(ie.buffer):ie.buffer;return new ie.constructor(ze,ie.byteOffset,ie.byteLength)}function rn(ie){var he=new ie.constructor(ie.source,Wt.exec(ie));return he.lastIndex=ie.lastIndex,he}function Ci(ie){return X2?Ld(X2.call(ie)):{}}function Po(ie,he){var ze=he?th(ie.buffer):ie.buffer;return new ie.constructor(ze,ie.byteOffset,ie.length)}function ec(ie,he){if(ie!==he){var ze=ie!==e,Ut=ie===null,Qr=ie===ie,kn=eI(ie),Fi=he!==e,rs=he===null,qs=he===he,vc=eI(he);if(!rs&&!vc&&!kn&&ie>he||kn&&Fi&&qs&&!rs&&!vc||Ut&&Fi&&qs||!ze&&qs||!Qr)return 1;if(!Ut&&!kn&&!vc&&ie=rs)return qs;var vc=ze[Ut];return qs*(vc=="desc"?-1:1)}}return ie.index-he.index}function dc(ie,he,ze,Ut){for(var Qr=-1,kn=ie.length,Fi=ze.length,rs=-1,qs=he.length,vc=$I(kn-Fi,0),qa=ko(qs+vc),fc=!Ut;++rs1?ze[Qr-1]:e,Fi=Qr>2?ze[2]:e;for(kn=ie.length>3&&typeof kn=="function"?(Qr--,kn):e,Fi&&wA(ze[0],ze[1],Fi)&&(kn=Qr<3?e:kn,Qr=1),he=Ld(he);++Ut-1?Qr[kn?he[Fi]:Fi]:e}}function LT(ie){return Jt(function(he){var ze=he.length,Ut=ze,Qr=ey.prototype.thru;for(ie&&he.reverse();Ut--;){var kn=he[Ut];if(typeof kn!="function")throw new Ym(a);if(Qr&&!Fi&&Is(kn)=="wrapper")var Fi=new ey([],!0)}for(Ut=Fi?Ut:ze;++Ut1&&rI.reverse(),qa&&qsrs))return!1;var vc=kn.get(ie),qa=kn.get(he);if(vc&&qa)return vc==he&&qa==ie;var fc=-1,vl=!0,Zu=ze&N?new q_:e;for(kn.set(ie,he),kn.set(he,ie);++fc1?"& ":"")+he[Ut],he=he.join(ze>2?", ":" "),ie.replace(Da,`{ +${B}`),n?a.reset(B):B}function GUo(e,t,r,n={}){if(!L5n){L5n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),W5n(e,{start:{column:r,line:t}},n)}});var q5n=H(Lm=>{"use strict";var SMe=Symbol.for("react.element"),FUo=Symbol.for("react.portal"),ZUo=Symbol.for("react.fragment"),LUo=Symbol.for("react.strict_mode"),VUo=Symbol.for("react.profiler"),PUo=Symbol.for("react.provider"),WUo=Symbol.for("react.context"),OUo=Symbol.for("react.forward_ref"),MUo=Symbol.for("react.suspense"),HUo=Symbol.for("react.memo"),YUo=Symbol.for("react.lazy"),O5n=Symbol.iterator;function QUo(e){return e===null||typeof e!="object"?null:(e=O5n&&e[O5n]||e["@@iterator"],typeof e=="function"?e:null)}var Y5n={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Q5n=Object.assign,X5n={};function nBe(e,t,r){this.props=e,this.context=t,this.refs=X5n,this.updater=r||Y5n}nBe.prototype.isReactComponent={};nBe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};nBe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function J5n(){}J5n.prototype=nBe.prototype;function AIr(e,t,r){this.props=e,this.context=t,this.refs=X5n,this.updater=r||Y5n}var dIr=AIr.prototype=new J5n;dIr.constructor=AIr;Q5n(dIr,nBe.prototype);dIr.isPureReactComponent=!0;var M5n=Array.isArray,U5n=Object.prototype.hasOwnProperty,pIr={current:null},K5n={key:!0,ref:!0,__self:!0,__source:!0};function j5n(e,t,r){var n,a={},o=null,l=null;if(t!=null)for(n in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)U5n.call(t,n)&&!K5n.hasOwnProperty(n)&&(a[n]=t[n]);var A=arguments.length-2;if(A===1)a.children=r;else if(1{"use strict";$5n.exports=q5n()});var IIr=H((iBe,vMe)=>{(function(){var e,t="4.17.21",r=200,n="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",A=500,f="__lodash_placeholder__",I=1,C=2,b=4,E=1,N=2,B=1,F=2,Q=4,X=8,ae=16,ne=32,ce=64,fe=128,ue=256,de=512,be=30,Se="...",De=800,k=16,et=1,ct=2,Me=3,je=1/0,St=9007199254740991,At=17976931348623157e292,Yt=NaN,Tr=4294967295,Nr=Tr-1,er=Tr>>>1,vt=[["ary",fe],["bind",B],["bindKey",F],["curry",X],["curryRight",ae],["flip",de],["partial",ne],["partialRight",ce],["rearg",ue]],xt="[object Arguments]",Zr="[object Array]",qt="[object AsyncFunction]",Xt="[object Boolean]",lr="[object Date]",cr="[object DOMException]",Ar="[object Error]",qr="[object Function]",_n="[object GeneratorFunction]",ke="[object Map]",jt="[object Number]",Fn="[object Null]",Nn="[object Object]",Hi="[object Promise]",po="[object Proxy]",Vr="[object RegExp]",xi="[object Set]",io="[object String]",ga="[object Symbol]",Ya="[object Undefined]",Gc="[object WeakMap]",cl="[object WeakSet]",Sc="[object ArrayBuffer]",Hr="[object DataView]",Wr="[object Float32Array]",Ft="[object Float64Array]",zr="[object Int8Array]",Rn="[object Int16Array]",Or="[object Int32Array]",Qi="[object Uint8Array]",ps="[object Uint8ClampedArray]",yo="[object Uint16Array]",bo="[object Uint32Array]",Qa=/\b__p \+= '';/g,gc=/\b(__p \+=) '' \+/g,Cg=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Nc=/&(?:amp|lt|gt|quot|#39);/g,iA=/[&<>"']/g,ma=RegExp(Nc.source),vu=RegExp(iA.source),li=/<%-([\s\S]+?)%>/g,Ei=/<%([\s\S]+?)%>/g,Ps=/<%=([\s\S]+?)%>/g,Xa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ac=/^\w*$/,Yl=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Wc=/[\\^$.*+?()[\]{}|]/g,Sg=RegExp(Wc.source),Ul=/^\s+/,Xu=/\s/,Da=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,pu=/\{\n\/\* \[wrapped with (.+)\] \*/,_g=/,? & /,mI=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Qh=/[()=,{}\[\]\/\s]/,Ri=/\\(\\)?/g,Do=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Wt=/\w*$/,Hu=/^[-+]0x[0-9a-f]+$/i,Ru=/^0b[01]+$/i,Vs=/^\[object .+?Constructor\]$/,Ju=/^0o[0-7]+$/i,Yn=/^(?:0|[1-9]\d*)$/,Ko=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Eg=/($^)/,OA=/['\n\r\u2028\u2029\\]/g,GA="\\ud800-\\udfff",$i="\\u0300-\\u036f",dl="\\ufe20-\\ufe2f",Uf="\\u20d0-\\u20ff",Kd=$i+dl+Uf,oA="\\u2700-\\u27bf",oo="a-z\\xdf-\\xf6\\xf8-\\xff",Ki="\\xac\\xb1\\xd7\\xf7",cc="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Xs="\\u2000-\\u206f",ws=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Gs="A-Z\\xc0-\\xd6\\xd8-\\xde",Ma="\\ufe0e\\ufe0f",Dc=Ki+cc+Xs+ws,As="['\u2019]",Tf="["+GA+"]",cm="["+Dc+"]",Fl="["+Kd+"]",rc="\\d+",sd="["+oA+"]",Om="["+oo+"]",il="[^"+GA+Dc+rc+oA+oo+Gs+"]",FA="\\ud83c[\\udffb-\\udfff]",ZA="(?:"+Fl+"|"+FA+")",El="[^"+GA+"]",yg="(?:\\ud83c[\\udde6-\\uddff]){2}",Mp="[\\ud800-\\udbff][\\udc00-\\udfff]",MA="["+Gs+"]",Er="\\u200d",Zt="(?:"+Om+"|"+il+")",bn="(?:"+MA+"|"+il+")",ls="(?:"+As+"(?:d|ll|m|re|s|t|ve))?",oa="(?:"+As+"(?:D|LL|M|RE|S|T|VE))?",Fs=ZA+"?",Wa="["+Ma+"]?",Ca="(?:"+Er+"(?:"+[El,yg,Mp].join("|")+")"+Wa+Fs+")*",ld="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Rp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",np=Wa+Fs+Ca,HA="(?:"+[sd,yg,Mp].join("|")+")"+np,df="(?:"+[El+Fl+"?",Fl,yg,Mp,Tf].join("|")+")",Zs=RegExp(As,"g"),so=RegExp(Fl,"g"),Ea=RegExp(FA+"(?="+FA+")|"+df+np,"g"),Ml=RegExp([MA+"?"+Om+"+"+ls+"(?="+[cm,MA,"$"].join("|")+")",bn+"+"+oa+"(?="+[cm,MA+Zt,"$"].join("|")+")",MA+"?"+Zt+"+"+ls,MA+"+"+oa,Rp,ld,rc,HA].join("|"),"g"),Dr=RegExp("["+Er+GA+Kd+Ma+"]"),Wn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],aa=-1,Bo={};Bo[Wr]=Bo[Ft]=Bo[zr]=Bo[Rn]=Bo[Or]=Bo[Qi]=Bo[ps]=Bo[yo]=Bo[bo]=!0,Bo[xt]=Bo[Zr]=Bo[Sc]=Bo[Xt]=Bo[Hr]=Bo[lr]=Bo[Ar]=Bo[qr]=Bo[ke]=Bo[jt]=Bo[Nn]=Bo[Vr]=Bo[xi]=Bo[io]=Bo[Gc]=!1;var us={};us[xt]=us[Zr]=us[Sc]=us[Hr]=us[Xt]=us[lr]=us[Wr]=us[Ft]=us[zr]=us[Rn]=us[Or]=us[ke]=us[jt]=us[Nn]=us[Vr]=us[xi]=us[io]=us[ga]=us[Qi]=us[ps]=us[yo]=us[bo]=!0,us[Ar]=us[qr]=us[Gc]=!1;var Ql={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},LA={"&":"&","<":"<",">":">",'"':""","'":"'"},pf={"&":"&","<":"<",">":">",""":'"',"'":"'"},ef={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ip=parseFloat,_d=parseInt,j1=typeof global=="object"&&global&&global.Object===Object&&global,pw=typeof self=="object"&&self&&self.Object===Object&&self,YA=j1||pw||Function("return this")(),Ac=typeof iBe=="object"&&iBe&&!iBe.nodeType&&iBe,Nm=Ac&&typeof vMe=="object"&&vMe&&!vMe.nodeType&&vMe,HS=Nm&&Nm.exports===Ac,jd=HS&&j1.process,dh=function(){try{var cs=Nm&&Nm.require&&Nm.require("util").types;return cs||jd&&jd.binding&&jd.binding("util")}catch{}}(),Hp=dh&&dh.isArrayBuffer,uC=dh&&dh.isDate,nE=dh&&dh.isMap,J_=dh&&dh.isRegExp,q0=dh&&dh.isSet,XE=dh&&dh.isTypedArray;function TC(cs,na,ko){switch(ko.length){case 0:return cs.call(na);case 1:return cs.call(na,ko[0]);case 2:return cs.call(na,ko[0],ko[1]);case 3:return cs.call(na,ko[0],ko[1],ko[2])}return cs.apply(na,ko)}function t_(cs,na,ko,ki){for(var Kl=-1,fd=cs==null?0:cs.length;++Kl-1}function Kf(cs,na,ko){for(var ki=-1,Kl=cs==null?0:cs.length;++ki-1;);return ko}function z1(cs,na){for(var ko=cs.length;ko--&&Yr(na,cs[ko],0)>-1;);return ko}function T_(cs,na){for(var ko=cs.length,ki=0;ko--;)cs[ko]===na&&++ki;return ki}var RC=kc(Ql),Hm=kc(LA);function YS(cs){return"\\"+ef[cs]}function Fg(cs,na){return cs==null?e:cs[na]}function hb(cs){return Dr.test(cs)}function gC(cs){return Wn.test(cs)}function NC(cs){for(var na,ko=[];!(na=cs.next()).done;)ko.push(na.value);return ko}function Y2(cs){var na=-1,ko=Array(cs.size);return cs.forEach(function(ki,Kl){ko[++na]=[Kl,ki]}),ko}function U_(cs,na){return function(ko){return cs(na(ko))}}function DC(cs,na){for(var ko=-1,ki=cs.length,Kl=0,fd=[];++ko-1}function yb(ie,he){var ze=this.__data__,Ut=gB(ze,ie);return Ut<0?(++this.size,ze.push([ie,he])):ze[Ut][1]=he,this}N_.prototype.clear=e1,N_.prototype.delete=t1,N_.prototype.get=ry,N_.prototype.has=xT,N_.prototype.set=yb;function r_(ie){var he=-1,ze=ie==null?0:ie.length;for(this.clear();++he=he?ie:he)),ie}function bI(ie,he,ze,Ut,Qr,kn){var Fi,rs=he&I,$s=he&C,vc=he&b;if(ze&&(Fi=Qr?ze(ie,Ut,Qr,kn):ze(ie)),Fi!==e)return Fi;if(!WI(ie))return ie;var qa=Ed(ie);if(qa){if(Fi=IE(ie),!rs)return Cl(ie,Fi)}else{var fc=Nh(ie),vl=fc==qr||fc==_n;if(PT(ie))return cA(ie,rs);if(fc==Nn||fc==xt||vl&&!Qr){if(Fi=$s||vl?{}:zR(ie),!rs)return $s?j2(ie,b0(Fi,ie)):$f(ie,GT(Fi,ie))}else{if(!us[fc])return Qr?ie:{};Fi=e3(ie,fc,rs)}}kn||(kn=new lc);var Zu=kn.get(ie);if(Zu)return Zu;kn.set(ie,Fi),wJ(ie)?ie.forEach(function(Sd){Fi.add(bI(Sd,he,ze,Sd,ie,kn))}):kre(ie)&&ie.forEach(function(Sd,tI){Fi.set(tI,bI(Sd,he,ze,tI,ie,kn))});var VA=vc?$s?Xr:kr:$s?Ew:S0,hf=qa?e:VA(ie);return cp(hf||ie,function(Sd,tI){hf&&(tI=Sd,Sd=ie[tI]),r1(Fi,tI,bI(Sd,he,ze,tI,ie,kn))}),Fi}function ag(ie){var he=S0(ie);return function(ze){return Eb(ze,ie,he)}}function Eb(ie,he,ze){var Ut=ze.length;if(ie==null)return!Ut;for(ie=Ld(ie);Ut--;){var Qr=ze[Ut],kn=he[Qr],Fi=ie[Qr];if(Fi===e&&!(Qr in ie)||!kn(Fi))return!1}return!0}function n1(ie,he,ze){if(typeof ie!="function")throw new Ym(a);return Dd(function(){ie.apply(e,ze)},he)}function U2(ie,he,ze,Ut){var Qr=-1,kn=lm,Fi=!0,rs=ie.length,$s=[],vc=he.length;if(!rs)return $s;ze&&(he=CI(he,lp(ze))),Ut?(kn=Kf,Fi=!1):he.length>=r&&(kn=Na,Fi=!1,he=new q_(he));e:for(;++QrQr?0:Qr+ze),Ut=Ut===e||Ut>Qr?Qr:If(Ut),Ut<0&&(Ut+=Qr),Ut=ze>Ut?0:WT(Ut);ze0&&ze(rs)?he>1?Xh(rs,he-1,ze,Ut,Qr):_I(Qr,rs):Ut||(Qr[Qr.length]=rs)}return Qr}var E0=Yu(),aA=Yu(!0);function fu(ie,he){return ie&&E0(ie,he,S0)}function Jp(ie,he){return ie&&aA(ie,he,S0)}function dC(ie,he){return pe(he,function(ze){return wx(ie[ze])})}function uE(ie,he){he=Ta(he,ie);for(var ze=0,Ut=he.length;ie!=null&&zehe}function gp(ie,he){return ie!=null&&Yp.call(ie,he)}function lF(ie,he){return ie!=null&&he in Ld(ie)}function uF(ie,he,ze){return ie>=BA(he,ze)&&ie<$I(he,ze)}function gE(ie,he,ze){for(var Ut=ze?Kf:lm,Qr=ie[0].length,kn=ie.length,Fi=kn,rs=ko(kn),$s=1/0,vc=[];Fi--;){var qa=ie[Fi];Fi&&he&&(qa=CI(qa,lp(he))),$s=BA(qa.length,$s),rs[Fi]=!ze&&(he||Qr>=120&&qa.length>=120)?new q_(Fi&&qa):e}qa=ie[0];var fc=-1,vl=rs[0];e:for(;++fc-1;)rs!==ie&&Ng.call(rs,$s,1),Ng.call(ie,$s,1);return ie}function r2(ie,he){for(var ze=ie?he.length:0,Ut=ze-1;ze--;){var Qr=he[ze];if(ze==Ut||Qr!==kn){var kn=Qr;zd(Qr)?Ng.call(ie,Qr,1):te(ie,Qr)}}return ie}function i1(ie,he){return ie+jE(zf()*(he-ie+1))}function Of(ie,he,ze,Ut){for(var Qr=-1,kn=$I(wy((he-ie)/(ze||1)),0),Fi=ko(kn);kn--;)Fi[Ut?kn:++Qr]=ie,ie+=ze;return Fi}function pE(ie,he){var ze="";if(!ie||he<1||he>St)return ze;do he%2&&(ze+=ie),he=jE(he/2),he&&(ie+=ie);while(he);return ze}function Vd(ie,he){return ji(ad(ie,he,vw),ie+"")}function j(ie){return uB(GJ(ie))}function Z(ie,he){var ze=GJ(ie);return Ap(ze,yd(he,0,ze.length))}function Id(ie,he,ze,Ut){if(!WI(ie))return ie;he=Ta(he,ie);for(var Qr=-1,kn=he.length,Fi=kn-1,rs=ie;rs!=null&&++QrQr?0:Qr+he),ze=ze>Qr?Qr:ze,ze<0&&(ze+=Qr),Qr=he>ze?0:ze-he>>>0,he>>>=0;for(var kn=ko(Qr);++Ut>>1,Fi=ie[kn];Fi!==null&&!eI(Fi)&&(ze?Fi<=he:Fi=r){var vc=he?null:Uh(ie);if(vc)return kC(vc);Fi=!1,Qr=Na,$s=new q_}else $s=he?[]:rs;e:for(;++Ut=Ut?ie:vb(ie,he,ze)}var Wg=TT||function(ie){return YA.clearTimeout(ie)};function cA(ie,he){if(he)return ie.slice();var ze=ie.length,Ut=Gn?Gn(ze):new ie.constructor(ze);return ie.copy(Ut),Ut}function th(ie){var he=new ie.constructor(ie.byteLength);return new Jr(he).set(new Jr(ie)),he}function xn(ie,he){var ze=he?th(ie.buffer):ie.buffer;return new ie.constructor(ze,ie.byteOffset,ie.byteLength)}function rn(ie){var he=new ie.constructor(ie.source,Wt.exec(ie));return he.lastIndex=ie.lastIndex,he}function Ci(ie){return X2?Ld(X2.call(ie)):{}}function Po(ie,he){var ze=he?th(ie.buffer):ie.buffer;return new ie.constructor(ze,ie.byteOffset,ie.length)}function ec(ie,he){if(ie!==he){var ze=ie!==e,Ut=ie===null,Qr=ie===ie,kn=eI(ie),Fi=he!==e,rs=he===null,$s=he===he,vc=eI(he);if(!rs&&!vc&&!kn&&ie>he||kn&&Fi&&$s&&!rs&&!vc||Ut&&Fi&&$s||!ze&&$s||!Qr)return 1;if(!Ut&&!kn&&!vc&&ie=rs)return $s;var vc=ze[Ut];return $s*(vc=="desc"?-1:1)}}return ie.index-he.index}function dc(ie,he,ze,Ut){for(var Qr=-1,kn=ie.length,Fi=ze.length,rs=-1,$s=he.length,vc=$I(kn-Fi,0),qa=ko($s+vc),fc=!Ut;++rs<$s;)qa[rs]=he[rs];for(;++Qr1?ze[Qr-1]:e,Fi=Qr>2?ze[2]:e;for(kn=ie.length>3&&typeof kn=="function"?(Qr--,kn):e,Fi&&wA(ze[0],ze[1],Fi)&&(kn=Qr<3?e:kn,Qr=1),he=Ld(he);++Ut-1?Qr[kn?he[Fi]:Fi]:e}}function LT(ie){return Jt(function(he){var ze=he.length,Ut=ze,Qr=ey.prototype.thru;for(ie&&he.reverse();Ut--;){var kn=he[Ut];if(typeof kn!="function")throw new Ym(a);if(Qr&&!Fi&&Is(kn)=="wrapper")var Fi=new ey([],!0)}for(Ut=Fi?Ut:ze;++Ut1&&rI.reverse(),qa&&$srs))return!1;var vc=kn.get(ie),qa=kn.get(he);if(vc&&qa)return vc==he&&qa==ie;var fc=-1,vl=!0,Zu=ze&N?new q_:e;for(kn.set(ie,he),kn.set(he,ie);++fc1?"& ":"")+he[Ut],he=he.join(ze>2?", ":" "),ie.replace(Da,`{ /* [wrapped with `+he+`] */ -`)}function EI(ie){return Ed(ie)||_Y(ie)||!!(Rf&&ie&&ie[Rf])}function zd(ie,he){var ze=typeof ie;return he=he??St,!!he&&(ze=="number"||ze!="symbol"&&Yn.test(ie))&&ie>-1&&ie%1==0&&ie0){if(++he>=De)return arguments[0]}else he=0;return ie.apply(e,arguments)}}function Ap(ie,he){var ze=-1,Ut=ie.length,Qr=Ut-1;for(he=he===e?Ut:he;++ze1?ie[he-1]:e;return ze=typeof ze=="function"?(ie.pop(),ze):e,i3(ie,ze)});function q6(ie){var he=pn(ie);return he.__chain__=!0,he}function BL(ie,he){return he(ie),ie}function tN(ie,he){return he(ie)}var pY=Jt(function(ie){var he=ie.length,ze=he?ie[0]:0,Ut=this.__wrapped__,Qr=function(kn){return e2(kn,ie)};return he>1||this.__actions__.length||!(Ut instanceof up)||!zd(ze)?this.thru(Qr):(Ut=Ut.slice(ze,+ze+(he?1:0)),Ut.__actions__.push({func:tN,args:[Qr],thisArg:e}),new ey(Ut,this.__chain__).thru(function(kn){return he&&!kn.length&&kn.push(e),kn}))});function wL(){return q6(this)}function bre(){return new ey(this.value(),this.__chain__)}function LD(){this.__values__===e&&(this.__values__=bB(this.value()));var ie=this.__index__>=this.__values__.length,he=ie?e:this.__values__[this.__index__++];return{done:ie,value:he}}function ige(){return this}function $6(ie){for(var he,ze=this;ze instanceof J2;){var Ut=J6(ze);Ut.__index__=0,Ut.__values__=e,he?Qr.__wrapped__=Ut:he=Ut;var Qr=Ut;ze=ze.__wrapped__}return Qr.__wrapped__=ie,he}function eS(){var ie=this.__wrapped__;if(ie instanceof up){var he=ie;return this.__actions__.length&&(he=new up(this)),he=he.reverse(),he.__actions__.push({func:tN,args:[oP],thisArg:e}),new ey(he,this.__chain__)}return this.thru(oP)}function rN(){return ft(this.__wrapped__,this.__actions__)}var mJ=_x(function(ie,he,ze){Yp.call(ie,ze)?++ie[ze]:ia(ie,ze,1)});function nN(ie,he,ze){var Ut=Ed(ie)?fb:Xp;return ze&&wA(ie,he,ze)&&(he=e),Ut(ie,Rs(he,3))}function sge(ie,he){var ze=Ed(ie)?pe:Ip;return ze(ie,Rs(he,3))}var Ere=iY(uJ),e7=iY(lY);function kp(ie,he){return Xh(fC(ie,he),1)}function TL(ie,he){return Xh(fC(ie,he),je)}function fY(ie,he,ze){return ze=ze===e?1:If(ze),Xh(fC(ie,he),ze)}function pC(ie,he){var ze=Ed(ie)?cp:e0;return ze(ie,Rs(he,3))}function cP(ie,he){var ze=Ed(ie)?Mm:n_;return ze(ie,Rs(he,3))}var VD=_x(function(ie,he,ze){Yp.call(ie,ze)?ie[ze].push(he):ia(ie,ze,[he])});function IY(ie,he,ze,Ut){ie=sN(ie)?ie:GJ(ie),ze=ze&&!Ut?If(ze):0;var Qr=ie.length;return ze<0&&(ze=$I(Qr+ze,0)),TJ(ie)?ze<=Qr&&ie.indexOf(he,ze)>-1:!!Qr&&Yr(ie,he,ze)>-1}var Sre=Vd(function(ie,he,ze){var Ut=-1,Qr=typeof he=="function",kn=sN(ie)?ko(ie.length):[];return e0(ie,function(Fi){kn[++Ut]=Qr?TC(he,Fi,ze):Np(Fi,he,ze)}),kn}),Ig=_x(function(ie,he,ze){ia(ie,ze,he)});function fC(ie,he){var ze=Ed(ie)?CI:K2;return ze(ie,Rs(he,3))}function VI(ie,he,ze,Ut){return ie==null?[]:(Ed(he)||(he=he==null?[]:[he]),ze=Ut?e:ze,Ed(ze)||(ze=ze==null?[]:[ze]),qf(ie,he,ze))}var RL=_x(function(ie,he,ze){ie[ze?0:1].push(he)},function(){return[[],[]]});function bu(ie,he,ze){var Ut=Ed(ie)?H2:Nl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),ze,Qr,e0)}function s3(ie,he,ze){var Ut=Ed(ie)?iE:Nl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),ze,Qr,n_)}function kd(ie,he){var ze=Ed(ie)?pe:Ip;return ze(ie,uP(Rs(he,3)))}function hY(ie){var he=Ed(ie)?uB:j;return he(ie)}function nye(ie,he,ze){(ze?wA(ie,he,ze):he===e)?he=1:he=If(he);var Ut=Ed(ie)?Ih:Z;return Ut(ie,he)}function lP(ie){var he=Ed(ie)?xC:Ny;return he(ie)}function CJ(ie){if(ie==null)return 0;if(sN(ie))return TJ(ie)?Td(ie):ie.length;var he=Nh(ie);return he==ke||he==xi?ie.size:ny(ie).length}function PI(ie,he,ze){var Ut=Ed(ie)?se:xD;return ze&&wA(ie,he,ze)&&(he=e),Ut(ie,Rs(he,3))}var xa=Vd(function(ie,he){if(ie==null)return[];var ze=he.length;return ze>1&&wA(ie,he[0],he[1])?he=[]:ze>2&&wA(he[0],he[1],he[2])&&(he=[he[0]]),qf(ie,Xh(he,1),[])}),yB=sB||function(){return YA.Date.now()};function t0(ie,he){if(typeof he!="function")throw new Ym(a);return ie=If(ie),function(){if(--ie<1)return he.apply(this,arguments)}}function vre(ie,he,ze){return he=ze?e:he,he=ie&&he==null?ie.length:he,Uu(ie,fe,e,e,e,e,he)}function NL(ie,he){var ze;if(typeof he!="function")throw new Ym(a);return ie=If(ie),function(){return--ie>0&&(ze=he.apply(this,arguments)),ie<=1&&(he=e),ze}}var dp=Vd(function(ie,he,ze){var Ut=B;if(ze.length){var Qr=DC(ze,Hs(dp));Ut|=ne}return Uu(ie,Ut,he,ze,Qr)}),Bx=Vd(function(ie,he,ze){var Ut=B|F;if(ze.length){var Qr=DC(ze,Hs(Bx));Ut|=ne}return Uu(he,Ut,ie,ze,Qr)});function mY(ie,he,ze){he=ze?e:he;var Ut=Uu(ie,X,e,e,e,e,e,he);return Ut.placeholder=mY.placeholder,Ut}function yw(ie,he,ze){he=ze?e:he;var Ut=Uu(ie,ae,e,e,e,e,e,he);return Ut.placeholder=yw.placeholder,Ut}function uc(ie,he,ze){var Ut,Qr,kn,Fi,rs,qs,vc=0,qa=!1,fc=!1,vl=!0;if(typeof ie!="function")throw new Ym(a);he=l1(he)||0,WI(ze)&&(qa=!!ze.leading,fc="maxWait"in ze,kn=fc?$I(l1(ze.maxWait)||0,he):kn,vl="trailing"in ze?!!ze.trailing:vl);function Zu(Up){var uv=Ut,ky=Qr;return Ut=Qr=e,vc=Up,Fi=ie.apply(ky,uv),Fi}function VA(Up){return vc=Up,rs=Dd(tI,he),qa?Zu(Up):Fi}function hf(Up){var uv=Up-qs,ky=Up-vc,nS=he-uv;return fc?BA(nS,kn-ky):nS}function Sd(Up){var uv=Up-qs,ky=Up-vc;return qs===e||uv>=he||uv<0||fc&&ky>=kn}function tI(){var Up=yB();if(Sd(Up))return rI(Up);rs=Dd(tI,hf(Up))}function rI(Up){return rs=e,vl&&Ut?Zu(Up):(Ut=Qr=e,Fi)}function OT(){rs!==e&&Wg(rs),vc=0,Ut=qs=Qr=rs=e}function rS(){return rs===e?Fi:rI(yB())}function Dy(){var Up=yB(),uv=Sd(Up);if(Ut=arguments,Qr=this,qs=Up,uv){if(rs===e)return VA(qs);if(fc)return Wg(rs),rs=Dd(tI,he),Zu(qs)}return rs===e&&(rs=Dd(tI,he)),Fi}return Dy.cancel=OT,Dy.flush=rS,Dy}var oge=Vd(function(ie,he){return n1(ie,1,he)}),Nu=Vd(function(ie,he,ze){return n1(ie,l1(he)||0,ze)});function CY(ie){return Uu(ie,de)}function o3(ie,he){if(typeof ie!="function"||he!=null&&typeof he!="function")throw new Ym(a);var ze=function(){var Ut=arguments,Qr=he?he.apply(this,Ut):Ut[0],kn=ze.cache;if(kn.has(Qr))return kn.get(Qr);var Fi=ie.apply(this,Ut);return ze.cache=kn.set(Qr,Fi)||kn,Fi};return ze.cache=new(o3.Cache||r_),ze}o3.Cache=r_;function uP(ie){if(typeof ie!="function")throw new Ym(a);return function(){var he=arguments;switch(he.length){case 0:return!ie.call(this);case 1:return!ie.call(this,he[0]);case 2:return!ie.call(this,he[0],he[1]);case 3:return!ie.call(this,he[0],he[1],he[2])}return!ie.apply(this,he)}}function _J(ie){return NL(2,ie)}var yJ=Sl(function(ie,he){he=he.length==1&&Ed(he[0])?CI(he[0],lp(Rs())):CI(Xh(he,1),lp(Rs()));var ze=he.length;return Vd(function(Ut){for(var Qr=-1,kn=BA(Ut.length,ze);++Qr=he}),_Y=Dm(function(){return arguments}())?Dm:function(ie){return CE(ie)&&Yp.call(ie,"callee")&&!vg.call(ie,"callee")},Ed=ko.isArray,VT=Hp?lp(Hp):Dp;function sN(ie){return ie!=null&&mE(ie.length)&&!wx(ie)}function Db(ie){return CE(ie)&&sN(ie)}function t7(ie){return ie===!0||ie===!1||CE(ie)&&Wf(ie)==Xt}var PT=NT||PJ,DL=uC?lp(uC):t2;function r7(ie){return CE(ie)&&ie.nodeType===1&&!yY(ie)}function n7(ie){if(ie==null)return!0;if(sN(ie)&&(Ed(ie)||typeof ie=="string"||typeof ie.splice=="function"||PT(ie)||c3(ie)||_Y(ie)))return!ie.length;var he=Nh(ie);if(he==ke||he==xi)return!ie.size;if(ye(ie))return!ny(ie).length;for(var ze in ie)if(Yp.call(ie,ze))return!1;return!0}function hE(ie,he){return Ro(ie,he)}function cge(ie,he,ze){ze=typeof ze=="function"?ze:e;var Ut=ze?ze(ie,he):e;return Ut===e?Ro(ie,he,e,ze):!!Ut}function Nre(ie){if(!CE(ie))return!1;var he=Wf(ie);return he==Ar||he==cr||typeof ie.message=="string"&&typeof ie.name=="string"&&!yY(ie)}function oye(ie){return typeof ie=="number"&&tf(ie)}function wx(ie){if(!WI(ie))return!1;var he=Wf(ie);return he==qr||he==_n||he==qt||he==po}function a3(ie){return typeof ie=="number"&&ie==If(ie)}function mE(ie){return typeof ie=="number"&&ie>-1&&ie%1==0&&ie<=St}function WI(ie){var he=typeof ie;return ie!=null&&(he=="object"||he=="function")}function CE(ie){return ie!=null&&typeof ie=="object"}var Dre=nE?lp(nE):AB;function lge(ie,he){return ie===he||Xc(ie,he,ho(he))}function jh(ie,he,ze){return ze=typeof ze=="function"?ze:e,Xc(ie,he,ho(he),ze)}function uge(ie){return kre(ie)&&ie!=+ie}function vJ(ie){if(z(ie))throw new Kl(n);return iu(ie)}function Lc(ie){return ie===null}function gge(ie){return ie==null}function kre(ie){return typeof ie=="number"||CE(ie)&&Wf(ie)==jt}function yY(ie){if(!CE(ie)||Wf(ie)!=Nn)return!1;var he=Ts(ie);if(he===null)return!0;var ze=Yp.call(he,"constructor")&&he.constructor;return typeof ze=="function"&&ze instanceof ze&&KE.call(ze)==fw}var kL=J_?lp(J_):dE;function BJ(ie){return a3(ie)&&ie>=-St&&ie<=St}var wJ=q0?lp(q0):yL;function TJ(ie){return typeof ie=="string"||!Ed(ie)&&CE(ie)&&Wf(ie)==io}function eI(ie){return typeof ie=="symbol"||CE(ie)&&Wf(ie)==ga}var c3=XE?lp(XE):KR;function RJ(ie){return ie===e}function l3(ie){return CE(ie)&&Nh(ie)==Gc}function i7(ie){return CE(ie)&&Wf(ie)==cl}var u3=mB(Am),cv=mB(function(ie,he){return ie<=he});function bB(ie){if(!ie)return[];if(sN(ie))return TJ(ie)?Mc(ie):Cl(ie);if(uI&&ie[uI])return NC(ie[uI]());var he=Nh(ie),ze=he==ke?Y2:he==xi?kC:GJ;return ze(ie)}function Xm(ie){if(!ie)return ie===0?ie:0;if(ie=l1(ie),ie===je||ie===-je){var he=ie<0?-1:1;return he*At}return ie===ie?ie:0}function If(ie){var he=Xm(ie),ze=he%1;return he===he?ze?he-ze:he:0}function WT(ie){return ie?yd(If(ie),0,Tr):0}function l1(ie){if(typeof ie=="number")return ie;if(eI(ie))return Yt;if(WI(ie)){var he=typeof ie.valueOf=="function"?ie.valueOf():ie;ie=WI(he)?he+"":he}if(typeof ie!="string")return ie===0?ie:+ie;ie=lI(ie);var ze=Ru.test(ie);return ze||Ju.test(ie)?_d(ie.slice(2),ze?2:8):Hu.test(ie)?Yt:+ie}function bY(ie){return wl(ie,Ew(ie))}function s7(ie){return ie?yd(If(ie),-St,St):ie===0?ie:0}function IC(ie){return ie==null?"":x(ie)}var xre=z2(function(ie,he){if(ye(he)||sN(he)){wl(he,S0(he),ie);return}for(var ze in he)Yp.call(he,ze)&&r1(ie,ze,he[ze])}),mA=z2(function(ie,he){wl(he,Ew(he),ie)}),Tx=z2(function(ie,he,ze,Ut){wl(he,Ew(he),ie,Ut)}),Gre=z2(function(ie,he,ze,Ut){wl(he,S0(he),ie,Ut)}),EB=Jt(e2);function aye(ie,he){var ze=q1(ie);return he==null?ze:GT(ze,he)}var Fre=Vd(function(ie,he){ie=Ld(ie);var ze=-1,Ut=he.length,Qr=Ut>2?he[2]:e;for(Qr&&wA(he[0],he[1],Qr)&&(Ut=1);++ze1),kn}),wl(ie,Xr(ie),ze),Ut&&(ze=bI(ze,I|C|b,oY));for(var Qr=he.length;Qr--;)te(ze,he[Qr]);return ze});function Vre(ie,he){return xL(ie,uP(Rs(he)))}var Ige=Jt(function(ie,he){return ie==null?{}:Jh(ie,he)});function xL(ie,he){if(ie==null)return{};var ze=CI(Xr(ie),function(Ut){return[Ut]});return he=Rs(he),$S(ie,ze,function(Ut,Qr){return he(Ut,Qr[0])})}function c7(ie,he,ze){he=Ta(he,ie);var Ut=-1,Qr=he.length;for(Qr||(Qr=1,ie=e);++Uthe){var Ut=ie;ie=he,he=Ut}if(ze||ie%1||he%1){var Qr=zf();return BA(ie+Qr*(he-ie+ip("1e-"+((Qr+"").length-1))),he)}return i1(ie,he)}var OD=mw(function(ie,he,ze){return he=he.toLowerCase(),ie+(ze?Cge(he):he)});function Cge(ie){return xp(IC(ie).toLowerCase())}function vY(ie){return ie=IC(ie),ie&&ie.replace(Ko,RC).replace(so,"")}function u7(ie,he,ze){ie=IC(ie),he=x(he);var Ut=ie.length;ze=ze===e?Ut:yd(If(ze),0,Ut);var Qr=ze;return ze-=he.length,ze>=0&&ie.slice(ze,Qr)==he}function sf(ie){return ie=IC(ie),ie&&vu.test(ie)?ie.replace(iA,Hm):ie}function u1(ie){return ie=IC(ie),ie&&Sg.test(ie)?ie.replace(Wc,"\\$&"):ie}var _ge=mw(function(ie,he,ze){return ie+(ze?"-":"")+he.toLowerCase()}),BY=mw(function(ie,he,ze){return ie+(ze?" ":"")+he.toLowerCase()}),lye=hB("toLowerCase");function uye(ie,he,ze){ie=IC(ie),he=If(he);var Ut=he?Td(ie):0;if(!he||Ut>=he)return ie;var Qr=(he-Ut)/2;return FD(jE(Qr),ze)+ie+FD(wy(Qr),ze)}function gye(ie,he,ze){ie=IC(ie),he=If(he);var Ut=he?Td(ie):0;return he&&Ut>>0,ze?(ie=IC(ie),ie&&(typeof he=="string"||he!=null&&!kL(he))&&(he=x(he),!he&&hb(ie))?Ho(Mc(ie),0,ze):ie.split(he,ze)):[]}var bge=mw(function(ie,he,ze){return ie+(ze?" ":"")+xp(he)});function MD(ie,he,ze){return ie=IC(ie),ze=ze==null?0:yd(If(ze),0,ie.length),he=x(he),ie.slice(ze,ze+he.length)==he}function Mre(ie,he,ze){var Ut=pn.templateSettings;ze&&wA(ie,he,ze)&&(he=e),ie=IC(ie),he=Tx({},he,Ut,iy);var Qr=Tx({},he.imports,Ut.imports,iy),kn=S0(Qr),Fi=Ib(Qr,kn),rs,qs,vc=0,qa=he.interpolate||Eg,fc="__p += '",vl=AC((he.escape||Eg).source+"|"+qa.source+"|"+(qa===Ps?Do:Eg).source+"|"+(he.evaluate||Eg).source+"|$","g"),Zu="//# sourceURL="+(Yp.call(he,"sourceURL")?(he.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++aa+"]")+` +`)}function EI(ie){return Ed(ie)||_Y(ie)||!!(Rf&&ie&&ie[Rf])}function zd(ie,he){var ze=typeof ie;return he=he??St,!!he&&(ze=="number"||ze!="symbol"&&Yn.test(ie))&&ie>-1&&ie%1==0&&ie0){if(++he>=De)return arguments[0]}else he=0;return ie.apply(e,arguments)}}function Ap(ie,he){var ze=-1,Ut=ie.length,Qr=Ut-1;for(he=he===e?Ut:he;++ze1?ie[he-1]:e;return ze=typeof ze=="function"?(ie.pop(),ze):e,i3(ie,ze)});function q6(ie){var he=pn(ie);return he.__chain__=!0,he}function BL(ie,he){return he(ie),ie}function tN(ie,he){return he(ie)}var pY=Jt(function(ie){var he=ie.length,ze=he?ie[0]:0,Ut=this.__wrapped__,Qr=function(kn){return e2(kn,ie)};return he>1||this.__actions__.length||!(Ut instanceof up)||!zd(ze)?this.thru(Qr):(Ut=Ut.slice(ze,+ze+(he?1:0)),Ut.__actions__.push({func:tN,args:[Qr],thisArg:e}),new ey(Ut,this.__chain__).thru(function(kn){return he&&!kn.length&&kn.push(e),kn}))});function wL(){return q6(this)}function Ere(){return new ey(this.value(),this.__chain__)}function LD(){this.__values__===e&&(this.__values__=bB(this.value()));var ie=this.__index__>=this.__values__.length,he=ie?e:this.__values__[this.__index__++];return{done:ie,value:he}}function sge(){return this}function $6(ie){for(var he,ze=this;ze instanceof J2;){var Ut=J6(ze);Ut.__index__=0,Ut.__values__=e,he?Qr.__wrapped__=Ut:he=Ut;var Qr=Ut;ze=ze.__wrapped__}return Qr.__wrapped__=ie,he}function eS(){var ie=this.__wrapped__;if(ie instanceof up){var he=ie;return this.__actions__.length&&(he=new up(this)),he=he.reverse(),he.__actions__.push({func:tN,args:[oP],thisArg:e}),new ey(he,this.__chain__)}return this.thru(oP)}function rN(){return ft(this.__wrapped__,this.__actions__)}var mJ=_x(function(ie,he,ze){Yp.call(ie,ze)?++ie[ze]:ia(ie,ze,1)});function nN(ie,he,ze){var Ut=Ed(ie)?fb:Xp;return ze&&wA(ie,he,ze)&&(he=e),Ut(ie,Rs(he,3))}function oge(ie,he){var ze=Ed(ie)?pe:Ip;return ze(ie,Rs(he,3))}var Sre=iY(uJ),e7=iY(lY);function kp(ie,he){return Xh(fC(ie,he),1)}function TL(ie,he){return Xh(fC(ie,he),je)}function fY(ie,he,ze){return ze=ze===e?1:If(ze),Xh(fC(ie,he),ze)}function pC(ie,he){var ze=Ed(ie)?cp:e0;return ze(ie,Rs(he,3))}function cP(ie,he){var ze=Ed(ie)?Mm:n_;return ze(ie,Rs(he,3))}var VD=_x(function(ie,he,ze){Yp.call(ie,ze)?ie[ze].push(he):ia(ie,ze,[he])});function IY(ie,he,ze,Ut){ie=sN(ie)?ie:GJ(ie),ze=ze&&!Ut?If(ze):0;var Qr=ie.length;return ze<0&&(ze=$I(Qr+ze,0)),TJ(ie)?ze<=Qr&&ie.indexOf(he,ze)>-1:!!Qr&&Yr(ie,he,ze)>-1}var vre=Vd(function(ie,he,ze){var Ut=-1,Qr=typeof he=="function",kn=sN(ie)?ko(ie.length):[];return e0(ie,function(Fi){kn[++Ut]=Qr?TC(he,Fi,ze):Np(Fi,he,ze)}),kn}),Ig=_x(function(ie,he,ze){ia(ie,ze,he)});function fC(ie,he){var ze=Ed(ie)?CI:K2;return ze(ie,Rs(he,3))}function VI(ie,he,ze,Ut){return ie==null?[]:(Ed(he)||(he=he==null?[]:[he]),ze=Ut?e:ze,Ed(ze)||(ze=ze==null?[]:[ze]),qf(ie,he,ze))}var RL=_x(function(ie,he,ze){ie[ze?0:1].push(he)},function(){return[[],[]]});function bu(ie,he,ze){var Ut=Ed(ie)?H2:Nl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),ze,Qr,e0)}function s3(ie,he,ze){var Ut=Ed(ie)?iE:Nl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),ze,Qr,n_)}function kd(ie,he){var ze=Ed(ie)?pe:Ip;return ze(ie,uP(Rs(he,3)))}function hY(ie){var he=Ed(ie)?uB:j;return he(ie)}function iye(ie,he,ze){(ze?wA(ie,he,ze):he===e)?he=1:he=If(he);var Ut=Ed(ie)?Ih:Z;return Ut(ie,he)}function lP(ie){var he=Ed(ie)?xC:Ny;return he(ie)}function CJ(ie){if(ie==null)return 0;if(sN(ie))return TJ(ie)?Td(ie):ie.length;var he=Nh(ie);return he==ke||he==xi?ie.size:ny(ie).length}function PI(ie,he,ze){var Ut=Ed(ie)?se:xD;return ze&&wA(ie,he,ze)&&(he=e),Ut(ie,Rs(he,3))}var xa=Vd(function(ie,he){if(ie==null)return[];var ze=he.length;return ze>1&&wA(ie,he[0],he[1])?he=[]:ze>2&&wA(he[0],he[1],he[2])&&(he=[he[0]]),qf(ie,Xh(he,1),[])}),yB=sB||function(){return YA.Date.now()};function t0(ie,he){if(typeof he!="function")throw new Ym(a);return ie=If(ie),function(){if(--ie<1)return he.apply(this,arguments)}}function Bre(ie,he,ze){return he=ze?e:he,he=ie&&he==null?ie.length:he,Uu(ie,fe,e,e,e,e,he)}function NL(ie,he){var ze;if(typeof he!="function")throw new Ym(a);return ie=If(ie),function(){return--ie>0&&(ze=he.apply(this,arguments)),ie<=1&&(he=e),ze}}var dp=Vd(function(ie,he,ze){var Ut=B;if(ze.length){var Qr=DC(ze,Hs(dp));Ut|=ne}return Uu(ie,Ut,he,ze,Qr)}),Bx=Vd(function(ie,he,ze){var Ut=B|F;if(ze.length){var Qr=DC(ze,Hs(Bx));Ut|=ne}return Uu(he,Ut,ie,ze,Qr)});function mY(ie,he,ze){he=ze?e:he;var Ut=Uu(ie,X,e,e,e,e,e,he);return Ut.placeholder=mY.placeholder,Ut}function yw(ie,he,ze){he=ze?e:he;var Ut=Uu(ie,ae,e,e,e,e,e,he);return Ut.placeholder=yw.placeholder,Ut}function uc(ie,he,ze){var Ut,Qr,kn,Fi,rs,$s,vc=0,qa=!1,fc=!1,vl=!0;if(typeof ie!="function")throw new Ym(a);he=l1(he)||0,WI(ze)&&(qa=!!ze.leading,fc="maxWait"in ze,kn=fc?$I(l1(ze.maxWait)||0,he):kn,vl="trailing"in ze?!!ze.trailing:vl);function Zu(Up){var uv=Ut,ky=Qr;return Ut=Qr=e,vc=Up,Fi=ie.apply(ky,uv),Fi}function VA(Up){return vc=Up,rs=Dd(tI,he),qa?Zu(Up):Fi}function hf(Up){var uv=Up-$s,ky=Up-vc,nS=he-uv;return fc?BA(nS,kn-ky):nS}function Sd(Up){var uv=Up-$s,ky=Up-vc;return $s===e||uv>=he||uv<0||fc&&ky>=kn}function tI(){var Up=yB();if(Sd(Up))return rI(Up);rs=Dd(tI,hf(Up))}function rI(Up){return rs=e,vl&&Ut?Zu(Up):(Ut=Qr=e,Fi)}function OT(){rs!==e&&Wg(rs),vc=0,Ut=$s=Qr=rs=e}function rS(){return rs===e?Fi:rI(yB())}function Dy(){var Up=yB(),uv=Sd(Up);if(Ut=arguments,Qr=this,$s=Up,uv){if(rs===e)return VA($s);if(fc)return Wg(rs),rs=Dd(tI,he),Zu($s)}return rs===e&&(rs=Dd(tI,he)),Fi}return Dy.cancel=OT,Dy.flush=rS,Dy}var age=Vd(function(ie,he){return n1(ie,1,he)}),Nu=Vd(function(ie,he,ze){return n1(ie,l1(he)||0,ze)});function CY(ie){return Uu(ie,de)}function o3(ie,he){if(typeof ie!="function"||he!=null&&typeof he!="function")throw new Ym(a);var ze=function(){var Ut=arguments,Qr=he?he.apply(this,Ut):Ut[0],kn=ze.cache;if(kn.has(Qr))return kn.get(Qr);var Fi=ie.apply(this,Ut);return ze.cache=kn.set(Qr,Fi)||kn,Fi};return ze.cache=new(o3.Cache||r_),ze}o3.Cache=r_;function uP(ie){if(typeof ie!="function")throw new Ym(a);return function(){var he=arguments;switch(he.length){case 0:return!ie.call(this);case 1:return!ie.call(this,he[0]);case 2:return!ie.call(this,he[0],he[1]);case 3:return!ie.call(this,he[0],he[1],he[2])}return!ie.apply(this,he)}}function _J(ie){return NL(2,ie)}var yJ=Sl(function(ie,he){he=he.length==1&&Ed(he[0])?CI(he[0],lp(Rs())):CI(Xh(he,1),lp(Rs()));var ze=he.length;return Vd(function(Ut){for(var Qr=-1,kn=BA(Ut.length,ze);++Qr=he}),_Y=Dm(function(){return arguments}())?Dm:function(ie){return CE(ie)&&Yp.call(ie,"callee")&&!vg.call(ie,"callee")},Ed=ko.isArray,VT=Hp?lp(Hp):Dp;function sN(ie){return ie!=null&&mE(ie.length)&&!wx(ie)}function Db(ie){return CE(ie)&&sN(ie)}function t7(ie){return ie===!0||ie===!1||CE(ie)&&Wf(ie)==Xt}var PT=NT||PJ,DL=uC?lp(uC):t2;function r7(ie){return CE(ie)&&ie.nodeType===1&&!yY(ie)}function n7(ie){if(ie==null)return!0;if(sN(ie)&&(Ed(ie)||typeof ie=="string"||typeof ie.splice=="function"||PT(ie)||c3(ie)||_Y(ie)))return!ie.length;var he=Nh(ie);if(he==ke||he==xi)return!ie.size;if(ye(ie))return!ny(ie).length;for(var ze in ie)if(Yp.call(ie,ze))return!1;return!0}function hE(ie,he){return Ro(ie,he)}function lge(ie,he,ze){ze=typeof ze=="function"?ze:e;var Ut=ze?ze(ie,he):e;return Ut===e?Ro(ie,he,e,ze):!!Ut}function Dre(ie){if(!CE(ie))return!1;var he=Wf(ie);return he==Ar||he==cr||typeof ie.message=="string"&&typeof ie.name=="string"&&!yY(ie)}function aye(ie){return typeof ie=="number"&&tf(ie)}function wx(ie){if(!WI(ie))return!1;var he=Wf(ie);return he==qr||he==_n||he==qt||he==po}function a3(ie){return typeof ie=="number"&&ie==If(ie)}function mE(ie){return typeof ie=="number"&&ie>-1&&ie%1==0&&ie<=St}function WI(ie){var he=typeof ie;return ie!=null&&(he=="object"||he=="function")}function CE(ie){return ie!=null&&typeof ie=="object"}var kre=nE?lp(nE):AB;function uge(ie,he){return ie===he||Xc(ie,he,ho(he))}function jh(ie,he,ze){return ze=typeof ze=="function"?ze:e,Xc(ie,he,ho(he),ze)}function gge(ie){return xre(ie)&&ie!=+ie}function vJ(ie){if(z(ie))throw new Kl(n);return iu(ie)}function Lc(ie){return ie===null}function Age(ie){return ie==null}function xre(ie){return typeof ie=="number"||CE(ie)&&Wf(ie)==jt}function yY(ie){if(!CE(ie)||Wf(ie)!=Nn)return!1;var he=Ts(ie);if(he===null)return!0;var ze=Yp.call(he,"constructor")&&he.constructor;return typeof ze=="function"&&ze instanceof ze&&KE.call(ze)==fw}var kL=J_?lp(J_):dE;function BJ(ie){return a3(ie)&&ie>=-St&&ie<=St}var wJ=q0?lp(q0):yL;function TJ(ie){return typeof ie=="string"||!Ed(ie)&&CE(ie)&&Wf(ie)==io}function eI(ie){return typeof ie=="symbol"||CE(ie)&&Wf(ie)==ga}var c3=XE?lp(XE):KR;function RJ(ie){return ie===e}function l3(ie){return CE(ie)&&Nh(ie)==Gc}function i7(ie){return CE(ie)&&Wf(ie)==cl}var u3=mB(Am),cv=mB(function(ie,he){return ie<=he});function bB(ie){if(!ie)return[];if(sN(ie))return TJ(ie)?Mc(ie):Cl(ie);if(uI&&ie[uI])return NC(ie[uI]());var he=Nh(ie),ze=he==ke?Y2:he==xi?kC:GJ;return ze(ie)}function Xm(ie){if(!ie)return ie===0?ie:0;if(ie=l1(ie),ie===je||ie===-je){var he=ie<0?-1:1;return he*At}return ie===ie?ie:0}function If(ie){var he=Xm(ie),ze=he%1;return he===he?ze?he-ze:he:0}function WT(ie){return ie?yd(If(ie),0,Tr):0}function l1(ie){if(typeof ie=="number")return ie;if(eI(ie))return Yt;if(WI(ie)){var he=typeof ie.valueOf=="function"?ie.valueOf():ie;ie=WI(he)?he+"":he}if(typeof ie!="string")return ie===0?ie:+ie;ie=lI(ie);var ze=Ru.test(ie);return ze||Ju.test(ie)?_d(ie.slice(2),ze?2:8):Hu.test(ie)?Yt:+ie}function bY(ie){return wl(ie,Ew(ie))}function s7(ie){return ie?yd(If(ie),-St,St):ie===0?ie:0}function IC(ie){return ie==null?"":x(ie)}var Gre=z2(function(ie,he){if(ye(he)||sN(he)){wl(he,S0(he),ie);return}for(var ze in he)Yp.call(he,ze)&&r1(ie,ze,he[ze])}),mA=z2(function(ie,he){wl(he,Ew(he),ie)}),Tx=z2(function(ie,he,ze,Ut){wl(he,Ew(he),ie,Ut)}),Fre=z2(function(ie,he,ze,Ut){wl(he,S0(he),ie,Ut)}),EB=Jt(e2);function cye(ie,he){var ze=q1(ie);return he==null?ze:GT(ze,he)}var Zre=Vd(function(ie,he){ie=Ld(ie);var ze=-1,Ut=he.length,Qr=Ut>2?he[2]:e;for(Qr&&wA(he[0],he[1],Qr)&&(Ut=1);++ze1),kn}),wl(ie,Xr(ie),ze),Ut&&(ze=bI(ze,I|C|b,oY));for(var Qr=he.length;Qr--;)te(ze,he[Qr]);return ze});function Pre(ie,he){return xL(ie,uP(Rs(he)))}var hge=Jt(function(ie,he){return ie==null?{}:Jh(ie,he)});function xL(ie,he){if(ie==null)return{};var ze=CI(Xr(ie),function(Ut){return[Ut]});return he=Rs(he),$S(ie,ze,function(Ut,Qr){return he(Ut,Qr[0])})}function c7(ie,he,ze){he=Ta(he,ie);var Ut=-1,Qr=he.length;for(Qr||(Qr=1,ie=e);++Uthe){var Ut=ie;ie=he,he=Ut}if(ze||ie%1||he%1){var Qr=zf();return BA(ie+Qr*(he-ie+ip("1e-"+((Qr+"").length-1))),he)}return i1(ie,he)}var OD=mw(function(ie,he,ze){return he=he.toLowerCase(),ie+(ze?_ge(he):he)});function _ge(ie){return xp(IC(ie).toLowerCase())}function vY(ie){return ie=IC(ie),ie&&ie.replace(Ko,RC).replace(so,"")}function u7(ie,he,ze){ie=IC(ie),he=x(he);var Ut=ie.length;ze=ze===e?Ut:yd(If(ze),0,Ut);var Qr=ze;return ze-=he.length,ze>=0&&ie.slice(ze,Qr)==he}function sf(ie){return ie=IC(ie),ie&&vu.test(ie)?ie.replace(iA,Hm):ie}function u1(ie){return ie=IC(ie),ie&&Sg.test(ie)?ie.replace(Wc,"\\$&"):ie}var yge=mw(function(ie,he,ze){return ie+(ze?"-":"")+he.toLowerCase()}),BY=mw(function(ie,he,ze){return ie+(ze?" ":"")+he.toLowerCase()}),uye=hB("toLowerCase");function gye(ie,he,ze){ie=IC(ie),he=If(he);var Ut=he?Td(ie):0;if(!he||Ut>=he)return ie;var Qr=(he-Ut)/2;return FD(jE(Qr),ze)+ie+FD(wy(Qr),ze)}function Aye(ie,he,ze){ie=IC(ie),he=If(he);var Ut=he?Td(ie):0;return he&&Ut>>0,ze?(ie=IC(ie),ie&&(typeof he=="string"||he!=null&&!kL(he))&&(he=x(he),!he&&hb(ie))?Ho(Mc(ie),0,ze):ie.split(he,ze)):[]}var Ege=mw(function(ie,he,ze){return ie+(ze?" ":"")+xp(he)});function MD(ie,he,ze){return ie=IC(ie),ze=ze==null?0:yd(If(ze),0,ie.length),he=x(he),ie.slice(ze,ze+he.length)==he}function Hre(ie,he,ze){var Ut=pn.templateSettings;ze&&wA(ie,he,ze)&&(he=e),ie=IC(ie),he=Tx({},he,Ut,iy);var Qr=Tx({},he.imports,Ut.imports,iy),kn=S0(Qr),Fi=Ib(Qr,kn),rs,$s,vc=0,qa=he.interpolate||Eg,fc="__p += '",vl=AC((he.escape||Eg).source+"|"+qa.source+"|"+(qa===Ps?Do:Eg).source+"|"+(he.evaluate||Eg).source+"|$","g"),Zu="//# sourceURL="+(Yp.call(he,"sourceURL")?(he.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++aa+"]")+` `;ie.replace(vl,function(Sd,tI,rI,OT,rS,Dy){return rI||(rI=OT),fc+=ie.slice(vc,Dy).replace(OA,YS),tI&&(rs=!0,fc+=`' + __e(`+tI+`) + -'`),rS&&(qs=!0,fc+=`'; +'`),rS&&($s=!0,fc+=`'; `+rS+`; __p += '`),rI&&(fc+=`' + ((__t = (`+rI+`)) == null ? '' : __t) + @@ -308,243 +308,243 @@ __p += '`),rI&&(fc+=`' + `;var VA=Yp.call(he,"variable")&&he.variable;if(!VA)fc=`with (obj) { `+fc+` } -`;else if(Qh.test(VA))throw new Kl(o);fc=(qs?fc.replace(Qa,""):fc).replace(gc,"$1").replace(Cg,"$1;"),fc="function("+(VA||"obj")+`) { +`;else if(Qh.test(VA))throw new Kl(o);fc=($s?fc.replace(Qa,""):fc).replace(gc,"$1").replace(Cg,"$1;"),fc="function("+(VA||"obj")+`) { `+(VA?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(rs?", __e = _.escape":"")+(qs?`, __j = Array.prototype.join; +`)+"var __t, __p = ''"+(rs?", __e = _.escape":"")+($s?`, __j = Array.prototype.join; function print() { __p += __j.call(arguments, '') } `:`; `)+fc+`return __p -}`;var hf=fP(function(){return fd(kn,Zu+"return "+fc).apply(e,Fi)});if(hf.source=fc,Nre(hf))throw hf;return hf}function Ege(ie){return IC(ie).toLowerCase()}function mF(ie){return IC(ie).toUpperCase()}function jFe(ie,he,ze){if(ie=IC(ie),ie&&(ze||he===e))return lI(ie);if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=Mc(he),kn=wd(Ut,Qr),Fi=z1(Ut,Qr)+1;return Ho(Ut,kn,Fi).join("")}function wY(ie,he,ze){if(ie=IC(ie),ie&&(ze||he===e))return ie.slice(0,Pf(ie)+1);if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=z1(Ut,Mc(he))+1;return Ho(Ut,0,Qr).join("")}function HD(ie,he,ze){if(ie=IC(ie),ie&&(ze||he===e))return ie.replace(Ul,"");if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=wd(Ut,Mc(he));return Ho(Ut,Qr).join("")}function CF(ie,he){var ze=be,Ut=Se;if(WI(he)){var Qr="separator"in he?he.separator:Qr;ze="length"in he?If(he.length):ze,Ut="omission"in he?x(he.omission):Ut}ie=IC(ie);var kn=ie.length;if(hb(ie)){var Fi=Mc(ie);kn=Fi.length}if(ze>=kn)return ie;var rs=ze-Td(Ut);if(rs<1)return Ut;var qs=Fi?Ho(Fi,0,rs).join(""):ie.slice(0,rs);if(Qr===e)return qs+Ut;if(Fi&&(rs+=qs.length-rs),kL(Qr)){if(ie.slice(rs).search(Qr)){var vc,qa=qs;for(Qr.global||(Qr=AC(Qr.source,IC(Wt.exec(Qr))+"g")),Qr.lastIndex=0;vc=Qr.exec(qa);)var fc=vc.index;qs=qs.slice(0,fc===e?rs:fc)}}else if(ie.indexOf(x(Qr),rs)!=rs){var vl=qs.lastIndexOf(Qr);vl>-1&&(qs=qs.slice(0,vl))}return qs+Ut}function lv(ie){return ie=IC(ie),ie&&ma.test(ie)?ie.replace(Nc,sE):ie}var TY=mw(function(ie,he,ze){return ie+(ze?" ":"")+he.toUpperCase()}),xp=hB("toUpperCase");function Aye(ie,he,ze){return ie=IC(ie),he=ze?e:he,he===e?gC(ie)?XS(ie):we(ie):ie.match(he)||[]}var fP=Vd(function(ie,he){try{return TC(ie,e,he)}catch(ze){return Nre(ze)?ze:new Kl(ze)}}),tA=Jt(function(ie,he){return cp(he,function(ze){ze=Vo(ze),ia(ie,ze,dp(ie[ze],ie))}),ie});function g1(ie){var he=ie==null?0:ie.length,ze=Rs();return ie=he?CI(ie,function(Ut){if(typeof Ut[1]!="function")throw new Ym(a);return[ze(Ut[0]),Ut[1]]}):[],Vd(function(Ut){for(var Qr=-1;++QrSt)return[];var ze=Tr,Ut=BA(ie,Tr);he=Rs(he),ie-=Tr;for(var Qr=$g(Ut,he);++ze0||he<0)?new up(ze):(ie<0?ze=ze.takeRight(-ie):ie&&(ze=ze.drop(ie)),he!==e&&(he=If(he),ze=he<0?ze.dropRight(-he):ze.take(he-ie)),ze)},up.prototype.takeRightWhile=function(ie){return this.reverse().takeWhile(ie).reverse()},up.prototype.toArray=function(){return this.take(Tr)},fu(up.prototype,function(ie,he){var ze=/^(?:filter|find|map|reject)|While$/.test(he),Ut=/^(?:head|last)$/.test(he),Qr=pn[Ut?"take"+(he=="last"?"Right":""):he],kn=Ut||/^find/.test(he);Qr&&(pn.prototype[he]=function(){var Fi=this.__wrapped__,rs=Ut?[1]:arguments,qs=Fi instanceof up,vc=rs[0],qa=qs||Ed(Fi),fc=function(tI){var rI=Qr.apply(pn,_I([tI],rs));return Ut&&vl?rI[0]:rI};qa&&ze&&typeof vc=="function"&&vc.length!=1&&(qs=qa=!1);var vl=this.__chain__,Zu=!!this.__actions__.length,VA=kn&&!vl,hf=qs&&!Zu;if(!kn&&qa){Fi=hf?Fi:new up(this);var Sd=ie.apply(Fi,rs);return Sd.__actions__.push({func:tN,args:[fc],thisArg:e}),new ey(Sd,vl)}return VA&&hf?ie.apply(this,rs):(Sd=this.thru(fc),VA?Ut?Sd.value()[0]:Sd.value():Sd)})}),cp(["pop","push","shift","sort","splice","unshift"],function(ie){var he=vy[ie],ze=/^(?:push|sort|unshift)$/.test(ie)?"tap":"thru",Ut=/^(?:pop|shift)$/.test(ie);pn.prototype[ie]=function(){var Qr=arguments;if(Ut&&!this.__chain__){var kn=this.value();return he.apply(Ed(kn)?kn:[],Qr)}return this[ze](function(Fi){return he.apply(Ed(Fi)?Fi:[],Qr)})}}),fu(up.prototype,function(ie,he){var ze=pn[he];if(ze){var Ut=ze.name+"";Yp.call(oB,Ut)||(oB[Ut]=[]),oB[Ut].push({name:he,func:ze})}}),oB[GD(e,F).name]=[{name:"wrapper",func:e}],up.prototype.clone=Iw,up.prototype.reverse=cB,up.prototype.value=RD,pn.prototype.at=pY,pn.prototype.chain=wL,pn.prototype.commit=bre,pn.prototype.next=LD,pn.prototype.plant=$6,pn.prototype.reverse=eS,pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=rN,pn.prototype.first=pn.prototype.head,uI&&(pn.prototype[uI]=ige),pn},gm=um();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(YA._=gm,define(function(){return gm})):Nm?((Nm.exports=gm)._=gm,Ac._=gm):YA._=gm}).call(nBe)});var vMe=H((atu,dIr)=>{"use strict";var bC=dIr.exports;dIr.exports.default=bC;var my="\x1B[",SMe="\x1B]",iBe="\x07",gpt=";",J5n=process.env.TERM_PROGRAM==="Apple_Terminal";bC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?my+(e+1)+"G":my+(t+1)+";"+(e+1)+"H"};bC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=my+-e+"D":e>0&&(r+=my+e+"C"),t<0?r+=my+-t+"A":t>0&&(r+=my+t+"B"),r};bC.cursorUp=(e=1)=>my+e+"A";bC.cursorDown=(e=1)=>my+e+"B";bC.cursorForward=(e=1)=>my+e+"C";bC.cursorBackward=(e=1)=>my+e+"D";bC.cursorLeft=my+"G";bC.cursorSavePosition=J5n?"\x1B7":my+"s";bC.cursorRestorePosition=J5n?"\x1B8":my+"u";bC.cursorGetPosition=my+"6n";bC.cursorNextLine=my+"E";bC.cursorPrevLine=my+"F";bC.cursorHide=my+"?25l";bC.cursorShow=my+"?25h";bC.eraseLines=e=>{let t="";for(let r=0;r[SMe,"8",gpt,gpt,t,iBe,e,SMe,"8",gpt,gpt,iBe].join("");bC.image=(e,t={})=>{let r=`${SMe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+iBe};bC.iTerm={setCwd:(e=process.cwd())=>`${SMe}50;CurrentDir=${e}${iBe}`,annotation:(e,t={})=>{let r=`${SMe}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+iBe}}});var K5n=H((ctu,pIr)=>{"use strict";var U5n=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};pIr.exports=U5n;pIr.exports.default=U5n});var z5n=H((ltu,dpt)=>{"use strict";var GUo=K5n(),Apt=new WeakMap,j5n=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(Apt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return GUo(o,e),Apt.set(o,n),o};dpt.exports=j5n;dpt.exports.default=j5n;dpt.exports.callCount=e=>{if(!Apt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return Apt.get(e)}});var q5n=H((utu,ppt)=>{ppt.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&ppt.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&ppt.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var mpt=H((gtu,aBe)=>{var S2=global.process,vIe=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};vIe(S2)?($5n=wt("assert"),sBe=q5n(),eMn=/^win/i.test(S2.platform),BMe=wt("events"),typeof BMe!="function"&&(BMe=BMe.EventEmitter),S2.__signal_exit_emitter__?zN=S2.__signal_exit_emitter__:(zN=S2.__signal_exit_emitter__=new BMe,zN.count=0,zN.emitted={}),zN.infinite||(zN.setMaxListeners(1/0),zN.infinite=!0),aBe.exports=function(e,t){if(!vIe(global.process))return function(){};$5n.equal(typeof e,"function","a callback must be provided for exit handler"),oBe===!1&&fIr();var r="exit";t&&t.alwaysLast&&(r="afterexit");var n=function(){zN.removeListener(r,e),zN.listeners("exit").length===0&&zN.listeners("afterexit").length===0&&fpt()};return zN.on(r,e),n},fpt=function(){!oBe||!vIe(global.process)||(oBe=!1,sBe.forEach(function(t){try{S2.removeListener(t,Ipt[t])}catch{}}),S2.emit=hpt,S2.reallyExit=IIr,zN.count-=1)},aBe.exports.unload=fpt,BIe=function(t,r,n){zN.emitted[t]||(zN.emitted[t]=!0,zN.emit(t,r,n))},Ipt={},sBe.forEach(function(e){Ipt[e]=function(){if(vIe(global.process)){var r=S2.listeners(e);r.length===zN.count&&(fpt(),BIe("exit",null,e),BIe("afterexit",null,e),eMn&&e==="SIGHUP"&&(e="SIGINT"),S2.kill(S2.pid,e))}}}),aBe.exports.signals=function(){return sBe},oBe=!1,fIr=function(){oBe||!vIe(global.process)||(oBe=!0,zN.count+=1,sBe=sBe.filter(function(t){try{return S2.on(t,Ipt[t]),!0}catch{return!1}}),S2.emit=rMn,S2.reallyExit=tMn)},aBe.exports.load=fIr,IIr=S2.reallyExit,tMn=function(t){vIe(global.process)&&(S2.exitCode=t||0,BIe("exit",S2.exitCode,null),BIe("afterexit",S2.exitCode,null),IIr.call(S2,S2.exitCode))},hpt=S2.emit,rMn=function(t,r){if(t==="exit"&&vIe(global.process)){r!==void 0&&(S2.exitCode=r);var n=hpt.apply(this,arguments);return BIe("exit",S2.exitCode,null),BIe("afterexit",S2.exitCode,null),n}else return hpt.apply(this,arguments)}):aBe.exports=function(){return function(){}};var $5n,sBe,eMn,BMe,zN,fpt,BIe,Ipt,oBe,fIr,IIr,tMn,hpt,rMn});var iMn=H((Atu,nMn)=>{"use strict";var FUo=z5n(),ZUo=mpt();nMn.exports=FUo(()=>{ZUo(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var lBe=H(cBe=>{"use strict";var LUo=iMn(),Cpt=!1;cBe.show=(e=process.stderr)=>{e.isTTY&&(Cpt=!1,e.write("\x1B[?25h"))};cBe.hide=(e=process.stderr)=>{e.isTTY&&(LUo(),Cpt=!0,e.write("\x1B[?25l"))};cBe.toggle=(e,t)=>{e!==void 0&&(Cpt=e),Cpt?cBe.show(t):cBe.hide(t)}});var cMn=H(wMe=>{"use strict";var aMn=wMe&&wMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wMe,"__esModule",{value:!0});var sMn=aMn(vMe()),oMn=aMn(lBe()),VUo=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(oMn.default.hide(),a=!0);let A=l+` -`;A!==n&&(n=A,e.write(sMn.default.eraseLines(r)+A),r=A.split(` -`).length)};return o.clear=()=>{e.write(sMn.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(oMn.default.show(),a=!1)},o};wMe.default={create:VUo}});var lMn=H((ftu,PUo)=>{PUo.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var AMn=H(PW=>{"use strict";var gMn=lMn(),l8=process.env;Object.defineProperty(PW,"_vendors",{value:gMn.map(function(e){return e.constant})});PW.name=null;PW.isPR=null;gMn.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(n){return uMn(n)});if(PW[e.constant]=r,r)switch(PW.name=e.name,typeof e.pr){case"string":PW.isPR=!!l8[e.pr];break;case"object":"env"in e.pr?PW.isPR=e.pr.env in l8&&l8[e.pr.env]!==e.pr.ne:"any"in e.pr?PW.isPR=e.pr.any.some(function(n){return!!l8[n]}):PW.isPR=uMn(e.pr);break;default:PW.isPR=null}});PW.isCI=!!(l8.CI||l8.CONTINUOUS_INTEGRATION||l8.BUILD_NUMBER||l8.RUN_ID||PW.name);function uMn(e){return typeof e=="string"?!!l8[e]:Object.keys(e).every(function(t){return l8[t]===e[t]})}});var hIr=H((htu,dMn)=>{"use strict";dMn.exports=AMn().isCI});var mIr=H((mtu,pMn)=>{"use strict";var WUo=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};pMn.exports=(e,{include:t,exclude:r}={})=>{let n=a=>{let o=l=>typeof l=="string"?a===l:l.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of WUo(e.constructor.prototype)){if(o==="constructor"||!n(o))continue;let l=Reflect.getOwnPropertyDescriptor(a,o);l&&typeof l.value=="function"&&(e[o]=e[o].bind(e))}return e}});var _Mn=H(M0=>{"use strict";var gBe,NMe,Ept,vIr;typeof performance=="object"&&typeof performance.now=="function"?(fMn=performance,M0.unstable_now=function(){return fMn.now()}):(CIr=Date,IMn=CIr.now(),M0.unstable_now=function(){return CIr.now()-IMn});var fMn,CIr,IMn;typeof window>"u"||typeof MessageChannel!="function"?(uBe=null,_Ir=null,yIr=function(){if(uBe!==null)try{var e=M0.unstable_now();uBe(!0,e),uBe=null}catch(t){throw setTimeout(yIr,0),t}},gBe=function(e){uBe!==null?setTimeout(gBe,0,e):(uBe=e,setTimeout(yIr,0))},NMe=function(e,t){_Ir=setTimeout(e,t)},Ept=function(){clearTimeout(_Ir)},M0.unstable_shouldYield=function(){return!1},vIr=M0.unstable_forceFrameRate=function(){}):(hMn=window.setTimeout,mMn=window.clearTimeout,typeof console<"u"&&(CMn=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof CMn!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),TMe=!1,RMe=null,_pt=-1,bIr=5,EIr=0,M0.unstable_shouldYield=function(){return M0.unstable_now()>=EIr},vIr=function(){},M0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[n];if(a!==void 0&&0bpt(l,r))f!==void 0&&0>bpt(f,l)?(e[n]=f,e[A]=r,n=A):(e[n]=l,e[o]=r,n=o);else if(f!==void 0&&0>bpt(f,r))e[n]=f,e[A]=r,n=A;else break e}}return t}return null}function bpt(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var u8=[],Woe=[],OUo=1,yM=null,hG=3,vpt=!1,wIe=!1,DMe=!1;function wIr(e){for(var t=CX(Woe);t!==null;){if(t.callback===null)Spt(Woe);else if(t.startTime<=e)Spt(Woe),t.sortIndex=t.expirationTime,BIr(u8,t);else break;t=CX(Woe)}}function TIr(e){if(DMe=!1,wIr(e),!wIe)if(CX(u8)!==null)wIe=!0,gBe(RIr);else{var t=CX(Woe);t!==null&&NMe(TIr,t.startTime-e)}}function RIr(e,t){wIe=!1,DMe&&(DMe=!1,Ept()),vpt=!0;var r=hG;try{for(wIr(t),yM=CX(u8);yM!==null&&(!(yM.expirationTime>t)||e&&!M0.unstable_shouldYield());){var n=yM.callback;if(typeof n=="function"){yM.callback=null,hG=yM.priorityLevel;var a=n(yM.expirationTime<=t);t=M0.unstable_now(),typeof a=="function"?yM.callback=a:yM===CX(u8)&&Spt(u8),wIr(t)}else Spt(u8);yM=CX(u8)}if(yM!==null)var o=!0;else{var l=CX(Woe);l!==null&&NMe(TIr,l.startTime-t),o=!1}return o}finally{yM=null,hG=r,vpt=!1}}var MUo=vIr;M0.unstable_IdlePriority=5;M0.unstable_ImmediatePriority=1;M0.unstable_LowPriority=4;M0.unstable_NormalPriority=3;M0.unstable_Profiling=null;M0.unstable_UserBlockingPriority=2;M0.unstable_cancelCallback=function(e){e.callback=null};M0.unstable_continueExecution=function(){wIe||vpt||(wIe=!0,gBe(RIr))};M0.unstable_getCurrentPriorityLevel=function(){return hG};M0.unstable_getFirstCallbackNode=function(){return CX(u8)};M0.unstable_next=function(e){switch(hG){case 1:case 2:case 3:var t=3;break;default:t=hG}var r=hG;hG=t;try{return e()}finally{hG=r}};M0.unstable_pauseExecution=function(){};M0.unstable_requestPaint=MUo;M0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=hG;hG=e;try{return t()}finally{hG=r}};M0.unstable_scheduleCallback=function(e,t,r){var n=M0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0n?(e.sortIndex=r,BIr(Woe,e),CX(u8)===null&&e===CX(Woe)&&(DMe?Ept():DMe=!0,NMe(TIr,r-n))):(e.sortIndex=a,BIr(u8,e),wIe||vpt||(wIe=!0,gBe(RIr))),e};M0.unstable_wrapCallback=function(e){var t=hG;return function(){var r=hG;hG=t;try{return e.apply(this,arguments)}finally{hG=r}}}});var kMe=H((_tu,yMn)=>{"use strict";yMn.exports=_Mn()});var Bpt=H((ytu,EMn)=>{"use strict";var bMn=Object.getOwnPropertySymbols,HUo=Object.prototype.hasOwnProperty,YUo=Object.prototype.propertyIsEnumerable;function QUo(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function XUo(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}EMn.exports=XUo()?Object.assign:function(e,t){for(var r,n=QUo(e),a,o=1;o{xMe.exports=function(t){var r={},n=Bpt(),a=Ec(),o=kMe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;te=kn)return ie;var rs=ze-Td(Ut);if(rs<1)return Ut;var $s=Fi?Ho(Fi,0,rs).join(""):ie.slice(0,rs);if(Qr===e)return $s+Ut;if(Fi&&(rs+=$s.length-rs),kL(Qr)){if(ie.slice(rs).search(Qr)){var vc,qa=$s;for(Qr.global||(Qr=AC(Qr.source,IC(Wt.exec(Qr))+"g")),Qr.lastIndex=0;vc=Qr.exec(qa);)var fc=vc.index;$s=$s.slice(0,fc===e?rs:fc)}}else if(ie.indexOf(x(Qr),rs)!=rs){var vl=$s.lastIndexOf(Qr);vl>-1&&($s=$s.slice(0,vl))}return $s+Ut}function lv(ie){return ie=IC(ie),ie&&ma.test(ie)?ie.replace(Nc,sE):ie}var TY=mw(function(ie,he,ze){return ie+(ze?" ":"")+he.toUpperCase()}),xp=hB("toUpperCase");function dye(ie,he,ze){return ie=IC(ie),he=ze?e:he,he===e?gC(ie)?XS(ie):we(ie):ie.match(he)||[]}var fP=Vd(function(ie,he){try{return TC(ie,e,he)}catch(ze){return Dre(ze)?ze:new Kl(ze)}}),tA=Jt(function(ie,he){return cp(he,function(ze){ze=Vo(ze),ia(ie,ze,dp(ie[ze],ie))}),ie});function g1(ie){var he=ie==null?0:ie.length,ze=Rs();return ie=he?CI(ie,function(Ut){if(typeof Ut[1]!="function")throw new Ym(a);return[ze(Ut[0]),Ut[1]]}):[],Vd(function(Ut){for(var Qr=-1;++QrSt)return[];var ze=Tr,Ut=BA(ie,Tr);he=Rs(he),ie-=Tr;for(var Qr=$g(Ut,he);++ze0||he<0)?new up(ze):(ie<0?ze=ze.takeRight(-ie):ie&&(ze=ze.drop(ie)),he!==e&&(he=If(he),ze=he<0?ze.dropRight(-he):ze.take(he-ie)),ze)},up.prototype.takeRightWhile=function(ie){return this.reverse().takeWhile(ie).reverse()},up.prototype.toArray=function(){return this.take(Tr)},fu(up.prototype,function(ie,he){var ze=/^(?:filter|find|map|reject)|While$/.test(he),Ut=/^(?:head|last)$/.test(he),Qr=pn[Ut?"take"+(he=="last"?"Right":""):he],kn=Ut||/^find/.test(he);Qr&&(pn.prototype[he]=function(){var Fi=this.__wrapped__,rs=Ut?[1]:arguments,$s=Fi instanceof up,vc=rs[0],qa=$s||Ed(Fi),fc=function(tI){var rI=Qr.apply(pn,_I([tI],rs));return Ut&&vl?rI[0]:rI};qa&&ze&&typeof vc=="function"&&vc.length!=1&&($s=qa=!1);var vl=this.__chain__,Zu=!!this.__actions__.length,VA=kn&&!vl,hf=$s&&!Zu;if(!kn&&qa){Fi=hf?Fi:new up(this);var Sd=ie.apply(Fi,rs);return Sd.__actions__.push({func:tN,args:[fc],thisArg:e}),new ey(Sd,vl)}return VA&&hf?ie.apply(this,rs):(Sd=this.thru(fc),VA?Ut?Sd.value()[0]:Sd.value():Sd)})}),cp(["pop","push","shift","sort","splice","unshift"],function(ie){var he=vy[ie],ze=/^(?:push|sort|unshift)$/.test(ie)?"tap":"thru",Ut=/^(?:pop|shift)$/.test(ie);pn.prototype[ie]=function(){var Qr=arguments;if(Ut&&!this.__chain__){var kn=this.value();return he.apply(Ed(kn)?kn:[],Qr)}return this[ze](function(Fi){return he.apply(Ed(Fi)?Fi:[],Qr)})}}),fu(up.prototype,function(ie,he){var ze=pn[he];if(ze){var Ut=ze.name+"";Yp.call(oB,Ut)||(oB[Ut]=[]),oB[Ut].push({name:he,func:ze})}}),oB[GD(e,F).name]=[{name:"wrapper",func:e}],up.prototype.clone=Iw,up.prototype.reverse=cB,up.prototype.value=RD,pn.prototype.at=pY,pn.prototype.chain=wL,pn.prototype.commit=Ere,pn.prototype.next=LD,pn.prototype.plant=$6,pn.prototype.reverse=eS,pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=rN,pn.prototype.first=pn.prototype.head,uI&&(pn.prototype[uI]=sge),pn},gm=um();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(YA._=gm,define(function(){return gm})):Nm?((Nm.exports=gm)._=gm,Ac._=gm):YA._=gm}).call(iBe)});var wMe=H(($tu,hIr)=>{"use strict";var bC=hIr.exports;hIr.exports.default=bC;var my="\x1B[",BMe="\x1B]",sBe="\x07",dpt=";",eMn=process.env.TERM_PROGRAM==="Apple_Terminal";bC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?my+(e+1)+"G":my+(t+1)+";"+(e+1)+"H"};bC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=my+-e+"D":e>0&&(r+=my+e+"C"),t<0?r+=my+-t+"A":t>0&&(r+=my+t+"B"),r};bC.cursorUp=(e=1)=>my+e+"A";bC.cursorDown=(e=1)=>my+e+"B";bC.cursorForward=(e=1)=>my+e+"C";bC.cursorBackward=(e=1)=>my+e+"D";bC.cursorLeft=my+"G";bC.cursorSavePosition=eMn?"\x1B7":my+"s";bC.cursorRestorePosition=eMn?"\x1B8":my+"u";bC.cursorGetPosition=my+"6n";bC.cursorNextLine=my+"E";bC.cursorPrevLine=my+"F";bC.cursorHide=my+"?25l";bC.cursorShow=my+"?25h";bC.eraseLines=e=>{let t="";for(let r=0;r[BMe,"8",dpt,dpt,t,sBe,e,BMe,"8",dpt,dpt,sBe].join("");bC.image=(e,t={})=>{let r=`${BMe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+sBe};bC.iTerm={setCwd:(e=process.cwd())=>`${BMe}50;CurrentDir=${e}${sBe}`,annotation:(e,t={})=>{let r=`${BMe}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+sBe}}});var rMn=H((eru,mIr)=>{"use strict";var tMn=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};mIr.exports=tMn;mIr.exports.default=tMn});var iMn=H((tru,fpt)=>{"use strict";var jUo=rMn(),ppt=new WeakMap,nMn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(ppt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return jUo(o,e),ppt.set(o,n),o};fpt.exports=nMn;fpt.exports.default=nMn;fpt.exports.callCount=e=>{if(!ppt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return ppt.get(e)}});var sMn=H((rru,Ipt)=>{Ipt.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Ipt.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Ipt.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var _pt=H((nru,cBe)=>{var S2=global.process,BIe=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};BIe(S2)?(oMn=wt("assert"),oBe=sMn(),aMn=/^win/i.test(S2.platform),TMe=wt("events"),typeof TMe!="function"&&(TMe=TMe.EventEmitter),S2.__signal_exit_emitter__?zN=S2.__signal_exit_emitter__:(zN=S2.__signal_exit_emitter__=new TMe,zN.count=0,zN.emitted={}),zN.infinite||(zN.setMaxListeners(1/0),zN.infinite=!0),cBe.exports=function(e,t){if(!BIe(global.process))return function(){};oMn.equal(typeof e,"function","a callback must be provided for exit handler"),aBe===!1&&CIr();var r="exit";t&&t.alwaysLast&&(r="afterexit");var n=function(){zN.removeListener(r,e),zN.listeners("exit").length===0&&zN.listeners("afterexit").length===0&&hpt()};return zN.on(r,e),n},hpt=function(){!aBe||!BIe(global.process)||(aBe=!1,oBe.forEach(function(t){try{S2.removeListener(t,mpt[t])}catch{}}),S2.emit=Cpt,S2.reallyExit=_Ir,zN.count-=1)},cBe.exports.unload=hpt,wIe=function(t,r,n){zN.emitted[t]||(zN.emitted[t]=!0,zN.emit(t,r,n))},mpt={},oBe.forEach(function(e){mpt[e]=function(){if(BIe(global.process)){var r=S2.listeners(e);r.length===zN.count&&(hpt(),wIe("exit",null,e),wIe("afterexit",null,e),aMn&&e==="SIGHUP"&&(e="SIGINT"),S2.kill(S2.pid,e))}}}),cBe.exports.signals=function(){return oBe},aBe=!1,CIr=function(){aBe||!BIe(global.process)||(aBe=!0,zN.count+=1,oBe=oBe.filter(function(t){try{return S2.on(t,mpt[t]),!0}catch{return!1}}),S2.emit=lMn,S2.reallyExit=cMn)},cBe.exports.load=CIr,_Ir=S2.reallyExit,cMn=function(t){BIe(global.process)&&(S2.exitCode=t||0,wIe("exit",S2.exitCode,null),wIe("afterexit",S2.exitCode,null),_Ir.call(S2,S2.exitCode))},Cpt=S2.emit,lMn=function(t,r){if(t==="exit"&&BIe(global.process)){r!==void 0&&(S2.exitCode=r);var n=Cpt.apply(this,arguments);return wIe("exit",S2.exitCode,null),wIe("afterexit",S2.exitCode,null),n}else return Cpt.apply(this,arguments)}):cBe.exports=function(){return function(){}};var oMn,oBe,aMn,TMe,zN,hpt,wIe,mpt,aBe,CIr,_Ir,cMn,Cpt,lMn});var gMn=H((iru,uMn)=>{"use strict";var zUo=iMn(),qUo=_pt();uMn.exports=zUo(()=>{qUo(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var uBe=H(lBe=>{"use strict";var $Uo=gMn(),ypt=!1;lBe.show=(e=process.stderr)=>{e.isTTY&&(ypt=!1,e.write("\x1B[?25h"))};lBe.hide=(e=process.stderr)=>{e.isTTY&&($Uo(),ypt=!0,e.write("\x1B[?25l"))};lBe.toggle=(e,t)=>{e!==void 0&&(ypt=e),ypt?lBe.show(t):lBe.hide(t)}});var fMn=H(RMe=>{"use strict";var pMn=RMe&&RMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RMe,"__esModule",{value:!0});var AMn=pMn(wMe()),dMn=pMn(uBe()),eKo=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(dMn.default.hide(),a=!0);let A=l+` +`;A!==n&&(n=A,e.write(AMn.default.eraseLines(r)+A),r=A.split(` +`).length)};return o.clear=()=>{e.write(AMn.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(dMn.default.show(),a=!1)},o};RMe.default={create:eKo}});var IMn=H((aru,tKo)=>{tKo.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var CMn=H(PW=>{"use strict";var mMn=IMn(),l8=process.env;Object.defineProperty(PW,"_vendors",{value:mMn.map(function(e){return e.constant})});PW.name=null;PW.isPR=null;mMn.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(n){return hMn(n)});if(PW[e.constant]=r,r)switch(PW.name=e.name,typeof e.pr){case"string":PW.isPR=!!l8[e.pr];break;case"object":"env"in e.pr?PW.isPR=e.pr.env in l8&&l8[e.pr.env]!==e.pr.ne:"any"in e.pr?PW.isPR=e.pr.any.some(function(n){return!!l8[n]}):PW.isPR=hMn(e.pr);break;default:PW.isPR=null}});PW.isCI=!!(l8.CI||l8.CONTINUOUS_INTEGRATION||l8.BUILD_NUMBER||l8.RUN_ID||PW.name);function hMn(e){return typeof e=="string"?!!l8[e]:Object.keys(e).every(function(t){return l8[t]===e[t]})}});var yIr=H((lru,_Mn)=>{"use strict";_Mn.exports=CMn().isCI});var bIr=H((uru,yMn)=>{"use strict";var rKo=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};yMn.exports=(e,{include:t,exclude:r}={})=>{let n=a=>{let o=l=>typeof l=="string"?a===l:l.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of rKo(e.constructor.prototype)){if(o==="constructor"||!n(o))continue;let l=Reflect.getOwnPropertyDescriptor(a,o);l&&typeof l.value=="function"&&(e[o]=e[o].bind(e))}return e}});var wMn=H(M0=>{"use strict";var ABe,kMe,vpt,RIr;typeof performance=="object"&&typeof performance.now=="function"?(bMn=performance,M0.unstable_now=function(){return bMn.now()}):(EIr=Date,EMn=EIr.now(),M0.unstable_now=function(){return EIr.now()-EMn});var bMn,EIr,EMn;typeof window>"u"||typeof MessageChannel!="function"?(gBe=null,SIr=null,vIr=function(){if(gBe!==null)try{var e=M0.unstable_now();gBe(!0,e),gBe=null}catch(t){throw setTimeout(vIr,0),t}},ABe=function(e){gBe!==null?setTimeout(ABe,0,e):(gBe=e,setTimeout(vIr,0))},kMe=function(e,t){SIr=setTimeout(e,t)},vpt=function(){clearTimeout(SIr)},M0.unstable_shouldYield=function(){return!1},RIr=M0.unstable_forceFrameRate=function(){}):(SMn=window.setTimeout,vMn=window.clearTimeout,typeof console<"u"&&(BMn=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof BMn!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),NMe=!1,DMe=null,bpt=-1,BIr=5,wIr=0,M0.unstable_shouldYield=function(){return M0.unstable_now()>=wIr},RIr=function(){},M0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[n];if(a!==void 0&&0Spt(l,r))f!==void 0&&0>Spt(f,l)?(e[n]=f,e[A]=r,n=A):(e[n]=l,e[o]=r,n=o);else if(f!==void 0&&0>Spt(f,r))e[n]=f,e[A]=r,n=A;else break e}}return t}return null}function Spt(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var u8=[],Ooe=[],nKo=1,yM=null,hG=3,wpt=!1,TIe=!1,xMe=!1;function DIr(e){for(var t=CX(Ooe);t!==null;){if(t.callback===null)Bpt(Ooe);else if(t.startTime<=e)Bpt(Ooe),t.sortIndex=t.expirationTime,NIr(u8,t);else break;t=CX(Ooe)}}function kIr(e){if(xMe=!1,DIr(e),!TIe)if(CX(u8)!==null)TIe=!0,ABe(xIr);else{var t=CX(Ooe);t!==null&&kMe(kIr,t.startTime-e)}}function xIr(e,t){TIe=!1,xMe&&(xMe=!1,vpt()),wpt=!0;var r=hG;try{for(DIr(t),yM=CX(u8);yM!==null&&(!(yM.expirationTime>t)||e&&!M0.unstable_shouldYield());){var n=yM.callback;if(typeof n=="function"){yM.callback=null,hG=yM.priorityLevel;var a=n(yM.expirationTime<=t);t=M0.unstable_now(),typeof a=="function"?yM.callback=a:yM===CX(u8)&&Bpt(u8),DIr(t)}else Bpt(u8);yM=CX(u8)}if(yM!==null)var o=!0;else{var l=CX(Ooe);l!==null&&kMe(kIr,l.startTime-t),o=!1}return o}finally{yM=null,hG=r,wpt=!1}}var iKo=RIr;M0.unstable_IdlePriority=5;M0.unstable_ImmediatePriority=1;M0.unstable_LowPriority=4;M0.unstable_NormalPriority=3;M0.unstable_Profiling=null;M0.unstable_UserBlockingPriority=2;M0.unstable_cancelCallback=function(e){e.callback=null};M0.unstable_continueExecution=function(){TIe||wpt||(TIe=!0,ABe(xIr))};M0.unstable_getCurrentPriorityLevel=function(){return hG};M0.unstable_getFirstCallbackNode=function(){return CX(u8)};M0.unstable_next=function(e){switch(hG){case 1:case 2:case 3:var t=3;break;default:t=hG}var r=hG;hG=t;try{return e()}finally{hG=r}};M0.unstable_pauseExecution=function(){};M0.unstable_requestPaint=iKo;M0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=hG;hG=e;try{return t()}finally{hG=r}};M0.unstable_scheduleCallback=function(e,t,r){var n=M0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0n?(e.sortIndex=r,NIr(Ooe,e),CX(u8)===null&&e===CX(Ooe)&&(xMe?vpt():xMe=!0,kMe(kIr,r-n))):(e.sortIndex=a,NIr(u8,e),TIe||wpt||(TIe=!0,ABe(xIr))),e};M0.unstable_wrapCallback=function(e){var t=hG;return function(){var r=hG;hG=t;try{return e.apply(this,arguments)}finally{hG=r}}}});var GMe=H((Aru,TMn)=>{"use strict";TMn.exports=wMn()});var Tpt=H((dru,NMn)=>{"use strict";var RMn=Object.getOwnPropertySymbols,sKo=Object.prototype.hasOwnProperty,oKo=Object.prototype.propertyIsEnumerable;function aKo(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function cKo(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}NMn.exports=cKo()?Object.assign:function(e,t){for(var r,n=aKo(e),a,o=1;o{FMe.exports=function(t){var r={},n=Tpt(),a=Ec(),o=GMe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;teUr||Le[dr]!==ft[Ur])return` -`+Le[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Ju(x):""}var Eg=[],OA=-1;function GA(x){return{current:x}}function $i(x){0>OA||(x.current=Eg[OA],Eg[OA]=null,OA--)}function dl(x,L){OA++,Eg[OA]=x.current,x.current=L}var Uf={},Kd=GA(Uf),oA=GA(!1),oo=Uf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return Uf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Le={},ft;for(ft in te)Le[ft]=L[ft];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Le),Le}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(oA),$i(Kd)}function ws(x,L,te){if(Kd.current!==Uf)throw Error(l(168));dl(Kd,L),dl(oA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Le in Re)if(!(Le in x))throw Error(l(108,k(L)||"Unknown",Le));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||Uf,oo=Kd.current,dl(Kd,x),dl(oA,oA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,oo),Re.__reactInternalMemoizedMergedChildContext=x,$i(oA),$i(Kd),dl(Kd,x)):$i(oA),dl(oA,te)}var As=null,Tf=null,cm=o.unstable_now;cm();var Fl=0,rc=8;function sd(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Om(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function il(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function FA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Le=0,ft=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(ft!==0)Re=ft,Le=rc=15;else if(ft=te&134217727,ft!==0){var mi=ft&~dr;mi!==0?(Re=sd(mi),Le=rc):(Ur&=ft,Ur!==0&&(Re=sd(Ur),Le=rc))}else ft=te&~dr,ft!==0?(Re=sd(ft),Le=rc):Ur!==0&&(Re=sd(Ur),Le=rc);if(Re===0)return 0;if(Re=31-Er(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function MA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-Er(L),x[L]=te}var Er=Math.clz32?Math.clz32:ls,Zt=Math.log,yn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/yn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Wa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,ld=o.unstable_requestPaint,Rp=o.unstable_now,np=o.unstable_getCurrentPriorityLevel,HA=o.unstable_ImmediatePriority,df=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,so=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Ml={},Dr=ld!==void 0?ld:function(){},Wn=null,di=null,aa=!1,Bo=Rp(),us=1e4>Bo?Rp:function(){return Rp()-Bo};function Ql(){switch(np()){case HA:return 99;case df:return 98;case Zs:return 97;case so:return 96;case Ea:return 95;default:throw Error(l(332))}}function LA(x){switch(x){case 99:return HA;case 98:return df;case 97:return Zs;case 96:return so;case 95:return Ea;default:throw Error(l(332))}}function pf(x,L){return x=LA(x),oa(x,L)}function ef(x,L,te){return x=LA(x),Fs(x,L,te)}function ip(){if(di!==null){var x=di;di=null,Wa(x)}_d()}function _d(){if(!aa&&Wn!==null){aa=!0;var x=0;try{var L=Wn;pf(99,function(){for(;xIu?(Cl=dc,dc=null):Cl=dc.sibling;var wl=Ho(xn,dc,Ci[Iu],Po);if(wl===null){dc===null&&(dc=Cl);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=Cl}if(Iu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;IuIu?(Cl=dc,dc=null):Cl=dc.sibling;var $f=Ho(xn,dc,wl.value,Po);if($f===null){dc===null&&(dc=Cl);break}x&&dc&&$f.alternate===null&&L(xn,dc),rn=ft($f,rn,Iu),Ra===null?ec=$f:Ra.sibling=$f,Ra=$f,dc=Cl}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;Iu++,wl=Ci.next())wl=Sl(xn,wl.value,Po),wl!==null&&(rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;Iu++,wl=Ci.next())wl=Wg(dc,xn,Iu,wl.value,Po),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?Iu:wl.key),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(j2){return L(xn,j2)}),ec}return function(xn,rn,Ci,Po){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Le(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Le(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=Id(Ci.props.children,xn.mode,Po,Ci.key),rn.return=xn,xn=rn):(Po=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Po),Po.ref=Lr(xn,rn,Ci),Po.return=xn,xn=Po)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Le(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=Ny(Ci,xn.mode,Po),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Le(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=ev(Ci,xn.mode,Po),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return cA(xn,rn,Ci,Po);if(De(Ci))return th(xn,rn,Ci,Po);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Nl={},ca=GA(Nl),Bl=GA(Nl),$g=GA(Nl);function SA(x){if(x===Nl)throw Error(l(174));return x}function lI(x,L){dl($g,L),dl(Bl,x),dl(ca,Nl),x=Tr(L),$i(ca),dl(ca,x)}function lp(){$i(ca),$i(Bl),$i($g)}function Ib(x){var L=SA($g.current),te=SA(ca.current);L=Nr(te,x.type,L),te!==L&&(dl(Bl,x),dl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var wd=GA(0);function z1(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||pu(te)||_g(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var T_=null,RC=null,Hm=!1;function YS(x,L){var te=Of(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Fg(x,L){switch(x.tag){case 5:return L=Xu(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function hb(x){if(Hm){var L=RC;if(L){var te=L;if(!Fg(x,L)){if(L=mI(te),!L||!Fg(x,L)){x.flags=x.flags&-1025|2,Hm=!1,T_=x;return}YS(T_,te)}T_=x,RC=Qh(L)}else x.flags=x.flags&-1025|2,Hm=!1,T_=x}}function gC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;T_=x}function NC(x){if(!Nn||x!==T_)return!1;if(!Hm)return gC(x),Hm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=RC;L;)YS(x,L),L=mI(L);if(gC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));RC=Wt(x)}else RC=T_?mI(x.stateNode):null;return!0}function Y2(){Nn&&(RC=T_=null,Hm=!1)}var U_=[];function DC(){for(var x=0;xft))throw Error(l(301));ft+=1,Mc=Td=null,L.updateQueue=null,kC.current=Jr,x=te(Re,Le)}while(sE)}if(kC.current=xc,L=Td!==null&&Td.next!==null,ph=0,Mc=Td=vA=null,Pf=!1,L)throw Error(l(300));return x}function um(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function gm(){if(Td===null){var x=vA.alternate;x=x!==null?x.memoizedState:null}else x=Td.next;var L=Mc===null?vA.memoizedState:Mc.next;if(L!==null)Mc=L,Td=x;else{if(x===null)throw Error(l(310));Td=x,x={memoizedState:Td.memoizedState,baseState:Td.baseState,baseQueue:Td.baseQueue,queue:Td.queue,next:null},Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Td,Le=Re.baseQueue,ft=te.pending;if(ft!==null){if(Le!==null){var dr=Le.next;Le.next=ft.next,ft.next=dr}Re.baseQueue=Le=ft,te.pending=null}if(Le!==null){Le=Le.next,Re=Re.baseState;var Ur=dr=ft=null,mi=Le;do{var Vi=mi.lane;if((ph&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,ft=Re):Ur=Ur.next=Ta,vA.lanes|=Vi,xC|=Vi}mi=mi.next}while(mi!==null&&mi!==Le);Ur===null?ft=Re:Ur.next=dr,YA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=ft,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Le=te.pending,ft=L.memoizedState;if(Le!==null){te.pending=null;var dr=Le=Le.next;do ft=x(ft,dr.action),dr=dr.next;while(dr!==Le);YA(ft,L.memoizedState)||(Ts=!0),L.memoizedState=ft,L.baseQueue===null&&(L.baseState=ft),te.lastRenderedState=ft}return[ft,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Le=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Le!==null?x=Le===Re:(x=x.mutableReadLanes,(x=(ph&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,U_.push(L))),x)return te(L._source);throw U_.push(L),Error(l(350))}function Kl(x,L,te,Re){var Le=fh;if(Le===null)throw Error(l(349));var ft=L._getVersion,dr=ft(L._source),Ur=kC.current,mi=Ur.useState(function(){return ki(Le,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var Sl=x.memoizedState,Ho=Sl.refs,Wg=Ho.getSnapshot,cA=Sl.source;Sl=Sl.subscribe;var th=vA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=ft(L._source);if(!YA(dr,xn)){xn=te(L._source),YA(Ta,xn)||(Vi(xn),xn=Jp(th),Le.mutableReadLanes|=xn&Le.pendingLanes),xn=Le.mutableReadLanes,Le.entangledLanes|=xn;for(var rn=Le.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),pf(97GT&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432)}else{if(!Le)if(x=z1(ft),x!==null){if(L.flags|=64,Le=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Ry(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!ft.alternate&&!Hm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>GT&&te!==1073741824&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432);Re.isBackwards?(ft.sibling=L.child,L.child=ft):(x=Re.last,x!==null?x.sibling=ft:L.child=ft,Re.last=ft)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=wd.current,dl(wd,Le?L&1|2:L&1),x):null;case 23:case 24:return Np(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function _b(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(lp(),$i(oA),$i(Kd),DC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(wd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(wd),null;case 4:return lp(),null;case 10:return XE(x),null;case 23:case 24:return Np(),null;default:return null}}function z_(x,L){try{var te="",Re=L;do te+=HS(Re),Re=Re.return;while(Re);var Le=te}catch(ft){Le=` +`+Le[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Ju(x):""}var Eg=[],OA=-1;function GA(x){return{current:x}}function $i(x){0>OA||(x.current=Eg[OA],Eg[OA]=null,OA--)}function dl(x,L){OA++,Eg[OA]=x.current,x.current=L}var Uf={},Kd=GA(Uf),oA=GA(!1),oo=Uf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return Uf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Le={},ft;for(ft in te)Le[ft]=L[ft];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Le),Le}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(oA),$i(Kd)}function ws(x,L,te){if(Kd.current!==Uf)throw Error(l(168));dl(Kd,L),dl(oA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Le in Re)if(!(Le in x))throw Error(l(108,k(L)||"Unknown",Le));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||Uf,oo=Kd.current,dl(Kd,x),dl(oA,oA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,oo),Re.__reactInternalMemoizedMergedChildContext=x,$i(oA),$i(Kd),dl(Kd,x)):$i(oA),dl(oA,te)}var As=null,Tf=null,cm=o.unstable_now;cm();var Fl=0,rc=8;function sd(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Om(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function il(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function FA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Le=0,ft=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(ft!==0)Re=ft,Le=rc=15;else if(ft=te&134217727,ft!==0){var mi=ft&~dr;mi!==0?(Re=sd(mi),Le=rc):(Ur&=ft,Ur!==0&&(Re=sd(Ur),Le=rc))}else ft=te&~dr,ft!==0?(Re=sd(ft),Le=rc):Ur!==0&&(Re=sd(Ur),Le=rc);if(Re===0)return 0;if(Re=31-Er(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function MA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-Er(L),x[L]=te}var Er=Math.clz32?Math.clz32:ls,Zt=Math.log,bn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/bn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Wa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,ld=o.unstable_requestPaint,Rp=o.unstable_now,np=o.unstable_getCurrentPriorityLevel,HA=o.unstable_ImmediatePriority,df=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,so=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Ml={},Dr=ld!==void 0?ld:function(){},Wn=null,di=null,aa=!1,Bo=Rp(),us=1e4>Bo?Rp:function(){return Rp()-Bo};function Ql(){switch(np()){case HA:return 99;case df:return 98;case Zs:return 97;case so:return 96;case Ea:return 95;default:throw Error(l(332))}}function LA(x){switch(x){case 99:return HA;case 98:return df;case 97:return Zs;case 96:return so;case 95:return Ea;default:throw Error(l(332))}}function pf(x,L){return x=LA(x),oa(x,L)}function ef(x,L,te){return x=LA(x),Fs(x,L,te)}function ip(){if(di!==null){var x=di;di=null,Wa(x)}_d()}function _d(){if(!aa&&Wn!==null){aa=!0;var x=0;try{var L=Wn;pf(99,function(){for(;xIu?(Cl=dc,dc=null):Cl=dc.sibling;var wl=Ho(xn,dc,Ci[Iu],Po);if(wl===null){dc===null&&(dc=Cl);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=Cl}if(Iu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;IuIu?(Cl=dc,dc=null):Cl=dc.sibling;var $f=Ho(xn,dc,wl.value,Po);if($f===null){dc===null&&(dc=Cl);break}x&&dc&&$f.alternate===null&&L(xn,dc),rn=ft($f,rn,Iu),Ra===null?ec=$f:Ra.sibling=$f,Ra=$f,dc=Cl}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;Iu++,wl=Ci.next())wl=Sl(xn,wl.value,Po),wl!==null&&(rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;Iu++,wl=Ci.next())wl=Wg(dc,xn,Iu,wl.value,Po),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?Iu:wl.key),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(j2){return L(xn,j2)}),ec}return function(xn,rn,Ci,Po){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Le(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Le(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=Id(Ci.props.children,xn.mode,Po,Ci.key),rn.return=xn,xn=rn):(Po=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Po),Po.ref=Lr(xn,rn,Ci),Po.return=xn,xn=Po)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Le(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=Ny(Ci,xn.mode,Po),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Le(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=ev(Ci,xn.mode,Po),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return cA(xn,rn,Ci,Po);if(De(Ci))return th(xn,rn,Ci,Po);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Nl={},ca=GA(Nl),Bl=GA(Nl),$g=GA(Nl);function SA(x){if(x===Nl)throw Error(l(174));return x}function lI(x,L){dl($g,L),dl(Bl,x),dl(ca,Nl),x=Tr(L),$i(ca),dl(ca,x)}function lp(){$i(ca),$i(Bl),$i($g)}function Ib(x){var L=SA($g.current),te=SA(ca.current);L=Nr(te,x.type,L),te!==L&&(dl(Bl,x),dl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var wd=GA(0);function z1(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||pu(te)||_g(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var T_=null,RC=null,Hm=!1;function YS(x,L){var te=Of(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Fg(x,L){switch(x.tag){case 5:return L=Xu(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function hb(x){if(Hm){var L=RC;if(L){var te=L;if(!Fg(x,L)){if(L=mI(te),!L||!Fg(x,L)){x.flags=x.flags&-1025|2,Hm=!1,T_=x;return}YS(T_,te)}T_=x,RC=Qh(L)}else x.flags=x.flags&-1025|2,Hm=!1,T_=x}}function gC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;T_=x}function NC(x){if(!Nn||x!==T_)return!1;if(!Hm)return gC(x),Hm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=RC;L;)YS(x,L),L=mI(L);if(gC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));RC=Wt(x)}else RC=T_?mI(x.stateNode):null;return!0}function Y2(){Nn&&(RC=T_=null,Hm=!1)}var U_=[];function DC(){for(var x=0;xft))throw Error(l(301));ft+=1,Mc=Td=null,L.updateQueue=null,kC.current=Jr,x=te(Re,Le)}while(sE)}if(kC.current=xc,L=Td!==null&&Td.next!==null,ph=0,Mc=Td=vA=null,Pf=!1,L)throw Error(l(300));return x}function um(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function gm(){if(Td===null){var x=vA.alternate;x=x!==null?x.memoizedState:null}else x=Td.next;var L=Mc===null?vA.memoizedState:Mc.next;if(L!==null)Mc=L,Td=x;else{if(x===null)throw Error(l(310));Td=x,x={memoizedState:Td.memoizedState,baseState:Td.baseState,baseQueue:Td.baseQueue,queue:Td.queue,next:null},Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Td,Le=Re.baseQueue,ft=te.pending;if(ft!==null){if(Le!==null){var dr=Le.next;Le.next=ft.next,ft.next=dr}Re.baseQueue=Le=ft,te.pending=null}if(Le!==null){Le=Le.next,Re=Re.baseState;var Ur=dr=ft=null,mi=Le;do{var Vi=mi.lane;if((ph&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,ft=Re):Ur=Ur.next=Ta,vA.lanes|=Vi,xC|=Vi}mi=mi.next}while(mi!==null&&mi!==Le);Ur===null?ft=Re:Ur.next=dr,YA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=ft,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Le=te.pending,ft=L.memoizedState;if(Le!==null){te.pending=null;var dr=Le=Le.next;do ft=x(ft,dr.action),dr=dr.next;while(dr!==Le);YA(ft,L.memoizedState)||(Ts=!0),L.memoizedState=ft,L.baseQueue===null&&(L.baseState=ft),te.lastRenderedState=ft}return[ft,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Le=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Le!==null?x=Le===Re:(x=x.mutableReadLanes,(x=(ph&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,U_.push(L))),x)return te(L._source);throw U_.push(L),Error(l(350))}function Kl(x,L,te,Re){var Le=fh;if(Le===null)throw Error(l(349));var ft=L._getVersion,dr=ft(L._source),Ur=kC.current,mi=Ur.useState(function(){return ki(Le,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var Sl=x.memoizedState,Ho=Sl.refs,Wg=Ho.getSnapshot,cA=Sl.source;Sl=Sl.subscribe;var th=vA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=ft(L._source);if(!YA(dr,xn)){xn=te(L._source),YA(Ta,xn)||(Vi(xn),xn=Jp(th),Le.mutableReadLanes|=xn&Le.pendingLanes),xn=Le.mutableReadLanes,Le.entangledLanes|=xn;for(var rn=Le.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),pf(97GT&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432)}else{if(!Le)if(x=z1(ft),x!==null){if(L.flags|=64,Le=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Ry(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!ft.alternate&&!Hm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>GT&&te!==1073741824&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432);Re.isBackwards?(ft.sibling=L.child,L.child=ft):(x=Re.last,x!==null?x.sibling=ft:L.child=ft,Re.last=ft)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=wd.current,dl(wd,Le?L&1|2:L&1),x):null;case 23:case 24:return Np(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function _b(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(lp(),$i(oA),$i(Kd),DC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(wd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(wd),null;case 4:return lp(),null;case 10:return XE(x),null;case 23:case 24:return Np(),null;default:return null}}function z_(x,L){try{var te="",Re=L;do te+=HS(Re),Re=Re.return;while(Re);var Le=te}catch(ft){Le=` Error generating stack: `+ft.message+` -`+ft.stack}return{value:x,source:L,stack:Le}}function zE(x,L){try{console.error(L.value)}catch(te){setTimeout(function(){throw te})}}var oB=typeof WeakMap=="function"?WeakMap:Map;function DT(x,L,te){te=lm(-1,te),te.tag=3,te.payload={element:null};var Re=L.value;return te.callback=function(){e2||(e2=!0,yd=Re),zE(x,L)},te}function aB(x,L,te){te=lm(-1,te),te.tag=3;var Re=x.type.getDerivedStateFromError;if(typeof Re=="function"){var Le=L.value;te.payload=function(){return zE(x,L),Re(Le)}}var ft=x.stateNode;return ft!==null&&typeof ft.componentDidCatch=="function"&&(te.callback=function(){typeof Re!="function"&&(bI===null?bI=new Set([this]):bI.add(this),zE(x,L));var dr=L.stack;this.componentDidCatch(L.value,{componentStack:dr!==null?dr:""})}),te}var jS=typeof WeakSet=="function"?WeakSet:Set;function XR(x){var L=x.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(te){i_(x,te)}else L.current=null}function zS(x,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&x!==null){var te=x.memoizedProps,Re=x.memoizedState;x=L.stateNode,L=x.getSnapshotBeforeUpdate(L.elementType===L.type?te:jd(L.type,te),Re),x.__reactInternalSnapshotBeforeUpdate=L}return;case 3:jt&&L.flags&256&&Ei(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(l(163))}function qE(x,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var te=L=L.next;do{if((te.tag&x)===x){var Re=te.destroy;te.destroy=void 0,Re!==void 0&&Re()}te=te.next}while(te!==L)}}function X2(x,L,te){switch(te.tag){case 0:case 11:case 15:case 22:if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{if((x.tag&3)===3){var Re=x.create;x.destroy=Re()}x=x.next}while(x!==L)}if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{var Le=x;Re=Le.next,Le=Le.tag,Le&4&&Le&1&&(hp(te,x),ny(te,x)),x=Re}while(x!==L)}return;case 1:x=te.stateNode,te.flags&4&&(L===null?x.componentDidMount():(Re=te.elementType===te.type?L.memoizedProps:jd(te.type,L.memoizedProps),x.componentDidUpdate(Re,L.memoizedState,x.__reactInternalSnapshotBeforeUpdate))),L=te.updateQueue,L!==null&&H2(te,L,x);return;case 3:if(L=te.updateQueue,L!==null){if(x=null,te.child!==null)switch(te.child.tag){case 5:x=Yt(te.child.stateNode);break;case 1:x=te.child.stateNode}H2(te,L,x)}return;case 5:x=te.stateNode,L===null&&te.flags&4&&ps(x,te.type,te.memoizedProps,te);return;case 6:return;case 4:return;case 12:return;case 13:Nn&&te.memoizedState===null&&(te=te.alternate,te!==null&&(te=te.memoizedState,te!==null&&(te=te.dehydrated,te!==null&&Ru(te))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(l(163))}function kT(x,L){if(jt)for(var te=x;;){if(te.tag===5){var Re=te.stateNode;L?iA(Re):vu(te.stateNode,te.memoizedProps)}else if(te.tag===6)Re=te.stateNode,L?ma(Re):li(Re,te.memoizedProps);else if((te.tag!==23&&te.tag!==24||te.memoizedState===null||te===x)&&te.child!==null){te.child.return=te,te=te.child;continue}if(te===x)break;for(;te.sibling===null;){if(te.return===null||te.return===x)return;te=te.return}te.sibling.return=te.return,te=te.sibling}}function pn(x,L){if(Tf&&typeof Tf.onCommitFiberUnmount=="function")try{Tf.onCommitFiberUnmount(As,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(x=L.updateQueue,x!==null&&(x=x.lastEffect,x!==null)){var te=x=x.next;do{var Re=te,Le=Re.destroy;if(Re=Re.tag,Le!==void 0)if(Re&4)hp(L,te);else{Re=L;try{Le()}catch(ft){i_(Re,ft)}}te=te.next}while(te!==x)}break;case 1:if(XR(L),x=L.stateNode,typeof x.componentWillUnmount=="function")try{x.props=L.memoizedProps,x.state=L.memoizedState,x.componentWillUnmount()}catch(ft){i_(L,ft)}break;case 5:XR(L);break;case 4:jt?RD(x,L):Fn&&Fn&&(L=L.stateNode.containerInfo,x=Xa(L),Wc(L,x))}}function q1(x,L){for(var te=L;;)if(pn(x,te),te.child===null||jt&&te.tag===4){if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return}te.sibling.return=te.return,te=te.sibling}else te.child.return=te,te=te.child}function J2(x){x.alternate=null,x.child=null,x.dependencies=null,x.firstEffect=null,x.lastEffect=null,x.memoizedProps=null,x.memoizedState=null,x.pendingProps=null,x.return=null,x.updateQueue=null}function ey(x){return x.tag===5||x.tag===3||x.tag===4}function up(x){if(jt){e:{for(var L=x.return;L!==null;){if(ey(L))break e;L=L.return}throw Error(l(160))}var te=L;switch(L=te.stateNode,te.tag){case 5:var Re=!1;break;case 3:L=L.containerInfo,Re=!0;break;case 4:L=L.containerInfo,Re=!0;break;default:throw Error(l(161))}te.flags&16&&(Nc(L),te.flags&=-17);e:t:for(te=x;;){for(;te.sibling===null;){if(te.return===null||ey(te.return)){te=null;break e}te=te.return}for(te.sibling.return=te.return,te=te.sibling;te.tag!==5&&te.tag!==6&&te.tag!==18;){if(te.flags&2||te.child===null||te.tag===4)continue t;te.child.return=te,te=te.child}if(!(te.flags&2)){te=te.stateNode;break e}}Re?Iw(x,te,L):cB(x,te,L)}}function Iw(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?Qa(te,x,L):Or(te,x);else if(Re!==4&&(x=x.child,x!==null))for(Iw(x,L,te),x=x.sibling;x!==null;)Iw(x,L,te),x=x.sibling}function cB(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?bo(te,x,L):Rn(te,x);else if(Re!==4&&(x=x.child,x!==null))for(cB(x,L,te),x=x.sibling;x!==null;)cB(x,L,te),x=x.sibling}function RD(x,L){for(var te=L,Re=!1,Le,ft;;){if(!Re){Re=te.return;e:for(;;){if(Re===null)throw Error(l(160));switch(Le=Re.stateNode,Re.tag){case 5:ft=!1;break e;case 3:Le=Le.containerInfo,ft=!0;break e;case 4:Le=Le.containerInfo,ft=!0;break e}Re=Re.return}Re=!0}if(te.tag===5||te.tag===6)q1(x,te),ft?Cg(Le,te.stateNode):gc(Le,te.stateNode);else if(te.tag===4){if(te.child!==null){Le=te.stateNode.containerInfo,ft=!0,te.child.return=te,te=te.child;continue}}else if(pn(x,te),te.child!==null){te.child.return=te,te=te.child;continue}if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return,te.tag===4&&(Re=!1)}te.sibling.return=te.return,te=te.sibling}}function Rd(x,L){if(jt){switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 1:return;case 5:var te=L.stateNode;if(te!=null){var Re=L.memoizedProps;x=x!==null?x.memoizedProps:Re;var Le=L.type,ft=L.updateQueue;L.updateQueue=null,ft!==null&&yo(te,ft,Le,x,Re,L)}return;case 6:if(L.stateNode===null)throw Error(l(162));te=L.memoizedProps,Qi(L.stateNode,x!==null?x.memoizedProps:te,te);return;case 3:Nn&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,Hu(L.containerInfo)));return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 17:return;case 23:case 24:kT(L,L.memoizedState!==null);return}throw Error(l(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 3:Nn&&(te=L.stateNode,te.hydrate&&(te.hydrate=!1,Hu(te.containerInfo)));break;case 23:case 24:return}e:if(Fn){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,Wc(L.containerInfo,L.pendingChildren);break e}throw Error(l(163))}}function JR(x){x.memoizedState!==null&&(hw=us(),jt&&kT(x.child,!0))}function ty(x){var L=x.updateQueue;if(L!==null){x.updateQueue=null;var te=x.stateNode;te===null&&(te=x.stateNode=new jS),L.forEach(function(Re){var Le=ZT.bind(null,x,Re);te.has(Re)||(te.add(Re),Re.then(Le,Le))})}}function cF(x,L){return x!==null&&(x=x.memoizedState,x===null||x.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var $1=0,$E=1,N_=2,e1=3,t1=4;if(typeof Symbol=="function"&&Symbol.for){var ry=Symbol.for;$1=ry("selector.component"),$E=ry("selector.has_pseudo_class"),N_=ry("selector.role"),e1=ry("selector.test_id"),t1=ry("selector.text")}function xT(x){var L=Hi(x);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(l(364));return L}if(x=Gc(x),x===null)throw Error(l(362));return x.stateNode.current}function yb(x,L){switch(L.$$typeof){case $1:if(x.type===L.value)return!0;break;case $E:e:{L=L.value,x=[x,0];for(var te=0;te";case $E:return":has("+(r_(x)||"")+")";case N_:return'[role="'+x.value+'"]';case t1:return'"'+x.value+'"';case e1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function Rh(x,L){var te=[];x=[x,0];for(var Re=0;ReLe&&(Le=dr),te&=~ft}if(te=Le,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*DD(te/1960))-te,10";case $E:return":has("+(r_(x)||"")+")";case N_:return'[role="'+x.value+'"]';case t1:return'"'+x.value+'"';case e1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function Rh(x,L){var te=[];x=[x,0];for(var Re=0;ReLe&&(Le=dr),te&=~ft}if(te=Le,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*DD(te/1960))-te,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Qp!==5&&(Qp=2),mi=z_(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:ft=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=DT(Ho,ft,L);CI(Ho,Ra);break e;case 1:ft=mi;var dc=Ho.type,Iu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||Iu!==null&&typeof Iu.componentDidCatch=="function"&&(bI===null||!bI.has(Iu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Cl=aB(Ho,ft,L);CI(Ho,Cl);break e}}Ho=Ho.return}while(Ho!==null)}iu(te)}catch(wl){L=wl,rf===te&&te!==null&&(rf=te=te.return);continue}break}while(!0)}function t2(){var x=q_.current;return q_.current=xc,x===null?xc:x}function Ro(x,L){var te=lc;lc|=16;var Re=t2();fh===x&&yI===L||Dm(x,L);do try{AE();break}catch(Le){Dp(x,Le)}while(!0);if(J_(),lc=te,q_.current=Re,rf!==null)throw Error(l(261));return fh=null,yI=0,Qp}function AE(){for(;rf!==null;)Xc(rf)}function AB(){for(;rf!==null&&!Ca();)Xc(rf)}function Xc(x){var L=Cx(x.alternate,x,aE);x.memoizedProps=x.pendingProps,L===null?iu(x):rf=L,kD.current=null}function iu(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=_b(L),te!==null){te.flags&=2047,rf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=KS(te,L,aE),te!==null){rf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||aE&1073741824||!(te.mode&4)){for(var Re=0,Le=te.child;Le!==null;)Re|=Le.lanes|Le.childLanes,Le=Le.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-hw?Dm(x,0):r1|=te),eh(x,L)}function ZT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(Ip===0&&(Ip=Ih),L=yg(62914560&~Ip),L===0&&(L=4194304)):L=Ql()===99?1:2:L=1),te=fu(),x=uE(x,L),x!==null&&(MA(x,L,te),eh(x,te))}var Cx;Cx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||oA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:RT(L),Y2();break;case 5:Ib(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:lI(L,L.stateNode.containerInfo);break;case 10:q0(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?jE(x,L,te):(dl(wd,wd.current&1),L=BA(x,L,te),L!==null?L.sibling:null);dl(wd,wd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return $I(x,L,te);L.flags|=64}var Le=L.memoizedState;if(Le!==null&&(Le.rendering=null,Le.tail=null,Le.lastEffect=null),dl(wd,wd.current),Re)break;return null;case 23:case 24:return L.lanes=0,uI(x,L,te)}return BA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Le=Ki(L,Kd.current),t_(L,te),Le=XS(null,L,Re,x,Le,te),L.flags|=1,typeof Le=="object"&&Le!==null&&typeof Le.render=="function"&&Le.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var ft=!0;Ma(L)}else ft=!1;L.memoizedState=Le.state!==null&&Le.state!==void 0?Le.state:null,fb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Le.updater=O,L.stateNode=Le,Le._reactInternals=L,sr(L,Re,x,te),L=sB(null,L,Re,!0,ft,te)}else L.tag=0,Qo(null,L,Le,te),L=L.child;return L;case 16:Le=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,ft=Le._init,Le=ft(Le._payload),L.type=Le,ft=L.tag=Vd(Le),x=jd(Le,x),ft){case 0:L=oE(null,L,Le,x,te);break e;case 1:L=TT(null,L,Le,x,te);break e;case 11:L=vg(null,L,Le,x,te);break e;case 14:L=Ng(null,L,Le,jd(Le.type,x),Re,te);break e}throw Error(l(306,Le,""))}return L;case 0:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),oE(x,L,Re,Le,te);case 1:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),TT(x,L,Re,Le,te);case 3:if(RT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Le=L.memoizedState,Le=Le!==null?Le.element:null,pe(x,L),_I(L,Re,null,te),Re=L.memoizedState.element,Re===Le)Y2(),L=BA(x,L,te);else{if(Le=L.stateNode,(ft=Le.hydrate)&&(Nn?(RC=Qh(L.stateNode.containerInfo),T_=L,ft=Hm=!0):ft=!1),ft){if(Nn&&(x=Le.mutableSourceEagerHydrationData,x!=null))for(Le=0;Le=Vi&&ft>=Sl&&Le<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(ft!==Sl||te.height!==mi.height||TaLe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),Taft&&(mi.height+=Sl-ft,mi.y=ft),Hote&&(te=dr)),dr ")+` No matching component was found for: - `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Yt(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:bL,findFiberByHostInstance:x.findFiberByHostInstance||gF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Tf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=bb(x,L);var Le=zr(x,te,Re).disconnect;return{disconnect:function(){Le()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Fl;try{return Fl=x,L()}finally{Fl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(b0(),ip())}},r.updateContainer=function(x,L,te,Re){var Le=L.current,ft=fu(),dr=Jp(Le);e:if(te){te=te._reactInternals;t:{if(et(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=Uf;return L.context===null?L.context=te:L.pendingContext=te,L=lm(ft,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),Kf(Le,L),dC(Le,dr,ft),dr},r}});var BMn=H((Etu,vMn)=>{"use strict";vMn.exports=SMn()});var TMn=H((Stu,wMn)=>{"use strict";var JUo={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};wMn.exports=JUo});var kMn=H((vtu,DMn)=>{"use strict";var UUo=Object.assign||function(e){for(var t=1;t"}}]),e}(),RMn=function(){wpt(e,null,[{key:"fromJS",value:function(r){var n=r.width,a=r.height;return new e(n,a)}}]);function e(t,r){DIr(this,e),this.width=t,this.height=r}return wpt(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),NMn=function(){function e(t,r){DIr(this,e),this.unit=t,this.value=r}return wpt(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case _X.UNIT_POINT:return String(this.value);case _X.UNIT_PERCENT:return this.value+"%";case _X.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();DMn.exports=function(e,t){function r(l,A,f){var I=l[A];l[A]=function(){for(var C=arguments.length,b=Array(C),E=0;E1?b-1:0),N=1;N1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,I=arguments.length>3&&arguments[3]!==void 0?arguments[3]:_X.DIRECTION_LTR;return l.call(this,A,f,I)}),UUo({Config:t.Config,Node:t.Node,Layout:e("Layout",KUo),Size:e("Size",RMn),Value:e("Value",NMn),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},_X)}});var xMn=H((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof wt=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var n=nodeFS.readFileSync(t);return r?n:n.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,n){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):n()},a.onerror=n,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var n=enlargeMemory();if(!n)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var n=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return n},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,n,a,o){var l=getCFunc(t),A=[],f=0;if(a)for(var I=0;I>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,n){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var l=typeof t=="string"?t:null,A;if(r==ALLOC_NONE?A=n:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,l?1:t.length)),a){var n=A,f;for(assert((A&3)==0),f=A+(o&-4);n>2]=0;for(f=A+o;n>0]=0;return A}if(l==="i8")return e.subarray||e.slice?HEAPU8.set(e,A):HEAPU8.set(new Uint8Array(e),A),A;for(var I=0,C,b,E;I>0],r|=n,!(n==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var l=1024,A;t>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,l))),o=o?o+A:A,e+=l,t-=l;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var n,a,o,l,A,f,I="";;){if(n=e[t++],!n)return I;if(!(n&128)){I+=String.fromCharCode(n);continue}if(a=e[t++]&63,(n&224)==192){I+=String.fromCharCode((n&31)<<6|a);continue}if(o=e[t++]&63,(n&240)==224?n=(n&15)<<12|a<<6|o:(l=e[t++]&63,(n&248)==240?n=(n&7)<<18|a<<12|o<<6|l:(A=e[t++]&63,(n&252)==248?n=(n&3)<<24|a<<18|o<<12|l<<6|A:(f=e[t++]&63,n=(n&1)<<30|a<<24|o<<18|l<<12|A<<6|f))),n<65536)I+=String.fromCharCode(n);else{var C=n-65536;I+=String.fromCharCode(55296|C>>10,56320|C&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,n){if(!(n>0))return 0;for(var a=r,o=r+n-1,l=0;l=55296&&A<=57343&&(A=65536+((A&1023)<<10)|e.charCodeAt(++l)&1023),A<=127){if(r>=o)break;t[r++]=A}else if(A<=2047){if(r+1>=o)break;t[r++]=192|A>>6,t[r++]=128|A&63}else if(A<=65535){if(r+2>=o)break;t[r++]=224|A>>12,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=2097151){if(r+3>=o)break;t[r++]=240|A>>18,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=67108863){if(r+4>=o)break;t[r++]=248|A>>24,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else{if(r+5>=o)break;t[r++]=252|A>>30,t[r++]=128|A>>24&63,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((n&1023)<<10)|e.charCodeAt(++r)&1023),n<=127?++t:n<=2047?t+=2:n<=65535?t+=3:n<=2097151?t+=4:n<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),n=lengthBytesUTF8(r)+1,a=_malloc(n);stringToUTF8(r,a,n);var o=_malloc(4),l=t(a,0,0,o);if(getValue(o,"i32")===0&&l)return Pointer_stringify(l)}catch{}finally{a&&_free(a),o&&_free(o),l&&_free(l)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var n=demangle(r);return r===n?r:r+" ["+n+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` -`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var n=r>0?r:lengthBytesUTF8(e)+1,a=new Array(n),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;r&&(a=t+lengthBytesUTF8(e),n=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=n)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var n=t>>>16,a=t&65535,o=r>>>16,l=r&65535;return a*l+(n*l+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,n,a,o,l,A){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,n,a,o,l,A){return ASM_CONSTS[e](t,r,n,a,o,l,A)}function _emscripten_asm_const_iiiii(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiidddddd(e,t,r,n,a,o,l,A,f){return ASM_CONSTS[e](t,r,n,a,o,l,A,f)}function _emscripten_asm_const_iiididi(e,t,r,n,a,o,l){return ASM_CONSTS[e](t,r,n,a,o,l)}function _emscripten_asm_const_iiii(e,t,r,n){return ASM_CONSTS[e](t,r,n)}function _emscripten_asm_const_iiiid(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiiiii(e,t,r,n,a,o){return ASM_CONSTS[e](t,r,n,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,n){var a=arguments.length,o=a<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,n);else for(var A=e.length-1;A>=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,n){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=n/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var l=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,l)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(l){l.source===window&&l.data===n&&(l.stopPropagation(),r.shift()())};var a=o,r=[],n="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(A){r.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:n})):window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,n,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=n;var o;typeof n<"u"?o=function(){Module.dynCall_vi(e,n)}:o=function(){Module.dynCall_v(e)};var l=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),I=Browser.mainLoop.queue.shift();if(I.func(I.arg),Browser.mainLoop.remainingBlockers){var C=Browser.mainLoop.remainingBlockers,b=C%1==0?C-1:Math.floor(C);I.counted?Browser.mainLoop.remainingBlockers=b:(b=b+.5,Browser.mainLoop.remainingBlockers=(8*C+b)/9)}if(console.log('main loop blocker "'+I.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),l1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(l0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,l,A,f){var I=null;if(Browser.hasBlobConstructor)try{I=new Blob([o],{type:Browser.getMimetype(l)}),I.size!==o.length&&(I=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(l)}))}catch(N){Runtime.warnOnce("Blob constructor present but fails: "+N+"; falling back to blob builder")}if(!I){var C=new Browser.BlobBuilder;C.append(new Uint8Array(o).buffer),I=C.getBlob()}var b=Browser.URLObject.createObjectURL(I),E=new Image;E.onload=function(){assert(E.complete,"Image "+l+" could not be decoded");var B=document.createElement("canvas");B.width=E.width,B.height=E.height;var F=B.getContext("2d");F.drawImage(E,0,0),Module.preloadedImages[l]=B,Browser.URLObject.revokeObjectURL(b),A&&A(o)},E.onerror=function(B){console.log("Image "+b+" could not be decoded"),f&&f()},E.src=b},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,l,A,f){var I=!1;function C(F){I||(I=!0,Module.preloadedAudios[l]=F,A&&A(o))}function b(){I||(I=!0,Module.preloadedAudios[l]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var E=new Blob([o],{type:Browser.getMimetype(l)})}catch{return b()}var N=Browser.URLObject.createObjectURL(E),B=new Audio;B.addEventListener("canplaythrough",function(){C(B)},!1),B.onerror=function(Q){if(I)return;console.log("warning: browser could not fully decode audio "+l+", trying slower base64 approach");function X(ae){for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ce="=",fe="",ue=0,de=0,be=0;be=6;){var Se=ue>>de-6&63;de-=6,fe+=ne[Se]}return de==2?(fe+=ne[(ue&3)<<4],fe+=ce+ce):de==4&&(fe+=ne[(ue&15)<<2],fe+=ce),fe}B.src="data:audio/x-"+l.substr(-3)+";base64,"+X(o),C(B)},B.src=N,Browser.safeSetTimeout(function(){C(B)},1e4)}else return b()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,n){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var l={antialias:!1,alpha:!1};if(n)for(var A in n)l[A]=n[A];o=GL.createContext(e,l),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var n=Module.canvas;function a(){Browser.isFullscreen=!1;var l=n.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===l?(n.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},n.exitFullscreen=n.exitFullscreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(l.parentNode.insertBefore(n,l),l.parentNode.removeChild(l),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(n)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");n.parentNode.insertBefore(o,n),o.appendChild(n),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(n,a,o){return Browser.requestFullscreen(n,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,n=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var l=e.touch;if(l===void 0)return;var A=l.pageX-(a+t.left),f=l.pageY-(o+t.top);A=A*(r/t.width),f=f*(n/t.height);var I={x:A,y:f};if(e.type==="touchstart")Browser.lastTouches[l.identifier]=I,Browser.touches[l.identifier]=I;else if(e.type==="touchend"||e.type==="touchmove"){var C=Browser.touches[l.identifier];C||(C=I),Browser.lastTouches[l.identifier]=C,Browser.touches[l.identifier]=I}return}var b=e.pageX-(a+t.left),E=e.pageY-(o+t.top);b=b*(r/t.width),E=E*(n/t.height),Browser.mouseMovementX=b-Browser.mouseX,Browser.mouseMovementY=E-Browser.mouseY,Browser.mouseX=b,Browser.mouseY=E}},asyncLoad:function(e,t,r,n){var a=n?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(n){return(typeof FS>"u"||!(n instanceof FS.ErrnoError))&&abort(n),-n.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,I,C,b,E,N){if(I==1){var B=b&896;(B==128||B==256||B==384)&&(f="X const")}var F;return N?F=C.replace("X",f).replace("Y",E):F=f.replace("X",C).replace("Y",E),F.replace(/([*&]) (?=[*&])/g,"$1")}function n(f,I,C,b,E){throw new Error(f+" type "+C.replace("X",I+"?")+(b?" with flag "+b:"")+" in "+E)}function a(f,I,C,b,E,N,B,F){N===void 0&&(N="X"),F===void 0&&(F=1);var Q=C(f);if(Q)return Q;var X=b(f),ae=X.placeholderFlag,ne=t[ae];B&&ne&&(N=r(B[2],B[0],N,ne[0],"?",!0));var ce;ae==0&&(ce="Unbound"),ae>=10&&(ce="Corrupt"),F>20&&(ce="Deeply nested"),ce&&n(ce,f,N,ae,E||"?");var fe=X.paramList[0],ue=a(fe,I,C,b,E,N,ne,F+1),de,be={flags:ne[0],id:f,name:"",paramList:[ue]},Se=[],De="?";switch(X.placeholderFlag){case 1:de=ue.spec;break;case 2:if((ue.flags&15360)==1024&&ue.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:de=ue.spec,ue.flags&15360;break;case 8:De=""+X.paramList[1],be.paramList.push(X.paramList[1]);break;case 9:for(var k=0,et=X.paramList[1];k>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),l=SYSCALLS.get(),A=a;return FS.llseek(r,A,l),HEAP32[o>>2]=r.position,r.getdents&&A===0&&l===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(C,b){var E=___syscall146.buffers[C];assert(E),b===0||b===10?((C===1?Module.print:Module.printErr)(UTF8ArrayToString(E,0)),E.length=0):E.push(b)});for(var l=0;l>2],f=HEAP32[n+(l*8+4)>>2],I=0;I"u"||!(C instanceof FS.ErrnoError))&&abort(C),-C.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var n=_nbind.typeNameTbl.NBind.proto;return n.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var n=HEAPU32[e.pagePtr];if(n){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],n=new r(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var n=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(n=[n[0],n.slice(1)]),{paramList:n,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},n=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+n];if(!a)throw new Error("dynCall_"+n+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,n){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,n)):(r.arity=n,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var n=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=a[r.ptrSize*8],n.ptrSize=r.ptrSize,n}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,n=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,n,r),n}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,n){return function(a){return pushCString(a,n)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(n){return!!n},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(n){__extends(a,n);function a(o,l,A,f){var I=n.call(this)||this;if(!(I instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var C=l,b=A,E=f;if(o!==_nbind.ptrMarker){var N=I.__nbindConstructor.apply(I,arguments);C=4608,E=HEAPU32[N/4],b=HEAPU32[N/4+1]}var B={configurable:!0,enumerable:!1,value:null,writable:!1},F={__nbindFlags:C,__nbindPtr:b};E&&(F.__nbindShared=E,_nbind.mark(I));for(var Q=0,X=Object.keys(F);Q>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?l=Buffer.from(o):l=new Buffer(o),l.copy(n)}else getBuffer(n).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,n,a,o){try{Module.dynCall_viiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,n){try{return Module.dynCall_fiff(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,n,a){try{Module.dynCall_viddi(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,n){try{Module.dynCall_vidd(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,n){try{return Module.dynCall_iiii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,n){try{return Module.dynCall_diii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,n,a,o){try{Module.dynCall_viiddi(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,n,a,o,l){try{Module.dynCall_viiiiii(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,n,a,o){try{return Module.dynCall_iiiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,n,a){try{Module.dynCall_viiid(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,n,a,o,l){try{Module.dynCall_viififi(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(e,t,r,n){try{Module.dynCall_viii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,n){try{Module.dynCall_viid(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,n,a){try{Module.dynCall_viiii(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var n=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),l=new e.Uint8Array(r),A=new e.Uint16Array(r),f=new e.Uint32Array(r),I=new e.Float32Array(r),C=new e.Float64Array(r),b=t.DYNAMICTOP_PTR|0,E=t.tempDoublePtr|0,N=t.ABORT|0,B=t.STACKTOP|0,F=t.STACK_MAX|0,Q=t.cttz_i8|0,X=t.___dso_handle|0,ae=0,ne=0,ce=0,fe=0,ue=e.NaN,de=e.Infinity,be=0,Se=0,De=0,k=0,et=0,ct=0,Me=e.Math.floor,je=e.Math.abs,St=e.Math.sqrt,At=e.Math.pow,Yt=e.Math.cos,Tr=e.Math.sin,Nr=e.Math.tan,er=e.Math.acos,vt=e.Math.asin,xt=e.Math.atan,Zr=e.Math.atan2,qt=e.Math.exp,Xt=e.Math.log,lr=e.Math.ceil,cr=e.Math.imul,Ar=e.Math.min,qr=e.Math.max,_n=e.Math.clz32,ke=e.Math.fround,jt=t.abort,Fn=t.assert,Nn=t.enlargeMemory,Hi=t.getTotalMemory,po=t.abortOnCannotGrowMemory,Vr=t.invoke_viiiii,xi=t.invoke_vif,io=t.invoke_vid,ga=t.invoke_fiff,Ya=t.invoke_vi,Gc=t.invoke_vii,cl=t.invoke_ii,Sc=t.invoke_viddi,Hr=t.invoke_vidd,Wr=t.invoke_iiii,Ft=t.invoke_diii,zr=t.invoke_di,Rn=t.invoke_iid,Or=t.invoke_iii,Qi=t.invoke_viiddi,ps=t.invoke_viiiiii,yo=t.invoke_dii,bo=t.invoke_i,Qa=t.invoke_iiiiii,gc=t.invoke_viiid,Cg=t.invoke_viififi,Nc=t.invoke_viii,iA=t.invoke_v,ma=t.invoke_viid,vu=t.invoke_idd,li=t.invoke_viiii,Ei=t._emscripten_asm_const_iiiii,Ps=t._emscripten_asm_const_iiidddddd,Xa=t._emscripten_asm_const_iiiid,ac=t.__nbind_reference_external,Yl=t._emscripten_asm_const_iiiiiiii,Wc=t._removeAccessorPrefix,Sg=t._typeModule,Ul=t.__nbind_register_pool,Xu=t.__decorate,Da=t._llvm_stackrestore,pu=t.___cxa_atexit,_g=t.__extends,mI=t.__nbind_get_value_object,Qh=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,Ri=t._emscripten_set_main_loop_timing,Do=t.__nbind_register_primitive,Wt=t.__nbind_register_type,Hu=t._emscripten_memcpy_big,Ru=t.__nbind_register_function,Vs=t.___setErrNo,Ju=t.__nbind_register_class,Yn=t.__nbind_finish,Ko=t._abort,Eg=t._nbind_value,OA=t._llvm_stacksave,GA=t.___syscall54,$i=t._defineHidden,dl=t._emscripten_set_main_loop,Uf=t._emscripten_get_now,Kd=t.__nbind_register_callback_signature,oA=t._emscripten_asm_const_iiiiii,oo=t.__nbind_free_external,Ki=t._emscripten_asm_const_iiii,cc=t._emscripten_asm_const_iiididi,Xs=t.___syscall6,ws=t._atexit,Gs=t.___syscall140,Ma=t.___syscall146,Dc=ke(0);let As=ke(0);function Tf(p){p=p|0;var y=0;return y=B,B=B+p|0,B=B+15&-16,y|0}function cm(){return B|0}function Fl(p){p=p|0,B=p}function rc(p,y){p=p|0,y=y|0,B=p,F=y}function sd(p,y){p=p|0,y=y|0,ae||(ae=p,ne=y)}function Om(p){p=p|0,ct=p}function il(){return ct|0}function FA(){var p=0,y=0;Md(8104,8,400)|0,Md(8504,408,540)|0,p=9044,y=p+44|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));n[9088]=0,n[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,pu(17,8104,X|0)|0}function ZA(p){p=p|0,aa(p+948|0)}function El(p){return p=ke(p),((kT(p)|0)&2147483647)>>>0>2139095040|0}function yg(p,y,w){p=p|0,y=y|0,w=w|0;e:do if(o[p+(y<<3)+4>>2]|0)p=p+(y<<3)|0;else{if((y|2|0)==3&&o[p+60>>2]|0){p=p+56|0;break}switch(y|0){case 0:case 2:case 4:case 5:{if(o[p+52>>2]|0){p=p+48|0;break e}break}default:}if(o[p+68>>2]|0){p=p+64|0;break}else{p=(y|1|0)==5?948:w;break}}while(!1);return p|0}function Mp(p){p=p|0;var y=0;return y=zne(1e3)|0,MA(p,(y|0)!=0,2456),o[2276]=(o[2276]|0)+1,Md(y|0,8104,1e3)|0,n[p+2>>0]|0&&(o[y+4>>2]=2,o[y+12>>2]=4),o[y+976>>2]=p,y|0}function MA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;J=B,B=B+16|0,G=J,y||(o[G>>2]=w,JS(p,5,3197,G)),B=J}function Er(){return Mp(956)|0}function Zt(p){p=p|0;var y=0;return y=Ku(1e3)|0,yn(y,p),MA(o[p+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[y+944>>2]=0,y|0}function yn(p,y){p=p|0,y=y|0;var w=0;Md(p|0,y|0,948)|0,fw(p+948|0,y+948|0),w=p+960|0,p=y+960|0,y=w+40|0;do o[w>>2]=o[p>>2],w=w+4|0,p=p+4|0;while((w|0)<(y|0))}function ls(p){p=p|0;var y=0,w=0,G=0,J=0;if(y=p+944|0,w=o[y>>2]|0,w|0&&(oa(w+948|0,p)|0,o[y>>2]=0),w=Fs(p)|0,w|0){y=0;do o[(Wa(p,y)|0)+944>>2]=0,y=y+1|0;while((y|0)!=(w|0))}w=p+948|0,G=o[w>>2]|0,J=p+952|0,y=o[J>>2]|0,(y|0)!=(G|0)&&(o[J>>2]=y+(~((y+-4-G|0)>>>2)<<2)),Ca(w),qne(p),o[2276]=(o[2276]|0)+-1}function oa(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0;G=o[p>>2]|0,Ge=p+4|0,w=o[Ge>>2]|0,U=w;e:do if((G|0)==(w|0))J=G,le=4;else for(p=G;;){if((o[p>>2]|0)==(y|0)){J=p,le=4;break e}if(p=p+4|0,(p|0)==(w|0)){p=0;break}}while(!1);return(le|0)==4&&((J|0)!=(w|0)?(G=J+4|0,p=U-G|0,y=p>>2,y&&(JT(J|0,G|0,p|0)|0,w=o[Ge>>2]|0),p=J+(y<<2)|0,(w|0)==(p|0)||(o[Ge>>2]=w+(~((w+-4-p|0)>>>2)<<2)),p=1):p=0),p|0}function Fs(p){return p=p|0,(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2|0}function Wa(p,y){p=p|0,y=y|0;var w=0;return w=o[p+948>>2]|0,(o[p+952>>2]|0)-w>>2>>>0>y>>>0?p=o[w+(y<<2)>>2]|0:p=0,p|0}function Ca(p){p=p|0;var y=0,w=0,G=0,J=0;G=B,B=B+32|0,y=G,J=o[p>>2]|0,w=(o[p+4>>2]|0)-J|0,((o[p+8>>2]|0)-J|0)>>>0>w>>>0&&(J=w>>2,pn(y,J,J,p+8|0),q1(p,y),J2(y)),B=G}function ld(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;bt=Fs(p)|0;do if(bt|0){if((o[(Wa(p,0)|0)+944>>2]|0)==(p|0)){if(!(oa(p+948|0,y)|0))break;Md(y+400|0,8504,540)|0,o[y+944>>2]=0,di(p);break}le=o[(o[p+976>>2]|0)+12>>2]|0,Ge=p+948|0,Xe=(le|0)==0,w=0,U=0;do G=o[(o[Ge>>2]|0)+(U<<2)>>2]|0,(G|0)==(y|0)?di(p):(J=Zt(G)|0,o[(o[Ge>>2]|0)+(w<<2)>>2]=J,o[J+944>>2]=p,Xe||Ir[le&15](G,J,p,w),w=w+1|0),U=U+1|0;while((U|0)!=(bt|0));if(w>>>0>>0){Xe=p+948|0,Ge=p+952|0,le=w,w=o[Ge>>2]|0;do U=(o[Xe>>2]|0)+(le<<2)|0,G=U+4|0,J=w-G|0,y=J>>2,y&&(JT(U|0,G|0,J|0)|0,w=o[Ge>>2]|0),J=w,G=U+(y<<2)|0,(J|0)!=(G|0)&&(w=J+(~((J+-4-G|0)>>>2)<<2)|0,o[Ge>>2]=w),le=le+1|0;while((le|0)!=(bt|0))}}while(!1)}function Rp(p){p=p|0;var y=0,w=0,G=0,J=0;np(p,(Fs(p)|0)==0,2491),np(p,(o[p+944>>2]|0)==0,2545),y=p+948|0,w=o[y>>2]|0,G=p+952|0,J=o[G>>2]|0,(J|0)!=(w|0)&&(o[G>>2]=J+(~((J+-4-w|0)>>>2)<<2)),Ca(y),y=p+976|0,w=o[y>>2]|0,Md(p|0,8104,1e3)|0,n[w+2>>0]|0&&(o[p+4>>2]=2,o[p+12>>2]=4),o[y>>2]=w}function np(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;J=B,B=B+16|0,G=J,y||(o[G>>2]=w,fd(p,5,3197,G)),B=J}function HA(){return o[2276]|0}function df(){var p=0;return p=zne(20)|0,Zs((p|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[p>>2]=o[239],o[p+4>>2]=o[240],o[p+8>>2]=o[241],o[p+12>>2]=o[242],o[p+16>>2]=o[243],p|0}function Zs(p,y){p=p|0,y=y|0;var w=0,G=0;G=B,B=B+16|0,w=G,p||(o[w>>2]=y,fd(0,5,3197,w)),B=G}function so(p){p=p|0,qne(p),o[2277]=(o[2277]|0)+-1}function Ea(p,y){p=p|0,y=y|0;var w=0;y?(np(p,(Fs(p)|0)==0,2629),w=1):(w=0,y=0),o[p+964>>2]=y,o[p+988>>2]=w}function Ml(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,U=G+8|0,J=G+4|0,le=G,o[J>>2]=y,np(p,(o[y+944>>2]|0)==0,2709),np(p,(o[p+964>>2]|0)==0,2763),Dr(p),y=p+948|0,o[le>>2]=(o[y>>2]|0)+(w<<2),o[U>>2]=o[le>>2],Wn(y,U,J)|0,o[(o[J>>2]|0)+944>>2]=p,di(p),B=G}function Dr(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;if(w=Fs(p)|0,w|0&&(o[(Wa(p,0)|0)+944>>2]|0)!=(p|0)){G=o[(o[p+976>>2]|0)+12>>2]|0,J=p+948|0,U=(G|0)==0,y=0;do le=o[(o[J>>2]|0)+(y<<2)>>2]|0,Ge=Zt(le)|0,o[(o[J>>2]|0)+(y<<2)>>2]=Ge,o[Ge+944>>2]=p,U||Ir[G&15](le,Ge,p,y),y=y+1|0;while((y|0)!=(w|0))}}function Wn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0;Ds=B,B=B+64|0,rr=Ds+52|0,Ge=Ds+48|0,an=Ds+28|0,Ks=Ds+24|0,zi=Ds+20|0,Un=Ds,G=o[p>>2]|0,U=G,y=G+((o[y>>2]|0)-U>>2<<2)|0,G=p+4|0,J=o[G>>2]|0,le=p+8|0;do if(J>>>0<(o[le>>2]|0)>>>0){if((y|0)==(J|0)){o[y>>2]=o[w>>2],o[G>>2]=(o[G>>2]|0)+4;break}ey(p,y,J,y+4|0),y>>>0<=w>>>0&&(w=(o[G>>2]|0)>>>0>w>>>0?w+4|0:w),o[y>>2]=o[w>>2]}else{G=(J-U>>2)+1|0,J=ut(p)|0,J>>>0>>0&&me(p),It=o[p>>2]|0,bt=(o[le>>2]|0)-It|0,U=bt>>1,pn(Un,bt>>2>>>0>>1>>>0?U>>>0>>0?G:U:J,y-It>>2,p+8|0),It=Un+8|0,G=o[It>>2]|0,U=Un+12|0,bt=o[U>>2]|0,le=bt,Xe=G;do if((G|0)==(bt|0)){if(bt=Un+4|0,G=o[bt>>2]|0,Si=o[Un>>2]|0,J=Si,G>>>0<=Si>>>0){G=le-J>>1,G=G|0?G:1,pn(an,G,G>>>2,o[Un+16>>2]|0),o[Ks>>2]=o[bt>>2],o[zi>>2]=o[It>>2],o[Ge>>2]=o[Ks>>2],o[rr>>2]=o[zi>>2],Iw(an,Ge,rr),G=o[Un>>2]|0,o[Un>>2]=o[an>>2],o[an>>2]=G,G=an+4|0,Si=o[bt>>2]|0,o[bt>>2]=o[G>>2],o[G>>2]=Si,G=an+8|0,Si=o[It>>2]|0,o[It>>2]=o[G>>2],o[G>>2]=Si,G=an+12|0,Si=o[U>>2]|0,o[U>>2]=o[G>>2],o[G>>2]=Si,J2(an),G=o[It>>2]|0;break}U=G,le=((U-J>>2)+1|0)/-2|0,Ge=G+(le<<2)|0,J=Xe-U|0,U=J>>2,U&&(JT(Ge|0,G|0,J|0)|0,G=o[bt>>2]|0),Si=Ge+(U<<2)|0,o[It>>2]=Si,o[bt>>2]=G+(le<<2),G=Si}while(!1);o[G>>2]=o[w>>2],o[It>>2]=(o[It>>2]|0)+4,y=up(p,Un,y)|0,J2(Un)}while(!1);return B=Ds,y|0}function di(p){p=p|0;var y=0;do{if(y=p+984|0,n[y>>0]|0)break;n[y>>0]=1,I[p+504>>2]=ke(ue),p=o[p+944>>2]|0}while(p|0)}function aa(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function Bo(p){return p=p|0,o[p+944>>2]|0}function us(p){p=p|0,np(p,(o[p+964>>2]|0)!=0,2832),di(p)}function Ql(p){return p=p|0,(n[p+984>>0]|0)!=0|0}function LA(p,y){p=p|0,y=y|0,DLe(p,y,400)|0&&(Md(p|0,y|0,400)|0,di(p))}function pf(p){p=p|0;var y=As;return y=ke(I[p+44>>2]),p=El(y)|0,ke(p?ke(0):y)}function ef(p){p=p|0;var y=As;return y=ke(I[p+48>>2]),El(y)|0&&(y=n[(o[p+976>>2]|0)+2>>0]|0?ke(1):ke(0)),ke(y)}function ip(p,y){p=p|0,y=y|0,o[p+980>>2]=y}function _d(p){return p=p|0,o[p+980>>2]|0}function j1(p,y){p=p|0,y=y|0;var w=0;w=p+4|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function pw(p){return p=p|0,o[p+4>>2]|0}function YA(p,y){p=p|0,y=y|0;var w=0;w=p+8|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Ac(p){return p=p|0,o[p+8>>2]|0}function Nm(p,y){p=p|0,y=y|0;var w=0;w=p+12|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function HS(p){return p=p|0,o[p+12>>2]|0}function jd(p,y){p=p|0,y=y|0;var w=0;w=p+16|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function dh(p){return p=p|0,o[p+16>>2]|0}function Hp(p,y){p=p|0,y=y|0;var w=0;w=p+20|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function uC(p){return p=p|0,o[p+20>>2]|0}function nE(p,y){p=p|0,y=y|0;var w=0;w=p+24|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function J_(p){return p=p|0,o[p+24>>2]|0}function q0(p,y){p=p|0,y=y|0;var w=0;w=p+28|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function XE(p){return p=p|0,o[p+28>>2]|0}function TC(p,y){p=p|0,y=y|0;var w=0;w=p+32|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function t_(p){return p=p|0,o[p+32>>2]|0}function cp(p,y){p=p|0,y=y|0;var w=0;w=p+36|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Mm(p){return p=p|0,o[p+36>>2]|0}function fb(p,y){p=p|0,y=ke(y);var w=0;w=p+40|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function pe(p,y){p=p|0,y=ke(y);var w=0;w=p+44|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function lm(p,y){p=p|0,y=ke(y);var w=0;w=p+48|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function Kf(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+52|0,J=p+56|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function CI(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+52|0,w=p+56|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function _I(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+52|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function H2(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function iE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function se(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+132+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function O(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function K(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function we(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+60+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function gt(p,y){p=p|0,y=y|0;var w=0;w=p+60+(y<<3)+4|0,(o[w>>2]|0)!=3&&(I[p+60+(y<<3)>>2]=ke(ue),o[w>>2]=3,di(p))}function sr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function Yr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function Lr(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+204+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function fi(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+276+(y<<3)|0,y=p+276+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function $n(p,y){return p=p|0,y=y|0,ke(I[p+276+(y<<3)>>2])}function ra(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+348|0,J=p+352|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function kc(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+348|0,w=p+352|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function Nl(p){p=p|0;var y=0;y=p+352|0,(o[y>>2]|0)!=3&&(I[p+348>>2]=ke(ue),o[y>>2]=3,di(p))}function ca(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+348|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Bl(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+356|0,J=p+360|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function $g(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+356|0,w=p+360|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function SA(p){p=p|0;var y=0;y=p+360|0,(o[y>>2]|0)!=3&&(I[p+356>>2]=ke(ue),o[y>>2]=3,di(p))}function lI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+356|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function lp(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+364|0,J=p+368|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Ib(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+364|0,J=p+368|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Na(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+364|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function wd(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+372|0,J=p+376|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function z1(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+372|0,J=p+376|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function T_(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+372|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function RC(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+380|0,J=p+384|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Hm(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+380|0,J=p+384|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function YS(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+380|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Fg(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+388|0,J=p+392|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function hb(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+388|0,J=p+392|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function gC(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+388|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function NC(p,y){p=p|0,y=ke(y);var w=0;w=p+396|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function Y2(p){return p=p|0,ke(I[p+396>>2])}function U_(p){return p=p|0,ke(I[p+400>>2])}function DC(p){return p=p|0,ke(I[p+404>>2])}function kC(p){return p=p|0,ke(I[p+408>>2])}function qI(p){return p=p|0,ke(I[p+412>>2])}function ph(p){return p=p|0,ke(I[p+416>>2])}function vA(p){return p=p|0,ke(I[p+420>>2])}function Td(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+424+(y<<2)>>2])}function Mc(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+448+(y<<2)>>2])}function Pf(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+472+(y<<2)>>2])}function sE(p,y){p=p|0,y=y|0;var w=0,G=As;return w=o[p+4>>2]|0,(w|0)==(o[y+4>>2]|0)?w?(G=ke(I[p>>2]),p=ke(je(ke(G-ke(I[y>>2]))))>2]=0,o[G+4>>2]=0,o[G+8>>2]=0,Qh(G|0,p|0,y|0,0),fd(p,3,(n[G+11>>0]|0)<0?o[G>>2]|0:G,w),Gw(G),B=w}function um(p,y,w,G){p=ke(p),y=ke(y),w=w|0,G=G|0;var J=As;p=ke(p*y),J=ke(Az(p,ke(1)));do if(eA(J,ke(0))|0)p=ke(p-J);else{if(p=ke(p-J),eA(J,ke(1))|0){p=ke(p+ke(1));break}if(w){p=ke(p+ke(1));break}G||(J>ke(.5)?J=ke(1):(G=eA(J,ke(.5))|0,J=ke(G?1:0)),p=ke(p+J))}while(!1);return ke(p/y)}function gm(p,y,w,G,J,U,le,Ge,Xe,bt,It,rr,an){p=p|0,y=ke(y),w=w|0,G=ke(G),J=J|0,U=ke(U),le=le|0,Ge=ke(Ge),Xe=ke(Xe),bt=ke(bt),It=ke(It),rr=ke(rr),an=an|0;var Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As;return Xe>2]),zi!=ke(0))?(Ds=ke(um(y,zi,0,0)),Si=ke(um(G,zi,0,0)),Un=ke(um(U,zi,0,0)),zi=ke(um(Ge,zi,0,0))):(Un=U,Ds=y,zi=Ge,Si=G),(J|0)==(p|0)?Ks=eA(Un,Ds)|0:Ks=0,(le|0)==(w|0)?an=eA(zi,Si)|0:an=0,!Ks&&(So=ke(y-It),!(cs(p,So,Xe)|0))&&!(na(p,So,J,Xe)|0)?Ks=ko(p,So,J,U,Xe)|0:Ks=1,!an&&(ss=ke(G-rr),!(cs(w,ss,bt)|0))&&!(na(w,ss,le,bt)|0)?an=ko(w,ss,le,Ge,bt)|0:an=1,an=Ks&an),an|0}function cs(p,y,w){return p=p|0,y=ke(y),w=ke(w),(p|0)==1?p=eA(y,w)|0:p=0,p|0}function na(p,y,w,G){return p=p|0,y=ke(y),w=w|0,G=ke(G),(p|0)==2&(w|0)==0?y>=G?p=1:p=eA(y,G)|0:p=0,p|0}function ko(p,y,w,G,J){return p=p|0,y=ke(y),w=w|0,G=ke(G),J=ke(J),(p|0)==2&(w|0)==2&G>y?J<=y?p=1:p=eA(y,J)|0:p=0,p|0}function ki(p,y,w,G,J,U,le,Ge,Xe,bt,It){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,bt=bt|0,It=It|0;var rr=0,an=0,Ks=0,zi=0,Un=As,Ds=As,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=As,w0=As,bE=As,nh=0,x_=0;wg=B,B=B+160|0,Tc=wg+152|0,fl=wg+120|0,uu=wg+104|0,ss=wg+72|0,zi=wg+56|0,hl=wg+8|0,So=wg,pi=(o[2279]|0)+1|0,o[2279]=pi,Bg=p+984|0,n[Bg>>0]|0&&(o[p+512>>2]|0)!=(o[2278]|0)?Si=4:(o[p+516>>2]|0)==(G|0)?Dg=0:Si=4,(Si|0)==4&&(o[p+520>>2]=0,o[p+924>>2]=-1,o[p+928>>2]=-1,I[p+932>>2]=ke(-1),I[p+936>>2]=ke(-1),Dg=1);e:do if(o[p+964>>2]|0)if(Un=ke(Kl(p,2,le)),Ds=ke(Kl(p,0,le)),rr=p+916|0,bE=ke(I[rr>>2]),w0=ke(I[p+920>>2]),em=ke(I[p+932>>2]),gm(J,y,U,w,o[p+924>>2]|0,bE,o[p+928>>2]|0,w0,em,ke(I[p+936>>2]),Un,Ds,It)|0)Si=22;else if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,em=ke(I[rr>>2]),w0=ke(I[p+524+(an*24|0)+4>>2]),bE=ke(I[p+524+(an*24|0)+16>>2]),gm(J,y,U,w,o[p+524+(an*24|0)+8>>2]|0,em,o[p+524+(an*24|0)+12>>2]|0,w0,bE,ke(I[p+524+(an*24|0)+20>>2]),Un,Ds,It)|0){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}else{if(Xe){if(rr=p+916|0,!(eA(ke(I[rr>>2]),y)|0)){Si=21;break}if(!(eA(ke(I[p+920>>2]),w)|0)){Si=21;break}if((o[p+924>>2]|0)!=(J|0)){Si=21;break}rr=(o[p+928>>2]|0)==(U|0)?rr:0,Si=22;break}if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,eA(ke(I[rr>>2]),y)|0&&eA(ke(I[p+524+(an*24|0)+4>>2]),w)|0&&(o[p+524+(an*24|0)+8>>2]|0)==(J|0)&&(o[p+524+(an*24|0)+12>>2]|0)==(U|0)){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}}while(!1);do if((Si|0)==21)n[11697]|0?(rr=0,Si=28):(rr=0,Si=31);else if((Si|0)==22){if(an=(n[11697]|0)!=0,!((rr|0)!=0&(Dg^1)))if(an){Si=28;break}else{Si=31;break}zi=rr+16|0,o[p+908>>2]=o[zi>>2],Ks=rr+20|0,o[p+912>>2]=o[Ks>>2],(n[11698]|0)==0|an^1||(o[So>>2]=jf(pi)|0,o[So+4>>2]=pi,fd(p,4,2972,So),an=o[p+972>>2]|0,an|0&&DF[an&127](p),J=Ld(J,Xe)|0,U=Ld(U,Xe)|0,x_=+ke(I[zi>>2]),nh=+ke(I[Ks>>2]),o[hl>>2]=J,o[hl+4>>2]=U,C[hl+8>>3]=+y,C[hl+16>>3]=+w,C[hl+24>>3]=x_,C[hl+32>>3]=nh,o[hl+40>>2]=bt,fd(p,4,2989,hl))}while(!1);return(Si|0)==28&&(an=jf(pi)|0,o[zi>>2]=an,o[zi+4>>2]=pi,o[zi+8>>2]=Dg?3047:11699,fd(p,4,3038,zi),an=o[p+972>>2]|0,an|0&&DF[an&127](p),hl=Ld(J,Xe)|0,Si=Ld(U,Xe)|0,o[ss>>2]=hl,o[ss+4>>2]=Si,C[ss+8>>3]=+y,C[ss+16>>3]=+w,o[ss+24>>2]=bt,fd(p,4,3049,ss),Si=31),(Si|0)==31&&(AC(p,y,w,G,J,U,le,Ge,Xe,It),n[11697]|0&&(an=o[2279]|0,hl=jf(an)|0,o[uu>>2]=hl,o[uu+4>>2]=an,o[uu+8>>2]=Dg?3047:11699,fd(p,4,3083,uu),an=o[p+972>>2]|0,an|0&&DF[an&127](p),hl=Ld(J,Xe)|0,uu=Ld(U,Xe)|0,nh=+ke(I[p+908>>2]),x_=+ke(I[p+912>>2]),o[fl>>2]=hl,o[fl+4>>2]=uu,C[fl+8>>3]=nh,C[fl+16>>3]=x_,o[fl+24>>2]=bt,fd(p,4,3092,fl)),o[p+516>>2]=G,rr||(an=p+520|0,rr=o[an>>2]|0,(rr|0)==16&&(n[11697]|0&&fd(p,4,3124,Tc),o[an>>2]=0,rr=0),Xe?rr=p+916|0:(o[an>>2]=rr+1,rr=p+524+(rr*24|0)|0),I[rr>>2]=y,I[rr+4>>2]=w,o[rr+8>>2]=J,o[rr+12>>2]=U,o[rr+16>>2]=o[p+908>>2],o[rr+20>>2]=o[p+912>>2],rr=0)),Xe&&(o[p+416>>2]=o[p+908>>2],o[p+420>>2]=o[p+912>>2],n[p+985>>0]=1,n[Bg>>0]=0),o[2279]=(o[2279]|0)+-1,o[p+512>>2]=o[2278],B=wg,Dg|(rr|0)==0|0}function Kl(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(ar(p,y,w)),ke(G+ke(Jr(p,y,w)))}function fd(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=B,B=B+16|0,J=U,o[J>>2]=G,p?G=o[p+976>>2]|0:G=0,By(G,p,y,w,J),B=U}function jf(p){return p=p|0,(p>>>0>60?3201:3201+(60-p)|0)|0}function Ld(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+32|0,w=J+12|0,G=J,o[w>>2]=o[254],o[w+4>>2]=o[255],o[w+8>>2]=o[256],o[G>>2]=o[257],o[G+4>>2]=o[258],o[G+8>>2]=o[259],(p|0)>2?p=11699:p=o[(y?G:w)+(p<<2)>>2]|0,B=J,p|0}function AC(p,y,w,G,J,U,le,Ge,Xe,bt){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,bt=bt|0;var It=0,rr=0,an=0,Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As,pi=As,hl=0,uu=0,fl=0,Tc=As,Bg=As,Dg=0,wg=As,em=0,w0=0,bE=0,nh=0,x_=0,$D=0,Fw=0,mh=0,kF=0,Zw=0,KT=0,jL=0,zL=0,aS=0,mf=0,d2=0,jT=0,fv=0,Fx=As,xB=As,Iv=As,GB=As,EE=As,Um=0,mN=0,zT=0,Km=0,p2=0,hg=As,OI=As,og=As,jo=As,Yg=As,Zl=As,f2=0,MI=As,xF=As,gI=As,UA=As,lA=As,GF=As,CN=0,qT=0,I1=As,T0=As,ek=0,fo=0,Lw=0,FF=0,Hd=As,of=0,vd=0,yp=0,l_=0,Yd=0,Qg=0,hv=0,Du=As,F3=0,ly=0;hv=B,B=B+16|0,Um=hv+12|0,mN=hv+8|0,zT=hv+4|0,Km=hv,np(p,(J|0)==0|(El(y)|0)^1,3326),np(p,(U|0)==0|(El(w)|0)^1,3406),vd=Qo(p,G)|0,o[p+496>>2]=vd,Yd=vg(2,vd)|0,Qg=vg(0,vd)|0,I[p+440>>2]=ke(ar(p,Yd,le)),I[p+444>>2]=ke(Jr(p,Yd,le)),I[p+428>>2]=ke(ar(p,Qg,le)),I[p+436>>2]=ke(Jr(p,Qg,le)),I[p+464>>2]=ke(Ng(p,Yd)),I[p+468>>2]=ke(Rf(p,Yd)),I[p+452>>2]=ke(Ng(p,Qg)),I[p+460>>2]=ke(Rf(p,Qg)),I[p+488>>2]=ke(uI(p,Yd,le)),I[p+492>>2]=ke(Th(p,Yd,le)),I[p+476>>2]=ke(uI(p,Qg,le)),I[p+484>>2]=ke(Th(p,Qg,le));do if(o[p+964>>2]|0)oE(p,y,w,J,U,le,Ge);else{if(yp=p+948|0,l_=(o[p+952>>2]|0)-(o[yp>>2]|0)>>2,!l_){TT(p,y,w,J,U,le,Ge);break}if(!Xe&&sB(p,y,w,J,U,le,Ge)|0)break;Dr(p),d2=p+508|0,n[d2>>0]=0,Yd=vg(o[p+4>>2]|0,vd)|0,Qg=RT(Yd,vd)|0,of=Gn(Yd)|0,jT=o[p+8>>2]|0,fo=p+28|0,fv=(o[fo>>2]|0)!=0,lA=of?le:Ge,I1=of?Ge:le,Fx=ke(wy(p,Yd,le)),xB=ke(jE(p,Yd,le)),zi=ke(wy(p,Qg,le)),GF=ke(j_(p,Yd,le)),T0=ke(j_(p,Qg,le)),fl=of?J:U,ek=of?U:J,Hd=of?GF:T0,So=of?T0:GF,UA=ke(Kl(p,2,le)),Si=ke(Kl(p,0,le)),Un=ke(ke(od(p+364|0,le))-Hd),Ds=ke(ke(od(p+380|0,le))-Hd),ss=ke(ke(od(p+372|0,Ge))-So),pi=ke(ke(od(p+388|0,Ge))-So),Iv=of?Un:ss,GB=of?Ds:pi,UA=ke(y-UA),y=ke(UA-Hd),El(y)|0?Hd=y:Hd=ke(zs(ke(fU(y,Ds)),Un)),xF=ke(w-Si),y=ke(xF-So),El(y)|0?gI=y:gI=ke(zs(ke(fU(y,pi)),ss)),Un=of?Hd:gI,MI=of?gI:Hd;e:do if((fl|0)==1)for(G=0,rr=0;;){if(It=Wa(p,rr)|0,!G)ke(tf(It))>ke(0)&&ke(Ty(It))>ke(0)?G=It:G=0;else if(NT(It)|0){Ks=0;break e}if(rr=rr+1|0,rr>>>0>=l_>>>0){Ks=G;break}}else Ks=0;while(!1);hl=Ks+500|0,uu=Ks+504|0,G=0,It=0,y=ke(0),an=0;do{if(rr=o[(o[yp>>2]|0)+(an<<2)>>2]|0,(o[rr+36>>2]|0)==1)US(rr),n[rr+985>>0]=1,n[rr+984>>0]=0;else{vy(rr),Xe&&UE(rr,Qo(rr,vd)|0,Un,MI,Hd);do if((o[rr+24>>2]|0)!=1)if((rr|0)==(Ks|0)){o[hl>>2]=o[2278],I[uu>>2]=ke(0);break}else{$I(p,rr,Hd,J,gI,Hd,gI,U,vd,bt);break}else It|0&&(o[It+960>>2]=rr),o[rr+960>>2]=0,It=rr,G=G|0?G:rr;while(!1);Zl=ke(I[rr+504>>2]),y=ke(y+ke(Zl+ke(Kl(rr,Yd,Hd))))}an=an+1|0}while((an|0)!=(l_|0));for(bE=y>Un,f2=fv&((fl|0)==2&bE)?1:fl,em=(ek|0)==1,x_=em&(Xe^1),$D=(f2|0)==1,Fw=(f2|0)==2,mh=976+(Yd<<2)|0,kF=(ek|2|0)==2,aS=em&(fv^1),Zw=1040+(Qg<<2)|0,KT=1040+(Yd<<2)|0,jL=976+(Qg<<2)|0,zL=(ek|0)!=1,bE=fv&((fl|0)!=0&bE),w0=p+976|0,em=em^1,y=Un,Dg=0,nh=0,Zl=ke(0),EE=ke(0);;){e:do if(Dg>>>0>>0)for(uu=o[yp>>2]|0,an=0,pi=ke(0),ss=ke(0),Ds=ke(0),Un=ke(0),rr=0,It=0,Ks=Dg;;){if(hl=o[uu+(Ks<<2)>>2]|0,(o[hl+36>>2]|0)!=1&&(o[hl+940>>2]=nh,(o[hl+24>>2]|0)!=1)){if(Si=ke(Kl(hl,Yd,Hd)),mf=o[mh>>2]|0,w=ke(od(hl+380+(mf<<3)|0,lA)),So=ke(I[hl+504>>2]),w=ke(fU(w,So)),w=ke(zs(ke(od(hl+364+(mf<<3)|0,lA)),w)),fv&(an|0)!=0&ke(Si+ke(ss+w))>y){U=an,Si=pi,fl=Ks;break e}Si=ke(Si+w),w=ke(ss+Si),Si=ke(pi+Si),NT(hl)|0&&(Ds=ke(Ds+ke(tf(hl))),Un=ke(Un-ke(So*ke(Ty(hl))))),It|0&&(o[It+960>>2]=hl),o[hl+960>>2]=0,an=an+1|0,It=hl,rr=rr|0?rr:hl}else Si=pi,w=ss;if(Ks=Ks+1|0,Ks>>>0>>0)pi=Si,ss=w;else{U=an,fl=Ks;break}}else U=0,Si=ke(0),Ds=ke(0),Un=ke(0),rr=0,fl=Dg;while(!1);mf=Ds>ke(0)&Dske(0)&UnGB&((El(GB)|0)^1))y=GB,mf=51;else if(n[(o[w0>>2]|0)+3>>0]|0)mf=51;else{if(Tc!=ke(0)&&ke(tf(p))!=ke(0)){mf=53;break}y=Si,mf=53}while(!1);if((mf|0)==51&&(mf=0,El(y)|0?mf=53:(Bg=ke(y-Si),wg=y)),(mf|0)==53&&(mf=0,Si>2]|0,Ks=Bgke(0),ss=ke(Bg/Tc),Ds=ke(0),Si=ke(0),y=ke(0),It=rr;do w=ke(od(It+380+(an<<3)|0,lA)),Un=ke(od(It+364+(an<<3)|0,lA)),Un=ke(fU(w,ke(zs(Un,ke(I[It+504>>2]))))),Ks?(w=ke(Un*ke(Ty(It))),w!=ke(-0)&&(Du=ke(Un-ke(So*w)),hg=ke(BA(It,Yd,Du,wg,Hd)),Du!=hg)&&(Ds=ke(Ds-ke(hg-Un)),y=ke(y+w))):hl&&(OI=ke(tf(It)),OI!=ke(0))&&(Du=ke(Un+ke(ss*OI)),og=ke(BA(It,Yd,Du,wg,Hd)),Du!=og)&&(Ds=ke(Ds-ke(og-Un)),Si=ke(Si-OI)),It=o[It+960>>2]|0;while(It|0);if(y=ke(pi+y),Un=ke(Bg+Ds),p2)y=ke(0);else{So=ke(Tc+Si),Ks=o[mh>>2]|0,hl=Unke(0),So=ke(Un/So),y=ke(0);do{Du=ke(od(rr+380+(Ks<<3)|0,lA)),Ds=ke(od(rr+364+(Ks<<3)|0,lA)),Ds=ke(fU(Du,ke(zs(Ds,ke(I[rr+504>>2]))))),hl?(Du=ke(Ds*ke(Ty(rr))),Un=ke(-Du),Du!=ke(-0)?(Du=ke(ss*Un),Un=ke(BA(rr,Yd,ke(Ds+(uu?Un:Du)),wg,Hd))):Un=Ds):an&&(jo=ke(tf(rr)),jo!=ke(0))?Un=ke(BA(rr,Yd,ke(Ds+ke(So*jo)),wg,Hd)):Un=Ds,y=ke(y-ke(Un-Ds)),Si=ke(Kl(rr,Yd,Hd)),w=ke(Kl(rr,Qg,Hd)),Un=ke(Un+Si),I[mN>>2]=Un,o[Km>>2]=1,Ds=ke(I[rr+396>>2]);e:do if(El(Ds)|0){It=El(MI)|0;do if(!It){if(bE|(K_(rr,Qg,MI)|0|em)||($A(p,rr)|0)!=4||(o[(Qm(rr,Qg)|0)+4>>2]|0)==3||(o[(zf(rr,Qg)|0)+4>>2]|0)==3)break;I[Um>>2]=MI,o[zT>>2]=1;break e}while(!1);if(K_(rr,Qg,MI)|0){It=o[rr+992+(o[jL>>2]<<2)>>2]|0,Du=ke(w+ke(od(It,MI))),I[Um>>2]=Du,It=zL&(o[It+4>>2]|0)==2,o[zT>>2]=((El(Du)|0|It)^1)&1;break}else{I[Um>>2]=MI,o[zT>>2]=It?0:2;break}}else Du=ke(Un-Si),Tc=ke(Du/Ds),Du=ke(Ds*Du),o[zT>>2]=1,I[Um>>2]=ke(w+(of?Tc:Du));while(!1);mb(rr,Yd,wg,Hd,Km,mN),mb(rr,Qg,MI,Hd,zT,Um);do if(!(K_(rr,Qg,MI)|0)&&($A(p,rr)|0)==4){if((o[(Qm(rr,Qg)|0)+4>>2]|0)==3){It=0;break}It=(o[(zf(rr,Qg)|0)+4>>2]|0)!=3}else It=0;while(!1);Du=ke(I[mN>>2]),Tc=ke(I[Um>>2]),F3=o[Km>>2]|0,ly=o[zT>>2]|0,ki(rr,of?Du:Tc,of?Tc:Du,vd,of?F3:ly,of?ly:F3,Hd,gI,Xe&(It^1),3488,bt)|0,n[d2>>0]=n[d2>>0]|n[rr+508>>0],rr=o[rr+960>>2]|0}while(rr|0)}}else y=ke(0);if(y=ke(Bg+y),ly=y>0]=ly|l[d2>>0],Fw&y>ke(0)?(It=o[mh>>2]|0,o[p+364+(It<<3)+4>>2]|0&&(Yg=ke(od(p+364+(It<<3)|0,lA)),Yg>=ke(0))?Un=ke(zs(ke(0),ke(Yg-ke(wg-y)))):Un=ke(0)):Un=y,hl=Dg>>>0>>0,hl){Ks=o[yp>>2]|0,an=Dg,It=0;do rr=o[Ks+(an<<2)>>2]|0,o[rr+24>>2]|0||(It=((o[(Qm(rr,Yd)|0)+4>>2]|0)==3&1)+It|0,It=It+((o[(zf(rr,Yd)|0)+4>>2]|0)==3&1)|0),an=an+1|0;while((an|0)!=(fl|0));It?(Si=ke(0),w=ke(0)):mf=101}else mf=101;e:do if((mf|0)==101)switch(mf=0,jT|0){case 1:{It=0,Si=ke(Un*ke(.5)),w=ke(0);break e}case 2:{It=0,Si=Un,w=ke(0);break e}case 3:{if(U>>>0<=1){It=0,Si=ke(0),w=ke(0);break e}w=ke((U+-1|0)>>>0),It=0,Si=ke(0),w=ke(ke(zs(Un,ke(0)))/w);break e}case 5:{w=ke(Un/ke((U+1|0)>>>0)),It=0,Si=w;break e}case 4:{w=ke(Un/ke(U>>>0)),It=0,Si=ke(w*ke(.5));break e}default:{It=0,Si=ke(0),w=ke(0);break e}}while(!1);if(y=ke(Fx+Si),hl){Ds=ke(Un/ke(It|0)),an=o[yp>>2]|0,rr=Dg,Un=ke(0);do{It=o[an+(rr<<2)>>2]|0;e:do if((o[It+36>>2]|0)!=1){switch(o[It+24>>2]|0){case 1:{if(R_(It,Yd)|0){if(!Xe)break e;Du=ke(Cb(It,Yd,wg)),Du=ke(Du+ke(Ng(p,Yd))),Du=ke(Du+ke(ar(It,Yd,Hd))),I[It+400+(o[KT>>2]<<2)>>2]=Du;break e}break}case 0:if(ly=(o[(Qm(It,Yd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=ly?Du:y,Xe&&(ly=It+400+(o[KT>>2]<<2)|0,I[ly>>2]=ke(y+ke(I[ly>>2]))),ly=(o[(zf(It,Yd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=ly?Du:y,x_){Du=ke(w+ke(Kl(It,Yd,Hd))),Un=MI,y=ke(y+ke(Du+ke(I[It+504>>2])));break e}else{y=ke(y+ke(w+ke(Ry(It,Yd,Hd)))),Un=ke(zs(Un,ke(Ry(It,Qg,Hd))));break e}default:}Xe&&(Du=ke(Si+ke(Ng(p,Yd))),ly=It+400+(o[KT>>2]<<2)|0,I[ly>>2]=ke(Du+ke(I[ly>>2])))}while(!1);rr=rr+1|0}while((rr|0)!=(fl|0))}else Un=ke(0);if(w=ke(xB+y),kF?Si=ke(ke(BA(p,Qg,ke(T0+Un),I1,le))-T0):Si=MI,Ds=ke(ke(BA(p,Qg,ke(T0+(aS?MI:Un)),I1,le))-T0),hl&Xe){rr=Dg;do{an=o[(o[yp>>2]|0)+(rr<<2)>>2]|0;do if((o[an+36>>2]|0)!=1){if((o[an+24>>2]|0)==1){if(R_(an,Qg)|0){if(Du=ke(Cb(an,Qg,MI)),Du=ke(Du+ke(Ng(p,Qg))),Du=ke(Du+ke(ar(an,Qg,Hd))),It=o[Zw>>2]|0,I[an+400+(It<<2)>>2]=Du,!(El(Du)|0))break}else It=o[Zw>>2]|0;Du=ke(Ng(p,Qg)),I[an+400+(It<<2)>>2]=ke(Du+ke(ar(an,Qg,Hd)));break}It=$A(p,an)|0;do if((It|0)==4){if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){mf=139;break}if((o[(zf(an,Qg)|0)+4>>2]|0)==3){mf=139;break}if(K_(an,Qg,MI)|0){y=zi;break}F3=o[an+908+(o[mh>>2]<<2)>>2]|0,o[Um>>2]=F3,y=ke(I[an+396>>2]),ly=El(y)|0,Un=(o[E>>2]=F3,ke(I[E>>2])),ly?y=Ds:(Bg=ke(Kl(an,Qg,Hd)),Du=ke(Un/y),y=ke(y*Un),y=ke(Bg+(of?Du:y))),I[mN>>2]=y,I[Um>>2]=ke(ke(Kl(an,Yd,Hd))+Un),o[zT>>2]=1,o[Km>>2]=1,mb(an,Yd,wg,Hd,zT,Um),mb(an,Qg,MI,Hd,Km,mN),y=ke(I[Um>>2]),Bg=ke(I[mN>>2]),Du=of?y:Bg,y=of?Bg:y,ly=((El(Du)|0)^1)&1,ki(an,Du,y,vd,ly,((El(y)|0)^1)&1,Hd,gI,1,3493,bt)|0,y=zi}else mf=139;while(!1);e:do if((mf|0)==139){mf=0,y=ke(Si-ke(Ry(an,Qg,Hd)));do if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){if((o[(zf(an,Qg)|0)+4>>2]|0)!=3)break;y=ke(zi+ke(zs(ke(0),ke(y*ke(.5)))));break e}while(!1);if((o[(zf(an,Qg)|0)+4>>2]|0)==3){y=zi;break}if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){y=ke(zi+ke(zs(ke(0),y)));break}switch(It|0){case 1:{y=zi;break e}case 2:{y=ke(zi+ke(y*ke(.5)));break e}default:{y=ke(zi+y);break e}}}while(!1);Du=ke(Zl+y),ly=an+400+(o[Zw>>2]<<2)|0,I[ly>>2]=ke(Du+ke(I[ly>>2]))}while(!1);rr=rr+1|0}while((rr|0)!=(fl|0))}if(Zl=ke(Zl+Ds),EE=ke(zs(EE,w)),U=nh+1|0,fl>>>0>=l_>>>0)break;y=wg,Dg=fl,nh=U}do if(Xe){if(It=U>>>0>1,!It&&!(KS(p)|0))break;if(!(El(MI)|0)){y=ke(MI-Zl);e:do switch(o[p+12>>2]|0){case 3:{zi=ke(zi+y),ss=ke(0);break}case 2:{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break}case 4:{MI>Zl?ss=ke(y/ke(U>>>0)):ss=ke(0);break}case 7:if(MI>Zl){zi=ke(zi+ke(y/ke(U<<1>>>0))),ss=ke(y/ke(U>>>0)),ss=It?ss:ke(0);break e}else{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break e}case 6:{ss=ke(y/ke(nh>>>0)),ss=MI>Zl&It?ss:ke(0);break}default:ss=ke(0)}while(!1);if(U|0)for(hl=1040+(Qg<<2)|0,uu=976+(Qg<<2)|0,Ks=0,rr=0;;){e:do if(rr>>>0>>0)for(Un=ke(0),Ds=ke(0),y=ke(0),an=rr;;){It=o[(o[yp>>2]|0)+(an<<2)>>2]|0;do if((o[It+36>>2]|0)!=1&&!(o[It+24>>2]|0)){if((o[It+940>>2]|0)!=(Ks|0))break e;if(_b(It,Qg)|0&&(Du=ke(I[It+908+(o[uu>>2]<<2)>>2]),y=ke(zs(y,ke(Du+ke(Kl(It,Qg,Hd)))))),($A(p,It)|0)!=5)break;Yg=ke(z_(It)),Yg=ke(Yg+ke(ar(It,0,Hd))),Du=ke(I[It+912>>2]),Du=ke(ke(Du+ke(Kl(It,0,Hd)))-Yg),Yg=ke(zs(Ds,Yg)),Du=ke(zs(Un,Du)),Un=Du,Ds=Yg,y=ke(zs(y,ke(Yg+Du)))}while(!1);if(It=an+1|0,It>>>0>>0)an=It;else{an=It;break}}else Ds=ke(0),y=ke(0),an=rr;while(!1);if(So=ke(ss+y),w=zi,zi=ke(zi+So),rr>>>0>>0){Si=ke(w+Ds),It=rr;do{rr=o[(o[yp>>2]|0)+(It<<2)>>2]|0;e:do if((o[rr+36>>2]|0)!=1&&!(o[rr+24>>2]|0))switch($A(p,rr)|0){case 1:{Du=ke(w+ke(ar(rr,Qg,Hd))),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 3:{Du=ke(ke(zi-ke(Jr(rr,Qg,Hd)))-ke(I[rr+908+(o[uu>>2]<<2)>>2])),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 2:{Du=ke(w+ke(ke(So-ke(I[rr+908+(o[uu>>2]<<2)>>2]))*ke(.5))),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 4:{if(Du=ke(w+ke(ar(rr,Qg,Hd))),I[rr+400+(o[hl>>2]<<2)>>2]=Du,K_(rr,Qg,MI)|0||(of?(Un=ke(I[rr+908>>2]),y=ke(Un+ke(Kl(rr,Yd,Hd))),Ds=So):(Ds=ke(I[rr+912>>2]),Ds=ke(Ds+ke(Kl(rr,Qg,Hd))),y=So,Un=ke(I[rr+908>>2])),eA(y,Un)|0&&eA(Ds,ke(I[rr+912>>2]))|0))break e;ki(rr,y,Ds,vd,1,1,Hd,gI,1,3501,bt)|0;break e}case 5:{I[rr+404>>2]=ke(ke(Si-ke(z_(rr)))+ke(Cb(rr,0,MI)));break e}default:break e}while(!1);It=It+1|0}while((It|0)!=(an|0))}if(Ks=Ks+1|0,(Ks|0)==(U|0))break;rr=an}}}while(!1);if(I[p+908>>2]=ke(BA(p,2,UA,le,le)),I[p+912>>2]=ke(BA(p,0,xF,Ge,le)),f2|0&&(CN=o[p+32>>2]|0,qT=(f2|0)==2,!(qT&(CN|0)!=2))?qT&(CN|0)==2&&(y=ke(GF+wg),y=ke(zs(ke(fU(y,ke(zE(p,Yd,EE,lA)))),GF)),mf=198):(y=ke(BA(p,Yd,EE,lA,le)),mf=198),(mf|0)==198&&(I[p+908+(o[976+(Yd<<2)>>2]<<2)>>2]=y),ek|0&&(Lw=o[p+32>>2]|0,FF=(ek|0)==2,!(FF&(Lw|0)!=2))?FF&(Lw|0)==2&&(y=ke(T0+MI),y=ke(zs(ke(fU(y,ke(zE(p,Qg,ke(T0+Zl),I1)))),T0)),mf=204):(y=ke(BA(p,Qg,ke(T0+Zl),I1,le)),mf=204),(mf|0)==204&&(I[p+908+(o[976+(Qg<<2)>>2]<<2)>>2]=y),Xe){if((o[fo>>2]|0)==2){rr=976+(Qg<<2)|0,an=1040+(Qg<<2)|0,It=0;do Ks=Wa(p,It)|0,o[Ks+24>>2]|0||(F3=o[rr>>2]|0,Du=ke(I[p+908+(F3<<2)>>2]),ly=Ks+400+(o[an>>2]<<2)|0,Du=ke(Du-ke(I[ly>>2])),I[ly>>2]=ke(Du-ke(I[Ks+908+(F3<<2)>>2]))),It=It+1|0;while((It|0)!=(l_|0))}if(G|0){It=of?f2:J;do oB(p,G,Hd,It,gI,vd,bt),G=o[G+960>>2]|0;while(G|0)}if(It=(Yd|2|0)==3,rr=(Qg|2|0)==3,It|rr){G=0;do an=o[(o[yp>>2]|0)+(G<<2)>>2]|0,(o[an+36>>2]|0)!=1&&(It&&DT(p,an,Yd),rr&&DT(p,an,Qg)),G=G+1|0;while((G|0)!=(l_|0))}}}while(!1);B=hv}function JE(p,y){p=p|0,y=ke(y);var w=0;MA(p,y>=ke(0),3147),w=y==ke(0),I[p+4>>2]=w?ke(0):y}function Ym(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=G|0;var J=As,U=As,le=0,Ge=0,Xe=0;o[2278]=(o[2278]|0)+1,vy(p),K_(p,2,y)|0?(J=ke(od(o[p+992>>2]|0,y)),Xe=1,J=ke(J+ke(Kl(p,2,y)))):(J=ke(od(p+380|0,y)),J>=ke(0)?Xe=2:(Xe=((El(y)|0)^1)&1,J=y)),K_(p,0,w)|0?(U=ke(od(o[p+996>>2]|0,w)),Ge=1,U=ke(U+ke(Kl(p,0,y)))):(U=ke(od(p+388|0,w)),U>=ke(0)?Ge=2:(Ge=((El(w)|0)^1)&1,U=w)),le=p+976|0,ki(p,J,U,G,Xe,Ge,y,w,1,3189,o[le>>2]|0)|0&&(UE(p,o[p+496>>2]|0,y,w,y),KE(p,ke(I[(o[le>>2]|0)+4>>2]),ke(0),ke(0)),n[11696]|0)&&QS(p,7)}function vy(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;Ge=B,B=B+32|0,le=Ge+24|0,U=Ge+16|0,G=Ge+8|0,J=Ge,w=0;do y=p+380+(w<<3)|0,o[p+380+(w<<3)+4>>2]|0&&(Xe=y,bt=o[Xe+4>>2]|0,It=G,o[It>>2]=o[Xe>>2],o[It+4>>2]=bt,It=p+364+(w<<3)|0,bt=o[It+4>>2]|0,Xe=J,o[Xe>>2]=o[It>>2],o[Xe+4>>2]=bt,o[U>>2]=o[G>>2],o[U+4>>2]=o[G+4>>2],o[le>>2]=o[J>>2],o[le+4>>2]=o[J+4>>2],sE(U,le)|0)||(y=p+348+(w<<3)|0),o[p+992+(w<<2)>>2]=y,w=w+1|0;while((w|0)!=2);B=Ge}function K_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0;switch(p=o[p+992+(o[976+(y<<2)>>2]<<2)>>2]|0,o[p+4>>2]|0){case 0:case 3:{p=0;break}case 1:{ke(I[p>>2])>2])>2]|0){case 2:{y=ke(ke(ke(I[p>>2])*y)/ke(100));break}case 1:{y=ke(I[p>>2]);break}default:y=ke(ue)}return ke(y)}function UE(p,y,w,G,J){p=p|0,y=y|0,w=ke(w),G=ke(G),J=ke(J);var U=0,le=As;y=o[p+944>>2]|0?y:1,U=vg(o[p+4>>2]|0,y)|0,y=RT(U,y)|0,w=ke(X2(p,U,w)),G=ke(X2(p,y,G)),le=ke(w+ke(ar(p,U,J))),I[p+400+(o[1040+(U<<2)>>2]<<2)>>2]=le,w=ke(w+ke(Jr(p,U,J))),I[p+400+(o[1e3+(U<<2)>>2]<<2)>>2]=w,w=ke(G+ke(ar(p,y,J))),I[p+400+(o[1040+(y<<2)>>2]<<2)>>2]=w,J=ke(G+ke(Jr(p,y,J))),I[p+400+(o[1e3+(y<<2)>>2]<<2)>>2]=J}function KE(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=ke(G);var J=0,U=0,le=As,Ge=As,Xe=0,bt=0,It=As,rr=0,an=As,Ks=As,zi=As,Un=As;if(y!=ke(0)&&(J=p+400|0,Un=ke(I[J>>2]),U=p+404|0,zi=ke(I[U>>2]),rr=p+416|0,Ks=ke(I[rr>>2]),bt=p+420|0,le=ke(I[bt>>2]),an=ke(Un+w),It=ke(zi+G),G=ke(an+Ks),Ge=ke(It+le),Xe=(o[p+988>>2]|0)==1,I[J>>2]=ke(um(Un,y,0,Xe)),I[U>>2]=ke(um(zi,y,0,Xe)),w=ke(Az(ke(Ks*y),ke(1))),eA(w,ke(0))|0?U=0:U=(eA(w,ke(1))|0)^1,w=ke(Az(ke(le*y),ke(1))),eA(w,ke(0))|0?J=0:J=(eA(w,ke(1))|0)^1,Un=ke(um(G,y,Xe&U,Xe&(U^1))),I[rr>>2]=ke(Un-ke(um(an,y,0,Xe))),Un=ke(um(Ge,y,Xe&J,Xe&(J^1))),I[bt>>2]=ke(Un-ke(um(It,y,0,Xe))),U=(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2,U|0)){J=0;do KE(Wa(p,J)|0,y,an,It),J=J+1|0;while((J|0)!=(U|0))}}function Yp(p,y,w,G,J){switch(p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,w|0){case 5:case 0:{p=zAe(o[489]|0,G,J)|0;break}default:p=pPt(G,J)|0}return p|0}function JS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;J=B,B=B+16|0,U=J,o[U>>2]=G,By(p,0,y,w,U),B=J}function By(p,y,w,G,J){if(p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,p=p|0?p:956,ide[o[p+8>>2]&1](p,y,w,G,J)|0,(w|0)==5)Ko();else return}function $0(p,y,w){p=p|0,y=y|0,w=w|0,n[p+y>>0]=w&1}function fw(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(Q2(p,G),xc(p,o[y>>2]|0,o[w>>2]|0,G))}function Q2(p,y){p=p|0,y=y|0;var w=0;if((ut(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function ut(p){return p=p|0,1073741823}function ar(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+96>>2]|0?p=p+92|0:p=yg(p+60|0,o[1040+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Jr(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+104>>2]|0?p=p+100|0:p=yg(p+60|0,o[1e3+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Gn(p){return p=p|0,(p|1|0)==3|0}function Ts(p,y){return p=p|0,y=ke(y),(o[p+4>>2]|0)==3?y=ke(0):y=ke(od(p,y)),ke(y)}function Qo(p,y){return p=p|0,y=y|0,p=o[p>>2]|0,(p|0?p:(y|0)>1?y:1)|0}function vg(p,y){p=p|0,y=y|0;var w=0;e:do if((y|0)==2){switch(p|0){case 2:{p=3;break e}case 3:break;default:{w=4;break e}}p=2}else w=4;while(!1);return p|0}function Ng(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+312>>2]|0&&(w=ke(I[p+308>>2]),w>=ke(0))||(w=ke(zs(ke(I[(yg(p+276|0,o[1040+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function Rf(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+320>>2]|0&&(w=ke(I[p+316>>2]),w>=ke(0))||(w=ke(zs(ke(I[(yg(p+276|0,o[1e3+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function uI(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+240>>2]|0&&(G=ke(od(p+236|0,w)),G>=ke(0))||(G=ke(zs(ke(od(yg(p+204|0,o[1040+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function Th(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+248>>2]|0&&(G=ke(od(p+244|0,w)),G>=ke(0))||(G=ke(zs(ke(od(yg(p+204|0,o[1e3+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function oE(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,bt=As,It=As,rr=As,an=As,Ks=0,zi=0,Un=0;Un=B,B=B+16|0,Ks=Un,zi=p+964|0,np(p,(o[zi>>2]|0)!=0,3519),Ge=ke(j_(p,2,y)),Xe=ke(j_(p,0,y)),bt=ke(Kl(p,2,y)),It=ke(Kl(p,0,y)),El(y)|0?rr=y:rr=ke(zs(ke(0),ke(ke(y-bt)-Ge))),El(w)|0?an=w:an=ke(zs(ke(0),ke(ke(w-It)-Xe))),(G|0)==1&(J|0)==1?(I[p+908>>2]=ke(BA(p,2,ke(y-bt),U,U)),y=ke(BA(p,0,ke(w-It),le,U))):(Cz[o[zi>>2]&1](Ks,p,rr,G,an,J),rr=ke(Ge+ke(I[Ks>>2])),an=ke(y-bt),I[p+908>>2]=ke(BA(p,2,(G|2|0)==2?rr:an,U,U)),an=ke(Xe+ke(I[Ks+4>>2])),y=ke(w-It),y=ke(BA(p,0,(J|2|0)==2?an:y,le,U))),I[p+912>>2]=y,B=Un}function TT(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,bt=As,It=As;bt=ke(j_(p,2,U)),Ge=ke(j_(p,0,U)),It=ke(Kl(p,2,U)),Xe=ke(Kl(p,0,U)),y=ke(y-It),I[p+908>>2]=ke(BA(p,2,(G|2|0)==2?bt:y,U,U)),w=ke(w-Xe),I[p+912>>2]=ke(BA(p,0,(J|2|0)==2?Ge:w,le,U))}function sB(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=0,Xe=As,bt=As;return Ge=(G|0)==2,!(y<=ke(0)&Ge)&&!(w<=ke(0)&(J|0)==2)&&!((G|0)==1&(J|0)==1)?p=0:(Xe=ke(Kl(p,0,U)),bt=ke(Kl(p,2,U)),Ge=y>2]=ke(BA(p,2,Ge?ke(0):y,U,U)),y=ke(w-Xe),Ge=w>2]=ke(BA(p,0,Ge?ke(0):y,le,U)),p=1),p|0}function RT(p,y){return p=p|0,y=y|0,aB(p)|0?p=vg(2,y)|0:p=0,p|0}function wy(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(uI(p,y,w)),ke(w+ke(Ng(p,y)))}function jE(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(Th(p,y,w)),ke(w+ke(Rf(p,y)))}function j_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(wy(p,y,w)),ke(G+ke(jE(p,y,w)))}function NT(p){return p=p|0,o[p+24>>2]|0?p=0:ke(tf(p))!=ke(0)?p=1:p=ke(Ty(p))!=ke(0),p|0}function tf(p){p=p|0;var y=As;if(o[p+944>>2]|0){if(y=ke(I[p+44>>2]),El(y)|0)return y=ke(I[p+40>>2]),p=y>ke(0)&((El(y)|0)^1),ke(p?y:ke(0))}else y=ke(0);return ke(y)}function Ty(p){p=p|0;var y=As,w=0,G=As;do if(o[p+944>>2]|0){if(y=ke(I[p+48>>2]),El(y)|0){if(w=n[(o[p+976>>2]|0)+2>>0]|0,!(w<<24>>24)&&(G=ke(I[p+40>>2]),G>24?ke(1):ke(0)}}else y=ke(0);while(!1);return ke(y)}function US(p){p=p|0;var y=0,w=0;if(fz(p+400|0,0,540)|0,n[p+985>>0]=1,Dr(p),w=Fs(p)|0,w|0){y=p+948|0,p=0;do US(o[(o[y>>2]|0)+(p<<2)>>2]|0),p=p+1|0;while((p|0)!=(w|0))}}function $I(p,y,w,G,J,U,le,Ge,Xe,bt){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=ke(U),le=ke(le),Ge=Ge|0,Xe=Xe|0,bt=bt|0;var It=0,rr=As,an=0,Ks=0,zi=As,Un=As,Ds=0,Si=As,So=0,ss=As,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0,w0=0;em=B,B=B+16|0,uu=em+12|0,fl=em+8|0,Tc=em+4|0,Bg=em,wg=vg(o[p+4>>2]|0,Xe)|0,pi=Gn(wg)|0,rr=ke(od(jS(y)|0,pi?U:le)),hl=K_(y,2,U)|0,Dg=K_(y,0,le)|0;do if(!(El(rr)|0)&&!(El(pi?w:J)|0)){if(It=y+504|0,!(El(ke(I[It>>2]))|0)&&(!(XR(o[y+976>>2]|0,0)|0)||(o[y+500>>2]|0)==(o[2278]|0)))break;I[It>>2]=ke(zs(rr,ke(j_(y,wg,U))))}else an=7;while(!1);do if((an|0)==7){if(So=pi^1,!(So|hl^1)){le=ke(od(o[y+992>>2]|0,U)),I[y+504>>2]=ke(zs(le,ke(j_(y,2,U))));break}if(!(pi|Dg^1)){le=ke(od(o[y+996>>2]|0,le)),I[y+504>>2]=ke(zs(le,ke(j_(y,0,U))));break}I[uu>>2]=ke(ue),I[fl>>2]=ke(ue),o[Tc>>2]=0,o[Bg>>2]=0,Si=ke(Kl(y,2,U)),ss=ke(Kl(y,0,U)),hl?(zi=ke(Si+ke(od(o[y+992>>2]|0,U))),I[uu>>2]=zi,o[Tc>>2]=1,Ks=1):(Ks=0,zi=ke(ue)),Dg?(rr=ke(ss+ke(od(o[y+996>>2]|0,le))),I[fl>>2]=rr,o[Bg>>2]=1,It=1):(It=0,rr=ke(ue)),an=o[p+32>>2]|0,pi&(an|0)==2?an=2:El(zi)|0&&!(El(w)|0)&&(I[uu>>2]=w,o[Tc>>2]=2,Ks=2,zi=w),!((an|0)==2&So)&&El(rr)|0&&!(El(J)|0)&&(I[fl>>2]=J,o[Bg>>2]=2,It=2,rr=J),Un=ke(I[y+396>>2]),Ds=El(Un)|0;do if(Ds)an=Ks;else{if((Ks|0)==1&So){I[fl>>2]=ke(ke(zi-Si)/Un),o[Bg>>2]=1,It=1,an=1;break}pi&(It|0)==1?(I[uu>>2]=ke(Un*ke(rr-ss)),o[Tc>>2]=1,It=1,an=1):an=Ks}while(!1);w0=El(w)|0,Ks=($A(p,y)|0)!=4,!(pi|hl|((G|0)!=1|w0)|(Ks|(an|0)==1))&&(I[uu>>2]=w,o[Tc>>2]=1,!Ds)&&(I[fl>>2]=ke(ke(w-Si)/Un),o[Bg>>2]=1,It=1),!(Dg|So|((Ge|0)!=1|(El(J)|0))|(Ks|(It|0)==1))&&(I[fl>>2]=J,o[Bg>>2]=1,!Ds)&&(I[uu>>2]=ke(Un*ke(J-ss)),o[Tc>>2]=1),mb(y,2,U,U,Tc,uu),mb(y,0,le,U,Bg,fl),w=ke(I[uu>>2]),J=ke(I[fl>>2]),ki(y,w,J,Xe,o[Tc>>2]|0,o[Bg>>2]|0,U,le,0,3565,bt)|0,le=ke(I[y+908+(o[976+(wg<<2)>>2]<<2)>>2]),I[y+504>>2]=ke(zs(le,ke(j_(y,wg,U))))}while(!1);o[y+500>>2]=o[2278],B=em}function BA(p,y,w,G,J){return p=p|0,y=y|0,w=ke(w),G=ke(G),J=ke(J),G=ke(zE(p,y,w,G)),ke(zs(G,ke(j_(p,y,J))))}function $A(p,y){return p=p|0,y=y|0,y=y+20|0,y=o[(o[y>>2]|0?y:p+16|0)>>2]|0,(y|0)==5&&aB(o[p+4>>2]|0)|0&&(y=1),y|0}function Qm(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+96>>2]|0?y=4:y=o[1040+(y<<2)>>2]|0,p+60+(y<<3)|0}function zf(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+104>>2]|0?y=5:y=o[1e3+(y<<2)>>2]|0,p+60+(y<<3)|0}function mb(p,y,w,G,J,U){switch(p=p|0,y=y|0,w=ke(w),G=ke(G),J=J|0,U=U|0,w=ke(od(p+380+(o[976+(y<<2)>>2]<<3)|0,w)),w=ke(w+ke(Kl(p,y,G))),o[J>>2]|0){case 2:case 1:{J=El(w)|0,G=ke(I[U>>2]),I[U>>2]=J|G>2]=2,I[U>>2]=w);break}default:}}function R_(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(yg(p,4,948)|0)+4>>2]|0?p=1:p=(o[(yg(p,o[1040+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function Cb(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0;return p=p+132|0,Gn(y)|0&&(G=yg(p,4,948)|0,(o[G+4>>2]|0)!=0)?J=4:(G=yg(p,o[1040+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?J=4:w=ke(0)),(J|0)==4&&(w=ke(od(G,w))),ke(w)}function Ry(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),G=ke(G+ke(ar(p,y,w))),ke(G+ke(Jr(p,y,w)))}function KS(p){p=p|0;var y=0,w=0,G=0;e:do if(aB(o[p+4>>2]|0)|0)y=0;else if((o[p+16>>2]|0)!=5)if(w=Fs(p)|0,!w)y=0;else for(y=0;;){if(G=Wa(p,y)|0,!(o[G+24>>2]|0)&&(o[G+20>>2]|0)==5){y=1;break e}if(y=y+1|0,y>>>0>=w>>>0){y=0;break}}else y=1;while(!1);return y|0}function _b(p,y){p=p|0,y=y|0;var w=As;return w=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),w>=ke(0)&((El(w)|0)^1)|0}function z_(p){p=p|0;var y=As,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=As;if(w=o[p+968>>2]|0,w)Xe=ke(I[p+908>>2]),y=ke(I[p+912>>2]),y=ke(lie[w&0](p,Xe,y)),np(p,(El(y)|0)^1,3573);else{U=Fs(p)|0;do if(U|0){for(w=0,J=0;;){if(G=Wa(p,J)|0,o[G+940>>2]|0){le=8;break}if((o[G+24>>2]|0)!=1)if(Ge=($A(p,G)|0)==5,Ge){w=G;break}else w=w|0?w:G;if(J=J+1|0,J>>>0>=U>>>0){le=8;break}}if((le|0)==8&&!w)break;return y=ke(z_(w)),ke(y+ke(I[w+404>>2]))}while(!1);y=ke(I[p+912>>2])}return ke(y)}function zE(p,y,w,G){p=p|0,y=y|0,w=ke(w),G=ke(G);var J=As,U=0;return aB(y)|0?(y=1,U=3):Gn(y)|0?(y=0,U=3):(G=ke(ue),J=ke(ue)),(U|0)==3&&(J=ke(od(p+364+(y<<3)|0,G)),G=ke(od(p+380+(y<<3)|0,G))),U=G=ke(0)&((El(G)|0)^1)),w=U?G:w,U=J>=ke(0)&((El(J)|0)^1)&w>2]|0,U)|0,zi=RT(Ds,U)|0,Un=Gn(Ds)|0,rr=ke(Kl(y,2,w)),an=ke(Kl(y,0,w)),K_(y,2,w)|0?Ge=ke(rr+ke(od(o[y+992>>2]|0,w))):R_(y,2)|0&&zS(y,2)|0?(Ge=ke(I[p+908>>2]),Xe=ke(Ng(p,2)),Xe=ke(Ge-ke(Xe+ke(Rf(p,2)))),Ge=ke(Cb(y,2,w)),Ge=ke(BA(y,2,ke(Xe-ke(Ge+ke(qE(y,2,w)))),w,w))):Ge=ke(ue),K_(y,0,J)|0?Xe=ke(an+ke(od(o[y+996>>2]|0,J))):R_(y,0)|0&&zS(y,0)|0?(Xe=ke(I[p+912>>2]),So=ke(Ng(p,0)),So=ke(Xe-ke(So+ke(Rf(p,0)))),Xe=ke(Cb(y,0,J)),Xe=ke(BA(y,0,ke(So-ke(Xe+ke(qE(y,0,J)))),J,w))):Xe=ke(ue),bt=El(Ge)|0,It=El(Xe)|0;do if(bt^It&&(Ks=ke(I[y+396>>2]),!(El(Ks)|0)))if(bt){Ge=ke(rr+ke(ke(Xe-an)*Ks));break}else{So=ke(an+ke(ke(Ge-rr)/Ks)),Xe=It?So:Xe;break}while(!1);It=El(Ge)|0,bt=El(Xe)|0,It|bt&&(ss=(It^1)&1,G=w>ke(0)&((G|0)!=0&It),Ge=Un?Ge:G?w:Ge,ki(y,Ge,Xe,U,Un?ss:G?2:ss,It&(bt^1)&1,Ge,Xe,0,3623,le)|0,Ge=ke(I[y+908>>2]),Ge=ke(Ge+ke(Kl(y,2,w))),Xe=ke(I[y+912>>2]),Xe=ke(Xe+ke(Kl(y,0,w)))),ki(y,Ge,Xe,U,1,1,Ge,Xe,1,3635,le)|0,zS(y,Ds)|0&&!(R_(y,Ds)|0)?(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Rf(p,Ds))),So=ke(So-ke(Jr(y,Ds,w))),So=ke(So-ke(qE(y,Ds,Un?w:J))),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So):Si=21;do if((Si|0)==21){if(!(R_(y,Ds)|0)&&(o[p+8>>2]|0)==1){ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So;break}!(R_(y,Ds)|0)&&(o[p+8>>2]|0)==2&&(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So)}while(!1);zS(y,zi)|0&&!(R_(y,zi)|0)?(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Rf(p,zi))),So=ke(So-ke(Jr(y,zi,w))),So=ke(So-ke(qE(y,zi,Un?J:w))),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So):Si=30;do if((Si|0)==30&&!(R_(y,zi)|0)){if(($A(p,y)|0)==2){ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So;break}ss=($A(p,y)|0)==3,ss^(o[p+28>>2]|0)==2&&(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So)}while(!1)}function DT(p,y,w){p=p|0,y=y|0,w=w|0;var G=As,J=0;J=o[976+(w<<2)>>2]|0,G=ke(I[y+908+(J<<2)>>2]),G=ke(ke(I[p+908+(J<<2)>>2])-G),G=ke(G-ke(I[y+400+(o[1040+(w<<2)>>2]<<2)>>2])),I[y+400+(o[1e3+(w<<2)>>2]<<2)>>2]=G}function aB(p){return p=p|0,(p|1|0)==1|0}function jS(p){p=p|0;var y=As;switch(o[p+56>>2]|0){case 0:case 3:{y=ke(I[p+40>>2]),y>ke(0)&((El(y)|0)^1)?p=n[(o[p+976>>2]|0)+2>>0]|0?1056:992:p=1056;break}default:p=p+52|0}return p|0}function XR(p,y){return p=p|0,y=y|0,(n[p+y>>0]|0)!=0|0}function zS(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(yg(p,5,948)|0)+4>>2]|0?p=1:p=(o[(yg(p,o[1e3+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function qE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0;return p=p+132|0,Gn(y)|0&&(G=yg(p,5,948)|0,(o[G+4>>2]|0)!=0)?J=4:(G=yg(p,o[1e3+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?J=4:w=ke(0)),(J|0)==4&&(w=ke(od(G,w))),ke(w)}function X2(p,y,w){return p=p|0,y=y|0,w=ke(w),R_(p,y)|0?w=ke(Cb(p,y,w)):w=ke(-ke(qE(p,y,w))),ke(w)}function kT(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pn(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function q1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function J2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function ey(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;if(le=p+4|0,Ge=o[le>>2]|0,J=Ge-G|0,U=J>>2,p=y+(U<<2)|0,p>>>0>>0){G=Ge;do o[G>>2]=o[p>>2],p=p+4|0,G=(o[le>>2]|0)+4|0,o[le>>2]=G;while(p>>>0>>0)}U|0&&JT(Ge+(0-U<<2)|0,y|0,J|0)|0}function up(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=y+4|0,Xe=o[Ge>>2]|0,J=o[p>>2]|0,le=w,U=le-J|0,G=Xe+(0-(U>>2)<<2)|0,o[Ge>>2]=G,(U|0)>0&&Md(G|0,J|0,U|0)|0,J=p+4|0,U=y+8|0,G=(o[J>>2]|0)-le|0,(G|0)>0&&(Md(o[U>>2]|0,w|0,G|0)|0,o[U>>2]=(o[U>>2]|0)+(G>>>2<<2)),le=o[p>>2]|0,o[p>>2]=o[Ge>>2],o[Ge>>2]=le,le=o[J>>2]|0,o[J>>2]=o[U>>2],o[U>>2]=le,le=p+8|0,w=y+12|0,p=o[le>>2]|0,o[le>>2]=o[w>>2],o[w>>2]=p,o[y>>2]=o[Ge>>2],Xe|0}function Iw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;if(le=o[y>>2]|0,U=o[w>>2]|0,(le|0)!=(U|0)){J=p+8|0,w=((U+-4-le|0)>>>2)+1|0,p=le,G=o[J>>2]|0;do o[G>>2]=o[p>>2],G=(o[J>>2]|0)+4|0,o[J>>2]=G,p=p+4|0;while((p|0)!=(U|0));o[y>>2]=le+(w<<2)}}function cB(){FA()}function RD(){var p=0;return p=Ku(4)|0,Rd(p),p|0}function Rd(p){p=p|0,o[p>>2]=df()|0}function JR(p){p=p|0,p|0&&(ty(p),ti(p))}function ty(p){p=p|0,so(o[p>>2]|0)}function cF(p,y,w){p=p|0,y=y|0,w=w|0,$0(o[p>>2]|0,y,w)}function $1(p,y){p=p|0,y=ke(y),JE(o[p>>2]|0,y)}function $E(p,y){return p=p|0,y=y|0,XR(o[p>>2]|0,y)|0}function N_(){var p=0;return p=Ku(8)|0,e1(p,0),p|0}function e1(p,y){p=p|0,y=y|0,y?y=Mp(o[y>>2]|0)|0:y=Er()|0,o[p>>2]=y,o[p+4>>2]=0,ip(y,p)}function t1(p){p=p|0;var y=0;return y=Ku(8)|0,e1(y,p),y|0}function ry(p){p=p|0,p|0&&(xT(p),ti(p))}function xT(p){p=p|0;var y=0;ls(o[p>>2]|0),y=p+4|0,p=o[y>>2]|0,o[y>>2]=0,p|0&&(yb(p),ti(p))}function yb(p){p=p|0,r_(p)}function r_(p){p=p|0,p=o[p>>2]|0,p|0&&oo(p|0)}function Rh(p){return p=p|0,_d(p)|0}function bb(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(yb(y),ti(y)),Rp(o[p>>2]|0)}function lB(p,y){p=p|0,y=y|0,LA(o[p>>2]|0,o[y>>2]|0)}function ND(p,y){p=p|0,y=y|0,nE(o[p>>2]|0,y)}function DD(p,y,w){p=p|0,y=y|0,w=+w,H2(o[p>>2]|0,y,ke(w))}function q_(p,y,w){p=p|0,y=y|0,w=+w,iE(o[p>>2]|0,y,ke(w))}function kD(p,y){p=p|0,y=y|0,Nm(o[p>>2]|0,y)}function UR(p,y){p=p|0,y=y|0,jd(o[p>>2]|0,y)}function lc(p,y){p=p|0,y=y|0,Hp(o[p>>2]|0,y)}function fh(p,y){p=p|0,y=y|0,j1(o[p>>2]|0,y)}function rf(p,y){p=p|0,y=y|0,q0(o[p>>2]|0,y)}function yI(p,y){p=p|0,y=y|0,YA(o[p>>2]|0,y)}function aE(p,y,w){p=p|0,y=y|0,w=+w,O(o[p>>2]|0,y,ke(w))}function qS(p,y,w){p=p|0,y=y|0,w=+w,K(o[p>>2]|0,y,ke(w))}function Qp(p,y){p=p|0,y=y|0,gt(o[p>>2]|0,y)}function uB(p,y){p=p|0,y=y|0,TC(o[p>>2]|0,y)}function Ih(p,y){p=p|0,y=y|0,cp(o[p>>2]|0,y)}function xC(p,y){p=p|0,y=+y,fb(o[p>>2]|0,ke(y))}function $_(p,y){p=p|0,y=+y,Kf(o[p>>2]|0,ke(y))}function r1(p,y){p=p|0,y=+y,CI(o[p>>2]|0,ke(y))}function gB(p,y){p=p|0,y=+y,pe(o[p>>2]|0,ke(y))}function hw(p,y){p=p|0,y=+y,lm(o[p>>2]|0,ke(y))}function GT(p,y){p=p|0,y=+y,ra(o[p>>2]|0,ke(y))}function b0(p,y){p=p|0,y=+y,kc(o[p>>2]|0,ke(y))}function ia(p){p=p|0,Nl(o[p>>2]|0)}function e2(p,y){p=p|0,y=+y,Bl(o[p>>2]|0,ke(y))}function yd(p,y){p=p|0,y=+y,$g(o[p>>2]|0,ke(y))}function bI(p){p=p|0,SA(o[p>>2]|0)}function ag(p,y){p=p|0,y=+y,lp(o[p>>2]|0,ke(y))}function Eb(p,y){p=p|0,y=+y,Ib(o[p>>2]|0,ke(y))}function n1(p,y){p=p|0,y=+y,wd(o[p>>2]|0,ke(y))}function U2(p,y){p=p|0,y=+y,z1(o[p>>2]|0,ke(y))}function e0(p,y){p=p|0,y=+y,RC(o[p>>2]|0,ke(y))}function n_(p,y){p=p|0,y=+y,Hm(o[p>>2]|0,ke(y))}function Xp(p,y){p=p|0,y=+y,Fg(o[p>>2]|0,ke(y))}function cE(p,y){p=p|0,y=+y,hb(o[p>>2]|0,ke(y))}function lE(p,y){p=p|0,y=+y,NC(o[p>>2]|0,ke(y))}function Ip(p,y,w){p=p|0,y=y|0,w=+w,fi(o[p>>2]|0,y,ke(w))}function Xh(p,y,w){p=p|0,y=y|0,w=+w,sr(o[p>>2]|0,y,ke(w))}function E0(p,y,w){p=p|0,y=y|0,w=+w,Yr(o[p>>2]|0,y,ke(w))}function aA(p){return p=p|0,J_(o[p>>2]|0)|0}function fu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,se(J,o[y>>2]|0,w),Jp(p,J),B=G}function Jp(p,y){p=p|0,y=y|0,dC(p,o[y+4>>2]|0,+ke(I[y>>2]))}function dC(p,y,w){p=p|0,y=y|0,w=+w,o[p>>2]=y,C[p+8>>3]=w}function uE(p){return p=p|0,HS(o[p>>2]|0)|0}function eh(p){return p=p|0,dh(o[p>>2]|0)|0}function Wf(p){return p=p|0,uC(o[p>>2]|0)|0}function Mo(p){return p=p|0,pw(o[p>>2]|0)|0}function gp(p){return p=p|0,XE(o[p>>2]|0)|0}function lF(p){return p=p|0,Ac(o[p>>2]|0)|0}function uF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,we(J,o[y>>2]|0,w),Jp(p,J),B=G}function gE(p){return p=p|0,t_(o[p>>2]|0)|0}function FT(p){return p=p|0,Mm(o[p>>2]|0)|0}function Np(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,_I(G,o[y>>2]|0),Jp(p,G),B=w}function Dm(p){return p=p|0,+ +ke(pf(o[p>>2]|0))}function Dp(p){return p=p|0,+ +ke(ef(o[p>>2]|0))}function t2(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,ca(G,o[y>>2]|0),Jp(p,G),B=w}function Ro(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,lI(G,o[y>>2]|0),Jp(p,G),B=w}function AE(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Na(G,o[y>>2]|0),Jp(p,G),B=w}function AB(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,T_(G,o[y>>2]|0),Jp(p,G),B=w}function Xc(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,YS(G,o[y>>2]|0),Jp(p,G),B=w}function iu(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,gC(G,o[y>>2]|0),Jp(p,G),B=w}function dE(p){return p=p|0,+ +ke(Y2(o[p>>2]|0))}function yL(p,y){return p=p|0,y=y|0,+ +ke($n(o[p>>2]|0,y))}function KR(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,Lr(J,o[y>>2]|0,w),Jp(p,J),B=G}function Ou(p,y,w){p=p|0,y=y|0,w=w|0,Ml(o[p>>2]|0,o[y>>2]|0,w)}function ny(p,y){p=p|0,y=y|0,ld(o[p>>2]|0,o[y>>2]|0)}function hp(p){return p=p|0,Fs(o[p>>2]|0)|0}function Am(p){return p=p|0,p=Bo(o[p>>2]|0)|0,p?p=Rh(p)|0:p=0,p|0}function K2(p,y){return p=p|0,y=y|0,p=Wa(o[p>>2]|0,y)|0,p?p=Rh(p)|0:p=0,p|0}function i_(p,y){p=p|0,y=y|0;var w=0,G=0;G=Ku(4)|0,dB(G,y),w=p+4|0,y=o[w>>2]|0,o[w>>2]=G,y|0&&(yb(y),ti(y)),Ea(o[p>>2]|0,1)}function dB(p,y){p=p|0,y=y|0,vb(p,y)}function ZT(p,y,w,G,J,U){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,Cx(Ge,_d(y)|0,+w,G,+J,U),I[p>>2]=ke(+C[Ge>>3]),I[p+4>>2]=ke(+C[Ge+8>>3]),B=le}function Cx(p,y,w,G,J,U){p=p|0,y=y|0,w=+w,G=G|0,J=+J,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0;le=B,B=B+32|0,It=le+8|0,bt=le+20|0,Xe=le,Ge=le+16|0,C[It>>3]=w,o[bt>>2]=G,C[Xe>>3]=J,o[Ge>>2]=U,pB(p,o[y+4>>2]|0,It,bt,Xe,Ge),B=le}function pB(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,xw(Ge),y=qf(y)|0,Jh(p,y,+C[w>>3],o[G>>2]|0,+C[J>>3],o[U>>2]|0),oS(Ge),B=le}function qf(p){return p=p|0,o[p>>2]|0}function Jh(p,y,w,G,J,U){p=p|0,y=y|0,w=+w,G=G|0,J=+J,U=U|0;var le=0;le=Sb($S()|0)|0,w=+mp(w),G=r2(G)|0,J=+mp(J),i1(p,cc(0,le|0,y|0,+w,G|0,+J,r2(U)|0)|0)}function $S(){var p=0;return n[7608]|0||(fB(9120),p=7608,o[p>>2]=1,o[p+4>>2]=0),9120}function Sb(p){return p=p|0,o[p+8>>2]|0}function mp(p){return p=+p,+ +Id(p)}function r2(p){return p=p|0,Z(p)|0}function i1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+32|0,w=J,G=y,G&1?(Of(w,0),mI(G|0,w|0)|0,pE(p,w),Vd(w)):(o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]),B=J}function Of(p,y){p=p|0,y=y|0,j(p,y),o[p+8>>2]=0,n[p+24>>0]=0}function pE(p,y){p=p|0,y=y|0,y=y+8|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]}function Vd(p){p=p|0,n[p+24>>0]=0}function j(p,y){p=p|0,y=y|0,o[p>>2]=y}function Z(p){return p=p|0,p|0}function Id(p){return p=+p,+p}function fB(p){p=p|0,Ny(p,ev()|0,4)}function ev(){return 1064}function Ny(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=Kd(y|0,w+1|0)|0}function vb(p,y){p=p|0,y=y|0,y=o[y>>2]|0,o[p>>2]=y,ac(y|0)}function xD(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(yb(y),ti(y)),Ea(o[p>>2]|0,0)}function IB(p){p=p|0,us(o[p>>2]|0)}function Bb(p){return p=p|0,Ql(o[p>>2]|0)|0}function bL(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,Ym(o[p>>2]|0,ke(y),ke(w),G)}function gF(p){return p=p|0,+ +ke(U_(o[p>>2]|0))}function x(p){return p=p|0,+ +ke(kC(o[p>>2]|0))}function L(p){return p=p|0,+ +ke(DC(o[p>>2]|0))}function te(p){return p=p|0,+ +ke(qI(o[p>>2]|0))}function Re(p){return p=p|0,+ +ke(ph(o[p>>2]|0))}function Le(p){return p=p|0,+ +ke(vA(o[p>>2]|0))}function ft(p,y){p=p|0,y=y|0,C[p>>3]=+ke(U_(o[y>>2]|0)),C[p+8>>3]=+ke(kC(o[y>>2]|0)),C[p+16>>3]=+ke(DC(o[y>>2]|0)),C[p+24>>3]=+ke(qI(o[y>>2]|0)),C[p+32>>3]=+ke(ph(o[y>>2]|0)),C[p+40>>3]=+ke(vA(o[y>>2]|0))}function dr(p,y){return p=p|0,y=y|0,+ +ke(Td(o[p>>2]|0,y))}function Ur(p,y){return p=p|0,y=y|0,+ +ke(Mc(o[p>>2]|0,y))}function mi(p,y){return p=p|0,y=y|0,+ +ke(Pf(o[p>>2]|0,y))}function Vi(){return HA()|0}function Ta(){Sl(),Ho(),Wg(),cA(),th(),xn()}function Sl(){Dqe(11713,4938,1)}function Ho(){DZe(10448)}function Wg(){wZe(10408)}function cA(){Sqe(10324)}function th(){yye(10096)}function xn(){rn(9132)}function rn(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0,w0=0,bE=0,nh=0,x_=0,$D=0,Fw=0,mh=0,kF=0,Zw=0,KT=0,jL=0,zL=0,aS=0,mf=0,d2=0,jT=0,fv=0,Fx=0,xB=0,Iv=0,GB=0,EE=0,Um=0,mN=0,zT=0,Km=0,p2=0,hg=0,OI=0,og=0,jo=0,Yg=0,Zl=0,f2=0,MI=0,xF=0,gI=0,UA=0,lA=0,GF=0,CN=0,qT=0,I1=0,T0=0,ek=0,fo=0,Lw=0,FF=0,Hd=0,of=0,vd=0,yp=0,l_=0,Yd=0,Qg=0,hv=0;y=B,B=B+672|0,w=y+656|0,hv=y+648|0,Qg=y+640|0,Yd=y+632|0,l_=y+624|0,yp=y+616|0,vd=y+608|0,of=y+600|0,Hd=y+592|0,FF=y+584|0,Lw=y+576|0,fo=y+568|0,ek=y+560|0,T0=y+552|0,I1=y+544|0,qT=y+536|0,CN=y+528|0,GF=y+520|0,lA=y+512|0,UA=y+504|0,gI=y+496|0,xF=y+488|0,MI=y+480|0,f2=y+472|0,Zl=y+464|0,Yg=y+456|0,jo=y+448|0,og=y+440|0,OI=y+432|0,hg=y+424|0,p2=y+416|0,Km=y+408|0,zT=y+400|0,mN=y+392|0,Um=y+384|0,EE=y+376|0,GB=y+368|0,Iv=y+360|0,xB=y+352|0,Fx=y+344|0,fv=y+336|0,jT=y+328|0,d2=y+320|0,mf=y+312|0,aS=y+304|0,zL=y+296|0,jL=y+288|0,KT=y+280|0,Zw=y+272|0,kF=y+264|0,mh=y+256|0,Fw=y+248|0,$D=y+240|0,x_=y+232|0,nh=y+224|0,bE=y+216|0,w0=y+208|0,em=y+200|0,wg=y+192|0,Dg=y+184|0,Bg=y+176|0,Tc=y+168|0,fl=y+160|0,uu=y+152|0,hl=y+144|0,pi=y+136|0,ss=y+128|0,So=y+120|0,Si=y+112|0,Ds=y+104|0,Un=y+96|0,zi=y+88|0,Ks=y+80|0,an=y+72|0,rr=y+64|0,It=y+56|0,bt=y+48|0,Xe=y+40|0,Ge=y+32|0,le=y+24|0,U=y+16|0,J=y+8|0,G=y,Ci(p,3646),Po(p,3651,2)|0,ec(p,3665,2)|0,Ra(p,3682,18)|0,o[hv>>2]=19,o[hv+4>>2]=0,o[w>>2]=o[hv>>2],o[w+4>>2]=o[hv+4>>2],dc(p,3690,w)|0,o[Qg>>2]=1,o[Qg+4>>2]=0,o[w>>2]=o[Qg>>2],o[w+4>>2]=o[Qg+4>>2],Iu(p,3696,w)|0,o[Yd>>2]=2,o[Yd+4>>2]=0,o[w>>2]=o[Yd>>2],o[w+4>>2]=o[Yd+4>>2],Cl(p,3706,w)|0,o[l_>>2]=1,o[l_+4>>2]=0,o[w>>2]=o[l_>>2],o[w+4>>2]=o[l_+4>>2],wl(p,3722,w)|0,o[yp>>2]=2,o[yp+4>>2]=0,o[w>>2]=o[yp>>2],o[w+4>>2]=o[yp+4>>2],wl(p,3734,w)|0,o[vd>>2]=3,o[vd+4>>2]=0,o[w>>2]=o[vd>>2],o[w+4>>2]=o[vd+4>>2],Cl(p,3753,w)|0,o[of>>2]=4,o[of+4>>2]=0,o[w>>2]=o[of>>2],o[w+4>>2]=o[of+4>>2],Cl(p,3769,w)|0,o[Hd>>2]=5,o[Hd+4>>2]=0,o[w>>2]=o[Hd>>2],o[w+4>>2]=o[Hd+4>>2],Cl(p,3783,w)|0,o[FF>>2]=6,o[FF+4>>2]=0,o[w>>2]=o[FF>>2],o[w+4>>2]=o[FF+4>>2],Cl(p,3796,w)|0,o[Lw>>2]=7,o[Lw+4>>2]=0,o[w>>2]=o[Lw>>2],o[w+4>>2]=o[Lw+4>>2],Cl(p,3813,w)|0,o[fo>>2]=8,o[fo+4>>2]=0,o[w>>2]=o[fo>>2],o[w+4>>2]=o[fo+4>>2],Cl(p,3825,w)|0,o[ek>>2]=3,o[ek+4>>2]=0,o[w>>2]=o[ek>>2],o[w+4>>2]=o[ek+4>>2],wl(p,3843,w)|0,o[T0>>2]=4,o[T0+4>>2]=0,o[w>>2]=o[T0>>2],o[w+4>>2]=o[T0+4>>2],wl(p,3853,w)|0,o[I1>>2]=9,o[I1+4>>2]=0,o[w>>2]=o[I1>>2],o[w+4>>2]=o[I1+4>>2],Cl(p,3870,w)|0,o[qT>>2]=10,o[qT+4>>2]=0,o[w>>2]=o[qT>>2],o[w+4>>2]=o[qT+4>>2],Cl(p,3884,w)|0,o[CN>>2]=11,o[CN+4>>2]=0,o[w>>2]=o[CN>>2],o[w+4>>2]=o[CN+4>>2],Cl(p,3896,w)|0,o[GF>>2]=1,o[GF+4>>2]=0,o[w>>2]=o[GF>>2],o[w+4>>2]=o[GF+4>>2],$f(p,3907,w)|0,o[lA>>2]=2,o[lA+4>>2]=0,o[w>>2]=o[lA>>2],o[w+4>>2]=o[lA+4>>2],$f(p,3915,w)|0,o[UA>>2]=3,o[UA+4>>2]=0,o[w>>2]=o[UA>>2],o[w+4>>2]=o[UA+4>>2],$f(p,3928,w)|0,o[gI>>2]=4,o[gI+4>>2]=0,o[w>>2]=o[gI>>2],o[w+4>>2]=o[gI+4>>2],$f(p,3948,w)|0,o[xF>>2]=5,o[xF+4>>2]=0,o[w>>2]=o[xF>>2],o[w+4>>2]=o[xF+4>>2],$f(p,3960,w)|0,o[MI>>2]=6,o[MI+4>>2]=0,o[w>>2]=o[MI>>2],o[w+4>>2]=o[MI+4>>2],$f(p,3974,w)|0,o[f2>>2]=7,o[f2+4>>2]=0,o[w>>2]=o[f2>>2],o[w+4>>2]=o[f2+4>>2],$f(p,3983,w)|0,o[Zl>>2]=20,o[Zl+4>>2]=0,o[w>>2]=o[Zl>>2],o[w+4>>2]=o[Zl+4>>2],dc(p,3999,w)|0,o[Yg>>2]=8,o[Yg+4>>2]=0,o[w>>2]=o[Yg>>2],o[w+4>>2]=o[Yg+4>>2],$f(p,4012,w)|0,o[jo>>2]=9,o[jo+4>>2]=0,o[w>>2]=o[jo>>2],o[w+4>>2]=o[jo+4>>2],$f(p,4022,w)|0,o[og>>2]=21,o[og+4>>2]=0,o[w>>2]=o[og>>2],o[w+4>>2]=o[og+4>>2],dc(p,4039,w)|0,o[OI>>2]=10,o[OI+4>>2]=0,o[w>>2]=o[OI>>2],o[w+4>>2]=o[OI+4>>2],$f(p,4053,w)|0,o[hg>>2]=11,o[hg+4>>2]=0,o[w>>2]=o[hg>>2],o[w+4>>2]=o[hg+4>>2],$f(p,4065,w)|0,o[p2>>2]=12,o[p2+4>>2]=0,o[w>>2]=o[p2>>2],o[w+4>>2]=o[p2+4>>2],$f(p,4084,w)|0,o[Km>>2]=13,o[Km+4>>2]=0,o[w>>2]=o[Km>>2],o[w+4>>2]=o[Km+4>>2],$f(p,4097,w)|0,o[zT>>2]=14,o[zT+4>>2]=0,o[w>>2]=o[zT>>2],o[w+4>>2]=o[zT+4>>2],$f(p,4117,w)|0,o[mN>>2]=15,o[mN+4>>2]=0,o[w>>2]=o[mN>>2],o[w+4>>2]=o[mN+4>>2],$f(p,4129,w)|0,o[Um>>2]=16,o[Um+4>>2]=0,o[w>>2]=o[Um>>2],o[w+4>>2]=o[Um+4>>2],$f(p,4148,w)|0,o[EE>>2]=17,o[EE+4>>2]=0,o[w>>2]=o[EE>>2],o[w+4>>2]=o[EE+4>>2],$f(p,4161,w)|0,o[GB>>2]=18,o[GB+4>>2]=0,o[w>>2]=o[GB>>2],o[w+4>>2]=o[GB+4>>2],$f(p,4181,w)|0,o[Iv>>2]=5,o[Iv+4>>2]=0,o[w>>2]=o[Iv>>2],o[w+4>>2]=o[Iv+4>>2],wl(p,4196,w)|0,o[xB>>2]=6,o[xB+4>>2]=0,o[w>>2]=o[xB>>2],o[w+4>>2]=o[xB+4>>2],wl(p,4206,w)|0,o[Fx>>2]=7,o[Fx+4>>2]=0,o[w>>2]=o[Fx>>2],o[w+4>>2]=o[Fx+4>>2],wl(p,4217,w)|0,o[fv>>2]=3,o[fv+4>>2]=0,o[w>>2]=o[fv>>2],o[w+4>>2]=o[fv+4>>2],j2(p,4235,w)|0,o[jT>>2]=1,o[jT+4>>2]=0,o[w>>2]=o[jT>>2],o[w+4>>2]=o[jT+4>>2],_x(p,4251,w)|0,o[d2>>2]=4,o[d2+4>>2]=0,o[w>>2]=o[d2>>2],o[w+4>>2]=o[d2+4>>2],j2(p,4263,w)|0,o[mf>>2]=5,o[mf+4>>2]=0,o[w>>2]=o[mf>>2],o[w+4>>2]=o[mf+4>>2],j2(p,4279,w)|0,o[aS>>2]=6,o[aS+4>>2]=0,o[w>>2]=o[aS>>2],o[w+4>>2]=o[aS+4>>2],j2(p,4293,w)|0,o[zL>>2]=7,o[zL+4>>2]=0,o[w>>2]=o[zL>>2],o[w+4>>2]=o[zL+4>>2],j2(p,4306,w)|0,o[jL>>2]=8,o[jL+4>>2]=0,o[w>>2]=o[jL>>2],o[w+4>>2]=o[jL+4>>2],j2(p,4323,w)|0,o[KT>>2]=9,o[KT+4>>2]=0,o[w>>2]=o[KT>>2],o[w+4>>2]=o[KT+4>>2],j2(p,4335,w)|0,o[Zw>>2]=2,o[Zw+4>>2]=0,o[w>>2]=o[Zw>>2],o[w+4>>2]=o[Zw+4>>2],_x(p,4353,w)|0,o[kF>>2]=12,o[kF+4>>2]=0,o[w>>2]=o[kF>>2],o[w+4>>2]=o[kF+4>>2],z2(p,4363,w)|0,o[mh>>2]=1,o[mh+4>>2]=0,o[w>>2]=o[mh>>2],o[w+4>>2]=o[mh+4>>2],tv(p,4376,w)|0,o[Fw>>2]=2,o[Fw+4>>2]=0,o[w>>2]=o[Fw>>2],o[w+4>>2]=o[Fw+4>>2],tv(p,4388,w)|0,o[$D>>2]=13,o[$D+4>>2]=0,o[w>>2]=o[$D>>2],o[w+4>>2]=o[$D+4>>2],z2(p,4402,w)|0,o[x_>>2]=14,o[x_+4>>2]=0,o[w>>2]=o[x_>>2],o[w+4>>2]=o[x_+4>>2],z2(p,4411,w)|0,o[nh>>2]=15,o[nh+4>>2]=0,o[w>>2]=o[nh>>2],o[w+4>>2]=o[nh+4>>2],z2(p,4421,w)|0,o[bE>>2]=16,o[bE+4>>2]=0,o[w>>2]=o[bE>>2],o[w+4>>2]=o[bE+4>>2],z2(p,4433,w)|0,o[w0>>2]=17,o[w0+4>>2]=0,o[w>>2]=o[w0>>2],o[w+4>>2]=o[w0+4>>2],z2(p,4446,w)|0,o[em>>2]=18,o[em+4>>2]=0,o[w>>2]=o[em>>2],o[w+4>>2]=o[em+4>>2],z2(p,4458,w)|0,o[wg>>2]=3,o[wg+4>>2]=0,o[w>>2]=o[wg>>2],o[w+4>>2]=o[wg+4>>2],tv(p,4471,w)|0,o[Dg>>2]=1,o[Dg+4>>2]=0,o[w>>2]=o[Dg>>2],o[w+4>>2]=o[Dg+4>>2],Yu(p,4486,w)|0,o[Bg>>2]=10,o[Bg+4>>2]=0,o[w>>2]=o[Bg>>2],o[w+4>>2]=o[Bg+4>>2],j2(p,4496,w)|0,o[Tc>>2]=11,o[Tc+4>>2]=0,o[w>>2]=o[Tc>>2],o[w+4>>2]=o[Tc+4>>2],j2(p,4508,w)|0,o[fl>>2]=3,o[fl+4>>2]=0,o[w>>2]=o[fl>>2],o[w+4>>2]=o[fl+4>>2],_x(p,4519,w)|0,o[uu>>2]=4,o[uu+4>>2]=0,o[w>>2]=o[uu>>2],o[w+4>>2]=o[uu+4>>2],qO(p,4530,w)|0,o[hl>>2]=19,o[hl+4>>2]=0,o[w>>2]=o[hl>>2],o[w+4>>2]=o[hl+4>>2],hB(p,4542,w)|0,o[pi>>2]=12,o[pi+4>>2]=0,o[w>>2]=o[pi>>2],o[w+4>>2]=o[pi+4>>2],mw(p,4554,w)|0,o[ss>>2]=13,o[ss+4>>2]=0,o[w>>2]=o[ss>>2],o[w+4>>2]=o[ss+4>>2],AF(p,4568,w)|0,o[So>>2]=2,o[So+4>>2]=0,o[w>>2]=o[So>>2],o[w+4>>2]=o[So+4>>2],$O(p,4578,w)|0,o[Si>>2]=20,o[Si+4>>2]=0,o[w>>2]=o[Si>>2],o[w+4>>2]=o[Si+4>>2],iY(p,4587,w)|0,o[Ds>>2]=22,o[Ds+4>>2]=0,o[w>>2]=o[Ds>>2],o[w+4>>2]=o[Ds+4>>2],dc(p,4602,w)|0,o[Un>>2]=23,o[Un+4>>2]=0,o[w>>2]=o[Un>>2],o[w+4>>2]=o[Un+4>>2],dc(p,4619,w)|0,o[zi>>2]=14,o[zi+4>>2]=0,o[w>>2]=o[zi>>2],o[w+4>>2]=o[zi+4>>2],LT(p,4629,w)|0,o[Ks>>2]=1,o[Ks+4>>2]=0,o[w>>2]=o[Ks>>2],o[w+4>>2]=o[Ks+4>>2],GD(p,4637,w)|0,o[an>>2]=4,o[an+4>>2]=0,o[w>>2]=o[an>>2],o[w+4>>2]=o[an+4>>2],tv(p,4653,w)|0,o[rr>>2]=5,o[rr+4>>2]=0,o[w>>2]=o[rr>>2],o[w+4>>2]=o[rr+4>>2],tv(p,4669,w)|0,o[It>>2]=6,o[It+4>>2]=0,o[w>>2]=o[It>>2],o[w+4>>2]=o[It+4>>2],tv(p,4686,w)|0,o[bt>>2]=7,o[bt+4>>2]=0,o[w>>2]=o[bt>>2],o[w+4>>2]=o[bt+4>>2],tv(p,4701,w)|0,o[Xe>>2]=8,o[Xe+4>>2]=0,o[w>>2]=o[Xe>>2],o[w+4>>2]=o[Xe+4>>2],tv(p,4719,w)|0,o[Ge>>2]=9,o[Ge+4>>2]=0,o[w>>2]=o[Ge>>2],o[w+4>>2]=o[Ge+4>>2],tv(p,4736,w)|0,o[le>>2]=21,o[le+4>>2]=0,o[w>>2]=o[le>>2],o[w+4>>2]=o[le+4>>2],dF(p,4754,w)|0,o[U>>2]=2,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],Yu(p,4772,w)|0,o[J>>2]=3,o[J+4>>2]=0,o[w>>2]=o[J>>2],o[w+4>>2]=o[J+4>>2],Yu(p,4790,w)|0,o[G>>2]=4,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],Yu(p,4808,w)|0,B=y}function Ci(p,y){p=p|0,y=y|0;var w=0;w=lVt()|0,o[p>>2]=w,uZe(w,y),BF(o[p>>2]|0)}function Po(p,y,w){return p=p|0,y=y|0,w=w|0,Jge(p,ff(y)|0,w,0),p|0}function ec(p,y,w){return p=p|0,y=y|0,w=w|0,Yge(p,ff(y)|0,w,0),p|0}function Ra(p,y,w){return p=p|0,y=y|0,w=w|0,A1(p,ff(y)|0,w,0),p|0}function dc(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],$Fe(p,y,J),B=G,p|0}function Iu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],OT(p,y,J),B=G,p|0}function Cl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],ie(p,y,J),B=G,p|0}function wl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],IP(p,y,J),B=G,p|0}function $f(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Yre(p,y,J),B=G,p|0}function j2(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],mF(p,y,J),B=G,p|0}function _x(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vY(p,y,J),B=G,p|0}function z2(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],qu(p,y,J),B=G,p|0}function tv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],WT(p,y,J),B=G,p|0}function Yu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vJ(p,y,J),B=G,p|0}function qO(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Db(p,y,J),B=G,p|0}function hB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],yJ(p,y,J),B=G,p|0}function mw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],nye(p,y,J),B=G,p|0}function AF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],sge(p,y,J),B=G,p|0}function $O(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],gY(p,y,J),B=G,p|0}function iY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],a1(p,y,J),B=G,p|0}function LT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vL(p,y,J),B=G,p|0}function GD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],ad(p,y,J),B=G,p|0}function dF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],EL(p,y,J),B=G,p|0}function EL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],FD(p,w,J,1),B=G}function ff(p){return p=p|0,p|0}function FD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=fE()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=n2(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,mB(U,G)|0,G),B=J}function fE(){var p=0,y=0;if(n[7616]|0||(Jt(9136),pu(24,9136,X|0)|0,y=7616,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9136)|0)){p=9136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jt(9136)}return 9136}function n2(p){return p=p|0,0}function mB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=fE()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],iy(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(sY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function bd(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0;le=B,B=B+32|0,an=le+24|0,rr=le+20|0,Xe=le+16|0,It=le+12|0,bt=le+8|0,Ge=le+4|0,Ks=le,o[rr>>2]=y,o[Xe>>2]=w,o[It>>2]=G,o[bt>>2]=J,o[Ge>>2]=U,U=p+28|0,o[Ks>>2]=o[U>>2],o[an>>2]=o[Ks>>2],s1(p+24|0,an,rr,It,bt,Xe,Ge)|0,o[U>>2]=o[o[U>>2]>>2],B=le}function s1(p,y,w,G,J,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,p=Uh(y)|0,y=Ku(24)|0,wb(y+4|0,o[w>>2]|0,o[G>>2]|0,o[J>>2]|0,o[U>>2]|0,o[le>>2]|0),o[y>>2]=o[p>>2],o[p>>2]=y,y|0}function Uh(p){return p=p|0,o[p>>2]|0}function wb(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=J,o[p+16>>2]=U}function Uu(p,y){return p=p|0,y=y|0,y|p|0}function iy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function sY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=oY(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,jR(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],iy(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,aY(p,Ge),tt(Ge),B=bt;return}}function oY(p){return p=p|0,357913941}function jR(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function aY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Jt(p){p=p|0,Is(p)}function kr(p){p=p|0,ui(p+24|0)}function Xr(p){return p=p|0,o[p>>2]|0}function ui(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Is(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,Rs()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hs(){return 9228}function Rs(){return 1140}function ja(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=sl(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=Nd(y,G)|0,B=w,y|0}function ho(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=J,o[p+16>>2]=U}function sl(p){return p=p|0,(o[(fE()|0)+24>>2]|0)+(p*12|0)|0}function Nd(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+48|0,G=J,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),qD[w&31](G,p),G=ed(G)|0,B=J,G|0}function ed(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(Og()|0)|0,G?(o1(y,G),Tb(w,y),q2(p,w),p=IE(y)|0):p=zR(p)|0,B=J,p|0}function Og(){var p=0;return n[7632]|0||(ye(9184),pu(25,9184,X|0)|0,p=7632,o[p>>2]=1,o[p+4>>2]=0),9184}function Nh(p){return p=p|0,o[p+36>>2]|0}function o1(p,y){p=p|0,y=y|0,o[p>>2]=y,o[p+4>>2]=p,o[p+8>>2]=0}function Tb(p,y){p=p|0,y=y|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=0}function q2(p,y){p=p|0,y=y|0,wA(y,p,p+8|0,p+16|0,p+24|0,p+32|0,p+40|0)|0}function IE(p){return p=p|0,o[(o[p+4>>2]|0)+8>>2]|0}function zR(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;Xe=B,B=B+16|0,w=Xe+4|0,G=Xe,J=Fb(8)|0,U=J,le=Ku(48)|0,Ge=le,y=Ge+48|0;do o[Ge>>2]=o[p>>2],Ge=Ge+4|0,p=p+4|0;while((Ge|0)<(y|0));return y=U+4|0,o[y>>2]=le,Ge=Ku(8)|0,le=o[y>>2]|0,o[G>>2]=0,o[w>>2]=o[G>>2],e3(Ge,le,w),o[J>>2]=Ge,B=Xe,U|0}function e3(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1092,o[w+12>>2]=y,o[p+4>>2]=w}function IA(p){p=p|0,dz(p),ti(p)}function EI(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function zd(p){p=p|0,ti(p)}function wA(p,y,w,G,J,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,U=qR(o[p>>2]|0,y,w,G,J,U,le)|0,le=p+4|0,o[(o[le>>2]|0)+8>>2]=U,o[(o[le>>2]|0)+8>>2]|0}function qR(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0;var Ge=0,Xe=0;return Ge=B,B=B+16|0,Xe=Ge,xw(Xe),p=qf(p)|0,le=sy(p,+C[y>>3],+C[w>>3],+C[G>>3],+C[J>>3],+C[U>>3],+C[le>>3])|0,oS(Xe),B=Ge,le|0}function sy(p,y,w,G,J,U,le){p=p|0,y=+y,w=+w,G=+G,J=+J,U=+U,le=+le;var Ge=0;return Ge=Sb($2()|0)|0,y=+mp(y),w=+mp(w),G=+mp(G),J=+mp(J),U=+mp(U),Ps(0,Ge|0,p|0,+y,+w,+G,+J,+U,+ +mp(le))|0}function $2(){var p=0;return n[7624]|0||(Eo(9172),p=7624,o[p>>2]=1,o[p+4>>2]=0),9172}function Eo(p){p=p|0,Ny(p,z()|0,6)}function z(){return 1112}function ye(p){p=p|0,Hc(p)}function Ve(p){p=p|0,Ct(p+24|0),wr(p+16|0)}function Ct(p){p=p|0,Lo(p)}function wr(p){p=p|0,ai(p)}function ai(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Lo(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Hc(p){p=p|0;var y=0;o[p+16>>2]=0,o[p+20>>2]=0,y=p+24|0,o[y>>2]=0,o[p+28>>2]=y,o[p+36>>2]=0,n[p+40>>0]=0,n[p+41>>0]=0}function ad(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],dm(p,w,J,0),B=G}function dm(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=rv()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=nv(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yx(U,G)|0,G),B=J}function rv(){var p=0,y=0;if(n[7640]|0||(Vo(9232),pu(26,9232,X|0)|0,y=7640,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9232)|0)){p=9232,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Vo(9232)}return 9232}function nv(p){return p=p|0,0}function yx(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=rv()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Dd(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(ji(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Dd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function ji(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=SL(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,$l(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Dd(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Ap(p,Ge),Bc(Ge),B=bt;return}}function SL(p){return p=p|0,357913941}function $l(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Ap(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bc(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Vo(p){p=p|0,J6(p)}function iv(p){p=p|0,nf(p+24|0)}function nf(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function J6(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,cY()|0,3),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cY(){return 1144}function t3(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,le=U+8|0,Ge=U,Xe=pF(p)|0,p=o[Xe+4>>2]|0,o[Ge>>2]=o[Xe>>2],o[Ge+4>>2]=p,o[le>>2]=o[Ge>>2],o[le+4>>2]=o[Ge+4>>2],rh(y,le,w,G,J),B=U}function pF(p){return p=p|0,(o[(rv()|0)+24>>2]|0)+(p*12|0)|0}function rh(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;bt=B,B=B+16|0,le=bt+2|0,Ge=bt+1|0,Xe=bt,U=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(U=o[(o[p>>2]|0)+U>>2]|0),Cw(le,w),w=+Il(le,w),Cw(Ge,G),G=+Il(Ge,G),CB(Xe,J),Xe=Rb(Xe,J)|0,eQ[U&1](p,w,G,Xe),B=bt}function Cw(p,y){p=p|0,y=+y}function Il(p,y){return p=p|0,y=+y,+ +Cre(y)}function CB(p,y){p=p|0,y=y|0}function Rb(p,y){return p=p|0,y=y|0,$R(y)|0}function $R(p){return p=p|0,p|0}function Cre(p){return p=+p,+p}function vL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],uJ(p,w,J,1),B=G}function uJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=lY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=r3(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,U6(U,G)|0,G),B=J}function lY(){var p=0,y=0;if(n[7648]|0||(Es(9268),pu(27,9268,X|0)|0,y=7648,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9268)|0)){p=9268,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Es(9268)}return 9268}function r3(p){return p=p|0,0}function U6(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=lY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],gJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(K6(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function gJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function K6(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=uY(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,bx(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],gJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,_re(p,Ge),Ex(Ge),B=bt;return}}function uY(p){return p=p|0,357913941}function bx(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function _re(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Ex(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Es(p){p=p|0,Ua(p)}function Aa(p){p=p|0,ha(p+24|0)}function ha(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ua(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,wc()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function wc(){return 1160}function hA(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=Pd(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=Kh(y,G)|0,B=w,y|0}function Pd(p){return p=p|0,(o[(lY()|0)+24>>2]|0)+(p*12|0)|0}function Kh(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),i2(mC[w&31](p)|0)|0}function i2(p){return p=p|0,p&1|0}function a1(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Nb(p,w,J,0),B=G}function Nb(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sv()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=oP(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,fF(U,G)|0,G),B=J}function sv(){var p=0,y=0;if(n[7656]|0||(dJ(9304),pu(28,9304,X|0)|0,y=7656,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9304)|0)){p=9304,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));dJ(9304)}return 9304}function oP(p){return p=p|0,0}function fF(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sv()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],ov(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(eN(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function ov(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function eN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=AJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,j6(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ov(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sx(p,Ge),c1(Ge),B=bt;return}}function AJ(p){return p=p|0,357913941}function j6(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sx(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c1(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function dJ(p){p=p|0,UFe(p)}function rye(p){p=p|0,pJ(p+24|0)}function pJ(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function UFe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,ZD()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ZD(){return 1164}function n3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=_w(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],fJ(y,J,w),B=G}function _w(p){return p=p|0,(o[(sv()|0)+24>>2]|0)+(p*12|0)|0}function fJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vx(J,w),w=IF(J,w)|0,qD[G&31](p,w),_B(J),B=U}function vx(p,y){p=p|0,y=y|0,GC(p,y)}function IF(p,y){return p=p|0,y=y|0,p|0}function _B(p){p=p|0,yb(p)}function GC(p,y){p=p|0,y=y|0,aP(p,y)}function aP(p,y){p=p|0,y=y|0,o[p>>2]=y}function gY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],i3(p,w,J,0),B=G}function i3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=IJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=s2(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,o2(U,G)|0,G),B=J}function IJ(){var p=0,y=0;if(n[7664]|0||(BL(9340),pu(29,9340,X|0)|0,y=7664,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9340)|0)){p=9340,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));BL(9340)}return 9340}function s2(p){return p=p|0,0}function o2(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=IJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],hJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(AY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function hJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function AY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=yre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dY(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],hJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,z6(p,Ge),q6(Ge),B=bt;return}}function yre(p){return p=p|0,357913941}function dY(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function z6(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function q6(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function BL(p){p=p|0,wL(p)}function tN(p){p=p|0,pY(p+24|0)}function pY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function wL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,bre()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bre(){return 1180}function LD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=ige(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=$6(y,J,w)|0,B=G,w|0}function ige(p){return p=p|0,(o[(IJ()|0)+24>>2]|0)+(p*12|0)|0}function $6(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),eS(J,w),J=rN(J,w)|0,J=mJ(uie[G&15](p,J)|0)|0,B=U,J|0}function eS(p,y){p=p|0,y=y|0}function rN(p,y){return p=p|0,y=y|0,nN(y)|0}function mJ(p){return p=p|0,p|0}function nN(p){return p=p|0,p|0}function sge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Ere(p,w,J,0),B=G}function Ere(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=e7()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=kp(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,TL(U,G)|0,G),B=J}function e7(){var p=0,y=0;if(n[7672]|0||(Ig(9376),pu(30,9376,X|0)|0,y=7672,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9376)|0)){p=9376,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Ig(9376)}return 9376}function kp(p){return p=p|0,0}function TL(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=e7()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],fY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(pC(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function fY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function pC(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=cP(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,VD(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],fY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,IY(p,Ge),Sre(Ge),B=bt;return}}function cP(p){return p=p|0,357913941}function VD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function IY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Sre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Ig(p){p=p|0,RL(p)}function fC(p){p=p|0,VI(p+24|0)}function VI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function RL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,bu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bu(){return 1196}function s3(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=kd(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=hY(y,G)|0,B=w,y|0}function kd(p){return p=p|0,(o[(e7()|0)+24>>2]|0)+(p*12|0)|0}function hY(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),mJ(mC[w&31](p)|0)|0}function nye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],lP(p,w,J,1),B=G}function lP(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=CJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=PI(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,xa(U,G)|0,G),B=J}function CJ(){var p=0,y=0;if(n[7680]|0||(mY(9412),pu(31,9412,X|0)|0,y=7680,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9412)|0)){p=9412,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));mY(9412)}return 9412}function PI(p){return p=p|0,0}function xa(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=CJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],yB(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(t0(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function yB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function t0(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=vre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,NL(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],yB(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,dp(p,Ge),Bx(Ge),B=bt;return}}function vre(p){return p=p|0,357913941}function NL(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function dp(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function mY(p){p=p|0,oge(p)}function yw(p){p=p|0,uc(p+24|0)}function uc(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nu(){return 1200}function CY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=o3(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=uP(y,G)|0,B=w,y|0}function o3(p){return p=p|0,(o[(CJ()|0)+24>>2]|0)+(p*12|0)|0}function uP(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),_J(mC[w&31](p)|0)|0}function _J(p){return p=p|0,p|0}function yJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bJ(p,w,J,0),B=G}function bJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=gP()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Bre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,EJ(U,G)|0,G),B=J}function gP(){var p=0,y=0;if(n[7688]|0||(D_(9448),pu(32,9448,X|0)|0,y=7688,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9448)|0)){p=9448,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));D_(9448)}return 9448}function Bre(p){return p=p|0,0}function EJ(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=gP()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],wre(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(SJ(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function wre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function SJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,hF(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],wre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,av(p,Ge),AP(Ge),B=bt;return}}function Tre(p){return p=p|0,357913941}function hF(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function av(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function AP(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function D_(p){p=p|0,sye(p)}function iye(p){p=p|0,Rre(p+24|0)}function Rre(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function sye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,iN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function iN(){return 1204}function age(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=un(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],_Y(y,J,w),B=G}function un(p){return p=p|0,(o[(gP()|0)+24>>2]|0)+(p*12|0)|0}function _Y(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Ed(J,w),J=VT(J,w)|0,qD[G&31](p,J),B=U}function Ed(p,y){p=p|0,y=y|0}function VT(p,y){return p=p|0,y=y|0,sN(y)|0}function sN(p){return p=p|0,p|0}function Db(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],t7(p,w,J,0),B=G}function t7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=PT()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=DL(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,r7(U,G)|0,G),B=J}function PT(){var p=0,y=0;if(n[7696]|0||(a3(9484),pu(33,9484,X|0)|0,y=7696,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9484)|0)){p=9484,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));a3(9484)}return 9484}function DL(p){return p=p|0,0}function r7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=PT()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],n7(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(hE(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function n7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function hE(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=cge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Nre(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],n7(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,oye(p,Ge),wx(Ge),B=bt;return}}function cge(p){return p=p|0,357913941}function Nre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function oye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function wx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function a3(p){p=p|0,CE(p)}function mE(p){p=p|0,WI(p+24|0)}function WI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function CE(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,Dre()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Dre(){return 1212}function lge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=jh(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],uge(y,U,w,G),B=J}function jh(p){return p=p|0,(o[(PT()|0)+24>>2]|0)+(p*12|0)|0}function uge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),Ed(U,w),U=VT(U,w)|0,eS(le,G),le=rN(le,G)|0,UT[J&15](p,U,le),B=Ge}function vJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Lc(p,w,J,1),B=G}function Lc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=gge()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=kre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yY(U,G)|0,G),B=J}function gge(){var p=0,y=0;if(n[7704]|0||(RJ(9520),pu(34,9520,X|0)|0,y=7704,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9520)|0)){p=9520,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));RJ(9520)}return 9520}function kre(p){return p=p|0,0}function yY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=gge()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],kL(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(BJ(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function kL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function BJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=wJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,TJ(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kL(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,eI(p,Ge),c3(Ge),B=bt;return}}function wJ(p){return p=p|0,357913941}function TJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function eI(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c3(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function RJ(p){p=p|0,u3(p)}function l3(p){p=p|0,i7(p+24|0)}function i7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function u3(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,cv()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cv(){return 1224}function bB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;return J=B,B=B+16|0,U=J+8|0,le=J,Ge=Xm(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],G=+If(y,U,w),B=J,+G}function Xm(p){return p=p|0,(o[(gge()|0)+24>>2]|0)+(p*12|0)|0}function If(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,le=+Id(+rEe[G&7](p,J)),B=U,+le}function WT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],l1(p,w,J,1),B=G}function l1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=bY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=s7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,IC(U,G)|0,G),B=J}function bY(){var p=0,y=0;if(n[7712]|0||(Fre(9556),pu(35,9556,X|0)|0,y=7712,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9556)|0)){p=9556,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Fre(9556)}return 9556}function s7(p){return p=p|0,0}function IC(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=bY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],xre(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(mA(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function xre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function mA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tx(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Gre(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],xre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,EB(p,Ge),aye(Ge),B=bt;return}}function Tx(p){return p=p|0,357913941}function Gre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function EB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function aye(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Fre(p){p=p|0,EY(p)}function Zre(p){p=p|0,PD(p+24|0)}function PD(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function EY(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,Lre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Lre(){return 1232}function Age(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=Cp(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=+dge(y,J),B=G,+w}function Cp(p){return p=p|0,(o[(bY()|0)+24>>2]|0)+(p*12|0)|0}function dge(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),+ +Id(+GP[w&15](p))}function qu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bw(p,w,J,1),B=G}function bw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=WD()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=o7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,pge(U,G)|0,G),B=J}function WD(){var p=0,y=0;if(n[7720]|0||(SB(9592),pu(36,9592,X|0)|0,y=7720,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9592)|0)){p=9592,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));SB(9592)}return 9592}function o7(p){return p=p|0,0}function pge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=WD()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],NJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(KFe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function NJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function KFe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=fge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,S0(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Ew(p,Ge),Dh(Ge),B=bt;return}}function fge(p){return p=p|0,357913941}function S0(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Ew(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Dh(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function SB(p){p=p|0,DJ(p)}function a7(p){p=p|0,dP(p+24|0)}function dP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function DJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,Vre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Vre(){return 1276}function Ige(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=xL(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=c7(y,G)|0,B=w,y|0}function xL(p){return p=p|0,(o[(WD()|0)+24>>2]|0)+(p*12|0)|0}function c7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+16|0,G=J,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),qD[w&31](G,p),G=kJ(G)|0,B=J,G|0}function kJ(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(l7()|0)|0,G?(o1(y,G),Tb(w,y),cye(p,w),p=IE(y)|0):p=xJ(p)|0,B=J,p|0}function l7(){var p=0;return n[7736]|0||(Cge(9640),pu(25,9640,X|0)|0,p=7736,o[p>>2]=1,o[p+4>>2]=0),9640}function cye(p,y){p=p|0,y=y|0,GJ(y,p,p+8|0)|0}function xJ(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(16)|0,o[Ge>>2]=o[p>>2],o[Ge+4>>2]=o[p+4>>2],o[Ge+8>>2]=o[p+8>>2],o[Ge+12>>2]=o[p+12>>2],U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],oN(p,U,J),o[G>>2]=p,B=w,y|0}function oN(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1244,o[w+12>>2]=y,o[p+4>>2]=w}function hge(p){p=p|0,dz(p),ti(p)}function Pre(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function pP(p){p=p|0,ti(p)}function GJ(p,y,w){return p=p|0,y=y|0,w=w|0,y=ms(o[p>>2]|0,y,w)|0,w=p+4|0,o[(o[w>>2]|0)+8>>2]=y,o[(o[w>>2]|0)+8>>2]|0}function ms(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;return G=B,B=B+16|0,J=G,xw(J),p=qf(p)|0,w=FJ(p,o[y>>2]|0,+C[w>>3])|0,oS(J),B=G,w|0}function FJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0;return G=Sb(SY()|0)|0,y=r2(y)|0,Xa(0,G|0,p|0,y|0,+ +mp(w))|0}function SY(){var p=0;return n[7728]|0||(mge(9628),p=7728,o[p>>2]=1,o[p+4>>2]=0),9628}function mge(p){p=p|0,Ny(p,OD()|0,2)}function OD(){return 1264}function Cge(p){p=p|0,Hc(p)}function vY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],u7(p,w,J,1),B=G}function u7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sf()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=u1(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,_ge(U,G)|0,G),B=J}function sf(){var p=0,y=0;if(n[7744]|0||(yge(9684),pu(37,9684,X|0)|0,y=7744,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9684)|0)){p=9684,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));yge(9684)}return 9684}function u1(p){return p=p|0,0}function _ge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sf()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],BY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(lye(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function BY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function lye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=uye(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,gye(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],BY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sw(p,Ge),Wre(Ge),B=bt;return}}function uye(p){return p=p|0,357913941}function gye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Wre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function yge(p){p=p|0,g7(p)}function FL(p){p=p|0,Ore(p+24|0)}function Ore(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function g7(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,bge()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bge(){return 1280}function MD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=Mre(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=Ege(y,J,w)|0,B=G,w|0}function Mre(p){return p=p|0,(o[(sf()|0)+24>>2]|0)+(p*12|0)|0}function Ege(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return le=B,B=B+32|0,J=le,U=le+16|0,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(U,w),U=Rb(U,w)|0,UT[G&15](J,p,U),U=kJ(J)|0,B=le,U|0}function mF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],jFe(p,w,J,1),B=G}function jFe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=wY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=HD(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,CF(U,G)|0,G),B=J}function wY(){var p=0,y=0;if(n[7752]|0||(g1(9720),pu(38,9720,X|0)|0,y=7752,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9720)|0)){p=9720,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));g1(9720)}return 9720}function HD(p){return p=p|0,0}function CF(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=wY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],lv(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(TY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function lv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function TY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=xp(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Aye(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],lv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,fP(p,Ge),tA(Ge),B=bt;return}}function xp(p){return p=p|0,357913941}function Aye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function fP(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tA(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function g1(p){p=p|0,Sge(p)}function Hre(p){p=p|0,A7(p+24|0)}function A7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Sge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,zFe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zFe(){return 1288}function vge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=vw(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=ZJ(y,G)|0,B=w,y|0}function vw(p){return p=p|0,(o[(wY()|0)+24>>2]|0)+(p*12|0)|0}function ZJ(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),Z(mC[w&31](p)|0)|0}function Yre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],s_(p,w,J,0),B=G}function s_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=RY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Qre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Bge(U,G)|0,G),B=J}function RY(){var p=0,y=0;if(n[7760]|0||(LJ(9756),pu(39,9756,X|0)|0,y=7760,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9756)|0)){p=9756,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));LJ(9756)}return 9756}function Qre(p){return p=p|0,0}function Bge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=RY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],NY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(wge(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function NY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function wge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,vB(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,_F(p,Ge),Xre(Ge),B=bt;return}}function Tge(p){return p=p|0,357913941}function vB(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function _F(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Xre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function LJ(p){p=p|0,Jre(p)}function qFe(p){p=p|0,g3(p+24|0)}function g3(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Jre(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,VJ()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function VJ(){return 1292}function PJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=Ure(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Kre(y,J,w),B=G}function Ure(p){return p=p|0,(o[(RY()|0)+24>>2]|0)+(p*12|0)|0}function Kre(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Cw(J,w),w=+Il(J,w),l$e[G&31](p,w),B=U}function IP(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Rge(p,w,J,0),B=G}function Rge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=d7()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=p7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Nge(U,G)|0,G),B=J}function d7(){var p=0,y=0;if(n[7768]|0||(kY(9792),pu(40,9792,X|0)|0,y=7768,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9792)|0)){p=9792,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));kY(9792)}return 9792}function p7(p){return p=p|0,0}function Nge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=d7()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],DY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(f7(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function DY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function f7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=tS(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Dge(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],DY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Wd(p,Ge),kge(Ge),B=bt;return}}function tS(p){return p=p|0,357913941}function Dge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Wd(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function kY(p){p=p|0,oy(p)}function xY(p){p=p|0,hP(p+24|0)}function hP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oy(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,mo()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function mo(){return 1300}function A3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=_E(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Bw(y,U,w,G),B=J}function _E(p){return p=p|0,(o[(d7()|0)+24>>2]|0)+(p*12|0)|0}function Bw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),CB(U,w),U=Rb(U,w)|0,Cw(le,G),G=+Il(le,G),Aie[J&15](p,U,G),B=Ge}function ie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],he(p,w,J,0),B=G}function he(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=ze()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Ut(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Qr(U,G)|0,G),B=J}function ze(){var p=0,y=0;if(n[7776]|0||(fc(9828),pu(41,9828,X|0)|0,y=7776,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9828)|0)){p=9828,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));fc(9828)}return 9828}function Ut(p){return p=p|0,0}function Qr(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=ze()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],kn(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Fi(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function kn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Fi(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=rs(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,qs(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kn(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,vc(p,Ge),qa(Ge),B=bt;return}}function rs(p){return p=p|0,357913941}function qs(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function vc(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function qa(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function fc(p){p=p|0,VA(p)}function vl(p){p=p|0,Zu(p+24|0)}function Zu(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function VA(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,hf()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function hf(){return 1312}function Sd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=tI(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],rI(y,J,w),B=G}function tI(p){return p=p|0,(o[(ze()|0)+24>>2]|0)+(p*12|0)|0}function rI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,qD[G&31](p,J),B=U}function OT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],rS(p,w,J,0),B=G}function rS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Dy()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Up(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,uv(U,G)|0,G),B=J}function Dy(){var p=0,y=0;if(n[7784]|0||(Fge(9864),pu(42,9864,X|0)|0,y=7784,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9864)|0)){p=9864,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Fge(9864)}return 9864}function Up(p){return p=p|0,0}function uv(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Dy()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],ky(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(nS(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function ky(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function nS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=jre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,xge(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ky(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,tVt(p,Ge),Gge(Ge),B=bt;return}}function jre(p){return p=p|0,357913941}function xge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function tVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Gge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Fge(p){p=p|0,nVt(p)}function dye(p){p=p|0,rVt(p+24|0)}function rVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function nVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,iVt()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function iVt(){return 1320}function sVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=oVt(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],aVt(y,J,w),B=G}function oVt(p){return p=p|0,(o[(Dy()|0)+24>>2]|0)+(p*12|0)|0}function aVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),ww(J,w),J=fqe(J,w)|0,qD[G&31](p,J),B=U}function ww(p,y){p=p|0,y=y|0}function fqe(p,y){return p=p|0,y=y|0,yF(y)|0}function yF(p){return p=p|0,p|0}function $Fe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],pye(p,w,J,0),B=G}function pye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Zge()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=I7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,h7(U,G)|0,G),B=J}function Zge(){var p=0,y=0;if(n[7792]|0||(a2(9900),pu(43,9900,X|0)|0,y=7792,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9900)|0)){p=9900,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));a2(9900)}return 9900}function I7(p){return p=p|0,0}function h7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Zge()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],fye(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Lge(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function fye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Lge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=eZe(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,tZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],fye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Iye(p,Ge),mP(Ge),B=bt;return}}function eZe(p){return p=p|0,357913941}function tZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Iye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function mP(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function a2(p){p=p|0,nZe(p)}function Vge(p){p=p|0,rZe(p+24|0)}function rZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function nZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,22,y,WJ()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function WJ(){return 1344}function m7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;w=B,B=B+16|0,G=w+8|0,J=w,U=Pge(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],zre(y,G),B=w}function Pge(p){return p=p|0,(o[(Zge()|0)+24>>2]|0)+(p*12|0)|0}function zre(p,y){p=p|0,y=y|0;var w=0;w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),DF[w&127](p)}function A1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=Wge()|0,p=hC(w)|0,bd(U,y,J,p,iZe(w,G)|0,G)}function Wge(){var p=0,y=0;if(n[7800]|0||(C7(9936),pu(44,9936,X|0)|0,y=7800,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9936)|0)){p=9936,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));C7(9936)}return 9936}function hC(p){return p=p|0,p|0}function iZe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=Wge()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(qre(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Oge(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function qre(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Oge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=r0(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,sZe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,qre(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Mge(p,J),oZe(J),B=Ge;return}}function r0(p){return p=p|0,536870911}function sZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Mge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function oZe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function C7(p){p=p|0,$re(p)}function ZL(p){p=p|0,xy(p+24|0)}function xy(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function $re(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,23,y,iN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hge(p,y){p=p|0,y=y|0,ene(o[(aZe(p)|0)>>2]|0,y)}function aZe(p){return p=p|0,(o[(Wge()|0)+24>>2]|0)+(p<<3)|0}function ene(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Ed(G,y),y=VT(G,y)|0,DF[p&127](y),B=w}function Yge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=OJ()|0,p=MJ(w)|0,bd(U,y,J,p,tne(w,G)|0,G)}function OJ(){var p=0,y=0;if(n[7808]|0||(rne(9972),pu(45,9972,X|0)|0,y=7808,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9972)|0)){p=9972,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));rne(9972)}return 9972}function MJ(p){return p=p|0,p|0}function tne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=OJ()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(HJ(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Rx(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function HJ(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Rx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=hye(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,mye(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,HJ(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,YJ(p,J),MT(J),B=Ge;return}}function hye(p){return p=p|0,536870911}function mye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function YJ(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function MT(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function rne(p){p=p|0,LL(p)}function Qge(p){p=p|0,cZe(p+24|0)}function cZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function LL(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,9,y,_7()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function _7(){return 1348}function Cye(p,y){return p=p|0,y=y|0,aN(o[(d3(p)|0)>>2]|0,y)|0}function d3(p){return p=p|0,(o[(OJ()|0)+24>>2]|0)+(p<<3)|0}function aN(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,n0(G,y),y=wo(G,y)|0,y=mJ(mC[p&31](y)|0)|0,B=w,y|0}function n0(p,y){p=p|0,y=y|0}function wo(p,y){return p=p|0,y=y|0,Xge(y)|0}function Xge(p){return p=p|0,p|0}function Jge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=GY()|0,p=Uge(w)|0,bd(U,y,J,p,ay(w,G)|0,G)}function GY(){var p=0,y=0;if(n[7816]|0||(sne(10008),pu(46,10008,X|0)|0,y=7816,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10008)|0)){p=10008,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));sne(10008)}return 10008}function Uge(p){return p=p|0,p|0}function ay(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=GY()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(y7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(CP(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function y7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function CP(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=lZe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,Iqe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,y7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,nne(p,J),ine(J),B=Ge;return}}function lZe(p){return p=p|0,536870911}function Iqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function nne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ine(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function sne(p){p=p|0,E7(p)}function b7(p){p=p|0,one(p+24|0)}function one(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function E7(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,15,y,bu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cVt(p){return p=p|0,VL(o[(FY(p)|0)>>2]|0)|0}function FY(p){return p=p|0,(o[(GY()|0)+24>>2]|0)+(p<<3)|0}function VL(p){return p=p|0,mJ(mz[p&7]()|0)|0}function lVt(){var p=0;return n[7832]|0||(gZe(10052),pu(25,10052,X|0)|0,p=7832,o[p>>2]=1,o[p+4>>2]=0),10052}function uZe(p,y){p=p|0,y=y|0,o[p>>2]=_ye()|0,o[p+4>>2]=QJ()|0,o[p+12>>2]=y,o[p+8>>2]=ane()|0,o[p+32>>2]=2}function _ye(){return 11709}function QJ(){return 1188}function ane(){return nI()|0}function p3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(cN(w),ti(w)):y|0&&(xT(y),ti(y))}function _P(p,y){return p=p|0,y=y|0,y&p|0}function cN(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function nI(){var p=0;return n[7824]|0||(o[2511]=f3()|0,o[2512]=0,p=7824,o[p>>2]=1,o[p+4>>2]=0),10044}function f3(){return 0}function gZe(p){p=p|0,Hc(p)}function yye(p){p=p|0;var y=0,w=0,G=0,J=0,U=0;y=B,B=B+32|0,w=y+24|0,U=y+16|0,J=y+8|0,G=y,yP(p,4827),Kge(p,4834,3)|0,I3(p,3682,47)|0,o[U>>2]=9,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],cne(p,4841,w)|0,o[J>>2]=1,o[J+4>>2]=0,o[w>>2]=o[J>>2],o[w+4>>2]=o[J+4>>2],uVt(p,4871,w)|0,o[G>>2]=10,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],gVt(p,4891,w)|0,B=y}function yP(p,y){p=p|0,y=y|0;var w=0;w=HL()|0,o[p>>2]=w,Rw(w,y),BF(o[p>>2]|0)}function Kge(p,y,w){return p=p|0,y=y|0,w=w|0,bZe(p,ff(y)|0,w,0),p|0}function I3(p,y,w){return p=p|0,y=y|0,w=w|0,Ine(p,ff(y)|0,w,0),p|0}function cne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],hZe(p,y,J),B=G,p|0}function uVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],iS(p,y,J),B=G,p|0}function gVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],jge(p,y,J),B=G,p|0}function jge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],YD(p,w,J,1),B=G}function YD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=XJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=bye(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,lne(U,G)|0,G),B=J}function XJ(){var p=0,y=0;if(n[7840]|0||(B7(10100),pu(48,10100,X|0)|0,y=7840,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10100)|0)){p=10100,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));B7(10100)}return 10100}function bye(p){return p=p|0,0}function lne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=XJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Eye(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(S7(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Eye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function S7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=AZe(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Eye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,ZY(p,Ge),v7(Ge),B=bt;return}}function AZe(p){return p=p|0,357913941}function dZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function ZY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function v7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function B7(p){p=p|0,JJ(p)}function une(p){p=p|0,LY(p+24|0)}function LY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function JJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,h3()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function h3(){return 1364}function pZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=VY(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=PY(y,J,w)|0,B=G,w|0}function VY(p){return p=p|0,(o[(XJ()|0)+24>>2]|0)+(p*12|0)|0}function PY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,J=i2(uie[G&15](p,J)|0)|0,B=U,J|0}function iS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],gne(p,w,J,0),B=G}function gne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=fZe()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=hqe(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,mqe(U,G)|0,G),B=J}function fZe(){var p=0,y=0;if(n[7848]|0||(yqe(10136),pu(49,10136,X|0)|0,y=7848,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10136)|0)){p=10136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));yqe(10136)}return 10136}function hqe(p){return p=p|0,0}function mqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=fZe()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],m3(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Cqe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function m3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Cqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=UJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Ane(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],m3(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sye(p,Ge),_qe(Ge),B=bt;return}}function UJ(p){return p=p|0,357913941}function Ane(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function _qe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function yqe(p){p=p|0,zge(p)}function vye(p){p=p|0,dne(p+24|0)}function dne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function zge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,9,y,Bye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Bye(){return 1372}function PL(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=WL(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bP(y,J,w),B=G}function WL(p){return p=p|0,(o[(fZe()|0)+24>>2]|0)+(p*12|0)|0}function bP(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=As;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),KJ(J,w),le=ke(IZe(J,w)),c$e[G&1](p,le),B=U}function KJ(p,y){p=p|0,y=+y}function IZe(p,y){return p=p|0,y=+y,ke(bqe(y))}function bqe(p){return p=+p,ke(p)}function hZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],mZe(p,w,J,0),B=G}function mZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=QD()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=bF(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,AVt(U,G)|0,G),B=J}function QD(){var p=0,y=0;if(n[7856]|0||(wye(10172),pu(50,10172,X|0)|0,y=7856,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10172)|0)){p=10172,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));wye(10172)}return 10172}function bF(p){return p=p|0,0}function AVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=QD()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],qge(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(CZe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function qge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function CZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=C3(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Eqe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],qge(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,pne(p,Ge),gv(Ge),B=bt;return}}function C3(p){return p=p|0,357913941}function Eqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function pne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function gv(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function wye(p){p=p|0,Tye(p)}function w7(p){p=p|0,QA(p+24|0)}function QA(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Tye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,EP()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function EP(){return 1380}function HT(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=T7(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],fne(y,U,w,G),B=J}function T7(p){return p=p|0,(o[(QD()|0)+24>>2]|0)+(p*12|0)|0}function fne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),CB(U,w),U=Rb(U,w)|0,_Ze(le,G),le=Rye(le,G)|0,UT[J&15](p,U,le),B=Ge}function _Ze(p,y){p=p|0,y=y|0}function Rye(p,y){return p=p|0,y=y|0,$ge(y)|0}function $ge(p){return p=p|0,(p|0)!=0|0}function Ine(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=hne()|0,p=yZe(w)|0,bd(U,y,J,p,BB(w,G)|0,G)}function hne(){var p=0,y=0;if(n[7864]|0||(v0(10208),pu(51,10208,X|0)|0,y=7864,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10208)|0)){p=10208,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));v0(10208)}return 10208}function yZe(p){return p=p|0,p|0}function BB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=hne()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(OL(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(jJ(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function OL(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function jJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=R7(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,N7(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,OL(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,mne(p,J),ML(J),B=Ge;return}}function R7(p){return p=p|0,536870911}function N7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function mne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ML(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function v0(p){p=p|0,tAe(p)}function Nye(p){p=p|0,eAe(p+24|0)}function eAe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function tAe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,24,y,Dye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Dye(){return 1392}function WY(p,y){p=p|0,y=y|0,zJ(o[(kye(p)|0)>>2]|0,y)}function kye(p){return p=p|0,(o[(hne()|0)+24>>2]|0)+(p<<3)|0}function zJ(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,n0(G,y),y=wo(G,y)|0,DF[p&127](y),B=w}function bZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=SI()|0,p=D7(w)|0,bd(U,y,J,p,d1(w,G)|0,G)}function SI(){var p=0,y=0;if(n[7872]|0||(qJ(10244),pu(52,10244,X|0)|0,y=7872,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10244)|0)){p=10244,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));qJ(10244)}return 10244}function D7(p){return p=p|0,p|0}function d1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=SI()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Cne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(XD(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Cne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function XD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=rAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,_3(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Cne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Tw(p,J),c2(J),B=Ge;return}}function rAe(p){return p=p|0,536870911}function _3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Tw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function qJ(p){p=p|0,EZe(p)}function _ne(p){p=p|0,k7(p+24|0)}function k7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function EZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,16,y,dVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function dVt(){return 1400}function nAe(p){return p=p|0,kb(o[(xye(p)|0)>>2]|0)|0}function xye(p){return p=p|0,(o[(SI()|0)+24>>2]|0)+(p<<3)|0}function kb(p){return p=p|0,Gye(mz[p&7]()|0)|0}function Gye(p){return p=p|0,p|0}function HL(){var p=0;return n[7880]|0||(x7(10280),pu(25,10280,X|0)|0,p=7880,o[p>>2]=1,o[p+4>>2]=0),10280}function Rw(p,y){p=p|0,y=y|0,o[p>>2]=Fye()|0,o[p+4>>2]=sp()|0,o[p+12>>2]=y,o[p+8>>2]=SZe()|0,o[p+32>>2]=4}function Fye(){return 11711}function sp(){return 1356}function SZe(){return nI()|0}function Zye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(Lye(w),ti(w)):y|0&&(ty(y),ti(y))}function Lye(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function x7(p){p=p|0,Hc(p)}function Sqe(p){p=p|0,vZe(p,4920),yne(p)|0,bne(p)|0}function vZe(p,y){p=p|0,y=y|0;var w=0;w=l7()|0,o[p>>2]=w,iAe(w,y),BF(o[p>>2]|0)}function yne(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,wqe()|0),p|0}function bne(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,$J()|0),p|0}function $J(){var p=0;return n[7888]|0||(vqe(10328),pu(53,10328,X|0)|0,p=7888,o[p>>2]=1,o[p+4>>2]=0),Xr(10328)|0||vqe(10328),10328}function EF(p,y){p=p|0,y=y|0,bd(p,0,y,0,0,0)}function vqe(p){p=p|0,Pye(p),G7(p,10)}function Vye(p){p=p|0,BZe(p+24|0)}function BZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Pye(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Bqe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function pVt(p,y,w){p=p|0,y=y|0,w=+w,fVt(p,y,w)}function G7(p,y){p=p|0,y=y|0,o[p+20>>2]=y}function fVt(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,U=G+8|0,Ge=G+13|0,J=G,le=G+12|0,CB(Ge,y),o[U>>2]=Rb(Ge,y)|0,Cw(le,w),C[J>>3]=+Il(le,w),IVt(p,U,J),B=G}function IVt(p,y,w){p=p|0,y=y|0,w=w|0,dC(p+8|0,o[y>>2]|0,+C[w>>3]),n[p+24>>0]=1}function Bqe(){return 1404}function hVt(p,y){return p=p|0,y=+y,YT(p,y)|0}function YT(p,y){p=p|0,y=+y;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,U=G+4|0,le=G+8|0,Ge=G,J=Fb(8)|0,w=J,Xe=Ku(16)|0,CB(U,p),p=Rb(U,p)|0,Cw(le,y),dC(Xe,p,+Il(le,y)),le=w+4|0,o[le>>2]=Xe,p=Ku(8)|0,le=o[le>>2]|0,o[Ge>>2]=0,o[U>>2]=o[Ge>>2],oN(p,le,U),o[J>>2]=p,B=G,w|0}function wqe(){var p=0;return n[7896]|0||(Ene(10364),pu(54,10364,X|0)|0,p=7896,o[p>>2]=1,o[p+4>>2]=0),Xr(10364)|0||Ene(10364),10364}function Ene(p){p=p|0,_Vt(p),G7(p,55)}function mVt(p){p=p|0,CVt(p+24|0)}function CVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function _Vt(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,4,y,EVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function yVt(p){p=p|0,bVt(p)}function bVt(p){p=p|0,Wye(p)}function Wye(p){p=p|0,l2(p+8|0),n[p+24>>0]=1}function l2(p){p=p|0,o[p>>2]=0,C[p+8>>3]=0}function EVt(){return 1424}function eU(){return Sne()|0}function Sne(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,G=Ku(16)|0,l2(G),U=p+4|0,o[U>>2]=G,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],oN(G,U,J),o[w>>2]=G,B=y,p|0}function iAe(p,y){p=p|0,y=y|0,o[p>>2]=vne()|0,o[p+4>>2]=Bne()|0,o[p+12>>2]=y,o[p+8>>2]=Oye()|0,o[p+32>>2]=5}function vne(){return 11710}function Bne(){return 1416}function Oye(){return F7()|0}function y3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(JD(w),ti(w)):y|0&&ti(y)}function JD(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function F7(){var p=0;return n[7904]|0||(o[2600]=Tqe()|0,o[2601]=0,p=7904,o[p>>2]=1,o[p+4>>2]=0),10400}function Tqe(){return o[357]|0}function wZe(p){p=p|0,Mye(p,4926),TZe(p)|0}function Mye(p,y){p=p|0,y=y|0;var w=0;w=Og()|0,o[p>>2]=w,Rqe(w,y),BF(o[p>>2]|0)}function TZe(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,RZe()|0),p|0}function RZe(){var p=0;return n[7912]|0||(wne(10412),pu(56,10412,X|0)|0,p=7912,o[p>>2]=1,o[p+4>>2]=0),Xr(10412)|0||wne(10412),10412}function wne(p){p=p|0,Yye(p),G7(p,57)}function sAe(p){p=p|0,Hye(p+24|0)}function Hye(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Yye(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,5,y,cAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function oAe(p){p=p|0,aAe(p)}function aAe(p){p=p|0,SP(p)}function SP(p){p=p|0;var y=0,w=0;y=p+8|0,w=y+48|0;do o[y>>2]=0,y=y+4|0;while((y|0)<(w|0));n[p+56>>0]=1}function cAe(){return 1432}function NZe(){return lAe()|0}function lAe(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;le=B,B=B+16|0,p=le+4|0,y=le,w=Fb(8)|0,G=w,J=Ku(48)|0,U=J,Ge=U+48|0;do o[U>>2]=0,U=U+4|0;while((U|0)<(Ge|0));return U=G+4|0,o[U>>2]=J,Ge=Ku(8)|0,U=o[U>>2]|0,o[y>>2]=0,o[p>>2]=o[y>>2],e3(Ge,U,p),o[w>>2]=Ge,B=le,G|0}function Rqe(p,y){p=p|0,y=y|0,o[p>>2]=Qye()|0,o[p+4>>2]=Z7()|0,o[p+12>>2]=y,o[p+8>>2]=tU()|0,o[p+32>>2]=6}function Qye(){return 11704}function Z7(){return 1436}function tU(){return F7()|0}function lN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(L7(w),ti(w)):y|0&&ti(y)}function L7(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function DZe(p){p=p|0,vP(p,4933),SF(p)|0,vF(p)|0}function vP(p,y){p=p|0,y=y|0;var w=0;w=b3()|0,o[p>>2]=w,p1(w,y),BF(o[p>>2]|0)}function SF(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,wVt()|0),p|0}function vF(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,OY()|0),p|0}function OY(){var p=0;return n[7920]|0||(YL(10452),pu(58,10452,X|0)|0,p=7920,o[p>>2]=1,o[p+4>>2]=0),Xr(10452)|0||YL(10452),10452}function YL(p){p=p|0,kh(p),G7(p,1)}function Xye(p){p=p|0,BP(p+24|0)}function BP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function kh(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Jye()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function kZe(p,y,w){p=p|0,y=+y,w=+w,xb(p,y,w)}function xb(p,y,w){p=p|0,y=+y,w=+w;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,U=G+8|0,Ge=G+17|0,J=G,le=G+16|0,Cw(Ge,y),C[U>>3]=+Il(Ge,y),Cw(le,w),C[J>>3]=+Il(le,w),uAe(p,U,J),B=G}function uAe(p,y,w){p=p|0,y=y|0,w=w|0,Nqe(p+8|0,+C[y>>3],+C[w>>3]),n[p+24>>0]=1}function Nqe(p,y,w){p=p|0,y=+y,w=+w,C[p>>3]=y,C[p+8>>3]=w}function Jye(){return 1472}function SVt(p,y){return p=+p,y=+y,vVt(p,y)|0}function vVt(p,y){p=+p,y=+y;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,le=G+4|0,Ge=G+8|0,Xe=G,J=Fb(8)|0,w=J,U=Ku(16)|0,Cw(le,p),p=+Il(le,p),Cw(Ge,y),Nqe(U,p,+Il(Ge,y)),Ge=w+4|0,o[Ge>>2]=U,U=Ku(8)|0,Ge=o[Ge>>2]|0,o[Xe>>2]=0,o[le>>2]=o[Xe>>2],Uye(U,Ge,le),o[J>>2]=U,B=G,w|0}function Uye(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1452,o[w+12>>2]=y,o[p+4>>2]=w}function BVt(p){p=p|0,dz(p),ti(p)}function xZe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function rU(p){p=p|0,ti(p)}function wVt(){var p=0;return n[7928]|0||(GZe(10488),pu(59,10488,X|0)|0,p=7928,o[p>>2]=1,o[p+4>>2]=0),Xr(10488)|0||GZe(10488),10488}function GZe(p){p=p|0,Gb(p),G7(p,60)}function Kye(p){p=p|0,FZe(p+24|0)}function FZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Gb(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,6,y,wP()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ga(p){p=p|0,cg(p)}function cg(p){p=p|0,zh(p)}function zh(p){p=p|0,Tne(p+8|0),n[p+24>>0]=1}function Tne(p){p=p|0,o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,o[p+12>>2]=0}function wP(){return 1492}function jye(){return Nw()|0}function Nw(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,G=Ku(16)|0,Tne(G),U=p+4|0,o[U>>2]=G,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],Uye(G,U,J),o[w>>2]=G,B=y,p|0}function b3(){var p=0;return n[7936]|0||(Nx(10524),pu(25,10524,X|0)|0,p=7936,o[p>>2]=1,o[p+4>>2]=0),10524}function p1(p,y){p=p|0,y=y|0,o[p>>2]=MY()|0,o[p+4>>2]=ZZe()|0,o[p+12>>2]=y,o[p+8>>2]=LZe()|0,o[p+32>>2]=7}function MY(){return 11700}function ZZe(){return 1484}function LZe(){return F7()|0}function o_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(VZe(w),ti(w)):y|0&&ti(y)}function VZe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function Nx(p){p=p|0,Hc(p)}function Dqe(p,y,w){p=p|0,y=y|0,w=w|0,p=ff(y)|0,y=TVt(w)|0,w=kqe(w,0)|0,YZe(p,y,w,PZe()|0,0)}function TVt(p){return p=p|0,p|0}function kqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=PZe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(gAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(AAe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function PZe(){var p=0,y=0;if(n[7944]|0||(zye(10568),pu(61,10568,X|0)|0,y=7944,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10568)|0)){p=10568,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zye(10568)}return 10568}function zye(p){p=p|0,HY(p)}function qye(p){p=p|0,Dw(p+24|0)}function Dw(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function HY(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,17,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Rne(p){return p=p|0,V7(o[(WZe(p)|0)>>2]|0)|0}function WZe(p){return p=p|0,(o[(PZe()|0)+24>>2]|0)+(p<<3)|0}function V7(p){return p=p|0,_J(mz[p&7]()|0)|0}function gAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function AAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Nne(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,UD(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,gAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,$ye(p,J),ebe(J),B=Ge;return}}function Nne(p){return p=p|0,536870911}function UD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function $ye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ebe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Jm(){Dx()}function Dx(){dAe(10604)}function dAe(p){p=p|0,Od(p,4955)}function Od(p,y){p=p|0,y=y|0;var w=0;w=B0()|0,o[p>>2]=w,Dne(w,y),BF(o[p>>2]|0)}function B0(){var p=0;return n[7952]|0||(W7(10612),pu(25,10612,X|0)|0,p=7952,o[p>>2]=1,o[p+4>>2]=0),10612}function Dne(p,y){p=p|0,y=y|0,o[p>>2]=OZe()|0,o[p+4>>2]=pAe()|0,o[p+12>>2]=y,o[p+8>>2]=MZe()|0,o[p+32>>2]=8}function BF(p){p=p|0;var y=0,w=0;y=B,B=B+16|0,w=y,TP()|0,o[w>>2]=p,wF(10608,w),B=y}function TP(){return n[11714]|0||(o[2652]=0,pu(62,10608,X|0)|0,n[11714]=1),10608}function wF(p,y){p=p|0,y=y|0;var w=0;w=Ku(8)|0,o[w+4>>2]=o[y>>2],o[w>>2]=o[p>>2],o[p>>2]=w}function P7(p){p=p|0,tbe(p)}function tbe(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function OZe(){return 11715}function pAe(){return 1496}function MZe(){return nI()|0}function rbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(HZe(w),ti(w)):y|0&&ti(y)}function HZe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function W7(p){p=p|0,Hc(p)}function RVt(p,y){p=p|0,y=y|0;var w=0,G=0;TP()|0,w=o[2652]|0;e:do if(w|0){for(;G=o[w+4>>2]|0,!(G|0&&!(Kqe(O7(G)|0,p)|0));)if(w=o[w>>2]|0,!w)break e;NVt(G,y)}while(!1)}function O7(p){return p=p|0,o[p+12>>2]|0}function NVt(p,y){p=p|0,y=y|0;var w=0;p=p+36|0,w=o[p>>2]|0,w|0&&(yb(w),ti(w)),w=Ku(4)|0,dB(w,y),o[p>>2]=w}function RP(){return n[11716]|0||(o[2664]=0,pu(63,10656,X|0)|0,n[11716]=1),10656}function nbe(){var p=0;return n[11717]|0?p=o[2665]|0:(DVt(),o[2665]=1504,n[11717]=1,p=1504),p|0}function DVt(){n[11740]|0||(n[11718]=Uu(Uu(8,0)|0,0)|0,n[11719]=Uu(Uu(0,0)|0,0)|0,n[11720]=Uu(Uu(0,16)|0,0)|0,n[11721]=Uu(Uu(8,0)|0,0)|0,n[11722]=Uu(Uu(0,0)|0,0)|0,n[11723]=Uu(Uu(8,0)|0,0)|0,n[11724]=Uu(Uu(0,0)|0,0)|0,n[11725]=Uu(Uu(8,0)|0,0)|0,n[11726]=Uu(Uu(0,0)|0,0)|0,n[11727]=Uu(Uu(8,0)|0,0)|0,n[11728]=Uu(Uu(0,0)|0,0)|0,n[11729]=Uu(Uu(0,0)|0,32)|0,n[11730]=Uu(Uu(0,0)|0,32)|0,n[11740]=1)}function ibe(){return 1572}function YZe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0;U=B,B=B+32|0,It=U+16|0,bt=U+12|0,Xe=U+8|0,Ge=U+4|0,le=U,o[It>>2]=p,o[bt>>2]=y,o[Xe>>2]=w,o[Ge>>2]=G,o[le>>2]=J,RP()|0,sbe(10656,It,bt,Xe,Ge,le),B=U}function sbe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0;le=Ku(24)|0,wb(le+4|0,o[y>>2]|0,o[w>>2]|0,o[G>>2]|0,o[J>>2]|0,o[U>>2]|0),o[le>>2]=o[p>>2],o[p>>2]=le}function E3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0;if(So=B,B=B+32|0,zi=So+20|0,Un=So+8|0,Ds=So+4|0,Si=So,y=o[y>>2]|0,y|0){Ks=zi+4|0,Xe=zi+8|0,bt=Un+4|0,It=Un+8|0,rr=Un+8|0,an=zi+8|0;do{if(le=y+4|0,Ge=nU(le)|0,Ge|0){if(J=f1(Ge)|0,o[zi>>2]=0,o[Ks>>2]=0,o[Xe>>2]=0,G=(fAe(Ge)|0)+1|0,kVt(zi,G),G|0)for(;G=G+-1|0,RB(Un,o[J>>2]|0),U=o[Ks>>2]|0,U>>>0<(o[an>>2]|0)>>>0?(o[U>>2]=o[Un>>2],o[Ks>>2]=(o[Ks>>2]|0)+4):uN(zi,Un),G;)J=J+4|0;G=Gy(Ge)|0,o[Un>>2]=0,o[bt>>2]=0,o[It>>2]=0;e:do if(o[G>>2]|0)for(J=0,U=0;;){if((J|0)==(U|0)?IAe(Un,G):(o[J>>2]=o[G>>2],o[bt>>2]=(o[bt>>2]|0)+4),G=G+4|0,!(o[G>>2]|0))break e;J=o[bt>>2]|0,U=o[rr>>2]|0}while(!1);o[Ds>>2]=KD(le)|0,o[Si>>2]=Xr(Ge)|0,jD(w,p,Ds,Si,zi,Un),Av(Un),QL(zi)}y=o[y>>2]|0}while(y|0)}B=So}function nU(p){return p=p|0,o[p+12>>2]|0}function f1(p){return p=p|0,o[p+12>>2]|0}function fAe(p){return p=p|0,o[p+16>>2]|0}function kVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+32|0,w=J,G=o[p>>2]|0,(o[p+8>>2]|0)-G>>2>>>0>>0&&(lbe(w,y,(o[p+4>>2]|0)-G>>2,p+8|0),AN(p,w),la(w)),B=J}function uN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;if(le=B,B=B+32|0,w=le,G=p+4|0,J=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=_Ae(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,bt=(o[p+8>>2]|0)-Ge|0,Xe=bt>>1,lbe(w,bt>>2>>>0>>1>>>0?Xe>>>0>>0?J:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,AN(p,w),la(w),B=le;return}}function Gy(p){return p=p|0,o[p+8>>2]|0}function IAe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;if(le=B,B=B+32|0,w=le,G=p+4|0,J=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=B3(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,bt=(o[p+8>>2]|0)-Ge|0,Xe=bt>>1,Fy(w,bt>>2>>>0>>1>>>0?Xe>>>0>>0?J:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,gN(p,w),Q7(w),B=le;return}}function KD(p){return p=p|0,o[p>>2]|0}function jD(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,S3(p,y,w,G,J,U)}function Av(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function QL(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function S3(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+48|0,It=le+40|0,Ge=le+32|0,rr=le+24|0,Xe=le+12|0,bt=le,xw(Ge),p=qf(p)|0,o[rr>>2]=o[y>>2],w=o[w>>2]|0,G=o[G>>2]|0,M7(Xe,J),QZe(bt,U),o[It>>2]=o[rr>>2],XZe(p,It,w,G,Xe,bt),Av(bt),QL(Xe),oS(Ge),B=le}function M7(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(Y7(p,G),xVt(p,o[y>>2]|0,o[w>>2]|0,G))}function QZe(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(sU(p,G),CAe(p,o[y>>2]|0,o[w>>2]|0,G))}function XZe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+32|0,It=le+28|0,rr=le+24|0,Ge=le+12|0,Xe=le,bt=Sb(kne()|0)|0,o[rr>>2]=o[y>>2],o[It>>2]=o[rr>>2],y=v3(It)|0,w=JZe(w)|0,G=hAe(G)|0,o[Ge>>2]=o[J>>2],It=J+4|0,o[Ge+4>>2]=o[It>>2],rr=J+8|0,o[Ge+8>>2]=o[rr>>2],o[rr>>2]=0,o[It>>2]=0,o[J>>2]=0,J=yE(Ge)|0,o[Xe>>2]=o[U>>2],It=U+4|0,o[Xe+4>>2]=o[It>>2],rr=U+8|0,o[Xe+8>>2]=o[rr>>2],o[rr>>2]=0,o[It>>2]=0,o[U>>2]=0,Yl(0,bt|0,p|0,y|0,w|0,G|0,J|0,H7(Xe)|0)|0,Av(Xe),QL(Ge),B=le}function kne(){var p=0;return n[7968]|0||(u2(10708),p=7968,o[p>>2]=1,o[p+4>>2]=0),10708}function v3(p){return p=p|0,mAe(p)|0}function JZe(p){return p=p|0,obe(p)|0}function hAe(p){return p=p|0,_J(p)|0}function yE(p){return p=p|0,cy(p)|0}function H7(p){return p=p|0,UZe(p)|0}function UZe(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Fb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=obe(o[(o[p>>2]|0)+(y<<2)>>2]|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function obe(p){return p=p|0,p|0}function cy(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Fb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=mAe((o[p>>2]|0)+(y<<2)|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function mAe(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(xqe()|0)|0,G?(o1(y,G),Tb(w,y),Lbe(p,w),p=IE(y)|0):p=abe(p)|0,B=J,p|0}function xqe(){var p=0;return n[7960]|0||(iI(10664),pu(25,10664,X|0)|0,p=7960,o[p>>2]=1,o[p+4>>2]=0),10664}function abe(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(4)|0,o[Ge>>2]=o[p>>2],U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],iU(p,U,J),o[G>>2]=p,B=w,y|0}function iU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1656,o[w+12>>2]=y,o[p+4>>2]=w}function xne(p){p=p|0,dz(p),ti(p)}function cbe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function dv(p){p=p|0,ti(p)}function iI(p){p=p|0,Hc(p)}function u2(p){p=p|0,Ny(p,FC()|0,5)}function FC(){return 1676}function sU(p,y){p=p|0,y=y|0;var w=0;if((B3(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function CAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function B3(p){return p=p|0,1073741823}function Y7(p,y){p=p|0,y=y|0;var w=0;if((_Ae(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xVt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function _Ae(p){return p=p|0,1073741823}function Fy(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function gN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Q7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function lbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function AN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function la(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function yAe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(Un=B,B=B+32|0,It=Un+20|0,rr=Un+12|0,bt=Un+16|0,an=Un+4|0,Ks=Un,zi=Un+8|0,Ge=nbe()|0,U=o[Ge>>2]|0,le=o[U>>2]|0,le|0)for(Xe=o[Ge+8>>2]|0,Ge=o[Ge+4>>2]|0;RB(It,le),KZe(p,It,Ge,Xe),U=U+4|0,le=o[U>>2]|0,le;)Xe=Xe+1|0,Ge=Ge+1|0;if(U=ibe()|0,le=o[U>>2]|0,le|0)do RB(It,le),o[rr>>2]=o[U+4>>2],ube(y,It,rr),U=U+8|0,le=o[U>>2]|0;while(le|0);if(U=o[(TP()|0)>>2]|0,U|0)do y=o[U+4>>2]|0,RB(It,o[(Zy(y)|0)>>2]|0),o[rr>>2]=O7(y)|0,YY(w,It,rr),U=o[U>>2]|0;while(U|0);if(RB(bt,0),U=RP()|0,o[It>>2]=o[bt>>2],E3(It,U,J),U=o[(TP()|0)>>2]|0,U|0){p=It+4|0,y=It+8|0,w=It+8|0;do{if(Xe=o[U+4>>2]|0,RB(rr,o[(Zy(Xe)|0)>>2]|0),_p(an,bAe(Xe)|0),le=o[an>>2]|0,le|0){o[It>>2]=0,o[p>>2]=0,o[y>>2]=0;do RB(Ks,o[(Zy(o[le+4>>2]|0)|0)>>2]|0),Ge=o[p>>2]|0,Ge>>>0<(o[w>>2]|0)>>>0?(o[Ge>>2]=o[Ks>>2],o[p>>2]=(o[p>>2]|0)+4):uN(It,Ks),le=o[le>>2]|0;while(le|0);gbe(G,rr,It),QL(It)}o[zi>>2]=o[rr>>2],bt=Gne(Xe)|0,o[It>>2]=o[zi>>2],E3(It,bt,J),wr(an),U=o[U>>2]|0}while(U|0)}B=Un}function KZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,zZe(p,y,w,G)}function ube(p,y,w){p=p|0,y=y|0,w=w|0,Zqe(p,y,w)}function Zy(p){return p=p|0,p|0}function YY(p,y,w){p=p|0,y=y|0,w=w|0,LVt(p,y,w)}function bAe(p){return p=p|0,p+16|0}function _p(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;if(U=B,B=B+16|0,J=U+8|0,w=U,o[p>>2]=0,G=o[y>>2]|0,o[J>>2]=G,o[w>>2]=p,w=ZVt(w)|0,G|0){if(G=Ku(12)|0,le=(Abe(J)|0)+4|0,p=o[le+4>>2]|0,y=G+4|0,o[y>>2]=o[le>>2],o[y+4>>2]=p,y=o[o[J>>2]>>2]|0,o[J>>2]=y,!y)p=G;else for(y=G;p=Ku(12)|0,Xe=(Abe(J)|0)+4|0,Ge=o[Xe+4>>2]|0,le=p+4|0,o[le>>2]=o[Xe>>2],o[le+4>>2]=Ge,o[y>>2]=p,le=o[o[J>>2]>>2]|0,o[J>>2]=le,le;)y=p;o[p>>2]=o[w>>2],o[w>>2]=G}B=U}function gbe(p,y,w){p=p|0,y=y|0,w=w|0,oU(p,y,w)}function Gne(p){return p=p|0,p+24|0}function oU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+24|0,J=G+16|0,Ge=G+12|0,U=G,xw(J),p=qf(p)|0,o[Ge>>2]=o[y>>2],M7(U,w),o[le>>2]=o[Ge>>2],jZe(p,le,U),QL(U),oS(J),B=G}function jZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+16|0,Ge=G+12|0,J=G,U=Sb(aU()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=v3(le)|0,o[J>>2]=o[w>>2],le=w+4|0,o[J+4>>2]=o[le>>2],Ge=w+8|0,o[J+8>>2]=o[Ge>>2],o[Ge>>2]=0,o[le>>2]=0,o[w>>2]=0,Ei(0,U|0,p|0,y|0,yE(J)|0)|0,QL(J),B=G}function aU(){var p=0;return n[7976]|0||(GVt(10720),p=7976,o[p>>2]=1,o[p+4>>2]=0),10720}function GVt(p){p=p|0,Ny(p,FVt()|0,2)}function FVt(){return 1732}function ZVt(p){return p=p|0,o[p>>2]|0}function Abe(p){return p=p|0,o[p>>2]|0}function LVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,J=G+8|0,le=G,xw(J),p=qf(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],Gqe(p,U,w),oS(J),B=G}function Gqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,U=G+4|0,le=G,J=Sb(VVt()|0)|0,o[le>>2]=o[y>>2],o[U>>2]=o[le>>2],y=v3(U)|0,Ei(0,J|0,p|0,y|0,JZe(w)|0)|0,B=G}function VVt(){var p=0;return n[7984]|0||(ZC(10732),p=7984,o[p>>2]=1,o[p+4>>2]=0),10732}function ZC(p){p=p|0,Ny(p,Fqe()|0,2)}function Fqe(){return 1744}function Zqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,J=G+8|0,le=G,xw(J),p=qf(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],Gqe(p,U,w),oS(J),B=G}function zZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+32|0,le=J+16|0,U=J+8|0,Ge=J,xw(U),p=qf(p)|0,o[Ge>>2]=o[y>>2],w=n[w>>0]|0,G=n[G>>0]|0,o[le>>2]=o[Ge>>2],dN(p,le,w,G),oS(U),B=J}function dN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,le=J+4|0,Ge=J,U=Sb(EAe()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=v3(le)|0,w=cU(w)|0,oA(0,U|0,p|0,y|0,w|0,cU(G)|0)|0,B=J}function EAe(){var p=0;return n[7992]|0||(Bu(10744),p=7992,o[p>>2]=1,o[p+4>>2]=0),10744}function cU(p){return p=p|0,qZe(p)|0}function qZe(p){return p=p|0,p&255|0}function Bu(p){p=p|0,Ny(p,QY()|0,3)}function QY(){return 1756}function PVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;switch(an=B,B=B+32|0,Ge=an+8|0,Xe=an+4|0,bt=an+20|0,It=an,aP(p,0),G=Zbe(y)|0,o[Ge>>2]=0,rr=Ge+4|0,o[rr>>2]=0,o[Ge+8>>2]=0,G<<24>>24){case 0:{n[bt>>0]=0,Lqe(Xe,w,bt),XL(p,Xe)|0,r_(Xe);break}case 8:{rr=YAe(y)|0,n[bt>>0]=8,RB(It,o[rr+4>>2]|0),qh(Xe,w,bt,It,rr+8|0),XL(p,Xe)|0,r_(Xe);break}case 9:{if(U=YAe(y)|0,y=o[U+4>>2]|0,y|0)for(le=Ge+8|0,J=U+12|0;y=y+-1|0,RB(Xe,o[J>>2]|0),G=o[rr>>2]|0,G>>>0<(o[le>>2]|0)>>>0?(o[G>>2]=o[Xe>>2],o[rr>>2]=(o[rr>>2]|0)+4):uN(Ge,Xe),y;)J=J+4|0;n[bt>>0]=9,RB(It,o[U+8>>2]|0),XY(Xe,w,bt,It,Ge),XL(p,Xe)|0,r_(Xe);break}default:rr=YAe(y)|0,n[bt>>0]=G,RB(It,o[rr+4>>2]|0),Nf(Xe,w,bt,It),XL(p,Xe)|0,r_(Xe)}QL(Ge),B=an}function Lqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,xw(J),y=qf(y)|0,fbe(p,y,n[w>>0]|0),oS(J),B=G}function XL(p,y){p=p|0,y=y|0;var w=0;return w=o[p>>2]|0,w|0&&oo(w|0),o[p>>2]=o[y>>2],o[y>>2]=0,p|0}function qh(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+32|0,Ge=U+16|0,le=U+8|0,Xe=U,xw(le),y=qf(y)|0,w=n[w>>0]|0,o[Xe>>2]=o[G>>2],J=o[J>>2]|0,o[Ge>>2]=o[Xe>>2],Vqe(p,y,w,Ge,J),oS(le),B=U}function XY(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;U=B,B=B+32|0,Xe=U+24|0,le=U+16|0,bt=U+12|0,Ge=U,xw(le),y=qf(y)|0,w=n[w>>0]|0,o[bt>>2]=o[G>>2],M7(Ge,J),o[Xe>>2]=o[bt>>2],$Ze(p,y,w,Xe,Ge),QL(Ge),oS(le),B=U}function Nf(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+32|0,le=J+16|0,U=J+8|0,Ge=J,xw(U),y=qf(y)|0,w=n[w>>0]|0,o[Ge>>2]=o[G>>2],o[le>>2]=o[Ge>>2],SAe(p,y,w,le),oS(U),B=J}function SAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+4|0,Ge=J,le=Sb(wu()|0)|0,w=cU(w)|0,o[Ge>>2]=o[G>>2],o[U>>2]=o[Ge>>2],Fne(p,Ei(0,le|0,y|0,w|0,v3(U)|0)|0),B=J}function wu(){var p=0;return n[8e3]|0||(dbe(10756),p=8e3,o[p>>2]=1,o[p+4>>2]=0),10756}function Fne(p,y){p=p|0,y=y|0,aP(p,y)}function dbe(p){p=p|0,Ny(p,X7()|0,2)}function X7(){return 1772}function $Ze(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;U=B,B=B+32|0,Xe=U+16|0,bt=U+12|0,le=U,Ge=Sb(WVt()|0)|0,w=cU(w)|0,o[bt>>2]=o[G>>2],o[Xe>>2]=o[bt>>2],G=v3(Xe)|0,o[le>>2]=o[J>>2],Xe=J+4|0,o[le+4>>2]=o[Xe>>2],bt=J+8|0,o[le+8>>2]=o[bt>>2],o[bt>>2]=0,o[Xe>>2]=0,o[J>>2]=0,Fne(p,oA(0,Ge|0,y|0,w|0,G|0,yE(le)|0)|0),QL(le),B=U}function WVt(){var p=0;return n[8008]|0||(OVt(10768),p=8008,o[p>>2]=1,o[p+4>>2]=0),10768}function OVt(p){p=p|0,Ny(p,MVt()|0,3)}function MVt(){return 1784}function Vqe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,Ge=U+4|0,Xe=U,le=Sb(Pqe()|0)|0,w=cU(w)|0,o[Xe>>2]=o[G>>2],o[Ge>>2]=o[Xe>>2],G=v3(Ge)|0,Fne(p,oA(0,le|0,y|0,w|0,G|0,hAe(J)|0)|0),B=U}function Pqe(){var p=0;return n[8016]|0||(vAe(10780),p=8016,o[p>>2]=1,o[p+4>>2]=0),10780}function vAe(p){p=p|0,Ny(p,pbe()|0,3)}function pbe(){return 1800}function fbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=Sb(HVt()|0)|0,Fne(p,Ki(0,G|0,y|0,cU(w)|0)|0)}function HVt(){var p=0;return n[8024]|0||(Zne(10792),p=8024,o[p>>2]=1,o[p+4>>2]=0),10792}function Zne(p){p=p|0,Ny(p,Wqe()|0,1)}function Wqe(){return 1816}function YVt(){QVt(),Lne(),Ibe()}function QVt(){o[2702]=pz(65536)|0}function Lne(){rLe(10856)}function Ibe(){Jqr(10816)}function Jqr(p){p=p|0,LC(p,5044),J7(p)|0}function LC(p,y){p=p|0,y=y|0;var w=0;w=xqe()|0,o[p>>2]=w,DP(w,y),BF(o[p>>2]|0)}function J7(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,eLe()|0),p|0}function eLe(){var p=0;return n[8032]|0||(Mg(10820),pu(64,10820,X|0)|0,p=8032,o[p>>2]=1,o[p+4>>2]=0),Xr(10820)|0||Mg(10820),10820}function Mg(p){p=p|0,tLe(p),G7(p,25)}function i0(p){p=p|0,k_(p+24|0)}function k_(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function tLe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,18,y,Vne()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function sS(p,y){p=p|0,y=y|0,kw(p,y)}function kw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;w=B,B=B+16|0,G=w,J=w+4|0,eS(J,y),o[G>>2]=rN(J,y)|0,JY(p,G),B=w}function JY(p,y){p=p|0,y=y|0,U7(p+4|0,o[y>>2]|0),n[p+8>>0]=1}function U7(p,y){p=p|0,y=y|0,o[p>>2]=y}function Vne(){return 1824}function NP(p){return p=p|0,Ly(p)|0}function Ly(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(4)|0,eS(J,p),U7(Ge,rN(J,p)|0),U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],iU(p,U,J),o[G>>2]=p,B=w,y|0}function Fb(p){p=p|0;var y=0,w=0;return p=p+7&-8,p>>>0<=32768&&(y=o[2701]|0,p>>>0<=(65536-y|0)>>>0)?(w=(o[2702]|0)+y|0,o[2701]=y+p,p=w):(p=pz(p+8|0)|0,o[p>>2]=o[2703],o[2703]=p,p=p+8|0),p|0}function DP(p,y){p=p|0,y=y|0,o[p>>2]=BAe()|0,o[p+4>>2]=TF()|0,o[p+12>>2]=y,o[p+8>>2]=Pne()|0,o[p+32>>2]=9}function BAe(){return 11744}function TF(){return 1832}function Pne(){return F7()|0}function Wne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(wAe(w),ti(w)):y|0&&ti(y)}function wAe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function rLe(p){p=p|0,nLe(p,5052),lU(p)|0,iLe(p,5058,26)|0,a_(p,5069,1)|0,TAe(p,5077,10)|0,hbe(p,5087,19)|0,sLe(p,5094,27)|0}function nLe(p,y){p=p|0,y=y|0;var w=0;w=az()|0,o[p>>2]=w,MAe(w,y),BF(o[p>>2]|0)}function lU(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,bLe()|0),p|0}function iLe(p,y,w){return p=p|0,y=y|0,w=w|0,Dbe(p,ff(y)|0,w,0),p|0}function a_(p,y,w){return p=p|0,y=y|0,w=w|0,Xne(p,ff(y)|0,w,0),p|0}function TAe(p,y,w){return p=p|0,y=y|0,w=w|0,$Vt(p,ff(y)|0,w,0),p|0}function hbe(p,y,w){return p=p|0,y=y|0,w=w|0,Yqe(p,ff(y)|0,w,0),p|0}function mbe(p,y){p=p|0,y=y|0;var w=0,G=0;e:for(;;){for(w=o[2703]|0;;){if((w|0)==(y|0))break e;if(G=o[w>>2]|0,o[2703]=G,!w)w=G;else break}ti(w)}o[2701]=p}function sLe(p,y,w){return p=p|0,y=y|0,w=w|0,oLe(p,ff(y)|0,w,0),p|0}function oLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=K7()|0,p=RAe(w)|0,bd(U,y,J,p,One(w,G)|0,G)}function K7(){var p=0,y=0;if(n[8040]|0||(NAe(10860),pu(65,10860,X|0)|0,y=8040,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10860)|0)){p=10860,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));NAe(10860)}return 10860}function RAe(p){return p=p|0,p|0}function One(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=K7()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Mne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Cbe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Mne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Cbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=_be(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,XVt(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Mne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Oqe(p,J),JVt(J),B=Ge;return}}function _be(p){return p=p|0,536870911}function XVt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Oqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function JVt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function NAe(p){p=p|0,UVt(p)}function aLe(p){p=p|0,Mqe(p+24|0)}function Mqe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function UVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,KVt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function KVt(){return 1840}function jVt(p,y,w){p=p|0,y=y|0,w=w|0,Hqe(o[(cLe(p)|0)>>2]|0,y,w)}function cLe(p){return p=p|0,(o[(K7()|0)+24>>2]|0)+(p<<3)|0}function Hqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;G=B,B=B+16|0,U=G+1|0,J=G,eS(U,y),y=rN(U,y)|0,eS(J,w),w=rN(J,w)|0,qD[p&31](y,w),B=G}function Yqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=ybe()|0,p=lLe(w)|0,bd(U,y,J,p,j7(w,G)|0,G)}function ybe(){var p=0,y=0;if(n[8048]|0||(zD(10896),pu(66,10896,X|0)|0,y=8048,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10896)|0)){p=10896,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zD(10896)}return 10896}function lLe(p){return p=p|0,p|0}function j7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=ybe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Hne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(bbe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Hne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function bbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Ebe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,DAe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Hne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,uLe(p,J),kAe(J),B=Ge;return}}function Ebe(p){return p=p|0,536870911}function DAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function uLe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kAe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function zD(p){p=p|0,qVt(p)}function Sbe(p){p=p|0,zVt(p+24|0)}function zVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function qVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,xAe()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function xAe(){return 1852}function GAe(p,y){return p=p|0,y=y|0,vbe(o[(FAe(p)|0)>>2]|0,y)|0}function FAe(p){return p=p|0,(o[(ybe()|0)+24>>2]|0)+(p<<3)|0}function vbe(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,eS(G,y),y=rN(G,y)|0,y=_J(mC[p&31](y)|0)|0,B=w,y|0}function $Vt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=gLe()|0,p=ePt(w)|0,bd(U,y,J,p,uU(w,G)|0,G)}function gLe(){var p=0,y=0;if(n[8056]|0||(q7(10932),pu(67,10932,X|0)|0,y=8056,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10932)|0)){p=10932,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));q7(10932)}return 10932}function ePt(p){return p=p|0,p|0}function uU(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=gLe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(ZAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(tPt(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function ZAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function tPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=LAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,Yne(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,ZAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,VAe(p,J),z7(J),B=Ge;return}}function LAe(p){return p=p|0,536870911}function Yne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function VAe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function z7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function q7(p){p=p|0,w3(p)}function rPt(p){p=p|0,pN(p+24|0)}function pN(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function w3(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,7,y,ALe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ALe(){return 1860}function dLe(p,y,w){return p=p|0,y=y|0,w=w|0,pLe(o[(nPt(p)|0)>>2]|0,y,w)|0}function nPt(p){return p=p|0,(o[(gLe()|0)+24>>2]|0)+(p<<3)|0}function pLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+32|0,le=G+12|0,U=G+8|0,Ge=G,Xe=G+16|0,J=G+4|0,iPt(Xe,y),Bbe(Ge,Xe,y),vx(J,w),w=IF(J,w)|0,o[le>>2]=o[Ge>>2],UT[p&15](U,le,w),w=Qqe(U)|0,r_(U),_B(J),B=G,w|0}function iPt(p,y){p=p|0,y=y|0}function Bbe(p,y,w){p=p|0,y=y|0,w=w|0,Qne(p,w)}function Qqe(p){return p=p|0,qf(p)|0}function Qne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+16|0,w=J,G=y,G&1?(fLe(w,0),mI(G|0,w|0)|0,s0(p,w),ILe(w)):o[p>>2]=o[y>>2],B=J}function fLe(p,y){p=p|0,y=y|0,j(p,y),o[p+4>>2]=0,n[p+8>>0]=0}function s0(p,y){p=p|0,y=y|0,o[p>>2]=o[y+4>>2]}function ILe(p){p=p|0,n[p+8>>0]=0}function Xne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=fN()|0,p=UY(w)|0,bd(U,y,J,p,Xqe(w,G)|0,G)}function fN(){var p=0,y=0;if(n[8064]|0||(QT(10968),pu(68,10968,X|0)|0,y=8064,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10968)|0)){p=10968,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));QT(10968)}return 10968}function UY(p){return p=p|0,p|0}function Xqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=fN()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?($7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(wB(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function $7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function wB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=PAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,ez(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,$7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,tz(p,J),Jqe(J),B=Ge;return}}function PAe(p){return p=p|0,536870911}function ez(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function tz(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Jqe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function QT(p){p=p|0,Tbe(p)}function rz(p){p=p|0,wbe(p+24|0)}function wbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Tbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,1,y,Rbe()|0,5),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Rbe(){return 1872}function lg(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,Nbe(o[(hLe(p)|0)>>2]|0,y,w,G,J,U)}function hLe(p){return p=p|0,(o[(fN()|0)+24>>2]|0)+(p<<3)|0}function Nbe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+32|0,Ge=le+16|0,Xe=le+12|0,bt=le+8|0,It=le+4|0,rr=le,vx(Ge,y),y=IF(Ge,y)|0,vx(Xe,w),w=IF(Xe,w)|0,vx(bt,G),G=IF(bt,G)|0,vx(It,J),J=IF(It,J)|0,vx(rr,U),U=IF(rr,U)|0,a$e[p&1](y,w,G,J,U),_B(rr),_B(It),_B(bt),_B(Xe),_B(Ge),B=le}function Dbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=T3()|0,p=mLe(w)|0,bd(U,y,J,p,Uqe(w,G)|0,G)}function T3(){var p=0,y=0;if(n[8072]|0||(Jne(11004),pu(69,11004,X|0)|0,y=8072,o[y>>2]=1,o[y+4>>2]=0),!(Xr(11004)|0)){p=11004,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jne(11004)}return 11004}function mLe(p){return p=p|0,p|0}function Uqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=T3()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(gU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(WAe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function gU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function WAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=nz(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,kP(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,gU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,CLe(p,J),kbe(J),B=Ge;return}}function nz(p){return p=p|0,536870911}function kP(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function CLe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kbe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Jne(p){p=p|0,oPt(p)}function JL(p){p=p|0,sPt(p+24|0)}function sPt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function oPt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,12,y,aPt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function aPt(){return 1896}function _Le(p,y,w){p=p|0,y=y|0,w=w|0,iz(o[(yLe(p)|0)>>2]|0,y,w)}function yLe(p){return p=p|0,(o[(T3()|0)+24>>2]|0)+(p<<3)|0}function iz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;G=B,B=B+16|0,U=G+4|0,J=G,AU(U,y),y=TB(U,y)|0,vx(J,w),w=IF(J,w)|0,qD[p&31](y,w),_B(J),B=G}function AU(p,y){p=p|0,y=y|0}function TB(p,y){return p=p|0,y=y|0,xbe(y)|0}function xbe(p){return p=p|0,p|0}function bLe(){var p=0;return n[8080]|0||(XA(11040),pu(70,11040,X|0)|0,p=8080,o[p>>2]=1,o[p+4>>2]=0),Xr(11040)|0||XA(11040),11040}function XA(p){p=p|0,Gbe(p),G7(p,71)}function UL(p){p=p|0,cPt(p+24|0)}function cPt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Gbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,7,y,OAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ELe(p){p=p|0,sz(p)}function sz(p){p=p|0,SLe(p)}function SLe(p){p=p|0,n[p+8>>0]=1}function OAe(){return 1936}function oz(){return vLe()|0}function vLe(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,U=p+4|0,o[U>>2]=Ku(1)|0,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],RF(G,U,J),o[w>>2]=G,B=y,p|0}function RF(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1916,o[w+12>>2]=y,o[p+4>>2]=w}function xP(p){p=p|0,dz(p),ti(p)}function IN(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function Une(p){p=p|0,ti(p)}function az(){var p=0;return n[8088]|0||(HAe(11076),pu(25,11076,X|0)|0,p=8088,o[p>>2]=1,o[p+4>>2]=0),11076}function MAe(p,y){p=p|0,y=y|0,o[p>>2]=KY()|0,o[p+4>>2]=Kne()|0,o[p+12>>2]=y,o[p+8>>2]=jne()|0,o[p+32>>2]=10}function KY(){return 11745}function Kne(){return 1940}function jne(){return nI()|0}function Fbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(BLe(w),ti(w)):y|0&&ti(y)}function BLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function HAe(p){p=p|0,Hc(p)}function RB(p,y){p=p|0,y=y|0,o[p>>2]=y}function YAe(p){return p=p|0,o[p>>2]|0}function Zbe(p){return p=p|0,n[o[p>>2]>>0]|0}function Lbe(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,o[G>>2]=o[p>>2],QAe(y,G)|0,B=w}function QAe(p,y){p=p|0,y=y|0;var w=0;return w=cz(o[p>>2]|0,y)|0,y=p+4|0,o[(o[y>>2]|0)+8>>2]=w,o[(o[y>>2]|0)+8>>2]|0}function cz(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,xw(G),p=qf(p)|0,y=wLe(p,o[y>>2]|0)|0,oS(G),B=w,y|0}function xw(p){p=p|0,o[p>>2]=o[2701],o[p+4>>2]=o[2703]}function wLe(p,y){p=p|0,y=y|0;var w=0;return w=Sb(lz()|0)|0,Ki(0,w|0,p|0,hAe(y)|0)|0}function oS(p){p=p|0,mbe(o[p>>2]|0,o[p+4>>2]|0)}function lz(){var p=0;return n[8096]|0||(Vbe(11120),p=8096,o[p>>2]=1,o[p+4>>2]=0),11120}function Vbe(p){p=p|0,Ny(p,g2()|0,1)}function g2(){return 1948}function A2(){jY()}function jY(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(zi=B,B=B+16|0,It=zi+4|0,rr=zi,Ul(65536,10804,o[2702]|0,10812),w=nbe()|0,y=o[w>>2]|0,p=o[y>>2]|0,p|0)for(G=o[w+8>>2]|0,w=o[w+4>>2]|0;Do(p|0,l[w>>0]|0|0,n[G>>0]|0),y=y+4|0,p=o[y>>2]|0,p;)G=G+1|0,w=w+1|0;if(p=ibe()|0,y=o[p>>2]|0,y|0)do Wt(y|0,o[p+4>>2]|0),p=p+8|0,y=o[p>>2]|0;while(y|0);Wt(TLe()|0,5167),bt=TP()|0,p=o[bt>>2]|0;e:do if(p|0){do lPt(o[p+4>>2]|0),p=o[p>>2]|0;while(p|0);if(p=o[bt>>2]|0,p|0){Xe=bt;do{for(;J=p,p=o[p>>2]|0,J=o[J+4>>2]|0,!!(R3(J)|0);)if(o[rr>>2]=Xe,o[It>>2]=o[rr>>2],XAe(bt,It)|0,!p)break e;if(RLe(J),Xe=o[Xe>>2]|0,y=$h(J)|0,U=OA()|0,le=B,B=B+((1*(y<<2)|0)+15&-16)|0,Ge=B,B=B+((1*(y<<2)|0)+15&-16)|0,y=o[(bAe(J)|0)>>2]|0,y|0)for(w=le,G=Ge;o[w>>2]=o[(Zy(o[y+4>>2]|0)|0)>>2],o[G>>2]=o[y+8>>2],y=o[y>>2]|0,y;)w=w+4|0,G=G+4|0;Un=Zy(J)|0,y=NLe(J)|0,w=$h(J)|0,G=Pbe(J)|0,Ju(Un|0,y|0,le|0,Ge|0,w|0,G|0,O7(J)|0),Da(U|0)}while(p|0)}}while(!1);if(p=o[(RP()|0)>>2]|0,p|0)do Un=p+4|0,bt=nU(Un)|0,J=Gy(bt)|0,U=f1(bt)|0,le=(fAe(bt)|0)+1|0,Ge=zY(bt)|0,Xe=JAe(Un)|0,bt=Xr(bt)|0,It=KD(Un)|0,rr=uz(Un)|0,Ru(0,J|0,U|0,le|0,Ge|0,Xe|0,bt|0,It|0,rr|0,UAe(Un)|0),p=o[p>>2]|0;while(p|0);p=o[(TP()|0)>>2]|0;e:do if(p|0){t:for(;;){if(y=o[p+4>>2]|0,y|0&&(an=o[(Zy(y)|0)>>2]|0,Ks=o[(Gne(y)|0)>>2]|0,Ks|0)){w=Ks;do{y=w+4|0,G=nU(y)|0;r:do if(G|0)switch(Xr(G)|0){case 0:break t;case 4:case 3:case 2:{Ge=Gy(G)|0,Xe=f1(G)|0,bt=(fAe(G)|0)+1|0,It=zY(G)|0,rr=Xr(G)|0,Un=KD(y)|0,Ru(an|0,Ge|0,Xe|0,bt|0,It|0,0,rr|0,Un|0,uz(y)|0,UAe(y)|0);break r}case 1:{le=Gy(G)|0,Ge=f1(G)|0,Xe=(fAe(G)|0)+1|0,bt=zY(G)|0,It=JAe(y)|0,rr=Xr(G)|0,Un=KD(y)|0,Ru(an|0,le|0,Ge|0,Xe|0,bt|0,It|0,rr|0,Un|0,uz(y)|0,UAe(y)|0);break r}case 5:{bt=Gy(G)|0,It=f1(G)|0,rr=(fAe(G)|0)+1|0,Un=zY(G)|0,Ru(an|0,bt|0,It|0,rr|0,Un|0,KAe(G)|0,Xr(G)|0,0,0,0);break r}default:break r}while(!1);w=o[w>>2]|0}while(w|0)}if(p=o[p>>2]|0,!p)break e}Ko()}while(!1);Yn(),B=zi}function TLe(){return 11703}function lPt(p){p=p|0,n[p+40>>0]=0}function R3(p){return p=p|0,(n[p+40>>0]|0)!=0|0}function XAe(p,y){return p=p|0,y=y|0,y=Wbe(y)|0,p=o[y>>2]|0,o[y>>2]=o[p>>2],ti(p),o[y>>2]|0}function RLe(p){p=p|0,n[p+40>>0]=1}function $h(p){return p=p|0,o[p+20>>2]|0}function NLe(p){return p=p|0,o[p+8>>2]|0}function Pbe(p){return p=p|0,o[p+32>>2]|0}function zY(p){return p=p|0,o[p+4>>2]|0}function JAe(p){return p=p|0,o[p+4>>2]|0}function uz(p){return p=p|0,o[p+8>>2]|0}function UAe(p){return p=p|0,o[p+16>>2]|0}function KAe(p){return p=p|0,o[p+20>>2]|0}function Wbe(p){return p=p|0,o[p>>2]|0}function zne(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0;hl=B,B=B+16|0,an=hl;do if(p>>>0<245){if(bt=p>>>0<11?16:p+11&-8,p=bt>>>3,rr=o[2783]|0,w=rr>>>p,w&3|0)return y=(w&1^1)+p|0,p=11172+(y<<1<<2)|0,w=p+8|0,G=o[w>>2]|0,J=G+8|0,U=o[J>>2]|0,(p|0)==(U|0)?o[2783]=rr&~(1<>2]=p,o[w>>2]=U),pi=y<<3,o[G+4>>2]=pi|3,pi=G+pi+4|0,o[pi>>2]=o[pi>>2]|1,pi=J,B=hl,pi|0;if(It=o[2785]|0,bt>>>0>It>>>0){if(w|0)return y=2<>>12&16,y=y>>>le,w=y>>>5&8,y=y>>>w,J=y>>>2&4,y=y>>>J,p=y>>>1&2,y=y>>>p,G=y>>>1&1,G=(w|le|J|p|G)+(y>>>G)|0,y=11172+(G<<1<<2)|0,p=y+8|0,J=o[p>>2]|0,le=J+8|0,w=o[le>>2]|0,(y|0)==(w|0)?(p=rr&~(1<>2]=y,o[p>>2]=w,p=rr),U=(G<<3)-bt|0,o[J+4>>2]=bt|3,G=J+bt|0,o[G+4>>2]=U|1,o[G+U>>2]=U,It|0&&(J=o[2788]|0,y=It>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=J,o[y+12>>2]=J,o[J+8>>2]=y,o[J+12>>2]=w),o[2785]=U,o[2788]=G,pi=le,B=hl,pi|0;if(Ge=o[2784]|0,Ge){if(w=(Ge&0-Ge)+-1|0,le=w>>>12&16,w=w>>>le,U=w>>>5&8,w=w>>>U,Xe=w>>>2&4,w=w>>>Xe,G=w>>>1&2,w=w>>>G,p=w>>>1&1,p=o[11436+((U|le|Xe|G|p)+(w>>>p)<<2)>>2]|0,w=(o[p+4>>2]&-8)-bt|0,G=o[p+16+(((o[p+16>>2]|0)==0&1)<<2)>>2]|0,!G)Xe=p,U=w;else{do le=(o[G+4>>2]&-8)-bt|0,Xe=le>>>0>>0,w=Xe?le:w,p=Xe?G:p,G=o[G+16+(((o[G+16>>2]|0)==0&1)<<2)>>2]|0;while(G|0);Xe=p,U=w}if(le=Xe+bt|0,Xe>>>0>>0){J=o[Xe+24>>2]|0,y=o[Xe+12>>2]|0;do if((y|0)==(Xe|0)){if(p=Xe+20|0,y=o[p>>2]|0,!y&&(p=Xe+16|0,y=o[p>>2]|0,!y)){w=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0,w=y}else w=o[Xe+8>>2]|0,o[w+12>>2]=y,o[y+8>>2]=w,w=y;while(!1);do if(J|0){if(y=o[Xe+28>>2]|0,p=11436+(y<<2)|0,(Xe|0)==(o[p>>2]|0)){if(o[p>>2]=w,!w){o[2784]=Ge&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=J,y=o[Xe+16>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),y=o[Xe+20>>2]|0,y|0&&(o[w+20>>2]=y,o[y+24>>2]=w)}while(!1);return U>>>0<16?(pi=U+bt|0,o[Xe+4>>2]=pi|3,pi=Xe+pi+4|0,o[pi>>2]=o[pi>>2]|1):(o[Xe+4>>2]=bt|3,o[le+4>>2]=U|1,o[le+U>>2]=U,It|0&&(G=o[2788]|0,y=It>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=rr|y,y=w,p=w+8|0),o[p>>2]=G,o[y+12>>2]=G,o[G+8>>2]=y,o[G+12>>2]=w),o[2785]=U,o[2788]=le),pi=Xe+8|0,B=hl,pi|0}else rr=bt}else rr=bt}else rr=bt}else if(p>>>0<=4294967231)if(p=p+11|0,bt=p&-8,Xe=o[2784]|0,Xe){G=0-bt|0,p=p>>>8,p?bt>>>0>16777215?Ge=31:(rr=(p+1048320|0)>>>16&8,ss=p<>>16&4,ss=ss<>>16&2,Ge=14-(It|rr|Ge)+(ss<>>15)|0,Ge=bt>>>(Ge+7|0)&1|Ge<<1):Ge=0,w=o[11436+(Ge<<2)>>2]|0;e:do if(!w)w=0,p=0,ss=57;else for(p=0,le=bt<<((Ge|0)==31?0:25-(Ge>>>1)|0),U=0;;){if(J=(o[w+4>>2]&-8)-bt|0,J>>>0>>0)if(J)p=w,G=J;else{p=w,G=0,J=w,ss=61;break e}if(J=o[w+20>>2]|0,w=o[w+16+(le>>>31<<2)>>2]|0,U=(J|0)==0|(J|0)==(w|0)?U:J,J=(w|0)==0,J){w=U,ss=57;break}else le=le<<((J^1)&1)}while(!1);if((ss|0)==57){if((w|0)==0&(p|0)==0){if(p=2<>>12&16,rr=rr>>>le,U=rr>>>5&8,rr=rr>>>U,Ge=rr>>>2&4,rr=rr>>>Ge,It=rr>>>1&2,rr=rr>>>It,w=rr>>>1&1,p=0,w=o[11436+((U|le|Ge|It|w)+(rr>>>w)<<2)>>2]|0}w?(J=w,ss=61):(Ge=p,le=G)}if((ss|0)==61)for(;;)if(ss=0,w=(o[J+4>>2]&-8)-bt|0,rr=w>>>0>>0,w=rr?w:G,p=rr?J:p,J=o[J+16+(((o[J+16>>2]|0)==0&1)<<2)>>2]|0,J)G=w,ss=61;else{Ge=p,le=w;break}if(Ge|0&&le>>>0<((o[2785]|0)-bt|0)>>>0){if(U=Ge+bt|0,Ge>>>0>=U>>>0)return pi=0,B=hl,pi|0;J=o[Ge+24>>2]|0,y=o[Ge+12>>2]|0;do if((y|0)==(Ge|0)){if(p=Ge+20|0,y=o[p>>2]|0,!y&&(p=Ge+16|0,y=o[p>>2]|0,!y)){y=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0}else pi=o[Ge+8>>2]|0,o[pi+12>>2]=y,o[y+8>>2]=pi;while(!1);do if(J){if(p=o[Ge+28>>2]|0,w=11436+(p<<2)|0,(Ge|0)==(o[w>>2]|0)){if(o[w>>2]=y,!y){G=Xe&~(1<>2]|0)!=(Ge|0)&1)<<2)>>2]=y,!y){G=Xe;break}o[y+24>>2]=J,p=o[Ge+16>>2]|0,p|0&&(o[y+16>>2]=p,o[p+24>>2]=y),p=o[Ge+20>>2]|0,p&&(o[y+20>>2]=p,o[p+24>>2]=y),G=Xe}else G=Xe;while(!1);do if(le>>>0>=16){if(o[Ge+4>>2]=bt|3,o[U+4>>2]=le|1,o[U+le>>2]=le,y=le>>>3,le>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=U,o[y+12>>2]=U,o[U+8>>2]=y,o[U+12>>2]=w;break}if(y=le>>>8,y?le>>>0>16777215?y=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=le>>>(y+7|0)&1|y<<1):y=0,w=11436+(y<<2)|0,o[U+28>>2]=y,p=U+16|0,o[p+4>>2]=0,o[p>>2]=0,p=1<>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}for(p=le<<((y|0)==31?0:25-(y>>>1)|0),w=o[w>>2]|0;;){if((o[w+4>>2]&-8|0)==(le|0)){ss=97;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=96;break}}if((ss|0)==96){o[G>>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}else if((ss|0)==97){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=U,o[ss>>2]=U,o[U+8>>2]=pi,o[U+12>>2]=w,o[U+24>>2]=0;break}}else pi=le+bt|0,o[Ge+4>>2]=pi|3,pi=Ge+pi+4|0,o[pi>>2]=o[pi>>2]|1;while(!1);return pi=Ge+8|0,B=hl,pi|0}else rr=bt}else rr=bt;else rr=-1;while(!1);if(w=o[2785]|0,w>>>0>=rr>>>0)return y=w-rr|0,p=o[2788]|0,y>>>0>15?(pi=p+rr|0,o[2788]=pi,o[2785]=y,o[pi+4>>2]=y|1,o[pi+y>>2]=y,o[p+4>>2]=rr|3):(o[2785]=0,o[2788]=0,o[p+4>>2]=w|3,pi=p+w+4|0,o[pi>>2]=o[pi>>2]|1),pi=p+8|0,B=hl,pi|0;if(le=o[2786]|0,le>>>0>rr>>>0)return So=le-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=hl,pi|0;if(o[2901]|0?p=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,p=an&-16^1431655768,o[an>>2]=p,o[2901]=p,p=4096),Ge=rr+48|0,Xe=rr+47|0,U=p+Xe|0,J=0-p|0,bt=U&J,bt>>>0<=rr>>>0||(p=o[2893]|0,p|0&&(It=o[2891]|0,an=It+bt|0,an>>>0<=It>>>0|an>>>0>p>>>0)))return pi=0,B=hl,pi|0;e:do if(o[2894]&4)y=0,ss=133;else{w=o[2789]|0;t:do if(w){for(G=11580;p=o[G>>2]|0,!(p>>>0<=w>>>0&&(Un=G+4|0,(p+(o[Un>>2]|0)|0)>>>0>w>>>0));)if(p=o[G+8>>2]|0,p)G=p;else{ss=118;break t}if(y=U-le&J,y>>>0<2147483647)if(p=kB(y|0)|0,(p|0)==((o[G>>2]|0)+(o[Un>>2]|0)|0)){if((p|0)!=-1){le=y,U=p,ss=135;break e}}else G=p,ss=126;else y=0}else ss=118;while(!1);do if((ss|0)==118)if(w=kB(0)|0,(w|0)!=-1&&(y=w,Ks=o[2902]|0,zi=Ks+-1|0,y=(zi&y|0?(zi+y&0-Ks)-y|0:0)+bt|0,Ks=o[2891]|0,zi=y+Ks|0,y>>>0>rr>>>0&y>>>0<2147483647)){if(Un=o[2893]|0,Un|0&&zi>>>0<=Ks>>>0|zi>>>0>Un>>>0){y=0;break}if(p=kB(y|0)|0,(p|0)==(w|0)){le=y,U=w,ss=135;break e}else G=p,ss=126}else y=0;while(!1);do if((ss|0)==126){if(w=0-y|0,!(Ge>>>0>y>>>0&(y>>>0<2147483647&(G|0)!=-1)))if((G|0)==-1){y=0;break}else{le=y,U=G,ss=135;break e}if(p=o[2903]|0,p=Xe-y+p&0-p,p>>>0>=2147483647){le=y,U=G,ss=135;break e}if((kB(p|0)|0)==-1){kB(w|0)|0,y=0;break}else{le=p+y|0,U=G,ss=135;break e}}while(!1);o[2894]=o[2894]|4,ss=133}while(!1);if((ss|0)==133&&bt>>>0<2147483647&&(So=kB(bt|0)|0,Un=kB(0)|0,Ds=Un-So|0,Si=Ds>>>0>(rr+40|0)>>>0,!((So|0)==-1|Si^1|So>>>0>>0&((So|0)!=-1&(Un|0)!=-1)^1))&&(le=Si?Ds:y,U=So,ss=135),(ss|0)==135){y=(o[2891]|0)+le|0,o[2891]=y,y>>>0>(o[2892]|0)>>>0&&(o[2892]=y),Xe=o[2789]|0;do if(Xe){for(y=11580;;){if(p=o[y>>2]|0,w=y+4|0,G=o[w>>2]|0,(U|0)==(p+G|0)){ss=145;break}if(J=o[y+8>>2]|0,J)y=J;else break}if((ss|0)==145&&!(o[y+12>>2]&8|0)&&Xe>>>0>>0&Xe>>>0>=p>>>0){o[w>>2]=G+le,pi=Xe+8|0,pi=pi&7|0?0-pi&7:0,ss=Xe+pi|0,pi=(o[2786]|0)+(le-pi)|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905];break}for(U>>>0<(o[2787]|0)>>>0&&(o[2787]=U),w=U+le|0,y=11580;;){if((o[y>>2]|0)==(w|0)){ss=153;break}if(p=o[y+8>>2]|0,p)y=p;else break}if((ss|0)==153&&!(o[y+12>>2]&8|0)){o[y>>2]=U,It=y+4|0,o[It>>2]=(o[It>>2]|0)+le,It=U+8|0,It=U+(It&7|0?0-It&7:0)|0,y=w+8|0,y=w+(y&7|0?0-y&7:0)|0,bt=It+rr|0,Ge=y-It-rr|0,o[It+4>>2]=rr|3;do if((y|0)!=(Xe|0)){if((y|0)==(o[2788]|0)){pi=(o[2785]|0)+Ge|0,o[2785]=pi,o[2788]=bt,o[bt+4>>2]=pi|1,o[bt+pi>>2]=pi;break}if(p=o[y+4>>2]|0,(p&3|0)==1){le=p&-8,G=p>>>3;e:do if(p>>>0<256)if(p=o[y+8>>2]|0,w=o[y+12>>2]|0,(w|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=w,o[w+8>>2]=p;break}else{U=o[y+24>>2]|0,p=o[y+12>>2]|0;do if((p|0)==(y|0)){if(G=y+16|0,w=G+4|0,p=o[w>>2]|0,!p)if(p=o[G>>2]|0,p)w=G;else{p=0;break}for(;;){if(G=p+20|0,J=o[G>>2]|0,J|0){p=J,w=G;continue}if(G=p+16|0,J=o[G>>2]|0,J)p=J,w=G;else break}o[w>>2]=0}else pi=o[y+8>>2]|0,o[pi+12>>2]=p,o[p+8>>2]=pi;while(!1);if(!U)break;w=o[y+28>>2]|0,G=11436+(w<<2)|0;do if((y|0)!=(o[G>>2]|0)){if(o[U+16+(((o[U+16>>2]|0)!=(y|0)&1)<<2)>>2]=p,!p)break e}else{if(o[G>>2]=p,p|0)break;o[2784]=o[2784]&~(1<>2]=U,w=y+16|0,G=o[w>>2]|0,G|0&&(o[p+16>>2]=G,o[G+24>>2]=p),w=o[w+4>>2]|0,!w)break;o[p+20>>2]=w,o[w+24>>2]=p}while(!1);y=y+le|0,J=le+Ge|0}else J=Ge;if(y=y+4|0,o[y>>2]=o[y>>2]&-2,o[bt+4>>2]=J|1,o[bt+J>>2]=J,y=J>>>3,J>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=bt,o[y+12>>2]=bt,o[bt+8>>2]=y,o[bt+12>>2]=w;break}y=J>>>8;do if(!y)y=0;else{if(J>>>0>16777215){y=31;break}ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=J>>>(y+7|0)&1|y<<1}while(!1);if(G=11436+(y<<2)|0,o[bt+28>>2]=y,p=bt+16|0,o[p+4>>2]=0,o[p>>2]=0,p=o[2784]|0,w=1<>2]=bt,o[bt+24>>2]=G,o[bt+12>>2]=bt,o[bt+8>>2]=bt;break}for(p=J<<((y|0)==31?0:25-(y>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(J|0)){ss=194;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=193;break}}if((ss|0)==193){o[G>>2]=bt,o[bt+24>>2]=w,o[bt+12>>2]=bt,o[bt+8>>2]=bt;break}else if((ss|0)==194){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=bt,o[ss>>2]=bt,o[bt+8>>2]=pi,o[bt+12>>2]=w,o[bt+24>>2]=0;break}}else pi=(o[2786]|0)+Ge|0,o[2786]=pi,o[2789]=bt,o[bt+4>>2]=pi|1;while(!1);return pi=It+8|0,B=hl,pi|0}for(y=11580;p=o[y>>2]|0,!(p>>>0<=Xe>>>0&&(pi=p+(o[y+4>>2]|0)|0,pi>>>0>Xe>>>0));)y=o[y+8>>2]|0;J=pi+-47|0,p=J+8|0,p=J+(p&7|0?0-p&7:0)|0,J=Xe+16|0,p=p>>>0>>0?Xe:p,y=p+8|0,w=U+8|0,w=w&7|0?0-w&7:0,ss=U+w|0,w=le+-40-w|0,o[2789]=ss,o[2786]=w,o[ss+4>>2]=w|1,o[ss+w+4>>2]=40,o[2790]=o[2905],w=p+4|0,o[w>>2]=27,o[y>>2]=o[2895],o[y+4>>2]=o[2896],o[y+8>>2]=o[2897],o[y+12>>2]=o[2898],o[2895]=U,o[2896]=le,o[2898]=0,o[2897]=y,y=p+24|0;do ss=y,y=y+4|0,o[y>>2]=7;while((ss+8|0)>>>0>>0);if((p|0)!=(Xe|0)){if(U=p-Xe|0,o[w>>2]=o[w>>2]&-2,o[Xe+4>>2]=U|1,o[p>>2]=U,y=U>>>3,U>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=Xe,o[y+12>>2]=Xe,o[Xe+8>>2]=y,o[Xe+12>>2]=w;break}if(y=U>>>8,y?U>>>0>16777215?w=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,w=14-(So|ss|w)+(pi<>>15)|0,w=U>>>(w+7|0)&1|w<<1):w=0,G=11436+(w<<2)|0,o[Xe+28>>2]=w,o[Xe+20>>2]=0,o[J>>2]=0,y=o[2784]|0,p=1<>2]=Xe,o[Xe+24>>2]=G,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}for(p=U<<((w|0)==31?0:25-(w>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(U|0)){ss=216;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=215;break}}if((ss|0)==215){o[G>>2]=Xe,o[Xe+24>>2]=w,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}else if((ss|0)==216){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=Xe,o[ss>>2]=Xe,o[Xe+8>>2]=pi,o[Xe+12>>2]=w,o[Xe+24>>2]=0;break}}}else{pi=o[2787]|0,(pi|0)==0|U>>>0>>0&&(o[2787]=U),o[2895]=U,o[2896]=le,o[2898]=0,o[2792]=o[2901],o[2791]=-1,y=0;do pi=11172+(y<<1<<2)|0,o[pi+12>>2]=pi,o[pi+8>>2]=pi,y=y+1|0;while((y|0)!=32);pi=U+8|0,pi=pi&7|0?0-pi&7:0,ss=U+pi|0,pi=le+-40-pi|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905]}while(!1);if(y=o[2786]|0,y>>>0>rr>>>0)return So=y-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=hl,pi|0}return o[(qY()|0)>>2]=12,pi=0,B=hl,pi|0}function qne(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;if(p){w=p+-8|0,J=o[2787]|0,p=o[p+-4>>2]|0,y=p&-8,Xe=w+y|0;do if(p&1)Ge=w,le=w;else{if(G=o[w>>2]|0,!(p&3)||(le=w+(0-G)|0,U=G+y|0,le>>>0>>0))return;if((le|0)==(o[2788]|0)){if(p=Xe+4|0,y=o[p>>2]|0,(y&3|0)!=3){Ge=le,y=U;break}o[2785]=U,o[p>>2]=y&-2,o[le+4>>2]=U|1,o[le+U>>2]=U;return}if(w=G>>>3,G>>>0<256)if(p=o[le+8>>2]|0,y=o[le+12>>2]|0,(y|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=y,o[y+8>>2]=p,Ge=le,y=U;break}J=o[le+24>>2]|0,p=o[le+12>>2]|0;do if((p|0)==(le|0)){if(w=le+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{p=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0}else Ge=o[le+8>>2]|0,o[Ge+12>>2]=p,o[p+8>>2]=Ge;while(!1);if(J){if(y=o[le+28>>2]|0,w=11436+(y<<2)|0,(le|0)==(o[w>>2]|0)){if(o[w>>2]=p,!p){o[2784]=o[2784]&~(1<>2]|0)!=(le|0)&1)<<2)>>2]=p,!p){Ge=le,y=U;break}o[p+24>>2]=J,y=le+16|0,w=o[y>>2]|0,w|0&&(o[p+16>>2]=w,o[w+24>>2]=p),y=o[y+4>>2]|0,y?(o[p+20>>2]=y,o[y+24>>2]=p,Ge=le,y=U):(Ge=le,y=U)}else Ge=le,y=U}while(!1);if(!(le>>>0>=Xe>>>0)&&(p=Xe+4|0,G=o[p>>2]|0,!!(G&1))){if(G&2)o[p>>2]=G&-2,o[Ge+4>>2]=y|1,o[le+y>>2]=y,J=y;else{if(p=o[2788]|0,(Xe|0)==(o[2789]|0)){if(Xe=(o[2786]|0)+y|0,o[2786]=Xe,o[2789]=Ge,o[Ge+4>>2]=Xe|1,(Ge|0)!=(p|0))return;o[2788]=0,o[2785]=0;return}if((Xe|0)==(p|0)){Xe=(o[2785]|0)+y|0,o[2785]=Xe,o[2788]=le,o[Ge+4>>2]=Xe|1,o[le+Xe>>2]=Xe;return}J=(G&-8)+y|0,w=G>>>3;do if(G>>>0<256)if(y=o[Xe+8>>2]|0,p=o[Xe+12>>2]|0,(p|0)==(y|0)){o[2783]=o[2783]&~(1<>2]=p,o[p+8>>2]=y;break}else{U=o[Xe+24>>2]|0,p=o[Xe+12>>2]|0;do if((p|0)==(Xe|0)){if(w=Xe+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{w=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0,w=p}else w=o[Xe+8>>2]|0,o[w+12>>2]=p,o[p+8>>2]=w,w=p;while(!1);if(U|0){if(p=o[Xe+28>>2]|0,y=11436+(p<<2)|0,(Xe|0)==(o[y>>2]|0)){if(o[y>>2]=w,!w){o[2784]=o[2784]&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=U,p=Xe+16|0,y=o[p>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),p=o[p+4>>2]|0,p|0&&(o[w+20>>2]=p,o[p+24>>2]=w)}}while(!1);if(o[Ge+4>>2]=J|1,o[le+J>>2]=J,(Ge|0)==(o[2788]|0)){o[2785]=J;return}}if(p=J>>>3,J>>>0<256){w=11172+(p<<1<<2)|0,y=o[2783]|0,p=1<>2]|0):(o[2783]=y|p,p=w,y=w+8|0),o[y>>2]=Ge,o[p+12>>2]=Ge,o[Ge+8>>2]=p,o[Ge+12>>2]=w;return}p=J>>>8,p?J>>>0>16777215?p=31:(le=(p+1048320|0)>>>16&8,Xe=p<>>16&4,Xe=Xe<>>16&2,p=14-(U|le|p)+(Xe<

>>15)|0,p=J>>>(p+7|0)&1|p<<1):p=0,G=11436+(p<<2)|0,o[Ge+28>>2]=p,o[Ge+20>>2]=0,o[Ge+16>>2]=0,y=o[2784]|0,w=1<>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(J|0)){p=73;break}if(G=w+16+(y>>>31<<2)|0,p=o[G>>2]|0,p)y=y<<1,w=p;else{p=72;break}}if((p|0)==72){o[G>>2]=Ge,o[Ge+24>>2]=w,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;break}else if((p|0)==73){le=w+8|0,Xe=o[le>>2]|0,o[Xe+12>>2]=Ge,o[le>>2]=Ge,o[Ge+8>>2]=Xe,o[Ge+12>>2]=w,o[Ge+24>>2]=0;break}}else o[2784]=y|w,o[G>>2]=Ge,o[Ge+24>>2]=G,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;while(!1);if(Xe=(o[2791]|0)+-1|0,o[2791]=Xe,!Xe)p=11588;else return;for(;p=o[p>>2]|0,p;)p=p+8|0;o[2791]=-1}}}function jAe(){return 11628}function dU(p){p=p|0;var y=0,w=0;return y=B,B=B+16|0,w=y,o[w>>2]=gz(o[p+60>>2]|0)|0,p=eie(Xs(6,w|0)|0)|0,B=y,p|0}function $ne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0;rr=B,B=B+48|0,bt=rr+16|0,U=rr,J=rr+32|0,Ge=p+28|0,G=o[Ge>>2]|0,o[J>>2]=G,Xe=p+20|0,G=(o[Xe>>2]|0)-G|0,o[J+4>>2]=G,o[J+8>>2]=y,o[J+12>>2]=w,G=G+w|0,le=p+60|0,o[U>>2]=o[le>>2],o[U+4>>2]=J,o[U+8>>2]=2,U=eie(Ma(146,U|0)|0)|0;e:do if((G|0)!=(U|0)){for(y=2;!((U|0)<0);)if(G=G-U|0,Ks=o[J+4>>2]|0,an=U>>>0>Ks>>>0,J=an?J+8|0:J,y=(an<<31>>31)+y|0,Ks=U-(an?Ks:0)|0,o[J>>2]=(o[J>>2]|0)+Ks,an=J+4|0,o[an>>2]=(o[an>>2]|0)-Ks,o[bt>>2]=o[le>>2],o[bt+4>>2]=J,o[bt+8>>2]=y,U=eie(Ma(146,bt|0)|0)|0,(G|0)==(U|0)){It=3;break e}o[p+16>>2]=0,o[Ge>>2]=0,o[Xe>>2]=0,o[p>>2]=o[p>>2]|32,(y|0)==2?w=0:w=w-(o[J+4>>2]|0)|0}else It=3;while(!1);return(It|0)==3&&(Ks=o[p+44>>2]|0,o[p+16>>2]=Ks+(o[p+48>>2]|0),o[Ge>>2]=Ks,o[Xe>>2]=Ks),B=rr,w|0}function uPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return J=B,B=B+32|0,U=J,G=J+20|0,o[U>>2]=o[p+60>>2],o[U+4>>2]=0,o[U+8>>2]=y,o[U+12>>2]=G,o[U+16>>2]=w,(eie(Gs(140,U|0)|0)|0)<0?(o[G>>2]=-1,p=-1):p=o[G>>2]|0,B=J,p|0}function eie(p){return p=p|0,p>>>0>4294963200&&(o[(qY()|0)>>2]=0-p,p=-1),p|0}function qY(){return(Obe()|0)+64|0}function Obe(){return tie()|0}function tie(){return 2084}function gz(p){return p=p|0,p|0}function Mbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;return J=B,B=B+32|0,G=J,o[p+36>>2]=1,!(o[p>>2]&64|0)&&(o[G>>2]=o[p+60>>2],o[G+4>>2]=21523,o[G+8>>2]=J+16,GA(54,G|0)|0)&&(n[p+75>>0]=-1),G=$ne(p,y,w)|0,B=J,G|0}function Kqe(p,y){p=p|0,y=y|0;var w=0,G=0;if(w=n[p>>0]|0,G=n[y>>0]|0,!(w<<24>>24)||w<<24>>24!=G<<24>>24)p=G;else{do p=p+1|0,y=y+1|0,w=n[p>>0]|0,G=n[y>>0]|0;while(!(!(w<<24>>24)||w<<24>>24!=G<<24>>24));p=G}return(w&255)-(p&255)|0}function DLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;e:do if(!w)p=0;else{for(;G=n[p>>0]|0,J=n[y>>0]|0,G<<24>>24==J<<24>>24;)if(w=w+-1|0,w)p=p+1|0,y=y+1|0;else{p=0;break e}p=(G&255)-(J&255)|0}while(!1);return p|0}function zAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;Un=B,B=B+224|0,It=Un+120|0,rr=Un+80|0,Ks=Un,zi=Un+136|0,G=rr,J=G+40|0;do o[G>>2]=0,G=G+4|0;while((G|0)<(J|0));return o[It>>2]=o[w>>2],(JA(0,y,It,Ks,rr)|0)<0?w=-1:((o[p+76>>2]|0)>-1?an=rie(p)|0:an=0,w=o[p>>2]|0,bt=w&32,(n[p+74>>0]|0)<1&&(o[p>>2]=w&-33),G=p+48|0,o[G>>2]|0?w=JA(p,y,It,Ks,rr)|0:(J=p+44|0,U=o[J>>2]|0,o[J>>2]=zi,le=p+28|0,o[le>>2]=zi,Ge=p+20|0,o[Ge>>2]=zi,o[G>>2]=80,Xe=p+16|0,o[Xe>>2]=zi+80,w=JA(p,y,It,Ks,rr)|0,U&&(KL[o[p+36>>2]&7](p,0,0)|0,w=o[Ge>>2]|0?w:-1,o[J>>2]=U,o[G>>2]=0,o[Xe>>2]=0,o[le>>2]=0,o[Ge>>2]=0)),G=o[p>>2]|0,o[p>>2]=G|bt,an|0&&jqe(p),w=G&32|0?-1:w),B=Un,w|0}function JA(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0;wg=B,B=B+64|0,fl=wg+16|0,Tc=wg,hl=wg+24|0,Bg=wg+8|0,Dg=wg+20|0,o[fl>>2]=y,So=(p|0)!=0,ss=hl+40|0,pi=ss,hl=hl+39|0,uu=Bg+4|0,le=0,U=0,It=0;e:for(;;){do if((U|0)>-1)if((le|0)>(2147483647-U|0)){o[(qY()|0)>>2]=75,U=-1;break}else{U=le+U|0;break}while(!1);if(le=n[y>>0]|0,le<<24>>24)Ge=y;else{Si=87;break}t:for(;;){switch(le<<24>>24){case 37:{le=Ge,Si=9;break t}case 0:{le=Ge;break t}default:}Ds=Ge+1|0,o[fl>>2]=Ds,le=n[Ds>>0]|0,Ge=Ds}t:do if((Si|0)==9)for(;;){if(Si=0,(n[Ge+1>>0]|0)!=37)break t;if(le=le+1|0,Ge=Ge+2|0,o[fl>>2]=Ge,(n[Ge>>0]|0)==37)Si=9;else break}while(!1);if(le=le-y|0,So&&o0(p,y,le),le|0){y=Ge;continue}Xe=Ge+1|0,le=(n[Xe>>0]|0)+-48|0,le>>>0<10?(Ds=(n[Ge+2>>0]|0)==36,Un=Ds?le:-1,It=Ds?1:It,Xe=Ds?Ge+3|0:Xe):Un=-1,o[fl>>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0;t:do if(Ge>>>0<32)for(bt=0,rr=le;;){if(le=1<>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0,Ge>>>0>=32)break;rr=le}else bt=0;while(!1);if(le<<24>>24==42){if(Ge=Xe+1|0,le=(n[Ge>>0]|0)+-48|0,le>>>0<10&&(n[Xe+2>>0]|0)==36)o[J+(le<<2)>>2]=10,le=o[G+((n[Ge>>0]|0)+-48<<3)>>2]|0,It=1,Xe=Xe+3|0;else{if(It|0){U=-1;break}So?(It=(o[w>>2]|0)+3&-4,le=o[It>>2]|0,o[w>>2]=It+4,It=0,Xe=Ge):(le=0,It=0,Xe=Ge)}o[fl>>2]=Xe,Ds=(le|0)<0,le=Ds?0-le|0:le,bt=Ds?bt|8192:bt}else{if(le=qAe(fl)|0,(le|0)<0){U=-1;break}Xe=o[fl>>2]|0}do if((n[Xe>>0]|0)==46){if((n[Xe+1>>0]|0)!=42){o[fl>>2]=Xe+1,Ge=qAe(fl)|0,Xe=o[fl>>2]|0;break}if(rr=Xe+2|0,Ge=(n[rr>>0]|0)+-48|0,Ge>>>0<10&&(n[Xe+3>>0]|0)==36){o[J+(Ge<<2)>>2]=10,Ge=o[G+((n[rr>>0]|0)+-48<<3)>>2]|0,Xe=Xe+4|0,o[fl>>2]=Xe;break}if(It|0){U=-1;break e}So?(Ds=(o[w>>2]|0)+3&-4,Ge=o[Ds>>2]|0,o[w>>2]=Ds+4):Ge=0,o[fl>>2]=rr,Xe=rr}else Ge=-1;while(!1);for(zi=0;;){if(((n[Xe>>0]|0)+-65|0)>>>0>57){U=-1;break e}if(Ds=Xe+1|0,o[fl>>2]=Ds,rr=n[(n[Xe>>0]|0)+-65+(5178+(zi*58|0))>>0]|0,an=rr&255,(an+-1|0)>>>0<8)zi=an,Xe=Ds;else break}if(!(rr<<24>>24)){U=-1;break}Ks=(Un|0)>-1;do if(rr<<24>>24==19)if(Ks){U=-1;break e}else Si=49;else{if(Ks){o[J+(Un<<2)>>2]=an,Ks=G+(Un<<3)|0,Un=o[Ks+4>>2]|0,Si=Tc,o[Si>>2]=o[Ks>>2],o[Si+4>>2]=Un,Si=49;break}if(!So){U=0;break e}Vy(Tc,an,w)}while(!1);if((Si|0)==49&&(Si=0,!So)){le=0,y=Ds;continue}Xe=n[Xe>>0]|0,Xe=(zi|0)!=0&(Xe&15|0)==3?Xe&-33:Xe,Ks=bt&-65537,Un=bt&8192|0?Ks:bt;t:do switch(Xe|0){case 110:switch((zi&255)<<24>>24){case 0:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 1:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 2:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}case 3:{a[o[Tc>>2]>>1]=U,le=0,y=Ds;continue e}case 4:{n[o[Tc>>2]>>0]=U,le=0,y=Ds;continue e}case 6:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 7:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}default:{le=0,y=Ds;continue e}}case 112:{Xe=120,Ge=Ge>>>0>8?Ge:8,y=Un|8,Si=61;break}case 88:case 120:{y=Un,Si=61;break}case 111:{Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,an=kLe(y,Xe,ss)|0,Ks=pi-an|0,bt=0,rr=5642,Ge=(Un&8|0)==0|(Ge|0)>(Ks|0)?Ge:Ks+1|0,Ks=Un,Si=67;break}case 105:case 100:if(Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,(Xe|0)<0){y=XT(0,0,y|0,Xe|0)|0,Xe=ct,bt=Tc,o[bt>>2]=y,o[bt+4>>2]=Xe,bt=1,rr=5642,Si=66;break t}else{bt=(Un&2049|0)!=0&1,rr=Un&2048|0?5643:Un&1|0?5644:5642,Si=66;break t}case 117:{Xe=Tc,bt=0,rr=5642,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,Si=66;break}case 99:{n[hl>>0]=o[Tc>>2],y=hl,bt=0,rr=5642,an=ss,Xe=1,Ge=Ks;break}case 109:{Xe=gPt(o[(qY()|0)>>2]|0)|0,Si=71;break}case 115:{Xe=o[Tc>>2]|0,Xe=Xe|0?Xe:5652,Si=71;break}case 67:{o[Bg>>2]=o[Tc>>2],o[uu>>2]=0,o[Tc>>2]=Bg,an=-1,Xe=Bg,Si=75;break}case 83:{y=o[Tc>>2]|0,Ge?(an=Ge,Xe=y,Si=75):(pv(p,32,le,0,Un),y=0,Si=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{le=GLe(p,+C[Tc>>3],le,Ge,Un,Xe)|0,y=Ds;continue e}default:bt=0,rr=5642,an=ss,Xe=Ge,Ge=Un}while(!1);t:do if((Si|0)==61)Un=Tc,zi=o[Un>>2]|0,Un=o[Un+4>>2]|0,an=Hbe(zi,Un,ss,Xe&32)|0,rr=(y&8|0)==0|(zi|0)==0&(Un|0)==0,bt=rr?0:2,rr=rr?5642:5642+(Xe>>4)|0,Ks=y,y=zi,Xe=Un,Si=67;else if((Si|0)==66)an=pU(y,Xe,ss)|0,Ks=Un,Si=67;else if((Si|0)==71)Si=0,Un=xLe(Xe,0,Ge)|0,zi=(Un|0)==0,y=Xe,bt=0,rr=5642,an=zi?Xe+Ge|0:Un,Xe=zi?Ge:Un-Xe|0,Ge=Ks;else if((Si|0)==75){for(Si=0,rr=Xe,y=0,Ge=0;bt=o[rr>>2]|0,!(!bt||(Ge=Ybe(Dg,bt)|0,(Ge|0)<0|Ge>>>0>(an-y|0)>>>0));)if(y=Ge+y|0,an>>>0>y>>>0)rr=rr+4|0;else break;if((Ge|0)<0){U=-1;break e}if(pv(p,32,le,y,Un),!y)y=0,Si=84;else for(bt=0;;){if(Ge=o[Xe>>2]|0,!Ge){Si=84;break t}if(Ge=Ybe(Dg,Ge)|0,bt=Ge+bt|0,(bt|0)>(y|0)){Si=84;break t}if(o0(p,Dg,Ge),bt>>>0>=y>>>0){Si=84;break}else Xe=Xe+4|0}}while(!1);if((Si|0)==67)Si=0,Xe=(y|0)!=0|(Xe|0)!=0,Un=(Ge|0)!=0|Xe,Xe=((Xe^1)&1)+(pi-an)|0,y=Un?an:ss,an=ss,Xe=Un?(Ge|0)>(Xe|0)?Ge:Xe:Ge,Ge=(Ge|0)>-1?Ks&-65537:Ks;else if((Si|0)==84){Si=0,pv(p,32,le,y,Un^8192),le=(le|0)>(y|0)?le:y,y=Ds;continue}zi=an-y|0,Ks=(Xe|0)<(zi|0)?zi:Xe,Un=Ks+bt|0,le=(le|0)<(Un|0)?Un:le,pv(p,32,le,Un,Ge),o0(p,rr,bt),pv(p,48,le,Un,Ge^65536),pv(p,48,Ks,zi,0),o0(p,y,zi),pv(p,32,le,Un,Ge^8192),y=Ds}e:do if((Si|0)==87&&!p)if(!It)U=0;else{for(U=1;y=o[J+(U<<2)>>2]|0,!!y;)if(Vy(G+(U<<3)|0,y,w),U=U+1|0,(U|0)>=10){U=1;break e}for(;;){if(o[J+(U<<2)>>2]|0){U=-1;break e}if(U=U+1|0,(U|0)>=10){U=1;break}}}while(!1);return B=wg,U|0}function rie(p){return p=p|0,0}function jqe(p){p=p|0}function o0(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]&32||iie(y,w,p)|0}function qAe(p){p=p|0;var y=0,w=0,G=0;if(w=o[p>>2]|0,G=(n[w>>0]|0)+-48|0,G>>>0<10){y=0;do y=G+(y*10|0)|0,w=w+1|0,o[p>>2]=w,G=(n[w>>0]|0)+-48|0;while(G>>>0<10)}else y=0;return y|0}function Vy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;e:do if(y>>>0<=20)do switch(y|0){case 9:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,o[p>>2]=y;break e}case 10:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=((y|0)<0)<<31>>31;break e}case 11:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=0;break e}case 12:{G=(o[w>>2]|0)+7&-8,y=G,J=o[y>>2]|0,y=o[y+4>>2]|0,o[w>>2]=G+8,G=p,o[G>>2]=J,o[G+4>>2]=y;break e}case 13:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,G=(G&65535)<<16>>16,J=p,o[J>>2]=G,o[J+4>>2]=((G|0)<0)<<31>>31;break e}case 14:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,J=p,o[J>>2]=G&65535,o[J+4>>2]=0;break e}case 15:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,G=(G&255)<<24>>24,J=p,o[J>>2]=G,o[J+4>>2]=((G|0)<0)<<31>>31;break e}case 16:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,J=p,o[J>>2]=G&255,o[J+4>>2]=0;break e}case 17:{J=(o[w>>2]|0)+7&-8,U=+C[J>>3],o[w>>2]=J+8,C[p>>3]=U;break e}case 18:{J=(o[w>>2]|0)+7&-8,U=+C[J>>3],o[w>>2]=J+8,C[p>>3]=U;break e}default:break e}while(!1);while(!1)}function Hbe(p,y,w,G){if(p=p|0,y=y|0,w=w|0,G=G|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=l[5694+(p&15)>>0]|0|G,p=D3(p|0,y|0,4)|0,y=ct;while(!((p|0)==0&(y|0)==0));return w|0}function kLe(p,y,w){if(p=p|0,y=y|0,w=w|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=p&7|48,p=D3(p|0,y|0,3)|0,y=ct;while(!((p|0)==0&(y|0)==0));return w|0}function pU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if(y>>>0>0|(y|0)==0&p>>>0>4294967295){for(;G=hU(p|0,y|0,10,0)|0,w=w+-1|0,n[w>>0]=G&255|48,G=p,p=k3(p|0,y|0,10,0)|0,y>>>0>9|(y|0)==9&G>>>0>4294967295;)y=ct;y=p}else y=p;if(y)for(;w=w+-1|0,n[w>>0]=(y>>>0)%10|0|48,!(y>>>0<10);)y=(y>>>0)/10|0;return w|0}function gPt(p){return p=p|0,Ube(p,o[(nie()|0)+188>>2]|0)|0}function xLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;U=y&255,G=(w|0)!=0;e:do if(G&(p&3|0)!=0)for(J=y&255;;){if((n[p>>0]|0)==J<<24>>24){le=6;break e}if(p=p+1|0,w=w+-1|0,G=(w|0)!=0,!(G&(p&3|0)!=0)){le=5;break}}else le=5;while(!1);(le|0)==5&&(G?le=6:w=0);e:do if((le|0)==6&&(J=y&255,(n[p>>0]|0)!=J<<24>>24)){G=cr(U,16843009)|0;t:do if(w>>>0>3){for(;U=o[p>>2]^G,!((U&-2139062144^-2139062144)&U+-16843009|0);)if(p=p+4|0,w=w+-4|0,w>>>0<=3){le=11;break t}}else le=11;while(!1);if((le|0)==11&&!w){w=0;break}for(;;){if((n[p>>0]|0)==J<<24>>24)break e;if(p=p+1|0,w=w+-1|0,!w){w=0;break}}}while(!1);return(w|0?p:0)|0}function pv(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0;if(le=B,B=B+256|0,U=le,(w|0)>(G|0)&(J&73728|0)==0){if(J=w-G|0,fz(U|0,y|0,(J>>>0<256?J:256)|0)|0,J>>>0>255){y=w-G|0;do o0(p,U,256),J=J+-256|0;while(J>>>0>255);J=y&255}o0(p,U,J)}B=le}function Ybe(p,y){return p=p|0,y=y|0,p?p=zqe(p,y,0)|0:p=0,p|0}function GLe(p,y,w,G,J,U){p=p|0,y=+y,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0;em=B,B=B+560|0,Xe=em+8|0,Ds=em,wg=em+524|0,Dg=wg,bt=em+512|0,o[Ds>>2]=0,Bg=bt+12|0,Qbe(y)|0,(ct|0)<0?(y=-y,fl=1,uu=5659):(fl=(J&2049|0)!=0&1,uu=J&2048|0?5662:J&1|0?5665:5660),Qbe(y)|0,Tc=ct&2146435072;do if(Tc>>>0<2146435072|(Tc|0)==2146435072&!1){if(Ks=+Xbe(y,Ds)*2,le=Ks!=0,le&&(o[Ds>>2]=(o[Ds>>2]|0)+-1),So=U|32,(So|0)==97){zi=U&32,an=zi|0?uu+9|0:uu,rr=fl|2,le=12-G|0;do if(G>>>0>11|(le|0)==0)y=Ks;else{y=8;do le=le+-1|0,y=y*16;while(le|0);if((n[an>>0]|0)==45){y=-(y+(-Ks-y));break}else{y=Ks+y-y;break}}while(!1);Ge=o[Ds>>2]|0,le=(Ge|0)<0?0-Ge|0:Ge,le=pU(le,((le|0)<0)<<31>>31,Bg)|0,(le|0)==(Bg|0)&&(le=bt+11|0,n[le>>0]=48),n[le+-1>>0]=(Ge>>31&2)+43,It=le+-2|0,n[It>>0]=U+15,bt=(G|0)<1,Xe=(J&8|0)==0,le=wg;do Tc=~~y,Ge=le+1|0,n[le>>0]=l[5694+Tc>>0]|zi,y=(y-+(Tc|0))*16,(Ge-Dg|0)==1&&!(Xe&(bt&y==0))?(n[Ge>>0]=46,le=le+2|0):le=Ge;while(y!=0);Tc=le-Dg|0,Dg=Bg-It|0,Bg=(G|0)!=0&(Tc+-2|0)<(G|0)?G+2|0:Tc,le=Dg+rr+Bg|0,pv(p,32,w,le,J),o0(p,an,rr),pv(p,48,w,le,J^65536),o0(p,wg,Tc),pv(p,48,Bg-Tc|0,0,0),o0(p,It,Dg),pv(p,32,w,le,J^8192);break}Ge=(G|0)<0?6:G,le?(le=(o[Ds>>2]|0)+-28|0,o[Ds>>2]=le,y=Ks*268435456):(y=Ks,le=o[Ds>>2]|0),Tc=(le|0)<0?Xe:Xe+288|0,Xe=Tc;do pi=~~y>>>0,o[Xe>>2]=pi,Xe=Xe+4|0,y=(y-+(pi>>>0))*1e9;while(y!=0);if((le|0)>0)for(bt=Tc,rr=Xe;;){if(It=(le|0)<29?le:29,le=rr+-4|0,le>>>0>=bt>>>0){Xe=0;do ss=Kbe(o[le>>2]|0,0,It|0)|0,ss=Hg(ss|0,ct|0,Xe|0,0)|0,pi=ct,Si=hU(ss|0,pi|0,1e9,0)|0,o[le>>2]=Si,Xe=k3(ss|0,pi|0,1e9,0)|0,le=le+-4|0;while(le>>>0>=bt>>>0);Xe&&(bt=bt+-4|0,o[bt>>2]=Xe)}for(Xe=rr;!(Xe>>>0<=bt>>>0);)if(le=Xe+-4|0,!(o[le>>2]|0))Xe=le;else break;if(le=(o[Ds>>2]|0)-It|0,o[Ds>>2]=le,(le|0)>0)rr=Xe;else break}else bt=Tc;if((le|0)<0){G=((Ge+25|0)/9|0)+1|0,Un=(So|0)==102;do{if(zi=0-le|0,zi=(zi|0)<9?zi:9,bt>>>0>>0){It=(1<>>zi,an=0,le=bt;do pi=o[le>>2]|0,o[le>>2]=(pi>>>zi)+an,an=cr(pi&It,rr)|0,le=le+4|0;while(le>>>0>>0);le=o[bt>>2]|0?bt:bt+4|0,an?(o[Xe>>2]=an,bt=le,le=Xe+4|0):(bt=le,le=Xe)}else bt=o[bt>>2]|0?bt:bt+4|0,le=Xe;Xe=Un?Tc:bt,Xe=(le-Xe>>2|0)>(G|0)?Xe+(G<<2)|0:le,le=(o[Ds>>2]|0)+zi|0,o[Ds>>2]=le}while((le|0)<0);le=bt,G=Xe}else le=bt,G=Xe;if(pi=Tc,le>>>0>>0){if(Xe=(pi-le>>2)*9|0,It=o[le>>2]|0,It>>>0>=10){bt=10;do bt=bt*10|0,Xe=Xe+1|0;while(It>>>0>=bt>>>0)}}else Xe=0;if(Un=(So|0)==103,Si=(Ge|0)!=0,bt=Ge-((So|0)!=102?Xe:0)+((Si&Un)<<31>>31)|0,(bt|0)<(((G-pi>>2)*9|0)+-9|0)){if(bt=bt+9216|0,zi=Tc+4+(((bt|0)/9|0)+-1024<<2)|0,bt=((bt|0)%9|0)+1|0,(bt|0)<9){It=10;do It=It*10|0,bt=bt+1|0;while((bt|0)!=9)}else It=10;if(rr=o[zi>>2]|0,an=(rr>>>0)%(It>>>0)|0,bt=(zi+4|0)==(G|0),bt&(an|0)==0)bt=zi;else if(Ks=((rr>>>0)/(It>>>0)|0)&1|0?9007199254740994:9007199254740992,ss=(It|0)/2|0,y=an>>>0>>0?.5:bt&(an|0)==(ss|0)?1:1.5,fl&&(ss=(n[uu>>0]|0)==45,y=ss?-y:y,Ks=ss?-Ks:Ks),bt=rr-an|0,o[zi>>2]=bt,Ks+y!=Ks){if(ss=bt+It|0,o[zi>>2]=ss,ss>>>0>999999999)for(Xe=zi;bt=Xe+-4|0,o[Xe>>2]=0,bt>>>0>>0&&(le=le+-4|0,o[le>>2]=0),ss=(o[bt>>2]|0)+1|0,o[bt>>2]=ss,ss>>>0>999999999;)Xe=bt;else bt=zi;if(Xe=(pi-le>>2)*9|0,rr=o[le>>2]|0,rr>>>0>=10){It=10;do It=It*10|0,Xe=Xe+1|0;while(rr>>>0>=It>>>0)}}else bt=zi;bt=bt+4|0,bt=G>>>0>bt>>>0?bt:G,ss=le}else bt=G,ss=le;for(So=bt;;){if(So>>>0<=ss>>>0){Ds=0;break}if(le=So+-4|0,!(o[le>>2]|0))So=le;else{Ds=1;break}}G=0-Xe|0;do if(Un)if(le=((Si^1)&1)+Ge|0,(le|0)>(Xe|0)&(Xe|0)>-5?(It=U+-1|0,Ge=le+-1-Xe|0):(It=U+-2|0,Ge=le+-1|0),le=J&8,le)zi=le;else{if(Ds&&(hl=o[So+-4>>2]|0,(hl|0)!=0))if((hl>>>0)%10|0)bt=0;else{bt=0,le=10;do le=le*10|0,bt=bt+1|0;while(!((hl>>>0)%(le>>>0)|0|0))}else bt=9;if(le=((So-pi>>2)*9|0)+-9|0,(It|32|0)==102){zi=le-bt|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}else{zi=le+Xe-bt|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}}else It=U,zi=J&8;while(!1);if(Un=Ge|zi,rr=(Un|0)!=0&1,an=(It|32|0)==102,an)Si=0,le=(Xe|0)>0?Xe:0;else{if(le=(Xe|0)<0?G:Xe,le=pU(le,((le|0)<0)<<31>>31,Bg)|0,bt=Bg,(bt-le|0)<2)do le=le+-1|0,n[le>>0]=48;while((bt-le|0)<2);n[le+-1>>0]=(Xe>>31&2)+43,le=le+-2|0,n[le>>0]=It,Si=le,le=bt-le|0}if(le=fl+1+Ge+rr+le|0,pv(p,32,w,le,J),o0(p,uu,fl),pv(p,48,w,le,J^65536),an){It=ss>>>0>Tc>>>0?Tc:ss,zi=wg+9|0,rr=zi,an=wg+8|0,bt=It;do{if(Xe=pU(o[bt>>2]|0,0,zi)|0,(bt|0)==(It|0))(Xe|0)==(zi|0)&&(n[an>>0]=48,Xe=an);else if(Xe>>>0>wg>>>0){fz(wg|0,48,Xe-Dg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}o0(p,Xe,rr-Xe|0),bt=bt+4|0}while(bt>>>0<=Tc>>>0);if(Un|0&&o0(p,5710,1),bt>>>0>>0&(Ge|0)>0)for(;;){if(Xe=pU(o[bt>>2]|0,0,zi)|0,Xe>>>0>wg>>>0){fz(wg|0,48,Xe-Dg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}if(o0(p,Xe,(Ge|0)<9?Ge:9),bt=bt+4|0,Xe=Ge+-9|0,bt>>>0>>0&(Ge|0)>9)Ge=Xe;else{Ge=Xe;break}}pv(p,48,Ge+9|0,9,0)}else{if(Un=Ds?So:ss+4|0,(Ge|0)>-1){Ds=wg+9|0,zi=(zi|0)==0,G=Ds,rr=0-Dg|0,an=wg+8|0,It=ss;do{Xe=pU(o[It>>2]|0,0,Ds)|0,(Xe|0)==(Ds|0)&&(n[an>>0]=48,Xe=an);do if((It|0)==(ss|0)){if(bt=Xe+1|0,o0(p,Xe,1),zi&(Ge|0)<1){Xe=bt;break}o0(p,5710,1),Xe=bt}else{if(Xe>>>0<=wg>>>0)break;fz(wg|0,48,Xe+rr|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}while(!1);Dg=G-Xe|0,o0(p,Xe,(Ge|0)>(Dg|0)?Dg:Ge),Ge=Ge-Dg|0,It=It+4|0}while(It>>>0>>0&(Ge|0)>-1)}pv(p,48,Ge+18|0,18,0),o0(p,Si,Bg-Si|0)}pv(p,32,w,le,J^8192)}else wg=(U&32|0)!=0,le=fl+3|0,pv(p,32,w,le,J&-65537),o0(p,uu,fl),o0(p,y!=y|!1?wg?5686:5690:wg?5678:5682,3),pv(p,32,w,le,J^8192);while(!1);return B=em,((le|0)<(w|0)?w:le)|0}function Qbe(p){p=+p;var y=0;return C[E>>3]=p,y=o[E>>2]|0,ct=o[E+4>>2]|0,y|0}function Xbe(p,y){return p=+p,y=y|0,+ +Jbe(p,y)}function Jbe(p,y){p=+p,y=y|0;var w=0,G=0,J=0;switch(C[E>>3]=p,w=o[E>>2]|0,G=o[E+4>>2]|0,J=D3(w|0,G|0,52)|0,J&2047){case 0:{p!=0?(p=+Jbe(p*18446744073709552e3,y),w=(o[y>>2]|0)+-64|0):w=0,o[y>>2]=w;break}case 2047:break;default:o[y>>2]=(J&2047)+-1022,o[E>>2]=w,o[E+4>>2]=G&-2146435073|1071644672,p=+C[E>>3]}return+p}function zqe(p,y,w){p=p|0,y=y|0,w=w|0;do if(p){if(y>>>0<128){n[p>>0]=y,p=1;break}if(!(o[o[(qqe()|0)+188>>2]>>2]|0))if((y&-128|0)==57216){n[p>>0]=y,p=1;break}else{o[(qY()|0)>>2]=84,p=-1;break}if(y>>>0<2048){n[p>>0]=y>>>6|192,n[p+1>>0]=y&63|128,p=2;break}if(y>>>0<55296|(y&-8192|0)==57344){n[p>>0]=y>>>12|224,n[p+1>>0]=y>>>6&63|128,n[p+2>>0]=y&63|128,p=3;break}if((y+-65536|0)>>>0<1048576){n[p>>0]=y>>>18|240,n[p+1>>0]=y>>>12&63|128,n[p+2>>0]=y>>>6&63|128,n[p+3>>0]=y&63|128,p=4;break}else{o[(qY()|0)>>2]=84,p=-1;break}}else p=1;while(!1);return p|0}function qqe(){return tie()|0}function nie(){return tie()|0}function Ube(p,y){p=p|0,y=y|0;var w=0,G=0;for(G=0;;){if((l[5712+G>>0]|0)==(p|0)){p=2;break}if(w=G+1|0,(w|0)==87){w=5800,G=87,p=5;break}else G=w}if((p|0)==2&&(G?(w=5800,p=5):w=5800),(p|0)==5)for(;;){do p=w,w=w+1|0;while(n[p>>0]|0);if(G=G+-1|0,G)p=5;else break}return kx(w,o[y+20>>2]|0)|0}function kx(p,y){return p=p|0,y=y|0,$qe(p,y)|0}function $qe(p,y){return p=p|0,y=y|0,y?y=APt(o[y>>2]|0,o[y+4>>2]|0,p)|0:y=0,(y|0?y:p)|0}function APt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;an=(o[p>>2]|0)+1794895138|0,U=NB(o[p+8>>2]|0,an)|0,G=NB(o[p+12>>2]|0,an)|0,J=NB(o[p+16>>2]|0,an)|0;e:do if(U>>>0>>2>>>0&&(rr=y-(U<<2)|0,G>>>0>>0&J>>>0>>0)&&!((J|G)&3|0)){for(rr=G>>>2,It=J>>>2,bt=0;;){if(Ge=U>>>1,Xe=bt+Ge|0,le=Xe<<1,J=le+rr|0,G=NB(o[p+(J<<2)>>2]|0,an)|0,J=NB(o[p+(J+1<<2)>>2]|0,an)|0,!(J>>>0>>0&G>>>0<(y-J|0)>>>0)){G=0;break e}if(n[p+(J+G)>>0]|0){G=0;break e}if(G=Kqe(w,p+J|0)|0,!G)break;if(G=(G|0)<0,(U|0)==1){G=0;break e}else bt=G?bt:Xe,U=G?Ge:U-Ge|0}G=le+It|0,J=NB(o[p+(G<<2)>>2]|0,an)|0,G=NB(o[p+(G+1<<2)>>2]|0,an)|0,G>>>0>>0&J>>>0<(y-G|0)>>>0?G=n[p+(G+J)>>0]|0?0:p+G|0:G=0}else G=0;while(!1);return G|0}function NB(p,y){p=p|0,y=y|0;var w=0;return w=x3(p|0)|0,(y|0?w:p)|0}function iie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=w+16|0,J=o[G>>2]|0,J?U=5:dPt(w)|0?G=0:(J=o[G>>2]|0,U=5);e:do if((U|0)==5){if(Ge=w+20|0,le=o[Ge>>2]|0,G=le,(J-le|0)>>>0>>0){G=KL[o[w+36>>2]&7](w,p,y)|0;break}t:do if((n[w+75>>0]|0)>-1){for(le=y;;){if(!le){U=0,J=p;break t}if(J=le+-1|0,(n[p+J>>0]|0)==10)break;le=J}if(G=KL[o[w+36>>2]&7](w,p,le)|0,G>>>0>>0)break e;U=le,J=p+le|0,y=y-le|0,G=o[Ge>>2]|0}else U=0,J=p;while(!1);Md(G|0,J|0,y|0)|0,o[Ge>>2]=(o[Ge>>2]|0)+y,G=U+y|0}while(!1);return G|0}function dPt(p){p=p|0;var y=0,w=0;return y=p+74|0,w=n[y>>0]|0,n[y>>0]=w+255|w,y=o[p>>2]|0,y&8?(o[p>>2]=y|32,p=-1):(o[p+8>>2]=0,o[p+4>>2]=0,w=o[p+44>>2]|0,o[p+28>>2]=w,o[p+20>>2]=w,o[p+16>>2]=w+(o[p+48>>2]|0),p=0),p|0}function zs(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=CA(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=CA(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?y:p;break}else{p=p>2]=p,o[E>>2]|0|0}function fU(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=e$e(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=e$e(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?p:y;break}else{p=p>2]=p,o[E>>2]|0|0}function Az(p,y){p=ke(p),y=ke(y);var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;U=(I[E>>2]=p,o[E>>2]|0),Ge=(I[E>>2]=y,o[E>>2]|0),w=U>>>23&255,le=Ge>>>23&255,Xe=U&-2147483648,J=Ge<<1;e:do if(J|0&&!((w|0)==255|(($Ae(y)|0)&2147483647)>>>0>2139095040)){if(G=U<<1,G>>>0<=J>>>0)return y=ke(p*ke(0)),ke((G|0)==(J|0)?y:p);if(w)G=U&8388607|8388608;else{if(w=U<<9,(w|0)>-1){G=w,w=0;do w=w+-1|0,G=G<<1;while((G|0)>-1)}else w=0;G=U<<1-w}if(le)Ge=Ge&8388607|8388608;else{if(U=Ge<<9,(U|0)>-1){J=0;do J=J+-1|0,U=U<<1;while((U|0)>-1)}else J=0;le=J,Ge=Ge<<1-J}J=G-Ge|0,U=(J|0)>-1;t:do if((w|0)>(le|0)){for(;;){if(U)if(J)G=J;else break;if(G=G<<1,w=w+-1|0,J=G-Ge|0,U=(J|0)>-1,(w|0)<=(le|0))break t}y=ke(p*ke(0));break e}while(!1);if(U)if(J)G=J;else{y=ke(p*ke(0));break}if(G>>>0<8388608)do G=G<<1,w=w+-1|0;while(G>>>0<8388608);(w|0)>0?w=G+-8388608|w<<23:w=G>>>(1-w|0),y=(o[E>>2]=w|Xe,ke(I[E>>2]))}else bt=3;while(!1);return(bt|0)==3&&(y=ke(p*y),y=ke(y/y)),ke(y)}function $Ae(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pPt(p,y){return p=p|0,y=y|0,zAe(o[582]|0,p,y)|0}function me(p){p=p|0,Ko()}function dz(p){p=p|0}function t$e(p,y){return p=p|0,y=y|0,0}function ua(p){return p=p|0,(r$e(p+4|0)|0)==-1?(DF[o[(o[p>>2]|0)+8>>2]&127](p),p=1):p=0,p|0}function r$e(p){p=p|0;var y=0;return y=o[p>>2]|0,o[p>>2]=y+-1,y+-1|0}function IU(p){p=p|0,ua(p)|0&&c_(p)}function c_(p){p=p|0;var y=0;y=p+8|0,o[y>>2]|0&&(r$e(y)|0)!=-1||DF[o[(o[p>>2]|0)+16>>2]&127](p)}function Ku(p){p=p|0;var y=0;for(y=p|0?p:1;p=zne(y)|0,!(p|0);){if(p=sie()|0,!p){p=0;break}nEe[p&0]()}return p|0}function pz(p){return p=p|0,Ku(p)|0}function ti(p){p=p|0,qne(p)}function Gw(p){p=p|0,(n[p+11>>0]|0)<0&&ti(o[p>>2]|0)}function sie(){var p=0;return p=o[2923]|0,o[2923]=p+0,p|0}function N3(){}function XT(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,G=y-G-(w>>>0>p>>>0|0)>>>0,ct=G,p-w>>>0|0|0}function Hg(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,w=p+w>>>0,ct=y+G+(w>>>0

>>0|0)>>>0,w|0|0}function fz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;if(U=p+w|0,y=y&255,(w|0)>=67){for(;p&3;)n[p>>0]=y,p=p+1|0;for(G=U&-4|0,J=G-64|0,le=y|y<<8|y<<16|y<<24;(p|0)<=(J|0);)o[p>>2]=le,o[p+4>>2]=le,o[p+8>>2]=le,o[p+12>>2]=le,o[p+16>>2]=le,o[p+20>>2]=le,o[p+24>>2]=le,o[p+28>>2]=le,o[p+32>>2]=le,o[p+36>>2]=le,o[p+40>>2]=le,o[p+44>>2]=le,o[p+48>>2]=le,o[p+52>>2]=le,o[p+56>>2]=le,o[p+60>>2]=le,p=p+64|0;for(;(p|0)<(G|0);)o[p>>2]=le,p=p+4|0}for(;(p|0)<(U|0);)n[p>>0]=y,p=p+1|0;return U-w|0}function Kbe(p,y,w){return p=p|0,y=y|0,w=w|0,(w|0)<32?(ct=y<>>32-w,p<>>w,p>>>w|(y&(1<>>w-32|0)}function Md(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;if((w|0)>=8192)return Hu(p|0,y|0,w|0)|0;if(U=p|0,J=p+w|0,(p&3)==(y&3)){for(;p&3;){if(!w)return U|0;n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0,w=w-1|0}for(w=J&-4|0,G=w-64|0;(p|0)<=(G|0);)o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2],o[p+16>>2]=o[y+16>>2],o[p+20>>2]=o[y+20>>2],o[p+24>>2]=o[y+24>>2],o[p+28>>2]=o[y+28>>2],o[p+32>>2]=o[y+32>>2],o[p+36>>2]=o[y+36>>2],o[p+40>>2]=o[y+40>>2],o[p+44>>2]=o[y+44>>2],o[p+48>>2]=o[y+48>>2],o[p+52>>2]=o[y+52>>2],o[p+56>>2]=o[y+56>>2],o[p+60>>2]=o[y+60>>2],p=p+64|0,y=y+64|0;for(;(p|0)<(w|0);)o[p>>2]=o[y>>2],p=p+4|0,y=y+4|0}else for(w=J-4|0;(p|0)<(w|0);)n[p>>0]=n[y>>0]|0,n[p+1>>0]=n[y+1>>0]|0,n[p+2>>0]=n[y+2>>0]|0,n[p+3>>0]=n[y+3>>0]|0,p=p+4|0,y=y+4|0;for(;(p|0)<(J|0);)n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0;return U|0}function DB(p){p=p|0;var y=0;return y=n[Q+(p&255)>>0]|0,(y|0)<8?y|0:(y=n[Q+(p>>8&255)>>0]|0,(y|0)<8?y+8|0:(y=n[Q+(p>>16&255)>>0]|0,(y|0)<8?y+16|0:(n[Q+(p>>>24)>>0]|0)+24|0))}function hh(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0;if(It=p,Xe=y,bt=Xe,le=w,an=G,Ge=an,!bt)return U=(J|0)!=0,Ge?U?(o[J>>2]=p|0,o[J+4>>2]=y&0,an=0,J=0,ct=an,J|0):(an=0,J=0,ct=an,J|0):(U&&(o[J>>2]=(It>>>0)%(le>>>0),o[J+4>>2]=0),an=0,J=(It>>>0)/(le>>>0)>>>0,ct=an,J|0);U=(Ge|0)==0;do if(le){if(!U){if(U=(_n(Ge|0)|0)-(_n(bt|0)|0)|0,U>>>0<=31){rr=U+1|0,Ge=31-U|0,y=U-31>>31,le=rr,p=It>>>(rr>>>0)&y|bt<>>(rr>>>0)&y,U=0,Ge=It<>2]=p|0,o[J+4>>2]=Xe|y&0,an=0,J=0,ct=an,J|0):(an=0,J=0,ct=an,J|0)}if(U=le-1|0,U&le|0){Ge=(_n(le|0)|0)+33-(_n(bt|0)|0)|0,zi=64-Ge|0,rr=32-Ge|0,Xe=rr>>31,Ks=Ge-32|0,y=Ks>>31,le=Ge,p=rr-1>>31&bt>>>(Ks>>>0)|(bt<>>(Ge>>>0))&y,y=y&bt>>>(Ge>>>0),U=It<>>(Ks>>>0))&Xe|It<>31;break}return J|0&&(o[J>>2]=U&It,o[J+4>>2]=0),(le|0)==1?(Ks=Xe|y&0,zi=p|0|0,ct=Ks,zi|0):(zi=DB(le|0)|0,Ks=bt>>>(zi>>>0)|0,zi=bt<<32-zi|It>>>(zi>>>0)|0,ct=Ks,zi|0)}else{if(U)return J|0&&(o[J>>2]=(bt>>>0)%(le>>>0),o[J+4>>2]=0),Ks=0,zi=(bt>>>0)/(le>>>0)>>>0,ct=Ks,zi|0;if(!It)return J|0&&(o[J>>2]=0,o[J+4>>2]=(bt>>>0)%(Ge>>>0)),Ks=0,zi=(bt>>>0)/(Ge>>>0)>>>0,ct=Ks,zi|0;if(U=Ge-1|0,!(U&Ge))return J|0&&(o[J>>2]=p|0,o[J+4>>2]=U&bt|y&0),Ks=0,zi=bt>>>((DB(Ge|0)|0)>>>0),ct=Ks,zi|0;if(U=(_n(Ge|0)|0)-(_n(bt|0)|0)|0,U>>>0<=30){y=U+1|0,Ge=31-U|0,le=y,p=bt<>>(y>>>0),y=bt>>>(y>>>0),U=0,Ge=It<>2]=p|0,o[J+4>>2]=Xe|y&0,Ks=0,zi=0,ct=Ks,zi|0):(Ks=0,zi=0,ct=Ks,zi|0)}while(!1);if(!le)bt=Ge,Xe=0,Ge=0;else{rr=w|0|0,It=an|G&0,bt=Hg(rr|0,It|0,-1,-1)|0,w=ct,Xe=Ge,Ge=0;do G=Xe,Xe=U>>>31|Xe<<1,U=Ge|U<<1,G=p<<1|G>>>31|0,an=p>>>31|y<<1|0,XT(bt|0,w|0,G|0,an|0)|0,zi=ct,Ks=zi>>31|((zi|0)<0?-1:0)<<1,Ge=Ks&1,p=XT(G|0,an|0,Ks&rr|0,(((zi|0)<0?-1:0)>>31|((zi|0)<0?-1:0)<<1)&It|0)|0,y=ct,le=le-1|0;while(le|0);bt=Xe,Xe=0}return le=0,J|0&&(o[J>>2]=p,o[J+4>>2]=y),Ks=(U|0)>>>31|(bt|le)<<1|(le<<1|U>>>31)&0|Xe,zi=(U<<1|0)&-2|Ge,ct=Ks,zi|0}function k3(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,hh(p,y,w,G,0)|0}function kB(p){p=p|0;var y=0,w=0;return w=p+15&-16|0,y=o[b>>2]|0,p=y+w|0,(w|0)>0&(p|0)<(y|0)|(p|0)<0?(po()|0,Vs(12),-1):(o[b>>2]=p,(p|0)>(Hi()|0)&&!(Nn()|0)?(o[b>>2]=y,Vs(12),-1):y|0)}function JT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if((y|0)<(p|0)&(p|0)<(y+w|0)){for(G=p,y=y+w|0,p=p+w|0;(w|0)>0;)p=p-1|0,y=y-1|0,w=w-1|0,n[p>>0]=n[y>>0]|0;p=G}else Md(p,y,w)|0;return p|0}function hU(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;return U=B,B=B+16|0,J=U|0,hh(p,y,w,G,J)|0,B=U,ct=o[J+4>>2]|0,o[J>>2]|0|0}function x3(p){return p=p|0,(p&255)<<24|(p>>8&255)<<16|(p>>16&255)<<8|p>>>24|0}function Iz(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,a$e[p&1](y|0,w|0,G|0,J|0,U|0)}function FLe(p,y,w){p=p|0,y=y|0,w=ke(w),c$e[p&1](y|0,ke(w))}function ZLe(p,y,w){p=p|0,y=y|0,w=+w,l$e[p&31](y|0,+w)}function LLe(p,y,w,G){return p=p|0,y=y|0,w=ke(w),G=ke(G),ke(lie[p&0](y|0,ke(w),ke(G)))}function $Y(p,y){p=p|0,y=y|0,DF[p&127](y|0)}function hN(p,y,w){p=p|0,y=y|0,w=w|0,qD[p&31](y|0,w|0)}function n$e(p,y){return p=p|0,y=y|0,mC[p&31](y|0)|0}function jbe(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0,eQ[p&1](y|0,+w,+G,J|0)}function VLe(p,y,w,G){p=p|0,y=y|0,w=+w,G=+G,Zg[p&1](y|0,+w,+G)}function zbe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,KL[p&7](y|0,w|0,G|0)|0}function qbe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,+tEe[p&1](y|0,w|0,G|0)}function $be(p,y){return p=p|0,y=y|0,+GP[p&15](y|0)}function PLe(p,y,w){return p=p|0,y=y|0,w=+w,tQ[p&1](y|0,+w)|0}function WLe(p,y,w){return p=p|0,y=y|0,w=w|0,uie[p&15](y|0,w|0)|0}function xx(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=+G,J=+J,U=U|0,rde[p&1](y|0,w|0,+G,+J,U|0)}function G3(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,nde[p&1](y|0,w|0,G|0,J|0,U|0,le|0)}function oie(p,y,w){return p=p|0,y=y|0,w=w|0,+rEe[p&7](y|0,w|0)}function i$e(p){return p=p|0,mz[p&7]()|0}function OLe(p,y,w,G,J,U){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,ide[p&1](y|0,w|0,G|0,J|0,U|0)|0}function MLe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=+J,gie[p&1](y|0,w|0,G|0,+J)}function HLe(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=ke(G),J=J|0,U=ke(U),le=le|0,Cz[p&1](y|0,w|0,ke(G),J|0,ke(U),le|0)}function YLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,UT[p&15](y|0,w|0,G|0)}function QLe(p){p=p|0,nEe[p&0]()}function s$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,Aie[p&15](y|0,w|0,+G)}function fPt(p,y,w){return p=p|0,y=+y,w=+w,ULe[p&1](+y,+w)|0}function IPt(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,Ir[p&15](y|0,w|0,G|0,J|0)}function hPt(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,jt(0)}function mPt(p,y){p=p|0,y=ke(y),jt(1)}function Gx(p,y){p=p|0,y=+y,jt(2)}function CPt(p,y,w){return p=p|0,y=ke(y),w=ke(w),jt(3),As}function td(p){p=p|0,jt(4)}function ede(p,y){p=p|0,y=y|0,jt(5)}function NF(p){return p=p|0,jt(6),0}function _Pt(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,jt(7)}function yPt(p,y,w){p=p|0,y=+y,w=+w,jt(8)}function bPt(p,y,w){return p=p|0,y=y|0,w=w|0,jt(9),0}function EPt(p,y,w){return p=p|0,y=y|0,w=w|0,jt(10),0}function hz(p){return p=p|0,jt(11),0}function SPt(p,y){return p=p|0,y=+y,jt(12),0}function tde(p,y){return p=p|0,y=y|0,jt(13),0}function vPt(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0,jt(14)}function BPt(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,jt(15)}function XLe(p,y){return p=p|0,y=y|0,jt(16),0}function wPt(){return jt(17),0}function JLe(p,y,w,G,J){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,jt(18),0}function TPt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,jt(19)}function o$e(p,y,w,G,J,U){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=U|0,jt(20)}function eEe(p,y,w){p=p|0,y=y|0,w=w|0,jt(21)}function RPt(){jt(22)}function aie(p,y,w){p=p|0,y=y|0,w=+w,jt(23)}function NPt(p,y){return p=+p,y=+y,jt(24),0}function cie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,jt(25)}var a$e=[hPt,yAe],c$e=[mPt,$1],l$e=[Gx,xC,$_,r1,gB,hw,GT,b0,e2,yd,ag,Eb,n1,U2,e0,n_,Xp,cE,lE,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx],lie=[CPt],DF=[td,dz,IA,EI,zd,hge,Pre,pP,BVt,xZe,rU,xne,cbe,dv,xP,IN,Une,ZA,ry,bb,ia,bI,xD,IB,kr,Ve,iv,Aa,rye,tN,fC,yw,iye,mE,l3,Zre,a7,FL,Hre,qFe,xY,vl,dye,Vge,ZL,Qge,b7,JR,une,vye,w7,Nye,_ne,Vye,mVt,yVt,sAe,oAe,Xye,Kye,Ga,qye,P7,Ct,i0,aLe,Sbe,rPt,rz,JL,UL,ELe,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td],qD=[ede,lB,ND,kD,UR,lc,fh,rf,yI,Qp,uB,Ih,Np,t2,Ro,AE,AB,Xc,iu,ny,i_,ft,m7,Hge,WY,sS,RVt,mbe,ede,ede,ede,ede],mC=[NF,dU,t1,aA,uE,eh,Wf,Mo,gp,lF,gE,FT,hp,Am,Bb,cVt,nAe,Rne,NP,Fb,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF],eQ=[_Pt,bL],Zg=[yPt,kZe],KL=[bPt,$ne,uPt,Mbe,LD,MD,pZe,dLe],tEe=[EPt,bB],GP=[hz,Dm,Dp,dE,gF,x,L,te,Re,Le,hz,hz,hz,hz,hz,hz],tQ=[SPt,hVt],uie=[tde,t$e,K2,ja,hA,s3,CY,Ige,vge,Cye,$E,GAe,tde,tde,tde,tde],rde=[vPt,t3],nde=[BPt,lg],rEe=[XLe,yL,dr,Ur,mi,Age,XLe,XLe],mz=[wPt,Vi,N_,RD,eU,NZe,jye,oz],ide=[JLe,Yp],gie=[TPt,A3],Cz=[o$e,ZT],UT=[eEe,fu,uF,KR,Ou,n3,age,Sd,sVt,cF,PVt,jVt,_Le,eEe,eEe,eEe],nEe=[RPt],Aie=[aie,DD,q_,aE,qS,Ip,Xh,E0,PJ,PL,pVt,aie,aie,aie,aie,aie],ULe=[NPt,SVt],Ir=[cie,lge,p3,HT,Zye,y3,lN,o_,rbe,Wne,Fbe,cie,cie,cie,cie,cie];return{_llvm_bswap_i32:x3,dynCall_idd:fPt,dynCall_i:i$e,_i64Subtract:XT,___udivdi3:k3,dynCall_vif:FLe,setThrew:sd,dynCall_viii:YLe,_bitshift64Lshr:D3,_bitshift64Shl:Kbe,dynCall_vi:$Y,dynCall_viiddi:xx,dynCall_diii:qbe,dynCall_iii:WLe,_memset:fz,_sbrk:kB,_memcpy:Md,__GLOBAL__sub_I_Yoga_cpp:cB,dynCall_vii:hN,___uremdi3:hU,dynCall_vid:ZLe,stackAlloc:Tf,_nbind_init:A2,getTempRet0:il,dynCall_di:$be,dynCall_iid:PLe,setTempRet0:Om,_i64Add:Hg,dynCall_fiff:LLe,dynCall_iiii:zbe,_emscripten_get_global_libc:jAe,dynCall_viid:s$e,dynCall_viiid:MLe,dynCall_viififi:HLe,dynCall_ii:n$e,__GLOBAL__sub_I_Binding_cc:YVt,dynCall_viiii:IPt,dynCall_iiiiii:OLe,stackSave:cm,dynCall_viiiii:Iz,__GLOBAL__sub_I_nbind_cc:Ta,dynCall_vidd:VLe,_free:qne,runPostSets:N3,dynCall_viiiiii:G3,establishStackSpace:rc,_memmove:JT,stackRestore:Fl,_malloc:zne,__GLOBAL__sub_I_common_cc:Jm,dynCall_viddi:jbe,dynCall_dii:oie,dynCall_v:QLe}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function n(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(n){r=n(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var WW=H((wtu,GMn)=>{"use strict";var jUo=kMn(),zUo=xMn(),kIr=!1,xIr=null;zUo({},function(e,t){if(!kIr){if(kIr=!0,e)throw e;xIr=t}});if(!kIr)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");GMn.exports=jUo(xIr.bind,xIr.lib)});var FIr=H((Ttu,GIr)=>{"use strict";var FMn=e=>Number.isNaN(e)?!1:e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141);GIr.exports=FMn;GIr.exports.default=FMn});var LMn=H((Rtu,ZMn)=>{"use strict";ZMn.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var ABe=H((Ntu,ZIr)=>{"use strict";var qUo=q5(),$Uo=FIr(),eKo=LMn(),VMn=e=>{if(typeof e!="string"||e.length===0||(e=qUo(e),e.length===0))return 0;e=e.replace(eKo()," ");let t=0;for(let r=0;r=127&&n<=159||n>=768&&n<=879||(n>65535&&r++,t+=$Uo(n)?2:1)}return t};ZIr.exports=VMn;ZIr.exports.default=VMn});var GMe=H((Dtu,LIr)=>{"use strict";var tKo=ABe(),PMn=e=>{let t=0;for(let r of e.split(` -`))t=Math.max(t,tKo(r));return t};LIr.exports=PMn;LIr.exports.default=PMn});var WMn=H(FMe=>{"use strict";var rKo=FMe&&FMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FMe,"__esModule",{value:!0});var nKo=rKo(GMe()),VIr={};FMe.default=e=>{if(e.length===0)return{width:0,height:0};if(VIr[e])return VIr[e];let t=nKo.default(e),r=e.split(` -`).length;return VIr[e]={width:t,height:r},{width:t,height:r}}});var OMn=H(ZMe=>{"use strict";var iKo=ZMe&&ZMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZMe,"__esModule",{value:!0});var C_=iKo(WW()),sKo=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?C_.default.POSITION_TYPE_ABSOLUTE:C_.default.POSITION_TYPE_RELATIVE)},oKo=(e,t)=>{"marginLeft"in t&&e.setMargin(C_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(C_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(C_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(C_.default.EDGE_BOTTOM,t.marginBottom||0)},aKo=(e,t)=>{"paddingLeft"in t&&e.setPadding(C_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(C_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(C_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(C_.default.EDGE_BOTTOM,t.paddingBottom||0)},cKo=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(C_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(C_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(C_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(C_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(C_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(C_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(C_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(C_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(C_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(C_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(C_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(C_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(C_.default.JUSTIFY_SPACE_AROUND))},lKo=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},uKo=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?C_.default.DISPLAY_FLEX:C_.default.DISPLAY_NONE)},gKo=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(C_.default.EDGE_TOP,r),e.setBorder(C_.default.EDGE_BOTTOM,r),e.setBorder(C_.default.EDGE_LEFT,r),e.setBorder(C_.default.EDGE_RIGHT,r)}};ZMe.default=(e,t={})=>{sKo(e,t),oKo(e,t),aKo(e,t),cKo(e,t),lKo(e,t),uKo(e,t),gKo(e,t)}});var OIr=H((Gtu,HMn)=>{"use strict";var LMe=ABe(),AKo=q5(),dKo=llt(),WIr=new Set(["\x1B","\x9B"]),pKo=39,MMn=e=>`${WIr.values().next().value}[${e}m`,fKo=e=>e.split(" ").map(t=>LMe(t)),PIr=(e,t,r)=>{let n=[...t],a=!1,o=LMe(AKo(e[e.length-1]));for(let[l,A]of n.entries()){let f=LMe(A);if(o+f<=r?e[e.length-1]+=A:(e.push(A),o=0),WIr.has(A))a=!0;else if(a&&A==="m"){a=!1;continue}a||(o+=f,o===r&&l0&&e.length>1&&(e[e.length-2]+=e.pop())},IKo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(LMe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},hKo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a="",o,l=fKo(e),A=[""];for(let[f,I]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let C=LMe(A[A.length-1]);if(f!==0&&(C>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),C=0),(C>0||r.trim===!1)&&(A[A.length-1]+=" ",C++)),r.hard&&l[f]>t){let b=t-C,E=1+Math.floor((l[f]-b-1)/t);Math.floor((l[f]-1)/t)t&&C>0&&l[f]>0){if(r.wordWrap===!1&&Ct&&r.wordWrap===!1){PIr(A,I,t);continue}A[A.length-1]+=I}r.trim!==!1&&(A=A.map(IKo)),n=A.join(` -`);for(let[f,I]of[...n].entries()){if(a+=I,WIr.has(I)){let b=parseFloat(/\d[^m]*/.exec(n.slice(f,f+4)));o=b===pKo?null:b}let C=dKo.codes.get(Number(o));o&&C&&(n[f+1]===` -`?a+=MMn(C):I===` -`&&(a+=MMn(o)))}return a};HMn.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` + `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Yt(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:bL,findFiberByHostInstance:x.findFiberByHostInstance||gF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Tf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=bb(x,L);var Le=zr(x,te,Re).disconnect;return{disconnect:function(){Le()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Fl;try{return Fl=x,L()}finally{Fl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(b0(),ip())}},r.updateContainer=function(x,L,te,Re){var Le=L.current,ft=fu(),dr=Jp(Le);e:if(te){te=te._reactInternals;t:{if(et(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=Uf;return L.context===null?L.context=te:L.pendingContext=te,L=lm(ft,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),Kf(Le,L),dC(Le,dr,ft),dr},r}});var xMn=H((fru,kMn)=>{"use strict";kMn.exports=DMn()});var FMn=H((Iru,GMn)=>{"use strict";var lKo={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};GMn.exports=lKo});var PMn=H((hru,VMn)=>{"use strict";var uKo=Object.assign||function(e){for(var t=1;t"}}]),e}(),ZMn=function(){Rpt(e,null,[{key:"fromJS",value:function(r){var n=r.width,a=r.height;return new e(n,a)}}]);function e(t,r){FIr(this,e),this.width=t,this.height=r}return Rpt(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),LMn=function(){function e(t,r){FIr(this,e),this.unit=t,this.value=r}return Rpt(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case _X.UNIT_POINT:return String(this.value);case _X.UNIT_PERCENT:return this.value+"%";case _X.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();VMn.exports=function(e,t){function r(l,A,f){var I=l[A];l[A]=function(){for(var C=arguments.length,b=Array(C),E=0;E1?b-1:0),N=1;N1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,I=arguments.length>3&&arguments[3]!==void 0?arguments[3]:_X.DIRECTION_LTR;return l.call(this,A,f,I)}),uKo({Config:t.Config,Node:t.Node,Layout:e("Layout",gKo),Size:e("Size",ZMn),Value:e("Value",LMn),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},_X)}});var WMn=H((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof wt=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var n=nodeFS.readFileSync(t);return r?n:n.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,n){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):n()},a.onerror=n,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var n=enlargeMemory();if(!n)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var n=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return n},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,n,a,o){var l=getCFunc(t),A=[],f=0;if(a)for(var I=0;I>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,n){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var l=typeof t=="string"?t:null,A;if(r==ALLOC_NONE?A=n:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,l?1:t.length)),a){var n=A,f;for(assert((A&3)==0),f=A+(o&-4);n>2]=0;for(f=A+o;n>0]=0;return A}if(l==="i8")return e.subarray||e.slice?HEAPU8.set(e,A):HEAPU8.set(new Uint8Array(e),A),A;for(var I=0,C,b,E;I>0],r|=n,!(n==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var l=1024,A;t>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,l))),o=o?o+A:A,e+=l,t-=l;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var n,a,o,l,A,f,I="";;){if(n=e[t++],!n)return I;if(!(n&128)){I+=String.fromCharCode(n);continue}if(a=e[t++]&63,(n&224)==192){I+=String.fromCharCode((n&31)<<6|a);continue}if(o=e[t++]&63,(n&240)==224?n=(n&15)<<12|a<<6|o:(l=e[t++]&63,(n&248)==240?n=(n&7)<<18|a<<12|o<<6|l:(A=e[t++]&63,(n&252)==248?n=(n&3)<<24|a<<18|o<<12|l<<6|A:(f=e[t++]&63,n=(n&1)<<30|a<<24|o<<18|l<<12|A<<6|f))),n<65536)I+=String.fromCharCode(n);else{var C=n-65536;I+=String.fromCharCode(55296|C>>10,56320|C&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,n){if(!(n>0))return 0;for(var a=r,o=r+n-1,l=0;l=55296&&A<=57343&&(A=65536+((A&1023)<<10)|e.charCodeAt(++l)&1023),A<=127){if(r>=o)break;t[r++]=A}else if(A<=2047){if(r+1>=o)break;t[r++]=192|A>>6,t[r++]=128|A&63}else if(A<=65535){if(r+2>=o)break;t[r++]=224|A>>12,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=2097151){if(r+3>=o)break;t[r++]=240|A>>18,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=67108863){if(r+4>=o)break;t[r++]=248|A>>24,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else{if(r+5>=o)break;t[r++]=252|A>>30,t[r++]=128|A>>24&63,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((n&1023)<<10)|e.charCodeAt(++r)&1023),n<=127?++t:n<=2047?t+=2:n<=65535?t+=3:n<=2097151?t+=4:n<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),n=lengthBytesUTF8(r)+1,a=_malloc(n);stringToUTF8(r,a,n);var o=_malloc(4),l=t(a,0,0,o);if(getValue(o,"i32")===0&&l)return Pointer_stringify(l)}catch{}finally{a&&_free(a),o&&_free(o),l&&_free(l)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var n=demangle(r);return r===n?r:r+" ["+n+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` +`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var n=r>0?r:lengthBytesUTF8(e)+1,a=new Array(n),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;r&&(a=t+lengthBytesUTF8(e),n=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=n)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var n=t>>>16,a=t&65535,o=r>>>16,l=r&65535;return a*l+(n*l+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,n,a,o,l,A){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,n,a,o,l,A){return ASM_CONSTS[e](t,r,n,a,o,l,A)}function _emscripten_asm_const_iiiii(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiidddddd(e,t,r,n,a,o,l,A,f){return ASM_CONSTS[e](t,r,n,a,o,l,A,f)}function _emscripten_asm_const_iiididi(e,t,r,n,a,o,l){return ASM_CONSTS[e](t,r,n,a,o,l)}function _emscripten_asm_const_iiii(e,t,r,n){return ASM_CONSTS[e](t,r,n)}function _emscripten_asm_const_iiiid(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiiiii(e,t,r,n,a,o){return ASM_CONSTS[e](t,r,n,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,n){var a=arguments.length,o=a<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,n);else for(var A=e.length-1;A>=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,n){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=n/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var l=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,l)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(l){l.source===window&&l.data===n&&(l.stopPropagation(),r.shift()())};var a=o,r=[],n="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(A){r.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:n})):window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,n,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=n;var o;typeof n<"u"?o=function(){Module.dynCall_vi(e,n)}:o=function(){Module.dynCall_v(e)};var l=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),I=Browser.mainLoop.queue.shift();if(I.func(I.arg),Browser.mainLoop.remainingBlockers){var C=Browser.mainLoop.remainingBlockers,b=C%1==0?C-1:Math.floor(C);I.counted?Browser.mainLoop.remainingBlockers=b:(b=b+.5,Browser.mainLoop.remainingBlockers=(8*C+b)/9)}if(console.log('main loop blocker "'+I.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),l1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(l0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,l,A,f){var I=null;if(Browser.hasBlobConstructor)try{I=new Blob([o],{type:Browser.getMimetype(l)}),I.size!==o.length&&(I=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(l)}))}catch(N){Runtime.warnOnce("Blob constructor present but fails: "+N+"; falling back to blob builder")}if(!I){var C=new Browser.BlobBuilder;C.append(new Uint8Array(o).buffer),I=C.getBlob()}var b=Browser.URLObject.createObjectURL(I),E=new Image;E.onload=function(){assert(E.complete,"Image "+l+" could not be decoded");var B=document.createElement("canvas");B.width=E.width,B.height=E.height;var F=B.getContext("2d");F.drawImage(E,0,0),Module.preloadedImages[l]=B,Browser.URLObject.revokeObjectURL(b),A&&A(o)},E.onerror=function(B){console.log("Image "+b+" could not be decoded"),f&&f()},E.src=b},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,l,A,f){var I=!1;function C(F){I||(I=!0,Module.preloadedAudios[l]=F,A&&A(o))}function b(){I||(I=!0,Module.preloadedAudios[l]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var E=new Blob([o],{type:Browser.getMimetype(l)})}catch{return b()}var N=Browser.URLObject.createObjectURL(E),B=new Audio;B.addEventListener("canplaythrough",function(){C(B)},!1),B.onerror=function(Q){if(I)return;console.log("warning: browser could not fully decode audio "+l+", trying slower base64 approach");function X(ae){for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ce="=",fe="",ue=0,de=0,be=0;be=6;){var Se=ue>>de-6&63;de-=6,fe+=ne[Se]}return de==2?(fe+=ne[(ue&3)<<4],fe+=ce+ce):de==4&&(fe+=ne[(ue&15)<<2],fe+=ce),fe}B.src="data:audio/x-"+l.substr(-3)+";base64,"+X(o),C(B)},B.src=N,Browser.safeSetTimeout(function(){C(B)},1e4)}else return b()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,n){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var l={antialias:!1,alpha:!1};if(n)for(var A in n)l[A]=n[A];o=GL.createContext(e,l),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var n=Module.canvas;function a(){Browser.isFullscreen=!1;var l=n.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===l?(n.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},n.exitFullscreen=n.exitFullscreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(l.parentNode.insertBefore(n,l),l.parentNode.removeChild(l),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(n)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");n.parentNode.insertBefore(o,n),o.appendChild(n),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(n,a,o){return Browser.requestFullscreen(n,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,n=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var l=e.touch;if(l===void 0)return;var A=l.pageX-(a+t.left),f=l.pageY-(o+t.top);A=A*(r/t.width),f=f*(n/t.height);var I={x:A,y:f};if(e.type==="touchstart")Browser.lastTouches[l.identifier]=I,Browser.touches[l.identifier]=I;else if(e.type==="touchend"||e.type==="touchmove"){var C=Browser.touches[l.identifier];C||(C=I),Browser.lastTouches[l.identifier]=C,Browser.touches[l.identifier]=I}return}var b=e.pageX-(a+t.left),E=e.pageY-(o+t.top);b=b*(r/t.width),E=E*(n/t.height),Browser.mouseMovementX=b-Browser.mouseX,Browser.mouseMovementY=E-Browser.mouseY,Browser.mouseX=b,Browser.mouseY=E}},asyncLoad:function(e,t,r,n){var a=n?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(n){return(typeof FS>"u"||!(n instanceof FS.ErrnoError))&&abort(n),-n.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,I,C,b,E,N){if(I==1){var B=b&896;(B==128||B==256||B==384)&&(f="X const")}var F;return N?F=C.replace("X",f).replace("Y",E):F=f.replace("X",C).replace("Y",E),F.replace(/([*&]) (?=[*&])/g,"$1")}function n(f,I,C,b,E){throw new Error(f+" type "+C.replace("X",I+"?")+(b?" with flag "+b:"")+" in "+E)}function a(f,I,C,b,E,N,B,F){N===void 0&&(N="X"),F===void 0&&(F=1);var Q=C(f);if(Q)return Q;var X=b(f),ae=X.placeholderFlag,ne=t[ae];B&&ne&&(N=r(B[2],B[0],N,ne[0],"?",!0));var ce;ae==0&&(ce="Unbound"),ae>=10&&(ce="Corrupt"),F>20&&(ce="Deeply nested"),ce&&n(ce,f,N,ae,E||"?");var fe=X.paramList[0],ue=a(fe,I,C,b,E,N,ne,F+1),de,be={flags:ne[0],id:f,name:"",paramList:[ue]},Se=[],De="?";switch(X.placeholderFlag){case 1:de=ue.spec;break;case 2:if((ue.flags&15360)==1024&&ue.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:de=ue.spec,ue.flags&15360;break;case 8:De=""+X.paramList[1],be.paramList.push(X.paramList[1]);break;case 9:for(var k=0,et=X.paramList[1];k>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),l=SYSCALLS.get(),A=a;return FS.llseek(r,A,l),HEAP32[o>>2]=r.position,r.getdents&&A===0&&l===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(C,b){var E=___syscall146.buffers[C];assert(E),b===0||b===10?((C===1?Module.print:Module.printErr)(UTF8ArrayToString(E,0)),E.length=0):E.push(b)});for(var l=0;l>2],f=HEAP32[n+(l*8+4)>>2],I=0;I"u"||!(C instanceof FS.ErrnoError))&&abort(C),-C.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var n=_nbind.typeNameTbl.NBind.proto;return n.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var n=HEAPU32[e.pagePtr];if(n){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],n=new r(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var n=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(n=[n[0],n.slice(1)]),{paramList:n,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},n=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+n];if(!a)throw new Error("dynCall_"+n+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,n){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,n)):(r.arity=n,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var n=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=a[r.ptrSize*8],n.ptrSize=r.ptrSize,n}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,n=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,n,r),n}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,n){return function(a){return pushCString(a,n)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(n){return!!n},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(n){__extends(a,n);function a(o,l,A,f){var I=n.call(this)||this;if(!(I instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var C=l,b=A,E=f;if(o!==_nbind.ptrMarker){var N=I.__nbindConstructor.apply(I,arguments);C=4608,E=HEAPU32[N/4],b=HEAPU32[N/4+1]}var B={configurable:!0,enumerable:!1,value:null,writable:!1},F={__nbindFlags:C,__nbindPtr:b};E&&(F.__nbindShared=E,_nbind.mark(I));for(var Q=0,X=Object.keys(F);Q>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?l=Buffer.from(o):l=new Buffer(o),l.copy(n)}else getBuffer(n).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,n,a,o){try{Module.dynCall_viiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,n){try{return Module.dynCall_fiff(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,n,a){try{Module.dynCall_viddi(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,n){try{Module.dynCall_vidd(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,n){try{return Module.dynCall_iiii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,n){try{return Module.dynCall_diii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,n,a,o){try{Module.dynCall_viiddi(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,n,a,o,l){try{Module.dynCall_viiiiii(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,n,a,o){try{return Module.dynCall_iiiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,n,a){try{Module.dynCall_viiid(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,n,a,o,l){try{Module.dynCall_viififi(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(e,t,r,n){try{Module.dynCall_viii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,n){try{Module.dynCall_viid(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,n,a){try{Module.dynCall_viiii(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var n=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),l=new e.Uint8Array(r),A=new e.Uint16Array(r),f=new e.Uint32Array(r),I=new e.Float32Array(r),C=new e.Float64Array(r),b=t.DYNAMICTOP_PTR|0,E=t.tempDoublePtr|0,N=t.ABORT|0,B=t.STACKTOP|0,F=t.STACK_MAX|0,Q=t.cttz_i8|0,X=t.___dso_handle|0,ae=0,ne=0,ce=0,fe=0,ue=e.NaN,de=e.Infinity,be=0,Se=0,De=0,k=0,et=0,ct=0,Me=e.Math.floor,je=e.Math.abs,St=e.Math.sqrt,At=e.Math.pow,Yt=e.Math.cos,Tr=e.Math.sin,Nr=e.Math.tan,er=e.Math.acos,vt=e.Math.asin,xt=e.Math.atan,Zr=e.Math.atan2,qt=e.Math.exp,Xt=e.Math.log,lr=e.Math.ceil,cr=e.Math.imul,Ar=e.Math.min,qr=e.Math.max,_n=e.Math.clz32,ke=e.Math.fround,jt=t.abort,Fn=t.assert,Nn=t.enlargeMemory,Hi=t.getTotalMemory,po=t.abortOnCannotGrowMemory,Vr=t.invoke_viiiii,xi=t.invoke_vif,io=t.invoke_vid,ga=t.invoke_fiff,Ya=t.invoke_vi,Gc=t.invoke_vii,cl=t.invoke_ii,Sc=t.invoke_viddi,Hr=t.invoke_vidd,Wr=t.invoke_iiii,Ft=t.invoke_diii,zr=t.invoke_di,Rn=t.invoke_iid,Or=t.invoke_iii,Qi=t.invoke_viiddi,ps=t.invoke_viiiiii,yo=t.invoke_dii,bo=t.invoke_i,Qa=t.invoke_iiiiii,gc=t.invoke_viiid,Cg=t.invoke_viififi,Nc=t.invoke_viii,iA=t.invoke_v,ma=t.invoke_viid,vu=t.invoke_idd,li=t.invoke_viiii,Ei=t._emscripten_asm_const_iiiii,Ps=t._emscripten_asm_const_iiidddddd,Xa=t._emscripten_asm_const_iiiid,ac=t.__nbind_reference_external,Yl=t._emscripten_asm_const_iiiiiiii,Wc=t._removeAccessorPrefix,Sg=t._typeModule,Ul=t.__nbind_register_pool,Xu=t.__decorate,Da=t._llvm_stackrestore,pu=t.___cxa_atexit,_g=t.__extends,mI=t.__nbind_get_value_object,Qh=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,Ri=t._emscripten_set_main_loop_timing,Do=t.__nbind_register_primitive,Wt=t.__nbind_register_type,Hu=t._emscripten_memcpy_big,Ru=t.__nbind_register_function,Vs=t.___setErrNo,Ju=t.__nbind_register_class,Yn=t.__nbind_finish,Ko=t._abort,Eg=t._nbind_value,OA=t._llvm_stacksave,GA=t.___syscall54,$i=t._defineHidden,dl=t._emscripten_set_main_loop,Uf=t._emscripten_get_now,Kd=t.__nbind_register_callback_signature,oA=t._emscripten_asm_const_iiiiii,oo=t.__nbind_free_external,Ki=t._emscripten_asm_const_iiii,cc=t._emscripten_asm_const_iiididi,Xs=t.___syscall6,ws=t._atexit,Gs=t.___syscall140,Ma=t.___syscall146,Dc=ke(0);let As=ke(0);function Tf(p){p=p|0;var y=0;return y=B,B=B+p|0,B=B+15&-16,y|0}function cm(){return B|0}function Fl(p){p=p|0,B=p}function rc(p,y){p=p|0,y=y|0,B=p,F=y}function sd(p,y){p=p|0,y=y|0,ae||(ae=p,ne=y)}function Om(p){p=p|0,ct=p}function il(){return ct|0}function FA(){var p=0,y=0;Md(8104,8,400)|0,Md(8504,408,540)|0,p=9044,y=p+44|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));n[9088]=0,n[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,pu(17,8104,X|0)|0}function ZA(p){p=p|0,aa(p+948|0)}function El(p){return p=ke(p),((kT(p)|0)&2147483647)>>>0>2139095040|0}function yg(p,y,w){p=p|0,y=y|0,w=w|0;e:do if(o[p+(y<<3)+4>>2]|0)p=p+(y<<3)|0;else{if((y|2|0)==3&&o[p+60>>2]|0){p=p+56|0;break}switch(y|0){case 0:case 2:case 4:case 5:{if(o[p+52>>2]|0){p=p+48|0;break e}break}default:}if(o[p+68>>2]|0){p=p+64|0;break}else{p=(y|1|0)==5?948:w;break}}while(!1);return p|0}function Mp(p){p=p|0;var y=0;return y=qne(1e3)|0,MA(p,(y|0)!=0,2456),o[2276]=(o[2276]|0)+1,Md(y|0,8104,1e3)|0,n[p+2>>0]|0&&(o[y+4>>2]=2,o[y+12>>2]=4),o[y+976>>2]=p,y|0}function MA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;J=B,B=B+16|0,G=J,y||(o[G>>2]=w,JS(p,5,3197,G)),B=J}function Er(){return Mp(956)|0}function Zt(p){p=p|0;var y=0;return y=Ku(1e3)|0,bn(y,p),MA(o[p+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[y+944>>2]=0,y|0}function bn(p,y){p=p|0,y=y|0;var w=0;Md(p|0,y|0,948)|0,fw(p+948|0,y+948|0),w=p+960|0,p=y+960|0,y=w+40|0;do o[w>>2]=o[p>>2],w=w+4|0,p=p+4|0;while((w|0)<(y|0))}function ls(p){p=p|0;var y=0,w=0,G=0,J=0;if(y=p+944|0,w=o[y>>2]|0,w|0&&(oa(w+948|0,p)|0,o[y>>2]=0),w=Fs(p)|0,w|0){y=0;do o[(Wa(p,y)|0)+944>>2]=0,y=y+1|0;while((y|0)!=(w|0))}w=p+948|0,G=o[w>>2]|0,J=p+952|0,y=o[J>>2]|0,(y|0)!=(G|0)&&(o[J>>2]=y+(~((y+-4-G|0)>>>2)<<2)),Ca(w),$ne(p),o[2276]=(o[2276]|0)+-1}function oa(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0;G=o[p>>2]|0,Ge=p+4|0,w=o[Ge>>2]|0,U=w;e:do if((G|0)==(w|0))J=G,le=4;else for(p=G;;){if((o[p>>2]|0)==(y|0)){J=p,le=4;break e}if(p=p+4|0,(p|0)==(w|0)){p=0;break}}while(!1);return(le|0)==4&&((J|0)!=(w|0)?(G=J+4|0,p=U-G|0,y=p>>2,y&&(JT(J|0,G|0,p|0)|0,w=o[Ge>>2]|0),p=J+(y<<2)|0,(w|0)==(p|0)||(o[Ge>>2]=w+(~((w+-4-p|0)>>>2)<<2)),p=1):p=0),p|0}function Fs(p){return p=p|0,(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2|0}function Wa(p,y){p=p|0,y=y|0;var w=0;return w=o[p+948>>2]|0,(o[p+952>>2]|0)-w>>2>>>0>y>>>0?p=o[w+(y<<2)>>2]|0:p=0,p|0}function Ca(p){p=p|0;var y=0,w=0,G=0,J=0;G=B,B=B+32|0,y=G,J=o[p>>2]|0,w=(o[p+4>>2]|0)-J|0,((o[p+8>>2]|0)-J|0)>>>0>w>>>0&&(J=w>>2,pn(y,J,J,p+8|0),q1(p,y),J2(y)),B=G}function ld(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;bt=Fs(p)|0;do if(bt|0){if((o[(Wa(p,0)|0)+944>>2]|0)==(p|0)){if(!(oa(p+948|0,y)|0))break;Md(y+400|0,8504,540)|0,o[y+944>>2]=0,di(p);break}le=o[(o[p+976>>2]|0)+12>>2]|0,Ge=p+948|0,Xe=(le|0)==0,w=0,U=0;do G=o[(o[Ge>>2]|0)+(U<<2)>>2]|0,(G|0)==(y|0)?di(p):(J=Zt(G)|0,o[(o[Ge>>2]|0)+(w<<2)>>2]=J,o[J+944>>2]=p,Xe||Ir[le&15](G,J,p,w),w=w+1|0),U=U+1|0;while((U|0)!=(bt|0));if(w>>>0>>0){Xe=p+948|0,Ge=p+952|0,le=w,w=o[Ge>>2]|0;do U=(o[Xe>>2]|0)+(le<<2)|0,G=U+4|0,J=w-G|0,y=J>>2,y&&(JT(U|0,G|0,J|0)|0,w=o[Ge>>2]|0),J=w,G=U+(y<<2)|0,(J|0)!=(G|0)&&(w=J+(~((J+-4-G|0)>>>2)<<2)|0,o[Ge>>2]=w),le=le+1|0;while((le|0)!=(bt|0))}}while(!1)}function Rp(p){p=p|0;var y=0,w=0,G=0,J=0;np(p,(Fs(p)|0)==0,2491),np(p,(o[p+944>>2]|0)==0,2545),y=p+948|0,w=o[y>>2]|0,G=p+952|0,J=o[G>>2]|0,(J|0)!=(w|0)&&(o[G>>2]=J+(~((J+-4-w|0)>>>2)<<2)),Ca(y),y=p+976|0,w=o[y>>2]|0,Md(p|0,8104,1e3)|0,n[w+2>>0]|0&&(o[p+4>>2]=2,o[p+12>>2]=4),o[y>>2]=w}function np(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;J=B,B=B+16|0,G=J,y||(o[G>>2]=w,fd(p,5,3197,G)),B=J}function HA(){return o[2276]|0}function df(){var p=0;return p=qne(20)|0,Zs((p|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[p>>2]=o[239],o[p+4>>2]=o[240],o[p+8>>2]=o[241],o[p+12>>2]=o[242],o[p+16>>2]=o[243],p|0}function Zs(p,y){p=p|0,y=y|0;var w=0,G=0;G=B,B=B+16|0,w=G,p||(o[w>>2]=y,fd(0,5,3197,w)),B=G}function so(p){p=p|0,$ne(p),o[2277]=(o[2277]|0)+-1}function Ea(p,y){p=p|0,y=y|0;var w=0;y?(np(p,(Fs(p)|0)==0,2629),w=1):(w=0,y=0),o[p+964>>2]=y,o[p+988>>2]=w}function Ml(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,U=G+8|0,J=G+4|0,le=G,o[J>>2]=y,np(p,(o[y+944>>2]|0)==0,2709),np(p,(o[p+964>>2]|0)==0,2763),Dr(p),y=p+948|0,o[le>>2]=(o[y>>2]|0)+(w<<2),o[U>>2]=o[le>>2],Wn(y,U,J)|0,o[(o[J>>2]|0)+944>>2]=p,di(p),B=G}function Dr(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;if(w=Fs(p)|0,w|0&&(o[(Wa(p,0)|0)+944>>2]|0)!=(p|0)){G=o[(o[p+976>>2]|0)+12>>2]|0,J=p+948|0,U=(G|0)==0,y=0;do le=o[(o[J>>2]|0)+(y<<2)>>2]|0,Ge=Zt(le)|0,o[(o[J>>2]|0)+(y<<2)>>2]=Ge,o[Ge+944>>2]=p,U||Ir[G&15](le,Ge,p,y),y=y+1|0;while((y|0)!=(w|0))}}function Wn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0;Ds=B,B=B+64|0,rr=Ds+52|0,Ge=Ds+48|0,an=Ds+28|0,Ks=Ds+24|0,zi=Ds+20|0,Un=Ds,G=o[p>>2]|0,U=G,y=G+((o[y>>2]|0)-U>>2<<2)|0,G=p+4|0,J=o[G>>2]|0,le=p+8|0;do if(J>>>0<(o[le>>2]|0)>>>0){if((y|0)==(J|0)){o[y>>2]=o[w>>2],o[G>>2]=(o[G>>2]|0)+4;break}ey(p,y,J,y+4|0),y>>>0<=w>>>0&&(w=(o[G>>2]|0)>>>0>w>>>0?w+4|0:w),o[y>>2]=o[w>>2]}else{G=(J-U>>2)+1|0,J=ut(p)|0,J>>>0>>0&&me(p),It=o[p>>2]|0,bt=(o[le>>2]|0)-It|0,U=bt>>1,pn(Un,bt>>2>>>0>>1>>>0?U>>>0>>0?G:U:J,y-It>>2,p+8|0),It=Un+8|0,G=o[It>>2]|0,U=Un+12|0,bt=o[U>>2]|0,le=bt,Xe=G;do if((G|0)==(bt|0)){if(bt=Un+4|0,G=o[bt>>2]|0,Si=o[Un>>2]|0,J=Si,G>>>0<=Si>>>0){G=le-J>>1,G=G|0?G:1,pn(an,G,G>>>2,o[Un+16>>2]|0),o[Ks>>2]=o[bt>>2],o[zi>>2]=o[It>>2],o[Ge>>2]=o[Ks>>2],o[rr>>2]=o[zi>>2],Iw(an,Ge,rr),G=o[Un>>2]|0,o[Un>>2]=o[an>>2],o[an>>2]=G,G=an+4|0,Si=o[bt>>2]|0,o[bt>>2]=o[G>>2],o[G>>2]=Si,G=an+8|0,Si=o[It>>2]|0,o[It>>2]=o[G>>2],o[G>>2]=Si,G=an+12|0,Si=o[U>>2]|0,o[U>>2]=o[G>>2],o[G>>2]=Si,J2(an),G=o[It>>2]|0;break}U=G,le=((U-J>>2)+1|0)/-2|0,Ge=G+(le<<2)|0,J=Xe-U|0,U=J>>2,U&&(JT(Ge|0,G|0,J|0)|0,G=o[bt>>2]|0),Si=Ge+(U<<2)|0,o[It>>2]=Si,o[bt>>2]=G+(le<<2),G=Si}while(!1);o[G>>2]=o[w>>2],o[It>>2]=(o[It>>2]|0)+4,y=up(p,Un,y)|0,J2(Un)}while(!1);return B=Ds,y|0}function di(p){p=p|0;var y=0;do{if(y=p+984|0,n[y>>0]|0)break;n[y>>0]=1,I[p+504>>2]=ke(ue),p=o[p+944>>2]|0}while(p|0)}function aa(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function Bo(p){return p=p|0,o[p+944>>2]|0}function us(p){p=p|0,np(p,(o[p+964>>2]|0)!=0,2832),di(p)}function Ql(p){return p=p|0,(n[p+984>>0]|0)!=0|0}function LA(p,y){p=p|0,y=y|0,xLe(p,y,400)|0&&(Md(p|0,y|0,400)|0,di(p))}function pf(p){p=p|0;var y=As;return y=ke(I[p+44>>2]),p=El(y)|0,ke(p?ke(0):y)}function ef(p){p=p|0;var y=As;return y=ke(I[p+48>>2]),El(y)|0&&(y=n[(o[p+976>>2]|0)+2>>0]|0?ke(1):ke(0)),ke(y)}function ip(p,y){p=p|0,y=y|0,o[p+980>>2]=y}function _d(p){return p=p|0,o[p+980>>2]|0}function j1(p,y){p=p|0,y=y|0;var w=0;w=p+4|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function pw(p){return p=p|0,o[p+4>>2]|0}function YA(p,y){p=p|0,y=y|0;var w=0;w=p+8|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Ac(p){return p=p|0,o[p+8>>2]|0}function Nm(p,y){p=p|0,y=y|0;var w=0;w=p+12|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function HS(p){return p=p|0,o[p+12>>2]|0}function jd(p,y){p=p|0,y=y|0;var w=0;w=p+16|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function dh(p){return p=p|0,o[p+16>>2]|0}function Hp(p,y){p=p|0,y=y|0;var w=0;w=p+20|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function uC(p){return p=p|0,o[p+20>>2]|0}function nE(p,y){p=p|0,y=y|0;var w=0;w=p+24|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function J_(p){return p=p|0,o[p+24>>2]|0}function q0(p,y){p=p|0,y=y|0;var w=0;w=p+28|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function XE(p){return p=p|0,o[p+28>>2]|0}function TC(p,y){p=p|0,y=y|0;var w=0;w=p+32|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function t_(p){return p=p|0,o[p+32>>2]|0}function cp(p,y){p=p|0,y=y|0;var w=0;w=p+36|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Mm(p){return p=p|0,o[p+36>>2]|0}function fb(p,y){p=p|0,y=ke(y);var w=0;w=p+40|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function pe(p,y){p=p|0,y=ke(y);var w=0;w=p+44|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function lm(p,y){p=p|0,y=ke(y);var w=0;w=p+48|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function Kf(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+52|0,J=p+56|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function CI(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+52|0,w=p+56|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function _I(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+52|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function H2(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function iE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function se(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+132+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function O(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function K(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function we(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+60+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function gt(p,y){p=p|0,y=y|0;var w=0;w=p+60+(y<<3)+4|0,(o[w>>2]|0)!=3&&(I[p+60+(y<<3)>>2]=ke(ue),o[w>>2]=3,di(p))}function sr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function Yr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function Lr(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+204+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function fi(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+276+(y<<3)|0,y=p+276+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function $n(p,y){return p=p|0,y=y|0,ke(I[p+276+(y<<3)>>2])}function ra(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+348|0,J=p+352|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function kc(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+348|0,w=p+352|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function Nl(p){p=p|0;var y=0;y=p+352|0,(o[y>>2]|0)!=3&&(I[p+348>>2]=ke(ue),o[y>>2]=3,di(p))}function ca(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+348|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Bl(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+356|0,J=p+360|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function $g(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+356|0,w=p+360|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function SA(p){p=p|0;var y=0;y=p+360|0,(o[y>>2]|0)!=3&&(I[p+356>>2]=ke(ue),o[y>>2]=3,di(p))}function lI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+356|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function lp(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+364|0,J=p+368|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Ib(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+364|0,J=p+368|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Na(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+364|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function wd(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+372|0,J=p+376|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function z1(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+372|0,J=p+376|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function T_(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+372|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function RC(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+380|0,J=p+384|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Hm(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+380|0,J=p+384|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function YS(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+380|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Fg(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+388|0,J=p+392|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function hb(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+388|0,J=p+392|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function gC(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+388|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function NC(p,y){p=p|0,y=ke(y);var w=0;w=p+396|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function Y2(p){return p=p|0,ke(I[p+396>>2])}function U_(p){return p=p|0,ke(I[p+400>>2])}function DC(p){return p=p|0,ke(I[p+404>>2])}function kC(p){return p=p|0,ke(I[p+408>>2])}function qI(p){return p=p|0,ke(I[p+412>>2])}function ph(p){return p=p|0,ke(I[p+416>>2])}function vA(p){return p=p|0,ke(I[p+420>>2])}function Td(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+424+(y<<2)>>2])}function Mc(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+448+(y<<2)>>2])}function Pf(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+472+(y<<2)>>2])}function sE(p,y){p=p|0,y=y|0;var w=0,G=As;return w=o[p+4>>2]|0,(w|0)==(o[y+4>>2]|0)?w?(G=ke(I[p>>2]),p=ke(je(ke(G-ke(I[y>>2]))))>2]=0,o[G+4>>2]=0,o[G+8>>2]=0,Qh(G|0,p|0,y|0,0),fd(p,3,(n[G+11>>0]|0)<0?o[G>>2]|0:G,w),Gw(G),B=w}function um(p,y,w,G){p=ke(p),y=ke(y),w=w|0,G=G|0;var J=As;p=ke(p*y),J=ke(Az(p,ke(1)));do if(eA(J,ke(0))|0)p=ke(p-J);else{if(p=ke(p-J),eA(J,ke(1))|0){p=ke(p+ke(1));break}if(w){p=ke(p+ke(1));break}G||(J>ke(.5)?J=ke(1):(G=eA(J,ke(.5))|0,J=ke(G?1:0)),p=ke(p+J))}while(!1);return ke(p/y)}function gm(p,y,w,G,J,U,le,Ge,Xe,bt,It,rr,an){p=p|0,y=ke(y),w=w|0,G=ke(G),J=J|0,U=ke(U),le=le|0,Ge=ke(Ge),Xe=ke(Xe),bt=ke(bt),It=ke(It),rr=ke(rr),an=an|0;var Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As;return Xe>2]),zi!=ke(0))?(Ds=ke(um(y,zi,0,0)),Si=ke(um(G,zi,0,0)),Un=ke(um(U,zi,0,0)),zi=ke(um(Ge,zi,0,0))):(Un=U,Ds=y,zi=Ge,Si=G),(J|0)==(p|0)?Ks=eA(Un,Ds)|0:Ks=0,(le|0)==(w|0)?an=eA(zi,Si)|0:an=0,!Ks&&(So=ke(y-It),!(cs(p,So,Xe)|0))&&!(na(p,So,J,Xe)|0)?Ks=ko(p,So,J,U,Xe)|0:Ks=1,!an&&(ss=ke(G-rr),!(cs(w,ss,bt)|0))&&!(na(w,ss,le,bt)|0)?an=ko(w,ss,le,Ge,bt)|0:an=1,an=Ks&an),an|0}function cs(p,y,w){return p=p|0,y=ke(y),w=ke(w),(p|0)==1?p=eA(y,w)|0:p=0,p|0}function na(p,y,w,G){return p=p|0,y=ke(y),w=w|0,G=ke(G),(p|0)==2&(w|0)==0?y>=G?p=1:p=eA(y,G)|0:p=0,p|0}function ko(p,y,w,G,J){return p=p|0,y=ke(y),w=w|0,G=ke(G),J=ke(J),(p|0)==2&(w|0)==2&G>y?J<=y?p=1:p=eA(y,J)|0:p=0,p|0}function ki(p,y,w,G,J,U,le,Ge,Xe,bt,It){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,bt=bt|0,It=It|0;var rr=0,an=0,Ks=0,zi=0,Un=As,Ds=As,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=As,w0=As,bE=As,nh=0,x_=0;wg=B,B=B+160|0,Tc=wg+152|0,fl=wg+120|0,uu=wg+104|0,ss=wg+72|0,zi=wg+56|0,hl=wg+8|0,So=wg,pi=(o[2279]|0)+1|0,o[2279]=pi,Bg=p+984|0,n[Bg>>0]|0&&(o[p+512>>2]|0)!=(o[2278]|0)?Si=4:(o[p+516>>2]|0)==(G|0)?Dg=0:Si=4,(Si|0)==4&&(o[p+520>>2]=0,o[p+924>>2]=-1,o[p+928>>2]=-1,I[p+932>>2]=ke(-1),I[p+936>>2]=ke(-1),Dg=1);e:do if(o[p+964>>2]|0)if(Un=ke(Kl(p,2,le)),Ds=ke(Kl(p,0,le)),rr=p+916|0,bE=ke(I[rr>>2]),w0=ke(I[p+920>>2]),em=ke(I[p+932>>2]),gm(J,y,U,w,o[p+924>>2]|0,bE,o[p+928>>2]|0,w0,em,ke(I[p+936>>2]),Un,Ds,It)|0)Si=22;else if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,em=ke(I[rr>>2]),w0=ke(I[p+524+(an*24|0)+4>>2]),bE=ke(I[p+524+(an*24|0)+16>>2]),gm(J,y,U,w,o[p+524+(an*24|0)+8>>2]|0,em,o[p+524+(an*24|0)+12>>2]|0,w0,bE,ke(I[p+524+(an*24|0)+20>>2]),Un,Ds,It)|0){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}else{if(Xe){if(rr=p+916|0,!(eA(ke(I[rr>>2]),y)|0)){Si=21;break}if(!(eA(ke(I[p+920>>2]),w)|0)){Si=21;break}if((o[p+924>>2]|0)!=(J|0)){Si=21;break}rr=(o[p+928>>2]|0)==(U|0)?rr:0,Si=22;break}if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,eA(ke(I[rr>>2]),y)|0&&eA(ke(I[p+524+(an*24|0)+4>>2]),w)|0&&(o[p+524+(an*24|0)+8>>2]|0)==(J|0)&&(o[p+524+(an*24|0)+12>>2]|0)==(U|0)){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}}while(!1);do if((Si|0)==21)n[11697]|0?(rr=0,Si=28):(rr=0,Si=31);else if((Si|0)==22){if(an=(n[11697]|0)!=0,!((rr|0)!=0&(Dg^1)))if(an){Si=28;break}else{Si=31;break}zi=rr+16|0,o[p+908>>2]=o[zi>>2],Ks=rr+20|0,o[p+912>>2]=o[Ks>>2],(n[11698]|0)==0|an^1||(o[So>>2]=jf(pi)|0,o[So+4>>2]=pi,fd(p,4,2972,So),an=o[p+972>>2]|0,an|0&&DF[an&127](p),J=Ld(J,Xe)|0,U=Ld(U,Xe)|0,x_=+ke(I[zi>>2]),nh=+ke(I[Ks>>2]),o[hl>>2]=J,o[hl+4>>2]=U,C[hl+8>>3]=+y,C[hl+16>>3]=+w,C[hl+24>>3]=x_,C[hl+32>>3]=nh,o[hl+40>>2]=bt,fd(p,4,2989,hl))}while(!1);return(Si|0)==28&&(an=jf(pi)|0,o[zi>>2]=an,o[zi+4>>2]=pi,o[zi+8>>2]=Dg?3047:11699,fd(p,4,3038,zi),an=o[p+972>>2]|0,an|0&&DF[an&127](p),hl=Ld(J,Xe)|0,Si=Ld(U,Xe)|0,o[ss>>2]=hl,o[ss+4>>2]=Si,C[ss+8>>3]=+y,C[ss+16>>3]=+w,o[ss+24>>2]=bt,fd(p,4,3049,ss),Si=31),(Si|0)==31&&(AC(p,y,w,G,J,U,le,Ge,Xe,It),n[11697]|0&&(an=o[2279]|0,hl=jf(an)|0,o[uu>>2]=hl,o[uu+4>>2]=an,o[uu+8>>2]=Dg?3047:11699,fd(p,4,3083,uu),an=o[p+972>>2]|0,an|0&&DF[an&127](p),hl=Ld(J,Xe)|0,uu=Ld(U,Xe)|0,nh=+ke(I[p+908>>2]),x_=+ke(I[p+912>>2]),o[fl>>2]=hl,o[fl+4>>2]=uu,C[fl+8>>3]=nh,C[fl+16>>3]=x_,o[fl+24>>2]=bt,fd(p,4,3092,fl)),o[p+516>>2]=G,rr||(an=p+520|0,rr=o[an>>2]|0,(rr|0)==16&&(n[11697]|0&&fd(p,4,3124,Tc),o[an>>2]=0,rr=0),Xe?rr=p+916|0:(o[an>>2]=rr+1,rr=p+524+(rr*24|0)|0),I[rr>>2]=y,I[rr+4>>2]=w,o[rr+8>>2]=J,o[rr+12>>2]=U,o[rr+16>>2]=o[p+908>>2],o[rr+20>>2]=o[p+912>>2],rr=0)),Xe&&(o[p+416>>2]=o[p+908>>2],o[p+420>>2]=o[p+912>>2],n[p+985>>0]=1,n[Bg>>0]=0),o[2279]=(o[2279]|0)+-1,o[p+512>>2]=o[2278],B=wg,Dg|(rr|0)==0|0}function Kl(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(ar(p,y,w)),ke(G+ke(Jr(p,y,w)))}function fd(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=B,B=B+16|0,J=U,o[J>>2]=G,p?G=o[p+976>>2]|0:G=0,By(G,p,y,w,J),B=U}function jf(p){return p=p|0,(p>>>0>60?3201:3201+(60-p)|0)|0}function Ld(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+32|0,w=J+12|0,G=J,o[w>>2]=o[254],o[w+4>>2]=o[255],o[w+8>>2]=o[256],o[G>>2]=o[257],o[G+4>>2]=o[258],o[G+8>>2]=o[259],(p|0)>2?p=11699:p=o[(y?G:w)+(p<<2)>>2]|0,B=J,p|0}function AC(p,y,w,G,J,U,le,Ge,Xe,bt){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,bt=bt|0;var It=0,rr=0,an=0,Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As,pi=As,hl=0,uu=0,fl=0,Tc=As,Bg=As,Dg=0,wg=As,em=0,w0=0,bE=0,nh=0,x_=0,$D=0,Fw=0,mh=0,kF=0,Zw=0,KT=0,jL=0,zL=0,aS=0,mf=0,d2=0,jT=0,fv=0,Fx=As,xB=As,Iv=As,GB=As,EE=As,Um=0,mN=0,zT=0,Km=0,p2=0,hg=As,OI=As,og=As,jo=As,Yg=As,Zl=As,f2=0,MI=As,xF=As,gI=As,UA=As,lA=As,GF=As,CN=0,qT=0,I1=As,T0=As,ek=0,fo=0,Lw=0,FF=0,Hd=As,of=0,vd=0,yp=0,l_=0,Yd=0,Qg=0,hv=0,Du=As,F3=0,ly=0;hv=B,B=B+16|0,Um=hv+12|0,mN=hv+8|0,zT=hv+4|0,Km=hv,np(p,(J|0)==0|(El(y)|0)^1,3326),np(p,(U|0)==0|(El(w)|0)^1,3406),vd=Qo(p,G)|0,o[p+496>>2]=vd,Yd=vg(2,vd)|0,Qg=vg(0,vd)|0,I[p+440>>2]=ke(ar(p,Yd,le)),I[p+444>>2]=ke(Jr(p,Yd,le)),I[p+428>>2]=ke(ar(p,Qg,le)),I[p+436>>2]=ke(Jr(p,Qg,le)),I[p+464>>2]=ke(Ng(p,Yd)),I[p+468>>2]=ke(Rf(p,Yd)),I[p+452>>2]=ke(Ng(p,Qg)),I[p+460>>2]=ke(Rf(p,Qg)),I[p+488>>2]=ke(uI(p,Yd,le)),I[p+492>>2]=ke(Th(p,Yd,le)),I[p+476>>2]=ke(uI(p,Qg,le)),I[p+484>>2]=ke(Th(p,Qg,le));do if(o[p+964>>2]|0)oE(p,y,w,J,U,le,Ge);else{if(yp=p+948|0,l_=(o[p+952>>2]|0)-(o[yp>>2]|0)>>2,!l_){TT(p,y,w,J,U,le,Ge);break}if(!Xe&&sB(p,y,w,J,U,le,Ge)|0)break;Dr(p),d2=p+508|0,n[d2>>0]=0,Yd=vg(o[p+4>>2]|0,vd)|0,Qg=RT(Yd,vd)|0,of=Gn(Yd)|0,jT=o[p+8>>2]|0,fo=p+28|0,fv=(o[fo>>2]|0)!=0,lA=of?le:Ge,I1=of?Ge:le,Fx=ke(wy(p,Yd,le)),xB=ke(jE(p,Yd,le)),zi=ke(wy(p,Qg,le)),GF=ke(j_(p,Yd,le)),T0=ke(j_(p,Qg,le)),fl=of?J:U,ek=of?U:J,Hd=of?GF:T0,So=of?T0:GF,UA=ke(Kl(p,2,le)),Si=ke(Kl(p,0,le)),Un=ke(ke(od(p+364|0,le))-Hd),Ds=ke(ke(od(p+380|0,le))-Hd),ss=ke(ke(od(p+372|0,Ge))-So),pi=ke(ke(od(p+388|0,Ge))-So),Iv=of?Un:ss,GB=of?Ds:pi,UA=ke(y-UA),y=ke(UA-Hd),El(y)|0?Hd=y:Hd=ke(qs(ke(fU(y,Ds)),Un)),xF=ke(w-Si),y=ke(xF-So),El(y)|0?gI=y:gI=ke(qs(ke(fU(y,pi)),ss)),Un=of?Hd:gI,MI=of?gI:Hd;e:do if((fl|0)==1)for(G=0,rr=0;;){if(It=Wa(p,rr)|0,!G)ke(tf(It))>ke(0)&&ke(Ty(It))>ke(0)?G=It:G=0;else if(NT(It)|0){Ks=0;break e}if(rr=rr+1|0,rr>>>0>=l_>>>0){Ks=G;break}}else Ks=0;while(!1);hl=Ks+500|0,uu=Ks+504|0,G=0,It=0,y=ke(0),an=0;do{if(rr=o[(o[yp>>2]|0)+(an<<2)>>2]|0,(o[rr+36>>2]|0)==1)US(rr),n[rr+985>>0]=1,n[rr+984>>0]=0;else{vy(rr),Xe&&UE(rr,Qo(rr,vd)|0,Un,MI,Hd);do if((o[rr+24>>2]|0)!=1)if((rr|0)==(Ks|0)){o[hl>>2]=o[2278],I[uu>>2]=ke(0);break}else{$I(p,rr,Hd,J,gI,Hd,gI,U,vd,bt);break}else It|0&&(o[It+960>>2]=rr),o[rr+960>>2]=0,It=rr,G=G|0?G:rr;while(!1);Zl=ke(I[rr+504>>2]),y=ke(y+ke(Zl+ke(Kl(rr,Yd,Hd))))}an=an+1|0}while((an|0)!=(l_|0));for(bE=y>Un,f2=fv&((fl|0)==2&bE)?1:fl,em=(ek|0)==1,x_=em&(Xe^1),$D=(f2|0)==1,Fw=(f2|0)==2,mh=976+(Yd<<2)|0,kF=(ek|2|0)==2,aS=em&(fv^1),Zw=1040+(Qg<<2)|0,KT=1040+(Yd<<2)|0,jL=976+(Qg<<2)|0,zL=(ek|0)!=1,bE=fv&((fl|0)!=0&bE),w0=p+976|0,em=em^1,y=Un,Dg=0,nh=0,Zl=ke(0),EE=ke(0);;){e:do if(Dg>>>0>>0)for(uu=o[yp>>2]|0,an=0,pi=ke(0),ss=ke(0),Ds=ke(0),Un=ke(0),rr=0,It=0,Ks=Dg;;){if(hl=o[uu+(Ks<<2)>>2]|0,(o[hl+36>>2]|0)!=1&&(o[hl+940>>2]=nh,(o[hl+24>>2]|0)!=1)){if(Si=ke(Kl(hl,Yd,Hd)),mf=o[mh>>2]|0,w=ke(od(hl+380+(mf<<3)|0,lA)),So=ke(I[hl+504>>2]),w=ke(fU(w,So)),w=ke(qs(ke(od(hl+364+(mf<<3)|0,lA)),w)),fv&(an|0)!=0&ke(Si+ke(ss+w))>y){U=an,Si=pi,fl=Ks;break e}Si=ke(Si+w),w=ke(ss+Si),Si=ke(pi+Si),NT(hl)|0&&(Ds=ke(Ds+ke(tf(hl))),Un=ke(Un-ke(So*ke(Ty(hl))))),It|0&&(o[It+960>>2]=hl),o[hl+960>>2]=0,an=an+1|0,It=hl,rr=rr|0?rr:hl}else Si=pi,w=ss;if(Ks=Ks+1|0,Ks>>>0>>0)pi=Si,ss=w;else{U=an,fl=Ks;break}}else U=0,Si=ke(0),Ds=ke(0),Un=ke(0),rr=0,fl=Dg;while(!1);mf=Ds>ke(0)&Dske(0)&UnGB&((El(GB)|0)^1))y=GB,mf=51;else if(n[(o[w0>>2]|0)+3>>0]|0)mf=51;else{if(Tc!=ke(0)&&ke(tf(p))!=ke(0)){mf=53;break}y=Si,mf=53}while(!1);if((mf|0)==51&&(mf=0,El(y)|0?mf=53:(Bg=ke(y-Si),wg=y)),(mf|0)==53&&(mf=0,Si>2]|0,Ks=Bgke(0),ss=ke(Bg/Tc),Ds=ke(0),Si=ke(0),y=ke(0),It=rr;do w=ke(od(It+380+(an<<3)|0,lA)),Un=ke(od(It+364+(an<<3)|0,lA)),Un=ke(fU(w,ke(qs(Un,ke(I[It+504>>2]))))),Ks?(w=ke(Un*ke(Ty(It))),w!=ke(-0)&&(Du=ke(Un-ke(So*w)),hg=ke(BA(It,Yd,Du,wg,Hd)),Du!=hg)&&(Ds=ke(Ds-ke(hg-Un)),y=ke(y+w))):hl&&(OI=ke(tf(It)),OI!=ke(0))&&(Du=ke(Un+ke(ss*OI)),og=ke(BA(It,Yd,Du,wg,Hd)),Du!=og)&&(Ds=ke(Ds-ke(og-Un)),Si=ke(Si-OI)),It=o[It+960>>2]|0;while(It|0);if(y=ke(pi+y),Un=ke(Bg+Ds),p2)y=ke(0);else{So=ke(Tc+Si),Ks=o[mh>>2]|0,hl=Unke(0),So=ke(Un/So),y=ke(0);do{Du=ke(od(rr+380+(Ks<<3)|0,lA)),Ds=ke(od(rr+364+(Ks<<3)|0,lA)),Ds=ke(fU(Du,ke(qs(Ds,ke(I[rr+504>>2]))))),hl?(Du=ke(Ds*ke(Ty(rr))),Un=ke(-Du),Du!=ke(-0)?(Du=ke(ss*Un),Un=ke(BA(rr,Yd,ke(Ds+(uu?Un:Du)),wg,Hd))):Un=Ds):an&&(jo=ke(tf(rr)),jo!=ke(0))?Un=ke(BA(rr,Yd,ke(Ds+ke(So*jo)),wg,Hd)):Un=Ds,y=ke(y-ke(Un-Ds)),Si=ke(Kl(rr,Yd,Hd)),w=ke(Kl(rr,Qg,Hd)),Un=ke(Un+Si),I[mN>>2]=Un,o[Km>>2]=1,Ds=ke(I[rr+396>>2]);e:do if(El(Ds)|0){It=El(MI)|0;do if(!It){if(bE|(K_(rr,Qg,MI)|0|em)||($A(p,rr)|0)!=4||(o[(Qm(rr,Qg)|0)+4>>2]|0)==3||(o[(zf(rr,Qg)|0)+4>>2]|0)==3)break;I[Um>>2]=MI,o[zT>>2]=1;break e}while(!1);if(K_(rr,Qg,MI)|0){It=o[rr+992+(o[jL>>2]<<2)>>2]|0,Du=ke(w+ke(od(It,MI))),I[Um>>2]=Du,It=zL&(o[It+4>>2]|0)==2,o[zT>>2]=((El(Du)|0|It)^1)&1;break}else{I[Um>>2]=MI,o[zT>>2]=It?0:2;break}}else Du=ke(Un-Si),Tc=ke(Du/Ds),Du=ke(Ds*Du),o[zT>>2]=1,I[Um>>2]=ke(w+(of?Tc:Du));while(!1);mb(rr,Yd,wg,Hd,Km,mN),mb(rr,Qg,MI,Hd,zT,Um);do if(!(K_(rr,Qg,MI)|0)&&($A(p,rr)|0)==4){if((o[(Qm(rr,Qg)|0)+4>>2]|0)==3){It=0;break}It=(o[(zf(rr,Qg)|0)+4>>2]|0)!=3}else It=0;while(!1);Du=ke(I[mN>>2]),Tc=ke(I[Um>>2]),F3=o[Km>>2]|0,ly=o[zT>>2]|0,ki(rr,of?Du:Tc,of?Tc:Du,vd,of?F3:ly,of?ly:F3,Hd,gI,Xe&(It^1),3488,bt)|0,n[d2>>0]=n[d2>>0]|n[rr+508>>0],rr=o[rr+960>>2]|0}while(rr|0)}}else y=ke(0);if(y=ke(Bg+y),ly=y>0]=ly|l[d2>>0],Fw&y>ke(0)?(It=o[mh>>2]|0,o[p+364+(It<<3)+4>>2]|0&&(Yg=ke(od(p+364+(It<<3)|0,lA)),Yg>=ke(0))?Un=ke(qs(ke(0),ke(Yg-ke(wg-y)))):Un=ke(0)):Un=y,hl=Dg>>>0>>0,hl){Ks=o[yp>>2]|0,an=Dg,It=0;do rr=o[Ks+(an<<2)>>2]|0,o[rr+24>>2]|0||(It=((o[(Qm(rr,Yd)|0)+4>>2]|0)==3&1)+It|0,It=It+((o[(zf(rr,Yd)|0)+4>>2]|0)==3&1)|0),an=an+1|0;while((an|0)!=(fl|0));It?(Si=ke(0),w=ke(0)):mf=101}else mf=101;e:do if((mf|0)==101)switch(mf=0,jT|0){case 1:{It=0,Si=ke(Un*ke(.5)),w=ke(0);break e}case 2:{It=0,Si=Un,w=ke(0);break e}case 3:{if(U>>>0<=1){It=0,Si=ke(0),w=ke(0);break e}w=ke((U+-1|0)>>>0),It=0,Si=ke(0),w=ke(ke(qs(Un,ke(0)))/w);break e}case 5:{w=ke(Un/ke((U+1|0)>>>0)),It=0,Si=w;break e}case 4:{w=ke(Un/ke(U>>>0)),It=0,Si=ke(w*ke(.5));break e}default:{It=0,Si=ke(0),w=ke(0);break e}}while(!1);if(y=ke(Fx+Si),hl){Ds=ke(Un/ke(It|0)),an=o[yp>>2]|0,rr=Dg,Un=ke(0);do{It=o[an+(rr<<2)>>2]|0;e:do if((o[It+36>>2]|0)!=1){switch(o[It+24>>2]|0){case 1:{if(R_(It,Yd)|0){if(!Xe)break e;Du=ke(Cb(It,Yd,wg)),Du=ke(Du+ke(Ng(p,Yd))),Du=ke(Du+ke(ar(It,Yd,Hd))),I[It+400+(o[KT>>2]<<2)>>2]=Du;break e}break}case 0:if(ly=(o[(Qm(It,Yd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=ly?Du:y,Xe&&(ly=It+400+(o[KT>>2]<<2)|0,I[ly>>2]=ke(y+ke(I[ly>>2]))),ly=(o[(zf(It,Yd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=ly?Du:y,x_){Du=ke(w+ke(Kl(It,Yd,Hd))),Un=MI,y=ke(y+ke(Du+ke(I[It+504>>2])));break e}else{y=ke(y+ke(w+ke(Ry(It,Yd,Hd)))),Un=ke(qs(Un,ke(Ry(It,Qg,Hd))));break e}default:}Xe&&(Du=ke(Si+ke(Ng(p,Yd))),ly=It+400+(o[KT>>2]<<2)|0,I[ly>>2]=ke(Du+ke(I[ly>>2])))}while(!1);rr=rr+1|0}while((rr|0)!=(fl|0))}else Un=ke(0);if(w=ke(xB+y),kF?Si=ke(ke(BA(p,Qg,ke(T0+Un),I1,le))-T0):Si=MI,Ds=ke(ke(BA(p,Qg,ke(T0+(aS?MI:Un)),I1,le))-T0),hl&Xe){rr=Dg;do{an=o[(o[yp>>2]|0)+(rr<<2)>>2]|0;do if((o[an+36>>2]|0)!=1){if((o[an+24>>2]|0)==1){if(R_(an,Qg)|0){if(Du=ke(Cb(an,Qg,MI)),Du=ke(Du+ke(Ng(p,Qg))),Du=ke(Du+ke(ar(an,Qg,Hd))),It=o[Zw>>2]|0,I[an+400+(It<<2)>>2]=Du,!(El(Du)|0))break}else It=o[Zw>>2]|0;Du=ke(Ng(p,Qg)),I[an+400+(It<<2)>>2]=ke(Du+ke(ar(an,Qg,Hd)));break}It=$A(p,an)|0;do if((It|0)==4){if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){mf=139;break}if((o[(zf(an,Qg)|0)+4>>2]|0)==3){mf=139;break}if(K_(an,Qg,MI)|0){y=zi;break}F3=o[an+908+(o[mh>>2]<<2)>>2]|0,o[Um>>2]=F3,y=ke(I[an+396>>2]),ly=El(y)|0,Un=(o[E>>2]=F3,ke(I[E>>2])),ly?y=Ds:(Bg=ke(Kl(an,Qg,Hd)),Du=ke(Un/y),y=ke(y*Un),y=ke(Bg+(of?Du:y))),I[mN>>2]=y,I[Um>>2]=ke(ke(Kl(an,Yd,Hd))+Un),o[zT>>2]=1,o[Km>>2]=1,mb(an,Yd,wg,Hd,zT,Um),mb(an,Qg,MI,Hd,Km,mN),y=ke(I[Um>>2]),Bg=ke(I[mN>>2]),Du=of?y:Bg,y=of?Bg:y,ly=((El(Du)|0)^1)&1,ki(an,Du,y,vd,ly,((El(y)|0)^1)&1,Hd,gI,1,3493,bt)|0,y=zi}else mf=139;while(!1);e:do if((mf|0)==139){mf=0,y=ke(Si-ke(Ry(an,Qg,Hd)));do if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){if((o[(zf(an,Qg)|0)+4>>2]|0)!=3)break;y=ke(zi+ke(qs(ke(0),ke(y*ke(.5)))));break e}while(!1);if((o[(zf(an,Qg)|0)+4>>2]|0)==3){y=zi;break}if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){y=ke(zi+ke(qs(ke(0),y)));break}switch(It|0){case 1:{y=zi;break e}case 2:{y=ke(zi+ke(y*ke(.5)));break e}default:{y=ke(zi+y);break e}}}while(!1);Du=ke(Zl+y),ly=an+400+(o[Zw>>2]<<2)|0,I[ly>>2]=ke(Du+ke(I[ly>>2]))}while(!1);rr=rr+1|0}while((rr|0)!=(fl|0))}if(Zl=ke(Zl+Ds),EE=ke(qs(EE,w)),U=nh+1|0,fl>>>0>=l_>>>0)break;y=wg,Dg=fl,nh=U}do if(Xe){if(It=U>>>0>1,!It&&!(KS(p)|0))break;if(!(El(MI)|0)){y=ke(MI-Zl);e:do switch(o[p+12>>2]|0){case 3:{zi=ke(zi+y),ss=ke(0);break}case 2:{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break}case 4:{MI>Zl?ss=ke(y/ke(U>>>0)):ss=ke(0);break}case 7:if(MI>Zl){zi=ke(zi+ke(y/ke(U<<1>>>0))),ss=ke(y/ke(U>>>0)),ss=It?ss:ke(0);break e}else{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break e}case 6:{ss=ke(y/ke(nh>>>0)),ss=MI>Zl&It?ss:ke(0);break}default:ss=ke(0)}while(!1);if(U|0)for(hl=1040+(Qg<<2)|0,uu=976+(Qg<<2)|0,Ks=0,rr=0;;){e:do if(rr>>>0>>0)for(Un=ke(0),Ds=ke(0),y=ke(0),an=rr;;){It=o[(o[yp>>2]|0)+(an<<2)>>2]|0;do if((o[It+36>>2]|0)!=1&&!(o[It+24>>2]|0)){if((o[It+940>>2]|0)!=(Ks|0))break e;if(_b(It,Qg)|0&&(Du=ke(I[It+908+(o[uu>>2]<<2)>>2]),y=ke(qs(y,ke(Du+ke(Kl(It,Qg,Hd)))))),($A(p,It)|0)!=5)break;Yg=ke(z_(It)),Yg=ke(Yg+ke(ar(It,0,Hd))),Du=ke(I[It+912>>2]),Du=ke(ke(Du+ke(Kl(It,0,Hd)))-Yg),Yg=ke(qs(Ds,Yg)),Du=ke(qs(Un,Du)),Un=Du,Ds=Yg,y=ke(qs(y,ke(Yg+Du)))}while(!1);if(It=an+1|0,It>>>0>>0)an=It;else{an=It;break}}else Ds=ke(0),y=ke(0),an=rr;while(!1);if(So=ke(ss+y),w=zi,zi=ke(zi+So),rr>>>0>>0){Si=ke(w+Ds),It=rr;do{rr=o[(o[yp>>2]|0)+(It<<2)>>2]|0;e:do if((o[rr+36>>2]|0)!=1&&!(o[rr+24>>2]|0))switch($A(p,rr)|0){case 1:{Du=ke(w+ke(ar(rr,Qg,Hd))),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 3:{Du=ke(ke(zi-ke(Jr(rr,Qg,Hd)))-ke(I[rr+908+(o[uu>>2]<<2)>>2])),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 2:{Du=ke(w+ke(ke(So-ke(I[rr+908+(o[uu>>2]<<2)>>2]))*ke(.5))),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 4:{if(Du=ke(w+ke(ar(rr,Qg,Hd))),I[rr+400+(o[hl>>2]<<2)>>2]=Du,K_(rr,Qg,MI)|0||(of?(Un=ke(I[rr+908>>2]),y=ke(Un+ke(Kl(rr,Yd,Hd))),Ds=So):(Ds=ke(I[rr+912>>2]),Ds=ke(Ds+ke(Kl(rr,Qg,Hd))),y=So,Un=ke(I[rr+908>>2])),eA(y,Un)|0&&eA(Ds,ke(I[rr+912>>2]))|0))break e;ki(rr,y,Ds,vd,1,1,Hd,gI,1,3501,bt)|0;break e}case 5:{I[rr+404>>2]=ke(ke(Si-ke(z_(rr)))+ke(Cb(rr,0,MI)));break e}default:break e}while(!1);It=It+1|0}while((It|0)!=(an|0))}if(Ks=Ks+1|0,(Ks|0)==(U|0))break;rr=an}}}while(!1);if(I[p+908>>2]=ke(BA(p,2,UA,le,le)),I[p+912>>2]=ke(BA(p,0,xF,Ge,le)),f2|0&&(CN=o[p+32>>2]|0,qT=(f2|0)==2,!(qT&(CN|0)!=2))?qT&(CN|0)==2&&(y=ke(GF+wg),y=ke(qs(ke(fU(y,ke(zE(p,Yd,EE,lA)))),GF)),mf=198):(y=ke(BA(p,Yd,EE,lA,le)),mf=198),(mf|0)==198&&(I[p+908+(o[976+(Yd<<2)>>2]<<2)>>2]=y),ek|0&&(Lw=o[p+32>>2]|0,FF=(ek|0)==2,!(FF&(Lw|0)!=2))?FF&(Lw|0)==2&&(y=ke(T0+MI),y=ke(qs(ke(fU(y,ke(zE(p,Qg,ke(T0+Zl),I1)))),T0)),mf=204):(y=ke(BA(p,Qg,ke(T0+Zl),I1,le)),mf=204),(mf|0)==204&&(I[p+908+(o[976+(Qg<<2)>>2]<<2)>>2]=y),Xe){if((o[fo>>2]|0)==2){rr=976+(Qg<<2)|0,an=1040+(Qg<<2)|0,It=0;do Ks=Wa(p,It)|0,o[Ks+24>>2]|0||(F3=o[rr>>2]|0,Du=ke(I[p+908+(F3<<2)>>2]),ly=Ks+400+(o[an>>2]<<2)|0,Du=ke(Du-ke(I[ly>>2])),I[ly>>2]=ke(Du-ke(I[Ks+908+(F3<<2)>>2]))),It=It+1|0;while((It|0)!=(l_|0))}if(G|0){It=of?f2:J;do oB(p,G,Hd,It,gI,vd,bt),G=o[G+960>>2]|0;while(G|0)}if(It=(Yd|2|0)==3,rr=(Qg|2|0)==3,It|rr){G=0;do an=o[(o[yp>>2]|0)+(G<<2)>>2]|0,(o[an+36>>2]|0)!=1&&(It&&DT(p,an,Yd),rr&&DT(p,an,Qg)),G=G+1|0;while((G|0)!=(l_|0))}}}while(!1);B=hv}function JE(p,y){p=p|0,y=ke(y);var w=0;MA(p,y>=ke(0),3147),w=y==ke(0),I[p+4>>2]=w?ke(0):y}function Ym(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=G|0;var J=As,U=As,le=0,Ge=0,Xe=0;o[2278]=(o[2278]|0)+1,vy(p),K_(p,2,y)|0?(J=ke(od(o[p+992>>2]|0,y)),Xe=1,J=ke(J+ke(Kl(p,2,y)))):(J=ke(od(p+380|0,y)),J>=ke(0)?Xe=2:(Xe=((El(y)|0)^1)&1,J=y)),K_(p,0,w)|0?(U=ke(od(o[p+996>>2]|0,w)),Ge=1,U=ke(U+ke(Kl(p,0,y)))):(U=ke(od(p+388|0,w)),U>=ke(0)?Ge=2:(Ge=((El(w)|0)^1)&1,U=w)),le=p+976|0,ki(p,J,U,G,Xe,Ge,y,w,1,3189,o[le>>2]|0)|0&&(UE(p,o[p+496>>2]|0,y,w,y),KE(p,ke(I[(o[le>>2]|0)+4>>2]),ke(0),ke(0)),n[11696]|0)&&QS(p,7)}function vy(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;Ge=B,B=B+32|0,le=Ge+24|0,U=Ge+16|0,G=Ge+8|0,J=Ge,w=0;do y=p+380+(w<<3)|0,o[p+380+(w<<3)+4>>2]|0&&(Xe=y,bt=o[Xe+4>>2]|0,It=G,o[It>>2]=o[Xe>>2],o[It+4>>2]=bt,It=p+364+(w<<3)|0,bt=o[It+4>>2]|0,Xe=J,o[Xe>>2]=o[It>>2],o[Xe+4>>2]=bt,o[U>>2]=o[G>>2],o[U+4>>2]=o[G+4>>2],o[le>>2]=o[J>>2],o[le+4>>2]=o[J+4>>2],sE(U,le)|0)||(y=p+348+(w<<3)|0),o[p+992+(w<<2)>>2]=y,w=w+1|0;while((w|0)!=2);B=Ge}function K_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0;switch(p=o[p+992+(o[976+(y<<2)>>2]<<2)>>2]|0,o[p+4>>2]|0){case 0:case 3:{p=0;break}case 1:{ke(I[p>>2])>2])>2]|0){case 2:{y=ke(ke(ke(I[p>>2])*y)/ke(100));break}case 1:{y=ke(I[p>>2]);break}default:y=ke(ue)}return ke(y)}function UE(p,y,w,G,J){p=p|0,y=y|0,w=ke(w),G=ke(G),J=ke(J);var U=0,le=As;y=o[p+944>>2]|0?y:1,U=vg(o[p+4>>2]|0,y)|0,y=RT(U,y)|0,w=ke(X2(p,U,w)),G=ke(X2(p,y,G)),le=ke(w+ke(ar(p,U,J))),I[p+400+(o[1040+(U<<2)>>2]<<2)>>2]=le,w=ke(w+ke(Jr(p,U,J))),I[p+400+(o[1e3+(U<<2)>>2]<<2)>>2]=w,w=ke(G+ke(ar(p,y,J))),I[p+400+(o[1040+(y<<2)>>2]<<2)>>2]=w,J=ke(G+ke(Jr(p,y,J))),I[p+400+(o[1e3+(y<<2)>>2]<<2)>>2]=J}function KE(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=ke(G);var J=0,U=0,le=As,Ge=As,Xe=0,bt=0,It=As,rr=0,an=As,Ks=As,zi=As,Un=As;if(y!=ke(0)&&(J=p+400|0,Un=ke(I[J>>2]),U=p+404|0,zi=ke(I[U>>2]),rr=p+416|0,Ks=ke(I[rr>>2]),bt=p+420|0,le=ke(I[bt>>2]),an=ke(Un+w),It=ke(zi+G),G=ke(an+Ks),Ge=ke(It+le),Xe=(o[p+988>>2]|0)==1,I[J>>2]=ke(um(Un,y,0,Xe)),I[U>>2]=ke(um(zi,y,0,Xe)),w=ke(Az(ke(Ks*y),ke(1))),eA(w,ke(0))|0?U=0:U=(eA(w,ke(1))|0)^1,w=ke(Az(ke(le*y),ke(1))),eA(w,ke(0))|0?J=0:J=(eA(w,ke(1))|0)^1,Un=ke(um(G,y,Xe&U,Xe&(U^1))),I[rr>>2]=ke(Un-ke(um(an,y,0,Xe))),Un=ke(um(Ge,y,Xe&J,Xe&(J^1))),I[bt>>2]=ke(Un-ke(um(It,y,0,Xe))),U=(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2,U|0)){J=0;do KE(Wa(p,J)|0,y,an,It),J=J+1|0;while((J|0)!=(U|0))}}function Yp(p,y,w,G,J){switch(p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,w|0){case 5:case 0:{p=qAe(o[489]|0,G,J)|0;break}default:p=mPt(G,J)|0}return p|0}function JS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;J=B,B=B+16|0,U=J,o[U>>2]=G,By(p,0,y,w,U),B=J}function By(p,y,w,G,J){if(p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,p=p|0?p:956,sde[o[p+8>>2]&1](p,y,w,G,J)|0,(w|0)==5)Ko();else return}function $0(p,y,w){p=p|0,y=y|0,w=w|0,n[p+y>>0]=w&1}function fw(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(Q2(p,G),xc(p,o[y>>2]|0,o[w>>2]|0,G))}function Q2(p,y){p=p|0,y=y|0;var w=0;if((ut(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function ut(p){return p=p|0,1073741823}function ar(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+96>>2]|0?p=p+92|0:p=yg(p+60|0,o[1040+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Jr(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+104>>2]|0?p=p+100|0:p=yg(p+60|0,o[1e3+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Gn(p){return p=p|0,(p|1|0)==3|0}function Ts(p,y){return p=p|0,y=ke(y),(o[p+4>>2]|0)==3?y=ke(0):y=ke(od(p,y)),ke(y)}function Qo(p,y){return p=p|0,y=y|0,p=o[p>>2]|0,(p|0?p:(y|0)>1?y:1)|0}function vg(p,y){p=p|0,y=y|0;var w=0;e:do if((y|0)==2){switch(p|0){case 2:{p=3;break e}case 3:break;default:{w=4;break e}}p=2}else w=4;while(!1);return p|0}function Ng(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+312>>2]|0&&(w=ke(I[p+308>>2]),w>=ke(0))||(w=ke(qs(ke(I[(yg(p+276|0,o[1040+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function Rf(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+320>>2]|0&&(w=ke(I[p+316>>2]),w>=ke(0))||(w=ke(qs(ke(I[(yg(p+276|0,o[1e3+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function uI(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+240>>2]|0&&(G=ke(od(p+236|0,w)),G>=ke(0))||(G=ke(qs(ke(od(yg(p+204|0,o[1040+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function Th(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+248>>2]|0&&(G=ke(od(p+244|0,w)),G>=ke(0))||(G=ke(qs(ke(od(yg(p+204|0,o[1e3+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function oE(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,bt=As,It=As,rr=As,an=As,Ks=0,zi=0,Un=0;Un=B,B=B+16|0,Ks=Un,zi=p+964|0,np(p,(o[zi>>2]|0)!=0,3519),Ge=ke(j_(p,2,y)),Xe=ke(j_(p,0,y)),bt=ke(Kl(p,2,y)),It=ke(Kl(p,0,y)),El(y)|0?rr=y:rr=ke(qs(ke(0),ke(ke(y-bt)-Ge))),El(w)|0?an=w:an=ke(qs(ke(0),ke(ke(w-It)-Xe))),(G|0)==1&(J|0)==1?(I[p+908>>2]=ke(BA(p,2,ke(y-bt),U,U)),y=ke(BA(p,0,ke(w-It),le,U))):(Cz[o[zi>>2]&1](Ks,p,rr,G,an,J),rr=ke(Ge+ke(I[Ks>>2])),an=ke(y-bt),I[p+908>>2]=ke(BA(p,2,(G|2|0)==2?rr:an,U,U)),an=ke(Xe+ke(I[Ks+4>>2])),y=ke(w-It),y=ke(BA(p,0,(J|2|0)==2?an:y,le,U))),I[p+912>>2]=y,B=Un}function TT(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,bt=As,It=As;bt=ke(j_(p,2,U)),Ge=ke(j_(p,0,U)),It=ke(Kl(p,2,U)),Xe=ke(Kl(p,0,U)),y=ke(y-It),I[p+908>>2]=ke(BA(p,2,(G|2|0)==2?bt:y,U,U)),w=ke(w-Xe),I[p+912>>2]=ke(BA(p,0,(J|2|0)==2?Ge:w,le,U))}function sB(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=0,Xe=As,bt=As;return Ge=(G|0)==2,!(y<=ke(0)&Ge)&&!(w<=ke(0)&(J|0)==2)&&!((G|0)==1&(J|0)==1)?p=0:(Xe=ke(Kl(p,0,U)),bt=ke(Kl(p,2,U)),Ge=y>2]=ke(BA(p,2,Ge?ke(0):y,U,U)),y=ke(w-Xe),Ge=w>2]=ke(BA(p,0,Ge?ke(0):y,le,U)),p=1),p|0}function RT(p,y){return p=p|0,y=y|0,aB(p)|0?p=vg(2,y)|0:p=0,p|0}function wy(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(uI(p,y,w)),ke(w+ke(Ng(p,y)))}function jE(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(Th(p,y,w)),ke(w+ke(Rf(p,y)))}function j_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(wy(p,y,w)),ke(G+ke(jE(p,y,w)))}function NT(p){return p=p|0,o[p+24>>2]|0?p=0:ke(tf(p))!=ke(0)?p=1:p=ke(Ty(p))!=ke(0),p|0}function tf(p){p=p|0;var y=As;if(o[p+944>>2]|0){if(y=ke(I[p+44>>2]),El(y)|0)return y=ke(I[p+40>>2]),p=y>ke(0)&((El(y)|0)^1),ke(p?y:ke(0))}else y=ke(0);return ke(y)}function Ty(p){p=p|0;var y=As,w=0,G=As;do if(o[p+944>>2]|0){if(y=ke(I[p+48>>2]),El(y)|0){if(w=n[(o[p+976>>2]|0)+2>>0]|0,!(w<<24>>24)&&(G=ke(I[p+40>>2]),G>24?ke(1):ke(0)}}else y=ke(0);while(!1);return ke(y)}function US(p){p=p|0;var y=0,w=0;if(fz(p+400|0,0,540)|0,n[p+985>>0]=1,Dr(p),w=Fs(p)|0,w|0){y=p+948|0,p=0;do US(o[(o[y>>2]|0)+(p<<2)>>2]|0),p=p+1|0;while((p|0)!=(w|0))}}function $I(p,y,w,G,J,U,le,Ge,Xe,bt){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=ke(U),le=ke(le),Ge=Ge|0,Xe=Xe|0,bt=bt|0;var It=0,rr=As,an=0,Ks=0,zi=As,Un=As,Ds=0,Si=As,So=0,ss=As,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0,w0=0;em=B,B=B+16|0,uu=em+12|0,fl=em+8|0,Tc=em+4|0,Bg=em,wg=vg(o[p+4>>2]|0,Xe)|0,pi=Gn(wg)|0,rr=ke(od(jS(y)|0,pi?U:le)),hl=K_(y,2,U)|0,Dg=K_(y,0,le)|0;do if(!(El(rr)|0)&&!(El(pi?w:J)|0)){if(It=y+504|0,!(El(ke(I[It>>2]))|0)&&(!(XR(o[y+976>>2]|0,0)|0)||(o[y+500>>2]|0)==(o[2278]|0)))break;I[It>>2]=ke(qs(rr,ke(j_(y,wg,U))))}else an=7;while(!1);do if((an|0)==7){if(So=pi^1,!(So|hl^1)){le=ke(od(o[y+992>>2]|0,U)),I[y+504>>2]=ke(qs(le,ke(j_(y,2,U))));break}if(!(pi|Dg^1)){le=ke(od(o[y+996>>2]|0,le)),I[y+504>>2]=ke(qs(le,ke(j_(y,0,U))));break}I[uu>>2]=ke(ue),I[fl>>2]=ke(ue),o[Tc>>2]=0,o[Bg>>2]=0,Si=ke(Kl(y,2,U)),ss=ke(Kl(y,0,U)),hl?(zi=ke(Si+ke(od(o[y+992>>2]|0,U))),I[uu>>2]=zi,o[Tc>>2]=1,Ks=1):(Ks=0,zi=ke(ue)),Dg?(rr=ke(ss+ke(od(o[y+996>>2]|0,le))),I[fl>>2]=rr,o[Bg>>2]=1,It=1):(It=0,rr=ke(ue)),an=o[p+32>>2]|0,pi&(an|0)==2?an=2:El(zi)|0&&!(El(w)|0)&&(I[uu>>2]=w,o[Tc>>2]=2,Ks=2,zi=w),!((an|0)==2&So)&&El(rr)|0&&!(El(J)|0)&&(I[fl>>2]=J,o[Bg>>2]=2,It=2,rr=J),Un=ke(I[y+396>>2]),Ds=El(Un)|0;do if(Ds)an=Ks;else{if((Ks|0)==1&So){I[fl>>2]=ke(ke(zi-Si)/Un),o[Bg>>2]=1,It=1,an=1;break}pi&(It|0)==1?(I[uu>>2]=ke(Un*ke(rr-ss)),o[Tc>>2]=1,It=1,an=1):an=Ks}while(!1);w0=El(w)|0,Ks=($A(p,y)|0)!=4,!(pi|hl|((G|0)!=1|w0)|(Ks|(an|0)==1))&&(I[uu>>2]=w,o[Tc>>2]=1,!Ds)&&(I[fl>>2]=ke(ke(w-Si)/Un),o[Bg>>2]=1,It=1),!(Dg|So|((Ge|0)!=1|(El(J)|0))|(Ks|(It|0)==1))&&(I[fl>>2]=J,o[Bg>>2]=1,!Ds)&&(I[uu>>2]=ke(Un*ke(J-ss)),o[Tc>>2]=1),mb(y,2,U,U,Tc,uu),mb(y,0,le,U,Bg,fl),w=ke(I[uu>>2]),J=ke(I[fl>>2]),ki(y,w,J,Xe,o[Tc>>2]|0,o[Bg>>2]|0,U,le,0,3565,bt)|0,le=ke(I[y+908+(o[976+(wg<<2)>>2]<<2)>>2]),I[y+504>>2]=ke(qs(le,ke(j_(y,wg,U))))}while(!1);o[y+500>>2]=o[2278],B=em}function BA(p,y,w,G,J){return p=p|0,y=y|0,w=ke(w),G=ke(G),J=ke(J),G=ke(zE(p,y,w,G)),ke(qs(G,ke(j_(p,y,J))))}function $A(p,y){return p=p|0,y=y|0,y=y+20|0,y=o[(o[y>>2]|0?y:p+16|0)>>2]|0,(y|0)==5&&aB(o[p+4>>2]|0)|0&&(y=1),y|0}function Qm(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+96>>2]|0?y=4:y=o[1040+(y<<2)>>2]|0,p+60+(y<<3)|0}function zf(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+104>>2]|0?y=5:y=o[1e3+(y<<2)>>2]|0,p+60+(y<<3)|0}function mb(p,y,w,G,J,U){switch(p=p|0,y=y|0,w=ke(w),G=ke(G),J=J|0,U=U|0,w=ke(od(p+380+(o[976+(y<<2)>>2]<<3)|0,w)),w=ke(w+ke(Kl(p,y,G))),o[J>>2]|0){case 2:case 1:{J=El(w)|0,G=ke(I[U>>2]),I[U>>2]=J|G>2]=2,I[U>>2]=w);break}default:}}function R_(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(yg(p,4,948)|0)+4>>2]|0?p=1:p=(o[(yg(p,o[1040+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function Cb(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0;return p=p+132|0,Gn(y)|0&&(G=yg(p,4,948)|0,(o[G+4>>2]|0)!=0)?J=4:(G=yg(p,o[1040+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?J=4:w=ke(0)),(J|0)==4&&(w=ke(od(G,w))),ke(w)}function Ry(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),G=ke(G+ke(ar(p,y,w))),ke(G+ke(Jr(p,y,w)))}function KS(p){p=p|0;var y=0,w=0,G=0;e:do if(aB(o[p+4>>2]|0)|0)y=0;else if((o[p+16>>2]|0)!=5)if(w=Fs(p)|0,!w)y=0;else for(y=0;;){if(G=Wa(p,y)|0,!(o[G+24>>2]|0)&&(o[G+20>>2]|0)==5){y=1;break e}if(y=y+1|0,y>>>0>=w>>>0){y=0;break}}else y=1;while(!1);return y|0}function _b(p,y){p=p|0,y=y|0;var w=As;return w=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),w>=ke(0)&((El(w)|0)^1)|0}function z_(p){p=p|0;var y=As,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=As;if(w=o[p+968>>2]|0,w)Xe=ke(I[p+908>>2]),y=ke(I[p+912>>2]),y=ke(uie[w&0](p,Xe,y)),np(p,(El(y)|0)^1,3573);else{U=Fs(p)|0;do if(U|0){for(w=0,J=0;;){if(G=Wa(p,J)|0,o[G+940>>2]|0){le=8;break}if((o[G+24>>2]|0)!=1)if(Ge=($A(p,G)|0)==5,Ge){w=G;break}else w=w|0?w:G;if(J=J+1|0,J>>>0>=U>>>0){le=8;break}}if((le|0)==8&&!w)break;return y=ke(z_(w)),ke(y+ke(I[w+404>>2]))}while(!1);y=ke(I[p+912>>2])}return ke(y)}function zE(p,y,w,G){p=p|0,y=y|0,w=ke(w),G=ke(G);var J=As,U=0;return aB(y)|0?(y=1,U=3):Gn(y)|0?(y=0,U=3):(G=ke(ue),J=ke(ue)),(U|0)==3&&(J=ke(od(p+364+(y<<3)|0,G)),G=ke(od(p+380+(y<<3)|0,G))),U=G=ke(0)&((El(G)|0)^1)),w=U?G:w,U=J>=ke(0)&((El(J)|0)^1)&w>2]|0,U)|0,zi=RT(Ds,U)|0,Un=Gn(Ds)|0,rr=ke(Kl(y,2,w)),an=ke(Kl(y,0,w)),K_(y,2,w)|0?Ge=ke(rr+ke(od(o[y+992>>2]|0,w))):R_(y,2)|0&&zS(y,2)|0?(Ge=ke(I[p+908>>2]),Xe=ke(Ng(p,2)),Xe=ke(Ge-ke(Xe+ke(Rf(p,2)))),Ge=ke(Cb(y,2,w)),Ge=ke(BA(y,2,ke(Xe-ke(Ge+ke(qE(y,2,w)))),w,w))):Ge=ke(ue),K_(y,0,J)|0?Xe=ke(an+ke(od(o[y+996>>2]|0,J))):R_(y,0)|0&&zS(y,0)|0?(Xe=ke(I[p+912>>2]),So=ke(Ng(p,0)),So=ke(Xe-ke(So+ke(Rf(p,0)))),Xe=ke(Cb(y,0,J)),Xe=ke(BA(y,0,ke(So-ke(Xe+ke(qE(y,0,J)))),J,w))):Xe=ke(ue),bt=El(Ge)|0,It=El(Xe)|0;do if(bt^It&&(Ks=ke(I[y+396>>2]),!(El(Ks)|0)))if(bt){Ge=ke(rr+ke(ke(Xe-an)*Ks));break}else{So=ke(an+ke(ke(Ge-rr)/Ks)),Xe=It?So:Xe;break}while(!1);It=El(Ge)|0,bt=El(Xe)|0,It|bt&&(ss=(It^1)&1,G=w>ke(0)&((G|0)!=0&It),Ge=Un?Ge:G?w:Ge,ki(y,Ge,Xe,U,Un?ss:G?2:ss,It&(bt^1)&1,Ge,Xe,0,3623,le)|0,Ge=ke(I[y+908>>2]),Ge=ke(Ge+ke(Kl(y,2,w))),Xe=ke(I[y+912>>2]),Xe=ke(Xe+ke(Kl(y,0,w)))),ki(y,Ge,Xe,U,1,1,Ge,Xe,1,3635,le)|0,zS(y,Ds)|0&&!(R_(y,Ds)|0)?(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Rf(p,Ds))),So=ke(So-ke(Jr(y,Ds,w))),So=ke(So-ke(qE(y,Ds,Un?w:J))),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So):Si=21;do if((Si|0)==21){if(!(R_(y,Ds)|0)&&(o[p+8>>2]|0)==1){ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So;break}!(R_(y,Ds)|0)&&(o[p+8>>2]|0)==2&&(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So)}while(!1);zS(y,zi)|0&&!(R_(y,zi)|0)?(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Rf(p,zi))),So=ke(So-ke(Jr(y,zi,w))),So=ke(So-ke(qE(y,zi,Un?J:w))),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So):Si=30;do if((Si|0)==30&&!(R_(y,zi)|0)){if(($A(p,y)|0)==2){ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So;break}ss=($A(p,y)|0)==3,ss^(o[p+28>>2]|0)==2&&(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So)}while(!1)}function DT(p,y,w){p=p|0,y=y|0,w=w|0;var G=As,J=0;J=o[976+(w<<2)>>2]|0,G=ke(I[y+908+(J<<2)>>2]),G=ke(ke(I[p+908+(J<<2)>>2])-G),G=ke(G-ke(I[y+400+(o[1040+(w<<2)>>2]<<2)>>2])),I[y+400+(o[1e3+(w<<2)>>2]<<2)>>2]=G}function aB(p){return p=p|0,(p|1|0)==1|0}function jS(p){p=p|0;var y=As;switch(o[p+56>>2]|0){case 0:case 3:{y=ke(I[p+40>>2]),y>ke(0)&((El(y)|0)^1)?p=n[(o[p+976>>2]|0)+2>>0]|0?1056:992:p=1056;break}default:p=p+52|0}return p|0}function XR(p,y){return p=p|0,y=y|0,(n[p+y>>0]|0)!=0|0}function zS(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(yg(p,5,948)|0)+4>>2]|0?p=1:p=(o[(yg(p,o[1e3+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function qE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0;return p=p+132|0,Gn(y)|0&&(G=yg(p,5,948)|0,(o[G+4>>2]|0)!=0)?J=4:(G=yg(p,o[1e3+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?J=4:w=ke(0)),(J|0)==4&&(w=ke(od(G,w))),ke(w)}function X2(p,y,w){return p=p|0,y=y|0,w=ke(w),R_(p,y)|0?w=ke(Cb(p,y,w)):w=ke(-ke(qE(p,y,w))),ke(w)}function kT(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pn(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function q1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function J2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function ey(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;if(le=p+4|0,Ge=o[le>>2]|0,J=Ge-G|0,U=J>>2,p=y+(U<<2)|0,p>>>0>>0){G=Ge;do o[G>>2]=o[p>>2],p=p+4|0,G=(o[le>>2]|0)+4|0,o[le>>2]=G;while(p>>>0>>0)}U|0&&JT(Ge+(0-U<<2)|0,y|0,J|0)|0}function up(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=y+4|0,Xe=o[Ge>>2]|0,J=o[p>>2]|0,le=w,U=le-J|0,G=Xe+(0-(U>>2)<<2)|0,o[Ge>>2]=G,(U|0)>0&&Md(G|0,J|0,U|0)|0,J=p+4|0,U=y+8|0,G=(o[J>>2]|0)-le|0,(G|0)>0&&(Md(o[U>>2]|0,w|0,G|0)|0,o[U>>2]=(o[U>>2]|0)+(G>>>2<<2)),le=o[p>>2]|0,o[p>>2]=o[Ge>>2],o[Ge>>2]=le,le=o[J>>2]|0,o[J>>2]=o[U>>2],o[U>>2]=le,le=p+8|0,w=y+12|0,p=o[le>>2]|0,o[le>>2]=o[w>>2],o[w>>2]=p,o[y>>2]=o[Ge>>2],Xe|0}function Iw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;if(le=o[y>>2]|0,U=o[w>>2]|0,(le|0)!=(U|0)){J=p+8|0,w=((U+-4-le|0)>>>2)+1|0,p=le,G=o[J>>2]|0;do o[G>>2]=o[p>>2],G=(o[J>>2]|0)+4|0,o[J>>2]=G,p=p+4|0;while((p|0)!=(U|0));o[y>>2]=le+(w<<2)}}function cB(){FA()}function RD(){var p=0;return p=Ku(4)|0,Rd(p),p|0}function Rd(p){p=p|0,o[p>>2]=df()|0}function JR(p){p=p|0,p|0&&(ty(p),ti(p))}function ty(p){p=p|0,so(o[p>>2]|0)}function cF(p,y,w){p=p|0,y=y|0,w=w|0,$0(o[p>>2]|0,y,w)}function $1(p,y){p=p|0,y=ke(y),JE(o[p>>2]|0,y)}function $E(p,y){return p=p|0,y=y|0,XR(o[p>>2]|0,y)|0}function N_(){var p=0;return p=Ku(8)|0,e1(p,0),p|0}function e1(p,y){p=p|0,y=y|0,y?y=Mp(o[y>>2]|0)|0:y=Er()|0,o[p>>2]=y,o[p+4>>2]=0,ip(y,p)}function t1(p){p=p|0;var y=0;return y=Ku(8)|0,e1(y,p),y|0}function ry(p){p=p|0,p|0&&(xT(p),ti(p))}function xT(p){p=p|0;var y=0;ls(o[p>>2]|0),y=p+4|0,p=o[y>>2]|0,o[y>>2]=0,p|0&&(yb(p),ti(p))}function yb(p){p=p|0,r_(p)}function r_(p){p=p|0,p=o[p>>2]|0,p|0&&oo(p|0)}function Rh(p){return p=p|0,_d(p)|0}function bb(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(yb(y),ti(y)),Rp(o[p>>2]|0)}function lB(p,y){p=p|0,y=y|0,LA(o[p>>2]|0,o[y>>2]|0)}function ND(p,y){p=p|0,y=y|0,nE(o[p>>2]|0,y)}function DD(p,y,w){p=p|0,y=y|0,w=+w,H2(o[p>>2]|0,y,ke(w))}function q_(p,y,w){p=p|0,y=y|0,w=+w,iE(o[p>>2]|0,y,ke(w))}function kD(p,y){p=p|0,y=y|0,Nm(o[p>>2]|0,y)}function UR(p,y){p=p|0,y=y|0,jd(o[p>>2]|0,y)}function lc(p,y){p=p|0,y=y|0,Hp(o[p>>2]|0,y)}function fh(p,y){p=p|0,y=y|0,j1(o[p>>2]|0,y)}function rf(p,y){p=p|0,y=y|0,q0(o[p>>2]|0,y)}function yI(p,y){p=p|0,y=y|0,YA(o[p>>2]|0,y)}function aE(p,y,w){p=p|0,y=y|0,w=+w,O(o[p>>2]|0,y,ke(w))}function qS(p,y,w){p=p|0,y=y|0,w=+w,K(o[p>>2]|0,y,ke(w))}function Qp(p,y){p=p|0,y=y|0,gt(o[p>>2]|0,y)}function uB(p,y){p=p|0,y=y|0,TC(o[p>>2]|0,y)}function Ih(p,y){p=p|0,y=y|0,cp(o[p>>2]|0,y)}function xC(p,y){p=p|0,y=+y,fb(o[p>>2]|0,ke(y))}function $_(p,y){p=p|0,y=+y,Kf(o[p>>2]|0,ke(y))}function r1(p,y){p=p|0,y=+y,CI(o[p>>2]|0,ke(y))}function gB(p,y){p=p|0,y=+y,pe(o[p>>2]|0,ke(y))}function hw(p,y){p=p|0,y=+y,lm(o[p>>2]|0,ke(y))}function GT(p,y){p=p|0,y=+y,ra(o[p>>2]|0,ke(y))}function b0(p,y){p=p|0,y=+y,kc(o[p>>2]|0,ke(y))}function ia(p){p=p|0,Nl(o[p>>2]|0)}function e2(p,y){p=p|0,y=+y,Bl(o[p>>2]|0,ke(y))}function yd(p,y){p=p|0,y=+y,$g(o[p>>2]|0,ke(y))}function bI(p){p=p|0,SA(o[p>>2]|0)}function ag(p,y){p=p|0,y=+y,lp(o[p>>2]|0,ke(y))}function Eb(p,y){p=p|0,y=+y,Ib(o[p>>2]|0,ke(y))}function n1(p,y){p=p|0,y=+y,wd(o[p>>2]|0,ke(y))}function U2(p,y){p=p|0,y=+y,z1(o[p>>2]|0,ke(y))}function e0(p,y){p=p|0,y=+y,RC(o[p>>2]|0,ke(y))}function n_(p,y){p=p|0,y=+y,Hm(o[p>>2]|0,ke(y))}function Xp(p,y){p=p|0,y=+y,Fg(o[p>>2]|0,ke(y))}function cE(p,y){p=p|0,y=+y,hb(o[p>>2]|0,ke(y))}function lE(p,y){p=p|0,y=+y,NC(o[p>>2]|0,ke(y))}function Ip(p,y,w){p=p|0,y=y|0,w=+w,fi(o[p>>2]|0,y,ke(w))}function Xh(p,y,w){p=p|0,y=y|0,w=+w,sr(o[p>>2]|0,y,ke(w))}function E0(p,y,w){p=p|0,y=y|0,w=+w,Yr(o[p>>2]|0,y,ke(w))}function aA(p){return p=p|0,J_(o[p>>2]|0)|0}function fu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,se(J,o[y>>2]|0,w),Jp(p,J),B=G}function Jp(p,y){p=p|0,y=y|0,dC(p,o[y+4>>2]|0,+ke(I[y>>2]))}function dC(p,y,w){p=p|0,y=y|0,w=+w,o[p>>2]=y,C[p+8>>3]=w}function uE(p){return p=p|0,HS(o[p>>2]|0)|0}function eh(p){return p=p|0,dh(o[p>>2]|0)|0}function Wf(p){return p=p|0,uC(o[p>>2]|0)|0}function Mo(p){return p=p|0,pw(o[p>>2]|0)|0}function gp(p){return p=p|0,XE(o[p>>2]|0)|0}function lF(p){return p=p|0,Ac(o[p>>2]|0)|0}function uF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,we(J,o[y>>2]|0,w),Jp(p,J),B=G}function gE(p){return p=p|0,t_(o[p>>2]|0)|0}function FT(p){return p=p|0,Mm(o[p>>2]|0)|0}function Np(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,_I(G,o[y>>2]|0),Jp(p,G),B=w}function Dm(p){return p=p|0,+ +ke(pf(o[p>>2]|0))}function Dp(p){return p=p|0,+ +ke(ef(o[p>>2]|0))}function t2(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,ca(G,o[y>>2]|0),Jp(p,G),B=w}function Ro(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,lI(G,o[y>>2]|0),Jp(p,G),B=w}function AE(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Na(G,o[y>>2]|0),Jp(p,G),B=w}function AB(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,T_(G,o[y>>2]|0),Jp(p,G),B=w}function Xc(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,YS(G,o[y>>2]|0),Jp(p,G),B=w}function iu(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,gC(G,o[y>>2]|0),Jp(p,G),B=w}function dE(p){return p=p|0,+ +ke(Y2(o[p>>2]|0))}function yL(p,y){return p=p|0,y=y|0,+ +ke($n(o[p>>2]|0,y))}function KR(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,Lr(J,o[y>>2]|0,w),Jp(p,J),B=G}function Ou(p,y,w){p=p|0,y=y|0,w=w|0,Ml(o[p>>2]|0,o[y>>2]|0,w)}function ny(p,y){p=p|0,y=y|0,ld(o[p>>2]|0,o[y>>2]|0)}function hp(p){return p=p|0,Fs(o[p>>2]|0)|0}function Am(p){return p=p|0,p=Bo(o[p>>2]|0)|0,p?p=Rh(p)|0:p=0,p|0}function K2(p,y){return p=p|0,y=y|0,p=Wa(o[p>>2]|0,y)|0,p?p=Rh(p)|0:p=0,p|0}function i_(p,y){p=p|0,y=y|0;var w=0,G=0;G=Ku(4)|0,dB(G,y),w=p+4|0,y=o[w>>2]|0,o[w>>2]=G,y|0&&(yb(y),ti(y)),Ea(o[p>>2]|0,1)}function dB(p,y){p=p|0,y=y|0,vb(p,y)}function ZT(p,y,w,G,J,U){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,Cx(Ge,_d(y)|0,+w,G,+J,U),I[p>>2]=ke(+C[Ge>>3]),I[p+4>>2]=ke(+C[Ge+8>>3]),B=le}function Cx(p,y,w,G,J,U){p=p|0,y=y|0,w=+w,G=G|0,J=+J,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0;le=B,B=B+32|0,It=le+8|0,bt=le+20|0,Xe=le,Ge=le+16|0,C[It>>3]=w,o[bt>>2]=G,C[Xe>>3]=J,o[Ge>>2]=U,pB(p,o[y+4>>2]|0,It,bt,Xe,Ge),B=le}function pB(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,xw(Ge),y=qf(y)|0,Jh(p,y,+C[w>>3],o[G>>2]|0,+C[J>>3],o[U>>2]|0),oS(Ge),B=le}function qf(p){return p=p|0,o[p>>2]|0}function Jh(p,y,w,G,J,U){p=p|0,y=y|0,w=+w,G=G|0,J=+J,U=U|0;var le=0;le=Sb($S()|0)|0,w=+mp(w),G=r2(G)|0,J=+mp(J),i1(p,cc(0,le|0,y|0,+w,G|0,+J,r2(U)|0)|0)}function $S(){var p=0;return n[7608]|0||(fB(9120),p=7608,o[p>>2]=1,o[p+4>>2]=0),9120}function Sb(p){return p=p|0,o[p+8>>2]|0}function mp(p){return p=+p,+ +Id(p)}function r2(p){return p=p|0,Z(p)|0}function i1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+32|0,w=J,G=y,G&1?(Of(w,0),mI(G|0,w|0)|0,pE(p,w),Vd(w)):(o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]),B=J}function Of(p,y){p=p|0,y=y|0,j(p,y),o[p+8>>2]=0,n[p+24>>0]=0}function pE(p,y){p=p|0,y=y|0,y=y+8|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]}function Vd(p){p=p|0,n[p+24>>0]=0}function j(p,y){p=p|0,y=y|0,o[p>>2]=y}function Z(p){return p=p|0,p|0}function Id(p){return p=+p,+p}function fB(p){p=p|0,Ny(p,ev()|0,4)}function ev(){return 1064}function Ny(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=Kd(y|0,w+1|0)|0}function vb(p,y){p=p|0,y=y|0,y=o[y>>2]|0,o[p>>2]=y,ac(y|0)}function xD(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(yb(y),ti(y)),Ea(o[p>>2]|0,0)}function IB(p){p=p|0,us(o[p>>2]|0)}function Bb(p){return p=p|0,Ql(o[p>>2]|0)|0}function bL(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,Ym(o[p>>2]|0,ke(y),ke(w),G)}function gF(p){return p=p|0,+ +ke(U_(o[p>>2]|0))}function x(p){return p=p|0,+ +ke(kC(o[p>>2]|0))}function L(p){return p=p|0,+ +ke(DC(o[p>>2]|0))}function te(p){return p=p|0,+ +ke(qI(o[p>>2]|0))}function Re(p){return p=p|0,+ +ke(ph(o[p>>2]|0))}function Le(p){return p=p|0,+ +ke(vA(o[p>>2]|0))}function ft(p,y){p=p|0,y=y|0,C[p>>3]=+ke(U_(o[y>>2]|0)),C[p+8>>3]=+ke(kC(o[y>>2]|0)),C[p+16>>3]=+ke(DC(o[y>>2]|0)),C[p+24>>3]=+ke(qI(o[y>>2]|0)),C[p+32>>3]=+ke(ph(o[y>>2]|0)),C[p+40>>3]=+ke(vA(o[y>>2]|0))}function dr(p,y){return p=p|0,y=y|0,+ +ke(Td(o[p>>2]|0,y))}function Ur(p,y){return p=p|0,y=y|0,+ +ke(Mc(o[p>>2]|0,y))}function mi(p,y){return p=p|0,y=y|0,+ +ke(Pf(o[p>>2]|0,y))}function Vi(){return HA()|0}function Ta(){Sl(),Ho(),Wg(),cA(),th(),xn()}function Sl(){xqe(11713,4938,1)}function Ho(){xZe(10448)}function Wg(){RZe(10408)}function cA(){Bqe(10324)}function th(){bye(10096)}function xn(){rn(9132)}function rn(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0,w0=0,bE=0,nh=0,x_=0,$D=0,Fw=0,mh=0,kF=0,Zw=0,KT=0,jL=0,zL=0,aS=0,mf=0,d2=0,jT=0,fv=0,Fx=0,xB=0,Iv=0,GB=0,EE=0,Um=0,mN=0,zT=0,Km=0,p2=0,hg=0,OI=0,og=0,jo=0,Yg=0,Zl=0,f2=0,MI=0,xF=0,gI=0,UA=0,lA=0,GF=0,CN=0,qT=0,I1=0,T0=0,ek=0,fo=0,Lw=0,FF=0,Hd=0,of=0,vd=0,yp=0,l_=0,Yd=0,Qg=0,hv=0;y=B,B=B+672|0,w=y+656|0,hv=y+648|0,Qg=y+640|0,Yd=y+632|0,l_=y+624|0,yp=y+616|0,vd=y+608|0,of=y+600|0,Hd=y+592|0,FF=y+584|0,Lw=y+576|0,fo=y+568|0,ek=y+560|0,T0=y+552|0,I1=y+544|0,qT=y+536|0,CN=y+528|0,GF=y+520|0,lA=y+512|0,UA=y+504|0,gI=y+496|0,xF=y+488|0,MI=y+480|0,f2=y+472|0,Zl=y+464|0,Yg=y+456|0,jo=y+448|0,og=y+440|0,OI=y+432|0,hg=y+424|0,p2=y+416|0,Km=y+408|0,zT=y+400|0,mN=y+392|0,Um=y+384|0,EE=y+376|0,GB=y+368|0,Iv=y+360|0,xB=y+352|0,Fx=y+344|0,fv=y+336|0,jT=y+328|0,d2=y+320|0,mf=y+312|0,aS=y+304|0,zL=y+296|0,jL=y+288|0,KT=y+280|0,Zw=y+272|0,kF=y+264|0,mh=y+256|0,Fw=y+248|0,$D=y+240|0,x_=y+232|0,nh=y+224|0,bE=y+216|0,w0=y+208|0,em=y+200|0,wg=y+192|0,Dg=y+184|0,Bg=y+176|0,Tc=y+168|0,fl=y+160|0,uu=y+152|0,hl=y+144|0,pi=y+136|0,ss=y+128|0,So=y+120|0,Si=y+112|0,Ds=y+104|0,Un=y+96|0,zi=y+88|0,Ks=y+80|0,an=y+72|0,rr=y+64|0,It=y+56|0,bt=y+48|0,Xe=y+40|0,Ge=y+32|0,le=y+24|0,U=y+16|0,J=y+8|0,G=y,Ci(p,3646),Po(p,3651,2)|0,ec(p,3665,2)|0,Ra(p,3682,18)|0,o[hv>>2]=19,o[hv+4>>2]=0,o[w>>2]=o[hv>>2],o[w+4>>2]=o[hv+4>>2],dc(p,3690,w)|0,o[Qg>>2]=1,o[Qg+4>>2]=0,o[w>>2]=o[Qg>>2],o[w+4>>2]=o[Qg+4>>2],Iu(p,3696,w)|0,o[Yd>>2]=2,o[Yd+4>>2]=0,o[w>>2]=o[Yd>>2],o[w+4>>2]=o[Yd+4>>2],Cl(p,3706,w)|0,o[l_>>2]=1,o[l_+4>>2]=0,o[w>>2]=o[l_>>2],o[w+4>>2]=o[l_+4>>2],wl(p,3722,w)|0,o[yp>>2]=2,o[yp+4>>2]=0,o[w>>2]=o[yp>>2],o[w+4>>2]=o[yp+4>>2],wl(p,3734,w)|0,o[vd>>2]=3,o[vd+4>>2]=0,o[w>>2]=o[vd>>2],o[w+4>>2]=o[vd+4>>2],Cl(p,3753,w)|0,o[of>>2]=4,o[of+4>>2]=0,o[w>>2]=o[of>>2],o[w+4>>2]=o[of+4>>2],Cl(p,3769,w)|0,o[Hd>>2]=5,o[Hd+4>>2]=0,o[w>>2]=o[Hd>>2],o[w+4>>2]=o[Hd+4>>2],Cl(p,3783,w)|0,o[FF>>2]=6,o[FF+4>>2]=0,o[w>>2]=o[FF>>2],o[w+4>>2]=o[FF+4>>2],Cl(p,3796,w)|0,o[Lw>>2]=7,o[Lw+4>>2]=0,o[w>>2]=o[Lw>>2],o[w+4>>2]=o[Lw+4>>2],Cl(p,3813,w)|0,o[fo>>2]=8,o[fo+4>>2]=0,o[w>>2]=o[fo>>2],o[w+4>>2]=o[fo+4>>2],Cl(p,3825,w)|0,o[ek>>2]=3,o[ek+4>>2]=0,o[w>>2]=o[ek>>2],o[w+4>>2]=o[ek+4>>2],wl(p,3843,w)|0,o[T0>>2]=4,o[T0+4>>2]=0,o[w>>2]=o[T0>>2],o[w+4>>2]=o[T0+4>>2],wl(p,3853,w)|0,o[I1>>2]=9,o[I1+4>>2]=0,o[w>>2]=o[I1>>2],o[w+4>>2]=o[I1+4>>2],Cl(p,3870,w)|0,o[qT>>2]=10,o[qT+4>>2]=0,o[w>>2]=o[qT>>2],o[w+4>>2]=o[qT+4>>2],Cl(p,3884,w)|0,o[CN>>2]=11,o[CN+4>>2]=0,o[w>>2]=o[CN>>2],o[w+4>>2]=o[CN+4>>2],Cl(p,3896,w)|0,o[GF>>2]=1,o[GF+4>>2]=0,o[w>>2]=o[GF>>2],o[w+4>>2]=o[GF+4>>2],$f(p,3907,w)|0,o[lA>>2]=2,o[lA+4>>2]=0,o[w>>2]=o[lA>>2],o[w+4>>2]=o[lA+4>>2],$f(p,3915,w)|0,o[UA>>2]=3,o[UA+4>>2]=0,o[w>>2]=o[UA>>2],o[w+4>>2]=o[UA+4>>2],$f(p,3928,w)|0,o[gI>>2]=4,o[gI+4>>2]=0,o[w>>2]=o[gI>>2],o[w+4>>2]=o[gI+4>>2],$f(p,3948,w)|0,o[xF>>2]=5,o[xF+4>>2]=0,o[w>>2]=o[xF>>2],o[w+4>>2]=o[xF+4>>2],$f(p,3960,w)|0,o[MI>>2]=6,o[MI+4>>2]=0,o[w>>2]=o[MI>>2],o[w+4>>2]=o[MI+4>>2],$f(p,3974,w)|0,o[f2>>2]=7,o[f2+4>>2]=0,o[w>>2]=o[f2>>2],o[w+4>>2]=o[f2+4>>2],$f(p,3983,w)|0,o[Zl>>2]=20,o[Zl+4>>2]=0,o[w>>2]=o[Zl>>2],o[w+4>>2]=o[Zl+4>>2],dc(p,3999,w)|0,o[Yg>>2]=8,o[Yg+4>>2]=0,o[w>>2]=o[Yg>>2],o[w+4>>2]=o[Yg+4>>2],$f(p,4012,w)|0,o[jo>>2]=9,o[jo+4>>2]=0,o[w>>2]=o[jo>>2],o[w+4>>2]=o[jo+4>>2],$f(p,4022,w)|0,o[og>>2]=21,o[og+4>>2]=0,o[w>>2]=o[og>>2],o[w+4>>2]=o[og+4>>2],dc(p,4039,w)|0,o[OI>>2]=10,o[OI+4>>2]=0,o[w>>2]=o[OI>>2],o[w+4>>2]=o[OI+4>>2],$f(p,4053,w)|0,o[hg>>2]=11,o[hg+4>>2]=0,o[w>>2]=o[hg>>2],o[w+4>>2]=o[hg+4>>2],$f(p,4065,w)|0,o[p2>>2]=12,o[p2+4>>2]=0,o[w>>2]=o[p2>>2],o[w+4>>2]=o[p2+4>>2],$f(p,4084,w)|0,o[Km>>2]=13,o[Km+4>>2]=0,o[w>>2]=o[Km>>2],o[w+4>>2]=o[Km+4>>2],$f(p,4097,w)|0,o[zT>>2]=14,o[zT+4>>2]=0,o[w>>2]=o[zT>>2],o[w+4>>2]=o[zT+4>>2],$f(p,4117,w)|0,o[mN>>2]=15,o[mN+4>>2]=0,o[w>>2]=o[mN>>2],o[w+4>>2]=o[mN+4>>2],$f(p,4129,w)|0,o[Um>>2]=16,o[Um+4>>2]=0,o[w>>2]=o[Um>>2],o[w+4>>2]=o[Um+4>>2],$f(p,4148,w)|0,o[EE>>2]=17,o[EE+4>>2]=0,o[w>>2]=o[EE>>2],o[w+4>>2]=o[EE+4>>2],$f(p,4161,w)|0,o[GB>>2]=18,o[GB+4>>2]=0,o[w>>2]=o[GB>>2],o[w+4>>2]=o[GB+4>>2],$f(p,4181,w)|0,o[Iv>>2]=5,o[Iv+4>>2]=0,o[w>>2]=o[Iv>>2],o[w+4>>2]=o[Iv+4>>2],wl(p,4196,w)|0,o[xB>>2]=6,o[xB+4>>2]=0,o[w>>2]=o[xB>>2],o[w+4>>2]=o[xB+4>>2],wl(p,4206,w)|0,o[Fx>>2]=7,o[Fx+4>>2]=0,o[w>>2]=o[Fx>>2],o[w+4>>2]=o[Fx+4>>2],wl(p,4217,w)|0,o[fv>>2]=3,o[fv+4>>2]=0,o[w>>2]=o[fv>>2],o[w+4>>2]=o[fv+4>>2],j2(p,4235,w)|0,o[jT>>2]=1,o[jT+4>>2]=0,o[w>>2]=o[jT>>2],o[w+4>>2]=o[jT+4>>2],_x(p,4251,w)|0,o[d2>>2]=4,o[d2+4>>2]=0,o[w>>2]=o[d2>>2],o[w+4>>2]=o[d2+4>>2],j2(p,4263,w)|0,o[mf>>2]=5,o[mf+4>>2]=0,o[w>>2]=o[mf>>2],o[w+4>>2]=o[mf+4>>2],j2(p,4279,w)|0,o[aS>>2]=6,o[aS+4>>2]=0,o[w>>2]=o[aS>>2],o[w+4>>2]=o[aS+4>>2],j2(p,4293,w)|0,o[zL>>2]=7,o[zL+4>>2]=0,o[w>>2]=o[zL>>2],o[w+4>>2]=o[zL+4>>2],j2(p,4306,w)|0,o[jL>>2]=8,o[jL+4>>2]=0,o[w>>2]=o[jL>>2],o[w+4>>2]=o[jL+4>>2],j2(p,4323,w)|0,o[KT>>2]=9,o[KT+4>>2]=0,o[w>>2]=o[KT>>2],o[w+4>>2]=o[KT+4>>2],j2(p,4335,w)|0,o[Zw>>2]=2,o[Zw+4>>2]=0,o[w>>2]=o[Zw>>2],o[w+4>>2]=o[Zw+4>>2],_x(p,4353,w)|0,o[kF>>2]=12,o[kF+4>>2]=0,o[w>>2]=o[kF>>2],o[w+4>>2]=o[kF+4>>2],z2(p,4363,w)|0,o[mh>>2]=1,o[mh+4>>2]=0,o[w>>2]=o[mh>>2],o[w+4>>2]=o[mh+4>>2],tv(p,4376,w)|0,o[Fw>>2]=2,o[Fw+4>>2]=0,o[w>>2]=o[Fw>>2],o[w+4>>2]=o[Fw+4>>2],tv(p,4388,w)|0,o[$D>>2]=13,o[$D+4>>2]=0,o[w>>2]=o[$D>>2],o[w+4>>2]=o[$D+4>>2],z2(p,4402,w)|0,o[x_>>2]=14,o[x_+4>>2]=0,o[w>>2]=o[x_>>2],o[w+4>>2]=o[x_+4>>2],z2(p,4411,w)|0,o[nh>>2]=15,o[nh+4>>2]=0,o[w>>2]=o[nh>>2],o[w+4>>2]=o[nh+4>>2],z2(p,4421,w)|0,o[bE>>2]=16,o[bE+4>>2]=0,o[w>>2]=o[bE>>2],o[w+4>>2]=o[bE+4>>2],z2(p,4433,w)|0,o[w0>>2]=17,o[w0+4>>2]=0,o[w>>2]=o[w0>>2],o[w+4>>2]=o[w0+4>>2],z2(p,4446,w)|0,o[em>>2]=18,o[em+4>>2]=0,o[w>>2]=o[em>>2],o[w+4>>2]=o[em+4>>2],z2(p,4458,w)|0,o[wg>>2]=3,o[wg+4>>2]=0,o[w>>2]=o[wg>>2],o[w+4>>2]=o[wg+4>>2],tv(p,4471,w)|0,o[Dg>>2]=1,o[Dg+4>>2]=0,o[w>>2]=o[Dg>>2],o[w+4>>2]=o[Dg+4>>2],Yu(p,4486,w)|0,o[Bg>>2]=10,o[Bg+4>>2]=0,o[w>>2]=o[Bg>>2],o[w+4>>2]=o[Bg+4>>2],j2(p,4496,w)|0,o[Tc>>2]=11,o[Tc+4>>2]=0,o[w>>2]=o[Tc>>2],o[w+4>>2]=o[Tc+4>>2],j2(p,4508,w)|0,o[fl>>2]=3,o[fl+4>>2]=0,o[w>>2]=o[fl>>2],o[w+4>>2]=o[fl+4>>2],_x(p,4519,w)|0,o[uu>>2]=4,o[uu+4>>2]=0,o[w>>2]=o[uu>>2],o[w+4>>2]=o[uu+4>>2],qO(p,4530,w)|0,o[hl>>2]=19,o[hl+4>>2]=0,o[w>>2]=o[hl>>2],o[w+4>>2]=o[hl+4>>2],hB(p,4542,w)|0,o[pi>>2]=12,o[pi+4>>2]=0,o[w>>2]=o[pi>>2],o[w+4>>2]=o[pi+4>>2],mw(p,4554,w)|0,o[ss>>2]=13,o[ss+4>>2]=0,o[w>>2]=o[ss>>2],o[w+4>>2]=o[ss+4>>2],AF(p,4568,w)|0,o[So>>2]=2,o[So+4>>2]=0,o[w>>2]=o[So>>2],o[w+4>>2]=o[So+4>>2],$O(p,4578,w)|0,o[Si>>2]=20,o[Si+4>>2]=0,o[w>>2]=o[Si>>2],o[w+4>>2]=o[Si+4>>2],iY(p,4587,w)|0,o[Ds>>2]=22,o[Ds+4>>2]=0,o[w>>2]=o[Ds>>2],o[w+4>>2]=o[Ds+4>>2],dc(p,4602,w)|0,o[Un>>2]=23,o[Un+4>>2]=0,o[w>>2]=o[Un>>2],o[w+4>>2]=o[Un+4>>2],dc(p,4619,w)|0,o[zi>>2]=14,o[zi+4>>2]=0,o[w>>2]=o[zi>>2],o[w+4>>2]=o[zi+4>>2],LT(p,4629,w)|0,o[Ks>>2]=1,o[Ks+4>>2]=0,o[w>>2]=o[Ks>>2],o[w+4>>2]=o[Ks+4>>2],GD(p,4637,w)|0,o[an>>2]=4,o[an+4>>2]=0,o[w>>2]=o[an>>2],o[w+4>>2]=o[an+4>>2],tv(p,4653,w)|0,o[rr>>2]=5,o[rr+4>>2]=0,o[w>>2]=o[rr>>2],o[w+4>>2]=o[rr+4>>2],tv(p,4669,w)|0,o[It>>2]=6,o[It+4>>2]=0,o[w>>2]=o[It>>2],o[w+4>>2]=o[It+4>>2],tv(p,4686,w)|0,o[bt>>2]=7,o[bt+4>>2]=0,o[w>>2]=o[bt>>2],o[w+4>>2]=o[bt+4>>2],tv(p,4701,w)|0,o[Xe>>2]=8,o[Xe+4>>2]=0,o[w>>2]=o[Xe>>2],o[w+4>>2]=o[Xe+4>>2],tv(p,4719,w)|0,o[Ge>>2]=9,o[Ge+4>>2]=0,o[w>>2]=o[Ge>>2],o[w+4>>2]=o[Ge+4>>2],tv(p,4736,w)|0,o[le>>2]=21,o[le+4>>2]=0,o[w>>2]=o[le>>2],o[w+4>>2]=o[le+4>>2],dF(p,4754,w)|0,o[U>>2]=2,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],Yu(p,4772,w)|0,o[J>>2]=3,o[J+4>>2]=0,o[w>>2]=o[J>>2],o[w+4>>2]=o[J+4>>2],Yu(p,4790,w)|0,o[G>>2]=4,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],Yu(p,4808,w)|0,B=y}function Ci(p,y){p=p|0,y=y|0;var w=0;w=dVt()|0,o[p>>2]=w,AZe(w,y),BF(o[p>>2]|0)}function Po(p,y,w){return p=p|0,y=y|0,w=w|0,Uge(p,ff(y)|0,w,0),p|0}function ec(p,y,w){return p=p|0,y=y|0,w=w|0,Qge(p,ff(y)|0,w,0),p|0}function Ra(p,y,w){return p=p|0,y=y|0,w=w|0,A1(p,ff(y)|0,w,0),p|0}function dc(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],tZe(p,y,J),B=G,p|0}function Iu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],OT(p,y,J),B=G,p|0}function Cl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],ie(p,y,J),B=G,p|0}function wl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],IP(p,y,J),B=G,p|0}function $f(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Qre(p,y,J),B=G,p|0}function j2(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],mF(p,y,J),B=G,p|0}function _x(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vY(p,y,J),B=G,p|0}function z2(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],qu(p,y,J),B=G,p|0}function tv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],WT(p,y,J),B=G,p|0}function Yu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vJ(p,y,J),B=G,p|0}function qO(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Db(p,y,J),B=G,p|0}function hB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],yJ(p,y,J),B=G,p|0}function mw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],iye(p,y,J),B=G,p|0}function AF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],oge(p,y,J),B=G,p|0}function $O(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],gY(p,y,J),B=G,p|0}function iY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],a1(p,y,J),B=G,p|0}function LT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vL(p,y,J),B=G,p|0}function GD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],ad(p,y,J),B=G,p|0}function dF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],EL(p,y,J),B=G,p|0}function EL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],FD(p,w,J,1),B=G}function ff(p){return p=p|0,p|0}function FD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=fE()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=n2(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,mB(U,G)|0,G),B=J}function fE(){var p=0,y=0;if(n[7616]|0||(Jt(9136),pu(24,9136,X|0)|0,y=7616,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9136)|0)){p=9136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jt(9136)}return 9136}function n2(p){return p=p|0,0}function mB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=fE()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],iy(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(sY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function bd(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0;le=B,B=B+32|0,an=le+24|0,rr=le+20|0,Xe=le+16|0,It=le+12|0,bt=le+8|0,Ge=le+4|0,Ks=le,o[rr>>2]=y,o[Xe>>2]=w,o[It>>2]=G,o[bt>>2]=J,o[Ge>>2]=U,U=p+28|0,o[Ks>>2]=o[U>>2],o[an>>2]=o[Ks>>2],s1(p+24|0,an,rr,It,bt,Xe,Ge)|0,o[U>>2]=o[o[U>>2]>>2],B=le}function s1(p,y,w,G,J,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,p=Uh(y)|0,y=Ku(24)|0,wb(y+4|0,o[w>>2]|0,o[G>>2]|0,o[J>>2]|0,o[U>>2]|0,o[le>>2]|0),o[y>>2]=o[p>>2],o[p>>2]=y,y|0}function Uh(p){return p=p|0,o[p>>2]|0}function wb(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=J,o[p+16>>2]=U}function Uu(p,y){return p=p|0,y=y|0,y|p|0}function iy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function sY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=oY(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,jR(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],iy(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,aY(p,Ge),tt(Ge),B=bt;return}}function oY(p){return p=p|0,357913941}function jR(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function aY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Jt(p){p=p|0,Is(p)}function kr(p){p=p|0,ui(p+24|0)}function Xr(p){return p=p|0,o[p>>2]|0}function ui(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Is(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,Rs()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hs(){return 9228}function Rs(){return 1140}function ja(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=sl(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=Nd(y,G)|0,B=w,y|0}function ho(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=J,o[p+16>>2]=U}function sl(p){return p=p|0,(o[(fE()|0)+24>>2]|0)+(p*12|0)|0}function Nd(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+48|0,G=J,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),qD[w&31](G,p),G=ed(G)|0,B=J,G|0}function ed(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(Og()|0)|0,G?(o1(y,G),Tb(w,y),q2(p,w),p=IE(y)|0):p=zR(p)|0,B=J,p|0}function Og(){var p=0;return n[7632]|0||(ye(9184),pu(25,9184,X|0)|0,p=7632,o[p>>2]=1,o[p+4>>2]=0),9184}function Nh(p){return p=p|0,o[p+36>>2]|0}function o1(p,y){p=p|0,y=y|0,o[p>>2]=y,o[p+4>>2]=p,o[p+8>>2]=0}function Tb(p,y){p=p|0,y=y|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=0}function q2(p,y){p=p|0,y=y|0,wA(y,p,p+8|0,p+16|0,p+24|0,p+32|0,p+40|0)|0}function IE(p){return p=p|0,o[(o[p+4>>2]|0)+8>>2]|0}function zR(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;Xe=B,B=B+16|0,w=Xe+4|0,G=Xe,J=Fb(8)|0,U=J,le=Ku(48)|0,Ge=le,y=Ge+48|0;do o[Ge>>2]=o[p>>2],Ge=Ge+4|0,p=p+4|0;while((Ge|0)<(y|0));return y=U+4|0,o[y>>2]=le,Ge=Ku(8)|0,le=o[y>>2]|0,o[G>>2]=0,o[w>>2]=o[G>>2],e3(Ge,le,w),o[J>>2]=Ge,B=Xe,U|0}function e3(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1092,o[w+12>>2]=y,o[p+4>>2]=w}function IA(p){p=p|0,dz(p),ti(p)}function EI(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function zd(p){p=p|0,ti(p)}function wA(p,y,w,G,J,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,U=qR(o[p>>2]|0,y,w,G,J,U,le)|0,le=p+4|0,o[(o[le>>2]|0)+8>>2]=U,o[(o[le>>2]|0)+8>>2]|0}function qR(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0;var Ge=0,Xe=0;return Ge=B,B=B+16|0,Xe=Ge,xw(Xe),p=qf(p)|0,le=sy(p,+C[y>>3],+C[w>>3],+C[G>>3],+C[J>>3],+C[U>>3],+C[le>>3])|0,oS(Xe),B=Ge,le|0}function sy(p,y,w,G,J,U,le){p=p|0,y=+y,w=+w,G=+G,J=+J,U=+U,le=+le;var Ge=0;return Ge=Sb($2()|0)|0,y=+mp(y),w=+mp(w),G=+mp(G),J=+mp(J),U=+mp(U),Ps(0,Ge|0,p|0,+y,+w,+G,+J,+U,+ +mp(le))|0}function $2(){var p=0;return n[7624]|0||(Eo(9172),p=7624,o[p>>2]=1,o[p+4>>2]=0),9172}function Eo(p){p=p|0,Ny(p,z()|0,6)}function z(){return 1112}function ye(p){p=p|0,Hc(p)}function Ve(p){p=p|0,Ct(p+24|0),wr(p+16|0)}function Ct(p){p=p|0,Lo(p)}function wr(p){p=p|0,ai(p)}function ai(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Lo(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Hc(p){p=p|0;var y=0;o[p+16>>2]=0,o[p+20>>2]=0,y=p+24|0,o[y>>2]=0,o[p+28>>2]=y,o[p+36>>2]=0,n[p+40>>0]=0,n[p+41>>0]=0}function ad(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],dm(p,w,J,0),B=G}function dm(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=rv()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=nv(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yx(U,G)|0,G),B=J}function rv(){var p=0,y=0;if(n[7640]|0||(Vo(9232),pu(26,9232,X|0)|0,y=7640,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9232)|0)){p=9232,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Vo(9232)}return 9232}function nv(p){return p=p|0,0}function yx(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=rv()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Dd(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(ji(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Dd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function ji(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=SL(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,$l(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Dd(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Ap(p,Ge),Bc(Ge),B=bt;return}}function SL(p){return p=p|0,357913941}function $l(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Ap(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bc(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Vo(p){p=p|0,J6(p)}function iv(p){p=p|0,nf(p+24|0)}function nf(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function J6(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,cY()|0,3),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cY(){return 1144}function t3(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,le=U+8|0,Ge=U,Xe=pF(p)|0,p=o[Xe+4>>2]|0,o[Ge>>2]=o[Xe>>2],o[Ge+4>>2]=p,o[le>>2]=o[Ge>>2],o[le+4>>2]=o[Ge+4>>2],rh(y,le,w,G,J),B=U}function pF(p){return p=p|0,(o[(rv()|0)+24>>2]|0)+(p*12|0)|0}function rh(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;bt=B,B=B+16|0,le=bt+2|0,Ge=bt+1|0,Xe=bt,U=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(U=o[(o[p>>2]|0)+U>>2]|0),Cw(le,w),w=+Il(le,w),Cw(Ge,G),G=+Il(Ge,G),CB(Xe,J),Xe=Rb(Xe,J)|0,eQ[U&1](p,w,G,Xe),B=bt}function Cw(p,y){p=p|0,y=+y}function Il(p,y){return p=p|0,y=+y,+ +_re(y)}function CB(p,y){p=p|0,y=y|0}function Rb(p,y){return p=p|0,y=y|0,$R(y)|0}function $R(p){return p=p|0,p|0}function _re(p){return p=+p,+p}function vL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],uJ(p,w,J,1),B=G}function uJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=lY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=r3(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,U6(U,G)|0,G),B=J}function lY(){var p=0,y=0;if(n[7648]|0||(Es(9268),pu(27,9268,X|0)|0,y=7648,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9268)|0)){p=9268,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Es(9268)}return 9268}function r3(p){return p=p|0,0}function U6(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=lY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],gJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(K6(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function gJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function K6(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=uY(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,bx(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],gJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,yre(p,Ge),Ex(Ge),B=bt;return}}function uY(p){return p=p|0,357913941}function bx(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function yre(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Ex(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Es(p){p=p|0,Ua(p)}function Aa(p){p=p|0,ha(p+24|0)}function ha(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ua(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,wc()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function wc(){return 1160}function hA(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=Pd(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=Kh(y,G)|0,B=w,y|0}function Pd(p){return p=p|0,(o[(lY()|0)+24>>2]|0)+(p*12|0)|0}function Kh(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),i2(mC[w&31](p)|0)|0}function i2(p){return p=p|0,p&1|0}function a1(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Nb(p,w,J,0),B=G}function Nb(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sv()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=oP(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,fF(U,G)|0,G),B=J}function sv(){var p=0,y=0;if(n[7656]|0||(dJ(9304),pu(28,9304,X|0)|0,y=7656,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9304)|0)){p=9304,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));dJ(9304)}return 9304}function oP(p){return p=p|0,0}function fF(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sv()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],ov(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(eN(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function ov(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function eN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=AJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,j6(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ov(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sx(p,Ge),c1(Ge),B=bt;return}}function AJ(p){return p=p|0,357913941}function j6(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sx(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c1(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function dJ(p){p=p|0,jFe(p)}function nye(p){p=p|0,pJ(p+24|0)}function pJ(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function jFe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,ZD()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ZD(){return 1164}function n3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=_w(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],fJ(y,J,w),B=G}function _w(p){return p=p|0,(o[(sv()|0)+24>>2]|0)+(p*12|0)|0}function fJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vx(J,w),w=IF(J,w)|0,qD[G&31](p,w),_B(J),B=U}function vx(p,y){p=p|0,y=y|0,GC(p,y)}function IF(p,y){return p=p|0,y=y|0,p|0}function _B(p){p=p|0,yb(p)}function GC(p,y){p=p|0,y=y|0,aP(p,y)}function aP(p,y){p=p|0,y=y|0,o[p>>2]=y}function gY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],i3(p,w,J,0),B=G}function i3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=IJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=s2(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,o2(U,G)|0,G),B=J}function IJ(){var p=0,y=0;if(n[7664]|0||(BL(9340),pu(29,9340,X|0)|0,y=7664,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9340)|0)){p=9340,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));BL(9340)}return 9340}function s2(p){return p=p|0,0}function o2(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=IJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],hJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(AY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function hJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function AY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=bre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dY(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],hJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,z6(p,Ge),q6(Ge),B=bt;return}}function bre(p){return p=p|0,357913941}function dY(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function z6(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function q6(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function BL(p){p=p|0,wL(p)}function tN(p){p=p|0,pY(p+24|0)}function pY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function wL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,Ere()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ere(){return 1180}function LD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=sge(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=$6(y,J,w)|0,B=G,w|0}function sge(p){return p=p|0,(o[(IJ()|0)+24>>2]|0)+(p*12|0)|0}function $6(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),eS(J,w),J=rN(J,w)|0,J=mJ(gie[G&15](p,J)|0)|0,B=U,J|0}function eS(p,y){p=p|0,y=y|0}function rN(p,y){return p=p|0,y=y|0,nN(y)|0}function mJ(p){return p=p|0,p|0}function nN(p){return p=p|0,p|0}function oge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Sre(p,w,J,0),B=G}function Sre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=e7()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=kp(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,TL(U,G)|0,G),B=J}function e7(){var p=0,y=0;if(n[7672]|0||(Ig(9376),pu(30,9376,X|0)|0,y=7672,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9376)|0)){p=9376,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Ig(9376)}return 9376}function kp(p){return p=p|0,0}function TL(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=e7()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],fY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(pC(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function fY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function pC(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=cP(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,VD(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],fY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,IY(p,Ge),vre(Ge),B=bt;return}}function cP(p){return p=p|0,357913941}function VD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function IY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function vre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Ig(p){p=p|0,RL(p)}function fC(p){p=p|0,VI(p+24|0)}function VI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function RL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,bu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bu(){return 1196}function s3(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=kd(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=hY(y,G)|0,B=w,y|0}function kd(p){return p=p|0,(o[(e7()|0)+24>>2]|0)+(p*12|0)|0}function hY(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),mJ(mC[w&31](p)|0)|0}function iye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],lP(p,w,J,1),B=G}function lP(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=CJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=PI(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,xa(U,G)|0,G),B=J}function CJ(){var p=0,y=0;if(n[7680]|0||(mY(9412),pu(31,9412,X|0)|0,y=7680,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9412)|0)){p=9412,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));mY(9412)}return 9412}function PI(p){return p=p|0,0}function xa(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=CJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],yB(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(t0(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function yB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function t0(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Bre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,NL(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],yB(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,dp(p,Ge),Bx(Ge),B=bt;return}}function Bre(p){return p=p|0,357913941}function NL(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function dp(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function mY(p){p=p|0,age(p)}function yw(p){p=p|0,uc(p+24|0)}function uc(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function age(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nu(){return 1200}function CY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=o3(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=uP(y,G)|0,B=w,y|0}function o3(p){return p=p|0,(o[(CJ()|0)+24>>2]|0)+(p*12|0)|0}function uP(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),_J(mC[w&31](p)|0)|0}function _J(p){return p=p|0,p|0}function yJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bJ(p,w,J,0),B=G}function bJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=gP()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=wre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,EJ(U,G)|0,G),B=J}function gP(){var p=0,y=0;if(n[7688]|0||(D_(9448),pu(32,9448,X|0)|0,y=7688,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9448)|0)){p=9448,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));D_(9448)}return 9448}function wre(p){return p=p|0,0}function EJ(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=gP()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Tre(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(SJ(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Tre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function SJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Rre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,hF(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Tre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,av(p,Ge),AP(Ge),B=bt;return}}function Rre(p){return p=p|0,357913941}function hF(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function av(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function AP(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function D_(p){p=p|0,oye(p)}function sye(p){p=p|0,Nre(p+24|0)}function Nre(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,iN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function iN(){return 1204}function cge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=un(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],_Y(y,J,w),B=G}function un(p){return p=p|0,(o[(gP()|0)+24>>2]|0)+(p*12|0)|0}function _Y(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Ed(J,w),J=VT(J,w)|0,qD[G&31](p,J),B=U}function Ed(p,y){p=p|0,y=y|0}function VT(p,y){return p=p|0,y=y|0,sN(y)|0}function sN(p){return p=p|0,p|0}function Db(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],t7(p,w,J,0),B=G}function t7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=PT()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=DL(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,r7(U,G)|0,G),B=J}function PT(){var p=0,y=0;if(n[7696]|0||(a3(9484),pu(33,9484,X|0)|0,y=7696,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9484)|0)){p=9484,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));a3(9484)}return 9484}function DL(p){return p=p|0,0}function r7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=PT()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],n7(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(hE(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function n7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function hE(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=lge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Dre(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],n7(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,aye(p,Ge),wx(Ge),B=bt;return}}function lge(p){return p=p|0,357913941}function Dre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function aye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function wx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function a3(p){p=p|0,CE(p)}function mE(p){p=p|0,WI(p+24|0)}function WI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function CE(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,kre()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function kre(){return 1212}function uge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=jh(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],gge(y,U,w,G),B=J}function jh(p){return p=p|0,(o[(PT()|0)+24>>2]|0)+(p*12|0)|0}function gge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),Ed(U,w),U=VT(U,w)|0,eS(le,G),le=rN(le,G)|0,UT[J&15](p,U,le),B=Ge}function vJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Lc(p,w,J,1),B=G}function Lc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Age()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=xre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yY(U,G)|0,G),B=J}function Age(){var p=0,y=0;if(n[7704]|0||(RJ(9520),pu(34,9520,X|0)|0,y=7704,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9520)|0)){p=9520,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));RJ(9520)}return 9520}function xre(p){return p=p|0,0}function yY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Age()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],kL(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(BJ(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function kL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function BJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=wJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,TJ(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kL(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,eI(p,Ge),c3(Ge),B=bt;return}}function wJ(p){return p=p|0,357913941}function TJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function eI(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c3(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function RJ(p){p=p|0,u3(p)}function l3(p){p=p|0,i7(p+24|0)}function i7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function u3(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,cv()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cv(){return 1224}function bB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;return J=B,B=B+16|0,U=J+8|0,le=J,Ge=Xm(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],G=+If(y,U,w),B=J,+G}function Xm(p){return p=p|0,(o[(Age()|0)+24>>2]|0)+(p*12|0)|0}function If(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,le=+Id(+nEe[G&7](p,J)),B=U,+le}function WT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],l1(p,w,J,1),B=G}function l1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=bY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=s7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,IC(U,G)|0,G),B=J}function bY(){var p=0,y=0;if(n[7712]|0||(Zre(9556),pu(35,9556,X|0)|0,y=7712,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9556)|0)){p=9556,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Zre(9556)}return 9556}function s7(p){return p=p|0,0}function IC(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=bY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Gre(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(mA(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Gre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function mA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tx(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Fre(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Gre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,EB(p,Ge),cye(Ge),B=bt;return}}function Tx(p){return p=p|0,357913941}function Fre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function EB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function cye(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Zre(p){p=p|0,EY(p)}function Lre(p){p=p|0,PD(p+24|0)}function PD(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function EY(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,Vre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Vre(){return 1232}function dge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=Cp(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=+pge(y,J),B=G,+w}function Cp(p){return p=p|0,(o[(bY()|0)+24>>2]|0)+(p*12|0)|0}function pge(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),+ +Id(+GP[w&15](p))}function qu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bw(p,w,J,1),B=G}function bw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=WD()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=o7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,fge(U,G)|0,G),B=J}function WD(){var p=0,y=0;if(n[7720]|0||(SB(9592),pu(36,9592,X|0)|0,y=7720,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9592)|0)){p=9592,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));SB(9592)}return 9592}function o7(p){return p=p|0,0}function fge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=WD()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],NJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(zFe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function NJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function zFe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Ige(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,S0(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Ew(p,Ge),Dh(Ge),B=bt;return}}function Ige(p){return p=p|0,357913941}function S0(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Ew(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Dh(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function SB(p){p=p|0,DJ(p)}function a7(p){p=p|0,dP(p+24|0)}function dP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function DJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,Pre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Pre(){return 1276}function hge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=xL(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=c7(y,G)|0,B=w,y|0}function xL(p){return p=p|0,(o[(WD()|0)+24>>2]|0)+(p*12|0)|0}function c7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+16|0,G=J,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),qD[w&31](G,p),G=kJ(G)|0,B=J,G|0}function kJ(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(l7()|0)|0,G?(o1(y,G),Tb(w,y),lye(p,w),p=IE(y)|0):p=xJ(p)|0,B=J,p|0}function l7(){var p=0;return n[7736]|0||(_ge(9640),pu(25,9640,X|0)|0,p=7736,o[p>>2]=1,o[p+4>>2]=0),9640}function lye(p,y){p=p|0,y=y|0,GJ(y,p,p+8|0)|0}function xJ(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(16)|0,o[Ge>>2]=o[p>>2],o[Ge+4>>2]=o[p+4>>2],o[Ge+8>>2]=o[p+8>>2],o[Ge+12>>2]=o[p+12>>2],U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],oN(p,U,J),o[G>>2]=p,B=w,y|0}function oN(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1244,o[w+12>>2]=y,o[p+4>>2]=w}function mge(p){p=p|0,dz(p),ti(p)}function Wre(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function pP(p){p=p|0,ti(p)}function GJ(p,y,w){return p=p|0,y=y|0,w=w|0,y=ms(o[p>>2]|0,y,w)|0,w=p+4|0,o[(o[w>>2]|0)+8>>2]=y,o[(o[w>>2]|0)+8>>2]|0}function ms(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;return G=B,B=B+16|0,J=G,xw(J),p=qf(p)|0,w=FJ(p,o[y>>2]|0,+C[w>>3])|0,oS(J),B=G,w|0}function FJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0;return G=Sb(SY()|0)|0,y=r2(y)|0,Xa(0,G|0,p|0,y|0,+ +mp(w))|0}function SY(){var p=0;return n[7728]|0||(Cge(9628),p=7728,o[p>>2]=1,o[p+4>>2]=0),9628}function Cge(p){p=p|0,Ny(p,OD()|0,2)}function OD(){return 1264}function _ge(p){p=p|0,Hc(p)}function vY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],u7(p,w,J,1),B=G}function u7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sf()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=u1(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yge(U,G)|0,G),B=J}function sf(){var p=0,y=0;if(n[7744]|0||(bge(9684),pu(37,9684,X|0)|0,y=7744,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9684)|0)){p=9684,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));bge(9684)}return 9684}function u1(p){return p=p|0,0}function yge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sf()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],BY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(uye(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function BY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function uye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=gye(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Aye(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],BY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sw(p,Ge),Ore(Ge),B=bt;return}}function gye(p){return p=p|0,357913941}function Aye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Ore(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function bge(p){p=p|0,g7(p)}function FL(p){p=p|0,Mre(p+24|0)}function Mre(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function g7(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,Ege()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ege(){return 1280}function MD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=Hre(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=Sge(y,J,w)|0,B=G,w|0}function Hre(p){return p=p|0,(o[(sf()|0)+24>>2]|0)+(p*12|0)|0}function Sge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return le=B,B=B+32|0,J=le,U=le+16|0,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(U,w),U=Rb(U,w)|0,UT[G&15](J,p,U),U=kJ(J)|0,B=le,U|0}function mF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],qFe(p,w,J,1),B=G}function qFe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=wY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=HD(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,CF(U,G)|0,G),B=J}function wY(){var p=0,y=0;if(n[7752]|0||(g1(9720),pu(38,9720,X|0)|0,y=7752,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9720)|0)){p=9720,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));g1(9720)}return 9720}function HD(p){return p=p|0,0}function CF(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=wY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],lv(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(TY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function lv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function TY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=xp(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dye(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],lv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,fP(p,Ge),tA(Ge),B=bt;return}}function xp(p){return p=p|0,357913941}function dye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function fP(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tA(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function g1(p){p=p|0,vge(p)}function Yre(p){p=p|0,A7(p+24|0)}function A7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function vge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,$Fe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function $Fe(){return 1288}function Bge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=vw(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=ZJ(y,G)|0,B=w,y|0}function vw(p){return p=p|0,(o[(wY()|0)+24>>2]|0)+(p*12|0)|0}function ZJ(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),Z(mC[w&31](p)|0)|0}function Qre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],s_(p,w,J,0),B=G}function s_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=RY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Xre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,wge(U,G)|0,G),B=J}function RY(){var p=0,y=0;if(n[7760]|0||(LJ(9756),pu(39,9756,X|0)|0,y=7760,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9756)|0)){p=9756,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));LJ(9756)}return 9756}function Xre(p){return p=p|0,0}function wge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=RY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],NY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Tge(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function NY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Tge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Rge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,vB(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,_F(p,Ge),Jre(Ge),B=bt;return}}function Rge(p){return p=p|0,357913941}function vB(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function _F(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Jre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function LJ(p){p=p|0,Ure(p)}function eZe(p){p=p|0,g3(p+24|0)}function g3(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ure(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,VJ()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function VJ(){return 1292}function PJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=Kre(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],jre(y,J,w),B=G}function Kre(p){return p=p|0,(o[(RY()|0)+24>>2]|0)+(p*12|0)|0}function jre(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Cw(J,w),w=+Il(J,w),g$e[G&31](p,w),B=U}function IP(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Nge(p,w,J,0),B=G}function Nge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=d7()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=p7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Dge(U,G)|0,G),B=J}function d7(){var p=0,y=0;if(n[7768]|0||(kY(9792),pu(40,9792,X|0)|0,y=7768,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9792)|0)){p=9792,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));kY(9792)}return 9792}function p7(p){return p=p|0,0}function Dge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=d7()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],DY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(f7(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function DY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function f7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=tS(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,kge(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],DY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Wd(p,Ge),xge(Ge),B=bt;return}}function tS(p){return p=p|0,357913941}function kge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Wd(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function xge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function kY(p){p=p|0,oy(p)}function xY(p){p=p|0,hP(p+24|0)}function hP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oy(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,mo()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function mo(){return 1300}function A3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=_E(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Bw(y,U,w,G),B=J}function _E(p){return p=p|0,(o[(d7()|0)+24>>2]|0)+(p*12|0)|0}function Bw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),CB(U,w),U=Rb(U,w)|0,Cw(le,G),G=+Il(le,G),die[J&15](p,U,G),B=Ge}function ie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],he(p,w,J,0),B=G}function he(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=ze()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Ut(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Qr(U,G)|0,G),B=J}function ze(){var p=0,y=0;if(n[7776]|0||(fc(9828),pu(41,9828,X|0)|0,y=7776,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9828)|0)){p=9828,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));fc(9828)}return 9828}function Ut(p){return p=p|0,0}function Qr(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=ze()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],kn(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Fi(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function kn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Fi(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=rs(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,$s(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kn(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,vc(p,Ge),qa(Ge),B=bt;return}}function rs(p){return p=p|0,357913941}function $s(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function vc(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function qa(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function fc(p){p=p|0,VA(p)}function vl(p){p=p|0,Zu(p+24|0)}function Zu(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function VA(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,hf()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function hf(){return 1312}function Sd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=tI(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],rI(y,J,w),B=G}function tI(p){return p=p|0,(o[(ze()|0)+24>>2]|0)+(p*12|0)|0}function rI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,qD[G&31](p,J),B=U}function OT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],rS(p,w,J,0),B=G}function rS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Dy()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Up(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,uv(U,G)|0,G),B=J}function Dy(){var p=0,y=0;if(n[7784]|0||(Zge(9864),pu(42,9864,X|0)|0,y=7784,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9864)|0)){p=9864,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Zge(9864)}return 9864}function Up(p){return p=p|0,0}function uv(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Dy()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],ky(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(nS(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function ky(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function nS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=zre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Gge(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ky(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,sVt(p,Ge),Fge(Ge),B=bt;return}}function zre(p){return p=p|0,357913941}function Gge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function sVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Fge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Zge(p){p=p|0,aVt(p)}function pye(p){p=p|0,oVt(p+24|0)}function oVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function aVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,cVt()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cVt(){return 1320}function lVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=uVt(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],gVt(y,J,w),B=G}function uVt(p){return p=p|0,(o[(Dy()|0)+24>>2]|0)+(p*12|0)|0}function gVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),ww(J,w),J=hqe(J,w)|0,qD[G&31](p,J),B=U}function ww(p,y){p=p|0,y=y|0}function hqe(p,y){return p=p|0,y=y|0,yF(y)|0}function yF(p){return p=p|0,p|0}function tZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],fye(p,w,J,0),B=G}function fye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Lge()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=I7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,h7(U,G)|0,G),B=J}function Lge(){var p=0,y=0;if(n[7792]|0||(a2(9900),pu(43,9900,X|0)|0,y=7792,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9900)|0)){p=9900,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));a2(9900)}return 9900}function I7(p){return p=p|0,0}function h7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Lge()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Iye(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Vge(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Iye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Vge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=rZe(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,nZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Iye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,hye(p,Ge),mP(Ge),B=bt;return}}function rZe(p){return p=p|0,357913941}function nZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function hye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function mP(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function a2(p){p=p|0,sZe(p)}function Pge(p){p=p|0,iZe(p+24|0)}function iZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function sZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,22,y,WJ()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function WJ(){return 1344}function m7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;w=B,B=B+16|0,G=w+8|0,J=w,U=Wge(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],qre(y,G),B=w}function Wge(p){return p=p|0,(o[(Lge()|0)+24>>2]|0)+(p*12|0)|0}function qre(p,y){p=p|0,y=y|0;var w=0;w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),DF[w&127](p)}function A1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=Oge()|0,p=hC(w)|0,bd(U,y,J,p,oZe(w,G)|0,G)}function Oge(){var p=0,y=0;if(n[7800]|0||(C7(9936),pu(44,9936,X|0)|0,y=7800,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9936)|0)){p=9936,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));C7(9936)}return 9936}function hC(p){return p=p|0,p|0}function oZe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=Oge()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?($re(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Mge(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function $re(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Mge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=r0(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,aZe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,$re(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Hge(p,J),cZe(J),B=Ge;return}}function r0(p){return p=p|0,536870911}function aZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Hge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function cZe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function C7(p){p=p|0,ene(p)}function ZL(p){p=p|0,xy(p+24|0)}function xy(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function ene(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,23,y,iN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Yge(p,y){p=p|0,y=y|0,tne(o[(lZe(p)|0)>>2]|0,y)}function lZe(p){return p=p|0,(o[(Oge()|0)+24>>2]|0)+(p<<3)|0}function tne(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Ed(G,y),y=VT(G,y)|0,DF[p&127](y),B=w}function Qge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=OJ()|0,p=MJ(w)|0,bd(U,y,J,p,rne(w,G)|0,G)}function OJ(){var p=0,y=0;if(n[7808]|0||(nne(9972),pu(45,9972,X|0)|0,y=7808,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9972)|0)){p=9972,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));nne(9972)}return 9972}function MJ(p){return p=p|0,p|0}function rne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=OJ()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(HJ(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Rx(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function HJ(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Rx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=mye(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,Cye(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,HJ(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,YJ(p,J),MT(J),B=Ge;return}}function mye(p){return p=p|0,536870911}function Cye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function YJ(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function MT(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function nne(p){p=p|0,LL(p)}function Xge(p){p=p|0,uZe(p+24|0)}function uZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function LL(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,9,y,_7()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function _7(){return 1348}function _ye(p,y){return p=p|0,y=y|0,aN(o[(d3(p)|0)>>2]|0,y)|0}function d3(p){return p=p|0,(o[(OJ()|0)+24>>2]|0)+(p<<3)|0}function aN(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,n0(G,y),y=wo(G,y)|0,y=mJ(mC[p&31](y)|0)|0,B=w,y|0}function n0(p,y){p=p|0,y=y|0}function wo(p,y){return p=p|0,y=y|0,Jge(y)|0}function Jge(p){return p=p|0,p|0}function Uge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=GY()|0,p=Kge(w)|0,bd(U,y,J,p,ay(w,G)|0,G)}function GY(){var p=0,y=0;if(n[7816]|0||(one(10008),pu(46,10008,X|0)|0,y=7816,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10008)|0)){p=10008,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));one(10008)}return 10008}function Kge(p){return p=p|0,p|0}function ay(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=GY()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(y7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(CP(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function y7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function CP(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=gZe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,mqe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,y7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,ine(p,J),sne(J),B=Ge;return}}function gZe(p){return p=p|0,536870911}function mqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function ine(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function sne(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function one(p){p=p|0,E7(p)}function b7(p){p=p|0,ane(p+24|0)}function ane(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function E7(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,15,y,bu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function AVt(p){return p=p|0,VL(o[(FY(p)|0)>>2]|0)|0}function FY(p){return p=p|0,(o[(GY()|0)+24>>2]|0)+(p<<3)|0}function VL(p){return p=p|0,mJ(mz[p&7]()|0)|0}function dVt(){var p=0;return n[7832]|0||(dZe(10052),pu(25,10052,X|0)|0,p=7832,o[p>>2]=1,o[p+4>>2]=0),10052}function AZe(p,y){p=p|0,y=y|0,o[p>>2]=yye()|0,o[p+4>>2]=QJ()|0,o[p+12>>2]=y,o[p+8>>2]=cne()|0,o[p+32>>2]=2}function yye(){return 11709}function QJ(){return 1188}function cne(){return nI()|0}function p3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(cN(w),ti(w)):y|0&&(xT(y),ti(y))}function _P(p,y){return p=p|0,y=y|0,y&p|0}function cN(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function nI(){var p=0;return n[7824]|0||(o[2511]=f3()|0,o[2512]=0,p=7824,o[p>>2]=1,o[p+4>>2]=0),10044}function f3(){return 0}function dZe(p){p=p|0,Hc(p)}function bye(p){p=p|0;var y=0,w=0,G=0,J=0,U=0;y=B,B=B+32|0,w=y+24|0,U=y+16|0,J=y+8|0,G=y,yP(p,4827),jge(p,4834,3)|0,I3(p,3682,47)|0,o[U>>2]=9,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],lne(p,4841,w)|0,o[J>>2]=1,o[J+4>>2]=0,o[w>>2]=o[J>>2],o[w+4>>2]=o[J+4>>2],pVt(p,4871,w)|0,o[G>>2]=10,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],fVt(p,4891,w)|0,B=y}function yP(p,y){p=p|0,y=y|0;var w=0;w=HL()|0,o[p>>2]=w,Rw(w,y),BF(o[p>>2]|0)}function jge(p,y,w){return p=p|0,y=y|0,w=w|0,SZe(p,ff(y)|0,w,0),p|0}function I3(p,y,w){return p=p|0,y=y|0,w=w|0,hne(p,ff(y)|0,w,0),p|0}function lne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],CZe(p,y,J),B=G,p|0}function pVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],iS(p,y,J),B=G,p|0}function fVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],zge(p,y,J),B=G,p|0}function zge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],YD(p,w,J,1),B=G}function YD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=XJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Eye(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,une(U,G)|0,G),B=J}function XJ(){var p=0,y=0;if(n[7840]|0||(B7(10100),pu(48,10100,X|0)|0,y=7840,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10100)|0)){p=10100,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));B7(10100)}return 10100}function Eye(p){return p=p|0,0}function une(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=XJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Sye(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(S7(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Sye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function S7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=pZe(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,fZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Sye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,ZY(p,Ge),v7(Ge),B=bt;return}}function pZe(p){return p=p|0,357913941}function fZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function ZY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function v7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function B7(p){p=p|0,JJ(p)}function gne(p){p=p|0,LY(p+24|0)}function LY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function JJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,h3()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function h3(){return 1364}function IZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=VY(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=PY(y,J,w)|0,B=G,w|0}function VY(p){return p=p|0,(o[(XJ()|0)+24>>2]|0)+(p*12|0)|0}function PY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,J=i2(gie[G&15](p,J)|0)|0,B=U,J|0}function iS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Ane(p,w,J,0),B=G}function Ane(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=hZe()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Cqe(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,_qe(U,G)|0,G),B=J}function hZe(){var p=0,y=0;if(n[7848]|0||(Eqe(10136),pu(49,10136,X|0)|0,y=7848,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10136)|0)){p=10136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Eqe(10136)}return 10136}function Cqe(p){return p=p|0,0}function _qe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=hZe()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],m3(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(yqe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function m3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function yqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=UJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dne(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],m3(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,vye(p,Ge),bqe(Ge),B=bt;return}}function UJ(p){return p=p|0,357913941}function dne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function vye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function bqe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Eqe(p){p=p|0,qge(p)}function Bye(p){p=p|0,pne(p+24|0)}function pne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function qge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,9,y,wye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function wye(){return 1372}function PL(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=WL(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bP(y,J,w),B=G}function WL(p){return p=p|0,(o[(hZe()|0)+24>>2]|0)+(p*12|0)|0}function bP(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=As;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),KJ(J,w),le=ke(mZe(J,w)),u$e[G&1](p,le),B=U}function KJ(p,y){p=p|0,y=+y}function mZe(p,y){return p=p|0,y=+y,ke(Sqe(y))}function Sqe(p){return p=+p,ke(p)}function CZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],_Ze(p,w,J,0),B=G}function _Ze(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=QD()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=bF(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,IVt(U,G)|0,G),B=J}function QD(){var p=0,y=0;if(n[7856]|0||(Tye(10172),pu(50,10172,X|0)|0,y=7856,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10172)|0)){p=10172,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Tye(10172)}return 10172}function bF(p){return p=p|0,0}function IVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=QD()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],$ge(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(yZe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function $ge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function yZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=C3(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,vqe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],$ge(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,fne(p,Ge),gv(Ge),B=bt;return}}function C3(p){return p=p|0,357913941}function vqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function fne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function gv(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Tye(p){p=p|0,Rye(p)}function w7(p){p=p|0,QA(p+24|0)}function QA(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Rye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,EP()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function EP(){return 1380}function HT(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=T7(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Ine(y,U,w,G),B=J}function T7(p){return p=p|0,(o[(QD()|0)+24>>2]|0)+(p*12|0)|0}function Ine(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),CB(U,w),U=Rb(U,w)|0,bZe(le,G),le=Nye(le,G)|0,UT[J&15](p,U,le),B=Ge}function bZe(p,y){p=p|0,y=y|0}function Nye(p,y){return p=p|0,y=y|0,eAe(y)|0}function eAe(p){return p=p|0,(p|0)!=0|0}function hne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=mne()|0,p=EZe(w)|0,bd(U,y,J,p,BB(w,G)|0,G)}function mne(){var p=0,y=0;if(n[7864]|0||(v0(10208),pu(51,10208,X|0)|0,y=7864,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10208)|0)){p=10208,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));v0(10208)}return 10208}function EZe(p){return p=p|0,p|0}function BB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=mne()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(OL(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(jJ(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function OL(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function jJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=R7(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,N7(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,OL(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Cne(p,J),ML(J),B=Ge;return}}function R7(p){return p=p|0,536870911}function N7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Cne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ML(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function v0(p){p=p|0,rAe(p)}function Dye(p){p=p|0,tAe(p+24|0)}function tAe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function rAe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,24,y,kye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function kye(){return 1392}function WY(p,y){p=p|0,y=y|0,zJ(o[(xye(p)|0)>>2]|0,y)}function xye(p){return p=p|0,(o[(mne()|0)+24>>2]|0)+(p<<3)|0}function zJ(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,n0(G,y),y=wo(G,y)|0,DF[p&127](y),B=w}function SZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=SI()|0,p=D7(w)|0,bd(U,y,J,p,d1(w,G)|0,G)}function SI(){var p=0,y=0;if(n[7872]|0||(qJ(10244),pu(52,10244,X|0)|0,y=7872,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10244)|0)){p=10244,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));qJ(10244)}return 10244}function D7(p){return p=p|0,p|0}function d1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=SI()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(_ne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(XD(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function _ne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function XD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=nAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,_3(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,_ne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Tw(p,J),c2(J),B=Ge;return}}function nAe(p){return p=p|0,536870911}function _3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Tw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function qJ(p){p=p|0,vZe(p)}function yne(p){p=p|0,k7(p+24|0)}function k7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function vZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,16,y,hVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function hVt(){return 1400}function iAe(p){return p=p|0,kb(o[(Gye(p)|0)>>2]|0)|0}function Gye(p){return p=p|0,(o[(SI()|0)+24>>2]|0)+(p<<3)|0}function kb(p){return p=p|0,Fye(mz[p&7]()|0)|0}function Fye(p){return p=p|0,p|0}function HL(){var p=0;return n[7880]|0||(x7(10280),pu(25,10280,X|0)|0,p=7880,o[p>>2]=1,o[p+4>>2]=0),10280}function Rw(p,y){p=p|0,y=y|0,o[p>>2]=Zye()|0,o[p+4>>2]=sp()|0,o[p+12>>2]=y,o[p+8>>2]=BZe()|0,o[p+32>>2]=4}function Zye(){return 11711}function sp(){return 1356}function BZe(){return nI()|0}function Lye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(Vye(w),ti(w)):y|0&&(ty(y),ti(y))}function Vye(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function x7(p){p=p|0,Hc(p)}function Bqe(p){p=p|0,wZe(p,4920),bne(p)|0,Ene(p)|0}function wZe(p,y){p=p|0,y=y|0;var w=0;w=l7()|0,o[p>>2]=w,sAe(w,y),BF(o[p>>2]|0)}function bne(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,Rqe()|0),p|0}function Ene(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,$J()|0),p|0}function $J(){var p=0;return n[7888]|0||(wqe(10328),pu(53,10328,X|0)|0,p=7888,o[p>>2]=1,o[p+4>>2]=0),Xr(10328)|0||wqe(10328),10328}function EF(p,y){p=p|0,y=y|0,bd(p,0,y,0,0,0)}function wqe(p){p=p|0,Wye(p),G7(p,10)}function Pye(p){p=p|0,TZe(p+24|0)}function TZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Wye(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Tqe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function mVt(p,y,w){p=p|0,y=y|0,w=+w,CVt(p,y,w)}function G7(p,y){p=p|0,y=y|0,o[p+20>>2]=y}function CVt(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,U=G+8|0,Ge=G+13|0,J=G,le=G+12|0,CB(Ge,y),o[U>>2]=Rb(Ge,y)|0,Cw(le,w),C[J>>3]=+Il(le,w),_Vt(p,U,J),B=G}function _Vt(p,y,w){p=p|0,y=y|0,w=w|0,dC(p+8|0,o[y>>2]|0,+C[w>>3]),n[p+24>>0]=1}function Tqe(){return 1404}function yVt(p,y){return p=p|0,y=+y,YT(p,y)|0}function YT(p,y){p=p|0,y=+y;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,U=G+4|0,le=G+8|0,Ge=G,J=Fb(8)|0,w=J,Xe=Ku(16)|0,CB(U,p),p=Rb(U,p)|0,Cw(le,y),dC(Xe,p,+Il(le,y)),le=w+4|0,o[le>>2]=Xe,p=Ku(8)|0,le=o[le>>2]|0,o[Ge>>2]=0,o[U>>2]=o[Ge>>2],oN(p,le,U),o[J>>2]=p,B=G,w|0}function Rqe(){var p=0;return n[7896]|0||(Sne(10364),pu(54,10364,X|0)|0,p=7896,o[p>>2]=1,o[p+4>>2]=0),Xr(10364)|0||Sne(10364),10364}function Sne(p){p=p|0,SVt(p),G7(p,55)}function bVt(p){p=p|0,EVt(p+24|0)}function EVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function SVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,4,y,wVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function vVt(p){p=p|0,BVt(p)}function BVt(p){p=p|0,Oye(p)}function Oye(p){p=p|0,l2(p+8|0),n[p+24>>0]=1}function l2(p){p=p|0,o[p>>2]=0,C[p+8>>3]=0}function wVt(){return 1424}function eU(){return vne()|0}function vne(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,G=Ku(16)|0,l2(G),U=p+4|0,o[U>>2]=G,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],oN(G,U,J),o[w>>2]=G,B=y,p|0}function sAe(p,y){p=p|0,y=y|0,o[p>>2]=Bne()|0,o[p+4>>2]=wne()|0,o[p+12>>2]=y,o[p+8>>2]=Mye()|0,o[p+32>>2]=5}function Bne(){return 11710}function wne(){return 1416}function Mye(){return F7()|0}function y3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(JD(w),ti(w)):y|0&&ti(y)}function JD(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function F7(){var p=0;return n[7904]|0||(o[2600]=Nqe()|0,o[2601]=0,p=7904,o[p>>2]=1,o[p+4>>2]=0),10400}function Nqe(){return o[357]|0}function RZe(p){p=p|0,Hye(p,4926),NZe(p)|0}function Hye(p,y){p=p|0,y=y|0;var w=0;w=Og()|0,o[p>>2]=w,Dqe(w,y),BF(o[p>>2]|0)}function NZe(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,DZe()|0),p|0}function DZe(){var p=0;return n[7912]|0||(Tne(10412),pu(56,10412,X|0)|0,p=7912,o[p>>2]=1,o[p+4>>2]=0),Xr(10412)|0||Tne(10412),10412}function Tne(p){p=p|0,Qye(p),G7(p,57)}function oAe(p){p=p|0,Yye(p+24|0)}function Yye(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Qye(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,5,y,lAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function aAe(p){p=p|0,cAe(p)}function cAe(p){p=p|0,SP(p)}function SP(p){p=p|0;var y=0,w=0;y=p+8|0,w=y+48|0;do o[y>>2]=0,y=y+4|0;while((y|0)<(w|0));n[p+56>>0]=1}function lAe(){return 1432}function kZe(){return uAe()|0}function uAe(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;le=B,B=B+16|0,p=le+4|0,y=le,w=Fb(8)|0,G=w,J=Ku(48)|0,U=J,Ge=U+48|0;do o[U>>2]=0,U=U+4|0;while((U|0)<(Ge|0));return U=G+4|0,o[U>>2]=J,Ge=Ku(8)|0,U=o[U>>2]|0,o[y>>2]=0,o[p>>2]=o[y>>2],e3(Ge,U,p),o[w>>2]=Ge,B=le,G|0}function Dqe(p,y){p=p|0,y=y|0,o[p>>2]=Xye()|0,o[p+4>>2]=Z7()|0,o[p+12>>2]=y,o[p+8>>2]=tU()|0,o[p+32>>2]=6}function Xye(){return 11704}function Z7(){return 1436}function tU(){return F7()|0}function lN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(L7(w),ti(w)):y|0&&ti(y)}function L7(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function xZe(p){p=p|0,vP(p,4933),SF(p)|0,vF(p)|0}function vP(p,y){p=p|0,y=y|0;var w=0;w=b3()|0,o[p>>2]=w,p1(w,y),BF(o[p>>2]|0)}function SF(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,DVt()|0),p|0}function vF(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,OY()|0),p|0}function OY(){var p=0;return n[7920]|0||(YL(10452),pu(58,10452,X|0)|0,p=7920,o[p>>2]=1,o[p+4>>2]=0),Xr(10452)|0||YL(10452),10452}function YL(p){p=p|0,kh(p),G7(p,1)}function Jye(p){p=p|0,BP(p+24|0)}function BP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function kh(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Uye()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function GZe(p,y,w){p=p|0,y=+y,w=+w,xb(p,y,w)}function xb(p,y,w){p=p|0,y=+y,w=+w;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,U=G+8|0,Ge=G+17|0,J=G,le=G+16|0,Cw(Ge,y),C[U>>3]=+Il(Ge,y),Cw(le,w),C[J>>3]=+Il(le,w),gAe(p,U,J),B=G}function gAe(p,y,w){p=p|0,y=y|0,w=w|0,kqe(p+8|0,+C[y>>3],+C[w>>3]),n[p+24>>0]=1}function kqe(p,y,w){p=p|0,y=+y,w=+w,C[p>>3]=y,C[p+8>>3]=w}function Uye(){return 1472}function TVt(p,y){return p=+p,y=+y,RVt(p,y)|0}function RVt(p,y){p=+p,y=+y;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,le=G+4|0,Ge=G+8|0,Xe=G,J=Fb(8)|0,w=J,U=Ku(16)|0,Cw(le,p),p=+Il(le,p),Cw(Ge,y),kqe(U,p,+Il(Ge,y)),Ge=w+4|0,o[Ge>>2]=U,U=Ku(8)|0,Ge=o[Ge>>2]|0,o[Xe>>2]=0,o[le>>2]=o[Xe>>2],Kye(U,Ge,le),o[J>>2]=U,B=G,w|0}function Kye(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1452,o[w+12>>2]=y,o[p+4>>2]=w}function NVt(p){p=p|0,dz(p),ti(p)}function FZe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function rU(p){p=p|0,ti(p)}function DVt(){var p=0;return n[7928]|0||(ZZe(10488),pu(59,10488,X|0)|0,p=7928,o[p>>2]=1,o[p+4>>2]=0),Xr(10488)|0||ZZe(10488),10488}function ZZe(p){p=p|0,Gb(p),G7(p,60)}function jye(p){p=p|0,LZe(p+24|0)}function LZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Gb(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,6,y,wP()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ga(p){p=p|0,cg(p)}function cg(p){p=p|0,zh(p)}function zh(p){p=p|0,Rne(p+8|0),n[p+24>>0]=1}function Rne(p){p=p|0,o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,o[p+12>>2]=0}function wP(){return 1492}function zye(){return Nw()|0}function Nw(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,G=Ku(16)|0,Rne(G),U=p+4|0,o[U>>2]=G,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],Kye(G,U,J),o[w>>2]=G,B=y,p|0}function b3(){var p=0;return n[7936]|0||(Nx(10524),pu(25,10524,X|0)|0,p=7936,o[p>>2]=1,o[p+4>>2]=0),10524}function p1(p,y){p=p|0,y=y|0,o[p>>2]=MY()|0,o[p+4>>2]=VZe()|0,o[p+12>>2]=y,o[p+8>>2]=PZe()|0,o[p+32>>2]=7}function MY(){return 11700}function VZe(){return 1484}function PZe(){return F7()|0}function o_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(WZe(w),ti(w)):y|0&&ti(y)}function WZe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function Nx(p){p=p|0,Hc(p)}function xqe(p,y,w){p=p|0,y=y|0,w=w|0,p=ff(y)|0,y=kVt(w)|0,w=Gqe(w,0)|0,XZe(p,y,w,OZe()|0,0)}function kVt(p){return p=p|0,p|0}function Gqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=OZe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(AAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(dAe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function OZe(){var p=0,y=0;if(n[7944]|0||(qye(10568),pu(61,10568,X|0)|0,y=7944,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10568)|0)){p=10568,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));qye(10568)}return 10568}function qye(p){p=p|0,HY(p)}function $ye(p){p=p|0,Dw(p+24|0)}function Dw(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function HY(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,17,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nne(p){return p=p|0,V7(o[(MZe(p)|0)>>2]|0)|0}function MZe(p){return p=p|0,(o[(OZe()|0)+24>>2]|0)+(p<<3)|0}function V7(p){return p=p|0,_J(mz[p&7]()|0)|0}function AAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function dAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Dne(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,UD(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,AAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,ebe(p,J),tbe(J),B=Ge;return}}function Dne(p){return p=p|0,536870911}function UD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function ebe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tbe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Jm(){Dx()}function Dx(){pAe(10604)}function pAe(p){p=p|0,Od(p,4955)}function Od(p,y){p=p|0,y=y|0;var w=0;w=B0()|0,o[p>>2]=w,kne(w,y),BF(o[p>>2]|0)}function B0(){var p=0;return n[7952]|0||(W7(10612),pu(25,10612,X|0)|0,p=7952,o[p>>2]=1,o[p+4>>2]=0),10612}function kne(p,y){p=p|0,y=y|0,o[p>>2]=HZe()|0,o[p+4>>2]=fAe()|0,o[p+12>>2]=y,o[p+8>>2]=YZe()|0,o[p+32>>2]=8}function BF(p){p=p|0;var y=0,w=0;y=B,B=B+16|0,w=y,TP()|0,o[w>>2]=p,wF(10608,w),B=y}function TP(){return n[11714]|0||(o[2652]=0,pu(62,10608,X|0)|0,n[11714]=1),10608}function wF(p,y){p=p|0,y=y|0;var w=0;w=Ku(8)|0,o[w+4>>2]=o[y>>2],o[w>>2]=o[p>>2],o[p>>2]=w}function P7(p){p=p|0,rbe(p)}function rbe(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function HZe(){return 11715}function fAe(){return 1496}function YZe(){return nI()|0}function nbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(QZe(w),ti(w)):y|0&&ti(y)}function QZe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function W7(p){p=p|0,Hc(p)}function xVt(p,y){p=p|0,y=y|0;var w=0,G=0;TP()|0,w=o[2652]|0;e:do if(w|0){for(;G=o[w+4>>2]|0,!(G|0&&!(zqe(O7(G)|0,p)|0));)if(w=o[w>>2]|0,!w)break e;GVt(G,y)}while(!1)}function O7(p){return p=p|0,o[p+12>>2]|0}function GVt(p,y){p=p|0,y=y|0;var w=0;p=p+36|0,w=o[p>>2]|0,w|0&&(yb(w),ti(w)),w=Ku(4)|0,dB(w,y),o[p>>2]=w}function RP(){return n[11716]|0||(o[2664]=0,pu(63,10656,X|0)|0,n[11716]=1),10656}function ibe(){var p=0;return n[11717]|0?p=o[2665]|0:(FVt(),o[2665]=1504,n[11717]=1,p=1504),p|0}function FVt(){n[11740]|0||(n[11718]=Uu(Uu(8,0)|0,0)|0,n[11719]=Uu(Uu(0,0)|0,0)|0,n[11720]=Uu(Uu(0,16)|0,0)|0,n[11721]=Uu(Uu(8,0)|0,0)|0,n[11722]=Uu(Uu(0,0)|0,0)|0,n[11723]=Uu(Uu(8,0)|0,0)|0,n[11724]=Uu(Uu(0,0)|0,0)|0,n[11725]=Uu(Uu(8,0)|0,0)|0,n[11726]=Uu(Uu(0,0)|0,0)|0,n[11727]=Uu(Uu(8,0)|0,0)|0,n[11728]=Uu(Uu(0,0)|0,0)|0,n[11729]=Uu(Uu(0,0)|0,32)|0,n[11730]=Uu(Uu(0,0)|0,32)|0,n[11740]=1)}function sbe(){return 1572}function XZe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0;U=B,B=B+32|0,It=U+16|0,bt=U+12|0,Xe=U+8|0,Ge=U+4|0,le=U,o[It>>2]=p,o[bt>>2]=y,o[Xe>>2]=w,o[Ge>>2]=G,o[le>>2]=J,RP()|0,obe(10656,It,bt,Xe,Ge,le),B=U}function obe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0;le=Ku(24)|0,wb(le+4|0,o[y>>2]|0,o[w>>2]|0,o[G>>2]|0,o[J>>2]|0,o[U>>2]|0),o[le>>2]=o[p>>2],o[p>>2]=le}function E3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0;if(So=B,B=B+32|0,zi=So+20|0,Un=So+8|0,Ds=So+4|0,Si=So,y=o[y>>2]|0,y|0){Ks=zi+4|0,Xe=zi+8|0,bt=Un+4|0,It=Un+8|0,rr=Un+8|0,an=zi+8|0;do{if(le=y+4|0,Ge=nU(le)|0,Ge|0){if(J=f1(Ge)|0,o[zi>>2]=0,o[Ks>>2]=0,o[Xe>>2]=0,G=(IAe(Ge)|0)+1|0,ZVt(zi,G),G|0)for(;G=G+-1|0,RB(Un,o[J>>2]|0),U=o[Ks>>2]|0,U>>>0<(o[an>>2]|0)>>>0?(o[U>>2]=o[Un>>2],o[Ks>>2]=(o[Ks>>2]|0)+4):uN(zi,Un),G;)J=J+4|0;G=Gy(Ge)|0,o[Un>>2]=0,o[bt>>2]=0,o[It>>2]=0;e:do if(o[G>>2]|0)for(J=0,U=0;;){if((J|0)==(U|0)?hAe(Un,G):(o[J>>2]=o[G>>2],o[bt>>2]=(o[bt>>2]|0)+4),G=G+4|0,!(o[G>>2]|0))break e;J=o[bt>>2]|0,U=o[rr>>2]|0}while(!1);o[Ds>>2]=KD(le)|0,o[Si>>2]=Xr(Ge)|0,jD(w,p,Ds,Si,zi,Un),Av(Un),QL(zi)}y=o[y>>2]|0}while(y|0)}B=So}function nU(p){return p=p|0,o[p+12>>2]|0}function f1(p){return p=p|0,o[p+12>>2]|0}function IAe(p){return p=p|0,o[p+16>>2]|0}function ZVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+32|0,w=J,G=o[p>>2]|0,(o[p+8>>2]|0)-G>>2>>>0>>0&&(ube(w,y,(o[p+4>>2]|0)-G>>2,p+8|0),AN(p,w),la(w)),B=J}function uN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;if(le=B,B=B+32|0,w=le,G=p+4|0,J=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=yAe(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,bt=(o[p+8>>2]|0)-Ge|0,Xe=bt>>1,ube(w,bt>>2>>>0>>1>>>0?Xe>>>0>>0?J:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,AN(p,w),la(w),B=le;return}}function Gy(p){return p=p|0,o[p+8>>2]|0}function hAe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;if(le=B,B=B+32|0,w=le,G=p+4|0,J=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=B3(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,bt=(o[p+8>>2]|0)-Ge|0,Xe=bt>>1,Fy(w,bt>>2>>>0>>1>>>0?Xe>>>0>>0?J:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,gN(p,w),Q7(w),B=le;return}}function KD(p){return p=p|0,o[p>>2]|0}function jD(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,S3(p,y,w,G,J,U)}function Av(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function QL(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function S3(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+48|0,It=le+40|0,Ge=le+32|0,rr=le+24|0,Xe=le+12|0,bt=le,xw(Ge),p=qf(p)|0,o[rr>>2]=o[y>>2],w=o[w>>2]|0,G=o[G>>2]|0,M7(Xe,J),JZe(bt,U),o[It>>2]=o[rr>>2],UZe(p,It,w,G,Xe,bt),Av(bt),QL(Xe),oS(Ge),B=le}function M7(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(Y7(p,G),LVt(p,o[y>>2]|0,o[w>>2]|0,G))}function JZe(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(sU(p,G),_Ae(p,o[y>>2]|0,o[w>>2]|0,G))}function UZe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+32|0,It=le+28|0,rr=le+24|0,Ge=le+12|0,Xe=le,bt=Sb(xne()|0)|0,o[rr>>2]=o[y>>2],o[It>>2]=o[rr>>2],y=v3(It)|0,w=KZe(w)|0,G=mAe(G)|0,o[Ge>>2]=o[J>>2],It=J+4|0,o[Ge+4>>2]=o[It>>2],rr=J+8|0,o[Ge+8>>2]=o[rr>>2],o[rr>>2]=0,o[It>>2]=0,o[J>>2]=0,J=yE(Ge)|0,o[Xe>>2]=o[U>>2],It=U+4|0,o[Xe+4>>2]=o[It>>2],rr=U+8|0,o[Xe+8>>2]=o[rr>>2],o[rr>>2]=0,o[It>>2]=0,o[U>>2]=0,Yl(0,bt|0,p|0,y|0,w|0,G|0,J|0,H7(Xe)|0)|0,Av(Xe),QL(Ge),B=le}function xne(){var p=0;return n[7968]|0||(u2(10708),p=7968,o[p>>2]=1,o[p+4>>2]=0),10708}function v3(p){return p=p|0,CAe(p)|0}function KZe(p){return p=p|0,abe(p)|0}function mAe(p){return p=p|0,_J(p)|0}function yE(p){return p=p|0,cy(p)|0}function H7(p){return p=p|0,jZe(p)|0}function jZe(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Fb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=abe(o[(o[p>>2]|0)+(y<<2)>>2]|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function abe(p){return p=p|0,p|0}function cy(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Fb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=CAe((o[p>>2]|0)+(y<<2)|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function CAe(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(Fqe()|0)|0,G?(o1(y,G),Tb(w,y),Vbe(p,w),p=IE(y)|0):p=cbe(p)|0,B=J,p|0}function Fqe(){var p=0;return n[7960]|0||(iI(10664),pu(25,10664,X|0)|0,p=7960,o[p>>2]=1,o[p+4>>2]=0),10664}function cbe(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(4)|0,o[Ge>>2]=o[p>>2],U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],iU(p,U,J),o[G>>2]=p,B=w,y|0}function iU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1656,o[w+12>>2]=y,o[p+4>>2]=w}function Gne(p){p=p|0,dz(p),ti(p)}function lbe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function dv(p){p=p|0,ti(p)}function iI(p){p=p|0,Hc(p)}function u2(p){p=p|0,Ny(p,FC()|0,5)}function FC(){return 1676}function sU(p,y){p=p|0,y=y|0;var w=0;if((B3(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function _Ae(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function B3(p){return p=p|0,1073741823}function Y7(p,y){p=p|0,y=y|0;var w=0;if((yAe(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function LVt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function yAe(p){return p=p|0,1073741823}function Fy(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function gN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Q7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function ube(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function AN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function la(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function bAe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(Un=B,B=B+32|0,It=Un+20|0,rr=Un+12|0,bt=Un+16|0,an=Un+4|0,Ks=Un,zi=Un+8|0,Ge=ibe()|0,U=o[Ge>>2]|0,le=o[U>>2]|0,le|0)for(Xe=o[Ge+8>>2]|0,Ge=o[Ge+4>>2]|0;RB(It,le),zZe(p,It,Ge,Xe),U=U+4|0,le=o[U>>2]|0,le;)Xe=Xe+1|0,Ge=Ge+1|0;if(U=sbe()|0,le=o[U>>2]|0,le|0)do RB(It,le),o[rr>>2]=o[U+4>>2],gbe(y,It,rr),U=U+8|0,le=o[U>>2]|0;while(le|0);if(U=o[(TP()|0)>>2]|0,U|0)do y=o[U+4>>2]|0,RB(It,o[(Zy(y)|0)>>2]|0),o[rr>>2]=O7(y)|0,YY(w,It,rr),U=o[U>>2]|0;while(U|0);if(RB(bt,0),U=RP()|0,o[It>>2]=o[bt>>2],E3(It,U,J),U=o[(TP()|0)>>2]|0,U|0){p=It+4|0,y=It+8|0,w=It+8|0;do{if(Xe=o[U+4>>2]|0,RB(rr,o[(Zy(Xe)|0)>>2]|0),_p(an,EAe(Xe)|0),le=o[an>>2]|0,le|0){o[It>>2]=0,o[p>>2]=0,o[y>>2]=0;do RB(Ks,o[(Zy(o[le+4>>2]|0)|0)>>2]|0),Ge=o[p>>2]|0,Ge>>>0<(o[w>>2]|0)>>>0?(o[Ge>>2]=o[Ks>>2],o[p>>2]=(o[p>>2]|0)+4):uN(It,Ks),le=o[le>>2]|0;while(le|0);Abe(G,rr,It),QL(It)}o[zi>>2]=o[rr>>2],bt=Fne(Xe)|0,o[It>>2]=o[zi>>2],E3(It,bt,J),wr(an),U=o[U>>2]|0}while(U|0)}B=Un}function zZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,$Ze(p,y,w,G)}function gbe(p,y,w){p=p|0,y=y|0,w=w|0,Vqe(p,y,w)}function Zy(p){return p=p|0,p|0}function YY(p,y,w){p=p|0,y=y|0,w=w|0,OVt(p,y,w)}function EAe(p){return p=p|0,p+16|0}function _p(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;if(U=B,B=B+16|0,J=U+8|0,w=U,o[p>>2]=0,G=o[y>>2]|0,o[J>>2]=G,o[w>>2]=p,w=WVt(w)|0,G|0){if(G=Ku(12)|0,le=(dbe(J)|0)+4|0,p=o[le+4>>2]|0,y=G+4|0,o[y>>2]=o[le>>2],o[y+4>>2]=p,y=o[o[J>>2]>>2]|0,o[J>>2]=y,!y)p=G;else for(y=G;p=Ku(12)|0,Xe=(dbe(J)|0)+4|0,Ge=o[Xe+4>>2]|0,le=p+4|0,o[le>>2]=o[Xe>>2],o[le+4>>2]=Ge,o[y>>2]=p,le=o[o[J>>2]>>2]|0,o[J>>2]=le,le;)y=p;o[p>>2]=o[w>>2],o[w>>2]=G}B=U}function Abe(p,y,w){p=p|0,y=y|0,w=w|0,oU(p,y,w)}function Fne(p){return p=p|0,p+24|0}function oU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+24|0,J=G+16|0,Ge=G+12|0,U=G,xw(J),p=qf(p)|0,o[Ge>>2]=o[y>>2],M7(U,w),o[le>>2]=o[Ge>>2],qZe(p,le,U),QL(U),oS(J),B=G}function qZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+16|0,Ge=G+12|0,J=G,U=Sb(aU()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=v3(le)|0,o[J>>2]=o[w>>2],le=w+4|0,o[J+4>>2]=o[le>>2],Ge=w+8|0,o[J+8>>2]=o[Ge>>2],o[Ge>>2]=0,o[le>>2]=0,o[w>>2]=0,Ei(0,U|0,p|0,y|0,yE(J)|0)|0,QL(J),B=G}function aU(){var p=0;return n[7976]|0||(VVt(10720),p=7976,o[p>>2]=1,o[p+4>>2]=0),10720}function VVt(p){p=p|0,Ny(p,PVt()|0,2)}function PVt(){return 1732}function WVt(p){return p=p|0,o[p>>2]|0}function dbe(p){return p=p|0,o[p>>2]|0}function OVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,J=G+8|0,le=G,xw(J),p=qf(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],Zqe(p,U,w),oS(J),B=G}function Zqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,U=G+4|0,le=G,J=Sb(MVt()|0)|0,o[le>>2]=o[y>>2],o[U>>2]=o[le>>2],y=v3(U)|0,Ei(0,J|0,p|0,y|0,KZe(w)|0)|0,B=G}function MVt(){var p=0;return n[7984]|0||(ZC(10732),p=7984,o[p>>2]=1,o[p+4>>2]=0),10732}function ZC(p){p=p|0,Ny(p,Lqe()|0,2)}function Lqe(){return 1744}function Vqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,J=G+8|0,le=G,xw(J),p=qf(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],Zqe(p,U,w),oS(J),B=G}function $Ze(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+32|0,le=J+16|0,U=J+8|0,Ge=J,xw(U),p=qf(p)|0,o[Ge>>2]=o[y>>2],w=n[w>>0]|0,G=n[G>>0]|0,o[le>>2]=o[Ge>>2],dN(p,le,w,G),oS(U),B=J}function dN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,le=J+4|0,Ge=J,U=Sb(SAe()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=v3(le)|0,w=cU(w)|0,oA(0,U|0,p|0,y|0,w|0,cU(G)|0)|0,B=J}function SAe(){var p=0;return n[7992]|0||(Bu(10744),p=7992,o[p>>2]=1,o[p+4>>2]=0),10744}function cU(p){return p=p|0,eLe(p)|0}function eLe(p){return p=p|0,p&255|0}function Bu(p){p=p|0,Ny(p,QY()|0,3)}function QY(){return 1756}function HVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;switch(an=B,B=B+32|0,Ge=an+8|0,Xe=an+4|0,bt=an+20|0,It=an,aP(p,0),G=Lbe(y)|0,o[Ge>>2]=0,rr=Ge+4|0,o[rr>>2]=0,o[Ge+8>>2]=0,G<<24>>24){case 0:{n[bt>>0]=0,Pqe(Xe,w,bt),XL(p,Xe)|0,r_(Xe);break}case 8:{rr=QAe(y)|0,n[bt>>0]=8,RB(It,o[rr+4>>2]|0),qh(Xe,w,bt,It,rr+8|0),XL(p,Xe)|0,r_(Xe);break}case 9:{if(U=QAe(y)|0,y=o[U+4>>2]|0,y|0)for(le=Ge+8|0,J=U+12|0;y=y+-1|0,RB(Xe,o[J>>2]|0),G=o[rr>>2]|0,G>>>0<(o[le>>2]|0)>>>0?(o[G>>2]=o[Xe>>2],o[rr>>2]=(o[rr>>2]|0)+4):uN(Ge,Xe),y;)J=J+4|0;n[bt>>0]=9,RB(It,o[U+8>>2]|0),XY(Xe,w,bt,It,Ge),XL(p,Xe)|0,r_(Xe);break}default:rr=QAe(y)|0,n[bt>>0]=G,RB(It,o[rr+4>>2]|0),Nf(Xe,w,bt,It),XL(p,Xe)|0,r_(Xe)}QL(Ge),B=an}function Pqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,xw(J),y=qf(y)|0,Ibe(p,y,n[w>>0]|0),oS(J),B=G}function XL(p,y){p=p|0,y=y|0;var w=0;return w=o[p>>2]|0,w|0&&oo(w|0),o[p>>2]=o[y>>2],o[y>>2]=0,p|0}function qh(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+32|0,Ge=U+16|0,le=U+8|0,Xe=U,xw(le),y=qf(y)|0,w=n[w>>0]|0,o[Xe>>2]=o[G>>2],J=o[J>>2]|0,o[Ge>>2]=o[Xe>>2],Wqe(p,y,w,Ge,J),oS(le),B=U}function XY(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;U=B,B=B+32|0,Xe=U+24|0,le=U+16|0,bt=U+12|0,Ge=U,xw(le),y=qf(y)|0,w=n[w>>0]|0,o[bt>>2]=o[G>>2],M7(Ge,J),o[Xe>>2]=o[bt>>2],tLe(p,y,w,Xe,Ge),QL(Ge),oS(le),B=U}function Nf(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+32|0,le=J+16|0,U=J+8|0,Ge=J,xw(U),y=qf(y)|0,w=n[w>>0]|0,o[Ge>>2]=o[G>>2],o[le>>2]=o[Ge>>2],vAe(p,y,w,le),oS(U),B=J}function vAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+4|0,Ge=J,le=Sb(wu()|0)|0,w=cU(w)|0,o[Ge>>2]=o[G>>2],o[U>>2]=o[Ge>>2],Zne(p,Ei(0,le|0,y|0,w|0,v3(U)|0)|0),B=J}function wu(){var p=0;return n[8e3]|0||(pbe(10756),p=8e3,o[p>>2]=1,o[p+4>>2]=0),10756}function Zne(p,y){p=p|0,y=y|0,aP(p,y)}function pbe(p){p=p|0,Ny(p,X7()|0,2)}function X7(){return 1772}function tLe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;U=B,B=B+32|0,Xe=U+16|0,bt=U+12|0,le=U,Ge=Sb(YVt()|0)|0,w=cU(w)|0,o[bt>>2]=o[G>>2],o[Xe>>2]=o[bt>>2],G=v3(Xe)|0,o[le>>2]=o[J>>2],Xe=J+4|0,o[le+4>>2]=o[Xe>>2],bt=J+8|0,o[le+8>>2]=o[bt>>2],o[bt>>2]=0,o[Xe>>2]=0,o[J>>2]=0,Zne(p,oA(0,Ge|0,y|0,w|0,G|0,yE(le)|0)|0),QL(le),B=U}function YVt(){var p=0;return n[8008]|0||(QVt(10768),p=8008,o[p>>2]=1,o[p+4>>2]=0),10768}function QVt(p){p=p|0,Ny(p,XVt()|0,3)}function XVt(){return 1784}function Wqe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,Ge=U+4|0,Xe=U,le=Sb(Oqe()|0)|0,w=cU(w)|0,o[Xe>>2]=o[G>>2],o[Ge>>2]=o[Xe>>2],G=v3(Ge)|0,Zne(p,oA(0,le|0,y|0,w|0,G|0,mAe(J)|0)|0),B=U}function Oqe(){var p=0;return n[8016]|0||(BAe(10780),p=8016,o[p>>2]=1,o[p+4>>2]=0),10780}function BAe(p){p=p|0,Ny(p,fbe()|0,3)}function fbe(){return 1800}function Ibe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=Sb(JVt()|0)|0,Zne(p,Ki(0,G|0,y|0,cU(w)|0)|0)}function JVt(){var p=0;return n[8024]|0||(Lne(10792),p=8024,o[p>>2]=1,o[p+4>>2]=0),10792}function Lne(p){p=p|0,Ny(p,Mqe()|0,1)}function Mqe(){return 1816}function UVt(){KVt(),Vne(),hbe()}function KVt(){o[2702]=pz(65536)|0}function Vne(){iLe(10856)}function hbe(){e$r(10816)}function e$r(p){p=p|0,LC(p,5044),J7(p)|0}function LC(p,y){p=p|0,y=y|0;var w=0;w=Fqe()|0,o[p>>2]=w,DP(w,y),BF(o[p>>2]|0)}function J7(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,rLe()|0),p|0}function rLe(){var p=0;return n[8032]|0||(Mg(10820),pu(64,10820,X|0)|0,p=8032,o[p>>2]=1,o[p+4>>2]=0),Xr(10820)|0||Mg(10820),10820}function Mg(p){p=p|0,nLe(p),G7(p,25)}function i0(p){p=p|0,k_(p+24|0)}function k_(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function nLe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,18,y,Pne()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function sS(p,y){p=p|0,y=y|0,kw(p,y)}function kw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;w=B,B=B+16|0,G=w,J=w+4|0,eS(J,y),o[G>>2]=rN(J,y)|0,JY(p,G),B=w}function JY(p,y){p=p|0,y=y|0,U7(p+4|0,o[y>>2]|0),n[p+8>>0]=1}function U7(p,y){p=p|0,y=y|0,o[p>>2]=y}function Pne(){return 1824}function NP(p){return p=p|0,Ly(p)|0}function Ly(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(4)|0,eS(J,p),U7(Ge,rN(J,p)|0),U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],iU(p,U,J),o[G>>2]=p,B=w,y|0}function Fb(p){p=p|0;var y=0,w=0;return p=p+7&-8,p>>>0<=32768&&(y=o[2701]|0,p>>>0<=(65536-y|0)>>>0)?(w=(o[2702]|0)+y|0,o[2701]=y+p,p=w):(p=pz(p+8|0)|0,o[p>>2]=o[2703],o[2703]=p,p=p+8|0),p|0}function DP(p,y){p=p|0,y=y|0,o[p>>2]=wAe()|0,o[p+4>>2]=TF()|0,o[p+12>>2]=y,o[p+8>>2]=Wne()|0,o[p+32>>2]=9}function wAe(){return 11744}function TF(){return 1832}function Wne(){return F7()|0}function One(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(TAe(w),ti(w)):y|0&&ti(y)}function TAe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function iLe(p){p=p|0,sLe(p,5052),lU(p)|0,oLe(p,5058,26)|0,a_(p,5069,1)|0,RAe(p,5077,10)|0,mbe(p,5087,19)|0,aLe(p,5094,27)|0}function sLe(p,y){p=p|0,y=y|0;var w=0;w=az()|0,o[p>>2]=w,HAe(w,y),BF(o[p>>2]|0)}function lU(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,SLe()|0),p|0}function oLe(p,y,w){return p=p|0,y=y|0,w=w|0,kbe(p,ff(y)|0,w,0),p|0}function a_(p,y,w){return p=p|0,y=y|0,w=w|0,Jne(p,ff(y)|0,w,0),p|0}function RAe(p,y,w){return p=p|0,y=y|0,w=w|0,nPt(p,ff(y)|0,w,0),p|0}function mbe(p,y,w){return p=p|0,y=y|0,w=w|0,Xqe(p,ff(y)|0,w,0),p|0}function Cbe(p,y){p=p|0,y=y|0;var w=0,G=0;e:for(;;){for(w=o[2703]|0;;){if((w|0)==(y|0))break e;if(G=o[w>>2]|0,o[2703]=G,!w)w=G;else break}ti(w)}o[2701]=p}function aLe(p,y,w){return p=p|0,y=y|0,w=w|0,cLe(p,ff(y)|0,w,0),p|0}function cLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=K7()|0,p=NAe(w)|0,bd(U,y,J,p,Mne(w,G)|0,G)}function K7(){var p=0,y=0;if(n[8040]|0||(DAe(10860),pu(65,10860,X|0)|0,y=8040,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10860)|0)){p=10860,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));DAe(10860)}return 10860}function NAe(p){return p=p|0,p|0}function Mne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=K7()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Hne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(_be(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Hne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function _be(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=ybe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,jVt(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Hne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Hqe(p,J),zVt(J),B=Ge;return}}function ybe(p){return p=p|0,536870911}function jVt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Hqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function zVt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function DAe(p){p=p|0,qVt(p)}function lLe(p){p=p|0,Yqe(p+24|0)}function Yqe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function qVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,$Vt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function $Vt(){return 1840}function ePt(p,y,w){p=p|0,y=y|0,w=w|0,Qqe(o[(uLe(p)|0)>>2]|0,y,w)}function uLe(p){return p=p|0,(o[(K7()|0)+24>>2]|0)+(p<<3)|0}function Qqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;G=B,B=B+16|0,U=G+1|0,J=G,eS(U,y),y=rN(U,y)|0,eS(J,w),w=rN(J,w)|0,qD[p&31](y,w),B=G}function Xqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=bbe()|0,p=gLe(w)|0,bd(U,y,J,p,j7(w,G)|0,G)}function bbe(){var p=0,y=0;if(n[8048]|0||(zD(10896),pu(66,10896,X|0)|0,y=8048,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10896)|0)){p=10896,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zD(10896)}return 10896}function gLe(p){return p=p|0,p|0}function j7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=bbe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Yne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Ebe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Yne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Ebe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Sbe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,kAe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Yne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,ALe(p,J),xAe(J),B=Ge;return}}function Sbe(p){return p=p|0,536870911}function kAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function ALe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function xAe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function zD(p){p=p|0,rPt(p)}function vbe(p){p=p|0,tPt(p+24|0)}function tPt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function rPt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,GAe()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function GAe(){return 1852}function FAe(p,y){return p=p|0,y=y|0,Bbe(o[(ZAe(p)|0)>>2]|0,y)|0}function ZAe(p){return p=p|0,(o[(bbe()|0)+24>>2]|0)+(p<<3)|0}function Bbe(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,eS(G,y),y=rN(G,y)|0,y=_J(mC[p&31](y)|0)|0,B=w,y|0}function nPt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=dLe()|0,p=iPt(w)|0,bd(U,y,J,p,uU(w,G)|0,G)}function dLe(){var p=0,y=0;if(n[8056]|0||(q7(10932),pu(67,10932,X|0)|0,y=8056,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10932)|0)){p=10932,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));q7(10932)}return 10932}function iPt(p){return p=p|0,p|0}function uU(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=dLe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(LAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(sPt(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function LAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function sPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=VAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,Qne(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,LAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,PAe(p,J),z7(J),B=Ge;return}}function VAe(p){return p=p|0,536870911}function Qne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function PAe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function z7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function q7(p){p=p|0,w3(p)}function oPt(p){p=p|0,pN(p+24|0)}function pN(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function w3(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,7,y,pLe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function pLe(){return 1860}function fLe(p,y,w){return p=p|0,y=y|0,w=w|0,ILe(o[(aPt(p)|0)>>2]|0,y,w)|0}function aPt(p){return p=p|0,(o[(dLe()|0)+24>>2]|0)+(p<<3)|0}function ILe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+32|0,le=G+12|0,U=G+8|0,Ge=G,Xe=G+16|0,J=G+4|0,cPt(Xe,y),wbe(Ge,Xe,y),vx(J,w),w=IF(J,w)|0,o[le>>2]=o[Ge>>2],UT[p&15](U,le,w),w=Jqe(U)|0,r_(U),_B(J),B=G,w|0}function cPt(p,y){p=p|0,y=y|0}function wbe(p,y,w){p=p|0,y=y|0,w=w|0,Xne(p,w)}function Jqe(p){return p=p|0,qf(p)|0}function Xne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+16|0,w=J,G=y,G&1?(hLe(w,0),mI(G|0,w|0)|0,s0(p,w),mLe(w)):o[p>>2]=o[y>>2],B=J}function hLe(p,y){p=p|0,y=y|0,j(p,y),o[p+4>>2]=0,n[p+8>>0]=0}function s0(p,y){p=p|0,y=y|0,o[p>>2]=o[y+4>>2]}function mLe(p){p=p|0,n[p+8>>0]=0}function Jne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=fN()|0,p=UY(w)|0,bd(U,y,J,p,Uqe(w,G)|0,G)}function fN(){var p=0,y=0;if(n[8064]|0||(QT(10968),pu(68,10968,X|0)|0,y=8064,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10968)|0)){p=10968,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));QT(10968)}return 10968}function UY(p){return p=p|0,p|0}function Uqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=fN()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?($7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(wB(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function $7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function wB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=WAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,ez(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,$7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,tz(p,J),Kqe(J),B=Ge;return}}function WAe(p){return p=p|0,536870911}function ez(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function tz(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Kqe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function QT(p){p=p|0,Rbe(p)}function rz(p){p=p|0,Tbe(p+24|0)}function Tbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Rbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,1,y,Nbe()|0,5),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nbe(){return 1872}function lg(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,Dbe(o[(CLe(p)|0)>>2]|0,y,w,G,J,U)}function CLe(p){return p=p|0,(o[(fN()|0)+24>>2]|0)+(p<<3)|0}function Dbe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+32|0,Ge=le+16|0,Xe=le+12|0,bt=le+8|0,It=le+4|0,rr=le,vx(Ge,y),y=IF(Ge,y)|0,vx(Xe,w),w=IF(Xe,w)|0,vx(bt,G),G=IF(bt,G)|0,vx(It,J),J=IF(It,J)|0,vx(rr,U),U=IF(rr,U)|0,l$e[p&1](y,w,G,J,U),_B(rr),_B(It),_B(bt),_B(Xe),_B(Ge),B=le}function kbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=T3()|0,p=_Le(w)|0,bd(U,y,J,p,jqe(w,G)|0,G)}function T3(){var p=0,y=0;if(n[8072]|0||(Une(11004),pu(69,11004,X|0)|0,y=8072,o[y>>2]=1,o[y+4>>2]=0),!(Xr(11004)|0)){p=11004,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Une(11004)}return 11004}function _Le(p){return p=p|0,p|0}function jqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=T3()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(gU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(OAe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function gU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function OAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=nz(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,kP(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,gU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,yLe(p,J),xbe(J),B=Ge;return}}function nz(p){return p=p|0,536870911}function kP(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function yLe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function xbe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Une(p){p=p|0,uPt(p)}function JL(p){p=p|0,lPt(p+24|0)}function lPt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function uPt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,12,y,gPt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function gPt(){return 1896}function bLe(p,y,w){p=p|0,y=y|0,w=w|0,iz(o[(ELe(p)|0)>>2]|0,y,w)}function ELe(p){return p=p|0,(o[(T3()|0)+24>>2]|0)+(p<<3)|0}function iz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;G=B,B=B+16|0,U=G+4|0,J=G,AU(U,y),y=TB(U,y)|0,vx(J,w),w=IF(J,w)|0,qD[p&31](y,w),_B(J),B=G}function AU(p,y){p=p|0,y=y|0}function TB(p,y){return p=p|0,y=y|0,Gbe(y)|0}function Gbe(p){return p=p|0,p|0}function SLe(){var p=0;return n[8080]|0||(XA(11040),pu(70,11040,X|0)|0,p=8080,o[p>>2]=1,o[p+4>>2]=0),Xr(11040)|0||XA(11040),11040}function XA(p){p=p|0,Fbe(p),G7(p,71)}function UL(p){p=p|0,APt(p+24|0)}function APt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Fbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,7,y,MAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function vLe(p){p=p|0,sz(p)}function sz(p){p=p|0,BLe(p)}function BLe(p){p=p|0,n[p+8>>0]=1}function MAe(){return 1936}function oz(){return wLe()|0}function wLe(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,U=p+4|0,o[U>>2]=Ku(1)|0,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],RF(G,U,J),o[w>>2]=G,B=y,p|0}function RF(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1916,o[w+12>>2]=y,o[p+4>>2]=w}function xP(p){p=p|0,dz(p),ti(p)}function IN(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function Kne(p){p=p|0,ti(p)}function az(){var p=0;return n[8088]|0||(YAe(11076),pu(25,11076,X|0)|0,p=8088,o[p>>2]=1,o[p+4>>2]=0),11076}function HAe(p,y){p=p|0,y=y|0,o[p>>2]=KY()|0,o[p+4>>2]=jne()|0,o[p+12>>2]=y,o[p+8>>2]=zne()|0,o[p+32>>2]=10}function KY(){return 11745}function jne(){return 1940}function zne(){return nI()|0}function Zbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(TLe(w),ti(w)):y|0&&ti(y)}function TLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function YAe(p){p=p|0,Hc(p)}function RB(p,y){p=p|0,y=y|0,o[p>>2]=y}function QAe(p){return p=p|0,o[p>>2]|0}function Lbe(p){return p=p|0,n[o[p>>2]>>0]|0}function Vbe(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,o[G>>2]=o[p>>2],XAe(y,G)|0,B=w}function XAe(p,y){p=p|0,y=y|0;var w=0;return w=cz(o[p>>2]|0,y)|0,y=p+4|0,o[(o[y>>2]|0)+8>>2]=w,o[(o[y>>2]|0)+8>>2]|0}function cz(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,xw(G),p=qf(p)|0,y=RLe(p,o[y>>2]|0)|0,oS(G),B=w,y|0}function xw(p){p=p|0,o[p>>2]=o[2701],o[p+4>>2]=o[2703]}function RLe(p,y){p=p|0,y=y|0;var w=0;return w=Sb(lz()|0)|0,Ki(0,w|0,p|0,mAe(y)|0)|0}function oS(p){p=p|0,Cbe(o[p>>2]|0,o[p+4>>2]|0)}function lz(){var p=0;return n[8096]|0||(Pbe(11120),p=8096,o[p>>2]=1,o[p+4>>2]=0),11120}function Pbe(p){p=p|0,Ny(p,g2()|0,1)}function g2(){return 1948}function A2(){jY()}function jY(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(zi=B,B=B+16|0,It=zi+4|0,rr=zi,Ul(65536,10804,o[2702]|0,10812),w=ibe()|0,y=o[w>>2]|0,p=o[y>>2]|0,p|0)for(G=o[w+8>>2]|0,w=o[w+4>>2]|0;Do(p|0,l[w>>0]|0|0,n[G>>0]|0),y=y+4|0,p=o[y>>2]|0,p;)G=G+1|0,w=w+1|0;if(p=sbe()|0,y=o[p>>2]|0,y|0)do Wt(y|0,o[p+4>>2]|0),p=p+8|0,y=o[p>>2]|0;while(y|0);Wt(NLe()|0,5167),bt=TP()|0,p=o[bt>>2]|0;e:do if(p|0){do dPt(o[p+4>>2]|0),p=o[p>>2]|0;while(p|0);if(p=o[bt>>2]|0,p|0){Xe=bt;do{for(;J=p,p=o[p>>2]|0,J=o[J+4>>2]|0,!!(R3(J)|0);)if(o[rr>>2]=Xe,o[It>>2]=o[rr>>2],JAe(bt,It)|0,!p)break e;if(DLe(J),Xe=o[Xe>>2]|0,y=$h(J)|0,U=OA()|0,le=B,B=B+((1*(y<<2)|0)+15&-16)|0,Ge=B,B=B+((1*(y<<2)|0)+15&-16)|0,y=o[(EAe(J)|0)>>2]|0,y|0)for(w=le,G=Ge;o[w>>2]=o[(Zy(o[y+4>>2]|0)|0)>>2],o[G>>2]=o[y+8>>2],y=o[y>>2]|0,y;)w=w+4|0,G=G+4|0;Un=Zy(J)|0,y=kLe(J)|0,w=$h(J)|0,G=Wbe(J)|0,Ju(Un|0,y|0,le|0,Ge|0,w|0,G|0,O7(J)|0),Da(U|0)}while(p|0)}}while(!1);if(p=o[(RP()|0)>>2]|0,p|0)do Un=p+4|0,bt=nU(Un)|0,J=Gy(bt)|0,U=f1(bt)|0,le=(IAe(bt)|0)+1|0,Ge=zY(bt)|0,Xe=UAe(Un)|0,bt=Xr(bt)|0,It=KD(Un)|0,rr=uz(Un)|0,Ru(0,J|0,U|0,le|0,Ge|0,Xe|0,bt|0,It|0,rr|0,KAe(Un)|0),p=o[p>>2]|0;while(p|0);p=o[(TP()|0)>>2]|0;e:do if(p|0){t:for(;;){if(y=o[p+4>>2]|0,y|0&&(an=o[(Zy(y)|0)>>2]|0,Ks=o[(Fne(y)|0)>>2]|0,Ks|0)){w=Ks;do{y=w+4|0,G=nU(y)|0;r:do if(G|0)switch(Xr(G)|0){case 0:break t;case 4:case 3:case 2:{Ge=Gy(G)|0,Xe=f1(G)|0,bt=(IAe(G)|0)+1|0,It=zY(G)|0,rr=Xr(G)|0,Un=KD(y)|0,Ru(an|0,Ge|0,Xe|0,bt|0,It|0,0,rr|0,Un|0,uz(y)|0,KAe(y)|0);break r}case 1:{le=Gy(G)|0,Ge=f1(G)|0,Xe=(IAe(G)|0)+1|0,bt=zY(G)|0,It=UAe(y)|0,rr=Xr(G)|0,Un=KD(y)|0,Ru(an|0,le|0,Ge|0,Xe|0,bt|0,It|0,rr|0,Un|0,uz(y)|0,KAe(y)|0);break r}case 5:{bt=Gy(G)|0,It=f1(G)|0,rr=(IAe(G)|0)+1|0,Un=zY(G)|0,Ru(an|0,bt|0,It|0,rr|0,Un|0,jAe(G)|0,Xr(G)|0,0,0,0);break r}default:break r}while(!1);w=o[w>>2]|0}while(w|0)}if(p=o[p>>2]|0,!p)break e}Ko()}while(!1);Yn(),B=zi}function NLe(){return 11703}function dPt(p){p=p|0,n[p+40>>0]=0}function R3(p){return p=p|0,(n[p+40>>0]|0)!=0|0}function JAe(p,y){return p=p|0,y=y|0,y=Obe(y)|0,p=o[y>>2]|0,o[y>>2]=o[p>>2],ti(p),o[y>>2]|0}function DLe(p){p=p|0,n[p+40>>0]=1}function $h(p){return p=p|0,o[p+20>>2]|0}function kLe(p){return p=p|0,o[p+8>>2]|0}function Wbe(p){return p=p|0,o[p+32>>2]|0}function zY(p){return p=p|0,o[p+4>>2]|0}function UAe(p){return p=p|0,o[p+4>>2]|0}function uz(p){return p=p|0,o[p+8>>2]|0}function KAe(p){return p=p|0,o[p+16>>2]|0}function jAe(p){return p=p|0,o[p+20>>2]|0}function Obe(p){return p=p|0,o[p>>2]|0}function qne(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0;hl=B,B=B+16|0,an=hl;do if(p>>>0<245){if(bt=p>>>0<11?16:p+11&-8,p=bt>>>3,rr=o[2783]|0,w=rr>>>p,w&3|0)return y=(w&1^1)+p|0,p=11172+(y<<1<<2)|0,w=p+8|0,G=o[w>>2]|0,J=G+8|0,U=o[J>>2]|0,(p|0)==(U|0)?o[2783]=rr&~(1<>2]=p,o[w>>2]=U),pi=y<<3,o[G+4>>2]=pi|3,pi=G+pi+4|0,o[pi>>2]=o[pi>>2]|1,pi=J,B=hl,pi|0;if(It=o[2785]|0,bt>>>0>It>>>0){if(w|0)return y=2<>>12&16,y=y>>>le,w=y>>>5&8,y=y>>>w,J=y>>>2&4,y=y>>>J,p=y>>>1&2,y=y>>>p,G=y>>>1&1,G=(w|le|J|p|G)+(y>>>G)|0,y=11172+(G<<1<<2)|0,p=y+8|0,J=o[p>>2]|0,le=J+8|0,w=o[le>>2]|0,(y|0)==(w|0)?(p=rr&~(1<>2]=y,o[p>>2]=w,p=rr),U=(G<<3)-bt|0,o[J+4>>2]=bt|3,G=J+bt|0,o[G+4>>2]=U|1,o[G+U>>2]=U,It|0&&(J=o[2788]|0,y=It>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=J,o[y+12>>2]=J,o[J+8>>2]=y,o[J+12>>2]=w),o[2785]=U,o[2788]=G,pi=le,B=hl,pi|0;if(Ge=o[2784]|0,Ge){if(w=(Ge&0-Ge)+-1|0,le=w>>>12&16,w=w>>>le,U=w>>>5&8,w=w>>>U,Xe=w>>>2&4,w=w>>>Xe,G=w>>>1&2,w=w>>>G,p=w>>>1&1,p=o[11436+((U|le|Xe|G|p)+(w>>>p)<<2)>>2]|0,w=(o[p+4>>2]&-8)-bt|0,G=o[p+16+(((o[p+16>>2]|0)==0&1)<<2)>>2]|0,!G)Xe=p,U=w;else{do le=(o[G+4>>2]&-8)-bt|0,Xe=le>>>0>>0,w=Xe?le:w,p=Xe?G:p,G=o[G+16+(((o[G+16>>2]|0)==0&1)<<2)>>2]|0;while(G|0);Xe=p,U=w}if(le=Xe+bt|0,Xe>>>0>>0){J=o[Xe+24>>2]|0,y=o[Xe+12>>2]|0;do if((y|0)==(Xe|0)){if(p=Xe+20|0,y=o[p>>2]|0,!y&&(p=Xe+16|0,y=o[p>>2]|0,!y)){w=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0,w=y}else w=o[Xe+8>>2]|0,o[w+12>>2]=y,o[y+8>>2]=w,w=y;while(!1);do if(J|0){if(y=o[Xe+28>>2]|0,p=11436+(y<<2)|0,(Xe|0)==(o[p>>2]|0)){if(o[p>>2]=w,!w){o[2784]=Ge&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=J,y=o[Xe+16>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),y=o[Xe+20>>2]|0,y|0&&(o[w+20>>2]=y,o[y+24>>2]=w)}while(!1);return U>>>0<16?(pi=U+bt|0,o[Xe+4>>2]=pi|3,pi=Xe+pi+4|0,o[pi>>2]=o[pi>>2]|1):(o[Xe+4>>2]=bt|3,o[le+4>>2]=U|1,o[le+U>>2]=U,It|0&&(G=o[2788]|0,y=It>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=rr|y,y=w,p=w+8|0),o[p>>2]=G,o[y+12>>2]=G,o[G+8>>2]=y,o[G+12>>2]=w),o[2785]=U,o[2788]=le),pi=Xe+8|0,B=hl,pi|0}else rr=bt}else rr=bt}else rr=bt}else if(p>>>0<=4294967231)if(p=p+11|0,bt=p&-8,Xe=o[2784]|0,Xe){G=0-bt|0,p=p>>>8,p?bt>>>0>16777215?Ge=31:(rr=(p+1048320|0)>>>16&8,ss=p<>>16&4,ss=ss<>>16&2,Ge=14-(It|rr|Ge)+(ss<>>15)|0,Ge=bt>>>(Ge+7|0)&1|Ge<<1):Ge=0,w=o[11436+(Ge<<2)>>2]|0;e:do if(!w)w=0,p=0,ss=57;else for(p=0,le=bt<<((Ge|0)==31?0:25-(Ge>>>1)|0),U=0;;){if(J=(o[w+4>>2]&-8)-bt|0,J>>>0>>0)if(J)p=w,G=J;else{p=w,G=0,J=w,ss=61;break e}if(J=o[w+20>>2]|0,w=o[w+16+(le>>>31<<2)>>2]|0,U=(J|0)==0|(J|0)==(w|0)?U:J,J=(w|0)==0,J){w=U,ss=57;break}else le=le<<((J^1)&1)}while(!1);if((ss|0)==57){if((w|0)==0&(p|0)==0){if(p=2<>>12&16,rr=rr>>>le,U=rr>>>5&8,rr=rr>>>U,Ge=rr>>>2&4,rr=rr>>>Ge,It=rr>>>1&2,rr=rr>>>It,w=rr>>>1&1,p=0,w=o[11436+((U|le|Ge|It|w)+(rr>>>w)<<2)>>2]|0}w?(J=w,ss=61):(Ge=p,le=G)}if((ss|0)==61)for(;;)if(ss=0,w=(o[J+4>>2]&-8)-bt|0,rr=w>>>0>>0,w=rr?w:G,p=rr?J:p,J=o[J+16+(((o[J+16>>2]|0)==0&1)<<2)>>2]|0,J)G=w,ss=61;else{Ge=p,le=w;break}if(Ge|0&&le>>>0<((o[2785]|0)-bt|0)>>>0){if(U=Ge+bt|0,Ge>>>0>=U>>>0)return pi=0,B=hl,pi|0;J=o[Ge+24>>2]|0,y=o[Ge+12>>2]|0;do if((y|0)==(Ge|0)){if(p=Ge+20|0,y=o[p>>2]|0,!y&&(p=Ge+16|0,y=o[p>>2]|0,!y)){y=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0}else pi=o[Ge+8>>2]|0,o[pi+12>>2]=y,o[y+8>>2]=pi;while(!1);do if(J){if(p=o[Ge+28>>2]|0,w=11436+(p<<2)|0,(Ge|0)==(o[w>>2]|0)){if(o[w>>2]=y,!y){G=Xe&~(1<>2]|0)!=(Ge|0)&1)<<2)>>2]=y,!y){G=Xe;break}o[y+24>>2]=J,p=o[Ge+16>>2]|0,p|0&&(o[y+16>>2]=p,o[p+24>>2]=y),p=o[Ge+20>>2]|0,p&&(o[y+20>>2]=p,o[p+24>>2]=y),G=Xe}else G=Xe;while(!1);do if(le>>>0>=16){if(o[Ge+4>>2]=bt|3,o[U+4>>2]=le|1,o[U+le>>2]=le,y=le>>>3,le>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=U,o[y+12>>2]=U,o[U+8>>2]=y,o[U+12>>2]=w;break}if(y=le>>>8,y?le>>>0>16777215?y=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=le>>>(y+7|0)&1|y<<1):y=0,w=11436+(y<<2)|0,o[U+28>>2]=y,p=U+16|0,o[p+4>>2]=0,o[p>>2]=0,p=1<>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}for(p=le<<((y|0)==31?0:25-(y>>>1)|0),w=o[w>>2]|0;;){if((o[w+4>>2]&-8|0)==(le|0)){ss=97;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=96;break}}if((ss|0)==96){o[G>>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}else if((ss|0)==97){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=U,o[ss>>2]=U,o[U+8>>2]=pi,o[U+12>>2]=w,o[U+24>>2]=0;break}}else pi=le+bt|0,o[Ge+4>>2]=pi|3,pi=Ge+pi+4|0,o[pi>>2]=o[pi>>2]|1;while(!1);return pi=Ge+8|0,B=hl,pi|0}else rr=bt}else rr=bt;else rr=-1;while(!1);if(w=o[2785]|0,w>>>0>=rr>>>0)return y=w-rr|0,p=o[2788]|0,y>>>0>15?(pi=p+rr|0,o[2788]=pi,o[2785]=y,o[pi+4>>2]=y|1,o[pi+y>>2]=y,o[p+4>>2]=rr|3):(o[2785]=0,o[2788]=0,o[p+4>>2]=w|3,pi=p+w+4|0,o[pi>>2]=o[pi>>2]|1),pi=p+8|0,B=hl,pi|0;if(le=o[2786]|0,le>>>0>rr>>>0)return So=le-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=hl,pi|0;if(o[2901]|0?p=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,p=an&-16^1431655768,o[an>>2]=p,o[2901]=p,p=4096),Ge=rr+48|0,Xe=rr+47|0,U=p+Xe|0,J=0-p|0,bt=U&J,bt>>>0<=rr>>>0||(p=o[2893]|0,p|0&&(It=o[2891]|0,an=It+bt|0,an>>>0<=It>>>0|an>>>0>p>>>0)))return pi=0,B=hl,pi|0;e:do if(o[2894]&4)y=0,ss=133;else{w=o[2789]|0;t:do if(w){for(G=11580;p=o[G>>2]|0,!(p>>>0<=w>>>0&&(Un=G+4|0,(p+(o[Un>>2]|0)|0)>>>0>w>>>0));)if(p=o[G+8>>2]|0,p)G=p;else{ss=118;break t}if(y=U-le&J,y>>>0<2147483647)if(p=kB(y|0)|0,(p|0)==((o[G>>2]|0)+(o[Un>>2]|0)|0)){if((p|0)!=-1){le=y,U=p,ss=135;break e}}else G=p,ss=126;else y=0}else ss=118;while(!1);do if((ss|0)==118)if(w=kB(0)|0,(w|0)!=-1&&(y=w,Ks=o[2902]|0,zi=Ks+-1|0,y=(zi&y|0?(zi+y&0-Ks)-y|0:0)+bt|0,Ks=o[2891]|0,zi=y+Ks|0,y>>>0>rr>>>0&y>>>0<2147483647)){if(Un=o[2893]|0,Un|0&&zi>>>0<=Ks>>>0|zi>>>0>Un>>>0){y=0;break}if(p=kB(y|0)|0,(p|0)==(w|0)){le=y,U=w,ss=135;break e}else G=p,ss=126}else y=0;while(!1);do if((ss|0)==126){if(w=0-y|0,!(Ge>>>0>y>>>0&(y>>>0<2147483647&(G|0)!=-1)))if((G|0)==-1){y=0;break}else{le=y,U=G,ss=135;break e}if(p=o[2903]|0,p=Xe-y+p&0-p,p>>>0>=2147483647){le=y,U=G,ss=135;break e}if((kB(p|0)|0)==-1){kB(w|0)|0,y=0;break}else{le=p+y|0,U=G,ss=135;break e}}while(!1);o[2894]=o[2894]|4,ss=133}while(!1);if((ss|0)==133&&bt>>>0<2147483647&&(So=kB(bt|0)|0,Un=kB(0)|0,Ds=Un-So|0,Si=Ds>>>0>(rr+40|0)>>>0,!((So|0)==-1|Si^1|So>>>0>>0&((So|0)!=-1&(Un|0)!=-1)^1))&&(le=Si?Ds:y,U=So,ss=135),(ss|0)==135){y=(o[2891]|0)+le|0,o[2891]=y,y>>>0>(o[2892]|0)>>>0&&(o[2892]=y),Xe=o[2789]|0;do if(Xe){for(y=11580;;){if(p=o[y>>2]|0,w=y+4|0,G=o[w>>2]|0,(U|0)==(p+G|0)){ss=145;break}if(J=o[y+8>>2]|0,J)y=J;else break}if((ss|0)==145&&!(o[y+12>>2]&8|0)&&Xe>>>0>>0&Xe>>>0>=p>>>0){o[w>>2]=G+le,pi=Xe+8|0,pi=pi&7|0?0-pi&7:0,ss=Xe+pi|0,pi=(o[2786]|0)+(le-pi)|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905];break}for(U>>>0<(o[2787]|0)>>>0&&(o[2787]=U),w=U+le|0,y=11580;;){if((o[y>>2]|0)==(w|0)){ss=153;break}if(p=o[y+8>>2]|0,p)y=p;else break}if((ss|0)==153&&!(o[y+12>>2]&8|0)){o[y>>2]=U,It=y+4|0,o[It>>2]=(o[It>>2]|0)+le,It=U+8|0,It=U+(It&7|0?0-It&7:0)|0,y=w+8|0,y=w+(y&7|0?0-y&7:0)|0,bt=It+rr|0,Ge=y-It-rr|0,o[It+4>>2]=rr|3;do if((y|0)!=(Xe|0)){if((y|0)==(o[2788]|0)){pi=(o[2785]|0)+Ge|0,o[2785]=pi,o[2788]=bt,o[bt+4>>2]=pi|1,o[bt+pi>>2]=pi;break}if(p=o[y+4>>2]|0,(p&3|0)==1){le=p&-8,G=p>>>3;e:do if(p>>>0<256)if(p=o[y+8>>2]|0,w=o[y+12>>2]|0,(w|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=w,o[w+8>>2]=p;break}else{U=o[y+24>>2]|0,p=o[y+12>>2]|0;do if((p|0)==(y|0)){if(G=y+16|0,w=G+4|0,p=o[w>>2]|0,!p)if(p=o[G>>2]|0,p)w=G;else{p=0;break}for(;;){if(G=p+20|0,J=o[G>>2]|0,J|0){p=J,w=G;continue}if(G=p+16|0,J=o[G>>2]|0,J)p=J,w=G;else break}o[w>>2]=0}else pi=o[y+8>>2]|0,o[pi+12>>2]=p,o[p+8>>2]=pi;while(!1);if(!U)break;w=o[y+28>>2]|0,G=11436+(w<<2)|0;do if((y|0)!=(o[G>>2]|0)){if(o[U+16+(((o[U+16>>2]|0)!=(y|0)&1)<<2)>>2]=p,!p)break e}else{if(o[G>>2]=p,p|0)break;o[2784]=o[2784]&~(1<>2]=U,w=y+16|0,G=o[w>>2]|0,G|0&&(o[p+16>>2]=G,o[G+24>>2]=p),w=o[w+4>>2]|0,!w)break;o[p+20>>2]=w,o[w+24>>2]=p}while(!1);y=y+le|0,J=le+Ge|0}else J=Ge;if(y=y+4|0,o[y>>2]=o[y>>2]&-2,o[bt+4>>2]=J|1,o[bt+J>>2]=J,y=J>>>3,J>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=bt,o[y+12>>2]=bt,o[bt+8>>2]=y,o[bt+12>>2]=w;break}y=J>>>8;do if(!y)y=0;else{if(J>>>0>16777215){y=31;break}ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=J>>>(y+7|0)&1|y<<1}while(!1);if(G=11436+(y<<2)|0,o[bt+28>>2]=y,p=bt+16|0,o[p+4>>2]=0,o[p>>2]=0,p=o[2784]|0,w=1<>2]=bt,o[bt+24>>2]=G,o[bt+12>>2]=bt,o[bt+8>>2]=bt;break}for(p=J<<((y|0)==31?0:25-(y>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(J|0)){ss=194;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=193;break}}if((ss|0)==193){o[G>>2]=bt,o[bt+24>>2]=w,o[bt+12>>2]=bt,o[bt+8>>2]=bt;break}else if((ss|0)==194){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=bt,o[ss>>2]=bt,o[bt+8>>2]=pi,o[bt+12>>2]=w,o[bt+24>>2]=0;break}}else pi=(o[2786]|0)+Ge|0,o[2786]=pi,o[2789]=bt,o[bt+4>>2]=pi|1;while(!1);return pi=It+8|0,B=hl,pi|0}for(y=11580;p=o[y>>2]|0,!(p>>>0<=Xe>>>0&&(pi=p+(o[y+4>>2]|0)|0,pi>>>0>Xe>>>0));)y=o[y+8>>2]|0;J=pi+-47|0,p=J+8|0,p=J+(p&7|0?0-p&7:0)|0,J=Xe+16|0,p=p>>>0>>0?Xe:p,y=p+8|0,w=U+8|0,w=w&7|0?0-w&7:0,ss=U+w|0,w=le+-40-w|0,o[2789]=ss,o[2786]=w,o[ss+4>>2]=w|1,o[ss+w+4>>2]=40,o[2790]=o[2905],w=p+4|0,o[w>>2]=27,o[y>>2]=o[2895],o[y+4>>2]=o[2896],o[y+8>>2]=o[2897],o[y+12>>2]=o[2898],o[2895]=U,o[2896]=le,o[2898]=0,o[2897]=y,y=p+24|0;do ss=y,y=y+4|0,o[y>>2]=7;while((ss+8|0)>>>0>>0);if((p|0)!=(Xe|0)){if(U=p-Xe|0,o[w>>2]=o[w>>2]&-2,o[Xe+4>>2]=U|1,o[p>>2]=U,y=U>>>3,U>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=Xe,o[y+12>>2]=Xe,o[Xe+8>>2]=y,o[Xe+12>>2]=w;break}if(y=U>>>8,y?U>>>0>16777215?w=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,w=14-(So|ss|w)+(pi<>>15)|0,w=U>>>(w+7|0)&1|w<<1):w=0,G=11436+(w<<2)|0,o[Xe+28>>2]=w,o[Xe+20>>2]=0,o[J>>2]=0,y=o[2784]|0,p=1<>2]=Xe,o[Xe+24>>2]=G,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}for(p=U<<((w|0)==31?0:25-(w>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(U|0)){ss=216;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=215;break}}if((ss|0)==215){o[G>>2]=Xe,o[Xe+24>>2]=w,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}else if((ss|0)==216){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=Xe,o[ss>>2]=Xe,o[Xe+8>>2]=pi,o[Xe+12>>2]=w,o[Xe+24>>2]=0;break}}}else{pi=o[2787]|0,(pi|0)==0|U>>>0>>0&&(o[2787]=U),o[2895]=U,o[2896]=le,o[2898]=0,o[2792]=o[2901],o[2791]=-1,y=0;do pi=11172+(y<<1<<2)|0,o[pi+12>>2]=pi,o[pi+8>>2]=pi,y=y+1|0;while((y|0)!=32);pi=U+8|0,pi=pi&7|0?0-pi&7:0,ss=U+pi|0,pi=le+-40-pi|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905]}while(!1);if(y=o[2786]|0,y>>>0>rr>>>0)return So=y-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=hl,pi|0}return o[(qY()|0)>>2]=12,pi=0,B=hl,pi|0}function $ne(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;if(p){w=p+-8|0,J=o[2787]|0,p=o[p+-4>>2]|0,y=p&-8,Xe=w+y|0;do if(p&1)Ge=w,le=w;else{if(G=o[w>>2]|0,!(p&3)||(le=w+(0-G)|0,U=G+y|0,le>>>0>>0))return;if((le|0)==(o[2788]|0)){if(p=Xe+4|0,y=o[p>>2]|0,(y&3|0)!=3){Ge=le,y=U;break}o[2785]=U,o[p>>2]=y&-2,o[le+4>>2]=U|1,o[le+U>>2]=U;return}if(w=G>>>3,G>>>0<256)if(p=o[le+8>>2]|0,y=o[le+12>>2]|0,(y|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=y,o[y+8>>2]=p,Ge=le,y=U;break}J=o[le+24>>2]|0,p=o[le+12>>2]|0;do if((p|0)==(le|0)){if(w=le+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{p=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0}else Ge=o[le+8>>2]|0,o[Ge+12>>2]=p,o[p+8>>2]=Ge;while(!1);if(J){if(y=o[le+28>>2]|0,w=11436+(y<<2)|0,(le|0)==(o[w>>2]|0)){if(o[w>>2]=p,!p){o[2784]=o[2784]&~(1<>2]|0)!=(le|0)&1)<<2)>>2]=p,!p){Ge=le,y=U;break}o[p+24>>2]=J,y=le+16|0,w=o[y>>2]|0,w|0&&(o[p+16>>2]=w,o[w+24>>2]=p),y=o[y+4>>2]|0,y?(o[p+20>>2]=y,o[y+24>>2]=p,Ge=le,y=U):(Ge=le,y=U)}else Ge=le,y=U}while(!1);if(!(le>>>0>=Xe>>>0)&&(p=Xe+4|0,G=o[p>>2]|0,!!(G&1))){if(G&2)o[p>>2]=G&-2,o[Ge+4>>2]=y|1,o[le+y>>2]=y,J=y;else{if(p=o[2788]|0,(Xe|0)==(o[2789]|0)){if(Xe=(o[2786]|0)+y|0,o[2786]=Xe,o[2789]=Ge,o[Ge+4>>2]=Xe|1,(Ge|0)!=(p|0))return;o[2788]=0,o[2785]=0;return}if((Xe|0)==(p|0)){Xe=(o[2785]|0)+y|0,o[2785]=Xe,o[2788]=le,o[Ge+4>>2]=Xe|1,o[le+Xe>>2]=Xe;return}J=(G&-8)+y|0,w=G>>>3;do if(G>>>0<256)if(y=o[Xe+8>>2]|0,p=o[Xe+12>>2]|0,(p|0)==(y|0)){o[2783]=o[2783]&~(1<>2]=p,o[p+8>>2]=y;break}else{U=o[Xe+24>>2]|0,p=o[Xe+12>>2]|0;do if((p|0)==(Xe|0)){if(w=Xe+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{w=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0,w=p}else w=o[Xe+8>>2]|0,o[w+12>>2]=p,o[p+8>>2]=w,w=p;while(!1);if(U|0){if(p=o[Xe+28>>2]|0,y=11436+(p<<2)|0,(Xe|0)==(o[y>>2]|0)){if(o[y>>2]=w,!w){o[2784]=o[2784]&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=U,p=Xe+16|0,y=o[p>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),p=o[p+4>>2]|0,p|0&&(o[w+20>>2]=p,o[p+24>>2]=w)}}while(!1);if(o[Ge+4>>2]=J|1,o[le+J>>2]=J,(Ge|0)==(o[2788]|0)){o[2785]=J;return}}if(p=J>>>3,J>>>0<256){w=11172+(p<<1<<2)|0,y=o[2783]|0,p=1<>2]|0):(o[2783]=y|p,p=w,y=w+8|0),o[y>>2]=Ge,o[p+12>>2]=Ge,o[Ge+8>>2]=p,o[Ge+12>>2]=w;return}p=J>>>8,p?J>>>0>16777215?p=31:(le=(p+1048320|0)>>>16&8,Xe=p<>>16&4,Xe=Xe<>>16&2,p=14-(U|le|p)+(Xe<

>>15)|0,p=J>>>(p+7|0)&1|p<<1):p=0,G=11436+(p<<2)|0,o[Ge+28>>2]=p,o[Ge+20>>2]=0,o[Ge+16>>2]=0,y=o[2784]|0,w=1<>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(J|0)){p=73;break}if(G=w+16+(y>>>31<<2)|0,p=o[G>>2]|0,p)y=y<<1,w=p;else{p=72;break}}if((p|0)==72){o[G>>2]=Ge,o[Ge+24>>2]=w,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;break}else if((p|0)==73){le=w+8|0,Xe=o[le>>2]|0,o[Xe+12>>2]=Ge,o[le>>2]=Ge,o[Ge+8>>2]=Xe,o[Ge+12>>2]=w,o[Ge+24>>2]=0;break}}else o[2784]=y|w,o[G>>2]=Ge,o[Ge+24>>2]=G,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;while(!1);if(Xe=(o[2791]|0)+-1|0,o[2791]=Xe,!Xe)p=11588;else return;for(;p=o[p>>2]|0,p;)p=p+8|0;o[2791]=-1}}}function zAe(){return 11628}function dU(p){p=p|0;var y=0,w=0;return y=B,B=B+16|0,w=y,o[w>>2]=gz(o[p+60>>2]|0)|0,p=tie(Xs(6,w|0)|0)|0,B=y,p|0}function eie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0;rr=B,B=B+48|0,bt=rr+16|0,U=rr,J=rr+32|0,Ge=p+28|0,G=o[Ge>>2]|0,o[J>>2]=G,Xe=p+20|0,G=(o[Xe>>2]|0)-G|0,o[J+4>>2]=G,o[J+8>>2]=y,o[J+12>>2]=w,G=G+w|0,le=p+60|0,o[U>>2]=o[le>>2],o[U+4>>2]=J,o[U+8>>2]=2,U=tie(Ma(146,U|0)|0)|0;e:do if((G|0)!=(U|0)){for(y=2;!((U|0)<0);)if(G=G-U|0,Ks=o[J+4>>2]|0,an=U>>>0>Ks>>>0,J=an?J+8|0:J,y=(an<<31>>31)+y|0,Ks=U-(an?Ks:0)|0,o[J>>2]=(o[J>>2]|0)+Ks,an=J+4|0,o[an>>2]=(o[an>>2]|0)-Ks,o[bt>>2]=o[le>>2],o[bt+4>>2]=J,o[bt+8>>2]=y,U=tie(Ma(146,bt|0)|0)|0,(G|0)==(U|0)){It=3;break e}o[p+16>>2]=0,o[Ge>>2]=0,o[Xe>>2]=0,o[p>>2]=o[p>>2]|32,(y|0)==2?w=0:w=w-(o[J+4>>2]|0)|0}else It=3;while(!1);return(It|0)==3&&(Ks=o[p+44>>2]|0,o[p+16>>2]=Ks+(o[p+48>>2]|0),o[Ge>>2]=Ks,o[Xe>>2]=Ks),B=rr,w|0}function pPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return J=B,B=B+32|0,U=J,G=J+20|0,o[U>>2]=o[p+60>>2],o[U+4>>2]=0,o[U+8>>2]=y,o[U+12>>2]=G,o[U+16>>2]=w,(tie(Gs(140,U|0)|0)|0)<0?(o[G>>2]=-1,p=-1):p=o[G>>2]|0,B=J,p|0}function tie(p){return p=p|0,p>>>0>4294963200&&(o[(qY()|0)>>2]=0-p,p=-1),p|0}function qY(){return(Mbe()|0)+64|0}function Mbe(){return rie()|0}function rie(){return 2084}function gz(p){return p=p|0,p|0}function Hbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;return J=B,B=B+32|0,G=J,o[p+36>>2]=1,!(o[p>>2]&64|0)&&(o[G>>2]=o[p+60>>2],o[G+4>>2]=21523,o[G+8>>2]=J+16,GA(54,G|0)|0)&&(n[p+75>>0]=-1),G=eie(p,y,w)|0,B=J,G|0}function zqe(p,y){p=p|0,y=y|0;var w=0,G=0;if(w=n[p>>0]|0,G=n[y>>0]|0,!(w<<24>>24)||w<<24>>24!=G<<24>>24)p=G;else{do p=p+1|0,y=y+1|0,w=n[p>>0]|0,G=n[y>>0]|0;while(!(!(w<<24>>24)||w<<24>>24!=G<<24>>24));p=G}return(w&255)-(p&255)|0}function xLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;e:do if(!w)p=0;else{for(;G=n[p>>0]|0,J=n[y>>0]|0,G<<24>>24==J<<24>>24;)if(w=w+-1|0,w)p=p+1|0,y=y+1|0;else{p=0;break e}p=(G&255)-(J&255)|0}while(!1);return p|0}function qAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;Un=B,B=B+224|0,It=Un+120|0,rr=Un+80|0,Ks=Un,zi=Un+136|0,G=rr,J=G+40|0;do o[G>>2]=0,G=G+4|0;while((G|0)<(J|0));return o[It>>2]=o[w>>2],(JA(0,y,It,Ks,rr)|0)<0?w=-1:((o[p+76>>2]|0)>-1?an=nie(p)|0:an=0,w=o[p>>2]|0,bt=w&32,(n[p+74>>0]|0)<1&&(o[p>>2]=w&-33),G=p+48|0,o[G>>2]|0?w=JA(p,y,It,Ks,rr)|0:(J=p+44|0,U=o[J>>2]|0,o[J>>2]=zi,le=p+28|0,o[le>>2]=zi,Ge=p+20|0,o[Ge>>2]=zi,o[G>>2]=80,Xe=p+16|0,o[Xe>>2]=zi+80,w=JA(p,y,It,Ks,rr)|0,U&&(KL[o[p+36>>2]&7](p,0,0)|0,w=o[Ge>>2]|0?w:-1,o[J>>2]=U,o[G>>2]=0,o[Xe>>2]=0,o[le>>2]=0,o[Ge>>2]=0)),G=o[p>>2]|0,o[p>>2]=G|bt,an|0&&qqe(p),w=G&32|0?-1:w),B=Un,w|0}function JA(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0;wg=B,B=B+64|0,fl=wg+16|0,Tc=wg,hl=wg+24|0,Bg=wg+8|0,Dg=wg+20|0,o[fl>>2]=y,So=(p|0)!=0,ss=hl+40|0,pi=ss,hl=hl+39|0,uu=Bg+4|0,le=0,U=0,It=0;e:for(;;){do if((U|0)>-1)if((le|0)>(2147483647-U|0)){o[(qY()|0)>>2]=75,U=-1;break}else{U=le+U|0;break}while(!1);if(le=n[y>>0]|0,le<<24>>24)Ge=y;else{Si=87;break}t:for(;;){switch(le<<24>>24){case 37:{le=Ge,Si=9;break t}case 0:{le=Ge;break t}default:}Ds=Ge+1|0,o[fl>>2]=Ds,le=n[Ds>>0]|0,Ge=Ds}t:do if((Si|0)==9)for(;;){if(Si=0,(n[Ge+1>>0]|0)!=37)break t;if(le=le+1|0,Ge=Ge+2|0,o[fl>>2]=Ge,(n[Ge>>0]|0)==37)Si=9;else break}while(!1);if(le=le-y|0,So&&o0(p,y,le),le|0){y=Ge;continue}Xe=Ge+1|0,le=(n[Xe>>0]|0)+-48|0,le>>>0<10?(Ds=(n[Ge+2>>0]|0)==36,Un=Ds?le:-1,It=Ds?1:It,Xe=Ds?Ge+3|0:Xe):Un=-1,o[fl>>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0;t:do if(Ge>>>0<32)for(bt=0,rr=le;;){if(le=1<>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0,Ge>>>0>=32)break;rr=le}else bt=0;while(!1);if(le<<24>>24==42){if(Ge=Xe+1|0,le=(n[Ge>>0]|0)+-48|0,le>>>0<10&&(n[Xe+2>>0]|0)==36)o[J+(le<<2)>>2]=10,le=o[G+((n[Ge>>0]|0)+-48<<3)>>2]|0,It=1,Xe=Xe+3|0;else{if(It|0){U=-1;break}So?(It=(o[w>>2]|0)+3&-4,le=o[It>>2]|0,o[w>>2]=It+4,It=0,Xe=Ge):(le=0,It=0,Xe=Ge)}o[fl>>2]=Xe,Ds=(le|0)<0,le=Ds?0-le|0:le,bt=Ds?bt|8192:bt}else{if(le=$Ae(fl)|0,(le|0)<0){U=-1;break}Xe=o[fl>>2]|0}do if((n[Xe>>0]|0)==46){if((n[Xe+1>>0]|0)!=42){o[fl>>2]=Xe+1,Ge=$Ae(fl)|0,Xe=o[fl>>2]|0;break}if(rr=Xe+2|0,Ge=(n[rr>>0]|0)+-48|0,Ge>>>0<10&&(n[Xe+3>>0]|0)==36){o[J+(Ge<<2)>>2]=10,Ge=o[G+((n[rr>>0]|0)+-48<<3)>>2]|0,Xe=Xe+4|0,o[fl>>2]=Xe;break}if(It|0){U=-1;break e}So?(Ds=(o[w>>2]|0)+3&-4,Ge=o[Ds>>2]|0,o[w>>2]=Ds+4):Ge=0,o[fl>>2]=rr,Xe=rr}else Ge=-1;while(!1);for(zi=0;;){if(((n[Xe>>0]|0)+-65|0)>>>0>57){U=-1;break e}if(Ds=Xe+1|0,o[fl>>2]=Ds,rr=n[(n[Xe>>0]|0)+-65+(5178+(zi*58|0))>>0]|0,an=rr&255,(an+-1|0)>>>0<8)zi=an,Xe=Ds;else break}if(!(rr<<24>>24)){U=-1;break}Ks=(Un|0)>-1;do if(rr<<24>>24==19)if(Ks){U=-1;break e}else Si=49;else{if(Ks){o[J+(Un<<2)>>2]=an,Ks=G+(Un<<3)|0,Un=o[Ks+4>>2]|0,Si=Tc,o[Si>>2]=o[Ks>>2],o[Si+4>>2]=Un,Si=49;break}if(!So){U=0;break e}Vy(Tc,an,w)}while(!1);if((Si|0)==49&&(Si=0,!So)){le=0,y=Ds;continue}Xe=n[Xe>>0]|0,Xe=(zi|0)!=0&(Xe&15|0)==3?Xe&-33:Xe,Ks=bt&-65537,Un=bt&8192|0?Ks:bt;t:do switch(Xe|0){case 110:switch((zi&255)<<24>>24){case 0:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 1:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 2:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}case 3:{a[o[Tc>>2]>>1]=U,le=0,y=Ds;continue e}case 4:{n[o[Tc>>2]>>0]=U,le=0,y=Ds;continue e}case 6:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 7:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}default:{le=0,y=Ds;continue e}}case 112:{Xe=120,Ge=Ge>>>0>8?Ge:8,y=Un|8,Si=61;break}case 88:case 120:{y=Un,Si=61;break}case 111:{Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,an=GLe(y,Xe,ss)|0,Ks=pi-an|0,bt=0,rr=5642,Ge=(Un&8|0)==0|(Ge|0)>(Ks|0)?Ge:Ks+1|0,Ks=Un,Si=67;break}case 105:case 100:if(Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,(Xe|0)<0){y=XT(0,0,y|0,Xe|0)|0,Xe=ct,bt=Tc,o[bt>>2]=y,o[bt+4>>2]=Xe,bt=1,rr=5642,Si=66;break t}else{bt=(Un&2049|0)!=0&1,rr=Un&2048|0?5643:Un&1|0?5644:5642,Si=66;break t}case 117:{Xe=Tc,bt=0,rr=5642,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,Si=66;break}case 99:{n[hl>>0]=o[Tc>>2],y=hl,bt=0,rr=5642,an=ss,Xe=1,Ge=Ks;break}case 109:{Xe=fPt(o[(qY()|0)>>2]|0)|0,Si=71;break}case 115:{Xe=o[Tc>>2]|0,Xe=Xe|0?Xe:5652,Si=71;break}case 67:{o[Bg>>2]=o[Tc>>2],o[uu>>2]=0,o[Tc>>2]=Bg,an=-1,Xe=Bg,Si=75;break}case 83:{y=o[Tc>>2]|0,Ge?(an=Ge,Xe=y,Si=75):(pv(p,32,le,0,Un),y=0,Si=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{le=ZLe(p,+C[Tc>>3],le,Ge,Un,Xe)|0,y=Ds;continue e}default:bt=0,rr=5642,an=ss,Xe=Ge,Ge=Un}while(!1);t:do if((Si|0)==61)Un=Tc,zi=o[Un>>2]|0,Un=o[Un+4>>2]|0,an=Ybe(zi,Un,ss,Xe&32)|0,rr=(y&8|0)==0|(zi|0)==0&(Un|0)==0,bt=rr?0:2,rr=rr?5642:5642+(Xe>>4)|0,Ks=y,y=zi,Xe=Un,Si=67;else if((Si|0)==66)an=pU(y,Xe,ss)|0,Ks=Un,Si=67;else if((Si|0)==71)Si=0,Un=FLe(Xe,0,Ge)|0,zi=(Un|0)==0,y=Xe,bt=0,rr=5642,an=zi?Xe+Ge|0:Un,Xe=zi?Ge:Un-Xe|0,Ge=Ks;else if((Si|0)==75){for(Si=0,rr=Xe,y=0,Ge=0;bt=o[rr>>2]|0,!(!bt||(Ge=Qbe(Dg,bt)|0,(Ge|0)<0|Ge>>>0>(an-y|0)>>>0));)if(y=Ge+y|0,an>>>0>y>>>0)rr=rr+4|0;else break;if((Ge|0)<0){U=-1;break e}if(pv(p,32,le,y,Un),!y)y=0,Si=84;else for(bt=0;;){if(Ge=o[Xe>>2]|0,!Ge){Si=84;break t}if(Ge=Qbe(Dg,Ge)|0,bt=Ge+bt|0,(bt|0)>(y|0)){Si=84;break t}if(o0(p,Dg,Ge),bt>>>0>=y>>>0){Si=84;break}else Xe=Xe+4|0}}while(!1);if((Si|0)==67)Si=0,Xe=(y|0)!=0|(Xe|0)!=0,Un=(Ge|0)!=0|Xe,Xe=((Xe^1)&1)+(pi-an)|0,y=Un?an:ss,an=ss,Xe=Un?(Ge|0)>(Xe|0)?Ge:Xe:Ge,Ge=(Ge|0)>-1?Ks&-65537:Ks;else if((Si|0)==84){Si=0,pv(p,32,le,y,Un^8192),le=(le|0)>(y|0)?le:y,y=Ds;continue}zi=an-y|0,Ks=(Xe|0)<(zi|0)?zi:Xe,Un=Ks+bt|0,le=(le|0)<(Un|0)?Un:le,pv(p,32,le,Un,Ge),o0(p,rr,bt),pv(p,48,le,Un,Ge^65536),pv(p,48,Ks,zi,0),o0(p,y,zi),pv(p,32,le,Un,Ge^8192),y=Ds}e:do if((Si|0)==87&&!p)if(!It)U=0;else{for(U=1;y=o[J+(U<<2)>>2]|0,!!y;)if(Vy(G+(U<<3)|0,y,w),U=U+1|0,(U|0)>=10){U=1;break e}for(;;){if(o[J+(U<<2)>>2]|0){U=-1;break e}if(U=U+1|0,(U|0)>=10){U=1;break}}}while(!1);return B=wg,U|0}function nie(p){return p=p|0,0}function qqe(p){p=p|0}function o0(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]&32||sie(y,w,p)|0}function $Ae(p){p=p|0;var y=0,w=0,G=0;if(w=o[p>>2]|0,G=(n[w>>0]|0)+-48|0,G>>>0<10){y=0;do y=G+(y*10|0)|0,w=w+1|0,o[p>>2]=w,G=(n[w>>0]|0)+-48|0;while(G>>>0<10)}else y=0;return y|0}function Vy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;e:do if(y>>>0<=20)do switch(y|0){case 9:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,o[p>>2]=y;break e}case 10:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=((y|0)<0)<<31>>31;break e}case 11:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=0;break e}case 12:{G=(o[w>>2]|0)+7&-8,y=G,J=o[y>>2]|0,y=o[y+4>>2]|0,o[w>>2]=G+8,G=p,o[G>>2]=J,o[G+4>>2]=y;break e}case 13:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,G=(G&65535)<<16>>16,J=p,o[J>>2]=G,o[J+4>>2]=((G|0)<0)<<31>>31;break e}case 14:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,J=p,o[J>>2]=G&65535,o[J+4>>2]=0;break e}case 15:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,G=(G&255)<<24>>24,J=p,o[J>>2]=G,o[J+4>>2]=((G|0)<0)<<31>>31;break e}case 16:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,J=p,o[J>>2]=G&255,o[J+4>>2]=0;break e}case 17:{J=(o[w>>2]|0)+7&-8,U=+C[J>>3],o[w>>2]=J+8,C[p>>3]=U;break e}case 18:{J=(o[w>>2]|0)+7&-8,U=+C[J>>3],o[w>>2]=J+8,C[p>>3]=U;break e}default:break e}while(!1);while(!1)}function Ybe(p,y,w,G){if(p=p|0,y=y|0,w=w|0,G=G|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=l[5694+(p&15)>>0]|0|G,p=D3(p|0,y|0,4)|0,y=ct;while(!((p|0)==0&(y|0)==0));return w|0}function GLe(p,y,w){if(p=p|0,y=y|0,w=w|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=p&7|48,p=D3(p|0,y|0,3)|0,y=ct;while(!((p|0)==0&(y|0)==0));return w|0}function pU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if(y>>>0>0|(y|0)==0&p>>>0>4294967295){for(;G=hU(p|0,y|0,10,0)|0,w=w+-1|0,n[w>>0]=G&255|48,G=p,p=k3(p|0,y|0,10,0)|0,y>>>0>9|(y|0)==9&G>>>0>4294967295;)y=ct;y=p}else y=p;if(y)for(;w=w+-1|0,n[w>>0]=(y>>>0)%10|0|48,!(y>>>0<10);)y=(y>>>0)/10|0;return w|0}function fPt(p){return p=p|0,Kbe(p,o[(iie()|0)+188>>2]|0)|0}function FLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;U=y&255,G=(w|0)!=0;e:do if(G&(p&3|0)!=0)for(J=y&255;;){if((n[p>>0]|0)==J<<24>>24){le=6;break e}if(p=p+1|0,w=w+-1|0,G=(w|0)!=0,!(G&(p&3|0)!=0)){le=5;break}}else le=5;while(!1);(le|0)==5&&(G?le=6:w=0);e:do if((le|0)==6&&(J=y&255,(n[p>>0]|0)!=J<<24>>24)){G=cr(U,16843009)|0;t:do if(w>>>0>3){for(;U=o[p>>2]^G,!((U&-2139062144^-2139062144)&U+-16843009|0);)if(p=p+4|0,w=w+-4|0,w>>>0<=3){le=11;break t}}else le=11;while(!1);if((le|0)==11&&!w){w=0;break}for(;;){if((n[p>>0]|0)==J<<24>>24)break e;if(p=p+1|0,w=w+-1|0,!w){w=0;break}}}while(!1);return(w|0?p:0)|0}function pv(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0;if(le=B,B=B+256|0,U=le,(w|0)>(G|0)&(J&73728|0)==0){if(J=w-G|0,fz(U|0,y|0,(J>>>0<256?J:256)|0)|0,J>>>0>255){y=w-G|0;do o0(p,U,256),J=J+-256|0;while(J>>>0>255);J=y&255}o0(p,U,J)}B=le}function Qbe(p,y){return p=p|0,y=y|0,p?p=$qe(p,y,0)|0:p=0,p|0}function ZLe(p,y,w,G,J,U){p=p|0,y=+y,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0;em=B,B=B+560|0,Xe=em+8|0,Ds=em,wg=em+524|0,Dg=wg,bt=em+512|0,o[Ds>>2]=0,Bg=bt+12|0,Xbe(y)|0,(ct|0)<0?(y=-y,fl=1,uu=5659):(fl=(J&2049|0)!=0&1,uu=J&2048|0?5662:J&1|0?5665:5660),Xbe(y)|0,Tc=ct&2146435072;do if(Tc>>>0<2146435072|(Tc|0)==2146435072&!1){if(Ks=+Jbe(y,Ds)*2,le=Ks!=0,le&&(o[Ds>>2]=(o[Ds>>2]|0)+-1),So=U|32,(So|0)==97){zi=U&32,an=zi|0?uu+9|0:uu,rr=fl|2,le=12-G|0;do if(G>>>0>11|(le|0)==0)y=Ks;else{y=8;do le=le+-1|0,y=y*16;while(le|0);if((n[an>>0]|0)==45){y=-(y+(-Ks-y));break}else{y=Ks+y-y;break}}while(!1);Ge=o[Ds>>2]|0,le=(Ge|0)<0?0-Ge|0:Ge,le=pU(le,((le|0)<0)<<31>>31,Bg)|0,(le|0)==(Bg|0)&&(le=bt+11|0,n[le>>0]=48),n[le+-1>>0]=(Ge>>31&2)+43,It=le+-2|0,n[It>>0]=U+15,bt=(G|0)<1,Xe=(J&8|0)==0,le=wg;do Tc=~~y,Ge=le+1|0,n[le>>0]=l[5694+Tc>>0]|zi,y=(y-+(Tc|0))*16,(Ge-Dg|0)==1&&!(Xe&(bt&y==0))?(n[Ge>>0]=46,le=le+2|0):le=Ge;while(y!=0);Tc=le-Dg|0,Dg=Bg-It|0,Bg=(G|0)!=0&(Tc+-2|0)<(G|0)?G+2|0:Tc,le=Dg+rr+Bg|0,pv(p,32,w,le,J),o0(p,an,rr),pv(p,48,w,le,J^65536),o0(p,wg,Tc),pv(p,48,Bg-Tc|0,0,0),o0(p,It,Dg),pv(p,32,w,le,J^8192);break}Ge=(G|0)<0?6:G,le?(le=(o[Ds>>2]|0)+-28|0,o[Ds>>2]=le,y=Ks*268435456):(y=Ks,le=o[Ds>>2]|0),Tc=(le|0)<0?Xe:Xe+288|0,Xe=Tc;do pi=~~y>>>0,o[Xe>>2]=pi,Xe=Xe+4|0,y=(y-+(pi>>>0))*1e9;while(y!=0);if((le|0)>0)for(bt=Tc,rr=Xe;;){if(It=(le|0)<29?le:29,le=rr+-4|0,le>>>0>=bt>>>0){Xe=0;do ss=jbe(o[le>>2]|0,0,It|0)|0,ss=Hg(ss|0,ct|0,Xe|0,0)|0,pi=ct,Si=hU(ss|0,pi|0,1e9,0)|0,o[le>>2]=Si,Xe=k3(ss|0,pi|0,1e9,0)|0,le=le+-4|0;while(le>>>0>=bt>>>0);Xe&&(bt=bt+-4|0,o[bt>>2]=Xe)}for(Xe=rr;!(Xe>>>0<=bt>>>0);)if(le=Xe+-4|0,!(o[le>>2]|0))Xe=le;else break;if(le=(o[Ds>>2]|0)-It|0,o[Ds>>2]=le,(le|0)>0)rr=Xe;else break}else bt=Tc;if((le|0)<0){G=((Ge+25|0)/9|0)+1|0,Un=(So|0)==102;do{if(zi=0-le|0,zi=(zi|0)<9?zi:9,bt>>>0>>0){It=(1<>>zi,an=0,le=bt;do pi=o[le>>2]|0,o[le>>2]=(pi>>>zi)+an,an=cr(pi&It,rr)|0,le=le+4|0;while(le>>>0>>0);le=o[bt>>2]|0?bt:bt+4|0,an?(o[Xe>>2]=an,bt=le,le=Xe+4|0):(bt=le,le=Xe)}else bt=o[bt>>2]|0?bt:bt+4|0,le=Xe;Xe=Un?Tc:bt,Xe=(le-Xe>>2|0)>(G|0)?Xe+(G<<2)|0:le,le=(o[Ds>>2]|0)+zi|0,o[Ds>>2]=le}while((le|0)<0);le=bt,G=Xe}else le=bt,G=Xe;if(pi=Tc,le>>>0>>0){if(Xe=(pi-le>>2)*9|0,It=o[le>>2]|0,It>>>0>=10){bt=10;do bt=bt*10|0,Xe=Xe+1|0;while(It>>>0>=bt>>>0)}}else Xe=0;if(Un=(So|0)==103,Si=(Ge|0)!=0,bt=Ge-((So|0)!=102?Xe:0)+((Si&Un)<<31>>31)|0,(bt|0)<(((G-pi>>2)*9|0)+-9|0)){if(bt=bt+9216|0,zi=Tc+4+(((bt|0)/9|0)+-1024<<2)|0,bt=((bt|0)%9|0)+1|0,(bt|0)<9){It=10;do It=It*10|0,bt=bt+1|0;while((bt|0)!=9)}else It=10;if(rr=o[zi>>2]|0,an=(rr>>>0)%(It>>>0)|0,bt=(zi+4|0)==(G|0),bt&(an|0)==0)bt=zi;else if(Ks=((rr>>>0)/(It>>>0)|0)&1|0?9007199254740994:9007199254740992,ss=(It|0)/2|0,y=an>>>0>>0?.5:bt&(an|0)==(ss|0)?1:1.5,fl&&(ss=(n[uu>>0]|0)==45,y=ss?-y:y,Ks=ss?-Ks:Ks),bt=rr-an|0,o[zi>>2]=bt,Ks+y!=Ks){if(ss=bt+It|0,o[zi>>2]=ss,ss>>>0>999999999)for(Xe=zi;bt=Xe+-4|0,o[Xe>>2]=0,bt>>>0>>0&&(le=le+-4|0,o[le>>2]=0),ss=(o[bt>>2]|0)+1|0,o[bt>>2]=ss,ss>>>0>999999999;)Xe=bt;else bt=zi;if(Xe=(pi-le>>2)*9|0,rr=o[le>>2]|0,rr>>>0>=10){It=10;do It=It*10|0,Xe=Xe+1|0;while(rr>>>0>=It>>>0)}}else bt=zi;bt=bt+4|0,bt=G>>>0>bt>>>0?bt:G,ss=le}else bt=G,ss=le;for(So=bt;;){if(So>>>0<=ss>>>0){Ds=0;break}if(le=So+-4|0,!(o[le>>2]|0))So=le;else{Ds=1;break}}G=0-Xe|0;do if(Un)if(le=((Si^1)&1)+Ge|0,(le|0)>(Xe|0)&(Xe|0)>-5?(It=U+-1|0,Ge=le+-1-Xe|0):(It=U+-2|0,Ge=le+-1|0),le=J&8,le)zi=le;else{if(Ds&&(hl=o[So+-4>>2]|0,(hl|0)!=0))if((hl>>>0)%10|0)bt=0;else{bt=0,le=10;do le=le*10|0,bt=bt+1|0;while(!((hl>>>0)%(le>>>0)|0|0))}else bt=9;if(le=((So-pi>>2)*9|0)+-9|0,(It|32|0)==102){zi=le-bt|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}else{zi=le+Xe-bt|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}}else It=U,zi=J&8;while(!1);if(Un=Ge|zi,rr=(Un|0)!=0&1,an=(It|32|0)==102,an)Si=0,le=(Xe|0)>0?Xe:0;else{if(le=(Xe|0)<0?G:Xe,le=pU(le,((le|0)<0)<<31>>31,Bg)|0,bt=Bg,(bt-le|0)<2)do le=le+-1|0,n[le>>0]=48;while((bt-le|0)<2);n[le+-1>>0]=(Xe>>31&2)+43,le=le+-2|0,n[le>>0]=It,Si=le,le=bt-le|0}if(le=fl+1+Ge+rr+le|0,pv(p,32,w,le,J),o0(p,uu,fl),pv(p,48,w,le,J^65536),an){It=ss>>>0>Tc>>>0?Tc:ss,zi=wg+9|0,rr=zi,an=wg+8|0,bt=It;do{if(Xe=pU(o[bt>>2]|0,0,zi)|0,(bt|0)==(It|0))(Xe|0)==(zi|0)&&(n[an>>0]=48,Xe=an);else if(Xe>>>0>wg>>>0){fz(wg|0,48,Xe-Dg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}o0(p,Xe,rr-Xe|0),bt=bt+4|0}while(bt>>>0<=Tc>>>0);if(Un|0&&o0(p,5710,1),bt>>>0>>0&(Ge|0)>0)for(;;){if(Xe=pU(o[bt>>2]|0,0,zi)|0,Xe>>>0>wg>>>0){fz(wg|0,48,Xe-Dg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}if(o0(p,Xe,(Ge|0)<9?Ge:9),bt=bt+4|0,Xe=Ge+-9|0,bt>>>0>>0&(Ge|0)>9)Ge=Xe;else{Ge=Xe;break}}pv(p,48,Ge+9|0,9,0)}else{if(Un=Ds?So:ss+4|0,(Ge|0)>-1){Ds=wg+9|0,zi=(zi|0)==0,G=Ds,rr=0-Dg|0,an=wg+8|0,It=ss;do{Xe=pU(o[It>>2]|0,0,Ds)|0,(Xe|0)==(Ds|0)&&(n[an>>0]=48,Xe=an);do if((It|0)==(ss|0)){if(bt=Xe+1|0,o0(p,Xe,1),zi&(Ge|0)<1){Xe=bt;break}o0(p,5710,1),Xe=bt}else{if(Xe>>>0<=wg>>>0)break;fz(wg|0,48,Xe+rr|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}while(!1);Dg=G-Xe|0,o0(p,Xe,(Ge|0)>(Dg|0)?Dg:Ge),Ge=Ge-Dg|0,It=It+4|0}while(It>>>0>>0&(Ge|0)>-1)}pv(p,48,Ge+18|0,18,0),o0(p,Si,Bg-Si|0)}pv(p,32,w,le,J^8192)}else wg=(U&32|0)!=0,le=fl+3|0,pv(p,32,w,le,J&-65537),o0(p,uu,fl),o0(p,y!=y|!1?wg?5686:5690:wg?5678:5682,3),pv(p,32,w,le,J^8192);while(!1);return B=em,((le|0)<(w|0)?w:le)|0}function Xbe(p){p=+p;var y=0;return C[E>>3]=p,y=o[E>>2]|0,ct=o[E+4>>2]|0,y|0}function Jbe(p,y){return p=+p,y=y|0,+ +Ube(p,y)}function Ube(p,y){p=+p,y=y|0;var w=0,G=0,J=0;switch(C[E>>3]=p,w=o[E>>2]|0,G=o[E+4>>2]|0,J=D3(w|0,G|0,52)|0,J&2047){case 0:{p!=0?(p=+Ube(p*18446744073709552e3,y),w=(o[y>>2]|0)+-64|0):w=0,o[y>>2]=w;break}case 2047:break;default:o[y>>2]=(J&2047)+-1022,o[E>>2]=w,o[E+4>>2]=G&-2146435073|1071644672,p=+C[E>>3]}return+p}function $qe(p,y,w){p=p|0,y=y|0,w=w|0;do if(p){if(y>>>0<128){n[p>>0]=y,p=1;break}if(!(o[o[(e$e()|0)+188>>2]>>2]|0))if((y&-128|0)==57216){n[p>>0]=y,p=1;break}else{o[(qY()|0)>>2]=84,p=-1;break}if(y>>>0<2048){n[p>>0]=y>>>6|192,n[p+1>>0]=y&63|128,p=2;break}if(y>>>0<55296|(y&-8192|0)==57344){n[p>>0]=y>>>12|224,n[p+1>>0]=y>>>6&63|128,n[p+2>>0]=y&63|128,p=3;break}if((y+-65536|0)>>>0<1048576){n[p>>0]=y>>>18|240,n[p+1>>0]=y>>>12&63|128,n[p+2>>0]=y>>>6&63|128,n[p+3>>0]=y&63|128,p=4;break}else{o[(qY()|0)>>2]=84,p=-1;break}}else p=1;while(!1);return p|0}function e$e(){return rie()|0}function iie(){return rie()|0}function Kbe(p,y){p=p|0,y=y|0;var w=0,G=0;for(G=0;;){if((l[5712+G>>0]|0)==(p|0)){p=2;break}if(w=G+1|0,(w|0)==87){w=5800,G=87,p=5;break}else G=w}if((p|0)==2&&(G?(w=5800,p=5):w=5800),(p|0)==5)for(;;){do p=w,w=w+1|0;while(n[p>>0]|0);if(G=G+-1|0,G)p=5;else break}return kx(w,o[y+20>>2]|0)|0}function kx(p,y){return p=p|0,y=y|0,t$e(p,y)|0}function t$e(p,y){return p=p|0,y=y|0,y?y=IPt(o[y>>2]|0,o[y+4>>2]|0,p)|0:y=0,(y|0?y:p)|0}function IPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;an=(o[p>>2]|0)+1794895138|0,U=NB(o[p+8>>2]|0,an)|0,G=NB(o[p+12>>2]|0,an)|0,J=NB(o[p+16>>2]|0,an)|0;e:do if(U>>>0>>2>>>0&&(rr=y-(U<<2)|0,G>>>0>>0&J>>>0>>0)&&!((J|G)&3|0)){for(rr=G>>>2,It=J>>>2,bt=0;;){if(Ge=U>>>1,Xe=bt+Ge|0,le=Xe<<1,J=le+rr|0,G=NB(o[p+(J<<2)>>2]|0,an)|0,J=NB(o[p+(J+1<<2)>>2]|0,an)|0,!(J>>>0>>0&G>>>0<(y-J|0)>>>0)){G=0;break e}if(n[p+(J+G)>>0]|0){G=0;break e}if(G=zqe(w,p+J|0)|0,!G)break;if(G=(G|0)<0,(U|0)==1){G=0;break e}else bt=G?bt:Xe,U=G?Ge:U-Ge|0}G=le+It|0,J=NB(o[p+(G<<2)>>2]|0,an)|0,G=NB(o[p+(G+1<<2)>>2]|0,an)|0,G>>>0>>0&J>>>0<(y-G|0)>>>0?G=n[p+(G+J)>>0]|0?0:p+G|0:G=0}else G=0;while(!1);return G|0}function NB(p,y){p=p|0,y=y|0;var w=0;return w=x3(p|0)|0,(y|0?w:p)|0}function sie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=w+16|0,J=o[G>>2]|0,J?U=5:hPt(w)|0?G=0:(J=o[G>>2]|0,U=5);e:do if((U|0)==5){if(Ge=w+20|0,le=o[Ge>>2]|0,G=le,(J-le|0)>>>0>>0){G=KL[o[w+36>>2]&7](w,p,y)|0;break}t:do if((n[w+75>>0]|0)>-1){for(le=y;;){if(!le){U=0,J=p;break t}if(J=le+-1|0,(n[p+J>>0]|0)==10)break;le=J}if(G=KL[o[w+36>>2]&7](w,p,le)|0,G>>>0>>0)break e;U=le,J=p+le|0,y=y-le|0,G=o[Ge>>2]|0}else U=0,J=p;while(!1);Md(G|0,J|0,y|0)|0,o[Ge>>2]=(o[Ge>>2]|0)+y,G=U+y|0}while(!1);return G|0}function hPt(p){p=p|0;var y=0,w=0;return y=p+74|0,w=n[y>>0]|0,n[y>>0]=w+255|w,y=o[p>>2]|0,y&8?(o[p>>2]=y|32,p=-1):(o[p+8>>2]=0,o[p+4>>2]=0,w=o[p+44>>2]|0,o[p+28>>2]=w,o[p+20>>2]=w,o[p+16>>2]=w+(o[p+48>>2]|0),p=0),p|0}function qs(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=CA(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=CA(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?y:p;break}else{p=p>2]=p,o[E>>2]|0|0}function fU(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=r$e(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=r$e(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?p:y;break}else{p=p>2]=p,o[E>>2]|0|0}function Az(p,y){p=ke(p),y=ke(y);var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;U=(I[E>>2]=p,o[E>>2]|0),Ge=(I[E>>2]=y,o[E>>2]|0),w=U>>>23&255,le=Ge>>>23&255,Xe=U&-2147483648,J=Ge<<1;e:do if(J|0&&!((w|0)==255|((ede(y)|0)&2147483647)>>>0>2139095040)){if(G=U<<1,G>>>0<=J>>>0)return y=ke(p*ke(0)),ke((G|0)==(J|0)?y:p);if(w)G=U&8388607|8388608;else{if(w=U<<9,(w|0)>-1){G=w,w=0;do w=w+-1|0,G=G<<1;while((G|0)>-1)}else w=0;G=U<<1-w}if(le)Ge=Ge&8388607|8388608;else{if(U=Ge<<9,(U|0)>-1){J=0;do J=J+-1|0,U=U<<1;while((U|0)>-1)}else J=0;le=J,Ge=Ge<<1-J}J=G-Ge|0,U=(J|0)>-1;t:do if((w|0)>(le|0)){for(;;){if(U)if(J)G=J;else break;if(G=G<<1,w=w+-1|0,J=G-Ge|0,U=(J|0)>-1,(w|0)<=(le|0))break t}y=ke(p*ke(0));break e}while(!1);if(U)if(J)G=J;else{y=ke(p*ke(0));break}if(G>>>0<8388608)do G=G<<1,w=w+-1|0;while(G>>>0<8388608);(w|0)>0?w=G+-8388608|w<<23:w=G>>>(1-w|0),y=(o[E>>2]=w|Xe,ke(I[E>>2]))}else bt=3;while(!1);return(bt|0)==3&&(y=ke(p*y),y=ke(y/y)),ke(y)}function ede(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function mPt(p,y){return p=p|0,y=y|0,qAe(o[582]|0,p,y)|0}function me(p){p=p|0,Ko()}function dz(p){p=p|0}function n$e(p,y){return p=p|0,y=y|0,0}function ua(p){return p=p|0,(i$e(p+4|0)|0)==-1?(DF[o[(o[p>>2]|0)+8>>2]&127](p),p=1):p=0,p|0}function i$e(p){p=p|0;var y=0;return y=o[p>>2]|0,o[p>>2]=y+-1,y+-1|0}function IU(p){p=p|0,ua(p)|0&&c_(p)}function c_(p){p=p|0;var y=0;y=p+8|0,o[y>>2]|0&&(i$e(y)|0)!=-1||DF[o[(o[p>>2]|0)+16>>2]&127](p)}function Ku(p){p=p|0;var y=0;for(y=p|0?p:1;p=qne(y)|0,!(p|0);){if(p=oie()|0,!p){p=0;break}iEe[p&0]()}return p|0}function pz(p){return p=p|0,Ku(p)|0}function ti(p){p=p|0,$ne(p)}function Gw(p){p=p|0,(n[p+11>>0]|0)<0&&ti(o[p>>2]|0)}function oie(){var p=0;return p=o[2923]|0,o[2923]=p+0,p|0}function N3(){}function XT(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,G=y-G-(w>>>0>p>>>0|0)>>>0,ct=G,p-w>>>0|0|0}function Hg(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,w=p+w>>>0,ct=y+G+(w>>>0

>>0|0)>>>0,w|0|0}function fz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;if(U=p+w|0,y=y&255,(w|0)>=67){for(;p&3;)n[p>>0]=y,p=p+1|0;for(G=U&-4|0,J=G-64|0,le=y|y<<8|y<<16|y<<24;(p|0)<=(J|0);)o[p>>2]=le,o[p+4>>2]=le,o[p+8>>2]=le,o[p+12>>2]=le,o[p+16>>2]=le,o[p+20>>2]=le,o[p+24>>2]=le,o[p+28>>2]=le,o[p+32>>2]=le,o[p+36>>2]=le,o[p+40>>2]=le,o[p+44>>2]=le,o[p+48>>2]=le,o[p+52>>2]=le,o[p+56>>2]=le,o[p+60>>2]=le,p=p+64|0;for(;(p|0)<(G|0);)o[p>>2]=le,p=p+4|0}for(;(p|0)<(U|0);)n[p>>0]=y,p=p+1|0;return U-w|0}function jbe(p,y,w){return p=p|0,y=y|0,w=w|0,(w|0)<32?(ct=y<>>32-w,p<>>w,p>>>w|(y&(1<>>w-32|0)}function Md(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;if((w|0)>=8192)return Hu(p|0,y|0,w|0)|0;if(U=p|0,J=p+w|0,(p&3)==(y&3)){for(;p&3;){if(!w)return U|0;n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0,w=w-1|0}for(w=J&-4|0,G=w-64|0;(p|0)<=(G|0);)o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2],o[p+16>>2]=o[y+16>>2],o[p+20>>2]=o[y+20>>2],o[p+24>>2]=o[y+24>>2],o[p+28>>2]=o[y+28>>2],o[p+32>>2]=o[y+32>>2],o[p+36>>2]=o[y+36>>2],o[p+40>>2]=o[y+40>>2],o[p+44>>2]=o[y+44>>2],o[p+48>>2]=o[y+48>>2],o[p+52>>2]=o[y+52>>2],o[p+56>>2]=o[y+56>>2],o[p+60>>2]=o[y+60>>2],p=p+64|0,y=y+64|0;for(;(p|0)<(w|0);)o[p>>2]=o[y>>2],p=p+4|0,y=y+4|0}else for(w=J-4|0;(p|0)<(w|0);)n[p>>0]=n[y>>0]|0,n[p+1>>0]=n[y+1>>0]|0,n[p+2>>0]=n[y+2>>0]|0,n[p+3>>0]=n[y+3>>0]|0,p=p+4|0,y=y+4|0;for(;(p|0)<(J|0);)n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0;return U|0}function DB(p){p=p|0;var y=0;return y=n[Q+(p&255)>>0]|0,(y|0)<8?y|0:(y=n[Q+(p>>8&255)>>0]|0,(y|0)<8?y+8|0:(y=n[Q+(p>>16&255)>>0]|0,(y|0)<8?y+16|0:(n[Q+(p>>>24)>>0]|0)+24|0))}function hh(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0;if(It=p,Xe=y,bt=Xe,le=w,an=G,Ge=an,!bt)return U=(J|0)!=0,Ge?U?(o[J>>2]=p|0,o[J+4>>2]=y&0,an=0,J=0,ct=an,J|0):(an=0,J=0,ct=an,J|0):(U&&(o[J>>2]=(It>>>0)%(le>>>0),o[J+4>>2]=0),an=0,J=(It>>>0)/(le>>>0)>>>0,ct=an,J|0);U=(Ge|0)==0;do if(le){if(!U){if(U=(_n(Ge|0)|0)-(_n(bt|0)|0)|0,U>>>0<=31){rr=U+1|0,Ge=31-U|0,y=U-31>>31,le=rr,p=It>>>(rr>>>0)&y|bt<>>(rr>>>0)&y,U=0,Ge=It<>2]=p|0,o[J+4>>2]=Xe|y&0,an=0,J=0,ct=an,J|0):(an=0,J=0,ct=an,J|0)}if(U=le-1|0,U&le|0){Ge=(_n(le|0)|0)+33-(_n(bt|0)|0)|0,zi=64-Ge|0,rr=32-Ge|0,Xe=rr>>31,Ks=Ge-32|0,y=Ks>>31,le=Ge,p=rr-1>>31&bt>>>(Ks>>>0)|(bt<>>(Ge>>>0))&y,y=y&bt>>>(Ge>>>0),U=It<>>(Ks>>>0))&Xe|It<>31;break}return J|0&&(o[J>>2]=U&It,o[J+4>>2]=0),(le|0)==1?(Ks=Xe|y&0,zi=p|0|0,ct=Ks,zi|0):(zi=DB(le|0)|0,Ks=bt>>>(zi>>>0)|0,zi=bt<<32-zi|It>>>(zi>>>0)|0,ct=Ks,zi|0)}else{if(U)return J|0&&(o[J>>2]=(bt>>>0)%(le>>>0),o[J+4>>2]=0),Ks=0,zi=(bt>>>0)/(le>>>0)>>>0,ct=Ks,zi|0;if(!It)return J|0&&(o[J>>2]=0,o[J+4>>2]=(bt>>>0)%(Ge>>>0)),Ks=0,zi=(bt>>>0)/(Ge>>>0)>>>0,ct=Ks,zi|0;if(U=Ge-1|0,!(U&Ge))return J|0&&(o[J>>2]=p|0,o[J+4>>2]=U&bt|y&0),Ks=0,zi=bt>>>((DB(Ge|0)|0)>>>0),ct=Ks,zi|0;if(U=(_n(Ge|0)|0)-(_n(bt|0)|0)|0,U>>>0<=30){y=U+1|0,Ge=31-U|0,le=y,p=bt<>>(y>>>0),y=bt>>>(y>>>0),U=0,Ge=It<>2]=p|0,o[J+4>>2]=Xe|y&0,Ks=0,zi=0,ct=Ks,zi|0):(Ks=0,zi=0,ct=Ks,zi|0)}while(!1);if(!le)bt=Ge,Xe=0,Ge=0;else{rr=w|0|0,It=an|G&0,bt=Hg(rr|0,It|0,-1,-1)|0,w=ct,Xe=Ge,Ge=0;do G=Xe,Xe=U>>>31|Xe<<1,U=Ge|U<<1,G=p<<1|G>>>31|0,an=p>>>31|y<<1|0,XT(bt|0,w|0,G|0,an|0)|0,zi=ct,Ks=zi>>31|((zi|0)<0?-1:0)<<1,Ge=Ks&1,p=XT(G|0,an|0,Ks&rr|0,(((zi|0)<0?-1:0)>>31|((zi|0)<0?-1:0)<<1)&It|0)|0,y=ct,le=le-1|0;while(le|0);bt=Xe,Xe=0}return le=0,J|0&&(o[J>>2]=p,o[J+4>>2]=y),Ks=(U|0)>>>31|(bt|le)<<1|(le<<1|U>>>31)&0|Xe,zi=(U<<1|0)&-2|Ge,ct=Ks,zi|0}function k3(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,hh(p,y,w,G,0)|0}function kB(p){p=p|0;var y=0,w=0;return w=p+15&-16|0,y=o[b>>2]|0,p=y+w|0,(w|0)>0&(p|0)<(y|0)|(p|0)<0?(po()|0,Vs(12),-1):(o[b>>2]=p,(p|0)>(Hi()|0)&&!(Nn()|0)?(o[b>>2]=y,Vs(12),-1):y|0)}function JT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if((y|0)<(p|0)&(p|0)<(y+w|0)){for(G=p,y=y+w|0,p=p+w|0;(w|0)>0;)p=p-1|0,y=y-1|0,w=w-1|0,n[p>>0]=n[y>>0]|0;p=G}else Md(p,y,w)|0;return p|0}function hU(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;return U=B,B=B+16|0,J=U|0,hh(p,y,w,G,J)|0,B=U,ct=o[J+4>>2]|0,o[J>>2]|0|0}function x3(p){return p=p|0,(p&255)<<24|(p>>8&255)<<16|(p>>16&255)<<8|p>>>24|0}function Iz(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,l$e[p&1](y|0,w|0,G|0,J|0,U|0)}function LLe(p,y,w){p=p|0,y=y|0,w=ke(w),u$e[p&1](y|0,ke(w))}function VLe(p,y,w){p=p|0,y=y|0,w=+w,g$e[p&31](y|0,+w)}function PLe(p,y,w,G){return p=p|0,y=y|0,w=ke(w),G=ke(G),ke(uie[p&0](y|0,ke(w),ke(G)))}function $Y(p,y){p=p|0,y=y|0,DF[p&127](y|0)}function hN(p,y,w){p=p|0,y=y|0,w=w|0,qD[p&31](y|0,w|0)}function s$e(p,y){return p=p|0,y=y|0,mC[p&31](y|0)|0}function zbe(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0,eQ[p&1](y|0,+w,+G,J|0)}function WLe(p,y,w,G){p=p|0,y=y|0,w=+w,G=+G,Zg[p&1](y|0,+w,+G)}function qbe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,KL[p&7](y|0,w|0,G|0)|0}function $be(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,+rEe[p&1](y|0,w|0,G|0)}function eEe(p,y){return p=p|0,y=y|0,+GP[p&15](y|0)}function OLe(p,y,w){return p=p|0,y=y|0,w=+w,tQ[p&1](y|0,+w)|0}function MLe(p,y,w){return p=p|0,y=y|0,w=w|0,gie[p&15](y|0,w|0)|0}function xx(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=+G,J=+J,U=U|0,nde[p&1](y|0,w|0,+G,+J,U|0)}function G3(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,ide[p&1](y|0,w|0,G|0,J|0,U|0,le|0)}function aie(p,y,w){return p=p|0,y=y|0,w=w|0,+nEe[p&7](y|0,w|0)}function o$e(p){return p=p|0,mz[p&7]()|0}function HLe(p,y,w,G,J,U){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,sde[p&1](y|0,w|0,G|0,J|0,U|0)|0}function YLe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=+J,Aie[p&1](y|0,w|0,G|0,+J)}function QLe(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=ke(G),J=J|0,U=ke(U),le=le|0,Cz[p&1](y|0,w|0,ke(G),J|0,ke(U),le|0)}function XLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,UT[p&15](y|0,w|0,G|0)}function JLe(p){p=p|0,iEe[p&0]()}function a$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,die[p&15](y|0,w|0,+G)}function CPt(p,y,w){return p=p|0,y=+y,w=+w,jLe[p&1](+y,+w)|0}function _Pt(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,Ir[p&15](y|0,w|0,G|0,J|0)}function yPt(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,jt(0)}function bPt(p,y){p=p|0,y=ke(y),jt(1)}function Gx(p,y){p=p|0,y=+y,jt(2)}function EPt(p,y,w){return p=p|0,y=ke(y),w=ke(w),jt(3),As}function td(p){p=p|0,jt(4)}function tde(p,y){p=p|0,y=y|0,jt(5)}function NF(p){return p=p|0,jt(6),0}function SPt(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,jt(7)}function vPt(p,y,w){p=p|0,y=+y,w=+w,jt(8)}function BPt(p,y,w){return p=p|0,y=y|0,w=w|0,jt(9),0}function wPt(p,y,w){return p=p|0,y=y|0,w=w|0,jt(10),0}function hz(p){return p=p|0,jt(11),0}function TPt(p,y){return p=p|0,y=+y,jt(12),0}function rde(p,y){return p=p|0,y=y|0,jt(13),0}function RPt(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0,jt(14)}function NPt(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,jt(15)}function ULe(p,y){return p=p|0,y=y|0,jt(16),0}function DPt(){return jt(17),0}function KLe(p,y,w,G,J){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,jt(18),0}function kPt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,jt(19)}function c$e(p,y,w,G,J,U){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=U|0,jt(20)}function tEe(p,y,w){p=p|0,y=y|0,w=w|0,jt(21)}function xPt(){jt(22)}function cie(p,y,w){p=p|0,y=y|0,w=+w,jt(23)}function GPt(p,y){return p=+p,y=+y,jt(24),0}function lie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,jt(25)}var l$e=[yPt,bAe],u$e=[bPt,$1],g$e=[Gx,xC,$_,r1,gB,hw,GT,b0,e2,yd,ag,Eb,n1,U2,e0,n_,Xp,cE,lE,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx],uie=[EPt],DF=[td,dz,IA,EI,zd,mge,Wre,pP,NVt,FZe,rU,Gne,lbe,dv,xP,IN,Kne,ZA,ry,bb,ia,bI,xD,IB,kr,Ve,iv,Aa,nye,tN,fC,yw,sye,mE,l3,Lre,a7,FL,Yre,eZe,xY,vl,pye,Pge,ZL,Xge,b7,JR,gne,Bye,w7,Dye,yne,Pye,bVt,vVt,oAe,aAe,Jye,jye,Ga,$ye,P7,Ct,i0,lLe,vbe,oPt,rz,JL,UL,vLe,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td],qD=[tde,lB,ND,kD,UR,lc,fh,rf,yI,Qp,uB,Ih,Np,t2,Ro,AE,AB,Xc,iu,ny,i_,ft,m7,Yge,WY,sS,xVt,Cbe,tde,tde,tde,tde],mC=[NF,dU,t1,aA,uE,eh,Wf,Mo,gp,lF,gE,FT,hp,Am,Bb,AVt,iAe,Nne,NP,Fb,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF],eQ=[SPt,bL],Zg=[vPt,GZe],KL=[BPt,eie,pPt,Hbe,LD,MD,IZe,fLe],rEe=[wPt,bB],GP=[hz,Dm,Dp,dE,gF,x,L,te,Re,Le,hz,hz,hz,hz,hz,hz],tQ=[TPt,yVt],gie=[rde,n$e,K2,ja,hA,s3,CY,hge,Bge,_ye,$E,FAe,rde,rde,rde,rde],nde=[RPt,t3],ide=[NPt,lg],nEe=[ULe,yL,dr,Ur,mi,dge,ULe,ULe],mz=[DPt,Vi,N_,RD,eU,kZe,zye,oz],sde=[KLe,Yp],Aie=[kPt,A3],Cz=[c$e,ZT],UT=[tEe,fu,uF,KR,Ou,n3,cge,Sd,lVt,cF,HVt,ePt,bLe,tEe,tEe,tEe],iEe=[xPt],die=[cie,DD,q_,aE,qS,Ip,Xh,E0,PJ,PL,mVt,cie,cie,cie,cie,cie],jLe=[GPt,TVt],Ir=[lie,uge,p3,HT,Lye,y3,lN,o_,nbe,One,Zbe,lie,lie,lie,lie,lie];return{_llvm_bswap_i32:x3,dynCall_idd:CPt,dynCall_i:o$e,_i64Subtract:XT,___udivdi3:k3,dynCall_vif:LLe,setThrew:sd,dynCall_viii:XLe,_bitshift64Lshr:D3,_bitshift64Shl:jbe,dynCall_vi:$Y,dynCall_viiddi:xx,dynCall_diii:$be,dynCall_iii:MLe,_memset:fz,_sbrk:kB,_memcpy:Md,__GLOBAL__sub_I_Yoga_cpp:cB,dynCall_vii:hN,___uremdi3:hU,dynCall_vid:VLe,stackAlloc:Tf,_nbind_init:A2,getTempRet0:il,dynCall_di:eEe,dynCall_iid:OLe,setTempRet0:Om,_i64Add:Hg,dynCall_fiff:PLe,dynCall_iiii:qbe,_emscripten_get_global_libc:zAe,dynCall_viid:a$e,dynCall_viiid:YLe,dynCall_viififi:QLe,dynCall_ii:s$e,__GLOBAL__sub_I_Binding_cc:UVt,dynCall_viiii:_Pt,dynCall_iiiiii:HLe,stackSave:cm,dynCall_viiiii:Iz,__GLOBAL__sub_I_nbind_cc:Ta,dynCall_vidd:WLe,_free:$ne,runPostSets:N3,dynCall_viiiiii:G3,establishStackSpace:rc,_memmove:JT,stackRestore:Fl,_malloc:qne,__GLOBAL__sub_I_common_cc:Jm,dynCall_viddi:zbe,dynCall_dii:aie,dynCall_v:JLe}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function n(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(n){r=n(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var WW=H((Cru,OMn)=>{"use strict";var AKo=PMn(),dKo=WMn(),ZIr=!1,LIr=null;dKo({},function(e,t){if(!ZIr){if(ZIr=!0,e)throw e;LIr=t}});if(!ZIr)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");OMn.exports=AKo(LIr.bind,LIr.lib)});var PIr=H((_ru,VIr)=>{"use strict";var MMn=e=>Number.isNaN(e)?!1:e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141);VIr.exports=MMn;VIr.exports.default=MMn});var YMn=H((yru,HMn)=>{"use strict";HMn.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var dBe=H((bru,WIr)=>{"use strict";var pKo=q5(),fKo=PIr(),IKo=YMn(),QMn=e=>{if(typeof e!="string"||e.length===0||(e=pKo(e),e.length===0))return 0;e=e.replace(IKo()," ");let t=0;for(let r=0;r=127&&n<=159||n>=768&&n<=879||(n>65535&&r++,t+=fKo(n)?2:1)}return t};WIr.exports=QMn;WIr.exports.default=QMn});var ZMe=H((Eru,OIr)=>{"use strict";var hKo=dBe(),XMn=e=>{let t=0;for(let r of e.split(` +`))t=Math.max(t,hKo(r));return t};OIr.exports=XMn;OIr.exports.default=XMn});var JMn=H(LMe=>{"use strict";var mKo=LMe&&LMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LMe,"__esModule",{value:!0});var CKo=mKo(ZMe()),MIr={};LMe.default=e=>{if(e.length===0)return{width:0,height:0};if(MIr[e])return MIr[e];let t=CKo.default(e),r=e.split(` +`).length;return MIr[e]={width:t,height:r},{width:t,height:r}}});var UMn=H(VMe=>{"use strict";var _Ko=VMe&&VMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VMe,"__esModule",{value:!0});var C_=_Ko(WW()),yKo=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?C_.default.POSITION_TYPE_ABSOLUTE:C_.default.POSITION_TYPE_RELATIVE)},bKo=(e,t)=>{"marginLeft"in t&&e.setMargin(C_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(C_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(C_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(C_.default.EDGE_BOTTOM,t.marginBottom||0)},EKo=(e,t)=>{"paddingLeft"in t&&e.setPadding(C_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(C_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(C_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(C_.default.EDGE_BOTTOM,t.paddingBottom||0)},SKo=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(C_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(C_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(C_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(C_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(C_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(C_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(C_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(C_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(C_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(C_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(C_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(C_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(C_.default.JUSTIFY_SPACE_AROUND))},vKo=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},BKo=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?C_.default.DISPLAY_FLEX:C_.default.DISPLAY_NONE)},wKo=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(C_.default.EDGE_TOP,r),e.setBorder(C_.default.EDGE_BOTTOM,r),e.setBorder(C_.default.EDGE_LEFT,r),e.setBorder(C_.default.EDGE_RIGHT,r)}};VMe.default=(e,t={})=>{yKo(e,t),bKo(e,t),EKo(e,t),SKo(e,t),vKo(e,t),BKo(e,t),wKo(e,t)}});var QIr=H((Bru,jMn)=>{"use strict";var PMe=dBe(),TKo=q5(),RKo=glt(),YIr=new Set(["\x1B","\x9B"]),NKo=39,KMn=e=>`${YIr.values().next().value}[${e}m`,DKo=e=>e.split(" ").map(t=>PMe(t)),HIr=(e,t,r)=>{let n=[...t],a=!1,o=PMe(TKo(e[e.length-1]));for(let[l,A]of n.entries()){let f=PMe(A);if(o+f<=r?e[e.length-1]+=A:(e.push(A),o=0),YIr.has(A))a=!0;else if(a&&A==="m"){a=!1;continue}a||(o+=f,o===r&&l0&&e.length>1&&(e[e.length-2]+=e.pop())},kKo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(PMe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},xKo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a="",o,l=DKo(e),A=[""];for(let[f,I]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let C=PMe(A[A.length-1]);if(f!==0&&(C>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),C=0),(C>0||r.trim===!1)&&(A[A.length-1]+=" ",C++)),r.hard&&l[f]>t){let b=t-C,E=1+Math.floor((l[f]-b-1)/t);Math.floor((l[f]-1)/t)t&&C>0&&l[f]>0){if(r.wordWrap===!1&&Ct&&r.wordWrap===!1){HIr(A,I,t);continue}A[A.length-1]+=I}r.trim!==!1&&(A=A.map(kKo)),n=A.join(` +`);for(let[f,I]of[...n].entries()){if(a+=I,YIr.has(I)){let b=parseFloat(/\d[^m]*/.exec(n.slice(f,f+4)));o=b===NKo?null:b}let C=RKo.codes.get(Number(o));o&&C&&(n[f+1]===` +`?a+=KMn(C):I===` +`&&(a+=KMn(o)))}return a};jMn.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` `).split(` -`).map(n=>hKo(n,t,r)).join(` -`)});var XMn=H((Ftu,QMn)=>{"use strict";var YMn="[\uD800-\uDBFF][\uDC00-\uDFFF]",mKo=e=>e&&e.exact?new RegExp(`^${YMn}$`):new RegExp(YMn,"g");QMn.exports=mKo});var Rpt=H((Ztu,jMn)=>{"use strict";var CKo=FIr(),_Ko=XMn(),JMn=llt(),KMn=["\x1B","\x9B"],Tpt=e=>`${KMn[0]}[${e}m`,UMn=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let l=JMn.codes.get(parseInt(a,10));if(l){let A=e.indexOf(l.toString());A>=0?e.splice(A,1):n.push(Tpt(t?l:o))}else if(t){n.push(Tpt(0));break}else n.push(Tpt(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=Tpt(JMn.codes.get(parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")};jMn.exports=(e,t,r)=>{let n=[...e.normalize()],a=[];r=typeof r=="number"?r:n.length;let o=!1,l,A=0,f="";for(let[I,C]of n.entries()){let b=!1;if(KMn.includes(C)){let E=/\d[^m]*/.exec(e.slice(I,I+18));l=E&&E.length>0?E[0]:void 0,At&&A<=r)f+=C;else if(A===t&&!o&&l!==void 0)f=UMn(a);else if(A>=r){f+=UMn(a,!0,l);break}}return f}});var MIr=H((Ltu,zMn)=>{"use strict";var Ooe=Rpt(),yKo=ABe();function Npt(e,t,r){if(e.charAt(t)===" ")return t;for(let n=1;n<=3;n++)if(r){if(e.charAt(t+n)===" ")return t+n}else if(e.charAt(t-n)===" ")return t-n;return t}zMn.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:n,space:a,preferTruncationOnSpace:o}=r,l="\u2026",A=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let f=yKo(e);if(f<=t)return e;if(n==="start"){if(o){let I=Npt(e,f-t+1,!0);return l+Ooe(e,I,f).trim()}return a===!0&&(l+=" ",A=2),l+Ooe(e,f-t+A,f)}if(n==="middle"){a===!0&&(l=" "+l+" ",A=3);let I=Math.floor(t/2);if(o){let C=Npt(e,I),b=Npt(e,f-(t-I)+1,!0);return Ooe(e,0,C)+l+Ooe(e,b,f).trim()}return Ooe(e,0,I)+l+Ooe(e,f-(t-I)+A,f)}if(n==="end"){if(o){let I=Npt(e,t-1);return Ooe(e,0,I)+l}return a===!0&&(l=" "+l,A=2),Ooe(e,0,t-A)+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}});var YIr=H(VMe=>{"use strict";var qMn=VMe&&VMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VMe,"__esModule",{value:!0});var bKo=qMn(OIr()),EKo=qMn(MIr()),HIr={};VMe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(HIr[n])return HIr[n];let a=e;if(r==="wrap"&&(a=bKo.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=EKo.default(e,t,{position:o})}return HIr[n]=a,a}});var XIr=H(QIr=>{"use strict";Object.defineProperty(QIr,"__esModule",{value:!0});var $Mn=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=$Mn(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};QIr.default=$Mn});var JIr=H(Z1=>{"use strict";var PMe=Z1&&Z1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Z1,"__esModule",{value:!0});Z1.setTextNodeValue=Z1.createTextNode=Z1.setStyle=Z1.setAttribute=Z1.removeChildNode=Z1.insertBeforeNode=Z1.appendChildNode=Z1.createNode=Z1.TEXT_NAME=void 0;var SKo=PMe(WW()),eHn=PMe(WMn()),vKo=PMe(OMn()),BKo=PMe(YIr()),wKo=PMe(XIr());Z1.TEXT_NAME="#text";Z1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:SKo.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(TKo.bind(null,r))),r};Z1.appendChildNode=(e,t)=>{var r;t.parentNode&&Z1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Dpt(e)};Z1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&Z1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Dpt(e)};Z1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Dpt(e)};Z1.setAttribute=(e,t,r)=>{e.attributes[t]=r};Z1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&vKo.default(e.yogaNode,t)};Z1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return Z1.setTextNodeValue(t,e),t};var TKo=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:wKo.default(e),o=eHn.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=BKo.default(a,t,l);return eHn.default(A)},tHn=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:tHn(e.parentNode)},Dpt=e=>{let t=tHn(e);t?.markDirty()};Z1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,Dpt(e)}});var oHn=H(WMe=>{"use strict";var sHn=WMe&&WMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WMe,"__esModule",{value:!0});var rHn=kMe(),RKo=sHn(BMn()),nHn=sHn(WW()),mG=JIr(),iHn=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};WMe.default=RKo.default({schedulePassiveEffects:rHn.unstable_scheduleCallback,cancelPassiveEffects:rHn.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=mG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?mG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:mG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return mG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{mG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{mG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(nHn.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(nHn.default.DISPLAY_FLEX)},appendInitialChild:mG.appendChildNode,appendChild:mG.appendChildNode,insertBefore:mG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:mG.appendChildNode,insertInContainerBefore:mG.insertBeforeNode,removeChildFromContainer:(e,t)=>{mG.removeChildNode(e,t),iHn(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?mG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:mG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{mG.setTextNodeValue(e,r)},removeChild:(e,t)=>{mG.removeChildNode(e,t),iHn(t.yogaNode)}})});var UIr=H((Mtu,aHn)=>{"use strict";aHn.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var cHn=H(OMe=>{"use strict";var NKo=OMe&&OMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OMe,"__esModule",{value:!0});var kpt=NKo(WW());OMe.default=e=>e.getComputedWidth()-e.getComputedPadding(kpt.default.EDGE_LEFT)-e.getComputedPadding(kpt.default.EDGE_RIGHT)-e.getComputedBorder(kpt.default.EDGE_LEFT)-e.getComputedBorder(kpt.default.EDGE_RIGHT)});var lHn=H((Ytu,DKo)=>{DKo.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var jIr=H((Qtu,KIr)=>{"use strict";var uHn=lHn();KIr.exports=uHn;KIr.exports.default=uHn});var zIr=H(HMe=>{"use strict";var kKo=HMe&&HMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HMe,"__esModule",{value:!0});var MMe=kKo(VK()),xKo=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,GKo=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,xpt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);HMe.default=(e,t,r)=>{if(!t)return e;if(t in MMe.default){let a=xpt(t,r);return MMe.default[a](e)}if(t.startsWith("#")){let a=xpt("hex",r);return MMe.default[a](t)(e)}if(t.startsWith("ansi")){let a=GKo.exec(t);if(!a)return e;let o=xpt(a[1],r),l=Number(a[2]);return MMe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=xKo.exec(t);if(!a)return e;let o=xpt(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return MMe.default[o](l,A,f)(e)}return e}});var AHn=H(YMe=>{"use strict";var gHn=YMe&&YMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YMe,"__esModule",{value:!0});var FKo=gHn(jIr()),qIr=gHn(zIr());YMe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=FKo.default[r.style.borderStyle],f=qIr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(qIr.default(A.vertical,l,"foreground")+` -`).repeat(o-2),C=qIr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var pHn=H(QMe=>{"use strict";var TIe=QMe&&QMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QMe,"__esModule",{value:!0});var ZKo=TIe(WW()),LKo=TIe(GMe()),VKo=TIe(UIr()),PKo=TIe(YIr()),WKo=TIe(cHn()),OKo=TIe(XIr()),MKo=TIe(AHn()),HKo=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` -`.repeat(o)+VKo.default(t,a)}return t},dHn=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===ZKo.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=OKo.default(e);if(E.length>0){let N=LKo.default(E),B=WKo.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=PKo.default(E,B,F)}E=HKo(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&MKo.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)dHn(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};QMe.default=dHn});var hHn=H(XMe=>{"use strict";var IHn=XMe&&XMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XMe,"__esModule",{value:!0});var fHn=IHn(Rpt()),YKo=IHn(ABe()),$Ir=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` -`),height:t.length}}};XMe.default=$Ir});var _Hn=H(JMe=>{"use strict";var ehr=JMe&&JMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JMe,"__esModule",{value:!0});var QKo=ehr(WW()),mHn=ehr(pHn()),CHn=ehr(hHn());JMe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,QKo.default.DIRECTION_LTR);let n=new CHn.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});mHn.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new CHn.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),mHn.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var rhr=H((ztu,EHn)=>{"use strict";var yHn=wt("stream"),bHn=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],thr={},XKo=e=>{let t=new yHn.PassThrough,r=new yHn.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let n=new console.Console(t,r);for(let a of bHn)thr[a]=console[a],console[a]=n[a];return()=>{for(let a of bHn)console[a]=thr[a];thr={}}};EHn.exports=XKo});var ihr=H(nhr=>{"use strict";Object.defineProperty(nhr,"__esModule",{value:!0});nhr.default=new WeakMap});var ohr=H(shr=>{"use strict";Object.defineProperty(shr,"__esModule",{value:!0});var JKo=Ec(),SHn=JKo.createContext({exit:()=>{}});SHn.displayName="InternalAppContext";shr.default=SHn});var chr=H(ahr=>{"use strict";Object.defineProperty(ahr,"__esModule",{value:!0});var UKo=Ec(),vHn=UKo.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});vHn.displayName="InternalStdinContext";ahr.default=vHn});var uhr=H(lhr=>{"use strict";Object.defineProperty(lhr,"__esModule",{value:!0});var KKo=Ec(),BHn=KKo.createContext({stdout:void 0,write:()=>{}});BHn.displayName="InternalStdoutContext";lhr.default=BHn});var Ahr=H(ghr=>{"use strict";Object.defineProperty(ghr,"__esModule",{value:!0});var jKo=Ec(),wHn=jKo.createContext({stderr:void 0,write:()=>{}});wHn.displayName="InternalStderrContext";ghr.default=wHn});var Gpt=H(dhr=>{"use strict";Object.defineProperty(dhr,"__esModule",{value:!0});var zKo=Ec(),THn=zKo.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});THn.displayName="InternalFocusContext";dhr.default=THn});var NHn=H((iru,RHn)=>{"use strict";var qKo=/[|\\{}()[\]^$+*?.-]/g;RHn.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(qKo,"\\$&")}});var Fpt=H((sru,xHn)=>{"use strict";var $Ko=NHn(),e8o=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",kHn=[].concat(wt("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));kHn.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var phr=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=e8o),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,t8o(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...kHn]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` +`).map(n=>xKo(n,t,r)).join(` +`)});var $Mn=H((wru,qMn)=>{"use strict";var zMn="[\uD800-\uDBFF][\uDC00-\uDFFF]",GKo=e=>e&&e.exact?new RegExp(`^${zMn}$`):new RegExp(zMn,"g");qMn.exports=GKo});var Dpt=H((Tru,nHn)=>{"use strict";var FKo=PIr(),ZKo=$Mn(),eHn=glt(),rHn=["\x1B","\x9B"],Npt=e=>`${rHn[0]}[${e}m`,tHn=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let l=eHn.codes.get(parseInt(a,10));if(l){let A=e.indexOf(l.toString());A>=0?e.splice(A,1):n.push(Npt(t?l:o))}else if(t){n.push(Npt(0));break}else n.push(Npt(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=Npt(eHn.codes.get(parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")};nHn.exports=(e,t,r)=>{let n=[...e.normalize()],a=[];r=typeof r=="number"?r:n.length;let o=!1,l,A=0,f="";for(let[I,C]of n.entries()){let b=!1;if(rHn.includes(C)){let E=/\d[^m]*/.exec(e.slice(I,I+18));l=E&&E.length>0?E[0]:void 0,At&&A<=r)f+=C;else if(A===t&&!o&&l!==void 0)f=tHn(a);else if(A>=r){f+=tHn(a,!0,l);break}}return f}});var XIr=H((Rru,iHn)=>{"use strict";var Moe=Dpt(),LKo=dBe();function kpt(e,t,r){if(e.charAt(t)===" ")return t;for(let n=1;n<=3;n++)if(r){if(e.charAt(t+n)===" ")return t+n}else if(e.charAt(t-n)===" ")return t-n;return t}iHn.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:n,space:a,preferTruncationOnSpace:o}=r,l="\u2026",A=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let f=LKo(e);if(f<=t)return e;if(n==="start"){if(o){let I=kpt(e,f-t+1,!0);return l+Moe(e,I,f).trim()}return a===!0&&(l+=" ",A=2),l+Moe(e,f-t+A,f)}if(n==="middle"){a===!0&&(l=" "+l+" ",A=3);let I=Math.floor(t/2);if(o){let C=kpt(e,I),b=kpt(e,f-(t-I)+1,!0);return Moe(e,0,C)+l+Moe(e,b,f).trim()}return Moe(e,0,I)+l+Moe(e,f-(t-I)+A,f)}if(n==="end"){if(o){let I=kpt(e,t-1);return Moe(e,0,I)+l}return a===!0&&(l=" "+l,A=2),Moe(e,0,t-A)+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}});var UIr=H(WMe=>{"use strict";var sHn=WMe&&WMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WMe,"__esModule",{value:!0});var VKo=sHn(QIr()),PKo=sHn(XIr()),JIr={};WMe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(JIr[n])return JIr[n];let a=e;if(r==="wrap"&&(a=VKo.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=PKo.default(e,t,{position:o})}return JIr[n]=a,a}});var jIr=H(KIr=>{"use strict";Object.defineProperty(KIr,"__esModule",{value:!0});var oHn=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=oHn(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};KIr.default=oHn});var zIr=H(Z1=>{"use strict";var OMe=Z1&&Z1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Z1,"__esModule",{value:!0});Z1.setTextNodeValue=Z1.createTextNode=Z1.setStyle=Z1.setAttribute=Z1.removeChildNode=Z1.insertBeforeNode=Z1.appendChildNode=Z1.createNode=Z1.TEXT_NAME=void 0;var WKo=OMe(WW()),aHn=OMe(JMn()),OKo=OMe(UMn()),MKo=OMe(UIr()),HKo=OMe(jIr());Z1.TEXT_NAME="#text";Z1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:WKo.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(YKo.bind(null,r))),r};Z1.appendChildNode=(e,t)=>{var r;t.parentNode&&Z1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&xpt(e)};Z1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&Z1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&xpt(e)};Z1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&xpt(e)};Z1.setAttribute=(e,t,r)=>{e.attributes[t]=r};Z1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&OKo.default(e.yogaNode,t)};Z1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return Z1.setTextNodeValue(t,e),t};var YKo=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:HKo.default(e),o=aHn.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=MKo.default(a,t,l);return aHn.default(A)},cHn=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:cHn(e.parentNode)},xpt=e=>{let t=cHn(e);t?.markDirty()};Z1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,xpt(e)}});var dHn=H(MMe=>{"use strict";var AHn=MMe&&MMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MMe,"__esModule",{value:!0});var lHn=GMe(),QKo=AHn(xMn()),uHn=AHn(WW()),mG=zIr(),gHn=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};MMe.default=QKo.default({schedulePassiveEffects:lHn.unstable_scheduleCallback,cancelPassiveEffects:lHn.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=mG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?mG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:mG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return mG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{mG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{mG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(uHn.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(uHn.default.DISPLAY_FLEX)},appendInitialChild:mG.appendChildNode,appendChild:mG.appendChildNode,insertBefore:mG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:mG.appendChildNode,insertInContainerBefore:mG.insertBeforeNode,removeChildFromContainer:(e,t)=>{mG.removeChildNode(e,t),gHn(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?mG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:mG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{mG.setTextNodeValue(e,r)},removeChild:(e,t)=>{mG.removeChildNode(e,t),gHn(t.yogaNode)}})});var qIr=H((Gru,pHn)=>{"use strict";pHn.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var fHn=H(HMe=>{"use strict";var XKo=HMe&&HMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HMe,"__esModule",{value:!0});var Gpt=XKo(WW());HMe.default=e=>e.getComputedWidth()-e.getComputedPadding(Gpt.default.EDGE_LEFT)-e.getComputedPadding(Gpt.default.EDGE_RIGHT)-e.getComputedBorder(Gpt.default.EDGE_LEFT)-e.getComputedBorder(Gpt.default.EDGE_RIGHT)});var IHn=H((Zru,JKo)=>{JKo.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var ehr=H((Lru,$Ir)=>{"use strict";var hHn=IHn();$Ir.exports=hHn;$Ir.exports.default=hHn});var thr=H(QMe=>{"use strict";var UKo=QMe&&QMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QMe,"__esModule",{value:!0});var YMe=UKo(VK()),KKo=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,jKo=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,Fpt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);QMe.default=(e,t,r)=>{if(!t)return e;if(t in YMe.default){let a=Fpt(t,r);return YMe.default[a](e)}if(t.startsWith("#")){let a=Fpt("hex",r);return YMe.default[a](t)(e)}if(t.startsWith("ansi")){let a=jKo.exec(t);if(!a)return e;let o=Fpt(a[1],r),l=Number(a[2]);return YMe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=KKo.exec(t);if(!a)return e;let o=Fpt(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return YMe.default[o](l,A,f)(e)}return e}});var CHn=H(XMe=>{"use strict";var mHn=XMe&&XMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XMe,"__esModule",{value:!0});var zKo=mHn(ehr()),rhr=mHn(thr());XMe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=zKo.default[r.style.borderStyle],f=rhr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(rhr.default(A.vertical,l,"foreground")+` +`).repeat(o-2),C=rhr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var yHn=H(JMe=>{"use strict";var RIe=JMe&&JMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JMe,"__esModule",{value:!0});var qKo=RIe(WW()),$Ko=RIe(ZMe()),e8o=RIe(qIr()),t8o=RIe(UIr()),r8o=RIe(fHn()),n8o=RIe(jIr()),i8o=RIe(CHn()),s8o=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` +`.repeat(o)+e8o.default(t,a)}return t},_Hn=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===qKo.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=n8o.default(e);if(E.length>0){let N=$Ko.default(E),B=r8o.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=t8o.default(E,B,F)}E=s8o(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&i8o.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)_Hn(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};JMe.default=_Hn});var SHn=H(UMe=>{"use strict";var EHn=UMe&&UMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UMe,"__esModule",{value:!0});var bHn=EHn(Dpt()),o8o=EHn(dBe()),nhr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` +`),height:t.length}}};UMe.default=nhr});var wHn=H(KMe=>{"use strict";var ihr=KMe&&KMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KMe,"__esModule",{value:!0});var a8o=ihr(WW()),vHn=ihr(yHn()),BHn=ihr(SHn());KMe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,a8o.default.DIRECTION_LTR);let n=new BHn.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});vHn.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new BHn.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),vHn.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var ohr=H((Hru,NHn)=>{"use strict";var THn=wt("stream"),RHn=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],shr={},c8o=e=>{let t=new THn.PassThrough,r=new THn.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let n=new console.Console(t,r);for(let a of RHn)shr[a]=console[a],console[a]=n[a];return()=>{for(let a of RHn)console[a]=shr[a];shr={}}};NHn.exports=c8o});var chr=H(ahr=>{"use strict";Object.defineProperty(ahr,"__esModule",{value:!0});ahr.default=new WeakMap});var uhr=H(lhr=>{"use strict";Object.defineProperty(lhr,"__esModule",{value:!0});var l8o=Ec(),DHn=l8o.createContext({exit:()=>{}});DHn.displayName="InternalAppContext";lhr.default=DHn});var Ahr=H(ghr=>{"use strict";Object.defineProperty(ghr,"__esModule",{value:!0});var u8o=Ec(),kHn=u8o.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});kHn.displayName="InternalStdinContext";ghr.default=kHn});var phr=H(dhr=>{"use strict";Object.defineProperty(dhr,"__esModule",{value:!0});var g8o=Ec(),xHn=g8o.createContext({stdout:void 0,write:()=>{}});xHn.displayName="InternalStdoutContext";dhr.default=xHn});var Ihr=H(fhr=>{"use strict";Object.defineProperty(fhr,"__esModule",{value:!0});var A8o=Ec(),GHn=A8o.createContext({stderr:void 0,write:()=>{}});GHn.displayName="InternalStderrContext";fhr.default=GHn});var Zpt=H(hhr=>{"use strict";Object.defineProperty(hhr,"__esModule",{value:!0});var d8o=Ec(),FHn=d8o.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});FHn.displayName="InternalFocusContext";hhr.default=FHn});var LHn=H((jru,ZHn)=>{"use strict";var p8o=/[|\\{}()[\]^$+*?.-]/g;ZHn.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(p8o,"\\$&")}});var Lpt=H((zru,WHn)=>{"use strict";var f8o=LHn(),I8o=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",PHn=[].concat(wt("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));PHn.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var mhr=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=I8o),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,h8o(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...PHn]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` `)),!/^\s*at /.test(t[0])&&/^\s*at /.test(t[1])&&(t=t.slice(1));let n=!1,a=null,o=[];return t.forEach(l=>{if(l=l.replace(/\\/g,"/"),this._internals.some(f=>f.test(l)))return;let A=/^\s*at /.test(l);n?l=l.trimEnd().replace(/^(\s+)at /,"$1"):(l=l.trim(),A&&(l=l.slice(3))),l=l.replace(`${this._cwd}/`,""),l&&(A?(a&&(o.push(a),a=null),o.push(l)):(n=!0,a=l))}),o.map(l=>`${r}${l} -`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:n}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=n,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:n,stackTraceLimit:a}=Error;Error.prepareStackTrace=(A,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:l}=o;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:a}),l}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let n={line:r.getLineNumber(),column:r.getColumnNumber()};DHn(n,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(n,"constructor",{value:!0,configurable:!0}),r.isEval()&&(n.evalOrigin=r.getEvalOrigin()),r.isNative()&&(n.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(n.type=a);let o=r.getFunctionName();o&&(n.function=o);let l=r.getMethodName();return l&&o!==l&&(n.method=l),n}parseLine(t){let r=t&&t.match(r8o);if(!r)return null;let n=r[1]==="new",a=r[2],o=r[3],l=r[4],A=Number(r[5]),f=Number(r[6]),I=r[7],C=r[8],b=r[9],E=r[10]==="native",N=r[11]===")",B,F={};if(C&&(F.line=Number(C)),b&&(F.column=Number(b)),N&&I){let Q=0;for(let X=I.length-1;X>0;X--)if(I.charAt(X)===")")Q++;else if(I.charAt(X)==="("&&I.charAt(X-1)===" "&&(Q--,Q===-1&&I.charAt(X-1)===" ")){let ae=I.slice(0,X-1);I=I.slice(X+1),a+=` (${ae}`;break}}if(a){let Q=a.match(n8o);Q&&(a=Q[1],B=Q[2])}return DHn(F,I,this._cwd),n&&Object.defineProperty(F,"constructor",{value:!0,configurable:!0}),o&&(F.evalOrigin=o,F.evalLine=A,F.evalColumn=f,F.evalFile=l&&l.replace(/\\/g,"/")),E&&(F.native=!0),a&&(F.function=a),B&&a!==B&&(F.method=B),F}};function DHn(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function t8o(e){if(e.length===0)return[];let t=e.map(r=>$Ko(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var r8o=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),n8o=/^(.*?) \[as (.*?)\]$/;xHn.exports=phr});var FHn=H((oru,GHn)=>{"use strict";GHn.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var fhr=H((aru,ZHn)=>{"use strict";var i8o=FHn(),s8o=(e,t)=>{let r=[],n=e-t,a=e+t;for(let o=n;o<=a;o++)r.push(o);return r};ZHn.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=i8o(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},s8o(t,r.around).filter(n=>e[n-1]!==void 0).map(n=>({line:n,value:e[n-1]}))}});var Zpt=H(yX=>{"use strict";var o8o=yX&&yX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),a8o=yX&&yX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),c8o=yX&&yX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&o8o(t,e,r);return a8o(t,e),t},l8o=yX&&yX.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=l8o(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return LHn.default.createElement("ink-box",{ref:t,style:a},r)});Ihr.displayName="Box";Ihr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};yX.default=Ihr});var Chr=H(UMe=>{"use strict";var hhr=UMe&&UMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UMe,"__esModule",{value:!0});var u8o=hhr(Ec()),dBe=hhr(VK()),VHn=hhr(zIr()),mhr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=dBe.default.dim(b)),e&&(b=VHn.default(b,e,"foreground")),t&&(b=VHn.default(b,t,"background")),n&&(b=dBe.default.bold(b)),a&&(b=dBe.default.italic(b)),o&&(b=dBe.default.underline(b)),l&&(b=dBe.default.strikethrough(b)),A&&(b=dBe.default.inverse(b)),b);return u8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};mhr.displayName="Text";mhr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};UMe.default=mhr});var MHn=H(bX=>{"use strict";var g8o=bX&&bX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),A8o=bX&&bX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),d8o=bX&&bX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&g8o(t,e,r);return A8o(t,e),t},KMe=bX&&bX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bX,"__esModule",{value:!0});var PHn=d8o(wt("fs")),wR=KMe(Ec()),WHn=KMe(Fpt()),p8o=KMe(fhr()),C$=KMe(Zpt()),g8=KMe(Chr()),OHn=new WHn.default({cwd:process.cwd(),internals:WHn.default.nodeInternals()}),f8o=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?OHn.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&PHn.existsSync(r.file)){let o=PHn.readFileSync(r.file,"utf8");if(n=p8o.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return wR.default.createElement(C$.default,{flexDirection:"column",padding:1},wR.default.createElement(C$.default,null,wR.default.createElement(g8.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),wR.default.createElement(g8.default,null," ",e.message)),r&&wR.default.createElement(C$.default,{marginTop:1},wR.default.createElement(g8.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&wR.default.createElement(C$.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>wR.default.createElement(C$.default,{key:o},wR.default.createElement(C$.default,{width:a+1},wR.default.createElement(g8.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),wR.default.createElement(g8.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&wR.default.createElement(C$.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let l=OHn.parseLine(o);return l?wR.default.createElement(C$.default,{key:o},wR.default.createElement(g8.default,{dimColor:!0},"- "),wR.default.createElement(g8.default,{dimColor:!0,bold:!0},l.function),wR.default.createElement(g8.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):wR.default.createElement(C$.default,{key:o},wR.default.createElement(g8.default,{dimColor:!0},"- "),wR.default.createElement(g8.default,{dimColor:!0,bold:!0},o))})))};bX.default=f8o});var YHn=H(EX=>{"use strict";var I8o=EX&&EX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),h8o=EX&&EX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),m8o=EX&&EX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&I8o(t,e,r);return h8o(t,e),t},NIe=EX&&EX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EX,"__esModule",{value:!0});var RIe=m8o(Ec()),HHn=NIe(lBe()),C8o=NIe(ohr()),_8o=NIe(chr()),y8o=NIe(uhr()),b8o=NIe(Ahr()),E8o=NIe(Gpt()),S8o=NIe(MHn()),v8o=" ",B8o="\x1B[Z",w8o="\x1B",Lpt=class extends RIe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. +`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:n}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=n,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:n,stackTraceLimit:a}=Error;Error.prepareStackTrace=(A,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:l}=o;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:a}),l}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let n={line:r.getLineNumber(),column:r.getColumnNumber()};VHn(n,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(n,"constructor",{value:!0,configurable:!0}),r.isEval()&&(n.evalOrigin=r.getEvalOrigin()),r.isNative()&&(n.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(n.type=a);let o=r.getFunctionName();o&&(n.function=o);let l=r.getMethodName();return l&&o!==l&&(n.method=l),n}parseLine(t){let r=t&&t.match(m8o);if(!r)return null;let n=r[1]==="new",a=r[2],o=r[3],l=r[4],A=Number(r[5]),f=Number(r[6]),I=r[7],C=r[8],b=r[9],E=r[10]==="native",N=r[11]===")",B,F={};if(C&&(F.line=Number(C)),b&&(F.column=Number(b)),N&&I){let Q=0;for(let X=I.length-1;X>0;X--)if(I.charAt(X)===")")Q++;else if(I.charAt(X)==="("&&I.charAt(X-1)===" "&&(Q--,Q===-1&&I.charAt(X-1)===" ")){let ae=I.slice(0,X-1);I=I.slice(X+1),a+=` (${ae}`;break}}if(a){let Q=a.match(C8o);Q&&(a=Q[1],B=Q[2])}return VHn(F,I,this._cwd),n&&Object.defineProperty(F,"constructor",{value:!0,configurable:!0}),o&&(F.evalOrigin=o,F.evalLine=A,F.evalColumn=f,F.evalFile=l&&l.replace(/\\/g,"/")),E&&(F.native=!0),a&&(F.function=a),B&&a!==B&&(F.method=B),F}};function VHn(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function h8o(e){if(e.length===0)return[];let t=e.map(r=>f8o(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var m8o=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),C8o=/^(.*?) \[as (.*?)\]$/;WHn.exports=mhr});var MHn=H((qru,OHn)=>{"use strict";OHn.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var Chr=H(($ru,HHn)=>{"use strict";var _8o=MHn(),y8o=(e,t)=>{let r=[],n=e-t,a=e+t;for(let o=n;o<=a;o++)r.push(o);return r};HHn.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=_8o(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},y8o(t,r.around).filter(n=>e[n-1]!==void 0).map(n=>({line:n,value:e[n-1]}))}});var Vpt=H(yX=>{"use strict";var b8o=yX&&yX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),E8o=yX&&yX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S8o=yX&&yX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&b8o(t,e,r);return E8o(t,e),t},v8o=yX&&yX.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=v8o(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return YHn.default.createElement("ink-box",{ref:t,style:a},r)});_hr.displayName="Box";_hr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};yX.default=_hr});var Ehr=H(jMe=>{"use strict";var yhr=jMe&&jMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jMe,"__esModule",{value:!0});var B8o=yhr(Ec()),pBe=yhr(VK()),QHn=yhr(thr()),bhr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=pBe.default.dim(b)),e&&(b=QHn.default(b,e,"foreground")),t&&(b=QHn.default(b,t,"background")),n&&(b=pBe.default.bold(b)),a&&(b=pBe.default.italic(b)),o&&(b=pBe.default.underline(b)),l&&(b=pBe.default.strikethrough(b)),A&&(b=pBe.default.inverse(b)),b);return B8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};bhr.displayName="Text";bhr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};jMe.default=bhr});var KHn=H(bX=>{"use strict";var w8o=bX&&bX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),T8o=bX&&bX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),R8o=bX&&bX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&w8o(t,e,r);return T8o(t,e),t},zMe=bX&&bX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bX,"__esModule",{value:!0});var XHn=R8o(wt("fs")),wR=zMe(Ec()),JHn=zMe(Lpt()),N8o=zMe(Chr()),C$=zMe(Vpt()),g8=zMe(Ehr()),UHn=new JHn.default({cwd:process.cwd(),internals:JHn.default.nodeInternals()}),D8o=({error:e})=>{let t=e.stack?e.stack.split(` +`).slice(1):void 0,r=t?UHn.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&XHn.existsSync(r.file)){let o=XHn.readFileSync(r.file,"utf8");if(n=N8o.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return wR.default.createElement(C$.default,{flexDirection:"column",padding:1},wR.default.createElement(C$.default,null,wR.default.createElement(g8.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),wR.default.createElement(g8.default,null," ",e.message)),r&&wR.default.createElement(C$.default,{marginTop:1},wR.default.createElement(g8.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&wR.default.createElement(C$.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>wR.default.createElement(C$.default,{key:o},wR.default.createElement(C$.default,{width:a+1},wR.default.createElement(g8.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),wR.default.createElement(g8.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&wR.default.createElement(C$.default,{marginTop:1,flexDirection:"column"},e.stack.split(` +`).slice(1).map(o=>{let l=UHn.parseLine(o);return l?wR.default.createElement(C$.default,{key:o},wR.default.createElement(g8.default,{dimColor:!0},"- "),wR.default.createElement(g8.default,{dimColor:!0,bold:!0},l.function),wR.default.createElement(g8.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):wR.default.createElement(C$.default,{key:o},wR.default.createElement(g8.default,{dimColor:!0},"- "),wR.default.createElement(g8.default,{dimColor:!0,bold:!0},o))})))};bX.default=D8o});var zHn=H(EX=>{"use strict";var k8o=EX&&EX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),x8o=EX&&EX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),G8o=EX&&EX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&k8o(t,e,r);return x8o(t,e),t},DIe=EX&&EX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EX,"__esModule",{value:!0});var NIe=G8o(Ec()),jHn=DIe(uBe()),F8o=DIe(uhr()),Z8o=DIe(Ahr()),L8o=DIe(phr()),V8o=DIe(Ihr()),P8o=DIe(Zpt()),W8o=DIe(KHn()),O8o=" ",M8o="\x1B[Z",H8o="\x1B",Ppt=class extends NIe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===w8o&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===v8o&&this.focusNext(),t===B8o&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return RIe.default.createElement(C8o.default.Provider,{value:{exit:this.handleExit}},RIe.default.createElement(_8o.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},RIe.default.createElement(y8o.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},RIe.default.createElement(b8o.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},RIe.default.createElement(E8o.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?RIe.default.createElement(S8o.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){HHn.default.hide(this.props.stdout)}componentWillUnmount(){HHn.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};EX.default=Lpt;Lpt.displayName="InternalApp"});var JHn=H(SX=>{"use strict";var T8o=SX&&SX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),R8o=SX&&SX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),N8o=SX&&SX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&T8o(t,e,r);return R8o(t,e),t},vX=SX&&SX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SX,"__esModule",{value:!0});var D8o=vX(Ec()),QHn=AIr(),k8o=vX(cMn()),x8o=vX(vMe()),G8o=vX(hIr()),F8o=vX(mIr()),_hr=vX(oHn()),Z8o=vX(_Hn()),L8o=vX(mpt()),V8o=vX(rhr()),P8o=N8o(JIr()),W8o=vX(ihr()),O8o=vX(YHn()),pBe=process.env.CI==="false"?!1:G8o.default,XHn=()=>{},yhr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=Z8o.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(pBe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(x8o.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},F8o.default(this),this.options=t,this.rootNode=P8o.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:QHn.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=k8o.default.create(t.stdout),this.throttledLog=t.debug?this.log:QHn.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=_hr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=L8o.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),pBe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=D8o.default.createElement(O8o.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);_hr.default.updateContainer(r,this.container,null,XHn)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(pBe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(pBe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),pBe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,_hr.default.updateContainer(null,this.container,null,XHn),W8o.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!pBe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=V8o.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};SX.default=yhr});var KHn=H(jMe=>{"use strict";var UHn=jMe&&jMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jMe,"__esModule",{value:!0});var M8o=UHn(JHn()),Vpt=UHn(ihr()),H8o=wt("stream"),Y8o=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},Q8o(t)),n=X8o(r.stdout,()=>new M8o.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>Vpt.default.delete(r.stdout),clear:n.clear}};jMe.default=Y8o;var Q8o=(e={})=>e instanceof H8o.Stream?{stdout:e,stdin:process.stdin}:e,X8o=(e,t)=>{let r;return Vpt.default.has(e)?r=Vpt.default.get(e):(r=t(),Vpt.default.set(e,r)),r}});var zHn=H(_$=>{"use strict";var J8o=_$&&_$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),U8o=_$&&_$.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),K8o=_$&&_$.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&J8o(t,e,r);return U8o(t,e),t};Object.defineProperty(_$,"__esModule",{value:!0});var zMe=K8o(Ec()),jHn=e=>{let{items:t,children:r,style:n}=e,[a,o]=zMe.useState(0),l=zMe.useMemo(()=>t.slice(a),[t,a]);zMe.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=zMe.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return zMe.default.createElement("ink-box",{internal_static:!0,style:f},A)};jHn.displayName="Static";_$.default=jHn});var $Hn=H(qMe=>{"use strict";var j8o=qMe&&qMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qMe,"__esModule",{value:!0});var z8o=j8o(Ec()),qHn=({children:e,transform:t})=>e==null?null:z8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);qHn.displayName="Transform";qMe.default=qHn});var tYn=H($Me=>{"use strict";var q8o=$Me&&$Me.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($Me,"__esModule",{value:!0});var $8o=q8o(Ec()),eYn=({count:e=1})=>$8o.default.createElement("ink-text",null,` -`.repeat(e));eYn.displayName="Newline";$Me.default=eYn});var iYn=H(eHe=>{"use strict";var rYn=eHe&&eHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eHe,"__esModule",{value:!0});var ejo=rYn(Ec()),tjo=rYn(Zpt()),nYn=()=>ejo.default.createElement(tjo.default,{flexGrow:1});nYn.displayName="Spacer";eHe.default=nYn});var Ppt=H(tHe=>{"use strict";var rjo=tHe&&tHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tHe,"__esModule",{value:!0});var njo=Ec(),ijo=rjo(chr()),sjo=()=>njo.useContext(ijo.default);tHe.default=sjo});var oYn=H(rHe=>{"use strict";var ojo=rHe&&rHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rHe,"__esModule",{value:!0});var sYn=Ec(),ajo=ojo(Ppt()),cjo=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=ajo.default();sYn.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),sYn.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};rHe.default=cjo});var aYn=H(nHe=>{"use strict";var ljo=nHe&&nHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nHe,"__esModule",{value:!0});var ujo=Ec(),gjo=ljo(ohr()),Ajo=()=>ujo.useContext(gjo.default);nHe.default=Ajo});var cYn=H(iHe=>{"use strict";var djo=iHe&&iHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iHe,"__esModule",{value:!0});var pjo=Ec(),fjo=djo(uhr()),Ijo=()=>pjo.useContext(fjo.default);iHe.default=Ijo});var lYn=H(sHe=>{"use strict";var hjo=sHe&&sHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sHe,"__esModule",{value:!0});var mjo=Ec(),Cjo=hjo(Ahr()),_jo=()=>mjo.useContext(Cjo.default);sHe.default=_jo});var gYn=H(aHe=>{"use strict";var uYn=aHe&&aHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aHe,"__esModule",{value:!0});var oHe=Ec(),yjo=uYn(Gpt()),bjo=uYn(Ppt()),Ejo=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=bjo.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=oHe.useContext(yjo.default),b=oHe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return oHe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),oHe.useEffect(()=>{e?f(b):I(b)},[e,b]),oHe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};aHe.default=Ejo});var AYn=H(cHe=>{"use strict";var Sjo=cHe&&cHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cHe,"__esModule",{value:!0});var vjo=Ec(),Bjo=Sjo(Gpt()),wjo=()=>{let e=vjo.useContext(Bjo.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};cHe.default=wjo});var dYn=H(bhr=>{"use strict";Object.defineProperty(bhr,"__esModule",{value:!0});bhr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var Al=H(wk=>{"use strict";Object.defineProperty(wk,"__esModule",{value:!0});var Tjo=KHn();Object.defineProperty(wk,"render",{enumerable:!0,get:function(){return Tjo.default}});var Rjo=Zpt();Object.defineProperty(wk,"Box",{enumerable:!0,get:function(){return Rjo.default}});var Njo=Chr();Object.defineProperty(wk,"Text",{enumerable:!0,get:function(){return Njo.default}});var Djo=zHn();Object.defineProperty(wk,"Static",{enumerable:!0,get:function(){return Djo.default}});var kjo=$Hn();Object.defineProperty(wk,"Transform",{enumerable:!0,get:function(){return kjo.default}});var xjo=tYn();Object.defineProperty(wk,"Newline",{enumerable:!0,get:function(){return xjo.default}});var Gjo=iYn();Object.defineProperty(wk,"Spacer",{enumerable:!0,get:function(){return Gjo.default}});var Fjo=oYn();Object.defineProperty(wk,"useInput",{enumerable:!0,get:function(){return Fjo.default}});var Zjo=aYn();Object.defineProperty(wk,"useApp",{enumerable:!0,get:function(){return Zjo.default}});var Ljo=Ppt();Object.defineProperty(wk,"useStdin",{enumerable:!0,get:function(){return Ljo.default}});var Vjo=cYn();Object.defineProperty(wk,"useStdout",{enumerable:!0,get:function(){return Vjo.default}});var Pjo=lYn();Object.defineProperty(wk,"useStderr",{enumerable:!0,get:function(){return Pjo.default}});var Wjo=gYn();Object.defineProperty(wk,"useFocus",{enumerable:!0,get:function(){return Wjo.default}});var Ojo=AYn();Object.defineProperty(wk,"useFocusManager",{enumerable:!0,get:function(){return Ojo.default}});var Mjo=dYn();Object.defineProperty(wk,"measureElement",{enumerable:!0,get:function(){return Mjo.default}})});var fYn=H(Wpt=>{"use strict";var Hjo=Ec(),Yjo=Symbol.for("react.element"),Qjo=Symbol.for("react.fragment"),Xjo=Object.prototype.hasOwnProperty,Jjo=Hjo.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Ujo={key:!0,ref:!0,__self:!0,__source:!0};function pYn(e,t,r){var n,a={},o=null,l=null;r!==void 0&&(o=""+r),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)Xjo.call(t,n)&&!Ujo.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)a[n]===void 0&&(a[n]=t[n]);return{$$typeof:Yjo,type:e,key:o,ref:l,props:a,_owner:Jjo.current}}Wpt.Fragment=Qjo;Wpt.jsx=pYn;Wpt.jsxs=pYn});var Pc=H((Tru,IYn)=>{"use strict";IYn.exports=fYn()});var DYn=H(kIe=>{"use strict";var{promisify:s6o}=wt("util"),NYn=wt("fs");async function Thr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await s6o(NYn[e])(r))[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function Rhr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return NYn[e](r)[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}kIe.isFile=Thr.bind(null,"stat","isFile");kIe.isDirectory=Thr.bind(null,"stat","isDirectory");kIe.isSymlink=Thr.bind(null,"lstat","isSymbolicLink");kIe.isFileSync=Rhr.bind(null,"statSync","isFile");kIe.isDirectorySync=Rhr.bind(null,"statSync","isDirectory");kIe.isSymlinkSync=Rhr.bind(null,"lstatSync","isSymbolicLink")});var ZYn=H((anu,Nhr)=>{"use strict";var xIe=wt("path"),kYn=DYn(),xYn=e=>e.length>1?`{${e.join(",")}}`:e[0],GYn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return xIe.isAbsolute(r)?r:xIe.join(t,r)},o6o=(e,t)=>xIe.extname(e)?`**/${e}`:`**/${e}.${xYn(t)}`,FYn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>xIe.posix.join(e,o6o(r,t.extensions))):t.files?t.files.map(r=>xIe.posix.join(e,`**/${r}`)):t.extensions?[xIe.posix.join(e,`**/*.${xYn(t.extensions)}`)]:[xIe.posix.join(e,"**")]};Nhr.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async n=>await kYn.isDirectory(GYn(n,t.cwd))?FYn(n,t):n));return[].concat.apply([],r)};Nhr.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(n=>kYn.isDirectorySync(GYn(n,t.cwd))?FYn(n,t):n);return[].concat.apply([],r)}});var lHe=H((cnu,YYn)=>{function LYn(e){return Array.isArray(e)?e:[e]}var xhr="",VYn=" ",Dhr="\\",a6o=/^\s+$/,c6o=/(?:[^\\]|^)\\$/,l6o=/^\\!/,u6o=/^\\#/,g6o=/\r?\n/g,A6o=/^\.*\/|^\.+$/,khr="/",OYn="node-ignore";typeof Symbol<"u"&&(OYn=Symbol.for("node-ignore"));var PYn=OYn,d6o=(e,t,r)=>Object.defineProperty(e,t,{value:r}),p6o=/([0-z])-([0-z])/g,MYn=()=>!1,f6o=e=>e.replace(p6o,(t,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?t:xhr),I6o=e=>{let{length:t}=e;return e.slice(0,t-t%2)},h6o=[[/^\uFEFF/,()=>xhr],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?VYn:xhr)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+VYn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let n=r.replace(/\\\*/g,"[^\\/]*");return t+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>Dhr],[/\\\\/g,()=>Dhr],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,n,a)=>t===Dhr?`\\[${r}${I6o(n)}${a}`:a==="]"&&n.length%2===0?`[${f6o(r)}${n}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],WYn=Object.create(null),m6o=(e,t)=>{let r=WYn[e];return r||(r=h6o.reduce((n,[a,o])=>n.replace(a,o.bind(e)),e),WYn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},Zhr=e=>typeof e=="string",C6o=e=>e&&Zhr(e)&&!a6o.test(e)&&!c6o.test(e)&&e.indexOf("#")!==0,_6o=e=>e.split(g6o),Ghr=class{constructor(t,r,n,a){this.origin=t,this.pattern=r,this.negative=n,this.regex=a}},y6o=(e,t)=>{let r=e,n=!1;e.indexOf("!")===0&&(n=!0,e=e.substr(1)),e=e.replace(l6o,"!").replace(u6o,"#");let a=m6o(e,t);return new Ghr(r,e,n,a)},b6o=(e,t)=>{throw new t(e)},y$=(e,t,r)=>Zhr(e)?e?y$.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),HYn=e=>A6o.test(e);y$.isNotRelative=HYn;y$.convert=e=>e;var Fhr=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:n=!1}={}){d6o(this,PYn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[PYn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(C6o(t)){let r=y6o(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,LYn(Zhr(t)?_6o(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let n=!1,a=!1;return this._rules.forEach(o=>{let{negative:l}=o;if(a===l&&n!==a||l&&!n&&!a&&!r)return;o.regex.test(t)&&(n=!l,a=l)}),{ignored:n,unignored:a}}_test(t,r,n,a){let o=t&&y$.convert(t);return y$(o,t,this._allowRelativePaths?MYn:b6o),this._t(o,r,n,a)}_t(t,r,n,a){if(t in r)return r[t];if(a||(a=t.split(khr)),a.pop(),!a.length)return r[t]=this._testOne(t,n);let o=this._t(a.join(khr)+khr,r,n,a);return r[t]=o.ignored?o:this._testOne(t,n)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return LYn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},Hpt=e=>new Fhr(e),E6o=e=>y$(e&&y$.convert(e),e,MYn);Hpt.isPathValid=E6o;Hpt.default=Hpt;YYn.exports=Hpt;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");y$.convert=e;let t=/^[a-z]:\//i;y$.isNotRelative=r=>t.test(r)||HYn(r)}});var Mhr=H(Upt=>{"use strict";Object.defineProperty(Upt,"__esModule",{value:!0});Upt.Context=void 0;var fQn=wt("fs"),Q6o=wt("os"),Ohr=class{constructor(){var t,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,fQn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,fQn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${Q6o.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};Upt.Context=Ohr});var hQn=H(CBe=>{"use strict";Object.defineProperty(CBe,"__esModule",{value:!0});CBe.checkBypass=CBe.getProxyUrl=void 0;function X6o(e){let t=e.protocol==="https:";if(IQn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new Kpt(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new Kpt(`http://${r}`)}else return}CBe.getProxyUrl=X6o;function IQn(e){if(!e.hostname)return!1;let t=e.hostname;if(J6o(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;e.port?n=Number(e.port):e.protocol==="http:"?n=80:e.protocol==="https:"&&(n=443);let a=[e.hostname.toUpperCase()];typeof n=="number"&&a.push(`${a[0]}:${n}`);for(let o of r.split(",").map(l=>l.trim().toUpperCase()).filter(l=>l))if(o==="*"||a.some(l=>l===o||l.endsWith(`.${o}`)||o.startsWith(".")&&l.endsWith(`${o}`)))return!0;return!1}CBe.checkBypass=IQn;function J6o(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var Kpt=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var yQn=H(_Be=>{"use strict";var $nu=wt("net"),U6o=wt("tls"),Hhr=wt("http"),mQn=wt("https"),K6o=wt("events"),eiu=wt("assert"),j6o=wt("util");_Be.httpOverHttp=z6o;_Be.httpsOverHttp=q6o;_Be.httpOverHttps=$6o;_Be.httpsOverHttps=e7o;function z6o(e){var t=new E$(e);return t.request=Hhr.request,t}function q6o(e){var t=new E$(e);return t.request=Hhr.request,t.createSocket=CQn,t.defaultPort=443,t}function $6o(e){var t=new E$(e);return t.request=mQn.request,t}function e7o(e){var t=new E$(e);return t.request=mQn.request,t.createSocket=CQn,t.defaultPort=443,t}function E$(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||Hhr.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(n,a,o,l){for(var A=_Qn(a,o,l),f=0,I=t.requests.length;f=this.maxSockets){o.requests.push(l);return}o.createSocket(l,function(A){A.on("free",f),A.on("close",I),A.on("agentRemove",I),t.onSocket(A);function f(){o.emit("free",A,l)}function I(C){o.removeSocket(A),A.removeListener("free",f),A.removeListener("close",I),A.removeListener("agentRemove",I)}})};E$.prototype.createSocket=function(t,r){var n=this,a={};n.sockets.push(a);var o=Yhr({},n.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Hoe("making CONNECT request");var l=n.request(o);l.useChunkedEncodingByDefault=!1,l.once("response",A),l.once("upgrade",f),l.once("connect",I),l.once("error",C),l.end();function A(b){b.upgrade=!0}function f(b,E,N){process.nextTick(function(){I(b,E,N)})}function I(b,E,N){if(l.removeAllListeners(),E.removeAllListeners(),b.statusCode!==200){Hoe("tunneling socket could not be established, statusCode=%d",b.statusCode),E.destroy();var B=new Error("tunneling socket could not be established, statusCode="+b.statusCode);B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}if(N.length>0){Hoe("got illegal response body from proxy"),E.destroy();var B=new Error("got illegal response body from proxy");B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}return Hoe("tunneling connection has established"),n.sockets[n.sockets.indexOf(a)]=E,r(E)}function C(b){l.removeAllListeners(),Hoe(`tunneling socket could not be established, cause=%s -`,b.message,b.stack);var E=new Error("tunneling socket could not be established, cause="+b.message);E.code="ECONNRESET",t.request.emit("error",E),n.removeSocket(a)}};E$.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(a){n.request.onSocket(a)})}};function CQn(e,t){var r=this;E$.prototype.createSocket.call(r,e,function(n){var a=e.request.getHeader("host"),o=Yhr({},r.options,{socket:n,servername:a?a.replace(/:.*$/,""):e.host}),l=U6o.connect(0,o);r.sockets[r.sockets.indexOf(n)]=l,t(l)})}function _Qn(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function Yhr(e){for(var t=1,r=arguments.length;t{bQn.exports=yQn()});var GE=H((niu,SQn)=>{SQn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var Ub=H((iiu,vQn)=>{"use strict";var qB=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},Qhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},Xhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},Jhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},Uhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},Khr=class e extends qB{constructor(t,r,n,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},jhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},zhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},qhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},$hr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},emr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},tmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},rmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},nmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},imr=class e extends qB{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},jpt=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},smr=class extends qB{constructor(t){super(t),Error.captureStackTrace(this,jpt),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},omr=class e extends Error{constructor(t,r,n){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},amr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},cmr=class e extends qB{constructor(t,r,{headers:n,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}};vQn.exports={HTTPParserError:omr,UndiciError:qB,HeadersTimeoutError:Xhr,HeadersOverflowError:Jhr,BodyTimeoutError:Uhr,RequestContentLengthMismatchError:emr,ConnectTimeoutError:Qhr,ResponseStatusCodeError:Khr,InvalidArgumentError:jhr,InvalidReturnValueError:zhr,RequestAbortedError:qhr,ClientDestroyedError:rmr,ClientClosedError:nmr,InformationalError:$hr,SocketError:imr,NotSupportedError:jpt,ResponseContentLengthMismatchError:tmr,BalancedPoolMissingUpstreamError:smr,ResponseExceededMaxSizeError:amr,RequestRetryError:cmr}});var wQn=H((siu,BQn)=>{"use strict";var zpt={},lmr=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var DQn=wt("assert"),{kDestroyed:kQn,kBodyUsed:TQn}=GE(),{IncomingMessage:t7o}=wt("http"),yBe=wt("stream"),r7o=wt("net"),{InvalidArgumentError:Tk}=Ub(),{Blob:RQn}=wt("buffer"),qpt=wt("util"),{stringify:n7o}=wt("querystring"),{headerNameLowerCasedRecord:i7o}=wQn(),[umr,NQn]=process.versions.node.split(".").map(e=>Number(e));function s7o(){}function gmr(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function xQn(e){return RQn&&e instanceof RQn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function o7o(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=n7o(t);return r&&(e+="?"+r),e}function GQn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new Tk("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new Tk("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new Tk("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new Tk("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new Tk("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new Tk("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new Tk("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new Tk("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),n&&!n.startsWith("/")&&(n=`/${n}`),e=new URL(r+n)}return e}function a7o(e){if(e=GQn(e),e.pathname!=="/"||e.search||e.hash)throw new Tk("invalid url");return e}function c7o(e){if(e[0]==="["){let r=e.indexOf("]");return DQn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function l7o(e){if(!e)return null;DQn.strictEqual(typeof e,"string");let t=c7o(e);return r7o.isIP(t)?"":t}function u7o(e){return JSON.parse(JSON.stringify(e))}function g7o(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function A7o(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function d7o(e){if(e==null)return 0;if(gmr(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(xQn(e))return e.size!=null?e.size:null;if(ZQn(e))return e.byteLength}return null}function Amr(e){return!e||!!(e.destroyed||e[kQn])}function FQn(e){let t=e&&e._readableState;return Amr(e)&&t&&!t.endEmitted}function p7o(e,t){e==null||!gmr(e)||Amr(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===t7o&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,n)=>{r.emit("error",n)},e,t),e.destroyed!==!0&&(e[kQn]=!0))}var f7o=/timeout=(\d+)/;function I7o(e){let t=e.toString().match(f7o);return t?parseInt(t[1],10)*1e3:null}function h7o(e){return i7o[e]||e.toLowerCase()}function m7o(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[n]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function C7o(e){let t=[],r=!1,n=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function w7o(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function T7o(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function R7o(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var N7o=!!String.prototype.toWellFormed;function D7o(e){return N7o?`${e}`.toWellFormed():qpt.toUSVString?qpt.toUSVString(e):`${e}`}function k7o(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var LQn=Object.create(null);LQn.enumerable=!0;VQn.exports={kEnumerableProperty:LQn,nop:s7o,isDisturbed:y7o,isErrored:b7o,isReadable:E7o,toUSVString:D7o,isReadableAborted:FQn,isBlobLike:xQn,parseOrigin:a7o,parseURL:GQn,getServerName:l7o,isStream:gmr,isIterable:A7o,isAsyncIterable:g7o,isDestroyed:Amr,headerNameToString:h7o,parseRawHeaders:C7o,parseHeaders:m7o,parseKeepAliveTimeout:I7o,destroy:p7o,bodyLength:d7o,deepClone:u7o,ReadableStreamFrom:B7o,isBuffer:ZQn,validateHandler:_7o,getSocketInfo:S7o,isFormDataLike:w7o,buildURL:o7o,throwIfAborted:T7o,addAbortListener:R7o,parseRangeHeader:k7o,nodeMajor:umr,nodeMinor:NQn,nodeHasAutoSelectFamily:umr>18||umr===18&&NQn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var OQn=H((aiu,WQn)=>{"use strict";var dmr=Date.now(),Yoe,Qoe=[];function x7o(){dmr=Date.now();let e=Qoe.length,t=0;for(;t0&&dmr>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?Qoe[t]=Qoe.pop():Qoe.pop(),e-=1):t+=1}Qoe.length>0&&PQn()}function PQn(){Yoe&&Yoe.refresh?Yoe.refresh():(clearTimeout(Yoe),Yoe=setTimeout(x7o,1e3),Yoe.unref&&Yoe.unref())}var $pt=class{constructor(t,r,n){this.callback=t,this.delay=r,this.opaque=n,this.state=-2,this.refresh()}refresh(){this.state===-2&&(Qoe.push(this),(!Yoe||Qoe.length===1)&&PQn()),this.state=0}clear(){this.state=-1}};WQn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new $pt(e,t,r)},clearTimeout(e){e instanceof $pt?e.clear():clearTimeout(e)}}});var pmr=H((ciu,MQn)=>{"use strict";var G7o=wt("node:events").EventEmitter,F7o=wt("node:util").inherits;function GIe(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let A=this._lookbehind_size+o;return A>0&&this.emit("info",!1,this._lookbehind,0,A),this._lookbehind.copy(this._lookbehind,0,A,this._lookbehind_size-A),this._lookbehind_size-=A,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+n;for(o=t-n;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var Z7o=wt("node:util").inherits,HQn=wt("node:stream").Readable;function fmr(e){HQn.call(this,e)}Z7o(fmr,HQn);fmr.prototype._read=function(e){};YQn.exports=fmr});var eft=H((uiu,XQn)=>{"use strict";XQn.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var jQn=H((giu,KQn)=>{"use strict";var UQn=wt("node:events").EventEmitter,L7o=wt("node:util").inherits,JQn=eft(),V7o=pmr(),P7o=Buffer.from(`\r +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===H8o&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===O8o&&this.focusNext(),t===M8o&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return NIe.default.createElement(F8o.default.Provider,{value:{exit:this.handleExit}},NIe.default.createElement(Z8o.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},NIe.default.createElement(L8o.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},NIe.default.createElement(V8o.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},NIe.default.createElement(P8o.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?NIe.default.createElement(W8o.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){jHn.default.hide(this.props.stdout)}componentWillUnmount(){jHn.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};EX.default=Ppt;Ppt.displayName="InternalApp"});var eYn=H(SX=>{"use strict";var Y8o=SX&&SX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Q8o=SX&&SX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),X8o=SX&&SX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Y8o(t,e,r);return Q8o(t,e),t},vX=SX&&SX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SX,"__esModule",{value:!0});var J8o=vX(Ec()),qHn=IIr(),U8o=vX(fMn()),K8o=vX(wMe()),j8o=vX(yIr()),z8o=vX(bIr()),Shr=vX(dHn()),q8o=vX(wHn()),$8o=vX(_pt()),ejo=vX(ohr()),tjo=X8o(zIr()),rjo=vX(chr()),njo=vX(zHn()),fBe=process.env.CI==="false"?!1:j8o.default,$Hn=()=>{},vhr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=q8o.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` +`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(fBe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(K8o.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},z8o.default(this),this.options=t,this.rootNode=tjo.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:qHn.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=U8o.default.create(t.stdout),this.throttledLog=t.debug?this.log:qHn.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=Shr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=$8o.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),fBe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=J8o.default.createElement(njo.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);Shr.default.updateContainer(r,this.container,null,$Hn)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(fBe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(fBe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),fBe?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,Shr.default.updateContainer(null,this.container,null,$Hn),rjo.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!fBe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=ejo.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};SX.default=vhr});var rYn=H(qMe=>{"use strict";var tYn=qMe&&qMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qMe,"__esModule",{value:!0});var ijo=tYn(eYn()),Wpt=tYn(chr()),sjo=wt("stream"),ojo=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},ajo(t)),n=cjo(r.stdout,()=>new ijo.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>Wpt.default.delete(r.stdout),clear:n.clear}};qMe.default=ojo;var ajo=(e={})=>e instanceof sjo.Stream?{stdout:e,stdin:process.stdin}:e,cjo=(e,t)=>{let r;return Wpt.default.has(e)?r=Wpt.default.get(e):(r=t(),Wpt.default.set(e,r)),r}});var iYn=H(_$=>{"use strict";var ljo=_$&&_$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ujo=_$&&_$.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gjo=_$&&_$.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&ljo(t,e,r);return ujo(t,e),t};Object.defineProperty(_$,"__esModule",{value:!0});var $Me=gjo(Ec()),nYn=e=>{let{items:t,children:r,style:n}=e,[a,o]=$Me.useState(0),l=$Me.useMemo(()=>t.slice(a),[t,a]);$Me.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=$Me.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return $Me.default.createElement("ink-box",{internal_static:!0,style:f},A)};nYn.displayName="Static";_$.default=nYn});var oYn=H(eHe=>{"use strict";var Ajo=eHe&&eHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eHe,"__esModule",{value:!0});var djo=Ajo(Ec()),sYn=({children:e,transform:t})=>e==null?null:djo.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);sYn.displayName="Transform";eHe.default=sYn});var cYn=H(tHe=>{"use strict";var pjo=tHe&&tHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tHe,"__esModule",{value:!0});var fjo=pjo(Ec()),aYn=({count:e=1})=>fjo.default.createElement("ink-text",null,` +`.repeat(e));aYn.displayName="Newline";tHe.default=aYn});var gYn=H(rHe=>{"use strict";var lYn=rHe&&rHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rHe,"__esModule",{value:!0});var Ijo=lYn(Ec()),hjo=lYn(Vpt()),uYn=()=>Ijo.default.createElement(hjo.default,{flexGrow:1});uYn.displayName="Spacer";rHe.default=uYn});var Opt=H(nHe=>{"use strict";var mjo=nHe&&nHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nHe,"__esModule",{value:!0});var Cjo=Ec(),_jo=mjo(Ahr()),yjo=()=>Cjo.useContext(_jo.default);nHe.default=yjo});var dYn=H(iHe=>{"use strict";var bjo=iHe&&iHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iHe,"__esModule",{value:!0});var AYn=Ec(),Ejo=bjo(Opt()),Sjo=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=Ejo.default();AYn.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),AYn.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};iHe.default=Sjo});var pYn=H(sHe=>{"use strict";var vjo=sHe&&sHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sHe,"__esModule",{value:!0});var Bjo=Ec(),wjo=vjo(uhr()),Tjo=()=>Bjo.useContext(wjo.default);sHe.default=Tjo});var fYn=H(oHe=>{"use strict";var Rjo=oHe&&oHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oHe,"__esModule",{value:!0});var Njo=Ec(),Djo=Rjo(phr()),kjo=()=>Njo.useContext(Djo.default);oHe.default=kjo});var IYn=H(aHe=>{"use strict";var xjo=aHe&&aHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aHe,"__esModule",{value:!0});var Gjo=Ec(),Fjo=xjo(Ihr()),Zjo=()=>Gjo.useContext(Fjo.default);aHe.default=Zjo});var mYn=H(lHe=>{"use strict";var hYn=lHe&&lHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(lHe,"__esModule",{value:!0});var cHe=Ec(),Ljo=hYn(Zpt()),Vjo=hYn(Opt()),Pjo=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=Vjo.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=cHe.useContext(Ljo.default),b=cHe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return cHe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),cHe.useEffect(()=>{e?f(b):I(b)},[e,b]),cHe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};lHe.default=Pjo});var CYn=H(uHe=>{"use strict";var Wjo=uHe&&uHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uHe,"__esModule",{value:!0});var Ojo=Ec(),Mjo=Wjo(Zpt()),Hjo=()=>{let e=Ojo.useContext(Mjo.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};uHe.default=Hjo});var _Yn=H(Bhr=>{"use strict";Object.defineProperty(Bhr,"__esModule",{value:!0});Bhr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var Al=H(wk=>{"use strict";Object.defineProperty(wk,"__esModule",{value:!0});var Yjo=rYn();Object.defineProperty(wk,"render",{enumerable:!0,get:function(){return Yjo.default}});var Qjo=Vpt();Object.defineProperty(wk,"Box",{enumerable:!0,get:function(){return Qjo.default}});var Xjo=Ehr();Object.defineProperty(wk,"Text",{enumerable:!0,get:function(){return Xjo.default}});var Jjo=iYn();Object.defineProperty(wk,"Static",{enumerable:!0,get:function(){return Jjo.default}});var Ujo=oYn();Object.defineProperty(wk,"Transform",{enumerable:!0,get:function(){return Ujo.default}});var Kjo=cYn();Object.defineProperty(wk,"Newline",{enumerable:!0,get:function(){return Kjo.default}});var jjo=gYn();Object.defineProperty(wk,"Spacer",{enumerable:!0,get:function(){return jjo.default}});var zjo=dYn();Object.defineProperty(wk,"useInput",{enumerable:!0,get:function(){return zjo.default}});var qjo=pYn();Object.defineProperty(wk,"useApp",{enumerable:!0,get:function(){return qjo.default}});var $jo=Opt();Object.defineProperty(wk,"useStdin",{enumerable:!0,get:function(){return $jo.default}});var e6o=fYn();Object.defineProperty(wk,"useStdout",{enumerable:!0,get:function(){return e6o.default}});var t6o=IYn();Object.defineProperty(wk,"useStderr",{enumerable:!0,get:function(){return t6o.default}});var r6o=mYn();Object.defineProperty(wk,"useFocus",{enumerable:!0,get:function(){return r6o.default}});var n6o=CYn();Object.defineProperty(wk,"useFocusManager",{enumerable:!0,get:function(){return n6o.default}});var i6o=_Yn();Object.defineProperty(wk,"measureElement",{enumerable:!0,get:function(){return i6o.default}})});var bYn=H(Mpt=>{"use strict";var s6o=Ec(),o6o=Symbol.for("react.element"),a6o=Symbol.for("react.fragment"),c6o=Object.prototype.hasOwnProperty,l6o=s6o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,u6o={key:!0,ref:!0,__self:!0,__source:!0};function yYn(e,t,r){var n,a={},o=null,l=null;r!==void 0&&(o=""+r),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)c6o.call(t,n)&&!u6o.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)a[n]===void 0&&(a[n]=t[n]);return{$$typeof:o6o,type:e,key:o,ref:l,props:a,_owner:l6o.current}}Mpt.Fragment=a6o;Mpt.jsx=yYn;Mpt.jsxs=yYn});var Pc=H((_nu,EYn)=>{"use strict";EYn.exports=bYn()});var VYn=H(xIe=>{"use strict";var{promisify:y6o}=wt("util"),LYn=wt("fs");async function khr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await y6o(LYn[e])(r))[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function xhr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return LYn[e](r)[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}xIe.isFile=khr.bind(null,"stat","isFile");xIe.isDirectory=khr.bind(null,"stat","isDirectory");xIe.isSymlink=khr.bind(null,"lstat","isSymbolicLink");xIe.isFileSync=xhr.bind(null,"statSync","isFile");xIe.isDirectorySync=xhr.bind(null,"statSync","isDirectory");xIe.isSymlinkSync=xhr.bind(null,"lstatSync","isSymbolicLink")});var HYn=H(($nu,Ghr)=>{"use strict";var GIe=wt("path"),PYn=VYn(),WYn=e=>e.length>1?`{${e.join(",")}}`:e[0],OYn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return GIe.isAbsolute(r)?r:GIe.join(t,r)},b6o=(e,t)=>GIe.extname(e)?`**/${e}`:`**/${e}.${WYn(t)}`,MYn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>GIe.posix.join(e,b6o(r,t.extensions))):t.files?t.files.map(r=>GIe.posix.join(e,`**/${r}`)):t.extensions?[GIe.posix.join(e,`**/*.${WYn(t.extensions)}`)]:[GIe.posix.join(e,"**")]};Ghr.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async n=>await PYn.isDirectory(OYn(n,t.cwd))?MYn(n,t):n));return[].concat.apply([],r)};Ghr.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(n=>PYn.isDirectorySync(OYn(n,t.cwd))?MYn(n,t):n);return[].concat.apply([],r)}});var gHe=H((eiu,zYn)=>{function YYn(e){return Array.isArray(e)?e:[e]}var Lhr="",QYn=" ",Fhr="\\",E6o=/^\s+$/,S6o=/(?:[^\\]|^)\\$/,v6o=/^\\!/,B6o=/^\\#/,w6o=/\r?\n/g,T6o=/^\.*\/|^\.+$/,Zhr="/",UYn="node-ignore";typeof Symbol<"u"&&(UYn=Symbol.for("node-ignore"));var XYn=UYn,R6o=(e,t,r)=>Object.defineProperty(e,t,{value:r}),N6o=/([0-z])-([0-z])/g,KYn=()=>!1,D6o=e=>e.replace(N6o,(t,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?t:Lhr),k6o=e=>{let{length:t}=e;return e.slice(0,t-t%2)},x6o=[[/^\uFEFF/,()=>Lhr],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?QYn:Lhr)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+QYn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let n=r.replace(/\\\*/g,"[^\\/]*");return t+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>Fhr],[/\\\\/g,()=>Fhr],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,n,a)=>t===Fhr?`\\[${r}${k6o(n)}${a}`:a==="]"&&n.length%2===0?`[${D6o(r)}${n}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],JYn=Object.create(null),G6o=(e,t)=>{let r=JYn[e];return r||(r=x6o.reduce((n,[a,o])=>n.replace(a,o.bind(e)),e),JYn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},Whr=e=>typeof e=="string",F6o=e=>e&&Whr(e)&&!E6o.test(e)&&!S6o.test(e)&&e.indexOf("#")!==0,Z6o=e=>e.split(w6o),Vhr=class{constructor(t,r,n,a){this.origin=t,this.pattern=r,this.negative=n,this.regex=a}},L6o=(e,t)=>{let r=e,n=!1;e.indexOf("!")===0&&(n=!0,e=e.substr(1)),e=e.replace(v6o,"!").replace(B6o,"#");let a=G6o(e,t);return new Vhr(r,e,n,a)},V6o=(e,t)=>{throw new t(e)},y$=(e,t,r)=>Whr(e)?e?y$.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),jYn=e=>T6o.test(e);y$.isNotRelative=jYn;y$.convert=e=>e;var Phr=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:n=!1}={}){R6o(this,XYn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[XYn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(F6o(t)){let r=L6o(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,YYn(Whr(t)?Z6o(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let n=!1,a=!1;return this._rules.forEach(o=>{let{negative:l}=o;if(a===l&&n!==a||l&&!n&&!a&&!r)return;o.regex.test(t)&&(n=!l,a=l)}),{ignored:n,unignored:a}}_test(t,r,n,a){let o=t&&y$.convert(t);return y$(o,t,this._allowRelativePaths?KYn:V6o),this._t(o,r,n,a)}_t(t,r,n,a){if(t in r)return r[t];if(a||(a=t.split(Zhr)),a.pop(),!a.length)return r[t]=this._testOne(t,n);let o=this._t(a.join(Zhr)+Zhr,r,n,a);return r[t]=o.ignored?o:this._testOne(t,n)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return YYn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},Qpt=e=>new Phr(e),P6o=e=>y$(e&&y$.convert(e),e,KYn);Qpt.isPathValid=P6o;Qpt.default=Qpt;zYn.exports=Qpt;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");y$.convert=e;let t=/^[a-z]:\//i;y$.isNotRelative=r=>t.test(r)||jYn(r)}});var Xhr=H(jpt=>{"use strict";Object.defineProperty(jpt,"__esModule",{value:!0});jpt.Context=void 0;var bQn=wt("fs"),a7o=wt("os"),Qhr=class{constructor(){var t,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,bQn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,bQn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${a7o.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};jpt.Context=Qhr});var SQn=H(_Be=>{"use strict";Object.defineProperty(_Be,"__esModule",{value:!0});_Be.checkBypass=_Be.getProxyUrl=void 0;function c7o(e){let t=e.protocol==="https:";if(EQn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new zpt(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new zpt(`http://${r}`)}else return}_Be.getProxyUrl=c7o;function EQn(e){if(!e.hostname)return!1;let t=e.hostname;if(l7o(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;e.port?n=Number(e.port):e.protocol==="http:"?n=80:e.protocol==="https:"&&(n=443);let a=[e.hostname.toUpperCase()];typeof n=="number"&&a.push(`${a[0]}:${n}`);for(let o of r.split(",").map(l=>l.trim().toUpperCase()).filter(l=>l))if(o==="*"||a.some(l=>l===o||l.endsWith(`.${o}`)||o.startsWith(".")&&l.endsWith(`${o}`)))return!0;return!1}_Be.checkBypass=EQn;function l7o(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var zpt=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var TQn=H(yBe=>{"use strict";var Qiu=wt("net"),u7o=wt("tls"),Jhr=wt("http"),vQn=wt("https"),g7o=wt("events"),Xiu=wt("assert"),A7o=wt("util");yBe.httpOverHttp=d7o;yBe.httpsOverHttp=p7o;yBe.httpOverHttps=f7o;yBe.httpsOverHttps=I7o;function d7o(e){var t=new E$(e);return t.request=Jhr.request,t}function p7o(e){var t=new E$(e);return t.request=Jhr.request,t.createSocket=BQn,t.defaultPort=443,t}function f7o(e){var t=new E$(e);return t.request=vQn.request,t}function I7o(e){var t=new E$(e);return t.request=vQn.request,t.createSocket=BQn,t.defaultPort=443,t}function E$(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||Jhr.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(n,a,o,l){for(var A=wQn(a,o,l),f=0,I=t.requests.length;f=this.maxSockets){o.requests.push(l);return}o.createSocket(l,function(A){A.on("free",f),A.on("close",I),A.on("agentRemove",I),t.onSocket(A);function f(){o.emit("free",A,l)}function I(C){o.removeSocket(A),A.removeListener("free",f),A.removeListener("close",I),A.removeListener("agentRemove",I)}})};E$.prototype.createSocket=function(t,r){var n=this,a={};n.sockets.push(a);var o=Uhr({},n.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Yoe("making CONNECT request");var l=n.request(o);l.useChunkedEncodingByDefault=!1,l.once("response",A),l.once("upgrade",f),l.once("connect",I),l.once("error",C),l.end();function A(b){b.upgrade=!0}function f(b,E,N){process.nextTick(function(){I(b,E,N)})}function I(b,E,N){if(l.removeAllListeners(),E.removeAllListeners(),b.statusCode!==200){Yoe("tunneling socket could not be established, statusCode=%d",b.statusCode),E.destroy();var B=new Error("tunneling socket could not be established, statusCode="+b.statusCode);B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}if(N.length>0){Yoe("got illegal response body from proxy"),E.destroy();var B=new Error("got illegal response body from proxy");B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}return Yoe("tunneling connection has established"),n.sockets[n.sockets.indexOf(a)]=E,r(E)}function C(b){l.removeAllListeners(),Yoe(`tunneling socket could not be established, cause=%s +`,b.message,b.stack);var E=new Error("tunneling socket could not be established, cause="+b.message);E.code="ECONNRESET",t.request.emit("error",E),n.removeSocket(a)}};E$.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(a){n.request.onSocket(a)})}};function BQn(e,t){var r=this;E$.prototype.createSocket.call(r,e,function(n){var a=e.request.getHeader("host"),o=Uhr({},r.options,{socket:n,servername:a?a.replace(/:.*$/,""):e.host}),l=u7o.connect(0,o);r.sockets[r.sockets.indexOf(n)]=l,t(l)})}function wQn(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function Uhr(e){for(var t=1,r=arguments.length;t{RQn.exports=TQn()});var GE=H((Kiu,DQn)=>{DQn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var Ub=H((jiu,kQn)=>{"use strict";var qB=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},Khr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},jhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},zhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},qhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},$hr=class e extends qB{constructor(t,r,n,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},emr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},tmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},rmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},nmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},imr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},smr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},omr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},amr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},cmr=class e extends qB{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},qpt=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},lmr=class extends qB{constructor(t){super(t),Error.captureStackTrace(this,qpt),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},umr=class e extends Error{constructor(t,r,n){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},gmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},Amr=class e extends qB{constructor(t,r,{headers:n,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}};kQn.exports={HTTPParserError:umr,UndiciError:qB,HeadersTimeoutError:jhr,HeadersOverflowError:zhr,BodyTimeoutError:qhr,RequestContentLengthMismatchError:imr,ConnectTimeoutError:Khr,ResponseStatusCodeError:$hr,InvalidArgumentError:emr,InvalidReturnValueError:tmr,RequestAbortedError:rmr,ClientDestroyedError:omr,ClientClosedError:amr,InformationalError:nmr,SocketError:cmr,NotSupportedError:qpt,ResponseContentLengthMismatchError:smr,BalancedPoolMissingUpstreamError:lmr,ResponseExceededMaxSizeError:gmr,RequestRetryError:Amr}});var GQn=H((ziu,xQn)=>{"use strict";var $pt={},dmr=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var VQn=wt("assert"),{kDestroyed:PQn,kBodyUsed:FQn}=GE(),{IncomingMessage:h7o}=wt("http"),bBe=wt("stream"),m7o=wt("net"),{InvalidArgumentError:Tk}=Ub(),{Blob:ZQn}=wt("buffer"),eft=wt("util"),{stringify:C7o}=wt("querystring"),{headerNameLowerCasedRecord:_7o}=GQn(),[pmr,LQn]=process.versions.node.split(".").map(e=>Number(e));function y7o(){}function fmr(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function WQn(e){return ZQn&&e instanceof ZQn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function b7o(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=C7o(t);return r&&(e+="?"+r),e}function OQn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new Tk("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new Tk("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new Tk("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new Tk("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new Tk("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new Tk("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new Tk("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new Tk("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),n&&!n.startsWith("/")&&(n=`/${n}`),e=new URL(r+n)}return e}function E7o(e){if(e=OQn(e),e.pathname!=="/"||e.search||e.hash)throw new Tk("invalid url");return e}function S7o(e){if(e[0]==="["){let r=e.indexOf("]");return VQn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function v7o(e){if(!e)return null;VQn.strictEqual(typeof e,"string");let t=S7o(e);return m7o.isIP(t)?"":t}function B7o(e){return JSON.parse(JSON.stringify(e))}function w7o(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function T7o(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function R7o(e){if(e==null)return 0;if(fmr(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(WQn(e))return e.size!=null?e.size:null;if(HQn(e))return e.byteLength}return null}function Imr(e){return!e||!!(e.destroyed||e[PQn])}function MQn(e){let t=e&&e._readableState;return Imr(e)&&t&&!t.endEmitted}function N7o(e,t){e==null||!fmr(e)||Imr(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===h7o&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,n)=>{r.emit("error",n)},e,t),e.destroyed!==!0&&(e[PQn]=!0))}var D7o=/timeout=(\d+)/;function k7o(e){let t=e.toString().match(D7o);return t?parseInt(t[1],10)*1e3:null}function x7o(e){return _7o[e]||e.toLowerCase()}function G7o(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[n]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function F7o(e){let t=[],r=!1,n=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function H7o(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Y7o(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function Q7o(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var X7o=!!String.prototype.toWellFormed;function J7o(e){return X7o?`${e}`.toWellFormed():eft.toUSVString?eft.toUSVString(e):`${e}`}function U7o(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var YQn=Object.create(null);YQn.enumerable=!0;QQn.exports={kEnumerableProperty:YQn,nop:y7o,isDisturbed:L7o,isErrored:V7o,isReadable:P7o,toUSVString:J7o,isReadableAborted:MQn,isBlobLike:WQn,parseOrigin:E7o,parseURL:OQn,getServerName:v7o,isStream:fmr,isIterable:T7o,isAsyncIterable:w7o,isDestroyed:Imr,headerNameToString:x7o,parseRawHeaders:F7o,parseHeaders:G7o,parseKeepAliveTimeout:k7o,destroy:N7o,bodyLength:R7o,deepClone:B7o,ReadableStreamFrom:M7o,isBuffer:HQn,validateHandler:Z7o,getSocketInfo:W7o,isFormDataLike:H7o,buildURL:b7o,throwIfAborted:Y7o,addAbortListener:Q7o,parseRangeHeader:U7o,nodeMajor:pmr,nodeMinor:LQn,nodeHasAutoSelectFamily:pmr>18||pmr===18&&LQn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var UQn=H(($iu,JQn)=>{"use strict";var hmr=Date.now(),Qoe,Xoe=[];function K7o(){hmr=Date.now();let e=Xoe.length,t=0;for(;t0&&hmr>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?Xoe[t]=Xoe.pop():Xoe.pop(),e-=1):t+=1}Xoe.length>0&&XQn()}function XQn(){Qoe&&Qoe.refresh?Qoe.refresh():(clearTimeout(Qoe),Qoe=setTimeout(K7o,1e3),Qoe.unref&&Qoe.unref())}var tft=class{constructor(t,r,n){this.callback=t,this.delay=r,this.opaque=n,this.state=-2,this.refresh()}refresh(){this.state===-2&&(Xoe.push(this),(!Qoe||Xoe.length===1)&&XQn()),this.state=0}clear(){this.state=-1}};JQn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new tft(e,t,r)},clearTimeout(e){e instanceof tft?e.clear():clearTimeout(e)}}});var mmr=H((esu,KQn)=>{"use strict";var j7o=wt("node:events").EventEmitter,z7o=wt("node:util").inherits;function FIe(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let A=this._lookbehind_size+o;return A>0&&this.emit("info",!1,this._lookbehind,0,A),this._lookbehind.copy(this._lookbehind,0,A,this._lookbehind_size-A),this._lookbehind_size-=A,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+n;for(o=t-n;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var q7o=wt("node:util").inherits,jQn=wt("node:stream").Readable;function Cmr(e){jQn.call(this,e)}q7o(Cmr,jQn);Cmr.prototype._read=function(e){};zQn.exports=Cmr});var rft=H((rsu,$Qn)=>{"use strict";$Qn.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var nXn=H((nsu,rXn)=>{"use strict";var tXn=wt("node:events").EventEmitter,$7o=wt("node:util").inherits,eXn=rft(),ezo=mmr(),tzo=Buffer.from(`\r \r -`),W7o=/\r\n/g,O7o=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function bBe(e){UQn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=JQn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=JQn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new V7o(P7o),this.ss.on("info",function(r,n,a,o){n&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=n.toString("binary",a,o)),r&&t._finish()})}L7o(bBe,UQn);bBe.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};bBe.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};bBe.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};bBe.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(W7o),t=e.length,r,n;for(var a=0;a{"use strict";var Imr=wt("node:stream").Writable,M7o=wt("node:util").inherits,H7o=pmr(),zQn=QQn(),Y7o=jQn(),Q7o=45,X7o=Buffer.from("-"),J7o=Buffer.from(`\r -`),U7o=function(){};function BX(e){if(!(this instanceof BX))return new BX(e);if(Imr.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new Y7o(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}M7o(BX,Imr);BX.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else Imr.prototype.emit.apply(this,arguments)};BX.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new zQn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var $Qn=new TextDecoder("utf-8"),eXn=new Map([["utf-8",$Qn],["utf8",$Qn]]);function K7o(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return pHe.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return pHe.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return pHe.utf16le;case"base64":return pHe.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return pHe.other.bind(e)}}var pHe={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),eXn.has(mmr.toString()))try{return eXn.get(mmr).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function j7o(e,t,r){return e&&K7o(r)(e,t)}tXn.exports=j7o});var _mr=H((diu,oXn)=>{"use strict";var rft=tft(),rXn=/%[a-fA-F0-9][a-fA-F0-9]/g,z7o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` +`),rzo=/\r\n/g,nzo=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function EBe(e){tXn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=eXn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=eXn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new ezo(tzo),this.ss.on("info",function(r,n,a,o){n&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=n.toString("binary",a,o)),r&&t._finish()})}$7o(EBe,tXn);EBe.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};EBe.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};EBe.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};EBe.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(rzo),t=e.length,r,n;for(var a=0;a{"use strict";var _mr=wt("node:stream").Writable,izo=wt("node:util").inherits,szo=mmr(),iXn=qQn(),ozo=nXn(),azo=45,czo=Buffer.from("-"),lzo=Buffer.from(`\r +`),uzo=function(){};function BX(e){if(!(this instanceof BX))return new BX(e);if(_mr.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new ozo(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}izo(BX,_mr);BX.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else _mr.prototype.emit.apply(this,arguments)};BX.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new iXn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var oXn=new TextDecoder("utf-8"),aXn=new Map([["utf-8",oXn],["utf8",oXn]]);function gzo(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return IHe.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return IHe.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return IHe.utf16le;case"base64":return IHe.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return IHe.other.bind(e)}}var IHe={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),aXn.has(bmr.toString()))try{return aXn.get(bmr).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function Azo(e,t,r){return e&&gzo(r)(e,t)}cXn.exports=Azo});var Smr=H((ssu,dXn)=>{"use strict";var ift=nft(),lXn=/%[a-fA-F0-9][a-fA-F0-9]/g,dzo={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` `,"%0A":` -`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function nXn(e){return z7o[e]}var nft=0,iXn=1,Cmr=2,sXn=3;function q7o(e){let t=[],r=nft,n="",a=!1,o=!1,l=0,A="",f=e.length;for(var I=0;I{"use strict";aXn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var AXn=H((fiu,gXn)=>{"use strict";var{Readable:uXn}=wt("node:stream"),{inherits:$7o}=wt("node:util"),ezo=hmr(),lXn=_mr(),tzo=tft(),rzo=cXn(),FIe=eft(),nzo=/^boundary$/i,izo=/^form-data$/i,szo=/^charset$/i,ozo=/^filename$/i,azo=/^name$/i;ift.detect=/^multipart\/form-data/i;function ift(e,t){let r,n,a=this,o,l=t.limits,A=t.isPartAFile||((k,et,ct)=>et==="application/octet-stream"||ct!==void 0),f=t.parsedConType||[],I=t.defCharset||"utf8",C=t.preservePath,b={highWaterMark:t.fileHwm};for(r=0,n=f.length;rX)return a.parser.removeListener("part",k),a.parser.on("part",EBe),e.hitPartsLimit=!0,e.emit("partsLimit"),EBe(et);if(be){let ct=be;ct.emit("end"),ct.removeAllListeners("end")}et.on("header",function(ct){let Me,je,St,At,Yt,Tr,Nr=0;if(ct["content-type"]&&(St=lXn(ct["content-type"][0]),St[0])){for(Me=St[0].toLowerCase(),r=0,n=St.length;rB){let qt=B-Nr+Zr.length;qt>0&&xt.push(Zr.slice(0,qt)),xt.truncated=!0,xt.bytesRead=B,et.removeAllListeners("data"),xt.emit("limit");return}else xt.push(Zr)||(a._pause=!0);xt.bytesRead=Nr},vt=function(){de=void 0,xt.push(null)}}else{if(fe===Q)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),EBe(et);++fe,++ue;let xt="",Zr=!1;be=et,er=function(qt){if((Nr+=qt.length)>N){let Xt=N-(Nr-qt.length);xt+=qt.toString("binary",0,Xt),Zr=!0,et.removeAllListeners("data")}else xt+=qt.toString("binary")},vt=function(){be=void 0,xt.length&&(xt=tzo(xt,"binary",At)),e.emit("field",je,xt,!1,Zr,Yt,Me),--ue,E()}}et._readableState.sync=!1,et.on("data",er),et.on("end",vt)}).on("error",function(ct){de&&de.emit("error",ct)})}).on("error",function(k){e.emit("error",k)}).on("finish",function(){Se=!0,E()})}ift.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};ift.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function EBe(e){e.resume()}function ymr(e){uXn.call(this,e),this.bytesRead=0,this.truncated=!1}$7o(ymr,uXn);ymr.prototype._read=function(e){};gXn.exports=ift});var pXn=H((Iiu,dXn)=>{"use strict";var czo=/\+/g,lzo=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function bmr(){this.buffer=void 0}bmr.prototype.write=function(e){e=e.replace(czo," ");let t="",r=0,n=0,a=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var uzo=pXn(),SBe=tft(),Emr=eft(),gzo=/^charset$/i;sft.detect=/^application\/x-www-form-urlencoded/i;function sft(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=Emr(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=Emr(r,"fieldNameSize",100),this.fieldsLimit=Emr(r,"fields",1/0);let a;for(var o=0,l=n.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(n!==void 0){++this._fields;let A,f=this._keyTrunc;if(n>o?A=this._key+=this.decoder.write(e.toString("binary",o,n)):A=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),A.length&&this.boy.emit("field",SBe(A,"binary",this.charset),"",f,!1),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,n))),this.boy.emit("field",SBe(this._key,"binary",this.charset),SBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",SBe(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",SBe(this._key,"binary",this.charset),SBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};fXn.exports=sft});var CXn=H((miu,fHe)=>{"use strict";var Smr=wt("node:stream").Writable,{inherits:Azo}=wt("node:util"),dzo=hmr(),hXn=AXn(),mXn=IXn(),pzo=_mr();function S$(e){if(!(this instanceof S$))return new S$(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},Smr.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}Azo(S$,Smr);S$.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}Smr.prototype.emit.apply(this,arguments)};S$.prototype.getParserByHeaders=function(e){let t=pzo(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(hXn.detect.test(t[0]))return new hXn(this,r);if(mXn.detect.test(t[0]))return new mXn(this,r);throw new Error("Unsupported Content-Type.")};S$.prototype._write=function(e,t,r){this._parser.write(e,r)};fHe.exports=S$;fHe.exports.default=S$;fHe.exports.Busboy=S$;fHe.exports.Dicer=dzo});var Xoe=H((Ciu,wXn)=>{"use strict";var{MessageChannel:fzo,receiveMessageOnPort:Izo}=wt("worker_threads"),_Xn=["GET","HEAD","POST"],hzo=new Set(_Xn),mzo=[101,204,205,304],yXn=[301,302,303,307,308],Czo=new Set(yXn),bXn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],_zo=new Set(bXn),EXn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],yzo=new Set(EXn),bzo=["follow","manual","error"],SXn=["GET","HEAD","OPTIONS","TRACE"],Ezo=new Set(SXn),Szo=["navigate","same-origin","no-cors","cors"],vzo=["omit","same-origin","include"],Bzo=["default","no-store","reload","no-cache","force-cache","only-if-cached"],wzo=["content-encoding","content-language","content-location","content-type","content-length"],Tzo=["half"],vXn=["CONNECT","TRACE","TRACK"],Rzo=new Set(vXn),BXn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Nzo=new Set(BXn),Dzo=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),vBe,kzo=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return vBe||(vBe=new fzo),vBe.port1.unref(),vBe.port2.unref(),vBe.port1.postMessage(t,r?.transfer),Izo(vBe.port2).message};wXn.exports={DOMException:Dzo,structuredClone:kzo,subresource:BXn,forbiddenMethods:vXn,requestBodyHeader:wzo,referrerPolicy:EXn,requestRedirect:bzo,requestMode:Szo,requestCredentials:vzo,requestCache:Bzo,redirectStatus:yXn,corsSafeListedMethods:_Xn,nullBodyStatus:mzo,safeMethods:SXn,badPorts:bXn,requestDuplex:Tzo,subresourceSet:Nzo,badPortsSet:_zo,redirectStatusSet:Czo,corsSafeListedMethodsSet:hzo,safeMethodsSet:Ezo,forbiddenMethodsSet:Rzo,referrerPolicySet:yzo}});var BBe=H((_iu,TXn)=>{"use strict";var vmr=Symbol.for("undici.globalOrigin.1");function xzo(){return globalThis[vmr]}function Gzo(e){if(e===void 0){Object.defineProperty(globalThis,vmr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,vmr,{value:t,writable:!0,enumerable:!1,configurable:!1})}TXn.exports={getGlobalOrigin:xzo,setGlobalOrigin:Gzo}});var EM=H((yiu,ZXn)=>{"use strict";var{redirectStatusSet:Fzo,referrerPolicySet:Zzo,badPortsSet:Lzo}=Xoe(),{getGlobalOrigin:Vzo}=BBe(),{performance:Pzo}=wt("perf_hooks"),{isBlobLike:Wzo,toUSVString:Ozo,ReadableStreamFrom:Mzo}=zC(),wBe=wt("assert"),{isUint8Array:Hzo}=wt("util/types"),RXn=[],oft;try{oft=wt("crypto");let e=["sha256","sha384","sha512"];RXn=oft.getHashes().filter(t=>e.includes(t))}catch{}function NXn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function Yzo(e,t){if(!Fzo.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&kXn(r)&&(r=new URL(r,NXn(e))),r&&!r.hash&&(r.hash=t),r}function hHe(e){return e.urlList[e.urlList.length-1]}function Qzo(e){let t=hHe(e);return FXn(t)&&Lzo.has(t.port)?"blocked":"allowed"}function Xzo(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Jzo(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function Uzo(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function DXn(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(Zzo.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function zzo(){return"allowed"}function qzo(){return"success"}function $zo(){return"success"}function eqo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function tqo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&Tmr(e.origin)&&!Tmr(hHe(e))&&(t=null);break;case"same-origin":aft(e,hHe(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function rqo(e){return Pzo.now()}function nqo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function iqo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function sqo(e){return{referrerPolicy:e.referrerPolicy}}function oqo(e){let t=e.referrerPolicy;wBe(t);let r=null;if(e.referrer==="client"){let A=Vzo();if(!A||A.origin==="null")return"no-referrer";r=new URL(A)}else e.referrer instanceof URL&&(r=e.referrer);let n=Bmr(r),a=Bmr(r,!0);n.toString().length>4096&&(n=a);let o=aft(e,n),l=IHe(n)&&!IHe(e.url);switch(t){case"origin":return a??Bmr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=hHe(e);return aft(n,A)?n:IHe(n)&&!IHe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function Bmr(e,t){return wBe(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function IHe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function aqo(e,t){if(oft===void 0)return!0;let r=xXn(t);if(r==="no metadata"||r.length===0)return!0;let n=lqo(r),a=uqo(r,n);for(let o of a){let l=o.algo,A=o.hash,f=oft.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),gqo(f,A))return!0}return!1}var cqo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function xXn(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=cqo.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();RXn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function lqo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function pqo(e){return e.controller.state==="aborted"}function fqo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var Rmr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(Rmr,null);function Iqo(e){return Rmr[e.toLowerCase()]??e}function hqo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return wBe(typeof t=="string"),t}var mqo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function Cqo(e,t,r){let n={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:l,target:A}=n,f=A(),I=f.length;if(o>=I)return{value:void 0,done:!0};let C=f[o];return n.index=o+1,_qo(C,l)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,mqo),Object.setPrototypeOf({},a)}function _qo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function yqo(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{let l=await GXn(o);n(l)}catch(l){a(l)}}var wmr=globalThis.ReadableStream;function bqo(e){return wmr||(wmr=wt("stream/web").ReadableStream),e instanceof wmr||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var Eqo=65535;function Sqo(e){return e.lengtht+String.fromCharCode(r),"")}function vqo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function Bqo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));ZXn.exports={isAborted:pqo,isCancelled:fqo,createDeferredPromise:dqo,ReadableStreamFrom:Mzo,toUSVString:Ozo,tryUpgradeRequestToAPotentiallyTrustworthyURL:Aqo,coarsenedSharedCurrentTime:rqo,determineRequestsReferrer:oqo,makePolicyContainer:iqo,clonePolicyContainer:sqo,appendFetchMetadata:eqo,appendRequestOriginHeader:tqo,TAOCheck:$zo,corsCheck:qzo,crossOriginResourcePolicyCheck:zzo,createOpaqueTimingInfo:nqo,setRequestReferrerPolicyOnRedirect:jzo,isValidHTTPToken:DXn,requestBadPort:Qzo,requestCurrentURL:hHe,responseURL:NXn,responseLocationURL:Yzo,isBlobLike:Wzo,isURLPotentiallyTrustworthy:IHe,isValidReasonPhrase:Jzo,sameOrigin:aft,normalizeMethod:Iqo,serializeJavascriptValueToJSONString:hqo,makeIterator:Cqo,isValidHeaderName:Kzo,isValidHeaderValue:kXn,hasOwn:Tqo,isErrorLike:Xzo,fullyReadBody:yqo,bytesMatch:aqo,isReadableStreamLike:bqo,readableStreamClose:vqo,isomorphicEncode:Bqo,isomorphicDecode:Sqo,urlIsLocal:wqo,urlHasHttpsScheme:Tmr,urlIsHttpHttpsScheme:FXn,readAllBytes:GXn,normalizeMethodRecord:Rmr,parseMetadata:xXn}});var v$=H((biu,LXn)=>{"use strict";LXn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var xZ=H((Eiu,PXn)=>{"use strict";var{types:p8}=wt("util"),{hasOwn:VXn,toUSVString:Rqo}=EM(),pg={};pg.converters={};pg.util={};pg.errors={};pg.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};pg.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return pg.errors.exception({header:e.prefix,message:r})};pg.errors.invalidArgument=function(e){return pg.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};pg.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};pg.argumentLengthCheck=function({length:e},t,r){if(ea)throw pg.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=pg.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};pg.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};pg.sequenceConverter=function(e){return t=>{if(pg.util.Type(t)!=="Object")throw pg.errors.exception({header:"Sequence",message:`Value of type ${pg.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),n=[];if(r===void 0||typeof r.next!="function")throw pg.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;n.push(e(o))}return n}};pg.recordConverter=function(e,t){return r=>{if(pg.util.Type(r)!=="Object")throw pg.errors.exception({header:"Record",message:`Value of type ${pg.util.Type(r)} is not an Object.`});let n={};if(!p8.isProxy(r)){let o=Object.keys(r);for(let l of o){let A=e(l),f=t(r[l]);n[A]=f}return n}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let A=e(o),f=t(r[o]);n[A]=f}return n}};pg.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw pg.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};pg.dictionaryConverter=function(e){return t=>{let r=pg.util.Type(t),n={};if(r==="Null"||r==="Undefined")return n;if(r!=="Object")throw pg.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:l,required:A,converter:f}=a;if(A===!0&&!VXn(t,o))throw pg.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let I=t[o],C=VXn(a,"defaultValue");if(C&&I!==null&&(I=I??l),A||C||I!==void 0){if(I=f(I),a.allowedValues&&!a.allowedValues.includes(I))throw pg.errors.exception({header:"Dictionary",message:`${I} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});n[o]=I}}return n}};pg.nullableConverter=function(e){return t=>t===null?t:e(t)};pg.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};pg.converters.ByteString=function(e){let t=pg.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};pg.converters.USVString=Rqo;pg.converters.boolean=function(e){return!!e};pg.converters.any=function(e){return e};pg.converters["long long"]=function(e){return pg.util.ConvertToInt(e,64,"signed")};pg.converters["unsigned long long"]=function(e){return pg.util.ConvertToInt(e,64,"unsigned")};pg.converters["unsigned long"]=function(e){return pg.util.ConvertToInt(e,32,"unsigned")};pg.converters["unsigned short"]=function(e,t){return pg.util.ConvertToInt(e,16,"unsigned",t)};pg.converters.ArrayBuffer=function(e,t={}){if(pg.util.Type(e)!=="Object"||!p8.isAnyArrayBuffer(e))throw pg.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&p8.isSharedArrayBuffer(e))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.TypedArray=function(e,t,r={}){if(pg.util.Type(e)!=="Object"||!p8.isTypedArray(e)||e.constructor.name!==t.name)throw pg.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&p8.isSharedArrayBuffer(e.buffer))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.DataView=function(e,t={}){if(pg.util.Type(e)!=="Object"||!p8.isDataView(e))throw pg.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&p8.isSharedArrayBuffer(e.buffer))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.BufferSource=function(e,t={}){if(p8.isAnyArrayBuffer(e))return pg.converters.ArrayBuffer(e,t);if(p8.isTypedArray(e))return pg.converters.TypedArray(e,e.constructor);if(p8.isDataView(e))return pg.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};pg.converters["sequence"]=pg.sequenceConverter(pg.converters.ByteString);pg.converters["sequence>"]=pg.sequenceConverter(pg.converters["sequence"]);pg.converters["record"]=pg.recordConverter(pg.converters.ByteString,pg.converters.ByteString);PXn.exports={webidl:pg}});var wX=H((Siu,QXn)=>{var lft=wt("assert"),{atob:Nqo}=wt("buffer"),{isomorphicDecode:Dqo}=EM(),kqo=new TextEncoder,cft=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,xqo=/(\u000A|\u000D|\u0009|\u0020)/,Gqo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function Fqo(e){lft(e.protocol==="data:");let t=MXn(e,!0);t=t.slice(5);let r={position:0},n=TBe(",",t,r),a=n.length;if(n=Pqo(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=HXn(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=Dqo(l);if(l=Lqo(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=Dmr(n);return A==="failure"&&(A=Dmr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function MXn(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length;return n===0?r:r.substring(0,r.length-n)}function uft(e,t,r){let n="";for(;r.positione.length)return"failure";t.position++;let n=TBe(";",e,t);if(n=Nmr(n,!1,!0),n.length===0||!cft.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionxqo.test(I),e,t);let A=uft(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=YXn(e,t,!0),TBe(";",e,t);else if(f=TBe(";",e,t),f=Nmr(f,!1,!0),f.length===0)continue;A.length!==0&&cft.test(A)&&(f.length===0||Gqo.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function Lqo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=Nqo(e),r=new Uint8Array(t.length);for(let n=0;nl!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{lft(o==='"');break}}return r?a:e.slice(n,t.position)}function Vqo(e){lft(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",cft.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function WXn(e){return e==="\r"||e===` -`||e===" "||e===" "}function Nmr(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&WXn(e[a]);a--);return e.slice(n,a+1)}function OXn(e){return e==="\r"||e===` -`||e===" "||e==="\f"||e===" "}function Pqo(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&OXn(e[a]);a--);return e.slice(n,a+1)}QXn.exports={dataURLProcessor:Fqo,URLSerializer:MXn,collectASequenceOfCodePoints:uft,collectASequenceOfCodePointsFast:TBe,stringPercentDecode:HXn,parseMIMEType:Dmr,collectAnHTTPQuotedString:YXn,serializeAMimeType:Vqo}});var gft=H((viu,jXn)=>{"use strict";var{Blob:UXn,File:XXn}=wt("buffer"),{types:kmr}=wt("util"),{kState:MW}=v$(),{isBlobLike:KXn}=EM(),{webidl:H0}=xZ(),{parseMIMEType:Wqo,serializeAMimeType:Oqo}=wX(),{kEnumerableProperty:JXn}=zC(),Mqo=new TextEncoder,mHe=class e extends UXn{constructor(t,r,n={}){H0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=H0.converters["sequence"](t),r=H0.converters.USVString(r),n=H0.converters.FilePropertyBag(n);let a=r,o=n.type,l;e:{if(o){if(o=Wqo(o),o==="failure"){o="";break e}o=Oqo(o).toLowerCase()}l=n.lastModified}super(Hqo(t,n),{type:o}),this[MW]={name:a,lastModified:l,type:o}}get name(){return H0.brandCheck(this,e),this[MW].name}get lastModified(){return H0.brandCheck(this,e),this[MW].lastModified}get type(){return H0.brandCheck(this,e),this[MW].type}},xmr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[MW]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return H0.brandCheck(this,e),this[MW].blobLike.stream(...t)}arrayBuffer(...t){return H0.brandCheck(this,e),this[MW].blobLike.arrayBuffer(...t)}slice(...t){return H0.brandCheck(this,e),this[MW].blobLike.slice(...t)}text(...t){return H0.brandCheck(this,e),this[MW].blobLike.text(...t)}get size(){return H0.brandCheck(this,e),this[MW].blobLike.size}get type(){return H0.brandCheck(this,e),this[MW].blobLike.type}get name(){return H0.brandCheck(this,e),this[MW].name}get lastModified(){return H0.brandCheck(this,e),this[MW].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(mHe.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:JXn,lastModified:JXn});H0.converters.Blob=H0.interfaceConverter(UXn);H0.converters.BlobPart=function(e,t){if(H0.util.Type(e)==="Object"){if(KXn(e))return H0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||kmr.isAnyArrayBuffer(e))return H0.converters.BufferSource(e,t)}return H0.converters.USVString(e,t)};H0.converters["sequence"]=H0.sequenceConverter(H0.converters.BlobPart);H0.converters.FilePropertyBag=H0.dictionaryConverter([{key:"lastModified",converter:H0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:H0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=H0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function Hqo(e,t){let r=[];for(let n of e)if(typeof n=="string"){let a=n;t.endings==="native"&&(a=Yqo(a)),r.push(Mqo.encode(a))}else kmr.isAnyArrayBuffer(n)||kmr.isTypedArray(n)?n.buffer?r.push(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)):r.push(new Uint8Array(n)):KXn(n)&&r.push(n);return r}function Yqo(e){let t=` +`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function uXn(e){return dzo[e]}var sft=0,gXn=1,Emr=2,AXn=3;function pzo(e){let t=[],r=sft,n="",a=!1,o=!1,l=0,A="",f=e.length;for(var I=0;I{"use strict";pXn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var CXn=H((asu,mXn)=>{"use strict";var{Readable:hXn}=wt("node:stream"),{inherits:fzo}=wt("node:util"),Izo=ymr(),IXn=Smr(),hzo=nft(),mzo=fXn(),ZIe=rft(),Czo=/^boundary$/i,_zo=/^form-data$/i,yzo=/^charset$/i,bzo=/^filename$/i,Ezo=/^name$/i;oft.detect=/^multipart\/form-data/i;function oft(e,t){let r,n,a=this,o,l=t.limits,A=t.isPartAFile||((k,et,ct)=>et==="application/octet-stream"||ct!==void 0),f=t.parsedConType||[],I=t.defCharset||"utf8",C=t.preservePath,b={highWaterMark:t.fileHwm};for(r=0,n=f.length;rX)return a.parser.removeListener("part",k),a.parser.on("part",SBe),e.hitPartsLimit=!0,e.emit("partsLimit"),SBe(et);if(be){let ct=be;ct.emit("end"),ct.removeAllListeners("end")}et.on("header",function(ct){let Me,je,St,At,Yt,Tr,Nr=0;if(ct["content-type"]&&(St=IXn(ct["content-type"][0]),St[0])){for(Me=St[0].toLowerCase(),r=0,n=St.length;rB){let qt=B-Nr+Zr.length;qt>0&&xt.push(Zr.slice(0,qt)),xt.truncated=!0,xt.bytesRead=B,et.removeAllListeners("data"),xt.emit("limit");return}else xt.push(Zr)||(a._pause=!0);xt.bytesRead=Nr},vt=function(){de=void 0,xt.push(null)}}else{if(fe===Q)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),SBe(et);++fe,++ue;let xt="",Zr=!1;be=et,er=function(qt){if((Nr+=qt.length)>N){let Xt=N-(Nr-qt.length);xt+=qt.toString("binary",0,Xt),Zr=!0,et.removeAllListeners("data")}else xt+=qt.toString("binary")},vt=function(){be=void 0,xt.length&&(xt=hzo(xt,"binary",At)),e.emit("field",je,xt,!1,Zr,Yt,Me),--ue,E()}}et._readableState.sync=!1,et.on("data",er),et.on("end",vt)}).on("error",function(ct){de&&de.emit("error",ct)})}).on("error",function(k){e.emit("error",k)}).on("finish",function(){Se=!0,E()})}oft.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};oft.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function SBe(e){e.resume()}function vmr(e){hXn.call(this,e),this.bytesRead=0,this.truncated=!1}fzo(vmr,hXn);vmr.prototype._read=function(e){};mXn.exports=oft});var yXn=H((csu,_Xn)=>{"use strict";var Szo=/\+/g,vzo=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function Bmr(){this.buffer=void 0}Bmr.prototype.write=function(e){e=e.replace(Szo," ");let t="",r=0,n=0,a=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var Bzo=yXn(),vBe=nft(),wmr=rft(),wzo=/^charset$/i;aft.detect=/^application\/x-www-form-urlencoded/i;function aft(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=wmr(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=wmr(r,"fieldNameSize",100),this.fieldsLimit=wmr(r,"fields",1/0);let a;for(var o=0,l=n.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(n!==void 0){++this._fields;let A,f=this._keyTrunc;if(n>o?A=this._key+=this.decoder.write(e.toString("binary",o,n)):A=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),A.length&&this.boy.emit("field",vBe(A,"binary",this.charset),"",f,!1),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,n))),this.boy.emit("field",vBe(this._key,"binary",this.charset),vBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",vBe(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",vBe(this._key,"binary",this.charset),vBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};bXn.exports=aft});var BXn=H((usu,hHe)=>{"use strict";var Tmr=wt("node:stream").Writable,{inherits:Tzo}=wt("node:util"),Rzo=ymr(),SXn=CXn(),vXn=EXn(),Nzo=Smr();function S$(e){if(!(this instanceof S$))return new S$(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},Tmr.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}Tzo(S$,Tmr);S$.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}Tmr.prototype.emit.apply(this,arguments)};S$.prototype.getParserByHeaders=function(e){let t=Nzo(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(SXn.detect.test(t[0]))return new SXn(this,r);if(vXn.detect.test(t[0]))return new vXn(this,r);throw new Error("Unsupported Content-Type.")};S$.prototype._write=function(e,t,r){this._parser.write(e,r)};hHe.exports=S$;hHe.exports.default=S$;hHe.exports.Busboy=S$;hHe.exports.Dicer=Rzo});var Joe=H((gsu,GXn)=>{"use strict";var{MessageChannel:Dzo,receiveMessageOnPort:kzo}=wt("worker_threads"),wXn=["GET","HEAD","POST"],xzo=new Set(wXn),Gzo=[101,204,205,304],TXn=[301,302,303,307,308],Fzo=new Set(TXn),RXn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],Zzo=new Set(RXn),NXn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],Lzo=new Set(NXn),Vzo=["follow","manual","error"],DXn=["GET","HEAD","OPTIONS","TRACE"],Pzo=new Set(DXn),Wzo=["navigate","same-origin","no-cors","cors"],Ozo=["omit","same-origin","include"],Mzo=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Hzo=["content-encoding","content-language","content-location","content-type","content-length"],Yzo=["half"],kXn=["CONNECT","TRACE","TRACK"],Qzo=new Set(kXn),xXn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Xzo=new Set(xXn),Jzo=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),BBe,Uzo=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return BBe||(BBe=new Dzo),BBe.port1.unref(),BBe.port2.unref(),BBe.port1.postMessage(t,r?.transfer),kzo(BBe.port2).message};GXn.exports={DOMException:Jzo,structuredClone:Uzo,subresource:xXn,forbiddenMethods:kXn,requestBodyHeader:Hzo,referrerPolicy:NXn,requestRedirect:Vzo,requestMode:Wzo,requestCredentials:Ozo,requestCache:Mzo,redirectStatus:TXn,corsSafeListedMethods:wXn,nullBodyStatus:Gzo,safeMethods:DXn,badPorts:RXn,requestDuplex:Yzo,subresourceSet:Xzo,badPortsSet:Zzo,redirectStatusSet:Fzo,corsSafeListedMethodsSet:xzo,safeMethodsSet:Pzo,forbiddenMethodsSet:Qzo,referrerPolicySet:Lzo}});var wBe=H((Asu,FXn)=>{"use strict";var Rmr=Symbol.for("undici.globalOrigin.1");function Kzo(){return globalThis[Rmr]}function jzo(e){if(e===void 0){Object.defineProperty(globalThis,Rmr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,Rmr,{value:t,writable:!0,enumerable:!1,configurable:!1})}FXn.exports={getGlobalOrigin:Kzo,setGlobalOrigin:jzo}});var EM=H((dsu,HXn)=>{"use strict";var{redirectStatusSet:zzo,referrerPolicySet:qzo,badPortsSet:$zo}=Joe(),{getGlobalOrigin:eqo}=wBe(),{performance:tqo}=wt("perf_hooks"),{isBlobLike:rqo,toUSVString:nqo,ReadableStreamFrom:iqo}=zC(),TBe=wt("assert"),{isUint8Array:sqo}=wt("util/types"),ZXn=[],cft;try{cft=wt("crypto");let e=["sha256","sha384","sha512"];ZXn=cft.getHashes().filter(t=>e.includes(t))}catch{}function LXn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function oqo(e,t){if(!zzo.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&PXn(r)&&(r=new URL(r,LXn(e))),r&&!r.hash&&(r.hash=t),r}function CHe(e){return e.urlList[e.urlList.length-1]}function aqo(e){let t=CHe(e);return MXn(t)&&$zo.has(t.port)?"blocked":"allowed"}function cqo(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function lqo(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function uqo(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function VXn(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(qzo.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function dqo(){return"allowed"}function pqo(){return"success"}function fqo(){return"success"}function Iqo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function hqo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&kmr(e.origin)&&!kmr(CHe(e))&&(t=null);break;case"same-origin":lft(e,CHe(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function mqo(e){return tqo.now()}function Cqo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function _qo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function yqo(e){return{referrerPolicy:e.referrerPolicy}}function bqo(e){let t=e.referrerPolicy;TBe(t);let r=null;if(e.referrer==="client"){let A=eqo();if(!A||A.origin==="null")return"no-referrer";r=new URL(A)}else e.referrer instanceof URL&&(r=e.referrer);let n=Nmr(r),a=Nmr(r,!0);n.toString().length>4096&&(n=a);let o=lft(e,n),l=mHe(n)&&!mHe(e.url);switch(t){case"origin":return a??Nmr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=CHe(e);return lft(n,A)?n:mHe(n)&&!mHe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function Nmr(e,t){return TBe(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function mHe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function Eqo(e,t){if(cft===void 0)return!0;let r=WXn(t);if(r==="no metadata"||r.length===0)return!0;let n=vqo(r),a=Bqo(r,n);for(let o of a){let l=o.algo,A=o.hash,f=cft.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),wqo(f,A))return!0}return!1}var Sqo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function WXn(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=Sqo.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();ZXn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function vqo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function Nqo(e){return e.controller.state==="aborted"}function Dqo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var xmr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(xmr,null);function kqo(e){return xmr[e.toLowerCase()]??e}function xqo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return TBe(typeof t=="string"),t}var Gqo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function Fqo(e,t,r){let n={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:l,target:A}=n,f=A(),I=f.length;if(o>=I)return{value:void 0,done:!0};let C=f[o];return n.index=o+1,Zqo(C,l)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,Gqo),Object.setPrototypeOf({},a)}function Zqo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function Lqo(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{let l=await OXn(o);n(l)}catch(l){a(l)}}var Dmr=globalThis.ReadableStream;function Vqo(e){return Dmr||(Dmr=wt("stream/web").ReadableStream),e instanceof Dmr||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var Pqo=65535;function Wqo(e){return e.lengtht+String.fromCharCode(r),"")}function Oqo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function Mqo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));HXn.exports={isAborted:Nqo,isCancelled:Dqo,createDeferredPromise:Rqo,ReadableStreamFrom:iqo,toUSVString:nqo,tryUpgradeRequestToAPotentiallyTrustworthyURL:Tqo,coarsenedSharedCurrentTime:mqo,determineRequestsReferrer:bqo,makePolicyContainer:_qo,clonePolicyContainer:yqo,appendFetchMetadata:Iqo,appendRequestOriginHeader:hqo,TAOCheck:fqo,corsCheck:pqo,crossOriginResourcePolicyCheck:dqo,createOpaqueTimingInfo:Cqo,setRequestReferrerPolicyOnRedirect:Aqo,isValidHTTPToken:VXn,requestBadPort:aqo,requestCurrentURL:CHe,responseURL:LXn,responseLocationURL:oqo,isBlobLike:rqo,isURLPotentiallyTrustworthy:mHe,isValidReasonPhrase:lqo,sameOrigin:lft,normalizeMethod:kqo,serializeJavascriptValueToJSONString:xqo,makeIterator:Fqo,isValidHeaderName:gqo,isValidHeaderValue:PXn,hasOwn:Yqo,isErrorLike:cqo,fullyReadBody:Lqo,bytesMatch:Eqo,isReadableStreamLike:Vqo,readableStreamClose:Oqo,isomorphicEncode:Mqo,isomorphicDecode:Wqo,urlIsLocal:Hqo,urlHasHttpsScheme:kmr,urlIsHttpHttpsScheme:MXn,readAllBytes:OXn,normalizeMethodRecord:xmr,parseMetadata:WXn}});var v$=H((psu,YXn)=>{"use strict";YXn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var xZ=H((fsu,XXn)=>{"use strict";var{types:p8}=wt("util"),{hasOwn:QXn,toUSVString:Qqo}=EM(),pg={};pg.converters={};pg.util={};pg.errors={};pg.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};pg.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return pg.errors.exception({header:e.prefix,message:r})};pg.errors.invalidArgument=function(e){return pg.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};pg.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};pg.argumentLengthCheck=function({length:e},t,r){if(ea)throw pg.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=pg.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};pg.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};pg.sequenceConverter=function(e){return t=>{if(pg.util.Type(t)!=="Object")throw pg.errors.exception({header:"Sequence",message:`Value of type ${pg.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),n=[];if(r===void 0||typeof r.next!="function")throw pg.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;n.push(e(o))}return n}};pg.recordConverter=function(e,t){return r=>{if(pg.util.Type(r)!=="Object")throw pg.errors.exception({header:"Record",message:`Value of type ${pg.util.Type(r)} is not an Object.`});let n={};if(!p8.isProxy(r)){let o=Object.keys(r);for(let l of o){let A=e(l),f=t(r[l]);n[A]=f}return n}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let A=e(o),f=t(r[o]);n[A]=f}return n}};pg.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw pg.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};pg.dictionaryConverter=function(e){return t=>{let r=pg.util.Type(t),n={};if(r==="Null"||r==="Undefined")return n;if(r!=="Object")throw pg.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:l,required:A,converter:f}=a;if(A===!0&&!QXn(t,o))throw pg.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let I=t[o],C=QXn(a,"defaultValue");if(C&&I!==null&&(I=I??l),A||C||I!==void 0){if(I=f(I),a.allowedValues&&!a.allowedValues.includes(I))throw pg.errors.exception({header:"Dictionary",message:`${I} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});n[o]=I}}return n}};pg.nullableConverter=function(e){return t=>t===null?t:e(t)};pg.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};pg.converters.ByteString=function(e){let t=pg.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};pg.converters.USVString=Qqo;pg.converters.boolean=function(e){return!!e};pg.converters.any=function(e){return e};pg.converters["long long"]=function(e){return pg.util.ConvertToInt(e,64,"signed")};pg.converters["unsigned long long"]=function(e){return pg.util.ConvertToInt(e,64,"unsigned")};pg.converters["unsigned long"]=function(e){return pg.util.ConvertToInt(e,32,"unsigned")};pg.converters["unsigned short"]=function(e,t){return pg.util.ConvertToInt(e,16,"unsigned",t)};pg.converters.ArrayBuffer=function(e,t={}){if(pg.util.Type(e)!=="Object"||!p8.isAnyArrayBuffer(e))throw pg.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&p8.isSharedArrayBuffer(e))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.TypedArray=function(e,t,r={}){if(pg.util.Type(e)!=="Object"||!p8.isTypedArray(e)||e.constructor.name!==t.name)throw pg.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&p8.isSharedArrayBuffer(e.buffer))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.DataView=function(e,t={}){if(pg.util.Type(e)!=="Object"||!p8.isDataView(e))throw pg.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&p8.isSharedArrayBuffer(e.buffer))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.BufferSource=function(e,t={}){if(p8.isAnyArrayBuffer(e))return pg.converters.ArrayBuffer(e,t);if(p8.isTypedArray(e))return pg.converters.TypedArray(e,e.constructor);if(p8.isDataView(e))return pg.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};pg.converters["sequence"]=pg.sequenceConverter(pg.converters.ByteString);pg.converters["sequence>"]=pg.sequenceConverter(pg.converters["sequence"]);pg.converters["record"]=pg.recordConverter(pg.converters.ByteString,pg.converters.ByteString);XXn.exports={webidl:pg}});var wX=H((Isu,qXn)=>{var gft=wt("assert"),{atob:Xqo}=wt("buffer"),{isomorphicDecode:Jqo}=EM(),Uqo=new TextEncoder,uft=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,Kqo=/(\u000A|\u000D|\u0009|\u0020)/,jqo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function zqo(e){gft(e.protocol==="data:");let t=KXn(e,!0);t=t.slice(5);let r={position:0},n=RBe(",",t,r),a=n.length;if(n=t$o(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=jXn(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=Jqo(l);if(l=$qo(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=Fmr(n);return A==="failure"&&(A=Fmr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function KXn(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length;return n===0?r:r.substring(0,r.length-n)}function Aft(e,t,r){let n="";for(;r.positione.length)return"failure";t.position++;let n=RBe(";",e,t);if(n=Gmr(n,!1,!0),n.length===0||!uft.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionKqo.test(I),e,t);let A=Aft(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=zXn(e,t,!0),RBe(";",e,t);else if(f=RBe(";",e,t),f=Gmr(f,!1,!0),f.length===0)continue;A.length!==0&&uft.test(A)&&(f.length===0||jqo.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function $qo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=Xqo(e),r=new Uint8Array(t.length);for(let n=0;nl!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{gft(o==='"');break}}return r?a:e.slice(n,t.position)}function e$o(e){gft(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",uft.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function JXn(e){return e==="\r"||e===` +`||e===" "||e===" "}function Gmr(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&JXn(e[a]);a--);return e.slice(n,a+1)}function UXn(e){return e==="\r"||e===` +`||e===" "||e==="\f"||e===" "}function t$o(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&UXn(e[a]);a--);return e.slice(n,a+1)}qXn.exports={dataURLProcessor:zqo,URLSerializer:KXn,collectASequenceOfCodePoints:Aft,collectASequenceOfCodePointsFast:RBe,stringPercentDecode:jXn,parseMIMEType:Fmr,collectAnHTTPQuotedString:zXn,serializeAMimeType:e$o}});var dft=H((hsu,n4n)=>{"use strict";var{Blob:t4n,File:$Xn}=wt("buffer"),{types:Zmr}=wt("util"),{kState:MW}=v$(),{isBlobLike:r4n}=EM(),{webidl:H0}=xZ(),{parseMIMEType:r$o,serializeAMimeType:n$o}=wX(),{kEnumerableProperty:e4n}=zC(),i$o=new TextEncoder,_He=class e extends t4n{constructor(t,r,n={}){H0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=H0.converters["sequence"](t),r=H0.converters.USVString(r),n=H0.converters.FilePropertyBag(n);let a=r,o=n.type,l;e:{if(o){if(o=r$o(o),o==="failure"){o="";break e}o=n$o(o).toLowerCase()}l=n.lastModified}super(s$o(t,n),{type:o}),this[MW]={name:a,lastModified:l,type:o}}get name(){return H0.brandCheck(this,e),this[MW].name}get lastModified(){return H0.brandCheck(this,e),this[MW].lastModified}get type(){return H0.brandCheck(this,e),this[MW].type}},Lmr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[MW]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return H0.brandCheck(this,e),this[MW].blobLike.stream(...t)}arrayBuffer(...t){return H0.brandCheck(this,e),this[MW].blobLike.arrayBuffer(...t)}slice(...t){return H0.brandCheck(this,e),this[MW].blobLike.slice(...t)}text(...t){return H0.brandCheck(this,e),this[MW].blobLike.text(...t)}get size(){return H0.brandCheck(this,e),this[MW].blobLike.size}get type(){return H0.brandCheck(this,e),this[MW].blobLike.type}get name(){return H0.brandCheck(this,e),this[MW].name}get lastModified(){return H0.brandCheck(this,e),this[MW].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(_He.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:e4n,lastModified:e4n});H0.converters.Blob=H0.interfaceConverter(t4n);H0.converters.BlobPart=function(e,t){if(H0.util.Type(e)==="Object"){if(r4n(e))return H0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Zmr.isAnyArrayBuffer(e))return H0.converters.BufferSource(e,t)}return H0.converters.USVString(e,t)};H0.converters["sequence"]=H0.sequenceConverter(H0.converters.BlobPart);H0.converters.FilePropertyBag=H0.dictionaryConverter([{key:"lastModified",converter:H0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:H0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=H0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function s$o(e,t){let r=[];for(let n of e)if(typeof n=="string"){let a=n;t.endings==="native"&&(a=o$o(a)),r.push(i$o.encode(a))}else Zmr.isAnyArrayBuffer(n)||Zmr.isTypedArray(n)?n.buffer?r.push(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)):r.push(new Uint8Array(n)):r4n(n)&&r.push(n);return r}function o$o(e){let t=` `;return process.platform==="win32"&&(t=`\r -`),e.replace(/\r?\n/g,t)}function Qqo(e){return XXn&&e instanceof XXn||e instanceof mHe||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}jXn.exports={File:mHe,FileLike:xmr,isFileLike:Qqo}});var dft=H((Biu,t4n)=>{"use strict";var{isBlobLike:Aft,toUSVString:Xqo,makeIterator:Gmr}=EM(),{kState:CG}=v$(),{File:e4n,FileLike:zXn,isFileLike:Jqo}=gft(),{webidl:Cy}=xZ(),{Blob:Uqo,File:Fmr}=wt("buffer"),qXn=Fmr??e4n,RBe=class e{constructor(t){if(t!==void 0)throw Cy.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[CG]=[]}append(t,r,n=void 0){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!Aft(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=Cy.converters.USVString(t),r=Aft(r)?Cy.converters.Blob(r,{strict:!1}):Cy.converters.USVString(r),n=arguments.length===3?Cy.converters.USVString(n):void 0;let a=$Xn(t,r,n);this[CG].push(a)}delete(t){Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=Cy.converters.USVString(t),this[CG]=this[CG].filter(r=>r.name!==t)}get(t){Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=Cy.converters.USVString(t);let r=this[CG].findIndex(n=>n.name===t);return r===-1?null:this[CG][r].value}getAll(t){return Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=Cy.converters.USVString(t),this[CG].filter(r=>r.name===t).map(r=>r.value)}has(t){return Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=Cy.converters.USVString(t),this[CG].findIndex(r=>r.name===t)!==-1}set(t,r,n=void 0){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!Aft(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=Cy.converters.USVString(t),r=Aft(r)?Cy.converters.Blob(r,{strict:!1}):Cy.converters.USVString(r),n=arguments.length===3?Xqo(n):void 0;let a=$Xn(t,r,n),o=this[CG].findIndex(l=>l.name===t);o!==-1?this[CG]=[...this[CG].slice(0,o),a,...this[CG].slice(o+1).filter(l=>l.name!==t)]:this[CG].push(a)}entries(){return Cy.brandCheck(this,e),Gmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return Cy.brandCheck(this,e),Gmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","key")}values(){return Cy.brandCheck(this,e),Gmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}};RBe.prototype[Symbol.iterator]=RBe.prototype.entries;Object.defineProperties(RBe.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function $Xn(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(Jqo(t)||(t=t instanceof Uqo?new qXn([t],"blob",{type:t.type}):new zXn(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=Fmr&&t instanceof Fmr||t instanceof e4n?new qXn([t],r,n):new zXn(t,r,n)}return{name:e,value:t}}t4n.exports={FormData:RBe}});var CHe=H((wiu,u4n)=>{"use strict";var Kqo=CXn(),NBe=zC(),{ReadableStreamFrom:jqo,isBlobLike:r4n,isReadableStreamLike:zqo,readableStreamClose:qqo,createDeferredPromise:$qo,fullyReadBody:e$o}=EM(),{FormData:n4n}=dft(),{kState:w$}=v$(),{webidl:Zmr}=xZ(),{DOMException:o4n,structuredClone:t$o}=Xoe(),{Blob:r$o,File:n$o}=wt("buffer"),{kBodyUsed:i$o}=GE(),Lmr=wt("assert"),{isErrored:s$o}=zC(),{isUint8Array:a4n,isArrayBuffer:o$o}=wt("util/types"),{File:a$o}=gft(),{parseMIMEType:c$o,serializeAMimeType:l$o}=wX(),B$=globalThis.ReadableStream,i4n=n$o??a$o,pft=new TextEncoder,u$o=new TextDecoder;function c4n(e,t=!1){B$||(B$=wt("stream/web").ReadableStream);let r=null;e instanceof B$?r=e:r4n(e)?r=e.stream():r=new B$({async pull(f){f.enqueue(typeof a=="string"?pft.encode(a):a),queueMicrotask(()=>qqo(f))},start(){},type:void 0}),Lmr(zqo(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(o$o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(NBe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r +`),e.replace(/\r?\n/g,t)}function a$o(e){return $Xn&&e instanceof $Xn||e instanceof _He||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}n4n.exports={File:_He,FileLike:Lmr,isFileLike:a$o}});var fft=H((msu,c4n)=>{"use strict";var{isBlobLike:pft,toUSVString:c$o,makeIterator:Vmr}=EM(),{kState:CG}=v$(),{File:a4n,FileLike:i4n,isFileLike:l$o}=dft(),{webidl:Cy}=xZ(),{Blob:u$o,File:Pmr}=wt("buffer"),s4n=Pmr??a4n,NBe=class e{constructor(t){if(t!==void 0)throw Cy.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[CG]=[]}append(t,r,n=void 0){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!pft(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=Cy.converters.USVString(t),r=pft(r)?Cy.converters.Blob(r,{strict:!1}):Cy.converters.USVString(r),n=arguments.length===3?Cy.converters.USVString(n):void 0;let a=o4n(t,r,n);this[CG].push(a)}delete(t){Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=Cy.converters.USVString(t),this[CG]=this[CG].filter(r=>r.name!==t)}get(t){Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=Cy.converters.USVString(t);let r=this[CG].findIndex(n=>n.name===t);return r===-1?null:this[CG][r].value}getAll(t){return Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=Cy.converters.USVString(t),this[CG].filter(r=>r.name===t).map(r=>r.value)}has(t){return Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=Cy.converters.USVString(t),this[CG].findIndex(r=>r.name===t)!==-1}set(t,r,n=void 0){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!pft(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=Cy.converters.USVString(t),r=pft(r)?Cy.converters.Blob(r,{strict:!1}):Cy.converters.USVString(r),n=arguments.length===3?c$o(n):void 0;let a=o4n(t,r,n),o=this[CG].findIndex(l=>l.name===t);o!==-1?this[CG]=[...this[CG].slice(0,o),a,...this[CG].slice(o+1).filter(l=>l.name!==t)]:this[CG].push(a)}entries(){return Cy.brandCheck(this,e),Vmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return Cy.brandCheck(this,e),Vmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","key")}values(){return Cy.brandCheck(this,e),Vmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}};NBe.prototype[Symbol.iterator]=NBe.prototype.entries;Object.defineProperties(NBe.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function o4n(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(l$o(t)||(t=t instanceof u$o?new s4n([t],"blob",{type:t.type}):new i4n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=Pmr&&t instanceof Pmr||t instanceof a4n?new s4n([t],r,n):new i4n(t,r,n)}return{name:e,value:t}}c4n.exports={FormData:NBe}});var yHe=H((Csu,h4n)=>{"use strict";var g$o=BXn(),DBe=zC(),{ReadableStreamFrom:A$o,isBlobLike:l4n,isReadableStreamLike:d$o,readableStreamClose:p$o,createDeferredPromise:f$o,fullyReadBody:I$o}=EM(),{FormData:u4n}=fft(),{kState:w$}=v$(),{webidl:Wmr}=xZ(),{DOMException:d4n,structuredClone:h$o}=Joe(),{Blob:m$o,File:C$o}=wt("buffer"),{kBodyUsed:_$o}=GE(),Omr=wt("assert"),{isErrored:y$o}=zC(),{isUint8Array:p4n,isArrayBuffer:b$o}=wt("util/types"),{File:E$o}=dft(),{parseMIMEType:S$o,serializeAMimeType:v$o}=wX(),B$=globalThis.ReadableStream,g4n=C$o??E$o,Ift=new TextEncoder,B$o=new TextDecoder;function f4n(e,t=!1){B$||(B$=wt("stream/web").ReadableStream);let r=null;e instanceof B$?r=e:l4n(e)?r=e.stream():r=new B$({async pull(f){f.enqueue(typeof a=="string"?Ift.encode(a):a),queueMicrotask(()=>p$o(f))},start(){},type:void 0}),Omr(d$o(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(b$o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(DBe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r Content-Disposition: form-data`;let C=Q=>Q.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),b=Q=>Q.replace(/\r?\n|\r/g,`\r -`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,X]of e)if(typeof X=="string"){let ae=pft.encode(I+`; name="${C(b(Q))}"\r +`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,X]of e)if(typeof X=="string"){let ae=Ift.encode(I+`; name="${C(b(Q))}"\r \r ${b(X)}\r -`);E.push(ae),o+=ae.byteLength}else{let ae=pft.encode(`${I}; name="${C(b(Q))}"`+(X.name?`; filename="${C(X.name)}"`:"")+`\r +`);E.push(ae),o+=ae.byteLength}else{let ae=Ift.encode(`${I}; name="${C(b(Q))}"`+(X.name?`; filename="${C(X.name)}"`:"")+`\r Content-Type: ${X.type||"application/octet-stream"}\r \r -`);E.push(ae,X,N),typeof X.size=="number"?o+=ae.byteLength+X.size+N.byteLength:B=!0}let F=pft.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l="multipart/form-data; boundary="+f}else if(r4n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(NBe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof B$?e:jqo(e)}if((typeof a=="string"||NBe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new B$({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();return b?queueMicrotask(()=>{I.close()}):s$o(r)||I.enqueue(new Uint8Array(C)),I.desiredSize>0},async cancel(I){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},l]}function g$o(e,t=!1){return B$||(B$=wt("stream/web").ReadableStream),e instanceof B$&&(Lmr(!NBe.isDisturbed(e),"The body has already been consumed."),Lmr(!e.locked,"The stream is locked.")),c4n(e,t)}function A$o(e){let[t,r]=e.stream.tee(),n=t$o(r,{transfer:[r]}),[,a]=n.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*s4n(e){if(e)if(a4n(e))yield e;else{let t=e.stream;if(NBe.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[i$o]=!0,yield*t}}function Vmr(e){if(e.aborted)throw new o4n("The operation was aborted.","AbortError")}function d$o(e){return{blob(){return fft(this,r=>{let n=h$o(this);return n==="failure"?n="":n&&(n=l$o(n)),new r$o([r],{type:n})},e)},arrayBuffer(){return fft(this,r=>new Uint8Array(r).buffer,e)},text(){return fft(this,l4n,e)},json(){return fft(this,I$o,e)},async formData(){Zmr.brandCheck(this,e),Vmr(this[w$]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let n={};for(let[A,f]of this.headers)n[A.toLowerCase()]=f;let a=new n4n,o;try{o=new Kqo({headers:n,preservePath:!0})}catch(A){throw new o4n(`${A}`,"AbortError")}o.on("field",(A,f)=>{a.append(A,f)}),o.on("file",(A,f,I,C,b)=>{let E=[];if(C==="base64"||C.toLowerCase()==="base64"){let N="";f.on("data",B=>{N+=B.toString().replace(/[\r\n]/gm,"");let F=N.length-N.length%4;E.push(Buffer.from(N.slice(0,F),"base64")),N=N.slice(F)}),f.on("end",()=>{E.push(Buffer.from(N,"base64")),a.append(A,new i4n(E,I,{type:b}))})}else f.on("data",N=>{E.push(N)}),f.on("end",()=>{a.append(A,new i4n(E,I,{type:b}))})});let l=new Promise((A,f)=>{o.on("finish",A),o.on("error",I=>f(new TypeError(I)))});if(this.body!==null)for await(let A of s4n(this[w$].body))o.write(A);return o.end(),await l,a}else if(/application\/x-www-form-urlencoded/.test(r)){let n;try{let o="",l=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let A of s4n(this[w$].body)){if(!a4n(A))throw new TypeError("Expected Uint8Array chunk");o+=l.decode(A,{stream:!0})}o+=l.decode(),n=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new n4n;for(let[o,l]of n)a.append(o,l);return a}else throw await Promise.resolve(),Vmr(this[w$]),Zmr.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function p$o(e){Object.assign(e.prototype,d$o(e))}async function fft(e,t,r){if(Zmr.brandCheck(e,r),Vmr(e[w$]),f$o(e[w$].body))throw new TypeError("Body is unusable");let n=$qo(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[w$].body==null?(o(new Uint8Array),n.promise):(await e$o(e[w$].body,o,a),n.promise)}function f$o(e){return e!=null&&(e.stream.locked||NBe.isDisturbed(e.stream))}function l4n(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),u$o.decode(e))}function I$o(e){return JSON.parse(l4n(e))}function h$o(e){let{headersList:t}=e[w$],r=t.get("content-type");return r===null?"failure":c$o(r)}u4n.exports={extractBody:c4n,safelyExtractBody:g$o,cloneBody:A$o,mixinBody:p$o}});var p4n=H((Tiu,d4n)=>{"use strict";var{InvalidArgumentError:FE,NotSupportedError:m$o}=Ub(),T$=wt("assert"),{kHTTP2BuildRequest:C$o,kHTTP2CopyHeaders:_$o,kHTTP1BuildRequest:y$o}=GE(),U9=zC(),g4n=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,A4n=/[^\t\x20-\x7e\x80-\xff]/,b$o=/[^\u0021-\u00ff]/,TX=Symbol("handler"),sT={},Pmr;try{let e=wt("diagnostics_channel");sT.create=e.channel("undici:request:create"),sT.bodySent=e.channel("undici:request:bodySent"),sT.headers=e.channel("undici:request:headers"),sT.trailers=e.channel("undici:request:trailers"),sT.error=e.channel("undici:request:error")}catch{sT.create={hasSubscribers:!1},sT.bodySent={hasSubscribers:!1},sT.headers={hasSubscribers:!1},sT.trailers={hasSubscribers:!1},sT.error={hasSubscribers:!1}}var Wmr=class e{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B},F){if(typeof r!="string")throw new FE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new FE("path must be an absolute URL or start with a slash");if(b$o.exec(r)!==null)throw new FE("invalid request path");if(typeof n!="string")throw new FE("method must be a string");if(g4n.exec(n)===null)throw new FE("invalid request method");if(I&&typeof I!="string")throw new FE("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new FE("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new FE("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new FE("invalid reset");if(B!=null&&typeof B!="boolean")throw new FE("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(U9.isStream(a)){this.body=a;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=function(){U9.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=X=>{this.abort?this.abort(X):this.error=X},this.body.on("error",this.errorHandler)}else if(U9.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(U9.isFormDataLike(a)||U9.isIterable(a)||U9.isBlobLike(a))this.body=a;else throw new FE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?U9.buildURL(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new FE("headers array must be even");for(let Q=0;Q{I.close()}):y$o(r)||I.enqueue(new Uint8Array(C)),I.desiredSize>0},async cancel(I){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},l]}function w$o(e,t=!1){return B$||(B$=wt("stream/web").ReadableStream),e instanceof B$&&(Omr(!DBe.isDisturbed(e),"The body has already been consumed."),Omr(!e.locked,"The stream is locked.")),f4n(e,t)}function T$o(e){let[t,r]=e.stream.tee(),n=h$o(r,{transfer:[r]}),[,a]=n.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*A4n(e){if(e)if(p4n(e))yield e;else{let t=e.stream;if(DBe.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[_$o]=!0,yield*t}}function Mmr(e){if(e.aborted)throw new d4n("The operation was aborted.","AbortError")}function R$o(e){return{blob(){return hft(this,r=>{let n=x$o(this);return n==="failure"?n="":n&&(n=v$o(n)),new m$o([r],{type:n})},e)},arrayBuffer(){return hft(this,r=>new Uint8Array(r).buffer,e)},text(){return hft(this,I4n,e)},json(){return hft(this,k$o,e)},async formData(){Wmr.brandCheck(this,e),Mmr(this[w$]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let n={};for(let[A,f]of this.headers)n[A.toLowerCase()]=f;let a=new u4n,o;try{o=new g$o({headers:n,preservePath:!0})}catch(A){throw new d4n(`${A}`,"AbortError")}o.on("field",(A,f)=>{a.append(A,f)}),o.on("file",(A,f,I,C,b)=>{let E=[];if(C==="base64"||C.toLowerCase()==="base64"){let N="";f.on("data",B=>{N+=B.toString().replace(/[\r\n]/gm,"");let F=N.length-N.length%4;E.push(Buffer.from(N.slice(0,F),"base64")),N=N.slice(F)}),f.on("end",()=>{E.push(Buffer.from(N,"base64")),a.append(A,new g4n(E,I,{type:b}))})}else f.on("data",N=>{E.push(N)}),f.on("end",()=>{a.append(A,new g4n(E,I,{type:b}))})});let l=new Promise((A,f)=>{o.on("finish",A),o.on("error",I=>f(new TypeError(I)))});if(this.body!==null)for await(let A of A4n(this[w$].body))o.write(A);return o.end(),await l,a}else if(/application\/x-www-form-urlencoded/.test(r)){let n;try{let o="",l=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let A of A4n(this[w$].body)){if(!p4n(A))throw new TypeError("Expected Uint8Array chunk");o+=l.decode(A,{stream:!0})}o+=l.decode(),n=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new u4n;for(let[o,l]of n)a.append(o,l);return a}else throw await Promise.resolve(),Mmr(this[w$]),Wmr.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function N$o(e){Object.assign(e.prototype,R$o(e))}async function hft(e,t,r){if(Wmr.brandCheck(e,r),Mmr(e[w$]),D$o(e[w$].body))throw new TypeError("Body is unusable");let n=f$o(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[w$].body==null?(o(new Uint8Array),n.promise):(await I$o(e[w$].body,o,a),n.promise)}function D$o(e){return e!=null&&(e.stream.locked||DBe.isDisturbed(e.stream))}function I4n(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),B$o.decode(e))}function k$o(e){return JSON.parse(I4n(e))}function x$o(e){let{headersList:t}=e[w$],r=t.get("content-type");return r===null?"failure":S$o(r)}h4n.exports={extractBody:f4n,safelyExtractBody:w$o,cloneBody:T$o,mixinBody:N$o}});var y4n=H((_su,_4n)=>{"use strict";var{InvalidArgumentError:FE,NotSupportedError:G$o}=Ub(),T$=wt("assert"),{kHTTP2BuildRequest:F$o,kHTTP2CopyHeaders:Z$o,kHTTP1BuildRequest:L$o}=GE(),U9=zC(),m4n=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,C4n=/[^\t\x20-\x7e\x80-\xff]/,V$o=/[^\u0021-\u00ff]/,TX=Symbol("handler"),sT={},Hmr;try{let e=wt("diagnostics_channel");sT.create=e.channel("undici:request:create"),sT.bodySent=e.channel("undici:request:bodySent"),sT.headers=e.channel("undici:request:headers"),sT.trailers=e.channel("undici:request:trailers"),sT.error=e.channel("undici:request:error")}catch{sT.create={hasSubscribers:!1},sT.bodySent={hasSubscribers:!1},sT.headers={hasSubscribers:!1},sT.trailers={hasSubscribers:!1},sT.error={hasSubscribers:!1}}var Ymr=class e{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B},F){if(typeof r!="string")throw new FE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new FE("path must be an absolute URL or start with a slash");if(V$o.exec(r)!==null)throw new FE("invalid request path");if(typeof n!="string")throw new FE("method must be a string");if(m4n.exec(n)===null)throw new FE("invalid request method");if(I&&typeof I!="string")throw new FE("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new FE("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new FE("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new FE("invalid reset");if(B!=null&&typeof B!="boolean")throw new FE("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(U9.isStream(a)){this.body=a;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=function(){U9.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=X=>{this.abort?this.abort(X):this.error=X},this.body.on("error",this.errorHandler)}else if(U9.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(U9.isFormDataLike(a)||U9.isIterable(a)||U9.isBlobLike(a))this.body=a;else throw new FE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?U9.buildURL(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new FE("headers array must be even");for(let Q=0;Q{"use strict";var E$o=wt("events"),Omr=class extends E$o{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};f4n.exports=Omr});var bHe=H((Niu,I4n)=>{"use strict";var S$o=Ift(),{ClientDestroyedError:Mmr,ClientClosedError:v$o,InvalidArgumentError:DBe}=Ub(),{kDestroy:B$o,kClose:w$o,kDispatch:Hmr,kInterceptors:LIe}=GE(),kBe=Symbol("destroyed"),yHe=Symbol("closed"),R$=Symbol("onDestroyed"),xBe=Symbol("onClosed"),hft=Symbol("Intercepted Dispatch"),Ymr=class extends S$o{constructor(){super(),this[kBe]=!1,this[R$]=null,this[yHe]=!1,this[xBe]=[]}get destroyed(){return this[kBe]}get closed(){return this[yHe]}get interceptors(){return this[LIe]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[LIe][r]!="function")throw new DBe("interceptor must be an function")}this[LIe]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new DBe("invalid callback");if(this[kBe]){queueMicrotask(()=>t(new Mmr,null));return}if(this[yHe]){this[xBe]?this[xBe].push(t):queueMicrotask(()=>t(null,null));return}this[yHe]=!0,this[xBe].push(t);let r=()=>{let n=this[xBe];this[xBe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new DBe("invalid callback");if(this[kBe]){this[R$]?this[R$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new Mmr),this[kBe]=!0,this[R$]=this[R$]||[],this[R$].push(r);let n=()=>{let a=this[R$];this[R$]=null;for(let o=0;o{queueMicrotask(n)})}[hft](t,r){if(!this[LIe]||this[LIe].length===0)return this[hft]=this[Hmr],this[Hmr](t,r);let n=this[Hmr].bind(this);for(let a=this[LIe].length-1;a>=0;a--)n=this[LIe][a](n);return this[hft]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new DBe("handler must be an object");try{if(!t||typeof t!="object")throw new DBe("opts must be an object.");if(this[kBe]||this[R$])throw new Mmr;if(this[yHe])throw new v$o;return this[hft](t,r)}catch(n){if(typeof r.onError!="function")throw new DBe("invalid onError method");return r.onError(n),!1}}};I4n.exports=Ymr});var EHe=H((xiu,C4n)=>{"use strict";var T$o=wt("net"),h4n=wt("assert"),m4n=zC(),{InvalidArgumentError:R$o,ConnectTimeoutError:N$o}=Ub(),Qmr,Xmr;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?Xmr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function D$o({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new R$o("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},l=new Xmr(t??100);return n=n??1e4,e=e??!1,function({hostname:f,host:I,protocol:C,port:b,servername:E,localAddress:N,httpSocket:B},F){let Q;if(C==="https:"){Qmr||(Qmr=wt("tls")),E=E||o.servername||m4n.getServerName(I)||null;let ae=E||f,ne=l.get(ae)||null;h4n(ae),Q=Qmr.connect({highWaterMark:16384,...o,servername:E,session:ne,localAddress:N,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:B,port:b||443,host:f}),Q.on("session",function(ce){l.set(ae,ce)})}else h4n(!B,"httpSocket can only be sent on TLS update"),Q=T$o.connect({highWaterMark:64*1024,...o,localAddress:N,port:b||80,host:f});if(o.keepAlive==null||o.keepAlive){let ae=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;Q.setKeepAlive(!0,ae)}let X=k$o(()=>x$o(Q),n);return Q.setNoDelay(!0).once(C==="https:"?"secureConnect":"connect",function(){if(X(),F){let ae=F;F=null,ae(null,this)}}).on("error",function(ae){if(X(),F){let ne=F;F=null,ne(ae)}}),Q}}function k$o(e,t){if(!t)return()=>{};let r=null,n=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?n=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(n)}}function x$o(e){m4n.destroy(e,new N$o)}C4n.exports=D$o});var _4n=H(mft=>{"use strict";Object.defineProperty(mft,"__esModule",{value:!0});mft.enumToMap=void 0;function G$o(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}mft.enumToMap=G$o});var y4n=H(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.SPECIAL_HEADERS=xu.HEADER_STATE=xu.MINOR=xu.MAJOR=xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS=xu.TOKEN=xu.STRICT_TOKEN=xu.HEX=xu.URL_CHAR=xu.STRICT_URL_CHAR=xu.USERINFO_CHARS=xu.MARK=xu.ALPHANUM=xu.NUM=xu.HEX_MAP=xu.NUM_MAP=xu.ALPHA=xu.FINISH=xu.H_METHOD_MAP=xu.METHOD_MAP=xu.METHODS_RTSP=xu.METHODS_ICE=xu.METHODS_HTTP=xu.METHODS=xu.LENIENT_FLAGS=xu.FLAGS=xu.TYPE=xu.ERROR=void 0;var F$o=_4n(),Z$o;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Z$o=xu.ERROR||(xu.ERROR={}));var L$o;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(L$o=xu.TYPE||(xu.TYPE={}));var V$o;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(V$o=xu.FLAGS||(xu.FLAGS={}));var P$o;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(P$o=xu.LENIENT_FLAGS||(xu.LENIENT_FLAGS={}));var Zp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Zp=xu.METHODS||(xu.METHODS={}));xu.METHODS_HTTP=[Zp.DELETE,Zp.GET,Zp.HEAD,Zp.POST,Zp.PUT,Zp.CONNECT,Zp.OPTIONS,Zp.TRACE,Zp.COPY,Zp.LOCK,Zp.MKCOL,Zp.MOVE,Zp.PROPFIND,Zp.PROPPATCH,Zp.SEARCH,Zp.UNLOCK,Zp.BIND,Zp.REBIND,Zp.UNBIND,Zp.ACL,Zp.REPORT,Zp.MKACTIVITY,Zp.CHECKOUT,Zp.MERGE,Zp["M-SEARCH"],Zp.NOTIFY,Zp.SUBSCRIBE,Zp.UNSUBSCRIBE,Zp.PATCH,Zp.PURGE,Zp.MKCALENDAR,Zp.LINK,Zp.UNLINK,Zp.PRI,Zp.SOURCE];xu.METHODS_ICE=[Zp.SOURCE];xu.METHODS_RTSP=[Zp.OPTIONS,Zp.DESCRIBE,Zp.ANNOUNCE,Zp.SETUP,Zp.PLAY,Zp.PAUSE,Zp.TEARDOWN,Zp.GET_PARAMETER,Zp.SET_PARAMETER,Zp.REDIRECT,Zp.RECORD,Zp.FLUSH,Zp.GET,Zp.POST];xu.METHOD_MAP=F$o.enumToMap(Zp);xu.H_METHOD_MAP={};Object.keys(xu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(xu.H_METHOD_MAP[e]=xu.METHOD_MAP[e])});var W$o;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(W$o=xu.FINISH||(xu.FINISH={}));xu.ALPHA=[];for(let e=65;e<=90;e++)xu.ALPHA.push(String.fromCharCode(e)),xu.ALPHA.push(String.fromCharCode(e+32));xu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};xu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};xu.NUM=["0","1","2","3","4","5","6","7","8","9"];xu.ALPHANUM=xu.ALPHA.concat(xu.NUM);xu.MARK=["-","_",".","!","~","*","'","(",")"];xu.USERINFO_CHARS=xu.ALPHANUM.concat(xu.MARK).concat(["%",";",":","&","=","+","$",","]);xu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(xu.ALPHANUM);xu.URL_CHAR=xu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)xu.URL_CHAR.push(e);xu.HEX=xu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);xu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(xu.ALPHANUM);xu.TOKEN=xu.STRICT_TOKEN.concat([" "]);xu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&xu.HEADER_CHARS.push(e);xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS.filter(e=>e!==44);xu.MAJOR=xu.NUM_MAP;xu.MINOR=xu.MAJOR;var GBe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(GBe=xu.HEADER_STATE||(xu.HEADER_STATE={}));xu.SPECIAL_HEADERS={connection:GBe.CONNECTION,"content-length":GBe.CONTENT_LENGTH,"proxy-connection":GBe.CONNECTION,"transfer-encoding":GBe.TRANSFER_ENCODING,upgrade:GBe.UPGRADE}});var Kmr=H((Ziu,S4n)=>{"use strict";var N$=zC(),{kBodyUsed:SHe}=GE(),Umr=wt("assert"),{InvalidArgumentError:O$o}=Ub(),M$o=wt("events"),H$o=[300,301,302,303,307,308],b4n=Symbol("body"),Cft=class{constructor(t){this[b4n]=t,this[SHe]=!1}async*[Symbol.asyncIterator](){Umr(!this[SHe],"disturbed"),this[SHe]=!0,yield*this[b4n]}},Jmr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new O$o("maxRedirections must be a positive number");N$.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],N$.isStream(this.opts.body)?(N$.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){Umr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[SHe]=!1,M$o.prototype.on.call(this.opts.body,"data",function(){this[SHe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Cft(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&N$.isIterable(this.opts.body)&&(this.opts.body=new Cft(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||N$.isDisturbed(this.opts.body)?null:Y$o(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=N$.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=Q$o(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Y$o(e,t){if(H$o.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var X$o=Kmr();function J$o({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new X$o(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}v4n.exports=J$o});var jmr=H((Viu,B4n)=>{B4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJsbGh0dHBfc3RhdHVzX25hbWUAIRpsbGh0dHBfc2V0X2xlbmllbnRfaGVhZGVycwAiIWxsaHR0cF9zZXRfbGVuaWVudF9jaHVua2VkX2xlbmd0aAAjHWxsaHR0cF9zZXRfbGVuaWVudF9rZWVwX2FsaXZlACQkbGxodHRwX3NldF9sZW5pZW50X3RyYW5zZmVyX2VuY29kaW5nACUYbGxodHRwX21lc3NhZ2VfbmVlZHNfZW9mAD8JFwEAQQELEQECAwQFCwYHNTk3MS8tJyspCsLgAkUCAAsIABCIgICAAAsZACAAEMKAgIAAGiAAIAI2AjggACABOgAoCxwAIAAgAC8BMiAALQAuIAAQwYCAgAAQgICAgAALKgEBf0HAABDGgICAACIBEMKAgIAAGiABQYCIgIAANgI4IAEgADoAKCABCwoAIAAQyICAgAALBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LRQEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABDCgICAABogACAENgI4IAAgAzoAKCAAIAI6AC0gACABNgIYCxEAIAAgASABIAJqEMOAgIAACxAAIABBAEHcABDMgICAABoLZwEBf0EAIQECQCAAKAIMDQACQAJAAkACQCAALQAvDgMBAAMCCyAAKAI4IgFFDQAgASgCLCIBRQ0AIAAgARGAgICAAAAiAQ0DC0EADwsQyoCAgAAACyAAQcOWgIAANgIQQQ4hAQsgAQseAAJAIAAoAgwNACAAQdGbgIAANgIQIABBFTYCDAsLFgACQCAAKAIMQRVHDQAgAEEANgIMCwsWAAJAIAAoAgxBFkcNACAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsiAAJAIABBJEkNABDKgICAAAALIABBAnRBoLOAgABqKAIACyIAAkAgAEEuSQ0AEMqAgIAAAAsgAEECdEGwtICAAGooAgAL7gsBAX9B66iAgAAhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBnH9qDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0Hhp4CAAA8LQaShgIAADwtBy6yAgAAPC0H+sYCAAA8LQcCkgIAADwtBq6SAgAAPC0GNqICAAA8LQeKmgIAADwtBgLCAgAAPC0G5r4CAAA8LQdekgIAADwtB75+AgAAPC0Hhn4CAAA8LQfqfgIAADwtB8qCAgAAPC0Gor4CAAA8LQa6ygIAADwtBiLCAgAAPC0Hsp4CAAA8LQYKigIAADwtBjp2AgAAPC0HQroCAAA8LQcqjgIAADwtBxbKAgAAPC0HfnICAAA8LQdKcgIAADwtBxKCAgAAPC0HXoICAAA8LQaKfgIAADwtB7a6AgAAPC0GrsICAAA8LQdSlgIAADwtBzK6AgAAPC0H6roCAAA8LQfyrgIAADwtB0rCAgAAPC0HxnYCAAA8LQbuggIAADwtB96uAgAAPC0GQsYCAAA8LQdexgIAADwtBoq2AgAAPC0HUp4CAAA8LQeCrgIAADwtBn6yAgAAPC0HrsYCAAA8LQdWfgIAADwtByrGAgAAPC0HepYCAAA8LQdSegIAADwtB9JyAgAAPC0GnsoCAAA8LQbGdgIAADwtBoJ2AgAAPC0G5sYCAAA8LQbywgIAADwtBkqGAgAAPC0GzpoCAAA8LQemsgIAADwtBrJ6AgAAPC0HUq4CAAA8LQfemgIAADwtBgKaAgAAPC0GwoYCAAA8LQf6egIAADwtBjaOAgAAPC0GJrYCAAA8LQfeigIAADwtBoLGAgAAPC0Gun4CAAA8LQcalgIAADwtB6J6AgAAPC0GTooCAAA8LQcKvgIAADwtBw52AgAAPC0GLrICAAA8LQeGdgIAADwtBja+AgAAPC0HqoYCAAA8LQbStgIAADwtB0q+AgAAPC0HfsoCAAA8LQdKygIAADwtB8LCAgAAPC0GpooCAAA8LQfmjgIAADwtBmZ6AgAAPC0G1rICAAA8LQZuwgIAADwtBkrKAgAAPC0G2q4CAAA8LQcKigIAADwtB+LKAgAAPC0GepYCAAA8LQdCigIAADwtBup6AgAAPC0GBnoCAAA8LEMqAgIAAAAtB1qGAgAAhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAgAiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCBCIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQcaRgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIwIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAggiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2ioCAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCNCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIMIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZqAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAjgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCECIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZWQgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAI8IgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAhQiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEGqm4CAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCQCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIYIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZOAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCJCIERQ0AIAAgBBGAgICAAAAhAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIsIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAigiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2iICAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCUCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIcIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABBwpmAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCICIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZSUgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAJMIgRFDQAgACAEEYCAgIAAACEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAlQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCWCIERQ0AIAAgBBGAgICAAAAhAwsgAwtFAQF/AkACQCAALwEwQRRxQRRHDQBBASEDIAAtAChBAUYNASAALwEyQeUARiEDDAELIAAtAClBBUYhAwsgACADOgAuQQAL/gEBA39BASEDAkAgAC8BMCIEQQhxDQAgACkDIEIAUiEDCwJAAkAgAC0ALkUNAEEBIQUgAC0AKUEFRg0BQQEhBSAEQcAAcUUgA3FBAUcNAQtBACEFIARBwABxDQBBAiEFIARB//8DcSIDQQhxDQACQCADQYAEcUUNAAJAIAAtAChBAUcNACAALQAtQQpxDQBBBQ8LQQQPCwJAIANBIHENAAJAIAAtAChBAUYNACAALwEyQf//A3EiAEGcf2pB5ABJDQAgAEHMAUYNACAAQbACRg0AQQQhBSAEQShxRQ0CIANBiARxQYAERg0CC0EADwtBAEEDIAApAyBQGyEFCyAFC2IBAn9BACEBAkAgAC0AKEEBRg0AIAAvATJB//8DcSICQZx/akHkAEkNACACQcwBRg0AIAJBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhASAAQYgEcUGABEYNACAAQShxRSEBCyABC6cBAQN/AkACQAJAIAAtACpFDQAgAC0AK0UNAEEAIQMgAC8BMCIEQQJxRQ0BDAILQQAhAyAALwEwIgRBAXFFDQELQQEhAyAALQAoQQFGDQAgAC8BMkH//wNxIgVBnH9qQeQASQ0AIAVBzAFGDQAgBUGwAkYNACAEQcAAcQ0AQQAhAyAEQYgEcUGABEYNACAEQShxQQBHIQMLIABBADsBMCAAQQA6AC8gAwuZAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQBBACEBIAAvATAiAkECcUUNAQwCC0EAIQEgAC8BMCICQQFxRQ0BC0EBIQEgAC0AKEEBRg0AIAAvATJB//8DcSIAQZx/akHkAEkNACAAQcwBRg0AIABBsAJGDQAgAkHAAHENAEEAIQEgAkGIBHFBgARGDQAgAkEocUEARyEBCyABC1kAIABBGGpCADcDACAAQgA3AwAgAEE4akIANwMAIABBMGpCADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var T4n=H((Piu,w4n)=>{w4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var DHe=H((Wiu,J4n)=>{"use strict";var kA=wt("assert"),D4n=wt("net"),U$o=wt("http"),{pipeline:K$o}=wt("stream"),vp=zC(),zmr=OQn(),$mr=p4n(),j$o=bHe(),{RequestContentLengthMismatchError:D$,ResponseContentLengthMismatchError:z$o,InvalidArgumentError:$B,RequestAbortedError:aCr,HeadersTimeoutError:q$o,HeadersOverflowError:$$o,SocketError:ZBe,InformationalError:m8,BodyTimeoutError:eea,HTTPParserError:tea,ResponseExceededMaxSizeError:rea,ClientDestroyedError:nea}=Ub(),iea=EHe(),{kUrl:Rk,kReset:GZ,kServerName:Joe,kClient:C8,kBusy:eCr,kParser:Pv,kConnect:sea,kBlocking:LBe,kResuming:VIe,kRunning:TS,kPending:WIe,kSize:PIe,kWriting:k$,kQueue:L1,kConnected:oea,kConnecting:FBe,kNeedDrain:Koe,kNoRef:vHe,kKeepAliveDefaultTimeout:tCr,kHostHeader:k4n,kPendingIdx:HW,kRunningIdx:V1,kError:Nk,kPipelining:joe,kSocket:Wv,kKeepAliveTimeoutValue:THe,kMaxHeadersSize:Eft,kKeepAliveMaxTimeout:x4n,kKeepAliveTimeoutThreshold:G4n,kHeadersTimeout:F4n,kBodyTimeout:Z4n,kStrictContentLength:RHe,kConnector:BHe,kMaxRedirections:aea,kMaxRequests:NHe,kCounter:L4n,kClose:cea,kDestroy:lea,kDispatch:uea,kInterceptors:gea,kLocalAddress:wHe,kMaxResponseSize:V4n,kHTTPConnVersion:_8,kHost:P4n,kHTTP2Session:YW,kHTTP2SessionState:vft,kHTTP2BuildRequest:Aea,kHTTP2CopyHeaders:dea,kHTTP1BuildRequest:pea}=GE(),Bft;try{Bft=wt("http2")}catch{Bft={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:fea,HTTP2_HEADER_METHOD:Iea,HTTP2_HEADER_PATH:hea,HTTP2_HEADER_SCHEME:mea,HTTP2_HEADER_CONTENT_LENGTH:Cea,HTTP2_HEADER_EXPECT:_ea,HTTP2_HEADER_STATUS:yea}}=Bft,R4n=!1,yft=Buffer[Symbol.species],Uoe=Symbol("kClosedResolve"),_G={};try{let e=wt("diagnostics_channel");_G.sendHeaders=e.channel("undici:client:sendHeaders"),_G.beforeConnect=e.channel("undici:client:beforeConnect"),_G.connectError=e.channel("undici:client:connectError"),_G.connected=e.channel("undici:client:connected")}catch{_G.sendHeaders={hasSubscribers:!1},_G.beforeConnect={hasSubscribers:!1},_G.connectError={hasSubscribers:!1},_G.connected={hasSubscribers:!1}}var rCr=class extends j$o{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:X,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,allowH2:k,maxConcurrentStreams:et}={}){if(super(),C!==void 0)throw new $B("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new $B("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new $B("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new $B("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new $B("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new $B("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new $B("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new $B("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new $B("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new $B("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new $B("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new $B("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new $B("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new $B("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new $B("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new $B("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||D4n.isIP(de)===0))throw new $B("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new $B("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new $B("autoSelectFamilyAttemptTimeout must be a positive number");if(k!=null&&typeof k!="boolean")throw new $B("allowH2 must be a valid boolean value");if(et!=null&&(typeof et!="number"||et<1))throw new $B("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=iea({...X,maxCachedSessions:ne,allowH2:k,socketPath:F,timeout:A,...vp.nodeHasAutoSelectFamily&&Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),this[gea]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[Bea({maxRedirections:ce})],this[Rk]=vp.parseOrigin(t),this[BHe]=fe,this[Wv]=null,this[joe]=Q??1,this[Eft]=n||U$o.maxHeaderSize,this[tCr]=b??4e3,this[x4n]=N??6e5,this[G4n]=B??1e3,this[THe]=this[tCr],this[Joe]=null,this[wHe]=de??null,this[VIe]=0,this[Koe]=0,this[k4n]=`host: ${this[Rk].hostname}${this[Rk].port?`:${this[Rk].port}`:""}\r -`,this[Z4n]=f??3e5,this[F4n]=a??3e5,this[RHe]=ae??!0,this[aea]=ce,this[NHe]=ue,this[Uoe]=null,this[V4n]=be>-1?be:-1,this[_8]="h1",this[YW]=null,this[vft]=k?{openStreams:0,maxConcurrentStreams:et??100}:null,this[P4n]=`${this[Rk].hostname}${this[Rk].port?`:${this[Rk].port}`:""}`,this[L1]=[],this[V1]=0,this[HW]=0}get pipelining(){return this[joe]}set pipelining(t){this[joe]=t,QW(this,!0)}get[WIe](){return this[L1].length-this[HW]}get[TS](){return this[HW]-this[V1]}get[PIe](){return this[L1].length-this[V1]}get[oea](){return!!this[Wv]&&!this[FBe]&&!this[Wv].destroyed}get[eCr](){let t=this[Wv];return t&&(t[GZ]||t[k$]||t[LBe])||this[PIe]>=(this[joe]||1)||this[WIe]>0}[sea](t){H4n(this),this.once("connect",t)}[uea](t,r){let n=t.origin||this[Rk].origin,a=this[_8]==="h2"?$mr[Aea](n,t,r):$mr[pea](n,t,r);return this[L1].push(a),this[VIe]||(vp.bodyLength(a.body)==null&&vp.isIterable(a.body)?(this[VIe]=1,process.nextTick(QW,this)):QW(this,!0)),this[VIe]&&this[Koe]!==2&&this[eCr]&&(this[Koe]=2),this[Koe]<2}async[cea](){return new Promise(t=>{this[PIe]?this[Uoe]=t:t(null)})}async[lea](t){return new Promise(r=>{let n=this[L1].splice(this[HW]);for(let o=0;o{this[Uoe]&&(this[Uoe](),this[Uoe]=null),r()};this[YW]!=null&&(vp.destroy(this[YW],t),this[YW]=null,this[vft]=null),this[Wv]?vp.destroy(this[Wv].on("close",a),t):queueMicrotask(a),QW(this)})}};function bea(e){kA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Wv][Nk]=e,Rft(this[C8],e)}function Eea(e,t,r){let n=new m8(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[Wv][Nk]=n,Rft(this[C8],n))}function Sea(){vp.destroy(this,new ZBe("other side closed")),vp.destroy(this[Wv],new ZBe("other side closed"))}function vea(e){let t=this[C8],r=new m8(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[Wv]=null,t[YW]=null,t.destroyed){kA(this[WIe]===0);let n=t[L1].splice(t[V1]);for(let a=0;a0){let n=t[L1][t[V1]];t[L1][t[V1]++]=null,FZ(t,n,r)}t[HW]=t[V1],kA(t[TS]===0),t.emit("disconnect",t[Rk],[t],r),QW(t)}var f8=y4n(),Bea=_ft(),wea=Buffer.alloc(0);async function Tea(){let e=process.env.JEST_WORKER_ID?jmr():void 0,t;try{t=await WebAssembly.compile(Buffer.from(T4n(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||jmr(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onStatus(new yft(I8.buffer,o,a))||0},wasm_on_message_begin:r=>(kA.strictEqual(TR.ptr,r),TR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onHeaderField(new yft(I8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onHeaderValue(new yft(I8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(kA.strictEqual(TR.ptr,r),TR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onBody(new yft(I8.buffer,o,a))||0},wasm_on_message_complete:r=>(kA.strictEqual(TR.ptr,r),TR.onMessageComplete()||0)}})}var qmr=null,nCr=Tea();nCr.catch();var TR=null,I8=null,bft=0,h8=null,VBe=1,Sft=2,iCr=3,sCr=class{constructor(t,r,{exports:n}){kA(Number.isFinite(t[Eft])&&t[Eft]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(f8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[Eft],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[V4n]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(zmr.clearTimeout(this.timeout),t?(this.timeout=zmr.setTimeout(Rea,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(kA(this.ptr!=null),kA(TR==null),this.llhttp.llhttp_resume(this.ptr),kA(this.timeoutType===Sft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||wea),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){kA(this.ptr!=null),kA(TR==null),kA(!this.paused);let{socket:r,llhttp:n}=this;t.length>bft&&(h8&&n.free(h8),bft=Math.ceil(t.length/4096)*4096,h8=n.malloc(bft)),new Uint8Array(n.memory.buffer,h8,bft).set(t);try{let a;try{I8=t,TR=this,a=n.llhttp_execute(this.ptr,h8,t.length)}catch(l){throw l}finally{TR=null,I8=null}let o=n.llhttp_get_error_pos(this.ptr)-h8;if(a===f8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===f8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==f8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new tea(A,f8.ERROR[a],t.slice(o))}}catch(a){vp.destroy(r,a)}}destroy(){kA(this.ptr!=null),kA(TR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,zmr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[L1][r[V1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];n.length===10&&n.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():n.length===10&&n.toString().toLowerCase()==="connection"?this.connection+=t.toString():n.length===14&&n.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&vp.destroy(this.socket,new $$o)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;kA(r);let A=n[L1][n[V1]];kA(A),kA(!a.destroyed),kA(a===n[Wv]),kA(!this.paused),kA(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[Pv].destroy(),a[Pv]=null,a[C8]=null,a[Nk]=null,a.removeListener("error",O4n).removeListener("readable",W4n).removeListener("end",M4n).removeListener("close",oCr),n[Wv]=null,n[L1][n[V1]++]=null,n.emit("disconnect",n[Rk],[n],new m8("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){vp.destroy(a,f)}QW(n)}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[L1][a[V1]];if(!f)return-1;if(kA(!this.upgrade),kA(this.statusCode<200),t===100)return vp.destroy(o,new ZBe("bad response",vp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return vp.destroy(o,new ZBe("bad upgrade",vp.getSocketInfo(o))),-1;if(kA.strictEqual(this.timeoutType,VBe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[GZ]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[Z4n];this.setTimeout(C,Sft)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return kA(a[TS]===1),this.upgrade=!0,2;if(r)return kA(a[TS]===1),this.upgrade=!0,2;if(kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[joe]){let C=this.keepAlive?vp.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[G4n],a[x4n]);b<=0?o[GZ]=!0:a[THe]=b}else a[THe]=a[tCr]}else o[GZ]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[LBe]&&(o[LBe]=!1,QW(a)),I?f8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[L1][r[V1]];if(kA(l),kA.strictEqual(this.timeoutType,Sft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),kA(a>=200),o>-1&&this.bytesRead+t.length>o)return vp.destroy(n,new rea),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return f8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;let I=t[L1][t[V1]];if(kA(I),kA(n>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return vp.destroy(r,new z$o),-1;if(I.onComplete(o),t[L1][t[V1]++]=null,r[k$])return kA.strictEqual(t[TS],0),vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED;if(f){if(r[GZ]&&t[TS]===0)return vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED;t[joe]===1?setImmediate(QW,t):QW(t)}else return vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED}}};function Rea(e){let{socket:t,timeoutType:r,client:n}=e;r===VBe?(!t[k$]||t.writableNeedDrain||n[TS]>1)&&(kA(!e.paused,"cannot be paused while waiting for headers"),vp.destroy(t,new q$o)):r===Sft?e.paused||vp.destroy(t,new eea):r===iCr&&(kA(n[TS]===0&&n[THe]),vp.destroy(t,new m8("socket idle timeout")))}function W4n(){let{[Pv]:e}=this;e&&e.readMore()}function O4n(e){let{[C8]:t,[Pv]:r}=this;if(kA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[_8]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[Nk]=e,Rft(this[C8],e)}function Rft(e,t){if(e[TS]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){kA(e[HW]===e[V1]);let r=e[L1].splice(e[V1]);for(let n=0;n0&&r.code!=="UND_ERR_INFO"){let n=e[L1][e[V1]];e[L1][e[V1]++]=null,FZ(e,n,r)}e[HW]=e[V1],kA(e[TS]===0),e.emit("disconnect",e[Rk],[e],r),QW(e)}async function H4n(e){kA(!e[FBe]),kA(!e[Wv]);let{host:t,hostname:r,protocol:n,port:a}=e[Rk];if(r[0]==="["){let o=r.indexOf("]");kA(o!==-1);let l=r.substring(1,o);kA(D4n.isIP(l)),r=l}e[FBe]=!0,_G.beforeConnect.hasSubscribers&&_G.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},connector:e[BHe]});try{let o=await new Promise((A,f)=>{e[BHe]({host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},(I,C)=>{I?f(I):A(C)})});if(e.destroyed){vp.destroy(o.on("error",()=>{}),new nea);return}if(e[FBe]=!1,kA(o),o.alpnProtocol==="h2"){R4n||(R4n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let A=Bft.connect(e[Rk],{createConnection:()=>o,peerMaxConcurrentStreams:e[vft].maxConcurrentStreams});e[_8]="h2",A[C8]=e,A[Wv]=o,A.on("error",bea),A.on("frameError",Eea),A.on("end",Sea),A.on("goaway",vea),A.on("close",oCr),A.unref(),e[YW]=A,o[YW]=A}else qmr||(qmr=await nCr,nCr=null),o[vHe]=!1,o[k$]=!1,o[GZ]=!1,o[LBe]=!1,o[Pv]=new sCr(e,o,qmr);o[L4n]=0,o[NHe]=e[NHe],o[C8]=e,o[Nk]=null,o.on("error",O4n).on("readable",W4n).on("end",M4n).on("close",oCr),e[Wv]=o,_G.connected.hasSubscribers&&_G.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},connector:e[BHe],socket:o}),e.emit("connect",e[Rk],[e])}catch(o){if(e.destroyed)return;if(e[FBe]=!1,_G.connectError.hasSubscribers&&_G.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},connector:e[BHe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(kA(e[TS]===0);e[WIe]>0&&e[L1][e[HW]].servername===e[Joe];){let l=e[L1][e[HW]++];FZ(e,l,o)}else Rft(e,o);e.emit("connectionError",e[Rk],[e],o)}QW(e)}function N4n(e){e[Koe]=0,e.emit("drain",e[Rk],[e])}function QW(e,t){e[VIe]!==2&&(e[VIe]=2,Nea(e,t),e[VIe]=0,e[V1]>256&&(e[L1].splice(0,e[V1]),e[HW]-=e[V1],e[V1]=0))}function Nea(e,t){for(;;){if(e.destroyed){kA(e[WIe]===0);return}if(e[Uoe]&&!e[PIe]){e[Uoe](),e[Uoe]=null;return}let r=e[Wv];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[PIe]===0?!r[vHe]&&r.unref&&(r.unref(),r[vHe]=!0):r[vHe]&&r.ref&&(r.ref(),r[vHe]=!1),e[PIe]===0)r[Pv].timeoutType!==iCr&&r[Pv].setTimeout(e[THe],iCr);else if(e[TS]>0&&r[Pv].statusCode<200&&r[Pv].timeoutType!==VBe){let a=e[L1][e[V1]],o=a.headersTimeout!=null?a.headersTimeout:e[F4n];r[Pv].setTimeout(o,VBe)}}if(e[eCr])e[Koe]=2;else if(e[Koe]===2){t?(e[Koe]=1,process.nextTick(N4n,e)):N4n(e);continue}if(e[WIe]===0||e[TS]>=(e[joe]||1))return;let n=e[L1][e[HW]];if(e[Rk].protocol==="https:"&&e[Joe]!==n.servername){if(e[TS]>0)return;if(e[Joe]=n.servername,r&&r.servername!==n.servername){vp.destroy(r,new m8("servername changed"));return}}if(e[FBe])return;if(!r&&!e[YW]){H4n(e);return}if(r.destroyed||r[k$]||r[GZ]||r[LBe]||e[TS]>0&&!n.idempotent||e[TS]>0&&(n.upgrade||n.method==="CONNECT")||e[TS]>0&&vp.bodyLength(n.body)!==0&&(vp.isStream(n.body)||vp.isAsyncIterable(n.body)))return;!n.aborted&&Dea(e,n)?e[HW]++:e[L1].splice(e[HW],1)}}function Y4n(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Dea(e,t){if(e[_8]==="h2"){kea(e,e[YW],t);return}let{body:r,method:n,path:a,host:o,upgrade:l,headers:A,blocking:f,reset:I}=t,C=n==="PUT"||n==="POST"||n==="PATCH";r&&typeof r.read=="function"&&r.read(0);let b=vp.bodyLength(r),E=b;if(E===null&&(E=t.contentLength),E===0&&!C&&(E=null),Y4n(n)&&E>0&&t.contentLength!==null&&t.contentLength!==E){if(e[RHe])return FZ(e,t,new D$),!1;process.emitWarning(new D$)}let N=e[Wv];try{t.onConnect(F=>{t.aborted||t.completed||(FZ(e,t,F||new aCr),vp.destroy(N,new m8("aborted")))})}catch(F){FZ(e,t,F)}if(t.aborted)return!1;n==="HEAD"&&(N[GZ]=!0),(l||n==="CONNECT")&&(N[GZ]=!0),I!=null&&(N[GZ]=I),e[NHe]&&N[L4n]++>=e[NHe]&&(N[GZ]=!0),f&&(N[LBe]=!0);let B=`${n} ${a} HTTP/1.1\r +`);U9.validateHandler(F,n,I),this.servername=U9.getServerName(this.host),this[TX]=F,sT.create.hasSubscribers&&sT.create.publish({request:this})}onBodySent(t){if(this[TX].onBodySent)try{return this[TX].onBodySent(t)}catch(r){this.abort(r)}}onRequestSent(){if(sT.bodySent.hasSubscribers&&sT.bodySent.publish({request:this}),this[TX].onRequestSent)try{return this[TX].onRequestSent()}catch(t){this.abort(t)}}onConnect(t){if(T$(!this.aborted),T$(!this.completed),this.error)t(this.error);else return this.abort=t,this[TX].onConnect(t)}onHeaders(t,r,n,a){T$(!this.aborted),T$(!this.completed),sT.headers.hasSubscribers&&sT.headers.publish({request:this,response:{statusCode:t,headers:r,statusText:a}});try{return this[TX].onHeaders(t,r,n,a)}catch(o){this.abort(o)}}onData(t){T$(!this.aborted),T$(!this.completed);try{return this[TX].onData(t)}catch(r){return this.abort(r),!1}}onUpgrade(t,r,n){return T$(!this.aborted),T$(!this.completed),this[TX].onUpgrade(t,r,n)}onComplete(t){this.onFinally(),T$(!this.aborted),this.completed=!0,sT.trailers.hasSubscribers&&sT.trailers.publish({request:this,trailers:t});try{return this[TX].onComplete(t)}catch(r){this.onError(r)}}onError(t){if(this.onFinally(),sT.error.hasSubscribers&&sT.error.publish({request:this,error:t}),!this.aborted)return this.aborted=!0,this[TX].onError(t)}onFinally(){this.errorHandler&&(this.body.off("error",this.errorHandler),this.errorHandler=null),this.endHandler&&(this.body.off("end",this.endHandler),this.endHandler=null)}addHeader(t,r){return bHe(this,t,r),this}static[L$o](t,r,n){return new e(t,r,n)}static[F$o](t,r,n){let a=r.headers;r={...r,headers:null};let o=new e(t,r,n);if(o.headers={},Array.isArray(a)){if(a.length%2!==0)throw new FE("headers array must be even");for(let l=0;l{"use strict";var P$o=wt("events"),Qmr=class extends P$o{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};b4n.exports=Qmr});var SHe=H((bsu,E4n)=>{"use strict";var W$o=mft(),{ClientDestroyedError:Xmr,ClientClosedError:O$o,InvalidArgumentError:kBe}=Ub(),{kDestroy:M$o,kClose:H$o,kDispatch:Jmr,kInterceptors:VIe}=GE(),xBe=Symbol("destroyed"),EHe=Symbol("closed"),R$=Symbol("onDestroyed"),GBe=Symbol("onClosed"),Cft=Symbol("Intercepted Dispatch"),Umr=class extends W$o{constructor(){super(),this[xBe]=!1,this[R$]=null,this[EHe]=!1,this[GBe]=[]}get destroyed(){return this[xBe]}get closed(){return this[EHe]}get interceptors(){return this[VIe]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[VIe][r]!="function")throw new kBe("interceptor must be an function")}this[VIe]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new kBe("invalid callback");if(this[xBe]){queueMicrotask(()=>t(new Xmr,null));return}if(this[EHe]){this[GBe]?this[GBe].push(t):queueMicrotask(()=>t(null,null));return}this[EHe]=!0,this[GBe].push(t);let r=()=>{let n=this[GBe];this[GBe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new kBe("invalid callback");if(this[xBe]){this[R$]?this[R$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new Xmr),this[xBe]=!0,this[R$]=this[R$]||[],this[R$].push(r);let n=()=>{let a=this[R$];this[R$]=null;for(let o=0;o{queueMicrotask(n)})}[Cft](t,r){if(!this[VIe]||this[VIe].length===0)return this[Cft]=this[Jmr],this[Jmr](t,r);let n=this[Jmr].bind(this);for(let a=this[VIe].length-1;a>=0;a--)n=this[VIe][a](n);return this[Cft]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new kBe("handler must be an object");try{if(!t||typeof t!="object")throw new kBe("opts must be an object.");if(this[xBe]||this[R$])throw new Xmr;if(this[EHe])throw new O$o;return this[Cft](t,r)}catch(n){if(typeof r.onError!="function")throw new kBe("invalid onError method");return r.onError(n),!1}}};E4n.exports=Umr});var vHe=H((vsu,B4n)=>{"use strict";var Y$o=wt("net"),S4n=wt("assert"),v4n=zC(),{InvalidArgumentError:Q$o,ConnectTimeoutError:X$o}=Ub(),Kmr,jmr;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?jmr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function J$o({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new Q$o("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},l=new jmr(t??100);return n=n??1e4,e=e??!1,function({hostname:f,host:I,protocol:C,port:b,servername:E,localAddress:N,httpSocket:B},F){let Q;if(C==="https:"){Kmr||(Kmr=wt("tls")),E=E||o.servername||v4n.getServerName(I)||null;let ae=E||f,ne=l.get(ae)||null;S4n(ae),Q=Kmr.connect({highWaterMark:16384,...o,servername:E,session:ne,localAddress:N,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:B,port:b||443,host:f}),Q.on("session",function(ce){l.set(ae,ce)})}else S4n(!B,"httpSocket can only be sent on TLS update"),Q=Y$o.connect({highWaterMark:64*1024,...o,localAddress:N,port:b||80,host:f});if(o.keepAlive==null||o.keepAlive){let ae=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;Q.setKeepAlive(!0,ae)}let X=U$o(()=>K$o(Q),n);return Q.setNoDelay(!0).once(C==="https:"?"secureConnect":"connect",function(){if(X(),F){let ae=F;F=null,ae(null,this)}}).on("error",function(ae){if(X(),F){let ne=F;F=null,ne(ae)}}),Q}}function U$o(e,t){if(!t)return()=>{};let r=null,n=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?n=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(n)}}function K$o(e){v4n.destroy(e,new X$o)}B4n.exports=J$o});var w4n=H(_ft=>{"use strict";Object.defineProperty(_ft,"__esModule",{value:!0});_ft.enumToMap=void 0;function j$o(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}_ft.enumToMap=j$o});var T4n=H(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.SPECIAL_HEADERS=xu.HEADER_STATE=xu.MINOR=xu.MAJOR=xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS=xu.TOKEN=xu.STRICT_TOKEN=xu.HEX=xu.URL_CHAR=xu.STRICT_URL_CHAR=xu.USERINFO_CHARS=xu.MARK=xu.ALPHANUM=xu.NUM=xu.HEX_MAP=xu.NUM_MAP=xu.ALPHA=xu.FINISH=xu.H_METHOD_MAP=xu.METHOD_MAP=xu.METHODS_RTSP=xu.METHODS_ICE=xu.METHODS_HTTP=xu.METHODS=xu.LENIENT_FLAGS=xu.FLAGS=xu.TYPE=xu.ERROR=void 0;var z$o=w4n(),q$o;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(q$o=xu.ERROR||(xu.ERROR={}));var $$o;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})($$o=xu.TYPE||(xu.TYPE={}));var eea;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(eea=xu.FLAGS||(xu.FLAGS={}));var tea;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(tea=xu.LENIENT_FLAGS||(xu.LENIENT_FLAGS={}));var Zp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Zp=xu.METHODS||(xu.METHODS={}));xu.METHODS_HTTP=[Zp.DELETE,Zp.GET,Zp.HEAD,Zp.POST,Zp.PUT,Zp.CONNECT,Zp.OPTIONS,Zp.TRACE,Zp.COPY,Zp.LOCK,Zp.MKCOL,Zp.MOVE,Zp.PROPFIND,Zp.PROPPATCH,Zp.SEARCH,Zp.UNLOCK,Zp.BIND,Zp.REBIND,Zp.UNBIND,Zp.ACL,Zp.REPORT,Zp.MKACTIVITY,Zp.CHECKOUT,Zp.MERGE,Zp["M-SEARCH"],Zp.NOTIFY,Zp.SUBSCRIBE,Zp.UNSUBSCRIBE,Zp.PATCH,Zp.PURGE,Zp.MKCALENDAR,Zp.LINK,Zp.UNLINK,Zp.PRI,Zp.SOURCE];xu.METHODS_ICE=[Zp.SOURCE];xu.METHODS_RTSP=[Zp.OPTIONS,Zp.DESCRIBE,Zp.ANNOUNCE,Zp.SETUP,Zp.PLAY,Zp.PAUSE,Zp.TEARDOWN,Zp.GET_PARAMETER,Zp.SET_PARAMETER,Zp.REDIRECT,Zp.RECORD,Zp.FLUSH,Zp.GET,Zp.POST];xu.METHOD_MAP=z$o.enumToMap(Zp);xu.H_METHOD_MAP={};Object.keys(xu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(xu.H_METHOD_MAP[e]=xu.METHOD_MAP[e])});var rea;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(rea=xu.FINISH||(xu.FINISH={}));xu.ALPHA=[];for(let e=65;e<=90;e++)xu.ALPHA.push(String.fromCharCode(e)),xu.ALPHA.push(String.fromCharCode(e+32));xu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};xu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};xu.NUM=["0","1","2","3","4","5","6","7","8","9"];xu.ALPHANUM=xu.ALPHA.concat(xu.NUM);xu.MARK=["-","_",".","!","~","*","'","(",")"];xu.USERINFO_CHARS=xu.ALPHANUM.concat(xu.MARK).concat(["%",";",":","&","=","+","$",","]);xu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(xu.ALPHANUM);xu.URL_CHAR=xu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)xu.URL_CHAR.push(e);xu.HEX=xu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);xu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(xu.ALPHANUM);xu.TOKEN=xu.STRICT_TOKEN.concat([" "]);xu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&xu.HEADER_CHARS.push(e);xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS.filter(e=>e!==44);xu.MAJOR=xu.NUM_MAP;xu.MINOR=xu.MAJOR;var FBe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(FBe=xu.HEADER_STATE||(xu.HEADER_STATE={}));xu.SPECIAL_HEADERS={connection:FBe.CONNECTION,"content-length":FBe.CONTENT_LENGTH,"proxy-connection":FBe.CONNECTION,"transfer-encoding":FBe.TRANSFER_ENCODING,upgrade:FBe.UPGRADE}});var $mr=H((Tsu,D4n)=>{"use strict";var N$=zC(),{kBodyUsed:BHe}=GE(),qmr=wt("assert"),{InvalidArgumentError:nea}=Ub(),iea=wt("events"),sea=[300,301,302,303,307,308],R4n=Symbol("body"),yft=class{constructor(t){this[R4n]=t,this[BHe]=!1}async*[Symbol.asyncIterator](){qmr(!this[BHe],"disturbed"),this[BHe]=!0,yield*this[R4n]}},zmr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new nea("maxRedirections must be a positive number");N$.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],N$.isStream(this.opts.body)?(N$.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){qmr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[BHe]=!1,iea.prototype.on.call(this.opts.body,"data",function(){this[BHe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new yft(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&N$.isIterable(this.opts.body)&&(this.opts.body=new yft(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||N$.isDisturbed(this.opts.body)?null:oea(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=N$.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=aea(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function oea(e,t){if(sea.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var cea=$mr();function lea({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new cea(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}k4n.exports=lea});var eCr=H((Nsu,x4n)=>{x4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var F4n=H((Dsu,G4n)=>{G4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var xHe=H((ksu,eJn)=>{"use strict";var kA=wt("assert"),V4n=wt("net"),uea=wt("http"),{pipeline:gea}=wt("stream"),vp=zC(),tCr=UQn(),nCr=y4n(),Aea=SHe(),{RequestContentLengthMismatchError:D$,ResponseContentLengthMismatchError:dea,InvalidArgumentError:$B,RequestAbortedError:gCr,HeadersTimeoutError:pea,HeadersOverflowError:fea,SocketError:LBe,InformationalError:m8,BodyTimeoutError:Iea,HTTPParserError:hea,ResponseExceededMaxSizeError:mea,ClientDestroyedError:Cea}=Ub(),_ea=vHe(),{kUrl:Rk,kReset:GZ,kServerName:Uoe,kClient:C8,kBusy:iCr,kParser:Pv,kConnect:yea,kBlocking:VBe,kResuming:PIe,kRunning:TS,kPending:OIe,kSize:WIe,kWriting:k$,kQueue:L1,kConnected:bea,kConnecting:ZBe,kNeedDrain:joe,kNoRef:wHe,kKeepAliveDefaultTimeout:sCr,kHostHeader:P4n,kPendingIdx:HW,kRunningIdx:V1,kError:Nk,kPipelining:zoe,kSocket:Wv,kKeepAliveTimeoutValue:NHe,kMaxHeadersSize:vft,kKeepAliveMaxTimeout:W4n,kKeepAliveTimeoutThreshold:O4n,kHeadersTimeout:M4n,kBodyTimeout:H4n,kStrictContentLength:DHe,kConnector:THe,kMaxRedirections:Eea,kMaxRequests:kHe,kCounter:Y4n,kClose:Sea,kDestroy:vea,kDispatch:Bea,kInterceptors:wea,kLocalAddress:RHe,kMaxResponseSize:Q4n,kHTTPConnVersion:_8,kHost:X4n,kHTTP2Session:YW,kHTTP2SessionState:wft,kHTTP2BuildRequest:Tea,kHTTP2CopyHeaders:Rea,kHTTP1BuildRequest:Nea}=GE(),Tft;try{Tft=wt("http2")}catch{Tft={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Dea,HTTP2_HEADER_METHOD:kea,HTTP2_HEADER_PATH:xea,HTTP2_HEADER_SCHEME:Gea,HTTP2_HEADER_CONTENT_LENGTH:Fea,HTTP2_HEADER_EXPECT:Zea,HTTP2_HEADER_STATUS:Lea}}=Tft,Z4n=!1,Eft=Buffer[Symbol.species],Koe=Symbol("kClosedResolve"),_G={};try{let e=wt("diagnostics_channel");_G.sendHeaders=e.channel("undici:client:sendHeaders"),_G.beforeConnect=e.channel("undici:client:beforeConnect"),_G.connectError=e.channel("undici:client:connectError"),_G.connected=e.channel("undici:client:connected")}catch{_G.sendHeaders={hasSubscribers:!1},_G.beforeConnect={hasSubscribers:!1},_G.connectError={hasSubscribers:!1},_G.connected={hasSubscribers:!1}}var oCr=class extends Aea{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:X,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,allowH2:k,maxConcurrentStreams:et}={}){if(super(),C!==void 0)throw new $B("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new $B("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new $B("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new $B("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new $B("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new $B("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new $B("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new $B("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new $B("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new $B("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new $B("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new $B("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new $B("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new $B("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new $B("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new $B("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||V4n.isIP(de)===0))throw new $B("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new $B("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new $B("autoSelectFamilyAttemptTimeout must be a positive number");if(k!=null&&typeof k!="boolean")throw new $B("allowH2 must be a valid boolean value");if(et!=null&&(typeof et!="number"||et<1))throw new $B("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=_ea({...X,maxCachedSessions:ne,allowH2:k,socketPath:F,timeout:A,...vp.nodeHasAutoSelectFamily&&Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),this[wea]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[Mea({maxRedirections:ce})],this[Rk]=vp.parseOrigin(t),this[THe]=fe,this[Wv]=null,this[zoe]=Q??1,this[vft]=n||uea.maxHeaderSize,this[sCr]=b??4e3,this[W4n]=N??6e5,this[O4n]=B??1e3,this[NHe]=this[sCr],this[Uoe]=null,this[RHe]=de??null,this[PIe]=0,this[joe]=0,this[P4n]=`host: ${this[Rk].hostname}${this[Rk].port?`:${this[Rk].port}`:""}\r +`,this[H4n]=f??3e5,this[M4n]=a??3e5,this[DHe]=ae??!0,this[Eea]=ce,this[kHe]=ue,this[Koe]=null,this[Q4n]=be>-1?be:-1,this[_8]="h1",this[YW]=null,this[wft]=k?{openStreams:0,maxConcurrentStreams:et??100}:null,this[X4n]=`${this[Rk].hostname}${this[Rk].port?`:${this[Rk].port}`:""}`,this[L1]=[],this[V1]=0,this[HW]=0}get pipelining(){return this[zoe]}set pipelining(t){this[zoe]=t,QW(this,!0)}get[OIe](){return this[L1].length-this[HW]}get[TS](){return this[HW]-this[V1]}get[WIe](){return this[L1].length-this[V1]}get[bea](){return!!this[Wv]&&!this[ZBe]&&!this[Wv].destroyed}get[iCr](){let t=this[Wv];return t&&(t[GZ]||t[k$]||t[VBe])||this[WIe]>=(this[zoe]||1)||this[OIe]>0}[yea](t){j4n(this),this.once("connect",t)}[Bea](t,r){let n=t.origin||this[Rk].origin,a=this[_8]==="h2"?nCr[Tea](n,t,r):nCr[Nea](n,t,r);return this[L1].push(a),this[PIe]||(vp.bodyLength(a.body)==null&&vp.isIterable(a.body)?(this[PIe]=1,process.nextTick(QW,this)):QW(this,!0)),this[PIe]&&this[joe]!==2&&this[iCr]&&(this[joe]=2),this[joe]<2}async[Sea](){return new Promise(t=>{this[WIe]?this[Koe]=t:t(null)})}async[vea](t){return new Promise(r=>{let n=this[L1].splice(this[HW]);for(let o=0;o{this[Koe]&&(this[Koe](),this[Koe]=null),r()};this[YW]!=null&&(vp.destroy(this[YW],t),this[YW]=null,this[wft]=null),this[Wv]?vp.destroy(this[Wv].on("close",a),t):queueMicrotask(a),QW(this)})}};function Vea(e){kA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Wv][Nk]=e,Dft(this[C8],e)}function Pea(e,t,r){let n=new m8(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[Wv][Nk]=n,Dft(this[C8],n))}function Wea(){vp.destroy(this,new LBe("other side closed")),vp.destroy(this[Wv],new LBe("other side closed"))}function Oea(e){let t=this[C8],r=new m8(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[Wv]=null,t[YW]=null,t.destroyed){kA(this[OIe]===0);let n=t[L1].splice(t[V1]);for(let a=0;a0){let n=t[L1][t[V1]];t[L1][t[V1]++]=null,FZ(t,n,r)}t[HW]=t[V1],kA(t[TS]===0),t.emit("disconnect",t[Rk],[t],r),QW(t)}var f8=T4n(),Mea=bft(),Hea=Buffer.alloc(0);async function Yea(){let e=process.env.JEST_WORKER_ID?eCr():void 0,t;try{t=await WebAssembly.compile(Buffer.from(F4n(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||eCr(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onStatus(new Eft(I8.buffer,o,a))||0},wasm_on_message_begin:r=>(kA.strictEqual(TR.ptr,r),TR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onHeaderField(new Eft(I8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onHeaderValue(new Eft(I8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(kA.strictEqual(TR.ptr,r),TR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onBody(new Eft(I8.buffer,o,a))||0},wasm_on_message_complete:r=>(kA.strictEqual(TR.ptr,r),TR.onMessageComplete()||0)}})}var rCr=null,aCr=Yea();aCr.catch();var TR=null,I8=null,Sft=0,h8=null,PBe=1,Bft=2,cCr=3,lCr=class{constructor(t,r,{exports:n}){kA(Number.isFinite(t[vft])&&t[vft]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(f8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[vft],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[Q4n]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(tCr.clearTimeout(this.timeout),t?(this.timeout=tCr.setTimeout(Qea,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(kA(this.ptr!=null),kA(TR==null),this.llhttp.llhttp_resume(this.ptr),kA(this.timeoutType===Bft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Hea),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){kA(this.ptr!=null),kA(TR==null),kA(!this.paused);let{socket:r,llhttp:n}=this;t.length>Sft&&(h8&&n.free(h8),Sft=Math.ceil(t.length/4096)*4096,h8=n.malloc(Sft)),new Uint8Array(n.memory.buffer,h8,Sft).set(t);try{let a;try{I8=t,TR=this,a=n.llhttp_execute(this.ptr,h8,t.length)}catch(l){throw l}finally{TR=null,I8=null}let o=n.llhttp_get_error_pos(this.ptr)-h8;if(a===f8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===f8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==f8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new hea(A,f8.ERROR[a],t.slice(o))}}catch(a){vp.destroy(r,a)}}destroy(){kA(this.ptr!=null),kA(TR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,tCr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[L1][r[V1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];n.length===10&&n.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():n.length===10&&n.toString().toLowerCase()==="connection"?this.connection+=t.toString():n.length===14&&n.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&vp.destroy(this.socket,new fea)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;kA(r);let A=n[L1][n[V1]];kA(A),kA(!a.destroyed),kA(a===n[Wv]),kA(!this.paused),kA(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[Pv].destroy(),a[Pv]=null,a[C8]=null,a[Nk]=null,a.removeListener("error",U4n).removeListener("readable",J4n).removeListener("end",K4n).removeListener("close",uCr),n[Wv]=null,n[L1][n[V1]++]=null,n.emit("disconnect",n[Rk],[n],new m8("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){vp.destroy(a,f)}QW(n)}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[L1][a[V1]];if(!f)return-1;if(kA(!this.upgrade),kA(this.statusCode<200),t===100)return vp.destroy(o,new LBe("bad response",vp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return vp.destroy(o,new LBe("bad upgrade",vp.getSocketInfo(o))),-1;if(kA.strictEqual(this.timeoutType,PBe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[GZ]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[H4n];this.setTimeout(C,Bft)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return kA(a[TS]===1),this.upgrade=!0,2;if(r)return kA(a[TS]===1),this.upgrade=!0,2;if(kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[zoe]){let C=this.keepAlive?vp.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[O4n],a[W4n]);b<=0?o[GZ]=!0:a[NHe]=b}else a[NHe]=a[sCr]}else o[GZ]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[VBe]&&(o[VBe]=!1,QW(a)),I?f8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[L1][r[V1]];if(kA(l),kA.strictEqual(this.timeoutType,Bft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),kA(a>=200),o>-1&&this.bytesRead+t.length>o)return vp.destroy(n,new mea),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return f8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;let I=t[L1][t[V1]];if(kA(I),kA(n>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return vp.destroy(r,new dea),-1;if(I.onComplete(o),t[L1][t[V1]++]=null,r[k$])return kA.strictEqual(t[TS],0),vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED;if(f){if(r[GZ]&&t[TS]===0)return vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED;t[zoe]===1?setImmediate(QW,t):QW(t)}else return vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED}}};function Qea(e){let{socket:t,timeoutType:r,client:n}=e;r===PBe?(!t[k$]||t.writableNeedDrain||n[TS]>1)&&(kA(!e.paused,"cannot be paused while waiting for headers"),vp.destroy(t,new pea)):r===Bft?e.paused||vp.destroy(t,new Iea):r===cCr&&(kA(n[TS]===0&&n[NHe]),vp.destroy(t,new m8("socket idle timeout")))}function J4n(){let{[Pv]:e}=this;e&&e.readMore()}function U4n(e){let{[C8]:t,[Pv]:r}=this;if(kA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[_8]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[Nk]=e,Dft(this[C8],e)}function Dft(e,t){if(e[TS]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){kA(e[HW]===e[V1]);let r=e[L1].splice(e[V1]);for(let n=0;n0&&r.code!=="UND_ERR_INFO"){let n=e[L1][e[V1]];e[L1][e[V1]++]=null,FZ(e,n,r)}e[HW]=e[V1],kA(e[TS]===0),e.emit("disconnect",e[Rk],[e],r),QW(e)}async function j4n(e){kA(!e[ZBe]),kA(!e[Wv]);let{host:t,hostname:r,protocol:n,port:a}=e[Rk];if(r[0]==="["){let o=r.indexOf("]");kA(o!==-1);let l=r.substring(1,o);kA(V4n.isIP(l)),r=l}e[ZBe]=!0,_G.beforeConnect.hasSubscribers&&_G.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Uoe],localAddress:e[RHe]},connector:e[THe]});try{let o=await new Promise((A,f)=>{e[THe]({host:t,hostname:r,protocol:n,port:a,servername:e[Uoe],localAddress:e[RHe]},(I,C)=>{I?f(I):A(C)})});if(e.destroyed){vp.destroy(o.on("error",()=>{}),new Cea);return}if(e[ZBe]=!1,kA(o),o.alpnProtocol==="h2"){Z4n||(Z4n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let A=Tft.connect(e[Rk],{createConnection:()=>o,peerMaxConcurrentStreams:e[wft].maxConcurrentStreams});e[_8]="h2",A[C8]=e,A[Wv]=o,A.on("error",Vea),A.on("frameError",Pea),A.on("end",Wea),A.on("goaway",Oea),A.on("close",uCr),A.unref(),e[YW]=A,o[YW]=A}else rCr||(rCr=await aCr,aCr=null),o[wHe]=!1,o[k$]=!1,o[GZ]=!1,o[VBe]=!1,o[Pv]=new lCr(e,o,rCr);o[Y4n]=0,o[kHe]=e[kHe],o[C8]=e,o[Nk]=null,o.on("error",U4n).on("readable",J4n).on("end",K4n).on("close",uCr),e[Wv]=o,_G.connected.hasSubscribers&&_G.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Uoe],localAddress:e[RHe]},connector:e[THe],socket:o}),e.emit("connect",e[Rk],[e])}catch(o){if(e.destroyed)return;if(e[ZBe]=!1,_G.connectError.hasSubscribers&&_G.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Uoe],localAddress:e[RHe]},connector:e[THe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(kA(e[TS]===0);e[OIe]>0&&e[L1][e[HW]].servername===e[Uoe];){let l=e[L1][e[HW]++];FZ(e,l,o)}else Dft(e,o);e.emit("connectionError",e[Rk],[e],o)}QW(e)}function L4n(e){e[joe]=0,e.emit("drain",e[Rk],[e])}function QW(e,t){e[PIe]!==2&&(e[PIe]=2,Xea(e,t),e[PIe]=0,e[V1]>256&&(e[L1].splice(0,e[V1]),e[HW]-=e[V1],e[V1]=0))}function Xea(e,t){for(;;){if(e.destroyed){kA(e[OIe]===0);return}if(e[Koe]&&!e[WIe]){e[Koe](),e[Koe]=null;return}let r=e[Wv];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[WIe]===0?!r[wHe]&&r.unref&&(r.unref(),r[wHe]=!0):r[wHe]&&r.ref&&(r.ref(),r[wHe]=!1),e[WIe]===0)r[Pv].timeoutType!==cCr&&r[Pv].setTimeout(e[NHe],cCr);else if(e[TS]>0&&r[Pv].statusCode<200&&r[Pv].timeoutType!==PBe){let a=e[L1][e[V1]],o=a.headersTimeout!=null?a.headersTimeout:e[M4n];r[Pv].setTimeout(o,PBe)}}if(e[iCr])e[joe]=2;else if(e[joe]===2){t?(e[joe]=1,process.nextTick(L4n,e)):L4n(e);continue}if(e[OIe]===0||e[TS]>=(e[zoe]||1))return;let n=e[L1][e[HW]];if(e[Rk].protocol==="https:"&&e[Uoe]!==n.servername){if(e[TS]>0)return;if(e[Uoe]=n.servername,r&&r.servername!==n.servername){vp.destroy(r,new m8("servername changed"));return}}if(e[ZBe])return;if(!r&&!e[YW]){j4n(e);return}if(r.destroyed||r[k$]||r[GZ]||r[VBe]||e[TS]>0&&!n.idempotent||e[TS]>0&&(n.upgrade||n.method==="CONNECT")||e[TS]>0&&vp.bodyLength(n.body)!==0&&(vp.isStream(n.body)||vp.isAsyncIterable(n.body)))return;!n.aborted&&Jea(e,n)?e[HW]++:e[L1].splice(e[HW],1)}}function z4n(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Jea(e,t){if(e[_8]==="h2"){Uea(e,e[YW],t);return}let{body:r,method:n,path:a,host:o,upgrade:l,headers:A,blocking:f,reset:I}=t,C=n==="PUT"||n==="POST"||n==="PATCH";r&&typeof r.read=="function"&&r.read(0);let b=vp.bodyLength(r),E=b;if(E===null&&(E=t.contentLength),E===0&&!C&&(E=null),z4n(n)&&E>0&&t.contentLength!==null&&t.contentLength!==E){if(e[DHe])return FZ(e,t,new D$),!1;process.emitWarning(new D$)}let N=e[Wv];try{t.onConnect(F=>{t.aborted||t.completed||(FZ(e,t,F||new gCr),vp.destroy(N,new m8("aborted")))})}catch(F){FZ(e,t,F)}if(t.aborted)return!1;n==="HEAD"&&(N[GZ]=!0),(l||n==="CONNECT")&&(N[GZ]=!0),I!=null&&(N[GZ]=I),e[kHe]&&N[Y4n]++>=e[kHe]&&(N[GZ]=!0),f&&(N[VBe]=!0);let B=`${n} ${a} HTTP/1.1\r `;return typeof o=="string"?B+=`host: ${o}\r -`:B+=e[k4n],l?B+=`connection: upgrade\r +`:B+=e[P4n],l?B+=`connection: upgrade\r upgrade: ${l}\r -`:e[joe]&&!N[GZ]?B+=`connection: keep-alive\r +`:e[zoe]&&!N[GZ]?B+=`connection: keep-alive\r `:B+=`connection: close\r `,A&&(B+=A),_G.sendHeaders.hasSubscribers&&_G.sendHeaders.publish({request:t,headers:B,socket:N}),!r||b===0?(E===0?N.write(`${B}content-length: 0\r \r `,"latin1"):(kA(E===null,"no body must not have content length"),N.write(`${B}\r `,"latin1")),t.onRequestSent()):vp.isBuffer(r)?(kA(E===r.byteLength,"buffer body must have content length"),N.cork(),N.write(`${B}content-length: ${E}\r \r -`,"latin1"),N.write(r),N.uncork(),t.onBodySent(r),t.onRequestSent(),C||(N[GZ]=!0)):vp.isBlobLike(r)?typeof r.stream=="function"?wft({body:r.stream(),client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):X4n({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):vp.isStream(r)?Q4n({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):vp.isIterable(r)?wft({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):kA(!1),!0}function kea(e,t,r){let{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=r,b;if(typeof C=="string"?b=$mr[dea](C.trim()):b=C,A)return FZ(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(ae=>{r.aborted||r.completed||FZ(e,r,ae||new aCr)})}catch(ae){FZ(e,r,ae)}if(r.aborted)return!1;let E,N=e[vft];if(b[fea]=l||e[P4n],b[Iea]=a,a==="CONNECT")return t.ref(),E=t.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(r.onUpgrade(null,null,E),++N.openStreams):E.once("ready",()=>{r.onUpgrade(null,null,E),++N.openStreams}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),!0;b[hea]=o,b[mea]="https";let B=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let F=vp.bodyLength(n);if(F==null&&(F=r.contentLength),(F===0||!B)&&(F=null),Y4n(a)&&F>0&&r.contentLength!=null&&r.contentLength!==F){if(e[RHe])return FZ(e,r,new D$),!1;process.emitWarning(new D$)}F!=null&&(kA(n,"no body must not have content length"),b[Cea]=`${F}`),t.ref();let Q=a==="GET"||a==="HEAD";return f?(b[_ea]="100-continue",E=t.request(b,{endStream:Q,signal:I}),E.once("continue",X)):(E=t.request(b,{endStream:Q,signal:I}),X()),++N.openStreams,E.once("response",ae=>{let{[yea]:ne,...ce}=ae;r.onHeaders(Number(ne),ce,E.resume.bind(E),"")===!1&&E.pause()}),E.once("end",()=>{r.onComplete([])}),E.on("data",ae=>{r.onData(ae)===!1&&E.pause()}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),E.once("error",function(ae){e[YW]&&!e[YW].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,vp.destroy(E,ae))}),E.once("frameError",(ae,ne)=>{let ce=new m8(`HTTP/2: "frameError" received - type ${ae}, code ${ne}`);FZ(e,r,ce),e[YW]&&!e[YW].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,vp.destroy(E,ce))}),!0;function X(){n?vp.isBuffer(n)?(kA(F===n.byteLength,"buffer body must have content length"),E.cork(),E.write(n),E.uncork(),E.end(),r.onBodySent(n),r.onRequestSent()):vp.isBlobLike(n)?typeof n.stream=="function"?wft({client:e,request:r,contentLength:F,h2stream:E,expectsPayload:B,body:n.stream(),socket:e[Wv],header:""}):X4n({body:n,client:e,request:r,contentLength:F,expectsPayload:B,h2stream:E,header:"",socket:e[Wv]}):vp.isStream(n)?Q4n({body:n,client:e,request:r,contentLength:F,expectsPayload:B,socket:e[Wv],h2stream:E,header:""}):vp.isIterable(n)?wft({body:n,client:e,request:r,contentLength:F,expectsPayload:B,header:"",h2stream:E,socket:e[Wv]}):kA(!1):r.onRequestSent()}}function Q4n({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){if(kA(o!==0||r[TS]===0,"stream body cannot be pipelined"),r[_8]==="h2"){let F=function(Q){n.onBodySent(Q)},B=K$o(t,e,Q=>{Q?(vp.destroy(t,Q),vp.destroy(e,Q)):n.onRequestSent()});B.on("data",F),B.once("end",()=>{B.removeListener("data",F),vp.destroy(B)});return}let f=!1,I=new Tft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){vp.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(f)return;let B=new aCr;queueMicrotask(()=>N(B))},N=function(B){if(!f){if(f=!0,kA(a.destroyed||a[k$]&&r[TS]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("error",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?vp.destroy(t,B):vp.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N)}async function X4n({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){kA(o===t.size,"blob body must have content length");let f=r[_8]==="h2";try{if(o!=null&&o!==t.size)throw new D$;let I=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(I),e.uncork()):(a.cork(),a.write(`${l}content-length: ${o}\r +`,"latin1"),N.write(r),N.uncork(),t.onBodySent(r),t.onRequestSent(),C||(N[GZ]=!0)):vp.isBlobLike(r)?typeof r.stream=="function"?Rft({body:r.stream(),client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):$4n({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):vp.isStream(r)?q4n({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):vp.isIterable(r)?Rft({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):kA(!1),!0}function Uea(e,t,r){let{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=r,b;if(typeof C=="string"?b=nCr[Rea](C.trim()):b=C,A)return FZ(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(ae=>{r.aborted||r.completed||FZ(e,r,ae||new gCr)})}catch(ae){FZ(e,r,ae)}if(r.aborted)return!1;let E,N=e[wft];if(b[Dea]=l||e[X4n],b[kea]=a,a==="CONNECT")return t.ref(),E=t.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(r.onUpgrade(null,null,E),++N.openStreams):E.once("ready",()=>{r.onUpgrade(null,null,E),++N.openStreams}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),!0;b[xea]=o,b[Gea]="https";let B=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let F=vp.bodyLength(n);if(F==null&&(F=r.contentLength),(F===0||!B)&&(F=null),z4n(a)&&F>0&&r.contentLength!=null&&r.contentLength!==F){if(e[DHe])return FZ(e,r,new D$),!1;process.emitWarning(new D$)}F!=null&&(kA(n,"no body must not have content length"),b[Fea]=`${F}`),t.ref();let Q=a==="GET"||a==="HEAD";return f?(b[Zea]="100-continue",E=t.request(b,{endStream:Q,signal:I}),E.once("continue",X)):(E=t.request(b,{endStream:Q,signal:I}),X()),++N.openStreams,E.once("response",ae=>{let{[Lea]:ne,...ce}=ae;r.onHeaders(Number(ne),ce,E.resume.bind(E),"")===!1&&E.pause()}),E.once("end",()=>{r.onComplete([])}),E.on("data",ae=>{r.onData(ae)===!1&&E.pause()}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),E.once("error",function(ae){e[YW]&&!e[YW].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,vp.destroy(E,ae))}),E.once("frameError",(ae,ne)=>{let ce=new m8(`HTTP/2: "frameError" received - type ${ae}, code ${ne}`);FZ(e,r,ce),e[YW]&&!e[YW].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,vp.destroy(E,ce))}),!0;function X(){n?vp.isBuffer(n)?(kA(F===n.byteLength,"buffer body must have content length"),E.cork(),E.write(n),E.uncork(),E.end(),r.onBodySent(n),r.onRequestSent()):vp.isBlobLike(n)?typeof n.stream=="function"?Rft({client:e,request:r,contentLength:F,h2stream:E,expectsPayload:B,body:n.stream(),socket:e[Wv],header:""}):$4n({body:n,client:e,request:r,contentLength:F,expectsPayload:B,h2stream:E,header:"",socket:e[Wv]}):vp.isStream(n)?q4n({body:n,client:e,request:r,contentLength:F,expectsPayload:B,socket:e[Wv],h2stream:E,header:""}):vp.isIterable(n)?Rft({body:n,client:e,request:r,contentLength:F,expectsPayload:B,header:"",h2stream:E,socket:e[Wv]}):kA(!1):r.onRequestSent()}}function q4n({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){if(kA(o!==0||r[TS]===0,"stream body cannot be pipelined"),r[_8]==="h2"){let F=function(Q){n.onBodySent(Q)},B=gea(t,e,Q=>{Q?(vp.destroy(t,Q),vp.destroy(e,Q)):n.onRequestSent()});B.on("data",F),B.once("end",()=>{B.removeListener("data",F),vp.destroy(B)});return}let f=!1,I=new Nft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){vp.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(f)return;let B=new gCr;queueMicrotask(()=>N(B))},N=function(B){if(!f){if(f=!0,kA(a.destroyed||a[k$]&&r[TS]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("error",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?vp.destroy(t,B):vp.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N)}async function $4n({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){kA(o===t.size,"blob body must have content length");let f=r[_8]==="h2";try{if(o!=null&&o!==t.size)throw new D$;let I=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(I),e.uncork()):(a.cork(),a.write(`${l}content-length: ${o}\r \r -`,"latin1"),a.write(I),a.uncork()),n.onBodySent(I),n.onRequestSent(),A||(a[GZ]=!0),QW(r)}catch(I){vp.destroy(f?e:a,I)}}async function wft({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){kA(o!==0||r[TS]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{kA(f===null),a[Nk]?N(a[Nk]):f=E});if(r[_8]==="h2"){e.on("close",I).on("drain",I);try{for await(let E of t){if(a[Nk])throw a[Nk];let N=e.write(E);n.onBodySent(E),N||await C()}}catch(E){e.destroy(E)}finally{n.onRequestSent(),e.end(),e.off("close",I).off("drain",I)}return}a.on("close",I).on("drain",I);let b=new Tft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[Nk])throw a[Nk];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var Tft=class{constructor({socket:t,request:r,contentLength:n,client:a,expectsPayload:o,header:l}){this.socket=t,this.request=r,this.contentLength=n,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=l,t[k$]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[Nk])throw r[Nk];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[RHe])throw new D$;process.emitWarning(new D$)}r.cork(),l===0&&(A||(r[GZ]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r +`,"latin1"),a.write(I),a.uncork()),n.onBodySent(I),n.onRequestSent(),A||(a[GZ]=!0),QW(r)}catch(I){vp.destroy(f?e:a,I)}}async function Rft({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){kA(o!==0||r[TS]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{kA(f===null),a[Nk]?N(a[Nk]):f=E});if(r[_8]==="h2"){e.on("close",I).on("drain",I);try{for await(let E of t){if(a[Nk])throw a[Nk];let N=e.write(E);n.onBodySent(E),N||await C()}}catch(E){e.destroy(E)}finally{n.onRequestSent(),e.end(),e.off("close",I).off("drain",I)}return}a.on("close",I).on("drain",I);let b=new Nft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[Nk])throw a[Nk];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var Nft=class{constructor({socket:t,request:r,contentLength:n,client:a,expectsPayload:o,header:l}){this.socket=t,this.request=r,this.contentLength=n,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=l,t[k$]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[Nk])throw r[Nk];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[DHe])throw new D$;process.emitWarning(new D$)}r.cork(),l===0&&(A||(r[GZ]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r `,"latin1"):r.write(`${f}content-length: ${a}\r \r `,"latin1")),a===null&&r.write(`\r ${I.toString(16)}\r -`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Pv].timeout&&r[Pv].timeoutType===VBe&&r[Pv].timeout.refresh&&r[Pv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[k$]=!1,t[Nk])throw t[Nk];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r +`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Pv].timeout&&r[Pv].timeoutType===PBe&&r[Pv].timeout.refresh&&r[Pv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[k$]=!1,t[Nk])throw t[Nk];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r \r `,"latin1"):t.write(`${l}\r `,"latin1"):r===null&&t.write(`\r 0\r \r -`,"latin1"),r!==null&&a!==r){if(n[RHe])throw new D$;process.emitWarning(new D$)}t[Pv].timeout&&t[Pv].timeoutType===VBe&&t[Pv].timeout.refresh&&t[Pv].timeout.refresh(),QW(n)}}destroy(t){let{socket:r,client:n}=this;r[k$]=!1,t&&(kA(n[TS]<=1,"pipeline should only contain this request"),vp.destroy(r,t))}};function FZ(e,t,r){try{t.onError(r),kA(t.aborted)}catch(n){e.emit("error",n)}}J4n.exports=rCr});var K4n=H((Miu,U4n)=>{"use strict";var Nft=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};U4n.exports=class{constructor(){this.head=this.tail=new Nft}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Nft),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var z4n=H((Hiu,j4n)=>{var{kFree:xea,kConnected:Gea,kPending:Fea,kQueued:Zea,kRunning:Lea,kSize:Vea}=GE(),OIe=Symbol("pool"),cCr=class{constructor(t){this[OIe]=t}get connected(){return this[OIe][Gea]}get free(){return this[OIe][xea]}get pending(){return this[OIe][Fea]}get queued(){return this[OIe][Zea]}get running(){return this[OIe][Lea]}get size(){return this[OIe][Vea]}};j4n.exports=cCr});var pCr=H((Yiu,aJn)=>{"use strict";var Pea=bHe(),Wea=K4n(),{kConnected:lCr,kSize:q4n,kRunning:$4n,kPending:eJn,kQueued:kHe,kBusy:Oea,kFree:Mea,kUrl:Hea,kClose:Yea,kDestroy:Qea,kDispatch:Xea}=GE(),Jea=z4n(),K9=Symbol("clients"),ZZ=Symbol("needDrain"),xHe=Symbol("queue"),uCr=Symbol("closed resolve"),gCr=Symbol("onDrain"),tJn=Symbol("onConnect"),rJn=Symbol("onDisconnect"),nJn=Symbol("onConnectionError"),ACr=Symbol("get dispatcher"),sJn=Symbol("add client"),oJn=Symbol("remove client"),iJn=Symbol("stats"),dCr=class extends Pea{constructor(){super(),this[xHe]=new Wea,this[K9]=[],this[kHe]=0;let t=this;this[gCr]=function(n,a){let o=t[xHe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[kHe]--,l=!this.dispatch(A.opts,A.handler)}this[ZZ]=l,!this[ZZ]&&t[ZZ]&&(t[ZZ]=!1,t.emit("drain",n,[t,...a])),t[uCr]&&o.isEmpty()&&Promise.all(t[K9].map(A=>A.close())).then(t[uCr])},this[tJn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[rJn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[nJn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[iJn]=new Jea(this)}get[Oea](){return this[ZZ]}get[lCr](){return this[K9].filter(t=>t[lCr]).length}get[Mea](){return this[K9].filter(t=>t[lCr]&&!t[ZZ]).length}get[eJn](){let t=this[kHe];for(let{[eJn]:r}of this[K9])t+=r;return t}get[$4n](){let t=0;for(let{[$4n]:r}of this[K9])t+=r;return t}get[q4n](){let t=this[kHe];for(let{[q4n]:r}of this[K9])t+=r;return t}get stats(){return this[iJn]}async[Yea](){return this[xHe].isEmpty()?Promise.all(this[K9].map(t=>t.close())):new Promise(t=>{this[uCr]=t})}async[Qea](t){for(;;){let r=this[xHe].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[K9].map(r=>r.destroy(t)))}[Xea](t,r){let n=this[ACr]();return n?n.dispatch(t,r)||(n[ZZ]=!0,this[ZZ]=!this[ACr]()):(this[ZZ]=!0,this[xHe].push({opts:t,handler:r}),this[kHe]++),!this[ZZ]}[sJn](t){return t.on("drain",this[gCr]).on("connect",this[tJn]).on("disconnect",this[rJn]).on("connectionError",this[nJn]),this[K9].push(t),this[ZZ]&&process.nextTick(()=>{this[ZZ]&&this[gCr](t[Hea],[this,t])}),this}[oJn](t){t.close(()=>{let r=this[K9].indexOf(t);r!==-1&&this[K9].splice(r,1)}),this[ZZ]=this[K9].some(r=>!r[ZZ]&&r.closed!==!0&&r.destroyed!==!0)}};aJn.exports={PoolBase:dCr,kClients:K9,kNeedDrain:ZZ,kAddClient:sJn,kRemoveClient:oJn,kGetDispatcher:ACr}});var PBe=H((Qiu,gJn)=>{"use strict";var{PoolBase:Uea,kClients:cJn,kNeedDrain:Kea,kAddClient:jea,kGetDispatcher:zea}=pCr(),qea=DHe(),{InvalidArgumentError:fCr}=Ub(),ICr=zC(),{kUrl:lJn,kInterceptors:$ea}=GE(),eta=EHe(),hCr=Symbol("options"),mCr=Symbol("connections"),uJn=Symbol("factory");function tta(e,t){return new qea(e,t)}var CCr=class extends Uea{constructor(t,{connections:r,factory:n=tta,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new fCr("invalid connections");if(typeof n!="function")throw new fCr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new fCr("connect must be a function or an object");typeof a!="function"&&(a=eta({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...ICr.nodeHasAutoSelectFamily&&I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[$ea]=E.interceptors&&E.interceptors.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[mCr]=r||null,this[lJn]=ICr.parseOrigin(t),this[hCr]={...ICr.deepClone(E),connect:a,allowH2:b},this[hCr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[uJn]=n}[zea](){let t=this[cJn].find(r=>!r[Kea]);return t||((!this[mCr]||this[cJn].length{"use strict";var{BalancedPoolMissingUpstreamError:rta,InvalidArgumentError:nta}=Ub(),{PoolBase:ita,kClients:LZ,kNeedDrain:GHe,kAddClient:sta,kRemoveClient:ota,kGetDispatcher:ata}=pCr(),cta=PBe(),{kUrl:_Cr,kInterceptors:lta}=GE(),{parseOrigin:AJn}=zC(),dJn=Symbol("factory"),Dft=Symbol("options"),pJn=Symbol("kGreatestCommonDivisor"),MIe=Symbol("kCurrentWeight"),HIe=Symbol("kIndex"),SM=Symbol("kWeight"),kft=Symbol("kMaxWeightPerServer"),xft=Symbol("kErrorPenalty");function fJn(e,t){return t===0?e:fJn(t,e%t)}function uta(e,t){return new cta(e,t)}var yCr=class extends ita{constructor(t=[],{factory:r=uta,...n}={}){if(super(),this[Dft]=n,this[HIe]=-1,this[MIe]=0,this[kft]=this[Dft].maxWeightPerServer||100,this[xft]=this[Dft].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new nta("factory must be a function.");this[lta]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[dJn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=AJn(t).origin;if(this[LZ].find(a=>a[_Cr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[dJn](r,Object.assign({},this[Dft]));this[sta](n),n.on("connect",()=>{n[SM]=Math.min(this[kft],n[SM]+this[xft])}),n.on("connectionError",()=>{n[SM]=Math.max(1,n[SM]-this[xft]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[SM]=Math.max(1,n[SM]-this[xft]),this._updateBalancedPoolStats())});for(let a of this[LZ])a[SM]=this[kft];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[pJn]=this[LZ].map(t=>t[SM]).reduce(fJn,0)}removeUpstream(t){let r=AJn(t).origin,n=this[LZ].find(a=>a[_Cr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[ota](n),this}get upstreams(){return this[LZ].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[_Cr].origin)}[ata](){if(this[LZ].length===0)throw new rta;if(!this[LZ].find(o=>!o[GHe]&&o.closed!==!0&&o.destroyed!==!0)||this[LZ].map(o=>o[GHe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[LZ].findIndex(o=>!o[GHe]);for(;n++this[LZ][a][SM]&&!o[GHe]&&(a=this[HIe]),this[HIe]===0&&(this[MIe]=this[MIe]-this[pJn],this[MIe]<=0&&(this[MIe]=this[kft])),o[SM]>=this[MIe]&&!o[GHe])return o}return this[MIe]=this[LZ][a][SM],this[HIe]=a,this[LZ][a]}};IJn.exports=yCr});var bCr=H((Jiu,_Jn)=>{"use strict";var{kConnected:mJn,kSize:CJn}=GE(),Gft=class{constructor(t){this.value=t}deref(){return this.value[mJn]===0&&this.value[CJn]===0?void 0:this.value}},Fft=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[mJn]===0&&t[CJn]===0&&this.finalizer(r)})}};_Jn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:Gft,FinalizationRegistry:Fft}:{WeakRef:global.WeakRef||Gft,FinalizationRegistry:global.FinalizationRegistry||Fft}}});var FHe=H((Uiu,TJn)=>{"use strict";var{InvalidArgumentError:Zft}=Ub(),{kClients:zoe,kRunning:yJn,kClose:gta,kDestroy:Ata,kDispatch:dta,kInterceptors:pta}=GE(),fta=bHe(),Ita=PBe(),hta=DHe(),mta=zC(),Cta=_ft(),{WeakRef:_ta,FinalizationRegistry:yta}=bCr()(),bJn=Symbol("onConnect"),EJn=Symbol("onDisconnect"),SJn=Symbol("onConnectionError"),bta=Symbol("maxRedirections"),vJn=Symbol("onDrain"),BJn=Symbol("factory"),wJn=Symbol("finalizer"),ECr=Symbol("options");function Eta(e,t){return t&&t.connections===1?new hta(e,t):new Ita(e,t)}var SCr=class extends fta{constructor({factory:t=Eta,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new Zft("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new Zft("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Zft("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[pta]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[Cta({maxRedirections:r})],this[ECr]={...mta.deepClone(a),connect:n},this[ECr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[bta]=r,this[BJn]=t,this[zoe]=new Map,this[wJn]=new yta(l=>{let A=this[zoe].get(l);A!==void 0&&A.deref()===void 0&&this[zoe].delete(l)});let o=this;this[vJn]=(l,A)=>{o.emit("drain",l,[o,...A])},this[bJn]=(l,A)=>{o.emit("connect",l,[o,...A])},this[EJn]=(l,A,f)=>{o.emit("disconnect",l,[o,...A],f)},this[SJn]=(l,A,f)=>{o.emit("connectionError",l,[o,...A],f)}}get[yJn](){let t=0;for(let r of this[zoe].values()){let n=r.deref();n&&(t+=n[yJn])}return t}[dta](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new Zft("opts.origin must be a non-empty string or URL.");let a=this[zoe].get(n),o=a?a.deref():null;return o||(o=this[BJn](t.origin,this[ECr]).on("drain",this[vJn]).on("connect",this[bJn]).on("disconnect",this[EJn]).on("connectionError",this[SJn]),this[zoe].set(n,new _ta(o)),this[wJn].register(o,n)),o.dispatch(t,r)}async[gta](){let t=[];for(let r of this[zoe].values()){let n=r.deref();n&&t.push(n.close())}await Promise.all(t)}async[Ata](t){let r=[];for(let n of this[zoe].values()){let a=n.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};TJn.exports=SCr});var LJn=H((jiu,ZJn)=>{"use strict";var kJn=wt("assert"),{Readable:Sta}=wt("stream"),{RequestAbortedError:xJn,NotSupportedError:vta,InvalidArgumentError:Bta}=Ub(),Pft=zC(),{ReadableStreamFrom:wta,toUSVString:Tta}=zC(),vCr,XW=Symbol("kConsume"),Lft=Symbol("kReading"),qoe=Symbol("kBody"),RJn=Symbol("abort"),GJn=Symbol("kContentType"),NJn=()=>{};ZJn.exports=class extends Sta{constructor({resume:t,abort:r,contentType:n="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[RJn]=r,this[XW]=null,this[qoe]=null,this[GJn]=n,this[Lft]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new xJn),t&&this[RJn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[Lft]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[Lft]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[XW]&&t!==null&&this.readableLength===0?(FJn(this[XW],t),this[Lft]?super.push(t):!0):super.push(t)}async text(){return Vft(this,"text")}async json(){return Vft(this,"json")}async blob(){return Vft(this,"blob")}async arrayBuffer(){return Vft(this,"arrayBuffer")}async formData(){throw new vta}get bodyUsed(){return Pft.isDisturbed(this)}get body(){return this[qoe]||(this[qoe]=wta(this),this[XW]&&(this[qoe].getReader(),kJn(this[qoe].locked))),this[qoe]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,n=t&&t.signal;if(n)try{if(typeof n!="object"||!("aborted"in n))throw new Bta("signal must be an AbortSignal");Pft.throwIfAborted(n)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let l=n?Pft.addAbortListener(n,()=>{this.destroy()}):NJn;this.on("close",function(){l(),n&&n.aborted?o(n.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",NJn).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Rta(e){return e[qoe]&&e[qoe].locked===!0||e[XW]}function Nta(e){return Pft.isDisturbed(e)||Rta(e)}async function Vft(e,t){if(Nta(e))throw new TypeError("unusable");return kJn(!e[XW]),new Promise((r,n)=>{e[XW]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){BCr(this[XW],a)}).on("close",function(){this[XW].body!==null&&BCr(this[XW],new xJn)}),process.nextTick(Dta,e[XW])})}function Dta(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)FJn(e,r);for(t.endEmitted?DJn(this[XW]):e.stream.on("end",function(){DJn(this[XW])}),e.stream.resume();e.stream.read()!=null;);}function DJn(e){let{type:t,body:r,resolve:n,stream:a,length:o}=e;try{if(t==="text")n(Tta(Buffer.concat(r)));else if(t==="json")n(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let l=new Uint8Array(o),A=0;for(let f of r)l.set(f,A),A+=f.byteLength;n(l.buffer)}else t==="blob"&&(vCr||(vCr=wt("buffer").Blob),n(new vCr(r,{type:a[GJn]})));BCr(e)}catch(l){a.destroy(l)}}function FJn(e,t){e.length+=t.length,e.body.push(t)}function BCr(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var wCr=H((ziu,PJn)=>{var kta=wt("assert"),{ResponseStatusCodeError:Wft}=Ub(),{toUSVString:VJn}=zC();async function xta({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){kta(t);let l=[],A=0;for await(let f of t)if(l.push(f),A+=f.length,A>128*1024){l=null;break}if(n===204||!r||!l){process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(VJn(Buffer.concat(l)));process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}if(r.startsWith("text/")){let f=VJn(Buffer.concat(l));process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}}catch{}process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o))}PJn.exports={getResolveErrorBodyCallback:xta}});var OBe=H((qiu,OJn)=>{var{addAbortListener:Gta}=zC(),{RequestAbortedError:Fta}=Ub(),WBe=Symbol("kListener"),$oe=Symbol("kSignal");function WJn(e){e.abort?e.abort():e.onError(new Fta)}function Zta(e,t){if(e[$oe]=null,e[WBe]=null,!!t){if(t.aborted){WJn(e);return}e[$oe]=t,e[WBe]=()=>{WJn(e)},Gta(e[$oe],e[WBe])}}function Lta(e){e[$oe]&&("removeEventListener"in e[$oe]?e[$oe].removeEventListener("abort",e[WBe]):e[$oe].removeListener("abort",e[WBe]),e[$oe]=null,e[WBe]=null)}OJn.exports={addSignal:Zta,removeSignal:Lta}});var YJn=H(($iu,TCr)=>{"use strict";var Vta=LJn(),{InvalidArgumentError:MBe,RequestAbortedError:Pta}=Ub(),y8=zC(),{getResolveErrorBodyCallback:Wta}=wCr(),{AsyncResource:Ota}=wt("async_hooks"),{addSignal:Mta,removeSignal:MJn}=OBe(),Oft=class extends Ota{constructor(t,r){if(!t||typeof t!="object")throw new MBe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new MBe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new MBe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new MBe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new MBe("invalid method");if(A&&typeof A!="function")throw new MBe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw y8.isStream(l)&&y8.destroy(l.on("error",y8.nop),b),b}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,y8.isStream(l)&&l.on("error",b=>{this.onError(b)}),Mta(this,n)}onConnect(t,r){if(!this.callback)throw new Pta;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?y8.parseRawHeaders(r):y8.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let N=(I==="raw"?y8.parseHeaders(r):b)["content-type"],B=new Vta({resume:n,abort:A,contentType:N,highWaterMark:C});this.callback=null,this.res=B,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(Wta,null,{callback:o,body:B,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:B,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;MJn(this),y8.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;MJn(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{y8.destroy(r,t)})),a&&(this.body=null,y8.destroy(a,t))}};function HJn(e,t){if(t===void 0)return new Promise((r,n)=>{HJn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new Oft(e,t))}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}TCr.exports=HJn;TCr.exports.RequestHandler=Oft});var UJn=H((esu,JJn)=>{"use strict";var{finished:Hta,PassThrough:Yta}=wt("stream"),{InvalidArgumentError:HBe,InvalidReturnValueError:Qta,RequestAbortedError:Xta}=Ub(),RX=zC(),{getResolveErrorBodyCallback:Jta}=wCr(),{AsyncResource:Uta}=wt("async_hooks"),{addSignal:Kta,removeSignal:QJn}=OBe(),RCr=class extends Uta{constructor(t,r,n){if(!t||typeof t!="object")throw new HBe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new HBe("invalid callback");if(typeof r!="function")throw new HBe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new HBe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new HBe("invalid method");if(f&&typeof f!="function")throw new HBe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw RX.isStream(A)&&RX.destroy(A.on("error",RX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,RX.isStream(A)&&A.on("error",b=>{this.onError(b)}),Kta(this,a)}onConnect(t,r){if(!this.callback)throw new Xta;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?RX.parseRawHeaders(r):RX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?RX.parseHeaders(r):C)["content-type"];b=new Yta,this.callback=null,this.runInAsyncScope(Jta,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new Qta("expected Writable");Hta(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:X,abort:ae}=this;this.res=null,(N||!F.readable)&&RX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:X}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState&&b._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;QJn(this),r&&(this.trailers=RX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;QJn(this),this.factory=null,r?(this.res=null,RX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,RX.destroy(o,t))}};function XJn(e,t,r){if(r===void 0)return new Promise((n,a)=>{XJn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new RCr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e&&e.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}JJn.exports=XJn});var zJn=H((tsu,jJn)=>{"use strict";var{Readable:KJn,Duplex:jta,PassThrough:zta}=wt("stream"),{InvalidArgumentError:ZHe,InvalidReturnValueError:qta,RequestAbortedError:Mft}=Ub(),vM=zC(),{AsyncResource:$ta}=wt("async_hooks"),{addSignal:era,removeSignal:tra}=OBe(),rra=wt("assert"),YBe=Symbol("resume"),NCr=class extends KJn{constructor(){super({autoDestroy:!0}),this[YBe]=null}_read(){let{[YBe]:t}=this;t&&(this[YBe]=null,t())}_destroy(t,r){this._read(),r(t)}},DCr=class extends KJn{constructor(t){super({autoDestroy:!0}),this[YBe]=t}_read(){this[YBe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Mft),r(t)}},kCr=class extends $ta{constructor(t,r){if(!t||typeof t!="object")throw new ZHe("invalid opts");if(typeof r!="function")throw new ZHe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new ZHe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new ZHe("invalid method");if(l&&typeof l!="function")throw new ZHe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new NCr().on("error",vM.nop),this.ret=new jta({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[YBe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new Mft),B&&f&&B(),vM.destroy(C,f),vM.destroy(b,f),vM.destroy(E,f),tra(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,era(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(rra(!a,"pipeline cannot be retried"),n.destroyed)throw new Mft;this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?vM.parseRawHeaders(r):vM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new DCr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?vM.parseRawHeaders(r):vM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",vM.nop),f}if(!A||typeof A.on!="function")throw new qta("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;vM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||vM.destroy(f,new Mft)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,vM.destroy(r,t)}};function nra(e,t){try{let r=new kCr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new zta().destroy(r)}}jJn.exports=nra});var rUn=H((rsu,tUn)=>{"use strict";var{InvalidArgumentError:xCr,RequestAbortedError:ira,SocketError:sra}=Ub(),{AsyncResource:ora}=wt("async_hooks"),qJn=zC(),{addSignal:ara,removeSignal:$Jn}=OBe(),cra=wt("assert"),GCr=class extends ora{constructor(t,r){if(!t||typeof t!="object")throw new xCr("invalid opts");if(typeof r!="function")throw new xCr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new xCr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,ara(this,n)}onConnect(t,r){if(!this.callback)throw new ira;this.abort=t,this.context=null}onHeaders(){throw new sra("bad upgrade",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;cra.strictEqual(t,101),$Jn(this),this.callback=null;let A=this.responseHeaders==="raw"?qJn.parseRawHeaders(r):qJn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;$Jn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function eUn(e,t){if(t===void 0)return new Promise((r,n)=>{eUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new GCr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}tUn.exports=eUn});var aUn=H((nsu,oUn)=>{"use strict";var{AsyncResource:lra}=wt("async_hooks"),{InvalidArgumentError:FCr,RequestAbortedError:ura,SocketError:gra}=Ub(),nUn=zC(),{addSignal:Ara,removeSignal:iUn}=OBe(),ZCr=class extends lra{constructor(t,r){if(!t||typeof t!="object")throw new FCr("invalid opts");if(typeof r!="function")throw new FCr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new FCr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Ara(this,n)}onConnect(t,r){if(!this.callback)throw new ura;this.abort=t,this.context=r}onHeaders(){throw new gra("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;iUn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?nUn.parseRawHeaders(r):nUn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;iUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function sUn(e,t){if(t===void 0)return new Promise((r,n)=>{sUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new ZCr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}oUn.exports=sUn});var cUn=H((isu,QBe)=>{"use strict";QBe.exports.request=YJn();QBe.exports.stream=UJn();QBe.exports.pipeline=zJn();QBe.exports.upgrade=rUn();QBe.exports.connect=aUn()});var VCr=H((ssu,lUn)=>{"use strict";var{UndiciError:dra}=Ub(),LCr=class e extends dra{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};lUn.exports={MockNotMatchedError:LCr}});var XBe=H((osu,uUn)=>{"use strict";uUn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var LHe=H((asu,bUn)=>{"use strict";var{MockNotMatchedError:YIe}=VCr(),{kDispatches:Hft,kMockAgent:pra,kOriginalDispatch:fra,kOrigin:Ira,kGetNetConnect:hra}=XBe(),{buildURL:mra,nop:Cra}=zC(),{STATUS_CODES:_ra}=wt("http"),{types:{isPromise:yra}}=wt("util");function x$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function AUn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function dUn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=dUn(t,r);if(!x$(n,a))return!1}return!0}function gUn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function bra(e,{path:t,method:r,body:n,headers:a}){let o=x$(e.path,t),l=x$(e.method,r),A=typeof e.body<"u"?x$(e.body,n):!0,f=fUn(e,a);return o&&l&&A&&f}function IUn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function hUn(e,t){let r=t.query?mra(t.path,t.query):t.path,n=typeof r=="string"?gUn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>x$(gUn(o),n));if(a.length===0)throw new YIe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>x$(o,t.method)),a.length===0)throw new YIe(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?x$(o,t.body):!0),a.length===0)throw new YIe(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>fUn(o,t.headers)),a.length===0)throw new YIe(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function Era(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function PCr(e,t){let r=e.findIndex(n=>n.consumed?bra(n,t):!1);r!==-1&&e.splice(r,1)}function mUn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function WCr(e){return Object.entries(e).reduce((t,[r,n])=>[...t,Buffer.from(`${r}`),Array.isArray(n)?n.map(a=>Buffer.from(`${a}`)):Buffer.from(`${n}`)],[])}function CUn(e){return _ra[e]||"unknown"}async function Sra(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function _Un(e,t){let r=mUn(e),n=hUn(this[Hft],r);n.timesInvoked++,n.data.callback&&(n.data={...n.data,...n.data.callback(e)});let{data:{statusCode:a,data:o,headers:l,trailers:A,error:f},delay:I,persist:C}=n,{timesInvoked:b,times:E}=n;if(n.consumed=!C&&b>=E,n.pending=b0?setTimeout(()=>{N(this[Hft])},I):N(this[Hft]);function N(F,Q=o){let X=Array.isArray(e.headers)?pUn(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:X}):Q;if(yra(ae)){ae.then(ue=>N(F,ue));return}let ne=IUn(ae),ce=WCr(l),fe=WCr(A);t.abort=Cra,t.onHeaders(a,ce,B,CUn(a)),t.onData(Buffer.from(ne)),t.onComplete(fe),PCr(F,r)}function B(){}return!0}function vra(){let e=this[pra],t=this[Ira],r=this[fra];return function(a,o){if(e.isMockActive)try{_Un.call(this,a,o)}catch(l){if(l instanceof YIe){let A=e[hra]();if(A===!1)throw new YIe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(yUn(A,t))r.call(this,a,o);else throw new YIe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function yUn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>x$(n,r.host)))}function Bra(e){if(e){let{agent:t,...r}=e;return r}}bUn.exports={getResponseData:IUn,getMockDispatch:hUn,addMockDispatch:Era,deleteMockDispatch:PCr,buildKey:mUn,generateKeyValues:WCr,matchValue:x$,getResponse:Sra,getStatusText:CUn,mockDispatch:_Un,buildMockDispatch:vra,checkNetConnect:yUn,buildMockOptions:Bra,getHeaderByName:dUn}});var JCr=H((csu,XCr)=>{"use strict";var{getResponseData:wra,buildKey:Tra,addMockDispatch:OCr}=LHe(),{kDispatches:Yft,kDispatchKey:Qft,kDefaultHeaders:MCr,kDefaultTrailers:HCr,kContentLength:YCr,kMockDispatch:Xft}=XBe(),{InvalidArgumentError:NX}=Ub(),{buildURL:Rra}=zC(),JBe=class{constructor(t){this[Xft]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new NX("waitInMs must be a valid integer > 0");return this[Xft].delay=t,this}persist(){return this[Xft].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new NX("repeatTimes must be a valid integer > 0");return this[Xft].times=t,this}},QCr=class{constructor(t,r){if(typeof t!="object")throw new NX("opts must be an object");if(typeof t.path>"u")throw new NX("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Rra(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Qft]=Tra(t),this[Yft]=r,this[MCr]={},this[HCr]={},this[YCr]=!1}createMockScopeDispatchData(t,r,n={}){let a=wra(r),o=this[YCr]?{"content-length":a.length}:{},l={...this[MCr],...o,...n.headers},A={...this[HCr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t,r,n){if(typeof t>"u")throw new NX("statusCode must be defined");if(typeof r>"u")throw new NX("data must be defined");if(typeof n!="object")throw new NX("responseOptions must be an object")}reply(t){if(typeof t=="function"){let A=I=>{let C=t(I);if(typeof C!="object")throw new NX("reply options callback must return an object");let{statusCode:b,data:E="",responseOptions:N={}}=C;return this.validateReplyParameters(b,E,N),{...this.createMockScopeDispatchData(b,E,N)}},f=OCr(this[Yft],this[Qft],A);return new JBe(f)}let[r,n="",a={}]=[...arguments];this.validateReplyParameters(r,n,a);let o=this.createMockScopeDispatchData(r,n,a),l=OCr(this[Yft],this[Qft],o);return new JBe(l)}replyWithError(t){if(typeof t>"u")throw new NX("error must be defined");let r=OCr(this[Yft],this[Qft],{error:t});return new JBe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new NX("headers must be defined");return this[MCr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new NX("trailers must be defined");return this[HCr]=t,this}replyContentLength(){return this[YCr]=!0,this}};XCr.exports.MockInterceptor=QCr;XCr.exports.MockScope=JBe});var jCr=H((lsu,RUn)=>{"use strict";var{promisify:Nra}=wt("util"),Dra=DHe(),{buildMockDispatch:kra}=LHe(),{kDispatches:EUn,kMockAgent:SUn,kClose:vUn,kOriginalClose:BUn,kOrigin:wUn,kOriginalDispatch:xra,kConnected:UCr}=XBe(),{MockInterceptor:Gra}=JCr(),TUn=GE(),{InvalidArgumentError:Fra}=Ub(),KCr=class extends Dra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Fra("Argument opts.agent must implement Agent");this[SUn]=r.agent,this[wUn]=t,this[EUn]=[],this[UCr]=1,this[xra]=this.dispatch,this[BUn]=this.close.bind(this),this.dispatch=kra.call(this),this.close=this[vUn]}get[TUn.kConnected](){return this[UCr]}intercept(t){return new Gra(t,this[EUn])}async[vUn](){await Nra(this[BUn])(),this[UCr]=0,this[SUn][TUn.kClients].delete(this[wUn])}};RUn.exports=KCr});var $Cr=H((usu,ZUn)=>{"use strict";var{promisify:Zra}=wt("util"),Lra=PBe(),{buildMockDispatch:Vra}=LHe(),{kDispatches:NUn,kMockAgent:DUn,kClose:kUn,kOriginalClose:xUn,kOrigin:GUn,kOriginalDispatch:Pra,kConnected:zCr}=XBe(),{MockInterceptor:Wra}=JCr(),FUn=GE(),{InvalidArgumentError:Ora}=Ub(),qCr=class extends Lra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ora("Argument opts.agent must implement Agent");this[DUn]=r.agent,this[GUn]=t,this[NUn]=[],this[zCr]=1,this[Pra]=this.dispatch,this[xUn]=this.close.bind(this),this.dispatch=Vra.call(this),this.close=this[kUn]}get[FUn.kConnected](){return this[zCr]}intercept(t){return new Wra(t,this[NUn])}async[kUn](){await Zra(this[xUn])(),this[zCr]=0,this[DUn][FUn.kClients].delete(this[GUn])}};ZUn.exports=qCr});var VUn=H((Asu,LUn)=>{"use strict";var Mra={pronoun:"it",is:"is",was:"was",this:"this"},Hra={pronoun:"they",is:"are",was:"were",this:"these"};LUn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?Mra:Hra,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var WUn=H((psu,PUn)=>{"use strict";var{Transform:Yra}=wt("stream"),{Console:Qra}=wt("console");PUn.exports=class{constructor({disableColors:t}={}){this.transform=new Yra({transform(r,n,a){a(null,r)}}),this.logger=new Qra({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?"\u2705":"\u274C",Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var YUn=H((fsu,HUn)=>{"use strict";var{kClients:QIe}=GE(),Xra=FHe(),{kAgent:e_r,kMockAgentSet:Jft,kMockAgentGet:OUn,kDispatches:t_r,kIsMockActive:Uft,kNetConnect:XIe,kGetNetConnect:Jra,kOptions:Kft,kFactory:jft}=XBe(),Ura=jCr(),Kra=$Cr(),{matchValue:jra,buildMockOptions:zra}=LHe(),{InvalidArgumentError:MUn,UndiciError:qra}=Ub(),$ra=Ift(),ena=VUn(),tna=WUn(),r_r=class{constructor(t){this.value=t}deref(){return this.value}},n_r=class extends $ra{constructor(t){if(super(t),this[XIe]=!0,this[Uft]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new MUn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new Xra(t);this[e_r]=r,this[QIe]=r[QIe],this[Kft]=zra(t)}get(t){let r=this[OUn](t);return r||(r=this[jft](t),this[Jft](t,r)),r}dispatch(t,r){return this.get(t.origin),this[e_r].dispatch(t,r)}async close(){await this[e_r].close(),this[QIe].clear()}deactivate(){this[Uft]=!1}activate(){this[Uft]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[XIe])?this[XIe].push(t):this[XIe]=[t];else if(typeof t>"u")this[XIe]=!0;else throw new MUn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[XIe]=!1}get isMockActive(){return this[Uft]}[Jft](t,r){this[QIe].set(t,new r_r(r))}[jft](t){let r=Object.assign({agent:this},this[Kft]);return this[Kft]&&this[Kft].connections===1?new Ura(t,r):new Kra(t,r)}[OUn](t){let r=this[QIe].get(t);if(r)return r.deref();if(typeof t!="string"){let n=this[jft]("http://localhost:9999");return this[Jft](t,n),n}for(let[n,a]of Array.from(this[QIe])){let o=a.deref();if(o&&typeof n!="string"&&jra(n,t)){let l=this[jft](t);return this[Jft](t,l),l[t_r]=o[t_r],l}}}[Jra](){return this[XIe]}pendingInterceptors(){let t=this[QIe];return Array.from(t.entries()).flatMap(([r,n])=>n.deref()[t_r].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new tna}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new ena("interceptor","interceptors").pluralize(r.length);throw new qra(` +`,"latin1"),r!==null&&a!==r){if(n[DHe])throw new D$;process.emitWarning(new D$)}t[Pv].timeout&&t[Pv].timeoutType===PBe&&t[Pv].timeout.refresh&&t[Pv].timeout.refresh(),QW(n)}}destroy(t){let{socket:r,client:n}=this;r[k$]=!1,t&&(kA(n[TS]<=1,"pipeline should only contain this request"),vp.destroy(r,t))}};function FZ(e,t,r){try{t.onError(r),kA(t.aborted)}catch(n){e.emit("error",n)}}eJn.exports=oCr});var rJn=H((Gsu,tJn)=>{"use strict";var kft=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};tJn.exports=class{constructor(){this.head=this.tail=new kft}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new kft),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var iJn=H((Fsu,nJn)=>{var{kFree:Kea,kConnected:jea,kPending:zea,kQueued:qea,kRunning:$ea,kSize:eta}=GE(),MIe=Symbol("pool"),ACr=class{constructor(t){this[MIe]=t}get connected(){return this[MIe][jea]}get free(){return this[MIe][Kea]}get pending(){return this[MIe][zea]}get queued(){return this[MIe][qea]}get running(){return this[MIe][$ea]}get size(){return this[MIe][eta]}};nJn.exports=ACr});var mCr=H((Zsu,pJn)=>{"use strict";var tta=SHe(),rta=rJn(),{kConnected:dCr,kSize:sJn,kRunning:oJn,kPending:aJn,kQueued:GHe,kBusy:nta,kFree:ita,kUrl:sta,kClose:ota,kDestroy:ata,kDispatch:cta}=GE(),lta=iJn(),K9=Symbol("clients"),ZZ=Symbol("needDrain"),FHe=Symbol("queue"),pCr=Symbol("closed resolve"),fCr=Symbol("onDrain"),cJn=Symbol("onConnect"),lJn=Symbol("onDisconnect"),uJn=Symbol("onConnectionError"),ICr=Symbol("get dispatcher"),AJn=Symbol("add client"),dJn=Symbol("remove client"),gJn=Symbol("stats"),hCr=class extends tta{constructor(){super(),this[FHe]=new rta,this[K9]=[],this[GHe]=0;let t=this;this[fCr]=function(n,a){let o=t[FHe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[GHe]--,l=!this.dispatch(A.opts,A.handler)}this[ZZ]=l,!this[ZZ]&&t[ZZ]&&(t[ZZ]=!1,t.emit("drain",n,[t,...a])),t[pCr]&&o.isEmpty()&&Promise.all(t[K9].map(A=>A.close())).then(t[pCr])},this[cJn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[lJn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[uJn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[gJn]=new lta(this)}get[nta](){return this[ZZ]}get[dCr](){return this[K9].filter(t=>t[dCr]).length}get[ita](){return this[K9].filter(t=>t[dCr]&&!t[ZZ]).length}get[aJn](){let t=this[GHe];for(let{[aJn]:r}of this[K9])t+=r;return t}get[oJn](){let t=0;for(let{[oJn]:r}of this[K9])t+=r;return t}get[sJn](){let t=this[GHe];for(let{[sJn]:r}of this[K9])t+=r;return t}get stats(){return this[gJn]}async[ota](){return this[FHe].isEmpty()?Promise.all(this[K9].map(t=>t.close())):new Promise(t=>{this[pCr]=t})}async[ata](t){for(;;){let r=this[FHe].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[K9].map(r=>r.destroy(t)))}[cta](t,r){let n=this[ICr]();return n?n.dispatch(t,r)||(n[ZZ]=!0,this[ZZ]=!this[ICr]()):(this[ZZ]=!0,this[FHe].push({opts:t,handler:r}),this[GHe]++),!this[ZZ]}[AJn](t){return t.on("drain",this[fCr]).on("connect",this[cJn]).on("disconnect",this[lJn]).on("connectionError",this[uJn]),this[K9].push(t),this[ZZ]&&process.nextTick(()=>{this[ZZ]&&this[fCr](t[sta],[this,t])}),this}[dJn](t){t.close(()=>{let r=this[K9].indexOf(t);r!==-1&&this[K9].splice(r,1)}),this[ZZ]=this[K9].some(r=>!r[ZZ]&&r.closed!==!0&&r.destroyed!==!0)}};pJn.exports={PoolBase:hCr,kClients:K9,kNeedDrain:ZZ,kAddClient:AJn,kRemoveClient:dJn,kGetDispatcher:ICr}});var WBe=H((Lsu,mJn)=>{"use strict";var{PoolBase:uta,kClients:fJn,kNeedDrain:gta,kAddClient:Ata,kGetDispatcher:dta}=mCr(),pta=xHe(),{InvalidArgumentError:CCr}=Ub(),_Cr=zC(),{kUrl:IJn,kInterceptors:fta}=GE(),Ita=vHe(),yCr=Symbol("options"),bCr=Symbol("connections"),hJn=Symbol("factory");function hta(e,t){return new pta(e,t)}var ECr=class extends uta{constructor(t,{connections:r,factory:n=hta,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new CCr("invalid connections");if(typeof n!="function")throw new CCr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new CCr("connect must be a function or an object");typeof a!="function"&&(a=Ita({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,..._Cr.nodeHasAutoSelectFamily&&I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[fta]=E.interceptors&&E.interceptors.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[bCr]=r||null,this[IJn]=_Cr.parseOrigin(t),this[yCr]={..._Cr.deepClone(E),connect:a,allowH2:b},this[yCr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[hJn]=n}[dta](){let t=this[fJn].find(r=>!r[gta]);return t||((!this[bCr]||this[fJn].length{"use strict";var{BalancedPoolMissingUpstreamError:mta,InvalidArgumentError:Cta}=Ub(),{PoolBase:_ta,kClients:LZ,kNeedDrain:ZHe,kAddClient:yta,kRemoveClient:bta,kGetDispatcher:Eta}=mCr(),Sta=WBe(),{kUrl:SCr,kInterceptors:vta}=GE(),{parseOrigin:CJn}=zC(),_Jn=Symbol("factory"),xft=Symbol("options"),yJn=Symbol("kGreatestCommonDivisor"),HIe=Symbol("kCurrentWeight"),YIe=Symbol("kIndex"),SM=Symbol("kWeight"),Gft=Symbol("kMaxWeightPerServer"),Fft=Symbol("kErrorPenalty");function bJn(e,t){return t===0?e:bJn(t,e%t)}function Bta(e,t){return new Sta(e,t)}var vCr=class extends _ta{constructor(t=[],{factory:r=Bta,...n}={}){if(super(),this[xft]=n,this[YIe]=-1,this[HIe]=0,this[Gft]=this[xft].maxWeightPerServer||100,this[Fft]=this[xft].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new Cta("factory must be a function.");this[vta]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[_Jn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=CJn(t).origin;if(this[LZ].find(a=>a[SCr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[_Jn](r,Object.assign({},this[xft]));this[yta](n),n.on("connect",()=>{n[SM]=Math.min(this[Gft],n[SM]+this[Fft])}),n.on("connectionError",()=>{n[SM]=Math.max(1,n[SM]-this[Fft]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[SM]=Math.max(1,n[SM]-this[Fft]),this._updateBalancedPoolStats())});for(let a of this[LZ])a[SM]=this[Gft];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[yJn]=this[LZ].map(t=>t[SM]).reduce(bJn,0)}removeUpstream(t){let r=CJn(t).origin,n=this[LZ].find(a=>a[SCr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[bta](n),this}get upstreams(){return this[LZ].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[SCr].origin)}[Eta](){if(this[LZ].length===0)throw new mta;if(!this[LZ].find(o=>!o[ZHe]&&o.closed!==!0&&o.destroyed!==!0)||this[LZ].map(o=>o[ZHe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[LZ].findIndex(o=>!o[ZHe]);for(;n++this[LZ][a][SM]&&!o[ZHe]&&(a=this[YIe]),this[YIe]===0&&(this[HIe]=this[HIe]-this[yJn],this[HIe]<=0&&(this[HIe]=this[Gft])),o[SM]>=this[HIe]&&!o[ZHe])return o}return this[HIe]=this[LZ][a][SM],this[YIe]=a,this[LZ][a]}};EJn.exports=vCr});var BCr=H((Psu,wJn)=>{"use strict";var{kConnected:vJn,kSize:BJn}=GE(),Zft=class{constructor(t){this.value=t}deref(){return this.value[vJn]===0&&this.value[BJn]===0?void 0:this.value}},Lft=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[vJn]===0&&t[BJn]===0&&this.finalizer(r)})}};wJn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:Zft,FinalizationRegistry:Lft}:{WeakRef:global.WeakRef||Zft,FinalizationRegistry:global.FinalizationRegistry||Lft}}});var LHe=H((Wsu,FJn)=>{"use strict";var{InvalidArgumentError:Vft}=Ub(),{kClients:qoe,kRunning:TJn,kClose:wta,kDestroy:Tta,kDispatch:Rta,kInterceptors:Nta}=GE(),Dta=SHe(),kta=WBe(),xta=xHe(),Gta=zC(),Fta=bft(),{WeakRef:Zta,FinalizationRegistry:Lta}=BCr()(),RJn=Symbol("onConnect"),NJn=Symbol("onDisconnect"),DJn=Symbol("onConnectionError"),Vta=Symbol("maxRedirections"),kJn=Symbol("onDrain"),xJn=Symbol("factory"),GJn=Symbol("finalizer"),wCr=Symbol("options");function Pta(e,t){return t&&t.connections===1?new xta(e,t):new kta(e,t)}var TCr=class extends Dta{constructor({factory:t=Pta,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new Vft("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new Vft("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Vft("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[Nta]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[Fta({maxRedirections:r})],this[wCr]={...Gta.deepClone(a),connect:n},this[wCr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[Vta]=r,this[xJn]=t,this[qoe]=new Map,this[GJn]=new Lta(l=>{let A=this[qoe].get(l);A!==void 0&&A.deref()===void 0&&this[qoe].delete(l)});let o=this;this[kJn]=(l,A)=>{o.emit("drain",l,[o,...A])},this[RJn]=(l,A)=>{o.emit("connect",l,[o,...A])},this[NJn]=(l,A,f)=>{o.emit("disconnect",l,[o,...A],f)},this[DJn]=(l,A,f)=>{o.emit("connectionError",l,[o,...A],f)}}get[TJn](){let t=0;for(let r of this[qoe].values()){let n=r.deref();n&&(t+=n[TJn])}return t}[Rta](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new Vft("opts.origin must be a non-empty string or URL.");let a=this[qoe].get(n),o=a?a.deref():null;return o||(o=this[xJn](t.origin,this[wCr]).on("drain",this[kJn]).on("connect",this[RJn]).on("disconnect",this[NJn]).on("connectionError",this[DJn]),this[qoe].set(n,new Zta(o)),this[GJn].register(o,n)),o.dispatch(t,r)}async[wta](){let t=[];for(let r of this[qoe].values()){let n=r.deref();n&&t.push(n.close())}await Promise.all(t)}async[Tta](t){let r=[];for(let n of this[qoe].values()){let a=n.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};FJn.exports=TCr});var YJn=H((Msu,HJn)=>{"use strict";var PJn=wt("assert"),{Readable:Wta}=wt("stream"),{RequestAbortedError:WJn,NotSupportedError:Ota,InvalidArgumentError:Mta}=Ub(),Oft=zC(),{ReadableStreamFrom:Hta,toUSVString:Yta}=zC(),RCr,XW=Symbol("kConsume"),Pft=Symbol("kReading"),$oe=Symbol("kBody"),ZJn=Symbol("abort"),OJn=Symbol("kContentType"),LJn=()=>{};HJn.exports=class extends Wta{constructor({resume:t,abort:r,contentType:n="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[ZJn]=r,this[XW]=null,this[$oe]=null,this[OJn]=n,this[Pft]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new WJn),t&&this[ZJn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[Pft]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[Pft]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[XW]&&t!==null&&this.readableLength===0?(MJn(this[XW],t),this[Pft]?super.push(t):!0):super.push(t)}async text(){return Wft(this,"text")}async json(){return Wft(this,"json")}async blob(){return Wft(this,"blob")}async arrayBuffer(){return Wft(this,"arrayBuffer")}async formData(){throw new Ota}get bodyUsed(){return Oft.isDisturbed(this)}get body(){return this[$oe]||(this[$oe]=Hta(this),this[XW]&&(this[$oe].getReader(),PJn(this[$oe].locked))),this[$oe]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,n=t&&t.signal;if(n)try{if(typeof n!="object"||!("aborted"in n))throw new Mta("signal must be an AbortSignal");Oft.throwIfAborted(n)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let l=n?Oft.addAbortListener(n,()=>{this.destroy()}):LJn;this.on("close",function(){l(),n&&n.aborted?o(n.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",LJn).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Qta(e){return e[$oe]&&e[$oe].locked===!0||e[XW]}function Xta(e){return Oft.isDisturbed(e)||Qta(e)}async function Wft(e,t){if(Xta(e))throw new TypeError("unusable");return PJn(!e[XW]),new Promise((r,n)=>{e[XW]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){NCr(this[XW],a)}).on("close",function(){this[XW].body!==null&&NCr(this[XW],new WJn)}),process.nextTick(Jta,e[XW])})}function Jta(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)MJn(e,r);for(t.endEmitted?VJn(this[XW]):e.stream.on("end",function(){VJn(this[XW])}),e.stream.resume();e.stream.read()!=null;);}function VJn(e){let{type:t,body:r,resolve:n,stream:a,length:o}=e;try{if(t==="text")n(Yta(Buffer.concat(r)));else if(t==="json")n(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let l=new Uint8Array(o),A=0;for(let f of r)l.set(f,A),A+=f.byteLength;n(l.buffer)}else t==="blob"&&(RCr||(RCr=wt("buffer").Blob),n(new RCr(r,{type:a[OJn]})));NCr(e)}catch(l){a.destroy(l)}}function MJn(e,t){e.length+=t.length,e.body.push(t)}function NCr(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var DCr=H((Hsu,XJn)=>{var Uta=wt("assert"),{ResponseStatusCodeError:Mft}=Ub(),{toUSVString:QJn}=zC();async function Kta({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Uta(t);let l=[],A=0;for await(let f of t)if(l.push(f),A+=f.length,A>128*1024){l=null;break}if(n===204||!r||!l){process.nextTick(e,new Mft(`Response status code ${n}${a?`: ${a}`:""}`,n,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(QJn(Buffer.concat(l)));process.nextTick(e,new Mft(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}if(r.startsWith("text/")){let f=QJn(Buffer.concat(l));process.nextTick(e,new Mft(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}}catch{}process.nextTick(e,new Mft(`Response status code ${n}${a?`: ${a}`:""}`,n,o))}XJn.exports={getResolveErrorBodyCallback:Kta}});var MBe=H((Ysu,UJn)=>{var{addAbortListener:jta}=zC(),{RequestAbortedError:zta}=Ub(),OBe=Symbol("kListener"),eae=Symbol("kSignal");function JJn(e){e.abort?e.abort():e.onError(new zta)}function qta(e,t){if(e[eae]=null,e[OBe]=null,!!t){if(t.aborted){JJn(e);return}e[eae]=t,e[OBe]=()=>{JJn(e)},jta(e[eae],e[OBe])}}function $ta(e){e[eae]&&("removeEventListener"in e[eae]?e[eae].removeEventListener("abort",e[OBe]):e[eae].removeListener("abort",e[OBe]),e[eae]=null,e[OBe]=null)}UJn.exports={addSignal:qta,removeSignal:$ta}});var zJn=H((Qsu,kCr)=>{"use strict";var era=YJn(),{InvalidArgumentError:HBe,RequestAbortedError:tra}=Ub(),y8=zC(),{getResolveErrorBodyCallback:rra}=DCr(),{AsyncResource:nra}=wt("async_hooks"),{addSignal:ira,removeSignal:KJn}=MBe(),Hft=class extends nra{constructor(t,r){if(!t||typeof t!="object")throw new HBe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new HBe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new HBe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new HBe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new HBe("invalid method");if(A&&typeof A!="function")throw new HBe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw y8.isStream(l)&&y8.destroy(l.on("error",y8.nop),b),b}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,y8.isStream(l)&&l.on("error",b=>{this.onError(b)}),ira(this,n)}onConnect(t,r){if(!this.callback)throw new tra;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?y8.parseRawHeaders(r):y8.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let N=(I==="raw"?y8.parseHeaders(r):b)["content-type"],B=new era({resume:n,abort:A,contentType:N,highWaterMark:C});this.callback=null,this.res=B,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(rra,null,{callback:o,body:B,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:B,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;KJn(this),y8.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;KJn(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{y8.destroy(r,t)})),a&&(this.body=null,y8.destroy(a,t))}};function jJn(e,t){if(t===void 0)return new Promise((r,n)=>{jJn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new Hft(e,t))}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}kCr.exports=jJn;kCr.exports.RequestHandler=Hft});var tUn=H((Xsu,eUn)=>{"use strict";var{finished:sra,PassThrough:ora}=wt("stream"),{InvalidArgumentError:YBe,InvalidReturnValueError:ara,RequestAbortedError:cra}=Ub(),RX=zC(),{getResolveErrorBodyCallback:lra}=DCr(),{AsyncResource:ura}=wt("async_hooks"),{addSignal:gra,removeSignal:qJn}=MBe(),xCr=class extends ura{constructor(t,r,n){if(!t||typeof t!="object")throw new YBe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new YBe("invalid callback");if(typeof r!="function")throw new YBe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new YBe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new YBe("invalid method");if(f&&typeof f!="function")throw new YBe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw RX.isStream(A)&&RX.destroy(A.on("error",RX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,RX.isStream(A)&&A.on("error",b=>{this.onError(b)}),gra(this,a)}onConnect(t,r){if(!this.callback)throw new cra;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?RX.parseRawHeaders(r):RX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?RX.parseHeaders(r):C)["content-type"];b=new ora,this.callback=null,this.runInAsyncScope(lra,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new ara("expected Writable");sra(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:X,abort:ae}=this;this.res=null,(N||!F.readable)&&RX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:X}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState&&b._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;qJn(this),r&&(this.trailers=RX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;qJn(this),this.factory=null,r?(this.res=null,RX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,RX.destroy(o,t))}};function $Jn(e,t,r){if(r===void 0)return new Promise((n,a)=>{$Jn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new xCr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e&&e.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}eUn.exports=$Jn});var iUn=H((Jsu,nUn)=>{"use strict";var{Readable:rUn,Duplex:Ara,PassThrough:dra}=wt("stream"),{InvalidArgumentError:VHe,InvalidReturnValueError:pra,RequestAbortedError:Yft}=Ub(),vM=zC(),{AsyncResource:fra}=wt("async_hooks"),{addSignal:Ira,removeSignal:hra}=MBe(),mra=wt("assert"),QBe=Symbol("resume"),GCr=class extends rUn{constructor(){super({autoDestroy:!0}),this[QBe]=null}_read(){let{[QBe]:t}=this;t&&(this[QBe]=null,t())}_destroy(t,r){this._read(),r(t)}},FCr=class extends rUn{constructor(t){super({autoDestroy:!0}),this[QBe]=t}_read(){this[QBe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Yft),r(t)}},ZCr=class extends fra{constructor(t,r){if(!t||typeof t!="object")throw new VHe("invalid opts");if(typeof r!="function")throw new VHe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new VHe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new VHe("invalid method");if(l&&typeof l!="function")throw new VHe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new GCr().on("error",vM.nop),this.ret=new Ara({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[QBe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new Yft),B&&f&&B(),vM.destroy(C,f),vM.destroy(b,f),vM.destroy(E,f),hra(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,Ira(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(mra(!a,"pipeline cannot be retried"),n.destroyed)throw new Yft;this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?vM.parseRawHeaders(r):vM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new FCr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?vM.parseRawHeaders(r):vM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",vM.nop),f}if(!A||typeof A.on!="function")throw new pra("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;vM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||vM.destroy(f,new Yft)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,vM.destroy(r,t)}};function Cra(e,t){try{let r=new ZCr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new dra().destroy(r)}}nUn.exports=Cra});var lUn=H((Usu,cUn)=>{"use strict";var{InvalidArgumentError:LCr,RequestAbortedError:_ra,SocketError:yra}=Ub(),{AsyncResource:bra}=wt("async_hooks"),sUn=zC(),{addSignal:Era,removeSignal:oUn}=MBe(),Sra=wt("assert"),VCr=class extends bra{constructor(t,r){if(!t||typeof t!="object")throw new LCr("invalid opts");if(typeof r!="function")throw new LCr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new LCr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,Era(this,n)}onConnect(t,r){if(!this.callback)throw new _ra;this.abort=t,this.context=null}onHeaders(){throw new yra("bad upgrade",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;Sra.strictEqual(t,101),oUn(this),this.callback=null;let A=this.responseHeaders==="raw"?sUn.parseRawHeaders(r):sUn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;oUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function aUn(e,t){if(t===void 0)return new Promise((r,n)=>{aUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new VCr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}cUn.exports=aUn});var pUn=H((Ksu,dUn)=>{"use strict";var{AsyncResource:vra}=wt("async_hooks"),{InvalidArgumentError:PCr,RequestAbortedError:Bra,SocketError:wra}=Ub(),uUn=zC(),{addSignal:Tra,removeSignal:gUn}=MBe(),WCr=class extends vra{constructor(t,r){if(!t||typeof t!="object")throw new PCr("invalid opts");if(typeof r!="function")throw new PCr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new PCr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Tra(this,n)}onConnect(t,r){if(!this.callback)throw new Bra;this.abort=t,this.context=r}onHeaders(){throw new wra("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;gUn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?uUn.parseRawHeaders(r):uUn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;gUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function AUn(e,t){if(t===void 0)return new Promise((r,n)=>{AUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new WCr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}dUn.exports=AUn});var fUn=H((jsu,XBe)=>{"use strict";XBe.exports.request=zJn();XBe.exports.stream=tUn();XBe.exports.pipeline=iUn();XBe.exports.upgrade=lUn();XBe.exports.connect=pUn()});var MCr=H((zsu,IUn)=>{"use strict";var{UndiciError:Rra}=Ub(),OCr=class e extends Rra{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};IUn.exports={MockNotMatchedError:OCr}});var JBe=H((qsu,hUn)=>{"use strict";hUn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var PHe=H(($su,RUn)=>{"use strict";var{MockNotMatchedError:QIe}=MCr(),{kDispatches:Qft,kMockAgent:Nra,kOriginalDispatch:Dra,kOrigin:kra,kGetNetConnect:xra}=JBe(),{buildURL:Gra,nop:Fra}=zC(),{STATUS_CODES:Zra}=wt("http"),{types:{isPromise:Lra}}=wt("util");function x$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function CUn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function _Un(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=_Un(t,r);if(!x$(n,a))return!1}return!0}function mUn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Vra(e,{path:t,method:r,body:n,headers:a}){let o=x$(e.path,t),l=x$(e.method,r),A=typeof e.body<"u"?x$(e.body,n):!0,f=bUn(e,a);return o&&l&&A&&f}function EUn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function SUn(e,t){let r=t.query?Gra(t.path,t.query):t.path,n=typeof r=="string"?mUn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>x$(mUn(o),n));if(a.length===0)throw new QIe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>x$(o,t.method)),a.length===0)throw new QIe(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?x$(o,t.body):!0),a.length===0)throw new QIe(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>bUn(o,t.headers)),a.length===0)throw new QIe(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function Pra(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function HCr(e,t){let r=e.findIndex(n=>n.consumed?Vra(n,t):!1);r!==-1&&e.splice(r,1)}function vUn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function YCr(e){return Object.entries(e).reduce((t,[r,n])=>[...t,Buffer.from(`${r}`),Array.isArray(n)?n.map(a=>Buffer.from(`${a}`)):Buffer.from(`${n}`)],[])}function BUn(e){return Zra[e]||"unknown"}async function Wra(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function wUn(e,t){let r=vUn(e),n=SUn(this[Qft],r);n.timesInvoked++,n.data.callback&&(n.data={...n.data,...n.data.callback(e)});let{data:{statusCode:a,data:o,headers:l,trailers:A,error:f},delay:I,persist:C}=n,{timesInvoked:b,times:E}=n;if(n.consumed=!C&&b>=E,n.pending=b0?setTimeout(()=>{N(this[Qft])},I):N(this[Qft]);function N(F,Q=o){let X=Array.isArray(e.headers)?yUn(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:X}):Q;if(Lra(ae)){ae.then(ue=>N(F,ue));return}let ne=EUn(ae),ce=YCr(l),fe=YCr(A);t.abort=Fra,t.onHeaders(a,ce,B,BUn(a)),t.onData(Buffer.from(ne)),t.onComplete(fe),HCr(F,r)}function B(){}return!0}function Ora(){let e=this[Nra],t=this[kra],r=this[Dra];return function(a,o){if(e.isMockActive)try{wUn.call(this,a,o)}catch(l){if(l instanceof QIe){let A=e[xra]();if(A===!1)throw new QIe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(TUn(A,t))r.call(this,a,o);else throw new QIe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function TUn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>x$(n,r.host)))}function Mra(e){if(e){let{agent:t,...r}=e;return r}}RUn.exports={getResponseData:EUn,getMockDispatch:SUn,addMockDispatch:Pra,deleteMockDispatch:HCr,buildKey:vUn,generateKeyValues:YCr,matchValue:x$,getResponse:Wra,getStatusText:BUn,mockDispatch:wUn,buildMockDispatch:Ora,checkNetConnect:TUn,buildMockOptions:Mra,getHeaderByName:_Un}});var zCr=H((eou,jCr)=>{"use strict";var{getResponseData:Hra,buildKey:Yra,addMockDispatch:QCr}=PHe(),{kDispatches:Xft,kDispatchKey:Jft,kDefaultHeaders:XCr,kDefaultTrailers:JCr,kContentLength:UCr,kMockDispatch:Uft}=JBe(),{InvalidArgumentError:NX}=Ub(),{buildURL:Qra}=zC(),UBe=class{constructor(t){this[Uft]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new NX("waitInMs must be a valid integer > 0");return this[Uft].delay=t,this}persist(){return this[Uft].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new NX("repeatTimes must be a valid integer > 0");return this[Uft].times=t,this}},KCr=class{constructor(t,r){if(typeof t!="object")throw new NX("opts must be an object");if(typeof t.path>"u")throw new NX("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Qra(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Jft]=Yra(t),this[Xft]=r,this[XCr]={},this[JCr]={},this[UCr]=!1}createMockScopeDispatchData(t,r,n={}){let a=Hra(r),o=this[UCr]?{"content-length":a.length}:{},l={...this[XCr],...o,...n.headers},A={...this[JCr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t,r,n){if(typeof t>"u")throw new NX("statusCode must be defined");if(typeof r>"u")throw new NX("data must be defined");if(typeof n!="object")throw new NX("responseOptions must be an object")}reply(t){if(typeof t=="function"){let A=I=>{let C=t(I);if(typeof C!="object")throw new NX("reply options callback must return an object");let{statusCode:b,data:E="",responseOptions:N={}}=C;return this.validateReplyParameters(b,E,N),{...this.createMockScopeDispatchData(b,E,N)}},f=QCr(this[Xft],this[Jft],A);return new UBe(f)}let[r,n="",a={}]=[...arguments];this.validateReplyParameters(r,n,a);let o=this.createMockScopeDispatchData(r,n,a),l=QCr(this[Xft],this[Jft],o);return new UBe(l)}replyWithError(t){if(typeof t>"u")throw new NX("error must be defined");let r=QCr(this[Xft],this[Jft],{error:t});return new UBe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new NX("headers must be defined");return this[XCr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new NX("trailers must be defined");return this[JCr]=t,this}replyContentLength(){return this[UCr]=!0,this}};jCr.exports.MockInterceptor=KCr;jCr.exports.MockScope=UBe});var e_r=H((tou,ZUn)=>{"use strict";var{promisify:Xra}=wt("util"),Jra=xHe(),{buildMockDispatch:Ura}=PHe(),{kDispatches:NUn,kMockAgent:DUn,kClose:kUn,kOriginalClose:xUn,kOrigin:GUn,kOriginalDispatch:Kra,kConnected:qCr}=JBe(),{MockInterceptor:jra}=zCr(),FUn=GE(),{InvalidArgumentError:zra}=Ub(),$Cr=class extends Jra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new zra("Argument opts.agent must implement Agent");this[DUn]=r.agent,this[GUn]=t,this[NUn]=[],this[qCr]=1,this[Kra]=this.dispatch,this[xUn]=this.close.bind(this),this.dispatch=Ura.call(this),this.close=this[kUn]}get[FUn.kConnected](){return this[qCr]}intercept(t){return new jra(t,this[NUn])}async[kUn](){await Xra(this[xUn])(),this[qCr]=0,this[DUn][FUn.kClients].delete(this[GUn])}};ZUn.exports=$Cr});var n_r=H((rou,HUn)=>{"use strict";var{promisify:qra}=wt("util"),$ra=WBe(),{buildMockDispatch:ena}=PHe(),{kDispatches:LUn,kMockAgent:VUn,kClose:PUn,kOriginalClose:WUn,kOrigin:OUn,kOriginalDispatch:tna,kConnected:t_r}=JBe(),{MockInterceptor:rna}=zCr(),MUn=GE(),{InvalidArgumentError:nna}=Ub(),r_r=class extends $ra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new nna("Argument opts.agent must implement Agent");this[VUn]=r.agent,this[OUn]=t,this[LUn]=[],this[t_r]=1,this[tna]=this.dispatch,this[WUn]=this.close.bind(this),this.dispatch=ena.call(this),this.close=this[PUn]}get[MUn.kConnected](){return this[t_r]}intercept(t){return new rna(t,this[LUn])}async[PUn](){await qra(this[WUn])(),this[t_r]=0,this[VUn][MUn.kClients].delete(this[OUn])}};HUn.exports=r_r});var QUn=H((iou,YUn)=>{"use strict";var ina={pronoun:"it",is:"is",was:"was",this:"this"},sna={pronoun:"they",is:"are",was:"were",this:"these"};YUn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?ina:sna,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var JUn=H((oou,XUn)=>{"use strict";var{Transform:ona}=wt("stream"),{Console:ana}=wt("console");XUn.exports=class{constructor({disableColors:t}={}){this.transform=new ona({transform(r,n,a){a(null,r)}}),this.logger=new ana({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?"\u2705":"\u274C",Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var zUn=H((aou,jUn)=>{"use strict";var{kClients:XIe}=GE(),cna=LHe(),{kAgent:i_r,kMockAgentSet:Kft,kMockAgentGet:UUn,kDispatches:s_r,kIsMockActive:jft,kNetConnect:JIe,kGetNetConnect:lna,kOptions:zft,kFactory:qft}=JBe(),una=e_r(),gna=n_r(),{matchValue:Ana,buildMockOptions:dna}=PHe(),{InvalidArgumentError:KUn,UndiciError:pna}=Ub(),fna=mft(),Ina=QUn(),hna=JUn(),o_r=class{constructor(t){this.value=t}deref(){return this.value}},a_r=class extends fna{constructor(t){if(super(t),this[JIe]=!0,this[jft]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new KUn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new cna(t);this[i_r]=r,this[XIe]=r[XIe],this[zft]=dna(t)}get(t){let r=this[UUn](t);return r||(r=this[qft](t),this[Kft](t,r)),r}dispatch(t,r){return this.get(t.origin),this[i_r].dispatch(t,r)}async close(){await this[i_r].close(),this[XIe].clear()}deactivate(){this[jft]=!1}activate(){this[jft]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[JIe])?this[JIe].push(t):this[JIe]=[t];else if(typeof t>"u")this[JIe]=!0;else throw new KUn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[JIe]=!1}get isMockActive(){return this[jft]}[Kft](t,r){this[XIe].set(t,new o_r(r))}[qft](t){let r=Object.assign({agent:this},this[zft]);return this[zft]&&this[zft].connections===1?new una(t,r):new gna(t,r)}[UUn](t){let r=this[XIe].get(t);if(r)return r.deref();if(typeof t!="string"){let n=this[qft]("http://localhost:9999");return this[Kft](t,n),n}for(let[n,a]of Array.from(this[XIe])){let o=a.deref();if(o&&typeof n!="string"&&Ana(n,t)){let l=this[qft](t);return this[Kft](t,l),l[s_r]=o[s_r],l}}}[lna](){return this[JIe]}pendingInterceptors(){let t=this[XIe];return Array.from(t.entries()).flatMap(([r,n])=>n.deref()[s_r].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new hna}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new Ina("interceptor","interceptors").pluralize(r.length);throw new pna(` ${n.count} ${n.noun} ${n.is} pending: ${t.format(r)} -`.trim())}};HUn.exports=n_r});var jUn=H((Isu,KUn)=>{"use strict";var{kProxy:rna,kClose:nna,kDestroy:ina,kInterceptors:sna}=GE(),{URL:QUn}=wt("url"),XUn=FHe(),ona=PBe(),ana=bHe(),{InvalidArgumentError:WHe,RequestAbortedError:cna}=Ub(),JUn=EHe(),VHe=Symbol("proxy agent"),zft=Symbol("proxy client"),PHe=Symbol("proxy headers"),i_r=Symbol("request tls settings"),lna=Symbol("proxy tls settings"),UUn=Symbol("connect endpoint function");function una(e){return e==="https:"?443:80}function gna(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new WHe("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function Ana(e,t){return new ona(e,t)}var s_r=class extends ana{constructor(t){if(super(t),this[rna]=gna(t),this[VHe]=new XUn(t),this[sna]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new WHe("Proxy opts.uri is mandatory");let{clientFactory:r=Ana}=t;if(typeof r!="function")throw new WHe("Proxy opts.clientFactory must be a function.");this[i_r]=t.requestTls,this[lna]=t.proxyTls,this[PHe]=t.headers||{};let n=new QUn(t.uri),{origin:a,port:o,host:l,username:A,password:f}=n;if(t.auth&&t.token)throw new WHe("opts.auth cannot be used in combination with opts.token");t.auth?this[PHe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[PHe]["proxy-authorization"]=t.token:A&&f&&(this[PHe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:${decodeURIComponent(f)}`).toString("base64")}`);let I=JUn({...t.proxyTls});this[UUn]=JUn({...t.requestTls}),this[zft]=r(n,{connect:I}),this[VHe]=new XUn({...t,connect:async(C,b)=>{let E=C.host;C.port||(E+=`:${una(C.protocol)}`);try{let{socket:N,statusCode:B}=await this[zft].connect({origin:a,port:o,path:E,signal:C.signal,headers:{...this[PHe],host:l}});if(B!==200&&(N.on("error",()=>{}).destroy(),b(new cna(`Proxy response (${B}) !== 200 when HTTP Tunneling`))),C.protocol!=="https:"){b(null,N);return}let F;this[i_r]?F=this[i_r].servername:F=C.servername,this[UUn]({...C,servername:F,httpSocket:N},b)}catch(N){b(N)}}})}dispatch(t,r){let{host:n}=new QUn(t.origin),a=dna(t.headers);return pna(a),this[VHe].dispatch({...t,headers:{...a,host:n}},r)}async[nna](){await this[VHe].close(),await this[zft].close()}async[ina](){await this[VHe].destroy(),await this[zft].destroy()}};function dna(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new WHe("Proxy-Authorization should be sent in ProxyAgent constructor")}KUn.exports=s_r});var tKn=H((hsu,eKn)=>{var JIe=wt("assert"),{kRetryHandlerDefaultRetry:zUn}=GE(),{RequestRetryError:qft}=Ub(),{isDisturbed:qUn,parseHeaders:fna,parseRangeHeader:$Un}=zC();function Ina(e){let t=Date.now();return new Date(e).getTime()-t}var o_r=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[zUn],retryAfter:E??!0,maxTimeout:A??30*1e3,timeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[zUn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,timeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:X,currentTimeout:ae}=r;if(ae=ae!=null&&ae>0?ae:b,l&&l!=="UND_ERR_REQ_RETRY"&&l!=="UND_ERR_SOCKET"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(X>C){a(t);return}let ne=A!=null&&A["retry-after"];ne&&(ne=Number(ne),ne=isNaN(ne)?Ina(ne):ne*1e3);let ce=ne>0?Math.min(ne,E):Math.min(ae*N**X,E);r.currentTimeout=ce,setTimeout(()=>a(null),ce)}onHeaders(t,r,n,a){let o=fna(r);if(this.retryCount+=1,t>=300)return this.abort(new qft("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let A=$Un(o["content-range"]);if(!A)return this.abort(new qft("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new qft("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:I,end:C=I}=A;return JIe(this.start===f,"content-range mismatch"),JIe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=$Un(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;JIe(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),JIe(Number.isFinite(f)),JIe(C!=null&&Number.isFinite(C)&&this.end!==C,"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return JIe(Number.isFinite(this.start)),JIe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,n,a)}let l=new qft("Request failed",t,{headers:o,count:this.retryCount});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||qUn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||qUn(this.opts.body))return this.handler.onError(n);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};eKn.exports=o_r});var UBe=H((msu,sKn)=>{"use strict";var rKn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:hna}=Ub(),mna=FHe();iKn()===void 0&&nKn(new mna);function nKn(e){if(!e||typeof e.dispatch!="function")throw new hna("Argument agent must implement Agent");Object.defineProperty(globalThis,rKn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function iKn(){return globalThis[rKn]}sKn.exports={setGlobalDispatcher:nKn,getGlobalDispatcher:iKn}});var aKn=H((_su,oKn)=>{"use strict";oKn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var UIe=H((ysu,AKn)=>{"use strict";var{kHeadersList:z9,kConstruct:Cna}=GE(),{kGuard:E8}=v$(),{kEnumerableProperty:b8}=zC(),{makeIterator:KBe,isValidHeaderName:OHe,isValidHeaderValue:lKn}=EM(),{webidl:sm}=xZ(),_na=wt("assert"),j9=Symbol("headers map"),Dk=Symbol("headers map sorted");function cKn(e){return e===10||e===13||e===9||e===32}function uKn(e){let t=0,r=e.length;for(;r>t&&cKn(e.charCodeAt(r-1));)--r;for(;r>t&&cKn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function gKn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function a_r(e,t,r){if(r=uKn(r),OHe(t)){if(!lKn(r))throw sm.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw sm.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[E8]==="immutable")throw new TypeError("immutable");return e[E8],e[z9].append(t,r)}var $ft=class e{cookies=null;constructor(t){t instanceof e?(this[j9]=new Map(t[j9]),this[Dk]=t[Dk],this.cookies=t.cookies===null?null:[...t.cookies]):(this[j9]=new Map(t),this[Dk]=null)}contains(t){return t=t.toLowerCase(),this[j9].has(t)}clear(){this[j9].clear(),this[Dk]=null,this.cookies=null}append(t,r){this[Dk]=null;let n=t.toLowerCase(),a=this[j9].get(n);if(a){let o=n==="cookie"?"; ":", ";this[j9].set(n,{name:a.name,value:`${a.value}${o}${r}`})}else this[j9].set(n,{name:t,value:r});n==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[Dk]=null;let n=t.toLowerCase();n==="set-cookie"&&(this.cookies=[r]),this[j9].set(n,{name:t,value:r})}delete(t){this[Dk]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[j9].delete(t)}get(t){let r=this[j9].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[j9])yield[t,r]}get entries(){let t={};if(this[j9].size)for(let{name:r,value:n}of this[j9].values())t[r]=n;return t}},jBe=class e{constructor(t=void 0){t!==Cna&&(this[z9]=new $ft,this[E8]="none",t!==void 0&&(t=sm.converters.HeadersInit(t),gKn(this,t)))}append(t,r){return sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=sm.converters.ByteString(t),r=sm.converters.ByteString(r),a_r(this,t,r)}delete(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=sm.converters.ByteString(t),!OHe(t))throw sm.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[E8]==="immutable")throw new TypeError("immutable");this[E8],this[z9].contains(t)&&this[z9].delete(t)}get(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=sm.converters.ByteString(t),!OHe(t))throw sm.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[z9].get(t)}has(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=sm.converters.ByteString(t),!OHe(t))throw sm.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[z9].contains(t)}set(t,r){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=sm.converters.ByteString(t),r=sm.converters.ByteString(r),r=uKn(r),OHe(t)){if(!lKn(r))throw sm.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw sm.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[E8]==="immutable")throw new TypeError("immutable");this[E8],this[z9].set(t,r)}getSetCookie(){sm.brandCheck(this,e);let t=this[z9].cookies;return t?[...t]:[]}get[Dk](){if(this[z9][Dk])return this[z9][Dk];let t=[],r=[...this[z9]].sort((a,o)=>a[0]t,"Headers","key")}return KBe(()=>[...this[Dk].values()],"Headers","key")}values(){if(sm.brandCheck(this,e),this[E8]==="immutable"){let t=this[Dk];return KBe(()=>t,"Headers","value")}return KBe(()=>[...this[Dk].values()],"Headers","value")}entries(){if(sm.brandCheck(this,e),this[E8]==="immutable"){let t=this[Dk];return KBe(()=>t,"Headers","key+value")}return KBe(()=>[...this[Dk].values()],"Headers","key+value")}forEach(t,r=globalThis){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}[Symbol.for("nodejs.util.inspect.custom")](){return sm.brandCheck(this,e),this[z9]}};jBe.prototype[Symbol.iterator]=jBe.prototype.entries;Object.defineProperties(jBe.prototype,{append:b8,delete:b8,get:b8,has:b8,set:b8,getSetCookie:b8,keys:b8,values:b8,entries:b8,forEach:b8,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});sm.converters.HeadersInit=function(e){if(sm.util.Type(e)==="Object")return e[Symbol.iterator]?sm.converters["sequence>"](e):sm.converters["record"](e);throw sm.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};AKn.exports={fill:gKn,Headers:jBe,HeadersList:$ft}});var nIt=H((bsu,_Kn)=>{"use strict";var{Headers:yna,HeadersList:dKn,fill:bna}=UIe(),{extractBody:pKn,cloneBody:Ena,mixinBody:Sna}=CHe(),u_r=zC(),{kEnumerableProperty:UW}=u_r,{isValidReasonPhrase:vna,isCancelled:Bna,isAborted:wna,isBlobLike:Tna,serializeJavascriptValueToJSONString:Rna,isErrorLike:Nna,isomorphicEncode:Dna}=EM(),{redirectStatusSet:kna,nullBodyStatus:xna,DOMException:fKn}=Xoe(),{kState:v2,kHeaders:$N,kGuard:zBe,kRealm:JW}=v$(),{webidl:Wh}=xZ(),{FormData:Gna}=dft(),{getGlobalOrigin:Fna}=BBe(),{URLSerializer:IKn}=wX(),{kHeadersList:c_r,kConstruct:Zna}=GE(),g_r=wt("assert"),{types:l_r}=wt("util"),mKn=globalThis.ReadableStream||wt("stream/web").ReadableStream,Lna=new TextEncoder("utf-8"),qBe=class e{static error(){let t={settingsObject:{}},r=new e;return r[v2]=tIt(),r[JW]=t,r[$N][c_r]=r[v2].headersList,r[$N][zBe]="immutable",r[$N][JW]=t,r}static json(t,r={}){Wh.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=Wh.converters.ResponseInit(r));let n=Lna.encode(Rna(t)),a=pKn(n),o={settingsObject:{}},l=new e;return l[JW]=o,l[$N][zBe]="response",l[$N][JW]=o,hKn(l,r,{body:a[0],type:"application/json"}),l}static redirect(t,r=302){let n={settingsObject:{}};Wh.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=Wh.converters.USVString(t),r=Wh.converters["unsigned short"](r);let a;try{a=new URL(t,Fna())}catch(A){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:A})}if(!kna.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[JW]=n,o[$N][zBe]="immutable",o[$N][JW]=n,o[v2].status=r;let l=Dna(IKn(a));return o[v2].headersList.append("location",l),o}constructor(t=null,r={}){t!==null&&(t=Wh.converters.BodyInit(t)),r=Wh.converters.ResponseInit(r),this[JW]={settingsObject:{}},this[v2]=rIt({}),this[$N]=new yna(Zna),this[$N][zBe]="response",this[$N][c_r]=this[v2].headersList,this[$N][JW]=this[JW];let n=null;if(t!=null){let[a,o]=pKn(t);n={body:a,type:o}}hKn(this,r,n)}get type(){return Wh.brandCheck(this,e),this[v2].type}get url(){Wh.brandCheck(this,e);let t=this[v2].urlList,r=t[t.length-1]??null;return r===null?"":IKn(r,!0)}get redirected(){return Wh.brandCheck(this,e),this[v2].urlList.length>1}get status(){return Wh.brandCheck(this,e),this[v2].status}get ok(){return Wh.brandCheck(this,e),this[v2].status>=200&&this[v2].status<=299}get statusText(){return Wh.brandCheck(this,e),this[v2].statusText}get headers(){return Wh.brandCheck(this,e),this[$N]}get body(){return Wh.brandCheck(this,e),this[v2].body?this[v2].body.stream:null}get bodyUsed(){return Wh.brandCheck(this,e),!!this[v2].body&&u_r.isDisturbed(this[v2].body.stream)}clone(){if(Wh.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw Wh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=A_r(this[v2]),r=new e;return r[v2]=t,r[JW]=this[JW],r[$N][c_r]=t.headersList,r[$N][zBe]=this[$N][zBe],r[$N][JW]=this[$N][JW],r}};Sna(qBe);Object.defineProperties(qBe.prototype,{type:UW,url:UW,status:UW,ok:UW,redirected:UW,statusText:UW,headers:UW,clone:UW,body:UW,bodyUsed:UW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(qBe,{json:UW,redirect:UW,error:UW});function A_r(e){if(e.internalResponse)return CKn(A_r(e.internalResponse),e.type);let t=rIt({...e,body:null});return e.body!=null&&(t.body=Ena(e.body)),t}function rIt(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new dKn(e.headersList):new dKn,urlList:e.urlList?[...e.urlList]:[]}}function tIt(e){let t=Nna(e);return rIt({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function eIt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return g_r(!(n in t)),r[n]=a,!0}})}function CKn(e,t){if(t==="basic")return eIt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return eIt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return eIt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return eIt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});g_r(!1)}function Vna(e,t=null){return g_r(Bna(e)),wna(e)?tIt(Object.assign(new fKn("The operation was aborted.","AbortError"),{cause:t})):tIt(Object.assign(new fKn("Request was cancelled."),{cause:t}))}function hKn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!vna(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[v2].status=t.status),"statusText"in t&&t.statusText!=null&&(e[v2].statusText=t.statusText),"headers"in t&&t.headers!=null&&bna(e[$N],t.headers),r){if(xna.includes(e.status))throw Wh.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[v2].body=r.body,r.type!=null&&!e[v2].headersList.contains("Content-Type")&&e[v2].headersList.append("content-type",r.type)}}Wh.converters.ReadableStream=Wh.interfaceConverter(mKn);Wh.converters.FormData=Wh.interfaceConverter(Gna);Wh.converters.URLSearchParams=Wh.interfaceConverter(URLSearchParams);Wh.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?Wh.converters.USVString(e):Tna(e)?Wh.converters.Blob(e,{strict:!1}):l_r.isArrayBuffer(e)||l_r.isTypedArray(e)||l_r.isDataView(e)?Wh.converters.BufferSource(e):u_r.isFormDataLike(e)?Wh.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?Wh.converters.URLSearchParams(e):Wh.converters.DOMString(e)};Wh.converters.BodyInit=function(e){return e instanceof mKn?Wh.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:Wh.converters.XMLHttpRequestBodyInit(e)};Wh.converters.ResponseInit=Wh.dictionaryConverter([{key:"status",converter:Wh.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:Wh.converters.ByteString,defaultValue:""},{key:"headers",converter:Wh.converters.HeadersInit}]);_Kn.exports={makeNetworkError:tIt,makeResponse:rIt,makeAppropriateNetworkError:Vna,filterResponse:CKn,Response:qBe,cloneResponse:A_r}});var YHe=H((Esu,BKn)=>{"use strict";var{extractBody:Pna,mixinBody:Wna,cloneBody:Ona}=CHe(),{Headers:yKn,fill:Mna,HeadersList:aIt}=UIe(),{FinalizationRegistry:Hna}=bCr()(),HHe=zC(),{isValidHTTPToken:Yna,sameOrigin:bKn,normalizeMethod:Qna,makePolicyContainer:Xna,normalizeMethodRecord:Jna}=EM(),{forbiddenMethodsSet:Una,corsSafeListedMethodsSet:Kna,referrerPolicy:jna,requestRedirect:zna,requestMode:qna,requestCredentials:$na,requestCache:eia,requestDuplex:tia}=Xoe(),{kEnumerableProperty:oT}=HHe,{kHeaders:yG,kSignal:MHe,kState:P1,kGuard:iIt,kRealm:KW}=v$(),{webidl:Ff}=xZ(),{getGlobalOrigin:ria}=BBe(),{URLSerializer:nia}=wX(),{kHeadersList:sIt,kConstruct:oIt}=GE(),iia=wt("assert"),{getMaxListeners:EKn,setMaxListeners:SKn,getEventListeners:sia,defaultMaxListeners:vKn}=wt("events"),d_r=globalThis.TransformStream,oia=Symbol("abortController"),aia=new Hna(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),KIe=class e{constructor(t,r={}){if(t===oIt)return;Ff.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=Ff.converters.RequestInfo(t),r=Ff.converters.RequestInit(r),this[KW]={settingsObject:{baseUrl:ria(),get origin(){return this.baseUrl?.origin},policyContainer:Xna()}};let n=null,a=null,o=this[KW].settingsObject.baseUrl,l=null;if(typeof t=="string"){let Q;try{Q=new URL(t,o)}catch(X){throw new TypeError("Failed to parse URL from "+t,{cause:X})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);n=cIt({urlList:[Q]}),a="cors"}else iia(t instanceof e),n=t[P1],l=t[MHe];let A=this[KW].settingsObject.origin,f="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&bKn(n.window,A)&&(f=n.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),n=cIt({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:this[KW].settingsObject,window:f,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let I=Object.keys(r).length!==0;if(I&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),r.referrer!==void 0){let Q=r.referrer;if(Q==="")n.referrer="no-referrer";else{let X;try{X=new URL(Q,o)}catch(ae){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:ae})}X.protocol==="about:"&&X.hostname==="client"||A&&!bKn(X,this[KW].settingsObject.baseUrl)?n.referrer="client":n.referrer=X}}r.referrerPolicy!==void 0&&(n.referrerPolicy=r.referrerPolicy);let C;if(r.mode!==void 0?C=r.mode:C=a,C==="navigate")throw Ff.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(C!=null&&(n.mode=C),r.credentials!==void 0&&(n.credentials=r.credentials),r.cache!==void 0&&(n.cache=r.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(n.redirect=r.redirect),r.integrity!=null&&(n.integrity=String(r.integrity)),r.keepalive!==void 0&&(n.keepalive=!!r.keepalive),r.method!==void 0){let Q=r.method;if(!Yna(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);if(Una.has(Q.toUpperCase()))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=Jna[Q]??Qna(Q),n.method=Q}r.signal!==void 0&&(l=r.signal),this[P1]=n;let b=new AbortController;if(this[MHe]=b.signal,this[MHe][KW]=this[KW],l!=null){if(!l||typeof l.aborted!="boolean"||typeof l.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(l.aborted)b.abort(l.reason);else{this[oia]=b;let Q=new WeakRef(b),X=function(){let ae=Q.deref();ae!==void 0&&ae.abort(this.reason)};try{(typeof EKn=="function"&&EKn(l)===vKn||sia(l,"abort").length>=vKn)&&SKn(100,l)}catch{}HHe.addAbortListener(l,X),aia.register(b,{signal:l,abort:X})}}if(this[yG]=new yKn(oIt),this[yG][sIt]=n.headersList,this[yG][iIt]="request",this[yG][KW]=this[KW],C==="no-cors"){if(!Kna.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);this[yG][iIt]="request-no-cors"}if(I){let Q=this[yG][sIt],X=r.headers!==void 0?r.headers:new aIt(Q);if(Q.clear(),X instanceof aIt){for(let[ae,ne]of X)Q.append(ae,ne);Q.cookies=X.cookies}else Mna(this[yG],X)}let E=t instanceof e?t[P1].body:null;if((r.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let N=null;if(r.body!=null){let[Q,X]=Pna(r.body,n.keepalive);N=Q,X&&!this[yG][sIt].contains("content-type")&&this[yG].append("content-type",X)}let B=N??E;if(B!=null&&B.source==null){if(N!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let F=B;if(N==null&&E!=null){if(HHe.isDisturbed(E.stream)||E.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");d_r||(d_r=wt("stream/web").TransformStream);let Q=new d_r;E.stream.pipeThrough(Q),F={source:E.source,length:E.length,stream:Q.readable}}this[P1].body=F}get method(){return Ff.brandCheck(this,e),this[P1].method}get url(){return Ff.brandCheck(this,e),nia(this[P1].url)}get headers(){return Ff.brandCheck(this,e),this[yG]}get destination(){return Ff.brandCheck(this,e),this[P1].destination}get referrer(){return Ff.brandCheck(this,e),this[P1].referrer==="no-referrer"?"":this[P1].referrer==="client"?"about:client":this[P1].referrer.toString()}get referrerPolicy(){return Ff.brandCheck(this,e),this[P1].referrerPolicy}get mode(){return Ff.brandCheck(this,e),this[P1].mode}get credentials(){return this[P1].credentials}get cache(){return Ff.brandCheck(this,e),this[P1].cache}get redirect(){return Ff.brandCheck(this,e),this[P1].redirect}get integrity(){return Ff.brandCheck(this,e),this[P1].integrity}get keepalive(){return Ff.brandCheck(this,e),this[P1].keepalive}get isReloadNavigation(){return Ff.brandCheck(this,e),this[P1].reloadNavigation}get isHistoryNavigation(){return Ff.brandCheck(this,e),this[P1].historyNavigation}get signal(){return Ff.brandCheck(this,e),this[MHe]}get body(){return Ff.brandCheck(this,e),this[P1].body?this[P1].body.stream:null}get bodyUsed(){return Ff.brandCheck(this,e),!!this[P1].body&&HHe.isDisturbed(this[P1].body.stream)}get duplex(){return Ff.brandCheck(this,e),"half"}clone(){if(Ff.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=cia(this[P1]),r=new e(oIt);r[P1]=t,r[KW]=this[KW],r[yG]=new yKn(oIt),r[yG][sIt]=t.headersList,r[yG][iIt]=this[yG][iIt],r[yG][KW]=this[yG][KW];let n=new AbortController;return this.signal.aborted?n.abort(this.signal.reason):HHe.addAbortListener(this.signal,()=>{n.abort(this.signal.reason)}),r[MHe]=n.signal,r}};Wna(KIe);function cIt(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new aIt(e.headersList):new aIt};return t.url=t.urlList[0],t}function cia(e){let t=cIt({...e,body:null});return e.body!=null&&(t.body=Ona(e.body)),t}Object.defineProperties(KIe.prototype,{method:oT,url:oT,headers:oT,redirect:oT,clone:oT,signal:oT,duplex:oT,destination:oT,body:oT,bodyUsed:oT,isHistoryNavigation:oT,isReloadNavigation:oT,keepalive:oT,integrity:oT,cache:oT,credentials:oT,attribute:oT,referrerPolicy:oT,referrer:oT,mode:oT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Ff.converters.Request=Ff.interfaceConverter(KIe);Ff.converters.RequestInfo=function(e){return typeof e=="string"?Ff.converters.USVString(e):e instanceof KIe?Ff.converters.Request(e):Ff.converters.USVString(e)};Ff.converters.AbortSignal=Ff.interfaceConverter(AbortSignal);Ff.converters.RequestInit=Ff.dictionaryConverter([{key:"method",converter:Ff.converters.ByteString},{key:"headers",converter:Ff.converters.HeadersInit},{key:"body",converter:Ff.nullableConverter(Ff.converters.BodyInit)},{key:"referrer",converter:Ff.converters.USVString},{key:"referrerPolicy",converter:Ff.converters.DOMString,allowedValues:jna},{key:"mode",converter:Ff.converters.DOMString,allowedValues:qna},{key:"credentials",converter:Ff.converters.DOMString,allowedValues:$na},{key:"cache",converter:Ff.converters.DOMString,allowedValues:eia},{key:"redirect",converter:Ff.converters.DOMString,allowedValues:zna},{key:"integrity",converter:Ff.converters.DOMString},{key:"keepalive",converter:Ff.converters.boolean},{key:"signal",converter:Ff.nullableConverter(e=>Ff.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:Ff.converters.any},{key:"duplex",converter:Ff.converters.DOMString,allowedValues:tia}]);BKn.exports={Request:KIe,makeRequest:cIt}});var fIt=H((Ssu,WKn)=>{"use strict";var{Response:lia,makeNetworkError:Kb,makeAppropriateNetworkError:lIt,filterResponse:p_r,makeResponse:uIt}=nIt(),{Headers:wKn}=UIe(),{Request:uia,makeRequest:gia}=YHe(),QHe=wt("zlib"),{bytesMatch:Aia,makePolicyContainer:dia,clonePolicyContainer:pia,requestBadPort:fia,TAOCheck:Iia,appendRequestOriginHeader:hia,responseLocationURL:mia,requestCurrentURL:S8,setRequestReferrerPolicyOnRedirect:Cia,tryUpgradeRequestToAPotentiallyTrustworthyURL:_ia,createOpaqueTimingInfo:E_r,appendFetchMetadata:yia,corsCheck:bia,crossOriginResourcePolicyCheck:Eia,determineRequestsReferrer:Sia,coarsenedSharedCurrentTime:S_r,createDeferredPromise:via,isBlobLike:Bia,sameOrigin:__r,isCancelled:ewe,isAborted:TKn,isErrorLike:wia,fullyReadBody:kKn,readableStreamClose:Tia,isomorphicEncode:y_r,urlIsLocal:Ria,urlIsHttpHttpsScheme:v_r,urlHasHttpsScheme:Nia}=EM(),{kState:b_r,kHeaders:f_r,kGuard:Dia,kRealm:RKn}=v$(),twe=wt("assert"),{safelyExtractBody:gIt}=CHe(),{redirectStatusSet:xKn,nullBodyStatus:GKn,safeMethodsSet:kia,requestBodyHeader:xia,subresourceSet:Gia,DOMException:AIt}=Xoe(),{kHeadersList:$Be}=GE(),Fia=wt("events"),{Readable:Zia,pipeline:Lia}=wt("stream"),{addAbortListener:Via,isErrored:Pia,isReadable:dIt,nodeMajor:NKn,nodeMinor:Wia}=zC(),{dataURLProcessor:Oia,serializeAMimeType:Mia}=wX(),{TransformStream:Hia}=wt("stream/web"),{getGlobalDispatcher:Yia}=UBe(),{webidl:Qia}=xZ(),{STATUS_CODES:Xia}=wt("http"),Jia=["GET","HEAD"],I_r,h_r=globalThis.ReadableStream,pIt=class extends Fia{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new AIt("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function Uia(e,t={}){Qia.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=via(),n;try{n=new uia(e,t)}catch(E){return r.reject(E),r.promise}let a=n[b_r];if(n.signal.aborted)return m_r(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=null,f=!1,I=null;return Via(n.signal,()=>{f=!0,twe(I!=null),I.abort(n.signal.reason),m_r(r,a,l,n.signal.reason)}),I=ZKn({request:a,processResponseEndOfBody:E=>FKn(E,"fetch"),processResponse:E=>{if(f)return Promise.resolve();if(E.aborted)return m_r(r,a,l,I.serializedAbortReason),Promise.resolve();if(E.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:E.error})),Promise.resolve();l=new lia,l[b_r]=E,l[RKn]=A,l[f_r][$Be]=E.headersList,l[f_r][Dia]="immutable",l[f_r][RKn]=A,r.resolve(l)},dispatcher:t.dispatcher??Yia()}),r.promise}function FKn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;v_r(r)&&n!==null&&(e.timingAllowPassed||(n=E_r({startTime:n.startTime}),a=""),n.endTime=S_r(),e.timingInfo=n,Kia(n,r,t,globalThis,a))}function Kia(e,t,r,n,a){(NKn>18||NKn===18&&Wia>=2)&&performance.markResourceTiming(e,t.href,r,n,a)}function m_r(e,t,r,n){if(n||(n=new AIt("The operation was aborted.","AbortError")),e.reject(n),t.body!=null&&dIt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[b_r];a.body!=null&&dIt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function ZKn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A}){let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=S_r(I),b=E_r({startTime:C}),E={controller:new pIt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return twe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=pia(e.client.policyContainer):e.policyContainer=dia()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,Gia.has(e.destination),LKn(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function LKn(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!Ria(S8(r))&&(n=Kb("local URLs only")),_ia(r),fia(r)==="blocked"&&(n=Kb("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=Sia(r)),n===null&&(n=await(async()=>{let o=S8(r);return __r(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await DKn(e)):r.mode==="same-origin"?Kb('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?Kb('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await DKn(e)):v_r(S8(r))?(r.responseTainting="cors",await VKn(e)):Kb("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=p_r(n,"basic"):r.responseTainting==="cors"?n=p_r(n,"cors"):r.responseTainting==="opaque"?n=p_r(n,"opaque"):twe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(n=a=Kb()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||GKn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>C_r(e,Kb(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!Aia(A,r.integrity)){o("integrity mismatch");return}n.body=gIt(A)[0],C_r(e,n)};await kKn(n.body,l,o)}else C_r(e,n)}function DKn(e){if(ewe(e)&&e.request.redirectCount===0)return Promise.resolve(lIt(e));let{request:t}=e,{protocol:r}=S8(t);switch(r){case"about:":return Promise.resolve(Kb("about scheme is not supported"));case"blob:":{I_r||(I_r=wt("buffer").resolveObjectURL);let n=S8(t);if(n.search.length!==0)return Promise.resolve(Kb("NetworkError when attempting to fetch resource."));let a=I_r(n.toString());if(t.method!=="GET"||!Bia(a))return Promise.resolve(Kb("invalid method"));let o=gIt(a),l=o[0],A=y_r(`${l.length}`),f=o[1]??"",I=uIt({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:A}],["content-type",{name:"Content-Type",value:f}]]});return I.body=l,Promise.resolve(I)}case"data:":{let n=S8(t),a=Oia(n);if(a==="failure")return Promise.resolve(Kb("failed to fetch the data URL"));let o=Mia(a.mimeType);return Promise.resolve(uIt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:gIt(a.body)[0]}))}case"file:":return Promise.resolve(Kb("not implemented... yet..."));case"http:":case"https:":return VKn(e).catch(n=>Kb(n));default:return Promise.resolve(Kb("unknown scheme"))}}function jia(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function C_r(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=E_r({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let n=(o,l)=>{l.enqueue(o)},a=new Hia({start(){},transform:n,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let n=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>n(null));else return kKn(t.body,n,a);return Promise.resolve()}}async function VKn(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await PKn(e),t.responseTainting==="cors"&&bia(t,r)==="failure")return Kb("cors failure");Iia(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&Eia(t.origin,t.client,t.destination,n)==="blocked"?Kb("blocked"):(xKn.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=Kb("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await zia(e,r):twe(!1)),r.timingInfo=a,r)}function zia(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=mia(n,S8(r).hash),a==null)return t}catch(l){return Promise.resolve(Kb(l))}if(!v_r(a))return Promise.resolve(Kb("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(Kb("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!__r(r,a))return Promise.resolve(Kb('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(Kb('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(Kb());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!Jia.includes(r.method)){r.method="GET",r.body=null;for(let l of xia)r.headersList.delete(l)}__r(S8(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(twe(r.body.source!=null),r.body=gIt(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=S_r(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),Cia(r,n),LKn(e,!0)}async function PKn(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=gia(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=y_r(`${C}`)),b!=null&&o.headersList.append("content-length",b),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",y_r(o.referrer.href)),hia(o),yia(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(Nia(S8(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),A==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,l==null){if(o.mode==="only-if-cached")return Kb("only if cached");let E=await qia(a,I,r);!kia.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range")&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?Kb():ewe(e)?lIt(e):Kb("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(ewe(e))return lIt(e);e.controller.connection.destroy(),l=await PKn(e,t,!0)}return l}async function qia(e,t=!1,r=!1){twe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B){this.destroyed||(this.destroyed=!0,this.abort?.(B??new AIt("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(X){ewe(e)||(yield X,e.processRequestBodyChunkLength?.(X.byteLength))},F=()=>{ewe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=X=>{ewe(e)||(X.name==="AbortError"?e.controller.abort():e.controller.terminate(X))};f=async function*(){try{for await(let X of n.body.stream)yield*B(X);F()}catch(X){Q(X)}}()}try{let{body:B,status:F,statusText:Q,headersList:X,socket:ae}=await N({body:f});if(ae)a=uIt({status:F,statusText:Q,headersList:X,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=uIt({status:F,statusText:Q,headersList:X})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),lIt(e,B)):Kb(B)}let I=()=>{e.controller.resume()},C=B=>{e.controller.abort(B)};h_r||(h_r=wt("stream/web").ReadableStream);let b=new h_r({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)}},{highWaterMark:0,size(){return 1}});a.body={stream:b},e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:Q,value:X}=await e.controller.next();if(TKn(e))break;B=Q?void 0:X}catch(Q){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=Q,F=!0)}if(B===void 0){Tia(e.controller.controller),jia(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}if(e.controller.controller.enqueue(new Uint8Array(B)),Pia(b)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function E(B){TKn(e)?(a.aborted=!0,dIt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):dIt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:wia(B)?B:void 0})),e.controller.connection.destroy()}return a;async function N({body:B}){let F=S8(n),Q=e.controller.dispatcher;return new Promise((X,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:e.controller.dispatcher.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;ce.destroyed?ne(new AIt("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new wKn;if(Array.isArray(ce))for(let et=0;etje.trim()):ct.toLowerCase()==="location"&&(be=Me),Se[$Be].append(ct,Me)}else{let et=Object.keys(ce);for(let ct of et){let Me=ce[ct];ct.toLowerCase()==="content-encoding"?de=Me.toLowerCase().split(",").map(je=>je.trim()).reverse():ct.toLowerCase()==="location"&&(be=Me),Se[$Be].append(ct,Me)}}this.body=new Zia({read:fe});let De=[],k=n.redirect==="follow"&&be&&xKn.has(ne);if(n.method!=="HEAD"&&n.method!=="CONNECT"&&!GKn.includes(ne)&&!k)for(let et of de)if(et==="x-gzip"||et==="gzip")De.push(QHe.createGunzip({flush:QHe.constants.Z_SYNC_FLUSH,finishFlush:QHe.constants.Z_SYNC_FLUSH}));else if(et==="deflate")De.push(QHe.createInflate());else if(et==="br")De.push(QHe.createBrotliDecompress());else{De.length=0;break}return X({status:ne,statusText:ue,headersList:Se[$Be],body:De.length?Lia(this.body,...De,()=>{}):this.body.on("error",()=>{})}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new wKn;for(let de=0;de{"use strict";OKn.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var HKn=H((Bsu,MKn)=>{"use strict";var{webidl:jW}=xZ(),IIt=Symbol("ProgressEvent state"),w_r=class e extends Event{constructor(t,r={}){t=jW.converters.DOMString(t),r=jW.converters.ProgressEventInit(r??{}),super(t,r),this[IIt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return jW.brandCheck(this,e),this[IIt].lengthComputable}get loaded(){return jW.brandCheck(this,e),this[IIt].loaded}get total(){return jW.brandCheck(this,e),this[IIt].total}};jW.converters.ProgressEventInit=jW.dictionaryConverter([{key:"lengthComputable",converter:jW.converters.boolean,defaultValue:!1},{key:"loaded",converter:jW.converters["unsigned long long"],defaultValue:0},{key:"total",converter:jW.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:jW.converters.boolean,defaultValue:!1},{key:"cancelable",converter:jW.converters.boolean,defaultValue:!1},{key:"composed",converter:jW.converters.boolean,defaultValue:!1}]);MKn.exports={ProgressEvent:w_r}});var QKn=H((wsu,YKn)=>{"use strict";function $ia(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}YKn.exports={getEncoding:$ia}});var $Kn=H((Tsu,qKn)=>{"use strict";var{kState:rwe,kError:T_r,kResult:XKn,kAborted:XHe,kLastProgressEventFired:R_r}=B_r(),{ProgressEvent:esa}=HKn(),{getEncoding:JKn}=QKn(),{DOMException:tsa}=Xoe(),{serializeAMimeType:rsa,parseMIMEType:UKn}=wX(),{types:nsa}=wt("util"),{StringDecoder:KKn}=wt("string_decoder"),{btoa:jKn}=wt("buffer"),isa={enumerable:!0,writable:!1,configurable:!1};function ssa(e,t,r,n){if(e[rwe]==="loading")throw new tsa("Invalid state","InvalidStateError");e[rwe]="loading",e[XKn]=null,e[T_r]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[XHe];)try{let{done:I,value:C}=await A;if(f&&!e[XHe]&&queueMicrotask(()=>{eae("loadstart",e)}),f=!1,!I&&nsa.isUint8Array(C))l.push(C),(e[R_r]===void 0||Date.now()-e[R_r]>=50)&&!e[XHe]&&(e[R_r]=Date.now(),queueMicrotask(()=>{eae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[rwe]="done";try{let b=osa(l,r,t.type,n);if(e[XHe])return;e[XKn]=b,eae("load",e)}catch(b){e[T_r]=b,eae("error",e)}e[rwe]!=="loading"&&eae("loadend",e)});break}}catch(I){if(e[XHe])return;queueMicrotask(()=>{e[rwe]="done",e[T_r]=I,eae("error",e),e[rwe]!=="loading"&&eae("loadend",e)});break}})()}function eae(e,t){let r=new esa(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function osa(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=UKn(r||"application/octet-stream");o!=="failure"&&(a+=rsa(o)),a+=";base64,";let l=new KKn("latin1");for(let A of e)a+=jKn(l.write(A));return a+=jKn(l.end()),a}case"Text":{let a="failure";if(n&&(a=JKn(n)),a==="failure"&&r){let o=UKn(r);o!=="failure"&&(a=JKn(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),asa(e,a)}case"ArrayBuffer":return zKn(e).buffer;case"BinaryString":{let a="",o=new KKn("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function asa(e,t){let r=zKn(e),n=csa(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function csa(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function zKn(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}qKn.exports={staticPropertyDescriptors:isa,readOperation:ssa,fireAProgressEvent:eae}});var n8n=H((Rsu,r8n)=>{"use strict";var{staticPropertyDescriptors:nwe,readOperation:hIt,fireAProgressEvent:e8n}=$Kn(),{kState:jIe,kError:t8n,kResult:mIt,kEvents:I0,kAborted:lsa}=B_r(),{webidl:nb}=xZ(),{kEnumerableProperty:q9}=zC(),DX=class e extends EventTarget{constructor(){super(),this[jIe]="empty",this[mIt]=null,this[t8n]=null,this[I0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=nb.converters.Blob(t,{strict:!1}),hIt(this,t,"ArrayBuffer")}readAsBinaryString(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=nb.converters.Blob(t,{strict:!1}),hIt(this,t,"BinaryString")}readAsText(t,r=void 0){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=nb.converters.Blob(t,{strict:!1}),r!==void 0&&(r=nb.converters.DOMString(r)),hIt(this,t,"Text",r)}readAsDataURL(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=nb.converters.Blob(t,{strict:!1}),hIt(this,t,"DataURL")}abort(){if(this[jIe]==="empty"||this[jIe]==="done"){this[mIt]=null;return}this[jIe]==="loading"&&(this[jIe]="done",this[mIt]=null),this[lsa]=!0,e8n("abort",this),this[jIe]!=="loading"&&e8n("loadend",this)}get readyState(){switch(nb.brandCheck(this,e),this[jIe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return nb.brandCheck(this,e),this[mIt]}get error(){return nb.brandCheck(this,e),this[t8n]}get onloadend(){return nb.brandCheck(this,e),this[I0].loadend}set onloadend(t){nb.brandCheck(this,e),this[I0].loadend&&this.removeEventListener("loadend",this[I0].loadend),typeof t=="function"?(this[I0].loadend=t,this.addEventListener("loadend",t)):this[I0].loadend=null}get onerror(){return nb.brandCheck(this,e),this[I0].error}set onerror(t){nb.brandCheck(this,e),this[I0].error&&this.removeEventListener("error",this[I0].error),typeof t=="function"?(this[I0].error=t,this.addEventListener("error",t)):this[I0].error=null}get onloadstart(){return nb.brandCheck(this,e),this[I0].loadstart}set onloadstart(t){nb.brandCheck(this,e),this[I0].loadstart&&this.removeEventListener("loadstart",this[I0].loadstart),typeof t=="function"?(this[I0].loadstart=t,this.addEventListener("loadstart",t)):this[I0].loadstart=null}get onprogress(){return nb.brandCheck(this,e),this[I0].progress}set onprogress(t){nb.brandCheck(this,e),this[I0].progress&&this.removeEventListener("progress",this[I0].progress),typeof t=="function"?(this[I0].progress=t,this.addEventListener("progress",t)):this[I0].progress=null}get onload(){return nb.brandCheck(this,e),this[I0].load}set onload(t){nb.brandCheck(this,e),this[I0].load&&this.removeEventListener("load",this[I0].load),typeof t=="function"?(this[I0].load=t,this.addEventListener("load",t)):this[I0].load=null}get onabort(){return nb.brandCheck(this,e),this[I0].abort}set onabort(t){nb.brandCheck(this,e),this[I0].abort&&this.removeEventListener("abort",this[I0].abort),typeof t=="function"?(this[I0].abort=t,this.addEventListener("abort",t)):this[I0].abort=null}};DX.EMPTY=DX.prototype.EMPTY=0;DX.LOADING=DX.prototype.LOADING=1;DX.DONE=DX.prototype.DONE=2;Object.defineProperties(DX.prototype,{EMPTY:nwe,LOADING:nwe,DONE:nwe,readAsArrayBuffer:q9,readAsBinaryString:q9,readAsText:q9,readAsDataURL:q9,abort:q9,readyState:q9,result:q9,error:q9,onloadstart:q9,onprogress:q9,onload:q9,onabort:q9,onerror:q9,onloadend:q9,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(DX,{EMPTY:nwe,LOADING:nwe,DONE:nwe});r8n.exports={FileReader:DX}});var CIt=H((Nsu,i8n)=>{"use strict";i8n.exports={kConstruct:GE().kConstruct}});var a8n=H((Dsu,o8n)=>{"use strict";var usa=wt("assert"),{URLSerializer:s8n}=wX(),{isValidHeaderName:gsa}=EM();function Asa(e,t,r=!1){let n=s8n(e,r),a=s8n(t,r);return n===a}function dsa(e){usa(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!gsa(r))continue}else continue;t.push(r)}return t}o8n.exports={urlEquals:Asa,fieldValues:dsa}});var d8n=H((ksu,A8n)=>{"use strict";var{kConstruct:psa}=CIt(),{urlEquals:fsa,fieldValues:N_r}=a8n(),{kEnumerableProperty:zIe,isDisturbed:Isa}=zC(),{kHeadersList:c8n}=GE(),{webidl:Lp}=xZ(),{Response:u8n,cloneResponse:hsa}=nIt(),{Request:v8}=YHe(),{kState:VZ,kHeaders:_It,kGuard:l8n,kRealm:msa}=v$(),{fetching:Csa}=fIt(),{urlIsHttpHttpsScheme:yIt,createDeferredPromise:iwe,readAllBytes:_sa}=EM(),D_r=wt("assert"),{getGlobalDispatcher:ysa}=UBe(),bIt=class e{#e;constructor(){arguments[0]!==psa&&Lp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.CacheQueryOptions(r);let n=await this.matchAll(t,r);if(n.length!==0)return n[0]}async matchAll(t=void 0,r={}){Lp.brandCheck(this,e),t!==void 0&&(t=Lp.converters.RequestInfo(t)),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new v8(t)[VZ]);let a=[];if(t===void 0)for(let l of this.#e)a.push(l[1]);else{let l=this.#n(n,r);for(let A of l)a.push(A[1])}let o=[];for(let l of a){let A=new u8n(l.body?.source??null),f=A[VZ].body;A[VZ]=l,A[VZ].body=f,A[_It][c8n]=l.headersList,A[_It][l8n]="immutable",o.push(A)}return Object.freeze(o)}async add(t){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Lp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Lp.converters["sequence"](t);let r=[],n=[];for(let b of t){if(typeof b=="string")continue;let E=b[VZ];if(!yIt(E.url)||E.method!=="GET")throw Lp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let b of t){let E=new v8(b)[VZ];if(!yIt(E.url))throw Lp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let N=iwe();a.push(Csa({request:E,dispatcher:ysa(),processResponse(B){if(B.type==="error"||B.status===206||B.status<200||B.status>299)N.reject(Lp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(B.headersList.contains("vary")){let F=N_r(B.headersList.get("vary"));for(let Q of F)if(Q==="*"){N.reject(Lp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let X of a)X.abort();return}}},processResponseEndOfBody(B){if(B.aborted){N.reject(new DOMException("aborted","AbortError"));return}N.resolve(B)}})),r.push(N.promise)}let l=await Promise.all(r),A=[],f=0;for(let b of l){let E={type:"put",request:n[f],response:b};A.push(E),f++}let I=iwe(),C=null;try{this.#t(A)}catch(b){C=b}return queueMicrotask(()=>{C===null?I.resolve(void 0):I.reject(C)}),I.promise}async put(t,r){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.Response(r);let n=null;if(t instanceof v8?n=t[VZ]:n=new v8(t)[VZ],!yIt(n.url)||n.method!=="GET")throw Lp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[VZ];if(a.status===206)throw Lp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let E=N_r(a.headersList.get("vary"));for(let N of E)if(N==="*")throw Lp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(Isa(a.body.stream)||a.body.stream.locked))throw Lp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=hsa(a),l=iwe();if(a.body!=null){let N=a.body.stream.getReader();_sa(N).then(l.resolve,l.reject)}else l.resolve(void 0);let A=[],f={type:"put",request:n,response:o};A.push(f);let I=await l.promise;o.body!=null&&(o.body.source=I);let C=iwe(),b=null;try{this.#t(A)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve():C.reject(b)}),C.promise}async delete(t,r={}){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return!1}else D_r(typeof t=="string"),n=new v8(t)[VZ];let a=[],o={type:"delete",request:n,options:r};a.push(o);let l=iwe(),A=null,f;try{f=this.#t(a)}catch(I){A=I}return queueMicrotask(()=>{A===null?l.resolve(!!f?.length):l.reject(A)}),l.promise}async keys(t=void 0,r={}){Lp.brandCheck(this,e),t!==void 0&&(t=Lp.converters.RequestInfo(t)),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new v8(t)[VZ]);let a=iwe(),o=[];if(t===void 0)for(let l of this.#e)o.push(l[0]);else{let l=this.#n(n,r);for(let A of l)o.push(A[0])}return queueMicrotask(()=>{let l=[];for(let A of o){let f=new v8("https://a");f[VZ]=A,f[_It][c8n]=A.headersList,f[_It][l8n]="immutable",f[msa]=A.client,l.push(f)}a.resolve(Object.freeze(l))}),a.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);D_r(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!yIt(f.url))throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);D_r(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!fsa(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=N_r(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}};Object.defineProperties(bIt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:zIe,matchAll:zIe,add:zIe,addAll:zIe,put:zIe,delete:zIe,keys:zIe});var g8n=[{key:"ignoreSearch",converter:Lp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Lp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Lp.converters.boolean,defaultValue:!1}];Lp.converters.CacheQueryOptions=Lp.dictionaryConverter(g8n);Lp.converters.MultiCacheQueryOptions=Lp.dictionaryConverter([...g8n,{key:"cacheName",converter:Lp.converters.DOMString}]);Lp.converters.Response=Lp.interfaceConverter(u8n);Lp.converters["sequence"]=Lp.sequenceConverter(Lp.converters.RequestInfo);A8n.exports={Cache:bIt}});var f8n=H((xsu,p8n)=>{"use strict";var{kConstruct:JHe}=CIt(),{Cache:EIt}=d8n(),{webidl:PZ}=xZ(),{kEnumerableProperty:UHe}=zC(),SIt=class e{#e=new Map;constructor(){arguments[0]!==JHe&&PZ.illegalConstructor()}async match(t,r={}){if(PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=PZ.converters.RequestInfo(t),r=PZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new EIt(JHe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new EIt(JHe,n).match(t,r);if(o!==void 0)return o}}async has(t){return PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=PZ.converters.DOMString(t),this.#e.has(t)}async open(t){if(PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=PZ.converters.DOMString(t),this.#e.has(t)){let n=this.#e.get(t);return new EIt(JHe,n)}let r=[];return this.#e.set(t,r),new EIt(JHe,r)}async delete(t){return PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=PZ.converters.DOMString(t),this.#e.delete(t)}async keys(){return PZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(SIt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:UHe,has:UHe,open:UHe,delete:UHe,keys:UHe});p8n.exports={CacheStorage:SIt}});var h8n=H((Gsu,I8n)=>{"use strict";I8n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var k_r=H((Fsu,_8n)=>{"use strict";var m8n=wt("assert"),{kHeadersList:C8n}=GE();function bsa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function Esa(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function Ssa(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function vsa(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function Bsa(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function wsa(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],n=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],l=e.getUTCFullYear(),A=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),I=e.getUTCSeconds().toString().padStart(2,"0");return`${n}, ${a} ${o} ${l} ${A}:${f}:${I} GMT`}function Tsa(e){if(e<0)throw new Error("Invalid cookie max-age")}function Rsa(e){if(e.name.length===0)return null;Esa(e.name),Ssa(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(Tsa(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Bsa(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(vsa(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${wsa(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}var vIt;function Nsa(e){if(e[C8n])return e[C8n];vIt||(vIt=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),m8n(vIt,"Headers cannot be parsed"));let t=e[vIt];return m8n(t),t}_8n.exports={isCTLExcludingHtab:bsa,stringify:Rsa,getHeadersList:Nsa}});var b8n=H((Zsu,y8n)=>{"use strict";var{maxNameValuePairSize:Dsa,maxAttributeValueSize:ksa}=h8n(),{isCTLExcludingHtab:xsa}=k_r(),{collectASequenceOfCodePointsFast:BIt}=wX(),Gsa=wt("assert");function Fsa(e){if(xsa(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=BIt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=BIt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Dsa?null:{name:n,value:a,...swe(r)}}function swe(e,t={}){if(e.length===0)return t;Gsa(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=BIt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=BIt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>ksa)return swe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return swe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return swe(e,t)}y8n.exports={parseSetCookie:Fsa,parseUnparsedAttributes:swe}});var B8n=H((Lsu,v8n)=>{"use strict";var{parseSetCookie:Zsa}=b8n(),{stringify:E8n,getHeadersList:Lsa}=k_r(),{webidl:rC}=xZ(),{Headers:wIt}=UIe();function Vsa(e){rC.argumentLengthCheck(arguments,1,{header:"getCookies"}),rC.brandCheck(e,wIt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function Psa(e,t,r){rC.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),rC.brandCheck(e,wIt,{strict:!1}),t=rC.converters.DOMString(t),r=rC.converters.DeleteCookieAttributes(r),S8n(e,{name:t,value:"",expires:new Date(0),...r})}function Wsa(e){rC.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),rC.brandCheck(e,wIt,{strict:!1});let t=Lsa(e).cookies;return t?t.map(r=>Zsa(Array.isArray(r)?r[1]:r)):[]}function S8n(e,t){rC.argumentLengthCheck(arguments,2,{header:"setCookie"}),rC.brandCheck(e,wIt,{strict:!1}),t=rC.converters.Cookie(t),E8n(t)&&e.append("Set-Cookie",E8n(t))}rC.converters.DeleteCookieAttributes=rC.dictionaryConverter([{converter:rC.nullableConverter(rC.converters.DOMString),key:"path",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"domain",defaultValue:null}]);rC.converters.Cookie=rC.dictionaryConverter([{converter:rC.converters.DOMString,key:"name"},{converter:rC.converters.DOMString,key:"value"},{converter:rC.nullableConverter(e=>typeof e=="number"?rC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:rC.nullableConverter(rC.converters["long long"]),key:"maxAge",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"domain",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"path",defaultValue:null},{converter:rC.nullableConverter(rC.converters.boolean),key:"secure",defaultValue:null},{converter:rC.nullableConverter(rC.converters.boolean),key:"httpOnly",defaultValue:null},{converter:rC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:rC.sequenceConverter(rC.converters.DOMString),key:"unparsed",defaultValue:[]}]);v8n.exports={getCookies:Vsa,deleteCookie:Psa,getSetCookies:Wsa,setCookie:S8n}});var owe=H((Vsu,w8n)=>{"use strict";var Osa="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Msa={enumerable:!0,writable:!1,configurable:!1},Hsa={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},Ysa={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},Qsa=2**16-1,Xsa={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},Jsa=Buffer.allocUnsafe(0);w8n.exports={uid:Osa,staticPropertyDescriptors:Msa,states:Hsa,opcodes:Ysa,maxUnsigned16Bit:Qsa,parserStates:Xsa,emptyBuffer:Jsa}});var KHe=H((Psu,T8n)=>{"use strict";T8n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var G_r=H((Wsu,R8n)=>{"use strict";var{webidl:Vp}=xZ(),{kEnumerableProperty:$9}=zC(),{MessagePort:Usa}=wt("worker_threads"),TIt=class e extends Event{#e;constructor(t,r={}){Vp.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Vp.converters.DOMString(t),r=Vp.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Vp.brandCheck(this,e),this.#e.data}get origin(){return Vp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Vp.brandCheck(this,e),this.#e.lastEventId}get source(){return Vp.brandCheck(this,e),this.#e.source}get ports(){return Vp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Vp.brandCheck(this,e),Vp.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}},RIt=class e extends Event{#e;constructor(t,r={}){Vp.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Vp.converters.DOMString(t),r=Vp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Vp.brandCheck(this,e),this.#e.wasClean}get code(){return Vp.brandCheck(this,e),this.#e.code}get reason(){return Vp.brandCheck(this,e),this.#e.reason}},NIt=class e extends Event{#e;constructor(t,r){Vp.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Vp.converters.DOMString(t),r=Vp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Vp.brandCheck(this,e),this.#e.message}get filename(){return Vp.brandCheck(this,e),this.#e.filename}get lineno(){return Vp.brandCheck(this,e),this.#e.lineno}get colno(){return Vp.brandCheck(this,e),this.#e.colno}get error(){return Vp.brandCheck(this,e),this.#e.error}};Object.defineProperties(TIt.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:$9,origin:$9,lastEventId:$9,source:$9,ports:$9,initMessageEvent:$9});Object.defineProperties(RIt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:$9,code:$9,wasClean:$9});Object.defineProperties(NIt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:$9,filename:$9,lineno:$9,colno:$9,error:$9});Vp.converters.MessagePort=Vp.interfaceConverter(Usa);Vp.converters["sequence"]=Vp.sequenceConverter(Vp.converters.MessagePort);var x_r=[{key:"bubbles",converter:Vp.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Vp.converters.boolean,defaultValue:!1},{key:"composed",converter:Vp.converters.boolean,defaultValue:!1}];Vp.converters.MessageEventInit=Vp.dictionaryConverter([...x_r,{key:"data",converter:Vp.converters.any,defaultValue:null},{key:"origin",converter:Vp.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Vp.converters.DOMString,defaultValue:""},{key:"source",converter:Vp.nullableConverter(Vp.converters.MessagePort),defaultValue:null},{key:"ports",converter:Vp.converters["sequence"],get defaultValue(){return[]}}]);Vp.converters.CloseEventInit=Vp.dictionaryConverter([...x_r,{key:"wasClean",converter:Vp.converters.boolean,defaultValue:!1},{key:"code",converter:Vp.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Vp.converters.USVString,defaultValue:""}]);Vp.converters.ErrorEventInit=Vp.dictionaryConverter([...x_r,{key:"message",converter:Vp.converters.DOMString,defaultValue:""},{key:"filename",converter:Vp.converters.USVString,defaultValue:""},{key:"lineno",converter:Vp.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Vp.converters["unsigned long"],defaultValue:0},{key:"error",converter:Vp.converters.any}]);R8n.exports={MessageEvent:TIt,CloseEvent:RIt,ErrorEvent:NIt}});var xIt=H((Osu,k8n)=>{"use strict";var{kReadyState:DIt,kController:Ksa,kResponse:jsa,kBinaryType:zsa,kWebSocketURL:qsa}=KHe(),{states:kIt,opcodes:N8n}=owe(),{MessageEvent:$sa,ErrorEvent:eoa}=G_r();function toa(e){return e[DIt]===kIt.OPEN}function roa(e){return e[DIt]===kIt.CLOSING}function noa(e){return e[DIt]===kIt.CLOSED}function F_r(e,t,r=Event,n){let a=new r(e,n);t.dispatchEvent(a)}function ioa(e,t,r){if(e[DIt]!==kIt.OPEN)return;let n;if(t===N8n.TEXT)try{n=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{D8n(e,"Received invalid UTF-8 in text frame.");return}else t===N8n.BINARY&&(e[zsa]==="blob"?n=new Blob([r]):n=new Uint8Array(r).buffer);F_r("message",e,$sa,{origin:e[qsa].origin,data:n})}function soa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function ooa(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function D8n(e,t){let{[Ksa]:r,[jsa]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&F_r("error",e,eoa,{error:new Error(t)})}k8n.exports={isEstablished:toa,isClosing:roa,isClosed:noa,fireEvent:F_r,isValidSubprotocol:soa,isValidStatusCode:ooa,failWebsocketConnection:D8n,websocketMessageReceived:ioa}});var V8n=H((Msu,L8n)=>{"use strict";var L_r=wt("diagnostics_channel"),{uid:aoa,states:G8n}=owe(),{kReadyState:F8n,kSentClose:x8n,kByteParser:Z8n,kReceivedClose:coa}=KHe(),{fireEvent:loa,failWebsocketConnection:qIe}=xIt(),{CloseEvent:uoa}=G_r(),{makeRequest:goa}=YHe(),{fetching:Aoa}=fIt(),{Headers:doa}=UIe(),{getGlobalDispatcher:poa}=UBe(),{kHeadersList:foa}=GE(),G$={};G$.open=L_r.channel("undici:websocket:open");G$.close=L_r.channel("undici:websocket:close");G$.socketError=L_r.channel("undici:websocket:socket_error");var Z_r;try{Z_r=wt("crypto")}catch{}function Ioa(e,t,r,n,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let l=goa({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let C=new doa(a.headers)[foa];l.headersList=C}let A=Z_r.randomBytes(16).toString("base64");l.headersList.append("sec-websocket-key",A),l.headersList.append("sec-websocket-version","13");for(let C of t)l.headersList.append("sec-websocket-protocol",C);let f="";return Aoa({request:l,useParallelQueue:!0,dispatcher:a.dispatcher??poa(),processResponse(C){if(C.type==="error"||C.status!==101){qIe(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!C.headersList.get("Sec-WebSocket-Protocol")){qIe(r,"Server did not respond with sent protocols.");return}if(C.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){qIe(r,'Server did not set Upgrade header to "websocket".');return}if(C.headersList.get("Connection")?.toLowerCase()!=="upgrade"){qIe(r,'Server did not set Connection header to "upgrade".');return}let b=C.headersList.get("Sec-WebSocket-Accept"),E=Z_r.createHash("sha1").update(A+aoa).digest("base64");if(b!==E){qIe(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let N=C.headersList.get("Sec-WebSocket-Extensions");if(N!==null&&N!==f){qIe(r,"Received different permessage-deflate than the one set.");return}let B=C.headersList.get("Sec-WebSocket-Protocol");if(B!==null&&B!==l.headersList.get("Sec-WebSocket-Protocol")){qIe(r,"Protocol was not set in the opening handshake.");return}C.socket.on("data",hoa),C.socket.on("close",moa),C.socket.on("error",Coa),G$.open.hasSubscribers&&G$.open.publish({address:C.socket.address(),protocol:B,extensions:N}),n(C)}})}function hoa(e){this.ws[Z8n].write(e)||this.pause()}function moa(){let{ws:e}=this,t=e[x8n]&&e[coa],r=1005,n="",a=e[Z8n].closingInfo;a?(r=a.code??1005,n=a.reason):e[x8n]||(r=1006),e[F8n]=G8n.CLOSED,loa("close",e,uoa,{wasClean:t,code:r,reason:n}),G$.close.hasSubscribers&&G$.close.publish({websocket:e,code:r,reason:n})}function Coa(e){let{ws:t}=this;t[F8n]=G8n.CLOSING,G$.socketError.hasSubscribers&&G$.socketError.publish(e),this.destroy()}L8n.exports={establishWebSocketConnection:Ioa}});var P_r=H((Hsu,W8n)=>{"use strict";var{maxUnsigned16Bit:_oa}=owe(),P8n;try{P8n=wt("crypto")}catch{}var V_r=class{constructor(t){this.frameData=t,this.maskKey=P8n.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,n=r,a=6;r>_oa?(a+=8,n=127):r>125&&(a+=2,n=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=n,n===126?o.writeUInt16BE(r,2):n===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let l=0;l{"use strict";var{Writable:yoa}=wt("stream"),X8n=wt("diagnostics_channel"),{parserStates:BM,opcodes:wM,states:boa,emptyBuffer:Eoa}=owe(),{kReadyState:Soa,kSentClose:O8n,kResponse:M8n,kReceivedClose:H8n}=KHe(),{isValidStatusCode:Y8n,failWebsocketConnection:jHe,websocketMessageReceived:voa}=xIt(),{WebsocketFrameSend:Q8n}=P_r(),awe={};awe.ping=X8n.channel("undici:websocket:ping");awe.pong=X8n.channel("undici:websocket:pong");var W_r=class extends yoa{#e=[];#t=0;#n=BM.INFO;#r={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.run(n)}run(t){for(;;){if(this.#n===BM.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#r.fin=(r[0]&128)!==0,this.#r.opcode=r[0]&15,this.#r.originalOpcode??=this.#r.opcode,this.#r.fragmented=!this.#r.fin&&this.#r.opcode!==wM.CONTINUATION,this.#r.fragmented&&this.#r.opcode!==wM.BINARY&&this.#r.opcode!==wM.TEXT){jHe(this.ws,"Invalid frame type was fragmented.");return}let n=r[1]&127;if(n<=125?(this.#r.payloadLength=n,this.#n=BM.READ_DATA):n===126?this.#n=BM.PAYLOADLENGTH_16:n===127&&(this.#n=BM.PAYLOADLENGTH_64),this.#r.fragmented&&n>125){jHe(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#r.opcode===wM.PING||this.#r.opcode===wM.PONG||this.#r.opcode===wM.CLOSE)&&n>125){jHe(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#r.opcode===wM.CLOSE){if(n===1){jHe(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(n);if(this.#r.closeInfo=this.parseCloseBody(!1,a),!this.ws[O8n]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#r.closeInfo.code,0);let l=new Q8n(o);this.ws[M8n].socket.write(l.createFrame(wM.CLOSE),A=>{A||(this.ws[O8n]=!0)})}this.ws[Soa]=boa.CLOSING,this.ws[H8n]=!0,this.end();return}else if(this.#r.opcode===wM.PING){let a=this.consume(n);if(!this.ws[H8n]){let o=new Q8n(a);this.ws[M8n].socket.write(o.createFrame(wM.PONG)),awe.ping.hasSubscribers&&awe.ping.publish({payload:a})}if(this.#n=BM.INFO,this.#t>0)continue;t();return}else if(this.#r.opcode===wM.PONG){let a=this.consume(n);if(awe.pong.hasSubscribers&&awe.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#n===BM.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=BM.READ_DATA}else if(this.#n===BM.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){jHe(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#r.payloadLength=(n<<8)+a,this.#n=BM.READ_DATA}else if(this.#n===BM.READ_DATA){if(this.#t=this.#r.payloadLength){let r=this.consume(this.#r.payloadLength);if(this.#i.push(r),!this.#r.fragmented||this.#r.fin&&this.#r.opcode===wM.CONTINUATION){let n=Buffer.concat(this.#i);voa(this.ws,this.#r.originalOpcode,n),this.#r={},this.#i.length=0}this.#n=BM.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return Eoa;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let n;if(r.length>=2&&(n=r.readUInt16BE(0)),t)return Y8n(n)?{code:n}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),n!==void 0&&!Y8n(n))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:n,reason:a}}get closingInfo(){return this.#r.closeInfo}};J8n.exports={ByteParser:W_r}});var rjn=H((Qsu,tjn)=>{"use strict";var{webidl:fI}=xZ(),{DOMException:tae}=Xoe(),{URLSerializer:Boa}=wX(),{getGlobalOrigin:woa}=BBe(),{staticPropertyDescriptors:rae,states:cwe,opcodes:zHe,emptyBuffer:Toa}=owe(),{kWebSocketURL:K8n,kReadyState:F$,kController:Roa,kBinaryType:GIt,kResponse:FIt,kSentClose:Noa,kByteParser:Doa}=KHe(),{isEstablished:j8n,isClosing:z8n,isValidSubprotocol:koa,failWebsocketConnection:xoa,fireEvent:Goa}=xIt(),{establishWebSocketConnection:Foa}=V8n(),{WebsocketFrameSend:qHe}=P_r(),{ByteParser:Zoa}=U8n(),{kEnumerableProperty:TM,isBlobLike:$8n}=zC(),{getGlobalDispatcher:Loa}=UBe(),{types:ejn}=wt("util"),q8n=!1,zW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";constructor(t,r=[]){super(),fI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),q8n||(q8n=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let n=fI.converters["DOMString or sequence or WebSocketInit"](r);t=fI.converters.USVString(t),r=n.protocols;let a=woa(),o;try{o=new URL(t,a)}catch(l){throw new tae(l,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new tae(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new tae("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(l=>l.toLowerCase())).size)throw new tae("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(l=>koa(l)))throw new tae("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[K8n]=new URL(o.href),this[Roa]=Foa(o,r,this,l=>this.#i(l),n),this[F$]=e.CONNECTING,this[GIt]="blob"}close(t=void 0,r=void 0){if(fI.brandCheck(this,e),t!==void 0&&(t=fI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=fI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new tae("invalid code","InvalidAccessError");let n=0;if(r!==void 0&&(n=Buffer.byteLength(r),n>123))throw new tae(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");if(!(this[F$]===e.CLOSING||this[F$]===e.CLOSED))if(!j8n(this))xoa(this,"Connection was closed before it was established."),this[F$]=e.CLOSING;else if(z8n(this))this[F$]=e.CLOSING;else{let a=new qHe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Toa,this[FIt].socket.write(a.createFrame(zHe.CLOSE),l=>{l||(this[Noa]=!0)}),this[F$]=cwe.CLOSING}}send(t){if(fI.brandCheck(this,e),fI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=fI.converters.WebSocketSendData(t),this[F$]===e.CONNECTING)throw new tae("Sent before connected.","InvalidStateError");if(!j8n(this)||z8n(this))return;let r=this[FIt].socket;if(typeof t=="string"){let n=Buffer.from(t),o=new qHe(n).createFrame(zHe.TEXT);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ejn.isArrayBuffer(t)){let n=Buffer.from(t),o=new qHe(n).createFrame(zHe.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ArrayBuffer.isView(t)){let n=Buffer.from(t,t.byteOffset,t.byteLength),o=new qHe(n).createFrame(zHe.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if($8n(t)){let n=new qHe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);n.frameData=o;let l=n.createFrame(zHe.BINARY);this.#t+=o.byteLength,r.write(l,()=>{this.#t-=o.byteLength})})}}get readyState(){return fI.brandCheck(this,e),this[F$]}get bufferedAmount(){return fI.brandCheck(this,e),this.#t}get url(){return fI.brandCheck(this,e),Boa(this[K8n])}get extensions(){return fI.brandCheck(this,e),this.#r}get protocol(){return fI.brandCheck(this,e),this.#n}get onopen(){return fI.brandCheck(this,e),this.#e.open}set onopen(t){fI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return fI.brandCheck(this,e),this.#e.error}set onerror(t){fI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return fI.brandCheck(this,e),this.#e.close}set onclose(t){fI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return fI.brandCheck(this,e),this.#e.message}set onmessage(t){fI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return fI.brandCheck(this,e),this[GIt]}set binaryType(t){fI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[GIt]="blob":this[GIt]=t}#i(t){this[FIt]=t;let r=new Zoa(this);r.on("drain",function(){this.ws[FIt].socket.resume()}),t.socket.ws=this,this[Doa]=r,this[F$]=cwe.OPEN;let n=t.headersList.get("sec-websocket-extensions");n!==null&&(this.#r=n);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#n=a),Goa("open",this)}};zW.CONNECTING=zW.prototype.CONNECTING=cwe.CONNECTING;zW.OPEN=zW.prototype.OPEN=cwe.OPEN;zW.CLOSING=zW.prototype.CLOSING=cwe.CLOSING;zW.CLOSED=zW.prototype.CLOSED=cwe.CLOSED;Object.defineProperties(zW.prototype,{CONNECTING:rae,OPEN:rae,CLOSING:rae,CLOSED:rae,url:TM,readyState:TM,bufferedAmount:TM,onopen:TM,onerror:TM,onclose:TM,close:TM,onmessage:TM,binaryType:TM,send:TM,extensions:TM,protocol:TM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(zW,{CONNECTING:rae,OPEN:rae,CLOSING:rae,CLOSED:rae});fI.converters["sequence"]=fI.sequenceConverter(fI.converters.DOMString);fI.converters["DOMString or sequence"]=function(e){return fI.util.Type(e)==="Object"&&Symbol.iterator in e?fI.converters["sequence"](e):fI.converters.DOMString(e)};fI.converters.WebSocketInit=fI.dictionaryConverter([{key:"protocols",converter:fI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return Loa()}},{key:"headers",converter:fI.nullableConverter(fI.converters.HeadersInit)}]);fI.converters["DOMString or sequence or WebSocketInit"]=function(e){return fI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?fI.converters.WebSocketInit(e):{protocols:fI.converters["DOMString or sequence"](e)}};fI.converters.WebSocketSendData=function(e){if(fI.util.Type(e)==="Object"){if($8n(e))return fI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||ejn.isAnyArrayBuffer(e))return fI.converters.BufferSource(e)}return fI.converters.USVString(e)};tjn.exports={WebSocket:zW}});var ojn=H((Xsu,Eh)=>{"use strict";var Voa=DHe(),njn=Ift(),ijn=Ub(),Poa=PBe(),Woa=hJn(),Ooa=FHe(),$Ie=zC(),{InvalidArgumentError:ZIt}=ijn,lwe=cUn(),Moa=EHe(),Hoa=jCr(),Yoa=YUn(),Qoa=$Cr(),Xoa=VCr(),Joa=jUn(),Uoa=tKn(),{getGlobalDispatcher:sjn,setGlobalDispatcher:Koa}=UBe(),joa=aKn(),zoa=Kmr(),qoa=_ft(),O_r;try{wt("crypto"),O_r=!0}catch{O_r=!1}Object.assign(njn.prototype,lwe);Eh.exports.Dispatcher=njn;Eh.exports.Client=Voa;Eh.exports.Pool=Poa;Eh.exports.BalancedPool=Woa;Eh.exports.Agent=Ooa;Eh.exports.ProxyAgent=Joa;Eh.exports.RetryHandler=Uoa;Eh.exports.DecoratorHandler=joa;Eh.exports.RedirectHandler=zoa;Eh.exports.createRedirectInterceptor=qoa;Eh.exports.buildConnector=Moa;Eh.exports.errors=ijn;function $He(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new ZIt("invalid url");if(r!=null&&typeof r!="object")throw new ZIt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new ZIt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL($Ie.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=$Ie.parseURL(t);let{agent:a,dispatcher:o=sjn()}=r;if(a)throw new ZIt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Eh.exports.setGlobalDispatcher=Koa;Eh.exports.getGlobalDispatcher=sjn;if($Ie.nodeMajor>16||$Ie.nodeMajor===16&&$Ie.nodeMinor>=8){let e=null;Eh.exports.fetch=async function(l){e||(e=fIt().fetch);try{return await e(...arguments)}catch(A){throw typeof A=="object"&&Error.captureStackTrace(A,this),A}},Eh.exports.Headers=UIe().Headers,Eh.exports.Response=nIt().Response,Eh.exports.Request=YHe().Request,Eh.exports.FormData=dft().FormData,Eh.exports.File=gft().File,Eh.exports.FileReader=n8n().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=BBe();Eh.exports.setGlobalOrigin=t,Eh.exports.getGlobalOrigin=r;let{CacheStorage:n}=f8n(),{kConstruct:a}=CIt();Eh.exports.caches=new n(a)}if($Ie.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:n}=B8n();Eh.exports.deleteCookie=e,Eh.exports.getCookies=t,Eh.exports.getSetCookies=r,Eh.exports.setCookie=n;let{parseMIMEType:a,serializeAMimeType:o}=wX();Eh.exports.parseMIMEType=a,Eh.exports.serializeAMimeType=o}if($Ie.nodeMajor>=18&&O_r){let{WebSocket:e}=rjn();Eh.exports.WebSocket=e}Eh.exports.request=$He(lwe.request);Eh.exports.stream=$He(lwe.stream);Eh.exports.pipeline=$He(lwe.pipeline);Eh.exports.connect=$He(lwe.connect);Eh.exports.upgrade=$He(lwe.upgrade);Eh.exports.MockClient=Hoa;Eh.exports.MockPool=Qoa;Eh.exports.MockAgent=Yoa;Eh.exports.mockErrors=Xoa});var cjn=H(ZE=>{"use strict";var $oa=ZE&&ZE.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eaa=ZE&&ZE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),OIt=ZE&&ZE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&$oa(t,e,r);return eaa(t,e),t},ew=ZE&&ZE.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(ZE,"__esModule",{value:!0});ZE.HttpClient=ZE.isHttps=ZE.HttpClientResponse=ZE.HttpClientError=ZE.getProxyUrl=ZE.MediaTypes=ZE.Headers=ZE.HttpCodes=void 0;var M_r=OIt(wt("http")),ajn=OIt(wt("https")),H_r=OIt(hQn()),LIt=OIt(EQn()),taa=ojn(),RM;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(RM||(ZE.HttpCodes=RM={}));var bG;(function(e){e.Accept="accept",e.ContentType="content-type"})(bG||(ZE.Headers=bG={}));var Z$;(function(e){e.ApplicationJson="application/json"})(Z$||(ZE.MediaTypes=Z$={}));function raa(e){let t=H_r.getProxyUrl(new URL(e));return t?t.href:""}ZE.getProxyUrl=raa;var naa=[RM.MovedPermanently,RM.ResourceMoved,RM.SeeOther,RM.TemporaryRedirect,RM.PermanentRedirect],iaa=[RM.BadGateway,RM.ServiceUnavailable,RM.GatewayTimeout],saa=["OPTIONS","GET","DELETE","HEAD"],oaa=10,aaa=5,PIt=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};ZE.HttpClientError=PIt;var WIt=class{constructor(t){this.message=t}readBody(){return ew(this,void 0,void 0,function*(){return new Promise(t=>ew(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return ew(this,void 0,void 0,function*(){return new Promise(t=>ew(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};ZE.HttpClientResponse=WIt;function caa(e){return new URL(e).protocol==="https:"}ZE.isHttps=caa;var Y_r=class{constructor(t,r,n){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(t,r){return ew(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return ew(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return ew(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("POST",t,r,n||{})})}patch(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("PATCH",t,r,n||{})})}put(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("PUT",t,r,n||{})})}head(t,r){return ew(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,n,a){return ew(this,void 0,void 0,function*(){return this.request(t,r,n,a)})}getJson(t,r={}){return ew(this,void 0,void 0,function*(){r[bG.Accept]=this._getExistingOrDefaultHeader(r,bG.Accept,Z$.ApplicationJson);let n=yield this.get(t,r);return this._processResponse(n,this.requestOptions)})}postJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.post(t,a,n);return this._processResponse(o,this.requestOptions)})}putJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.put(t,a,n);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.patch(t,a,n);return this._processResponse(o,this.requestOptions)})}request(t,r,n,a){return ew(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),l=this._prepareRequest(t,o,a),A=this._allowRetries&&saa.includes(t)?this._maxRetries+1:1,f=0,I;do{if(I=yield this.requestRaw(l,n),I&&I.message&&I.message.statusCode===RM.Unauthorized){let b;for(let E of this.handlers)if(E.canHandleAuthentication(I)){b=E;break}return b?b.handleAuthentication(this,l,n):I}let C=this._maxRedirects;for(;I.message.statusCode&&naa.includes(I.message.statusCode)&&this._allowRedirects&&C>0;){let b=I.message.headers.location;if(!b)break;let E=new URL(b);if(o.protocol==="https:"&&o.protocol!==E.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield I.readBody(),E.hostname!==o.hostname)for(let N in a)N.toLowerCase()==="authorization"&&delete a[N];l=this._prepareRequest(t,E,a),I=yield this.requestRaw(l,n),C--}if(!I.message.statusCode||!iaa.includes(I.message.statusCode))return I;f+=1,f{function o(l,A){l?a(l):A?n(A):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,n){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,I){a||(a=!0,n(f,I))}let l=t.httpModule.request(t.options,f=>{let I=new WIt(f);o(void 0,I)}),A;l.on("socket",f=>{A=f}),l.setTimeout(this._socketTimeout||3*6e4,()=>{A&&A.end(),o(new Error(`Request timeout: ${t.options.path}`))}),l.on("error",function(f){o(f)}),r&&typeof r=="string"&&l.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){l.end()}),r.pipe(l)):l.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),n=H_r.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(t,r,n){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?ajn:M_r;let l=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):l,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let A of this.handlers)A.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},VIt(this.requestOptions.headers),VIt(t||{})):VIt(t||{})}_getExistingOrDefaultHeader(t,r,n){let a;return this.requestOptions&&this.requestOptions.headers&&(a=VIt(this.requestOptions.headers)[r]),t[r]||a||n}_getAgent(t){let r,n=H_r.getProxyUrl(t),a=n&&n.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||M_r.globalAgent.maxSockets),n&&n.hostname){let A={maxSockets:l,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},f,I=n.protocol==="https:";o?f=I?LIt.httpsOverHttps:LIt.httpsOverHttp:f=I?LIt.httpOverHttps:LIt.httpOverHttp,r=f(A),this._proxyAgent=r}if(!r){let A={keepAlive:this._keepAlive,maxSockets:l};r=o?new ajn.Agent(A):new M_r.Agent(A),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let a=t.protocol==="https:";return n=new taa.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,a&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_performExponentialBackoff(t){return ew(this,void 0,void 0,function*(){t=Math.min(oaa,t);let r=aaa*Math.pow(2,t);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(t,r){return ew(this,void 0,void 0,function*(){return new Promise((n,a)=>ew(this,void 0,void 0,function*(){let o=t.message.statusCode||0,l={statusCode:o,result:null,headers:{}};o===RM.NotFound&&n(l);function A(C,b){if(typeof b=="string"){let E=new Date(b);if(!isNaN(E.valueOf()))return E}return b}let f,I;try{I=yield t.readBody(),I&&I.length>0&&(r&&r.deserializeDates?f=JSON.parse(I,A):f=JSON.parse(I),l.result=f),l.headers=t.message.headers}catch{}if(o>299){let C;f&&f.message?C=f.message:I&&I.length>0?C=I:C=`Failed request: (${o})`;let b=new PIt(C,o);b.result=l.result,a(b)}else n(l)}))})}};ZE.HttpClient=Y_r;var VIt=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var B2=H((Usu,ljn)=>{ljn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Y0=H((Ksu,ujn)=>{"use strict";var RS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},Q_r=class extends RS{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},X_r=class extends RS{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},J_r=class extends RS{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},U_r=class extends RS{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},K_r=class extends RS{constructor(t,r,n,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},j_r=class extends RS{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},z_r=class extends RS{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},MIt=class extends RS{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},q_r=class extends MIt{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},$_r=class extends RS{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},e0r=class extends RS{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},t0r=class extends RS{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},r0r=class extends RS{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},n0r=class extends RS{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},i0r=class extends RS{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},s0r=class extends RS{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},o0r=class extends RS{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},a0r=class extends Error{constructor(t,r,n){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},c0r=class extends RS{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},l0r=class extends RS{constructor(t,r,{headers:n,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}},u0r=class extends RS{constructor(t,r,{headers:n,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=n}},g0r=class extends RS{constructor(t,r,n){super(r,{cause:t,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};ujn.exports={AbortError:MIt,HTTPParserError:a0r,UndiciError:RS,HeadersTimeoutError:X_r,HeadersOverflowError:J_r,BodyTimeoutError:U_r,RequestContentLengthMismatchError:e0r,ConnectTimeoutError:Q_r,ResponseStatusCodeError:K_r,InvalidArgumentError:j_r,InvalidReturnValueError:z_r,RequestAbortedError:q_r,ClientDestroyedError:r0r,ClientClosedError:n0r,InformationalError:$_r,SocketError:i0r,NotSupportedError:s0r,ResponseContentLengthMismatchError:t0r,BalancedPoolMissingUpstreamError:o0r,ResponseExceededMaxSizeError:c0r,RequestRetryError:l0r,ResponseError:u0r,SecureProxyConnectionError:g0r}});var YIt=H((jsu,gjn)=>{"use strict";var HIt={},A0r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:Ajn,headerNameLowerCasedRecord:laa}=YIt(),d0r=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,n){if(n===void 0||n>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(n))>127)throw new TypeError("key must be ascii string");t.length!==++n?this.middle=new e(t,r,n):this.value=r}add(t,r){let n=t.length;if(n===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let l=t.charCodeAt(a);if(l>127)throw new TypeError("key must be ascii string");if(o.code===l)if(n===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++n)return a;a=a.middle;break}a=a.code{"use strict";var eYe=wt("node:assert"),{kDestroyed:hjn,kBodyUsed:uwe,kListeners:p0r,kBody:Ijn}=B2(),{IncomingMessage:uaa}=wt("node:http"),UIt=wt("node:stream"),gaa=wt("node:net"),{Blob:Aaa}=wt("node:buffer"),daa=wt("node:util"),{stringify:paa}=wt("node:querystring"),{EventEmitter:faa}=wt("node:events"),{InvalidArgumentError:eD}=Y0(),{headerNameLowerCasedRecord:Iaa}=YIt(),{tree:mjn}=fjn(),[haa,maa]=process.versions.node.split(".").map(e=>Number(e)),JIt=class{constructor(t){this[Ijn]=t,this[uwe]=!1}async*[Symbol.asyncIterator](){eYe(!this[uwe],"disturbed"),this[uwe]=!0,yield*this[Ijn]}};function Caa(e){return KIt(e)?(Ejn(e)===0&&e.on("data",function(){eYe(!1)}),typeof e.readableDidRead!="boolean"&&(e[uwe]=!1,faa.prototype.on.call(e,"data",function(){this[uwe]=!0})),e):e&&typeof e.pipeTo=="function"?new JIt(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&bjn(e)?new JIt(e):e}function _aa(){}function KIt(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Cjn(e){if(e===null)return!1;if(e instanceof Aaa)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function yaa(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=paa(t);return r&&(e+="?"+r),e}function _jn(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function XIt(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function yjn(e){if(typeof e=="string"){if(e=new URL(e),!XIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new eD("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&_jn(e.port)===!1)throw new eD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new eD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new eD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new eD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new eD("Invalid URL origin: the origin must be a string or null/undefined.");if(!XIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!XIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function baa(e){if(e=yjn(e),e.pathname!=="/"||e.search||e.hash)throw new eD("invalid url");return e}function Eaa(e){if(e[0]==="["){let r=e.indexOf("]");return eYe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function Saa(e){if(!e)return null;eYe(typeof e=="string");let t=Eaa(e);return gaa.isIP(t)?"":t}function vaa(e){return JSON.parse(JSON.stringify(e))}function Baa(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function bjn(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Ejn(e){if(e==null)return 0;if(KIt(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(Cjn(e))return e.size!=null?e.size:null;if(Bjn(e))return e.byteLength}return null}function Sjn(e){return e&&!!(e.destroyed||e[hjn]||UIt.isDestroyed?.(e))}function waa(e,t){e==null||!KIt(e)||Sjn(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===uaa&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[hjn]=!0))}var Taa=/timeout=(\d+)/;function Raa(e){let t=e.toString().match(Taa);return t?parseInt(t[1],10)*1e3:null}function vjn(e){return typeof e=="string"?Iaa[e]??e.toLowerCase():mjn.lookup(e)??e.toString("latin1").toLowerCase()}function Naa(e){return mjn.lookup(e)??e.toString("latin1").toLowerCase()}function Daa(e,t){t===void 0&&(t={});for(let r=0;rl.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function kaa(e){let t=e.length,r=new Array(t),n=!1,a=-1,o,l,A=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function Paa(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Waa(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var Oaa=typeof String.prototype.toWellFormed=="function",Maa=typeof String.prototype.isWellFormed=="function";function wjn(e){return Oaa?`${e}`.toWellFormed():daa.toUSVString(e)}function Haa(e){return Maa?`${e}`.isWellFormed():wjn(e)===`${e}`}function Tjn(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function Yaa(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var Q0=wt("node:diagnostics_channel"),h0r=wt("node:util"),jIt=h0r.debuglog("undici"),I0r=h0r.debuglog("fetch"),ehe=h0r.debuglog("websocket"),kjn=!1,zaa={beforeConnect:Q0.channel("undici:client:beforeConnect"),connected:Q0.channel("undici:client:connected"),connectError:Q0.channel("undici:client:connectError"),sendHeaders:Q0.channel("undici:client:sendHeaders"),create:Q0.channel("undici:request:create"),bodySent:Q0.channel("undici:request:bodySent"),headers:Q0.channel("undici:request:headers"),trailers:Q0.channel("undici:request:trailers"),error:Q0.channel("undici:request:error"),open:Q0.channel("undici:websocket:open"),close:Q0.channel("undici:websocket:close"),socketError:Q0.channel("undici:websocket:socket_error"),ping:Q0.channel("undici:websocket:ping"),pong:Q0.channel("undici:websocket:pong")};if(jIt.enabled||I0r.enabled){let e=I0r.enabled?I0r:jIt;Q0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),Q0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),Q0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,n,r,l.message)}),Q0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)}),Q0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:n,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,n,o)}),Q0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("trailers received from %s %s/%s",r,a,n)}),Q0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:n,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,n,o.message)}),kjn=!0}if(ehe.enabled){if(!kjn){let e=jIt.enabled?jIt:ehe;Q0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),Q0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),Q0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",n,r,l.message)}),Q0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)})}Q0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;ehe("connection opened %s%s",t,r?`:${r}`:"")}),Q0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:n}=e;ehe("closed connection to %s - %s %s",t.url,r,n)}),Q0.channel("undici:websocket:socket_error").subscribe(e=>{ehe("connection errored - %s",e.message)}),Q0.channel("undici:websocket:ping").subscribe(e=>{ehe("ping received")}),Q0.channel("undici:websocket:pong").subscribe(e=>{ehe("pong received")})}xjn.exports={channels:zaa}});var Vjn=H((eou,Ljn)=>{"use strict";var{InvalidArgumentError:NS,NotSupportedError:qaa}=Y0(),L$=wt("node:assert"),{isValidHTTPToken:Zjn,isValidHeaderValue:Gjn,isStream:$aa,destroy:eca,isBuffer:tca,isFormDataLike:rca,isIterable:nca,isBlobLike:ica,buildURL:sca,validateHandler:oca,getServerName:aca,normalizedMethodRecords:cca}=Em(),{channels:B8}=gwe(),{headerNameLowerCasedRecord:Fjn}=YIt(),lca=/[^\u0021-\u00ff]/,NM=Symbol("handler"),m0r=class{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B,servername:F},Q){if(typeof r!="string")throw new NS("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new NS("path must be an absolute URL or start with a slash");if(lca.test(r))throw new NS("invalid request path");if(typeof n!="string")throw new NS("method must be a string");if(cca[n]===void 0&&!Zjn(n))throw new NS("invalid request method");if(I&&typeof I!="string")throw new NS("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new NS("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new NS("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new NS("invalid reset");if(B!=null&&typeof B!="boolean")throw new NS("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if($aa(a)){this.body=a;let X=this.body._readableState;(!X||!X.autoDestroy)&&(this.endHandler=function(){eca(this)},this.body.on("end",this.endHandler)),this.errorHandler=ae=>{this.abort?this.abort(ae):this.error=ae},this.body.on("error",this.errorHandler)}else if(tca(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(rca(a)||nca(a)||ica(a))this.body=a;else throw new NS("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?sca(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new NS("headers array must be even");for(let X=0;X{"use strict";var uca=wt("node:events"),qIt=class extends uca{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,n=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(n=a(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new C0r(this,n)}},C0r=class extends qIt{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};Pjn.exports=qIt});var fwe=H((rou,Wjn)=>{"use strict";var gca=tYe(),{ClientDestroyedError:_0r,ClientClosedError:Aca,InvalidArgumentError:Awe}=Y0(),{kDestroy:dca,kClose:pca,kClosed:rYe,kDestroyed:dwe,kDispatch:y0r,kInterceptors:the}=B2(),V$=Symbol("onDestroyed"),pwe=Symbol("onClosed"),$It=Symbol("Intercepted Dispatch"),b0r=class extends gca{constructor(){super(),this[dwe]=!1,this[V$]=null,this[rYe]=!1,this[pwe]=[]}get destroyed(){return this[dwe]}get closed(){return this[rYe]}get interceptors(){return this[the]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[the][r]!="function")throw new Awe("interceptor must be an function")}this[the]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new Awe("invalid callback");if(this[dwe]){queueMicrotask(()=>t(new _0r,null));return}if(this[rYe]){this[pwe]?this[pwe].push(t):queueMicrotask(()=>t(null,null));return}this[rYe]=!0,this[pwe].push(t);let r=()=>{let n=this[pwe];this[pwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new Awe("invalid callback");if(this[dwe]){this[V$]?this[V$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new _0r),this[dwe]=!0,this[V$]=this[V$]||[],this[V$].push(r);let n=()=>{let a=this[V$];this[V$]=null;for(let o=0;o{queueMicrotask(n)})}[$It](t,r){if(!this[the]||this[the].length===0)return this[$It]=this[y0r],this[y0r](t,r);let n=this[y0r].bind(this);for(let a=this[the].length-1;a>=0;a--)n=this[the][a](n);return this[$It]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new Awe("handler must be an object");try{if(!t||typeof t!="object")throw new Awe("opts must be an object.");if(this[dwe]||this[V$])throw new _0r;if(this[rYe])throw new Aca;return this[$It](t,r)}catch(n){if(typeof r.onError!="function")throw new Awe("invalid onError method");return r.onError(n),!1}}};Wjn.exports=b0r});var R0r=H((nou,Yjn)=>{"use strict";var Iwe=0,E0r=1e3,S0r=(E0r>>1)-1,P$,v0r=Symbol("kFastTimer"),W$=[],B0r=-2,w0r=-1,Mjn=0,Ojn=1;function T0r(){Iwe+=S0r;let e=0,t=W$.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=w0r,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===w0r?(r._state=B0r,--t!==0&&(W$[e]=W$[t])):++e}W$.length=t,W$.length!==0&&Hjn()}function Hjn(){P$?P$.refresh():(clearTimeout(P$),P$=setTimeout(T0r,S0r),P$.unref&&P$.unref())}var eht=class{[v0r]=!0;_state=B0r;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,n){this._onTimeout=t,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===B0r&&W$.push(this),(!P$||W$.length===1)&&Hjn(),this._state=Mjn}clear(){this._state=w0r,this._idleStart=-1}};Yjn.exports={setTimeout(e,t,r){return t<=E0r?setTimeout(e,t,r):new eht(e,t,r)},clearTimeout(e){e[v0r]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new eht(e,t,r)},clearFastTimeout(e){e.clear()},now(){return Iwe},tick(e=0){Iwe+=e-E0r+1,T0r(),T0r()},reset(){Iwe=0,W$.length=0,clearTimeout(P$),P$=null},kFastTimer:v0r}});var nYe=H((oou,Kjn)=>{"use strict";var fca=wt("node:net"),Qjn=wt("node:assert"),Ujn=Em(),{InvalidArgumentError:Ica,ConnectTimeoutError:hca}=Y0(),tht=R0r();function Xjn(){}var N0r,D0r;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?D0r=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function mca({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new Ica("maxCachedSessions must be a positive integer or zero");let l={path:r,...o},A=new D0r(t??100);return n=n??1e4,e=e??!1,function({hostname:I,host:C,protocol:b,port:E,servername:N,localAddress:B,httpSocket:F},Q){let X;if(b==="https:"){N0r||(N0r=wt("node:tls")),N=N||l.servername||Ujn.getServerName(C)||null;let ne=N||I;Qjn(ne);let ce=a||A.get(ne)||null;E=E||443,X=N0r.connect({highWaterMark:16384,...l,servername:N,session:ce,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:F,port:E,host:I}),X.on("session",function(fe){A.set(ne,fe)})}else Qjn(!F,"httpSocket can only be sent on TLS update"),E=E||80,X=fca.connect({highWaterMark:64*1024,...l,localAddress:B,port:E,host:I});if(l.keepAlive==null||l.keepAlive){let ne=l.keepAliveInitialDelay===void 0?6e4:l.keepAliveInitialDelay;X.setKeepAlive(!0,ne)}let ae=Cca(new WeakRef(X),{timeout:n,hostname:I,port:E});return X.setNoDelay(!0).once(b==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(ae),Q){let ne=Q;Q=null,ne(null,this)}}).on("error",function(ne){if(queueMicrotask(ae),Q){let ce=Q;Q=null,ce(ne)}}),X}}var Cca=process.platform==="win32"?(e,t)=>{if(!t.timeout)return Xjn;let r=null,n=null,a=tht.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>Jjn(e.deref(),t))})},t.timeout);return()=>{tht.clearFastTimeout(a),clearImmediate(r),clearImmediate(n)}}:(e,t)=>{if(!t.timeout)return Xjn;let r=null,n=tht.setFastTimeout(()=>{r=setImmediate(()=>{Jjn(e.deref(),t)})},t.timeout);return()=>{tht.clearFastTimeout(n),clearImmediate(r)}};function Jjn(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,Ujn.destroy(e,new hca(r))}Kjn.exports=mca});var jjn=H(rht=>{"use strict";Object.defineProperty(rht,"__esModule",{value:!0});rht.enumToMap=void 0;function _ca(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}rht.enumToMap=_ca});var zjn=H(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.SPECIAL_HEADERS=Gu.HEADER_STATE=Gu.MINOR=Gu.MAJOR=Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS=Gu.TOKEN=Gu.STRICT_TOKEN=Gu.HEX=Gu.URL_CHAR=Gu.STRICT_URL_CHAR=Gu.USERINFO_CHARS=Gu.MARK=Gu.ALPHANUM=Gu.NUM=Gu.HEX_MAP=Gu.NUM_MAP=Gu.ALPHA=Gu.FINISH=Gu.H_METHOD_MAP=Gu.METHOD_MAP=Gu.METHODS_RTSP=Gu.METHODS_ICE=Gu.METHODS_HTTP=Gu.METHODS=Gu.LENIENT_FLAGS=Gu.FLAGS=Gu.TYPE=Gu.ERROR=void 0;var yca=jjn(),bca;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(bca=Gu.ERROR||(Gu.ERROR={}));var Eca;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(Eca=Gu.TYPE||(Gu.TYPE={}));var Sca;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(Sca=Gu.FLAGS||(Gu.FLAGS={}));var vca;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(vca=Gu.LENIENT_FLAGS||(Gu.LENIENT_FLAGS={}));var Pp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Pp=Gu.METHODS||(Gu.METHODS={}));Gu.METHODS_HTTP=[Pp.DELETE,Pp.GET,Pp.HEAD,Pp.POST,Pp.PUT,Pp.CONNECT,Pp.OPTIONS,Pp.TRACE,Pp.COPY,Pp.LOCK,Pp.MKCOL,Pp.MOVE,Pp.PROPFIND,Pp.PROPPATCH,Pp.SEARCH,Pp.UNLOCK,Pp.BIND,Pp.REBIND,Pp.UNBIND,Pp.ACL,Pp.REPORT,Pp.MKACTIVITY,Pp.CHECKOUT,Pp.MERGE,Pp["M-SEARCH"],Pp.NOTIFY,Pp.SUBSCRIBE,Pp.UNSUBSCRIBE,Pp.PATCH,Pp.PURGE,Pp.MKCALENDAR,Pp.LINK,Pp.UNLINK,Pp.PRI,Pp.SOURCE];Gu.METHODS_ICE=[Pp.SOURCE];Gu.METHODS_RTSP=[Pp.OPTIONS,Pp.DESCRIBE,Pp.ANNOUNCE,Pp.SETUP,Pp.PLAY,Pp.PAUSE,Pp.TEARDOWN,Pp.GET_PARAMETER,Pp.SET_PARAMETER,Pp.REDIRECT,Pp.RECORD,Pp.FLUSH,Pp.GET,Pp.POST];Gu.METHOD_MAP=yca.enumToMap(Pp);Gu.H_METHOD_MAP={};Object.keys(Gu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Gu.H_METHOD_MAP[e]=Gu.METHOD_MAP[e])});var Bca;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Bca=Gu.FINISH||(Gu.FINISH={}));Gu.ALPHA=[];for(let e=65;e<=90;e++)Gu.ALPHA.push(String.fromCharCode(e)),Gu.ALPHA.push(String.fromCharCode(e+32));Gu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Gu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Gu.NUM=["0","1","2","3","4","5","6","7","8","9"];Gu.ALPHANUM=Gu.ALPHA.concat(Gu.NUM);Gu.MARK=["-","_",".","!","~","*","'","(",")"];Gu.USERINFO_CHARS=Gu.ALPHANUM.concat(Gu.MARK).concat(["%",";",":","&","=","+","$",","]);Gu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Gu.ALPHANUM);Gu.URL_CHAR=Gu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Gu.URL_CHAR.push(e);Gu.HEX=Gu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Gu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Gu.ALPHANUM);Gu.TOKEN=Gu.STRICT_TOKEN.concat([" "]);Gu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Gu.HEADER_CHARS.push(e);Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS.filter(e=>e!==44);Gu.MAJOR=Gu.NUM_MAP;Gu.MINOR=Gu.MAJOR;var hwe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(hwe=Gu.HEADER_STATE||(Gu.HEADER_STATE={}));Gu.SPECIAL_HEADERS={connection:hwe.CONNECTION,"content-length":hwe.CONTENT_LENGTH,"proxy-connection":hwe.CONNECTION,"transfer-encoding":hwe.TRANSFER_ENCODING,upgrade:hwe.UPGRADE}});var k0r=H((lou,qjn)=>{"use strict";var{Buffer:wca}=wt("node:buffer");qjn.exports=wca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var e6n=H((uou,$jn)=>{"use strict";var{Buffer:Tca}=wt("node:buffer");$jn.exports=Tca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var iYe=H((gou,c6n)=>{"use strict";var t6n=["GET","HEAD","POST"],Rca=new Set(t6n),Nca=[101,204,205,304],r6n=[301,302,303,307,308],Dca=new Set(r6n),n6n=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],kca=new Set(n6n),i6n=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],xca=new Set(i6n),Gca=["follow","manual","error"],s6n=["GET","HEAD","OPTIONS","TRACE"],Fca=new Set(s6n),Zca=["navigate","same-origin","no-cors","cors"],Lca=["omit","same-origin","include"],Vca=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Pca=["content-encoding","content-language","content-location","content-type","content-length"],Wca=["half"],o6n=["CONNECT","TRACE","TRACK"],Oca=new Set(o6n),a6n=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Mca=new Set(a6n);c6n.exports={subresource:a6n,forbiddenMethods:o6n,requestBodyHeader:Pca,referrerPolicy:i6n,requestRedirect:Gca,requestMode:Zca,requestCredentials:Lca,requestCache:Vca,redirectStatus:r6n,corsSafeListedMethods:t6n,nullBodyStatus:Nca,safeMethods:s6n,badPorts:n6n,requestDuplex:Wca,subresourceSet:Mca,badPortsSet:kca,redirectStatusSet:Dca,corsSafeListedMethodsSet:Rca,safeMethodsSet:Fca,forbiddenMethodsSet:Oca,referrerPolicySet:xca}});var G0r=H((Aou,l6n)=>{"use strict";var x0r=Symbol.for("undici.globalOrigin.1");function Hca(){return globalThis[x0r]}function Yca(e){if(e===void 0){Object.defineProperty(globalThis,x0r,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,x0r,{value:t,writable:!0,enumerable:!1,configurable:!1})}l6n.exports={getGlobalOrigin:Hca,setGlobalOrigin:Yca}});var eV=H((dou,I6n)=>{"use strict";var iht=wt("node:assert"),Qca=new TextEncoder,sYe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Xca=/[\u000A\u000D\u0009\u0020]/,Jca=/[\u0009\u000A\u000C\u000D\u0020]/g,Uca=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Kca(e){iht(e.protocol==="data:");let t=A6n(e,!0);t=t.slice(5);let r={position:0},n=mwe(",",t,r),a=n.length;if(n=tla(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=d6n(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=f6n(l);if(l=zca(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=F0r(n);return A==="failure"&&(A=F0r("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function A6n(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length,a=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?a.slice(0,-1):a}function sht(e,t,r){let n="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function g6n(e){return e>=48&&e<=57?e-48:(e&223)-55}function jca(e){let t=e.length,r=new Uint8Array(t),n=0;for(let a=0;ae.length)return"failure";t.position++;let n=mwe(";",e,t);if(n=nht(n,!1,!0),n.length===0||!sYe.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionXca.test(I),e,t);let A=sht(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=p6n(e,t,!0),mwe(";",e,t);else if(f=mwe(";",e,t),f=nht(f,!1,!0),f.length===0)continue;A.length!==0&&sYe.test(A)&&(f.length===0||Uca.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function zca(e){e=e.replace(Jca,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function p6n(e,t,r){let n=t.position,a="";for(iht(e[t.position]==='"'),t.position++;a+=sht(l=>l!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{iht(o==='"');break}}return r?a:e.slice(n,t.position)}function qca(e){iht(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",sYe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function $ca(e){return e===13||e===10||e===9||e===32}function nht(e,t=!0,r=!0){return Z0r(e,t,r,$ca)}function ela(e){return e===13||e===10||e===9||e===12||e===32}function tla(e,t=!0,r=!0){return Z0r(e,t,r,ela)}function Z0r(e,t,r,n){let a=0,o=e.length-1;if(t)for(;a0&&n(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function f6n(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",n=0,a=65535;for(;nt&&(a=t-n),r+=String.fromCharCode.apply(null,e.subarray(n,n+=a));return r}function rla(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}I6n.exports={dataURLProcessor:Kca,URLSerializer:A6n,collectASequenceOfCodePoints:sht,collectASequenceOfCodePointsFast:mwe,stringPercentDecode:d6n,parseMIMEType:F0r,collectAnHTTPQuotedString:p6n,serializeAMimeType:qca,removeChars:Z0r,removeHTTPWhitespace:nht,minimizeSupportedMimeType:rla,HTTP_TOKEN_CODEPOINTS:sYe,isomorphicDecode:f6n}});var kk=H((pou,h6n)=>{"use strict";var{types:w8,inspect:nla}=wt("node:util"),{toUSVString:ila}=Em(),Cu={};Cu.converters={};Cu.util={};Cu.errors={};Cu.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};Cu.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return Cu.errors.exception({header:e.prefix,message:r})};Cu.errors.invalidArgument=function(e){return Cu.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};Cu.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};Cu.argumentLengthCheck=function({length:e},t,r){if(ea)throw Cu.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n?.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=Cu.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};Cu.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};Cu.util.Stringify=function(e){switch(Cu.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return nla(e);case"String":return`"${e}"`;default:return`${e}`}};Cu.sequenceConverter=function(e){return(t,r,n,a)=>{if(Cu.util.Type(t)!=="Object")throw Cu.errors.exception({header:r,message:`${n} (${Cu.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),l=[],A=0;if(o===void 0||typeof o.next!="function")throw Cu.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:f,value:I}=o.next();if(f)break;l.push(e(I,r,`${n}[${A++}]`))}return l}};Cu.recordConverter=function(e,t){return(r,n,a)=>{if(Cu.util.Type(r)!=="Object")throw Cu.errors.exception({header:n,message:`${a} ("${Cu.util.Type(r)}") is not an Object.`});let o={};if(!w8.isProxy(r)){let A=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of A){let I=e(f,n,a),C=t(r[f],n,a);o[I]=C}return o}let l=Reflect.ownKeys(r);for(let A of l)if(Reflect.getOwnPropertyDescriptor(r,A)?.enumerable){let I=e(A,n,a),C=t(r[A],n,a);o[I]=C}return o}};Cu.interfaceConverter=function(e){return(t,r,n,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw Cu.errors.exception({header:r,message:`Expected ${n} ("${Cu.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};Cu.dictionaryConverter=function(e){return(t,r,n)=>{let a=Cu.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw Cu.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let l of e){let{key:A,defaultValue:f,required:I,converter:C}=l;if(I===!0&&!Object.hasOwn(t,A))throw Cu.errors.exception({header:r,message:`Missing required key "${A}".`});let b=t[A],E=Object.hasOwn(l,"defaultValue");if(E&&b!==null&&(b??=f()),I||E||b!==void 0){if(b=C(b,r,`${n}.${A}`),l.allowedValues&&!l.allowedValues.includes(b))throw Cu.errors.exception({header:r,message:`${b} is not an accepted type. Expected one of ${l.allowedValues.join(", ")}.`});o[A]=b}}return o}};Cu.nullableConverter=function(e){return(t,r,n)=>t===null?t:e(t,r,n)};Cu.converters.DOMString=function(e,t,r,n){if(e===null&&n?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw Cu.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};Cu.converters.ByteString=function(e,t,r){let n=Cu.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${n.charCodeAt(a)} which is greater than 255.`);return n};Cu.converters.USVString=ila;Cu.converters.boolean=function(e){return!!e};Cu.converters.any=function(e){return e};Cu.converters["long long"]=function(e,t,r){return Cu.util.ConvertToInt(e,64,"signed",void 0,t,r)};Cu.converters["unsigned long long"]=function(e,t,r){return Cu.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};Cu.converters["unsigned long"]=function(e,t,r){return Cu.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};Cu.converters["unsigned short"]=function(e,t,r,n){return Cu.util.ConvertToInt(e,16,"unsigned",n,t,r)};Cu.converters.ArrayBuffer=function(e,t,r,n){if(Cu.util.Type(e)!=="Object"||!w8.isAnyArrayBuffer(e))throw Cu.errors.conversionFailed({prefix:t,argument:`${r} ("${Cu.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&w8.isSharedArrayBuffer(e))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.TypedArray=function(e,t,r,n,a){if(Cu.util.Type(e)!=="Object"||!w8.isTypedArray(e)||e.constructor.name!==t.name)throw Cu.errors.conversionFailed({prefix:r,argument:`${n} ("${Cu.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.DataView=function(e,t,r,n){if(Cu.util.Type(e)!=="Object"||!w8.isDataView(e))throw Cu.errors.exception({header:t,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.BufferSource=function(e,t,r,n){if(w8.isAnyArrayBuffer(e))return Cu.converters.ArrayBuffer(e,t,r,{...n,allowShared:!1});if(w8.isTypedArray(e))return Cu.converters.TypedArray(e,e.constructor,t,r,{...n,allowShared:!1});if(w8.isDataView(e))return Cu.converters.DataView(e,t,r,{...n,allowShared:!1});throw Cu.errors.conversionFailed({prefix:t,argument:`${r} ("${Cu.util.Stringify(e)}")`,types:["BufferSource"]})};Cu.converters["sequence"]=Cu.sequenceConverter(Cu.converters.ByteString);Cu.converters["sequence>"]=Cu.sequenceConverter(Cu.converters["sequence"]);Cu.converters["record"]=Cu.recordConverter(Cu.converters.ByteString,Cu.converters.ByteString);h6n.exports={webidl:Cu}});var qW=H((fou,D6n)=>{"use strict";var{Transform:sla}=wt("node:stream"),m6n=wt("node:zlib"),{redirectStatusSet:ola,referrerPolicySet:ala,badPortsSet:cla}=iYe(),{getGlobalOrigin:C6n}=G0r(),{collectASequenceOfCodePoints:rhe,collectAnHTTPQuotedString:lla,removeChars:ula,parseMIMEType:gla}=eV(),{performance:Ala}=wt("node:perf_hooks"),{isBlobLike:dla,ReadableStreamFrom:pla,isValidHTTPToken:_6n,normalizedMethodRecordsBase:fla}=Em(),nhe=wt("node:assert"),{isUint8Array:Ila}=wt("node:util/types"),{webidl:oYe}=kk(),y6n=[],aht;try{aht=wt("node:crypto");let e=["sha256","sha384","sha512"];y6n=aht.getHashes().filter(t=>e.includes(t))}catch{}function b6n(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function hla(e,t){if(!ola.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&S6n(r)&&(E6n(r)||(r=mla(r)),r=new URL(r,b6n(e))),r&&!r.hash&&(r.hash=t),r}function E6n(e){for(let t=0;t126||r<32)return!1}return!0}function mla(e){return Buffer.from(e,"binary").toString("utf8")}function cYe(e){return e.urlList[e.urlList.length-1]}function Cla(e){let t=cYe(e);return R6n(t)&&cla.has(t.port)?"blocked":"allowed"}function _la(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function yla(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var bla=_6n;function S6n(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` -`)||e.includes("\r")||e.includes("\0"))===!1}function Ela(e,t){let{headersList:r}=t,n=(r.get("referrer-policy",!0)??"").split(","),a="";if(n.length>0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(ala.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function Sla(){return"allowed"}function vla(){return"success"}function Bla(){return"success"}function wla(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function Tla(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&V0r(e.origin)&&!V0r(cYe(e))&&(t=null);break;case"same-origin":cht(e,cYe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function Cwe(e,t){return e}function Rla(e,t,r){return!e?.startTime||e.startTime4096&&(n=a);let o=cht(e,n),l=aYe(n)&&!aYe(e.url);switch(t){case"origin":return a??L0r(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=cYe(e);return cht(n,A)?n:aYe(n)&&!aYe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function L0r(e,t){return nhe(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function aYe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function Gla(e,t){if(aht===void 0)return!0;let r=B6n(t);if(r==="no metadata"||r.length===0)return!0;let n=Zla(r),a=Lla(r,n);for(let o of a){let l=o.algo,A=o.hash,f=aht.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),Vla(f,A))return!0}return!1}var Fla=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function B6n(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=Fla.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();y6n.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function Zla(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function Ola(e){return e.controller.state==="aborted"}function Mla(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function Hla(e){return fla[e.toLowerCase()]??e}function Yla(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return nhe(typeof t=="string"),t}var Qla=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function w6n(e,t,r=0,n=1){class a{#e;#t;#n;constructor(l,A){this.#e=l,this.#t=A,this.#n=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let l=this.#n,A=this.#e[t],f=A.length;if(l>=f)return{value:void 0,done:!0};let{[r]:I,[n]:C}=A[l];this.#n=l+1;let b;switch(this.#t){case"key":b=I;break;case"value":b=C;break;case"key+value":b=[I,C];break}return{value:b,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,Qla),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,l){return new a(o,l)}}function Xla(e,t,r,n=0,a=1){let o=w6n(e,r,n,a),l={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return oYe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return oYe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return oYe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,I=globalThis){if(oYe.brandCheck(this,t),oYe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:C,1:b}of o(this,"key+value"))f.call(I,b,C,this)}}};return Object.defineProperties(t.prototype,{...l,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:l.entries.value}})}async function Jla(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{n(await T6n(o))}catch(l){a(l)}}function Ula(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function Kla(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var jla=/[^\x00-\xFF]/;function oht(e){return nhe(!jla.test(e)),e}async function T6n(e){let t=[],r=0;for(;;){let{done:n,value:a}=await e.read();if(n)return Buffer.concat(t,r);if(!Ila(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function zla(e){nhe("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function V0r(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function R6n(e){nhe("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function qla(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(t&&rhe(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,t&&rhe(f=>f===" "||f===" ",r,n);let a=rhe(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),o=a.length?Number(a):null;if(t&&rhe(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,t&&rhe(f=>f===" "||f===" ",r,n);let l=rhe(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),A=l.length?Number(l):null;return n.positionA?"failure":{rangeStartValue:o,rangeEndValue:A}}function $la(e,t,r){let n="bytes ";return n+=oht(`${e}`),n+="-",n+=oht(`${t}`),n+="/",n+=oht(`${r}`),n}var P0r=class extends sla{#e;constructor(t){super(),this.#e=t}_transform(t,r,n){if(!this._inflateStream){if(t.length===0){n();return}this._inflateStream=(t[0]&15)===8?m6n.createInflate(this.#e):m6n.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,n)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function eua(e){return new P0r(e)}function tua(e){let t=null,r=null,n=null,a=N6n("content-type",e);if(a===null)return"failure";for(let o of a){let l=gla(o);l==="failure"||l.essence==="*/*"||(n=l,n.essence!==r?(t=null,n.parameters.has("charset")&&(t=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&t!==null&&n.parameters.set("charset",t))}return n??"failure"}function rua(e){let t=e,r={position:0},n=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),n.push(a),a=""}return n}function N6n(e,t){let r=t.get(e,!0);return r===null?null:rua(r)}var nua=new TextDecoder;function iua(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),nua.decode(e))}var W0r=class{get baseUrl(){return C6n()}get origin(){return this.baseUrl?.origin}policyContainer=v6n()},O0r=class{settingsObject=new W0r},sua=new O0r;D6n.exports={isAborted:Ola,isCancelled:Mla,isValidEncodedURL:E6n,createDeferredPromise:Wla,ReadableStreamFrom:pla,tryUpgradeRequestToAPotentiallyTrustworthyURL:Pla,clampAndCoarsenConnectionTimingInfo:Rla,coarsenedSharedCurrentTime:Nla,determineRequestsReferrer:xla,makePolicyContainer:v6n,clonePolicyContainer:kla,appendFetchMetadata:wla,appendRequestOriginHeader:Tla,TAOCheck:Bla,corsCheck:vla,crossOriginResourcePolicyCheck:Sla,createOpaqueTimingInfo:Dla,setRequestReferrerPolicyOnRedirect:Ela,isValidHTTPToken:_6n,requestBadPort:Cla,requestCurrentURL:cYe,responseURL:b6n,responseLocationURL:hla,isBlobLike:dla,isURLPotentiallyTrustworthy:aYe,isValidReasonPhrase:yla,sameOrigin:cht,normalizeMethod:Hla,serializeJavascriptValueToJSONString:Yla,iteratorMixin:Xla,createIterator:w6n,isValidHeaderName:bla,isValidHeaderValue:S6n,isErrorLike:_la,fullyReadBody:Jla,bytesMatch:Gla,isReadableStreamLike:Ula,readableStreamClose:Kla,isomorphicEncode:oht,urlIsLocal:zla,urlHasHttpsScheme:V0r,urlIsHttpHttpsScheme:R6n,readAllBytes:T6n,simpleRangeHeaderValue:qla,buildContentRange:$la,parseMetadata:B6n,createInflate:eua,extractMimeType:tua,getDecodeSplit:N6n,utf8DecodeBytes:iua,environmentSettingsObject:sua}});var nae=H((Iou,k6n)=>{"use strict";k6n.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var H0r=H((hou,x6n)=>{"use strict";var{Blob:oua,File:aua}=wt("node:buffer"),{kState:O$}=nae(),{webidl:T8}=kk(),M0r=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[O$]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return T8.brandCheck(this,e),this[O$].blobLike.stream(...t)}arrayBuffer(...t){return T8.brandCheck(this,e),this[O$].blobLike.arrayBuffer(...t)}slice(...t){return T8.brandCheck(this,e),this[O$].blobLike.slice(...t)}text(...t){return T8.brandCheck(this,e),this[O$].blobLike.text(...t)}get size(){return T8.brandCheck(this,e),this[O$].blobLike.size}get type(){return T8.brandCheck(this,e),this[O$].blobLike.type}get name(){return T8.brandCheck(this,e),this[O$].name}get lastModified(){return T8.brandCheck(this,e),this[O$].lastModified}get[Symbol.toStringTag](){return"File"}};T8.converters.Blob=T8.interfaceConverter(oua);function cua(e){return e instanceof aua||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}x6n.exports={FileLike:M0r,isFileLike:cua}});var uYe=H((mou,V6n)=>{"use strict";var{isBlobLike:lht,iteratorMixin:lua}=qW(),{kState:WZ}=nae(),{kEnumerableProperty:_we}=Em(),{FileLike:G6n,isFileLike:uua}=H0r(),{webidl:W1}=kk(),{File:L6n}=wt("node:buffer"),F6n=wt("node:util"),Z6n=globalThis.File??L6n,lYe=class e{constructor(t){if(t!==void 0)throw W1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[WZ]=[]}append(t,r,n=void 0){W1.brandCheck(this,e);let a="FormData.append";if(W1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!lht(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=W1.converters.USVString(t,a,"name"),r=lht(r)?W1.converters.Blob(r,a,"value",{strict:!1}):W1.converters.USVString(r,a,"value"),n=arguments.length===3?W1.converters.USVString(n,a,"filename"):void 0;let o=Y0r(t,r,n);this[WZ].push(o)}delete(t){W1.brandCheck(this,e);let r="FormData.delete";W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ]=this[WZ].filter(n=>n.name!==t)}get(t){W1.brandCheck(this,e);let r="FormData.get";W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name");let n=this[WZ].findIndex(a=>a.name===t);return n===-1?null:this[WZ][n].value}getAll(t){W1.brandCheck(this,e);let r="FormData.getAll";return W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ].filter(n=>n.name===t).map(n=>n.value)}has(t){W1.brandCheck(this,e);let r="FormData.has";return W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ].findIndex(n=>n.name===t)!==-1}set(t,r,n=void 0){W1.brandCheck(this,e);let a="FormData.set";if(W1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!lht(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=W1.converters.USVString(t,a,"name"),r=lht(r)?W1.converters.Blob(r,a,"name",{strict:!1}):W1.converters.USVString(r,a,"name"),n=arguments.length===3?W1.converters.USVString(n,a,"name"):void 0;let o=Y0r(t,r,n),l=this[WZ].findIndex(A=>A.name===t);l!==-1?this[WZ]=[...this[WZ].slice(0,l),o,...this[WZ].slice(l+1).filter(A=>A.name!==t)]:this[WZ].push(o)}[F6n.inspect.custom](t,r){let n=this[WZ].reduce((o,l)=>(o[l.name]?Array.isArray(o[l.name])?o[l.name].push(l.value):o[l.name]=[o[l.name],l.value]:o[l.name]=l.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=F6n.formatWithOptions(r,n);return`FormData ${a.slice(a.indexOf("]")+2)}`}};lua("FormData",lYe,WZ,"name","value");Object.defineProperties(lYe.prototype,{append:_we,delete:_we,get:_we,getAll:_we,has:_we,set:_we,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Y0r(e,t,r){if(typeof t!="string"){if(uua(t)||(t=t instanceof Blob?new Z6n([t],"blob",{type:t.type}):new G6n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=t instanceof L6n?new Z6n([t],r,n):new G6n(t,r,n)}}return{name:e,value:t}}V6n.exports={FormData:lYe,makeEntry:Y0r}});var Y6n=H((Cou,H6n)=>{"use strict";var{isUSVString:P6n,bufferToLowerCasedHeaderName:gua}=Em(),{utf8DecodeBytes:Aua}=qW(),{HTTP_TOKEN_CODEPOINTS:dua,isomorphicDecode:W6n}=eV(),{isFileLike:pua}=H0r(),{makeEntry:fua}=uYe(),uht=wt("node:assert"),{File:Iua}=wt("node:buffer"),hua=globalThis.File??Iua,mua=Buffer.from('form-data; name="'),O6n=Buffer.from("; filename"),Cua=Buffer.from("--"),_ua=Buffer.from(`--\r -`);function yua(e){for(let t=0;t70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}function Eua(e,t){uht(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let l=e.length;for(;e[l-1]===10&&e[l-2]===13;)l-=2;for(l!==e.length&&(e=e.subarray(0,l));;){if(e.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===e.length-2&&ght(e,Cua,o)||o.position===e.length-4&&ght(e,_ua,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let A=Sua(e,o);if(A==="failure")return"failure";let{name:f,filename:I,contentType:C,encoding:b}=A;o.position+=2;let E;{let B=e.indexOf(n.subarray(2),o.position);if(B===-1)return"failure";E=e.subarray(o.position,B-4),o.position+=E.length,b==="base64"&&(E=Buffer.from(E.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let N;I!==null?(C??="text/plain",yua(C)||(C=""),N=new hua([E],I,{type:C})):N=Aua(Buffer.from(E)),uht(P6n(f)),uht(typeof N=="string"&&P6n(N)||pua(N)),a.push(fua(f,N,I))}}function Sua(e,t){let r=null,n=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:a,encoding:o};let l=ywe(A=>A!==10&&A!==13&&A!==58,e,t);if(l=Q0r(l,!0,!0,A=>A===9||A===32),!dua.test(l.toString())||e[t.position]!==58)return"failure";switch(t.position++,ywe(A=>A===32||A===9,e,t),gua(l)){case"content-disposition":{if(r=n=null,!ght(e,mua,t)||(t.position+=17,r=M6n(e,t),r===null))return"failure";if(ght(e,O6n,t)){let A=t.position+O6n.length;if(e[A]===42&&(t.position+=1,A+=1),e[A]!==61||e[A+1]!==34||(t.position+=12,n=M6n(e,t),n===null))return"failure"}break}case"content-type":{let A=ywe(f=>f!==10&&f!==13,e,t);A=Q0r(A,!1,!0,f=>f===9||f===32),a=W6n(A);break}case"content-transfer-encoding":{let A=ywe(f=>f!==10&&f!==13,e,t);A=Q0r(A,!1,!0,f=>f===9||f===32),o=W6n(A);break}default:ywe(A=>A!==10&&A!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function M6n(e,t){uht(e[t.position-1]===34);let r=ywe(n=>n!==10&&n!==13&&n!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function ywe(e,t,r){let n=r.position;for(;n0&&n(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function ght(e,t,r){if(e.length{"use strict";var gYe=Em(),{ReadableStreamFrom:vua,isBlobLike:Q6n,isReadableStreamLike:Bua,readableStreamClose:wua,createDeferredPromise:Tua,fullyReadBody:Rua,extractMimeType:Nua,utf8DecodeBytes:U6n}=qW(),{FormData:X6n}=uYe(),{kState:Ewe}=nae(),{webidl:Dua}=kk(),{Blob:kua}=wt("node:buffer"),X0r=wt("node:assert"),{isErrored:K6n,isDisturbed:xua}=wt("node:stream"),{isArrayBuffer:Gua}=wt("node:util/types"),{serializeAMimeType:Fua}=eV(),{multipartFormDataParser:Zua}=Y6n(),Aht=new TextEncoder;function Lua(){}var J0r=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,U0r;J0r&&(U0r=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!xua(t)&&!K6n(t)&&t.cancel("Response object has been garbage collected").catch(Lua)}));function j6n(e,t=!1){let r=null;e instanceof ReadableStream?r=e:Q6n(e)?r=e.stream():r=new ReadableStream({async pull(f){let I=typeof a=="string"?Aht.encode(a):a;I.byteLength&&f.enqueue(I),queueMicrotask(()=>wua(f))},start(){},type:"bytes"}),X0r(Bua(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(Gua(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(gYe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r +`.trim())}};jUn.exports=a_r});var nKn=H((cou,rKn)=>{"use strict";var{kProxy:mna,kClose:Cna,kDestroy:_na,kInterceptors:yna}=GE(),{URL:qUn}=wt("url"),$Un=LHe(),bna=WBe(),Ena=SHe(),{InvalidArgumentError:MHe,RequestAbortedError:Sna}=Ub(),eKn=vHe(),WHe=Symbol("proxy agent"),$ft=Symbol("proxy client"),OHe=Symbol("proxy headers"),c_r=Symbol("request tls settings"),vna=Symbol("proxy tls settings"),tKn=Symbol("connect endpoint function");function Bna(e){return e==="https:"?443:80}function wna(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new MHe("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function Tna(e,t){return new bna(e,t)}var l_r=class extends Ena{constructor(t){if(super(t),this[mna]=wna(t),this[WHe]=new $Un(t),this[yna]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new MHe("Proxy opts.uri is mandatory");let{clientFactory:r=Tna}=t;if(typeof r!="function")throw new MHe("Proxy opts.clientFactory must be a function.");this[c_r]=t.requestTls,this[vna]=t.proxyTls,this[OHe]=t.headers||{};let n=new qUn(t.uri),{origin:a,port:o,host:l,username:A,password:f}=n;if(t.auth&&t.token)throw new MHe("opts.auth cannot be used in combination with opts.token");t.auth?this[OHe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[OHe]["proxy-authorization"]=t.token:A&&f&&(this[OHe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:${decodeURIComponent(f)}`).toString("base64")}`);let I=eKn({...t.proxyTls});this[tKn]=eKn({...t.requestTls}),this[$ft]=r(n,{connect:I}),this[WHe]=new $Un({...t,connect:async(C,b)=>{let E=C.host;C.port||(E+=`:${Bna(C.protocol)}`);try{let{socket:N,statusCode:B}=await this[$ft].connect({origin:a,port:o,path:E,signal:C.signal,headers:{...this[OHe],host:l}});if(B!==200&&(N.on("error",()=>{}).destroy(),b(new Sna(`Proxy response (${B}) !== 200 when HTTP Tunneling`))),C.protocol!=="https:"){b(null,N);return}let F;this[c_r]?F=this[c_r].servername:F=C.servername,this[tKn]({...C,servername:F,httpSocket:N},b)}catch(N){b(N)}}})}dispatch(t,r){let{host:n}=new qUn(t.origin),a=Rna(t.headers);return Nna(a),this[WHe].dispatch({...t,headers:{...a,host:n}},r)}async[Cna](){await this[WHe].close(),await this[$ft].close()}async[_na](){await this[WHe].destroy(),await this[$ft].destroy()}};function Rna(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new MHe("Proxy-Authorization should be sent in ProxyAgent constructor")}rKn.exports=l_r});var cKn=H((lou,aKn)=>{var UIe=wt("assert"),{kRetryHandlerDefaultRetry:iKn}=GE(),{RequestRetryError:eIt}=Ub(),{isDisturbed:sKn,parseHeaders:Dna,parseRangeHeader:oKn}=zC();function kna(e){let t=Date.now();return new Date(e).getTime()-t}var u_r=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[iKn],retryAfter:E??!0,maxTimeout:A??30*1e3,timeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[iKn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,timeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:X,currentTimeout:ae}=r;if(ae=ae!=null&&ae>0?ae:b,l&&l!=="UND_ERR_REQ_RETRY"&&l!=="UND_ERR_SOCKET"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(X>C){a(t);return}let ne=A!=null&&A["retry-after"];ne&&(ne=Number(ne),ne=isNaN(ne)?kna(ne):ne*1e3);let ce=ne>0?Math.min(ne,E):Math.min(ae*N**X,E);r.currentTimeout=ce,setTimeout(()=>a(null),ce)}onHeaders(t,r,n,a){let o=Dna(r);if(this.retryCount+=1,t>=300)return this.abort(new eIt("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let A=oKn(o["content-range"]);if(!A)return this.abort(new eIt("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new eIt("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:I,end:C=I}=A;return UIe(this.start===f,"content-range mismatch"),UIe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=oKn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;UIe(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),UIe(Number.isFinite(f)),UIe(C!=null&&Number.isFinite(C)&&this.end!==C,"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return UIe(Number.isFinite(this.start)),UIe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,n,a)}let l=new eIt("Request failed",t,{headers:o,count:this.retryCount});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||sKn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||sKn(this.opts.body))return this.handler.onError(n);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};aKn.exports=u_r});var KBe=H((uou,AKn)=>{"use strict";var lKn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:xna}=Ub(),Gna=LHe();gKn()===void 0&&uKn(new Gna);function uKn(e){if(!e||typeof e.dispatch!="function")throw new xna("Argument agent must implement Agent");Object.defineProperty(globalThis,lKn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function gKn(){return globalThis[lKn]}AKn.exports={setGlobalDispatcher:uKn,getGlobalDispatcher:gKn}});var pKn=H((Aou,dKn)=>{"use strict";dKn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var KIe=H((dou,CKn)=>{"use strict";var{kHeadersList:z9,kConstruct:Fna}=GE(),{kGuard:E8}=v$(),{kEnumerableProperty:b8}=zC(),{makeIterator:jBe,isValidHeaderName:HHe,isValidHeaderValue:IKn}=EM(),{webidl:sm}=xZ(),Zna=wt("assert"),j9=Symbol("headers map"),Dk=Symbol("headers map sorted");function fKn(e){return e===10||e===13||e===9||e===32}function hKn(e){let t=0,r=e.length;for(;r>t&&fKn(e.charCodeAt(r-1));)--r;for(;r>t&&fKn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function mKn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function g_r(e,t,r){if(r=hKn(r),HHe(t)){if(!IKn(r))throw sm.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw sm.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[E8]==="immutable")throw new TypeError("immutable");return e[E8],e[z9].append(t,r)}var tIt=class e{cookies=null;constructor(t){t instanceof e?(this[j9]=new Map(t[j9]),this[Dk]=t[Dk],this.cookies=t.cookies===null?null:[...t.cookies]):(this[j9]=new Map(t),this[Dk]=null)}contains(t){return t=t.toLowerCase(),this[j9].has(t)}clear(){this[j9].clear(),this[Dk]=null,this.cookies=null}append(t,r){this[Dk]=null;let n=t.toLowerCase(),a=this[j9].get(n);if(a){let o=n==="cookie"?"; ":", ";this[j9].set(n,{name:a.name,value:`${a.value}${o}${r}`})}else this[j9].set(n,{name:t,value:r});n==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[Dk]=null;let n=t.toLowerCase();n==="set-cookie"&&(this.cookies=[r]),this[j9].set(n,{name:t,value:r})}delete(t){this[Dk]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[j9].delete(t)}get(t){let r=this[j9].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[j9])yield[t,r]}get entries(){let t={};if(this[j9].size)for(let{name:r,value:n}of this[j9].values())t[r]=n;return t}},zBe=class e{constructor(t=void 0){t!==Fna&&(this[z9]=new tIt,this[E8]="none",t!==void 0&&(t=sm.converters.HeadersInit(t),mKn(this,t)))}append(t,r){return sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=sm.converters.ByteString(t),r=sm.converters.ByteString(r),g_r(this,t,r)}delete(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=sm.converters.ByteString(t),!HHe(t))throw sm.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[E8]==="immutable")throw new TypeError("immutable");this[E8],this[z9].contains(t)&&this[z9].delete(t)}get(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=sm.converters.ByteString(t),!HHe(t))throw sm.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[z9].get(t)}has(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=sm.converters.ByteString(t),!HHe(t))throw sm.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[z9].contains(t)}set(t,r){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=sm.converters.ByteString(t),r=sm.converters.ByteString(r),r=hKn(r),HHe(t)){if(!IKn(r))throw sm.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw sm.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[E8]==="immutable")throw new TypeError("immutable");this[E8],this[z9].set(t,r)}getSetCookie(){sm.brandCheck(this,e);let t=this[z9].cookies;return t?[...t]:[]}get[Dk](){if(this[z9][Dk])return this[z9][Dk];let t=[],r=[...this[z9]].sort((a,o)=>a[0]t,"Headers","key")}return jBe(()=>[...this[Dk].values()],"Headers","key")}values(){if(sm.brandCheck(this,e),this[E8]==="immutable"){let t=this[Dk];return jBe(()=>t,"Headers","value")}return jBe(()=>[...this[Dk].values()],"Headers","value")}entries(){if(sm.brandCheck(this,e),this[E8]==="immutable"){let t=this[Dk];return jBe(()=>t,"Headers","key+value")}return jBe(()=>[...this[Dk].values()],"Headers","key+value")}forEach(t,r=globalThis){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}[Symbol.for("nodejs.util.inspect.custom")](){return sm.brandCheck(this,e),this[z9]}};zBe.prototype[Symbol.iterator]=zBe.prototype.entries;Object.defineProperties(zBe.prototype,{append:b8,delete:b8,get:b8,has:b8,set:b8,getSetCookie:b8,keys:b8,values:b8,entries:b8,forEach:b8,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});sm.converters.HeadersInit=function(e){if(sm.util.Type(e)==="Object")return e[Symbol.iterator]?sm.converters["sequence>"](e):sm.converters["record"](e);throw sm.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};CKn.exports={fill:mKn,Headers:zBe,HeadersList:tIt}});var sIt=H((pou,wKn)=>{"use strict";var{Headers:Lna,HeadersList:_Kn,fill:Vna}=KIe(),{extractBody:yKn,cloneBody:Pna,mixinBody:Wna}=yHe(),p_r=zC(),{kEnumerableProperty:UW}=p_r,{isValidReasonPhrase:Ona,isCancelled:Mna,isAborted:Hna,isBlobLike:Yna,serializeJavascriptValueToJSONString:Qna,isErrorLike:Xna,isomorphicEncode:Jna}=EM(),{redirectStatusSet:Una,nullBodyStatus:Kna,DOMException:bKn}=Joe(),{kState:v2,kHeaders:$N,kGuard:qBe,kRealm:JW}=v$(),{webidl:Wh}=xZ(),{FormData:jna}=fft(),{getGlobalOrigin:zna}=wBe(),{URLSerializer:EKn}=wX(),{kHeadersList:A_r,kConstruct:qna}=GE(),f_r=wt("assert"),{types:d_r}=wt("util"),vKn=globalThis.ReadableStream||wt("stream/web").ReadableStream,$na=new TextEncoder("utf-8"),$Be=class e{static error(){let t={settingsObject:{}},r=new e;return r[v2]=nIt(),r[JW]=t,r[$N][A_r]=r[v2].headersList,r[$N][qBe]="immutable",r[$N][JW]=t,r}static json(t,r={}){Wh.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=Wh.converters.ResponseInit(r));let n=$na.encode(Qna(t)),a=yKn(n),o={settingsObject:{}},l=new e;return l[JW]=o,l[$N][qBe]="response",l[$N][JW]=o,SKn(l,r,{body:a[0],type:"application/json"}),l}static redirect(t,r=302){let n={settingsObject:{}};Wh.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=Wh.converters.USVString(t),r=Wh.converters["unsigned short"](r);let a;try{a=new URL(t,zna())}catch(A){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:A})}if(!Una.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[JW]=n,o[$N][qBe]="immutable",o[$N][JW]=n,o[v2].status=r;let l=Jna(EKn(a));return o[v2].headersList.append("location",l),o}constructor(t=null,r={}){t!==null&&(t=Wh.converters.BodyInit(t)),r=Wh.converters.ResponseInit(r),this[JW]={settingsObject:{}},this[v2]=iIt({}),this[$N]=new Lna(qna),this[$N][qBe]="response",this[$N][A_r]=this[v2].headersList,this[$N][JW]=this[JW];let n=null;if(t!=null){let[a,o]=yKn(t);n={body:a,type:o}}SKn(this,r,n)}get type(){return Wh.brandCheck(this,e),this[v2].type}get url(){Wh.brandCheck(this,e);let t=this[v2].urlList,r=t[t.length-1]??null;return r===null?"":EKn(r,!0)}get redirected(){return Wh.brandCheck(this,e),this[v2].urlList.length>1}get status(){return Wh.brandCheck(this,e),this[v2].status}get ok(){return Wh.brandCheck(this,e),this[v2].status>=200&&this[v2].status<=299}get statusText(){return Wh.brandCheck(this,e),this[v2].statusText}get headers(){return Wh.brandCheck(this,e),this[$N]}get body(){return Wh.brandCheck(this,e),this[v2].body?this[v2].body.stream:null}get bodyUsed(){return Wh.brandCheck(this,e),!!this[v2].body&&p_r.isDisturbed(this[v2].body.stream)}clone(){if(Wh.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw Wh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=I_r(this[v2]),r=new e;return r[v2]=t,r[JW]=this[JW],r[$N][A_r]=t.headersList,r[$N][qBe]=this[$N][qBe],r[$N][JW]=this[$N][JW],r}};Wna($Be);Object.defineProperties($Be.prototype,{type:UW,url:UW,status:UW,ok:UW,redirected:UW,statusText:UW,headers:UW,clone:UW,body:UW,bodyUsed:UW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties($Be,{json:UW,redirect:UW,error:UW});function I_r(e){if(e.internalResponse)return BKn(I_r(e.internalResponse),e.type);let t=iIt({...e,body:null});return e.body!=null&&(t.body=Pna(e.body)),t}function iIt(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new _Kn(e.headersList):new _Kn,urlList:e.urlList?[...e.urlList]:[]}}function nIt(e){let t=Xna(e);return iIt({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function rIt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return f_r(!(n in t)),r[n]=a,!0}})}function BKn(e,t){if(t==="basic")return rIt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return rIt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return rIt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return rIt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});f_r(!1)}function eia(e,t=null){return f_r(Mna(e)),Hna(e)?nIt(Object.assign(new bKn("The operation was aborted.","AbortError"),{cause:t})):nIt(Object.assign(new bKn("Request was cancelled."),{cause:t}))}function SKn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Ona(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[v2].status=t.status),"statusText"in t&&t.statusText!=null&&(e[v2].statusText=t.statusText),"headers"in t&&t.headers!=null&&Vna(e[$N],t.headers),r){if(Kna.includes(e.status))throw Wh.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[v2].body=r.body,r.type!=null&&!e[v2].headersList.contains("Content-Type")&&e[v2].headersList.append("content-type",r.type)}}Wh.converters.ReadableStream=Wh.interfaceConverter(vKn);Wh.converters.FormData=Wh.interfaceConverter(jna);Wh.converters.URLSearchParams=Wh.interfaceConverter(URLSearchParams);Wh.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?Wh.converters.USVString(e):Yna(e)?Wh.converters.Blob(e,{strict:!1}):d_r.isArrayBuffer(e)||d_r.isTypedArray(e)||d_r.isDataView(e)?Wh.converters.BufferSource(e):p_r.isFormDataLike(e)?Wh.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?Wh.converters.URLSearchParams(e):Wh.converters.DOMString(e)};Wh.converters.BodyInit=function(e){return e instanceof vKn?Wh.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:Wh.converters.XMLHttpRequestBodyInit(e)};Wh.converters.ResponseInit=Wh.dictionaryConverter([{key:"status",converter:Wh.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:Wh.converters.ByteString,defaultValue:""},{key:"headers",converter:Wh.converters.HeadersInit}]);wKn.exports={makeNetworkError:nIt,makeResponse:iIt,makeAppropriateNetworkError:eia,filterResponse:BKn,Response:$Be,cloneResponse:I_r}});var XHe=H((fou,xKn)=>{"use strict";var{extractBody:tia,mixinBody:ria,cloneBody:nia}=yHe(),{Headers:TKn,fill:iia,HeadersList:lIt}=KIe(),{FinalizationRegistry:sia}=BCr()(),QHe=zC(),{isValidHTTPToken:oia,sameOrigin:RKn,normalizeMethod:aia,makePolicyContainer:cia,normalizeMethodRecord:lia}=EM(),{forbiddenMethodsSet:uia,corsSafeListedMethodsSet:gia,referrerPolicy:Aia,requestRedirect:dia,requestMode:pia,requestCredentials:fia,requestCache:Iia,requestDuplex:hia}=Joe(),{kEnumerableProperty:oT}=QHe,{kHeaders:yG,kSignal:YHe,kState:P1,kGuard:oIt,kRealm:KW}=v$(),{webidl:Ff}=xZ(),{getGlobalOrigin:mia}=wBe(),{URLSerializer:Cia}=wX(),{kHeadersList:aIt,kConstruct:cIt}=GE(),_ia=wt("assert"),{getMaxListeners:NKn,setMaxListeners:DKn,getEventListeners:yia,defaultMaxListeners:kKn}=wt("events"),h_r=globalThis.TransformStream,bia=Symbol("abortController"),Eia=new sia(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),jIe=class e{constructor(t,r={}){if(t===cIt)return;Ff.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=Ff.converters.RequestInfo(t),r=Ff.converters.RequestInit(r),this[KW]={settingsObject:{baseUrl:mia(),get origin(){return this.baseUrl?.origin},policyContainer:cia()}};let n=null,a=null,o=this[KW].settingsObject.baseUrl,l=null;if(typeof t=="string"){let Q;try{Q=new URL(t,o)}catch(X){throw new TypeError("Failed to parse URL from "+t,{cause:X})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);n=uIt({urlList:[Q]}),a="cors"}else _ia(t instanceof e),n=t[P1],l=t[YHe];let A=this[KW].settingsObject.origin,f="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&RKn(n.window,A)&&(f=n.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),n=uIt({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:this[KW].settingsObject,window:f,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let I=Object.keys(r).length!==0;if(I&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),r.referrer!==void 0){let Q=r.referrer;if(Q==="")n.referrer="no-referrer";else{let X;try{X=new URL(Q,o)}catch(ae){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:ae})}X.protocol==="about:"&&X.hostname==="client"||A&&!RKn(X,this[KW].settingsObject.baseUrl)?n.referrer="client":n.referrer=X}}r.referrerPolicy!==void 0&&(n.referrerPolicy=r.referrerPolicy);let C;if(r.mode!==void 0?C=r.mode:C=a,C==="navigate")throw Ff.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(C!=null&&(n.mode=C),r.credentials!==void 0&&(n.credentials=r.credentials),r.cache!==void 0&&(n.cache=r.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(n.redirect=r.redirect),r.integrity!=null&&(n.integrity=String(r.integrity)),r.keepalive!==void 0&&(n.keepalive=!!r.keepalive),r.method!==void 0){let Q=r.method;if(!oia(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);if(uia.has(Q.toUpperCase()))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=lia[Q]??aia(Q),n.method=Q}r.signal!==void 0&&(l=r.signal),this[P1]=n;let b=new AbortController;if(this[YHe]=b.signal,this[YHe][KW]=this[KW],l!=null){if(!l||typeof l.aborted!="boolean"||typeof l.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(l.aborted)b.abort(l.reason);else{this[bia]=b;let Q=new WeakRef(b),X=function(){let ae=Q.deref();ae!==void 0&&ae.abort(this.reason)};try{(typeof NKn=="function"&&NKn(l)===kKn||yia(l,"abort").length>=kKn)&&DKn(100,l)}catch{}QHe.addAbortListener(l,X),Eia.register(b,{signal:l,abort:X})}}if(this[yG]=new TKn(cIt),this[yG][aIt]=n.headersList,this[yG][oIt]="request",this[yG][KW]=this[KW],C==="no-cors"){if(!gia.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);this[yG][oIt]="request-no-cors"}if(I){let Q=this[yG][aIt],X=r.headers!==void 0?r.headers:new lIt(Q);if(Q.clear(),X instanceof lIt){for(let[ae,ne]of X)Q.append(ae,ne);Q.cookies=X.cookies}else iia(this[yG],X)}let E=t instanceof e?t[P1].body:null;if((r.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let N=null;if(r.body!=null){let[Q,X]=tia(r.body,n.keepalive);N=Q,X&&!this[yG][aIt].contains("content-type")&&this[yG].append("content-type",X)}let B=N??E;if(B!=null&&B.source==null){if(N!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let F=B;if(N==null&&E!=null){if(QHe.isDisturbed(E.stream)||E.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");h_r||(h_r=wt("stream/web").TransformStream);let Q=new h_r;E.stream.pipeThrough(Q),F={source:E.source,length:E.length,stream:Q.readable}}this[P1].body=F}get method(){return Ff.brandCheck(this,e),this[P1].method}get url(){return Ff.brandCheck(this,e),Cia(this[P1].url)}get headers(){return Ff.brandCheck(this,e),this[yG]}get destination(){return Ff.brandCheck(this,e),this[P1].destination}get referrer(){return Ff.brandCheck(this,e),this[P1].referrer==="no-referrer"?"":this[P1].referrer==="client"?"about:client":this[P1].referrer.toString()}get referrerPolicy(){return Ff.brandCheck(this,e),this[P1].referrerPolicy}get mode(){return Ff.brandCheck(this,e),this[P1].mode}get credentials(){return this[P1].credentials}get cache(){return Ff.brandCheck(this,e),this[P1].cache}get redirect(){return Ff.brandCheck(this,e),this[P1].redirect}get integrity(){return Ff.brandCheck(this,e),this[P1].integrity}get keepalive(){return Ff.brandCheck(this,e),this[P1].keepalive}get isReloadNavigation(){return Ff.brandCheck(this,e),this[P1].reloadNavigation}get isHistoryNavigation(){return Ff.brandCheck(this,e),this[P1].historyNavigation}get signal(){return Ff.brandCheck(this,e),this[YHe]}get body(){return Ff.brandCheck(this,e),this[P1].body?this[P1].body.stream:null}get bodyUsed(){return Ff.brandCheck(this,e),!!this[P1].body&&QHe.isDisturbed(this[P1].body.stream)}get duplex(){return Ff.brandCheck(this,e),"half"}clone(){if(Ff.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=Sia(this[P1]),r=new e(cIt);r[P1]=t,r[KW]=this[KW],r[yG]=new TKn(cIt),r[yG][aIt]=t.headersList,r[yG][oIt]=this[yG][oIt],r[yG][KW]=this[yG][KW];let n=new AbortController;return this.signal.aborted?n.abort(this.signal.reason):QHe.addAbortListener(this.signal,()=>{n.abort(this.signal.reason)}),r[YHe]=n.signal,r}};ria(jIe);function uIt(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new lIt(e.headersList):new lIt};return t.url=t.urlList[0],t}function Sia(e){let t=uIt({...e,body:null});return e.body!=null&&(t.body=nia(e.body)),t}Object.defineProperties(jIe.prototype,{method:oT,url:oT,headers:oT,redirect:oT,clone:oT,signal:oT,duplex:oT,destination:oT,body:oT,bodyUsed:oT,isHistoryNavigation:oT,isReloadNavigation:oT,keepalive:oT,integrity:oT,cache:oT,credentials:oT,attribute:oT,referrerPolicy:oT,referrer:oT,mode:oT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Ff.converters.Request=Ff.interfaceConverter(jIe);Ff.converters.RequestInfo=function(e){return typeof e=="string"?Ff.converters.USVString(e):e instanceof jIe?Ff.converters.Request(e):Ff.converters.USVString(e)};Ff.converters.AbortSignal=Ff.interfaceConverter(AbortSignal);Ff.converters.RequestInit=Ff.dictionaryConverter([{key:"method",converter:Ff.converters.ByteString},{key:"headers",converter:Ff.converters.HeadersInit},{key:"body",converter:Ff.nullableConverter(Ff.converters.BodyInit)},{key:"referrer",converter:Ff.converters.USVString},{key:"referrerPolicy",converter:Ff.converters.DOMString,allowedValues:Aia},{key:"mode",converter:Ff.converters.DOMString,allowedValues:pia},{key:"credentials",converter:Ff.converters.DOMString,allowedValues:fia},{key:"cache",converter:Ff.converters.DOMString,allowedValues:Iia},{key:"redirect",converter:Ff.converters.DOMString,allowedValues:dia},{key:"integrity",converter:Ff.converters.DOMString},{key:"keepalive",converter:Ff.converters.boolean},{key:"signal",converter:Ff.nullableConverter(e=>Ff.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:Ff.converters.any},{key:"duplex",converter:Ff.converters.DOMString,allowedValues:hia}]);xKn.exports={Request:jIe,makeRequest:uIt}});var hIt=H((Iou,JKn)=>{"use strict";var{Response:via,makeNetworkError:Kb,makeAppropriateNetworkError:gIt,filterResponse:m_r,makeResponse:AIt}=sIt(),{Headers:GKn}=KIe(),{Request:Bia,makeRequest:wia}=XHe(),JHe=wt("zlib"),{bytesMatch:Tia,makePolicyContainer:Ria,clonePolicyContainer:Nia,requestBadPort:Dia,TAOCheck:kia,appendRequestOriginHeader:xia,responseLocationURL:Gia,requestCurrentURL:S8,setRequestReferrerPolicyOnRedirect:Fia,tryUpgradeRequestToAPotentiallyTrustworthyURL:Zia,createOpaqueTimingInfo:w_r,appendFetchMetadata:Lia,corsCheck:Via,crossOriginResourcePolicyCheck:Pia,determineRequestsReferrer:Wia,coarsenedSharedCurrentTime:T_r,createDeferredPromise:Oia,isBlobLike:Mia,sameOrigin:S_r,isCancelled:twe,isAborted:FKn,isErrorLike:Hia,fullyReadBody:PKn,readableStreamClose:Yia,isomorphicEncode:v_r,urlIsLocal:Qia,urlIsHttpHttpsScheme:R_r,urlHasHttpsScheme:Xia}=EM(),{kState:B_r,kHeaders:C_r,kGuard:Jia,kRealm:ZKn}=v$(),rwe=wt("assert"),{safelyExtractBody:dIt}=yHe(),{redirectStatusSet:WKn,nullBodyStatus:OKn,safeMethodsSet:Uia,requestBodyHeader:Kia,subresourceSet:jia,DOMException:pIt}=Joe(),{kHeadersList:ewe}=GE(),zia=wt("events"),{Readable:qia,pipeline:$ia}=wt("stream"),{addAbortListener:esa,isErrored:tsa,isReadable:fIt,nodeMajor:LKn,nodeMinor:rsa}=zC(),{dataURLProcessor:nsa,serializeAMimeType:isa}=wX(),{TransformStream:ssa}=wt("stream/web"),{getGlobalDispatcher:osa}=KBe(),{webidl:asa}=xZ(),{STATUS_CODES:csa}=wt("http"),lsa=["GET","HEAD"],__r,y_r=globalThis.ReadableStream,IIt=class extends zia{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new pIt("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function usa(e,t={}){asa.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=Oia(),n;try{n=new Bia(e,t)}catch(E){return r.reject(E),r.promise}let a=n[B_r];if(n.signal.aborted)return b_r(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=null,f=!1,I=null;return esa(n.signal,()=>{f=!0,rwe(I!=null),I.abort(n.signal.reason),b_r(r,a,l,n.signal.reason)}),I=HKn({request:a,processResponseEndOfBody:E=>MKn(E,"fetch"),processResponse:E=>{if(f)return Promise.resolve();if(E.aborted)return b_r(r,a,l,I.serializedAbortReason),Promise.resolve();if(E.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:E.error})),Promise.resolve();l=new via,l[B_r]=E,l[ZKn]=A,l[C_r][ewe]=E.headersList,l[C_r][Jia]="immutable",l[C_r][ZKn]=A,r.resolve(l)},dispatcher:t.dispatcher??osa()}),r.promise}function MKn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;R_r(r)&&n!==null&&(e.timingAllowPassed||(n=w_r({startTime:n.startTime}),a=""),n.endTime=T_r(),e.timingInfo=n,gsa(n,r,t,globalThis,a))}function gsa(e,t,r,n,a){(LKn>18||LKn===18&&rsa>=2)&&performance.markResourceTiming(e,t.href,r,n,a)}function b_r(e,t,r,n){if(n||(n=new pIt("The operation was aborted.","AbortError")),e.reject(n),t.body!=null&&fIt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[B_r];a.body!=null&&fIt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function HKn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A}){let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=T_r(I),b=w_r({startTime:C}),E={controller:new IIt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return rwe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=Nia(e.client.policyContainer):e.policyContainer=Ria()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,jia.has(e.destination),YKn(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function YKn(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!Qia(S8(r))&&(n=Kb("local URLs only")),Zia(r),Dia(r)==="blocked"&&(n=Kb("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=Wia(r)),n===null&&(n=await(async()=>{let o=S8(r);return S_r(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await VKn(e)):r.mode==="same-origin"?Kb('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?Kb('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await VKn(e)):R_r(S8(r))?(r.responseTainting="cors",await QKn(e)):Kb("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=m_r(n,"basic"):r.responseTainting==="cors"?n=m_r(n,"cors"):r.responseTainting==="opaque"?n=m_r(n,"opaque"):rwe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(n=a=Kb()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||OKn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>E_r(e,Kb(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!Tia(A,r.integrity)){o("integrity mismatch");return}n.body=dIt(A)[0],E_r(e,n)};await PKn(n.body,l,o)}else E_r(e,n)}function VKn(e){if(twe(e)&&e.request.redirectCount===0)return Promise.resolve(gIt(e));let{request:t}=e,{protocol:r}=S8(t);switch(r){case"about:":return Promise.resolve(Kb("about scheme is not supported"));case"blob:":{__r||(__r=wt("buffer").resolveObjectURL);let n=S8(t);if(n.search.length!==0)return Promise.resolve(Kb("NetworkError when attempting to fetch resource."));let a=__r(n.toString());if(t.method!=="GET"||!Mia(a))return Promise.resolve(Kb("invalid method"));let o=dIt(a),l=o[0],A=v_r(`${l.length}`),f=o[1]??"",I=AIt({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:A}],["content-type",{name:"Content-Type",value:f}]]});return I.body=l,Promise.resolve(I)}case"data:":{let n=S8(t),a=nsa(n);if(a==="failure")return Promise.resolve(Kb("failed to fetch the data URL"));let o=isa(a.mimeType);return Promise.resolve(AIt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:dIt(a.body)[0]}))}case"file:":return Promise.resolve(Kb("not implemented... yet..."));case"http:":case"https:":return QKn(e).catch(n=>Kb(n));default:return Promise.resolve(Kb("unknown scheme"))}}function Asa(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function E_r(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=w_r({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let n=(o,l)=>{l.enqueue(o)},a=new ssa({start(){},transform:n,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let n=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>n(null));else return PKn(t.body,n,a);return Promise.resolve()}}async function QKn(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await XKn(e),t.responseTainting==="cors"&&Via(t,r)==="failure")return Kb("cors failure");kia(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&Pia(t.origin,t.client,t.destination,n)==="blocked"?Kb("blocked"):(WKn.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=Kb("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await dsa(e,r):rwe(!1)),r.timingInfo=a,r)}function dsa(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=Gia(n,S8(r).hash),a==null)return t}catch(l){return Promise.resolve(Kb(l))}if(!R_r(a))return Promise.resolve(Kb("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(Kb("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!S_r(r,a))return Promise.resolve(Kb('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(Kb('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(Kb());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!lsa.includes(r.method)){r.method="GET",r.body=null;for(let l of Kia)r.headersList.delete(l)}S_r(S8(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(rwe(r.body.source!=null),r.body=dIt(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=T_r(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),Fia(r,n),YKn(e,!0)}async function XKn(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=wia(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=v_r(`${C}`)),b!=null&&o.headersList.append("content-length",b),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",v_r(o.referrer.href)),xia(o),Lia(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(Xia(S8(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),A==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,l==null){if(o.mode==="only-if-cached")return Kb("only if cached");let E=await psa(a,I,r);!Uia.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range")&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?Kb():twe(e)?gIt(e):Kb("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(twe(e))return gIt(e);e.controller.connection.destroy(),l=await XKn(e,t,!0)}return l}async function psa(e,t=!1,r=!1){rwe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B){this.destroyed||(this.destroyed=!0,this.abort?.(B??new pIt("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(X){twe(e)||(yield X,e.processRequestBodyChunkLength?.(X.byteLength))},F=()=>{twe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=X=>{twe(e)||(X.name==="AbortError"?e.controller.abort():e.controller.terminate(X))};f=async function*(){try{for await(let X of n.body.stream)yield*B(X);F()}catch(X){Q(X)}}()}try{let{body:B,status:F,statusText:Q,headersList:X,socket:ae}=await N({body:f});if(ae)a=AIt({status:F,statusText:Q,headersList:X,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=AIt({status:F,statusText:Q,headersList:X})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),gIt(e,B)):Kb(B)}let I=()=>{e.controller.resume()},C=B=>{e.controller.abort(B)};y_r||(y_r=wt("stream/web").ReadableStream);let b=new y_r({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)}},{highWaterMark:0,size(){return 1}});a.body={stream:b},e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:Q,value:X}=await e.controller.next();if(FKn(e))break;B=Q?void 0:X}catch(Q){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=Q,F=!0)}if(B===void 0){Yia(e.controller.controller),Asa(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}if(e.controller.controller.enqueue(new Uint8Array(B)),tsa(b)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function E(B){FKn(e)?(a.aborted=!0,fIt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):fIt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:Hia(B)?B:void 0})),e.controller.connection.destroy()}return a;async function N({body:B}){let F=S8(n),Q=e.controller.dispatcher;return new Promise((X,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:e.controller.dispatcher.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;ce.destroyed?ne(new pIt("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new GKn;if(Array.isArray(ce))for(let et=0;etje.trim()):ct.toLowerCase()==="location"&&(be=Me),Se[ewe].append(ct,Me)}else{let et=Object.keys(ce);for(let ct of et){let Me=ce[ct];ct.toLowerCase()==="content-encoding"?de=Me.toLowerCase().split(",").map(je=>je.trim()).reverse():ct.toLowerCase()==="location"&&(be=Me),Se[ewe].append(ct,Me)}}this.body=new qia({read:fe});let De=[],k=n.redirect==="follow"&&be&&WKn.has(ne);if(n.method!=="HEAD"&&n.method!=="CONNECT"&&!OKn.includes(ne)&&!k)for(let et of de)if(et==="x-gzip"||et==="gzip")De.push(JHe.createGunzip({flush:JHe.constants.Z_SYNC_FLUSH,finishFlush:JHe.constants.Z_SYNC_FLUSH}));else if(et==="deflate")De.push(JHe.createInflate());else if(et==="br")De.push(JHe.createBrotliDecompress());else{De.length=0;break}return X({status:ne,statusText:ue,headersList:Se[ewe],body:De.length?$ia(this.body,...De,()=>{}):this.body.on("error",()=>{})}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new GKn;for(let de=0;de{"use strict";UKn.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var jKn=H((mou,KKn)=>{"use strict";var{webidl:jW}=xZ(),mIt=Symbol("ProgressEvent state"),D_r=class e extends Event{constructor(t,r={}){t=jW.converters.DOMString(t),r=jW.converters.ProgressEventInit(r??{}),super(t,r),this[mIt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return jW.brandCheck(this,e),this[mIt].lengthComputable}get loaded(){return jW.brandCheck(this,e),this[mIt].loaded}get total(){return jW.brandCheck(this,e),this[mIt].total}};jW.converters.ProgressEventInit=jW.dictionaryConverter([{key:"lengthComputable",converter:jW.converters.boolean,defaultValue:!1},{key:"loaded",converter:jW.converters["unsigned long long"],defaultValue:0},{key:"total",converter:jW.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:jW.converters.boolean,defaultValue:!1},{key:"cancelable",converter:jW.converters.boolean,defaultValue:!1},{key:"composed",converter:jW.converters.boolean,defaultValue:!1}]);KKn.exports={ProgressEvent:D_r}});var qKn=H((Cou,zKn)=>{"use strict";function fsa(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}zKn.exports={getEncoding:fsa}});var o8n=H((_ou,s8n)=>{"use strict";var{kState:nwe,kError:k_r,kResult:$Kn,kAborted:UHe,kLastProgressEventFired:x_r}=N_r(),{ProgressEvent:Isa}=jKn(),{getEncoding:e8n}=qKn(),{DOMException:hsa}=Joe(),{serializeAMimeType:msa,parseMIMEType:t8n}=wX(),{types:Csa}=wt("util"),{StringDecoder:r8n}=wt("string_decoder"),{btoa:n8n}=wt("buffer"),_sa={enumerable:!0,writable:!1,configurable:!1};function ysa(e,t,r,n){if(e[nwe]==="loading")throw new hsa("Invalid state","InvalidStateError");e[nwe]="loading",e[$Kn]=null,e[k_r]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[UHe];)try{let{done:I,value:C}=await A;if(f&&!e[UHe]&&queueMicrotask(()=>{tae("loadstart",e)}),f=!1,!I&&Csa.isUint8Array(C))l.push(C),(e[x_r]===void 0||Date.now()-e[x_r]>=50)&&!e[UHe]&&(e[x_r]=Date.now(),queueMicrotask(()=>{tae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[nwe]="done";try{let b=bsa(l,r,t.type,n);if(e[UHe])return;e[$Kn]=b,tae("load",e)}catch(b){e[k_r]=b,tae("error",e)}e[nwe]!=="loading"&&tae("loadend",e)});break}}catch(I){if(e[UHe])return;queueMicrotask(()=>{e[nwe]="done",e[k_r]=I,tae("error",e),e[nwe]!=="loading"&&tae("loadend",e)});break}})()}function tae(e,t){let r=new Isa(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function bsa(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=t8n(r||"application/octet-stream");o!=="failure"&&(a+=msa(o)),a+=";base64,";let l=new r8n("latin1");for(let A of e)a+=n8n(l.write(A));return a+=n8n(l.end()),a}case"Text":{let a="failure";if(n&&(a=e8n(n)),a==="failure"&&r){let o=t8n(r);o!=="failure"&&(a=e8n(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),Esa(e,a)}case"ArrayBuffer":return i8n(e).buffer;case"BinaryString":{let a="",o=new r8n("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function Esa(e,t){let r=i8n(e),n=Ssa(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function Ssa(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function i8n(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}s8n.exports={staticPropertyDescriptors:_sa,readOperation:ysa,fireAProgressEvent:tae}});var u8n=H((you,l8n)=>{"use strict";var{staticPropertyDescriptors:iwe,readOperation:CIt,fireAProgressEvent:a8n}=o8n(),{kState:zIe,kError:c8n,kResult:_It,kEvents:I0,kAborted:vsa}=N_r(),{webidl:nb}=xZ(),{kEnumerableProperty:q9}=zC(),DX=class e extends EventTarget{constructor(){super(),this[zIe]="empty",this[_It]=null,this[c8n]=null,this[I0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=nb.converters.Blob(t,{strict:!1}),CIt(this,t,"ArrayBuffer")}readAsBinaryString(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=nb.converters.Blob(t,{strict:!1}),CIt(this,t,"BinaryString")}readAsText(t,r=void 0){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=nb.converters.Blob(t,{strict:!1}),r!==void 0&&(r=nb.converters.DOMString(r)),CIt(this,t,"Text",r)}readAsDataURL(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=nb.converters.Blob(t,{strict:!1}),CIt(this,t,"DataURL")}abort(){if(this[zIe]==="empty"||this[zIe]==="done"){this[_It]=null;return}this[zIe]==="loading"&&(this[zIe]="done",this[_It]=null),this[vsa]=!0,a8n("abort",this),this[zIe]!=="loading"&&a8n("loadend",this)}get readyState(){switch(nb.brandCheck(this,e),this[zIe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return nb.brandCheck(this,e),this[_It]}get error(){return nb.brandCheck(this,e),this[c8n]}get onloadend(){return nb.brandCheck(this,e),this[I0].loadend}set onloadend(t){nb.brandCheck(this,e),this[I0].loadend&&this.removeEventListener("loadend",this[I0].loadend),typeof t=="function"?(this[I0].loadend=t,this.addEventListener("loadend",t)):this[I0].loadend=null}get onerror(){return nb.brandCheck(this,e),this[I0].error}set onerror(t){nb.brandCheck(this,e),this[I0].error&&this.removeEventListener("error",this[I0].error),typeof t=="function"?(this[I0].error=t,this.addEventListener("error",t)):this[I0].error=null}get onloadstart(){return nb.brandCheck(this,e),this[I0].loadstart}set onloadstart(t){nb.brandCheck(this,e),this[I0].loadstart&&this.removeEventListener("loadstart",this[I0].loadstart),typeof t=="function"?(this[I0].loadstart=t,this.addEventListener("loadstart",t)):this[I0].loadstart=null}get onprogress(){return nb.brandCheck(this,e),this[I0].progress}set onprogress(t){nb.brandCheck(this,e),this[I0].progress&&this.removeEventListener("progress",this[I0].progress),typeof t=="function"?(this[I0].progress=t,this.addEventListener("progress",t)):this[I0].progress=null}get onload(){return nb.brandCheck(this,e),this[I0].load}set onload(t){nb.brandCheck(this,e),this[I0].load&&this.removeEventListener("load",this[I0].load),typeof t=="function"?(this[I0].load=t,this.addEventListener("load",t)):this[I0].load=null}get onabort(){return nb.brandCheck(this,e),this[I0].abort}set onabort(t){nb.brandCheck(this,e),this[I0].abort&&this.removeEventListener("abort",this[I0].abort),typeof t=="function"?(this[I0].abort=t,this.addEventListener("abort",t)):this[I0].abort=null}};DX.EMPTY=DX.prototype.EMPTY=0;DX.LOADING=DX.prototype.LOADING=1;DX.DONE=DX.prototype.DONE=2;Object.defineProperties(DX.prototype,{EMPTY:iwe,LOADING:iwe,DONE:iwe,readAsArrayBuffer:q9,readAsBinaryString:q9,readAsText:q9,readAsDataURL:q9,abort:q9,readyState:q9,result:q9,error:q9,onloadstart:q9,onprogress:q9,onload:q9,onabort:q9,onerror:q9,onloadend:q9,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(DX,{EMPTY:iwe,LOADING:iwe,DONE:iwe});l8n.exports={FileReader:DX}});var yIt=H((bou,g8n)=>{"use strict";g8n.exports={kConstruct:GE().kConstruct}});var p8n=H((Eou,d8n)=>{"use strict";var Bsa=wt("assert"),{URLSerializer:A8n}=wX(),{isValidHeaderName:wsa}=EM();function Tsa(e,t,r=!1){let n=A8n(e,r),a=A8n(t,r);return n===a}function Rsa(e){Bsa(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!wsa(r))continue}else continue;t.push(r)}return t}d8n.exports={urlEquals:Tsa,fieldValues:Rsa}});var _8n=H((Sou,C8n)=>{"use strict";var{kConstruct:Nsa}=yIt(),{urlEquals:Dsa,fieldValues:G_r}=p8n(),{kEnumerableProperty:qIe,isDisturbed:ksa}=zC(),{kHeadersList:f8n}=GE(),{webidl:Lp}=xZ(),{Response:h8n,cloneResponse:xsa}=sIt(),{Request:v8}=XHe(),{kState:VZ,kHeaders:bIt,kGuard:I8n,kRealm:Gsa}=v$(),{fetching:Fsa}=hIt(),{urlIsHttpHttpsScheme:EIt,createDeferredPromise:swe,readAllBytes:Zsa}=EM(),F_r=wt("assert"),{getGlobalDispatcher:Lsa}=KBe(),SIt=class e{#e;constructor(){arguments[0]!==Nsa&&Lp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.CacheQueryOptions(r);let n=await this.matchAll(t,r);if(n.length!==0)return n[0]}async matchAll(t=void 0,r={}){Lp.brandCheck(this,e),t!==void 0&&(t=Lp.converters.RequestInfo(t)),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new v8(t)[VZ]);let a=[];if(t===void 0)for(let l of this.#e)a.push(l[1]);else{let l=this.#n(n,r);for(let A of l)a.push(A[1])}let o=[];for(let l of a){let A=new h8n(l.body?.source??null),f=A[VZ].body;A[VZ]=l,A[VZ].body=f,A[bIt][f8n]=l.headersList,A[bIt][I8n]="immutable",o.push(A)}return Object.freeze(o)}async add(t){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Lp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Lp.converters["sequence"](t);let r=[],n=[];for(let b of t){if(typeof b=="string")continue;let E=b[VZ];if(!EIt(E.url)||E.method!=="GET")throw Lp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let b of t){let E=new v8(b)[VZ];if(!EIt(E.url))throw Lp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let N=swe();a.push(Fsa({request:E,dispatcher:Lsa(),processResponse(B){if(B.type==="error"||B.status===206||B.status<200||B.status>299)N.reject(Lp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(B.headersList.contains("vary")){let F=G_r(B.headersList.get("vary"));for(let Q of F)if(Q==="*"){N.reject(Lp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let X of a)X.abort();return}}},processResponseEndOfBody(B){if(B.aborted){N.reject(new DOMException("aborted","AbortError"));return}N.resolve(B)}})),r.push(N.promise)}let l=await Promise.all(r),A=[],f=0;for(let b of l){let E={type:"put",request:n[f],response:b};A.push(E),f++}let I=swe(),C=null;try{this.#t(A)}catch(b){C=b}return queueMicrotask(()=>{C===null?I.resolve(void 0):I.reject(C)}),I.promise}async put(t,r){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.Response(r);let n=null;if(t instanceof v8?n=t[VZ]:n=new v8(t)[VZ],!EIt(n.url)||n.method!=="GET")throw Lp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[VZ];if(a.status===206)throw Lp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let E=G_r(a.headersList.get("vary"));for(let N of E)if(N==="*")throw Lp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(ksa(a.body.stream)||a.body.stream.locked))throw Lp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=xsa(a),l=swe();if(a.body!=null){let N=a.body.stream.getReader();Zsa(N).then(l.resolve,l.reject)}else l.resolve(void 0);let A=[],f={type:"put",request:n,response:o};A.push(f);let I=await l.promise;o.body!=null&&(o.body.source=I);let C=swe(),b=null;try{this.#t(A)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve():C.reject(b)}),C.promise}async delete(t,r={}){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return!1}else F_r(typeof t=="string"),n=new v8(t)[VZ];let a=[],o={type:"delete",request:n,options:r};a.push(o);let l=swe(),A=null,f;try{f=this.#t(a)}catch(I){A=I}return queueMicrotask(()=>{A===null?l.resolve(!!f?.length):l.reject(A)}),l.promise}async keys(t=void 0,r={}){Lp.brandCheck(this,e),t!==void 0&&(t=Lp.converters.RequestInfo(t)),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new v8(t)[VZ]);let a=swe(),o=[];if(t===void 0)for(let l of this.#e)o.push(l[0]);else{let l=this.#n(n,r);for(let A of l)o.push(A[0])}return queueMicrotask(()=>{let l=[];for(let A of o){let f=new v8("https://a");f[VZ]=A,f[bIt][f8n]=A.headersList,f[bIt][I8n]="immutable",f[Gsa]=A.client,l.push(f)}a.resolve(Object.freeze(l))}),a.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);F_r(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!EIt(f.url))throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);F_r(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!Dsa(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=G_r(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}};Object.defineProperties(SIt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:qIe,matchAll:qIe,add:qIe,addAll:qIe,put:qIe,delete:qIe,keys:qIe});var m8n=[{key:"ignoreSearch",converter:Lp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Lp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Lp.converters.boolean,defaultValue:!1}];Lp.converters.CacheQueryOptions=Lp.dictionaryConverter(m8n);Lp.converters.MultiCacheQueryOptions=Lp.dictionaryConverter([...m8n,{key:"cacheName",converter:Lp.converters.DOMString}]);Lp.converters.Response=Lp.interfaceConverter(h8n);Lp.converters["sequence"]=Lp.sequenceConverter(Lp.converters.RequestInfo);C8n.exports={Cache:SIt}});var b8n=H((vou,y8n)=>{"use strict";var{kConstruct:KHe}=yIt(),{Cache:vIt}=_8n(),{webidl:PZ}=xZ(),{kEnumerableProperty:jHe}=zC(),BIt=class e{#e=new Map;constructor(){arguments[0]!==KHe&&PZ.illegalConstructor()}async match(t,r={}){if(PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=PZ.converters.RequestInfo(t),r=PZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new vIt(KHe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new vIt(KHe,n).match(t,r);if(o!==void 0)return o}}async has(t){return PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=PZ.converters.DOMString(t),this.#e.has(t)}async open(t){if(PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=PZ.converters.DOMString(t),this.#e.has(t)){let n=this.#e.get(t);return new vIt(KHe,n)}let r=[];return this.#e.set(t,r),new vIt(KHe,r)}async delete(t){return PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=PZ.converters.DOMString(t),this.#e.delete(t)}async keys(){return PZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(BIt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:jHe,has:jHe,open:jHe,delete:jHe,keys:jHe});y8n.exports={CacheStorage:BIt}});var S8n=H((Bou,E8n)=>{"use strict";E8n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Z_r=H((wou,w8n)=>{"use strict";var v8n=wt("assert"),{kHeadersList:B8n}=GE();function Vsa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function Psa(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function Wsa(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function Osa(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function Msa(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function Hsa(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],n=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],l=e.getUTCFullYear(),A=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),I=e.getUTCSeconds().toString().padStart(2,"0");return`${n}, ${a} ${o} ${l} ${A}:${f}:${I} GMT`}function Ysa(e){if(e<0)throw new Error("Invalid cookie max-age")}function Qsa(e){if(e.name.length===0)return null;Psa(e.name),Wsa(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(Ysa(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Msa(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Osa(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${Hsa(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}var wIt;function Xsa(e){if(e[B8n])return e[B8n];wIt||(wIt=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),v8n(wIt,"Headers cannot be parsed"));let t=e[wIt];return v8n(t),t}w8n.exports={isCTLExcludingHtab:Vsa,stringify:Qsa,getHeadersList:Xsa}});var R8n=H((Tou,T8n)=>{"use strict";var{maxNameValuePairSize:Jsa,maxAttributeValueSize:Usa}=S8n(),{isCTLExcludingHtab:Ksa}=Z_r(),{collectASequenceOfCodePointsFast:TIt}=wX(),jsa=wt("assert");function zsa(e){if(Ksa(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=TIt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=TIt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Jsa?null:{name:n,value:a,...owe(r)}}function owe(e,t={}){if(e.length===0)return t;jsa(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=TIt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=TIt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Usa)return owe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return owe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return owe(e,t)}T8n.exports={parseSetCookie:zsa,parseUnparsedAttributes:owe}});var x8n=H((Rou,k8n)=>{"use strict";var{parseSetCookie:qsa}=R8n(),{stringify:N8n,getHeadersList:$sa}=Z_r(),{webidl:rC}=xZ(),{Headers:RIt}=KIe();function eoa(e){rC.argumentLengthCheck(arguments,1,{header:"getCookies"}),rC.brandCheck(e,RIt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function toa(e,t,r){rC.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),rC.brandCheck(e,RIt,{strict:!1}),t=rC.converters.DOMString(t),r=rC.converters.DeleteCookieAttributes(r),D8n(e,{name:t,value:"",expires:new Date(0),...r})}function roa(e){rC.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),rC.brandCheck(e,RIt,{strict:!1});let t=$sa(e).cookies;return t?t.map(r=>qsa(Array.isArray(r)?r[1]:r)):[]}function D8n(e,t){rC.argumentLengthCheck(arguments,2,{header:"setCookie"}),rC.brandCheck(e,RIt,{strict:!1}),t=rC.converters.Cookie(t),N8n(t)&&e.append("Set-Cookie",N8n(t))}rC.converters.DeleteCookieAttributes=rC.dictionaryConverter([{converter:rC.nullableConverter(rC.converters.DOMString),key:"path",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"domain",defaultValue:null}]);rC.converters.Cookie=rC.dictionaryConverter([{converter:rC.converters.DOMString,key:"name"},{converter:rC.converters.DOMString,key:"value"},{converter:rC.nullableConverter(e=>typeof e=="number"?rC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:rC.nullableConverter(rC.converters["long long"]),key:"maxAge",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"domain",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"path",defaultValue:null},{converter:rC.nullableConverter(rC.converters.boolean),key:"secure",defaultValue:null},{converter:rC.nullableConverter(rC.converters.boolean),key:"httpOnly",defaultValue:null},{converter:rC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:rC.sequenceConverter(rC.converters.DOMString),key:"unparsed",defaultValue:[]}]);k8n.exports={getCookies:eoa,deleteCookie:toa,getSetCookies:roa,setCookie:D8n}});var awe=H((Nou,G8n)=>{"use strict";var noa="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",ioa={enumerable:!0,writable:!1,configurable:!1},soa={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},ooa={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},aoa=2**16-1,coa={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},loa=Buffer.allocUnsafe(0);G8n.exports={uid:noa,staticPropertyDescriptors:ioa,states:soa,opcodes:ooa,maxUnsigned16Bit:aoa,parserStates:coa,emptyBuffer:loa}});var zHe=H((Dou,F8n)=>{"use strict";F8n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var V_r=H((kou,Z8n)=>{"use strict";var{webidl:Vp}=xZ(),{kEnumerableProperty:$9}=zC(),{MessagePort:uoa}=wt("worker_threads"),NIt=class e extends Event{#e;constructor(t,r={}){Vp.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Vp.converters.DOMString(t),r=Vp.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Vp.brandCheck(this,e),this.#e.data}get origin(){return Vp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Vp.brandCheck(this,e),this.#e.lastEventId}get source(){return Vp.brandCheck(this,e),this.#e.source}get ports(){return Vp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Vp.brandCheck(this,e),Vp.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}},DIt=class e extends Event{#e;constructor(t,r={}){Vp.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Vp.converters.DOMString(t),r=Vp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Vp.brandCheck(this,e),this.#e.wasClean}get code(){return Vp.brandCheck(this,e),this.#e.code}get reason(){return Vp.brandCheck(this,e),this.#e.reason}},kIt=class e extends Event{#e;constructor(t,r){Vp.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Vp.converters.DOMString(t),r=Vp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Vp.brandCheck(this,e),this.#e.message}get filename(){return Vp.brandCheck(this,e),this.#e.filename}get lineno(){return Vp.brandCheck(this,e),this.#e.lineno}get colno(){return Vp.brandCheck(this,e),this.#e.colno}get error(){return Vp.brandCheck(this,e),this.#e.error}};Object.defineProperties(NIt.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:$9,origin:$9,lastEventId:$9,source:$9,ports:$9,initMessageEvent:$9});Object.defineProperties(DIt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:$9,code:$9,wasClean:$9});Object.defineProperties(kIt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:$9,filename:$9,lineno:$9,colno:$9,error:$9});Vp.converters.MessagePort=Vp.interfaceConverter(uoa);Vp.converters["sequence"]=Vp.sequenceConverter(Vp.converters.MessagePort);var L_r=[{key:"bubbles",converter:Vp.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Vp.converters.boolean,defaultValue:!1},{key:"composed",converter:Vp.converters.boolean,defaultValue:!1}];Vp.converters.MessageEventInit=Vp.dictionaryConverter([...L_r,{key:"data",converter:Vp.converters.any,defaultValue:null},{key:"origin",converter:Vp.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Vp.converters.DOMString,defaultValue:""},{key:"source",converter:Vp.nullableConverter(Vp.converters.MessagePort),defaultValue:null},{key:"ports",converter:Vp.converters["sequence"],get defaultValue(){return[]}}]);Vp.converters.CloseEventInit=Vp.dictionaryConverter([...L_r,{key:"wasClean",converter:Vp.converters.boolean,defaultValue:!1},{key:"code",converter:Vp.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Vp.converters.USVString,defaultValue:""}]);Vp.converters.ErrorEventInit=Vp.dictionaryConverter([...L_r,{key:"message",converter:Vp.converters.DOMString,defaultValue:""},{key:"filename",converter:Vp.converters.USVString,defaultValue:""},{key:"lineno",converter:Vp.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Vp.converters["unsigned long"],defaultValue:0},{key:"error",converter:Vp.converters.any}]);Z8n.exports={MessageEvent:NIt,CloseEvent:DIt,ErrorEvent:kIt}});var FIt=H((xou,P8n)=>{"use strict";var{kReadyState:xIt,kController:goa,kResponse:Aoa,kBinaryType:doa,kWebSocketURL:poa}=zHe(),{states:GIt,opcodes:L8n}=awe(),{MessageEvent:foa,ErrorEvent:Ioa}=V_r();function hoa(e){return e[xIt]===GIt.OPEN}function moa(e){return e[xIt]===GIt.CLOSING}function Coa(e){return e[xIt]===GIt.CLOSED}function P_r(e,t,r=Event,n){let a=new r(e,n);t.dispatchEvent(a)}function _oa(e,t,r){if(e[xIt]!==GIt.OPEN)return;let n;if(t===L8n.TEXT)try{n=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{V8n(e,"Received invalid UTF-8 in text frame.");return}else t===L8n.BINARY&&(e[doa]==="blob"?n=new Blob([r]):n=new Uint8Array(r).buffer);P_r("message",e,foa,{origin:e[poa].origin,data:n})}function yoa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function boa(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function V8n(e,t){let{[goa]:r,[Aoa]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&P_r("error",e,Ioa,{error:new Error(t)})}P8n.exports={isEstablished:hoa,isClosing:moa,isClosed:Coa,fireEvent:P_r,isValidSubprotocol:yoa,isValidStatusCode:boa,failWebsocketConnection:V8n,websocketMessageReceived:_oa}});var Q8n=H((Gou,Y8n)=>{"use strict";var O_r=wt("diagnostics_channel"),{uid:Eoa,states:O8n}=awe(),{kReadyState:M8n,kSentClose:W8n,kByteParser:H8n,kReceivedClose:Soa}=zHe(),{fireEvent:voa,failWebsocketConnection:$Ie}=FIt(),{CloseEvent:Boa}=V_r(),{makeRequest:woa}=XHe(),{fetching:Toa}=hIt(),{Headers:Roa}=KIe(),{getGlobalDispatcher:Noa}=KBe(),{kHeadersList:Doa}=GE(),G$={};G$.open=O_r.channel("undici:websocket:open");G$.close=O_r.channel("undici:websocket:close");G$.socketError=O_r.channel("undici:websocket:socket_error");var W_r;try{W_r=wt("crypto")}catch{}function koa(e,t,r,n,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let l=woa({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let C=new Roa(a.headers)[Doa];l.headersList=C}let A=W_r.randomBytes(16).toString("base64");l.headersList.append("sec-websocket-key",A),l.headersList.append("sec-websocket-version","13");for(let C of t)l.headersList.append("sec-websocket-protocol",C);let f="";return Toa({request:l,useParallelQueue:!0,dispatcher:a.dispatcher??Noa(),processResponse(C){if(C.type==="error"||C.status!==101){$Ie(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!C.headersList.get("Sec-WebSocket-Protocol")){$Ie(r,"Server did not respond with sent protocols.");return}if(C.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){$Ie(r,'Server did not set Upgrade header to "websocket".');return}if(C.headersList.get("Connection")?.toLowerCase()!=="upgrade"){$Ie(r,'Server did not set Connection header to "upgrade".');return}let b=C.headersList.get("Sec-WebSocket-Accept"),E=W_r.createHash("sha1").update(A+Eoa).digest("base64");if(b!==E){$Ie(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let N=C.headersList.get("Sec-WebSocket-Extensions");if(N!==null&&N!==f){$Ie(r,"Received different permessage-deflate than the one set.");return}let B=C.headersList.get("Sec-WebSocket-Protocol");if(B!==null&&B!==l.headersList.get("Sec-WebSocket-Protocol")){$Ie(r,"Protocol was not set in the opening handshake.");return}C.socket.on("data",xoa),C.socket.on("close",Goa),C.socket.on("error",Foa),G$.open.hasSubscribers&&G$.open.publish({address:C.socket.address(),protocol:B,extensions:N}),n(C)}})}function xoa(e){this.ws[H8n].write(e)||this.pause()}function Goa(){let{ws:e}=this,t=e[W8n]&&e[Soa],r=1005,n="",a=e[H8n].closingInfo;a?(r=a.code??1005,n=a.reason):e[W8n]||(r=1006),e[M8n]=O8n.CLOSED,voa("close",e,Boa,{wasClean:t,code:r,reason:n}),G$.close.hasSubscribers&&G$.close.publish({websocket:e,code:r,reason:n})}function Foa(e){let{ws:t}=this;t[M8n]=O8n.CLOSING,G$.socketError.hasSubscribers&&G$.socketError.publish(e),this.destroy()}Y8n.exports={establishWebSocketConnection:koa}});var H_r=H((Fou,J8n)=>{"use strict";var{maxUnsigned16Bit:Zoa}=awe(),X8n;try{X8n=wt("crypto")}catch{}var M_r=class{constructor(t){this.frameData=t,this.maskKey=X8n.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,n=r,a=6;r>Zoa?(a+=8,n=127):r>125&&(a+=2,n=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=n,n===126?o.writeUInt16BE(r,2):n===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let l=0;l{"use strict";var{Writable:Loa}=wt("stream"),$8n=wt("diagnostics_channel"),{parserStates:BM,opcodes:wM,states:Voa,emptyBuffer:Poa}=awe(),{kReadyState:Woa,kSentClose:U8n,kResponse:K8n,kReceivedClose:j8n}=zHe(),{isValidStatusCode:z8n,failWebsocketConnection:qHe,websocketMessageReceived:Ooa}=FIt(),{WebsocketFrameSend:q8n}=H_r(),cwe={};cwe.ping=$8n.channel("undici:websocket:ping");cwe.pong=$8n.channel("undici:websocket:pong");var Y_r=class extends Loa{#e=[];#t=0;#n=BM.INFO;#r={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.run(n)}run(t){for(;;){if(this.#n===BM.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#r.fin=(r[0]&128)!==0,this.#r.opcode=r[0]&15,this.#r.originalOpcode??=this.#r.opcode,this.#r.fragmented=!this.#r.fin&&this.#r.opcode!==wM.CONTINUATION,this.#r.fragmented&&this.#r.opcode!==wM.BINARY&&this.#r.opcode!==wM.TEXT){qHe(this.ws,"Invalid frame type was fragmented.");return}let n=r[1]&127;if(n<=125?(this.#r.payloadLength=n,this.#n=BM.READ_DATA):n===126?this.#n=BM.PAYLOADLENGTH_16:n===127&&(this.#n=BM.PAYLOADLENGTH_64),this.#r.fragmented&&n>125){qHe(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#r.opcode===wM.PING||this.#r.opcode===wM.PONG||this.#r.opcode===wM.CLOSE)&&n>125){qHe(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#r.opcode===wM.CLOSE){if(n===1){qHe(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(n);if(this.#r.closeInfo=this.parseCloseBody(!1,a),!this.ws[U8n]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#r.closeInfo.code,0);let l=new q8n(o);this.ws[K8n].socket.write(l.createFrame(wM.CLOSE),A=>{A||(this.ws[U8n]=!0)})}this.ws[Woa]=Voa.CLOSING,this.ws[j8n]=!0,this.end();return}else if(this.#r.opcode===wM.PING){let a=this.consume(n);if(!this.ws[j8n]){let o=new q8n(a);this.ws[K8n].socket.write(o.createFrame(wM.PONG)),cwe.ping.hasSubscribers&&cwe.ping.publish({payload:a})}if(this.#n=BM.INFO,this.#t>0)continue;t();return}else if(this.#r.opcode===wM.PONG){let a=this.consume(n);if(cwe.pong.hasSubscribers&&cwe.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#n===BM.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=BM.READ_DATA}else if(this.#n===BM.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){qHe(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#r.payloadLength=(n<<8)+a,this.#n=BM.READ_DATA}else if(this.#n===BM.READ_DATA){if(this.#t=this.#r.payloadLength){let r=this.consume(this.#r.payloadLength);if(this.#i.push(r),!this.#r.fragmented||this.#r.fin&&this.#r.opcode===wM.CONTINUATION){let n=Buffer.concat(this.#i);Ooa(this.ws,this.#r.originalOpcode,n),this.#r={},this.#i.length=0}this.#n=BM.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return Poa;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let n;if(r.length>=2&&(n=r.readUInt16BE(0)),t)return z8n(n)?{code:n}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),n!==void 0&&!z8n(n))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:n,reason:a}}get closingInfo(){return this.#r.closeInfo}};ejn.exports={ByteParser:Y_r}});var ljn=H((Lou,cjn)=>{"use strict";var{webidl:fI}=xZ(),{DOMException:rae}=Joe(),{URLSerializer:Moa}=wX(),{getGlobalOrigin:Hoa}=wBe(),{staticPropertyDescriptors:nae,states:lwe,opcodes:$He,emptyBuffer:Yoa}=awe(),{kWebSocketURL:rjn,kReadyState:F$,kController:Qoa,kBinaryType:ZIt,kResponse:LIt,kSentClose:Xoa,kByteParser:Joa}=zHe(),{isEstablished:njn,isClosing:ijn,isValidSubprotocol:Uoa,failWebsocketConnection:Koa,fireEvent:joa}=FIt(),{establishWebSocketConnection:zoa}=Q8n(),{WebsocketFrameSend:eYe}=H_r(),{ByteParser:qoa}=tjn(),{kEnumerableProperty:TM,isBlobLike:ojn}=zC(),{getGlobalDispatcher:$oa}=KBe(),{types:ajn}=wt("util"),sjn=!1,zW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";constructor(t,r=[]){super(),fI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),sjn||(sjn=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let n=fI.converters["DOMString or sequence or WebSocketInit"](r);t=fI.converters.USVString(t),r=n.protocols;let a=Hoa(),o;try{o=new URL(t,a)}catch(l){throw new rae(l,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new rae(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new rae("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(l=>l.toLowerCase())).size)throw new rae("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(l=>Uoa(l)))throw new rae("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[rjn]=new URL(o.href),this[Qoa]=zoa(o,r,this,l=>this.#i(l),n),this[F$]=e.CONNECTING,this[ZIt]="blob"}close(t=void 0,r=void 0){if(fI.brandCheck(this,e),t!==void 0&&(t=fI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=fI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new rae("invalid code","InvalidAccessError");let n=0;if(r!==void 0&&(n=Buffer.byteLength(r),n>123))throw new rae(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");if(!(this[F$]===e.CLOSING||this[F$]===e.CLOSED))if(!njn(this))Koa(this,"Connection was closed before it was established."),this[F$]=e.CLOSING;else if(ijn(this))this[F$]=e.CLOSING;else{let a=new eYe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Yoa,this[LIt].socket.write(a.createFrame($He.CLOSE),l=>{l||(this[Xoa]=!0)}),this[F$]=lwe.CLOSING}}send(t){if(fI.brandCheck(this,e),fI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=fI.converters.WebSocketSendData(t),this[F$]===e.CONNECTING)throw new rae("Sent before connected.","InvalidStateError");if(!njn(this)||ijn(this))return;let r=this[LIt].socket;if(typeof t=="string"){let n=Buffer.from(t),o=new eYe(n).createFrame($He.TEXT);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ajn.isArrayBuffer(t)){let n=Buffer.from(t),o=new eYe(n).createFrame($He.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ArrayBuffer.isView(t)){let n=Buffer.from(t,t.byteOffset,t.byteLength),o=new eYe(n).createFrame($He.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ojn(t)){let n=new eYe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);n.frameData=o;let l=n.createFrame($He.BINARY);this.#t+=o.byteLength,r.write(l,()=>{this.#t-=o.byteLength})})}}get readyState(){return fI.brandCheck(this,e),this[F$]}get bufferedAmount(){return fI.brandCheck(this,e),this.#t}get url(){return fI.brandCheck(this,e),Moa(this[rjn])}get extensions(){return fI.brandCheck(this,e),this.#r}get protocol(){return fI.brandCheck(this,e),this.#n}get onopen(){return fI.brandCheck(this,e),this.#e.open}set onopen(t){fI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return fI.brandCheck(this,e),this.#e.error}set onerror(t){fI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return fI.brandCheck(this,e),this.#e.close}set onclose(t){fI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return fI.brandCheck(this,e),this.#e.message}set onmessage(t){fI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return fI.brandCheck(this,e),this[ZIt]}set binaryType(t){fI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[ZIt]="blob":this[ZIt]=t}#i(t){this[LIt]=t;let r=new qoa(this);r.on("drain",function(){this.ws[LIt].socket.resume()}),t.socket.ws=this,this[Joa]=r,this[F$]=lwe.OPEN;let n=t.headersList.get("sec-websocket-extensions");n!==null&&(this.#r=n);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#n=a),joa("open",this)}};zW.CONNECTING=zW.prototype.CONNECTING=lwe.CONNECTING;zW.OPEN=zW.prototype.OPEN=lwe.OPEN;zW.CLOSING=zW.prototype.CLOSING=lwe.CLOSING;zW.CLOSED=zW.prototype.CLOSED=lwe.CLOSED;Object.defineProperties(zW.prototype,{CONNECTING:nae,OPEN:nae,CLOSING:nae,CLOSED:nae,url:TM,readyState:TM,bufferedAmount:TM,onopen:TM,onerror:TM,onclose:TM,close:TM,onmessage:TM,binaryType:TM,send:TM,extensions:TM,protocol:TM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(zW,{CONNECTING:nae,OPEN:nae,CLOSING:nae,CLOSED:nae});fI.converters["sequence"]=fI.sequenceConverter(fI.converters.DOMString);fI.converters["DOMString or sequence"]=function(e){return fI.util.Type(e)==="Object"&&Symbol.iterator in e?fI.converters["sequence"](e):fI.converters.DOMString(e)};fI.converters.WebSocketInit=fI.dictionaryConverter([{key:"protocols",converter:fI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return $oa()}},{key:"headers",converter:fI.nullableConverter(fI.converters.HeadersInit)}]);fI.converters["DOMString or sequence or WebSocketInit"]=function(e){return fI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?fI.converters.WebSocketInit(e):{protocols:fI.converters["DOMString or sequence"](e)}};fI.converters.WebSocketSendData=function(e){if(fI.util.Type(e)==="Object"){if(ojn(e))return fI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||ajn.isAnyArrayBuffer(e))return fI.converters.BufferSource(e)}return fI.converters.USVString(e)};cjn.exports={WebSocket:zW}});var djn=H((Vou,Eh)=>{"use strict";var eaa=xHe(),ujn=mft(),gjn=Ub(),taa=WBe(),raa=SJn(),naa=LHe(),ehe=zC(),{InvalidArgumentError:VIt}=gjn,uwe=fUn(),iaa=vHe(),saa=e_r(),oaa=zUn(),aaa=n_r(),caa=MCr(),laa=nKn(),uaa=cKn(),{getGlobalDispatcher:Ajn,setGlobalDispatcher:gaa}=KBe(),Aaa=pKn(),daa=$mr(),paa=bft(),Q_r;try{wt("crypto"),Q_r=!0}catch{Q_r=!1}Object.assign(ujn.prototype,uwe);Eh.exports.Dispatcher=ujn;Eh.exports.Client=eaa;Eh.exports.Pool=taa;Eh.exports.BalancedPool=raa;Eh.exports.Agent=naa;Eh.exports.ProxyAgent=laa;Eh.exports.RetryHandler=uaa;Eh.exports.DecoratorHandler=Aaa;Eh.exports.RedirectHandler=daa;Eh.exports.createRedirectInterceptor=paa;Eh.exports.buildConnector=iaa;Eh.exports.errors=gjn;function tYe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new VIt("invalid url");if(r!=null&&typeof r!="object")throw new VIt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new VIt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(ehe.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=ehe.parseURL(t);let{agent:a,dispatcher:o=Ajn()}=r;if(a)throw new VIt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Eh.exports.setGlobalDispatcher=gaa;Eh.exports.getGlobalDispatcher=Ajn;if(ehe.nodeMajor>16||ehe.nodeMajor===16&&ehe.nodeMinor>=8){let e=null;Eh.exports.fetch=async function(l){e||(e=hIt().fetch);try{return await e(...arguments)}catch(A){throw typeof A=="object"&&Error.captureStackTrace(A,this),A}},Eh.exports.Headers=KIe().Headers,Eh.exports.Response=sIt().Response,Eh.exports.Request=XHe().Request,Eh.exports.FormData=fft().FormData,Eh.exports.File=dft().File,Eh.exports.FileReader=u8n().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=wBe();Eh.exports.setGlobalOrigin=t,Eh.exports.getGlobalOrigin=r;let{CacheStorage:n}=b8n(),{kConstruct:a}=yIt();Eh.exports.caches=new n(a)}if(ehe.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:n}=x8n();Eh.exports.deleteCookie=e,Eh.exports.getCookies=t,Eh.exports.getSetCookies=r,Eh.exports.setCookie=n;let{parseMIMEType:a,serializeAMimeType:o}=wX();Eh.exports.parseMIMEType=a,Eh.exports.serializeAMimeType=o}if(ehe.nodeMajor>=18&&Q_r){let{WebSocket:e}=ljn();Eh.exports.WebSocket=e}Eh.exports.request=tYe(uwe.request);Eh.exports.stream=tYe(uwe.stream);Eh.exports.pipeline=tYe(uwe.pipeline);Eh.exports.connect=tYe(uwe.connect);Eh.exports.upgrade=tYe(uwe.upgrade);Eh.exports.MockClient=saa;Eh.exports.MockPool=aaa;Eh.exports.MockAgent=oaa;Eh.exports.mockErrors=caa});var fjn=H(ZE=>{"use strict";var faa=ZE&&ZE.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Iaa=ZE&&ZE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),HIt=ZE&&ZE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&faa(t,e,r);return Iaa(t,e),t},ew=ZE&&ZE.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(ZE,"__esModule",{value:!0});ZE.HttpClient=ZE.isHttps=ZE.HttpClientResponse=ZE.HttpClientError=ZE.getProxyUrl=ZE.MediaTypes=ZE.Headers=ZE.HttpCodes=void 0;var X_r=HIt(wt("http")),pjn=HIt(wt("https")),J_r=HIt(SQn()),PIt=HIt(NQn()),haa=djn(),RM;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(RM||(ZE.HttpCodes=RM={}));var bG;(function(e){e.Accept="accept",e.ContentType="content-type"})(bG||(ZE.Headers=bG={}));var Z$;(function(e){e.ApplicationJson="application/json"})(Z$||(ZE.MediaTypes=Z$={}));function maa(e){let t=J_r.getProxyUrl(new URL(e));return t?t.href:""}ZE.getProxyUrl=maa;var Caa=[RM.MovedPermanently,RM.ResourceMoved,RM.SeeOther,RM.TemporaryRedirect,RM.PermanentRedirect],_aa=[RM.BadGateway,RM.ServiceUnavailable,RM.GatewayTimeout],yaa=["OPTIONS","GET","DELETE","HEAD"],baa=10,Eaa=5,OIt=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};ZE.HttpClientError=OIt;var MIt=class{constructor(t){this.message=t}readBody(){return ew(this,void 0,void 0,function*(){return new Promise(t=>ew(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return ew(this,void 0,void 0,function*(){return new Promise(t=>ew(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};ZE.HttpClientResponse=MIt;function Saa(e){return new URL(e).protocol==="https:"}ZE.isHttps=Saa;var U_r=class{constructor(t,r,n){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(t,r){return ew(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return ew(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return ew(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("POST",t,r,n||{})})}patch(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("PATCH",t,r,n||{})})}put(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("PUT",t,r,n||{})})}head(t,r){return ew(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,n,a){return ew(this,void 0,void 0,function*(){return this.request(t,r,n,a)})}getJson(t,r={}){return ew(this,void 0,void 0,function*(){r[bG.Accept]=this._getExistingOrDefaultHeader(r,bG.Accept,Z$.ApplicationJson);let n=yield this.get(t,r);return this._processResponse(n,this.requestOptions)})}postJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.post(t,a,n);return this._processResponse(o,this.requestOptions)})}putJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.put(t,a,n);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.patch(t,a,n);return this._processResponse(o,this.requestOptions)})}request(t,r,n,a){return ew(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),l=this._prepareRequest(t,o,a),A=this._allowRetries&&yaa.includes(t)?this._maxRetries+1:1,f=0,I;do{if(I=yield this.requestRaw(l,n),I&&I.message&&I.message.statusCode===RM.Unauthorized){let b;for(let E of this.handlers)if(E.canHandleAuthentication(I)){b=E;break}return b?b.handleAuthentication(this,l,n):I}let C=this._maxRedirects;for(;I.message.statusCode&&Caa.includes(I.message.statusCode)&&this._allowRedirects&&C>0;){let b=I.message.headers.location;if(!b)break;let E=new URL(b);if(o.protocol==="https:"&&o.protocol!==E.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield I.readBody(),E.hostname!==o.hostname)for(let N in a)N.toLowerCase()==="authorization"&&delete a[N];l=this._prepareRequest(t,E,a),I=yield this.requestRaw(l,n),C--}if(!I.message.statusCode||!_aa.includes(I.message.statusCode))return I;f+=1,f{function o(l,A){l?a(l):A?n(A):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,n){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,I){a||(a=!0,n(f,I))}let l=t.httpModule.request(t.options,f=>{let I=new MIt(f);o(void 0,I)}),A;l.on("socket",f=>{A=f}),l.setTimeout(this._socketTimeout||3*6e4,()=>{A&&A.end(),o(new Error(`Request timeout: ${t.options.path}`))}),l.on("error",function(f){o(f)}),r&&typeof r=="string"&&l.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){l.end()}),r.pipe(l)):l.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),n=J_r.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(t,r,n){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?pjn:X_r;let l=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):l,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let A of this.handlers)A.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},WIt(this.requestOptions.headers),WIt(t||{})):WIt(t||{})}_getExistingOrDefaultHeader(t,r,n){let a;return this.requestOptions&&this.requestOptions.headers&&(a=WIt(this.requestOptions.headers)[r]),t[r]||a||n}_getAgent(t){let r,n=J_r.getProxyUrl(t),a=n&&n.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||X_r.globalAgent.maxSockets),n&&n.hostname){let A={maxSockets:l,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},f,I=n.protocol==="https:";o?f=I?PIt.httpsOverHttps:PIt.httpsOverHttp:f=I?PIt.httpOverHttps:PIt.httpOverHttp,r=f(A),this._proxyAgent=r}if(!r){let A={keepAlive:this._keepAlive,maxSockets:l};r=o?new pjn.Agent(A):new X_r.Agent(A),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let a=t.protocol==="https:";return n=new haa.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,a&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_performExponentialBackoff(t){return ew(this,void 0,void 0,function*(){t=Math.min(baa,t);let r=Eaa*Math.pow(2,t);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(t,r){return ew(this,void 0,void 0,function*(){return new Promise((n,a)=>ew(this,void 0,void 0,function*(){let o=t.message.statusCode||0,l={statusCode:o,result:null,headers:{}};o===RM.NotFound&&n(l);function A(C,b){if(typeof b=="string"){let E=new Date(b);if(!isNaN(E.valueOf()))return E}return b}let f,I;try{I=yield t.readBody(),I&&I.length>0&&(r&&r.deserializeDates?f=JSON.parse(I,A):f=JSON.parse(I),l.result=f),l.headers=t.message.headers}catch{}if(o>299){let C;f&&f.message?C=f.message:I&&I.length>0?C=I:C=`Failed request: (${o})`;let b=new OIt(C,o);b.result=l.result,a(b)}else n(l)}))})}};ZE.HttpClient=U_r;var WIt=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var B2=H((Wou,Ijn)=>{Ijn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Y0=H((Oou,hjn)=>{"use strict";var RS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},K_r=class extends RS{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},j_r=class extends RS{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},z_r=class extends RS{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},q_r=class extends RS{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},$_r=class extends RS{constructor(t,r,n,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},e0r=class extends RS{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},t0r=class extends RS{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},YIt=class extends RS{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},r0r=class extends YIt{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},n0r=class extends RS{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},i0r=class extends RS{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},s0r=class extends RS{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},o0r=class extends RS{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},a0r=class extends RS{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},c0r=class extends RS{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},l0r=class extends RS{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},u0r=class extends RS{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},g0r=class extends Error{constructor(t,r,n){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},A0r=class extends RS{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},d0r=class extends RS{constructor(t,r,{headers:n,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}},p0r=class extends RS{constructor(t,r,{headers:n,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=n}},f0r=class extends RS{constructor(t,r,n){super(r,{cause:t,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};hjn.exports={AbortError:YIt,HTTPParserError:g0r,UndiciError:RS,HeadersTimeoutError:j_r,HeadersOverflowError:z_r,BodyTimeoutError:q_r,RequestContentLengthMismatchError:i0r,ConnectTimeoutError:K_r,ResponseStatusCodeError:$_r,InvalidArgumentError:e0r,InvalidReturnValueError:t0r,RequestAbortedError:r0r,ClientDestroyedError:o0r,ClientClosedError:a0r,InformationalError:n0r,SocketError:c0r,NotSupportedError:l0r,ResponseContentLengthMismatchError:s0r,BalancedPoolMissingUpstreamError:u0r,ResponseExceededMaxSizeError:A0r,RequestRetryError:d0r,ResponseError:p0r,SecureProxyConnectionError:f0r}});var XIt=H((Mou,mjn)=>{"use strict";var QIt={},I0r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:Cjn,headerNameLowerCasedRecord:vaa}=XIt(),h0r=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,n){if(n===void 0||n>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(n))>127)throw new TypeError("key must be ascii string");t.length!==++n?this.middle=new e(t,r,n):this.value=r}add(t,r){let n=t.length;if(n===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let l=t.charCodeAt(a);if(l>127)throw new TypeError("key must be ascii string");if(o.code===l)if(n===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++n)return a;a=a.middle;break}a=a.code{"use strict";var rYe=wt("node:assert"),{kDestroyed:Sjn,kBodyUsed:gwe,kListeners:m0r,kBody:Ejn}=B2(),{IncomingMessage:Baa}=wt("node:http"),jIt=wt("node:stream"),waa=wt("node:net"),{Blob:Taa}=wt("node:buffer"),Raa=wt("node:util"),{stringify:Naa}=wt("node:querystring"),{EventEmitter:Daa}=wt("node:events"),{InvalidArgumentError:eD}=Y0(),{headerNameLowerCasedRecord:kaa}=XIt(),{tree:vjn}=bjn(),[xaa,Gaa]=process.versions.node.split(".").map(e=>Number(e)),KIt=class{constructor(t){this[Ejn]=t,this[gwe]=!1}async*[Symbol.asyncIterator](){rYe(!this[gwe],"disturbed"),this[gwe]=!0,yield*this[Ejn]}};function Faa(e){return zIt(e)?(Njn(e)===0&&e.on("data",function(){rYe(!1)}),typeof e.readableDidRead!="boolean"&&(e[gwe]=!1,Daa.prototype.on.call(e,"data",function(){this[gwe]=!0})),e):e&&typeof e.pipeTo=="function"?new KIt(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&Rjn(e)?new KIt(e):e}function Zaa(){}function zIt(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Bjn(e){if(e===null)return!1;if(e instanceof Taa)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function Laa(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=Naa(t);return r&&(e+="?"+r),e}function wjn(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function UIt(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function Tjn(e){if(typeof e=="string"){if(e=new URL(e),!UIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new eD("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&wjn(e.port)===!1)throw new eD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new eD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new eD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new eD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new eD("Invalid URL origin: the origin must be a string or null/undefined.");if(!UIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!UIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function Vaa(e){if(e=Tjn(e),e.pathname!=="/"||e.search||e.hash)throw new eD("invalid url");return e}function Paa(e){if(e[0]==="["){let r=e.indexOf("]");return rYe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function Waa(e){if(!e)return null;rYe(typeof e=="string");let t=Paa(e);return waa.isIP(t)?"":t}function Oaa(e){return JSON.parse(JSON.stringify(e))}function Maa(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function Rjn(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Njn(e){if(e==null)return 0;if(zIt(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(Bjn(e))return e.size!=null?e.size:null;if(xjn(e))return e.byteLength}return null}function Djn(e){return e&&!!(e.destroyed||e[Sjn]||jIt.isDestroyed?.(e))}function Haa(e,t){e==null||!zIt(e)||Djn(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===Baa&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[Sjn]=!0))}var Yaa=/timeout=(\d+)/;function Qaa(e){let t=e.toString().match(Yaa);return t?parseInt(t[1],10)*1e3:null}function kjn(e){return typeof e=="string"?kaa[e]??e.toLowerCase():vjn.lookup(e)??e.toString("latin1").toLowerCase()}function Xaa(e){return vjn.lookup(e)??e.toString("latin1").toLowerCase()}function Jaa(e,t){t===void 0&&(t={});for(let r=0;rl.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function Uaa(e){let t=e.length,r=new Array(t),n=!1,a=-1,o,l,A=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function tca(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function rca(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var nca=typeof String.prototype.toWellFormed=="function",ica=typeof String.prototype.isWellFormed=="function";function Gjn(e){return nca?`${e}`.toWellFormed():Raa.toUSVString(e)}function sca(e){return ica?`${e}`.isWellFormed():Gjn(e)===`${e}`}function Fjn(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function oca(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var Q0=wt("node:diagnostics_channel"),y0r=wt("node:util"),qIt=y0r.debuglog("undici"),_0r=y0r.debuglog("fetch"),the=y0r.debuglog("websocket"),Pjn=!1,dca={beforeConnect:Q0.channel("undici:client:beforeConnect"),connected:Q0.channel("undici:client:connected"),connectError:Q0.channel("undici:client:connectError"),sendHeaders:Q0.channel("undici:client:sendHeaders"),create:Q0.channel("undici:request:create"),bodySent:Q0.channel("undici:request:bodySent"),headers:Q0.channel("undici:request:headers"),trailers:Q0.channel("undici:request:trailers"),error:Q0.channel("undici:request:error"),open:Q0.channel("undici:websocket:open"),close:Q0.channel("undici:websocket:close"),socketError:Q0.channel("undici:websocket:socket_error"),ping:Q0.channel("undici:websocket:ping"),pong:Q0.channel("undici:websocket:pong")};if(qIt.enabled||_0r.enabled){let e=_0r.enabled?_0r:qIt;Q0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),Q0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),Q0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,n,r,l.message)}),Q0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)}),Q0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:n,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,n,o)}),Q0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("trailers received from %s %s/%s",r,a,n)}),Q0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:n,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,n,o.message)}),Pjn=!0}if(the.enabled){if(!Pjn){let e=qIt.enabled?qIt:the;Q0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),Q0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),Q0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",n,r,l.message)}),Q0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)})}Q0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;the("connection opened %s%s",t,r?`:${r}`:"")}),Q0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:n}=e;the("closed connection to %s - %s %s",t.url,r,n)}),Q0.channel("undici:websocket:socket_error").subscribe(e=>{the("connection errored - %s",e.message)}),Q0.channel("undici:websocket:ping").subscribe(e=>{the("ping received")}),Q0.channel("undici:websocket:pong").subscribe(e=>{the("pong received")})}Wjn.exports={channels:dca}});var Qjn=H((Xou,Yjn)=>{"use strict";var{InvalidArgumentError:NS,NotSupportedError:pca}=Y0(),L$=wt("node:assert"),{isValidHTTPToken:Hjn,isValidHeaderValue:Ojn,isStream:fca,destroy:Ica,isBuffer:hca,isFormDataLike:mca,isIterable:Cca,isBlobLike:_ca,buildURL:yca,validateHandler:bca,getServerName:Eca,normalizedMethodRecords:Sca}=Em(),{channels:B8}=Awe(),{headerNameLowerCasedRecord:Mjn}=XIt(),vca=/[^\u0021-\u00ff]/,NM=Symbol("handler"),b0r=class{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B,servername:F},Q){if(typeof r!="string")throw new NS("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new NS("path must be an absolute URL or start with a slash");if(vca.test(r))throw new NS("invalid request path");if(typeof n!="string")throw new NS("method must be a string");if(Sca[n]===void 0&&!Hjn(n))throw new NS("invalid request method");if(I&&typeof I!="string")throw new NS("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new NS("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new NS("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new NS("invalid reset");if(B!=null&&typeof B!="boolean")throw new NS("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(fca(a)){this.body=a;let X=this.body._readableState;(!X||!X.autoDestroy)&&(this.endHandler=function(){Ica(this)},this.body.on("end",this.endHandler)),this.errorHandler=ae=>{this.abort?this.abort(ae):this.error=ae},this.body.on("error",this.errorHandler)}else if(hca(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(mca(a)||Cca(a)||_ca(a))this.body=a;else throw new NS("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?yca(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new NS("headers array must be even");for(let X=0;X{"use strict";var Bca=wt("node:events"),eht=class extends Bca{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,n=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(n=a(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new E0r(this,n)}},E0r=class extends eht{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};Xjn.exports=eht});var Iwe=H((Uou,Jjn)=>{"use strict";var wca=nYe(),{ClientDestroyedError:S0r,ClientClosedError:Tca,InvalidArgumentError:dwe}=Y0(),{kDestroy:Rca,kClose:Nca,kClosed:iYe,kDestroyed:pwe,kDispatch:v0r,kInterceptors:rhe}=B2(),V$=Symbol("onDestroyed"),fwe=Symbol("onClosed"),tht=Symbol("Intercepted Dispatch"),B0r=class extends wca{constructor(){super(),this[pwe]=!1,this[V$]=null,this[iYe]=!1,this[fwe]=[]}get destroyed(){return this[pwe]}get closed(){return this[iYe]}get interceptors(){return this[rhe]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[rhe][r]!="function")throw new dwe("interceptor must be an function")}this[rhe]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new dwe("invalid callback");if(this[pwe]){queueMicrotask(()=>t(new S0r,null));return}if(this[iYe]){this[fwe]?this[fwe].push(t):queueMicrotask(()=>t(null,null));return}this[iYe]=!0,this[fwe].push(t);let r=()=>{let n=this[fwe];this[fwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new dwe("invalid callback");if(this[pwe]){this[V$]?this[V$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new S0r),this[pwe]=!0,this[V$]=this[V$]||[],this[V$].push(r);let n=()=>{let a=this[V$];this[V$]=null;for(let o=0;o{queueMicrotask(n)})}[tht](t,r){if(!this[rhe]||this[rhe].length===0)return this[tht]=this[v0r],this[v0r](t,r);let n=this[v0r].bind(this);for(let a=this[rhe].length-1;a>=0;a--)n=this[rhe][a](n);return this[tht]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new dwe("handler must be an object");try{if(!t||typeof t!="object")throw new dwe("opts must be an object.");if(this[pwe]||this[V$])throw new S0r;if(this[iYe])throw new Tca;return this[tht](t,r)}catch(n){if(typeof r.onError!="function")throw new dwe("invalid onError method");return r.onError(n),!1}}};Jjn.exports=B0r});var x0r=H((Kou,zjn)=>{"use strict";var hwe=0,w0r=1e3,T0r=(w0r>>1)-1,P$,R0r=Symbol("kFastTimer"),W$=[],N0r=-2,D0r=-1,Kjn=0,Ujn=1;function k0r(){hwe+=T0r;let e=0,t=W$.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=D0r,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===D0r?(r._state=N0r,--t!==0&&(W$[e]=W$[t])):++e}W$.length=t,W$.length!==0&&jjn()}function jjn(){P$?P$.refresh():(clearTimeout(P$),P$=setTimeout(k0r,T0r),P$.unref&&P$.unref())}var rht=class{[R0r]=!0;_state=N0r;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,n){this._onTimeout=t,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===N0r&&W$.push(this),(!P$||W$.length===1)&&jjn(),this._state=Kjn}clear(){this._state=D0r,this._idleStart=-1}};zjn.exports={setTimeout(e,t,r){return t<=w0r?setTimeout(e,t,r):new rht(e,t,r)},clearTimeout(e){e[R0r]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new rht(e,t,r)},clearFastTimeout(e){e.clear()},now(){return hwe},tick(e=0){hwe+=e-w0r+1,k0r(),k0r()},reset(){hwe=0,W$.length=0,clearTimeout(P$),P$=null},kFastTimer:R0r}});var sYe=H((qou,r6n)=>{"use strict";var Dca=wt("node:net"),qjn=wt("node:assert"),t6n=Em(),{InvalidArgumentError:kca,ConnectTimeoutError:xca}=Y0(),nht=x0r();function $jn(){}var G0r,F0r;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?F0r=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function Gca({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new kca("maxCachedSessions must be a positive integer or zero");let l={path:r,...o},A=new F0r(t??100);return n=n??1e4,e=e??!1,function({hostname:I,host:C,protocol:b,port:E,servername:N,localAddress:B,httpSocket:F},Q){let X;if(b==="https:"){G0r||(G0r=wt("node:tls")),N=N||l.servername||t6n.getServerName(C)||null;let ne=N||I;qjn(ne);let ce=a||A.get(ne)||null;E=E||443,X=G0r.connect({highWaterMark:16384,...l,servername:N,session:ce,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:F,port:E,host:I}),X.on("session",function(fe){A.set(ne,fe)})}else qjn(!F,"httpSocket can only be sent on TLS update"),E=E||80,X=Dca.connect({highWaterMark:64*1024,...l,localAddress:B,port:E,host:I});if(l.keepAlive==null||l.keepAlive){let ne=l.keepAliveInitialDelay===void 0?6e4:l.keepAliveInitialDelay;X.setKeepAlive(!0,ne)}let ae=Fca(new WeakRef(X),{timeout:n,hostname:I,port:E});return X.setNoDelay(!0).once(b==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(ae),Q){let ne=Q;Q=null,ne(null,this)}}).on("error",function(ne){if(queueMicrotask(ae),Q){let ce=Q;Q=null,ce(ne)}}),X}}var Fca=process.platform==="win32"?(e,t)=>{if(!t.timeout)return $jn;let r=null,n=null,a=nht.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>e6n(e.deref(),t))})},t.timeout);return()=>{nht.clearFastTimeout(a),clearImmediate(r),clearImmediate(n)}}:(e,t)=>{if(!t.timeout)return $jn;let r=null,n=nht.setFastTimeout(()=>{r=setImmediate(()=>{e6n(e.deref(),t)})},t.timeout);return()=>{nht.clearFastTimeout(n),clearImmediate(r)}};function e6n(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,t6n.destroy(e,new xca(r))}r6n.exports=Gca});var n6n=H(iht=>{"use strict";Object.defineProperty(iht,"__esModule",{value:!0});iht.enumToMap=void 0;function Zca(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}iht.enumToMap=Zca});var i6n=H(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.SPECIAL_HEADERS=Gu.HEADER_STATE=Gu.MINOR=Gu.MAJOR=Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS=Gu.TOKEN=Gu.STRICT_TOKEN=Gu.HEX=Gu.URL_CHAR=Gu.STRICT_URL_CHAR=Gu.USERINFO_CHARS=Gu.MARK=Gu.ALPHANUM=Gu.NUM=Gu.HEX_MAP=Gu.NUM_MAP=Gu.ALPHA=Gu.FINISH=Gu.H_METHOD_MAP=Gu.METHOD_MAP=Gu.METHODS_RTSP=Gu.METHODS_ICE=Gu.METHODS_HTTP=Gu.METHODS=Gu.LENIENT_FLAGS=Gu.FLAGS=Gu.TYPE=Gu.ERROR=void 0;var Lca=n6n(),Vca;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Vca=Gu.ERROR||(Gu.ERROR={}));var Pca;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(Pca=Gu.TYPE||(Gu.TYPE={}));var Wca;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(Wca=Gu.FLAGS||(Gu.FLAGS={}));var Oca;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(Oca=Gu.LENIENT_FLAGS||(Gu.LENIENT_FLAGS={}));var Pp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Pp=Gu.METHODS||(Gu.METHODS={}));Gu.METHODS_HTTP=[Pp.DELETE,Pp.GET,Pp.HEAD,Pp.POST,Pp.PUT,Pp.CONNECT,Pp.OPTIONS,Pp.TRACE,Pp.COPY,Pp.LOCK,Pp.MKCOL,Pp.MOVE,Pp.PROPFIND,Pp.PROPPATCH,Pp.SEARCH,Pp.UNLOCK,Pp.BIND,Pp.REBIND,Pp.UNBIND,Pp.ACL,Pp.REPORT,Pp.MKACTIVITY,Pp.CHECKOUT,Pp.MERGE,Pp["M-SEARCH"],Pp.NOTIFY,Pp.SUBSCRIBE,Pp.UNSUBSCRIBE,Pp.PATCH,Pp.PURGE,Pp.MKCALENDAR,Pp.LINK,Pp.UNLINK,Pp.PRI,Pp.SOURCE];Gu.METHODS_ICE=[Pp.SOURCE];Gu.METHODS_RTSP=[Pp.OPTIONS,Pp.DESCRIBE,Pp.ANNOUNCE,Pp.SETUP,Pp.PLAY,Pp.PAUSE,Pp.TEARDOWN,Pp.GET_PARAMETER,Pp.SET_PARAMETER,Pp.REDIRECT,Pp.RECORD,Pp.FLUSH,Pp.GET,Pp.POST];Gu.METHOD_MAP=Lca.enumToMap(Pp);Gu.H_METHOD_MAP={};Object.keys(Gu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Gu.H_METHOD_MAP[e]=Gu.METHOD_MAP[e])});var Mca;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Mca=Gu.FINISH||(Gu.FINISH={}));Gu.ALPHA=[];for(let e=65;e<=90;e++)Gu.ALPHA.push(String.fromCharCode(e)),Gu.ALPHA.push(String.fromCharCode(e+32));Gu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Gu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Gu.NUM=["0","1","2","3","4","5","6","7","8","9"];Gu.ALPHANUM=Gu.ALPHA.concat(Gu.NUM);Gu.MARK=["-","_",".","!","~","*","'","(",")"];Gu.USERINFO_CHARS=Gu.ALPHANUM.concat(Gu.MARK).concat(["%",";",":","&","=","+","$",","]);Gu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Gu.ALPHANUM);Gu.URL_CHAR=Gu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Gu.URL_CHAR.push(e);Gu.HEX=Gu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Gu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Gu.ALPHANUM);Gu.TOKEN=Gu.STRICT_TOKEN.concat([" "]);Gu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Gu.HEADER_CHARS.push(e);Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS.filter(e=>e!==44);Gu.MAJOR=Gu.NUM_MAP;Gu.MINOR=Gu.MAJOR;var mwe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(mwe=Gu.HEADER_STATE||(Gu.HEADER_STATE={}));Gu.SPECIAL_HEADERS={connection:mwe.CONNECTION,"content-length":mwe.CONTENT_LENGTH,"proxy-connection":mwe.CONNECTION,"transfer-encoding":mwe.TRANSFER_ENCODING,upgrade:mwe.UPGRADE}});var Z0r=H((tau,s6n)=>{"use strict";var{Buffer:Hca}=wt("node:buffer");s6n.exports=Hca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var a6n=H((rau,o6n)=>{"use strict";var{Buffer:Yca}=wt("node:buffer");o6n.exports=Yca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var oYe=H((nau,f6n)=>{"use strict";var c6n=["GET","HEAD","POST"],Qca=new Set(c6n),Xca=[101,204,205,304],l6n=[301,302,303,307,308],Jca=new Set(l6n),u6n=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],Uca=new Set(u6n),g6n=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],Kca=new Set(g6n),jca=["follow","manual","error"],A6n=["GET","HEAD","OPTIONS","TRACE"],zca=new Set(A6n),qca=["navigate","same-origin","no-cors","cors"],$ca=["omit","same-origin","include"],ela=["default","no-store","reload","no-cache","force-cache","only-if-cached"],tla=["content-encoding","content-language","content-location","content-type","content-length"],rla=["half"],d6n=["CONNECT","TRACE","TRACK"],nla=new Set(d6n),p6n=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],ila=new Set(p6n);f6n.exports={subresource:p6n,forbiddenMethods:d6n,requestBodyHeader:tla,referrerPolicy:g6n,requestRedirect:jca,requestMode:qca,requestCredentials:$ca,requestCache:ela,redirectStatus:l6n,corsSafeListedMethods:c6n,nullBodyStatus:Xca,safeMethods:A6n,badPorts:u6n,requestDuplex:rla,subresourceSet:ila,badPortsSet:Uca,redirectStatusSet:Jca,corsSafeListedMethodsSet:Qca,safeMethodsSet:zca,forbiddenMethodsSet:nla,referrerPolicySet:Kca}});var V0r=H((iau,I6n)=>{"use strict";var L0r=Symbol.for("undici.globalOrigin.1");function sla(){return globalThis[L0r]}function ola(e){if(e===void 0){Object.defineProperty(globalThis,L0r,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,L0r,{value:t,writable:!0,enumerable:!1,configurable:!1})}I6n.exports={getGlobalOrigin:sla,setGlobalOrigin:ola}});var eV=H((sau,E6n)=>{"use strict";var oht=wt("node:assert"),ala=new TextEncoder,aYe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,cla=/[\u000A\u000D\u0009\u0020]/,lla=/[\u0009\u000A\u000C\u000D\u0020]/g,ula=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function gla(e){oht(e.protocol==="data:");let t=C6n(e,!0);t=t.slice(5);let r={position:0},n=Cwe(",",t,r),a=n.length;if(n=hla(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=_6n(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=b6n(l);if(l=dla(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=P0r(n);return A==="failure"&&(A=P0r("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function C6n(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length,a=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?a.slice(0,-1):a}function aht(e,t,r){let n="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function m6n(e){return e>=48&&e<=57?e-48:(e&223)-55}function Ala(e){let t=e.length,r=new Uint8Array(t),n=0;for(let a=0;ae.length)return"failure";t.position++;let n=Cwe(";",e,t);if(n=sht(n,!1,!0),n.length===0||!aYe.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positioncla.test(I),e,t);let A=aht(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=y6n(e,t,!0),Cwe(";",e,t);else if(f=Cwe(";",e,t),f=sht(f,!1,!0),f.length===0)continue;A.length!==0&&aYe.test(A)&&(f.length===0||ula.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function dla(e){e=e.replace(lla,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function y6n(e,t,r){let n=t.position,a="";for(oht(e[t.position]==='"'),t.position++;a+=aht(l=>l!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{oht(o==='"');break}}return r?a:e.slice(n,t.position)}function pla(e){oht(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",aYe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function fla(e){return e===13||e===10||e===9||e===32}function sht(e,t=!0,r=!0){return W0r(e,t,r,fla)}function Ila(e){return e===13||e===10||e===9||e===12||e===32}function hla(e,t=!0,r=!0){return W0r(e,t,r,Ila)}function W0r(e,t,r,n){let a=0,o=e.length-1;if(t)for(;a0&&n(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function b6n(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",n=0,a=65535;for(;nt&&(a=t-n),r+=String.fromCharCode.apply(null,e.subarray(n,n+=a));return r}function mla(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}E6n.exports={dataURLProcessor:gla,URLSerializer:C6n,collectASequenceOfCodePoints:aht,collectASequenceOfCodePointsFast:Cwe,stringPercentDecode:_6n,parseMIMEType:P0r,collectAnHTTPQuotedString:y6n,serializeAMimeType:pla,removeChars:W0r,removeHTTPWhitespace:sht,minimizeSupportedMimeType:mla,HTTP_TOKEN_CODEPOINTS:aYe,isomorphicDecode:b6n}});var kk=H((oau,S6n)=>{"use strict";var{types:w8,inspect:Cla}=wt("node:util"),{toUSVString:_la}=Em(),Cu={};Cu.converters={};Cu.util={};Cu.errors={};Cu.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};Cu.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return Cu.errors.exception({header:e.prefix,message:r})};Cu.errors.invalidArgument=function(e){return Cu.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};Cu.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};Cu.argumentLengthCheck=function({length:e},t,r){if(ea)throw Cu.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n?.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=Cu.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};Cu.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};Cu.util.Stringify=function(e){switch(Cu.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return Cla(e);case"String":return`"${e}"`;default:return`${e}`}};Cu.sequenceConverter=function(e){return(t,r,n,a)=>{if(Cu.util.Type(t)!=="Object")throw Cu.errors.exception({header:r,message:`${n} (${Cu.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),l=[],A=0;if(o===void 0||typeof o.next!="function")throw Cu.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:f,value:I}=o.next();if(f)break;l.push(e(I,r,`${n}[${A++}]`))}return l}};Cu.recordConverter=function(e,t){return(r,n,a)=>{if(Cu.util.Type(r)!=="Object")throw Cu.errors.exception({header:n,message:`${a} ("${Cu.util.Type(r)}") is not an Object.`});let o={};if(!w8.isProxy(r)){let A=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of A){let I=e(f,n,a),C=t(r[f],n,a);o[I]=C}return o}let l=Reflect.ownKeys(r);for(let A of l)if(Reflect.getOwnPropertyDescriptor(r,A)?.enumerable){let I=e(A,n,a),C=t(r[A],n,a);o[I]=C}return o}};Cu.interfaceConverter=function(e){return(t,r,n,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw Cu.errors.exception({header:r,message:`Expected ${n} ("${Cu.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};Cu.dictionaryConverter=function(e){return(t,r,n)=>{let a=Cu.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw Cu.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let l of e){let{key:A,defaultValue:f,required:I,converter:C}=l;if(I===!0&&!Object.hasOwn(t,A))throw Cu.errors.exception({header:r,message:`Missing required key "${A}".`});let b=t[A],E=Object.hasOwn(l,"defaultValue");if(E&&b!==null&&(b??=f()),I||E||b!==void 0){if(b=C(b,r,`${n}.${A}`),l.allowedValues&&!l.allowedValues.includes(b))throw Cu.errors.exception({header:r,message:`${b} is not an accepted type. Expected one of ${l.allowedValues.join(", ")}.`});o[A]=b}}return o}};Cu.nullableConverter=function(e){return(t,r,n)=>t===null?t:e(t,r,n)};Cu.converters.DOMString=function(e,t,r,n){if(e===null&&n?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw Cu.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};Cu.converters.ByteString=function(e,t,r){let n=Cu.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${n.charCodeAt(a)} which is greater than 255.`);return n};Cu.converters.USVString=_la;Cu.converters.boolean=function(e){return!!e};Cu.converters.any=function(e){return e};Cu.converters["long long"]=function(e,t,r){return Cu.util.ConvertToInt(e,64,"signed",void 0,t,r)};Cu.converters["unsigned long long"]=function(e,t,r){return Cu.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};Cu.converters["unsigned long"]=function(e,t,r){return Cu.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};Cu.converters["unsigned short"]=function(e,t,r,n){return Cu.util.ConvertToInt(e,16,"unsigned",n,t,r)};Cu.converters.ArrayBuffer=function(e,t,r,n){if(Cu.util.Type(e)!=="Object"||!w8.isAnyArrayBuffer(e))throw Cu.errors.conversionFailed({prefix:t,argument:`${r} ("${Cu.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&w8.isSharedArrayBuffer(e))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.TypedArray=function(e,t,r,n,a){if(Cu.util.Type(e)!=="Object"||!w8.isTypedArray(e)||e.constructor.name!==t.name)throw Cu.errors.conversionFailed({prefix:r,argument:`${n} ("${Cu.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.DataView=function(e,t,r,n){if(Cu.util.Type(e)!=="Object"||!w8.isDataView(e))throw Cu.errors.exception({header:t,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.BufferSource=function(e,t,r,n){if(w8.isAnyArrayBuffer(e))return Cu.converters.ArrayBuffer(e,t,r,{...n,allowShared:!1});if(w8.isTypedArray(e))return Cu.converters.TypedArray(e,e.constructor,t,r,{...n,allowShared:!1});if(w8.isDataView(e))return Cu.converters.DataView(e,t,r,{...n,allowShared:!1});throw Cu.errors.conversionFailed({prefix:t,argument:`${r} ("${Cu.util.Stringify(e)}")`,types:["BufferSource"]})};Cu.converters["sequence"]=Cu.sequenceConverter(Cu.converters.ByteString);Cu.converters["sequence>"]=Cu.sequenceConverter(Cu.converters["sequence"]);Cu.converters["record"]=Cu.recordConverter(Cu.converters.ByteString,Cu.converters.ByteString);S6n.exports={webidl:Cu}});var qW=H((aau,V6n)=>{"use strict";var{Transform:yla}=wt("node:stream"),v6n=wt("node:zlib"),{redirectStatusSet:bla,referrerPolicySet:Ela,badPortsSet:Sla}=oYe(),{getGlobalOrigin:B6n}=V0r(),{collectASequenceOfCodePoints:nhe,collectAnHTTPQuotedString:vla,removeChars:Bla,parseMIMEType:wla}=eV(),{performance:Tla}=wt("node:perf_hooks"),{isBlobLike:Rla,ReadableStreamFrom:Nla,isValidHTTPToken:w6n,normalizedMethodRecordsBase:Dla}=Em(),ihe=wt("node:assert"),{isUint8Array:kla}=wt("node:util/types"),{webidl:cYe}=kk(),T6n=[],lht;try{lht=wt("node:crypto");let e=["sha256","sha384","sha512"];T6n=lht.getHashes().filter(t=>e.includes(t))}catch{}function R6n(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function xla(e,t){if(!bla.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&D6n(r)&&(N6n(r)||(r=Gla(r)),r=new URL(r,R6n(e))),r&&!r.hash&&(r.hash=t),r}function N6n(e){for(let t=0;t126||r<32)return!1}return!0}function Gla(e){return Buffer.from(e,"binary").toString("utf8")}function uYe(e){return e.urlList[e.urlList.length-1]}function Fla(e){let t=uYe(e);return Z6n(t)&&Sla.has(t.port)?"blocked":"allowed"}function Zla(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Lla(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var Vla=w6n;function D6n(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` +`)||e.includes("\r")||e.includes("\0"))===!1}function Pla(e,t){let{headersList:r}=t,n=(r.get("referrer-policy",!0)??"").split(","),a="";if(n.length>0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(Ela.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function Wla(){return"allowed"}function Ola(){return"success"}function Mla(){return"success"}function Hla(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function Yla(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&M0r(e.origin)&&!M0r(uYe(e))&&(t=null);break;case"same-origin":uht(e,uYe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function _we(e,t){return e}function Qla(e,t,r){return!e?.startTime||e.startTime4096&&(n=a);let o=uht(e,n),l=lYe(n)&&!lYe(e.url);switch(t){case"origin":return a??O0r(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=uYe(e);return uht(n,A)?n:lYe(n)&&!lYe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function O0r(e,t){return ihe(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function lYe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function jla(e,t){if(lht===void 0)return!0;let r=x6n(t);if(r==="no metadata"||r.length===0)return!0;let n=qla(r),a=$la(r,n);for(let o of a){let l=o.algo,A=o.hash,f=lht.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),eua(f,A))return!0}return!1}var zla=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function x6n(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=zla.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();T6n.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function qla(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function nua(e){return e.controller.state==="aborted"}function iua(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function sua(e){return Dla[e.toLowerCase()]??e}function oua(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return ihe(typeof t=="string"),t}var aua=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function G6n(e,t,r=0,n=1){class a{#e;#t;#n;constructor(l,A){this.#e=l,this.#t=A,this.#n=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let l=this.#n,A=this.#e[t],f=A.length;if(l>=f)return{value:void 0,done:!0};let{[r]:I,[n]:C}=A[l];this.#n=l+1;let b;switch(this.#t){case"key":b=I;break;case"value":b=C;break;case"key+value":b=[I,C];break}return{value:b,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,aua),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,l){return new a(o,l)}}function cua(e,t,r,n=0,a=1){let o=G6n(e,r,n,a),l={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return cYe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return cYe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return cYe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,I=globalThis){if(cYe.brandCheck(this,t),cYe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:C,1:b}of o(this,"key+value"))f.call(I,b,C,this)}}};return Object.defineProperties(t.prototype,{...l,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:l.entries.value}})}async function lua(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{n(await F6n(o))}catch(l){a(l)}}function uua(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function gua(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var Aua=/[^\x00-\xFF]/;function cht(e){return ihe(!Aua.test(e)),e}async function F6n(e){let t=[],r=0;for(;;){let{done:n,value:a}=await e.read();if(n)return Buffer.concat(t,r);if(!kla(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function dua(e){ihe("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function M0r(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function Z6n(e){ihe("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function pua(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(t&&nhe(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,t&&nhe(f=>f===" "||f===" ",r,n);let a=nhe(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),o=a.length?Number(a):null;if(t&&nhe(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,t&&nhe(f=>f===" "||f===" ",r,n);let l=nhe(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),A=l.length?Number(l):null;return n.positionA?"failure":{rangeStartValue:o,rangeEndValue:A}}function fua(e,t,r){let n="bytes ";return n+=cht(`${e}`),n+="-",n+=cht(`${t}`),n+="/",n+=cht(`${r}`),n}var H0r=class extends yla{#e;constructor(t){super(),this.#e=t}_transform(t,r,n){if(!this._inflateStream){if(t.length===0){n();return}this._inflateStream=(t[0]&15)===8?v6n.createInflate(this.#e):v6n.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,n)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function Iua(e){return new H0r(e)}function hua(e){let t=null,r=null,n=null,a=L6n("content-type",e);if(a===null)return"failure";for(let o of a){let l=wla(o);l==="failure"||l.essence==="*/*"||(n=l,n.essence!==r?(t=null,n.parameters.has("charset")&&(t=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&t!==null&&n.parameters.set("charset",t))}return n??"failure"}function mua(e){let t=e,r={position:0},n=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),n.push(a),a=""}return n}function L6n(e,t){let r=t.get(e,!0);return r===null?null:mua(r)}var Cua=new TextDecoder;function _ua(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),Cua.decode(e))}var Y0r=class{get baseUrl(){return B6n()}get origin(){return this.baseUrl?.origin}policyContainer=k6n()},Q0r=class{settingsObject=new Y0r},yua=new Q0r;V6n.exports={isAborted:nua,isCancelled:iua,isValidEncodedURL:N6n,createDeferredPromise:rua,ReadableStreamFrom:Nla,tryUpgradeRequestToAPotentiallyTrustworthyURL:tua,clampAndCoarsenConnectionTimingInfo:Qla,coarsenedSharedCurrentTime:Xla,determineRequestsReferrer:Kla,makePolicyContainer:k6n,clonePolicyContainer:Ula,appendFetchMetadata:Hla,appendRequestOriginHeader:Yla,TAOCheck:Mla,corsCheck:Ola,crossOriginResourcePolicyCheck:Wla,createOpaqueTimingInfo:Jla,setRequestReferrerPolicyOnRedirect:Pla,isValidHTTPToken:w6n,requestBadPort:Fla,requestCurrentURL:uYe,responseURL:R6n,responseLocationURL:xla,isBlobLike:Rla,isURLPotentiallyTrustworthy:lYe,isValidReasonPhrase:Lla,sameOrigin:uht,normalizeMethod:sua,serializeJavascriptValueToJSONString:oua,iteratorMixin:cua,createIterator:G6n,isValidHeaderName:Vla,isValidHeaderValue:D6n,isErrorLike:Zla,fullyReadBody:lua,bytesMatch:jla,isReadableStreamLike:uua,readableStreamClose:gua,isomorphicEncode:cht,urlIsLocal:dua,urlHasHttpsScheme:M0r,urlIsHttpHttpsScheme:Z6n,readAllBytes:F6n,simpleRangeHeaderValue:pua,buildContentRange:fua,parseMetadata:x6n,createInflate:Iua,extractMimeType:hua,getDecodeSplit:L6n,utf8DecodeBytes:_ua,environmentSettingsObject:yua}});var iae=H((cau,P6n)=>{"use strict";P6n.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var J0r=H((lau,W6n)=>{"use strict";var{Blob:bua,File:Eua}=wt("node:buffer"),{kState:O$}=iae(),{webidl:T8}=kk(),X0r=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[O$]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return T8.brandCheck(this,e),this[O$].blobLike.stream(...t)}arrayBuffer(...t){return T8.brandCheck(this,e),this[O$].blobLike.arrayBuffer(...t)}slice(...t){return T8.brandCheck(this,e),this[O$].blobLike.slice(...t)}text(...t){return T8.brandCheck(this,e),this[O$].blobLike.text(...t)}get size(){return T8.brandCheck(this,e),this[O$].blobLike.size}get type(){return T8.brandCheck(this,e),this[O$].blobLike.type}get name(){return T8.brandCheck(this,e),this[O$].name}get lastModified(){return T8.brandCheck(this,e),this[O$].lastModified}get[Symbol.toStringTag](){return"File"}};T8.converters.Blob=T8.interfaceConverter(bua);function Sua(e){return e instanceof Eua||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}W6n.exports={FileLike:X0r,isFileLike:Sua}});var AYe=H((uau,Q6n)=>{"use strict";var{isBlobLike:ght,iteratorMixin:vua}=qW(),{kState:WZ}=iae(),{kEnumerableProperty:ywe}=Em(),{FileLike:O6n,isFileLike:Bua}=J0r(),{webidl:W1}=kk(),{File:Y6n}=wt("node:buffer"),M6n=wt("node:util"),H6n=globalThis.File??Y6n,gYe=class e{constructor(t){if(t!==void 0)throw W1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[WZ]=[]}append(t,r,n=void 0){W1.brandCheck(this,e);let a="FormData.append";if(W1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!ght(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=W1.converters.USVString(t,a,"name"),r=ght(r)?W1.converters.Blob(r,a,"value",{strict:!1}):W1.converters.USVString(r,a,"value"),n=arguments.length===3?W1.converters.USVString(n,a,"filename"):void 0;let o=U0r(t,r,n);this[WZ].push(o)}delete(t){W1.brandCheck(this,e);let r="FormData.delete";W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ]=this[WZ].filter(n=>n.name!==t)}get(t){W1.brandCheck(this,e);let r="FormData.get";W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name");let n=this[WZ].findIndex(a=>a.name===t);return n===-1?null:this[WZ][n].value}getAll(t){W1.brandCheck(this,e);let r="FormData.getAll";return W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ].filter(n=>n.name===t).map(n=>n.value)}has(t){W1.brandCheck(this,e);let r="FormData.has";return W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ].findIndex(n=>n.name===t)!==-1}set(t,r,n=void 0){W1.brandCheck(this,e);let a="FormData.set";if(W1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!ght(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=W1.converters.USVString(t,a,"name"),r=ght(r)?W1.converters.Blob(r,a,"name",{strict:!1}):W1.converters.USVString(r,a,"name"),n=arguments.length===3?W1.converters.USVString(n,a,"name"):void 0;let o=U0r(t,r,n),l=this[WZ].findIndex(A=>A.name===t);l!==-1?this[WZ]=[...this[WZ].slice(0,l),o,...this[WZ].slice(l+1).filter(A=>A.name!==t)]:this[WZ].push(o)}[M6n.inspect.custom](t,r){let n=this[WZ].reduce((o,l)=>(o[l.name]?Array.isArray(o[l.name])?o[l.name].push(l.value):o[l.name]=[o[l.name],l.value]:o[l.name]=l.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=M6n.formatWithOptions(r,n);return`FormData ${a.slice(a.indexOf("]")+2)}`}};vua("FormData",gYe,WZ,"name","value");Object.defineProperties(gYe.prototype,{append:ywe,delete:ywe,get:ywe,getAll:ywe,has:ywe,set:ywe,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function U0r(e,t,r){if(typeof t!="string"){if(Bua(t)||(t=t instanceof Blob?new H6n([t],"blob",{type:t.type}):new O6n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=t instanceof Y6n?new H6n([t],r,n):new O6n(t,r,n)}}return{name:e,value:t}}Q6n.exports={FormData:gYe,makeEntry:U0r}});var z6n=H((gau,j6n)=>{"use strict";var{isUSVString:X6n,bufferToLowerCasedHeaderName:wua}=Em(),{utf8DecodeBytes:Tua}=qW(),{HTTP_TOKEN_CODEPOINTS:Rua,isomorphicDecode:J6n}=eV(),{isFileLike:Nua}=J0r(),{makeEntry:Dua}=AYe(),Aht=wt("node:assert"),{File:kua}=wt("node:buffer"),xua=globalThis.File??kua,Gua=Buffer.from('form-data; name="'),U6n=Buffer.from("; filename"),Fua=Buffer.from("--"),Zua=Buffer.from(`--\r +`);function Lua(e){for(let t=0;t70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}function Pua(e,t){Aht(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let l=e.length;for(;e[l-1]===10&&e[l-2]===13;)l-=2;for(l!==e.length&&(e=e.subarray(0,l));;){if(e.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===e.length-2&&dht(e,Fua,o)||o.position===e.length-4&&dht(e,Zua,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let A=Wua(e,o);if(A==="failure")return"failure";let{name:f,filename:I,contentType:C,encoding:b}=A;o.position+=2;let E;{let B=e.indexOf(n.subarray(2),o.position);if(B===-1)return"failure";E=e.subarray(o.position,B-4),o.position+=E.length,b==="base64"&&(E=Buffer.from(E.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let N;I!==null?(C??="text/plain",Lua(C)||(C=""),N=new xua([E],I,{type:C})):N=Tua(Buffer.from(E)),Aht(X6n(f)),Aht(typeof N=="string"&&X6n(N)||Nua(N)),a.push(Dua(f,N,I))}}function Wua(e,t){let r=null,n=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:a,encoding:o};let l=bwe(A=>A!==10&&A!==13&&A!==58,e,t);if(l=K0r(l,!0,!0,A=>A===9||A===32),!Rua.test(l.toString())||e[t.position]!==58)return"failure";switch(t.position++,bwe(A=>A===32||A===9,e,t),wua(l)){case"content-disposition":{if(r=n=null,!dht(e,Gua,t)||(t.position+=17,r=K6n(e,t),r===null))return"failure";if(dht(e,U6n,t)){let A=t.position+U6n.length;if(e[A]===42&&(t.position+=1,A+=1),e[A]!==61||e[A+1]!==34||(t.position+=12,n=K6n(e,t),n===null))return"failure"}break}case"content-type":{let A=bwe(f=>f!==10&&f!==13,e,t);A=K0r(A,!1,!0,f=>f===9||f===32),a=J6n(A);break}case"content-transfer-encoding":{let A=bwe(f=>f!==10&&f!==13,e,t);A=K0r(A,!1,!0,f=>f===9||f===32),o=J6n(A);break}default:bwe(A=>A!==10&&A!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function K6n(e,t){Aht(e[t.position-1]===34);let r=bwe(n=>n!==10&&n!==13&&n!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` +`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function bwe(e,t,r){let n=r.position;for(;n0&&n(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function dht(e,t,r){if(e.length{"use strict";var dYe=Em(),{ReadableStreamFrom:Oua,isBlobLike:q6n,isReadableStreamLike:Mua,readableStreamClose:Hua,createDeferredPromise:Yua,fullyReadBody:Qua,extractMimeType:Xua,utf8DecodeBytes:t7n}=qW(),{FormData:$6n}=AYe(),{kState:Swe}=iae(),{webidl:Jua}=kk(),{Blob:Uua}=wt("node:buffer"),j0r=wt("node:assert"),{isErrored:r7n,isDisturbed:Kua}=wt("node:stream"),{isArrayBuffer:jua}=wt("node:util/types"),{serializeAMimeType:zua}=eV(),{multipartFormDataParser:qua}=z6n(),pht=new TextEncoder;function $ua(){}var z0r=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,q0r;z0r&&(q0r=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!Kua(t)&&!r7n(t)&&t.cancel("Response object has been garbage collected").catch($ua)}));function n7n(e,t=!1){let r=null;e instanceof ReadableStream?r=e:q6n(e)?r=e.stream():r=new ReadableStream({async pull(f){let I=typeof a=="string"?pht.encode(a):a;I.byteLength&&f.enqueue(I),queueMicrotask(()=>Hua(f))},start(){},type:"bytes"}),j0r(Mua(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(jua(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(dYe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r Content-Disposition: form-data`;let C=Q=>Q.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),b=Q=>Q.replace(/\r?\n|\r/g,`\r -`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,X]of e)if(typeof X=="string"){let ae=Aht.encode(I+`; name="${C(b(Q))}"\r +`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,X]of e)if(typeof X=="string"){let ae=pht.encode(I+`; name="${C(b(Q))}"\r \r ${b(X)}\r -`);E.push(ae),o+=ae.byteLength}else{let ae=Aht.encode(`${I}; name="${C(b(Q))}"`+(X.name?`; filename="${C(X.name)}"`:"")+`\r +`);E.push(ae),o+=ae.byteLength}else{let ae=pht.encode(`${I}; name="${C(b(Q))}"`+(X.name?`; filename="${C(X.name)}"`:"")+`\r Content-Type: ${X.type||"application/octet-stream"}\r \r -`);E.push(ae,X,N),typeof X.size=="number"?o+=ae.byteLength+X.size+N.byteLength:B=!0}let F=Aht.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l=`multipart/form-data; boundary=${f}`}else if(Q6n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(gYe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:vua(e)}if((typeof a=="string"||gYe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new ReadableStream({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();if(b)queueMicrotask(()=>{I.close(),I.byobRequest?.respond(0)});else if(!K6n(r)){let E=new Uint8Array(C);E.byteLength&&I.enqueue(E)}return I.desiredSize>0},async cancel(I){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},l]}function Vua(e,t=!1){return e instanceof ReadableStream&&(X0r(!gYe.isDisturbed(e),"The body has already been consumed."),X0r(!e.locked,"The stream is locked.")),j6n(e,t)}function Pua(e,t){let[r,n]=t.stream.tee();return J0r&&U0r.register(e,new WeakRef(r)),t.stream=r,{stream:n,length:t.length,source:t.source}}function Wua(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function Oua(e){return{blob(){return bwe(this,r=>{let n=J6n(this);return n===null?n="":n&&(n=Fua(n)),new kua([r],{type:n})},e)},arrayBuffer(){return bwe(this,r=>new Uint8Array(r).buffer,e)},text(){return bwe(this,U6n,e)},json(){return bwe(this,Hua,e)},formData(){return bwe(this,r=>{let n=J6n(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let a=Zua(r,n);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new X6n;return o[Ewe]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new X6n;for(let[l,A]of a)o.append(l,A);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return bwe(this,r=>new Uint8Array(r),e)}}}function Mua(e){Object.assign(e.prototype,Oua(e))}async function bwe(e,t,r){if(Dua.brandCheck(e,r),z6n(e))throw new TypeError("Body is unusable: Body has already been read");Wua(e[Ewe]);let n=Tua(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[Ewe].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await Rua(e[Ewe].body,o,a),n.promise)}function z6n(e){let t=e[Ewe].body;return t!=null&&(t.stream.locked||gYe.isDisturbed(t.stream))}function Hua(e){return JSON.parse(U6n(e))}function J6n(e){let t=e[Ewe].headersList,r=Nua(t);return r==="failure"?null:r}q6n.exports={extractBody:j6n,safelyExtractBody:Vua,cloneBody:Pua,mixinBody:Mua,streamRegistry:U0r,hasFinalizationRegistry:J0r,bodyUnusable:z6n}});var l7n=H((you,c7n)=>{"use strict";var Af=wt("node:assert"),II=Em(),{channels:$6n}=gwe(),K0r=R0r(),{RequestContentLengthMismatchError:ihe,ResponseContentLengthMismatchError:Yua,RequestAbortedError:s7n,HeadersTimeoutError:Qua,HeadersOverflowError:Xua,SocketError:mht,InformationalError:Swe,BodyTimeoutError:Jua,HTTPParserError:Uua,ResponseExceededMaxSizeError:Kua}=Y0(),{kUrl:o7n,kReset:tV,kClient:$0r,kParser:Ov,kBlocking:fYe,kRunning:EG,kPending:jua,kSize:e7n,kWriting:sae,kQueue:kX,kNoRef:dYe,kKeepAliveDefaultTimeout:zua,kHostHeader:qua,kPendingIdx:$ua,kRunningIdx:DM,kError:kM,kPipelining:Iht,kSocket:vwe,kKeepAliveTimeoutValue:Cht,kMaxHeadersSize:j0r,kKeepAliveMaxTimeout:ega,kKeepAliveTimeoutThreshold:tga,kHeadersTimeout:rga,kBodyTimeout:nga,kStrictContentLength:eyr,kMaxRequests:t7n,kCounter:iga,kMaxResponseSize:sga,kOnError:oga,kResume:iae,kHTTPContext:a7n}=B2(),R8=zjn(),aga=Buffer.alloc(0),dht=Buffer[Symbol.species],pht=II.addListener,cga=II.removeAllListeners,z0r;async function lga(){let e=process.env.JEST_WORKER_ID?k0r():void 0,t;try{t=await WebAssembly.compile(e6n())}catch{t=await WebAssembly.compile(e||k0r())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onStatus(new dht(N8.buffer,o,a))||0},wasm_on_message_begin:r=>(Af(RR.ptr===r),RR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onHeaderField(new dht(N8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onHeaderValue(new dht(N8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(Af(RR.ptr===r),RR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onBody(new dht(N8.buffer,o,a))||0},wasm_on_message_complete:r=>(Af(RR.ptr===r),RR.onMessageComplete()||0)}})}var q0r=null,tyr=lga();tyr.catch();var RR=null,N8=null,fht=0,D8=null,uga=0,pYe=1,Bwe=2|pYe,hht=4|pYe,ryr=8|uga,nyr=class{constructor(t,r,{exports:n}){Af(Number.isFinite(t[j0r])&&t[j0r]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(R8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[j0r],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[sga]}setTimeout(t,r){t!==this.timeoutValue||r&pYe^this.timeoutType&pYe?(this.timeout&&(K0r.clearTimeout(this.timeout),this.timeout=null),t&&(r&pYe?this.timeout=K0r.setFastTimeout(r7n,t,new WeakRef(this)):(this.timeout=setTimeout(r7n,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(Af(this.ptr!=null),Af(RR==null),this.llhttp.llhttp_resume(this.ptr),Af(this.timeoutType===hht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||aga),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){Af(this.ptr!=null),Af(RR==null),Af(!this.paused);let{socket:r,llhttp:n}=this;t.length>fht&&(D8&&n.free(D8),fht=Math.ceil(t.length/4096)*4096,D8=n.malloc(fht)),new Uint8Array(n.memory.buffer,D8,fht).set(t);try{let a;try{N8=t,RR=this,a=n.llhttp_execute(this.ptr,D8,t.length)}catch(l){throw l}finally{RR=null,N8=null}let o=n.llhttp_get_error_pos(this.ptr)-D8;if(a===R8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===R8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==R8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new Uua(A,R8.ERROR[a],t.slice(o))}}catch(a){II.destroy(r,a)}}destroy(){Af(this.ptr!=null),Af(RR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&K0r.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let n=r[kX][r[DM]];if(!n)return-1;n.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];if(n.length===10){let a=II.bufferToLowerCasedHeaderName(n);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else n.length===14&&II.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&II.destroy(this.socket,new Xua)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;Af(r),Af(n[vwe]===a),Af(!a.destroyed),Af(!this.paused),Af((o.length&1)===0);let A=n[kX][n[DM]];Af(A),Af(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[Ov].destroy(),a[Ov]=null,a[$0r]=null,a[kM]=null,cga(a),n[vwe]=null,n[a7n]=null,n[kX][n[DM]++]=null,n.emit("disconnect",n[o7n],[n],new Swe("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){II.destroy(a,f)}n[iae]()}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[kX][a[DM]];if(!f)return-1;if(Af(!this.upgrade),Af(this.statusCode<200),t===100)return II.destroy(o,new mht("bad response",II.getSocketInfo(o))),-1;if(r&&!f.upgrade)return II.destroy(o,new mht("bad upgrade",II.getSocketInfo(o))),-1;if(Af(this.timeoutType===Bwe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[tV]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[nga];this.setTimeout(C,hht)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return Af(a[EG]===1),this.upgrade=!0,2;if(r)return Af(a[EG]===1),this.upgrade=!0,2;if(Af((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[Iht]){let C=this.keepAlive?II.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[tga],a[ega]);b<=0?o[tV]=!0:a[Cht]=b}else a[Cht]=a[zua]}else o[tV]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[fYe]&&(o[fYe]=!1,a[iae]()),I?R8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[kX][r[DM]];if(Af(l),Af(this.timeoutType===hht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),Af(a>=200),o>-1&&this.bytesRead+t.length>o)return II.destroy(n,new Kua),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return R8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;Af(n>=100),Af((this.headers.length&1)===0);let I=t[kX][t[DM]];if(Af(I),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return II.destroy(r,new Yua),-1;if(I.onComplete(o),t[kX][t[DM]++]=null,r[sae])return Af(t[EG]===0),II.destroy(r,new Swe("reset")),R8.ERROR.PAUSED;if(f){if(r[tV]&&t[EG]===0)return II.destroy(r,new Swe("reset")),R8.ERROR.PAUSED;t[Iht]==null||t[Iht]===1?setImmediate(()=>t[iae]()):t[iae]()}else return II.destroy(r,new Swe("reset")),R8.ERROR.PAUSED}}};function r7n(e){let{socket:t,timeoutType:r,client:n,paused:a}=e.deref();r===Bwe?(!t[sae]||t.writableNeedDrain||n[EG]>1)&&(Af(!a,"cannot be paused while waiting for headers"),II.destroy(t,new Qua)):r===hht?a||II.destroy(t,new Jua):r===ryr&&(Af(n[EG]===0&&n[Cht]),II.destroy(t,new Swe("socket idle timeout")))}async function gga(e,t){e[vwe]=t,q0r||(q0r=await tyr,tyr=null),t[dYe]=!1,t[sae]=!1,t[tV]=!1,t[fYe]=!1,t[Ov]=new nyr(e,t,q0r),pht(t,"error",function(n){Af(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[Ov];if(n.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[kM]=n,this[$0r][oga](n)}),pht(t,"readable",function(){let n=this[Ov];n&&n.readMore()}),pht(t,"end",function(){let n=this[Ov];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}II.destroy(this,new mht("other side closed",II.getSocketInfo(this)))}),pht(t,"close",function(){let n=this[$0r],a=this[Ov];a&&(!this[kM]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[Ov].destroy(),this[Ov]=null);let o=this[kM]||new mht("closed",II.getSocketInfo(this));if(n[vwe]=null,n[a7n]=null,n.destroyed){Af(n[jua]===0);let l=n[kX].splice(n[DM]);for(let A=0;A0&&o.code!=="UND_ERR_INFO"){let l=n[kX][n[DM]];n[kX][n[DM]++]=null,II.errorRequest(n,l,o)}n[$ua]=n[DM],Af(n[EG]===0),n.emit("disconnect",n[o7n],[n],o),n[iae]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return pga(e,...n)},resume(){Aga(e)},destroy(n,a){r?queueMicrotask(a):t.destroy(n).on("close",a)},get destroyed(){return t.destroyed},busy(n){return!!(t[sae]||t[tV]||t[fYe]||n&&(e[EG]>0&&!n.idempotent||e[EG]>0&&(n.upgrade||n.method==="CONNECT")||e[EG]>0&&II.bodyLength(n.body)!==0&&(II.isStream(n.body)||II.isAsyncIterable(n.body)||II.isFormDataLike(n.body))))}}}function Aga(e){let t=e[vwe];if(t&&!t.destroyed){if(e[e7n]===0?!t[dYe]&&t.unref&&(t.unref(),t[dYe]=!0):t[dYe]&&t.ref&&(t.ref(),t[dYe]=!1),e[e7n]===0)t[Ov].timeoutType!==ryr&&t[Ov].setTimeout(e[Cht],ryr);else if(e[EG]>0&&t[Ov].statusCode<200&&t[Ov].timeoutType!==Bwe){let r=e[kX][e[DM]],n=r.headersTimeout!=null?r.headersTimeout:e[rga];t[Ov].setTimeout(n,Bwe)}}}function dga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function pga(e,t){let{method:r,path:n,host:a,upgrade:o,blocking:l,reset:A}=t,{body:f,headers:I,contentLength:C}=t,b=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(II.isFormDataLike(f)){z0r||(z0r=AYe().extractBody);let[Q,X]=z0r(f);t.contentType==null&&I.push("content-type",X),f=Q.stream,C=Q.length}else II.isBlobLike(f)&&t.contentType==null&&f.type&&I.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let E=II.bodyLength(f);if(C=E??C,C===null&&(C=t.contentLength),C===0&&!b&&(C=null),dga(r)&&C>0&&t.contentLength!==null&&t.contentLength!==C){if(e[eyr])return II.errorRequest(e,t,new ihe),!1;process.emitWarning(new ihe)}let N=e[vwe],B=Q=>{t.aborted||t.completed||(II.errorRequest(e,t,Q||new s7n),II.destroy(f),II.destroy(N,new Swe("aborted")))};try{t.onConnect(B)}catch(Q){II.errorRequest(e,t,Q)}if(t.aborted)return!1;r==="HEAD"&&(N[tV]=!0),(o||r==="CONNECT")&&(N[tV]=!0),A!=null&&(N[tV]=A),e[t7n]&&N[iga]++>=e[t7n]&&(N[tV]=!0),l&&(N[fYe]=!0);let F=`${r} ${n} HTTP/1.1\r +`);E.push(ae,X,N),typeof X.size=="number"?o+=ae.byteLength+X.size+N.byteLength:B=!0}let F=pht.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l=`multipart/form-data; boundary=${f}`}else if(q6n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(dYe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:Oua(e)}if((typeof a=="string"||dYe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new ReadableStream({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();if(b)queueMicrotask(()=>{I.close(),I.byobRequest?.respond(0)});else if(!r7n(r)){let E=new Uint8Array(C);E.byteLength&&I.enqueue(E)}return I.desiredSize>0},async cancel(I){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},l]}function ega(e,t=!1){return e instanceof ReadableStream&&(j0r(!dYe.isDisturbed(e),"The body has already been consumed."),j0r(!e.locked,"The stream is locked.")),n7n(e,t)}function tga(e,t){let[r,n]=t.stream.tee();return z0r&&q0r.register(e,new WeakRef(r)),t.stream=r,{stream:n,length:t.length,source:t.source}}function rga(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function nga(e){return{blob(){return Ewe(this,r=>{let n=e7n(this);return n===null?n="":n&&(n=zua(n)),new Uua([r],{type:n})},e)},arrayBuffer(){return Ewe(this,r=>new Uint8Array(r).buffer,e)},text(){return Ewe(this,t7n,e)},json(){return Ewe(this,sga,e)},formData(){return Ewe(this,r=>{let n=e7n(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let a=qua(r,n);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new $6n;return o[Swe]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new $6n;for(let[l,A]of a)o.append(l,A);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return Ewe(this,r=>new Uint8Array(r),e)}}}function iga(e){Object.assign(e.prototype,nga(e))}async function Ewe(e,t,r){if(Jua.brandCheck(e,r),i7n(e))throw new TypeError("Body is unusable: Body has already been read");rga(e[Swe]);let n=Yua(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[Swe].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await Qua(e[Swe].body,o,a),n.promise)}function i7n(e){let t=e[Swe].body;return t!=null&&(t.stream.locked||dYe.isDisturbed(t.stream))}function sga(e){return JSON.parse(t7n(e))}function e7n(e){let t=e[Swe].headersList,r=Xua(t);return r==="failure"?null:r}s7n.exports={extractBody:n7n,safelyExtractBody:ega,cloneBody:tga,mixinBody:iga,streamRegistry:q0r,hasFinalizationRegistry:z0r,bodyUnusable:i7n}});var I7n=H((dau,f7n)=>{"use strict";var Af=wt("node:assert"),II=Em(),{channels:o7n}=Awe(),$0r=x0r(),{RequestContentLengthMismatchError:she,ResponseContentLengthMismatchError:oga,RequestAbortedError:A7n,HeadersTimeoutError:aga,HeadersOverflowError:cga,SocketError:_ht,InformationalError:vwe,BodyTimeoutError:lga,HTTPParserError:uga,ResponseExceededMaxSizeError:gga}=Y0(),{kUrl:d7n,kReset:tV,kClient:nyr,kParser:Ov,kBlocking:hYe,kRunning:EG,kPending:Aga,kSize:a7n,kWriting:oae,kQueue:kX,kNoRef:fYe,kKeepAliveDefaultTimeout:dga,kHostHeader:pga,kPendingIdx:fga,kRunningIdx:DM,kError:kM,kPipelining:mht,kSocket:Bwe,kKeepAliveTimeoutValue:yht,kMaxHeadersSize:eyr,kKeepAliveMaxTimeout:Iga,kKeepAliveTimeoutThreshold:hga,kHeadersTimeout:mga,kBodyTimeout:Cga,kStrictContentLength:iyr,kMaxRequests:c7n,kCounter:_ga,kMaxResponseSize:yga,kOnError:bga,kResume:sae,kHTTPContext:p7n}=B2(),R8=i6n(),Ega=Buffer.alloc(0),fht=Buffer[Symbol.species],Iht=II.addListener,Sga=II.removeAllListeners,tyr;async function vga(){let e=process.env.JEST_WORKER_ID?Z0r():void 0,t;try{t=await WebAssembly.compile(a6n())}catch{t=await WebAssembly.compile(e||Z0r())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onStatus(new fht(N8.buffer,o,a))||0},wasm_on_message_begin:r=>(Af(RR.ptr===r),RR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onHeaderField(new fht(N8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onHeaderValue(new fht(N8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(Af(RR.ptr===r),RR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onBody(new fht(N8.buffer,o,a))||0},wasm_on_message_complete:r=>(Af(RR.ptr===r),RR.onMessageComplete()||0)}})}var ryr=null,syr=vga();syr.catch();var RR=null,N8=null,hht=0,D8=null,Bga=0,IYe=1,wwe=2|IYe,Cht=4|IYe,oyr=8|Bga,ayr=class{constructor(t,r,{exports:n}){Af(Number.isFinite(t[eyr])&&t[eyr]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(R8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[eyr],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[yga]}setTimeout(t,r){t!==this.timeoutValue||r&IYe^this.timeoutType&IYe?(this.timeout&&($0r.clearTimeout(this.timeout),this.timeout=null),t&&(r&IYe?this.timeout=$0r.setFastTimeout(l7n,t,new WeakRef(this)):(this.timeout=setTimeout(l7n,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(Af(this.ptr!=null),Af(RR==null),this.llhttp.llhttp_resume(this.ptr),Af(this.timeoutType===Cht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Ega),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){Af(this.ptr!=null),Af(RR==null),Af(!this.paused);let{socket:r,llhttp:n}=this;t.length>hht&&(D8&&n.free(D8),hht=Math.ceil(t.length/4096)*4096,D8=n.malloc(hht)),new Uint8Array(n.memory.buffer,D8,hht).set(t);try{let a;try{N8=t,RR=this,a=n.llhttp_execute(this.ptr,D8,t.length)}catch(l){throw l}finally{RR=null,N8=null}let o=n.llhttp_get_error_pos(this.ptr)-D8;if(a===R8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===R8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==R8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new uga(A,R8.ERROR[a],t.slice(o))}}catch(a){II.destroy(r,a)}}destroy(){Af(this.ptr!=null),Af(RR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&$0r.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let n=r[kX][r[DM]];if(!n)return-1;n.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];if(n.length===10){let a=II.bufferToLowerCasedHeaderName(n);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else n.length===14&&II.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&II.destroy(this.socket,new cga)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;Af(r),Af(n[Bwe]===a),Af(!a.destroyed),Af(!this.paused),Af((o.length&1)===0);let A=n[kX][n[DM]];Af(A),Af(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[Ov].destroy(),a[Ov]=null,a[nyr]=null,a[kM]=null,Sga(a),n[Bwe]=null,n[p7n]=null,n[kX][n[DM]++]=null,n.emit("disconnect",n[d7n],[n],new vwe("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){II.destroy(a,f)}n[sae]()}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[kX][a[DM]];if(!f)return-1;if(Af(!this.upgrade),Af(this.statusCode<200),t===100)return II.destroy(o,new _ht("bad response",II.getSocketInfo(o))),-1;if(r&&!f.upgrade)return II.destroy(o,new _ht("bad upgrade",II.getSocketInfo(o))),-1;if(Af(this.timeoutType===wwe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[tV]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[Cga];this.setTimeout(C,Cht)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return Af(a[EG]===1),this.upgrade=!0,2;if(r)return Af(a[EG]===1),this.upgrade=!0,2;if(Af((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[mht]){let C=this.keepAlive?II.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[hga],a[Iga]);b<=0?o[tV]=!0:a[yht]=b}else a[yht]=a[dga]}else o[tV]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[hYe]&&(o[hYe]=!1,a[sae]()),I?R8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[kX][r[DM]];if(Af(l),Af(this.timeoutType===Cht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),Af(a>=200),o>-1&&this.bytesRead+t.length>o)return II.destroy(n,new gga),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return R8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;Af(n>=100),Af((this.headers.length&1)===0);let I=t[kX][t[DM]];if(Af(I),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return II.destroy(r,new oga),-1;if(I.onComplete(o),t[kX][t[DM]++]=null,r[oae])return Af(t[EG]===0),II.destroy(r,new vwe("reset")),R8.ERROR.PAUSED;if(f){if(r[tV]&&t[EG]===0)return II.destroy(r,new vwe("reset")),R8.ERROR.PAUSED;t[mht]==null||t[mht]===1?setImmediate(()=>t[sae]()):t[sae]()}else return II.destroy(r,new vwe("reset")),R8.ERROR.PAUSED}}};function l7n(e){let{socket:t,timeoutType:r,client:n,paused:a}=e.deref();r===wwe?(!t[oae]||t.writableNeedDrain||n[EG]>1)&&(Af(!a,"cannot be paused while waiting for headers"),II.destroy(t,new aga)):r===Cht?a||II.destroy(t,new lga):r===oyr&&(Af(n[EG]===0&&n[yht]),II.destroy(t,new vwe("socket idle timeout")))}async function wga(e,t){e[Bwe]=t,ryr||(ryr=await syr,syr=null),t[fYe]=!1,t[oae]=!1,t[tV]=!1,t[hYe]=!1,t[Ov]=new ayr(e,t,ryr),Iht(t,"error",function(n){Af(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[Ov];if(n.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[kM]=n,this[nyr][bga](n)}),Iht(t,"readable",function(){let n=this[Ov];n&&n.readMore()}),Iht(t,"end",function(){let n=this[Ov];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}II.destroy(this,new _ht("other side closed",II.getSocketInfo(this)))}),Iht(t,"close",function(){let n=this[nyr],a=this[Ov];a&&(!this[kM]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[Ov].destroy(),this[Ov]=null);let o=this[kM]||new _ht("closed",II.getSocketInfo(this));if(n[Bwe]=null,n[p7n]=null,n.destroyed){Af(n[Aga]===0);let l=n[kX].splice(n[DM]);for(let A=0;A0&&o.code!=="UND_ERR_INFO"){let l=n[kX][n[DM]];n[kX][n[DM]++]=null,II.errorRequest(n,l,o)}n[fga]=n[DM],Af(n[EG]===0),n.emit("disconnect",n[d7n],[n],o),n[sae]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return Nga(e,...n)},resume(){Tga(e)},destroy(n,a){r?queueMicrotask(a):t.destroy(n).on("close",a)},get destroyed(){return t.destroyed},busy(n){return!!(t[oae]||t[tV]||t[hYe]||n&&(e[EG]>0&&!n.idempotent||e[EG]>0&&(n.upgrade||n.method==="CONNECT")||e[EG]>0&&II.bodyLength(n.body)!==0&&(II.isStream(n.body)||II.isAsyncIterable(n.body)||II.isFormDataLike(n.body))))}}}function Tga(e){let t=e[Bwe];if(t&&!t.destroyed){if(e[a7n]===0?!t[fYe]&&t.unref&&(t.unref(),t[fYe]=!0):t[fYe]&&t.ref&&(t.ref(),t[fYe]=!1),e[a7n]===0)t[Ov].timeoutType!==oyr&&t[Ov].setTimeout(e[yht],oyr);else if(e[EG]>0&&t[Ov].statusCode<200&&t[Ov].timeoutType!==wwe){let r=e[kX][e[DM]],n=r.headersTimeout!=null?r.headersTimeout:e[mga];t[Ov].setTimeout(n,wwe)}}}function Rga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Nga(e,t){let{method:r,path:n,host:a,upgrade:o,blocking:l,reset:A}=t,{body:f,headers:I,contentLength:C}=t,b=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(II.isFormDataLike(f)){tyr||(tyr=pYe().extractBody);let[Q,X]=tyr(f);t.contentType==null&&I.push("content-type",X),f=Q.stream,C=Q.length}else II.isBlobLike(f)&&t.contentType==null&&f.type&&I.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let E=II.bodyLength(f);if(C=E??C,C===null&&(C=t.contentLength),C===0&&!b&&(C=null),Rga(r)&&C>0&&t.contentLength!==null&&t.contentLength!==C){if(e[iyr])return II.errorRequest(e,t,new she),!1;process.emitWarning(new she)}let N=e[Bwe],B=Q=>{t.aborted||t.completed||(II.errorRequest(e,t,Q||new A7n),II.destroy(f),II.destroy(N,new vwe("aborted")))};try{t.onConnect(B)}catch(Q){II.errorRequest(e,t,Q)}if(t.aborted)return!1;r==="HEAD"&&(N[tV]=!0),(o||r==="CONNECT")&&(N[tV]=!0),A!=null&&(N[tV]=A),e[c7n]&&N[_ga]++>=e[c7n]&&(N[tV]=!0),l&&(N[hYe]=!0);let F=`${r} ${n} HTTP/1.1\r `;if(typeof a=="string"?F+=`host: ${a}\r -`:F+=e[qua],o?F+=`connection: upgrade\r +`:F+=e[pga],o?F+=`connection: upgrade\r upgrade: ${o}\r -`:e[Iht]&&!N[tV]?F+=`connection: keep-alive\r +`:e[mht]&&!N[tV]?F+=`connection: keep-alive\r `:F+=`connection: close\r `,Array.isArray(I))for(let Q=0;Q{t.removeListener("error",N)}),!f){let B=new s7n;queueMicrotask(()=>N(B))}},N=function(B){if(!f){if(f=!0,Af(a.destroyed||a[sae]&&r[EG]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?II.destroy(t,B):II.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N),t.errorEmitted??t.errored?setImmediate(()=>N(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>N(null)),(t.closeEmitted??t.closed)&&setImmediate(E)}function n7n(e,t,r,n,a,o,l,A){try{t?II.isBuffer(t)&&(Af(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${l}content-length: ${o}\r +`}return o7n.sendHeaders.hasSubscribers&&o7n.sendHeaders.publish({request:t,headers:F,socket:N}),!f||E===0?u7n(B,null,e,t,N,C,F,b):II.isBuffer(f)?u7n(B,f,e,t,N,C,F,b):II.isBlobLike(f)?typeof f.stream=="function"?g7n(B,f.stream(),e,t,N,C,F,b):kga(B,f,e,t,N,C,F,b):II.isStream(f)?Dga(B,f,e,t,N,C,F,b):II.isIterable(f)?g7n(B,f,e,t,N,C,F,b):Af(!1),!0}function Dga(e,t,r,n,a,o,l,A){Af(o!==0||r[EG]===0,"stream body cannot be pipelined");let f=!1,I=new bht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){II.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(queueMicrotask(()=>{t.removeListener("error",N)}),!f){let B=new A7n;queueMicrotask(()=>N(B))}},N=function(B){if(!f){if(f=!0,Af(a.destroyed||a[oae]&&r[EG]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?II.destroy(t,B):II.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N),t.errorEmitted??t.errored?setImmediate(()=>N(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>N(null)),(t.closeEmitted??t.closed)&&setImmediate(E)}function u7n(e,t,r,n,a,o,l,A){try{t?II.isBuffer(t)&&(Af(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${l}content-length: ${o}\r \r `,"latin1"),a.write(t),a.uncork(),n.onBodySent(t),!A&&n.reset!==!1&&(a[tV]=!0)):o===0?a.write(`${l}content-length: 0\r \r `,"latin1"):(Af(o===null,"no body must not have content length"),a.write(`${l}\r -`,"latin1")),n.onRequestSent(),r[iae]()}catch(f){e(f)}}async function Iga(e,t,r,n,a,o,l,A){Af(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new ihe;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${l}content-length: ${o}\r +`,"latin1")),n.onRequestSent(),r[sae]()}catch(f){e(f)}}async function kga(e,t,r,n,a,o,l,A){Af(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new she;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${l}content-length: ${o}\r \r -`,"latin1"),a.write(f),a.uncork(),n.onBodySent(f),n.onRequestSent(),!A&&n.reset!==!1&&(a[tV]=!0),r[iae]()}catch(f){e(f)}}async function i7n(e,t,r,n,a,o,l,A){Af(o!==0||r[EG]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{Af(f===null),a[kM]?N(a[kM]):f=E});a.on("close",I).on("drain",I);let b=new _ht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[kM])throw a[kM];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var _ht=class{constructor({abort:t,socket:r,request:n,contentLength:a,client:o,expectsPayload:l,header:A}){this.socket=r,this.request=n,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=l,this.header=A,this.abort=t,r[sae]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[kM])throw r[kM];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[eyr])throw new ihe;process.emitWarning(new ihe)}r.cork(),l===0&&(!A&&n.reset!==!1&&(r[tV]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r +`,"latin1"),a.write(f),a.uncork(),n.onBodySent(f),n.onRequestSent(),!A&&n.reset!==!1&&(a[tV]=!0),r[sae]()}catch(f){e(f)}}async function g7n(e,t,r,n,a,o,l,A){Af(o!==0||r[EG]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{Af(f===null),a[kM]?N(a[kM]):f=E});a.on("close",I).on("drain",I);let b=new bht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[kM])throw a[kM];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var bht=class{constructor({abort:t,socket:r,request:n,contentLength:a,client:o,expectsPayload:l,header:A}){this.socket=r,this.request=n,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=l,this.header=A,this.abort=t,r[oae]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[kM])throw r[kM];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[iyr])throw new she;process.emitWarning(new she)}r.cork(),l===0&&(!A&&n.reset!==!1&&(r[tV]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r `,"latin1"):r.write(`${f}content-length: ${a}\r \r `,"latin1")),a===null&&r.write(`\r ${I.toString(16)}\r -`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Ov].timeout&&r[Ov].timeoutType===Bwe&&r[Ov].timeout.refresh&&r[Ov].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[sae]=!1,t[kM])throw t[kM];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r +`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Ov].timeout&&r[Ov].timeoutType===wwe&&r[Ov].timeout.refresh&&r[Ov].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[oae]=!1,t[kM])throw t[kM];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r \r `,"latin1"):t.write(`${l}\r `,"latin1"):r===null&&t.write(`\r 0\r \r -`,"latin1"),r!==null&&a!==r){if(n[eyr])throw new ihe;process.emitWarning(new ihe)}t[Ov].timeout&&t[Ov].timeoutType===Bwe&&t[Ov].timeout.refresh&&t[Ov].timeout.refresh(),n[iae]()}}destroy(t){let{socket:r,client:n,abort:a}=this;r[sae]=!1,t&&(Af(n[EG]<=1,"pipeline should only contain this request"),a(t))}};c7n.exports=gga});var I7n=H((bou,f7n)=>{"use strict";var xM=wt("node:assert"),{pipeline:hga}=wt("node:stream"),EC=Em(),{RequestContentLengthMismatchError:iyr,RequestAbortedError:u7n,SocketError:IYe,InformationalError:syr}=Y0(),{kUrl:yht,kReset:Eht,kClient:wwe,kRunning:Sht,kPending:mga,kQueue:she,kPendingIdx:oyr,kRunningIdx:k8,kError:GX,kSocket:tD,kStrictContentLength:Cga,kOnError:ayr,kMaxConcurrentStreams:p7n,kHTTP2Session:xX,kResume:oae,kSize:_ga,kHTTPContext:yga}=B2(),M$=Symbol("open streams"),g7n=!1,bht;try{bht=wt("node:http2")}catch{bht={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:bga,HTTP2_HEADER_METHOD:Ega,HTTP2_HEADER_PATH:Sga,HTTP2_HEADER_SCHEME:vga,HTTP2_HEADER_CONTENT_LENGTH:Bga,HTTP2_HEADER_EXPECT:wga,HTTP2_HEADER_STATUS:Tga}}=bht;function Rga(e){let t=[];for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let a of n)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(n));return t}async function Nga(e,t){e[tD]=t,g7n||(g7n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=bht.connect(e[yht],{createConnection:()=>t,peerMaxConcurrentStreams:e[p7n]});r[M$]=0,r[wwe]=e,r[tD]=t,EC.addListener(r,"error",kga),EC.addListener(r,"frameError",xga),EC.addListener(r,"end",Gga),EC.addListener(r,"goaway",Fga),EC.addListener(r,"close",function(){let{[wwe]:a}=this,{[tD]:o}=a,l=this[tD][GX]||this[GX]||new IYe("closed",EC.getSocketInfo(o));if(a[xX]=null,a.destroyed){xM(a[mga]===0);let A=a[she].splice(a[k8]);for(let f=0;f{n=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return Lga(e,...a)},resume(){Dga(e)},destroy(a,o){n?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function Dga(e){let t=e[tD];t?.destroyed===!1&&(e[_ga]===0&&e[p7n]===0?(t.unref(),e[xX].unref()):(t.ref(),e[xX].ref()))}function kga(e){xM(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[tD][GX]=e,this[wwe][ayr](e)}function xga(e,t,r){if(r===0){let n=new syr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[tD][GX]=n,this[wwe][ayr](n)}}function Gga(){let e=new IYe("other side closed",EC.getSocketInfo(this[tD]));this.destroy(e),EC.destroy(this[tD],e)}function Fga(e){let t=this[GX]||new IYe(`HTTP/2: "GOAWAY" frame received with code ${e}`,EC.getSocketInfo(this)),r=this[wwe];r[tD]=null,r[yga]=null,this[xX]!=null&&(this[xX].destroy(t),this[xX]=null),EC.destroy(this[tD],t);let n=r[she][r[k8]];r[she][r[k8]++]=null,EC.errorRequest(r,n,t),r[oyr]=r[k8],xM(r[Sht]===0),r.emit("disconnect",r[yht],[r],t),r[oae]()}function Zga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Lga(e,t){let r=e[xX],{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=t;if(A)return EC.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let b={};for(let ce=0;ce{t.aborted||t.completed||(ce=ce||new u7n,EC.errorRequest(e,t,ce),E!=null&&EC.destroy(E,ce),EC.destroy(n,ce),e[she][e[k8]++]=null,e[oae]())};try{t.onConnect(F)}catch(ce){EC.errorRequest(e,t,ce)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),E=r.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(t.onUpgrade(null,null,E),++r[M$],e[she][e[k8]++]=null):E.once("ready",()=>{t.onUpgrade(null,null,E),++r[M$],e[she][e[k8]++]=null}),E.once("close",()=>{r[M$]-=1,r[M$]===0&&r.unref()}),!0;b[Sga]=o,b[vga]="https";let Q=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let X=EC.bodyLength(n);if(X==null&&(X=t.contentLength),(X===0||!Q)&&(X=null),Zga(a)&&X>0&&t.contentLength!=null&&t.contentLength!==X){if(e[Cga])return EC.errorRequest(e,t,new iyr),!1;process.emitWarning(new iyr)}X!=null&&(xM(n,"no body must not have content length"),b[Bga]=`${X}`),r.ref();let ae=a==="GET"||a==="HEAD"||n===null;return f?(b[wga]="100-continue",E=r.request(b,{endStream:ae,signal:I}),E.once("continue",ne)):(E=r.request(b,{endStream:ae,signal:I}),ne()),++r[M$],E.once("response",ce=>{let{[Tga]:fe,...ue}=ce;if(t.onResponseStarted(),t.aborted){let de=new u7n;EC.errorRequest(e,t,de),EC.destroy(E,de);return}t.onHeaders(Number(fe),Rga(ue),E.resume.bind(E),"")===!1&&E.pause(),E.on("data",de=>{t.onData(de)===!1&&E.pause()})}),E.once("end",()=>{(E.state?.state==null||E.state.state<6)&&t.onComplete([]),r[M$]===0&&r.unref(),F(new syr("HTTP/2: stream half-closed (remote)")),e[she][e[k8]++]=null,e[oyr]=e[k8],e[oae]()}),E.once("close",()=>{r[M$]-=1,r[M$]===0&&r.unref()}),E.once("error",function(ce){F(ce)}),E.once("frameError",(ce,fe)=>{F(new syr(`HTTP/2: "frameError" received - type ${ce}, code ${fe}`))}),!0;function ne(){!n||X===0?A7n(F,E,null,e,t,e[tD],X,Q):EC.isBuffer(n)?A7n(F,E,n,e,t,e[tD],X,Q):EC.isBlobLike(n)?typeof n.stream=="function"?d7n(F,E,n.stream(),e,t,e[tD],X,Q):Pga(F,E,n,e,t,e[tD],X,Q):EC.isStream(n)?Vga(F,e[tD],Q,E,n,e,t,X):EC.isIterable(n)?d7n(F,E,n,e,t,e[tD],X,Q):xM(!1)}}function A7n(e,t,r,n,a,o,l,A){try{r!=null&&EC.isBuffer(r)&&(xM(l===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),A||(o[Eht]=!0),a.onRequestSent(),n[oae]()}catch(f){e(f)}}function Vga(e,t,r,n,a,o,l,A){xM(A!==0||o[Sht]===0,"stream body cannot be pipelined");let f=hga(a,n,C=>{C?(EC.destroy(f,C),e(C)):(EC.removeAllListeners(f),l.onRequestSent(),r||(t[Eht]=!0),o[oae]())});EC.addListener(f,"data",I);function I(C){l.onBodySent(C)}}async function Pga(e,t,r,n,a,o,l,A){xM(l===r.size,"blob body must have content length");try{if(l!=null&&l!==r.size)throw new iyr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),A||(o[Eht]=!0),n[oae]()}catch(f){e(f)}}async function d7n(e,t,r,n,a,o,l,A){xM(l!==0||n[Sht]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let b=f;f=null,b()}}let C=()=>new Promise((b,E)=>{xM(f===null),o[GX]?E(o[GX]):f=b});t.on("close",I).on("drain",I);try{for await(let b of r){if(o[GX])throw o[GX];let E=t.write(b);a.onBodySent(b),E||await C()}t.end(),a.onRequestSent(),A||(o[Eht]=!0),n[oae]()}catch(b){e(b)}finally{t.off("close",I).off("drain",I)}}f7n.exports=Nga});var Bht=H((Eou,C7n)=>{"use strict";var x8=Em(),{kBodyUsed:hYe}=B2(),lyr=wt("node:assert"),{InvalidArgumentError:Wga}=Y0(),Oga=wt("node:events"),Mga=[300,301,302,303,307,308],h7n=Symbol("body"),vht=class{constructor(t){this[h7n]=t,this[hYe]=!1}async*[Symbol.asyncIterator](){lyr(!this[hYe],"disturbed"),this[hYe]=!0,yield*this[h7n]}},cyr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Wga("maxRedirections must be a positive number");x8.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,x8.isStream(this.opts.body)?(x8.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){lyr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[hYe]=!1,Oga.prototype.on.call(this.opts.body,"data",function(){this[hYe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new vht(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&x8.isIterable(this.opts.body)&&(this.opts.body=new vht(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||x8.isDisturbed(this.opts.body)?null:Hga(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=x8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=Yga(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Hga(e,t){if(Mga.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var Qga=Bht();function Xga({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new Qga(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}_7n.exports=Xga});var SYe=H((vou,N7n)=>{"use strict";var H$=wt("node:assert"),B7n=wt("node:net"),Jga=wt("node:http"),ohe=Em(),{channels:Twe}=gwe(),Uga=Vjn(),Kga=fwe(),{InvalidArgumentError:tw,InformationalError:jga,ClientDestroyedError:zga}=Y0(),qga=nYe(),{kUrl:G8,kServerName:aae,kClient:$ga,kBusy:uyr,kConnect:eAa,kResuming:ahe,kRunning:bYe,kPending:EYe,kSize:yYe,kQueue:FX,kConnected:tAa,kConnecting:Rwe,kNeedDrain:lae,kKeepAliveDefaultTimeout:y7n,kHostHeader:rAa,kPendingIdx:ZX,kRunningIdx:Y$,kError:nAa,kPipelining:Tht,kKeepAliveTimeoutValue:iAa,kMaxHeadersSize:sAa,kKeepAliveMaxTimeout:oAa,kKeepAliveTimeoutThreshold:aAa,kHeadersTimeout:cAa,kBodyTimeout:lAa,kStrictContentLength:uAa,kConnector:mYe,kMaxRedirections:gAa,kMaxRequests:gyr,kCounter:AAa,kClose:dAa,kDestroy:pAa,kDispatch:fAa,kInterceptors:b7n,kLocalAddress:CYe,kMaxResponseSize:IAa,kOnError:hAa,kHTTPContext:rw,kMaxConcurrentStreams:mAa,kResume:_Ye}=B2(),CAa=l7n(),_Aa=I7n(),E7n=!1,cae=Symbol("kClosedResolve"),S7n=()=>{};function w7n(e){return e[Tht]??e[rw]?.defaultPipelining??1}var Ayr=class extends Kga{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:X,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:k,allowH2:et}={}){if(super(),C!==void 0)throw new tw("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new tw("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new tw("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new tw("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new tw("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new tw("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new tw("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new tw("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new tw("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new tw("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new tw("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new tw("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new tw("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new tw("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new tw("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new tw("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||B7n.isIP(de)===0))throw new tw("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new tw("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new tw("autoSelectFamilyAttemptTimeout must be a positive number");if(et!=null&&typeof et!="boolean")throw new tw("allowH2 must be a valid boolean value");if(k!=null&&(typeof k!="number"||k<1))throw new tw("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=qga({...X,maxCachedSessions:ne,allowH2:et,socketPath:F,timeout:A,...Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[b7n]=r.Client,E7n||(E7n=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[b7n]=[yAa({maxRedirections:ce})],this[G8]=ohe.parseOrigin(t),this[mYe]=fe,this[Tht]=Q??1,this[sAa]=n||Jga.maxHeaderSize,this[y7n]=b??4e3,this[oAa]=N??6e5,this[aAa]=B??2e3,this[iAa]=this[y7n],this[aae]=null,this[CYe]=de??null,this[ahe]=0,this[lae]=0,this[rAa]=`host: ${this[G8].hostname}${this[G8].port?`:${this[G8].port}`:""}\r -`,this[lAa]=f??3e5,this[cAa]=a??3e5,this[uAa]=ae??!0,this[gAa]=ce,this[gyr]=ue,this[cae]=null,this[IAa]=be>-1?be:-1,this[mAa]=k??100,this[rw]=null,this[FX]=[],this[Y$]=0,this[ZX]=0,this[_Ye]=ct=>dyr(this,ct),this[hAa]=ct=>T7n(this,ct)}get pipelining(){return this[Tht]}set pipelining(t){this[Tht]=t,this[_Ye](!0)}get[EYe](){return this[FX].length-this[ZX]}get[bYe](){return this[ZX]-this[Y$]}get[yYe](){return this[FX].length-this[Y$]}get[tAa](){return!!this[rw]&&!this[Rwe]&&!this[rw].destroyed}get[uyr](){return!!(this[rw]?.busy(null)||this[yYe]>=(w7n(this)||1)||this[EYe]>0)}[eAa](t){R7n(this),this.once("connect",t)}[fAa](t,r){let n=t.origin||this[G8].origin,a=new Uga(n,t,r);return this[FX].push(a),this[ahe]||(ohe.bodyLength(a.body)==null&&ohe.isIterable(a.body)?(this[ahe]=1,queueMicrotask(()=>dyr(this))):this[_Ye](!0)),this[ahe]&&this[lae]!==2&&this[uyr]&&(this[lae]=2),this[lae]<2}async[dAa](){return new Promise(t=>{this[yYe]?this[cae]=t:t(null)})}async[pAa](t){return new Promise(r=>{let n=this[FX].splice(this[ZX]);for(let o=0;o{this[cae]&&(this[cae](),this[cae]=null),r(null)};this[rw]?(this[rw].destroy(t,a),this[rw]=null):queueMicrotask(a),this[_Ye]()})}},yAa=wht();function T7n(e,t){if(e[bYe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){H$(e[ZX]===e[Y$]);let r=e[FX].splice(e[Y$]);for(let n=0;n{e[mYe]({host:t,hostname:r,protocol:n,port:a,servername:e[aae],localAddress:e[CYe]},(f,I)=>{f?A(f):l(I)})});if(e.destroyed){ohe.destroy(o.on("error",S7n),new zga);return}H$(o);try{e[rw]=o.alpnProtocol==="h2"?await _Aa(e,o):await CAa(e,o)}catch(l){throw o.destroy().on("error",S7n),l}e[Rwe]=!1,o[AAa]=0,o[gyr]=e[gyr],o[$ga]=e,o[nAa]=null,Twe.connected.hasSubscribers&&Twe.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[rw]?.version,servername:e[aae],localAddress:e[CYe]},connector:e[mYe],socket:o}),e.emit("connect",e[G8],[e])}catch(o){if(e.destroyed)return;if(e[Rwe]=!1,Twe.connectError.hasSubscribers&&Twe.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[rw]?.version,servername:e[aae],localAddress:e[CYe]},connector:e[mYe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(H$(e[bYe]===0);e[EYe]>0&&e[FX][e[ZX]].servername===e[aae];){let l=e[FX][e[ZX]++];ohe.errorRequest(e,l,o)}else T7n(e,o);e.emit("connectionError",e[G8],[e],o)}e[_Ye]()}function v7n(e){e[lae]=0,e.emit("drain",e[G8],[e])}function dyr(e,t){e[ahe]!==2&&(e[ahe]=2,bAa(e,t),e[ahe]=0,e[Y$]>256&&(e[FX].splice(0,e[Y$]),e[ZX]-=e[Y$],e[Y$]=0))}function bAa(e,t){for(;;){if(e.destroyed){H$(e[EYe]===0);return}if(e[cae]&&!e[yYe]){e[cae](),e[cae]=null;return}if(e[rw]&&e[rw].resume(),e[uyr])e[lae]=2;else if(e[lae]===2){t?(e[lae]=1,queueMicrotask(()=>v7n(e))):v7n(e);continue}if(e[EYe]===0||e[bYe]>=(w7n(e)||1))return;let r=e[FX][e[ZX]];if(e[G8].protocol==="https:"&&e[aae]!==r.servername){if(e[bYe]>0)return;e[aae]=r.servername,e[rw]?.destroy(new jga("servername changed"),()=>{e[rw]=null,dyr(e)})}if(e[Rwe])return;if(!e[rw]){R7n(e);return}if(e[rw].destroyed||e[rw].busy(r))return;!r.aborted&&e[rw].write(r)?e[ZX]++:e[FX].splice(e[ZX],1)}}N7n.exports=Ayr});var pyr=H((wou,D7n)=>{"use strict";var Rht=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};D7n.exports=class{constructor(){this.head=this.tail=new Rht}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Rht),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var x7n=H((Tou,k7n)=>{var{kFree:EAa,kConnected:SAa,kPending:vAa,kQueued:BAa,kRunning:wAa,kSize:TAa}=B2(),che=Symbol("pool"),fyr=class{constructor(t){this[che]=t}get connected(){return this[che][SAa]}get free(){return this[che][EAa]}get pending(){return this[che][vAa]}get queued(){return this[che][BAa]}get running(){return this[che][wAa]}get size(){return this[che][TAa]}};k7n.exports=fyr});var yyr=H((Rou,H7n)=>{"use strict";var RAa=fwe(),NAa=pyr(),{kConnected:Iyr,kSize:G7n,kRunning:F7n,kPending:Z7n,kQueued:vYe,kBusy:DAa,kFree:kAa,kUrl:xAa,kClose:GAa,kDestroy:FAa,kDispatch:ZAa}=B2(),LAa=x7n(),rV=Symbol("clients"),OZ=Symbol("needDrain"),BYe=Symbol("queue"),hyr=Symbol("closed resolve"),myr=Symbol("onDrain"),L7n=Symbol("onConnect"),V7n=Symbol("onDisconnect"),P7n=Symbol("onConnectionError"),Cyr=Symbol("get dispatcher"),O7n=Symbol("add client"),M7n=Symbol("remove client"),W7n=Symbol("stats"),_yr=class extends RAa{constructor(){super(),this[BYe]=new NAa,this[rV]=[],this[vYe]=0;let t=this;this[myr]=function(n,a){let o=t[BYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[vYe]--,l=!this.dispatch(A.opts,A.handler)}this[OZ]=l,!this[OZ]&&t[OZ]&&(t[OZ]=!1,t.emit("drain",n,[t,...a])),t[hyr]&&o.isEmpty()&&Promise.all(t[rV].map(A=>A.close())).then(t[hyr])},this[L7n]=(r,n)=>{t.emit("connect",r,[t,...n])},this[V7n]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[P7n]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[W7n]=new LAa(this)}get[DAa](){return this[OZ]}get[Iyr](){return this[rV].filter(t=>t[Iyr]).length}get[kAa](){return this[rV].filter(t=>t[Iyr]&&!t[OZ]).length}get[Z7n](){let t=this[vYe];for(let{[Z7n]:r}of this[rV])t+=r;return t}get[F7n](){let t=0;for(let{[F7n]:r}of this[rV])t+=r;return t}get[G7n](){let t=this[vYe];for(let{[G7n]:r}of this[rV])t+=r;return t}get stats(){return this[W7n]}async[GAa](){this[BYe].isEmpty()?await Promise.all(this[rV].map(t=>t.close())):await new Promise(t=>{this[hyr]=t})}async[FAa](t){for(;;){let r=this[BYe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[rV].map(r=>r.destroy(t)))}[ZAa](t,r){let n=this[Cyr]();return n?n.dispatch(t,r)||(n[OZ]=!0,this[OZ]=!this[Cyr]()):(this[OZ]=!0,this[BYe].push({opts:t,handler:r}),this[vYe]++),!this[OZ]}[O7n](t){return t.on("drain",this[myr]).on("connect",this[L7n]).on("disconnect",this[V7n]).on("connectionError",this[P7n]),this[rV].push(t),this[OZ]&&queueMicrotask(()=>{this[OZ]&&this[myr](t[xAa],[this,t])}),this}[M7n](t){t.close(()=>{let r=this[rV].indexOf(t);r!==-1&&this[rV].splice(r,1)}),this[OZ]=this[rV].some(r=>!r[OZ]&&r.closed!==!0&&r.destroyed!==!0)}};H7n.exports={PoolBase:_yr,kClients:rV,kNeedDrain:OZ,kAddClient:O7n,kRemoveClient:M7n,kGetDispatcher:Cyr}});var Nwe=H((Nou,U7n)=>{"use strict";var{PoolBase:VAa,kClients:Y7n,kNeedDrain:PAa,kAddClient:WAa,kGetDispatcher:OAa}=yyr(),MAa=SYe(),{InvalidArgumentError:byr}=Y0(),Q7n=Em(),{kUrl:X7n,kInterceptors:HAa}=B2(),YAa=nYe(),Eyr=Symbol("options"),Syr=Symbol("connections"),J7n=Symbol("factory");function QAa(e,t){return new MAa(e,t)}var vyr=class extends VAa{constructor(t,{connections:r,factory:n=QAa,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new byr("invalid connections");if(typeof n!="function")throw new byr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new byr("connect must be a function or an object");typeof a!="function"&&(a=YAa({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[HAa]=E.interceptors?.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[Syr]=r||null,this[X7n]=Q7n.parseOrigin(t),this[Eyr]={...Q7n.deepClone(E),connect:a,allowH2:b},this[Eyr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[J7n]=n}[OAa](){for(let t of this[Y7n])if(!t[PAa])return t;if(!this[Syr]||this[Y7n].length{"use strict";var{BalancedPoolMissingUpstreamError:XAa,InvalidArgumentError:JAa}=Y0(),{PoolBase:UAa,kClients:SG,kNeedDrain:wYe,kAddClient:KAa,kRemoveClient:jAa,kGetDispatcher:zAa}=yyr(),qAa=Nwe(),{kUrl:Byr,kInterceptors:$Aa}=B2(),{parseOrigin:K7n}=Em(),j7n=Symbol("factory"),Nht=Symbol("options"),z7n=Symbol("kGreatestCommonDivisor"),lhe=Symbol("kCurrentWeight"),uhe=Symbol("kIndex"),GM=Symbol("kWeight"),Dht=Symbol("kMaxWeightPerServer"),kht=Symbol("kErrorPenalty");function eda(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function tda(e,t){return new qAa(e,t)}var wyr=class extends UAa{constructor(t=[],{factory:r=tda,...n}={}){if(super(),this[Nht]=n,this[uhe]=-1,this[lhe]=0,this[Dht]=this[Nht].maxWeightPerServer||100,this[kht]=this[Nht].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new JAa("factory must be a function.");this[$Aa]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[j7n]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=K7n(t).origin;if(this[SG].find(a=>a[Byr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[j7n](r,Object.assign({},this[Nht]));this[KAa](n),n.on("connect",()=>{n[GM]=Math.min(this[Dht],n[GM]+this[kht])}),n.on("connectionError",()=>{n[GM]=Math.max(1,n[GM]-this[kht]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[GM]=Math.max(1,n[GM]-this[kht]),this._updateBalancedPoolStats())});for(let a of this[SG])a[GM]=this[Dht];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[Byr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[jAa](n),this}get upstreams(){return this[SG].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[Byr].origin)}[zAa](){if(this[SG].length===0)throw new XAa;if(!this[SG].find(o=>!o[wYe]&&o.closed!==!0&&o.destroyed!==!0)||this[SG].map(o=>o[wYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[SG].findIndex(o=>!o[wYe]);for(;n++this[SG][a][GM]&&!o[wYe]&&(a=this[uhe]),this[uhe]===0&&(this[lhe]=this[lhe]-this[z7n],this[lhe]<=0&&(this[lhe]=this[Dht])),o[GM]>=this[lhe]&&!o[wYe])return o}return this[lhe]=this[SG][a][GM],this[uhe]=a,this[SG][a]}};q7n.exports=wyr});var Dwe=H((kou,ozn)=>{"use strict";var{InvalidArgumentError:xht}=Y0(),{kClients:uae,kRunning:ezn,kClose:rda,kDestroy:nda,kDispatch:ida,kInterceptors:sda}=B2(),oda=fwe(),ada=Nwe(),cda=SYe(),lda=Em(),uda=wht(),tzn=Symbol("onConnect"),rzn=Symbol("onDisconnect"),nzn=Symbol("onConnectionError"),gda=Symbol("maxRedirections"),izn=Symbol("onDrain"),szn=Symbol("factory"),Tyr=Symbol("options");function Ada(e,t){return t&&t.connections===1?new cda(e,t):new ada(e,t)}var Ryr=class extends oda{constructor({factory:t=Ada,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new xht("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new xht("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new xht("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[sda]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[uda({maxRedirections:r})],this[Tyr]={...lda.deepClone(a),connect:n},this[Tyr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[gda]=r,this[szn]=t,this[uae]=new Map,this[izn]=(o,l)=>{this.emit("drain",o,[this,...l])},this[tzn]=(o,l)=>{this.emit("connect",o,[this,...l])},this[rzn]=(o,l,A)=>{this.emit("disconnect",o,[this,...l],A)},this[nzn]=(o,l,A)=>{this.emit("connectionError",o,[this,...l],A)}}get[ezn](){let t=0;for(let r of this[uae].values())t+=r[ezn];return t}[ida](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new xht("opts.origin must be a non-empty string or URL.");let a=this[uae].get(n);return a||(a=this[szn](t.origin,this[Tyr]).on("drain",this[izn]).on("connect",this[tzn]).on("disconnect",this[rzn]).on("connectionError",this[nzn]),this[uae].set(n,a)),a.dispatch(t,r)}async[rda](){let t=[];for(let r of this[uae].values())t.push(r.close());this[uae].clear(),await Promise.all(t)}async[nda](t){let r=[];for(let n of this[uae].values())r.push(n.destroy(t));this[uae].clear(),await Promise.all(r)}};ozn.exports=Ryr});var kyr=H((xou,uzn)=>{"use strict";var{kProxy:dda,kClose:pda,kDestroy:fda,kInterceptors:Ida}=B2(),{URL:TYe}=wt("node:url"),hda=Dwe(),mda=Nwe(),Cda=fwe(),{InvalidArgumentError:Zht,RequestAbortedError:_da,SecureProxyConnectionError:yda}=Y0(),azn=nYe(),Ght=Symbol("proxy agent"),Fht=Symbol("proxy client"),RYe=Symbol("proxy headers"),Nyr=Symbol("request tls settings"),czn=Symbol("proxy tls settings"),lzn=Symbol("connect endpoint function");function bda(e){return e==="https:"?443:80}function Eda(e,t){return new mda(e,t)}var Sda=()=>{},Dyr=class extends Cda{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof TYe)&&!t.uri)throw new Zht("Proxy uri is mandatory");let{clientFactory:r=Eda}=t;if(typeof r!="function")throw new Zht("Proxy opts.clientFactory must be a function.");let n=this.#e(t),{href:a,origin:o,port:l,protocol:A,username:f,password:I,hostname:C}=n;if(this[dda]={uri:a,protocol:A},this[Ida]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[Nyr]=t.requestTls,this[czn]=t.proxyTls,this[RYe]=t.headers||{},t.auth&&t.token)throw new Zht("opts.auth cannot be used in combination with opts.token");t.auth?this[RYe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[RYe]["proxy-authorization"]=t.token:f&&I&&(this[RYe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(I)}`).toString("base64")}`);let b=azn({...t.proxyTls});this[lzn]=azn({...t.requestTls}),this[Fht]=r(n,{connect:b}),this[Ght]=new hda({...t,connect:async(E,N)=>{let B=E.host;E.port||(B+=`:${bda(E.protocol)}`);try{let{socket:F,statusCode:Q}=await this[Fht].connect({origin:o,port:l,path:B,signal:E.signal,headers:{...this[RYe],host:E.host},servername:this[czn]?.servername||C});if(Q!==200&&(F.on("error",Sda).destroy(),N(new _da(`Proxy response (${Q}) !== 200 when HTTP Tunneling`))),E.protocol!=="https:"){N(null,F);return}let X;this[Nyr]?X=this[Nyr].servername:X=E.servername,this[lzn]({...E,servername:X,httpSocket:F},N)}catch(F){F.code==="ERR_TLS_CERT_ALTNAME_INVALID"?N(new yda(F)):N(F)}}})}dispatch(t,r){let n=vda(t.headers);if(Bda(n),n&&!("host"in n)&&!("Host"in n)){let{host:a}=new TYe(t.origin);n.host=a}return this[Ght].dispatch({...t,headers:n},r)}#e(t){return typeof t=="string"?new TYe(t):t instanceof TYe?t:new TYe(t.uri)}async[pda](){await this[Ght].close(),await this[Fht].close()}async[fda](){await this[Ght].destroy(),await this[Fht].destroy()}};function vda(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new Zht("Proxy-Authorization should be sent in ProxyAgent constructor")}uzn.exports=Dyr});var Izn=H((Gou,fzn)=>{"use strict";var wda=fwe(),{kClose:Tda,kDestroy:Rda,kClosed:gzn,kDestroyed:Azn,kDispatch:Nda,kNoProxyAgent:NYe,kHttpProxyAgent:gae,kHttpsProxyAgent:ghe}=B2(),dzn=kyr(),Dda=Dwe(),kda={"http:":80,"https:":443},pzn=!1,xyr=class extends wda{#e=null;#t=null;#n=null;constructor(t={}){super(),this.#n=t,pzn||(pzn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:a,...o}=t;this[NYe]=new Dda(o);let l=r??process.env.http_proxy??process.env.HTTP_PROXY;l?this[gae]=new dzn({...o,uri:l}):this[gae]=this[NYe];let A=n??process.env.https_proxy??process.env.HTTPS_PROXY;A?this[ghe]=new dzn({...o,uri:A}):this[ghe]=this[gae],this.#s()}[Nda](t,r){let n=new URL(t.origin);return this.#r(n).dispatch(t,r)}async[Tda](){await this[NYe].close(),this[gae][gzn]||await this[gae].close(),this[ghe][gzn]||await this[ghe].close()}async[Rda](t){await this[NYe].destroy(t),this[gae][Azn]||await this[gae].destroy(t),this[ghe][Azn]||await this[ghe].destroy(t)}#r(t){let{protocol:r,host:n,port:a}=t;return n=n.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||kda[r]||0,this.#i(n,a)?r==="https:"?this[ghe]:this[gae]:this[NYe]}#i(t,r){if(this.#o&&this.#s(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var kwe=wt("node:assert"),{kRetryHandlerDefaultRetry:hzn}=B2(),{RequestRetryError:DYe}=Y0(),{isDisturbed:mzn,parseHeaders:xda,parseRangeHeader:Czn,wrapRequestBody:Gda}=Em();function Fda(e){let t=Date.now();return new Date(e).getTime()-t}var Gyr=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:Gda(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[hzn],retryAfter:E??!0,maxTimeout:A??30*1e3,minTimeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[hzn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,minTimeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:X}=r;if(l&&l!=="UND_ERR_REQ_RETRY"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(X>C){a(t);return}let ae=A?.["retry-after"];ae&&(ae=Number(ae),ae=Number.isNaN(ae)?Fda(ae):ae*1e3);let ne=ae>0?Math.min(ae,E):Math.min(b*N**(X-1),E);setTimeout(()=>a(null),ne)}onHeaders(t,r,n,a){let o=xda(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,n,a):(this.abort(new DYe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new DYe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let A=Czn(o["content-range"]);if(!A)return this.abort(new DYe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new DYe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:I,end:C=I}=A;return kwe(this.start===f,"content-range mismatch"),kwe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=Czn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;kwe(f!=null&&Number.isFinite(f),"content-range mismatch"),kwe(C!=null&&Number.isFinite(C),"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return kwe(Number.isFinite(this.start)),kwe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,n,a)}let l=new DYe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||mzn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||mzn(this.opts.body))return this.handler.onError(n);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};_zn.exports=Gyr});var bzn=H((Zou,yzn)=>{"use strict";var Zda=tYe(),Lda=Lht(),Fyr=class extends Zda{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let n=new Lda({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};yzn.exports=Fyr});var Oyr=H((Lou,Dzn)=>{"use strict";var wzn=wt("node:assert"),{Readable:Vda}=wt("node:stream"),{RequestAbortedError:Tzn,NotSupportedError:Pda,InvalidArgumentError:Wda,AbortError:Zyr}=Y0(),Rzn=Em(),{ReadableStreamFrom:Oda}=Em(),$W=Symbol("kConsume"),kYe=Symbol("kReading"),Aae=Symbol("kBody"),Ezn=Symbol("kAbort"),Nzn=Symbol("kContentType"),Szn=Symbol("kContentLength"),Mda=()=>{},Lyr=class extends Vda{constructor({resume:t,abort:r,contentType:n="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[Ezn]=r,this[$W]=null,this[Aae]=null,this[Nzn]=n,this[Szn]=a,this[kYe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new Tzn),t&&this[Ezn](),super.destroy(t)}_destroy(t,r){this[kYe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[kYe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[kYe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[$W]&&t!==null?(Pyr(this[$W],t),this[kYe]?super.push(t):!0):super.push(t)}async text(){return xYe(this,"text")}async json(){return xYe(this,"json")}async blob(){return xYe(this,"blob")}async bytes(){return xYe(this,"bytes")}async arrayBuffer(){return xYe(this,"arrayBuffer")}async formData(){throw new Pda}get bodyUsed(){return Rzn.isDisturbed(this)}get body(){return this[Aae]||(this[Aae]=Oda(this),this[$W]&&(this[Aae].getReader(),wzn(this[Aae].locked))),this[Aae]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,n=t?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new Wda("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[Szn]>r&&this.destroy(new Zyr);let l=()=>{this.destroy(n.reason??new Zyr)};n?.addEventListener("abort",l),this.on("close",function(){n?.removeEventListener("abort",l),n?.aborted?o(n.reason??new Zyr):a(null)}).on("error",Mda).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Hda(e){return e[Aae]&&e[Aae].locked===!0||e[$W]}function Yda(e){return Rzn.isDisturbed(e)||Hda(e)}async function xYe(e,t){return wzn(!e[$W]),new Promise((r,n)=>{if(Yda(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[$W]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){Wyr(this[$W],a)}).on("close",function(){this[$W].body!==null&&Wyr(this[$W],new Tzn)}),Qda(e[$W])})})}function Qda(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,n=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,n)}function vzn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),n=0;for(let a=0;a{var Xda=wt("node:assert"),{ResponseStatusCodeError:kzn}=Y0(),{chunksDecode:xzn}=Oyr(),Jda=128*1024;async function Uda({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Xda(t);let l=[],A=0;try{for await(let b of t)if(l.push(b),A+=b.length,A>Jda){l=[],A=0;break}}catch{l=[],A=0}let f=`Response status code ${n}${a?`: ${a}`:""}`;if(n===204||!r||!A){queueMicrotask(()=>e(new kzn(f,n,o)));return}let I=Error.stackTraceLimit;Error.stackTraceLimit=0;let C;try{Gzn(r)?C=JSON.parse(xzn(l,A)):Fzn(r)&&(C=xzn(l,A))}catch{}finally{Error.stackTraceLimit=I}queueMicrotask(()=>e(new kzn(f,n,o,C)))}var Gzn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",Fzn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";Zzn.exports={getResolveErrorBodyCallback:Uda,isContentTypeApplicationJson:Gzn,isContentTypeText:Fzn}});var Pzn=H((Pou,Hyr)=>{"use strict";var Kda=wt("node:assert"),{Readable:jda}=Oyr(),{InvalidArgumentError:xwe,RequestAbortedError:Lzn}=Y0(),FM=Em(),{getResolveErrorBodyCallback:zda}=Myr(),{AsyncResource:qda}=wt("node:async_hooks"),Vht=class extends qda{constructor(t,r){if(!t||typeof t!="object")throw new xwe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new xwe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new xwe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new xwe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new xwe("invalid method");if(A&&typeof A!="function")throw new xwe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw FM.isStream(l)&&FM.destroy(l.on("error",FM.nop),b),b}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,this.signal=n,this.reason=null,this.removeAbortListener=null,FM.isStream(l)&&l.on("error",b=>{this.onError(b)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new Lzn:this.removeAbortListener=FM.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new Lzn,this.res?FM.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}Kda(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?FM.parseRawHeaders(r):FM.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let E=I==="raw"?FM.parseHeaders(r):b,N=E["content-type"],B=E["content-length"],F=new jda({resume:n,abort:A,contentType:N,contentLength:this.method!=="HEAD"&&B?Number(B):null,highWaterMark:C});this.removeAbortListener&&F.on("close",this.removeAbortListener),this.callback=null,this.res=F,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(zda,null,{callback:o,body:F,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:F,context:f}))}onData(t){return this.res.push(t)}onComplete(t){FM.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{FM.destroy(r,t)})),a&&(this.body=null,FM.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function Vzn(e,t){if(t===void 0)return new Promise((r,n)=>{Vzn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new Vht(e,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}Hyr.exports=Vzn;Hyr.exports.RequestHandler=Vht});var GYe=H((Wou,Mzn)=>{var{addAbortListener:$da}=Em(),{RequestAbortedError:epa}=Y0(),Gwe=Symbol("kListener"),F8=Symbol("kSignal");function Wzn(e){e.abort?e.abort(e[F8]?.reason):e.reason=e[F8]?.reason??new epa,Ozn(e)}function tpa(e,t){if(e.reason=null,e[F8]=null,e[Gwe]=null,!!t){if(t.aborted){Wzn(e);return}e[F8]=t,e[Gwe]=()=>{Wzn(e)},$da(e[F8],e[Gwe])}}function Ozn(e){e[F8]&&("removeEventListener"in e[F8]?e[F8].removeEventListener("abort",e[Gwe]):e[F8].removeListener("abort",e[Gwe]),e[F8]=null,e[Gwe]=null)}Mzn.exports={addSignal:tpa,removeSignal:Ozn}});var Xzn=H((Oou,Qzn)=>{"use strict";var rpa=wt("node:assert"),{finished:npa,PassThrough:ipa}=wt("node:stream"),{InvalidArgumentError:Fwe,InvalidReturnValueError:spa}=Y0(),LX=Em(),{getResolveErrorBodyCallback:opa}=Myr(),{AsyncResource:apa}=wt("node:async_hooks"),{addSignal:cpa,removeSignal:Hzn}=GYe(),Yyr=class extends apa{constructor(t,r,n){if(!t||typeof t!="object")throw new Fwe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new Fwe("invalid callback");if(typeof r!="function")throw new Fwe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new Fwe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new Fwe("invalid method");if(f&&typeof f!="function")throw new Fwe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw LX.isStream(A)&&LX.destroy(A.on("error",LX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,LX.isStream(A)&&A.on("error",b=>{this.onError(b)}),cpa(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}rpa(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?LX.parseRawHeaders(r):LX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?LX.parseHeaders(r):C)["content-type"];b=new ipa,this.callback=null,this.runInAsyncScope(opa,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new spa("expected Writable");npa(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:X,abort:ae}=this;this.res=null,(N||!F.readable)&&LX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:X}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;Hzn(this),r&&(this.trailers=LX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;Hzn(this),this.factory=null,r?(this.res=null,LX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,LX.destroy(o,t))}};function Yzn(e,t,r){if(r===void 0)return new Promise((n,a)=>{Yzn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new Yyr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e?.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}Qzn.exports=Yzn});var jzn=H((Mou,Kzn)=>{"use strict";var{Readable:Uzn,Duplex:lpa,PassThrough:upa}=wt("node:stream"),{InvalidArgumentError:FYe,InvalidReturnValueError:gpa,RequestAbortedError:Qyr}=Y0(),ZM=Em(),{AsyncResource:Apa}=wt("node:async_hooks"),{addSignal:dpa,removeSignal:ppa}=GYe(),Jzn=wt("node:assert"),Zwe=Symbol("resume"),Xyr=class extends Uzn{constructor(){super({autoDestroy:!0}),this[Zwe]=null}_read(){let{[Zwe]:t}=this;t&&(this[Zwe]=null,t())}_destroy(t,r){this._read(),r(t)}},Jyr=class extends Uzn{constructor(t){super({autoDestroy:!0}),this[Zwe]=t}_read(){this[Zwe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Qyr),r(t)}},Uyr=class extends Apa{constructor(t,r){if(!t||typeof t!="object")throw new FYe("invalid opts");if(typeof r!="function")throw new FYe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new FYe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new FYe("invalid method");if(l&&typeof l!="function")throw new FYe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new Xyr().on("error",ZM.nop),this.ret=new lpa({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[Zwe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new Qyr),B&&f&&B(),ZM.destroy(C,f),ZM.destroy(b,f),ZM.destroy(E,f),ppa(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,dpa(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(this.reason){t(this.reason);return}Jzn(!a,"pipeline cannot be retried"),Jzn(!n.destroyed),this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?ZM.parseRawHeaders(r):ZM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new Jyr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?ZM.parseRawHeaders(r):ZM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",ZM.nop),f}if(!A||typeof A.on!="function")throw new gpa("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;ZM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||ZM.destroy(f,new Qyr)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,ZM.destroy(r,t)}};function fpa(e,t){try{let r=new Uyr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new upa().destroy(r)}}Kzn.exports=fpa});var rqn=H((Hou,tqn)=>{"use strict";var{InvalidArgumentError:Kyr,SocketError:Ipa}=Y0(),{AsyncResource:hpa}=wt("node:async_hooks"),zzn=Em(),{addSignal:mpa,removeSignal:qzn}=GYe(),$zn=wt("node:assert"),jyr=class extends hpa{constructor(t,r){if(!t||typeof t!="object")throw new Kyr("invalid opts");if(typeof r!="function")throw new Kyr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Kyr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,mpa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}$zn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new Ipa("bad upgrade",null)}onUpgrade(t,r,n){$zn(t===101);let{callback:a,opaque:o,context:l}=this;qzn(this),this.callback=null;let A=this.responseHeaders==="raw"?zzn.parseRawHeaders(r):zzn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;qzn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function eqn(e,t){if(t===void 0)return new Promise((r,n)=>{eqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new jyr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}tqn.exports=eqn});var aqn=H((You,oqn)=>{"use strict";var Cpa=wt("node:assert"),{AsyncResource:_pa}=wt("node:async_hooks"),{InvalidArgumentError:zyr,SocketError:ypa}=Y0(),nqn=Em(),{addSignal:bpa,removeSignal:iqn}=GYe(),qyr=class extends _pa{constructor(t,r){if(!t||typeof t!="object")throw new zyr("invalid opts");if(typeof r!="function")throw new zyr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new zyr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,bpa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}Cpa(this.callback),this.abort=t,this.context=r}onHeaders(){throw new ypa("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;iqn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?nqn.parseRawHeaders(r):nqn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;iqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function sqn(e,t){if(t===void 0)return new Promise((r,n)=>{sqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new qyr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}oqn.exports=sqn});var cqn=H((Qou,Lwe)=>{"use strict";Lwe.exports.request=Pzn();Lwe.exports.stream=Xzn();Lwe.exports.pipeline=jzn();Lwe.exports.upgrade=rqn();Lwe.exports.connect=aqn()});var ebr=H((Xou,lqn)=>{"use strict";var{UndiciError:Epa}=Y0(),$yr=class e extends Epa{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};lqn.exports={MockNotMatchedError:$yr}});var Vwe=H((Jou,uqn)=>{"use strict";uqn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var ZYe=H((Uou,yqn)=>{"use strict";var{MockNotMatchedError:Ahe}=ebr(),{kDispatches:Pht,kMockAgent:Spa,kOriginalDispatch:vpa,kOrigin:Bpa,kGetNetConnect:wpa}=Vwe(),{buildURL:Tpa}=Em(),{STATUS_CODES:Rpa}=wt("node:http"),{types:{isPromise:Npa}}=wt("node:util");function Q$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function Aqn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function dqn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=dqn(t,r);if(!Q$(n,a))return!1}return!0}function gqn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Dpa(e,{path:t,method:r,body:n,headers:a}){let o=Q$(e.path,t),l=Q$(e.method,r),A=typeof e.body<"u"?Q$(e.body,n):!0,f=pqn(e,a);return o&&l&&A&&f}function fqn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function Iqn(e,t){let r=t.query?Tpa(t.path,t.query):t.path,n=typeof r=="string"?gqn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>Q$(gqn(o),n));if(a.length===0)throw new Ahe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>Q$(o,t.method)),a.length===0)throw new Ahe(`Mock dispatch not matched for method '${t.method}' on path '${n}'`);if(a=a.filter(({body:o})=>typeof o<"u"?Q$(o,t.body):!0),a.length===0)throw new Ahe(`Mock dispatch not matched for body '${t.body}' on path '${n}'`);if(a=a.filter(o=>pqn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new Ahe(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return a[0]}function kpa(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function tbr(e,t){let r=e.findIndex(n=>n.consumed?Dpa(n,t):!1);r!==-1&&e.splice(r,1)}function hqn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function rbr(e){let t=Object.keys(e),r=[];for(let n=0;n=E,n.pending=b0?setTimeout(()=>{N(this[Pht])},I):N(this[Pht]);function N(F,Q=o){let X=Array.isArray(e.headers)?nbr(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:X}):Q;if(Npa(ae)){ae.then(ue=>N(F,ue));return}let ne=fqn(ae),ce=rbr(l),fe=rbr(A);t.onConnect?.(ue=>t.onError(ue),null),t.onHeaders?.(a,ce,B,mqn(a)),t.onData?.(Buffer.from(ne)),t.onComplete?.(fe),tbr(F,r)}function B(){}return!0}function Gpa(){let e=this[Spa],t=this[Bpa],r=this[vpa];return function(a,o){if(e.isMockActive)try{Cqn.call(this,a,o)}catch(l){if(l instanceof Ahe){let A=e[wpa]();if(A===!1)throw new Ahe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(_qn(A,t))r.call(this,a,o);else throw new Ahe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function _qn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>Q$(n,r.host)))}function Fpa(e){if(e){let{agent:t,...r}=e;return r}}yqn.exports={getResponseData:fqn,getMockDispatch:Iqn,addMockDispatch:kpa,deleteMockDispatch:tbr,buildKey:hqn,generateKeyValues:rbr,matchValue:Q$,getResponse:xpa,getStatusText:mqn,mockDispatch:Cqn,buildMockDispatch:Gpa,checkNetConnect:_qn,buildMockOptions:Fpa,getHeaderByName:dqn,buildHeadersFromArray:nbr}});var ubr=H((Kou,lbr)=>{"use strict";var{getResponseData:Zpa,buildKey:Lpa,addMockDispatch:ibr}=ZYe(),{kDispatches:Wht,kDispatchKey:Oht,kDefaultHeaders:sbr,kDefaultTrailers:obr,kContentLength:abr,kMockDispatch:Mht}=Vwe(),{InvalidArgumentError:Z8}=Y0(),{buildURL:Vpa}=Em(),Pwe=class{constructor(t){this[Mht]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new Z8("waitInMs must be a valid integer > 0");return this[Mht].delay=t,this}persist(){return this[Mht].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new Z8("repeatTimes must be a valid integer > 0");return this[Mht].times=t,this}},cbr=class{constructor(t,r){if(typeof t!="object")throw new Z8("opts must be an object");if(typeof t.path>"u")throw new Z8("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Vpa(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Oht]=Lpa(t),this[Wht]=r,this[sbr]={},this[obr]={},this[abr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:n}){let a=Zpa(r),o=this[abr]?{"content-length":a.length}:{},l={...this[sbr],...o,...n.headers},A={...this[obr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new Z8("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new Z8("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=A=>{let f=t(A);if(typeof f!="object"||f===null)throw new Z8("reply options callback must return an object");let I={data:"",responseOptions:{},...f};return this.validateReplyParameters(I),{...this.createMockScopeDispatchData(I)}},l=ibr(this[Wht],this[Oht],o);return new Pwe(l)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),a=ibr(this[Wht],this[Oht],n);return new Pwe(a)}replyWithError(t){if(typeof t>"u")throw new Z8("error must be defined");let r=ibr(this[Wht],this[Oht],{error:t});return new Pwe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new Z8("headers must be defined");return this[sbr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new Z8("trailers must be defined");return this[obr]=t,this}replyContentLength(){return this[abr]=!0,this}};lbr.exports.MockInterceptor=cbr;lbr.exports.MockScope=Pwe});var dbr=H((jou,Tqn)=>{"use strict";var{promisify:Ppa}=wt("node:util"),Wpa=SYe(),{buildMockDispatch:Opa}=ZYe(),{kDispatches:bqn,kMockAgent:Eqn,kClose:Sqn,kOriginalClose:vqn,kOrigin:Bqn,kOriginalDispatch:Mpa,kConnected:gbr}=Vwe(),{MockInterceptor:Hpa}=ubr(),wqn=B2(),{InvalidArgumentError:Ypa}=Y0(),Abr=class extends Wpa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ypa("Argument opts.agent must implement Agent");this[Eqn]=r.agent,this[Bqn]=t,this[bqn]=[],this[gbr]=1,this[Mpa]=this.dispatch,this[vqn]=this.close.bind(this),this.dispatch=Opa.call(this),this.close=this[Sqn]}get[wqn.kConnected](){return this[gbr]}intercept(t){return new Hpa(t,this[bqn])}async[Sqn](){await Ppa(this[vqn])(),this[gbr]=0,this[Eqn][wqn.kClients].delete(this[Bqn])}};Tqn.exports=Abr});var Ibr=H((zou,Fqn)=>{"use strict";var{promisify:Qpa}=wt("node:util"),Xpa=Nwe(),{buildMockDispatch:Jpa}=ZYe(),{kDispatches:Rqn,kMockAgent:Nqn,kClose:Dqn,kOriginalClose:kqn,kOrigin:xqn,kOriginalDispatch:Upa,kConnected:pbr}=Vwe(),{MockInterceptor:Kpa}=ubr(),Gqn=B2(),{InvalidArgumentError:jpa}=Y0(),fbr=class extends Xpa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new jpa("Argument opts.agent must implement Agent");this[Nqn]=r.agent,this[xqn]=t,this[Rqn]=[],this[pbr]=1,this[Upa]=this.dispatch,this[kqn]=this.close.bind(this),this.dispatch=Jpa.call(this),this.close=this[Dqn]}get[Gqn.kConnected](){return this[pbr]}intercept(t){return new Kpa(t,this[Rqn])}async[Dqn](){await Qpa(this[kqn])(),this[pbr]=0,this[Nqn][Gqn.kClients].delete(this[xqn])}};Fqn.exports=fbr});var Lqn=H(($ou,Zqn)=>{"use strict";var zpa={pronoun:"it",is:"is",was:"was",this:"this"},qpa={pronoun:"they",is:"are",was:"were",this:"these"};Zqn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?zpa:qpa,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var Pqn=H((tau,Vqn)=>{"use strict";var{Transform:$pa}=wt("node:stream"),{Console:efa}=wt("node:console"),tfa=process.versions.icu?"\u2705":"Y ",rfa=process.versions.icu?"\u274C":"N ";Vqn.exports=class{constructor({disableColors:t}={}){this.transform=new $pa({transform(r,n,a){a(null,r)}}),this.logger=new efa({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?tfa:rfa,Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var Hqn=H((rau,Mqn)=>{"use strict";var{kClients:dhe}=B2(),nfa=Dwe(),{kAgent:hbr,kMockAgentSet:Hht,kMockAgentGet:Wqn,kDispatches:mbr,kIsMockActive:Yht,kNetConnect:phe,kGetNetConnect:ifa,kOptions:Qht,kFactory:Xht}=Vwe(),sfa=dbr(),ofa=Ibr(),{matchValue:afa,buildMockOptions:cfa}=ZYe(),{InvalidArgumentError:Oqn,UndiciError:lfa}=Y0(),ufa=tYe(),gfa=Lqn(),Afa=Pqn(),Cbr=class extends ufa{constructor(t){if(super(t),this[phe]=!0,this[Yht]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new Oqn("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new nfa(t);this[hbr]=r,this[dhe]=r[dhe],this[Qht]=cfa(t)}get(t){let r=this[Wqn](t);return r||(r=this[Xht](t),this[Hht](t,r)),r}dispatch(t,r){return this.get(t.origin),this[hbr].dispatch(t,r)}async close(){await this[hbr].close(),this[dhe].clear()}deactivate(){this[Yht]=!1}activate(){this[Yht]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[phe])?this[phe].push(t):this[phe]=[t];else if(typeof t>"u")this[phe]=!0;else throw new Oqn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[phe]=!1}get isMockActive(){return this[Yht]}[Hht](t,r){this[dhe].set(t,r)}[Xht](t){let r=Object.assign({agent:this},this[Qht]);return this[Qht]&&this[Qht].connections===1?new sfa(t,r):new ofa(t,r)}[Wqn](t){let r=this[dhe].get(t);if(r)return r;if(typeof t!="string"){let n=this[Xht]("http://localhost:9999");return this[Hht](t,n),n}for(let[n,a]of Array.from(this[dhe]))if(a&&typeof n!="string"&&afa(n,t)){let o=this[Xht](t);return this[Hht](t,o),o[mbr]=a[mbr],o}}[ifa](){return this[phe]}pendingInterceptors(){let t=this[dhe];return Array.from(t.entries()).flatMap(([r,n])=>n[mbr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new Afa}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new gfa("interceptor","interceptors").pluralize(r.length);throw new lfa(` +`,"latin1"),r!==null&&a!==r){if(n[iyr])throw new she;process.emitWarning(new she)}t[Ov].timeout&&t[Ov].timeoutType===wwe&&t[Ov].timeout.refresh&&t[Ov].timeout.refresh(),n[sae]()}}destroy(t){let{socket:r,client:n,abort:a}=this;r[oae]=!1,t&&(Af(n[EG]<=1,"pipeline should only contain this request"),a(t))}};f7n.exports=wga});var E7n=H((pau,b7n)=>{"use strict";var xM=wt("node:assert"),{pipeline:xga}=wt("node:stream"),EC=Em(),{RequestContentLengthMismatchError:cyr,RequestAbortedError:h7n,SocketError:mYe,InformationalError:lyr}=Y0(),{kUrl:Eht,kReset:vht,kClient:Twe,kRunning:Bht,kPending:Gga,kQueue:ohe,kPendingIdx:uyr,kRunningIdx:k8,kError:GX,kSocket:tD,kStrictContentLength:Fga,kOnError:gyr,kMaxConcurrentStreams:y7n,kHTTP2Session:xX,kResume:aae,kSize:Zga,kHTTPContext:Lga}=B2(),M$=Symbol("open streams"),m7n=!1,Sht;try{Sht=wt("node:http2")}catch{Sht={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Vga,HTTP2_HEADER_METHOD:Pga,HTTP2_HEADER_PATH:Wga,HTTP2_HEADER_SCHEME:Oga,HTTP2_HEADER_CONTENT_LENGTH:Mga,HTTP2_HEADER_EXPECT:Hga,HTTP2_HEADER_STATUS:Yga}}=Sht;function Qga(e){let t=[];for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let a of n)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(n));return t}async function Xga(e,t){e[tD]=t,m7n||(m7n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=Sht.connect(e[Eht],{createConnection:()=>t,peerMaxConcurrentStreams:e[y7n]});r[M$]=0,r[Twe]=e,r[tD]=t,EC.addListener(r,"error",Uga),EC.addListener(r,"frameError",Kga),EC.addListener(r,"end",jga),EC.addListener(r,"goaway",zga),EC.addListener(r,"close",function(){let{[Twe]:a}=this,{[tD]:o}=a,l=this[tD][GX]||this[GX]||new mYe("closed",EC.getSocketInfo(o));if(a[xX]=null,a.destroyed){xM(a[Gga]===0);let A=a[ohe].splice(a[k8]);for(let f=0;f{n=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return $ga(e,...a)},resume(){Jga(e)},destroy(a,o){n?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function Jga(e){let t=e[tD];t?.destroyed===!1&&(e[Zga]===0&&e[y7n]===0?(t.unref(),e[xX].unref()):(t.ref(),e[xX].ref()))}function Uga(e){xM(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[tD][GX]=e,this[Twe][gyr](e)}function Kga(e,t,r){if(r===0){let n=new lyr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[tD][GX]=n,this[Twe][gyr](n)}}function jga(){let e=new mYe("other side closed",EC.getSocketInfo(this[tD]));this.destroy(e),EC.destroy(this[tD],e)}function zga(e){let t=this[GX]||new mYe(`HTTP/2: "GOAWAY" frame received with code ${e}`,EC.getSocketInfo(this)),r=this[Twe];r[tD]=null,r[Lga]=null,this[xX]!=null&&(this[xX].destroy(t),this[xX]=null),EC.destroy(this[tD],t);let n=r[ohe][r[k8]];r[ohe][r[k8]++]=null,EC.errorRequest(r,n,t),r[uyr]=r[k8],xM(r[Bht]===0),r.emit("disconnect",r[Eht],[r],t),r[aae]()}function qga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function $ga(e,t){let r=e[xX],{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=t;if(A)return EC.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let b={};for(let ce=0;ce{t.aborted||t.completed||(ce=ce||new h7n,EC.errorRequest(e,t,ce),E!=null&&EC.destroy(E,ce),EC.destroy(n,ce),e[ohe][e[k8]++]=null,e[aae]())};try{t.onConnect(F)}catch(ce){EC.errorRequest(e,t,ce)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),E=r.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(t.onUpgrade(null,null,E),++r[M$],e[ohe][e[k8]++]=null):E.once("ready",()=>{t.onUpgrade(null,null,E),++r[M$],e[ohe][e[k8]++]=null}),E.once("close",()=>{r[M$]-=1,r[M$]===0&&r.unref()}),!0;b[Wga]=o,b[Oga]="https";let Q=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let X=EC.bodyLength(n);if(X==null&&(X=t.contentLength),(X===0||!Q)&&(X=null),qga(a)&&X>0&&t.contentLength!=null&&t.contentLength!==X){if(e[Fga])return EC.errorRequest(e,t,new cyr),!1;process.emitWarning(new cyr)}X!=null&&(xM(n,"no body must not have content length"),b[Mga]=`${X}`),r.ref();let ae=a==="GET"||a==="HEAD"||n===null;return f?(b[Hga]="100-continue",E=r.request(b,{endStream:ae,signal:I}),E.once("continue",ne)):(E=r.request(b,{endStream:ae,signal:I}),ne()),++r[M$],E.once("response",ce=>{let{[Yga]:fe,...ue}=ce;if(t.onResponseStarted(),t.aborted){let de=new h7n;EC.errorRequest(e,t,de),EC.destroy(E,de);return}t.onHeaders(Number(fe),Qga(ue),E.resume.bind(E),"")===!1&&E.pause(),E.on("data",de=>{t.onData(de)===!1&&E.pause()})}),E.once("end",()=>{(E.state?.state==null||E.state.state<6)&&t.onComplete([]),r[M$]===0&&r.unref(),F(new lyr("HTTP/2: stream half-closed (remote)")),e[ohe][e[k8]++]=null,e[uyr]=e[k8],e[aae]()}),E.once("close",()=>{r[M$]-=1,r[M$]===0&&r.unref()}),E.once("error",function(ce){F(ce)}),E.once("frameError",(ce,fe)=>{F(new lyr(`HTTP/2: "frameError" received - type ${ce}, code ${fe}`))}),!0;function ne(){!n||X===0?C7n(F,E,null,e,t,e[tD],X,Q):EC.isBuffer(n)?C7n(F,E,n,e,t,e[tD],X,Q):EC.isBlobLike(n)?typeof n.stream=="function"?_7n(F,E,n.stream(),e,t,e[tD],X,Q):tAa(F,E,n,e,t,e[tD],X,Q):EC.isStream(n)?eAa(F,e[tD],Q,E,n,e,t,X):EC.isIterable(n)?_7n(F,E,n,e,t,e[tD],X,Q):xM(!1)}}function C7n(e,t,r,n,a,o,l,A){try{r!=null&&EC.isBuffer(r)&&(xM(l===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),A||(o[vht]=!0),a.onRequestSent(),n[aae]()}catch(f){e(f)}}function eAa(e,t,r,n,a,o,l,A){xM(A!==0||o[Bht]===0,"stream body cannot be pipelined");let f=xga(a,n,C=>{C?(EC.destroy(f,C),e(C)):(EC.removeAllListeners(f),l.onRequestSent(),r||(t[vht]=!0),o[aae]())});EC.addListener(f,"data",I);function I(C){l.onBodySent(C)}}async function tAa(e,t,r,n,a,o,l,A){xM(l===r.size,"blob body must have content length");try{if(l!=null&&l!==r.size)throw new cyr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),A||(o[vht]=!0),n[aae]()}catch(f){e(f)}}async function _7n(e,t,r,n,a,o,l,A){xM(l!==0||n[Bht]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let b=f;f=null,b()}}let C=()=>new Promise((b,E)=>{xM(f===null),o[GX]?E(o[GX]):f=b});t.on("close",I).on("drain",I);try{for await(let b of r){if(o[GX])throw o[GX];let E=t.write(b);a.onBodySent(b),E||await C()}t.end(),a.onRequestSent(),A||(o[vht]=!0),n[aae]()}catch(b){e(b)}finally{t.off("close",I).off("drain",I)}}b7n.exports=Xga});var Tht=H((fau,B7n)=>{"use strict";var x8=Em(),{kBodyUsed:CYe}=B2(),dyr=wt("node:assert"),{InvalidArgumentError:rAa}=Y0(),nAa=wt("node:events"),iAa=[300,301,302,303,307,308],S7n=Symbol("body"),wht=class{constructor(t){this[S7n]=t,this[CYe]=!1}async*[Symbol.asyncIterator](){dyr(!this[CYe],"disturbed"),this[CYe]=!0,yield*this[S7n]}},Ayr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new rAa("maxRedirections must be a positive number");x8.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,x8.isStream(this.opts.body)?(x8.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){dyr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[CYe]=!1,nAa.prototype.on.call(this.opts.body,"data",function(){this[CYe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new wht(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&x8.isIterable(this.opts.body)&&(this.opts.body=new wht(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||x8.isDisturbed(this.opts.body)?null:sAa(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=x8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=oAa(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function sAa(e,t){if(iAa.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var aAa=Tht();function cAa({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new aAa(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}w7n.exports=cAa});var BYe=H((hau,L7n)=>{"use strict";var H$=wt("node:assert"),x7n=wt("node:net"),lAa=wt("node:http"),ahe=Em(),{channels:Rwe}=Awe(),uAa=Qjn(),gAa=Iwe(),{InvalidArgumentError:tw,InformationalError:AAa,ClientDestroyedError:dAa}=Y0(),pAa=sYe(),{kUrl:G8,kServerName:cae,kClient:fAa,kBusy:pyr,kConnect:IAa,kResuming:che,kRunning:SYe,kPending:vYe,kSize:EYe,kQueue:FX,kConnected:hAa,kConnecting:Nwe,kNeedDrain:uae,kKeepAliveDefaultTimeout:T7n,kHostHeader:mAa,kPendingIdx:ZX,kRunningIdx:Y$,kError:CAa,kPipelining:Nht,kKeepAliveTimeoutValue:_Aa,kMaxHeadersSize:yAa,kKeepAliveMaxTimeout:bAa,kKeepAliveTimeoutThreshold:EAa,kHeadersTimeout:SAa,kBodyTimeout:vAa,kStrictContentLength:BAa,kConnector:_Ye,kMaxRedirections:wAa,kMaxRequests:fyr,kCounter:TAa,kClose:RAa,kDestroy:NAa,kDispatch:DAa,kInterceptors:R7n,kLocalAddress:yYe,kMaxResponseSize:kAa,kOnError:xAa,kHTTPContext:rw,kMaxConcurrentStreams:GAa,kResume:bYe}=B2(),FAa=I7n(),ZAa=E7n(),N7n=!1,lae=Symbol("kClosedResolve"),D7n=()=>{};function G7n(e){return e[Nht]??e[rw]?.defaultPipelining??1}var Iyr=class extends gAa{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:X,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:k,allowH2:et}={}){if(super(),C!==void 0)throw new tw("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new tw("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new tw("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new tw("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new tw("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new tw("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new tw("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new tw("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new tw("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new tw("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new tw("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new tw("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new tw("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new tw("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new tw("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new tw("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||x7n.isIP(de)===0))throw new tw("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new tw("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new tw("autoSelectFamilyAttemptTimeout must be a positive number");if(et!=null&&typeof et!="boolean")throw new tw("allowH2 must be a valid boolean value");if(k!=null&&(typeof k!="number"||k<1))throw new tw("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=pAa({...X,maxCachedSessions:ne,allowH2:et,socketPath:F,timeout:A,...Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[R7n]=r.Client,N7n||(N7n=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[R7n]=[LAa({maxRedirections:ce})],this[G8]=ahe.parseOrigin(t),this[_Ye]=fe,this[Nht]=Q??1,this[yAa]=n||lAa.maxHeaderSize,this[T7n]=b??4e3,this[bAa]=N??6e5,this[EAa]=B??2e3,this[_Aa]=this[T7n],this[cae]=null,this[yYe]=de??null,this[che]=0,this[uae]=0,this[mAa]=`host: ${this[G8].hostname}${this[G8].port?`:${this[G8].port}`:""}\r +`,this[vAa]=f??3e5,this[SAa]=a??3e5,this[BAa]=ae??!0,this[wAa]=ce,this[fyr]=ue,this[lae]=null,this[kAa]=be>-1?be:-1,this[GAa]=k??100,this[rw]=null,this[FX]=[],this[Y$]=0,this[ZX]=0,this[bYe]=ct=>hyr(this,ct),this[xAa]=ct=>F7n(this,ct)}get pipelining(){return this[Nht]}set pipelining(t){this[Nht]=t,this[bYe](!0)}get[vYe](){return this[FX].length-this[ZX]}get[SYe](){return this[ZX]-this[Y$]}get[EYe](){return this[FX].length-this[Y$]}get[hAa](){return!!this[rw]&&!this[Nwe]&&!this[rw].destroyed}get[pyr](){return!!(this[rw]?.busy(null)||this[EYe]>=(G7n(this)||1)||this[vYe]>0)}[IAa](t){Z7n(this),this.once("connect",t)}[DAa](t,r){let n=t.origin||this[G8].origin,a=new uAa(n,t,r);return this[FX].push(a),this[che]||(ahe.bodyLength(a.body)==null&&ahe.isIterable(a.body)?(this[che]=1,queueMicrotask(()=>hyr(this))):this[bYe](!0)),this[che]&&this[uae]!==2&&this[pyr]&&(this[uae]=2),this[uae]<2}async[RAa](){return new Promise(t=>{this[EYe]?this[lae]=t:t(null)})}async[NAa](t){return new Promise(r=>{let n=this[FX].splice(this[ZX]);for(let o=0;o{this[lae]&&(this[lae](),this[lae]=null),r(null)};this[rw]?(this[rw].destroy(t,a),this[rw]=null):queueMicrotask(a),this[bYe]()})}},LAa=Rht();function F7n(e,t){if(e[SYe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){H$(e[ZX]===e[Y$]);let r=e[FX].splice(e[Y$]);for(let n=0;n{e[_Ye]({host:t,hostname:r,protocol:n,port:a,servername:e[cae],localAddress:e[yYe]},(f,I)=>{f?A(f):l(I)})});if(e.destroyed){ahe.destroy(o.on("error",D7n),new dAa);return}H$(o);try{e[rw]=o.alpnProtocol==="h2"?await ZAa(e,o):await FAa(e,o)}catch(l){throw o.destroy().on("error",D7n),l}e[Nwe]=!1,o[TAa]=0,o[fyr]=e[fyr],o[fAa]=e,o[CAa]=null,Rwe.connected.hasSubscribers&&Rwe.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[rw]?.version,servername:e[cae],localAddress:e[yYe]},connector:e[_Ye],socket:o}),e.emit("connect",e[G8],[e])}catch(o){if(e.destroyed)return;if(e[Nwe]=!1,Rwe.connectError.hasSubscribers&&Rwe.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[rw]?.version,servername:e[cae],localAddress:e[yYe]},connector:e[_Ye],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(H$(e[SYe]===0);e[vYe]>0&&e[FX][e[ZX]].servername===e[cae];){let l=e[FX][e[ZX]++];ahe.errorRequest(e,l,o)}else F7n(e,o);e.emit("connectionError",e[G8],[e],o)}e[bYe]()}function k7n(e){e[uae]=0,e.emit("drain",e[G8],[e])}function hyr(e,t){e[che]!==2&&(e[che]=2,VAa(e,t),e[che]=0,e[Y$]>256&&(e[FX].splice(0,e[Y$]),e[ZX]-=e[Y$],e[Y$]=0))}function VAa(e,t){for(;;){if(e.destroyed){H$(e[vYe]===0);return}if(e[lae]&&!e[EYe]){e[lae](),e[lae]=null;return}if(e[rw]&&e[rw].resume(),e[pyr])e[uae]=2;else if(e[uae]===2){t?(e[uae]=1,queueMicrotask(()=>k7n(e))):k7n(e);continue}if(e[vYe]===0||e[SYe]>=(G7n(e)||1))return;let r=e[FX][e[ZX]];if(e[G8].protocol==="https:"&&e[cae]!==r.servername){if(e[SYe]>0)return;e[cae]=r.servername,e[rw]?.destroy(new AAa("servername changed"),()=>{e[rw]=null,hyr(e)})}if(e[Nwe])return;if(!e[rw]){Z7n(e);return}if(e[rw].destroyed||e[rw].busy(r))return;!r.aborted&&e[rw].write(r)?e[ZX]++:e[FX].splice(e[ZX],1)}}L7n.exports=Iyr});var myr=H((Cau,V7n)=>{"use strict";var Dht=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};V7n.exports=class{constructor(){this.head=this.tail=new Dht}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Dht),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var W7n=H((_au,P7n)=>{var{kFree:PAa,kConnected:WAa,kPending:OAa,kQueued:MAa,kRunning:HAa,kSize:YAa}=B2(),lhe=Symbol("pool"),Cyr=class{constructor(t){this[lhe]=t}get connected(){return this[lhe][WAa]}get free(){return this[lhe][PAa]}get pending(){return this[lhe][OAa]}get queued(){return this[lhe][MAa]}get running(){return this[lhe][HAa]}get size(){return this[lhe][YAa]}};P7n.exports=Cyr});var vyr=H((yau,j7n)=>{"use strict";var QAa=Iwe(),XAa=myr(),{kConnected:_yr,kSize:O7n,kRunning:M7n,kPending:H7n,kQueued:wYe,kBusy:JAa,kFree:UAa,kUrl:KAa,kClose:jAa,kDestroy:zAa,kDispatch:qAa}=B2(),$Aa=W7n(),rV=Symbol("clients"),OZ=Symbol("needDrain"),TYe=Symbol("queue"),yyr=Symbol("closed resolve"),byr=Symbol("onDrain"),Y7n=Symbol("onConnect"),Q7n=Symbol("onDisconnect"),X7n=Symbol("onConnectionError"),Eyr=Symbol("get dispatcher"),U7n=Symbol("add client"),K7n=Symbol("remove client"),J7n=Symbol("stats"),Syr=class extends QAa{constructor(){super(),this[TYe]=new XAa,this[rV]=[],this[wYe]=0;let t=this;this[byr]=function(n,a){let o=t[TYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[wYe]--,l=!this.dispatch(A.opts,A.handler)}this[OZ]=l,!this[OZ]&&t[OZ]&&(t[OZ]=!1,t.emit("drain",n,[t,...a])),t[yyr]&&o.isEmpty()&&Promise.all(t[rV].map(A=>A.close())).then(t[yyr])},this[Y7n]=(r,n)=>{t.emit("connect",r,[t,...n])},this[Q7n]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[X7n]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[J7n]=new $Aa(this)}get[JAa](){return this[OZ]}get[_yr](){return this[rV].filter(t=>t[_yr]).length}get[UAa](){return this[rV].filter(t=>t[_yr]&&!t[OZ]).length}get[H7n](){let t=this[wYe];for(let{[H7n]:r}of this[rV])t+=r;return t}get[M7n](){let t=0;for(let{[M7n]:r}of this[rV])t+=r;return t}get[O7n](){let t=this[wYe];for(let{[O7n]:r}of this[rV])t+=r;return t}get stats(){return this[J7n]}async[jAa](){this[TYe].isEmpty()?await Promise.all(this[rV].map(t=>t.close())):await new Promise(t=>{this[yyr]=t})}async[zAa](t){for(;;){let r=this[TYe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[rV].map(r=>r.destroy(t)))}[qAa](t,r){let n=this[Eyr]();return n?n.dispatch(t,r)||(n[OZ]=!0,this[OZ]=!this[Eyr]()):(this[OZ]=!0,this[TYe].push({opts:t,handler:r}),this[wYe]++),!this[OZ]}[U7n](t){return t.on("drain",this[byr]).on("connect",this[Y7n]).on("disconnect",this[Q7n]).on("connectionError",this[X7n]),this[rV].push(t),this[OZ]&&queueMicrotask(()=>{this[OZ]&&this[byr](t[KAa],[this,t])}),this}[K7n](t){t.close(()=>{let r=this[rV].indexOf(t);r!==-1&&this[rV].splice(r,1)}),this[OZ]=this[rV].some(r=>!r[OZ]&&r.closed!==!0&&r.destroyed!==!0)}};j7n.exports={PoolBase:Syr,kClients:rV,kNeedDrain:OZ,kAddClient:U7n,kRemoveClient:K7n,kGetDispatcher:Eyr}});var Dwe=H((bau,tzn)=>{"use strict";var{PoolBase:eda,kClients:z7n,kNeedDrain:tda,kAddClient:rda,kGetDispatcher:nda}=vyr(),ida=BYe(),{InvalidArgumentError:Byr}=Y0(),q7n=Em(),{kUrl:$7n,kInterceptors:sda}=B2(),oda=sYe(),wyr=Symbol("options"),Tyr=Symbol("connections"),ezn=Symbol("factory");function ada(e,t){return new ida(e,t)}var Ryr=class extends eda{constructor(t,{connections:r,factory:n=ada,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new Byr("invalid connections");if(typeof n!="function")throw new Byr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new Byr("connect must be a function or an object");typeof a!="function"&&(a=oda({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[sda]=E.interceptors?.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[Tyr]=r||null,this[$7n]=q7n.parseOrigin(t),this[wyr]={...q7n.deepClone(E),connect:a,allowH2:b},this[wyr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[ezn]=n}[nda](){for(let t of this[z7n])if(!t[tda])return t;if(!this[Tyr]||this[z7n].length{"use strict";var{BalancedPoolMissingUpstreamError:cda,InvalidArgumentError:lda}=Y0(),{PoolBase:uda,kClients:SG,kNeedDrain:RYe,kAddClient:gda,kRemoveClient:Ada,kGetDispatcher:dda}=vyr(),pda=Dwe(),{kUrl:Nyr,kInterceptors:fda}=B2(),{parseOrigin:rzn}=Em(),nzn=Symbol("factory"),kht=Symbol("options"),izn=Symbol("kGreatestCommonDivisor"),uhe=Symbol("kCurrentWeight"),ghe=Symbol("kIndex"),GM=Symbol("kWeight"),xht=Symbol("kMaxWeightPerServer"),Ght=Symbol("kErrorPenalty");function Ida(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function hda(e,t){return new pda(e,t)}var Dyr=class extends uda{constructor(t=[],{factory:r=hda,...n}={}){if(super(),this[kht]=n,this[ghe]=-1,this[uhe]=0,this[xht]=this[kht].maxWeightPerServer||100,this[Ght]=this[kht].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new lda("factory must be a function.");this[fda]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[nzn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=rzn(t).origin;if(this[SG].find(a=>a[Nyr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[nzn](r,Object.assign({},this[kht]));this[gda](n),n.on("connect",()=>{n[GM]=Math.min(this[xht],n[GM]+this[Ght])}),n.on("connectionError",()=>{n[GM]=Math.max(1,n[GM]-this[Ght]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[GM]=Math.max(1,n[GM]-this[Ght]),this._updateBalancedPoolStats())});for(let a of this[SG])a[GM]=this[xht];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[Nyr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[Ada](n),this}get upstreams(){return this[SG].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[Nyr].origin)}[dda](){if(this[SG].length===0)throw new cda;if(!this[SG].find(o=>!o[RYe]&&o.closed!==!0&&o.destroyed!==!0)||this[SG].map(o=>o[RYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[SG].findIndex(o=>!o[RYe]);for(;n++this[SG][a][GM]&&!o[RYe]&&(a=this[ghe]),this[ghe]===0&&(this[uhe]=this[uhe]-this[izn],this[uhe]<=0&&(this[uhe]=this[xht])),o[GM]>=this[uhe]&&!o[RYe])return o}return this[uhe]=this[SG][a][GM],this[ghe]=a,this[SG][a]}};szn.exports=Dyr});var kwe=H((Sau,dzn)=>{"use strict";var{InvalidArgumentError:Fht}=Y0(),{kClients:gae,kRunning:azn,kClose:mda,kDestroy:Cda,kDispatch:_da,kInterceptors:yda}=B2(),bda=Iwe(),Eda=Dwe(),Sda=BYe(),vda=Em(),Bda=Rht(),czn=Symbol("onConnect"),lzn=Symbol("onDisconnect"),uzn=Symbol("onConnectionError"),wda=Symbol("maxRedirections"),gzn=Symbol("onDrain"),Azn=Symbol("factory"),kyr=Symbol("options");function Tda(e,t){return t&&t.connections===1?new Sda(e,t):new Eda(e,t)}var xyr=class extends bda{constructor({factory:t=Tda,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new Fht("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new Fht("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Fht("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[yda]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[Bda({maxRedirections:r})],this[kyr]={...vda.deepClone(a),connect:n},this[kyr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[wda]=r,this[Azn]=t,this[gae]=new Map,this[gzn]=(o,l)=>{this.emit("drain",o,[this,...l])},this[czn]=(o,l)=>{this.emit("connect",o,[this,...l])},this[lzn]=(o,l,A)=>{this.emit("disconnect",o,[this,...l],A)},this[uzn]=(o,l,A)=>{this.emit("connectionError",o,[this,...l],A)}}get[azn](){let t=0;for(let r of this[gae].values())t+=r[azn];return t}[_da](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new Fht("opts.origin must be a non-empty string or URL.");let a=this[gae].get(n);return a||(a=this[Azn](t.origin,this[kyr]).on("drain",this[gzn]).on("connect",this[czn]).on("disconnect",this[lzn]).on("connectionError",this[uzn]),this[gae].set(n,a)),a.dispatch(t,r)}async[mda](){let t=[];for(let r of this[gae].values())t.push(r.close());this[gae].clear(),await Promise.all(t)}async[Cda](t){let r=[];for(let n of this[gae].values())r.push(n.destroy(t));this[gae].clear(),await Promise.all(r)}};dzn.exports=xyr});var Zyr=H((vau,hzn)=>{"use strict";var{kProxy:Rda,kClose:Nda,kDestroy:Dda,kInterceptors:kda}=B2(),{URL:NYe}=wt("node:url"),xda=kwe(),Gda=Dwe(),Fda=Iwe(),{InvalidArgumentError:Vht,RequestAbortedError:Zda,SecureProxyConnectionError:Lda}=Y0(),pzn=sYe(),Zht=Symbol("proxy agent"),Lht=Symbol("proxy client"),DYe=Symbol("proxy headers"),Gyr=Symbol("request tls settings"),fzn=Symbol("proxy tls settings"),Izn=Symbol("connect endpoint function");function Vda(e){return e==="https:"?443:80}function Pda(e,t){return new Gda(e,t)}var Wda=()=>{},Fyr=class extends Fda{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof NYe)&&!t.uri)throw new Vht("Proxy uri is mandatory");let{clientFactory:r=Pda}=t;if(typeof r!="function")throw new Vht("Proxy opts.clientFactory must be a function.");let n=this.#e(t),{href:a,origin:o,port:l,protocol:A,username:f,password:I,hostname:C}=n;if(this[Rda]={uri:a,protocol:A},this[kda]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[Gyr]=t.requestTls,this[fzn]=t.proxyTls,this[DYe]=t.headers||{},t.auth&&t.token)throw new Vht("opts.auth cannot be used in combination with opts.token");t.auth?this[DYe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[DYe]["proxy-authorization"]=t.token:f&&I&&(this[DYe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(I)}`).toString("base64")}`);let b=pzn({...t.proxyTls});this[Izn]=pzn({...t.requestTls}),this[Lht]=r(n,{connect:b}),this[Zht]=new xda({...t,connect:async(E,N)=>{let B=E.host;E.port||(B+=`:${Vda(E.protocol)}`);try{let{socket:F,statusCode:Q}=await this[Lht].connect({origin:o,port:l,path:B,signal:E.signal,headers:{...this[DYe],host:E.host},servername:this[fzn]?.servername||C});if(Q!==200&&(F.on("error",Wda).destroy(),N(new Zda(`Proxy response (${Q}) !== 200 when HTTP Tunneling`))),E.protocol!=="https:"){N(null,F);return}let X;this[Gyr]?X=this[Gyr].servername:X=E.servername,this[Izn]({...E,servername:X,httpSocket:F},N)}catch(F){F.code==="ERR_TLS_CERT_ALTNAME_INVALID"?N(new Lda(F)):N(F)}}})}dispatch(t,r){let n=Oda(t.headers);if(Mda(n),n&&!("host"in n)&&!("Host"in n)){let{host:a}=new NYe(t.origin);n.host=a}return this[Zht].dispatch({...t,headers:n},r)}#e(t){return typeof t=="string"?new NYe(t):t instanceof NYe?t:new NYe(t.uri)}async[Nda](){await this[Zht].close(),await this[Lht].close()}async[Dda](){await this[Zht].destroy(),await this[Lht].destroy()}};function Oda(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new Vht("Proxy-Authorization should be sent in ProxyAgent constructor")}hzn.exports=Fyr});var Ezn=H((Bau,bzn)=>{"use strict";var Hda=Iwe(),{kClose:Yda,kDestroy:Qda,kClosed:mzn,kDestroyed:Czn,kDispatch:Xda,kNoProxyAgent:kYe,kHttpProxyAgent:Aae,kHttpsProxyAgent:Ahe}=B2(),_zn=Zyr(),Jda=kwe(),Uda={"http:":80,"https:":443},yzn=!1,Lyr=class extends Hda{#e=null;#t=null;#n=null;constructor(t={}){super(),this.#n=t,yzn||(yzn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:a,...o}=t;this[kYe]=new Jda(o);let l=r??process.env.http_proxy??process.env.HTTP_PROXY;l?this[Aae]=new _zn({...o,uri:l}):this[Aae]=this[kYe];let A=n??process.env.https_proxy??process.env.HTTPS_PROXY;A?this[Ahe]=new _zn({...o,uri:A}):this[Ahe]=this[Aae],this.#s()}[Xda](t,r){let n=new URL(t.origin);return this.#r(n).dispatch(t,r)}async[Yda](){await this[kYe].close(),this[Aae][mzn]||await this[Aae].close(),this[Ahe][mzn]||await this[Ahe].close()}async[Qda](t){await this[kYe].destroy(t),this[Aae][Czn]||await this[Aae].destroy(t),this[Ahe][Czn]||await this[Ahe].destroy(t)}#r(t){let{protocol:r,host:n,port:a}=t;return n=n.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||Uda[r]||0,this.#i(n,a)?r==="https:"?this[Ahe]:this[Aae]:this[kYe]}#i(t,r){if(this.#o&&this.#s(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var xwe=wt("node:assert"),{kRetryHandlerDefaultRetry:Szn}=B2(),{RequestRetryError:xYe}=Y0(),{isDisturbed:vzn,parseHeaders:Kda,parseRangeHeader:Bzn,wrapRequestBody:jda}=Em();function zda(e){let t=Date.now();return new Date(e).getTime()-t}var Vyr=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:jda(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[Szn],retryAfter:E??!0,maxTimeout:A??30*1e3,minTimeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[Szn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,minTimeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:X}=r;if(l&&l!=="UND_ERR_REQ_RETRY"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(X>C){a(t);return}let ae=A?.["retry-after"];ae&&(ae=Number(ae),ae=Number.isNaN(ae)?zda(ae):ae*1e3);let ne=ae>0?Math.min(ae,E):Math.min(b*N**(X-1),E);setTimeout(()=>a(null),ne)}onHeaders(t,r,n,a){let o=Kda(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,n,a):(this.abort(new xYe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new xYe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let A=Bzn(o["content-range"]);if(!A)return this.abort(new xYe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new xYe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:I,end:C=I}=A;return xwe(this.start===f,"content-range mismatch"),xwe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=Bzn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;xwe(f!=null&&Number.isFinite(f),"content-range mismatch"),xwe(C!=null&&Number.isFinite(C),"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return xwe(Number.isFinite(this.start)),xwe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,n,a)}let l=new xYe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||vzn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||vzn(this.opts.body))return this.handler.onError(n);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};wzn.exports=Vyr});var Rzn=H((Tau,Tzn)=>{"use strict";var qda=nYe(),$da=Pht(),Pyr=class extends qda{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let n=new $da({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};Tzn.exports=Pyr});var Qyr=H((Rau,Vzn)=>{"use strict";var Gzn=wt("node:assert"),{Readable:epa}=wt("node:stream"),{RequestAbortedError:Fzn,NotSupportedError:tpa,InvalidArgumentError:rpa,AbortError:Wyr}=Y0(),Zzn=Em(),{ReadableStreamFrom:npa}=Em(),$W=Symbol("kConsume"),GYe=Symbol("kReading"),dae=Symbol("kBody"),Nzn=Symbol("kAbort"),Lzn=Symbol("kContentType"),Dzn=Symbol("kContentLength"),ipa=()=>{},Oyr=class extends epa{constructor({resume:t,abort:r,contentType:n="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[Nzn]=r,this[$W]=null,this[dae]=null,this[Lzn]=n,this[Dzn]=a,this[GYe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new Fzn),t&&this[Nzn](),super.destroy(t)}_destroy(t,r){this[GYe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[GYe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[GYe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[$W]&&t!==null?(Hyr(this[$W],t),this[GYe]?super.push(t):!0):super.push(t)}async text(){return FYe(this,"text")}async json(){return FYe(this,"json")}async blob(){return FYe(this,"blob")}async bytes(){return FYe(this,"bytes")}async arrayBuffer(){return FYe(this,"arrayBuffer")}async formData(){throw new tpa}get bodyUsed(){return Zzn.isDisturbed(this)}get body(){return this[dae]||(this[dae]=npa(this),this[$W]&&(this[dae].getReader(),Gzn(this[dae].locked))),this[dae]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,n=t?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new rpa("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[Dzn]>r&&this.destroy(new Wyr);let l=()=>{this.destroy(n.reason??new Wyr)};n?.addEventListener("abort",l),this.on("close",function(){n?.removeEventListener("abort",l),n?.aborted?o(n.reason??new Wyr):a(null)}).on("error",ipa).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function spa(e){return e[dae]&&e[dae].locked===!0||e[$W]}function opa(e){return Zzn.isDisturbed(e)||spa(e)}async function FYe(e,t){return Gzn(!e[$W]),new Promise((r,n)=>{if(opa(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[$W]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){Yyr(this[$W],a)}).on("close",function(){this[$W].body!==null&&Yyr(this[$W],new Fzn)}),apa(e[$W])})})}function apa(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,n=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,n)}function kzn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),n=0;for(let a=0;a{var cpa=wt("node:assert"),{ResponseStatusCodeError:Pzn}=Y0(),{chunksDecode:Wzn}=Qyr(),lpa=128*1024;async function upa({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){cpa(t);let l=[],A=0;try{for await(let b of t)if(l.push(b),A+=b.length,A>lpa){l=[],A=0;break}}catch{l=[],A=0}let f=`Response status code ${n}${a?`: ${a}`:""}`;if(n===204||!r||!A){queueMicrotask(()=>e(new Pzn(f,n,o)));return}let I=Error.stackTraceLimit;Error.stackTraceLimit=0;let C;try{Ozn(r)?C=JSON.parse(Wzn(l,A)):Mzn(r)&&(C=Wzn(l,A))}catch{}finally{Error.stackTraceLimit=I}queueMicrotask(()=>e(new Pzn(f,n,o,C)))}var Ozn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",Mzn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";Hzn.exports={getResolveErrorBodyCallback:upa,isContentTypeApplicationJson:Ozn,isContentTypeText:Mzn}});var Xzn=H((Dau,Jyr)=>{"use strict";var gpa=wt("node:assert"),{Readable:Apa}=Qyr(),{InvalidArgumentError:Gwe,RequestAbortedError:Yzn}=Y0(),FM=Em(),{getResolveErrorBodyCallback:dpa}=Xyr(),{AsyncResource:ppa}=wt("node:async_hooks"),Wht=class extends ppa{constructor(t,r){if(!t||typeof t!="object")throw new Gwe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new Gwe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new Gwe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Gwe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new Gwe("invalid method");if(A&&typeof A!="function")throw new Gwe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw FM.isStream(l)&&FM.destroy(l.on("error",FM.nop),b),b}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,this.signal=n,this.reason=null,this.removeAbortListener=null,FM.isStream(l)&&l.on("error",b=>{this.onError(b)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new Yzn:this.removeAbortListener=FM.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new Yzn,this.res?FM.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}gpa(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?FM.parseRawHeaders(r):FM.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let E=I==="raw"?FM.parseHeaders(r):b,N=E["content-type"],B=E["content-length"],F=new Apa({resume:n,abort:A,contentType:N,contentLength:this.method!=="HEAD"&&B?Number(B):null,highWaterMark:C});this.removeAbortListener&&F.on("close",this.removeAbortListener),this.callback=null,this.res=F,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(dpa,null,{callback:o,body:F,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:F,context:f}))}onData(t){return this.res.push(t)}onComplete(t){FM.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{FM.destroy(r,t)})),a&&(this.body=null,FM.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function Qzn(e,t){if(t===void 0)return new Promise((r,n)=>{Qzn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new Wht(e,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}Jyr.exports=Qzn;Jyr.exports.RequestHandler=Wht});var ZYe=H((kau,Kzn)=>{var{addAbortListener:fpa}=Em(),{RequestAbortedError:Ipa}=Y0(),Fwe=Symbol("kListener"),F8=Symbol("kSignal");function Jzn(e){e.abort?e.abort(e[F8]?.reason):e.reason=e[F8]?.reason??new Ipa,Uzn(e)}function hpa(e,t){if(e.reason=null,e[F8]=null,e[Fwe]=null,!!t){if(t.aborted){Jzn(e);return}e[F8]=t,e[Fwe]=()=>{Jzn(e)},fpa(e[F8],e[Fwe])}}function Uzn(e){e[F8]&&("removeEventListener"in e[F8]?e[F8].removeEventListener("abort",e[Fwe]):e[F8].removeListener("abort",e[Fwe]),e[F8]=null,e[Fwe]=null)}Kzn.exports={addSignal:hpa,removeSignal:Uzn}});var $zn=H((xau,qzn)=>{"use strict";var mpa=wt("node:assert"),{finished:Cpa,PassThrough:_pa}=wt("node:stream"),{InvalidArgumentError:Zwe,InvalidReturnValueError:ypa}=Y0(),LX=Em(),{getResolveErrorBodyCallback:bpa}=Xyr(),{AsyncResource:Epa}=wt("node:async_hooks"),{addSignal:Spa,removeSignal:jzn}=ZYe(),Uyr=class extends Epa{constructor(t,r,n){if(!t||typeof t!="object")throw new Zwe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new Zwe("invalid callback");if(typeof r!="function")throw new Zwe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new Zwe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new Zwe("invalid method");if(f&&typeof f!="function")throw new Zwe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw LX.isStream(A)&&LX.destroy(A.on("error",LX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,LX.isStream(A)&&A.on("error",b=>{this.onError(b)}),Spa(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}mpa(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?LX.parseRawHeaders(r):LX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?LX.parseHeaders(r):C)["content-type"];b=new _pa,this.callback=null,this.runInAsyncScope(bpa,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new ypa("expected Writable");Cpa(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:X,abort:ae}=this;this.res=null,(N||!F.readable)&&LX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:X}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;jzn(this),r&&(this.trailers=LX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;jzn(this),this.factory=null,r?(this.res=null,LX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,LX.destroy(o,t))}};function zzn(e,t,r){if(r===void 0)return new Promise((n,a)=>{zzn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new Uyr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e?.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}qzn.exports=zzn});var nqn=H((Gau,rqn)=>{"use strict";var{Readable:tqn,Duplex:vpa,PassThrough:Bpa}=wt("node:stream"),{InvalidArgumentError:LYe,InvalidReturnValueError:wpa,RequestAbortedError:Kyr}=Y0(),ZM=Em(),{AsyncResource:Tpa}=wt("node:async_hooks"),{addSignal:Rpa,removeSignal:Npa}=ZYe(),eqn=wt("node:assert"),Lwe=Symbol("resume"),jyr=class extends tqn{constructor(){super({autoDestroy:!0}),this[Lwe]=null}_read(){let{[Lwe]:t}=this;t&&(this[Lwe]=null,t())}_destroy(t,r){this._read(),r(t)}},zyr=class extends tqn{constructor(t){super({autoDestroy:!0}),this[Lwe]=t}_read(){this[Lwe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Kyr),r(t)}},qyr=class extends Tpa{constructor(t,r){if(!t||typeof t!="object")throw new LYe("invalid opts");if(typeof r!="function")throw new LYe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new LYe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new LYe("invalid method");if(l&&typeof l!="function")throw new LYe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new jyr().on("error",ZM.nop),this.ret=new vpa({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[Lwe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new Kyr),B&&f&&B(),ZM.destroy(C,f),ZM.destroy(b,f),ZM.destroy(E,f),Npa(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,Rpa(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(this.reason){t(this.reason);return}eqn(!a,"pipeline cannot be retried"),eqn(!n.destroyed),this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?ZM.parseRawHeaders(r):ZM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new zyr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?ZM.parseRawHeaders(r):ZM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",ZM.nop),f}if(!A||typeof A.on!="function")throw new wpa("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;ZM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||ZM.destroy(f,new Kyr)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,ZM.destroy(r,t)}};function Dpa(e,t){try{let r=new qyr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new Bpa().destroy(r)}}rqn.exports=Dpa});var lqn=H((Fau,cqn)=>{"use strict";var{InvalidArgumentError:$yr,SocketError:kpa}=Y0(),{AsyncResource:xpa}=wt("node:async_hooks"),iqn=Em(),{addSignal:Gpa,removeSignal:sqn}=ZYe(),oqn=wt("node:assert"),ebr=class extends xpa{constructor(t,r){if(!t||typeof t!="object")throw new $yr("invalid opts");if(typeof r!="function")throw new $yr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new $yr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,Gpa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}oqn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new kpa("bad upgrade",null)}onUpgrade(t,r,n){oqn(t===101);let{callback:a,opaque:o,context:l}=this;sqn(this),this.callback=null;let A=this.responseHeaders==="raw"?iqn.parseRawHeaders(r):iqn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;sqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function aqn(e,t){if(t===void 0)return new Promise((r,n)=>{aqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new ebr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}cqn.exports=aqn});var pqn=H((Zau,dqn)=>{"use strict";var Fpa=wt("node:assert"),{AsyncResource:Zpa}=wt("node:async_hooks"),{InvalidArgumentError:tbr,SocketError:Lpa}=Y0(),uqn=Em(),{addSignal:Vpa,removeSignal:gqn}=ZYe(),rbr=class extends Zpa{constructor(t,r){if(!t||typeof t!="object")throw new tbr("invalid opts");if(typeof r!="function")throw new tbr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new tbr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Vpa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}Fpa(this.callback),this.abort=t,this.context=r}onHeaders(){throw new Lpa("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;gqn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?uqn.parseRawHeaders(r):uqn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;gqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function Aqn(e,t){if(t===void 0)return new Promise((r,n)=>{Aqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new rbr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}dqn.exports=Aqn});var fqn=H((Lau,Vwe)=>{"use strict";Vwe.exports.request=Xzn();Vwe.exports.stream=$zn();Vwe.exports.pipeline=nqn();Vwe.exports.upgrade=lqn();Vwe.exports.connect=pqn()});var ibr=H((Vau,Iqn)=>{"use strict";var{UndiciError:Ppa}=Y0(),nbr=class e extends Ppa{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};Iqn.exports={MockNotMatchedError:nbr}});var Pwe=H((Pau,hqn)=>{"use strict";hqn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var VYe=H((Wau,Tqn)=>{"use strict";var{MockNotMatchedError:dhe}=ibr(),{kDispatches:Oht,kMockAgent:Wpa,kOriginalDispatch:Opa,kOrigin:Mpa,kGetNetConnect:Hpa}=Pwe(),{buildURL:Ypa}=Em(),{STATUS_CODES:Qpa}=wt("node:http"),{types:{isPromise:Xpa}}=wt("node:util");function Q$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function Cqn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function _qn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=_qn(t,r);if(!Q$(n,a))return!1}return!0}function mqn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Jpa(e,{path:t,method:r,body:n,headers:a}){let o=Q$(e.path,t),l=Q$(e.method,r),A=typeof e.body<"u"?Q$(e.body,n):!0,f=yqn(e,a);return o&&l&&A&&f}function bqn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function Eqn(e,t){let r=t.query?Ypa(t.path,t.query):t.path,n=typeof r=="string"?mqn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>Q$(mqn(o),n));if(a.length===0)throw new dhe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>Q$(o,t.method)),a.length===0)throw new dhe(`Mock dispatch not matched for method '${t.method}' on path '${n}'`);if(a=a.filter(({body:o})=>typeof o<"u"?Q$(o,t.body):!0),a.length===0)throw new dhe(`Mock dispatch not matched for body '${t.body}' on path '${n}'`);if(a=a.filter(o=>yqn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new dhe(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return a[0]}function Upa(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function sbr(e,t){let r=e.findIndex(n=>n.consumed?Jpa(n,t):!1);r!==-1&&e.splice(r,1)}function Sqn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function obr(e){let t=Object.keys(e),r=[];for(let n=0;n=E,n.pending=b0?setTimeout(()=>{N(this[Oht])},I):N(this[Oht]);function N(F,Q=o){let X=Array.isArray(e.headers)?abr(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:X}):Q;if(Xpa(ae)){ae.then(ue=>N(F,ue));return}let ne=bqn(ae),ce=obr(l),fe=obr(A);t.onConnect?.(ue=>t.onError(ue),null),t.onHeaders?.(a,ce,B,vqn(a)),t.onData?.(Buffer.from(ne)),t.onComplete?.(fe),sbr(F,r)}function B(){}return!0}function jpa(){let e=this[Wpa],t=this[Mpa],r=this[Opa];return function(a,o){if(e.isMockActive)try{Bqn.call(this,a,o)}catch(l){if(l instanceof dhe){let A=e[Hpa]();if(A===!1)throw new dhe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(wqn(A,t))r.call(this,a,o);else throw new dhe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function wqn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>Q$(n,r.host)))}function zpa(e){if(e){let{agent:t,...r}=e;return r}}Tqn.exports={getResponseData:bqn,getMockDispatch:Eqn,addMockDispatch:Upa,deleteMockDispatch:sbr,buildKey:Sqn,generateKeyValues:obr,matchValue:Q$,getResponse:Kpa,getStatusText:vqn,mockDispatch:Bqn,buildMockDispatch:jpa,checkNetConnect:wqn,buildMockOptions:zpa,getHeaderByName:_qn,buildHeadersFromArray:abr}});var pbr=H((Oau,dbr)=>{"use strict";var{getResponseData:qpa,buildKey:$pa,addMockDispatch:cbr}=VYe(),{kDispatches:Mht,kDispatchKey:Hht,kDefaultHeaders:lbr,kDefaultTrailers:ubr,kContentLength:gbr,kMockDispatch:Yht}=Pwe(),{InvalidArgumentError:Z8}=Y0(),{buildURL:efa}=Em(),Wwe=class{constructor(t){this[Yht]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new Z8("waitInMs must be a valid integer > 0");return this[Yht].delay=t,this}persist(){return this[Yht].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new Z8("repeatTimes must be a valid integer > 0");return this[Yht].times=t,this}},Abr=class{constructor(t,r){if(typeof t!="object")throw new Z8("opts must be an object");if(typeof t.path>"u")throw new Z8("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=efa(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Hht]=$pa(t),this[Mht]=r,this[lbr]={},this[ubr]={},this[gbr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:n}){let a=qpa(r),o=this[gbr]?{"content-length":a.length}:{},l={...this[lbr],...o,...n.headers},A={...this[ubr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new Z8("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new Z8("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=A=>{let f=t(A);if(typeof f!="object"||f===null)throw new Z8("reply options callback must return an object");let I={data:"",responseOptions:{},...f};return this.validateReplyParameters(I),{...this.createMockScopeDispatchData(I)}},l=cbr(this[Mht],this[Hht],o);return new Wwe(l)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),a=cbr(this[Mht],this[Hht],n);return new Wwe(a)}replyWithError(t){if(typeof t>"u")throw new Z8("error must be defined");let r=cbr(this[Mht],this[Hht],{error:t});return new Wwe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new Z8("headers must be defined");return this[lbr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new Z8("trailers must be defined");return this[ubr]=t,this}replyContentLength(){return this[gbr]=!0,this}};dbr.exports.MockInterceptor=Abr;dbr.exports.MockScope=Wwe});var hbr=H((Mau,Fqn)=>{"use strict";var{promisify:tfa}=wt("node:util"),rfa=BYe(),{buildMockDispatch:nfa}=VYe(),{kDispatches:Rqn,kMockAgent:Nqn,kClose:Dqn,kOriginalClose:kqn,kOrigin:xqn,kOriginalDispatch:ifa,kConnected:fbr}=Pwe(),{MockInterceptor:sfa}=pbr(),Gqn=B2(),{InvalidArgumentError:ofa}=Y0(),Ibr=class extends rfa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new ofa("Argument opts.agent must implement Agent");this[Nqn]=r.agent,this[xqn]=t,this[Rqn]=[],this[fbr]=1,this[ifa]=this.dispatch,this[kqn]=this.close.bind(this),this.dispatch=nfa.call(this),this.close=this[Dqn]}get[Gqn.kConnected](){return this[fbr]}intercept(t){return new sfa(t,this[Rqn])}async[Dqn](){await tfa(this[kqn])(),this[fbr]=0,this[Nqn][Gqn.kClients].delete(this[xqn])}};Fqn.exports=Ibr});var _br=H((Hau,Mqn)=>{"use strict";var{promisify:afa}=wt("node:util"),cfa=Dwe(),{buildMockDispatch:lfa}=VYe(),{kDispatches:Zqn,kMockAgent:Lqn,kClose:Vqn,kOriginalClose:Pqn,kOrigin:Wqn,kOriginalDispatch:ufa,kConnected:mbr}=Pwe(),{MockInterceptor:gfa}=pbr(),Oqn=B2(),{InvalidArgumentError:Afa}=Y0(),Cbr=class extends cfa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Afa("Argument opts.agent must implement Agent");this[Lqn]=r.agent,this[Wqn]=t,this[Zqn]=[],this[mbr]=1,this[ufa]=this.dispatch,this[Pqn]=this.close.bind(this),this.dispatch=lfa.call(this),this.close=this[Vqn]}get[Oqn.kConnected](){return this[mbr]}intercept(t){return new gfa(t,this[Zqn])}async[Vqn](){await afa(this[Pqn])(),this[mbr]=0,this[Lqn][Oqn.kClients].delete(this[Wqn])}};Mqn.exports=Cbr});var Yqn=H((Qau,Hqn)=>{"use strict";var dfa={pronoun:"it",is:"is",was:"was",this:"this"},pfa={pronoun:"they",is:"are",was:"were",this:"these"};Hqn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?dfa:pfa,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var Xqn=H((Jau,Qqn)=>{"use strict";var{Transform:ffa}=wt("node:stream"),{Console:Ifa}=wt("node:console"),hfa=process.versions.icu?"\u2705":"Y ",mfa=process.versions.icu?"\u274C":"N ";Qqn.exports=class{constructor({disableColors:t}={}){this.transform=new ffa({transform(r,n,a){a(null,r)}}),this.logger=new Ifa({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?hfa:mfa,Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var jqn=H((Uau,Kqn)=>{"use strict";var{kClients:phe}=B2(),Cfa=kwe(),{kAgent:ybr,kMockAgentSet:Qht,kMockAgentGet:Jqn,kDispatches:bbr,kIsMockActive:Xht,kNetConnect:fhe,kGetNetConnect:_fa,kOptions:Jht,kFactory:Uht}=Pwe(),yfa=hbr(),bfa=_br(),{matchValue:Efa,buildMockOptions:Sfa}=VYe(),{InvalidArgumentError:Uqn,UndiciError:vfa}=Y0(),Bfa=nYe(),wfa=Yqn(),Tfa=Xqn(),Ebr=class extends Bfa{constructor(t){if(super(t),this[fhe]=!0,this[Xht]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new Uqn("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new Cfa(t);this[ybr]=r,this[phe]=r[phe],this[Jht]=Sfa(t)}get(t){let r=this[Jqn](t);return r||(r=this[Uht](t),this[Qht](t,r)),r}dispatch(t,r){return this.get(t.origin),this[ybr].dispatch(t,r)}async close(){await this[ybr].close(),this[phe].clear()}deactivate(){this[Xht]=!1}activate(){this[Xht]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[fhe])?this[fhe].push(t):this[fhe]=[t];else if(typeof t>"u")this[fhe]=!0;else throw new Uqn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[fhe]=!1}get isMockActive(){return this[Xht]}[Qht](t,r){this[phe].set(t,r)}[Uht](t){let r=Object.assign({agent:this},this[Jht]);return this[Jht]&&this[Jht].connections===1?new yfa(t,r):new bfa(t,r)}[Jqn](t){let r=this[phe].get(t);if(r)return r;if(typeof t!="string"){let n=this[Uht]("http://localhost:9999");return this[Qht](t,n),n}for(let[n,a]of Array.from(this[phe]))if(a&&typeof n!="string"&&Efa(n,t)){let o=this[Uht](t);return this[Qht](t,o),o[bbr]=a[bbr],o}}[_fa](){return this[fhe]}pendingInterceptors(){let t=this[phe];return Array.from(t.entries()).flatMap(([r,n])=>n[bbr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new Tfa}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new wfa("interceptor","interceptors").pluralize(r.length);throw new vfa(` ${n.count} ${n.noun} ${n.is} pending: ${t.format(r)} -`.trim())}};Mqn.exports=Cbr});var Jht=H((nau,Jqn)=>{"use strict";var Yqn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:dfa}=Y0(),pfa=Dwe();Xqn()===void 0&&Qqn(new pfa);function Qqn(e){if(!e||typeof e.dispatch!="function")throw new dfa("Argument agent must implement Agent");Object.defineProperty(globalThis,Yqn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function Xqn(){return globalThis[Yqn]}Jqn.exports={setGlobalDispatcher:Qqn,getGlobalDispatcher:Xqn}});var _br=H((sau,Uqn)=>{"use strict";Uqn.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var jqn=H((oau,Kqn)=>{"use strict";var ffa=Bht();Kqn.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:l=t,...A}=a;if(!l)return r(a,o);let f=new ffa(r,l,a,o);return r(A,f)}}});var qqn=H((aau,zqn)=>{"use strict";var Ifa=Lht();zqn.exports=e=>t=>function(n,a){return t(n,new Ifa({...n,retryOptions:{...e,...n.retryOptions}},{handler:a,dispatch:t}))}});var e$n=H((cau,$qn)=>{"use strict";var hfa=Em(),{InvalidArgumentError:mfa,RequestAbortedError:Cfa}=Y0(),_fa=_br(),ybr=class extends _fa{#e=1024*1024;#t=null;#n=!1;#r=!1;#i=0;#s=null;#o=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new mfa("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#o=r}onConnect(t){this.#t=t,this.#o.onConnect(this.#g.bind(this))}#g(t){this.#r=!0,this.#s=t}onHeaders(t,r,n,a){let l=hfa.parseHeaders(r)["content-length"];if(l!=null&&l>this.#e)throw new Cfa(`Response size (${l}) larger than maxSize (${this.#e})`);return this.#r?!0:this.#o.onHeaders(t,r,n,a)}onError(t){this.#n||(t=this.#s??t,this.#o.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#n=!0,this.#r?this.#o.onError(this.#s):this.#o.onComplete([])),!0}onComplete(t){if(!this.#n){if(this.#r){this.#o.onError(this.reason);return}this.#o.onComplete(t)}}};function yfa({maxSize:e}={maxSize:1024*1024}){return t=>function(n,a){let{dumpMaxSize:o=e}=n,l=new ybr({maxSize:o},a);return t(n,l)}}$qn.exports=yfa});var fhe=H((lau,a$n)=>{"use strict";var{kConstruct:bfa}=B2(),{kEnumerableProperty:Wwe}=Em(),{iteratorMixin:Efa,isValidHeaderName:LYe,isValidHeaderValue:r$n}=qW(),{webidl:__}=kk(),bbr=wt("node:assert"),Uht=wt("node:util"),aT=Symbol("headers map"),eO=Symbol("headers map sorted");function t$n(e){return e===10||e===13||e===9||e===32}function n$n(e){let t=0,r=e.length;for(;r>t&&t$n(e.charCodeAt(r-1));)--r;for(;r>t&&t$n(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function i$n(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function Ebr(e,t,r){if(r=n$n(r),LYe(t)){if(!r$n(r))throw __.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw __.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(o$n(e)==="immutable")throw new TypeError("immutable");return Sbr(e).append(t,r,!1)}function s$n(e,t){return e[0]>1),r[I][0]<=C[0]?f=I+1:A=I;if(o!==I){for(l=o;l>f;)r[l]=r[--l];r[f]=C}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:a,1:{value:o}}of this[aT])r[n++]=[a,o],bbr(o!==null);return r.sort(s$n)}}},VX=class e{#e;#t;constructor(t=void 0){t!==bfa&&(this.#t=new Kht,this.#e="none",t!==void 0&&(t=__.converters.HeadersInit(t,"Headers contructor","init"),i$n(this,t)))}append(t,r){__.brandCheck(this,e),__.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return t=__.converters.ByteString(t,n,"name"),r=__.converters.ByteString(r,n,"value"),Ebr(this,t,r)}delete(t){if(__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.delete"),t=__.converters.ByteString(t,"Headers.delete","name"),!LYe(t))throw __.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=__.converters.ByteString(t,r,"name"),!LYe(t))throw __.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=__.converters.ByteString(t,r,"name"),!LYe(t))throw __.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){__.brandCheck(this,e),__.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(t=__.converters.ByteString(t,n,"name"),r=__.converters.ByteString(r,n,"value"),r=n$n(r),LYe(t)){if(!r$n(r))throw __.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw __.errors.invalidArgument({prefix:n,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){__.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[eO](){if(this.#t[eO])return this.#t[eO];let t=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[eO]=r;for(let a=0;a>"](e,t,r,n.bind(e)):__.converters["record"](e,t,r)}throw __.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};a$n.exports={fill:i$n,compareHeaderName:s$n,Headers:VX,HeadersList:Kht,getHeadersGuard:o$n,setHeadersGuard:Sfa,setHeadersList:vfa,getHeadersList:Sbr}});var PYe=H((uau,h$n)=>{"use strict";var{Headers:d$n,HeadersList:c$n,fill:Bfa,getHeadersGuard:wfa,setHeadersGuard:p$n,setHeadersList:f$n}=fhe(),{extractBody:l$n,cloneBody:Tfa,mixinBody:Rfa,hasFinalizationRegistry:Nfa,streamRegistry:Dfa,bodyUnusable:kfa}=AYe(),vbr=Em(),u$n=wt("node:util"),{kEnumerableProperty:tO}=vbr,{isValidReasonPhrase:xfa,isCancelled:Gfa,isAborted:Ffa,isBlobLike:Zfa,serializeJavascriptValueToJSONString:Lfa,isErrorLike:Vfa,isomorphicEncode:Pfa,environmentSettingsObject:Wfa}=qW(),{redirectStatusSet:Ofa,nullBodyStatus:Mfa}=iYe(),{kState:Mv,kHeaders:X$}=nae(),{webidl:Oh}=kk(),{FormData:Hfa}=uYe(),{URLSerializer:g$n}=eV(),{kConstruct:zht}=B2(),Bbr=wt("node:assert"),{types:Yfa}=wt("node:util"),Qfa=new TextEncoder("utf-8"),Ihe=class e{static error(){return VYe(qht(),"immutable")}static json(t,r={}){Oh.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=Oh.converters.ResponseInit(r));let n=Qfa.encode(Lfa(t)),a=l$n(n),o=VYe(Owe({}),"response");return A$n(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){Oh.argumentLengthCheck(arguments,1,"Response.redirect"),t=Oh.converters.USVString(t),r=Oh.converters["unsigned short"](r);let n;try{n=new URL(t,Wfa.settingsObject.baseUrl)}catch(l){throw new TypeError(`Failed to parse URL from ${t}`,{cause:l})}if(!Ofa.has(r))throw new RangeError(`Invalid status code ${r}`);let a=VYe(Owe({}),"immutable");a[Mv].status=r;let o=Pfa(g$n(n));return a[Mv].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===zht)return;t!==null&&(t=Oh.converters.BodyInit(t)),r=Oh.converters.ResponseInit(r),this[Mv]=Owe({}),this[X$]=new d$n(zht),p$n(this[X$],"response"),f$n(this[X$],this[Mv].headersList);let n=null;if(t!=null){let[a,o]=l$n(t);n={body:a,type:o}}A$n(this,r,n)}get type(){return Oh.brandCheck(this,e),this[Mv].type}get url(){Oh.brandCheck(this,e);let t=this[Mv].urlList,r=t[t.length-1]??null;return r===null?"":g$n(r,!0)}get redirected(){return Oh.brandCheck(this,e),this[Mv].urlList.length>1}get status(){return Oh.brandCheck(this,e),this[Mv].status}get ok(){return Oh.brandCheck(this,e),this[Mv].status>=200&&this[Mv].status<=299}get statusText(){return Oh.brandCheck(this,e),this[Mv].statusText}get headers(){return Oh.brandCheck(this,e),this[X$]}get body(){return Oh.brandCheck(this,e),this[Mv].body?this[Mv].body.stream:null}get bodyUsed(){return Oh.brandCheck(this,e),!!this[Mv].body&&vbr.isDisturbed(this[Mv].body.stream)}clone(){if(Oh.brandCheck(this,e),kfa(this))throw Oh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=wbr(this[Mv]);return VYe(t,wfa(this[X$]))}[u$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${u$n.formatWithOptions(r,n)}`}};Rfa(Ihe);Object.defineProperties(Ihe.prototype,{type:tO,url:tO,status:tO,ok:tO,redirected:tO,statusText:tO,headers:tO,clone:tO,body:tO,bodyUsed:tO,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(Ihe,{json:tO,redirect:tO,error:tO});function wbr(e){if(e.internalResponse)return I$n(wbr(e.internalResponse),e.type);let t=Owe({...e,body:null});return e.body!=null&&(t.body=Tfa(t,e.body)),t}function Owe(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new c$n(e?.headersList):new c$n,urlList:e?.urlList?[...e.urlList]:[]}}function qht(e){let t=Vfa(e);return Owe({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function Xfa(e){return e.type==="error"&&e.status===0}function jht(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return Bbr(!(n in t)),r[n]=a,!0}})}function I$n(e,t){if(t==="basic")return jht(e,{type:"basic",headersList:e.headersList});if(t==="cors")return jht(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return jht(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return jht(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Bbr(!1)}function Jfa(e,t=null){return Bbr(Gfa(e)),Ffa(e)?qht(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):qht(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function A$n(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!xfa(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[Mv].status=t.status),"statusText"in t&&t.statusText!=null&&(e[Mv].statusText=t.statusText),"headers"in t&&t.headers!=null&&Bfa(e[X$],t.headers),r){if(Mfa.includes(e.status))throw Oh.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[Mv].body=r.body,r.type!=null&&!e[Mv].headersList.contains("content-type",!0)&&e[Mv].headersList.append("content-type",r.type,!0)}}function VYe(e,t){let r=new Ihe(zht);return r[Mv]=e,r[X$]=new d$n(zht),f$n(r[X$],e.headersList),p$n(r[X$],t),Nfa&&e.body?.stream&&Dfa.register(r,new WeakRef(e.body.stream)),r}Oh.converters.ReadableStream=Oh.interfaceConverter(ReadableStream);Oh.converters.FormData=Oh.interfaceConverter(Hfa);Oh.converters.URLSearchParams=Oh.interfaceConverter(URLSearchParams);Oh.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?Oh.converters.USVString(e,t,r):Zfa(e)?Oh.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||Yfa.isArrayBuffer(e)?Oh.converters.BufferSource(e,t,r):vbr.isFormDataLike(e)?Oh.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?Oh.converters.URLSearchParams(e,t,r):Oh.converters.DOMString(e,t,r)};Oh.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?Oh.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:Oh.converters.XMLHttpRequestBodyInit(e,t,r)};Oh.converters.ResponseInit=Oh.dictionaryConverter([{key:"status",converter:Oh.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:Oh.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:Oh.converters.HeadersInit}]);h$n.exports={isNetworkError:Xfa,makeNetworkError:qht,makeResponse:Owe,makeAppropriateNetworkError:Jfa,filterResponse:I$n,Response:Ihe,cloneResponse:wbr,fromInnerResponse:VYe}});var y$n=H((gau,_$n)=>{"use strict";var{kConnected:m$n,kSize:C$n}=B2(),Tbr=class{constructor(t){this.value=t}deref(){return this.value[m$n]===0&&this.value[C$n]===0?void 0:this.value}},Rbr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[m$n]===0&&t[C$n]===0&&this.finalizer(r)})}unregister(t){}};_$n.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Tbr,FinalizationRegistry:Rbr}):{WeakRef,FinalizationRegistry}}});var Mwe=H((Aau,Z$n)=>{"use strict";var{extractBody:Ufa,mixinBody:Kfa,cloneBody:jfa,bodyUnusable:b$n}=AYe(),{Headers:D$n,fill:zfa,HeadersList:rmt,setHeadersGuard:Dbr,getHeadersGuard:qfa,setHeadersList:k$n,getHeadersList:E$n}=fhe(),{FinalizationRegistry:$fa}=y$n()(),emt=Em(),S$n=wt("node:util"),{isValidHTTPToken:eIa,sameOrigin:v$n,environmentSettingsObject:$ht}=qW(),{forbiddenMethodsSet:tIa,corsSafeListedMethodsSet:rIa,referrerPolicy:nIa,requestRedirect:iIa,requestMode:sIa,requestCredentials:oIa,requestCache:aIa,requestDuplex:cIa}=iYe(),{kEnumerableProperty:cT,normalizedMethodRecordsBase:lIa,normalizedMethodRecords:uIa}=emt,{kHeaders:rO,kSignal:tmt,kState:O1,kDispatcher:Nbr}=nae(),{webidl:vf}=kk(),{URLSerializer:gIa}=eV(),{kConstruct:nmt}=B2(),AIa=wt("node:assert"),{getMaxListeners:B$n,setMaxListeners:w$n,getEventListeners:dIa,defaultMaxListeners:T$n}=wt("node:events"),pIa=Symbol("abortController"),x$n=new $fa(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),imt=new WeakMap;function R$n(e){return t;function t(){let r=e.deref();if(r!==void 0){x$n.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let n=imt.get(r.signal);if(n!==void 0){if(n.size!==0){for(let a of n){let o=a.deref();o!==void 0&&o.abort(this.reason)}n.clear()}imt.delete(r.signal)}}}}var N$n=!1,dae=class e{constructor(t,r={}){if(t===nmt)return;let n="Request constructor";vf.argumentLengthCheck(arguments,1,n),t=vf.converters.RequestInfo(t,n,"input"),r=vf.converters.RequestInit(r,n,"init");let a=null,o=null,l=$ht.settingsObject.baseUrl,A=null;if(typeof t=="string"){this[Nbr]=r.dispatcher;let X;try{X=new URL(t,l)}catch(ae){throw new TypeError("Failed to parse URL from "+t,{cause:ae})}if(X.username||X.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=smt({urlList:[X]}),o="cors"}else this[Nbr]=r.dispatcher||t[Nbr],AIa(t instanceof e),a=t[O1],A=t[tmt];let f=$ht.settingsObject.origin,I="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&v$n(a.window,f)&&(I=a.window),r.window!=null)throw new TypeError(`'window' option '${I}' must be null`);"window"in r&&(I="no-window"),a=smt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:$ht.settingsObject,window:I,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let C=Object.keys(r).length!==0;if(C&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let X=r.referrer;if(X==="")a.referrer="no-referrer";else{let ae;try{ae=new URL(X,l)}catch(ne){throw new TypeError(`Referrer "${X}" is not a valid URL.`,{cause:ne})}ae.protocol==="about:"&&ae.hostname==="client"||f&&!v$n(ae,$ht.settingsObject.baseUrl)?a.referrer="client":a.referrer=ae}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let b;if(r.mode!==void 0?b=r.mode:b=o,b==="navigate")throw vf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(b!=null&&(a.mode=b),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let X=r.method,ae=uIa[X];if(ae!==void 0)a.method=ae;else{if(!eIa(X))throw new TypeError(`'${X}' is not a valid HTTP method.`);let ne=X.toUpperCase();if(tIa.has(ne))throw new TypeError(`'${X}' HTTP method is unsupported.`);X=lIa[ne]??X,a.method=X}!N$n&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),N$n=!0)}r.signal!==void 0&&(A=r.signal),this[O1]=a;let E=new AbortController;if(this[tmt]=E.signal,A!=null){if(!A||typeof A.aborted!="boolean"||typeof A.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(A.aborted)E.abort(A.reason);else{this[pIa]=E;let X=new WeakRef(E),ae=R$n(X);try{(typeof B$n=="function"&&B$n(A)===T$n||dIa(A,"abort").length>=T$n)&&w$n(1500,A)}catch{}emt.addAbortListener(A,ae),x$n.register(E,{signal:A,abort:ae},ae)}}if(this[rO]=new D$n(nmt),k$n(this[rO],a.headersList),Dbr(this[rO],"request"),b==="no-cors"){if(!rIa.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);Dbr(this[rO],"request-no-cors")}if(C){let X=E$n(this[rO]),ae=r.headers!==void 0?r.headers:new rmt(X);if(X.clear(),ae instanceof rmt){for(let{name:ne,value:ce}of ae.rawValues())X.append(ne,ce,!1);X.cookies=ae.cookies}else zfa(this[rO],ae)}let N=t instanceof e?t[O1].body:null;if((r.body!=null||N!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let B=null;if(r.body!=null){let[X,ae]=Ufa(r.body,a.keepalive);B=X,ae&&!E$n(this[rO]).contains("content-type",!0)&&this[rO].append("content-type",ae)}let F=B??N;if(F!=null&&F.source==null){if(B!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let Q=F;if(B==null&&N!=null){if(b$n(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let X=new TransformStream;N.stream.pipeThrough(X),Q={source:N.source,length:N.length,stream:X.readable}}this[O1].body=Q}get method(){return vf.brandCheck(this,e),this[O1].method}get url(){return vf.brandCheck(this,e),gIa(this[O1].url)}get headers(){return vf.brandCheck(this,e),this[rO]}get destination(){return vf.brandCheck(this,e),this[O1].destination}get referrer(){return vf.brandCheck(this,e),this[O1].referrer==="no-referrer"?"":this[O1].referrer==="client"?"about:client":this[O1].referrer.toString()}get referrerPolicy(){return vf.brandCheck(this,e),this[O1].referrerPolicy}get mode(){return vf.brandCheck(this,e),this[O1].mode}get credentials(){return this[O1].credentials}get cache(){return vf.brandCheck(this,e),this[O1].cache}get redirect(){return vf.brandCheck(this,e),this[O1].redirect}get integrity(){return vf.brandCheck(this,e),this[O1].integrity}get keepalive(){return vf.brandCheck(this,e),this[O1].keepalive}get isReloadNavigation(){return vf.brandCheck(this,e),this[O1].reloadNavigation}get isHistoryNavigation(){return vf.brandCheck(this,e),this[O1].historyNavigation}get signal(){return vf.brandCheck(this,e),this[tmt]}get body(){return vf.brandCheck(this,e),this[O1].body?this[O1].body.stream:null}get bodyUsed(){return vf.brandCheck(this,e),!!this[O1].body&&emt.isDisturbed(this[O1].body.stream)}get duplex(){return vf.brandCheck(this,e),"half"}clone(){if(vf.brandCheck(this,e),b$n(this))throw new TypeError("unusable");let t=G$n(this[O1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=imt.get(this.signal);n===void 0&&(n=new Set,imt.set(this.signal,n));let a=new WeakRef(r);n.add(a),emt.addAbortListener(r.signal,R$n(a))}return F$n(t,r.signal,qfa(this[rO]))}[S$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${S$n.formatWithOptions(r,n)}`}};Kfa(dae);function smt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new rmt(e.headersList):new rmt}}function G$n(e){let t=smt({...e,body:null});return e.body!=null&&(t.body=jfa(t,e.body)),t}function F$n(e,t,r){let n=new dae(nmt);return n[O1]=e,n[tmt]=t,n[rO]=new D$n(nmt),k$n(n[rO],e.headersList),Dbr(n[rO],r),n}Object.defineProperties(dae.prototype,{method:cT,url:cT,headers:cT,redirect:cT,clone:cT,signal:cT,duplex:cT,destination:cT,body:cT,bodyUsed:cT,isHistoryNavigation:cT,isReloadNavigation:cT,keepalive:cT,integrity:cT,cache:cT,credentials:cT,attribute:cT,referrerPolicy:cT,referrer:cT,mode:cT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});vf.converters.Request=vf.interfaceConverter(dae);vf.converters.RequestInfo=function(e,t,r){return typeof e=="string"?vf.converters.USVString(e,t,r):e instanceof dae?vf.converters.Request(e,t,r):vf.converters.USVString(e,t,r)};vf.converters.AbortSignal=vf.interfaceConverter(AbortSignal);vf.converters.RequestInit=vf.dictionaryConverter([{key:"method",converter:vf.converters.ByteString},{key:"headers",converter:vf.converters.HeadersInit},{key:"body",converter:vf.nullableConverter(vf.converters.BodyInit)},{key:"referrer",converter:vf.converters.USVString},{key:"referrerPolicy",converter:vf.converters.DOMString,allowedValues:nIa},{key:"mode",converter:vf.converters.DOMString,allowedValues:sIa},{key:"credentials",converter:vf.converters.DOMString,allowedValues:oIa},{key:"cache",converter:vf.converters.DOMString,allowedValues:aIa},{key:"redirect",converter:vf.converters.DOMString,allowedValues:iIa},{key:"integrity",converter:vf.converters.DOMString},{key:"keepalive",converter:vf.converters.boolean},{key:"signal",converter:vf.nullableConverter(e=>vf.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:vf.converters.any},{key:"duplex",converter:vf.converters.DOMString,allowedValues:cIa},{key:"dispatcher",converter:vf.converters.any}]);Z$n.exports={Request:dae,makeRequest:smt,fromInnerRequest:F$n,cloneRequest:G$n}});var OYe=H((dau,z$n)=>{"use strict";var{makeNetworkError:_y,makeAppropriateNetworkError:omt,filterResponse:kbr,makeResponse:amt,fromInnerResponse:fIa}=PYe(),{HeadersList:L$n}=fhe(),{Request:IIa,cloneRequest:hIa}=Mwe(),pae=wt("node:zlib"),{bytesMatch:mIa,makePolicyContainer:CIa,clonePolicyContainer:_Ia,requestBadPort:yIa,TAOCheck:bIa,appendRequestOriginHeader:EIa,responseLocationURL:SIa,requestCurrentURL:L8,setRequestReferrerPolicyOnRedirect:vIa,tryUpgradeRequestToAPotentiallyTrustworthyURL:BIa,createOpaqueTimingInfo:Lbr,appendFetchMetadata:wIa,corsCheck:TIa,crossOriginResourcePolicyCheck:RIa,determineRequestsReferrer:NIa,coarsenedSharedCurrentTime:WYe,createDeferredPromise:DIa,isBlobLike:kIa,sameOrigin:Zbr,isCancelled:hhe,isAborted:V$n,isErrorLike:xIa,fullyReadBody:GIa,readableStreamClose:FIa,isomorphicEncode:cmt,urlIsLocal:ZIa,urlIsHttpHttpsScheme:Vbr,urlHasHttpsScheme:LIa,clampAndCoarsenConnectionTimingInfo:VIa,simpleRangeHeaderValue:PIa,buildContentRange:WIa,createInflate:OIa,extractMimeType:MIa}=qW(),{kState:M$n,kDispatcher:HIa}=nae(),mhe=wt("node:assert"),{safelyExtractBody:Pbr,extractBody:P$n}=AYe(),{redirectStatusSet:H$n,nullBodyStatus:Y$n,safeMethodsSet:YIa,requestBodyHeader:QIa,subresourceSet:XIa}=iYe(),JIa=wt("node:events"),{Readable:UIa,pipeline:KIa,finished:jIa}=wt("node:stream"),{addAbortListener:zIa,isErrored:qIa,isReadable:lmt,bufferToLowerCasedHeaderName:W$n}=Em(),{dataURLProcessor:$Ia,serializeAMimeType:eha,minimizeSupportedMimeType:tha}=eV(),{getGlobalDispatcher:rha}=Jht(),{webidl:nha}=kk(),{STATUS_CODES:iha}=wt("node:http"),sha=["GET","HEAD"],oha=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",xbr,umt=class extends JIa{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function aha(e){Q$n(e,"fetch")}function cha(e,t=void 0){nha.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=DIa(),n;try{n=new IIa(e,t)}catch(C){return r.reject(C),r.promise}let a=n[M$n];if(n.signal.aborted)return Gbr(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=!1,f=null;return zIa(n.signal,()=>{A=!0,mhe(f!=null),f.abort(n.signal.reason);let C=l?.deref();Gbr(r,a,C,n.signal.reason)}),f=J$n({request:a,processResponseEndOfBody:aha,processResponse:C=>{if(!A){if(C.aborted){Gbr(r,a,l,f.serializedAbortReason);return}if(C.type==="error"){r.reject(new TypeError("fetch failed",{cause:C.error}));return}l=new WeakRef(fIa(C,"immutable")),r.resolve(l.deref()),r=null}},dispatcher:n[HIa]}),r.promise}function Q$n(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;Vbr(r)&&n!==null&&(e.timingAllowPassed||(n=Lbr({startTime:n.startTime}),a=""),n.endTime=WYe(),e.timingInfo=n,X$n(n,r.href,t,globalThis,a))}var X$n=performance.markResourceTiming;function Gbr(e,t,r,n){if(e&&e.reject(n),t.body!=null&&lmt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[M$n];a.body!=null&&lmt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function J$n({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A=rha()}){mhe(A);let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=WYe(I),b=Lbr({startTime:C}),E={controller:new umt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return mhe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=_Ia(e.client.policyContainer):e.policyContainer=CIa()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,XIa.has(e.destination),U$n(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function U$n(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!ZIa(L8(r))&&(n=_y("local URLs only")),BIa(r),yIa(r)==="blocked"&&(n=_y("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=NIa(r)),n===null&&(n=await(async()=>{let o=L8(r);return Zbr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await O$n(e)):r.mode==="same-origin"?_y('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?_y('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await O$n(e)):Vbr(L8(r))?(r.responseTainting="cors",await K$n(e)):_y("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=kbr(n,"basic"):r.responseTainting==="cors"?n=kbr(n,"cors"):r.responseTainting==="opaque"?n=kbr(n,"opaque"):mhe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(n=a=_y()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||Y$n.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>Fbr(e,_y(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!mIa(A,r.integrity)){o("integrity mismatch");return}n.body=Pbr(A)[0],Fbr(e,n)};await GIa(n.body,l,o)}else Fbr(e,n)}function O$n(e){if(hhe(e)&&e.request.redirectCount===0)return Promise.resolve(omt(e));let{request:t}=e,{protocol:r}=L8(t);switch(r){case"about:":return Promise.resolve(_y("about scheme is not supported"));case"blob:":{xbr||(xbr=wt("node:buffer").resolveObjectURL);let n=L8(t);if(n.search.length!==0)return Promise.resolve(_y("NetworkError when attempting to fetch resource."));let a=xbr(n.toString());if(t.method!=="GET"||!kIa(a))return Promise.resolve(_y("invalid method"));let o=amt(),l=a.size,A=cmt(`${l}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let I=t.headersList.get("range",!0),C=PIa(I,!0);if(C==="failure")return Promise.resolve(_y("failed to fetch the data URL"));let{rangeStartValue:b,rangeEndValue:E}=C;if(b===null)b=l-E,E=b+E-1;else{if(b>=l)return Promise.resolve(_y("Range start is greater than the blob's size."));(E===null||E>=l)&&(E=l-1)}let N=a.slice(b,E,f),B=P$n(N);o.body=B[0];let F=cmt(`${N.size}`),Q=WIa(b,E,l);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",F,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",Q,!0)}else{let I=P$n(a);o.statusText="OK",o.body=I[0],o.headersList.set("content-length",A,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let n=L8(t),a=$Ia(n);if(a==="failure")return Promise.resolve(_y("failed to fetch the data URL"));let o=eha(a.mimeType);return Promise.resolve(amt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:Pbr(a.body)[0]}))}case"file:":return Promise.resolve(_y("not implemented... yet..."));case"http:":case"https:":return K$n(e).catch(n=>_y(n));default:return Promise.resolve(_y("unknown scheme"))}}function lha(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Fbr(e,t){let r=e.timingInfo,n=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let A=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=Lbr(r),A="");let I=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){I=t.status;let C=MIa(t.headersList);C!=="failure"&&(f.contentType=tha(C))}e.request.initiatorType!=null&&X$n(r,e.request.url.href,e.request.initiatorType,globalThis,A,f,I)};let l=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>l())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?n():jIa(a.body.stream,()=>{n()})}async function K$n(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await j$n(e),t.responseTainting==="cors"&&TIa(t,r)==="failure")return _y("cors failure");bIa(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&RIa(t.origin,t.client,t.destination,n)==="blocked"?_y("blocked"):(H$n.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=_y("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await uha(e,r):mhe(!1)),r.timingInfo=a,r)}function uha(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=SIa(n,L8(r).hash),a==null)return t}catch(l){return Promise.resolve(_y(l))}if(!Vbr(a))return Promise.resolve(_y("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(_y("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!Zbr(r,a))return Promise.resolve(_y('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(_y('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(_y());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!sha.includes(r.method)){r.method="GET",r.body=null;for(let l of QIa)r.headersList.delete(l)}Zbr(L8(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(mhe(r.body.source!=null),r.body=Pbr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=WYe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),vIa(r,n),U$n(e,!0)}async function j$n(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=hIa(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=cmt(`${C}`)),b!=null&&o.headersList.append("content-length",b,!0),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",cmt(o.referrer.href),!0),EIa(o),wIa(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",oha),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(LIa(L8(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),A==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,l==null){if(o.cache==="only-if-cached")return _y("only if cached");let E=await gha(a,I,r);!YIa.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?_y():hhe(e)?omt(e):_y("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(hhe(e))return omt(e);e.controller.connection.destroy(),l=await j$n(e,t,!0)}return l}async function gha(e,t=!1,r=!1){mhe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B,F=!0){this.destroyed||(this.destroyed=!0,F&&this.abort?.(B??new DOMException("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(X){hhe(e)||(yield X,e.processRequestBodyChunkLength?.(X.byteLength))},F=()=>{hhe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=X=>{hhe(e)||(X.name==="AbortError"?e.controller.abort():e.controller.terminate(X))};f=async function*(){try{for await(let X of n.body.stream)yield*B(X);F()}catch(X){Q(X)}}()}try{let{body:B,status:F,statusText:Q,headersList:X,socket:ae}=await N({body:f});if(ae)a=amt({status:F,statusText:Q,headersList:X,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=amt({status:F,statusText:Q,headersList:X})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),omt(e,B)):_y(B)}let I=async()=>{await e.controller.resume()},C=B=>{hhe(e)||e.controller.abort(B)},b=new ReadableStream({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)},type:"bytes"});a.body={stream:b,source:null,length:null},e.controller.onAborted=E,e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:X,value:ae}=await e.controller.next();if(V$n(e))break;B=X?void 0:ae}catch(X){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=X,F=!0)}if(B===void 0){FIa(e.controller.controller),lha(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}let Q=new Uint8Array(B);if(Q.byteLength&&e.controller.controller.enqueue(Q),qIa(b)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function E(B){V$n(e)?(a.aborted=!0,lmt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):lmt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:xIa(B)?B:void 0})),e.controller.connection.destroy()}return a;function N({body:B}){let F=L8(n),Q=e.controller.dispatcher;return new Promise((X,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:Q.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;o.finalConnectionTimingInfo=VIa(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ce.destroyed?ne(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne),o.finalNetworkRequestStartTime=WYe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=WYe(e.crossOriginIsolatedCapability)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new L$n;for(let Me=0;MeMe.trim())),be=Se.get("location",!0),this.body=new UIa({read:fe});let k=[],et=be&&n.redirect==="follow"&&H$n.has(ne);if(de.length!==0&&n.method!=="HEAD"&&n.method!=="CONNECT"&&!Y$n.includes(ne)&&!et)for(let Me=0;Me{Me&&this.onError(Me)}).on("error",ct):this.body.on("error",ct)}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new L$n;for(let de=0;de{"use strict";q$n.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var eei=H((fau,$$n)=>{"use strict";var{webidl:nO}=kk(),gmt=Symbol("ProgressEvent state"),Obr=class e extends Event{constructor(t,r={}){t=nO.converters.DOMString(t,"ProgressEvent constructor","type"),r=nO.converters.ProgressEventInit(r??{}),super(t,r),this[gmt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return nO.brandCheck(this,e),this[gmt].lengthComputable}get loaded(){return nO.brandCheck(this,e),this[gmt].loaded}get total(){return nO.brandCheck(this,e),this[gmt].total}};nO.converters.ProgressEventInit=nO.dictionaryConverter([{key:"lengthComputable",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:nO.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:nO.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:nO.converters.boolean,defaultValue:()=>!1}]);$$n.exports={ProgressEvent:Obr}});var rei=H((Iau,tei)=>{"use strict";function Aha(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}tei.exports={getEncoding:Aha}});var uei=H((hau,lei)=>{"use strict";var{kState:Hwe,kError:Mbr,kResult:nei,kAborted:MYe,kLastProgressEventFired:Hbr}=Wbr(),{ProgressEvent:dha}=eei(),{getEncoding:iei}=rei(),{serializeAMimeType:pha,parseMIMEType:sei}=eV(),{types:fha}=wt("node:util"),{StringDecoder:oei}=wt("string_decoder"),{btoa:aei}=wt("node:buffer"),Iha={enumerable:!0,writable:!1,configurable:!1};function hha(e,t,r,n){if(e[Hwe]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[Hwe]="loading",e[nei]=null,e[Mbr]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[MYe];)try{let{done:I,value:C}=await A;if(f&&!e[MYe]&&queueMicrotask(()=>{fae("loadstart",e)}),f=!1,!I&&fha.isUint8Array(C))l.push(C),(e[Hbr]===void 0||Date.now()-e[Hbr]>=50)&&!e[MYe]&&(e[Hbr]=Date.now(),queueMicrotask(()=>{fae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[Hwe]="done";try{let b=mha(l,r,t.type,n);if(e[MYe])return;e[nei]=b,fae("load",e)}catch(b){e[Mbr]=b,fae("error",e)}e[Hwe]!=="loading"&&fae("loadend",e)});break}}catch(I){if(e[MYe])return;queueMicrotask(()=>{e[Hwe]="done",e[Mbr]=I,fae("error",e),e[Hwe]!=="loading"&&fae("loadend",e)});break}})()}function fae(e,t){let r=new dha(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function mha(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=sei(r||"application/octet-stream");o!=="failure"&&(a+=pha(o)),a+=";base64,";let l=new oei("latin1");for(let A of e)a+=aei(l.write(A));return a+=aei(l.end()),a}case"Text":{let a="failure";if(n&&(a=iei(n)),a==="failure"&&r){let o=sei(r);o!=="failure"&&(a=iei(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),Cha(e,a)}case"ArrayBuffer":return cei(e).buffer;case"BinaryString":{let a="",o=new oei("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function Cha(e,t){let r=cei(e),n=_ha(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function _ha(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function cei(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}lei.exports={staticPropertyDescriptors:Iha,readOperation:hha,fireAProgressEvent:fae}});var pei=H((mau,dei)=>{"use strict";var{staticPropertyDescriptors:Ywe,readOperation:Amt,fireAProgressEvent:gei}=uei(),{kState:Che,kError:Aei,kResult:dmt,kEvents:h0,kAborted:yha}=Wbr(),{webidl:ib}=kk(),{kEnumerableProperty:nV}=Em(),PX=class e extends EventTarget{constructor(){super(),this[Che]="empty",this[dmt]=null,this[Aei]=null,this[h0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=ib.converters.Blob(t,{strict:!1}),Amt(this,t,"ArrayBuffer")}readAsBinaryString(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=ib.converters.Blob(t,{strict:!1}),Amt(this,t,"BinaryString")}readAsText(t,r=void 0){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=ib.converters.Blob(t,{strict:!1}),r!==void 0&&(r=ib.converters.DOMString(r,"FileReader.readAsText","encoding")),Amt(this,t,"Text",r)}readAsDataURL(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=ib.converters.Blob(t,{strict:!1}),Amt(this,t,"DataURL")}abort(){if(this[Che]==="empty"||this[Che]==="done"){this[dmt]=null;return}this[Che]==="loading"&&(this[Che]="done",this[dmt]=null),this[yha]=!0,gei("abort",this),this[Che]!=="loading"&&gei("loadend",this)}get readyState(){switch(ib.brandCheck(this,e),this[Che]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return ib.brandCheck(this,e),this[dmt]}get error(){return ib.brandCheck(this,e),this[Aei]}get onloadend(){return ib.brandCheck(this,e),this[h0].loadend}set onloadend(t){ib.brandCheck(this,e),this[h0].loadend&&this.removeEventListener("loadend",this[h0].loadend),typeof t=="function"?(this[h0].loadend=t,this.addEventListener("loadend",t)):this[h0].loadend=null}get onerror(){return ib.brandCheck(this,e),this[h0].error}set onerror(t){ib.brandCheck(this,e),this[h0].error&&this.removeEventListener("error",this[h0].error),typeof t=="function"?(this[h0].error=t,this.addEventListener("error",t)):this[h0].error=null}get onloadstart(){return ib.brandCheck(this,e),this[h0].loadstart}set onloadstart(t){ib.brandCheck(this,e),this[h0].loadstart&&this.removeEventListener("loadstart",this[h0].loadstart),typeof t=="function"?(this[h0].loadstart=t,this.addEventListener("loadstart",t)):this[h0].loadstart=null}get onprogress(){return ib.brandCheck(this,e),this[h0].progress}set onprogress(t){ib.brandCheck(this,e),this[h0].progress&&this.removeEventListener("progress",this[h0].progress),typeof t=="function"?(this[h0].progress=t,this.addEventListener("progress",t)):this[h0].progress=null}get onload(){return ib.brandCheck(this,e),this[h0].load}set onload(t){ib.brandCheck(this,e),this[h0].load&&this.removeEventListener("load",this[h0].load),typeof t=="function"?(this[h0].load=t,this.addEventListener("load",t)):this[h0].load=null}get onabort(){return ib.brandCheck(this,e),this[h0].abort}set onabort(t){ib.brandCheck(this,e),this[h0].abort&&this.removeEventListener("abort",this[h0].abort),typeof t=="function"?(this[h0].abort=t,this.addEventListener("abort",t)):this[h0].abort=null}};PX.EMPTY=PX.prototype.EMPTY=0;PX.LOADING=PX.prototype.LOADING=1;PX.DONE=PX.prototype.DONE=2;Object.defineProperties(PX.prototype,{EMPTY:Ywe,LOADING:Ywe,DONE:Ywe,readAsArrayBuffer:nV,readAsBinaryString:nV,readAsText:nV,readAsDataURL:nV,abort:nV,readyState:nV,result:nV,error:nV,onloadstart:nV,onprogress:nV,onload:nV,onabort:nV,onerror:nV,onloadend:nV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(PX,{EMPTY:Ywe,LOADING:Ywe,DONE:Ywe});dei.exports={FileReader:PX}});var pmt=H((Cau,fei)=>{"use strict";fei.exports={kConstruct:B2().kConstruct}});var mei=H((_au,hei)=>{"use strict";var bha=wt("node:assert"),{URLSerializer:Iei}=eV(),{isValidHeaderName:Eha}=qW();function Sha(e,t,r=!1){let n=Iei(e,r),a=Iei(t,r);return n===a}function vha(e){bha(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),Eha(r)&&t.push(r);return t}hei.exports={urlEquals:Sha,getFieldValues:vha}});var yei=H((yau,_ei)=>{"use strict";var{kConstruct:Bha}=pmt(),{urlEquals:wha,getFieldValues:Ybr}=mei(),{kEnumerableProperty:_he,isDisturbed:Tha}=Em(),{webidl:Bp}=kk(),{Response:Rha,cloneResponse:Nha,fromInnerResponse:Dha}=PYe(),{Request:J$,fromInnerRequest:kha}=Mwe(),{kState:WX}=nae(),{fetching:xha}=OYe(),{urlIsHttpHttpsScheme:fmt,createDeferredPromise:Qwe,readAllBytes:Gha}=qW(),Qbr=wt("node:assert"),Imt=class e{#e;constructor(){arguments[0]!==Bha&&Bp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Bp.brandCheck(this,e);let n="Cache.match";Bp.argumentLengthCheck(arguments,1,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){Bp.brandCheck(this,e);let n="Cache.matchAll";return t!==void 0&&(t=Bp.converters.RequestInfo(t,n,"request")),r=Bp.converters.CacheQueryOptions(r,n,"options"),this.#i(t,r)}async add(t){Bp.brandCheck(this,e);let r="Cache.add";Bp.argumentLengthCheck(arguments,1,r),t=Bp.converters.RequestInfo(t,r,"request");let n=[t];return await this.addAll(n)}async addAll(t){Bp.brandCheck(this,e);let r="Cache.addAll";Bp.argumentLengthCheck(arguments,1,r);let n=[],a=[];for(let E of t){if(E===void 0)throw Bp.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(E=Bp.converters.RequestInfo(E),typeof E=="string")continue;let N=E[WX];if(!fmt(N.url)||N.method!=="GET")throw Bp.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let E of t){let N=new J$(E)[WX];if(!fmt(N.url))throw Bp.errors.exception({header:r,message:"Expected http/s scheme."});N.initiator="fetch",N.destination="subresource",a.push(N);let B=Qwe();o.push(xha({request:N,processResponse(F){if(F.type==="error"||F.status===206||F.status<200||F.status>299)B.reject(Bp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(F.headersList.contains("vary")){let Q=Ybr(F.headersList.get("vary"));for(let X of Q)if(X==="*"){B.reject(Bp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let ae of o)ae.abort();return}}},processResponseEndOfBody(F){if(F.aborted){B.reject(new DOMException("aborted","AbortError"));return}B.resolve(F)}})),n.push(B.promise)}let A=await Promise.all(n),f=[],I=0;for(let E of A){let N={type:"put",request:a[I],response:E};f.push(N),I++}let C=Qwe(),b=null;try{this.#t(f)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve(void 0):C.reject(b)}),C.promise}async put(t,r){Bp.brandCheck(this,e);let n="Cache.put";Bp.argumentLengthCheck(arguments,2,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.Response(r,n,"response");let a=null;if(t instanceof J$?a=t[WX]:a=new J$(t)[WX],!fmt(a.url)||a.method!=="GET")throw Bp.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[WX];if(o.status===206)throw Bp.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let N=Ybr(o.headersList.get("vary"));for(let B of N)if(B==="*")throw Bp.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(Tha(o.body.stream)||o.body.stream.locked))throw Bp.errors.exception({header:n,message:"Response body is locked or disturbed"});let l=Nha(o),A=Qwe();if(o.body!=null){let B=o.body.stream.getReader();Gha(B).then(A.resolve,A.reject)}else A.resolve(void 0);let f=[],I={type:"put",request:a,response:l};f.push(I);let C=await A.promise;l.body!=null&&(l.body.source=C);let b=Qwe(),E=null;try{this.#t(f)}catch(N){E=N}return queueMicrotask(()=>{E===null?b.resolve():b.reject(E)}),b.promise}async delete(t,r={}){Bp.brandCheck(this,e);let n="Cache.delete";Bp.argumentLengthCheck(arguments,1,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return!1}else Qbr(typeof t=="string"),a=new J$(t)[WX];let o=[],l={type:"delete",request:a,options:r};o.push(l);let A=Qwe(),f=null,I;try{I=this.#t(o)}catch(C){f=C}return queueMicrotask(()=>{f===null?A.resolve(!!I?.length):A.reject(f)}),A.promise}async keys(t=void 0,r={}){Bp.brandCheck(this,e);let n="Cache.keys";t!==void 0&&(t=Bp.converters.RequestInfo(t,n,"request")),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t!==void 0)if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new J$(t)[WX]);let o=Qwe(),l=[];if(t===void 0)for(let A of this.#e)l.push(A[0]);else{let A=this.#n(a,r);for(let f of A)l.push(f[0])}return queueMicrotask(()=>{let A=[];for(let f of l){let I=kha(f,new AbortController().signal,"immutable");A.push(I)}o.resolve(Object.freeze(A))}),o.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);Qbr(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!fmt(f.url))throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);Qbr(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!wha(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=Ybr(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}#i(t,r,n=1/0){let a=null;if(t!==void 0)if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new J$(t)[WX]);let o=[];if(t===void 0)for(let A of this.#e)o.push(A[1]);else{let A=this.#n(a,r);for(let f of A)o.push(f[1])}let l=[];for(let A of o){let f=Dha(A,"immutable");if(l.push(f.clone()),l.length>=n)break}return Object.freeze(l)}};Object.defineProperties(Imt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:_he,matchAll:_he,add:_he,addAll:_he,put:_he,delete:_he,keys:_he});var Cei=[{key:"ignoreSearch",converter:Bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Bp.converters.boolean,defaultValue:()=>!1}];Bp.converters.CacheQueryOptions=Bp.dictionaryConverter(Cei);Bp.converters.MultiCacheQueryOptions=Bp.dictionaryConverter([...Cei,{key:"cacheName",converter:Bp.converters.DOMString}]);Bp.converters.Response=Bp.interfaceConverter(Rha);Bp.converters["sequence"]=Bp.sequenceConverter(Bp.converters.RequestInfo);_ei.exports={Cache:Imt}});var Eei=H((bau,bei)=>{"use strict";var{kConstruct:HYe}=pmt(),{Cache:hmt}=yei(),{webidl:MZ}=kk(),{kEnumerableProperty:YYe}=Em(),mmt=class e{#e=new Map;constructor(){arguments[0]!==HYe&&MZ.illegalConstructor()}async match(t,r={}){if(MZ.brandCheck(this,e),MZ.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=MZ.converters.RequestInfo(t),r=MZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new hmt(HYe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new hmt(HYe,n).match(t,r);if(o!==void 0)return o}}async has(t){MZ.brandCheck(this,e);let r="CacheStorage.has";return MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){MZ.brandCheck(this,e);let r="CacheStorage.open";if(MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new hmt(HYe,a)}let n=[];return this.#e.set(t,n),new hmt(HYe,n)}async delete(t){MZ.brandCheck(this,e);let r="CacheStorage.delete";return MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return MZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(mmt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:YYe,has:YYe,open:YYe,delete:YYe,keys:YYe});bei.exports={CacheStorage:mmt}});var vei=H((Eau,Sei)=>{"use strict";Sei.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Xbr=H((Sau,Nei)=>{"use strict";function Fha(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function Bei(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function wei(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}function Tei(e){for(let t=0;tt.toString().padStart(2,"0"));function Rei(e){return typeof e=="number"&&(e=new Date(e)),`${Lha[e.getUTCDay()]}, ${Cmt[e.getUTCDate()]} ${Vha[e.getUTCMonth()]} ${e.getUTCFullYear()} ${Cmt[e.getUTCHours()]}:${Cmt[e.getUTCMinutes()]}:${Cmt[e.getUTCSeconds()]} GMT`}function Pha(e){if(e<0)throw new Error("Invalid cookie max-age")}function Wha(e){if(e.name.length===0)return null;Bei(e.name),wei(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(Pha(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Zha(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Tei(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${Rei(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}Nei.exports={isCTLExcludingHtab:Fha,validateCookieName:Bei,validateCookiePath:Tei,validateCookieValue:wei,toIMFDate:Rei,stringify:Wha}});var kei=H((vau,Dei)=>{"use strict";var{maxNameValuePairSize:Oha,maxAttributeValueSize:Mha}=vei(),{isCTLExcludingHtab:Hha}=Xbr(),{collectASequenceOfCodePointsFast:_mt}=eV(),Yha=wt("node:assert");function Qha(e){if(Hha(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=_mt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=_mt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Oha?null:{name:n,value:a,...Xwe(r)}}function Xwe(e,t={}){if(e.length===0)return t;Yha(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=_mt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=_mt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Mha)return Xwe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return Xwe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return Xwe(e,t)}Dei.exports={parseSetCookie:Qha,parseUnparsedAttributes:Xwe}});var Fei=H((Bau,Gei)=>{"use strict";var{parseSetCookie:Xha}=kei(),{stringify:Jha}=Xbr(),{webidl:nC}=kk(),{Headers:ymt}=fhe();function Uha(e){nC.argumentLengthCheck(arguments,1,"getCookies"),nC.brandCheck(e,ymt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function Kha(e,t,r){nC.brandCheck(e,ymt,{strict:!1});let n="deleteCookie";nC.argumentLengthCheck(arguments,2,n),t=nC.converters.DOMString(t,n,"name"),r=nC.converters.DeleteCookieAttributes(r),xei(e,{name:t,value:"",expires:new Date(0),...r})}function jha(e){nC.argumentLengthCheck(arguments,1,"getSetCookies"),nC.brandCheck(e,ymt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>Xha(r)):[]}function xei(e,t){nC.argumentLengthCheck(arguments,2,"setCookie"),nC.brandCheck(e,ymt,{strict:!1}),t=nC.converters.Cookie(t);let r=Jha(t);r&&e.append("Set-Cookie",r)}nC.converters.DeleteCookieAttributes=nC.dictionaryConverter([{converter:nC.nullableConverter(nC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"domain",defaultValue:()=>null}]);nC.converters.Cookie=nC.dictionaryConverter([{converter:nC.converters.DOMString,key:"name"},{converter:nC.converters.DOMString,key:"value"},{converter:nC.nullableConverter(e=>typeof e=="number"?nC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.boolean),key:"secure",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:nC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:nC.sequenceConverter(nC.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);Gei.exports={getCookies:Uha,deleteCookie:Kha,getSetCookies:jha,setCookie:xei}});var Uwe=H((wau,Lei)=>{"use strict";var{webidl:Wp}=kk(),{kEnumerableProperty:iV}=Em(),{kConstruct:Zei}=B2(),{MessagePort:zha}=wt("node:worker_threads"),Jwe=class e extends Event{#e;constructor(t,r={}){if(t===Zei){super(arguments[1],arguments[2]);return}let n="MessageEvent constructor";Wp.argumentLengthCheck(arguments,1,n),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.MessageEventInit(r,n,"eventInitDict"),super(t,r),this.#e=r}get data(){return Wp.brandCheck(this,e),this.#e.data}get origin(){return Wp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Wp.brandCheck(this,e),this.#e.lastEventId}get source(){return Wp.brandCheck(this,e),this.#e.source}get ports(){return Wp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}static createFastMessageEvent(t,r){let n=new e(Zei,t,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:qha}=Jwe;delete Jwe.createFastMessageEvent;var bmt=class e extends Event{#e;constructor(t,r={}){let n="CloseEvent constructor";Wp.argumentLengthCheck(arguments,1,n),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Wp.brandCheck(this,e),this.#e.wasClean}get code(){return Wp.brandCheck(this,e),this.#e.code}get reason(){return Wp.brandCheck(this,e),this.#e.reason}},Emt=class e extends Event{#e;constructor(t,r){let n="ErrorEvent constructor";Wp.argumentLengthCheck(arguments,1,n),super(t,r),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Wp.brandCheck(this,e),this.#e.message}get filename(){return Wp.brandCheck(this,e),this.#e.filename}get lineno(){return Wp.brandCheck(this,e),this.#e.lineno}get colno(){return Wp.brandCheck(this,e),this.#e.colno}get error(){return Wp.brandCheck(this,e),this.#e.error}};Object.defineProperties(Jwe.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:iV,origin:iV,lastEventId:iV,source:iV,ports:iV,initMessageEvent:iV});Object.defineProperties(bmt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:iV,code:iV,wasClean:iV});Object.defineProperties(Emt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:iV,filename:iV,lineno:iV,colno:iV,error:iV});Wp.converters.MessagePort=Wp.interfaceConverter(zha);Wp.converters["sequence"]=Wp.sequenceConverter(Wp.converters.MessagePort);var Jbr=[{key:"bubbles",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Wp.converters.boolean,defaultValue:()=>!1}];Wp.converters.MessageEventInit=Wp.dictionaryConverter([...Jbr,{key:"data",converter:Wp.converters.any,defaultValue:()=>null},{key:"origin",converter:Wp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Wp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Wp.nullableConverter(Wp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Wp.converters["sequence"],defaultValue:()=>new Array(0)}]);Wp.converters.CloseEventInit=Wp.dictionaryConverter([...Jbr,{key:"wasClean",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Wp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Wp.converters.USVString,defaultValue:()=>""}]);Wp.converters.ErrorEventInit=Wp.dictionaryConverter([...Jbr,{key:"message",converter:Wp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Wp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Wp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Wp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Wp.converters.any}]);Lei.exports={MessageEvent:Jwe,CloseEvent:bmt,ErrorEvent:Emt,createFastMessageEvent:qha}});var yhe=H((Tau,Vei)=>{"use strict";var $ha="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",ema={enumerable:!0,writable:!1,configurable:!1},tma={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},rma={NOT_SENT:0,PROCESSING:1,SENT:2},nma={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},ima=2**16-1,sma={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},oma=Buffer.allocUnsafe(0),ama={string:1,typedArray:2,arrayBuffer:3,blob:4};Vei.exports={uid:$ha,sentCloseFrameState:rma,staticPropertyDescriptors:ema,states:tma,opcodes:nma,maxUnsigned16Bit:ima,parserStates:sma,emptyBuffer:oma,sendHints:ama}});var QYe=H((Rau,Pei)=>{"use strict";Pei.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var UYe=H((Nau,Uei)=>{"use strict";var{kReadyState:XYe,kController:cma,kResponse:lma,kBinaryType:uma,kWebSocketURL:gma}=QYe(),{states:JYe,opcodes:Iae}=yhe(),{ErrorEvent:Ama,createFastMessageEvent:dma}=Uwe(),{isUtf8:pma}=wt("node:buffer"),{collectASequenceOfCodePointsFast:fma,removeHTTPWhitespace:Wei}=eV();function Ima(e){return e[XYe]===JYe.CONNECTING}function hma(e){return e[XYe]===JYe.OPEN}function mma(e){return e[XYe]===JYe.CLOSING}function Cma(e){return e[XYe]===JYe.CLOSED}function Ubr(e,t,r=(a,o)=>new Event(a,o),n={}){let a=r(e,n);t.dispatchEvent(a)}function _ma(e,t,r){if(e[XYe]!==JYe.OPEN)return;let n;if(t===Iae.TEXT)try{n=Jei(r)}catch{Mei(e,"Received invalid UTF-8 in text frame.");return}else t===Iae.BINARY&&(e[uma]==="blob"?n=new Blob([r]):n=yma(r));Ubr("message",e,dma,{origin:e[gma].origin,data:n})}function yma(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function bma(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function Ema(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function Mei(e,t){let{[cma]:r,[lma]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&Ubr("error",e,(a,o)=>new Ama(a,o),{error:new Error(t),message:t})}function Hei(e){return e===Iae.CLOSE||e===Iae.PING||e===Iae.PONG}function Yei(e){return e===Iae.CONTINUATION}function Qei(e){return e===Iae.TEXT||e===Iae.BINARY}function Sma(e){return Qei(e)||Yei(e)||Hei(e)}function vma(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var Xei=typeof process.versions.icu=="string",Oei=Xei?new TextDecoder("utf-8",{fatal:!0}):void 0,Jei=Xei?Oei.decode.bind(Oei):function(e){if(pma(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};Uei.exports={isConnecting:Ima,isEstablished:hma,isClosing:mma,isClosed:Cma,fireEvent:Ubr,isValidSubprotocol:bma,isValidStatusCode:Ema,failWebsocketConnection:Mei,websocketMessageReceived:_ma,utf8Decode:Jei,isControlFrame:Hei,isContinuationFrame:Yei,isTextBinaryFrame:Qei,isValidOpcode:Sma,parseExtensions:vma,isValidClientWindowBits:Bma}});var vmt=H((Dau,Kei)=>{"use strict";var{maxUnsigned16Bit:wma}=yhe(),Smt=16386,Kbr,KYe=null,Kwe=Smt;try{Kbr=wt("node:crypto")}catch{Kbr={randomFillSync:function(t,r,n){for(let a=0;awma?(l+=8,o=127):a>125&&(l+=2,o=126);let A=Buffer.allocUnsafe(a+l);A[0]=A[1]=0,A[0]|=128,A[0]=(A[0]&240)+t;A[l-4]=n[0],A[l-3]=n[1],A[l-2]=n[2],A[l-1]=n[3],A[1]=o,o===126?A.writeUInt16BE(a,2):o===127&&(A[2]=A[3]=0,A.writeUIntBE(a,4,6)),A[1]|=128;for(let f=0;f{"use strict";var{uid:Rma,states:jYe,sentCloseFrameState:Bmt,emptyBuffer:Nma,opcodes:Dma}=yhe(),{kReadyState:zYe,kSentClose:wmt,kByteParser:zei,kReceivedClose:jei,kResponse:qei}=QYe(),{fireEvent:kma,failWebsocketConnection:hae,isClosing:xma,isClosed:Gma,isEstablished:Fma,parseExtensions:Zma}=UYe(),{channels:jwe}=gwe(),{CloseEvent:Lma}=Uwe(),{makeRequest:Vma}=Mwe(),{fetching:Pma}=OYe(),{Headers:Wma,getHeadersList:Oma}=fhe(),{getDecodeSplit:Mma}=qW(),{WebsocketFrameSend:Hma}=vmt(),zbr;try{zbr=wt("node:crypto")}catch{}function Yma(e,t,r,n,a,o){let l=e;l.protocol=e.protocol==="ws:"?"http:":"https:";let A=Vma({urlList:[l],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let b=Oma(new Wma(o.headers));A.headersList=b}let f=zbr.randomBytes(16).toString("base64");A.headersList.append("sec-websocket-key",f),A.headersList.append("sec-websocket-version","13");for(let b of t)A.headersList.append("sec-websocket-protocol",b);return A.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),Pma({request:A,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(b){if(b.type==="error"||b.status!==101){hae(n,"Received network error or non-101 status code.");return}if(t.length!==0&&!b.headersList.get("Sec-WebSocket-Protocol")){hae(n,"Server did not respond with sent protocols.");return}if(b.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){hae(n,'Server did not set Upgrade header to "websocket".');return}if(b.headersList.get("Connection")?.toLowerCase()!=="upgrade"){hae(n,'Server did not set Connection header to "upgrade".');return}let E=b.headersList.get("Sec-WebSocket-Accept"),N=zbr.createHash("sha1").update(f+Rma).digest("base64");if(E!==N){hae(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let B=b.headersList.get("Sec-WebSocket-Extensions"),F;if(B!==null&&(F=Zma(B),!F.has("permessage-deflate"))){hae(n,"Sec-WebSocket-Extensions header does not match.");return}let Q=b.headersList.get("Sec-WebSocket-Protocol");if(Q!==null&&!Mma("sec-websocket-protocol",A.headersList).includes(Q)){hae(n,"Protocol was not set in the opening handshake.");return}b.socket.on("data",$ei),b.socket.on("close",eti),b.socket.on("error",tti),jwe.open.hasSubscribers&&jwe.open.publish({address:b.socket.address(),protocol:Q,extensions:B}),a(b,F)}})}function Qma(e,t,r,n){if(!(xma(e)||Gma(e)))if(!Fma(e))hae(e,"Connection was closed before it was established."),e[zYe]=jYe.CLOSING;else if(e[wmt]===Bmt.NOT_SENT){e[wmt]=Bmt.PROCESSING;let a=new Hma;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Nma,e[qei].socket.write(a.createFrame(Dma.CLOSE)),e[wmt]=Bmt.SENT,e[zYe]=jYe.CLOSING}else e[zYe]=jYe.CLOSING}function $ei(e){this.ws[zei].write(e)||this.pause()}function eti(){let{ws:e}=this,{[qei]:t}=e;t.socket.off("data",$ei),t.socket.off("close",eti),t.socket.off("error",tti);let r=e[wmt]===Bmt.SENT&&e[jei],n=1005,a="",o=e[zei].closingInfo;o&&!o.error?(n=o.code??1005,a=o.reason):e[jei]||(n=1006),e[zYe]=jYe.CLOSED,kma("close",e,(l,A)=>new Lma(l,A),{wasClean:r,code:n,reason:a}),jwe.close.hasSubscribers&&jwe.close.publish({websocket:e,code:n,reason:a})}function tti(e){let{ws:t}=this;t[zYe]=jYe.CLOSING,jwe.socketError.hasSubscribers&&jwe.socketError.publish(e),this.destroy()}rti.exports={establishWebSocketConnection:Yma,closeWebSocketConnection:Qma}});var iti=H((xau,nti)=>{"use strict";var{createInflateRaw:Xma,Z_DEFAULT_WINDOWBITS:Jma}=wt("node:zlib"),{isValidClientWindowBits:Uma}=UYe(),Kma=Buffer.from([0,0,255,255]),Tmt=Symbol("kBuffer"),Rmt=Symbol("kLength"),$br=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,n){if(!this.#e){let a=Jma;if(this.#t.serverMaxWindowBits){if(!Uma(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=Xma({windowBits:a}),this.#e[Tmt]=[],this.#e[Rmt]=0,this.#e.on("data",o=>{this.#e[Tmt].push(o),this.#e[Rmt]+=o.length}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#e.write(t),r&&this.#e.write(Kma),this.#e.flush(()=>{let a=Buffer.concat(this.#e[Tmt],this.#e[Rmt]);this.#e[Tmt].length=0,this.#e[Rmt]=0,n(null,a)})}};nti.exports={PerMessageDeflate:$br}});var fti=H((Gau,pti)=>{"use strict";var{Writable:jma}=wt("node:stream"),zma=wt("node:assert"),{parserStates:sV,opcodes:zwe,states:qma,emptyBuffer:sti,sentCloseFrameState:oti}=yhe(),{kReadyState:$ma,kSentClose:ati,kResponse:cti,kReceivedClose:lti}=QYe(),{channels:Nmt}=gwe(),{isValidStatusCode:eCa,isValidOpcode:tCa,failWebsocketConnection:LM,websocketMessageReceived:uti,utf8Decode:rCa,isControlFrame:gti,isTextBinaryFrame:eEr,isContinuationFrame:nCa}=UYe(),{WebsocketFrameSend:Ati}=vmt(),{closeWebSocketConnection:dti}=qbr(),{PerMessageDeflate:iCa}=iti(),tEr=class extends jma{#e=[];#t=0;#n=!1;#r=sV.INFO;#i={};#s=[];#o;constructor(t,r){super(),this.ws=t,this.#o=r??new Map,this.#o.has("permessage-deflate")&&this.#o.set("permessage-deflate",new iCa(r))}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.#n=!0,this.run(n)}run(t){for(;this.#n;)if(this.#r===sV.INFO){if(this.#t<2)return t();let r=this.consume(2),n=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,l=!n&&a!==zwe.CONTINUATION,A=r[1]&127,f=r[0]&64,I=r[0]&32,C=r[0]&16;if(!tCa(a))return LM(this.ws,"Invalid opcode received"),t();if(o)return LM(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#o.has("permessage-deflate")){LM(this.ws,"Expected RSV1 to be clear.");return}if(I!==0||C!==0){LM(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(l&&!eEr(a)){LM(this.ws,"Invalid frame type was fragmented.");return}if(eEr(a)&&this.#s.length>0){LM(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&l){LM(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((A>125||l)&>i(a)){LM(this.ws,"Control frame either too large or fragmented");return}if(nCa(a)&&this.#s.length===0&&!this.#i.compressed){LM(this.ws,"Unexpected continuation frame");return}A<=125?(this.#i.payloadLength=A,this.#r=sV.READ_DATA):A===126?this.#r=sV.PAYLOADLENGTH_16:A===127&&(this.#r=sV.PAYLOADLENGTH_64),eEr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=n,this.#i.fragmented=l}else if(this.#r===sV.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#r=sV.READ_DATA}else if(this.#r===sV.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){LM(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(n<<8)+a,this.#r=sV.READ_DATA}else if(this.#r===sV.READ_DATA){if(this.#t{if(n){dti(this.ws,1007,n.message,n.message.length);return}if(this.#s.push(a),!this.#i.fin){this.#r=sV.INFO,this.#n=!0,this.run(t);return}uti(this.ws,this.#i.binaryType,Buffer.concat(this.#s)),this.#n=!0,this.#r=sV.INFO,this.#s.length=0,this.run(t)}),this.#n=!1;break}else{if(this.#s.push(r),!this.#i.fragmented&&this.#i.fin){let n=Buffer.concat(this.#s);uti(this.ws,this.#i.binaryType,n),this.#s.length=0}this.#r=sV.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return sti;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t){zma(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!eCa(r))return{code:1002,reason:"Invalid status code",error:!0};let n=t.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=rCa(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:n}=this.#i;if(r===zwe.CLOSE){if(n===1)return LM(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return dti(this.ws,a,o,o.length),LM(this.ws,o),!1}if(this.ws[ati]!==oti.SENT){let a=sti;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new Ati(a);this.ws[cti].socket.write(o.createFrame(zwe.CLOSE),l=>{l||(this.ws[ati]=oti.SENT)})}return this.ws[$ma]=qma.CLOSING,this.ws[lti]=!0,!1}else if(r===zwe.PING){if(!this.ws[lti]){let a=new Ati(t);this.ws[cti].socket.write(a.createFrame(zwe.PONG)),Nmt.ping.hasSubscribers&&Nmt.ping.publish({payload:t})}}else r===zwe.PONG&&Nmt.pong.hasSubscribers&&Nmt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};pti.exports={ByteParser:tEr}});var _ti=H((Fau,Cti)=>{"use strict";var{WebsocketFrameSend:sCa}=vmt(),{opcodes:Iti,sendHints:qwe}=yhe(),oCa=pyr(),hti=Buffer[Symbol.species],rEr=class{#e=new oCa;#t=!1;#n;constructor(t){this.#n=t}add(t,r,n){if(n!==qwe.blob){let o=mti(t,n);if(!this.#t)this.#n.write(o,r);else{let l={promise:null,callback:r,frame:o};this.#e.push(l)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=mti(o,n)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#n.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function mti(e,t){return new sCa(aCa(e,t)).createFrame(t===qwe.string?Iti.TEXT:Iti.BINARY)}function aCa(e,t){switch(t){case qwe.string:return Buffer.from(e);case qwe.arrayBuffer:case qwe.blob:return new hti(e);case qwe.typedArray:return new hti(e.buffer,e.byteOffset,e.byteLength)}}Cti.exports={SendQueue:rEr}});var Rti=H((Zau,Tti)=>{"use strict";var{webidl:aI}=kk(),{URLSerializer:cCa}=eV(),{environmentSettingsObject:yti}=qW(),{staticPropertyDescriptors:mae,states:qYe,sentCloseFrameState:lCa,sendHints:Dmt}=yhe(),{kWebSocketURL:bti,kReadyState:nEr,kController:uCa,kBinaryType:kmt,kResponse:Eti,kSentClose:gCa,kByteParser:ACa}=QYe(),{isConnecting:dCa,isEstablished:pCa,isClosing:fCa,isValidSubprotocol:ICa,fireEvent:Sti}=UYe(),{establishWebSocketConnection:hCa,closeWebSocketConnection:vti}=qbr(),{ByteParser:mCa}=fti(),{kEnumerableProperty:VM,isBlobLike:Bti}=Em(),{getGlobalDispatcher:CCa}=Jht(),{types:wti}=wt("node:util"),{ErrorEvent:_Ca,CloseEvent:yCa}=Uwe(),{SendQueue:bCa}=_ti(),iO=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";#i;constructor(t,r=[]){super();let n="WebSocket constructor";aI.argumentLengthCheck(arguments,1,n);let a=aI.converters["DOMString or sequence or WebSocketInit"](r,n,"options");t=aI.converters.USVString(t,n,"url"),r=a.protocols;let o=yti.settingsObject.baseUrl,l;try{l=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(l.protocol==="http:"?l.protocol="ws:":l.protocol==="https:"&&(l.protocol="wss:"),l.protocol!=="ws:"&&l.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError");if(l.hash||l.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>ICa(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[bti]=new URL(l.href);let A=yti.settingsObject;this[uCa]=hCa(l,r,A,this,(f,I)=>this.#s(f,I),a),this[nEr]=e.CONNECTING,this[gCa]=lCa.NOT_SENT,this[kmt]="blob"}close(t=void 0,r=void 0){aI.brandCheck(this,e);let n="WebSocket.close";if(t!==void 0&&(t=aI.converters["unsigned short"](t,n,"code",{clamp:!0})),r!==void 0&&(r=aI.converters.USVString(r,n,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");vti(this,t,r,a)}send(t){aI.brandCheck(this,e);let r="WebSocket.send";if(aI.argumentLengthCheck(arguments,1,r),t=aI.converters.WebSocketSendData(t,r,"data"),dCa(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!pCa(this)||fCa(this)))if(typeof t=="string"){let n=Buffer.byteLength(t);this.#t+=n,this.#i.add(t,()=>{this.#t-=n},Dmt.string)}else wti.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},Dmt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},Dmt.typedArray)):Bti(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},Dmt.blob))}get readyState(){return aI.brandCheck(this,e),this[nEr]}get bufferedAmount(){return aI.brandCheck(this,e),this.#t}get url(){return aI.brandCheck(this,e),cCa(this[bti])}get extensions(){return aI.brandCheck(this,e),this.#r}get protocol(){return aI.brandCheck(this,e),this.#n}get onopen(){return aI.brandCheck(this,e),this.#e.open}set onopen(t){aI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return aI.brandCheck(this,e),this.#e.error}set onerror(t){aI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return aI.brandCheck(this,e),this.#e.close}set onclose(t){aI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return aI.brandCheck(this,e),this.#e.message}set onmessage(t){aI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return aI.brandCheck(this,e),this[kmt]}set binaryType(t){aI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[kmt]="blob":this[kmt]=t}#s(t,r){this[Eti]=t;let n=new mCa(this,r);n.on("drain",ECa),n.on("error",SCa.bind(this)),t.socket.ws=this,this[ACa]=n,this.#i=new bCa(t.socket),this[nEr]=qYe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#r=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#n=o),Sti("open",this)}};iO.CONNECTING=iO.prototype.CONNECTING=qYe.CONNECTING;iO.OPEN=iO.prototype.OPEN=qYe.OPEN;iO.CLOSING=iO.prototype.CLOSING=qYe.CLOSING;iO.CLOSED=iO.prototype.CLOSED=qYe.CLOSED;Object.defineProperties(iO.prototype,{CONNECTING:mae,OPEN:mae,CLOSING:mae,CLOSED:mae,url:VM,readyState:VM,bufferedAmount:VM,onopen:VM,onerror:VM,onclose:VM,close:VM,onmessage:VM,binaryType:VM,send:VM,extensions:VM,protocol:VM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(iO,{CONNECTING:mae,OPEN:mae,CLOSING:mae,CLOSED:mae});aI.converters["sequence"]=aI.sequenceConverter(aI.converters.DOMString);aI.converters["DOMString or sequence"]=function(e,t,r){return aI.util.Type(e)==="Object"&&Symbol.iterator in e?aI.converters["sequence"](e):aI.converters.DOMString(e,t,r)};aI.converters.WebSocketInit=aI.dictionaryConverter([{key:"protocols",converter:aI.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:aI.converters.any,defaultValue:()=>CCa()},{key:"headers",converter:aI.nullableConverter(aI.converters.HeadersInit)}]);aI.converters["DOMString or sequence or WebSocketInit"]=function(e){return aI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?aI.converters.WebSocketInit(e):{protocols:aI.converters["DOMString or sequence"](e)}};aI.converters.WebSocketSendData=function(e){if(aI.util.Type(e)==="Object"){if(Bti(e))return aI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||wti.isArrayBuffer(e))return aI.converters.BufferSource(e)}return aI.converters.USVString(e)};function ECa(){this.ws[Eti].socket.resume()}function SCa(e){let t,r;e instanceof yCa?(t=e.reason,r=e.code):t=e.message,Sti("error",this,()=>new _Ca("error",{error:e,message:t})),vti(this,r)}Tti.exports={WebSocket:iO}});var iEr=H((Lau,Nti)=>{"use strict";function vCa(e){return e.indexOf("\0")===-1}function BCa(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function wCa(e){return new Promise(t=>{setTimeout(t,e).unref()})}Nti.exports={isValidLastEventId:vCa,isASCIINumber:BCa,delay:wCa}});var Gti=H((Vau,xti)=>{"use strict";var{Transform:TCa}=wt("node:stream"),{isASCIINumber:Dti,isValidLastEventId:kti}=iEr(),U$=[239,187,191],sEr=10,xmt=13,RCa=58,NCa=32,oEr=class extends TCa{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,n){if(t.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===U$[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]&&this.buffer[2]===U$[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]&&this.buffer[2]===U$[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&Dti(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&kti(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};xti.exports={EventSourceStream:oEr}});var Mti=H((Pau,Oti)=>{"use strict";var{pipeline:DCa}=wt("node:stream"),{fetching:kCa}=OYe(),{makeRequest:xCa}=Mwe(),{webidl:Cae}=kk(),{EventSourceStream:GCa}=Gti(),{parseMIMEType:FCa}=eV(),{createFastMessageEvent:ZCa}=Uwe(),{isNetworkError:Fti}=PYe(),{delay:LCa}=iEr(),{kEnumerableProperty:bhe}=Em(),{environmentSettingsObject:Zti}=qW(),Lti=!1,Vti=3e3,$Ye=0,Pti=1,eQe=2,VCa="anonymous",PCa="use-credentials",$we=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#n=!1;#r=$Ye;#i=null;#s=null;#o;#g;constructor(t,r={}){super();let n="EventSource constructor";Cae.argumentLengthCheck(arguments,1,n),Lti||(Lti=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=Cae.converters.USVString(t,n,"url"),r=Cae.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#o=r.dispatcher,this.#g={lastEventId:"",reconnectionTime:Vti};let a=Zti,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#g.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let l=VCa;r.withCredentials&&(l=PCa,this.#n=!0);let A={redirect:"follow",keepalive:!0,mode:"cors",credentials:l==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};A.client=Zti.settingsObject,A.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],A.cache="no-store",A.initiator="other",A.urlList=[new URL(this.#t)],this.#i=xCa(A),this.#l()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#l(){if(this.#r===eQe)return;this.#r=$Ye;let t={request:this.#i,dispatcher:this.#o},r=n=>{Fti(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#u()};t.processResponseEndOfBody=r,t.processResponse=n=>{if(Fti(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#u();return}let a=n.headersList.get("content-type",!0),o=a!==null?FCa(a):"failure",l=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||l===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#r=Pti,this.dispatchEvent(new Event("open")),this.#g.origin=n.urlList[n.urlList.length-1].origin;let A=new GCa({eventSourceSettings:this.#g,push:f=>{this.dispatchEvent(ZCa(f.type,f.options))}});DCa(n.body.stream,A,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#s=kCa(t)}async#u(){this.#r!==eQe&&(this.#r=$Ye,this.dispatchEvent(new Event("error")),await LCa(this.#g.reconnectionTime),this.#r===$Ye&&(this.#g.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#g.lastEventId,!0),this.#l()))}close(){Cae.brandCheck(this,e),this.#r!==eQe&&(this.#r=eQe,this.#s.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},Wti={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:$Ye,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:Pti,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:eQe,writable:!1}};Object.defineProperties($we,Wti);Object.defineProperties($we.prototype,Wti);Object.defineProperties($we.prototype,{close:bhe,onerror:bhe,onmessage:bhe,onopen:bhe,readyState:bhe,url:bhe,withCredentials:bhe});Cae.converters.EventSourceInitDict=Cae.dictionaryConverter([{key:"withCredentials",converter:Cae.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:Cae.converters.any}]);Oti.exports={EventSource:$we,defaultReconnectionTime:Vti}});var Xti=H((Wau,Bf)=>{"use strict";var WCa=SYe(),Hti=tYe(),OCa=Nwe(),MCa=$7n(),HCa=Dwe(),YCa=kyr(),QCa=Izn(),XCa=bzn(),Yti=Y0(),Fmt=Em(),{InvalidArgumentError:Gmt}=Yti,eTe=cqn(),JCa=nYe(),UCa=dbr(),KCa=Hqn(),jCa=Ibr(),zCa=ebr(),qCa=Lht(),{getGlobalDispatcher:Qti,setGlobalDispatcher:$Ca}=Jht(),e_a=_br(),t_a=Bht(),r_a=wht();Object.assign(Hti.prototype,eTe);Bf.exports.Dispatcher=Hti;Bf.exports.Client=WCa;Bf.exports.Pool=OCa;Bf.exports.BalancedPool=MCa;Bf.exports.Agent=HCa;Bf.exports.ProxyAgent=YCa;Bf.exports.EnvHttpProxyAgent=QCa;Bf.exports.RetryAgent=XCa;Bf.exports.RetryHandler=qCa;Bf.exports.DecoratorHandler=e_a;Bf.exports.RedirectHandler=t_a;Bf.exports.createRedirectInterceptor=r_a;Bf.exports.interceptors={redirect:jqn(),retry:qqn(),dump:e$n()};Bf.exports.buildConnector=JCa;Bf.exports.errors=Yti;Bf.exports.util={parseHeaders:Fmt.parseHeaders,headerNameToString:Fmt.headerNameToString};function tQe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new Gmt("invalid url");if(r!=null&&typeof r!="object")throw new Gmt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new Gmt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(Fmt.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=Fmt.parseURL(t);let{agent:a,dispatcher:o=Qti()}=r;if(a)throw new Gmt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Bf.exports.setGlobalDispatcher=$Ca;Bf.exports.getGlobalDispatcher=Qti;var n_a=OYe().fetch;Bf.exports.fetch=async function(t,r=void 0){try{return await n_a(t,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}};Bf.exports.Headers=fhe().Headers;Bf.exports.Response=PYe().Response;Bf.exports.Request=Mwe().Request;Bf.exports.FormData=uYe().FormData;Bf.exports.File=globalThis.File??wt("node:buffer").File;Bf.exports.FileReader=pei().FileReader;var{setGlobalOrigin:i_a,getGlobalOrigin:s_a}=G0r();Bf.exports.setGlobalOrigin=i_a;Bf.exports.getGlobalOrigin=s_a;var{CacheStorage:o_a}=Eei(),{kConstruct:a_a}=pmt();Bf.exports.caches=new o_a(a_a);var{deleteCookie:c_a,getCookies:l_a,getSetCookies:u_a,setCookie:g_a}=Fei();Bf.exports.deleteCookie=c_a;Bf.exports.getCookies=l_a;Bf.exports.getSetCookies=u_a;Bf.exports.setCookie=g_a;var{parseMIMEType:A_a,serializeAMimeType:d_a}=eV();Bf.exports.parseMIMEType=A_a;Bf.exports.serializeAMimeType=d_a;var{CloseEvent:p_a,ErrorEvent:f_a,MessageEvent:I_a}=Uwe();Bf.exports.WebSocket=Rti().WebSocket;Bf.exports.CloseEvent=p_a;Bf.exports.ErrorEvent=f_a;Bf.exports.MessageEvent=I_a;Bf.exports.request=tQe(eTe.request);Bf.exports.stream=tQe(eTe.stream);Bf.exports.pipeline=tQe(eTe.pipeline);Bf.exports.connect=tQe(eTe.connect);Bf.exports.upgrade=tQe(eTe.upgrade);Bf.exports.MockClient=UCa;Bf.exports.MockPool=jCa;Bf.exports.MockAgent=KCa;Bf.exports.mockErrors=zCa;var{EventSource:h_a}=Mti();Bf.exports.EventSource=h_a});var Kti=H(lT=>{"use strict";var m_a=lT&&lT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),C_a=lT&&lT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__a=lT&&lT.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&m_a(t,e,r);return C_a(t,e),t},y_a=lT&&lT.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(lT,"__esModule",{value:!0});lT.getApiBaseUrl=lT.getProxyFetch=lT.getProxyAgentDispatcher=lT.getProxyAgent=lT.getAuthString=void 0;var Jti=__a(cjn()),b_a=Xti();function E_a(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}lT.getAuthString=E_a;function S_a(e){return new Jti.HttpClient().getAgent(e)}lT.getProxyAgent=S_a;function Uti(e){return new Jti.HttpClient().getAgentDispatcher(e)}lT.getProxyAgentDispatcher=Uti;function v_a(e){let t=Uti(e);return(n,a)=>y_a(this,void 0,void 0,function*(){return(0,b_a.fetch)(n,Object.assign(Object.assign({},a),{dispatcher:t}))})}lT.getProxyFetch=v_a;function B_a(){return process.env.GITHUB_API_URL||"https://api.github.com"}lT.getApiBaseUrl=B_a});var rQe=H(aEr=>{"use strict";Object.defineProperty(aEr,"__esModule",{value:!0});function w_a(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}aEr.getUserAgent=w_a});var qti=H((Hau,zti)=>{zti.exports=jti;function jti(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return jti.bind(null,e,o,a,n)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,n)},r)():r(n)})}});var eri=H((Yau,$ti)=>{$ti.exports=T_a;function T_a(e,t,r,n){var a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=function(o,l){return Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))}),t==="after"&&(n=function(o,l){var A;return Promise.resolve().then(o.bind(null,l)).then(function(f){return A=f,a(A,l)}).then(function(){return A})}),t==="error"&&(n=function(o,l){return Promise.resolve().then(o.bind(null,l)).catch(function(A){return a(A,l)})}),e.registry[r].push({hook:n,orig:a})}});var rri=H((Qau,tri)=>{tri.exports=R_a;function R_a(e,t,r){if(e.registry[t]){var n=e.registry[t].map(function(a){return a.orig}).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}}});var lri=H((Xau,nQe)=>{var ori=qti(),N_a=eri(),D_a=rri(),nri=Function.bind,iri=nri.bind(nri);function ari(e,t,r){var n=iri(D_a,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=iri(N_a,null).apply(null,o)})}function k_a(){var e="h",t={registry:{}},r=ori.bind(null,t,e);return ari(r,t,e),r}function cri(){var e={registry:{}},t=ori.bind(null,e);return ari(t,e),t}var sri=!1;function tTe(){return sri||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),sri=!0),cri()}tTe.Singular=k_a.bind();tTe.Collection=cri.bind();nQe.exports=tTe;nQe.exports.Hook=tTe;nQe.exports.Singular=tTe.Singular;nQe.exports.Collection=tTe.Collection});var mri=H((Jau,hri)=>{"use strict";var uEr=Object.defineProperty,x_a=Object.getOwnPropertyDescriptor,G_a=Object.getOwnPropertyNames,F_a=Object.prototype.hasOwnProperty,Z_a=(e,t)=>{for(var r in t)uEr(e,r,{get:t[r],enumerable:!0})},L_a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of G_a(t))!F_a.call(e,a)&&a!==r&&uEr(e,a,{get:()=>t[a],enumerable:!(n=x_a(t,a))||n.enumerable});return e},V_a=e=>L_a(uEr({},"__esModule",{value:!0}),e),Ari={};Z_a(Ari,{endpoint:()=>$_a});hri.exports=V_a(Ari);var P_a=rQe(),W_a="9.0.5",O_a=`octokit-endpoint.js/${W_a} ${(0,P_a.getUserAgent)()}`,M_a={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":O_a},mediaType:{format:""}};function H_a(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function Y_a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function dri(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{Y_a(t[n])?n in e?r[n]=dri(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function uri(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function lEr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=H_a(r.headers),uri(r),uri(r.headers);let n=dri(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function Q_a(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var X_a=/\{[^}]+\}/g;function J_a(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function U_a(e){let t=e.match(X_a);return t?t.map(J_a).reduce((r,n)=>r.concat(n),[]):[]}function gri(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function pri(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function nTe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function iQe(e,t,r){return t=e==="+"||e==="#"?pri(t):nTe(t),r?nTe(r)+"="+t:t}function rTe(e){return e!=null}function cEr(e){return e===";"||e==="&"||e==="?"}function K_a(e,t,r,n){var a=e[r],o=[];if(rTe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(iQe(t,a,cEr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(rTe).forEach(function(l){o.push(iQe(t,l,cEr(t)?r:""))}):Object.keys(a).forEach(function(l){rTe(a[l])&&o.push(iQe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(rTe).forEach(function(A){l.push(iQe(t,A))}):Object.keys(a).forEach(function(A){rTe(a[A])&&(l.push(nTe(A)),l.push(iQe(t,a[A].toString())))}),cEr(t)?o.push(nTe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?rTe(a)&&o.push(nTe(r)):a===""&&(t==="&"||t==="?")?o.push(nTe(r)+"="):a===""&&o.push("");return o}function j_a(e){return{expand:z_a.bind(null,e)}}function z_a(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(K_a(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return pri(o)}),e==="/"?e:e.replace(/\/$/,"")}function fri(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=gri(e,["method","baseUrl","url","headers","request","mediaType"]),l=U_a(r);r=j_a(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=gri(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=Q_a(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function q_a(e,t,r){return fri(lEr(e,t,r))}function Iri(e,t){let r=lEr(e,t),n=q_a.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:Iri.bind(null,r),merge:lEr.bind(null,r),parse:fri})}var $_a=Iri(null,M_a)});var Cri=H(AEr=>{"use strict";Object.defineProperty(AEr,"__esModule",{value:!0});var gEr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};AEr.Deprecation=gEr});var vri=H((Kau,Sri)=>{"use strict";var e0a=Object.create,Zmt=Object.defineProperty,t0a=Object.getOwnPropertyDescriptor,r0a=Object.getOwnPropertyNames,n0a=Object.getPrototypeOf,i0a=Object.prototype.hasOwnProperty,s0a=(e,t)=>{for(var r in t)Zmt(e,r,{get:t[r],enumerable:!0})},yri=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of r0a(t))!i0a.call(e,a)&&a!==r&&Zmt(e,a,{get:()=>t[a],enumerable:!(n=t0a(t,a))||n.enumerable});return e},o0a=(e,t,r)=>(r=e!=null?e0a(n0a(e)):{},yri(t||!e||!e.__esModule?Zmt(r,"default",{value:e,enumerable:!0}):r,e)),a0a=e=>yri(Zmt({},"__esModule",{value:!0}),e),bri={};s0a(bri,{RequestError:()=>u0a});Sri.exports=a0a(bri);var _ri=Cri(),Eri=o0a(hgt()),c0a=(0,Eri.default)(e=>console.warn(e)),l0a=(0,Eri.default)(e=>console.warn(e)),u0a=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let n;"headers"in r&&typeof r.headers<"u"&&(n=r.headers),"response"in r&&(this.response=r.response,n=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return c0a(new _ri.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return l0a(new _ri.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),n||{}}})}}});var oQe=H((zau,Tri)=>{"use strict";var fEr=Object.defineProperty,g0a=Object.getOwnPropertyDescriptor,A0a=Object.getOwnPropertyNames,d0a=Object.prototype.hasOwnProperty,p0a=(e,t)=>{for(var r in t)fEr(e,r,{get:t[r],enumerable:!0})},f0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of A0a(t))!d0a.call(e,a)&&a!==r&&fEr(e,a,{get:()=>t[a],enumerable:!(n=g0a(t,a))||n.enumerable});return e},I0a=e=>f0a(fEr({},"__esModule",{value:!0}),e),wri={};p0a(wri,{request:()=>E0a});Tri.exports=I0a(wri);var h0a=mri(),m0a=rQe(),C0a="8.4.0";function _0a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var sQe=vri();function y0a(e){return e.arrayBuffer()}function Bri(e){var t,r,n,a;let o=e.request&&e.request.log?e.request.log:console,l=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(_0a(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let A={},f,I,{fetch:C}=globalThis;if((r=e.request)!=null&&r.fetch&&(C=e.request.fetch),!C)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return C(e.url,{method:e.method,body:e.body,redirect:(n=e.request)==null?void 0:n.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async b=>{I=b.url,f=b.status;for(let E of b.headers)A[E[0]]=E[1];if("deprecation"in A){let E=A.link&&A.link.match(/<([^>]+)>; rel="deprecation"/),N=E&&E.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${A.sunset}${N?`. See ${N}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new sQe.RequestError(b.statusText,f,{response:{url:I,status:f,headers:A,data:void 0},request:e})}if(f===304)throw new sQe.RequestError("Not modified",f,{response:{url:I,status:f,headers:A,data:await dEr(b)},request:e});if(f>=400){let E=await dEr(b);throw new sQe.RequestError(b0a(E),f,{response:{url:I,status:f,headers:A,data:E},request:e})}return l?await dEr(b):b.body}}).then(b=>({status:f,url:I,headers:A,data:b})).catch(b=>{if(b instanceof sQe.RequestError)throw b;if(b.name==="AbortError")throw b;let E=b.message;throw b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause)),new sQe.RequestError(E,500,{request:e})})}async function dEr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():y0a(e)}function b0a(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function pEr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return Bri(r.parse(l));let A=(f,I)=>Bri(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:pEr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:pEr.bind(null,r)})}var E0a=pEr(h0a.endpoint,{headers:{"user-agent":`octokit-request.js/${C0a} ${(0,m0a.getUserAgent)()}`}})});var xri=H((ecu,kri)=>{"use strict";var IEr=Object.defineProperty,S0a=Object.getOwnPropertyDescriptor,v0a=Object.getOwnPropertyNames,B0a=Object.prototype.hasOwnProperty,w0a=(e,t)=>{for(var r in t)IEr(e,r,{get:t[r],enumerable:!0})},T0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of v0a(t))!B0a.call(e,a)&&a!==r&&IEr(e,a,{get:()=>t[a],enumerable:!(n=S0a(t,a))||n.enumerable});return e},R0a=e=>T0a(IEr({},"__esModule",{value:!0}),e),Nri={};w0a(Nri,{GraphqlResponseError:()=>Dri,graphql:()=>L0a,withCustomRequest:()=>V0a});kri.exports=R0a(Nri);var N0a=oQe(),D0a=rQe(),k0a="7.1.0",qau=oQe(),$au=oQe();function x0a(e){return`Request failed due to following response errors: +`.trim())}};Kqn.exports=Ebr});var Kht=H((Kau,e$n)=>{"use strict";var zqn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:Rfa}=Y0(),Nfa=kwe();$qn()===void 0&&qqn(new Nfa);function qqn(e){if(!e||typeof e.dispatch!="function")throw new Rfa("Argument agent must implement Agent");Object.defineProperty(globalThis,zqn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function $qn(){return globalThis[zqn]}e$n.exports={setGlobalDispatcher:qqn,getGlobalDispatcher:$qn}});var Sbr=H((zau,t$n)=>{"use strict";t$n.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var n$n=H((qau,r$n)=>{"use strict";var Dfa=Tht();r$n.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:l=t,...A}=a;if(!l)return r(a,o);let f=new Dfa(r,l,a,o);return r(A,f)}}});var s$n=H(($au,i$n)=>{"use strict";var kfa=Pht();i$n.exports=e=>t=>function(n,a){return t(n,new kfa({...n,retryOptions:{...e,...n.retryOptions}},{handler:a,dispatch:t}))}});var a$n=H((ecu,o$n)=>{"use strict";var xfa=Em(),{InvalidArgumentError:Gfa,RequestAbortedError:Ffa}=Y0(),Zfa=Sbr(),vbr=class extends Zfa{#e=1024*1024;#t=null;#n=!1;#r=!1;#i=0;#s=null;#o=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new Gfa("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#o=r}onConnect(t){this.#t=t,this.#o.onConnect(this.#g.bind(this))}#g(t){this.#r=!0,this.#s=t}onHeaders(t,r,n,a){let l=xfa.parseHeaders(r)["content-length"];if(l!=null&&l>this.#e)throw new Ffa(`Response size (${l}) larger than maxSize (${this.#e})`);return this.#r?!0:this.#o.onHeaders(t,r,n,a)}onError(t){this.#n||(t=this.#s??t,this.#o.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#n=!0,this.#r?this.#o.onError(this.#s):this.#o.onComplete([])),!0}onComplete(t){if(!this.#n){if(this.#r){this.#o.onError(this.reason);return}this.#o.onComplete(t)}}};function Lfa({maxSize:e}={maxSize:1024*1024}){return t=>function(n,a){let{dumpMaxSize:o=e}=n,l=new vbr({maxSize:o},a);return t(n,l)}}o$n.exports=Lfa});var Ihe=H((tcu,p$n)=>{"use strict";var{kConstruct:Vfa}=B2(),{kEnumerableProperty:Owe}=Em(),{iteratorMixin:Pfa,isValidHeaderName:PYe,isValidHeaderValue:l$n}=qW(),{webidl:__}=kk(),Bbr=wt("node:assert"),jht=wt("node:util"),aT=Symbol("headers map"),eO=Symbol("headers map sorted");function c$n(e){return e===10||e===13||e===9||e===32}function u$n(e){let t=0,r=e.length;for(;r>t&&c$n(e.charCodeAt(r-1));)--r;for(;r>t&&c$n(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function g$n(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function wbr(e,t,r){if(r=u$n(r),PYe(t)){if(!l$n(r))throw __.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw __.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(d$n(e)==="immutable")throw new TypeError("immutable");return Tbr(e).append(t,r,!1)}function A$n(e,t){return e[0]>1),r[I][0]<=C[0]?f=I+1:A=I;if(o!==I){for(l=o;l>f;)r[l]=r[--l];r[f]=C}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:a,1:{value:o}}of this[aT])r[n++]=[a,o],Bbr(o!==null);return r.sort(A$n)}}},VX=class e{#e;#t;constructor(t=void 0){t!==Vfa&&(this.#t=new zht,this.#e="none",t!==void 0&&(t=__.converters.HeadersInit(t,"Headers contructor","init"),g$n(this,t)))}append(t,r){__.brandCheck(this,e),__.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return t=__.converters.ByteString(t,n,"name"),r=__.converters.ByteString(r,n,"value"),wbr(this,t,r)}delete(t){if(__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.delete"),t=__.converters.ByteString(t,"Headers.delete","name"),!PYe(t))throw __.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=__.converters.ByteString(t,r,"name"),!PYe(t))throw __.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=__.converters.ByteString(t,r,"name"),!PYe(t))throw __.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){__.brandCheck(this,e),__.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(t=__.converters.ByteString(t,n,"name"),r=__.converters.ByteString(r,n,"value"),r=u$n(r),PYe(t)){if(!l$n(r))throw __.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw __.errors.invalidArgument({prefix:n,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){__.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[eO](){if(this.#t[eO])return this.#t[eO];let t=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[eO]=r;for(let a=0;a>"](e,t,r,n.bind(e)):__.converters["record"](e,t,r)}throw __.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};p$n.exports={fill:g$n,compareHeaderName:A$n,Headers:VX,HeadersList:zht,getHeadersGuard:d$n,setHeadersGuard:Wfa,setHeadersList:Ofa,getHeadersList:Tbr}});var OYe=H((rcu,S$n)=>{"use strict";var{Headers:_$n,HeadersList:f$n,fill:Mfa,getHeadersGuard:Hfa,setHeadersGuard:y$n,setHeadersList:b$n}=Ihe(),{extractBody:I$n,cloneBody:Yfa,mixinBody:Qfa,hasFinalizationRegistry:Xfa,streamRegistry:Jfa,bodyUnusable:Ufa}=pYe(),Rbr=Em(),h$n=wt("node:util"),{kEnumerableProperty:tO}=Rbr,{isValidReasonPhrase:Kfa,isCancelled:jfa,isAborted:zfa,isBlobLike:qfa,serializeJavascriptValueToJSONString:$fa,isErrorLike:eIa,isomorphicEncode:tIa,environmentSettingsObject:rIa}=qW(),{redirectStatusSet:nIa,nullBodyStatus:iIa}=oYe(),{kState:Mv,kHeaders:X$}=iae(),{webidl:Oh}=kk(),{FormData:sIa}=AYe(),{URLSerializer:m$n}=eV(),{kConstruct:$ht}=B2(),Nbr=wt("node:assert"),{types:oIa}=wt("node:util"),aIa=new TextEncoder("utf-8"),hhe=class e{static error(){return WYe(emt(),"immutable")}static json(t,r={}){Oh.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=Oh.converters.ResponseInit(r));let n=aIa.encode($fa(t)),a=I$n(n),o=WYe(Mwe({}),"response");return C$n(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){Oh.argumentLengthCheck(arguments,1,"Response.redirect"),t=Oh.converters.USVString(t),r=Oh.converters["unsigned short"](r);let n;try{n=new URL(t,rIa.settingsObject.baseUrl)}catch(l){throw new TypeError(`Failed to parse URL from ${t}`,{cause:l})}if(!nIa.has(r))throw new RangeError(`Invalid status code ${r}`);let a=WYe(Mwe({}),"immutable");a[Mv].status=r;let o=tIa(m$n(n));return a[Mv].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===$ht)return;t!==null&&(t=Oh.converters.BodyInit(t)),r=Oh.converters.ResponseInit(r),this[Mv]=Mwe({}),this[X$]=new _$n($ht),y$n(this[X$],"response"),b$n(this[X$],this[Mv].headersList);let n=null;if(t!=null){let[a,o]=I$n(t);n={body:a,type:o}}C$n(this,r,n)}get type(){return Oh.brandCheck(this,e),this[Mv].type}get url(){Oh.brandCheck(this,e);let t=this[Mv].urlList,r=t[t.length-1]??null;return r===null?"":m$n(r,!0)}get redirected(){return Oh.brandCheck(this,e),this[Mv].urlList.length>1}get status(){return Oh.brandCheck(this,e),this[Mv].status}get ok(){return Oh.brandCheck(this,e),this[Mv].status>=200&&this[Mv].status<=299}get statusText(){return Oh.brandCheck(this,e),this[Mv].statusText}get headers(){return Oh.brandCheck(this,e),this[X$]}get body(){return Oh.brandCheck(this,e),this[Mv].body?this[Mv].body.stream:null}get bodyUsed(){return Oh.brandCheck(this,e),!!this[Mv].body&&Rbr.isDisturbed(this[Mv].body.stream)}clone(){if(Oh.brandCheck(this,e),Ufa(this))throw Oh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=Dbr(this[Mv]);return WYe(t,Hfa(this[X$]))}[h$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${h$n.formatWithOptions(r,n)}`}};Qfa(hhe);Object.defineProperties(hhe.prototype,{type:tO,url:tO,status:tO,ok:tO,redirected:tO,statusText:tO,headers:tO,clone:tO,body:tO,bodyUsed:tO,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(hhe,{json:tO,redirect:tO,error:tO});function Dbr(e){if(e.internalResponse)return E$n(Dbr(e.internalResponse),e.type);let t=Mwe({...e,body:null});return e.body!=null&&(t.body=Yfa(t,e.body)),t}function Mwe(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new f$n(e?.headersList):new f$n,urlList:e?.urlList?[...e.urlList]:[]}}function emt(e){let t=eIa(e);return Mwe({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function cIa(e){return e.type==="error"&&e.status===0}function qht(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return Nbr(!(n in t)),r[n]=a,!0}})}function E$n(e,t){if(t==="basic")return qht(e,{type:"basic",headersList:e.headersList});if(t==="cors")return qht(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return qht(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return qht(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Nbr(!1)}function lIa(e,t=null){return Nbr(jfa(e)),zfa(e)?emt(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):emt(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function C$n(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Kfa(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[Mv].status=t.status),"statusText"in t&&t.statusText!=null&&(e[Mv].statusText=t.statusText),"headers"in t&&t.headers!=null&&Mfa(e[X$],t.headers),r){if(iIa.includes(e.status))throw Oh.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[Mv].body=r.body,r.type!=null&&!e[Mv].headersList.contains("content-type",!0)&&e[Mv].headersList.append("content-type",r.type,!0)}}function WYe(e,t){let r=new hhe($ht);return r[Mv]=e,r[X$]=new _$n($ht),b$n(r[X$],e.headersList),y$n(r[X$],t),Xfa&&e.body?.stream&&Jfa.register(r,new WeakRef(e.body.stream)),r}Oh.converters.ReadableStream=Oh.interfaceConverter(ReadableStream);Oh.converters.FormData=Oh.interfaceConverter(sIa);Oh.converters.URLSearchParams=Oh.interfaceConverter(URLSearchParams);Oh.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?Oh.converters.USVString(e,t,r):qfa(e)?Oh.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||oIa.isArrayBuffer(e)?Oh.converters.BufferSource(e,t,r):Rbr.isFormDataLike(e)?Oh.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?Oh.converters.URLSearchParams(e,t,r):Oh.converters.DOMString(e,t,r)};Oh.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?Oh.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:Oh.converters.XMLHttpRequestBodyInit(e,t,r)};Oh.converters.ResponseInit=Oh.dictionaryConverter([{key:"status",converter:Oh.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:Oh.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:Oh.converters.HeadersInit}]);S$n.exports={isNetworkError:cIa,makeNetworkError:emt,makeResponse:Mwe,makeAppropriateNetworkError:lIa,filterResponse:E$n,Response:hhe,cloneResponse:Dbr,fromInnerResponse:WYe}});var T$n=H((ncu,w$n)=>{"use strict";var{kConnected:v$n,kSize:B$n}=B2(),kbr=class{constructor(t){this.value=t}deref(){return this.value[v$n]===0&&this.value[B$n]===0?void 0:this.value}},xbr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[v$n]===0&&t[B$n]===0&&this.finalizer(r)})}unregister(t){}};w$n.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:kbr,FinalizationRegistry:xbr}):{WeakRef,FinalizationRegistry}}});var Hwe=H((icu,H$n)=>{"use strict";var{extractBody:uIa,mixinBody:gIa,cloneBody:AIa,bodyUnusable:R$n}=pYe(),{Headers:V$n,fill:dIa,HeadersList:imt,setHeadersGuard:Fbr,getHeadersGuard:pIa,setHeadersList:P$n,getHeadersList:N$n}=Ihe(),{FinalizationRegistry:fIa}=T$n()(),rmt=Em(),D$n=wt("node:util"),{isValidHTTPToken:IIa,sameOrigin:k$n,environmentSettingsObject:tmt}=qW(),{forbiddenMethodsSet:hIa,corsSafeListedMethodsSet:mIa,referrerPolicy:CIa,requestRedirect:_Ia,requestMode:yIa,requestCredentials:bIa,requestCache:EIa,requestDuplex:SIa}=oYe(),{kEnumerableProperty:cT,normalizedMethodRecordsBase:vIa,normalizedMethodRecords:BIa}=rmt,{kHeaders:rO,kSignal:nmt,kState:O1,kDispatcher:Gbr}=iae(),{webidl:vf}=kk(),{URLSerializer:wIa}=eV(),{kConstruct:smt}=B2(),TIa=wt("node:assert"),{getMaxListeners:x$n,setMaxListeners:G$n,getEventListeners:RIa,defaultMaxListeners:F$n}=wt("node:events"),NIa=Symbol("abortController"),W$n=new fIa(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),omt=new WeakMap;function Z$n(e){return t;function t(){let r=e.deref();if(r!==void 0){W$n.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let n=omt.get(r.signal);if(n!==void 0){if(n.size!==0){for(let a of n){let o=a.deref();o!==void 0&&o.abort(this.reason)}n.clear()}omt.delete(r.signal)}}}}var L$n=!1,pae=class e{constructor(t,r={}){if(t===smt)return;let n="Request constructor";vf.argumentLengthCheck(arguments,1,n),t=vf.converters.RequestInfo(t,n,"input"),r=vf.converters.RequestInit(r,n,"init");let a=null,o=null,l=tmt.settingsObject.baseUrl,A=null;if(typeof t=="string"){this[Gbr]=r.dispatcher;let X;try{X=new URL(t,l)}catch(ae){throw new TypeError("Failed to parse URL from "+t,{cause:ae})}if(X.username||X.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=amt({urlList:[X]}),o="cors"}else this[Gbr]=r.dispatcher||t[Gbr],TIa(t instanceof e),a=t[O1],A=t[nmt];let f=tmt.settingsObject.origin,I="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&k$n(a.window,f)&&(I=a.window),r.window!=null)throw new TypeError(`'window' option '${I}' must be null`);"window"in r&&(I="no-window"),a=amt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:tmt.settingsObject,window:I,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let C=Object.keys(r).length!==0;if(C&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let X=r.referrer;if(X==="")a.referrer="no-referrer";else{let ae;try{ae=new URL(X,l)}catch(ne){throw new TypeError(`Referrer "${X}" is not a valid URL.`,{cause:ne})}ae.protocol==="about:"&&ae.hostname==="client"||f&&!k$n(ae,tmt.settingsObject.baseUrl)?a.referrer="client":a.referrer=ae}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let b;if(r.mode!==void 0?b=r.mode:b=o,b==="navigate")throw vf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(b!=null&&(a.mode=b),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let X=r.method,ae=BIa[X];if(ae!==void 0)a.method=ae;else{if(!IIa(X))throw new TypeError(`'${X}' is not a valid HTTP method.`);let ne=X.toUpperCase();if(hIa.has(ne))throw new TypeError(`'${X}' HTTP method is unsupported.`);X=vIa[ne]??X,a.method=X}!L$n&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),L$n=!0)}r.signal!==void 0&&(A=r.signal),this[O1]=a;let E=new AbortController;if(this[nmt]=E.signal,A!=null){if(!A||typeof A.aborted!="boolean"||typeof A.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(A.aborted)E.abort(A.reason);else{this[NIa]=E;let X=new WeakRef(E),ae=Z$n(X);try{(typeof x$n=="function"&&x$n(A)===F$n||RIa(A,"abort").length>=F$n)&&G$n(1500,A)}catch{}rmt.addAbortListener(A,ae),W$n.register(E,{signal:A,abort:ae},ae)}}if(this[rO]=new V$n(smt),P$n(this[rO],a.headersList),Fbr(this[rO],"request"),b==="no-cors"){if(!mIa.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);Fbr(this[rO],"request-no-cors")}if(C){let X=N$n(this[rO]),ae=r.headers!==void 0?r.headers:new imt(X);if(X.clear(),ae instanceof imt){for(let{name:ne,value:ce}of ae.rawValues())X.append(ne,ce,!1);X.cookies=ae.cookies}else dIa(this[rO],ae)}let N=t instanceof e?t[O1].body:null;if((r.body!=null||N!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let B=null;if(r.body!=null){let[X,ae]=uIa(r.body,a.keepalive);B=X,ae&&!N$n(this[rO]).contains("content-type",!0)&&this[rO].append("content-type",ae)}let F=B??N;if(F!=null&&F.source==null){if(B!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let Q=F;if(B==null&&N!=null){if(R$n(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let X=new TransformStream;N.stream.pipeThrough(X),Q={source:N.source,length:N.length,stream:X.readable}}this[O1].body=Q}get method(){return vf.brandCheck(this,e),this[O1].method}get url(){return vf.brandCheck(this,e),wIa(this[O1].url)}get headers(){return vf.brandCheck(this,e),this[rO]}get destination(){return vf.brandCheck(this,e),this[O1].destination}get referrer(){return vf.brandCheck(this,e),this[O1].referrer==="no-referrer"?"":this[O1].referrer==="client"?"about:client":this[O1].referrer.toString()}get referrerPolicy(){return vf.brandCheck(this,e),this[O1].referrerPolicy}get mode(){return vf.brandCheck(this,e),this[O1].mode}get credentials(){return this[O1].credentials}get cache(){return vf.brandCheck(this,e),this[O1].cache}get redirect(){return vf.brandCheck(this,e),this[O1].redirect}get integrity(){return vf.brandCheck(this,e),this[O1].integrity}get keepalive(){return vf.brandCheck(this,e),this[O1].keepalive}get isReloadNavigation(){return vf.brandCheck(this,e),this[O1].reloadNavigation}get isHistoryNavigation(){return vf.brandCheck(this,e),this[O1].historyNavigation}get signal(){return vf.brandCheck(this,e),this[nmt]}get body(){return vf.brandCheck(this,e),this[O1].body?this[O1].body.stream:null}get bodyUsed(){return vf.brandCheck(this,e),!!this[O1].body&&rmt.isDisturbed(this[O1].body.stream)}get duplex(){return vf.brandCheck(this,e),"half"}clone(){if(vf.brandCheck(this,e),R$n(this))throw new TypeError("unusable");let t=O$n(this[O1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=omt.get(this.signal);n===void 0&&(n=new Set,omt.set(this.signal,n));let a=new WeakRef(r);n.add(a),rmt.addAbortListener(r.signal,Z$n(a))}return M$n(t,r.signal,pIa(this[rO]))}[D$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${D$n.formatWithOptions(r,n)}`}};gIa(pae);function amt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new imt(e.headersList):new imt}}function O$n(e){let t=amt({...e,body:null});return e.body!=null&&(t.body=AIa(t,e.body)),t}function M$n(e,t,r){let n=new pae(smt);return n[O1]=e,n[nmt]=t,n[rO]=new V$n(smt),P$n(n[rO],e.headersList),Fbr(n[rO],r),n}Object.defineProperties(pae.prototype,{method:cT,url:cT,headers:cT,redirect:cT,clone:cT,signal:cT,duplex:cT,destination:cT,body:cT,bodyUsed:cT,isHistoryNavigation:cT,isReloadNavigation:cT,keepalive:cT,integrity:cT,cache:cT,credentials:cT,attribute:cT,referrerPolicy:cT,referrer:cT,mode:cT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});vf.converters.Request=vf.interfaceConverter(pae);vf.converters.RequestInfo=function(e,t,r){return typeof e=="string"?vf.converters.USVString(e,t,r):e instanceof pae?vf.converters.Request(e,t,r):vf.converters.USVString(e,t,r)};vf.converters.AbortSignal=vf.interfaceConverter(AbortSignal);vf.converters.RequestInit=vf.dictionaryConverter([{key:"method",converter:vf.converters.ByteString},{key:"headers",converter:vf.converters.HeadersInit},{key:"body",converter:vf.nullableConverter(vf.converters.BodyInit)},{key:"referrer",converter:vf.converters.USVString},{key:"referrerPolicy",converter:vf.converters.DOMString,allowedValues:CIa},{key:"mode",converter:vf.converters.DOMString,allowedValues:yIa},{key:"credentials",converter:vf.converters.DOMString,allowedValues:bIa},{key:"cache",converter:vf.converters.DOMString,allowedValues:EIa},{key:"redirect",converter:vf.converters.DOMString,allowedValues:_Ia},{key:"integrity",converter:vf.converters.DOMString},{key:"keepalive",converter:vf.converters.boolean},{key:"signal",converter:vf.nullableConverter(e=>vf.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:vf.converters.any},{key:"duplex",converter:vf.converters.DOMString,allowedValues:SIa},{key:"dispatcher",converter:vf.converters.any}]);H$n.exports={Request:pae,makeRequest:amt,fromInnerRequest:M$n,cloneRequest:O$n}});var HYe=H((scu,iei)=>{"use strict";var{makeNetworkError:_y,makeAppropriateNetworkError:cmt,filterResponse:Zbr,makeResponse:lmt,fromInnerResponse:DIa}=OYe(),{HeadersList:Y$n}=Ihe(),{Request:kIa,cloneRequest:xIa}=Hwe(),fae=wt("node:zlib"),{bytesMatch:GIa,makePolicyContainer:FIa,clonePolicyContainer:ZIa,requestBadPort:LIa,TAOCheck:VIa,appendRequestOriginHeader:PIa,responseLocationURL:WIa,requestCurrentURL:L8,setRequestReferrerPolicyOnRedirect:OIa,tryUpgradeRequestToAPotentiallyTrustworthyURL:MIa,createOpaqueTimingInfo:Obr,appendFetchMetadata:HIa,corsCheck:YIa,crossOriginResourcePolicyCheck:QIa,determineRequestsReferrer:XIa,coarsenedSharedCurrentTime:MYe,createDeferredPromise:JIa,isBlobLike:UIa,sameOrigin:Wbr,isCancelled:mhe,isAborted:Q$n,isErrorLike:KIa,fullyReadBody:jIa,readableStreamClose:zIa,isomorphicEncode:umt,urlIsLocal:qIa,urlIsHttpHttpsScheme:Mbr,urlHasHttpsScheme:$Ia,clampAndCoarsenConnectionTimingInfo:eha,simpleRangeHeaderValue:tha,buildContentRange:rha,createInflate:nha,extractMimeType:iha}=qW(),{kState:K$n,kDispatcher:sha}=iae(),Che=wt("node:assert"),{safelyExtractBody:Hbr,extractBody:X$n}=pYe(),{redirectStatusSet:j$n,nullBodyStatus:z$n,safeMethodsSet:oha,requestBodyHeader:aha,subresourceSet:cha}=oYe(),lha=wt("node:events"),{Readable:uha,pipeline:gha,finished:Aha}=wt("node:stream"),{addAbortListener:dha,isErrored:pha,isReadable:gmt,bufferToLowerCasedHeaderName:J$n}=Em(),{dataURLProcessor:fha,serializeAMimeType:Iha,minimizeSupportedMimeType:hha}=eV(),{getGlobalDispatcher:mha}=Kht(),{webidl:Cha}=kk(),{STATUS_CODES:_ha}=wt("node:http"),yha=["GET","HEAD"],bha=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Lbr,Amt=class extends lha{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function Eha(e){q$n(e,"fetch")}function Sha(e,t=void 0){Cha.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=JIa(),n;try{n=new kIa(e,t)}catch(C){return r.reject(C),r.promise}let a=n[K$n];if(n.signal.aborted)return Vbr(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=!1,f=null;return dha(n.signal,()=>{A=!0,Che(f!=null),f.abort(n.signal.reason);let C=l?.deref();Vbr(r,a,C,n.signal.reason)}),f=eei({request:a,processResponseEndOfBody:Eha,processResponse:C=>{if(!A){if(C.aborted){Vbr(r,a,l,f.serializedAbortReason);return}if(C.type==="error"){r.reject(new TypeError("fetch failed",{cause:C.error}));return}l=new WeakRef(DIa(C,"immutable")),r.resolve(l.deref()),r=null}},dispatcher:n[sha]}),r.promise}function q$n(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;Mbr(r)&&n!==null&&(e.timingAllowPassed||(n=Obr({startTime:n.startTime}),a=""),n.endTime=MYe(),e.timingInfo=n,$$n(n,r.href,t,globalThis,a))}var $$n=performance.markResourceTiming;function Vbr(e,t,r,n){if(e&&e.reject(n),t.body!=null&&gmt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[K$n];a.body!=null&&gmt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function eei({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A=mha()}){Che(A);let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=MYe(I),b=Obr({startTime:C}),E={controller:new Amt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return Che(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=ZIa(e.client.policyContainer):e.policyContainer=FIa()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,cha.has(e.destination),tei(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function tei(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!qIa(L8(r))&&(n=_y("local URLs only")),MIa(r),LIa(r)==="blocked"&&(n=_y("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=XIa(r)),n===null&&(n=await(async()=>{let o=L8(r);return Wbr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await U$n(e)):r.mode==="same-origin"?_y('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?_y('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await U$n(e)):Mbr(L8(r))?(r.responseTainting="cors",await rei(e)):_y("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=Zbr(n,"basic"):r.responseTainting==="cors"?n=Zbr(n,"cors"):r.responseTainting==="opaque"?n=Zbr(n,"opaque"):Che(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(n=a=_y()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||z$n.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>Pbr(e,_y(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!GIa(A,r.integrity)){o("integrity mismatch");return}n.body=Hbr(A)[0],Pbr(e,n)};await jIa(n.body,l,o)}else Pbr(e,n)}function U$n(e){if(mhe(e)&&e.request.redirectCount===0)return Promise.resolve(cmt(e));let{request:t}=e,{protocol:r}=L8(t);switch(r){case"about:":return Promise.resolve(_y("about scheme is not supported"));case"blob:":{Lbr||(Lbr=wt("node:buffer").resolveObjectURL);let n=L8(t);if(n.search.length!==0)return Promise.resolve(_y("NetworkError when attempting to fetch resource."));let a=Lbr(n.toString());if(t.method!=="GET"||!UIa(a))return Promise.resolve(_y("invalid method"));let o=lmt(),l=a.size,A=umt(`${l}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let I=t.headersList.get("range",!0),C=tha(I,!0);if(C==="failure")return Promise.resolve(_y("failed to fetch the data URL"));let{rangeStartValue:b,rangeEndValue:E}=C;if(b===null)b=l-E,E=b+E-1;else{if(b>=l)return Promise.resolve(_y("Range start is greater than the blob's size."));(E===null||E>=l)&&(E=l-1)}let N=a.slice(b,E,f),B=X$n(N);o.body=B[0];let F=umt(`${N.size}`),Q=rha(b,E,l);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",F,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",Q,!0)}else{let I=X$n(a);o.statusText="OK",o.body=I[0],o.headersList.set("content-length",A,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let n=L8(t),a=fha(n);if(a==="failure")return Promise.resolve(_y("failed to fetch the data URL"));let o=Iha(a.mimeType);return Promise.resolve(lmt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:Hbr(a.body)[0]}))}case"file:":return Promise.resolve(_y("not implemented... yet..."));case"http:":case"https:":return rei(e).catch(n=>_y(n));default:return Promise.resolve(_y("unknown scheme"))}}function vha(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Pbr(e,t){let r=e.timingInfo,n=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let A=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=Obr(r),A="");let I=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){I=t.status;let C=iha(t.headersList);C!=="failure"&&(f.contentType=hha(C))}e.request.initiatorType!=null&&$$n(r,e.request.url.href,e.request.initiatorType,globalThis,A,f,I)};let l=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>l())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?n():Aha(a.body.stream,()=>{n()})}async function rei(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await nei(e),t.responseTainting==="cors"&&YIa(t,r)==="failure")return _y("cors failure");VIa(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&QIa(t.origin,t.client,t.destination,n)==="blocked"?_y("blocked"):(j$n.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=_y("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await Bha(e,r):Che(!1)),r.timingInfo=a,r)}function Bha(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=WIa(n,L8(r).hash),a==null)return t}catch(l){return Promise.resolve(_y(l))}if(!Mbr(a))return Promise.resolve(_y("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(_y("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!Wbr(r,a))return Promise.resolve(_y('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(_y('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(_y());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!yha.includes(r.method)){r.method="GET",r.body=null;for(let l of aha)r.headersList.delete(l)}Wbr(L8(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(Che(r.body.source!=null),r.body=Hbr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=MYe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),OIa(r,n),tei(e,!0)}async function nei(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=xIa(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=umt(`${C}`)),b!=null&&o.headersList.append("content-length",b,!0),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",umt(o.referrer.href),!0),PIa(o),HIa(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",bha),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||($Ia(L8(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),A==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,l==null){if(o.cache==="only-if-cached")return _y("only if cached");let E=await wha(a,I,r);!oha.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?_y():mhe(e)?cmt(e):_y("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(mhe(e))return cmt(e);e.controller.connection.destroy(),l=await nei(e,t,!0)}return l}async function wha(e,t=!1,r=!1){Che(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B,F=!0){this.destroyed||(this.destroyed=!0,F&&this.abort?.(B??new DOMException("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(X){mhe(e)||(yield X,e.processRequestBodyChunkLength?.(X.byteLength))},F=()=>{mhe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=X=>{mhe(e)||(X.name==="AbortError"?e.controller.abort():e.controller.terminate(X))};f=async function*(){try{for await(let X of n.body.stream)yield*B(X);F()}catch(X){Q(X)}}()}try{let{body:B,status:F,statusText:Q,headersList:X,socket:ae}=await N({body:f});if(ae)a=lmt({status:F,statusText:Q,headersList:X,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=lmt({status:F,statusText:Q,headersList:X})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),cmt(e,B)):_y(B)}let I=async()=>{await e.controller.resume()},C=B=>{mhe(e)||e.controller.abort(B)},b=new ReadableStream({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)},type:"bytes"});a.body={stream:b,source:null,length:null},e.controller.onAborted=E,e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:X,value:ae}=await e.controller.next();if(Q$n(e))break;B=X?void 0:ae}catch(X){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=X,F=!0)}if(B===void 0){zIa(e.controller.controller),vha(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}let Q=new Uint8Array(B);if(Q.byteLength&&e.controller.controller.enqueue(Q),pha(b)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function E(B){Q$n(e)?(a.aborted=!0,gmt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):gmt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:KIa(B)?B:void 0})),e.controller.connection.destroy()}return a;function N({body:B}){let F=L8(n),Q=e.controller.dispatcher;return new Promise((X,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:Q.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;o.finalConnectionTimingInfo=eha(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ce.destroyed?ne(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne),o.finalNetworkRequestStartTime=MYe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=MYe(e.crossOriginIsolatedCapability)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new Y$n;for(let Me=0;MeMe.trim())),be=Se.get("location",!0),this.body=new uha({read:fe});let k=[],et=be&&n.redirect==="follow"&&j$n.has(ne);if(de.length!==0&&n.method!=="HEAD"&&n.method!=="CONNECT"&&!z$n.includes(ne)&&!et)for(let Me=0;Me{Me&&this.onError(Me)}).on("error",ct):this.body.on("error",ct)}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new Y$n;for(let de=0;de{"use strict";sei.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var aei=H((acu,oei)=>{"use strict";var{webidl:nO}=kk(),dmt=Symbol("ProgressEvent state"),Qbr=class e extends Event{constructor(t,r={}){t=nO.converters.DOMString(t,"ProgressEvent constructor","type"),r=nO.converters.ProgressEventInit(r??{}),super(t,r),this[dmt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return nO.brandCheck(this,e),this[dmt].lengthComputable}get loaded(){return nO.brandCheck(this,e),this[dmt].loaded}get total(){return nO.brandCheck(this,e),this[dmt].total}};nO.converters.ProgressEventInit=nO.dictionaryConverter([{key:"lengthComputable",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:nO.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:nO.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:nO.converters.boolean,defaultValue:()=>!1}]);oei.exports={ProgressEvent:Qbr}});var lei=H((ccu,cei)=>{"use strict";function Tha(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}cei.exports={getEncoding:Tha}});var hei=H((lcu,Iei)=>{"use strict";var{kState:Ywe,kError:Xbr,kResult:uei,kAborted:YYe,kLastProgressEventFired:Jbr}=Ybr(),{ProgressEvent:Rha}=aei(),{getEncoding:gei}=lei(),{serializeAMimeType:Nha,parseMIMEType:Aei}=eV(),{types:Dha}=wt("node:util"),{StringDecoder:dei}=wt("string_decoder"),{btoa:pei}=wt("node:buffer"),kha={enumerable:!0,writable:!1,configurable:!1};function xha(e,t,r,n){if(e[Ywe]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[Ywe]="loading",e[uei]=null,e[Xbr]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[YYe];)try{let{done:I,value:C}=await A;if(f&&!e[YYe]&&queueMicrotask(()=>{Iae("loadstart",e)}),f=!1,!I&&Dha.isUint8Array(C))l.push(C),(e[Jbr]===void 0||Date.now()-e[Jbr]>=50)&&!e[YYe]&&(e[Jbr]=Date.now(),queueMicrotask(()=>{Iae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[Ywe]="done";try{let b=Gha(l,r,t.type,n);if(e[YYe])return;e[uei]=b,Iae("load",e)}catch(b){e[Xbr]=b,Iae("error",e)}e[Ywe]!=="loading"&&Iae("loadend",e)});break}}catch(I){if(e[YYe])return;queueMicrotask(()=>{e[Ywe]="done",e[Xbr]=I,Iae("error",e),e[Ywe]!=="loading"&&Iae("loadend",e)});break}})()}function Iae(e,t){let r=new Rha(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function Gha(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=Aei(r||"application/octet-stream");o!=="failure"&&(a+=Nha(o)),a+=";base64,";let l=new dei("latin1");for(let A of e)a+=pei(l.write(A));return a+=pei(l.end()),a}case"Text":{let a="failure";if(n&&(a=gei(n)),a==="failure"&&r){let o=Aei(r);o!=="failure"&&(a=gei(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),Fha(e,a)}case"ArrayBuffer":return fei(e).buffer;case"BinaryString":{let a="",o=new dei("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function Fha(e,t){let r=fei(e),n=Zha(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function Zha(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function fei(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}Iei.exports={staticPropertyDescriptors:kha,readOperation:xha,fireAProgressEvent:Iae}});var yei=H((ucu,_ei)=>{"use strict";var{staticPropertyDescriptors:Qwe,readOperation:pmt,fireAProgressEvent:mei}=hei(),{kState:_he,kError:Cei,kResult:fmt,kEvents:h0,kAborted:Lha}=Ybr(),{webidl:ib}=kk(),{kEnumerableProperty:nV}=Em(),PX=class e extends EventTarget{constructor(){super(),this[_he]="empty",this[fmt]=null,this[Cei]=null,this[h0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=ib.converters.Blob(t,{strict:!1}),pmt(this,t,"ArrayBuffer")}readAsBinaryString(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=ib.converters.Blob(t,{strict:!1}),pmt(this,t,"BinaryString")}readAsText(t,r=void 0){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=ib.converters.Blob(t,{strict:!1}),r!==void 0&&(r=ib.converters.DOMString(r,"FileReader.readAsText","encoding")),pmt(this,t,"Text",r)}readAsDataURL(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=ib.converters.Blob(t,{strict:!1}),pmt(this,t,"DataURL")}abort(){if(this[_he]==="empty"||this[_he]==="done"){this[fmt]=null;return}this[_he]==="loading"&&(this[_he]="done",this[fmt]=null),this[Lha]=!0,mei("abort",this),this[_he]!=="loading"&&mei("loadend",this)}get readyState(){switch(ib.brandCheck(this,e),this[_he]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return ib.brandCheck(this,e),this[fmt]}get error(){return ib.brandCheck(this,e),this[Cei]}get onloadend(){return ib.brandCheck(this,e),this[h0].loadend}set onloadend(t){ib.brandCheck(this,e),this[h0].loadend&&this.removeEventListener("loadend",this[h0].loadend),typeof t=="function"?(this[h0].loadend=t,this.addEventListener("loadend",t)):this[h0].loadend=null}get onerror(){return ib.brandCheck(this,e),this[h0].error}set onerror(t){ib.brandCheck(this,e),this[h0].error&&this.removeEventListener("error",this[h0].error),typeof t=="function"?(this[h0].error=t,this.addEventListener("error",t)):this[h0].error=null}get onloadstart(){return ib.brandCheck(this,e),this[h0].loadstart}set onloadstart(t){ib.brandCheck(this,e),this[h0].loadstart&&this.removeEventListener("loadstart",this[h0].loadstart),typeof t=="function"?(this[h0].loadstart=t,this.addEventListener("loadstart",t)):this[h0].loadstart=null}get onprogress(){return ib.brandCheck(this,e),this[h0].progress}set onprogress(t){ib.brandCheck(this,e),this[h0].progress&&this.removeEventListener("progress",this[h0].progress),typeof t=="function"?(this[h0].progress=t,this.addEventListener("progress",t)):this[h0].progress=null}get onload(){return ib.brandCheck(this,e),this[h0].load}set onload(t){ib.brandCheck(this,e),this[h0].load&&this.removeEventListener("load",this[h0].load),typeof t=="function"?(this[h0].load=t,this.addEventListener("load",t)):this[h0].load=null}get onabort(){return ib.brandCheck(this,e),this[h0].abort}set onabort(t){ib.brandCheck(this,e),this[h0].abort&&this.removeEventListener("abort",this[h0].abort),typeof t=="function"?(this[h0].abort=t,this.addEventListener("abort",t)):this[h0].abort=null}};PX.EMPTY=PX.prototype.EMPTY=0;PX.LOADING=PX.prototype.LOADING=1;PX.DONE=PX.prototype.DONE=2;Object.defineProperties(PX.prototype,{EMPTY:Qwe,LOADING:Qwe,DONE:Qwe,readAsArrayBuffer:nV,readAsBinaryString:nV,readAsText:nV,readAsDataURL:nV,abort:nV,readyState:nV,result:nV,error:nV,onloadstart:nV,onprogress:nV,onload:nV,onabort:nV,onerror:nV,onloadend:nV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(PX,{EMPTY:Qwe,LOADING:Qwe,DONE:Qwe});_ei.exports={FileReader:PX}});var Imt=H((gcu,bei)=>{"use strict";bei.exports={kConstruct:B2().kConstruct}});var vei=H((Acu,Sei)=>{"use strict";var Vha=wt("node:assert"),{URLSerializer:Eei}=eV(),{isValidHeaderName:Pha}=qW();function Wha(e,t,r=!1){let n=Eei(e,r),a=Eei(t,r);return n===a}function Oha(e){Vha(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),Pha(r)&&t.push(r);return t}Sei.exports={urlEquals:Wha,getFieldValues:Oha}});var Tei=H((dcu,wei)=>{"use strict";var{kConstruct:Mha}=Imt(),{urlEquals:Hha,getFieldValues:Ubr}=vei(),{kEnumerableProperty:yhe,isDisturbed:Yha}=Em(),{webidl:Bp}=kk(),{Response:Qha,cloneResponse:Xha,fromInnerResponse:Jha}=OYe(),{Request:J$,fromInnerRequest:Uha}=Hwe(),{kState:WX}=iae(),{fetching:Kha}=HYe(),{urlIsHttpHttpsScheme:hmt,createDeferredPromise:Xwe,readAllBytes:jha}=qW(),Kbr=wt("node:assert"),mmt=class e{#e;constructor(){arguments[0]!==Mha&&Bp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Bp.brandCheck(this,e);let n="Cache.match";Bp.argumentLengthCheck(arguments,1,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){Bp.brandCheck(this,e);let n="Cache.matchAll";return t!==void 0&&(t=Bp.converters.RequestInfo(t,n,"request")),r=Bp.converters.CacheQueryOptions(r,n,"options"),this.#i(t,r)}async add(t){Bp.brandCheck(this,e);let r="Cache.add";Bp.argumentLengthCheck(arguments,1,r),t=Bp.converters.RequestInfo(t,r,"request");let n=[t];return await this.addAll(n)}async addAll(t){Bp.brandCheck(this,e);let r="Cache.addAll";Bp.argumentLengthCheck(arguments,1,r);let n=[],a=[];for(let E of t){if(E===void 0)throw Bp.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(E=Bp.converters.RequestInfo(E),typeof E=="string")continue;let N=E[WX];if(!hmt(N.url)||N.method!=="GET")throw Bp.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let E of t){let N=new J$(E)[WX];if(!hmt(N.url))throw Bp.errors.exception({header:r,message:"Expected http/s scheme."});N.initiator="fetch",N.destination="subresource",a.push(N);let B=Xwe();o.push(Kha({request:N,processResponse(F){if(F.type==="error"||F.status===206||F.status<200||F.status>299)B.reject(Bp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(F.headersList.contains("vary")){let Q=Ubr(F.headersList.get("vary"));for(let X of Q)if(X==="*"){B.reject(Bp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let ae of o)ae.abort();return}}},processResponseEndOfBody(F){if(F.aborted){B.reject(new DOMException("aborted","AbortError"));return}B.resolve(F)}})),n.push(B.promise)}let A=await Promise.all(n),f=[],I=0;for(let E of A){let N={type:"put",request:a[I],response:E};f.push(N),I++}let C=Xwe(),b=null;try{this.#t(f)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve(void 0):C.reject(b)}),C.promise}async put(t,r){Bp.brandCheck(this,e);let n="Cache.put";Bp.argumentLengthCheck(arguments,2,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.Response(r,n,"response");let a=null;if(t instanceof J$?a=t[WX]:a=new J$(t)[WX],!hmt(a.url)||a.method!=="GET")throw Bp.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[WX];if(o.status===206)throw Bp.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let N=Ubr(o.headersList.get("vary"));for(let B of N)if(B==="*")throw Bp.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(Yha(o.body.stream)||o.body.stream.locked))throw Bp.errors.exception({header:n,message:"Response body is locked or disturbed"});let l=Xha(o),A=Xwe();if(o.body!=null){let B=o.body.stream.getReader();jha(B).then(A.resolve,A.reject)}else A.resolve(void 0);let f=[],I={type:"put",request:a,response:l};f.push(I);let C=await A.promise;l.body!=null&&(l.body.source=C);let b=Xwe(),E=null;try{this.#t(f)}catch(N){E=N}return queueMicrotask(()=>{E===null?b.resolve():b.reject(E)}),b.promise}async delete(t,r={}){Bp.brandCheck(this,e);let n="Cache.delete";Bp.argumentLengthCheck(arguments,1,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return!1}else Kbr(typeof t=="string"),a=new J$(t)[WX];let o=[],l={type:"delete",request:a,options:r};o.push(l);let A=Xwe(),f=null,I;try{I=this.#t(o)}catch(C){f=C}return queueMicrotask(()=>{f===null?A.resolve(!!I?.length):A.reject(f)}),A.promise}async keys(t=void 0,r={}){Bp.brandCheck(this,e);let n="Cache.keys";t!==void 0&&(t=Bp.converters.RequestInfo(t,n,"request")),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t!==void 0)if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new J$(t)[WX]);let o=Xwe(),l=[];if(t===void 0)for(let A of this.#e)l.push(A[0]);else{let A=this.#n(a,r);for(let f of A)l.push(f[0])}return queueMicrotask(()=>{let A=[];for(let f of l){let I=Uha(f,new AbortController().signal,"immutable");A.push(I)}o.resolve(Object.freeze(A))}),o.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);Kbr(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!hmt(f.url))throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);Kbr(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!Hha(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=Ubr(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}#i(t,r,n=1/0){let a=null;if(t!==void 0)if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new J$(t)[WX]);let o=[];if(t===void 0)for(let A of this.#e)o.push(A[1]);else{let A=this.#n(a,r);for(let f of A)o.push(f[1])}let l=[];for(let A of o){let f=Jha(A,"immutable");if(l.push(f.clone()),l.length>=n)break}return Object.freeze(l)}};Object.defineProperties(mmt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:yhe,matchAll:yhe,add:yhe,addAll:yhe,put:yhe,delete:yhe,keys:yhe});var Bei=[{key:"ignoreSearch",converter:Bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Bp.converters.boolean,defaultValue:()=>!1}];Bp.converters.CacheQueryOptions=Bp.dictionaryConverter(Bei);Bp.converters.MultiCacheQueryOptions=Bp.dictionaryConverter([...Bei,{key:"cacheName",converter:Bp.converters.DOMString}]);Bp.converters.Response=Bp.interfaceConverter(Qha);Bp.converters["sequence"]=Bp.sequenceConverter(Bp.converters.RequestInfo);wei.exports={Cache:mmt}});var Nei=H((pcu,Rei)=>{"use strict";var{kConstruct:QYe}=Imt(),{Cache:Cmt}=Tei(),{webidl:MZ}=kk(),{kEnumerableProperty:XYe}=Em(),_mt=class e{#e=new Map;constructor(){arguments[0]!==QYe&&MZ.illegalConstructor()}async match(t,r={}){if(MZ.brandCheck(this,e),MZ.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=MZ.converters.RequestInfo(t),r=MZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new Cmt(QYe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new Cmt(QYe,n).match(t,r);if(o!==void 0)return o}}async has(t){MZ.brandCheck(this,e);let r="CacheStorage.has";return MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){MZ.brandCheck(this,e);let r="CacheStorage.open";if(MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new Cmt(QYe,a)}let n=[];return this.#e.set(t,n),new Cmt(QYe,n)}async delete(t){MZ.brandCheck(this,e);let r="CacheStorage.delete";return MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return MZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(_mt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:XYe,has:XYe,open:XYe,delete:XYe,keys:XYe});Rei.exports={CacheStorage:_mt}});var kei=H((fcu,Dei)=>{"use strict";Dei.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var jbr=H((Icu,Lei)=>{"use strict";function zha(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function xei(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function Gei(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}function Fei(e){for(let t=0;tt.toString().padStart(2,"0"));function Zei(e){return typeof e=="number"&&(e=new Date(e)),`${$ha[e.getUTCDay()]}, ${ymt[e.getUTCDate()]} ${ema[e.getUTCMonth()]} ${e.getUTCFullYear()} ${ymt[e.getUTCHours()]}:${ymt[e.getUTCMinutes()]}:${ymt[e.getUTCSeconds()]} GMT`}function tma(e){if(e<0)throw new Error("Invalid cookie max-age")}function rma(e){if(e.name.length===0)return null;xei(e.name),Gei(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(tma(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(qha(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Fei(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${Zei(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}Lei.exports={isCTLExcludingHtab:zha,validateCookieName:xei,validateCookiePath:Fei,validateCookieValue:Gei,toIMFDate:Zei,stringify:rma}});var Pei=H((hcu,Vei)=>{"use strict";var{maxNameValuePairSize:nma,maxAttributeValueSize:ima}=kei(),{isCTLExcludingHtab:sma}=jbr(),{collectASequenceOfCodePointsFast:bmt}=eV(),oma=wt("node:assert");function ama(e){if(sma(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=bmt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=bmt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>nma?null:{name:n,value:a,...Jwe(r)}}function Jwe(e,t={}){if(e.length===0)return t;oma(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=bmt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=bmt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>ima)return Jwe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return Jwe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return Jwe(e,t)}Vei.exports={parseSetCookie:ama,parseUnparsedAttributes:Jwe}});var Mei=H((mcu,Oei)=>{"use strict";var{parseSetCookie:cma}=Pei(),{stringify:lma}=jbr(),{webidl:nC}=kk(),{Headers:Emt}=Ihe();function uma(e){nC.argumentLengthCheck(arguments,1,"getCookies"),nC.brandCheck(e,Emt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function gma(e,t,r){nC.brandCheck(e,Emt,{strict:!1});let n="deleteCookie";nC.argumentLengthCheck(arguments,2,n),t=nC.converters.DOMString(t,n,"name"),r=nC.converters.DeleteCookieAttributes(r),Wei(e,{name:t,value:"",expires:new Date(0),...r})}function Ama(e){nC.argumentLengthCheck(arguments,1,"getSetCookies"),nC.brandCheck(e,Emt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>cma(r)):[]}function Wei(e,t){nC.argumentLengthCheck(arguments,2,"setCookie"),nC.brandCheck(e,Emt,{strict:!1}),t=nC.converters.Cookie(t);let r=lma(t);r&&e.append("Set-Cookie",r)}nC.converters.DeleteCookieAttributes=nC.dictionaryConverter([{converter:nC.nullableConverter(nC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"domain",defaultValue:()=>null}]);nC.converters.Cookie=nC.dictionaryConverter([{converter:nC.converters.DOMString,key:"name"},{converter:nC.converters.DOMString,key:"value"},{converter:nC.nullableConverter(e=>typeof e=="number"?nC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.boolean),key:"secure",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:nC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:nC.sequenceConverter(nC.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);Oei.exports={getCookies:uma,deleteCookie:gma,getSetCookies:Ama,setCookie:Wei}});var Kwe=H((Ccu,Yei)=>{"use strict";var{webidl:Wp}=kk(),{kEnumerableProperty:iV}=Em(),{kConstruct:Hei}=B2(),{MessagePort:dma}=wt("node:worker_threads"),Uwe=class e extends Event{#e;constructor(t,r={}){if(t===Hei){super(arguments[1],arguments[2]);return}let n="MessageEvent constructor";Wp.argumentLengthCheck(arguments,1,n),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.MessageEventInit(r,n,"eventInitDict"),super(t,r),this.#e=r}get data(){return Wp.brandCheck(this,e),this.#e.data}get origin(){return Wp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Wp.brandCheck(this,e),this.#e.lastEventId}get source(){return Wp.brandCheck(this,e),this.#e.source}get ports(){return Wp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}static createFastMessageEvent(t,r){let n=new e(Hei,t,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:pma}=Uwe;delete Uwe.createFastMessageEvent;var Smt=class e extends Event{#e;constructor(t,r={}){let n="CloseEvent constructor";Wp.argumentLengthCheck(arguments,1,n),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Wp.brandCheck(this,e),this.#e.wasClean}get code(){return Wp.brandCheck(this,e),this.#e.code}get reason(){return Wp.brandCheck(this,e),this.#e.reason}},vmt=class e extends Event{#e;constructor(t,r){let n="ErrorEvent constructor";Wp.argumentLengthCheck(arguments,1,n),super(t,r),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Wp.brandCheck(this,e),this.#e.message}get filename(){return Wp.brandCheck(this,e),this.#e.filename}get lineno(){return Wp.brandCheck(this,e),this.#e.lineno}get colno(){return Wp.brandCheck(this,e),this.#e.colno}get error(){return Wp.brandCheck(this,e),this.#e.error}};Object.defineProperties(Uwe.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:iV,origin:iV,lastEventId:iV,source:iV,ports:iV,initMessageEvent:iV});Object.defineProperties(Smt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:iV,code:iV,wasClean:iV});Object.defineProperties(vmt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:iV,filename:iV,lineno:iV,colno:iV,error:iV});Wp.converters.MessagePort=Wp.interfaceConverter(dma);Wp.converters["sequence"]=Wp.sequenceConverter(Wp.converters.MessagePort);var zbr=[{key:"bubbles",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Wp.converters.boolean,defaultValue:()=>!1}];Wp.converters.MessageEventInit=Wp.dictionaryConverter([...zbr,{key:"data",converter:Wp.converters.any,defaultValue:()=>null},{key:"origin",converter:Wp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Wp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Wp.nullableConverter(Wp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Wp.converters["sequence"],defaultValue:()=>new Array(0)}]);Wp.converters.CloseEventInit=Wp.dictionaryConverter([...zbr,{key:"wasClean",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Wp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Wp.converters.USVString,defaultValue:()=>""}]);Wp.converters.ErrorEventInit=Wp.dictionaryConverter([...zbr,{key:"message",converter:Wp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Wp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Wp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Wp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Wp.converters.any}]);Yei.exports={MessageEvent:Uwe,CloseEvent:Smt,ErrorEvent:vmt,createFastMessageEvent:pma}});var bhe=H((_cu,Qei)=>{"use strict";var fma="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Ima={enumerable:!0,writable:!1,configurable:!1},hma={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},mma={NOT_SENT:0,PROCESSING:1,SENT:2},Cma={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},_ma=2**16-1,yma={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},bma=Buffer.allocUnsafe(0),Ema={string:1,typedArray:2,arrayBuffer:3,blob:4};Qei.exports={uid:fma,sentCloseFrameState:mma,staticPropertyDescriptors:Ima,states:hma,opcodes:Cma,maxUnsigned16Bit:_ma,parserStates:yma,emptyBuffer:bma,sendHints:Ema}});var JYe=H((ycu,Xei)=>{"use strict";Xei.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var jYe=H((bcu,tti)=>{"use strict";var{kReadyState:UYe,kController:Sma,kResponse:vma,kBinaryType:Bma,kWebSocketURL:wma}=JYe(),{states:KYe,opcodes:hae}=bhe(),{ErrorEvent:Tma,createFastMessageEvent:Rma}=Kwe(),{isUtf8:Nma}=wt("node:buffer"),{collectASequenceOfCodePointsFast:Dma,removeHTTPWhitespace:Jei}=eV();function kma(e){return e[UYe]===KYe.CONNECTING}function xma(e){return e[UYe]===KYe.OPEN}function Gma(e){return e[UYe]===KYe.CLOSING}function Fma(e){return e[UYe]===KYe.CLOSED}function qbr(e,t,r=(a,o)=>new Event(a,o),n={}){let a=r(e,n);t.dispatchEvent(a)}function Zma(e,t,r){if(e[UYe]!==KYe.OPEN)return;let n;if(t===hae.TEXT)try{n=eti(r)}catch{Kei(e,"Received invalid UTF-8 in text frame.");return}else t===hae.BINARY&&(e[Bma]==="blob"?n=new Blob([r]):n=Lma(r));qbr("message",e,Rma,{origin:e[wma].origin,data:n})}function Lma(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function Vma(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function Pma(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function Kei(e,t){let{[Sma]:r,[vma]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&qbr("error",e,(a,o)=>new Tma(a,o),{error:new Error(t),message:t})}function jei(e){return e===hae.CLOSE||e===hae.PING||e===hae.PONG}function zei(e){return e===hae.CONTINUATION}function qei(e){return e===hae.TEXT||e===hae.BINARY}function Wma(e){return qei(e)||zei(e)||jei(e)}function Oma(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var $ei=typeof process.versions.icu=="string",Uei=$ei?new TextDecoder("utf-8",{fatal:!0}):void 0,eti=$ei?Uei.decode.bind(Uei):function(e){if(Nma(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};tti.exports={isConnecting:kma,isEstablished:xma,isClosing:Gma,isClosed:Fma,fireEvent:qbr,isValidSubprotocol:Vma,isValidStatusCode:Pma,failWebsocketConnection:Kei,websocketMessageReceived:Zma,utf8Decode:eti,isControlFrame:jei,isContinuationFrame:zei,isTextBinaryFrame:qei,isValidOpcode:Wma,parseExtensions:Oma,isValidClientWindowBits:Mma}});var wmt=H((Ecu,rti)=>{"use strict";var{maxUnsigned16Bit:Hma}=bhe(),Bmt=16386,$br,zYe=null,jwe=Bmt;try{$br=wt("node:crypto")}catch{$br={randomFillSync:function(t,r,n){for(let a=0;aHma?(l+=8,o=127):a>125&&(l+=2,o=126);let A=Buffer.allocUnsafe(a+l);A[0]=A[1]=0,A[0]|=128,A[0]=(A[0]&240)+t;A[l-4]=n[0],A[l-3]=n[1],A[l-2]=n[2],A[l-1]=n[3],A[1]=o,o===126?A.writeUInt16BE(a,2):o===127&&(A[2]=A[3]=0,A.writeUIntBE(a,4,6)),A[1]|=128;for(let f=0;f{"use strict";var{uid:Qma,states:qYe,sentCloseFrameState:Tmt,emptyBuffer:Xma,opcodes:Jma}=bhe(),{kReadyState:$Ye,kSentClose:Rmt,kByteParser:iti,kReceivedClose:nti,kResponse:sti}=JYe(),{fireEvent:Uma,failWebsocketConnection:mae,isClosing:Kma,isClosed:jma,isEstablished:zma,parseExtensions:qma}=jYe(),{channels:zwe}=Awe(),{CloseEvent:$ma}=Kwe(),{makeRequest:eCa}=Hwe(),{fetching:tCa}=HYe(),{Headers:rCa,getHeadersList:nCa}=Ihe(),{getDecodeSplit:iCa}=qW(),{WebsocketFrameSend:sCa}=wmt(),tEr;try{tEr=wt("node:crypto")}catch{}function oCa(e,t,r,n,a,o){let l=e;l.protocol=e.protocol==="ws:"?"http:":"https:";let A=eCa({urlList:[l],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let b=nCa(new rCa(o.headers));A.headersList=b}let f=tEr.randomBytes(16).toString("base64");A.headersList.append("sec-websocket-key",f),A.headersList.append("sec-websocket-version","13");for(let b of t)A.headersList.append("sec-websocket-protocol",b);return A.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),tCa({request:A,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(b){if(b.type==="error"||b.status!==101){mae(n,"Received network error or non-101 status code.");return}if(t.length!==0&&!b.headersList.get("Sec-WebSocket-Protocol")){mae(n,"Server did not respond with sent protocols.");return}if(b.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){mae(n,'Server did not set Upgrade header to "websocket".');return}if(b.headersList.get("Connection")?.toLowerCase()!=="upgrade"){mae(n,'Server did not set Connection header to "upgrade".');return}let E=b.headersList.get("Sec-WebSocket-Accept"),N=tEr.createHash("sha1").update(f+Qma).digest("base64");if(E!==N){mae(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let B=b.headersList.get("Sec-WebSocket-Extensions"),F;if(B!==null&&(F=qma(B),!F.has("permessage-deflate"))){mae(n,"Sec-WebSocket-Extensions header does not match.");return}let Q=b.headersList.get("Sec-WebSocket-Protocol");if(Q!==null&&!iCa("sec-websocket-protocol",A.headersList).includes(Q)){mae(n,"Protocol was not set in the opening handshake.");return}b.socket.on("data",oti),b.socket.on("close",ati),b.socket.on("error",cti),zwe.open.hasSubscribers&&zwe.open.publish({address:b.socket.address(),protocol:Q,extensions:B}),a(b,F)}})}function aCa(e,t,r,n){if(!(Kma(e)||jma(e)))if(!zma(e))mae(e,"Connection was closed before it was established."),e[$Ye]=qYe.CLOSING;else if(e[Rmt]===Tmt.NOT_SENT){e[Rmt]=Tmt.PROCESSING;let a=new sCa;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Xma,e[sti].socket.write(a.createFrame(Jma.CLOSE)),e[Rmt]=Tmt.SENT,e[$Ye]=qYe.CLOSING}else e[$Ye]=qYe.CLOSING}function oti(e){this.ws[iti].write(e)||this.pause()}function ati(){let{ws:e}=this,{[sti]:t}=e;t.socket.off("data",oti),t.socket.off("close",ati),t.socket.off("error",cti);let r=e[Rmt]===Tmt.SENT&&e[nti],n=1005,a="",o=e[iti].closingInfo;o&&!o.error?(n=o.code??1005,a=o.reason):e[nti]||(n=1006),e[$Ye]=qYe.CLOSED,Uma("close",e,(l,A)=>new $ma(l,A),{wasClean:r,code:n,reason:a}),zwe.close.hasSubscribers&&zwe.close.publish({websocket:e,code:n,reason:a})}function cti(e){let{ws:t}=this;t[$Ye]=qYe.CLOSING,zwe.socketError.hasSubscribers&&zwe.socketError.publish(e),this.destroy()}lti.exports={establishWebSocketConnection:oCa,closeWebSocketConnection:aCa}});var gti=H((vcu,uti)=>{"use strict";var{createInflateRaw:cCa,Z_DEFAULT_WINDOWBITS:lCa}=wt("node:zlib"),{isValidClientWindowBits:uCa}=jYe(),gCa=Buffer.from([0,0,255,255]),Nmt=Symbol("kBuffer"),Dmt=Symbol("kLength"),nEr=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,n){if(!this.#e){let a=lCa;if(this.#t.serverMaxWindowBits){if(!uCa(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=cCa({windowBits:a}),this.#e[Nmt]=[],this.#e[Dmt]=0,this.#e.on("data",o=>{this.#e[Nmt].push(o),this.#e[Dmt]+=o.length}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#e.write(t),r&&this.#e.write(gCa),this.#e.flush(()=>{let a=Buffer.concat(this.#e[Nmt],this.#e[Dmt]);this.#e[Nmt].length=0,this.#e[Dmt]=0,n(null,a)})}};uti.exports={PerMessageDeflate:nEr}});var bti=H((Bcu,yti)=>{"use strict";var{Writable:ACa}=wt("node:stream"),dCa=wt("node:assert"),{parserStates:sV,opcodes:qwe,states:pCa,emptyBuffer:Ati,sentCloseFrameState:dti}=bhe(),{kReadyState:fCa,kSentClose:pti,kResponse:fti,kReceivedClose:Iti}=JYe(),{channels:kmt}=Awe(),{isValidStatusCode:ICa,isValidOpcode:hCa,failWebsocketConnection:LM,websocketMessageReceived:hti,utf8Decode:mCa,isControlFrame:mti,isTextBinaryFrame:iEr,isContinuationFrame:CCa}=jYe(),{WebsocketFrameSend:Cti}=wmt(),{closeWebSocketConnection:_ti}=rEr(),{PerMessageDeflate:_Ca}=gti(),sEr=class extends ACa{#e=[];#t=0;#n=!1;#r=sV.INFO;#i={};#s=[];#o;constructor(t,r){super(),this.ws=t,this.#o=r??new Map,this.#o.has("permessage-deflate")&&this.#o.set("permessage-deflate",new _Ca(r))}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.#n=!0,this.run(n)}run(t){for(;this.#n;)if(this.#r===sV.INFO){if(this.#t<2)return t();let r=this.consume(2),n=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,l=!n&&a!==qwe.CONTINUATION,A=r[1]&127,f=r[0]&64,I=r[0]&32,C=r[0]&16;if(!hCa(a))return LM(this.ws,"Invalid opcode received"),t();if(o)return LM(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#o.has("permessage-deflate")){LM(this.ws,"Expected RSV1 to be clear.");return}if(I!==0||C!==0){LM(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(l&&!iEr(a)){LM(this.ws,"Invalid frame type was fragmented.");return}if(iEr(a)&&this.#s.length>0){LM(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&l){LM(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((A>125||l)&&mti(a)){LM(this.ws,"Control frame either too large or fragmented");return}if(CCa(a)&&this.#s.length===0&&!this.#i.compressed){LM(this.ws,"Unexpected continuation frame");return}A<=125?(this.#i.payloadLength=A,this.#r=sV.READ_DATA):A===126?this.#r=sV.PAYLOADLENGTH_16:A===127&&(this.#r=sV.PAYLOADLENGTH_64),iEr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=n,this.#i.fragmented=l}else if(this.#r===sV.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#r=sV.READ_DATA}else if(this.#r===sV.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){LM(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(n<<8)+a,this.#r=sV.READ_DATA}else if(this.#r===sV.READ_DATA){if(this.#t{if(n){_ti(this.ws,1007,n.message,n.message.length);return}if(this.#s.push(a),!this.#i.fin){this.#r=sV.INFO,this.#n=!0,this.run(t);return}hti(this.ws,this.#i.binaryType,Buffer.concat(this.#s)),this.#n=!0,this.#r=sV.INFO,this.#s.length=0,this.run(t)}),this.#n=!1;break}else{if(this.#s.push(r),!this.#i.fragmented&&this.#i.fin){let n=Buffer.concat(this.#s);hti(this.ws,this.#i.binaryType,n),this.#s.length=0}this.#r=sV.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return Ati;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t){dCa(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!ICa(r))return{code:1002,reason:"Invalid status code",error:!0};let n=t.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=mCa(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:n}=this.#i;if(r===qwe.CLOSE){if(n===1)return LM(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return _ti(this.ws,a,o,o.length),LM(this.ws,o),!1}if(this.ws[pti]!==dti.SENT){let a=Ati;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new Cti(a);this.ws[fti].socket.write(o.createFrame(qwe.CLOSE),l=>{l||(this.ws[pti]=dti.SENT)})}return this.ws[fCa]=pCa.CLOSING,this.ws[Iti]=!0,!1}else if(r===qwe.PING){if(!this.ws[Iti]){let a=new Cti(t);this.ws[fti].socket.write(a.createFrame(qwe.PONG)),kmt.ping.hasSubscribers&&kmt.ping.publish({payload:t})}}else r===qwe.PONG&&kmt.pong.hasSubscribers&&kmt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};yti.exports={ByteParser:sEr}});var wti=H((wcu,Bti)=>{"use strict";var{WebsocketFrameSend:yCa}=wmt(),{opcodes:Eti,sendHints:$we}=bhe(),bCa=myr(),Sti=Buffer[Symbol.species],oEr=class{#e=new bCa;#t=!1;#n;constructor(t){this.#n=t}add(t,r,n){if(n!==$we.blob){let o=vti(t,n);if(!this.#t)this.#n.write(o,r);else{let l={promise:null,callback:r,frame:o};this.#e.push(l)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=vti(o,n)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#n.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function vti(e,t){return new yCa(ECa(e,t)).createFrame(t===$we.string?Eti.TEXT:Eti.BINARY)}function ECa(e,t){switch(t){case $we.string:return Buffer.from(e);case $we.arrayBuffer:case $we.blob:return new Sti(e);case $we.typedArray:return new Sti(e.buffer,e.byteOffset,e.byteLength)}}Bti.exports={SendQueue:oEr}});var Zti=H((Tcu,Fti)=>{"use strict";var{webidl:aI}=kk(),{URLSerializer:SCa}=eV(),{environmentSettingsObject:Tti}=qW(),{staticPropertyDescriptors:Cae,states:eQe,sentCloseFrameState:vCa,sendHints:xmt}=bhe(),{kWebSocketURL:Rti,kReadyState:aEr,kController:BCa,kBinaryType:Gmt,kResponse:Nti,kSentClose:wCa,kByteParser:TCa}=JYe(),{isConnecting:RCa,isEstablished:NCa,isClosing:DCa,isValidSubprotocol:kCa,fireEvent:Dti}=jYe(),{establishWebSocketConnection:xCa,closeWebSocketConnection:kti}=rEr(),{ByteParser:GCa}=bti(),{kEnumerableProperty:VM,isBlobLike:xti}=Em(),{getGlobalDispatcher:FCa}=Kht(),{types:Gti}=wt("node:util"),{ErrorEvent:ZCa,CloseEvent:LCa}=Kwe(),{SendQueue:VCa}=wti(),iO=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";#i;constructor(t,r=[]){super();let n="WebSocket constructor";aI.argumentLengthCheck(arguments,1,n);let a=aI.converters["DOMString or sequence or WebSocketInit"](r,n,"options");t=aI.converters.USVString(t,n,"url"),r=a.protocols;let o=Tti.settingsObject.baseUrl,l;try{l=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(l.protocol==="http:"?l.protocol="ws:":l.protocol==="https:"&&(l.protocol="wss:"),l.protocol!=="ws:"&&l.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError");if(l.hash||l.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>kCa(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[Rti]=new URL(l.href);let A=Tti.settingsObject;this[BCa]=xCa(l,r,A,this,(f,I)=>this.#s(f,I),a),this[aEr]=e.CONNECTING,this[wCa]=vCa.NOT_SENT,this[Gmt]="blob"}close(t=void 0,r=void 0){aI.brandCheck(this,e);let n="WebSocket.close";if(t!==void 0&&(t=aI.converters["unsigned short"](t,n,"code",{clamp:!0})),r!==void 0&&(r=aI.converters.USVString(r,n,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");kti(this,t,r,a)}send(t){aI.brandCheck(this,e);let r="WebSocket.send";if(aI.argumentLengthCheck(arguments,1,r),t=aI.converters.WebSocketSendData(t,r,"data"),RCa(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!NCa(this)||DCa(this)))if(typeof t=="string"){let n=Buffer.byteLength(t);this.#t+=n,this.#i.add(t,()=>{this.#t-=n},xmt.string)}else Gti.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},xmt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},xmt.typedArray)):xti(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},xmt.blob))}get readyState(){return aI.brandCheck(this,e),this[aEr]}get bufferedAmount(){return aI.brandCheck(this,e),this.#t}get url(){return aI.brandCheck(this,e),SCa(this[Rti])}get extensions(){return aI.brandCheck(this,e),this.#r}get protocol(){return aI.brandCheck(this,e),this.#n}get onopen(){return aI.brandCheck(this,e),this.#e.open}set onopen(t){aI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return aI.brandCheck(this,e),this.#e.error}set onerror(t){aI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return aI.brandCheck(this,e),this.#e.close}set onclose(t){aI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return aI.brandCheck(this,e),this.#e.message}set onmessage(t){aI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return aI.brandCheck(this,e),this[Gmt]}set binaryType(t){aI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[Gmt]="blob":this[Gmt]=t}#s(t,r){this[Nti]=t;let n=new GCa(this,r);n.on("drain",PCa),n.on("error",WCa.bind(this)),t.socket.ws=this,this[TCa]=n,this.#i=new VCa(t.socket),this[aEr]=eQe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#r=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#n=o),Dti("open",this)}};iO.CONNECTING=iO.prototype.CONNECTING=eQe.CONNECTING;iO.OPEN=iO.prototype.OPEN=eQe.OPEN;iO.CLOSING=iO.prototype.CLOSING=eQe.CLOSING;iO.CLOSED=iO.prototype.CLOSED=eQe.CLOSED;Object.defineProperties(iO.prototype,{CONNECTING:Cae,OPEN:Cae,CLOSING:Cae,CLOSED:Cae,url:VM,readyState:VM,bufferedAmount:VM,onopen:VM,onerror:VM,onclose:VM,close:VM,onmessage:VM,binaryType:VM,send:VM,extensions:VM,protocol:VM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(iO,{CONNECTING:Cae,OPEN:Cae,CLOSING:Cae,CLOSED:Cae});aI.converters["sequence"]=aI.sequenceConverter(aI.converters.DOMString);aI.converters["DOMString or sequence"]=function(e,t,r){return aI.util.Type(e)==="Object"&&Symbol.iterator in e?aI.converters["sequence"](e):aI.converters.DOMString(e,t,r)};aI.converters.WebSocketInit=aI.dictionaryConverter([{key:"protocols",converter:aI.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:aI.converters.any,defaultValue:()=>FCa()},{key:"headers",converter:aI.nullableConverter(aI.converters.HeadersInit)}]);aI.converters["DOMString or sequence or WebSocketInit"]=function(e){return aI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?aI.converters.WebSocketInit(e):{protocols:aI.converters["DOMString or sequence"](e)}};aI.converters.WebSocketSendData=function(e){if(aI.util.Type(e)==="Object"){if(xti(e))return aI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Gti.isArrayBuffer(e))return aI.converters.BufferSource(e)}return aI.converters.USVString(e)};function PCa(){this.ws[Nti].socket.resume()}function WCa(e){let t,r;e instanceof LCa?(t=e.reason,r=e.code):t=e.message,Dti("error",this,()=>new ZCa("error",{error:e,message:t})),kti(this,r)}Fti.exports={WebSocket:iO}});var cEr=H((Rcu,Lti)=>{"use strict";function OCa(e){return e.indexOf("\0")===-1}function MCa(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function HCa(e){return new Promise(t=>{setTimeout(t,e).unref()})}Lti.exports={isValidLastEventId:OCa,isASCIINumber:MCa,delay:HCa}});var Oti=H((Ncu,Wti)=>{"use strict";var{Transform:YCa}=wt("node:stream"),{isASCIINumber:Vti,isValidLastEventId:Pti}=cEr(),U$=[239,187,191],lEr=10,Fmt=13,QCa=58,XCa=32,uEr=class extends YCa{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,n){if(t.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===U$[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]&&this.buffer[2]===U$[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]&&this.buffer[2]===U$[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&Vti(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&Pti(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};Wti.exports={EventSourceStream:uEr}});var Kti=H((Dcu,Uti)=>{"use strict";var{pipeline:JCa}=wt("node:stream"),{fetching:UCa}=HYe(),{makeRequest:KCa}=Hwe(),{webidl:_ae}=kk(),{EventSourceStream:jCa}=Oti(),{parseMIMEType:zCa}=eV(),{createFastMessageEvent:qCa}=Kwe(),{isNetworkError:Mti}=OYe(),{delay:$Ca}=cEr(),{kEnumerableProperty:Ehe}=Em(),{environmentSettingsObject:Hti}=qW(),Yti=!1,Qti=3e3,tQe=0,Xti=1,rQe=2,e_a="anonymous",t_a="use-credentials",eTe=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#n=!1;#r=tQe;#i=null;#s=null;#o;#g;constructor(t,r={}){super();let n="EventSource constructor";_ae.argumentLengthCheck(arguments,1,n),Yti||(Yti=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=_ae.converters.USVString(t,n,"url"),r=_ae.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#o=r.dispatcher,this.#g={lastEventId:"",reconnectionTime:Qti};let a=Hti,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#g.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let l=e_a;r.withCredentials&&(l=t_a,this.#n=!0);let A={redirect:"follow",keepalive:!0,mode:"cors",credentials:l==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};A.client=Hti.settingsObject,A.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],A.cache="no-store",A.initiator="other",A.urlList=[new URL(this.#t)],this.#i=KCa(A),this.#l()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#l(){if(this.#r===rQe)return;this.#r=tQe;let t={request:this.#i,dispatcher:this.#o},r=n=>{Mti(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#u()};t.processResponseEndOfBody=r,t.processResponse=n=>{if(Mti(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#u();return}let a=n.headersList.get("content-type",!0),o=a!==null?zCa(a):"failure",l=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||l===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#r=Xti,this.dispatchEvent(new Event("open")),this.#g.origin=n.urlList[n.urlList.length-1].origin;let A=new jCa({eventSourceSettings:this.#g,push:f=>{this.dispatchEvent(qCa(f.type,f.options))}});JCa(n.body.stream,A,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#s=UCa(t)}async#u(){this.#r!==rQe&&(this.#r=tQe,this.dispatchEvent(new Event("error")),await $Ca(this.#g.reconnectionTime),this.#r===tQe&&(this.#g.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#g.lastEventId,!0),this.#l()))}close(){_ae.brandCheck(this,e),this.#r!==rQe&&(this.#r=rQe,this.#s.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},Jti={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:tQe,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:Xti,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:rQe,writable:!1}};Object.defineProperties(eTe,Jti);Object.defineProperties(eTe.prototype,Jti);Object.defineProperties(eTe.prototype,{close:Ehe,onerror:Ehe,onmessage:Ehe,onopen:Ehe,readyState:Ehe,url:Ehe,withCredentials:Ehe});_ae.converters.EventSourceInitDict=_ae.dictionaryConverter([{key:"withCredentials",converter:_ae.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:_ae.converters.any}]);Uti.exports={EventSource:eTe,defaultReconnectionTime:Qti}});var $ti=H((kcu,Bf)=>{"use strict";var r_a=BYe(),jti=nYe(),n_a=Dwe(),i_a=ozn(),s_a=kwe(),o_a=Zyr(),a_a=Ezn(),c_a=Rzn(),zti=Y0(),Lmt=Em(),{InvalidArgumentError:Zmt}=zti,tTe=fqn(),l_a=sYe(),u_a=hbr(),g_a=jqn(),A_a=_br(),d_a=ibr(),p_a=Pht(),{getGlobalDispatcher:qti,setGlobalDispatcher:f_a}=Kht(),I_a=Sbr(),h_a=Tht(),m_a=Rht();Object.assign(jti.prototype,tTe);Bf.exports.Dispatcher=jti;Bf.exports.Client=r_a;Bf.exports.Pool=n_a;Bf.exports.BalancedPool=i_a;Bf.exports.Agent=s_a;Bf.exports.ProxyAgent=o_a;Bf.exports.EnvHttpProxyAgent=a_a;Bf.exports.RetryAgent=c_a;Bf.exports.RetryHandler=p_a;Bf.exports.DecoratorHandler=I_a;Bf.exports.RedirectHandler=h_a;Bf.exports.createRedirectInterceptor=m_a;Bf.exports.interceptors={redirect:n$n(),retry:s$n(),dump:a$n()};Bf.exports.buildConnector=l_a;Bf.exports.errors=zti;Bf.exports.util={parseHeaders:Lmt.parseHeaders,headerNameToString:Lmt.headerNameToString};function nQe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new Zmt("invalid url");if(r!=null&&typeof r!="object")throw new Zmt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new Zmt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(Lmt.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=Lmt.parseURL(t);let{agent:a,dispatcher:o=qti()}=r;if(a)throw new Zmt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Bf.exports.setGlobalDispatcher=f_a;Bf.exports.getGlobalDispatcher=qti;var C_a=HYe().fetch;Bf.exports.fetch=async function(t,r=void 0){try{return await C_a(t,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}};Bf.exports.Headers=Ihe().Headers;Bf.exports.Response=OYe().Response;Bf.exports.Request=Hwe().Request;Bf.exports.FormData=AYe().FormData;Bf.exports.File=globalThis.File??wt("node:buffer").File;Bf.exports.FileReader=yei().FileReader;var{setGlobalOrigin:__a,getGlobalOrigin:y_a}=V0r();Bf.exports.setGlobalOrigin=__a;Bf.exports.getGlobalOrigin=y_a;var{CacheStorage:b_a}=Nei(),{kConstruct:E_a}=Imt();Bf.exports.caches=new b_a(E_a);var{deleteCookie:S_a,getCookies:v_a,getSetCookies:B_a,setCookie:w_a}=Mei();Bf.exports.deleteCookie=S_a;Bf.exports.getCookies=v_a;Bf.exports.getSetCookies=B_a;Bf.exports.setCookie=w_a;var{parseMIMEType:T_a,serializeAMimeType:R_a}=eV();Bf.exports.parseMIMEType=T_a;Bf.exports.serializeAMimeType=R_a;var{CloseEvent:N_a,ErrorEvent:D_a,MessageEvent:k_a}=Kwe();Bf.exports.WebSocket=Zti().WebSocket;Bf.exports.CloseEvent=N_a;Bf.exports.ErrorEvent=D_a;Bf.exports.MessageEvent=k_a;Bf.exports.request=nQe(tTe.request);Bf.exports.stream=nQe(tTe.stream);Bf.exports.pipeline=nQe(tTe.pipeline);Bf.exports.connect=nQe(tTe.connect);Bf.exports.upgrade=nQe(tTe.upgrade);Bf.exports.MockClient=u_a;Bf.exports.MockPool=A_a;Bf.exports.MockAgent=g_a;Bf.exports.mockErrors=d_a;var{EventSource:x_a}=Kti();Bf.exports.EventSource=x_a});var rri=H(lT=>{"use strict";var G_a=lT&&lT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),F_a=lT&&lT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Z_a=lT&&lT.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&G_a(t,e,r);return F_a(t,e),t},L_a=lT&&lT.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(lT,"__esModule",{value:!0});lT.getApiBaseUrl=lT.getProxyFetch=lT.getProxyAgentDispatcher=lT.getProxyAgent=lT.getAuthString=void 0;var eri=Z_a(fjn()),V_a=$ti();function P_a(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}lT.getAuthString=P_a;function W_a(e){return new eri.HttpClient().getAgent(e)}lT.getProxyAgent=W_a;function tri(e){return new eri.HttpClient().getAgentDispatcher(e)}lT.getProxyAgentDispatcher=tri;function O_a(e){let t=tri(e);return(n,a)=>L_a(this,void 0,void 0,function*(){return(0,V_a.fetch)(n,Object.assign(Object.assign({},a),{dispatcher:t}))})}lT.getProxyFetch=O_a;function M_a(){return process.env.GITHUB_API_URL||"https://api.github.com"}lT.getApiBaseUrl=M_a});var iQe=H(gEr=>{"use strict";Object.defineProperty(gEr,"__esModule",{value:!0});function H_a(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}gEr.getUserAgent=H_a});var sri=H((Fcu,iri)=>{iri.exports=nri;function nri(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return nri.bind(null,e,o,a,n)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,n)},r)():r(n)})}});var ari=H((Zcu,ori)=>{ori.exports=Y_a;function Y_a(e,t,r,n){var a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=function(o,l){return Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))}),t==="after"&&(n=function(o,l){var A;return Promise.resolve().then(o.bind(null,l)).then(function(f){return A=f,a(A,l)}).then(function(){return A})}),t==="error"&&(n=function(o,l){return Promise.resolve().then(o.bind(null,l)).catch(function(A){return a(A,l)})}),e.registry[r].push({hook:n,orig:a})}});var lri=H((Lcu,cri)=>{cri.exports=Q_a;function Q_a(e,t,r){if(e.registry[t]){var n=e.registry[t].map(function(a){return a.orig}).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}}});var Iri=H((Vcu,sQe)=>{var dri=sri(),X_a=ari(),J_a=lri(),uri=Function.bind,gri=uri.bind(uri);function pri(e,t,r){var n=gri(J_a,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=gri(X_a,null).apply(null,o)})}function U_a(){var e="h",t={registry:{}},r=dri.bind(null,t,e);return pri(r,t,e),r}function fri(){var e={registry:{}},t=dri.bind(null,e);return pri(t,e),t}var Ari=!1;function rTe(){return Ari||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),Ari=!0),fri()}rTe.Singular=U_a.bind();rTe.Collection=fri.bind();sQe.exports=rTe;sQe.exports.Hook=rTe;sQe.exports.Singular=rTe.Singular;sQe.exports.Collection=rTe.Collection});var vri=H((Pcu,Sri)=>{"use strict";var pEr=Object.defineProperty,K_a=Object.getOwnPropertyDescriptor,j_a=Object.getOwnPropertyNames,z_a=Object.prototype.hasOwnProperty,q_a=(e,t)=>{for(var r in t)pEr(e,r,{get:t[r],enumerable:!0})},$_a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of j_a(t))!z_a.call(e,a)&&a!==r&&pEr(e,a,{get:()=>t[a],enumerable:!(n=K_a(t,a))||n.enumerable});return e},e0a=e=>$_a(pEr({},"__esModule",{value:!0}),e),Cri={};q_a(Cri,{endpoint:()=>f0a});Sri.exports=e0a(Cri);var t0a=iQe(),r0a="9.0.5",n0a=`octokit-endpoint.js/${r0a} ${(0,t0a.getUserAgent)()}`,i0a={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":n0a},mediaType:{format:""}};function s0a(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function o0a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function _ri(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{o0a(t[n])?n in e?r[n]=_ri(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function hri(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function dEr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=s0a(r.headers),hri(r),hri(r.headers);let n=_ri(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function a0a(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var c0a=/\{[^}]+\}/g;function l0a(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function u0a(e){let t=e.match(c0a);return t?t.map(l0a).reduce((r,n)=>r.concat(n),[]):[]}function mri(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function yri(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function iTe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function oQe(e,t,r){return t=e==="+"||e==="#"?yri(t):iTe(t),r?iTe(r)+"="+t:t}function nTe(e){return e!=null}function AEr(e){return e===";"||e==="&"||e==="?"}function g0a(e,t,r,n){var a=e[r],o=[];if(nTe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(oQe(t,a,AEr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(nTe).forEach(function(l){o.push(oQe(t,l,AEr(t)?r:""))}):Object.keys(a).forEach(function(l){nTe(a[l])&&o.push(oQe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(nTe).forEach(function(A){l.push(oQe(t,A))}):Object.keys(a).forEach(function(A){nTe(a[A])&&(l.push(iTe(A)),l.push(oQe(t,a[A].toString())))}),AEr(t)?o.push(iTe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?nTe(a)&&o.push(iTe(r)):a===""&&(t==="&"||t==="?")?o.push(iTe(r)+"="):a===""&&o.push("");return o}function A0a(e){return{expand:d0a.bind(null,e)}}function d0a(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(g0a(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return yri(o)}),e==="/"?e:e.replace(/\/$/,"")}function bri(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=mri(e,["method","baseUrl","url","headers","request","mediaType"]),l=u0a(r);r=A0a(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=mri(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=a0a(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function p0a(e,t,r){return bri(dEr(e,t,r))}function Eri(e,t){let r=dEr(e,t),n=p0a.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:Eri.bind(null,r),merge:dEr.bind(null,r),parse:bri})}var f0a=Eri(null,i0a)});var Bri=H(IEr=>{"use strict";Object.defineProperty(IEr,"__esModule",{value:!0});var fEr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};IEr.Deprecation=fEr});var kri=H((Ocu,Dri)=>{"use strict";var I0a=Object.create,Vmt=Object.defineProperty,h0a=Object.getOwnPropertyDescriptor,m0a=Object.getOwnPropertyNames,C0a=Object.getPrototypeOf,_0a=Object.prototype.hasOwnProperty,y0a=(e,t)=>{for(var r in t)Vmt(e,r,{get:t[r],enumerable:!0})},Tri=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of m0a(t))!_0a.call(e,a)&&a!==r&&Vmt(e,a,{get:()=>t[a],enumerable:!(n=h0a(t,a))||n.enumerable});return e},b0a=(e,t,r)=>(r=e!=null?I0a(C0a(e)):{},Tri(t||!e||!e.__esModule?Vmt(r,"default",{value:e,enumerable:!0}):r,e)),E0a=e=>Tri(Vmt({},"__esModule",{value:!0}),e),Rri={};y0a(Rri,{RequestError:()=>B0a});Dri.exports=E0a(Rri);var wri=Bri(),Nri=b0a(Cgt()),S0a=(0,Nri.default)(e=>console.warn(e)),v0a=(0,Nri.default)(e=>console.warn(e)),B0a=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let n;"headers"in r&&typeof r.headers<"u"&&(n=r.headers),"response"in r&&(this.response=r.response,n=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return S0a(new wri.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return v0a(new wri.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),n||{}}})}}});var cQe=H((Hcu,Fri)=>{"use strict";var CEr=Object.defineProperty,w0a=Object.getOwnPropertyDescriptor,T0a=Object.getOwnPropertyNames,R0a=Object.prototype.hasOwnProperty,N0a=(e,t)=>{for(var r in t)CEr(e,r,{get:t[r],enumerable:!0})},D0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of T0a(t))!R0a.call(e,a)&&a!==r&&CEr(e,a,{get:()=>t[a],enumerable:!(n=w0a(t,a))||n.enumerable});return e},k0a=e=>D0a(CEr({},"__esModule",{value:!0}),e),Gri={};N0a(Gri,{request:()=>P0a});Fri.exports=k0a(Gri);var x0a=vri(),G0a=iQe(),F0a="8.4.0";function Z0a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var aQe=kri();function L0a(e){return e.arrayBuffer()}function xri(e){var t,r,n,a;let o=e.request&&e.request.log?e.request.log:console,l=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(Z0a(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let A={},f,I,{fetch:C}=globalThis;if((r=e.request)!=null&&r.fetch&&(C=e.request.fetch),!C)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return C(e.url,{method:e.method,body:e.body,redirect:(n=e.request)==null?void 0:n.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async b=>{I=b.url,f=b.status;for(let E of b.headers)A[E[0]]=E[1];if("deprecation"in A){let E=A.link&&A.link.match(/<([^>]+)>; rel="deprecation"/),N=E&&E.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${A.sunset}${N?`. See ${N}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new aQe.RequestError(b.statusText,f,{response:{url:I,status:f,headers:A,data:void 0},request:e})}if(f===304)throw new aQe.RequestError("Not modified",f,{response:{url:I,status:f,headers:A,data:await hEr(b)},request:e});if(f>=400){let E=await hEr(b);throw new aQe.RequestError(V0a(E),f,{response:{url:I,status:f,headers:A,data:E},request:e})}return l?await hEr(b):b.body}}).then(b=>({status:f,url:I,headers:A,data:b})).catch(b=>{if(b instanceof aQe.RequestError)throw b;if(b.name==="AbortError")throw b;let E=b.message;throw b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause)),new aQe.RequestError(E,500,{request:e})})}async function hEr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():L0a(e)}function V0a(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function mEr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return xri(r.parse(l));let A=(f,I)=>xri(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:mEr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:mEr.bind(null,r)})}var P0a=mEr(x0a.endpoint,{headers:{"user-agent":`octokit-request.js/${F0a} ${(0,G0a.getUserAgent)()}`}})});var Wri=H((Xcu,Pri)=>{"use strict";var _Er=Object.defineProperty,W0a=Object.getOwnPropertyDescriptor,O0a=Object.getOwnPropertyNames,M0a=Object.prototype.hasOwnProperty,H0a=(e,t)=>{for(var r in t)_Er(e,r,{get:t[r],enumerable:!0})},Y0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of O0a(t))!M0a.call(e,a)&&a!==r&&_Er(e,a,{get:()=>t[a],enumerable:!(n=W0a(t,a))||n.enumerable});return e},Q0a=e=>Y0a(_Er({},"__esModule",{value:!0}),e),Lri={};H0a(Lri,{GraphqlResponseError:()=>Vri,graphql:()=>$0a,withCustomRequest:()=>eya});Pri.exports=Q0a(Lri);var X0a=cQe(),J0a=iQe(),U0a="7.1.0",Ycu=cQe(),Qcu=cQe();function K0a(e){return`Request failed due to following response errors: `+e.errors.map(t=>` - ${t.message}`).join(` -`)}var Dri=class extends Error{constructor(e,t,r){super(x0a(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},G0a=["method","baseUrl","url","headers","request","query","mediaType"],F0a=["query","method","url"],Rri=/\/api\/v3\/?$/;function Z0a(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(F0a.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>G0a.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Rri.test(o)&&(a.url=o.replace(Rri,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Dri(a,A,l.data)}return l.data.data})}function hEr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>Z0a(r,a,o),{defaults:hEr.bind(null,r),endpoint:r.endpoint})}var L0a=hEr(N0a.request,{headers:{"user-agent":`octokit-graphql.js/${k0a} ${(0,D0a.getUserAgent)()}`},method:"POST",url:"/graphql"});function V0a(e){return hEr(e,{method:"POST",url:"/graphql"})}});var Zri=H((rcu,Fri)=>{"use strict";var mEr=Object.defineProperty,P0a=Object.getOwnPropertyDescriptor,W0a=Object.getOwnPropertyNames,O0a=Object.prototype.hasOwnProperty,M0a=(e,t)=>{for(var r in t)mEr(e,r,{get:t[r],enumerable:!0})},H0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of W0a(t))!O0a.call(e,a)&&a!==r&&mEr(e,a,{get:()=>t[a],enumerable:!(n=P0a(t,a))||n.enumerable});return e},Y0a=e=>H0a(mEr({},"__esModule",{value:!0}),e),Gri={};M0a(Gri,{createTokenAuth:()=>z0a});Fri.exports=Y0a(Gri);var Q0a=/^v1\./,X0a=/^ghs_/,J0a=/^ghu_/;async function U0a(e){let t=e.split(/\./).length===3,r=Q0a.test(e)||X0a.test(e),n=J0a.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function K0a(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function j0a(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=K0a(e),t(a)}var z0a=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(U0a.bind(null,t),{hook:j0a.bind(null,t)})}});var Hri=H((ncu,Mri)=>{"use strict";var CEr=Object.defineProperty,q0a=Object.getOwnPropertyDescriptor,$0a=Object.getOwnPropertyNames,eya=Object.prototype.hasOwnProperty,tya=(e,t)=>{for(var r in t)CEr(e,r,{get:t[r],enumerable:!0})},rya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $0a(t))!eya.call(e,a)&&a!==r&&CEr(e,a,{get:()=>t[a],enumerable:!(n=q0a(t,a))||n.enumerable});return e},nya=e=>rya(CEr({},"__esModule",{value:!0}),e),Wri={};tya(Wri,{Octokit:()=>uya});Mri.exports=nya(Wri);var iya=rQe(),sya=lri(),Lri=oQe(),oya=xri(),aya=Zri(),Ori="5.2.0",Vri=()=>{},cya=console.warn.bind(console),lya=console.error.bind(console),Pri=`octokit-core.js/${Ori} ${(0,iya.getUserAgent)()}`,uya=class{static{this.VERSION=Ori}static defaults(e){return class extends this{constructor(...r){let n=r[0]||{};if(typeof e=="function"){super(e(n));return}super(Object.assign({},e,n,n.userAgent&&e.userAgent?{userAgent:`${n.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(n=>!t.includes(n)))}}}constructor(e={}){let t=new sya.Collection,r={baseUrl:Lri.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${Pri}`:Pri,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=Lri.request.defaults(r),this.graphql=(0,oya.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:Vri,info:Vri,warn:cya,error:lya},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,l=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",l.hook),this.auth=l}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,aya.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let n=this.constructor;for(let a=0;a{"use strict";var _Er=Object.defineProperty,gya=Object.getOwnPropertyDescriptor,Aya=Object.getOwnPropertyNames,dya=Object.prototype.hasOwnProperty,pya=(e,t)=>{for(var r in t)_Er(e,r,{get:t[r],enumerable:!0})},fya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Aya(t))!dya.call(e,a)&&a!==r&&_Er(e,a,{get:()=>t[a],enumerable:!(n=gya(t,a))||n.enumerable});return e},Iya=e=>fya(_Er({},"__esModule",{value:!0}),e),Yri={};pya(Yri,{legacyRestEndpointMethods:()=>Uri,restEndpointMethods:()=>Jri});Kri.exports=Iya(Yri);var Qri="10.4.1",hya={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},mya=hya,Ehe=new Map;for(let[e,t]of Object.entries(mya))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);Ehe.has(e)||Ehe.set(e,new Map),Ehe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var Cya={has({scope:e},t){return Ehe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Ehe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=Ehe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=_ya(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function Xri(e){let t={};for(let r of Ehe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},Cya);return t}function _ya(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function Jri(e){return{rest:Xri(e)}}Jri.VERSION=Qri;function Uri(e){let t=Xri(e);return{...t,rest:t}}Uri.VERSION=Qri});var nni=H((ccu,rni)=>{"use strict";var yEr=Object.defineProperty,yya=Object.getOwnPropertyDescriptor,bya=Object.getOwnPropertyNames,Eya=Object.prototype.hasOwnProperty,Sya=(e,t)=>{for(var r in t)yEr(e,r,{get:t[r],enumerable:!0})},vya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of bya(t))!Eya.call(e,a)&&a!==r&&yEr(e,a,{get:()=>t[a],enumerable:!(n=yya(t,a))||n.enumerable});return e},Bya=e=>vya(yEr({},"__esModule",{value:!0}),e),zri={};Sya(zri,{composePaginateRest:()=>Rya,isPaginatingEndpoint:()=>Nya,paginateRest:()=>tni,paginatingEndpoints:()=>eni});rni.exports=Bya(zri);var wya="9.2.1";function Tya(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function bEr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=Tya(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function qri(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),$ri(e,[],bEr(e,t,r)[Symbol.asyncIterator](),n)}function $ri(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:$ri(e,t,r,n)})}var Rya=Object.assign(qri,{iterator:bEr}),eni=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function Nya(e){return typeof e=="string"?eni.includes(e):!1}function tni(e){return{paginate:Object.assign(qri.bind(null,e),{iterator:bEr.bind(null,e)})}}tni.VERSION=wya});var sni=H(xk=>{"use strict";var Dya=xk&&xk.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kya=xk&&xk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ini=xk&&xk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Dya(t,e,r);return kya(t,e),t};Object.defineProperty(xk,"__esModule",{value:!0});xk.getOctokitOptions=xk.GitHub=xk.defaults=xk.context=void 0;var xya=ini(Mhr()),Lmt=ini(Kti()),Gya=Hri(),Fya=jri(),Zya=nni();xk.context=new xya.Context;var EEr=Lmt.getApiBaseUrl();xk.defaults={baseUrl:EEr,request:{agent:Lmt.getProxyAgent(EEr),fetch:Lmt.getProxyFetch(EEr)}};xk.GitHub=Gya.Octokit.plugin(Fya.restEndpointMethods,Zya.paginateRest).defaults(xk.defaults);function Lya(e,t){let r=Object.assign({},t||{}),n=Lmt.getAuthString(e,r);return n&&(r.auth=n),r}xk.getOctokitOptions=Lya});var iTe=H(PM=>{"use strict";var Vya=PM&&PM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pya=PM&&PM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wya=PM&&PM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Vya(t,e,r);return Pya(t,e),t};Object.defineProperty(PM,"__esModule",{value:!0});PM.getOctokit=PM.context=void 0;var Oya=Wya(Mhr()),oni=sni();PM.context=new Oya.Context;function Mya(e,t,...r){let n=oni.GitHub.plugin(...r);return new n((0,oni.getOctokitOptions)(e,t))}PM.getOctokit=Mya});function kEr({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Rni=bc(()=>{});function K$(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(sba,"")}var sba,gQe=bc(()=>{Rni();sba=kEr()});var Tii=H((Fuu,wii)=>{"use strict";function Rba(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var n=t[t.length-1];return n in r}function vii(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function Bii(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}wii.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ce){r.bools[ce]=!0});var n={};function a(ce){return n[ce].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ce){n[ce]=[].concat(t.alias[ce]),n[ce].forEach(function(fe){n[fe]=[ce].concat(n[ce].filter(function(ue){return fe!==ue}))})}),[].concat(t.string).filter(Boolean).forEach(function(ce){r.strings[ce]=!0,n[ce]&&[].concat(n[ce]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},l={_:[]};function A(ce,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ce]||r.bools[ce]||n[ce]}function f(ce,fe,ue){for(var de=ce,be=0;be{"use strict";var{Transform:Nba}=wt("stream"),{StringDecoder:Dba}=wt("string_decoder"),_ae=Symbol("last"),Umt=Symbol("decoder");function kba(e,t,r){let n;if(this.overflow){if(n=this[Umt].write(e).split(this.matcher),n.length===1)return r();n.shift(),this.overflow=!1}else this[_ae]+=this[Umt].write(e),n=this[_ae].split(this.matcher);this[_ae]=n.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function xba(e){if(this[_ae]+=this[Umt].end(),this[_ae])try{Nii(this,this.mapper(this[_ae]))}catch(t){return e(t)}e()}function Nii(e,t){t!==void 0&&e.push(t)}function Rii(e){return e}function Gba(e,t,r){switch(e=e||/\r?\n/,t=t||Rii,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=Rii)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=kba,r.flush=xba,r.readableObjectMode=!0;let n=new Nba(r);return n[_ae]="",n[Umt]=new Dba("utf8"),n.matcher=e,n.mapper=t,n.maxLength=r.maxLength,n.skipOverflow=r.skipOverflow||!1,n.overflow=!1,n._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},n}Dii.exports=Gba});var Fii={};sI(Fii,{default:()=>Gii});function Gii(e,t){let r=[],n=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(A,f)=>{let I=t.shortFlag&&A.length===1?"-":"--",C=t.allowCamelCase?A:A.replace(/[A-Z]/g,"-$&").toLowerCase();A=I+C,t.useEquals?r.push(A+(f?`=${f}`:"")):(r.push(A),f&&r.push(f))},l=(A,f)=>{r.push(`-${A}`),f&&r.push(f)};for(let[A,f]of Object.entries(e)){let I=o;if(!(Array.isArray(t.excludes)&&xii(t.excludes,A))&&!(Array.isArray(t.includes)&&!xii(t.includes,A))){if(typeof t.aliases=="object"&&t.aliases[A]&&(A=t.aliases[A],I=l),A==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(A==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);n=f;continue}if(f===!0&&!t.ignoreTrue&&I(A,""),f===!1&&!t.ignoreFalse&&I(`no-${A}`),typeof f=="string"&&I(A,f),typeof f=="number"&&!Number.isNaN(f)&&I(A,String(f)),Array.isArray(f))for(let C of f)I(A,C)}}for(let A of n)r.push(String(A));a.length>0&&r.push("--");for(let A of a)r.push(String(A));return r}var xii,Zii=bc(()=>{xii=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var Wii=H((Luu,Pii)=>{var{Readable:Fba,Transform:Lii}=wt("stream"),{execFile:Zba}=wt("child_process"),Lba=kii(),Vii="------------------------ >8 ------------------------";function Vba(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function Pba(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function Wba(e){let{default:t}=await Promise.resolve().then(()=>(Zii(),Fii)),r=`--format=${e.format||""}%n${Vii}`,n=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,n].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function Oba(e,t){let r=new Fba;r._read=()=>{};let n=Pba(e),a=Vba(t),o=!1;return Wba(n).then(l=>{n.debug&&n.debug(`Your git-log command is: -git `+l.join(" "));let A=typeof n.ignore=="string"?new RegExp(n.ignore):n.ignore,f=A?C=>!A.test(C.toString()):()=>!0,I=Zba("git",l,{cwd:a.cwd,maxBuffer:1/0});I.stdout.pipe(Lba(Vii+` -`)).pipe(new Lii({transform(C,b,E){o=!1,setImmediate(()=>{f(C)&&r.push(C),E()})},flush(C){setImmediate(()=>{o||(r.push(null),r.emit("close")),C()})}})),I.stderr.pipe(new Lii({objectMode:!0,highWaterMark:16,transform(C){o=!0,r.emit("error",new Error(C)),r.emit("close")}}))}),r}Pii.exports=Oba});var Bhe,osi=bc(()=>{Bhe=[];Bhe.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Bhe.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Bhe.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var rCt,A1r,d1r,SEa,p1r,nCt,vEa,f1r,I1r,h1r,iCt,Ygu,Qgu,m1r=bc(()=>{osi();rCt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",A1r=Symbol.for("signal-exit emitter"),d1r=globalThis,SEa=Object.defineProperty.bind(Object),p1r=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(d1r[A1r])return d1r[A1r];SEa(d1r,A1r,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let n=this.listeners[t],a=n.indexOf(r);a!==-1&&(a===0&&n.length===1?n.length=0:n.splice(a,1))}emit(t,r,n){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,n)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,n)||a),a}},nCt=class{},vEa=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),f1r=class extends nCt{onExit(){return()=>{}}load(){}unload(){}},I1r=class extends nCt{#e=h1r.platform==="win32"?"SIGINT":"SIGHUP";#t=new p1r;#n;#r;#i;#s={};#o=!1;constructor(t){super(),this.#n=t,this.#s={};for(let r of Bhe)this.#s[r]=()=>{let n=this.#n.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),n.length===a){this.unload();let l=this.#t.emit("exit",null,r),A=r==="SIGHUP"?this.#e:r;l||t.kill(t.pid,A)}};this.#i=t.reallyExit,this.#r=t.emit}onExit(t,r){if(!rCt(this.#n))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#t.on(n,t),()=>{this.#t.removeListener(n,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#t.count+=1;for(let t of Bhe)try{let r=this.#s[t];r&&this.#n.on(t,r)}catch{}this.#n.emit=(t,...r)=>this.#l(t,...r),this.#n.reallyExit=t=>this.#g(t)}}unload(){this.#o&&(this.#o=!1,Bhe.forEach(t=>{let r=this.#s[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#n.removeListener(t,r)}catch{}}),this.#n.emit=this.#r,this.#n.reallyExit=this.#i,this.#t.count-=1)}#g(t){return rCt(this.#n)?(this.#n.exitCode=t||0,this.#t.emit("exit",this.#n.exitCode,null),this.#i.call(this.#n,this.#n.exitCode)):0}#l(t,...r){let n=this.#r;if(t==="exit"&&rCt(this.#n)){typeof r[0]=="number"&&(this.#n.exitCode=r[0]);let a=n.call(this.#n,t,...r);return this.#t.emit("exit",this.#n.exitCode,null),a}else return n.call(this.#n,t,...r)}},h1r=globalThis.process,{onExit:iCt,load:Ygu,unload:Qgu}=vEa(rCt(h1r)?new I1r(h1r):new f1r)});var Esi=H((yAu,bsi)=>{"use strict";var{PassThrough:$Ea}=wt("stream");bsi.exports=function(){var e=[],t=new $Ea({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function n(){return e.length==0}function a(o){e=e.filter(function(l){return l!==o}),!e.length&&t.readable&&t.end()}}});var ooi=H((xdu,soi)=>{"use strict";var Y1a=/()(.+)/gi,Q1a="# ------------------------ >8 ------------------------";function mCt(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` -`;)n--;return e.substring(r,n+1)}function whe(e,t){return e?e+=` -`+t:e=t,e}function X1a(e){return function(t){return t.charAt(0)!==e}}function J1a(e){let t=e.indexOf(Q1a);return t===-1?e:e.slice(0,t)}function ioi(e,t){let r=[],n,a,o=e.match(t.references)!==null?t.references:Y1a;for(;n=o.exec(e);){let l=n[1]||null,A=n[2];for(;a=t.referenceParts.exec(A);){let f=null,I=a[1]||"",C=I.split("/");C.length>1&&(f=C.shift(),I=C.join("/"));let b={action:l,owner:f,repository:I||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(b)}}return r}function U1a(){return!0}function K1a(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let n,a,o={},l=typeof t.commentChar=="string"?X1a(t.commentChar):U1a,A=ct=>!ct.match(/^\s*gpg:/),f=mCt(e).split(/\r?\n/),I=J1a(f).filter(l).filter(A),C=!1,b=!0,E=t.headerCorrespondence?.map(function(ct){return ct.trim()})||[],N=t.revertCorrespondence?.map(function(ct){return ct.trim()})||[],B=t.mergeCorrespondence?.map(function(ct){return ct.trim()})||[],F=null,Q=null,X=null,ae=[],ne=null,ce=[],fe=[],ue=null;if(I.length===0)return{body:F,footer:Q,header:X,mentions:ae,merge:ne,notes:ce,references:fe,revert:ue,scope:null,subject:null,type:null};ne=I.shift();let de={},be={};F="",Q="";let Se=ne.match(t.mergePattern);if(Se&&t.mergePattern){for(ne=Se[0],X=I.shift();X!==void 0&&!X.trim();)X=I.shift();X||(X=""),B.forEach(function(ct,Me){let je=Se[Me+1]||null;de[ct]=je})}else X=ne,ne=null,B.forEach(function(ct){de[ct]=null});let De=X.match(t.headerPattern);if(De?E.forEach(function(ct,Me){let je=De[Me+1]||null;be[ct]=je}):E.forEach(function(ct){be[ct]=null}),fe.push(...ioi(X,{references:r.references,referenceParts:r.referenceParts})),I.forEach(function(ct){if(t.fieldPattern){let At=t.fieldPattern.exec(ct);if(At){n=At[1];return}if(n){o[n]=whe(o[n],ct);return}}let Me,je=ct.match(r.notes);if(je){C=!0,b=!1,Q=whe(Q,ct);let At={title:je[1],text:je[2]};ce.push(At);return}let St=ioi(ct,{references:r.references,referenceParts:r.referenceParts});if(St.length>0&&(b=!1,Me=!0,C=!1),Array.prototype.push.apply(fe,St),Me){Q=whe(Q,ct);return}if(C){ce[ce.length-1].text=whe(ce[ce.length-1].text,ct),Q=whe(Q,ct);return}b?F=whe(F,ct):Q=whe(Q,ct)}),t.breakingHeaderPattern&&ce.length===0){let ct=X.match(t.breakingHeaderPattern);if(ct){let Me=ct[3];ce.push({title:"BREAKING CHANGE",text:Me})}}for(;a=r.mentions.exec(e);)ae.push(a[1]);let k=e.match(t.revertPattern);return k?(ue={},N.forEach(function(ct,Me){let je=k[Me+1]||null;ue[ct]=je})):ue=null,ce.forEach(function(ct){ct.text=mCt(ct.text)}),{...be,...de,merge:ne,header:X,body:F?mCt(F):null,footer:Q?mCt(Q):null,notes:ce,references:fe,mentions:ae,revert:ue,...o}}soi.exports=K1a});var loi=H((Gdu,coi)=>{"use strict";var aoi=/(?!.*)/;function V1r(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function j1a(e,t){if(!e)return aoi;let r=V1r(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function z1a(e,t){if(!e)return aoi;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+V1r(e,"|")+")([\\w-]*\\d+)",r)}function q1a(e){if(!e)return/()(.+)/gi;let t=V1r(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}coi.exports=function(e){e=e||{};let t=j1a(e.noteKeywords,e.notesPattern),r=z1a(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=q1a(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}});var doi=H((Fdu,P1r)=>{"use strict";var{Transform:$1a}=wt("stream"),uoi=ooi(),goi=loi();function Aoi(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function e2a(e){e=Aoi(e);let t=goi(e);return new $1a({objectMode:!0,highWaterMark:16,transform(r,n,a){let o;try{o=uoi(r.toString(),e,t),a(null,o)}catch(l){e.warn===!0?a(l):(e.warn(l.toString()),a(null,""))}}})}function t2a(e,t){t=Aoi(t);let r=goi(t);return uoi(e,t,r)}P1r.exports=e2a;P1r.exports.sync=t2a});var foi=H((Zdu,poi)=>{"use strict";function r2a(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}poi.exports.createParserOpts=r2a});var hoi=H((Ldu,Ioi)=>{"use strict";var n2a=Xfr();async function i2a(){let e=s2a();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}Ioi.exports.createWriterOpts=i2a;function s2a(){return{transform:(e,t)=>{let r=!0,n=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,l)=>(n.push(l),`[#${l}](${a}${l})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,l)=>l.includes("/")?`@${l}`:`[@${l}](${t.host}/${l})`))}return e.references=e.references.filter(a=>n.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:n2a}}});var Coi=H((Vdu,moi)=>{"use strict";function o2a(e,t){return{parserOpts:e,writerOpts:t}}moi.exports.createConventionalChangelogOpts=o2a});var yoi=H((Pdu,_oi)=>{"use strict";function a2a(e){return{parserOpts:e,whatBump(t){let r=2,n=0,a=0;return t.forEach(o=>{o.notes.length>0?(n+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:n===1?`There is ${n} BREAKING CHANGE and ${a} features`:`There are ${n} BREAKING CHANGES and ${a} features`}}}}_oi.exports.createConventionalRecommendedBumpOpts=a2a});var Eoi=H((Wdu,boi)=>{"use strict";var{createParserOpts:c2a}=foi(),{createWriterOpts:l2a}=hoi(),{createConventionalChangelogOpts:u2a}=Coi(),{createConventionalRecommendedBumpOpts:g2a}=yoi();async function A2a(){let e=c2a(),t=await l2a(),r=g2a(e),n=u2a(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:n}}boi.exports=A2a});var zoi=H((Mdu,joi)=>{var p2a=1/0,f2a="[object Symbol]",I2a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,h2a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_Ct="\\ud800-\\udfff",Goi="\\u0300-\\u036f\\ufe20-\\ufe23",Foi="\\u20d0-\\u20f0",Zoi="\\u2700-\\u27bf",Loi="a-z\\xdf-\\xf6\\xf8-\\xff",m2a="\\xac\\xb1\\xd7\\xf7",C2a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",_2a="\\u2000-\\u206f",y2a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Voi="A-Z\\xc0-\\xd6\\xd8-\\xde",Poi="\\ufe0e\\ufe0f",Woi=m2a+C2a+_2a+y2a,O1r="['\u2019]",b2a="["+_Ct+"]",woi="["+Woi+"]",CCt="["+Goi+Foi+"]",Ooi="\\d+",E2a="["+Zoi+"]",Moi="["+Loi+"]",Hoi="[^"+_Ct+Woi+Ooi+Zoi+Loi+Voi+"]",W1r="\\ud83c[\\udffb-\\udfff]",S2a="(?:"+CCt+"|"+W1r+")",Yoi="[^"+_Ct+"]",M1r="(?:\\ud83c[\\udde6-\\uddff]){2}",H1r="[\\ud800-\\udbff][\\udc00-\\udfff]",gTe="["+Voi+"]",Qoi="\\u200d",Toi="(?:"+Moi+"|"+Hoi+")",v2a="(?:"+gTe+"|"+Hoi+")",Roi="(?:"+O1r+"(?:d|ll|m|re|s|t|ve))?",Noi="(?:"+O1r+"(?:D|LL|M|RE|S|T|VE))?",Xoi=S2a+"?",Joi="["+Poi+"]?",B2a="(?:"+Qoi+"(?:"+[Yoi,M1r,H1r].join("|")+")"+Joi+Xoi+")*",Uoi=Joi+Xoi+B2a,w2a="(?:"+[E2a,M1r,H1r].join("|")+")"+Uoi,T2a="(?:"+[Yoi+CCt+"?",CCt,M1r,H1r,b2a].join("|")+")",R2a=RegExp(O1r,"g"),N2a=RegExp(CCt,"g"),D2a=RegExp(W1r+"(?="+W1r+")|"+T2a+Uoi,"g"),k2a=RegExp([gTe+"?"+Moi+"+"+Roi+"(?="+[woi,gTe,"$"].join("|")+")",v2a+"+"+Noi+"(?="+[woi,gTe+Toi,"$"].join("|")+")",gTe+"?"+Toi+"+"+Roi,gTe+"+"+Noi,Ooi,w2a].join("|"),"g"),x2a=RegExp("["+Qoi+_Ct+Goi+Foi+Poi+"]"),G2a=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,F2a={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},Z2a=typeof global=="object"&&global&&global.Object===Object&&global,L2a=typeof self=="object"&&self&&self.Object===Object&&self,V2a=Z2a||L2a||Function("return this")();function P2a(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:j2a(e,t,r)}function $2a(e){return function(t){t=yCt(t);var r=Koi(t)?Q2a(t):void 0,n=r?r[0]:t.charAt(0),a=r?q2a(r,1).join(""):t.slice(1);return n[e]()+a}}function eSa(e){return function(t){return P2a(aSa(sSa(t).replace(R2a,"")),e,"")}}function tSa(e){return!!e&&typeof e=="object"}function rSa(e){return typeof e=="symbol"||tSa(e)&&K2a.call(e)==f2a}function yCt(e){return e==null?"":z2a(e)}var nSa=eSa(function(e,t,r){return t=t.toLowerCase(),e+(r?iSa(t):t)});function iSa(e){return oSa(yCt(e).toLowerCase())}function sSa(e){return e=yCt(e),e&&e.replace(h2a,H2a).replace(N2a,"")}var oSa=$2a("toUpperCase");function aSa(e,t,r){return e=yCt(e),t=r?void 0:t,t===void 0?Y2a(e)?J2a(e):O2a(e):e.match(t)||[]}joi.exports=nSa});var _ai=H((Hdu,Cai)=>{var cSa=1/0,lSa="[object Symbol]",uSa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,gSa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,sai="\\ud800-\\udfff",ASa="\\u0300-\\u036f\\ufe20-\\ufe23",dSa="\\u20d0-\\u20f0",oai="\\u2700-\\u27bf",aai="a-z\\xdf-\\xf6\\xf8-\\xff",pSa="\\xac\\xb1\\xd7\\xf7",fSa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ISa="\\u2000-\\u206f",hSa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",cai="A-Z\\xc0-\\xd6\\xd8-\\xde",mSa="\\ufe0e\\ufe0f",lai=pSa+fSa+ISa+hSa,Y1r="['\u2019]",qoi="["+lai+"]",uai="["+ASa+dSa+"]",gai="\\d+",CSa="["+oai+"]",Aai="["+aai+"]",dai="[^"+sai+lai+gai+oai+aai+cai+"]",_Sa="\\ud83c[\\udffb-\\udfff]",ySa="(?:"+uai+"|"+_Sa+")",bSa="[^"+sai+"]",pai="(?:\\ud83c[\\udde6-\\uddff]){2}",fai="[\\ud800-\\udbff][\\udc00-\\udfff]",ATe="["+cai+"]",ESa="\\u200d",$oi="(?:"+Aai+"|"+dai+")",SSa="(?:"+ATe+"|"+dai+")",eai="(?:"+Y1r+"(?:d|ll|m|re|s|t|ve))?",tai="(?:"+Y1r+"(?:D|LL|M|RE|S|T|VE))?",Iai=ySa+"?",hai="["+mSa+"]?",vSa="(?:"+ESa+"(?:"+[bSa,pai,fai].join("|")+")"+hai+Iai+")*",BSa=hai+Iai+vSa,wSa="(?:"+[CSa,pai,fai].join("|")+")"+BSa,TSa=RegExp(Y1r,"g"),RSa=RegExp(uai,"g"),NSa=RegExp([ATe+"?"+Aai+"+"+eai+"(?="+[qoi,ATe,"$"].join("|")+")",SSa+"+"+tai+"(?="+[qoi,ATe+$oi,"$"].join("|")+")",ATe+"?"+$oi+"+"+eai,ATe+"+"+tai,gai,wSa].join("|"),"g"),DSa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,kSa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},xSa=typeof global=="object"&&global&&global.Object===Object&&global,GSa=typeof self=="object"&&self&&self.Object===Object&&self,FSa=xSa||GSa||Function("return this")();function ZSa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var zSa=1/0,qSa="[object Symbol]",$Sa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,eva=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Tai="\\ud800-\\udfff",tva="\\u0300-\\u036f\\ufe20-\\ufe23",rva="\\u20d0-\\u20f0",Rai="\\u2700-\\u27bf",Nai="a-z\\xdf-\\xf6\\xf8-\\xff",nva="\\xac\\xb1\\xd7\\xf7",iva="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",sva="\\u2000-\\u206f",ova=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Dai="A-Z\\xc0-\\xd6\\xd8-\\xde",ava="\\ufe0e\\ufe0f",kai=nva+iva+sva+ova,Q1r="['\u2019]",yai="["+kai+"]",xai="["+tva+rva+"]",Gai="\\d+",cva="["+Rai+"]",Fai="["+Nai+"]",Zai="[^"+Tai+kai+Gai+Rai+Nai+Dai+"]",lva="\\ud83c[\\udffb-\\udfff]",uva="(?:"+xai+"|"+lva+")",gva="[^"+Tai+"]",Lai="(?:\\ud83c[\\udde6-\\uddff]){2}",Vai="[\\ud800-\\udbff][\\udc00-\\udfff]",dTe="["+Dai+"]",Ava="\\u200d",bai="(?:"+Fai+"|"+Zai+")",dva="(?:"+dTe+"|"+Zai+")",Eai="(?:"+Q1r+"(?:d|ll|m|re|s|t|ve))?",Sai="(?:"+Q1r+"(?:D|LL|M|RE|S|T|VE))?",Pai=uva+"?",Wai="["+ava+"]?",pva="(?:"+Ava+"(?:"+[gva,Lai,Vai].join("|")+")"+Wai+Pai+")*",fva=Wai+Pai+pva,Iva="(?:"+[cva,Lai,Vai].join("|")+")"+fva,hva=RegExp(Q1r,"g"),mva=RegExp(xai,"g"),Cva=RegExp([dTe+"?"+Fai+"+"+Eai+"(?="+[yai,dTe,"$"].join("|")+")",dva+"+"+Sai+"(?="+[yai,dTe+bai,"$"].join("|")+")",dTe+"?"+bai+"+"+Eai,dTe+"+"+Sai,Gai,Iva].join("|"),"g"),_va=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,yva={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},bva=typeof global=="object"&&global&&global.Object===Object&&global,Eva=typeof self=="object"&&self&&self.Object===Object&&self,Sva=bva||Eva||Function("return this")();function vva(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var Wva=1/0,Ova="[object Symbol]",U1r="\\ud800-\\udfff",Jai="\\u0300-\\u036f\\ufe20-\\ufe23",Uai="\\u20d0-\\u20f0",Kai="\\ufe0e\\ufe0f",Mva="["+U1r+"]",X1r="["+Jai+Uai+"]",J1r="\\ud83c[\\udffb-\\udfff]",Hva="(?:"+X1r+"|"+J1r+")",jai="[^"+U1r+"]",zai="(?:\\ud83c[\\udde6-\\uddff]){2}",qai="[\\ud800-\\udbff][\\udc00-\\udfff]",$ai="\\u200d",eci=Hva+"?",tci="["+Kai+"]?",Yva="(?:"+$ai+"(?:"+[jai,zai,qai].join("|")+")"+tci+eci+")*",Qva=tci+eci+Yva,Xva="(?:"+[jai+X1r+"?",X1r,zai,qai,Mva].join("|")+")",Jva=RegExp(J1r+"(?="+J1r+")|"+Xva+Qva,"g"),Uva=RegExp("["+$ai+U1r+Jai+Uai+Kai+"]"),Kva=typeof global=="object"&&global&&global.Object===Object&&global,jva=typeof self=="object"&&self&&self.Object===Object&&self,zva=Kva||jva||Function("return this")();function qva(e){return e.split("")}function rci(e){return Uva.test(e)}function $va(e){return rci(e)?eBa(e):qva(e)}function eBa(e){return e.match(Jva)||[]}var tBa=Object.prototype,rBa=tBa.toString,Yai=zva.Symbol,Qai=Yai?Yai.prototype:void 0,Xai=Qai?Qai.toString:void 0;function nBa(e,t,r){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:nBa(e,t,r)}function oBa(e){return function(t){t=lBa(t);var r=rci(t)?$va(t):void 0,n=r?r[0]:t.charAt(0),a=r?sBa(r,1).join(""):t.slice(1);return n[e]()+a}}function aBa(e){return!!e&&typeof e=="object"}function cBa(e){return typeof e=="symbol"||aBa(e)&&rBa.call(e)==Ova}function lBa(e){return e==null?"":iBa(e)}var uBa=oBa("toUpperCase");nci.exports=uBa});var Rci=H((Xdu,Tci)=>{var gBa=1/0,ABa="[object Symbol]",dBa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pBa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ECt="\\ud800-\\udfff",Aci="\\u0300-\\u036f\\ufe20-\\ufe23",dci="\\u20d0-\\u20f0",pci="\\u2700-\\u27bf",fci="a-z\\xdf-\\xf6\\xf8-\\xff",fBa="\\xac\\xb1\\xd7\\xf7",IBa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",hBa="\\u2000-\\u206f",mBa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ici="A-Z\\xc0-\\xd6\\xd8-\\xde",hci="\\ufe0e\\ufe0f",mci=fBa+IBa+hBa+mBa,j1r="['\u2019]",CBa="["+ECt+"]",sci="["+mci+"]",bCt="["+Aci+dci+"]",Cci="\\d+",_Ba="["+pci+"]",_ci="["+fci+"]",yci="[^"+ECt+mci+Cci+pci+fci+Ici+"]",K1r="\\ud83c[\\udffb-\\udfff]",yBa="(?:"+bCt+"|"+K1r+")",bci="[^"+ECt+"]",z1r="(?:\\ud83c[\\udde6-\\uddff]){2}",q1r="[\\ud800-\\udbff][\\udc00-\\udfff]",pTe="["+Ici+"]",Eci="\\u200d",oci="(?:"+_ci+"|"+yci+")",bBa="(?:"+pTe+"|"+yci+")",aci="(?:"+j1r+"(?:d|ll|m|re|s|t|ve))?",cci="(?:"+j1r+"(?:D|LL|M|RE|S|T|VE))?",Sci=yBa+"?",vci="["+hci+"]?",EBa="(?:"+Eci+"(?:"+[bci,z1r,q1r].join("|")+")"+vci+Sci+")*",Bci=vci+Sci+EBa,SBa="(?:"+[_Ba,z1r,q1r].join("|")+")"+Bci,vBa="(?:"+[bci+bCt+"?",bCt,z1r,q1r,CBa].join("|")+")",BBa=RegExp(j1r,"g"),wBa=RegExp(bCt,"g"),TBa=RegExp(K1r+"(?="+K1r+")|"+vBa+Bci,"g"),RBa=RegExp([pTe+"?"+_ci+"+"+aci+"(?="+[sci,pTe,"$"].join("|")+")",bBa+"+"+cci+"(?="+[sci,pTe+oci,"$"].join("|")+")",pTe+"?"+oci+"+"+aci,pTe+"+"+cci,Cci,SBa].join("|"),"g"),NBa=RegExp("["+Eci+ECt+Aci+dci+hci+"]"),DBa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,kBa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},xBa=typeof global=="object"&&global&&global.Object===Object&&global,GBa=typeof self=="object"&&self&&self.Object===Object&&self,FBa=xBa||GBa||Function("return this")();function ZBa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:JBa(e,t,r)}function jBa(e){return function(t){t=$1r(t);var r=wci(t)?MBa(t):void 0,n=r?r[0]:t.charAt(0),a=r?KBa(r,1).join(""):t.slice(1);return n[e]()+a}}function zBa(e){return function(t){return ZBa(nwa(ewa(t).replace(BBa,"")),e,"")}}function qBa(e){return!!e&&typeof e=="object"}function $Ba(e){return typeof e=="symbol"||qBa(e)&&XBa.call(e)==ABa}function $1r(e){return e==null?"":UBa(e)}function ewa(e){return e=$1r(e),e&&e.replace(pBa,WBa).replace(wBa,"")}var twa=zBa(function(e,t,r){return e+(r?" ":"")+rwa(t)}),rwa=jBa("toUpperCase");function nwa(e,t,r){return e=$1r(e),t=r?void 0:t,t===void 0?OBa(e)?YBa(e):VBa(e):e.match(t)||[]}Tci.exports=twa});var bli=H(Rhe=>{"use strict";Object.defineProperty(Rhe,"__esModule",{value:!0});Rhe.Application=Rhe.MinistoreContext=void 0;var lwa=(Pa(),vi(Va)),uwa=Al(),NQe=lwa.__importStar(Ec()),gwa=wt("readline");Rhe.MinistoreContext=NQe.default.createContext(null);var Awa=({children:e})=>{let{stdin:t,setRawMode:r}=(0,uwa.useStdin)();(0,NQe.useEffect)(()=>{r&&r(!0),t&&(0,gwa.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,NQe.useState)(new Map),o=(0,NQe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(new Map([...n,[l,A]]))}),[n,a]);return NQe.default.createElement(Rhe.MinistoreContext.Provider,{value:o,children:e})};Rhe.Application=Awa});var Sli=H(l2r=>{"use strict";Object.defineProperty(l2r,"__esModule",{value:!0});l2r.useKeypress=pwa;var dwa=Al(),Eli=Ec();function pwa({active:e},t,r){let{stdin:n}=(0,dwa.useStdin)(),a=(0,Eli.useCallback)((o,l)=>t(o,l),r);(0,Eli.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var wli=H(u2r=>{"use strict";Object.defineProperty(u2r,"__esModule",{value:!0});u2r.renderForm=mwa;var fwa=(Pa(),vi(Va)),vli=Al(),Bli=fwa.__importDefault(Ec()),Iwa=bli(),hwa=Sli();async function mwa(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,vli.useApp)();(0,hwa.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,vli.render)(Bli.default.createElement(Iwa.Application,null,Bli.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var Nli=H(wCt=>{"use strict";Object.defineProperty(wCt,"__esModule",{value:!0});wCt.forceStdinTty=void 0;var Tli=Rli(wt("fs")),Cwa=Rli(wt("tty"));function Rli(e){return e&&e.__esModule?e:{default:e}}var _wa=function(){if(process.stdin.isTTY)return!1;var t=Tli.default.constants,r=t.O_RDONLY,n=t.O_NOCTTY,a=Tli.default.openSync("/dev/tty",r+n),o=new Cwa.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};wCt.forceStdinTty=_wa});var kli=H((ahu,Dli)=>{function ywa(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function bwa(e){return e.split(` -`).map(n=>ywa(n)).join(` -`)}Dli.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,n=typeof t.indent=="string"?t.indent:" ",a=t.newline||` -`+n,o=typeof t.escape=="function"?t.escape:Ewa,l=".{1,"+r+"}";t.cut!==!0&&(l+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var A=new RegExp(l,"g"),f=e.match(A)||[],I=n+f.map(function(C){return C.slice(-1)===` -`&&(C=C.slice(0,C.length-1)),o(C)}).join(a);return t.trim===!0&&(I=bwa(I)),I};function Ewa(e){return e}});var Gli=H((chu,xli)=>{"use strict";var Swa="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";xli.exports=Swa});var Vli=H((lhu,Lli)=>{"use strict";var vwa=Gli();function Fli(){}function Zli(){}Zli.resetWarningCache=Fli;Lli.exports=function(){function e(n,a,o,l,A,f){if(f!==vwa){var I=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw I.name="Invariant Violation",I}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:Zli,resetWarningCache:Fli};return r.PropTypes=r,r}});var hTe=H((Ahu,Pli)=>{Pli.exports=Vli()();var uhu,ghu});var b2r=H((DQe,CTe)=>{var Bwa=200,y2r="__lodash_hash_undefined__",FCt=1,zli=2,qli=9007199254740991,TCt="[object Arguments]",p2r="[object Array]",wwa="[object AsyncFunction]",$li="[object Boolean]",eui="[object Date]",tui="[object Error]",rui="[object Function]",Twa="[object GeneratorFunction]",RCt="[object Map]",nui="[object Number]",Rwa="[object Null]",mTe="[object Object]",Wli="[object Promise]",Nwa="[object Proxy]",iui="[object RegExp]",NCt="[object Set]",sui="[object String]",Dwa="[object Symbol]",kwa="[object Undefined]",f2r="[object WeakMap]",oui="[object ArrayBuffer]",DCt="[object DataView]",xwa="[object Float32Array]",Gwa="[object Float64Array]",Fwa="[object Int8Array]",Zwa="[object Int16Array]",Lwa="[object Int32Array]",Vwa="[object Uint8Array]",Pwa="[object Uint8ClampedArray]",Wwa="[object Uint16Array]",Owa="[object Uint32Array]",Mwa=/[\\^$.*+?()[\]{}|]/g,Hwa=/^\[object .+?Constructor\]$/,Ywa=/^(?:0|[1-9]\d*)$/,M1={};M1[xwa]=M1[Gwa]=M1[Fwa]=M1[Zwa]=M1[Lwa]=M1[Vwa]=M1[Pwa]=M1[Wwa]=M1[Owa]=!0;M1[TCt]=M1[p2r]=M1[oui]=M1[$li]=M1[DCt]=M1[eui]=M1[tui]=M1[rui]=M1[RCt]=M1[nui]=M1[mTe]=M1[iui]=M1[NCt]=M1[sui]=M1[f2r]=!1;var aui=typeof global=="object"&&global&&global.Object===Object&&global,Qwa=typeof self=="object"&&self&&self.Object===Object&&self,z$=aui||Qwa||Function("return this")(),cui=typeof DQe=="object"&&DQe&&!DQe.nodeType&&DQe,Oli=cui&&typeof CTe=="object"&&CTe&&!CTe.nodeType&&CTe,lui=Oli&&Oli.exports===cui,g2r=lui&&aui.process,Mli=function(){try{return g2r&&g2r.binding&&g2r.binding("util")}catch{}}(),Hli=Mli&&Mli.isTypedArray;function Xwa(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r-1}function bTa(e,t){var r=this.__data__,n=LCt(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}q$.prototype.clear=mTa;q$.prototype.delete=CTa;q$.prototype.get=_Ta;q$.prototype.has=yTa;q$.prototype.set=bTa;function khe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tA))return!1;var I=o.get(e);if(I&&o.get(t))return I==t;var C=-1,b=!0,E=r&zli?new xCt:void 0;for(o.set(e,t),o.set(t,e);++C-1&&e%1==0&&e-1&&e%1==0&&e<=qli}function mui(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function GQe(e){return e!=null&&typeof e=="object"}var Cui=Hli?jwa(Hli):PTa;function $Ta(e){return zTa(e)?FTa(e):WTa(e)}function eRa(){return[]}function tRa(){return!1}CTe.exports=qTa});var yui=H((dhu,_ui)=>{"use strict";_ui.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),n=typeof t=="number"?t:0;return r.splice(-n%r.length).concat(r)}});var E2r=H((phu,Eui)=>{"use strict";var rRa=jfr(),bui=process.platform,YX={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},nRa={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:YX.heart,arrowUp:YX.arrowUp,arrowDown:YX.arrowDown,arrowLeft:YX.arrowLeft,arrowRight:YX.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};bui==="linux"&&(YX.questionMarkPrefix="?");var PCt=bui==="win32"?nRa:YX,iRa=e=>(PCt===YX||Object.keys(YX).forEach(t=>{YX[t]!==PCt[t]&&(e=e.replace(new RegExp(rRa(YX[t]),"g"),PCt[t]))}),e);Eui.exports=Object.assign(iRa,PCt)});var Bui=H(WCt=>{"use strict";Object.defineProperty(WCt,"__esModule",{value:!0});WCt.default=void 0;var Sui=S2r(Ec()),sRa=S2r(hTe()),vui=Al(),oRa=S2r(E2r());function S2r(e){return e&&e.__esModule?e:{default:e}}var v2r=({isHighlighted:e})=>Sui.default.createElement(vui.Box,{marginRight:1},Sui.default.createElement(vui.Text,{color:e?"blue":void 0},e?oRa.default.pointer:" "));v2r.propTypes={isHighlighted:sRa.default.bool};v2r.defaultProps={isHighlighted:!1};var aRa=v2r;WCt.default=aRa});var Rui=H(OCt=>{"use strict";Object.defineProperty(OCt,"__esModule",{value:!0});OCt.default=void 0;var cRa=Tui(Ec()),wui=Tui(hTe()),lRa=Al();function Tui(e){return e&&e.__esModule?e:{default:e}}var B2r=({isHighlighted:e,label:t})=>cRa.default.createElement(lRa.Text,{color:e?"blue":void 0},t);B2r.propTypes={isHighlighted:wui.default.bool,label:wui.default.string.isRequired};B2r.defaultProps={isHighlighted:!1};var uRa=B2r;OCt.default=uRa});var xui=H(MCt=>{"use strict";Object.defineProperty(MCt,"__esModule",{value:!0});MCt.default=void 0;var Nui=w2r(Ec()),gRa=w2r(hTe()),Dui=Al(),kui=w2r(E2r());function w2r(e){return e&&e.__esModule?e:{default:e}}var T2r=({isSelected:e})=>Nui.default.createElement(Dui.Box,{marginRight:1},Nui.default.createElement(Dui.Text,{color:"green"},e?kui.default.circleFilled:kui.default.circle));T2r.propTypes={isSelected:gRa.default.bool};T2r.defaultProps={isSelected:!1};var ARa=T2r;MCt.default=ARa});var Vui=H(Fhe=>{"use strict";Object.defineProperty(Fhe,"__esModule",{value:!0});Object.defineProperty(Fhe,"Indicator",{enumerable:!0,get:function(){return Gui.default}});Object.defineProperty(Fhe,"Item",{enumerable:!0,get:function(){return Fui.default}});Object.defineProperty(Fhe,"CheckBox",{enumerable:!0,get:function(){return Zui.default}});Fhe.default=void 0;var Ghe=pRa(Ec()),YZ=yTe(hTe()),dRa=yTe(b2r()),HCt=yTe(yui()),R2r=Al(),Gui=yTe(Bui()),Fui=yTe(Rui()),Zui=yTe(xui());function yTe(e){return e&&e.__esModule?e:{default:e}}function Lui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Lui=function(){return e},e}function pRa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Lui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function N2r(){return N2r=Object.assign||function(e){for(var t=1;t{let{items:n,focus:a,onHighlight:o,onSubmit:l}=this.props,{rotateIndex:A,highlightedIndex:f}=this.state,I=this.props.selected||this.state.selected,{limit:C,hasLimit:b}=this;if(a===!1)return;let E=String(r);if(E===fRa||E==="k"){let N=(b?C:n.length)-1,B=f===0,F=b?f:N,Q=B?A+1:A,X=B?F:f-1;this.setState({rotateIndex:Q,highlightedIndex:X});let ae=b?(0,HCt.default)(n,Q).slice(0,C):n;o(ae[X])}if(E===IRa||E==="j"){let N=f===(b?C:n.length)-1,B=b?f:0,F=N?A-1:A,Q=N?B:f+1;this.setState({rotateIndex:F,highlightedIndex:Q});let X=b?(0,HCt.default)(n,F).slice(0,C):n;o(X[Q])}if(E===mRa){let B=(b?(0,HCt.default)(n,A).slice(0,C):n)[f];this.setSelectedState(this.selectItem(B))}E===hRa&&l(I)})}render(){let{items:t,indicatorComponent:r,itemComponent:n,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:l}=this.state,{limit:A,hasLimit:f}=this,I=f?(0,HCt.default)(t,o).slice(0,A):t;return Ghe.default.createElement(R2r.Box,{flexDirection:"column"},I.map((C,b)=>{let E=C.key||C.value,N=b===l,B=this.isSelected(C.value);return Ghe.default.createElement(R2r.Box,{key:E},Ghe.default.createElement(r,{isHighlighted:N}),Ghe.default.createElement(a,{isSelected:B}),Ghe.default.createElement(n,{...C,isHighlighted:N}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,dRa.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:n})=>n).includes(t)}selectItem(t){let{onSelect:r,onUnselect:n}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(n(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};YCt(ZQe,"propTypes",{items:YZ.default.array,selected:YZ.default.array,defaultSelected:YZ.default.array,focus:YZ.default.bool,initialIndex:YZ.default.number,indicatorComponent:YZ.default.func,checkboxComponent:YZ.default.func,itemComponent:YZ.default.func,limit:YZ.default.number,onSelect:YZ.default.func,onUnselect:YZ.default.func,onSubmit:YZ.default.func,onHighlight:YZ.default.func,stdin:YZ.default.any.isRequired,setRawMode:YZ.default.func.isRequired});YCt(ZQe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:Gui.default,checkboxComponent:Zui.default,itemComponent:Fui.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var CRa=e=>{let{stdin:t,setRawMode:r}=(0,R2r.useStdin)();return Ghe.default.createElement(ZQe,N2r({},e,{stdin:t,setRawMode:r}))};Fhe.default=CRa});var Wui=H(bTe=>{"use strict";Object.defineProperty(bTe,"__esModule",{value:!0});Object.defineProperty(bTe,"default",{enumerable:!0,get:function(){return QCt.default}});Object.defineProperty(bTe,"Item",{enumerable:!0,get:function(){return QCt.Item}});Object.defineProperty(bTe,"Indicator",{enumerable:!0,get:function(){return QCt.Indicator}});Object.defineProperty(bTe,"CheckBox",{enumerable:!0,get:function(){return QCt.CheckBox}});var QCt=_Ra(Vui());function Pui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Pui=function(){return e},e}function _Ra(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Pui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var X2r=H((Tmu,hgi)=>{var kTe=1e3,xTe=kTe*60,GTe=xTe*60,Zhe=GTe*24,ZRa=Zhe*7,LRa=Zhe*365.25;hgi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return VRa(e);if(r==="number"&&isFinite(e))return t.long?WRa(e):PRa(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function VRa(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*LRa;case"weeks":case"week":case"w":return r*ZRa;case"days":case"day":case"d":return r*Zhe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*GTe;case"minutes":case"minute":case"mins":case"min":case"m":return r*xTe;case"seconds":case"second":case"secs":case"sec":case"s":return r*kTe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function PRa(e){var t=Math.abs(e);return t>=Zhe?Math.round(e/Zhe)+"d":t>=GTe?Math.round(e/GTe)+"h":t>=xTe?Math.round(e/xTe)+"m":t>=kTe?Math.round(e/kTe)+"s":e+"ms"}function WRa(e){var t=Math.abs(e);return t>=Zhe?t_t(e,t,Zhe,"day"):t>=GTe?t_t(e,t,GTe,"hour"):t>=xTe?t_t(e,t,xTe,"minute"):t>=kTe?t_t(e,t,kTe,"second"):e+" ms"}function t_t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var J2r=H((Rmu,mgi)=>{function ORa(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=X2r(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{lO.formatArgs=HRa;lO.save=YRa;lO.load=QRa;lO.useColors=MRa;lO.storage=XRa();lO.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();lO.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function MRa(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function HRa(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+r_t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}lO.log=console.debug||console.log||(()=>{});function YRa(e){try{e?lO.storage.setItem("debug",e):lO.storage.removeItem("debug")}catch{}}function QRa(){let e;try{e=lO.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function XRa(){try{return localStorage}catch{}}r_t.exports=J2r()(lO);var{formatters:JRa}=r_t.exports;JRa.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var ygi=H((rD,i_t)=>{var URa=wt("tty"),n_t=wt("util");rD.init=tNa;rD.log=qRa;rD.formatArgs=jRa;rD.save=$Ra;rD.load=eNa;rD.useColors=KRa;rD.destroy=n_t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");rD.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(rD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}rD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function KRa(){return"colors"in rD.inspectOpts?!!rD.inspectOpts.colors:URa.isatty(process.stderr.fd)}function jRa(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`)}var Vri=class extends Error{constructor(e,t,r){super(K0a(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},j0a=["method","baseUrl","url","headers","request","query","mediaType"],z0a=["query","method","url"],Zri=/\/api\/v3\/?$/;function q0a(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(z0a.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>j0a.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Zri.test(o)&&(a.url=o.replace(Zri,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Vri(a,A,l.data)}return l.data.data})}function yEr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>q0a(r,a,o),{defaults:yEr.bind(null,r),endpoint:r.endpoint})}var $0a=yEr(X0a.request,{headers:{"user-agent":`octokit-graphql.js/${U0a} ${(0,J0a.getUserAgent)()}`},method:"POST",url:"/graphql"});function eya(e){return yEr(e,{method:"POST",url:"/graphql"})}});var Hri=H((Ucu,Mri)=>{"use strict";var bEr=Object.defineProperty,tya=Object.getOwnPropertyDescriptor,rya=Object.getOwnPropertyNames,nya=Object.prototype.hasOwnProperty,iya=(e,t)=>{for(var r in t)bEr(e,r,{get:t[r],enumerable:!0})},sya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of rya(t))!nya.call(e,a)&&a!==r&&bEr(e,a,{get:()=>t[a],enumerable:!(n=tya(t,a))||n.enumerable});return e},oya=e=>sya(bEr({},"__esModule",{value:!0}),e),Ori={};iya(Ori,{createTokenAuth:()=>dya});Mri.exports=oya(Ori);var aya=/^v1\./,cya=/^ghs_/,lya=/^ghu_/;async function uya(e){let t=e.split(/\./).length===3,r=aya.test(e)||cya.test(e),n=lya.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function gya(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function Aya(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=gya(e),t(a)}var dya=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(uya.bind(null,t),{hook:Aya.bind(null,t)})}});var jri=H((Kcu,Kri)=>{"use strict";var EEr=Object.defineProperty,pya=Object.getOwnPropertyDescriptor,fya=Object.getOwnPropertyNames,Iya=Object.prototype.hasOwnProperty,hya=(e,t)=>{for(var r in t)EEr(e,r,{get:t[r],enumerable:!0})},mya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of fya(t))!Iya.call(e,a)&&a!==r&&EEr(e,a,{get:()=>t[a],enumerable:!(n=pya(t,a))||n.enumerable});return e},Cya=e=>mya(EEr({},"__esModule",{value:!0}),e),Jri={};hya(Jri,{Octokit:()=>Bya});Kri.exports=Cya(Jri);var _ya=iQe(),yya=Iri(),Yri=cQe(),bya=Wri(),Eya=Hri(),Uri="5.2.0",Qri=()=>{},Sya=console.warn.bind(console),vya=console.error.bind(console),Xri=`octokit-core.js/${Uri} ${(0,_ya.getUserAgent)()}`,Bya=class{static{this.VERSION=Uri}static defaults(e){return class extends this{constructor(...r){let n=r[0]||{};if(typeof e=="function"){super(e(n));return}super(Object.assign({},e,n,n.userAgent&&e.userAgent?{userAgent:`${n.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(n=>!t.includes(n)))}}}constructor(e={}){let t=new yya.Collection,r={baseUrl:Yri.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${Xri}`:Xri,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=Yri.request.defaults(r),this.graphql=(0,bya.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:Qri,info:Qri,warn:Sya,error:vya},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,l=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",l.hook),this.auth=l}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,Eya.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let n=this.constructor;for(let a=0;a{"use strict";var SEr=Object.defineProperty,wya=Object.getOwnPropertyDescriptor,Tya=Object.getOwnPropertyNames,Rya=Object.prototype.hasOwnProperty,Nya=(e,t)=>{for(var r in t)SEr(e,r,{get:t[r],enumerable:!0})},Dya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Tya(t))!Rya.call(e,a)&&a!==r&&SEr(e,a,{get:()=>t[a],enumerable:!(n=wya(t,a))||n.enumerable});return e},kya=e=>Dya(SEr({},"__esModule",{value:!0}),e),zri={};Nya(zri,{legacyRestEndpointMethods:()=>tni,restEndpointMethods:()=>eni});rni.exports=kya(zri);var qri="10.4.1",xya={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Gya=xya,She=new Map;for(let[e,t]of Object.entries(Gya))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);She.has(e)||She.set(e,new Map),She.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var Fya={has({scope:e},t){return She.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...She.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=She.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=Zya(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function $ri(e){let t={};for(let r of She.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},Fya);return t}function Zya(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function eni(e){return{rest:$ri(e)}}eni.VERSION=qri;function tni(e){let t=$ri(e);return{...t,rest:t}}tni.VERSION=qri});var uni=H((elu,lni)=>{"use strict";var vEr=Object.defineProperty,Lya=Object.getOwnPropertyDescriptor,Vya=Object.getOwnPropertyNames,Pya=Object.prototype.hasOwnProperty,Wya=(e,t)=>{for(var r in t)vEr(e,r,{get:t[r],enumerable:!0})},Oya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Vya(t))!Pya.call(e,a)&&a!==r&&vEr(e,a,{get:()=>t[a],enumerable:!(n=Lya(t,a))||n.enumerable});return e},Mya=e=>Oya(vEr({},"__esModule",{value:!0}),e),ini={};Wya(ini,{composePaginateRest:()=>Qya,isPaginatingEndpoint:()=>Xya,paginateRest:()=>cni,paginatingEndpoints:()=>ani});lni.exports=Mya(ini);var Hya="9.2.1";function Yya(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function BEr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=Yya(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function sni(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),oni(e,[],BEr(e,t,r)[Symbol.asyncIterator](),n)}function oni(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:oni(e,t,r,n)})}var Qya=Object.assign(sni,{iterator:BEr}),ani=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function Xya(e){return typeof e=="string"?ani.includes(e):!1}function cni(e){return{paginate:Object.assign(sni.bind(null,e),{iterator:BEr.bind(null,e)})}}cni.VERSION=Hya});var Ani=H(xk=>{"use strict";var Jya=xk&&xk.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Uya=xk&&xk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gni=xk&&xk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Jya(t,e,r);return Uya(t,e),t};Object.defineProperty(xk,"__esModule",{value:!0});xk.getOctokitOptions=xk.GitHub=xk.defaults=xk.context=void 0;var Kya=gni(Xhr()),Pmt=gni(rri()),jya=jri(),zya=nni(),qya=uni();xk.context=new Kya.Context;var wEr=Pmt.getApiBaseUrl();xk.defaults={baseUrl:wEr,request:{agent:Pmt.getProxyAgent(wEr),fetch:Pmt.getProxyFetch(wEr)}};xk.GitHub=jya.Octokit.plugin(zya.restEndpointMethods,qya.paginateRest).defaults(xk.defaults);function $ya(e,t){let r=Object.assign({},t||{}),n=Pmt.getAuthString(e,r);return n&&(r.auth=n),r}xk.getOctokitOptions=$ya});var sTe=H(PM=>{"use strict";var eba=PM&&PM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tba=PM&&PM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),rba=PM&&PM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&eba(t,e,r);return tba(t,e),t};Object.defineProperty(PM,"__esModule",{value:!0});PM.getOctokit=PM.context=void 0;var nba=rba(Xhr()),dni=Ani();PM.context=new nba.Context;function iba(e,t,...r){let n=dni.GitHub.plugin(...r);return new n((0,dni.getOctokitOptions)(e,t))}PM.getOctokit=iba});function ZEr({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Zni=bc(()=>{});function K$(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(yba,"")}var yba,dQe=bc(()=>{Zni();yba=ZEr()});var Fii=H((wgu,Gii)=>{"use strict";function Qba(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var n=t[t.length-1];return n in r}function kii(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function xii(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}Gii.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ce){r.bools[ce]=!0});var n={};function a(ce){return n[ce].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ce){n[ce]=[].concat(t.alias[ce]),n[ce].forEach(function(fe){n[fe]=[ce].concat(n[ce].filter(function(ue){return fe!==ue}))})}),[].concat(t.string).filter(Boolean).forEach(function(ce){r.strings[ce]=!0,n[ce]&&[].concat(n[ce]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},l={_:[]};function A(ce,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ce]||r.bools[ce]||n[ce]}function f(ce,fe,ue){for(var de=ce,be=0;be{"use strict";var{Transform:Xba}=wt("stream"),{StringDecoder:Jba}=wt("string_decoder"),yae=Symbol("last"),jmt=Symbol("decoder");function Uba(e,t,r){let n;if(this.overflow){if(n=this[jmt].write(e).split(this.matcher),n.length===1)return r();n.shift(),this.overflow=!1}else this[yae]+=this[jmt].write(e),n=this[yae].split(this.matcher);this[yae]=n.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function Kba(e){if(this[yae]+=this[jmt].end(),this[yae])try{Lii(this,this.mapper(this[yae]))}catch(t){return e(t)}e()}function Lii(e,t){t!==void 0&&e.push(t)}function Zii(e){return e}function jba(e,t,r){switch(e=e||/\r?\n/,t=t||Zii,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=Zii)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=Uba,r.flush=Kba,r.readableObjectMode=!0;let n=new Xba(r);return n[yae]="",n[jmt]=new Jba("utf8"),n.matcher=e,n.mapper=t,n.maxLength=r.maxLength,n.skipOverflow=r.skipOverflow||!1,n.overflow=!1,n._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},n}Vii.exports=jba});var Mii={};sI(Mii,{default:()=>Oii});function Oii(e,t){let r=[],n=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(A,f)=>{let I=t.shortFlag&&A.length===1?"-":"--",C=t.allowCamelCase?A:A.replace(/[A-Z]/g,"-$&").toLowerCase();A=I+C,t.useEquals?r.push(A+(f?`=${f}`:"")):(r.push(A),f&&r.push(f))},l=(A,f)=>{r.push(`-${A}`),f&&r.push(f)};for(let[A,f]of Object.entries(e)){let I=o;if(!(Array.isArray(t.excludes)&&Wii(t.excludes,A))&&!(Array.isArray(t.includes)&&!Wii(t.includes,A))){if(typeof t.aliases=="object"&&t.aliases[A]&&(A=t.aliases[A],I=l),A==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(A==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);n=f;continue}if(f===!0&&!t.ignoreTrue&&I(A,""),f===!1&&!t.ignoreFalse&&I(`no-${A}`),typeof f=="string"&&I(A,f),typeof f=="number"&&!Number.isNaN(f)&&I(A,String(f)),Array.isArray(f))for(let C of f)I(A,C)}}for(let A of n)r.push(String(A));a.length>0&&r.push("--");for(let A of a)r.push(String(A));return r}var Wii,Hii=bc(()=>{Wii=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var Jii=H((Rgu,Xii)=>{var{Readable:zba,Transform:Yii}=wt("stream"),{execFile:qba}=wt("child_process"),$ba=Pii(),Qii="------------------------ >8 ------------------------";function eEa(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function tEa(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function rEa(e){let{default:t}=await Promise.resolve().then(()=>(Hii(),Mii)),r=`--format=${e.format||""}%n${Qii}`,n=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,n].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function nEa(e,t){let r=new zba;r._read=()=>{};let n=tEa(e),a=eEa(t),o=!1;return rEa(n).then(l=>{n.debug&&n.debug(`Your git-log command is: +git `+l.join(" "));let A=typeof n.ignore=="string"?new RegExp(n.ignore):n.ignore,f=A?C=>!A.test(C.toString()):()=>!0,I=qba("git",l,{cwd:a.cwd,maxBuffer:1/0});I.stdout.pipe($ba(Qii+` +`)).pipe(new Yii({transform(C,b,E){o=!1,setImmediate(()=>{f(C)&&r.push(C),E()})},flush(C){setImmediate(()=>{o||(r.push(null),r.emit("close")),C()})}})),I.stderr.pipe(new Yii({objectMode:!0,highWaterMark:16,transform(C){o=!0,r.emit("error",new Error(C)),r.emit("close")}}))}),r}Xii.exports=nEa});var whe,dsi=bc(()=>{whe=[];whe.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&whe.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&whe.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var iCt,I1r,h1r,WEa,m1r,sCt,OEa,C1r,_1r,y1r,oCt,ZAu,LAu,b1r=bc(()=>{dsi();iCt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",I1r=Symbol.for("signal-exit emitter"),h1r=globalThis,WEa=Object.defineProperty.bind(Object),m1r=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(h1r[I1r])return h1r[I1r];WEa(h1r,I1r,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let n=this.listeners[t],a=n.indexOf(r);a!==-1&&(a===0&&n.length===1?n.length=0:n.splice(a,1))}emit(t,r,n){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,n)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,n)||a),a}},sCt=class{},OEa=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),C1r=class extends sCt{onExit(){return()=>{}}load(){}unload(){}},_1r=class extends sCt{#e=y1r.platform==="win32"?"SIGINT":"SIGHUP";#t=new m1r;#n;#r;#i;#s={};#o=!1;constructor(t){super(),this.#n=t,this.#s={};for(let r of whe)this.#s[r]=()=>{let n=this.#n.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),n.length===a){this.unload();let l=this.#t.emit("exit",null,r),A=r==="SIGHUP"?this.#e:r;l||t.kill(t.pid,A)}};this.#i=t.reallyExit,this.#r=t.emit}onExit(t,r){if(!iCt(this.#n))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#t.on(n,t),()=>{this.#t.removeListener(n,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#t.count+=1;for(let t of whe)try{let r=this.#s[t];r&&this.#n.on(t,r)}catch{}this.#n.emit=(t,...r)=>this.#l(t,...r),this.#n.reallyExit=t=>this.#g(t)}}unload(){this.#o&&(this.#o=!1,whe.forEach(t=>{let r=this.#s[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#n.removeListener(t,r)}catch{}}),this.#n.emit=this.#r,this.#n.reallyExit=this.#i,this.#t.count-=1)}#g(t){return iCt(this.#n)?(this.#n.exitCode=t||0,this.#t.emit("exit",this.#n.exitCode,null),this.#i.call(this.#n,this.#n.exitCode)):0}#l(t,...r){let n=this.#r;if(t==="exit"&&iCt(this.#n)){typeof r[0]=="number"&&(this.#n.exitCode=r[0]);let a=n.call(this.#n,t,...r);return this.#t.emit("exit",this.#n.exitCode,null),a}else return n.call(this.#n,t,...r)}},y1r=globalThis.process,{onExit:oCt,load:ZAu,unload:LAu}=OEa(iCt(y1r)?new _1r(y1r):new C1r)});var Nsi=H((ddu,Rsi)=>{"use strict";var{PassThrough:f1a}=wt("stream");Rsi.exports=function(){var e=[],t=new f1a({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function n(){return e.length==0}function a(o){e=e.filter(function(l){return l!==o}),!e.length&&t.readable&&t.end()}}});var doi=H((vpu,Aoi)=>{"use strict";var o2a=/()(.+)/gi,a2a="# ------------------------ >8 ------------------------";function _Ct(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` +`;)n--;return e.substring(r,n+1)}function The(e,t){return e?e+=` +`+t:e=t,e}function c2a(e){return function(t){return t.charAt(0)!==e}}function l2a(e){let t=e.indexOf(a2a);return t===-1?e:e.slice(0,t)}function goi(e,t){let r=[],n,a,o=e.match(t.references)!==null?t.references:o2a;for(;n=o.exec(e);){let l=n[1]||null,A=n[2];for(;a=t.referenceParts.exec(A);){let f=null,I=a[1]||"",C=I.split("/");C.length>1&&(f=C.shift(),I=C.join("/"));let b={action:l,owner:f,repository:I||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(b)}}return r}function u2a(){return!0}function g2a(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let n,a,o={},l=typeof t.commentChar=="string"?c2a(t.commentChar):u2a,A=ct=>!ct.match(/^\s*gpg:/),f=_Ct(e).split(/\r?\n/),I=l2a(f).filter(l).filter(A),C=!1,b=!0,E=t.headerCorrespondence?.map(function(ct){return ct.trim()})||[],N=t.revertCorrespondence?.map(function(ct){return ct.trim()})||[],B=t.mergeCorrespondence?.map(function(ct){return ct.trim()})||[],F=null,Q=null,X=null,ae=[],ne=null,ce=[],fe=[],ue=null;if(I.length===0)return{body:F,footer:Q,header:X,mentions:ae,merge:ne,notes:ce,references:fe,revert:ue,scope:null,subject:null,type:null};ne=I.shift();let de={},be={};F="",Q="";let Se=ne.match(t.mergePattern);if(Se&&t.mergePattern){for(ne=Se[0],X=I.shift();X!==void 0&&!X.trim();)X=I.shift();X||(X=""),B.forEach(function(ct,Me){let je=Se[Me+1]||null;de[ct]=je})}else X=ne,ne=null,B.forEach(function(ct){de[ct]=null});let De=X.match(t.headerPattern);if(De?E.forEach(function(ct,Me){let je=De[Me+1]||null;be[ct]=je}):E.forEach(function(ct){be[ct]=null}),fe.push(...goi(X,{references:r.references,referenceParts:r.referenceParts})),I.forEach(function(ct){if(t.fieldPattern){let At=t.fieldPattern.exec(ct);if(At){n=At[1];return}if(n){o[n]=The(o[n],ct);return}}let Me,je=ct.match(r.notes);if(je){C=!0,b=!1,Q=The(Q,ct);let At={title:je[1],text:je[2]};ce.push(At);return}let St=goi(ct,{references:r.references,referenceParts:r.referenceParts});if(St.length>0&&(b=!1,Me=!0,C=!1),Array.prototype.push.apply(fe,St),Me){Q=The(Q,ct);return}if(C){ce[ce.length-1].text=The(ce[ce.length-1].text,ct),Q=The(Q,ct);return}b?F=The(F,ct):Q=The(Q,ct)}),t.breakingHeaderPattern&&ce.length===0){let ct=X.match(t.breakingHeaderPattern);if(ct){let Me=ct[3];ce.push({title:"BREAKING CHANGE",text:Me})}}for(;a=r.mentions.exec(e);)ae.push(a[1]);let k=e.match(t.revertPattern);return k?(ue={},N.forEach(function(ct,Me){let je=k[Me+1]||null;ue[ct]=je})):ue=null,ce.forEach(function(ct){ct.text=_Ct(ct.text)}),{...be,...de,merge:ne,header:X,body:F?_Ct(F):null,footer:Q?_Ct(Q):null,notes:ce,references:fe,mentions:ae,revert:ue,...o}}Aoi.exports=g2a});var Ioi=H((Bpu,foi)=>{"use strict";var poi=/(?!.*)/;function M1r(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function A2a(e,t){if(!e)return poi;let r=M1r(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function d2a(e,t){if(!e)return poi;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+M1r(e,"|")+")([\\w-]*\\d+)",r)}function p2a(e){if(!e)return/()(.+)/gi;let t=M1r(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}foi.exports=function(e){e=e||{};let t=A2a(e.noteKeywords,e.notesPattern),r=d2a(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=p2a(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}});var _oi=H((wpu,H1r)=>{"use strict";var{Transform:f2a}=wt("stream"),hoi=doi(),moi=Ioi();function Coi(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function I2a(e){e=Coi(e);let t=moi(e);return new f2a({objectMode:!0,highWaterMark:16,transform(r,n,a){let o;try{o=hoi(r.toString(),e,t),a(null,o)}catch(l){e.warn===!0?a(l):(e.warn(l.toString()),a(null,""))}}})}function h2a(e,t){t=Coi(t);let r=moi(t);return hoi(e,t,r)}H1r.exports=I2a;H1r.exports.sync=h2a});var boi=H((Tpu,yoi)=>{"use strict";function m2a(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}yoi.exports.createParserOpts=m2a});var Soi=H((Rpu,Eoi)=>{"use strict";var C2a=jfr();async function _2a(){let e=y2a();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}Eoi.exports.createWriterOpts=_2a;function y2a(){return{transform:(e,t)=>{let r=!0,n=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,l)=>(n.push(l),`[#${l}](${a}${l})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,l)=>l.includes("/")?`@${l}`:`[@${l}](${t.host}/${l})`))}return e.references=e.references.filter(a=>n.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:C2a}}});var Boi=H((Npu,voi)=>{"use strict";function b2a(e,t){return{parserOpts:e,writerOpts:t}}voi.exports.createConventionalChangelogOpts=b2a});var Toi=H((Dpu,woi)=>{"use strict";function E2a(e){return{parserOpts:e,whatBump(t){let r=2,n=0,a=0;return t.forEach(o=>{o.notes.length>0?(n+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:n===1?`There is ${n} BREAKING CHANGE and ${a} features`:`There are ${n} BREAKING CHANGES and ${a} features`}}}}woi.exports.createConventionalRecommendedBumpOpts=E2a});var Noi=H((kpu,Roi)=>{"use strict";var{createParserOpts:S2a}=boi(),{createWriterOpts:v2a}=Soi(),{createConventionalChangelogOpts:B2a}=Boi(),{createConventionalRecommendedBumpOpts:w2a}=Toi();async function T2a(){let e=S2a(),t=await v2a(),r=w2a(e),n=B2a(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:n}}Roi.exports=T2a});var iai=H((Gpu,nai)=>{var N2a=1/0,D2a="[object Symbol]",k2a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,x2a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,bCt="\\ud800-\\udfff",Ooi="\\u0300-\\u036f\\ufe20-\\ufe23",Moi="\\u20d0-\\u20f0",Hoi="\\u2700-\\u27bf",Yoi="a-z\\xdf-\\xf6\\xf8-\\xff",G2a="\\xac\\xb1\\xd7\\xf7",F2a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Z2a="\\u2000-\\u206f",L2a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Qoi="A-Z\\xc0-\\xd6\\xd8-\\xde",Xoi="\\ufe0e\\ufe0f",Joi=G2a+F2a+Z2a+L2a,Q1r="['\u2019]",V2a="["+bCt+"]",Goi="["+Joi+"]",yCt="["+Ooi+Moi+"]",Uoi="\\d+",P2a="["+Hoi+"]",Koi="["+Yoi+"]",joi="[^"+bCt+Joi+Uoi+Hoi+Yoi+Qoi+"]",Y1r="\\ud83c[\\udffb-\\udfff]",W2a="(?:"+yCt+"|"+Y1r+")",zoi="[^"+bCt+"]",X1r="(?:\\ud83c[\\udde6-\\uddff]){2}",J1r="[\\ud800-\\udbff][\\udc00-\\udfff]",ATe="["+Qoi+"]",qoi="\\u200d",Foi="(?:"+Koi+"|"+joi+")",O2a="(?:"+ATe+"|"+joi+")",Zoi="(?:"+Q1r+"(?:d|ll|m|re|s|t|ve))?",Loi="(?:"+Q1r+"(?:D|LL|M|RE|S|T|VE))?",$oi=W2a+"?",eai="["+Xoi+"]?",M2a="(?:"+qoi+"(?:"+[zoi,X1r,J1r].join("|")+")"+eai+$oi+")*",tai=eai+$oi+M2a,H2a="(?:"+[P2a,X1r,J1r].join("|")+")"+tai,Y2a="(?:"+[zoi+yCt+"?",yCt,X1r,J1r,V2a].join("|")+")",Q2a=RegExp(Q1r,"g"),X2a=RegExp(yCt,"g"),J2a=RegExp(Y1r+"(?="+Y1r+")|"+Y2a+tai,"g"),U2a=RegExp([ATe+"?"+Koi+"+"+Zoi+"(?="+[Goi,ATe,"$"].join("|")+")",O2a+"+"+Loi+"(?="+[Goi,ATe+Foi,"$"].join("|")+")",ATe+"?"+Foi+"+"+Zoi,ATe+"+"+Loi,Uoi,H2a].join("|"),"g"),K2a=RegExp("["+qoi+bCt+Ooi+Moi+Xoi+"]"),j2a=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,z2a={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},q2a=typeof global=="object"&&global&&global.Object===Object&&global,$2a=typeof self=="object"&&self&&self.Object===Object&&self,eSa=q2a||$2a||Function("return this")();function tSa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:ASa(e,t,r)}function fSa(e){return function(t){t=ECt(t);var r=rai(t)?aSa(t):void 0,n=r?r[0]:t.charAt(0),a=r?pSa(r,1).join(""):t.slice(1);return n[e]()+a}}function ISa(e){return function(t){return tSa(ESa(ySa(t).replace(Q2a,"")),e,"")}}function hSa(e){return!!e&&typeof e=="object"}function mSa(e){return typeof e=="symbol"||hSa(e)&&gSa.call(e)==D2a}function ECt(e){return e==null?"":dSa(e)}var CSa=ISa(function(e,t,r){return t=t.toLowerCase(),e+(r?_Sa(t):t)});function _Sa(e){return bSa(ECt(e).toLowerCase())}function ySa(e){return e=ECt(e),e&&e.replace(x2a,sSa).replace(X2a,"")}var bSa=fSa("toUpperCase");function ESa(e,t,r){return e=ECt(e),t=r?void 0:t,t===void 0?oSa(e)?lSa(e):nSa(e):e.match(t)||[]}nai.exports=CSa});var wai=H((Fpu,Bai)=>{var SSa=1/0,vSa="[object Symbol]",BSa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,wSa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Aai="\\ud800-\\udfff",TSa="\\u0300-\\u036f\\ufe20-\\ufe23",RSa="\\u20d0-\\u20f0",dai="\\u2700-\\u27bf",pai="a-z\\xdf-\\xf6\\xf8-\\xff",NSa="\\xac\\xb1\\xd7\\xf7",DSa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",kSa="\\u2000-\\u206f",xSa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",fai="A-Z\\xc0-\\xd6\\xd8-\\xde",GSa="\\ufe0e\\ufe0f",Iai=NSa+DSa+kSa+xSa,U1r="['\u2019]",sai="["+Iai+"]",hai="["+TSa+RSa+"]",mai="\\d+",FSa="["+dai+"]",Cai="["+pai+"]",_ai="[^"+Aai+Iai+mai+dai+pai+fai+"]",ZSa="\\ud83c[\\udffb-\\udfff]",LSa="(?:"+hai+"|"+ZSa+")",VSa="[^"+Aai+"]",yai="(?:\\ud83c[\\udde6-\\uddff]){2}",bai="[\\ud800-\\udbff][\\udc00-\\udfff]",dTe="["+fai+"]",PSa="\\u200d",oai="(?:"+Cai+"|"+_ai+")",WSa="(?:"+dTe+"|"+_ai+")",aai="(?:"+U1r+"(?:d|ll|m|re|s|t|ve))?",cai="(?:"+U1r+"(?:D|LL|M|RE|S|T|VE))?",Eai=LSa+"?",Sai="["+GSa+"]?",OSa="(?:"+PSa+"(?:"+[VSa,yai,bai].join("|")+")"+Sai+Eai+")*",MSa=Sai+Eai+OSa,HSa="(?:"+[FSa,yai,bai].join("|")+")"+MSa,YSa=RegExp(U1r,"g"),QSa=RegExp(hai,"g"),XSa=RegExp([dTe+"?"+Cai+"+"+aai+"(?="+[sai,dTe,"$"].join("|")+")",WSa+"+"+cai+"(?="+[sai,dTe+oai,"$"].join("|")+")",dTe+"?"+oai+"+"+aai,dTe+"+"+cai,mai,HSa].join("|"),"g"),JSa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,USa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},KSa=typeof global=="object"&&global&&global.Object===Object&&global,jSa=typeof self=="object"&&self&&self.Object===Object&&self,zSa=KSa||jSa||Function("return this")();function qSa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var dva=1/0,pva="[object Symbol]",fva=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Iva=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Fai="\\ud800-\\udfff",hva="\\u0300-\\u036f\\ufe20-\\ufe23",mva="\\u20d0-\\u20f0",Zai="\\u2700-\\u27bf",Lai="a-z\\xdf-\\xf6\\xf8-\\xff",Cva="\\xac\\xb1\\xd7\\xf7",_va="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",yva="\\u2000-\\u206f",bva=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Vai="A-Z\\xc0-\\xd6\\xd8-\\xde",Eva="\\ufe0e\\ufe0f",Pai=Cva+_va+yva+bva,K1r="['\u2019]",Tai="["+Pai+"]",Wai="["+hva+mva+"]",Oai="\\d+",Sva="["+Zai+"]",Mai="["+Lai+"]",Hai="[^"+Fai+Pai+Oai+Zai+Lai+Vai+"]",vva="\\ud83c[\\udffb-\\udfff]",Bva="(?:"+Wai+"|"+vva+")",wva="[^"+Fai+"]",Yai="(?:\\ud83c[\\udde6-\\uddff]){2}",Qai="[\\ud800-\\udbff][\\udc00-\\udfff]",pTe="["+Vai+"]",Tva="\\u200d",Rai="(?:"+Mai+"|"+Hai+")",Rva="(?:"+pTe+"|"+Hai+")",Nai="(?:"+K1r+"(?:d|ll|m|re|s|t|ve))?",Dai="(?:"+K1r+"(?:D|LL|M|RE|S|T|VE))?",Xai=Bva+"?",Jai="["+Eva+"]?",Nva="(?:"+Tva+"(?:"+[wva,Yai,Qai].join("|")+")"+Jai+Xai+")*",Dva=Jai+Xai+Nva,kva="(?:"+[Sva,Yai,Qai].join("|")+")"+Dva,xva=RegExp(K1r,"g"),Gva=RegExp(Wai,"g"),Fva=RegExp([pTe+"?"+Mai+"+"+Nai+"(?="+[Tai,pTe,"$"].join("|")+")",Rva+"+"+Dai+"(?="+[Tai,pTe+Rai,"$"].join("|")+")",pTe+"?"+Rai+"+"+Nai,pTe+"+"+Dai,Oai,kva].join("|"),"g"),Zva=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Lva={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},Vva=typeof global=="object"&&global&&global.Object===Object&&global,Pva=typeof self=="object"&&self&&self.Object===Object&&self,Wva=Vva||Pva||Function("return this")();function Ova(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var rBa=1/0,nBa="[object Symbol]",q1r="\\ud800-\\udfff",eci="\\u0300-\\u036f\\ufe20-\\ufe23",tci="\\u20d0-\\u20f0",rci="\\ufe0e\\ufe0f",iBa="["+q1r+"]",j1r="["+eci+tci+"]",z1r="\\ud83c[\\udffb-\\udfff]",sBa="(?:"+j1r+"|"+z1r+")",nci="[^"+q1r+"]",ici="(?:\\ud83c[\\udde6-\\uddff]){2}",sci="[\\ud800-\\udbff][\\udc00-\\udfff]",oci="\\u200d",aci=sBa+"?",cci="["+rci+"]?",oBa="(?:"+oci+"(?:"+[nci,ici,sci].join("|")+")"+cci+aci+")*",aBa=cci+aci+oBa,cBa="(?:"+[nci+j1r+"?",j1r,ici,sci,iBa].join("|")+")",lBa=RegExp(z1r+"(?="+z1r+")|"+cBa+aBa,"g"),uBa=RegExp("["+oci+q1r+eci+tci+rci+"]"),gBa=typeof global=="object"&&global&&global.Object===Object&&global,ABa=typeof self=="object"&&self&&self.Object===Object&&self,dBa=gBa||ABa||Function("return this")();function pBa(e){return e.split("")}function lci(e){return uBa.test(e)}function fBa(e){return lci(e)?IBa(e):pBa(e)}function IBa(e){return e.match(lBa)||[]}var hBa=Object.prototype,mBa=hBa.toString,zai=dBa.Symbol,qai=zai?zai.prototype:void 0,$ai=qai?qai.toString:void 0;function CBa(e,t,r){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:CBa(e,t,r)}function bBa(e){return function(t){t=vBa(t);var r=lci(t)?fBa(t):void 0,n=r?r[0]:t.charAt(0),a=r?yBa(r,1).join(""):t.slice(1);return n[e]()+a}}function EBa(e){return!!e&&typeof e=="object"}function SBa(e){return typeof e=="symbol"||EBa(e)&&mBa.call(e)==nBa}function vBa(e){return e==null?"":_Ba(e)}var BBa=bBa("toUpperCase");uci.exports=BBa});var Zci=H((Vpu,Fci)=>{var wBa=1/0,TBa="[object Symbol]",RBa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,NBa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,vCt="\\ud800-\\udfff",Cci="\\u0300-\\u036f\\ufe20-\\ufe23",_ci="\\u20d0-\\u20f0",yci="\\u2700-\\u27bf",bci="a-z\\xdf-\\xf6\\xf8-\\xff",DBa="\\xac\\xb1\\xd7\\xf7",kBa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",xBa="\\u2000-\\u206f",GBa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Eci="A-Z\\xc0-\\xd6\\xd8-\\xde",Sci="\\ufe0e\\ufe0f",vci=DBa+kBa+xBa+GBa,e2r="['\u2019]",FBa="["+vCt+"]",Aci="["+vci+"]",SCt="["+Cci+_ci+"]",Bci="\\d+",ZBa="["+yci+"]",wci="["+bci+"]",Tci="[^"+vCt+vci+Bci+yci+bci+Eci+"]",$1r="\\ud83c[\\udffb-\\udfff]",LBa="(?:"+SCt+"|"+$1r+")",Rci="[^"+vCt+"]",t2r="(?:\\ud83c[\\udde6-\\uddff]){2}",r2r="[\\ud800-\\udbff][\\udc00-\\udfff]",fTe="["+Eci+"]",Nci="\\u200d",dci="(?:"+wci+"|"+Tci+")",VBa="(?:"+fTe+"|"+Tci+")",pci="(?:"+e2r+"(?:d|ll|m|re|s|t|ve))?",fci="(?:"+e2r+"(?:D|LL|M|RE|S|T|VE))?",Dci=LBa+"?",kci="["+Sci+"]?",PBa="(?:"+Nci+"(?:"+[Rci,t2r,r2r].join("|")+")"+kci+Dci+")*",xci=kci+Dci+PBa,WBa="(?:"+[ZBa,t2r,r2r].join("|")+")"+xci,OBa="(?:"+[Rci+SCt+"?",SCt,t2r,r2r,FBa].join("|")+")",MBa=RegExp(e2r,"g"),HBa=RegExp(SCt,"g"),YBa=RegExp($1r+"(?="+$1r+")|"+OBa+xci,"g"),QBa=RegExp([fTe+"?"+wci+"+"+pci+"(?="+[Aci,fTe,"$"].join("|")+")",VBa+"+"+fci+"(?="+[Aci,fTe+dci,"$"].join("|")+")",fTe+"?"+dci+"+"+pci,fTe+"+"+fci,Bci,WBa].join("|"),"g"),XBa=RegExp("["+Nci+vCt+Cci+_ci+Sci+"]"),JBa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,UBa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},KBa=typeof global=="object"&&global&&global.Object===Object&&global,jBa=typeof self=="object"&&self&&self.Object===Object&&self,zBa=KBa||jBa||Function("return this")();function qBa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:lwa(e,t,r)}function Awa(e){return function(t){t=n2r(t);var r=Gci(t)?iwa(t):void 0,n=r?r[0]:t.charAt(0),a=r?gwa(r,1).join(""):t.slice(1);return n[e]()+a}}function dwa(e){return function(t){return qBa(Cwa(Iwa(t).replace(MBa,"")),e,"")}}function pwa(e){return!!e&&typeof e=="object"}function fwa(e){return typeof e=="symbol"||pwa(e)&&cwa.call(e)==TBa}function n2r(e){return e==null?"":uwa(e)}function Iwa(e){return e=n2r(e),e&&e.replace(NBa,rwa).replace(HBa,"")}var hwa=dwa(function(e,t,r){return e+(r?" ":"")+mwa(t)}),mwa=Awa("toUpperCase");function Cwa(e,t,r){return e=n2r(e),t=r?void 0:t,t===void 0?nwa(e)?owa(e):ewa(e):e.match(t)||[]}Fci.exports=hwa});var Rli=H(Nhe=>{"use strict";Object.defineProperty(Nhe,"__esModule",{value:!0});Nhe.Application=Nhe.MinistoreContext=void 0;var vwa=(Pa(),vi(Va)),Bwa=Al(),kQe=vwa.__importStar(Ec()),wwa=wt("readline");Nhe.MinistoreContext=kQe.default.createContext(null);var Twa=({children:e})=>{let{stdin:t,setRawMode:r}=(0,Bwa.useStdin)();(0,kQe.useEffect)(()=>{r&&r(!0),t&&(0,wwa.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,kQe.useState)(new Map),o=(0,kQe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(new Map([...n,[l,A]]))}),[n,a]);return kQe.default.createElement(Nhe.MinistoreContext.Provider,{value:o,children:e})};Nhe.Application=Twa});var Dli=H(d2r=>{"use strict";Object.defineProperty(d2r,"__esModule",{value:!0});d2r.useKeypress=Nwa;var Rwa=Al(),Nli=Ec();function Nwa({active:e},t,r){let{stdin:n}=(0,Rwa.useStdin)(),a=(0,Nli.useCallback)((o,l)=>t(o,l),r);(0,Nli.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var Gli=H(p2r=>{"use strict";Object.defineProperty(p2r,"__esModule",{value:!0});p2r.renderForm=Gwa;var Dwa=(Pa(),vi(Va)),kli=Al(),xli=Dwa.__importDefault(Ec()),kwa=Rli(),xwa=Dli();async function Gwa(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,kli.useApp)();(0,xwa.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,kli.render)(xli.default.createElement(kwa.Application,null,xli.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var Lli=H(RCt=>{"use strict";Object.defineProperty(RCt,"__esModule",{value:!0});RCt.forceStdinTty=void 0;var Fli=Zli(wt("fs")),Fwa=Zli(wt("tty"));function Zli(e){return e&&e.__esModule?e:{default:e}}var Zwa=function(){if(process.stdin.isTTY)return!1;var t=Fli.default.constants,r=t.O_RDONLY,n=t.O_NOCTTY,a=Fli.default.openSync("/dev/tty",r+n),o=new Fwa.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};RCt.forceStdinTty=Zwa});var Pli=H(($hu,Vli)=>{function Lwa(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function Vwa(e){return e.split(` +`).map(n=>Lwa(n)).join(` +`)}Vli.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,n=typeof t.indent=="string"?t.indent:" ",a=t.newline||` +`+n,o=typeof t.escape=="function"?t.escape:Pwa,l=".{1,"+r+"}";t.cut!==!0&&(l+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var A=new RegExp(l,"g"),f=e.match(A)||[],I=n+f.map(function(C){return C.slice(-1)===` +`&&(C=C.slice(0,C.length-1)),o(C)}).join(a);return t.trim===!0&&(I=Vwa(I)),I};function Pwa(e){return e}});var Oli=H((emu,Wli)=>{"use strict";var Wwa="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";Wli.exports=Wwa});var Qli=H((tmu,Yli)=>{"use strict";var Owa=Oli();function Mli(){}function Hli(){}Hli.resetWarningCache=Mli;Yli.exports=function(){function e(n,a,o,l,A,f){if(f!==Owa){var I=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw I.name="Invariant Violation",I}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:Hli,resetWarningCache:Mli};return r.PropTypes=r,r}});var mTe=H((imu,Xli)=>{Xli.exports=Qli()();var rmu,nmu});var B2r=H((xQe,_Te)=>{var Mwa=200,v2r="__lodash_hash_undefined__",LCt=1,iui=2,sui=9007199254740991,NCt="[object Arguments]",m2r="[object Array]",Hwa="[object AsyncFunction]",oui="[object Boolean]",aui="[object Date]",cui="[object Error]",lui="[object Function]",Ywa="[object GeneratorFunction]",DCt="[object Map]",uui="[object Number]",Qwa="[object Null]",CTe="[object Object]",Jli="[object Promise]",Xwa="[object Proxy]",gui="[object RegExp]",kCt="[object Set]",Aui="[object String]",Jwa="[object Symbol]",Uwa="[object Undefined]",C2r="[object WeakMap]",dui="[object ArrayBuffer]",xCt="[object DataView]",Kwa="[object Float32Array]",jwa="[object Float64Array]",zwa="[object Int8Array]",qwa="[object Int16Array]",$wa="[object Int32Array]",eTa="[object Uint8Array]",tTa="[object Uint8ClampedArray]",rTa="[object Uint16Array]",nTa="[object Uint32Array]",iTa=/[\\^$.*+?()[\]{}|]/g,sTa=/^\[object .+?Constructor\]$/,oTa=/^(?:0|[1-9]\d*)$/,M1={};M1[Kwa]=M1[jwa]=M1[zwa]=M1[qwa]=M1[$wa]=M1[eTa]=M1[tTa]=M1[rTa]=M1[nTa]=!0;M1[NCt]=M1[m2r]=M1[dui]=M1[oui]=M1[xCt]=M1[aui]=M1[cui]=M1[lui]=M1[DCt]=M1[uui]=M1[CTe]=M1[gui]=M1[kCt]=M1[Aui]=M1[C2r]=!1;var pui=typeof global=="object"&&global&&global.Object===Object&&global,aTa=typeof self=="object"&&self&&self.Object===Object&&self,z$=pui||aTa||Function("return this")(),fui=typeof xQe=="object"&&xQe&&!xQe.nodeType&&xQe,Uli=fui&&typeof _Te=="object"&&_Te&&!_Te.nodeType&&_Te,Iui=Uli&&Uli.exports===fui,f2r=Iui&&pui.process,Kli=function(){try{return f2r&&f2r.binding&&f2r.binding("util")}catch{}}(),jli=Kli&&Kli.isTypedArray;function cTa(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r-1}function VTa(e,t){var r=this.__data__,n=PCt(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}q$.prototype.clear=GTa;q$.prototype.delete=FTa;q$.prototype.get=ZTa;q$.prototype.has=LTa;q$.prototype.set=VTa;function xhe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tA))return!1;var I=o.get(e);if(I&&o.get(t))return I==t;var C=-1,b=!0,E=r&iui?new FCt:void 0;for(o.set(e,t),o.set(t,e);++C-1&&e%1==0&&e-1&&e%1==0&&e<=sui}function vui(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function ZQe(e){return e!=null&&typeof e=="object"}var Bui=jli?ATa(jli):tRa;function fRa(e){return dRa(e)?zTa(e):rRa(e)}function IRa(){return[]}function hRa(){return!1}_Te.exports=pRa});var Tui=H((smu,wui)=>{"use strict";wui.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),n=typeof t=="number"?t:0;return r.splice(-n%r.length).concat(r)}});var w2r=H((omu,Nui)=>{"use strict";var mRa=eIr(),Rui=process.platform,YX={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},CRa={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:YX.heart,arrowUp:YX.arrowUp,arrowDown:YX.arrowDown,arrowLeft:YX.arrowLeft,arrowRight:YX.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};Rui==="linux"&&(YX.questionMarkPrefix="?");var OCt=Rui==="win32"?CRa:YX,_Ra=e=>(OCt===YX||Object.keys(YX).forEach(t=>{YX[t]!==OCt[t]&&(e=e.replace(new RegExp(mRa(YX[t]),"g"),OCt[t]))}),e);Nui.exports=Object.assign(_Ra,OCt)});var xui=H(MCt=>{"use strict";Object.defineProperty(MCt,"__esModule",{value:!0});MCt.default=void 0;var Dui=T2r(Ec()),yRa=T2r(mTe()),kui=Al(),bRa=T2r(w2r());function T2r(e){return e&&e.__esModule?e:{default:e}}var R2r=({isHighlighted:e})=>Dui.default.createElement(kui.Box,{marginRight:1},Dui.default.createElement(kui.Text,{color:e?"blue":void 0},e?bRa.default.pointer:" "));R2r.propTypes={isHighlighted:yRa.default.bool};R2r.defaultProps={isHighlighted:!1};var ERa=R2r;MCt.default=ERa});var Zui=H(HCt=>{"use strict";Object.defineProperty(HCt,"__esModule",{value:!0});HCt.default=void 0;var SRa=Fui(Ec()),Gui=Fui(mTe()),vRa=Al();function Fui(e){return e&&e.__esModule?e:{default:e}}var N2r=({isHighlighted:e,label:t})=>SRa.default.createElement(vRa.Text,{color:e?"blue":void 0},t);N2r.propTypes={isHighlighted:Gui.default.bool,label:Gui.default.string.isRequired};N2r.defaultProps={isHighlighted:!1};var BRa=N2r;HCt.default=BRa});var Wui=H(YCt=>{"use strict";Object.defineProperty(YCt,"__esModule",{value:!0});YCt.default=void 0;var Lui=D2r(Ec()),wRa=D2r(mTe()),Vui=Al(),Pui=D2r(w2r());function D2r(e){return e&&e.__esModule?e:{default:e}}var k2r=({isSelected:e})=>Lui.default.createElement(Vui.Box,{marginRight:1},Lui.default.createElement(Vui.Text,{color:"green"},e?Pui.default.circleFilled:Pui.default.circle));k2r.propTypes={isSelected:wRa.default.bool};k2r.defaultProps={isSelected:!1};var TRa=k2r;YCt.default=TRa});var Qui=H(Zhe=>{"use strict";Object.defineProperty(Zhe,"__esModule",{value:!0});Object.defineProperty(Zhe,"Indicator",{enumerable:!0,get:function(){return Oui.default}});Object.defineProperty(Zhe,"Item",{enumerable:!0,get:function(){return Mui.default}});Object.defineProperty(Zhe,"CheckBox",{enumerable:!0,get:function(){return Hui.default}});Zhe.default=void 0;var Fhe=NRa(Ec()),YZ=bTe(mTe()),RRa=bTe(B2r()),QCt=bTe(Tui()),x2r=Al(),Oui=bTe(xui()),Mui=bTe(Zui()),Hui=bTe(Wui());function bTe(e){return e&&e.__esModule?e:{default:e}}function Yui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Yui=function(){return e},e}function NRa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Yui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function G2r(){return G2r=Object.assign||function(e){for(var t=1;t{let{items:n,focus:a,onHighlight:o,onSubmit:l}=this.props,{rotateIndex:A,highlightedIndex:f}=this.state,I=this.props.selected||this.state.selected,{limit:C,hasLimit:b}=this;if(a===!1)return;let E=String(r);if(E===DRa||E==="k"){let N=(b?C:n.length)-1,B=f===0,F=b?f:N,Q=B?A+1:A,X=B?F:f-1;this.setState({rotateIndex:Q,highlightedIndex:X});let ae=b?(0,QCt.default)(n,Q).slice(0,C):n;o(ae[X])}if(E===kRa||E==="j"){let N=f===(b?C:n.length)-1,B=b?f:0,F=N?A-1:A,Q=N?B:f+1;this.setState({rotateIndex:F,highlightedIndex:Q});let X=b?(0,QCt.default)(n,F).slice(0,C):n;o(X[Q])}if(E===GRa){let B=(b?(0,QCt.default)(n,A).slice(0,C):n)[f];this.setSelectedState(this.selectItem(B))}E===xRa&&l(I)})}render(){let{items:t,indicatorComponent:r,itemComponent:n,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:l}=this.state,{limit:A,hasLimit:f}=this,I=f?(0,QCt.default)(t,o).slice(0,A):t;return Fhe.default.createElement(x2r.Box,{flexDirection:"column"},I.map((C,b)=>{let E=C.key||C.value,N=b===l,B=this.isSelected(C.value);return Fhe.default.createElement(x2r.Box,{key:E},Fhe.default.createElement(r,{isHighlighted:N}),Fhe.default.createElement(a,{isSelected:B}),Fhe.default.createElement(n,{...C,isHighlighted:N}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,RRa.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:n})=>n).includes(t)}selectItem(t){let{onSelect:r,onUnselect:n}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(n(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};XCt(VQe,"propTypes",{items:YZ.default.array,selected:YZ.default.array,defaultSelected:YZ.default.array,focus:YZ.default.bool,initialIndex:YZ.default.number,indicatorComponent:YZ.default.func,checkboxComponent:YZ.default.func,itemComponent:YZ.default.func,limit:YZ.default.number,onSelect:YZ.default.func,onUnselect:YZ.default.func,onSubmit:YZ.default.func,onHighlight:YZ.default.func,stdin:YZ.default.any.isRequired,setRawMode:YZ.default.func.isRequired});XCt(VQe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:Oui.default,checkboxComponent:Hui.default,itemComponent:Mui.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var FRa=e=>{let{stdin:t,setRawMode:r}=(0,x2r.useStdin)();return Fhe.default.createElement(VQe,G2r({},e,{stdin:t,setRawMode:r}))};Zhe.default=FRa});var Jui=H(ETe=>{"use strict";Object.defineProperty(ETe,"__esModule",{value:!0});Object.defineProperty(ETe,"default",{enumerable:!0,get:function(){return JCt.default}});Object.defineProperty(ETe,"Item",{enumerable:!0,get:function(){return JCt.Item}});Object.defineProperty(ETe,"Indicator",{enumerable:!0,get:function(){return JCt.Indicator}});Object.defineProperty(ETe,"CheckBox",{enumerable:!0,get:function(){return JCt.CheckBox}});var JCt=ZRa(Qui());function Xui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Xui=function(){return e},e}function ZRa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Xui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var j2r=H((_Cu,Sgi)=>{var xTe=1e3,GTe=xTe*60,FTe=GTe*60,Lhe=FTe*24,qRa=Lhe*7,$Ra=Lhe*365.25;Sgi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return eNa(e);if(r==="number"&&isFinite(e))return t.long?rNa(e):tNa(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function eNa(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*$Ra;case"weeks":case"week":case"w":return r*qRa;case"days":case"day":case"d":return r*Lhe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*FTe;case"minutes":case"minute":case"mins":case"min":case"m":return r*GTe;case"seconds":case"second":case"secs":case"sec":case"s":return r*xTe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function tNa(e){var t=Math.abs(e);return t>=Lhe?Math.round(e/Lhe)+"d":t>=FTe?Math.round(e/FTe)+"h":t>=GTe?Math.round(e/GTe)+"m":t>=xTe?Math.round(e/xTe)+"s":e+"ms"}function rNa(e){var t=Math.abs(e);return t>=Lhe?n_t(e,t,Lhe,"day"):t>=FTe?n_t(e,t,FTe,"hour"):t>=GTe?n_t(e,t,GTe,"minute"):t>=xTe?n_t(e,t,xTe,"second"):e+" ms"}function n_t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var z2r=H((yCu,vgi)=>{function nNa(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=j2r(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{lO.formatArgs=sNa;lO.save=oNa;lO.load=aNa;lO.useColors=iNa;lO.storage=cNa();lO.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();lO.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function iNa(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function sNa(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+i_t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}lO.log=console.debug||console.log||(()=>{});function oNa(e){try{e?lO.storage.setItem("debug",e):lO.storage.removeItem("debug")}catch{}}function aNa(){let e;try{e=lO.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function cNa(){try{return localStorage}catch{}}i_t.exports=z2r()(lO);var{formatters:lNa}=i_t.exports;lNa.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Tgi=H((rD,o_t)=>{var uNa=wt("tty"),s_t=wt("util");rD.init=hNa;rD.log=pNa;rD.formatArgs=ANa;rD.save=fNa;rD.load=INa;rD.useColors=gNa;rD.destroy=s_t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");rD.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(rD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}rD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function gNa(){return"colors"in rD.inspectOpts?!!rD.inspectOpts.colors:uNa.isatty(process.stderr.fd)}function ANa(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+i_t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=zRa()+t+" "+e[0]}function zRa(){return rD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function qRa(...e){return process.stderr.write(n_t.formatWithOptions(rD.inspectOpts,...e)+` -`)}function $Ra(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function eNa(){return process.env.DEBUG}function tNa(e){e.inspectOpts={};let t=Object.keys(rD.inspectOpts);for(let r=0;rt.trim()).join(" ")};_gi.O=function(e){return this.inspectOpts.colors=this.useColors,n_t.inspect(e,this.inspectOpts)}});var uT=H((Nmu,U2r)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?U2r.exports=Cgi():U2r.exports=ygi()});var Sgi=H((xmu,K2r)=>{"use strict";var sNa=Object.prototype.hasOwnProperty,XZ="~";function WQe(){}Object.create&&(WQe.prototype=Object.create(null),new WQe().__proto__||(XZ=!1));function oNa(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function Egi(e,t,r,n,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new oNa(r,n||e,a),l=XZ?XZ+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function s_t(e,t){--e._eventsCount===0?e._events=new WQe:delete e._events[t]}function BG(){this._events=new WQe,this._eventsCount=0}BG.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)sNa.call(r,n)&&t.push(XZ?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};BG.prototype.listeners=function(t){var r=XZ?XZ+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,o=n.length,l=new Array(o);a{"use strict";Dgi.exports=INa;function FTe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function INa(e){if(e=e||{},e.circles)return hNa(e);let t=new Map;if(t.set(Date,l=>new Date(l)),t.set(Map,(l,A)=>new Map(n(Array.from(l),A))),t.set(Set,(l,A)=>new Set(n(Array.from(l),A))),e.constructorHandlers)for(let l of e.constructorHandlers)t.set(l[0],l[1]);let r=null;return e.proto?o:a;function n(l,A){let f=Object.keys(l),I=new Array(f.length);for(let C=0;Cnew Date(f)),n.set(Map,(f,I)=>new Map(o(Array.from(f),I))),n.set(Set,(f,I)=>new Set(o(Array.from(f),I))),e.constructorHandlers)for(let f of e.constructorHandlers)n.set(f[0],f[1]);let a=null;return e.proto?A:l;function o(f,I){let C=Object.keys(f),b=new Array(C.length);for(let E=0;E{a_t=globalThis.window?.document!==void 0,SCu=globalThis.process?.versions?.node!==void 0,vCu=globalThis.process?.versions?.bun!==void 0,BCu=globalThis.Deno?.version?.deno!==void 0,wCu=globalThis.process?.versions?.electron!==void 0,TCu=globalThis.navigator?.userAgent?.includes("jsdom")===!0,RCu=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,NCu=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,DCu=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,kCu=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,OQe=globalThis.navigator?.userAgentData?.platform,xCu=OQe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",GCu=OQe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",FCu=OQe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",ZCu=OQe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),LCu=OQe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var YQe={};sI(YQe,{beep:()=>HNa,clearScreen:()=>PNa,clearTerminal:()=>WNa,cursorBackward:()=>SNa,cursorDown:()=>bNa,cursorForward:()=>ENa,cursorGetPosition:()=>wNa,cursorHide:()=>NNa,cursorLeft:()=>Zgi,cursorMove:()=>yNa,cursorNextLine:()=>TNa,cursorPrevLine:()=>RNa,cursorRestorePosition:()=>BNa,cursorSavePosition:()=>vNa,cursorShow:()=>DNa,cursorTo:()=>_Na,cursorUp:()=>Fgi,enterAlternativeScreen:()=>ONa,eraseDown:()=>FNa,eraseEndLine:()=>xNa,eraseLine:()=>Lgi,eraseLines:()=>kNa,eraseScreen:()=>z2r,eraseStartLine:()=>GNa,eraseUp:()=>ZNa,exitAlternativeScreen:()=>MNa,iTerm:()=>XNa,image:()=>QNa,link:()=>YNa,scrollDown:()=>VNa,scrollUp:()=>LNa});import q2r from"node:process";var m0,HQe,ZTe,MQe,Ggi,mNa,CNa,_Na,yNa,Fgi,bNa,ENa,SNa,Zgi,vNa,BNa,wNa,TNa,RNa,NNa,DNa,kNa,xNa,GNa,Lgi,FNa,ZNa,z2r,LNa,VNa,PNa,WNa,ONa,MNa,HNa,YNa,QNa,XNa,$2r=bc(()=>{xgi();m0="\x1B[",HQe="\x1B]",ZTe="\x07",MQe=";",Ggi=!a_t&&q2r.env.TERM_PROGRAM==="Apple_Terminal",mNa=!a_t&&q2r.platform==="win32",CNa=a_t?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:q2r.cwd,_Na=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?m0+(e+1)+"G":m0+(t+1)+MQe+(e+1)+"H"},yNa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=m0+-e+"D":e>0&&(r+=m0+e+"C"),t<0?r+=m0+-t+"A":t>0&&(r+=m0+t+"B"),r},Fgi=(e=1)=>m0+e+"A",bNa=(e=1)=>m0+e+"B",ENa=(e=1)=>m0+e+"C",SNa=(e=1)=>m0+e+"D",Zgi=m0+"G",vNa=Ggi?"\x1B7":m0+"s",BNa=Ggi?"\x1B8":m0+"u",wNa=m0+"6n",TNa=m0+"E",RNa=m0+"F",NNa=m0+"?25l",DNa=m0+"?25h",kNa=e=>{let t="";for(let r=0;r[HQe,"8",MQe,MQe,t,ZTe,e,HQe,"8",MQe,MQe,ZTe].join(""),QNa=(e,t={})=>{let r=`${HQe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+ZTe},XNa={setCwd:(e=CNa())=>`${HQe}50;CurrentDir=${e}${ZTe}`,annotation(e,t={}){let r=`${HQe}1337;`,n=t.x!==void 0,a=t.y!==void 0;if((n||a)&&!(n&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+ZTe}}});var Vgi=bc(()=>{$2r();$2r()});function eSr(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))JNa(e,t,a,r);return KNa(e,t),$Na(e,t,n),e}var JNa,UNa,KNa,jNa,zNa,qNa,$Na,Pgi=bc(()=>{JNa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!UNa(a,o)&&n||Object.defineProperty(e,r,o)},UNa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},KNa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},jNa=(e,t)=>`/* Wrapped ${e}*/ -${t}`,zNa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),qNa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),$Na=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=jNa.bind(null,n,t.toString());Object.defineProperty(a,"name",qNa);let{writable:o,enumerable:l,configurable:A}=zNa;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:l,configurable:A})}});var c_t,Wgi,Ogi,Mgi=bc(()=>{Pgi();c_t=new WeakMap,Wgi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(c_t.set(o,++n),n===1)r=e.apply(this,l),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return eSr(o,e),c_t.set(o,n),o};Wgi.callCount=e=>{if(!c_t.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return c_t.get(e)};Ogi=Wgi});import l_t from"node:process";var Hgi,eDa,Ygi,Qgi=bc(()=>{Mgi();m1r();Hgi=l_t.stderr.isTTY?l_t.stderr:l_t.stdout.isTTY?l_t.stdout:void 0,eDa=Hgi?Ogi(()=>{iCt(()=>{Hgi.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},Ygi=eDa});import Xgi from"node:process";var u_t,LTe,tSr,Jgi=bc(()=>{Qgi();u_t=!1,LTe={};LTe.show=(e=Xgi.stderr)=>{e.isTTY&&(u_t=!1,e.write("\x1B[?25h"))};LTe.hide=(e=Xgi.stderr)=>{e.isTTY&&(Ygi(),u_t=!0,e.write("\x1B[?25l"))};LTe.toggle=(e,t)=>{e!==void 0&&(u_t=e),u_t?LTe.show(t):LTe.hide(t)};tSr=LTe});function Ugi(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function Kgi(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function jgi(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var zgi=bc(()=>{});function tDa(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function g_t(e,{ambiguousAsWide:t=!1}={}){return tDa(e),Kgi(e)||jgi(e)||t&&Ugi(e)?2:1}var rSr=bc(()=>{zgi()});var $gi=H((n_u,qgi)=>{qgi.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function MM(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:n=!1}=t;if(n||(e=K$(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:l}of rDa.segment(e)){let A=l.codePointAt(0);if(!(A<=31||A>=127&&A<=159)&&!(A>=8203&&A<=8207||A===65279)&&!(A>=768&&A<=879||A>=6832&&A<=6911||A>=7616&&A<=7679||A>=8400&&A<=8447||A>=65056&&A<=65071)&&!(A>=55296&&A<=57343)&&!(A>=65024&&A<=65039)&&!nDa.test(l)){if((0,eAi.default)().test(l)){a+=2;continue}a+=g_t(A,o)}}return a}var eAi,rDa,nDa,nSr=bc(()=>{gQe();rSr();eAi=Nt($gi(),1),rDa=new Intl.Segmenter,nDa=/^\p{Default_Ignorable_Code_Point}$/u});function oDa(){let e=new Map;for(let[t,r]of Object.entries(T2)){for(let[n,a]of Object.entries(r))T2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=T2[n],e.set(a[0],a[1]);Object.defineProperty(T2,t,{value:r,enumerable:!1})}return Object.defineProperty(T2,"codes",{value:e,enumerable:!1}),T2.color.close="\x1B[39m",T2.bgColor.close="\x1B[49m",T2.color.ansi=tAi(),T2.color.ansi256=rAi(),T2.color.ansi16m=nAi(),T2.bgColor.ansi=tAi(10),T2.bgColor.ansi256=rAi(10),T2.bgColor.ansi16m=nAi(10),Object.defineProperties(T2,{rgbToAnsi256:{value:(t,r,n)=>t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>T2.rgbToAnsi256(...T2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>T2.ansi256ToAnsi(T2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>T2.ansi256ToAnsi(T2.hexToAnsi256(t)),enumerable:!1}}),T2}var tAi,rAi,nAi,T2,a_u,iDa,sDa,c_u,aDa,aV,A_t=bc(()=>{tAi=(e=0)=>t=>`\x1B[${t+e}m`,rAi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,nAi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,T2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},a_u=Object.keys(T2.modifier),iDa=Object.keys(T2.color),sDa=Object.keys(T2.bgColor),c_u=[...iDa,...sDa];aDa=oDa(),aV=aDa});var cAi={};sI(cAi,{default:()=>f_t});function f_t(e,t,r){return String(e).normalize().replaceAll(`\r +`+o),e.push(a+"m+"+o_t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=dNa()+t+" "+e[0]}function dNa(){return rD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function pNa(...e){return process.stderr.write(s_t.formatWithOptions(rD.inspectOpts,...e)+` +`)}function fNa(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function INa(){return process.env.DEBUG}function hNa(e){e.inspectOpts={};let t=Object.keys(rD.inspectOpts);for(let r=0;rt.trim()).join(" ")};wgi.O=function(e){return this.inspectOpts.colors=this.useColors,s_t.inspect(e,this.inspectOpts)}});var uT=H((bCu,q2r)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?q2r.exports=Bgi():q2r.exports=Tgi()});var Dgi=H((vCu,$2r)=>{"use strict";var yNa=Object.prototype.hasOwnProperty,XZ="~";function MQe(){}Object.create&&(MQe.prototype=Object.create(null),new MQe().__proto__||(XZ=!1));function bNa(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function Ngi(e,t,r,n,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new bNa(r,n||e,a),l=XZ?XZ+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function a_t(e,t){--e._eventsCount===0?e._events=new MQe:delete e._events[t]}function BG(){this._events=new MQe,this._eventsCount=0}BG.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)yNa.call(r,n)&&t.push(XZ?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};BG.prototype.listeners=function(t){var r=XZ?XZ+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,o=n.length,l=new Array(o);a{"use strict";Vgi.exports=kNa;function ZTe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function kNa(e){if(e=e||{},e.circles)return xNa(e);let t=new Map;if(t.set(Date,l=>new Date(l)),t.set(Map,(l,A)=>new Map(n(Array.from(l),A))),t.set(Set,(l,A)=>new Set(n(Array.from(l),A))),e.constructorHandlers)for(let l of e.constructorHandlers)t.set(l[0],l[1]);let r=null;return e.proto?o:a;function n(l,A){let f=Object.keys(l),I=new Array(f.length);for(let C=0;Cnew Date(f)),n.set(Map,(f,I)=>new Map(o(Array.from(f),I))),n.set(Set,(f,I)=>new Set(o(Array.from(f),I))),e.constructorHandlers)for(let f of e.constructorHandlers)n.set(f[0],f[1]);let a=null;return e.proto?A:l;function o(f,I){let C=Object.keys(f),b=new Array(C.length);for(let E=0;E{l_t=globalThis.window?.document!==void 0,I_u=globalThis.process?.versions?.node!==void 0,h_u=globalThis.process?.versions?.bun!==void 0,m_u=globalThis.Deno?.version?.deno!==void 0,C_u=globalThis.process?.versions?.electron!==void 0,__u=globalThis.navigator?.userAgent?.includes("jsdom")===!0,y_u=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,b_u=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,E_u=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,S_u=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,HQe=globalThis.navigator?.userAgentData?.platform,v_u=HQe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",B_u=HQe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",w_u=HQe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",T_u=HQe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),R_u=HQe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var XQe={};sI(XQe,{beep:()=>sDa,clearScreen:()=>tDa,clearTerminal:()=>rDa,cursorBackward:()=>WNa,cursorDown:()=>VNa,cursorForward:()=>PNa,cursorGetPosition:()=>HNa,cursorHide:()=>XNa,cursorLeft:()=>Hgi,cursorMove:()=>LNa,cursorNextLine:()=>YNa,cursorPrevLine:()=>QNa,cursorRestorePosition:()=>MNa,cursorSavePosition:()=>ONa,cursorShow:()=>JNa,cursorTo:()=>ZNa,cursorUp:()=>Mgi,enterAlternativeScreen:()=>nDa,eraseDown:()=>zNa,eraseEndLine:()=>KNa,eraseLine:()=>Ygi,eraseLines:()=>UNa,eraseScreen:()=>tSr,eraseStartLine:()=>jNa,eraseUp:()=>qNa,exitAlternativeScreen:()=>iDa,iTerm:()=>cDa,image:()=>aDa,link:()=>oDa,scrollDown:()=>eDa,scrollUp:()=>$Na});import rSr from"node:process";var m0,QQe,LTe,YQe,Ogi,GNa,FNa,ZNa,LNa,Mgi,VNa,PNa,WNa,Hgi,ONa,MNa,HNa,YNa,QNa,XNa,JNa,UNa,KNa,jNa,Ygi,zNa,qNa,tSr,$Na,eDa,tDa,rDa,nDa,iDa,sDa,oDa,aDa,cDa,nSr=bc(()=>{Wgi();m0="\x1B[",QQe="\x1B]",LTe="\x07",YQe=";",Ogi=!l_t&&rSr.env.TERM_PROGRAM==="Apple_Terminal",GNa=!l_t&&rSr.platform==="win32",FNa=l_t?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:rSr.cwd,ZNa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?m0+(e+1)+"G":m0+(t+1)+YQe+(e+1)+"H"},LNa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=m0+-e+"D":e>0&&(r+=m0+e+"C"),t<0?r+=m0+-t+"A":t>0&&(r+=m0+t+"B"),r},Mgi=(e=1)=>m0+e+"A",VNa=(e=1)=>m0+e+"B",PNa=(e=1)=>m0+e+"C",WNa=(e=1)=>m0+e+"D",Hgi=m0+"G",ONa=Ogi?"\x1B7":m0+"s",MNa=Ogi?"\x1B8":m0+"u",HNa=m0+"6n",YNa=m0+"E",QNa=m0+"F",XNa=m0+"?25l",JNa=m0+"?25h",UNa=e=>{let t="";for(let r=0;r[QQe,"8",YQe,YQe,t,LTe,e,QQe,"8",YQe,YQe,LTe].join(""),aDa=(e,t={})=>{let r=`${QQe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+LTe},cDa={setCwd:(e=FNa())=>`${QQe}50;CurrentDir=${e}${LTe}`,annotation(e,t={}){let r=`${QQe}1337;`,n=t.x!==void 0,a=t.y!==void 0;if((n||a)&&!(n&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+LTe}}});var Qgi=bc(()=>{nSr();nSr()});function iSr(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))lDa(e,t,a,r);return gDa(e,t),fDa(e,t,n),e}var lDa,uDa,gDa,ADa,dDa,pDa,fDa,Xgi=bc(()=>{lDa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!uDa(a,o)&&n||Object.defineProperty(e,r,o)},uDa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},gDa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},ADa=(e,t)=>`/* Wrapped ${e}*/ +${t}`,dDa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),pDa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),fDa=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=ADa.bind(null,n,t.toString());Object.defineProperty(a,"name",pDa);let{writable:o,enumerable:l,configurable:A}=dDa;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:l,configurable:A})}});var u_t,Jgi,Ugi,Kgi=bc(()=>{Xgi();u_t=new WeakMap,Jgi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(u_t.set(o,++n),n===1)r=e.apply(this,l),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return iSr(o,e),u_t.set(o,n),o};Jgi.callCount=e=>{if(!u_t.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return u_t.get(e)};Ugi=Jgi});import g_t from"node:process";var jgi,IDa,zgi,qgi=bc(()=>{Kgi();b1r();jgi=g_t.stderr.isTTY?g_t.stderr:g_t.stdout.isTTY?g_t.stdout:void 0,IDa=jgi?Ugi(()=>{oCt(()=>{jgi.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},zgi=IDa});import $gi from"node:process";var A_t,VTe,sSr,eAi=bc(()=>{qgi();A_t=!1,VTe={};VTe.show=(e=$gi.stderr)=>{e.isTTY&&(A_t=!1,e.write("\x1B[?25h"))};VTe.hide=(e=$gi.stderr)=>{e.isTTY&&(zgi(),A_t=!0,e.write("\x1B[?25l"))};VTe.toggle=(e,t)=>{e!==void 0&&(A_t=e),A_t?VTe.show(t):VTe.hide(t)};sSr=VTe});function tAi(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function rAi(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function nAi(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var iAi=bc(()=>{});function hDa(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function d_t(e,{ambiguousAsWide:t=!1}={}){return hDa(e),rAi(e)||nAi(e)||t&&tAi(e)?2:1}var oSr=bc(()=>{iAi()});var oAi=H((K_u,sAi)=>{sAi.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function MM(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:n=!1}=t;if(n||(e=K$(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:l}of mDa.segment(e)){let A=l.codePointAt(0);if(!(A<=31||A>=127&&A<=159)&&!(A>=8203&&A<=8207||A===65279)&&!(A>=768&&A<=879||A>=6832&&A<=6911||A>=7616&&A<=7679||A>=8400&&A<=8447||A>=65056&&A<=65071)&&!(A>=55296&&A<=57343)&&!(A>=65024&&A<=65039)&&!CDa.test(l)){if((0,aAi.default)().test(l)){a+=2;continue}a+=d_t(A,o)}}return a}var aAi,mDa,CDa,aSr=bc(()=>{dQe();oSr();aAi=Nt(oAi(),1),mDa=new Intl.Segmenter,CDa=/^\p{Default_Ignorable_Code_Point}$/u});function bDa(){let e=new Map;for(let[t,r]of Object.entries(T2)){for(let[n,a]of Object.entries(r))T2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=T2[n],e.set(a[0],a[1]);Object.defineProperty(T2,t,{value:r,enumerable:!1})}return Object.defineProperty(T2,"codes",{value:e,enumerable:!1}),T2.color.close="\x1B[39m",T2.bgColor.close="\x1B[49m",T2.color.ansi=cAi(),T2.color.ansi256=lAi(),T2.color.ansi16m=uAi(),T2.bgColor.ansi=cAi(10),T2.bgColor.ansi256=lAi(10),T2.bgColor.ansi16m=uAi(10),Object.defineProperties(T2,{rgbToAnsi256:{value:(t,r,n)=>t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>T2.rgbToAnsi256(...T2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>T2.ansi256ToAnsi(T2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>T2.ansi256ToAnsi(T2.hexToAnsi256(t)),enumerable:!1}}),T2}var cAi,lAi,uAi,T2,$_u,_Da,yDa,e0u,EDa,aV,p_t=bc(()=>{cAi=(e=0)=>t=>`\x1B[${t+e}m`,lAi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,uAi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,T2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},$_u=Object.keys(T2.modifier),_Da=Object.keys(T2.color),yDa=Object.keys(T2.bgColor),e0u=[..._Da,...yDa];EDa=bDa(),aV=EDa});var fAi={};sI(fAi,{default:()=>h_t});function h_t(e,t,r){return String(e).normalize().replaceAll(`\r `,` `).split(` -`).map(n=>ADa(n,t,r)).join(` -`)}var p_t,cDa,sSr,oAi,lDa,aAi,d_t,iAi,sAi,uDa,iSr,gDa,ADa,oSr=bc(()=>{nSr();gQe();A_t();p_t=new Set(["\x1B","\x9B"]),cDa=39,sSr="\x07",oAi="[",lDa="]",aAi="m",d_t=`${lDa}8;;`,iAi=e=>`${p_t.values().next().value}${oAi}${e}${aAi}`,sAi=e=>`${p_t.values().next().value}${d_t}${e}${sSr}`,uDa=e=>e.split(" ").map(t=>MM(t)),iSr=(e,t,r)=>{let n=[...t],a=!1,o=!1,l=MM(K$(e.at(-1)));for(let[A,f]of n.entries()){let I=MM(f);if(l+I<=r?e[e.length-1]+=f:(e.push(f),l=0),p_t.has(f)&&(a=!0,o=n.slice(A+1,A+1+d_t.length).join("")===d_t),a){o?f===sSr&&(a=!1,o=!1):f===aAi&&(a=!1);continue}l+=I,l===r&&A0&&e.length>1&&(e[e.length-2]+=e.pop())},gDa=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(MM(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},ADa=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a,o,l=uDa(e),A=[""];for(let[b,E]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A.at(-1).trimStart());let N=MM(A.at(-1));if(b!==0&&(N>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),N=0),(N>0||r.trim===!1)&&(A[A.length-1]+=" ",N++)),r.hard&&l[b]>t){let B=t-N,F=1+Math.floor((l[b]-B-1)/t);Math.floor((l[b]-1)/t)t&&N>0&&l[b]>0){if(r.wordWrap===!1&&Nt&&r.wordWrap===!1){iSr(A,E,t);continue}A[A.length-1]+=E}r.trim!==!1&&(A=A.map(b=>gDa(b)));let f=A.join(` -`),I=[...f],C=0;for(let[b,E]of I.entries()){if(n+=E,p_t.has(E)){let{groups:B}=new RegExp(`(?:\\${oAi}(?\\d+)m|\\${d_t}(?.*)${sSr})`).exec(f.slice(C))||{groups:{}};if(B.code!==void 0){let F=Number.parseFloat(B.code);a=F===cDa?void 0:F}else B.uri!==void 0&&(o=B.uri.length===0?void 0:B.uri)}let N=aV.codes.get(Number(a));I[b+1]===` -`?(o&&(n+=sAi("")),a&&N&&(n+=iAi(N))):E===` -`&&(a&&N&&(n+=iAi(a)),o&&(n+=sAi(o))),C+=E.length}return n}});function aSr(e){return Number.isInteger(e)?g_t(e)===2:!1}var lAi=bc(()=>{rSr()});function IDa(e){if(lSr.has(e))return e;if(cSr.has(e))return cSr.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=aV.codes.get(Number.parseInt(e,10));return t?aV.color.ansi(t):aV.reset.open}function hDa(e){for(let t=0;t=pDa&&r<=fDa)return t}return-1}function mDa(e,t){e=e.slice(t,t+19);let r=hDa(e);if(r!==-1){let n=e.indexOf("m",r);return n===-1&&(n=e.length),e.slice(0,n+1)}}function CDa(e,t=Number.POSITIVE_INFINITY){let r=[],n=0,a=0;for(;n=t)break}return r}function uAi(e){let t=[];for(let r of e)r.code===aV.reset.open?t=[]:lSr.has(r.code)?t=t.filter(n=>n.endCode!==r.code):(t=t.filter(n=>n.endCode!==r.endCode),t.push(r));return t}function _Da(e){return uAi(e).map(({endCode:n})=>n).reverse().join("")}function uSr(e,t,r){let n=CDa(e,r),a=[],o=0,l="",A=!1;for(let f of n){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),A&&(l+=f.code)):(!A&&o>=t&&(A=!0,a=uAi(a),l=a.map(({code:I})=>I).join("")),A&&(l+=f.value),o+=f.isFullWidth?2:f.value.length)}return l+=_Da(a),l}var dDa,pDa,fDa,lSr,cSr,gAi=bc(()=>{A_t();lAi();dDa=new Set([27,155]),pDa="0".codePointAt(0),fDa="9".codePointAt(0),lSr=new Set,cSr=new Map;for(let[e,t]of aV.codes)lSr.add(aV.color.ansi(t)),cSr.set(aV.color.ansi(e),aV.color.ansi(t))});var dAi={};sI(dAi,{createLogUpdate:()=>ASr,default:()=>SDa,logUpdateStderr:()=>vDa});import AAi from"node:process";function ASr(e,{showCursor:t=!1}={}){let r=0,n=gSr(e),a="",o=()=>{a="",n=gSr(e),r=0},l=(...A)=>{t||tSr.hide();let f=bDa(e,A.join(" ")+` -`),I=gSr(e);f===a&&n===I||(a=f,n=I,f=f_t(f,I,{trim:!1,hard:!0,wordWrap:!1}),e.write(YQe.eraseLines(r)+f),r=f.split(` -`).length)};return l.clear=()=>{e.write(YQe.eraseLines(r)),o()},l.done=()=>{o(),t||tSr.show()},l}var yDa,gSr,bDa,EDa,SDa,vDa,pAi=bc(()=>{Vgi();Jgi();oSr();gAi();gQe();yDa=24,gSr=({columns:e=80})=>e,bDa=(e,t)=>{let r=e.rows??yDa,n=t.split(` -`),a=Math.max(0,n.length-r);return a?uSr(t,K$(n.slice(0,a).join(` -`)).length+1):t};EDa=ASr(AAi.stdout),SDa=EDa,vDa=ASr(AAi.stderr)});function dSr(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var fAi=bc(()=>{});function X8(e,t,r){let n=[...e],a=[],o=typeof r=="number"?r:n.length,l=!1,A,f=0,I="";for(let[C,b]of n.entries()){let E=!1;if(hAi.includes(b)){let N=/\d[^m]*/.exec(e.slice(C,C+18));A=N&&N.length>0?N[0]:void 0,ft&&f<=o)I+=b;else if(f===t&&!l&&A!==void 0)I=IAi(a);else if(f>=o){I+=IAi(a,!0,A);break}}return I}var BDa,hAi,I_t,IAi,mAi=bc(()=>{fAi();A_t();BDa=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,hAi=["\x1B","\x9B"],I_t=e=>`${hAi[0]}[${e}m`,IAi=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let l=aV.codes.get(Number.parseInt(a,10));if(l){let A=e.indexOf(l.toString());A===-1?n.push(I_t(t?l:o)):e.splice(A,1)}else if(t){n.push(I_t(0));break}else n.push(I_t(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=I_t(aV.codes.get(Number.parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")}});var _Ai={};sI(_Ai,{default:()=>CAi});function h_t(e,t,r){if(e.charAt(t)===" ")return t;let n=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*n;if(e.charAt(o)===" ")return o}return t}function CAi(e,t,r={}){let{position:n="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:l="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let A=MM(e);if(A<=t)return e;if(n==="start"){if(o){let f=h_t(e,A-t+1,!0);return l+X8(e,f,A).trim()}return a===!0&&(l+=" "),l+X8(e,A-t+MM(l),A)}if(n==="middle"){a===!0&&(l=` ${l} `);let f=Math.floor(t/2);if(o){let I=h_t(e,f),C=h_t(e,A-(t-f)+1,!0);return X8(e,0,I)+l+X8(e,C,A).trim()}return X8(e,0,f)+l+X8(e,A-(t-f)+MM(l),A)}if(n==="end"){if(o){let f=h_t(e,t-1);return X8(e,0,f)+l}return a===!0&&(l=` ${l}`),X8(e,0,t-MM(l))+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}var yAi=bc(()=>{mAi();nSr()});var LSr=H((U0u,Edi)=>{"use strict";var Aka=wt("child_process").spawn;function dka(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function pka(e,t,r,n){typeof r=="function"&&(n=r,r=void 0);var a=!1,o=Aka(e,t,r),l="",A="";o.stdout.on("data",function(f){l+=f.toString()}),o.stderr.on("data",function(f){A+=f.toString()}),o.on("error",function(f){a||(a=!0,n(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,A=dka(A),A)return n(new Error(A));n(null,l,f)}})}Edi.exports=pka});var vdi=H((K0u,Sdi)=>{"use strict";var fka=wt("os"),Ika=LSr();function hka(e){var t=["-A","-o","ppid,pid"];Ika("ps",t,function(r,n,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{n=n.split(fka.EOL);for(var o=[],l=1;l{"use strict";var mka=wt("os"),Cka=LSr();function _ka(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};Cka("wmic",t,r,function(n,a,o){if(n){e(n);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split(mka.EOL);for(var l=[],A=1;A{"use strict";var Rdi=wt("os"),yka={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},bka={ps:()=>vdi(),wmic:()=>wdi()},VSr=Rdi.platform();VSr.startsWith("win")&&(VSr="win");var Tdi=yka[VSr];function Eka(e){Tdi===void 0&&e(new Error(Rdi.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=bka[Tdi]();t(e)}Ndi.exports=Eka});var xdi=H((q0u,kdi)=>{"use strict";var Ska=Ddi();function vka(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}Ska(function(n,a){if(n){r(n);return}if(e===-1){for(var o=0;o0;){var I=a.pop();f[I[0]]?f[I[0]].push(I[1]):f[I[0]]=[I[1]]}for(var C=0,b=[l];C{"use strict";function Bka(e,t,r){return new Promise(function(n,a){e(t,r,function(o,l){if(o)return a(o);n(l)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var Gdi=xdi();function wka(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){Gdi(e,t,r);return}return Bka(Gdi,e,t)}Fdi.exports=wka});var C0=H(Gk=>{"use strict";var MSr=Symbol.for("yaml.alias"),qdi=Symbol.for("yaml.document"),N_t=Symbol.for("yaml.map"),$di=Symbol.for("yaml.pair"),HSr=Symbol.for("yaml.scalar"),D_t=Symbol.for("yaml.seq"),tee=Symbol.for("yaml.node.type"),Gka=e=>!!e&&typeof e=="object"&&e[tee]===MSr,Fka=e=>!!e&&typeof e=="object"&&e[tee]===qdi,Zka=e=>!!e&&typeof e=="object"&&e[tee]===N_t,Lka=e=>!!e&&typeof e=="object"&&e[tee]===$di,epi=e=>!!e&&typeof e=="object"&&e[tee]===HSr,Vka=e=>!!e&&typeof e=="object"&&e[tee]===D_t;function tpi(e){if(e&&typeof e=="object")switch(e[tee]){case N_t:case D_t:return!0}return!1}function Pka(e){if(e&&typeof e=="object")switch(e[tee]){case MSr:case N_t:case HSr:case D_t:return!0}return!1}var Wka=e=>(epi(e)||tpi(e))&&!!e.anchor;Gk.ALIAS=MSr;Gk.DOC=qdi;Gk.MAP=N_t;Gk.NODE_TYPE=tee;Gk.PAIR=$di;Gk.SCALAR=HSr;Gk.SEQ=D_t;Gk.hasAnchor=Wka;Gk.isAlias=Gka;Gk.isCollection=tpi;Gk.isDocument=Fka;Gk.isMap=Zka;Gk.isNode=Pka;Gk.isPair=Lka;Gk.isScalar=epi;Gk.isSeq=Vka});var eXe=H(YSr=>{"use strict";var NR=C0(),cV=Symbol("break visit"),rpi=Symbol("skip children"),J8=Symbol("remove node");function k_t(e,t){let r=npi(t);NR.isDocument(e)?YTe(null,e.contents,r,Object.freeze([e]))===J8&&(e.contents=null):YTe(null,e,r,Object.freeze([]))}k_t.BREAK=cV;k_t.SKIP=rpi;k_t.REMOVE=J8;function YTe(e,t,r,n){let a=ipi(e,t,r,n);if(NR.isNode(a)||NR.isPair(a))return spi(e,n,a),YTe(e,a,r,n);if(typeof a!="symbol"){if(NR.isCollection(t)){n=Object.freeze(n.concat(t));for(let o=0;o{"use strict";var opi=C0(),Oka=eXe(),Mka={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Hka=e=>e.replace(/[!,[\]{}]/g,t=>Mka[t]),tXe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let n=t.trim().split(/[ \t]+/),a=n.shift();switch(a){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[o,l]=n;return this.tags[o]=l,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=n;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let l=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,l),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let l=t.slice(2,-1);return l==="!"||l==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),l)}let[,n,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[n];if(o)try{return o+decodeURIComponent(a)}catch(l){return r(String(l)),null}return n==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,n]of Object.entries(this.tags))if(t.startsWith(n))return r+Hka(t.substring(n.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),a;if(t&&n.length>0&&opi.isNode(t.contents)){let o={};Oka.visit(t.contents,(l,A)=>{opi.isNode(A)&&A.tag&&(o[A.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,l]of n)o==="!!"&&l==="tag:yaml.org,2002:"||(!t||a.some(A=>A.startsWith(l)))&&r.push(`%TAG ${o} ${l}`);return r.join(` -`)}};tXe.defaultYaml={explicit:!1,version:"1.2"};tXe.defaultTags={"!!":"tag:yaml.org,2002:"};api.Directives=tXe});var G_t=H(rXe=>{"use strict";var cpi=C0(),Yka=eXe();function Qka(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function lpi(e){let t=new Set;return Yka.visit(e,{Value(r,n){n.anchor&&t.add(n.anchor)}}),t}function upi(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function Xka(e,t){let r=[],n=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=lpi(e));let l=upi(t,a);return a.add(l),l},setAnchors:()=>{for(let o of r){let l=n.get(o);if(typeof l=="object"&&l.anchor&&(cpi.isScalar(l.node)||cpi.isCollection(l.node)))l.node.anchor=l.anchor;else{let A=new Error("Failed to resolve repeated object (this should not happen)");throw A.source=o,A}}},sourceObjects:n}}rXe.anchorIsValid=Qka;rXe.anchorNames=lpi;rXe.createNodeAnchors=Xka;rXe.findNewAnchor=upi});var XSr=H(gpi=>{"use strict";function nXe(e,t,r,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let a=0,o=n.length;a{"use strict";var Jka=C0();function Api(e,t,r){if(Array.isArray(e))return e.map((n,a)=>Api(n,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!Jka.hasAnchor(e))return e.toJSON(t,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(e,n),r.onCreate=o=>{n.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}dpi.toJS=Api});var F_t=H(fpi=>{"use strict";var Uka=XSr(),ppi=C0(),Kka=Nae(),JSr=class{constructor(t){Object.defineProperty(this,ppi.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:n,onAnchor:a,reviver:o}={}){if(!ppi.isDocument(t))throw new TypeError("A document argument is required");let l={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},A=Kka.toJS(this,"",l);if(typeof a=="function")for(let{count:f,res:I}of l.anchors.values())a(I,f);return typeof o=="function"?Uka.applyReviver(o,{"":A},"",A):A}};fpi.NodeBase=JSr});var iXe=H(hpi=>{"use strict";var jka=G_t(),Ipi=eXe(),Z_t=C0(),zka=F_t(),qka=Nae(),USr=class extends zka.NodeBase{constructor(t){super(Z_t.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return Ipi.visit(t,{Node:(n,a)=>{if(a===this)return Ipi.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:n,doc:a,maxAliasCount:o}=r,l=this.resolve(a);if(!l){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let A=n.get(l);if(A||(qka.toJS(l,null,r),A=n.get(l)),!A||A.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(A.count+=1,A.aliasCount===0&&(A.aliasCount=L_t(a,l,n)),A.count*A.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return A.res}toString(t,r,n){let a=`*${this.source}`;if(t){if(jka.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function L_t(e,t,r){if(Z_t.isAlias(t)){let n=t.resolve(e),a=r&&n&&r.get(n);return a?a.count*a.aliasCount:0}else if(Z_t.isCollection(t)){let n=0;for(let a of t.items){let o=L_t(e,a,r);o>n&&(n=o)}return n}else if(Z_t.isPair(t)){let n=L_t(e,t.key,r),a=L_t(e,t.value,r);return Math.max(n,a)}return 1}hpi.Alias=USr});var gT=H(KSr=>{"use strict";var $ka=C0(),exa=F_t(),txa=Nae(),rxa=e=>!e||typeof e!="function"&&typeof e!="object",Dae=class extends exa.NodeBase{constructor(t){super($ka.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:txa.toJS(this.value,t,r)}toString(){return String(this.value)}};Dae.BLOCK_FOLDED="BLOCK_FOLDED";Dae.BLOCK_LITERAL="BLOCK_LITERAL";Dae.PLAIN="PLAIN";Dae.QUOTE_DOUBLE="QUOTE_DOUBLE";Dae.QUOTE_SINGLE="QUOTE_SINGLE";KSr.Scalar=Dae;KSr.isScalarValue=rxa});var sXe=H(Cpi=>{"use strict";var nxa=iXe(),Whe=C0(),mpi=gT(),ixa="tag:yaml.org,2002:";function sxa(e,t,r){if(t){let n=r.filter(o=>o.tag===t),a=n.find(o=>!o.format)??n[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(n=>n.identify?.(e)&&!n.format)}function oxa(e,t,r){if(Whe.isDocument(e)&&(e=e.contents),Whe.isNode(e))return e;if(Whe.isPair(e)){let b=r.schema[Whe.MAP].createNode?.(r.schema,null,r);return b.items.push(e),b}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:n,onAnchor:a,onTagObj:o,schema:l,sourceObjects:A}=r,f;if(n&&e&&typeof e=="object"){if(f=A.get(e),f)return f.anchor||(f.anchor=a(e)),new nxa.Alias(f.anchor);f={anchor:null,node:null},A.set(e,f)}t?.startsWith("!!")&&(t=ixa+t.slice(2));let I=sxa(e,t,l.tags);if(!I){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let b=new mpi.Scalar(e);return f&&(f.node=b),b}I=e instanceof Map?l[Whe.MAP]:Symbol.iterator in Object(e)?l[Whe.SEQ]:l[Whe.MAP]}o&&(o(I),delete r.onTagObj);let C=I?.createNode?I.createNode(r.schema,e,r):typeof I?.nodeClass?.from=="function"?I.nodeClass.from(r.schema,e,r):new mpi.Scalar(e);return t?C.tag=t:I.default||(C.tag=I.tag),f&&(f.node=C),C}Cpi.createNode=oxa});var P_t=H(V_t=>{"use strict";var axa=sXe(),U8=C0(),cxa=F_t();function jSr(e,t,r){let n=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let l=[];l[o]=n,n=l}else n=new Map([[o,n]])}return axa.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var _pi=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,zSr=class extends cxa.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(n=>U8.isNode(n)||U8.isPair(n)?n.clone(t):n),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(_pi(t))this.add(r);else{let[n,...a]=t,o=this.get(n,!0);if(U8.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(n,jSr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}deleteIn(t){let[r,...n]=t;if(n.length===0)return this.delete(r);let a=this.get(r,!0);if(U8.isCollection(a))return a.deleteIn(n);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}getIn(t,r){let[n,...a]=t,o=this.get(n,!0);return a.length===0?!r&&U8.isScalar(o)?o.value:o:U8.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!U8.isPair(r))return!1;let n=r.value;return n==null||t&&U8.isScalar(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(t){let[r,...n]=t;if(n.length===0)return this.has(r);let a=this.get(r,!0);return U8.isCollection(a)?a.hasIn(n):!1}setIn(t,r){let[n,...a]=t;if(a.length===0)this.set(n,r);else{let o=this.get(n,!0);if(U8.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(n,jSr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}};V_t.Collection=zSr;V_t.collectionFromPath=jSr;V_t.isEmptyPath=_pi});var oXe=H(W_t=>{"use strict";var lxa=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function qSr(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var uxa=(e,t,r)=>e.endsWith(` -`)?qSr(r,t):r.includes(` +`).map(n=>TDa(n,t,r)).join(` +`)}var I_t,SDa,lSr,dAi,vDa,pAi,f_t,gAi,AAi,BDa,cSr,wDa,TDa,uSr=bc(()=>{aSr();dQe();p_t();I_t=new Set(["\x1B","\x9B"]),SDa=39,lSr="\x07",dAi="[",vDa="]",pAi="m",f_t=`${vDa}8;;`,gAi=e=>`${I_t.values().next().value}${dAi}${e}${pAi}`,AAi=e=>`${I_t.values().next().value}${f_t}${e}${lSr}`,BDa=e=>e.split(" ").map(t=>MM(t)),cSr=(e,t,r)=>{let n=[...t],a=!1,o=!1,l=MM(K$(e.at(-1)));for(let[A,f]of n.entries()){let I=MM(f);if(l+I<=r?e[e.length-1]+=f:(e.push(f),l=0),I_t.has(f)&&(a=!0,o=n.slice(A+1,A+1+f_t.length).join("")===f_t),a){o?f===lSr&&(a=!1,o=!1):f===pAi&&(a=!1);continue}l+=I,l===r&&A0&&e.length>1&&(e[e.length-2]+=e.pop())},wDa=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(MM(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},TDa=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a,o,l=BDa(e),A=[""];for(let[b,E]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A.at(-1).trimStart());let N=MM(A.at(-1));if(b!==0&&(N>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),N=0),(N>0||r.trim===!1)&&(A[A.length-1]+=" ",N++)),r.hard&&l[b]>t){let B=t-N,F=1+Math.floor((l[b]-B-1)/t);Math.floor((l[b]-1)/t)t&&N>0&&l[b]>0){if(r.wordWrap===!1&&Nt&&r.wordWrap===!1){cSr(A,E,t);continue}A[A.length-1]+=E}r.trim!==!1&&(A=A.map(b=>wDa(b)));let f=A.join(` +`),I=[...f],C=0;for(let[b,E]of I.entries()){if(n+=E,I_t.has(E)){let{groups:B}=new RegExp(`(?:\\${dAi}(?\\d+)m|\\${f_t}(?.*)${lSr})`).exec(f.slice(C))||{groups:{}};if(B.code!==void 0){let F=Number.parseFloat(B.code);a=F===SDa?void 0:F}else B.uri!==void 0&&(o=B.uri.length===0?void 0:B.uri)}let N=aV.codes.get(Number(a));I[b+1]===` +`?(o&&(n+=AAi("")),a&&N&&(n+=gAi(N))):E===` +`&&(a&&N&&(n+=gAi(a)),o&&(n+=AAi(o))),C+=E.length}return n}});function gSr(e){return Number.isInteger(e)?d_t(e)===2:!1}var IAi=bc(()=>{oSr()});function kDa(e){if(dSr.has(e))return e;if(ASr.has(e))return ASr.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=aV.codes.get(Number.parseInt(e,10));return t?aV.color.ansi(t):aV.reset.open}function xDa(e){for(let t=0;t=NDa&&r<=DDa)return t}return-1}function GDa(e,t){e=e.slice(t,t+19);let r=xDa(e);if(r!==-1){let n=e.indexOf("m",r);return n===-1&&(n=e.length),e.slice(0,n+1)}}function FDa(e,t=Number.POSITIVE_INFINITY){let r=[],n=0,a=0;for(;n=t)break}return r}function hAi(e){let t=[];for(let r of e)r.code===aV.reset.open?t=[]:dSr.has(r.code)?t=t.filter(n=>n.endCode!==r.code):(t=t.filter(n=>n.endCode!==r.endCode),t.push(r));return t}function ZDa(e){return hAi(e).map(({endCode:n})=>n).reverse().join("")}function pSr(e,t,r){let n=FDa(e,r),a=[],o=0,l="",A=!1;for(let f of n){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),A&&(l+=f.code)):(!A&&o>=t&&(A=!0,a=hAi(a),l=a.map(({code:I})=>I).join("")),A&&(l+=f.value),o+=f.isFullWidth?2:f.value.length)}return l+=ZDa(a),l}var RDa,NDa,DDa,dSr,ASr,mAi=bc(()=>{p_t();IAi();RDa=new Set([27,155]),NDa="0".codePointAt(0),DDa="9".codePointAt(0),dSr=new Set,ASr=new Map;for(let[e,t]of aV.codes)dSr.add(aV.color.ansi(t)),ASr.set(aV.color.ansi(e),aV.color.ansi(t))});var _Ai={};sI(_Ai,{createLogUpdate:()=>ISr,default:()=>WDa,logUpdateStderr:()=>ODa});import CAi from"node:process";function ISr(e,{showCursor:t=!1}={}){let r=0,n=fSr(e),a="",o=()=>{a="",n=fSr(e),r=0},l=(...A)=>{t||sSr.hide();let f=VDa(e,A.join(" ")+` +`),I=fSr(e);f===a&&n===I||(a=f,n=I,f=h_t(f,I,{trim:!1,hard:!0,wordWrap:!1}),e.write(XQe.eraseLines(r)+f),r=f.split(` +`).length)};return l.clear=()=>{e.write(XQe.eraseLines(r)),o()},l.done=()=>{o(),t||sSr.show()},l}var LDa,fSr,VDa,PDa,WDa,ODa,yAi=bc(()=>{Qgi();eAi();uSr();mAi();dQe();LDa=24,fSr=({columns:e=80})=>e,VDa=(e,t)=>{let r=e.rows??LDa,n=t.split(` +`),a=Math.max(0,n.length-r);return a?pSr(t,K$(n.slice(0,a).join(` +`)).length+1):t};PDa=ISr(CAi.stdout),WDa=PDa,ODa=ISr(CAi.stderr)});function hSr(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var bAi=bc(()=>{});function X8(e,t,r){let n=[...e],a=[],o=typeof r=="number"?r:n.length,l=!1,A,f=0,I="";for(let[C,b]of n.entries()){let E=!1;if(SAi.includes(b)){let N=/\d[^m]*/.exec(e.slice(C,C+18));A=N&&N.length>0?N[0]:void 0,ft&&f<=o)I+=b;else if(f===t&&!l&&A!==void 0)I=EAi(a);else if(f>=o){I+=EAi(a,!0,A);break}}return I}var MDa,SAi,m_t,EAi,vAi=bc(()=>{bAi();p_t();MDa=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,SAi=["\x1B","\x9B"],m_t=e=>`${SAi[0]}[${e}m`,EAi=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let l=aV.codes.get(Number.parseInt(a,10));if(l){let A=e.indexOf(l.toString());A===-1?n.push(m_t(t?l:o)):e.splice(A,1)}else if(t){n.push(m_t(0));break}else n.push(m_t(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=m_t(aV.codes.get(Number.parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")}});var wAi={};sI(wAi,{default:()=>BAi});function C_t(e,t,r){if(e.charAt(t)===" ")return t;let n=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*n;if(e.charAt(o)===" ")return o}return t}function BAi(e,t,r={}){let{position:n="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:l="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let A=MM(e);if(A<=t)return e;if(n==="start"){if(o){let f=C_t(e,A-t+1,!0);return l+X8(e,f,A).trim()}return a===!0&&(l+=" "),l+X8(e,A-t+MM(l),A)}if(n==="middle"){a===!0&&(l=` ${l} `);let f=Math.floor(t/2);if(o){let I=C_t(e,f),C=C_t(e,A-(t-f)+1,!0);return X8(e,0,I)+l+X8(e,C,A).trim()}return X8(e,0,f)+l+X8(e,A-(t-f)+MM(l),A)}if(n==="end"){if(o){let f=C_t(e,t-1);return X8(e,0,f)+l}return a===!0&&(l=` ${l}`),X8(e,0,t-MM(l))+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}var TAi=bc(()=>{vAi();aSr()});var OSr=H((Wyu,Ndi)=>{"use strict";var Tka=wt("child_process").spawn;function Rka(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function Nka(e,t,r,n){typeof r=="function"&&(n=r,r=void 0);var a=!1,o=Tka(e,t,r),l="",A="";o.stdout.on("data",function(f){l+=f.toString()}),o.stderr.on("data",function(f){A+=f.toString()}),o.on("error",function(f){a||(a=!0,n(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,A=Rka(A),A)return n(new Error(A));n(null,l,f)}})}Ndi.exports=Nka});var kdi=H((Oyu,Ddi)=>{"use strict";var Dka=wt("os"),kka=OSr();function xka(e){var t=["-A","-o","ppid,pid"];kka("ps",t,function(r,n,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{n=n.split(Dka.EOL);for(var o=[],l=1;l{"use strict";var Gka=wt("os"),Fka=OSr();function Zka(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};Fka("wmic",t,r,function(n,a,o){if(n){e(n);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split(Gka.EOL);for(var l=[],A=1;A{"use strict";var Zdi=wt("os"),Lka={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},Vka={ps:()=>kdi(),wmic:()=>Gdi()},MSr=Zdi.platform();MSr.startsWith("win")&&(MSr="win");var Fdi=Lka[MSr];function Pka(e){Fdi===void 0&&e(new Error(Zdi.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=Vka[Fdi]();t(e)}Ldi.exports=Pka});var Wdi=H((Yyu,Pdi)=>{"use strict";var Wka=Vdi();function Oka(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}Wka(function(n,a){if(n){r(n);return}if(e===-1){for(var o=0;o0;){var I=a.pop();f[I[0]]?f[I[0]].push(I[1]):f[I[0]]=[I[1]]}for(var C=0,b=[l];C{"use strict";function Mka(e,t,r){return new Promise(function(n,a){e(t,r,function(o,l){if(o)return a(o);n(l)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var Odi=Wdi();function Hka(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){Odi(e,t,r);return}return Mka(Odi,e,t)}Mdi.exports=Hka});var C0=H(Gk=>{"use strict";var XSr=Symbol.for("yaml.alias"),spi=Symbol.for("yaml.document"),k_t=Symbol.for("yaml.map"),opi=Symbol.for("yaml.pair"),JSr=Symbol.for("yaml.scalar"),x_t=Symbol.for("yaml.seq"),tee=Symbol.for("yaml.node.type"),jka=e=>!!e&&typeof e=="object"&&e[tee]===XSr,zka=e=>!!e&&typeof e=="object"&&e[tee]===spi,qka=e=>!!e&&typeof e=="object"&&e[tee]===k_t,$ka=e=>!!e&&typeof e=="object"&&e[tee]===opi,api=e=>!!e&&typeof e=="object"&&e[tee]===JSr,exa=e=>!!e&&typeof e=="object"&&e[tee]===x_t;function cpi(e){if(e&&typeof e=="object")switch(e[tee]){case k_t:case x_t:return!0}return!1}function txa(e){if(e&&typeof e=="object")switch(e[tee]){case XSr:case k_t:case JSr:case x_t:return!0}return!1}var rxa=e=>(api(e)||cpi(e))&&!!e.anchor;Gk.ALIAS=XSr;Gk.DOC=spi;Gk.MAP=k_t;Gk.NODE_TYPE=tee;Gk.PAIR=opi;Gk.SCALAR=JSr;Gk.SEQ=x_t;Gk.hasAnchor=rxa;Gk.isAlias=jka;Gk.isCollection=cpi;Gk.isDocument=zka;Gk.isMap=qka;Gk.isNode=txa;Gk.isPair=$ka;Gk.isScalar=api;Gk.isSeq=exa});var rXe=H(USr=>{"use strict";var NR=C0(),cV=Symbol("break visit"),lpi=Symbol("skip children"),J8=Symbol("remove node");function G_t(e,t){let r=upi(t);NR.isDocument(e)?QTe(null,e.contents,r,Object.freeze([e]))===J8&&(e.contents=null):QTe(null,e,r,Object.freeze([]))}G_t.BREAK=cV;G_t.SKIP=lpi;G_t.REMOVE=J8;function QTe(e,t,r,n){let a=gpi(e,t,r,n);if(NR.isNode(a)||NR.isPair(a))return Api(e,n,a),QTe(e,a,r,n);if(typeof a!="symbol"){if(NR.isCollection(t)){n=Object.freeze(n.concat(t));for(let o=0;o{"use strict";var dpi=C0(),nxa=rXe(),ixa={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},sxa=e=>e.replace(/[!,[\]{}]/g,t=>ixa[t]),nXe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let n=t.trim().split(/[ \t]+/),a=n.shift();switch(a){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[o,l]=n;return this.tags[o]=l,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=n;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let l=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,l),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let l=t.slice(2,-1);return l==="!"||l==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),l)}let[,n,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[n];if(o)try{return o+decodeURIComponent(a)}catch(l){return r(String(l)),null}return n==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,n]of Object.entries(this.tags))if(t.startsWith(n))return r+sxa(t.substring(n.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),a;if(t&&n.length>0&&dpi.isNode(t.contents)){let o={};nxa.visit(t.contents,(l,A)=>{dpi.isNode(A)&&A.tag&&(o[A.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,l]of n)o==="!!"&&l==="tag:yaml.org,2002:"||(!t||a.some(A=>A.startsWith(l)))&&r.push(`%TAG ${o} ${l}`);return r.join(` +`)}};nXe.defaultYaml={explicit:!1,version:"1.2"};nXe.defaultTags={"!!":"tag:yaml.org,2002:"};ppi.Directives=nXe});var Z_t=H(iXe=>{"use strict";var fpi=C0(),oxa=rXe();function axa(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function Ipi(e){let t=new Set;return oxa.visit(e,{Value(r,n){n.anchor&&t.add(n.anchor)}}),t}function hpi(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function cxa(e,t){let r=[],n=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=Ipi(e));let l=hpi(t,a);return a.add(l),l},setAnchors:()=>{for(let o of r){let l=n.get(o);if(typeof l=="object"&&l.anchor&&(fpi.isScalar(l.node)||fpi.isCollection(l.node)))l.node.anchor=l.anchor;else{let A=new Error("Failed to resolve repeated object (this should not happen)");throw A.source=o,A}}},sourceObjects:n}}iXe.anchorIsValid=axa;iXe.anchorNames=Ipi;iXe.createNodeAnchors=cxa;iXe.findNewAnchor=hpi});var jSr=H(mpi=>{"use strict";function sXe(e,t,r,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let a=0,o=n.length;a{"use strict";var lxa=C0();function Cpi(e,t,r){if(Array.isArray(e))return e.map((n,a)=>Cpi(n,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!lxa.hasAnchor(e))return e.toJSON(t,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(e,n),r.onCreate=o=>{n.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}_pi.toJS=Cpi});var L_t=H(bpi=>{"use strict";var uxa=jSr(),ypi=C0(),gxa=Dae(),zSr=class{constructor(t){Object.defineProperty(this,ypi.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:n,onAnchor:a,reviver:o}={}){if(!ypi.isDocument(t))throw new TypeError("A document argument is required");let l={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},A=gxa.toJS(this,"",l);if(typeof a=="function")for(let{count:f,res:I}of l.anchors.values())a(I,f);return typeof o=="function"?uxa.applyReviver(o,{"":A},"",A):A}};bpi.NodeBase=zSr});var oXe=H(Spi=>{"use strict";var Axa=Z_t(),Epi=rXe(),V_t=C0(),dxa=L_t(),pxa=Dae(),qSr=class extends dxa.NodeBase{constructor(t){super(V_t.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return Epi.visit(t,{Node:(n,a)=>{if(a===this)return Epi.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:n,doc:a,maxAliasCount:o}=r,l=this.resolve(a);if(!l){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let A=n.get(l);if(A||(pxa.toJS(l,null,r),A=n.get(l)),!A||A.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(A.count+=1,A.aliasCount===0&&(A.aliasCount=P_t(a,l,n)),A.count*A.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return A.res}toString(t,r,n){let a=`*${this.source}`;if(t){if(Axa.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function P_t(e,t,r){if(V_t.isAlias(t)){let n=t.resolve(e),a=r&&n&&r.get(n);return a?a.count*a.aliasCount:0}else if(V_t.isCollection(t)){let n=0;for(let a of t.items){let o=P_t(e,a,r);o>n&&(n=o)}return n}else if(V_t.isPair(t)){let n=P_t(e,t.key,r),a=P_t(e,t.value,r);return Math.max(n,a)}return 1}Spi.Alias=qSr});var gT=H($Sr=>{"use strict";var fxa=C0(),Ixa=L_t(),hxa=Dae(),mxa=e=>!e||typeof e!="function"&&typeof e!="object",kae=class extends Ixa.NodeBase{constructor(t){super(fxa.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:hxa.toJS(this.value,t,r)}toString(){return String(this.value)}};kae.BLOCK_FOLDED="BLOCK_FOLDED";kae.BLOCK_LITERAL="BLOCK_LITERAL";kae.PLAIN="PLAIN";kae.QUOTE_DOUBLE="QUOTE_DOUBLE";kae.QUOTE_SINGLE="QUOTE_SINGLE";$Sr.Scalar=kae;$Sr.isScalarValue=mxa});var aXe=H(Bpi=>{"use strict";var Cxa=oXe(),Ohe=C0(),vpi=gT(),_xa="tag:yaml.org,2002:";function yxa(e,t,r){if(t){let n=r.filter(o=>o.tag===t),a=n.find(o=>!o.format)??n[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(n=>n.identify?.(e)&&!n.format)}function bxa(e,t,r){if(Ohe.isDocument(e)&&(e=e.contents),Ohe.isNode(e))return e;if(Ohe.isPair(e)){let b=r.schema[Ohe.MAP].createNode?.(r.schema,null,r);return b.items.push(e),b}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:n,onAnchor:a,onTagObj:o,schema:l,sourceObjects:A}=r,f;if(n&&e&&typeof e=="object"){if(f=A.get(e),f)return f.anchor||(f.anchor=a(e)),new Cxa.Alias(f.anchor);f={anchor:null,node:null},A.set(e,f)}t?.startsWith("!!")&&(t=_xa+t.slice(2));let I=yxa(e,t,l.tags);if(!I){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let b=new vpi.Scalar(e);return f&&(f.node=b),b}I=e instanceof Map?l[Ohe.MAP]:Symbol.iterator in Object(e)?l[Ohe.SEQ]:l[Ohe.MAP]}o&&(o(I),delete r.onTagObj);let C=I?.createNode?I.createNode(r.schema,e,r):typeof I?.nodeClass?.from=="function"?I.nodeClass.from(r.schema,e,r):new vpi.Scalar(e);return t?C.tag=t:I.default||(C.tag=I.tag),f&&(f.node=C),C}Bpi.createNode=bxa});var O_t=H(W_t=>{"use strict";var Exa=aXe(),U8=C0(),Sxa=L_t();function evr(e,t,r){let n=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let l=[];l[o]=n,n=l}else n=new Map([[o,n]])}return Exa.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var wpi=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,tvr=class extends Sxa.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(n=>U8.isNode(n)||U8.isPair(n)?n.clone(t):n),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(wpi(t))this.add(r);else{let[n,...a]=t,o=this.get(n,!0);if(U8.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(n,evr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}deleteIn(t){let[r,...n]=t;if(n.length===0)return this.delete(r);let a=this.get(r,!0);if(U8.isCollection(a))return a.deleteIn(n);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}getIn(t,r){let[n,...a]=t,o=this.get(n,!0);return a.length===0?!r&&U8.isScalar(o)?o.value:o:U8.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!U8.isPair(r))return!1;let n=r.value;return n==null||t&&U8.isScalar(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(t){let[r,...n]=t;if(n.length===0)return this.has(r);let a=this.get(r,!0);return U8.isCollection(a)?a.hasIn(n):!1}setIn(t,r){let[n,...a]=t;if(a.length===0)this.set(n,r);else{let o=this.get(n,!0);if(U8.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(n,evr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}};W_t.Collection=tvr;W_t.collectionFromPath=evr;W_t.isEmptyPath=wpi});var cXe=H(M_t=>{"use strict";var vxa=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function rvr(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var Bxa=(e,t,r)=>e.endsWith(` +`)?rvr(r,t):r.includes(` `)?` -`+qSr(r,t):(e.endsWith(" ")?"":" ")+r;W_t.indentComment=qSr;W_t.lineComment=uxa;W_t.stringifyComment=lxa});var bpi=H(aXe=>{"use strict";var gxa="flow",$Sr="block",O_t="quoted";function Axa(e,t,r="flow",{indentAtStart:n,lineWidth:a=80,minContentWidth:o=20,onFold:l,onOverflow:A}={}){if(!a||a<0)return e;aa-Math.max(2,o)?I.push(0):b=a-n);let E,N,B=!1,F=-1,Q=-1,X=-1;r===$Sr&&(F=ypi(e,F,t.length),F!==-1&&(b=F+f));for(let ne;ne=e[F+=1];){if(r===O_t&&ne==="\\"){switch(Q=F,e[F+1]){case"x":F+=3;break;case"u":F+=5;break;case"U":F+=9;break;default:F+=1}X=F}if(ne===` -`)r===$Sr&&(F=ypi(e,F,t.length)),b=F+t.length+f,E=void 0;else{if(ne===" "&&N&&N!==" "&&N!==` +`+rvr(r,t):(e.endsWith(" ")?"":" ")+r;M_t.indentComment=rvr;M_t.lineComment=Bxa;M_t.stringifyComment=vxa});var Rpi=H(lXe=>{"use strict";var wxa="flow",nvr="block",H_t="quoted";function Txa(e,t,r="flow",{indentAtStart:n,lineWidth:a=80,minContentWidth:o=20,onFold:l,onOverflow:A}={}){if(!a||a<0)return e;aa-Math.max(2,o)?I.push(0):b=a-n);let E,N,B=!1,F=-1,Q=-1,X=-1;r===nvr&&(F=Tpi(e,F,t.length),F!==-1&&(b=F+f));for(let ne;ne=e[F+=1];){if(r===H_t&&ne==="\\"){switch(Q=F,e[F+1]){case"x":F+=3;break;case"u":F+=5;break;case"U":F+=9;break;default:F+=1}X=F}if(ne===` +`)r===nvr&&(F=Tpi(e,F,t.length)),b=F+t.length+f,E=void 0;else{if(ne===" "&&N&&N!==" "&&N!==` `&&N!==" "){let ce=e[F+1];ce&&ce!==" "&&ce!==` -`&&ce!==" "&&(E=F)}if(F>=b)if(E)I.push(E),b=E+f,E=void 0;else if(r===O_t){for(;N===" "||N===" ";)N=ne,ne=e[F+=1],B=!0;let ce=F>X+1?F-2:Q-1;if(C[ce])return e;I.push(ce),C[ce]=!0,b=ce+f,E=void 0}else B=!0}N=ne}if(B&&A&&A(),I.length===0)return e;l&&l();let ae=e.slice(0,I[0]);for(let ne=0;ne{"use strict";var K8=gT(),kae=bpi(),H_t=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Y_t=e=>/^(%|---|\.\.\.)/m.test(e);function dxa(e,t,r){if(!t||t<0)return!1;let n=t-r,a=e.length;if(a<=n)return!1;for(let o=0,l=0;on)return!0;if(l=o+1,a-l<=n)return!1}return!0}function cXe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(Y_t(e)?" ":""),l="",A=0;for(let f=0,I=r[f];I;I=r[++f])if(I===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(l+=r.slice(A,f)+"\\ ",f+=1,A=f,I="\\"),I==="\\")switch(r[f+1]){case"u":{l+=r.slice(A,f);let C=r.substr(f+2,4);switch(C){case"0000":l+="\\0";break;case"0007":l+="\\a";break;case"000b":l+="\\v";break;case"001b":l+="\\e";break;case"0085":l+="\\N";break;case"00a0":l+="\\_";break;case"2028":l+="\\L";break;case"2029":l+="\\P";break;default:C.substr(0,2)==="00"?l+="\\x"+C.substr(2):l+=r.substr(f,6)}f+=5,A=f+1}break;case"n":if(n||r[f+2]==='"'||r.length=b)if(E)I.push(E),b=E+f,E=void 0;else if(r===H_t){for(;N===" "||N===" ";)N=ne,ne=e[F+=1],B=!0;let ce=F>X+1?F-2:Q-1;if(C[ce])return e;I.push(ce),C[ce]=!0,b=ce+f,E=void 0}else B=!0}N=ne}if(B&&A&&A(),I.length===0)return e;l&&l();let ae=e.slice(0,I[0]);for(let ne=0;ne{"use strict";var K8=gT(),xae=Rpi(),Q_t=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),X_t=e=>/^(%|---|\.\.\.)/m.test(e);function Rxa(e,t,r){if(!t||t<0)return!1;let n=t-r,a=e.length;if(a<=n)return!1;for(let o=0,l=0;on)return!0;if(l=o+1,a-l<=n)return!1}return!0}function uXe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(X_t(e)?" ":""),l="",A=0;for(let f=0,I=r[f];I;I=r[++f])if(I===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(l+=r.slice(A,f)+"\\ ",f+=1,A=f,I="\\"),I==="\\")switch(r[f+1]){case"u":{l+=r.slice(A,f);let C=r.substr(f+2,4);switch(C){case"0000":l+="\\0";break;case"0007":l+="\\a";break;case"000b":l+="\\v";break;case"001b":l+="\\e";break;case"0085":l+="\\N";break;case"00a0":l+="\\_";break;case"2028":l+="\\L";break;case"2029":l+="\\P";break;default:C.substr(0,2)==="00"?l+="\\x"+C.substr(2):l+=r.substr(f,6)}f+=5,A=f+1}break;case"n":if(n||r[f+2]==='"'||r.length `;let b,E;for(E=r.length;E>0;--E){let ue=r[E-1];if(ue!==` `&&ue!==" "&&ue!==" ")break}let N=r.substring(E),B=N.indexOf(` `);B===-1?b="-":r===N||B!==N.length-1?(b="+",o&&o()):b="",N&&(r=r.slice(0,-N.length),N[N.length-1]===` -`&&(N=N.slice(0,-1)),N=N.replace(tvr,`$&${I}`));let F=!1,Q,X=-1;for(Q=0;Q")+(F?I?"2":"1":"")+b;if(e&&(ce+=" "+A(e.replace(/ ?[\r\n]+/g," ")),a&&a()),C)return r=r.replace(/\n+/g,`$&${I}`),`${ce} ${I}${ae}${r}${N}`;r=r.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${I}`);let fe=kae.foldFlowLines(`${ae}${r}${N}`,I,kae.FOLD_BLOCK,H_t(n,!0));return`${ce} -${I}${fe}`}function pxa(e,t,r,n){let{type:a,value:o}=e,{actualString:l,implicitKey:A,indent:f,indentStep:I,inFlow:C}=t;if(A&&o.includes(` -`)||C&&/[[\]{},]/.test(o))return XTe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return A||C||!o.includes(` -`)?XTe(o,t):M_t(e,t,r,n);if(!A&&!C&&a!==K8.Scalar.PLAIN&&o.includes(` -`))return M_t(e,t,r,n);if(Y_t(o)){if(f==="")return t.forceBlockIndent=!0,M_t(e,t,r,n);if(A&&f===I)return XTe(o,t)}let b=o.replace(/\n+/g,`$& -${f}`);if(l){let E=F=>F.default&&F.tag!=="tag:yaml.org,2002:str"&&F.test?.test(b),{compat:N,tags:B}=t.doc.schema;if(B.some(E)||N?.some(E))return XTe(o,t)}return A?b:kae.foldFlowLines(b,f,kae.FOLD_FLOW,H_t(t,!1))}function fxa(e,t,r,n){let{implicitKey:a,inFlow:o}=t,l=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:A}=e;A!==K8.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(l.value)&&(A=K8.Scalar.QUOTE_DOUBLE);let f=C=>{switch(C){case K8.Scalar.BLOCK_FOLDED:case K8.Scalar.BLOCK_LITERAL:return a||o?XTe(l.value,t):M_t(l,t,r,n);case K8.Scalar.QUOTE_DOUBLE:return cXe(l.value,t);case K8.Scalar.QUOTE_SINGLE:return evr(l.value,t);case K8.Scalar.PLAIN:return pxa(l,t,r,n);default:return null}},I=f(A);if(I===null){let{defaultKeyType:C,defaultStringType:b}=t.options,E=a&&C||b;if(I=f(E),I===null)throw new Error(`Unsupported default string type ${E}`)}return I}Epi.stringifyString=fxa});var uXe=H(rvr=>{"use strict";var Ixa=G_t(),xae=C0(),hxa=oXe(),mxa=lXe();function Cxa(e,t){let r=Object.assign({blockQuote:!0,commentString:hxa.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(r.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:n,options:r}}function _xa(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,n;if(xae.isScalar(t)){n=t.value;let a=e.filter(o=>o.identify?.(n));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else n=t,r=e.find(a=>a.nodeClass&&n instanceof a.nodeClass);if(!r){let a=n?.constructor?.name??typeof n;throw new Error(`Tag not resolved for ${a} value`)}return r}function yxa(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let a=[],o=(xae.isScalar(e)||xae.isCollection(e))&&e.anchor;o&&Ixa.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let l=e.tag?e.tag:t.default?null:t.tag;return l&&a.push(n.directives.tagString(l)),a.join(" ")}function bxa(e,t,r,n){if(xae.isPair(e))return e.toString(t,r,n);if(xae.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=xae.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=_xa(t.doc.schema.tags,o));let l=yxa(o,a,t);l.length>0&&(t.indentAtStart=(t.indentAtStart??0)+l.length+1);let A=typeof a.stringify=="function"?a.stringify(o,t,r,n):xae.isScalar(o)?mxa.stringifyString(o,t,r,n):o.toString(t,r,n);return l?xae.isScalar(o)||A[0]==="{"||A[0]==="["?`${l} ${A}`:`${l} -${t.indent}${A}`:A}rvr.createStringifyContext=Cxa;rvr.stringify=bxa});var wpi=H(Bpi=>{"use strict";var ree=C0(),Spi=gT(),vpi=uXe(),gXe=oXe();function Exa({key:e,value:t},r,n,a){let{allNullValues:o,doc:l,indent:A,indentStep:f,options:{commentString:I,indentSeq:C,simpleKeys:b}}=r,E=ree.isNode(e)&&e.comment||null;if(b){if(E)throw new Error("With simple keys, key nodes cannot have comments");if(ree.isCollection(e)||!ree.isNode(e)&&typeof e=="object"){let de="With simple keys, collection cannot be used as a key value";throw new Error(de)}}let N=!b&&(!e||E&&t==null&&!r.inFlow||ree.isCollection(e)||(ree.isScalar(e)?e.type===Spi.Scalar.BLOCK_FOLDED||e.type===Spi.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!N&&(b||!o),indent:A+f});let B=!1,F=!1,Q=vpi.stringify(e,r,()=>B=!0,()=>F=!0);if(!N&&!r.inFlow&&Q.length>1024){if(b)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");N=!0}if(r.inFlow){if(o||t==null)return B&&n&&n(),Q===""?"?":N?`? ${Q}`:Q}else if(o&&!b||t==null&&N)return Q=`? ${Q}`,E&&!B?Q+=gXe.lineComment(Q,r.indent,I(E)):F&&a&&a(),Q;B&&(E=null),N?(E&&(Q+=gXe.lineComment(Q,r.indent,I(E))),Q=`? ${Q} -${A}:`):(Q=`${Q}:`,E&&(Q+=gXe.lineComment(Q,r.indent,I(E))));let X,ae,ne;ree.isNode(t)?(X=!!t.spaceBefore,ae=t.commentBefore,ne=t.comment):(X=!1,ae=null,ne=null,t&&typeof t=="object"&&(t=l.createNode(t))),r.implicitKey=!1,!N&&!E&&ree.isScalar(t)&&(r.indentAtStart=Q.length+1),F=!1,!C&&f.length>=2&&!r.inFlow&&!N&&ree.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ce=!1,fe=vpi.stringify(t,r,()=>ce=!0,()=>F=!0),ue=" ";if(E||X||ae){if(ue=X?` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${I}`);let fe=xae.foldFlowLines(`${ae}${r}${N}`,I,xae.FOLD_BLOCK,Q_t(n,!0));return`${ce} +${I}${fe}`}function Nxa(e,t,r,n){let{type:a,value:o}=e,{actualString:l,implicitKey:A,indent:f,indentStep:I,inFlow:C}=t;if(A&&o.includes(` +`)||C&&/[[\]{},]/.test(o))return JTe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return A||C||!o.includes(` +`)?JTe(o,t):Y_t(e,t,r,n);if(!A&&!C&&a!==K8.Scalar.PLAIN&&o.includes(` +`))return Y_t(e,t,r,n);if(X_t(o)){if(f==="")return t.forceBlockIndent=!0,Y_t(e,t,r,n);if(A&&f===I)return JTe(o,t)}let b=o.replace(/\n+/g,`$& +${f}`);if(l){let E=F=>F.default&&F.tag!=="tag:yaml.org,2002:str"&&F.test?.test(b),{compat:N,tags:B}=t.doc.schema;if(B.some(E)||N?.some(E))return JTe(o,t)}return A?b:xae.foldFlowLines(b,f,xae.FOLD_FLOW,Q_t(t,!1))}function Dxa(e,t,r,n){let{implicitKey:a,inFlow:o}=t,l=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:A}=e;A!==K8.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(l.value)&&(A=K8.Scalar.QUOTE_DOUBLE);let f=C=>{switch(C){case K8.Scalar.BLOCK_FOLDED:case K8.Scalar.BLOCK_LITERAL:return a||o?JTe(l.value,t):Y_t(l,t,r,n);case K8.Scalar.QUOTE_DOUBLE:return uXe(l.value,t);case K8.Scalar.QUOTE_SINGLE:return ivr(l.value,t);case K8.Scalar.PLAIN:return Nxa(l,t,r,n);default:return null}},I=f(A);if(I===null){let{defaultKeyType:C,defaultStringType:b}=t.options,E=a&&C||b;if(I=f(E),I===null)throw new Error(`Unsupported default string type ${E}`)}return I}Npi.stringifyString=Dxa});var AXe=H(ovr=>{"use strict";var kxa=Z_t(),Gae=C0(),xxa=cXe(),Gxa=gXe();function Fxa(e,t){let r=Object.assign({blockQuote:!0,commentString:xxa.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(r.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:n,options:r}}function Zxa(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,n;if(Gae.isScalar(t)){n=t.value;let a=e.filter(o=>o.identify?.(n));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else n=t,r=e.find(a=>a.nodeClass&&n instanceof a.nodeClass);if(!r){let a=n?.constructor?.name??typeof n;throw new Error(`Tag not resolved for ${a} value`)}return r}function Lxa(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let a=[],o=(Gae.isScalar(e)||Gae.isCollection(e))&&e.anchor;o&&kxa.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let l=e.tag?e.tag:t.default?null:t.tag;return l&&a.push(n.directives.tagString(l)),a.join(" ")}function Vxa(e,t,r,n){if(Gae.isPair(e))return e.toString(t,r,n);if(Gae.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=Gae.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=Zxa(t.doc.schema.tags,o));let l=Lxa(o,a,t);l.length>0&&(t.indentAtStart=(t.indentAtStart??0)+l.length+1);let A=typeof a.stringify=="function"?a.stringify(o,t,r,n):Gae.isScalar(o)?Gxa.stringifyString(o,t,r,n):o.toString(t,r,n);return l?Gae.isScalar(o)||A[0]==="{"||A[0]==="["?`${l} ${A}`:`${l} +${t.indent}${A}`:A}ovr.createStringifyContext=Fxa;ovr.stringify=Vxa});var Gpi=H(xpi=>{"use strict";var ree=C0(),Dpi=gT(),kpi=AXe(),dXe=cXe();function Pxa({key:e,value:t},r,n,a){let{allNullValues:o,doc:l,indent:A,indentStep:f,options:{commentString:I,indentSeq:C,simpleKeys:b}}=r,E=ree.isNode(e)&&e.comment||null;if(b){if(E)throw new Error("With simple keys, key nodes cannot have comments");if(ree.isCollection(e)||!ree.isNode(e)&&typeof e=="object"){let de="With simple keys, collection cannot be used as a key value";throw new Error(de)}}let N=!b&&(!e||E&&t==null&&!r.inFlow||ree.isCollection(e)||(ree.isScalar(e)?e.type===Dpi.Scalar.BLOCK_FOLDED||e.type===Dpi.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!N&&(b||!o),indent:A+f});let B=!1,F=!1,Q=kpi.stringify(e,r,()=>B=!0,()=>F=!0);if(!N&&!r.inFlow&&Q.length>1024){if(b)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");N=!0}if(r.inFlow){if(o||t==null)return B&&n&&n(),Q===""?"?":N?`? ${Q}`:Q}else if(o&&!b||t==null&&N)return Q=`? ${Q}`,E&&!B?Q+=dXe.lineComment(Q,r.indent,I(E)):F&&a&&a(),Q;B&&(E=null),N?(E&&(Q+=dXe.lineComment(Q,r.indent,I(E))),Q=`? ${Q} +${A}:`):(Q=`${Q}:`,E&&(Q+=dXe.lineComment(Q,r.indent,I(E))));let X,ae,ne;ree.isNode(t)?(X=!!t.spaceBefore,ae=t.commentBefore,ne=t.comment):(X=!1,ae=null,ne=null,t&&typeof t=="object"&&(t=l.createNode(t))),r.implicitKey=!1,!N&&!E&&ree.isScalar(t)&&(r.indentAtStart=Q.length+1),F=!1,!C&&f.length>=2&&!r.inFlow&&!N&&ree.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ce=!1,fe=kpi.stringify(t,r,()=>ce=!0,()=>F=!0),ue=" ";if(E||X||ae){if(ue=X?` `:"",ae){let de=I(ae);ue+=` -${gXe.indentComment(de,r.indent)}`}fe===""&&!r.inFlow?ue===` +${dXe.indentComment(de,r.indent)}`}fe===""&&!r.inFlow?ue===` `&&(ue=` `):ue+=` ${r.indent}`}else if(!N&&ree.isCollection(t)){let de=fe[0],be=fe.indexOf(` `),Se=be!==-1,De=r.inFlow??t.flow??t.items.length===0;if(Se||!De){let k=!1;if(Se&&(de==="&"||de==="!")){let et=fe.indexOf(" ");de==="&"&&et!==-1&&et{"use strict";function Sxa(e,...t){e==="debug"&&console.log(...t)}function vxa(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}nvr.debug=Sxa;nvr.warn=vxa});var avr=H(Rpi=>{"use strict";var Bxa=ivr(),wxa=uXe(),JTe=C0(),Txa=gT(),svr=Nae(),Tpi="<<";function Rxa(e,t,{key:r,value:n}){if(e?.doc.schema.merge&&Nxa(r))if(n=JTe.isAlias(n)?n.resolve(e.doc):n,JTe.isSeq(n))for(let a of n.items)ovr(e,t,a);else if(Array.isArray(n))for(let a of n)ovr(e,t,a);else ovr(e,t,n);else{let a=svr.toJS(r,"",e);if(t instanceof Map)t.set(a,svr.toJS(n,a,e));else if(t instanceof Set)t.add(a);else{let o=Dxa(r,a,e),l=svr.toJS(n,o,e);o in t?Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0}):t[o]=l}}return t}var Nxa=e=>e===Tpi||JTe.isScalar(e)&&e.value===Tpi&&(!e.type||e.type===Txa.Scalar.PLAIN);function ovr(e,t,r){let n=e&&JTe.isAlias(r)?r.resolve(e.doc):r;if(!JTe.isMap(n))throw new Error("Merge sources must be maps or map aliases");let a=n.toJSON(null,e,Map);for(let[o,l]of a)t instanceof Map?t.has(o)||t.set(o,l):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0});return t}function Dxa(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(JTe.isNode(e)&&r?.doc){let n=wxa.createStringifyContext(r.doc,{});n.anchors=new Set;for(let o of r.anchors.keys())n.anchors.add(o.anchor);n.inFlow=!0,n.inStringifyKey=!0;let a=e.toString(n);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),Bxa.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}Rpi.addPairToJSMap=Rxa});var Gae=H(cvr=>{"use strict";var Npi=sXe(),kxa=wpi(),xxa=avr(),Q_t=C0();function Gxa(e,t,r){let n=Npi.createNode(e,void 0,r),a=Npi.createNode(t,void 0,r);return new X_t(n,a)}var X_t=class e{constructor(t,r=null){Object.defineProperty(this,Q_t.NODE_TYPE,{value:Q_t.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:n}=this;return Q_t.isNode(r)&&(r=r.clone(t)),Q_t.isNode(n)&&(n=n.clone(t)),new e(r,n)}toJSON(t,r){let n=r?.mapAsMap?new Map:{};return xxa.addPairToJSMap(r,n,this)}toString(t,r,n){return t?.doc?kxa.stringifyPair(this,t,r,n):JSON.stringify(this)}};cvr.Pair=X_t;cvr.createPair=Gxa});var lvr=H(kpi=>{"use strict";var Ohe=C0(),Dpi=uXe(),J_t=oXe();function Fxa(e,t,r){return(t.inFlow??e.flow?Lxa:Zxa)(e,t,r)}function Zxa({comment:e,items:t},r,{blockItemPrefix:n,flowChars:a,itemIndent:o,onChompKeep:l,onComment:A}){let{indent:f,options:{commentString:I}}=r,C=Object.assign({},r,{indent:o,type:null}),b=!1,E=[];for(let B=0;BQ=null,()=>b=!0);Q&&(X+=J_t.lineComment(X,o,I(Q))),b&&Q&&(b=!1),E.push(n+X)}let N;if(E.length===0)N=a.start+a.end;else{N=E[0];for(let B=1;B{"use strict";function Wxa(e,...t){e==="debug"&&console.log(...t)}function Oxa(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}avr.debug=Wxa;avr.warn=Oxa});var gvr=H(Zpi=>{"use strict";var Mxa=cvr(),Hxa=AXe(),UTe=C0(),Yxa=gT(),lvr=Dae(),Fpi="<<";function Qxa(e,t,{key:r,value:n}){if(e?.doc.schema.merge&&Xxa(r))if(n=UTe.isAlias(n)?n.resolve(e.doc):n,UTe.isSeq(n))for(let a of n.items)uvr(e,t,a);else if(Array.isArray(n))for(let a of n)uvr(e,t,a);else uvr(e,t,n);else{let a=lvr.toJS(r,"",e);if(t instanceof Map)t.set(a,lvr.toJS(n,a,e));else if(t instanceof Set)t.add(a);else{let o=Jxa(r,a,e),l=lvr.toJS(n,o,e);o in t?Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0}):t[o]=l}}return t}var Xxa=e=>e===Fpi||UTe.isScalar(e)&&e.value===Fpi&&(!e.type||e.type===Yxa.Scalar.PLAIN);function uvr(e,t,r){let n=e&&UTe.isAlias(r)?r.resolve(e.doc):r;if(!UTe.isMap(n))throw new Error("Merge sources must be maps or map aliases");let a=n.toJSON(null,e,Map);for(let[o,l]of a)t instanceof Map?t.has(o)||t.set(o,l):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0});return t}function Jxa(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(UTe.isNode(e)&&r?.doc){let n=Hxa.createStringifyContext(r.doc,{});n.anchors=new Set;for(let o of r.anchors.keys())n.anchors.add(o.anchor);n.inFlow=!0,n.inStringifyKey=!0;let a=e.toString(n);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),Mxa.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}Zpi.addPairToJSMap=Qxa});var Fae=H(Avr=>{"use strict";var Lpi=aXe(),Uxa=Gpi(),Kxa=gvr(),J_t=C0();function jxa(e,t,r){let n=Lpi.createNode(e,void 0,r),a=Lpi.createNode(t,void 0,r);return new U_t(n,a)}var U_t=class e{constructor(t,r=null){Object.defineProperty(this,J_t.NODE_TYPE,{value:J_t.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:n}=this;return J_t.isNode(r)&&(r=r.clone(t)),J_t.isNode(n)&&(n=n.clone(t)),new e(r,n)}toJSON(t,r){let n=r?.mapAsMap?new Map:{};return Kxa.addPairToJSMap(r,n,this)}toString(t,r,n){return t?.doc?Uxa.stringifyPair(this,t,r,n):JSON.stringify(this)}};Avr.Pair=U_t;Avr.createPair=jxa});var dvr=H(Ppi=>{"use strict";var Mhe=C0(),Vpi=AXe(),K_t=cXe();function zxa(e,t,r){return(t.inFlow??e.flow?$xa:qxa)(e,t,r)}function qxa({comment:e,items:t},r,{blockItemPrefix:n,flowChars:a,itemIndent:o,onChompKeep:l,onComment:A}){let{indent:f,options:{commentString:I}}=r,C=Object.assign({},r,{indent:o,type:null}),b=!1,E=[];for(let B=0;BQ=null,()=>b=!0);Q&&(X+=K_t.lineComment(X,o,I(Q))),b&&Q&&(b=!1),E.push(n+X)}let N;if(E.length===0)N=a.start+a.end;else{N=E[0];for(let B=1;BQ=null);BC||X.includes(` +`+K_t.indentComment(I(e),f),A&&A()):b&&l&&l(),N}function $xa({items:e},t,{flowChars:r,itemIndent:n}){let{indent:a,indentStep:o,flowCollectionPadding:l,options:{commentString:A}}=t;n+=o;let f=Object.assign({},t,{indent:n,inFlow:!0,type:null}),I=!1,C=0,b=[];for(let B=0;BQ=null);BC||X.includes(` `))&&(I=!0),b.push(X),C=b.length}let{start:E,end:N}=r;if(b.length===0)return E+N;if(!I){let B=b.reduce((F,Q)=>F+Q.length+2,2);I=t.options.lineWidth>0&&B>t.options.lineWidth}if(I){let B=E;for(let F of b)B+=F?` ${o}${a}${F}`:` `;return`${B} -${a}${N}`}else return`${E}${l}${b.join(" ")}${l}${N}`}function U_t({indent:e,options:{commentString:t}},r,n,a){if(n&&a&&(n=n.replace(/^\n+/,"")),n){let o=J_t.indentComment(t(n),e);r.push(o.trimStart())}}kpi.stringifyCollection=Fxa});var Zae=H(gvr=>{"use strict";var Vxa=lvr(),Pxa=avr(),Wxa=P_t(),Fae=C0(),K_t=Gae(),Oxa=gT();function AXe(e,t){let r=Fae.isScalar(t)?t.value:t;for(let n of e)if(Fae.isPair(n)&&(n.key===t||n.key===r||Fae.isScalar(n.key)&&n.key.value===r))return n}var uvr=class extends Wxa.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Fae.MAP,t),this.items=[]}static from(t,r,n){let{keepUndefined:a,replacer:o}=n,l=new this(t),A=(f,I)=>{if(typeof o=="function")I=o.call(r,f,I);else if(Array.isArray(o)&&!o.includes(f))return;(I!==void 0||a)&&l.items.push(K_t.createPair(f,I,n))};if(r instanceof Map)for(let[f,I]of r)A(f,I);else if(r&&typeof r=="object")for(let f of Object.keys(r))A(f,r[f]);return typeof t.sortMapEntries=="function"&&l.items.sort(t.sortMapEntries),l}add(t,r){let n;Fae.isPair(t)?n=t:!t||typeof t!="object"||!("key"in t)?n=new K_t.Pair(t,t?.value):n=new K_t.Pair(t.key,t.value);let a=AXe(this.items,n.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${n.key} already set`);Fae.isScalar(a.value)&&Oxa.isScalarValue(n.value)?a.value.value=n.value:a.value=n.value}else if(o){let l=this.items.findIndex(A=>o(n,A)<0);l===-1?this.items.push(n):this.items.splice(l,0,n)}else this.items.push(n)}delete(t){let r=AXe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=AXe(this.items,t)?.value;return(!r&&Fae.isScalar(a)?a.value:a)??void 0}has(t){return!!AXe(this.items,t)}set(t,r){this.add(new K_t.Pair(t,r),!0)}toJSON(t,r,n){let a=n?new n:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)Pxa.addPairToJSMap(r,a,o);return a}toString(t,r,n){if(!t)return JSON.stringify(this);for(let a of this.items)if(!Fae.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),Vxa.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:n,onComment:r})}};gvr.YAMLMap=uvr;gvr.findPair=AXe});var UTe=H(Gpi=>{"use strict";var Mxa=C0(),xpi=Zae(),Hxa={collection:"map",default:!0,nodeClass:xpi.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return Mxa.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>xpi.YAMLMap.from(e,t,r)};Gpi.map=Hxa});var Lae=H(Fpi=>{"use strict";var Yxa=sXe(),Qxa=lvr(),Xxa=P_t(),z_t=C0(),Jxa=gT(),Uxa=Nae(),Avr=class extends Xxa.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(z_t.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=j_t(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let n=j_t(t);if(typeof n!="number")return;let a=this.items[n];return!r&&z_t.isScalar(a)?a.value:a}has(t){let r=j_t(t);return typeof r=="number"&&r=0?t:null}Fpi.YAMLSeq=Avr});var KTe=H(Lpi=>{"use strict";var Kxa=C0(),Zpi=Lae(),jxa={collection:"seq",default:!0,nodeClass:Zpi.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return Kxa.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>Zpi.YAMLSeq.from(e,t,r)};Lpi.seq=jxa});var dXe=H(Vpi=>{"use strict";var zxa=lXe(),qxa={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,n){return t=Object.assign({actualString:!0},t),zxa.stringifyString(e,t,r,n)}};Vpi.string=qxa});var q_t=H(Opi=>{"use strict";var Ppi=gT(),Wpi={identify:e=>e==null,createNode:()=>new Ppi.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new Ppi.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&Wpi.test.test(e)?e:t.options.nullStr};Opi.nullTag=Wpi});var dvr=H(Hpi=>{"use strict";var $xa=gT(),Mpi={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new $xa.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&Mpi.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};Hpi.boolTag=Mpi});var jTe=H(Ypi=>{"use strict";function eGa({format:e,minFractionDigits:t,tag:r,value:n}){if(typeof n=="bigint")return String(n);let a=typeof n=="number"?n:Number(n);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(n);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let l=o.indexOf(".");l<0&&(l=o.length,o+=".");let A=t-(o.length-l-1);for(;A-- >0;)o+="0"}return o}Ypi.stringifyNumber=eGa});var fvr=H($_t=>{"use strict";var tGa=gT(),pvr=jTe(),rGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:pvr.stringifyNumber},nGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():pvr.stringifyNumber(e)}},iGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new tGa.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:pvr.stringifyNumber};$_t.float=iGa;$_t.floatExp=nGa;$_t.floatNaN=rGa});var hvr=H(t0t=>{"use strict";var Qpi=jTe(),e0t=e=>typeof e=="bigint"||Number.isInteger(e),Ivr=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function Xpi(e,t,r){let{value:n}=e;return e0t(n)&&n>=0?r+n.toString(t):Qpi.stringifyNumber(e)}var sGa={identify:e=>e0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>Ivr(e,2,8,r),stringify:e=>Xpi(e,8,"0o")},oGa={identify:e0t,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>Ivr(e,0,10,r),stringify:Qpi.stringifyNumber},aGa={identify:e=>e0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>Ivr(e,2,16,r),stringify:e=>Xpi(e,16,"0x")};t0t.int=oGa;t0t.intHex=aGa;t0t.intOct=sGa});var Upi=H(Jpi=>{"use strict";var cGa=UTe(),lGa=q_t(),uGa=KTe(),gGa=dXe(),AGa=dvr(),mvr=fvr(),Cvr=hvr(),dGa=[cGa.map,uGa.seq,gGa.string,lGa.nullTag,AGa.boolTag,Cvr.intOct,Cvr.int,Cvr.intHex,mvr.floatNaN,mvr.floatExp,mvr.float];Jpi.schema=dGa});var zpi=H(jpi=>{"use strict";var pGa=gT(),fGa=UTe(),IGa=KTe();function Kpi(e){return typeof e=="bigint"||Number.isInteger(e)}var r0t=({value:e})=>JSON.stringify(e),hGa=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:r0t},{identify:e=>e==null,createNode:()=>new pGa.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:r0t},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:r0t},{identify:Kpi,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>Kpi(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:r0t}],mGa={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},CGa=[fGa.map,IGa.seq].concat(hGa,mGa);jpi.schema=CGa});var yvr=H(qpi=>{"use strict";var _vr=gT(),_Ga=lXe(),yGa={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),n=new Uint8Array(r.length);for(let a=0;a{"use strict";var n0t=C0(),bvr=Gae(),bGa=gT(),EGa=Lae();function $pi(e,t){if(n0t.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=n.items[0]||new bvr.Pair(new bGa.Scalar(null));if(n.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${n.commentBefore} +${a}${N}`}else return`${E}${l}${b.join(" ")}${l}${N}`}function j_t({indent:e,options:{commentString:t}},r,n,a){if(n&&a&&(n=n.replace(/^\n+/,"")),n){let o=K_t.indentComment(t(n),e);r.push(o.trimStart())}}Ppi.stringifyCollection=zxa});var Lae=H(fvr=>{"use strict";var eGa=dvr(),tGa=gvr(),rGa=O_t(),Zae=C0(),z_t=Fae(),nGa=gT();function pXe(e,t){let r=Zae.isScalar(t)?t.value:t;for(let n of e)if(Zae.isPair(n)&&(n.key===t||n.key===r||Zae.isScalar(n.key)&&n.key.value===r))return n}var pvr=class extends rGa.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Zae.MAP,t),this.items=[]}static from(t,r,n){let{keepUndefined:a,replacer:o}=n,l=new this(t),A=(f,I)=>{if(typeof o=="function")I=o.call(r,f,I);else if(Array.isArray(o)&&!o.includes(f))return;(I!==void 0||a)&&l.items.push(z_t.createPair(f,I,n))};if(r instanceof Map)for(let[f,I]of r)A(f,I);else if(r&&typeof r=="object")for(let f of Object.keys(r))A(f,r[f]);return typeof t.sortMapEntries=="function"&&l.items.sort(t.sortMapEntries),l}add(t,r){let n;Zae.isPair(t)?n=t:!t||typeof t!="object"||!("key"in t)?n=new z_t.Pair(t,t?.value):n=new z_t.Pair(t.key,t.value);let a=pXe(this.items,n.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${n.key} already set`);Zae.isScalar(a.value)&&nGa.isScalarValue(n.value)?a.value.value=n.value:a.value=n.value}else if(o){let l=this.items.findIndex(A=>o(n,A)<0);l===-1?this.items.push(n):this.items.splice(l,0,n)}else this.items.push(n)}delete(t){let r=pXe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=pXe(this.items,t)?.value;return(!r&&Zae.isScalar(a)?a.value:a)??void 0}has(t){return!!pXe(this.items,t)}set(t,r){this.add(new z_t.Pair(t,r),!0)}toJSON(t,r,n){let a=n?new n:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)tGa.addPairToJSMap(r,a,o);return a}toString(t,r,n){if(!t)return JSON.stringify(this);for(let a of this.items)if(!Zae.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),eGa.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:n,onComment:r})}};fvr.YAMLMap=pvr;fvr.findPair=pXe});var KTe=H(Opi=>{"use strict";var iGa=C0(),Wpi=Lae(),sGa={collection:"map",default:!0,nodeClass:Wpi.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return iGa.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>Wpi.YAMLMap.from(e,t,r)};Opi.map=sGa});var Vae=H(Mpi=>{"use strict";var oGa=aXe(),aGa=dvr(),cGa=O_t(),$_t=C0(),lGa=gT(),uGa=Dae(),Ivr=class extends cGa.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super($_t.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=q_t(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let n=q_t(t);if(typeof n!="number")return;let a=this.items[n];return!r&&$_t.isScalar(a)?a.value:a}has(t){let r=q_t(t);return typeof r=="number"&&r=0?t:null}Mpi.YAMLSeq=Ivr});var jTe=H(Ypi=>{"use strict";var gGa=C0(),Hpi=Vae(),AGa={collection:"seq",default:!0,nodeClass:Hpi.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return gGa.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>Hpi.YAMLSeq.from(e,t,r)};Ypi.seq=AGa});var fXe=H(Qpi=>{"use strict";var dGa=gXe(),pGa={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,n){return t=Object.assign({actualString:!0},t),dGa.stringifyString(e,t,r,n)}};Qpi.string=pGa});var e0t=H(Upi=>{"use strict";var Xpi=gT(),Jpi={identify:e=>e==null,createNode:()=>new Xpi.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new Xpi.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&Jpi.test.test(e)?e:t.options.nullStr};Upi.nullTag=Jpi});var hvr=H(jpi=>{"use strict";var fGa=gT(),Kpi={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new fGa.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&Kpi.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};jpi.boolTag=Kpi});var zTe=H(zpi=>{"use strict";function IGa({format:e,minFractionDigits:t,tag:r,value:n}){if(typeof n=="bigint")return String(n);let a=typeof n=="number"?n:Number(n);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(n);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let l=o.indexOf(".");l<0&&(l=o.length,o+=".");let A=t-(o.length-l-1);for(;A-- >0;)o+="0"}return o}zpi.stringifyNumber=IGa});var Cvr=H(t0t=>{"use strict";var hGa=gT(),mvr=zTe(),mGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:mvr.stringifyNumber},CGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():mvr.stringifyNumber(e)}},_Ga={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new hGa.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:mvr.stringifyNumber};t0t.float=_Ga;t0t.floatExp=CGa;t0t.floatNaN=mGa});var yvr=H(n0t=>{"use strict";var qpi=zTe(),r0t=e=>typeof e=="bigint"||Number.isInteger(e),_vr=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function $pi(e,t,r){let{value:n}=e;return r0t(n)&&n>=0?r+n.toString(t):qpi.stringifyNumber(e)}var yGa={identify:e=>r0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>_vr(e,2,8,r),stringify:e=>$pi(e,8,"0o")},bGa={identify:r0t,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>_vr(e,0,10,r),stringify:qpi.stringifyNumber},EGa={identify:e=>r0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>_vr(e,2,16,r),stringify:e=>$pi(e,16,"0x")};n0t.int=bGa;n0t.intHex=EGa;n0t.intOct=yGa});var tfi=H(efi=>{"use strict";var SGa=KTe(),vGa=e0t(),BGa=jTe(),wGa=fXe(),TGa=hvr(),bvr=Cvr(),Evr=yvr(),RGa=[SGa.map,BGa.seq,wGa.string,vGa.nullTag,TGa.boolTag,Evr.intOct,Evr.int,Evr.intHex,bvr.floatNaN,bvr.floatExp,bvr.float];efi.schema=RGa});var ifi=H(nfi=>{"use strict";var NGa=gT(),DGa=KTe(),kGa=jTe();function rfi(e){return typeof e=="bigint"||Number.isInteger(e)}var i0t=({value:e})=>JSON.stringify(e),xGa=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:i0t},{identify:e=>e==null,createNode:()=>new NGa.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:i0t},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:i0t},{identify:rfi,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>rfi(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:i0t}],GGa={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},FGa=[DGa.map,kGa.seq].concat(xGa,GGa);nfi.schema=FGa});var vvr=H(sfi=>{"use strict";var Svr=gT(),ZGa=gXe(),LGa={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),n=new Uint8Array(r.length);for(let a=0;a{"use strict";var s0t=C0(),Bvr=Fae(),VGa=gT(),PGa=Vae();function ofi(e,t){if(s0t.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=n.items[0]||new Bvr.Pair(new VGa.Scalar(null));if(n.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${n.commentBefore} ${a.key.commentBefore}`:n.commentBefore),n.comment){let o=a.value??a.key;o.comment=o.comment?`${n.comment} -${o.comment}`:n.comment}n=a}e.items[r]=n0t.isPair(n)?n:new bvr.Pair(n)}}else t("Expected a sequence for this tag");return e}function efi(e,t,r){let{replacer:n}=r,a=new EGa.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let l of t){typeof n=="function"&&(l=n.call(t,String(o++),l));let A,f;if(Array.isArray(l))if(l.length===2)A=l[0],f=l[1];else throw new TypeError(`Expected [key, value] tuple: ${l}`);else if(l&&l instanceof Object){let I=Object.keys(l);if(I.length===1)A=I[0],f=l[A];else throw new TypeError(`Expected tuple with one key, not ${I.length} keys`)}else A=l;a.items.push(bvr.createPair(A,f,r))}return a}var SGa={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:$pi,createNode:efi};i0t.createPairs=efi;i0t.pairs=SGa;i0t.resolvePairs=$pi});var vvr=H(Svr=>{"use strict";var tfi=C0(),Evr=Nae(),pXe=Zae(),vGa=Lae(),rfi=s0t(),Mhe=class e extends vGa.YAMLSeq{constructor(){super(),this.add=pXe.YAMLMap.prototype.add.bind(this),this.delete=pXe.YAMLMap.prototype.delete.bind(this),this.get=pXe.YAMLMap.prototype.get.bind(this),this.has=pXe.YAMLMap.prototype.has.bind(this),this.set=pXe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let n=new Map;r?.onCreate&&r.onCreate(n);for(let a of this.items){let o,l;if(tfi.isPair(a)?(o=Evr.toJS(a.key,"",r),l=Evr.toJS(a.value,o,r)):o=Evr.toJS(a,"",r),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,l)}return n}static from(t,r,n){let a=rfi.createPairs(t,r,n),o=new this;return o.items=a.items,o}};Mhe.tag="tag:yaml.org,2002:omap";var BGa={collection:"seq",identify:e=>e instanceof Map,nodeClass:Mhe,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=rfi.resolvePairs(e,t),n=[];for(let{key:a}of r.items)tfi.isScalar(a)&&(n.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):n.push(a.value));return Object.assign(new Mhe,r)},createNode:(e,t,r)=>Mhe.from(e,t,r)};Svr.YAMLOMap=Mhe;Svr.omap=BGa});var afi=H(Bvr=>{"use strict";var nfi=gT();function ifi({value:e,source:t},r){return t&&(e?sfi:ofi).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var sfi={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new nfi.Scalar(!0),stringify:ifi},ofi={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new nfi.Scalar(!1),stringify:ifi};Bvr.falseTag=ofi;Bvr.trueTag=sfi});var cfi=H(o0t=>{"use strict";var wGa=gT(),wvr=jTe(),TGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:wvr.stringifyNumber},RGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():wvr.stringifyNumber(e)}},NGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new wGa.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");n[n.length-1]==="0"&&(t.minFractionDigits=n.length)}return t},stringify:wvr.stringifyNumber};o0t.float=NGa;o0t.floatExp=RGa;o0t.floatNaN=TGa});var ufi=H(IXe=>{"use strict";var lfi=jTe(),fXe=e=>typeof e=="bigint"||Number.isInteger(e);function a0t(e,t,r,{intAsBigInt:n}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let l=BigInt(e);return a==="-"?BigInt(-1)*l:l}let o=parseInt(e,r);return a==="-"?-1*o:o}function Tvr(e,t,r){let{value:n}=e;if(fXe(n)){let a=n.toString(t);return n<0?"-"+r+a.substr(1):r+a}return lfi.stringifyNumber(e)}var DGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>a0t(e,2,2,r),stringify:e=>Tvr(e,2,"0b")},kGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>a0t(e,1,8,r),stringify:e=>Tvr(e,8,"0")},xGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>a0t(e,0,10,r),stringify:lfi.stringifyNumber},GGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>a0t(e,2,16,r),stringify:e=>Tvr(e,16,"0x")};IXe.int=xGa;IXe.intBin=DGa;IXe.intHex=GGa;IXe.intOct=kGa});var Nvr=H(Rvr=>{"use strict";var u0t=C0(),c0t=Gae(),l0t=Zae(),Hhe=class e extends l0t.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;u0t.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new c0t.Pair(t.key,null):r=new c0t.Pair(t,null),l0t.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let n=l0t.findPair(this.items,t);return!r&&u0t.isPair(n)?u0t.isScalar(n.key)?n.key.value:n.key:n}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let n=l0t.findPair(this.items,t);n&&!r?this.items.splice(this.items.indexOf(n),1):!n&&r&&this.items.push(new c0t.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,n){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,n);throw new Error("Set items must all have null values")}static from(t,r,n){let{replacer:a}=n,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let l of r)typeof a=="function"&&(l=a.call(r,l,l)),o.items.push(c0t.createPair(l,null,n));return o}};Hhe.tag="tag:yaml.org,2002:set";var FGa={collection:"map",identify:e=>e instanceof Set,nodeClass:Hhe,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Hhe.from(e,t,r),resolve(e,t){if(u0t.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new Hhe,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};Rvr.YAMLSet=Hhe;Rvr.set=FGa});var kvr=H(g0t=>{"use strict";var ZGa=jTe();function Dvr(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,a=l=>t?BigInt(l):Number(l),o=n.replace(/_/g,"").split(":").reduce((l,A)=>l*a(60)+a(A),a(0));return r==="-"?a(-1)*o:o}function gfi(e){let{value:t}=e,r=l=>l;if(typeof t=="bigint")r=l=>BigInt(l);else if(isNaN(t)||!isFinite(t))return ZGa.stringifyNumber(e);let n="";t<0&&(n="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),n+o.map(l=>String(l).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var LGa={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>Dvr(e,r),stringify:gfi},VGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>Dvr(e,!1),stringify:gfi},Afi={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(Afi.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,a,o,l,A]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,I=Date.UTC(r,n-1,a,o||0,l||0,A||0,f),C=t[8];if(C&&C!=="Z"){let b=Dvr(C,!1);Math.abs(b)<30&&(b*=60),I-=6e4*b}return new Date(I)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};g0t.floatTime=VGa;g0t.intTime=LGa;g0t.timestamp=Afi});var ffi=H(pfi=>{"use strict";var PGa=UTe(),WGa=q_t(),OGa=KTe(),MGa=dXe(),HGa=yvr(),dfi=afi(),xvr=cfi(),A0t=ufi(),YGa=vvr(),QGa=s0t(),XGa=Nvr(),Gvr=kvr(),JGa=[PGa.map,OGa.seq,MGa.string,WGa.nullTag,dfi.trueTag,dfi.falseTag,A0t.intBin,A0t.intOct,A0t.int,A0t.intHex,xvr.floatNaN,xvr.floatExp,xvr.float,HGa.binary,YGa.omap,QGa.pairs,XGa.set,Gvr.intTime,Gvr.floatTime,Gvr.timestamp];pfi.schema=JGa});var vfi=H(Lvr=>{"use strict";var Cfi=UTe(),UGa=q_t(),_fi=KTe(),KGa=dXe(),jGa=dvr(),Fvr=fvr(),Zvr=hvr(),zGa=Upi(),qGa=zpi(),yfi=yvr(),bfi=vvr(),Efi=s0t(),Ifi=ffi(),Sfi=Nvr(),d0t=kvr(),hfi=new Map([["core",zGa.schema],["failsafe",[Cfi.map,_fi.seq,KGa.string]],["json",qGa.schema],["yaml11",Ifi.schema],["yaml-1.1",Ifi.schema]]),mfi={binary:yfi.binary,bool:jGa.boolTag,float:Fvr.float,floatExp:Fvr.floatExp,floatNaN:Fvr.floatNaN,floatTime:d0t.floatTime,int:Zvr.int,intHex:Zvr.intHex,intOct:Zvr.intOct,intTime:d0t.intTime,map:Cfi.map,null:UGa.nullTag,omap:bfi.omap,pairs:Efi.pairs,seq:_fi.seq,set:Sfi.set,timestamp:d0t.timestamp},$Ga={"tag:yaml.org,2002:binary":yfi.binary,"tag:yaml.org,2002:omap":bfi.omap,"tag:yaml.org,2002:pairs":Efi.pairs,"tag:yaml.org,2002:set":Sfi.set,"tag:yaml.org,2002:timestamp":d0t.timestamp};function eFa(e,t){let r=hfi.get(t);if(!r)if(Array.isArray(e))r=[];else{let n=Array.from(hfi.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${n} or define customTags array`)}if(Array.isArray(e))for(let n of e)r=r.concat(n);else typeof e=="function"&&(r=e(r.slice()));return r.map(n=>{if(typeof n!="string")return n;let a=mfi[n];if(a)return a;let o=Object.keys(mfi).map(l=>JSON.stringify(l)).join(", ");throw new Error(`Unknown custom tag "${n}"; use one of ${o}`)})}Lvr.coreKnownTags=$Ga;Lvr.getTags=eFa});var Wvr=H(Bfi=>{"use strict";var Vvr=C0(),tFa=UTe(),rFa=KTe(),nFa=dXe(),p0t=vfi(),iFa=(e,t)=>e.keyt.key?1:0,Pvr=class e{constructor({compat:t,customTags:r,merge:n,resolveKnownTags:a,schema:o,sortMapEntries:l,toStringDefaults:A}){this.compat=Array.isArray(t)?p0t.getTags(t,"compat"):t?p0t.getTags(null,t):null,this.merge=!!n,this.name=typeof o=="string"&&o||"core",this.knownTags=a?p0t.coreKnownTags:{},this.tags=p0t.getTags(r,this.name),this.toStringOptions=A??null,Object.defineProperty(this,Vvr.MAP,{value:tFa.map}),Object.defineProperty(this,Vvr.SCALAR,{value:nFa.string}),Object.defineProperty(this,Vvr.SEQ,{value:rFa.seq}),this.sortMapEntries=typeof l=="function"?l:l===!0?iFa:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};Bfi.Schema=Pvr});var Tfi=H(wfi=>{"use strict";var sFa=C0(),Ovr=uXe(),hXe=oXe();function oFa(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),n=!0):e.directives.docStart&&(n=!0)}n&&r.push("---");let a=Ovr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(hXe.indentComment(f,""))}let l=!1,A=null;if(e.contents){if(sFa.isNode(e.contents)){if(e.contents.spaceBefore&&n&&r.push(""),e.contents.commentBefore){let C=o(e.contents.commentBefore);r.push(hXe.indentComment(C,""))}a.forceBlockIndent=!!e.comment,A=e.contents.comment}let f=A?void 0:()=>l=!0,I=Ovr.stringify(e.contents,a,()=>A=null,f);A&&(I+=hXe.lineComment(I,"",o(A))),(I[0]==="|"||I[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${I}`:r.push(I)}else r.push(Ovr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` -`)?(r.push("..."),r.push(hXe.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&l&&(f=f.replace(/^\n+/,"")),f&&((!l||A)&&r[r.length-1]!==""&&r.push(""),r.push(hXe.indentComment(o(f),"")))}return r.join(` +${o.comment}`:n.comment}n=a}e.items[r]=s0t.isPair(n)?n:new Bvr.Pair(n)}}else t("Expected a sequence for this tag");return e}function afi(e,t,r){let{replacer:n}=r,a=new PGa.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let l of t){typeof n=="function"&&(l=n.call(t,String(o++),l));let A,f;if(Array.isArray(l))if(l.length===2)A=l[0],f=l[1];else throw new TypeError(`Expected [key, value] tuple: ${l}`);else if(l&&l instanceof Object){let I=Object.keys(l);if(I.length===1)A=I[0],f=l[A];else throw new TypeError(`Expected tuple with one key, not ${I.length} keys`)}else A=l;a.items.push(Bvr.createPair(A,f,r))}return a}var WGa={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:ofi,createNode:afi};o0t.createPairs=afi;o0t.pairs=WGa;o0t.resolvePairs=ofi});var Rvr=H(Tvr=>{"use strict";var cfi=C0(),wvr=Dae(),IXe=Lae(),OGa=Vae(),lfi=a0t(),Hhe=class e extends OGa.YAMLSeq{constructor(){super(),this.add=IXe.YAMLMap.prototype.add.bind(this),this.delete=IXe.YAMLMap.prototype.delete.bind(this),this.get=IXe.YAMLMap.prototype.get.bind(this),this.has=IXe.YAMLMap.prototype.has.bind(this),this.set=IXe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let n=new Map;r?.onCreate&&r.onCreate(n);for(let a of this.items){let o,l;if(cfi.isPair(a)?(o=wvr.toJS(a.key,"",r),l=wvr.toJS(a.value,o,r)):o=wvr.toJS(a,"",r),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,l)}return n}static from(t,r,n){let a=lfi.createPairs(t,r,n),o=new this;return o.items=a.items,o}};Hhe.tag="tag:yaml.org,2002:omap";var MGa={collection:"seq",identify:e=>e instanceof Map,nodeClass:Hhe,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=lfi.resolvePairs(e,t),n=[];for(let{key:a}of r.items)cfi.isScalar(a)&&(n.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):n.push(a.value));return Object.assign(new Hhe,r)},createNode:(e,t,r)=>Hhe.from(e,t,r)};Tvr.YAMLOMap=Hhe;Tvr.omap=MGa});var pfi=H(Nvr=>{"use strict";var ufi=gT();function gfi({value:e,source:t},r){return t&&(e?Afi:dfi).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var Afi={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new ufi.Scalar(!0),stringify:gfi},dfi={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new ufi.Scalar(!1),stringify:gfi};Nvr.falseTag=dfi;Nvr.trueTag=Afi});var ffi=H(c0t=>{"use strict";var HGa=gT(),Dvr=zTe(),YGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Dvr.stringifyNumber},QGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Dvr.stringifyNumber(e)}},XGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new HGa.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");n[n.length-1]==="0"&&(t.minFractionDigits=n.length)}return t},stringify:Dvr.stringifyNumber};c0t.float=XGa;c0t.floatExp=QGa;c0t.floatNaN=YGa});var hfi=H(mXe=>{"use strict";var Ifi=zTe(),hXe=e=>typeof e=="bigint"||Number.isInteger(e);function l0t(e,t,r,{intAsBigInt:n}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let l=BigInt(e);return a==="-"?BigInt(-1)*l:l}let o=parseInt(e,r);return a==="-"?-1*o:o}function kvr(e,t,r){let{value:n}=e;if(hXe(n)){let a=n.toString(t);return n<0?"-"+r+a.substr(1):r+a}return Ifi.stringifyNumber(e)}var JGa={identify:hXe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>l0t(e,2,2,r),stringify:e=>kvr(e,2,"0b")},UGa={identify:hXe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>l0t(e,1,8,r),stringify:e=>kvr(e,8,"0")},KGa={identify:hXe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>l0t(e,0,10,r),stringify:Ifi.stringifyNumber},jGa={identify:hXe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>l0t(e,2,16,r),stringify:e=>kvr(e,16,"0x")};mXe.int=KGa;mXe.intBin=JGa;mXe.intHex=jGa;mXe.intOct=UGa});var Gvr=H(xvr=>{"use strict";var A0t=C0(),u0t=Fae(),g0t=Lae(),Yhe=class e extends g0t.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;A0t.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new u0t.Pair(t.key,null):r=new u0t.Pair(t,null),g0t.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let n=g0t.findPair(this.items,t);return!r&&A0t.isPair(n)?A0t.isScalar(n.key)?n.key.value:n.key:n}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let n=g0t.findPair(this.items,t);n&&!r?this.items.splice(this.items.indexOf(n),1):!n&&r&&this.items.push(new u0t.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,n){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,n);throw new Error("Set items must all have null values")}static from(t,r,n){let{replacer:a}=n,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let l of r)typeof a=="function"&&(l=a.call(r,l,l)),o.items.push(u0t.createPair(l,null,n));return o}};Yhe.tag="tag:yaml.org,2002:set";var zGa={collection:"map",identify:e=>e instanceof Set,nodeClass:Yhe,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Yhe.from(e,t,r),resolve(e,t){if(A0t.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new Yhe,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};xvr.YAMLSet=Yhe;xvr.set=zGa});var Zvr=H(d0t=>{"use strict";var qGa=zTe();function Fvr(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,a=l=>t?BigInt(l):Number(l),o=n.replace(/_/g,"").split(":").reduce((l,A)=>l*a(60)+a(A),a(0));return r==="-"?a(-1)*o:o}function mfi(e){let{value:t}=e,r=l=>l;if(typeof t=="bigint")r=l=>BigInt(l);else if(isNaN(t)||!isFinite(t))return qGa.stringifyNumber(e);let n="";t<0&&(n="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),n+o.map(l=>String(l).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var $Ga={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>Fvr(e,r),stringify:mfi},eFa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>Fvr(e,!1),stringify:mfi},Cfi={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(Cfi.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,a,o,l,A]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,I=Date.UTC(r,n-1,a,o||0,l||0,A||0,f),C=t[8];if(C&&C!=="Z"){let b=Fvr(C,!1);Math.abs(b)<30&&(b*=60),I-=6e4*b}return new Date(I)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};d0t.floatTime=eFa;d0t.intTime=$Ga;d0t.timestamp=Cfi});var bfi=H(yfi=>{"use strict";var tFa=KTe(),rFa=e0t(),nFa=jTe(),iFa=fXe(),sFa=vvr(),_fi=pfi(),Lvr=ffi(),p0t=hfi(),oFa=Rvr(),aFa=a0t(),cFa=Gvr(),Vvr=Zvr(),lFa=[tFa.map,nFa.seq,iFa.string,rFa.nullTag,_fi.trueTag,_fi.falseTag,p0t.intBin,p0t.intOct,p0t.int,p0t.intHex,Lvr.floatNaN,Lvr.floatExp,Lvr.float,sFa.binary,oFa.omap,aFa.pairs,cFa.set,Vvr.intTime,Vvr.floatTime,Vvr.timestamp];yfi.schema=lFa});var kfi=H(Ovr=>{"use strict";var Bfi=KTe(),uFa=e0t(),wfi=jTe(),gFa=fXe(),AFa=hvr(),Pvr=Cvr(),Wvr=yvr(),dFa=tfi(),pFa=ifi(),Tfi=vvr(),Rfi=Rvr(),Nfi=a0t(),Efi=bfi(),Dfi=Gvr(),f0t=Zvr(),Sfi=new Map([["core",dFa.schema],["failsafe",[Bfi.map,wfi.seq,gFa.string]],["json",pFa.schema],["yaml11",Efi.schema],["yaml-1.1",Efi.schema]]),vfi={binary:Tfi.binary,bool:AFa.boolTag,float:Pvr.float,floatExp:Pvr.floatExp,floatNaN:Pvr.floatNaN,floatTime:f0t.floatTime,int:Wvr.int,intHex:Wvr.intHex,intOct:Wvr.intOct,intTime:f0t.intTime,map:Bfi.map,null:uFa.nullTag,omap:Rfi.omap,pairs:Nfi.pairs,seq:wfi.seq,set:Dfi.set,timestamp:f0t.timestamp},fFa={"tag:yaml.org,2002:binary":Tfi.binary,"tag:yaml.org,2002:omap":Rfi.omap,"tag:yaml.org,2002:pairs":Nfi.pairs,"tag:yaml.org,2002:set":Dfi.set,"tag:yaml.org,2002:timestamp":f0t.timestamp};function IFa(e,t){let r=Sfi.get(t);if(!r)if(Array.isArray(e))r=[];else{let n=Array.from(Sfi.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${n} or define customTags array`)}if(Array.isArray(e))for(let n of e)r=r.concat(n);else typeof e=="function"&&(r=e(r.slice()));return r.map(n=>{if(typeof n!="string")return n;let a=vfi[n];if(a)return a;let o=Object.keys(vfi).map(l=>JSON.stringify(l)).join(", ");throw new Error(`Unknown custom tag "${n}"; use one of ${o}`)})}Ovr.coreKnownTags=fFa;Ovr.getTags=IFa});var Yvr=H(xfi=>{"use strict";var Mvr=C0(),hFa=KTe(),mFa=jTe(),CFa=fXe(),I0t=kfi(),_Fa=(e,t)=>e.keyt.key?1:0,Hvr=class e{constructor({compat:t,customTags:r,merge:n,resolveKnownTags:a,schema:o,sortMapEntries:l,toStringDefaults:A}){this.compat=Array.isArray(t)?I0t.getTags(t,"compat"):t?I0t.getTags(null,t):null,this.merge=!!n,this.name=typeof o=="string"&&o||"core",this.knownTags=a?I0t.coreKnownTags:{},this.tags=I0t.getTags(r,this.name),this.toStringOptions=A??null,Object.defineProperty(this,Mvr.MAP,{value:hFa.map}),Object.defineProperty(this,Mvr.SCALAR,{value:CFa.string}),Object.defineProperty(this,Mvr.SEQ,{value:mFa.seq}),this.sortMapEntries=typeof l=="function"?l:l===!0?_Fa:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};xfi.Schema=Hvr});var Ffi=H(Gfi=>{"use strict";var yFa=C0(),Qvr=AXe(),CXe=cXe();function bFa(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),n=!0):e.directives.docStart&&(n=!0)}n&&r.push("---");let a=Qvr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(CXe.indentComment(f,""))}let l=!1,A=null;if(e.contents){if(yFa.isNode(e.contents)){if(e.contents.spaceBefore&&n&&r.push(""),e.contents.commentBefore){let C=o(e.contents.commentBefore);r.push(CXe.indentComment(C,""))}a.forceBlockIndent=!!e.comment,A=e.contents.comment}let f=A?void 0:()=>l=!0,I=Qvr.stringify(e.contents,a,()=>A=null,f);A&&(I+=CXe.lineComment(I,"",o(A))),(I[0]==="|"||I[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${I}`:r.push(I)}else r.push(Qvr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` +`)?(r.push("..."),r.push(CXe.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&l&&(f=f.replace(/^\n+/,"")),f&&((!l||A)&&r[r.length-1]!==""&&r.push(""),r.push(CXe.indentComment(o(f),"")))}return r.join(` `)+` -`}wfi.stringifyDocument=oFa});var mXe=H(Rfi=>{"use strict";var aFa=iXe(),zTe=P_t(),YM=C0(),cFa=Gae(),lFa=Nae(),uFa=Wvr(),gFa=Tfi(),Mvr=G_t(),AFa=XSr(),dFa=sXe(),Hvr=QSr(),Yvr=class e{constructor(t,r,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,YM.NODE_TYPE,{value:YM.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:n===void 0&&r&&(n=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},n);this.options=o;let{version:l}=o;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(l=this.directives.yaml.version)):this.directives=new Hvr.Directives({version:l}),this.setSchema(l,n),this.contents=t===void 0?null:this.createNode(t,a,n)}clone(){let t=Object.create(e.prototype,{[YM.NODE_TYPE]:{value:YM.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=YM.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){qTe(this.contents)&&this.contents.add(t)}addIn(t,r){qTe(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let n=Mvr.anchorNames(this);t.anchor=!r||n.has(r)?Mvr.findNewAnchor(r||"a",n):r}return new aFa.Alias(t.anchor)}createNode(t,r,n){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let Q=ae=>typeof ae=="number"||ae instanceof String||ae instanceof Number,X=r.filter(Q).map(String);X.length>0&&(r=r.concat(X)),a=r}else n===void 0&&r&&(n=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:l,flow:A,keepUndefined:f,onTagObj:I,tag:C}=n??{},{onAnchor:b,setAnchors:E,sourceObjects:N}=Mvr.createNodeAnchors(this,l||"a"),B={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:b,onTagObj:I,replacer:a,schema:this.schema,sourceObjects:N},F=dFa.createNode(t,C,B);return A&&YM.isCollection(F)&&(F.flow=!0),E(),F}createPair(t,r,n={}){let a=this.createNode(t,null,n),o=this.createNode(r,null,n);return new cFa.Pair(a,o)}delete(t){return qTe(this.contents)?this.contents.delete(t):!1}deleteIn(t){return zTe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):qTe(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return YM.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return zTe.isEmptyPath(t)?!r&&YM.isScalar(this.contents)?this.contents.value:this.contents:YM.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return YM.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return zTe.isEmptyPath(t)?this.contents!==void 0:YM.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=zTe.collectionFromPath(this.schema,[t],r):qTe(this.contents)&&this.contents.set(t,r)}setIn(t,r){zTe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=zTe.collectionFromPath(this.schema,Array.from(t),r):qTe(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let n;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Hvr.Directives({version:"1.1"}),n={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new Hvr.Directives({version:t}),n={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,n=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(n)this.schema=new uFa.Schema(Object.assign(n,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:n,maxAliasCount:a,onAnchor:o,reviver:l}={}){let A={anchors:new Map,doc:this,keep:!t,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=lFa.toJS(this.contents,r??"",A);if(typeof o=="function")for(let{count:I,res:C}of A.anchors.values())o(C,I);return typeof l=="function"?AFa.applyReviver(l,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return gFa.stringifyDocument(this,t)}};function qTe(e){if(YM.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}Rfi.Document=Yvr});var yXe=H(_Xe=>{"use strict";var CXe=class extends Error{constructor(t,r,n,a){super(),this.name=t,this.code=n,this.message=a,this.pos=r}},Qvr=class extends CXe{constructor(t,r,n){super("YAMLParseError",t,r,n)}},Xvr=class extends CXe{constructor(t,r,n){super("YAMLWarning",t,r,n)}},pFa=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(A=>t.linePos(A));let{line:n,col:a}=r.linePos[0];r.message+=` at line ${n}, column ${a}`;let o=a-1,l=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(o>=60&&l.length>80){let A=Math.min(o-39,l.length-79);l="\u2026"+l.substring(A),o-=A-1}if(l.length>80&&(l=l.substring(0,79)+"\u2026"),n>1&&/^ *$/.test(l.substring(0,o))){let A=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);A.length>80&&(A=A.substring(0,79)+`\u2026 +`}Gfi.stringifyDocument=bFa});var _Xe=H(Zfi=>{"use strict";var EFa=oXe(),qTe=O_t(),YM=C0(),SFa=Fae(),vFa=Dae(),BFa=Yvr(),wFa=Ffi(),Xvr=Z_t(),TFa=jSr(),RFa=aXe(),Jvr=KSr(),Uvr=class e{constructor(t,r,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,YM.NODE_TYPE,{value:YM.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:n===void 0&&r&&(n=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},n);this.options=o;let{version:l}=o;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(l=this.directives.yaml.version)):this.directives=new Jvr.Directives({version:l}),this.setSchema(l,n),this.contents=t===void 0?null:this.createNode(t,a,n)}clone(){let t=Object.create(e.prototype,{[YM.NODE_TYPE]:{value:YM.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=YM.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){$Te(this.contents)&&this.contents.add(t)}addIn(t,r){$Te(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let n=Xvr.anchorNames(this);t.anchor=!r||n.has(r)?Xvr.findNewAnchor(r||"a",n):r}return new EFa.Alias(t.anchor)}createNode(t,r,n){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let Q=ae=>typeof ae=="number"||ae instanceof String||ae instanceof Number,X=r.filter(Q).map(String);X.length>0&&(r=r.concat(X)),a=r}else n===void 0&&r&&(n=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:l,flow:A,keepUndefined:f,onTagObj:I,tag:C}=n??{},{onAnchor:b,setAnchors:E,sourceObjects:N}=Xvr.createNodeAnchors(this,l||"a"),B={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:b,onTagObj:I,replacer:a,schema:this.schema,sourceObjects:N},F=RFa.createNode(t,C,B);return A&&YM.isCollection(F)&&(F.flow=!0),E(),F}createPair(t,r,n={}){let a=this.createNode(t,null,n),o=this.createNode(r,null,n);return new SFa.Pair(a,o)}delete(t){return $Te(this.contents)?this.contents.delete(t):!1}deleteIn(t){return qTe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):$Te(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return YM.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return qTe.isEmptyPath(t)?!r&&YM.isScalar(this.contents)?this.contents.value:this.contents:YM.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return YM.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return qTe.isEmptyPath(t)?this.contents!==void 0:YM.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=qTe.collectionFromPath(this.schema,[t],r):$Te(this.contents)&&this.contents.set(t,r)}setIn(t,r){qTe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=qTe.collectionFromPath(this.schema,Array.from(t),r):$Te(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let n;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Jvr.Directives({version:"1.1"}),n={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new Jvr.Directives({version:t}),n={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,n=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(n)this.schema=new BFa.Schema(Object.assign(n,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:n,maxAliasCount:a,onAnchor:o,reviver:l}={}){let A={anchors:new Map,doc:this,keep:!t,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=vFa.toJS(this.contents,r??"",A);if(typeof o=="function")for(let{count:I,res:C}of A.anchors.values())o(C,I);return typeof l=="function"?TFa.applyReviver(l,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return wFa.stringifyDocument(this,t)}};function $Te(e){if(YM.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}Zfi.Document=Uvr});var EXe=H(bXe=>{"use strict";var yXe=class extends Error{constructor(t,r,n,a){super(),this.name=t,this.code=n,this.message=a,this.pos=r}},Kvr=class extends yXe{constructor(t,r,n){super("YAMLParseError",t,r,n)}},jvr=class extends yXe{constructor(t,r,n){super("YAMLWarning",t,r,n)}},NFa=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(A=>t.linePos(A));let{line:n,col:a}=r.linePos[0];r.message+=` at line ${n}, column ${a}`;let o=a-1,l=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(o>=60&&l.length>80){let A=Math.min(o-39,l.length-79);l="\u2026"+l.substring(A),o-=A-1}if(l.length>80&&(l=l.substring(0,79)+"\u2026"),n>1&&/^ *$/.test(l.substring(0,o))){let A=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);A.length>80&&(A=A.substring(0,79)+`\u2026 `),l=A+l}if(/[^ ]/.test(l)){let A=1,f=r.linePos[1];f&&f.line===n&&f.col>a&&(A=Math.max(1,Math.min(f.col-a,80-o)));let I=" ".repeat(o)+"^".repeat(A);r.message+=`: ${l} ${I} -`}};_Xe.YAMLError=CXe;_Xe.YAMLParseError=Qvr;_Xe.YAMLWarning=Xvr;_Xe.prettifyError=pFa});var bXe=H(Nfi=>{"use strict";function fFa(e,{flow:t,indicator:r,next:n,offset:a,onError:o,parentIndent:l,startOnNewline:A}){let f=!1,I=A,C=A,b="",E="",N=!1,B=!1,F=null,Q=null,X=null,ae=null,ne=null,ce=null,fe=null;for(let be of e)switch(B&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),B=!1),F&&(I&&be.type!=="comment"&&be.type!=="newline"&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),F=null),be.type){case"space":!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&be.source.includes(" ")&&(F=be),C=!0;break;case"comment":{C||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Se=be.source.substring(1)||" ";b?b+=E+Se:b=Se,E="",I=!1;break}case"newline":I?b?b+=be.source:f=!0:E+=be.source,I=!0,N=!0,(Q||X)&&(ae=be),C=!0;break;case"anchor":Q&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),Q=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break;case"tag":{X&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),X=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break}case r:(Q||X)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ce&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ce=be,I=r==="seq-item-ind"||r==="explicit-key-ind",C=!1;break;case"comma":if(t){ne&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ne=be,I=!1,C=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),I=!1,C=!1}let ue=e[e.length-1],de=ue?ue.offset+ue.source.length:a;return B&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!=="")&&o(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),F&&(I&&F.indent<=l||n?.type==="block-map"||n?.type==="block-seq")&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ne,found:ce,spaceBefore:f,comment:b,hasNewline:N,anchor:Q,tag:X,newlineAfterProp:ae,end:de,start:fe??de}}Nfi.resolveProps=fFa});var f0t=H(Dfi=>{"use strict";function Jvr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` -`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(Jvr(t.key)||Jvr(t.value))return!0}return!1;default:return!0}}Dfi.containsNewline=Jvr});var Uvr=H(kfi=>{"use strict";var IFa=f0t();function hFa(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];n.indent===e&&(n.source==="]"||n.source==="}")&&IFa.containsNewline(t)&&r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}kfi.flowIndentCheck=hFa});var Kvr=H(Gfi=>{"use strict";var xfi=C0();function mFa(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let a=typeof n=="function"?n:(o,l)=>o===l||xfi.isScalar(o)&&xfi.isScalar(l)&&o.value===l.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}Gfi.mapIncludes=mFa});var Wfi=H(Pfi=>{"use strict";var Ffi=Gae(),CFa=Zae(),Zfi=bXe(),_Fa=f0t(),Lfi=Uvr(),yFa=Kvr(),Vfi="All mapping items must start at the same column";function bFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??CFa.YAMLMap,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let C of n.items){let{start:b,key:E,sep:N,value:B}=C,F=Zfi.resolveProps(b,{indicator:"explicit-key-ind",next:E??N?.[0],offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0}),Q=!F.found;if(Q){if(E&&(E.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==n.indent&&a(f,"BAD_INDENT",Vfi)),!F.anchor&&!F.tag&&!N){I=F.end,F.comment&&(A.comment?A.comment+=` -`+F.comment:A.comment=F.comment);continue}(F.newlineAfterProp||_Fa.containsNewline(E))&&a(E??b[b.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else F.found?.indent!==n.indent&&a(f,"BAD_INDENT",Vfi);let X=F.end,ae=E?e(r,E,F,a):t(r,X,b,null,F,a);r.schema.compat&&Lfi.flowIndentCheck(n.indent,E,a),yFa.mapIncludes(r,A.items,ae)&&a(X,"DUPLICATE_KEY","Map keys must be unique");let ne=Zfi.resolveProps(N??[],{indicator:"map-value-ind",next:B,offset:ae.range[2],onError:a,parentIndent:n.indent,startOnNewline:!E||E.type==="block-scalar"});if(f=ne.end,ne.found){Q&&(B?.type==="block-map"&&!ne.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&F.start{"use strict";var EFa=Lae(),SFa=bXe(),vFa=Uvr();function BFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??EFa.YAMLSeq,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let{start:C,value:b}of n.items){let E=SFa.resolveProps(C,{indicator:"seq-item-ind",next:b,offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0});if(!E.found)if(E.anchor||E.tag||b)b&&b.type==="block-seq"?a(E.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{I=E.end,E.comment&&(A.comment=E.comment);continue}let N=b?e(r,b,E,a):t(r,E.end,C,null,E,a);r.schema.compat&&vFa.flowIndentCheck(n.indent,b,a),f=N.range[2],A.items.push(N)}return A.range=[n.offset,f,I??f],A}Ofi.resolveBlockSeq=BFa});var $Te=H(Hfi=>{"use strict";function wFa(e,t,r,n){let a="";if(e){let o=!1,l="";for(let A of e){let{source:f,type:I}=A;switch(I){case"space":o=!0;break;case"comment":{r&&!o&&n(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let C=f.substring(1)||" ";a?a+=l+C:a=C,l="";break}case"newline":a&&(l+=f),o=!0;break;default:n(A,"UNEXPECTED_TOKEN",`Unexpected ${I} at node end`)}t+=f.length}}return{comment:a,offset:t}}Hfi.resolveEnd=wFa});var Jfi=H(Xfi=>{"use strict";var TFa=C0(),RFa=Gae(),Yfi=Zae(),NFa=Lae(),DFa=$Te(),Qfi=bXe(),kFa=f0t(),xFa=Kvr(),jvr="Block collections are not allowed within flow collections",zvr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function GFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=n.start.source==="{",A=l?"flow map":"flow sequence",f=o?.nodeClass??(l?Yfi.YAMLMap:NFa.YAMLSeq),I=new f(r.schema);I.flow=!0;let C=r.atRoot;C&&(r.atRoot=!1);let b=n.offset+n.start.source.length;for(let Q=0;Q0){let Q=DFa.resolveEnd(B,F,r.options.strict,a);Q.comment&&(I.comment?I.comment+=` -`+Q.comment:I.comment=Q.comment),I.range=[n.offset,F,Q.offset]}else I.range=[n.offset,F,F];return I}Xfi.resolveFlowCollection=GFa});var Kfi=H(Ufi=>{"use strict";var FFa=C0(),ZFa=gT(),LFa=Zae(),VFa=Lae(),PFa=Wfi(),WFa=Mfi(),OFa=Jfi();function qvr(e,t,r,n,a,o){let l=r.type==="block-map"?PFa.resolveBlockMap(e,t,r,n,o):r.type==="block-seq"?WFa.resolveBlockSeq(e,t,r,n,o):OFa.resolveFlowCollection(e,t,r,n,o),A=l.constructor;return a==="!"||a===A.tagName?(l.tag=A.tagName,l):(a&&(l.tag=a),l)}function MFa(e,t,r,n,a){let o=n.tag,l=o?t.directives.tagName(o.source,E=>a(o,"TAG_RESOLVE_FAILED",E)):null;if(r.type==="block-seq"){let{anchor:E,newlineAfterProp:N}=n,B=E&&o?E.offset>o.offset?E:o:E??o;B&&(!N||N.offsetE.tag===l&&E.collection===A);if(!f){let E=t.schema.knownTags[l];if(E&&E.collection===A)t.schema.tags.push(Object.assign({},E,{default:!1})),f=E;else return E?.collection?a(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${A} collection, but expects ${E.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${l}`,!0),qvr(e,t,r,a,l)}let I=qvr(e,t,r,a,l,f),C=f.resolve?.(I,E=>a(o,"TAG_RESOLVE_FAILED",E),t.options)??I,b=FFa.isNode(C)?C:new ZFa.Scalar(C);return b.range=I.range,b.tag=l,f?.format&&(b.format=f.format),b}Ufi.composeCollection=MFa});var eBr=H(jfi=>{"use strict";var $vr=gT();function HFa(e,t,r){let n=t.offset,a=YFa(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[n,n,n]};let o=a.mode===">"?$vr.Scalar.BLOCK_FOLDED:$vr.Scalar.BLOCK_LITERAL,l=t.source?QFa(t.source):[],A=l.length;for(let F=l.length-1;F>=0;--F){let Q=l[F][1];if(Q===""||Q==="\r")A=F;else break}if(A===0){let F=a.chomp==="+"&&l.length>0?` +`}};bXe.YAMLError=yXe;bXe.YAMLParseError=Kvr;bXe.YAMLWarning=jvr;bXe.prettifyError=NFa});var SXe=H(Lfi=>{"use strict";function DFa(e,{flow:t,indicator:r,next:n,offset:a,onError:o,parentIndent:l,startOnNewline:A}){let f=!1,I=A,C=A,b="",E="",N=!1,B=!1,F=null,Q=null,X=null,ae=null,ne=null,ce=null,fe=null;for(let be of e)switch(B&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),B=!1),F&&(I&&be.type!=="comment"&&be.type!=="newline"&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),F=null),be.type){case"space":!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&be.source.includes(" ")&&(F=be),C=!0;break;case"comment":{C||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Se=be.source.substring(1)||" ";b?b+=E+Se:b=Se,E="",I=!1;break}case"newline":I?b?b+=be.source:f=!0:E+=be.source,I=!0,N=!0,(Q||X)&&(ae=be),C=!0;break;case"anchor":Q&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),Q=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break;case"tag":{X&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),X=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break}case r:(Q||X)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ce&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ce=be,I=r==="seq-item-ind"||r==="explicit-key-ind",C=!1;break;case"comma":if(t){ne&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ne=be,I=!1,C=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),I=!1,C=!1}let ue=e[e.length-1],de=ue?ue.offset+ue.source.length:a;return B&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!=="")&&o(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),F&&(I&&F.indent<=l||n?.type==="block-map"||n?.type==="block-seq")&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ne,found:ce,spaceBefore:f,comment:b,hasNewline:N,anchor:Q,tag:X,newlineAfterProp:ae,end:de,start:fe??de}}Lfi.resolveProps=DFa});var h0t=H(Vfi=>{"use strict";function zvr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` +`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(zvr(t.key)||zvr(t.value))return!0}return!1;default:return!0}}Vfi.containsNewline=zvr});var qvr=H(Pfi=>{"use strict";var kFa=h0t();function xFa(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];n.indent===e&&(n.source==="]"||n.source==="}")&&kFa.containsNewline(t)&&r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}Pfi.flowIndentCheck=xFa});var $vr=H(Ofi=>{"use strict";var Wfi=C0();function GFa(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let a=typeof n=="function"?n:(o,l)=>o===l||Wfi.isScalar(o)&&Wfi.isScalar(l)&&o.value===l.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}Ofi.mapIncludes=GFa});var Jfi=H(Xfi=>{"use strict";var Mfi=Fae(),FFa=Lae(),Hfi=SXe(),ZFa=h0t(),Yfi=qvr(),LFa=$vr(),Qfi="All mapping items must start at the same column";function VFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??FFa.YAMLMap,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let C of n.items){let{start:b,key:E,sep:N,value:B}=C,F=Hfi.resolveProps(b,{indicator:"explicit-key-ind",next:E??N?.[0],offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0}),Q=!F.found;if(Q){if(E&&(E.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==n.indent&&a(f,"BAD_INDENT",Qfi)),!F.anchor&&!F.tag&&!N){I=F.end,F.comment&&(A.comment?A.comment+=` +`+F.comment:A.comment=F.comment);continue}(F.newlineAfterProp||ZFa.containsNewline(E))&&a(E??b[b.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else F.found?.indent!==n.indent&&a(f,"BAD_INDENT",Qfi);let X=F.end,ae=E?e(r,E,F,a):t(r,X,b,null,F,a);r.schema.compat&&Yfi.flowIndentCheck(n.indent,E,a),LFa.mapIncludes(r,A.items,ae)&&a(X,"DUPLICATE_KEY","Map keys must be unique");let ne=Hfi.resolveProps(N??[],{indicator:"map-value-ind",next:B,offset:ae.range[2],onError:a,parentIndent:n.indent,startOnNewline:!E||E.type==="block-scalar"});if(f=ne.end,ne.found){Q&&(B?.type==="block-map"&&!ne.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&F.start{"use strict";var PFa=Vae(),WFa=SXe(),OFa=qvr();function MFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??PFa.YAMLSeq,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let{start:C,value:b}of n.items){let E=WFa.resolveProps(C,{indicator:"seq-item-ind",next:b,offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0});if(!E.found)if(E.anchor||E.tag||b)b&&b.type==="block-seq"?a(E.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{I=E.end,E.comment&&(A.comment=E.comment);continue}let N=b?e(r,b,E,a):t(r,E.end,C,null,E,a);r.schema.compat&&OFa.flowIndentCheck(n.indent,b,a),f=N.range[2],A.items.push(N)}return A.range=[n.offset,f,I??f],A}Ufi.resolveBlockSeq=MFa});var eRe=H(jfi=>{"use strict";function HFa(e,t,r,n){let a="";if(e){let o=!1,l="";for(let A of e){let{source:f,type:I}=A;switch(I){case"space":o=!0;break;case"comment":{r&&!o&&n(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let C=f.substring(1)||" ";a?a+=l+C:a=C,l="";break}case"newline":a&&(l+=f),o=!0;break;default:n(A,"UNEXPECTED_TOKEN",`Unexpected ${I} at node end`)}t+=f.length}}return{comment:a,offset:t}}jfi.resolveEnd=HFa});var eIi=H($fi=>{"use strict";var YFa=C0(),QFa=Fae(),zfi=Lae(),XFa=Vae(),JFa=eRe(),qfi=SXe(),UFa=h0t(),KFa=$vr(),eBr="Block collections are not allowed within flow collections",tBr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function jFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=n.start.source==="{",A=l?"flow map":"flow sequence",f=o?.nodeClass??(l?zfi.YAMLMap:XFa.YAMLSeq),I=new f(r.schema);I.flow=!0;let C=r.atRoot;C&&(r.atRoot=!1);let b=n.offset+n.start.source.length;for(let Q=0;Q0){let Q=JFa.resolveEnd(B,F,r.options.strict,a);Q.comment&&(I.comment?I.comment+=` +`+Q.comment:I.comment=Q.comment),I.range=[n.offset,F,Q.offset]}else I.range=[n.offset,F,F];return I}$fi.resolveFlowCollection=jFa});var rIi=H(tIi=>{"use strict";var zFa=C0(),qFa=gT(),$Fa=Lae(),eZa=Vae(),tZa=Jfi(),rZa=Kfi(),nZa=eIi();function rBr(e,t,r,n,a,o){let l=r.type==="block-map"?tZa.resolveBlockMap(e,t,r,n,o):r.type==="block-seq"?rZa.resolveBlockSeq(e,t,r,n,o):nZa.resolveFlowCollection(e,t,r,n,o),A=l.constructor;return a==="!"||a===A.tagName?(l.tag=A.tagName,l):(a&&(l.tag=a),l)}function iZa(e,t,r,n,a){let o=n.tag,l=o?t.directives.tagName(o.source,E=>a(o,"TAG_RESOLVE_FAILED",E)):null;if(r.type==="block-seq"){let{anchor:E,newlineAfterProp:N}=n,B=E&&o?E.offset>o.offset?E:o:E??o;B&&(!N||N.offsetE.tag===l&&E.collection===A);if(!f){let E=t.schema.knownTags[l];if(E&&E.collection===A)t.schema.tags.push(Object.assign({},E,{default:!1})),f=E;else return E?.collection?a(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${A} collection, but expects ${E.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${l}`,!0),rBr(e,t,r,a,l)}let I=rBr(e,t,r,a,l,f),C=f.resolve?.(I,E=>a(o,"TAG_RESOLVE_FAILED",E),t.options)??I,b=zFa.isNode(C)?C:new qFa.Scalar(C);return b.range=I.range,b.tag=l,f?.format&&(b.format=f.format),b}tIi.composeCollection=iZa});var iBr=H(nIi=>{"use strict";var nBr=gT();function sZa(e,t,r){let n=t.offset,a=oZa(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[n,n,n]};let o=a.mode===">"?nBr.Scalar.BLOCK_FOLDED:nBr.Scalar.BLOCK_LITERAL,l=t.source?aZa(t.source):[],A=l.length;for(let F=l.length-1;F>=0;--F){let Q=l[F][1];if(Q===""||Q==="\r")A=F;else break}if(A===0){let F=a.chomp==="+"&&l.length>0?` `.repeat(Math.max(1,l.length-1)):"",Q=n+a.length;return t.source&&(Q+=t.source.length),{value:F,type:o,comment:a.comment,range:[n,Q,Q]}}let f=t.indent+a.indent,I=t.offset+a.length,C=0;for(let F=0;Ff&&(f=Q.length);else{Q.length=A;--F)l[F][0].length>f&&(A=F+1);let b="",E="",N=!1;for(let F=0;Ff||X[0]===" "?(E===" "?E=` `:!N&&E===` `&&(E=` @@ -557,98 +557,98 @@ ${I} `+l[F][0].slice(f);b[b.length-1]!==` `&&(b+=` `);break;default:b+=` -`}let B=n+a.length+t.source.length;return{value:b,type:o,comment:a.comment,range:[n,B,B]}}function YFa({offset:e,props:t},r,n){if(t[0].type!=="block-scalar-header")return n(t[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:a}=t[0],o=a[0],l=0,A="",f=-1;for(let E=1;E{"use strict";var tBr=gT(),XFa=$Te();function JFa(e,t,r){let{offset:n,type:a,source:o,end:l}=e,A,f,I=(E,N,B)=>r(n+E,N,B);switch(a){case"scalar":A=tBr.Scalar.PLAIN,f=UFa(o,I);break;case"single-quoted-scalar":A=tBr.Scalar.QUOTE_SINGLE,f=KFa(o,I);break;case"double-quoted-scalar":A=tBr.Scalar.QUOTE_DOUBLE,f=jFa(o,I);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[n,n+o.length,n+o.length]}}let C=n+o.length,b=XFa.resolveEnd(l,C,t,r);return{value:f,type:A,comment:b.comment,range:[n,C,b.offset]}}function UFa(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),zfi(e)}function KFa(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),zfi(e.slice(1,-1)).replace(/''/g,"'")}function zfi(e){let t,r;try{t=new RegExp(`(.*?)(?{"use strict";var sBr=gT(),cZa=eRe();function lZa(e,t,r){let{offset:n,type:a,source:o,end:l}=e,A,f,I=(E,N,B)=>r(n+E,N,B);switch(a){case"scalar":A=sBr.Scalar.PLAIN,f=uZa(o,I);break;case"single-quoted-scalar":A=sBr.Scalar.QUOTE_SINGLE,f=gZa(o,I);break;case"double-quoted-scalar":A=sBr.Scalar.QUOTE_DOUBLE,f=AZa(o,I);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[n,n+o.length,n+o.length]}}let C=n+o.length,b=cZa.resolveEnd(l,C,t,r);return{value:f,type:A,comment:b.comment,range:[n,C,b.offset]}}function uZa(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),iIi(e)}function gZa(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),iIi(e.slice(1,-1)).replace(/''/g,"'")}function iIi(e){let t,r;try{t=new RegExp(`(.*?)(?o?e.slice(o,n+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function zFa(e,t){let r="",n=e[t+1];for(;(n===" "||n===" "||n===` +`)&&(r+=n>o?e.slice(o,n+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function dZa(e,t){let r="",n=e[t+1];for(;(n===" "||n===" "||n===` `||n==="\r")&&!(n==="\r"&&e[t+2]!==` `);)n===` `&&(r+=` -`),t+=1,n=e[t+1];return r||(r=" "),{fold:r,offset:t}}var qFa={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` -`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function $Fa(e,t,r,n){let a=e.substr(t,r),l=a.length===r&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;if(isNaN(l)){let A=e.substr(t-2,r+2);return n(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${A}`),A}return String.fromCodePoint(l)}qfi.resolveFlowScalar=JFa});var tIi=H(eIi=>{"use strict";var eRe=C0(),$fi=gT(),eZa=eBr(),tZa=rBr();function rZa(e,t,r,n){let{value:a,type:o,comment:l,range:A}=t.type==="block-scalar"?eZa.resolveBlockScalar(e,t,n):tZa.resolveFlowScalar(t,e.options.strict,n),f=r?e.directives.tagName(r.source,b=>n(r,"TAG_RESOLVE_FAILED",b)):null,I=r&&f?nZa(e.schema,a,f,r,n):t.type==="scalar"?iZa(e,a,t,n):e.schema[eRe.SCALAR],C;try{let b=I.resolve(a,E=>n(r??t,"TAG_RESOLVE_FAILED",E),e.options);C=eRe.isScalar(b)?b:new $fi.Scalar(b)}catch(b){let E=b instanceof Error?b.message:String(b);n(r??t,"TAG_RESOLVE_FAILED",E),C=new $fi.Scalar(a)}return C.range=A,C.source=a,o&&(C.type=o),f&&(C.tag=f),I.format&&(C.format=I.format),l&&(C.comment=l),C}function nZa(e,t,r,n,a){if(r==="!")return e[eRe.SCALAR];let o=[];for(let A of e.tags)if(!A.collection&&A.tag===r)if(A.default&&A.test)o.push(A);else return A;for(let A of o)if(A.test?.test(t))return A;let l=e.knownTags[r];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(a(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[eRe.SCALAR])}function iZa({directives:e,schema:t},r,n,a){let o=t.tags.find(l=>l.default&&l.test?.test(r))||t[eRe.SCALAR];if(t.compat){let l=t.compat.find(A=>A.default&&A.test?.test(r))??t[eRe.SCALAR];if(o.tag!==l.tag){let A=e.tagString(o.tag),f=e.tagString(l.tag),I=`Value may be parsed as either ${A} or ${f}`;a(n,"TAG_RESOLVE_FAILED",I,!0)}}return o}eIi.composeScalar=rZa});var nIi=H(rIi=>{"use strict";function sZa(e,t,r){if(t){r===null&&(r=t.length);for(let n=r-1;n>=0;--n){let a=t[n];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++n];a?.type==="space";)e+=a.source.length,a=t[++n];break}}return e}rIi.emptyScalarPosition=sZa});var oIi=H(iBr=>{"use strict";var oZa=iXe(),aZa=Kfi(),iIi=tIi(),cZa=$Te(),lZa=nIi(),uZa={composeNode:sIi,composeEmptyNode:nBr};function sIi(e,t,r,n){let{spaceBefore:a,comment:o,anchor:l,tag:A}=r,f,I=!0;switch(t.type){case"alias":f=gZa(e,t,n),(l||A)&&n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=iIi.composeScalar(e,t,A,n),l&&(f.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=aZa.composeCollection(uZa,e,t,r,n),l&&(f.anchor=l.source.substring(1));break;default:{let C=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",C),f=nBr(e,t.offset,void 0,null,r,n),I=!1}}return l&&f.anchor===""&&n(l,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&I&&(f.srcToken=t),f}function nBr(e,t,r,n,{spaceBefore:a,comment:o,anchor:l,tag:A,end:f},I){let C={type:"scalar",offset:lZa.emptyScalarPosition(t,r,n),indent:-1,source:""},b=iIi.composeScalar(e,C,A,I);return l&&(b.anchor=l.source.substring(1),b.anchor===""&&I(l,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(b.spaceBefore=!0),o&&(b.comment=o,b.range[2]=f),b}function gZa({options:e},{offset:t,source:r,end:n},a){let o=new oZa.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let l=t+r.length,A=cZa.resolveEnd(n,l,e.strict,a);return o.range=[t,l,A.offset],A.comment&&(o.comment=A.comment),o}iBr.composeEmptyNode=nBr;iBr.composeNode=sIi});var lIi=H(cIi=>{"use strict";var AZa=mXe(),aIi=oIi(),dZa=$Te(),pZa=bXe();function fZa(e,t,{offset:r,start:n,value:a,end:o},l){let A=Object.assign({_directives:t},e),f=new AZa.Document(void 0,A),I={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},C=pZa.resolveProps(n,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:l,parentIndent:0,startOnNewline:!0});C.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!C.hasNewline&&l(C.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?aIi.composeNode(I,a,C,l):aIi.composeEmptyNode(I,C.end,n,null,C,l);let b=f.contents.range[2],E=dZa.resolveEnd(o,b,!1,l);return E.comment&&(f.comment=E.comment),f.range=[r,b,E.offset],f}cIi.composeDoc=fZa});var oBr=H(AIi=>{"use strict";var IZa=QSr(),hZa=mXe(),EXe=yXe(),uIi=C0(),mZa=lIi(),CZa=$Te();function SXe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function gIi(e){let t="",r=!1,n=!1;for(let a=0;a{"use strict";var tRe=C0(),oIi=gT(),IZa=iBr(),hZa=oBr();function mZa(e,t,r,n){let{value:a,type:o,comment:l,range:A}=t.type==="block-scalar"?IZa.resolveBlockScalar(e,t,n):hZa.resolveFlowScalar(t,e.options.strict,n),f=r?e.directives.tagName(r.source,b=>n(r,"TAG_RESOLVE_FAILED",b)):null,I=r&&f?CZa(e.schema,a,f,r,n):t.type==="scalar"?_Za(e,a,t,n):e.schema[tRe.SCALAR],C;try{let b=I.resolve(a,E=>n(r??t,"TAG_RESOLVE_FAILED",E),e.options);C=tRe.isScalar(b)?b:new oIi.Scalar(b)}catch(b){let E=b instanceof Error?b.message:String(b);n(r??t,"TAG_RESOLVE_FAILED",E),C=new oIi.Scalar(a)}return C.range=A,C.source=a,o&&(C.type=o),f&&(C.tag=f),I.format&&(C.format=I.format),l&&(C.comment=l),C}function CZa(e,t,r,n,a){if(r==="!")return e[tRe.SCALAR];let o=[];for(let A of e.tags)if(!A.collection&&A.tag===r)if(A.default&&A.test)o.push(A);else return A;for(let A of o)if(A.test?.test(t))return A;let l=e.knownTags[r];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(a(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[tRe.SCALAR])}function _Za({directives:e,schema:t},r,n,a){let o=t.tags.find(l=>l.default&&l.test?.test(r))||t[tRe.SCALAR];if(t.compat){let l=t.compat.find(A=>A.default&&A.test?.test(r))??t[tRe.SCALAR];if(o.tag!==l.tag){let A=e.tagString(o.tag),f=e.tagString(l.tag),I=`Value may be parsed as either ${A} or ${f}`;a(n,"TAG_RESOLVE_FAILED",I,!0)}}return o}aIi.composeScalar=mZa});var uIi=H(lIi=>{"use strict";function yZa(e,t,r){if(t){r===null&&(r=t.length);for(let n=r-1;n>=0;--n){let a=t[n];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++n];a?.type==="space";)e+=a.source.length,a=t[++n];break}}return e}lIi.emptyScalarPosition=yZa});var dIi=H(cBr=>{"use strict";var bZa=oXe(),EZa=rIi(),gIi=cIi(),SZa=eRe(),vZa=uIi(),BZa={composeNode:AIi,composeEmptyNode:aBr};function AIi(e,t,r,n){let{spaceBefore:a,comment:o,anchor:l,tag:A}=r,f,I=!0;switch(t.type){case"alias":f=wZa(e,t,n),(l||A)&&n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=gIi.composeScalar(e,t,A,n),l&&(f.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=EZa.composeCollection(BZa,e,t,r,n),l&&(f.anchor=l.source.substring(1));break;default:{let C=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",C),f=aBr(e,t.offset,void 0,null,r,n),I=!1}}return l&&f.anchor===""&&n(l,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&I&&(f.srcToken=t),f}function aBr(e,t,r,n,{spaceBefore:a,comment:o,anchor:l,tag:A,end:f},I){let C={type:"scalar",offset:vZa.emptyScalarPosition(t,r,n),indent:-1,source:""},b=gIi.composeScalar(e,C,A,I);return l&&(b.anchor=l.source.substring(1),b.anchor===""&&I(l,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(b.spaceBefore=!0),o&&(b.comment=o,b.range[2]=f),b}function wZa({options:e},{offset:t,source:r,end:n},a){let o=new bZa.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let l=t+r.length,A=SZa.resolveEnd(n,l,e.strict,a);return o.range=[t,l,A.offset],A.comment&&(o.comment=A.comment),o}cBr.composeEmptyNode=aBr;cBr.composeNode=AIi});var IIi=H(fIi=>{"use strict";var TZa=_Xe(),pIi=dIi(),RZa=eRe(),NZa=SXe();function DZa(e,t,{offset:r,start:n,value:a,end:o},l){let A=Object.assign({_directives:t},e),f=new TZa.Document(void 0,A),I={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},C=NZa.resolveProps(n,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:l,parentIndent:0,startOnNewline:!0});C.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!C.hasNewline&&l(C.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?pIi.composeNode(I,a,C,l):pIi.composeEmptyNode(I,C.end,n,null,C,l);let b=f.contents.range[2],E=RZa.resolveEnd(o,b,!1,l);return E.comment&&(f.comment=E.comment),f.range=[r,b,E.offset],f}fIi.composeDoc=DZa});var uBr=H(CIi=>{"use strict";var kZa=KSr(),xZa=_Xe(),vXe=EXe(),hIi=C0(),GZa=IIi(),FZa=eRe();function BXe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function mIi(e){let t="",r=!1,n=!1;for(let a=0;a{let l=SXe(r);o?this.warnings.push(new EXe.YAMLWarning(l,n,a)):this.errors.push(new EXe.YAMLParseError(l,n,a))},this.directives=new IZa.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:n,afterEmptyLine:a}=gIi(this.prelude);if(n){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} -${n}`:n;else if(a||t.directives.docStart||!o)t.commentBefore=n;else if(uIi.isCollection(o)&&!o.flow&&o.items.length>0){let l=o.items[0];uIi.isPair(l)&&(l=l.key);let A=l.commentBefore;l.commentBefore=A?`${n} +`)+(o.substring(1)||" "),r=!0,n=!1;break;case"%":e[a+1]?.[0]!=="#"&&(a+=1),r=!1;break;default:r||(n=!0),r=!1}}return{comment:t,afterEmptyLine:n}}var lBr=class{constructor(t={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(r,n,a,o)=>{let l=BXe(r);o?this.warnings.push(new vXe.YAMLWarning(l,n,a)):this.errors.push(new vXe.YAMLParseError(l,n,a))},this.directives=new kZa.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:n,afterEmptyLine:a}=mIi(this.prelude);if(n){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} +${n}`:n;else if(a||t.directives.docStart||!o)t.commentBefore=n;else if(hIi.isCollection(o)&&!o.flow&&o.items.length>0){let l=o.items[0];hIi.isPair(l)&&(l=l.key);let A=l.commentBefore;l.commentBefore=A?`${n} ${A}`:n}else{let l=o.commentBefore;o.commentBefore=l?`${n} -${l}`:n}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:gIi(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,n=-1){for(let a of t)yield*this.next(a);yield*this.end(r,n)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,n,a)=>{let o=SXe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",n,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=mZa.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,n=new EXe.YAMLParseError(SXe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case"doc-end":{if(!this.doc){let n="Unexpected doc-end without preceding document";this.errors.push(new EXe.YAMLParseError(SXe(t),"UNEXPECTED_TOKEN",n));break}this.doc.directives.docEnd=!0;let r=CZa.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let n=this.doc.comment;this.doc.comment=n?`${n} -${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new EXe.YAMLParseError(SXe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let n=Object.assign({_directives:this.directives},this.options),a=new hZa.Document(void 0,n);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};AIi.Composer=sBr});var fIi=H(I0t=>{"use strict";var _Za=eBr(),yZa=rBr(),bZa=yXe(),dIi=lXe();function EZa(e,t=!0,r){if(e){let n=(a,o,l)=>{let A=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(A,o,l);else throw new bZa.YAMLParseError([A,A+1],o,l)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yZa.resolveFlowScalar(e,t,n);case"block-scalar":return _Za.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function SZa(e,t){let{implicitKey:r=!1,indent:n,inFlow:a=!1,offset:o=-1,type:l="PLAIN"}=t,A=dIi.stringifyString({type:l,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:n,source:` +${l}`:n}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:mIi(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,n=-1){for(let a of t)yield*this.next(a);yield*this.end(r,n)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,n,a)=>{let o=BXe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",n,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=GZa.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,n=new vXe.YAMLParseError(BXe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case"doc-end":{if(!this.doc){let n="Unexpected doc-end without preceding document";this.errors.push(new vXe.YAMLParseError(BXe(t),"UNEXPECTED_TOKEN",n));break}this.doc.directives.docEnd=!0;let r=FZa.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let n=this.doc.comment;this.doc.comment=n?`${n} +${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new vXe.YAMLParseError(BXe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let n=Object.assign({_directives:this.directives},this.options),a=new xZa.Document(void 0,n);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};CIi.Composer=lBr});var bIi=H(m0t=>{"use strict";var ZZa=iBr(),LZa=oBr(),VZa=EXe(),_Ii=gXe();function PZa(e,t=!0,r){if(e){let n=(a,o,l)=>{let A=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(A,o,l);else throw new VZa.YAMLParseError([A,A+1],o,l)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return LZa.resolveFlowScalar(e,t,n);case"block-scalar":return ZZa.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function WZa(e,t){let{implicitKey:r=!1,indent:n,inFlow:a=!1,offset:o=-1,type:l="PLAIN"}=t,A=_Ii.stringifyString({type:l,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:n,source:` `}];switch(A[0]){case"|":case">":{let I=A.indexOf(` `),C=A.substring(0,I),b=A.substring(I+1)+` -`,E=[{type:"block-scalar-header",offset:o,indent:n,source:C}];return pIi(E,f)||E.push({type:"newline",offset:-1,indent:n,source:` -`}),{type:"block-scalar",offset:o,indent:n,props:E,source:b}}case'"':return{type:"double-quoted-scalar",offset:o,indent:n,source:A,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:n,source:A,end:f};default:return{type:"scalar",offset:o,indent:n,source:A,end:f}}}function vZa(e,t,r={}){let{afterKey:n=!1,implicitKey:a=!1,inFlow:o=!1,type:l}=r,A="indent"in e?e.indent:null;if(n&&typeof A=="number"&&(A+=2),!l)switch(e.type){case"single-quoted-scalar":l="QUOTE_SINGLE";break;case"double-quoted-scalar":l="QUOTE_DOUBLE";break;case"block-scalar":{let I=e.props[0];if(I.type!=="block-scalar-header")throw new Error("Invalid block scalar header");l=I.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:l="PLAIN"}let f=dIi.stringifyString({type:l,value:t},{implicitKey:a||A===null,indent:A!==null&&A>0?" ".repeat(A):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":BZa(e,f);break;case'"':aBr(e,f,"double-quoted-scalar");break;case"'":aBr(e,f,"single-quoted-scalar");break;default:aBr(e,f,"scalar")}}function BZa(e,t){let r=t.indexOf(` +`,E=[{type:"block-scalar-header",offset:o,indent:n,source:C}];return yIi(E,f)||E.push({type:"newline",offset:-1,indent:n,source:` +`}),{type:"block-scalar",offset:o,indent:n,props:E,source:b}}case'"':return{type:"double-quoted-scalar",offset:o,indent:n,source:A,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:n,source:A,end:f};default:return{type:"scalar",offset:o,indent:n,source:A,end:f}}}function OZa(e,t,r={}){let{afterKey:n=!1,implicitKey:a=!1,inFlow:o=!1,type:l}=r,A="indent"in e?e.indent:null;if(n&&typeof A=="number"&&(A+=2),!l)switch(e.type){case"single-quoted-scalar":l="QUOTE_SINGLE";break;case"double-quoted-scalar":l="QUOTE_DOUBLE";break;case"block-scalar":{let I=e.props[0];if(I.type!=="block-scalar-header")throw new Error("Invalid block scalar header");l=I.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:l="PLAIN"}let f=_Ii.stringifyString({type:l,value:t},{implicitKey:a||A===null,indent:A!==null&&A>0?" ".repeat(A):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":MZa(e,f);break;case'"':gBr(e,f,"double-quoted-scalar");break;case"'":gBr(e,f,"single-quoted-scalar");break;default:gBr(e,f,"scalar")}}function MZa(e,t){let r=t.indexOf(` `),n=t.substring(0,r),a=t.substring(r+1)+` -`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=n,e.source=a}else{let{offset:o}=e,l="indent"in e?e.indent:-1,A=[{type:"block-scalar-header",offset:o,indent:l,source:n}];pIi(A,"end"in e?e.end:void 0)||A.push({type:"newline",offset:-1,indent:l,source:` -`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:l,props:A,source:a})}}function pIi(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function aBr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let n=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of n)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:n});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` -`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let n="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:n,source:t,end:a})}}}I0t.createScalarToken=SZa;I0t.resolveAsScalar=EZa;I0t.setScalarValue=vZa});var hIi=H(IIi=>{"use strict";var wZa=e=>"type"in e?m0t(e):h0t(e);function m0t(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=m0t(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=h0t(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=h0t(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=h0t(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function h0t({start:e,key:t,sep:r,value:n}){let a="";for(let o of e)a+=o.source;if(t&&(a+=m0t(t)),r)for(let o of r)a+=o.source;return n&&(a+=m0t(n)),a}IIi.stringify=wZa});var yIi=H(_Ii=>{"use strict";var cBr=Symbol("break visit"),TZa=Symbol("skip children"),mIi=Symbol("remove item");function Yhe(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),CIi(Object.freeze([]),e,t)}Yhe.BREAK=cBr;Yhe.SKIP=TZa;Yhe.REMOVE=mIi;Yhe.itemAtPath=(e,t)=>{let r=e;for(let[n,a]of t){let o=r?.[n];if(o&&"items"in o)r=o.items[a];else return}return r};Yhe.parentCollection=(e,t)=>{let r=Yhe.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],a=r?.[n];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function CIi(e,t,r){let n=r(t,e);if(typeof n=="symbol")return n;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let l=0;l{"use strict";var lBr=fIi(),RZa=hIi(),NZa=yIi(),uBr="\uFEFF",gBr="",ABr="",dBr="",DZa=e=>!!e&&"items"in e,kZa=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function xZa(e){switch(e){case uBr:return"";case gBr:return"";case ABr:return"";case dBr:return"";default:return JSON.stringify(e)}}function GZa(e){switch(e){case uBr:return"byte-order-mark";case gBr:return"doc-mode";case ABr:return"flow-error-end";case dBr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` +`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=n,e.source=a}else{let{offset:o}=e,l="indent"in e?e.indent:-1,A=[{type:"block-scalar-header",offset:o,indent:l,source:n}];yIi(A,"end"in e?e.end:void 0)||A.push({type:"newline",offset:-1,indent:l,source:` +`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:l,props:A,source:a})}}function yIi(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function gBr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let n=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of n)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:n});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` +`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let n="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:n,source:t,end:a})}}}m0t.createScalarToken=WZa;m0t.resolveAsScalar=PZa;m0t.setScalarValue=OZa});var SIi=H(EIi=>{"use strict";var HZa=e=>"type"in e?_0t(e):C0t(e);function _0t(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=_0t(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=C0t(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=C0t(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=C0t(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function C0t({start:e,key:t,sep:r,value:n}){let a="";for(let o of e)a+=o.source;if(t&&(a+=_0t(t)),r)for(let o of r)a+=o.source;return n&&(a+=_0t(n)),a}EIi.stringify=HZa});var TIi=H(wIi=>{"use strict";var ABr=Symbol("break visit"),YZa=Symbol("skip children"),vIi=Symbol("remove item");function Qhe(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),BIi(Object.freeze([]),e,t)}Qhe.BREAK=ABr;Qhe.SKIP=YZa;Qhe.REMOVE=vIi;Qhe.itemAtPath=(e,t)=>{let r=e;for(let[n,a]of t){let o=r?.[n];if(o&&"items"in o)r=o.items[a];else return}return r};Qhe.parentCollection=(e,t)=>{let r=Qhe.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],a=r?.[n];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function BIi(e,t,r){let n=r(t,e);if(typeof n=="symbol")return n;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let l=0;l{"use strict";var dBr=bIi(),QZa=SIi(),XZa=TIi(),pBr="\uFEFF",fBr="",IBr="",hBr="",JZa=e=>!!e&&"items"in e,UZa=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function KZa(e){switch(e){case pBr:return"";case fBr:return"";case IBr:return"";case hBr:return"";default:return JSON.stringify(e)}}function jZa(e){switch(e){case pBr:return"byte-order-mark";case fBr:return"doc-mode";case IBr:return"flow-error-end";case hBr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` `:case`\r -`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}lV.createScalarToken=lBr.createScalarToken;lV.resolveAsScalar=lBr.resolveAsScalar;lV.setScalarValue=lBr.setScalarValue;lV.stringify=RZa.stringify;lV.visit=NZa.visit;lV.BOM=uBr;lV.DOCUMENT=gBr;lV.FLOW_END=ABr;lV.SCALAR=dBr;lV.isCollection=DZa;lV.isScalar=kZa;lV.prettyToken=xZa;lV.tokenType=GZa});var IBr=H(EIi=>{"use strict";var vXe=C0t();function XX(e){switch(e){case void 0:case" ":case` -`:case"\r":case" ":return!0;default:return!1}}var bIi=new Set("0123456789ABCDEFabcdef"),FZa=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),_0t=new Set(",[]{}"),ZZa=new Set(` ,[]{} -\r `),pBr=e=>!e||ZZa.has(e),fBr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let n=this.next??"stream";for(;n&&(r||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` +`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}lV.createScalarToken=dBr.createScalarToken;lV.resolveAsScalar=dBr.resolveAsScalar;lV.setScalarValue=dBr.setScalarValue;lV.stringify=QZa.stringify;lV.visit=XZa.visit;lV.BOM=pBr;lV.DOCUMENT=fBr;lV.FLOW_END=IBr;lV.SCALAR=hBr;lV.isCollection=JZa;lV.isScalar=UZa;lV.prettyToken=KZa;lV.tokenType=jZa});var _Br=H(NIi=>{"use strict";var wXe=y0t();function XX(e){switch(e){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}var RIi=new Set("0123456789ABCDEFabcdef"),zZa=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),b0t=new Set(",[]{}"),qZa=new Set(` ,[]{} +\r `),mBr=e=>!e||qZa.has(e),CBr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let n=this.next??"stream";for(;n&&(r||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` `?!0:r==="\r"?this.buffer[t+1]===` `:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let r=this.buffer[t];if(this.indentNext>0){let n=0;for(;r===" ";)r=this.buffer[++n+t];if(r==="\r"){let a=this.buffer[n+t+1];if(a===` `||!a&&!this.atEnd)return t+n+1}return r===` `||n>=this.indentNext||!r&&!this.atEnd?t+n:-1}if(r==="-"||r==="."){let n=this.buffer.substr(t,3);if((n==="---"||n==="...")&&XX(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!XX(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&XX(r)){let n=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=n,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(pBr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,n=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=n=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((n!==-1&&nthis.indentValue&&!XX(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&XX(r)){let n=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=n,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(mBr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,n=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=n=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((n!==-1&&n"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>XX(r)||r==="#")}*parseBlockScalar(){let t=this.pos-1,r=0,n;e:for(let o=this.pos;n=this.buffer[o];++o)switch(n){case" ":r+=1;break;case` `:t=o,r=0;break;case"\r":{let l=this.buffer[o+1];if(!l&&!this.atEnd)return this.setNext("block-scalar");if(l===` `)break}default:break e}if(!n&&!this.atEnd)return this.setNext("block-scalar");if(r>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=r:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(t+1);if(o===-1)break;t=this.buffer.indexOf(` `,o)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let a=t+1;for(n=this.buffer[a];n===" ";)n=this.buffer[++a];if(n===" "){for(;n===" "||n===" "||n==="\r"||n===` `;)n=this.buffer[++a];t=a-1}else if(!this.blockScalarKeep)do{let o=t-1,l=this.buffer[o];l==="\r"&&(l=this.buffer[--o]);let A=o;for(;l===" ";)l=this.buffer[--o];if(l===` -`&&o>=this.pos&&o+1+r>A)t=o;else break}while(!0);return yield vXe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,n=this.pos-1,a;for(;a=this.buffer[++n];)if(a===":"){let o=this.buffer[n+1];if(XX(o)||t&&_0t.has(o))break;r=n}else if(XX(a)){let o=this.buffer[n+1];if(a==="\r"&&(o===` +`&&o>=this.pos&&o+1+r>A)t=o;else break}while(!0);return yield wXe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,n=this.pos-1,a;for(;a=this.buffer[++n];)if(a===":"){let o=this.buffer[n+1];if(XX(o)||t&&b0t.has(o))break;r=n}else if(XX(a)){let o=this.buffer[n+1];if(a==="\r"&&(o===` `?(n+=1,a=` -`,o=this.buffer[n+1]):r=n),o==="#"||t&&_0t.has(o))break;if(a===` -`){let l=this.continueScalar(n+1);if(l===-1)break;n=Math.max(n,l-2)}}else{if(t&&_0t.has(a))break;r=n}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield vXe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let n=this.buffer.slice(this.pos,t);return n?(yield n,this.pos+=n.length,n.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(pBr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(XX(r)||t&&_0t.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!XX(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(FZa.has(r))r=this.buffer[++t];else if(r==="%"&&bIi.has(this.buffer[t+1])&&bIi.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` +`,o=this.buffer[n+1]):r=n),o==="#"||t&&b0t.has(o))break;if(a===` +`){let l=this.continueScalar(n+1);if(l===-1)break;n=Math.max(n,l-2)}}else{if(t&&b0t.has(a))break;r=n}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield wXe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let n=this.buffer.slice(this.pos,t);return n?(yield n,this.pos+=n.length,n.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(mBr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(XX(r)||t&&b0t.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!XX(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(zZa.has(r))r=this.buffer[++t];else if(r==="%"&&RIi.has(this.buffer[t+1])&&RIi.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` `?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===` -`?yield*this.pushCount(2):0}*pushSpaces(t){let r=this.pos-1,n;do n=this.buffer[++r];while(n===" "||t&&n===" ");let a=r-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,n=this.buffer[r];for(;!t(n);)n=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};EIi.Lexer=fBr});var mBr=H(SIi=>{"use strict";var hBr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,n=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var vIi=C0t(),LZa=IBr();function Qhe(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function wIi(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!Qhe(t.start,"explicit-key-ind")&&!Qhe(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,TIi(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var CBr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new LZa.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let n of this.lexer.lex(t,r))yield*this.next(n);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",vIi.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=vIi.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let n=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:n,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let n=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in n?n.indent:0:r.type==="flow-collection"&&n.type==="document"&&(r.indent=0),r.type==="flow-collection"&&wIi(r),n.type){case"document":n.value=r;break;case"block-scalar":n.props.push(r);break;case"block-map":{let a=n.items[n.items.length-1];if(a.value){n.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=n.items[n.items.length-1];a.value?n.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=n.items[n.items.length-1];!a||a.value?n.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((n.type==="document"||n.type==="block-map"||n.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&BIi(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,n=this.buffer[r];for(;!t(n);)n=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};NIi.Lexer=CBr});var bBr=H(DIi=>{"use strict";var yBr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,n=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var kIi=y0t(),$Za=_Br();function Xhe(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function GIi(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!Xhe(t.start,"explicit-key-ind")&&!Xhe(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,FIi(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var EBr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new $Za.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let n of this.lexer.lex(t,r))yield*this.next(n);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",kIi.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=kIi.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let n=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:n,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let n=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in n?n.indent:0:r.type==="flow-collection"&&n.type==="document"&&(r.indent=0),r.type==="flow-collection"&&GIi(r),n.type){case"document":n.value=r;break;case"block-scalar":n.props.push(r);break;case"block-map":{let a=n.items[n.items.length-1];if(a.value){n.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=n.items[n.items.length-1];a.value?n.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=n.items[n.items.length-1];!a||a.value?n.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((n.type==="document"||n.type==="block-map"||n.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&xIi(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent=t.indent){let n=!this.onKeyLine&&this.indent===t.indent,a=n&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let l=[];for(let A=0;At.indent&&(l.length=0);break;default:l.length=0}}l.length>=2&&(o=r.sep.splice(l[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Qhe(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(TIi(r.key)&&!Qhe(r.sep,"newline")){let l=tRe(r.start),A=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:A,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(Qhe(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let l=tRe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):Qhe(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let l=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:l,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(l):(Object.assign(r,{key:l,sep:[]}),this.onKeyLine=!0);return}default:{let l=this.startBlockValue(t);if(l){n&&l.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(l);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||Qhe(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let n=this.startBlockValue(t);if(n){this.stack.push(n);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let n;do yield*this.pop(),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let n=this.startBlockValue(t);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===t.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){let a=y0t(n),o=tRe(a);wIi(t);let l=t.end.splice(1,t.end.length);l.push(this.sourceToken);let A={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=A}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` +`,r)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else if(r.sep)r.sep.push(this.sourceToken);else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return}if(this.indent>=t.indent){let n=!this.onKeyLine&&this.indent===t.indent,a=n&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let l=[];for(let A=0;At.indent&&(l.length=0);break;default:l.length=0}}l.length>=2&&(o=r.sep.splice(l[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Xhe(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(FIi(r.key)&&!Xhe(r.sep,"newline")){let l=rRe(r.start),A=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:A,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(Xhe(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let l=rRe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):Xhe(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let l=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:l,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(l):(Object.assign(r,{key:l,sep:[]}),this.onKeyLine=!0);return}default:{let l=this.startBlockValue(t);if(l){n&&l.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(l);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||Xhe(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let n=this.startBlockValue(t);if(n){this.stack.push(n);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let n;do yield*this.pop(),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let n=this.startBlockValue(t);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===t.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){let a=E0t(n),o=rRe(a);GIi(t);let l=t.end.splice(1,t.end.length);l.push(this.sourceToken);let A={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=A}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` `)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(` -`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=y0t(t),n=tRe(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=y0t(t),n=tRe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};RIi.Parser=CBr});var GIi=H(wXe=>{"use strict";var NIi=oBr(),VZa=mXe(),BXe=yXe(),PZa=ivr(),WZa=mBr(),DIi=_Br();function kIi(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new WZa.LineCounter||null,prettyErrors:t}}function OZa(e,t={}){let{lineCounter:r,prettyErrors:n}=kIi(t),a=new DIi.Parser(r?.addNewLine),o=new NIi.Composer(t),l=Array.from(o.compose(a.parse(e)));if(n&&r)for(let A of l)A.errors.forEach(BXe.prettifyError(e,r)),A.warnings.forEach(BXe.prettifyError(e,r));return l.length>0?l:Object.assign([],{empty:!0},o.streamInfo())}function xIi(e,t={}){let{lineCounter:r,prettyErrors:n}=kIi(t),a=new DIi.Parser(r?.addNewLine),o=new NIi.Composer(t),l=null;for(let A of o.compose(a.parse(e),!0,e.length))if(!l)l=A;else if(l.options.logLevel!=="silent"){l.errors.push(new BXe.YAMLParseError(A.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(l.errors.forEach(BXe.prettifyError(e,r)),l.warnings.forEach(BXe.prettifyError(e,r))),l}function MZa(e,t,r){let n;typeof t=="function"?n=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=xIi(e,r);if(!a)return null;if(a.warnings.forEach(o=>PZa.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:n},r))}function HZa(e,t,r){let n=null;if(typeof t=="function"||Array.isArray(t)?n=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new VZa.Document(e,n,r).toString(r)}wXe.parse=MZa;wXe.parseAllDocuments=OZa;wXe.parseDocument=xIi;wXe.stringify=HZa});var ZIi=H(J0=>{"use strict";var YZa=oBr(),QZa=mXe(),XZa=Wvr(),yBr=yXe(),JZa=iXe(),Vae=C0(),UZa=Gae(),KZa=gT(),jZa=Zae(),zZa=Lae(),qZa=C0t(),$Za=IBr(),eLa=mBr(),tLa=_Br(),b0t=GIi(),FIi=eXe();J0.Composer=YZa.Composer;J0.Document=QZa.Document;J0.Schema=XZa.Schema;J0.YAMLError=yBr.YAMLError;J0.YAMLParseError=yBr.YAMLParseError;J0.YAMLWarning=yBr.YAMLWarning;J0.Alias=JZa.Alias;J0.isAlias=Vae.isAlias;J0.isCollection=Vae.isCollection;J0.isDocument=Vae.isDocument;J0.isMap=Vae.isMap;J0.isNode=Vae.isNode;J0.isPair=Vae.isPair;J0.isScalar=Vae.isScalar;J0.isSeq=Vae.isSeq;J0.Pair=UZa.Pair;J0.Scalar=KZa.Scalar;J0.YAMLMap=jZa.YAMLMap;J0.YAMLSeq=zZa.YAMLSeq;J0.CST=qZa;J0.Lexer=$Za.Lexer;J0.LineCounter=eLa.LineCounter;J0.Parser=tLa.Parser;J0.parse=b0t.parse;J0.parseAllDocuments=b0t.parseAllDocuments;J0.parseDocument=b0t.parseDocument;J0.stringify=b0t.stringify;J0.visit=FIi.visit;J0.visitAsync=FIi.visitAsync});var YIi=H((Wbu,RXe)=>{var JX=wt("path"),TXe=wt("fs"),iLa=wt("os"),VIi=TXe.promises.readFile;function sLa(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function T0t(e){return JX.dirname(e)||JX.sep}var SBr=(e,t)=>JSON.parse(t),w0t=typeof __webpack_require__=="function"?__non_webpack_require__:wt,PIi=Object.freeze({".js":w0t,".json":w0t,".cjs":w0t,noExt:SBr});RXe.exports.defaultLoadersSync=PIi;var EBr=async e=>{try{return(await import(e)).default}catch(t){try{return w0t(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},WIi=Object.freeze({".js":EBr,".mjs":EBr,".cjs":EBr,".json":SBr,noExt:SBr});RXe.exports.defaultLoaders=WIi;function OIi(e,t,r){let n={stopDir:iLa.homedir(),searchPlaces:sLa(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?PIi:WIi,...t.loaders}};return n.searchPlaces.forEach(a=>{let o=JX.extname(a)||"noExt",l=n.loaders[o];if(!l)throw new Error(`Missing loader for extension "${a}"`);if(typeof l!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof l}.`)}),n}function R0t(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,n)=>r===void 0?r:r[n],t)||null}function MIi(e){if(!e)throw new Error("load must pass a non-empty string")}function N0t(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var HIi=e=>(t,r,n)=>(e&&t.set(r,n),n);RXe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=OIi(t,r??{},!1),C=new Map,b=new Map,E=HIi(I);return{async search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=JX.join(Q,ae);try{await TXe.promises.access(ne)}catch{continue}let ce=String(await VIi(ne)),fe=JX.extname(ae)||"noExt",ue=a[fe];if(ae==="package.json"){let be=await ue(ne,ce),Se=R0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ce.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(N0t(ue,fe),B.config=await ue(ne,ce)),B.filepath=ne;break e}}if(Q===A||Q===T0t(Q))break e;Q=T0t(Q)}let X=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,X);return X},async load(N){MIi(N);let B=JX.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=JX.parse(B),X=Q||"noExt",ae=a[X];N0t(ae,X);let ne=String(await VIi(B));if(F==="package.json"){let ue=await ae(B,ne);return E(b,B,f({config:R0t(o,ue),filepath:B}))}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({config:void 0,filepath:B,isEmpty:!0})):(ce.config=fe?void 0:await ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}};RXe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=OIi(t,r??{},!0),C=new Map,b=new Map,E=HIi(I);return{search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=JX.join(Q,ae);try{TXe.accessSync(ne)}catch{continue}let ce=JX.extname(ae)||"noExt",fe=a[ce],ue=String(TXe.readFileSync(ne));if(ae==="package.json"){let be=fe(ne,ue),Se=R0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ue.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(N0t(fe,ce),B.config=fe(ne,ue)),B.filepath=ne;break e}}if(Q===A||Q===T0t(Q))break e;Q=T0t(Q)}let X=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,X);return X},load(N){MIi(N);let B=JX.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=JX.parse(B),X=Q||"noExt",ae=a[X];N0t(ae,X);let ne=String(TXe.readFileSync(B));if(F==="package.json"){let ue=ae(B,ne);return f({config:R0t(o,ue),filepath:B})}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({filepath:B,config:void 0,isEmpty:!0})):(ce.config=fe?void 0:ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}}});var DBr=H((A1u,Shi)=>{Shi.exports=wt("stream")});var Nhi=H((d1u,Rhi)=>{"use strict";function vhi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Bhi(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,a=""+n.data;n=n.next;)a+=r+n.data;return a}},{key:"concat",value:function(r){if(this.length===0)return L0t.alloc(0);for(var n=L0t.allocUnsafe(r>>>0),a=this.head,o=0;a;)QLa(a.data,n,o),o+=a.data.length,a=a.next;return n}},{key:"consume",value:function(r,n){var a;return rl.length?l.length:r;if(A===l.length?o+=l:o+=l.slice(0,r),r-=A,r===0){A===l.length?(++a,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=l.slice(A));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var n=L0t.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(n),r-=a.data.length;a=a.next;){var l=a.data,A=r>l.length?l.length:r;if(l.copy(n,n.length-r,0,A),r-=A,r===0){A===l.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=l.slice(A));break}++o}return this.length-=o,n}},{key:YLa,value:function(r,n){return kBr(this,Bhi(Bhi({},n),{},{depth:0,customInspect:!1}))}}]),e}()});var GBr=H((p1u,khi)=>{"use strict";function XLa(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return n||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(xBr,this,e)):process.nextTick(xBr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(V0t,r):(r._writableState.errorEmitted=!0,process.nextTick(Dhi,r,o)):process.nextTick(Dhi,r,o):t?(process.nextTick(V0t,r),t(o)):process.nextTick(V0t,r)}),this)}function Dhi(e,t){xBr(e,t),V0t(e)}function V0t(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function JLa(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function xBr(e,t){e.emit("error",t)}function ULa(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}khi.exports={destroy:XLa,undestroy:JLa,errorOrDestroy:ULa}});var Pae=H((f1u,Fhi)=>{"use strict";var Ghi={};function QM(e,t,r){r||(r=Error);function n(o,l,A){return typeof t=="string"?t:t(o,l,A)}class a extends r{constructor(l,A,f){super(n(l,A,f))}}a.prototype.name=r.name,a.prototype.code=e,Ghi[e]=a}function xhi(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(n=>String(n)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function KLa(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function jLa(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function zLa(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}QM("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);QM("ERR_INVALID_ARG_TYPE",function(e,t,r){let n;typeof t=="string"&&KLa(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";let a;if(jLa(e," argument"))a=`The ${e} ${n} ${xhi(t,"type")}`;else{let o=zLa(e,".")?"property":"argument";a=`The "${e}" ${o} ${n} ${xhi(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);QM("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");QM("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});QM("ERR_STREAM_PREMATURE_CLOSE","Premature close");QM("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});QM("ERR_MULTIPLE_CALLBACK","Callback called multiple times");QM("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");QM("ERR_STREAM_WRITE_AFTER_END","write after end");QM("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);QM("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);QM("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Fhi.exports.codes=Ghi});var FBr=H((I1u,Zhi)=>{"use strict";var qLa=Pae().codes.ERR_INVALID_OPT_VALUE;function $La(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function e9a(e,t,r,n){var a=$La(t,n,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=n?r:"highWaterMark";throw new qLa(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}Zhi.exports={getHighWaterMark:e9a}});var Lhi=H((h1u,ZBr)=>{typeof Object.create=="function"?ZBr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:ZBr.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var Wae=H((m1u,VBr)=>{try{if(LBr=wt("util"),typeof LBr.inherits!="function")throw"";VBr.exports=LBr.inherits}catch{VBr.exports=Lhi()}var LBr});var Phi=H((C1u,Vhi)=>{Vhi.exports=wt("util").deprecate});var OBr=H((_1u,Qhi)=>{"use strict";Qhi.exports=Hv;function Ohi(e){var t=this;this.next=null,this.entry=null,this.finish=function(){w9a(t,e)}}var iRe;Hv.WritableState=ZXe;var t9a={deprecate:Phi()},Mhi=DBr(),W0t=wt("buffer").Buffer,r9a=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function n9a(e){return W0t.from(e)}function i9a(e){return W0t.isBuffer(e)||e instanceof r9a}var WBr=GBr(),s9a=FBr(),o9a=s9a.getHighWaterMark,Oae=Pae().codes,a9a=Oae.ERR_INVALID_ARG_TYPE,c9a=Oae.ERR_METHOD_NOT_IMPLEMENTED,l9a=Oae.ERR_MULTIPLE_CALLBACK,u9a=Oae.ERR_STREAM_CANNOT_PIPE,g9a=Oae.ERR_STREAM_DESTROYED,A9a=Oae.ERR_STREAM_NULL_VALUES,d9a=Oae.ERR_STREAM_WRITE_AFTER_END,p9a=Oae.ERR_UNKNOWN_ENCODING,sRe=WBr.errorOrDestroy;Wae()(Hv,Mhi);function f9a(){}function ZXe(e,t,r){iRe=iRe||Xhe(),e=e||{},typeof r!="boolean"&&(r=t instanceof iRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=o9a(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){b9a(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Ohi(this)}ZXe.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(ZXe.prototype,"buffer",{get:t9a.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var P0t;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(P0t=Function.prototype[Symbol.hasInstance],Object.defineProperty(Hv,Symbol.hasInstance,{value:function(t){return P0t.call(this,t)?!0:this!==Hv?!1:t&&t._writableState instanceof ZXe}})):P0t=function(t){return t instanceof this};function Hv(e){iRe=iRe||Xhe();var t=this instanceof iRe;if(!t&&!P0t.call(Hv,this))return new Hv(e);this._writableState=new ZXe(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),Mhi.call(this)}Hv.prototype.pipe=function(){sRe(this,new u9a)};function I9a(e,t){var r=new d9a;sRe(e,r),process.nextTick(t,r)}function h9a(e,t,r,n){var a;return r===null?a=new A9a:typeof r!="string"&&!t.objectMode&&(a=new a9a("chunk",["string","Buffer"],r)),a?(sRe(e,a),process.nextTick(n,a),!1):!0}Hv.prototype.write=function(e,t,r){var n=this._writableState,a=!1,o=!n.objectMode&&i9a(e);return o&&!W0t.isBuffer(e)&&(e=n9a(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=f9a),n.ending?I9a(this,r):(o||h9a(this,n,e,r))&&(n.pendingcb++,a=C9a(this,n,o,e,t,r)),a};Hv.prototype.cork=function(){this._writableState.corked++};Hv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&Hhi(this,e))};Hv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new p9a(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Hv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function m9a(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=W0t.from(t,r)),t}Object.defineProperty(Hv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function C9a(e,t,r,n,a,o){if(!r){var l=m9a(t,n,a);n!==l&&(r=!0,a="buffer",n=l)}var A=t.objectMode?1:n.length;t.length+=A;var f=t.length{"use strict";var T9a=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};Jhi.exports=j8;var Xhi=YBr(),HBr=OBr();Wae()(j8,Xhi);for(MBr=T9a(HBr.prototype),O0t=0;O0t{var H0t=wt("buffer"),z8=H0t.Buffer;function Uhi(e,t){for(var r in e)t[r]=e[r]}z8.from&&z8.alloc&&z8.allocUnsafe&&z8.allocUnsafeSlow?Khi.exports=H0t:(Uhi(H0t,QBr),QBr.Buffer=Jhe);function Jhe(e,t,r){return z8(e,t,r)}Jhe.prototype=Object.create(z8.prototype);Uhi(z8,Jhe);Jhe.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return z8(e,t,r)};Jhe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=z8(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};Jhe.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return z8(e)};Jhe.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return H0t.SlowBuffer(e)}});var UBr=H(qhi=>{"use strict";var JBr=jhi().Buffer,zhi=JBr.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function D9a(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function k9a(e){var t=D9a(e);if(typeof t!="string"&&(JBr.isEncoding===zhi||!zhi(e)))throw new Error("Unknown encoding: "+e);return t||e}qhi.StringDecoder=LXe;function LXe(e){this.encoding=k9a(e);var t;switch(this.encoding){case"utf16le":this.text=V9a,this.end=P9a,t=4;break;case"utf8":this.fillLast=F9a,t=4;break;case"base64":this.text=W9a,this.end=O9a,t=3;break;default:this.write=M9a,this.end=H9a;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=JBr.allocUnsafe(t)}LXe.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function x9a(e,t,r){var n=t.length-1;if(n=0?(a>0&&(e.lastNeed=a-1),a):--n=0?(a>0&&(e.lastNeed=a-2),a):--n=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function G9a(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function F9a(e){var t=this.lastTotal-this.lastNeed,r=G9a(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function Z9a(e,t){var r=x9a(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function L9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function V9a(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function P9a(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function W9a(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function O9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function M9a(e){return e.toString(this.encoding)}function H9a(e){return e&&e.length?this.write(e):""}});var Y0t=H((E1u,tmi)=>{"use strict";var $hi=Pae().codes.ERR_STREAM_PREMATURE_CLOSE;function Y9a(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),a=0;a{"use strict";var Q0t;function Mae(e,t,r){return t=J9a(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function J9a(e){var t=U9a(e,"string");return typeof t=="symbol"?t:String(t)}function U9a(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var K9a=Y0t(),Hae=Symbol("lastResolve"),Uhe=Symbol("lastReject"),VXe=Symbol("error"),X0t=Symbol("ended"),Khe=Symbol("lastPromise"),KBr=Symbol("handlePromise"),jhe=Symbol("stream");function Yae(e,t){return{value:e,done:t}}function j9a(e){var t=e[Hae];if(t!==null){var r=e[jhe].read();r!==null&&(e[Khe]=null,e[Hae]=null,e[Uhe]=null,t(Yae(r,!1)))}}function z9a(e){process.nextTick(j9a,e)}function q9a(e,t){return function(r,n){e.then(function(){if(t[X0t]){r(Yae(void 0,!0));return}t[KBr](r,n)},n)}}var $9a=Object.getPrototypeOf(function(){}),eVa=Object.setPrototypeOf((Q0t={get stream(){return this[jhe]},next:function(){var t=this,r=this[VXe];if(r!==null)return Promise.reject(r);if(this[X0t])return Promise.resolve(Yae(void 0,!0));if(this[jhe].destroyed)return new Promise(function(l,A){process.nextTick(function(){t[VXe]?A(t[VXe]):l(Yae(void 0,!0))})});var n=this[Khe],a;if(n)a=new Promise(q9a(n,this));else{var o=this[jhe].read();if(o!==null)return Promise.resolve(Yae(o,!1));a=new Promise(this[KBr])}return this[Khe]=a,a}},Mae(Q0t,Symbol.asyncIterator,function(){return this}),Mae(Q0t,"return",function(){var t=this;return new Promise(function(r,n){t[jhe].destroy(null,function(a){if(a){n(a);return}r(Yae(void 0,!0))})})}),Q0t),$9a),tVa=function(t){var r,n=Object.create(eVa,(r={},Mae(r,jhe,{value:t,writable:!0}),Mae(r,Hae,{value:null,writable:!0}),Mae(r,Uhe,{value:null,writable:!0}),Mae(r,VXe,{value:null,writable:!0}),Mae(r,X0t,{value:t._readableState.endEmitted,writable:!0}),Mae(r,KBr,{value:function(o,l){var A=n[jhe].read();A?(n[Khe]=null,n[Hae]=null,n[Uhe]=null,o(Yae(A,!1))):(n[Hae]=o,n[Uhe]=l)},writable:!0}),r));return n[Khe]=null,K9a(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=n[Uhe];o!==null&&(n[Khe]=null,n[Hae]=null,n[Uhe]=null,o(a)),n[VXe]=a;return}var l=n[Hae];l!==null&&(n[Khe]=null,n[Hae]=null,n[Uhe]=null,l(Yae(void 0,!0))),n[X0t]=!0}),t.on("readable",z9a.bind(null,n)),n};rmi.exports=tVa});var ami=H((v1u,omi)=>{"use strict";function imi(e,t,r,n,a,o,l){try{var A=e[o](l),f=A.value}catch(I){r(I);return}A.done?t(f):Promise.resolve(f).then(n,a)}function rVa(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function l(f){imi(o,n,a,l,A,"next",f)}function A(f){imi(o,n,a,l,A,"throw",f)}l(void 0)})}}function smi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function nVa(e){for(var t=1;t{"use strict";hmi.exports=y_;var oRe;y_.ReadableState=gmi;var B1u=wt("events").EventEmitter,umi=function(t,r){return t.listeners(r).length},WXe=DBr(),J0t=wt("buffer").Buffer,lVa=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function uVa(e){return J0t.from(e)}function gVa(e){return J0t.isBuffer(e)||e instanceof lVa}var jBr=wt("util"),Sm;jBr&&jBr.debuglog?Sm=jBr.debuglog("stream"):Sm=function(){};var AVa=Nhi(),nwr=GBr(),dVa=FBr(),pVa=dVa.getHighWaterMark,U0t=Pae().codes,fVa=U0t.ERR_INVALID_ARG_TYPE,IVa=U0t.ERR_STREAM_PUSH_AFTER_EOF,hVa=U0t.ERR_METHOD_NOT_IMPLEMENTED,mVa=U0t.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,aRe,zBr,qBr;Wae()(y_,WXe);var PXe=nwr.errorOrDestroy,$Br=["error","close","destroy","pause","resume"];function CVa(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function gmi(e,t,r){oRe=oRe||Xhe(),e=e||{},typeof r!="boolean"&&(r=t instanceof oRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=pVa(this,e,"readableHighWaterMark",r),this.buffer=new AVa,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(aRe||(aRe=UBr().StringDecoder),this.decoder=new aRe(e.encoding),this.encoding=e.encoding)}function y_(e){if(oRe=oRe||Xhe(),!(this instanceof y_))return new y_(e);var t=this instanceof oRe;this._readableState=new gmi(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),WXe.call(this)}Object.defineProperty(y_.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});y_.prototype.destroy=nwr.destroy;y_.prototype._undestroy=nwr.undestroy;y_.prototype._destroy=function(e,t){t(e)};y_.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=J0t.from(e,t),t=""),n=!0),Ami(this,e,t,!1,n)};y_.prototype.unshift=function(e){return Ami(this,e,null,!0,!1)};function Ami(e,t,r,n,a){Sm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,bVa(e,o);else{var l;if(a||(l=_Va(o,t)),l)PXe(e,l);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==J0t.prototype&&(t=uVa(t)),n)o.endEmitted?PXe(e,new mVa):ewr(e,o,t,!0);else if(o.ended)PXe(e,new IVa);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?ewr(e,o,t,!1):rwr(e,o)):ewr(e,o,t,!1)}else n||(o.reading=!1,rwr(e,o))}return!o.ended&&(o.length=cmi?e=cmi:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function lmi(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=yVa(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}y_.prototype.read=function(e){Sm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Sm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?twr(this):K0t(this),null;if(e=lmi(e,t),e===0&&t.ended)return t.length===0&&twr(this),null;var n=t.needReadable;Sm("need readable",n),(t.length===0||t.length-e0?a=fmi(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&twr(this)),a!==null&&this.emit("data",a),a};function bVa(e,t){if(Sm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?K0t(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,dmi(e)))}}function K0t(e){var t=e._readableState;Sm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Sm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(dmi,e))}function dmi(e){var t=e._readableState;Sm("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,iwr(e)}function rwr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(EVa,e,t))}function EVa(e,t){for(;!t.reading&&!t.ended&&(t.length1&&Imi(n.pipes,e)!==-1)&&!I&&(Sm("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function E(Q){Sm("onerror",Q),F(),e.removeListener("error",E),umi(e,"error")===0&&PXe(e,Q)}CVa(e,"error",E);function N(){e.removeListener("finish",B),F()}e.once("close",N);function B(){Sm("onfinish"),e.removeListener("close",N),F()}e.once("finish",B);function F(){Sm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Sm("pipe resume"),r.resume()),e};function SVa(e){return function(){var r=e._readableState;Sm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&umi(e,"data")&&(r.flowing=!0,iwr(e))}}y_.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Sm("on readable",n.length,n.reading),n.length?K0t(this):n.reading||process.nextTick(vVa,this)),r};y_.prototype.addListener=y_.prototype.on;y_.prototype.removeListener=function(e,t){var r=WXe.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(pmi,this),r};y_.prototype.removeAllListeners=function(e){var t=WXe.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(pmi,this),t};function pmi(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function vVa(e){Sm("readable nexttick read 0"),e.read(0)}y_.prototype.resume=function(){var e=this._readableState;return e.flowing||(Sm("resume"),e.flowing=!e.readableListening,BVa(this,e)),e.paused=!1,this};function BVa(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(wVa,e,t))}function wVa(e,t){Sm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),iwr(e),t.flowing&&!t.reading&&e.read(0)}y_.prototype.pause=function(){return Sm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Sm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function iwr(e){var t=e._readableState;for(Sm("flow",t.flowing);t.flowing&&e.read()!==null;);}y_.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Sm("wrapped end"),r.decoder&&!r.ended){var l=r.decoder.end();l&&l.length&&t.push(l)}t.push(null)}),e.on("data",function(l){if(Sm("wrapped data"),r.decoder&&(l=r.decoder.write(l)),!(r.objectMode&&l==null)&&!(!r.objectMode&&(!l||!l.length))){var A=t.push(l);A||(n=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(A){return function(){return e[A].apply(e,arguments)}}(a));for(var o=0;o<$Br.length;o++)e.on($Br[o],this.emit.bind(this,$Br[o]));return this._read=function(l){Sm("wrapped _read",l),n&&(n=!1,e.resume())},this};typeof Symbol=="function"&&(y_.prototype[Symbol.asyncIterator]=function(){return zBr===void 0&&(zBr=nmi()),zBr(this)});Object.defineProperty(y_.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});Object.defineProperty(y_.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}});Object.defineProperty(y_.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}});y_._fromList=fmi;Object.defineProperty(y_.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function fmi(e,t){if(t.length===0)return null;var r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function twr(e){var t=e._readableState;Sm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(TVa,t,e))}function TVa(e,t){if(Sm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(y_.from=function(e,t){return qBr===void 0&&(qBr=ami()),qBr(y_,e,t)});function Imi(e,t){for(var r=0,n=e.length;r{"use strict";Cmi.exports=iee;var j0t=Pae().codes,RVa=j0t.ERR_METHOD_NOT_IMPLEMENTED,NVa=j0t.ERR_MULTIPLE_CALLBACK,DVa=j0t.ERR_TRANSFORM_ALREADY_TRANSFORMING,kVa=j0t.ERR_TRANSFORM_WITH_LENGTH_0,z0t=Xhe();Wae()(iee,z0t);function xVa(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new NVa);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";ymi.exports=OXe;var _mi=swr();Wae()(OXe,_mi);function OXe(e){if(!(this instanceof OXe))return new OXe(e);_mi.call(this,e)}OXe.prototype._transform=function(e,t,r){r(null,e)}});var wmi=H((N1u,Bmi)=>{"use strict";var owr;function FVa(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var vmi=Pae().codes,ZVa=vmi.ERR_MISSING_ARGS,LVa=vmi.ERR_STREAM_DESTROYED;function Emi(e){if(e)throw e}function VVa(e){return e.setHeader&&typeof e.abort=="function"}function PVa(e,t,r,n){n=FVa(n);var a=!1;e.on("close",function(){a=!0}),owr===void 0&&(owr=Y0t()),owr(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,VVa(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(l||new LVa("pipe"))}}}function Smi(e){e()}function WVa(e,t){return e.pipe(t)}function OVa(e){return!e.length||typeof e[e.length-1]!="function"?Emi:e.pop()}function MVa(){for(var e=arguments.length,t=new Array(e),r=0;r0;return PVa(l,f,I,function(C){a||(a=C),C&&o.forEach(Smi),!f&&(o.forEach(Smi),n(a))})});return t.reduce(WVa)}Bmi.exports=MVa});var cRe=H((XM,HXe)=>{var MXe=wt("stream");process.env.READABLE_STREAM==="disable"&&MXe?(HXe.exports=MXe.Readable,Object.assign(HXe.exports,MXe),HXe.exports.Stream=MXe):(XM=HXe.exports=YBr(),XM.Stream=MXe||XM,XM.Readable=XM,XM.Writable=OBr(),XM.Duplex=Xhe(),XM.Transform=swr(),XM.PassThrough=bmi(),XM.finished=Y0t(),XM.pipeline=wmi())});var Nmi=H((D1u,Rmi)=>{"use strict";var{Buffer:UX}=wt("buffer"),Tmi=Symbol.for("BufferList");function LE(e){if(!(this instanceof LE))return new LE(e);LE._init.call(this,e)}LE._init=function(t){Object.defineProperty(this,Tmi,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};LE.prototype._new=function(t){return new LE(t)};LE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let n=0;nthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};LE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};LE.prototype.copy=function(t,r,n,a){if((typeof n!="number"||n<0)&&(n=0),(typeof a!="number"||a>this.length)&&(a=this.length),n>=this.length||a<=0)return t||UX.alloc(0);let o=!!t,l=this._offset(n),A=a-n,f=A,I=o&&r||0,C=l[1];if(n===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:UX.concat(this._bufs,this.length);for(let b=0;bE)this._bufs[b].copy(t,I,C),I+=E;else{this._bufs[b].copy(t,I,C,C+f),I+=E;break}f-=E,C&&(C=0)}return t.length>I?t.slice(0,I):t};LE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let n=this._offset(t),a=this._offset(r),o=this._bufs.slice(n[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),n[1]!==0&&(o[0]=o[0].slice(n[1])),this._new(o)};LE.prototype.toString=function(t,r,n){return this.slice(r,n).toString(t)};LE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};LE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let n=this._offset(t),a=n[0],o=n[1];for(;a=e.length){let f=l.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=l.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};LE.prototype._match=function(e,t){if(this.length-e{"use strict";var awr=cRe().Duplex,HVa=Wae(),YXe=Nmi();function TG(e){if(!(this instanceof TG))return new TG(e);if(typeof e=="function"){this._callback=e;let t=function(n){this._callback&&(this._callback(n),this._callback=null)}.bind(this);this.on("pipe",function(n){n.on("error",t)}),this.on("unpipe",function(n){n.removeListener("error",t)}),e=null}YXe._init.call(this,e),awr.call(this)}HVa(TG,awr);Object.assign(TG.prototype,YXe.prototype);TG.prototype._new=function(t){return new TG(t)};TG.prototype._write=function(t,r,n){this._appendBuffer(t),typeof n=="function"&&n()};TG.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};TG.prototype.end=function(t){awr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};TG.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};TG.prototype._isBufferList=function(t){return t instanceof TG||t instanceof YXe||TG.isBufferList(t)};TG.isBufferList=YXe.isBufferList;q0t.exports=TG;q0t.exports.BufferListStream=TG;q0t.exports.BufferList=YXe});var gwr=H(uRe=>{var YVa=Buffer.alloc,QVa="0000000000000000000",XVa="7777777777777777777",Dmi=48,kmi=Buffer.from("ustar\0","binary"),JVa=Buffer.from("00","binary"),UVa=Buffer.from("ustar ","binary"),KVa=Buffer.from(" \0","binary"),jVa=parseInt("7777",8),QXe=257,uwr=263,zVa=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},qVa=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},$Va=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},xmi=function(e,t,r,n){for(;rt?XVa.slice(0,t)+" ":QVa.slice(0,t-e.length)+e+" "};function ePa(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],n=e.length-1;n>0;n--){var a=e[n];t?r.push(a):r.push(255-a)}var o=0,l=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e};uRe.decodeLongPath=function(e,t){return lRe(e,0,e.length,t)};uRe.encodePax=function(e){var t="";e.name&&(t+=lwr(" path="+e.name+` -`)),e.linkname&&(t+=lwr(" linkpath="+e.linkname+` -`));var r=e.pax;if(r)for(var n in r)t+=lwr(" "+n+"="+r[n]+` -`);return Buffer.from(t)};uRe.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;n+=n?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(n)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(Qae(e.mode&jVa,6),100),t.write(Qae(e.uid,6),108),t.write(Qae(e.gid,6),116),t.write(Qae(e.size,11),124),t.write(Qae(e.mtime.getTime()/1e3|0,11),136),t[156]=Dmi+$Va(e.type),e.linkname&&t.write(e.linkname,157),kmi.copy(t,QXe),JVa.copy(t,uwr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(Qae(e.devmajor||0,6),329),t.write(Qae(e.devminor||0,6),337),n&&t.write(n,345),t.write(Qae(Gmi(t),6),148),t)};uRe.decode=function(e,t,r){var n=e[156]===0?0:e[156]-Dmi,a=lRe(e,0,100,t),o=Xae(e,100,8),l=Xae(e,108,8),A=Xae(e,116,8),f=Xae(e,124,12),I=Xae(e,136,12),C=qVa(n),b=e[157]===0?null:lRe(e,157,100,t),E=lRe(e,265,32),N=lRe(e,297,32),B=Xae(e,329,8),F=Xae(e,337,8),Q=Gmi(e);if(Q===8*32)return null;if(Q!==Xae(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(kmi.compare(e,QXe,QXe+6)===0)e[345]&&(a=lRe(e,345,155,t)+"/"+a);else if(!(UVa.compare(e,QXe,QXe+6)===0&&KVa.compare(e,uwr,uwr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return n===0&&a&&a[a.length-1]==="/"&&(n=5),{name:a,mode:o,uid:l,gid:A,size:f,mtime:new Date(1e3*I),type:C,linkname:b,uname:E,gname:N,devmajor:B,devminor:F}}});var Omi=H((G1u,Wmi)=>{var Zmi=wt("util"),tPa=cwr(),XXe=gwr(),Lmi=cRe().Writable,Vmi=cRe().PassThrough,Pmi=function(){},Fmi=function(e){return e&=511,e&&512-e},rPa=function(e,t){var r=new $0t(e,t);return r.end(),r},nPa=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},$0t=function(e,t){this._parent=e,this.offset=t,Vmi.call(this,{autoDestroy:!1})};Zmi.inherits($0t,Vmi);$0t.prototype.destroy=function(e){this._parent.destroy(e)};var see=function(e){if(!(this instanceof see))return new see(e);Lmi.call(this,e),e=e||{},this._offset=0,this._buffer=tPa(),this._missing=0,this._partial=!1,this._onparse=Pmi,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},a=function(E){if(t._locked=!1,E)return t.destroy(E);t._stream||n()},o=function(){t._stream=null;var E=Fmi(t._header.size);E?t._parse(E,l):t._parse(512,b),t._locked||n()},l=function(){t._buffer.consume(Fmi(t._header.size)),t._parse(512,b),n()},A=function(){var E=t._header.size;t._paxGlobal=XXe.decodePax(r.slice(0,E)),r.consume(E),o()},f=function(){var E=t._header.size;t._pax=XXe.decodePax(r.slice(0,E)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(E),o()},I=function(){var E=t._header.size;this._gnuLongPath=XXe.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},C=function(){var E=t._header.size;this._gnuLongLinkPath=XXe.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},b=function(){var E=t._offset,N;try{N=t._header=XXe.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(B){t.emit("error",B)}if(r.consume(512),!N){t._parse(512,b),n();return}if(N.type==="gnu-long-path"){t._parse(N.size,I),n();return}if(N.type==="gnu-long-link-path"){t._parse(N.size,C),n();return}if(N.type==="pax-global-header"){t._parse(N.size,A),n();return}if(N.type==="pax-header"){t._parse(N.size,f),n();return}if(t._gnuLongPath&&(N.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(N.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=N=nPa(N,t._pax),t._pax=null),t._locked=!0,!N.size||N.type==="directory"){t._parse(512,b),t.emit("entry",N,rPa(t,E),a);return}t._stream=new $0t(t,E),t.emit("entry",N,t._stream,a),t._parse(N.size,o),n()};this._onheader=b,this._parse(512,b)};Zmi.inherits(see,Lmi);see.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};see.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};see.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=Pmi,this._overflow?this._write(this._overflow,void 0,e):e()}};see.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(l=e.slice(o),e=e.slice(0,o)),n?n.end(e):a.append(e),this._overflow=l,this._onparse()}};see.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};Wmi.exports=see});var Hmi=H((F1u,Mmi)=>{Mmi.exports=wt("fs").constants||wt("constants")});var Umi=H((Z1u,Jmi)=>{var gRe=Hmi(),Ymi=Uur(),tyt=Wae(),iPa=Buffer.alloc,Qmi=cRe().Readable,ARe=cRe().Writable,sPa=wt("string_decoder").StringDecoder,eyt=gwr(),oPa=parseInt("755",8),aPa=parseInt("644",8),Xmi=iPa(1024),dwr=function(){},Awr=function(e,t){t&=511,t&&e.push(Xmi.slice(0,512-t))};function cPa(e){switch(e&gRe.S_IFMT){case gRe.S_IFBLK:return"block-device";case gRe.S_IFCHR:return"character-device";case gRe.S_IFDIR:return"directory";case gRe.S_IFIFO:return"fifo";case gRe.S_IFLNK:return"symlink"}return"file"}var ryt=function(e){ARe.call(this),this.written=0,this._to=e,this._destroyed=!1};tyt(ryt,ARe);ryt.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};ryt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var nyt=function(){ARe.call(this),this.linkname="",this._decoder=new sPa("utf-8"),this._destroyed=!1};tyt(nyt,ARe);nyt.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};nyt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var JXe=function(){ARe.call(this),this._destroyed=!1};tyt(JXe,ARe);JXe.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};JXe.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var q8=function(e){if(!(this instanceof q8))return new q8(e);Qmi.call(this,e),this._drain=dwr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};tyt(q8,Qmi);q8.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=dwr);var n=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=cPa(e.mode)),e.mode||(e.mode=e.type==="directory"?oPa:aPa),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return Awr(n,e.size),a?process.nextTick(r):this._drain=r,new JXe}if(e.type==="symlink"&&!e.linkname){var o=new nyt;return Ymi(o,function(A){if(A)return n.destroy(),r(A);e.linkname=o.linkname,n._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new JXe;var l=new ryt(this);return this._stream=l,Ymi(l,function(A){if(n._stream=null,A)return n.destroy(),r(A);if(l.written!==e.size)return n.destroy(),r(new Error("size mismatch"));Awr(n,e.size),n._finalizing&&n.finalize(),r()}),l}};q8.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(Xmi),this.push(null))};q8.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};q8.prototype._encode=function(e){if(!e.pax){var t=eyt.encode(e);if(t){this.push(t);return}}this._encodePax(e)};q8.prototype._encodePax=function(e){var t=eyt.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(eyt.encode(r)),this.push(t),Awr(this,t.length),r.size=e.size,r.type=e.type,this.push(eyt.encode(r))};q8.prototype._read=function(e){var t=this._drain;this._drain=dwr,t()};Jmi.exports=q8});var Kmi=H(pwr=>{pwr.extract=Omi();pwr.pack=Umi()});var fwr=H(zhe=>{"use strict";Object.defineProperty(zhe,"__esModule",{value:!0});zhe.hasPackScripts=dPa;zhe.prepareForPack=pPa;zhe.genPackStream=fPa;zhe.genPackageManifest=tCi;zhe.genPackList=rCi;var eCi=(Pa(),vi(Va)),UXe=Sn(),Mh=ro(),jmi=eCi.__importDefault(Ek()),lPa=eCi.__importDefault(Kmi()),uPa=wt("zlib"),gPa=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],APa=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function dPa(e){return!!(UXe.scriptUtils.hasWorkspaceScript(e,"prepack")||UXe.scriptUtils.hasWorkspaceScript(e,"postpack"))}async function pPa(e,{report:t},r){await UXe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let n=Mh.ppath.join(e.cwd,UXe.Manifest.fileName);await Mh.xfs.existsPromise(n)&&await e.manifest.loadFile(n,{baseFs:Mh.xfs}),await r()}finally{await UXe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}async function fPa(e,t){typeof t>"u"&&(t=await rCi(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(Mh.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(Mh.ppath.normalize(o));let n=lPa.default.pack();process.nextTick(async()=>{for(let o of t){let l=Mh.ppath.normalize(o),A=Mh.ppath.resolve(e.cwd,l),f=Mh.ppath.join("package",l),I=await Mh.xfs.lstatPromise(A),C={name:f,mtime:new Date(Mh.constants.SAFE_TIME*1e3)},b=r.has(l)?493:420,E,N,B=new Promise((Q,X)=>{E=Q,N=X}),F=Q=>{Q?N(Q):E()};if(I.isFile()){let Q;l==="package.json"?Q=Buffer.from(JSON.stringify(await tCi(e),null,2)):Q=await Mh.xfs.readFilePromise(A),n.entry({...C,mode:b,type:"file"},Q,F)}else I.isSymbolicLink()?n.entry({...C,mode:b,type:"symlink",linkname:await Mh.xfs.readlinkPromise(A)},F):F(new Error(`Unsupported file type ${I.mode} for ${Mh.npath.fromPortablePath(l)}`));await B}n.finalize()});let a=(0,uPa.createGzip)();return n.pipe(a),a}async function tCi(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}async function rCi(e){let t=e.project,r=t.configuration,n={accept:[],reject:[]};for(let b of APa)n.reject.push(b);for(let b of gPa)n.accept.push(b);n.reject.push(r.get("rcFilename"));let a=b=>{if(b===null||!b.startsWith(`${e.cwd}/`))return;let E=Mh.ppath.relative(e.cwd,b),N=Mh.ppath.resolve(Mh.PortablePath.root,E);n.reject.push(N)};a(Mh.ppath.resolve(t.cwd,Mh.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(b=>b.populateYarnPaths,t,b=>{a(b)});for(let b of t.workspaces){let E=Mh.ppath.relative(e.cwd,b.cwd);E!==""&&!E.match(/^(\.\.)?\//)&&n.reject.push(`/${E}`)}let o={accept:[],reject:[]},l=e.manifest.publishConfig?.main??e.manifest.main,A=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,I=e.manifest.publishConfig?.bin??e.manifest.bin;l!=null&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,l)),A!=null&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,A)),typeof f=="string"&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,f));for(let b of I.values())o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,b));if(f instanceof Map)for(let[b,E]of f.entries())o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,b)),typeof E=="string"&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,E));let C=e.manifest.files!==null;if(C){o.reject.push("/*");for(let b of e.manifest.files)nCi(o.accept,b,{cwd:Mh.PortablePath.root})}return await IPa(e.cwd,{hasExplicitFileList:C,globalList:n,ignoreList:o})}async function IPa(e,{hasExplicitFileList:t,globalList:r,ignoreList:n}){let a=[],o=new Mh.JailFS(e),l=[[Mh.PortablePath.root,[n]]];for(;l.length>0;){let[A,f]=l.pop(),I=await o.lstatPromise(A);if(!qmi(A,{globalList:r,ignoreLists:I.isDirectory()?null:f}))if(I.isDirectory()){let C=await o.readdirPromise(A),b=!1,E=!1;if(!t||A!==Mh.PortablePath.root)for(let F of C)b=b||F===".gitignore",E=E||F===".npmignore";let N=E?await zmi(o,A,".npmignore"):b?await zmi(o,A,".gitignore"):null,B=N!==null?[N].concat(f):f;qmi(A,{globalList:r,ignoreLists:f})&&(B=[...f,{accept:[],reject:["**/*"]}]);for(let F of C)l.push([Mh.ppath.resolve(A,F),B])}else(I.isFile()||I.isSymbolicLink())&&a.push(Mh.ppath.relative(Mh.PortablePath.root,A))}return a.sort()}async function zmi(e,t,r){let n={accept:[],reject:[]},a=await e.readFilePromise(Mh.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))nCi(n.reject,o,{cwd:t});return n}function hPa(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=Mh.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function nCi(e,t,{cwd:r}){let n=t.trim();n===""||n[0]==="#"||e.push(hPa(n,{cwd:r}))}var uO;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(uO||(uO={}));function qmi(e,{globalList:t,ignoreLists:r}){let n=iyt(e,t.accept);if(n!==uO.None)return n===uO.NegatedMatch;let a=iyt(e,t.reject);if(a!==uO.None)return a===uO.Match;if(r!==null)for(let o of r){let l=iyt(e,o.accept);if(l!==uO.None)return l===uO.NegatedMatch;let A=iyt(e,o.reject);if(A!==uO.None)return A===uO.Match}return!1}function iyt(e,t){let r=t,n=[];for(let a=0;a{"use strict";Object.defineProperty(Iwr,"__esModule",{value:!0});var mPa=(Pa(),vi(Va)),iCi=el(),oee=Sn(),$8=ro(),dRe=($c(),vi(rg)),syt=mPa.__importStar(fwr()),KXe=class extends iCi.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=dRe.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=dRe.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=dRe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=dRe.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=dRe.Option.String("--filename",{hidden:!0})}async execute(){let t=await oee.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await oee.Project.find(t,this.context.cwd);if(!n)throw new iCi.WorkspaceRequiredError(r.cwd,this.context.cwd);await syt.hasPackScripts(n)&&(this.installIfNeeded?await r.install({cache:await oee.Cache.find(t),report:new oee.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?$8.ppath.resolve(this.context.cwd,CPa(a,{workspace:n})):$8.ppath.resolve(n.cwd,"package.tgz");return(await oee.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async A=>{await syt.prepareForPack(n,{report:A},async()=>{A.reportJson({base:$8.npath.fromPortablePath(n.cwd)});let f=await syt.genPackList(n);for(let I of f)A.reportInfo(null,$8.npath.fromPortablePath(I)),A.reportJson({location:$8.npath.fromPortablePath(I)});if(!this.dryRun){let I=await syt.genPackStream(n,f);await $8.xfs.mkdirPromise($8.ppath.dirname(o),{recursive:!0});let C=$8.xfs.createWriteStream(o);I.pipe(C),await new Promise(b=>{C.on("finish",b)})}}),this.dryRun||(A.reportInfo(oee.MessageName.UNNAMED,`Package archive generated in ${oee.formatUtils.pretty(t,o,oee.formatUtils.Type.PATH)}`),A.reportJson({output:$8.npath.fromPortablePath(o)}))})).exitCode()}};KXe.paths=[["pack"]];KXe.usage=dRe.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,--out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});Iwr.default=KXe;function CPa(e,{workspace:t}){let r=e.replace("%s",_Pa(t)).replace("%v",yPa(t));return $8.npath.toPortablePath(r)}function _Pa(e){return e.manifest.name!==null?oee.structUtils.slugifyIdent(e.manifest.name):"package"}function yPa(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var $he=H(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});qhe.packUtils=qhe.PackCommand=void 0;var aCi=(Pa(),vi(Va)),jXe=Sn(),oCi=Sn(),cCi=aCi.__importDefault(sCi());qhe.PackCommand=cCi.default;var bPa=aCi.__importStar(fwr());qhe.packUtils=bPa;var EPa=["dependencies","devDependencies","peerDependencies"],SPa="workspace:",vPa=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let n of EPa)for(let a of e.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(a),l=jXe.structUtils.parseRange(a.range);if(l.protocol===SPa)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new oCi.ReportError(oCi.MessageName.WORKSPACE_NOT_FOUND,`${jXe.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let A;jXe.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||l.selector==="*"?A=o.manifest.version??"0.0.0":l.selector==="~"||l.selector==="^"?A=`${l.selector}${o.manifest.version??"0.0.0"}`:A=l.selector;let f=n==="dependencies"?jXe.structUtils.makeDescriptor(a,"unknown"):null,I=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":n;t[I][jXe.structUtils.stringifyIdent(a)]=A}}},BPa={hooks:{beforeWorkspacePacking:vPa},commands:[cCi.default]};qhe.default=BPa});var ICi=H((M1u,fCi)=>{fCi.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var mCi=H((H1u,hCi)=>{hCi.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):ICi()});var _Ci=H((Q1u,CCi)=>{CCi.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var Cwr=H((J1u,bCi)=>{var yCi=_Ci();bCi.exports=class{constructor(t){this.hwm=t||16,this.head=new yCi(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new yCi(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var SCi=H((K1u,ECi)=>{ECi.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var BCi=H((z1u,vCi)=>{vCi.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let n=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var TCi=H(($1u,wCi)=>{var wPa=SCi(),TPa=BCi();wCi.exports=class{constructor(t="utf8"){switch(this.encoding=RPa(t),this.encoding){case"utf8":this.decoder=new TPa;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new wPa(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function RPa(e){switch(e=e.toLowerCase(),e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:throw new Error("Unknown encoding: "+e)}}});var Fwr=H((e2u,$Ci)=>{var{EventEmitter:NPa}=wt("events"),Ayt=new Error("Stream was destroyed"),_wr=new Error("Premature close"),GCi=mCi(),FCi=Cwr(),DPa=TCi(),kS=(1<<29)-1,ime=1,wwr=2,eme=4,zXe=8,ZCi=kS^ime,kPa=kS^wwr,n4e=16,qXe=32,mRe=64,Jae=128,i4e=256,Twr=512,tme=1024,ywr=2048,Rwr=4096,Nwr=8192,KX=16384,pRe=32768,dyt=65536,rme=131072,LCi=i4e|Twr,xPa=n4e|dyt,GPa=mRe|n4e,FPa=Rwr|Jae,Dwr=i4e|rme,ZPa=kS^n4e,LPa=kS^mRe,VPa=kS^(mRe|dyt),RCi=kS^dyt,PPa=kS^i4e,WPa=kS^(Jae|Nwr),OPa=kS^tme,NCi=kS^LCi,VCi=kS^pRe,MPa=kS^qXe,PCi=kS^rme,HPa=kS^Dwr,Uae=1<<18,IRe=2<<18,s4e=4<<18,nme=8<<18,o4e=16<<18,sme=32<<18,bwr=64<<18,fRe=128<<18,kwr=256<<18,hRe=512<<18,pyt=1024<<18,WCi=kS^(Uae|kwr),OCi=kS^s4e,YPa=kS^hRe,QPa=kS^o4e,XPa=kS^nme,MCi=kS^fRe,JPa=kS^IRe,HCi=kS^pyt,$Xe=n4e|Uae,YCi=kS^$Xe,xwr=KX|sme,aee=eme|zXe|wwr,gO=aee|ime,QCi=aee|xwr,UPa=OCi&LPa,Gwr=fRe|pRe,KPa=Gwr&YCi,XCi=gO|KPa,jPa=gO|tme|KX,DCi=gO|KX|Jae,zPa=gO|tme|Jae,qPa=gO|Rwr|Jae|Nwr,$Pa=gO|n4e|tme|KX|dyt|rme,eWa=aee|tme|KX,tWa=qXe|gO|pRe|mRe,rWa=gO|hRe|sme,nWa=nme|o4e,JCi=nme|Uae,iWa=nme|o4e|gO|Uae,kCi=gO|Uae|nme|pyt,sWa=s4e|Uae,oWa=Uae|kwr,aWa=gO|hRe|JCi|sme,cWa=o4e|aee|hRe|sme,lWa=IRe|gO|fRe|s4e,ayt=Symbol.asyncIterator||Symbol("asyncIterator"),cyt=class{constructor(t,{highWaterMark:r=16384,map:n=null,mapWritable:a,byteLength:o,byteLengthWritable:l}={}){this.stream=t,this.queue=new FCi,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=l||o||qCi,this.map=a||n,this.afterWrite=AWa.bind(this),this.afterUpdateNextTick=fWa.bind(this)}get ended(){return(this.stream._duplexState&sme)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=l||o||qCi,this.map=a||n,this.pipeTo=null,this.afterRead=dWa.bind(this),this.afterUpdateNextTick=pWa.bind(this)}get ended(){return(this.stream._duplexState&KX)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=Twr,this.pipeTo=t,this.pipeline=new vwr(this.stream,t,r),r&&this.stream.on("error",xCi),r4e(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",xCi),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let n=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",n),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",uWa.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|tme)&VPa,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=RCi,this.buffered0;)r.push(this.shift());for(let n=0;n0;)n.drains.shift().resolve(!1);n.pipeline!==null&&n.pipeline.done(t,e)}}function AWa(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=WCi,this.drains!==null&&IWa(this.drains),(t._duplexState&iWa)===o4e&&(t._duplexState&=QPa,(t._duplexState&bwr)===bwr&&t.emit("drain")),this.updateCallback()}function dWa(e){e&&this.stream.destroy(e),this.stream._duplexState&=ZPa,this.readAhead===!1&&!(this.stream._duplexState&i4e)&&(this.stream._duplexState&=PCi),this.updateCallback()}function pWa(){this.stream._duplexState&qXe||(this.stream._duplexState&=VCi,this.update())}function fWa(){this.stream._duplexState&IRe||(this.stream._duplexState&=MCi,this.update())}function IWa(e){for(let t=0;t0)?null:n(l)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=Dwr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?HPa:PPa,this}static _fromAsyncIterator(t,r){let n,a=new e({...r,read(l){t.next().then(o).then(l.bind(null,null)).catch(l)},predestroy(){n=t.return()},destroy(l){if(!n)return l(null);n.then(l.bind(null,null)).catch(l)}});return a;function o(l){l.done?a.push(null):a.push(l.value)}}static from(t,r){if(vWa(t))return t;if(t[ayt])return this._fromAsyncIterator(t[ayt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let n=0;return new e({...r,read(a){this.push(n===t.length?null:t[n++]),a(null)}})}static isBackpressured(t){return(t._duplexState&eWa)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&i4e)===0}[ayt](){let t=this,r=null,n=null,a=null;return this.on("error",I=>{r=I}),this.on("readable",o),this.on("close",l),{[ayt](){return this},next(){return new Promise(function(I,C){n=I,a=C;let b=t.read();b!==null?A(b):t._duplexState&zXe&&A(null)})},return(){return f(null)},throw(I){return f(I)}};function o(){n!==null&&A(t.read())}function l(){n!==null&&A(null)}function A(I){a!==null&&(r?a(r):I===null&&!(t._duplexState&KX)?a(Ayt):n({value:I,done:I===null}),a=n=null)}function f(I){return t.destroy(I),new Promise((C,b)=>{if(t._duplexState&zXe)return C({value:void 0,done:!0});t.once("close",function(){I?b(I):C({value:void 0,done:!0})})})}}},uyt=class extends e4e{constructor(t){super(t),this._duplexState|=ime|KX,this._writableState=new cyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=pyt}uncork(){this._duplexState&=HCi,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&cWa)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(TWa(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&kwr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},t4e=class extends lyt{constructor(t){super(t),this._duplexState=ime|this._duplexState&rme,this._writableState=new cyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=pyt}uncork(){this._duplexState&=HCi,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},gyt=class extends t4e{constructor(t){super(t),this._transformState=new Swr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(CWa.bind(this))}},Bwr=class extends gyt{};function CWa(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function _Wa(...e){return new Promise((t,r)=>jCi(...e,n=>{if(n)return r(n);t()}))}function jCi(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],n=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,l=null;for(let I=1;I1,f),a.pipe(o)),a=o;if(n){let I=!1,C=r4e(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",b=>{l===null&&(l=b)}),o.on("finish",()=>{I=!0,C||n(l)}),C&&o.on("close",()=>n(l||(I?null:_wr)))}return o;function A(I,C,b,E){I.on("error",E),I.on("close",N);function N(){if(C&&I._readableState&&!I._readableState.ended||b&&I._writableState&&!I._writableState.ended)return E(_wr)}}function f(I){if(!(!I||l)){l=I;for(let C of r)C.destroy(I)}}}function yWa(e){return e}function zCi(e){return!!e._readableState||!!e._writableState}function r4e(e){return typeof e._duplexState=="number"&&zCi(e)}function bWa(e){return!!e._readableState&&e._readableState.ended}function EWa(e){return!!e._writableState&&e._writableState.ended}function SWa(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===Ayt?null:r}function vWa(e){return r4e(e)&&e.readable}function BWa(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function qCi(e){return BWa(e)?e.byteLength:1024}function xCi(){}function wWa(){this.destroy(new Error("Stream aborted."))}function TWa(e){return e._writev!==uyt.prototype._writev&&e._writev!==t4e.prototype._writev}$Ci.exports={pipeline:jCi,pipelinePromise:_Wa,isStream:zCi,isStreamx:r4e,isEnded:bWa,isFinished:EWa,getStreamError:SWa,Stream:e4e,Writable:uyt,Readable:lyt,Duplex:t4e,Transform:gyt,PassThrough:Bwr}});var fyt=H((t2u,e_i)=>{function RWa(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function NWa(e){return Buffer.isEncoding(e)}function DWa(e,t,r){return Buffer.alloc(e,t,r)}function kWa(e){return Buffer.allocUnsafe(e)}function xWa(e){return Buffer.allocUnsafeSlow(e)}function GWa(e,t){return Buffer.byteLength(e,t)}function FWa(e,t){return Buffer.compare(e,t)}function ZWa(e,t){return Buffer.concat(e,t)}function LWa(e,t,r,n,a){return ob(e).copy(t,r,n,a)}function VWa(e,t){return ob(e).equals(t)}function PWa(e,t,r,n,a){return ob(e).fill(t,r,n,a)}function WWa(e,t,r){return Buffer.from(e,t,r)}function OWa(e,t,r,n){return ob(e).includes(t,r,n)}function MWa(e,t,r,n){return ob(e).indexOf(t,r,n)}function HWa(e,t,r,n){return ob(e).lastIndexOf(t,r,n)}function YWa(e){return ob(e).swap16()}function QWa(e){return ob(e).swap32()}function XWa(e){return ob(e).swap64()}function ob(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function JWa(e,t,r,n){return ob(e).toString(t,r,n)}function UWa(e,t,r,n,a){return ob(e).write(t,r,n,a)}function KWa(e,t,r){return ob(e).writeDoubleLE(t,r)}function jWa(e,t,r){return ob(e).writeFloatLE(t,r)}function zWa(e,t,r){return ob(e).writeUInt32LE(t,r)}function qWa(e,t,r){return ob(e).writeInt32LE(t,r)}function $Wa(e,t){return ob(e).readDoubleLE(t)}function eOa(e,t){return ob(e).readFloatLE(t)}function tOa(e,t){return ob(e).readUInt32LE(t)}function rOa(e,t){return ob(e).readInt32LE(t)}function nOa(e,t,r){return ob(e).writeDoubleBE(t,r)}function iOa(e,t,r){return ob(e).writeFloatBE(t,r)}function sOa(e,t,r){return ob(e).writeUInt32BE(t,r)}function oOa(e,t,r){return ob(e).writeInt32BE(t,r)}function aOa(e,t){return ob(e).readDoubleBE(t)}function cOa(e,t){return ob(e).readFloatBE(t)}function lOa(e,t){return ob(e).readUInt32BE(t)}function uOa(e,t){return ob(e).readInt32BE(t)}e_i.exports={isBuffer:RWa,isEncoding:NWa,alloc:DWa,allocUnsafe:kWa,allocUnsafeSlow:xWa,byteLength:GWa,compare:FWa,concat:ZWa,copy:LWa,equals:VWa,fill:PWa,from:WWa,includes:OWa,indexOf:MWa,lastIndexOf:HWa,swap16:YWa,swap32:QWa,swap64:XWa,toBuffer:ob,toString:JWa,write:UWa,writeDoubleLE:KWa,writeFloatLE:jWa,writeUInt32LE:zWa,writeInt32LE:qWa,readDoubleLE:$Wa,readFloatLE:eOa,readUInt32LE:tOa,readInt32LE:rOa,writeDoubleBE:nOa,writeFloatBE:iOa,writeUInt32BE:sOa,writeInt32BE:oOa,readDoubleBE:aOa,readFloatBE:cOa,readUInt32BE:lOa,readInt32BE:uOa}});var Vwr=H(_Re=>{var qC=fyt(),gOa="0000000000000000000",AOa="7777777777777777777",Iyt=48,t_i=qC.from([117,115,116,97,114,0]),dOa=qC.from([Iyt,Iyt]),pOa=qC.from([117,115,116,97,114,32]),fOa=qC.from([32,0]),IOa=4095,a4e=257,Lwr=263;_Re.decodeLongPath=function(t,r){return CRe(t,0,t.length,r)};_Re.encodePax=function(t){let r="";t.name&&(r+=Zwr(" path="+t.name+` -`)),t.linkname&&(r+=Zwr(" linkpath="+t.linkname+` -`));let n=t.pax;if(n)for(let a in n)r+=Zwr(" "+a+"="+n[a]+` -`);return qC.from(r)};_Re.decodePax=function(t){let r={};for(;t.length;){let n=0;for(;n100;){let o=n.indexOf("/");if(o===-1)return null;a+=a?"/"+n.slice(0,o):n.slice(0,o),n=n.slice(o+1)}return qC.byteLength(n)>100||qC.byteLength(a)>155||t.linkname&&qC.byteLength(t.linkname)>100?null:(qC.write(r,n),qC.write(r,jae(t.mode&IOa,6),100),qC.write(r,jae(t.uid,6),108),qC.write(r,jae(t.gid,6),116),EOa(t.size,r,124),qC.write(r,jae(t.mtime.getTime()/1e3|0,11),136),r[156]=Iyt+yOa(t.type),t.linkname&&qC.write(r,t.linkname,157),qC.copy(t_i,r,a4e),qC.copy(dOa,r,Lwr),t.uname&&qC.write(r,t.uname,265),t.gname&&qC.write(r,t.gname,297),qC.write(r,jae(t.devmajor||0,6),329),qC.write(r,jae(t.devminor||0,6),337),a&&qC.write(r,a,345),qC.write(r,jae(n_i(r),6),148),r)};_Re.decode=function(t,r,n){let a=t[156]===0?0:t[156]-Iyt,o=CRe(t,0,100,r),l=Kae(t,100,8),A=Kae(t,108,8),f=Kae(t,116,8),I=Kae(t,124,12),C=Kae(t,136,12),b=_Oa(a),E=t[157]===0?null:CRe(t,157,100,r),N=CRe(t,265,32),B=CRe(t,297,32),F=Kae(t,329,8),Q=Kae(t,337,8),X=n_i(t);if(X===8*32)return null;if(X!==Kae(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(hOa(t))t[345]&&(o=CRe(t,345,155,r)+"/"+o);else if(!mOa(t)){if(!n)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:l,uid:A,gid:f,size:I,mtime:new Date(1e3*C),type:b,linkname:E,uname:N,gname:B,devmajor:F,devminor:Q,pax:null}};function hOa(e){return qC.equals(t_i,e.subarray(a4e,a4e+6))}function mOa(e){return qC.equals(pOa,e.subarray(a4e,a4e+6))&&qC.equals(fOa,e.subarray(Lwr,Lwr+2))}function COa(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function _Oa(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function yOa(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function r_i(e,t,r,n){for(;rt?AOa.slice(0,t)+" ":gOa.slice(0,t-e.length)+e+" "}function bOa(e,t,r){t[r]=128;for(let n=11;n>0;n--)t[r+n]=e&255,e=Math.floor(e/256)}function EOa(e,t,r){e.toString(8).length>11?bOa(e,t,r):qC.write(t,jae(e,11),r)}function SOa(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],n;for(n=e.length-1;n>0;n--){let l=e[n];t?r.push(l):r.push(255-l)}let a=0,o=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e}});var c_i=H((n2u,a_i)=>{var{Writable:vOa,Readable:BOa,getStreamError:i_i}=Fwr(),wOa=Cwr(),s_i=fyt(),yRe=Vwr(),TOa=s_i.alloc(0),Wwr=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new wOa,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return TOa;let r=this._next(t);if(t===r.byteLength)return r;let n=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),n.push(r);return s_i.concat(n)}_next(t){let r=this.queue.peek(),n=r.byteLength-this._offset;if(t>=n){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=n,this.shifted+=n,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},Owr=class extends BOa{constructor(t,r,n){super(),this.header=r,this.offset=n,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(i_i(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=o_i(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},Mwr=class extends vOa{constructor(t){super(t),t||(t={}),this._buffer=new Wwr,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=Pwr,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=yRe.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=yRe.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=yRe.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=yRe.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?yRe.decodePax(t):Object.assign({},this._paxGlobal,yRe.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=o_i(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new Owr(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=Pwr,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(i_i(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,n=null,a=null,o=null,l=this;return this.on("entry",I),this.on("error",E=>{t=E}),this.on("close",C),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return b(null)},throw(E){return b(E)}};function A(E){if(!o)return;let N=o;o=null,N(E)}function f(E,N){if(t)return N(t);if(a){E({value:a,done:!1}),a=null;return}r=E,n=N,A(null),l._finished&&r&&(r({value:void 0,done:!0}),r=n=null)}function I(E,N,B){o=B,N.on("error",Pwr),r?(r({value:N,done:!1}),r=n=null):a=N}function C(){A(t),r&&(t?n(t):r({value:void 0,done:!0}),r=n=null)}function b(E){return l.destroy(E),A(E),new Promise((N,B)=>{if(l.destroyed)return N({value:void 0,done:!0});l.once("close",function(){E?B(E):N({value:void 0,done:!0})})})}}};a_i.exports=function(t){return new Mwr(t)};function Pwr(){}function o_i(e){return e&=511,e&&512-e}});var u_i=H((i2u,Hwr)=>{var l_i={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{Hwr.exports=wt("fs").constants||l_i}catch{Hwr.exports=l_i}});var f_i=H((s2u,p_i)=>{var{Readable:ROa,Writable:NOa,getStreamError:g_i}=Fwr(),ome=fyt(),bRe=u_i(),hyt=Vwr(),DOa=493,kOa=420,A_i=ome.alloc(1024),Qwr=class extends NOa{constructor(t,r,n){super({mapWritable:GOa,eagerOpen:!0}),this.written=0,this.header=r,this._callback=n,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?ome.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?ome.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),d_i(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return g_i(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},Xwr=class extends ROa{constructor(t){super(t),this._drain=Ywr,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,n){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(n=r,r=null),n||(n=Ywr),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=xOa(t.mode)),t.mode||(t.mode=t.type==="directory"?DOa:kOa),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=ome.from(r));let a=new Qwr(this,t,n);return ome.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(A_i),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=hyt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=hyt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),n={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(hyt.encode(n)),this.push(r),d_i(this,r.byteLength),n.size=t.size,n.type=t.type,this.push(hyt.encode(n))}_doDrain(){let t=this._drain;this._drain=Ywr,t()}_predestroy(){let t=g_i(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};p_i.exports=function(t){return new Xwr(t)};function xOa(e){switch(e&bRe.S_IFMT){case bRe.S_IFBLK:return"block-device";case bRe.S_IFCHR:return"character-device";case bRe.S_IFDIR:return"directory";case bRe.S_IFIFO:return"fifo";case bRe.S_IFLNK:return"symlink"}return"file"}function Ywr(){}function d_i(e,t){t&=511,t&&e.push(A_i.subarray(0,512-t))}function GOa(e){return ome.isBuffer(e)?e:ome.from(e)}});var I_i=H(Jwr=>{Jwr.extract=c_i();Jwr.pack=f_i()});var q_i=H((Q2u,z_i)=>{"use strict";var YOa=e7t(),vRe=z6t();function j_i(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function iTr(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(vRe("no-hyperlink")||vRe("no-hyperlinks")||vRe("hyperlink=false")||vRe("hyperlink=never"))return!1;if(vRe("hyperlink=true")||vRe("hyperlink=always")||"NETLIFY"in t)return!0;if(!YOa.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=j_i(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=j_i(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}z_i.exports={supportsHyperlink:iTr,stdout:iTr(process.stdout),stderr:iTr(process.stderr)}});var oTr=H((mSu,c0i)=>{"use strict";var zOa=function(t){return qOa(t)&&!$Oa(t)};function qOa(e){return!!e&&typeof e=="object"}function $Oa(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||r3a(e)}var e3a=typeof Symbol=="function"&&Symbol.for,t3a=e3a?Symbol.for("react.element"):60103;function r3a(e){return e.$$typeof===t3a}function n3a(e){return Array.isArray(e)?[]:{}}function u4e(e,t){return t.clone!==!1&&t.isMergeableObject(e)?wRe(n3a(e),e,t):e}function i3a(e,t,r){return e.concat(t).map(function(n){return u4e(n,r)})}function s3a(e,t){if(!t.customMerge)return wRe;var r=t.customMerge(e);return typeof r=="function"?r:wRe}function o3a(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function o0i(e){return Object.keys(e).concat(o3a(e))}function a0i(e,t){try{return t in e}catch{return!1}}function a3a(e,t){return a0i(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function c3a(e,t,r){var n={};return r.isMergeableObject(e)&&o0i(e).forEach(function(a){n[a]=u4e(e[a],r)}),o0i(t).forEach(function(a){a3a(e,a)||(a0i(e,a)&&r.isMergeableObject(t[a])?n[a]=s3a(a,r)(e[a],t[a],r):n[a]=u4e(t[a],r))}),n}function wRe(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||i3a,r.isMergeableObject=r.isMergeableObject||zOa,r.cloneUnlessOtherwiseSpecified=u4e;var n=Array.isArray(t),a=Array.isArray(e),o=n===a;return o?n?r.arrayMerge(e,t,r):c3a(e,t,r):u4e(t,r)}wRe.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return wRe(n,a,r)},{})};var l3a=wRe;c0i.exports=l3a});var CRi=H((TNu,mRi)=>{mRi.exports=function(t,r){var n,a;typeof r=="function"?a=r:n=r;var o=Object.keys(t);return(n||[]).concat(o.sort(a)).reduce(function(l,A){return o.indexOf(A)!==-1&&(l[A]=t[A]),l},Object.create(null))}});var RRi=H((LNu,FEt)=>{"use strict";FEt.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r +`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=E0t(t),n=rRe(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=E0t(t),n=rRe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};ZIi.Parser=EBr});var OIi=H(RXe=>{"use strict";var LIi=uBr(),eLa=_Xe(),TXe=EXe(),tLa=cvr(),rLa=bBr(),VIi=SBr();function PIi(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new rLa.LineCounter||null,prettyErrors:t}}function nLa(e,t={}){let{lineCounter:r,prettyErrors:n}=PIi(t),a=new VIi.Parser(r?.addNewLine),o=new LIi.Composer(t),l=Array.from(o.compose(a.parse(e)));if(n&&r)for(let A of l)A.errors.forEach(TXe.prettifyError(e,r)),A.warnings.forEach(TXe.prettifyError(e,r));return l.length>0?l:Object.assign([],{empty:!0},o.streamInfo())}function WIi(e,t={}){let{lineCounter:r,prettyErrors:n}=PIi(t),a=new VIi.Parser(r?.addNewLine),o=new LIi.Composer(t),l=null;for(let A of o.compose(a.parse(e),!0,e.length))if(!l)l=A;else if(l.options.logLevel!=="silent"){l.errors.push(new TXe.YAMLParseError(A.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(l.errors.forEach(TXe.prettifyError(e,r)),l.warnings.forEach(TXe.prettifyError(e,r))),l}function iLa(e,t,r){let n;typeof t=="function"?n=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=WIi(e,r);if(!a)return null;if(a.warnings.forEach(o=>tLa.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:n},r))}function sLa(e,t,r){let n=null;if(typeof t=="function"||Array.isArray(t)?n=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new eLa.Document(e,n,r).toString(r)}RXe.parse=iLa;RXe.parseAllDocuments=nLa;RXe.parseDocument=WIi;RXe.stringify=sLa});var HIi=H(J0=>{"use strict";var oLa=uBr(),aLa=_Xe(),cLa=Yvr(),vBr=EXe(),lLa=oXe(),Pae=C0(),uLa=Fae(),gLa=gT(),ALa=Lae(),dLa=Vae(),pLa=y0t(),fLa=_Br(),ILa=bBr(),hLa=SBr(),S0t=OIi(),MIi=rXe();J0.Composer=oLa.Composer;J0.Document=aLa.Document;J0.Schema=cLa.Schema;J0.YAMLError=vBr.YAMLError;J0.YAMLParseError=vBr.YAMLParseError;J0.YAMLWarning=vBr.YAMLWarning;J0.Alias=lLa.Alias;J0.isAlias=Pae.isAlias;J0.isCollection=Pae.isCollection;J0.isDocument=Pae.isDocument;J0.isMap=Pae.isMap;J0.isNode=Pae.isNode;J0.isPair=Pae.isPair;J0.isScalar=Pae.isScalar;J0.isSeq=Pae.isSeq;J0.Pair=uLa.Pair;J0.Scalar=gLa.Scalar;J0.YAMLMap=ALa.YAMLMap;J0.YAMLSeq=dLa.YAMLSeq;J0.CST=pLa;J0.Lexer=fLa.Lexer;J0.LineCounter=ILa.LineCounter;J0.Parser=hLa.Parser;J0.parse=S0t.parse;J0.parseAllDocuments=S0t.parseAllDocuments;J0.parseDocument=S0t.parseDocument;J0.stringify=S0t.stringify;J0.visit=MIi.visit;J0.visitAsync=MIi.visitAsync});var zIi=H((kEu,DXe)=>{var JX=wt("path"),NXe=wt("fs"),_La=wt("os"),QIi=NXe.promises.readFile;function yLa(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function N0t(e){return JX.dirname(e)||JX.sep}var TBr=(e,t)=>JSON.parse(t),R0t=typeof __webpack_require__=="function"?__non_webpack_require__:wt,XIi=Object.freeze({".js":R0t,".json":R0t,".cjs":R0t,noExt:TBr});DXe.exports.defaultLoadersSync=XIi;var wBr=async e=>{try{return(await import(e)).default}catch(t){try{return R0t(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},JIi=Object.freeze({".js":wBr,".mjs":wBr,".cjs":wBr,".json":TBr,noExt:TBr});DXe.exports.defaultLoaders=JIi;function UIi(e,t,r){let n={stopDir:_La.homedir(),searchPlaces:yLa(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?XIi:JIi,...t.loaders}};return n.searchPlaces.forEach(a=>{let o=JX.extname(a)||"noExt",l=n.loaders[o];if(!l)throw new Error(`Missing loader for extension "${a}"`);if(typeof l!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof l}.`)}),n}function D0t(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,n)=>r===void 0?r:r[n],t)||null}function KIi(e){if(!e)throw new Error("load must pass a non-empty string")}function k0t(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var jIi=e=>(t,r,n)=>(e&&t.set(r,n),n);DXe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=UIi(t,r??{},!1),C=new Map,b=new Map,E=jIi(I);return{async search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=JX.join(Q,ae);try{await NXe.promises.access(ne)}catch{continue}let ce=String(await QIi(ne)),fe=JX.extname(ae)||"noExt",ue=a[fe];if(ae==="package.json"){let be=await ue(ne,ce),Se=D0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ce.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(k0t(ue,fe),B.config=await ue(ne,ce)),B.filepath=ne;break e}}if(Q===A||Q===N0t(Q))break e;Q=N0t(Q)}let X=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,X);return X},async load(N){KIi(N);let B=JX.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=JX.parse(B),X=Q||"noExt",ae=a[X];k0t(ae,X);let ne=String(await QIi(B));if(F==="package.json"){let ue=await ae(B,ne);return E(b,B,f({config:D0t(o,ue),filepath:B}))}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({config:void 0,filepath:B,isEmpty:!0})):(ce.config=fe?void 0:await ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}};DXe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=UIi(t,r??{},!0),C=new Map,b=new Map,E=jIi(I);return{search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=JX.join(Q,ae);try{NXe.accessSync(ne)}catch{continue}let ce=JX.extname(ae)||"noExt",fe=a[ce],ue=String(NXe.readFileSync(ne));if(ae==="package.json"){let be=fe(ne,ue),Se=D0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ue.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(k0t(fe,ce),B.config=fe(ne,ue)),B.filepath=ne;break e}}if(Q===A||Q===N0t(Q))break e;Q=N0t(Q)}let X=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,X);return X},load(N){KIi(N);let B=JX.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=JX.parse(B),X=Q||"noExt",ae=a[X];k0t(ae,X);let ne=String(NXe.readFileSync(B));if(F==="package.json"){let ue=ae(B,ne);return f({config:D0t(o,ue),filepath:B})}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({filepath:B,config:void 0,isEmpty:!0})):(ce.config=fe?void 0:ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}}});var ZBr=H((I2u,Phi)=>{Phi.exports=wt("stream")});var Qhi=H((h2u,Yhi)=>{"use strict";function Whi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ohi(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,a=""+n.data;n=n.next;)a+=r+n.data;return a}},{key:"concat",value:function(r){if(this.length===0)return P0t.alloc(0);for(var n=P0t.allocUnsafe(r>>>0),a=this.head,o=0;a;)_9a(a.data,n,o),o+=a.data.length,a=a.next;return n}},{key:"consume",value:function(r,n){var a;return rl.length?l.length:r;if(A===l.length?o+=l:o+=l.slice(0,r),r-=A,r===0){A===l.length?(++a,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=l.slice(A));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var n=P0t.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(n),r-=a.data.length;a=a.next;){var l=a.data,A=r>l.length?l.length:r;if(l.copy(n,n.length-r,0,A),r-=A,r===0){A===l.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=l.slice(A));break}++o}return this.length-=o,n}},{key:C9a,value:function(r,n){return LBr(this,Ohi(Ohi({},n),{},{depth:0,customInspect:!1}))}}]),e}()});var PBr=H((m2u,Jhi)=>{"use strict";function y9a(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return n||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(VBr,this,e)):process.nextTick(VBr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(W0t,r):(r._writableState.errorEmitted=!0,process.nextTick(Xhi,r,o)):process.nextTick(Xhi,r,o):t?(process.nextTick(W0t,r),t(o)):process.nextTick(W0t,r)}),this)}function Xhi(e,t){VBr(e,t),W0t(e)}function W0t(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function b9a(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function VBr(e,t){e.emit("error",t)}function E9a(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}Jhi.exports={destroy:y9a,undestroy:b9a,errorOrDestroy:E9a}});var Wae=H((C2u,jhi)=>{"use strict";var Khi={};function QM(e,t,r){r||(r=Error);function n(o,l,A){return typeof t=="string"?t:t(o,l,A)}class a extends r{constructor(l,A,f){super(n(l,A,f))}}a.prototype.name=r.name,a.prototype.code=e,Khi[e]=a}function Uhi(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(n=>String(n)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function S9a(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function v9a(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function B9a(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}QM("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);QM("ERR_INVALID_ARG_TYPE",function(e,t,r){let n;typeof t=="string"&&S9a(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";let a;if(v9a(e," argument"))a=`The ${e} ${n} ${Uhi(t,"type")}`;else{let o=B9a(e,".")?"property":"argument";a=`The "${e}" ${o} ${n} ${Uhi(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);QM("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");QM("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});QM("ERR_STREAM_PREMATURE_CLOSE","Premature close");QM("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});QM("ERR_MULTIPLE_CALLBACK","Callback called multiple times");QM("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");QM("ERR_STREAM_WRITE_AFTER_END","write after end");QM("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);QM("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);QM("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");jhi.exports.codes=Khi});var WBr=H((_2u,zhi)=>{"use strict";var w9a=Wae().codes.ERR_INVALID_OPT_VALUE;function T9a(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function R9a(e,t,r,n){var a=T9a(t,n,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=n?r:"highWaterMark";throw new w9a(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}zhi.exports={getHighWaterMark:R9a}});var qhi=H((y2u,OBr)=>{typeof Object.create=="function"?OBr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:OBr.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var Oae=H((b2u,HBr)=>{try{if(MBr=wt("util"),typeof MBr.inherits!="function")throw"";HBr.exports=MBr.inherits}catch{HBr.exports=qhi()}var MBr});var emi=H((E2u,$hi)=>{$hi.exports=wt("util").deprecate});var XBr=H((S2u,omi)=>{"use strict";omi.exports=Hv;function rmi(e){var t=this;this.next=null,this.entry=null,this.finish=function(){rVa(t,e)}}var oRe;Hv.WritableState=VXe;var N9a={deprecate:emi()},nmi=ZBr(),M0t=wt("buffer").Buffer,D9a=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function k9a(e){return M0t.from(e)}function x9a(e){return M0t.isBuffer(e)||e instanceof D9a}var QBr=PBr(),G9a=WBr(),F9a=G9a.getHighWaterMark,Mae=Wae().codes,Z9a=Mae.ERR_INVALID_ARG_TYPE,L9a=Mae.ERR_METHOD_NOT_IMPLEMENTED,V9a=Mae.ERR_MULTIPLE_CALLBACK,P9a=Mae.ERR_STREAM_CANNOT_PIPE,W9a=Mae.ERR_STREAM_DESTROYED,O9a=Mae.ERR_STREAM_NULL_VALUES,M9a=Mae.ERR_STREAM_WRITE_AFTER_END,H9a=Mae.ERR_UNKNOWN_ENCODING,aRe=QBr.errorOrDestroy;Oae()(Hv,nmi);function Y9a(){}function VXe(e,t,r){oRe=oRe||Jhe(),e=e||{},typeof r!="boolean"&&(r=t instanceof oRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=F9a(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){z9a(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new rmi(this)}VXe.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(VXe.prototype,"buffer",{get:N9a.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var O0t;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(O0t=Function.prototype[Symbol.hasInstance],Object.defineProperty(Hv,Symbol.hasInstance,{value:function(t){return O0t.call(this,t)?!0:this!==Hv?!1:t&&t._writableState instanceof VXe}})):O0t=function(t){return t instanceof this};function Hv(e){oRe=oRe||Jhe();var t=this instanceof oRe;if(!t&&!O0t.call(Hv,this))return new Hv(e);this._writableState=new VXe(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),nmi.call(this)}Hv.prototype.pipe=function(){aRe(this,new P9a)};function Q9a(e,t){var r=new M9a;aRe(e,r),process.nextTick(t,r)}function X9a(e,t,r,n){var a;return r===null?a=new O9a:typeof r!="string"&&!t.objectMode&&(a=new Z9a("chunk",["string","Buffer"],r)),a?(aRe(e,a),process.nextTick(n,a),!1):!0}Hv.prototype.write=function(e,t,r){var n=this._writableState,a=!1,o=!n.objectMode&&x9a(e);return o&&!M0t.isBuffer(e)&&(e=k9a(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=Y9a),n.ending?Q9a(this,r):(o||X9a(this,n,e,r))&&(n.pendingcb++,a=U9a(this,n,o,e,t,r)),a};Hv.prototype.cork=function(){this._writableState.corked++};Hv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&imi(this,e))};Hv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new H9a(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Hv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function J9a(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=M0t.from(t,r)),t}Object.defineProperty(Hv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function U9a(e,t,r,n,a,o){if(!r){var l=J9a(t,n,a);n!==l&&(r=!0,a="buffer",n=l)}var A=t.objectMode?1:n.length;t.length+=A;var f=t.length{"use strict";var nVa=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};cmi.exports=j8;var ami=KBr(),UBr=XBr();Oae()(j8,ami);for(JBr=nVa(UBr.prototype),H0t=0;H0t{var Q0t=wt("buffer"),z8=Q0t.Buffer;function lmi(e,t){for(var r in e)t[r]=e[r]}z8.from&&z8.alloc&&z8.allocUnsafe&&z8.allocUnsafeSlow?umi.exports=Q0t:(lmi(Q0t,jBr),jBr.Buffer=Uhe);function Uhe(e,t,r){return z8(e,t,r)}Uhe.prototype=Object.create(z8.prototype);lmi(z8,Uhe);Uhe.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return z8(e,t,r)};Uhe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=z8(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};Uhe.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return z8(e)};Uhe.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Q0t.SlowBuffer(e)}});var $Br=H(dmi=>{"use strict";var qBr=gmi().Buffer,Ami=qBr.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function oVa(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function aVa(e){var t=oVa(e);if(typeof t!="string"&&(qBr.isEncoding===Ami||!Ami(e)))throw new Error("Unknown encoding: "+e);return t||e}dmi.StringDecoder=PXe;function PXe(e){this.encoding=aVa(e);var t;switch(this.encoding){case"utf16le":this.text=dVa,this.end=pVa,t=4;break;case"utf8":this.fillLast=uVa,t=4;break;case"base64":this.text=fVa,this.end=IVa,t=3;break;default:this.write=hVa,this.end=mVa;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=qBr.allocUnsafe(t)}PXe.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function cVa(e,t,r){var n=t.length-1;if(n=0?(a>0&&(e.lastNeed=a-1),a):--n=0?(a>0&&(e.lastNeed=a-2),a):--n=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function lVa(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function uVa(e){var t=this.lastTotal-this.lastNeed,r=lVa(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function gVa(e,t){var r=cVa(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function AVa(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function dVa(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function pVa(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function fVa(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function IVa(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function hVa(e){return e.toString(this.encoding)}function mVa(e){return e&&e.length?this.write(e):""}});var X0t=H((w2u,Imi)=>{"use strict";var pmi=Wae().codes.ERR_STREAM_PREMATURE_CLOSE;function CVa(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),a=0;a{"use strict";var J0t;function Hae(e,t,r){return t=bVa(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function bVa(e){var t=EVa(e,"string");return typeof t=="symbol"?t:String(t)}function EVa(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var SVa=X0t(),Yae=Symbol("lastResolve"),Khe=Symbol("lastReject"),WXe=Symbol("error"),U0t=Symbol("ended"),jhe=Symbol("lastPromise"),ewr=Symbol("handlePromise"),zhe=Symbol("stream");function Qae(e,t){return{value:e,done:t}}function vVa(e){var t=e[Yae];if(t!==null){var r=e[zhe].read();r!==null&&(e[jhe]=null,e[Yae]=null,e[Khe]=null,t(Qae(r,!1)))}}function BVa(e){process.nextTick(vVa,e)}function wVa(e,t){return function(r,n){e.then(function(){if(t[U0t]){r(Qae(void 0,!0));return}t[ewr](r,n)},n)}}var TVa=Object.getPrototypeOf(function(){}),RVa=Object.setPrototypeOf((J0t={get stream(){return this[zhe]},next:function(){var t=this,r=this[WXe];if(r!==null)return Promise.reject(r);if(this[U0t])return Promise.resolve(Qae(void 0,!0));if(this[zhe].destroyed)return new Promise(function(l,A){process.nextTick(function(){t[WXe]?A(t[WXe]):l(Qae(void 0,!0))})});var n=this[jhe],a;if(n)a=new Promise(wVa(n,this));else{var o=this[zhe].read();if(o!==null)return Promise.resolve(Qae(o,!1));a=new Promise(this[ewr])}return this[jhe]=a,a}},Hae(J0t,Symbol.asyncIterator,function(){return this}),Hae(J0t,"return",function(){var t=this;return new Promise(function(r,n){t[zhe].destroy(null,function(a){if(a){n(a);return}r(Qae(void 0,!0))})})}),J0t),TVa),NVa=function(t){var r,n=Object.create(RVa,(r={},Hae(r,zhe,{value:t,writable:!0}),Hae(r,Yae,{value:null,writable:!0}),Hae(r,Khe,{value:null,writable:!0}),Hae(r,WXe,{value:null,writable:!0}),Hae(r,U0t,{value:t._readableState.endEmitted,writable:!0}),Hae(r,ewr,{value:function(o,l){var A=n[zhe].read();A?(n[jhe]=null,n[Yae]=null,n[Khe]=null,o(Qae(A,!1))):(n[Yae]=o,n[Khe]=l)},writable:!0}),r));return n[jhe]=null,SVa(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=n[Khe];o!==null&&(n[jhe]=null,n[Yae]=null,n[Khe]=null,o(a)),n[WXe]=a;return}var l=n[Yae];l!==null&&(n[jhe]=null,n[Yae]=null,n[Khe]=null,l(Qae(void 0,!0))),n[U0t]=!0}),t.on("readable",BVa.bind(null,n)),n};hmi.exports=NVa});var bmi=H((R2u,ymi)=>{"use strict";function Cmi(e,t,r,n,a,o,l){try{var A=e[o](l),f=A.value}catch(I){r(I);return}A.done?t(f):Promise.resolve(f).then(n,a)}function DVa(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function l(f){Cmi(o,n,a,l,A,"next",f)}function A(f){Cmi(o,n,a,l,A,"throw",f)}l(void 0)})}}function _mi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function kVa(e){for(var t=1;t{"use strict";kmi.exports=y_;var cRe;y_.ReadableState=Bmi;var N2u=wt("events").EventEmitter,vmi=function(t,r){return t.listeners(r).length},MXe=ZBr(),K0t=wt("buffer").Buffer,VVa=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function PVa(e){return K0t.from(e)}function WVa(e){return K0t.isBuffer(e)||e instanceof VVa}var twr=wt("util"),Sm;twr&&twr.debuglog?Sm=twr.debuglog("stream"):Sm=function(){};var OVa=Qhi(),cwr=PBr(),MVa=WBr(),HVa=MVa.getHighWaterMark,j0t=Wae().codes,YVa=j0t.ERR_INVALID_ARG_TYPE,QVa=j0t.ERR_STREAM_PUSH_AFTER_EOF,XVa=j0t.ERR_METHOD_NOT_IMPLEMENTED,JVa=j0t.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,lRe,rwr,nwr;Oae()(y_,MXe);var OXe=cwr.errorOrDestroy,iwr=["error","close","destroy","pause","resume"];function UVa(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function Bmi(e,t,r){cRe=cRe||Jhe(),e=e||{},typeof r!="boolean"&&(r=t instanceof cRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=HVa(this,e,"readableHighWaterMark",r),this.buffer=new OVa,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(lRe||(lRe=$Br().StringDecoder),this.decoder=new lRe(e.encoding),this.encoding=e.encoding)}function y_(e){if(cRe=cRe||Jhe(),!(this instanceof y_))return new y_(e);var t=this instanceof cRe;this._readableState=new Bmi(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),MXe.call(this)}Object.defineProperty(y_.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});y_.prototype.destroy=cwr.destroy;y_.prototype._undestroy=cwr.undestroy;y_.prototype._destroy=function(e,t){t(e)};y_.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=K0t.from(e,t),t=""),n=!0),wmi(this,e,t,!1,n)};y_.prototype.unshift=function(e){return wmi(this,e,null,!0,!1)};function wmi(e,t,r,n,a){Sm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,zVa(e,o);else{var l;if(a||(l=KVa(o,t)),l)OXe(e,l);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==K0t.prototype&&(t=PVa(t)),n)o.endEmitted?OXe(e,new JVa):swr(e,o,t,!0);else if(o.ended)OXe(e,new QVa);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?swr(e,o,t,!1):awr(e,o)):swr(e,o,t,!1)}else n||(o.reading=!1,awr(e,o))}return!o.ended&&(o.length=Emi?e=Emi:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function Smi(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=jVa(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}y_.prototype.read=function(e){Sm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Sm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?owr(this):z0t(this),null;if(e=Smi(e,t),e===0&&t.ended)return t.length===0&&owr(this),null;var n=t.needReadable;Sm("need readable",n),(t.length===0||t.length-e0?a=Nmi(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&owr(this)),a!==null&&this.emit("data",a),a};function zVa(e,t){if(Sm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?z0t(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,Tmi(e)))}}function z0t(e){var t=e._readableState;Sm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Sm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(Tmi,e))}function Tmi(e){var t=e._readableState;Sm("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,lwr(e)}function awr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(qVa,e,t))}function qVa(e,t){for(;!t.reading&&!t.ended&&(t.length1&&Dmi(n.pipes,e)!==-1)&&!I&&(Sm("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function E(Q){Sm("onerror",Q),F(),e.removeListener("error",E),vmi(e,"error")===0&&OXe(e,Q)}UVa(e,"error",E);function N(){e.removeListener("finish",B),F()}e.once("close",N);function B(){Sm("onfinish"),e.removeListener("close",N),F()}e.once("finish",B);function F(){Sm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Sm("pipe resume"),r.resume()),e};function $Va(e){return function(){var r=e._readableState;Sm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&vmi(e,"data")&&(r.flowing=!0,lwr(e))}}y_.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Sm("on readable",n.length,n.reading),n.length?z0t(this):n.reading||process.nextTick(ePa,this)),r};y_.prototype.addListener=y_.prototype.on;y_.prototype.removeListener=function(e,t){var r=MXe.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(Rmi,this),r};y_.prototype.removeAllListeners=function(e){var t=MXe.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(Rmi,this),t};function Rmi(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function ePa(e){Sm("readable nexttick read 0"),e.read(0)}y_.prototype.resume=function(){var e=this._readableState;return e.flowing||(Sm("resume"),e.flowing=!e.readableListening,tPa(this,e)),e.paused=!1,this};function tPa(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(rPa,e,t))}function rPa(e,t){Sm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),lwr(e),t.flowing&&!t.reading&&e.read(0)}y_.prototype.pause=function(){return Sm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Sm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function lwr(e){var t=e._readableState;for(Sm("flow",t.flowing);t.flowing&&e.read()!==null;);}y_.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Sm("wrapped end"),r.decoder&&!r.ended){var l=r.decoder.end();l&&l.length&&t.push(l)}t.push(null)}),e.on("data",function(l){if(Sm("wrapped data"),r.decoder&&(l=r.decoder.write(l)),!(r.objectMode&&l==null)&&!(!r.objectMode&&(!l||!l.length))){var A=t.push(l);A||(n=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(A){return function(){return e[A].apply(e,arguments)}}(a));for(var o=0;o=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function owr(e){var t=e._readableState;Sm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(nPa,t,e))}function nPa(e,t){if(Sm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(y_.from=function(e,t){return nwr===void 0&&(nwr=bmi()),nwr(y_,e,t)});function Dmi(e,t){for(var r=0,n=e.length;r{"use strict";Gmi.exports=see;var q0t=Wae().codes,iPa=q0t.ERR_METHOD_NOT_IMPLEMENTED,sPa=q0t.ERR_MULTIPLE_CALLBACK,oPa=q0t.ERR_TRANSFORM_ALREADY_TRANSFORMING,aPa=q0t.ERR_TRANSFORM_WITH_LENGTH_0,$0t=Jhe();Oae()(see,$0t);function cPa(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new sPa);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";Zmi.exports=HXe;var Fmi=uwr();Oae()(HXe,Fmi);function HXe(e){if(!(this instanceof HXe))return new HXe(e);Fmi.call(this,e)}HXe.prototype._transform=function(e,t,r){r(null,e)}});var Mmi=H((G2u,Omi)=>{"use strict";var gwr;function uPa(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var Wmi=Wae().codes,gPa=Wmi.ERR_MISSING_ARGS,APa=Wmi.ERR_STREAM_DESTROYED;function Vmi(e){if(e)throw e}function dPa(e){return e.setHeader&&typeof e.abort=="function"}function pPa(e,t,r,n){n=uPa(n);var a=!1;e.on("close",function(){a=!0}),gwr===void 0&&(gwr=X0t()),gwr(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,dPa(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(l||new APa("pipe"))}}}function Pmi(e){e()}function fPa(e,t){return e.pipe(t)}function IPa(e){return!e.length||typeof e[e.length-1]!="function"?Vmi:e.pop()}function hPa(){for(var e=arguments.length,t=new Array(e),r=0;r0;return pPa(l,f,I,function(C){a||(a=C),C&&o.forEach(Pmi),!f&&(o.forEach(Pmi),n(a))})});return t.reduce(fPa)}Omi.exports=hPa});var uRe=H((XM,QXe)=>{var YXe=wt("stream");process.env.READABLE_STREAM==="disable"&&YXe?(QXe.exports=YXe.Readable,Object.assign(QXe.exports,YXe),QXe.exports.Stream=YXe):(XM=QXe.exports=KBr(),XM.Stream=YXe||XM,XM.Readable=XM,XM.Writable=XBr(),XM.Duplex=Jhe(),XM.Transform=uwr(),XM.PassThrough=Lmi(),XM.finished=X0t(),XM.pipeline=Mmi())});var Qmi=H((F2u,Ymi)=>{"use strict";var{Buffer:UX}=wt("buffer"),Hmi=Symbol.for("BufferList");function LE(e){if(!(this instanceof LE))return new LE(e);LE._init.call(this,e)}LE._init=function(t){Object.defineProperty(this,Hmi,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};LE.prototype._new=function(t){return new LE(t)};LE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let n=0;nthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};LE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};LE.prototype.copy=function(t,r,n,a){if((typeof n!="number"||n<0)&&(n=0),(typeof a!="number"||a>this.length)&&(a=this.length),n>=this.length||a<=0)return t||UX.alloc(0);let o=!!t,l=this._offset(n),A=a-n,f=A,I=o&&r||0,C=l[1];if(n===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:UX.concat(this._bufs,this.length);for(let b=0;bE)this._bufs[b].copy(t,I,C),I+=E;else{this._bufs[b].copy(t,I,C,C+f),I+=E;break}f-=E,C&&(C=0)}return t.length>I?t.slice(0,I):t};LE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let n=this._offset(t),a=this._offset(r),o=this._bufs.slice(n[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),n[1]!==0&&(o[0]=o[0].slice(n[1])),this._new(o)};LE.prototype.toString=function(t,r,n){return this.slice(r,n).toString(t)};LE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};LE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let n=this._offset(t),a=n[0],o=n[1];for(;a=e.length){let f=l.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=l.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};LE.prototype._match=function(e,t){if(this.length-e{"use strict";var Awr=uRe().Duplex,mPa=Oae(),XXe=Qmi();function TG(e){if(!(this instanceof TG))return new TG(e);if(typeof e=="function"){this._callback=e;let t=function(n){this._callback&&(this._callback(n),this._callback=null)}.bind(this);this.on("pipe",function(n){n.on("error",t)}),this.on("unpipe",function(n){n.removeListener("error",t)}),e=null}XXe._init.call(this,e),Awr.call(this)}mPa(TG,Awr);Object.assign(TG.prototype,XXe.prototype);TG.prototype._new=function(t){return new TG(t)};TG.prototype._write=function(t,r,n){this._appendBuffer(t),typeof n=="function"&&n()};TG.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};TG.prototype.end=function(t){Awr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};TG.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};TG.prototype._isBufferList=function(t){return t instanceof TG||t instanceof XXe||TG.isBufferList(t)};TG.isBufferList=XXe.isBufferList;eyt.exports=TG;eyt.exports.BufferListStream=TG;eyt.exports.BufferList=XXe});var Iwr=H(ARe=>{var CPa=Buffer.alloc,_Pa="0000000000000000000",yPa="7777777777777777777",Xmi=48,Jmi=Buffer.from("ustar\0","binary"),bPa=Buffer.from("00","binary"),EPa=Buffer.from("ustar ","binary"),SPa=Buffer.from(" \0","binary"),vPa=parseInt("7777",8),JXe=257,fwr=263,BPa=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},wPa=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},TPa=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},Umi=function(e,t,r,n){for(;rt?yPa.slice(0,t)+" ":_Pa.slice(0,t-e.length)+e+" "};function RPa(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],n=e.length-1;n>0;n--){var a=e[n];t?r.push(a):r.push(255-a)}var o=0,l=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e};ARe.decodeLongPath=function(e,t){return gRe(e,0,e.length,t)};ARe.encodePax=function(e){var t="";e.name&&(t+=pwr(" path="+e.name+` +`)),e.linkname&&(t+=pwr(" linkpath="+e.linkname+` +`));var r=e.pax;if(r)for(var n in r)t+=pwr(" "+n+"="+r[n]+` +`);return Buffer.from(t)};ARe.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;n+=n?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(n)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(Xae(e.mode&vPa,6),100),t.write(Xae(e.uid,6),108),t.write(Xae(e.gid,6),116),t.write(Xae(e.size,11),124),t.write(Xae(e.mtime.getTime()/1e3|0,11),136),t[156]=Xmi+TPa(e.type),e.linkname&&t.write(e.linkname,157),Jmi.copy(t,JXe),bPa.copy(t,fwr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(Xae(e.devmajor||0,6),329),t.write(Xae(e.devminor||0,6),337),n&&t.write(n,345),t.write(Xae(Kmi(t),6),148),t)};ARe.decode=function(e,t,r){var n=e[156]===0?0:e[156]-Xmi,a=gRe(e,0,100,t),o=Jae(e,100,8),l=Jae(e,108,8),A=Jae(e,116,8),f=Jae(e,124,12),I=Jae(e,136,12),C=wPa(n),b=e[157]===0?null:gRe(e,157,100,t),E=gRe(e,265,32),N=gRe(e,297,32),B=Jae(e,329,8),F=Jae(e,337,8),Q=Kmi(e);if(Q===8*32)return null;if(Q!==Jae(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(Jmi.compare(e,JXe,JXe+6)===0)e[345]&&(a=gRe(e,345,155,t)+"/"+a);else if(!(EPa.compare(e,JXe,JXe+6)===0&&SPa.compare(e,fwr,fwr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return n===0&&a&&a[a.length-1]==="/"&&(n=5),{name:a,mode:o,uid:l,gid:A,size:f,mtime:new Date(1e3*I),type:C,linkname:b,uname:E,gname:N,devmajor:B,devminor:F}}});var rCi=H((V2u,tCi)=>{var zmi=wt("util"),NPa=dwr(),UXe=Iwr(),qmi=uRe().Writable,$mi=uRe().PassThrough,eCi=function(){},jmi=function(e){return e&=511,e&&512-e},DPa=function(e,t){var r=new tyt(e,t);return r.end(),r},kPa=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},tyt=function(e,t){this._parent=e,this.offset=t,$mi.call(this,{autoDestroy:!1})};zmi.inherits(tyt,$mi);tyt.prototype.destroy=function(e){this._parent.destroy(e)};var oee=function(e){if(!(this instanceof oee))return new oee(e);qmi.call(this,e),e=e||{},this._offset=0,this._buffer=NPa(),this._missing=0,this._partial=!1,this._onparse=eCi,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},a=function(E){if(t._locked=!1,E)return t.destroy(E);t._stream||n()},o=function(){t._stream=null;var E=jmi(t._header.size);E?t._parse(E,l):t._parse(512,b),t._locked||n()},l=function(){t._buffer.consume(jmi(t._header.size)),t._parse(512,b),n()},A=function(){var E=t._header.size;t._paxGlobal=UXe.decodePax(r.slice(0,E)),r.consume(E),o()},f=function(){var E=t._header.size;t._pax=UXe.decodePax(r.slice(0,E)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(E),o()},I=function(){var E=t._header.size;this._gnuLongPath=UXe.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},C=function(){var E=t._header.size;this._gnuLongLinkPath=UXe.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},b=function(){var E=t._offset,N;try{N=t._header=UXe.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(B){t.emit("error",B)}if(r.consume(512),!N){t._parse(512,b),n();return}if(N.type==="gnu-long-path"){t._parse(N.size,I),n();return}if(N.type==="gnu-long-link-path"){t._parse(N.size,C),n();return}if(N.type==="pax-global-header"){t._parse(N.size,A),n();return}if(N.type==="pax-header"){t._parse(N.size,f),n();return}if(t._gnuLongPath&&(N.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(N.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=N=kPa(N,t._pax),t._pax=null),t._locked=!0,!N.size||N.type==="directory"){t._parse(512,b),t.emit("entry",N,DPa(t,E),a);return}t._stream=new tyt(t,E),t.emit("entry",N,t._stream,a),t._parse(N.size,o),n()};this._onheader=b,this._parse(512,b)};zmi.inherits(oee,qmi);oee.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};oee.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};oee.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=eCi,this._overflow?this._write(this._overflow,void 0,e):e()}};oee.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(l=e.slice(o),e=e.slice(0,o)),n?n.end(e):a.append(e),this._overflow=l,this._onparse()}};oee.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};tCi.exports=oee});var iCi=H((P2u,nCi)=>{nCi.exports=wt("fs").constants||wt("constants")});var lCi=H((W2u,cCi)=>{var dRe=iCi(),sCi=qur(),nyt=Oae(),xPa=Buffer.alloc,oCi=uRe().Readable,pRe=uRe().Writable,GPa=wt("string_decoder").StringDecoder,ryt=Iwr(),FPa=parseInt("755",8),ZPa=parseInt("644",8),aCi=xPa(1024),mwr=function(){},hwr=function(e,t){t&=511,t&&e.push(aCi.slice(0,512-t))};function LPa(e){switch(e&dRe.S_IFMT){case dRe.S_IFBLK:return"block-device";case dRe.S_IFCHR:return"character-device";case dRe.S_IFDIR:return"directory";case dRe.S_IFIFO:return"fifo";case dRe.S_IFLNK:return"symlink"}return"file"}var iyt=function(e){pRe.call(this),this.written=0,this._to=e,this._destroyed=!1};nyt(iyt,pRe);iyt.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};iyt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var syt=function(){pRe.call(this),this.linkname="",this._decoder=new GPa("utf-8"),this._destroyed=!1};nyt(syt,pRe);syt.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};syt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var KXe=function(){pRe.call(this),this._destroyed=!1};nyt(KXe,pRe);KXe.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};KXe.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var q8=function(e){if(!(this instanceof q8))return new q8(e);oCi.call(this,e),this._drain=mwr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};nyt(q8,oCi);q8.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=mwr);var n=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=LPa(e.mode)),e.mode||(e.mode=e.type==="directory"?FPa:ZPa),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return hwr(n,e.size),a?process.nextTick(r):this._drain=r,new KXe}if(e.type==="symlink"&&!e.linkname){var o=new syt;return sCi(o,function(A){if(A)return n.destroy(),r(A);e.linkname=o.linkname,n._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new KXe;var l=new iyt(this);return this._stream=l,sCi(l,function(A){if(n._stream=null,A)return n.destroy(),r(A);if(l.written!==e.size)return n.destroy(),r(new Error("size mismatch"));hwr(n,e.size),n._finalizing&&n.finalize(),r()}),l}};q8.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(aCi),this.push(null))};q8.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};q8.prototype._encode=function(e){if(!e.pax){var t=ryt.encode(e);if(t){this.push(t);return}}this._encodePax(e)};q8.prototype._encodePax=function(e){var t=ryt.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(ryt.encode(r)),this.push(t),hwr(this,t.length),r.size=e.size,r.type=e.type,this.push(ryt.encode(r))};q8.prototype._read=function(e){var t=this._drain;this._drain=mwr,t()};cCi.exports=q8});var uCi=H(Cwr=>{Cwr.extract=rCi();Cwr.pack=lCi()});var _wr=H(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});qhe.hasPackScripts=MPa;qhe.prepareForPack=HPa;qhe.genPackStream=YPa;qhe.genPackageManifest=ICi;qhe.genPackList=hCi;var fCi=(Pa(),vi(Va)),jXe=yn(),Mh=zs(),gCi=fCi.__importDefault(Ek()),VPa=fCi.__importDefault(uCi()),PPa=wt("zlib"),WPa=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],OPa=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function MPa(e){return!!(jXe.scriptUtils.hasWorkspaceScript(e,"prepack")||jXe.scriptUtils.hasWorkspaceScript(e,"postpack"))}async function HPa(e,{report:t},r){await jXe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let n=Mh.ppath.join(e.cwd,jXe.Manifest.fileName);await Mh.xfs.existsPromise(n)&&await e.manifest.loadFile(n,{baseFs:Mh.xfs}),await r()}finally{await jXe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}async function YPa(e,t){typeof t>"u"&&(t=await hCi(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(Mh.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(Mh.ppath.normalize(o));let n=VPa.default.pack();process.nextTick(async()=>{for(let o of t){let l=Mh.ppath.normalize(o),A=Mh.ppath.resolve(e.cwd,l),f=Mh.ppath.join("package",l),I=await Mh.xfs.lstatPromise(A),C={name:f,mtime:new Date(Mh.constants.SAFE_TIME*1e3)},b=r.has(l)?493:420,E,N,B=new Promise((Q,X)=>{E=Q,N=X}),F=Q=>{Q?N(Q):E()};if(I.isFile()){let Q;l==="package.json"?Q=Buffer.from(JSON.stringify(await ICi(e),null,2)):Q=await Mh.xfs.readFilePromise(A),n.entry({...C,mode:b,type:"file"},Q,F)}else I.isSymbolicLink()?n.entry({...C,mode:b,type:"symlink",linkname:await Mh.xfs.readlinkPromise(A)},F):F(new Error(`Unsupported file type ${I.mode} for ${Mh.npath.fromPortablePath(l)}`));await B}n.finalize()});let a=(0,PPa.createGzip)();return n.pipe(a),a}async function ICi(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}async function hCi(e){let t=e.project,r=t.configuration,n={accept:[],reject:[]};for(let b of OPa)n.reject.push(b);for(let b of WPa)n.accept.push(b);n.reject.push(r.get("rcFilename"));let a=b=>{if(b===null||!b.startsWith(`${e.cwd}/`))return;let E=Mh.ppath.relative(e.cwd,b),N=Mh.ppath.resolve(Mh.PortablePath.root,E);n.reject.push(N)};a(Mh.ppath.resolve(t.cwd,Mh.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(b=>b.populateYarnPaths,t,b=>{a(b)});for(let b of t.workspaces){let E=Mh.ppath.relative(e.cwd,b.cwd);E!==""&&!E.match(/^(\.\.)?\//)&&n.reject.push(`/${E}`)}let o={accept:[],reject:[]},l=e.manifest.publishConfig?.main??e.manifest.main,A=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,I=e.manifest.publishConfig?.bin??e.manifest.bin;l!=null&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,l)),A!=null&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,A)),typeof f=="string"&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,f));for(let b of I.values())o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,b));if(f instanceof Map)for(let[b,E]of f.entries())o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,b)),typeof E=="string"&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,E));let C=e.manifest.files!==null;if(C){o.reject.push("/*");for(let b of e.manifest.files)mCi(o.accept,b,{cwd:Mh.PortablePath.root})}return await QPa(e.cwd,{hasExplicitFileList:C,globalList:n,ignoreList:o})}async function QPa(e,{hasExplicitFileList:t,globalList:r,ignoreList:n}){let a=[],o=new Mh.JailFS(e),l=[[Mh.PortablePath.root,[n]]];for(;l.length>0;){let[A,f]=l.pop(),I=await o.lstatPromise(A);if(!dCi(A,{globalList:r,ignoreLists:I.isDirectory()?null:f}))if(I.isDirectory()){let C=await o.readdirPromise(A),b=!1,E=!1;if(!t||A!==Mh.PortablePath.root)for(let F of C)b=b||F===".gitignore",E=E||F===".npmignore";let N=E?await ACi(o,A,".npmignore"):b?await ACi(o,A,".gitignore"):null,B=N!==null?[N].concat(f):f;dCi(A,{globalList:r,ignoreLists:f})&&(B=[...f,{accept:[],reject:["**/*"]}]);for(let F of C)l.push([Mh.ppath.resolve(A,F),B])}else(I.isFile()||I.isSymbolicLink())&&a.push(Mh.ppath.relative(Mh.PortablePath.root,A))}return a.sort()}async function ACi(e,t,r){let n={accept:[],reject:[]},a=await e.readFilePromise(Mh.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))mCi(n.reject,o,{cwd:t});return n}function XPa(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=Mh.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function mCi(e,t,{cwd:r}){let n=t.trim();n===""||n[0]==="#"||e.push(XPa(n,{cwd:r}))}var uO;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(uO||(uO={}));function dCi(e,{globalList:t,ignoreLists:r}){let n=oyt(e,t.accept);if(n!==uO.None)return n===uO.NegatedMatch;let a=oyt(e,t.reject);if(a!==uO.None)return a===uO.Match;if(r!==null)for(let o of r){let l=oyt(e,o.accept);if(l!==uO.None)return l===uO.NegatedMatch;let A=oyt(e,o.reject);if(A!==uO.None)return A===uO.Match}return!1}function oyt(e,t){let r=t,n=[];for(let a=0;a{"use strict";Object.defineProperty(ywr,"__esModule",{value:!0});var JPa=(Pa(),vi(Va)),CCi=el(),aee=yn(),$8=zs(),fRe=($c(),vi(rg)),ayt=JPa.__importStar(_wr()),zXe=class extends CCi.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=fRe.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=fRe.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=fRe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=fRe.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=fRe.Option.String("--filename",{hidden:!0})}async execute(){let t=await aee.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await aee.Project.find(t,this.context.cwd);if(!n)throw new CCi.WorkspaceRequiredError(r.cwd,this.context.cwd);await ayt.hasPackScripts(n)&&(this.installIfNeeded?await r.install({cache:await aee.Cache.find(t),report:new aee.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?$8.ppath.resolve(this.context.cwd,UPa(a,{workspace:n})):$8.ppath.resolve(n.cwd,"package.tgz");return(await aee.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async A=>{await ayt.prepareForPack(n,{report:A},async()=>{A.reportJson({base:$8.npath.fromPortablePath(n.cwd)});let f=await ayt.genPackList(n);for(let I of f)A.reportInfo(null,$8.npath.fromPortablePath(I)),A.reportJson({location:$8.npath.fromPortablePath(I)});if(!this.dryRun){let I=await ayt.genPackStream(n,f);await $8.xfs.mkdirPromise($8.ppath.dirname(o),{recursive:!0});let C=$8.xfs.createWriteStream(o);I.pipe(C),await new Promise(b=>{C.on("finish",b)})}}),this.dryRun||(A.reportInfo(aee.MessageName.UNNAMED,`Package archive generated in ${aee.formatUtils.pretty(t,o,aee.formatUtils.Type.PATH)}`),A.reportJson({output:$8.npath.fromPortablePath(o)}))})).exitCode()}};zXe.paths=[["pack"]];zXe.usage=fRe.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,--out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});ywr.default=zXe;function UPa(e,{workspace:t}){let r=e.replace("%s",KPa(t)).replace("%v",jPa(t));return $8.npath.toPortablePath(r)}function KPa(e){return e.manifest.name!==null?aee.structUtils.slugifyIdent(e.manifest.name):"package"}function jPa(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var eme=H($he=>{"use strict";Object.defineProperty($he,"__esModule",{value:!0});$he.packUtils=$he.PackCommand=void 0;var bCi=(Pa(),vi(Va)),qXe=yn(),yCi=yn(),ECi=bCi.__importDefault(_Ci());$he.PackCommand=ECi.default;var zPa=bCi.__importStar(_wr());$he.packUtils=zPa;var qPa=["dependencies","devDependencies","peerDependencies"],$Pa="workspace:",eWa=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let n of qPa)for(let a of e.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(a),l=qXe.structUtils.parseRange(a.range);if(l.protocol===$Pa)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new yCi.ReportError(yCi.MessageName.WORKSPACE_NOT_FOUND,`${qXe.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let A;qXe.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||l.selector==="*"?A=o.manifest.version??"0.0.0":l.selector==="~"||l.selector==="^"?A=`${l.selector}${o.manifest.version??"0.0.0"}`:A=l.selector;let f=n==="dependencies"?qXe.structUtils.makeDescriptor(a,"unknown"):null,I=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":n;t[I][qXe.structUtils.stringifyIdent(a)]=A}}},tWa={hooks:{beforeWorkspacePacking:eWa},commands:[ECi.default]};$he.default=tWa});var DCi=H((X2u,NCi)=>{NCi.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var xCi=H((J2u,kCi)=>{kCi.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):DCi()});var FCi=H((K2u,GCi)=>{GCi.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var Swr=H((z2u,LCi)=>{var ZCi=FCi();LCi.exports=class{constructor(t){this.hwm=t||16,this.head=new ZCi(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new ZCi(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var PCi=H(($2u,VCi)=>{VCi.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var OCi=H((tSu,WCi)=>{WCi.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let n=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var HCi=H((nSu,MCi)=>{var rWa=PCi(),nWa=OCi();MCi.exports=class{constructor(t="utf8"){switch(this.encoding=iWa(t),this.encoding){case"utf8":this.decoder=new nWa;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new rWa(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function iWa(e){switch(e=e.toLowerCase(),e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:throw new Error("Unknown encoding: "+e)}}});var Wwr=H((iSu,p_i)=>{var{EventEmitter:sWa}=wt("events"),pyt=new Error("Stream was destroyed"),vwr=new Error("Premature close"),KCi=xCi(),jCi=Swr(),oWa=HCi(),kS=(1<<29)-1,sme=1,kwr=2,tme=4,$Xe=8,zCi=kS^sme,aWa=kS^kwr,s4e=16,e4e=32,_Re=64,Uae=128,o4e=256,xwr=512,rme=1024,Bwr=2048,Gwr=4096,Fwr=8192,KX=16384,IRe=32768,fyt=65536,nme=131072,qCi=o4e|xwr,cWa=s4e|fyt,lWa=_Re|s4e,uWa=Gwr|Uae,Zwr=o4e|nme,gWa=kS^s4e,AWa=kS^_Re,dWa=kS^(_Re|fyt),YCi=kS^fyt,pWa=kS^o4e,fWa=kS^(Uae|Fwr),IWa=kS^rme,QCi=kS^qCi,$Ci=kS^IRe,hWa=kS^e4e,e_i=kS^nme,mWa=kS^Zwr,Kae=1<<18,mRe=2<<18,a4e=4<<18,ime=8<<18,c4e=16<<18,ome=32<<18,wwr=64<<18,hRe=128<<18,Lwr=256<<18,CRe=512<<18,Iyt=1024<<18,t_i=kS^(Kae|Lwr),r_i=kS^a4e,CWa=kS^CRe,_Wa=kS^c4e,yWa=kS^ime,n_i=kS^hRe,bWa=kS^mRe,i_i=kS^Iyt,t4e=s4e|Kae,s_i=kS^t4e,Vwr=KX|ome,cee=tme|$Xe|kwr,gO=cee|sme,o_i=cee|Vwr,EWa=r_i&AWa,Pwr=hRe|IRe,SWa=Pwr&s_i,a_i=gO|SWa,vWa=gO|rme|KX,XCi=gO|KX|Uae,BWa=gO|rme|Uae,wWa=gO|Gwr|Uae|Fwr,TWa=gO|s4e|rme|KX|fyt|nme,RWa=cee|rme|KX,NWa=e4e|gO|IRe|_Re,DWa=gO|CRe|ome,kWa=ime|c4e,c_i=ime|Kae,xWa=ime|c4e|gO|Kae,JCi=gO|Kae|ime|Iyt,GWa=a4e|Kae,FWa=Kae|Lwr,ZWa=gO|CRe|c_i|ome,LWa=c4e|cee|CRe|ome,VWa=mRe|gO|hRe|a4e,lyt=Symbol.asyncIterator||Symbol("asyncIterator"),uyt=class{constructor(t,{highWaterMark:r=16384,map:n=null,mapWritable:a,byteLength:o,byteLengthWritable:l}={}){this.stream=t,this.queue=new jCi,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=l||o||d_i,this.map=a||n,this.afterWrite=OWa.bind(this),this.afterUpdateNextTick=YWa.bind(this)}get ended(){return(this.stream._duplexState&ome)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=l||o||d_i,this.map=a||n,this.pipeTo=null,this.afterRead=MWa.bind(this),this.afterUpdateNextTick=HWa.bind(this)}get ended(){return(this.stream._duplexState&KX)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=xwr,this.pipeTo=t,this.pipeline=new Nwr(this.stream,t,r),r&&this.stream.on("error",UCi),i4e(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",UCi),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let n=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",n),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",PWa.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|rme)&dWa,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=YCi,this.buffered0;)r.push(this.shift());for(let n=0;n0;)n.drains.shift().resolve(!1);n.pipeline!==null&&n.pipeline.done(t,e)}}function OWa(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=t_i,this.drains!==null&&QWa(this.drains),(t._duplexState&xWa)===c4e&&(t._duplexState&=_Wa,(t._duplexState&wwr)===wwr&&t.emit("drain")),this.updateCallback()}function MWa(e){e&&this.stream.destroy(e),this.stream._duplexState&=gWa,this.readAhead===!1&&!(this.stream._duplexState&o4e)&&(this.stream._duplexState&=e_i),this.updateCallback()}function HWa(){this.stream._duplexState&e4e||(this.stream._duplexState&=$Ci,this.update())}function YWa(){this.stream._duplexState&mRe||(this.stream._duplexState&=n_i,this.update())}function QWa(e){for(let t=0;t0)?null:n(l)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=Zwr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?mWa:pWa,this}static _fromAsyncIterator(t,r){let n,a=new e({...r,read(l){t.next().then(o).then(l.bind(null,null)).catch(l)},predestroy(){n=t.return()},destroy(l){if(!n)return l(null);n.then(l.bind(null,null)).catch(l)}});return a;function o(l){l.done?a.push(null):a.push(l.value)}}static from(t,r){if(eOa(t))return t;if(t[lyt])return this._fromAsyncIterator(t[lyt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let n=0;return new e({...r,read(a){this.push(n===t.length?null:t[n++]),a(null)}})}static isBackpressured(t){return(t._duplexState&RWa)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&o4e)===0}[lyt](){let t=this,r=null,n=null,a=null;return this.on("error",I=>{r=I}),this.on("readable",o),this.on("close",l),{[lyt](){return this},next(){return new Promise(function(I,C){n=I,a=C;let b=t.read();b!==null?A(b):t._duplexState&$Xe&&A(null)})},return(){return f(null)},throw(I){return f(I)}};function o(){n!==null&&A(t.read())}function l(){n!==null&&A(null)}function A(I){a!==null&&(r?a(r):I===null&&!(t._duplexState&KX)?a(pyt):n({value:I,done:I===null}),a=n=null)}function f(I){return t.destroy(I),new Promise((C,b)=>{if(t._duplexState&$Xe)return C({value:void 0,done:!0});t.once("close",function(){I?b(I):C({value:void 0,done:!0})})})}}},Ayt=class extends r4e{constructor(t){super(t),this._duplexState|=sme|KX,this._writableState=new uyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=Iyt}uncork(){this._duplexState&=i_i,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&LWa)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(nOa(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&Lwr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},n4e=class extends gyt{constructor(t){super(t),this._duplexState=sme|this._duplexState&nme,this._writableState=new uyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=Iyt}uncork(){this._duplexState&=i_i,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},dyt=class extends n4e{constructor(t){super(t),this._transformState=new Rwr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(UWa.bind(this))}},Dwr=class extends dyt{};function UWa(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function KWa(...e){return new Promise((t,r)=>g_i(...e,n=>{if(n)return r(n);t()}))}function g_i(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],n=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,l=null;for(let I=1;I1,f),a.pipe(o)),a=o;if(n){let I=!1,C=i4e(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",b=>{l===null&&(l=b)}),o.on("finish",()=>{I=!0,C||n(l)}),C&&o.on("close",()=>n(l||(I?null:vwr)))}return o;function A(I,C,b,E){I.on("error",E),I.on("close",N);function N(){if(C&&I._readableState&&!I._readableState.ended||b&&I._writableState&&!I._writableState.ended)return E(vwr)}}function f(I){if(!(!I||l)){l=I;for(let C of r)C.destroy(I)}}}function jWa(e){return e}function A_i(e){return!!e._readableState||!!e._writableState}function i4e(e){return typeof e._duplexState=="number"&&A_i(e)}function zWa(e){return!!e._readableState&&e._readableState.ended}function qWa(e){return!!e._writableState&&e._writableState.ended}function $Wa(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===pyt?null:r}function eOa(e){return i4e(e)&&e.readable}function tOa(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function d_i(e){return tOa(e)?e.byteLength:1024}function UCi(){}function rOa(){this.destroy(new Error("Stream aborted."))}function nOa(e){return e._writev!==Ayt.prototype._writev&&e._writev!==n4e.prototype._writev}p_i.exports={pipeline:g_i,pipelinePromise:KWa,isStream:A_i,isStreamx:i4e,isEnded:zWa,isFinished:qWa,getStreamError:$Wa,Stream:r4e,Writable:Ayt,Readable:gyt,Duplex:n4e,Transform:dyt,PassThrough:Dwr}});var hyt=H((sSu,f_i)=>{function iOa(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function sOa(e){return Buffer.isEncoding(e)}function oOa(e,t,r){return Buffer.alloc(e,t,r)}function aOa(e){return Buffer.allocUnsafe(e)}function cOa(e){return Buffer.allocUnsafeSlow(e)}function lOa(e,t){return Buffer.byteLength(e,t)}function uOa(e,t){return Buffer.compare(e,t)}function gOa(e,t){return Buffer.concat(e,t)}function AOa(e,t,r,n,a){return ob(e).copy(t,r,n,a)}function dOa(e,t){return ob(e).equals(t)}function pOa(e,t,r,n,a){return ob(e).fill(t,r,n,a)}function fOa(e,t,r){return Buffer.from(e,t,r)}function IOa(e,t,r,n){return ob(e).includes(t,r,n)}function hOa(e,t,r,n){return ob(e).indexOf(t,r,n)}function mOa(e,t,r,n){return ob(e).lastIndexOf(t,r,n)}function COa(e){return ob(e).swap16()}function _Oa(e){return ob(e).swap32()}function yOa(e){return ob(e).swap64()}function ob(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function bOa(e,t,r,n){return ob(e).toString(t,r,n)}function EOa(e,t,r,n,a){return ob(e).write(t,r,n,a)}function SOa(e,t,r){return ob(e).writeDoubleLE(t,r)}function vOa(e,t,r){return ob(e).writeFloatLE(t,r)}function BOa(e,t,r){return ob(e).writeUInt32LE(t,r)}function wOa(e,t,r){return ob(e).writeInt32LE(t,r)}function TOa(e,t){return ob(e).readDoubleLE(t)}function ROa(e,t){return ob(e).readFloatLE(t)}function NOa(e,t){return ob(e).readUInt32LE(t)}function DOa(e,t){return ob(e).readInt32LE(t)}function kOa(e,t,r){return ob(e).writeDoubleBE(t,r)}function xOa(e,t,r){return ob(e).writeFloatBE(t,r)}function GOa(e,t,r){return ob(e).writeUInt32BE(t,r)}function FOa(e,t,r){return ob(e).writeInt32BE(t,r)}function ZOa(e,t){return ob(e).readDoubleBE(t)}function LOa(e,t){return ob(e).readFloatBE(t)}function VOa(e,t){return ob(e).readUInt32BE(t)}function POa(e,t){return ob(e).readInt32BE(t)}f_i.exports={isBuffer:iOa,isEncoding:sOa,alloc:oOa,allocUnsafe:aOa,allocUnsafeSlow:cOa,byteLength:lOa,compare:uOa,concat:gOa,copy:AOa,equals:dOa,fill:pOa,from:fOa,includes:IOa,indexOf:hOa,lastIndexOf:mOa,swap16:COa,swap32:_Oa,swap64:yOa,toBuffer:ob,toString:bOa,write:EOa,writeDoubleLE:SOa,writeFloatLE:vOa,writeUInt32LE:BOa,writeInt32LE:wOa,readDoubleLE:TOa,readFloatLE:ROa,readUInt32LE:NOa,readInt32LE:DOa,writeDoubleBE:kOa,writeFloatBE:xOa,writeUInt32BE:GOa,writeInt32BE:FOa,readDoubleBE:ZOa,readFloatBE:LOa,readUInt32BE:VOa,readInt32BE:POa}});var Hwr=H(bRe=>{var qC=hyt(),WOa="0000000000000000000",OOa="7777777777777777777",myt=48,I_i=qC.from([117,115,116,97,114,0]),MOa=qC.from([myt,myt]),HOa=qC.from([117,115,116,97,114,32]),YOa=qC.from([32,0]),QOa=4095,l4e=257,Mwr=263;bRe.decodeLongPath=function(t,r){return yRe(t,0,t.length,r)};bRe.encodePax=function(t){let r="";t.name&&(r+=Owr(" path="+t.name+` +`)),t.linkname&&(r+=Owr(" linkpath="+t.linkname+` +`));let n=t.pax;if(n)for(let a in n)r+=Owr(" "+a+"="+n[a]+` +`);return qC.from(r)};bRe.decodePax=function(t){let r={};for(;t.length;){let n=0;for(;n100;){let o=n.indexOf("/");if(o===-1)return null;a+=a?"/"+n.slice(0,o):n.slice(0,o),n=n.slice(o+1)}return qC.byteLength(n)>100||qC.byteLength(a)>155||t.linkname&&qC.byteLength(t.linkname)>100?null:(qC.write(r,n),qC.write(r,zae(t.mode&QOa,6),100),qC.write(r,zae(t.uid,6),108),qC.write(r,zae(t.gid,6),116),qOa(t.size,r,124),qC.write(r,zae(t.mtime.getTime()/1e3|0,11),136),r[156]=myt+jOa(t.type),t.linkname&&qC.write(r,t.linkname,157),qC.copy(I_i,r,l4e),qC.copy(MOa,r,Mwr),t.uname&&qC.write(r,t.uname,265),t.gname&&qC.write(r,t.gname,297),qC.write(r,zae(t.devmajor||0,6),329),qC.write(r,zae(t.devminor||0,6),337),a&&qC.write(r,a,345),qC.write(r,zae(m_i(r),6),148),r)};bRe.decode=function(t,r,n){let a=t[156]===0?0:t[156]-myt,o=yRe(t,0,100,r),l=jae(t,100,8),A=jae(t,108,8),f=jae(t,116,8),I=jae(t,124,12),C=jae(t,136,12),b=KOa(a),E=t[157]===0?null:yRe(t,157,100,r),N=yRe(t,265,32),B=yRe(t,297,32),F=jae(t,329,8),Q=jae(t,337,8),X=m_i(t);if(X===8*32)return null;if(X!==jae(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(XOa(t))t[345]&&(o=yRe(t,345,155,r)+"/"+o);else if(!JOa(t)){if(!n)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:l,uid:A,gid:f,size:I,mtime:new Date(1e3*C),type:b,linkname:E,uname:N,gname:B,devmajor:F,devminor:Q,pax:null}};function XOa(e){return qC.equals(I_i,e.subarray(l4e,l4e+6))}function JOa(e){return qC.equals(HOa,e.subarray(l4e,l4e+6))&&qC.equals(YOa,e.subarray(Mwr,Mwr+2))}function UOa(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function KOa(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function jOa(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function h_i(e,t,r,n){for(;rt?OOa.slice(0,t)+" ":WOa.slice(0,t-e.length)+e+" "}function zOa(e,t,r){t[r]=128;for(let n=11;n>0;n--)t[r+n]=e&255,e=Math.floor(e/256)}function qOa(e,t,r){e.toString(8).length>11?zOa(e,t,r):qC.write(t,zae(e,11),r)}function $Oa(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],n;for(n=e.length-1;n>0;n--){let l=e[n];t?r.push(l):r.push(255-l)}let a=0,o=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e}});var E_i=H((aSu,b_i)=>{var{Writable:e3a,Readable:t3a,getStreamError:C_i}=Wwr(),r3a=Swr(),__i=hyt(),ERe=Hwr(),n3a=__i.alloc(0),Qwr=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new r3a,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return n3a;let r=this._next(t);if(t===r.byteLength)return r;let n=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),n.push(r);return __i.concat(n)}_next(t){let r=this.queue.peek(),n=r.byteLength-this._offset;if(t>=n){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=n,this.shifted+=n,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},Xwr=class extends t3a{constructor(t,r,n){super(),this.header=r,this.offset=n,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(C_i(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=y_i(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},Jwr=class extends e3a{constructor(t){super(t),t||(t={}),this._buffer=new Qwr,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=Ywr,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=ERe.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=ERe.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=ERe.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=ERe.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?ERe.decodePax(t):Object.assign({},this._paxGlobal,ERe.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=y_i(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new Xwr(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=Ywr,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(C_i(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,n=null,a=null,o=null,l=this;return this.on("entry",I),this.on("error",E=>{t=E}),this.on("close",C),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return b(null)},throw(E){return b(E)}};function A(E){if(!o)return;let N=o;o=null,N(E)}function f(E,N){if(t)return N(t);if(a){E({value:a,done:!1}),a=null;return}r=E,n=N,A(null),l._finished&&r&&(r({value:void 0,done:!0}),r=n=null)}function I(E,N,B){o=B,N.on("error",Ywr),r?(r({value:N,done:!1}),r=n=null):a=N}function C(){A(t),r&&(t?n(t):r({value:void 0,done:!0}),r=n=null)}function b(E){return l.destroy(E),A(E),new Promise((N,B)=>{if(l.destroyed)return N({value:void 0,done:!0});l.once("close",function(){E?B(E):N({value:void 0,done:!0})})})}}};b_i.exports=function(t){return new Jwr(t)};function Ywr(){}function y_i(e){return e&=511,e&&512-e}});var v_i=H((cSu,Uwr)=>{var S_i={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{Uwr.exports=wt("fs").constants||S_i}catch{Uwr.exports=S_i}});var N_i=H((lSu,R_i)=>{var{Readable:i3a,Writable:s3a,getStreamError:B_i}=Wwr(),ame=hyt(),SRe=v_i(),Cyt=Hwr(),o3a=493,a3a=420,w_i=ame.alloc(1024),jwr=class extends s3a{constructor(t,r,n){super({mapWritable:l3a,eagerOpen:!0}),this.written=0,this.header=r,this._callback=n,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?ame.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?ame.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),T_i(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return B_i(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},zwr=class extends i3a{constructor(t){super(t),this._drain=Kwr,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,n){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(n=r,r=null),n||(n=Kwr),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=c3a(t.mode)),t.mode||(t.mode=t.type==="directory"?o3a:a3a),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=ame.from(r));let a=new jwr(this,t,n);return ame.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(w_i),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=Cyt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=Cyt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),n={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(Cyt.encode(n)),this.push(r),T_i(this,r.byteLength),n.size=t.size,n.type=t.type,this.push(Cyt.encode(n))}_doDrain(){let t=this._drain;this._drain=Kwr,t()}_predestroy(){let t=B_i(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};R_i.exports=function(t){return new zwr(t)};function c3a(e){switch(e&SRe.S_IFMT){case SRe.S_IFBLK:return"block-device";case SRe.S_IFCHR:return"character-device";case SRe.S_IFDIR:return"directory";case SRe.S_IFIFO:return"fifo";case SRe.S_IFLNK:return"symlink"}return"file"}function Kwr(){}function T_i(e,t){t&=511,t&&e.push(w_i.subarray(0,512-t))}function l3a(e){return ame.isBuffer(e)?e:ame.from(e)}});var D_i=H(qwr=>{qwr.extract=E_i();qwr.pack=N_i()});var d0i=H((KSu,A0i)=>{"use strict";var C3a=i7t(),wRe=t7t();function g0i(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function lTr(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(wRe("no-hyperlink")||wRe("no-hyperlinks")||wRe("hyperlink=false")||wRe("hyperlink=never"))return!1;if(wRe("hyperlink=true")||wRe("hyperlink=always")||"NETLIFY"in t)return!0;if(!C3a.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=g0i(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=g0i(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}A0i.exports={supportsHyperlink:lTr,stdout:lTr(process.stdout),stderr:lTr(process.stderr)}});var gTr=H((bvu,E0i)=>{"use strict";var B3a=function(t){return w3a(t)&&!T3a(t)};function w3a(e){return!!e&&typeof e=="object"}function T3a(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||D3a(e)}var R3a=typeof Symbol=="function"&&Symbol.for,N3a=R3a?Symbol.for("react.element"):60103;function D3a(e){return e.$$typeof===N3a}function k3a(e){return Array.isArray(e)?[]:{}}function A4e(e,t){return t.clone!==!1&&t.isMergeableObject(e)?RRe(k3a(e),e,t):e}function x3a(e,t,r){return e.concat(t).map(function(n){return A4e(n,r)})}function G3a(e,t){if(!t.customMerge)return RRe;var r=t.customMerge(e);return typeof r=="function"?r:RRe}function F3a(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function y0i(e){return Object.keys(e).concat(F3a(e))}function b0i(e,t){try{return t in e}catch{return!1}}function Z3a(e,t){return b0i(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function L3a(e,t,r){var n={};return r.isMergeableObject(e)&&y0i(e).forEach(function(a){n[a]=A4e(e[a],r)}),y0i(t).forEach(function(a){Z3a(e,a)||(b0i(e,a)&&r.isMergeableObject(t[a])?n[a]=G3a(a,r)(e[a],t[a],r):n[a]=A4e(t[a],r))}),n}function RRe(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||x3a,r.isMergeableObject=r.isMergeableObject||B3a,r.cloneUnlessOtherwiseSpecified=A4e;var n=Array.isArray(t),a=Array.isArray(e),o=n===a;return o?n?r.arrayMerge(e,t,r):L3a(e,t,r):A4e(t,r)}RRe.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return RRe(n,a,r)},{})};var V3a=RRe;E0i.exports=V3a});var GRi=H((kDu,xRi)=>{xRi.exports=function(t,r){var n,a;typeof r=="function"?a=r:n=r;var o=Object.keys(t);return(n||[]).concat(o.sort(a)).reduce(function(l,A){return o.indexOf(A)!==-1&&(l[A]=t[A]),l},Object.create(null))}});var YRi=H((ODu,LEt)=>{"use strict";LEt.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r `}).length,n=t.length-r;return r>n?`\r `:` -`};FEt.exports.graceful=function(e){return FEt.exports(e)||` -`}});var Skr=H((VNu,NRi)=>{"use strict";var qlc=wt("os");NRi.exports=qlc.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var vkr=H((PNu,DRi)=>{DRi.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,n){return n};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var kRi=H((WNu,XJe)=>{"use strict";var $lc=process.platform==="win32",euc=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Bkr={};function tuc(e){return euc.exec(e).slice(1)}Bkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=tuc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var ruc=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,wkr={};function nuc(e){return ruc.exec(e).slice(1)}wkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=nuc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};$lc?XJe.exports=Bkr.parse:XJe.exports=wkr.parse;XJe.exports.posix=wkr.parse;XJe.exports.win32=Bkr.parse});var Tkr=H((ONu,ZRi)=>{var FRi=wt("path"),xRi=FRi.parse||kRi(),GRi=function(t,r){var n="/";/^([A-Za-z]:)/.test(t)?n="":/^\\\\/.test(t)&&(n="\\\\");for(var a=[t],o=xRi(t);o.dir!==a[a.length-1];)a.push(o.dir),o=xRi(o.dir);return a.reduce(function(l,A){return l.concat(r.map(function(f){return FRi.resolve(n,A,f)}))},[])};ZRi.exports=function(t,r,n){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(n,t,function(){return GRi(t,a)},r);var o=GRi(t,a);return r&&r.paths?o.concat(r.paths):o}});var Rkr=H((MNu,LRi)=>{var JJe=wt("path");LRi.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=wt("module"),n=(I,C)=>{let b=I.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!b)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${I}")`);C.charAt(C.length-1)!=="/"&&(C=JJe.join(C,"/"));let E=r(C);if(E===null)return;let N;try{N=E.resolveToUnqualified(`${b[1]}/package.json`,C,{considerBuiltins:!1})}catch{return null}if(N===null)throw new Error(`Assertion failed: The resolution thinks that "${b[1]}" is a Node builtin`);let B=JJe.dirname(N),F=typeof b[2]<"u"?JJe.join(B,b[2]):B;return{packagePath:B,unqualifiedPath:F}},a=(I,C)=>{for(let b=0;b{let N=[C].concat(o),B=a(I,N);return B==null?b():[B.unqualifiedPath]},A=(I,C,b,E)=>{let N=[C].concat(o),B=a(I,N);if(B==null)return b().concat(o);let F=JJe.dirname(B.packagePath);return I.match(/^@[^/]+\//)&&(F=JJe.dirname(F)),[F]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(I,C,b,E){f=!0;try{return l(I,C,b,E)}finally{f=!1}}),t.paths=function(I,C,b,E){return f?b().concat(o):A(I,C,b,E)},t}});var WRi=H((HNu,PRi)=>{"use strict";var iuc="Function.prototype.bind called on incompatible ",suc=Object.prototype.toString,ouc=Math.max,auc="[object Function]",VRi=function(t,r){for(var n=[],a=0;a{"use strict";var uuc=WRi();ORi.exports=Function.prototype.bind||uuc});var YRi=H((QNu,HRi)=>{"use strict";var guc=Function.prototype.call,Auc=Object.prototype.hasOwnProperty,duc=MRi();HRi.exports=duc.call(guc,Auc)});var QRi=H((XNu,puc)=>{puc.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var UJe=H((JNu,URi)=>{"use strict";var fuc=YRi();function Iuc(e,t){for(var r=e.split("."),n=t.split(" "),a=n.length>1?n[0]:"=",o=(n.length>1?n[1]:n[0]).split("."),l=0;l<3;++l){var A=parseInt(r[l]||0,10),f=parseInt(o[l]||0,10);if(A!==f)return a==="<"?A="?A>=f:!1}return a===">="}function XRi(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var n=0;n"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var n=0;n{var aCe=wt("fs"),muc=Skr(),pT=wt("path"),Cuc=vkr(),_uc=Tkr(),yuc=Rkr(),buc=UJe(),Euc=process.platform!=="win32"&&aCe.realpath&&typeof aCe.realpath.native=="function"?aCe.realpath.native:aCe.realpath,KRi=muc(),Suc=function(){return[pT.join(KRi,".node_modules"),pT.join(KRi,".node_libraries")]},vuc=function(t,r){aCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isFile()||a.isFIFO())})},Buc=function(t,r){aCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isDirectory())})},wuc=function(t,r){Euc(t,function(n,a){n&&n.code!=="ENOENT"?r(n):r(null,n?t:a)})},KJe=function(t,r,n,a){n&&n.preserveSymlinks===!1?t(r,a):a(null,r)},Tuc=function(t,r,n){t(r,function(a,o){if(a)n(a);else try{var l=JSON.parse(o);n(null,l)}catch{n(null)}})},Ruc=function(t,r,n){for(var a=_uc(r,n,t),o=0;o{Nuc.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var rNi=H((jNu,tNi)=>{"use strict";var Duc=UJe(),$Ri=qRi(),eNi={};for(ZEt in $Ri)Object.prototype.hasOwnProperty.call($Ri,ZEt)&&(eNi[ZEt]=Duc(ZEt));var ZEt;tNi.exports=eNi});var iNi=H((zNu,nNi)=>{var kuc=UJe();nNi.exports=function(t){return kuc(t)}});var aNi=H((qNu,oNi)=>{var xuc=UJe(),cCe=wt("fs"),xG=wt("path"),Guc=Skr(),Fuc=vkr(),Zuc=Tkr(),Luc=Rkr(),Vuc=process.platform!=="win32"&&cCe.realpathSync&&typeof cCe.realpathSync.native=="function"?cCe.realpathSync.native:cCe.realpathSync,sNi=Guc(),Puc=function(){return[xG.join(sNi,".node_modules"),xG.join(sNi,".node_libraries")]},Wuc=function(t){try{var r=cCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&(r.isFile()||r.isFIFO())},Ouc=function(t){try{var r=cCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&r.isDirectory()},Muc=function(t){try{return Vuc(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},jJe=function(t,r,n){return n&&n.preserveSymlinks===!1?t(r):r},Huc=function(t,r){var n=t(r);try{var a=JSON.parse(n);return a}catch{}},Yuc=function(t,r,n){for(var a=Zuc(r,n,t),o=0;o{var LEt=zRi();LEt.core=rNi();LEt.isCore=iNi();LEt.sync=aNi();cNi.exports=LEt});var gNi=H((eDu,uNi)=>{"use strict";var{builtinModules:Quc}=wt("module"),Xuc=["sys"];uNi.exports=(Quc||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!Xuc.includes(e)).sort()});var pNi=H((tDu,dNi)=>{"use strict";var Juc=gNi(),Uuc=new Set(Juc),ANi="node:";dNi.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(ANi)&&(e=e.slice(ANi.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),Uuc.has(e)}});var hNi=H(Nkr=>{"use strict";Object.defineProperty(Nkr,"__esModule",{value:!0});var Kuc=wt("path"),juc=lNi(),zuc=pNi();function quc(e){if(e.length===1){let r=e;return n=>{let a=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return r(a)}}let t=e;return(r,n)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return t(a,o)}}function $uc(e){if(e.length===1){let r=e;return n=>{let a=n.moduleName;return r(a)}}let t=e;return(r,n)=>{let a=r.moduleName,o=n.moduleName;return t(a,o)}}function egc(e){return(t,r)=>e(t.name,r.name)}function tgc(e){return(t,r)=>e(t.alias,r.alias)}function rgc(){return!0}function ngc(e){return t=>!e(t)}function igc(...e){return t=>e.every(r=>r(t))}function sgc(...e){return t=>e.some(r=>r(t))}function zJe(e){return!!e.defaultMember}function QNe(e){return!!e.namespaceMember}function qJe(e){return e.namedMembers.length>0}function fNi(e){return zJe(e)||QNe(e)||qJe(e)}function ogc(e){return!fNi(e)}function agc(e){return zJe(e)&&!QNe(e)&&!qJe(e)}function cgc(e){return!zJe(e)&&QNe(e)&&!qJe(e)}function lgc(e){return!zJe(e)&&!QNe(e)&&qJe(e)}function ugc(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function ggc(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!QNe(e)}function Agc(e){return zuc(e.moduleName)}function INi(e){return e.moduleName.indexOf(".")===0}function dgc(e){return!INi(e)}function pgc(e){return t=>{try{return juc.sync(t.moduleName,{basedir:Kuc.dirname(e)}).includes("node_modules")}catch{return!1}}}function fgc(e){return e.moduleName.startsWith("@")}function Igc(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function hgc(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function mgc(e){return!!e.match(/^[A-Za-z0-9]/)}function Cgc(...e){return t=>e.some(r=>t.startsWith(r))}function _gc(e,t){return e.localeCompare(t,"en")}function ygc(e,t){return et?1:0}function bgc(e,t){let r=/\.+(?=\/)/g,n=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return n>a?-1:n{"use strict";Object.defineProperty($Je,"__esModule",{value:!0});var Sgc=RRi(),vgc=hNi();function Bgc(e,t,r,n,a){let o,l=typeof t=="string"?wt(t):t;return typeof r=="string"?(o=wt(r),o.default&&(o=o.default)):o=r,mNi(e,l,o,n,a)}$Je.default=Bgc;function mNi(e,t,r,n,a){let o=Rgc(r,n,a||{})(vgc.default),l=o.map(()=>[]),A=t.parseImports(e,{file:n});if(A.length===0)return{code:e,changes:[]};let f=Sgc.graceful(e),I=[];for(let fe of A){let ue=fe,de=o.findIndex(be=>(ue=wgc(fe,be.sortNamedMembers),!!be.match&&be.match(ue)));de!==-1&&l[de].push(ue)}l.forEach((fe,ue)=>{let{sort:de}=o[ue];if(!de)return;if(!Array.isArray(de)){fe.sort(de);return}let be=de;if(be.length===0)return;let Se=(De,k)=>{let et=0,ct=0;for(;ct===0&&be[et];)ct=be[et](De,k),et+=1;return ct};fe.sort(Se)});let C="",b=!1;l.forEach((fe,ue)=>{fe.length>0&&b&&(C+=f,b=!1),fe.forEach(de=>{let be=t.formatImport(e,de,f);C+=be+f}),o[ue].separator&&C!==""&&(b=!0)});let E=e;A.slice().reverse().forEach(fe=>{let ue=fe.end;E.charAt(fe.end).match(/\s/)&&(ue+=1),I.push({start:fe.start,end:ue,code:"",note:"import-remove"}),E=E.slice(0,fe.start)+E.slice(ue,e.length)});let{start:N}=A[0],B=e.substring(0,N),F=E.substring(N,E.length),Q=B.length,X=F.length,ae,ne;B=B.replace(/\s+$/,fe=>(ae={start:N-fe.length,end:N,code:f+f,note:"before-collapse"},f+f)),F=F.replace(/^\s+/,fe=>(ne={start:N,end:N+fe.length,code:f,note:"after-collapse"},f)),B.match(/^\s+$/)&&(ae={start:N-Q,end:N,code:"",note:"before-trim"},B=""),F.match(/^\s+$/)&&(ne={start:N,end:N+X,code:"",note:"after-trim"},F=""),ne&&I.push(ne),ae&&I.push(ae);let ce={start:B.length,end:B.length,code:C,note:"imports"};return I.push(ce),e===B+C+F?{code:e,changes:[]}:{code:B+C+F,changes:I}}$Je.sortImports=mNi;function wgc(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let l=Object.assign({},e);return l.namedMembers=[...e.namedMembers].sort(r),l}let n=r;if(n.length===0)return e;let a=(l,A)=>{let f=0,I=0;for(;I===0&&n[f];)I=n[f](l,A),f+=1;return I},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function Tgc(e,t){let r=e;for(let n of t)r=r.slice(0,n.start)+n.code+r.slice(n.end,r.length);return r}$Je.applyChanges=Tgc;function Rgc(e,t,r){return n=>{let a=[{separator:!0},{match:n.always}];return e(n,t,r).concat(a)}}});var JNi=H((uku,XNi)=>{"use strict";var lCe=class e extends Error{constructor(t,r,n){super("[ParserError] "+t,r,n),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},WEt=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},tUe=class{constructor(){this.pos=0,this.col=0,this.line=0,this.obj={},this.ctx=this.obj,this.stack=[],this._buf="",this.char=null,this.ii=0,this.state=new WEt(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";UNi.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var OEt=H((Aku,jNi)=>{"use strict";jNi.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var XNe=OEt(),Gkr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${XNe(2,this.getUTCMonth()+1)}-${XNe(2,this.getUTCDate())}`,r=`${XNe(2,this.getUTCHours())}:${XNe(2,this.getUTCMinutes())}:${XNe(2,this.getUTCSeconds())}.${XNe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};zNi.exports=e=>{let t=new Gkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var tDi=H((pku,eDi)=>{"use strict";var $Ni=OEt(),qgc=global.Date,Fkr=class extends qgc{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${$Ni(2,this.getUTCMonth()+1)}-${$Ni(2,this.getUTCDate())}`}};eDi.exports=e=>{let t=new Fkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var nDi=H((fku,rDi)=>{"use strict";var MEt=OEt(),Zkr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${MEt(2,this.getUTCHours())}:${MEt(2,this.getUTCMinutes())}:${MEt(2,this.getUTCSeconds())}.${MEt(3,this.getUTCMilliseconds())}`}};rDi.exports=e=>{let t=new Zkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var HEt=H((exports,module)=>{"use strict";module.exports=makeParserClass(JNi());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=KNi(),createDateTimeFloat=qNi(),createDate=tDi(),createTime=nDi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` -`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}catch{this.value=null}Object.defineProperty(this,_type,{value:INTEGER})}isNaN(){return this.value===null}toString(){return String(this.value)}[_inspect](){return`[BigInt: ${this.toString()}]}`}valueOf(){return this.value}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_type]){case INLINE_TABLE:return"inline-table";case INLINE_LIST:return"inline-list";case TABLE:return"table";case LIST:return"list";case FLOAT:return"float";case INTEGER:return"integer"}}return t}function makeParserClass(e){class t extends e{constructor(){super(),this.ctx=this.obj=Table()}atEndOfWord(){return this.char===CHAR_NUM||this.char===CTRL_I||this.char===CHAR_SP||this.atEndOfLine()}atEndOfLine(){return this.char===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);throw this.error(new TomlError(`Unknown character "${this.char}"`))}parseWhitespaceToEOL(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();throw this.error(new TomlError("Unexpected character, expected only whitespace or comments till end of line"))}parseAssignStatement(){return this.callNow(this.parseAssign,this.recordAssignStatement)}recordAssignStatement(n){let a=this.ctx,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(n){return this.state.resultTable?this.state.resultTable.push(n):this.state.resultTable=[n],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.goto(this.parseAssignEqual)}parseAssignKeywordPostDot(){if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.callNow(this.parseKeyword,this.recordAssignKeyword)}parseAssignEqual(){if(this.char===CHAR_EQUALS)return this.next(this.parseAssignPreValue);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(n){return this.returnNow({key:this.state.resultTable,value:n})}parseComment(){do if(this.char===e.END||this.char===CTRL_J)return this.return();while(this.nextChar())}parseTableOrList(){if(this.char===CHAR_LSQB)this.next(this.parseList);else return this.goto(this.parseTable)}parseTable(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)&&(!isTable(this.ctx[n])||this.ctx[n][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[n]=this.ctx[n]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else throw this.error(new TomlError("Can't redefine existing key"));return this.next(this.parseTableNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseList(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)||(this.ctx[n]=List()),isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[n])){let a=Table();this.ctx[n].push(a),this.ctx=a}else throw this.error(new TomlError("Can't redefine an existing key"));return this.next(this.parseListEnd)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else{if(isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else throw this.error(new TomlError("Can't redefine an existing key"))}return this.next(this.parseListNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseListEnd(n){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(n){return this.returnNow(n)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}errorControlCharInString(){let n="\\u00";return this.char<16&&(n+="0"),n+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${n} instead`))}recordMultiEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(n){try{let a=parseInt(n,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseNoUnder(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD||this.char===CHAR_E||this.char===CHAR_e)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNoUnderHexOctBinLiteral(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNumberFloat(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberFloat);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.call(this.parseNoUnder,this.parseNumberExponent);else throw this.error(new TomlError("Unexpected character, expected -, + or digit"))}parseNumberExponent(){if(isDigit(this.char))this.consume();else return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);throw this.error(new TomlError("Expected digit while parsing year part of a date"))}else{if(this.char===CHAR_HYPHEN)return this.goto(this.parseDateTime);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseDateMonth)}parseDateMonth(){if(this.char===CHAR_HYPHEN){if(this.state.buf.length<2)throw this.error(new TomlError("Months less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseDateDay)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseDateDay(){if(this.char===CHAR_T||this.char===CHAR_SP){if(this.state.buf.length<2)throw this.error(new TomlError("Days less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):this.goto(this.parseTimeHour)}parseTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result+="T"+this.state.buf,this.state.buf="",this.next(this.parseTimeMin)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeZoneOrFraction)}else throw this.error(new TomlError("Incomplete datetime"))}parseOnlyTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeMin)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,this.char===CHAR_PERIOD)this.state.buf="",this.next(this.parseOnlyTimeFraction);else return this.return(createTime(this.state.result))}parseOnlyTimeFraction(){if(isDigit(this.char))this.consume();else if(this.atEndOfWord()){if(this.state.buf.length===0)throw this.error(new TomlError("Expected digit in milliseconds"));return this.returnNow(createTime(this.state.result+"."+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}parseTimeZoneOrFraction(){if(this.char===CHAR_PERIOD)this.consume(),this.next(this.parseDateTimeFraction);else if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}parseDateTimeFraction(){if(isDigit(this.char))this.consume();else{if(this.state.buf.length===1)throw this.error(new TomlError("Expected digit in milliseconds"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.next(this.parseTimeZoneSep)}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseTimeZoneSep(){if(this.char===CHAR_COLON)this.consume(),this.next(this.parseTimeZoneMin);else throw this.error(new TomlError("Unexpected character in datetime, expected colon"))}parseTimeZoneMin(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.return(createDateTime(this.state.result+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseBoolean(){if(this.char===CHAR_t)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseInlineList(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(n){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(n);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(n));return isFloat(n)||isInteger(n)?this.state.resultArr.push(n.valueOf()):this.state.resultArr.push(n),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}parseInlineTable(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(n){let a=this.state.resultTable,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var YEt=H((Iku,iDi)=>{"use strict";iDi.exports=$gc;function $gc(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: +`};LEt.exports.graceful=function(e){return LEt.exports(e)||` +`}});var Rkr=H((MDu,QRi)=>{"use strict";var wuc=wt("os");QRi.exports=wuc.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var Nkr=H((HDu,XRi)=>{XRi.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,n){return n};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var JRi=H((YDu,UJe)=>{"use strict";var Tuc=process.platform==="win32",Ruc=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Dkr={};function Nuc(e){return Ruc.exec(e).slice(1)}Dkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=Nuc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var Duc=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,kkr={};function kuc(e){return Duc.exec(e).slice(1)}kkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=kuc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};Tuc?UJe.exports=Dkr.parse:UJe.exports=kkr.parse;UJe.exports.posix=kkr.parse;UJe.exports.win32=Dkr.parse});var xkr=H((QDu,zRi)=>{var jRi=wt("path"),URi=jRi.parse||JRi(),KRi=function(t,r){var n="/";/^([A-Za-z]:)/.test(t)?n="":/^\\\\/.test(t)&&(n="\\\\");for(var a=[t],o=URi(t);o.dir!==a[a.length-1];)a.push(o.dir),o=URi(o.dir);return a.reduce(function(l,A){return l.concat(r.map(function(f){return jRi.resolve(n,A,f)}))},[])};zRi.exports=function(t,r,n){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(n,t,function(){return KRi(t,a)},r);var o=KRi(t,a);return r&&r.paths?o.concat(r.paths):o}});var Gkr=H((XDu,qRi)=>{var KJe=wt("path");qRi.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=wt("module"),n=(I,C)=>{let b=I.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!b)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${I}")`);C.charAt(C.length-1)!=="/"&&(C=KJe.join(C,"/"));let E=r(C);if(E===null)return;let N;try{N=E.resolveToUnqualified(`${b[1]}/package.json`,C,{considerBuiltins:!1})}catch{return null}if(N===null)throw new Error(`Assertion failed: The resolution thinks that "${b[1]}" is a Node builtin`);let B=KJe.dirname(N),F=typeof b[2]<"u"?KJe.join(B,b[2]):B;return{packagePath:B,unqualifiedPath:F}},a=(I,C)=>{for(let b=0;b{let N=[C].concat(o),B=a(I,N);return B==null?b():[B.unqualifiedPath]},A=(I,C,b,E)=>{let N=[C].concat(o),B=a(I,N);if(B==null)return b().concat(o);let F=KJe.dirname(B.packagePath);return I.match(/^@[^/]+\//)&&(F=KJe.dirname(F)),[F]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(I,C,b,E){f=!0;try{return l(I,C,b,E)}finally{f=!1}}),t.paths=function(I,C,b,E){return f?b().concat(o):A(I,C,b,E)},t}});var tNi=H((JDu,eNi)=>{"use strict";var xuc="Function.prototype.bind called on incompatible ",Guc=Object.prototype.toString,Fuc=Math.max,Zuc="[object Function]",$Ri=function(t,r){for(var n=[],a=0;a{"use strict";var Puc=tNi();rNi.exports=Function.prototype.bind||Puc});var sNi=H((KDu,iNi)=>{"use strict";var Wuc=Function.prototype.call,Ouc=Object.prototype.hasOwnProperty,Muc=nNi();iNi.exports=Muc.call(Wuc,Ouc)});var oNi=H((jDu,Huc)=>{Huc.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var jJe=H((zDu,lNi)=>{"use strict";var Yuc=sNi();function Quc(e,t){for(var r=e.split("."),n=t.split(" "),a=n.length>1?n[0]:"=",o=(n.length>1?n[1]:n[0]).split("."),l=0;l<3;++l){var A=parseInt(r[l]||0,10),f=parseInt(o[l]||0,10);if(A!==f)return a==="<"?A="?A>=f:!1}return a===">="}function aNi(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var n=0;n"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var n=0;n{var cCe=wt("fs"),Juc=Rkr(),pT=wt("path"),Uuc=Nkr(),Kuc=xkr(),juc=Gkr(),zuc=jJe(),quc=process.platform!=="win32"&&cCe.realpath&&typeof cCe.realpath.native=="function"?cCe.realpath.native:cCe.realpath,uNi=Juc(),$uc=function(){return[pT.join(uNi,".node_modules"),pT.join(uNi,".node_libraries")]},egc=function(t,r){cCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isFile()||a.isFIFO())})},tgc=function(t,r){cCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isDirectory())})},rgc=function(t,r){quc(t,function(n,a){n&&n.code!=="ENOENT"?r(n):r(null,n?t:a)})},zJe=function(t,r,n,a){n&&n.preserveSymlinks===!1?t(r,a):a(null,r)},ngc=function(t,r,n){t(r,function(a,o){if(a)n(a);else try{var l=JSON.parse(o);n(null,l)}catch{n(null)}})},igc=function(t,r,n){for(var a=Kuc(r,n,t),o=0;o{sgc.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var hNi=H((eku,INi)=>{"use strict";var ogc=jJe(),pNi=dNi(),fNi={};for(VEt in pNi)Object.prototype.hasOwnProperty.call(pNi,VEt)&&(fNi[VEt]=ogc(VEt));var VEt;INi.exports=fNi});var CNi=H((tku,mNi)=>{var agc=jJe();mNi.exports=function(t){return agc(t)}});var bNi=H((rku,yNi)=>{var cgc=jJe(),lCe=wt("fs"),xG=wt("path"),lgc=Rkr(),ugc=Nkr(),ggc=xkr(),Agc=Gkr(),dgc=process.platform!=="win32"&&lCe.realpathSync&&typeof lCe.realpathSync.native=="function"?lCe.realpathSync.native:lCe.realpathSync,_Ni=lgc(),pgc=function(){return[xG.join(_Ni,".node_modules"),xG.join(_Ni,".node_libraries")]},fgc=function(t){try{var r=lCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&(r.isFile()||r.isFIFO())},Igc=function(t){try{var r=lCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&r.isDirectory()},hgc=function(t){try{return dgc(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},qJe=function(t,r,n){return n&&n.preserveSymlinks===!1?t(r):r},mgc=function(t,r){var n=t(r);try{var a=JSON.parse(n);return a}catch{}},Cgc=function(t,r,n){for(var a=ggc(r,n,t),o=0;o{var PEt=ANi();PEt.core=hNi();PEt.isCore=CNi();PEt.sync=bNi();ENi.exports=PEt});var BNi=H((iku,vNi)=>{"use strict";var{builtinModules:_gc}=wt("module"),ygc=["sys"];vNi.exports=(_gc||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!ygc.includes(e)).sort()});var RNi=H((sku,TNi)=>{"use strict";var bgc=BNi(),Egc=new Set(bgc),wNi="node:";TNi.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(wNi)&&(e=e.slice(wNi.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),Egc.has(e)}});var kNi=H(Fkr=>{"use strict";Object.defineProperty(Fkr,"__esModule",{value:!0});var Sgc=wt("path"),vgc=SNi(),Bgc=RNi();function wgc(e){if(e.length===1){let r=e;return n=>{let a=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return r(a)}}let t=e;return(r,n)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return t(a,o)}}function Tgc(e){if(e.length===1){let r=e;return n=>{let a=n.moduleName;return r(a)}}let t=e;return(r,n)=>{let a=r.moduleName,o=n.moduleName;return t(a,o)}}function Rgc(e){return(t,r)=>e(t.name,r.name)}function Ngc(e){return(t,r)=>e(t.alias,r.alias)}function Dgc(){return!0}function kgc(e){return t=>!e(t)}function xgc(...e){return t=>e.every(r=>r(t))}function Ggc(...e){return t=>e.some(r=>r(t))}function $Je(e){return!!e.defaultMember}function JNe(e){return!!e.namespaceMember}function eUe(e){return e.namedMembers.length>0}function NNi(e){return $Je(e)||JNe(e)||eUe(e)}function Fgc(e){return!NNi(e)}function Zgc(e){return $Je(e)&&!JNe(e)&&!eUe(e)}function Lgc(e){return!$Je(e)&&JNe(e)&&!eUe(e)}function Vgc(e){return!$Je(e)&&!JNe(e)&&eUe(e)}function Pgc(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function Wgc(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!JNe(e)}function Ogc(e){return Bgc(e.moduleName)}function DNi(e){return e.moduleName.indexOf(".")===0}function Mgc(e){return!DNi(e)}function Hgc(e){return t=>{try{return vgc.sync(t.moduleName,{basedir:Sgc.dirname(e)}).includes("node_modules")}catch{return!1}}}function Ygc(e){return e.moduleName.startsWith("@")}function Qgc(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function Xgc(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function Jgc(e){return!!e.match(/^[A-Za-z0-9]/)}function Ugc(...e){return t=>e.some(r=>t.startsWith(r))}function Kgc(e,t){return e.localeCompare(t,"en")}function jgc(e,t){return et?1:0}function zgc(e,t){let r=/\.+(?=\/)/g,n=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return n>a?-1:n{"use strict";Object.defineProperty(tUe,"__esModule",{value:!0});var $gc=YRi(),eAc=kNi();function tAc(e,t,r,n,a){let o,l=typeof t=="string"?wt(t):t;return typeof r=="string"?(o=wt(r),o.default&&(o=o.default)):o=r,xNi(e,l,o,n,a)}tUe.default=tAc;function xNi(e,t,r,n,a){let o=iAc(r,n,a||{})(eAc.default),l=o.map(()=>[]),A=t.parseImports(e,{file:n});if(A.length===0)return{code:e,changes:[]};let f=$gc.graceful(e),I=[];for(let fe of A){let ue=fe,de=o.findIndex(be=>(ue=rAc(fe,be.sortNamedMembers),!!be.match&&be.match(ue)));de!==-1&&l[de].push(ue)}l.forEach((fe,ue)=>{let{sort:de}=o[ue];if(!de)return;if(!Array.isArray(de)){fe.sort(de);return}let be=de;if(be.length===0)return;let Se=(De,k)=>{let et=0,ct=0;for(;ct===0&&be[et];)ct=be[et](De,k),et+=1;return ct};fe.sort(Se)});let C="",b=!1;l.forEach((fe,ue)=>{fe.length>0&&b&&(C+=f,b=!1),fe.forEach(de=>{let be=t.formatImport(e,de,f);C+=be+f}),o[ue].separator&&C!==""&&(b=!0)});let E=e;A.slice().reverse().forEach(fe=>{let ue=fe.end;E.charAt(fe.end).match(/\s/)&&(ue+=1),I.push({start:fe.start,end:ue,code:"",note:"import-remove"}),E=E.slice(0,fe.start)+E.slice(ue,e.length)});let{start:N}=A[0],B=e.substring(0,N),F=E.substring(N,E.length),Q=B.length,X=F.length,ae,ne;B=B.replace(/\s+$/,fe=>(ae={start:N-fe.length,end:N,code:f+f,note:"before-collapse"},f+f)),F=F.replace(/^\s+/,fe=>(ne={start:N,end:N+fe.length,code:f,note:"after-collapse"},f)),B.match(/^\s+$/)&&(ae={start:N-Q,end:N,code:"",note:"before-trim"},B=""),F.match(/^\s+$/)&&(ne={start:N,end:N+X,code:"",note:"after-trim"},F=""),ne&&I.push(ne),ae&&I.push(ae);let ce={start:B.length,end:B.length,code:C,note:"imports"};return I.push(ce),e===B+C+F?{code:e,changes:[]}:{code:B+C+F,changes:I}}tUe.sortImports=xNi;function rAc(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let l=Object.assign({},e);return l.namedMembers=[...e.namedMembers].sort(r),l}let n=r;if(n.length===0)return e;let a=(l,A)=>{let f=0,I=0;for(;I===0&&n[f];)I=n[f](l,A),f+=1;return I},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function nAc(e,t){let r=e;for(let n of t)r=r.slice(0,n.start)+n.code+r.slice(n.end,r.length);return r}tUe.applyChanges=nAc;function iAc(e,t,r){return n=>{let a=[{separator:!0},{match:n.always}];return e(n,t,r).concat(a)}}});var cDi=H((pxu,aDi)=>{"use strict";var uCe=class e extends Error{constructor(t,r,n){super("[ParserError] "+t,r,n),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},MEt=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},nUe=class{constructor(){this.pos=0,this.col=0,this.line=0,this.obj={},this.ctx=this.obj,this.stack=[],this._buf="",this.char=null,this.ii=0,this.state=new MEt(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";lDi.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var HEt=H((Ixu,gDi)=>{"use strict";gDi.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var UNe=HEt(),Pkr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${UNe(2,this.getUTCMonth()+1)}-${UNe(2,this.getUTCDate())}`,r=`${UNe(2,this.getUTCHours())}:${UNe(2,this.getUTCMinutes())}:${UNe(2,this.getUTCSeconds())}.${UNe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};ADi.exports=e=>{let t=new Pkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var IDi=H((mxu,fDi)=>{"use strict";var pDi=HEt(),wAc=global.Date,Wkr=class extends wAc{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${pDi(2,this.getUTCMonth()+1)}-${pDi(2,this.getUTCDate())}`}};fDi.exports=e=>{let t=new Wkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var mDi=H((Cxu,hDi)=>{"use strict";var YEt=HEt(),Okr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${YEt(2,this.getUTCHours())}:${YEt(2,this.getUTCMinutes())}:${YEt(2,this.getUTCSeconds())}.${YEt(3,this.getUTCMilliseconds())}`}};hDi.exports=e=>{let t=new Okr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var QEt=H((exports,module)=>{"use strict";module.exports=makeParserClass(cDi());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=uDi(),createDateTimeFloat=dDi(),createDate=IDi(),createTime=mDi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` +`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}catch{this.value=null}Object.defineProperty(this,_type,{value:INTEGER})}isNaN(){return this.value===null}toString(){return String(this.value)}[_inspect](){return`[BigInt: ${this.toString()}]}`}valueOf(){return this.value}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_type]){case INLINE_TABLE:return"inline-table";case INLINE_LIST:return"inline-list";case TABLE:return"table";case LIST:return"list";case FLOAT:return"float";case INTEGER:return"integer"}}return t}function makeParserClass(e){class t extends e{constructor(){super(),this.ctx=this.obj=Table()}atEndOfWord(){return this.char===CHAR_NUM||this.char===CTRL_I||this.char===CHAR_SP||this.atEndOfLine()}atEndOfLine(){return this.char===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);throw this.error(new TomlError(`Unknown character "${this.char}"`))}parseWhitespaceToEOL(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();throw this.error(new TomlError("Unexpected character, expected only whitespace or comments till end of line"))}parseAssignStatement(){return this.callNow(this.parseAssign,this.recordAssignStatement)}recordAssignStatement(n){let a=this.ctx,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(n){return this.state.resultTable?this.state.resultTable.push(n):this.state.resultTable=[n],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.goto(this.parseAssignEqual)}parseAssignKeywordPostDot(){if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.callNow(this.parseKeyword,this.recordAssignKeyword)}parseAssignEqual(){if(this.char===CHAR_EQUALS)return this.next(this.parseAssignPreValue);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(n){return this.returnNow({key:this.state.resultTable,value:n})}parseComment(){do if(this.char===e.END||this.char===CTRL_J)return this.return();while(this.nextChar())}parseTableOrList(){if(this.char===CHAR_LSQB)this.next(this.parseList);else return this.goto(this.parseTable)}parseTable(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)&&(!isTable(this.ctx[n])||this.ctx[n][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[n]=this.ctx[n]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else throw this.error(new TomlError("Can't redefine existing key"));return this.next(this.parseTableNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseList(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)||(this.ctx[n]=List()),isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[n])){let a=Table();this.ctx[n].push(a),this.ctx=a}else throw this.error(new TomlError("Can't redefine an existing key"));return this.next(this.parseListEnd)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else{if(isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else throw this.error(new TomlError("Can't redefine an existing key"))}return this.next(this.parseListNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseListEnd(n){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(n){return this.returnNow(n)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}errorControlCharInString(){let n="\\u00";return this.char<16&&(n+="0"),n+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${n} instead`))}recordMultiEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(n){try{let a=parseInt(n,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseNoUnder(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD||this.char===CHAR_E||this.char===CHAR_e)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNoUnderHexOctBinLiteral(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNumberFloat(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberFloat);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.call(this.parseNoUnder,this.parseNumberExponent);else throw this.error(new TomlError("Unexpected character, expected -, + or digit"))}parseNumberExponent(){if(isDigit(this.char))this.consume();else return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);throw this.error(new TomlError("Expected digit while parsing year part of a date"))}else{if(this.char===CHAR_HYPHEN)return this.goto(this.parseDateTime);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseDateMonth)}parseDateMonth(){if(this.char===CHAR_HYPHEN){if(this.state.buf.length<2)throw this.error(new TomlError("Months less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseDateDay)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseDateDay(){if(this.char===CHAR_T||this.char===CHAR_SP){if(this.state.buf.length<2)throw this.error(new TomlError("Days less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):this.goto(this.parseTimeHour)}parseTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result+="T"+this.state.buf,this.state.buf="",this.next(this.parseTimeMin)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeZoneOrFraction)}else throw this.error(new TomlError("Incomplete datetime"))}parseOnlyTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeMin)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,this.char===CHAR_PERIOD)this.state.buf="",this.next(this.parseOnlyTimeFraction);else return this.return(createTime(this.state.result))}parseOnlyTimeFraction(){if(isDigit(this.char))this.consume();else if(this.atEndOfWord()){if(this.state.buf.length===0)throw this.error(new TomlError("Expected digit in milliseconds"));return this.returnNow(createTime(this.state.result+"."+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}parseTimeZoneOrFraction(){if(this.char===CHAR_PERIOD)this.consume(),this.next(this.parseDateTimeFraction);else if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}parseDateTimeFraction(){if(isDigit(this.char))this.consume();else{if(this.state.buf.length===1)throw this.error(new TomlError("Expected digit in milliseconds"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.next(this.parseTimeZoneSep)}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseTimeZoneSep(){if(this.char===CHAR_COLON)this.consume(),this.next(this.parseTimeZoneMin);else throw this.error(new TomlError("Unexpected character in datetime, expected colon"))}parseTimeZoneMin(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.return(createDateTime(this.state.result+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseBoolean(){if(this.char===CHAR_t)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseInlineList(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(n){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(n);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(n));return isFloat(n)||isInteger(n)?this.state.resultArr.push(n.valueOf()):this.state.resultArr.push(n),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}parseInlineTable(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(n){let a=this.state.resultTable,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var XEt=H((_xu,CDi)=>{"use strict";CDi.exports=TAc;function TAc(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: `,t&&t.split){let n=t.split(/\n/),a=String(Math.min(n.length,e.line+3)).length,o=" ";for(;o.length "+n[l]+` `,r+=o+" ";for(let f=0;f{"use strict";sDi.exports=rAc;var eAc=HEt(),tAc=YEt();function rAc(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new eAc;try{return t.parse(e),t.finish()}catch(r){throw tAc(r,e)}}});var lDi=H((mku,cDi)=>{"use strict";cDi.exports=iAc;var nAc=HEt(),aDi=YEt();function iAc(e,t){t||(t={});let r=0,n=t.blocksize||40960,a=new nAc;return new Promise((l,A)=>{setImmediate(o,r,n,l,A)});function o(l,A,f,I){if(l>=e.length)try{return f(a.finish())}catch(C){return I(aDi(C,e))}try{a.parse(e.slice(l,l+A)),setImmediate(o,l+A,A,f,I)}catch(C){I(aDi(C,e))}}}});var ADi=H((Cku,gDi)=>{"use strict";gDi.exports=oAc;var sAc=wt("stream"),uDi=HEt();function oAc(e){return e?aAc(e):cAc(e)}function aAc(e){let t=new uDi;return e.setEncoding("utf8"),new Promise((r,n)=>{let a,o=!1,l=!1;function A(){if(o=!0,!a)try{r(t.finish())}catch(C){n(C)}}function f(C){l=!0,n(C)}e.once("end",A),e.once("error",f),I();function I(){a=!0;let C;for(;(C=e.read())!==null;)try{t.parse(C)}catch(b){return f(b)}if(a=!1,o)return A();l||e.once("readable",I)}})}function cAc(){let e=new uDi;return new sAc.Transform({objectMode:!0,transform(t,r,n){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}n()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var dDi=H((_ku,rUe)=>{"use strict";rUe.exports=oDi();rUe.exports.async=lDi();rUe.exports.stream=ADi();rUe.exports.prettyError=YEt()});var yDi=H((yku,Pkr)=>{"use strict";Pkr.exports=lAc;Pkr.exports.value=Vkr;function lAc(e){if(e===null)throw uCe("null");if(e===void 0)throw uCe("undefined");if(typeof e!="object")throw uCe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=vV(e);if(t!=="table")throw uCe(t);return Lkr("","",e)}function uCe(e){return new Error("Can only stringify objects, not "+e)}function uAc(){return new Error("Array values can't have mixed types")}function pDi(e){return Object.keys(e).filter(t=>fDi(e[t]))}function gAc(e){return Object.keys(e).filter(t=>!fDi(e[t]))}function QEt(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function Lkr(e,t,r){r=QEt(r);var n,a;n=pDi(r),a=gAc(r);var o=[],l=t||"";n.forEach(f=>{var I=vV(r[f]);I!=="undefined"&&I!=="null"&&o.push(l+XEt(f)+" = "+mDi(r[f],!0))}),o.length>0&&o.push("");var A=e&&n.length>0?t+" ":"";return a.forEach(f=>{o.push(bAc(e,A,f,r[f]))}),o.join(` -`)}function fDi(e){switch(vV(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||vV(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function vV(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function XEt(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:IDi(t)}function IDi(e){return'"'+hDi(e).replace(/"/g,'\\"')+'"'}function AAc(e){return"'"+e+"'"}function dAc(e,t){for(;t.length"\\u"+dAc(4,t.codePointAt(0).toString(16)))}function pAc(e){let t=e.split(/\n/).map(r=>hDi(r).replace(/"(?="")/g,'\\"')).join(` +`,e}});var yDi=H((yxu,_Di)=>{"use strict";_Di.exports=DAc;var RAc=QEt(),NAc=XEt();function DAc(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new RAc;try{return t.parse(e),t.finish()}catch(r){throw NAc(r,e)}}});var SDi=H((bxu,EDi)=>{"use strict";EDi.exports=xAc;var kAc=QEt(),bDi=XEt();function xAc(e,t){t||(t={});let r=0,n=t.blocksize||40960,a=new kAc;return new Promise((l,A)=>{setImmediate(o,r,n,l,A)});function o(l,A,f,I){if(l>=e.length)try{return f(a.finish())}catch(C){return I(bDi(C,e))}try{a.parse(e.slice(l,l+A)),setImmediate(o,l+A,A,f,I)}catch(C){I(bDi(C,e))}}}});var wDi=H((Exu,BDi)=>{"use strict";BDi.exports=FAc;var GAc=wt("stream"),vDi=QEt();function FAc(e){return e?ZAc(e):LAc(e)}function ZAc(e){let t=new vDi;return e.setEncoding("utf8"),new Promise((r,n)=>{let a,o=!1,l=!1;function A(){if(o=!0,!a)try{r(t.finish())}catch(C){n(C)}}function f(C){l=!0,n(C)}e.once("end",A),e.once("error",f),I();function I(){a=!0;let C;for(;(C=e.read())!==null;)try{t.parse(C)}catch(b){return f(b)}if(a=!1,o)return A();l||e.once("readable",I)}})}function LAc(){let e=new vDi;return new GAc.Transform({objectMode:!0,transform(t,r,n){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}n()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var TDi=H((Sxu,iUe)=>{"use strict";iUe.exports=yDi();iUe.exports.async=SDi();iUe.exports.stream=wDi();iUe.exports.prettyError=XEt()});var ZDi=H((vxu,Ykr)=>{"use strict";Ykr.exports=VAc;Ykr.exports.value=Hkr;function VAc(e){if(e===null)throw gCe("null");if(e===void 0)throw gCe("undefined");if(typeof e!="object")throw gCe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=vV(e);if(t!=="table")throw gCe(t);return Mkr("","",e)}function gCe(e){return new Error("Can only stringify objects, not "+e)}function PAc(){return new Error("Array values can't have mixed types")}function RDi(e){return Object.keys(e).filter(t=>NDi(e[t]))}function WAc(e){return Object.keys(e).filter(t=>!NDi(e[t]))}function JEt(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function Mkr(e,t,r){r=JEt(r);var n,a;n=RDi(r),a=WAc(r);var o=[],l=t||"";n.forEach(f=>{var I=vV(r[f]);I!=="undefined"&&I!=="null"&&o.push(l+UEt(f)+" = "+xDi(r[f],!0))}),o.length>0&&o.push("");var A=e&&n.length>0?t+" ":"";return a.forEach(f=>{o.push(zAc(e,A,f,r[f]))}),o.join(` +`)}function NDi(e){switch(vV(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||vV(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function vV(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function UEt(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:DDi(t)}function DDi(e){return'"'+kDi(e).replace(/"/g,'\\"')+'"'}function OAc(e){return"'"+e+"'"}function MAc(e,t){for(;t.length"\\u"+MAc(4,t.codePointAt(0).toString(16)))}function HAc(e){let t=e.split(/\n/).map(r=>kDi(r).replace(/"(?="")/g,'\\"')).join(` `);return t.slice(-1)==='"'&&(t+=`\\ `),`""" -`+t+'"""'}function mDi(e,t){let r=vV(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),Vkr(e,r)}function Vkr(e,t){switch(t||(t=vV(e)),t){case"string-multiline":return pAc(e);case"string":return IDi(e);case"string-literal":return AAc(e);case"integer":return CDi(e);case"float":return fAc(e);case"boolean":return IAc(e);case"datetime":return hAc(e);case"array":return _Ac(e.filter(r=>vV(r)!=="null"&&vV(r)!=="undefined"&&vV(r)!=="nan"));case"table":return yAc(e);default:throw uCe(t)}}function CDi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function fAc(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],n=t[1]||0;return CDi(r)+"."+n}function IAc(e){return String(e)}function hAc(e){return e.toISOString()}function mAc(e){return e==="float"||e==="integer"}function CAc(e){var t=vV(e[0]);return e.every(r=>vV(r)===t)?t:e.every(r=>mAc(vV(r)))?"float":"mixed"}function _Di(e){let t=CAc(e);if(t==="mixed")throw uAc();return t}function _Ac(e){e=QEt(e);let t=_Di(e);var r="[",n=e.map(a=>Vkr(a,t));return n.join(", ").length>60||/\n/.test(n)?r+=` +`+t+'"""'}function xDi(e,t){let r=vV(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),Hkr(e,r)}function Hkr(e,t){switch(t||(t=vV(e)),t){case"string-multiline":return HAc(e);case"string":return DDi(e);case"string-literal":return OAc(e);case"integer":return GDi(e);case"float":return YAc(e);case"boolean":return QAc(e);case"datetime":return XAc(e);case"array":return KAc(e.filter(r=>vV(r)!=="null"&&vV(r)!=="undefined"&&vV(r)!=="nan"));case"table":return jAc(e);default:throw gCe(t)}}function GDi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function YAc(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],n=t[1]||0;return GDi(r)+"."+n}function QAc(e){return String(e)}function XAc(e){return e.toISOString()}function JAc(e){return e==="float"||e==="integer"}function UAc(e){var t=vV(e[0]);return e.every(r=>vV(r)===t)?t:e.every(r=>JAc(vV(r)))?"float":"mixed"}function FDi(e){let t=UAc(e);if(t==="mixed")throw PAc();return t}function KAc(e){e=JEt(e);let t=FDi(e);var r="[",n=e.map(a=>Hkr(a,t));return n.join(", ").length>60||/\n/.test(n)?r+=` `+n.join(`, `)+` -`:r+=" "+n.join(", ")+(n.length>0?" ":""),r+"]"}function yAc(e){e=QEt(e);var t=[];return Object.keys(e).forEach(r=>{t.push(XEt(r)+" = "+mDi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function bAc(e,t,r,n){var a=vV(n);if(a==="array")return EAc(e,t,r,n);if(a==="table")return SAc(e,t,r,n);throw uCe(a)}function EAc(e,t,r,n){n=QEt(n),_Di(n);var a=vV(n[0]);if(a!=="table")throw uCe(a);var o=e+XEt(r),l="";return n.forEach(A=>{l.length>0&&(l+=` +`:r+=" "+n.join(", ")+(n.length>0?" ":""),r+"]"}function jAc(e){e=JEt(e);var t=[];return Object.keys(e).forEach(r=>{t.push(UEt(r)+" = "+xDi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function zAc(e,t,r,n){var a=vV(n);if(a==="array")return qAc(e,t,r,n);if(a==="table")return $Ac(e,t,r,n);throw gCe(a)}function qAc(e,t,r,n){n=JEt(n),FDi(n);var a=vV(n[0]);if(a!=="table")throw gCe(a);var o=e+UEt(r),l="";return n.forEach(A=>{l.length>0&&(l+=` `),l+=t+"[["+o+`]] -`,l+=Lkr(o+".",t,A)}),l}function SAc(e,t,r,n){var a=e+XEt(r),o="";return pDi(n).length>0&&(o+=t+"["+a+`] -`),o+Lkr(a+".",t,n)}});var bDi=H(Wkr=>{"use strict";Wkr.parse=dDi();Wkr.stringify=yDi()});var jDi=H((qku,UEt)=>{var MDi={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(s,c)=>{for(var g in c)t(s,g,{get:c[g],enumerable:!0})},l=(s,c,g,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let h of n(c))!a.call(s,h)&&h!==g&&t(s,h,{get:()=>c[h],enumerable:!(d=r(c,h))||d.enumerable});return s},A=s=>s,f={};o(f,{ANONYMOUS:()=>tnt,AccessFlags:()=>Ty,AssertionLevel:()=>El,AssignmentDeclarationKind:()=>Ry,AssignmentKind:()=>hZe,Associativity:()=>SZe,BreakpointResolver:()=>$nt,BuilderFileEmit:()=>N3t,BuilderProgramKind:()=>V3t,BuilderState:()=>nR,CallHierarchy:()=>Mz,CharacterCodes:()=>J2,CheckFlags:()=>sB,CheckMode:()=>Eet,ClassificationType:()=>Art,ClassificationTypeNames:()=>W5t,CommentDirectiveType:()=>JS,Comparison:()=>b,CompletionInfoFlags:()=>x5t,CompletionTriggerKind:()=>urt,Completions:()=>Jz,ContainerFlags:()=>uOt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>KS,Diagnostics:()=>Z,DocumentHighlights:()=>IPe,ElementFlags:()=>tf,EmitFlags:()=>cB,EmitHint:()=>ty,EmitOnly:()=>Q2,EndOfLineState:()=>Z5t,ExitStatus:()=>ut,ExportKind:()=>NMt,Extension:()=>ey,ExternalEmitHelpers:()=>JR,FileIncludeKind:()=>$0,FilePreprocessingDiagnosticsKind:()=>fw,FileSystemEntryKind:()=>r1,FileWatcherEventKind:()=>yb,FindAllReferences:()=>Kp,FlattenLevel:()=>kOt,FlowFlags:()=>Yp,ForegroundColorEscapeSequences:()=>_3t,FunctionFlags:()=>bZe,GeneratedIdentifierFlags:()=>od,GetLiteralTextFlags:()=>A7,GoToDefinition:()=>nse,HighlightSpanKind:()=>D5t,IdentifierNameMap:()=>kie,ImportKind:()=>RMt,ImportsNotUsedAsValues:()=>zS,IndentStyle:()=>k5t,IndexFlags:()=>US,IndexKind:()=>Qm,InferenceFlags:()=>R_,InferencePriority:()=>mb,InlayHintKind:()=>N5t,InlayHints:()=>Yit,InternalEmitFlags:()=>RD,InternalNodeBuilderFlags:()=>vg,InternalSymbolName:()=>RT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>a5t,JSDocParsingMode:()=>t1,JsDoc:()=>n5,JsTyping:()=>YP,JsxEmit:()=>XR,JsxFlags:()=>Ym,JsxReferenceKind:()=>$I,LanguageFeatureMinimumTarget:()=>Rd,LanguageServiceMode:()=>T5t,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>$1,ListFormat:()=>$E,LogLevel:()=>fb,MapCode:()=>Qit,MemberOverrideStatus:()=>ar,ModifierFlags:()=>JE,ModuleDetectionKind:()=>zE,ModuleInstanceState:()=>cOt,ModuleKind:()=>jS,ModuleResolutionKind:()=>z_,ModuleSpecifierEnding:()=>dLe,NavigateTo:()=>eHt,NavigationBar:()=>rHt,NewLineKind:()=>qE,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>wy,NodeFactoryFlags:()=>Jbe,NodeFlags:()=>AC,NodeResolutionFeatures:()=>jWt,ObjectFlags:()=>j_,OperationCanceledException:()=>By,OperatorPrecedence:()=>vZe,OrganizeImports:()=>i5,OrganizeImportsMode:()=>lrt,OuterExpressionKinds:()=>cF,OutliningElementsCollector:()=>Jit,OutliningSpanKind:()=>G5t,OutputFileType:()=>F5t,PackageJsonAutoImportPreference:()=>w5t,PackageJsonDependencyGroup:()=>B5t,PatternMatchKind:()=>_nt,PollingInterval:()=>r_,PollingWatchKind:()=>aB,PragmaKindFlags:()=>N_,PredicateSemantics:()=>K_,PreparePasteEdits:()=>cst,PrivateIdentifierKind:()=>HLe,ProcessLevel:()=>ZOt,ProgramUpdateLevel:()=>f3t,QuotePreference:()=>cMt,RegularExpressionFlags:()=>UE,RelationComparisonResult:()=>vy,Rename:()=>$Pe,ScriptElementKind:()=>V5t,ScriptElementKindModifier:()=>P5t,ScriptKind:()=>X2,ScriptSnapshot:()=>TVe,ScriptTarget:()=>kT,SemanticClassificationFormat:()=>R5t,SemanticMeaning:()=>O5t,SemicolonPreference:()=>grt,SignatureCheckMode:()=>vet,SignatureFlags:()=>$A,SignatureHelp:()=>X1e,SignatureInfo:()=>R3t,SignatureKind:()=>BA,SmartSelectionRange:()=>jit,SnippetKind:()=>Iw,StatisticType:()=>I5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>uI,SymbolDisplay:()=>i9,SymbolDisplayPartKind:()=>NVe,SymbolFlags:()=>TT,SymbolFormatFlags:()=>Rf,SyntaxKind:()=>Ld,Ternary:()=>Cb,ThrottledCancellationToken:()=>uYt,TokenClass:()=>L5t,TokenFlags:()=>KE,TransformFlags:()=>up,TypeFacts:()=>bet,TypeFlags:()=>jE,TypeFormatFlags:()=>Ng,TypeMapKind:()=>zf,TypePredicateKind:()=>Th,TypeReferenceSerializationKind:()=>oE,UnionReduction:()=>Jr,UpToDateStatusType:()=>e5t,VarianceFlags:()=>NT,Version:()=>O,VersionRange:()=>gt,WatchDirectoryFlags:()=>q1,WatchDirectoryKind:()=>DT,WatchFileKind:()=>oB,WatchLogLevel:()=>h3t,WatchType:()=>jm,accessPrivateIdentifier:()=>DOt,addEmitFlags:()=>Gw,addEmitHelper:()=>$Y,addEmitHelpers:()=>hN,addInternalEmitFlags:()=>N3,addNodeFactoryPatcher:()=>qqe,addObjectAllocatorPatcher:()=>Zqe,addRange:()=>Or,addRelatedInfo:()=>lg,addSyntheticLeadingComment:()=>JT,addSyntheticTrailingComment:()=>Iz,addToSeen:()=>Zy,advancedAsyncSuperHelper:()=>DF,affectsDeclarationPathOptionDeclarations:()=>yWt,affectsEmitOptionDeclarations:()=>_Wt,allKeysStartWithDot:()=>x9e,altDirectorySeparator:()=>Eb,and:()=>dh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>yLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Ju,arrayToNumericMap:()=>Vs,assertType:()=>nE,assign:()=>Wt,asyncSuperHelper:()=>lie,attachFileToDiagnostics:()=>XL,base64decode:()=>YZe,base64encode:()=>ibe,binarySearch:()=>Wc,binarySearchKey:()=>Sg,bindSourceFile:()=>gOt,breakIntoCharacterSpans:()=>XMt,breakIntoWordSpans:()=>JMt,buildLinkParts:()=>IMt,buildOpts:()=>CEe,buildOverload:()=>Bpn,bundlerModuleNameResolver:()=>zWt,canBeConvertedToAsync:()=>Bnt,canHaveDecorators:()=>oQ,canHaveExportModifier:()=>Kne,canHaveFlowNode:()=>UJ,canHaveIllegalDecorators:()=>D$e,canHaveIllegalModifiers:()=>tWt,canHaveIllegalType:()=>l$r,canHaveIllegalTypeParameters:()=>eWt,canHaveJSDoc:()=>Ane,canHaveLocals:()=>WI,canHaveModifiers:()=>LB,canHaveModuleSpecifier:()=>dZe,canHaveSymbol:()=>mE,canIncludeBindAndCheckDiagnostics:()=>gU,canJsonReportNoInputFiles:()=>vEe,canProduceDiagnostics:()=>ZEe,canUsePropertyAccess:()=>Fbe,canWatchAffectingLocation:()=>X3t,canWatchAtTypes:()=>Q3t,canWatchDirectoryOrFile:()=>Btt,canWatchDirectoryOrFilePath:()=>zEe,cartesianProduct:()=>XE,cast:()=>Ma,chainBundle:()=>rR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>K2,changeCompilerHostLikeToUseCache:()=>Gde,changeExtension:()=>fN,changeFullExtension:()=>i_,changesAffectModuleResolution:()=>NJ,changesAffectingProgramStructure:()=>fge,characterCodeToRegularExpressionFlag:()=>Wg,childIsDecorated:()=>HJ,classElementOrClassElementParameterIsDecorated:()=>hye,classHasClassThisAssignment:()=>Wet,classHasDeclaredOrExplicitlyAssignedName:()=>Oet,classHasExplicitlyAssignedName:()=>X9e,classOrConstructorParameterIsDecorated:()=>Rx,classicNameResolver:()=>oOt,classifier:()=>pYt,cleanExtendedConfigCache:()=>q9e,clear:()=>St,clearMap:()=>Fy,clearSharedExtendedConfigFileWatcher:()=>ttt,climbPastPropertyAccess:()=>xVe,clone:()=>Eg,cloneCompilerOptions:()=>Drt,closeFileWatcher:()=>dv,closeFileWatcherOf:()=>Cv,codefix:()=>x0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>Zet,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>SWt,commentPragmas:()=>e1,commonOptionsWithBuild:()=>d9e,compact:()=>Hr,compareBooleans:()=>Ml,compareDataObjects:()=>_Ae,compareDiagnostics:()=>X7,compareEmitHelpers:()=>QLe,compareNumberOfDirectorySeparators:()=>Qne,comparePaths:()=>qf,comparePathsCaseInsensitive:()=>pB,comparePathsCaseSensitive:()=>Cx,comparePatternKeys:()=>fet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Wa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>so,compareTextSpans:()=>yn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>oLe,compilerOptionsAffectEmit:()=>sLe,compilerOptionsAffectSemanticDiagnostics:()=>mbe,compilerOptionsDidYouMeanDiagnostics:()=>h9e,compilerOptionsIndicateEsModules:()=>Lrt,computeCommonSourceDirectoryOfFilenames:()=>m3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Po,computeLineStarts:()=>cA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>_tt,computeSuggestionDiagnostics:()=>Ent,computedOptions:()=>J7,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Fne,consumesNodeCoreModules:()=>aPe,contains:()=>k,containsIgnoredPath:()=>sz,containsObjectRestOrSpread:()=>fEe,containsParseError:()=>pP,containsPath:()=>Jh,convertCompilerOptionsForTelemetry:()=>PWt,convertCompilerOptionsFromJson:()=>men,convertJsonOption:()=>vU,convertToBase64:()=>nbe,convertToJson:()=>bEe,convertToObject:()=>xWt,convertToOptionsWithAbsolutePaths:()=>y9e,convertToRelativePath:()=>r2,convertToTSConfig:()=>z$e,convertTypeAcquisitionFromJson:()=>Cen,copyComments:()=>xU,copyEntries:()=>a7,copyLeadingComments:()=>Uie,copyProperties:()=>GA,copyTrailingAsLeadingComments:()=>m1e,copyTrailingComments:()=>jde,couldStartTrivia:()=>tv,countWhere:()=>ct,createAbstractBuilder:()=>wrn,createAccessorPropertyBackingField:()=>G$e,createAccessorPropertyGetRedirector:()=>lWt,createAccessorPropertySetRedirector:()=>uWt,createBaseNodeFactory:()=>xLe,createBinaryExpressionTrampoline:()=>c9e,createBuilderProgram:()=>ytt,createBuilderProgramUsingIncrementalBuildInfo:()=>M3t,createBuilderStatusReporter:()=>_Ve,createCacheableExportInfoMap:()=>Ant,createCachedDirectoryStructureHost:()=>j9e,createClassifier:()=>nin,createCommentDirectivesMap:()=>bge,createCompilerDiagnostic:()=>Nf,createCompilerDiagnosticForInvalidCustomType:()=>vWt,createCompilerDiagnosticFromMessageChain:()=>SAe,createCompilerHost:()=>C3t,createCompilerHostFromProgramHost:()=>Ott,createCompilerHostWorker:()=>$9e,createDetachedDiagnostic:()=>QY,createDiagnosticCollection:()=>EF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>A3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Bw,createDiagnosticForNodeInSourceFile:()=>_E,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Gz,createDocumentPositionMapper:()=>BOt,createDocumentRegistry:()=>FMt,createDocumentRegistryInternal:()=>hnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>vtt,createEmitHelperFactory:()=>YLe,createEmptyExports:()=>aEe,createEvaluator:()=>NLe,createExpressionForJsxElement:()=>UPt,createExpressionForJsxFragment:()=>KPt,createExpressionForObjectLiteralElementLike:()=>jPt,createExpressionForPropertyName:()=>v$e,createExpressionFromEntityName:()=>cEe,createExternalHelpersImportDeclarationIfNeeded:()=>T$e,createFileDiagnostic:()=>qh,createFileDiagnosticFromMessageChain:()=>ze,createFlowNode:()=>rk,createForOfBindingStatement:()=>S$e,createFutureSourceFile:()=>dPe,createGetCanonicalFileName:()=>_d,createGetIsolatedDeclarationErrors:()=>s3t,createGetSourceFile:()=>ott,createGetSymbolAccessibilityDiagnosticForNode:()=>J3,createGetSymbolAccessibilityDiagnosticForNodeName:()=>i3t,createGetSymbolWalker:()=>AOt,createIncrementalCompilerHost:()=>CVe,createIncrementalProgram:()=>$3t,createJsxFactoryExpression:()=>E$e,createLanguageService:()=>gYt,createLanguageServiceSourceFile:()=>kPe,createMemberAccessForPropertyName:()=>EU,createModeAwareCache:()=>wie,createModeAwareCacheKey:()=>Cde,createModeMismatchDetails:()=>l7,createModuleNotFoundChain:()=>kJ,createModuleResolutionCache:()=>Tie,createModuleResolutionLoader:()=>Att,createModuleResolutionLoaderUsingGlobalCache:()=>j3t,createModuleSpecifierResolutionHost:()=>z3,createMultiMap:()=>dl,createNameResolver:()=>JAe,createNodeConverters:()=>GLe,createNodeFactory:()=>nie,createOptionNameMap:()=>f9e,createOverload:()=>ust,createPackageJsonImportFilter:()=>jie,createPackageJsonInfo:()=>int,createParenthesizerRules:()=>pv,createPatternMatcher:()=>WMt,createPrinter:()=>MP,createPrinterWithDefaults:()=>d3t,createPrinterWithRemoveComments:()=>gQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>p3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>ett,createProgram:()=>UEe,createProgramDiagnostics:()=>w3t,createProgramHost:()=>Mtt,createPropertyNameNodeForIdentifierOrLiteral:()=>Une,createQueue:()=>oA,createRange:()=>Gy,createRedirectedBuilderProgram:()=>Stt,createResolutionCache:()=>Ttt,createRuntimeTypeSerializer:()=>OOt,createScanner:()=>wb,createSemanticDiagnosticsBuilderProgram:()=>Brn,createSet:()=>oo,createSolutionBuilder:()=>i5t,createSolutionBuilderHost:()=>r5t,createSolutionBuilderWithWatch:()=>s5t,createSolutionBuilderWithWatchHost:()=>n5t,createSortedArray:()=>Ya,createSourceFile:()=>vz,createSourceMapGenerator:()=>yOt,createSourceMapSource:()=>t$e,createSuperAccessVariableStatement:()=>U9e,createSymbolTable:()=>qu,createSymlinkCache:()=>_be,createSyntacticTypeNodeBuilder:()=>E5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>g1e,createTextChangeFromStartLength:()=>XVe,createTextChangeRange:()=>$2,createTextRangeFromNode:()=>Grt,createTextRangeFromSpan:()=>QVe,createTextSpan:()=>zd,createTextSpanFromBounds:()=>wA,createTextSpanFromNode:()=>Oy,createTextSpanFromRange:()=>t9,createTextSpanFromStringLiteralLikeContent:()=>xrt,createTextWriter:()=>Bne,createTokenRange:()=>QL,createTypeChecker:()=>COt,createTypeReferenceDirectiveResolutionCache:()=>D9e,createTypeReferenceResolutionLoader:()=>rVe,createWatchCompilerHost:()=>Lrn,createWatchCompilerHostOfConfigFile:()=>Htt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Ytt,createWatchFactory:()=>Wtt,createWatchHost:()=>Ptt,createWatchProgram:()=>Qtt,createWatchStatusReporter:()=>Rtt,createWriteFileMeasuringIO:()=>att,declarationNameToString:()=>Wd,decodeMappings:()=>xet,decodedTextSpanIntersectsWith:()=>IE,deduplicate:()=>io,defaultHoverMaximumTruncationLength:()=>Age,defaultInitCompilerOptions:()=>V$r,defaultMaximumTruncationLength:()=>EY,diagnosticCategoryName:()=>_b,diagnosticToString:()=>IQ,diagnosticsEqualityComparer:()=>vAe,directoryProbablyExists:()=>f1,directorySeparator:()=>ag,displayPart:()=>SE,displayPartsToString:()=>D1e,disposeEmitNodes:()=>Ku,documentSpansEqual:()=>Yrt,dumpTracingLegend:()=>jf,elementAt:()=>Cg,elideNodes:()=>cWt,emitDetachedComments:()=>xZe,emitFiles:()=>qet,emitFilesAndReportErrors:()=>fVe,emitFilesAndReportErrorsAndGetExitStatus:()=>Vtt,emitModuleKindIsNonNodeESM:()=>Wne,emitNewLineBeforeLeadingCommentOfPosition:()=>Uye,emitResolverSkipsTypeChecking:()=>zet,emitSkippedWithNoDiagnostics:()=>ftt,emptyArray:()=>E,emptyFileSystemEntries:()=>wbe,emptyMap:()=>N,emptyOptions:()=>VB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Am,ensureScriptKind:()=>xAe,ensureTrailingDirectorySeparator:()=>hp,entityNameToString:()=>oy,enumerateInsertsAndDeletes:()=>q0,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Mp,equateStringsCaseSensitive:()=>MA,equateValues:()=>yg,escapeJsxAttributeString:()=>Wye,escapeLeadingUnderscores:()=>Ap,escapeNonAsciiString:()=>Ene,escapeSnippetText:()=>xP,escapeString:()=>YT,escapeTemplateSubstitution:()=>Vye,evaluatorResult:()=>$h,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>jAe,executeCommandLine:()=>Inn,expandPreOrPostfixIncrementOrDecrementExpression:()=>n9e,explainFiles:()=>xtt,explainIfFileIsRedirectAndImpliedFormat:()=>Gtt,exportAssignmentIsAlias:()=>Ine,expressionResultIsUnused:()=>ELe,extend:()=>OA,extensionFromPath:()=>tz,extensionIsTS:()=>PAe,extensionsNotSupportingExtensionlessResolution:()=>VAe,externalHelpersModuleNameText:()=>PD,factory:()=>me,fileExtensionIs:()=>aA,fileExtensionIsOneOf:()=>fu,fileIncludeReasonToDiagnostics:()=>Ltt,fileShouldUseJavaScriptRequire:()=>gnt,filter:()=>Me,filterMutate:()=>je,filterSemanticDiagnostics:()=>oVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>YA,findChildOfKind:()=>qd,findComputedPropertyNameCacheAssignment:()=>l9e,findConfigFile:()=>itt,findConstructorDeclaration:()=>zY,findContainingList:()=>VVe,findDiagnosticForNode:()=>BMt,findFirstNonJsxWhitespaceToken:()=>K5t,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>U5t,findModifier:()=>Qie,findNextToken:()=>fQ,findPackageJson:()=>vMt,findPackageJsons:()=>nnt,findPrecedingMatchingToken:()=>HVe,findPrecedingToken:()=>Gm,findSuperStatementIndexPath:()=>M9e,findTokenOnLeftOfPosition:()=>Hde,findUseStrictPrologue:()=>w$e,first:()=>ma,firstDefined:()=>X,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>ant,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>iA,fixupCompilerOptions:()=>wnt,flatMap:()=>er,flatMapIterator:()=>xt,flatMapToMutable:()=>vt,flatten:()=>Nr,flattenCommaList:()=>gWt,flattenDestructuringAssignment:()=>TU,flattenDestructuringBinding:()=>uQ,flattenDiagnosticMessageText:()=>wN,forEach:()=>F,forEachAncestor:()=>Ew,forEachAncestorDirectory:()=>pE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>vN,forEachChild:()=>Lu,forEachChildRecursively:()=>Sz,forEachDynamicImportOrRequireCall:()=>$ne,forEachEmittedFile:()=>Jet,forEachEnclosingBlockScopeContainer:()=>Dge,forEachEntry:()=>Dh,forEachExternalModuleToImportFrom:()=>pnt,forEachImportClauseDeclaration:()=>pZe,forEachKey:()=>SB,forEachLeadingCommentRange:()=>GD,forEachNameInAccessChainWalkingLeft:()=>jZe,forEachNameOfDefaultExport:()=>fPe,forEachOptionsSyntaxByName:()=>zAe,forEachProjectReference:()=>gz,forEachPropertyAssignment:()=>WJ,forEachResolvedProjectReference:()=>tie,forEachReturnStatement:()=>yF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>dF,forEachTsConfigPropArray:()=>zre,forEachUnique:()=>Xrt,forEachYieldExpression:()=>$Fe,formatColorAndReset:()=>AQ,formatDiagnostic:()=>ctt,formatDiagnostics:()=>ern,formatDiagnosticsWithColorAndContext:()=>E3t,formatGeneratedName:()=>M3,formatGeneratedNamePart:()=>Eie,formatLocation:()=>ltt,formatMessage:()=>XY,formatStringFromArgs:()=>dN,formatting:()=>Im,generateDjb2Hash:()=>ry,generateTSConfig:()=>GWt,getAdjustedReferenceLocation:()=>vrt,getAdjustedRenameLocation:()=>WVe,getAliasDeclarationFromName:()=>Rye,getAllAccessorDeclarations:()=>BP,getAllDecoratorsOfClass:()=>Vet,getAllDecoratorsOfClassElement:()=>Y9e,getAllJSDocTags:()=>dJ,getAllJSDocTagsOfKind:()=>rye,getAllKeys:()=>mI,getAllProjectOutputs:()=>K9e,getAllSuperTypeNodes:()=>R7,getAllowImportingTsExtensions:()=>eLe,getAllowJSCompilerOption:()=>TF,getAllowSyntheticDefaultImports:()=>JY,getAncestor:()=>ML,getAnyExtensionFromPath:()=>gE,getAreDeclarationMapsEnabled:()=>BAe,getAssignedExpandoInitializer:()=>FY,getAssignedName:()=>CB,getAssignmentDeclarationKind:()=>nI,getAssignmentDeclarationPropertyAccessKind:()=>XJ,getAssignmentTargetKind:()=>QD,getAutomaticTypeDirectiveNames:()=>R9e,getBaseFileName:()=>gp,getBinaryOperatorPrecedence:()=>bne,getBuildInfo:()=>$et,getBuildInfoFileVersionMap:()=>Ett,getBuildInfoText:()=>g3t,getBuildOrderFromAnyBuildOrder:()=>$Ee,getBuilderCreationParameters:()=>uVe,getBuilderFileEmit:()=>HP,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>iI,getClassExtendsHeritageElement:()=>OL,getClassLikeDeclarationOfSymbol:()=>AN,getCombinedLocalAndExportSymbolFlags:()=>sU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>dm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ad,getCommentRange:()=>DB,getCommonSourceDirectory:()=>xde,getCommonSourceDirectoryOfConfig:()=>RU,getCompilerOptionValue:()=>K7,getConditions:()=>PP,getConfigFileParsingDiagnostics:()=>dQ,getConstantValue:()=>ZLe,getContainerFlags:()=>het,getContainerNode:()=>kU,getContainingClass:()=>hC,getContainingClassExcludingClassDecorators:()=>Oge,getContainingClassStaticBlock:()=>iZe,getContainingFunction:()=>A1,getContainingFunctionDeclaration:()=>Wge,getContainingFunctionOrClassStaticBlock:()=>qre,getContainingNodeArray:()=>SLe,getContainingObjectLiteralElement:()=>k1e,getContextualTypeFromParent:()=>tPe,getContextualTypeFromParentOrAncestorTypeNode:()=>PVe,getDeclarationDiagnostics:()=>o3t,getDeclarationEmitExtensionForPath:()=>sAe,getDeclarationEmitOutputFilePath:()=>RZe,getDeclarationEmitOutputFilePathWorker:()=>wne,getDeclarationFileExtension:()=>g9e,getDeclarationFromName:()=>T7,getDeclarationModifierFlagsFromSymbol:()=>u2,getDeclarationOfKind:()=>Cp,getDeclarationsOfKind:()=>dge,getDeclaredExpandoInitializer:()=>E7,getDecorators:()=>Rb,getDefaultCompilerOptions:()=>DPe,getDefaultFormatCodeSettings:()=>RVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>AYt,getDefaultLikeExportInfo:()=>pPe,getDefaultLikeExportNameFromDeclaration:()=>cnt,getDefaultResolutionModeForFileWorker:()=>sVe,getDiagnosticText:()=>Zb,getDiagnosticsWithinSpan:()=>wMt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>wtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>U3t,getDocumentPositionMapper:()=>bnt,getDocumentSpansEqualityComparer:()=>Qrt,getESModuleInterop:()=>kw,getEditsForFileRename:()=>LMt,getEffectiveBaseTypeNode:()=>BB,getEffectiveConstraintOfTypeParameter:()=>n3,getEffectiveContainerForJSDocTemplateTag:()=>zge,getEffectiveImplementsTypeNodes:()=>jJ,getEffectiveInitializer:()=>one,getEffectiveJSDocHost:()=>WL,getEffectiveModifierFlags:()=>o_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>VZe,getEffectiveModifierFlagsNoCache:()=>zye,getEffectiveReturnTypeNode:()=>xb,getEffectiveSetAccessorTypeAnnotationNode:()=>Jye,getEffectiveTypeAnnotationNode:()=>kh,getEffectiveTypeParameterDeclarations:()=>ZD,getEffectiveTypeRoots:()=>mde,getElementOrPropertyAccessArgumentExpressionOrName:()=>jge,getElementOrPropertyAccessName:()=>YD,getElementsOfBindingOrAssignmentPattern:()=>bie,getEmitDeclarations:()=>Ly,getEmitFlags:()=>tA,getEmitHelpers:()=>jbe,getEmitModuleDetectionKind:()=>tLe,getEmitModuleFormatOfFileWorker:()=>Lde,getEmitModuleKind:()=>i0,getEmitModuleResolutionKind:()=>k_,getEmitScriptTarget:()=>Mg,getEmitStandardClassFields:()=>hbe,getEnclosingBlockScopeContainer:()=>tS,getEnclosingContainer:()=>f7,getEncodedSemanticClassifications:()=>fnt,getEncodedSyntacticClassifications:()=>Int,getEndLinePosition:()=>vY,getEntityNameFromTypeNode:()=>ene,getEntrypointsFromPackageJsonInfo:()=>Aet,getErrorCountForSummary:()=>dVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>Dtt,getEscapedTextOfIdentifierOrLiteral:()=>qJ,getEscapedTextOfJsxAttributeName:()=>cz,getEscapedTextOfJsxNamespacedName:()=>oS,getExpandoInitializer:()=>VL,getExportAssignmentExpression:()=>hne,getExportInfoMap:()=>S1e,getExportNeedsImportStarHelper:()=>wOt,getExpressionAssociativity:()=>Zye,getExpressionPrecedence:()=>x7,getExternalHelpersModuleName:()=>uEe,getExternalModuleImportEqualsDeclarationExpression:()=>_7,getExternalModuleName:()=>LY,getExternalModuleNameFromDeclaration:()=>wZe,getExternalModuleNameFromPath:()=>Mye,getExternalModuleNameLiteral:()=>Ez,getExternalModuleRequireArgument:()=>Cye,getFallbackOptions:()=>QEe,getFileEmitOutput:()=>T3t,getFileMatcherPatterns:()=>kAe,getFileNamesFromConfigSpecs:()=>Ide,getFileWatcherEventKind:()=>qS,getFilesInErrorForSummary:()=>pVe,getFirstConstructorWithBody:()=>lN,getFirstIdentifier:()=>B0,getFirstNonSpaceCharacterPosition:()=>CMt,getFirstProjectOutput:()=>jet,getFixableErrorSpanExpression:()=>snt,getFormatCodeSettingsForWriting:()=>gPe,getFullWidth:()=>DJ,getFunctionFlags:()=>SI,getHeritageClause:()=>mne,getHostSignatureFromJSDoc:()=>PL,getIdentifierAutoGenerate:()=>i$e,getIdentifierGeneratedImportReference:()=>MLe,getIdentifierTypeArguments:()=>G3,getImmediatelyInvokedFunctionExpression:()=>ZL,getImpliedNodeFormatForEmitWorker:()=>NU,getImpliedNodeFormatForFile:()=>JEe,getImpliedNodeFormatForFileWorker:()=>iVe,getImportNeedsImportDefaultHelper:()=>Fet,getImportNeedsImportStarHelper:()=>W9e,getIndentString:()=>iAe,getInferredLibraryNameResolveFrom:()=>nVe,getInitializedVariables:()=>iU,getInitializerOfBinaryExpression:()=>bye,getInitializerOfBindingOrAssignmentElement:()=>AEe,getInterfaceBaseTypeNodes:()=>N7,getInternalEmitFlags:()=>g1,getInvokedExpression:()=>Yge,getIsFileExcluded:()=>kMt,getIsolatedModules:()=>sS,getJSDocAugmentsTag:()=>K6,getJSDocClassTag:()=>bx,getJSDocCommentRanges:()=>dye,getJSDocCommentsAndTags:()=>Sye,getJSDocDeprecatedTag:()=>Kh,getJSDocDeprecatedTagNoCache:()=>i2,getJSDocEnumTag:()=>a1,getJSDocHost:()=>bP,getJSDocImplementsTags:()=>uY,getJSDocOverloadTags:()=>Bye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>vL,getJSDocParameterTagsNoCache:()=>uJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>_re,getJSDocPublicTagNoCache:()=>Ex,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>hA,getJSDocReturnTag:()=>sv,getJSDocReturnType:()=>AJ,getJSDocRoot:()=>KJ,getJSDocSatisfiesExpressionType:()=>Lbe,getJSDocSatisfiesTag:()=>fF,getJSDocTags:()=>Sx,getJSDocTemplateTag:()=>oP,getJSDocThisTag:()=>Nb,getJSDocType:()=>eN,getJSDocTypeAliasName:()=>N$e,getJSDocTypeAssertionType:()=>_ie,getJSDocTypeParameterDeclarations:()=>uAe,getJSDocTypeParameterTags:()=>r3,getJSDocTypeParameterTagsNoCache:()=>U6,getJSDocTypeTag:()=>ov,getJSXImplicitImportBase:()=>One,getJSXRuntimeImport:()=>Mne,getJSXTransformEnabled:()=>RAe,getKeyForCompilerOptions:()=>oet,getLanguageVariant:()=>Zne,getLastChild:()=>ube,getLeadingCommentRanges:()=>fE,getLeadingCommentRangesOfNode:()=>Fge,getLeftmostAccessExpression:()=>oU,getLeftmostExpression:()=>aU,getLibFileNameFromLibReference:()=>Obe,getLibNameFromLibReference:()=>qY,getLibraryNameFromLibFileName:()=>dtt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ket,getLineOfLocalPosition:()=>Z7,getLineStartPositionForPosition:()=>PB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>obe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>UZe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>v3,getLinesBetweenRangeEndPositions:()=>JZe,getLiteralText:()=>Sge,getLocalNameForExternalImport:()=>yie,getLocalSymbolForExportDefault:()=>W7,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>qEe,getMappedContextSpan:()=>Jrt,getMappedDocumentSpan:()=>qVe,getMappedLocation:()=>Jde,getMatchedFileSpec:()=>Ftt,getMatchedIncludeSpec:()=>Ztt,getMeaningFromDeclaration:()=>DVe,getMeaningFromLocation:()=>DU,getMembersOfDeclaration:()=>Zge,getModeForFileReference:()=>S3t,getModeForResolutionAtIndex:()=>orn,getModeForUsageLocation:()=>gtt,getModifiedTime:()=>bb,getModifiers:()=>$R,getModuleInstanceState:()=>PF,getModuleNameStringLiteralAt:()=>KEe,getModuleSpecifierEndingPreference:()=>pLe,getModuleSpecifierResolverHost:()=>Vrt,getNameForExportedSymbol:()=>cPe,getNameFromImportAttribute:()=>XAe,getNameFromIndexInfo:()=>kge,getNameFromPropertyName:()=>d1e,getNameOfAccessExpression:()=>gbe,getNameOfCompilerOptionValue:()=>_9e,getNameOfDeclaration:()=>Il,getNameOfExpando:()=>_ye,getNameOfJSDocTypedef:()=>pF,getNameOfScriptTarget:()=>TAe,getNameOrArgument:()=>cne,getNameTable:()=>qnt,getNamespaceDeclarationNode:()=>JJ,getNewLineCharacter:()=>uN,getNewLineKind:()=>E1e,getNewLineOrDefaultFromHost:()=>OF,getNewTargetContainer:()=>oZe,getNextJSDocCommentLocation:()=>vye,getNodeChildren:()=>y$e,getNodeForGeneratedName:()=>pEe,getNodeId:()=>rd,getNodeKind:()=>pQ,getNodeModifiers:()=>Yde,getNodeModulePathParts:()=>MAe,getNonAssignedNameOfDeclaration:()=>Cw,getNonAssignmentOperatorForCompoundAssignment:()=>Bde,getNonAugmentationDeclaration:()=>LJ,getNonDecoratorTokenPosOfNode:()=>Mre,getNonIncrementalBuildInfoRoots:()=>H3t,getNonModifierTokenPosOfNode:()=>Ege,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>KR,getNormalizedPathComponents:()=>AB,getObjectFlags:()=>la,getOperatorAssociativity:()=>Lye,getOperatorPrecedence:()=>yne,getOptionFromName:()=>X$e,getOptionsForLibraryResolution:()=>aet,getOptionsNameMap:()=>vie,getOptionsSyntaxByArrayElementValue:()=>Mbe,getOptionsSyntaxByValue:()=>DLe,getOrCreateEmitNode:()=>c_,getOrUpdate:()=>cr,getOriginalNode:()=>Dd,getOriginalNodeId:()=>Wy,getOutputDeclarationFileName:()=>kde,getOutputDeclarationFileNameWorker:()=>Uet,getOutputExtension:()=>MEe,getOutputFileNames:()=>qtn,getOutputJSFileNameWorker:()=>Ket,getOutputPathsFor:()=>Dde,getOwnEmitOutputFilePath:()=>TZe,getOwnKeys:()=>_g,getOwnValues:()=>Qh,getPackageJsonTypesVersionsPaths:()=>T9e,getPackageNameFromTypesPackageName:()=>bde,getPackageScopeForPath:()=>yde,getParameterSymbolFromJSDoc:()=>dne,getParentNodeInSpan:()=>f1e,getParseTreeNode:()=>$l,getParsedCommandLineOfConfigFile:()=>_Ee,getPathComponents:()=>Np,getPathFromPathComponents:()=>Dm,getPathUpdater:()=>Cnt,getPathsBasePath:()=>oAe,getPatternFromSpec:()=>Ebe,getPendingEmitKindWithSeen:()=>lVe,getPositionOfLineAndCharacter:()=>th,getPossibleGenericSignatures:()=>wrt,getPossibleOriginalInputExtensionForExtension:()=>Hye,getPossibleOriginalInputPathWithoutChangingExt:()=>Yye,getPossibleTypeArgumentsInfo:()=>Trt,getPreEmitDiagnostics:()=>$tn,getPrecedingNonSpaceCharacterPosition:()=>$Ve,getPrivateIdentifier:()=>Pet,getProperties:()=>Let,getProperty:()=>pu,getPropertyAssignmentAliasLikeExpression:()=>yZe,getPropertyNameForPropertyNameNode:()=>_3,getPropertyNameFromType:()=>A2,getPropertyNameOfBindingOrAssignmentElement:()=>R$e,getPropertySymbolFromBindingElement:()=>zVe,getPropertySymbolsFromContextualType:()=>xPe,getQuoteFromPreference:()=>Wrt,getQuotePreference:()=>_1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>Vz,getReferencedFileLocation:()=>Zde,getRegexFromPattern:()=>zD,getRegularExpressionForWildcard:()=>j7,getRegularExpressionsForWildcards:()=>Hne,getRelativePathFromDirectory:()=>mp,getRelativePathFromFile:()=>i1,getRelativePathToDirectoryOrUrl:()=>Of,getRenameLocation:()=>h1e,getReplacementSpanForContextToken:()=>krt,getResolutionDiagnostic:()=>htt,getResolutionModeOverride:()=>Gie,getResolveJsonModule:()=>NP,getResolvePackageJsonExports:()=>U7,getResolvePackageJsonImports:()=>Vne,getResolvedExternalModuleName:()=>F7,getResolvedModuleFromResolution:()=>xL,getResolvedTypeReferenceDirectiveFromResolution:()=>c7,getRestIndicatorOfBindingOrAssignmentElement:()=>o9e,getRestParameterElementType:()=>pye,getRightMostAssignedExpression:()=>ane,getRootDeclaration:()=>Rw,getRootDirectoryOfResolutionCache:()=>K3t,getRootLength:()=>Wf,getScriptKind:()=>zrt,getScriptKindFromFileName:()=>GAe,getScriptTargetFeatures:()=>Hre,getSelectedEffectiveModifierFlags:()=>MY,getSelectedSyntacticModifierFlags:()=>ZZe,getSemanticClassifications:()=>xMt,getSemanticJsxChildren:()=>$J,getSetAccessorTypeAnnotationNode:()=>DZe,getSetAccessorValueParameter:()=>L7,getSetExternalModuleIndicator:()=>Lne,getShebang:()=>mB,getSingleVariableOfVariableStatement:()=>m3,getSnapshotText:()=>Lz,getSnippetElement:()=>zbe,getSourceFileOfModule:()=>FJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>cAe,getSourceFileVersionAsHashFromText:()=>IVe,getSourceFilesToEmit:()=>aAe,getSourceMapRange:()=>XT,getSourceMapper:()=>KMt,getSourceTextOfNodeFromSourceFile:()=>mF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>OD,getStartPositionOfRange:()=>H7,getStartsOnNewLine:()=>D3,getStaticPropertiesAndClassStaticBlock:()=>H9e,getStrictOptionValue:()=>a_,getStringComparer:()=>ld,getSubPatternFromSpec:()=>DAe,getSuperCallFromStatement:()=>O9e,getSuperContainer:()=>C7,getSupportedCodeFixes:()=>jnt,getSupportedExtensions:()=>z7,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>q7,getSwitchedType:()=>ent,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>_ne,getSymbolTarget:()=>qrt,getSyntacticClassifications:()=>GMt,getSyntacticModifierFlags:()=>Nx,getSyntacticModifierFlagsNoCache:()=>qye,getSynthesizedDeepClone:()=>JA,getSynthesizedDeepCloneWithReplacements:()=>rie,getSynthesizedDeepClones:()=>o0,getSynthesizedDeepClonesWithReplacements:()=>qAe,getSyntheticLeadingComments:()=>k3,getSyntheticTrailingComments:()=>hU,getTargetLabel:()=>GVe,getTargetOfBindingOrAssignmentElement:()=>ZP,getTemporaryModuleResolutionState:()=>_de,getTextOfConstantValue:()=>vge,getTextOfIdentifierOrLiteral:()=>c2,getTextOfJSDocComment:()=>pJ,getTextOfJsxAttributeName:()=>xw,getTextOfJsxNamespacedName:()=>lz,getTextOfNode:()=>xp,getTextOfNodeFromSourceText:()=>TY,getTextOfPropertyName:()=>hP,getThisContainer:()=>r0,getThisParameter:()=>vP,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>MD,getTokenSourceMapRange:()=>fz,getTouchingPropertyName:()=>Lb,getTouchingToken:()=>Hie,getTrailingCommentRanges:()=>n2,getTrailingSemicolonDeferringWriter:()=>Oye,getTransformers:()=>c3t,getTsBuildInfoEmitOutputFilePath:()=>U3,getTsConfigObjectLiteralExpression:()=>m7,getTsConfigPropArrayElementValue:()=>Pge,getTypeAnnotationNode:()=>kZe,getTypeArgumentOrTypeParameterList:()=>rMt,getTypeKeywordOfTypeOnlyImport:()=>Hrt,getTypeNode:()=>WLe,getTypeNodeIfAccessible:()=>qde,getTypeParameterFromJsDoc:()=>IZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>G9e,getUILocale:()=>df,getUniqueName:()=>GU,getUniqueSymbolId:()=>mMt,getUseDefineForClassFields:()=>Pne,getWatchErrorSummaryDiagnosticMessage:()=>Ntt,getWatchFactory:()=>ntt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>xre,handleNoEmitOptions:()=>Itt,handleWatchOptionsConfigDirTemplateSubstitution:()=>b9e,hasAbstractModifier:()=>wP,hasAccessorModifier:()=>Nw,hasAmbientModifier:()=>jye,hasChangesInResolutions:()=>Pre,hasContextSensitiveParameters:()=>OAe,hasDecorators:()=>p1,hasDocComment:()=>eMt,hasDynamicName:()=>XD,hasEffectiveModifier:()=>Gb,hasEffectiveModifiers:()=>Kye,hasEffectiveReadonlyModifier:()=>b3,hasExtension:()=>E0,hasImplementationTSFileExtension:()=>ALe,hasIndexSignature:()=>$rt,hasInferredType:()=>KAe,hasInitializer:()=>WT,hasInvalidEscape:()=>Pye,hasJSDocNodes:()=>Xm,hasJSDocParameterTags:()=>gJ,hasJSFileExtension:()=>pN,hasJsonModuleEmitEnabled:()=>wAe,hasOnlyExpressionInitializer:()=>l1,hasOverrideModifier:()=>Tne,hasPossibleExternalModuleReference:()=>Nge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>s1e,hasQuestionToken:()=>VY,hasRecordedExternalHelpers:()=>$Pt,hasResolutionModeOverride:()=>TLe,hasRestParameter:()=>Gre,hasScopeMarker:()=>Db,hasStaticModifier:()=>zh,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>FZe,hasTSFileExtension:()=>w3,hasTabstop:()=>BLe,hasTrailingDirectorySeparator:()=>Jp,hasType:()=>If,hasTypeArguments:()=>bqe,hasZeroOrOneAsteriskCharacter:()=>Cbe,hostGetCanonicalFileName:()=>JD,hostUsesCaseSensitiveFileNames:()=>y3,idText:()=>Vo,identifierIsThisKeyword:()=>Xye,identifierToKeywordKind:()=>iv,identity:()=>Fl,identitySourceMapConsumer:()=>Get,ignoreSourceNewlines:()=>$be,ignoredPaths:()=>Qp,importFromModuleSpecifier:()=>v7,importSyntaxAffectsModuleResolution:()=>Ibe,indexOfAnyCharCode:()=>et,indexOfNode:()=>fP,indicesOf:()=>po,inferredTypesContainingFile:()=>Fde,injectClassNamedEvaluationHelperBlockIfMissing:()=>J9e,injectClassThisAssignmentIfMissing:()=>FOt,insertImports:()=>Mrt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>FL,insertStatementAfterStandardPrologue:()=>yge,insertStatementsAfterCustomPrologue:()=>Wre,insertStatementsAfterStandardPrologue:()=>Sw,intersperse:()=>fe,intrinsicTagNameToString:()=>Vbe,introducesArgumentsExoticObject:()=>tZe,inverseJsxOptionMap:()=>mEe,isAbstractConstructorSymbol:()=>lbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>_p,isAccessibilityModifier:()=>Nrt,isAccessor:()=>yB,isAccessorModifier:()=>It,isAliasableExpression:()=>$ge,isAmbientModule:()=>s_,isAmbientPropertyDeclaration:()=>VJ,isAnyDirectorySeparator:()=>e0,isAnyImportOrBareOrAccessedRequire:()=>Rge,isAnyImportOrReExport:()=>DY,isAnyImportOrRequireStatement:()=>d7,isAnyImportSyntax:()=>IP,isAnySupportedFileExtension:()=>Jqe,isApplicableVersionedTypesKey:()=>REe,isArgumentExpressionOfElementAccess:()=>Crt,isArray:()=>Ki,isArrayBindingElement:()=>o3,isArrayBindingOrAssignmentElement:()=>EJ,isArrayBindingOrAssignmentPattern:()=>Bre,isArrayBindingPattern:()=>p2,isArrayLiteralExpression:()=>OI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>e9,isArrayTypeNode:()=>kF,isArrowFunction:()=>lA,isAsExpression:()=>Yd,isAssertClause:()=>xPt,isAssertEntry:()=>$qr,isAssertionExpression:()=>Ed,isAssertsKeyword:()=>J,isAssignmentDeclaration:()=>b7,isAssignmentExpression:()=>Jm,isAssignmentOperator:()=>UD,isAssignmentPattern:()=>CY,isAssignmentTarget:()=>bF,isAsteriskToken:()=>gie,isAsyncFunction:()=>D7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>t0,isAwaitExpression:()=>I1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>eQ,isBinaryExpression:()=>fo,isBinaryLogicalOperator:()=>Rne,isBinaryOperatorToken:()=>aWt,isBindableObjectDefinePropertyCall:()=>f3,isBindableStaticAccessExpression:()=>yP,isBindableStaticElementAccessExpression:()=>Kge,isBindableStaticNameExpression:()=>I3,isBindingElement:()=>hg,isBindingElementOfBareOrAccessedRequire:()=>lZe,isBindingName:()=>RL,isBindingOrAssignmentElement:()=>_J,isBindingOrAssignmentPattern:()=>yJ,isBindingPattern:()=>Nu,isBlock:()=>$u,isBlockLike:()=>Pz,isBlockOrCatchScoped:()=>ZJ,isBlockScope:()=>PJ,isBlockScopedContainerTopLevel:()=>Tge,isBooleanLiteral:()=>hY,isBreakOrContinueStatement:()=>AY,isBreakStatement:()=>jqr,isBuildCommand:()=>h5t,isBuildInfoFile:()=>l3t,isBuilderProgram:()=>ktt,isBundle:()=>LPt,isCallChain:()=>_B,isCallExpression:()=>Zl,isCallExpressionTarget:()=>drt,isCallLikeExpression:()=>hF,isCallLikeOrFunctionLikeExpression:()=>Tre,isCallOrNewExpression:()=>av,isCallOrNewExpressionTarget:()=>prt,isCallSignatureDeclaration:()=>wg,isCallToHelper:()=>qD,isCaseBlock:()=>ade,isCaseClause:()=>fie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>RJ,isCatchClause:()=>iQ,isCatchClauseVariableDeclaration:()=>vLe,isCatchClauseVariableDeclarationOrBindingElement:()=>Yre,isCheckJsEnabledForFile:()=>rz,isCircularBuildOrder:()=>Fz,isClassDeclaration:()=>pm,isClassElement:()=>PI,isClassExpression:()=>vd,isClassInstanceProperty:()=>vre,isClassLike:()=>xa,isClassMemberModifier:()=>Sre,isClassNamedEvaluationHelperBlock:()=>kz,isClassOrTypeElement:()=>mY,isClassStaticBlockDeclaration:()=>fl,isClassThisAssignmentBlock:()=>Tde,isColonToken:()=>nEe,isCommaExpression:()=>lEe,isCommaListExpression:()=>sde,isCommaSequence:()=>Ade,isCommaToken:()=>rEe,isComment:()=>YVe,isCommonJsExportPropertyAssignment:()=>Lge,isCommonJsExportedExpression:()=>fye,isCompoundAssignment:()=>vde,isComputedNonLiteralName:()=>kY,isComputedPropertyName:()=>Un,isConciseBody:()=>r7,isConditionalExpression:()=>Lw,isConditionalTypeNode:()=>d2,isConstAssertion:()=>Pbe,isConstTypeReference:()=>s2,isConstructSignatureDeclaration:()=>em,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>$D,isContextualKeyword:()=>tAe,isContinueStatement:()=>Kqr,isCustomPrologue:()=>jre,isDebuggerStatement:()=>zqr,isDeclaration:()=>jh,isDeclarationBindingElement:()=>uP,isDeclarationFileName:()=>PC,isDeclarationName:()=>HT,isDeclarationNameOfEnumOrNamespace:()=>abe,isDeclarationReadonly:()=>hf,isDeclarationStatement:()=>uge,isDeclarationWithTypeParameterChildren:()=>Kre,isDeclarationWithTypeParameters:()=>Ure,isDecorator:()=>So,isDecoratorTarget:()=>H5t,isDefaultClause:()=>cde,isDefaultImport:()=>h3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>uZe,isDeleteExpression:()=>GF,isDeleteTarget:()=>Tye,isDeprecatedDeclaration:()=>lPe,isDestructuringAssignment:()=>Dx,isDiskPathRoot:()=>cE,isDoStatement:()=>Uqr,isDocumentRegistryEntry:()=>v1e,isDotDotDotToken:()=>nde,isDottedName:()=>Dne,isDynamicName:()=>rAe,isEffectiveExternalModule:()=>g3,isEffectiveStrictModeSourceFile:()=>Jre,isElementAccessChain:()=>IF,isElementAccessExpression:()=>Yg,isEmittedFileOfProgram:()=>I3t,isEmptyArrayLiteral:()=>HZe,isEmptyBindingElement:()=>wr,isEmptyBindingPattern:()=>Ct,isEmptyObjectLiteral:()=>rbe,isEmptyStatement:()=>u$e,isEmptyStringLiteral:()=>mye,isEntityName:()=>fC,isEntityNameExpression:()=>Od,isEnumConst:()=>VA,isEnumDeclaration:()=>V3,isEnumMember:()=>LF,isEqualityOperatorKind:()=>rPe,isEqualsGreaterThanToken:()=>ULe,isExclamationToken:()=>Cz,isExcludedFile:()=>ZWt,isExclusivelyTypeOnlyImportOrExport:()=>utt,isExpandoPropertyDeclaration:()=>jY,isExportAssignment:()=>Cf,isExportDeclaration:()=>Gh,isExportModifier:()=>y,isExportName:()=>i9e,isExportNamespaceAsDefaultDeclaration:()=>wY,isExportOrDefaultModifier:()=>dEe,isExportSpecifier:()=>R0,isExportsIdentifier:()=>p3,isExportsOrModuleExportsOrAlias:()=>cQ,isExpression:()=>un,isExpressionNode:()=>MT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>X5t,isExpressionOfOptionalChainRoot:()=>gY,isExpressionStatement:()=>VC,isExpressionWithTypeArguments:()=>l_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>dAe,isExternalModule:()=>xm,isExternalModuleAugmentation:()=>_F,isExternalModuleImportEqualsDeclaration:()=>LL,isExternalModuleIndicator:()=>PT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>ZF,isExternalModuleSymbol:()=>WD,isExternalOrCommonJsModule:()=>vl,isFileLevelReservedGeneratedIdentifier:()=>fY,isFileLevelUniqueName:()=>u7,isFileProbablyExternalModule:()=>IEe,isFirstDeclarationOfSymbolParameter:()=>Urt,isFixablePromiseHandler:()=>vnt,isForInOrOfStatement:()=>DL,isForInStatement:()=>KLe,isForInitializer:()=>hE,isForOfStatement:()=>iEe,isForStatement:()=>L3,isFullSourceFile:()=>aN,isFunctionBlock:()=>mP,isFunctionBody:()=>n7,isFunctionDeclaration:()=>ih,isFunctionExpression:()=>UA,isFunctionExpressionOrArrowFunction:()=>RF,isFunctionLike:()=>bu,isFunctionLikeDeclaration:()=>kd,isFunctionLikeKind:()=>lP,isFunctionLikeOrClassStaticBlockDeclaration:()=>s3,isFunctionOrConstructorTypeNode:()=>oge,isFunctionOrModuleBlock:()=>CJ,isFunctionSymbol:()=>AZe,isFunctionTypeNode:()=>x_,isGeneratedIdentifier:()=>kp,isGeneratedPrivateIdentifier:()=>TL,isGetAccessor:()=>bB,isGetAccessorDeclaration:()=>Bg,isGetOrSetAccessorDeclaration:()=>fJ,isGlobalScopeAugmentation:()=>vB,isGlobalSourceFile:()=>fc,isGrammarError:()=>_ge,isHeritageClause:()=>h1,isHoistedFunction:()=>xge,isHoistedVariableStatement:()=>Gge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>kye,isIdentifierName:()=>_Ze,isIdentifierOrThisTypeNode:()=>nWt,isIdentifierPart:()=>s1,isIdentifierStart:()=>bd,isIdentifierText:()=>Uh,isIdentifierTypePredicate:()=>rZe,isIdentifierTypeReference:()=>_Le,isIfStatement:()=>Z3,isIgnoredFileFromWildCardWatching:()=>YEe,isImplicitGlob:()=>bbe,isImportAttribute:()=>GPt,isImportAttributeName:()=>e7,isImportAttributes:()=>CU,isImportCall:()=>Up,isImportClause:()=>Vw,isImportDeclaration:()=>Mf,isImportEqualsDeclaration:()=>km,isImportKeyword:()=>an,isImportMeta:()=>uv,isImportOrExportSpecifier:()=>eS,isImportOrExportSpecifierName:()=>hMt,isImportSpecifier:()=>uy,isImportTypeAssertionContainer:()=>qqr,isImportTypeNode:()=>Um,isImportable:()=>dnt,isInComment:()=>$L,isInCompoundLikeAssignment:()=>qge,isInExpressionContext:()=>rne,isInJSDoc:()=>GY,isInJSFile:()=>wo,isInJSXText:()=>$5t,isInJsonFile:()=>Xge,isInNonReferenceComment:()=>sMt,isInReferenceComment:()=>iMt,isInRightSideOfInternalImportEqualsDeclaration:()=>kVe,isInString:()=>Zz,isInTemplateString:()=>Brt,isInTopLevelContext:()=>Mge,isInTypeQuery:()=>OY,isIncrementalBuildInfo:()=>jEe,isIncrementalBundleEmitBuildInfo:()=>L3t,isIncrementalCompilation:()=>DP,isIndexSignatureDeclaration:()=>w0,isIndexedAccessTypeNode:()=>Iv,isInferTypeNode:()=>jT,isInfinityOrNaNString:()=>oz,isInitializedProperty:()=>GEe,isInitializedVariable:()=>xne,isInsideJsxElement:()=>MVe,isInsideJsxElementOrAttribute:()=>q5t,isInsideNodeModules:()=>_1e,isInsideTemplateLiteral:()=>u1e,isInstanceOfExpression:()=>pAe,isInstantiatedModule:()=>wet,isInterfaceDeclaration:()=>g_,isInternalDeclaration:()=>Fre,isInternalModuleImportEqualsDeclaration:()=>d3,isInternalName:()=>B$e,isIntersectionTypeNode:()=>mf,isIntrinsicJsxName:()=>eU,isIterationStatement:()=>VT,isJSDoc:()=>tR,isJSDocAllType:()=>WPt,isJSDocAugmentsTag:()=>bz,isJSDocAuthorTag:()=>n$r,isJSDocCallbackTag:()=>p$e,isJSDocClassTag:()=>MPt,isJSDocCommentContainingNode:()=>i7,isJSDocConstructSignature:()=>PY,isJSDocDeprecatedTag:()=>C$e,isJSDocEnumTag:()=>oEe,isJSDocFunctionType:()=>hie,isJSDocImplementsTag:()=>t9e,isJSDocImportTag:()=>SN,isJSDocIndexSignature:()=>Uge,isJSDocLikeText:()=>F$e,isJSDocLink:()=>VPt,isJSDocLinkCode:()=>PPt,isJSDocLinkLike:()=>Tx,isJSDocLinkPlain:()=>t$r,isJSDocMemberName:()=>O3,isJSDocNameReference:()=>lde,isJSDocNamepathType:()=>r$r,isJSDocNamespaceBody:()=>oye,isJSDocNode:()=>l3,isJSDocNonNullableType:()=>zLe,isJSDocNullableType:()=>Iie,isJSDocOptionalParameter:()=>HAe,isJSDocOptionalType:()=>d$e,isJSDocOverloadTag:()=>mie,isJSDocOverrideTag:()=>$Le,isJSDocParameterTag:()=>cS,isJSDocPrivateTag:()=>I$e,isJSDocPropertyLikeTag:()=>dY,isJSDocPropertyTag:()=>HPt,isJSDocProtectedTag:()=>h$e,isJSDocPublicTag:()=>f$e,isJSDocReadonlyTag:()=>m$e,isJSDocReturnTag:()=>e9e,isJSDocSatisfiesExpression:()=>Zbe,isJSDocSatisfiesTag:()=>r9e,isJSDocSeeTag:()=>i$r,isJSDocSignature:()=>qL,isJSDocTag:()=>u3,isJSDocTemplateTag:()=>ZB,isJSDocThisTag:()=>_$e,isJSDocThrowsTag:()=>o$r,isJSDocTypeAlias:()=>iS,isJSDocTypeAssertion:()=>sQ,isJSDocTypeExpression:()=>W3,isJSDocTypeLiteral:()=>yU,isJSDocTypeTag:()=>ude,isJSDocTypedefTag:()=>bU,isJSDocUnknownTag:()=>s$r,isJSDocUnknownType:()=>OPt,isJSDocVariadicType:()=>qLe,isJSXTagName:()=>YJ,isJsonEqual:()=>WAe,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>EN,isJsxAttributeLike:()=>wJ,isJsxAttributeName:()=>wLe,isJsxAttributes:()=>nQ,isJsxCallLike:()=>c3,isJsxChild:()=>BJ,isJsxClosingElement:()=>rQ,isJsxClosingFragment:()=>ZPt,isJsxElement:()=>bN,isJsxExpression:()=>pie,isJsxFragment:()=>P3,isJsxNamespacedName:()=>eR,isJsxOpeningElement:()=>$T,isJsxOpeningFragment:()=>Pw,isJsxOpeningLikeElement:()=>eI,isJsxOpeningLikeElementTagName:()=>Y5t,isJsxSelfClosingElement:()=>_U,isJsxSpreadAttribute:()=>yz,isJsxTagNameExpression:()=>kL,isJsxText:()=>KL,isJumpStatementTarget:()=>o1e,isKeyword:()=>v0,isKeywordOrPunctuation:()=>eAe,isKnownSymbol:()=>k7,isLabelName:()=>hrt,isLabelOfLabeledStatement:()=>Irt,isLabeledStatement:()=>FP,isLateVisibilityPaintedStatement:()=>p7,isLeftHandSideExpression:()=>D_,isLet:()=>rS,isLineBreak:()=>Cl,isLiteralComputedPropertyDeclarationName:()=>fne,isLiteralExpression:()=>wL,isLiteralExpressionOfObject:()=>bre,isLiteralImportTypeNode:()=>ky,isLiteralKind:()=>pY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>FVe,isLiteralTypeLiteral:()=>age,isLiteralTypeNode:()=>EE,isLocalName:()=>VF,isLogicalOperator:()=>WZe,isLogicalOrCoalescingAssignmentExpression:()=>gAe,isLogicalOrCoalescingAssignmentOperator:()=>V7,isLogicalOrCoalescingBinaryExpression:()=>Nne,isLogicalOrCoalescingBinaryOperator:()=>AAe,isMappedTypeNode:()=>GB,isMemberName:()=>_w,isMetaProperty:()=>Du,isMethodDeclaration:()=>uu,isMethodOrAccessor:()=>NL,isMethodSignature:()=>hl,isMinusToken:()=>ide,isMissingDeclaration:()=>e$r,isMissingPackageJsonInfo:()=>JWt,isModifier:()=>Ig,isModifierKind:()=>VD,isModifierLike:()=>dp,isModuleAugmentationExternal:()=>Xre,isModuleBlock:()=>_N,isModuleBody:()=>cge,isModuleDeclaration:()=>xh,isModuleExportName:()=>jLe,isModuleExportsAccessExpression:()=>cN,isModuleIdentifier:()=>_P,isModuleName:()=>oWt,isModuleOrEnumDeclaration:()=>a3,isModuleReference:()=>yY,isModuleSpecifierLike:()=>jVe,isModuleWithStringLiteralName:()=>RY,isNameOfFunctionDeclaration:()=>yrt,isNameOfModuleDeclaration:()=>_rt,isNamedDeclaration:()=>rh,isNamedEvaluation:()=>kb,isNamedEvaluationSource:()=>xye,isNamedExportBindings:()=>yre,isNamedExports:()=>mv,isNamedImportBindings:()=>wx,isNamedImports:()=>yN,isNamedImportsOrExports:()=>Gne,isNamedTupleMember:()=>KT,isNamespaceBody:()=>Nre,isNamespaceExport:()=>tk,isNamespaceExportDeclaration:()=>sEe,isNamespaceImport:()=>Zx,isNamespaceReexportDeclaration:()=>cZe,isNewExpression:()=>f2,isNewExpressionTarget:()=>Ode,isNewScopeNode:()=>eie,isNoSubstitutionTemplateLiteral:()=>GP,isNodeArray:()=>tN,isNodeArrayMultiLine:()=>hAe,isNodeDescendantOf:()=>EP,isNodeKind:()=>z6,isNodeLikeSystem:()=>Mm,isNodeModulesDirectory:()=>Vd,isNodeWithPossibleHoistedDeclaration:()=>CZe,isNonContextualKeyword:()=>Dye,isNonGlobalAmbientModule:()=>Qre,isNonNullAccess:()=>YAe,isNonNullChain:()=>hJ,isNonNullExpression:()=>hv,isNonStaticMethodOrAccessorWithPrivateName:()=>TOt,isNotEmittedStatement:()=>FPt,isNullishCoalesce:()=>IJ,isNumber:()=>ws,isNumericLiteral:()=>mC,isNumericLiteralName:()=>IN,isObjectBindingElementWithoutPropertyName:()=>p1e,isObjectBindingOrAssignmentElement:()=>gP,isObjectBindingOrAssignmentPattern:()=>bJ,isObjectBindingPattern:()=>Km,isObjectLiteralElement:()=>bY,isObjectLiteralElementLike:()=>yw,isObjectLiteralExpression:()=>og,isObjectLiteralMethod:()=>a2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Vge,isObjectTypeDeclaration:()=>YY,isOmittedExpression:()=>yp,isOptionalChain:()=>GC,isOptionalChainRoot:()=>aP,isOptionalDeclaration:()=>RB,isOptionalJSDocPropertyLikeTag:()=>jne,isOptionalTypeNode:()=>jL,isOuterExpression:()=>s9e,isOutermostOptionalChain:()=>i3,isOverrideModifier:()=>bt,isPackageJsonInfo:()=>N9e,isPackedArrayLiteral:()=>Gbe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>Ve,isParameterPropertyModifier:()=>IY,isParenthesizedExpression:()=>gI,isParenthesizedTypeNode:()=>fv,isParseTreeNode:()=>SL,isPartOfParameterDeclaration:()=>HL,isPartOfTypeNode:()=>ww,isPartOfTypeOnlyImportOrExportDeclaration:()=>sge,isPartOfTypeQuery:()=>Qge,isPartiallyEmittedExpression:()=>ly,isPatternMatch:()=>jd,isPinnedComment:()=>g7,isPlainJsFile:()=>SY,isPlusToken:()=>mz,isPossiblyTypeArgumentPosition:()=>l1e,isPostfixUnaryExpression:()=>ek,isPrefixUnaryExpression:()=>T0,isPrimitiveLiteralValue:()=>uz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>pC,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>EZe,isProgramUptoDate:()=>ptt,isPrologueDirective:()=>nS,isPropertyAccessChain:()=>vx,isPropertyAccessEntityNameExpression:()=>BF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>SJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>wre,isPropertyAssignment:()=>fm,isPropertyDeclaration:()=>pi,isPropertyName:()=>VI,isPropertyNameLiteral:()=>Tw,isPropertySignature:()=>ss,isPrototypeAccess:()=>wF,isPrototypePropertyAssignment:()=>lne,isPunctuation:()=>Nye,isPushOrUnshiftIdentifier:()=>Gye,isQualifiedName:()=>zi,isQuestionDotToken:()=>Aie,isQuestionOrExclamationToken:()=>rWt,isQuestionOrPlusOrMinusToken:()=>sWt,isQuestionToken:()=>UT,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>iWt,isRecognizedTripleSlashComment:()=>Ore,isReferenceFileLocation:()=>Fie,isReferencedFile:()=>K3,isRegularExpressionLiteral:()=>tEe,isRequireCall:()=>ay,isRequireVariableStatement:()=>nne,isRestParameter:()=>EB,isRestTypeNode:()=>zL,isReturnStatement:()=>I2,isReturnStatementWithFixablePromiseHandler:()=>hPe,isRightSideOfAccessExpression:()=>tbe,isRightSideOfInstanceofExpression:()=>MZe,isRightSideOfPropertyAccess:()=>Wie,isRightSideOfQualifiedName:()=>Q5t,isRightSideOfQualifiedNameOrPropertyAccess:()=>P7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>OZe,isRootedDiskPath:()=>Xp,isSameEntityName:()=>QJ,isSatisfiesExpression:()=>Qg,isSemicolonClassElement:()=>DPt,isSetAccessor:()=>cv,isSetAccessorDeclaration:()=>Dg,isShiftOperatorOrHigher:()=>k$e,isShorthandAmbientModuleSymbol:()=>NY,isShorthandPropertyAssignment:()=>a0,isSideEffectImport:()=>Wbe,isSignedNumericLiteral:()=>Cne,isSimpleCopiableExpression:()=>lQ,isSimpleInlineableExpression:()=>BN,isSimpleParameterList:()=>FEe,isSingleOrDoubleQuote:()=>ine,isSolutionConfig:()=>tet,isSourceElement:()=>RLe,isSourceFile:()=>ll,isSourceFileFromLibrary:()=>zie,isSourceFileJS:()=>n0,isSourceFileNotJson:()=>Jge,isSourceMapping:()=>vOt,isSpecialPropertyDeclaration:()=>Eye,isSpreadAssignment:()=>Lx,isSpreadElement:()=>of,isStatement:()=>Lc,isStatementButNotDeclaration:()=>vJ,isStatementOrBlock:()=>kre,isStatementWithLocals:()=>mge,isStatic:()=>cg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>WY,isStringAndEmptyAnonymousObjectIntersection:()=>nMt,isStringDoubleQuoted:()=>sne,isStringLiteral:()=>Zg,isStringLiteralLike:()=>mA,isStringLiteralOrJsxExpression:()=>TJ,isStringLiteralOrTemplate:()=>yMt,isStringOrNumericLiteralLike:()=>d1,isStringOrRegularExpressionOrTemplateLiteral:()=>Rrt,isStringTextContainingNode:()=>Ere,isSuperCall:()=>Dy,isSuperKeyword:()=>rr,isSuperProperty:()=>xy,isSupportedSourceFileName:()=>Bbe,isSwitchStatement:()=>ode,isSyntaxList:()=>Cie,isSyntheticExpression:()=>F3,isSyntheticReference:()=>_z,isTagName:()=>mrt,isTaggedTemplateExpression:()=>MI,isTaggedTemplateTag:()=>M5t,isTemplateExpression:()=>FF,isTemplateHead:()=>tQ,isTemplateLiteral:()=>AP,isTemplateLiteralKind:()=>LD,isTemplateLiteralToken:()=>ige,isTemplateLiteralTypeNode:()=>zT,isTemplateLiteralTypeSpan:()=>mN,isTemplateMiddle:()=>uie,isTemplateMiddleOrTemplateTail:()=>$6,isTemplateSpan:()=>die,isTemplateTail:()=>rde,isTextWhiteSpaceLike:()=>lMt,isThis:()=>Oie,isThisContainerOrFunctionBlock:()=>sZe,isThisIdentifier:()=>vF,isThisInTypeQuery:()=>YL,isThisInitializedDeclaration:()=>Hge,isThisInitializedObjectBindingExpression:()=>aZe,isThisProperty:()=>$re,isThisTypeNode:()=>Fx,isThisTypeParameter:()=>az,isThisTypePredicate:()=>nZe,isThrowStatement:()=>A$e,isToken:()=>BL,isTokenKind:()=>q6,isTraceEnabled:()=>VP,isTransientSymbol:()=>bw,isTrivia:()=>zJ,isTryStatement:()=>mU,isTupleTypeNode:()=>Zw,isTypeAlias:()=>gne,isTypeAliasDeclaration:()=>FB,isTypeAssertionExpression:()=>xF,isTypeDeclaration:()=>KY,isTypeElement:()=>Bx,isTypeKeyword:()=>Qde,isTypeKeywordTokenOrIdentifier:()=>JVe,isTypeLiteralNode:()=>mh,isTypeNode:()=>uc,isTypeNodeKind:()=>bAe,isTypeOfExpression:()=>CN,isTypeOnlyExportDeclaration:()=>mJ,isTypeOnlyImportDeclaration:()=>rN,isTypeOnlyImportOrExportDeclaration:()=>nN,isTypeOperatorNode:()=>xB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>bE,isTypeQueryNode:()=>Fw,isTypeReferenceNode:()=>nh,isTypeReferenceType:()=>s7,isTypeUsableAsPropertyName:()=>g2,isUMDExportSymbol:()=>yAe,isUnaryExpression:()=>Rre,isUnaryExpressionWithWrite:()=>iN,isUnicodeIdentifierStart:()=>ft,isUnionTypeNode:()=>aS,isUrl:()=>n_,isValidBigIntString:()=>Jne,isValidESSymbolDeclaration:()=>eZe,isValidTypeOnlyAliasUseSite:()=>JL,isValueSignatureDeclaration:()=>C3,isVarAwaitUsing:()=>Sd,isVarConst:()=>rI,isVarConstLike:()=>OT,isVarUsing:()=>tI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>h7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>CP,isVariableDeclarationInitializedToRequire:()=>y7,isVariableDeclarationList:()=>u_,isVariableLike:()=>I7,isVariableStatement:()=>Ch,isVoidExpression:()=>qT,isWatchSet:()=>cbe,isWhileStatement:()=>g$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>Iu,isWithStatement:()=>kPt,isWriteAccess:()=>B3,isWriteOnlyAccess:()=>CAe,isYieldExpression:()=>Hd,jsxModeNeedsExplicitImport:()=>unt,keywordPart:()=>y1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>W$e,libs:()=>A9e,lineBreakPart:()=>Jie,loadModuleFromGlobalCache:()=>aOt,loadWithModeAwareCache:()=>XEe,makeIdentifierFromModuleName:()=>vw,makeImport:()=>QP,makeStringLiteral:()=>Xde,mangleScopedPackageName:()=>Nie,map:()=>At,mapAllOrFail:()=>qt,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Yt,mapOneOrMany:()=>ont,mapToDisplayParts:()=>XP,matchFiles:()=>Sbe,matchPatternOrExact:()=>Tbe,matchedText:()=>pw,matchesExclude:()=>v9e,matchesExcludeWorker:()=>B9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>qZe,memoize:()=>FA,memoizeOne:()=>ZA,min:()=>oa,minAndMax:()=>hLe,missingFileModifiedTime:()=>Rh,modifierToFlag:()=>HY,modifiersToFlags:()=>Dw,moduleExportNameIsDefault:()=>lv,moduleExportNameTextEscaped:()=>CF,moduleExportNameTextUnescaped:()=>HD,moduleOptionDeclaration:()=>mWt,moduleResolutionIsEqualTo:()=>Ige,moduleResolutionNameAndModeGetter:()=>tVe,moduleResolutionOptionDeclarations:()=>M$e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>lU,moduleResolutionUsesNodeModules:()=>UVe,moduleSpecifierToValidIdentifier:()=>b1e,moduleSpecifiers:()=>WF,moduleSupportsImportAttributes:()=>iLe,moduleSymbolToValidIdentifier:()=>y1e,moveEmitHelpers:()=>VLe,moveRangeEnd:()=>IAe,moveRangePastDecorators:()=>jD,moveRangePastModifiers:()=>Av,moveRangePos:()=>KD,moveSyntheticComments:()=>FLe,mutateMap:()=>Q7,mutateMapSkippingNewValues:()=>gN,needsParentheses:()=>ePe,needsScopeMarker:()=>t7,newCaseClauseTracker:()=>APe,newPrivateEnvironment:()=>NOt,noEmitNotification:()=>PEe,noEmitSubstitution:()=>Nde,noTransformers:()=>a3t,noTruncationMaximumTruncationLength:()=>Lre,nodeCanBeDecorated:()=>OJ,nodeCoreModules:()=>dU,nodeHasName:()=>t3,nodeIsDecorated:()=>MJ,nodeIsMissing:()=>sf,nodeIsPresent:()=>u1,nodeIsSynthesized:()=>sp,nodeModuleNameResolver:()=>qWt,nodeModulesPathPart:()=>Vx,nodeNextJsonConfigResolver:()=>$Wt,nodeOrChildIsDecorated:()=>tne,nodeOverlapsWithStartEnd:()=>ZVe,nodePosToString:()=>Cge,nodeSeenTracker:()=>Yie,nodeStartsNewLexicalEnvironment:()=>Fye,noop:()=>Dc,noopFileWatcher:()=>Vie,normalizePath:()=>iu,normalizeSlashes:()=>Dp,normalizeSpans:()=>EI,not:()=>uC,notImplemented:()=>il,notImplementedResolver:()=>A3t,nullNodeConverters:()=>Qbe,nullParenthesizerRules:()=>Ybe,nullTransformationContext:()=>OEe,objectAllocator:()=>ZC,operatorPart:()=>Ude,optionDeclarations:()=>Ww,optionMapToObject:()=>C9e,optionsAffectingProgramStructure:()=>bWt,optionsForBuild:()=>Y$e,optionsForWatch:()=>wz,optionsHaveChanges:()=>S0,or:()=>Hp,orderedRemoveItem:()=>Ql,orderedRemoveItemAt:()=>LA,packageIdToPackageName:()=>xJ,packageIdToString:()=>oN,parameterIsThisKeyword:()=>SF,parameterNamePart:()=>gMt,parseBaseNodeFactory:()=>AWt,parseBigInt:()=>CLe,parseBuildCommand:()=>NWt,parseCommandLine:()=>TWt,parseCommandLineWorker:()=>Q$e,parseConfigFileTextToJson:()=>J$e,parseConfigFileWithSystem:()=>z3t,parseConfigHostFromCompilerHostLike:()=>aVe,parseCustomTypeOption:()=>I9e,parseIsolatedEntityName:()=>Bz,parseIsolatedJSDocComment:()=>pWt,parseJSDocTypeExpressionForTests:()=>N$r,parseJsonConfigFileContent:()=>oen,parseJsonSourceFileConfigFileContent:()=>EEe,parseJsonText:()=>hEe,parseListTypeOption:()=>BWt,parseNodeFactory:()=>H3,parseNodeModuleFromPath:()=>wEe,parsePackageName:()=>TEe,parsePseudoBigInt:()=>nz,parseValidBigInt:()=>kbe,pasteEdits:()=>lst,patchWriteFileEnsuringDirectory:()=>e2,pathContainsNodeModules:()=>WP,pathIsAbsolute:()=>lE,pathIsBareSpecifier:()=>Xh,pathIsRelative:()=>Ip,patternText:()=>j1,performIncrementalCompilation:()=>q3t,performance:()=>hb,positionBelongsToNode:()=>brt,positionIsASICandidate:()=>nPe,positionIsSynthesized:()=>wB,positionsAreOnSameLine:()=>yE,preProcessFile:()=>hin,probablyUsesSemicolons:()=>C1e,processCommentPragmas:()=>V$e,processPragmasIntoFields:()=>P$e,processTaggedTemplateExpression:()=>Met,programContainsEsModules:()=>aMt,programContainsModules:()=>oMt,projectReferenceIsEqualTo:()=>Vre,propertyNamePart:()=>AMt,pseudoBigIntToString:()=>kP,punctuationPart:()=>k0,pushIfUnique:()=>Qi,quote:()=>zde,quotePreferenceFromString:()=>Prt,rangeContainsPosition:()=>Mie,rangeContainsPositionExclusive:()=>a1e,rangeContainsRange:()=>cy,rangeContainsRangeExclusive:()=>J5t,rangeContainsStartEnd:()=>c1e,rangeEndIsOnSameLineAsRangeStart:()=>kne,rangeEndPositionsAreOnSameLine:()=>QZe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>S3,rangeOfNode:()=>Nbe,rangeOfTypeParameters:()=>Dbe,rangeOverlapsWithStartEnd:()=>Mde,rangeStartIsOnSameLineAsRangeEnd:()=>XZe,rangeStartPositionsAreOnSameLine:()=>M7,readBuilderProgram:()=>mVe,readConfigFile:()=>yEe,readJson:()=>E3,readJsonConfigFile:()=>DWt,readJsonOrUndefined:()=>sbe,reduceEachLeadingCommentRange:()=>EL,reduceEachTrailingCommentRange:()=>ff,reduceLeft:()=>Ul,reduceLeftIterator:()=>ne,reducePathComponents:()=>t2,refactor:()=>Oz,regExpEscape:()=>Mqe,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Wr,removeAllComments:()=>pz,removeEmitHelper:()=>n$e,removeExtension:()=>Xne,removeFileExtension:()=>s0,removeIgnoredPath:()=>gVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Nm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>ny,repeatString:()=>A1e,replaceElement:()=>Yl,replaceFirstStar:()=>R3,resolutionExtensionIsTSOrJson:()=>ez,resolveConfigFileProjectName:()=>Xtt,resolveJSModule:()=>KWt,resolveLibrary:()=>k9e,resolveModuleName:()=>BU,resolveModuleNameFromCache:()=>Ven,resolvePackageNameToPackageJson:()=>set,resolvePath:()=>AE,resolveProjectReferencePath:()=>xz,resolveTripleslashReference:()=>stt,resolveTypeReferenceDirective:()=>QWt,resolvingEmptyArray:()=>Zre,returnFalse:()=>As,returnNoopFileWatcher:()=>Vde,returnTrue:()=>Tf,returnUndefined:()=>cm,returnsPromise:()=>Snt,rewriteModuleSpecifier:()=>Nz,sameFlatMap:()=>Zr,sameMap:()=>Tr,sameMapping:()=>Ttn,scanTokenAtPosition:()=>qs,scanner:()=>A_,semanticDiagnosticsOptionDeclarations:()=>CWt,serializeCompilerOptions:()=>q$e,server:()=>_fn,servicesVersion:()=>oon,setCommentRange:()=>hh,setConfigFileInOptions:()=>$$e,setConstantValue:()=>LLe,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>hVe,setIdentifierAutoGenerate:()=>oie,setIdentifierGeneratedImportReference:()=>OLe,setIdentifierTypeArguments:()=>xx,setInternalEmitFlags:()=>sie,setLocalizedDiagnosticMessages:()=>cU,setNodeChildren:()=>YPt,setNodeFlags:()=>bLe,setObjectAllocator:()=>zZe,setOriginalNode:()=>ua,setParent:()=>XA,setParentRecursive:()=>UL,setPrivateIdentifier:()=>wU,setSnippetElement:()=>qbe,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>xT,setStartsOnNewLine:()=>Md,setSyntheticLeadingComments:()=>kB,setSyntheticTrailingComments:()=>x3,setSys:()=>bI,setSysLog:()=>xC,setTextRange:()=>gn,setTextRangeEnd:()=>AU,setTextRangePos:()=>iz,setTextRangePosEnd:()=>TB,setTextRangePosWidth:()=>xbe,setTokenSourceMapRange:()=>Kbe,setTypeNode:()=>PLe,setUILocale:()=>Zs,setValueDeclaration:()=>S7,shouldAllowImportingTsExtension:()=>Die,shouldPreserveConstEnums:()=>Fb,shouldRewriteModuleSpecifier:()=>une,shouldUseUriStyleNodeCoreModules:()=>uPe,showModuleSpecifier:()=>KZe,signatureHasRestParameter:()=>D0,signatureToDisplayParts:()=>jrt,single:()=>Xa,singleElementArray:()=>J_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ps,skipAlias:()=>FC,skipConstraint:()=>Zrt,skipOuterExpressions:()=>HI,skipParentheses:()=>QA,skipPartiallyEmittedExpressions:()=>o2,skipTrivia:()=>Yu,skipTypeChecking:()=>T3,skipTypeCheckingIgnoringNoCheck:()=>mLe,skipTypeParentheses:()=>w7,skipWhile:()=>cp,sliceAfter:()=>Rbe,some:()=>jt,sortAndDeduplicate:()=>cl,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>H$e,sourceFileMayBeEmitted:()=>SP,sourceMapCommentRegExp:()=>Net,sourceMapCommentRegExpDontCareLineStart:()=>bOt,spacePart:()=>BI,spanMap:()=>_n,startEndContainsRange:()=>mAe,startEndOverlapsWithStartEnd:()=>LVe,startOnNewLine:()=>N0,startTracing:()=>fd,startsWith:()=>Ac,startsWithDirectory:()=>$S,startsWithUnderscore:()=>lnt,startsWithUseStrict:()=>zPt,stringContainsAt:()=>TMt,stringToToken:()=>Ta,stripQuotes:()=>l2,supportedDeclarationExtensions:()=>LAe,supportedJSExtensionsFlat:()=>uU,supportedLocaleDirectories:()=>nv,supportedTSExtensionsFlat:()=>vbe,supportedTSImplementationExtensions:()=>Yne,suppressLeadingAndTrailingTrivia:()=>Vy,suppressLeadingTrivia:()=>Hbe,suppressTrailingTrivia:()=>kLe,symbolEscapedNameNoDefault:()=>KVe,symbolName:()=>nf,symbolNameNoDefault:()=>Ort,symbolToDisplayParts:()=>Kde,sys:()=>yd,sysLog:()=>Ih,tagNamesAreEquivalent:()=>Q3,takeWhile:()=>t_,targetOptionDeclaration:()=>O$e,targetToLibMap:()=>Is,testFormatSettings:()=>Pnn,textChangeRangeIsUnchanged:()=>sy,textChangeRangeNewSpan:()=>qR,textChanges:()=>xo,textOrKeywordPart:()=>Krt,textPart:()=>gS,textRangeContainsPositionInclusive:()=>sl,textRangeContainsTextSpan:()=>Og,textRangeIntersectsWithTextSpan:()=>e3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>ed,textSpanContainsTextSpan:()=>Nd,textSpanEnd:()=>Rs,textSpanIntersection:()=>IA,textSpanIntersectsWith:()=>q2,textSpanIntersectsWithPosition:()=>zR,textSpanIntersectsWithTextSpan:()=>Tb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>o1,textSpanOverlapsWith:()=>Nh,textSpansEqual:()=>Xie,textToKeywordObj:()=>ev,timestamp:()=>Fg,toArray:()=>cc,toBuilderFileEmit:()=>W3t,toBuilderStateFileInfoForMultiEmit:()=>P3t,toEditorSettings:()=>N1e,toFileNameLowerCase:()=>Om,toPath:()=>Ou,toProgramEmitPending:()=>O3t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>Id,tokenIsIdentifierOrKeywordOrGreaterThan:()=>fB,tokenToString:()=>Vi,trace:()=>eu,tracing:()=>ki,tracingEnabled:()=>Kl,transferSourceFileChildren:()=>QPt,transform:()=>Ion,transformClassFields:()=>WOt,transformDeclarations:()=>Xet,transformECMAScriptModule:()=>Qet,transformES2015:()=>e3t,transformES2016:()=>$Ot,transformES2017:()=>YOt,transformES2018:()=>QOt,transformES2019:()=>XOt,transformES2020:()=>JOt,transformES2021:()=>UOt,transformESDecorators:()=>HOt,transformESNext:()=>KOt,transformGenerators:()=>t3t,transformImpliedNodeFormatDependentModule:()=>n3t,transformJsx:()=>qOt,transformLegacyDecorators:()=>MOt,transformModule:()=>Yet,transformNamedEvaluation:()=>m1,transformNodes:()=>WEe,transformSystemModule:()=>r3t,transformTypeScript:()=>POt,transpile:()=>Bin,transpileDeclaration:()=>Sin,transpileModule:()=>zMt,transpileOptionValueCompilerOptions:()=>EWt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>oPe,tryCast:()=>Gs,tryDirectoryExists:()=>sPe,tryExtractTSExtension:()=>O7,tryFileExists:()=>Kie,tryGetClassExtendingExpressionWithTypeArguments:()=>$ye,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>ebe,tryGetDirectories:()=>iPe,tryGetExtensionFromPath:()=>QT,tryGetImportFromModuleSpecifier:()=>B7,tryGetJSDocSatisfiesTypeNode:()=>QAe,tryGetModuleNameFromFile:()=>gEe,tryGetModuleSpecifierFromDeclaration:()=>ZY,tryGetNativePerformanceHooks:()=>YS,tryGetPropertyAccessOrIdentifierToString:()=>TP,tryGetPropertyNameOfBindingOrAssignmentElement:()=>a9e,tryGetSourceMappingURL:()=>EOt,tryGetTextOfPropertyName:()=>xY,tryParseJson:()=>nU,tryParsePattern:()=>UY,tryParsePatterns:()=>$7,tryParseRawSourceMap:()=>SOt,tryReadDirectory:()=>rnt,tryReadFile:()=>fde,tryRemoveDirectoryPrefix:()=>NAe,tryRemoveExtension:()=>ILe,tryRemovePrefix:()=>HS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>SU,typeAcquisitionDeclarations:()=>p9e,typeAliasNamePart:()=>dMt,typeDirectiveIsEqualTo:()=>hge,typeKeywords:()=>Frt,typeParameterNamePart:()=>pMt,typeToDisplayParts:()=>I1e,unchangedPollThresholds:()=>q_,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>NEe,unorderedRemoveItem:()=>ef,unprefixedNodeCoreModules:()=>qne,unreachableCodeIsError:()=>rLe,unsetNodeChildren:()=>b$e,unusedLabelIsError:()=>nLe,unwrapInnermostStatementOfLabel:()=>Iye,unwrapParenthesizedExpression:()=>UAe,updateErrorForNoInputFiles:()=>S9e,updateLanguageServiceSourceFile:()=>znt,updateMissingFilePathsWatch:()=>rtt,updateResolutionField:()=>Bie,updateSharedExtendedConfigFileWatcher:()=>z9e,updateSourceFile:()=>Z$e,updateWatchingWildcardDirectories:()=>HEe,usingSingleLineStringWriter:()=>dP,utf16EncodeAsString:()=>jR,validateLocaleAndSetLanguage:()=>yx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Ede,visitCommaListElements:()=>xEe,visitEachChild:()=>_s,visitFunctionBody:()=>uS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>Ret,visitNode:()=>Mr,visitNodes:()=>Ws,visitParameterList:()=>vI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>qPt,walkUpParenthesizedExpressions:()=>gv,walkUpParenthesizedTypes:()=>pne,walkUpParenthesizedTypesAndGetParentAndChild:()=>wye,whitespaceOrMapCommentRegExp:()=>Det,writeCommentRange:()=>rU,writeFile:()=>lAe,writeFileEnsuringDirectories:()=>Qye,zipWith:()=>ce}),e.exports=A(f);var I="5.9",C="5.9.3",b=(s=>(s[s.LessThan=-1]="LessThan",s[s.EqualTo=0]="EqualTo",s[s.GreaterThan=1]="GreaterThan",s))(b||{}),E=[],N=new Map;function B(s){return s!==void 0?s.length:0}function F(s,c){if(s!==void 0)for(let g=0;g=0;g--){let d=c(s[g],g);if(d)return d}}function X(s,c){if(s!==void 0)for(let g=0;g=0;d--){let h=s[d];if(c(h,d))return h}}function Se(s,c,g){if(s===void 0)return-1;for(let d=g??0;d=0;d--)if(c(s[d],d))return d;return-1}function k(s,c,g=yg){if(s!==void 0){for(let d=0;d{let[_,S]=c(h,d);g.set(_,S)}),g}function jt(s,c){if(s!==void 0)if(c!==void 0){for(let g=0;g0;return!1}function Fn(s,c,g){let d;for(let h=0;hs[S])}function xi(s,c){let g=[];for(let d=0;d0&&d(c,s[S-1]))return!1;if(S0&&pe.assertGreaterThanOrEqual(g(c[_],c[_-1]),0);t:for(let S=h;hS&&pe.assertGreaterThanOrEqual(g(s[h],s[h-1]),0),g(c[_],s[h])){case-1:d.push(c[_]);continue e;case 0:continue e;case 1:continue t}}return d}function Ft(s,c){return c===void 0?s:s===void 0?[c]:(s.push(c),s)}function zr(s,c){return s===void 0?c:c===void 0?s:Ki(s)?Ki(c)?Nn(s,c):Ft(s,c):Ki(c)?Ft(c,s):[s,c]}function Rn(s,c){return c<0?s.length+c:c}function Or(s,c,g,d){if(c===void 0||c.length===0)return s;if(s===void 0)return c.slice(g,d);g=g===void 0?0:Rn(c,g),d=d===void 0?c.length:Rn(c,d);for(let h=g;hg(s[d],s[h])||Zt(d,h))}function bo(s,c){return s.length===0?E:s.slice().sort(c)}function*Qa(s){for(let c=s.length-1;c>=0;c--)yield s[c]}function gc(s,c,g,d){for(;gs?.at(c):(s,c)=>{if(s!==void 0&&(c=Rn(s,c),c>1),T=g(s[R],R);switch(d(T,c)){case-1:_=R+1;break;case 0:return R;case 1:S=R-1;break}}return~_}function Ul(s,c,g,d,h){if(s&&s.length>0){let _=s.length;if(_>0){let S=d===void 0||d<0?0:d,R=h===void 0||S+h>_-1?_-1:S+h,T;for(arguments.length<=2?(T=s[S],S++):T=g;S<=R;)T=c(T,s[S],S),S++;return T}}return g}var Xu=Object.prototype.hasOwnProperty;function Da(s,c){return Xu.call(s,c)}function pu(s,c){return Xu.call(s,c)?s[c]:void 0}function _g(s){let c=[];for(let g in s)Xu.call(s,g)&&c.push(g);return c}function mI(s){let c=[];do{let g=Object.getOwnPropertyNames(s);for(let d of g)Qi(c,d)}while(s=Object.getPrototypeOf(s));return c}function Qh(s){let c=[];for(let g in s)Xu.call(s,g)&&c.push(s[g]);return c}function Ri(s,c){let g=new Array(s);for(let d=0;d100&&g>c.length>>1){let R=c.length-g;c.copyWithin(0,g),c.length=R,g=0}return S}return{enqueue:h,dequeue:_,isEmpty:d}}function oo(s,c){let g=new Map,d=0;function*h(){for(let S of g.values())Ki(S)?yield*S:yield S}let _={has(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);return Ki(T)?k(T,S,c):c(T,S)},add(S){let R=s(S);if(g.has(R)){let T=g.get(R);if(Ki(T))k(T,S,c)||(T.push(S),d++);else{let W=T;c(W,S)||(g.set(R,[W,S]),d++)}}else g.set(R,S),d++;return this},delete(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);if(Ki(T)){for(let W=0;Wh(),[Symbol.toStringTag]:g[Symbol.toStringTag]};return _}function Ki(s){return Array.isArray(s)}function cc(s){return Ki(s)?s:[s]}function Xs(s){return typeof s=="string"}function ws(s){return typeof s=="number"}function Gs(s,c){return s!==void 0&&c(s)?s:void 0}function Ma(s,c){return s!==void 0&&c(s)?s:pe.fail(`Invalid cast. The supplied value ${s} did not pass the test '${pe.getFunctionName(c)}'.`)}function Dc(s){}function As(){return!1}function Tf(){return!0}function cm(){}function Fl(s){return s}function rc(s){return s.toLowerCase()}var sd=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function Om(s){return sd.test(s)?s.replace(sd,rc):s}function il(){throw new Error("Not implemented")}function FA(s){let c;return()=>(s&&(c=s(),s=void 0),c)}function ZA(s){let c=new Map;return g=>{let d=`${typeof g}:${g}`,h=c.get(d);return h===void 0&&!c.has(d)&&(h=s(g),c.set(d,h)),h}}var El=(s=>(s[s.None=0]="None",s[s.Normal=1]="Normal",s[s.Aggressive=2]="Aggressive",s[s.VeryAggressive=3]="VeryAggressive",s))(El||{});function yg(s,c){return s===c}function Mp(s,c){return s===c||s!==void 0&&c!==void 0&&s.toUpperCase()===c.toUpperCase()}function MA(s,c){return yg(s,c)}function Er(s,c){return s===c?0:s===void 0?-1:c===void 0?1:sc(g,d)===-1?g:d)}function Fs(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toUpperCase(),c=c.toUpperCase(),sc?1:0)}function Wa(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toLowerCase(),c=c.toLowerCase(),sc?1:0)}function Ca(s,c){return Er(s,c)}function ld(s){return s?Fs:Ca}var Rp=(()=>{return c;function s(g,d,h){if(g===d)return 0;if(g===void 0)return-1;if(d===void 0)return 1;let _=h(g,d);return _<0?-1:_>0?1:0}function c(g){let d=new Intl.Collator(g,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(h,_)=>s(h,_,d)}})(),np,HA;function df(){return HA}function Zs(s){HA!==s&&(HA=s,np=void 0)}function so(s,c){return np??(np=Rp(HA)),np(s,c)}function Ea(s,c,g,d){return s===c?0:s===void 0?-1:c===void 0?1:d(s[g],c[g])}function Ml(s,c){return Zt(s?1:0,c?1:0)}function Dr(s,c,g){let d=Math.max(2,Math.floor(s.length*.34)),h=Math.floor(s.length*.4)+1,_;for(let S of c){let R=g(S);if(R!==void 0&&Math.abs(R.length-s.length)<=d){if(R===s||R.length<3&&R.toLowerCase()!==s.toLowerCase())continue;let T=Wn(s,R,h-.1);if(T===void 0)continue;pe.assert(Tg?R-g:1),V=Math.floor(c.length>g+R?g+R:c.length);h[0]=R;let M=R;for(let re=1;reg)return;let ee=d;d=h,h=ee}let S=d[c.length];return S>g?void 0:S}function di(s,c,g){let d=s.length-c.length;return d>=0&&(g?Mp(s.slice(d),c):s.indexOf(c,d)===d)}function aa(s,c){return di(s,c)?s.slice(0,s.length-c.length):s}function Bo(s,c){return di(s,c)?s.slice(0,s.length-c.length):void 0}function us(s){let c=s.length;for(let g=c-1;g>0;g--){let d=s.charCodeAt(g);if(d>=48&&d<=57)do--g,d=s.charCodeAt(g);while(g>0&&d>=48&&d<=57);else if(g>4&&(d===110||d===78)){if(--g,d=s.charCodeAt(g),d!==105&&d!==73||(--g,d=s.charCodeAt(g),d!==109&&d!==77))break;--g,d=s.charCodeAt(g)}else break;if(d!==45&&d!==46)break;c=g}return c===s.length?s:s.slice(0,c)}function Ql(s,c){for(let g=0;gg===c)}function ip(s,c){for(let g=0;gh&&jd(R,g)&&(h=R.prefix.length,d=S)}return d}function Ac(s,c,g){return g?Mp(s.slice(0,c.length),c):s.lastIndexOf(c,0)===0}function Nm(s,c){return Ac(s,c)?s.substr(c.length):s}function HS(s,c,g=Fl){return Ac(g(s),g(c))?s.substring(c.length):void 0}function jd({prefix:s,suffix:c},g){return g.length>=s.length+c.length&&Ac(g,s)&&di(g,c)}function dh(s,c){return g=>s(g)&&c(g)}function Hp(...s){return(...c)=>{let g;for(let d of s)if(g=d(...c),g)return g;return g}}function uC(s){return(...c)=>!s(...c)}function nE(s){}function J_(s){return s===void 0?void 0:[s]}function q0(s,c,g,d,h,_){_??(_=Dc);let S=0,R=0,T=s.length,W=c.length,V=!1;for(;S(s[s.Off=0]="Off",s[s.Error=1]="Error",s[s.Warning=2]="Warning",s[s.Info=3]="Info",s[s.Verbose=4]="Verbose",s))(fb||{}),pe;(s=>{let c=0;s.currentLogLevel=2,s.isDebugging=!1;function g(yr){return s.currentLogLevel<=yr}s.shouldLog=g;function d(yr,hn){s.loggingHost&&g(yr)&&s.loggingHost.log(yr,hn)}function h(yr){d(3,yr)}s.log=h,(yr=>{function hn(Oa){d(1,Oa)}yr.error=hn;function Oi(Oa){d(2,Oa)}yr.warn=Oi;function lo(Oa){d(3,Oa)}yr.log=lo;function pa(Oa){d(4,Oa)}yr.trace=pa})(h=s.log||(s.log={}));let _={};function S(){return c}s.getAssertionLevel=S;function R(yr){let hn=c;if(c=yr,yr>hn)for(let Oi of _g(_)){let lo=_[Oi];lo!==void 0&&s[Oi]!==lo.assertion&&yr>=lo.level&&(s[Oi]=lo,_[Oi]=void 0)}}s.setAssertionLevel=R;function T(yr){return c>=yr}s.shouldAssert=T;function W(yr,hn){return T(yr)?!0:(_[hn]={level:yr,assertion:s[hn]},s[hn]=Dc,!1)}function V(yr,hn){debugger;let Oi=new Error(yr?`Debug Failure. ${yr}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Oi,hn||V),Oi}s.fail=V;function M(yr,hn,Oi){return V(`${hn||"Unexpected node."}\r +`,l+=Mkr(o+".",t,A)}),l}function $Ac(e,t,r,n){var a=e+UEt(r),o="";return RDi(n).length>0&&(o+=t+"["+a+`] +`),o+Mkr(a+".",t,n)}});var LDi=H(Qkr=>{"use strict";Qkr.parse=TDi();Qkr.stringify=ZDi()});var gki=H((rGu,jEt)=>{var nki={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(s,c)=>{for(var g in c)t(s,g,{get:c[g],enumerable:!0})},l=(s,c,g,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let h of n(c))!a.call(s,h)&&h!==g&&t(s,h,{get:()=>c[h],enumerable:!(d=r(c,h))||d.enumerable});return s},A=s=>s,f={};o(f,{ANONYMOUS:()=>nnt,AccessFlags:()=>Ty,AssertionLevel:()=>El,AssignmentDeclarationKind:()=>Ry,AssignmentKind:()=>CZe,Associativity:()=>BZe,BreakpointResolver:()=>tit,BuilderFileEmit:()=>G3t,BuilderProgramKind:()=>M3t,BuilderState:()=>nR,CallHierarchy:()=>Mz,CharacterCodes:()=>J2,CheckFlags:()=>sB,CheckMode:()=>Bet,ClassificationType:()=>prt,ClassificationTypeNames:()=>Y5t,CommentDirectiveType:()=>JS,Comparison:()=>b,CompletionInfoFlags:()=>L5t,CompletionTriggerKind:()=>Art,Completions:()=>Jz,ContainerFlags:()=>pOt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>KS,Diagnostics:()=>Z,DocumentHighlights:()=>mPe,ElementFlags:()=>tf,EmitFlags:()=>cB,EmitHint:()=>ty,EmitOnly:()=>Q2,EndOfLineState:()=>W5t,ExitStatus:()=>ut,ExportKind:()=>GMt,Extension:()=>ey,ExternalEmitHelpers:()=>JR,FileIncludeKind:()=>$0,FilePreprocessingDiagnosticsKind:()=>fw,FileSystemEntryKind:()=>r1,FileWatcherEventKind:()=>yb,FindAllReferences:()=>Kp,FlattenLevel:()=>ZOt,FlowFlags:()=>Yp,ForegroundColorEscapeSequences:()=>S3t,FunctionFlags:()=>SZe,GeneratedIdentifierFlags:()=>od,GetLiteralTextFlags:()=>A7,GoToDefinition:()=>ise,HighlightSpanKind:()=>F5t,IdentifierNameMap:()=>xie,ImportKind:()=>xMt,ImportsNotUsedAsValues:()=>zS,IndentStyle:()=>Z5t,IndexFlags:()=>US,IndexKind:()=>Qm,InferenceFlags:()=>R_,InferencePriority:()=>mb,InlayHintKind:()=>G5t,InlayHints:()=>Xit,InternalEmitFlags:()=>RD,InternalNodeBuilderFlags:()=>vg,InternalSymbolName:()=>RT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>g5t,JSDocParsingMode:()=>t1,JsDoc:()=>n5,JsTyping:()=>YP,JsxEmit:()=>XR,JsxFlags:()=>Ym,JsxReferenceKind:()=>$I,LanguageFeatureMinimumTarget:()=>Rd,LanguageServiceMode:()=>k5t,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>$1,ListFormat:()=>$E,LogLevel:()=>fb,MapCode:()=>Jit,MemberOverrideStatus:()=>ar,ModifierFlags:()=>JE,ModuleDetectionKind:()=>zE,ModuleInstanceState:()=>AOt,ModuleKind:()=>jS,ModuleResolutionKind:()=>z_,ModuleSpecifierEnding:()=>fLe,NavigateTo:()=>iHt,NavigationBar:()=>oHt,NewLineKind:()=>qE,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>wy,NodeFactoryFlags:()=>Ube,NodeFlags:()=>AC,NodeResolutionFeatures:()=>eOt,ObjectFlags:()=>j_,OperationCanceledException:()=>By,OperatorPrecedence:()=>wZe,OrganizeImports:()=>i5,OrganizeImportsMode:()=>grt,OuterExpressionKinds:()=>cF,OutliningElementsCollector:()=>Kit,OutliningSpanKind:()=>V5t,OutputFileType:()=>P5t,PackageJsonAutoImportPreference:()=>D5t,PackageJsonDependencyGroup:()=>N5t,PatternMatchKind:()=>bnt,PollingInterval:()=>r_,PollingWatchKind:()=>aB,PragmaKindFlags:()=>N_,PredicateSemantics:()=>K_,PreparePasteEdits:()=>ust,PrivateIdentifierKind:()=>QLe,ProcessLevel:()=>WOt,ProgramUpdateLevel:()=>C3t,QuotePreference:()=>AMt,RegularExpressionFlags:()=>UE,RelationComparisonResult:()=>vy,Rename:()=>tWe,ScriptElementKind:()=>M5t,ScriptElementKindModifier:()=>H5t,ScriptKind:()=>X2,ScriptSnapshot:()=>NVe,ScriptTarget:()=>kT,SemanticClassificationFormat:()=>x5t,SemanticMeaning:()=>Q5t,SemicolonPreference:()=>drt,SignatureCheckMode:()=>wet,SignatureFlags:()=>$A,SignatureHelp:()=>J1e,SignatureInfo:()=>x3t,SignatureKind:()=>BA,SmartSelectionRange:()=>qit,SnippetKind:()=>Iw,StatisticType:()=>_5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>uI,SymbolDisplay:()=>i9,SymbolDisplayPartKind:()=>kVe,SymbolFlags:()=>TT,SymbolFormatFlags:()=>Rf,SyntaxKind:()=>Ld,Ternary:()=>Cb,ThrottledCancellationToken:()=>pYt,TokenClass:()=>O5t,TokenFlags:()=>KE,TransformFlags:()=>up,TypeFacts:()=>vet,TypeFlags:()=>jE,TypeFormatFlags:()=>Ng,TypeMapKind:()=>zf,TypePredicateKind:()=>Th,TypeReferenceSerializationKind:()=>oE,UnionReduction:()=>Jr,UpToDateStatusType:()=>i5t,VarianceFlags:()=>NT,Version:()=>O,VersionRange:()=>gt,WatchDirectoryFlags:()=>q1,WatchDirectoryKind:()=>DT,WatchFileKind:()=>oB,WatchLogLevel:()=>y3t,WatchType:()=>jm,accessPrivateIdentifier:()=>FOt,addEmitFlags:()=>Gw,addEmitHelper:()=>$Y,addEmitHelpers:()=>hN,addInternalEmitFlags:()=>N3,addNodeFactoryPatcher:()=>e$e,addObjectAllocatorPatcher:()=>Vqe,addRange:()=>Or,addRelatedInfo:()=>lg,addSyntheticLeadingComment:()=>JT,addSyntheticTrailingComment:()=>Iz,addToSeen:()=>Zy,advancedAsyncSuperHelper:()=>DF,affectsDeclarationPathOptionDeclarations:()=>vWt,affectsEmitOptionDeclarations:()=>SWt,allKeysStartWithDot:()=>F9e,altDirectorySeparator:()=>Eb,and:()=>dh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>ELe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Ju,arrayToNumericMap:()=>Vs,assertType:()=>nE,assign:()=>Wt,asyncSuperHelper:()=>uie,attachFileToDiagnostics:()=>XL,base64decode:()=>XZe,base64encode:()=>sbe,binarySearch:()=>Wc,binarySearchKey:()=>Sg,bindSourceFile:()=>fOt,breakIntoCharacterSpans:()=>jMt,breakIntoWordSpans:()=>zMt,buildLinkParts:()=>_Mt,buildOpts:()=>_Ee,buildOverload:()=>xpn,bundlerModuleNameResolver:()=>tOt,canBeConvertedToAsync:()=>Tnt,canHaveDecorators:()=>oQ,canHaveExportModifier:()=>jne,canHaveFlowNode:()=>UJ,canHaveIllegalDecorators:()=>x$e,canHaveIllegalModifiers:()=>sWt,canHaveIllegalType:()=>I$r,canHaveIllegalTypeParameters:()=>iWt,canHaveJSDoc:()=>dne,canHaveLocals:()=>WI,canHaveModifiers:()=>LB,canHaveModuleSpecifier:()=>fZe,canHaveSymbol:()=>mE,canIncludeBindAndCheckDiagnostics:()=>gU,canJsonReportNoInputFiles:()=>BEe,canProduceDiagnostics:()=>LEe,canUsePropertyAccess:()=>Zbe,canWatchAffectingLocation:()=>j3t,canWatchAtTypes:()=>K3t,canWatchDirectoryOrFile:()=>Ttt,canWatchDirectoryOrFilePath:()=>qEe,cartesianProduct:()=>XE,cast:()=>Ma,chainBundle:()=>rR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>K2,changeCompilerHostLikeToUseCache:()=>Fde,changeExtension:()=>fN,changeFullExtension:()=>i_,changesAffectModuleResolution:()=>NJ,changesAffectingProgramStructure:()=>Ige,characterCodeToRegularExpressionFlag:()=>Wg,childIsDecorated:()=>HJ,classElementOrClassElementParameterIsDecorated:()=>mye,classHasClassThisAssignment:()=>Met,classHasDeclaredOrExplicitlyAssignedName:()=>Het,classHasExplicitlyAssignedName:()=>U9e,classOrConstructorParameterIsDecorated:()=>Rx,classicNameResolver:()=>uOt,classifier:()=>mYt,cleanExtendedConfigCache:()=>eVe,clear:()=>St,clearMap:()=>Fy,clearSharedExtendedConfigFileWatcher:()=>ntt,climbPastPropertyAccess:()=>FVe,clone:()=>Eg,cloneCompilerOptions:()=>xrt,closeFileWatcher:()=>dv,closeFileWatcherOf:()=>Cv,codefix:()=>x0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>Vet,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>TWt,commentPragmas:()=>e1,commonOptionsWithBuild:()=>f9e,compact:()=>Hr,compareBooleans:()=>Ml,compareDataObjects:()=>yAe,compareDiagnostics:()=>X7,compareEmitHelpers:()=>JLe,compareNumberOfDirectorySeparators:()=>Xne,comparePaths:()=>qf,comparePathsCaseInsensitive:()=>pB,comparePathsCaseSensitive:()=>Cx,comparePatternKeys:()=>het,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Wa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>so,compareTextSpans:()=>bn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>cLe,compilerOptionsAffectEmit:()=>aLe,compilerOptionsAffectSemanticDiagnostics:()=>Cbe,compilerOptionsDidYouMeanDiagnostics:()=>C9e,compilerOptionsIndicateEsModules:()=>Prt,computeCommonSourceDirectoryOfFilenames:()=>b3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Po,computeLineStarts:()=>cA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>btt,computeSuggestionDiagnostics:()=>vnt,computedOptions:()=>J7,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Zne,consumesNodeCoreModules:()=>lPe,contains:()=>k,containsIgnoredPath:()=>sz,containsObjectRestOrSpread:()=>IEe,containsParseError:()=>pP,containsPath:()=>Jh,convertCompilerOptionsForTelemetry:()=>HWt,convertCompilerOptionsFromJson:()=>ven,convertJsonOption:()=>vU,convertToBase64:()=>ibe,convertToJson:()=>EEe,convertToObject:()=>LWt,convertToOptionsWithAbsolutePaths:()=>E9e,convertToRelativePath:()=>r2,convertToTSConfig:()=>$$e,convertTypeAcquisitionFromJson:()=>Ben,copyComments:()=>xU,copyEntries:()=>a7,copyLeadingComments:()=>Kie,copyProperties:()=>GA,copyTrailingAsLeadingComments:()=>C1e,copyTrailingComments:()=>zde,couldStartTrivia:()=>tv,countWhere:()=>ct,createAbstractBuilder:()=>Grn,createAccessorPropertyBackingField:()=>Z$e,createAccessorPropertyGetRedirector:()=>dWt,createAccessorPropertySetRedirector:()=>pWt,createBaseNodeFactory:()=>FLe,createBinaryExpressionTrampoline:()=>u9e,createBuilderProgram:()=>Ett,createBuilderProgramUsingIncrementalBuildInfo:()=>X3t,createBuilderStatusReporter:()=>bVe,createCacheableExportInfoMap:()=>pnt,createCachedDirectoryStructureHost:()=>q9e,createClassifier:()=>uin,createCommentDirectivesMap:()=>Ege,createCompilerDiagnostic:()=>Nf,createCompilerDiagnosticForInvalidCustomType:()=>RWt,createCompilerDiagnosticFromMessageChain:()=>vAe,createCompilerHost:()=>E3t,createCompilerHostFromProgramHost:()=>Htt,createCompilerHostWorker:()=>tVe,createDetachedDiagnostic:()=>QY,createDiagnosticCollection:()=>EF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>A3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Bw,createDiagnosticForNodeInSourceFile:()=>_E,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Gz,createDocumentPositionMapper:()=>NOt,createDocumentRegistry:()=>PMt,createDocumentRegistryInternal:()=>Cnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>wtt,createEmitHelperFactory:()=>XLe,createEmptyExports:()=>cEe,createEvaluator:()=>kLe,createExpressionForJsxElement:()=>qPt,createExpressionForJsxFragment:()=>$Pt,createExpressionForObjectLiteralElementLike:()=>eWt,createExpressionForPropertyName:()=>w$e,createExpressionFromEntityName:()=>lEe,createExternalHelpersImportDeclarationIfNeeded:()=>N$e,createFileDiagnostic:()=>qh,createFileDiagnosticFromMessageChain:()=>ze,createFlowNode:()=>rk,createForOfBindingStatement:()=>B$e,createFutureSourceFile:()=>fPe,createGetCanonicalFileName:()=>_d,createGetIsolatedDeclarationErrors:()=>l3t,createGetSourceFile:()=>ctt,createGetSymbolAccessibilityDiagnosticForNode:()=>J3,createGetSymbolAccessibilityDiagnosticForNodeName:()=>c3t,createGetSymbolWalker:()=>IOt,createIncrementalCompilerHost:()=>yVe,createIncrementalProgram:()=>n5t,createJsxFactoryExpression:()=>v$e,createLanguageService:()=>fYt,createLanguageServiceSourceFile:()=>GPe,createMemberAccessForPropertyName:()=>EU,createModeAwareCache:()=>Tie,createModeAwareCacheKey:()=>_de,createModeMismatchDetails:()=>l7,createModuleNotFoundChain:()=>kJ,createModuleResolutionCache:()=>Rie,createModuleResolutionLoader:()=>ptt,createModuleResolutionLoaderUsingGlobalCache:()=>e5t,createModuleSpecifierResolutionHost:()=>z3,createMultiMap:()=>dl,createNameResolver:()=>UAe,createNodeConverters:()=>ZLe,createNodeFactory:()=>iie,createOptionNameMap:()=>h9e,createOverload:()=>Ast,createPackageJsonImportFilter:()=>zie,createPackageJsonInfo:()=>ont,createParenthesizerRules:()=>pv,createPatternMatcher:()=>YMt,createPrinter:()=>MP,createPrinterWithDefaults:()=>h3t,createPrinterWithRemoveComments:()=>gQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>m3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>rtt,createProgram:()=>KEe,createProgramDiagnostics:()=>D3t,createProgramHost:()=>Ytt,createPropertyNameNodeForIdentifierOrLiteral:()=>Kne,createQueue:()=>oA,createRange:()=>Gy,createRedirectedBuilderProgram:()=>Btt,createResolutionCache:()=>Ntt,createRuntimeTypeSerializer:()=>QOt,createScanner:()=>wb,createSemanticDiagnosticsBuilderProgram:()=>xrn,createSet:()=>oo,createSolutionBuilder:()=>c5t,createSolutionBuilderHost:()=>o5t,createSolutionBuilderWithWatch:()=>l5t,createSolutionBuilderWithWatchHost:()=>a5t,createSortedArray:()=>Ya,createSourceFile:()=>vz,createSourceMapGenerator:()=>vOt,createSourceMapSource:()=>n$e,createSuperAccessVariableStatement:()=>j9e,createSymbolTable:()=>qu,createSymlinkCache:()=>ybe,createSyntacticTypeNodeBuilder:()=>w5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>A1e,createTextChangeFromStartLength:()=>UVe,createTextChangeRange:()=>$2,createTextRangeFromNode:()=>Zrt,createTextRangeFromSpan:()=>JVe,createTextSpan:()=>zd,createTextSpanFromBounds:()=>wA,createTextSpanFromNode:()=>Oy,createTextSpanFromRange:()=>t9,createTextSpanFromStringLiteralLikeContent:()=>Frt,createTextWriter:()=>wne,createTokenRange:()=>QL,createTypeChecker:()=>EOt,createTypeReferenceDirectiveResolutionCache:()=>x9e,createTypeReferenceResolutionLoader:()=>iVe,createWatchCompilerHost:()=>Yrn,createWatchCompilerHostOfConfigFile:()=>Qtt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Xtt,createWatchFactory:()=>Mtt,createWatchHost:()=>Ott,createWatchProgram:()=>Jtt,createWatchStatusReporter:()=>Dtt,createWriteFileMeasuringIO:()=>ltt,declarationNameToString:()=>Wd,decodeMappings:()=>Fet,decodedTextSpanIntersectsWith:()=>IE,deduplicate:()=>io,defaultHoverMaximumTruncationLength:()=>dge,defaultInitCompilerOptions:()=>Q$r,defaultMaximumTruncationLength:()=>EY,diagnosticCategoryName:()=>_b,diagnosticToString:()=>IQ,diagnosticsEqualityComparer:()=>BAe,directoryProbablyExists:()=>f1,directorySeparator:()=>ag,displayPart:()=>SE,displayPartsToString:()=>k1e,disposeEmitNodes:()=>Ku,documentSpansEqual:()=>Xrt,dumpTracingLegend:()=>jf,elementAt:()=>Cg,elideNodes:()=>AWt,emitDetachedComments:()=>FZe,emitFiles:()=>ett,emitFilesAndReportErrors:()=>hVe,emitFilesAndReportErrorsAndGetExitStatus:()=>Wtt,emitModuleKindIsNonNodeESM:()=>One,emitNewLineBeforeLeadingCommentOfPosition:()=>Kye,emitResolverSkipsTypeChecking:()=>$et,emitSkippedWithNoDiagnostics:()=>htt,emptyArray:()=>E,emptyFileSystemEntries:()=>Tbe,emptyMap:()=>N,emptyOptions:()=>VB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Am,ensureScriptKind:()=>GAe,ensureTrailingDirectorySeparator:()=>hp,entityNameToString:()=>oy,enumerateInsertsAndDeletes:()=>q0,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Mp,equateStringsCaseSensitive:()=>MA,equateValues:()=>yg,escapeJsxAttributeString:()=>Oye,escapeLeadingUnderscores:()=>Ap,escapeNonAsciiString:()=>Sne,escapeSnippetText:()=>xP,escapeString:()=>YT,escapeTemplateSubstitution:()=>Pye,evaluatorResult:()=>$h,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>zAe,executeCommandLine:()=>Enn,expandPreOrPostfixIncrementOrDecrementExpression:()=>s9e,explainFiles:()=>Ftt,explainIfFileIsRedirectAndImpliedFormat:()=>Ztt,exportAssignmentIsAlias:()=>hne,expressionResultIsUnused:()=>vLe,extend:()=>OA,extensionFromPath:()=>tz,extensionIsTS:()=>WAe,extensionsNotSupportingExtensionlessResolution:()=>PAe,externalHelpersModuleNameText:()=>PD,factory:()=>me,fileExtensionIs:()=>aA,fileExtensionIsOneOf:()=>fu,fileIncludeReasonToDiagnostics:()=>Ptt,fileShouldUseJavaScriptRequire:()=>dnt,filter:()=>Me,filterMutate:()=>je,filterSemanticDiagnostics:()=>cVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>YA,findChildOfKind:()=>qd,findComputedPropertyNameCacheAssignment:()=>g9e,findConfigFile:()=>ott,findConstructorDeclaration:()=>zY,findContainingList:()=>WVe,findDiagnosticForNode:()=>NMt,findFirstNonJsxWhitespaceToken:()=>$5t,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>q5t,findModifier:()=>Xie,findNextToken:()=>fQ,findPackageJson:()=>RMt,findPackageJsons:()=>snt,findPrecedingMatchingToken:()=>QVe,findPrecedingToken:()=>Gm,findSuperStatementIndexPath:()=>Y9e,findTokenOnLeftOfPosition:()=>Yde,findUseStrictPrologue:()=>R$e,first:()=>ma,firstDefined:()=>X,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>lnt,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>iA,fixupCompilerOptions:()=>Rnt,flatMap:()=>er,flatMapIterator:()=>xt,flatMapToMutable:()=>vt,flatten:()=>Nr,flattenCommaList:()=>fWt,flattenDestructuringAssignment:()=>TU,flattenDestructuringBinding:()=>uQ,flattenDiagnosticMessageText:()=>wN,forEach:()=>F,forEachAncestor:()=>Ew,forEachAncestorDirectory:()=>pE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>vN,forEachChild:()=>Lu,forEachChildRecursively:()=>Sz,forEachDynamicImportOrRequireCall:()=>eie,forEachEmittedFile:()=>Ket,forEachEnclosingBlockScopeContainer:()=>kge,forEachEntry:()=>Dh,forEachExternalModuleToImportFrom:()=>Int,forEachImportClauseDeclaration:()=>IZe,forEachKey:()=>SB,forEachLeadingCommentRange:()=>GD,forEachNameInAccessChainWalkingLeft:()=>qZe,forEachNameOfDefaultExport:()=>hPe,forEachOptionsSyntaxByName:()=>qAe,forEachProjectReference:()=>gz,forEachPropertyAssignment:()=>WJ,forEachResolvedProjectReference:()=>rie,forEachReturnStatement:()=>yF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>dF,forEachTsConfigPropArray:()=>qre,forEachUnique:()=>Urt,forEachYieldExpression:()=>tZe,formatColorAndReset:()=>AQ,formatDiagnostic:()=>utt,formatDiagnostics:()=>arn,formatDiagnosticsWithColorAndContext:()=>w3t,formatGeneratedName:()=>M3,formatGeneratedNamePart:()=>Sie,formatLocation:()=>gtt,formatMessage:()=>XY,formatStringFromArgs:()=>dN,formatting:()=>Im,generateDjb2Hash:()=>ry,generateTSConfig:()=>VWt,getAdjustedReferenceLocation:()=>wrt,getAdjustedRenameLocation:()=>MVe,getAliasDeclarationFromName:()=>Nye,getAllAccessorDeclarations:()=>BP,getAllDecoratorsOfClass:()=>Wet,getAllDecoratorsOfClassElement:()=>X9e,getAllJSDocTags:()=>dJ,getAllJSDocTagsOfKind:()=>nye,getAllKeys:()=>mI,getAllProjectOutputs:()=>z9e,getAllSuperTypeNodes:()=>R7,getAllowImportingTsExtensions:()=>rLe,getAllowJSCompilerOption:()=>TF,getAllowSyntheticDefaultImports:()=>JY,getAncestor:()=>ML,getAnyExtensionFromPath:()=>gE,getAreDeclarationMapsEnabled:()=>wAe,getAssignedExpandoInitializer:()=>FY,getAssignedName:()=>CB,getAssignmentDeclarationKind:()=>nI,getAssignmentDeclarationPropertyAccessKind:()=>XJ,getAssignmentTargetKind:()=>QD,getAutomaticTypeDirectiveNames:()=>D9e,getBaseFileName:()=>gp,getBinaryOperatorPrecedence:()=>Ene,getBuildInfo:()=>ttt,getBuildInfoFileVersionMap:()=>vtt,getBuildInfoText:()=>f3t,getBuildOrderFromAnyBuildOrder:()=>e1e,getBuilderCreationParameters:()=>AVe,getBuilderFileEmit:()=>HP,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>iI,getClassExtendsHeritageElement:()=>OL,getClassLikeDeclarationOfSymbol:()=>AN,getCombinedLocalAndExportSymbolFlags:()=>sU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>dm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ad,getCommentRange:()=>DB,getCommonSourceDirectory:()=>Gde,getCommonSourceDirectoryOfConfig:()=>RU,getCompilerOptionValue:()=>K7,getConditions:()=>PP,getConfigFileParsingDiagnostics:()=>dQ,getConstantValue:()=>VLe,getContainerFlags:()=>Cet,getContainerNode:()=>kU,getContainingClass:()=>hC,getContainingClassExcludingClassDecorators:()=>Mge,getContainingClassStaticBlock:()=>oZe,getContainingFunction:()=>A1,getContainingFunctionDeclaration:()=>Oge,getContainingFunctionOrClassStaticBlock:()=>$re,getContainingNodeArray:()=>BLe,getContainingObjectLiteralElement:()=>x1e,getContextualTypeFromParent:()=>nPe,getContextualTypeFromParentOrAncestorTypeNode:()=>OVe,getDeclarationDiagnostics:()=>u3t,getDeclarationEmitExtensionForPath:()=>oAe,getDeclarationEmitOutputFilePath:()=>DZe,getDeclarationEmitOutputFilePathWorker:()=>Tne,getDeclarationFileExtension:()=>d9e,getDeclarationFromName:()=>T7,getDeclarationModifierFlagsFromSymbol:()=>u2,getDeclarationOfKind:()=>Cp,getDeclarationsOfKind:()=>pge,getDeclaredExpandoInitializer:()=>E7,getDecorators:()=>Rb,getDefaultCompilerOptions:()=>xPe,getDefaultFormatCodeSettings:()=>DVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>IYt,getDefaultLikeExportInfo:()=>IPe,getDefaultLikeExportNameFromDeclaration:()=>unt,getDefaultResolutionModeForFileWorker:()=>aVe,getDiagnosticText:()=>Zb,getDiagnosticsWithinSpan:()=>DMt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>Rtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>q3t,getDocumentPositionMapper:()=>Snt,getDocumentSpansEqualityComparer:()=>Jrt,getESModuleInterop:()=>kw,getEditsForFileRename:()=>OMt,getEffectiveBaseTypeNode:()=>BB,getEffectiveConstraintOfTypeParameter:()=>n3,getEffectiveContainerForJSDocTemplateTag:()=>qge,getEffectiveImplementsTypeNodes:()=>jJ,getEffectiveInitializer:()=>ane,getEffectiveJSDocHost:()=>WL,getEffectiveModifierFlags:()=>o_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>WZe,getEffectiveModifierFlagsNoCache:()=>qye,getEffectiveReturnTypeNode:()=>xb,getEffectiveSetAccessorTypeAnnotationNode:()=>Uye,getEffectiveTypeAnnotationNode:()=>kh,getEffectiveTypeParameterDeclarations:()=>ZD,getEffectiveTypeRoots:()=>Cde,getElementOrPropertyAccessArgumentExpressionOrName:()=>zge,getElementOrPropertyAccessName:()=>YD,getElementsOfBindingOrAssignmentPattern:()=>Eie,getEmitDeclarations:()=>Ly,getEmitFlags:()=>tA,getEmitHelpers:()=>zbe,getEmitModuleDetectionKind:()=>nLe,getEmitModuleFormatOfFileWorker:()=>Vde,getEmitModuleKind:()=>i0,getEmitModuleResolutionKind:()=>k_,getEmitScriptTarget:()=>Mg,getEmitStandardClassFields:()=>mbe,getEnclosingBlockScopeContainer:()=>tS,getEnclosingContainer:()=>f7,getEncodedSemanticClassifications:()=>hnt,getEncodedSyntacticClassifications:()=>mnt,getEndLinePosition:()=>vY,getEntityNameFromTypeNode:()=>tne,getEntrypointsFromPackageJsonInfo:()=>pet,getErrorCountForSummary:()=>fVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>xtt,getEscapedTextOfIdentifierOrLiteral:()=>qJ,getEscapedTextOfJsxAttributeName:()=>cz,getEscapedTextOfJsxNamespacedName:()=>oS,getExpandoInitializer:()=>VL,getExportAssignmentExpression:()=>mne,getExportInfoMap:()=>v1e,getExportNeedsImportStarHelper:()=>DOt,getExpressionAssociativity:()=>Lye,getExpressionPrecedence:()=>x7,getExternalHelpersModuleName:()=>gEe,getExternalModuleImportEqualsDeclarationExpression:()=>_7,getExternalModuleName:()=>LY,getExternalModuleNameFromDeclaration:()=>RZe,getExternalModuleNameFromPath:()=>Hye,getExternalModuleNameLiteral:()=>Ez,getExternalModuleRequireArgument:()=>_ye,getFallbackOptions:()=>XEe,getFileEmitOutput:()=>k3t,getFileMatcherPatterns:()=>xAe,getFileNamesFromConfigSpecs:()=>hde,getFileWatcherEventKind:()=>qS,getFilesInErrorForSummary:()=>IVe,getFirstConstructorWithBody:()=>lN,getFirstIdentifier:()=>B0,getFirstNonSpaceCharacterPosition:()=>EMt,getFirstProjectOutput:()=>qet,getFixableErrorSpanExpression:()=>ant,getFormatCodeSettingsForWriting:()=>dPe,getFullWidth:()=>DJ,getFunctionFlags:()=>SI,getHeritageClause:()=>Cne,getHostSignatureFromJSDoc:()=>PL,getIdentifierAutoGenerate:()=>o$e,getIdentifierGeneratedImportReference:()=>YLe,getIdentifierTypeArguments:()=>G3,getImmediatelyInvokedFunctionExpression:()=>ZL,getImpliedNodeFormatForEmitWorker:()=>NU,getImpliedNodeFormatForFile:()=>UEe,getImpliedNodeFormatForFileWorker:()=>oVe,getImportNeedsImportDefaultHelper:()=>Let,getImportNeedsImportStarHelper:()=>M9e,getIndentString:()=>sAe,getInferredLibraryNameResolveFrom:()=>sVe,getInitializedVariables:()=>iU,getInitializerOfBinaryExpression:()=>Eye,getInitializerOfBindingOrAssignmentElement:()=>dEe,getInterfaceBaseTypeNodes:()=>N7,getInternalEmitFlags:()=>g1,getInvokedExpression:()=>Qge,getIsFileExcluded:()=>ZMt,getIsolatedModules:()=>sS,getJSDocAugmentsTag:()=>K6,getJSDocClassTag:()=>bx,getJSDocCommentRanges:()=>pye,getJSDocCommentsAndTags:()=>vye,getJSDocDeprecatedTag:()=>Kh,getJSDocDeprecatedTagNoCache:()=>i2,getJSDocEnumTag:()=>a1,getJSDocHost:()=>bP,getJSDocImplementsTags:()=>uY,getJSDocOverloadTags:()=>wye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>vL,getJSDocParameterTagsNoCache:()=>uJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>yre,getJSDocPublicTagNoCache:()=>Ex,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>hA,getJSDocReturnTag:()=>sv,getJSDocReturnType:()=>AJ,getJSDocRoot:()=>KJ,getJSDocSatisfiesExpressionType:()=>Vbe,getJSDocSatisfiesTag:()=>fF,getJSDocTags:()=>Sx,getJSDocTemplateTag:()=>oP,getJSDocThisTag:()=>Nb,getJSDocType:()=>eN,getJSDocTypeAliasName:()=>k$e,getJSDocTypeAssertionType:()=>yie,getJSDocTypeParameterDeclarations:()=>gAe,getJSDocTypeParameterTags:()=>r3,getJSDocTypeParameterTagsNoCache:()=>U6,getJSDocTypeTag:()=>ov,getJSXImplicitImportBase:()=>Mne,getJSXRuntimeImport:()=>Hne,getJSXTransformEnabled:()=>NAe,getKeyForCompilerOptions:()=>cet,getLanguageVariant:()=>Lne,getLastChild:()=>gbe,getLeadingCommentRanges:()=>fE,getLeadingCommentRangesOfNode:()=>Zge,getLeftmostAccessExpression:()=>oU,getLeftmostExpression:()=>aU,getLibFileNameFromLibReference:()=>Mbe,getLibNameFromLibReference:()=>qY,getLibraryNameFromLibFileName:()=>ftt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>Get,getLineOfLocalPosition:()=>Z7,getLineStartPositionForPosition:()=>PB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>abe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>jZe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>v3,getLinesBetweenRangeEndPositions:()=>KZe,getLiteralText:()=>vge,getLocalNameForExternalImport:()=>bie,getLocalSymbolForExportDefault:()=>W7,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>$Ee,getMappedContextSpan:()=>Krt,getMappedDocumentSpan:()=>ePe,getMappedLocation:()=>Ude,getMatchedFileSpec:()=>Ltt,getMatchedIncludeSpec:()=>Vtt,getMeaningFromDeclaration:()=>xVe,getMeaningFromLocation:()=>DU,getMembersOfDeclaration:()=>Lge,getModeForFileReference:()=>T3t,getModeForResolutionAtIndex:()=>drn,getModeForUsageLocation:()=>dtt,getModifiedTime:()=>bb,getModifiers:()=>$R,getModuleInstanceState:()=>PF,getModuleNameStringLiteralAt:()=>jEe,getModuleSpecifierEndingPreference:()=>ILe,getModuleSpecifierResolverHost:()=>Wrt,getNameForExportedSymbol:()=>uPe,getNameFromImportAttribute:()=>JAe,getNameFromIndexInfo:()=>xge,getNameFromPropertyName:()=>p1e,getNameOfAccessExpression:()=>Abe,getNameOfCompilerOptionValue:()=>b9e,getNameOfDeclaration:()=>Il,getNameOfExpando:()=>yye,getNameOfJSDocTypedef:()=>pF,getNameOfScriptTarget:()=>RAe,getNameOrArgument:()=>lne,getNameTable:()=>eit,getNamespaceDeclarationNode:()=>JJ,getNewLineCharacter:()=>uN,getNewLineKind:()=>S1e,getNewLineOrDefaultFromHost:()=>OF,getNewTargetContainer:()=>cZe,getNextJSDocCommentLocation:()=>Bye,getNodeChildren:()=>E$e,getNodeForGeneratedName:()=>fEe,getNodeId:()=>rd,getNodeKind:()=>pQ,getNodeModifiers:()=>Qde,getNodeModulePathParts:()=>HAe,getNonAssignedNameOfDeclaration:()=>Cw,getNonAssignmentOperatorForCompoundAssignment:()=>wde,getNonAugmentationDeclaration:()=>LJ,getNonDecoratorTokenPosOfNode:()=>Hre,getNonIncrementalBuildInfoRoots:()=>J3t,getNonModifierTokenPosOfNode:()=>Sge,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>KR,getNormalizedPathComponents:()=>AB,getObjectFlags:()=>la,getOperatorAssociativity:()=>Vye,getOperatorPrecedence:()=>bne,getOptionFromName:()=>U$e,getOptionsForLibraryResolution:()=>uet,getOptionsNameMap:()=>Bie,getOptionsSyntaxByArrayElementValue:()=>Hbe,getOptionsSyntaxByValue:()=>xLe,getOrCreateEmitNode:()=>c_,getOrUpdate:()=>cr,getOriginalNode:()=>Dd,getOriginalNodeId:()=>Wy,getOutputDeclarationFileName:()=>xde,getOutputDeclarationFileNameWorker:()=>jet,getOutputExtension:()=>HEe,getOutputFileNames:()=>srn,getOutputJSFileNameWorker:()=>zet,getOutputPathsFor:()=>kde,getOwnEmitOutputFilePath:()=>NZe,getOwnKeys:()=>_g,getOwnValues:()=>Qh,getPackageJsonTypesVersionsPaths:()=>N9e,getPackageNameFromTypesPackageName:()=>Ede,getPackageScopeForPath:()=>bde,getParameterSymbolFromJSDoc:()=>pne,getParentNodeInSpan:()=>I1e,getParseTreeNode:()=>$l,getParsedCommandLineOfConfigFile:()=>yEe,getPathComponents:()=>Np,getPathFromPathComponents:()=>Dm,getPathUpdater:()=>ynt,getPathsBasePath:()=>aAe,getPatternFromSpec:()=>Sbe,getPendingEmitKindWithSeen:()=>gVe,getPositionOfLineAndCharacter:()=>th,getPossibleGenericSignatures:()=>Rrt,getPossibleOriginalInputExtensionForExtension:()=>Yye,getPossibleOriginalInputPathWithoutChangingExt:()=>Qye,getPossibleTypeArgumentsInfo:()=>Nrt,getPreEmitDiagnostics:()=>orn,getPrecedingNonSpaceCharacterPosition:()=>tPe,getPrivateIdentifier:()=>Oet,getProperties:()=>Pet,getProperty:()=>pu,getPropertyAssignmentAliasLikeExpression:()=>EZe,getPropertyNameForPropertyNameNode:()=>_3,getPropertyNameFromType:()=>A2,getPropertyNameOfBindingOrAssignmentElement:()=>D$e,getPropertySymbolFromBindingElement:()=>$Ve,getPropertySymbolsFromContextualType:()=>FPe,getQuoteFromPreference:()=>Mrt,getQuotePreference:()=>_1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>Vz,getReferencedFileLocation:()=>Lde,getRegexFromPattern:()=>zD,getRegularExpressionForWildcard:()=>j7,getRegularExpressionsForWildcards:()=>Yne,getRelativePathFromDirectory:()=>mp,getRelativePathFromFile:()=>i1,getRelativePathToDirectoryOrUrl:()=>Of,getRenameLocation:()=>m1e,getReplacementSpanForContextToken:()=>Grt,getResolutionDiagnostic:()=>Ctt,getResolutionModeOverride:()=>Fie,getResolveJsonModule:()=>NP,getResolvePackageJsonExports:()=>U7,getResolvePackageJsonImports:()=>Pne,getResolvedExternalModuleName:()=>F7,getResolvedModuleFromResolution:()=>xL,getResolvedTypeReferenceDirectiveFromResolution:()=>c7,getRestIndicatorOfBindingOrAssignmentElement:()=>c9e,getRestParameterElementType:()=>fye,getRightMostAssignedExpression:()=>cne,getRootDeclaration:()=>Rw,getRootDirectoryOfResolutionCache:()=>$3t,getRootLength:()=>Wf,getScriptKind:()=>$rt,getScriptKindFromFileName:()=>FAe,getScriptTargetFeatures:()=>Yre,getSelectedEffectiveModifierFlags:()=>MY,getSelectedSyntacticModifierFlags:()=>VZe,getSemanticClassifications:()=>LMt,getSemanticJsxChildren:()=>$J,getSetAccessorTypeAnnotationNode:()=>xZe,getSetAccessorValueParameter:()=>L7,getSetExternalModuleIndicator:()=>Vne,getShebang:()=>mB,getSingleVariableOfVariableStatement:()=>m3,getSnapshotText:()=>Lz,getSnippetElement:()=>qbe,getSourceFileOfModule:()=>FJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>lAe,getSourceFileVersionAsHashFromText:()=>mVe,getSourceFilesToEmit:()=>cAe,getSourceMapRange:()=>XT,getSourceMapper:()=>$Mt,getSourceTextOfNodeFromSourceFile:()=>mF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>OD,getStartPositionOfRange:()=>H7,getStartsOnNewLine:()=>D3,getStaticPropertiesAndClassStaticBlock:()=>Q9e,getStrictOptionValue:()=>a_,getStringComparer:()=>ld,getSubPatternFromSpec:()=>kAe,getSuperCallFromStatement:()=>H9e,getSuperContainer:()=>C7,getSupportedCodeFixes:()=>qnt,getSupportedExtensions:()=>z7,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>q7,getSwitchedType:()=>rnt,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>yne,getSymbolTarget:()=>ent,getSyntacticClassifications:()=>VMt,getSyntacticModifierFlags:()=>Nx,getSyntacticModifierFlagsNoCache:()=>$ye,getSynthesizedDeepClone:()=>JA,getSynthesizedDeepCloneWithReplacements:()=>nie,getSynthesizedDeepClones:()=>o0,getSynthesizedDeepClonesWithReplacements:()=>$Ae,getSyntheticLeadingComments:()=>k3,getSyntheticTrailingComments:()=>hU,getTargetLabel:()=>ZVe,getTargetOfBindingOrAssignmentElement:()=>ZP,getTemporaryModuleResolutionState:()=>yde,getTextOfConstantValue:()=>Bge,getTextOfIdentifierOrLiteral:()=>c2,getTextOfJSDocComment:()=>pJ,getTextOfJsxAttributeName:()=>xw,getTextOfJsxNamespacedName:()=>lz,getTextOfNode:()=>xp,getTextOfNodeFromSourceText:()=>TY,getTextOfPropertyName:()=>hP,getThisContainer:()=>r0,getThisParameter:()=>vP,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>MD,getTokenSourceMapRange:()=>fz,getTouchingPropertyName:()=>Lb,getTouchingToken:()=>Yie,getTrailingCommentRanges:()=>n2,getTrailingSemicolonDeferringWriter:()=>Mye,getTransformers:()=>A3t,getTsBuildInfoEmitOutputFilePath:()=>U3,getTsConfigObjectLiteralExpression:()=>m7,getTsConfigPropArrayElementValue:()=>Wge,getTypeAnnotationNode:()=>GZe,getTypeArgumentOrTypeParameterList:()=>oMt,getTypeKeywordOfTypeOnlyImport:()=>Qrt,getTypeNode:()=>MLe,getTypeNodeIfAccessible:()=>$de,getTypeParameterFromJsDoc:()=>mZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>Z9e,getUILocale:()=>df,getUniqueName:()=>GU,getUniqueSymbolId:()=>bMt,getUseDefineForClassFields:()=>Wne,getWatchErrorSummaryDiagnosticMessage:()=>ktt,getWatchFactory:()=>stt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>Gre,handleNoEmitOptions:()=>mtt,handleWatchOptionsConfigDirTemplateSubstitution:()=>S9e,hasAbstractModifier:()=>wP,hasAccessorModifier:()=>Nw,hasAmbientModifier:()=>zye,hasChangesInResolutions:()=>Wre,hasContextSensitiveParameters:()=>MAe,hasDecorators:()=>p1,hasDocComment:()=>iMt,hasDynamicName:()=>XD,hasEffectiveModifier:()=>Gb,hasEffectiveModifiers:()=>jye,hasEffectiveReadonlyModifier:()=>b3,hasExtension:()=>E0,hasImplementationTSFileExtension:()=>pLe,hasIndexSignature:()=>tnt,hasInferredType:()=>jAe,hasInitializer:()=>WT,hasInvalidEscape:()=>Wye,hasJSDocNodes:()=>Xm,hasJSDocParameterTags:()=>gJ,hasJSFileExtension:()=>pN,hasJsonModuleEmitEnabled:()=>TAe,hasOnlyExpressionInitializer:()=>l1,hasOverrideModifier:()=>Rne,hasPossibleExternalModuleReference:()=>Dge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>o1e,hasQuestionToken:()=>VY,hasRecordedExternalHelpers:()=>nWt,hasResolutionModeOverride:()=>NLe,hasRestParameter:()=>Fre,hasScopeMarker:()=>Db,hasStaticModifier:()=>zh,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>LZe,hasTSFileExtension:()=>w3,hasTabstop:()=>TLe,hasTrailingDirectorySeparator:()=>Jp,hasType:()=>If,hasTypeArguments:()=>Sqe,hasZeroOrOneAsteriskCharacter:()=>_be,hostGetCanonicalFileName:()=>JD,hostUsesCaseSensitiveFileNames:()=>y3,idText:()=>Vo,identifierIsThisKeyword:()=>Jye,identifierToKeywordKind:()=>iv,identity:()=>Fl,identitySourceMapConsumer:()=>Zet,ignoreSourceNewlines:()=>eEe,ignoredPaths:()=>Qp,importFromModuleSpecifier:()=>v7,importSyntaxAffectsModuleResolution:()=>hbe,indexOfAnyCharCode:()=>et,indexOfNode:()=>fP,indicesOf:()=>po,inferredTypesContainingFile:()=>Zde,injectClassNamedEvaluationHelperBlockIfMissing:()=>K9e,injectClassThisAssignmentIfMissing:()=>POt,insertImports:()=>Yrt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>FL,insertStatementAfterStandardPrologue:()=>bge,insertStatementsAfterCustomPrologue:()=>Ore,insertStatementsAfterStandardPrologue:()=>Sw,intersperse:()=>fe,intrinsicTagNameToString:()=>Pbe,introducesArgumentsExoticObject:()=>nZe,inverseJsxOptionMap:()=>CEe,isAbstractConstructorSymbol:()=>ube,isAbstractModifier:()=>Xe,isAccessExpression:()=>_p,isAccessibilityModifier:()=>krt,isAccessor:()=>yB,isAccessorModifier:()=>It,isAliasableExpression:()=>eAe,isAmbientModule:()=>s_,isAmbientPropertyDeclaration:()=>VJ,isAnyDirectorySeparator:()=>e0,isAnyImportOrBareOrAccessedRequire:()=>Nge,isAnyImportOrReExport:()=>DY,isAnyImportOrRequireStatement:()=>d7,isAnyImportSyntax:()=>IP,isAnySupportedFileExtension:()=>Kqe,isApplicableVersionedTypesKey:()=>NEe,isArgumentExpressionOfElementAccess:()=>yrt,isArray:()=>Ki,isArrayBindingElement:()=>o3,isArrayBindingOrAssignmentElement:()=>EJ,isArrayBindingOrAssignmentPattern:()=>wre,isArrayBindingPattern:()=>p2,isArrayLiteralExpression:()=>OI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>e9,isArrayTypeNode:()=>kF,isArrowFunction:()=>lA,isAsExpression:()=>Yd,isAssertClause:()=>LPt,isAssertEntry:()=>o$r,isAssertionExpression:()=>Ed,isAssertsKeyword:()=>J,isAssignmentDeclaration:()=>b7,isAssignmentExpression:()=>Jm,isAssignmentOperator:()=>UD,isAssignmentPattern:()=>CY,isAssignmentTarget:()=>bF,isAsteriskToken:()=>Aie,isAsyncFunction:()=>D7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>t0,isAwaitExpression:()=>I1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>eQ,isBinaryExpression:()=>fo,isBinaryLogicalOperator:()=>Nne,isBinaryOperatorToken:()=>gWt,isBindableObjectDefinePropertyCall:()=>f3,isBindableStaticAccessExpression:()=>yP,isBindableStaticElementAccessExpression:()=>jge,isBindableStaticNameExpression:()=>I3,isBindingElement:()=>hg,isBindingElementOfBareOrAccessedRequire:()=>gZe,isBindingName:()=>RL,isBindingOrAssignmentElement:()=>_J,isBindingOrAssignmentPattern:()=>yJ,isBindingPattern:()=>Nu,isBlock:()=>$u,isBlockLike:()=>Pz,isBlockOrCatchScoped:()=>ZJ,isBlockScope:()=>PJ,isBlockScopedContainerTopLevel:()=>Rge,isBooleanLiteral:()=>hY,isBreakOrContinueStatement:()=>AY,isBreakStatement:()=>n$r,isBuildCommand:()=>y5t,isBuildInfoFile:()=>d3t,isBuilderProgram:()=>Gtt,isBundle:()=>OPt,isCallChain:()=>_B,isCallExpression:()=>Zl,isCallExpressionTarget:()=>frt,isCallLikeExpression:()=>hF,isCallLikeOrFunctionLikeExpression:()=>Rre,isCallOrNewExpression:()=>av,isCallOrNewExpressionTarget:()=>Irt,isCallSignatureDeclaration:()=>wg,isCallToHelper:()=>qD,isCaseBlock:()=>cde,isCaseClause:()=>Iie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>RJ,isCatchClause:()=>iQ,isCatchClauseVariableDeclaration:()=>wLe,isCatchClauseVariableDeclarationOrBindingElement:()=>Qre,isCheckJsEnabledForFile:()=>rz,isCircularBuildOrder:()=>Fz,isClassDeclaration:()=>pm,isClassElement:()=>PI,isClassExpression:()=>vd,isClassInstanceProperty:()=>Bre,isClassLike:()=>xa,isClassMemberModifier:()=>vre,isClassNamedEvaluationHelperBlock:()=>kz,isClassOrTypeElement:()=>mY,isClassStaticBlockDeclaration:()=>fl,isClassThisAssignmentBlock:()=>Rde,isColonToken:()=>iEe,isCommaExpression:()=>uEe,isCommaListExpression:()=>ode,isCommaSequence:()=>dde,isCommaToken:()=>nEe,isComment:()=>XVe,isCommonJsExportPropertyAssignment:()=>Vge,isCommonJsExportedExpression:()=>Iye,isCompoundAssignment:()=>Bde,isComputedNonLiteralName:()=>kY,isComputedPropertyName:()=>Un,isConciseBody:()=>r7,isConditionalExpression:()=>Lw,isConditionalTypeNode:()=>d2,isConstAssertion:()=>Wbe,isConstTypeReference:()=>s2,isConstructSignatureDeclaration:()=>em,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>$D,isContextualKeyword:()=>rAe,isContinueStatement:()=>r$r,isCustomPrologue:()=>zre,isDebuggerStatement:()=>i$r,isDeclaration:()=>jh,isDeclarationBindingElement:()=>uP,isDeclarationFileName:()=>PC,isDeclarationName:()=>HT,isDeclarationNameOfEnumOrNamespace:()=>cbe,isDeclarationReadonly:()=>hf,isDeclarationStatement:()=>gge,isDeclarationWithTypeParameterChildren:()=>jre,isDeclarationWithTypeParameters:()=>Kre,isDecorator:()=>So,isDecoratorTarget:()=>J5t,isDefaultClause:()=>lde,isDefaultImport:()=>h3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>AZe,isDeleteExpression:()=>GF,isDeleteTarget:()=>Rye,isDeprecatedDeclaration:()=>gPe,isDestructuringAssignment:()=>Dx,isDiskPathRoot:()=>cE,isDoStatement:()=>t$r,isDocumentRegistryEntry:()=>B1e,isDotDotDotToken:()=>ide,isDottedName:()=>kne,isDynamicName:()=>nAe,isEffectiveExternalModule:()=>g3,isEffectiveStrictModeSourceFile:()=>Ure,isElementAccessChain:()=>IF,isElementAccessExpression:()=>Yg,isEmittedFileOfProgram:()=>_3t,isEmptyArrayLiteral:()=>QZe,isEmptyBindingElement:()=>wr,isEmptyBindingPattern:()=>Ct,isEmptyObjectLiteral:()=>nbe,isEmptyStatement:()=>A$e,isEmptyStringLiteral:()=>Cye,isEntityName:()=>fC,isEntityNameExpression:()=>Od,isEnumConst:()=>VA,isEnumDeclaration:()=>V3,isEnumMember:()=>LF,isEqualityOperatorKind:()=>iPe,isEqualsGreaterThanToken:()=>jLe,isExclamationToken:()=>Cz,isExcludedFile:()=>WWt,isExclusivelyTypeOnlyImportOrExport:()=>Att,isExpandoPropertyDeclaration:()=>jY,isExportAssignment:()=>Cf,isExportDeclaration:()=>Gh,isExportModifier:()=>y,isExportName:()=>o9e,isExportNamespaceAsDefaultDeclaration:()=>wY,isExportOrDefaultModifier:()=>pEe,isExportSpecifier:()=>R0,isExportsIdentifier:()=>p3,isExportsOrModuleExportsOrAlias:()=>cQ,isExpression:()=>un,isExpressionNode:()=>MT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>j5t,isExpressionOfOptionalChainRoot:()=>gY,isExpressionStatement:()=>VC,isExpressionWithTypeArguments:()=>l_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>pAe,isExternalModule:()=>xm,isExternalModuleAugmentation:()=>_F,isExternalModuleImportEqualsDeclaration:()=>LL,isExternalModuleIndicator:()=>PT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>ZF,isExternalModuleSymbol:()=>WD,isExternalOrCommonJsModule:()=>vl,isFileLevelReservedGeneratedIdentifier:()=>fY,isFileLevelUniqueName:()=>u7,isFileProbablyExternalModule:()=>hEe,isFirstDeclarationOfSymbolParameter:()=>jrt,isFixablePromiseHandler:()=>wnt,isForInOrOfStatement:()=>DL,isForInStatement:()=>zLe,isForInitializer:()=>hE,isForOfStatement:()=>sEe,isForStatement:()=>L3,isFullSourceFile:()=>aN,isFunctionBlock:()=>mP,isFunctionBody:()=>n7,isFunctionDeclaration:()=>ih,isFunctionExpression:()=>UA,isFunctionExpressionOrArrowFunction:()=>RF,isFunctionLike:()=>bu,isFunctionLikeDeclaration:()=>kd,isFunctionLikeKind:()=>lP,isFunctionLikeOrClassStaticBlockDeclaration:()=>s3,isFunctionOrConstructorTypeNode:()=>age,isFunctionOrModuleBlock:()=>CJ,isFunctionSymbol:()=>pZe,isFunctionTypeNode:()=>x_,isGeneratedIdentifier:()=>kp,isGeneratedPrivateIdentifier:()=>TL,isGetAccessor:()=>bB,isGetAccessorDeclaration:()=>Bg,isGetOrSetAccessorDeclaration:()=>fJ,isGlobalScopeAugmentation:()=>vB,isGlobalSourceFile:()=>fc,isGrammarError:()=>yge,isHeritageClause:()=>h1,isHoistedFunction:()=>Gge,isHoistedVariableStatement:()=>Fge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>xye,isIdentifierName:()=>bZe,isIdentifierOrThisTypeNode:()=>aWt,isIdentifierPart:()=>s1,isIdentifierStart:()=>bd,isIdentifierText:()=>Uh,isIdentifierTypePredicate:()=>iZe,isIdentifierTypeReference:()=>bLe,isIfStatement:()=>Z3,isIgnoredFileFromWildCardWatching:()=>QEe,isImplicitGlob:()=>Ebe,isImportAttribute:()=>VPt,isImportAttributeName:()=>e7,isImportAttributes:()=>CU,isImportCall:()=>Up,isImportClause:()=>Vw,isImportDeclaration:()=>Mf,isImportEqualsDeclaration:()=>km,isImportKeyword:()=>an,isImportMeta:()=>uv,isImportOrExportSpecifier:()=>eS,isImportOrExportSpecifierName:()=>yMt,isImportSpecifier:()=>uy,isImportTypeAssertionContainer:()=>s$r,isImportTypeNode:()=>Um,isImportable:()=>fnt,isInComment:()=>$L,isInCompoundLikeAssignment:()=>$ge,isInExpressionContext:()=>nne,isInJSDoc:()=>GY,isInJSFile:()=>wo,isInJSXText:()=>nMt,isInJsonFile:()=>Jge,isInNonReferenceComment:()=>lMt,isInReferenceComment:()=>cMt,isInRightSideOfInternalImportEqualsDeclaration:()=>GVe,isInString:()=>Zz,isInTemplateString:()=>Trt,isInTopLevelContext:()=>Hge,isInTypeQuery:()=>OY,isIncrementalBuildInfo:()=>zEe,isIncrementalBundleEmitBuildInfo:()=>O3t,isIncrementalCompilation:()=>DP,isIndexSignatureDeclaration:()=>w0,isIndexedAccessTypeNode:()=>Iv,isInferTypeNode:()=>jT,isInfinityOrNaNString:()=>oz,isInitializedProperty:()=>FEe,isInitializedVariable:()=>Gne,isInsideJsxElement:()=>YVe,isInsideJsxElementOrAttribute:()=>rMt,isInsideNodeModules:()=>y1e,isInsideTemplateLiteral:()=>g1e,isInstanceOfExpression:()=>fAe,isInstantiatedModule:()=>Ret,isInterfaceDeclaration:()=>g_,isInternalDeclaration:()=>Zre,isInternalModuleImportEqualsDeclaration:()=>d3,isInternalName:()=>T$e,isIntersectionTypeNode:()=>mf,isIntrinsicJsxName:()=>eU,isIterationStatement:()=>VT,isJSDoc:()=>tR,isJSDocAllType:()=>YPt,isJSDocAugmentsTag:()=>bz,isJSDocAuthorTag:()=>u$r,isJSDocCallbackTag:()=>I$e,isJSDocClassTag:()=>XPt,isJSDocCommentContainingNode:()=>i7,isJSDocConstructSignature:()=>PY,isJSDocDeprecatedTag:()=>y$e,isJSDocEnumTag:()=>aEe,isJSDocFunctionType:()=>mie,isJSDocImplementsTag:()=>n9e,isJSDocImportTag:()=>SN,isJSDocIndexSignature:()=>Kge,isJSDocLikeText:()=>L$e,isJSDocLink:()=>MPt,isJSDocLinkCode:()=>HPt,isJSDocLinkLike:()=>Tx,isJSDocLinkPlain:()=>c$r,isJSDocMemberName:()=>O3,isJSDocNameReference:()=>ude,isJSDocNamepathType:()=>l$r,isJSDocNamespaceBody:()=>aye,isJSDocNode:()=>l3,isJSDocNonNullableType:()=>$Le,isJSDocNullableType:()=>hie,isJSDocOptionalParameter:()=>YAe,isJSDocOptionalType:()=>f$e,isJSDocOverloadTag:()=>Cie,isJSDocOverrideTag:()=>t9e,isJSDocParameterTag:()=>cS,isJSDocPrivateTag:()=>m$e,isJSDocPropertyLikeTag:()=>dY,isJSDocPropertyTag:()=>JPt,isJSDocProtectedTag:()=>C$e,isJSDocPublicTag:()=>h$e,isJSDocReadonlyTag:()=>_$e,isJSDocReturnTag:()=>r9e,isJSDocSatisfiesExpression:()=>Lbe,isJSDocSatisfiesTag:()=>i9e,isJSDocSeeTag:()=>g$r,isJSDocSignature:()=>qL,isJSDocTag:()=>u3,isJSDocTemplateTag:()=>ZB,isJSDocThisTag:()=>b$e,isJSDocThrowsTag:()=>d$r,isJSDocTypeAlias:()=>iS,isJSDocTypeAssertion:()=>sQ,isJSDocTypeExpression:()=>W3,isJSDocTypeLiteral:()=>yU,isJSDocTypeTag:()=>gde,isJSDocTypedefTag:()=>bU,isJSDocUnknownTag:()=>A$r,isJSDocUnknownType:()=>QPt,isJSDocVariadicType:()=>e9e,isJSXTagName:()=>YJ,isJsonEqual:()=>OAe,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>EN,isJsxAttributeLike:()=>wJ,isJsxAttributeName:()=>RLe,isJsxAttributes:()=>nQ,isJsxCallLike:()=>c3,isJsxChild:()=>BJ,isJsxClosingElement:()=>rQ,isJsxClosingFragment:()=>WPt,isJsxElement:()=>bN,isJsxExpression:()=>fie,isJsxFragment:()=>P3,isJsxNamespacedName:()=>eR,isJsxOpeningElement:()=>$T,isJsxOpeningFragment:()=>Pw,isJsxOpeningLikeElement:()=>eI,isJsxOpeningLikeElementTagName:()=>U5t,isJsxSelfClosingElement:()=>_U,isJsxSpreadAttribute:()=>yz,isJsxTagNameExpression:()=>kL,isJsxText:()=>KL,isJumpStatementTarget:()=>a1e,isKeyword:()=>v0,isKeywordOrPunctuation:()=>tAe,isKnownSymbol:()=>k7,isLabelName:()=>Crt,isLabelOfLabeledStatement:()=>mrt,isLabeledStatement:()=>FP,isLateVisibilityPaintedStatement:()=>p7,isLeftHandSideExpression:()=>D_,isLet:()=>rS,isLineBreak:()=>Cl,isLiteralComputedPropertyDeclarationName:()=>Ine,isLiteralExpression:()=>wL,isLiteralExpressionOfObject:()=>Ere,isLiteralImportTypeNode:()=>ky,isLiteralKind:()=>pY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>LVe,isLiteralTypeLiteral:()=>cge,isLiteralTypeNode:()=>EE,isLocalName:()=>VF,isLogicalOperator:()=>MZe,isLogicalOrCoalescingAssignmentExpression:()=>AAe,isLogicalOrCoalescingAssignmentOperator:()=>V7,isLogicalOrCoalescingBinaryExpression:()=>Dne,isLogicalOrCoalescingBinaryOperator:()=>dAe,isMappedTypeNode:()=>GB,isMemberName:()=>_w,isMetaProperty:()=>Du,isMethodDeclaration:()=>uu,isMethodOrAccessor:()=>NL,isMethodSignature:()=>hl,isMinusToken:()=>sde,isMissingDeclaration:()=>a$r,isMissingPackageJsonInfo:()=>zWt,isModifier:()=>Ig,isModifierKind:()=>VD,isModifierLike:()=>dp,isModuleAugmentationExternal:()=>Jre,isModuleBlock:()=>_N,isModuleBody:()=>lge,isModuleDeclaration:()=>xh,isModuleExportName:()=>qLe,isModuleExportsAccessExpression:()=>cN,isModuleIdentifier:()=>_P,isModuleName:()=>uWt,isModuleOrEnumDeclaration:()=>a3,isModuleReference:()=>yY,isModuleSpecifierLike:()=>qVe,isModuleWithStringLiteralName:()=>RY,isNameOfFunctionDeclaration:()=>Ert,isNameOfModuleDeclaration:()=>brt,isNamedDeclaration:()=>rh,isNamedEvaluation:()=>kb,isNamedEvaluationSource:()=>Gye,isNamedExportBindings:()=>bre,isNamedExports:()=>mv,isNamedImportBindings:()=>wx,isNamedImports:()=>yN,isNamedImportsOrExports:()=>Fne,isNamedTupleMember:()=>KT,isNamespaceBody:()=>Dre,isNamespaceExport:()=>tk,isNamespaceExportDeclaration:()=>oEe,isNamespaceImport:()=>Zx,isNamespaceReexportDeclaration:()=>uZe,isNewExpression:()=>f2,isNewExpressionTarget:()=>Mde,isNewScopeNode:()=>tie,isNoSubstitutionTemplateLiteral:()=>GP,isNodeArray:()=>tN,isNodeArrayMultiLine:()=>mAe,isNodeDescendantOf:()=>EP,isNodeKind:()=>z6,isNodeLikeSystem:()=>Mm,isNodeModulesDirectory:()=>Vd,isNodeWithPossibleHoistedDeclaration:()=>yZe,isNonContextualKeyword:()=>kye,isNonGlobalAmbientModule:()=>Xre,isNonNullAccess:()=>QAe,isNonNullChain:()=>hJ,isNonNullExpression:()=>hv,isNonStaticMethodOrAccessorWithPrivateName:()=>kOt,isNotEmittedStatement:()=>PPt,isNullishCoalesce:()=>IJ,isNumber:()=>ws,isNumericLiteral:()=>mC,isNumericLiteralName:()=>IN,isObjectBindingElementWithoutPropertyName:()=>f1e,isObjectBindingOrAssignmentElement:()=>gP,isObjectBindingOrAssignmentPattern:()=>bJ,isObjectBindingPattern:()=>Km,isObjectLiteralElement:()=>bY,isObjectLiteralElementLike:()=>yw,isObjectLiteralExpression:()=>og,isObjectLiteralMethod:()=>a2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Pge,isObjectTypeDeclaration:()=>YY,isOmittedExpression:()=>yp,isOptionalChain:()=>GC,isOptionalChainRoot:()=>aP,isOptionalDeclaration:()=>RB,isOptionalJSDocPropertyLikeTag:()=>zne,isOptionalTypeNode:()=>jL,isOuterExpression:()=>a9e,isOutermostOptionalChain:()=>i3,isOverrideModifier:()=>bt,isPackageJsonInfo:()=>k9e,isPackedArrayLiteral:()=>Fbe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>Ve,isParameterPropertyModifier:()=>IY,isParenthesizedExpression:()=>gI,isParenthesizedTypeNode:()=>fv,isParseTreeNode:()=>SL,isPartOfParameterDeclaration:()=>HL,isPartOfTypeNode:()=>ww,isPartOfTypeOnlyImportOrExportDeclaration:()=>oge,isPartOfTypeQuery:()=>Xge,isPartiallyEmittedExpression:()=>ly,isPatternMatch:()=>jd,isPinnedComment:()=>g7,isPlainJsFile:()=>SY,isPlusToken:()=>mz,isPossiblyTypeArgumentPosition:()=>u1e,isPostfixUnaryExpression:()=>ek,isPrefixUnaryExpression:()=>T0,isPrimitiveLiteralValue:()=>uz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>pC,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>vZe,isProgramUptoDate:()=>Itt,isPrologueDirective:()=>nS,isPropertyAccessChain:()=>vx,isPropertyAccessEntityNameExpression:()=>BF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>SJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Tre,isPropertyAssignment:()=>fm,isPropertyDeclaration:()=>pi,isPropertyName:()=>VI,isPropertyNameLiteral:()=>Tw,isPropertySignature:()=>ss,isPrototypeAccess:()=>wF,isPrototypePropertyAssignment:()=>une,isPunctuation:()=>Dye,isPushOrUnshiftIdentifier:()=>Fye,isQualifiedName:()=>zi,isQuestionDotToken:()=>die,isQuestionOrExclamationToken:()=>oWt,isQuestionOrPlusOrMinusToken:()=>lWt,isQuestionToken:()=>UT,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>cWt,isRecognizedTripleSlashComment:()=>Mre,isReferenceFileLocation:()=>Zie,isReferencedFile:()=>K3,isRegularExpressionLiteral:()=>rEe,isRequireCall:()=>ay,isRequireVariableStatement:()=>ine,isRestParameter:()=>EB,isRestTypeNode:()=>zL,isReturnStatement:()=>I2,isReturnStatementWithFixablePromiseHandler:()=>CPe,isRightSideOfAccessExpression:()=>rbe,isRightSideOfInstanceofExpression:()=>YZe,isRightSideOfPropertyAccess:()=>Oie,isRightSideOfQualifiedName:()=>K5t,isRightSideOfQualifiedNameOrPropertyAccess:()=>P7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>HZe,isRootedDiskPath:()=>Xp,isSameEntityName:()=>QJ,isSatisfiesExpression:()=>Qg,isSemicolonClassElement:()=>FPt,isSetAccessor:()=>cv,isSetAccessorDeclaration:()=>Dg,isShiftOperatorOrHigher:()=>G$e,isShorthandAmbientModuleSymbol:()=>NY,isShorthandPropertyAssignment:()=>a0,isSideEffectImport:()=>Obe,isSignedNumericLiteral:()=>_ne,isSimpleCopiableExpression:()=>lQ,isSimpleInlineableExpression:()=>BN,isSimpleParameterList:()=>ZEe,isSingleOrDoubleQuote:()=>sne,isSolutionConfig:()=>net,isSourceElement:()=>DLe,isSourceFile:()=>ll,isSourceFileFromLibrary:()=>qie,isSourceFileJS:()=>n0,isSourceFileNotJson:()=>Uge,isSourceMapping:()=>ROt,isSpecialPropertyDeclaration:()=>Sye,isSpreadAssignment:()=>Lx,isSpreadElement:()=>of,isStatement:()=>Lc,isStatementButNotDeclaration:()=>vJ,isStatementOrBlock:()=>xre,isStatementWithLocals:()=>Cge,isStatic:()=>cg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>WY,isStringAndEmptyAnonymousObjectIntersection:()=>aMt,isStringDoubleQuoted:()=>one,isStringLiteral:()=>Zg,isStringLiteralLike:()=>mA,isStringLiteralOrJsxExpression:()=>TJ,isStringLiteralOrTemplate:()=>vMt,isStringOrNumericLiteralLike:()=>d1,isStringOrRegularExpressionOrTemplateLiteral:()=>Drt,isStringTextContainingNode:()=>Sre,isSuperCall:()=>Dy,isSuperKeyword:()=>rr,isSuperProperty:()=>xy,isSupportedSourceFileName:()=>wbe,isSwitchStatement:()=>ade,isSyntaxList:()=>_ie,isSyntheticExpression:()=>F3,isSyntheticReference:()=>_z,isTagName:()=>_rt,isTaggedTemplateExpression:()=>MI,isTaggedTemplateTag:()=>X5t,isTemplateExpression:()=>FF,isTemplateHead:()=>tQ,isTemplateLiteral:()=>AP,isTemplateLiteralKind:()=>LD,isTemplateLiteralToken:()=>sge,isTemplateLiteralTypeNode:()=>zT,isTemplateLiteralTypeSpan:()=>mN,isTemplateMiddle:()=>gie,isTemplateMiddleOrTemplateTail:()=>$6,isTemplateSpan:()=>pie,isTemplateTail:()=>nde,isTextWhiteSpaceLike:()=>dMt,isThis:()=>Mie,isThisContainerOrFunctionBlock:()=>aZe,isThisIdentifier:()=>vF,isThisInTypeQuery:()=>YL,isThisInitializedDeclaration:()=>Yge,isThisInitializedObjectBindingExpression:()=>lZe,isThisProperty:()=>ene,isThisTypeNode:()=>Fx,isThisTypeParameter:()=>az,isThisTypePredicate:()=>sZe,isThrowStatement:()=>p$e,isToken:()=>BL,isTokenKind:()=>q6,isTraceEnabled:()=>VP,isTransientSymbol:()=>bw,isTrivia:()=>zJ,isTryStatement:()=>mU,isTupleTypeNode:()=>Zw,isTypeAlias:()=>Ane,isTypeAliasDeclaration:()=>FB,isTypeAssertionExpression:()=>xF,isTypeDeclaration:()=>KY,isTypeElement:()=>Bx,isTypeKeyword:()=>Xde,isTypeKeywordTokenOrIdentifier:()=>KVe,isTypeLiteralNode:()=>mh,isTypeNode:()=>uc,isTypeNodeKind:()=>EAe,isTypeOfExpression:()=>CN,isTypeOnlyExportDeclaration:()=>mJ,isTypeOnlyImportDeclaration:()=>rN,isTypeOnlyImportOrExportDeclaration:()=>nN,isTypeOperatorNode:()=>xB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>bE,isTypeQueryNode:()=>Fw,isTypeReferenceNode:()=>nh,isTypeReferenceType:()=>s7,isTypeUsableAsPropertyName:()=>g2,isUMDExportSymbol:()=>bAe,isUnaryExpression:()=>Nre,isUnaryExpressionWithWrite:()=>iN,isUnicodeIdentifierStart:()=>ft,isUnionTypeNode:()=>aS,isUrl:()=>n_,isValidBigIntString:()=>Une,isValidESSymbolDeclaration:()=>rZe,isValidTypeOnlyAliasUseSite:()=>JL,isValueSignatureDeclaration:()=>C3,isVarAwaitUsing:()=>Sd,isVarConst:()=>rI,isVarConstLike:()=>OT,isVarUsing:()=>tI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>h7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>CP,isVariableDeclarationInitializedToRequire:()=>y7,isVariableDeclarationList:()=>u_,isVariableLike:()=>I7,isVariableStatement:()=>Ch,isVoidExpression:()=>qT,isWatchSet:()=>lbe,isWhileStatement:()=>d$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>Iu,isWithStatement:()=>ZPt,isWriteAccess:()=>B3,isWriteOnlyAccess:()=>_Ae,isYieldExpression:()=>Hd,jsxModeNeedsExplicitImport:()=>Ant,keywordPart:()=>y1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>M$e,libs:()=>p9e,lineBreakPart:()=>Uie,loadModuleFromGlobalCache:()=>gOt,loadWithModeAwareCache:()=>JEe,makeIdentifierFromModuleName:()=>vw,makeImport:()=>QP,makeStringLiteral:()=>Jde,mangleScopedPackageName:()=>Die,map:()=>At,mapAllOrFail:()=>qt,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Yt,mapOneOrMany:()=>cnt,mapToDisplayParts:()=>XP,matchFiles:()=>vbe,matchPatternOrExact:()=>Rbe,matchedText:()=>pw,matchesExclude:()=>w9e,matchesExcludeWorker:()=>T9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>eLe,memoize:()=>FA,memoizeOne:()=>ZA,min:()=>oa,minAndMax:()=>CLe,missingFileModifiedTime:()=>Rh,modifierToFlag:()=>HY,modifiersToFlags:()=>Dw,moduleExportNameIsDefault:()=>lv,moduleExportNameTextEscaped:()=>CF,moduleExportNameTextUnescaped:()=>HD,moduleOptionDeclaration:()=>bWt,moduleResolutionIsEqualTo:()=>hge,moduleResolutionNameAndModeGetter:()=>nVe,moduleResolutionOptionDeclarations:()=>Y$e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>lU,moduleResolutionUsesNodeModules:()=>jVe,moduleSpecifierToValidIdentifier:()=>E1e,moduleSpecifiers:()=>WF,moduleSupportsImportAttributes:()=>oLe,moduleSymbolToValidIdentifier:()=>b1e,moveEmitHelpers:()=>WLe,moveRangeEnd:()=>hAe,moveRangePastDecorators:()=>jD,moveRangePastModifiers:()=>Av,moveRangePos:()=>KD,moveSyntheticComments:()=>LLe,mutateMap:()=>Q7,mutateMapSkippingNewValues:()=>gN,needsParentheses:()=>rPe,needsScopeMarker:()=>t7,newCaseClauseTracker:()=>pPe,newPrivateEnvironment:()=>GOt,noEmitNotification:()=>WEe,noEmitSubstitution:()=>Dde,noTransformers:()=>g3t,noTruncationMaximumTruncationLength:()=>Vre,nodeCanBeDecorated:()=>OJ,nodeCoreModules:()=>dU,nodeHasName:()=>t3,nodeIsDecorated:()=>MJ,nodeIsMissing:()=>sf,nodeIsPresent:()=>u1,nodeIsSynthesized:()=>sp,nodeModuleNameResolver:()=>rOt,nodeModulesPathPart:()=>Vx,nodeNextJsonConfigResolver:()=>nOt,nodeOrChildIsDecorated:()=>rne,nodeOverlapsWithStartEnd:()=>VVe,nodePosToString:()=>_ge,nodeSeenTracker:()=>Qie,nodeStartsNewLexicalEnvironment:()=>Zye,noop:()=>Dc,noopFileWatcher:()=>Pie,normalizePath:()=>iu,normalizeSlashes:()=>Dp,normalizeSpans:()=>EI,not:()=>uC,notImplemented:()=>il,notImplementedResolver:()=>I3t,nullNodeConverters:()=>Xbe,nullParenthesizerRules:()=>Qbe,nullTransformationContext:()=>MEe,objectAllocator:()=>ZC,operatorPart:()=>Kde,optionDeclarations:()=>Ww,optionMapToObject:()=>y9e,optionsAffectingProgramStructure:()=>BWt,optionsForBuild:()=>X$e,optionsForWatch:()=>wz,optionsHaveChanges:()=>S0,or:()=>Hp,orderedRemoveItem:()=>Ql,orderedRemoveItemAt:()=>LA,packageIdToPackageName:()=>xJ,packageIdToString:()=>oN,parameterIsThisKeyword:()=>SF,parameterNamePart:()=>fMt,parseBaseNodeFactory:()=>IWt,parseBigInt:()=>yLe,parseBuildCommand:()=>GWt,parseCommandLine:()=>kWt,parseCommandLineWorker:()=>J$e,parseConfigFileTextToJson:()=>K$e,parseConfigFileWithSystem:()=>t5t,parseConfigHostFromCompilerHostLike:()=>lVe,parseCustomTypeOption:()=>m9e,parseIsolatedEntityName:()=>Bz,parseIsolatedJSDocComment:()=>mWt,parseJSDocTypeExpressionForTests:()=>L$r,parseJsonConfigFileContent:()=>den,parseJsonSourceFileConfigFileContent:()=>SEe,parseJsonText:()=>mEe,parseListTypeOption:()=>NWt,parseNodeFactory:()=>H3,parseNodeModuleFromPath:()=>TEe,parsePackageName:()=>REe,parsePseudoBigInt:()=>nz,parseValidBigInt:()=>xbe,pasteEdits:()=>gst,patchWriteFileEnsuringDirectory:()=>e2,pathContainsNodeModules:()=>WP,pathIsAbsolute:()=>lE,pathIsBareSpecifier:()=>Xh,pathIsRelative:()=>Ip,patternText:()=>j1,performIncrementalCompilation:()=>r5t,performance:()=>hb,positionBelongsToNode:()=>Srt,positionIsASICandidate:()=>sPe,positionIsSynthesized:()=>wB,positionsAreOnSameLine:()=>yE,preProcessFile:()=>Sin,probablyUsesSemicolons:()=>_1e,processCommentPragmas:()=>W$e,processPragmasIntoFields:()=>O$e,processTaggedTemplateExpression:()=>Yet,programContainsEsModules:()=>gMt,programContainsModules:()=>uMt,projectReferenceIsEqualTo:()=>Pre,propertyNamePart:()=>IMt,pseudoBigIntToString:()=>kP,punctuationPart:()=>k0,pushIfUnique:()=>Qi,quote:()=>qde,quotePreferenceFromString:()=>Ort,rangeContainsPosition:()=>Hie,rangeContainsPositionExclusive:()=>c1e,rangeContainsRange:()=>cy,rangeContainsRangeExclusive:()=>z5t,rangeContainsStartEnd:()=>l1e,rangeEndIsOnSameLineAsRangeStart:()=>xne,rangeEndPositionsAreOnSameLine:()=>JZe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>S3,rangeOfNode:()=>Dbe,rangeOfTypeParameters:()=>kbe,rangeOverlapsWithStartEnd:()=>Hde,rangeStartIsOnSameLineAsRangeEnd:()=>UZe,rangeStartPositionsAreOnSameLine:()=>M7,readBuilderProgram:()=>_Ve,readConfigFile:()=>bEe,readJson:()=>E3,readJsonConfigFile:()=>FWt,readJsonOrUndefined:()=>obe,reduceEachLeadingCommentRange:()=>EL,reduceEachTrailingCommentRange:()=>ff,reduceLeft:()=>Ul,reduceLeftIterator:()=>ne,reducePathComponents:()=>t2,refactor:()=>Oz,regExpEscape:()=>Yqe,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Wr,removeAllComments:()=>pz,removeEmitHelper:()=>s$e,removeExtension:()=>Jne,removeFileExtension:()=>s0,removeIgnoredPath:()=>dVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Nm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>ny,repeatString:()=>d1e,replaceElement:()=>Yl,replaceFirstStar:()=>R3,resolutionExtensionIsTSOrJson:()=>ez,resolveConfigFileProjectName:()=>Utt,resolveJSModule:()=>$Wt,resolveLibrary:()=>G9e,resolveModuleName:()=>BU,resolveModuleNameFromCache:()=>Qen,resolvePackageNameToPackageJson:()=>aet,resolvePath:()=>AE,resolveProjectReferencePath:()=>xz,resolveTripleslashReference:()=>att,resolveTypeReferenceDirective:()=>KWt,resolvingEmptyArray:()=>Lre,returnFalse:()=>As,returnNoopFileWatcher:()=>Pde,returnTrue:()=>Tf,returnUndefined:()=>cm,returnsPromise:()=>Bnt,rewriteModuleSpecifier:()=>Nz,sameFlatMap:()=>Zr,sameMap:()=>Tr,sameMapping:()=>Ftn,scanTokenAtPosition:()=>$s,scanner:()=>A_,semanticDiagnosticsOptionDeclarations:()=>EWt,serializeCompilerOptions:()=>eet,server:()=>wfn,servicesVersion:()=>don,setCommentRange:()=>hh,setConfigFileInOptions:()=>tet,setConstantValue:()=>PLe,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>CVe,setIdentifierAutoGenerate:()=>aie,setIdentifierGeneratedImportReference:()=>HLe,setIdentifierTypeArguments:()=>xx,setInternalEmitFlags:()=>oie,setLocalizedDiagnosticMessages:()=>cU,setNodeChildren:()=>UPt,setNodeFlags:()=>SLe,setObjectAllocator:()=>$Ze,setOriginalNode:()=>ua,setParent:()=>XA,setParentRecursive:()=>UL,setPrivateIdentifier:()=>wU,setSnippetElement:()=>$be,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>xT,setStartsOnNewLine:()=>Md,setSyntheticLeadingComments:()=>kB,setSyntheticTrailingComments:()=>x3,setSys:()=>bI,setSysLog:()=>xC,setTextRange:()=>gn,setTextRangeEnd:()=>AU,setTextRangePos:()=>iz,setTextRangePosEnd:()=>TB,setTextRangePosWidth:()=>Gbe,setTokenSourceMapRange:()=>jbe,setTypeNode:()=>OLe,setUILocale:()=>Zs,setValueDeclaration:()=>S7,shouldAllowImportingTsExtension:()=>kie,shouldPreserveConstEnums:()=>Fb,shouldRewriteModuleSpecifier:()=>gne,shouldUseUriStyleNodeCoreModules:()=>APe,showModuleSpecifier:()=>zZe,signatureHasRestParameter:()=>D0,signatureToDisplayParts:()=>qrt,single:()=>Xa,singleElementArray:()=>J_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ps,skipAlias:()=>FC,skipConstraint:()=>Vrt,skipOuterExpressions:()=>HI,skipParentheses:()=>QA,skipPartiallyEmittedExpressions:()=>o2,skipTrivia:()=>Yu,skipTypeChecking:()=>T3,skipTypeCheckingIgnoringNoCheck:()=>_Le,skipTypeParentheses:()=>w7,skipWhile:()=>cp,sliceAfter:()=>Nbe,some:()=>jt,sortAndDeduplicate:()=>cl,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>Q$e,sourceFileMayBeEmitted:()=>SP,sourceMapCommentRegExp:()=>ket,sourceMapCommentRegExpDontCareLineStart:()=>BOt,spacePart:()=>BI,spanMap:()=>_n,startEndContainsRange:()=>CAe,startEndOverlapsWithStartEnd:()=>PVe,startOnNewLine:()=>N0,startTracing:()=>fd,startsWith:()=>Ac,startsWithDirectory:()=>$S,startsWithUnderscore:()=>gnt,startsWithUseStrict:()=>tWt,stringContainsAt:()=>kMt,stringToToken:()=>Ta,stripQuotes:()=>l2,supportedDeclarationExtensions:()=>VAe,supportedJSExtensionsFlat:()=>uU,supportedLocaleDirectories:()=>nv,supportedTSExtensionsFlat:()=>Bbe,supportedTSImplementationExtensions:()=>Qne,suppressLeadingAndTrailingTrivia:()=>Vy,suppressLeadingTrivia:()=>Ybe,suppressTrailingTrivia:()=>GLe,symbolEscapedNameNoDefault:()=>zVe,symbolName:()=>nf,symbolNameNoDefault:()=>Hrt,symbolToDisplayParts:()=>jde,sys:()=>yd,sysLog:()=>Ih,tagNamesAreEquivalent:()=>Q3,takeWhile:()=>t_,targetOptionDeclaration:()=>H$e,targetToLibMap:()=>Is,testFormatSettings:()=>Xnn,textChangeRangeIsUnchanged:()=>sy,textChangeRangeNewSpan:()=>qR,textChanges:()=>xo,textOrKeywordPart:()=>zrt,textPart:()=>gS,textRangeContainsPositionInclusive:()=>sl,textRangeContainsTextSpan:()=>Og,textRangeIntersectsWithTextSpan:()=>e3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>ed,textSpanContainsTextSpan:()=>Nd,textSpanEnd:()=>Rs,textSpanIntersection:()=>IA,textSpanIntersectsWith:()=>q2,textSpanIntersectsWithPosition:()=>zR,textSpanIntersectsWithTextSpan:()=>Tb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>o1,textSpanOverlapsWith:()=>Nh,textSpansEqual:()=>Jie,textToKeywordObj:()=>ev,timestamp:()=>Fg,toArray:()=>cc,toBuilderFileEmit:()=>Y3t,toBuilderStateFileInfoForMultiEmit:()=>H3t,toEditorSettings:()=>D1e,toFileNameLowerCase:()=>Om,toPath:()=>Ou,toProgramEmitPending:()=>Q3t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>Id,tokenIsIdentifierOrKeywordOrGreaterThan:()=>fB,tokenToString:()=>Vi,trace:()=>eu,tracing:()=>ki,tracingEnabled:()=>Kl,transferSourceFileChildren:()=>KPt,transform:()=>Eon,transformClassFields:()=>YOt,transformDeclarations:()=>Uet,transformECMAScriptModule:()=>Jet,transformES2015:()=>i3t,transformES2016:()=>n3t,transformES2017:()=>UOt,transformES2018:()=>KOt,transformES2019:()=>jOt,transformES2020:()=>zOt,transformES2021:()=>qOt,transformESDecorators:()=>JOt,transformESNext:()=>$Ot,transformGenerators:()=>s3t,transformImpliedNodeFormatDependentModule:()=>a3t,transformJsx:()=>r3t,transformLegacyDecorators:()=>XOt,transformModule:()=>Xet,transformNamedEvaluation:()=>m1,transformNodes:()=>OEe,transformSystemModule:()=>o3t,transformTypeScript:()=>HOt,transpile:()=>xin,transpileDeclaration:()=>Din,transpileModule:()=>tHt,transpileOptionValueCompilerOptions:()=>wWt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>cPe,tryCast:()=>Gs,tryDirectoryExists:()=>aPe,tryExtractTSExtension:()=>O7,tryFileExists:()=>jie,tryGetClassExtendingExpressionWithTypeArguments:()=>ebe,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>tbe,tryGetDirectories:()=>oPe,tryGetExtensionFromPath:()=>QT,tryGetImportFromModuleSpecifier:()=>B7,tryGetJSDocSatisfiesTypeNode:()=>XAe,tryGetModuleNameFromFile:()=>AEe,tryGetModuleSpecifierFromDeclaration:()=>ZY,tryGetNativePerformanceHooks:()=>YS,tryGetPropertyAccessOrIdentifierToString:()=>TP,tryGetPropertyNameOfBindingOrAssignmentElement:()=>l9e,tryGetSourceMappingURL:()=>wOt,tryGetTextOfPropertyName:()=>xY,tryParseJson:()=>nU,tryParsePattern:()=>UY,tryParsePatterns:()=>$7,tryParseRawSourceMap:()=>TOt,tryReadDirectory:()=>int,tryReadFile:()=>Ide,tryRemoveDirectoryPrefix:()=>DAe,tryRemoveExtension:()=>mLe,tryRemovePrefix:()=>HS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>SU,typeAcquisitionDeclarations:()=>I9e,typeAliasNamePart:()=>hMt,typeDirectiveIsEqualTo:()=>mge,typeKeywords:()=>Lrt,typeParameterNamePart:()=>mMt,typeToDisplayParts:()=>h1e,unchangedPollThresholds:()=>q_,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>DEe,unorderedRemoveItem:()=>ef,unprefixedNodeCoreModules:()=>$ne,unreachableCodeIsError:()=>iLe,unsetNodeChildren:()=>S$e,unusedLabelIsError:()=>sLe,unwrapInnermostStatementOfLabel:()=>hye,unwrapParenthesizedExpression:()=>KAe,updateErrorForNoInputFiles:()=>B9e,updateLanguageServiceSourceFile:()=>$nt,updateMissingFilePathsWatch:()=>itt,updateResolutionField:()=>wie,updateSharedExtendedConfigFileWatcher:()=>$9e,updateSourceFile:()=>V$e,updateWatchingWildcardDirectories:()=>YEe,usingSingleLineStringWriter:()=>dP,utf16EncodeAsString:()=>jR,validateLocaleAndSetLanguage:()=>yx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Sde,visitCommaListElements:()=>GEe,visitEachChild:()=>_s,visitFunctionBody:()=>uS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>Det,visitNode:()=>Mr,visitNodes:()=>Ws,visitParameterList:()=>vI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>rWt,walkUpParenthesizedExpressions:()=>gv,walkUpParenthesizedTypes:()=>fne,walkUpParenthesizedTypesAndGetParentAndChild:()=>Tye,whitespaceOrMapCommentRegExp:()=>xet,writeCommentRange:()=>rU,writeFile:()=>uAe,writeFileEnsuringDirectories:()=>Xye,zipWith:()=>ce}),e.exports=A(f);var I="5.9",C="5.9.3",b=(s=>(s[s.LessThan=-1]="LessThan",s[s.EqualTo=0]="EqualTo",s[s.GreaterThan=1]="GreaterThan",s))(b||{}),E=[],N=new Map;function B(s){return s!==void 0?s.length:0}function F(s,c){if(s!==void 0)for(let g=0;g=0;g--){let d=c(s[g],g);if(d)return d}}function X(s,c){if(s!==void 0)for(let g=0;g=0;d--){let h=s[d];if(c(h,d))return h}}function Se(s,c,g){if(s===void 0)return-1;for(let d=g??0;d=0;d--)if(c(s[d],d))return d;return-1}function k(s,c,g=yg){if(s!==void 0){for(let d=0;d{let[_,S]=c(h,d);g.set(_,S)}),g}function jt(s,c){if(s!==void 0)if(c!==void 0){for(let g=0;g0;return!1}function Fn(s,c,g){let d;for(let h=0;hs[S])}function xi(s,c){let g=[];for(let d=0;d0&&d(c,s[S-1]))return!1;if(S0&&pe.assertGreaterThanOrEqual(g(c[_],c[_-1]),0);t:for(let S=h;hS&&pe.assertGreaterThanOrEqual(g(s[h],s[h-1]),0),g(c[_],s[h])){case-1:d.push(c[_]);continue e;case 0:continue e;case 1:continue t}}return d}function Ft(s,c){return c===void 0?s:s===void 0?[c]:(s.push(c),s)}function zr(s,c){return s===void 0?c:c===void 0?s:Ki(s)?Ki(c)?Nn(s,c):Ft(s,c):Ki(c)?Ft(c,s):[s,c]}function Rn(s,c){return c<0?s.length+c:c}function Or(s,c,g,d){if(c===void 0||c.length===0)return s;if(s===void 0)return c.slice(g,d);g=g===void 0?0:Rn(c,g),d=d===void 0?c.length:Rn(c,d);for(let h=g;hg(s[d],s[h])||Zt(d,h))}function bo(s,c){return s.length===0?E:s.slice().sort(c)}function*Qa(s){for(let c=s.length-1;c>=0;c--)yield s[c]}function gc(s,c,g,d){for(;gs?.at(c):(s,c)=>{if(s!==void 0&&(c=Rn(s,c),c>1),T=g(s[R],R);switch(d(T,c)){case-1:_=R+1;break;case 0:return R;case 1:S=R-1;break}}return~_}function Ul(s,c,g,d,h){if(s&&s.length>0){let _=s.length;if(_>0){let S=d===void 0||d<0?0:d,R=h===void 0||S+h>_-1?_-1:S+h,T;for(arguments.length<=2?(T=s[S],S++):T=g;S<=R;)T=c(T,s[S],S),S++;return T}}return g}var Xu=Object.prototype.hasOwnProperty;function Da(s,c){return Xu.call(s,c)}function pu(s,c){return Xu.call(s,c)?s[c]:void 0}function _g(s){let c=[];for(let g in s)Xu.call(s,g)&&c.push(g);return c}function mI(s){let c=[];do{let g=Object.getOwnPropertyNames(s);for(let d of g)Qi(c,d)}while(s=Object.getPrototypeOf(s));return c}function Qh(s){let c=[];for(let g in s)Xu.call(s,g)&&c.push(s[g]);return c}function Ri(s,c){let g=new Array(s);for(let d=0;d100&&g>c.length>>1){let R=c.length-g;c.copyWithin(0,g),c.length=R,g=0}return S}return{enqueue:h,dequeue:_,isEmpty:d}}function oo(s,c){let g=new Map,d=0;function*h(){for(let S of g.values())Ki(S)?yield*S:yield S}let _={has(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);return Ki(T)?k(T,S,c):c(T,S)},add(S){let R=s(S);if(g.has(R)){let T=g.get(R);if(Ki(T))k(T,S,c)||(T.push(S),d++);else{let W=T;c(W,S)||(g.set(R,[W,S]),d++)}}else g.set(R,S),d++;return this},delete(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);if(Ki(T)){for(let W=0;Wh(),[Symbol.toStringTag]:g[Symbol.toStringTag]};return _}function Ki(s){return Array.isArray(s)}function cc(s){return Ki(s)?s:[s]}function Xs(s){return typeof s=="string"}function ws(s){return typeof s=="number"}function Gs(s,c){return s!==void 0&&c(s)?s:void 0}function Ma(s,c){return s!==void 0&&c(s)?s:pe.fail(`Invalid cast. The supplied value ${s} did not pass the test '${pe.getFunctionName(c)}'.`)}function Dc(s){}function As(){return!1}function Tf(){return!0}function cm(){}function Fl(s){return s}function rc(s){return s.toLowerCase()}var sd=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function Om(s){return sd.test(s)?s.replace(sd,rc):s}function il(){throw new Error("Not implemented")}function FA(s){let c;return()=>(s&&(c=s(),s=void 0),c)}function ZA(s){let c=new Map;return g=>{let d=`${typeof g}:${g}`,h=c.get(d);return h===void 0&&!c.has(d)&&(h=s(g),c.set(d,h)),h}}var El=(s=>(s[s.None=0]="None",s[s.Normal=1]="Normal",s[s.Aggressive=2]="Aggressive",s[s.VeryAggressive=3]="VeryAggressive",s))(El||{});function yg(s,c){return s===c}function Mp(s,c){return s===c||s!==void 0&&c!==void 0&&s.toUpperCase()===c.toUpperCase()}function MA(s,c){return yg(s,c)}function Er(s,c){return s===c?0:s===void 0?-1:c===void 0?1:sc(g,d)===-1?g:d)}function Fs(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toUpperCase(),c=c.toUpperCase(),sc?1:0)}function Wa(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toLowerCase(),c=c.toLowerCase(),sc?1:0)}function Ca(s,c){return Er(s,c)}function ld(s){return s?Fs:Ca}var Rp=(()=>{return c;function s(g,d,h){if(g===d)return 0;if(g===void 0)return-1;if(d===void 0)return 1;let _=h(g,d);return _<0?-1:_>0?1:0}function c(g){let d=new Intl.Collator(g,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(h,_)=>s(h,_,d)}})(),np,HA;function df(){return HA}function Zs(s){HA!==s&&(HA=s,np=void 0)}function so(s,c){return np??(np=Rp(HA)),np(s,c)}function Ea(s,c,g,d){return s===c?0:s===void 0?-1:c===void 0?1:d(s[g],c[g])}function Ml(s,c){return Zt(s?1:0,c?1:0)}function Dr(s,c,g){let d=Math.max(2,Math.floor(s.length*.34)),h=Math.floor(s.length*.4)+1,_;for(let S of c){let R=g(S);if(R!==void 0&&Math.abs(R.length-s.length)<=d){if(R===s||R.length<3&&R.toLowerCase()!==s.toLowerCase())continue;let T=Wn(s,R,h-.1);if(T===void 0)continue;pe.assert(Tg?R-g:1),V=Math.floor(c.length>g+R?g+R:c.length);h[0]=R;let M=R;for(let re=1;reg)return;let ee=d;d=h,h=ee}let S=d[c.length];return S>g?void 0:S}function di(s,c,g){let d=s.length-c.length;return d>=0&&(g?Mp(s.slice(d),c):s.indexOf(c,d)===d)}function aa(s,c){return di(s,c)?s.slice(0,s.length-c.length):s}function Bo(s,c){return di(s,c)?s.slice(0,s.length-c.length):void 0}function us(s){let c=s.length;for(let g=c-1;g>0;g--){let d=s.charCodeAt(g);if(d>=48&&d<=57)do--g,d=s.charCodeAt(g);while(g>0&&d>=48&&d<=57);else if(g>4&&(d===110||d===78)){if(--g,d=s.charCodeAt(g),d!==105&&d!==73||(--g,d=s.charCodeAt(g),d!==109&&d!==77))break;--g,d=s.charCodeAt(g)}else break;if(d!==45&&d!==46)break;c=g}return c===s.length?s:s.slice(0,c)}function Ql(s,c){for(let g=0;gg===c)}function ip(s,c){for(let g=0;gh&&jd(R,g)&&(h=R.prefix.length,d=S)}return d}function Ac(s,c,g){return g?Mp(s.slice(0,c.length),c):s.lastIndexOf(c,0)===0}function Nm(s,c){return Ac(s,c)?s.substr(c.length):s}function HS(s,c,g=Fl){return Ac(g(s),g(c))?s.substring(c.length):void 0}function jd({prefix:s,suffix:c},g){return g.length>=s.length+c.length&&Ac(g,s)&&di(g,c)}function dh(s,c){return g=>s(g)&&c(g)}function Hp(...s){return(...c)=>{let g;for(let d of s)if(g=d(...c),g)return g;return g}}function uC(s){return(...c)=>!s(...c)}function nE(s){}function J_(s){return s===void 0?void 0:[s]}function q0(s,c,g,d,h,_){_??(_=Dc);let S=0,R=0,T=s.length,W=c.length,V=!1;for(;S(s[s.Off=0]="Off",s[s.Error=1]="Error",s[s.Warning=2]="Warning",s[s.Info=3]="Info",s[s.Verbose=4]="Verbose",s))(fb||{}),pe;(s=>{let c=0;s.currentLogLevel=2,s.isDebugging=!1;function g(yr){return s.currentLogLevel<=yr}s.shouldLog=g;function d(yr,hn){s.loggingHost&&g(yr)&&s.loggingHost.log(yr,hn)}function h(yr){d(3,yr)}s.log=h,(yr=>{function hn(Oa){d(1,Oa)}yr.error=hn;function Oi(Oa){d(2,Oa)}yr.warn=Oi;function lo(Oa){d(3,Oa)}yr.log=lo;function pa(Oa){d(4,Oa)}yr.trace=pa})(h=s.log||(s.log={}));let _={};function S(){return c}s.getAssertionLevel=S;function R(yr){let hn=c;if(c=yr,yr>hn)for(let Oi of _g(_)){let lo=_[Oi];lo!==void 0&&s[Oi]!==lo.assertion&&yr>=lo.level&&(s[Oi]=lo,_[Oi]=void 0)}}s.setAssertionLevel=R;function T(yr){return c>=yr}s.shouldAssert=T;function W(yr,hn){return T(yr)?!0:(_[hn]={level:yr,assertion:s[hn]},s[hn]=Dc,!1)}function V(yr,hn){debugger;let Oi=new Error(yr?`Debug Failure. ${yr}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Oi,hn||V),Oi}s.fail=V;function M(yr,hn,Oi){return V(`${hn||"Unexpected node."}\r Node ${Pt(yr.kind)} was unexpected.`,Oi||M)}s.failBadSyntaxKind=M;function ee(yr,hn,Oi,lo){yr||(hn=hn?`False expression: ${hn}`:"False expression.",Oi&&(hn+=`\r -Verbose Debug Information: `+(typeof Oi=="string"?Oi:Oi())),V(hn,lo||ee))}s.assert=ee;function re(yr,hn,Oi,lo,pa){if(yr!==hn){let Oa=Oi?lo?`${Oi} ${lo}`:Oi:"";V(`Expected ${yr} === ${hn}. ${Oa}`,pa||re)}}s.assertEqual=re;function ge(yr,hn,Oi,lo){yr>=hn&&V(`Expected ${yr} < ${hn}. ${Oi||""}`,lo||ge)}s.assertLessThan=ge;function Ie(yr,hn,Oi){yr>hn&&V(`Expected ${yr} <= ${hn}`,Oi||Ie)}s.assertLessThanOrEqual=Ie;function _e(yr,hn,Oi){yr= ${hn}`,Oi||_e)}s.assertGreaterThanOrEqual=_e;function Ee(yr,hn,Oi){yr==null&&V(hn,Oi||Ee)}s.assertIsDefined=Ee;function Ne(yr,hn,Oi){return Ee(yr,hn,Oi||Ne),yr}s.checkDefined=Ne;function Te(yr,hn,Oi){for(let lo of yr)Ee(lo,hn,Oi||Te)}s.assertEachIsDefined=Te;function Ze(yr,hn,Oi){return Te(yr,hn,Oi||Ze),yr}s.checkEachDefined=Ze;function We(yr,hn="Illegal value:",Oi){let lo=typeof yr=="object"&&Da(yr,"kind")&&Da(yr,"pos")?"SyntaxKind: "+Pt(yr.kind):JSON.stringify(yr);return V(`${hn} ${lo}`,Oi||We)}s.assertNever=We;function Ue(yr,hn,Oi,lo){W(1,"assertEachNode")&&ee(hn===void 0||ue(yr,hn),Oi||"Unexpected node.",()=>`Node array did not pass test '${ht(hn)}'.`,lo||Ue)}s.assertEachNode=Ue;function $e(yr,hn,Oi,lo){W(1,"assertNode")&&ee(yr!==void 0&&(hn===void 0||hn(yr)),Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} did not pass test '${ht(hn)}'.`,lo||$e)}s.assertNode=$e;function Ye(yr,hn,Oi,lo){W(1,"assertNotNode")&&ee(yr===void 0||hn===void 0||!hn(yr),Oi||"Unexpected node.",()=>`Node ${Pt(yr.kind)} should not have passed test '${ht(hn)}'.`,lo||Ye)}s.assertNotNode=Ye;function Tt(yr,hn,Oi,lo){W(1,"assertOptionalNode")&&ee(hn===void 0||yr===void 0||hn(yr),Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} did not pass test '${ht(hn)}'.`,lo||Tt)}s.assertOptionalNode=Tt;function ot(yr,hn,Oi,lo){W(1,"assertOptionalToken")&&ee(hn===void 0||yr===void 0||yr.kind===hn,Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} was not a '${Pt(hn)}' token.`,lo||ot)}s.assertOptionalToken=ot;function Qe(yr,hn,Oi){W(1,"assertMissingNode")&&ee(yr===void 0,hn||"Unexpected node.",()=>`Node ${Pt(yr.kind)} was unexpected'.`,Oi||Qe)}s.assertMissingNode=Qe;function mt(yr){}s.type=mt;function ht(yr){if(typeof yr!="function")return"";if(Da(yr,"name"))return yr.name;{let hn=Function.prototype.toString.call(yr),Oi=/^function\s+([\w$]+)\s*\(/.exec(hn);return Oi?Oi[1]:""}}s.getFunctionName=ht;function _t(yr){return`{ name: ${Bc(yr.escapedName)}; flags: ${dt(yr.flags)}; declarations: ${At(yr.declarations,hn=>Pt(hn.kind))} }`}s.formatSymbol=_t;function Rt(yr=0,hn,Oi){let lo=Ke(hn);if(yr===0)return lo.length>0&&lo[0][0]===0?lo[0][1]:"0";if(Oi){let pa=[],Oa=yr;for(let[tl,Qu]of lo){if(tl>yr)break;tl!==0&&tl&yr&&(pa.push(Qu),Oa&=~tl)}if(Oa===0)return pa.join("|")}else for(let[pa,Oa]of lo)if(pa===yr)return Oa;return yr.toString()}s.formatEnum=Rt;let Lt=new Map;function Ke(yr){let hn=Lt.get(yr);if(hn)return hn;let Oi=[];for(let pa in yr){let Oa=yr[pa];typeof Oa=="number"&&Oi.push([Oa,pa])}let lo=bo(Oi,(pa,Oa)=>Zt(pa[0],Oa[0]));return Lt.set(yr,lo),lo}function Pt(yr){return Rt(yr,Ld,!1)}s.formatSyntaxKind=Pt;function _r(yr){return Rt(yr,Iw,!1)}s.formatSnippetKind=_r;function Gt(yr){return Rt(yr,X2,!1)}s.formatScriptKind=Gt;function nt(yr){return Rt(yr,AC,!0)}s.formatNodeFlags=nt;function Dt(yr){return Rt(yr,wy,!0)}s.formatNodeCheckFlags=Dt;function tr(yr){return Rt(yr,JE,!0)}s.formatModifierFlags=tr;function ur(yr){return Rt(yr,up,!0)}s.formatTransformFlags=ur;function Gr(yr){return Rt(yr,cB,!0)}s.formatEmitFlags=Gr;function dt(yr){return Rt(yr,TT,!0)}s.formatSymbolFlags=dt;function pr(yr){return Rt(yr,jE,!0)}s.formatTypeFlags=pr;function st(yr){return Rt(yr,$A,!0)}s.formatSignatureFlags=st;function ir(yr){return Rt(yr,j_,!0)}s.formatObjectFlags=ir;function zt(yr){return Rt(yr,Yp,!0)}s.formatFlowFlags=zt;function Ht(yr){return Rt(yr,vy,!0)}s.formatRelationComparisonResult=Ht;function Br(yr){return Rt(yr,Eet,!0)}s.formatCheckMode=Br;function mn(yr){return Rt(yr,vet,!0)}s.formatSignatureCheckMode=mn;function jn(yr){return Rt(yr,bet,!0)}s.formatTypeFacts=jn;let Zi=!1,Ns;function An(yr){"__debugFlowFlags"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(){let hn=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Oi=this.flags&-2048;return`${hn}${Oi?` (${zt(Oi)})`:""}`}},__debugFlowFlags:{get(){return Rt(this.flags,Yp,!0)}},__debugToString:{value(){return hc(this)}}})}function si(yr){return Zi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),An(Ns)),Object.setPrototypeOf(yr,Ns)):An(yr)),yr}s.attachFlowNodeDebugInfo=si;let ks;function Ic(yr){"__tsDebuggerDisplay"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(hn){return hn=String(hn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${hn}`}}})}function su(yr){Zi&&(typeof Object.setPrototypeOf=="function"?(ks||(ks=Object.create(Array.prototype),Ic(ks)),Object.setPrototypeOf(yr,ks)):Ic(yr))}s.attachNodeArrayDebugInfo=su;function Zn(){if(Zi)return;let yr=new WeakMap,hn=new WeakMap;Object.defineProperties(ZC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let lo=this.flags&33554432?"TransientSymbol":"Symbol",pa=this.flags&-33554433;return`${lo} '${nf(this)}'${pa?` (${dt(pa)})`:""}`}},__debugFlags:{get(){return dt(this.flags)}}}),Object.defineProperties(ZC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let lo=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",pa=this.flags&524288?this.objectFlags&-1344:0;return`${lo}${this.symbol?` '${nf(this.symbol)}'`:""}${pa?` (${ir(pa)})`:""}`}},__debugFlags:{get(){return pr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?ir(this.objectFlags):""}},__debugTypeToString:{value(){let lo=yr.get(this);return lo===void 0&&(lo=this.checker.typeToString(this),yr.set(this,lo)),lo}}}),Object.defineProperties(ZC.getSignatureConstructor().prototype,{__debugFlags:{get(){return st(this.flags)}},__debugSignatureToString:{value(){var lo;return(lo=this.checker)==null?void 0:lo.signatureToString(this)}}});let Oi=[ZC.getNodeConstructor(),ZC.getIdentifierConstructor(),ZC.getTokenConstructor(),ZC.getSourceFileConstructor()];for(let lo of Oi)Da(lo.prototype,"__debugKind")||Object.defineProperties(lo.prototype,{__tsDebuggerDisplay:{value(){return`${kp(this)?"GeneratedIdentifier":Ir(this)?`Identifier '${Vo(this)}'`:p(this)?`PrivateIdentifier '${Vo(this)}'`:Zg(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:mC(this)?`NumericLiteral ${this.text}`:eQ(this)?`BigIntLiteral ${this.text}n`:Ds(this)?"TypeParameterDeclaration":Si(this)?"ParameterDeclaration":Tc(this)?"ConstructorDeclaration":Bg(this)?"GetAccessorDeclaration":Dg(this)?"SetAccessorDeclaration":wg(this)?"CallSignatureDeclaration":em(this)?"ConstructSignatureDeclaration":w0(this)?"IndexSignatureDeclaration":bE(this)?"TypePredicateNode":nh(this)?"TypeReferenceNode":x_(this)?"FunctionTypeNode":$D(this)?"ConstructorTypeNode":Fw(this)?"TypeQueryNode":mh(this)?"TypeLiteralNode":kF(this)?"ArrayTypeNode":Zw(this)?"TupleTypeNode":jL(this)?"OptionalTypeNode":zL(this)?"RestTypeNode":aS(this)?"UnionTypeNode":mf(this)?"IntersectionTypeNode":d2(this)?"ConditionalTypeNode":jT(this)?"InferTypeNode":fv(this)?"ParenthesizedTypeNode":Fx(this)?"ThisTypeNode":xB(this)?"TypeOperatorNode":Iv(this)?"IndexedAccessTypeNode":GB(this)?"MappedTypeNode":EE(this)?"LiteralTypeNode":KT(this)?"NamedTupleMember":Um(this)?"ImportTypeNode":Pt(this.kind)}${this.flags?` (${nt(this.flags)})`:""}`}},__debugKind:{get(){return Pt(this.kind)}},__debugNodeFlags:{get(){return nt(this.flags)}},__debugModifierFlags:{get(){return tr(zye(this))}},__debugTransformFlags:{get(){return ur(this.transformFlags)}},__debugIsParseTreeNode:{get(){return SL(this)}},__debugEmitFlags:{get(){return Gr(tA(this))}},__debugGetText:{value(pa){if(sp(this))return"";let Oa=hn.get(this);if(Oa===void 0){let tl=$l(this),Qu=tl&&ms(tl);Oa=Qu?mF(Qu,tl,pa):"",hn.set(this,Oa)}return Oa}}});Zi=!0}s.enableDebugInfo=Zn;function ya(yr){let hn=yr&7,Oi=hn===0?"in out":hn===3?"[bivariant]":hn===2?"in":hn===1?"out":hn===4?"[independent]":"";return yr&8?Oi+=" (unmeasurable)":yr&16&&(Oi+=" (unreliable)"),Oi}s.formatVariance=ya;class Gl{__debugToString(){var hn;switch(this.kind){case 3:return((hn=this.debugInfo)==null?void 0:hn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||At(this.sources,()=>"any"),(Oi,lo)=>`${Oi.__debugTypeToString()} -> ${typeof lo=="string"?lo:lo.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(Oi,lo)=>`${Oi.__debugTypeToString()} -> ${lo().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +Verbose Debug Information: `+(typeof Oi=="string"?Oi:Oi())),V(hn,lo||ee))}s.assert=ee;function re(yr,hn,Oi,lo,pa){if(yr!==hn){let Oa=Oi?lo?`${Oi} ${lo}`:Oi:"";V(`Expected ${yr} === ${hn}. ${Oa}`,pa||re)}}s.assertEqual=re;function ge(yr,hn,Oi,lo){yr>=hn&&V(`Expected ${yr} < ${hn}. ${Oi||""}`,lo||ge)}s.assertLessThan=ge;function Ie(yr,hn,Oi){yr>hn&&V(`Expected ${yr} <= ${hn}`,Oi||Ie)}s.assertLessThanOrEqual=Ie;function _e(yr,hn,Oi){yr= ${hn}`,Oi||_e)}s.assertGreaterThanOrEqual=_e;function Ee(yr,hn,Oi){yr==null&&V(hn,Oi||Ee)}s.assertIsDefined=Ee;function Ne(yr,hn,Oi){return Ee(yr,hn,Oi||Ne),yr}s.checkDefined=Ne;function Te(yr,hn,Oi){for(let lo of yr)Ee(lo,hn,Oi||Te)}s.assertEachIsDefined=Te;function Ze(yr,hn,Oi){return Te(yr,hn,Oi||Ze),yr}s.checkEachDefined=Ze;function We(yr,hn="Illegal value:",Oi){let lo=typeof yr=="object"&&Da(yr,"kind")&&Da(yr,"pos")?"SyntaxKind: "+Pt(yr.kind):JSON.stringify(yr);return V(`${hn} ${lo}`,Oi||We)}s.assertNever=We;function Ue(yr,hn,Oi,lo){W(1,"assertEachNode")&&ee(hn===void 0||ue(yr,hn),Oi||"Unexpected node.",()=>`Node array did not pass test '${ht(hn)}'.`,lo||Ue)}s.assertEachNode=Ue;function $e(yr,hn,Oi,lo){W(1,"assertNode")&&ee(yr!==void 0&&(hn===void 0||hn(yr)),Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} did not pass test '${ht(hn)}'.`,lo||$e)}s.assertNode=$e;function Ye(yr,hn,Oi,lo){W(1,"assertNotNode")&&ee(yr===void 0||hn===void 0||!hn(yr),Oi||"Unexpected node.",()=>`Node ${Pt(yr.kind)} should not have passed test '${ht(hn)}'.`,lo||Ye)}s.assertNotNode=Ye;function Tt(yr,hn,Oi,lo){W(1,"assertOptionalNode")&&ee(hn===void 0||yr===void 0||hn(yr),Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} did not pass test '${ht(hn)}'.`,lo||Tt)}s.assertOptionalNode=Tt;function ot(yr,hn,Oi,lo){W(1,"assertOptionalToken")&&ee(hn===void 0||yr===void 0||yr.kind===hn,Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} was not a '${Pt(hn)}' token.`,lo||ot)}s.assertOptionalToken=ot;function Qe(yr,hn,Oi){W(1,"assertMissingNode")&&ee(yr===void 0,hn||"Unexpected node.",()=>`Node ${Pt(yr.kind)} was unexpected'.`,Oi||Qe)}s.assertMissingNode=Qe;function mt(yr){}s.type=mt;function ht(yr){if(typeof yr!="function")return"";if(Da(yr,"name"))return yr.name;{let hn=Function.prototype.toString.call(yr),Oi=/^function\s+([\w$]+)\s*\(/.exec(hn);return Oi?Oi[1]:""}}s.getFunctionName=ht;function _t(yr){return`{ name: ${Bc(yr.escapedName)}; flags: ${dt(yr.flags)}; declarations: ${At(yr.declarations,hn=>Pt(hn.kind))} }`}s.formatSymbol=_t;function Rt(yr=0,hn,Oi){let lo=Ke(hn);if(yr===0)return lo.length>0&&lo[0][0]===0?lo[0][1]:"0";if(Oi){let pa=[],Oa=yr;for(let[tl,Qu]of lo){if(tl>yr)break;tl!==0&&tl&yr&&(pa.push(Qu),Oa&=~tl)}if(Oa===0)return pa.join("|")}else for(let[pa,Oa]of lo)if(pa===yr)return Oa;return yr.toString()}s.formatEnum=Rt;let Lt=new Map;function Ke(yr){let hn=Lt.get(yr);if(hn)return hn;let Oi=[];for(let pa in yr){let Oa=yr[pa];typeof Oa=="number"&&Oi.push([Oa,pa])}let lo=bo(Oi,(pa,Oa)=>Zt(pa[0],Oa[0]));return Lt.set(yr,lo),lo}function Pt(yr){return Rt(yr,Ld,!1)}s.formatSyntaxKind=Pt;function _r(yr){return Rt(yr,Iw,!1)}s.formatSnippetKind=_r;function Gt(yr){return Rt(yr,X2,!1)}s.formatScriptKind=Gt;function nt(yr){return Rt(yr,AC,!0)}s.formatNodeFlags=nt;function Dt(yr){return Rt(yr,wy,!0)}s.formatNodeCheckFlags=Dt;function tr(yr){return Rt(yr,JE,!0)}s.formatModifierFlags=tr;function ur(yr){return Rt(yr,up,!0)}s.formatTransformFlags=ur;function Gr(yr){return Rt(yr,cB,!0)}s.formatEmitFlags=Gr;function dt(yr){return Rt(yr,TT,!0)}s.formatSymbolFlags=dt;function pr(yr){return Rt(yr,jE,!0)}s.formatTypeFlags=pr;function st(yr){return Rt(yr,$A,!0)}s.formatSignatureFlags=st;function ir(yr){return Rt(yr,j_,!0)}s.formatObjectFlags=ir;function zt(yr){return Rt(yr,Yp,!0)}s.formatFlowFlags=zt;function Ht(yr){return Rt(yr,vy,!0)}s.formatRelationComparisonResult=Ht;function Br(yr){return Rt(yr,Bet,!0)}s.formatCheckMode=Br;function mn(yr){return Rt(yr,wet,!0)}s.formatSignatureCheckMode=mn;function jn(yr){return Rt(yr,vet,!0)}s.formatTypeFacts=jn;let Zi=!1,Ns;function An(yr){"__debugFlowFlags"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(){let hn=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Oi=this.flags&-2048;return`${hn}${Oi?` (${zt(Oi)})`:""}`}},__debugFlowFlags:{get(){return Rt(this.flags,Yp,!0)}},__debugToString:{value(){return hc(this)}}})}function si(yr){return Zi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),An(Ns)),Object.setPrototypeOf(yr,Ns)):An(yr)),yr}s.attachFlowNodeDebugInfo=si;let ks;function Ic(yr){"__tsDebuggerDisplay"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(hn){return hn=String(hn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${hn}`}}})}function su(yr){Zi&&(typeof Object.setPrototypeOf=="function"?(ks||(ks=Object.create(Array.prototype),Ic(ks)),Object.setPrototypeOf(yr,ks)):Ic(yr))}s.attachNodeArrayDebugInfo=su;function Zn(){if(Zi)return;let yr=new WeakMap,hn=new WeakMap;Object.defineProperties(ZC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let lo=this.flags&33554432?"TransientSymbol":"Symbol",pa=this.flags&-33554433;return`${lo} '${nf(this)}'${pa?` (${dt(pa)})`:""}`}},__debugFlags:{get(){return dt(this.flags)}}}),Object.defineProperties(ZC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let lo=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",pa=this.flags&524288?this.objectFlags&-1344:0;return`${lo}${this.symbol?` '${nf(this.symbol)}'`:""}${pa?` (${ir(pa)})`:""}`}},__debugFlags:{get(){return pr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?ir(this.objectFlags):""}},__debugTypeToString:{value(){let lo=yr.get(this);return lo===void 0&&(lo=this.checker.typeToString(this),yr.set(this,lo)),lo}}}),Object.defineProperties(ZC.getSignatureConstructor().prototype,{__debugFlags:{get(){return st(this.flags)}},__debugSignatureToString:{value(){var lo;return(lo=this.checker)==null?void 0:lo.signatureToString(this)}}});let Oi=[ZC.getNodeConstructor(),ZC.getIdentifierConstructor(),ZC.getTokenConstructor(),ZC.getSourceFileConstructor()];for(let lo of Oi)Da(lo.prototype,"__debugKind")||Object.defineProperties(lo.prototype,{__tsDebuggerDisplay:{value(){return`${kp(this)?"GeneratedIdentifier":Ir(this)?`Identifier '${Vo(this)}'`:p(this)?`PrivateIdentifier '${Vo(this)}'`:Zg(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:mC(this)?`NumericLiteral ${this.text}`:eQ(this)?`BigIntLiteral ${this.text}n`:Ds(this)?"TypeParameterDeclaration":Si(this)?"ParameterDeclaration":Tc(this)?"ConstructorDeclaration":Bg(this)?"GetAccessorDeclaration":Dg(this)?"SetAccessorDeclaration":wg(this)?"CallSignatureDeclaration":em(this)?"ConstructSignatureDeclaration":w0(this)?"IndexSignatureDeclaration":bE(this)?"TypePredicateNode":nh(this)?"TypeReferenceNode":x_(this)?"FunctionTypeNode":$D(this)?"ConstructorTypeNode":Fw(this)?"TypeQueryNode":mh(this)?"TypeLiteralNode":kF(this)?"ArrayTypeNode":Zw(this)?"TupleTypeNode":jL(this)?"OptionalTypeNode":zL(this)?"RestTypeNode":aS(this)?"UnionTypeNode":mf(this)?"IntersectionTypeNode":d2(this)?"ConditionalTypeNode":jT(this)?"InferTypeNode":fv(this)?"ParenthesizedTypeNode":Fx(this)?"ThisTypeNode":xB(this)?"TypeOperatorNode":Iv(this)?"IndexedAccessTypeNode":GB(this)?"MappedTypeNode":EE(this)?"LiteralTypeNode":KT(this)?"NamedTupleMember":Um(this)?"ImportTypeNode":Pt(this.kind)}${this.flags?` (${nt(this.flags)})`:""}`}},__debugKind:{get(){return Pt(this.kind)}},__debugNodeFlags:{get(){return nt(this.flags)}},__debugModifierFlags:{get(){return tr(qye(this))}},__debugTransformFlags:{get(){return ur(this.transformFlags)}},__debugIsParseTreeNode:{get(){return SL(this)}},__debugEmitFlags:{get(){return Gr(tA(this))}},__debugGetText:{value(pa){if(sp(this))return"";let Oa=hn.get(this);if(Oa===void 0){let tl=$l(this),Qu=tl&&ms(tl);Oa=Qu?mF(Qu,tl,pa):"",hn.set(this,Oa)}return Oa}}});Zi=!0}s.enableDebugInfo=Zn;function ya(yr){let hn=yr&7,Oi=hn===0?"in out":hn===3?"[bivariant]":hn===2?"in":hn===1?"out":hn===4?"[independent]":"";return yr&8?Oi+=" (unmeasurable)":yr&16&&(Oi+=" (unreliable)"),Oi}s.formatVariance=ya;class Gl{__debugToString(){var hn;switch(this.kind){case 3:return((hn=this.debugInfo)==null?void 0:hn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||At(this.sources,()=>"any"),(Oi,lo)=>`${Oi.__debugTypeToString()} -> ${typeof lo=="string"?lo:lo.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(Oi,lo)=>`${Oi.__debugTypeToString()} -> ${lo().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` `).join(` `)} m2: ${this.mapper2.__debugToString().split(` `).join(` - `)}`;default:return We(this)}}}s.DebugTypeMapper=Gl;function ba(yr){return s.isDebugging?Object.setPrototypeOf(yr,Gl.prototype):yr}s.attachDebugPrototypeIfDebug=ba;function Wo(yr){return console.log(hc(yr))}s.printControlFlowGraph=Wo;function hc(yr){let hn=-1;function Oi(Je){return Je.id||(Je.id=hn,hn--),Je.id}let lo;(Je=>{Je.lr="\u2500",Je.ud="\u2502",Je.dr="\u256D",Je.dl="\u256E",Je.ul="\u256F",Je.ur="\u2570",Je.udr="\u251C",Je.udl="\u2524",Je.dlr="\u252C",Je.ulr="\u2534",Je.udlr="\u256B"})(lo||(lo={}));let pa;(Je=>{Je[Je.None=0]="None",Je[Je.Up=1]="Up",Je[Je.Down=2]="Down",Je[Je.Left=4]="Left",Je[Je.Right=8]="Right",Je[Je.UpDown=3]="UpDown",Je[Je.LeftRight=12]="LeftRight",Je[Je.UpLeft=5]="UpLeft",Je[Je.UpRight=9]="UpRight",Je[Je.DownLeft=6]="DownLeft",Je[Je.DownRight=10]="DownRight",Je[Je.UpDownLeft=7]="UpDownLeft",Je[Je.UpDownRight=11]="UpDownRight",Je[Je.UpLeftRight=13]="UpLeftRight",Je[Je.DownLeftRight=14]="DownLeftRight",Je[Je.UpDownLeftRight=15]="UpDownLeftRight",Je[Je.NoChildren=16]="NoChildren"})(pa||(pa={}));let Oa=2032,tl=882,Qu=Object.create(null),Tg=[],Cs=[],Tu=Dn(yr,new Set);for(let Je of Tg)Je.text=Mt(Je.flowNode,Je.circular),En(Je);let Pr=Ni(Tu),Pn=Gi(Pr);return nn(Tu,0),cn();function pt(Je){return!!(Je.flags&128)}function on(Je){return!!(Je.flags&12)&&!!Je.antecedent}function it(Je){return!!(Je.flags&Oa)}function nr(Je){return!!(Je.flags&tl)}function Fr(Je){let In=[];for(let Hn of Je.edges)Hn.source===Je&&In.push(Hn.target);return In}function Kr(Je){let In=[];for(let Hn of Je.edges)Hn.target===Je&&In.push(Hn.source);return In}function Dn(Je,In){let Hn=Oi(Je),Ot=Qu[Hn];if(Ot&&In.has(Je))return Ot.circular=!0,Ot={id:-1,flowNode:Je,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Tg.push(Ot),Ot;if(In.add(Je),!Ot)if(Qu[Hn]=Ot={id:Hn,flowNode:Je,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Tg.push(Ot),on(Je))for(let $r of Je.antecedent)hr(Ot,$r,In);else it(Je)&&hr(Ot,Je.antecedent,In);return In.delete(Je),Ot}function hr(Je,In,Hn){let Ot=Dn(In,Hn),$r={source:Je,target:Ot};Cs.push($r),Je.edges.push($r),Ot.edges.push($r)}function En(Je){if(Je.level!==-1)return Je.level;let In=0;for(let Hn of Kr(Je))In=Math.max(In,En(Hn)+1);return Je.level=In}function Ni(Je){let In=0;for(let Hn of Fr(Je))In=Math.max(In,Ni(Hn));return In+1}function Gi(Je){let In=xe(Array(Je),0);for(let Hn of Tg)In[Hn.level]=Math.max(In[Hn.level],Hn.text.length);return In}function nn(Je,In){if(Je.lane===-1){Je.lane=In,Je.endLane=In;let Hn=Fr(Je);for(let Ot=0;Ot0&&In++;let $r=Hn[Ot];nn($r,In),$r.endLane>Je.endLane&&(In=$r.endLane)}Je.endLane=In}}function bn(Je){if(Je&2)return"Start";if(Je&4)return"Branch";if(Je&8)return"Loop";if(Je&16)return"Assignment";if(Je&32)return"True";if(Je&64)return"False";if(Je&128)return"SwitchClause";if(Je&256)return"ArrayMutation";if(Je&512)return"Call";if(Je&1024)return"ReduceLabel";if(Je&1)return"Unreachable";throw new Error}function ds(Je){let In=ms(Je);return mF(In,Je,!1)}function Mt(Je,In){let Hn=bn(Je.flags);if(In&&(Hn=`${Hn}#${Oi(Je)}`),pt(Je)){let Ot=[],{switchStatement:$r,clauseStart:ri,clauseEnd:ao}=Je.node;for(let Bs=ri;Bsao.lane)+1,Hn=xe(Array(In),""),Ot=Pn.map(()=>Array(In)),$r=Pn.map(()=>xe(Array(In),0));for(let ao of Tg){Ot[ao.level][ao.lane]=ao;let Bs=Fr(ao);for(let tn=0;tn0&&(Mn|=1),tn0&&(Mn|=1),tn0?$r[ao-1][Bs]:0,tn=Bs>0?$r[ao][Bs-1]:0,wn=$r[ao][Bs];wn||(Ys&8&&(wn|=12),tn&2&&(wn|=3),$r[ao][Bs]=wn)}for(let ao=0;ao{Je.lr="\u2500",Je.ud="\u2502",Je.dr="\u256D",Je.dl="\u256E",Je.ul="\u256F",Je.ur="\u2570",Je.udr="\u251C",Je.udl="\u2524",Je.dlr="\u252C",Je.ulr="\u2534",Je.udlr="\u256B"})(lo||(lo={}));let pa;(Je=>{Je[Je.None=0]="None",Je[Je.Up=1]="Up",Je[Je.Down=2]="Down",Je[Je.Left=4]="Left",Je[Je.Right=8]="Right",Je[Je.UpDown=3]="UpDown",Je[Je.LeftRight=12]="LeftRight",Je[Je.UpLeft=5]="UpLeft",Je[Je.UpRight=9]="UpRight",Je[Je.DownLeft=6]="DownLeft",Je[Je.DownRight=10]="DownRight",Je[Je.UpDownLeft=7]="UpDownLeft",Je[Je.UpDownRight=11]="UpDownRight",Je[Je.UpLeftRight=13]="UpLeftRight",Je[Je.DownLeftRight=14]="DownLeftRight",Je[Je.UpDownLeftRight=15]="UpDownLeftRight",Je[Je.NoChildren=16]="NoChildren"})(pa||(pa={}));let Oa=2032,tl=882,Qu=Object.create(null),Tg=[],Cs=[],Tu=Dn(yr,new Set);for(let Je of Tg)Je.text=Mt(Je.flowNode,Je.circular),Sn(Je);let Pr=Ni(Tu),Pn=Gi(Pr);return nn(Tu,0),cn();function pt(Je){return!!(Je.flags&128)}function on(Je){return!!(Je.flags&12)&&!!Je.antecedent}function it(Je){return!!(Je.flags&Oa)}function nr(Je){return!!(Je.flags&tl)}function Fr(Je){let In=[];for(let Hn of Je.edges)Hn.source===Je&&In.push(Hn.target);return In}function Kr(Je){let In=[];for(let Hn of Je.edges)Hn.target===Je&&In.push(Hn.source);return In}function Dn(Je,In){let Hn=Oi(Je),Ot=Qu[Hn];if(Ot&&In.has(Je))return Ot.circular=!0,Ot={id:-1,flowNode:Je,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Tg.push(Ot),Ot;if(In.add(Je),!Ot)if(Qu[Hn]=Ot={id:Hn,flowNode:Je,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Tg.push(Ot),on(Je))for(let $r of Je.antecedent)hr(Ot,$r,In);else it(Je)&&hr(Ot,Je.antecedent,In);return In.delete(Je),Ot}function hr(Je,In,Hn){let Ot=Dn(In,Hn),$r={source:Je,target:Ot};Cs.push($r),Je.edges.push($r),Ot.edges.push($r)}function Sn(Je){if(Je.level!==-1)return Je.level;let In=0;for(let Hn of Kr(Je))In=Math.max(In,Sn(Hn)+1);return Je.level=In}function Ni(Je){let In=0;for(let Hn of Fr(Je))In=Math.max(In,Ni(Hn));return In+1}function Gi(Je){let In=xe(Array(Je),0);for(let Hn of Tg)In[Hn.level]=Math.max(In[Hn.level],Hn.text.length);return In}function nn(Je,In){if(Je.lane===-1){Je.lane=In,Je.endLane=In;let Hn=Fr(Je);for(let Ot=0;Ot0&&In++;let $r=Hn[Ot];nn($r,In),$r.endLane>Je.endLane&&(In=$r.endLane)}Je.endLane=In}}function En(Je){if(Je&2)return"Start";if(Je&4)return"Branch";if(Je&8)return"Loop";if(Je&16)return"Assignment";if(Je&32)return"True";if(Je&64)return"False";if(Je&128)return"SwitchClause";if(Je&256)return"ArrayMutation";if(Je&512)return"Call";if(Je&1024)return"ReduceLabel";if(Je&1)return"Unreachable";throw new Error}function ds(Je){let In=ms(Je);return mF(In,Je,!1)}function Mt(Je,In){let Hn=En(Je.flags);if(In&&(Hn=`${Hn}#${Oi(Je)}`),pt(Je)){let Ot=[],{switchStatement:$r,clauseStart:ri,clauseEnd:ao}=Je.node;for(let Bs=ri;Bsao.lane)+1,Hn=xe(Array(In),""),Ot=Pn.map(()=>Array(In)),$r=Pn.map(()=>xe(Array(In),0));for(let ao of Tg){Ot[ao.level][ao.lane]=ao;let Bs=Fr(ao);for(let tn=0;tn0&&(Mn|=1),tn0&&(Mn|=1),tn0?$r[ao-1][Bs]:0,tn=Bs>0?$r[ao][Bs-1]:0,wn=$r[ao][Bs];wn||(Ys&8&&(wn|=12),tn&2&&(wn|=3),$r[ao][Bs]=wn)}for(let ao=0;ao0?Je.repeat(In):"";let Hn="";for(;Hn.length=0,"Invalid argument: major"),pe.assert(g>=0,"Invalid argument: minor"),pe.assert(d>=0,"Invalid argument: patch");let S=h?Ki(h)?h:h.split("."):E,R=_?Ki(_)?_:_.split("."):E;pe.assert(ue(S,T=>CI.test(T)),"Invalid argument: prerelease"),pe.assert(ue(R,T=>H2.test(T)),"Invalid argument: build"),this.major=c,this.minor=g,this.patch=d,this.prerelease=S,this.build=R}static tryParse(c){let g=K(c);if(!g)return;let{major:d,minor:h,patch:_,prerelease:S,build:R}=g;return new UNe(d,h,_,S,R)}compareTo(c){return this===c?0:c===void 0?1:Zt(this.major,c.major)||Zt(this.minor,c.minor)||Zt(this.patch,c.patch)||we(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new UNe(this.major+1,0,0);case"minor":return new UNe(this.major,this.minor+1,0);case"patch":return new UNe(this.major,this.minor,this.patch+1);default:return pe.assertNever(c)}}with(c){let{major:g=this.major,minor:d=this.minor,patch:h=this.patch,prerelease:_=this.prerelease,build:S=this.build}=c;return new UNe(g,d,h,_,S)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return jt(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),jt(this.build)&&(c+=`+${this.build.join(".")}`),c}};se.zero=new se(0,0,0,["0"]);var O=se;function K(s){let c=lm.exec(s);if(!c)return;let[,g,d="0",h="0",_="",S=""]=c;if(!(_&&!Kf.test(_))&&!(S&&!_I.test(S)))return{major:parseInt(g,10),minor:parseInt(d,10),patch:parseInt(h,10),prerelease:_,build:S}}function we(s,c){if(s===c)return 0;if(s.length===0)return c.length===0?0:1;if(c.length===0)return-1;let g=Math.min(s.length,c.length);for(let d=0;d=]|<=|>=)?\s*([a-z0-9-+.*]+)$/i;function ra(s){let c=[];for(let g of s.trim().split(sr)){if(!g)continue;let d=[];g=g.trim();let h=fi.exec(g);if(h){if(!Nl(h[1],h[2],d))return}else for(let _ of g.split(Yr)){let S=$n.exec(_.trim());if(!S||!ca(S[1],S[2],d))return}c.push(d)}return c}function kc(s){let c=Lr.exec(s);if(!c)return;let[,g,d="*",h="*",_,S]=c;return{version:new O(Bl(g)?0:parseInt(g,10),Bl(g)||Bl(d)?0:parseInt(d,10),Bl(g)||Bl(d)||Bl(h)?0:parseInt(h,10),_,S),major:g,minor:d,patch:h}}function Nl(s,c,g){let d=kc(s);if(!d)return!1;let h=kc(c);return h?(Bl(d.major)||g.push($g(">=",d.version)),Bl(h.major)||g.push(Bl(h.minor)?$g("<",h.version.increment("major")):Bl(h.patch)?$g("<",h.version.increment("minor")):$g("<=",h.version)),!0):!1}function ca(s,c,g){let d=kc(c);if(!d)return!1;let{version:h,major:_,minor:S,patch:R}=d;if(Bl(_))(s==="<"||s===">")&&g.push($g("<",O.zero));else switch(s){case"~":g.push($g(">=",h)),g.push($g("<",h.increment(Bl(S)?"major":"minor")));break;case"^":g.push($g(">=",h)),g.push($g("<",h.increment(h.major>0||Bl(S)?"major":h.minor>0||Bl(R)?"minor":"patch")));break;case"<":case">=":g.push(Bl(S)||Bl(R)?$g(s,h.with({prerelease:"0"})):$g(s,h));break;case"<=":case">":g.push(Bl(S)?$g(s==="<="?"<":">=",h.increment("major").with({prerelease:"0"})):Bl(R)?$g(s==="<="?"<":">=",h.increment("minor").with({prerelease:"0"})):$g(s,h));break;case"=":case void 0:Bl(S)||Bl(R)?(g.push($g(">=",h.with({prerelease:"0"}))),g.push($g("<",h.increment(Bl(S)?"major":"minor").with({prerelease:"0"})))):g.push($g("=",h));break;default:return!1}return!0}function Bl(s){return s==="*"||s==="x"||s==="X"}function $g(s,c){return{operator:s,operand:c}}function SA(s,c){if(c.length===0)return!0;for(let g of c)if(lI(s,g))return!0;return!1}function lI(s,c){for(let g of c)if(!lp(s,g.operator,g.operand))return!1;return!0}function lp(s,c,g){let d=s.compareTo(g);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return pe.assertNever(c)}}function Ib(s){return At(s,Na).join(" || ")||"*"}function Na(s){return At(s,wd).join(" ")}function wd(s){return`${s.operator}${s.operand}`}function z1(){if(Mm())try{let{performance:s}=wt("perf_hooks");if(s)return{shouldWriteNativeEvents:!1,performance:s}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function T_(){let s=z1();if(!s)return;let{shouldWriteNativeEvents:c,performance:g}=s,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof g.timeOrigin=="number"&&typeof g.now=="function"&&(d.performanceTime=g),d.performanceTime&&typeof g.mark=="function"&&typeof g.measure=="function"&&typeof g.clearMarks=="function"&&typeof g.clearMeasures=="function"&&(d.performance=g),d}var RC=T_(),Hm=RC?.performanceTime;function YS(){return RC}var Fg=Hm?()=>Hm.now():Date.now,hb={};o(hb,{clearMarks:()=>gm,clearMeasures:()=>um,createTimer:()=>U_,createTimerIf:()=>Y2,disable:()=>ko,enable:()=>na,forEachMark:()=>XS,forEachMeasure:()=>QS,getCount:()=>sE,getDuration:()=>eA,isEnabled:()=>cs,mark:()=>Mc,measure:()=>Pf,nullTimer:()=>DC});var gC,NC;function Y2(s,c,g,d){return s?U_(c,g,d):DC}function U_(s,c,g){let d=0;return{enter:h,exit:_};function h(){++d===1&&Mc(c)}function _(){--d===0?(Mc(g),Pf(s,c,g)):d<0&&pe.fail("enter/exit count does not match.")}}var DC={enter:Dc,exit:Dc},kC=!1,qI=Fg(),ph=new Map,vA=new Map,Td=new Map;function Mc(s){if(kC){let c=vA.get(s)??0;vA.set(s,c+1),ph.set(s,Fg()),NC?.mark(s),typeof onProfilerEvent=="function"&&onProfilerEvent(s)}}function Pf(s,c,g){if(kC){let d=(g!==void 0?ph.get(g):void 0)??Fg(),h=(c!==void 0?ph.get(c):void 0)??qI,_=Td.get(s)||0;Td.set(s,_+(d-h)),NC?.measure(s,c,g)}}function sE(s){return vA.get(s)||0}function eA(s){return Td.get(s)||0}function QS(s){Td.forEach((c,g)=>s(g,c))}function XS(s){ph.forEach((c,g)=>s(g))}function um(s){s!==void 0?Td.delete(s):Td.clear(),NC?.clearMeasures(s)}function gm(s){s!==void 0?(vA.delete(s),ph.delete(s)):(vA.clear(),ph.clear()),NC?.clearMarks(s)}function cs(){return kC}function na(s=yd){var c;return kC||(kC=!0,gC||(gC=YS()),gC?.performance&&(qI=gC.performance.timeOrigin,(gC.shouldWriteNativeEvents||(c=s?.cpuProfilingEnabled)!=null&&c.call(s)||s?.debugMode)&&(NC=gC.performance))),!0}function ko(){kC&&(ph.clear(),vA.clear(),Td.clear(),NC=void 0,kC=!1)}var ki,Kl;(s=>{let c,g=0,d=0,h,_=[],S,R=[];function T($e,Ye,Tt){if(pe.assert(!ki,"Tracing already started"),c===void 0)try{c=wt("fs")}catch(_t){throw new Error(`tracing requires having fs +`;function ri(ao,Bs){Hn[ao]+=Bs}}function Bt(Je){switch(Je){case 3:return"\u2502";case 12:return"\u2500";case 5:return"\u256F";case 9:return"\u2570";case 6:return"\u256E";case 10:return"\u256D";case 7:return"\u2524";case 11:return"\u251C";case 13:return"\u2534";case 14:return"\u252C";case 15:return"\u256B"}return" "}function xe(Je,In){if(Je.fill)Je.fill(In);else for(let Hn=0;Hn0?Je.repeat(In):"";let Hn="";for(;Hn.length=0,"Invalid argument: major"),pe.assert(g>=0,"Invalid argument: minor"),pe.assert(d>=0,"Invalid argument: patch");let S=h?Ki(h)?h:h.split("."):E,R=_?Ki(_)?_:_.split("."):E;pe.assert(ue(S,T=>CI.test(T)),"Invalid argument: prerelease"),pe.assert(ue(R,T=>H2.test(T)),"Invalid argument: build"),this.major=c,this.minor=g,this.patch=d,this.prerelease=S,this.build=R}static tryParse(c){let g=K(c);if(!g)return;let{major:d,minor:h,patch:_,prerelease:S,build:R}=g;return new jNe(d,h,_,S,R)}compareTo(c){return this===c?0:c===void 0?1:Zt(this.major,c.major)||Zt(this.minor,c.minor)||Zt(this.patch,c.patch)||we(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new jNe(this.major+1,0,0);case"minor":return new jNe(this.major,this.minor+1,0);case"patch":return new jNe(this.major,this.minor,this.patch+1);default:return pe.assertNever(c)}}with(c){let{major:g=this.major,minor:d=this.minor,patch:h=this.patch,prerelease:_=this.prerelease,build:S=this.build}=c;return new jNe(g,d,h,_,S)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return jt(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),jt(this.build)&&(c+=`+${this.build.join(".")}`),c}};se.zero=new se(0,0,0,["0"]);var O=se;function K(s){let c=lm.exec(s);if(!c)return;let[,g,d="0",h="0",_="",S=""]=c;if(!(_&&!Kf.test(_))&&!(S&&!_I.test(S)))return{major:parseInt(g,10),minor:parseInt(d,10),patch:parseInt(h,10),prerelease:_,build:S}}function we(s,c){if(s===c)return 0;if(s.length===0)return c.length===0?0:1;if(c.length===0)return-1;let g=Math.min(s.length,c.length);for(let d=0;d=]|<=|>=)?\s*([a-z0-9-+.*]+)$/i;function ra(s){let c=[];for(let g of s.trim().split(sr)){if(!g)continue;let d=[];g=g.trim();let h=fi.exec(g);if(h){if(!Nl(h[1],h[2],d))return}else for(let _ of g.split(Yr)){let S=$n.exec(_.trim());if(!S||!ca(S[1],S[2],d))return}c.push(d)}return c}function kc(s){let c=Lr.exec(s);if(!c)return;let[,g,d="*",h="*",_,S]=c;return{version:new O(Bl(g)?0:parseInt(g,10),Bl(g)||Bl(d)?0:parseInt(d,10),Bl(g)||Bl(d)||Bl(h)?0:parseInt(h,10),_,S),major:g,minor:d,patch:h}}function Nl(s,c,g){let d=kc(s);if(!d)return!1;let h=kc(c);return h?(Bl(d.major)||g.push($g(">=",d.version)),Bl(h.major)||g.push(Bl(h.minor)?$g("<",h.version.increment("major")):Bl(h.patch)?$g("<",h.version.increment("minor")):$g("<=",h.version)),!0):!1}function ca(s,c,g){let d=kc(c);if(!d)return!1;let{version:h,major:_,minor:S,patch:R}=d;if(Bl(_))(s==="<"||s===">")&&g.push($g("<",O.zero));else switch(s){case"~":g.push($g(">=",h)),g.push($g("<",h.increment(Bl(S)?"major":"minor")));break;case"^":g.push($g(">=",h)),g.push($g("<",h.increment(h.major>0||Bl(S)?"major":h.minor>0||Bl(R)?"minor":"patch")));break;case"<":case">=":g.push(Bl(S)||Bl(R)?$g(s,h.with({prerelease:"0"})):$g(s,h));break;case"<=":case">":g.push(Bl(S)?$g(s==="<="?"<":">=",h.increment("major").with({prerelease:"0"})):Bl(R)?$g(s==="<="?"<":">=",h.increment("minor").with({prerelease:"0"})):$g(s,h));break;case"=":case void 0:Bl(S)||Bl(R)?(g.push($g(">=",h.with({prerelease:"0"}))),g.push($g("<",h.increment(Bl(S)?"major":"minor").with({prerelease:"0"})))):g.push($g("=",h));break;default:return!1}return!0}function Bl(s){return s==="*"||s==="x"||s==="X"}function $g(s,c){return{operator:s,operand:c}}function SA(s,c){if(c.length===0)return!0;for(let g of c)if(lI(s,g))return!0;return!1}function lI(s,c){for(let g of c)if(!lp(s,g.operator,g.operand))return!1;return!0}function lp(s,c,g){let d=s.compareTo(g);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return pe.assertNever(c)}}function Ib(s){return At(s,Na).join(" || ")||"*"}function Na(s){return At(s,wd).join(" ")}function wd(s){return`${s.operator}${s.operand}`}function z1(){if(Mm())try{let{performance:s}=wt("perf_hooks");if(s)return{shouldWriteNativeEvents:!1,performance:s}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function T_(){let s=z1();if(!s)return;let{shouldWriteNativeEvents:c,performance:g}=s,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof g.timeOrigin=="number"&&typeof g.now=="function"&&(d.performanceTime=g),d.performanceTime&&typeof g.mark=="function"&&typeof g.measure=="function"&&typeof g.clearMarks=="function"&&typeof g.clearMeasures=="function"&&(d.performance=g),d}var RC=T_(),Hm=RC?.performanceTime;function YS(){return RC}var Fg=Hm?()=>Hm.now():Date.now,hb={};o(hb,{clearMarks:()=>gm,clearMeasures:()=>um,createTimer:()=>U_,createTimerIf:()=>Y2,disable:()=>ko,enable:()=>na,forEachMark:()=>XS,forEachMeasure:()=>QS,getCount:()=>sE,getDuration:()=>eA,isEnabled:()=>cs,mark:()=>Mc,measure:()=>Pf,nullTimer:()=>DC});var gC,NC;function Y2(s,c,g,d){return s?U_(c,g,d):DC}function U_(s,c,g){let d=0;return{enter:h,exit:_};function h(){++d===1&&Mc(c)}function _(){--d===0?(Mc(g),Pf(s,c,g)):d<0&&pe.fail("enter/exit count does not match.")}}var DC={enter:Dc,exit:Dc},kC=!1,qI=Fg(),ph=new Map,vA=new Map,Td=new Map;function Mc(s){if(kC){let c=vA.get(s)??0;vA.set(s,c+1),ph.set(s,Fg()),NC?.mark(s),typeof onProfilerEvent=="function"&&onProfilerEvent(s)}}function Pf(s,c,g){if(kC){let d=(g!==void 0?ph.get(g):void 0)??Fg(),h=(c!==void 0?ph.get(c):void 0)??qI,_=Td.get(s)||0;Td.set(s,_+(d-h)),NC?.measure(s,c,g)}}function sE(s){return vA.get(s)||0}function eA(s){return Td.get(s)||0}function QS(s){Td.forEach((c,g)=>s(g,c))}function XS(s){ph.forEach((c,g)=>s(g))}function um(s){s!==void 0?Td.delete(s):Td.clear(),NC?.clearMeasures(s)}function gm(s){s!==void 0?(vA.delete(s),ph.delete(s)):(vA.clear(),ph.clear()),NC?.clearMarks(s)}function cs(){return kC}function na(s=yd){var c;return kC||(kC=!0,gC||(gC=YS()),gC?.performance&&(qI=gC.performance.timeOrigin,(gC.shouldWriteNativeEvents||(c=s?.cpuProfilingEnabled)!=null&&c.call(s)||s?.debugMode)&&(NC=gC.performance))),!0}function ko(){kC&&(ph.clear(),vA.clear(),Td.clear(),NC=void 0,kC=!1)}var ki,Kl;(s=>{let c,g=0,d=0,h,_=[],S,R=[];function T($e,Ye,Tt){if(pe.assert(!ki,"Tracing already started"),c===void 0)try{c=wt("fs")}catch(_t){throw new Error(`tracing requires having fs (original error: ${_t.message||_t})`)}h=$e,_.length=0,S===void 0&&(S=Ro(Ye,"legend.json")),c.existsSync(Ye)||c.mkdirSync(Ye,{recursive:!0});let ot=h==="build"?`.${process.pid}-${++g}`:h==="server"?`.${process.pid}`:"",Qe=Ro(Ye,`trace${ot}.json`),mt=Ro(Ye,`types${ot}.json`);R.push({configFilePath:Tt,tracePath:Qe,typesPath:mt}),d=c.openSync(Qe,"w"),ki=s;let ht={cat:"__metadata",ph:"M",ts:1e3*Fg(),pid:1,tid:1};c.writeSync(d,`[ `+[{name:"process_name",args:{name:"tsc"},...ht},{name:"thread_name",args:{name:"Main"},...ht},{name:"TracingStartedInBrowser",...ht,cat:"disabled-by-default-devtools.timeline"}].map(_t=>JSON.stringify(_t)).join(`, `))}s.startTracing=T;function W(){pe.assert(ki,"Tracing is not in progress"),pe.assert(!!_.length==(h!=="server")),c.writeSync(d,` @@ -656,24 +656,24 @@ ${Hn.join(` `),c.closeSync(d),ki=void 0,_.length?We(_):R[R.length-1].typesPath=void 0}s.stopTracing=W;function V($e){h!=="server"&&_.push($e)}s.recordType=V;let M;($e=>{$e.Parse="parse",$e.Program="program",$e.Bind="bind",$e.Check="check",$e.CheckTypes="checkTypes",$e.Emit="emit",$e.Session="session"})(M=s.Phase||(s.Phase={}));function ee($e,Ye,Tt){Te("I",$e,Ye,Tt,'"s":"g"')}s.instant=ee;let re=[];function ge($e,Ye,Tt,ot=!1){ot&&Te("B",$e,Ye,Tt),re.push({phase:$e,name:Ye,args:Tt,time:1e3*Fg(),separateBeginAndEnd:ot})}s.push=ge;function Ie($e){pe.assert(re.length>0),Ne(re.length-1,1e3*Fg(),$e),re.length--}s.pop=Ie;function _e(){let $e=1e3*Fg();for(let Ye=re.length-1;Ye>=0;Ye--)Ne(Ye,$e);re.length=0}s.popAll=_e;let Ee=1e3*10;function Ne($e,Ye,Tt){let{phase:ot,name:Qe,args:mt,time:ht,separateBeginAndEnd:_t}=re[$e];_t?(pe.assert(!Tt,"`results` are not supported for events with `separateBeginAndEnd`"),Te("E",ot,Qe,mt,void 0,Ye)):Ee-ht%Ee<=Ye-ht&&Te("X",ot,Qe,{...mt,results:Tt},`"dur":${Ye-ht}`,ht)}function Te($e,Ye,Tt,ot,Qe,mt=1e3*Fg()){h==="server"&&Ye==="checkTypes"||(Mc("beginTracing"),c.writeSync(d,`, {"pid":1,"tid":1,"ph":"${$e}","cat":"${Ye}","ts":${mt},"name":"${Tt}"`),Qe&&c.writeSync(d,`,${Qe}`),ot&&c.writeSync(d,`,"args":${JSON.stringify(ot)}`),c.writeSync(d,"}"),Mc("endTracing"),Pf("Tracing","beginTracing","endTracing"))}function Ze($e){let Ye=ms($e);return Ye?{path:Ye.path,start:Tt(Ra(Ye,$e.pos)),end:Tt(Ra(Ye,$e.end))}:void 0;function Tt(ot){return{line:ot.line+1,character:ot.character+1}}}function We($e){var Ye,Tt,ot,Qe,mt,ht,_t,Rt,Lt,Ke,Pt,_r,Gt,nt,Dt,tr,ur,Gr,dt;Mc("beginDumpTypes");let pr=R[R.length-1].typesPath,st=c.openSync(pr,"w"),ir=new Map;c.writeSync(st,"[");let zt=$e.length;for(let Ht=0;HtWo.id),referenceLocation:Ze(ba.node)}}let si={};if(Br.flags&16777216){let ba=Br;si={conditionalCheckType:(ht=ba.checkType)==null?void 0:ht.id,conditionalExtendsType:(_t=ba.extendsType)==null?void 0:_t.id,conditionalTrueType:((Rt=ba.resolvedTrueType)==null?void 0:Rt.id)??-1,conditionalFalseType:((Lt=ba.resolvedFalseType)==null?void 0:Lt.id)??-1}}let ks={};if(Br.flags&33554432){let ba=Br;ks={substitutionBaseType:(Ke=ba.baseType)==null?void 0:Ke.id,constraintType:(Pt=ba.constraint)==null?void 0:Pt.id}}let Ic={};if(mn&1024){let ba=Br;Ic={reverseMappedSourceType:(_r=ba.source)==null?void 0:_r.id,reverseMappedMappedType:(Gt=ba.mappedType)==null?void 0:Gt.id,reverseMappedConstraintType:(nt=ba.constraintType)==null?void 0:nt.id}}let su={};if(mn&256){let ba=Br;su={evolvingArrayElementType:ba.elementType.id,evolvingArrayFinalType:(Dt=ba.finalArrayType)==null?void 0:Dt.id}}let Zn,ya=Br.checker.getRecursionIdentity(Br);ya&&(Zn=ir.get(ya),Zn||(Zn=ir.size,ir.set(ya,Zn)));let Gl={id:Br.id,intrinsicName:Br.intrinsicName,symbolName:jn?.escapedName&&Bc(jn.escapedName),recursionId:Zn,isTuple:mn&8?!0:void 0,unionTypes:Br.flags&1048576?(tr=Br.types)==null?void 0:tr.map(ba=>ba.id):void 0,intersectionTypes:Br.flags&2097152?Br.types.map(ba=>ba.id):void 0,aliasTypeArguments:(ur=Br.aliasTypeArguments)==null?void 0:ur.map(ba=>ba.id),keyofType:Br.flags&4194304?(Gr=Br.type)==null?void 0:Gr.id:void 0,...Ns,...An,...si,...ks,...Ic,...su,destructuringPattern:Ze(Br.pattern),firstDeclaration:Ze((dt=jn?.declarations)==null?void 0:dt[0]),flags:pe.formatTypeFlags(Br.flags).split("|"),display:Zi};c.writeSync(st,JSON.stringify(Gl)),Ht(s[s.Unknown=0]="Unknown",s[s.EndOfFileToken=1]="EndOfFileToken",s[s.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",s[s.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",s[s.NewLineTrivia=4]="NewLineTrivia",s[s.WhitespaceTrivia=5]="WhitespaceTrivia",s[s.ShebangTrivia=6]="ShebangTrivia",s[s.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",s[s.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",s[s.NumericLiteral=9]="NumericLiteral",s[s.BigIntLiteral=10]="BigIntLiteral",s[s.StringLiteral=11]="StringLiteral",s[s.JsxText=12]="JsxText",s[s.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",s[s.RegularExpressionLiteral=14]="RegularExpressionLiteral",s[s.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",s[s.TemplateHead=16]="TemplateHead",s[s.TemplateMiddle=17]="TemplateMiddle",s[s.TemplateTail=18]="TemplateTail",s[s.OpenBraceToken=19]="OpenBraceToken",s[s.CloseBraceToken=20]="CloseBraceToken",s[s.OpenParenToken=21]="OpenParenToken",s[s.CloseParenToken=22]="CloseParenToken",s[s.OpenBracketToken=23]="OpenBracketToken",s[s.CloseBracketToken=24]="CloseBracketToken",s[s.DotToken=25]="DotToken",s[s.DotDotDotToken=26]="DotDotDotToken",s[s.SemicolonToken=27]="SemicolonToken",s[s.CommaToken=28]="CommaToken",s[s.QuestionDotToken=29]="QuestionDotToken",s[s.LessThanToken=30]="LessThanToken",s[s.LessThanSlashToken=31]="LessThanSlashToken",s[s.GreaterThanToken=32]="GreaterThanToken",s[s.LessThanEqualsToken=33]="LessThanEqualsToken",s[s.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",s[s.EqualsEqualsToken=35]="EqualsEqualsToken",s[s.ExclamationEqualsToken=36]="ExclamationEqualsToken",s[s.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",s[s.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",s[s.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",s[s.PlusToken=40]="PlusToken",s[s.MinusToken=41]="MinusToken",s[s.AsteriskToken=42]="AsteriskToken",s[s.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",s[s.SlashToken=44]="SlashToken",s[s.PercentToken=45]="PercentToken",s[s.PlusPlusToken=46]="PlusPlusToken",s[s.MinusMinusToken=47]="MinusMinusToken",s[s.LessThanLessThanToken=48]="LessThanLessThanToken",s[s.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",s[s.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",s[s.AmpersandToken=51]="AmpersandToken",s[s.BarToken=52]="BarToken",s[s.CaretToken=53]="CaretToken",s[s.ExclamationToken=54]="ExclamationToken",s[s.TildeToken=55]="TildeToken",s[s.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",s[s.BarBarToken=57]="BarBarToken",s[s.QuestionToken=58]="QuestionToken",s[s.ColonToken=59]="ColonToken",s[s.AtToken=60]="AtToken",s[s.QuestionQuestionToken=61]="QuestionQuestionToken",s[s.BacktickToken=62]="BacktickToken",s[s.HashToken=63]="HashToken",s[s.EqualsToken=64]="EqualsToken",s[s.PlusEqualsToken=65]="PlusEqualsToken",s[s.MinusEqualsToken=66]="MinusEqualsToken",s[s.AsteriskEqualsToken=67]="AsteriskEqualsToken",s[s.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",s[s.SlashEqualsToken=69]="SlashEqualsToken",s[s.PercentEqualsToken=70]="PercentEqualsToken",s[s.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",s[s.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",s[s.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",s[s.AmpersandEqualsToken=74]="AmpersandEqualsToken",s[s.BarEqualsToken=75]="BarEqualsToken",s[s.BarBarEqualsToken=76]="BarBarEqualsToken",s[s.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",s[s.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",s[s.CaretEqualsToken=79]="CaretEqualsToken",s[s.Identifier=80]="Identifier",s[s.PrivateIdentifier=81]="PrivateIdentifier",s[s.JSDocCommentTextToken=82]="JSDocCommentTextToken",s[s.BreakKeyword=83]="BreakKeyword",s[s.CaseKeyword=84]="CaseKeyword",s[s.CatchKeyword=85]="CatchKeyword",s[s.ClassKeyword=86]="ClassKeyword",s[s.ConstKeyword=87]="ConstKeyword",s[s.ContinueKeyword=88]="ContinueKeyword",s[s.DebuggerKeyword=89]="DebuggerKeyword",s[s.DefaultKeyword=90]="DefaultKeyword",s[s.DeleteKeyword=91]="DeleteKeyword",s[s.DoKeyword=92]="DoKeyword",s[s.ElseKeyword=93]="ElseKeyword",s[s.EnumKeyword=94]="EnumKeyword",s[s.ExportKeyword=95]="ExportKeyword",s[s.ExtendsKeyword=96]="ExtendsKeyword",s[s.FalseKeyword=97]="FalseKeyword",s[s.FinallyKeyword=98]="FinallyKeyword",s[s.ForKeyword=99]="ForKeyword",s[s.FunctionKeyword=100]="FunctionKeyword",s[s.IfKeyword=101]="IfKeyword",s[s.ImportKeyword=102]="ImportKeyword",s[s.InKeyword=103]="InKeyword",s[s.InstanceOfKeyword=104]="InstanceOfKeyword",s[s.NewKeyword=105]="NewKeyword",s[s.NullKeyword=106]="NullKeyword",s[s.ReturnKeyword=107]="ReturnKeyword",s[s.SuperKeyword=108]="SuperKeyword",s[s.SwitchKeyword=109]="SwitchKeyword",s[s.ThisKeyword=110]="ThisKeyword",s[s.ThrowKeyword=111]="ThrowKeyword",s[s.TrueKeyword=112]="TrueKeyword",s[s.TryKeyword=113]="TryKeyword",s[s.TypeOfKeyword=114]="TypeOfKeyword",s[s.VarKeyword=115]="VarKeyword",s[s.VoidKeyword=116]="VoidKeyword",s[s.WhileKeyword=117]="WhileKeyword",s[s.WithKeyword=118]="WithKeyword",s[s.ImplementsKeyword=119]="ImplementsKeyword",s[s.InterfaceKeyword=120]="InterfaceKeyword",s[s.LetKeyword=121]="LetKeyword",s[s.PackageKeyword=122]="PackageKeyword",s[s.PrivateKeyword=123]="PrivateKeyword",s[s.ProtectedKeyword=124]="ProtectedKeyword",s[s.PublicKeyword=125]="PublicKeyword",s[s.StaticKeyword=126]="StaticKeyword",s[s.YieldKeyword=127]="YieldKeyword",s[s.AbstractKeyword=128]="AbstractKeyword",s[s.AccessorKeyword=129]="AccessorKeyword",s[s.AsKeyword=130]="AsKeyword",s[s.AssertsKeyword=131]="AssertsKeyword",s[s.AssertKeyword=132]="AssertKeyword",s[s.AnyKeyword=133]="AnyKeyword",s[s.AsyncKeyword=134]="AsyncKeyword",s[s.AwaitKeyword=135]="AwaitKeyword",s[s.BooleanKeyword=136]="BooleanKeyword",s[s.ConstructorKeyword=137]="ConstructorKeyword",s[s.DeclareKeyword=138]="DeclareKeyword",s[s.GetKeyword=139]="GetKeyword",s[s.InferKeyword=140]="InferKeyword",s[s.IntrinsicKeyword=141]="IntrinsicKeyword",s[s.IsKeyword=142]="IsKeyword",s[s.KeyOfKeyword=143]="KeyOfKeyword",s[s.ModuleKeyword=144]="ModuleKeyword",s[s.NamespaceKeyword=145]="NamespaceKeyword",s[s.NeverKeyword=146]="NeverKeyword",s[s.OutKeyword=147]="OutKeyword",s[s.ReadonlyKeyword=148]="ReadonlyKeyword",s[s.RequireKeyword=149]="RequireKeyword",s[s.NumberKeyword=150]="NumberKeyword",s[s.ObjectKeyword=151]="ObjectKeyword",s[s.SatisfiesKeyword=152]="SatisfiesKeyword",s[s.SetKeyword=153]="SetKeyword",s[s.StringKeyword=154]="StringKeyword",s[s.SymbolKeyword=155]="SymbolKeyword",s[s.TypeKeyword=156]="TypeKeyword",s[s.UndefinedKeyword=157]="UndefinedKeyword",s[s.UniqueKeyword=158]="UniqueKeyword",s[s.UnknownKeyword=159]="UnknownKeyword",s[s.UsingKeyword=160]="UsingKeyword",s[s.FromKeyword=161]="FromKeyword",s[s.GlobalKeyword=162]="GlobalKeyword",s[s.BigIntKeyword=163]="BigIntKeyword",s[s.OverrideKeyword=164]="OverrideKeyword",s[s.OfKeyword=165]="OfKeyword",s[s.DeferKeyword=166]="DeferKeyword",s[s.QualifiedName=167]="QualifiedName",s[s.ComputedPropertyName=168]="ComputedPropertyName",s[s.TypeParameter=169]="TypeParameter",s[s.Parameter=170]="Parameter",s[s.Decorator=171]="Decorator",s[s.PropertySignature=172]="PropertySignature",s[s.PropertyDeclaration=173]="PropertyDeclaration",s[s.MethodSignature=174]="MethodSignature",s[s.MethodDeclaration=175]="MethodDeclaration",s[s.ClassStaticBlockDeclaration=176]="ClassStaticBlockDeclaration",s[s.Constructor=177]="Constructor",s[s.GetAccessor=178]="GetAccessor",s[s.SetAccessor=179]="SetAccessor",s[s.CallSignature=180]="CallSignature",s[s.ConstructSignature=181]="ConstructSignature",s[s.IndexSignature=182]="IndexSignature",s[s.TypePredicate=183]="TypePredicate",s[s.TypeReference=184]="TypeReference",s[s.FunctionType=185]="FunctionType",s[s.ConstructorType=186]="ConstructorType",s[s.TypeQuery=187]="TypeQuery",s[s.TypeLiteral=188]="TypeLiteral",s[s.ArrayType=189]="ArrayType",s[s.TupleType=190]="TupleType",s[s.OptionalType=191]="OptionalType",s[s.RestType=192]="RestType",s[s.UnionType=193]="UnionType",s[s.IntersectionType=194]="IntersectionType",s[s.ConditionalType=195]="ConditionalType",s[s.InferType=196]="InferType",s[s.ParenthesizedType=197]="ParenthesizedType",s[s.ThisType=198]="ThisType",s[s.TypeOperator=199]="TypeOperator",s[s.IndexedAccessType=200]="IndexedAccessType",s[s.MappedType=201]="MappedType",s[s.LiteralType=202]="LiteralType",s[s.NamedTupleMember=203]="NamedTupleMember",s[s.TemplateLiteralType=204]="TemplateLiteralType",s[s.TemplateLiteralTypeSpan=205]="TemplateLiteralTypeSpan",s[s.ImportType=206]="ImportType",s[s.ObjectBindingPattern=207]="ObjectBindingPattern",s[s.ArrayBindingPattern=208]="ArrayBindingPattern",s[s.BindingElement=209]="BindingElement",s[s.ArrayLiteralExpression=210]="ArrayLiteralExpression",s[s.ObjectLiteralExpression=211]="ObjectLiteralExpression",s[s.PropertyAccessExpression=212]="PropertyAccessExpression",s[s.ElementAccessExpression=213]="ElementAccessExpression",s[s.CallExpression=214]="CallExpression",s[s.NewExpression=215]="NewExpression",s[s.TaggedTemplateExpression=216]="TaggedTemplateExpression",s[s.TypeAssertionExpression=217]="TypeAssertionExpression",s[s.ParenthesizedExpression=218]="ParenthesizedExpression",s[s.FunctionExpression=219]="FunctionExpression",s[s.ArrowFunction=220]="ArrowFunction",s[s.DeleteExpression=221]="DeleteExpression",s[s.TypeOfExpression=222]="TypeOfExpression",s[s.VoidExpression=223]="VoidExpression",s[s.AwaitExpression=224]="AwaitExpression",s[s.PrefixUnaryExpression=225]="PrefixUnaryExpression",s[s.PostfixUnaryExpression=226]="PostfixUnaryExpression",s[s.BinaryExpression=227]="BinaryExpression",s[s.ConditionalExpression=228]="ConditionalExpression",s[s.TemplateExpression=229]="TemplateExpression",s[s.YieldExpression=230]="YieldExpression",s[s.SpreadElement=231]="SpreadElement",s[s.ClassExpression=232]="ClassExpression",s[s.OmittedExpression=233]="OmittedExpression",s[s.ExpressionWithTypeArguments=234]="ExpressionWithTypeArguments",s[s.AsExpression=235]="AsExpression",s[s.NonNullExpression=236]="NonNullExpression",s[s.MetaProperty=237]="MetaProperty",s[s.SyntheticExpression=238]="SyntheticExpression",s[s.SatisfiesExpression=239]="SatisfiesExpression",s[s.TemplateSpan=240]="TemplateSpan",s[s.SemicolonClassElement=241]="SemicolonClassElement",s[s.Block=242]="Block",s[s.EmptyStatement=243]="EmptyStatement",s[s.VariableStatement=244]="VariableStatement",s[s.ExpressionStatement=245]="ExpressionStatement",s[s.IfStatement=246]="IfStatement",s[s.DoStatement=247]="DoStatement",s[s.WhileStatement=248]="WhileStatement",s[s.ForStatement=249]="ForStatement",s[s.ForInStatement=250]="ForInStatement",s[s.ForOfStatement=251]="ForOfStatement",s[s.ContinueStatement=252]="ContinueStatement",s[s.BreakStatement=253]="BreakStatement",s[s.ReturnStatement=254]="ReturnStatement",s[s.WithStatement=255]="WithStatement",s[s.SwitchStatement=256]="SwitchStatement",s[s.LabeledStatement=257]="LabeledStatement",s[s.ThrowStatement=258]="ThrowStatement",s[s.TryStatement=259]="TryStatement",s[s.DebuggerStatement=260]="DebuggerStatement",s[s.VariableDeclaration=261]="VariableDeclaration",s[s.VariableDeclarationList=262]="VariableDeclarationList",s[s.FunctionDeclaration=263]="FunctionDeclaration",s[s.ClassDeclaration=264]="ClassDeclaration",s[s.InterfaceDeclaration=265]="InterfaceDeclaration",s[s.TypeAliasDeclaration=266]="TypeAliasDeclaration",s[s.EnumDeclaration=267]="EnumDeclaration",s[s.ModuleDeclaration=268]="ModuleDeclaration",s[s.ModuleBlock=269]="ModuleBlock",s[s.CaseBlock=270]="CaseBlock",s[s.NamespaceExportDeclaration=271]="NamespaceExportDeclaration",s[s.ImportEqualsDeclaration=272]="ImportEqualsDeclaration",s[s.ImportDeclaration=273]="ImportDeclaration",s[s.ImportClause=274]="ImportClause",s[s.NamespaceImport=275]="NamespaceImport",s[s.NamedImports=276]="NamedImports",s[s.ImportSpecifier=277]="ImportSpecifier",s[s.ExportAssignment=278]="ExportAssignment",s[s.ExportDeclaration=279]="ExportDeclaration",s[s.NamedExports=280]="NamedExports",s[s.NamespaceExport=281]="NamespaceExport",s[s.ExportSpecifier=282]="ExportSpecifier",s[s.MissingDeclaration=283]="MissingDeclaration",s[s.ExternalModuleReference=284]="ExternalModuleReference",s[s.JsxElement=285]="JsxElement",s[s.JsxSelfClosingElement=286]="JsxSelfClosingElement",s[s.JsxOpeningElement=287]="JsxOpeningElement",s[s.JsxClosingElement=288]="JsxClosingElement",s[s.JsxFragment=289]="JsxFragment",s[s.JsxOpeningFragment=290]="JsxOpeningFragment",s[s.JsxClosingFragment=291]="JsxClosingFragment",s[s.JsxAttribute=292]="JsxAttribute",s[s.JsxAttributes=293]="JsxAttributes",s[s.JsxSpreadAttribute=294]="JsxSpreadAttribute",s[s.JsxExpression=295]="JsxExpression",s[s.JsxNamespacedName=296]="JsxNamespacedName",s[s.CaseClause=297]="CaseClause",s[s.DefaultClause=298]="DefaultClause",s[s.HeritageClause=299]="HeritageClause",s[s.CatchClause=300]="CatchClause",s[s.ImportAttributes=301]="ImportAttributes",s[s.ImportAttribute=302]="ImportAttribute",s[s.AssertClause=301]="AssertClause",s[s.AssertEntry=302]="AssertEntry",s[s.ImportTypeAssertionContainer=303]="ImportTypeAssertionContainer",s[s.PropertyAssignment=304]="PropertyAssignment",s[s.ShorthandPropertyAssignment=305]="ShorthandPropertyAssignment",s[s.SpreadAssignment=306]="SpreadAssignment",s[s.EnumMember=307]="EnumMember",s[s.SourceFile=308]="SourceFile",s[s.Bundle=309]="Bundle",s[s.JSDocTypeExpression=310]="JSDocTypeExpression",s[s.JSDocNameReference=311]="JSDocNameReference",s[s.JSDocMemberName=312]="JSDocMemberName",s[s.JSDocAllType=313]="JSDocAllType",s[s.JSDocUnknownType=314]="JSDocUnknownType",s[s.JSDocNullableType=315]="JSDocNullableType",s[s.JSDocNonNullableType=316]="JSDocNonNullableType",s[s.JSDocOptionalType=317]="JSDocOptionalType",s[s.JSDocFunctionType=318]="JSDocFunctionType",s[s.JSDocVariadicType=319]="JSDocVariadicType",s[s.JSDocNamepathType=320]="JSDocNamepathType",s[s.JSDoc=321]="JSDoc",s[s.JSDocComment=321]="JSDocComment",s[s.JSDocText=322]="JSDocText",s[s.JSDocTypeLiteral=323]="JSDocTypeLiteral",s[s.JSDocSignature=324]="JSDocSignature",s[s.JSDocLink=325]="JSDocLink",s[s.JSDocLinkCode=326]="JSDocLinkCode",s[s.JSDocLinkPlain=327]="JSDocLinkPlain",s[s.JSDocTag=328]="JSDocTag",s[s.JSDocAugmentsTag=329]="JSDocAugmentsTag",s[s.JSDocImplementsTag=330]="JSDocImplementsTag",s[s.JSDocAuthorTag=331]="JSDocAuthorTag",s[s.JSDocDeprecatedTag=332]="JSDocDeprecatedTag",s[s.JSDocClassTag=333]="JSDocClassTag",s[s.JSDocPublicTag=334]="JSDocPublicTag",s[s.JSDocPrivateTag=335]="JSDocPrivateTag",s[s.JSDocProtectedTag=336]="JSDocProtectedTag",s[s.JSDocReadonlyTag=337]="JSDocReadonlyTag",s[s.JSDocOverrideTag=338]="JSDocOverrideTag",s[s.JSDocCallbackTag=339]="JSDocCallbackTag",s[s.JSDocOverloadTag=340]="JSDocOverloadTag",s[s.JSDocEnumTag=341]="JSDocEnumTag",s[s.JSDocParameterTag=342]="JSDocParameterTag",s[s.JSDocReturnTag=343]="JSDocReturnTag",s[s.JSDocThisTag=344]="JSDocThisTag",s[s.JSDocTypeTag=345]="JSDocTypeTag",s[s.JSDocTemplateTag=346]="JSDocTemplateTag",s[s.JSDocTypedefTag=347]="JSDocTypedefTag",s[s.JSDocSeeTag=348]="JSDocSeeTag",s[s.JSDocPropertyTag=349]="JSDocPropertyTag",s[s.JSDocThrowsTag=350]="JSDocThrowsTag",s[s.JSDocSatisfiesTag=351]="JSDocSatisfiesTag",s[s.JSDocImportTag=352]="JSDocImportTag",s[s.SyntaxList=353]="SyntaxList",s[s.NotEmittedStatement=354]="NotEmittedStatement",s[s.NotEmittedTypeElement=355]="NotEmittedTypeElement",s[s.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",s[s.CommaListExpression=357]="CommaListExpression",s[s.SyntheticReferenceExpression=358]="SyntheticReferenceExpression",s[s.Count=359]="Count",s[s.FirstAssignment=64]="FirstAssignment",s[s.LastAssignment=79]="LastAssignment",s[s.FirstCompoundAssignment=65]="FirstCompoundAssignment",s[s.LastCompoundAssignment=79]="LastCompoundAssignment",s[s.FirstReservedWord=83]="FirstReservedWord",s[s.LastReservedWord=118]="LastReservedWord",s[s.FirstKeyword=83]="FirstKeyword",s[s.LastKeyword=166]="LastKeyword",s[s.FirstFutureReservedWord=119]="FirstFutureReservedWord",s[s.LastFutureReservedWord=127]="LastFutureReservedWord",s[s.FirstTypeNode=183]="FirstTypeNode",s[s.LastTypeNode=206]="LastTypeNode",s[s.FirstPunctuation=19]="FirstPunctuation",s[s.LastPunctuation=79]="LastPunctuation",s[s.FirstToken=0]="FirstToken",s[s.LastToken=166]="LastToken",s[s.FirstTriviaToken=2]="FirstTriviaToken",s[s.LastTriviaToken=7]="LastTriviaToken",s[s.FirstLiteralToken=9]="FirstLiteralToken",s[s.LastLiteralToken=15]="LastLiteralToken",s[s.FirstTemplateToken=15]="FirstTemplateToken",s[s.LastTemplateToken=18]="LastTemplateToken",s[s.FirstBinaryOperator=30]="FirstBinaryOperator",s[s.LastBinaryOperator=79]="LastBinaryOperator",s[s.FirstStatement=244]="FirstStatement",s[s.LastStatement=260]="LastStatement",s[s.FirstNode=167]="FirstNode",s[s.FirstJSDocNode=310]="FirstJSDocNode",s[s.LastJSDocNode=352]="LastJSDocNode",s[s.FirstJSDocTagNode=328]="FirstJSDocTagNode",s[s.LastJSDocTagNode=352]="LastJSDocTagNode",s[s.FirstContextualKeyword=128]="FirstContextualKeyword",s[s.LastContextualKeyword=166]="LastContextualKeyword",s))(Ld||{}),AC=(s=>(s[s.None=0]="None",s[s.Let=1]="Let",s[s.Const=2]="Const",s[s.Using=4]="Using",s[s.AwaitUsing=6]="AwaitUsing",s[s.NestedNamespace=8]="NestedNamespace",s[s.Synthesized=16]="Synthesized",s[s.Namespace=32]="Namespace",s[s.OptionalChain=64]="OptionalChain",s[s.ExportContext=128]="ExportContext",s[s.ContainsThis=256]="ContainsThis",s[s.HasImplicitReturn=512]="HasImplicitReturn",s[s.HasExplicitReturn=1024]="HasExplicitReturn",s[s.GlobalAugmentation=2048]="GlobalAugmentation",s[s.HasAsyncFunctions=4096]="HasAsyncFunctions",s[s.DisallowInContext=8192]="DisallowInContext",s[s.YieldContext=16384]="YieldContext",s[s.DecoratorContext=32768]="DecoratorContext",s[s.AwaitContext=65536]="AwaitContext",s[s.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",s[s.ThisNodeHasError=262144]="ThisNodeHasError",s[s.JavaScriptFile=524288]="JavaScriptFile",s[s.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",s[s.HasAggregatedChildData=2097152]="HasAggregatedChildData",s[s.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",s[s.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",s[s.JSDoc=16777216]="JSDoc",s[s.Ambient=33554432]="Ambient",s[s.InWithStatement=67108864]="InWithStatement",s[s.JsonFile=134217728]="JsonFile",s[s.TypeCached=268435456]="TypeCached",s[s.Deprecated=536870912]="Deprecated",s[s.BlockScoped=7]="BlockScoped",s[s.Constant=6]="Constant",s[s.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",s[s.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",s[s.ContextFlags=101441536]="ContextFlags",s[s.TypeExcludesFlags=81920]="TypeExcludesFlags",s[s.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",s[s.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",s[s.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",s))(AC||{}),JE=(s=>(s[s.None=0]="None",s[s.Public=1]="Public",s[s.Private=2]="Private",s[s.Protected=4]="Protected",s[s.Readonly=8]="Readonly",s[s.Override=16]="Override",s[s.Export=32]="Export",s[s.Abstract=64]="Abstract",s[s.Ambient=128]="Ambient",s[s.Static=256]="Static",s[s.Accessor=512]="Accessor",s[s.Async=1024]="Async",s[s.Default=2048]="Default",s[s.Const=4096]="Const",s[s.In=8192]="In",s[s.Out=16384]="Out",s[s.Decorator=32768]="Decorator",s[s.Deprecated=65536]="Deprecated",s[s.JSDocPublic=8388608]="JSDocPublic",s[s.JSDocPrivate=16777216]="JSDocPrivate",s[s.JSDocProtected=33554432]="JSDocProtected",s[s.JSDocReadonly=67108864]="JSDocReadonly",s[s.JSDocOverride=134217728]="JSDocOverride",s[s.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",s[s.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",s[s.SyntacticModifiers=65535]="SyntacticModifiers",s[s.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",s[s.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",s[s.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",s[s.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",s[s.HasComputedFlags=536870912]="HasComputedFlags",s[s.AccessibilityModifier=7]="AccessibilityModifier",s[s.ParameterPropertyModifier=31]="ParameterPropertyModifier",s[s.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",s[s.TypeScriptModifier=28895]="TypeScriptModifier",s[s.ExportDefault=2080]="ExportDefault",s[s.All=131071]="All",s[s.Modifier=98303]="Modifier",s))(JE||{}),Ym=(s=>(s[s.None=0]="None",s[s.IntrinsicNamedElement=1]="IntrinsicNamedElement",s[s.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",s[s.IntrinsicElement=3]="IntrinsicElement",s))(Ym||{}),vy=(s=>(s[s.None=0]="None",s[s.Succeeded=1]="Succeeded",s[s.Failed=2]="Failed",s[s.ReportsUnmeasurable=8]="ReportsUnmeasurable",s[s.ReportsUnreliable=16]="ReportsUnreliable",s[s.ReportsMask=24]="ReportsMask",s[s.ComplexityOverflow=32]="ComplexityOverflow",s[s.StackDepthOverflow=64]="StackDepthOverflow",s[s.Overflow=96]="Overflow",s))(vy||{}),K_=(s=>(s[s.None=0]="None",s[s.Always=1]="Always",s[s.Never=2]="Never",s[s.Sometimes=3]="Sometimes",s))(K_||{}),od=(s=>(s[s.None=0]="None",s[s.Auto=1]="Auto",s[s.Loop=2]="Loop",s[s.Unique=3]="Unique",s[s.Node=4]="Node",s[s.KindMask=7]="KindMask",s[s.ReservedInNestedScopes=8]="ReservedInNestedScopes",s[s.Optimistic=16]="Optimistic",s[s.FileLevel=32]="FileLevel",s[s.AllowNameSubstitution=64]="AllowNameSubstitution",s))(od||{}),UE=(s=>(s[s.None=0]="None",s[s.HasIndices=1]="HasIndices",s[s.Global=2]="Global",s[s.IgnoreCase=4]="IgnoreCase",s[s.Multiline=8]="Multiline",s[s.DotAll=16]="DotAll",s[s.Unicode=32]="Unicode",s[s.UnicodeSets=64]="UnicodeSets",s[s.Sticky=128]="Sticky",s[s.AnyUnicodeMode=96]="AnyUnicodeMode",s[s.Modifiers=28]="Modifiers",s))(UE||{}),KE=(s=>(s[s.None=0]="None",s[s.PrecedingLineBreak=1]="PrecedingLineBreak",s[s.PrecedingJSDocComment=2]="PrecedingJSDocComment",s[s.Unterminated=4]="Unterminated",s[s.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",s[s.Scientific=16]="Scientific",s[s.Octal=32]="Octal",s[s.HexSpecifier=64]="HexSpecifier",s[s.BinarySpecifier=128]="BinarySpecifier",s[s.OctalSpecifier=256]="OctalSpecifier",s[s.ContainsSeparator=512]="ContainsSeparator",s[s.UnicodeEscape=1024]="UnicodeEscape",s[s.ContainsInvalidEscape=2048]="ContainsInvalidEscape",s[s.HexEscape=4096]="HexEscape",s[s.ContainsLeadingZero=8192]="ContainsLeadingZero",s[s.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",s[s.PrecedingJSDocLeadingAsterisks=32768]="PrecedingJSDocLeadingAsterisks",s[s.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",s[s.WithSpecifier=448]="WithSpecifier",s[s.StringLiteralFlags=7176]="StringLiteralFlags",s[s.NumericLiteralFlags=25584]="NumericLiteralFlags",s[s.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",s[s.IsInvalid=26656]="IsInvalid",s))(KE||{}),Yp=(s=>(s[s.Unreachable=1]="Unreachable",s[s.Start=2]="Start",s[s.BranchLabel=4]="BranchLabel",s[s.LoopLabel=8]="LoopLabel",s[s.Assignment=16]="Assignment",s[s.TrueCondition=32]="TrueCondition",s[s.FalseCondition=64]="FalseCondition",s[s.SwitchClause=128]="SwitchClause",s[s.ArrayMutation=256]="ArrayMutation",s[s.Call=512]="Call",s[s.ReduceLabel=1024]="ReduceLabel",s[s.Referenced=2048]="Referenced",s[s.Shared=4096]="Shared",s[s.Label=12]="Label",s[s.Condition=96]="Condition",s))(Yp||{}),JS=(s=>(s[s.ExpectError=0]="ExpectError",s[s.Ignore=1]="Ignore",s))(JS||{}),By=class{},$0=(s=>(s[s.RootFile=0]="RootFile",s[s.SourceFromProjectReference=1]="SourceFromProjectReference",s[s.OutputFromProjectReference=2]="OutputFromProjectReference",s[s.Import=3]="Import",s[s.ReferenceFile=4]="ReferenceFile",s[s.TypeReferenceDirective=5]="TypeReferenceDirective",s[s.LibFile=6]="LibFile",s[s.LibReferenceDirective=7]="LibReferenceDirective",s[s.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",s))($0||{}),fw=(s=>(s[s.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",s[s.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",s[s.ResolutionDiagnostics=2]="ResolutionDiagnostics",s))(fw||{}),Q2=(s=>(s[s.Js=0]="Js",s[s.Dts=1]="Dts",s[s.BuilderSignature=2]="BuilderSignature",s))(Q2||{}),xc=(s=>(s[s.Not=0]="Not",s[s.SafeModules=1]="SafeModules",s[s.Completely=2]="Completely",s))(xc||{}),ut=(s=>(s[s.Success=0]="Success",s[s.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",s[s.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",s[s.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",s[s.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",s))(ut||{}),ar=(s=>(s[s.Ok=0]="Ok",s[s.NeedsOverride=1]="NeedsOverride",s[s.HasInvalidOverride=2]="HasInvalidOverride",s))(ar||{}),Jr=(s=>(s[s.None=0]="None",s[s.Literal=1]="Literal",s[s.Subtype=2]="Subtype",s))(Jr||{}),Gn=(s=>(s[s.None=0]="None",s[s.NoSupertypeReduction=1]="NoSupertypeReduction",s[s.NoConstraintReduction=2]="NoConstraintReduction",s))(Gn||{}),Ts=(s=>(s[s.None=0]="None",s[s.Signature=1]="Signature",s[s.NoConstraints=2]="NoConstraints",s[s.Completions=4]="Completions",s[s.SkipBindingPatterns=8]="SkipBindingPatterns",s))(Ts||{}),Qo=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",s[s.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",s[s.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",s[s.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",s[s.AllowEmptyTuple=524288]="AllowEmptyTuple",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",s[s.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",s[s.IgnoreErrors=70221824]="IgnoreErrors",s[s.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.InInitialEntityName=16777216]="InInitialEntityName",s))(Qo||{}),vg=(s=>(s[s.None=0]="None",s[s.WriteComputedProps=1]="WriteComputedProps",s[s.NoSyntacticPrinter=2]="NoSyntacticPrinter",s[s.DoNotIncludeSymbolChain=4]="DoNotIncludeSymbolChain",s[s.AllowUnresolvedNames=8]="AllowUnresolvedNames",s))(vg||{}),Ng=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AddUndefined=131072]="AddUndefined",s[s.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",s[s.InArrayType=524288]="InArrayType",s[s.InElementType=2097152]="InElementType",s[s.InFirstTypeArgument=4194304]="InFirstTypeArgument",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",s))(Ng||{}),Rf=(s=>(s[s.None=0]="None",s[s.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",s[s.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",s[s.AllowAnyNodeKind=4]="AllowAnyNodeKind",s[s.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",s[s.WriteComputedProps=16]="WriteComputedProps",s[s.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",s))(Rf||{}),uI=(s=>(s[s.Accessible=0]="Accessible",s[s.NotAccessible=1]="NotAccessible",s[s.CannotBeNamed=2]="CannotBeNamed",s[s.NotResolved=3]="NotResolved",s))(uI||{}),Th=(s=>(s[s.This=0]="This",s[s.Identifier=1]="Identifier",s[s.AssertsThis=2]="AssertsThis",s[s.AssertsIdentifier=3]="AssertsIdentifier",s))(Th||{}),oE=(s=>(s[s.Unknown=0]="Unknown",s[s.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",s[s.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",s[s.NumberLikeType=3]="NumberLikeType",s[s.BigIntLikeType=4]="BigIntLikeType",s[s.StringLikeType=5]="StringLikeType",s[s.BooleanType=6]="BooleanType",s[s.ArrayLikeType=7]="ArrayLikeType",s[s.ESSymbolType=8]="ESSymbolType",s[s.Promise=9]="Promise",s[s.TypeWithCallSignature=10]="TypeWithCallSignature",s[s.ObjectType=11]="ObjectType",s))(oE||{}),TT=(s=>(s[s.None=0]="None",s[s.FunctionScopedVariable=1]="FunctionScopedVariable",s[s.BlockScopedVariable=2]="BlockScopedVariable",s[s.Property=4]="Property",s[s.EnumMember=8]="EnumMember",s[s.Function=16]="Function",s[s.Class=32]="Class",s[s.Interface=64]="Interface",s[s.ConstEnum=128]="ConstEnum",s[s.RegularEnum=256]="RegularEnum",s[s.ValueModule=512]="ValueModule",s[s.NamespaceModule=1024]="NamespaceModule",s[s.TypeLiteral=2048]="TypeLiteral",s[s.ObjectLiteral=4096]="ObjectLiteral",s[s.Method=8192]="Method",s[s.Constructor=16384]="Constructor",s[s.GetAccessor=32768]="GetAccessor",s[s.SetAccessor=65536]="SetAccessor",s[s.Signature=131072]="Signature",s[s.TypeParameter=262144]="TypeParameter",s[s.TypeAlias=524288]="TypeAlias",s[s.ExportValue=1048576]="ExportValue",s[s.Alias=2097152]="Alias",s[s.Prototype=4194304]="Prototype",s[s.ExportStar=8388608]="ExportStar",s[s.Optional=16777216]="Optional",s[s.Transient=33554432]="Transient",s[s.Assignment=67108864]="Assignment",s[s.ModuleExports=134217728]="ModuleExports",s[s.All=-1]="All",s[s.Enum=384]="Enum",s[s.Variable=3]="Variable",s[s.Value=111551]="Value",s[s.Type=788968]="Type",s[s.Namespace=1920]="Namespace",s[s.Module=1536]="Module",s[s.Accessor=98304]="Accessor",s[s.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",s[s.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",s[s.ParameterExcludes=111551]="ParameterExcludes",s[s.PropertyExcludes=0]="PropertyExcludes",s[s.EnumMemberExcludes=900095]="EnumMemberExcludes",s[s.FunctionExcludes=110991]="FunctionExcludes",s[s.ClassExcludes=899503]="ClassExcludes",s[s.InterfaceExcludes=788872]="InterfaceExcludes",s[s.RegularEnumExcludes=899327]="RegularEnumExcludes",s[s.ConstEnumExcludes=899967]="ConstEnumExcludes",s[s.ValueModuleExcludes=110735]="ValueModuleExcludes",s[s.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",s[s.MethodExcludes=103359]="MethodExcludes",s[s.GetAccessorExcludes=46015]="GetAccessorExcludes",s[s.SetAccessorExcludes=78783]="SetAccessorExcludes",s[s.AccessorExcludes=13247]="AccessorExcludes",s[s.TypeParameterExcludes=526824]="TypeParameterExcludes",s[s.TypeAliasExcludes=788968]="TypeAliasExcludes",s[s.AliasExcludes=2097152]="AliasExcludes",s[s.ModuleMember=2623475]="ModuleMember",s[s.ExportHasLocal=944]="ExportHasLocal",s[s.BlockScoped=418]="BlockScoped",s[s.PropertyOrAccessor=98308]="PropertyOrAccessor",s[s.ClassMember=106500]="ClassMember",s[s.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",s[s.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",s[s.Classifiable=2885600]="Classifiable",s[s.LateBindingContainer=6256]="LateBindingContainer",s))(TT||{}),sB=(s=>(s[s.None=0]="None",s[s.Instantiated=1]="Instantiated",s[s.SyntheticProperty=2]="SyntheticProperty",s[s.SyntheticMethod=4]="SyntheticMethod",s[s.Readonly=8]="Readonly",s[s.ReadPartial=16]="ReadPartial",s[s.WritePartial=32]="WritePartial",s[s.HasNonUniformType=64]="HasNonUniformType",s[s.HasLiteralType=128]="HasLiteralType",s[s.ContainsPublic=256]="ContainsPublic",s[s.ContainsProtected=512]="ContainsProtected",s[s.ContainsPrivate=1024]="ContainsPrivate",s[s.ContainsStatic=2048]="ContainsStatic",s[s.Late=4096]="Late",s[s.ReverseMapped=8192]="ReverseMapped",s[s.OptionalParameter=16384]="OptionalParameter",s[s.RestParameter=32768]="RestParameter",s[s.DeferredType=65536]="DeferredType",s[s.HasNeverType=131072]="HasNeverType",s[s.Mapped=262144]="Mapped",s[s.StripOptional=524288]="StripOptional",s[s.Unresolved=1048576]="Unresolved",s[s.Synthetic=6]="Synthetic",s[s.Discriminant=192]="Discriminant",s[s.Partial=48]="Partial",s))(sB||{}),RT=(s=>(s.Call="__call",s.Constructor="__constructor",s.New="__new",s.Index="__index",s.ExportStar="__export",s.Global="__global",s.Missing="__missing",s.Type="__type",s.Object="__object",s.JSXAttributes="__jsxAttributes",s.Class="__class",s.Function="__function",s.Computed="__computed",s.Resolving="__resolving__",s.ExportEquals="export=",s.Default="default",s.This="this",s.InstantiationExpression="__instantiationExpression",s.ImportAttributes="__importAttributes",s))(RT||{}),wy=(s=>(s[s.None=0]="None",s[s.TypeChecked=1]="TypeChecked",s[s.LexicalThis=2]="LexicalThis",s[s.CaptureThis=4]="CaptureThis",s[s.CaptureNewTarget=8]="CaptureNewTarget",s[s.SuperInstance=16]="SuperInstance",s[s.SuperStatic=32]="SuperStatic",s[s.ContextChecked=64]="ContextChecked",s[s.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",s[s.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",s[s.CaptureArguments=512]="CaptureArguments",s[s.EnumValuesComputed=1024]="EnumValuesComputed",s[s.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",s[s.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",s[s.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",s[s.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",s[s.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",s[s.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",s[s.AssignmentsMarked=131072]="AssignmentsMarked",s[s.ContainsConstructorReference=262144]="ContainsConstructorReference",s[s.ConstructorReference=536870912]="ConstructorReference",s[s.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",s[s.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",s[s.InCheckIdentifier=4194304]="InCheckIdentifier",s[s.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",s[s.LazyFlags=539358128]="LazyFlags",s))(wy||{}),jE=(s=>(s[s.Any=1]="Any",s[s.Unknown=2]="Unknown",s[s.String=4]="String",s[s.Number=8]="Number",s[s.Boolean=16]="Boolean",s[s.Enum=32]="Enum",s[s.BigInt=64]="BigInt",s[s.StringLiteral=128]="StringLiteral",s[s.NumberLiteral=256]="NumberLiteral",s[s.BooleanLiteral=512]="BooleanLiteral",s[s.EnumLiteral=1024]="EnumLiteral",s[s.BigIntLiteral=2048]="BigIntLiteral",s[s.ESSymbol=4096]="ESSymbol",s[s.UniqueESSymbol=8192]="UniqueESSymbol",s[s.Void=16384]="Void",s[s.Undefined=32768]="Undefined",s[s.Null=65536]="Null",s[s.Never=131072]="Never",s[s.TypeParameter=262144]="TypeParameter",s[s.Object=524288]="Object",s[s.Union=1048576]="Union",s[s.Intersection=2097152]="Intersection",s[s.Index=4194304]="Index",s[s.IndexedAccess=8388608]="IndexedAccess",s[s.Conditional=16777216]="Conditional",s[s.Substitution=33554432]="Substitution",s[s.NonPrimitive=67108864]="NonPrimitive",s[s.TemplateLiteral=134217728]="TemplateLiteral",s[s.StringMapping=268435456]="StringMapping",s[s.Reserved1=536870912]="Reserved1",s[s.Reserved2=1073741824]="Reserved2",s[s.AnyOrUnknown=3]="AnyOrUnknown",s[s.Nullable=98304]="Nullable",s[s.Literal=2944]="Literal",s[s.Unit=109472]="Unit",s[s.Freshable=2976]="Freshable",s[s.StringOrNumberLiteral=384]="StringOrNumberLiteral",s[s.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",s[s.DefinitelyFalsy=117632]="DefinitelyFalsy",s[s.PossiblyFalsy=117724]="PossiblyFalsy",s[s.Intrinsic=67359327]="Intrinsic",s[s.StringLike=402653316]="StringLike",s[s.NumberLike=296]="NumberLike",s[s.BigIntLike=2112]="BigIntLike",s[s.BooleanLike=528]="BooleanLike",s[s.EnumLike=1056]="EnumLike",s[s.ESSymbolLike=12288]="ESSymbolLike",s[s.VoidLike=49152]="VoidLike",s[s.Primitive=402784252]="Primitive",s[s.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",s[s.DisjointDomains=469892092]="DisjointDomains",s[s.UnionOrIntersection=3145728]="UnionOrIntersection",s[s.StructuredType=3670016]="StructuredType",s[s.TypeVariable=8650752]="TypeVariable",s[s.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",s[s.InstantiablePrimitive=406847488]="InstantiablePrimitive",s[s.Instantiable=465829888]="Instantiable",s[s.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",s[s.ObjectFlagsType=3899393]="ObjectFlagsType",s[s.Simplifiable=25165824]="Simplifiable",s[s.Singleton=67358815]="Singleton",s[s.Narrowable=536624127]="Narrowable",s[s.IncludesMask=473694207]="IncludesMask",s[s.IncludesMissingType=262144]="IncludesMissingType",s[s.IncludesNonWideningType=4194304]="IncludesNonWideningType",s[s.IncludesWildcard=8388608]="IncludesWildcard",s[s.IncludesEmptyObject=16777216]="IncludesEmptyObject",s[s.IncludesInstantiable=33554432]="IncludesInstantiable",s[s.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",s[s.IncludesError=1073741824]="IncludesError",s[s.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",s))(jE||{}),j_=(s=>(s[s.None=0]="None",s[s.Class=1]="Class",s[s.Interface=2]="Interface",s[s.Reference=4]="Reference",s[s.Tuple=8]="Tuple",s[s.Anonymous=16]="Anonymous",s[s.Mapped=32]="Mapped",s[s.Instantiated=64]="Instantiated",s[s.ObjectLiteral=128]="ObjectLiteral",s[s.EvolvingArray=256]="EvolvingArray",s[s.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",s[s.ReverseMapped=1024]="ReverseMapped",s[s.JsxAttributes=2048]="JsxAttributes",s[s.JSLiteral=4096]="JSLiteral",s[s.FreshLiteral=8192]="FreshLiteral",s[s.ArrayLiteral=16384]="ArrayLiteral",s[s.PrimitiveUnion=32768]="PrimitiveUnion",s[s.ContainsWideningType=65536]="ContainsWideningType",s[s.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",s[s.NonInferrableType=262144]="NonInferrableType",s[s.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",s[s.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",s[s.SingleSignatureType=134217728]="SingleSignatureType",s[s.ClassOrInterface=3]="ClassOrInterface",s[s.RequiresWidening=196608]="RequiresWidening",s[s.PropagatingFlags=458752]="PropagatingFlags",s[s.InstantiatedMapped=96]="InstantiatedMapped",s[s.ObjectTypeKindMask=1343]="ObjectTypeKindMask",s[s.ContainsSpread=2097152]="ContainsSpread",s[s.ObjectRestType=4194304]="ObjectRestType",s[s.InstantiationExpressionType=8388608]="InstantiationExpressionType",s[s.IsClassInstanceClone=16777216]="IsClassInstanceClone",s[s.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",s[s.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",s[s.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",s[s.IsGenericObjectType=4194304]="IsGenericObjectType",s[s.IsGenericIndexType=8388608]="IsGenericIndexType",s[s.IsGenericType=12582912]="IsGenericType",s[s.ContainsIntersections=16777216]="ContainsIntersections",s[s.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",s[s.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",s[s.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",s[s.IsNeverIntersection=33554432]="IsNeverIntersection",s[s.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",s))(j_||{}),NT=(s=>(s[s.Invariant=0]="Invariant",s[s.Covariant=1]="Covariant",s[s.Contravariant=2]="Contravariant",s[s.Bivariant=3]="Bivariant",s[s.Independent=4]="Independent",s[s.VarianceMask=7]="VarianceMask",s[s.Unmeasurable=8]="Unmeasurable",s[s.Unreliable=16]="Unreliable",s[s.AllowsStructuralFallback=24]="AllowsStructuralFallback",s))(NT||{}),tf=(s=>(s[s.Required=1]="Required",s[s.Optional=2]="Optional",s[s.Rest=4]="Rest",s[s.Variadic=8]="Variadic",s[s.Fixed=3]="Fixed",s[s.Variable=12]="Variable",s[s.NonRequired=14]="NonRequired",s[s.NonRest=11]="NonRest",s))(tf||{}),Ty=(s=>(s[s.None=0]="None",s[s.IncludeUndefined=1]="IncludeUndefined",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.Writing=4]="Writing",s[s.CacheSymbol=8]="CacheSymbol",s[s.AllowMissing=16]="AllowMissing",s[s.ExpressionPosition=32]="ExpressionPosition",s[s.ReportDeprecated=64]="ReportDeprecated",s[s.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",s[s.Contextual=256]="Contextual",s[s.Persistent=1]="Persistent",s))(Ty||{}),US=(s=>(s[s.None=0]="None",s[s.StringsOnly=1]="StringsOnly",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.NoReducibleCheck=4]="NoReducibleCheck",s))(US||{}),$I=(s=>(s[s.Component=0]="Component",s[s.Function=1]="Function",s[s.Mixed=2]="Mixed",s))($I||{}),BA=(s=>(s[s.Call=0]="Call",s[s.Construct=1]="Construct",s))(BA||{}),$A=(s=>(s[s.None=0]="None",s[s.HasRestParameter=1]="HasRestParameter",s[s.HasLiteralTypes=2]="HasLiteralTypes",s[s.Abstract=4]="Abstract",s[s.IsInnerCallChain=8]="IsInnerCallChain",s[s.IsOuterCallChain=16]="IsOuterCallChain",s[s.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",s[s.IsNonInferrable=64]="IsNonInferrable",s[s.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",s[s.PropagatingFlags=167]="PropagatingFlags",s[s.CallChainFlags=24]="CallChainFlags",s))($A||{}),Qm=(s=>(s[s.String=0]="String",s[s.Number=1]="Number",s))(Qm||{}),zf=(s=>(s[s.Simple=0]="Simple",s[s.Array=1]="Array",s[s.Deferred=2]="Deferred",s[s.Function=3]="Function",s[s.Composite=4]="Composite",s[s.Merged=5]="Merged",s))(zf||{}),mb=(s=>(s[s.None=0]="None",s[s.NakedTypeVariable=1]="NakedTypeVariable",s[s.SpeculativeTuple=2]="SpeculativeTuple",s[s.SubstituteSource=4]="SubstituteSource",s[s.HomomorphicMappedType=8]="HomomorphicMappedType",s[s.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",s[s.MappedTypeConstraint=32]="MappedTypeConstraint",s[s.ContravariantConditional=64]="ContravariantConditional",s[s.ReturnType=128]="ReturnType",s[s.LiteralKeyof=256]="LiteralKeyof",s[s.NoConstraints=512]="NoConstraints",s[s.AlwaysStrict=1024]="AlwaysStrict",s[s.MaxValue=2048]="MaxValue",s[s.PriorityImpliesCombination=416]="PriorityImpliesCombination",s[s.Circularity=-1]="Circularity",s))(mb||{}),R_=(s=>(s[s.None=0]="None",s[s.NoDefault=1]="NoDefault",s[s.AnyDefault=2]="AnyDefault",s[s.SkippedGenericFunction=4]="SkippedGenericFunction",s))(R_||{}),Cb=(s=>(s[s.False=0]="False",s[s.Unknown=1]="Unknown",s[s.Maybe=3]="Maybe",s[s.True=-1]="True",s))(Cb||{}),Ry=(s=>(s[s.None=0]="None",s[s.ExportsProperty=1]="ExportsProperty",s[s.ModuleExports=2]="ModuleExports",s[s.PrototypeProperty=3]="PrototypeProperty",s[s.ThisProperty=4]="ThisProperty",s[s.Property=5]="Property",s[s.Prototype=6]="Prototype",s[s.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",s[s.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",s[s.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",s))(Ry||{}),KS=(s=>(s[s.Warning=0]="Warning",s[s.Error=1]="Error",s[s.Suggestion=2]="Suggestion",s[s.Message=3]="Message",s))(KS||{});function _b(s,c=!0){let g=KS[s.category];return c?g.toLowerCase():g}var z_=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s[s.Node10=2]="Node10",s[s.Node16=3]="Node16",s[s.NodeNext=99]="NodeNext",s[s.Bundler=100]="Bundler",s))(z_||{}),zE=(s=>(s[s.Legacy=1]="Legacy",s[s.Auto=2]="Auto",s[s.Force=3]="Force",s))(zE||{}),oB=(s=>(s[s.FixedPollingInterval=0]="FixedPollingInterval",s[s.PriorityPollingInterval=1]="PriorityPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s[s.UseFsEvents=4]="UseFsEvents",s[s.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",s))(oB||{}),DT=(s=>(s[s.UseFsEvents=0]="UseFsEvents",s[s.FixedPollingInterval=1]="FixedPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s))(DT||{}),aB=(s=>(s[s.FixedInterval=0]="FixedInterval",s[s.PriorityInterval=1]="PriorityInterval",s[s.DynamicPriority=2]="DynamicPriority",s[s.FixedChunkSize=3]="FixedChunkSize",s))(aB||{}),jS=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ES2020=6]="ES2020",s[s.ES2022=7]="ES2022",s[s.ESNext=99]="ESNext",s[s.Node16=100]="Node16",s[s.Node18=101]="Node18",s[s.Node20=102]="Node20",s[s.NodeNext=199]="NodeNext",s[s.Preserve=200]="Preserve",s))(jS||{}),XR=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(XR||{}),zS=(s=>(s[s.Remove=0]="Remove",s[s.Preserve=1]="Preserve",s[s.Error=2]="Error",s))(zS||{}),qE=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(qE||{}),X2=(s=>(s[s.Unknown=0]="Unknown",s[s.JS=1]="JS",s[s.JSX=2]="JSX",s[s.TS=3]="TS",s[s.TSX=4]="TSX",s[s.External=5]="External",s[s.JSON=6]="JSON",s[s.Deferred=7]="Deferred",s))(X2||{}),kT=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ES2021=8]="ES2021",s[s.ES2022=9]="ES2022",s[s.ES2023=10]="ES2023",s[s.ES2024=11]="ES2024",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(kT||{}),pn=(s=>(s[s.Standard=0]="Standard",s[s.JSX=1]="JSX",s))(pn||{}),q1=(s=>(s[s.None=0]="None",s[s.Recursive=1]="Recursive",s))(q1||{}),J2=(s=>(s[s.EOF=-1]="EOF",s[s.nullCharacter=0]="nullCharacter",s[s.maxAsciiCharacter=127]="maxAsciiCharacter",s[s.lineFeed=10]="lineFeed",s[s.carriageReturn=13]="carriageReturn",s[s.lineSeparator=8232]="lineSeparator",s[s.paragraphSeparator=8233]="paragraphSeparator",s[s.nextLine=133]="nextLine",s[s.space=32]="space",s[s.nonBreakingSpace=160]="nonBreakingSpace",s[s.enQuad=8192]="enQuad",s[s.emQuad=8193]="emQuad",s[s.enSpace=8194]="enSpace",s[s.emSpace=8195]="emSpace",s[s.threePerEmSpace=8196]="threePerEmSpace",s[s.fourPerEmSpace=8197]="fourPerEmSpace",s[s.sixPerEmSpace=8198]="sixPerEmSpace",s[s.figureSpace=8199]="figureSpace",s[s.punctuationSpace=8200]="punctuationSpace",s[s.thinSpace=8201]="thinSpace",s[s.hairSpace=8202]="hairSpace",s[s.zeroWidthSpace=8203]="zeroWidthSpace",s[s.narrowNoBreakSpace=8239]="narrowNoBreakSpace",s[s.ideographicSpace=12288]="ideographicSpace",s[s.mathematicalSpace=8287]="mathematicalSpace",s[s.ogham=5760]="ogham",s[s.replacementCharacter=65533]="replacementCharacter",s[s._=95]="_",s[s.$=36]="$",s[s._0=48]="_0",s[s._1=49]="_1",s[s._2=50]="_2",s[s._3=51]="_3",s[s._4=52]="_4",s[s._5=53]="_5",s[s._6=54]="_6",s[s._7=55]="_7",s[s._8=56]="_8",s[s._9=57]="_9",s[s.a=97]="a",s[s.b=98]="b",s[s.c=99]="c",s[s.d=100]="d",s[s.e=101]="e",s[s.f=102]="f",s[s.g=103]="g",s[s.h=104]="h",s[s.i=105]="i",s[s.j=106]="j",s[s.k=107]="k",s[s.l=108]="l",s[s.m=109]="m",s[s.n=110]="n",s[s.o=111]="o",s[s.p=112]="p",s[s.q=113]="q",s[s.r=114]="r",s[s.s=115]="s",s[s.t=116]="t",s[s.u=117]="u",s[s.v=118]="v",s[s.w=119]="w",s[s.x=120]="x",s[s.y=121]="y",s[s.z=122]="z",s[s.A=65]="A",s[s.B=66]="B",s[s.C=67]="C",s[s.D=68]="D",s[s.E=69]="E",s[s.F=70]="F",s[s.G=71]="G",s[s.H=72]="H",s[s.I=73]="I",s[s.J=74]="J",s[s.K=75]="K",s[s.L=76]="L",s[s.M=77]="M",s[s.N=78]="N",s[s.O=79]="O",s[s.P=80]="P",s[s.Q=81]="Q",s[s.R=82]="R",s[s.S=83]="S",s[s.T=84]="T",s[s.U=85]="U",s[s.V=86]="V",s[s.W=87]="W",s[s.X=88]="X",s[s.Y=89]="Y",s[s.Z=90]="Z",s[s.ampersand=38]="ampersand",s[s.asterisk=42]="asterisk",s[s.at=64]="at",s[s.backslash=92]="backslash",s[s.backtick=96]="backtick",s[s.bar=124]="bar",s[s.caret=94]="caret",s[s.closeBrace=125]="closeBrace",s[s.closeBracket=93]="closeBracket",s[s.closeParen=41]="closeParen",s[s.colon=58]="colon",s[s.comma=44]="comma",s[s.dot=46]="dot",s[s.doubleQuote=34]="doubleQuote",s[s.equals=61]="equals",s[s.exclamation=33]="exclamation",s[s.greaterThan=62]="greaterThan",s[s.hash=35]="hash",s[s.lessThan=60]="lessThan",s[s.minus=45]="minus",s[s.openBrace=123]="openBrace",s[s.openBracket=91]="openBracket",s[s.openParen=40]="openParen",s[s.percent=37]="percent",s[s.plus=43]="plus",s[s.question=63]="question",s[s.semicolon=59]="semicolon",s[s.singleQuote=39]="singleQuote",s[s.slash=47]="slash",s[s.tilde=126]="tilde",s[s.backspace=8]="backspace",s[s.formFeed=12]="formFeed",s[s.byteOrderMark=65279]="byteOrderMark",s[s.tab=9]="tab",s[s.verticalTab=11]="verticalTab",s))(J2||{}),ey=(s=>(s.Ts=".ts",s.Tsx=".tsx",s.Dts=".d.ts",s.Js=".js",s.Jsx=".jsx",s.Json=".json",s.TsBuildInfo=".tsbuildinfo",s.Mjs=".mjs",s.Mts=".mts",s.Dmts=".d.mts",s.Cjs=".cjs",s.Cts=".cts",s.Dcts=".d.cts",s))(ey||{}),up=(s=>(s[s.None=0]="None",s[s.ContainsTypeScript=1]="ContainsTypeScript",s[s.ContainsJsx=2]="ContainsJsx",s[s.ContainsESNext=4]="ContainsESNext",s[s.ContainsES2022=8]="ContainsES2022",s[s.ContainsES2021=16]="ContainsES2021",s[s.ContainsES2020=32]="ContainsES2020",s[s.ContainsES2019=64]="ContainsES2019",s[s.ContainsES2018=128]="ContainsES2018",s[s.ContainsES2017=256]="ContainsES2017",s[s.ContainsES2016=512]="ContainsES2016",s[s.ContainsES2015=1024]="ContainsES2015",s[s.ContainsGenerator=2048]="ContainsGenerator",s[s.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",s[s.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",s[s.ContainsLexicalThis=16384]="ContainsLexicalThis",s[s.ContainsRestOrSpread=32768]="ContainsRestOrSpread",s[s.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",s[s.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",s[s.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",s[s.ContainsBindingPattern=524288]="ContainsBindingPattern",s[s.ContainsYield=1048576]="ContainsYield",s[s.ContainsAwait=2097152]="ContainsAwait",s[s.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",s[s.ContainsDynamicImport=8388608]="ContainsDynamicImport",s[s.ContainsClassFields=16777216]="ContainsClassFields",s[s.ContainsDecorators=33554432]="ContainsDecorators",s[s.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",s[s.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",s[s.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",s[s.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",s[s.HasComputedFlags=-2147483648]="HasComputedFlags",s[s.AssertTypeScript=1]="AssertTypeScript",s[s.AssertJsx=2]="AssertJsx",s[s.AssertESNext=4]="AssertESNext",s[s.AssertES2022=8]="AssertES2022",s[s.AssertES2021=16]="AssertES2021",s[s.AssertES2020=32]="AssertES2020",s[s.AssertES2019=64]="AssertES2019",s[s.AssertES2018=128]="AssertES2018",s[s.AssertES2017=256]="AssertES2017",s[s.AssertES2016=512]="AssertES2016",s[s.AssertES2015=1024]="AssertES2015",s[s.AssertGenerator=2048]="AssertGenerator",s[s.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",s[s.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",s[s.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",s[s.NodeExcludes=-2147483648]="NodeExcludes",s[s.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",s[s.FunctionExcludes=-1937940480]="FunctionExcludes",s[s.ConstructorExcludes=-1937948672]="ConstructorExcludes",s[s.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",s[s.PropertyExcludes=-2013249536]="PropertyExcludes",s[s.ClassExcludes=-2147344384]="ClassExcludes",s[s.ModuleExcludes=-1941676032]="ModuleExcludes",s[s.TypeExcludes=-2]="TypeExcludes",s[s.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",s[s.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",s[s.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",s[s.ParameterExcludes=-2147483648]="ParameterExcludes",s[s.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",s[s.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",s[s.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",s[s.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",s))(up||{}),Iw=(s=>(s[s.TabStop=0]="TabStop",s[s.Placeholder=1]="Placeholder",s[s.Choice=2]="Choice",s[s.Variable=3]="Variable",s))(Iw||{}),cB=(s=>(s[s.None=0]="None",s[s.SingleLine=1]="SingleLine",s[s.MultiLine=2]="MultiLine",s[s.AdviseOnEmitNode=4]="AdviseOnEmitNode",s[s.NoSubstitution=8]="NoSubstitution",s[s.CapturesThis=16]="CapturesThis",s[s.NoLeadingSourceMap=32]="NoLeadingSourceMap",s[s.NoTrailingSourceMap=64]="NoTrailingSourceMap",s[s.NoSourceMap=96]="NoSourceMap",s[s.NoNestedSourceMaps=128]="NoNestedSourceMaps",s[s.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",s[s.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",s[s.NoTokenSourceMaps=768]="NoTokenSourceMaps",s[s.NoLeadingComments=1024]="NoLeadingComments",s[s.NoTrailingComments=2048]="NoTrailingComments",s[s.NoComments=3072]="NoComments",s[s.NoNestedComments=4096]="NoNestedComments",s[s.HelperName=8192]="HelperName",s[s.ExportName=16384]="ExportName",s[s.LocalName=32768]="LocalName",s[s.InternalName=65536]="InternalName",s[s.Indented=131072]="Indented",s[s.NoIndentation=262144]="NoIndentation",s[s.AsyncFunctionBody=524288]="AsyncFunctionBody",s[s.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",s[s.CustomPrologue=2097152]="CustomPrologue",s[s.NoHoisting=4194304]="NoHoisting",s[s.Iterator=8388608]="Iterator",s[s.NoAsciiEscaping=16777216]="NoAsciiEscaping",s))(cB||{}),RD=(s=>(s[s.None=0]="None",s[s.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",s[s.NeverApplyImportHelper=2]="NeverApplyImportHelper",s[s.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",s[s.Immutable=8]="Immutable",s[s.IndirectCall=16]="IndirectCall",s[s.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",s))(RD||{}),Rd={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},JR=(s=>(s[s.Extends=1]="Extends",s[s.Assign=2]="Assign",s[s.Rest=4]="Rest",s[s.Decorate=8]="Decorate",s[s.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",s[s.Metadata=16]="Metadata",s[s.Param=32]="Param",s[s.Awaiter=64]="Awaiter",s[s.Generator=128]="Generator",s[s.Values=256]="Values",s[s.Read=512]="Read",s[s.SpreadArray=1024]="SpreadArray",s[s.Await=2048]="Await",s[s.AsyncGenerator=4096]="AsyncGenerator",s[s.AsyncDelegator=8192]="AsyncDelegator",s[s.AsyncValues=16384]="AsyncValues",s[s.ExportStar=32768]="ExportStar",s[s.ImportStar=65536]="ImportStar",s[s.ImportDefault=131072]="ImportDefault",s[s.MakeTemplateObject=262144]="MakeTemplateObject",s[s.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",s[s.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",s[s.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",s[s.SetFunctionName=4194304]="SetFunctionName",s[s.PropKey=8388608]="PropKey",s[s.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",s[s.RewriteRelativeImportExtension=33554432]="RewriteRelativeImportExtension",s[s.FirstEmitHelper=1]="FirstEmitHelper",s[s.LastEmitHelper=16777216]="LastEmitHelper",s[s.ForOfIncludes=256]="ForOfIncludes",s[s.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",s[s.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",s[s.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",s[s.SpreadIncludes=1536]="SpreadIncludes",s))(JR||{}),ty=(s=>(s[s.SourceFile=0]="SourceFile",s[s.Expression=1]="Expression",s[s.IdentifierName=2]="IdentifierName",s[s.MappedTypeParameter=3]="MappedTypeParameter",s[s.Unspecified=4]="Unspecified",s[s.EmbeddedStatement=5]="EmbeddedStatement",s[s.JsxAttributeValue=6]="JsxAttributeValue",s[s.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",s))(ty||{}),cF=(s=>(s[s.Parentheses=1]="Parentheses",s[s.TypeAssertions=2]="TypeAssertions",s[s.NonNullAssertions=4]="NonNullAssertions",s[s.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",s[s.ExpressionsWithTypeArguments=16]="ExpressionsWithTypeArguments",s[s.Satisfies=32]="Satisfies",s[s.Assertions=38]="Assertions",s[s.All=63]="All",s[s.ExcludeJSDocTypeAssertion=-2147483648]="ExcludeJSDocTypeAssertion",s))(cF||{}),$1=(s=>(s[s.None=0]="None",s[s.InParameters=1]="InParameters",s[s.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",s))($1||{}),$E=(s=>(s[s.None=0]="None",s[s.SingleLine=0]="SingleLine",s[s.MultiLine=1]="MultiLine",s[s.PreserveLines=2]="PreserveLines",s[s.LinesMask=3]="LinesMask",s[s.NotDelimited=0]="NotDelimited",s[s.BarDelimited=4]="BarDelimited",s[s.AmpersandDelimited=8]="AmpersandDelimited",s[s.CommaDelimited=16]="CommaDelimited",s[s.AsteriskDelimited=32]="AsteriskDelimited",s[s.DelimitersMask=60]="DelimitersMask",s[s.AllowTrailingComma=64]="AllowTrailingComma",s[s.Indented=128]="Indented",s[s.SpaceBetweenBraces=256]="SpaceBetweenBraces",s[s.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",s[s.Braces=1024]="Braces",s[s.Parenthesis=2048]="Parenthesis",s[s.AngleBrackets=4096]="AngleBrackets",s[s.SquareBrackets=8192]="SquareBrackets",s[s.BracketsMask=15360]="BracketsMask",s[s.OptionalIfUndefined=16384]="OptionalIfUndefined",s[s.OptionalIfEmpty=32768]="OptionalIfEmpty",s[s.Optional=49152]="Optional",s[s.PreferNewLine=65536]="PreferNewLine",s[s.NoTrailingNewLine=131072]="NoTrailingNewLine",s[s.NoInterveningComments=262144]="NoInterveningComments",s[s.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",s[s.SingleElement=1048576]="SingleElement",s[s.SpaceAfterList=2097152]="SpaceAfterList",s[s.Modifiers=2359808]="Modifiers",s[s.HeritageClauses=512]="HeritageClauses",s[s.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",s[s.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",s[s.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",s[s.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",s[s.UnionTypeConstituents=516]="UnionTypeConstituents",s[s.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",s[s.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",s[s.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",s[s.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",s[s.ImportAttributes=526226]="ImportAttributes",s[s.ImportClauseEntries=526226]="ImportClauseEntries",s[s.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",s[s.CommaListElements=528]="CommaListElements",s[s.CallExpressionArguments=2576]="CallExpressionArguments",s[s.NewExpressionArguments=18960]="NewExpressionArguments",s[s.TemplateExpressionSpans=262144]="TemplateExpressionSpans",s[s.SingleLineBlockStatements=768]="SingleLineBlockStatements",s[s.MultiLineBlockStatements=129]="MultiLineBlockStatements",s[s.VariableDeclarationList=528]="VariableDeclarationList",s[s.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",s[s.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",s[s.ClassHeritageClauses=0]="ClassHeritageClauses",s[s.ClassMembers=129]="ClassMembers",s[s.InterfaceMembers=129]="InterfaceMembers",s[s.EnumMembers=145]="EnumMembers",s[s.CaseBlockClauses=129]="CaseBlockClauses",s[s.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",s[s.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",s[s.JsxElementAttributes=262656]="JsxElementAttributes",s[s.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",s[s.HeritageClauseTypes=528]="HeritageClauseTypes",s[s.SourceFileStatements=131073]="SourceFileStatements",s[s.Decorators=2146305]="Decorators",s[s.TypeArguments=53776]="TypeArguments",s[s.TypeParameters=53776]="TypeParameters",s[s.Parameters=2576]="Parameters",s[s.IndexSignatureParameters=8848]="IndexSignatureParameters",s[s.JSDocComment=33]="JSDocComment",s))($E||{}),N_=(s=>(s[s.None=0]="None",s[s.TripleSlashXML=1]="TripleSlashXML",s[s.SingleLine=2]="SingleLine",s[s.MultiLine=4]="MultiLine",s[s.All=7]="All",s[s.Default=7]="Default",s))(N_||{}),e1={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},t1=(s=>(s[s.ParseAll=0]="ParseAll",s[s.ParseNone=1]="ParseNone",s[s.ParseForTypeErrors=2]="ParseForTypeErrors",s[s.ParseForTypeInfo=3]="ParseForTypeInfo",s))(t1||{});function ry(s){let c=5381;for(let g=0;g(s[s.Created=0]="Created",s[s.Changed=1]="Changed",s[s.Deleted=2]="Deleted",s))(yb||{}),r_=(s=>(s[s.High=2e3]="High",s[s.Medium=500]="Medium",s[s.Low=250]="Low",s))(r_||{}),Rh=new Date(0);function bb(s,c){return s.getModifiedTime(c)||Rh}function lB(s){return{250:s.Low,500:s.Medium,2e3:s.High}}var ND={Low:32,Medium:64,High:256},DD=lB(ND),q_=lB(ND);function kD(s){if(!s.getEnvironmentVariable)return;let c=h("TSC_WATCH_POLLINGINTERVAL",r_);DD=_("TSC_WATCH_POLLINGCHUNKSIZE",ND)||DD,q_=_("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",ND)||q_;function g(S,R){return s.getEnvironmentVariable(`${S}_${R.toUpperCase()}`)}function d(S){let R;return T("Low"),T("Medium"),T("High"),R;function T(W){let V=g(S,W);V&&((R||(R={}))[W]=Number(V))}}function h(S,R){let T=d(S);if(T)return W("Low"),W("Medium"),W("High"),!0;return!1;function W(V){R[V]=T[V]||R[V]}}function _(S,R){let T=d(S);return(c||T)&&lB(T?{...R,...T}:R)}}function UR(s,c,g,d,h){let _=g;for(let R=c.length;d&&R;S(),R--){let T=c[g];if(T){if(T.isClosed){c[g]=void 0;continue}}else continue;d--;let W=aE(T,bb(s,T.fileName));if(T.isClosed){c[g]=void 0;continue}h?.(T,g,W),c[g]&&(_{Te.isClosed=!0,ef(c,Te)}}}function R(_e){let Ee=[];return Ee.pollingInterval=_e,Ee.pollIndex=0,Ee.pollScheduled=!1,Ee}function T(_e,Ee){Ee.pollIndex=V(Ee,Ee.pollingInterval,Ee.pollIndex,DD[Ee.pollingInterval]),Ee.length?Ie(Ee.pollingInterval):(pe.assert(Ee.pollIndex===0),Ee.pollScheduled=!1)}function W(_e,Ee){V(g,250,0,g.length),T(_e,Ee),!Ee.pollScheduled&&g.length&&Ie(250)}function V(_e,Ee,Ne,Te){return UR(s,_e,Ne,Te,Ze);function Ze(We,Ue,$e){$e?(We.unchangedPolls=0,_e!==g&&(_e[Ue]=void 0,re(We))):We.unchangedPolls!==q_[Ee]?We.unchangedPolls++:_e===g?(We.unchangedPolls=1,_e[Ue]=void 0,ee(We,250)):Ee!==2e3&&(We.unchangedPolls++,_e[Ue]=void 0,ee(We,Ee===250?500:2e3))}}function M(_e){switch(_e){case 250:return d;case 500:return h;case 2e3:return _}}function ee(_e,Ee){M(Ee).push(_e),ge(Ee)}function re(_e){g.push(_e),ge(250)}function ge(_e){M(_e).pollScheduled||Ie(_e)}function Ie(_e){M(_e).pollScheduled=s.setTimeout(_e===250?W:T,_e,_e===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",M(_e))}}function fh(s,c,g,d){let h=dl(),_=d?new Map:void 0,S=new Map,R=_d(c);return T;function T(V,M,ee,re){let ge=R(V);h.add(ge,M).length===1&&_&&_.set(ge,g(V)||Rh);let Ie=Mo(ge)||".",_e=S.get(Ie)||W(Mo(V)||".",Ie,re);return _e.referenceCount++,{close:()=>{_e.referenceCount===1?(_e.close(),S.delete(Ie)):_e.referenceCount--,h.remove(ge,M)}}}function W(V,M,ee){let re=s(V,1,(ge,Ie)=>{if(!Xs(Ie))return;let _e=Xc(Ie,V),Ee=R(_e),Ne=_e&&h.get(Ee);if(Ne){let Te,Ze=1;if(_){let We=_.get(Ee);if(ge==="change"&&(Te=g(_e)||Rh,Te.getTime()===We.getTime()))return;Te||(Te=g(_e)||Rh),_.set(Ee,Te),We===Rh?Ze=0:Te===Rh&&(Ze=2)}for(let We of Ne)We(_e,Ze,Te)}},!1,500,ee);return re.referenceCount=0,S.set(M,re),re}}function rf(s){let c=[],g=0,d;return h;function h(R,T){let W={fileName:R,callback:T,mtime:bb(s,R)};return c.push(W),S(),{close:()=>{W.isClosed=!0,ef(c,W)}}}function _(){d=void 0,g=UR(s,c,g,DD[250]),S()}function S(){!c.length||d||(d=s.setTimeout(_,2e3,"pollQueue"))}}function yI(s,c,g,d,h){let S=_d(c)(g),R=s.get(S);return R?R.callbacks.push(d):s.set(S,{watcher:h((T,W,V)=>{var M;return(M=s.get(S))==null?void 0:M.callbacks.slice().forEach(ee=>ee(T,W,V))}),callbacks:[d]}),{close:()=>{let T=s.get(S);T&&(!Ql(T.callbacks,d)||T.callbacks.length||(s.delete(S),Cv(T)))}}}function aE(s,c){let g=s.mtime.getTime(),d=c.getTime();return g!==d?(s.mtime=c,s.callback(s.fileName,qS(g,d),c),!0):!1}function qS(s,c){return s===0?0:c===0?2:1}var Qp=["/node_modules/.","/.git","/.#"],uB=Dc;function Ih(s){return uB(s)}function xC(s){uB=s}function $_({watchDirectory:s,useCaseSensitiveFileNames:c,getCurrentDirectory:g,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:h,realpath:_,setTimeout:S,clearTimeout:R}){let T=new Map,W=dl(),V=new Map,M,ee=ld(!c),re=_d(c);return(Ye,Tt,ot,Qe)=>ot?ge(Ye,Qe,Tt):s(Ye,Tt,ot,Qe);function ge(Ye,Tt,ot,Qe){let mt=re(Ye),ht=T.get(mt);ht?ht.refCount++:(ht={watcher:s(Ye,Rt=>{var Lt;Ue(Rt,Tt)||(Tt?.synchronousWatchDirectory?((Lt=T.get(mt))!=null&&Lt.targetWatcher||Ie(Ye,mt,Rt),We(Ye,mt,Tt)):_e(Ye,mt,Rt,Tt))},!1,Tt),refCount:1,childWatches:E,targetWatcher:void 0,links:void 0},T.set(mt,ht),We(Ye,mt,Tt)),Qe&&(ht.links??(ht.links=new Set)).add(Qe);let _t=ot&&{dirName:Ye,callback:ot};return _t&&W.add(mt,_t),{dirName:Ye,close:()=>{var Rt;let Lt=pe.checkDefined(T.get(mt));_t&&W.remove(mt,_t),Qe&&((Rt=Lt.links)==null||Rt.delete(Qe)),Lt.refCount--,!Lt.refCount&&(T.delete(mt),Lt.links=void 0,Cv(Lt),Ze(Lt),Lt.childWatches.forEach(dv))}}}function Ie(Ye,Tt,ot,Qe){var mt,ht;let _t,Rt;Xs(ot)?_t=ot:Rt=ot,W.forEach((Lt,Ke)=>{if(!(Rt&&Rt.get(Ke)===!0)&&(Ke===Tt||Ac(Tt,Ke)&&Tt[Ke.length]===ag))if(Rt)if(Qe){let Pt=Rt.get(Ke);Pt?Pt.push(...Qe):Rt.set(Ke,Qe.slice())}else Rt.set(Ke,!0);else Lt.forEach(({callback:Pt})=>Pt(_t))}),(ht=(mt=T.get(Tt))==null?void 0:mt.links)==null||ht.forEach(Lt=>{let Ke=Pt=>Ro(Lt,mp(Ye,Pt,re));Rt?Ie(Lt,re(Lt),Rt,Qe?.map(Ke)):Ie(Lt,re(Lt),Ke(_t))})}function _e(Ye,Tt,ot,Qe){let mt=T.get(Tt);if(mt&&h(Ye,1)){Ee(Ye,Tt,ot,Qe);return}Ie(Ye,Tt,ot),Ze(mt),Te(mt)}function Ee(Ye,Tt,ot,Qe){let mt=V.get(Tt);mt?mt.fileNames.push(ot):V.set(Tt,{dirName:Ye,options:Qe,fileNames:[ot]}),M&&(R(M),M=void 0),M=S(Ne,1e3,"timerToUpdateChildWatches")}function Ne(){var Ye;M=void 0,Ih(`sysLog:: onTimerToUpdateChildWatches:: ${V.size}`);let Tt=Fg(),ot=new Map;for(;!M&&V.size;){let mt=V.entries().next();pe.assert(!mt.done);let{value:[ht,{dirName:_t,options:Rt,fileNames:Lt}]}=mt;V.delete(ht);let Ke=We(_t,ht,Rt);(Ye=T.get(ht))!=null&&Ye.targetWatcher||Ie(_t,ht,ot,Ke?void 0:Lt)}Ih(`sysLog:: invokingWatchers:: Elapsed:: ${Fg()-Tt}ms:: ${V.size}`),W.forEach((mt,ht)=>{let _t=ot.get(ht);_t&&mt.forEach(({callback:Rt,dirName:Lt})=>{Ki(_t)?_t.forEach(Rt):Rt(Lt)})});let Qe=Fg()-Tt;Ih(`sysLog:: Elapsed:: ${Qe}ms:: onTimerToUpdateChildWatches:: ${V.size} ${M}`)}function Te(Ye){if(!Ye)return;let Tt=Ye.childWatches;Ye.childWatches=E;for(let ot of Tt)ot.close(),Te(T.get(re(ot.dirName)))}function Ze(Ye){Ye?.targetWatcher&&(Ye.targetWatcher.close(),Ye.targetWatcher=void 0)}function We(Ye,Tt,ot){let Qe=T.get(Tt);if(!Qe)return!1;let mt=iu(_(Ye)),ht,_t;return ee(mt,Ye)===0?ht=q0(h(Ye,1)?Xt(d(Ye),Ke=>{let Pt=Xc(Ke,Ye);return!Ue(Pt,ot)&&ee(Pt,iu(_(Pt)))===0?Pt:void 0}):E,Qe.childWatches,(Ke,Pt)=>ee(Ke,Pt.dirName),Rt,dv,Lt):Qe.targetWatcher&&ee(mt,Qe.targetWatcher.dirName)===0?(ht=!1,pe.assert(Qe.childWatches===E)):(Ze(Qe),Qe.targetWatcher=ge(mt,ot,void 0,Ye),Qe.childWatches.forEach(dv),ht=!0),Qe.childWatches=_t||E,ht;function Rt(Ke){let Pt=ge(Ke,ot);Lt(Pt)}function Lt(Ke){(_t||(_t=[])).push(Ke)}}function Ue(Ye,Tt){return jt(Qp,ot=>$e(Ye,ot))||GT(Ye,Tt,c,g)}function $e(Ye,Tt){return Ye.includes(Tt)?!0:c?!1:re(Ye).includes(Tt)}}var r1=(s=>(s[s.File=0]="File",s[s.Directory=1]="Directory",s))(r1||{});function gB(s){return(c,g,d)=>s(g===1?"change":"rename","",d)}function hw(s,c,g){return(d,h,_)=>{d==="rename"?(_||(_=g(s)||Rh),c(s,_!==Rh?0:2,_)):c(s,1,_)}}function GT(s,c,g,d){return(c?.excludeDirectories||c?.excludeFiles)&&(v9e(s,c?.excludeFiles,g,d())||v9e(s,c?.excludeDirectories,g,d()))}function b0(s,c,g,d,h){return(_,S)=>{if(_==="rename"){let R=S?iu(Ro(s,S)):s;(!S||!GT(R,g,d,h))&&c(R)}}}function ia({pollingWatchFileWorker:s,getModifiedTime:c,setTimeout:g,clearTimeout:d,fsWatchWorker:h,fileSystemEntryExists:_,useCaseSensitiveFileNames:S,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:T,getAccessibleSortedChildDirectories:W,realpath:V,tscWatchFile:M,useNonPollingWatchers:ee,tscWatchDirectory:re,inodeWatching:ge,fsWatchWithTimestamp:Ie,sysLog:_e}){let Ee=new Map,Ne=new Map,Te=new Map,Ze,We,Ue,$e,Ye=!1;return{watchFile:Tt,watchDirectory:_t};function Tt(nt,Dt,tr,ur){ur=mt(ur,ee);let Gr=pe.checkDefined(ur.watchFile);switch(Gr){case 0:return Ke(nt,Dt,250,void 0);case 1:return Ke(nt,Dt,tr,void 0);case 2:return ot()(nt,Dt,tr,void 0);case 3:return Qe()(nt,Dt,void 0,void 0);case 4:return Pt(nt,0,hw(nt,Dt,c),!1,tr,QEe(ur));case 5:return Ue||(Ue=fh(Pt,S,c,Ie)),Ue(nt,Dt,tr,QEe(ur));default:pe.assertNever(Gr)}}function ot(){return Ze||(Ze=lc({getModifiedTime:c,setTimeout:g}))}function Qe(){return We||(We=rf({getModifiedTime:c,setTimeout:g}))}function mt(nt,Dt){if(nt&&nt.watchFile!==void 0)return nt;switch(M){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return ht(4,1,nt);case"UseFsEventsWithFallbackDynamicPolling":return ht(4,2,nt);case"UseFsEventsOnParentDirectory":Dt=!0;default:return Dt?ht(5,1,nt):{watchFile:4}}}function ht(nt,Dt,tr){let ur=tr?.fallbackPolling;return{watchFile:nt,fallbackPolling:ur===void 0?Dt:ur}}function _t(nt,Dt,tr,ur){return T?Pt(nt,1,b0(nt,Dt,ur,S,R),tr,500,QEe(ur)):($e||($e=$_({useCaseSensitiveFileNames:S,getCurrentDirectory:R,fileSystemEntryExists:_,getAccessibleSortedChildDirectories:W,watchDirectory:Rt,realpath:V,setTimeout:g,clearTimeout:d})),$e(nt,Dt,tr,ur))}function Rt(nt,Dt,tr,ur){pe.assert(!tr);let Gr=Lt(ur),dt=pe.checkDefined(Gr.watchDirectory);switch(dt){case 1:return Ke(nt,()=>Dt(nt),500,void 0);case 2:return ot()(nt,()=>Dt(nt),500,void 0);case 3:return Qe()(nt,()=>Dt(nt),void 0,void 0);case 0:return Pt(nt,1,b0(nt,Dt,ur,S,R),tr,500,QEe(Gr));default:pe.assertNever(dt)}}function Lt(nt){if(nt&&nt.watchDirectory!==void 0)return nt;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let Dt=nt?.fallbackPolling;return{watchDirectory:0,fallbackPolling:Dt!==void 0?Dt:void 0}}}function Ke(nt,Dt,tr,ur){return yI(Ee,S,nt,Dt,Gr=>s(nt,Gr,tr,ur))}function Pt(nt,Dt,tr,ur,Gr,dt){return yI(ur?Te:Ne,S,nt,tr,pr=>_r(nt,Dt,pr,ur,Gr,dt))}function _r(nt,Dt,tr,ur,Gr,dt){let pr,st;ge&&(pr=nt.substring(nt.lastIndexOf(ag)),st=pr.slice(ag.length));let ir=_(nt,Dt)?Ht():jn();return{close:()=>{ir&&(ir.close(),ir=void 0)}};function zt(Zi){ir&&(_e(`sysLog:: ${nt}:: Changing watcher to ${Zi===Ht?"Present":"Missing"}FileSystemEntryWatcher`),ir.close(),ir=Zi())}function Ht(){if(Ye)return _e(`sysLog:: ${nt}:: Defaulting to watchFile`),mn();try{let Zi=(Dt===1||!Ie?h:Gt)(nt,ur,ge?Br:tr);return Zi.on("error",()=>{tr("rename",""),zt(jn)}),Zi}catch(Zi){return Ye||(Ye=Zi.code==="ENOSPC"),_e(`sysLog:: ${nt}:: Changing to watchFile`),mn()}}function Br(Zi,Ns){let An;if(Ns&&di(Ns,"~")&&(An=Ns,Ns=Ns.slice(0,Ns.length-1)),Zi==="rename"&&(!Ns||Ns===st||di(Ns,pr))){let si=c(nt)||Rh;An&&tr(Zi,An,si),tr(Zi,Ns,si),ge?zt(si===Rh?jn:Ht):si===Rh&&zt(jn)}else An&&tr(Zi,An),tr(Zi,Ns)}function mn(){return Tt(nt,gB(tr),Gr,dt)}function jn(){return Tt(nt,(Zi,Ns,An)=>{Ns===0&&(An||(An=c(nt)||Rh),An!==Rh&&(tr("rename","",An),zt(Ht)))},Gr,dt)}}function Gt(nt,Dt,tr){let ur=c(nt)||Rh;return h(nt,Dt,(Gr,dt,pr)=>{Gr==="change"&&(pr||(pr=c(nt)||Rh),pr.getTime()===ur.getTime())||(ur=pr||c(nt)||Rh,tr(Gr,dt,ur))})}}function e2(s){let c=s.writeFile;s.writeFile=(g,d,h)=>Qye(g,d,!!h,(_,S,R)=>c.call(s,_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_))}var yd=(()=>{let s="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(?:internal[\\/]|[\w\s]+(?:\.js)?$)/,h=wt("fs"),_=wt("path"),S=wt("os"),R;try{R=wt("crypto")}catch{R=void 0}let T,W="./profile.cpuprofile",V=process.platform==="darwin",M=process.platform==="linux"||V,ee={throwIfNoEntry:!1},re=S.platform(),ge=ot(),Ie=h.realpathSync.native?process.platform==="win32"?Dt:h.realpathSync.native:h.realpathSync,_e=__filename.endsWith("sys.js")?_.join(_.dirname(__dirname),"__fake__.js"):__filename,Ee=process.platform==="win32"||V,Ne=FA(()=>process.cwd()),{watchFile:Te,watchDirectory:Ze}=ia({pollingWatchFileWorker:mt,getModifiedTime:ur,setTimeout,clearTimeout,fsWatchWorker:ht,useCaseSensitiveFileNames:ge,getCurrentDirectory:Ne,fileSystemEntryExists:Pt,fsSupportsRecursiveFsWatch:Ee,getAccessibleSortedChildDirectories:st=>Lt(st).directories,realpath:tr,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:M,fsWatchWithTimestamp:V,sysLog:Ih}),We={args:process.argv.slice(2),newLine:S.EOL,useCaseSensitiveFileNames:ge,write(st){process.stdout.write(st)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:_t,writeFile:Rt,watchFile:Te,watchDirectory:Ze,preferNonRecursiveWatch:!Ee,resolvePath:st=>_.resolve(st),fileExists:_r,directoryExists:Gt,getAccessibleFileSystemEntries:Lt,createDirectory(st){if(!We.directoryExists(st))try{h.mkdirSync(st)}catch(ir){if(ir.code!=="EEXIST")throw ir}},getExecutingFilePath(){return _e},getCurrentDirectory:Ne,getDirectories:nt,getEnvironmentVariable(st){return process.env[st]||""},readDirectory:Ke,getModifiedTime:ur,setModifiedTime:Gr,deleteFile:dt,createHash:R?pr:ry,createSHA256Hash:R?pr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(st){let ir=Ue(st);return ir?.isFile()?ir.size:0},exit(st){Tt(()=>process.exit(st))},enableCPUProfiler:$e,disableCPUProfiler:Tt,cpuProfilingEnabled:()=>!!T||k(process.execArgv,"--cpu-prof")||k(process.execArgv,"--prof"),realpath:tr,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||jt(process.execArgv,st=>/^--(?:inspect|debug)(?:-brk)?(?:=\d+)?$/i.test(st))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{wt("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")},setBlocking:()=>{var st;let ir=(st=process.stdout)==null?void 0:st._handle;ir&&ir.setBlocking&&ir.setBlocking(!0)},base64decode:st=>Buffer.from(st,"base64").toString("utf8"),base64encode:st=>Buffer.from(st).toString("base64"),require:(st,ir)=>{try{let zt=KWt(ir,st,We);return{module:wt(zt),modulePath:zt,error:void 0}}catch(zt){return{module:void 0,modulePath:void 0,error:zt}}}};return We;function Ue(st){try{return h.statSync(st,ee)}catch{return}}function $e(st,ir){if(T)return ir(),!1;let zt=wt("inspector");if(!zt||!zt.Session)return ir(),!1;let Ht=new zt.Session;return Ht.connect(),Ht.post("Profiler.enable",()=>{Ht.post("Profiler.start",()=>{T=Ht,W=st,ir()})}),!0}function Ye(st){let ir=0,zt=new Map,Ht=Dp(_.dirname(_e)),Br=`file://${Wf(Ht)===1?"":"/"}${Ht}`;for(let mn of st.nodes)if(mn.callFrame.url){let jn=Dp(mn.callFrame.url);Jh(Br,jn,ge)?mn.callFrame.url=Of(Br,jn,Br,_d(ge),!0):d.test(jn)||(mn.callFrame.url=(zt.has(jn)?zt:zt.set(jn,`external${ir}.js`)).get(jn),ir++)}return st}function Tt(st){if(T&&T!=="stopping"){let ir=T;return T.post("Profiler.stop",(zt,{profile:Ht})=>{var Br;if(!zt){(Br=Ue(W))!=null&&Br.isDirectory()&&(W=_.join(W,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`));try{h.mkdirSync(_.dirname(W),{recursive:!0})}catch{}h.writeFileSync(W,JSON.stringify(Ye(Ht)))}T=void 0,ir.disconnect(),st()}),T="stopping",!0}else return st(),!1}function ot(){return typeof process.versions.pnp<"u"?!0:re==="win32"||re==="win64"?!1:!_r(Qe(__filename))}function Qe(st){return st.replace(/\w/g,ir=>{let zt=ir.toUpperCase();return ir===zt?ir.toLowerCase():zt})}function mt(st,ir,zt){h.watchFile(st,{persistent:!0,interval:zt},Br);let Ht;return{close:()=>h.unwatchFile(st,Br)};function Br(mn,jn){let Zi=+jn.mtime==0||Ht===2;if(+mn.mtime==0){if(Zi)return;Ht=2}else if(Zi)Ht=0;else{if(+mn.mtime==+jn.mtime)return;Ht=1}ir(st,Ht,mn.mtime)}}function ht(st,ir,zt){return h.watch(st,Ee?{persistent:!0,recursive:!!ir}:{persistent:!0},zt)}function _t(st,ir){let zt;try{zt=h.readFileSync(st)}catch{return}let Ht=zt.length;if(Ht>=2&&zt[0]===254&&zt[1]===255){Ht&=-2;for(let Br=0;Br=2&&zt[0]===255&&zt[1]===254?zt.toString("utf16le",2):Ht>=3&&zt[0]===239&&zt[1]===187&&zt[2]===191?zt.toString("utf8",3):zt.toString("utf8")}function Rt(st,ir,zt){zt&&(ir=s+ir);let Ht;try{Ht=h.openSync(st,"w"),h.writeSync(Ht,ir,void 0,"utf8")}finally{Ht!==void 0&&h.closeSync(Ht)}}function Lt(st){try{let ir=h.readdirSync(st||".",{withFileTypes:!0}),zt=[],Ht=[];for(let Br of ir){let mn=typeof Br=="string"?Br:Br.name;if(mn==="."||mn==="..")continue;let jn;if(typeof Br=="string"||Br.isSymbolicLink()){let Zi=Ro(st,mn);if(jn=Ue(Zi),!jn)continue}else jn=Br;jn.isFile()?zt.push(mn):jn.isDirectory()&&Ht.push(mn)}return zt.sort(),Ht.sort(),{files:zt,directories:Ht}}catch{return wbe}}function Ke(st,ir,zt,Ht,Br){return Sbe(st,ir,zt,Ht,ge,process.cwd(),Br,Lt,tr)}function Pt(st,ir){let zt=Ue(st);if(!zt)return!1;switch(ir){case 0:return zt.isFile();case 1:return zt.isDirectory();default:return!1}}function _r(st){return Pt(st,0)}function Gt(st){return Pt(st,1)}function nt(st){return Lt(st).directories.slice()}function Dt(st){return st.length<260?h.realpathSync.native(st):h.realpathSync(st)}function tr(st){try{return Ie(st)}catch{return st}}function ur(st){var ir;return(ir=Ue(st))==null?void 0:ir.mtime}function Gr(st,ir){try{h.utimesSync(st,ir,ir)}catch{return}}function dt(st){try{return h.unlinkSync(st)}catch{return}}function pr(st){let ir=R.createHash("sha256");return ir.update(st),ir.digest("hex")}}let g;return Mm()&&(g=c()),g&&e2(g),g})();function bI(s){yd=s}yd&&yd.getEnvironmentVariable&&(kD(yd),pe.setAssertionLevel(/^development$/i.test(yd.getEnvironmentVariable("NODE_ENV"))?1:0)),yd&&yd.debugMode&&(pe.isDebugging=!0);var ag="/",Eb="\\",n1="://",U2=/\\/g;function e0(s){return s===47||s===92}function n_(s){return eh(s)<0}function Xp(s){return eh(s)>0}function cE(s){let c=eh(s);return c>0&&c===s.length}function lE(s){return eh(s)!==0}function Ip(s){return/^\.\.?(?:$|[\\/])/.test(s)}function Xh(s){return!lE(s)&&!Ip(s)}function E0(s){return gp(s).includes(".")}function aA(s,c){return s.length>c.length&&di(s,c)}function fu(s,c){for(let g of c)if(aA(s,g))return!0;return!1}function Jp(s){return s.length>0&&e0(s.charCodeAt(s.length-1))}function dC(s){return s>=97&&s<=122||s>=65&&s<=90}function uE(s,c){let g=s.charCodeAt(c);if(g===58)return c+1;if(g===37&&s.charCodeAt(c+1)===51){let d=s.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function eh(s){if(!s)return 0;let c=s.charCodeAt(0);if(c===47||c===92){if(s.charCodeAt(1)!==c)return 1;let d=s.indexOf(c===47?ag:Eb,2);return d<0?s.length:d+1}if(dC(c)&&s.charCodeAt(1)===58){let d=s.charCodeAt(2);if(d===47||d===92)return 3;if(s.length===2)return 2}let g=s.indexOf(n1);if(g!==-1){let d=g+n1.length,h=s.indexOf(ag,d);if(h!==-1){let _=s.slice(0,g),S=s.slice(d,h);if(_==="file"&&(S===""||S==="localhost")&&dC(s.charCodeAt(h+1))){let R=uE(s,h+2);if(R!==-1){if(s.charCodeAt(R)===47)return~(R+1);if(R===s.length)return~R}}return~(h+1)}return~s.length}return 0}function Wf(s){let c=eh(s);return c<0?~c:c}function Mo(s){s=Dp(s);let c=Wf(s);return c===s.length?s:(s=ny(s),s.slice(0,Math.max(c,s.lastIndexOf(ag))))}function gp(s,c,g){if(s=Dp(s),Wf(s)===s.length)return"";s=ny(s);let h=s.slice(Math.max(Wf(s),s.lastIndexOf(ag)+1)),_=c!==void 0&&g!==void 0?gE(h,c,g):void 0;return _?h.slice(0,h.length-_.length):h}function lF(s,c,g){if(Ac(c,".")||(c="."+c),s.length>=c.length&&s.charCodeAt(s.length-c.length)===46){let d=s.slice(s.length-c.length);if(g(d,c))return d}}function uF(s,c,g){if(typeof c=="string")return lF(s,c,g)||"";for(let d of c){let h=lF(s,d,g);if(h)return h}return""}function gE(s,c,g){if(c)return uF(ny(s),c,g?Mp:MA);let d=gp(s),h=d.lastIndexOf(".");return h>=0?d.substring(h):""}function FT(s,c){let g=s.substring(0,c),d=s.substring(c).split(ag);return d.length&&!li(d)&&d.pop(),[g,...d]}function Np(s,c=""){return s=Ro(c,s),FT(s,Wf(s))}function Dm(s,c){return s.length===0?"":(s[0]&&hp(s[0]))+s.slice(1,c).join(ag)}function Dp(s){return s.includes("\\")?s.replace(U2,ag):s}function t2(s){if(!jt(s))return[];let c=[s[0]];for(let g=1;g1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function Ro(s,...c){s&&(s=Dp(s));for(let g of c)g&&(g=Dp(g),!s||Wf(g)!==0?s=g:s=hp(s)+g);return s}function AE(s,...c){return iu(jt(c)?Ro(s,...c):Dp(s))}function AB(s,c){return t2(Np(s,c))}function Xc(s,c){let g=Wf(s);g===0&&c?(s=Ro(c,s),g=Wf(s)):s=Dp(s);let d=dE(s);if(d!==void 0)return d.length>g?ny(d):d;let h=s.length,_=s.substring(0,g),S,R=g,T=R,W=R,V=g!==0;for(;RT&&(S??(S=s.substring(0,T-1)),T=R);let ee=s.indexOf(ag,R+1);ee===-1&&(ee=h);let re=ee-T;if(re===1&&s.charCodeAt(R)===46)S??(S=s.substring(0,W));else if(re===2&&s.charCodeAt(R)===46&&s.charCodeAt(R+1)===46)if(!V)S!==void 0?S+=S.length===g?"..":"/..":W=R+2;else if(S===void 0)W-2>=0?S=s.substring(0,Math.max(g,s.lastIndexOf(ag,W-2))):S=s.substring(0,W);else{let ge=S.lastIndexOf(ag);ge!==-1?S=S.substring(0,Math.max(g,ge)):S=_,S.length===g&&(V=g!==0)}else S!==void 0?(S.length!==g&&(S+=ag),V=!0,S+=s.substring(T,ee)):(V=!0,W=ee);R=ee+1}return S??(h>g?ny(s):s)}function iu(s){s=Dp(s);let c=dE(s);return c!==void 0?c:(c=Xc(s,""),c&&Jp(s)?hp(c):c)}function dE(s){if(!dB.test(s))return s;let c=s.replace(/\/\.\//g,"/");if(c.startsWith("./")&&(c=c.slice(2)),c!==s&&(s=c,!dB.test(s)))return s}function yL(s){return s.length===0?"":s.slice(1).join(ag)}function KR(s,c){return yL(AB(s,c))}function Ou(s,c,g){let d=Xp(s)?iu(s):Xc(s,c);return g(d)}function ny(s){return Jp(s)?s.substr(0,s.length-1):s}function hp(s){return Jp(s)?s:s+ag}function Am(s){return!lE(s)&&!Ip(s)?"./"+s:s}function K2(s,c,g,d){let h=g!==void 0&&d!==void 0?gE(s,g,d):gE(s);return h?s.slice(0,s.length-h.length)+(Ac(c,".")?c:"."+c):s}function i_(s,c){let g=g9e(s);return g?s.slice(0,s.length-g.length)+(Ac(c,".")?c:"."+c):K2(s,c)}var dB=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function ZT(s,c,g){if(s===c)return 0;if(s===void 0)return-1;if(c===void 0)return 1;let d=s.substring(0,Wf(s)),h=c.substring(0,Wf(c)),_=Fs(d,h);if(_!==0)return _;let S=s.substring(d.length),R=c.substring(h.length);if(!dB.test(S)&&!dB.test(R))return g(S,R);let T=t2(Np(s)),W=t2(Np(c)),V=Math.min(T.length,W.length);for(let M=1;M0==Wf(c)>0,"Paths must either both be absolute or both be relative");let _=Sb(s,c,(typeof g=="boolean"?g:!1)?Mp:MA,typeof g=="function"?g:Fl);return Dm(_)}function r2(s,c,g){return Xp(s)?Of(c,s,c,g,!1):s}function i1(s,c,g){return Am(mp(Mo(s),c,g))}function Of(s,c,g,d,h){let _=Sb(AE(g,s),AE(g,c),MA,d),S=_[0];if(h&&Xp(S)){let R=S.charAt(0)===ag?"file://":"file:///";_[0]=R+S}return Dm(_)}function pE(s,c){for(;;){let g=c(s);if(g!==void 0)return g;let d=Mo(s);if(d===s)return;s=d}}function Vd(s){return di(s,"/node_modules")}function j(s,c,g,d,h,_,S){return{code:s,category:c,key:g,message:d,reportsUnnecessary:h,elidedInCompatabilityPyramid:_,reportsDeprecated:S}}var Z={Unterminated_string_literal:j(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:j(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:j(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:j(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:j(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:j(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:j(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:j(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:j(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:j(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:j(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:j(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:j(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:j(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:j(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:j(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:j(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:j(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:j(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:j(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:j(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:j(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:j(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:j(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:j(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:j(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:j(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:j(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:j(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:j(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:j(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:j(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:j(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:j(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:j(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:j(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:j(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:j(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:j(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:j(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:j(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:j(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:j(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:j(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:j(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:j(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:j(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:j(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:j(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:j(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:j(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:j(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:j(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:j(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:j(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:j(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:j(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:j(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:j(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:j(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:j(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:j(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:j(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:j(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:j(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:j(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:j(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:j(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:j(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:j(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:j(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:j(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:j(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:j(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:j(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:j(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:j(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:j(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:j(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:j(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:j(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:j(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:j(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:j(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:j(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:j(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:j(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:j(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:j(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:j(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:j(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:j(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:j(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:j(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:j(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:j(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:j(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:j(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:j(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:j(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:j(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:j(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:j(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:j(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:j(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:j(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:j(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:j(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:j(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:j(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:j(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:j(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:j(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:j(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:j(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:j(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:j(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:j(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:j(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:j(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:j(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:j(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:j(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:j(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:j(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:j(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:j(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:j(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:j(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:j(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:j(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:j(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:j(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:j(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:j(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:j(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:j(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:j(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:j(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:j(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:j(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:j(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:j(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:j(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:j(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:j(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:j(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:j(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:j(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:j(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:j(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:j(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:j(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:j(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:j(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:j(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:j(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:j(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:j(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:j(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:j(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:j(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:j(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:j(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:j(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:j(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:j(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:j(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:j(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:j(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:j(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:j(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:j(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:j(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:j(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:j(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:j(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:j(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:j(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:j(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:j(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:j(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:j(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:j(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:j(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:j(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:j(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:j(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:j(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:j(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:j(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:j(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:j(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:j(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:j(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:j(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:j(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:j(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:j(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:j(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:j(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:j(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:j(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:j(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:j(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:j(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:j(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:j(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:j(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:j(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:j(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:j(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:j(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:j(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:j(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:j(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:j(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:j(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:j(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:j(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:j(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:j(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:j(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:j(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:j(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:j(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:j(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:j(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:j(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:j(1286,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_1286","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:j(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:j(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:j(1293,1,"ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ECMAScript module syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled:j(1294,1,"This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled_1294","This syntax is not allowed when 'erasableSyntaxOnly' is enabled."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript:j(1295,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjus_1295","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'. Adjust the 'type' field in the nearest 'package.json' to make this file an ECMAScript module, or adjust your 'verbatimModuleSyntax', 'module', and 'moduleResolution' settings in TypeScript."),with_statements_are_not_allowed_in_an_async_function_block:j(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:j(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:j(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:j(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:j(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:j(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:j(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:j(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:j(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:j(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext:j(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', 'node18', 'node20', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve:j(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'node18', 'node20', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:j(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:j(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:j(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:j(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:j(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:j(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:j(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:j(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:j(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:j(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:j(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:j(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:j(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:j(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:j(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:j(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext:j(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', or 'nodenext'."),A_label_is_not_allowed_here:j(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:j(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:j(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:j(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:j(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:j(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:j(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:j(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:j(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:j(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:j(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:j(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:j(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:j(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:j(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:j(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:j(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:j(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:j(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:j(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:j(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:j(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:j(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:j(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:j(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:j(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:j(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:j(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:j(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:j(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:j(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:j(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:j(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:j(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:j(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:j(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:j(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:j(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:j(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:j(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:j(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:j(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:j(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:j(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:j(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:j(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:j(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:j(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:j(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:j(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:j(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:j(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:j(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:j(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:j(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:j(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:j(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:j(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:j(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:j(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:j(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:j(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:j(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:j(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:j(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:j(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:j(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:j(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:j(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:j(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:j(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:j(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:j(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:j(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:j(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:j(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:j(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:j(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:j(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:j(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:j(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:j(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:j(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:j(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:j(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:j(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:j(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:j(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:j(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:j(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:j(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:j(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:j(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:j(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:j(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:j(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:j(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:j(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:j(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:j(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:j(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:j(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:j(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:j(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:j(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:j(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:j(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:j(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:j(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:j(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:j(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:j(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:j(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:j(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:j(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:j(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:j(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:j(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:j(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:j(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:j(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:j(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:j(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:j(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:j(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:j(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:j(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:j(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:j(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:j(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:j(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:j(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:j(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:j(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:j(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:j(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:j(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:j(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:j(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:j(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:j(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:j(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:j(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:j(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:j(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:j(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:j(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:j(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:j(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:j(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:j(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:j(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:j(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:j(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:j(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:j(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:j(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:j(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:j(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:j(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:j(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:j(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:j(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:j(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:j(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:j(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:j(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:j(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:j(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:j(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:j(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:j(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),using_declarations_are_not_allowed_in_ambient_contexts:j(1545,1,"using_declarations_are_not_allowed_in_ambient_contexts_1545","'using' declarations are not allowed in ambient contexts."),await_using_declarations_are_not_allowed_in_ambient_contexts:j(1546,1,"await_using_declarations_are_not_allowed_in_ambient_contexts_1546","'await using' declarations are not allowed in ambient contexts."),The_types_of_0_are_incompatible_between_these_types:j(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:j(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:j(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:j(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:j(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:j(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:j(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:j(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:j(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:j(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:j(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:j(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:j(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:j(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:j(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:j(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:j(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:j(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:j(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:j(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:j(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:j(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:j(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:j(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:j(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:j(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:j(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:j(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:j(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:j(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:j(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:j(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:j(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:j(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:j(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:j(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:j(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:j(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:j(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:j(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:j(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:j(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:j(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:j(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:j(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:j(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:j(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:j(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:j(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:j(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:j(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:j(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:j(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:j(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:j(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:j(2346,1,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:j(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:j(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:j(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:j(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:j(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:j(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:j(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:j(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:j(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:j(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:j(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:j(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:j(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:j(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:j(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:j(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:j(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:j(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:j(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:j(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:j(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:j(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:j(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:j(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:j(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:j(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:j(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:j(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:j(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:j(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:j(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:j(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:j(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:j(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:j(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:j(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:j(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:j(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:j(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:j(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:j(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:j(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:j(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:j(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:j(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:j(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:j(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:j(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:j(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:j(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:j(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:j(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:j(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:j(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:j(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:j(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:j(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:j(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:j(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:j(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:j(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:j(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:j(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:j(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:j(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:j(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:j(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:j(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:j(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:j(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:j(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:j(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:j(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:j(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:j(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:j(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:j(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:j(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:j(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:j(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:j(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:j(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:j(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:j(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:j(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:j(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:j(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:j(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:j(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:j(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:j(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:j(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:j(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:j(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:j(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:j(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:j(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:j(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:j(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:j(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:j(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:j(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:j(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:j(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:j(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:j(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:j(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:j(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:j(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:j(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:j(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:j(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:j(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:j(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:j(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:j(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:j(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:j(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:j(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:j(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:j(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:j(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:j(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:j(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:j(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:j(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:j(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:j(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:j(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:j(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:j(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:j(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:j(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:j(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:j(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:j(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:j(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:j(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:j(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:j(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:j(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:j(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:j(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:j(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:j(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:j(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:j(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:j(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:j(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:j(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:j(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:j(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:j(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:j(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:j(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:j(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:j(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:j(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:j(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:j(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:j(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:j(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:j(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:j(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:j(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:j(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:j(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:j(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:j(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:j(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:j(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:j(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:j(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:j(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:j(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:j(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:j(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:j(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:j(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:j(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:j(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:j(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:j(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:j(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:j(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:j(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:j(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:j(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:j(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:j(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:j(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:j(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:j(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:j(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:j(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:j(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:j(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:j(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:j(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:j(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:j(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:j(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:j(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:j(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:j(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:j(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:j(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:j(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:j(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:j(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:j(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:j(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:j(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:j(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:j(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:j(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:j(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:j(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:j(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:j(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:j(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:j(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:j(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:j(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:j(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:j(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:j(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:j(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:j(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:j(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:j(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:j(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:j(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:j(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:j(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:j(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:j(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:j(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:j(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:j(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:j(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:j(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:j(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:j(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:j(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:j(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:j(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:j(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:j(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:j(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:j(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:j(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:j(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:j(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:j(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:j(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:j(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:j(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:j(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:j(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:j(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:j(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:j(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:j(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:j(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:j(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:j(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:j(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:j(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:j(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:j(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:j(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:j(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:j(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:j(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:j(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:j(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:j(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:j(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:j(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:j(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:j(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:j(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:j(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:j(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:j(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:j(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:j(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:j(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:j(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:j(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:j(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:j(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:j(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:j(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:j(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:j(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:j(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:j(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:j(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:j(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:j(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:j(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:j(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:j(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:j(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:j(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:j(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:j(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:j(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:j(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:j(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:j(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:j(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:j(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:j(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:j(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:j(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:j(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:j(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:j(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:j(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0:j(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 and above with module {0}."),Cannot_find_lib_definition_for_0:j(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:j(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:j(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:j(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:j(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:j(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:j(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:j(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:j(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:j(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:j(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:j(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:j(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:j(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:j(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:j(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:j(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:j(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:j(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:j(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:j(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:j(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:j(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:j(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:j(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:j(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:j(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:j(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:j(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:j(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:j(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:j(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:j(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:j(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:j(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:j(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:j(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:j(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:j(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:j(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:j(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:j(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:j(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:j(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:j(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:j(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:j(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:j(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:j(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:j(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:j(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:j(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:j(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:j(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:j(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:j(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:j(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:j(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:j(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:j(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:j(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:j(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:j(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:j(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:j(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:j(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:j(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:j(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:j(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:j(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:j(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:j(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:j(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:j(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:j(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:j(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:j(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:j(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:j(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:j(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:j(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:j(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:j(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:j(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:j(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:j(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:j(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:j(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks:j(2815,1,"arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks_2815","'arguments' cannot be referenced in property initializers or class static initialization blocks."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:j(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:j(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:j(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:j(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:j(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:j(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:j(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:j(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:j(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:j(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:j(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:j(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:j(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:j(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:j(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:j(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:j(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:j(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:j(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:j(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:j(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:j(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:j(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:j(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:j(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:j(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:j(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:j(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:j(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:j(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:j(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:j(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:j(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:j(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:j(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:j(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:j(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:j(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:j(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:j(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:j(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:j(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:j(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert:j(2880,1,"Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert_2880","Import assertions have been replaced by import attributes. Use 'with' instead of 'assert'."),This_expression_is_never_nullish:j(2881,1,"This_expression_is_never_nullish_2881","This expression is never nullish."),Import_declaration_0_is_using_private_name_1:j(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:j(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:j(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:j(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:j(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:j(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:j(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:j(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:j(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:j(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:j(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:j(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:j(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:j(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:j(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:j(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:j(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:j(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:j(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:j(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:j(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:j(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:j(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:j(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:j(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:j(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:j(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:j(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:j(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:j(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:j(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:j(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:j(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:j(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:j(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:j(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:j(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:j(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:j(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:j(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:j(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:j(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:j(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:j(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:j(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:j(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected:j(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:j(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:j(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:j(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:j(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:j(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:j(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:j(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:j(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:j(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:j(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:j(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:j(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:j(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:j(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:j(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:j(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:j(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:j(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:j(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:j(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:j(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:j(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:j(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:j(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:j(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:j(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic:j(4127,1,"This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic_4127","This member cannot have an 'override' modifier because its name is dynamic."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:j(4128,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic_4128","This member cannot have a JSDoc comment with an '@override' tag because its name is dynamic."),The_current_host_does_not_support_the_0_option:j(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:j(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:j(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:j(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:j(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:j(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:j(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:j(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:j(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:j(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:j(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:j(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:j(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:j(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:j(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:j(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:j(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:j(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:j(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:j(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:j(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:j(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:j(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:j(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:j(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:j(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:j(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:j(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:j(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:j(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:j(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:j(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:j(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:j(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:j(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:j(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:j(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:j(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:j(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:j(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:j(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:j(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:j(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:j(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:j(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:j(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:j(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:j(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:j(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:j(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:j(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:j(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:j(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:j(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:j(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:j(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:j(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:j(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:j(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:j(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:j(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:j(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:j(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:j(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:j(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:j(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:j(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:j(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:j(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:j(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:j(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:j(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:j(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:j(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:j(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:j(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:j(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:j(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:j(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:j(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:j(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:j(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:j(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:j(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:j(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:j(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:j(6024,3,"options_6024","options"),file:j(6025,3,"file_6025","file"),Examples_Colon_0:j(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:j(6027,3,"Options_Colon_6027","Options:"),Version_0:j(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:j(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:j(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:j(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:j(6034,3,"KIND_6034","KIND"),FILE:j(6035,3,"FILE_6035","FILE"),VERSION:j(6036,3,"VERSION_6036","VERSION"),LOCATION:j(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:j(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:j(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:j(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:j(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:j(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:j(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:j(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:j(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:j(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:j(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:j(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:j(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:j(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:j(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:j(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:j(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:j(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:j(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:j(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:j(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:j(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:j(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:j(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:j(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:j(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:j(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:j(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:j(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:j(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:j(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:j(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:j(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:j(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:j(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:j(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:j(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:j(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:j(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:j(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:j(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:j(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:j(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:j(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:j(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:j(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:j(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:j(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:j(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:j(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:j(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:j(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:j(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:j(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:j(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:j(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:j(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:j(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:j(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:j(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:j(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:j(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:j(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:j(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:j(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:j(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:j(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:j(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:j(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:j(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:j(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:j(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:j(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:j(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:j(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:j(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:j(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:j(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:j(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:j(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:j(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:j(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:j(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:j(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:j(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:j(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:j(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:j(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:j(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:j(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:j(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:j(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:j(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:j(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:j(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:j(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:j(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:j(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:j(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:j(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:j(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:j(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:j(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:j(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:j(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:j(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:j(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:j(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:j(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:j(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:j(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:j(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:j(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:j(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:j(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:j(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:j(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:j(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:j(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:j(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:j(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:j(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:j(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:j(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:j(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:j(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:j(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:j(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:j(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:j(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:j(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:j(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:j(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:j(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:j(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:j(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:j(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:j(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:j(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:j(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:j(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:j(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:j(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:j(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:j(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:j(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:j(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:j(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:j(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:j(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:j(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:j(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:j(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:j(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:j(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:j(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:j(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:j(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:j(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:j(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:j(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:j(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:j(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:j(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:j(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:j(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:j(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:j(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:j(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:j(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:j(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:j(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:j(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:j(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:j(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:j(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:j(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:j(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:j(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:j(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:j(6244,3,"Modules_6244","Modules"),File_Management:j(6245,3,"File_Management_6245","File Management"),Emit:j(6246,3,"Emit_6246","Emit"),JavaScript_Support:j(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:j(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:j(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:j(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:j(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:j(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:j(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:j(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:j(6255,3,"Projects_6255","Projects"),Output_Formatting:j(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:j(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:j(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:j(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:j(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:j(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:j(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:j(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:j(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:j(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:j(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:j(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:j(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:j(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:j(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:j(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:j(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:j(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:j(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:j(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:j(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:j(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:j(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:j(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:j(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),File_Layout:j(6284,3,"File_Layout_6284","File Layout"),Environment_Settings:j(6285,3,"Environment_Settings_6285","Environment Settings"),See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule:j(6286,3,"See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule_6286","See also https://aka.ms/tsconfig/module"),For_nodejs_Colon:j(6287,3,"For_nodejs_Colon_6287","For nodejs:"),and_npm_install_D_types_Slashnode:j(6290,3,"and_npm_install_D_types_Slashnode_6290","and npm install -D @types/node"),Other_Outputs:j(6291,3,"Other_Outputs_6291","Other Outputs"),Stricter_Typechecking_Options:j(6292,3,"Stricter_Typechecking_Options_6292","Stricter Typechecking Options"),Style_Options:j(6293,3,"Style_Options_6293","Style Options"),Recommended_Options:j(6294,3,"Recommended_Options_6294","Recommended Options"),Enable_project_compilation:j(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:j(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:j(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:j(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:j(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:j(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:j(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:j(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:j(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:j(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:j(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:j(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:j(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:j(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:j(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:j(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:j(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:j(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:j(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:j(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:j(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:j(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:j(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:j(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:j(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:j(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:j(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:j(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:j(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:j(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:j(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:j(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:j(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:j(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:j(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:j(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:j(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:j(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:j(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:j(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:j(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:j(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:j(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:j(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:j(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:j(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:j(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:j(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:j(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:j(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:j(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:j(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:j(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:j(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:j(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:j(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:j(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:j(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:j(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:j(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:j(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:j(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:j(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:j(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:j(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:j(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:j(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:j(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:j(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:j(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:j(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:j(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:j(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:j(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:j(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:j(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:j(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files:j(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJs' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:j(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:j(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:j(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:j(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:j(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:j(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:j(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:j(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:j(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:j(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:j(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:j(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:j(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:j(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:j(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:j(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:j(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:j(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:j(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:j(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:j(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:j(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:j(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:j(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:j(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:j(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:j(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:j(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:j(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:j(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:j(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:j(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:j(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:j(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:j(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:j(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:j(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:j(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Skip_building_downstream_projects_on_error_in_upstream_project:j(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:j(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:j(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:j(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:j(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:j(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:j(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:j(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:j(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:j(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:j(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:j(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:j(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:j(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:j(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:j(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:j(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:j(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:j(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:j(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:j(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:j(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:j(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:j(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:j(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:j(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:j(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:j(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:j(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:j(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:j(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:j(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:j(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:j(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:j(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:j(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:j(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:j(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:j(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:j(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:j(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:j(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:j(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:j(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:j(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:j(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:j(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:j(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:j(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:j(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:j(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:j(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:j(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:j(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:j(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:j(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:j(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:j(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:j(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:j(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:j(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:j(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:j(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:j(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:j(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:j(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:j(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:j(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:j(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:j(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:j(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:j(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:j(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:j(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:j(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:j(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:j(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:j(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript:j(6721,3,"Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript_6721","Do not allow runtime constructs that are not part of ECMAScript."),Default_catch_clause_variables_as_unknown_instead_of_any:j(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:j(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:j(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:j(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:j(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),Enable_lib_replacement:j(6808,3,"Enable_lib_replacement_6808","Enable lib replacement."),one_of_Colon:j(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:j(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:j(6902,3,"type_Colon_6902","type:"),default_Colon:j(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:j(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:j(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:j(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:j(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:j(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:j(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:j(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:j(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:j(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:j(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:j(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:j(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:j(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:j(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:j(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:j(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:j(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:j(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:j(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:j(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:j(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:j(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:j(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:j(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:j(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:j(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:j(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:j(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:j(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:j(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:j(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:j(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:j(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:j(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:j(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:j(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:j(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:j(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:j(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:j(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:j(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:j(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:j(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:j(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:j(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:j(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation:j(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:j(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:j(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:j(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:j(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:j(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:j(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:j(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:j(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:j(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:j(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:j(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:j(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:j(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:j(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:j(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:j(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:j(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:j(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:j(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:j(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:j(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:j(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:j(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:j(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:j(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:j(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:j(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:j(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:j(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:j(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:j(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:j(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:j(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:j(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:j(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:j(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:j(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:j(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:j(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:j(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:j(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:j(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:j(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:j(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:j(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:j(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:j(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:j(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:j(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:j(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:j(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:j(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:j(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:j(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:j(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:j(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:j(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:j(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:j(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:j(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:j(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:j(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:j(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:j(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:j(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:j(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:j(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:j(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:j(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:j(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:j(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:j(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:j(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:j(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:j(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:j(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:j(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:j(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:j(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:j(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:j(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:j(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:j(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:j(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:j(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:j(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:j(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:j(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:j(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:j(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:j(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:j(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:j(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:j(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:j(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:j(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:j(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:j(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:j(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:j(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:j(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:j(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:j(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:j(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:j(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:j(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:j(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:j(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:j(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:j(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:j(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:j(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:j(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:j(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:j(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:j(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:j(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:j(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:j(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:j(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:j(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:j(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:j(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:j(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:j(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:j(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:j(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:j(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:j(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:j(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:j(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:j(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:j(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:j(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:j(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:j(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:j(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:j(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:j(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:j(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:j(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:j(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:j(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:j(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:j(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:j(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:j(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:j(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:j(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:j(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:j(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:j(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:j(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:j(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:j(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:j(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:j(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:j(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:j(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:j(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:j(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:j(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:j(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:j(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:j(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:j(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:j(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:j(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:j(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:j(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:j(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:j(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:j(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:j(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:j(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:j(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:j(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:j(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:j(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:j(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:j(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:j(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:j(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:j(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:j(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:j(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:j(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:j(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:j(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:j(95005,3,"Extract_function_95005","Extract function"),Extract_constant:j(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:j(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:j(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:j(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:j(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:j(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:j(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:j(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:j(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:j(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:j(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:j(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:j(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:j(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:j(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:j(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:j(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:j(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:j(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:j(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:j(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:j(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:j(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:j(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:j(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:j(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:j(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:j(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:j(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:j(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:j(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:j(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:j(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:j(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:j(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:j(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:j(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:j(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:j(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:j(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:j(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:j(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:j(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:j(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:j(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:j(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:j(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:j(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:j(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:j(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:j(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:j(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:j(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:j(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:j(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:j(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:j(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:j(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:j(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:j(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:j(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:j(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:j(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:j(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:j(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:j(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:j(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:j(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:j(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:j(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:j(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:j(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:j(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:j(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:j(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:j(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:j(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:j(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:j(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:j(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:j(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:j(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:j(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:j(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:j(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:j(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:j(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:j(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:j(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:j(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:j(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:j(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:j(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:j(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:j(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:j(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:j(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:j(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:j(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:j(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:j(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:j(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:j(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:j(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:j(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:j(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:j(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:j(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:j(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:j(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:j(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:j(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:j(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:j(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:j(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:j(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:j(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:j(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:j(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:j(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:j(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:j(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:j(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:j(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:j(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:j(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:j(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:j(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:j(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:j(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:j(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:j(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:j(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:j(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:j(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:j(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:j(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:j(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:j(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:j(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:j(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:j(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:j(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:j(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:j(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:j(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:j(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:j(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:j(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:j(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:j(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:j(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:j(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:j(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:j(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:j(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:j(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:j(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:j(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:j(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:j(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:j(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:j(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:j(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:j(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:j(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:j(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:j(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:j(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:j(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:j(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:j(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:j(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:j(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:j(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:j(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:j(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:j(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:j(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:j(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:j(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:j(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:j(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:j(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:j(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:j(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:j(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:j(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:j(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:j(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:j(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:j(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:j(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:j(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:j(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:j(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:j(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:j(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:j(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:j(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:j(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:j(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:j(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:j(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:j(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:j(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:j(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:j(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:j(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:j(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:j(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:j(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:j(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:j(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:j(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:j(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:j(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:j(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:j(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:j(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:j(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:j(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:j(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:j(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:j(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:j(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:j(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:j(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:j(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:j(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:j(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:j(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:j(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'."),Default_imports_are_not_allowed_in_a_deferred_import:j(18058,1,"Default_imports_are_not_allowed_in_a_deferred_import_18058","Default imports are not allowed in a deferred import."),Named_imports_are_not_allowed_in_a_deferred_import:j(18059,1,"Named_imports_are_not_allowed_in_a_deferred_import_18059","Named imports are not allowed in a deferred import."),Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve:j(18060,1,"Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve_18060","Deferred imports are only supported when the '--module' flag is set to 'esnext' or 'preserve'."),_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer:j(18061,1,"_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer_18061","'{0}' is not a valid meta-property for keyword 'import'. Did you mean 'meta' or 'defer'?")};function Id(s){return s>=80}function fB(s){return s===32||Id(s)}var ev={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,defer:166,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},Ny=new Map(Object.entries(ev)),vb=new Map(Object.entries({...ev,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),xD=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),IB=new Map([[1,Rd.RegularExpressionFlagsHasIndices],[16,Rd.RegularExpressionFlagsDotAll],[32,Rd.RegularExpressionFlagsUnicode],[64,Rd.RegularExpressionFlagsUnicodeSets],[128,Rd.RegularExpressionFlagsSticky]]),Bb=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],bL=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],gF=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],x=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,te=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Re=/@(?:see|link)/i;function Le(s,c){if(s=2?Le(s,gF):Le(s,Bb)}function dr(s,c){return c>=2?Le(s,x):Le(s,bL)}function Ur(s){let c=[];return s.forEach((g,d)=>{c[g]=d}),c}var mi=Ur(vb);function Vi(s){return mi[s]}function Ta(s){return vb.get(s)}var Sl=Ur(xD);function Ho(s){return Sl[s]}function Wg(s){return xD.get(s)}function cA(s){let c=[],g=0,d=0;for(;g127&&Cl(h)&&(c.push(d),d=g);break}}return c.push(d),c}function th(s,c,g,d){return s.getPositionOfLineAndCharacter?s.getPositionOfLineAndCharacter(c,g,d):xn(rn(s),c,g,s.text,d)}function xn(s,c,g,d,h){(c<0||c>=s.length)&&(h?c=c<0?0:c>=s.length?s.length-1:c:pe.fail(`Bad line number. Line: ${c}, lineStarts.length: ${s.length} , line map is correct? ${d!==void 0?Sc(s,cA(d)):"unknown"}`));let _=s[c]+g;return h?_>s[c+1]?s[c+1]:typeof d=="string"&&_>d.length?d.length:_:(c=8192&&s<=8203||s===8239||s===8287||s===12288||s===65279}function Cl(s){return s===10||s===13||s===8232||s===8233}function wl(s){return s>=48&&s<=57}function $f(s){return wl(s)||s>=65&&s<=70||s>=97&&s<=102}function j2(s){return s>=65&&s<=90||s>=97&&s<=122}function _x(s){return j2(s)||wl(s)||s===95}function z2(s){return s>=48&&s<=55}function tv(s,c){let g=s.charCodeAt(c);switch(g){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return c===0;default:return g>127}}function Yu(s,c,g,d,h){if(wB(c))return c;let _=!1;for(;;){let S=s.charCodeAt(c);switch(S){case 13:s.charCodeAt(c+1)===10&&c++;case 10:if(c++,g)return c;_=!!h;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(s.charCodeAt(c+1)===47){for(c+=2;c127&&dc(S)){c++;continue}break}return c}}var qO=7;function hB(s,c){if(pe.assert(c>=0),c===0||Cl(s.charCodeAt(c-1))){let g=s.charCodeAt(c);if(c+qO=0&&g127&&dc(ge)){M&&Cl(ge)&&(V=!0),g++;continue}break e}}return M&&(re=h(R,T,W,V,_,re)),re}function GD(s,c,g,d){return LT(!1,s,c,!1,g,d)}function dF(s,c,g,d){return LT(!1,s,c,!0,g,d)}function EL(s,c,g,d,h){return LT(!0,s,c,!1,g,d,h)}function ff(s,c,g,d,h){return LT(!0,s,c,!0,g,d,h)}function FD(s,c,g,d,h,_=[]){return _.push({kind:g,pos:s,end:c,hasTrailingNewLine:d}),_}function fE(s,c){return EL(s,c,FD,void 0,void 0)}function n2(s,c){return ff(s,c,FD,void 0,void 0)}function mB(s){let c=AF.exec(s);if(c)return c[0]}function bd(s,c){return j2(s)||s===36||s===95||s>127&&ft(s,c)}function s1(s,c,g){return _x(s)||s===36||(g===1?s===45||s===58:!1)||s>127&&dr(s,c)}function Uh(s,c,g){let d=Uu(s,0);if(!bd(d,c))return!1;for(let h=iy(d);hV,getStartPos:()=>V,getTokenEnd:()=>T,getTextPos:()=>T,getToken:()=>ee,getTokenStart:()=>M,getTokenPos:()=>M,getTokenText:()=>R.substring(M,T),getTokenValue:()=>re,hasUnicodeEscape:()=>(ge&1024)!==0,hasExtendedUnicodeEscape:()=>(ge&8)!==0,hasPrecedingLineBreak:()=>(ge&1)!==0,hasPrecedingJSDocComment:()=>(ge&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(ge&32768)!==0,isIdentifier:()=>ee===80||ee>118,isReservedWord:()=>ee>=83&&ee<=118,isUnterminated:()=>(ge&4)!==0,getCommentDirectives:()=>Ie,getNumericLiteralFlags:()=>ge&25584,getTokenFlags:()=>ge,reScanGreaterToken:zt,reScanAsteriskEqualsToken:Ht,reScanSlashToken:Br,reScanTemplateToken:An,reScanTemplateHeadOrNoSubstitutionTemplate:si,scanJsxIdentifier:Gl,scanJsxAttributeValue:ba,reScanJsxAttributeValue:Wo,reScanJsxToken:ks,reScanLessThanToken:Ic,reScanHashToken:su,reScanQuestionToken:Zn,reScanInvalidIdentifier:st,scanJsxToken:ya,scanJsDocToken:yr,scanJSDocCommentTextToken:hc,scan:dt,getText:Oa,clearCommentDirectives:tl,setText:Qu,setScriptTarget:Cs,setLanguageVariant:Tu,setScriptKind:Pr,setJSDocParsingMode:Pn,setOnError:Tg,resetTokenState:pt,setTextPos:pt,setSkipJsDocLeadingAsterisks:on,tryScan:pa,lookAhead:lo,scanRange:Oi};return pe.isDebugging&&Object.defineProperty(Te,"__debugShowCurrentPositionInText",{get:()=>{let it=Te.getText();return it.slice(0,Te.getTokenFullStart())+"\u2551"+it.slice(Te.getTokenFullStart())}}),Te;function Ze(it){return Uu(R,it)}function We(it){return it>=0&&it=0&&it=65&&En<=70)En+=32;else if(!(En>=48&&En<=57||En>=97&&En<=102))break;Kr.push(En),T++,hr=!1}return Kr.length=W){Fr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}let Dn=Ue(T);if(Dn===nr){Fr+=R.substring(Kr,T),T++;break}if(Dn===92&&!it){Fr+=R.substring(Kr,T),Fr+=Pt(3),Kr=T;continue}if((Dn===10||Dn===13)&&!it){Fr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}T++}return Fr}function Ke(it){let nr=Ue(T)===96;T++;let Fr=T,Kr="",Dn;for(;;){if(T>=W){Kr+=R.substring(Fr,T),ge|=4,Ye(Z.Unterminated_template_literal),Dn=nr?15:18;break}let hr=Ue(T);if(hr===96){Kr+=R.substring(Fr,T),T++,Dn=nr?15:18;break}if(hr===36&&T+1(s[s.Unknown=0]="Unknown",s[s.EndOfFileToken=1]="EndOfFileToken",s[s.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",s[s.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",s[s.NewLineTrivia=4]="NewLineTrivia",s[s.WhitespaceTrivia=5]="WhitespaceTrivia",s[s.ShebangTrivia=6]="ShebangTrivia",s[s.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",s[s.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",s[s.NumericLiteral=9]="NumericLiteral",s[s.BigIntLiteral=10]="BigIntLiteral",s[s.StringLiteral=11]="StringLiteral",s[s.JsxText=12]="JsxText",s[s.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",s[s.RegularExpressionLiteral=14]="RegularExpressionLiteral",s[s.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",s[s.TemplateHead=16]="TemplateHead",s[s.TemplateMiddle=17]="TemplateMiddle",s[s.TemplateTail=18]="TemplateTail",s[s.OpenBraceToken=19]="OpenBraceToken",s[s.CloseBraceToken=20]="CloseBraceToken",s[s.OpenParenToken=21]="OpenParenToken",s[s.CloseParenToken=22]="CloseParenToken",s[s.OpenBracketToken=23]="OpenBracketToken",s[s.CloseBracketToken=24]="CloseBracketToken",s[s.DotToken=25]="DotToken",s[s.DotDotDotToken=26]="DotDotDotToken",s[s.SemicolonToken=27]="SemicolonToken",s[s.CommaToken=28]="CommaToken",s[s.QuestionDotToken=29]="QuestionDotToken",s[s.LessThanToken=30]="LessThanToken",s[s.LessThanSlashToken=31]="LessThanSlashToken",s[s.GreaterThanToken=32]="GreaterThanToken",s[s.LessThanEqualsToken=33]="LessThanEqualsToken",s[s.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",s[s.EqualsEqualsToken=35]="EqualsEqualsToken",s[s.ExclamationEqualsToken=36]="ExclamationEqualsToken",s[s.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",s[s.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",s[s.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",s[s.PlusToken=40]="PlusToken",s[s.MinusToken=41]="MinusToken",s[s.AsteriskToken=42]="AsteriskToken",s[s.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",s[s.SlashToken=44]="SlashToken",s[s.PercentToken=45]="PercentToken",s[s.PlusPlusToken=46]="PlusPlusToken",s[s.MinusMinusToken=47]="MinusMinusToken",s[s.LessThanLessThanToken=48]="LessThanLessThanToken",s[s.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",s[s.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",s[s.AmpersandToken=51]="AmpersandToken",s[s.BarToken=52]="BarToken",s[s.CaretToken=53]="CaretToken",s[s.ExclamationToken=54]="ExclamationToken",s[s.TildeToken=55]="TildeToken",s[s.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",s[s.BarBarToken=57]="BarBarToken",s[s.QuestionToken=58]="QuestionToken",s[s.ColonToken=59]="ColonToken",s[s.AtToken=60]="AtToken",s[s.QuestionQuestionToken=61]="QuestionQuestionToken",s[s.BacktickToken=62]="BacktickToken",s[s.HashToken=63]="HashToken",s[s.EqualsToken=64]="EqualsToken",s[s.PlusEqualsToken=65]="PlusEqualsToken",s[s.MinusEqualsToken=66]="MinusEqualsToken",s[s.AsteriskEqualsToken=67]="AsteriskEqualsToken",s[s.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",s[s.SlashEqualsToken=69]="SlashEqualsToken",s[s.PercentEqualsToken=70]="PercentEqualsToken",s[s.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",s[s.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",s[s.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",s[s.AmpersandEqualsToken=74]="AmpersandEqualsToken",s[s.BarEqualsToken=75]="BarEqualsToken",s[s.BarBarEqualsToken=76]="BarBarEqualsToken",s[s.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",s[s.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",s[s.CaretEqualsToken=79]="CaretEqualsToken",s[s.Identifier=80]="Identifier",s[s.PrivateIdentifier=81]="PrivateIdentifier",s[s.JSDocCommentTextToken=82]="JSDocCommentTextToken",s[s.BreakKeyword=83]="BreakKeyword",s[s.CaseKeyword=84]="CaseKeyword",s[s.CatchKeyword=85]="CatchKeyword",s[s.ClassKeyword=86]="ClassKeyword",s[s.ConstKeyword=87]="ConstKeyword",s[s.ContinueKeyword=88]="ContinueKeyword",s[s.DebuggerKeyword=89]="DebuggerKeyword",s[s.DefaultKeyword=90]="DefaultKeyword",s[s.DeleteKeyword=91]="DeleteKeyword",s[s.DoKeyword=92]="DoKeyword",s[s.ElseKeyword=93]="ElseKeyword",s[s.EnumKeyword=94]="EnumKeyword",s[s.ExportKeyword=95]="ExportKeyword",s[s.ExtendsKeyword=96]="ExtendsKeyword",s[s.FalseKeyword=97]="FalseKeyword",s[s.FinallyKeyword=98]="FinallyKeyword",s[s.ForKeyword=99]="ForKeyword",s[s.FunctionKeyword=100]="FunctionKeyword",s[s.IfKeyword=101]="IfKeyword",s[s.ImportKeyword=102]="ImportKeyword",s[s.InKeyword=103]="InKeyword",s[s.InstanceOfKeyword=104]="InstanceOfKeyword",s[s.NewKeyword=105]="NewKeyword",s[s.NullKeyword=106]="NullKeyword",s[s.ReturnKeyword=107]="ReturnKeyword",s[s.SuperKeyword=108]="SuperKeyword",s[s.SwitchKeyword=109]="SwitchKeyword",s[s.ThisKeyword=110]="ThisKeyword",s[s.ThrowKeyword=111]="ThrowKeyword",s[s.TrueKeyword=112]="TrueKeyword",s[s.TryKeyword=113]="TryKeyword",s[s.TypeOfKeyword=114]="TypeOfKeyword",s[s.VarKeyword=115]="VarKeyword",s[s.VoidKeyword=116]="VoidKeyword",s[s.WhileKeyword=117]="WhileKeyword",s[s.WithKeyword=118]="WithKeyword",s[s.ImplementsKeyword=119]="ImplementsKeyword",s[s.InterfaceKeyword=120]="InterfaceKeyword",s[s.LetKeyword=121]="LetKeyword",s[s.PackageKeyword=122]="PackageKeyword",s[s.PrivateKeyword=123]="PrivateKeyword",s[s.ProtectedKeyword=124]="ProtectedKeyword",s[s.PublicKeyword=125]="PublicKeyword",s[s.StaticKeyword=126]="StaticKeyword",s[s.YieldKeyword=127]="YieldKeyword",s[s.AbstractKeyword=128]="AbstractKeyword",s[s.AccessorKeyword=129]="AccessorKeyword",s[s.AsKeyword=130]="AsKeyword",s[s.AssertsKeyword=131]="AssertsKeyword",s[s.AssertKeyword=132]="AssertKeyword",s[s.AnyKeyword=133]="AnyKeyword",s[s.AsyncKeyword=134]="AsyncKeyword",s[s.AwaitKeyword=135]="AwaitKeyword",s[s.BooleanKeyword=136]="BooleanKeyword",s[s.ConstructorKeyword=137]="ConstructorKeyword",s[s.DeclareKeyword=138]="DeclareKeyword",s[s.GetKeyword=139]="GetKeyword",s[s.InferKeyword=140]="InferKeyword",s[s.IntrinsicKeyword=141]="IntrinsicKeyword",s[s.IsKeyword=142]="IsKeyword",s[s.KeyOfKeyword=143]="KeyOfKeyword",s[s.ModuleKeyword=144]="ModuleKeyword",s[s.NamespaceKeyword=145]="NamespaceKeyword",s[s.NeverKeyword=146]="NeverKeyword",s[s.OutKeyword=147]="OutKeyword",s[s.ReadonlyKeyword=148]="ReadonlyKeyword",s[s.RequireKeyword=149]="RequireKeyword",s[s.NumberKeyword=150]="NumberKeyword",s[s.ObjectKeyword=151]="ObjectKeyword",s[s.SatisfiesKeyword=152]="SatisfiesKeyword",s[s.SetKeyword=153]="SetKeyword",s[s.StringKeyword=154]="StringKeyword",s[s.SymbolKeyword=155]="SymbolKeyword",s[s.TypeKeyword=156]="TypeKeyword",s[s.UndefinedKeyword=157]="UndefinedKeyword",s[s.UniqueKeyword=158]="UniqueKeyword",s[s.UnknownKeyword=159]="UnknownKeyword",s[s.UsingKeyword=160]="UsingKeyword",s[s.FromKeyword=161]="FromKeyword",s[s.GlobalKeyword=162]="GlobalKeyword",s[s.BigIntKeyword=163]="BigIntKeyword",s[s.OverrideKeyword=164]="OverrideKeyword",s[s.OfKeyword=165]="OfKeyword",s[s.DeferKeyword=166]="DeferKeyword",s[s.QualifiedName=167]="QualifiedName",s[s.ComputedPropertyName=168]="ComputedPropertyName",s[s.TypeParameter=169]="TypeParameter",s[s.Parameter=170]="Parameter",s[s.Decorator=171]="Decorator",s[s.PropertySignature=172]="PropertySignature",s[s.PropertyDeclaration=173]="PropertyDeclaration",s[s.MethodSignature=174]="MethodSignature",s[s.MethodDeclaration=175]="MethodDeclaration",s[s.ClassStaticBlockDeclaration=176]="ClassStaticBlockDeclaration",s[s.Constructor=177]="Constructor",s[s.GetAccessor=178]="GetAccessor",s[s.SetAccessor=179]="SetAccessor",s[s.CallSignature=180]="CallSignature",s[s.ConstructSignature=181]="ConstructSignature",s[s.IndexSignature=182]="IndexSignature",s[s.TypePredicate=183]="TypePredicate",s[s.TypeReference=184]="TypeReference",s[s.FunctionType=185]="FunctionType",s[s.ConstructorType=186]="ConstructorType",s[s.TypeQuery=187]="TypeQuery",s[s.TypeLiteral=188]="TypeLiteral",s[s.ArrayType=189]="ArrayType",s[s.TupleType=190]="TupleType",s[s.OptionalType=191]="OptionalType",s[s.RestType=192]="RestType",s[s.UnionType=193]="UnionType",s[s.IntersectionType=194]="IntersectionType",s[s.ConditionalType=195]="ConditionalType",s[s.InferType=196]="InferType",s[s.ParenthesizedType=197]="ParenthesizedType",s[s.ThisType=198]="ThisType",s[s.TypeOperator=199]="TypeOperator",s[s.IndexedAccessType=200]="IndexedAccessType",s[s.MappedType=201]="MappedType",s[s.LiteralType=202]="LiteralType",s[s.NamedTupleMember=203]="NamedTupleMember",s[s.TemplateLiteralType=204]="TemplateLiteralType",s[s.TemplateLiteralTypeSpan=205]="TemplateLiteralTypeSpan",s[s.ImportType=206]="ImportType",s[s.ObjectBindingPattern=207]="ObjectBindingPattern",s[s.ArrayBindingPattern=208]="ArrayBindingPattern",s[s.BindingElement=209]="BindingElement",s[s.ArrayLiteralExpression=210]="ArrayLiteralExpression",s[s.ObjectLiteralExpression=211]="ObjectLiteralExpression",s[s.PropertyAccessExpression=212]="PropertyAccessExpression",s[s.ElementAccessExpression=213]="ElementAccessExpression",s[s.CallExpression=214]="CallExpression",s[s.NewExpression=215]="NewExpression",s[s.TaggedTemplateExpression=216]="TaggedTemplateExpression",s[s.TypeAssertionExpression=217]="TypeAssertionExpression",s[s.ParenthesizedExpression=218]="ParenthesizedExpression",s[s.FunctionExpression=219]="FunctionExpression",s[s.ArrowFunction=220]="ArrowFunction",s[s.DeleteExpression=221]="DeleteExpression",s[s.TypeOfExpression=222]="TypeOfExpression",s[s.VoidExpression=223]="VoidExpression",s[s.AwaitExpression=224]="AwaitExpression",s[s.PrefixUnaryExpression=225]="PrefixUnaryExpression",s[s.PostfixUnaryExpression=226]="PostfixUnaryExpression",s[s.BinaryExpression=227]="BinaryExpression",s[s.ConditionalExpression=228]="ConditionalExpression",s[s.TemplateExpression=229]="TemplateExpression",s[s.YieldExpression=230]="YieldExpression",s[s.SpreadElement=231]="SpreadElement",s[s.ClassExpression=232]="ClassExpression",s[s.OmittedExpression=233]="OmittedExpression",s[s.ExpressionWithTypeArguments=234]="ExpressionWithTypeArguments",s[s.AsExpression=235]="AsExpression",s[s.NonNullExpression=236]="NonNullExpression",s[s.MetaProperty=237]="MetaProperty",s[s.SyntheticExpression=238]="SyntheticExpression",s[s.SatisfiesExpression=239]="SatisfiesExpression",s[s.TemplateSpan=240]="TemplateSpan",s[s.SemicolonClassElement=241]="SemicolonClassElement",s[s.Block=242]="Block",s[s.EmptyStatement=243]="EmptyStatement",s[s.VariableStatement=244]="VariableStatement",s[s.ExpressionStatement=245]="ExpressionStatement",s[s.IfStatement=246]="IfStatement",s[s.DoStatement=247]="DoStatement",s[s.WhileStatement=248]="WhileStatement",s[s.ForStatement=249]="ForStatement",s[s.ForInStatement=250]="ForInStatement",s[s.ForOfStatement=251]="ForOfStatement",s[s.ContinueStatement=252]="ContinueStatement",s[s.BreakStatement=253]="BreakStatement",s[s.ReturnStatement=254]="ReturnStatement",s[s.WithStatement=255]="WithStatement",s[s.SwitchStatement=256]="SwitchStatement",s[s.LabeledStatement=257]="LabeledStatement",s[s.ThrowStatement=258]="ThrowStatement",s[s.TryStatement=259]="TryStatement",s[s.DebuggerStatement=260]="DebuggerStatement",s[s.VariableDeclaration=261]="VariableDeclaration",s[s.VariableDeclarationList=262]="VariableDeclarationList",s[s.FunctionDeclaration=263]="FunctionDeclaration",s[s.ClassDeclaration=264]="ClassDeclaration",s[s.InterfaceDeclaration=265]="InterfaceDeclaration",s[s.TypeAliasDeclaration=266]="TypeAliasDeclaration",s[s.EnumDeclaration=267]="EnumDeclaration",s[s.ModuleDeclaration=268]="ModuleDeclaration",s[s.ModuleBlock=269]="ModuleBlock",s[s.CaseBlock=270]="CaseBlock",s[s.NamespaceExportDeclaration=271]="NamespaceExportDeclaration",s[s.ImportEqualsDeclaration=272]="ImportEqualsDeclaration",s[s.ImportDeclaration=273]="ImportDeclaration",s[s.ImportClause=274]="ImportClause",s[s.NamespaceImport=275]="NamespaceImport",s[s.NamedImports=276]="NamedImports",s[s.ImportSpecifier=277]="ImportSpecifier",s[s.ExportAssignment=278]="ExportAssignment",s[s.ExportDeclaration=279]="ExportDeclaration",s[s.NamedExports=280]="NamedExports",s[s.NamespaceExport=281]="NamespaceExport",s[s.ExportSpecifier=282]="ExportSpecifier",s[s.MissingDeclaration=283]="MissingDeclaration",s[s.ExternalModuleReference=284]="ExternalModuleReference",s[s.JsxElement=285]="JsxElement",s[s.JsxSelfClosingElement=286]="JsxSelfClosingElement",s[s.JsxOpeningElement=287]="JsxOpeningElement",s[s.JsxClosingElement=288]="JsxClosingElement",s[s.JsxFragment=289]="JsxFragment",s[s.JsxOpeningFragment=290]="JsxOpeningFragment",s[s.JsxClosingFragment=291]="JsxClosingFragment",s[s.JsxAttribute=292]="JsxAttribute",s[s.JsxAttributes=293]="JsxAttributes",s[s.JsxSpreadAttribute=294]="JsxSpreadAttribute",s[s.JsxExpression=295]="JsxExpression",s[s.JsxNamespacedName=296]="JsxNamespacedName",s[s.CaseClause=297]="CaseClause",s[s.DefaultClause=298]="DefaultClause",s[s.HeritageClause=299]="HeritageClause",s[s.CatchClause=300]="CatchClause",s[s.ImportAttributes=301]="ImportAttributes",s[s.ImportAttribute=302]="ImportAttribute",s[s.AssertClause=301]="AssertClause",s[s.AssertEntry=302]="AssertEntry",s[s.ImportTypeAssertionContainer=303]="ImportTypeAssertionContainer",s[s.PropertyAssignment=304]="PropertyAssignment",s[s.ShorthandPropertyAssignment=305]="ShorthandPropertyAssignment",s[s.SpreadAssignment=306]="SpreadAssignment",s[s.EnumMember=307]="EnumMember",s[s.SourceFile=308]="SourceFile",s[s.Bundle=309]="Bundle",s[s.JSDocTypeExpression=310]="JSDocTypeExpression",s[s.JSDocNameReference=311]="JSDocNameReference",s[s.JSDocMemberName=312]="JSDocMemberName",s[s.JSDocAllType=313]="JSDocAllType",s[s.JSDocUnknownType=314]="JSDocUnknownType",s[s.JSDocNullableType=315]="JSDocNullableType",s[s.JSDocNonNullableType=316]="JSDocNonNullableType",s[s.JSDocOptionalType=317]="JSDocOptionalType",s[s.JSDocFunctionType=318]="JSDocFunctionType",s[s.JSDocVariadicType=319]="JSDocVariadicType",s[s.JSDocNamepathType=320]="JSDocNamepathType",s[s.JSDoc=321]="JSDoc",s[s.JSDocComment=321]="JSDocComment",s[s.JSDocText=322]="JSDocText",s[s.JSDocTypeLiteral=323]="JSDocTypeLiteral",s[s.JSDocSignature=324]="JSDocSignature",s[s.JSDocLink=325]="JSDocLink",s[s.JSDocLinkCode=326]="JSDocLinkCode",s[s.JSDocLinkPlain=327]="JSDocLinkPlain",s[s.JSDocTag=328]="JSDocTag",s[s.JSDocAugmentsTag=329]="JSDocAugmentsTag",s[s.JSDocImplementsTag=330]="JSDocImplementsTag",s[s.JSDocAuthorTag=331]="JSDocAuthorTag",s[s.JSDocDeprecatedTag=332]="JSDocDeprecatedTag",s[s.JSDocClassTag=333]="JSDocClassTag",s[s.JSDocPublicTag=334]="JSDocPublicTag",s[s.JSDocPrivateTag=335]="JSDocPrivateTag",s[s.JSDocProtectedTag=336]="JSDocProtectedTag",s[s.JSDocReadonlyTag=337]="JSDocReadonlyTag",s[s.JSDocOverrideTag=338]="JSDocOverrideTag",s[s.JSDocCallbackTag=339]="JSDocCallbackTag",s[s.JSDocOverloadTag=340]="JSDocOverloadTag",s[s.JSDocEnumTag=341]="JSDocEnumTag",s[s.JSDocParameterTag=342]="JSDocParameterTag",s[s.JSDocReturnTag=343]="JSDocReturnTag",s[s.JSDocThisTag=344]="JSDocThisTag",s[s.JSDocTypeTag=345]="JSDocTypeTag",s[s.JSDocTemplateTag=346]="JSDocTemplateTag",s[s.JSDocTypedefTag=347]="JSDocTypedefTag",s[s.JSDocSeeTag=348]="JSDocSeeTag",s[s.JSDocPropertyTag=349]="JSDocPropertyTag",s[s.JSDocThrowsTag=350]="JSDocThrowsTag",s[s.JSDocSatisfiesTag=351]="JSDocSatisfiesTag",s[s.JSDocImportTag=352]="JSDocImportTag",s[s.SyntaxList=353]="SyntaxList",s[s.NotEmittedStatement=354]="NotEmittedStatement",s[s.NotEmittedTypeElement=355]="NotEmittedTypeElement",s[s.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",s[s.CommaListExpression=357]="CommaListExpression",s[s.SyntheticReferenceExpression=358]="SyntheticReferenceExpression",s[s.Count=359]="Count",s[s.FirstAssignment=64]="FirstAssignment",s[s.LastAssignment=79]="LastAssignment",s[s.FirstCompoundAssignment=65]="FirstCompoundAssignment",s[s.LastCompoundAssignment=79]="LastCompoundAssignment",s[s.FirstReservedWord=83]="FirstReservedWord",s[s.LastReservedWord=118]="LastReservedWord",s[s.FirstKeyword=83]="FirstKeyword",s[s.LastKeyword=166]="LastKeyword",s[s.FirstFutureReservedWord=119]="FirstFutureReservedWord",s[s.LastFutureReservedWord=127]="LastFutureReservedWord",s[s.FirstTypeNode=183]="FirstTypeNode",s[s.LastTypeNode=206]="LastTypeNode",s[s.FirstPunctuation=19]="FirstPunctuation",s[s.LastPunctuation=79]="LastPunctuation",s[s.FirstToken=0]="FirstToken",s[s.LastToken=166]="LastToken",s[s.FirstTriviaToken=2]="FirstTriviaToken",s[s.LastTriviaToken=7]="LastTriviaToken",s[s.FirstLiteralToken=9]="FirstLiteralToken",s[s.LastLiteralToken=15]="LastLiteralToken",s[s.FirstTemplateToken=15]="FirstTemplateToken",s[s.LastTemplateToken=18]="LastTemplateToken",s[s.FirstBinaryOperator=30]="FirstBinaryOperator",s[s.LastBinaryOperator=79]="LastBinaryOperator",s[s.FirstStatement=244]="FirstStatement",s[s.LastStatement=260]="LastStatement",s[s.FirstNode=167]="FirstNode",s[s.FirstJSDocNode=310]="FirstJSDocNode",s[s.LastJSDocNode=352]="LastJSDocNode",s[s.FirstJSDocTagNode=328]="FirstJSDocTagNode",s[s.LastJSDocTagNode=352]="LastJSDocTagNode",s[s.FirstContextualKeyword=128]="FirstContextualKeyword",s[s.LastContextualKeyword=166]="LastContextualKeyword",s))(Ld||{}),AC=(s=>(s[s.None=0]="None",s[s.Let=1]="Let",s[s.Const=2]="Const",s[s.Using=4]="Using",s[s.AwaitUsing=6]="AwaitUsing",s[s.NestedNamespace=8]="NestedNamespace",s[s.Synthesized=16]="Synthesized",s[s.Namespace=32]="Namespace",s[s.OptionalChain=64]="OptionalChain",s[s.ExportContext=128]="ExportContext",s[s.ContainsThis=256]="ContainsThis",s[s.HasImplicitReturn=512]="HasImplicitReturn",s[s.HasExplicitReturn=1024]="HasExplicitReturn",s[s.GlobalAugmentation=2048]="GlobalAugmentation",s[s.HasAsyncFunctions=4096]="HasAsyncFunctions",s[s.DisallowInContext=8192]="DisallowInContext",s[s.YieldContext=16384]="YieldContext",s[s.DecoratorContext=32768]="DecoratorContext",s[s.AwaitContext=65536]="AwaitContext",s[s.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",s[s.ThisNodeHasError=262144]="ThisNodeHasError",s[s.JavaScriptFile=524288]="JavaScriptFile",s[s.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",s[s.HasAggregatedChildData=2097152]="HasAggregatedChildData",s[s.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",s[s.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",s[s.JSDoc=16777216]="JSDoc",s[s.Ambient=33554432]="Ambient",s[s.InWithStatement=67108864]="InWithStatement",s[s.JsonFile=134217728]="JsonFile",s[s.TypeCached=268435456]="TypeCached",s[s.Deprecated=536870912]="Deprecated",s[s.BlockScoped=7]="BlockScoped",s[s.Constant=6]="Constant",s[s.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",s[s.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",s[s.ContextFlags=101441536]="ContextFlags",s[s.TypeExcludesFlags=81920]="TypeExcludesFlags",s[s.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",s[s.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",s[s.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",s))(AC||{}),JE=(s=>(s[s.None=0]="None",s[s.Public=1]="Public",s[s.Private=2]="Private",s[s.Protected=4]="Protected",s[s.Readonly=8]="Readonly",s[s.Override=16]="Override",s[s.Export=32]="Export",s[s.Abstract=64]="Abstract",s[s.Ambient=128]="Ambient",s[s.Static=256]="Static",s[s.Accessor=512]="Accessor",s[s.Async=1024]="Async",s[s.Default=2048]="Default",s[s.Const=4096]="Const",s[s.In=8192]="In",s[s.Out=16384]="Out",s[s.Decorator=32768]="Decorator",s[s.Deprecated=65536]="Deprecated",s[s.JSDocPublic=8388608]="JSDocPublic",s[s.JSDocPrivate=16777216]="JSDocPrivate",s[s.JSDocProtected=33554432]="JSDocProtected",s[s.JSDocReadonly=67108864]="JSDocReadonly",s[s.JSDocOverride=134217728]="JSDocOverride",s[s.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",s[s.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",s[s.SyntacticModifiers=65535]="SyntacticModifiers",s[s.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",s[s.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",s[s.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",s[s.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",s[s.HasComputedFlags=536870912]="HasComputedFlags",s[s.AccessibilityModifier=7]="AccessibilityModifier",s[s.ParameterPropertyModifier=31]="ParameterPropertyModifier",s[s.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",s[s.TypeScriptModifier=28895]="TypeScriptModifier",s[s.ExportDefault=2080]="ExportDefault",s[s.All=131071]="All",s[s.Modifier=98303]="Modifier",s))(JE||{}),Ym=(s=>(s[s.None=0]="None",s[s.IntrinsicNamedElement=1]="IntrinsicNamedElement",s[s.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",s[s.IntrinsicElement=3]="IntrinsicElement",s))(Ym||{}),vy=(s=>(s[s.None=0]="None",s[s.Succeeded=1]="Succeeded",s[s.Failed=2]="Failed",s[s.ReportsUnmeasurable=8]="ReportsUnmeasurable",s[s.ReportsUnreliable=16]="ReportsUnreliable",s[s.ReportsMask=24]="ReportsMask",s[s.ComplexityOverflow=32]="ComplexityOverflow",s[s.StackDepthOverflow=64]="StackDepthOverflow",s[s.Overflow=96]="Overflow",s))(vy||{}),K_=(s=>(s[s.None=0]="None",s[s.Always=1]="Always",s[s.Never=2]="Never",s[s.Sometimes=3]="Sometimes",s))(K_||{}),od=(s=>(s[s.None=0]="None",s[s.Auto=1]="Auto",s[s.Loop=2]="Loop",s[s.Unique=3]="Unique",s[s.Node=4]="Node",s[s.KindMask=7]="KindMask",s[s.ReservedInNestedScopes=8]="ReservedInNestedScopes",s[s.Optimistic=16]="Optimistic",s[s.FileLevel=32]="FileLevel",s[s.AllowNameSubstitution=64]="AllowNameSubstitution",s))(od||{}),UE=(s=>(s[s.None=0]="None",s[s.HasIndices=1]="HasIndices",s[s.Global=2]="Global",s[s.IgnoreCase=4]="IgnoreCase",s[s.Multiline=8]="Multiline",s[s.DotAll=16]="DotAll",s[s.Unicode=32]="Unicode",s[s.UnicodeSets=64]="UnicodeSets",s[s.Sticky=128]="Sticky",s[s.AnyUnicodeMode=96]="AnyUnicodeMode",s[s.Modifiers=28]="Modifiers",s))(UE||{}),KE=(s=>(s[s.None=0]="None",s[s.PrecedingLineBreak=1]="PrecedingLineBreak",s[s.PrecedingJSDocComment=2]="PrecedingJSDocComment",s[s.Unterminated=4]="Unterminated",s[s.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",s[s.Scientific=16]="Scientific",s[s.Octal=32]="Octal",s[s.HexSpecifier=64]="HexSpecifier",s[s.BinarySpecifier=128]="BinarySpecifier",s[s.OctalSpecifier=256]="OctalSpecifier",s[s.ContainsSeparator=512]="ContainsSeparator",s[s.UnicodeEscape=1024]="UnicodeEscape",s[s.ContainsInvalidEscape=2048]="ContainsInvalidEscape",s[s.HexEscape=4096]="HexEscape",s[s.ContainsLeadingZero=8192]="ContainsLeadingZero",s[s.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",s[s.PrecedingJSDocLeadingAsterisks=32768]="PrecedingJSDocLeadingAsterisks",s[s.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",s[s.WithSpecifier=448]="WithSpecifier",s[s.StringLiteralFlags=7176]="StringLiteralFlags",s[s.NumericLiteralFlags=25584]="NumericLiteralFlags",s[s.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",s[s.IsInvalid=26656]="IsInvalid",s))(KE||{}),Yp=(s=>(s[s.Unreachable=1]="Unreachable",s[s.Start=2]="Start",s[s.BranchLabel=4]="BranchLabel",s[s.LoopLabel=8]="LoopLabel",s[s.Assignment=16]="Assignment",s[s.TrueCondition=32]="TrueCondition",s[s.FalseCondition=64]="FalseCondition",s[s.SwitchClause=128]="SwitchClause",s[s.ArrayMutation=256]="ArrayMutation",s[s.Call=512]="Call",s[s.ReduceLabel=1024]="ReduceLabel",s[s.Referenced=2048]="Referenced",s[s.Shared=4096]="Shared",s[s.Label=12]="Label",s[s.Condition=96]="Condition",s))(Yp||{}),JS=(s=>(s[s.ExpectError=0]="ExpectError",s[s.Ignore=1]="Ignore",s))(JS||{}),By=class{},$0=(s=>(s[s.RootFile=0]="RootFile",s[s.SourceFromProjectReference=1]="SourceFromProjectReference",s[s.OutputFromProjectReference=2]="OutputFromProjectReference",s[s.Import=3]="Import",s[s.ReferenceFile=4]="ReferenceFile",s[s.TypeReferenceDirective=5]="TypeReferenceDirective",s[s.LibFile=6]="LibFile",s[s.LibReferenceDirective=7]="LibReferenceDirective",s[s.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",s))($0||{}),fw=(s=>(s[s.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",s[s.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",s[s.ResolutionDiagnostics=2]="ResolutionDiagnostics",s))(fw||{}),Q2=(s=>(s[s.Js=0]="Js",s[s.Dts=1]="Dts",s[s.BuilderSignature=2]="BuilderSignature",s))(Q2||{}),xc=(s=>(s[s.Not=0]="Not",s[s.SafeModules=1]="SafeModules",s[s.Completely=2]="Completely",s))(xc||{}),ut=(s=>(s[s.Success=0]="Success",s[s.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",s[s.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",s[s.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",s[s.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",s))(ut||{}),ar=(s=>(s[s.Ok=0]="Ok",s[s.NeedsOverride=1]="NeedsOverride",s[s.HasInvalidOverride=2]="HasInvalidOverride",s))(ar||{}),Jr=(s=>(s[s.None=0]="None",s[s.Literal=1]="Literal",s[s.Subtype=2]="Subtype",s))(Jr||{}),Gn=(s=>(s[s.None=0]="None",s[s.NoSupertypeReduction=1]="NoSupertypeReduction",s[s.NoConstraintReduction=2]="NoConstraintReduction",s))(Gn||{}),Ts=(s=>(s[s.None=0]="None",s[s.Signature=1]="Signature",s[s.NoConstraints=2]="NoConstraints",s[s.Completions=4]="Completions",s[s.SkipBindingPatterns=8]="SkipBindingPatterns",s))(Ts||{}),Qo=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",s[s.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",s[s.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",s[s.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",s[s.AllowEmptyTuple=524288]="AllowEmptyTuple",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",s[s.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",s[s.IgnoreErrors=70221824]="IgnoreErrors",s[s.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.InInitialEntityName=16777216]="InInitialEntityName",s))(Qo||{}),vg=(s=>(s[s.None=0]="None",s[s.WriteComputedProps=1]="WriteComputedProps",s[s.NoSyntacticPrinter=2]="NoSyntacticPrinter",s[s.DoNotIncludeSymbolChain=4]="DoNotIncludeSymbolChain",s[s.AllowUnresolvedNames=8]="AllowUnresolvedNames",s))(vg||{}),Ng=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AddUndefined=131072]="AddUndefined",s[s.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",s[s.InArrayType=524288]="InArrayType",s[s.InElementType=2097152]="InElementType",s[s.InFirstTypeArgument=4194304]="InFirstTypeArgument",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",s))(Ng||{}),Rf=(s=>(s[s.None=0]="None",s[s.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",s[s.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",s[s.AllowAnyNodeKind=4]="AllowAnyNodeKind",s[s.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",s[s.WriteComputedProps=16]="WriteComputedProps",s[s.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",s))(Rf||{}),uI=(s=>(s[s.Accessible=0]="Accessible",s[s.NotAccessible=1]="NotAccessible",s[s.CannotBeNamed=2]="CannotBeNamed",s[s.NotResolved=3]="NotResolved",s))(uI||{}),Th=(s=>(s[s.This=0]="This",s[s.Identifier=1]="Identifier",s[s.AssertsThis=2]="AssertsThis",s[s.AssertsIdentifier=3]="AssertsIdentifier",s))(Th||{}),oE=(s=>(s[s.Unknown=0]="Unknown",s[s.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",s[s.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",s[s.NumberLikeType=3]="NumberLikeType",s[s.BigIntLikeType=4]="BigIntLikeType",s[s.StringLikeType=5]="StringLikeType",s[s.BooleanType=6]="BooleanType",s[s.ArrayLikeType=7]="ArrayLikeType",s[s.ESSymbolType=8]="ESSymbolType",s[s.Promise=9]="Promise",s[s.TypeWithCallSignature=10]="TypeWithCallSignature",s[s.ObjectType=11]="ObjectType",s))(oE||{}),TT=(s=>(s[s.None=0]="None",s[s.FunctionScopedVariable=1]="FunctionScopedVariable",s[s.BlockScopedVariable=2]="BlockScopedVariable",s[s.Property=4]="Property",s[s.EnumMember=8]="EnumMember",s[s.Function=16]="Function",s[s.Class=32]="Class",s[s.Interface=64]="Interface",s[s.ConstEnum=128]="ConstEnum",s[s.RegularEnum=256]="RegularEnum",s[s.ValueModule=512]="ValueModule",s[s.NamespaceModule=1024]="NamespaceModule",s[s.TypeLiteral=2048]="TypeLiteral",s[s.ObjectLiteral=4096]="ObjectLiteral",s[s.Method=8192]="Method",s[s.Constructor=16384]="Constructor",s[s.GetAccessor=32768]="GetAccessor",s[s.SetAccessor=65536]="SetAccessor",s[s.Signature=131072]="Signature",s[s.TypeParameter=262144]="TypeParameter",s[s.TypeAlias=524288]="TypeAlias",s[s.ExportValue=1048576]="ExportValue",s[s.Alias=2097152]="Alias",s[s.Prototype=4194304]="Prototype",s[s.ExportStar=8388608]="ExportStar",s[s.Optional=16777216]="Optional",s[s.Transient=33554432]="Transient",s[s.Assignment=67108864]="Assignment",s[s.ModuleExports=134217728]="ModuleExports",s[s.All=-1]="All",s[s.Enum=384]="Enum",s[s.Variable=3]="Variable",s[s.Value=111551]="Value",s[s.Type=788968]="Type",s[s.Namespace=1920]="Namespace",s[s.Module=1536]="Module",s[s.Accessor=98304]="Accessor",s[s.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",s[s.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",s[s.ParameterExcludes=111551]="ParameterExcludes",s[s.PropertyExcludes=0]="PropertyExcludes",s[s.EnumMemberExcludes=900095]="EnumMemberExcludes",s[s.FunctionExcludes=110991]="FunctionExcludes",s[s.ClassExcludes=899503]="ClassExcludes",s[s.InterfaceExcludes=788872]="InterfaceExcludes",s[s.RegularEnumExcludes=899327]="RegularEnumExcludes",s[s.ConstEnumExcludes=899967]="ConstEnumExcludes",s[s.ValueModuleExcludes=110735]="ValueModuleExcludes",s[s.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",s[s.MethodExcludes=103359]="MethodExcludes",s[s.GetAccessorExcludes=46015]="GetAccessorExcludes",s[s.SetAccessorExcludes=78783]="SetAccessorExcludes",s[s.AccessorExcludes=13247]="AccessorExcludes",s[s.TypeParameterExcludes=526824]="TypeParameterExcludes",s[s.TypeAliasExcludes=788968]="TypeAliasExcludes",s[s.AliasExcludes=2097152]="AliasExcludes",s[s.ModuleMember=2623475]="ModuleMember",s[s.ExportHasLocal=944]="ExportHasLocal",s[s.BlockScoped=418]="BlockScoped",s[s.PropertyOrAccessor=98308]="PropertyOrAccessor",s[s.ClassMember=106500]="ClassMember",s[s.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",s[s.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",s[s.Classifiable=2885600]="Classifiable",s[s.LateBindingContainer=6256]="LateBindingContainer",s))(TT||{}),sB=(s=>(s[s.None=0]="None",s[s.Instantiated=1]="Instantiated",s[s.SyntheticProperty=2]="SyntheticProperty",s[s.SyntheticMethod=4]="SyntheticMethod",s[s.Readonly=8]="Readonly",s[s.ReadPartial=16]="ReadPartial",s[s.WritePartial=32]="WritePartial",s[s.HasNonUniformType=64]="HasNonUniformType",s[s.HasLiteralType=128]="HasLiteralType",s[s.ContainsPublic=256]="ContainsPublic",s[s.ContainsProtected=512]="ContainsProtected",s[s.ContainsPrivate=1024]="ContainsPrivate",s[s.ContainsStatic=2048]="ContainsStatic",s[s.Late=4096]="Late",s[s.ReverseMapped=8192]="ReverseMapped",s[s.OptionalParameter=16384]="OptionalParameter",s[s.RestParameter=32768]="RestParameter",s[s.DeferredType=65536]="DeferredType",s[s.HasNeverType=131072]="HasNeverType",s[s.Mapped=262144]="Mapped",s[s.StripOptional=524288]="StripOptional",s[s.Unresolved=1048576]="Unresolved",s[s.Synthetic=6]="Synthetic",s[s.Discriminant=192]="Discriminant",s[s.Partial=48]="Partial",s))(sB||{}),RT=(s=>(s.Call="__call",s.Constructor="__constructor",s.New="__new",s.Index="__index",s.ExportStar="__export",s.Global="__global",s.Missing="__missing",s.Type="__type",s.Object="__object",s.JSXAttributes="__jsxAttributes",s.Class="__class",s.Function="__function",s.Computed="__computed",s.Resolving="__resolving__",s.ExportEquals="export=",s.Default="default",s.This="this",s.InstantiationExpression="__instantiationExpression",s.ImportAttributes="__importAttributes",s))(RT||{}),wy=(s=>(s[s.None=0]="None",s[s.TypeChecked=1]="TypeChecked",s[s.LexicalThis=2]="LexicalThis",s[s.CaptureThis=4]="CaptureThis",s[s.CaptureNewTarget=8]="CaptureNewTarget",s[s.SuperInstance=16]="SuperInstance",s[s.SuperStatic=32]="SuperStatic",s[s.ContextChecked=64]="ContextChecked",s[s.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",s[s.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",s[s.CaptureArguments=512]="CaptureArguments",s[s.EnumValuesComputed=1024]="EnumValuesComputed",s[s.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",s[s.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",s[s.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",s[s.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",s[s.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",s[s.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",s[s.AssignmentsMarked=131072]="AssignmentsMarked",s[s.ContainsConstructorReference=262144]="ContainsConstructorReference",s[s.ConstructorReference=536870912]="ConstructorReference",s[s.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",s[s.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",s[s.InCheckIdentifier=4194304]="InCheckIdentifier",s[s.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",s[s.LazyFlags=539358128]="LazyFlags",s))(wy||{}),jE=(s=>(s[s.Any=1]="Any",s[s.Unknown=2]="Unknown",s[s.String=4]="String",s[s.Number=8]="Number",s[s.Boolean=16]="Boolean",s[s.Enum=32]="Enum",s[s.BigInt=64]="BigInt",s[s.StringLiteral=128]="StringLiteral",s[s.NumberLiteral=256]="NumberLiteral",s[s.BooleanLiteral=512]="BooleanLiteral",s[s.EnumLiteral=1024]="EnumLiteral",s[s.BigIntLiteral=2048]="BigIntLiteral",s[s.ESSymbol=4096]="ESSymbol",s[s.UniqueESSymbol=8192]="UniqueESSymbol",s[s.Void=16384]="Void",s[s.Undefined=32768]="Undefined",s[s.Null=65536]="Null",s[s.Never=131072]="Never",s[s.TypeParameter=262144]="TypeParameter",s[s.Object=524288]="Object",s[s.Union=1048576]="Union",s[s.Intersection=2097152]="Intersection",s[s.Index=4194304]="Index",s[s.IndexedAccess=8388608]="IndexedAccess",s[s.Conditional=16777216]="Conditional",s[s.Substitution=33554432]="Substitution",s[s.NonPrimitive=67108864]="NonPrimitive",s[s.TemplateLiteral=134217728]="TemplateLiteral",s[s.StringMapping=268435456]="StringMapping",s[s.Reserved1=536870912]="Reserved1",s[s.Reserved2=1073741824]="Reserved2",s[s.AnyOrUnknown=3]="AnyOrUnknown",s[s.Nullable=98304]="Nullable",s[s.Literal=2944]="Literal",s[s.Unit=109472]="Unit",s[s.Freshable=2976]="Freshable",s[s.StringOrNumberLiteral=384]="StringOrNumberLiteral",s[s.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",s[s.DefinitelyFalsy=117632]="DefinitelyFalsy",s[s.PossiblyFalsy=117724]="PossiblyFalsy",s[s.Intrinsic=67359327]="Intrinsic",s[s.StringLike=402653316]="StringLike",s[s.NumberLike=296]="NumberLike",s[s.BigIntLike=2112]="BigIntLike",s[s.BooleanLike=528]="BooleanLike",s[s.EnumLike=1056]="EnumLike",s[s.ESSymbolLike=12288]="ESSymbolLike",s[s.VoidLike=49152]="VoidLike",s[s.Primitive=402784252]="Primitive",s[s.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",s[s.DisjointDomains=469892092]="DisjointDomains",s[s.UnionOrIntersection=3145728]="UnionOrIntersection",s[s.StructuredType=3670016]="StructuredType",s[s.TypeVariable=8650752]="TypeVariable",s[s.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",s[s.InstantiablePrimitive=406847488]="InstantiablePrimitive",s[s.Instantiable=465829888]="Instantiable",s[s.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",s[s.ObjectFlagsType=3899393]="ObjectFlagsType",s[s.Simplifiable=25165824]="Simplifiable",s[s.Singleton=67358815]="Singleton",s[s.Narrowable=536624127]="Narrowable",s[s.IncludesMask=473694207]="IncludesMask",s[s.IncludesMissingType=262144]="IncludesMissingType",s[s.IncludesNonWideningType=4194304]="IncludesNonWideningType",s[s.IncludesWildcard=8388608]="IncludesWildcard",s[s.IncludesEmptyObject=16777216]="IncludesEmptyObject",s[s.IncludesInstantiable=33554432]="IncludesInstantiable",s[s.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",s[s.IncludesError=1073741824]="IncludesError",s[s.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",s))(jE||{}),j_=(s=>(s[s.None=0]="None",s[s.Class=1]="Class",s[s.Interface=2]="Interface",s[s.Reference=4]="Reference",s[s.Tuple=8]="Tuple",s[s.Anonymous=16]="Anonymous",s[s.Mapped=32]="Mapped",s[s.Instantiated=64]="Instantiated",s[s.ObjectLiteral=128]="ObjectLiteral",s[s.EvolvingArray=256]="EvolvingArray",s[s.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",s[s.ReverseMapped=1024]="ReverseMapped",s[s.JsxAttributes=2048]="JsxAttributes",s[s.JSLiteral=4096]="JSLiteral",s[s.FreshLiteral=8192]="FreshLiteral",s[s.ArrayLiteral=16384]="ArrayLiteral",s[s.PrimitiveUnion=32768]="PrimitiveUnion",s[s.ContainsWideningType=65536]="ContainsWideningType",s[s.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",s[s.NonInferrableType=262144]="NonInferrableType",s[s.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",s[s.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",s[s.SingleSignatureType=134217728]="SingleSignatureType",s[s.ClassOrInterface=3]="ClassOrInterface",s[s.RequiresWidening=196608]="RequiresWidening",s[s.PropagatingFlags=458752]="PropagatingFlags",s[s.InstantiatedMapped=96]="InstantiatedMapped",s[s.ObjectTypeKindMask=1343]="ObjectTypeKindMask",s[s.ContainsSpread=2097152]="ContainsSpread",s[s.ObjectRestType=4194304]="ObjectRestType",s[s.InstantiationExpressionType=8388608]="InstantiationExpressionType",s[s.IsClassInstanceClone=16777216]="IsClassInstanceClone",s[s.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",s[s.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",s[s.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",s[s.IsGenericObjectType=4194304]="IsGenericObjectType",s[s.IsGenericIndexType=8388608]="IsGenericIndexType",s[s.IsGenericType=12582912]="IsGenericType",s[s.ContainsIntersections=16777216]="ContainsIntersections",s[s.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",s[s.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",s[s.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",s[s.IsNeverIntersection=33554432]="IsNeverIntersection",s[s.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",s))(j_||{}),NT=(s=>(s[s.Invariant=0]="Invariant",s[s.Covariant=1]="Covariant",s[s.Contravariant=2]="Contravariant",s[s.Bivariant=3]="Bivariant",s[s.Independent=4]="Independent",s[s.VarianceMask=7]="VarianceMask",s[s.Unmeasurable=8]="Unmeasurable",s[s.Unreliable=16]="Unreliable",s[s.AllowsStructuralFallback=24]="AllowsStructuralFallback",s))(NT||{}),tf=(s=>(s[s.Required=1]="Required",s[s.Optional=2]="Optional",s[s.Rest=4]="Rest",s[s.Variadic=8]="Variadic",s[s.Fixed=3]="Fixed",s[s.Variable=12]="Variable",s[s.NonRequired=14]="NonRequired",s[s.NonRest=11]="NonRest",s))(tf||{}),Ty=(s=>(s[s.None=0]="None",s[s.IncludeUndefined=1]="IncludeUndefined",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.Writing=4]="Writing",s[s.CacheSymbol=8]="CacheSymbol",s[s.AllowMissing=16]="AllowMissing",s[s.ExpressionPosition=32]="ExpressionPosition",s[s.ReportDeprecated=64]="ReportDeprecated",s[s.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",s[s.Contextual=256]="Contextual",s[s.Persistent=1]="Persistent",s))(Ty||{}),US=(s=>(s[s.None=0]="None",s[s.StringsOnly=1]="StringsOnly",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.NoReducibleCheck=4]="NoReducibleCheck",s))(US||{}),$I=(s=>(s[s.Component=0]="Component",s[s.Function=1]="Function",s[s.Mixed=2]="Mixed",s))($I||{}),BA=(s=>(s[s.Call=0]="Call",s[s.Construct=1]="Construct",s))(BA||{}),$A=(s=>(s[s.None=0]="None",s[s.HasRestParameter=1]="HasRestParameter",s[s.HasLiteralTypes=2]="HasLiteralTypes",s[s.Abstract=4]="Abstract",s[s.IsInnerCallChain=8]="IsInnerCallChain",s[s.IsOuterCallChain=16]="IsOuterCallChain",s[s.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",s[s.IsNonInferrable=64]="IsNonInferrable",s[s.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",s[s.PropagatingFlags=167]="PropagatingFlags",s[s.CallChainFlags=24]="CallChainFlags",s))($A||{}),Qm=(s=>(s[s.String=0]="String",s[s.Number=1]="Number",s))(Qm||{}),zf=(s=>(s[s.Simple=0]="Simple",s[s.Array=1]="Array",s[s.Deferred=2]="Deferred",s[s.Function=3]="Function",s[s.Composite=4]="Composite",s[s.Merged=5]="Merged",s))(zf||{}),mb=(s=>(s[s.None=0]="None",s[s.NakedTypeVariable=1]="NakedTypeVariable",s[s.SpeculativeTuple=2]="SpeculativeTuple",s[s.SubstituteSource=4]="SubstituteSource",s[s.HomomorphicMappedType=8]="HomomorphicMappedType",s[s.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",s[s.MappedTypeConstraint=32]="MappedTypeConstraint",s[s.ContravariantConditional=64]="ContravariantConditional",s[s.ReturnType=128]="ReturnType",s[s.LiteralKeyof=256]="LiteralKeyof",s[s.NoConstraints=512]="NoConstraints",s[s.AlwaysStrict=1024]="AlwaysStrict",s[s.MaxValue=2048]="MaxValue",s[s.PriorityImpliesCombination=416]="PriorityImpliesCombination",s[s.Circularity=-1]="Circularity",s))(mb||{}),R_=(s=>(s[s.None=0]="None",s[s.NoDefault=1]="NoDefault",s[s.AnyDefault=2]="AnyDefault",s[s.SkippedGenericFunction=4]="SkippedGenericFunction",s))(R_||{}),Cb=(s=>(s[s.False=0]="False",s[s.Unknown=1]="Unknown",s[s.Maybe=3]="Maybe",s[s.True=-1]="True",s))(Cb||{}),Ry=(s=>(s[s.None=0]="None",s[s.ExportsProperty=1]="ExportsProperty",s[s.ModuleExports=2]="ModuleExports",s[s.PrototypeProperty=3]="PrototypeProperty",s[s.ThisProperty=4]="ThisProperty",s[s.Property=5]="Property",s[s.Prototype=6]="Prototype",s[s.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",s[s.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",s[s.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",s))(Ry||{}),KS=(s=>(s[s.Warning=0]="Warning",s[s.Error=1]="Error",s[s.Suggestion=2]="Suggestion",s[s.Message=3]="Message",s))(KS||{});function _b(s,c=!0){let g=KS[s.category];return c?g.toLowerCase():g}var z_=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s[s.Node10=2]="Node10",s[s.Node16=3]="Node16",s[s.NodeNext=99]="NodeNext",s[s.Bundler=100]="Bundler",s))(z_||{}),zE=(s=>(s[s.Legacy=1]="Legacy",s[s.Auto=2]="Auto",s[s.Force=3]="Force",s))(zE||{}),oB=(s=>(s[s.FixedPollingInterval=0]="FixedPollingInterval",s[s.PriorityPollingInterval=1]="PriorityPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s[s.UseFsEvents=4]="UseFsEvents",s[s.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",s))(oB||{}),DT=(s=>(s[s.UseFsEvents=0]="UseFsEvents",s[s.FixedPollingInterval=1]="FixedPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s))(DT||{}),aB=(s=>(s[s.FixedInterval=0]="FixedInterval",s[s.PriorityInterval=1]="PriorityInterval",s[s.DynamicPriority=2]="DynamicPriority",s[s.FixedChunkSize=3]="FixedChunkSize",s))(aB||{}),jS=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ES2020=6]="ES2020",s[s.ES2022=7]="ES2022",s[s.ESNext=99]="ESNext",s[s.Node16=100]="Node16",s[s.Node18=101]="Node18",s[s.Node20=102]="Node20",s[s.NodeNext=199]="NodeNext",s[s.Preserve=200]="Preserve",s))(jS||{}),XR=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(XR||{}),zS=(s=>(s[s.Remove=0]="Remove",s[s.Preserve=1]="Preserve",s[s.Error=2]="Error",s))(zS||{}),qE=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(qE||{}),X2=(s=>(s[s.Unknown=0]="Unknown",s[s.JS=1]="JS",s[s.JSX=2]="JSX",s[s.TS=3]="TS",s[s.TSX=4]="TSX",s[s.External=5]="External",s[s.JSON=6]="JSON",s[s.Deferred=7]="Deferred",s))(X2||{}),kT=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ES2021=8]="ES2021",s[s.ES2022=9]="ES2022",s[s.ES2023=10]="ES2023",s[s.ES2024=11]="ES2024",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(kT||{}),pn=(s=>(s[s.Standard=0]="Standard",s[s.JSX=1]="JSX",s))(pn||{}),q1=(s=>(s[s.None=0]="None",s[s.Recursive=1]="Recursive",s))(q1||{}),J2=(s=>(s[s.EOF=-1]="EOF",s[s.nullCharacter=0]="nullCharacter",s[s.maxAsciiCharacter=127]="maxAsciiCharacter",s[s.lineFeed=10]="lineFeed",s[s.carriageReturn=13]="carriageReturn",s[s.lineSeparator=8232]="lineSeparator",s[s.paragraphSeparator=8233]="paragraphSeparator",s[s.nextLine=133]="nextLine",s[s.space=32]="space",s[s.nonBreakingSpace=160]="nonBreakingSpace",s[s.enQuad=8192]="enQuad",s[s.emQuad=8193]="emQuad",s[s.enSpace=8194]="enSpace",s[s.emSpace=8195]="emSpace",s[s.threePerEmSpace=8196]="threePerEmSpace",s[s.fourPerEmSpace=8197]="fourPerEmSpace",s[s.sixPerEmSpace=8198]="sixPerEmSpace",s[s.figureSpace=8199]="figureSpace",s[s.punctuationSpace=8200]="punctuationSpace",s[s.thinSpace=8201]="thinSpace",s[s.hairSpace=8202]="hairSpace",s[s.zeroWidthSpace=8203]="zeroWidthSpace",s[s.narrowNoBreakSpace=8239]="narrowNoBreakSpace",s[s.ideographicSpace=12288]="ideographicSpace",s[s.mathematicalSpace=8287]="mathematicalSpace",s[s.ogham=5760]="ogham",s[s.replacementCharacter=65533]="replacementCharacter",s[s._=95]="_",s[s.$=36]="$",s[s._0=48]="_0",s[s._1=49]="_1",s[s._2=50]="_2",s[s._3=51]="_3",s[s._4=52]="_4",s[s._5=53]="_5",s[s._6=54]="_6",s[s._7=55]="_7",s[s._8=56]="_8",s[s._9=57]="_9",s[s.a=97]="a",s[s.b=98]="b",s[s.c=99]="c",s[s.d=100]="d",s[s.e=101]="e",s[s.f=102]="f",s[s.g=103]="g",s[s.h=104]="h",s[s.i=105]="i",s[s.j=106]="j",s[s.k=107]="k",s[s.l=108]="l",s[s.m=109]="m",s[s.n=110]="n",s[s.o=111]="o",s[s.p=112]="p",s[s.q=113]="q",s[s.r=114]="r",s[s.s=115]="s",s[s.t=116]="t",s[s.u=117]="u",s[s.v=118]="v",s[s.w=119]="w",s[s.x=120]="x",s[s.y=121]="y",s[s.z=122]="z",s[s.A=65]="A",s[s.B=66]="B",s[s.C=67]="C",s[s.D=68]="D",s[s.E=69]="E",s[s.F=70]="F",s[s.G=71]="G",s[s.H=72]="H",s[s.I=73]="I",s[s.J=74]="J",s[s.K=75]="K",s[s.L=76]="L",s[s.M=77]="M",s[s.N=78]="N",s[s.O=79]="O",s[s.P=80]="P",s[s.Q=81]="Q",s[s.R=82]="R",s[s.S=83]="S",s[s.T=84]="T",s[s.U=85]="U",s[s.V=86]="V",s[s.W=87]="W",s[s.X=88]="X",s[s.Y=89]="Y",s[s.Z=90]="Z",s[s.ampersand=38]="ampersand",s[s.asterisk=42]="asterisk",s[s.at=64]="at",s[s.backslash=92]="backslash",s[s.backtick=96]="backtick",s[s.bar=124]="bar",s[s.caret=94]="caret",s[s.closeBrace=125]="closeBrace",s[s.closeBracket=93]="closeBracket",s[s.closeParen=41]="closeParen",s[s.colon=58]="colon",s[s.comma=44]="comma",s[s.dot=46]="dot",s[s.doubleQuote=34]="doubleQuote",s[s.equals=61]="equals",s[s.exclamation=33]="exclamation",s[s.greaterThan=62]="greaterThan",s[s.hash=35]="hash",s[s.lessThan=60]="lessThan",s[s.minus=45]="minus",s[s.openBrace=123]="openBrace",s[s.openBracket=91]="openBracket",s[s.openParen=40]="openParen",s[s.percent=37]="percent",s[s.plus=43]="plus",s[s.question=63]="question",s[s.semicolon=59]="semicolon",s[s.singleQuote=39]="singleQuote",s[s.slash=47]="slash",s[s.tilde=126]="tilde",s[s.backspace=8]="backspace",s[s.formFeed=12]="formFeed",s[s.byteOrderMark=65279]="byteOrderMark",s[s.tab=9]="tab",s[s.verticalTab=11]="verticalTab",s))(J2||{}),ey=(s=>(s.Ts=".ts",s.Tsx=".tsx",s.Dts=".d.ts",s.Js=".js",s.Jsx=".jsx",s.Json=".json",s.TsBuildInfo=".tsbuildinfo",s.Mjs=".mjs",s.Mts=".mts",s.Dmts=".d.mts",s.Cjs=".cjs",s.Cts=".cts",s.Dcts=".d.cts",s))(ey||{}),up=(s=>(s[s.None=0]="None",s[s.ContainsTypeScript=1]="ContainsTypeScript",s[s.ContainsJsx=2]="ContainsJsx",s[s.ContainsESNext=4]="ContainsESNext",s[s.ContainsES2022=8]="ContainsES2022",s[s.ContainsES2021=16]="ContainsES2021",s[s.ContainsES2020=32]="ContainsES2020",s[s.ContainsES2019=64]="ContainsES2019",s[s.ContainsES2018=128]="ContainsES2018",s[s.ContainsES2017=256]="ContainsES2017",s[s.ContainsES2016=512]="ContainsES2016",s[s.ContainsES2015=1024]="ContainsES2015",s[s.ContainsGenerator=2048]="ContainsGenerator",s[s.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",s[s.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",s[s.ContainsLexicalThis=16384]="ContainsLexicalThis",s[s.ContainsRestOrSpread=32768]="ContainsRestOrSpread",s[s.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",s[s.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",s[s.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",s[s.ContainsBindingPattern=524288]="ContainsBindingPattern",s[s.ContainsYield=1048576]="ContainsYield",s[s.ContainsAwait=2097152]="ContainsAwait",s[s.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",s[s.ContainsDynamicImport=8388608]="ContainsDynamicImport",s[s.ContainsClassFields=16777216]="ContainsClassFields",s[s.ContainsDecorators=33554432]="ContainsDecorators",s[s.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",s[s.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",s[s.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",s[s.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",s[s.HasComputedFlags=-2147483648]="HasComputedFlags",s[s.AssertTypeScript=1]="AssertTypeScript",s[s.AssertJsx=2]="AssertJsx",s[s.AssertESNext=4]="AssertESNext",s[s.AssertES2022=8]="AssertES2022",s[s.AssertES2021=16]="AssertES2021",s[s.AssertES2020=32]="AssertES2020",s[s.AssertES2019=64]="AssertES2019",s[s.AssertES2018=128]="AssertES2018",s[s.AssertES2017=256]="AssertES2017",s[s.AssertES2016=512]="AssertES2016",s[s.AssertES2015=1024]="AssertES2015",s[s.AssertGenerator=2048]="AssertGenerator",s[s.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",s[s.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",s[s.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",s[s.NodeExcludes=-2147483648]="NodeExcludes",s[s.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",s[s.FunctionExcludes=-1937940480]="FunctionExcludes",s[s.ConstructorExcludes=-1937948672]="ConstructorExcludes",s[s.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",s[s.PropertyExcludes=-2013249536]="PropertyExcludes",s[s.ClassExcludes=-2147344384]="ClassExcludes",s[s.ModuleExcludes=-1941676032]="ModuleExcludes",s[s.TypeExcludes=-2]="TypeExcludes",s[s.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",s[s.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",s[s.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",s[s.ParameterExcludes=-2147483648]="ParameterExcludes",s[s.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",s[s.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",s[s.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",s[s.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",s))(up||{}),Iw=(s=>(s[s.TabStop=0]="TabStop",s[s.Placeholder=1]="Placeholder",s[s.Choice=2]="Choice",s[s.Variable=3]="Variable",s))(Iw||{}),cB=(s=>(s[s.None=0]="None",s[s.SingleLine=1]="SingleLine",s[s.MultiLine=2]="MultiLine",s[s.AdviseOnEmitNode=4]="AdviseOnEmitNode",s[s.NoSubstitution=8]="NoSubstitution",s[s.CapturesThis=16]="CapturesThis",s[s.NoLeadingSourceMap=32]="NoLeadingSourceMap",s[s.NoTrailingSourceMap=64]="NoTrailingSourceMap",s[s.NoSourceMap=96]="NoSourceMap",s[s.NoNestedSourceMaps=128]="NoNestedSourceMaps",s[s.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",s[s.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",s[s.NoTokenSourceMaps=768]="NoTokenSourceMaps",s[s.NoLeadingComments=1024]="NoLeadingComments",s[s.NoTrailingComments=2048]="NoTrailingComments",s[s.NoComments=3072]="NoComments",s[s.NoNestedComments=4096]="NoNestedComments",s[s.HelperName=8192]="HelperName",s[s.ExportName=16384]="ExportName",s[s.LocalName=32768]="LocalName",s[s.InternalName=65536]="InternalName",s[s.Indented=131072]="Indented",s[s.NoIndentation=262144]="NoIndentation",s[s.AsyncFunctionBody=524288]="AsyncFunctionBody",s[s.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",s[s.CustomPrologue=2097152]="CustomPrologue",s[s.NoHoisting=4194304]="NoHoisting",s[s.Iterator=8388608]="Iterator",s[s.NoAsciiEscaping=16777216]="NoAsciiEscaping",s))(cB||{}),RD=(s=>(s[s.None=0]="None",s[s.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",s[s.NeverApplyImportHelper=2]="NeverApplyImportHelper",s[s.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",s[s.Immutable=8]="Immutable",s[s.IndirectCall=16]="IndirectCall",s[s.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",s))(RD||{}),Rd={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},JR=(s=>(s[s.Extends=1]="Extends",s[s.Assign=2]="Assign",s[s.Rest=4]="Rest",s[s.Decorate=8]="Decorate",s[s.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",s[s.Metadata=16]="Metadata",s[s.Param=32]="Param",s[s.Awaiter=64]="Awaiter",s[s.Generator=128]="Generator",s[s.Values=256]="Values",s[s.Read=512]="Read",s[s.SpreadArray=1024]="SpreadArray",s[s.Await=2048]="Await",s[s.AsyncGenerator=4096]="AsyncGenerator",s[s.AsyncDelegator=8192]="AsyncDelegator",s[s.AsyncValues=16384]="AsyncValues",s[s.ExportStar=32768]="ExportStar",s[s.ImportStar=65536]="ImportStar",s[s.ImportDefault=131072]="ImportDefault",s[s.MakeTemplateObject=262144]="MakeTemplateObject",s[s.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",s[s.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",s[s.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",s[s.SetFunctionName=4194304]="SetFunctionName",s[s.PropKey=8388608]="PropKey",s[s.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",s[s.RewriteRelativeImportExtension=33554432]="RewriteRelativeImportExtension",s[s.FirstEmitHelper=1]="FirstEmitHelper",s[s.LastEmitHelper=16777216]="LastEmitHelper",s[s.ForOfIncludes=256]="ForOfIncludes",s[s.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",s[s.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",s[s.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",s[s.SpreadIncludes=1536]="SpreadIncludes",s))(JR||{}),ty=(s=>(s[s.SourceFile=0]="SourceFile",s[s.Expression=1]="Expression",s[s.IdentifierName=2]="IdentifierName",s[s.MappedTypeParameter=3]="MappedTypeParameter",s[s.Unspecified=4]="Unspecified",s[s.EmbeddedStatement=5]="EmbeddedStatement",s[s.JsxAttributeValue=6]="JsxAttributeValue",s[s.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",s))(ty||{}),cF=(s=>(s[s.Parentheses=1]="Parentheses",s[s.TypeAssertions=2]="TypeAssertions",s[s.NonNullAssertions=4]="NonNullAssertions",s[s.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",s[s.ExpressionsWithTypeArguments=16]="ExpressionsWithTypeArguments",s[s.Satisfies=32]="Satisfies",s[s.Assertions=38]="Assertions",s[s.All=63]="All",s[s.ExcludeJSDocTypeAssertion=-2147483648]="ExcludeJSDocTypeAssertion",s))(cF||{}),$1=(s=>(s[s.None=0]="None",s[s.InParameters=1]="InParameters",s[s.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",s))($1||{}),$E=(s=>(s[s.None=0]="None",s[s.SingleLine=0]="SingleLine",s[s.MultiLine=1]="MultiLine",s[s.PreserveLines=2]="PreserveLines",s[s.LinesMask=3]="LinesMask",s[s.NotDelimited=0]="NotDelimited",s[s.BarDelimited=4]="BarDelimited",s[s.AmpersandDelimited=8]="AmpersandDelimited",s[s.CommaDelimited=16]="CommaDelimited",s[s.AsteriskDelimited=32]="AsteriskDelimited",s[s.DelimitersMask=60]="DelimitersMask",s[s.AllowTrailingComma=64]="AllowTrailingComma",s[s.Indented=128]="Indented",s[s.SpaceBetweenBraces=256]="SpaceBetweenBraces",s[s.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",s[s.Braces=1024]="Braces",s[s.Parenthesis=2048]="Parenthesis",s[s.AngleBrackets=4096]="AngleBrackets",s[s.SquareBrackets=8192]="SquareBrackets",s[s.BracketsMask=15360]="BracketsMask",s[s.OptionalIfUndefined=16384]="OptionalIfUndefined",s[s.OptionalIfEmpty=32768]="OptionalIfEmpty",s[s.Optional=49152]="Optional",s[s.PreferNewLine=65536]="PreferNewLine",s[s.NoTrailingNewLine=131072]="NoTrailingNewLine",s[s.NoInterveningComments=262144]="NoInterveningComments",s[s.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",s[s.SingleElement=1048576]="SingleElement",s[s.SpaceAfterList=2097152]="SpaceAfterList",s[s.Modifiers=2359808]="Modifiers",s[s.HeritageClauses=512]="HeritageClauses",s[s.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",s[s.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",s[s.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",s[s.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",s[s.UnionTypeConstituents=516]="UnionTypeConstituents",s[s.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",s[s.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",s[s.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",s[s.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",s[s.ImportAttributes=526226]="ImportAttributes",s[s.ImportClauseEntries=526226]="ImportClauseEntries",s[s.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",s[s.CommaListElements=528]="CommaListElements",s[s.CallExpressionArguments=2576]="CallExpressionArguments",s[s.NewExpressionArguments=18960]="NewExpressionArguments",s[s.TemplateExpressionSpans=262144]="TemplateExpressionSpans",s[s.SingleLineBlockStatements=768]="SingleLineBlockStatements",s[s.MultiLineBlockStatements=129]="MultiLineBlockStatements",s[s.VariableDeclarationList=528]="VariableDeclarationList",s[s.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",s[s.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",s[s.ClassHeritageClauses=0]="ClassHeritageClauses",s[s.ClassMembers=129]="ClassMembers",s[s.InterfaceMembers=129]="InterfaceMembers",s[s.EnumMembers=145]="EnumMembers",s[s.CaseBlockClauses=129]="CaseBlockClauses",s[s.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",s[s.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",s[s.JsxElementAttributes=262656]="JsxElementAttributes",s[s.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",s[s.HeritageClauseTypes=528]="HeritageClauseTypes",s[s.SourceFileStatements=131073]="SourceFileStatements",s[s.Decorators=2146305]="Decorators",s[s.TypeArguments=53776]="TypeArguments",s[s.TypeParameters=53776]="TypeParameters",s[s.Parameters=2576]="Parameters",s[s.IndexSignatureParameters=8848]="IndexSignatureParameters",s[s.JSDocComment=33]="JSDocComment",s))($E||{}),N_=(s=>(s[s.None=0]="None",s[s.TripleSlashXML=1]="TripleSlashXML",s[s.SingleLine=2]="SingleLine",s[s.MultiLine=4]="MultiLine",s[s.All=7]="All",s[s.Default=7]="Default",s))(N_||{}),e1={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},t1=(s=>(s[s.ParseAll=0]="ParseAll",s[s.ParseNone=1]="ParseNone",s[s.ParseForTypeErrors=2]="ParseForTypeErrors",s[s.ParseForTypeInfo=3]="ParseForTypeInfo",s))(t1||{});function ry(s){let c=5381;for(let g=0;g(s[s.Created=0]="Created",s[s.Changed=1]="Changed",s[s.Deleted=2]="Deleted",s))(yb||{}),r_=(s=>(s[s.High=2e3]="High",s[s.Medium=500]="Medium",s[s.Low=250]="Low",s))(r_||{}),Rh=new Date(0);function bb(s,c){return s.getModifiedTime(c)||Rh}function lB(s){return{250:s.Low,500:s.Medium,2e3:s.High}}var ND={Low:32,Medium:64,High:256},DD=lB(ND),q_=lB(ND);function kD(s){if(!s.getEnvironmentVariable)return;let c=h("TSC_WATCH_POLLINGINTERVAL",r_);DD=_("TSC_WATCH_POLLINGCHUNKSIZE",ND)||DD,q_=_("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",ND)||q_;function g(S,R){return s.getEnvironmentVariable(`${S}_${R.toUpperCase()}`)}function d(S){let R;return T("Low"),T("Medium"),T("High"),R;function T(W){let V=g(S,W);V&&((R||(R={}))[W]=Number(V))}}function h(S,R){let T=d(S);if(T)return W("Low"),W("Medium"),W("High"),!0;return!1;function W(V){R[V]=T[V]||R[V]}}function _(S,R){let T=d(S);return(c||T)&&lB(T?{...R,...T}:R)}}function UR(s,c,g,d,h){let _=g;for(let R=c.length;d&&R;S(),R--){let T=c[g];if(T){if(T.isClosed){c[g]=void 0;continue}}else continue;d--;let W=aE(T,bb(s,T.fileName));if(T.isClosed){c[g]=void 0;continue}h?.(T,g,W),c[g]&&(_{Te.isClosed=!0,ef(c,Te)}}}function R(_e){let Ee=[];return Ee.pollingInterval=_e,Ee.pollIndex=0,Ee.pollScheduled=!1,Ee}function T(_e,Ee){Ee.pollIndex=V(Ee,Ee.pollingInterval,Ee.pollIndex,DD[Ee.pollingInterval]),Ee.length?Ie(Ee.pollingInterval):(pe.assert(Ee.pollIndex===0),Ee.pollScheduled=!1)}function W(_e,Ee){V(g,250,0,g.length),T(_e,Ee),!Ee.pollScheduled&&g.length&&Ie(250)}function V(_e,Ee,Ne,Te){return UR(s,_e,Ne,Te,Ze);function Ze(We,Ue,$e){$e?(We.unchangedPolls=0,_e!==g&&(_e[Ue]=void 0,re(We))):We.unchangedPolls!==q_[Ee]?We.unchangedPolls++:_e===g?(We.unchangedPolls=1,_e[Ue]=void 0,ee(We,250)):Ee!==2e3&&(We.unchangedPolls++,_e[Ue]=void 0,ee(We,Ee===250?500:2e3))}}function M(_e){switch(_e){case 250:return d;case 500:return h;case 2e3:return _}}function ee(_e,Ee){M(Ee).push(_e),ge(Ee)}function re(_e){g.push(_e),ge(250)}function ge(_e){M(_e).pollScheduled||Ie(_e)}function Ie(_e){M(_e).pollScheduled=s.setTimeout(_e===250?W:T,_e,_e===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",M(_e))}}function fh(s,c,g,d){let h=dl(),_=d?new Map:void 0,S=new Map,R=_d(c);return T;function T(V,M,ee,re){let ge=R(V);h.add(ge,M).length===1&&_&&_.set(ge,g(V)||Rh);let Ie=Mo(ge)||".",_e=S.get(Ie)||W(Mo(V)||".",Ie,re);return _e.referenceCount++,{close:()=>{_e.referenceCount===1?(_e.close(),S.delete(Ie)):_e.referenceCount--,h.remove(ge,M)}}}function W(V,M,ee){let re=s(V,1,(ge,Ie)=>{if(!Xs(Ie))return;let _e=Xc(Ie,V),Ee=R(_e),Ne=_e&&h.get(Ee);if(Ne){let Te,Ze=1;if(_){let We=_.get(Ee);if(ge==="change"&&(Te=g(_e)||Rh,Te.getTime()===We.getTime()))return;Te||(Te=g(_e)||Rh),_.set(Ee,Te),We===Rh?Ze=0:Te===Rh&&(Ze=2)}for(let We of Ne)We(_e,Ze,Te)}},!1,500,ee);return re.referenceCount=0,S.set(M,re),re}}function rf(s){let c=[],g=0,d;return h;function h(R,T){let W={fileName:R,callback:T,mtime:bb(s,R)};return c.push(W),S(),{close:()=>{W.isClosed=!0,ef(c,W)}}}function _(){d=void 0,g=UR(s,c,g,DD[250]),S()}function S(){!c.length||d||(d=s.setTimeout(_,2e3,"pollQueue"))}}function yI(s,c,g,d,h){let S=_d(c)(g),R=s.get(S);return R?R.callbacks.push(d):s.set(S,{watcher:h((T,W,V)=>{var M;return(M=s.get(S))==null?void 0:M.callbacks.slice().forEach(ee=>ee(T,W,V))}),callbacks:[d]}),{close:()=>{let T=s.get(S);T&&(!Ql(T.callbacks,d)||T.callbacks.length||(s.delete(S),Cv(T)))}}}function aE(s,c){let g=s.mtime.getTime(),d=c.getTime();return g!==d?(s.mtime=c,s.callback(s.fileName,qS(g,d),c),!0):!1}function qS(s,c){return s===0?0:c===0?2:1}var Qp=["/node_modules/.","/.git","/.#"],uB=Dc;function Ih(s){return uB(s)}function xC(s){uB=s}function $_({watchDirectory:s,useCaseSensitiveFileNames:c,getCurrentDirectory:g,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:h,realpath:_,setTimeout:S,clearTimeout:R}){let T=new Map,W=dl(),V=new Map,M,ee=ld(!c),re=_d(c);return(Ye,Tt,ot,Qe)=>ot?ge(Ye,Qe,Tt):s(Ye,Tt,ot,Qe);function ge(Ye,Tt,ot,Qe){let mt=re(Ye),ht=T.get(mt);ht?ht.refCount++:(ht={watcher:s(Ye,Rt=>{var Lt;Ue(Rt,Tt)||(Tt?.synchronousWatchDirectory?((Lt=T.get(mt))!=null&&Lt.targetWatcher||Ie(Ye,mt,Rt),We(Ye,mt,Tt)):_e(Ye,mt,Rt,Tt))},!1,Tt),refCount:1,childWatches:E,targetWatcher:void 0,links:void 0},T.set(mt,ht),We(Ye,mt,Tt)),Qe&&(ht.links??(ht.links=new Set)).add(Qe);let _t=ot&&{dirName:Ye,callback:ot};return _t&&W.add(mt,_t),{dirName:Ye,close:()=>{var Rt;let Lt=pe.checkDefined(T.get(mt));_t&&W.remove(mt,_t),Qe&&((Rt=Lt.links)==null||Rt.delete(Qe)),Lt.refCount--,!Lt.refCount&&(T.delete(mt),Lt.links=void 0,Cv(Lt),Ze(Lt),Lt.childWatches.forEach(dv))}}}function Ie(Ye,Tt,ot,Qe){var mt,ht;let _t,Rt;Xs(ot)?_t=ot:Rt=ot,W.forEach((Lt,Ke)=>{if(!(Rt&&Rt.get(Ke)===!0)&&(Ke===Tt||Ac(Tt,Ke)&&Tt[Ke.length]===ag))if(Rt)if(Qe){let Pt=Rt.get(Ke);Pt?Pt.push(...Qe):Rt.set(Ke,Qe.slice())}else Rt.set(Ke,!0);else Lt.forEach(({callback:Pt})=>Pt(_t))}),(ht=(mt=T.get(Tt))==null?void 0:mt.links)==null||ht.forEach(Lt=>{let Ke=Pt=>Ro(Lt,mp(Ye,Pt,re));Rt?Ie(Lt,re(Lt),Rt,Qe?.map(Ke)):Ie(Lt,re(Lt),Ke(_t))})}function _e(Ye,Tt,ot,Qe){let mt=T.get(Tt);if(mt&&h(Ye,1)){Ee(Ye,Tt,ot,Qe);return}Ie(Ye,Tt,ot),Ze(mt),Te(mt)}function Ee(Ye,Tt,ot,Qe){let mt=V.get(Tt);mt?mt.fileNames.push(ot):V.set(Tt,{dirName:Ye,options:Qe,fileNames:[ot]}),M&&(R(M),M=void 0),M=S(Ne,1e3,"timerToUpdateChildWatches")}function Ne(){var Ye;M=void 0,Ih(`sysLog:: onTimerToUpdateChildWatches:: ${V.size}`);let Tt=Fg(),ot=new Map;for(;!M&&V.size;){let mt=V.entries().next();pe.assert(!mt.done);let{value:[ht,{dirName:_t,options:Rt,fileNames:Lt}]}=mt;V.delete(ht);let Ke=We(_t,ht,Rt);(Ye=T.get(ht))!=null&&Ye.targetWatcher||Ie(_t,ht,ot,Ke?void 0:Lt)}Ih(`sysLog:: invokingWatchers:: Elapsed:: ${Fg()-Tt}ms:: ${V.size}`),W.forEach((mt,ht)=>{let _t=ot.get(ht);_t&&mt.forEach(({callback:Rt,dirName:Lt})=>{Ki(_t)?_t.forEach(Rt):Rt(Lt)})});let Qe=Fg()-Tt;Ih(`sysLog:: Elapsed:: ${Qe}ms:: onTimerToUpdateChildWatches:: ${V.size} ${M}`)}function Te(Ye){if(!Ye)return;let Tt=Ye.childWatches;Ye.childWatches=E;for(let ot of Tt)ot.close(),Te(T.get(re(ot.dirName)))}function Ze(Ye){Ye?.targetWatcher&&(Ye.targetWatcher.close(),Ye.targetWatcher=void 0)}function We(Ye,Tt,ot){let Qe=T.get(Tt);if(!Qe)return!1;let mt=iu(_(Ye)),ht,_t;return ee(mt,Ye)===0?ht=q0(h(Ye,1)?Xt(d(Ye),Ke=>{let Pt=Xc(Ke,Ye);return!Ue(Pt,ot)&&ee(Pt,iu(_(Pt)))===0?Pt:void 0}):E,Qe.childWatches,(Ke,Pt)=>ee(Ke,Pt.dirName),Rt,dv,Lt):Qe.targetWatcher&&ee(mt,Qe.targetWatcher.dirName)===0?(ht=!1,pe.assert(Qe.childWatches===E)):(Ze(Qe),Qe.targetWatcher=ge(mt,ot,void 0,Ye),Qe.childWatches.forEach(dv),ht=!0),Qe.childWatches=_t||E,ht;function Rt(Ke){let Pt=ge(Ke,ot);Lt(Pt)}function Lt(Ke){(_t||(_t=[])).push(Ke)}}function Ue(Ye,Tt){return jt(Qp,ot=>$e(Ye,ot))||GT(Ye,Tt,c,g)}function $e(Ye,Tt){return Ye.includes(Tt)?!0:c?!1:re(Ye).includes(Tt)}}var r1=(s=>(s[s.File=0]="File",s[s.Directory=1]="Directory",s))(r1||{});function gB(s){return(c,g,d)=>s(g===1?"change":"rename","",d)}function hw(s,c,g){return(d,h,_)=>{d==="rename"?(_||(_=g(s)||Rh),c(s,_!==Rh?0:2,_)):c(s,1,_)}}function GT(s,c,g,d){return(c?.excludeDirectories||c?.excludeFiles)&&(w9e(s,c?.excludeFiles,g,d())||w9e(s,c?.excludeDirectories,g,d()))}function b0(s,c,g,d,h){return(_,S)=>{if(_==="rename"){let R=S?iu(Ro(s,S)):s;(!S||!GT(R,g,d,h))&&c(R)}}}function ia({pollingWatchFileWorker:s,getModifiedTime:c,setTimeout:g,clearTimeout:d,fsWatchWorker:h,fileSystemEntryExists:_,useCaseSensitiveFileNames:S,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:T,getAccessibleSortedChildDirectories:W,realpath:V,tscWatchFile:M,useNonPollingWatchers:ee,tscWatchDirectory:re,inodeWatching:ge,fsWatchWithTimestamp:Ie,sysLog:_e}){let Ee=new Map,Ne=new Map,Te=new Map,Ze,We,Ue,$e,Ye=!1;return{watchFile:Tt,watchDirectory:_t};function Tt(nt,Dt,tr,ur){ur=mt(ur,ee);let Gr=pe.checkDefined(ur.watchFile);switch(Gr){case 0:return Ke(nt,Dt,250,void 0);case 1:return Ke(nt,Dt,tr,void 0);case 2:return ot()(nt,Dt,tr,void 0);case 3:return Qe()(nt,Dt,void 0,void 0);case 4:return Pt(nt,0,hw(nt,Dt,c),!1,tr,XEe(ur));case 5:return Ue||(Ue=fh(Pt,S,c,Ie)),Ue(nt,Dt,tr,XEe(ur));default:pe.assertNever(Gr)}}function ot(){return Ze||(Ze=lc({getModifiedTime:c,setTimeout:g}))}function Qe(){return We||(We=rf({getModifiedTime:c,setTimeout:g}))}function mt(nt,Dt){if(nt&&nt.watchFile!==void 0)return nt;switch(M){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return ht(4,1,nt);case"UseFsEventsWithFallbackDynamicPolling":return ht(4,2,nt);case"UseFsEventsOnParentDirectory":Dt=!0;default:return Dt?ht(5,1,nt):{watchFile:4}}}function ht(nt,Dt,tr){let ur=tr?.fallbackPolling;return{watchFile:nt,fallbackPolling:ur===void 0?Dt:ur}}function _t(nt,Dt,tr,ur){return T?Pt(nt,1,b0(nt,Dt,ur,S,R),tr,500,XEe(ur)):($e||($e=$_({useCaseSensitiveFileNames:S,getCurrentDirectory:R,fileSystemEntryExists:_,getAccessibleSortedChildDirectories:W,watchDirectory:Rt,realpath:V,setTimeout:g,clearTimeout:d})),$e(nt,Dt,tr,ur))}function Rt(nt,Dt,tr,ur){pe.assert(!tr);let Gr=Lt(ur),dt=pe.checkDefined(Gr.watchDirectory);switch(dt){case 1:return Ke(nt,()=>Dt(nt),500,void 0);case 2:return ot()(nt,()=>Dt(nt),500,void 0);case 3:return Qe()(nt,()=>Dt(nt),void 0,void 0);case 0:return Pt(nt,1,b0(nt,Dt,ur,S,R),tr,500,XEe(Gr));default:pe.assertNever(dt)}}function Lt(nt){if(nt&&nt.watchDirectory!==void 0)return nt;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let Dt=nt?.fallbackPolling;return{watchDirectory:0,fallbackPolling:Dt!==void 0?Dt:void 0}}}function Ke(nt,Dt,tr,ur){return yI(Ee,S,nt,Dt,Gr=>s(nt,Gr,tr,ur))}function Pt(nt,Dt,tr,ur,Gr,dt){return yI(ur?Te:Ne,S,nt,tr,pr=>_r(nt,Dt,pr,ur,Gr,dt))}function _r(nt,Dt,tr,ur,Gr,dt){let pr,st;ge&&(pr=nt.substring(nt.lastIndexOf(ag)),st=pr.slice(ag.length));let ir=_(nt,Dt)?Ht():jn();return{close:()=>{ir&&(ir.close(),ir=void 0)}};function zt(Zi){ir&&(_e(`sysLog:: ${nt}:: Changing watcher to ${Zi===Ht?"Present":"Missing"}FileSystemEntryWatcher`),ir.close(),ir=Zi())}function Ht(){if(Ye)return _e(`sysLog:: ${nt}:: Defaulting to watchFile`),mn();try{let Zi=(Dt===1||!Ie?h:Gt)(nt,ur,ge?Br:tr);return Zi.on("error",()=>{tr("rename",""),zt(jn)}),Zi}catch(Zi){return Ye||(Ye=Zi.code==="ENOSPC"),_e(`sysLog:: ${nt}:: Changing to watchFile`),mn()}}function Br(Zi,Ns){let An;if(Ns&&di(Ns,"~")&&(An=Ns,Ns=Ns.slice(0,Ns.length-1)),Zi==="rename"&&(!Ns||Ns===st||di(Ns,pr))){let si=c(nt)||Rh;An&&tr(Zi,An,si),tr(Zi,Ns,si),ge?zt(si===Rh?jn:Ht):si===Rh&&zt(jn)}else An&&tr(Zi,An),tr(Zi,Ns)}function mn(){return Tt(nt,gB(tr),Gr,dt)}function jn(){return Tt(nt,(Zi,Ns,An)=>{Ns===0&&(An||(An=c(nt)||Rh),An!==Rh&&(tr("rename","",An),zt(Ht)))},Gr,dt)}}function Gt(nt,Dt,tr){let ur=c(nt)||Rh;return h(nt,Dt,(Gr,dt,pr)=>{Gr==="change"&&(pr||(pr=c(nt)||Rh),pr.getTime()===ur.getTime())||(ur=pr||c(nt)||Rh,tr(Gr,dt,ur))})}}function e2(s){let c=s.writeFile;s.writeFile=(g,d,h)=>Xye(g,d,!!h,(_,S,R)=>c.call(s,_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_))}var yd=(()=>{let s="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(?:internal[\\/]|[\w\s]+(?:\.js)?$)/,h=wt("fs"),_=wt("path"),S=wt("os"),R;try{R=wt("crypto")}catch{R=void 0}let T,W="./profile.cpuprofile",V=process.platform==="darwin",M=process.platform==="linux"||V,ee={throwIfNoEntry:!1},re=S.platform(),ge=ot(),Ie=h.realpathSync.native?process.platform==="win32"?Dt:h.realpathSync.native:h.realpathSync,_e=__filename.endsWith("sys.js")?_.join(_.dirname(__dirname),"__fake__.js"):__filename,Ee=process.platform==="win32"||V,Ne=FA(()=>process.cwd()),{watchFile:Te,watchDirectory:Ze}=ia({pollingWatchFileWorker:mt,getModifiedTime:ur,setTimeout,clearTimeout,fsWatchWorker:ht,useCaseSensitiveFileNames:ge,getCurrentDirectory:Ne,fileSystemEntryExists:Pt,fsSupportsRecursiveFsWatch:Ee,getAccessibleSortedChildDirectories:st=>Lt(st).directories,realpath:tr,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:M,fsWatchWithTimestamp:V,sysLog:Ih}),We={args:process.argv.slice(2),newLine:S.EOL,useCaseSensitiveFileNames:ge,write(st){process.stdout.write(st)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:_t,writeFile:Rt,watchFile:Te,watchDirectory:Ze,preferNonRecursiveWatch:!Ee,resolvePath:st=>_.resolve(st),fileExists:_r,directoryExists:Gt,getAccessibleFileSystemEntries:Lt,createDirectory(st){if(!We.directoryExists(st))try{h.mkdirSync(st)}catch(ir){if(ir.code!=="EEXIST")throw ir}},getExecutingFilePath(){return _e},getCurrentDirectory:Ne,getDirectories:nt,getEnvironmentVariable(st){return process.env[st]||""},readDirectory:Ke,getModifiedTime:ur,setModifiedTime:Gr,deleteFile:dt,createHash:R?pr:ry,createSHA256Hash:R?pr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(st){let ir=Ue(st);return ir?.isFile()?ir.size:0},exit(st){Tt(()=>process.exit(st))},enableCPUProfiler:$e,disableCPUProfiler:Tt,cpuProfilingEnabled:()=>!!T||k(process.execArgv,"--cpu-prof")||k(process.execArgv,"--prof"),realpath:tr,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||jt(process.execArgv,st=>/^--(?:inspect|debug)(?:-brk)?(?:=\d+)?$/i.test(st))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{wt("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")},setBlocking:()=>{var st;let ir=(st=process.stdout)==null?void 0:st._handle;ir&&ir.setBlocking&&ir.setBlocking(!0)},base64decode:st=>Buffer.from(st,"base64").toString("utf8"),base64encode:st=>Buffer.from(st).toString("base64"),require:(st,ir)=>{try{let zt=$Wt(ir,st,We);return{module:wt(zt),modulePath:zt,error:void 0}}catch(zt){return{module:void 0,modulePath:void 0,error:zt}}}};return We;function Ue(st){try{return h.statSync(st,ee)}catch{return}}function $e(st,ir){if(T)return ir(),!1;let zt=wt("inspector");if(!zt||!zt.Session)return ir(),!1;let Ht=new zt.Session;return Ht.connect(),Ht.post("Profiler.enable",()=>{Ht.post("Profiler.start",()=>{T=Ht,W=st,ir()})}),!0}function Ye(st){let ir=0,zt=new Map,Ht=Dp(_.dirname(_e)),Br=`file://${Wf(Ht)===1?"":"/"}${Ht}`;for(let mn of st.nodes)if(mn.callFrame.url){let jn=Dp(mn.callFrame.url);Jh(Br,jn,ge)?mn.callFrame.url=Of(Br,jn,Br,_d(ge),!0):d.test(jn)||(mn.callFrame.url=(zt.has(jn)?zt:zt.set(jn,`external${ir}.js`)).get(jn),ir++)}return st}function Tt(st){if(T&&T!=="stopping"){let ir=T;return T.post("Profiler.stop",(zt,{profile:Ht})=>{var Br;if(!zt){(Br=Ue(W))!=null&&Br.isDirectory()&&(W=_.join(W,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`));try{h.mkdirSync(_.dirname(W),{recursive:!0})}catch{}h.writeFileSync(W,JSON.stringify(Ye(Ht)))}T=void 0,ir.disconnect(),st()}),T="stopping",!0}else return st(),!1}function ot(){return typeof process.versions.pnp<"u"?!0:re==="win32"||re==="win64"?!1:!_r(Qe(__filename))}function Qe(st){return st.replace(/\w/g,ir=>{let zt=ir.toUpperCase();return ir===zt?ir.toLowerCase():zt})}function mt(st,ir,zt){h.watchFile(st,{persistent:!0,interval:zt},Br);let Ht;return{close:()=>h.unwatchFile(st,Br)};function Br(mn,jn){let Zi=+jn.mtime==0||Ht===2;if(+mn.mtime==0){if(Zi)return;Ht=2}else if(Zi)Ht=0;else{if(+mn.mtime==+jn.mtime)return;Ht=1}ir(st,Ht,mn.mtime)}}function ht(st,ir,zt){return h.watch(st,Ee?{persistent:!0,recursive:!!ir}:{persistent:!0},zt)}function _t(st,ir){let zt;try{zt=h.readFileSync(st)}catch{return}let Ht=zt.length;if(Ht>=2&&zt[0]===254&&zt[1]===255){Ht&=-2;for(let Br=0;Br=2&&zt[0]===255&&zt[1]===254?zt.toString("utf16le",2):Ht>=3&&zt[0]===239&&zt[1]===187&&zt[2]===191?zt.toString("utf8",3):zt.toString("utf8")}function Rt(st,ir,zt){zt&&(ir=s+ir);let Ht;try{Ht=h.openSync(st,"w"),h.writeSync(Ht,ir,void 0,"utf8")}finally{Ht!==void 0&&h.closeSync(Ht)}}function Lt(st){try{let ir=h.readdirSync(st||".",{withFileTypes:!0}),zt=[],Ht=[];for(let Br of ir){let mn=typeof Br=="string"?Br:Br.name;if(mn==="."||mn==="..")continue;let jn;if(typeof Br=="string"||Br.isSymbolicLink()){let Zi=Ro(st,mn);if(jn=Ue(Zi),!jn)continue}else jn=Br;jn.isFile()?zt.push(mn):jn.isDirectory()&&Ht.push(mn)}return zt.sort(),Ht.sort(),{files:zt,directories:Ht}}catch{return Tbe}}function Ke(st,ir,zt,Ht,Br){return vbe(st,ir,zt,Ht,ge,process.cwd(),Br,Lt,tr)}function Pt(st,ir){let zt=Ue(st);if(!zt)return!1;switch(ir){case 0:return zt.isFile();case 1:return zt.isDirectory();default:return!1}}function _r(st){return Pt(st,0)}function Gt(st){return Pt(st,1)}function nt(st){return Lt(st).directories.slice()}function Dt(st){return st.length<260?h.realpathSync.native(st):h.realpathSync(st)}function tr(st){try{return Ie(st)}catch{return st}}function ur(st){var ir;return(ir=Ue(st))==null?void 0:ir.mtime}function Gr(st,ir){try{h.utimesSync(st,ir,ir)}catch{return}}function dt(st){try{return h.unlinkSync(st)}catch{return}}function pr(st){let ir=R.createHash("sha256");return ir.update(st),ir.digest("hex")}}let g;return Mm()&&(g=c()),g&&e2(g),g})();function bI(s){yd=s}yd&&yd.getEnvironmentVariable&&(kD(yd),pe.setAssertionLevel(/^development$/i.test(yd.getEnvironmentVariable("NODE_ENV"))?1:0)),yd&&yd.debugMode&&(pe.isDebugging=!0);var ag="/",Eb="\\",n1="://",U2=/\\/g;function e0(s){return s===47||s===92}function n_(s){return eh(s)<0}function Xp(s){return eh(s)>0}function cE(s){let c=eh(s);return c>0&&c===s.length}function lE(s){return eh(s)!==0}function Ip(s){return/^\.\.?(?:$|[\\/])/.test(s)}function Xh(s){return!lE(s)&&!Ip(s)}function E0(s){return gp(s).includes(".")}function aA(s,c){return s.length>c.length&&di(s,c)}function fu(s,c){for(let g of c)if(aA(s,g))return!0;return!1}function Jp(s){return s.length>0&&e0(s.charCodeAt(s.length-1))}function dC(s){return s>=97&&s<=122||s>=65&&s<=90}function uE(s,c){let g=s.charCodeAt(c);if(g===58)return c+1;if(g===37&&s.charCodeAt(c+1)===51){let d=s.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function eh(s){if(!s)return 0;let c=s.charCodeAt(0);if(c===47||c===92){if(s.charCodeAt(1)!==c)return 1;let d=s.indexOf(c===47?ag:Eb,2);return d<0?s.length:d+1}if(dC(c)&&s.charCodeAt(1)===58){let d=s.charCodeAt(2);if(d===47||d===92)return 3;if(s.length===2)return 2}let g=s.indexOf(n1);if(g!==-1){let d=g+n1.length,h=s.indexOf(ag,d);if(h!==-1){let _=s.slice(0,g),S=s.slice(d,h);if(_==="file"&&(S===""||S==="localhost")&&dC(s.charCodeAt(h+1))){let R=uE(s,h+2);if(R!==-1){if(s.charCodeAt(R)===47)return~(R+1);if(R===s.length)return~R}}return~(h+1)}return~s.length}return 0}function Wf(s){let c=eh(s);return c<0?~c:c}function Mo(s){s=Dp(s);let c=Wf(s);return c===s.length?s:(s=ny(s),s.slice(0,Math.max(c,s.lastIndexOf(ag))))}function gp(s,c,g){if(s=Dp(s),Wf(s)===s.length)return"";s=ny(s);let h=s.slice(Math.max(Wf(s),s.lastIndexOf(ag)+1)),_=c!==void 0&&g!==void 0?gE(h,c,g):void 0;return _?h.slice(0,h.length-_.length):h}function lF(s,c,g){if(Ac(c,".")||(c="."+c),s.length>=c.length&&s.charCodeAt(s.length-c.length)===46){let d=s.slice(s.length-c.length);if(g(d,c))return d}}function uF(s,c,g){if(typeof c=="string")return lF(s,c,g)||"";for(let d of c){let h=lF(s,d,g);if(h)return h}return""}function gE(s,c,g){if(c)return uF(ny(s),c,g?Mp:MA);let d=gp(s),h=d.lastIndexOf(".");return h>=0?d.substring(h):""}function FT(s,c){let g=s.substring(0,c),d=s.substring(c).split(ag);return d.length&&!li(d)&&d.pop(),[g,...d]}function Np(s,c=""){return s=Ro(c,s),FT(s,Wf(s))}function Dm(s,c){return s.length===0?"":(s[0]&&hp(s[0]))+s.slice(1,c).join(ag)}function Dp(s){return s.includes("\\")?s.replace(U2,ag):s}function t2(s){if(!jt(s))return[];let c=[s[0]];for(let g=1;g1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function Ro(s,...c){s&&(s=Dp(s));for(let g of c)g&&(g=Dp(g),!s||Wf(g)!==0?s=g:s=hp(s)+g);return s}function AE(s,...c){return iu(jt(c)?Ro(s,...c):Dp(s))}function AB(s,c){return t2(Np(s,c))}function Xc(s,c){let g=Wf(s);g===0&&c?(s=Ro(c,s),g=Wf(s)):s=Dp(s);let d=dE(s);if(d!==void 0)return d.length>g?ny(d):d;let h=s.length,_=s.substring(0,g),S,R=g,T=R,W=R,V=g!==0;for(;RT&&(S??(S=s.substring(0,T-1)),T=R);let ee=s.indexOf(ag,R+1);ee===-1&&(ee=h);let re=ee-T;if(re===1&&s.charCodeAt(R)===46)S??(S=s.substring(0,W));else if(re===2&&s.charCodeAt(R)===46&&s.charCodeAt(R+1)===46)if(!V)S!==void 0?S+=S.length===g?"..":"/..":W=R+2;else if(S===void 0)W-2>=0?S=s.substring(0,Math.max(g,s.lastIndexOf(ag,W-2))):S=s.substring(0,W);else{let ge=S.lastIndexOf(ag);ge!==-1?S=S.substring(0,Math.max(g,ge)):S=_,S.length===g&&(V=g!==0)}else S!==void 0?(S.length!==g&&(S+=ag),V=!0,S+=s.substring(T,ee)):(V=!0,W=ee);R=ee+1}return S??(h>g?ny(s):s)}function iu(s){s=Dp(s);let c=dE(s);return c!==void 0?c:(c=Xc(s,""),c&&Jp(s)?hp(c):c)}function dE(s){if(!dB.test(s))return s;let c=s.replace(/\/\.\//g,"/");if(c.startsWith("./")&&(c=c.slice(2)),c!==s&&(s=c,!dB.test(s)))return s}function yL(s){return s.length===0?"":s.slice(1).join(ag)}function KR(s,c){return yL(AB(s,c))}function Ou(s,c,g){let d=Xp(s)?iu(s):Xc(s,c);return g(d)}function ny(s){return Jp(s)?s.substr(0,s.length-1):s}function hp(s){return Jp(s)?s:s+ag}function Am(s){return!lE(s)&&!Ip(s)?"./"+s:s}function K2(s,c,g,d){let h=g!==void 0&&d!==void 0?gE(s,g,d):gE(s);return h?s.slice(0,s.length-h.length)+(Ac(c,".")?c:"."+c):s}function i_(s,c){let g=d9e(s);return g?s.slice(0,s.length-g.length)+(Ac(c,".")?c:"."+c):K2(s,c)}var dB=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function ZT(s,c,g){if(s===c)return 0;if(s===void 0)return-1;if(c===void 0)return 1;let d=s.substring(0,Wf(s)),h=c.substring(0,Wf(c)),_=Fs(d,h);if(_!==0)return _;let S=s.substring(d.length),R=c.substring(h.length);if(!dB.test(S)&&!dB.test(R))return g(S,R);let T=t2(Np(s)),W=t2(Np(c)),V=Math.min(T.length,W.length);for(let M=1;M0==Wf(c)>0,"Paths must either both be absolute or both be relative");let _=Sb(s,c,(typeof g=="boolean"?g:!1)?Mp:MA,typeof g=="function"?g:Fl);return Dm(_)}function r2(s,c,g){return Xp(s)?Of(c,s,c,g,!1):s}function i1(s,c,g){return Am(mp(Mo(s),c,g))}function Of(s,c,g,d,h){let _=Sb(AE(g,s),AE(g,c),MA,d),S=_[0];if(h&&Xp(S)){let R=S.charAt(0)===ag?"file://":"file:///";_[0]=R+S}return Dm(_)}function pE(s,c){for(;;){let g=c(s);if(g!==void 0)return g;let d=Mo(s);if(d===s)return;s=d}}function Vd(s){return di(s,"/node_modules")}function j(s,c,g,d,h,_,S){return{code:s,category:c,key:g,message:d,reportsUnnecessary:h,elidedInCompatabilityPyramid:_,reportsDeprecated:S}}var Z={Unterminated_string_literal:j(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:j(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:j(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:j(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:j(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:j(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:j(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:j(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:j(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:j(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:j(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:j(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:j(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:j(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:j(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:j(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:j(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:j(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:j(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:j(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:j(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:j(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:j(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:j(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:j(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:j(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:j(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:j(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:j(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:j(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:j(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:j(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:j(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:j(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:j(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:j(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:j(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:j(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:j(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:j(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:j(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:j(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:j(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:j(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:j(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:j(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:j(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:j(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:j(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:j(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:j(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:j(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:j(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:j(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:j(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:j(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:j(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:j(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:j(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:j(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:j(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:j(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:j(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:j(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:j(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:j(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:j(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:j(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:j(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:j(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:j(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:j(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:j(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:j(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:j(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:j(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:j(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:j(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:j(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:j(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:j(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:j(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:j(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:j(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:j(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:j(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:j(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:j(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:j(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:j(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:j(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:j(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:j(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:j(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:j(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:j(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:j(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:j(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:j(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:j(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:j(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:j(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:j(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:j(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:j(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:j(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:j(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:j(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:j(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:j(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:j(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:j(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:j(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:j(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:j(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:j(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:j(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:j(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:j(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:j(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:j(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:j(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:j(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:j(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:j(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:j(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:j(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:j(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:j(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:j(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:j(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:j(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:j(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:j(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:j(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:j(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:j(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:j(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:j(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:j(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:j(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:j(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:j(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:j(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:j(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:j(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:j(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:j(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:j(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:j(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:j(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:j(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:j(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:j(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:j(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:j(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:j(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:j(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:j(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:j(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:j(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:j(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:j(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:j(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:j(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:j(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:j(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:j(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:j(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:j(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:j(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:j(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:j(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:j(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:j(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:j(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:j(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:j(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:j(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:j(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:j(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:j(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:j(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:j(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:j(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:j(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:j(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:j(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:j(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:j(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:j(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:j(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:j(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:j(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:j(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:j(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:j(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:j(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:j(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:j(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:j(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:j(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:j(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:j(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:j(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:j(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:j(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:j(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:j(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:j(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:j(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:j(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:j(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:j(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:j(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:j(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:j(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:j(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:j(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:j(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:j(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:j(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:j(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:j(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:j(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:j(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:j(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:j(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:j(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:j(1286,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_1286","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:j(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:j(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:j(1293,1,"ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ECMAScript module syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled:j(1294,1,"This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled_1294","This syntax is not allowed when 'erasableSyntaxOnly' is enabled."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript:j(1295,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjus_1295","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'. Adjust the 'type' field in the nearest 'package.json' to make this file an ECMAScript module, or adjust your 'verbatimModuleSyntax', 'module', and 'moduleResolution' settings in TypeScript."),with_statements_are_not_allowed_in_an_async_function_block:j(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:j(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:j(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:j(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:j(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:j(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:j(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:j(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:j(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:j(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext:j(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', 'node18', 'node20', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve:j(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'node18', 'node20', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:j(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:j(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:j(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:j(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:j(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:j(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:j(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:j(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:j(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:j(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:j(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:j(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:j(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:j(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:j(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:j(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext:j(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', or 'nodenext'."),A_label_is_not_allowed_here:j(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:j(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:j(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:j(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:j(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:j(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:j(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:j(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:j(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:j(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:j(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:j(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:j(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:j(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:j(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:j(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:j(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:j(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:j(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:j(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:j(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:j(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:j(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:j(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:j(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:j(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:j(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:j(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:j(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:j(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:j(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:j(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:j(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:j(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:j(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:j(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:j(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:j(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:j(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:j(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:j(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:j(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:j(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:j(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:j(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:j(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:j(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:j(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:j(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:j(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:j(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:j(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:j(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:j(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:j(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:j(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:j(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:j(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:j(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:j(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:j(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:j(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:j(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:j(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:j(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:j(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:j(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:j(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:j(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:j(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:j(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:j(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:j(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:j(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:j(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:j(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:j(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:j(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:j(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:j(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:j(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:j(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:j(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:j(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:j(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:j(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:j(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:j(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:j(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:j(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:j(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:j(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:j(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:j(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:j(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:j(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:j(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:j(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:j(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:j(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:j(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:j(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:j(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:j(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:j(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:j(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:j(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:j(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:j(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:j(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:j(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:j(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:j(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:j(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:j(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:j(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:j(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:j(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:j(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:j(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:j(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:j(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:j(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:j(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:j(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:j(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:j(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:j(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:j(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:j(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:j(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:j(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:j(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:j(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:j(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:j(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:j(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:j(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:j(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:j(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:j(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:j(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:j(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:j(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:j(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:j(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:j(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:j(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:j(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:j(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:j(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:j(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:j(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:j(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:j(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:j(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:j(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:j(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:j(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:j(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:j(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:j(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:j(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:j(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:j(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:j(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:j(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:j(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:j(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:j(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:j(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:j(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),using_declarations_are_not_allowed_in_ambient_contexts:j(1545,1,"using_declarations_are_not_allowed_in_ambient_contexts_1545","'using' declarations are not allowed in ambient contexts."),await_using_declarations_are_not_allowed_in_ambient_contexts:j(1546,1,"await_using_declarations_are_not_allowed_in_ambient_contexts_1546","'await using' declarations are not allowed in ambient contexts."),The_types_of_0_are_incompatible_between_these_types:j(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:j(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:j(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:j(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:j(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:j(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:j(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:j(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:j(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:j(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:j(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:j(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:j(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:j(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:j(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:j(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:j(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:j(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:j(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:j(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:j(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:j(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:j(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:j(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:j(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:j(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:j(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:j(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:j(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:j(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:j(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:j(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:j(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:j(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:j(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:j(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:j(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:j(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:j(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:j(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:j(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:j(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:j(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:j(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:j(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:j(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:j(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:j(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:j(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:j(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:j(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:j(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:j(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:j(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:j(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:j(2346,1,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:j(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:j(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:j(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:j(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:j(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:j(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:j(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:j(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:j(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:j(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:j(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:j(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:j(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:j(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:j(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:j(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:j(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:j(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:j(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:j(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:j(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:j(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:j(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:j(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:j(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:j(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:j(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:j(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:j(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:j(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:j(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:j(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:j(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:j(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:j(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:j(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:j(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:j(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:j(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:j(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:j(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:j(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:j(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:j(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:j(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:j(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:j(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:j(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:j(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:j(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:j(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:j(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:j(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:j(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:j(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:j(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:j(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:j(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:j(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:j(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:j(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:j(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:j(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:j(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:j(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:j(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:j(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:j(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:j(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:j(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:j(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:j(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:j(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:j(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:j(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:j(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:j(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:j(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:j(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:j(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:j(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:j(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:j(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:j(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:j(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:j(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:j(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:j(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:j(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:j(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:j(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:j(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:j(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:j(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:j(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:j(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:j(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:j(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:j(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:j(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:j(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:j(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:j(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:j(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:j(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:j(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:j(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:j(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:j(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:j(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:j(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:j(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:j(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:j(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:j(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:j(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:j(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:j(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:j(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:j(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:j(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:j(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:j(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:j(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:j(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:j(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:j(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:j(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:j(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:j(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:j(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:j(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:j(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:j(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:j(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:j(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:j(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:j(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:j(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:j(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:j(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:j(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:j(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:j(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:j(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:j(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:j(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:j(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:j(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:j(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:j(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:j(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:j(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:j(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:j(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:j(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:j(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:j(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:j(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:j(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:j(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:j(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:j(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:j(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:j(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:j(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:j(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:j(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:j(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:j(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:j(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:j(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:j(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:j(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:j(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:j(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:j(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:j(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:j(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:j(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:j(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:j(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:j(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:j(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:j(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:j(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:j(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:j(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:j(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:j(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:j(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:j(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:j(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:j(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:j(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:j(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:j(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:j(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:j(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:j(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:j(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:j(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:j(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:j(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:j(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:j(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:j(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:j(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:j(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:j(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:j(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:j(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:j(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:j(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:j(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:j(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:j(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:j(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:j(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:j(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:j(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:j(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:j(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:j(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:j(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:j(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:j(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:j(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:j(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:j(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:j(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:j(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:j(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:j(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:j(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:j(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:j(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:j(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:j(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:j(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:j(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:j(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:j(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:j(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:j(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:j(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:j(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:j(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:j(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:j(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:j(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:j(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:j(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:j(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:j(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:j(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:j(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:j(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:j(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:j(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:j(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:j(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:j(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:j(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:j(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:j(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:j(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:j(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:j(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:j(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:j(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:j(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:j(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:j(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:j(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:j(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:j(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:j(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:j(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:j(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:j(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:j(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:j(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:j(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:j(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:j(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:j(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:j(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:j(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:j(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:j(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:j(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:j(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:j(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:j(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:j(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:j(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:j(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:j(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:j(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:j(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:j(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:j(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:j(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:j(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:j(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:j(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:j(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:j(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:j(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:j(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:j(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:j(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:j(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:j(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:j(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:j(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:j(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:j(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:j(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:j(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:j(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0:j(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 and above with module {0}."),Cannot_find_lib_definition_for_0:j(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:j(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:j(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:j(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:j(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:j(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:j(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:j(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:j(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:j(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:j(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:j(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:j(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:j(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:j(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:j(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:j(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:j(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:j(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:j(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:j(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:j(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:j(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:j(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:j(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:j(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:j(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:j(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:j(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:j(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:j(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:j(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:j(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:j(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:j(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:j(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:j(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:j(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:j(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:j(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:j(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:j(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:j(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:j(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:j(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:j(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:j(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:j(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:j(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:j(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:j(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:j(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:j(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:j(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:j(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:j(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:j(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:j(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:j(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:j(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:j(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:j(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:j(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:j(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:j(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:j(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:j(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:j(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:j(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:j(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:j(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:j(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:j(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:j(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:j(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:j(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:j(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:j(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:j(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:j(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:j(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:j(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:j(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:j(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:j(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:j(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:j(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:j(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks:j(2815,1,"arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks_2815","'arguments' cannot be referenced in property initializers or class static initialization blocks."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:j(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:j(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:j(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:j(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:j(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:j(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:j(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:j(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:j(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:j(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:j(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:j(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:j(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:j(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:j(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:j(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:j(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:j(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:j(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:j(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:j(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:j(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:j(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:j(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:j(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:j(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:j(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:j(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:j(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:j(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:j(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:j(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:j(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:j(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:j(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:j(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:j(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:j(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:j(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:j(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:j(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:j(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:j(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert:j(2880,1,"Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert_2880","Import assertions have been replaced by import attributes. Use 'with' instead of 'assert'."),This_expression_is_never_nullish:j(2881,1,"This_expression_is_never_nullish_2881","This expression is never nullish."),Import_declaration_0_is_using_private_name_1:j(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:j(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:j(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:j(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:j(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:j(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:j(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:j(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:j(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:j(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:j(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:j(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:j(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:j(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:j(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:j(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:j(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:j(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:j(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:j(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:j(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:j(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:j(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:j(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:j(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:j(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:j(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:j(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:j(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:j(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:j(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:j(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:j(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:j(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:j(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:j(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:j(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:j(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:j(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:j(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:j(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:j(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:j(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:j(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:j(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:j(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected:j(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:j(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:j(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:j(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:j(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:j(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:j(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:j(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:j(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:j(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:j(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:j(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:j(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:j(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:j(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:j(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:j(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:j(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:j(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:j(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:j(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:j(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:j(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:j(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:j(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:j(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:j(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic:j(4127,1,"This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic_4127","This member cannot have an 'override' modifier because its name is dynamic."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:j(4128,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic_4128","This member cannot have a JSDoc comment with an '@override' tag because its name is dynamic."),The_current_host_does_not_support_the_0_option:j(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:j(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:j(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:j(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:j(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:j(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:j(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:j(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:j(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:j(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:j(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:j(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:j(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:j(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:j(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:j(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:j(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:j(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:j(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:j(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:j(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:j(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:j(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:j(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:j(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:j(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:j(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:j(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:j(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:j(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:j(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:j(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:j(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:j(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:j(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:j(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:j(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:j(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:j(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:j(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:j(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:j(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:j(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:j(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:j(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:j(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:j(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:j(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:j(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:j(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:j(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:j(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:j(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:j(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:j(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:j(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:j(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:j(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:j(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:j(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:j(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:j(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:j(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:j(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:j(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:j(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:j(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:j(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:j(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:j(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:j(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:j(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:j(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:j(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:j(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:j(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:j(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:j(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:j(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:j(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:j(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:j(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:j(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:j(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:j(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:j(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:j(6024,3,"options_6024","options"),file:j(6025,3,"file_6025","file"),Examples_Colon_0:j(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:j(6027,3,"Options_Colon_6027","Options:"),Version_0:j(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:j(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:j(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:j(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:j(6034,3,"KIND_6034","KIND"),FILE:j(6035,3,"FILE_6035","FILE"),VERSION:j(6036,3,"VERSION_6036","VERSION"),LOCATION:j(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:j(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:j(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:j(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:j(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:j(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:j(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:j(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:j(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:j(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:j(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:j(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:j(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:j(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:j(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:j(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:j(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:j(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:j(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:j(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:j(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:j(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:j(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:j(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:j(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:j(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:j(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:j(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:j(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:j(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:j(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:j(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:j(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:j(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:j(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:j(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:j(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:j(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:j(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:j(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:j(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:j(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:j(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:j(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:j(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:j(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:j(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:j(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:j(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:j(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:j(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:j(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:j(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:j(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:j(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:j(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:j(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:j(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:j(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:j(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:j(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:j(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:j(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:j(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:j(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:j(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:j(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:j(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:j(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:j(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:j(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:j(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:j(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:j(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:j(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:j(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:j(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:j(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:j(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:j(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:j(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:j(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:j(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:j(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:j(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:j(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:j(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:j(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:j(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:j(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:j(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:j(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:j(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:j(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:j(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:j(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:j(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:j(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:j(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:j(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:j(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:j(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:j(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:j(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:j(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:j(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:j(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:j(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:j(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:j(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:j(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:j(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:j(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:j(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:j(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:j(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:j(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:j(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:j(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:j(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:j(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:j(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:j(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:j(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:j(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:j(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:j(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:j(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:j(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:j(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:j(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:j(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:j(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:j(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:j(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:j(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:j(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:j(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:j(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:j(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:j(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:j(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:j(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:j(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:j(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:j(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:j(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:j(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:j(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:j(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:j(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:j(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:j(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:j(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:j(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:j(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:j(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:j(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:j(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:j(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:j(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:j(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:j(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:j(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:j(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:j(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:j(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:j(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:j(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:j(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:j(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:j(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:j(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:j(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:j(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:j(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:j(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:j(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:j(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:j(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:j(6244,3,"Modules_6244","Modules"),File_Management:j(6245,3,"File_Management_6245","File Management"),Emit:j(6246,3,"Emit_6246","Emit"),JavaScript_Support:j(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:j(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:j(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:j(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:j(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:j(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:j(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:j(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:j(6255,3,"Projects_6255","Projects"),Output_Formatting:j(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:j(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:j(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:j(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:j(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:j(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:j(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:j(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:j(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:j(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:j(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:j(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:j(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:j(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:j(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:j(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:j(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:j(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:j(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:j(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:j(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:j(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:j(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:j(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:j(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),File_Layout:j(6284,3,"File_Layout_6284","File Layout"),Environment_Settings:j(6285,3,"Environment_Settings_6285","Environment Settings"),See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule:j(6286,3,"See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule_6286","See also https://aka.ms/tsconfig/module"),For_nodejs_Colon:j(6287,3,"For_nodejs_Colon_6287","For nodejs:"),and_npm_install_D_types_Slashnode:j(6290,3,"and_npm_install_D_types_Slashnode_6290","and npm install -D @types/node"),Other_Outputs:j(6291,3,"Other_Outputs_6291","Other Outputs"),Stricter_Typechecking_Options:j(6292,3,"Stricter_Typechecking_Options_6292","Stricter Typechecking Options"),Style_Options:j(6293,3,"Style_Options_6293","Style Options"),Recommended_Options:j(6294,3,"Recommended_Options_6294","Recommended Options"),Enable_project_compilation:j(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:j(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:j(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:j(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:j(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:j(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:j(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:j(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:j(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:j(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:j(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:j(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:j(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:j(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:j(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:j(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:j(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:j(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:j(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:j(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:j(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:j(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:j(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:j(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:j(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:j(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:j(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:j(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:j(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:j(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:j(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:j(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:j(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:j(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:j(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:j(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:j(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:j(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:j(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:j(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:j(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:j(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:j(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:j(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:j(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:j(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:j(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:j(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:j(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:j(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:j(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:j(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:j(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:j(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:j(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:j(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:j(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:j(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:j(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:j(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:j(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:j(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:j(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:j(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:j(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:j(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:j(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:j(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:j(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:j(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:j(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:j(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:j(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:j(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:j(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:j(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:j(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files:j(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJs' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:j(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:j(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:j(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:j(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:j(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:j(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:j(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:j(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:j(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:j(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:j(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:j(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:j(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:j(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:j(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:j(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:j(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:j(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:j(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:j(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:j(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:j(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:j(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:j(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:j(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:j(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:j(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:j(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:j(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:j(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:j(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:j(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:j(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:j(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:j(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:j(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:j(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:j(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Skip_building_downstream_projects_on_error_in_upstream_project:j(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:j(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:j(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:j(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:j(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:j(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:j(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:j(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:j(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:j(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:j(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:j(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:j(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:j(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:j(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:j(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:j(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:j(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:j(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:j(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:j(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:j(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:j(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:j(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:j(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:j(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:j(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:j(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:j(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:j(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:j(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:j(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:j(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:j(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:j(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:j(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:j(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:j(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:j(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:j(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:j(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:j(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:j(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:j(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:j(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:j(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:j(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:j(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:j(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:j(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:j(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:j(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:j(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:j(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:j(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:j(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:j(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:j(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:j(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:j(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:j(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:j(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:j(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:j(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:j(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:j(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:j(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:j(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:j(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:j(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:j(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:j(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:j(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:j(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:j(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:j(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:j(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:j(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript:j(6721,3,"Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript_6721","Do not allow runtime constructs that are not part of ECMAScript."),Default_catch_clause_variables_as_unknown_instead_of_any:j(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:j(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:j(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:j(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:j(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),Enable_lib_replacement:j(6808,3,"Enable_lib_replacement_6808","Enable lib replacement."),one_of_Colon:j(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:j(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:j(6902,3,"type_Colon_6902","type:"),default_Colon:j(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:j(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:j(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:j(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:j(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:j(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:j(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:j(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:j(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:j(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:j(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:j(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:j(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:j(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:j(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:j(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:j(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:j(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:j(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:j(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:j(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:j(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:j(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:j(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:j(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:j(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:j(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:j(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:j(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:j(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:j(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:j(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:j(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:j(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:j(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:j(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:j(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:j(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:j(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:j(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:j(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:j(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:j(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:j(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:j(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:j(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:j(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation:j(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:j(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:j(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:j(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:j(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:j(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:j(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:j(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:j(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:j(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:j(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:j(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:j(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:j(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:j(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:j(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:j(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:j(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:j(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:j(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:j(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:j(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:j(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:j(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:j(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:j(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:j(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:j(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:j(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:j(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:j(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:j(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:j(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:j(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:j(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:j(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:j(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:j(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:j(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:j(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:j(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:j(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:j(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:j(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:j(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:j(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:j(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:j(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:j(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:j(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:j(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:j(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:j(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:j(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:j(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:j(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:j(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:j(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:j(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:j(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:j(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:j(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:j(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:j(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:j(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:j(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:j(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:j(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:j(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:j(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:j(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:j(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:j(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:j(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:j(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:j(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:j(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:j(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:j(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:j(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:j(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:j(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:j(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:j(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:j(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:j(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:j(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:j(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:j(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:j(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:j(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:j(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:j(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:j(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:j(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:j(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:j(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:j(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:j(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:j(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:j(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:j(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:j(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:j(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:j(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:j(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:j(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:j(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:j(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:j(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:j(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:j(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:j(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:j(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:j(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:j(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:j(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:j(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:j(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:j(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:j(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:j(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:j(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:j(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:j(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:j(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:j(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:j(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:j(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:j(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:j(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:j(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:j(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:j(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:j(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:j(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:j(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:j(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:j(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:j(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:j(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:j(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:j(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:j(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:j(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:j(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:j(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:j(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:j(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:j(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:j(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:j(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:j(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:j(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:j(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:j(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:j(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:j(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:j(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:j(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:j(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:j(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:j(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:j(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:j(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:j(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:j(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:j(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:j(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:j(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:j(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:j(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:j(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:j(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:j(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:j(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:j(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:j(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:j(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:j(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:j(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:j(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:j(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:j(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:j(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:j(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:j(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:j(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:j(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:j(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:j(95005,3,"Extract_function_95005","Extract function"),Extract_constant:j(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:j(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:j(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:j(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:j(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:j(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:j(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:j(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:j(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:j(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:j(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:j(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:j(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:j(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:j(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:j(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:j(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:j(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:j(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:j(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:j(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:j(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:j(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:j(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:j(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:j(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:j(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:j(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:j(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:j(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:j(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:j(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:j(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:j(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:j(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:j(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:j(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:j(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:j(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:j(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:j(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:j(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:j(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:j(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:j(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:j(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:j(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:j(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:j(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:j(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:j(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:j(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:j(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:j(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:j(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:j(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:j(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:j(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:j(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:j(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:j(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:j(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:j(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:j(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:j(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:j(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:j(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:j(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:j(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:j(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:j(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:j(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:j(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:j(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:j(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:j(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:j(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:j(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:j(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:j(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:j(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:j(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:j(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:j(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:j(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:j(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:j(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:j(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:j(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:j(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:j(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:j(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:j(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:j(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:j(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:j(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:j(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:j(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:j(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:j(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:j(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:j(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:j(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:j(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:j(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:j(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:j(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:j(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:j(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:j(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:j(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:j(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:j(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:j(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:j(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:j(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:j(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:j(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:j(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:j(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:j(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:j(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:j(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:j(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:j(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:j(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:j(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:j(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:j(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:j(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:j(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:j(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:j(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:j(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:j(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:j(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:j(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:j(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:j(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:j(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:j(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:j(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:j(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:j(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:j(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:j(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:j(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:j(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:j(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:j(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:j(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:j(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:j(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:j(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:j(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:j(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:j(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:j(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:j(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:j(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:j(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:j(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:j(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:j(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:j(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:j(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:j(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:j(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:j(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:j(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:j(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:j(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:j(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:j(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:j(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:j(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:j(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:j(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:j(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:j(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:j(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:j(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:j(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:j(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:j(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:j(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:j(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:j(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:j(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:j(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:j(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:j(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:j(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:j(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:j(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:j(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:j(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:j(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:j(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:j(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:j(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:j(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:j(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:j(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:j(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:j(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:j(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:j(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:j(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:j(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:j(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:j(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:j(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:j(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:j(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:j(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:j(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:j(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:j(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:j(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:j(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:j(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:j(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:j(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:j(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:j(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:j(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:j(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:j(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:j(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:j(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:j(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:j(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'."),Default_imports_are_not_allowed_in_a_deferred_import:j(18058,1,"Default_imports_are_not_allowed_in_a_deferred_import_18058","Default imports are not allowed in a deferred import."),Named_imports_are_not_allowed_in_a_deferred_import:j(18059,1,"Named_imports_are_not_allowed_in_a_deferred_import_18059","Named imports are not allowed in a deferred import."),Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve:j(18060,1,"Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve_18060","Deferred imports are only supported when the '--module' flag is set to 'esnext' or 'preserve'."),_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer:j(18061,1,"_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer_18061","'{0}' is not a valid meta-property for keyword 'import'. Did you mean 'meta' or 'defer'?")};function Id(s){return s>=80}function fB(s){return s===32||Id(s)}var ev={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,defer:166,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},Ny=new Map(Object.entries(ev)),vb=new Map(Object.entries({...ev,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),xD=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),IB=new Map([[1,Rd.RegularExpressionFlagsHasIndices],[16,Rd.RegularExpressionFlagsDotAll],[32,Rd.RegularExpressionFlagsUnicode],[64,Rd.RegularExpressionFlagsUnicodeSets],[128,Rd.RegularExpressionFlagsSticky]]),Bb=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],bL=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],gF=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],x=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,te=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Re=/@(?:see|link)/i;function Le(s,c){if(s=2?Le(s,gF):Le(s,Bb)}function dr(s,c){return c>=2?Le(s,x):Le(s,bL)}function Ur(s){let c=[];return s.forEach((g,d)=>{c[g]=d}),c}var mi=Ur(vb);function Vi(s){return mi[s]}function Ta(s){return vb.get(s)}var Sl=Ur(xD);function Ho(s){return Sl[s]}function Wg(s){return xD.get(s)}function cA(s){let c=[],g=0,d=0;for(;g127&&Cl(h)&&(c.push(d),d=g);break}}return c.push(d),c}function th(s,c,g,d){return s.getPositionOfLineAndCharacter?s.getPositionOfLineAndCharacter(c,g,d):xn(rn(s),c,g,s.text,d)}function xn(s,c,g,d,h){(c<0||c>=s.length)&&(h?c=c<0?0:c>=s.length?s.length-1:c:pe.fail(`Bad line number. Line: ${c}, lineStarts.length: ${s.length} , line map is correct? ${d!==void 0?Sc(s,cA(d)):"unknown"}`));let _=s[c]+g;return h?_>s[c+1]?s[c+1]:typeof d=="string"&&_>d.length?d.length:_:(c=8192&&s<=8203||s===8239||s===8287||s===12288||s===65279}function Cl(s){return s===10||s===13||s===8232||s===8233}function wl(s){return s>=48&&s<=57}function $f(s){return wl(s)||s>=65&&s<=70||s>=97&&s<=102}function j2(s){return s>=65&&s<=90||s>=97&&s<=122}function _x(s){return j2(s)||wl(s)||s===95}function z2(s){return s>=48&&s<=55}function tv(s,c){let g=s.charCodeAt(c);switch(g){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return c===0;default:return g>127}}function Yu(s,c,g,d,h){if(wB(c))return c;let _=!1;for(;;){let S=s.charCodeAt(c);switch(S){case 13:s.charCodeAt(c+1)===10&&c++;case 10:if(c++,g)return c;_=!!h;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(s.charCodeAt(c+1)===47){for(c+=2;c127&&dc(S)){c++;continue}break}return c}}var qO=7;function hB(s,c){if(pe.assert(c>=0),c===0||Cl(s.charCodeAt(c-1))){let g=s.charCodeAt(c);if(c+qO=0&&g127&&dc(ge)){M&&Cl(ge)&&(V=!0),g++;continue}break e}}return M&&(re=h(R,T,W,V,_,re)),re}function GD(s,c,g,d){return LT(!1,s,c,!1,g,d)}function dF(s,c,g,d){return LT(!1,s,c,!0,g,d)}function EL(s,c,g,d,h){return LT(!0,s,c,!1,g,d,h)}function ff(s,c,g,d,h){return LT(!0,s,c,!0,g,d,h)}function FD(s,c,g,d,h,_=[]){return _.push({kind:g,pos:s,end:c,hasTrailingNewLine:d}),_}function fE(s,c){return EL(s,c,FD,void 0,void 0)}function n2(s,c){return ff(s,c,FD,void 0,void 0)}function mB(s){let c=AF.exec(s);if(c)return c[0]}function bd(s,c){return j2(s)||s===36||s===95||s>127&&ft(s,c)}function s1(s,c,g){return _x(s)||s===36||(g===1?s===45||s===58:!1)||s>127&&dr(s,c)}function Uh(s,c,g){let d=Uu(s,0);if(!bd(d,c))return!1;for(let h=iy(d);hV,getStartPos:()=>V,getTokenEnd:()=>T,getTextPos:()=>T,getToken:()=>ee,getTokenStart:()=>M,getTokenPos:()=>M,getTokenText:()=>R.substring(M,T),getTokenValue:()=>re,hasUnicodeEscape:()=>(ge&1024)!==0,hasExtendedUnicodeEscape:()=>(ge&8)!==0,hasPrecedingLineBreak:()=>(ge&1)!==0,hasPrecedingJSDocComment:()=>(ge&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(ge&32768)!==0,isIdentifier:()=>ee===80||ee>118,isReservedWord:()=>ee>=83&&ee<=118,isUnterminated:()=>(ge&4)!==0,getCommentDirectives:()=>Ie,getNumericLiteralFlags:()=>ge&25584,getTokenFlags:()=>ge,reScanGreaterToken:zt,reScanAsteriskEqualsToken:Ht,reScanSlashToken:Br,reScanTemplateToken:An,reScanTemplateHeadOrNoSubstitutionTemplate:si,scanJsxIdentifier:Gl,scanJsxAttributeValue:ba,reScanJsxAttributeValue:Wo,reScanJsxToken:ks,reScanLessThanToken:Ic,reScanHashToken:su,reScanQuestionToken:Zn,reScanInvalidIdentifier:st,scanJsxToken:ya,scanJsDocToken:yr,scanJSDocCommentTextToken:hc,scan:dt,getText:Oa,clearCommentDirectives:tl,setText:Qu,setScriptTarget:Cs,setLanguageVariant:Tu,setScriptKind:Pr,setJSDocParsingMode:Pn,setOnError:Tg,resetTokenState:pt,setTextPos:pt,setSkipJsDocLeadingAsterisks:on,tryScan:pa,lookAhead:lo,scanRange:Oi};return pe.isDebugging&&Object.defineProperty(Te,"__debugShowCurrentPositionInText",{get:()=>{let it=Te.getText();return it.slice(0,Te.getTokenFullStart())+"\u2551"+it.slice(Te.getTokenFullStart())}}),Te;function Ze(it){return Uu(R,it)}function We(it){return it>=0&&it=0&&it=65&&Sn<=70)Sn+=32;else if(!(Sn>=48&&Sn<=57||Sn>=97&&Sn<=102))break;Kr.push(Sn),T++,hr=!1}return Kr.length=W){Fr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}let Dn=Ue(T);if(Dn===nr){Fr+=R.substring(Kr,T),T++;break}if(Dn===92&&!it){Fr+=R.substring(Kr,T),Fr+=Pt(3),Kr=T;continue}if((Dn===10||Dn===13)&&!it){Fr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}T++}return Fr}function Ke(it){let nr=Ue(T)===96;T++;let Fr=T,Kr="",Dn;for(;;){if(T>=W){Kr+=R.substring(Fr,T),ge|=4,Ye(Z.Unterminated_template_literal),Dn=nr?15:18;break}let hr=Ue(T);if(hr===96){Kr+=R.substring(Fr,T),T++,Dn=nr?15:18;break}if(hr===36&&T+1=W)return Ye(Z.Unexpected_end_of_text),"";let Fr=Ue(T);switch(T++,Fr){case 48:if(T>=W||!wl(Ue(T)))return"\0";case 49:case 50:case 51:T=55296&&Kr<=56319&&T+6=56320&&Ni<=57343)return T=En,Dn+String.fromCharCode(Ni)}return Dn;case 120:for(;T1114111&&(it&&Ye(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Fr,T-Fr),hr=!0),T>=W?(it&&Ye(Z.Unexpected_end_of_text),hr=!0):Ue(T)===125?T++:(it&&Ye(Z.Unterminated_Unicode_escape_sequence),hr=!0),hr?(ge|=2048,R.substring(nr,T)):(ge|=8,jR(Dn))}function Gt(){if(T+5=0&&s1(Fr,s)){it+=_r(!0),nr=T;continue}if(Fr=Gt(),!(Fr>=0&&s1(Fr,s)))break;ge|=1024,it+=R.substring(nr,T),it+=jR(Fr),T+=6,nr=T}else break}return it+=R.substring(nr,T),it}function tr(){let it=re.length;if(it>=2&&it<=12){let nr=re.charCodeAt(0);if(nr>=97&&nr<=122){let Fr=Ny.get(re);if(Fr!==void 0)return ee=Fr}}return ee=80}function ur(it){let nr="",Fr=!1,Kr=!1;for(;;){let Dn=Ue(T);if(Dn===95){ge|=512,Fr?(Fr=!1,Kr=!0):Ye(Kr?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,T,1),T++;continue}if(Fr=!0,!wl(Dn)||Dn-48>=it)break;nr+=R[T],T++,Kr=!1}return Ue(T-1)===95&&Ye(Z.Numeric_separators_are_not_allowed_here,T-1,1),nr}function Gr(){return Ue(T)===110?(re+="n",ge&384&&(re=nz(re)+"n"),T++,10):(re=""+(ge&128?parseInt(re.slice(2),2):ge&256?parseInt(re.slice(2),8):+re),9)}function dt(){for(V=T,ge=0;;){if(M=T,T>=W)return ee=1;let it=Ze(T);if(T===0&&it===35&&$O(R,T)){if(T=iY(R,T),c)continue;return ee=6}switch(it){case 10:case 13:if(ge|=1,c){T++;continue}else return it===13&&T+1=0&&bd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Fr=Gt();return Fr>=0&&bd(Fr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Fr)+Dt(),ee=tr()):(Ye(Z.Invalid_character),T++,ee=0);case 35:if(T!==0&&R[T+1]==="!")return Ye(Z.can_only_be_used_at_the_start_of_a_file,T,2),T++,ee=0;let Kr=Ze(T+1);if(Kr===92){T++;let En=nt();if(En>=0&&bd(En,s))return re="#"+_r(!0)+Dt(),ee=81;let Ni=Gt();if(Ni>=0&&bd(Ni,s))return T+=6,ge|=1024,re="#"+String.fromCharCode(Ni)+Dt(),ee=81;T--}return bd(Kr,s)?(T++,ir(Kr,s)):(re="#",Ye(Z.Invalid_character,T++,iy(it))),ee=81;case 65533:return Ye(Z.File_appears_to_be_binary,0,0),T=W,ee=8;default:let Dn=ir(it,s);if(Dn)return ee=Dn;if(Iu(it)){T+=iy(it);continue}else if(Cl(it)){ge|=1,T+=iy(it);continue}let hr=iy(it);return Ye(Z.Invalid_character,T,hr),T+=hr,ee=0}}}function pr(){switch(Ne){case 0:return!0;case 1:return!1}return Ee!==3&&Ee!==4?!0:Ne===3?!1:Re.test(R.slice(V,T))}function st(){pe.assert(ee===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),T=M=V,ge=0;let it=Ze(T),nr=ir(it,99);return nr?ee=nr:(T+=iy(it),ee)}function ir(it,nr){let Fr=it;if(bd(Fr,nr)){for(T+=iy(Fr);T=W)return ee=1;let nr=Ue(T);if(nr===60)return Ue(T+1)===47?(T+=2,ee=31):(T++,ee=30);if(nr===123)return T++,ee=19;let Fr=0;for(;T0)break;dc(nr)||(Fr=T)}T++}return re=R.substring(V,T),Fr===-1?13:12}function Gl(){if(Id(ee)){for(;T=W)return ee=1;for(let nr=Ue(T);T=0&&Iu(Ue(T-1))&&!(T+1=W)return ee=1;let it=Ze(T);switch(T+=iy(it),it){case 9:case 11:case 12:case 32:for(;T=0&&bd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Fr=Gt();return Fr>=0&&bd(Fr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Fr)+Dt(),ee=tr()):(T++,ee=0)}if(bd(it,s)){let nr=it;for(;T=0),T=it,V=it,M=it,ee=0,re=void 0,ge=0}function on(it){_e+=it?1:-1}}function Uu(s,c){return s.codePointAt(c)}function iy(s){return s>=65536?2:s===-1?0:1}function sY(s){if(pe.assert(0<=s&&s<=1114111),s<=65535)return String.fromCharCode(s);let c=Math.floor((s-65536)/1024)+55296,g=(s-65536)%1024+56320;return String.fromCharCode(c,g)}var oY=String.fromCodePoint?s=>String.fromCodePoint(s):sY;function jR(s){return oY(s)}var aY=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),tt=new Set(["ASCII","ASCII_Hex_Digit","AHex","Alphabetic","Alpha","Any","Assigned","Bidi_Control","Bidi_C","Bidi_Mirrored","Bidi_M","Case_Ignorable","CI","Cased","Changes_When_Casefolded","CWCF","Changes_When_Casemapped","CWCM","Changes_When_Lowercased","CWL","Changes_When_NFKC_Casefolded","CWKCF","Changes_When_Titlecased","CWT","Changes_When_Uppercased","CWU","Dash","Default_Ignorable_Code_Point","DI","Deprecated","Dep","Diacritic","Dia","Emoji","Emoji_Component","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","Extender","Ext","Grapheme_Base","Gr_Base","Grapheme_Extend","Gr_Ext","Hex_Digit","Hex","IDS_Binary_Operator","IDSB","IDS_Trinary_Operator","IDST","ID_Continue","IDC","ID_Start","IDS","Ideographic","Ideo","Join_Control","Join_C","Logical_Order_Exception","LOE","Lowercase","Lower","Math","Noncharacter_Code_Point","NChar","Pattern_Syntax","Pat_Syn","Pattern_White_Space","Pat_WS","Quotation_Mark","QMark","Radical","Regional_Indicator","RI","Sentence_Terminal","STerm","Soft_Dotted","SD","Terminal_Punctuation","Term","Unified_Ideograph","UIdeo","Uppercase","Upper","Variation_Selector","VS","White_Space","space","XID_Continue","XIDC","XID_Start","XIDS"]),Jt=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),kr={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};kr.Script_Extensions=kr.Script;function Xr(s){return Ip(s)||Xp(s)}function ui(s){return cl(s,X7,vAe)}var Is=new Map([[99,"lib.esnext.full.d.ts"],[11,"lib.es2024.full.d.ts"],[10,"lib.es2023.full.d.ts"],[9,"lib.es2022.full.d.ts"],[8,"lib.es2021.full.d.ts"],[7,"lib.es2020.full.d.ts"],[6,"lib.es2019.full.d.ts"],[5,"lib.es2018.full.d.ts"],[4,"lib.es2017.full.d.ts"],[3,"lib.es2016.full.d.ts"],[2,"lib.es6.d.ts"]]);function Hs(s){let c=Mg(s);switch(c){case 99:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:return Is.get(c);default:return"lib.d.ts"}}function Rs(s){return s.start+s.length}function ja(s){return s.length===0}function ho(s,c){return c>=s.start&&c=s.pos&&c<=s.end}function Nd(s,c){return c.start>=s.start&&Rs(c)<=Rs(s)}function ed(s,c){return c.pos>=s.start&&c.end<=Rs(s)}function Og(s,c){return c.start>=s.pos&&Rs(c)<=s.end}function Nh(s,c){return o1(s,c)!==void 0}function o1(s,c){let g=IA(s,c);return g&&g.length===0?void 0:g}function Tb(s,c){return IE(s.start,s.length,c.start,c.length)}function q2(s,c,g){return IE(s.start,s.length,c,g)}function IE(s,c,g,d){let h=s+c,_=g+d;return g<=h&&_>=s}function zR(s,c){return c<=Rs(s)&&c>=s.start}function e3(s,c){return q2(c,s.pos,s.end-s.pos)}function IA(s,c){let g=Math.max(s.start,c.start),d=Math.min(Rs(s),Rs(c));return g<=d?wA(g,d):void 0}function EI(s){s=s.filter(d=>d.length>0).sort((d,h)=>d.start!==h.start?d.start-h.start:d.length-h.length);let c=[],g=0;for(;g=2&&s.charCodeAt(0)===95&&s.charCodeAt(1)===95?"_"+s:s}function Bc(s){let c=s;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function Vo(s){return Bc(s.escapedText)}function iv(s){let c=Ta(s.escapedText);return c?Gs(c,v0):void 0}function nf(s){return s.valueDeclaration&&pC(s.valueDeclaration)?Vo(s.valueDeclaration.name):Bc(s.escapedName)}function J6(s){let c=s.parent.parent;if(c){if(jh(c))return cY(c);switch(c.kind){case 244:if(c.declarationList&&c.declarationList.declarations[0])return cY(c.declarationList.declarations[0]);break;case 245:let g=c.expression;switch(g.kind===227&&g.operatorToken.kind===64&&(g=g.left),g.kind){case 212:return g.name;case 213:let d=g.argumentExpression;if(Ir(d))return d}break;case 218:return cY(c.expression);case 257:{if(jh(c.statement)||un(c.statement))return cY(c.statement);break}}}}function cY(s){let c=Il(s);return c&&Ir(c)?c:void 0}function t3(s,c){return!!(rh(s)&&Ir(s.name)&&Vo(s.name)===Vo(c)||Ch(s)&&jt(s.declarationList.declarations,g=>t3(g,c)))}function pF(s){return s.name||J6(s)}function rh(s){return!!s.name}function Cw(s){switch(s.kind){case 80:return s;case 349:case 342:{let{name:g}=s;if(g.kind===167)return g.right;break}case 214:case 227:{let g=s;switch(nI(g)){case 1:case 4:case 5:case 3:return jge(g.left);case 7:case 8:case 9:return g.arguments[1];default:return}}case 347:return pF(s);case 341:return J6(s);case 278:{let{expression:g}=s;return Ir(g)?g:void 0}case 213:let c=s;if(Kge(c))return c.argumentExpression}return s.name}function Il(s){if(s!==void 0)return Cw(s)||(UA(s)||lA(s)||vd(s)?CB(s):void 0)}function CB(s){if(s.parent){if(fm(s.parent)||hg(s.parent))return s.parent.name;if(fo(s.parent)&&s===s.parent.right){if(Ir(s.parent.left))return s.parent.left;if(_p(s.parent.left))return jge(s.parent.left)}else if(nc(s.parent)&&Ir(s.parent.name))return s.parent.name}else return}function Rb(s){if(p1(s))return Me(s.modifiers,So)}function $R(s){if(Ga(s,98303))return Me(s.modifiers,Ig)}function Cre(s,c){if(s.name)if(Ir(s.name)){let g=s.name.escapedText;return j6(s.parent,c).filter(d=>cS(d)&&Ir(d.name)&&d.name.escapedText===g)}else{let g=s.parent.parameters.indexOf(s);pe.assert(g>-1,"Parameters should always be in their parents' parameter list");let d=j6(s.parent,c).filter(cS);if(gZB(d)&&d.typeParameters.some(h=>h.name.escapedText===g))}function r3(s){return lY(s,!1)}function U6(s){return lY(s,!0)}function gJ(s){return!!c1(s,cS)}function K6(s){return c1(s,bz)}function uY(s){return dJ(s,t9e)}function bx(s){return c1(s,MPt)}function _re(s){return c1(s,f$e)}function Ex(s){return c1(s,f$e,!0)}function Es(s){return c1(s,I$e)}function Aa(s){return c1(s,I$e,!0)}function ha(s){return c1(s,h$e)}function Ua(s){return c1(s,h$e,!0)}function wc(s){return c1(s,m$e)}function hA(s){return c1(s,m$e,!0)}function Pd(s){return c1(s,$Le,!0)}function Kh(s){return c1(s,C$e)}function i2(s){return c1(s,C$e,!0)}function a1(s){return c1(s,oEe)}function Nb(s){return c1(s,_$e)}function sv(s){return c1(s,e9e)}function oP(s){return c1(s,ZB)}function fF(s){return c1(s,r9e)}function ov(s){let c=c1(s,ude);if(c&&c.typeExpression&&c.typeExpression.type)return c}function eN(s){let c=c1(s,ude);return!c&&Si(s)&&(c=de(vL(s),g=>!!g.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function AJ(s){let c=sv(s);if(c&&c.typeExpression)return c.typeExpression.type;let g=ov(s);if(g&&g.typeExpression){let d=g.typeExpression.type;if(mh(d)){let h=de(d.members,wg);return h&&h.type}if(x_(d)||hie(d))return d.type}}function j6(s,c){var g;if(!Ane(s))return E;let d=(g=s.jsDoc)==null?void 0:g.jsDocCache;if(d===void 0||c){let h=Sye(s,c);pe.assert(h.length<2||h[0]!==h[1]),d=er(h,_=>tR(_)?_.tags:_),c||(s.jsDoc??(s.jsDoc=[]),s.jsDoc.jsDocCache=d)}return d}function Sx(s){return j6(s,!1)}function c1(s,c,g){return de(j6(s,g),c)}function dJ(s,c){return Sx(s).filter(c)}function rye(s,c){return Sx(s).filter(g=>g.kind===c)}function pJ(s){return typeof s=="string"?s:s?.map(c=>c.kind===322?c.text:UFe(c)).join("")}function UFe(s){let c=s.kind===325?"link":s.kind===326?"linkcode":"linkplain",g=s.name?oy(s.name):"",d=s.name&&(s.text===""||s.text.startsWith("://"))?"":" ";return`{@${c} ${g}${d}${s.text}}`}function ZD(s){if(qL(s)){if(mie(s.parent)){let c=KJ(s.parent);if(c&&B(c.tags))return er(c.tags,g=>ZB(g)?g.typeParameters:void 0)}return E}if(iS(s))return pe.assert(s.parent.kind===321),er(s.parent.tags,c=>ZB(c)?c.typeParameters:void 0);if(s.typeParameters||eWt(s)&&s.typeParameters)return s.typeParameters;if(wo(s)){let c=uAe(s);if(c.length)return c;let g=eN(s);if(g&&x_(g)&&g.typeParameters)return g.typeParameters}return E}function n3(s){return s.constraint?s.constraint:ZB(s.parent)&&s===s.parent.typeParameters[0]?s.parent.constraint:void 0}function _w(s){return s.kind===80||s.kind===81}function fJ(s){return s.kind===179||s.kind===178}function vx(s){return jo(s)&&!!(s.flags&64)}function IF(s){return Yg(s)&&!!(s.flags&64)}function _B(s){return Zl(s)&&!!(s.flags&64)}function GC(s){let c=s.kind;return!!(s.flags&64)&&(c===212||c===213||c===214||c===236)}function aP(s){return GC(s)&&!hv(s)&&!!s.questionDotToken}function gY(s){return aP(s.parent)&&s.parent.expression===s}function i3(s){return!GC(s.parent)||aP(s.parent)||s!==s.parent.expression}function IJ(s){return s.kind===227&&s.operatorToken.kind===61}function s2(s){return nh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="const"&&!s.typeArguments}function o2(s){return HI(s,8)}function hJ(s){return hv(s)&&!!(s.flags&64)}function AY(s){return s.kind===253||s.kind===252}function yre(s){return s.kind===281||s.kind===280}function dY(s){return s.kind===349||s.kind===342}function z6(s){return s>=167}function q6(s){return s>=0&&s<=166}function BL(s){return q6(s.kind)}function tN(s){return Da(s,"pos")&&Da(s,"end")}function pY(s){return 9<=s&&s<=15}function wL(s){return pY(s.kind)}function bre(s){switch(s.kind){case 211:case 210:case 14:case 219:case 232:return!0}return!1}function LD(s){return 15<=s&&s<=18}function ige(s){return LD(s.kind)}function $6(s){let c=s.kind;return c===17||c===18}function eS(s){return uy(s)||R0(s)}function rN(s){switch(s.kind){case 277:return s.isTypeOnly||s.parent.parent.phaseModifier===156;case 275:return s.parent.phaseModifier===156;case 274:return s.phaseModifier===156;case 272:return s.isTypeOnly}return!1}function mJ(s){switch(s.kind){case 282:return s.isTypeOnly||s.parent.parent.isTypeOnly;case 279:return s.isTypeOnly&&!!s.moduleSpecifier&&!s.exportClause;case 281:return s.parent.isTypeOnly}return!1}function nN(s){return rN(s)||mJ(s)}function sge(s){return ji(s,nN)!==void 0}function Ere(s){return s.kind===11||LD(s.kind)}function e7(s){return Zg(s)||Ir(s)}function kp(s){var c;return Ir(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function TL(s){var c;return p(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function fY(s){let c=s.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function pC(s){return(pi(s)||NL(s))&&p(s.name)}function cP(s){return jo(s)&&p(s.name)}function VD(s){switch(s){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function IY(s){return!!(HY(s)&31)}function Sre(s){return IY(s)||s===126||s===164||s===129}function Ig(s){return VD(s.kind)}function fC(s){let c=s.kind;return c===167||c===80}function VI(s){let c=s.kind;return c===80||c===81||c===11||c===9||c===168}function RL(s){let c=s.kind;return c===80||c===207||c===208}function bu(s){return!!s&&lP(s.kind)}function s3(s){return!!s&&(lP(s.kind)||fl(s))}function kd(s){return s&&nye(s.kind)}function hY(s){return s.kind===112||s.kind===97}function nye(s){switch(s){case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function lP(s){switch(s){case 174:case 180:case 324:case 181:case 182:case 185:case 318:case 186:return!0;default:return nye(s)}}function CJ(s){return ll(s)||_N(s)||$u(s)&&bu(s.parent)}function PI(s){let c=s.kind;return c===177||c===173||c===175||c===178||c===179||c===182||c===176||c===241}function xa(s){return s&&(s.kind===264||s.kind===232)}function yB(s){return s&&(s.kind===178||s.kind===179)}function t0(s){return pi(s)&&Nw(s)}function vre(s){return wo(s)&&jY(s)?(!yP(s)||!wF(s.expression))&&!I3(s,!0):s.parent&&xa(s.parent)&&pi(s)&&!Nw(s)}function NL(s){switch(s.kind){case 175:case 178:case 179:return!0;default:return!1}}function dp(s){return Ig(s)||So(s)}function Bx(s){let c=s.kind;return c===181||c===180||c===172||c===174||c===182||c===178||c===179||c===355}function mY(s){return Bx(s)||PI(s)}function yw(s){let c=s.kind;return c===304||c===305||c===306||c===175||c===178||c===179}function uc(s){return bAe(s.kind)}function oge(s){switch(s.kind){case 185:case 186:return!0}return!1}function Nu(s){if(s){let c=s.kind;return c===208||c===207}return!1}function CY(s){let c=s.kind;return c===210||c===211}function o3(s){let c=s.kind;return c===209||c===233}function uP(s){switch(s.kind){case 261:case 170:case 209:return!0}return!1}function _J(s){return nc(s)||Si(s)||gP(s)||EJ(s)}function yJ(s){return bJ(s)||Bre(s)}function bJ(s){switch(s.kind){case 207:case 211:return!0}return!1}function gP(s){switch(s.kind){case 209:case 304:case 305:case 306:return!0}return!1}function Bre(s){switch(s.kind){case 208:case 210:return!0}return!1}function EJ(s){switch(s.kind){case 209:case 233:case 231:case 210:case 211:case 80:case 212:case 213:return!0}return Jm(s,!0)}function wre(s){let c=s.kind;return c===212||c===167||c===206}function SJ(s){let c=s.kind;return c===212||c===167}function Tre(s){return hF(s)||RF(s)}function hF(s){switch(s.kind){case 214:case 215:case 216:case 171:case 287:case 286:case 290:return!0;case 227:return s.operatorToken.kind===104;default:return!1}}function av(s){return s.kind===214||s.kind===215}function AP(s){let c=s.kind;return c===229||c===15}function D_(s){return iye(o2(s).kind)}function iye(s){switch(s){case 212:case 213:case 215:case 214:case 285:case 286:case 289:case 216:case 210:case 218:case 211:case 232:case 219:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 229:case 97:case 106:case 110:case 112:case 108:case 236:case 234:case 237:case 102:case 283:return!0;default:return!1}}function Rre(s){return sye(o2(s).kind)}function sye(s){switch(s){case 225:case 226:case 221:case 222:case 223:case 224:case 217:return!0;default:return iye(s)}}function iN(s){switch(s.kind){case 226:return!0;case 225:return s.operator===46||s.operator===47;default:return!1}}function age(s){switch(s.kind){case 106:case 112:case 97:case 225:return!0;default:return wL(s)}}function un(s){return _Y(o2(s).kind)}function _Y(s){switch(s){case 228:case 230:case 220:case 227:case 231:case 235:case 233:case 357:case 356:case 239:return!0;default:return sye(s)}}function Ed(s){let c=s.kind;return c===217||c===235}function VT(s,c){switch(s.kind){case 249:case 250:case 251:case 247:case 248:return!0;case 257:return c&&VT(s.statement,c)}return!1}function sN(s){return Cf(s)||Gh(s)}function Db(s){return jt(s,sN)}function t7(s){return!DY(s)&&!Cf(s)&&!Ga(s,32)&&!s_(s)}function PT(s){return DY(s)||Cf(s)||Ga(s,32)}function DL(s){return s.kind===250||s.kind===251}function r7(s){return $u(s)||un(s)}function n7(s){return $u(s)}function hE(s){return u_(s)||un(s)}function cge(s){let c=s.kind;return c===269||c===268||c===80}function Nre(s){let c=s.kind;return c===269||c===268}function oye(s){let c=s.kind;return c===80||c===268}function wx(s){let c=s.kind;return c===276||c===275}function a3(s){return s.kind===268||s.kind===267}function mE(s){switch(s.kind){case 220:case 227:case 209:case 214:case 180:case 264:case 232:case 176:case 177:case 186:case 181:case 213:case 267:case 307:case 278:case 279:case 282:case 263:case 219:case 185:case 178:case 80:case 274:case 272:case 277:case 182:case 265:case 339:case 341:case 318:case 342:case 349:case 324:case 347:case 323:case 292:case 293:case 294:case 201:case 175:case 174:case 268:case 203:case 281:case 271:case 275:case 215:case 15:case 9:case 211:case 170:case 212:case 304:case 173:case 172:case 179:case 305:case 308:case 306:case 11:case 266:case 188:case 169:case 261:return!0;default:return!1}}function WI(s){switch(s.kind){case 220:case 242:case 180:case 270:case 300:case 176:case 195:case 177:case 186:case 181:case 249:case 250:case 251:case 263:case 219:case 185:case 178:case 182:case 339:case 341:case 318:case 324:case 347:case 201:case 175:case 174:case 268:case 179:case 308:case 266:return!0;default:return!1}}function CE(s){return s===220||s===209||s===264||s===232||s===176||s===177||s===267||s===307||s===282||s===263||s===219||s===178||s===274||s===272||s===277||s===265||s===292||s===175||s===174||s===268||s===271||s===275||s===281||s===170||s===304||s===173||s===172||s===179||s===305||s===266||s===169||s===261||s===347||s===339||s===349||s===203}function Dre(s){return s===263||s===283||s===264||s===265||s===266||s===267||s===268||s===273||s===272||s===279||s===278||s===271}function lge(s){return s===253||s===252||s===260||s===247||s===245||s===243||s===250||s===251||s===249||s===246||s===257||s===254||s===256||s===258||s===259||s===244||s===248||s===255||s===354}function jh(s){return s.kind===169?s.parent&&s.parent.kind!==346||wo(s):CE(s.kind)}function uge(s){return Dre(s.kind)}function vJ(s){return lge(s.kind)}function Lc(s){let c=s.kind;return lge(c)||Dre(c)||gge(s)}function gge(s){return s.kind!==242||s.parent!==void 0&&(s.parent.kind===259||s.parent.kind===300)?!1:!mP(s)}function kre(s){let c=s.kind;return lge(c)||Dre(c)||c===242}function yY(s){let c=s.kind;return c===284||c===167||c===80}function kL(s){let c=s.kind;return c===110||c===80||c===212||c===296}function BJ(s){let c=s.kind;return c===285||c===295||c===286||c===12||c===289}function wJ(s){let c=s.kind;return c===292||c===294}function TJ(s){let c=s.kind;return c===11||c===295}function eI(s){let c=s.kind;return c===287||c===286}function c3(s){let c=s.kind;return c===287||c===286||c===290}function RJ(s){let c=s.kind;return c===297||c===298}function l3(s){return s.kind>=310&&s.kind<=352}function i7(s){return s.kind===321||s.kind===320||s.kind===322||Tx(s)||u3(s)||yU(s)||qL(s)}function u3(s){return s.kind>=328&&s.kind<=352}function cv(s){return s.kind===179}function bB(s){return s.kind===178}function Xm(s){if(!Ane(s))return!1;let{jsDoc:c}=s;return!!c&&c.length>0}function If(s){return!!s.type}function WT(s){return!!s.initializer}function l1(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:case 307:return!0;default:return!1}}function bY(s){return s.kind===292||s.kind===294||yw(s)}function s7(s){return s.kind===184||s.kind===234}var IC=1073741823;function xre(s){let c=IC;for(let g of s){if(!g.length)continue;let d=0;for(;d0?g.parent.parameters[h-1]:void 0,S=c.text,R=_?Nn(n2(S,Yu(S,_.end+1,!1,!0)),fE(S,s.pos)):n2(S,Yu(S,s.pos,!1,!0));return jt(R)&&aye(Ei(R),c)}let d=g&&Fge(g,c);return!!F(d,h=>aye(h,c))}var Zre=[],PD="tslib",EY=160,Lre=1e6,Age=500;function Cp(s,c){let g=s.declarations;if(g){for(let d of g)if(d.kind===c)return d}}function dge(s,c){return Me(s.declarations||E,g=>g.kind===c)}function qu(s){let c=new Map;if(s)for(let g of s)c.set(g.escapedName,g);return c}function bw(s){return(s.flags&33554432)!==0}function WD(s){return!!(s.flags&1536)&&s.escapedName.charCodeAt(0)===34}var o7=pge();function pge(){var s="";let c=g=>s+=g;return{getText:()=>s,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(g,d)=>c(g),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>s.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!s.length&&dc(s.charCodeAt(s.length-1)),writeLine:()=>s+=" ",increaseIndent:Dc,decreaseIndent:Dc,clear:()=>s=""}}function NJ(s,c){return s.configFilePath!==c.configFilePath||KFe(s,c)}function KFe(s,c){return S0(s,c,M$e)}function fge(s,c){return S0(s,c,bWt)}function S0(s,c,g){return s!==c&&g.some(d=>!WAe(K7(s,d),K7(c,d)))}function Ew(s,c){for(;;){let g=c(s);if(g==="quit")return;if(g!==void 0)return g;if(ll(s))return;s=s.parent}}function Dh(s,c){let g=s.entries();for(let[d,h]of g){let _=c(h,d);if(_)return _}}function SB(s,c){let g=s.keys();for(let d of g){let h=c(d);if(h)return h}}function a7(s,c){s.forEach((g,d)=>{c.set(d,g)})}function dP(s){let c=o7.getText();try{return s(o7),o7.getText()}finally{o7.clear(),o7.writeKeyword(c)}}function DJ(s){return s.end-s.pos}function Vre(s,c){return s.path===c.path&&!s.prepend==!c.prepend&&!s.circular==!c.circular}function Ige(s,c){return s===c||s.resolvedModule===c.resolvedModule||!!s.resolvedModule&&!!c.resolvedModule&&s.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&s.resolvedModule.extension===c.resolvedModule.extension&&s.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&s.resolvedModule.originalPath===c.resolvedModule.originalPath&&cye(s.resolvedModule.packageId,c.resolvedModule.packageId)&&s.alternateResult===c.alternateResult}function xL(s){return s.resolvedModule}function c7(s){return s.resolvedTypeReferenceDirective}function kJ(s,c,g,d,h){var _;let S=(_=c.getResolvedModule(s,g,d))==null?void 0:_.alternateResult,R=S&&(k_(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[S]]:[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings,[S,S.includes(Vx+"@types/")?`@types/${Nie(h)}`:h]]),T=R?wu(void 0,R[0],...R[1]):c.typesPackageExists(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,h,Nie(h)):c.packageBundlesTypes(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,h,g):wu(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,g,Nie(h));return T&&(T.repopulateInfo=()=>({moduleReference:g,mode:d,packageName:h===g?void 0:h})),T}function l7(s){let c=QT(s.fileName),g=s.packageJsonScope,d=c===".ts"?".mts":c===".js"?".mjs":void 0,h=g&&!g.contents.packageJsonContent.type?d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,d,Ro(g.packageDirectory,"package.json")):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Ro(g.packageDirectory,"package.json")):d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module,d):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module);return h.repopulateInfo=()=>!0,h}function cye(s,c){return s===c||!!s&&!!c&&s.name===c.name&&s.subModuleName===c.subModuleName&&s.version===c.version&&s.peerDependencies===c.peerDependencies}function xJ({name:s,subModuleName:c}){return c?`${s}/${c}`:s}function oN(s){return`${xJ(s)}@${s.version}${s.peerDependencies??""}`}function hge(s,c){return s===c||s.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!s.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&s.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!s.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&s.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function Pre(s,c,g,d){pe.assert(s.length===c.length);for(let h=0;h=0),rn(c)[s]}function Cge(s){let c=ms(s),g=Ra(c,s.pos);return`${c.fileName}(${g.line+1},${g.character+1})`}function vY(s,c){pe.assert(s>=0);let g=rn(c),d=s,h=c.text;if(d+1===g.length)return h.length-1;{let _=g[d],S=g[d+1]-1;for(pe.assert(Cl(h.charCodeAt(S)));_<=S&&Cl(h.charCodeAt(S));)S--;return S}}function u7(s,c,g){return!(g&&g(c))&&!s.identifiers.has(c)}function sf(s){return s===void 0?!0:s.pos===s.end&&s.pos>=0&&s.kind!==1}function u1(s){return!sf(s)}function _ge(s,c){return Ds(s)?c===s.expression:fl(s)?c===s.modifiers:ss(s)?c===s.initializer:pi(s)?c===s.questionToken&&t0(s):fm(s)?c===s.modifiers||c===s.questionToken||c===s.exclamationToken||BY(s.modifiers,c,dp):a0(s)?c===s.equalsToken||c===s.modifiers||c===s.questionToken||c===s.exclamationToken||BY(s.modifiers,c,dp):uu(s)?c===s.exclamationToken:Tc(s)?c===s.typeParameters||c===s.type||BY(s.typeParameters,c,Ds):Bg(s)?c===s.typeParameters||BY(s.typeParameters,c,Ds):Dg(s)?c===s.typeParameters||c===s.type||BY(s.typeParameters,c,Ds):sEe(s)?c===s.modifiers||BY(s.modifiers,c,dp):!1}function BY(s,c,g){return!s||Ki(c)||!g(c)?!1:k(s,c)}function lye(s,c,g){if(c===void 0||c.length===0)return s;let d=0;for(;d[`${Ra(s,S.range.end).line}`,S])),d=new Map;return{getUnusedExpectations:h,markUsed:_};function h(){return Do(g.entries()).filter(([S,R])=>R.type===0&&!d.get(S)).map(([S,R])=>R)}function _(S){return g.has(`${S}`)?(d.set(`${S}`,!0),!0):!1}}function MD(s,c,g){if(sf(s))return s.pos;if(l3(s)||s.kind===12)return Yu((c??ms(s)).text,s.pos,!1,!0);if(g&&Xm(s))return MD(s.jsDoc[0],c);if(s.kind===353){c??(c=ms(s));let d=Nc(y$e(s,c));if(d)return MD(d,c,g)}return Yu((c??ms(s)).text,s.pos,!1,!1,GY(s))}function Mre(s,c){let g=!sf(s)&&LB(s)?be(s.modifiers,So):void 0;return g?Yu((c||ms(s)).text,g.end):MD(s,c)}function Ege(s,c){let g=!sf(s)&&LB(s)&&s.modifiers?Ei(s.modifiers):void 0;return g?Yu((c||ms(s)).text,g.end):MD(s,c)}function mF(s,c,g=!1){return TY(s.text,c,g)}function jFe(s){return!!ji(s,W3)}function wY(s){return!!(Gh(s)&&s.exportClause&&tk(s.exportClause)&&lv(s.exportClause.name))}function HD(s){return s.kind===11?s.text:Bc(s.escapedText)}function CF(s){return s.kind===11?Ap(s.text):s.escapedText}function lv(s){return(s.kind===11?s.text:s.escapedText)==="default"}function TY(s,c,g=!1){if(sf(c))return"";let d=s.substring(g?c.pos:Yu(s,c.pos),c.end);return jFe(c)&&(d=d.split(/\r\n|\n|\r/).map(h=>h.replace(/^\s*\*/,"").trimStart()).join(` -`)),d}function xp(s,c=!1){return mF(ms(s),s,c)}function Aye(s){return s.pos}function fP(s,c){return Wc(s,c,Aye,Zt)}function tA(s){let c=s.emitNode;return c&&c.flags||0}function g1(s){let c=s.emitNode;return c&&c.internalFlags||0}var Hre=FA(()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Iterator:new Map(Object.entries({es2015:E})),AsyncIterator:new Map(Object.entries({es2015:E})),ArrayBuffer:new Map(Object.entries({es2024:["maxByteLength","resizable","resize","detached","transfer","transferToFixedLength"]})),Atomics:new Map(Object.entries({es2017:["add","and","compareExchange","exchange","isLockFree","load","or","store","sub","wait","notify","xor"],es2024:["waitAsync"],esnext:["pause"]})),SharedArrayBuffer:new Map(Object.entries({es2017:["byteLength","slice"],es2024:["growable","maxByteLength","grow"]})),AsyncIterable:new Map(Object.entries({es2018:E})),AsyncIterableIterator:new Map(Object.entries({es2018:E})),AsyncGenerator:new Map(Object.entries({es2018:E})),AsyncGeneratorFunction:new Map(Object.entries({es2018:E})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"],es2024:["unicodeSets"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"],esnext:["fromAsync"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"],es2024:["groupBy"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],esnext:["f16round"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),MapConstructor:new Map(Object.entries({es2024:["groupBy"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"],esnext:["union","intersection","difference","symmetricDifference","isSubsetOf","isSupersetOf","isDisjointFrom"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"],es2024:["withResolvers"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"],es2024:["isWellFormed","toWellFormed"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:E,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"],esnext:["metadata","dispose","asyncDispose"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],esnext:["setFloat16","getFloat16"]})),BigInt:new Map(Object.entries({es2020:E})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float16Array:new Map(Object.entries({esnext:E})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigInt64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigUint64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),A7=(s=>(s[s.None=0]="None",s[s.NeverAsciiEscape=1]="NeverAsciiEscape",s[s.JsxAttributeEscape=2]="JsxAttributeEscape",s[s.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",s[s.AllowNumericSeparator=8]="AllowNumericSeparator",s))(A7||{});function Sge(s,c,g){if(c&&zFe(s,g))return mF(c,s);switch(s.kind){case 11:{let d=g&2?Wye:g&1||tA(s)&16777216?YT:Ene;return s.singleQuote?"'"+d(s.text,39)+"'":'"'+d(s.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=g&1||tA(s)&16777216?YT:Ene,h=s.rawText??Vye(d(s.text,96));switch(s.kind){case 15:return"`"+h+"`";case 16:return"`"+h+"${";case 17:return"}"+h+"${";case 18:return"}"+h+"`"}break}case 9:case 10:return s.text;case 14:return g&4&&s.isUnterminated?s.text+(s.text.charCodeAt(s.text.length-1)===92?" /":"/"):s.text}return pe.fail(`Literal kind '${s.kind}' not accounted for.`)}function zFe(s,c){if(sp(s)||!s.parent||c&4&&s.isUnterminated)return!1;if(mC(s)){if(s.numericLiteralFlags&26656)return!1;if(s.numericLiteralFlags&512)return!!(c&8)}return!eQ(s)}function vge(s){return Xs(s)?`"${YT(s)}"`:""+s}function vw(s){return gp(s).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function ZJ(s){return(dm(s)&7)!==0||Yre(s)}function Yre(s){let c=Rw(s);return c.kind===261&&c.parent.kind===300}function s_(s){return xh(s)&&(s.name.kind===11||vB(s))}function RY(s){return xh(s)&&s.name.kind===11}function Qre(s){return xh(s)&&Zg(s.name)}function Bge(s){return xh(s)||Ir(s)}function NY(s){return wge(s.valueDeclaration)}function wge(s){return!!s&&s.kind===268&&!s.body}function Tge(s){return s.kind===308||s.kind===268||s3(s)}function vB(s){return!!(s.flags&2048)}function _F(s){return s_(s)&&Xre(s)}function Xre(s){switch(s.parent.kind){case 308:return xm(s.parent);case 269:return s_(s.parent.parent)&&ll(s.parent.parent.parent)&&!xm(s.parent.parent.parent)}return!1}function LJ(s){var c;return(c=s.declarations)==null?void 0:c.find(g=>!_F(g)&&!(xh(g)&&vB(g)))}function qFe(s){return s===1||100<=s&&s<=199}function g3(s,c){return xm(s)||qFe(i0(c))&&!!s.commonJsModuleIndicator}function Jre(s,c){switch(s.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return s.isDeclarationFile?!1:!!(a_(c,"alwaysStrict")||zPt(s.statements)||xm(s)||sS(c))}function VJ(s){return!!(s.flags&33554432)||Ga(s,128)}function PJ(s,c){switch(s.kind){case 308:case 270:case 300:case 268:case 249:case 250:case 251:case 177:case 175:case 178:case 179:case 263:case 219:case 220:case 173:case 176:return!0;case 242:return!s3(c)}return!1}function Ure(s){switch(pe.type(s),s.kind){case 339:case 347:case 324:return!0;default:return Kre(s)}}function Kre(s){switch(pe.type(s),s.kind){case 180:case 181:case 174:case 182:case 185:case 186:case 318:case 264:case 232:case 265:case 266:case 346:case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function IP(s){switch(s.kind){case 273:case 272:return!0;default:return!1}}function Rge(s){return IP(s)||CP(s)}function d7(s){return IP(s)||nne(s)}function p7(s){switch(s.kind){case 273:case 272:case 244:case 264:case 263:case 268:case 266:case 265:case 267:return!0;default:return!1}}function Nge(s){return DY(s)||xh(s)||Um(s)||Up(s)}function DY(s){return IP(s)||Gh(s)}function f7(s){return ji(s.parent,c=>!!(het(c)&1))}function tS(s){return ji(s.parent,c=>PJ(c,c.parent))}function Dge(s,c){let g=tS(s);for(;g;)c(g),g=tS(g)}function Wd(s){return!s||DJ(s)===0?"(Missing)":xp(s)}function kge(s){return s.declaration?Wd(s.declaration.parameters[0].name):void 0}function kY(s){return s.kind===168&&!d1(s.expression)}function xY(s){var c;switch(s.kind){case 80:case 81:return(c=s.emitNode)!=null&&c.autoGenerate?void 0:s.escapedText;case 11:case 9:case 10:case 15:return Ap(s.text);case 168:return d1(s.expression)?Ap(s.expression.text):void 0;case 296:return oS(s);default:return pe.assertNever(s)}}function hP(s){return pe.checkDefined(xY(s))}function oy(s){switch(s.kind){case 110:return"this";case 81:case 80:return DJ(s)===0?Vo(s):xp(s);case 167:return oy(s.left)+"."+oy(s.right);case 212:return Ir(s.name)||p(s.name)?oy(s.expression)+"."+oy(s.name):pe.assertNever(s.name);case 312:return oy(s.left)+"#"+oy(s.right);case 296:return oy(s.namespace)+":"+oy(s.name);default:return pe.assertNever(s)}}function mo(s,c,...g){let d=ms(s);return _E(d,s,c,...g)}function A3(s,c,g,...d){let h=Yu(s.text,c.pos);return qh(s,h,c.end-h,g,...d)}function _E(s,c,g,...d){let h=qa(s,c);return qh(s,h.start,h.length,g,...d)}function Bw(s,c,g,d){let h=qa(s,c);return ze(s,h.start,h.length,g,d)}function ie(s,c,g,d){let h=Yu(s.text,c.pos);return ze(s,h,c.end-h,g,d)}function he(s,c,g){pe.assertGreaterThanOrEqual(c,0),pe.assertGreaterThanOrEqual(g,0),pe.assertLessThanOrEqual(c,s.length),pe.assertLessThanOrEqual(c+g,s.length)}function ze(s,c,g,d,h){return he(s.text,c,g),{file:s,start:c,length:g,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:h,canonicalHead:d.canonicalHead}}function Ut(s,c,g){return{file:s,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:g}}function Qr(s){return typeof s.messageText=="string"?{code:s.code,category:s.category,messageText:s.messageText,next:s.next}:s.messageText}function kn(s,c,g){return{file:s,start:c.pos,length:c.end-c.pos,code:g.code,category:g.category,messageText:g.message}}function Fi(s,...c){return{code:s.code,messageText:XY(s,...c)}}function rs(s,c){let g=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);g.scan();let d=g.getTokenStart();return wA(d,g.getTokenEnd())}function qs(s,c){let g=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);return g.scan(),g.getToken()}function vc(s,c){let g=Yu(s.text,c.pos);if(c.body&&c.body.kind===242){let{line:d}=Ra(s,c.body.pos),{line:h}=Ra(s,c.body.end);if(d0?c.statements[0].pos:c.end;return wA(_,S)}case 254:case 230:{let _=Yu(s.text,c.pos);return rs(s,_)}case 239:{let _=Yu(s.text,c.expression.end);return rs(s,_)}case 351:{let _=Yu(s.text,c.tagName.pos);return rs(s,_)}case 177:{let _=c,S=Yu(s.text,_.pos),R=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,S),T=R.scan();for(;T!==137&&T!==1;)T=R.scan();let W=R.getTokenEnd();return wA(S,W)}}if(g===void 0)return rs(s,c.pos);pe.assert(!tR(g));let d=sf(g),h=d||KL(c)?g.pos:Yu(s.text,g.pos);return d?(pe.assert(h===g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h===g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(pe.assert(h>=g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h<=g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),wA(h,g.end)}function fc(s){return s.kind===308&&!vl(s)}function vl(s){return(s.externalModuleIndicator||s.commonJsModuleIndicator)!==void 0}function Zu(s){return s.scriptKind===6}function VA(s){return!!(Hc(s)&4096)}function hf(s){return!!(Hc(s)&8&&!Ve(s,s.parent))}function Sd(s){return(dm(s)&7)===6}function tI(s){return(dm(s)&7)===4}function rI(s){return(dm(s)&7)===2}function OT(s){let c=dm(s)&7;return c===2||c===4||c===6}function rS(s){return(dm(s)&7)===1}function Dy(s){return s.kind===214&&s.expression.kind===108}function Up(s){if(s.kind!==214)return!1;let c=s.expression;return c.kind===102||Du(c)&&c.keywordToken===102&&c.name.escapedText==="defer"}function uv(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}function ky(s){return Um(s)&&EE(s.argument)&&Zg(s.argument.literal)}function nS(s){return s.kind===245&&s.expression.kind===11}function jre(s){return!!(tA(s)&2097152)}function xge(s){return jre(s)&&ih(s)}function tVt(s){return Ir(s.name)&&!s.initializer}function Gge(s){return jre(s)&&Ch(s)&&ue(s.declarationList.declarations,tVt)}function Fge(s,c){return s.kind!==12?fE(c.text,s.pos):void 0}function dye(s,c){let g=s.kind===170||s.kind===169||s.kind===219||s.kind===220||s.kind===218||s.kind===261||s.kind===282?Nn(n2(c,s.pos),fE(c,s.pos)):fE(c,s.pos);return Me(g,d=>d.end<=s.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var rVt=/^\/\/\/\s*/,nVt=/^\/\/\/\s*/,iVt=/^\/\/\/\s*/,sVt=/^\/\/\/\s*/,oVt=/^\/\/\/\s*/,aVt=/^\/\/\/\s*/;function ww(s){if(183<=s.kind&&s.kind<=206)return!0;switch(s.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return s.parent.kind!==223;case 234:return fqe(s);case 169:return s.parent.kind===201||s.parent.kind===196;case 80:(s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s)&&(s=s.parent),pe.assert(s.kind===80||s.kind===167||s.kind===212,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 167:case 212:case 110:{let{parent:c}=s;if(c.kind===187)return!1;if(c.kind===206)return!c.isTypeOf;if(183<=c.kind&&c.kind<=206)return!0;switch(c.kind){case 234:return fqe(c);case 169:return s===c.constraint;case 346:return s===c.constraint;case 173:case 172:case 170:case 261:return s===c.type;case 263:case 219:case 220:case 177:case 175:case 174:case 178:case 179:return s===c.type;case 180:case 181:case 182:return s===c.type;case 217:return s===c.type;case 214:case 215:case 216:return k(c.typeArguments,s)}}}return!1}function fqe(s){return t9e(s.parent)||bz(s.parent)||h1(s.parent)&&!dAe(s)}function yF(s,c){return g(s);function g(d){switch(d.kind){case 254:return c(d);case 270:case 242:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 297:case 298:case 257:case 259:case 300:return Lu(d,g)}}}function $Fe(s,c){return g(s);function g(d){switch(d.kind){case 230:c(d);let h=d.expression;h&&g(h);return;case 267:case 265:case 268:case 266:return;default:if(bu(d)){if(d.name&&d.name.kind===168){g(d.name.expression);return}}else ww(d)||Lu(d,g)}}}function pye(s){return s&&s.kind===189?s.elementType:s&&s.kind===184?Ps(s.typeArguments):void 0}function Zge(s){switch(s.kind){case 265:case 264:case 232:case 188:return s.members;case 211:return s.properties}}function I7(s){if(s)switch(s.kind){case 209:case 307:case 170:case 304:case 173:case 172:case 305:case 261:return!0}return!1}function h7(s){return s.parent.kind===262&&s.parent.parent.kind===244}function fye(s){return wo(s)?og(s.parent)&&fo(s.parent.parent)&&nI(s.parent.parent)===2||Lge(s.parent):!1}function Lge(s){return wo(s)?fo(s)&&nI(s)===1:!1}function eZe(s){return(nc(s)?rI(s)&&Ir(s.name)&&h7(s):pi(s)?b3(s)&&zh(s):ss(s)&&b3(s))||Lge(s)}function tZe(s){switch(s.kind){case 175:case 174:case 177:case 178:case 179:case 263:case 219:return!0}return!1}function Iye(s,c){for(;;){if(c&&c(s),s.statement.kind!==257)return s.statement;s=s.statement}}function mP(s){return s&&s.kind===242&&bu(s.parent)}function a2(s){return s&&s.kind===175&&s.parent.kind===211}function Vge(s){return(s.kind===175||s.kind===178||s.kind===179)&&(s.parent.kind===211||s.parent.kind===232)}function rZe(s){return s&&s.kind===1}function nZe(s){return s&&s.kind===0}function WJ(s,c,g,d){return F(s?.properties,h=>{if(!fm(h))return;let _=xY(h.name);return c===_||d&&d===_?g(h):void 0})}function m7(s){if(s&&s.statements.length){let c=s.statements[0].expression;return Gs(c,og)}}function Pge(s,c,g){return zre(s,c,d=>OI(d.initializer)?de(d.initializer.elements,h=>Zg(h)&&h.text===g):void 0)}function zre(s,c,g){return WJ(m7(s),c,g)}function A1(s){return ji(s.parent,bu)}function Wge(s){return ji(s.parent,kd)}function hC(s){return ji(s.parent,xa)}function iZe(s){return ji(s.parent,c=>xa(c)||bu(c)?"quit":fl(c))}function qre(s){return ji(s.parent,s3)}function Oge(s){let c=ji(s.parent,g=>xa(g)?"quit":So(g));return c&&xa(c.parent)?hC(c.parent):hC(c??s)}function r0(s,c,g){for(pe.assert(s.kind!==308);;){if(s=s.parent,!s)return pe.fail();switch(s.kind){case 168:if(g&&xa(s.parent.parent))return s;s=s.parent.parent;break;case 171:s.parent.kind===170&&PI(s.parent.parent)?s=s.parent.parent:PI(s.parent)&&(s=s.parent);break;case 220:if(!c)continue;case 263:case 219:case 268:case 176:case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 180:case 181:case 182:case 267:case 308:return s}}}function sZe(s){switch(s.kind){case 220:case 263:case 219:case 173:return!0;case 242:switch(s.parent.kind){case 177:case 175:case 178:case 179:return!0;default:return!1}default:return!1}}function Mge(s){Ir(s)&&(pm(s.parent)||ih(s.parent))&&s.parent.name===s&&(s=s.parent);let c=r0(s,!0,!1);return ll(c)}function oZe(s){let c=r0(s,!1,!1);if(c)switch(c.kind){case 177:case 263:case 219:return c}}function C7(s,c){for(;;){if(s=s.parent,!s)return;switch(s.kind){case 168:s=s.parent;break;case 263:case 219:case 220:if(!c)continue;case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 176:return s;case 171:s.parent.kind===170&&PI(s.parent.parent)?s=s.parent.parent:PI(s.parent)&&(s=s.parent);break}}}function ZL(s){if(s.kind===219||s.kind===220){let c=s,g=s.parent;for(;g.kind===218;)c=g,g=g.parent;if(g.kind===214&&g.expression===c)return g}}function xy(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===108}function $re(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===110}function Hge(s){var c;return!!s&&nc(s)&&((c=s.initializer)==null?void 0:c.kind)===110}function aZe(s){return!!s&&(a0(s)||fm(s))&&fo(s.parent.parent)&&s.parent.parent.operatorToken.kind===64&&s.parent.parent.right.kind===110}function ene(s){switch(s.kind){case 184:return s.typeName;case 234:return Od(s.expression)?s.expression:void 0;case 80:case 167:return s}}function Yge(s){switch(s.kind){case 216:return s.tag;case 287:case 286:return s.tagName;case 227:return s.right;case 290:return s;default:return s.expression}}function OJ(s,c,g,d){if(s&&rh(c)&&p(c.name))return!1;switch(c.kind){case 264:return!0;case 232:return!s;case 173:return g!==void 0&&(s?pm(g):xa(g)&&!wP(c)&&!jye(c));case 178:case 179:case 175:return c.body!==void 0&&g!==void 0&&(s?pm(g):xa(g));case 170:return s?g!==void 0&&g.body!==void 0&&(g.kind===177||g.kind===175||g.kind===179)&&vP(g)!==c&&d!==void 0&&d.kind===264:!1}return!1}function MJ(s,c,g,d){return p1(c)&&OJ(s,c,g,d)}function tne(s,c,g,d){return MJ(s,c,g,d)||HJ(s,c,g)}function HJ(s,c,g){switch(c.kind){case 264:return jt(c.members,d=>tne(s,d,c,g));case 232:return!s&&jt(c.members,d=>tne(s,d,c,g));case 175:case 179:case 177:return jt(c.parameters,d=>MJ(s,d,c,g));default:return!1}}function Rx(s,c){if(MJ(s,c))return!0;let g=lN(c);return!!g&&HJ(s,g,c)}function hye(s,c,g){let d;if(yB(c)){let{firstAccessor:h,secondAccessor:_,setAccessor:S}=BP(g.members,c),R=p1(h)?h:_&&p1(_)?_:void 0;if(!R||c!==R)return!1;d=S?.parameters}else uu(c)&&(d=c.parameters);if(MJ(s,c,g))return!0;if(d){for(let h of d)if(!SF(h)&&MJ(s,h,c,g))return!0}return!1}function mye(s){if(s.textSourceNode){switch(s.textSourceNode.kind){case 11:return mye(s.textSourceNode);case 15:return s.text===""}return!1}return s.text===""}function YJ(s){let{parent:c}=s;return c.kind===287||c.kind===286||c.kind===288?c.tagName===s:!1}function MT(s){switch(s.kind){case 108:case 106:case 112:case 97:case 14:case 210:case 211:case 212:case 213:case 214:case 215:case 216:case 235:case 217:case 239:case 236:case 218:case 219:case 232:case 220:case 223:case 221:case 222:case 225:case 226:case 227:case 228:case 231:case 229:case 233:case 285:case 286:case 289:case 230:case 224:return!0;case 237:return!Up(s.parent)||s.parent.expression!==s;case 234:return!h1(s.parent)&&!bz(s.parent);case 167:for(;s.parent.kind===167;)s=s.parent;return s.parent.kind===187||Tx(s.parent)||lde(s.parent)||O3(s.parent)||YJ(s);case 312:for(;O3(s.parent);)s=s.parent;return s.parent.kind===187||Tx(s.parent)||lde(s.parent)||O3(s.parent)||YJ(s);case 81:return fo(s.parent)&&s.parent.left===s&&s.parent.operatorToken.kind===103;case 80:if(s.parent.kind===187||Tx(s.parent)||lde(s.parent)||O3(s.parent)||YJ(s))return!0;case 9:case 10:case 11:case 15:case 110:return rne(s);default:return!1}}function rne(s){let{parent:c}=s;switch(c.kind){case 261:case 170:case 173:case 172:case 307:case 304:case 209:return c.initializer===s;case 245:case 246:case 247:case 248:case 254:case 255:case 256:case 297:case 258:return c.expression===s;case 249:let g=c;return g.initializer===s&&g.initializer.kind!==262||g.condition===s||g.incrementor===s;case 250:case 251:let d=c;return d.initializer===s&&d.initializer.kind!==262||d.expression===s;case 217:case 235:return s===c.expression;case 240:return s===c.expression;case 168:return s===c.expression;case 171:case 295:case 294:case 306:return!0;case 234:return c.expression===s&&!ww(c);case 305:return c.objectAssignmentInitializer===s;case 239:return s===c.expression;default:return MT(c)}}function Qge(s){for(;s.kind===167||s.kind===80;)s=s.parent;return s.kind===187}function cZe(s){return tk(s)&&!!s.parent.moduleSpecifier}function LL(s){return s.kind===272&&s.moduleReference.kind===284}function _7(s){return pe.assert(LL(s)),s.moduleReference.expression}function Cye(s){return CP(s)&&oU(s.initializer).arguments[0]}function d3(s){return s.kind===272&&s.moduleReference.kind!==284}function aN(s){return s?.kind===308}function n0(s){return wo(s)}function wo(s){return!!s&&!!(s.flags&524288)}function Xge(s){return!!s&&!!(s.flags&134217728)}function Jge(s){return!Zu(s)}function GY(s){return!!s&&!!(s.flags&16777216)}function Uge(s){return nh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="Object"&&s.typeArguments&&s.typeArguments.length===2&&(s.typeArguments[0].kind===154||s.typeArguments[0].kind===150)}function ay(s,c){if(s.kind!==214)return!1;let{expression:g,arguments:d}=s;if(g.kind!==80||g.escapedText!=="require"||d.length!==1)return!1;let h=d[0];return!c||mA(h)}function y7(s){return Iqe(s,!1)}function CP(s){return Iqe(s,!0)}function lZe(s){return hg(s)&&CP(s.parent.parent)}function Iqe(s,c){return nc(s)&&!!s.initializer&&ay(c?oU(s.initializer):s.initializer,!0)}function nne(s){return Ch(s)&&s.declarationList.declarations.length>0&&ue(s.declarationList.declarations,c=>y7(c))}function ine(s){return s===39||s===34}function sne(s,c){return mF(c,s).charCodeAt(0)===34}function b7(s){return fo(s)||_p(s)||Ir(s)||Zl(s)}function one(s){return wo(s)&&s.initializer&&fo(s.initializer)&&(s.initializer.operatorToken.kind===57||s.initializer.operatorToken.kind===61)&&s.name&&Od(s.name)&&QJ(s.name,s.initializer.left)?s.initializer.right:s.initializer}function E7(s){let c=one(s);return c&&VL(c,wF(s.name))}function cVt(s,c){return F(s.properties,g=>fm(g)&&Ir(g.name)&&g.name.escapedText==="value"&&g.initializer&&VL(g.initializer,c))}function FY(s){if(s&&s.parent&&fo(s.parent)&&s.parent.operatorToken.kind===64){let c=wF(s.parent.left);return VL(s.parent.right,c)||lVt(s.parent.left,s.parent.right,c)}if(s&&Zl(s)&&f3(s)){let c=cVt(s.arguments[2],s.arguments[1].text==="prototype");if(c)return c}}function VL(s,c){if(Zl(s)){let g=QA(s.expression);return g.kind===219||g.kind===220?s:void 0}if(s.kind===219||s.kind===232||s.kind===220||og(s)&&(s.properties.length===0||c))return s}function lVt(s,c,g){let d=fo(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&VL(c.right,g);if(d&&QJ(s,c.left))return d}function uZe(s){let c=nc(s.parent)?s.parent.name:fo(s.parent)&&s.parent.operatorToken.kind===64?s.parent.left:void 0;return c&&VL(s.right,wF(c))&&Od(c)&&QJ(c,s.left)}function _ye(s){if(fo(s.parent)){let c=(s.parent.operatorToken.kind===57||s.parent.operatorToken.kind===61)&&fo(s.parent.parent)?s.parent.parent:s.parent;if(c.operatorToken.kind===64&&Ir(c.left))return c.left}else if(nc(s.parent))return s.parent.name}function QJ(s,c){return Tw(s)&&Tw(c)?c2(s)===c2(c):_w(s)&&gZe(c)&&(c.expression.kind===110||Ir(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?QJ(s,cne(c)):gZe(s)&&gZe(c)?YD(s)===YD(c)&&QJ(s.expression,c.expression):!1}function ane(s){for(;Jm(s,!0);)s=s.right;return s}function p3(s){return Ir(s)&&s.escapedText==="exports"}function _P(s){return Ir(s)&&s.escapedText==="module"}function cN(s){return(jo(s)||yye(s))&&_P(s.expression)&&YD(s)==="exports"}function nI(s){let c=uVt(s);return c===5||wo(s)?c:0}function f3(s){return B(s.arguments)===3&&jo(s.expression)&&Ir(s.expression.expression)&&Vo(s.expression.expression)==="Object"&&Vo(s.expression.name)==="defineProperty"&&d1(s.arguments[1])&&I3(s.arguments[0],!0)}function gZe(s){return jo(s)||yye(s)}function yye(s){return Yg(s)&&d1(s.argumentExpression)}function yP(s,c){return jo(s)&&(!c&&s.expression.kind===110||Ir(s.name)&&I3(s.expression,!0))||Kge(s,c)}function Kge(s,c){return yye(s)&&(!c&&s.expression.kind===110||Od(s.expression)||yP(s.expression,!0))}function I3(s,c){return Od(s)||yP(s,c)}function cne(s){return jo(s)?s.name:s.argumentExpression}function uVt(s){if(Zl(s)){if(!f3(s))return 0;let c=s.arguments[0];return p3(c)||cN(c)?8:yP(c)&&YD(c)==="prototype"?9:7}return s.operatorToken.kind!==64||!_p(s.left)||gVt(ane(s))?0:I3(s.left.expression,!0)&&YD(s.left)==="prototype"&&og(bye(s))?6:XJ(s.left)}function gVt(s){return qT(s)&&mC(s.expression)&&s.expression.text==="0"}function jge(s){if(jo(s))return s.name;let c=QA(s.argumentExpression);return mC(c)||mA(c)?c:s}function YD(s){let c=jge(s);if(c){if(Ir(c))return c.escapedText;if(mA(c)||mC(c))return Ap(c.text)}}function XJ(s){if(s.expression.kind===110)return 4;if(cN(s))return 2;if(I3(s.expression,!0)){if(wF(s.expression))return 3;let c=s;for(;!Ir(c.expression);)c=c.expression;let g=c.expression;if((g.escapedText==="exports"||g.escapedText==="module"&&YD(c)==="exports")&&yP(s))return 1;if(I3(s,!0)||Yg(s)&&rAe(s))return 5}return 0}function bye(s){for(;fo(s.right);)s=s.right;return s.right}function lne(s){return fo(s)&&nI(s)===3}function Eye(s){return wo(s)&&s.parent&&s.parent.kind===245&&(!Yg(s)||yye(s))&&!!ov(s.parent)}function S7(s,c){let{valueDeclaration:g}=s;(!g||!(c.flags&33554432&&!wo(c)&&!(g.flags&33554432))&&b7(g)&&!b7(c)||g.kind!==c.kind&&Bge(g))&&(s.valueDeclaration=c)}function AZe(s){if(!s||!s.valueDeclaration)return!1;let c=s.valueDeclaration;return c.kind===263||nc(c)&&c.initializer&&bu(c.initializer)}function dZe(s){switch(s?.kind){case 261:case 209:case 273:case 279:case 272:case 274:case 281:case 275:case 282:case 277:case 206:return!0}return!1}function ZY(s){var c,g;switch(s.kind){case 261:case 209:return(c=ji(s.initializer,d=>ay(d,!0)))==null?void 0:c.arguments[0];case 273:case 279:case 352:return Gs(s.moduleSpecifier,mA);case 272:return Gs((g=Gs(s.moduleReference,ZF))==null?void 0:g.expression,mA);case 274:case 281:return Gs(s.parent.moduleSpecifier,mA);case 275:case 282:return Gs(s.parent.parent.moduleSpecifier,mA);case 277:return Gs(s.parent.parent.parent.moduleSpecifier,mA);case 206:return ky(s)?s.argument.literal:void 0;default:pe.assertNever(s)}}function v7(s){return B7(s)||pe.failBadSyntaxKind(s.parent)}function B7(s){switch(s.parent.kind){case 273:case 279:case 352:return s.parent;case 284:return s.parent.parent;case 214:return Up(s.parent)||ay(s.parent,!1)?s.parent:void 0;case 202:if(!Zg(s))break;return Gs(s.parent.parent,Um);default:return}}function une(s,c){return!!c.rewriteRelativeImportExtensions&&Ip(s)&&!PC(s)&&w3(s)}function LY(s){switch(s.kind){case 273:case 279:case 352:return s.moduleSpecifier;case 272:return s.moduleReference.kind===284?s.moduleReference.expression:void 0;case 206:return ky(s)?s.argument.literal:void 0;case 214:return s.arguments[0];case 268:return s.name.kind===11?s.name:void 0;default:return pe.assertNever(s)}}function JJ(s){switch(s.kind){case 273:return s.importClause&&Gs(s.importClause.namedBindings,Zx);case 272:return s;case 279:return s.exportClause&&Gs(s.exportClause,tk);default:return pe.assertNever(s)}}function h3(s){return(s.kind===273||s.kind===352)&&!!s.importClause&&!!s.importClause.name}function pZe(s,c){if(s.name){let g=c(s);if(g)return g}if(s.namedBindings){let g=Zx(s.namedBindings)?c(s.namedBindings):F(s.namedBindings.elements,c);if(g)return g}}function VY(s){switch(s.kind){case 170:case 175:case 174:case 305:case 304:case 173:case 172:return s.questionToken!==void 0}return!1}function PY(s){let c=hie(s)?Nc(s.parameters):void 0,g=Gs(c&&c.name,Ir);return!!g&&g.escapedText==="new"}function iS(s){return s.kind===347||s.kind===339||s.kind===341}function gne(s){return iS(s)||FB(s)}function fZe(s){return VC(s)&&fo(s.expression)&&s.expression.operatorToken.kind===64?ane(s.expression):void 0}function hqe(s){return VC(s)&&fo(s.expression)&&nI(s.expression)!==0&&fo(s.expression.right)&&(s.expression.right.operatorToken.kind===57||s.expression.right.operatorToken.kind===61)?s.expression.right.right:void 0}function mqe(s){switch(s.kind){case 244:let c=m3(s);return c&&c.initializer;case 173:return s.initializer;case 304:return s.initializer}}function m3(s){return Ch(s)?Nc(s.declarationList.declarations):void 0}function Cqe(s){return xh(s)&&s.body&&s.body.kind===268?s.body:void 0}function UJ(s){if(s.kind>=244&&s.kind<=260)return!0;switch(s.kind){case 80:case 110:case 108:case 167:case 237:case 213:case 212:case 209:case 219:case 220:case 175:case 178:case 179:return!0;default:return!1}}function Ane(s){switch(s.kind){case 220:case 227:case 242:case 253:case 180:case 297:case 264:case 232:case 176:case 177:case 186:case 181:case 252:case 260:case 247:case 213:case 243:case 1:case 267:case 307:case 278:case 279:case 282:case 245:case 250:case 251:case 249:case 263:case 219:case 185:case 178:case 80:case 246:case 273:case 272:case 182:case 265:case 318:case 324:case 257:case 175:case 174:case 268:case 203:case 271:case 211:case 170:case 218:case 212:case 304:case 173:case 172:case 254:case 241:case 179:case 305:case 306:case 256:case 258:case 259:case 266:case 169:case 261:case 244:case 248:case 255:return!0;default:return!1}}function Sye(s,c){let g;I7(s)&&WT(s)&&Xm(s.initializer)&&(g=Or(g,_qe(s,s.initializer.jsDoc)));let d=s;for(;d&&d.parent;){if(Xm(d)&&(g=Or(g,_qe(s,d.jsDoc))),d.kind===170){g=Or(g,(c?uJ:vL)(d));break}if(d.kind===169){g=Or(g,(c?U6:r3)(d));break}d=vye(d)}return g||E}function _qe(s,c){let g=Ei(c);return er(c,d=>{if(d===g){let h=Me(d.tags,_=>yqe(s,_));return d.tags===h?[d]:h}else return Me(d.tags,mie)})}function yqe(s,c){return!(ude(c)||r9e(c))||!c.parent||!tR(c.parent)||!gI(c.parent.parent)||c.parent.parent===s}function vye(s){let c=s.parent;if(c.kind===304||c.kind===278||c.kind===173||c.kind===245&&s.kind===212||c.kind===254||Cqe(c)||Jm(s))return c;if(c.parent&&(m3(c.parent)===s||Jm(c)))return c.parent;if(c.parent&&c.parent.parent&&(m3(c.parent.parent)||mqe(c.parent.parent)===s||hqe(c.parent.parent)))return c.parent.parent}function dne(s){if(s.symbol)return s.symbol;if(!Ir(s.name))return;let c=s.name.escapedText,g=PL(s);if(!g)return;let d=de(g.parameters,h=>h.name.kind===80&&h.name.escapedText===c);return d&&d.symbol}function zge(s){if(tR(s.parent)&&s.parent.tags){let c=de(s.parent.tags,iS);if(c)return c}return PL(s)}function Bye(s){return dJ(s,mie)}function PL(s){let c=WL(s);if(c)return ss(c)&&c.type&&bu(c.type)?c.type:bu(c)?c:void 0}function WL(s){let c=bP(s);if(c)return hqe(c)||fZe(c)||mqe(c)||m3(c)||Cqe(c)||c}function bP(s){let c=KJ(s);if(!c)return;let g=c.parent;if(g&&g.jsDoc&&c===li(g.jsDoc))return g}function KJ(s){return ji(s.parent,tR)}function IZe(s){let c=s.name.escapedText,{typeParameters:g}=s.parent.parent.parent;return g&&de(g,d=>d.name.escapedText===c)}function bqe(s){return!!s.typeArguments}var hZe=(s=>(s[s.None=0]="None",s[s.Definite=1]="Definite",s[s.Compound=2]="Compound",s))(hZe||{});function mZe(s){let c=s.parent;for(;;){switch(c.kind){case 227:let g=c,d=g.operatorToken.kind;return UD(d)&&g.left===s?g:void 0;case 225:case 226:let h=c,_=h.operator;return _===46||_===47?h:void 0;case 250:case 251:let S=c;return S.initializer===s?S:void 0;case 218:case 210:case 231:case 236:s=c;break;case 306:s=c.parent;break;case 305:if(c.name!==s)return;s=c.parent;break;case 304:if(c.name===s)return;s=c.parent;break;default:return}c=s.parent}}function QD(s){let c=mZe(s);if(!c)return 0;switch(c.kind){case 227:let g=c.operatorToken.kind;return g===64||V7(g)?1:2;case 225:case 226:return 2;case 250:case 251:return 1}}function bF(s){return!!mZe(s)}function AVt(s){let c=QA(s.right);return c.kind===227&&k$e(c.operatorToken.kind)}function qge(s){let c=mZe(s);return!!c&&Jm(c,!0)&&AVt(c)}function CZe(s){switch(s.kind){case 242:case 244:case 255:case 246:case 256:case 270:case 297:case 298:case 257:case 249:case 250:case 251:case 247:case 248:case 259:case 300:return!0}return!1}function C3(s){return UA(s)||lA(s)||NL(s)||ih(s)||Tc(s)}function Eqe(s,c){for(;s&&s.kind===c;)s=s.parent;return s}function pne(s){return Eqe(s,197)}function gv(s){return Eqe(s,218)}function wye(s){let c;for(;s&&s.kind===197;)c=s,s=s.parent;return[c,s]}function w7(s){for(;fv(s);)s=s.type;return s}function QA(s,c){return HI(s,c?-2147483647:1)}function Tye(s){return s.kind!==212&&s.kind!==213?!1:(s=gv(s.parent),s&&s.kind===221)}function EP(s,c){for(;s;){if(s===c)return!0;s=s.parent}return!1}function HT(s){return!ll(s)&&!Nu(s)&&jh(s.parent)&&s.parent.name===s}function T7(s){let c=s.parent;switch(s.kind){case 11:case 15:case 9:if(Un(c))return c.parent;case 80:if(jh(c))return c.name===s?c:void 0;if(zi(c)){let g=c.parent;return cS(g)&&g.name===c?g:void 0}else{let g=c.parent;return fo(g)&&nI(g)!==0&&(g.left.symbol||g.symbol)&&Il(g)===s?g:void 0}case 81:return jh(c)&&c.name===s?c:void 0;default:return}}function fne(s){return d1(s)&&s.parent.kind===168&&jh(s.parent.parent)}function _Ze(s){let c=s.parent;switch(c.kind){case 173:case 172:case 175:case 174:case 178:case 179:case 307:case 304:case 212:return c.name===s;case 167:return c.right===s;case 209:case 277:return c.propertyName===s;case 282:case 292:case 286:case 287:case 288:return!0}return!1}function Rye(s){switch(s.parent.kind){case 274:case 277:case 275:case 282:case 278:case 272:case 281:return s.parent;case 167:do s=s.parent;while(s.parent.kind===167);return Rye(s)}}function $ge(s){return Od(s)||vd(s)}function Ine(s){let c=hne(s);return $ge(c)}function hne(s){return Cf(s)?s.expression:s.right}function yZe(s){return s.kind===305?s.name:s.kind===304?s.initializer:s.parent.right}function BB(s){let c=OL(s);if(c&&wo(s)){let g=K6(s);if(g)return g.class}return c}function OL(s){let c=mne(s.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function jJ(s){if(wo(s))return uY(s).map(c=>c.class);{let c=mne(s.heritageClauses,119);return c?.types}}function R7(s){return g_(s)?N7(s)||E:xa(s)&&Nn(J_(BB(s)),jJ(s))||E}function N7(s){let c=mne(s.heritageClauses,96);return c?c.types:void 0}function mne(s,c){if(s){for(let g of s)if(g.token===c)return g}}function ML(s,c){for(;s;){if(s.kind===c)return s;s=s.parent}}function v0(s){return 83<=s&&s<=166}function Nye(s){return 19<=s&&s<=79}function eAe(s){return v0(s)||Nye(s)}function tAe(s){return 128<=s&&s<=166}function Dye(s){return v0(s)&&!tAe(s)}function WY(s){let c=Ta(s);return c!==void 0&&Dye(c)}function kye(s){let c=iv(s);return!!c&&!tAe(c)}function zJ(s){return 2<=s&&s<=7}var bZe=(s=>(s[s.Normal=0]="Normal",s[s.Generator=1]="Generator",s[s.Async=2]="Async",s[s.Invalid=4]="Invalid",s[s.AsyncGenerator=3]="AsyncGenerator",s))(bZe||{});function SI(s){if(!s)return 4;let c=0;switch(s.kind){case 263:case 219:case 175:s.asteriskToken&&(c|=1);case 220:Ga(s,1024)&&(c|=2);break}return s.body||(c|=4),c}function D7(s){switch(s.kind){case 263:case 219:case 220:case 175:return s.body!==void 0&&s.asteriskToken===void 0&&Ga(s,1024)}return!1}function d1(s){return mA(s)||mC(s)}function Cne(s){return T0(s)&&(s.operator===40||s.operator===41)&&mC(s.operand)}function XD(s){let c=Il(s);return!!c&&rAe(c)}function rAe(s){if(!(s.kind===168||s.kind===213))return!1;let c=Yg(s)?QA(s.argumentExpression):s.expression;return!d1(c)&&!Cne(c)}function _3(s){switch(s.kind){case 80:case 81:return s.escapedText;case 11:case 15:case 9:case 10:return Ap(s.text);case 168:let c=s.expression;return d1(c)?Ap(c.text):Cne(c)?c.operator===41?Vi(c.operator)+c.operand.text:c.operand.text:void 0;case 296:return oS(s);default:return pe.assertNever(s)}}function Tw(s){switch(s.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function c2(s){return _w(s)?Vo(s):eR(s)?lz(s):s.text}function qJ(s){return _w(s)?s.escapedText:eR(s)?oS(s):Ap(s.text)}function _ne(s,c){return`__#${kg(s)}@${c}`}function k7(s){return Ac(s.escapedName,"__@")}function EZe(s){return Ac(s.escapedName,"__#")}function dVt(s){return Ir(s)?Vo(s)==="__proto__":Zg(s)&&s.text==="__proto__"}function nAe(s,c){switch(s=HI(s),s.kind){case 232:if(Oet(s))return!1;break;case 219:if(s.name)return!1;break;case 220:break;default:return!1}return typeof c=="function"?c(s):!0}function xye(s){switch(s.kind){case 304:return!dVt(s.name);case 305:return!!s.objectAssignmentInitializer;case 261:return Ir(s.name)&&!!s.initializer;case 170:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 209:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 173:return!!s.initializer;case 227:switch(s.operatorToken.kind){case 64:case 77:case 76:case 78:return Ir(s.left)}break;case 278:return!0}return!1}function kb(s,c){if(!xye(s))return!1;switch(s.kind){case 304:return nAe(s.initializer,c);case 305:return nAe(s.objectAssignmentInitializer,c);case 261:case 170:case 209:case 173:return nAe(s.initializer,c);case 227:return nAe(s.right,c);case 278:return nAe(s.expression,c)}}function Gye(s){return s.escapedText==="push"||s.escapedText==="unshift"}function HL(s){return Rw(s).kind===170}function Rw(s){for(;s.kind===209;)s=s.parent.parent;return s}function Fye(s){let c=s.kind;return c===177||c===219||c===263||c===220||c===175||c===178||c===179||c===268||c===308}function sp(s){return wB(s.pos)||wB(s.end)}var SZe=(s=>(s[s.Left=0]="Left",s[s.Right=1]="Right",s))(SZe||{});function Zye(s){let c=Sqe(s),g=s.kind===215&&s.arguments!==void 0;return Lye(s.kind,c,g)}function Lye(s,c,g){switch(s){case 215:return g?0:1;case 225:case 222:case 223:case 221:case 224:case 228:case 230:return 1;case 227:switch(c){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function x7(s){let c=Sqe(s),g=s.kind===215&&s.arguments!==void 0;return yne(s.kind,c,g)}function Sqe(s){return s.kind===227?s.operatorToken.kind:s.kind===225||s.kind===226?s.operator:s.kind}var vZe=(s=>(s[s.Comma=0]="Comma",s[s.Spread=1]="Spread",s[s.Yield=2]="Yield",s[s.Assignment=3]="Assignment",s[s.Conditional=4]="Conditional",s[s.LogicalOR=5]="LogicalOR",s[s.Coalesce=5]="Coalesce",s[s.LogicalAND=6]="LogicalAND",s[s.BitwiseOR=7]="BitwiseOR",s[s.BitwiseXOR=8]="BitwiseXOR",s[s.BitwiseAND=9]="BitwiseAND",s[s.Equality=10]="Equality",s[s.Relational=11]="Relational",s[s.Shift=12]="Shift",s[s.Additive=13]="Additive",s[s.Multiplicative=14]="Multiplicative",s[s.Exponentiation=15]="Exponentiation",s[s.Unary=16]="Unary",s[s.Update=17]="Update",s[s.LeftHandSide=18]="LeftHandSide",s[s.Member=19]="Member",s[s.Primary=20]="Primary",s[s.Highest=20]="Highest",s[s.Lowest=0]="Lowest",s[s.Invalid=-1]="Invalid",s))(vZe||{});function yne(s,c,g){switch(s){case 357:return 0;case 231:return 1;case 230:return 2;case 228:return 4;case 227:switch(c){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return bne(c)}case 217:case 236:case 225:case 222:case 223:case 221:case 224:return 16;case 226:return 17;case 214:return 18;case 215:return g?19:18;case 216:case 212:case 213:case 237:return 19;case 235:case 239:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 210:case 211:case 219:case 220:case 232:case 14:case 15:case 229:case 218:case 233:case 285:case 286:case 289:return 20;default:return-1}}function bne(s){switch(s){case 61:return 5;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function $J(s){return Me(s,c=>{switch(c.kind){case 295:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function EF(){let s=[],c=[],g=new Map,d=!1;return{add:_,lookup:h,getGlobalDiagnostics:S,getDiagnostics:R};function h(T){let W;if(T.file?W=g.get(T.file.fileName):W=s,!W)return;let V=Wc(W,T,Fl,$Ze);if(V>=0)return W[V];if(~V>0&&vAe(T,W[~V-1]))return W[~V-1]}function _(T){let W;T.file?(W=g.get(T.file.fileName),W||(W=[],g.set(T.file.fileName,W),Gc(c,T.file.fileName,Ca))):(d&&(d=!1,s=s.slice()),W=s),Gc(W,T,$Ze,vAe)}function S(){return d=!0,s}function R(T){if(T)return g.get(T)||[];let W=vt(c,V=>g.get(V));return s.length&&W.unshift(...s),W}}var vqe=/\$\{/g;function Vye(s){return s.replace(vqe,"\\${")}function BZe(s){return!!((s.templateFlags||0)&2048)}function Pye(s){return s&&!!(GP(s)?BZe(s):BZe(s.head)||jt(s.templateSpans,c=>BZe(c.literal)))}var pVt=/[\\"\u0000-\u001f\u2028\u2029\u0085]/g,G7=/[\\'\u0000-\u001f\u2028\u2029\u0085]/g,fVt=/\r\n|[\\`\u0000-\u0009\u000b-\u001f\u2028\u2029\u0085]/g,IVt=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function Bqe(s){return"\\u"+("0000"+s.toString(16).toUpperCase()).slice(-4)}function hVt(s,c,g){if(s.charCodeAt(0)===0){let d=g.charCodeAt(c+s.length);return d>=48&&d<=57?"\\x00":"\\0"}return IVt.get(s)||Bqe(s.charCodeAt(0))}function YT(s,c){let g=c===96?fVt:c===39?G7:pVt;return s.replace(g,hVt)}var wqe=/[^\u0000-\u007F]/g;function Ene(s,c){return s=YT(s,c),wqe.test(s)?s.replace(wqe,g=>Bqe(g.charCodeAt(0))):s}var mVt=/["\u0000-\u001f\u2028\u2029\u0085]/g,CVt=/['\u0000-\u001f\u2028\u2029\u0085]/g,_Vt=new Map(Object.entries({'"':""","'":"'"}));function yVt(s){return"&#x"+s.toString(16).toUpperCase()+";"}function bVt(s){return s.charCodeAt(0)===0?"�":_Vt.get(s)||yVt(s.charCodeAt(0))}function Wye(s,c){let g=c===39?CVt:mVt;return s.replace(g,bVt)}function l2(s){let c=s.length;return c>=2&&s.charCodeAt(0)===s.charCodeAt(c-1)&&EVt(s.charCodeAt(0))?s.substring(1,c-1):s}function EVt(s){return s===39||s===34||s===96}function eU(s){let c=s.charCodeAt(0);return c>=97&&c<=122||s.includes("-")}var Sne=[""," "];function iAe(s){let c=Sne[1];for(let g=Sne.length;g<=s;g++)Sne.push(Sne[g-1]+c);return Sne[s]}function vne(){return Sne[1].length}function Bne(s){var c,g,d,h,_,S=!1;function R(Ie){let _e=cA(Ie);_e.length>1?(h=h+_e.length-1,_=c.length-Ie.length+Ei(_e),d=_-c.length===0):d=!1}function T(Ie){Ie&&Ie.length&&(d&&(Ie=iAe(g)+Ie,d=!1),c+=Ie,R(Ie))}function W(Ie){Ie&&(S=!1),T(Ie)}function V(Ie){Ie&&(S=!0),T(Ie)}function M(){c="",g=0,d=!0,h=0,_=0,S=!1}function ee(Ie){Ie!==void 0&&(c+=Ie,R(Ie),S=!1)}function re(Ie){Ie&&Ie.length&&W(Ie)}function ge(Ie){(!d||Ie)&&(c+=s,h++,_=c.length,d=!0,S=!1)}return M(),{write:W,rawWrite:ee,writeLiteral:re,writeLine:ge,increaseIndent:()=>{g++},decreaseIndent:()=>{g--},getIndent:()=>g,getTextPos:()=>c.length,getLine:()=>h,getColumn:()=>d?g*vne():c.length-_,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>S,hasTrailingWhitespace:()=>!!c.length&&dc(c.charCodeAt(c.length-1)),clear:M,writeKeyword:W,writeOperator:W,writeParameter:W,writeProperty:W,writePunctuation:W,writeSpace:W,writeStringLiteral:W,writeSymbol:(Ie,_e)=>W(Ie),writeTrailingSemicolon:W,writeComment:V}}function Oye(s){let c=!1;function g(){c&&(s.writeTrailingSemicolon(";"),c=!1)}return{...s,writeTrailingSemicolon(){c=!0},writeLiteral(d){g(),s.writeLiteral(d)},writeStringLiteral(d){g(),s.writeStringLiteral(d)},writeSymbol(d,h){g(),s.writeSymbol(d,h)},writePunctuation(d){g(),s.writePunctuation(d)},writeKeyword(d){g(),s.writeKeyword(d)},writeOperator(d){g(),s.writeOperator(d)},writeParameter(d){g(),s.writeParameter(d)},writeSpace(d){g(),s.writeSpace(d)},writeProperty(d){g(),s.writeProperty(d)},writeComment(d){g(),s.writeComment(d)},writeLine(){g(),s.writeLine()},increaseIndent(){g(),s.increaseIndent()},decreaseIndent(){g(),s.decreaseIndent()}}}function y3(s){return s.useCaseSensitiveFileNames?s.useCaseSensitiveFileNames():!1}function JD(s){return _d(y3(s))}function F7(s,c,g){return c.moduleName||Mye(s,c.fileName,g&&g.fileName)}function Tqe(s,c){return s.getCanonicalFileName(Xc(c,s.getCurrentDirectory()))}function wZe(s,c,g){let d=c.getExternalModuleFileFromDeclaration(g);if(!d||d.isDeclarationFile)return;let h=LY(g);if(!(h&&mA(h)&&!Ip(h.text)&&!Tqe(s,d.path).includes(Tqe(s,hp(s.getCommonSourceDirectory())))))return F7(s,d)}function Mye(s,c,g){let d=T=>s.getCanonicalFileName(T),h=Ou(g?Mo(g):s.getCommonSourceDirectory(),s.getCurrentDirectory(),d),_=Xc(c,s.getCurrentDirectory()),S=Of(h,_,h,d,!1),R=s0(S);return g?Am(R):R}function TZe(s,c,g){let d=c.getCompilerOptions(),h;return d.outDir?h=s0(cAe(s,c,d.outDir)):h=s0(s),h+g}function RZe(s,c){return wne(s,c.getCompilerOptions(),c)}function wne(s,c,g){let d=c.declarationDir||c.outDir,h=d?NZe(s,d,g.getCurrentDirectory(),g.getCommonSourceDirectory(),S=>g.getCanonicalFileName(S)):s,_=sAe(h);return s0(h)+_}function sAe(s){return fu(s,[".mjs",".mts"])?".d.mts":fu(s,[".cjs",".cts"])?".d.cts":fu(s,[".json"])?".d.json.ts":".d.ts"}function Hye(s){return fu(s,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:fu(s,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:fu(s,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Yye(s,c,g,d){return g?AE(d(),mp(g,s,c)):s}function oAe(s,c){var g;if(s.paths)return s.baseUrl??pe.checkDefined(s.pathsBasePath||((g=c.getCurrentDirectory)==null?void 0:g.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function aAe(s,c,g){let d=s.getCompilerOptions();if(d.outFile){let h=i0(d),_=d.emitDeclarationOnly||h===2||h===4;return Me(s.getSourceFiles(),S=>(_||!xm(S))&&SP(S,s,g))}else{let h=c===void 0?s.getSourceFiles():[c];return Me(h,_=>SP(_,s,g))}}function SP(s,c,g){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&n0(s)||s.isDeclarationFile||c.isSourceFileFromExternalLibrary(s))return!1;if(g)return!0;if(c.isSourceOfProjectReferenceRedirect(s.fileName))return!1;if(!Zu(s))return!0;if(c.getRedirectFromSourceFile(s.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let h=Xc(xde(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),_=NZe(s.fileName,d.outDir,c.getCurrentDirectory(),h,c.getCanonicalFileName);if(qf(s.fileName,_,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function cAe(s,c,g){return NZe(s,g,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function NZe(s,c,g,d,h){let _=Xc(s,g);return _=h(_).indexOf(h(d))===0?_.substring(d.length):_,Ro(c,_)}function lAe(s,c,g,d,h,_,S){s.writeFile(g,d,h,R=>{c.add(Nf(Z.Could_not_write_file_0_Colon_1,g,R))},_,S)}function Rqe(s,c,g){if(s.length>Wf(s)&&!g(s)){let d=Mo(s);Rqe(d,c,g),c(s)}}function Qye(s,c,g,d,h,_){try{d(s,c,g)}catch{Rqe(Mo(iu(s)),h,_),d(s,c,g)}}function Z7(s,c){let g=rn(s);return Po(g,c)}function tU(s,c){return Po(s,c)}function lN(s){return de(s.members,c=>Tc(c)&&u1(c.body))}function L7(s){if(s&&s.parameters.length>0){let c=s.parameters.length===2&&SF(s.parameters[0]);return s.parameters[c?1:0]}}function DZe(s){let c=L7(s);return c&&c.type}function vP(s){if(s.parameters.length&&!qL(s)){let c=s.parameters[0];if(SF(c))return c}}function SF(s){return vF(s.name)}function vF(s){return!!s&&s.kind===80&&Xye(s)}function OY(s){return!!ji(s,c=>c.kind===187?!0:c.kind===80||c.kind===167?!1:"quit")}function YL(s){if(!vF(s))return!1;for(;zi(s.parent)&&s.parent.left===s;)s=s.parent;return s.parent.kind===187}function Xye(s){return s.escapedText==="this"}function BP(s,c){let g,d,h,_;return XD(c)?(g=c,c.kind===178?h=c:c.kind===179?_=c:pe.fail("Accessor has wrong kind")):F(s,S=>{if(yB(S)&&cg(S)===cg(c)){let R=_3(S.name),T=_3(c.name);R===T&&(g?d||(d=S):g=S,S.kind===178&&!h&&(h=S),S.kind===179&&!_&&(_=S))}}),{firstAccessor:g,secondAccessor:d,getAccessor:h,setAccessor:_}}function kh(s){if(!wo(s)&&ih(s)||FB(s))return;let c=s.type;return c||!wo(s)?c:dY(s)?s.typeExpression&&s.typeExpression.type:eN(s)}function kZe(s){return s.type}function xb(s){return qL(s)?s.type&&s.type.typeExpression&&s.type.typeExpression.type:s.type||(wo(s)?AJ(s):void 0)}function uAe(s){return er(Sx(s),c=>Nqe(c)?c.typeParameters:void 0)}function Nqe(s){return ZB(s)&&!(s.parent.kind===321&&(s.parent.tags.some(iS)||s.parent.tags.some(mie)))}function Jye(s){let c=L7(s);return c&&kh(c)}function SVt(s,c,g,d){vVt(s,c,g.pos,d)}function vVt(s,c,g,d){d&&d.length&&g!==d[0].pos&&tU(s,g)!==tU(s,d[0].pos)&&c.writeLine()}function Uye(s,c,g,d){g!==d&&tU(s,g)!==tU(s,d)&&c.writeLine()}function BVt(s,c,g,d,h,_,S,R){if(d&&d.length>0){h&&g.writeSpace(" ");let T=!1;for(let W of d)T&&(g.writeSpace(" "),T=!1),R(s,c,g,W.pos,W.end,S),W.hasTrailingNewLine?g.writeLine():T=!0;T&&_&&g.writeSpace(" ")}}function xZe(s,c,g,d,h,_,S){let R,T;if(S?h.pos===0&&(R=Me(fE(s,h.pos),W)):R=fE(s,h.pos),R){let V=[],M;for(let ee of R){if(M){let re=tU(c,M.end);if(tU(c,ee.pos)>=re+2)break}V.push(ee),M=ee}if(V.length){let ee=tU(c,Ei(V).end);tU(c,Yu(s,h.pos))>=ee+2&&(SVt(c,g,h,R),BVt(s,c,g,V,!1,!0,_,d),T={nodePos:h.pos,detachedCommentEndPos:Ei(V).end})}}return T;function W(V){return g7(s,V.pos)}}function rU(s,c,g,d,h,_){if(s.charCodeAt(d+1)===42){let S=Ci(c,d),R=c.length,T;for(let W=d,V=S.line;W0){let ge=re%vne(),Ie=iAe((re-ge)/vne());for(g.rawWrite(Ie);ge;)g.rawWrite(" "),ge--}else g.rawWrite("")}wVt(s,h,g,_,W,M),W=M}}else g.writeComment(s.substring(d,h))}function wVt(s,c,g,d,h,_){let S=Math.min(c,_-1),R=s.substring(h,S).trim();R?(g.writeComment(R),S!==c&&g.writeLine()):g.rawWrite(d)}function GZe(s,c,g){let d=0;for(;c=0&&s.kind<=166?0:(s.modifierFlagsCache&536870912||(s.modifierFlagsCache=qye(s)|536870912),g||c&&wo(s)?(!(s.modifierFlagsCache&268435456)&&s.parent&&(s.modifierFlagsCache|=Dqe(s)|268435456),kqe(s.modifierFlagsCache)):TVt(s.modifierFlagsCache))}function o_(s){return LZe(s,!0)}function VZe(s){return LZe(s,!0,!0)}function Nx(s){return LZe(s,!1)}function Dqe(s){let c=0;return s.parent&&!Si(s)&&(wo(s)&&(Ex(s)&&(c|=8388608),Aa(s)&&(c|=16777216),Ua(s)&&(c|=33554432),hA(s)&&(c|=67108864),Pd(s)&&(c|=134217728)),i2(s)&&(c|=65536)),c}function TVt(s){return s&65535}function kqe(s){return s&131071|(s&260046848)>>>23}function PZe(s){return kqe(Dqe(s))}function zye(s){return qye(s)|PZe(s)}function qye(s){let c=LB(s)?Dw(s.modifiers):0;return(s.flags&8||s.kind===80&&s.flags&4096)&&(c|=32),c}function Dw(s){let c=0;if(s)for(let g of s)c|=HY(g.kind);return c}function HY(s){switch(s){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 171:return 32768}return 0}function Rne(s){return s===57||s===56}function WZe(s){return Rne(s)||s===54}function V7(s){return s===76||s===77||s===78}function gAe(s){return fo(s)&&V7(s.operatorToken.kind)}function AAe(s){return Rne(s)||s===61}function Nne(s){return fo(s)&&AAe(s.operatorToken.kind)}function UD(s){return s>=64&&s<=79}function $ye(s){let c=ebe(s);return c&&!c.isImplements?c.class:void 0}function ebe(s){if(l_(s)){if(h1(s.parent)&&xa(s.parent.parent))return{class:s.parent.parent,isImplements:s.parent.token===119};if(bz(s.parent)){let c=WL(s.parent);if(c&&xa(c))return{class:c,isImplements:!1}}}}function Jm(s,c){return fo(s)&&(c?s.operatorToken.kind===64:UD(s.operatorToken.kind))&&D_(s.left)}function Dx(s){if(Jm(s,!0)){let c=s.left.kind;return c===211||c===210}return!1}function dAe(s){return $ye(s)!==void 0}function Od(s){return s.kind===80||BF(s)}function B0(s){switch(s.kind){case 80:return s;case 167:do s=s.left;while(s.kind!==80);return s;case 212:do s=s.expression;while(s.kind!==80);return s}}function Dne(s){return s.kind===80||s.kind===110||s.kind===108||s.kind===237||s.kind===212&&Dne(s.expression)||s.kind===218&&Dne(s.expression)}function BF(s){return jo(s)&&Ir(s.name)&&Od(s.expression)}function TP(s){if(jo(s)){let c=TP(s.expression);if(c!==void 0)return c+"."+oy(s.name)}else if(Yg(s)){let c=TP(s.expression);if(c!==void 0&&VI(s.argumentExpression))return c+"."+_3(s.argumentExpression)}else{if(Ir(s))return Bc(s.escapedText);if(eR(s))return lz(s)}}function wF(s){return yP(s)&&YD(s)==="prototype"}function P7(s){return s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s||s.parent.kind===237&&s.parent.name===s}function tbe(s){return!!s.parent&&(jo(s.parent)&&s.parent.name===s||Yg(s.parent)&&s.parent.argumentExpression===s)}function OZe(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s||O3(s.parent)&&s.parent.right===s}function pAe(s){return fo(s)&&s.operatorToken.kind===104}function MZe(s){return pAe(s.parent)&&s===s.parent.right}function rbe(s){return s.kind===211&&s.properties.length===0}function HZe(s){return s.kind===210&&s.elements.length===0}function W7(s){if(!(!RVt(s)||!s.declarations)){for(let c of s.declarations)if(c.localSymbol)return c.localSymbol}}function RVt(s){return s&&B(s.declarations)>0&&Ga(s.declarations[0],2048)}function O7(s){return de(gLe,c=>aA(s,c))}function NVt(s){let c=[],g=s.length;for(let d=0;d>6|192),c.push(h&63|128)):h<65536?(c.push(h>>12|224),c.push(h>>6&63|128),c.push(h&63|128)):h<131072?(c.push(h>>18|240),c.push(h>>12&63|128),c.push(h>>6&63|128),c.push(h&63|128)):pe.assert(!1,"Unexpected code point")}return c}var RP="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function nbe(s){let c="",g=NVt(s),d=0,h=g.length,_,S,R,T;for(;d>2,S=(g[d]&3)<<4|g[d+1]>>4,R=(g[d+1]&15)<<2|g[d+2]>>6,T=g[d+2]&63,d+1>=h?R=T=64:d+2>=h&&(T=64),c+=RP.charAt(_)+RP.charAt(S)+RP.charAt(R)+RP.charAt(T),d+=3;return c}function DVt(s){let c="",g=0,d=s.length;for(;g>4&3,V=(S&15)<<4|R>>2&15,M=(R&3)<<6|T&63;V===0&&R!==0?d.push(W):M===0&&T!==0?d.push(W,V):d.push(W,V,M),h+=4}return DVt(d)}function sbe(s,c){let g=Xs(c)?c:c.readFile(s);if(!g)return;let d=nU(g);if(d===void 0){let h=J$e(s,g);h.error||(d=h.config)}return d}function E3(s,c){return sbe(s,c)||{}}function nU(s){try{return JSON.parse(s)}catch{return}}function f1(s,c){return!c.directoryExists||c.directoryExists(s)}var fAe=`\r -`,kVt=` -`;function uN(s){switch(s.newLine){case 0:return fAe;case 1:case void 0:return kVt}}function Gy(s,c=s){return pe.assert(c>=s||c===-1),{pos:s,end:c}}function IAe(s,c){return Gy(s.pos,c)}function KD(s,c){return Gy(c,s.end)}function jD(s){let c=LB(s)?be(s.modifiers,So):void 0;return c&&!wB(c.end)?KD(s,c.end):s}function Av(s){if(pi(s)||uu(s))return KD(s,s.name.pos);let c=LB(s)?li(s.modifiers):void 0;return c&&!wB(c.end)?KD(s,c.end):jD(s)}function QL(s,c){return Gy(s,s+Vi(c).length)}function S3(s,c){return XZe(s,s,c)}function M7(s,c,g){return yE(H7(s,g,!1),H7(c,g,!1),g)}function QZe(s,c,g){return yE(s.end,c.end,g)}function XZe(s,c,g){return yE(H7(s,g,!1),c.end,g)}function kne(s,c,g){return yE(s.end,H7(c,g,!1),g)}function v3(s,c,g,d){let h=H7(c,g,d);return ec(g,s.end,h)}function JZe(s,c,g){return ec(g,s.end,c.end)}function hAe(s,c){return!yE(s.pos,s.end,c)}function yE(s,c,g){return ec(g,s,c)===0}function H7(s,c,g){return wB(s.pos)?-1:Yu(c.text,s.pos,!1,g)}function UZe(s,c,g,d){let h=Yu(g.text,s,!1,d),_=xqe(h,c,g);return ec(g,_??c,h)}function obe(s,c,g,d){let h=Yu(g.text,s,!1,d);return ec(g,s,Math.min(c,h))}function cy(s,c){return mAe(s.pos,s.end,c)}function mAe(s,c,g){return s<=g.pos&&c>=g.end}function xqe(s,c=0,g){for(;s-- >c;)if(!dc(g.text.charCodeAt(s)))return s}function abe(s){let c=$l(s);if(c)switch(c.parent.kind){case 267:case 268:return c===c.parent.name}return!1}function iU(s){return Me(s.declarations,xne)}function xne(s){return nc(s)&&s.initializer!==void 0}function cbe(s){return s.watch&&Da(s,"watch")}function dv(s){s.close()}function iI(s){return s.flags&33554432?s.links.checkFlags:0}function u2(s,c=!1){if(s.valueDeclaration){let g=c&&s.declarations&&de(s.declarations,Dg)||s.flags&32768&&de(s.declarations,Bg)||s.valueDeclaration,d=Hc(g);return s.parent&&s.parent.flags&32?d:d&-8}if(iI(s)&6){let g=s.links.checkFlags,d=g&1024?2:g&256?1:4,h=g&2048?256:0;return d|h}return s.flags&4194304?257:0}function FC(s,c){return s.flags&2097152?c.getAliasedSymbol(s):s}function sU(s){return s.exportSymbol?s.exportSymbol.flags|s.flags:s.flags}function CAe(s){return Y7(s)===1}function B3(s){return Y7(s)!==0}function Y7(s){let{parent:c}=s;switch(c?.kind){case 218:return Y7(c);case 226:case 225:let{operator:g}=c;return g===46||g===47?2:0;case 227:let{left:d,operatorToken:h}=c;return d===s&&UD(h.kind)?h.kind===64?1:2:0;case 212:return c.name!==s?0:Y7(c);case 304:{let _=Y7(c.parent);return s===c.name?xVt(_):_}case 305:return s===c.objectAssignmentInitializer?0:Y7(c.parent);case 210:return Y7(c);case 250:case 251:return s===c.initializer?1:0;default:return 0}}function xVt(s){switch(s){case 0:return 1;case 1:return 0;case 2:return 2;default:return pe.assertNever(s)}}function _Ae(s,c){if(!s||!c||Object.keys(s).length!==Object.keys(c).length)return!1;for(let g in s)if(typeof s[g]=="object"){if(!_Ae(s[g],c[g]))return!1}else if(typeof s[g]!="function"&&s[g]!==c[g])return!1;return!0}function Fy(s,c){s.forEach(c),s.clear()}function gN(s,c,g){let{onDeleteValue:d,onExistingValue:h}=g;s.forEach((_,S)=>{var R;c?.has(S)?h&&h(_,(R=c.get)==null?void 0:R.call(c,S),S):(s.delete(S),d(_,S))})}function Q7(s,c,g){gN(s,c,g);let{createNewValue:d}=g;c?.forEach((h,_)=>{s.has(_)||s.set(_,d(_,h))})}function lbe(s){if(s.flags&32){let c=AN(s);return!!c&&Ga(c,64)}return!1}function AN(s){var c;return(c=s.declarations)==null?void 0:c.find(xa)}function la(s){return s.flags&3899393?s.objectFlags:0}function yAe(s){return!!s&&!!s.declarations&&!!s.declarations[0]&&sEe(s.declarations[0])}function KZe({moduleSpecifier:s}){return Zg(s)?s.text:xp(s)}function ube(s){let c;return Lu(s,g=>{u1(g)&&(c=g)},g=>{for(let d=g.length-1;d>=0;d--)if(u1(g[d])){c=g[d];break}}),c}function Zy(s,c){return s.has(c)?!1:(s.add(c),!0)}function YY(s){return xa(s)||g_(s)||mh(s)}function bAe(s){return s>=183&&s<=206||s===133||s===159||s===150||s===163||s===151||s===136||s===154||s===155||s===116||s===157||s===146||s===141||s===234||s===313||s===314||s===315||s===316||s===317||s===318||s===319}function _p(s){return s.kind===212||s.kind===213}function gbe(s){return s.kind===212?s.name:(pe.assert(s.kind===213),s.argumentExpression)}function Gne(s){return s.kind===276||s.kind===280}function oU(s){for(;_p(s);)s=s.expression;return s}function jZe(s,c){if(_p(s.parent)&&tbe(s))return g(s.parent);function g(d){if(d.kind===212){let h=c(d.name);if(h!==void 0)return h}else if(d.kind===213)if(Ir(d.argumentExpression)||mA(d.argumentExpression)){let h=c(d.argumentExpression);if(h!==void 0)return h}else return;if(_p(d.expression))return g(d.expression);if(Ir(d.expression))return c(d.expression)}}function aU(s,c){for(;;){switch(s.kind){case 226:s=s.operand;continue;case 227:s=s.left;continue;case 228:s=s.condition;continue;case 216:s=s.tag;continue;case 214:if(c)return s;case 235:case 213:case 212:case 236:case 356:case 239:s=s.expression;continue}return s}}function GVt(s,c){this.flags=s,this.escapedName=c,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function FVt(s,c){this.flags=c,(pe.isDebugging||ki)&&(this.checker=s)}function ZVt(s,c){this.flags=c,pe.isDebugging&&(this.checker=s)}function Abe(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function LVt(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function Gqe(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function VVt(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}var ZC={getNodeConstructor:()=>Abe,getTokenConstructor:()=>LVt,getIdentifierConstructor:()=>Gqe,getPrivateIdentifierConstructor:()=>Abe,getSourceFileConstructor:()=>Abe,getSymbolConstructor:()=>GVt,getTypeConstructor:()=>FVt,getSignatureConstructor:()=>ZVt,getSourceMapSourceConstructor:()=>VVt},Fqe=[];function Zqe(s){Fqe.push(s),s(ZC)}function zZe(s){Object.assign(ZC,s),F(Fqe,c=>c(ZC))}function dN(s,c){return s.replace(/\{(\d+)\}/g,(g,d)=>""+pe.checkDefined(c[+d]))}var EAe;function cU(s){EAe=s}function qZe(s){!EAe&&s&&(EAe=s())}function Bu(s){return EAe&&EAe[s.key]||s.message}function QY(s,c,g,d,h,..._){g+d>c.length&&(d=c.length-g),he(c,g,d);let S=Bu(h);return jt(_)&&(S=dN(S,_)),{file:void 0,start:g,length:d,messageText:S,category:h.category,code:h.code,reportsUnnecessary:h.reportsUnnecessary,fileName:s}}function PVt(s){return s.file===void 0&&s.start!==void 0&&s.length!==void 0&&typeof s.fileName=="string"}function Lqe(s,c){let g=c.fileName||"",d=c.text.length;pe.assertEqual(s.fileName,g),pe.assertLessThanOrEqual(s.start,d),pe.assertLessThanOrEqual(s.start+s.length,d);let h={file:c,start:s.start,length:s.length,messageText:s.messageText,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary};if(s.relatedInformation){h.relatedInformation=[];for(let _ of s.relatedInformation)PVt(_)&&_.fileName===g?(pe.assertLessThanOrEqual(_.start,d),pe.assertLessThanOrEqual(_.start+_.length,d),h.relatedInformation.push(Lqe(_,c))):h.relatedInformation.push(_)}return h}function XL(s,c){let g=[];for(let d of s)g.push(Lqe(d,c));return g}function qh(s,c,g,d,...h){he(s.text,c,g);let _=Bu(d);return jt(h)&&(_=dN(_,h)),{file:s,start:c,length:g,messageText:_,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function XY(s,...c){let g=Bu(s);return jt(c)&&(g=dN(g,c)),g}function Nf(s,...c){let g=Bu(s);return jt(c)&&(g=dN(g,c)),{file:void 0,start:void 0,length:void 0,messageText:g,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function SAe(s,c){return{file:void 0,start:void 0,length:void 0,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:c}}function wu(s,c,...g){let d=Bu(c);return jt(g)&&(d=dN(d,g)),{messageText:d,category:c.category,code:c.code,next:s===void 0||Array.isArray(s)?s:[s]}}function Fne(s,c){let g=s;for(;g.next;)g=g.next[0];g.next=[c]}function dbe(s){return s.file?s.file.path:void 0}function X7(s,c){return $Ze(s,c)||WVt(s,c)||0}function $Ze(s,c){let g=pbe(s),d=pbe(c);return Ca(dbe(s),dbe(c))||Zt(s.start,c.start)||Zt(s.length,c.length)||Zt(g,d)||OVt(s,c)||0}function WVt(s,c){return!s.relatedInformation&&!c.relatedInformation?0:s.relatedInformation&&c.relatedInformation?Zt(c.relatedInformation.length,s.relatedInformation.length)||F(s.relatedInformation,(g,d)=>{let h=c.relatedInformation[d];return X7(g,h)})||0:s.relatedInformation?-1:1}function OVt(s,c){let g=fbe(s),d=fbe(c);typeof g!="string"&&(g=g.messageText),typeof d!="string"&&(d=d.messageText);let h=typeof s.messageText!="string"?s.messageText.next:void 0,_=typeof c.messageText!="string"?c.messageText.next:void 0,S=Ca(g,d);return S||(S=MVt(h,_),S)?S:s.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!s.canonicalHead?1:0}function MVt(s,c){return s===void 0&&c===void 0?0:s===void 0?1:c===void 0?-1:Vqe(s,c)||Pqe(s,c)}function Vqe(s,c){if(s===void 0&&c===void 0)return 0;if(s===void 0)return 1;if(c===void 0)return-1;let g=Zt(c.length,s.length);if(g)return g;for(let d=0;d{h.externalModuleIndicator=IEe(h)||!h.isDeclarationFile||void 0};case 1:return h=>{h.externalModuleIndicator=IEe(h)};case 2:let c=[IEe];(s.jsx===4||s.jsx===5)&&c.push(YVt),c.push(QVt);let g=Hp(...c);return h=>void(h.externalModuleIndicator=g(h,s))}}function Ibe(s){let c=k_(s);return 3<=c&&c<=99||U7(s)||Vne(s)}function Jqr(s){return s}var LC={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:s=>!!(s.allowImportingTsExtensions||s.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:s=>(s.target===0?void 0:s.target)??(s.module===100&&9||s.module===101&&9||s.module===102&&10||s.module===199&&99||1)},module:{dependencies:["target"],computeValue:s=>typeof s.module=="number"?s.module:LC.target.computeValue(s)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:s=>{let c=s.moduleResolution;if(c===void 0)switch(LC.module.computeValue(s)){case 1:c=2;break;case 100:case 101:case 102:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:s=>{if(s.moduleDetection!==void 0)return s.moduleDetection;let c=LC.module.computeValue(s);return 100<=c&&c<=199?3:2}},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:s=>!!(s.isolatedModules||s.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:s=>{if(s.esModuleInterop!==void 0)return s.esModuleInterop;switch(LC.module.computeValue(s)){case 100:case 101:case 102:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:s=>s.allowSyntheticDefaultImports!==void 0?s.allowSyntheticDefaultImports:LC.esModuleInterop.computeValue(s)||LC.module.computeValue(s)===4||LC.moduleResolution.computeValue(s)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:s=>{let c=LC.moduleResolution.computeValue(s);if(!lU(c))return!1;if(s.resolvePackageJsonExports!==void 0)return s.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:s=>{let c=LC.moduleResolution.computeValue(s);if(!lU(c))return!1;if(s.resolvePackageJsonImports!==void 0)return s.resolvePackageJsonImports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:s=>{if(s.resolveJsonModule!==void 0)return s.resolveJsonModule;switch(LC.module.computeValue(s)){case 102:case 199:return!0}return LC.moduleResolution.computeValue(s)===100}},declaration:{dependencies:["composite"],computeValue:s=>!!(s.declaration||s.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:s=>!!(s.preserveConstEnums||LC.isolatedModules.computeValue(s))},incremental:{dependencies:["composite"],computeValue:s=>!!(s.incremental||s.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:s=>!!(s.declarationMap&&LC.declaration.computeValue(s))},allowJs:{dependencies:["checkJs"],computeValue:s=>s.allowJs===void 0?!!s.checkJs:s.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:s=>s.useDefineForClassFields===void 0?LC.target.computeValue(s)>=9:s.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:s=>a_(s,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:s=>a_(s,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:s=>a_(s,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:s=>a_(s,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:s=>a_(s,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:s=>a_(s,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:s=>a_(s,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:s=>a_(s,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:s=>a_(s,"useUnknownInCatchVariables")}},J7=LC,eLe=LC.allowImportingTsExtensions.computeValue,Mg=LC.target.computeValue,i0=LC.module.computeValue,k_=LC.moduleResolution.computeValue,tLe=LC.moduleDetection.computeValue,sS=LC.isolatedModules.computeValue,kw=LC.esModuleInterop.computeValue,JY=LC.allowSyntheticDefaultImports.computeValue,U7=LC.resolvePackageJsonExports.computeValue,Vne=LC.resolvePackageJsonImports.computeValue,NP=LC.resolveJsonModule.computeValue,Ly=LC.declaration.computeValue,Fb=LC.preserveConstEnums.computeValue,DP=LC.incremental.computeValue,BAe=LC.declarationMap.computeValue,TF=LC.allowJs.computeValue,Pne=LC.useDefineForClassFields.computeValue;function Wne(s){return s>=5&&s<=99}function wAe(s){switch(i0(s)){case 0:case 4:case 3:return!1}return!0}function rLe(s){return s.allowUnreachableCode===!1}function nLe(s){return s.allowUnusedLabels===!1}function lU(s){return s>=3&&s<=99||s===100}function iLe(s){return 101<=s&&s<=199||s===200||s===99}function a_(s,c){return s[c]===void 0?!!s.strict:!!s[c]}function TAe(s){return Dh(O$e.type,(c,g)=>c===s?g:void 0)}function hbe(s){return s.useDefineForClassFields!==!1&&Mg(s)>=9}function mbe(s,c){return S0(c,s,CWt)}function sLe(s,c){return S0(c,s,_Wt)}function oLe(s,c){return S0(c,s,yWt)}function K7(s,c){return c.strictFlag?a_(s,c.name):c.allowJsFlag?TF(s):s[c.name]}function RAe(s){let c=s.jsx;return c===2||c===4||c===5}function One(s,c){let g=c?.pragmas.get("jsximportsource"),d=Ki(g)?g[g.length-1]:g,h=c?.pragmas.get("jsxruntime"),_=Ki(h)?h[h.length-1]:h;if(_?.arguments.factory!=="classic")return s.jsx===4||s.jsx===5||s.jsxImportSource||d||_?.arguments.factory==="automatic"?d?.arguments.factory||s.jsxImportSource||"react":void 0}function Mne(s,c){return s?`${s}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function Cbe(s){let c=!1;for(let g=0;gh,getSymlinkedDirectories:()=>g,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(T,W)=>(h||(h=new Map)).set(T,W),setSymlinkedDirectory:(T,W)=>{let V=Ou(T,s,c);sz(V)||(V=hp(V),W!==!1&&!g?.has(V)&&(d||(d=dl())).add(W.realPath,T),(g||(g=new Map)).set(V,W))},setSymlinksFromResolutions(T,W,V){pe.assert(!_),_=!0,T(M=>R(this,M.resolvedModule)),W(M=>R(this,M.resolvedTypeReferenceDirective)),V.forEach(M=>R(this,M.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>_,setSymlinksFromResolution(T){R(this,T)},hasAnySymlinks:S};function S(){return!!h?.size||!!g&&!!Dh(g,T=>!!T)}function R(T,W){if(!W||!W.originalPath||!W.resolvedFileName)return;let{resolvedFileName:V,originalPath:M}=W;T.setSymlinkedFile(Ou(M,s,c),V);let[ee,re]=XVt(V,M,s,c)||E;ee&&re&&T.setSymlinkedDirectory(re,{real:hp(ee),realPath:hp(Ou(ee,s,c))})}}function XVt(s,c,g,d){let h=Np(Xc(s,g)),_=Np(Xc(c,g)),S=!1;for(;h.length>=2&&_.length>=2&&!Oqe(h[h.length-2],d)&&!Oqe(_[_.length-2],d)&&d(h[h.length-1])===d(_[_.length-1]);)h.pop(),_.pop(),S=!0;return S?[Dm(h),Dm(_)]:void 0}function Oqe(s,c){return s!==void 0&&(c(s)==="node_modules"||Ac(s,"@"))}function JVt(s){return e0(s.charCodeAt(0))?s.slice(1):void 0}function NAe(s,c,g){let d=HS(s,c,g);return d===void 0?void 0:JVt(d)}var aLe=/[^\w\s/]/g;function Mqe(s){return s.replace(aLe,UVt)}function UVt(s){return"\\"+s}var KVt=[42,63],jVt=["node_modules","bower_components","jspm_packages"],cLe=`(?!(?:${jVt.join("|")})(?:/|$))`,Hqe={singleAsteriskRegexFragment:"(?:[^./]|(?:\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(?:/${cLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>uLe(s,Hqe.singleAsteriskRegexFragment)},Yqe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(?:/${cLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>uLe(s,Yqe.singleAsteriskRegexFragment)},ybe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(?:/.+?)?",replaceWildcardCharacter:s=>uLe(s,ybe.singleAsteriskRegexFragment)},lLe={files:Hqe,directories:Yqe,exclude:ybe};function j7(s,c,g){let d=Hne(s,c,g);return!d||!d.length?void 0:`^(?:${d.map(S=>`(?:${S})`).join("|")})${g==="exclude"?"(?:$|/)":"$"}`}function Hne(s,c,g){if(!(s===void 0||s.length===0))return er(s,d=>d&&DAe(d,c,g,lLe[g]))}function bbe(s){return!/[.*?]/.test(s)}function Ebe(s,c,g){let d=s&&DAe(s,c,g,lLe[g]);return d&&`^(?:${d})${g==="exclude"?"(?:$|/)":"$"}`}function DAe(s,c,g,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:h,replaceWildcardCharacter:_}=lLe[g]){let S="",R=!1,T=AB(s,c),W=Ei(T);if(g!=="exclude"&&W==="**")return;T[0]=ny(T[0]),bbe(W)&&T.push("**","*");let V=0;for(let M of T){if(M==="**")S+=h;else if(g==="directories"&&(S+="(?:",V++),R&&(S+=ag),g!=="exclude"){let ee="";M.charCodeAt(0)===42?(ee+="(?:[^./]"+d+")?",M=M.substr(1)):M.charCodeAt(0)===63&&(ee+="[^./]",M=M.substr(1)),ee+=M.replace(aLe,_),ee!==M&&(S+=cLe),S+=ee}else S+=M.replace(aLe,_);R=!0}for(;V>0;)S+=")?",V--;return S}function uLe(s,c){return s==="*"?c:s==="?"?"[^/]":"\\"+s}function kAe(s,c,g,d,h){s=iu(s),h=iu(h);let _=Ro(h,s);return{includeFilePatterns:At(Hne(g,_,"files"),S=>`^${S}$`),includeFilePattern:j7(g,_,"files"),includeDirectoryPattern:j7(g,_,"directories"),excludePattern:j7(c,_,"exclude"),basePaths:zVt(s,g,d)}}function zD(s,c){return new RegExp(s,c?"":"i")}function Sbe(s,c,g,d,h,_,S,R,T){s=iu(s),_=iu(_);let W=kAe(s,g,d,h,_),V=W.includeFilePatterns&&W.includeFilePatterns.map(Ee=>zD(Ee,h)),M=W.includeDirectoryPattern&&zD(W.includeDirectoryPattern,h),ee=W.excludePattern&&zD(W.excludePattern,h),re=V?V.map(()=>[]):[[]],ge=new Map,Ie=_d(h);for(let Ee of W.basePaths)_e(Ee,Ro(_,Ee),S);return Nr(re);function _e(Ee,Ne,Te){let Ze=Ie(T(Ne));if(ge.has(Ze))return;ge.set(Ze,!0);let{files:We,directories:Ue}=R(Ee);for(let $e of bo(We,Ca)){let Ye=Ro(Ee,$e),Tt=Ro(Ne,$e);if(!(c&&!fu(Ye,c))&&!(ee&&ee.test(Tt)))if(!V)re[0].push(Ye);else{let ot=Se(V,Qe=>Qe.test(Tt));ot!==-1&&re[ot].push(Ye)}}if(!(Te!==void 0&&(Te--,Te===0)))for(let $e of bo(Ue,Ca)){let Ye=Ro(Ee,$e),Tt=Ro(Ne,$e);(!M||M.test(Tt))&&(!ee||!ee.test(Tt))&&_e(Ye,Tt,Te)}}}function zVt(s,c,g){let d=[s];if(c){let h=[];for(let _ of c){let S=Xp(_)?_:iu(Ro(s,_));h.push(qVt(S))}h.sort(ld(!g));for(let _ of h)ue(d,S=>!Jh(S,_,s,!g))&&d.push(_)}return d}function qVt(s){let c=et(s,KVt);return c<0?E0(s)?ny(Mo(s)):s:s.substring(0,s.lastIndexOf(ag,c))}function xAe(s,c){return c||GAe(s)||3}function GAe(s){switch(s.substr(s.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var FAe=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],vbe=Nr(FAe),$Vt=[...FAe,[".json"]],gLe=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],ePt=[[".js",".jsx"],[".mjs"],[".cjs"]],uU=Nr(ePt),ZAe=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],tPt=[...ZAe,[".json"]],LAe=[".d.ts",".d.cts",".d.mts"],Yne=[".ts",".cts",".mts",".tsx"],VAe=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function z7(s,c){let g=s&&TF(s);if(!c||c.length===0)return g?ZAe:FAe;let d=g?ZAe:FAe,h=Nr(d);return[...d,...Xt(c,S=>S.scriptKind===7||g&&rPt(S.scriptKind)&&!h.includes(S.extension)?[S.extension]:void 0)]}function q7(s,c){return!s||!NP(s)?c:c===ZAe?tPt:c===FAe?$Vt:[...c,[".json"]]}function rPt(s){return s===1||s===2}function pN(s){return jt(uU,c=>aA(s,c))}function w3(s){return jt(vbe,c=>aA(s,c))}function ALe(s){return jt(Yne,c=>aA(s,c))&&!PC(s)}var dLe=(s=>(s[s.Minimal=0]="Minimal",s[s.Index=1]="Index",s[s.JsExtension=2]="JsExtension",s[s.TsExtension=3]="TsExtension",s))(dLe||{});function nPt({imports:s},c=Hp(pN,w3)){return X(s,({text:g})=>Ip(g)&&!fu(g,VAe)?c(g):void 0)||!1}function pLe(s,c,g,d){let h=k_(g),_=3<=h&&h<=99;if(s==="js"||c===99&&_)return Die(g)&&S()!==2?3:2;if(s==="minimal")return 0;if(s==="index")return 1;if(!Die(g))return d&&nPt(d)?2:0;return S();function S(){let R=!1,T=d?.imports.length?d.imports:d&&n0(d)?iPt(d).map(W=>W.arguments[0]):E;for(let W of T)if(Ip(W.text)){if(_&&c===1&>t(d,W,g)===99||fu(W.text,VAe))continue;if(w3(W.text))return 3;pN(W.text)&&(R=!0)}return R?2:0}}function iPt(s){let c=0,g;for(let d of s.statements){if(c>3)break;nne(d)?g=Nn(g,d.declarationList.declarations.map(h=>h.initializer)):VC(d)&&ay(d.expression,!0)?g=Ft(g,d.expression):c++}return g||E}function Bbe(s,c,g){if(!s)return!1;let d=z7(c,g);for(let h of Nr(q7(c,d)))if(aA(s,h))return!0;return!1}function Qqe(s){let c=s.match(/\//g);return c?c.length:0}function Qne(s,c){return Zt(Qqe(s),Qqe(c))}var fLe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function s0(s){for(let c of fLe){let g=ILe(s,c);if(g!==void 0)return g}return s}function ILe(s,c){return aA(s,c)?Xne(s,c):void 0}function Xne(s,c){return s.substring(0,s.length-c.length)}function fN(s,c){return K2(s,c,fLe,!1)}function UY(s){let c=s.indexOf("*");return c===-1?s:s.indexOf("*",c+1)!==-1?void 0:{prefix:s.substr(0,c),suffix:s.substr(c+1)}}var Xqe=new WeakMap;function $7(s){let c=Xqe.get(s);if(c!==void 0)return c;let g,d,h=_g(s);for(let _ of h){let S=UY(_);S!==void 0&&(typeof S=="string"?(g??(g=new Set)).add(S):(d??(d=[])).push(S))}return Xqe.set(s,c={matchableStringSet:g,patterns:d}),c}function wB(s){return!(s>=0)}function PAe(s){return s===".ts"||s===".tsx"||s===".d.ts"||s===".cts"||s===".mts"||s===".d.mts"||s===".d.cts"||Ac(s,".d.")&&di(s,".ts")}function ez(s){return PAe(s)||s===".json"}function tz(s){let c=QT(s);return c!==void 0?c:pe.fail(`File ${s} has unknown extension.`)}function Jqe(s){return QT(s)!==void 0}function QT(s){return de(fLe,c=>aA(s,c))}function rz(s,c){return s.checkJsDirective?s.checkJsDirective.enabled:c.checkJs}var wbe={files:E,directories:E};function Tbe(s,c){let{matchableStringSet:g,patterns:d}=s;if(g?.has(c))return c;if(!(d===void 0||d.length===0))return YA(d,h=>h,c)}function Rbe(s,c){let g=s.indexOf(c);return pe.assert(g!==-1),s.slice(g)}function lg(s,...c){return c.length&&(s.relatedInformation||(s.relatedInformation=[]),pe.assert(s.relatedInformation!==E,"Diagnostic had empty array singleton for related info, but is still being constructed!"),s.relatedInformation.push(...c)),s}function hLe(s,c){pe.assert(s.length!==0);let g=c(s[0]),d=g;for(let h=1;hd&&(d=_)}return{min:g,max:d}}function Nbe(s){return{pos:MD(s),end:s.end}}function Dbe(s,c){let g=c.pos-1,d=Math.min(s.text.length,Yu(s.text,c.end)+1);return{pos:g,end:d}}function T3(s,c,g){return Uqe(s,c,g,!1)}function mLe(s,c,g){return Uqe(s,c,g,!0)}function Uqe(s,c,g,d){return c.skipLibCheck&&s.isDeclarationFile||c.skipDefaultLibCheck&&s.hasNoDefaultLib||!d&&c.noCheck||g.isSourceOfProjectReferenceRedirect(s.fileName)||!gU(s,c)}function gU(s,c){if(s.checkJsDirective&&s.checkJsDirective.enabled===!1)return!1;if(s.scriptKind===3||s.scriptKind===4||s.scriptKind===5)return!0;let d=(s.scriptKind===1||s.scriptKind===2)&&rz(s,c);return SY(s,c.checkJs)||d||s.scriptKind===7}function WAe(s,c){return s===c||typeof s=="object"&&s!==null&&typeof c=="object"&&c!==null&&Hu(s,c,WAe)}function nz(s){let c;switch(s.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let W=s.length-1,V=0;for(;s.charCodeAt(V)===48;)V++;return s.slice(V,W)||"0"}let g=2,d=s.length-1,h=(d-g)*c,_=new Uint16Array((h>>>4)+(h&15?1:0));for(let W=d-1,V=0;W>=g;W--,V+=c){let M=V>>>4,ee=s.charCodeAt(W),ge=(ee<=57?ee-48:10+ee-(ee<=70?65:97))<<(V&15);_[M]|=ge;let Ie=ge>>>16;Ie&&(_[M+1]|=Ie)}let S="",R=_.length-1,T=!0;for(;T;){let W=0;T=!1;for(let V=R;V>=0;V--){let M=W<<16|_[V],ee=M/10|0;_[V]=ee,W=M-ee*10,ee&&!T&&(R=V,T=!0)}S=W+S}return S}function kP({negative:s,base10Value:c}){return(s&&c!=="0"?"-":"")+c}function CLe(s){if(Jne(s,!1))return kbe(s)}function kbe(s){let c=s.startsWith("-"),g=nz(`${c?s.slice(1):s}n`);return{negative:c,base10Value:g}}function Jne(s,c){if(s==="")return!1;let g=wb(99,!1),d=!0;g.setOnError(()=>d=!1),g.setText(s+"n");let h=g.scan(),_=h===41;_&&(h=g.scan());let S=g.getTokenFlags();return d&&h===10&&g.getTokenEnd()===s.length+1&&!(S&512)&&(!c||s===kP({negative:_,base10Value:nz(g.getTokenValue())}))}function JL(s){return!!(s.flags&33554432)||GY(s)||Qge(s)||aPt(s)||oPt(s)||!(MT(s)||sPt(s))}function sPt(s){return Ir(s)&&a0(s.parent)&&s.parent.name===s}function oPt(s){for(;s.kind===80||s.kind===212;)s=s.parent;if(s.kind!==168)return!1;if(Ga(s.parent,64))return!0;let c=s.parent.parent.kind;return c===265||c===188}function aPt(s){if(s.kind!==80)return!1;let c=ji(s.parent,g=>{switch(g.kind){case 299:return!0;case 212:case 234:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===265}function _Le(s){return nh(s)&&Ir(s.typeName)}function yLe(s,c=yg){if(s.length<2)return!0;let g=s[0];for(let d=1,h=s.length;ds.includes(c))}function SLe(s){if(!s.parent)return;switch(s.kind){case 169:let{parent:g}=s;return g.kind===196?void 0:g.typeParameters;case 170:return s.parent.parameters;case 205:return s.parent.templateSpans;case 240:return s.parent.templateSpans;case 171:{let{parent:d}=s;return oQ(d)?d.modifiers:void 0}case 299:return s.parent.heritageClauses}let{parent:c}=s;if(u3(s))return yU(s.parent)?void 0:s.parent.tags;switch(c.kind){case 188:case 265:return Bx(s)?c.members:void 0;case 193:case 194:return c.types;case 190:case 210:case 357:case 276:case 280:return c.elements;case 211:case 293:return c.properties;case 214:case 215:return uc(s)?c.typeArguments:c.expression===s?void 0:c.arguments;case 285:case 289:return BJ(s)?c.children:void 0;case 287:case 286:return uc(s)?c.typeArguments:void 0;case 242:case 297:case 298:case 269:return c.statements;case 270:return c.clauses;case 264:case 232:return PI(s)?c.members:void 0;case 267:return LF(s)?c.members:void 0;case 308:return c.statements}}function OAe(s){if(!s.typeParameters){if(jt(s.parameters,c=>!kh(c)))return!0;if(s.kind!==220){let c=Nc(s.parameters);if(!(c&&SF(c)))return!0}}return!1}function oz(s){return s==="Infinity"||s==="-Infinity"||s==="NaN"}function vLe(s){return s.kind===261&&s.parent.kind===300}function RF(s){return s.kind===219||s.kind===220}function xP(s){return s.replace(/\$/g,()=>"\\$")}function IN(s){return(+s).toString()===s}function Une(s,c,g,d,h){let _=h&&s==="new";return!_&&Uh(s,c)?me.createIdentifier(s):!d&&!_&&IN(s)&&+s>=0?me.createNumericLiteral(+s):me.createStringLiteral(s,!!g)}function az(s){return!!(s.flags&262144&&s.isThisType)}function MAe(s){let c=0,g=0,d=0,h=0,_;(W=>{W[W.BeforeNodeModules=0]="BeforeNodeModules",W[W.NodeModules=1]="NodeModules",W[W.Scope=2]="Scope",W[W.PackageContent=3]="PackageContent"})(_||(_={}));let S=0,R=0,T=0;for(;R>=0;)switch(S=R,R=s.indexOf("/",S+1),T){case 0:s.indexOf(Vx,S)===S&&(c=S,g=R,T=1);break;case 1:case 2:T===1&&s.charAt(S+1)==="@"?T=2:(d=R,T=3);break;case 3:s.indexOf(Vx,S)===S?T=1:T=3;break}return h=S,T>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:g,packageRootIndex:d,fileNameIndex:h}:void 0}function KY(s){switch(s.kind){case 169:case 264:case 265:case 266:case 267:case 347:case 339:case 341:return!0;case 274:return s.phaseModifier===156;case 277:return s.parent.parent.phaseModifier===156;case 282:return s.parent.parent.isTypeOnly;default:return!1}}function Kne(s){return V3(s)||Ch(s)||ih(s)||pm(s)||g_(s)||KY(s)||xh(s)&&!_F(s)&&!vB(s)}function jne(s){if(!dY(s))return!1;let{isBracketed:c,typeExpression:g}=s;return c||!!g&&g.type.kind===317}function Fbe(s,c){if(s.length===0)return!1;let g=s.charCodeAt(0);return g===35?s.length>1&&bd(s.charCodeAt(1),c):bd(g,c)}function BLe(s){var c;return((c=zbe(s))==null?void 0:c.kind)===0}function HAe(s){return wo(s)&&(s.type&&s.type.kind===317||vL(s).some(jne))}function RB(s){switch(s.kind){case 173:case 172:return!!s.questionToken;case 170:return!!s.questionToken||HAe(s);case 349:case 342:return jne(s);default:return!1}}function YAe(s){let c=s.kind;return(c===212||c===213)&&hv(s.expression)}function Zbe(s){return wo(s)&&gI(s)&&Xm(s)&&!!fF(s)}function Lbe(s){return pe.checkDefined(QAe(s))}function QAe(s){let c=fF(s);return c&&c.typeExpression&&c.typeExpression.type}function cz(s){return Ir(s)?s.escapedText:oS(s)}function xw(s){return Ir(s)?Vo(s):lz(s)}function wLe(s){let c=s.kind;return c===80||c===296}function oS(s){return`${s.namespace.escapedText}:${Vo(s.name)}`}function lz(s){return`${Vo(s.namespace)}:${Vo(s.name)}`}function Vbe(s){return Ir(s)?Vo(s):lz(s)}function g2(s){return!!(s.flags&8576)}function A2(s){return s.flags&8192?s.escapedName:s.flags&384?Ap(""+s.value):pe.fail()}function jY(s){return!!s&&(jo(s)||Yg(s)||fo(s))}function TLe(s){return s===void 0?!1:!!Gie(s.attributes)}var lPt=String.prototype.replace;function R3(s,c){return lPt.call(s,"*",c)}function XAe(s){return Ir(s.name)?s.name.escapedText:Ap(s.name.text)}function RLe(s){switch(s.kind){case 169:case 170:case 173:case 172:case 186:case 185:case 180:case 181:case 182:case 175:case 174:case 176:case 177:case 178:case 179:case 184:case 183:case 187:case 188:case 189:case 190:case 193:case 194:case 197:case 191:case 192:case 198:case 199:case 195:case 196:case 204:case 206:case 203:case 329:case 330:case 347:case 339:case 341:case 346:case 345:case 325:case 326:case 327:case 342:case 349:case 318:case 316:case 315:case 313:case 314:case 323:case 319:case 310:case 334:case 336:case 335:case 351:case 344:case 200:case 201:case 263:case 242:case 269:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 252:case 253:case 254:case 255:case 256:case 257:case 258:case 259:case 261:case 209:case 264:case 265:case 266:case 267:case 268:case 273:case 272:case 279:case 278:case 243:case 260:case 283:return!0}return!1}function $h(s,c=!1,g=!1,d=!1){return{value:s,isSyntacticallyString:c,resolvedOtherFiles:g,hasExternalReferences:d}}function NLe({evaluateElementAccessExpression:s,evaluateEntityNameExpression:c}){function g(h,_){let S=!1,R=!1,T=!1;switch(h=QA(h),h.kind){case 225:let W=g(h.operand,_);if(R=W.resolvedOtherFiles,T=W.hasExternalReferences,typeof W.value=="number")switch(h.operator){case 40:return $h(W.value,S,R,T);case 41:return $h(-W.value,S,R,T);case 55:return $h(~W.value,S,R,T)}break;case 227:{let V=g(h.left,_),M=g(h.right,_);if(S=(V.isSyntacticallyString||M.isSyntacticallyString)&&h.operatorToken.kind===40,R=V.resolvedOtherFiles||M.resolvedOtherFiles,T=V.hasExternalReferences||M.hasExternalReferences,typeof V.value=="number"&&typeof M.value=="number")switch(h.operatorToken.kind){case 52:return $h(V.value|M.value,S,R,T);case 51:return $h(V.value&M.value,S,R,T);case 49:return $h(V.value>>M.value,S,R,T);case 50:return $h(V.value>>>M.value,S,R,T);case 48:return $h(V.value<=2)break;case 175:case 177:case 178:case 179:case 263:if(Ue&3&&nt==="arguments"){_t=g;break e}break;case 219:if(Ue&3&&nt==="arguments"){_t=g;break e}if(Ue&16){let ur=Ze.name;if(ur&&nt===ur.escapedText){_t=Ze.symbol;break e}}break;case 171:Ze.parent&&Ze.parent.kind===170&&(Ze=Ze.parent),Ze.parent&&(PI(Ze.parent)||Ze.parent.kind===264)&&(Ze=Ze.parent);break;case 347:case 339:case 341:case 352:let tr=KJ(Ze);tr&&(Ze=tr.parent);break;case 170:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&(Pt||(Pt=Ze));break;case 209:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&HL(Ze)&&!Pt&&(Pt=Ze);break;case 196:if(Ue&262144){let ur=Ze.typeParameter.name;if(ur&&nt===ur.escapedText){_t=Ze.typeParameter.symbol;break e}}break;case 282:Rt&&Rt===Ze.propertyName&&Ze.parent.parent.moduleSpecifier&&(Ze=Ze.parent.parent.parent);break}Ne(Ze,Rt)&&(Lt=Ze),Rt=Ze,Ze=ZB(Ze)?zge(Ze)||Ze.parent:(cS(Ze)||e9e(Ze))&&PL(Ze)||Ze.parent}if(Ye&&_t&&(!Lt||_t!==Lt.symbol)&&(_t.isReferenced|=Ue),!_t){if(Rt&&(pe.assertNode(Rt,ll),Rt.commonJsModuleIndicator&&nt==="exports"&&Ue&Rt.symbol.flags))return Rt.symbol;Tt||(_t=S(_,nt,Ue))}if(!_t&&ht&&wo(ht)&&ht.parent&&ay(ht.parent,!1))return c;if($e){if(Ke&&W(ht,nt,Ke,_t))return;_t?M(ht,_t,Ue,Rt,Pt,_r):V(ht,We,Ue,$e)}return _t}function _e(Ze,We,Ue){let $e=Mg(s),Ye=We;if(Si(Ue)&&Ye.body&&Ze.valueDeclaration&&Ze.valueDeclaration.pos>=Ye.body.pos&&Ze.valueDeclaration.end<=Ye.body.end&&$e>=2){let Qe=T(Ye);return Qe===void 0&&(Qe=F(Ye.parameters,Tt)||!1,R(Ye,Qe)),!Qe}return!1;function Tt(Qe){return ot(Qe.name)||!!Qe.initializer&&ot(Qe.initializer)}function ot(Qe){switch(Qe.kind){case 220:case 219:case 263:case 177:return!1;case 175:case 178:case 179:case 304:return ot(Qe.name);case 173:return zh(Qe)?!re:ot(Qe.name);default:return IJ(Qe)||GC(Qe)?$e<7:hg(Qe)&&Qe.dotDotDotToken&&Km(Qe.parent)?$e<4:uc(Qe)?!1:Lu(Qe,ot)||!1}}}function Ee(Ze,We){return Ze.kind!==220&&Ze.kind!==219?Fw(Ze)||(kd(Ze)||Ze.kind===173&&!cg(Ze))&&(!We||We!==Ze.name):We&&We===Ze.name?!1:Ze.asteriskToken||Ga(Ze,1024)?!0:!ZL(Ze)}function Ne(Ze,We){switch(Ze.kind){case 170:return!!We&&We===Ze.name;case 263:case 264:case 265:case 267:case 266:case 268:return!0;default:return!1}}function Te(Ze,We){if(Ze.declarations){for(let Ue of Ze.declarations)if(Ue.kind===169&&(ZB(Ue.parent)?bP(Ue.parent):Ue.parent)===We)return!(ZB(Ue.parent)&&de(Ue.parent.parent.tags,iS))}return!1}}function uz(s,c=!0){switch(pe.type(s),s.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 225:return s.operator===41?mC(s.operand)||c&&eQ(s.operand):s.operator===40?mC(s.operand):!1;default:return!1}}function UAe(s){for(;s.kind===218;)s=s.expression;return s}function KAe(s){switch(pe.type(s),s.kind){case 170:case 172:case 173:case 209:case 212:case 213:case 227:case 261:case 278:case 304:case 305:case 342:case 349:return!0;default:return!1}}function Wbe(s){let c=ji(s,Mf);return!!c&&!c.importClause}var zne=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],qne=new Set(zne),jAe=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),dU=new Set([...zne,...zne.map(s=>`node:${s}`),...jAe]);function $ne(s,c,g,d){let h=wo(s),_=/import|require/g;for(;_.exec(s.text)!==null;){let S=uPt(s,_.lastIndex,c);if(h&&ay(S,g))d(S,S.arguments[0]);else if(Up(S)&&S.arguments.length>=1&&(!g||mA(S.arguments[0])))d(S,S.arguments[0]);else if(c&&ky(S))d(S,S.argument.literal);else if(c&&SN(S)){let R=LY(S);R&&Zg(R)&&R.text&&d(S,R)}}}function uPt(s,c,g){let d=wo(s),h=s,_=S=>{if(S.pos<=c&&(cg&&c(g))}function gz(s,c,g,d){let h;return _(s,c,void 0);function _(S,R,T){if(d){let V=d(S,T);if(V)return V}let W;return F(R,(V,M)=>{if(V&&h?.has(V.sourceFile.path)){(W??(W=new Set)).add(V);return}let ee=g(V,T,M);if(ee||!V)return ee;(h||(h=new Set)).add(V.sourceFile.path)})||F(R,V=>V&&!W?.has(V)?_(V.commandLine.projectReferences,V.references,V):void 0)}}function Mbe(s,c,g){return s&&Kqe(s,c,g)}function Kqe(s,c,g){return WJ(s,c,d=>OI(d.initializer)?de(d.initializer.elements,h=>Zg(h)&&h.text===g):void 0)}function DLe(s,c,g){return zAe(s,c,d=>Zg(d.initializer)&&d.initializer.text===g?d.initializer:void 0)}function zAe(s,c,g){return WJ(s,c,g)}function JA(s,c=!0){let g=s&&jqe(s);return g&&!c&&Vy(g),UL(g,!1)}function rie(s,c,g){let d=g(s);return d?ua(d,s):d=jqe(s,g),d&&!c&&Vy(d),d}function jqe(s,c){let g=c?_=>rie(_,!0,c):JA,h=_s(s,g,void 0,c?_=>_&&qAe(_,!0,c):_=>_&&o0(_),g);if(h===s){let _=Zg(s)?ua(me.createStringLiteralFromNode(s),s):mC(s)?ua(me.createNumericLiteral(s.text,s.numericLiteralFlags),s):me.cloneNode(s);return gn(_,s)}return h.parent=void 0,h}function o0(s,c=!0){if(s){let g=me.createNodeArray(s.map(d=>JA(d,c)),s.hasTrailingComma);return gn(g,s),g}return s}function qAe(s,c,g){return me.createNodeArray(s.map(d=>rie(d,c,g)),s.hasTrailingComma)}function Vy(s){Hbe(s),kLe(s)}function Hbe(s){pU(s,1024,gPt)}function kLe(s){pU(s,2048,ube)}function pU(s,c,g){Gw(s,c);let d=g(s);d&&pU(d,c,g)}function gPt(s){return Lu(s,c=>c)}function xLe(){let s,c,g,d,h;return{createBaseSourceFileNode:_,createBaseIdentifierNode:S,createBasePrivateIdentifierNode:R,createBaseTokenNode:T,createBaseNode:W};function _(V){return new(h||(h=ZC.getSourceFileConstructor()))(V,-1,-1)}function S(V){return new(g||(g=ZC.getIdentifierConstructor()))(V,-1,-1)}function R(V){return new(d||(d=ZC.getPrivateIdentifierConstructor()))(V,-1,-1)}function T(V){return new(c||(c=ZC.getTokenConstructor()))(V,-1,-1)}function W(V){return new(s||(s=ZC.getNodeConstructor()))(V,-1,-1)}}function pv(s){let c,g;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:h,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:M,parenthesizeExpressionOfComputedPropertyName:ee,parenthesizeConditionOfConditionalExpression:re,parenthesizeBranchOfConditionalExpression:ge,parenthesizeExpressionOfExportDefault:Ie,parenthesizeExpressionOfNew:_e,parenthesizeLeftSideOfAccess:Ee,parenthesizeOperandOfPostfixUnary:Ne,parenthesizeOperandOfPrefixUnary:Te,parenthesizeExpressionsOfCommaDelimitedList:Ze,parenthesizeExpressionForDisallowedComma:We,parenthesizeExpressionOfExpressionStatement:Ue,parenthesizeConciseBodyOfArrowFunction:$e,parenthesizeCheckTypeOfConditionalType:Ye,parenthesizeExtendsTypeOfConditionalType:Tt,parenthesizeConstituentTypesOfUnionType:Qe,parenthesizeConstituentTypeOfUnionType:ot,parenthesizeConstituentTypesOfIntersectionType:ht,parenthesizeConstituentTypeOfIntersectionType:mt,parenthesizeOperandOfTypeOperator:_t,parenthesizeOperandOfReadonlyTypeOperator:Rt,parenthesizeNonArrayTypeOfPostfixType:Lt,parenthesizeElementTypesOfTupleType:Ke,parenthesizeElementTypeOfTupleType:Pt,parenthesizeTypeOfOptionalType:Gt,parenthesizeTypeArguments:tr,parenthesizeLeadingTypeArgument:nt};function d(ur){c||(c=new Map);let Gr=c.get(ur);return Gr||(Gr=dt=>V(ur,dt),c.set(ur,Gr)),Gr}function h(ur){g||(g=new Map);let Gr=g.get(ur);return Gr||(Gr=dt=>M(ur,void 0,dt),g.set(ur,Gr)),Gr}function _(ur,Gr){return ur===61?Gr===56||Gr===57:Gr===61?ur===56||ur===57:!1}function S(ur,Gr,dt,pr){let st=o2(Gr);if(fo(st)&&_(ur,st.operatorToken.kind))return!0;let ir=yne(227,ur),zt=Lye(227,ur);if(!dt&&Gr.kind===220&&ir>3)return!0;let Ht=x7(st);switch(Zt(Ht,ir)){case-1:return!(!dt&&zt===1&&Gr.kind===230);case 1:return!1;case 0:if(dt)return zt===1;if(fo(st)&&st.operatorToken.kind===ur){if(R(ur))return!1;if(ur===40){let mn=pr?T(pr):0;if(pY(mn)&&mn===T(st))return!1}}return Zye(st)===0}}function R(ur){return ur===42||ur===52||ur===51||ur===53||ur===28}function T(ur){if(ur=o2(ur),pY(ur.kind))return ur.kind;if(ur.kind===227&&ur.operatorToken.kind===40){if(ur.cachedLiteralKind!==void 0)return ur.cachedLiteralKind;let Gr=T(ur.left),dt=pY(Gr)&&Gr===T(ur.right)?Gr:0;return ur.cachedLiteralKind=dt,dt}return 0}function W(ur,Gr,dt,pr){return o2(Gr).kind===218?Gr:S(ur,Gr,dt,pr)?s.createParenthesizedExpression(Gr):Gr}function V(ur,Gr){return W(ur,Gr,!0)}function M(ur,Gr,dt){return W(ur,dt,!1,Gr)}function ee(ur){return Ade(ur)?s.createParenthesizedExpression(ur):ur}function re(ur){let Gr=yne(228,58),dt=o2(ur),pr=x7(dt);return Zt(pr,Gr)!==1?s.createParenthesizedExpression(ur):ur}function ge(ur){let Gr=o2(ur);return Ade(Gr)?s.createParenthesizedExpression(ur):ur}function Ie(ur){let Gr=o2(ur),dt=Ade(Gr);if(!dt)switch(aU(Gr,!1).kind){case 232:case 219:dt=!0}return dt?s.createParenthesizedExpression(ur):ur}function _e(ur){let Gr=aU(ur,!0);switch(Gr.kind){case 214:return s.createParenthesizedExpression(ur);case 215:return Gr.arguments?ur:s.createParenthesizedExpression(ur)}return Ee(ur)}function Ee(ur,Gr){let dt=o2(ur);return D_(dt)&&(dt.kind!==215||dt.arguments)&&(Gr||!GC(dt))?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ne(ur){return D_(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Te(ur){return Rre(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ze(ur){let Gr=Tr(ur,We);return gn(s.createNodeArray(Gr,ur.hasTrailingComma),ur)}function We(ur){let Gr=o2(ur),dt=x7(Gr),pr=yne(227,28);return dt>pr?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ue(ur){let Gr=o2(ur);if(Zl(Gr)){let pr=Gr.expression,st=o2(pr).kind;if(st===219||st===220){let ir=s.updateCallExpression(Gr,gn(s.createParenthesizedExpression(pr),pr),Gr.typeArguments,Gr.arguments);return s.restoreOuterExpressions(ur,ir,8)}}let dt=aU(Gr,!1).kind;return dt===211||dt===219?gn(s.createParenthesizedExpression(ur),ur):ur}function $e(ur){return!$u(ur)&&(Ade(ur)||aU(ur,!1).kind===211)?gn(s.createParenthesizedExpression(ur),ur):ur}function Ye(ur){switch(ur.kind){case 185:case 186:case 195:return s.createParenthesizedType(ur)}return ur}function Tt(ur){switch(ur.kind){case 195:return s.createParenthesizedType(ur)}return ur}function ot(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return Ye(ur)}function Qe(ur){return s.createNodeArray(Tr(ur,ot))}function mt(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return ot(ur)}function ht(ur){return s.createNodeArray(Tr(ur,mt))}function _t(ur){switch(ur.kind){case 194:return s.createParenthesizedType(ur)}return mt(ur)}function Rt(ur){switch(ur.kind){case 199:return s.createParenthesizedType(ur)}return _t(ur)}function Lt(ur){switch(ur.kind){case 196:case 199:case 187:return s.createParenthesizedType(ur)}return _t(ur)}function Ke(ur){return s.createNodeArray(Tr(ur,Pt))}function Pt(ur){return _r(ur)?s.createParenthesizedType(ur):ur}function _r(ur){return Iie(ur)?ur.postfix:KT(ur)||x_(ur)||$D(ur)||xB(ur)?_r(ur.type):d2(ur)?_r(ur.falseType):aS(ur)||mf(ur)?_r(Ei(ur.types)):jT(ur)?!!ur.typeParameter.constraint&&_r(ur.typeParameter.constraint):!1}function Gt(ur){return _r(ur)?s.createParenthesizedType(ur):Lt(ur)}function nt(ur){return oge(ur)&&ur.typeParameters?s.createParenthesizedType(ur):ur}function Dt(ur,Gr){return Gr===0?nt(ur):ur}function tr(ur){if(jt(ur))return s.createNodeArray(Tr(ur,Dt))}}var Ybe={getParenthesizeLeftSideOfBinaryForOperator:s=>Fl,getParenthesizeRightSideOfBinaryForOperator:s=>Fl,parenthesizeLeftSideOfBinary:(s,c)=>c,parenthesizeRightSideOfBinary:(s,c,g)=>g,parenthesizeExpressionOfComputedPropertyName:Fl,parenthesizeConditionOfConditionalExpression:Fl,parenthesizeBranchOfConditionalExpression:Fl,parenthesizeExpressionOfExportDefault:Fl,parenthesizeExpressionOfNew:s=>Ma(s,D_),parenthesizeLeftSideOfAccess:s=>Ma(s,D_),parenthesizeOperandOfPostfixUnary:s=>Ma(s,D_),parenthesizeOperandOfPrefixUnary:s=>Ma(s,Rre),parenthesizeExpressionsOfCommaDelimitedList:s=>Ma(s,tN),parenthesizeExpressionForDisallowedComma:Fl,parenthesizeExpressionOfExpressionStatement:Fl,parenthesizeConciseBodyOfArrowFunction:Fl,parenthesizeCheckTypeOfConditionalType:Fl,parenthesizeExtendsTypeOfConditionalType:Fl,parenthesizeConstituentTypesOfUnionType:s=>Ma(s,tN),parenthesizeConstituentTypeOfUnionType:Fl,parenthesizeConstituentTypesOfIntersectionType:s=>Ma(s,tN),parenthesizeConstituentTypeOfIntersectionType:Fl,parenthesizeOperandOfTypeOperator:Fl,parenthesizeOperandOfReadonlyTypeOperator:Fl,parenthesizeNonArrayTypeOfPostfixType:Fl,parenthesizeElementTypesOfTupleType:s=>Ma(s,tN),parenthesizeElementTypeOfTupleType:Fl,parenthesizeTypeOfOptionalType:Fl,parenthesizeTypeArguments:s=>s&&Ma(s,tN),parenthesizeLeadingTypeArgument:Fl};function GLe(s){return{convertToFunctionBlock:c,convertToFunctionExpression:g,convertToClassExpression:d,convertToArrayAssignmentElement:h,convertToObjectAssignmentElement:_,convertToAssignmentPattern:S,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:T,convertToAssignmentElementTarget:W};function c(V,M){if($u(V))return V;let ee=s.createReturnStatement(V);gn(ee,V);let re=s.createBlock([ee],M);return gn(re,V),re}function g(V){var M;if(!V.body)return pe.fail("Cannot convert a FunctionDeclaration without a body");let ee=s.createFunctionExpression((M=$R(V))==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.asteriskToken,V.name,V.typeParameters,V.parameters,V.type,V.body);return ua(ee,V),gn(ee,V),D3(V)&&Md(ee,!0),ee}function d(V){var M;let ee=s.createClassExpression((M=V.modifiers)==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.name,V.typeParameters,V.heritageClauses,V.members);return ua(ee,V),gn(ee,V),D3(V)&&Md(ee,!0),ee}function h(V){if(hg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadElement(V.name),V),V);let M=W(V.name);return V.initializer?ua(gn(s.createAssignment(M,V.initializer),V),V):M}return Ma(V,un)}function _(V){if(hg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadAssignment(V.name),V),V);if(V.propertyName){let M=W(V.name);return ua(gn(s.createPropertyAssignment(V.propertyName,V.initializer?s.createAssignment(M,V.initializer):M),V),V)}return pe.assertNode(V.name,Ir),ua(gn(s.createShorthandPropertyAssignment(V.name,V.initializer),V),V)}return Ma(V,yw)}function S(V){switch(V.kind){case 208:case 210:return T(V);case 207:case 211:return R(V)}}function R(V){return Km(V)?ua(gn(s.createObjectLiteralExpression(At(V.elements,_)),V),V):Ma(V,og)}function T(V){return p2(V)?ua(gn(s.createArrayLiteralExpression(At(V.elements,h)),V),V):Ma(V,OI)}function W(V){return Nu(V)?S(V):Ma(V,un)}}var Qbe={convertToFunctionBlock:il,convertToFunctionExpression:il,convertToClassExpression:il,convertToArrayAssignmentElement:il,convertToObjectAssignmentElement:il,convertToAssignmentPattern:il,convertToObjectAssignmentPattern:il,convertToArrayAssignmentPattern:il,convertToAssignmentElementTarget:il},Xbe=0,Jbe=(s=>(s[s.None=0]="None",s[s.NoParenthesizerRules=1]="NoParenthesizerRules",s[s.NoNodeConverters=2]="NoNodeConverters",s[s.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",s[s.NoOriginalNode=8]="NoOriginalNode",s))(Jbe||{}),zqe=[];function qqe(s){zqe.push(s)}function nie(s,c){let g=s&8?Fl:ua,d=FA(()=>s&1?Ybe:pv(Ee)),h=FA(()=>s&2?Qbe:GLe(Ee)),_=ZA(q=>(Ce,Pe)=>$s(Ce,q,Pe)),S=ZA(q=>Ce=>en(q,Ce)),R=ZA(q=>Ce=>_i(Ce,q)),T=ZA(q=>()=>hu(q)),W=ZA(q=>Ce=>KU(q,Ce)),V=ZA(q=>(Ce,Pe)=>Fo(q,Ce,Pe)),M=ZA(q=>(Ce,Pe)=>vE(q,Ce,Pe)),ee=ZA(q=>(Ce,Pe)=>$P(q,Ce,Pe)),re=ZA(q=>(Ce,Pe)=>y5(q,Ce,Pe)),ge=ZA(q=>(Ce,Pe,yt)=>rZ(q,Ce,Pe,yt)),Ie=ZA(q=>(Ce,Pe,yt)=>Cse(q,Ce,Pe,yt)),_e=ZA(q=>(Ce,Pe,yt,Rr)=>b5(q,Ce,Pe,yt,Rr)),Ee={get parenthesizer(){return d()},get converters(){return h()},baseFactory:c,flags:s,createNodeArray:Ne,createNumericLiteral:Ue,createBigIntLiteral:$e,createStringLiteral:Tt,createStringLiteralFromNode:ot,createRegularExpressionLiteral:Qe,createLiteralLikeNode:mt,createIdentifier:Rt,createTempVariable:Lt,createLoopVariable:Ke,createUniqueName:Pt,getGeneratedNameForNode:_r,createPrivateIdentifier:nt,createUniquePrivateName:tr,getGeneratedPrivateNameForNode:ur,createToken:dt,createSuper:pr,createThis:st,createNull:ir,createTrue:zt,createFalse:Ht,createModifier:Br,createModifiersFromModifierFlags:mn,createQualifiedName:jn,updateQualifiedName:Zi,createComputedPropertyName:Ns,updateComputedPropertyName:An,createTypeParameterDeclaration:si,updateTypeParameterDeclaration:ks,createParameterDeclaration:Ic,updateParameterDeclaration:su,createDecorator:Zn,updateDecorator:ya,createPropertySignature:Gl,updatePropertySignature:ba,createPropertyDeclaration:hc,updatePropertyDeclaration:yr,createMethodSignature:hn,updateMethodSignature:Oi,createMethodDeclaration:lo,updateMethodDeclaration:pa,createConstructorDeclaration:Cs,updateConstructorDeclaration:Tu,createGetAccessorDeclaration:Pn,updateGetAccessorDeclaration:pt,createSetAccessorDeclaration:it,updateSetAccessorDeclaration:nr,createCallSignature:Kr,updateCallSignature:Dn,createConstructSignature:hr,updateConstructSignature:En,createIndexSignature:Ni,updateIndexSignature:Gi,createClassStaticBlockDeclaration:tl,updateClassStaticBlockDeclaration:Qu,createTemplateLiteralTypeSpan:nn,updateTemplateLiteralTypeSpan:bn,createKeywordTypeNode:ds,createTypePredicateNode:Mt,updateTypePredicateNode:cn,createTypeReferenceNode:Bt,updateTypeReferenceNode:xe,createFunctionTypeNode:fr,updateFunctionTypeNode:Je,createConstructorTypeNode:Hn,updateConstructorTypeNode:ri,createTypeQueryNode:Ys,updateTypeQueryNode:tn,createTypeLiteralNode:wn,updateTypeLiteralNode:Mn,createArrayTypeNode:ci,updateArrayTypeNode:es,createTupleTypeNode:Wi,updateTupleTypeNode:Vn,createNamedTupleMember:Ui,updateNamedTupleMember:gs,createOptionalTypeNode:fs,updateOptionalTypeNode:bi,createRestTypeNode:mc,updateRestTypeNode:gg,createUnionTypeNode:wI,updateUnionTypeNode:AI,createIntersectionTypeNode:pp,updateIntersectionTypeNode:Dl,createConditionalTypeNode:yu,updateConditionalTypeNode:tm,createInferTypeNode:jp,updateInferTypeNode:Xg,createImportTypeNode:gu,updateImportTypeNode:bg,createParenthesizedType:KA,updateParenthesizedType:TA,createThisTypeNode:oi,createTypeOperatorNode:$d,updateTypeOperatorNode:YI,createIndexedAccessTypeNode:Fh,updateIndexedAccessTypeNode:WC,createMappedTypeNode:_f,updateMappedTypeNode:QI,createLiteralTypeNode:ve,updateLiteralTypeNode:mr,createTemplateLiteralType:sh,updateTemplateLiteralType:dS,createObjectBindingPattern:ln,updateObjectBindingPattern:ni,createArrayBindingPattern:Ls,updateArrayBindingPattern:Za,createBindingElement:Go,updateBindingElement:Ss,createArrayLiteralExpression:Uc,updateArrayLiteralExpression:rl,createObjectLiteralExpression:xd,updateObjectLiteralExpression:Lg,createPropertyAccessExpression:s&4?(q,Ce)=>ti(rm(q,Ce),262144):rm,updatePropertyAccessExpression:_h,createPropertyAccessChain:s&4?(q,Ce,Pe)=>ti(Gp(q,Ce,Pe),262144):Gp,updatePropertyAccessChain:oh,createElementAccessExpression:Z_,updateElementAccessExpression:m2,createElementAccessChain:Vb,updateElementAccessChain:or,createCallExpression:Js,updateCallExpression:Hl,createCallChain:RA,updateCallChain:NA,createNewExpression:uA,updateNewExpression:hm,createTaggedTemplateExpression:af,updateTaggedTemplateExpression:dI,createTypeAssertion:XI,updateTypeAssertion:C2,createParenthesizedExpression:d_,updateParenthesizedExpression:OC,createFunctionExpression:E1,updateFunctionExpression:gy,createArrowFunction:yv,updateArrowFunction:ik,createDeleteExpression:Wx,updateDeleteExpression:Ox,createTypeOfExpression:Pb,updateTypeOfExpression:qm,createVoidExpression:oR,updateVoidExpression:pS,createAwaitExpression:xN,updateAwaitExpression:at,createPrefixUnaryExpression:en,updatePrefixUnaryExpression:gi,createPostfixUnaryExpression:_i,updatePostfixUnaryExpression:ys,createBinaryExpression:$s,updateBinaryExpression:pc,createConditionalExpression:ul,updateConditionalExpression:Fe,createTemplateExpression:gr,updateTemplateExpression:Ln,createTemplateHead:Df,createTemplateMiddle:Jg,createTemplateTail:MC,createNoSubstitutionTemplateLiteral:S1,createTemplateLiteralLikeNode:Eu,createYieldExpression:fS,updateYieldExpression:bv,createSpreadElement:XF,updateSpreadElement:o9,createClassExpression:My,updateClassExpression:sk,createOmittedExpression:aR,createExpressionWithTypeArguments:WB,updateExpressionWithTypeArguments:UP,createAsExpression:br,updateAsExpression:sn,createNonNullExpression:ei,updateNonNullExpression:is,createSatisfiesExpression:Qs,updateSatisfiesExpression:Oo,createNonNullChain:Os,updateNonNullChain:co,createMetaProperty:Yc,updateMetaProperty:tu,createTemplateSpan:$a,updateTemplateSpan:ru,createSemicolonClassElement:gl,createBlock:kf,updateBlock:Wb,createVariableStatement:OB,updateVariableStatement:p_,createEmptyStatement:MB,createExpressionStatement:v1,updateExpressionStatement:s5,createIfStatement:GN,updateIfStatement:ok,createDoStatement:o5,updateDoStatement:ak,createWhileStatement:gse,updateWhileStatement:hpe,createForStatement:Ase,updateForStatement:Mx,createForInStatement:a5,updateForInStatement:WU,createForOfStatement:a9,updateForOfStatement:OU,createContinueStatement:qz,updateContinueStatement:mpe,createBreakStatement:MU,updateBreakStatement:$z,createReturnStatement:c5,updateReturnStatement:dse,createWithStatement:HU,updateWithStatement:eq,createSwitchStatement:EQ,updateSwitchStatement:KP,createLabeledStatement:tq,updateLabeledStatement:rq,createThrowStatement:SQ,updateThrowStatement:jP,createTryStatement:c9,updateTryStatement:JF,createDebuggerStatement:UF,createVariableDeclaration:KF,updateVariableDeclaration:zP,createVariableDeclarationList:l5,updateVariableDeclarationList:YU,createFunctionDeclaration:u5,updateFunctionDeclaration:PA,createClassDeclaration:pse,updateClassDeclaration:jF,createInterfaceDeclaration:zF,updateInterfaceDeclaration:ck,createTypeAliasDeclaration:bf,updateTypeAliasDeclaration:l0,createEnumDeclaration:Ob,updateEnumDeclaration:u0,createModuleDeclaration:g5,updateModuleDeclaration:Ay,createModuleBlock:lk,updateModuleBlock:Hy,createCaseBlock:HB,updateCaseBlock:Mw,createNamespaceExportDeclaration:A5,updateNamespaceExportDeclaration:d5,createImportEqualsDeclaration:fse,updateImportEqualsDeclaration:l9,createImportDeclaration:vQ,updateImportDeclaration:Sr,createImportClause:XU,updateImportClause:Hx,createAssertClause:Hw,updateAssertClause:u9,createAssertEntry:qP,updateAssertEntry:dy,createImportTypeAssertionContainer:cR,updateImportTypeAssertionContainer:YB,createImportAttributes:p5,updateImportAttributes:gA,createImportAttribute:IS,updateImportAttribute:g9,createNamespaceImport:JU,updateNamespaceImport:qF,createNamespaceExport:BQ,updateNamespaceExport:Ev,createNamedImports:Yx,updateNamedImports:f5,createImportSpecifier:A9,updateImportSpecifier:FN,createExportAssignment:wQ,updateExportAssignment:I5,createExportDeclaration:fa,updateExportDeclaration:sa,createNamedExports:UU,updateNamedExports:$F,createExportSpecifier:TQ,updateExportSpecifier:Ise,createMissingDeclaration:_pe,createExternalModuleReference:qo,updateExternalModuleReference:py,get createJSDocAllType(){return T(313)},get createJSDocUnknownType(){return T(314)},get createJSDocNonNullableType(){return M(316)},get updateJSDocNonNullableType(){return ee(316)},get createJSDocNullableType(){return M(315)},get updateJSDocNullableType(){return ee(315)},get createJSDocOptionalType(){return W(317)},get updateJSDocOptionalType(){return V(317)},get createJSDocVariadicType(){return W(319)},get updateJSDocVariadicType(){return V(319)},get createJSDocNamepathType(){return W(320)},get updateJSDocNamepathType(){return V(320)},createJSDocFunctionType:hse,updateJSDocFunctionType:nq,createJSDocTypeLiteral:G0,updateJSDocTypeLiteral:uk,createJSDocTypeExpression:lR,updateJSDocTypeExpression:eW,createJSDocSignature:jU,updateJSDocSignature:tW,createJSDocTemplateTag:Mb,updateJSDocTemplateTag:d9,createJSDocTypedefTag:h5,updateJSDocTypedefTag:iq,createJSDocParameterTag:m5,updateJSDocParameterTag:rW,createJSDocPropertyTag:sq,updateJSDocPropertyTag:eZ,createJSDocCallbackTag:ZN,updateJSDocCallbackTag:nW,createJSDocOverloadTag:C5,updateJSDocOverloadTag:p9,createJSDocAugmentsTag:iW,updateJSDocAugmentsTag:Qw,createJSDocImplementsTag:tZ,updateJSDocImplementsTag:cq,createJSDocSeeTag:Qx,updateJSDocSeeTag:sW,createJSDocImportTag:Hb,updateJSDocImportTag:vv,createJSDocNameReference:HC,updateJSDocNameReference:RQ,createJSDocMemberName:Xx,updateJSDocMemberName:_5,createJSDocLink:zU,updateJSDocLink:Jx,createJSDocLinkCode:mse,updateJSDocLinkCode:oq,createJSDocLinkPlain:aq,updateJSDocLinkPlain:ype,get createJSDocTypeTag(){return Ie(345)},get updateJSDocTypeTag(){return _e(345)},get createJSDocReturnTag(){return Ie(343)},get updateJSDocReturnTag(){return _e(343)},get createJSDocThisTag(){return Ie(344)},get updateJSDocThisTag(){return _e(344)},get createJSDocAuthorTag(){return re(331)},get updateJSDocAuthorTag(){return ge(331)},get createJSDocClassTag(){return re(333)},get updateJSDocClassTag(){return ge(333)},get createJSDocPublicTag(){return re(334)},get updateJSDocPublicTag(){return ge(334)},get createJSDocPrivateTag(){return re(335)},get updateJSDocPrivateTag(){return ge(335)},get createJSDocProtectedTag(){return re(336)},get updateJSDocProtectedTag(){return ge(336)},get createJSDocReadonlyTag(){return re(337)},get updateJSDocReadonlyTag(){return ge(337)},get createJSDocOverrideTag(){return re(338)},get updateJSDocOverrideTag(){return ge(338)},get createJSDocDeprecatedTag(){return re(332)},get updateJSDocDeprecatedTag(){return ge(332)},get createJSDocThrowsTag(){return Ie(350)},get updateJSDocThrowsTag(){return _e(350)},get createJSDocSatisfiesTag(){return Ie(351)},get updateJSDocSatisfiesTag(){return _e(351)},createJSDocEnumTag:YC,updateJSDocEnumTag:lq,createJSDocUnknownTag:qU,updateJSDocUnknownTag:Zh,createJSDocText:NQ,updateJSDocText:uR,createJSDocComment:oW,updateJSDocComment:f9,createJsxElement:uq,updateJsxElement:bpe,createJsxSelfClosingElement:TI,updateJsxSelfClosingElement:_se,createJsxOpeningElement:$U,updateJsxOpeningElement:DQ,createJsxClosingElement:gq,updateJsxClosingElement:F0,createJsxFragment:BE,createJsxText:E5,updateJsxText:wE,createJsxOpeningFragment:tK,createJsxJsxClosingFragment:Ux,updateJsxFragment:eK,createJsxAttribute:Aq,updateJsxAttribute:rK,createJsxAttributes:Xw,updateJsxAttributes:dq,createJsxSpreadAttribute:yse,updateJsxSpreadAttribute:pq,createJsxExpression:nK,updateJsxExpression:fq,createJsxNamespacedName:I9,updateJsxNamespacedName:B1,createCaseClause:LN,updateCaseClause:iK,createDefaultClause:sK,updateDefaultClause:jA,createHeritageClause:Uo,updateHeritageClause:mS,createCatchClause:$m,updateCatchClause:S5,createPropertyAssignment:oK,updatePropertyAssignment:kQ,createShorthandPropertyAssignment:aK,updateShorthandPropertyAssignment:Ae,createSpreadAssignment:fn,updateSpreadAssignment:qi,createEnumMember:ic,updateEnumMember:Oc,createSourceFile:zl,updateSourceFile:B5,createRedirectedSourceFile:Vc,createBundle:Qy,updateBundle:aW,createSyntheticExpression:Iq,createSyntaxList:QB,createNotEmittedStatement:Hf,createNotEmittedTypeElement:Jw,createPartiallyEmittedExpression:cK,updatePartiallyEmittedExpression:h9,createCommaListExpression:xQ,updateCommaListExpression:lWe,createSyntheticReferenceExpression:Epe,updateSyntheticReferenceExpression:hq,cloneNode:lK,get createComma(){return _(28)},get createAssignment(){return _(64)},get createLogicalOr(){return _(57)},get createLogicalAnd(){return _(56)},get createBitwiseOr(){return _(52)},get createBitwiseXor(){return _(53)},get createBitwiseAnd(){return _(51)},get createStrictEquality(){return _(37)},get createStrictInequality(){return _(38)},get createEquality(){return _(35)},get createInequality(){return _(36)},get createLessThan(){return _(30)},get createLessThanEquals(){return _(33)},get createGreaterThan(){return _(32)},get createGreaterThanEquals(){return _(34)},get createLeftShift(){return _(48)},get createRightShift(){return _(49)},get createUnsignedRightShift(){return _(50)},get createAdd(){return _(40)},get createSubtract(){return _(41)},get createMultiply(){return _(42)},get createDivide(){return _(44)},get createModulo(){return _(45)},get createExponent(){return _(43)},get createPrefixPlus(){return S(40)},get createPrefixMinus(){return S(41)},get createPrefixIncrement(){return S(46)},get createPrefixDecrement(){return S(47)},get createBitwiseNot(){return S(55)},get createLogicalNot(){return S(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:uWe,createImmediatelyInvokedArrowFunction:GQ,createVoidZero:uK,createExportDefault:vpe,createExternalModuleExport:Cq,createTypeCheck:kl,createIsNotTypeCheck:lW,createMethodCall:no,createGlobalMethodCall:FQ,createFunctionBindCall:Bpe,createFunctionCallCall:bse,createFunctionApplyCall:Ese,createArraySliceCall:l2e,createArrayConcatCall:gK,createObjectDefinePropertyCall:gWe,createObjectGetOwnPropertyDescriptorCall:Sse,createReflectGetCall:gk,createReflectSetCall:u2e,createPropertyDescriptor:AWe,createCallBinding:vse,createAssignmentTargetWrapper:VN,inlineExpressions:rt,getInternalName:xr,getLocalName:Tn,getExportName:Ai,getDeclarationName:Pi,getNamespaceMemberName:Ba,getExternalModuleOrNamespaceExportName:Xo,restoreOuterExpressions:Tpe,restoreEnclosingLabel:T5,createUseStrictPrologue:Tl,copyPrologue:uo,copyStandardPrologue:bp,copyCustomPrologue:ep,ensureUseStrict:zA,liftToBlock:Bv,mergeLexicalEnvironment:C9,replaceModifiers:_9,replaceDecoratorsAndModifiers:Kx,replacePropertyName:uW};return F(zqe,q=>q(Ee)),Ee;function Ne(q,Ce){if(q===void 0||q===E)q=[];else if(tN(q)){if(Ce===void 0||q.hasTrailingComma===Ce)return q.transformFlags===void 0&&fU(q),pe.attachNodeArrayDebugInfo(q),q;let Rr=q.slice();return Rr.pos=q.pos,Rr.end=q.end,Rr.hasTrailingComma=Ce,Rr.transformFlags=q.transformFlags,pe.attachNodeArrayDebugInfo(Rr),Rr}let Pe=q.length,yt=Pe>=1&&Pe<=4?q.slice():q;return yt.pos=-1,yt.end=-1,yt.hasTrailingComma=!!Ce,yt.transformFlags=0,fU(yt),pe.attachNodeArrayDebugInfo(yt),yt}function Te(q){return c.createBaseNode(q)}function Ze(q){let Ce=Te(q);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function We(q,Ce){return q!==Ce&&(q.typeArguments=Ce.typeArguments),vo(q,Ce)}function Ue(q,Ce=0){let Pe=typeof q=="number"?q+"":q;pe.assert(Pe.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let yt=Ze(9);return yt.text=Pe,yt.numericLiteralFlags=Ce,Ce&384&&(yt.transformFlags|=1024),yt}function $e(q){let Ce=Gr(10);return Ce.text=typeof q=="string"?q:kP(q)+"n",Ce.transformFlags|=32,Ce}function Ye(q,Ce){let Pe=Ze(11);return Pe.text=q,Pe.singleQuote=Ce,Pe}function Tt(q,Ce,Pe){let yt=Ye(q,Ce);return yt.hasExtendedUnicodeEscape=Pe,Pe&&(yt.transformFlags|=1024),yt}function ot(q){let Ce=Ye(c2(q),void 0);return Ce.textSourceNode=q,Ce}function Qe(q){let Ce=Gr(14);return Ce.text=q,Ce}function mt(q,Ce){switch(q){case 9:return Ue(Ce,0);case 10:return $e(Ce);case 11:return Tt(Ce,void 0);case 12:return E5(Ce,!1);case 13:return E5(Ce,!0);case 14:return Qe(Ce);case 15:return Eu(q,Ce,void 0,0)}}function ht(q){let Ce=c.createBaseIdentifierNode(80);return Ce.escapedText=q,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function _t(q,Ce,Pe,yt){let Rr=ht(Ap(q));return oie(Rr,{flags:Ce,id:Xbe,prefix:Pe,suffix:yt}),Xbe++,Rr}function Rt(q,Ce,Pe){Ce===void 0&&q&&(Ce=Ta(q)),Ce===80&&(Ce=void 0);let yt=ht(Ap(q));return Pe&&(yt.flags|=256),yt.escapedText==="await"&&(yt.transformFlags|=67108864),yt.flags&256&&(yt.transformFlags|=1024),yt}function Lt(q,Ce,Pe,yt){let Rr=1;Ce&&(Rr|=8);let Ii=_t("",Rr,Pe,yt);return q&&q(Ii),Ii}function Ke(q){let Ce=2;return q&&(Ce|=8),_t("",Ce,void 0,void 0)}function Pt(q,Ce=0,Pe,yt){return pe.assert(!(Ce&7),"Argument out of range: flags"),pe.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),_t(q,3|Ce,Pe,yt)}function _r(q,Ce=0,Pe,yt){pe.assert(!(Ce&7),"Argument out of range: flags");let Rr=q?_w(q)?M3(!1,Pe,q,yt,Vo):`generated@${rd(q)}`:"";(Pe||yt)&&(Ce|=16);let Ii=_t(Rr,4|Ce,Pe,yt);return Ii.original=q,Ii}function Gt(q){let Ce=c.createBasePrivateIdentifierNode(81);return Ce.escapedText=q,Ce.transformFlags|=16777216,Ce}function nt(q){return Ac(q,"#")||pe.fail("First character of private identifier must be #: "+q),Gt(Ap(q))}function Dt(q,Ce,Pe,yt){let Rr=Gt(Ap(q));return oie(Rr,{flags:Ce,id:Xbe,prefix:Pe,suffix:yt}),Xbe++,Rr}function tr(q,Ce,Pe){q&&!Ac(q,"#")&&pe.fail("First character of private identifier must be #: "+q);let yt=8|(q?3:1);return Dt(q??"",yt,Ce,Pe)}function ur(q,Ce,Pe){let yt=_w(q)?M3(!0,Ce,q,Pe,Vo):`#generated@${rd(q)}`,Ii=Dt(yt,4|(Ce||Pe?16:0),Ce,Pe);return Ii.original=q,Ii}function Gr(q){return c.createBaseTokenNode(q)}function dt(q){pe.assert(q>=0&&q<=166,"Invalid token"),pe.assert(q<=15||q>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),pe.assert(q<=9||q>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),pe.assert(q!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=Gr(q),Pe=0;switch(q){case 134:Pe=384;break;case 160:Pe=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Pe=1;break;case 108:Pe=134218752,Ce.flowNode=void 0;break;case 126:Pe=1024;break;case 129:Pe=16777216;break;case 110:Pe=16384,Ce.flowNode=void 0;break}return Pe&&(Ce.transformFlags|=Pe),Ce}function pr(){return dt(108)}function st(){return dt(110)}function ir(){return dt(106)}function zt(){return dt(112)}function Ht(){return dt(97)}function Br(q){return dt(q)}function mn(q){let Ce=[];return q&32&&Ce.push(Br(95)),q&128&&Ce.push(Br(138)),q&2048&&Ce.push(Br(90)),q&4096&&Ce.push(Br(87)),q&1&&Ce.push(Br(125)),q&2&&Ce.push(Br(123)),q&4&&Ce.push(Br(124)),q&64&&Ce.push(Br(128)),q&256&&Ce.push(Br(126)),q&16&&Ce.push(Br(164)),q&8&&Ce.push(Br(148)),q&512&&Ce.push(Br(129)),q&1024&&Ce.push(Br(134)),q&8192&&Ce.push(Br(103)),q&16384&&Ce.push(Br(147)),Ce.length?Ce:void 0}function jn(q,Ce){let Pe=Te(167);return Pe.left=q,Pe.right=Fm(Ce),Pe.transformFlags|=zs(Pe.left)|iie(Pe.right),Pe.flowNode=void 0,Pe}function Zi(q,Ce,Pe){return q.left!==Ce||q.right!==Pe?vo(jn(Ce,Pe),q):q}function Ns(q){let Ce=Te(168);return Ce.expression=d().parenthesizeExpressionOfComputedPropertyName(q),Ce.transformFlags|=zs(Ce.expression)|1024|131072,Ce}function An(q,Ce){return q.expression!==Ce?vo(Ns(Ce),q):q}function si(q,Ce,Pe,yt){let Rr=Ze(169);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.constraint=Pe,Rr.default=yt,Rr.transformFlags=1,Rr.expression=void 0,Rr.jsDoc=void 0,Rr}function ks(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.constraint!==yt||q.default!==Rr?vo(si(Ce,Pe,yt,Rr),q):q}function Ic(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(170);return Jo.modifiers=nd(q),Jo.dotDotDotToken=Ce,Jo.name=Fm(Pe),Jo.questionToken=yt,Jo.type=Rr,Jo.initializer=Z0(Ii),vF(Jo.name)?Jo.transformFlags=1:Jo.transformFlags=CA(Jo.modifiers)|zs(Jo.dotDotDotToken)|NB(Jo.name)|zs(Jo.questionToken)|zs(Jo.initializer)|(Jo.questionToken??Jo.type?1:0)|(Jo.dotDotDotToken??Jo.initializer?1024:0)|(Dw(Jo.modifiers)&31?8192:0),Jo.jsDoc=void 0,Jo}function su(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.dotDotDotToken!==Pe||q.name!==yt||q.questionToken!==Rr||q.type!==Ii||q.initializer!==Jo?vo(Ic(Ce,Pe,yt,Rr,Ii,Jo),q):q}function Zn(q){let Ce=Te(171);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1|8192|33554432,Ce}function ya(q,Ce){return q.expression!==Ce?vo(Zn(Ce),q):q}function Gl(q,Ce,Pe,yt){let Rr=Ze(172);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.type=yt,Rr.questionToken=Pe,Rr.transformFlags=1,Rr.initializer=void 0,Rr.jsDoc=void 0,Rr}function ba(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==yt||q.type!==Rr?Wo(Gl(Ce,Pe,yt,Rr),q):q}function Wo(q,Ce){return q!==Ce&&(q.initializer=Ce.initializer),vo(q,Ce)}function hc(q,Ce,Pe,yt,Rr){let Ii=Ze(173);Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.questionToken=Pe&&UT(Pe)?Pe:void 0,Ii.exclamationToken=Pe&&Cz(Pe)?Pe:void 0,Ii.type=yt,Ii.initializer=Z0(Rr);let Jo=Ii.flags&33554432||Dw(Ii.modifiers)&128;return Ii.transformFlags=CA(Ii.modifiers)|NB(Ii.name)|zs(Ii.initializer)|(Jo||Ii.questionToken||Ii.exclamationToken||Ii.type?1:0)|(Un(Ii.name)||Dw(Ii.modifiers)&256&&Ii.initializer?8192:0)|16777216,Ii.jsDoc=void 0,Ii}function yr(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==(yt!==void 0&&UT(yt)?yt:void 0)||q.exclamationToken!==(yt!==void 0&&Cz(yt)?yt:void 0)||q.type!==Rr||q.initializer!==Ii?vo(hc(Ce,Pe,yt,Rr,Ii),q):q}function hn(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(174);return Jo.modifiers=nd(q),Jo.name=Fm(Ce),Jo.questionToken=Pe,Jo.typeParameters=nd(yt),Jo.parameters=nd(Rr),Jo.type=Ii,Jo.transformFlags=1,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.typeArguments=void 0,Jo}function Oi(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==yt||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo?We(hn(Ce,Pe,yt,Rr,Ii,Jo),q):q}function lo(q,Ce,Pe,yt,Rr,Ii,Jo,Au){let cf=Ze(175);if(cf.modifiers=nd(q),cf.asteriskToken=Ce,cf.name=Fm(Pe),cf.questionToken=yt,cf.exclamationToken=void 0,cf.typeParameters=nd(Rr),cf.parameters=Ne(Ii),cf.type=Jo,cf.body=Au,!cf.body)cf.transformFlags=1;else{let _2=Dw(cf.modifiers)&1024,gW=!!cf.asteriskToken,gR=_2&&gW;cf.transformFlags=CA(cf.modifiers)|zs(cf.asteriskToken)|NB(cf.name)|zs(cf.questionToken)|CA(cf.typeParameters)|CA(cf.parameters)|zs(cf.type)|zs(cf.body)&-67108865|(gR?128:_2?256:gW?2048:0)|(cf.questionToken||cf.typeParameters||cf.type?1:0)|1024}return cf.typeArguments=void 0,cf.jsDoc=void 0,cf.locals=void 0,cf.nextContainer=void 0,cf.flowNode=void 0,cf.endFlowNode=void 0,cf.returnFlowNode=void 0,cf}function pa(q,Ce,Pe,yt,Rr,Ii,Jo,Au,cf){return q.modifiers!==Ce||q.asteriskToken!==Pe||q.name!==yt||q.questionToken!==Rr||q.typeParameters!==Ii||q.parameters!==Jo||q.type!==Au||q.body!==cf?Oa(lo(Ce,Pe,yt,Rr,Ii,Jo,Au,cf),q):q}function Oa(q,Ce){return q!==Ce&&(q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function tl(q){let Ce=Ze(176);return Ce.body=q,Ce.transformFlags=zs(q)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Qu(q,Ce){return q.body!==Ce?Tg(tl(Ce),q):q}function Tg(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function Cs(q,Ce,Pe){let yt=Ze(177);return yt.modifiers=nd(q),yt.parameters=Ne(Ce),yt.body=Pe,yt.body?yt.transformFlags=CA(yt.modifiers)|CA(yt.parameters)|zs(yt.body)&-67108865|1024:yt.transformFlags=1,yt.typeParameters=void 0,yt.type=void 0,yt.typeArguments=void 0,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.endFlowNode=void 0,yt.returnFlowNode=void 0,yt}function Tu(q,Ce,Pe,yt){return q.modifiers!==Ce||q.parameters!==Pe||q.body!==yt?Pr(Cs(Ce,Pe,yt),q):q}function Pr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),We(q,Ce)}function Pn(q,Ce,Pe,yt,Rr){let Ii=Ze(178);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.parameters=Ne(Pe),Ii.type=yt,Ii.body=Rr,Ii.body?Ii.transformFlags=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.parameters)|zs(Ii.type)|zs(Ii.body)&-67108865|(Ii.type?1:0):Ii.transformFlags=1,Ii.typeArguments=void 0,Ii.typeParameters=void 0,Ii.jsDoc=void 0,Ii.locals=void 0,Ii.nextContainer=void 0,Ii.flowNode=void 0,Ii.endFlowNode=void 0,Ii.returnFlowNode=void 0,Ii}function pt(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.parameters!==yt||q.type!==Rr||q.body!==Ii?on(Pn(Ce,Pe,yt,Rr,Ii),q):q}function on(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters),We(q,Ce)}function it(q,Ce,Pe,yt){let Rr=Ze(179);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.parameters=Ne(Pe),Rr.body=yt,Rr.body?Rr.transformFlags=CA(Rr.modifiers)|NB(Rr.name)|CA(Rr.parameters)|zs(Rr.body)&-67108865|(Rr.type?1:0):Rr.transformFlags=1,Rr.typeArguments=void 0,Rr.typeParameters=void 0,Rr.type=void 0,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr.endFlowNode=void 0,Rr.returnFlowNode=void 0,Rr}function nr(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.parameters!==yt||q.body!==Rr?Fr(it(Ce,Pe,yt,Rr),q):q}function Fr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),We(q,Ce)}function Kr(q,Ce,Pe){let yt=Ze(180);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Dn(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?We(Kr(Ce,Pe,yt),q):q}function hr(q,Ce,Pe){let yt=Ze(181);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function En(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?We(hr(Ce,Pe,yt),q):q}function Ni(q,Ce,Pe){let yt=Ze(182);return yt.modifiers=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Gi(q,Ce,Pe,yt){return q.parameters!==Pe||q.type!==yt||q.modifiers!==Ce?We(Ni(Ce,Pe,yt),q):q}function nn(q,Ce){let Pe=Te(205);return Pe.type=q,Pe.literal=Ce,Pe.transformFlags=1,Pe}function bn(q,Ce,Pe){return q.type!==Ce||q.literal!==Pe?vo(nn(Ce,Pe),q):q}function ds(q){return dt(q)}function Mt(q,Ce,Pe){let yt=Te(183);return yt.assertsModifier=q,yt.parameterName=Fm(Ce),yt.type=Pe,yt.transformFlags=1,yt}function cn(q,Ce,Pe,yt){return q.assertsModifier!==Ce||q.parameterName!==Pe||q.type!==yt?vo(Mt(Ce,Pe,yt),q):q}function Bt(q,Ce){let Pe=Te(184);return Pe.typeName=Fm(q),Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ne(Ce)),Pe.transformFlags=1,Pe}function xe(q,Ce,Pe){return q.typeName!==Ce||q.typeArguments!==Pe?vo(Bt(Ce,Pe),q):q}function fr(q,Ce,Pe){let yt=Ze(185);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.modifiers=void 0,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Je(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?In(fr(Ce,Pe,yt),q):q}function In(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),We(q,Ce)}function Hn(...q){return q.length===4?Ot(...q):q.length===3?$r(...q):pe.fail("Incorrect number of arguments specified.")}function Ot(q,Ce,Pe,yt){let Rr=Ze(186);return Rr.modifiers=nd(q),Rr.typeParameters=nd(Ce),Rr.parameters=nd(Pe),Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.typeArguments=void 0,Rr}function $r(q,Ce,Pe){return Ot(void 0,q,Ce,Pe)}function ri(...q){return q.length===5?ao(...q):q.length===4?Bs(...q):pe.fail("Incorrect number of arguments specified.")}function ao(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.typeParameters!==Pe||q.parameters!==yt||q.type!==Rr?We(Hn(Ce,Pe,yt,Rr),q):q}function Bs(q,Ce,Pe,yt){return ao(q,q.modifiers,Ce,Pe,yt)}function Ys(q,Ce){let Pe=Te(187);return Pe.exprName=q,Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Pe.transformFlags=1,Pe}function tn(q,Ce,Pe){return q.exprName!==Ce||q.typeArguments!==Pe?vo(Ys(Ce,Pe),q):q}function wn(q){let Ce=Ze(188);return Ce.members=Ne(q),Ce.transformFlags=1,Ce}function Mn(q,Ce){return q.members!==Ce?vo(wn(Ce),q):q}function ci(q){let Ce=Te(189);return Ce.elementType=d().parenthesizeNonArrayTypeOfPostfixType(q),Ce.transformFlags=1,Ce}function es(q,Ce){return q.elementType!==Ce?vo(ci(Ce),q):q}function Wi(q){let Ce=Te(190);return Ce.elements=Ne(d().parenthesizeElementTypesOfTupleType(q)),Ce.transformFlags=1,Ce}function Vn(q,Ce){return q.elements!==Ce?vo(Wi(Ce),q):q}function Ui(q,Ce,Pe,yt){let Rr=Ze(203);return Rr.dotDotDotToken=q,Rr.name=Ce,Rr.questionToken=Pe,Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr}function gs(q,Ce,Pe,yt,Rr){return q.dotDotDotToken!==Ce||q.name!==Pe||q.questionToken!==yt||q.type!==Rr?vo(Ui(Ce,Pe,yt,Rr),q):q}function fs(q){let Ce=Te(191);return Ce.type=d().parenthesizeTypeOfOptionalType(q),Ce.transformFlags=1,Ce}function bi(q,Ce){return q.type!==Ce?vo(fs(Ce),q):q}function mc(q){let Ce=Te(192);return Ce.type=q,Ce.transformFlags=1,Ce}function gg(q,Ce){return q.type!==Ce?vo(mc(Ce),q):q}function Ag(q,Ce,Pe){let yt=Te(q);return yt.types=Ee.createNodeArray(Pe(Ce)),yt.transformFlags=1,yt}function _u(q,Ce,Pe){return q.types!==Ce?vo(Ag(q.kind,Ce,Pe),q):q}function wI(q){return Ag(193,q,d().parenthesizeConstituentTypesOfUnionType)}function AI(q,Ce){return _u(q,Ce,d().parenthesizeConstituentTypesOfUnionType)}function pp(q){return Ag(194,q,d().parenthesizeConstituentTypesOfIntersectionType)}function Dl(q,Ce){return _u(q,Ce,d().parenthesizeConstituentTypesOfIntersectionType)}function yu(q,Ce,Pe,yt){let Rr=Te(195);return Rr.checkType=d().parenthesizeCheckTypeOfConditionalType(q),Rr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(Ce),Rr.trueType=Pe,Rr.falseType=yt,Rr.transformFlags=1,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function tm(q,Ce,Pe,yt,Rr){return q.checkType!==Ce||q.extendsType!==Pe||q.trueType!==yt||q.falseType!==Rr?vo(yu(Ce,Pe,yt,Rr),q):q}function jp(q){let Ce=Te(196);return Ce.typeParameter=q,Ce.transformFlags=1,Ce}function Xg(q,Ce){return q.typeParameter!==Ce?vo(jp(Ce),q):q}function sh(q,Ce){let Pe=Te(204);return Pe.head=q,Pe.templateSpans=Ne(Ce),Pe.transformFlags=1,Pe}function dS(q,Ce,Pe){return q.head!==Ce||q.templateSpans!==Pe?vo(sh(Ce,Pe),q):q}function gu(q,Ce,Pe,yt,Rr=!1){let Ii=Te(206);return Ii.argument=q,Ii.attributes=Ce,Ii.assertions&&Ii.assertions.assertClause&&Ii.attributes&&(Ii.assertions.assertClause=Ii.attributes),Ii.qualifier=Pe,Ii.typeArguments=yt&&d().parenthesizeTypeArguments(yt),Ii.isTypeOf=Rr,Ii.transformFlags=1,Ii}function bg(q,Ce,Pe,yt,Rr,Ii=q.isTypeOf){return q.argument!==Ce||q.attributes!==Pe||q.qualifier!==yt||q.typeArguments!==Rr||q.isTypeOf!==Ii?vo(gu(Ce,Pe,yt,Rr,Ii),q):q}function KA(q){let Ce=Te(197);return Ce.type=q,Ce.transformFlags=1,Ce}function TA(q,Ce){return q.type!==Ce?vo(KA(Ce),q):q}function oi(){let q=Te(198);return q.transformFlags=1,q}function $d(q,Ce){let Pe=Te(199);return Pe.operator=q,Pe.type=q===148?d().parenthesizeOperandOfReadonlyTypeOperator(Ce):d().parenthesizeOperandOfTypeOperator(Ce),Pe.transformFlags=1,Pe}function YI(q,Ce){return q.type!==Ce?vo($d(q.operator,Ce),q):q}function Fh(q,Ce){let Pe=Te(200);return Pe.objectType=d().parenthesizeNonArrayTypeOfPostfixType(q),Pe.indexType=Ce,Pe.transformFlags=1,Pe}function WC(q,Ce,Pe){return q.objectType!==Ce||q.indexType!==Pe?vo(Fh(Ce,Pe),q):q}function _f(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(201);return Jo.readonlyToken=q,Jo.typeParameter=Ce,Jo.nameType=Pe,Jo.questionToken=yt,Jo.type=Rr,Jo.members=Ii&&Ne(Ii),Jo.transformFlags=1,Jo.locals=void 0,Jo.nextContainer=void 0,Jo}function QI(q,Ce,Pe,yt,Rr,Ii,Jo){return q.readonlyToken!==Ce||q.typeParameter!==Pe||q.nameType!==yt||q.questionToken!==Rr||q.type!==Ii||q.members!==Jo?vo(_f(Ce,Pe,yt,Rr,Ii,Jo),q):q}function ve(q){let Ce=Te(202);return Ce.literal=q,Ce.transformFlags=1,Ce}function mr(q,Ce){return q.literal!==Ce?vo(ve(Ce),q):q}function ln(q){let Ce=Te(207);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function ni(q,Ce){return q.elements!==Ce?vo(ln(Ce),q):q}function Ls(q){let Ce=Te(208);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements)|1024|524288,Ce}function Za(q,Ce){return q.elements!==Ce?vo(Ls(Ce),q):q}function Go(q,Ce,Pe,yt){let Rr=Ze(209);return Rr.dotDotDotToken=q,Rr.propertyName=Fm(Ce),Rr.name=Fm(Pe),Rr.initializer=Z0(yt),Rr.transformFlags|=zs(Rr.dotDotDotToken)|NB(Rr.propertyName)|NB(Rr.name)|zs(Rr.initializer)|(Rr.dotDotDotToken?32768:0)|1024,Rr.flowNode=void 0,Rr}function Ss(q,Ce,Pe,yt,Rr){return q.propertyName!==Pe||q.dotDotDotToken!==Ce||q.name!==yt||q.initializer!==Rr?vo(Go(Ce,Pe,yt,Rr),q):q}function Uc(q,Ce){let Pe=Te(210),yt=q&&li(q),Rr=Ne(q,yt&&yp(yt)?!0:void 0);return Pe.elements=d().parenthesizeExpressionsOfCommaDelimitedList(Rr),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.elements),Pe}function rl(q,Ce){return q.elements!==Ce?vo(Uc(Ce,q.multiLine),q):q}function xd(q,Ce){let Pe=Ze(211);return Pe.properties=Ne(q),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.properties),Pe.jsDoc=void 0,Pe}function Lg(q,Ce){return q.properties!==Ce?vo(xd(Ce,q.multiLine),q):q}function yf(q,Ce,Pe){let yt=Ze(212);return yt.expression=q,yt.questionDotToken=Ce,yt.name=Pe,yt.transformFlags=zs(yt.expression)|zs(yt.questionDotToken)|(Ir(yt.name)?iie(yt.name):zs(yt.name)|536870912),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function rm(q,Ce){let Pe=yf(d().parenthesizeLeftSideOfAccess(q,!1),void 0,Fm(Ce));return rr(q)&&(Pe.transformFlags|=384),Pe}function _h(q,Ce,Pe){return vx(q)?oh(q,Ce,q.questionDotToken,Ma(Pe,Ir)):q.expression!==Ce||q.name!==Pe?vo(rm(Ce,Pe),q):q}function Gp(q,Ce,Pe){let yt=yf(d().parenthesizeLeftSideOfAccess(q,!0),Ce,Fm(Pe));return yt.flags|=64,yt.transformFlags|=32,yt}function oh(q,Ce,Pe,yt){return pe.assert(!!(q.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.name!==yt?vo(Gp(Ce,Pe,yt),q):q}function b1(q,Ce,Pe){let yt=Ze(213);return yt.expression=q,yt.questionDotToken=Ce,yt.argumentExpression=Pe,yt.transformFlags|=zs(yt.expression)|zs(yt.questionDotToken)|zs(yt.argumentExpression),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function Z_(q,Ce){let Pe=b1(d().parenthesizeLeftSideOfAccess(q,!1),void 0,y9(Ce));return rr(q)&&(Pe.transformFlags|=384),Pe}function m2(q,Ce,Pe){return IF(q)?or(q,Ce,q.questionDotToken,Pe):q.expression!==Ce||q.argumentExpression!==Pe?vo(Z_(Ce,Pe),q):q}function Vb(q,Ce,Pe){let yt=b1(d().parenthesizeLeftSideOfAccess(q,!0),Ce,y9(Pe));return yt.flags|=64,yt.transformFlags|=32,yt}function or(q,Ce,Pe,yt){return pe.assert(!!(q.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.argumentExpression!==yt?vo(Vb(Ce,Pe,yt),q):q}function qn(q,Ce,Pe,yt){let Rr=Ze(214);return Rr.expression=q,Rr.questionDotToken=Ce,Rr.typeArguments=Pe,Rr.arguments=yt,Rr.transformFlags|=zs(Rr.expression)|zs(Rr.questionDotToken)|CA(Rr.typeArguments)|CA(Rr.arguments),Rr.typeArguments&&(Rr.transformFlags|=1),xy(Rr.expression)&&(Rr.transformFlags|=16384),Rr}function Js(q,Ce,Pe){let yt=qn(d().parenthesizeLeftSideOfAccess(q,!1),void 0,nd(Ce),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(Pe)));return an(yt.expression)&&(yt.transformFlags|=8388608),yt}function Hl(q,Ce,Pe,yt){return _B(q)?NA(q,Ce,q.questionDotToken,Pe,yt):q.expression!==Ce||q.typeArguments!==Pe||q.arguments!==yt?vo(Js(Ce,Pe,yt),q):q}function RA(q,Ce,Pe,yt){let Rr=qn(d().parenthesizeLeftSideOfAccess(q,!0),Ce,nd(Pe),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(yt)));return Rr.flags|=64,Rr.transformFlags|=32,Rr}function NA(q,Ce,Pe,yt,Rr){return pe.assert(!!(q.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.typeArguments!==yt||q.arguments!==Rr?vo(RA(Ce,Pe,yt,Rr),q):q}function uA(q,Ce,Pe){let yt=Ze(215);return yt.expression=d().parenthesizeExpressionOfNew(q),yt.typeArguments=nd(Ce),yt.arguments=Pe?d().parenthesizeExpressionsOfCommaDelimitedList(Pe):void 0,yt.transformFlags|=zs(yt.expression)|CA(yt.typeArguments)|CA(yt.arguments)|32,yt.typeArguments&&(yt.transformFlags|=1),yt}function hm(q,Ce,Pe,yt){return q.expression!==Ce||q.typeArguments!==Pe||q.arguments!==yt?vo(uA(Ce,Pe,yt),q):q}function af(q,Ce,Pe){let yt=Te(216);return yt.tag=d().parenthesizeLeftSideOfAccess(q,!1),yt.typeArguments=nd(Ce),yt.template=Pe,yt.transformFlags|=zs(yt.tag)|CA(yt.typeArguments)|zs(yt.template)|1024,yt.typeArguments&&(yt.transformFlags|=1),Pye(yt.template)&&(yt.transformFlags|=128),yt}function dI(q,Ce,Pe,yt){return q.tag!==Ce||q.typeArguments!==Pe||q.template!==yt?vo(af(Ce,Pe,yt),q):q}function XI(q,Ce){let Pe=Te(217);return Pe.expression=d().parenthesizeOperandOfPrefixUnary(Ce),Pe.type=q,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.type)|1,Pe}function C2(q,Ce,Pe){return q.type!==Ce||q.expression!==Pe?vo(XI(Ce,Pe),q):q}function d_(q){let Ce=Te(218);return Ce.expression=q,Ce.transformFlags=zs(Ce.expression),Ce.jsDoc=void 0,Ce}function OC(q,Ce){return q.expression!==Ce?vo(d_(Ce),q):q}function E1(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=Ze(219);Au.modifiers=nd(q),Au.asteriskToken=Ce,Au.name=Fm(Pe),Au.typeParameters=nd(yt),Au.parameters=Ne(Rr),Au.type=Ii,Au.body=Jo;let cf=Dw(Au.modifiers)&1024,_2=!!Au.asteriskToken,gW=cf&&_2;return Au.transformFlags=CA(Au.modifiers)|zs(Au.asteriskToken)|NB(Au.name)|CA(Au.typeParameters)|CA(Au.parameters)|zs(Au.type)|zs(Au.body)&-67108865|(gW?128:cf?256:_2?2048:0)|(Au.typeParameters||Au.type?1:0)|4194304,Au.typeArguments=void 0,Au.jsDoc=void 0,Au.locals=void 0,Au.nextContainer=void 0,Au.flowNode=void 0,Au.endFlowNode=void 0,Au.returnFlowNode=void 0,Au}function gy(q,Ce,Pe,yt,Rr,Ii,Jo,Au){return q.name!==yt||q.modifiers!==Ce||q.asteriskToken!==Pe||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo||q.body!==Au?We(E1(Ce,Pe,yt,Rr,Ii,Jo,Au),q):q}function yv(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(220);Jo.modifiers=nd(q),Jo.typeParameters=nd(Ce),Jo.parameters=Ne(Pe),Jo.type=yt,Jo.equalsGreaterThanToken=Rr??dt(39),Jo.body=d().parenthesizeConciseBodyOfArrowFunction(Ii);let Au=Dw(Jo.modifiers)&1024;return Jo.transformFlags=CA(Jo.modifiers)|CA(Jo.typeParameters)|CA(Jo.parameters)|zs(Jo.type)|zs(Jo.equalsGreaterThanToken)|zs(Jo.body)&-67108865|(Jo.typeParameters||Jo.type?1:0)|(Au?16640:0)|1024,Jo.typeArguments=void 0,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.flowNode=void 0,Jo.endFlowNode=void 0,Jo.returnFlowNode=void 0,Jo}function ik(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.typeParameters!==Pe||q.parameters!==yt||q.type!==Rr||q.equalsGreaterThanToken!==Ii||q.body!==Jo?We(yv(Ce,Pe,yt,Rr,Ii,Jo),q):q}function Wx(q){let Ce=Te(221);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function Ox(q,Ce){return q.expression!==Ce?vo(Wx(Ce),q):q}function Pb(q){let Ce=Te(222);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function qm(q,Ce){return q.expression!==Ce?vo(Pb(Ce),q):q}function oR(q){let Ce=Te(223);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function pS(q,Ce){return q.expression!==Ce?vo(oR(Ce),q):q}function xN(q){let Ce=Te(224);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression)|256|128|2097152,Ce}function at(q,Ce){return q.expression!==Ce?vo(xN(Ce),q):q}function en(q,Ce){let Pe=Te(225);return Pe.operator=q,Pe.operand=d().parenthesizeOperandOfPrefixUnary(Ce),Pe.transformFlags|=zs(Pe.operand),(q===46||q===47)&&Ir(Pe.operand)&&!kp(Pe.operand)&&!VF(Pe.operand)&&(Pe.transformFlags|=268435456),Pe}function gi(q,Ce){return q.operand!==Ce?vo(en(q.operator,Ce),q):q}function _i(q,Ce){let Pe=Te(226);return Pe.operator=Ce,Pe.operand=d().parenthesizeOperandOfPostfixUnary(q),Pe.transformFlags|=zs(Pe.operand),Ir(Pe.operand)&&!kp(Pe.operand)&&!VF(Pe.operand)&&(Pe.transformFlags|=268435456),Pe}function ys(q,Ce){return q.operand!==Ce?vo(_i(Ce,q.operator),q):q}function $s(q,Ce,Pe){let yt=Ze(227),Rr=_q(Ce),Ii=Rr.kind;return yt.left=d().parenthesizeLeftSideOfBinary(Ii,q),yt.operatorToken=Rr,yt.right=d().parenthesizeRightSideOfBinary(Ii,yt.left,Pe),yt.transformFlags|=zs(yt.left)|zs(yt.operatorToken)|zs(yt.right),Ii===61?yt.transformFlags|=32:Ii===64?og(yt.left)?yt.transformFlags|=5248|wa(yt.left):OI(yt.left)&&(yt.transformFlags|=5120|wa(yt.left)):Ii===43||Ii===68?yt.transformFlags|=512:V7(Ii)&&(yt.transformFlags|=16),Ii===103&&p(yt.left)&&(yt.transformFlags|=536870912),yt.jsDoc=void 0,yt}function wa(q){return fEe(q)?65536:0}function pc(q,Ce,Pe,yt){return q.left!==Ce||q.operatorToken!==Pe||q.right!==yt?vo($s(Ce,Pe,yt),q):q}function ul(q,Ce,Pe,yt,Rr){let Ii=Te(228);return Ii.condition=d().parenthesizeConditionOfConditionalExpression(q),Ii.questionToken=Ce??dt(58),Ii.whenTrue=d().parenthesizeBranchOfConditionalExpression(Pe),Ii.colonToken=yt??dt(59),Ii.whenFalse=d().parenthesizeBranchOfConditionalExpression(Rr),Ii.transformFlags|=zs(Ii.condition)|zs(Ii.questionToken)|zs(Ii.whenTrue)|zs(Ii.colonToken)|zs(Ii.whenFalse),Ii.flowNodeWhenFalse=void 0,Ii.flowNodeWhenTrue=void 0,Ii}function Fe(q,Ce,Pe,yt,Rr,Ii){return q.condition!==Ce||q.questionToken!==Pe||q.whenTrue!==yt||q.colonToken!==Rr||q.whenFalse!==Ii?vo(ul(Ce,Pe,yt,Rr,Ii),q):q}function gr(q,Ce){let Pe=Te(229);return Pe.head=q,Pe.templateSpans=Ne(Ce),Pe.transformFlags|=zs(Pe.head)|CA(Pe.templateSpans)|1024,Pe}function Ln(q,Ce,Pe){return q.head!==Ce||q.templateSpans!==Pe?vo(gr(Ce,Pe),q):q}function bs(q,Ce,Pe,yt=0){pe.assert(!(yt&-7177),"Unsupported template flags.");let Rr;if(Pe!==void 0&&Pe!==Ce&&(Rr=APt(q,Pe),typeof Rr=="object"))return pe.fail("Invalid raw text");if(Ce===void 0){if(Rr===void 0)return pe.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=Rr}else Rr!==void 0&&pe.assert(Ce===Rr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Xl(q){let Ce=1024;return q&&(Ce|=128),Ce}function eg(q,Ce,Pe,yt){let Rr=Gr(q);return Rr.text=Ce,Rr.rawText=Pe,Rr.templateFlags=yt&7176,Rr.transformFlags=Xl(Rr.templateFlags),Rr}function jl(q,Ce,Pe,yt){let Rr=Ze(q);return Rr.text=Ce,Rr.rawText=Pe,Rr.templateFlags=yt&7176,Rr.transformFlags=Xl(Rr.templateFlags),Rr}function Eu(q,Ce,Pe,yt){return q===15?jl(q,Ce,Pe,yt):eg(q,Ce,Pe,yt)}function Df(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(16,q,Ce,Pe)}function Jg(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(17,q,Ce,Pe)}function MC(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(18,q,Ce,Pe)}function S1(q,Ce,Pe){return q=bs(16,q,Ce,Pe),jl(15,q,Ce,Pe)}function fS(q,Ce){pe.assert(!q||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Pe=Te(230);return Pe.expression=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.asteriskToken=q,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.asteriskToken)|1024|128|1048576,Pe}function bv(q,Ce,Pe){return q.expression!==Pe||q.asteriskToken!==Ce?vo(fS(Ce,Pe),q):q}function XF(q){let Ce=Te(231);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|1024|32768,Ce}function o9(q,Ce){return q.expression!==Ce?vo(XF(Ce),q):q}function My(q,Ce,Pe,yt,Rr){let Ii=Ze(232);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Ii.transformFlags|=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.typeParameters)|CA(Ii.heritageClauses)|CA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.jsDoc=void 0,Ii}function sk(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(My(Ce,Pe,yt,Rr,Ii),q):q}function aR(){return Te(233)}function WB(q,Ce){let Pe=Te(234);return Pe.expression=d().parenthesizeLeftSideOfAccess(q,!1),Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Pe.transformFlags|=zs(Pe.expression)|CA(Pe.typeArguments)|1024,Pe}function UP(q,Ce,Pe){return q.expression!==Ce||q.typeArguments!==Pe?vo(WB(Ce,Pe),q):q}function br(q,Ce){let Pe=Te(235);return Pe.expression=q,Pe.type=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.type)|1,Pe}function sn(q,Ce,Pe){return q.expression!==Ce||q.type!==Pe?vo(br(Ce,Pe),q):q}function ei(q){let Ce=Te(236);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function is(q,Ce){return hJ(q)?co(q,Ce):q.expression!==Ce?vo(ei(Ce),q):q}function Qs(q,Ce){let Pe=Te(239);return Pe.expression=q,Pe.type=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.type)|1,Pe}function Oo(q,Ce,Pe){return q.expression!==Ce||q.type!==Pe?vo(Qs(Ce,Pe),q):q}function Os(q){let Ce=Te(236);return Ce.flags|=64,Ce.expression=d().parenthesizeLeftSideOfAccess(q,!0),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function co(q,Ce){return pe.assert(!!(q.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),q.expression!==Ce?vo(Os(Ce),q):q}function Yc(q,Ce){let Pe=Te(237);switch(Pe.keywordToken=q,Pe.name=Ce,Pe.transformFlags|=zs(Pe.name),q){case 105:Pe.transformFlags|=1024;break;case 102:Pe.transformFlags|=32;break;default:return pe.assertNever(q)}return Pe.flowNode=void 0,Pe}function tu(q,Ce){return q.name!==Ce?vo(Yc(q.keywordToken,Ce),q):q}function $a(q,Ce){let Pe=Te(240);return Pe.expression=q,Pe.literal=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.literal)|1024,Pe}function ru(q,Ce,Pe){return q.expression!==Ce||q.literal!==Pe?vo($a(Ce,Pe),q):q}function gl(){let q=Te(241);return q.transformFlags|=1024,q}function kf(q,Ce){let Pe=Te(242);return Pe.statements=Ne(q),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.statements),Pe.jsDoc=void 0,Pe.locals=void 0,Pe.nextContainer=void 0,Pe}function Wb(q,Ce){return q.statements!==Ce?vo(kf(Ce,q.multiLine),q):q}function OB(q,Ce){let Pe=Te(244);return Pe.modifiers=nd(q),Pe.declarationList=Ki(Ce)?l5(Ce):Ce,Pe.transformFlags|=CA(Pe.modifiers)|zs(Pe.declarationList),Dw(Pe.modifiers)&128&&(Pe.transformFlags=1),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function p_(q,Ce,Pe){return q.modifiers!==Ce||q.declarationList!==Pe?vo(OB(Ce,Pe),q):q}function MB(){let q=Te(243);return q.jsDoc=void 0,q}function v1(q){let Ce=Te(245);return Ce.expression=d().parenthesizeExpressionOfExpressionStatement(q),Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function s5(q,Ce){return q.expression!==Ce?vo(v1(Ce),q):q}function GN(q,Ce,Pe){let yt=Te(246);return yt.expression=q,yt.thenStatement=jx(Ce),yt.elseStatement=jx(Pe),yt.transformFlags|=zs(yt.expression)|zs(yt.thenStatement)|zs(yt.elseStatement),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function ok(q,Ce,Pe,yt){return q.expression!==Ce||q.thenStatement!==Pe||q.elseStatement!==yt?vo(GN(Ce,Pe,yt),q):q}function o5(q,Ce){let Pe=Te(247);return Pe.statement=jx(q),Pe.expression=Ce,Pe.transformFlags|=zs(Pe.statement)|zs(Pe.expression),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function ak(q,Ce,Pe){return q.statement!==Ce||q.expression!==Pe?vo(o5(Ce,Pe),q):q}function gse(q,Ce){let Pe=Te(248);return Pe.expression=q,Pe.statement=jx(Ce),Pe.transformFlags|=zs(Pe.expression)|zs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function hpe(q,Ce,Pe){return q.expression!==Ce||q.statement!==Pe?vo(gse(Ce,Pe),q):q}function Ase(q,Ce,Pe,yt){let Rr=Te(249);return Rr.initializer=q,Rr.condition=Ce,Rr.incrementor=Pe,Rr.statement=jx(yt),Rr.transformFlags|=zs(Rr.initializer)|zs(Rr.condition)|zs(Rr.incrementor)|zs(Rr.statement),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function Mx(q,Ce,Pe,yt,Rr){return q.initializer!==Ce||q.condition!==Pe||q.incrementor!==yt||q.statement!==Rr?vo(Ase(Ce,Pe,yt,Rr),q):q}function a5(q,Ce,Pe){let yt=Te(250);return yt.initializer=q,yt.expression=Ce,yt.statement=jx(Pe),yt.transformFlags|=zs(yt.initializer)|zs(yt.expression)|zs(yt.statement),yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.flowNode=void 0,yt}function WU(q,Ce,Pe,yt){return q.initializer!==Ce||q.expression!==Pe||q.statement!==yt?vo(a5(Ce,Pe,yt),q):q}function a9(q,Ce,Pe,yt){let Rr=Te(251);return Rr.awaitModifier=q,Rr.initializer=Ce,Rr.expression=d().parenthesizeExpressionForDisallowedComma(Pe),Rr.statement=jx(yt),Rr.transformFlags|=zs(Rr.awaitModifier)|zs(Rr.initializer)|zs(Rr.expression)|zs(Rr.statement)|1024,q&&(Rr.transformFlags|=128),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function OU(q,Ce,Pe,yt,Rr){return q.awaitModifier!==Ce||q.initializer!==Pe||q.expression!==yt||q.statement!==Rr?vo(a9(Ce,Pe,yt,Rr),q):q}function qz(q){let Ce=Te(252);return Ce.label=Fm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function mpe(q,Ce){return q.label!==Ce?vo(qz(Ce),q):q}function MU(q){let Ce=Te(253);return Ce.label=Fm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function $z(q,Ce){return q.label!==Ce?vo(MU(Ce),q):q}function c5(q){let Ce=Te(254);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function dse(q,Ce){return q.expression!==Ce?vo(c5(Ce),q):q}function HU(q,Ce){let Pe=Te(255);return Pe.expression=q,Pe.statement=jx(Ce),Pe.transformFlags|=zs(Pe.expression)|zs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function eq(q,Ce,Pe){return q.expression!==Ce||q.statement!==Pe?vo(HU(Ce,Pe),q):q}function EQ(q,Ce){let Pe=Te(256);return Pe.expression=d().parenthesizeExpressionForDisallowedComma(q),Pe.caseBlock=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.caseBlock),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe.possiblyExhaustive=!1,Pe}function KP(q,Ce,Pe){return q.expression!==Ce||q.caseBlock!==Pe?vo(EQ(Ce,Pe),q):q}function tq(q,Ce){let Pe=Te(257);return Pe.label=Fm(q),Pe.statement=jx(Ce),Pe.transformFlags|=zs(Pe.label)|zs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function rq(q,Ce,Pe){return q.label!==Ce||q.statement!==Pe?vo(tq(Ce,Pe),q):q}function SQ(q){let Ce=Te(258);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function jP(q,Ce){return q.expression!==Ce?vo(SQ(Ce),q):q}function c9(q,Ce,Pe){let yt=Te(259);return yt.tryBlock=q,yt.catchClause=Ce,yt.finallyBlock=Pe,yt.transformFlags|=zs(yt.tryBlock)|zs(yt.catchClause)|zs(yt.finallyBlock),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function JF(q,Ce,Pe,yt){return q.tryBlock!==Ce||q.catchClause!==Pe||q.finallyBlock!==yt?vo(c9(Ce,Pe,yt),q):q}function UF(){let q=Te(260);return q.jsDoc=void 0,q.flowNode=void 0,q}function KF(q,Ce,Pe,yt){let Rr=Ze(261);return Rr.name=Fm(q),Rr.exclamationToken=Ce,Rr.type=Pe,Rr.initializer=Z0(yt),Rr.transformFlags|=NB(Rr.name)|zs(Rr.initializer)|(Rr.exclamationToken??Rr.type?1:0),Rr.jsDoc=void 0,Rr}function zP(q,Ce,Pe,yt,Rr){return q.name!==Ce||q.type!==yt||q.exclamationToken!==Pe||q.initializer!==Rr?vo(KF(Ce,Pe,yt,Rr),q):q}function l5(q,Ce=0){let Pe=Te(262);return Pe.flags|=Ce&7,Pe.declarations=Ne(q),Pe.transformFlags|=CA(Pe.declarations)|4194304,Ce&7&&(Pe.transformFlags|=263168),Ce&4&&(Pe.transformFlags|=4),Pe}function YU(q,Ce){return q.declarations!==Ce?vo(l5(Ce,q.flags),q):q}function u5(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=Ze(263);if(Au.modifiers=nd(q),Au.asteriskToken=Ce,Au.name=Fm(Pe),Au.typeParameters=nd(yt),Au.parameters=Ne(Rr),Au.type=Ii,Au.body=Jo,!Au.body||Dw(Au.modifiers)&128)Au.transformFlags=1;else{let cf=Dw(Au.modifiers)&1024,_2=!!Au.asteriskToken,gW=cf&&_2;Au.transformFlags=CA(Au.modifiers)|zs(Au.asteriskToken)|NB(Au.name)|CA(Au.typeParameters)|CA(Au.parameters)|zs(Au.type)|zs(Au.body)&-67108865|(gW?128:cf?256:_2?2048:0)|(Au.typeParameters||Au.type?1:0)|4194304}return Au.typeArguments=void 0,Au.jsDoc=void 0,Au.locals=void 0,Au.nextContainer=void 0,Au.endFlowNode=void 0,Au.returnFlowNode=void 0,Au}function PA(q,Ce,Pe,yt,Rr,Ii,Jo,Au){return q.modifiers!==Ce||q.asteriskToken!==Pe||q.name!==yt||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo||q.body!==Au?QU(u5(Ce,Pe,yt,Rr,Ii,Jo,Au),q):q}function QU(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),We(q,Ce)}function pse(q,Ce,Pe,yt,Rr){let Ii=Ze(264);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Dw(Ii.modifiers)&128?Ii.transformFlags=1:(Ii.transformFlags|=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.typeParameters)|CA(Ii.heritageClauses)|CA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.transformFlags&8192&&(Ii.transformFlags|=1)),Ii.jsDoc=void 0,Ii}function jF(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(pse(Ce,Pe,yt,Rr,Ii),q):q}function zF(q,Ce,Pe,yt,Rr){let Ii=Ze(265);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Ii.transformFlags=1,Ii.jsDoc=void 0,Ii}function ck(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(zF(Ce,Pe,yt,Rr,Ii),q):q}function bf(q,Ce,Pe,yt){let Rr=Ze(266);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.typeParameters=nd(Pe),Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function l0(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.type!==Rr?vo(bf(Ce,Pe,yt,Rr),q):q}function Ob(q,Ce,Pe){let yt=Ze(267);return yt.modifiers=nd(q),yt.name=Fm(Ce),yt.members=Ne(Pe),yt.transformFlags|=CA(yt.modifiers)|zs(yt.name)|CA(yt.members)|1,yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function u0(q,Ce,Pe,yt){return q.modifiers!==Ce||q.name!==Pe||q.members!==yt?vo(Ob(Ce,Pe,yt),q):q}function g5(q,Ce,Pe,yt=0){let Rr=Ze(268);return Rr.modifiers=nd(q),Rr.flags|=yt&2088,Rr.name=Ce,Rr.body=Pe,Dw(Rr.modifiers)&128?Rr.transformFlags=1:Rr.transformFlags|=CA(Rr.modifiers)|zs(Rr.name)|zs(Rr.body)|1,Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Ay(q,Ce,Pe,yt){return q.modifiers!==Ce||q.name!==Pe||q.body!==yt?vo(g5(Ce,Pe,yt,q.flags),q):q}function lk(q){let Ce=Te(269);return Ce.statements=Ne(q),Ce.transformFlags|=CA(Ce.statements),Ce.jsDoc=void 0,Ce}function Hy(q,Ce){return q.statements!==Ce?vo(lk(Ce),q):q}function HB(q){let Ce=Te(270);return Ce.clauses=Ne(q),Ce.transformFlags|=CA(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function Mw(q,Ce){return q.clauses!==Ce?vo(HB(Ce),q):q}function A5(q){let Ce=Ze(271);return Ce.name=Fm(q),Ce.transformFlags|=iie(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function d5(q,Ce){return q.name!==Ce?Cpe(A5(Ce),q):q}function Cpe(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function fse(q,Ce,Pe,yt){let Rr=Ze(272);return Rr.modifiers=nd(q),Rr.name=Fm(Pe),Rr.isTypeOnly=Ce,Rr.moduleReference=yt,Rr.transformFlags|=CA(Rr.modifiers)|iie(Rr.name)|zs(Rr.moduleReference),ZF(Rr.moduleReference)||(Rr.transformFlags|=1),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function l9(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.isTypeOnly!==Pe||q.name!==yt||q.moduleReference!==Rr?vo(fse(Ce,Pe,yt,Rr),q):q}function vQ(q,Ce,Pe,yt){let Rr=Te(273);return Rr.modifiers=nd(q),Rr.importClause=Ce,Rr.moduleSpecifier=Pe,Rr.attributes=Rr.assertClause=yt,Rr.transformFlags|=zs(Rr.importClause)|zs(Rr.moduleSpecifier),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function Sr(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.importClause!==Pe||q.moduleSpecifier!==yt||q.attributes!==Rr?vo(vQ(Ce,Pe,yt,Rr),q):q}function XU(q,Ce,Pe){let yt=Ze(274);return typeof q=="boolean"&&(q=q?156:void 0),yt.isTypeOnly=q===156,yt.phaseModifier=q,yt.name=Ce,yt.namedBindings=Pe,yt.transformFlags|=zs(yt.name)|zs(yt.namedBindings),q===156&&(yt.transformFlags|=1),yt.transformFlags&=-67108865,yt}function Hx(q,Ce,Pe,yt){return typeof Ce=="boolean"&&(Ce=Ce?156:void 0),q.phaseModifier!==Ce||q.name!==Pe||q.namedBindings!==yt?vo(XU(Ce,Pe,yt),q):q}function Hw(q,Ce){let Pe=Te(301);return Pe.elements=Ne(q),Pe.multiLine=Ce,Pe.token=132,Pe.transformFlags|=4,Pe}function u9(q,Ce,Pe){return q.elements!==Ce||q.multiLine!==Pe?vo(Hw(Ce,Pe),q):q}function qP(q,Ce){let Pe=Te(302);return Pe.name=q,Pe.value=Ce,Pe.transformFlags|=4,Pe}function dy(q,Ce,Pe){return q.name!==Ce||q.value!==Pe?vo(qP(Ce,Pe),q):q}function cR(q,Ce){let Pe=Te(303);return Pe.assertClause=q,Pe.multiLine=Ce,Pe}function YB(q,Ce,Pe){return q.assertClause!==Ce||q.multiLine!==Pe?vo(cR(Ce,Pe),q):q}function p5(q,Ce,Pe){let yt=Te(301);return yt.token=Pe??118,yt.elements=Ne(q),yt.multiLine=Ce,yt.transformFlags|=4,yt}function gA(q,Ce,Pe){return q.elements!==Ce||q.multiLine!==Pe?vo(p5(Ce,Pe,q.token),q):q}function IS(q,Ce){let Pe=Te(302);return Pe.name=q,Pe.value=Ce,Pe.transformFlags|=4,Pe}function g9(q,Ce,Pe){return q.name!==Ce||q.value!==Pe?vo(IS(Ce,Pe),q):q}function JU(q){let Ce=Ze(275);return Ce.name=q,Ce.transformFlags|=zs(Ce.name),Ce.transformFlags&=-67108865,Ce}function qF(q,Ce){return q.name!==Ce?vo(JU(Ce),q):q}function BQ(q){let Ce=Ze(281);return Ce.name=q,Ce.transformFlags|=zs(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function Ev(q,Ce){return q.name!==Ce?vo(BQ(Ce),q):q}function Yx(q){let Ce=Te(276);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function f5(q,Ce){return q.elements!==Ce?vo(Yx(Ce),q):q}function A9(q,Ce,Pe){let yt=Ze(277);return yt.isTypeOnly=q,yt.propertyName=Ce,yt.name=Pe,yt.transformFlags|=zs(yt.propertyName)|zs(yt.name),yt.transformFlags&=-67108865,yt}function FN(q,Ce,Pe,yt){return q.isTypeOnly!==Ce||q.propertyName!==Pe||q.name!==yt?vo(A9(Ce,Pe,yt),q):q}function wQ(q,Ce,Pe){let yt=Ze(278);return yt.modifiers=nd(q),yt.isExportEquals=Ce,yt.expression=Ce?d().parenthesizeRightSideOfBinary(64,void 0,Pe):d().parenthesizeExpressionOfExportDefault(Pe),yt.transformFlags|=CA(yt.modifiers)|zs(yt.expression),yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function I5(q,Ce,Pe){return q.modifiers!==Ce||q.expression!==Pe?vo(wQ(Ce,q.isExportEquals,Pe),q):q}function fa(q,Ce,Pe,yt,Rr){let Ii=Ze(279);return Ii.modifiers=nd(q),Ii.isTypeOnly=Ce,Ii.exportClause=Pe,Ii.moduleSpecifier=yt,Ii.attributes=Ii.assertClause=Rr,Ii.transformFlags|=CA(Ii.modifiers)|zs(Ii.exportClause)|zs(Ii.moduleSpecifier),Ii.transformFlags&=-67108865,Ii.jsDoc=void 0,Ii}function sa(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.isTypeOnly!==Pe||q.exportClause!==yt||q.moduleSpecifier!==Rr||q.attributes!==Ii?f_(fa(Ce,Pe,yt,Rr,Ii),q):q}function f_(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function UU(q){let Ce=Te(280);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function $F(q,Ce){return q.elements!==Ce?vo(UU(Ce),q):q}function TQ(q,Ce,Pe){let yt=Te(282);return yt.isTypeOnly=q,yt.propertyName=Fm(Ce),yt.name=Fm(Pe),yt.transformFlags|=zs(yt.propertyName)|zs(yt.name),yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function Ise(q,Ce,Pe,yt){return q.isTypeOnly!==Ce||q.propertyName!==Pe||q.name!==yt?vo(TQ(Ce,Pe,yt),q):q}function _pe(){let q=Ze(283);return q.jsDoc=void 0,q}function qo(q){let Ce=Te(284);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.transformFlags&=-67108865,Ce}function py(q,Ce){return q.expression!==Ce?vo(qo(Ce),q):q}function hu(q){return Te(q)}function vE(q,Ce,Pe=!1){let yt=KU(q,Pe?Ce&&d().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return yt.postfix=Pe,yt}function KU(q,Ce){let Pe=Te(q);return Pe.type=Ce,Pe}function $P(q,Ce,Pe){return Ce.type!==Pe?vo(vE(q,Pe,Ce.postfix),Ce):Ce}function Fo(q,Ce,Pe){return Ce.type!==Pe?vo(KU(q,Pe),Ce):Ce}function hse(q,Ce){let Pe=Ze(318);return Pe.parameters=nd(q),Pe.type=Ce,Pe.transformFlags=CA(Pe.parameters)|(Pe.type?1:0),Pe.jsDoc=void 0,Pe.locals=void 0,Pe.nextContainer=void 0,Pe.typeArguments=void 0,Pe}function nq(q,Ce,Pe){return q.parameters!==Ce||q.type!==Pe?vo(hse(Ce,Pe),q):q}function G0(q,Ce=!1){let Pe=Ze(323);return Pe.jsDocPropertyTags=nd(q),Pe.isArrayType=Ce,Pe}function uk(q,Ce,Pe){return q.jsDocPropertyTags!==Ce||q.isArrayType!==Pe?vo(G0(Ce,Pe),q):q}function lR(q){let Ce=Te(310);return Ce.type=q,Ce}function eW(q,Ce){return q.type!==Ce?vo(lR(Ce),q):q}function jU(q,Ce,Pe){let yt=Ze(324);return yt.typeParameters=nd(q),yt.parameters=Ne(Ce),yt.type=Pe,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt}function tW(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?vo(jU(Ce,Pe,yt),q):q}function hS(q){let Ce=Ube(q.kind);return q.tagName.escapedText===Ap(Ce)?q.tagName:Rt(Ce)}function Yw(q,Ce,Pe){let yt=Te(q);return yt.tagName=Ce,yt.comment=Pe,yt}function Sv(q,Ce,Pe){let yt=Ze(q);return yt.tagName=Ce,yt.comment=Pe,yt}function Mb(q,Ce,Pe,yt){let Rr=Yw(346,q??Rt("template"),yt);return Rr.constraint=Ce,Rr.typeParameters=Ne(Pe),Rr}function d9(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.constraint!==Pe||q.typeParameters!==yt||q.comment!==Rr?vo(Mb(Ce,Pe,yt,Rr),q):q}function h5(q,Ce,Pe,yt){let Rr=Sv(347,q??Rt("typedef"),yt);return Rr.typeExpression=Ce,Rr.fullName=Pe,Rr.name=N$e(Pe),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function iq(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.typeExpression!==Pe||q.fullName!==yt||q.comment!==Rr?vo(h5(Ce,Pe,yt,Rr),q):q}function m5(q,Ce,Pe,yt,Rr,Ii){let Jo=Sv(342,q??Rt("param"),Ii);return Jo.typeExpression=yt,Jo.name=Ce,Jo.isNameFirst=!!Rr,Jo.isBracketed=Pe,Jo}function rW(q,Ce=hS(q),Pe,yt,Rr,Ii,Jo){return q.tagName!==Ce||q.name!==Pe||q.isBracketed!==yt||q.typeExpression!==Rr||q.isNameFirst!==Ii||q.comment!==Jo?vo(m5(Ce,Pe,yt,Rr,Ii,Jo),q):q}function sq(q,Ce,Pe,yt,Rr,Ii){let Jo=Sv(349,q??Rt("prop"),Ii);return Jo.typeExpression=yt,Jo.name=Ce,Jo.isNameFirst=!!Rr,Jo.isBracketed=Pe,Jo}function eZ(q,Ce=hS(q),Pe,yt,Rr,Ii,Jo){return q.tagName!==Ce||q.name!==Pe||q.isBracketed!==yt||q.typeExpression!==Rr||q.isNameFirst!==Ii||q.comment!==Jo?vo(sq(Ce,Pe,yt,Rr,Ii,Jo),q):q}function ZN(q,Ce,Pe,yt){let Rr=Sv(339,q??Rt("callback"),yt);return Rr.typeExpression=Ce,Rr.fullName=Pe,Rr.name=N$e(Pe),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function nW(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.typeExpression!==Pe||q.fullName!==yt||q.comment!==Rr?vo(ZN(Ce,Pe,yt,Rr),q):q}function C5(q,Ce,Pe){let yt=Yw(340,q??Rt("overload"),Pe);return yt.typeExpression=Ce,yt}function p9(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.typeExpression!==Pe||q.comment!==yt?vo(C5(Ce,Pe,yt),q):q}function iW(q,Ce,Pe){let yt=Yw(329,q??Rt("augments"),Pe);return yt.class=Ce,yt}function Qw(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.class!==Pe||q.comment!==yt?vo(iW(Ce,Pe,yt),q):q}function tZ(q,Ce,Pe){let yt=Yw(330,q??Rt("implements"),Pe);return yt.class=Ce,yt}function Qx(q,Ce,Pe){let yt=Yw(348,q??Rt("see"),Pe);return yt.name=Ce,yt}function sW(q,Ce,Pe,yt){return q.tagName!==Ce||q.name!==Pe||q.comment!==yt?vo(Qx(Ce,Pe,yt),q):q}function HC(q){let Ce=Te(311);return Ce.name=q,Ce}function RQ(q,Ce){return q.name!==Ce?vo(HC(Ce),q):q}function Xx(q,Ce){let Pe=Te(312);return Pe.left=q,Pe.right=Ce,Pe.transformFlags|=zs(Pe.left)|zs(Pe.right),Pe}function _5(q,Ce,Pe){return q.left!==Ce||q.right!==Pe?vo(Xx(Ce,Pe),q):q}function zU(q,Ce){let Pe=Te(325);return Pe.name=q,Pe.text=Ce,Pe}function Jx(q,Ce,Pe){return q.name!==Ce?vo(zU(Ce,Pe),q):q}function mse(q,Ce){let Pe=Te(326);return Pe.name=q,Pe.text=Ce,Pe}function oq(q,Ce,Pe){return q.name!==Ce?vo(mse(Ce,Pe),q):q}function aq(q,Ce){let Pe=Te(327);return Pe.name=q,Pe.text=Ce,Pe}function ype(q,Ce,Pe){return q.name!==Ce?vo(aq(Ce,Pe),q):q}function cq(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.class!==Pe||q.comment!==yt?vo(tZ(Ce,Pe,yt),q):q}function y5(q,Ce,Pe){return Yw(q,Ce??Rt(Ube(q)),Pe)}function rZ(q,Ce,Pe=hS(Ce),yt){return Ce.tagName!==Pe||Ce.comment!==yt?vo(y5(q,Pe,yt),Ce):Ce}function Cse(q,Ce,Pe,yt){let Rr=Yw(q,Ce??Rt(Ube(q)),yt);return Rr.typeExpression=Pe,Rr}function b5(q,Ce,Pe=hS(Ce),yt,Rr){return Ce.tagName!==Pe||Ce.typeExpression!==yt||Ce.comment!==Rr?vo(Cse(q,Pe,yt,Rr),Ce):Ce}function qU(q,Ce){return Yw(328,q,Ce)}function Zh(q,Ce,Pe){return q.tagName!==Ce||q.comment!==Pe?vo(qU(Ce,Pe),q):q}function YC(q,Ce,Pe){let yt=Sv(341,q??Rt(Ube(341)),Pe);return yt.typeExpression=Ce,yt.locals=void 0,yt.nextContainer=void 0,yt}function lq(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.typeExpression!==Pe||q.comment!==yt?vo(YC(Ce,Pe,yt),q):q}function Hb(q,Ce,Pe,yt,Rr){let Ii=Yw(352,q??Rt("import"),Rr);return Ii.importClause=Ce,Ii.moduleSpecifier=Pe,Ii.attributes=yt,Ii.comment=Rr,Ii}function vv(q,Ce,Pe,yt,Rr,Ii){return q.tagName!==Ce||q.comment!==Ii||q.importClause!==Pe||q.moduleSpecifier!==yt||q.attributes!==Rr?vo(Hb(Ce,Pe,yt,Rr,Ii),q):q}function NQ(q){let Ce=Te(322);return Ce.text=q,Ce}function uR(q,Ce){return q.text!==Ce?vo(NQ(Ce),q):q}function oW(q,Ce){let Pe=Te(321);return Pe.comment=q,Pe.tags=nd(Ce),Pe}function f9(q,Ce,Pe){return q.comment!==Ce||q.tags!==Pe?vo(oW(Ce,Pe),q):q}function uq(q,Ce,Pe){let yt=Te(285);return yt.openingElement=q,yt.children=Ne(Ce),yt.closingElement=Pe,yt.transformFlags|=zs(yt.openingElement)|CA(yt.children)|zs(yt.closingElement)|2,yt}function bpe(q,Ce,Pe,yt){return q.openingElement!==Ce||q.children!==Pe||q.closingElement!==yt?vo(uq(Ce,Pe,yt),q):q}function TI(q,Ce,Pe){let yt=Te(286);return yt.tagName=q,yt.typeArguments=nd(Ce),yt.attributes=Pe,yt.transformFlags|=zs(yt.tagName)|CA(yt.typeArguments)|zs(yt.attributes)|2,yt.typeArguments&&(yt.transformFlags|=1),yt}function _se(q,Ce,Pe,yt){return q.tagName!==Ce||q.typeArguments!==Pe||q.attributes!==yt?vo(TI(Ce,Pe,yt),q):q}function $U(q,Ce,Pe){let yt=Te(287);return yt.tagName=q,yt.typeArguments=nd(Ce),yt.attributes=Pe,yt.transformFlags|=zs(yt.tagName)|CA(yt.typeArguments)|zs(yt.attributes)|2,Ce&&(yt.transformFlags|=1),yt}function DQ(q,Ce,Pe,yt){return q.tagName!==Ce||q.typeArguments!==Pe||q.attributes!==yt?vo($U(Ce,Pe,yt),q):q}function gq(q){let Ce=Te(288);return Ce.tagName=q,Ce.transformFlags|=zs(Ce.tagName)|2,Ce}function F0(q,Ce){return q.tagName!==Ce?vo(gq(Ce),q):q}function BE(q,Ce,Pe){let yt=Te(289);return yt.openingFragment=q,yt.children=Ne(Ce),yt.closingFragment=Pe,yt.transformFlags|=zs(yt.openingFragment)|CA(yt.children)|zs(yt.closingFragment)|2,yt}function eK(q,Ce,Pe,yt){return q.openingFragment!==Ce||q.children!==Pe||q.closingFragment!==yt?vo(BE(Ce,Pe,yt),q):q}function E5(q,Ce){let Pe=Te(12);return Pe.text=q,Pe.containsOnlyTriviaWhiteSpaces=!!Ce,Pe.transformFlags|=2,Pe}function wE(q,Ce,Pe){return q.text!==Ce||q.containsOnlyTriviaWhiteSpaces!==Pe?vo(E5(Ce,Pe),q):q}function tK(){let q=Te(290);return q.transformFlags|=2,q}function Ux(){let q=Te(291);return q.transformFlags|=2,q}function Aq(q,Ce){let Pe=Ze(292);return Pe.name=q,Pe.initializer=Ce,Pe.transformFlags|=zs(Pe.name)|zs(Pe.initializer)|2,Pe}function rK(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?vo(Aq(Ce,Pe),q):q}function Xw(q){let Ce=Ze(293);return Ce.properties=Ne(q),Ce.transformFlags|=CA(Ce.properties)|2,Ce}function dq(q,Ce){return q.properties!==Ce?vo(Xw(Ce),q):q}function yse(q){let Ce=Te(294);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|2,Ce}function pq(q,Ce){return q.expression!==Ce?vo(yse(Ce),q):q}function nK(q,Ce){let Pe=Te(295);return Pe.dotDotDotToken=q,Pe.expression=Ce,Pe.transformFlags|=zs(Pe.dotDotDotToken)|zs(Pe.expression)|2,Pe}function fq(q,Ce){return q.expression!==Ce?vo(nK(q.dotDotDotToken,Ce),q):q}function I9(q,Ce){let Pe=Te(296);return Pe.namespace=q,Pe.name=Ce,Pe.transformFlags|=zs(Pe.namespace)|zs(Pe.name)|2,Pe}function B1(q,Ce,Pe){return q.namespace!==Ce||q.name!==Pe?vo(I9(Ce,Pe),q):q}function LN(q,Ce){let Pe=Te(297);return Pe.expression=d().parenthesizeExpressionForDisallowedComma(q),Pe.statements=Ne(Ce),Pe.transformFlags|=zs(Pe.expression)|CA(Pe.statements),Pe.jsDoc=void 0,Pe}function iK(q,Ce,Pe){return q.expression!==Ce||q.statements!==Pe?vo(LN(Ce,Pe),q):q}function sK(q){let Ce=Te(298);return Ce.statements=Ne(q),Ce.transformFlags=CA(Ce.statements),Ce}function jA(q,Ce){return q.statements!==Ce?vo(sK(Ce),q):q}function Uo(q,Ce){let Pe=Te(299);switch(Pe.token=q,Pe.types=Ne(Ce),Pe.transformFlags|=CA(Pe.types),q){case 96:Pe.transformFlags|=1024;break;case 119:Pe.transformFlags|=1;break;default:return pe.assertNever(q)}return Pe}function mS(q,Ce){return q.types!==Ce?vo(Uo(q.token,Ce),q):q}function $m(q,Ce){let Pe=Te(300);return Pe.variableDeclaration=dk(q),Pe.block=Ce,Pe.transformFlags|=zs(Pe.variableDeclaration)|zs(Pe.block)|(q?0:64),Pe.locals=void 0,Pe.nextContainer=void 0,Pe}function S5(q,Ce,Pe){return q.variableDeclaration!==Ce||q.block!==Pe?vo($m(Ce,Pe),q):q}function oK(q,Ce){let Pe=Ze(304);return Pe.name=Fm(q),Pe.initializer=d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=NB(Pe.name)|zs(Pe.initializer),Pe.modifiers=void 0,Pe.questionToken=void 0,Pe.exclamationToken=void 0,Pe.jsDoc=void 0,Pe}function kQ(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?v5(oK(Ce,Pe),q):q}function v5(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function aK(q,Ce){let Pe=Ze(305);return Pe.name=Fm(q),Pe.objectAssignmentInitializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=iie(Pe.name)|zs(Pe.objectAssignmentInitializer)|1024,Pe.equalsToken=void 0,Pe.modifiers=void 0,Pe.questionToken=void 0,Pe.exclamationToken=void 0,Pe.jsDoc=void 0,Pe}function Ae(q,Ce,Pe){return q.name!==Ce||q.objectAssignmentInitializer!==Pe?Et(aK(Ce,Pe),q):q}function Et(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken,q.equalsToken=Ce.equalsToken),vo(q,Ce)}function fn(q){let Ce=Ze(306);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function qi(q,Ce){return q.expression!==Ce?vo(fn(Ce),q):q}function ic(q,Ce){let Pe=Ze(307);return Pe.name=Fm(q),Pe.initializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=zs(Pe.name)|zs(Pe.initializer)|1,Pe.jsDoc=void 0,Pe}function Oc(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?vo(ic(Ce,Pe),q):q}function zl(q,Ce,Pe){let yt=c.createBaseSourceFileNode(308);return yt.statements=Ne(q),yt.endOfFileToken=Ce,yt.flags|=Pe,yt.text="",yt.fileName="",yt.path="",yt.resolvedPath="",yt.originalFileName="",yt.languageVersion=1,yt.languageVariant=0,yt.scriptKind=0,yt.isDeclarationFile=!1,yt.hasNoDefaultLib=!1,yt.transformFlags|=CA(yt.statements)|zs(yt.endOfFileToken),yt.locals=void 0,yt.nextContainer=void 0,yt.endFlowNode=void 0,yt.nodeCount=0,yt.identifierCount=0,yt.symbolCount=0,yt.parseDiagnostics=void 0,yt.bindDiagnostics=void 0,yt.bindSuggestionDiagnostics=void 0,yt.lineMap=void 0,yt.externalModuleIndicator=void 0,yt.setExternalModuleIndicator=void 0,yt.pragmas=void 0,yt.checkJsDirective=void 0,yt.referencedFiles=void 0,yt.typeReferenceDirectives=void 0,yt.libReferenceDirectives=void 0,yt.amdDependencies=void 0,yt.commentDirectives=void 0,yt.identifiers=void 0,yt.packageJsonLocations=void 0,yt.packageJsonScope=void 0,yt.imports=void 0,yt.moduleAugmentations=void 0,yt.ambientModuleNames=void 0,yt.classifiableNames=void 0,yt.impliedNodeFormat=void 0,yt}function Vc(q){let Ce=Object.create(q.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Pe){this.redirectInfo.redirectTarget.id=Pe}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Pe){this.redirectInfo.redirectTarget.symbol=Pe}}}),Ce.redirectInfo=q,Ce}function _A(q){let Ce=Vc(q.redirectInfo);return Ce.flags|=q.flags&-17,Ce.fileName=q.fileName,Ce.path=q.path,Ce.resolvedPath=q.resolvedPath,Ce.originalFileName=q.originalFileName,Ce.packageJsonLocations=q.packageJsonLocations,Ce.packageJsonScope=q.packageJsonScope,Ce.emitNode=void 0,Ce}function Lh(q){let Ce=c.createBaseSourceFileNode(308);Ce.flags|=q.flags&-17;for(let Pe in q)if(!(Da(Ce,Pe)||!Da(q,Pe))){if(Pe==="emitNode"){Ce.emitNode=void 0;continue}Ce[Pe]=q[Pe]}return Ce}function g0(q){let Ce=q.redirectInfo?_A(q):Lh(q);return g(Ce,q),Ce}function Yy(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=g0(q);return Au.statements=Ne(Ce),Au.isDeclarationFile=Pe,Au.referencedFiles=yt,Au.typeReferenceDirectives=Rr,Au.hasNoDefaultLib=Ii,Au.libReferenceDirectives=Jo,Au.transformFlags=CA(Au.statements)|zs(Au.endOfFileToken),Au}function B5(q,Ce,Pe=q.isDeclarationFile,yt=q.referencedFiles,Rr=q.typeReferenceDirectives,Ii=q.hasNoDefaultLib,Jo=q.libReferenceDirectives){return q.statements!==Ce||q.isDeclarationFile!==Pe||q.referencedFiles!==yt||q.typeReferenceDirectives!==Rr||q.hasNoDefaultLib!==Ii||q.libReferenceDirectives!==Jo?vo(Yy(q,Ce,Pe,yt,Rr,Ii,Jo),q):q}function Qy(q){let Ce=Te(309);return Ce.sourceFiles=q,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function aW(q,Ce){return q.sourceFiles!==Ce?vo(Qy(Ce),q):q}function Iq(q,Ce=!1,Pe){let yt=Te(238);return yt.type=q,yt.isSpread=Ce,yt.tupleNameSource=Pe,yt}function QB(q){let Ce=Te(353);return Ce._children=q,Ce}function Hf(q){let Ce=Te(354);return Ce.original=q,gn(Ce,q),Ce}function cK(q,Ce){let Pe=Te(356);return Pe.expression=q,Pe.original=Ce,Pe.transformFlags|=zs(Pe.expression)|1,gn(Pe,Ce),Pe}function h9(q,Ce){return q.expression!==Ce?vo(cK(Ce,q.original),q):q}function Jw(){return Te(355)}function m9(q){if(sp(q)&&!SL(q)&&!q.original&&!q.emitNode&&!q.id){if(sde(q))return q.elements;if(fo(q)&&rEe(q.operatorToken))return[q.left,q.right]}return q}function xQ(q){let Ce=Te(357);return Ce.elements=Ne(Zr(q,m9)),Ce.transformFlags|=CA(Ce.elements),Ce}function lWe(q,Ce){return q.elements!==Ce?vo(xQ(Ce),q):q}function Epe(q,Ce){let Pe=Te(358);return Pe.expression=q,Pe.thisArg=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.thisArg),Pe}function hq(q,Ce,Pe){return q.expression!==Ce||q.thisArg!==Pe?vo(Epe(Ce,Pe),q):q}function Spe(q){let Ce=ht(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),oie(Ce,{...q.emitNode.autoGenerate}),Ce}function c2e(q){let Ce=ht(q.escapedText);Ce.flags|=q.flags&-17,Ce.jsDoc=q.jsDoc,Ce.flowNode=q.flowNode,Ce.symbol=q.symbol,Ce.transformFlags=q.transformFlags,g(Ce,q);let Pe=G3(q);return Pe&&xx(Ce,Pe),Ce}function cW(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),oie(Ce,{...q.emitNode.autoGenerate}),Ce}function mq(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),Ce}function lK(q){if(q===void 0)return q;if(ll(q))return g0(q);if(kp(q))return Spe(q);if(Ir(q))return c2e(q);if(TL(q))return cW(q);if(p(q))return mq(q);let Ce=z6(q.kind)?c.createBaseNode(q.kind):c.createBaseTokenNode(q.kind);Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q);for(let Pe in q)Da(Ce,Pe)||!Da(q,Pe)||(Ce[Pe]=q[Pe]);return Ce}function uWe(q,Ce,Pe){return Js(E1(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,kf(q,!0)),void 0,Pe?[Pe]:[])}function GQ(q,Ce,Pe){return Js(yv(void 0,void 0,Ce?[Ce]:[],void 0,void 0,kf(q,!0)),void 0,Pe?[Pe]:[])}function uK(){return oR(Ue("0"))}function vpe(q){return wQ(void 0,!1,q)}function Cq(q){return fa(void 0,!1,UU([TQ(!1,void 0,q)]))}function kl(q,Ce){return Ce==="null"?Ee.createStrictEquality(q,ir()):Ce==="undefined"?Ee.createStrictEquality(q,uK()):Ee.createStrictEquality(Pb(q),Tt(Ce))}function lW(q,Ce){return Ce==="null"?Ee.createStrictInequality(q,ir()):Ce==="undefined"?Ee.createStrictInequality(q,uK()):Ee.createStrictInequality(Pb(q),Tt(Ce))}function no(q,Ce,Pe){return _B(q)?RA(Gp(q,void 0,Ce),void 0,void 0,Pe):Js(rm(q,Ce),void 0,Pe)}function Bpe(q,Ce,Pe){return no(q,"bind",[Ce,...Pe])}function bse(q,Ce,Pe){return no(q,"call",[Ce,...Pe])}function Ese(q,Ce,Pe){return no(q,"apply",[Ce,Pe])}function FQ(q,Ce,Pe){return no(Rt(q),Ce,Pe)}function l2e(q,Ce){return no(q,"slice",Ce===void 0?[]:[y9(Ce)])}function gK(q,Ce){return no(q,"concat",Ce)}function gWe(q,Ce,Pe){return FQ("Object","defineProperty",[q,y9(Ce),Pe])}function Sse(q,Ce){return FQ("Object","getOwnPropertyDescriptor",[q,y9(Ce)])}function gk(q,Ce,Pe){return FQ("Reflect","get",Pe?[q,Ce,Pe]:[q,Ce])}function u2e(q,Ce,Pe,yt){return FQ("Reflect","set",yt?[q,Ce,Pe,yt]:[q,Ce,Pe])}function w5(q,Ce,Pe){return Pe?(q.push(oK(Ce,Pe)),!0):!1}function AWe(q,Ce){let Pe=[];w5(Pe,"enumerable",y9(q.enumerable)),w5(Pe,"configurable",y9(q.configurable));let yt=w5(Pe,"writable",y9(q.writable));yt=w5(Pe,"value",q.value)||yt;let Rr=w5(Pe,"get",q.get);return Rr=w5(Pe,"set",q.set)||Rr,pe.assert(!(yt&&Rr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),xd(Pe,!Ce)}function wpe(q,Ce){switch(q.kind){case 218:return OC(q,Ce);case 217:return C2(q,q.type,Ce);case 235:return sn(q,Ce,q.type);case 239:return Oo(q,Ce,q.type);case 236:return is(q,Ce);case 234:return UP(q,Ce,q.typeArguments);case 356:return h9(q,Ce)}}function g2e(q){return gI(q)&&sp(q)&&sp(XT(q))&&sp(DB(q))&&!jt(k3(q))&&!jt(hU(q))}function Tpe(q,Ce,Pe=63){return q&&s9e(q,Pe)&&!g2e(q)?wpe(q,Tpe(q.expression,Ce)):Ce}function T5(q,Ce,Pe){if(!Ce)return q;let yt=rq(Ce,Ce.label,FP(Ce.statement)?T5(q,Ce.statement):q);return Pe&&Pe(Ce),yt}function Ak(q,Ce){let Pe=QA(q);switch(Pe.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 210:return Pe.elements.length!==0;case 211:return Pe.properties.length>0;default:return!0}}function vse(q,Ce,Pe,yt=!1){let Rr=HI(q,63),Ii,Jo;return xy(Rr)?(Ii=st(),Jo=Rr):rr(Rr)?(Ii=st(),Jo=Pe!==void 0&&Pe<2?gn(Rt("_super"),Rr):Rr):tA(Rr)&8192?(Ii=uK(),Jo=d().parenthesizeLeftSideOfAccess(Rr,!1)):jo(Rr)?Ak(Rr.expression,yt)?(Ii=Lt(Ce),Jo=rm(gn(Ee.createAssignment(Ii,Rr.expression),Rr.expression),Rr.name),gn(Jo,Rr)):(Ii=Rr.expression,Jo=Rr):Yg(Rr)?Ak(Rr.expression,yt)?(Ii=Lt(Ce),Jo=Z_(gn(Ee.createAssignment(Ii,Rr.expression),Rr.expression),Rr.argumentExpression),gn(Jo,Rr)):(Ii=Rr.expression,Jo=Rr):(Ii=uK(),Jo=d().parenthesizeLeftSideOfAccess(q,!1)),{target:Jo,thisArg:Ii}}function VN(q,Ce){return rm(d_(xd([it(void 0,"value",[Ic(void 0,void 0,q,void 0,void 0,void 0)],kf([v1(Ce)]))])),"value")}function rt(q){return q.length>10?xQ(q):Ul(q,Ee.createComma)}function Kt(q,Ce,Pe,yt=0,Rr){let Ii=Rr?q&&Cw(q):Il(q);if(Ii&&Ir(Ii)&&!kp(Ii)){let Jo=XA(gn(lK(Ii),Ii),Ii.parent);return yt|=tA(Ii),Pe||(yt|=96),Ce||(yt|=3072),yt&&ti(Jo,yt),Jo}return _r(q)}function xr(q,Ce,Pe){return Kt(q,Ce,Pe,98304)}function Tn(q,Ce,Pe,yt){return Kt(q,Ce,Pe,32768,yt)}function Ai(q,Ce,Pe){return Kt(q,Ce,Pe,16384)}function Pi(q,Ce,Pe){return Kt(q,Ce,Pe)}function Ba(q,Ce,Pe,yt){let Rr=rm(q,sp(Ce)?Ce:lK(Ce));gn(Rr,Ce);let Ii=0;return yt||(Ii|=96),Pe||(Ii|=3072),Ii&&ti(Rr,Ii),Rr}function Xo(q,Ce,Pe,yt){return q&&Ga(Ce,32)?Ba(q,Kt(Ce),Pe,yt):Ai(Ce,Pe,yt)}function uo(q,Ce,Pe,yt){let Rr=bp(q,Ce,0,Pe);return ep(q,Ce,Rr,yt)}function Cc(q){return Zg(q.expression)&&q.expression.text==="use strict"}function Tl(){return N0(v1(Tt("use strict")))}function bp(q,Ce,Pe=0,yt){pe.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let Rr=!1,Ii=q.length;for(;PeAu&&_2.splice(Rr,0,...Ce.slice(Au,cf)),Au>Jo&&_2.splice(yt,0,...Ce.slice(Jo,Au)),Jo>Ii&&_2.splice(Pe,0,...Ce.slice(Ii,Jo)),Ii>0)if(Pe===0)_2.splice(0,0,...Ce.slice(0,Ii));else{let gW=new Map;for(let gR=0;gR=0;gR--){let yq=Ce[gR];gW.has(yq.expression.text)||_2.unshift(yq)}}return tN(q)?gn(Ne(_2,q.hasTrailingComma),q):q}function _9(q,Ce){let Pe;return typeof Ce=="number"?Pe=mn(Ce):Pe=Ce,Ds(q)?ks(q,Pe,q.name,q.constraint,q.default):Si(q)?su(q,Pe,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):$D(q)?ao(q,Pe,q.typeParameters,q.parameters,q.type):ss(q)?ba(q,Pe,q.name,q.questionToken,q.type):pi(q)?yr(q,Pe,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):hl(q)?Oi(q,Pe,q.name,q.questionToken,q.typeParameters,q.parameters,q.type):uu(q)?pa(q,Pe,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Tc(q)?Tu(q,Pe,q.parameters,q.body):Bg(q)?pt(q,Pe,q.name,q.parameters,q.type,q.body):Dg(q)?nr(q,Pe,q.name,q.parameters,q.body):w0(q)?Gi(q,Pe,q.parameters,q.type):UA(q)?gy(q,Pe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):lA(q)?ik(q,Pe,q.typeParameters,q.parameters,q.type,q.equalsGreaterThanToken,q.body):vd(q)?sk(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):Ch(q)?p_(q,Pe,q.declarationList):ih(q)?PA(q,Pe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):pm(q)?jF(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):g_(q)?ck(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):FB(q)?l0(q,Pe,q.name,q.typeParameters,q.type):V3(q)?u0(q,Pe,q.name,q.members):xh(q)?Ay(q,Pe,q.name,q.body):km(q)?l9(q,Pe,q.isTypeOnly,q.name,q.moduleReference):Mf(q)?Sr(q,Pe,q.importClause,q.moduleSpecifier,q.attributes):Cf(q)?I5(q,Pe,q.expression):Gh(q)?sa(q,Pe,q.isTypeOnly,q.exportClause,q.moduleSpecifier,q.attributes):pe.assertNever(q)}function Kx(q,Ce){return Si(q)?su(q,Ce,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):pi(q)?yr(q,Ce,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):uu(q)?pa(q,Ce,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Bg(q)?pt(q,Ce,q.name,q.parameters,q.type,q.body):Dg(q)?nr(q,Ce,q.name,q.parameters,q.body):vd(q)?sk(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pm(q)?jF(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pe.assertNever(q)}function uW(q,Ce){switch(q.kind){case 178:return pt(q,q.modifiers,Ce,q.parameters,q.type,q.body);case 179:return nr(q,q.modifiers,Ce,q.parameters,q.body);case 175:return pa(q,q.modifiers,q.asteriskToken,Ce,q.questionToken,q.typeParameters,q.parameters,q.type,q.body);case 174:return Oi(q,q.modifiers,Ce,q.questionToken,q.typeParameters,q.parameters,q.type);case 173:return yr(q,q.modifiers,Ce,q.questionToken??q.exclamationToken,q.type,q.initializer);case 172:return ba(q,q.modifiers,Ce,q.questionToken,q.type);case 304:return kQ(q,Ce,q.initializer)}}function nd(q){return q?Ne(q):void 0}function Fm(q){return typeof q=="string"?Rt(q):q}function y9(q){return typeof q=="string"?Tt(q):typeof q=="number"?Ue(q):typeof q=="boolean"?q?zt():Ht():q}function Z0(q){return q&&d().parenthesizeExpressionForDisallowedComma(q)}function _q(q){return typeof q=="number"?dt(q):q}function jx(q){return q&&FPt(q)?gn(g(MB(),q),q):q}function dk(q){return typeof q=="string"||q&&!nc(q)?KF(q,void 0,void 0,void 0):q}function vo(q,Ce){return q!==Ce&&(g(q,Ce),gn(q,Ce)),q}}function Ube(s){switch(s){case 345:return"type";case 343:return"returns";case 344:return"this";case 341:return"enum";case 331:return"author";case 333:return"class";case 334:return"public";case 335:return"private";case 336:return"protected";case 337:return"readonly";case 338:return"override";case 346:return"template";case 347:return"typedef";case 342:return"param";case 349:return"prop";case 339:return"callback";case 340:return"overload";case 329:return"augments";case 330:return"implements";case 352:return"import";default:return pe.fail(`Unsupported kind: ${pe.formatSyntaxKind(s)}`)}}var kx,$qe={};function APt(s,c){switch(kx||(kx=wb(99,!1,0)),s){case 15:kx.setText("`"+c+"`");break;case 16:kx.setText("`"+c+"${");break;case 17:kx.setText("}"+c+"${");break;case 18:kx.setText("}"+c+"`");break}let g=kx.scan();if(g===20&&(g=kx.reScanTemplateToken(!1)),kx.isUnterminated())return kx.setText(void 0),$qe;let d;switch(g){case 15:case 16:case 17:case 18:d=kx.getTokenValue();break}return d===void 0||kx.scan()!==1?(kx.setText(void 0),$qe):(kx.setText(void 0),d)}function NB(s){return s&&Ir(s)?iie(s):zs(s)}function iie(s){return zs(s)&-67108865}function dPt(s,c){return c|s.transformFlags&134234112}function zs(s){if(!s)return 0;let c=s.transformFlags&~e$e(s.kind);return rh(s)&&VI(s.name)?dPt(s.name,c):c}function CA(s){return s?s.transformFlags:0}function fU(s){let c=0;for(let g of s)c|=zs(g);s.transformFlags=c}function e$e(s){if(s>=183&&s<=206)return-2;switch(s){case 214:case 215:case 210:return-2147450880;case 268:return-1941676032;case 170:return-2147483648;case 220:return-2072174592;case 219:case 263:return-1937940480;case 262:return-2146893824;case 264:case 232:return-2147344384;case 177:return-1937948672;case 173:return-2013249536;case 175:case 178:case 179:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 169:case 172:case 174:case 180:case 181:case 182:case 265:case 266:return-2;case 211:return-2147278848;case 300:return-2147418112;case 207:case 208:return-2147450880;case 217:case 239:case 235:case 356:case 218:case 108:return-2147483648;case 212:case 213:return-2147483648;default:return-2147483648}}var Az=xLe();function $Ae(s){return s.flags|=16,s}var pPt={createBaseSourceFileNode:s=>$Ae(Az.createBaseSourceFileNode(s)),createBaseIdentifierNode:s=>$Ae(Az.createBaseIdentifierNode(s)),createBasePrivateIdentifierNode:s=>$Ae(Az.createBasePrivateIdentifierNode(s)),createBaseTokenNode:s=>$Ae(Az.createBaseTokenNode(s)),createBaseNode:s=>$Ae(Az.createBaseNode(s))},me=nie(4,pPt),dz;function t$e(s,c,g){return new(dz||(dz=ZC.getSourceMapSourceConstructor()))(s,c,g)}function ua(s,c){if(s.original!==c&&(s.original=c,c)){let g=c.emitNode;g&&(s.emitNode=r$e(g,s.emitNode))}return s}function r$e(s,c){let{flags:g,internalFlags:d,leadingComments:h,trailingComments:_,commentRange:S,sourceMapRange:R,tokenSourceMapRanges:T,constantValue:W,helpers:V,startsOnNewLine:M,snippetElement:ee,classThis:re,assignedName:ge}=s;if(c||(c={}),g&&(c.flags=g),d&&(c.internalFlags=d&-9),h&&(c.leadingComments=Or(h.slice(),c.leadingComments)),_&&(c.trailingComments=Or(_.slice(),c.trailingComments)),S&&(c.commentRange=S),R&&(c.sourceMapRange=R),T&&(c.tokenSourceMapRanges=IU(T,c.tokenSourceMapRanges)),W!==void 0&&(c.constantValue=W),V)for(let Ie of V)c.helpers=ps(c.helpers,Ie);return M!==void 0&&(c.startsOnNewLine=M),ee!==void 0&&(c.snippetElement=ee),re&&(c.classThis=re),ge&&(c.assignedName=ge),c}function IU(s,c){c||(c=[]);for(let g in s)c[g]=s[g];return c}function c_(s){if(s.emitNode)pe.assert(!(s.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(SL(s)){if(s.kind===308)return s.emitNode={annotatedNodes:[s]};let c=ms($l(ms(s)))??pe.fail("Could not determine parsed source file.");c_(c).annotatedNodes.push(s)}s.emitNode={}}return s.emitNode}function Ku(s){var c,g;let d=(g=(c=ms($l(s)))==null?void 0:c.emitNode)==null?void 0:g.annotatedNodes;if(d)for(let h of d)h.emitNode=void 0}function pz(s){let c=c_(s);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,s}function ti(s,c){return c_(s).flags=c,s}function Gw(s,c){let g=c_(s);return g.flags=g.flags|c,s}function sie(s,c){return c_(s).internalFlags=c,s}function N3(s,c){let g=c_(s);return g.internalFlags=g.internalFlags|c,s}function XT(s){var c;return((c=s.emitNode)==null?void 0:c.sourceMapRange)??s}function Hg(s,c){return c_(s).sourceMapRange=c,s}function fz(s,c){var g,d;return(d=(g=s.emitNode)==null?void 0:g.tokenSourceMapRanges)==null?void 0:d[c]}function Kbe(s,c,g){let d=c_(s),h=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return h[c]=g,s}function D3(s){var c;return(c=s.emitNode)==null?void 0:c.startsOnNewLine}function Md(s,c){return c_(s).startsOnNewLine=c,s}function DB(s){var c;return((c=s.emitNode)==null?void 0:c.commentRange)??s}function hh(s,c){return c_(s).commentRange=c,s}function k3(s){var c;return(c=s.emitNode)==null?void 0:c.leadingComments}function kB(s,c){return c_(s).leadingComments=c,s}function JT(s,c,g,d){return kB(s,Ft(k3(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function hU(s){var c;return(c=s.emitNode)==null?void 0:c.trailingComments}function x3(s,c){return c_(s).trailingComments=c,s}function Iz(s,c,g,d){return x3(s,Ft(hU(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function FLe(s,c){kB(s,k3(c)),x3(s,hU(c));let g=c_(c);return g.leadingComments=void 0,g.trailingComments=void 0,s}function ZLe(s){var c;return(c=s.emitNode)==null?void 0:c.constantValue}function LLe(s,c){let g=c_(s);return g.constantValue=c,s}function $Y(s,c){let g=c_(s);return g.helpers=Ft(g.helpers,c),s}function hN(s,c){if(jt(c)){let g=c_(s);for(let d of c)g.helpers=ps(g.helpers,d)}return s}function n$e(s,c){var g;let d=(g=s.emitNode)==null?void 0:g.helpers;return d?Ql(d,c):!1}function jbe(s){var c;return(c=s.emitNode)==null?void 0:c.helpers}function VLe(s,c,g){let d=s.emitNode,h=d&&d.helpers;if(!jt(h))return;let _=c_(c),S=0;for(let R=0;R0&&(h[R-S]=T)}S>0&&(h.length-=S)}function zbe(s){var c;return(c=s.emitNode)==null?void 0:c.snippetElement}function qbe(s,c){let g=c_(s);return g.snippetElement=c,s}function $be(s){return c_(s).internalFlags|=4,s}function PLe(s,c){let g=c_(s);return g.typeNode=c,s}function WLe(s){var c;return(c=s.emitNode)==null?void 0:c.typeNode}function xx(s,c){return c_(s).identifierTypeArguments=c,s}function G3(s){var c;return(c=s.emitNode)==null?void 0:c.identifierTypeArguments}function oie(s,c){return c_(s).autoGenerate=c,s}function i$e(s){var c;return(c=s.emitNode)==null?void 0:c.autoGenerate}function OLe(s,c){return c_(s).generatedImportReference=c,s}function MLe(s){var c;return(c=s.emitNode)==null?void 0:c.generatedImportReference}var HLe=(s=>(s.Field="f",s.Method="m",s.Accessor="a",s))(HLe||{});function YLe(s){let c=s.factory,g=FA(()=>sie(c.createTrue(),8)),d=FA(()=>sie(c.createFalse(),8));return{getUnscopedHelperName:h,createDecorateHelper:_,createMetadataHelper:S,createParamHelper:R,createESDecorateHelper:Ie,createRunInitializersHelper:_e,createAssignHelper:Ee,createAwaitHelper:Ne,createAsyncGeneratorHelper:Te,createAsyncDelegatorHelper:Ze,createAsyncValuesHelper:We,createRestHelper:Ue,createAwaiterHelper:$e,createExtendsHelper:Ye,createTemplateObjectHelper:Tt,createSpreadArrayHelper:ot,createPropKeyHelper:Qe,createSetFunctionNameHelper:mt,createValuesHelper:ht,createReadHelper:_t,createGeneratorHelper:Rt,createImportStarHelper:Lt,createImportStarCallbackHelper:Ke,createImportDefaultHelper:Pt,createExportStarHelper:_r,createClassPrivateFieldGetHelper:Gt,createClassPrivateFieldSetHelper:nt,createClassPrivateFieldInHelper:Dt,createAddDisposableResourceHelper:tr,createDisposeResourcesHelper:ur,createRewriteRelativeImportExtensionsHelper:Gr};function h(dt){return ti(c.createIdentifier(dt),8196)}function _(dt,pr,st,ir){s.requestEmitHelper(fPt);let zt=[];return zt.push(c.createArrayLiteralExpression(dt,!0)),zt.push(pr),st&&(zt.push(st),ir&&zt.push(ir)),c.createCallExpression(h("__decorate"),void 0,zt)}function S(dt,pr){return s.requestEmitHelper(IPt),c.createCallExpression(h("__metadata"),void 0,[c.createStringLiteral(dt),pr])}function R(dt,pr,st){return s.requestEmitHelper(hPt),gn(c.createCallExpression(h("__param"),void 0,[c.createNumericLiteral(pr+""),dt]),st)}function T(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),dt.name),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function W(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,pr))}function V(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(pr,c.createIdentifier("value")))])))}function M(dt){let pr=dt.computed?dt.name:Ir(dt.name)?c.createStringLiteralFromNode(dt.name):dt.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(pr,103,c.createIdentifier("obj"))))}function ee(dt,pr){let st=[];return st.push(M(dt)),pr.get&&st.push(W(dt)),pr.set&&st.push(V(dt)),c.createObjectLiteralExpression(st)}function re(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(dt.kind)),c.createPropertyAssignment(c.createIdentifier("name"),dt.name.computed?dt.name.name:c.createStringLiteralFromNode(dt.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),dt.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),dt.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),ee(dt.name,dt.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function ge(dt){return dt.kind==="class"?T(dt):re(dt)}function Ie(dt,pr,st,ir,zt,Ht){return s.requestEmitHelper(mPt),c.createCallExpression(h("__esDecorate"),void 0,[dt??c.createNull(),pr??c.createNull(),st,ge(ir),zt,Ht])}function _e(dt,pr,st){return s.requestEmitHelper(Gx),c.createCallExpression(h("__runInitializers"),void 0,st?[dt,pr,st]:[dt,pr])}function Ee(dt){return Mg(s.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,dt):(s.requestEmitHelper(CPt),c.createCallExpression(h("__assign"),void 0,dt))}function Ne(dt){return s.requestEmitHelper(td),c.createCallExpression(h("__await"),void 0,[dt])}function Te(dt,pr){return s.requestEmitHelper(td),s.requestEmitHelper(ede),(dt.emitNode||(dt.emitNode={})).flags|=1572864,c.createCallExpression(h("__asyncGenerator"),void 0,[pr?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),dt])}function Ze(dt){return s.requestEmitHelper(td),s.requestEmitHelper(NF),c.createCallExpression(h("__asyncDelegator"),void 0,[dt])}function We(dt){return s.requestEmitHelper(_Pt),c.createCallExpression(h("__asyncValues"),void 0,[dt])}function Ue(dt,pr,st,ir){s.requestEmitHelper(yPt);let zt=[],Ht=0;for(let Br=0;Br{let d="";for(let h=0;h=55296&&Kr<=56319&&T+6=56320&&Ni<=57343)return T=Sn,Dn+String.fromCharCode(Ni)}return Dn;case 120:for(;T1114111&&(it&&Ye(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Fr,T-Fr),hr=!0),T>=W?(it&&Ye(Z.Unexpected_end_of_text),hr=!0):Ue(T)===125?T++:(it&&Ye(Z.Unterminated_Unicode_escape_sequence),hr=!0),hr?(ge|=2048,R.substring(nr,T)):(ge|=8,jR(Dn))}function Gt(){if(T+5=0&&s1(Fr,s)){it+=_r(!0),nr=T;continue}if(Fr=Gt(),!(Fr>=0&&s1(Fr,s)))break;ge|=1024,it+=R.substring(nr,T),it+=jR(Fr),T+=6,nr=T}else break}return it+=R.substring(nr,T),it}function tr(){let it=re.length;if(it>=2&&it<=12){let nr=re.charCodeAt(0);if(nr>=97&&nr<=122){let Fr=Ny.get(re);if(Fr!==void 0)return ee=Fr}}return ee=80}function ur(it){let nr="",Fr=!1,Kr=!1;for(;;){let Dn=Ue(T);if(Dn===95){ge|=512,Fr?(Fr=!1,Kr=!0):Ye(Kr?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,T,1),T++;continue}if(Fr=!0,!wl(Dn)||Dn-48>=it)break;nr+=R[T],T++,Kr=!1}return Ue(T-1)===95&&Ye(Z.Numeric_separators_are_not_allowed_here,T-1,1),nr}function Gr(){return Ue(T)===110?(re+="n",ge&384&&(re=nz(re)+"n"),T++,10):(re=""+(ge&128?parseInt(re.slice(2),2):ge&256?parseInt(re.slice(2),8):+re),9)}function dt(){for(V=T,ge=0;;){if(M=T,T>=W)return ee=1;let it=Ze(T);if(T===0&&it===35&&$O(R,T)){if(T=iY(R,T),c)continue;return ee=6}switch(it){case 10:case 13:if(ge|=1,c){T++;continue}else return it===13&&T+1=0&&bd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Fr=Gt();return Fr>=0&&bd(Fr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Fr)+Dt(),ee=tr()):(Ye(Z.Invalid_character),T++,ee=0);case 35:if(T!==0&&R[T+1]==="!")return Ye(Z.can_only_be_used_at_the_start_of_a_file,T,2),T++,ee=0;let Kr=Ze(T+1);if(Kr===92){T++;let Sn=nt();if(Sn>=0&&bd(Sn,s))return re="#"+_r(!0)+Dt(),ee=81;let Ni=Gt();if(Ni>=0&&bd(Ni,s))return T+=6,ge|=1024,re="#"+String.fromCharCode(Ni)+Dt(),ee=81;T--}return bd(Kr,s)?(T++,ir(Kr,s)):(re="#",Ye(Z.Invalid_character,T++,iy(it))),ee=81;case 65533:return Ye(Z.File_appears_to_be_binary,0,0),T=W,ee=8;default:let Dn=ir(it,s);if(Dn)return ee=Dn;if(Iu(it)){T+=iy(it);continue}else if(Cl(it)){ge|=1,T+=iy(it);continue}let hr=iy(it);return Ye(Z.Invalid_character,T,hr),T+=hr,ee=0}}}function pr(){switch(Ne){case 0:return!0;case 1:return!1}return Ee!==3&&Ee!==4?!0:Ne===3?!1:Re.test(R.slice(V,T))}function st(){pe.assert(ee===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),T=M=V,ge=0;let it=Ze(T),nr=ir(it,99);return nr?ee=nr:(T+=iy(it),ee)}function ir(it,nr){let Fr=it;if(bd(Fr,nr)){for(T+=iy(Fr);T=W)return ee=1;let nr=Ue(T);if(nr===60)return Ue(T+1)===47?(T+=2,ee=31):(T++,ee=30);if(nr===123)return T++,ee=19;let Fr=0;for(;T0)break;dc(nr)||(Fr=T)}T++}return re=R.substring(V,T),Fr===-1?13:12}function Gl(){if(Id(ee)){for(;T=W)return ee=1;for(let nr=Ue(T);T=0&&Iu(Ue(T-1))&&!(T+1=W)return ee=1;let it=Ze(T);switch(T+=iy(it),it){case 9:case 11:case 12:case 32:for(;T=0&&bd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Fr=Gt();return Fr>=0&&bd(Fr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Fr)+Dt(),ee=tr()):(T++,ee=0)}if(bd(it,s)){let nr=it;for(;T=0),T=it,V=it,M=it,ee=0,re=void 0,ge=0}function on(it){_e+=it?1:-1}}function Uu(s,c){return s.codePointAt(c)}function iy(s){return s>=65536?2:s===-1?0:1}function sY(s){if(pe.assert(0<=s&&s<=1114111),s<=65535)return String.fromCharCode(s);let c=Math.floor((s-65536)/1024)+55296,g=(s-65536)%1024+56320;return String.fromCharCode(c,g)}var oY=String.fromCodePoint?s=>String.fromCodePoint(s):sY;function jR(s){return oY(s)}var aY=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),tt=new Set(["ASCII","ASCII_Hex_Digit","AHex","Alphabetic","Alpha","Any","Assigned","Bidi_Control","Bidi_C","Bidi_Mirrored","Bidi_M","Case_Ignorable","CI","Cased","Changes_When_Casefolded","CWCF","Changes_When_Casemapped","CWCM","Changes_When_Lowercased","CWL","Changes_When_NFKC_Casefolded","CWKCF","Changes_When_Titlecased","CWT","Changes_When_Uppercased","CWU","Dash","Default_Ignorable_Code_Point","DI","Deprecated","Dep","Diacritic","Dia","Emoji","Emoji_Component","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","Extender","Ext","Grapheme_Base","Gr_Base","Grapheme_Extend","Gr_Ext","Hex_Digit","Hex","IDS_Binary_Operator","IDSB","IDS_Trinary_Operator","IDST","ID_Continue","IDC","ID_Start","IDS","Ideographic","Ideo","Join_Control","Join_C","Logical_Order_Exception","LOE","Lowercase","Lower","Math","Noncharacter_Code_Point","NChar","Pattern_Syntax","Pat_Syn","Pattern_White_Space","Pat_WS","Quotation_Mark","QMark","Radical","Regional_Indicator","RI","Sentence_Terminal","STerm","Soft_Dotted","SD","Terminal_Punctuation","Term","Unified_Ideograph","UIdeo","Uppercase","Upper","Variation_Selector","VS","White_Space","space","XID_Continue","XIDC","XID_Start","XIDS"]),Jt=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),kr={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};kr.Script_Extensions=kr.Script;function Xr(s){return Ip(s)||Xp(s)}function ui(s){return cl(s,X7,BAe)}var Is=new Map([[99,"lib.esnext.full.d.ts"],[11,"lib.es2024.full.d.ts"],[10,"lib.es2023.full.d.ts"],[9,"lib.es2022.full.d.ts"],[8,"lib.es2021.full.d.ts"],[7,"lib.es2020.full.d.ts"],[6,"lib.es2019.full.d.ts"],[5,"lib.es2018.full.d.ts"],[4,"lib.es2017.full.d.ts"],[3,"lib.es2016.full.d.ts"],[2,"lib.es6.d.ts"]]);function Hs(s){let c=Mg(s);switch(c){case 99:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:return Is.get(c);default:return"lib.d.ts"}}function Rs(s){return s.start+s.length}function ja(s){return s.length===0}function ho(s,c){return c>=s.start&&c=s.pos&&c<=s.end}function Nd(s,c){return c.start>=s.start&&Rs(c)<=Rs(s)}function ed(s,c){return c.pos>=s.start&&c.end<=Rs(s)}function Og(s,c){return c.start>=s.pos&&Rs(c)<=s.end}function Nh(s,c){return o1(s,c)!==void 0}function o1(s,c){let g=IA(s,c);return g&&g.length===0?void 0:g}function Tb(s,c){return IE(s.start,s.length,c.start,c.length)}function q2(s,c,g){return IE(s.start,s.length,c,g)}function IE(s,c,g,d){let h=s+c,_=g+d;return g<=h&&_>=s}function zR(s,c){return c<=Rs(s)&&c>=s.start}function e3(s,c){return q2(c,s.pos,s.end-s.pos)}function IA(s,c){let g=Math.max(s.start,c.start),d=Math.min(Rs(s),Rs(c));return g<=d?wA(g,d):void 0}function EI(s){s=s.filter(d=>d.length>0).sort((d,h)=>d.start!==h.start?d.start-h.start:d.length-h.length);let c=[],g=0;for(;g=2&&s.charCodeAt(0)===95&&s.charCodeAt(1)===95?"_"+s:s}function Bc(s){let c=s;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function Vo(s){return Bc(s.escapedText)}function iv(s){let c=Ta(s.escapedText);return c?Gs(c,v0):void 0}function nf(s){return s.valueDeclaration&&pC(s.valueDeclaration)?Vo(s.valueDeclaration.name):Bc(s.escapedName)}function J6(s){let c=s.parent.parent;if(c){if(jh(c))return cY(c);switch(c.kind){case 244:if(c.declarationList&&c.declarationList.declarations[0])return cY(c.declarationList.declarations[0]);break;case 245:let g=c.expression;switch(g.kind===227&&g.operatorToken.kind===64&&(g=g.left),g.kind){case 212:return g.name;case 213:let d=g.argumentExpression;if(Ir(d))return d}break;case 218:return cY(c.expression);case 257:{if(jh(c.statement)||un(c.statement))return cY(c.statement);break}}}}function cY(s){let c=Il(s);return c&&Ir(c)?c:void 0}function t3(s,c){return!!(rh(s)&&Ir(s.name)&&Vo(s.name)===Vo(c)||Ch(s)&&jt(s.declarationList.declarations,g=>t3(g,c)))}function pF(s){return s.name||J6(s)}function rh(s){return!!s.name}function Cw(s){switch(s.kind){case 80:return s;case 349:case 342:{let{name:g}=s;if(g.kind===167)return g.right;break}case 214:case 227:{let g=s;switch(nI(g)){case 1:case 4:case 5:case 3:return zge(g.left);case 7:case 8:case 9:return g.arguments[1];default:return}}case 347:return pF(s);case 341:return J6(s);case 278:{let{expression:g}=s;return Ir(g)?g:void 0}case 213:let c=s;if(jge(c))return c.argumentExpression}return s.name}function Il(s){if(s!==void 0)return Cw(s)||(UA(s)||lA(s)||vd(s)?CB(s):void 0)}function CB(s){if(s.parent){if(fm(s.parent)||hg(s.parent))return s.parent.name;if(fo(s.parent)&&s===s.parent.right){if(Ir(s.parent.left))return s.parent.left;if(_p(s.parent.left))return zge(s.parent.left)}else if(nc(s.parent)&&Ir(s.parent.name))return s.parent.name}else return}function Rb(s){if(p1(s))return Me(s.modifiers,So)}function $R(s){if(Ga(s,98303))return Me(s.modifiers,Ig)}function _re(s,c){if(s.name)if(Ir(s.name)){let g=s.name.escapedText;return j6(s.parent,c).filter(d=>cS(d)&&Ir(d.name)&&d.name.escapedText===g)}else{let g=s.parent.parameters.indexOf(s);pe.assert(g>-1,"Parameters should always be in their parents' parameter list");let d=j6(s.parent,c).filter(cS);if(gZB(d)&&d.typeParameters.some(h=>h.name.escapedText===g))}function r3(s){return lY(s,!1)}function U6(s){return lY(s,!0)}function gJ(s){return!!c1(s,cS)}function K6(s){return c1(s,bz)}function uY(s){return dJ(s,n9e)}function bx(s){return c1(s,XPt)}function yre(s){return c1(s,h$e)}function Ex(s){return c1(s,h$e,!0)}function Es(s){return c1(s,m$e)}function Aa(s){return c1(s,m$e,!0)}function ha(s){return c1(s,C$e)}function Ua(s){return c1(s,C$e,!0)}function wc(s){return c1(s,_$e)}function hA(s){return c1(s,_$e,!0)}function Pd(s){return c1(s,t9e,!0)}function Kh(s){return c1(s,y$e)}function i2(s){return c1(s,y$e,!0)}function a1(s){return c1(s,aEe)}function Nb(s){return c1(s,b$e)}function sv(s){return c1(s,r9e)}function oP(s){return c1(s,ZB)}function fF(s){return c1(s,i9e)}function ov(s){let c=c1(s,gde);if(c&&c.typeExpression&&c.typeExpression.type)return c}function eN(s){let c=c1(s,gde);return!c&&Si(s)&&(c=de(vL(s),g=>!!g.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function AJ(s){let c=sv(s);if(c&&c.typeExpression)return c.typeExpression.type;let g=ov(s);if(g&&g.typeExpression){let d=g.typeExpression.type;if(mh(d)){let h=de(d.members,wg);return h&&h.type}if(x_(d)||mie(d))return d.type}}function j6(s,c){var g;if(!dne(s))return E;let d=(g=s.jsDoc)==null?void 0:g.jsDocCache;if(d===void 0||c){let h=vye(s,c);pe.assert(h.length<2||h[0]!==h[1]),d=er(h,_=>tR(_)?_.tags:_),c||(s.jsDoc??(s.jsDoc=[]),s.jsDoc.jsDocCache=d)}return d}function Sx(s){return j6(s,!1)}function c1(s,c,g){return de(j6(s,g),c)}function dJ(s,c){return Sx(s).filter(c)}function nye(s,c){return Sx(s).filter(g=>g.kind===c)}function pJ(s){return typeof s=="string"?s:s?.map(c=>c.kind===322?c.text:jFe(c)).join("")}function jFe(s){let c=s.kind===325?"link":s.kind===326?"linkcode":"linkplain",g=s.name?oy(s.name):"",d=s.name&&(s.text===""||s.text.startsWith("://"))?"":" ";return`{@${c} ${g}${d}${s.text}}`}function ZD(s){if(qL(s)){if(Cie(s.parent)){let c=KJ(s.parent);if(c&&B(c.tags))return er(c.tags,g=>ZB(g)?g.typeParameters:void 0)}return E}if(iS(s))return pe.assert(s.parent.kind===321),er(s.parent.tags,c=>ZB(c)?c.typeParameters:void 0);if(s.typeParameters||iWt(s)&&s.typeParameters)return s.typeParameters;if(wo(s)){let c=gAe(s);if(c.length)return c;let g=eN(s);if(g&&x_(g)&&g.typeParameters)return g.typeParameters}return E}function n3(s){return s.constraint?s.constraint:ZB(s.parent)&&s===s.parent.typeParameters[0]?s.parent.constraint:void 0}function _w(s){return s.kind===80||s.kind===81}function fJ(s){return s.kind===179||s.kind===178}function vx(s){return jo(s)&&!!(s.flags&64)}function IF(s){return Yg(s)&&!!(s.flags&64)}function _B(s){return Zl(s)&&!!(s.flags&64)}function GC(s){let c=s.kind;return!!(s.flags&64)&&(c===212||c===213||c===214||c===236)}function aP(s){return GC(s)&&!hv(s)&&!!s.questionDotToken}function gY(s){return aP(s.parent)&&s.parent.expression===s}function i3(s){return!GC(s.parent)||aP(s.parent)||s!==s.parent.expression}function IJ(s){return s.kind===227&&s.operatorToken.kind===61}function s2(s){return nh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="const"&&!s.typeArguments}function o2(s){return HI(s,8)}function hJ(s){return hv(s)&&!!(s.flags&64)}function AY(s){return s.kind===253||s.kind===252}function bre(s){return s.kind===281||s.kind===280}function dY(s){return s.kind===349||s.kind===342}function z6(s){return s>=167}function q6(s){return s>=0&&s<=166}function BL(s){return q6(s.kind)}function tN(s){return Da(s,"pos")&&Da(s,"end")}function pY(s){return 9<=s&&s<=15}function wL(s){return pY(s.kind)}function Ere(s){switch(s.kind){case 211:case 210:case 14:case 219:case 232:return!0}return!1}function LD(s){return 15<=s&&s<=18}function sge(s){return LD(s.kind)}function $6(s){let c=s.kind;return c===17||c===18}function eS(s){return uy(s)||R0(s)}function rN(s){switch(s.kind){case 277:return s.isTypeOnly||s.parent.parent.phaseModifier===156;case 275:return s.parent.phaseModifier===156;case 274:return s.phaseModifier===156;case 272:return s.isTypeOnly}return!1}function mJ(s){switch(s.kind){case 282:return s.isTypeOnly||s.parent.parent.isTypeOnly;case 279:return s.isTypeOnly&&!!s.moduleSpecifier&&!s.exportClause;case 281:return s.parent.isTypeOnly}return!1}function nN(s){return rN(s)||mJ(s)}function oge(s){return ji(s,nN)!==void 0}function Sre(s){return s.kind===11||LD(s.kind)}function e7(s){return Zg(s)||Ir(s)}function kp(s){var c;return Ir(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function TL(s){var c;return p(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function fY(s){let c=s.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function pC(s){return(pi(s)||NL(s))&&p(s.name)}function cP(s){return jo(s)&&p(s.name)}function VD(s){switch(s){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function IY(s){return!!(HY(s)&31)}function vre(s){return IY(s)||s===126||s===164||s===129}function Ig(s){return VD(s.kind)}function fC(s){let c=s.kind;return c===167||c===80}function VI(s){let c=s.kind;return c===80||c===81||c===11||c===9||c===168}function RL(s){let c=s.kind;return c===80||c===207||c===208}function bu(s){return!!s&&lP(s.kind)}function s3(s){return!!s&&(lP(s.kind)||fl(s))}function kd(s){return s&&iye(s.kind)}function hY(s){return s.kind===112||s.kind===97}function iye(s){switch(s){case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function lP(s){switch(s){case 174:case 180:case 324:case 181:case 182:case 185:case 318:case 186:return!0;default:return iye(s)}}function CJ(s){return ll(s)||_N(s)||$u(s)&&bu(s.parent)}function PI(s){let c=s.kind;return c===177||c===173||c===175||c===178||c===179||c===182||c===176||c===241}function xa(s){return s&&(s.kind===264||s.kind===232)}function yB(s){return s&&(s.kind===178||s.kind===179)}function t0(s){return pi(s)&&Nw(s)}function Bre(s){return wo(s)&&jY(s)?(!yP(s)||!wF(s.expression))&&!I3(s,!0):s.parent&&xa(s.parent)&&pi(s)&&!Nw(s)}function NL(s){switch(s.kind){case 175:case 178:case 179:return!0;default:return!1}}function dp(s){return Ig(s)||So(s)}function Bx(s){let c=s.kind;return c===181||c===180||c===172||c===174||c===182||c===178||c===179||c===355}function mY(s){return Bx(s)||PI(s)}function yw(s){let c=s.kind;return c===304||c===305||c===306||c===175||c===178||c===179}function uc(s){return EAe(s.kind)}function age(s){switch(s.kind){case 185:case 186:return!0}return!1}function Nu(s){if(s){let c=s.kind;return c===208||c===207}return!1}function CY(s){let c=s.kind;return c===210||c===211}function o3(s){let c=s.kind;return c===209||c===233}function uP(s){switch(s.kind){case 261:case 170:case 209:return!0}return!1}function _J(s){return nc(s)||Si(s)||gP(s)||EJ(s)}function yJ(s){return bJ(s)||wre(s)}function bJ(s){switch(s.kind){case 207:case 211:return!0}return!1}function gP(s){switch(s.kind){case 209:case 304:case 305:case 306:return!0}return!1}function wre(s){switch(s.kind){case 208:case 210:return!0}return!1}function EJ(s){switch(s.kind){case 209:case 233:case 231:case 210:case 211:case 80:case 212:case 213:return!0}return Jm(s,!0)}function Tre(s){let c=s.kind;return c===212||c===167||c===206}function SJ(s){let c=s.kind;return c===212||c===167}function Rre(s){return hF(s)||RF(s)}function hF(s){switch(s.kind){case 214:case 215:case 216:case 171:case 287:case 286:case 290:return!0;case 227:return s.operatorToken.kind===104;default:return!1}}function av(s){return s.kind===214||s.kind===215}function AP(s){let c=s.kind;return c===229||c===15}function D_(s){return sye(o2(s).kind)}function sye(s){switch(s){case 212:case 213:case 215:case 214:case 285:case 286:case 289:case 216:case 210:case 218:case 211:case 232:case 219:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 229:case 97:case 106:case 110:case 112:case 108:case 236:case 234:case 237:case 102:case 283:return!0;default:return!1}}function Nre(s){return oye(o2(s).kind)}function oye(s){switch(s){case 225:case 226:case 221:case 222:case 223:case 224:case 217:return!0;default:return sye(s)}}function iN(s){switch(s.kind){case 226:return!0;case 225:return s.operator===46||s.operator===47;default:return!1}}function cge(s){switch(s.kind){case 106:case 112:case 97:case 225:return!0;default:return wL(s)}}function un(s){return _Y(o2(s).kind)}function _Y(s){switch(s){case 228:case 230:case 220:case 227:case 231:case 235:case 233:case 357:case 356:case 239:return!0;default:return oye(s)}}function Ed(s){let c=s.kind;return c===217||c===235}function VT(s,c){switch(s.kind){case 249:case 250:case 251:case 247:case 248:return!0;case 257:return c&&VT(s.statement,c)}return!1}function sN(s){return Cf(s)||Gh(s)}function Db(s){return jt(s,sN)}function t7(s){return!DY(s)&&!Cf(s)&&!Ga(s,32)&&!s_(s)}function PT(s){return DY(s)||Cf(s)||Ga(s,32)}function DL(s){return s.kind===250||s.kind===251}function r7(s){return $u(s)||un(s)}function n7(s){return $u(s)}function hE(s){return u_(s)||un(s)}function lge(s){let c=s.kind;return c===269||c===268||c===80}function Dre(s){let c=s.kind;return c===269||c===268}function aye(s){let c=s.kind;return c===80||c===268}function wx(s){let c=s.kind;return c===276||c===275}function a3(s){return s.kind===268||s.kind===267}function mE(s){switch(s.kind){case 220:case 227:case 209:case 214:case 180:case 264:case 232:case 176:case 177:case 186:case 181:case 213:case 267:case 307:case 278:case 279:case 282:case 263:case 219:case 185:case 178:case 80:case 274:case 272:case 277:case 182:case 265:case 339:case 341:case 318:case 342:case 349:case 324:case 347:case 323:case 292:case 293:case 294:case 201:case 175:case 174:case 268:case 203:case 281:case 271:case 275:case 215:case 15:case 9:case 211:case 170:case 212:case 304:case 173:case 172:case 179:case 305:case 308:case 306:case 11:case 266:case 188:case 169:case 261:return!0;default:return!1}}function WI(s){switch(s.kind){case 220:case 242:case 180:case 270:case 300:case 176:case 195:case 177:case 186:case 181:case 249:case 250:case 251:case 263:case 219:case 185:case 178:case 182:case 339:case 341:case 318:case 324:case 347:case 201:case 175:case 174:case 268:case 179:case 308:case 266:return!0;default:return!1}}function CE(s){return s===220||s===209||s===264||s===232||s===176||s===177||s===267||s===307||s===282||s===263||s===219||s===178||s===274||s===272||s===277||s===265||s===292||s===175||s===174||s===268||s===271||s===275||s===281||s===170||s===304||s===173||s===172||s===179||s===305||s===266||s===169||s===261||s===347||s===339||s===349||s===203}function kre(s){return s===263||s===283||s===264||s===265||s===266||s===267||s===268||s===273||s===272||s===279||s===278||s===271}function uge(s){return s===253||s===252||s===260||s===247||s===245||s===243||s===250||s===251||s===249||s===246||s===257||s===254||s===256||s===258||s===259||s===244||s===248||s===255||s===354}function jh(s){return s.kind===169?s.parent&&s.parent.kind!==346||wo(s):CE(s.kind)}function gge(s){return kre(s.kind)}function vJ(s){return uge(s.kind)}function Lc(s){let c=s.kind;return uge(c)||kre(c)||Age(s)}function Age(s){return s.kind!==242||s.parent!==void 0&&(s.parent.kind===259||s.parent.kind===300)?!1:!mP(s)}function xre(s){let c=s.kind;return uge(c)||kre(c)||c===242}function yY(s){let c=s.kind;return c===284||c===167||c===80}function kL(s){let c=s.kind;return c===110||c===80||c===212||c===296}function BJ(s){let c=s.kind;return c===285||c===295||c===286||c===12||c===289}function wJ(s){let c=s.kind;return c===292||c===294}function TJ(s){let c=s.kind;return c===11||c===295}function eI(s){let c=s.kind;return c===287||c===286}function c3(s){let c=s.kind;return c===287||c===286||c===290}function RJ(s){let c=s.kind;return c===297||c===298}function l3(s){return s.kind>=310&&s.kind<=352}function i7(s){return s.kind===321||s.kind===320||s.kind===322||Tx(s)||u3(s)||yU(s)||qL(s)}function u3(s){return s.kind>=328&&s.kind<=352}function cv(s){return s.kind===179}function bB(s){return s.kind===178}function Xm(s){if(!dne(s))return!1;let{jsDoc:c}=s;return!!c&&c.length>0}function If(s){return!!s.type}function WT(s){return!!s.initializer}function l1(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:case 307:return!0;default:return!1}}function bY(s){return s.kind===292||s.kind===294||yw(s)}function s7(s){return s.kind===184||s.kind===234}var IC=1073741823;function Gre(s){let c=IC;for(let g of s){if(!g.length)continue;let d=0;for(;d0?g.parent.parameters[h-1]:void 0,S=c.text,R=_?Nn(n2(S,Yu(S,_.end+1,!1,!0)),fE(S,s.pos)):n2(S,Yu(S,s.pos,!1,!0));return jt(R)&&cye(Ei(R),c)}let d=g&&Zge(g,c);return!!F(d,h=>cye(h,c))}var Lre=[],PD="tslib",EY=160,Vre=1e6,dge=500;function Cp(s,c){let g=s.declarations;if(g){for(let d of g)if(d.kind===c)return d}}function pge(s,c){return Me(s.declarations||E,g=>g.kind===c)}function qu(s){let c=new Map;if(s)for(let g of s)c.set(g.escapedName,g);return c}function bw(s){return(s.flags&33554432)!==0}function WD(s){return!!(s.flags&1536)&&s.escapedName.charCodeAt(0)===34}var o7=fge();function fge(){var s="";let c=g=>s+=g;return{getText:()=>s,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(g,d)=>c(g),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>s.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!s.length&&dc(s.charCodeAt(s.length-1)),writeLine:()=>s+=" ",increaseIndent:Dc,decreaseIndent:Dc,clear:()=>s=""}}function NJ(s,c){return s.configFilePath!==c.configFilePath||zFe(s,c)}function zFe(s,c){return S0(s,c,Y$e)}function Ige(s,c){return S0(s,c,BWt)}function S0(s,c,g){return s!==c&&g.some(d=>!OAe(K7(s,d),K7(c,d)))}function Ew(s,c){for(;;){let g=c(s);if(g==="quit")return;if(g!==void 0)return g;if(ll(s))return;s=s.parent}}function Dh(s,c){let g=s.entries();for(let[d,h]of g){let _=c(h,d);if(_)return _}}function SB(s,c){let g=s.keys();for(let d of g){let h=c(d);if(h)return h}}function a7(s,c){s.forEach((g,d)=>{c.set(d,g)})}function dP(s){let c=o7.getText();try{return s(o7),o7.getText()}finally{o7.clear(),o7.writeKeyword(c)}}function DJ(s){return s.end-s.pos}function Pre(s,c){return s.path===c.path&&!s.prepend==!c.prepend&&!s.circular==!c.circular}function hge(s,c){return s===c||s.resolvedModule===c.resolvedModule||!!s.resolvedModule&&!!c.resolvedModule&&s.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&s.resolvedModule.extension===c.resolvedModule.extension&&s.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&s.resolvedModule.originalPath===c.resolvedModule.originalPath&&lye(s.resolvedModule.packageId,c.resolvedModule.packageId)&&s.alternateResult===c.alternateResult}function xL(s){return s.resolvedModule}function c7(s){return s.resolvedTypeReferenceDirective}function kJ(s,c,g,d,h){var _;let S=(_=c.getResolvedModule(s,g,d))==null?void 0:_.alternateResult,R=S&&(k_(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[S]]:[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings,[S,S.includes(Vx+"@types/")?`@types/${Die(h)}`:h]]),T=R?wu(void 0,R[0],...R[1]):c.typesPackageExists(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,h,Die(h)):c.packageBundlesTypes(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,h,g):wu(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,g,Die(h));return T&&(T.repopulateInfo=()=>({moduleReference:g,mode:d,packageName:h===g?void 0:h})),T}function l7(s){let c=QT(s.fileName),g=s.packageJsonScope,d=c===".ts"?".mts":c===".js"?".mjs":void 0,h=g&&!g.contents.packageJsonContent.type?d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,d,Ro(g.packageDirectory,"package.json")):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Ro(g.packageDirectory,"package.json")):d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module,d):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module);return h.repopulateInfo=()=>!0,h}function lye(s,c){return s===c||!!s&&!!c&&s.name===c.name&&s.subModuleName===c.subModuleName&&s.version===c.version&&s.peerDependencies===c.peerDependencies}function xJ({name:s,subModuleName:c}){return c?`${s}/${c}`:s}function oN(s){return`${xJ(s)}@${s.version}${s.peerDependencies??""}`}function mge(s,c){return s===c||s.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!s.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&s.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!s.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&s.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function Wre(s,c,g,d){pe.assert(s.length===c.length);for(let h=0;h=0),rn(c)[s]}function _ge(s){let c=ms(s),g=Ra(c,s.pos);return`${c.fileName}(${g.line+1},${g.character+1})`}function vY(s,c){pe.assert(s>=0);let g=rn(c),d=s,h=c.text;if(d+1===g.length)return h.length-1;{let _=g[d],S=g[d+1]-1;for(pe.assert(Cl(h.charCodeAt(S)));_<=S&&Cl(h.charCodeAt(S));)S--;return S}}function u7(s,c,g){return!(g&&g(c))&&!s.identifiers.has(c)}function sf(s){return s===void 0?!0:s.pos===s.end&&s.pos>=0&&s.kind!==1}function u1(s){return!sf(s)}function yge(s,c){return Ds(s)?c===s.expression:fl(s)?c===s.modifiers:ss(s)?c===s.initializer:pi(s)?c===s.questionToken&&t0(s):fm(s)?c===s.modifiers||c===s.questionToken||c===s.exclamationToken||BY(s.modifiers,c,dp):a0(s)?c===s.equalsToken||c===s.modifiers||c===s.questionToken||c===s.exclamationToken||BY(s.modifiers,c,dp):uu(s)?c===s.exclamationToken:Tc(s)?c===s.typeParameters||c===s.type||BY(s.typeParameters,c,Ds):Bg(s)?c===s.typeParameters||BY(s.typeParameters,c,Ds):Dg(s)?c===s.typeParameters||c===s.type||BY(s.typeParameters,c,Ds):oEe(s)?c===s.modifiers||BY(s.modifiers,c,dp):!1}function BY(s,c,g){return!s||Ki(c)||!g(c)?!1:k(s,c)}function uye(s,c,g){if(c===void 0||c.length===0)return s;let d=0;for(;d[`${Ra(s,S.range.end).line}`,S])),d=new Map;return{getUnusedExpectations:h,markUsed:_};function h(){return Do(g.entries()).filter(([S,R])=>R.type===0&&!d.get(S)).map(([S,R])=>R)}function _(S){return g.has(`${S}`)?(d.set(`${S}`,!0),!0):!1}}function MD(s,c,g){if(sf(s))return s.pos;if(l3(s)||s.kind===12)return Yu((c??ms(s)).text,s.pos,!1,!0);if(g&&Xm(s))return MD(s.jsDoc[0],c);if(s.kind===353){c??(c=ms(s));let d=Nc(E$e(s,c));if(d)return MD(d,c,g)}return Yu((c??ms(s)).text,s.pos,!1,!1,GY(s))}function Hre(s,c){let g=!sf(s)&&LB(s)?be(s.modifiers,So):void 0;return g?Yu((c||ms(s)).text,g.end):MD(s,c)}function Sge(s,c){let g=!sf(s)&&LB(s)&&s.modifiers?Ei(s.modifiers):void 0;return g?Yu((c||ms(s)).text,g.end):MD(s,c)}function mF(s,c,g=!1){return TY(s.text,c,g)}function qFe(s){return!!ji(s,W3)}function wY(s){return!!(Gh(s)&&s.exportClause&&tk(s.exportClause)&&lv(s.exportClause.name))}function HD(s){return s.kind===11?s.text:Bc(s.escapedText)}function CF(s){return s.kind===11?Ap(s.text):s.escapedText}function lv(s){return(s.kind===11?s.text:s.escapedText)==="default"}function TY(s,c,g=!1){if(sf(c))return"";let d=s.substring(g?c.pos:Yu(s,c.pos),c.end);return qFe(c)&&(d=d.split(/\r\n|\n|\r/).map(h=>h.replace(/^\s*\*/,"").trimStart()).join(` +`)),d}function xp(s,c=!1){return mF(ms(s),s,c)}function dye(s){return s.pos}function fP(s,c){return Wc(s,c,dye,Zt)}function tA(s){let c=s.emitNode;return c&&c.flags||0}function g1(s){let c=s.emitNode;return c&&c.internalFlags||0}var Yre=FA(()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Iterator:new Map(Object.entries({es2015:E})),AsyncIterator:new Map(Object.entries({es2015:E})),ArrayBuffer:new Map(Object.entries({es2024:["maxByteLength","resizable","resize","detached","transfer","transferToFixedLength"]})),Atomics:new Map(Object.entries({es2017:["add","and","compareExchange","exchange","isLockFree","load","or","store","sub","wait","notify","xor"],es2024:["waitAsync"],esnext:["pause"]})),SharedArrayBuffer:new Map(Object.entries({es2017:["byteLength","slice"],es2024:["growable","maxByteLength","grow"]})),AsyncIterable:new Map(Object.entries({es2018:E})),AsyncIterableIterator:new Map(Object.entries({es2018:E})),AsyncGenerator:new Map(Object.entries({es2018:E})),AsyncGeneratorFunction:new Map(Object.entries({es2018:E})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"],es2024:["unicodeSets"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"],esnext:["fromAsync"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"],es2024:["groupBy"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],esnext:["f16round"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),MapConstructor:new Map(Object.entries({es2024:["groupBy"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"],esnext:["union","intersection","difference","symmetricDifference","isSubsetOf","isSupersetOf","isDisjointFrom"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"],es2024:["withResolvers"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"],es2024:["isWellFormed","toWellFormed"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:E,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"],esnext:["metadata","dispose","asyncDispose"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],esnext:["setFloat16","getFloat16"]})),BigInt:new Map(Object.entries({es2020:E})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float16Array:new Map(Object.entries({esnext:E})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigInt64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigUint64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),A7=(s=>(s[s.None=0]="None",s[s.NeverAsciiEscape=1]="NeverAsciiEscape",s[s.JsxAttributeEscape=2]="JsxAttributeEscape",s[s.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",s[s.AllowNumericSeparator=8]="AllowNumericSeparator",s))(A7||{});function vge(s,c,g){if(c&&$Fe(s,g))return mF(c,s);switch(s.kind){case 11:{let d=g&2?Oye:g&1||tA(s)&16777216?YT:Sne;return s.singleQuote?"'"+d(s.text,39)+"'":'"'+d(s.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=g&1||tA(s)&16777216?YT:Sne,h=s.rawText??Pye(d(s.text,96));switch(s.kind){case 15:return"`"+h+"`";case 16:return"`"+h+"${";case 17:return"}"+h+"${";case 18:return"}"+h+"`"}break}case 9:case 10:return s.text;case 14:return g&4&&s.isUnterminated?s.text+(s.text.charCodeAt(s.text.length-1)===92?" /":"/"):s.text}return pe.fail(`Literal kind '${s.kind}' not accounted for.`)}function $Fe(s,c){if(sp(s)||!s.parent||c&4&&s.isUnterminated)return!1;if(mC(s)){if(s.numericLiteralFlags&26656)return!1;if(s.numericLiteralFlags&512)return!!(c&8)}return!eQ(s)}function Bge(s){return Xs(s)?`"${YT(s)}"`:""+s}function vw(s){return gp(s).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function ZJ(s){return(dm(s)&7)!==0||Qre(s)}function Qre(s){let c=Rw(s);return c.kind===261&&c.parent.kind===300}function s_(s){return xh(s)&&(s.name.kind===11||vB(s))}function RY(s){return xh(s)&&s.name.kind===11}function Xre(s){return xh(s)&&Zg(s.name)}function wge(s){return xh(s)||Ir(s)}function NY(s){return Tge(s.valueDeclaration)}function Tge(s){return!!s&&s.kind===268&&!s.body}function Rge(s){return s.kind===308||s.kind===268||s3(s)}function vB(s){return!!(s.flags&2048)}function _F(s){return s_(s)&&Jre(s)}function Jre(s){switch(s.parent.kind){case 308:return xm(s.parent);case 269:return s_(s.parent.parent)&&ll(s.parent.parent.parent)&&!xm(s.parent.parent.parent)}return!1}function LJ(s){var c;return(c=s.declarations)==null?void 0:c.find(g=>!_F(g)&&!(xh(g)&&vB(g)))}function eZe(s){return s===1||100<=s&&s<=199}function g3(s,c){return xm(s)||eZe(i0(c))&&!!s.commonJsModuleIndicator}function Ure(s,c){switch(s.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return s.isDeclarationFile?!1:!!(a_(c,"alwaysStrict")||tWt(s.statements)||xm(s)||sS(c))}function VJ(s){return!!(s.flags&33554432)||Ga(s,128)}function PJ(s,c){switch(s.kind){case 308:case 270:case 300:case 268:case 249:case 250:case 251:case 177:case 175:case 178:case 179:case 263:case 219:case 220:case 173:case 176:return!0;case 242:return!s3(c)}return!1}function Kre(s){switch(pe.type(s),s.kind){case 339:case 347:case 324:return!0;default:return jre(s)}}function jre(s){switch(pe.type(s),s.kind){case 180:case 181:case 174:case 182:case 185:case 186:case 318:case 264:case 232:case 265:case 266:case 346:case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function IP(s){switch(s.kind){case 273:case 272:return!0;default:return!1}}function Nge(s){return IP(s)||CP(s)}function d7(s){return IP(s)||ine(s)}function p7(s){switch(s.kind){case 273:case 272:case 244:case 264:case 263:case 268:case 266:case 265:case 267:return!0;default:return!1}}function Dge(s){return DY(s)||xh(s)||Um(s)||Up(s)}function DY(s){return IP(s)||Gh(s)}function f7(s){return ji(s.parent,c=>!!(Cet(c)&1))}function tS(s){return ji(s.parent,c=>PJ(c,c.parent))}function kge(s,c){let g=tS(s);for(;g;)c(g),g=tS(g)}function Wd(s){return!s||DJ(s)===0?"(Missing)":xp(s)}function xge(s){return s.declaration?Wd(s.declaration.parameters[0].name):void 0}function kY(s){return s.kind===168&&!d1(s.expression)}function xY(s){var c;switch(s.kind){case 80:case 81:return(c=s.emitNode)!=null&&c.autoGenerate?void 0:s.escapedText;case 11:case 9:case 10:case 15:return Ap(s.text);case 168:return d1(s.expression)?Ap(s.expression.text):void 0;case 296:return oS(s);default:return pe.assertNever(s)}}function hP(s){return pe.checkDefined(xY(s))}function oy(s){switch(s.kind){case 110:return"this";case 81:case 80:return DJ(s)===0?Vo(s):xp(s);case 167:return oy(s.left)+"."+oy(s.right);case 212:return Ir(s.name)||p(s.name)?oy(s.expression)+"."+oy(s.name):pe.assertNever(s.name);case 312:return oy(s.left)+"#"+oy(s.right);case 296:return oy(s.namespace)+":"+oy(s.name);default:return pe.assertNever(s)}}function mo(s,c,...g){let d=ms(s);return _E(d,s,c,...g)}function A3(s,c,g,...d){let h=Yu(s.text,c.pos);return qh(s,h,c.end-h,g,...d)}function _E(s,c,g,...d){let h=qa(s,c);return qh(s,h.start,h.length,g,...d)}function Bw(s,c,g,d){let h=qa(s,c);return ze(s,h.start,h.length,g,d)}function ie(s,c,g,d){let h=Yu(s.text,c.pos);return ze(s,h,c.end-h,g,d)}function he(s,c,g){pe.assertGreaterThanOrEqual(c,0),pe.assertGreaterThanOrEqual(g,0),pe.assertLessThanOrEqual(c,s.length),pe.assertLessThanOrEqual(c+g,s.length)}function ze(s,c,g,d,h){return he(s.text,c,g),{file:s,start:c,length:g,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:h,canonicalHead:d.canonicalHead}}function Ut(s,c,g){return{file:s,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:g}}function Qr(s){return typeof s.messageText=="string"?{code:s.code,category:s.category,messageText:s.messageText,next:s.next}:s.messageText}function kn(s,c,g){return{file:s,start:c.pos,length:c.end-c.pos,code:g.code,category:g.category,messageText:g.message}}function Fi(s,...c){return{code:s.code,messageText:XY(s,...c)}}function rs(s,c){let g=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);g.scan();let d=g.getTokenStart();return wA(d,g.getTokenEnd())}function $s(s,c){let g=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);return g.scan(),g.getToken()}function vc(s,c){let g=Yu(s.text,c.pos);if(c.body&&c.body.kind===242){let{line:d}=Ra(s,c.body.pos),{line:h}=Ra(s,c.body.end);if(d0?c.statements[0].pos:c.end;return wA(_,S)}case 254:case 230:{let _=Yu(s.text,c.pos);return rs(s,_)}case 239:{let _=Yu(s.text,c.expression.end);return rs(s,_)}case 351:{let _=Yu(s.text,c.tagName.pos);return rs(s,_)}case 177:{let _=c,S=Yu(s.text,_.pos),R=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,S),T=R.scan();for(;T!==137&&T!==1;)T=R.scan();let W=R.getTokenEnd();return wA(S,W)}}if(g===void 0)return rs(s,c.pos);pe.assert(!tR(g));let d=sf(g),h=d||KL(c)?g.pos:Yu(s.text,g.pos);return d?(pe.assert(h===g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h===g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(pe.assert(h>=g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h<=g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),wA(h,g.end)}function fc(s){return s.kind===308&&!vl(s)}function vl(s){return(s.externalModuleIndicator||s.commonJsModuleIndicator)!==void 0}function Zu(s){return s.scriptKind===6}function VA(s){return!!(Hc(s)&4096)}function hf(s){return!!(Hc(s)&8&&!Ve(s,s.parent))}function Sd(s){return(dm(s)&7)===6}function tI(s){return(dm(s)&7)===4}function rI(s){return(dm(s)&7)===2}function OT(s){let c=dm(s)&7;return c===2||c===4||c===6}function rS(s){return(dm(s)&7)===1}function Dy(s){return s.kind===214&&s.expression.kind===108}function Up(s){if(s.kind!==214)return!1;let c=s.expression;return c.kind===102||Du(c)&&c.keywordToken===102&&c.name.escapedText==="defer"}function uv(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}function ky(s){return Um(s)&&EE(s.argument)&&Zg(s.argument.literal)}function nS(s){return s.kind===245&&s.expression.kind===11}function zre(s){return!!(tA(s)&2097152)}function Gge(s){return zre(s)&&ih(s)}function sVt(s){return Ir(s.name)&&!s.initializer}function Fge(s){return zre(s)&&Ch(s)&&ue(s.declarationList.declarations,sVt)}function Zge(s,c){return s.kind!==12?fE(c.text,s.pos):void 0}function pye(s,c){let g=s.kind===170||s.kind===169||s.kind===219||s.kind===220||s.kind===218||s.kind===261||s.kind===282?Nn(n2(c,s.pos),fE(c,s.pos)):fE(c,s.pos);return Me(g,d=>d.end<=s.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var oVt=/^\/\/\/\s*/,aVt=/^\/\/\/\s*/,cVt=/^\/\/\/\s*/,lVt=/^\/\/\/\s*/,uVt=/^\/\/\/\s*/,gVt=/^\/\/\/\s*/;function ww(s){if(183<=s.kind&&s.kind<=206)return!0;switch(s.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return s.parent.kind!==223;case 234:return hqe(s);case 169:return s.parent.kind===201||s.parent.kind===196;case 80:(s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s)&&(s=s.parent),pe.assert(s.kind===80||s.kind===167||s.kind===212,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 167:case 212:case 110:{let{parent:c}=s;if(c.kind===187)return!1;if(c.kind===206)return!c.isTypeOf;if(183<=c.kind&&c.kind<=206)return!0;switch(c.kind){case 234:return hqe(c);case 169:return s===c.constraint;case 346:return s===c.constraint;case 173:case 172:case 170:case 261:return s===c.type;case 263:case 219:case 220:case 177:case 175:case 174:case 178:case 179:return s===c.type;case 180:case 181:case 182:return s===c.type;case 217:return s===c.type;case 214:case 215:case 216:return k(c.typeArguments,s)}}}return!1}function hqe(s){return n9e(s.parent)||bz(s.parent)||h1(s.parent)&&!pAe(s)}function yF(s,c){return g(s);function g(d){switch(d.kind){case 254:return c(d);case 270:case 242:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 297:case 298:case 257:case 259:case 300:return Lu(d,g)}}}function tZe(s,c){return g(s);function g(d){switch(d.kind){case 230:c(d);let h=d.expression;h&&g(h);return;case 267:case 265:case 268:case 266:return;default:if(bu(d)){if(d.name&&d.name.kind===168){g(d.name.expression);return}}else ww(d)||Lu(d,g)}}}function fye(s){return s&&s.kind===189?s.elementType:s&&s.kind===184?Ps(s.typeArguments):void 0}function Lge(s){switch(s.kind){case 265:case 264:case 232:case 188:return s.members;case 211:return s.properties}}function I7(s){if(s)switch(s.kind){case 209:case 307:case 170:case 304:case 173:case 172:case 305:case 261:return!0}return!1}function h7(s){return s.parent.kind===262&&s.parent.parent.kind===244}function Iye(s){return wo(s)?og(s.parent)&&fo(s.parent.parent)&&nI(s.parent.parent)===2||Vge(s.parent):!1}function Vge(s){return wo(s)?fo(s)&&nI(s)===1:!1}function rZe(s){return(nc(s)?rI(s)&&Ir(s.name)&&h7(s):pi(s)?b3(s)&&zh(s):ss(s)&&b3(s))||Vge(s)}function nZe(s){switch(s.kind){case 175:case 174:case 177:case 178:case 179:case 263:case 219:return!0}return!1}function hye(s,c){for(;;){if(c&&c(s),s.statement.kind!==257)return s.statement;s=s.statement}}function mP(s){return s&&s.kind===242&&bu(s.parent)}function a2(s){return s&&s.kind===175&&s.parent.kind===211}function Pge(s){return(s.kind===175||s.kind===178||s.kind===179)&&(s.parent.kind===211||s.parent.kind===232)}function iZe(s){return s&&s.kind===1}function sZe(s){return s&&s.kind===0}function WJ(s,c,g,d){return F(s?.properties,h=>{if(!fm(h))return;let _=xY(h.name);return c===_||d&&d===_?g(h):void 0})}function m7(s){if(s&&s.statements.length){let c=s.statements[0].expression;return Gs(c,og)}}function Wge(s,c,g){return qre(s,c,d=>OI(d.initializer)?de(d.initializer.elements,h=>Zg(h)&&h.text===g):void 0)}function qre(s,c,g){return WJ(m7(s),c,g)}function A1(s){return ji(s.parent,bu)}function Oge(s){return ji(s.parent,kd)}function hC(s){return ji(s.parent,xa)}function oZe(s){return ji(s.parent,c=>xa(c)||bu(c)?"quit":fl(c))}function $re(s){return ji(s.parent,s3)}function Mge(s){let c=ji(s.parent,g=>xa(g)?"quit":So(g));return c&&xa(c.parent)?hC(c.parent):hC(c??s)}function r0(s,c,g){for(pe.assert(s.kind!==308);;){if(s=s.parent,!s)return pe.fail();switch(s.kind){case 168:if(g&&xa(s.parent.parent))return s;s=s.parent.parent;break;case 171:s.parent.kind===170&&PI(s.parent.parent)?s=s.parent.parent:PI(s.parent)&&(s=s.parent);break;case 220:if(!c)continue;case 263:case 219:case 268:case 176:case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 180:case 181:case 182:case 267:case 308:return s}}}function aZe(s){switch(s.kind){case 220:case 263:case 219:case 173:return!0;case 242:switch(s.parent.kind){case 177:case 175:case 178:case 179:return!0;default:return!1}default:return!1}}function Hge(s){Ir(s)&&(pm(s.parent)||ih(s.parent))&&s.parent.name===s&&(s=s.parent);let c=r0(s,!0,!1);return ll(c)}function cZe(s){let c=r0(s,!1,!1);if(c)switch(c.kind){case 177:case 263:case 219:return c}}function C7(s,c){for(;;){if(s=s.parent,!s)return;switch(s.kind){case 168:s=s.parent;break;case 263:case 219:case 220:if(!c)continue;case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 176:return s;case 171:s.parent.kind===170&&PI(s.parent.parent)?s=s.parent.parent:PI(s.parent)&&(s=s.parent);break}}}function ZL(s){if(s.kind===219||s.kind===220){let c=s,g=s.parent;for(;g.kind===218;)c=g,g=g.parent;if(g.kind===214&&g.expression===c)return g}}function xy(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===108}function ene(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===110}function Yge(s){var c;return!!s&&nc(s)&&((c=s.initializer)==null?void 0:c.kind)===110}function lZe(s){return!!s&&(a0(s)||fm(s))&&fo(s.parent.parent)&&s.parent.parent.operatorToken.kind===64&&s.parent.parent.right.kind===110}function tne(s){switch(s.kind){case 184:return s.typeName;case 234:return Od(s.expression)?s.expression:void 0;case 80:case 167:return s}}function Qge(s){switch(s.kind){case 216:return s.tag;case 287:case 286:return s.tagName;case 227:return s.right;case 290:return s;default:return s.expression}}function OJ(s,c,g,d){if(s&&rh(c)&&p(c.name))return!1;switch(c.kind){case 264:return!0;case 232:return!s;case 173:return g!==void 0&&(s?pm(g):xa(g)&&!wP(c)&&!zye(c));case 178:case 179:case 175:return c.body!==void 0&&g!==void 0&&(s?pm(g):xa(g));case 170:return s?g!==void 0&&g.body!==void 0&&(g.kind===177||g.kind===175||g.kind===179)&&vP(g)!==c&&d!==void 0&&d.kind===264:!1}return!1}function MJ(s,c,g,d){return p1(c)&&OJ(s,c,g,d)}function rne(s,c,g,d){return MJ(s,c,g,d)||HJ(s,c,g)}function HJ(s,c,g){switch(c.kind){case 264:return jt(c.members,d=>rne(s,d,c,g));case 232:return!s&&jt(c.members,d=>rne(s,d,c,g));case 175:case 179:case 177:return jt(c.parameters,d=>MJ(s,d,c,g));default:return!1}}function Rx(s,c){if(MJ(s,c))return!0;let g=lN(c);return!!g&&HJ(s,g,c)}function mye(s,c,g){let d;if(yB(c)){let{firstAccessor:h,secondAccessor:_,setAccessor:S}=BP(g.members,c),R=p1(h)?h:_&&p1(_)?_:void 0;if(!R||c!==R)return!1;d=S?.parameters}else uu(c)&&(d=c.parameters);if(MJ(s,c,g))return!0;if(d){for(let h of d)if(!SF(h)&&MJ(s,h,c,g))return!0}return!1}function Cye(s){if(s.textSourceNode){switch(s.textSourceNode.kind){case 11:return Cye(s.textSourceNode);case 15:return s.text===""}return!1}return s.text===""}function YJ(s){let{parent:c}=s;return c.kind===287||c.kind===286||c.kind===288?c.tagName===s:!1}function MT(s){switch(s.kind){case 108:case 106:case 112:case 97:case 14:case 210:case 211:case 212:case 213:case 214:case 215:case 216:case 235:case 217:case 239:case 236:case 218:case 219:case 232:case 220:case 223:case 221:case 222:case 225:case 226:case 227:case 228:case 231:case 229:case 233:case 285:case 286:case 289:case 230:case 224:return!0;case 237:return!Up(s.parent)||s.parent.expression!==s;case 234:return!h1(s.parent)&&!bz(s.parent);case 167:for(;s.parent.kind===167;)s=s.parent;return s.parent.kind===187||Tx(s.parent)||ude(s.parent)||O3(s.parent)||YJ(s);case 312:for(;O3(s.parent);)s=s.parent;return s.parent.kind===187||Tx(s.parent)||ude(s.parent)||O3(s.parent)||YJ(s);case 81:return fo(s.parent)&&s.parent.left===s&&s.parent.operatorToken.kind===103;case 80:if(s.parent.kind===187||Tx(s.parent)||ude(s.parent)||O3(s.parent)||YJ(s))return!0;case 9:case 10:case 11:case 15:case 110:return nne(s);default:return!1}}function nne(s){let{parent:c}=s;switch(c.kind){case 261:case 170:case 173:case 172:case 307:case 304:case 209:return c.initializer===s;case 245:case 246:case 247:case 248:case 254:case 255:case 256:case 297:case 258:return c.expression===s;case 249:let g=c;return g.initializer===s&&g.initializer.kind!==262||g.condition===s||g.incrementor===s;case 250:case 251:let d=c;return d.initializer===s&&d.initializer.kind!==262||d.expression===s;case 217:case 235:return s===c.expression;case 240:return s===c.expression;case 168:return s===c.expression;case 171:case 295:case 294:case 306:return!0;case 234:return c.expression===s&&!ww(c);case 305:return c.objectAssignmentInitializer===s;case 239:return s===c.expression;default:return MT(c)}}function Xge(s){for(;s.kind===167||s.kind===80;)s=s.parent;return s.kind===187}function uZe(s){return tk(s)&&!!s.parent.moduleSpecifier}function LL(s){return s.kind===272&&s.moduleReference.kind===284}function _7(s){return pe.assert(LL(s)),s.moduleReference.expression}function _ye(s){return CP(s)&&oU(s.initializer).arguments[0]}function d3(s){return s.kind===272&&s.moduleReference.kind!==284}function aN(s){return s?.kind===308}function n0(s){return wo(s)}function wo(s){return!!s&&!!(s.flags&524288)}function Jge(s){return!!s&&!!(s.flags&134217728)}function Uge(s){return!Zu(s)}function GY(s){return!!s&&!!(s.flags&16777216)}function Kge(s){return nh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="Object"&&s.typeArguments&&s.typeArguments.length===2&&(s.typeArguments[0].kind===154||s.typeArguments[0].kind===150)}function ay(s,c){if(s.kind!==214)return!1;let{expression:g,arguments:d}=s;if(g.kind!==80||g.escapedText!=="require"||d.length!==1)return!1;let h=d[0];return!c||mA(h)}function y7(s){return mqe(s,!1)}function CP(s){return mqe(s,!0)}function gZe(s){return hg(s)&&CP(s.parent.parent)}function mqe(s,c){return nc(s)&&!!s.initializer&&ay(c?oU(s.initializer):s.initializer,!0)}function ine(s){return Ch(s)&&s.declarationList.declarations.length>0&&ue(s.declarationList.declarations,c=>y7(c))}function sne(s){return s===39||s===34}function one(s,c){return mF(c,s).charCodeAt(0)===34}function b7(s){return fo(s)||_p(s)||Ir(s)||Zl(s)}function ane(s){return wo(s)&&s.initializer&&fo(s.initializer)&&(s.initializer.operatorToken.kind===57||s.initializer.operatorToken.kind===61)&&s.name&&Od(s.name)&&QJ(s.name,s.initializer.left)?s.initializer.right:s.initializer}function E7(s){let c=ane(s);return c&&VL(c,wF(s.name))}function AVt(s,c){return F(s.properties,g=>fm(g)&&Ir(g.name)&&g.name.escapedText==="value"&&g.initializer&&VL(g.initializer,c))}function FY(s){if(s&&s.parent&&fo(s.parent)&&s.parent.operatorToken.kind===64){let c=wF(s.parent.left);return VL(s.parent.right,c)||dVt(s.parent.left,s.parent.right,c)}if(s&&Zl(s)&&f3(s)){let c=AVt(s.arguments[2],s.arguments[1].text==="prototype");if(c)return c}}function VL(s,c){if(Zl(s)){let g=QA(s.expression);return g.kind===219||g.kind===220?s:void 0}if(s.kind===219||s.kind===232||s.kind===220||og(s)&&(s.properties.length===0||c))return s}function dVt(s,c,g){let d=fo(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&VL(c.right,g);if(d&&QJ(s,c.left))return d}function AZe(s){let c=nc(s.parent)?s.parent.name:fo(s.parent)&&s.parent.operatorToken.kind===64?s.parent.left:void 0;return c&&VL(s.right,wF(c))&&Od(c)&&QJ(c,s.left)}function yye(s){if(fo(s.parent)){let c=(s.parent.operatorToken.kind===57||s.parent.operatorToken.kind===61)&&fo(s.parent.parent)?s.parent.parent:s.parent;if(c.operatorToken.kind===64&&Ir(c.left))return c.left}else if(nc(s.parent))return s.parent.name}function QJ(s,c){return Tw(s)&&Tw(c)?c2(s)===c2(c):_w(s)&&dZe(c)&&(c.expression.kind===110||Ir(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?QJ(s,lne(c)):dZe(s)&&dZe(c)?YD(s)===YD(c)&&QJ(s.expression,c.expression):!1}function cne(s){for(;Jm(s,!0);)s=s.right;return s}function p3(s){return Ir(s)&&s.escapedText==="exports"}function _P(s){return Ir(s)&&s.escapedText==="module"}function cN(s){return(jo(s)||bye(s))&&_P(s.expression)&&YD(s)==="exports"}function nI(s){let c=pVt(s);return c===5||wo(s)?c:0}function f3(s){return B(s.arguments)===3&&jo(s.expression)&&Ir(s.expression.expression)&&Vo(s.expression.expression)==="Object"&&Vo(s.expression.name)==="defineProperty"&&d1(s.arguments[1])&&I3(s.arguments[0],!0)}function dZe(s){return jo(s)||bye(s)}function bye(s){return Yg(s)&&d1(s.argumentExpression)}function yP(s,c){return jo(s)&&(!c&&s.expression.kind===110||Ir(s.name)&&I3(s.expression,!0))||jge(s,c)}function jge(s,c){return bye(s)&&(!c&&s.expression.kind===110||Od(s.expression)||yP(s.expression,!0))}function I3(s,c){return Od(s)||yP(s,c)}function lne(s){return jo(s)?s.name:s.argumentExpression}function pVt(s){if(Zl(s)){if(!f3(s))return 0;let c=s.arguments[0];return p3(c)||cN(c)?8:yP(c)&&YD(c)==="prototype"?9:7}return s.operatorToken.kind!==64||!_p(s.left)||fVt(cne(s))?0:I3(s.left.expression,!0)&&YD(s.left)==="prototype"&&og(Eye(s))?6:XJ(s.left)}function fVt(s){return qT(s)&&mC(s.expression)&&s.expression.text==="0"}function zge(s){if(jo(s))return s.name;let c=QA(s.argumentExpression);return mC(c)||mA(c)?c:s}function YD(s){let c=zge(s);if(c){if(Ir(c))return c.escapedText;if(mA(c)||mC(c))return Ap(c.text)}}function XJ(s){if(s.expression.kind===110)return 4;if(cN(s))return 2;if(I3(s.expression,!0)){if(wF(s.expression))return 3;let c=s;for(;!Ir(c.expression);)c=c.expression;let g=c.expression;if((g.escapedText==="exports"||g.escapedText==="module"&&YD(c)==="exports")&&yP(s))return 1;if(I3(s,!0)||Yg(s)&&nAe(s))return 5}return 0}function Eye(s){for(;fo(s.right);)s=s.right;return s.right}function une(s){return fo(s)&&nI(s)===3}function Sye(s){return wo(s)&&s.parent&&s.parent.kind===245&&(!Yg(s)||bye(s))&&!!ov(s.parent)}function S7(s,c){let{valueDeclaration:g}=s;(!g||!(c.flags&33554432&&!wo(c)&&!(g.flags&33554432))&&b7(g)&&!b7(c)||g.kind!==c.kind&&wge(g))&&(s.valueDeclaration=c)}function pZe(s){if(!s||!s.valueDeclaration)return!1;let c=s.valueDeclaration;return c.kind===263||nc(c)&&c.initializer&&bu(c.initializer)}function fZe(s){switch(s?.kind){case 261:case 209:case 273:case 279:case 272:case 274:case 281:case 275:case 282:case 277:case 206:return!0}return!1}function ZY(s){var c,g;switch(s.kind){case 261:case 209:return(c=ji(s.initializer,d=>ay(d,!0)))==null?void 0:c.arguments[0];case 273:case 279:case 352:return Gs(s.moduleSpecifier,mA);case 272:return Gs((g=Gs(s.moduleReference,ZF))==null?void 0:g.expression,mA);case 274:case 281:return Gs(s.parent.moduleSpecifier,mA);case 275:case 282:return Gs(s.parent.parent.moduleSpecifier,mA);case 277:return Gs(s.parent.parent.parent.moduleSpecifier,mA);case 206:return ky(s)?s.argument.literal:void 0;default:pe.assertNever(s)}}function v7(s){return B7(s)||pe.failBadSyntaxKind(s.parent)}function B7(s){switch(s.parent.kind){case 273:case 279:case 352:return s.parent;case 284:return s.parent.parent;case 214:return Up(s.parent)||ay(s.parent,!1)?s.parent:void 0;case 202:if(!Zg(s))break;return Gs(s.parent.parent,Um);default:return}}function gne(s,c){return!!c.rewriteRelativeImportExtensions&&Ip(s)&&!PC(s)&&w3(s)}function LY(s){switch(s.kind){case 273:case 279:case 352:return s.moduleSpecifier;case 272:return s.moduleReference.kind===284?s.moduleReference.expression:void 0;case 206:return ky(s)?s.argument.literal:void 0;case 214:return s.arguments[0];case 268:return s.name.kind===11?s.name:void 0;default:return pe.assertNever(s)}}function JJ(s){switch(s.kind){case 273:return s.importClause&&Gs(s.importClause.namedBindings,Zx);case 272:return s;case 279:return s.exportClause&&Gs(s.exportClause,tk);default:return pe.assertNever(s)}}function h3(s){return(s.kind===273||s.kind===352)&&!!s.importClause&&!!s.importClause.name}function IZe(s,c){if(s.name){let g=c(s);if(g)return g}if(s.namedBindings){let g=Zx(s.namedBindings)?c(s.namedBindings):F(s.namedBindings.elements,c);if(g)return g}}function VY(s){switch(s.kind){case 170:case 175:case 174:case 305:case 304:case 173:case 172:return s.questionToken!==void 0}return!1}function PY(s){let c=mie(s)?Nc(s.parameters):void 0,g=Gs(c&&c.name,Ir);return!!g&&g.escapedText==="new"}function iS(s){return s.kind===347||s.kind===339||s.kind===341}function Ane(s){return iS(s)||FB(s)}function hZe(s){return VC(s)&&fo(s.expression)&&s.expression.operatorToken.kind===64?cne(s.expression):void 0}function Cqe(s){return VC(s)&&fo(s.expression)&&nI(s.expression)!==0&&fo(s.expression.right)&&(s.expression.right.operatorToken.kind===57||s.expression.right.operatorToken.kind===61)?s.expression.right.right:void 0}function _qe(s){switch(s.kind){case 244:let c=m3(s);return c&&c.initializer;case 173:return s.initializer;case 304:return s.initializer}}function m3(s){return Ch(s)?Nc(s.declarationList.declarations):void 0}function yqe(s){return xh(s)&&s.body&&s.body.kind===268?s.body:void 0}function UJ(s){if(s.kind>=244&&s.kind<=260)return!0;switch(s.kind){case 80:case 110:case 108:case 167:case 237:case 213:case 212:case 209:case 219:case 220:case 175:case 178:case 179:return!0;default:return!1}}function dne(s){switch(s.kind){case 220:case 227:case 242:case 253:case 180:case 297:case 264:case 232:case 176:case 177:case 186:case 181:case 252:case 260:case 247:case 213:case 243:case 1:case 267:case 307:case 278:case 279:case 282:case 245:case 250:case 251:case 249:case 263:case 219:case 185:case 178:case 80:case 246:case 273:case 272:case 182:case 265:case 318:case 324:case 257:case 175:case 174:case 268:case 203:case 271:case 211:case 170:case 218:case 212:case 304:case 173:case 172:case 254:case 241:case 179:case 305:case 306:case 256:case 258:case 259:case 266:case 169:case 261:case 244:case 248:case 255:return!0;default:return!1}}function vye(s,c){let g;I7(s)&&WT(s)&&Xm(s.initializer)&&(g=Or(g,bqe(s,s.initializer.jsDoc)));let d=s;for(;d&&d.parent;){if(Xm(d)&&(g=Or(g,bqe(s,d.jsDoc))),d.kind===170){g=Or(g,(c?uJ:vL)(d));break}if(d.kind===169){g=Or(g,(c?U6:r3)(d));break}d=Bye(d)}return g||E}function bqe(s,c){let g=Ei(c);return er(c,d=>{if(d===g){let h=Me(d.tags,_=>Eqe(s,_));return d.tags===h?[d]:h}else return Me(d.tags,Cie)})}function Eqe(s,c){return!(gde(c)||i9e(c))||!c.parent||!tR(c.parent)||!gI(c.parent.parent)||c.parent.parent===s}function Bye(s){let c=s.parent;if(c.kind===304||c.kind===278||c.kind===173||c.kind===245&&s.kind===212||c.kind===254||yqe(c)||Jm(s))return c;if(c.parent&&(m3(c.parent)===s||Jm(c)))return c.parent;if(c.parent&&c.parent.parent&&(m3(c.parent.parent)||_qe(c.parent.parent)===s||Cqe(c.parent.parent)))return c.parent.parent}function pne(s){if(s.symbol)return s.symbol;if(!Ir(s.name))return;let c=s.name.escapedText,g=PL(s);if(!g)return;let d=de(g.parameters,h=>h.name.kind===80&&h.name.escapedText===c);return d&&d.symbol}function qge(s){if(tR(s.parent)&&s.parent.tags){let c=de(s.parent.tags,iS);if(c)return c}return PL(s)}function wye(s){return dJ(s,Cie)}function PL(s){let c=WL(s);if(c)return ss(c)&&c.type&&bu(c.type)?c.type:bu(c)?c:void 0}function WL(s){let c=bP(s);if(c)return Cqe(c)||hZe(c)||_qe(c)||m3(c)||yqe(c)||c}function bP(s){let c=KJ(s);if(!c)return;let g=c.parent;if(g&&g.jsDoc&&c===li(g.jsDoc))return g}function KJ(s){return ji(s.parent,tR)}function mZe(s){let c=s.name.escapedText,{typeParameters:g}=s.parent.parent.parent;return g&&de(g,d=>d.name.escapedText===c)}function Sqe(s){return!!s.typeArguments}var CZe=(s=>(s[s.None=0]="None",s[s.Definite=1]="Definite",s[s.Compound=2]="Compound",s))(CZe||{});function _Ze(s){let c=s.parent;for(;;){switch(c.kind){case 227:let g=c,d=g.operatorToken.kind;return UD(d)&&g.left===s?g:void 0;case 225:case 226:let h=c,_=h.operator;return _===46||_===47?h:void 0;case 250:case 251:let S=c;return S.initializer===s?S:void 0;case 218:case 210:case 231:case 236:s=c;break;case 306:s=c.parent;break;case 305:if(c.name!==s)return;s=c.parent;break;case 304:if(c.name===s)return;s=c.parent;break;default:return}c=s.parent}}function QD(s){let c=_Ze(s);if(!c)return 0;switch(c.kind){case 227:let g=c.operatorToken.kind;return g===64||V7(g)?1:2;case 225:case 226:return 2;case 250:case 251:return 1}}function bF(s){return!!_Ze(s)}function IVt(s){let c=QA(s.right);return c.kind===227&&G$e(c.operatorToken.kind)}function $ge(s){let c=_Ze(s);return!!c&&Jm(c,!0)&&IVt(c)}function yZe(s){switch(s.kind){case 242:case 244:case 255:case 246:case 256:case 270:case 297:case 298:case 257:case 249:case 250:case 251:case 247:case 248:case 259:case 300:return!0}return!1}function C3(s){return UA(s)||lA(s)||NL(s)||ih(s)||Tc(s)}function vqe(s,c){for(;s&&s.kind===c;)s=s.parent;return s}function fne(s){return vqe(s,197)}function gv(s){return vqe(s,218)}function Tye(s){let c;for(;s&&s.kind===197;)c=s,s=s.parent;return[c,s]}function w7(s){for(;fv(s);)s=s.type;return s}function QA(s,c){return HI(s,c?-2147483647:1)}function Rye(s){return s.kind!==212&&s.kind!==213?!1:(s=gv(s.parent),s&&s.kind===221)}function EP(s,c){for(;s;){if(s===c)return!0;s=s.parent}return!1}function HT(s){return!ll(s)&&!Nu(s)&&jh(s.parent)&&s.parent.name===s}function T7(s){let c=s.parent;switch(s.kind){case 11:case 15:case 9:if(Un(c))return c.parent;case 80:if(jh(c))return c.name===s?c:void 0;if(zi(c)){let g=c.parent;return cS(g)&&g.name===c?g:void 0}else{let g=c.parent;return fo(g)&&nI(g)!==0&&(g.left.symbol||g.symbol)&&Il(g)===s?g:void 0}case 81:return jh(c)&&c.name===s?c:void 0;default:return}}function Ine(s){return d1(s)&&s.parent.kind===168&&jh(s.parent.parent)}function bZe(s){let c=s.parent;switch(c.kind){case 173:case 172:case 175:case 174:case 178:case 179:case 307:case 304:case 212:return c.name===s;case 167:return c.right===s;case 209:case 277:return c.propertyName===s;case 282:case 292:case 286:case 287:case 288:return!0}return!1}function Nye(s){switch(s.parent.kind){case 274:case 277:case 275:case 282:case 278:case 272:case 281:return s.parent;case 167:do s=s.parent;while(s.parent.kind===167);return Nye(s)}}function eAe(s){return Od(s)||vd(s)}function hne(s){let c=mne(s);return eAe(c)}function mne(s){return Cf(s)?s.expression:s.right}function EZe(s){return s.kind===305?s.name:s.kind===304?s.initializer:s.parent.right}function BB(s){let c=OL(s);if(c&&wo(s)){let g=K6(s);if(g)return g.class}return c}function OL(s){let c=Cne(s.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function jJ(s){if(wo(s))return uY(s).map(c=>c.class);{let c=Cne(s.heritageClauses,119);return c?.types}}function R7(s){return g_(s)?N7(s)||E:xa(s)&&Nn(J_(BB(s)),jJ(s))||E}function N7(s){let c=Cne(s.heritageClauses,96);return c?c.types:void 0}function Cne(s,c){if(s){for(let g of s)if(g.token===c)return g}}function ML(s,c){for(;s;){if(s.kind===c)return s;s=s.parent}}function v0(s){return 83<=s&&s<=166}function Dye(s){return 19<=s&&s<=79}function tAe(s){return v0(s)||Dye(s)}function rAe(s){return 128<=s&&s<=166}function kye(s){return v0(s)&&!rAe(s)}function WY(s){let c=Ta(s);return c!==void 0&&kye(c)}function xye(s){let c=iv(s);return!!c&&!rAe(c)}function zJ(s){return 2<=s&&s<=7}var SZe=(s=>(s[s.Normal=0]="Normal",s[s.Generator=1]="Generator",s[s.Async=2]="Async",s[s.Invalid=4]="Invalid",s[s.AsyncGenerator=3]="AsyncGenerator",s))(SZe||{});function SI(s){if(!s)return 4;let c=0;switch(s.kind){case 263:case 219:case 175:s.asteriskToken&&(c|=1);case 220:Ga(s,1024)&&(c|=2);break}return s.body||(c|=4),c}function D7(s){switch(s.kind){case 263:case 219:case 220:case 175:return s.body!==void 0&&s.asteriskToken===void 0&&Ga(s,1024)}return!1}function d1(s){return mA(s)||mC(s)}function _ne(s){return T0(s)&&(s.operator===40||s.operator===41)&&mC(s.operand)}function XD(s){let c=Il(s);return!!c&&nAe(c)}function nAe(s){if(!(s.kind===168||s.kind===213))return!1;let c=Yg(s)?QA(s.argumentExpression):s.expression;return!d1(c)&&!_ne(c)}function _3(s){switch(s.kind){case 80:case 81:return s.escapedText;case 11:case 15:case 9:case 10:return Ap(s.text);case 168:let c=s.expression;return d1(c)?Ap(c.text):_ne(c)?c.operator===41?Vi(c.operator)+c.operand.text:c.operand.text:void 0;case 296:return oS(s);default:return pe.assertNever(s)}}function Tw(s){switch(s.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function c2(s){return _w(s)?Vo(s):eR(s)?lz(s):s.text}function qJ(s){return _w(s)?s.escapedText:eR(s)?oS(s):Ap(s.text)}function yne(s,c){return`__#${kg(s)}@${c}`}function k7(s){return Ac(s.escapedName,"__@")}function vZe(s){return Ac(s.escapedName,"__#")}function hVt(s){return Ir(s)?Vo(s)==="__proto__":Zg(s)&&s.text==="__proto__"}function iAe(s,c){switch(s=HI(s),s.kind){case 232:if(Het(s))return!1;break;case 219:if(s.name)return!1;break;case 220:break;default:return!1}return typeof c=="function"?c(s):!0}function Gye(s){switch(s.kind){case 304:return!hVt(s.name);case 305:return!!s.objectAssignmentInitializer;case 261:return Ir(s.name)&&!!s.initializer;case 170:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 209:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 173:return!!s.initializer;case 227:switch(s.operatorToken.kind){case 64:case 77:case 76:case 78:return Ir(s.left)}break;case 278:return!0}return!1}function kb(s,c){if(!Gye(s))return!1;switch(s.kind){case 304:return iAe(s.initializer,c);case 305:return iAe(s.objectAssignmentInitializer,c);case 261:case 170:case 209:case 173:return iAe(s.initializer,c);case 227:return iAe(s.right,c);case 278:return iAe(s.expression,c)}}function Fye(s){return s.escapedText==="push"||s.escapedText==="unshift"}function HL(s){return Rw(s).kind===170}function Rw(s){for(;s.kind===209;)s=s.parent.parent;return s}function Zye(s){let c=s.kind;return c===177||c===219||c===263||c===220||c===175||c===178||c===179||c===268||c===308}function sp(s){return wB(s.pos)||wB(s.end)}var BZe=(s=>(s[s.Left=0]="Left",s[s.Right=1]="Right",s))(BZe||{});function Lye(s){let c=Bqe(s),g=s.kind===215&&s.arguments!==void 0;return Vye(s.kind,c,g)}function Vye(s,c,g){switch(s){case 215:return g?0:1;case 225:case 222:case 223:case 221:case 224:case 228:case 230:return 1;case 227:switch(c){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function x7(s){let c=Bqe(s),g=s.kind===215&&s.arguments!==void 0;return bne(s.kind,c,g)}function Bqe(s){return s.kind===227?s.operatorToken.kind:s.kind===225||s.kind===226?s.operator:s.kind}var wZe=(s=>(s[s.Comma=0]="Comma",s[s.Spread=1]="Spread",s[s.Yield=2]="Yield",s[s.Assignment=3]="Assignment",s[s.Conditional=4]="Conditional",s[s.LogicalOR=5]="LogicalOR",s[s.Coalesce=5]="Coalesce",s[s.LogicalAND=6]="LogicalAND",s[s.BitwiseOR=7]="BitwiseOR",s[s.BitwiseXOR=8]="BitwiseXOR",s[s.BitwiseAND=9]="BitwiseAND",s[s.Equality=10]="Equality",s[s.Relational=11]="Relational",s[s.Shift=12]="Shift",s[s.Additive=13]="Additive",s[s.Multiplicative=14]="Multiplicative",s[s.Exponentiation=15]="Exponentiation",s[s.Unary=16]="Unary",s[s.Update=17]="Update",s[s.LeftHandSide=18]="LeftHandSide",s[s.Member=19]="Member",s[s.Primary=20]="Primary",s[s.Highest=20]="Highest",s[s.Lowest=0]="Lowest",s[s.Invalid=-1]="Invalid",s))(wZe||{});function bne(s,c,g){switch(s){case 357:return 0;case 231:return 1;case 230:return 2;case 228:return 4;case 227:switch(c){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return Ene(c)}case 217:case 236:case 225:case 222:case 223:case 221:case 224:return 16;case 226:return 17;case 214:return 18;case 215:return g?19:18;case 216:case 212:case 213:case 237:return 19;case 235:case 239:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 210:case 211:case 219:case 220:case 232:case 14:case 15:case 229:case 218:case 233:case 285:case 286:case 289:return 20;default:return-1}}function Ene(s){switch(s){case 61:return 5;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function $J(s){return Me(s,c=>{switch(c.kind){case 295:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function EF(){let s=[],c=[],g=new Map,d=!1;return{add:_,lookup:h,getGlobalDiagnostics:S,getDiagnostics:R};function h(T){let W;if(T.file?W=g.get(T.file.fileName):W=s,!W)return;let V=Wc(W,T,Fl,tLe);if(V>=0)return W[V];if(~V>0&&BAe(T,W[~V-1]))return W[~V-1]}function _(T){let W;T.file?(W=g.get(T.file.fileName),W||(W=[],g.set(T.file.fileName,W),Gc(c,T.file.fileName,Ca))):(d&&(d=!1,s=s.slice()),W=s),Gc(W,T,tLe,BAe)}function S(){return d=!0,s}function R(T){if(T)return g.get(T)||[];let W=vt(c,V=>g.get(V));return s.length&&W.unshift(...s),W}}var wqe=/\$\{/g;function Pye(s){return s.replace(wqe,"\\${")}function TZe(s){return!!((s.templateFlags||0)&2048)}function Wye(s){return s&&!!(GP(s)?TZe(s):TZe(s.head)||jt(s.templateSpans,c=>TZe(c.literal)))}var mVt=/[\\"\u0000-\u001f\u2028\u2029\u0085]/g,G7=/[\\'\u0000-\u001f\u2028\u2029\u0085]/g,CVt=/\r\n|[\\`\u0000-\u0009\u000b-\u001f\u2028\u2029\u0085]/g,_Vt=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function Tqe(s){return"\\u"+("0000"+s.toString(16).toUpperCase()).slice(-4)}function yVt(s,c,g){if(s.charCodeAt(0)===0){let d=g.charCodeAt(c+s.length);return d>=48&&d<=57?"\\x00":"\\0"}return _Vt.get(s)||Tqe(s.charCodeAt(0))}function YT(s,c){let g=c===96?CVt:c===39?G7:mVt;return s.replace(g,yVt)}var Rqe=/[^\u0000-\u007F]/g;function Sne(s,c){return s=YT(s,c),Rqe.test(s)?s.replace(Rqe,g=>Tqe(g.charCodeAt(0))):s}var bVt=/["\u0000-\u001f\u2028\u2029\u0085]/g,EVt=/['\u0000-\u001f\u2028\u2029\u0085]/g,SVt=new Map(Object.entries({'"':""","'":"'"}));function vVt(s){return"&#x"+s.toString(16).toUpperCase()+";"}function BVt(s){return s.charCodeAt(0)===0?"�":SVt.get(s)||vVt(s.charCodeAt(0))}function Oye(s,c){let g=c===39?EVt:bVt;return s.replace(g,BVt)}function l2(s){let c=s.length;return c>=2&&s.charCodeAt(0)===s.charCodeAt(c-1)&&wVt(s.charCodeAt(0))?s.substring(1,c-1):s}function wVt(s){return s===39||s===34||s===96}function eU(s){let c=s.charCodeAt(0);return c>=97&&c<=122||s.includes("-")}var vne=[""," "];function sAe(s){let c=vne[1];for(let g=vne.length;g<=s;g++)vne.push(vne[g-1]+c);return vne[s]}function Bne(){return vne[1].length}function wne(s){var c,g,d,h,_,S=!1;function R(Ie){let _e=cA(Ie);_e.length>1?(h=h+_e.length-1,_=c.length-Ie.length+Ei(_e),d=_-c.length===0):d=!1}function T(Ie){Ie&&Ie.length&&(d&&(Ie=sAe(g)+Ie,d=!1),c+=Ie,R(Ie))}function W(Ie){Ie&&(S=!1),T(Ie)}function V(Ie){Ie&&(S=!0),T(Ie)}function M(){c="",g=0,d=!0,h=0,_=0,S=!1}function ee(Ie){Ie!==void 0&&(c+=Ie,R(Ie),S=!1)}function re(Ie){Ie&&Ie.length&&W(Ie)}function ge(Ie){(!d||Ie)&&(c+=s,h++,_=c.length,d=!0,S=!1)}return M(),{write:W,rawWrite:ee,writeLiteral:re,writeLine:ge,increaseIndent:()=>{g++},decreaseIndent:()=>{g--},getIndent:()=>g,getTextPos:()=>c.length,getLine:()=>h,getColumn:()=>d?g*Bne():c.length-_,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>S,hasTrailingWhitespace:()=>!!c.length&&dc(c.charCodeAt(c.length-1)),clear:M,writeKeyword:W,writeOperator:W,writeParameter:W,writeProperty:W,writePunctuation:W,writeSpace:W,writeStringLiteral:W,writeSymbol:(Ie,_e)=>W(Ie),writeTrailingSemicolon:W,writeComment:V}}function Mye(s){let c=!1;function g(){c&&(s.writeTrailingSemicolon(";"),c=!1)}return{...s,writeTrailingSemicolon(){c=!0},writeLiteral(d){g(),s.writeLiteral(d)},writeStringLiteral(d){g(),s.writeStringLiteral(d)},writeSymbol(d,h){g(),s.writeSymbol(d,h)},writePunctuation(d){g(),s.writePunctuation(d)},writeKeyword(d){g(),s.writeKeyword(d)},writeOperator(d){g(),s.writeOperator(d)},writeParameter(d){g(),s.writeParameter(d)},writeSpace(d){g(),s.writeSpace(d)},writeProperty(d){g(),s.writeProperty(d)},writeComment(d){g(),s.writeComment(d)},writeLine(){g(),s.writeLine()},increaseIndent(){g(),s.increaseIndent()},decreaseIndent(){g(),s.decreaseIndent()}}}function y3(s){return s.useCaseSensitiveFileNames?s.useCaseSensitiveFileNames():!1}function JD(s){return _d(y3(s))}function F7(s,c,g){return c.moduleName||Hye(s,c.fileName,g&&g.fileName)}function Nqe(s,c){return s.getCanonicalFileName(Xc(c,s.getCurrentDirectory()))}function RZe(s,c,g){let d=c.getExternalModuleFileFromDeclaration(g);if(!d||d.isDeclarationFile)return;let h=LY(g);if(!(h&&mA(h)&&!Ip(h.text)&&!Nqe(s,d.path).includes(Nqe(s,hp(s.getCommonSourceDirectory())))))return F7(s,d)}function Hye(s,c,g){let d=T=>s.getCanonicalFileName(T),h=Ou(g?Mo(g):s.getCommonSourceDirectory(),s.getCurrentDirectory(),d),_=Xc(c,s.getCurrentDirectory()),S=Of(h,_,h,d,!1),R=s0(S);return g?Am(R):R}function NZe(s,c,g){let d=c.getCompilerOptions(),h;return d.outDir?h=s0(lAe(s,c,d.outDir)):h=s0(s),h+g}function DZe(s,c){return Tne(s,c.getCompilerOptions(),c)}function Tne(s,c,g){let d=c.declarationDir||c.outDir,h=d?kZe(s,d,g.getCurrentDirectory(),g.getCommonSourceDirectory(),S=>g.getCanonicalFileName(S)):s,_=oAe(h);return s0(h)+_}function oAe(s){return fu(s,[".mjs",".mts"])?".d.mts":fu(s,[".cjs",".cts"])?".d.cts":fu(s,[".json"])?".d.json.ts":".d.ts"}function Yye(s){return fu(s,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:fu(s,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:fu(s,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Qye(s,c,g,d){return g?AE(d(),mp(g,s,c)):s}function aAe(s,c){var g;if(s.paths)return s.baseUrl??pe.checkDefined(s.pathsBasePath||((g=c.getCurrentDirectory)==null?void 0:g.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function cAe(s,c,g){let d=s.getCompilerOptions();if(d.outFile){let h=i0(d),_=d.emitDeclarationOnly||h===2||h===4;return Me(s.getSourceFiles(),S=>(_||!xm(S))&&SP(S,s,g))}else{let h=c===void 0?s.getSourceFiles():[c];return Me(h,_=>SP(_,s,g))}}function SP(s,c,g){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&n0(s)||s.isDeclarationFile||c.isSourceFileFromExternalLibrary(s))return!1;if(g)return!0;if(c.isSourceOfProjectReferenceRedirect(s.fileName))return!1;if(!Zu(s))return!0;if(c.getRedirectFromSourceFile(s.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let h=Xc(Gde(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),_=kZe(s.fileName,d.outDir,c.getCurrentDirectory(),h,c.getCanonicalFileName);if(qf(s.fileName,_,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function lAe(s,c,g){return kZe(s,g,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function kZe(s,c,g,d,h){let _=Xc(s,g);return _=h(_).indexOf(h(d))===0?_.substring(d.length):_,Ro(c,_)}function uAe(s,c,g,d,h,_,S){s.writeFile(g,d,h,R=>{c.add(Nf(Z.Could_not_write_file_0_Colon_1,g,R))},_,S)}function Dqe(s,c,g){if(s.length>Wf(s)&&!g(s)){let d=Mo(s);Dqe(d,c,g),c(s)}}function Xye(s,c,g,d,h,_){try{d(s,c,g)}catch{Dqe(Mo(iu(s)),h,_),d(s,c,g)}}function Z7(s,c){let g=rn(s);return Po(g,c)}function tU(s,c){return Po(s,c)}function lN(s){return de(s.members,c=>Tc(c)&&u1(c.body))}function L7(s){if(s&&s.parameters.length>0){let c=s.parameters.length===2&&SF(s.parameters[0]);return s.parameters[c?1:0]}}function xZe(s){let c=L7(s);return c&&c.type}function vP(s){if(s.parameters.length&&!qL(s)){let c=s.parameters[0];if(SF(c))return c}}function SF(s){return vF(s.name)}function vF(s){return!!s&&s.kind===80&&Jye(s)}function OY(s){return!!ji(s,c=>c.kind===187?!0:c.kind===80||c.kind===167?!1:"quit")}function YL(s){if(!vF(s))return!1;for(;zi(s.parent)&&s.parent.left===s;)s=s.parent;return s.parent.kind===187}function Jye(s){return s.escapedText==="this"}function BP(s,c){let g,d,h,_;return XD(c)?(g=c,c.kind===178?h=c:c.kind===179?_=c:pe.fail("Accessor has wrong kind")):F(s,S=>{if(yB(S)&&cg(S)===cg(c)){let R=_3(S.name),T=_3(c.name);R===T&&(g?d||(d=S):g=S,S.kind===178&&!h&&(h=S),S.kind===179&&!_&&(_=S))}}),{firstAccessor:g,secondAccessor:d,getAccessor:h,setAccessor:_}}function kh(s){if(!wo(s)&&ih(s)||FB(s))return;let c=s.type;return c||!wo(s)?c:dY(s)?s.typeExpression&&s.typeExpression.type:eN(s)}function GZe(s){return s.type}function xb(s){return qL(s)?s.type&&s.type.typeExpression&&s.type.typeExpression.type:s.type||(wo(s)?AJ(s):void 0)}function gAe(s){return er(Sx(s),c=>kqe(c)?c.typeParameters:void 0)}function kqe(s){return ZB(s)&&!(s.parent.kind===321&&(s.parent.tags.some(iS)||s.parent.tags.some(Cie)))}function Uye(s){let c=L7(s);return c&&kh(c)}function TVt(s,c,g,d){RVt(s,c,g.pos,d)}function RVt(s,c,g,d){d&&d.length&&g!==d[0].pos&&tU(s,g)!==tU(s,d[0].pos)&&c.writeLine()}function Kye(s,c,g,d){g!==d&&tU(s,g)!==tU(s,d)&&c.writeLine()}function NVt(s,c,g,d,h,_,S,R){if(d&&d.length>0){h&&g.writeSpace(" ");let T=!1;for(let W of d)T&&(g.writeSpace(" "),T=!1),R(s,c,g,W.pos,W.end,S),W.hasTrailingNewLine?g.writeLine():T=!0;T&&_&&g.writeSpace(" ")}}function FZe(s,c,g,d,h,_,S){let R,T;if(S?h.pos===0&&(R=Me(fE(s,h.pos),W)):R=fE(s,h.pos),R){let V=[],M;for(let ee of R){if(M){let re=tU(c,M.end);if(tU(c,ee.pos)>=re+2)break}V.push(ee),M=ee}if(V.length){let ee=tU(c,Ei(V).end);tU(c,Yu(s,h.pos))>=ee+2&&(TVt(c,g,h,R),NVt(s,c,g,V,!1,!0,_,d),T={nodePos:h.pos,detachedCommentEndPos:Ei(V).end})}}return T;function W(V){return g7(s,V.pos)}}function rU(s,c,g,d,h,_){if(s.charCodeAt(d+1)===42){let S=Ci(c,d),R=c.length,T;for(let W=d,V=S.line;W0){let ge=re%Bne(),Ie=sAe((re-ge)/Bne());for(g.rawWrite(Ie);ge;)g.rawWrite(" "),ge--}else g.rawWrite("")}DVt(s,h,g,_,W,M),W=M}}else g.writeComment(s.substring(d,h))}function DVt(s,c,g,d,h,_){let S=Math.min(c,_-1),R=s.substring(h,S).trim();R?(g.writeComment(R),S!==c&&g.writeLine()):g.rawWrite(d)}function ZZe(s,c,g){let d=0;for(;c=0&&s.kind<=166?0:(s.modifierFlagsCache&536870912||(s.modifierFlagsCache=$ye(s)|536870912),g||c&&wo(s)?(!(s.modifierFlagsCache&268435456)&&s.parent&&(s.modifierFlagsCache|=xqe(s)|268435456),Gqe(s.modifierFlagsCache)):kVt(s.modifierFlagsCache))}function o_(s){return PZe(s,!0)}function WZe(s){return PZe(s,!0,!0)}function Nx(s){return PZe(s,!1)}function xqe(s){let c=0;return s.parent&&!Si(s)&&(wo(s)&&(Ex(s)&&(c|=8388608),Aa(s)&&(c|=16777216),Ua(s)&&(c|=33554432),hA(s)&&(c|=67108864),Pd(s)&&(c|=134217728)),i2(s)&&(c|=65536)),c}function kVt(s){return s&65535}function Gqe(s){return s&131071|(s&260046848)>>>23}function OZe(s){return Gqe(xqe(s))}function qye(s){return $ye(s)|OZe(s)}function $ye(s){let c=LB(s)?Dw(s.modifiers):0;return(s.flags&8||s.kind===80&&s.flags&4096)&&(c|=32),c}function Dw(s){let c=0;if(s)for(let g of s)c|=HY(g.kind);return c}function HY(s){switch(s){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 171:return 32768}return 0}function Nne(s){return s===57||s===56}function MZe(s){return Nne(s)||s===54}function V7(s){return s===76||s===77||s===78}function AAe(s){return fo(s)&&V7(s.operatorToken.kind)}function dAe(s){return Nne(s)||s===61}function Dne(s){return fo(s)&&dAe(s.operatorToken.kind)}function UD(s){return s>=64&&s<=79}function ebe(s){let c=tbe(s);return c&&!c.isImplements?c.class:void 0}function tbe(s){if(l_(s)){if(h1(s.parent)&&xa(s.parent.parent))return{class:s.parent.parent,isImplements:s.parent.token===119};if(bz(s.parent)){let c=WL(s.parent);if(c&&xa(c))return{class:c,isImplements:!1}}}}function Jm(s,c){return fo(s)&&(c?s.operatorToken.kind===64:UD(s.operatorToken.kind))&&D_(s.left)}function Dx(s){if(Jm(s,!0)){let c=s.left.kind;return c===211||c===210}return!1}function pAe(s){return ebe(s)!==void 0}function Od(s){return s.kind===80||BF(s)}function B0(s){switch(s.kind){case 80:return s;case 167:do s=s.left;while(s.kind!==80);return s;case 212:do s=s.expression;while(s.kind!==80);return s}}function kne(s){return s.kind===80||s.kind===110||s.kind===108||s.kind===237||s.kind===212&&kne(s.expression)||s.kind===218&&kne(s.expression)}function BF(s){return jo(s)&&Ir(s.name)&&Od(s.expression)}function TP(s){if(jo(s)){let c=TP(s.expression);if(c!==void 0)return c+"."+oy(s.name)}else if(Yg(s)){let c=TP(s.expression);if(c!==void 0&&VI(s.argumentExpression))return c+"."+_3(s.argumentExpression)}else{if(Ir(s))return Bc(s.escapedText);if(eR(s))return lz(s)}}function wF(s){return yP(s)&&YD(s)==="prototype"}function P7(s){return s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s||s.parent.kind===237&&s.parent.name===s}function rbe(s){return!!s.parent&&(jo(s.parent)&&s.parent.name===s||Yg(s.parent)&&s.parent.argumentExpression===s)}function HZe(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s||O3(s.parent)&&s.parent.right===s}function fAe(s){return fo(s)&&s.operatorToken.kind===104}function YZe(s){return fAe(s.parent)&&s===s.parent.right}function nbe(s){return s.kind===211&&s.properties.length===0}function QZe(s){return s.kind===210&&s.elements.length===0}function W7(s){if(!(!xVt(s)||!s.declarations)){for(let c of s.declarations)if(c.localSymbol)return c.localSymbol}}function xVt(s){return s&&B(s.declarations)>0&&Ga(s.declarations[0],2048)}function O7(s){return de(dLe,c=>aA(s,c))}function GVt(s){let c=[],g=s.length;for(let d=0;d>6|192),c.push(h&63|128)):h<65536?(c.push(h>>12|224),c.push(h>>6&63|128),c.push(h&63|128)):h<131072?(c.push(h>>18|240),c.push(h>>12&63|128),c.push(h>>6&63|128),c.push(h&63|128)):pe.assert(!1,"Unexpected code point")}return c}var RP="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function ibe(s){let c="",g=GVt(s),d=0,h=g.length,_,S,R,T;for(;d>2,S=(g[d]&3)<<4|g[d+1]>>4,R=(g[d+1]&15)<<2|g[d+2]>>6,T=g[d+2]&63,d+1>=h?R=T=64:d+2>=h&&(T=64),c+=RP.charAt(_)+RP.charAt(S)+RP.charAt(R)+RP.charAt(T),d+=3;return c}function FVt(s){let c="",g=0,d=s.length;for(;g>4&3,V=(S&15)<<4|R>>2&15,M=(R&3)<<6|T&63;V===0&&R!==0?d.push(W):M===0&&T!==0?d.push(W,V):d.push(W,V,M),h+=4}return FVt(d)}function obe(s,c){let g=Xs(c)?c:c.readFile(s);if(!g)return;let d=nU(g);if(d===void 0){let h=K$e(s,g);h.error||(d=h.config)}return d}function E3(s,c){return obe(s,c)||{}}function nU(s){try{return JSON.parse(s)}catch{return}}function f1(s,c){return!c.directoryExists||c.directoryExists(s)}var IAe=`\r +`,ZVt=` +`;function uN(s){switch(s.newLine){case 0:return IAe;case 1:case void 0:return ZVt}}function Gy(s,c=s){return pe.assert(c>=s||c===-1),{pos:s,end:c}}function hAe(s,c){return Gy(s.pos,c)}function KD(s,c){return Gy(c,s.end)}function jD(s){let c=LB(s)?be(s.modifiers,So):void 0;return c&&!wB(c.end)?KD(s,c.end):s}function Av(s){if(pi(s)||uu(s))return KD(s,s.name.pos);let c=LB(s)?li(s.modifiers):void 0;return c&&!wB(c.end)?KD(s,c.end):jD(s)}function QL(s,c){return Gy(s,s+Vi(c).length)}function S3(s,c){return UZe(s,s,c)}function M7(s,c,g){return yE(H7(s,g,!1),H7(c,g,!1),g)}function JZe(s,c,g){return yE(s.end,c.end,g)}function UZe(s,c,g){return yE(H7(s,g,!1),c.end,g)}function xne(s,c,g){return yE(s.end,H7(c,g,!1),g)}function v3(s,c,g,d){let h=H7(c,g,d);return ec(g,s.end,h)}function KZe(s,c,g){return ec(g,s.end,c.end)}function mAe(s,c){return!yE(s.pos,s.end,c)}function yE(s,c,g){return ec(g,s,c)===0}function H7(s,c,g){return wB(s.pos)?-1:Yu(c.text,s.pos,!1,g)}function jZe(s,c,g,d){let h=Yu(g.text,s,!1,d),_=Fqe(h,c,g);return ec(g,_??c,h)}function abe(s,c,g,d){let h=Yu(g.text,s,!1,d);return ec(g,s,Math.min(c,h))}function cy(s,c){return CAe(s.pos,s.end,c)}function CAe(s,c,g){return s<=g.pos&&c>=g.end}function Fqe(s,c=0,g){for(;s-- >c;)if(!dc(g.text.charCodeAt(s)))return s}function cbe(s){let c=$l(s);if(c)switch(c.parent.kind){case 267:case 268:return c===c.parent.name}return!1}function iU(s){return Me(s.declarations,Gne)}function Gne(s){return nc(s)&&s.initializer!==void 0}function lbe(s){return s.watch&&Da(s,"watch")}function dv(s){s.close()}function iI(s){return s.flags&33554432?s.links.checkFlags:0}function u2(s,c=!1){if(s.valueDeclaration){let g=c&&s.declarations&&de(s.declarations,Dg)||s.flags&32768&&de(s.declarations,Bg)||s.valueDeclaration,d=Hc(g);return s.parent&&s.parent.flags&32?d:d&-8}if(iI(s)&6){let g=s.links.checkFlags,d=g&1024?2:g&256?1:4,h=g&2048?256:0;return d|h}return s.flags&4194304?257:0}function FC(s,c){return s.flags&2097152?c.getAliasedSymbol(s):s}function sU(s){return s.exportSymbol?s.exportSymbol.flags|s.flags:s.flags}function _Ae(s){return Y7(s)===1}function B3(s){return Y7(s)!==0}function Y7(s){let{parent:c}=s;switch(c?.kind){case 218:return Y7(c);case 226:case 225:let{operator:g}=c;return g===46||g===47?2:0;case 227:let{left:d,operatorToken:h}=c;return d===s&&UD(h.kind)?h.kind===64?1:2:0;case 212:return c.name!==s?0:Y7(c);case 304:{let _=Y7(c.parent);return s===c.name?LVt(_):_}case 305:return s===c.objectAssignmentInitializer?0:Y7(c.parent);case 210:return Y7(c);case 250:case 251:return s===c.initializer?1:0;default:return 0}}function LVt(s){switch(s){case 0:return 1;case 1:return 0;case 2:return 2;default:return pe.assertNever(s)}}function yAe(s,c){if(!s||!c||Object.keys(s).length!==Object.keys(c).length)return!1;for(let g in s)if(typeof s[g]=="object"){if(!yAe(s[g],c[g]))return!1}else if(typeof s[g]!="function"&&s[g]!==c[g])return!1;return!0}function Fy(s,c){s.forEach(c),s.clear()}function gN(s,c,g){let{onDeleteValue:d,onExistingValue:h}=g;s.forEach((_,S)=>{var R;c?.has(S)?h&&h(_,(R=c.get)==null?void 0:R.call(c,S),S):(s.delete(S),d(_,S))})}function Q7(s,c,g){gN(s,c,g);let{createNewValue:d}=g;c?.forEach((h,_)=>{s.has(_)||s.set(_,d(_,h))})}function ube(s){if(s.flags&32){let c=AN(s);return!!c&&Ga(c,64)}return!1}function AN(s){var c;return(c=s.declarations)==null?void 0:c.find(xa)}function la(s){return s.flags&3899393?s.objectFlags:0}function bAe(s){return!!s&&!!s.declarations&&!!s.declarations[0]&&oEe(s.declarations[0])}function zZe({moduleSpecifier:s}){return Zg(s)?s.text:xp(s)}function gbe(s){let c;return Lu(s,g=>{u1(g)&&(c=g)},g=>{for(let d=g.length-1;d>=0;d--)if(u1(g[d])){c=g[d];break}}),c}function Zy(s,c){return s.has(c)?!1:(s.add(c),!0)}function YY(s){return xa(s)||g_(s)||mh(s)}function EAe(s){return s>=183&&s<=206||s===133||s===159||s===150||s===163||s===151||s===136||s===154||s===155||s===116||s===157||s===146||s===141||s===234||s===313||s===314||s===315||s===316||s===317||s===318||s===319}function _p(s){return s.kind===212||s.kind===213}function Abe(s){return s.kind===212?s.name:(pe.assert(s.kind===213),s.argumentExpression)}function Fne(s){return s.kind===276||s.kind===280}function oU(s){for(;_p(s);)s=s.expression;return s}function qZe(s,c){if(_p(s.parent)&&rbe(s))return g(s.parent);function g(d){if(d.kind===212){let h=c(d.name);if(h!==void 0)return h}else if(d.kind===213)if(Ir(d.argumentExpression)||mA(d.argumentExpression)){let h=c(d.argumentExpression);if(h!==void 0)return h}else return;if(_p(d.expression))return g(d.expression);if(Ir(d.expression))return c(d.expression)}}function aU(s,c){for(;;){switch(s.kind){case 226:s=s.operand;continue;case 227:s=s.left;continue;case 228:s=s.condition;continue;case 216:s=s.tag;continue;case 214:if(c)return s;case 235:case 213:case 212:case 236:case 356:case 239:s=s.expression;continue}return s}}function VVt(s,c){this.flags=s,this.escapedName=c,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function PVt(s,c){this.flags=c,(pe.isDebugging||ki)&&(this.checker=s)}function WVt(s,c){this.flags=c,pe.isDebugging&&(this.checker=s)}function dbe(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function OVt(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function Zqe(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function MVt(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}var ZC={getNodeConstructor:()=>dbe,getTokenConstructor:()=>OVt,getIdentifierConstructor:()=>Zqe,getPrivateIdentifierConstructor:()=>dbe,getSourceFileConstructor:()=>dbe,getSymbolConstructor:()=>VVt,getTypeConstructor:()=>PVt,getSignatureConstructor:()=>WVt,getSourceMapSourceConstructor:()=>MVt},Lqe=[];function Vqe(s){Lqe.push(s),s(ZC)}function $Ze(s){Object.assign(ZC,s),F(Lqe,c=>c(ZC))}function dN(s,c){return s.replace(/\{(\d+)\}/g,(g,d)=>""+pe.checkDefined(c[+d]))}var SAe;function cU(s){SAe=s}function eLe(s){!SAe&&s&&(SAe=s())}function Bu(s){return SAe&&SAe[s.key]||s.message}function QY(s,c,g,d,h,..._){g+d>c.length&&(d=c.length-g),he(c,g,d);let S=Bu(h);return jt(_)&&(S=dN(S,_)),{file:void 0,start:g,length:d,messageText:S,category:h.category,code:h.code,reportsUnnecessary:h.reportsUnnecessary,fileName:s}}function HVt(s){return s.file===void 0&&s.start!==void 0&&s.length!==void 0&&typeof s.fileName=="string"}function Pqe(s,c){let g=c.fileName||"",d=c.text.length;pe.assertEqual(s.fileName,g),pe.assertLessThanOrEqual(s.start,d),pe.assertLessThanOrEqual(s.start+s.length,d);let h={file:c,start:s.start,length:s.length,messageText:s.messageText,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary};if(s.relatedInformation){h.relatedInformation=[];for(let _ of s.relatedInformation)HVt(_)&&_.fileName===g?(pe.assertLessThanOrEqual(_.start,d),pe.assertLessThanOrEqual(_.start+_.length,d),h.relatedInformation.push(Pqe(_,c))):h.relatedInformation.push(_)}return h}function XL(s,c){let g=[];for(let d of s)g.push(Pqe(d,c));return g}function qh(s,c,g,d,...h){he(s.text,c,g);let _=Bu(d);return jt(h)&&(_=dN(_,h)),{file:s,start:c,length:g,messageText:_,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function XY(s,...c){let g=Bu(s);return jt(c)&&(g=dN(g,c)),g}function Nf(s,...c){let g=Bu(s);return jt(c)&&(g=dN(g,c)),{file:void 0,start:void 0,length:void 0,messageText:g,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function vAe(s,c){return{file:void 0,start:void 0,length:void 0,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:c}}function wu(s,c,...g){let d=Bu(c);return jt(g)&&(d=dN(d,g)),{messageText:d,category:c.category,code:c.code,next:s===void 0||Array.isArray(s)?s:[s]}}function Zne(s,c){let g=s;for(;g.next;)g=g.next[0];g.next=[c]}function pbe(s){return s.file?s.file.path:void 0}function X7(s,c){return tLe(s,c)||YVt(s,c)||0}function tLe(s,c){let g=fbe(s),d=fbe(c);return Ca(pbe(s),pbe(c))||Zt(s.start,c.start)||Zt(s.length,c.length)||Zt(g,d)||QVt(s,c)||0}function YVt(s,c){return!s.relatedInformation&&!c.relatedInformation?0:s.relatedInformation&&c.relatedInformation?Zt(c.relatedInformation.length,s.relatedInformation.length)||F(s.relatedInformation,(g,d)=>{let h=c.relatedInformation[d];return X7(g,h)})||0:s.relatedInformation?-1:1}function QVt(s,c){let g=Ibe(s),d=Ibe(c);typeof g!="string"&&(g=g.messageText),typeof d!="string"&&(d=d.messageText);let h=typeof s.messageText!="string"?s.messageText.next:void 0,_=typeof c.messageText!="string"?c.messageText.next:void 0,S=Ca(g,d);return S||(S=XVt(h,_),S)?S:s.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!s.canonicalHead?1:0}function XVt(s,c){return s===void 0&&c===void 0?0:s===void 0?1:c===void 0?-1:Wqe(s,c)||Oqe(s,c)}function Wqe(s,c){if(s===void 0&&c===void 0)return 0;if(s===void 0)return 1;if(c===void 0)return-1;let g=Zt(c.length,s.length);if(g)return g;for(let d=0;d{h.externalModuleIndicator=hEe(h)||!h.isDeclarationFile||void 0};case 1:return h=>{h.externalModuleIndicator=hEe(h)};case 2:let c=[hEe];(s.jsx===4||s.jsx===5)&&c.push(UVt),c.push(KVt);let g=Hp(...c);return h=>void(h.externalModuleIndicator=g(h,s))}}function hbe(s){let c=k_(s);return 3<=c&&c<=99||U7(s)||Pne(s)}function e$r(s){return s}var LC={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:s=>!!(s.allowImportingTsExtensions||s.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:s=>(s.target===0?void 0:s.target)??(s.module===100&&9||s.module===101&&9||s.module===102&&10||s.module===199&&99||1)},module:{dependencies:["target"],computeValue:s=>typeof s.module=="number"?s.module:LC.target.computeValue(s)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:s=>{let c=s.moduleResolution;if(c===void 0)switch(LC.module.computeValue(s)){case 1:c=2;break;case 100:case 101:case 102:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:s=>{if(s.moduleDetection!==void 0)return s.moduleDetection;let c=LC.module.computeValue(s);return 100<=c&&c<=199?3:2}},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:s=>!!(s.isolatedModules||s.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:s=>{if(s.esModuleInterop!==void 0)return s.esModuleInterop;switch(LC.module.computeValue(s)){case 100:case 101:case 102:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:s=>s.allowSyntheticDefaultImports!==void 0?s.allowSyntheticDefaultImports:LC.esModuleInterop.computeValue(s)||LC.module.computeValue(s)===4||LC.moduleResolution.computeValue(s)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:s=>{let c=LC.moduleResolution.computeValue(s);if(!lU(c))return!1;if(s.resolvePackageJsonExports!==void 0)return s.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:s=>{let c=LC.moduleResolution.computeValue(s);if(!lU(c))return!1;if(s.resolvePackageJsonImports!==void 0)return s.resolvePackageJsonImports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:s=>{if(s.resolveJsonModule!==void 0)return s.resolveJsonModule;switch(LC.module.computeValue(s)){case 102:case 199:return!0}return LC.moduleResolution.computeValue(s)===100}},declaration:{dependencies:["composite"],computeValue:s=>!!(s.declaration||s.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:s=>!!(s.preserveConstEnums||LC.isolatedModules.computeValue(s))},incremental:{dependencies:["composite"],computeValue:s=>!!(s.incremental||s.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:s=>!!(s.declarationMap&&LC.declaration.computeValue(s))},allowJs:{dependencies:["checkJs"],computeValue:s=>s.allowJs===void 0?!!s.checkJs:s.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:s=>s.useDefineForClassFields===void 0?LC.target.computeValue(s)>=9:s.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:s=>a_(s,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:s=>a_(s,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:s=>a_(s,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:s=>a_(s,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:s=>a_(s,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:s=>a_(s,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:s=>a_(s,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:s=>a_(s,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:s=>a_(s,"useUnknownInCatchVariables")}},J7=LC,rLe=LC.allowImportingTsExtensions.computeValue,Mg=LC.target.computeValue,i0=LC.module.computeValue,k_=LC.moduleResolution.computeValue,nLe=LC.moduleDetection.computeValue,sS=LC.isolatedModules.computeValue,kw=LC.esModuleInterop.computeValue,JY=LC.allowSyntheticDefaultImports.computeValue,U7=LC.resolvePackageJsonExports.computeValue,Pne=LC.resolvePackageJsonImports.computeValue,NP=LC.resolveJsonModule.computeValue,Ly=LC.declaration.computeValue,Fb=LC.preserveConstEnums.computeValue,DP=LC.incremental.computeValue,wAe=LC.declarationMap.computeValue,TF=LC.allowJs.computeValue,Wne=LC.useDefineForClassFields.computeValue;function One(s){return s>=5&&s<=99}function TAe(s){switch(i0(s)){case 0:case 4:case 3:return!1}return!0}function iLe(s){return s.allowUnreachableCode===!1}function sLe(s){return s.allowUnusedLabels===!1}function lU(s){return s>=3&&s<=99||s===100}function oLe(s){return 101<=s&&s<=199||s===200||s===99}function a_(s,c){return s[c]===void 0?!!s.strict:!!s[c]}function RAe(s){return Dh(H$e.type,(c,g)=>c===s?g:void 0)}function mbe(s){return s.useDefineForClassFields!==!1&&Mg(s)>=9}function Cbe(s,c){return S0(c,s,EWt)}function aLe(s,c){return S0(c,s,SWt)}function cLe(s,c){return S0(c,s,vWt)}function K7(s,c){return c.strictFlag?a_(s,c.name):c.allowJsFlag?TF(s):s[c.name]}function NAe(s){let c=s.jsx;return c===2||c===4||c===5}function Mne(s,c){let g=c?.pragmas.get("jsximportsource"),d=Ki(g)?g[g.length-1]:g,h=c?.pragmas.get("jsxruntime"),_=Ki(h)?h[h.length-1]:h;if(_?.arguments.factory!=="classic")return s.jsx===4||s.jsx===5||s.jsxImportSource||d||_?.arguments.factory==="automatic"?d?.arguments.factory||s.jsxImportSource||"react":void 0}function Hne(s,c){return s?`${s}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function _be(s){let c=!1;for(let g=0;gh,getSymlinkedDirectories:()=>g,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(T,W)=>(h||(h=new Map)).set(T,W),setSymlinkedDirectory:(T,W)=>{let V=Ou(T,s,c);sz(V)||(V=hp(V),W!==!1&&!g?.has(V)&&(d||(d=dl())).add(W.realPath,T),(g||(g=new Map)).set(V,W))},setSymlinksFromResolutions(T,W,V){pe.assert(!_),_=!0,T(M=>R(this,M.resolvedModule)),W(M=>R(this,M.resolvedTypeReferenceDirective)),V.forEach(M=>R(this,M.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>_,setSymlinksFromResolution(T){R(this,T)},hasAnySymlinks:S};function S(){return!!h?.size||!!g&&!!Dh(g,T=>!!T)}function R(T,W){if(!W||!W.originalPath||!W.resolvedFileName)return;let{resolvedFileName:V,originalPath:M}=W;T.setSymlinkedFile(Ou(M,s,c),V);let[ee,re]=jVt(V,M,s,c)||E;ee&&re&&T.setSymlinkedDirectory(re,{real:hp(ee),realPath:hp(Ou(ee,s,c))})}}function jVt(s,c,g,d){let h=Np(Xc(s,g)),_=Np(Xc(c,g)),S=!1;for(;h.length>=2&&_.length>=2&&!Hqe(h[h.length-2],d)&&!Hqe(_[_.length-2],d)&&d(h[h.length-1])===d(_[_.length-1]);)h.pop(),_.pop(),S=!0;return S?[Dm(h),Dm(_)]:void 0}function Hqe(s,c){return s!==void 0&&(c(s)==="node_modules"||Ac(s,"@"))}function zVt(s){return e0(s.charCodeAt(0))?s.slice(1):void 0}function DAe(s,c,g){let d=HS(s,c,g);return d===void 0?void 0:zVt(d)}var lLe=/[^\w\s/]/g;function Yqe(s){return s.replace(lLe,qVt)}function qVt(s){return"\\"+s}var $Vt=[42,63],ePt=["node_modules","bower_components","jspm_packages"],uLe=`(?!(?:${ePt.join("|")})(?:/|$))`,Qqe={singleAsteriskRegexFragment:"(?:[^./]|(?:\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(?:/${uLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>ALe(s,Qqe.singleAsteriskRegexFragment)},Xqe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(?:/${uLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>ALe(s,Xqe.singleAsteriskRegexFragment)},bbe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(?:/.+?)?",replaceWildcardCharacter:s=>ALe(s,bbe.singleAsteriskRegexFragment)},gLe={files:Qqe,directories:Xqe,exclude:bbe};function j7(s,c,g){let d=Yne(s,c,g);return!d||!d.length?void 0:`^(?:${d.map(S=>`(?:${S})`).join("|")})${g==="exclude"?"(?:$|/)":"$"}`}function Yne(s,c,g){if(!(s===void 0||s.length===0))return er(s,d=>d&&kAe(d,c,g,gLe[g]))}function Ebe(s){return!/[.*?]/.test(s)}function Sbe(s,c,g){let d=s&&kAe(s,c,g,gLe[g]);return d&&`^(?:${d})${g==="exclude"?"(?:$|/)":"$"}`}function kAe(s,c,g,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:h,replaceWildcardCharacter:_}=gLe[g]){let S="",R=!1,T=AB(s,c),W=Ei(T);if(g!=="exclude"&&W==="**")return;T[0]=ny(T[0]),Ebe(W)&&T.push("**","*");let V=0;for(let M of T){if(M==="**")S+=h;else if(g==="directories"&&(S+="(?:",V++),R&&(S+=ag),g!=="exclude"){let ee="";M.charCodeAt(0)===42?(ee+="(?:[^./]"+d+")?",M=M.substr(1)):M.charCodeAt(0)===63&&(ee+="[^./]",M=M.substr(1)),ee+=M.replace(lLe,_),ee!==M&&(S+=uLe),S+=ee}else S+=M.replace(lLe,_);R=!0}for(;V>0;)S+=")?",V--;return S}function ALe(s,c){return s==="*"?c:s==="?"?"[^/]":"\\"+s}function xAe(s,c,g,d,h){s=iu(s),h=iu(h);let _=Ro(h,s);return{includeFilePatterns:At(Yne(g,_,"files"),S=>`^${S}$`),includeFilePattern:j7(g,_,"files"),includeDirectoryPattern:j7(g,_,"directories"),excludePattern:j7(c,_,"exclude"),basePaths:tPt(s,g,d)}}function zD(s,c){return new RegExp(s,c?"":"i")}function vbe(s,c,g,d,h,_,S,R,T){s=iu(s),_=iu(_);let W=xAe(s,g,d,h,_),V=W.includeFilePatterns&&W.includeFilePatterns.map(Ee=>zD(Ee,h)),M=W.includeDirectoryPattern&&zD(W.includeDirectoryPattern,h),ee=W.excludePattern&&zD(W.excludePattern,h),re=V?V.map(()=>[]):[[]],ge=new Map,Ie=_d(h);for(let Ee of W.basePaths)_e(Ee,Ro(_,Ee),S);return Nr(re);function _e(Ee,Ne,Te){let Ze=Ie(T(Ne));if(ge.has(Ze))return;ge.set(Ze,!0);let{files:We,directories:Ue}=R(Ee);for(let $e of bo(We,Ca)){let Ye=Ro(Ee,$e),Tt=Ro(Ne,$e);if(!(c&&!fu(Ye,c))&&!(ee&&ee.test(Tt)))if(!V)re[0].push(Ye);else{let ot=Se(V,Qe=>Qe.test(Tt));ot!==-1&&re[ot].push(Ye)}}if(!(Te!==void 0&&(Te--,Te===0)))for(let $e of bo(Ue,Ca)){let Ye=Ro(Ee,$e),Tt=Ro(Ne,$e);(!M||M.test(Tt))&&(!ee||!ee.test(Tt))&&_e(Ye,Tt,Te)}}}function tPt(s,c,g){let d=[s];if(c){let h=[];for(let _ of c){let S=Xp(_)?_:iu(Ro(s,_));h.push(rPt(S))}h.sort(ld(!g));for(let _ of h)ue(d,S=>!Jh(S,_,s,!g))&&d.push(_)}return d}function rPt(s){let c=et(s,$Vt);return c<0?E0(s)?ny(Mo(s)):s:s.substring(0,s.lastIndexOf(ag,c))}function GAe(s,c){return c||FAe(s)||3}function FAe(s){switch(s.substr(s.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var ZAe=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Bbe=Nr(ZAe),nPt=[...ZAe,[".json"]],dLe=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],iPt=[[".js",".jsx"],[".mjs"],[".cjs"]],uU=Nr(iPt),LAe=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],sPt=[...LAe,[".json"]],VAe=[".d.ts",".d.cts",".d.mts"],Qne=[".ts",".cts",".mts",".tsx"],PAe=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function z7(s,c){let g=s&&TF(s);if(!c||c.length===0)return g?LAe:ZAe;let d=g?LAe:ZAe,h=Nr(d);return[...d,...Xt(c,S=>S.scriptKind===7||g&&oPt(S.scriptKind)&&!h.includes(S.extension)?[S.extension]:void 0)]}function q7(s,c){return!s||!NP(s)?c:c===LAe?sPt:c===ZAe?nPt:[...c,[".json"]]}function oPt(s){return s===1||s===2}function pN(s){return jt(uU,c=>aA(s,c))}function w3(s){return jt(Bbe,c=>aA(s,c))}function pLe(s){return jt(Qne,c=>aA(s,c))&&!PC(s)}var fLe=(s=>(s[s.Minimal=0]="Minimal",s[s.Index=1]="Index",s[s.JsExtension=2]="JsExtension",s[s.TsExtension=3]="TsExtension",s))(fLe||{});function aPt({imports:s},c=Hp(pN,w3)){return X(s,({text:g})=>Ip(g)&&!fu(g,PAe)?c(g):void 0)||!1}function ILe(s,c,g,d){let h=k_(g),_=3<=h&&h<=99;if(s==="js"||c===99&&_)return kie(g)&&S()!==2?3:2;if(s==="minimal")return 0;if(s==="index")return 1;if(!kie(g))return d&&aPt(d)?2:0;return S();function S(){let R=!1,T=d?.imports.length?d.imports:d&&n0(d)?cPt(d).map(W=>W.arguments[0]):E;for(let W of T)if(Ip(W.text)){if(_&&c===1&&dtt(d,W,g)===99||fu(W.text,PAe))continue;if(w3(W.text))return 3;pN(W.text)&&(R=!0)}return R?2:0}}function cPt(s){let c=0,g;for(let d of s.statements){if(c>3)break;ine(d)?g=Nn(g,d.declarationList.declarations.map(h=>h.initializer)):VC(d)&&ay(d.expression,!0)?g=Ft(g,d.expression):c++}return g||E}function wbe(s,c,g){if(!s)return!1;let d=z7(c,g);for(let h of Nr(q7(c,d)))if(aA(s,h))return!0;return!1}function Jqe(s){let c=s.match(/\//g);return c?c.length:0}function Xne(s,c){return Zt(Jqe(s),Jqe(c))}var hLe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function s0(s){for(let c of hLe){let g=mLe(s,c);if(g!==void 0)return g}return s}function mLe(s,c){return aA(s,c)?Jne(s,c):void 0}function Jne(s,c){return s.substring(0,s.length-c.length)}function fN(s,c){return K2(s,c,hLe,!1)}function UY(s){let c=s.indexOf("*");return c===-1?s:s.indexOf("*",c+1)!==-1?void 0:{prefix:s.substr(0,c),suffix:s.substr(c+1)}}var Uqe=new WeakMap;function $7(s){let c=Uqe.get(s);if(c!==void 0)return c;let g,d,h=_g(s);for(let _ of h){let S=UY(_);S!==void 0&&(typeof S=="string"?(g??(g=new Set)).add(S):(d??(d=[])).push(S))}return Uqe.set(s,c={matchableStringSet:g,patterns:d}),c}function wB(s){return!(s>=0)}function WAe(s){return s===".ts"||s===".tsx"||s===".d.ts"||s===".cts"||s===".mts"||s===".d.mts"||s===".d.cts"||Ac(s,".d.")&&di(s,".ts")}function ez(s){return WAe(s)||s===".json"}function tz(s){let c=QT(s);return c!==void 0?c:pe.fail(`File ${s} has unknown extension.`)}function Kqe(s){return QT(s)!==void 0}function QT(s){return de(hLe,c=>aA(s,c))}function rz(s,c){return s.checkJsDirective?s.checkJsDirective.enabled:c.checkJs}var Tbe={files:E,directories:E};function Rbe(s,c){let{matchableStringSet:g,patterns:d}=s;if(g?.has(c))return c;if(!(d===void 0||d.length===0))return YA(d,h=>h,c)}function Nbe(s,c){let g=s.indexOf(c);return pe.assert(g!==-1),s.slice(g)}function lg(s,...c){return c.length&&(s.relatedInformation||(s.relatedInformation=[]),pe.assert(s.relatedInformation!==E,"Diagnostic had empty array singleton for related info, but is still being constructed!"),s.relatedInformation.push(...c)),s}function CLe(s,c){pe.assert(s.length!==0);let g=c(s[0]),d=g;for(let h=1;hd&&(d=_)}return{min:g,max:d}}function Dbe(s){return{pos:MD(s),end:s.end}}function kbe(s,c){let g=c.pos-1,d=Math.min(s.text.length,Yu(s.text,c.end)+1);return{pos:g,end:d}}function T3(s,c,g){return jqe(s,c,g,!1)}function _Le(s,c,g){return jqe(s,c,g,!0)}function jqe(s,c,g,d){return c.skipLibCheck&&s.isDeclarationFile||c.skipDefaultLibCheck&&s.hasNoDefaultLib||!d&&c.noCheck||g.isSourceOfProjectReferenceRedirect(s.fileName)||!gU(s,c)}function gU(s,c){if(s.checkJsDirective&&s.checkJsDirective.enabled===!1)return!1;if(s.scriptKind===3||s.scriptKind===4||s.scriptKind===5)return!0;let d=(s.scriptKind===1||s.scriptKind===2)&&rz(s,c);return SY(s,c.checkJs)||d||s.scriptKind===7}function OAe(s,c){return s===c||typeof s=="object"&&s!==null&&typeof c=="object"&&c!==null&&Hu(s,c,OAe)}function nz(s){let c;switch(s.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let W=s.length-1,V=0;for(;s.charCodeAt(V)===48;)V++;return s.slice(V,W)||"0"}let g=2,d=s.length-1,h=(d-g)*c,_=new Uint16Array((h>>>4)+(h&15?1:0));for(let W=d-1,V=0;W>=g;W--,V+=c){let M=V>>>4,ee=s.charCodeAt(W),ge=(ee<=57?ee-48:10+ee-(ee<=70?65:97))<<(V&15);_[M]|=ge;let Ie=ge>>>16;Ie&&(_[M+1]|=Ie)}let S="",R=_.length-1,T=!0;for(;T;){let W=0;T=!1;for(let V=R;V>=0;V--){let M=W<<16|_[V],ee=M/10|0;_[V]=ee,W=M-ee*10,ee&&!T&&(R=V,T=!0)}S=W+S}return S}function kP({negative:s,base10Value:c}){return(s&&c!=="0"?"-":"")+c}function yLe(s){if(Une(s,!1))return xbe(s)}function xbe(s){let c=s.startsWith("-"),g=nz(`${c?s.slice(1):s}n`);return{negative:c,base10Value:g}}function Une(s,c){if(s==="")return!1;let g=wb(99,!1),d=!0;g.setOnError(()=>d=!1),g.setText(s+"n");let h=g.scan(),_=h===41;_&&(h=g.scan());let S=g.getTokenFlags();return d&&h===10&&g.getTokenEnd()===s.length+1&&!(S&512)&&(!c||s===kP({negative:_,base10Value:nz(g.getTokenValue())}))}function JL(s){return!!(s.flags&33554432)||GY(s)||Xge(s)||gPt(s)||uPt(s)||!(MT(s)||lPt(s))}function lPt(s){return Ir(s)&&a0(s.parent)&&s.parent.name===s}function uPt(s){for(;s.kind===80||s.kind===212;)s=s.parent;if(s.kind!==168)return!1;if(Ga(s.parent,64))return!0;let c=s.parent.parent.kind;return c===265||c===188}function gPt(s){if(s.kind!==80)return!1;let c=ji(s.parent,g=>{switch(g.kind){case 299:return!0;case 212:case 234:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===265}function bLe(s){return nh(s)&&Ir(s.typeName)}function ELe(s,c=yg){if(s.length<2)return!0;let g=s[0];for(let d=1,h=s.length;ds.includes(c))}function BLe(s){if(!s.parent)return;switch(s.kind){case 169:let{parent:g}=s;return g.kind===196?void 0:g.typeParameters;case 170:return s.parent.parameters;case 205:return s.parent.templateSpans;case 240:return s.parent.templateSpans;case 171:{let{parent:d}=s;return oQ(d)?d.modifiers:void 0}case 299:return s.parent.heritageClauses}let{parent:c}=s;if(u3(s))return yU(s.parent)?void 0:s.parent.tags;switch(c.kind){case 188:case 265:return Bx(s)?c.members:void 0;case 193:case 194:return c.types;case 190:case 210:case 357:case 276:case 280:return c.elements;case 211:case 293:return c.properties;case 214:case 215:return uc(s)?c.typeArguments:c.expression===s?void 0:c.arguments;case 285:case 289:return BJ(s)?c.children:void 0;case 287:case 286:return uc(s)?c.typeArguments:void 0;case 242:case 297:case 298:case 269:return c.statements;case 270:return c.clauses;case 264:case 232:return PI(s)?c.members:void 0;case 267:return LF(s)?c.members:void 0;case 308:return c.statements}}function MAe(s){if(!s.typeParameters){if(jt(s.parameters,c=>!kh(c)))return!0;if(s.kind!==220){let c=Nc(s.parameters);if(!(c&&SF(c)))return!0}}return!1}function oz(s){return s==="Infinity"||s==="-Infinity"||s==="NaN"}function wLe(s){return s.kind===261&&s.parent.kind===300}function RF(s){return s.kind===219||s.kind===220}function xP(s){return s.replace(/\$/g,()=>"\\$")}function IN(s){return(+s).toString()===s}function Kne(s,c,g,d,h){let _=h&&s==="new";return!_&&Uh(s,c)?me.createIdentifier(s):!d&&!_&&IN(s)&&+s>=0?me.createNumericLiteral(+s):me.createStringLiteral(s,!!g)}function az(s){return!!(s.flags&262144&&s.isThisType)}function HAe(s){let c=0,g=0,d=0,h=0,_;(W=>{W[W.BeforeNodeModules=0]="BeforeNodeModules",W[W.NodeModules=1]="NodeModules",W[W.Scope=2]="Scope",W[W.PackageContent=3]="PackageContent"})(_||(_={}));let S=0,R=0,T=0;for(;R>=0;)switch(S=R,R=s.indexOf("/",S+1),T){case 0:s.indexOf(Vx,S)===S&&(c=S,g=R,T=1);break;case 1:case 2:T===1&&s.charAt(S+1)==="@"?T=2:(d=R,T=3);break;case 3:s.indexOf(Vx,S)===S?T=1:T=3;break}return h=S,T>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:g,packageRootIndex:d,fileNameIndex:h}:void 0}function KY(s){switch(s.kind){case 169:case 264:case 265:case 266:case 267:case 347:case 339:case 341:return!0;case 274:return s.phaseModifier===156;case 277:return s.parent.parent.phaseModifier===156;case 282:return s.parent.parent.isTypeOnly;default:return!1}}function jne(s){return V3(s)||Ch(s)||ih(s)||pm(s)||g_(s)||KY(s)||xh(s)&&!_F(s)&&!vB(s)}function zne(s){if(!dY(s))return!1;let{isBracketed:c,typeExpression:g}=s;return c||!!g&&g.type.kind===317}function Zbe(s,c){if(s.length===0)return!1;let g=s.charCodeAt(0);return g===35?s.length>1&&bd(s.charCodeAt(1),c):bd(g,c)}function TLe(s){var c;return((c=qbe(s))==null?void 0:c.kind)===0}function YAe(s){return wo(s)&&(s.type&&s.type.kind===317||vL(s).some(zne))}function RB(s){switch(s.kind){case 173:case 172:return!!s.questionToken;case 170:return!!s.questionToken||YAe(s);case 349:case 342:return zne(s);default:return!1}}function QAe(s){let c=s.kind;return(c===212||c===213)&&hv(s.expression)}function Lbe(s){return wo(s)&&gI(s)&&Xm(s)&&!!fF(s)}function Vbe(s){return pe.checkDefined(XAe(s))}function XAe(s){let c=fF(s);return c&&c.typeExpression&&c.typeExpression.type}function cz(s){return Ir(s)?s.escapedText:oS(s)}function xw(s){return Ir(s)?Vo(s):lz(s)}function RLe(s){let c=s.kind;return c===80||c===296}function oS(s){return`${s.namespace.escapedText}:${Vo(s.name)}`}function lz(s){return`${Vo(s.namespace)}:${Vo(s.name)}`}function Pbe(s){return Ir(s)?Vo(s):lz(s)}function g2(s){return!!(s.flags&8576)}function A2(s){return s.flags&8192?s.escapedName:s.flags&384?Ap(""+s.value):pe.fail()}function jY(s){return!!s&&(jo(s)||Yg(s)||fo(s))}function NLe(s){return s===void 0?!1:!!Fie(s.attributes)}var dPt=String.prototype.replace;function R3(s,c){return dPt.call(s,"*",c)}function JAe(s){return Ir(s.name)?s.name.escapedText:Ap(s.name.text)}function DLe(s){switch(s.kind){case 169:case 170:case 173:case 172:case 186:case 185:case 180:case 181:case 182:case 175:case 174:case 176:case 177:case 178:case 179:case 184:case 183:case 187:case 188:case 189:case 190:case 193:case 194:case 197:case 191:case 192:case 198:case 199:case 195:case 196:case 204:case 206:case 203:case 329:case 330:case 347:case 339:case 341:case 346:case 345:case 325:case 326:case 327:case 342:case 349:case 318:case 316:case 315:case 313:case 314:case 323:case 319:case 310:case 334:case 336:case 335:case 351:case 344:case 200:case 201:case 263:case 242:case 269:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 252:case 253:case 254:case 255:case 256:case 257:case 258:case 259:case 261:case 209:case 264:case 265:case 266:case 267:case 268:case 273:case 272:case 279:case 278:case 243:case 260:case 283:return!0}return!1}function $h(s,c=!1,g=!1,d=!1){return{value:s,isSyntacticallyString:c,resolvedOtherFiles:g,hasExternalReferences:d}}function kLe({evaluateElementAccessExpression:s,evaluateEntityNameExpression:c}){function g(h,_){let S=!1,R=!1,T=!1;switch(h=QA(h),h.kind){case 225:let W=g(h.operand,_);if(R=W.resolvedOtherFiles,T=W.hasExternalReferences,typeof W.value=="number")switch(h.operator){case 40:return $h(W.value,S,R,T);case 41:return $h(-W.value,S,R,T);case 55:return $h(~W.value,S,R,T)}break;case 227:{let V=g(h.left,_),M=g(h.right,_);if(S=(V.isSyntacticallyString||M.isSyntacticallyString)&&h.operatorToken.kind===40,R=V.resolvedOtherFiles||M.resolvedOtherFiles,T=V.hasExternalReferences||M.hasExternalReferences,typeof V.value=="number"&&typeof M.value=="number")switch(h.operatorToken.kind){case 52:return $h(V.value|M.value,S,R,T);case 51:return $h(V.value&M.value,S,R,T);case 49:return $h(V.value>>M.value,S,R,T);case 50:return $h(V.value>>>M.value,S,R,T);case 48:return $h(V.value<=2)break;case 175:case 177:case 178:case 179:case 263:if(Ue&3&&nt==="arguments"){_t=g;break e}break;case 219:if(Ue&3&&nt==="arguments"){_t=g;break e}if(Ue&16){let ur=Ze.name;if(ur&&nt===ur.escapedText){_t=Ze.symbol;break e}}break;case 171:Ze.parent&&Ze.parent.kind===170&&(Ze=Ze.parent),Ze.parent&&(PI(Ze.parent)||Ze.parent.kind===264)&&(Ze=Ze.parent);break;case 347:case 339:case 341:case 352:let tr=KJ(Ze);tr&&(Ze=tr.parent);break;case 170:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&(Pt||(Pt=Ze));break;case 209:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&HL(Ze)&&!Pt&&(Pt=Ze);break;case 196:if(Ue&262144){let ur=Ze.typeParameter.name;if(ur&&nt===ur.escapedText){_t=Ze.typeParameter.symbol;break e}}break;case 282:Rt&&Rt===Ze.propertyName&&Ze.parent.parent.moduleSpecifier&&(Ze=Ze.parent.parent.parent);break}Ne(Ze,Rt)&&(Lt=Ze),Rt=Ze,Ze=ZB(Ze)?qge(Ze)||Ze.parent:(cS(Ze)||r9e(Ze))&&PL(Ze)||Ze.parent}if(Ye&&_t&&(!Lt||_t!==Lt.symbol)&&(_t.isReferenced|=Ue),!_t){if(Rt&&(pe.assertNode(Rt,ll),Rt.commonJsModuleIndicator&&nt==="exports"&&Ue&Rt.symbol.flags))return Rt.symbol;Tt||(_t=S(_,nt,Ue))}if(!_t&&ht&&wo(ht)&&ht.parent&&ay(ht.parent,!1))return c;if($e){if(Ke&&W(ht,nt,Ke,_t))return;_t?M(ht,_t,Ue,Rt,Pt,_r):V(ht,We,Ue,$e)}return _t}function _e(Ze,We,Ue){let $e=Mg(s),Ye=We;if(Si(Ue)&&Ye.body&&Ze.valueDeclaration&&Ze.valueDeclaration.pos>=Ye.body.pos&&Ze.valueDeclaration.end<=Ye.body.end&&$e>=2){let Qe=T(Ye);return Qe===void 0&&(Qe=F(Ye.parameters,Tt)||!1,R(Ye,Qe)),!Qe}return!1;function Tt(Qe){return ot(Qe.name)||!!Qe.initializer&&ot(Qe.initializer)}function ot(Qe){switch(Qe.kind){case 220:case 219:case 263:case 177:return!1;case 175:case 178:case 179:case 304:return ot(Qe.name);case 173:return zh(Qe)?!re:ot(Qe.name);default:return IJ(Qe)||GC(Qe)?$e<7:hg(Qe)&&Qe.dotDotDotToken&&Km(Qe.parent)?$e<4:uc(Qe)?!1:Lu(Qe,ot)||!1}}}function Ee(Ze,We){return Ze.kind!==220&&Ze.kind!==219?Fw(Ze)||(kd(Ze)||Ze.kind===173&&!cg(Ze))&&(!We||We!==Ze.name):We&&We===Ze.name?!1:Ze.asteriskToken||Ga(Ze,1024)?!0:!ZL(Ze)}function Ne(Ze,We){switch(Ze.kind){case 170:return!!We&&We===Ze.name;case 263:case 264:case 265:case 267:case 266:case 268:return!0;default:return!1}}function Te(Ze,We){if(Ze.declarations){for(let Ue of Ze.declarations)if(Ue.kind===169&&(ZB(Ue.parent)?bP(Ue.parent):Ue.parent)===We)return!(ZB(Ue.parent)&&de(Ue.parent.parent.tags,iS))}return!1}}function uz(s,c=!0){switch(pe.type(s),s.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 225:return s.operator===41?mC(s.operand)||c&&eQ(s.operand):s.operator===40?mC(s.operand):!1;default:return!1}}function KAe(s){for(;s.kind===218;)s=s.expression;return s}function jAe(s){switch(pe.type(s),s.kind){case 170:case 172:case 173:case 209:case 212:case 213:case 227:case 261:case 278:case 304:case 305:case 342:case 349:return!0;default:return!1}}function Obe(s){let c=ji(s,Mf);return!!c&&!c.importClause}var qne=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],$ne=new Set(qne),zAe=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),dU=new Set([...qne,...qne.map(s=>`node:${s}`),...zAe]);function eie(s,c,g,d){let h=wo(s),_=/import|require/g;for(;_.exec(s.text)!==null;){let S=pPt(s,_.lastIndex,c);if(h&&ay(S,g))d(S,S.arguments[0]);else if(Up(S)&&S.arguments.length>=1&&(!g||mA(S.arguments[0])))d(S,S.arguments[0]);else if(c&&ky(S))d(S,S.argument.literal);else if(c&&SN(S)){let R=LY(S);R&&Zg(R)&&R.text&&d(S,R)}}}function pPt(s,c,g){let d=wo(s),h=s,_=S=>{if(S.pos<=c&&(cg&&c(g))}function gz(s,c,g,d){let h;return _(s,c,void 0);function _(S,R,T){if(d){let V=d(S,T);if(V)return V}let W;return F(R,(V,M)=>{if(V&&h?.has(V.sourceFile.path)){(W??(W=new Set)).add(V);return}let ee=g(V,T,M);if(ee||!V)return ee;(h||(h=new Set)).add(V.sourceFile.path)})||F(R,V=>V&&!W?.has(V)?_(V.commandLine.projectReferences,V.references,V):void 0)}}function Hbe(s,c,g){return s&&zqe(s,c,g)}function zqe(s,c,g){return WJ(s,c,d=>OI(d.initializer)?de(d.initializer.elements,h=>Zg(h)&&h.text===g):void 0)}function xLe(s,c,g){return qAe(s,c,d=>Zg(d.initializer)&&d.initializer.text===g?d.initializer:void 0)}function qAe(s,c,g){return WJ(s,c,g)}function JA(s,c=!0){let g=s&&qqe(s);return g&&!c&&Vy(g),UL(g,!1)}function nie(s,c,g){let d=g(s);return d?ua(d,s):d=qqe(s,g),d&&!c&&Vy(d),d}function qqe(s,c){let g=c?_=>nie(_,!0,c):JA,h=_s(s,g,void 0,c?_=>_&&$Ae(_,!0,c):_=>_&&o0(_),g);if(h===s){let _=Zg(s)?ua(me.createStringLiteralFromNode(s),s):mC(s)?ua(me.createNumericLiteral(s.text,s.numericLiteralFlags),s):me.cloneNode(s);return gn(_,s)}return h.parent=void 0,h}function o0(s,c=!0){if(s){let g=me.createNodeArray(s.map(d=>JA(d,c)),s.hasTrailingComma);return gn(g,s),g}return s}function $Ae(s,c,g){return me.createNodeArray(s.map(d=>nie(d,c,g)),s.hasTrailingComma)}function Vy(s){Ybe(s),GLe(s)}function Ybe(s){pU(s,1024,fPt)}function GLe(s){pU(s,2048,gbe)}function pU(s,c,g){Gw(s,c);let d=g(s);d&&pU(d,c,g)}function fPt(s){return Lu(s,c=>c)}function FLe(){let s,c,g,d,h;return{createBaseSourceFileNode:_,createBaseIdentifierNode:S,createBasePrivateIdentifierNode:R,createBaseTokenNode:T,createBaseNode:W};function _(V){return new(h||(h=ZC.getSourceFileConstructor()))(V,-1,-1)}function S(V){return new(g||(g=ZC.getIdentifierConstructor()))(V,-1,-1)}function R(V){return new(d||(d=ZC.getPrivateIdentifierConstructor()))(V,-1,-1)}function T(V){return new(c||(c=ZC.getTokenConstructor()))(V,-1,-1)}function W(V){return new(s||(s=ZC.getNodeConstructor()))(V,-1,-1)}}function pv(s){let c,g;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:h,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:M,parenthesizeExpressionOfComputedPropertyName:ee,parenthesizeConditionOfConditionalExpression:re,parenthesizeBranchOfConditionalExpression:ge,parenthesizeExpressionOfExportDefault:Ie,parenthesizeExpressionOfNew:_e,parenthesizeLeftSideOfAccess:Ee,parenthesizeOperandOfPostfixUnary:Ne,parenthesizeOperandOfPrefixUnary:Te,parenthesizeExpressionsOfCommaDelimitedList:Ze,parenthesizeExpressionForDisallowedComma:We,parenthesizeExpressionOfExpressionStatement:Ue,parenthesizeConciseBodyOfArrowFunction:$e,parenthesizeCheckTypeOfConditionalType:Ye,parenthesizeExtendsTypeOfConditionalType:Tt,parenthesizeConstituentTypesOfUnionType:Qe,parenthesizeConstituentTypeOfUnionType:ot,parenthesizeConstituentTypesOfIntersectionType:ht,parenthesizeConstituentTypeOfIntersectionType:mt,parenthesizeOperandOfTypeOperator:_t,parenthesizeOperandOfReadonlyTypeOperator:Rt,parenthesizeNonArrayTypeOfPostfixType:Lt,parenthesizeElementTypesOfTupleType:Ke,parenthesizeElementTypeOfTupleType:Pt,parenthesizeTypeOfOptionalType:Gt,parenthesizeTypeArguments:tr,parenthesizeLeadingTypeArgument:nt};function d(ur){c||(c=new Map);let Gr=c.get(ur);return Gr||(Gr=dt=>V(ur,dt),c.set(ur,Gr)),Gr}function h(ur){g||(g=new Map);let Gr=g.get(ur);return Gr||(Gr=dt=>M(ur,void 0,dt),g.set(ur,Gr)),Gr}function _(ur,Gr){return ur===61?Gr===56||Gr===57:Gr===61?ur===56||ur===57:!1}function S(ur,Gr,dt,pr){let st=o2(Gr);if(fo(st)&&_(ur,st.operatorToken.kind))return!0;let ir=bne(227,ur),zt=Vye(227,ur);if(!dt&&Gr.kind===220&&ir>3)return!0;let Ht=x7(st);switch(Zt(Ht,ir)){case-1:return!(!dt&&zt===1&&Gr.kind===230);case 1:return!1;case 0:if(dt)return zt===1;if(fo(st)&&st.operatorToken.kind===ur){if(R(ur))return!1;if(ur===40){let mn=pr?T(pr):0;if(pY(mn)&&mn===T(st))return!1}}return Lye(st)===0}}function R(ur){return ur===42||ur===52||ur===51||ur===53||ur===28}function T(ur){if(ur=o2(ur),pY(ur.kind))return ur.kind;if(ur.kind===227&&ur.operatorToken.kind===40){if(ur.cachedLiteralKind!==void 0)return ur.cachedLiteralKind;let Gr=T(ur.left),dt=pY(Gr)&&Gr===T(ur.right)?Gr:0;return ur.cachedLiteralKind=dt,dt}return 0}function W(ur,Gr,dt,pr){return o2(Gr).kind===218?Gr:S(ur,Gr,dt,pr)?s.createParenthesizedExpression(Gr):Gr}function V(ur,Gr){return W(ur,Gr,!0)}function M(ur,Gr,dt){return W(ur,dt,!1,Gr)}function ee(ur){return dde(ur)?s.createParenthesizedExpression(ur):ur}function re(ur){let Gr=bne(228,58),dt=o2(ur),pr=x7(dt);return Zt(pr,Gr)!==1?s.createParenthesizedExpression(ur):ur}function ge(ur){let Gr=o2(ur);return dde(Gr)?s.createParenthesizedExpression(ur):ur}function Ie(ur){let Gr=o2(ur),dt=dde(Gr);if(!dt)switch(aU(Gr,!1).kind){case 232:case 219:dt=!0}return dt?s.createParenthesizedExpression(ur):ur}function _e(ur){let Gr=aU(ur,!0);switch(Gr.kind){case 214:return s.createParenthesizedExpression(ur);case 215:return Gr.arguments?ur:s.createParenthesizedExpression(ur)}return Ee(ur)}function Ee(ur,Gr){let dt=o2(ur);return D_(dt)&&(dt.kind!==215||dt.arguments)&&(Gr||!GC(dt))?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ne(ur){return D_(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Te(ur){return Nre(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ze(ur){let Gr=Tr(ur,We);return gn(s.createNodeArray(Gr,ur.hasTrailingComma),ur)}function We(ur){let Gr=o2(ur),dt=x7(Gr),pr=bne(227,28);return dt>pr?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ue(ur){let Gr=o2(ur);if(Zl(Gr)){let pr=Gr.expression,st=o2(pr).kind;if(st===219||st===220){let ir=s.updateCallExpression(Gr,gn(s.createParenthesizedExpression(pr),pr),Gr.typeArguments,Gr.arguments);return s.restoreOuterExpressions(ur,ir,8)}}let dt=aU(Gr,!1).kind;return dt===211||dt===219?gn(s.createParenthesizedExpression(ur),ur):ur}function $e(ur){return!$u(ur)&&(dde(ur)||aU(ur,!1).kind===211)?gn(s.createParenthesizedExpression(ur),ur):ur}function Ye(ur){switch(ur.kind){case 185:case 186:case 195:return s.createParenthesizedType(ur)}return ur}function Tt(ur){switch(ur.kind){case 195:return s.createParenthesizedType(ur)}return ur}function ot(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return Ye(ur)}function Qe(ur){return s.createNodeArray(Tr(ur,ot))}function mt(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return ot(ur)}function ht(ur){return s.createNodeArray(Tr(ur,mt))}function _t(ur){switch(ur.kind){case 194:return s.createParenthesizedType(ur)}return mt(ur)}function Rt(ur){switch(ur.kind){case 199:return s.createParenthesizedType(ur)}return _t(ur)}function Lt(ur){switch(ur.kind){case 196:case 199:case 187:return s.createParenthesizedType(ur)}return _t(ur)}function Ke(ur){return s.createNodeArray(Tr(ur,Pt))}function Pt(ur){return _r(ur)?s.createParenthesizedType(ur):ur}function _r(ur){return hie(ur)?ur.postfix:KT(ur)||x_(ur)||$D(ur)||xB(ur)?_r(ur.type):d2(ur)?_r(ur.falseType):aS(ur)||mf(ur)?_r(Ei(ur.types)):jT(ur)?!!ur.typeParameter.constraint&&_r(ur.typeParameter.constraint):!1}function Gt(ur){return _r(ur)?s.createParenthesizedType(ur):Lt(ur)}function nt(ur){return age(ur)&&ur.typeParameters?s.createParenthesizedType(ur):ur}function Dt(ur,Gr){return Gr===0?nt(ur):ur}function tr(ur){if(jt(ur))return s.createNodeArray(Tr(ur,Dt))}}var Qbe={getParenthesizeLeftSideOfBinaryForOperator:s=>Fl,getParenthesizeRightSideOfBinaryForOperator:s=>Fl,parenthesizeLeftSideOfBinary:(s,c)=>c,parenthesizeRightSideOfBinary:(s,c,g)=>g,parenthesizeExpressionOfComputedPropertyName:Fl,parenthesizeConditionOfConditionalExpression:Fl,parenthesizeBranchOfConditionalExpression:Fl,parenthesizeExpressionOfExportDefault:Fl,parenthesizeExpressionOfNew:s=>Ma(s,D_),parenthesizeLeftSideOfAccess:s=>Ma(s,D_),parenthesizeOperandOfPostfixUnary:s=>Ma(s,D_),parenthesizeOperandOfPrefixUnary:s=>Ma(s,Nre),parenthesizeExpressionsOfCommaDelimitedList:s=>Ma(s,tN),parenthesizeExpressionForDisallowedComma:Fl,parenthesizeExpressionOfExpressionStatement:Fl,parenthesizeConciseBodyOfArrowFunction:Fl,parenthesizeCheckTypeOfConditionalType:Fl,parenthesizeExtendsTypeOfConditionalType:Fl,parenthesizeConstituentTypesOfUnionType:s=>Ma(s,tN),parenthesizeConstituentTypeOfUnionType:Fl,parenthesizeConstituentTypesOfIntersectionType:s=>Ma(s,tN),parenthesizeConstituentTypeOfIntersectionType:Fl,parenthesizeOperandOfTypeOperator:Fl,parenthesizeOperandOfReadonlyTypeOperator:Fl,parenthesizeNonArrayTypeOfPostfixType:Fl,parenthesizeElementTypesOfTupleType:s=>Ma(s,tN),parenthesizeElementTypeOfTupleType:Fl,parenthesizeTypeOfOptionalType:Fl,parenthesizeTypeArguments:s=>s&&Ma(s,tN),parenthesizeLeadingTypeArgument:Fl};function ZLe(s){return{convertToFunctionBlock:c,convertToFunctionExpression:g,convertToClassExpression:d,convertToArrayAssignmentElement:h,convertToObjectAssignmentElement:_,convertToAssignmentPattern:S,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:T,convertToAssignmentElementTarget:W};function c(V,M){if($u(V))return V;let ee=s.createReturnStatement(V);gn(ee,V);let re=s.createBlock([ee],M);return gn(re,V),re}function g(V){var M;if(!V.body)return pe.fail("Cannot convert a FunctionDeclaration without a body");let ee=s.createFunctionExpression((M=$R(V))==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.asteriskToken,V.name,V.typeParameters,V.parameters,V.type,V.body);return ua(ee,V),gn(ee,V),D3(V)&&Md(ee,!0),ee}function d(V){var M;let ee=s.createClassExpression((M=V.modifiers)==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.name,V.typeParameters,V.heritageClauses,V.members);return ua(ee,V),gn(ee,V),D3(V)&&Md(ee,!0),ee}function h(V){if(hg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadElement(V.name),V),V);let M=W(V.name);return V.initializer?ua(gn(s.createAssignment(M,V.initializer),V),V):M}return Ma(V,un)}function _(V){if(hg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadAssignment(V.name),V),V);if(V.propertyName){let M=W(V.name);return ua(gn(s.createPropertyAssignment(V.propertyName,V.initializer?s.createAssignment(M,V.initializer):M),V),V)}return pe.assertNode(V.name,Ir),ua(gn(s.createShorthandPropertyAssignment(V.name,V.initializer),V),V)}return Ma(V,yw)}function S(V){switch(V.kind){case 208:case 210:return T(V);case 207:case 211:return R(V)}}function R(V){return Km(V)?ua(gn(s.createObjectLiteralExpression(At(V.elements,_)),V),V):Ma(V,og)}function T(V){return p2(V)?ua(gn(s.createArrayLiteralExpression(At(V.elements,h)),V),V):Ma(V,OI)}function W(V){return Nu(V)?S(V):Ma(V,un)}}var Xbe={convertToFunctionBlock:il,convertToFunctionExpression:il,convertToClassExpression:il,convertToArrayAssignmentElement:il,convertToObjectAssignmentElement:il,convertToAssignmentPattern:il,convertToObjectAssignmentPattern:il,convertToArrayAssignmentPattern:il,convertToAssignmentElementTarget:il},Jbe=0,Ube=(s=>(s[s.None=0]="None",s[s.NoParenthesizerRules=1]="NoParenthesizerRules",s[s.NoNodeConverters=2]="NoNodeConverters",s[s.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",s[s.NoOriginalNode=8]="NoOriginalNode",s))(Ube||{}),$qe=[];function e$e(s){$qe.push(s)}function iie(s,c){let g=s&8?Fl:ua,d=FA(()=>s&1?Qbe:pv(Ee)),h=FA(()=>s&2?Xbe:ZLe(Ee)),_=ZA(q=>(Ce,Pe)=>eo(Ce,q,Pe)),S=ZA(q=>Ce=>en(q,Ce)),R=ZA(q=>Ce=>_i(Ce,q)),T=ZA(q=>()=>hu(q)),W=ZA(q=>Ce=>KU(q,Ce)),V=ZA(q=>(Ce,Pe)=>Fo(q,Ce,Pe)),M=ZA(q=>(Ce,Pe)=>vE(q,Ce,Pe)),ee=ZA(q=>(Ce,Pe)=>$P(q,Ce,Pe)),re=ZA(q=>(Ce,Pe)=>y5(q,Ce,Pe)),ge=ZA(q=>(Ce,Pe,yt)=>rZ(q,Ce,Pe,yt)),Ie=ZA(q=>(Ce,Pe,yt)=>_se(q,Ce,Pe,yt)),_e=ZA(q=>(Ce,Pe,yt,Rr)=>b5(q,Ce,Pe,yt,Rr)),Ee={get parenthesizer(){return d()},get converters(){return h()},baseFactory:c,flags:s,createNodeArray:Ne,createNumericLiteral:Ue,createBigIntLiteral:$e,createStringLiteral:Tt,createStringLiteralFromNode:ot,createRegularExpressionLiteral:Qe,createLiteralLikeNode:mt,createIdentifier:Rt,createTempVariable:Lt,createLoopVariable:Ke,createUniqueName:Pt,getGeneratedNameForNode:_r,createPrivateIdentifier:nt,createUniquePrivateName:tr,getGeneratedPrivateNameForNode:ur,createToken:dt,createSuper:pr,createThis:st,createNull:ir,createTrue:zt,createFalse:Ht,createModifier:Br,createModifiersFromModifierFlags:mn,createQualifiedName:jn,updateQualifiedName:Zi,createComputedPropertyName:Ns,updateComputedPropertyName:An,createTypeParameterDeclaration:si,updateTypeParameterDeclaration:ks,createParameterDeclaration:Ic,updateParameterDeclaration:su,createDecorator:Zn,updateDecorator:ya,createPropertySignature:Gl,updatePropertySignature:ba,createPropertyDeclaration:hc,updatePropertyDeclaration:yr,createMethodSignature:hn,updateMethodSignature:Oi,createMethodDeclaration:lo,updateMethodDeclaration:pa,createConstructorDeclaration:Cs,updateConstructorDeclaration:Tu,createGetAccessorDeclaration:Pn,updateGetAccessorDeclaration:pt,createSetAccessorDeclaration:it,updateSetAccessorDeclaration:nr,createCallSignature:Kr,updateCallSignature:Dn,createConstructSignature:hr,updateConstructSignature:Sn,createIndexSignature:Ni,updateIndexSignature:Gi,createClassStaticBlockDeclaration:tl,updateClassStaticBlockDeclaration:Qu,createTemplateLiteralTypeSpan:nn,updateTemplateLiteralTypeSpan:En,createKeywordTypeNode:ds,createTypePredicateNode:Mt,updateTypePredicateNode:cn,createTypeReferenceNode:Bt,updateTypeReferenceNode:xe,createFunctionTypeNode:fr,updateFunctionTypeNode:Je,createConstructorTypeNode:Hn,updateConstructorTypeNode:ri,createTypeQueryNode:Ys,updateTypeQueryNode:tn,createTypeLiteralNode:wn,updateTypeLiteralNode:Mn,createArrayTypeNode:ci,updateArrayTypeNode:es,createTupleTypeNode:Wi,updateTupleTypeNode:Vn,createNamedTupleMember:Ui,updateNamedTupleMember:gs,createOptionalTypeNode:fs,updateOptionalTypeNode:bi,createRestTypeNode:mc,updateRestTypeNode:gg,createUnionTypeNode:wI,updateUnionTypeNode:AI,createIntersectionTypeNode:pp,updateIntersectionTypeNode:Dl,createConditionalTypeNode:yu,updateConditionalTypeNode:tm,createInferTypeNode:jp,updateInferTypeNode:Xg,createImportTypeNode:gu,updateImportTypeNode:bg,createParenthesizedType:KA,updateParenthesizedType:TA,createThisTypeNode:oi,createTypeOperatorNode:$d,updateTypeOperatorNode:YI,createIndexedAccessTypeNode:Fh,updateIndexedAccessTypeNode:WC,createMappedTypeNode:_f,updateMappedTypeNode:QI,createLiteralTypeNode:ve,updateLiteralTypeNode:mr,createTemplateLiteralType:sh,updateTemplateLiteralType:dS,createObjectBindingPattern:ln,updateObjectBindingPattern:ni,createArrayBindingPattern:Ls,updateArrayBindingPattern:Za,createBindingElement:Go,updateBindingElement:Ss,createArrayLiteralExpression:Uc,updateArrayLiteralExpression:rl,createObjectLiteralExpression:xd,updateObjectLiteralExpression:Lg,createPropertyAccessExpression:s&4?(q,Ce)=>ti(rm(q,Ce),262144):rm,updatePropertyAccessExpression:_h,createPropertyAccessChain:s&4?(q,Ce,Pe)=>ti(Gp(q,Ce,Pe),262144):Gp,updatePropertyAccessChain:oh,createElementAccessExpression:Z_,updateElementAccessExpression:m2,createElementAccessChain:Vb,updateElementAccessChain:or,createCallExpression:Js,updateCallExpression:Hl,createCallChain:RA,updateCallChain:NA,createNewExpression:uA,updateNewExpression:hm,createTaggedTemplateExpression:af,updateTaggedTemplateExpression:dI,createTypeAssertion:XI,updateTypeAssertion:C2,createParenthesizedExpression:d_,updateParenthesizedExpression:OC,createFunctionExpression:E1,updateFunctionExpression:gy,createArrowFunction:yv,updateArrowFunction:ik,createDeleteExpression:Wx,updateDeleteExpression:Ox,createTypeOfExpression:Pb,updateTypeOfExpression:qm,createVoidExpression:oR,updateVoidExpression:pS,createAwaitExpression:xN,updateAwaitExpression:at,createPrefixUnaryExpression:en,updatePrefixUnaryExpression:gi,createPostfixUnaryExpression:_i,updatePostfixUnaryExpression:ys,createBinaryExpression:eo,updateBinaryExpression:pc,createConditionalExpression:ul,updateConditionalExpression:Fe,createTemplateExpression:gr,updateTemplateExpression:Ln,createTemplateHead:Df,createTemplateMiddle:Jg,createTemplateTail:MC,createNoSubstitutionTemplateLiteral:S1,createTemplateLiteralLikeNode:Eu,createYieldExpression:fS,updateYieldExpression:bv,createSpreadElement:XF,updateSpreadElement:o9,createClassExpression:My,updateClassExpression:sk,createOmittedExpression:aR,createExpressionWithTypeArguments:WB,updateExpressionWithTypeArguments:UP,createAsExpression:br,updateAsExpression:sn,createNonNullExpression:ei,updateNonNullExpression:is,createSatisfiesExpression:Qs,updateSatisfiesExpression:Oo,createNonNullChain:Os,updateNonNullChain:co,createMetaProperty:Yc,updateMetaProperty:tu,createTemplateSpan:$a,updateTemplateSpan:ru,createSemicolonClassElement:gl,createBlock:kf,updateBlock:Wb,createVariableStatement:OB,updateVariableStatement:p_,createEmptyStatement:MB,createExpressionStatement:v1,updateExpressionStatement:s5,createIfStatement:GN,updateIfStatement:ok,createDoStatement:o5,updateDoStatement:ak,createWhileStatement:Ase,updateWhileStatement:mpe,createForStatement:dse,updateForStatement:Mx,createForInStatement:a5,updateForInStatement:WU,createForOfStatement:a9,updateForOfStatement:OU,createContinueStatement:qz,updateContinueStatement:Cpe,createBreakStatement:MU,updateBreakStatement:$z,createReturnStatement:c5,updateReturnStatement:pse,createWithStatement:HU,updateWithStatement:eq,createSwitchStatement:EQ,updateSwitchStatement:KP,createLabeledStatement:tq,updateLabeledStatement:rq,createThrowStatement:SQ,updateThrowStatement:jP,createTryStatement:c9,updateTryStatement:JF,createDebuggerStatement:UF,createVariableDeclaration:KF,updateVariableDeclaration:zP,createVariableDeclarationList:l5,updateVariableDeclarationList:YU,createFunctionDeclaration:u5,updateFunctionDeclaration:PA,createClassDeclaration:fse,updateClassDeclaration:jF,createInterfaceDeclaration:zF,updateInterfaceDeclaration:ck,createTypeAliasDeclaration:bf,updateTypeAliasDeclaration:l0,createEnumDeclaration:Ob,updateEnumDeclaration:u0,createModuleDeclaration:g5,updateModuleDeclaration:Ay,createModuleBlock:lk,updateModuleBlock:Hy,createCaseBlock:HB,updateCaseBlock:Mw,createNamespaceExportDeclaration:A5,updateNamespaceExportDeclaration:d5,createImportEqualsDeclaration:Ise,updateImportEqualsDeclaration:l9,createImportDeclaration:vQ,updateImportDeclaration:Sr,createImportClause:XU,updateImportClause:Hx,createAssertClause:Hw,updateAssertClause:u9,createAssertEntry:qP,updateAssertEntry:dy,createImportTypeAssertionContainer:cR,updateImportTypeAssertionContainer:YB,createImportAttributes:p5,updateImportAttributes:gA,createImportAttribute:IS,updateImportAttribute:g9,createNamespaceImport:JU,updateNamespaceImport:qF,createNamespaceExport:BQ,updateNamespaceExport:Ev,createNamedImports:Yx,updateNamedImports:f5,createImportSpecifier:A9,updateImportSpecifier:FN,createExportAssignment:wQ,updateExportAssignment:I5,createExportDeclaration:fa,updateExportDeclaration:sa,createNamedExports:UU,updateNamedExports:$F,createExportSpecifier:TQ,updateExportSpecifier:hse,createMissingDeclaration:ype,createExternalModuleReference:qo,updateExternalModuleReference:py,get createJSDocAllType(){return T(313)},get createJSDocUnknownType(){return T(314)},get createJSDocNonNullableType(){return M(316)},get updateJSDocNonNullableType(){return ee(316)},get createJSDocNullableType(){return M(315)},get updateJSDocNullableType(){return ee(315)},get createJSDocOptionalType(){return W(317)},get updateJSDocOptionalType(){return V(317)},get createJSDocVariadicType(){return W(319)},get updateJSDocVariadicType(){return V(319)},get createJSDocNamepathType(){return W(320)},get updateJSDocNamepathType(){return V(320)},createJSDocFunctionType:mse,updateJSDocFunctionType:nq,createJSDocTypeLiteral:G0,updateJSDocTypeLiteral:uk,createJSDocTypeExpression:lR,updateJSDocTypeExpression:eW,createJSDocSignature:jU,updateJSDocSignature:tW,createJSDocTemplateTag:Mb,updateJSDocTemplateTag:d9,createJSDocTypedefTag:h5,updateJSDocTypedefTag:iq,createJSDocParameterTag:m5,updateJSDocParameterTag:rW,createJSDocPropertyTag:sq,updateJSDocPropertyTag:eZ,createJSDocCallbackTag:ZN,updateJSDocCallbackTag:nW,createJSDocOverloadTag:C5,updateJSDocOverloadTag:p9,createJSDocAugmentsTag:iW,updateJSDocAugmentsTag:Qw,createJSDocImplementsTag:tZ,updateJSDocImplementsTag:cq,createJSDocSeeTag:Qx,updateJSDocSeeTag:sW,createJSDocImportTag:Hb,updateJSDocImportTag:vv,createJSDocNameReference:HC,updateJSDocNameReference:RQ,createJSDocMemberName:Xx,updateJSDocMemberName:_5,createJSDocLink:zU,updateJSDocLink:Jx,createJSDocLinkCode:Cse,updateJSDocLinkCode:oq,createJSDocLinkPlain:aq,updateJSDocLinkPlain:bpe,get createJSDocTypeTag(){return Ie(345)},get updateJSDocTypeTag(){return _e(345)},get createJSDocReturnTag(){return Ie(343)},get updateJSDocReturnTag(){return _e(343)},get createJSDocThisTag(){return Ie(344)},get updateJSDocThisTag(){return _e(344)},get createJSDocAuthorTag(){return re(331)},get updateJSDocAuthorTag(){return ge(331)},get createJSDocClassTag(){return re(333)},get updateJSDocClassTag(){return ge(333)},get createJSDocPublicTag(){return re(334)},get updateJSDocPublicTag(){return ge(334)},get createJSDocPrivateTag(){return re(335)},get updateJSDocPrivateTag(){return ge(335)},get createJSDocProtectedTag(){return re(336)},get updateJSDocProtectedTag(){return ge(336)},get createJSDocReadonlyTag(){return re(337)},get updateJSDocReadonlyTag(){return ge(337)},get createJSDocOverrideTag(){return re(338)},get updateJSDocOverrideTag(){return ge(338)},get createJSDocDeprecatedTag(){return re(332)},get updateJSDocDeprecatedTag(){return ge(332)},get createJSDocThrowsTag(){return Ie(350)},get updateJSDocThrowsTag(){return _e(350)},get createJSDocSatisfiesTag(){return Ie(351)},get updateJSDocSatisfiesTag(){return _e(351)},createJSDocEnumTag:YC,updateJSDocEnumTag:lq,createJSDocUnknownTag:qU,updateJSDocUnknownTag:Zh,createJSDocText:NQ,updateJSDocText:uR,createJSDocComment:oW,updateJSDocComment:f9,createJsxElement:uq,updateJsxElement:Epe,createJsxSelfClosingElement:TI,updateJsxSelfClosingElement:yse,createJsxOpeningElement:$U,updateJsxOpeningElement:DQ,createJsxClosingElement:gq,updateJsxClosingElement:F0,createJsxFragment:BE,createJsxText:E5,updateJsxText:wE,createJsxOpeningFragment:tK,createJsxJsxClosingFragment:Ux,updateJsxFragment:eK,createJsxAttribute:Aq,updateJsxAttribute:rK,createJsxAttributes:Xw,updateJsxAttributes:dq,createJsxSpreadAttribute:bse,updateJsxSpreadAttribute:pq,createJsxExpression:nK,updateJsxExpression:fq,createJsxNamespacedName:I9,updateJsxNamespacedName:B1,createCaseClause:LN,updateCaseClause:iK,createDefaultClause:sK,updateDefaultClause:jA,createHeritageClause:Uo,updateHeritageClause:mS,createCatchClause:$m,updateCatchClause:S5,createPropertyAssignment:oK,updatePropertyAssignment:kQ,createShorthandPropertyAssignment:aK,updateShorthandPropertyAssignment:Ae,createSpreadAssignment:fn,updateSpreadAssignment:qi,createEnumMember:ic,updateEnumMember:Oc,createSourceFile:zl,updateSourceFile:B5,createRedirectedSourceFile:Vc,createBundle:Qy,updateBundle:aW,createSyntheticExpression:Iq,createSyntaxList:QB,createNotEmittedStatement:Hf,createNotEmittedTypeElement:Jw,createPartiallyEmittedExpression:cK,updatePartiallyEmittedExpression:h9,createCommaListExpression:xQ,updateCommaListExpression:gWe,createSyntheticReferenceExpression:Spe,updateSyntheticReferenceExpression:hq,cloneNode:lK,get createComma(){return _(28)},get createAssignment(){return _(64)},get createLogicalOr(){return _(57)},get createLogicalAnd(){return _(56)},get createBitwiseOr(){return _(52)},get createBitwiseXor(){return _(53)},get createBitwiseAnd(){return _(51)},get createStrictEquality(){return _(37)},get createStrictInequality(){return _(38)},get createEquality(){return _(35)},get createInequality(){return _(36)},get createLessThan(){return _(30)},get createLessThanEquals(){return _(33)},get createGreaterThan(){return _(32)},get createGreaterThanEquals(){return _(34)},get createLeftShift(){return _(48)},get createRightShift(){return _(49)},get createUnsignedRightShift(){return _(50)},get createAdd(){return _(40)},get createSubtract(){return _(41)},get createMultiply(){return _(42)},get createDivide(){return _(44)},get createModulo(){return _(45)},get createExponent(){return _(43)},get createPrefixPlus(){return S(40)},get createPrefixMinus(){return S(41)},get createPrefixIncrement(){return S(46)},get createPrefixDecrement(){return S(47)},get createBitwiseNot(){return S(55)},get createLogicalNot(){return S(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:AWe,createImmediatelyInvokedArrowFunction:GQ,createVoidZero:uK,createExportDefault:Bpe,createExternalModuleExport:Cq,createTypeCheck:kl,createIsNotTypeCheck:lW,createMethodCall:no,createGlobalMethodCall:FQ,createFunctionBindCall:wpe,createFunctionCallCall:Ese,createFunctionApplyCall:Sse,createArraySliceCall:u2e,createArrayConcatCall:gK,createObjectDefinePropertyCall:dWe,createObjectGetOwnPropertyDescriptorCall:vse,createReflectGetCall:gk,createReflectSetCall:g2e,createPropertyDescriptor:pWe,createCallBinding:Bse,createAssignmentTargetWrapper:VN,inlineExpressions:rt,getInternalName:xr,getLocalName:Tn,getExportName:Ai,getDeclarationName:Pi,getNamespaceMemberName:Ba,getExternalModuleOrNamespaceExportName:Xo,restoreOuterExpressions:Rpe,restoreEnclosingLabel:T5,createUseStrictPrologue:Tl,copyPrologue:uo,copyStandardPrologue:bp,copyCustomPrologue:ep,ensureUseStrict:zA,liftToBlock:Bv,mergeLexicalEnvironment:C9,replaceModifiers:_9,replaceDecoratorsAndModifiers:Kx,replacePropertyName:uW};return F($qe,q=>q(Ee)),Ee;function Ne(q,Ce){if(q===void 0||q===E)q=[];else if(tN(q)){if(Ce===void 0||q.hasTrailingComma===Ce)return q.transformFlags===void 0&&fU(q),pe.attachNodeArrayDebugInfo(q),q;let Rr=q.slice();return Rr.pos=q.pos,Rr.end=q.end,Rr.hasTrailingComma=Ce,Rr.transformFlags=q.transformFlags,pe.attachNodeArrayDebugInfo(Rr),Rr}let Pe=q.length,yt=Pe>=1&&Pe<=4?q.slice():q;return yt.pos=-1,yt.end=-1,yt.hasTrailingComma=!!Ce,yt.transformFlags=0,fU(yt),pe.attachNodeArrayDebugInfo(yt),yt}function Te(q){return c.createBaseNode(q)}function Ze(q){let Ce=Te(q);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function We(q,Ce){return q!==Ce&&(q.typeArguments=Ce.typeArguments),vo(q,Ce)}function Ue(q,Ce=0){let Pe=typeof q=="number"?q+"":q;pe.assert(Pe.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let yt=Ze(9);return yt.text=Pe,yt.numericLiteralFlags=Ce,Ce&384&&(yt.transformFlags|=1024),yt}function $e(q){let Ce=Gr(10);return Ce.text=typeof q=="string"?q:kP(q)+"n",Ce.transformFlags|=32,Ce}function Ye(q,Ce){let Pe=Ze(11);return Pe.text=q,Pe.singleQuote=Ce,Pe}function Tt(q,Ce,Pe){let yt=Ye(q,Ce);return yt.hasExtendedUnicodeEscape=Pe,Pe&&(yt.transformFlags|=1024),yt}function ot(q){let Ce=Ye(c2(q),void 0);return Ce.textSourceNode=q,Ce}function Qe(q){let Ce=Gr(14);return Ce.text=q,Ce}function mt(q,Ce){switch(q){case 9:return Ue(Ce,0);case 10:return $e(Ce);case 11:return Tt(Ce,void 0);case 12:return E5(Ce,!1);case 13:return E5(Ce,!0);case 14:return Qe(Ce);case 15:return Eu(q,Ce,void 0,0)}}function ht(q){let Ce=c.createBaseIdentifierNode(80);return Ce.escapedText=q,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function _t(q,Ce,Pe,yt){let Rr=ht(Ap(q));return aie(Rr,{flags:Ce,id:Jbe,prefix:Pe,suffix:yt}),Jbe++,Rr}function Rt(q,Ce,Pe){Ce===void 0&&q&&(Ce=Ta(q)),Ce===80&&(Ce=void 0);let yt=ht(Ap(q));return Pe&&(yt.flags|=256),yt.escapedText==="await"&&(yt.transformFlags|=67108864),yt.flags&256&&(yt.transformFlags|=1024),yt}function Lt(q,Ce,Pe,yt){let Rr=1;Ce&&(Rr|=8);let Ii=_t("",Rr,Pe,yt);return q&&q(Ii),Ii}function Ke(q){let Ce=2;return q&&(Ce|=8),_t("",Ce,void 0,void 0)}function Pt(q,Ce=0,Pe,yt){return pe.assert(!(Ce&7),"Argument out of range: flags"),pe.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),_t(q,3|Ce,Pe,yt)}function _r(q,Ce=0,Pe,yt){pe.assert(!(Ce&7),"Argument out of range: flags");let Rr=q?_w(q)?M3(!1,Pe,q,yt,Vo):`generated@${rd(q)}`:"";(Pe||yt)&&(Ce|=16);let Ii=_t(Rr,4|Ce,Pe,yt);return Ii.original=q,Ii}function Gt(q){let Ce=c.createBasePrivateIdentifierNode(81);return Ce.escapedText=q,Ce.transformFlags|=16777216,Ce}function nt(q){return Ac(q,"#")||pe.fail("First character of private identifier must be #: "+q),Gt(Ap(q))}function Dt(q,Ce,Pe,yt){let Rr=Gt(Ap(q));return aie(Rr,{flags:Ce,id:Jbe,prefix:Pe,suffix:yt}),Jbe++,Rr}function tr(q,Ce,Pe){q&&!Ac(q,"#")&&pe.fail("First character of private identifier must be #: "+q);let yt=8|(q?3:1);return Dt(q??"",yt,Ce,Pe)}function ur(q,Ce,Pe){let yt=_w(q)?M3(!0,Ce,q,Pe,Vo):`#generated@${rd(q)}`,Ii=Dt(yt,4|(Ce||Pe?16:0),Ce,Pe);return Ii.original=q,Ii}function Gr(q){return c.createBaseTokenNode(q)}function dt(q){pe.assert(q>=0&&q<=166,"Invalid token"),pe.assert(q<=15||q>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),pe.assert(q<=9||q>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),pe.assert(q!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=Gr(q),Pe=0;switch(q){case 134:Pe=384;break;case 160:Pe=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Pe=1;break;case 108:Pe=134218752,Ce.flowNode=void 0;break;case 126:Pe=1024;break;case 129:Pe=16777216;break;case 110:Pe=16384,Ce.flowNode=void 0;break}return Pe&&(Ce.transformFlags|=Pe),Ce}function pr(){return dt(108)}function st(){return dt(110)}function ir(){return dt(106)}function zt(){return dt(112)}function Ht(){return dt(97)}function Br(q){return dt(q)}function mn(q){let Ce=[];return q&32&&Ce.push(Br(95)),q&128&&Ce.push(Br(138)),q&2048&&Ce.push(Br(90)),q&4096&&Ce.push(Br(87)),q&1&&Ce.push(Br(125)),q&2&&Ce.push(Br(123)),q&4&&Ce.push(Br(124)),q&64&&Ce.push(Br(128)),q&256&&Ce.push(Br(126)),q&16&&Ce.push(Br(164)),q&8&&Ce.push(Br(148)),q&512&&Ce.push(Br(129)),q&1024&&Ce.push(Br(134)),q&8192&&Ce.push(Br(103)),q&16384&&Ce.push(Br(147)),Ce.length?Ce:void 0}function jn(q,Ce){let Pe=Te(167);return Pe.left=q,Pe.right=Fm(Ce),Pe.transformFlags|=qs(Pe.left)|sie(Pe.right),Pe.flowNode=void 0,Pe}function Zi(q,Ce,Pe){return q.left!==Ce||q.right!==Pe?vo(jn(Ce,Pe),q):q}function Ns(q){let Ce=Te(168);return Ce.expression=d().parenthesizeExpressionOfComputedPropertyName(q),Ce.transformFlags|=qs(Ce.expression)|1024|131072,Ce}function An(q,Ce){return q.expression!==Ce?vo(Ns(Ce),q):q}function si(q,Ce,Pe,yt){let Rr=Ze(169);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.constraint=Pe,Rr.default=yt,Rr.transformFlags=1,Rr.expression=void 0,Rr.jsDoc=void 0,Rr}function ks(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.constraint!==yt||q.default!==Rr?vo(si(Ce,Pe,yt,Rr),q):q}function Ic(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(170);return Jo.modifiers=nd(q),Jo.dotDotDotToken=Ce,Jo.name=Fm(Pe),Jo.questionToken=yt,Jo.type=Rr,Jo.initializer=Z0(Ii),vF(Jo.name)?Jo.transformFlags=1:Jo.transformFlags=CA(Jo.modifiers)|qs(Jo.dotDotDotToken)|NB(Jo.name)|qs(Jo.questionToken)|qs(Jo.initializer)|(Jo.questionToken??Jo.type?1:0)|(Jo.dotDotDotToken??Jo.initializer?1024:0)|(Dw(Jo.modifiers)&31?8192:0),Jo.jsDoc=void 0,Jo}function su(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.dotDotDotToken!==Pe||q.name!==yt||q.questionToken!==Rr||q.type!==Ii||q.initializer!==Jo?vo(Ic(Ce,Pe,yt,Rr,Ii,Jo),q):q}function Zn(q){let Ce=Te(171);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=qs(Ce.expression)|1|8192|33554432,Ce}function ya(q,Ce){return q.expression!==Ce?vo(Zn(Ce),q):q}function Gl(q,Ce,Pe,yt){let Rr=Ze(172);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.type=yt,Rr.questionToken=Pe,Rr.transformFlags=1,Rr.initializer=void 0,Rr.jsDoc=void 0,Rr}function ba(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==yt||q.type!==Rr?Wo(Gl(Ce,Pe,yt,Rr),q):q}function Wo(q,Ce){return q!==Ce&&(q.initializer=Ce.initializer),vo(q,Ce)}function hc(q,Ce,Pe,yt,Rr){let Ii=Ze(173);Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.questionToken=Pe&&UT(Pe)?Pe:void 0,Ii.exclamationToken=Pe&&Cz(Pe)?Pe:void 0,Ii.type=yt,Ii.initializer=Z0(Rr);let Jo=Ii.flags&33554432||Dw(Ii.modifiers)&128;return Ii.transformFlags=CA(Ii.modifiers)|NB(Ii.name)|qs(Ii.initializer)|(Jo||Ii.questionToken||Ii.exclamationToken||Ii.type?1:0)|(Un(Ii.name)||Dw(Ii.modifiers)&256&&Ii.initializer?8192:0)|16777216,Ii.jsDoc=void 0,Ii}function yr(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==(yt!==void 0&&UT(yt)?yt:void 0)||q.exclamationToken!==(yt!==void 0&&Cz(yt)?yt:void 0)||q.type!==Rr||q.initializer!==Ii?vo(hc(Ce,Pe,yt,Rr,Ii),q):q}function hn(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(174);return Jo.modifiers=nd(q),Jo.name=Fm(Ce),Jo.questionToken=Pe,Jo.typeParameters=nd(yt),Jo.parameters=nd(Rr),Jo.type=Ii,Jo.transformFlags=1,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.typeArguments=void 0,Jo}function Oi(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==yt||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo?We(hn(Ce,Pe,yt,Rr,Ii,Jo),q):q}function lo(q,Ce,Pe,yt,Rr,Ii,Jo,Au){let cf=Ze(175);if(cf.modifiers=nd(q),cf.asteriskToken=Ce,cf.name=Fm(Pe),cf.questionToken=yt,cf.exclamationToken=void 0,cf.typeParameters=nd(Rr),cf.parameters=Ne(Ii),cf.type=Jo,cf.body=Au,!cf.body)cf.transformFlags=1;else{let _2=Dw(cf.modifiers)&1024,gW=!!cf.asteriskToken,gR=_2&&gW;cf.transformFlags=CA(cf.modifiers)|qs(cf.asteriskToken)|NB(cf.name)|qs(cf.questionToken)|CA(cf.typeParameters)|CA(cf.parameters)|qs(cf.type)|qs(cf.body)&-67108865|(gR?128:_2?256:gW?2048:0)|(cf.questionToken||cf.typeParameters||cf.type?1:0)|1024}return cf.typeArguments=void 0,cf.jsDoc=void 0,cf.locals=void 0,cf.nextContainer=void 0,cf.flowNode=void 0,cf.endFlowNode=void 0,cf.returnFlowNode=void 0,cf}function pa(q,Ce,Pe,yt,Rr,Ii,Jo,Au,cf){return q.modifiers!==Ce||q.asteriskToken!==Pe||q.name!==yt||q.questionToken!==Rr||q.typeParameters!==Ii||q.parameters!==Jo||q.type!==Au||q.body!==cf?Oa(lo(Ce,Pe,yt,Rr,Ii,Jo,Au,cf),q):q}function Oa(q,Ce){return q!==Ce&&(q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function tl(q){let Ce=Ze(176);return Ce.body=q,Ce.transformFlags=qs(q)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Qu(q,Ce){return q.body!==Ce?Tg(tl(Ce),q):q}function Tg(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function Cs(q,Ce,Pe){let yt=Ze(177);return yt.modifiers=nd(q),yt.parameters=Ne(Ce),yt.body=Pe,yt.body?yt.transformFlags=CA(yt.modifiers)|CA(yt.parameters)|qs(yt.body)&-67108865|1024:yt.transformFlags=1,yt.typeParameters=void 0,yt.type=void 0,yt.typeArguments=void 0,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.endFlowNode=void 0,yt.returnFlowNode=void 0,yt}function Tu(q,Ce,Pe,yt){return q.modifiers!==Ce||q.parameters!==Pe||q.body!==yt?Pr(Cs(Ce,Pe,yt),q):q}function Pr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),We(q,Ce)}function Pn(q,Ce,Pe,yt,Rr){let Ii=Ze(178);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.parameters=Ne(Pe),Ii.type=yt,Ii.body=Rr,Ii.body?Ii.transformFlags=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.parameters)|qs(Ii.type)|qs(Ii.body)&-67108865|(Ii.type?1:0):Ii.transformFlags=1,Ii.typeArguments=void 0,Ii.typeParameters=void 0,Ii.jsDoc=void 0,Ii.locals=void 0,Ii.nextContainer=void 0,Ii.flowNode=void 0,Ii.endFlowNode=void 0,Ii.returnFlowNode=void 0,Ii}function pt(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.parameters!==yt||q.type!==Rr||q.body!==Ii?on(Pn(Ce,Pe,yt,Rr,Ii),q):q}function on(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters),We(q,Ce)}function it(q,Ce,Pe,yt){let Rr=Ze(179);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.parameters=Ne(Pe),Rr.body=yt,Rr.body?Rr.transformFlags=CA(Rr.modifiers)|NB(Rr.name)|CA(Rr.parameters)|qs(Rr.body)&-67108865|(Rr.type?1:0):Rr.transformFlags=1,Rr.typeArguments=void 0,Rr.typeParameters=void 0,Rr.type=void 0,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr.endFlowNode=void 0,Rr.returnFlowNode=void 0,Rr}function nr(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.parameters!==yt||q.body!==Rr?Fr(it(Ce,Pe,yt,Rr),q):q}function Fr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),We(q,Ce)}function Kr(q,Ce,Pe){let yt=Ze(180);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Dn(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?We(Kr(Ce,Pe,yt),q):q}function hr(q,Ce,Pe){let yt=Ze(181);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Sn(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?We(hr(Ce,Pe,yt),q):q}function Ni(q,Ce,Pe){let yt=Ze(182);return yt.modifiers=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Gi(q,Ce,Pe,yt){return q.parameters!==Pe||q.type!==yt||q.modifiers!==Ce?We(Ni(Ce,Pe,yt),q):q}function nn(q,Ce){let Pe=Te(205);return Pe.type=q,Pe.literal=Ce,Pe.transformFlags=1,Pe}function En(q,Ce,Pe){return q.type!==Ce||q.literal!==Pe?vo(nn(Ce,Pe),q):q}function ds(q){return dt(q)}function Mt(q,Ce,Pe){let yt=Te(183);return yt.assertsModifier=q,yt.parameterName=Fm(Ce),yt.type=Pe,yt.transformFlags=1,yt}function cn(q,Ce,Pe,yt){return q.assertsModifier!==Ce||q.parameterName!==Pe||q.type!==yt?vo(Mt(Ce,Pe,yt),q):q}function Bt(q,Ce){let Pe=Te(184);return Pe.typeName=Fm(q),Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ne(Ce)),Pe.transformFlags=1,Pe}function xe(q,Ce,Pe){return q.typeName!==Ce||q.typeArguments!==Pe?vo(Bt(Ce,Pe),q):q}function fr(q,Ce,Pe){let yt=Ze(185);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.modifiers=void 0,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Je(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?In(fr(Ce,Pe,yt),q):q}function In(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),We(q,Ce)}function Hn(...q){return q.length===4?Ot(...q):q.length===3?$r(...q):pe.fail("Incorrect number of arguments specified.")}function Ot(q,Ce,Pe,yt){let Rr=Ze(186);return Rr.modifiers=nd(q),Rr.typeParameters=nd(Ce),Rr.parameters=nd(Pe),Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.typeArguments=void 0,Rr}function $r(q,Ce,Pe){return Ot(void 0,q,Ce,Pe)}function ri(...q){return q.length===5?ao(...q):q.length===4?Bs(...q):pe.fail("Incorrect number of arguments specified.")}function ao(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.typeParameters!==Pe||q.parameters!==yt||q.type!==Rr?We(Hn(Ce,Pe,yt,Rr),q):q}function Bs(q,Ce,Pe,yt){return ao(q,q.modifiers,Ce,Pe,yt)}function Ys(q,Ce){let Pe=Te(187);return Pe.exprName=q,Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Pe.transformFlags=1,Pe}function tn(q,Ce,Pe){return q.exprName!==Ce||q.typeArguments!==Pe?vo(Ys(Ce,Pe),q):q}function wn(q){let Ce=Ze(188);return Ce.members=Ne(q),Ce.transformFlags=1,Ce}function Mn(q,Ce){return q.members!==Ce?vo(wn(Ce),q):q}function ci(q){let Ce=Te(189);return Ce.elementType=d().parenthesizeNonArrayTypeOfPostfixType(q),Ce.transformFlags=1,Ce}function es(q,Ce){return q.elementType!==Ce?vo(ci(Ce),q):q}function Wi(q){let Ce=Te(190);return Ce.elements=Ne(d().parenthesizeElementTypesOfTupleType(q)),Ce.transformFlags=1,Ce}function Vn(q,Ce){return q.elements!==Ce?vo(Wi(Ce),q):q}function Ui(q,Ce,Pe,yt){let Rr=Ze(203);return Rr.dotDotDotToken=q,Rr.name=Ce,Rr.questionToken=Pe,Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr}function gs(q,Ce,Pe,yt,Rr){return q.dotDotDotToken!==Ce||q.name!==Pe||q.questionToken!==yt||q.type!==Rr?vo(Ui(Ce,Pe,yt,Rr),q):q}function fs(q){let Ce=Te(191);return Ce.type=d().parenthesizeTypeOfOptionalType(q),Ce.transformFlags=1,Ce}function bi(q,Ce){return q.type!==Ce?vo(fs(Ce),q):q}function mc(q){let Ce=Te(192);return Ce.type=q,Ce.transformFlags=1,Ce}function gg(q,Ce){return q.type!==Ce?vo(mc(Ce),q):q}function Ag(q,Ce,Pe){let yt=Te(q);return yt.types=Ee.createNodeArray(Pe(Ce)),yt.transformFlags=1,yt}function _u(q,Ce,Pe){return q.types!==Ce?vo(Ag(q.kind,Ce,Pe),q):q}function wI(q){return Ag(193,q,d().parenthesizeConstituentTypesOfUnionType)}function AI(q,Ce){return _u(q,Ce,d().parenthesizeConstituentTypesOfUnionType)}function pp(q){return Ag(194,q,d().parenthesizeConstituentTypesOfIntersectionType)}function Dl(q,Ce){return _u(q,Ce,d().parenthesizeConstituentTypesOfIntersectionType)}function yu(q,Ce,Pe,yt){let Rr=Te(195);return Rr.checkType=d().parenthesizeCheckTypeOfConditionalType(q),Rr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(Ce),Rr.trueType=Pe,Rr.falseType=yt,Rr.transformFlags=1,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function tm(q,Ce,Pe,yt,Rr){return q.checkType!==Ce||q.extendsType!==Pe||q.trueType!==yt||q.falseType!==Rr?vo(yu(Ce,Pe,yt,Rr),q):q}function jp(q){let Ce=Te(196);return Ce.typeParameter=q,Ce.transformFlags=1,Ce}function Xg(q,Ce){return q.typeParameter!==Ce?vo(jp(Ce),q):q}function sh(q,Ce){let Pe=Te(204);return Pe.head=q,Pe.templateSpans=Ne(Ce),Pe.transformFlags=1,Pe}function dS(q,Ce,Pe){return q.head!==Ce||q.templateSpans!==Pe?vo(sh(Ce,Pe),q):q}function gu(q,Ce,Pe,yt,Rr=!1){let Ii=Te(206);return Ii.argument=q,Ii.attributes=Ce,Ii.assertions&&Ii.assertions.assertClause&&Ii.attributes&&(Ii.assertions.assertClause=Ii.attributes),Ii.qualifier=Pe,Ii.typeArguments=yt&&d().parenthesizeTypeArguments(yt),Ii.isTypeOf=Rr,Ii.transformFlags=1,Ii}function bg(q,Ce,Pe,yt,Rr,Ii=q.isTypeOf){return q.argument!==Ce||q.attributes!==Pe||q.qualifier!==yt||q.typeArguments!==Rr||q.isTypeOf!==Ii?vo(gu(Ce,Pe,yt,Rr,Ii),q):q}function KA(q){let Ce=Te(197);return Ce.type=q,Ce.transformFlags=1,Ce}function TA(q,Ce){return q.type!==Ce?vo(KA(Ce),q):q}function oi(){let q=Te(198);return q.transformFlags=1,q}function $d(q,Ce){let Pe=Te(199);return Pe.operator=q,Pe.type=q===148?d().parenthesizeOperandOfReadonlyTypeOperator(Ce):d().parenthesizeOperandOfTypeOperator(Ce),Pe.transformFlags=1,Pe}function YI(q,Ce){return q.type!==Ce?vo($d(q.operator,Ce),q):q}function Fh(q,Ce){let Pe=Te(200);return Pe.objectType=d().parenthesizeNonArrayTypeOfPostfixType(q),Pe.indexType=Ce,Pe.transformFlags=1,Pe}function WC(q,Ce,Pe){return q.objectType!==Ce||q.indexType!==Pe?vo(Fh(Ce,Pe),q):q}function _f(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(201);return Jo.readonlyToken=q,Jo.typeParameter=Ce,Jo.nameType=Pe,Jo.questionToken=yt,Jo.type=Rr,Jo.members=Ii&&Ne(Ii),Jo.transformFlags=1,Jo.locals=void 0,Jo.nextContainer=void 0,Jo}function QI(q,Ce,Pe,yt,Rr,Ii,Jo){return q.readonlyToken!==Ce||q.typeParameter!==Pe||q.nameType!==yt||q.questionToken!==Rr||q.type!==Ii||q.members!==Jo?vo(_f(Ce,Pe,yt,Rr,Ii,Jo),q):q}function ve(q){let Ce=Te(202);return Ce.literal=q,Ce.transformFlags=1,Ce}function mr(q,Ce){return q.literal!==Ce?vo(ve(Ce),q):q}function ln(q){let Ce=Te(207);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function ni(q,Ce){return q.elements!==Ce?vo(ln(Ce),q):q}function Ls(q){let Ce=Te(208);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements)|1024|524288,Ce}function Za(q,Ce){return q.elements!==Ce?vo(Ls(Ce),q):q}function Go(q,Ce,Pe,yt){let Rr=Ze(209);return Rr.dotDotDotToken=q,Rr.propertyName=Fm(Ce),Rr.name=Fm(Pe),Rr.initializer=Z0(yt),Rr.transformFlags|=qs(Rr.dotDotDotToken)|NB(Rr.propertyName)|NB(Rr.name)|qs(Rr.initializer)|(Rr.dotDotDotToken?32768:0)|1024,Rr.flowNode=void 0,Rr}function Ss(q,Ce,Pe,yt,Rr){return q.propertyName!==Pe||q.dotDotDotToken!==Ce||q.name!==yt||q.initializer!==Rr?vo(Go(Ce,Pe,yt,Rr),q):q}function Uc(q,Ce){let Pe=Te(210),yt=q&&li(q),Rr=Ne(q,yt&&yp(yt)?!0:void 0);return Pe.elements=d().parenthesizeExpressionsOfCommaDelimitedList(Rr),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.elements),Pe}function rl(q,Ce){return q.elements!==Ce?vo(Uc(Ce,q.multiLine),q):q}function xd(q,Ce){let Pe=Ze(211);return Pe.properties=Ne(q),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.properties),Pe.jsDoc=void 0,Pe}function Lg(q,Ce){return q.properties!==Ce?vo(xd(Ce,q.multiLine),q):q}function yf(q,Ce,Pe){let yt=Ze(212);return yt.expression=q,yt.questionDotToken=Ce,yt.name=Pe,yt.transformFlags=qs(yt.expression)|qs(yt.questionDotToken)|(Ir(yt.name)?sie(yt.name):qs(yt.name)|536870912),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function rm(q,Ce){let Pe=yf(d().parenthesizeLeftSideOfAccess(q,!1),void 0,Fm(Ce));return rr(q)&&(Pe.transformFlags|=384),Pe}function _h(q,Ce,Pe){return vx(q)?oh(q,Ce,q.questionDotToken,Ma(Pe,Ir)):q.expression!==Ce||q.name!==Pe?vo(rm(Ce,Pe),q):q}function Gp(q,Ce,Pe){let yt=yf(d().parenthesizeLeftSideOfAccess(q,!0),Ce,Fm(Pe));return yt.flags|=64,yt.transformFlags|=32,yt}function oh(q,Ce,Pe,yt){return pe.assert(!!(q.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.name!==yt?vo(Gp(Ce,Pe,yt),q):q}function b1(q,Ce,Pe){let yt=Ze(213);return yt.expression=q,yt.questionDotToken=Ce,yt.argumentExpression=Pe,yt.transformFlags|=qs(yt.expression)|qs(yt.questionDotToken)|qs(yt.argumentExpression),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function Z_(q,Ce){let Pe=b1(d().parenthesizeLeftSideOfAccess(q,!1),void 0,y9(Ce));return rr(q)&&(Pe.transformFlags|=384),Pe}function m2(q,Ce,Pe){return IF(q)?or(q,Ce,q.questionDotToken,Pe):q.expression!==Ce||q.argumentExpression!==Pe?vo(Z_(Ce,Pe),q):q}function Vb(q,Ce,Pe){let yt=b1(d().parenthesizeLeftSideOfAccess(q,!0),Ce,y9(Pe));return yt.flags|=64,yt.transformFlags|=32,yt}function or(q,Ce,Pe,yt){return pe.assert(!!(q.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.argumentExpression!==yt?vo(Vb(Ce,Pe,yt),q):q}function qn(q,Ce,Pe,yt){let Rr=Ze(214);return Rr.expression=q,Rr.questionDotToken=Ce,Rr.typeArguments=Pe,Rr.arguments=yt,Rr.transformFlags|=qs(Rr.expression)|qs(Rr.questionDotToken)|CA(Rr.typeArguments)|CA(Rr.arguments),Rr.typeArguments&&(Rr.transformFlags|=1),xy(Rr.expression)&&(Rr.transformFlags|=16384),Rr}function Js(q,Ce,Pe){let yt=qn(d().parenthesizeLeftSideOfAccess(q,!1),void 0,nd(Ce),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(Pe)));return an(yt.expression)&&(yt.transformFlags|=8388608),yt}function Hl(q,Ce,Pe,yt){return _B(q)?NA(q,Ce,q.questionDotToken,Pe,yt):q.expression!==Ce||q.typeArguments!==Pe||q.arguments!==yt?vo(Js(Ce,Pe,yt),q):q}function RA(q,Ce,Pe,yt){let Rr=qn(d().parenthesizeLeftSideOfAccess(q,!0),Ce,nd(Pe),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(yt)));return Rr.flags|=64,Rr.transformFlags|=32,Rr}function NA(q,Ce,Pe,yt,Rr){return pe.assert(!!(q.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.typeArguments!==yt||q.arguments!==Rr?vo(RA(Ce,Pe,yt,Rr),q):q}function uA(q,Ce,Pe){let yt=Ze(215);return yt.expression=d().parenthesizeExpressionOfNew(q),yt.typeArguments=nd(Ce),yt.arguments=Pe?d().parenthesizeExpressionsOfCommaDelimitedList(Pe):void 0,yt.transformFlags|=qs(yt.expression)|CA(yt.typeArguments)|CA(yt.arguments)|32,yt.typeArguments&&(yt.transformFlags|=1),yt}function hm(q,Ce,Pe,yt){return q.expression!==Ce||q.typeArguments!==Pe||q.arguments!==yt?vo(uA(Ce,Pe,yt),q):q}function af(q,Ce,Pe){let yt=Te(216);return yt.tag=d().parenthesizeLeftSideOfAccess(q,!1),yt.typeArguments=nd(Ce),yt.template=Pe,yt.transformFlags|=qs(yt.tag)|CA(yt.typeArguments)|qs(yt.template)|1024,yt.typeArguments&&(yt.transformFlags|=1),Wye(yt.template)&&(yt.transformFlags|=128),yt}function dI(q,Ce,Pe,yt){return q.tag!==Ce||q.typeArguments!==Pe||q.template!==yt?vo(af(Ce,Pe,yt),q):q}function XI(q,Ce){let Pe=Te(217);return Pe.expression=d().parenthesizeOperandOfPrefixUnary(Ce),Pe.type=q,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.type)|1,Pe}function C2(q,Ce,Pe){return q.type!==Ce||q.expression!==Pe?vo(XI(Ce,Pe),q):q}function d_(q){let Ce=Te(218);return Ce.expression=q,Ce.transformFlags=qs(Ce.expression),Ce.jsDoc=void 0,Ce}function OC(q,Ce){return q.expression!==Ce?vo(d_(Ce),q):q}function E1(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=Ze(219);Au.modifiers=nd(q),Au.asteriskToken=Ce,Au.name=Fm(Pe),Au.typeParameters=nd(yt),Au.parameters=Ne(Rr),Au.type=Ii,Au.body=Jo;let cf=Dw(Au.modifiers)&1024,_2=!!Au.asteriskToken,gW=cf&&_2;return Au.transformFlags=CA(Au.modifiers)|qs(Au.asteriskToken)|NB(Au.name)|CA(Au.typeParameters)|CA(Au.parameters)|qs(Au.type)|qs(Au.body)&-67108865|(gW?128:cf?256:_2?2048:0)|(Au.typeParameters||Au.type?1:0)|4194304,Au.typeArguments=void 0,Au.jsDoc=void 0,Au.locals=void 0,Au.nextContainer=void 0,Au.flowNode=void 0,Au.endFlowNode=void 0,Au.returnFlowNode=void 0,Au}function gy(q,Ce,Pe,yt,Rr,Ii,Jo,Au){return q.name!==yt||q.modifiers!==Ce||q.asteriskToken!==Pe||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo||q.body!==Au?We(E1(Ce,Pe,yt,Rr,Ii,Jo,Au),q):q}function yv(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(220);Jo.modifiers=nd(q),Jo.typeParameters=nd(Ce),Jo.parameters=Ne(Pe),Jo.type=yt,Jo.equalsGreaterThanToken=Rr??dt(39),Jo.body=d().parenthesizeConciseBodyOfArrowFunction(Ii);let Au=Dw(Jo.modifiers)&1024;return Jo.transformFlags=CA(Jo.modifiers)|CA(Jo.typeParameters)|CA(Jo.parameters)|qs(Jo.type)|qs(Jo.equalsGreaterThanToken)|qs(Jo.body)&-67108865|(Jo.typeParameters||Jo.type?1:0)|(Au?16640:0)|1024,Jo.typeArguments=void 0,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.flowNode=void 0,Jo.endFlowNode=void 0,Jo.returnFlowNode=void 0,Jo}function ik(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.typeParameters!==Pe||q.parameters!==yt||q.type!==Rr||q.equalsGreaterThanToken!==Ii||q.body!==Jo?We(yv(Ce,Pe,yt,Rr,Ii,Jo),q):q}function Wx(q){let Ce=Te(221);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=qs(Ce.expression),Ce}function Ox(q,Ce){return q.expression!==Ce?vo(Wx(Ce),q):q}function Pb(q){let Ce=Te(222);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=qs(Ce.expression),Ce}function qm(q,Ce){return q.expression!==Ce?vo(Pb(Ce),q):q}function oR(q){let Ce=Te(223);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=qs(Ce.expression),Ce}function pS(q,Ce){return q.expression!==Ce?vo(oR(Ce),q):q}function xN(q){let Ce=Te(224);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=qs(Ce.expression)|256|128|2097152,Ce}function at(q,Ce){return q.expression!==Ce?vo(xN(Ce),q):q}function en(q,Ce){let Pe=Te(225);return Pe.operator=q,Pe.operand=d().parenthesizeOperandOfPrefixUnary(Ce),Pe.transformFlags|=qs(Pe.operand),(q===46||q===47)&&Ir(Pe.operand)&&!kp(Pe.operand)&&!VF(Pe.operand)&&(Pe.transformFlags|=268435456),Pe}function gi(q,Ce){return q.operand!==Ce?vo(en(q.operator,Ce),q):q}function _i(q,Ce){let Pe=Te(226);return Pe.operator=Ce,Pe.operand=d().parenthesizeOperandOfPostfixUnary(q),Pe.transformFlags|=qs(Pe.operand),Ir(Pe.operand)&&!kp(Pe.operand)&&!VF(Pe.operand)&&(Pe.transformFlags|=268435456),Pe}function ys(q,Ce){return q.operand!==Ce?vo(_i(Ce,q.operator),q):q}function eo(q,Ce,Pe){let yt=Ze(227),Rr=_q(Ce),Ii=Rr.kind;return yt.left=d().parenthesizeLeftSideOfBinary(Ii,q),yt.operatorToken=Rr,yt.right=d().parenthesizeRightSideOfBinary(Ii,yt.left,Pe),yt.transformFlags|=qs(yt.left)|qs(yt.operatorToken)|qs(yt.right),Ii===61?yt.transformFlags|=32:Ii===64?og(yt.left)?yt.transformFlags|=5248|wa(yt.left):OI(yt.left)&&(yt.transformFlags|=5120|wa(yt.left)):Ii===43||Ii===68?yt.transformFlags|=512:V7(Ii)&&(yt.transformFlags|=16),Ii===103&&p(yt.left)&&(yt.transformFlags|=536870912),yt.jsDoc=void 0,yt}function wa(q){return IEe(q)?65536:0}function pc(q,Ce,Pe,yt){return q.left!==Ce||q.operatorToken!==Pe||q.right!==yt?vo(eo(Ce,Pe,yt),q):q}function ul(q,Ce,Pe,yt,Rr){let Ii=Te(228);return Ii.condition=d().parenthesizeConditionOfConditionalExpression(q),Ii.questionToken=Ce??dt(58),Ii.whenTrue=d().parenthesizeBranchOfConditionalExpression(Pe),Ii.colonToken=yt??dt(59),Ii.whenFalse=d().parenthesizeBranchOfConditionalExpression(Rr),Ii.transformFlags|=qs(Ii.condition)|qs(Ii.questionToken)|qs(Ii.whenTrue)|qs(Ii.colonToken)|qs(Ii.whenFalse),Ii.flowNodeWhenFalse=void 0,Ii.flowNodeWhenTrue=void 0,Ii}function Fe(q,Ce,Pe,yt,Rr,Ii){return q.condition!==Ce||q.questionToken!==Pe||q.whenTrue!==yt||q.colonToken!==Rr||q.whenFalse!==Ii?vo(ul(Ce,Pe,yt,Rr,Ii),q):q}function gr(q,Ce){let Pe=Te(229);return Pe.head=q,Pe.templateSpans=Ne(Ce),Pe.transformFlags|=qs(Pe.head)|CA(Pe.templateSpans)|1024,Pe}function Ln(q,Ce,Pe){return q.head!==Ce||q.templateSpans!==Pe?vo(gr(Ce,Pe),q):q}function bs(q,Ce,Pe,yt=0){pe.assert(!(yt&-7177),"Unsupported template flags.");let Rr;if(Pe!==void 0&&Pe!==Ce&&(Rr=IPt(q,Pe),typeof Rr=="object"))return pe.fail("Invalid raw text");if(Ce===void 0){if(Rr===void 0)return pe.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=Rr}else Rr!==void 0&&pe.assert(Ce===Rr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Xl(q){let Ce=1024;return q&&(Ce|=128),Ce}function eg(q,Ce,Pe,yt){let Rr=Gr(q);return Rr.text=Ce,Rr.rawText=Pe,Rr.templateFlags=yt&7176,Rr.transformFlags=Xl(Rr.templateFlags),Rr}function jl(q,Ce,Pe,yt){let Rr=Ze(q);return Rr.text=Ce,Rr.rawText=Pe,Rr.templateFlags=yt&7176,Rr.transformFlags=Xl(Rr.templateFlags),Rr}function Eu(q,Ce,Pe,yt){return q===15?jl(q,Ce,Pe,yt):eg(q,Ce,Pe,yt)}function Df(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(16,q,Ce,Pe)}function Jg(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(17,q,Ce,Pe)}function MC(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(18,q,Ce,Pe)}function S1(q,Ce,Pe){return q=bs(16,q,Ce,Pe),jl(15,q,Ce,Pe)}function fS(q,Ce){pe.assert(!q||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Pe=Te(230);return Pe.expression=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.asteriskToken=q,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.asteriskToken)|1024|128|1048576,Pe}function bv(q,Ce,Pe){return q.expression!==Pe||q.asteriskToken!==Ce?vo(fS(Ce,Pe),q):q}function XF(q){let Ce=Te(231);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=qs(Ce.expression)|1024|32768,Ce}function o9(q,Ce){return q.expression!==Ce?vo(XF(Ce),q):q}function My(q,Ce,Pe,yt,Rr){let Ii=Ze(232);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Ii.transformFlags|=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.typeParameters)|CA(Ii.heritageClauses)|CA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.jsDoc=void 0,Ii}function sk(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(My(Ce,Pe,yt,Rr,Ii),q):q}function aR(){return Te(233)}function WB(q,Ce){let Pe=Te(234);return Pe.expression=d().parenthesizeLeftSideOfAccess(q,!1),Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Pe.transformFlags|=qs(Pe.expression)|CA(Pe.typeArguments)|1024,Pe}function UP(q,Ce,Pe){return q.expression!==Ce||q.typeArguments!==Pe?vo(WB(Ce,Pe),q):q}function br(q,Ce){let Pe=Te(235);return Pe.expression=q,Pe.type=Ce,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.type)|1,Pe}function sn(q,Ce,Pe){return q.expression!==Ce||q.type!==Pe?vo(br(Ce,Pe),q):q}function ei(q){let Ce=Te(236);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=qs(Ce.expression)|1,Ce}function is(q,Ce){return hJ(q)?co(q,Ce):q.expression!==Ce?vo(ei(Ce),q):q}function Qs(q,Ce){let Pe=Te(239);return Pe.expression=q,Pe.type=Ce,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.type)|1,Pe}function Oo(q,Ce,Pe){return q.expression!==Ce||q.type!==Pe?vo(Qs(Ce,Pe),q):q}function Os(q){let Ce=Te(236);return Ce.flags|=64,Ce.expression=d().parenthesizeLeftSideOfAccess(q,!0),Ce.transformFlags|=qs(Ce.expression)|1,Ce}function co(q,Ce){return pe.assert(!!(q.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),q.expression!==Ce?vo(Os(Ce),q):q}function Yc(q,Ce){let Pe=Te(237);switch(Pe.keywordToken=q,Pe.name=Ce,Pe.transformFlags|=qs(Pe.name),q){case 105:Pe.transformFlags|=1024;break;case 102:Pe.transformFlags|=32;break;default:return pe.assertNever(q)}return Pe.flowNode=void 0,Pe}function tu(q,Ce){return q.name!==Ce?vo(Yc(q.keywordToken,Ce),q):q}function $a(q,Ce){let Pe=Te(240);return Pe.expression=q,Pe.literal=Ce,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.literal)|1024,Pe}function ru(q,Ce,Pe){return q.expression!==Ce||q.literal!==Pe?vo($a(Ce,Pe),q):q}function gl(){let q=Te(241);return q.transformFlags|=1024,q}function kf(q,Ce){let Pe=Te(242);return Pe.statements=Ne(q),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.statements),Pe.jsDoc=void 0,Pe.locals=void 0,Pe.nextContainer=void 0,Pe}function Wb(q,Ce){return q.statements!==Ce?vo(kf(Ce,q.multiLine),q):q}function OB(q,Ce){let Pe=Te(244);return Pe.modifiers=nd(q),Pe.declarationList=Ki(Ce)?l5(Ce):Ce,Pe.transformFlags|=CA(Pe.modifiers)|qs(Pe.declarationList),Dw(Pe.modifiers)&128&&(Pe.transformFlags=1),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function p_(q,Ce,Pe){return q.modifiers!==Ce||q.declarationList!==Pe?vo(OB(Ce,Pe),q):q}function MB(){let q=Te(243);return q.jsDoc=void 0,q}function v1(q){let Ce=Te(245);return Ce.expression=d().parenthesizeExpressionOfExpressionStatement(q),Ce.transformFlags|=qs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function s5(q,Ce){return q.expression!==Ce?vo(v1(Ce),q):q}function GN(q,Ce,Pe){let yt=Te(246);return yt.expression=q,yt.thenStatement=jx(Ce),yt.elseStatement=jx(Pe),yt.transformFlags|=qs(yt.expression)|qs(yt.thenStatement)|qs(yt.elseStatement),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function ok(q,Ce,Pe,yt){return q.expression!==Ce||q.thenStatement!==Pe||q.elseStatement!==yt?vo(GN(Ce,Pe,yt),q):q}function o5(q,Ce){let Pe=Te(247);return Pe.statement=jx(q),Pe.expression=Ce,Pe.transformFlags|=qs(Pe.statement)|qs(Pe.expression),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function ak(q,Ce,Pe){return q.statement!==Ce||q.expression!==Pe?vo(o5(Ce,Pe),q):q}function Ase(q,Ce){let Pe=Te(248);return Pe.expression=q,Pe.statement=jx(Ce),Pe.transformFlags|=qs(Pe.expression)|qs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function mpe(q,Ce,Pe){return q.expression!==Ce||q.statement!==Pe?vo(Ase(Ce,Pe),q):q}function dse(q,Ce,Pe,yt){let Rr=Te(249);return Rr.initializer=q,Rr.condition=Ce,Rr.incrementor=Pe,Rr.statement=jx(yt),Rr.transformFlags|=qs(Rr.initializer)|qs(Rr.condition)|qs(Rr.incrementor)|qs(Rr.statement),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function Mx(q,Ce,Pe,yt,Rr){return q.initializer!==Ce||q.condition!==Pe||q.incrementor!==yt||q.statement!==Rr?vo(dse(Ce,Pe,yt,Rr),q):q}function a5(q,Ce,Pe){let yt=Te(250);return yt.initializer=q,yt.expression=Ce,yt.statement=jx(Pe),yt.transformFlags|=qs(yt.initializer)|qs(yt.expression)|qs(yt.statement),yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.flowNode=void 0,yt}function WU(q,Ce,Pe,yt){return q.initializer!==Ce||q.expression!==Pe||q.statement!==yt?vo(a5(Ce,Pe,yt),q):q}function a9(q,Ce,Pe,yt){let Rr=Te(251);return Rr.awaitModifier=q,Rr.initializer=Ce,Rr.expression=d().parenthesizeExpressionForDisallowedComma(Pe),Rr.statement=jx(yt),Rr.transformFlags|=qs(Rr.awaitModifier)|qs(Rr.initializer)|qs(Rr.expression)|qs(Rr.statement)|1024,q&&(Rr.transformFlags|=128),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function OU(q,Ce,Pe,yt,Rr){return q.awaitModifier!==Ce||q.initializer!==Pe||q.expression!==yt||q.statement!==Rr?vo(a9(Ce,Pe,yt,Rr),q):q}function qz(q){let Ce=Te(252);return Ce.label=Fm(q),Ce.transformFlags|=qs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function Cpe(q,Ce){return q.label!==Ce?vo(qz(Ce),q):q}function MU(q){let Ce=Te(253);return Ce.label=Fm(q),Ce.transformFlags|=qs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function $z(q,Ce){return q.label!==Ce?vo(MU(Ce),q):q}function c5(q){let Ce=Te(254);return Ce.expression=q,Ce.transformFlags|=qs(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function pse(q,Ce){return q.expression!==Ce?vo(c5(Ce),q):q}function HU(q,Ce){let Pe=Te(255);return Pe.expression=q,Pe.statement=jx(Ce),Pe.transformFlags|=qs(Pe.expression)|qs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function eq(q,Ce,Pe){return q.expression!==Ce||q.statement!==Pe?vo(HU(Ce,Pe),q):q}function EQ(q,Ce){let Pe=Te(256);return Pe.expression=d().parenthesizeExpressionForDisallowedComma(q),Pe.caseBlock=Ce,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.caseBlock),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe.possiblyExhaustive=!1,Pe}function KP(q,Ce,Pe){return q.expression!==Ce||q.caseBlock!==Pe?vo(EQ(Ce,Pe),q):q}function tq(q,Ce){let Pe=Te(257);return Pe.label=Fm(q),Pe.statement=jx(Ce),Pe.transformFlags|=qs(Pe.label)|qs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function rq(q,Ce,Pe){return q.label!==Ce||q.statement!==Pe?vo(tq(Ce,Pe),q):q}function SQ(q){let Ce=Te(258);return Ce.expression=q,Ce.transformFlags|=qs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function jP(q,Ce){return q.expression!==Ce?vo(SQ(Ce),q):q}function c9(q,Ce,Pe){let yt=Te(259);return yt.tryBlock=q,yt.catchClause=Ce,yt.finallyBlock=Pe,yt.transformFlags|=qs(yt.tryBlock)|qs(yt.catchClause)|qs(yt.finallyBlock),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function JF(q,Ce,Pe,yt){return q.tryBlock!==Ce||q.catchClause!==Pe||q.finallyBlock!==yt?vo(c9(Ce,Pe,yt),q):q}function UF(){let q=Te(260);return q.jsDoc=void 0,q.flowNode=void 0,q}function KF(q,Ce,Pe,yt){let Rr=Ze(261);return Rr.name=Fm(q),Rr.exclamationToken=Ce,Rr.type=Pe,Rr.initializer=Z0(yt),Rr.transformFlags|=NB(Rr.name)|qs(Rr.initializer)|(Rr.exclamationToken??Rr.type?1:0),Rr.jsDoc=void 0,Rr}function zP(q,Ce,Pe,yt,Rr){return q.name!==Ce||q.type!==yt||q.exclamationToken!==Pe||q.initializer!==Rr?vo(KF(Ce,Pe,yt,Rr),q):q}function l5(q,Ce=0){let Pe=Te(262);return Pe.flags|=Ce&7,Pe.declarations=Ne(q),Pe.transformFlags|=CA(Pe.declarations)|4194304,Ce&7&&(Pe.transformFlags|=263168),Ce&4&&(Pe.transformFlags|=4),Pe}function YU(q,Ce){return q.declarations!==Ce?vo(l5(Ce,q.flags),q):q}function u5(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=Ze(263);if(Au.modifiers=nd(q),Au.asteriskToken=Ce,Au.name=Fm(Pe),Au.typeParameters=nd(yt),Au.parameters=Ne(Rr),Au.type=Ii,Au.body=Jo,!Au.body||Dw(Au.modifiers)&128)Au.transformFlags=1;else{let cf=Dw(Au.modifiers)&1024,_2=!!Au.asteriskToken,gW=cf&&_2;Au.transformFlags=CA(Au.modifiers)|qs(Au.asteriskToken)|NB(Au.name)|CA(Au.typeParameters)|CA(Au.parameters)|qs(Au.type)|qs(Au.body)&-67108865|(gW?128:cf?256:_2?2048:0)|(Au.typeParameters||Au.type?1:0)|4194304}return Au.typeArguments=void 0,Au.jsDoc=void 0,Au.locals=void 0,Au.nextContainer=void 0,Au.endFlowNode=void 0,Au.returnFlowNode=void 0,Au}function PA(q,Ce,Pe,yt,Rr,Ii,Jo,Au){return q.modifiers!==Ce||q.asteriskToken!==Pe||q.name!==yt||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo||q.body!==Au?QU(u5(Ce,Pe,yt,Rr,Ii,Jo,Au),q):q}function QU(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),We(q,Ce)}function fse(q,Ce,Pe,yt,Rr){let Ii=Ze(264);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Dw(Ii.modifiers)&128?Ii.transformFlags=1:(Ii.transformFlags|=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.typeParameters)|CA(Ii.heritageClauses)|CA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.transformFlags&8192&&(Ii.transformFlags|=1)),Ii.jsDoc=void 0,Ii}function jF(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(fse(Ce,Pe,yt,Rr,Ii),q):q}function zF(q,Ce,Pe,yt,Rr){let Ii=Ze(265);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Ii.transformFlags=1,Ii.jsDoc=void 0,Ii}function ck(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(zF(Ce,Pe,yt,Rr,Ii),q):q}function bf(q,Ce,Pe,yt){let Rr=Ze(266);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.typeParameters=nd(Pe),Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function l0(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.type!==Rr?vo(bf(Ce,Pe,yt,Rr),q):q}function Ob(q,Ce,Pe){let yt=Ze(267);return yt.modifiers=nd(q),yt.name=Fm(Ce),yt.members=Ne(Pe),yt.transformFlags|=CA(yt.modifiers)|qs(yt.name)|CA(yt.members)|1,yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function u0(q,Ce,Pe,yt){return q.modifiers!==Ce||q.name!==Pe||q.members!==yt?vo(Ob(Ce,Pe,yt),q):q}function g5(q,Ce,Pe,yt=0){let Rr=Ze(268);return Rr.modifiers=nd(q),Rr.flags|=yt&2088,Rr.name=Ce,Rr.body=Pe,Dw(Rr.modifiers)&128?Rr.transformFlags=1:Rr.transformFlags|=CA(Rr.modifiers)|qs(Rr.name)|qs(Rr.body)|1,Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Ay(q,Ce,Pe,yt){return q.modifiers!==Ce||q.name!==Pe||q.body!==yt?vo(g5(Ce,Pe,yt,q.flags),q):q}function lk(q){let Ce=Te(269);return Ce.statements=Ne(q),Ce.transformFlags|=CA(Ce.statements),Ce.jsDoc=void 0,Ce}function Hy(q,Ce){return q.statements!==Ce?vo(lk(Ce),q):q}function HB(q){let Ce=Te(270);return Ce.clauses=Ne(q),Ce.transformFlags|=CA(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function Mw(q,Ce){return q.clauses!==Ce?vo(HB(Ce),q):q}function A5(q){let Ce=Ze(271);return Ce.name=Fm(q),Ce.transformFlags|=sie(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function d5(q,Ce){return q.name!==Ce?_pe(A5(Ce),q):q}function _pe(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function Ise(q,Ce,Pe,yt){let Rr=Ze(272);return Rr.modifiers=nd(q),Rr.name=Fm(Pe),Rr.isTypeOnly=Ce,Rr.moduleReference=yt,Rr.transformFlags|=CA(Rr.modifiers)|sie(Rr.name)|qs(Rr.moduleReference),ZF(Rr.moduleReference)||(Rr.transformFlags|=1),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function l9(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.isTypeOnly!==Pe||q.name!==yt||q.moduleReference!==Rr?vo(Ise(Ce,Pe,yt,Rr),q):q}function vQ(q,Ce,Pe,yt){let Rr=Te(273);return Rr.modifiers=nd(q),Rr.importClause=Ce,Rr.moduleSpecifier=Pe,Rr.attributes=Rr.assertClause=yt,Rr.transformFlags|=qs(Rr.importClause)|qs(Rr.moduleSpecifier),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function Sr(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.importClause!==Pe||q.moduleSpecifier!==yt||q.attributes!==Rr?vo(vQ(Ce,Pe,yt,Rr),q):q}function XU(q,Ce,Pe){let yt=Ze(274);return typeof q=="boolean"&&(q=q?156:void 0),yt.isTypeOnly=q===156,yt.phaseModifier=q,yt.name=Ce,yt.namedBindings=Pe,yt.transformFlags|=qs(yt.name)|qs(yt.namedBindings),q===156&&(yt.transformFlags|=1),yt.transformFlags&=-67108865,yt}function Hx(q,Ce,Pe,yt){return typeof Ce=="boolean"&&(Ce=Ce?156:void 0),q.phaseModifier!==Ce||q.name!==Pe||q.namedBindings!==yt?vo(XU(Ce,Pe,yt),q):q}function Hw(q,Ce){let Pe=Te(301);return Pe.elements=Ne(q),Pe.multiLine=Ce,Pe.token=132,Pe.transformFlags|=4,Pe}function u9(q,Ce,Pe){return q.elements!==Ce||q.multiLine!==Pe?vo(Hw(Ce,Pe),q):q}function qP(q,Ce){let Pe=Te(302);return Pe.name=q,Pe.value=Ce,Pe.transformFlags|=4,Pe}function dy(q,Ce,Pe){return q.name!==Ce||q.value!==Pe?vo(qP(Ce,Pe),q):q}function cR(q,Ce){let Pe=Te(303);return Pe.assertClause=q,Pe.multiLine=Ce,Pe}function YB(q,Ce,Pe){return q.assertClause!==Ce||q.multiLine!==Pe?vo(cR(Ce,Pe),q):q}function p5(q,Ce,Pe){let yt=Te(301);return yt.token=Pe??118,yt.elements=Ne(q),yt.multiLine=Ce,yt.transformFlags|=4,yt}function gA(q,Ce,Pe){return q.elements!==Ce||q.multiLine!==Pe?vo(p5(Ce,Pe,q.token),q):q}function IS(q,Ce){let Pe=Te(302);return Pe.name=q,Pe.value=Ce,Pe.transformFlags|=4,Pe}function g9(q,Ce,Pe){return q.name!==Ce||q.value!==Pe?vo(IS(Ce,Pe),q):q}function JU(q){let Ce=Ze(275);return Ce.name=q,Ce.transformFlags|=qs(Ce.name),Ce.transformFlags&=-67108865,Ce}function qF(q,Ce){return q.name!==Ce?vo(JU(Ce),q):q}function BQ(q){let Ce=Ze(281);return Ce.name=q,Ce.transformFlags|=qs(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function Ev(q,Ce){return q.name!==Ce?vo(BQ(Ce),q):q}function Yx(q){let Ce=Te(276);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function f5(q,Ce){return q.elements!==Ce?vo(Yx(Ce),q):q}function A9(q,Ce,Pe){let yt=Ze(277);return yt.isTypeOnly=q,yt.propertyName=Ce,yt.name=Pe,yt.transformFlags|=qs(yt.propertyName)|qs(yt.name),yt.transformFlags&=-67108865,yt}function FN(q,Ce,Pe,yt){return q.isTypeOnly!==Ce||q.propertyName!==Pe||q.name!==yt?vo(A9(Ce,Pe,yt),q):q}function wQ(q,Ce,Pe){let yt=Ze(278);return yt.modifiers=nd(q),yt.isExportEquals=Ce,yt.expression=Ce?d().parenthesizeRightSideOfBinary(64,void 0,Pe):d().parenthesizeExpressionOfExportDefault(Pe),yt.transformFlags|=CA(yt.modifiers)|qs(yt.expression),yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function I5(q,Ce,Pe){return q.modifiers!==Ce||q.expression!==Pe?vo(wQ(Ce,q.isExportEquals,Pe),q):q}function fa(q,Ce,Pe,yt,Rr){let Ii=Ze(279);return Ii.modifiers=nd(q),Ii.isTypeOnly=Ce,Ii.exportClause=Pe,Ii.moduleSpecifier=yt,Ii.attributes=Ii.assertClause=Rr,Ii.transformFlags|=CA(Ii.modifiers)|qs(Ii.exportClause)|qs(Ii.moduleSpecifier),Ii.transformFlags&=-67108865,Ii.jsDoc=void 0,Ii}function sa(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.isTypeOnly!==Pe||q.exportClause!==yt||q.moduleSpecifier!==Rr||q.attributes!==Ii?f_(fa(Ce,Pe,yt,Rr,Ii),q):q}function f_(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function UU(q){let Ce=Te(280);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function $F(q,Ce){return q.elements!==Ce?vo(UU(Ce),q):q}function TQ(q,Ce,Pe){let yt=Te(282);return yt.isTypeOnly=q,yt.propertyName=Fm(Ce),yt.name=Fm(Pe),yt.transformFlags|=qs(yt.propertyName)|qs(yt.name),yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function hse(q,Ce,Pe,yt){return q.isTypeOnly!==Ce||q.propertyName!==Pe||q.name!==yt?vo(TQ(Ce,Pe,yt),q):q}function ype(){let q=Ze(283);return q.jsDoc=void 0,q}function qo(q){let Ce=Te(284);return Ce.expression=q,Ce.transformFlags|=qs(Ce.expression),Ce.transformFlags&=-67108865,Ce}function py(q,Ce){return q.expression!==Ce?vo(qo(Ce),q):q}function hu(q){return Te(q)}function vE(q,Ce,Pe=!1){let yt=KU(q,Pe?Ce&&d().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return yt.postfix=Pe,yt}function KU(q,Ce){let Pe=Te(q);return Pe.type=Ce,Pe}function $P(q,Ce,Pe){return Ce.type!==Pe?vo(vE(q,Pe,Ce.postfix),Ce):Ce}function Fo(q,Ce,Pe){return Ce.type!==Pe?vo(KU(q,Pe),Ce):Ce}function mse(q,Ce){let Pe=Ze(318);return Pe.parameters=nd(q),Pe.type=Ce,Pe.transformFlags=CA(Pe.parameters)|(Pe.type?1:0),Pe.jsDoc=void 0,Pe.locals=void 0,Pe.nextContainer=void 0,Pe.typeArguments=void 0,Pe}function nq(q,Ce,Pe){return q.parameters!==Ce||q.type!==Pe?vo(mse(Ce,Pe),q):q}function G0(q,Ce=!1){let Pe=Ze(323);return Pe.jsDocPropertyTags=nd(q),Pe.isArrayType=Ce,Pe}function uk(q,Ce,Pe){return q.jsDocPropertyTags!==Ce||q.isArrayType!==Pe?vo(G0(Ce,Pe),q):q}function lR(q){let Ce=Te(310);return Ce.type=q,Ce}function eW(q,Ce){return q.type!==Ce?vo(lR(Ce),q):q}function jU(q,Ce,Pe){let yt=Ze(324);return yt.typeParameters=nd(q),yt.parameters=Ne(Ce),yt.type=Pe,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt}function tW(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?vo(jU(Ce,Pe,yt),q):q}function hS(q){let Ce=Kbe(q.kind);return q.tagName.escapedText===Ap(Ce)?q.tagName:Rt(Ce)}function Yw(q,Ce,Pe){let yt=Te(q);return yt.tagName=Ce,yt.comment=Pe,yt}function Sv(q,Ce,Pe){let yt=Ze(q);return yt.tagName=Ce,yt.comment=Pe,yt}function Mb(q,Ce,Pe,yt){let Rr=Yw(346,q??Rt("template"),yt);return Rr.constraint=Ce,Rr.typeParameters=Ne(Pe),Rr}function d9(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.constraint!==Pe||q.typeParameters!==yt||q.comment!==Rr?vo(Mb(Ce,Pe,yt,Rr),q):q}function h5(q,Ce,Pe,yt){let Rr=Sv(347,q??Rt("typedef"),yt);return Rr.typeExpression=Ce,Rr.fullName=Pe,Rr.name=k$e(Pe),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function iq(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.typeExpression!==Pe||q.fullName!==yt||q.comment!==Rr?vo(h5(Ce,Pe,yt,Rr),q):q}function m5(q,Ce,Pe,yt,Rr,Ii){let Jo=Sv(342,q??Rt("param"),Ii);return Jo.typeExpression=yt,Jo.name=Ce,Jo.isNameFirst=!!Rr,Jo.isBracketed=Pe,Jo}function rW(q,Ce=hS(q),Pe,yt,Rr,Ii,Jo){return q.tagName!==Ce||q.name!==Pe||q.isBracketed!==yt||q.typeExpression!==Rr||q.isNameFirst!==Ii||q.comment!==Jo?vo(m5(Ce,Pe,yt,Rr,Ii,Jo),q):q}function sq(q,Ce,Pe,yt,Rr,Ii){let Jo=Sv(349,q??Rt("prop"),Ii);return Jo.typeExpression=yt,Jo.name=Ce,Jo.isNameFirst=!!Rr,Jo.isBracketed=Pe,Jo}function eZ(q,Ce=hS(q),Pe,yt,Rr,Ii,Jo){return q.tagName!==Ce||q.name!==Pe||q.isBracketed!==yt||q.typeExpression!==Rr||q.isNameFirst!==Ii||q.comment!==Jo?vo(sq(Ce,Pe,yt,Rr,Ii,Jo),q):q}function ZN(q,Ce,Pe,yt){let Rr=Sv(339,q??Rt("callback"),yt);return Rr.typeExpression=Ce,Rr.fullName=Pe,Rr.name=k$e(Pe),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function nW(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.typeExpression!==Pe||q.fullName!==yt||q.comment!==Rr?vo(ZN(Ce,Pe,yt,Rr),q):q}function C5(q,Ce,Pe){let yt=Yw(340,q??Rt("overload"),Pe);return yt.typeExpression=Ce,yt}function p9(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.typeExpression!==Pe||q.comment!==yt?vo(C5(Ce,Pe,yt),q):q}function iW(q,Ce,Pe){let yt=Yw(329,q??Rt("augments"),Pe);return yt.class=Ce,yt}function Qw(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.class!==Pe||q.comment!==yt?vo(iW(Ce,Pe,yt),q):q}function tZ(q,Ce,Pe){let yt=Yw(330,q??Rt("implements"),Pe);return yt.class=Ce,yt}function Qx(q,Ce,Pe){let yt=Yw(348,q??Rt("see"),Pe);return yt.name=Ce,yt}function sW(q,Ce,Pe,yt){return q.tagName!==Ce||q.name!==Pe||q.comment!==yt?vo(Qx(Ce,Pe,yt),q):q}function HC(q){let Ce=Te(311);return Ce.name=q,Ce}function RQ(q,Ce){return q.name!==Ce?vo(HC(Ce),q):q}function Xx(q,Ce){let Pe=Te(312);return Pe.left=q,Pe.right=Ce,Pe.transformFlags|=qs(Pe.left)|qs(Pe.right),Pe}function _5(q,Ce,Pe){return q.left!==Ce||q.right!==Pe?vo(Xx(Ce,Pe),q):q}function zU(q,Ce){let Pe=Te(325);return Pe.name=q,Pe.text=Ce,Pe}function Jx(q,Ce,Pe){return q.name!==Ce?vo(zU(Ce,Pe),q):q}function Cse(q,Ce){let Pe=Te(326);return Pe.name=q,Pe.text=Ce,Pe}function oq(q,Ce,Pe){return q.name!==Ce?vo(Cse(Ce,Pe),q):q}function aq(q,Ce){let Pe=Te(327);return Pe.name=q,Pe.text=Ce,Pe}function bpe(q,Ce,Pe){return q.name!==Ce?vo(aq(Ce,Pe),q):q}function cq(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.class!==Pe||q.comment!==yt?vo(tZ(Ce,Pe,yt),q):q}function y5(q,Ce,Pe){return Yw(q,Ce??Rt(Kbe(q)),Pe)}function rZ(q,Ce,Pe=hS(Ce),yt){return Ce.tagName!==Pe||Ce.comment!==yt?vo(y5(q,Pe,yt),Ce):Ce}function _se(q,Ce,Pe,yt){let Rr=Yw(q,Ce??Rt(Kbe(q)),yt);return Rr.typeExpression=Pe,Rr}function b5(q,Ce,Pe=hS(Ce),yt,Rr){return Ce.tagName!==Pe||Ce.typeExpression!==yt||Ce.comment!==Rr?vo(_se(q,Pe,yt,Rr),Ce):Ce}function qU(q,Ce){return Yw(328,q,Ce)}function Zh(q,Ce,Pe){return q.tagName!==Ce||q.comment!==Pe?vo(qU(Ce,Pe),q):q}function YC(q,Ce,Pe){let yt=Sv(341,q??Rt(Kbe(341)),Pe);return yt.typeExpression=Ce,yt.locals=void 0,yt.nextContainer=void 0,yt}function lq(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.typeExpression!==Pe||q.comment!==yt?vo(YC(Ce,Pe,yt),q):q}function Hb(q,Ce,Pe,yt,Rr){let Ii=Yw(352,q??Rt("import"),Rr);return Ii.importClause=Ce,Ii.moduleSpecifier=Pe,Ii.attributes=yt,Ii.comment=Rr,Ii}function vv(q,Ce,Pe,yt,Rr,Ii){return q.tagName!==Ce||q.comment!==Ii||q.importClause!==Pe||q.moduleSpecifier!==yt||q.attributes!==Rr?vo(Hb(Ce,Pe,yt,Rr,Ii),q):q}function NQ(q){let Ce=Te(322);return Ce.text=q,Ce}function uR(q,Ce){return q.text!==Ce?vo(NQ(Ce),q):q}function oW(q,Ce){let Pe=Te(321);return Pe.comment=q,Pe.tags=nd(Ce),Pe}function f9(q,Ce,Pe){return q.comment!==Ce||q.tags!==Pe?vo(oW(Ce,Pe),q):q}function uq(q,Ce,Pe){let yt=Te(285);return yt.openingElement=q,yt.children=Ne(Ce),yt.closingElement=Pe,yt.transformFlags|=qs(yt.openingElement)|CA(yt.children)|qs(yt.closingElement)|2,yt}function Epe(q,Ce,Pe,yt){return q.openingElement!==Ce||q.children!==Pe||q.closingElement!==yt?vo(uq(Ce,Pe,yt),q):q}function TI(q,Ce,Pe){let yt=Te(286);return yt.tagName=q,yt.typeArguments=nd(Ce),yt.attributes=Pe,yt.transformFlags|=qs(yt.tagName)|CA(yt.typeArguments)|qs(yt.attributes)|2,yt.typeArguments&&(yt.transformFlags|=1),yt}function yse(q,Ce,Pe,yt){return q.tagName!==Ce||q.typeArguments!==Pe||q.attributes!==yt?vo(TI(Ce,Pe,yt),q):q}function $U(q,Ce,Pe){let yt=Te(287);return yt.tagName=q,yt.typeArguments=nd(Ce),yt.attributes=Pe,yt.transformFlags|=qs(yt.tagName)|CA(yt.typeArguments)|qs(yt.attributes)|2,Ce&&(yt.transformFlags|=1),yt}function DQ(q,Ce,Pe,yt){return q.tagName!==Ce||q.typeArguments!==Pe||q.attributes!==yt?vo($U(Ce,Pe,yt),q):q}function gq(q){let Ce=Te(288);return Ce.tagName=q,Ce.transformFlags|=qs(Ce.tagName)|2,Ce}function F0(q,Ce){return q.tagName!==Ce?vo(gq(Ce),q):q}function BE(q,Ce,Pe){let yt=Te(289);return yt.openingFragment=q,yt.children=Ne(Ce),yt.closingFragment=Pe,yt.transformFlags|=qs(yt.openingFragment)|CA(yt.children)|qs(yt.closingFragment)|2,yt}function eK(q,Ce,Pe,yt){return q.openingFragment!==Ce||q.children!==Pe||q.closingFragment!==yt?vo(BE(Ce,Pe,yt),q):q}function E5(q,Ce){let Pe=Te(12);return Pe.text=q,Pe.containsOnlyTriviaWhiteSpaces=!!Ce,Pe.transformFlags|=2,Pe}function wE(q,Ce,Pe){return q.text!==Ce||q.containsOnlyTriviaWhiteSpaces!==Pe?vo(E5(Ce,Pe),q):q}function tK(){let q=Te(290);return q.transformFlags|=2,q}function Ux(){let q=Te(291);return q.transformFlags|=2,q}function Aq(q,Ce){let Pe=Ze(292);return Pe.name=q,Pe.initializer=Ce,Pe.transformFlags|=qs(Pe.name)|qs(Pe.initializer)|2,Pe}function rK(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?vo(Aq(Ce,Pe),q):q}function Xw(q){let Ce=Ze(293);return Ce.properties=Ne(q),Ce.transformFlags|=CA(Ce.properties)|2,Ce}function dq(q,Ce){return q.properties!==Ce?vo(Xw(Ce),q):q}function bse(q){let Ce=Te(294);return Ce.expression=q,Ce.transformFlags|=qs(Ce.expression)|2,Ce}function pq(q,Ce){return q.expression!==Ce?vo(bse(Ce),q):q}function nK(q,Ce){let Pe=Te(295);return Pe.dotDotDotToken=q,Pe.expression=Ce,Pe.transformFlags|=qs(Pe.dotDotDotToken)|qs(Pe.expression)|2,Pe}function fq(q,Ce){return q.expression!==Ce?vo(nK(q.dotDotDotToken,Ce),q):q}function I9(q,Ce){let Pe=Te(296);return Pe.namespace=q,Pe.name=Ce,Pe.transformFlags|=qs(Pe.namespace)|qs(Pe.name)|2,Pe}function B1(q,Ce,Pe){return q.namespace!==Ce||q.name!==Pe?vo(I9(Ce,Pe),q):q}function LN(q,Ce){let Pe=Te(297);return Pe.expression=d().parenthesizeExpressionForDisallowedComma(q),Pe.statements=Ne(Ce),Pe.transformFlags|=qs(Pe.expression)|CA(Pe.statements),Pe.jsDoc=void 0,Pe}function iK(q,Ce,Pe){return q.expression!==Ce||q.statements!==Pe?vo(LN(Ce,Pe),q):q}function sK(q){let Ce=Te(298);return Ce.statements=Ne(q),Ce.transformFlags=CA(Ce.statements),Ce}function jA(q,Ce){return q.statements!==Ce?vo(sK(Ce),q):q}function Uo(q,Ce){let Pe=Te(299);switch(Pe.token=q,Pe.types=Ne(Ce),Pe.transformFlags|=CA(Pe.types),q){case 96:Pe.transformFlags|=1024;break;case 119:Pe.transformFlags|=1;break;default:return pe.assertNever(q)}return Pe}function mS(q,Ce){return q.types!==Ce?vo(Uo(q.token,Ce),q):q}function $m(q,Ce){let Pe=Te(300);return Pe.variableDeclaration=dk(q),Pe.block=Ce,Pe.transformFlags|=qs(Pe.variableDeclaration)|qs(Pe.block)|(q?0:64),Pe.locals=void 0,Pe.nextContainer=void 0,Pe}function S5(q,Ce,Pe){return q.variableDeclaration!==Ce||q.block!==Pe?vo($m(Ce,Pe),q):q}function oK(q,Ce){let Pe=Ze(304);return Pe.name=Fm(q),Pe.initializer=d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=NB(Pe.name)|qs(Pe.initializer),Pe.modifiers=void 0,Pe.questionToken=void 0,Pe.exclamationToken=void 0,Pe.jsDoc=void 0,Pe}function kQ(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?v5(oK(Ce,Pe),q):q}function v5(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function aK(q,Ce){let Pe=Ze(305);return Pe.name=Fm(q),Pe.objectAssignmentInitializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=sie(Pe.name)|qs(Pe.objectAssignmentInitializer)|1024,Pe.equalsToken=void 0,Pe.modifiers=void 0,Pe.questionToken=void 0,Pe.exclamationToken=void 0,Pe.jsDoc=void 0,Pe}function Ae(q,Ce,Pe){return q.name!==Ce||q.objectAssignmentInitializer!==Pe?Et(aK(Ce,Pe),q):q}function Et(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken,q.equalsToken=Ce.equalsToken),vo(q,Ce)}function fn(q){let Ce=Ze(306);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=qs(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function qi(q,Ce){return q.expression!==Ce?vo(fn(Ce),q):q}function ic(q,Ce){let Pe=Ze(307);return Pe.name=Fm(q),Pe.initializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=qs(Pe.name)|qs(Pe.initializer)|1,Pe.jsDoc=void 0,Pe}function Oc(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?vo(ic(Ce,Pe),q):q}function zl(q,Ce,Pe){let yt=c.createBaseSourceFileNode(308);return yt.statements=Ne(q),yt.endOfFileToken=Ce,yt.flags|=Pe,yt.text="",yt.fileName="",yt.path="",yt.resolvedPath="",yt.originalFileName="",yt.languageVersion=1,yt.languageVariant=0,yt.scriptKind=0,yt.isDeclarationFile=!1,yt.hasNoDefaultLib=!1,yt.transformFlags|=CA(yt.statements)|qs(yt.endOfFileToken),yt.locals=void 0,yt.nextContainer=void 0,yt.endFlowNode=void 0,yt.nodeCount=0,yt.identifierCount=0,yt.symbolCount=0,yt.parseDiagnostics=void 0,yt.bindDiagnostics=void 0,yt.bindSuggestionDiagnostics=void 0,yt.lineMap=void 0,yt.externalModuleIndicator=void 0,yt.setExternalModuleIndicator=void 0,yt.pragmas=void 0,yt.checkJsDirective=void 0,yt.referencedFiles=void 0,yt.typeReferenceDirectives=void 0,yt.libReferenceDirectives=void 0,yt.amdDependencies=void 0,yt.commentDirectives=void 0,yt.identifiers=void 0,yt.packageJsonLocations=void 0,yt.packageJsonScope=void 0,yt.imports=void 0,yt.moduleAugmentations=void 0,yt.ambientModuleNames=void 0,yt.classifiableNames=void 0,yt.impliedNodeFormat=void 0,yt}function Vc(q){let Ce=Object.create(q.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Pe){this.redirectInfo.redirectTarget.id=Pe}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Pe){this.redirectInfo.redirectTarget.symbol=Pe}}}),Ce.redirectInfo=q,Ce}function _A(q){let Ce=Vc(q.redirectInfo);return Ce.flags|=q.flags&-17,Ce.fileName=q.fileName,Ce.path=q.path,Ce.resolvedPath=q.resolvedPath,Ce.originalFileName=q.originalFileName,Ce.packageJsonLocations=q.packageJsonLocations,Ce.packageJsonScope=q.packageJsonScope,Ce.emitNode=void 0,Ce}function Lh(q){let Ce=c.createBaseSourceFileNode(308);Ce.flags|=q.flags&-17;for(let Pe in q)if(!(Da(Ce,Pe)||!Da(q,Pe))){if(Pe==="emitNode"){Ce.emitNode=void 0;continue}Ce[Pe]=q[Pe]}return Ce}function g0(q){let Ce=q.redirectInfo?_A(q):Lh(q);return g(Ce,q),Ce}function Yy(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=g0(q);return Au.statements=Ne(Ce),Au.isDeclarationFile=Pe,Au.referencedFiles=yt,Au.typeReferenceDirectives=Rr,Au.hasNoDefaultLib=Ii,Au.libReferenceDirectives=Jo,Au.transformFlags=CA(Au.statements)|qs(Au.endOfFileToken),Au}function B5(q,Ce,Pe=q.isDeclarationFile,yt=q.referencedFiles,Rr=q.typeReferenceDirectives,Ii=q.hasNoDefaultLib,Jo=q.libReferenceDirectives){return q.statements!==Ce||q.isDeclarationFile!==Pe||q.referencedFiles!==yt||q.typeReferenceDirectives!==Rr||q.hasNoDefaultLib!==Ii||q.libReferenceDirectives!==Jo?vo(Yy(q,Ce,Pe,yt,Rr,Ii,Jo),q):q}function Qy(q){let Ce=Te(309);return Ce.sourceFiles=q,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function aW(q,Ce){return q.sourceFiles!==Ce?vo(Qy(Ce),q):q}function Iq(q,Ce=!1,Pe){let yt=Te(238);return yt.type=q,yt.isSpread=Ce,yt.tupleNameSource=Pe,yt}function QB(q){let Ce=Te(353);return Ce._children=q,Ce}function Hf(q){let Ce=Te(354);return Ce.original=q,gn(Ce,q),Ce}function cK(q,Ce){let Pe=Te(356);return Pe.expression=q,Pe.original=Ce,Pe.transformFlags|=qs(Pe.expression)|1,gn(Pe,Ce),Pe}function h9(q,Ce){return q.expression!==Ce?vo(cK(Ce,q.original),q):q}function Jw(){return Te(355)}function m9(q){if(sp(q)&&!SL(q)&&!q.original&&!q.emitNode&&!q.id){if(ode(q))return q.elements;if(fo(q)&&nEe(q.operatorToken))return[q.left,q.right]}return q}function xQ(q){let Ce=Te(357);return Ce.elements=Ne(Zr(q,m9)),Ce.transformFlags|=CA(Ce.elements),Ce}function gWe(q,Ce){return q.elements!==Ce?vo(xQ(Ce),q):q}function Spe(q,Ce){let Pe=Te(358);return Pe.expression=q,Pe.thisArg=Ce,Pe.transformFlags|=qs(Pe.expression)|qs(Pe.thisArg),Pe}function hq(q,Ce,Pe){return q.expression!==Ce||q.thisArg!==Pe?vo(Spe(Ce,Pe),q):q}function vpe(q){let Ce=ht(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),aie(Ce,{...q.emitNode.autoGenerate}),Ce}function l2e(q){let Ce=ht(q.escapedText);Ce.flags|=q.flags&-17,Ce.jsDoc=q.jsDoc,Ce.flowNode=q.flowNode,Ce.symbol=q.symbol,Ce.transformFlags=q.transformFlags,g(Ce,q);let Pe=G3(q);return Pe&&xx(Ce,Pe),Ce}function cW(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),aie(Ce,{...q.emitNode.autoGenerate}),Ce}function mq(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),Ce}function lK(q){if(q===void 0)return q;if(ll(q))return g0(q);if(kp(q))return vpe(q);if(Ir(q))return l2e(q);if(TL(q))return cW(q);if(p(q))return mq(q);let Ce=z6(q.kind)?c.createBaseNode(q.kind):c.createBaseTokenNode(q.kind);Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q);for(let Pe in q)Da(Ce,Pe)||!Da(q,Pe)||(Ce[Pe]=q[Pe]);return Ce}function AWe(q,Ce,Pe){return Js(E1(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,kf(q,!0)),void 0,Pe?[Pe]:[])}function GQ(q,Ce,Pe){return Js(yv(void 0,void 0,Ce?[Ce]:[],void 0,void 0,kf(q,!0)),void 0,Pe?[Pe]:[])}function uK(){return oR(Ue("0"))}function Bpe(q){return wQ(void 0,!1,q)}function Cq(q){return fa(void 0,!1,UU([TQ(!1,void 0,q)]))}function kl(q,Ce){return Ce==="null"?Ee.createStrictEquality(q,ir()):Ce==="undefined"?Ee.createStrictEquality(q,uK()):Ee.createStrictEquality(Pb(q),Tt(Ce))}function lW(q,Ce){return Ce==="null"?Ee.createStrictInequality(q,ir()):Ce==="undefined"?Ee.createStrictInequality(q,uK()):Ee.createStrictInequality(Pb(q),Tt(Ce))}function no(q,Ce,Pe){return _B(q)?RA(Gp(q,void 0,Ce),void 0,void 0,Pe):Js(rm(q,Ce),void 0,Pe)}function wpe(q,Ce,Pe){return no(q,"bind",[Ce,...Pe])}function Ese(q,Ce,Pe){return no(q,"call",[Ce,...Pe])}function Sse(q,Ce,Pe){return no(q,"apply",[Ce,Pe])}function FQ(q,Ce,Pe){return no(Rt(q),Ce,Pe)}function u2e(q,Ce){return no(q,"slice",Ce===void 0?[]:[y9(Ce)])}function gK(q,Ce){return no(q,"concat",Ce)}function dWe(q,Ce,Pe){return FQ("Object","defineProperty",[q,y9(Ce),Pe])}function vse(q,Ce){return FQ("Object","getOwnPropertyDescriptor",[q,y9(Ce)])}function gk(q,Ce,Pe){return FQ("Reflect","get",Pe?[q,Ce,Pe]:[q,Ce])}function g2e(q,Ce,Pe,yt){return FQ("Reflect","set",yt?[q,Ce,Pe,yt]:[q,Ce,Pe])}function w5(q,Ce,Pe){return Pe?(q.push(oK(Ce,Pe)),!0):!1}function pWe(q,Ce){let Pe=[];w5(Pe,"enumerable",y9(q.enumerable)),w5(Pe,"configurable",y9(q.configurable));let yt=w5(Pe,"writable",y9(q.writable));yt=w5(Pe,"value",q.value)||yt;let Rr=w5(Pe,"get",q.get);return Rr=w5(Pe,"set",q.set)||Rr,pe.assert(!(yt&&Rr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),xd(Pe,!Ce)}function Tpe(q,Ce){switch(q.kind){case 218:return OC(q,Ce);case 217:return C2(q,q.type,Ce);case 235:return sn(q,Ce,q.type);case 239:return Oo(q,Ce,q.type);case 236:return is(q,Ce);case 234:return UP(q,Ce,q.typeArguments);case 356:return h9(q,Ce)}}function A2e(q){return gI(q)&&sp(q)&&sp(XT(q))&&sp(DB(q))&&!jt(k3(q))&&!jt(hU(q))}function Rpe(q,Ce,Pe=63){return q&&a9e(q,Pe)&&!A2e(q)?Tpe(q,Rpe(q.expression,Ce)):Ce}function T5(q,Ce,Pe){if(!Ce)return q;let yt=rq(Ce,Ce.label,FP(Ce.statement)?T5(q,Ce.statement):q);return Pe&&Pe(Ce),yt}function Ak(q,Ce){let Pe=QA(q);switch(Pe.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 210:return Pe.elements.length!==0;case 211:return Pe.properties.length>0;default:return!0}}function Bse(q,Ce,Pe,yt=!1){let Rr=HI(q,63),Ii,Jo;return xy(Rr)?(Ii=st(),Jo=Rr):rr(Rr)?(Ii=st(),Jo=Pe!==void 0&&Pe<2?gn(Rt("_super"),Rr):Rr):tA(Rr)&8192?(Ii=uK(),Jo=d().parenthesizeLeftSideOfAccess(Rr,!1)):jo(Rr)?Ak(Rr.expression,yt)?(Ii=Lt(Ce),Jo=rm(gn(Ee.createAssignment(Ii,Rr.expression),Rr.expression),Rr.name),gn(Jo,Rr)):(Ii=Rr.expression,Jo=Rr):Yg(Rr)?Ak(Rr.expression,yt)?(Ii=Lt(Ce),Jo=Z_(gn(Ee.createAssignment(Ii,Rr.expression),Rr.expression),Rr.argumentExpression),gn(Jo,Rr)):(Ii=Rr.expression,Jo=Rr):(Ii=uK(),Jo=d().parenthesizeLeftSideOfAccess(q,!1)),{target:Jo,thisArg:Ii}}function VN(q,Ce){return rm(d_(xd([it(void 0,"value",[Ic(void 0,void 0,q,void 0,void 0,void 0)],kf([v1(Ce)]))])),"value")}function rt(q){return q.length>10?xQ(q):Ul(q,Ee.createComma)}function Kt(q,Ce,Pe,yt=0,Rr){let Ii=Rr?q&&Cw(q):Il(q);if(Ii&&Ir(Ii)&&!kp(Ii)){let Jo=XA(gn(lK(Ii),Ii),Ii.parent);return yt|=tA(Ii),Pe||(yt|=96),Ce||(yt|=3072),yt&&ti(Jo,yt),Jo}return _r(q)}function xr(q,Ce,Pe){return Kt(q,Ce,Pe,98304)}function Tn(q,Ce,Pe,yt){return Kt(q,Ce,Pe,32768,yt)}function Ai(q,Ce,Pe){return Kt(q,Ce,Pe,16384)}function Pi(q,Ce,Pe){return Kt(q,Ce,Pe)}function Ba(q,Ce,Pe,yt){let Rr=rm(q,sp(Ce)?Ce:lK(Ce));gn(Rr,Ce);let Ii=0;return yt||(Ii|=96),Pe||(Ii|=3072),Ii&&ti(Rr,Ii),Rr}function Xo(q,Ce,Pe,yt){return q&&Ga(Ce,32)?Ba(q,Kt(Ce),Pe,yt):Ai(Ce,Pe,yt)}function uo(q,Ce,Pe,yt){let Rr=bp(q,Ce,0,Pe);return ep(q,Ce,Rr,yt)}function Cc(q){return Zg(q.expression)&&q.expression.text==="use strict"}function Tl(){return N0(v1(Tt("use strict")))}function bp(q,Ce,Pe=0,yt){pe.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let Rr=!1,Ii=q.length;for(;PeAu&&_2.splice(Rr,0,...Ce.slice(Au,cf)),Au>Jo&&_2.splice(yt,0,...Ce.slice(Jo,Au)),Jo>Ii&&_2.splice(Pe,0,...Ce.slice(Ii,Jo)),Ii>0)if(Pe===0)_2.splice(0,0,...Ce.slice(0,Ii));else{let gW=new Map;for(let gR=0;gR=0;gR--){let yq=Ce[gR];gW.has(yq.expression.text)||_2.unshift(yq)}}return tN(q)?gn(Ne(_2,q.hasTrailingComma),q):q}function _9(q,Ce){let Pe;return typeof Ce=="number"?Pe=mn(Ce):Pe=Ce,Ds(q)?ks(q,Pe,q.name,q.constraint,q.default):Si(q)?su(q,Pe,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):$D(q)?ao(q,Pe,q.typeParameters,q.parameters,q.type):ss(q)?ba(q,Pe,q.name,q.questionToken,q.type):pi(q)?yr(q,Pe,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):hl(q)?Oi(q,Pe,q.name,q.questionToken,q.typeParameters,q.parameters,q.type):uu(q)?pa(q,Pe,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Tc(q)?Tu(q,Pe,q.parameters,q.body):Bg(q)?pt(q,Pe,q.name,q.parameters,q.type,q.body):Dg(q)?nr(q,Pe,q.name,q.parameters,q.body):w0(q)?Gi(q,Pe,q.parameters,q.type):UA(q)?gy(q,Pe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):lA(q)?ik(q,Pe,q.typeParameters,q.parameters,q.type,q.equalsGreaterThanToken,q.body):vd(q)?sk(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):Ch(q)?p_(q,Pe,q.declarationList):ih(q)?PA(q,Pe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):pm(q)?jF(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):g_(q)?ck(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):FB(q)?l0(q,Pe,q.name,q.typeParameters,q.type):V3(q)?u0(q,Pe,q.name,q.members):xh(q)?Ay(q,Pe,q.name,q.body):km(q)?l9(q,Pe,q.isTypeOnly,q.name,q.moduleReference):Mf(q)?Sr(q,Pe,q.importClause,q.moduleSpecifier,q.attributes):Cf(q)?I5(q,Pe,q.expression):Gh(q)?sa(q,Pe,q.isTypeOnly,q.exportClause,q.moduleSpecifier,q.attributes):pe.assertNever(q)}function Kx(q,Ce){return Si(q)?su(q,Ce,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):pi(q)?yr(q,Ce,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):uu(q)?pa(q,Ce,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Bg(q)?pt(q,Ce,q.name,q.parameters,q.type,q.body):Dg(q)?nr(q,Ce,q.name,q.parameters,q.body):vd(q)?sk(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pm(q)?jF(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pe.assertNever(q)}function uW(q,Ce){switch(q.kind){case 178:return pt(q,q.modifiers,Ce,q.parameters,q.type,q.body);case 179:return nr(q,q.modifiers,Ce,q.parameters,q.body);case 175:return pa(q,q.modifiers,q.asteriskToken,Ce,q.questionToken,q.typeParameters,q.parameters,q.type,q.body);case 174:return Oi(q,q.modifiers,Ce,q.questionToken,q.typeParameters,q.parameters,q.type);case 173:return yr(q,q.modifiers,Ce,q.questionToken??q.exclamationToken,q.type,q.initializer);case 172:return ba(q,q.modifiers,Ce,q.questionToken,q.type);case 304:return kQ(q,Ce,q.initializer)}}function nd(q){return q?Ne(q):void 0}function Fm(q){return typeof q=="string"?Rt(q):q}function y9(q){return typeof q=="string"?Tt(q):typeof q=="number"?Ue(q):typeof q=="boolean"?q?zt():Ht():q}function Z0(q){return q&&d().parenthesizeExpressionForDisallowedComma(q)}function _q(q){return typeof q=="number"?dt(q):q}function jx(q){return q&&PPt(q)?gn(g(MB(),q),q):q}function dk(q){return typeof q=="string"||q&&!nc(q)?KF(q,void 0,void 0,void 0):q}function vo(q,Ce){return q!==Ce&&(g(q,Ce),gn(q,Ce)),q}}function Kbe(s){switch(s){case 345:return"type";case 343:return"returns";case 344:return"this";case 341:return"enum";case 331:return"author";case 333:return"class";case 334:return"public";case 335:return"private";case 336:return"protected";case 337:return"readonly";case 338:return"override";case 346:return"template";case 347:return"typedef";case 342:return"param";case 349:return"prop";case 339:return"callback";case 340:return"overload";case 329:return"augments";case 330:return"implements";case 352:return"import";default:return pe.fail(`Unsupported kind: ${pe.formatSyntaxKind(s)}`)}}var kx,t$e={};function IPt(s,c){switch(kx||(kx=wb(99,!1,0)),s){case 15:kx.setText("`"+c+"`");break;case 16:kx.setText("`"+c+"${");break;case 17:kx.setText("}"+c+"${");break;case 18:kx.setText("}"+c+"`");break}let g=kx.scan();if(g===20&&(g=kx.reScanTemplateToken(!1)),kx.isUnterminated())return kx.setText(void 0),t$e;let d;switch(g){case 15:case 16:case 17:case 18:d=kx.getTokenValue();break}return d===void 0||kx.scan()!==1?(kx.setText(void 0),t$e):(kx.setText(void 0),d)}function NB(s){return s&&Ir(s)?sie(s):qs(s)}function sie(s){return qs(s)&-67108865}function hPt(s,c){return c|s.transformFlags&134234112}function qs(s){if(!s)return 0;let c=s.transformFlags&~r$e(s.kind);return rh(s)&&VI(s.name)?hPt(s.name,c):c}function CA(s){return s?s.transformFlags:0}function fU(s){let c=0;for(let g of s)c|=qs(g);s.transformFlags=c}function r$e(s){if(s>=183&&s<=206)return-2;switch(s){case 214:case 215:case 210:return-2147450880;case 268:return-1941676032;case 170:return-2147483648;case 220:return-2072174592;case 219:case 263:return-1937940480;case 262:return-2146893824;case 264:case 232:return-2147344384;case 177:return-1937948672;case 173:return-2013249536;case 175:case 178:case 179:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 169:case 172:case 174:case 180:case 181:case 182:case 265:case 266:return-2;case 211:return-2147278848;case 300:return-2147418112;case 207:case 208:return-2147450880;case 217:case 239:case 235:case 356:case 218:case 108:return-2147483648;case 212:case 213:return-2147483648;default:return-2147483648}}var Az=FLe();function ede(s){return s.flags|=16,s}var mPt={createBaseSourceFileNode:s=>ede(Az.createBaseSourceFileNode(s)),createBaseIdentifierNode:s=>ede(Az.createBaseIdentifierNode(s)),createBasePrivateIdentifierNode:s=>ede(Az.createBasePrivateIdentifierNode(s)),createBaseTokenNode:s=>ede(Az.createBaseTokenNode(s)),createBaseNode:s=>ede(Az.createBaseNode(s))},me=iie(4,mPt),dz;function n$e(s,c,g){return new(dz||(dz=ZC.getSourceMapSourceConstructor()))(s,c,g)}function ua(s,c){if(s.original!==c&&(s.original=c,c)){let g=c.emitNode;g&&(s.emitNode=i$e(g,s.emitNode))}return s}function i$e(s,c){let{flags:g,internalFlags:d,leadingComments:h,trailingComments:_,commentRange:S,sourceMapRange:R,tokenSourceMapRanges:T,constantValue:W,helpers:V,startsOnNewLine:M,snippetElement:ee,classThis:re,assignedName:ge}=s;if(c||(c={}),g&&(c.flags=g),d&&(c.internalFlags=d&-9),h&&(c.leadingComments=Or(h.slice(),c.leadingComments)),_&&(c.trailingComments=Or(_.slice(),c.trailingComments)),S&&(c.commentRange=S),R&&(c.sourceMapRange=R),T&&(c.tokenSourceMapRanges=IU(T,c.tokenSourceMapRanges)),W!==void 0&&(c.constantValue=W),V)for(let Ie of V)c.helpers=ps(c.helpers,Ie);return M!==void 0&&(c.startsOnNewLine=M),ee!==void 0&&(c.snippetElement=ee),re&&(c.classThis=re),ge&&(c.assignedName=ge),c}function IU(s,c){c||(c=[]);for(let g in s)c[g]=s[g];return c}function c_(s){if(s.emitNode)pe.assert(!(s.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(SL(s)){if(s.kind===308)return s.emitNode={annotatedNodes:[s]};let c=ms($l(ms(s)))??pe.fail("Could not determine parsed source file.");c_(c).annotatedNodes.push(s)}s.emitNode={}}return s.emitNode}function Ku(s){var c,g;let d=(g=(c=ms($l(s)))==null?void 0:c.emitNode)==null?void 0:g.annotatedNodes;if(d)for(let h of d)h.emitNode=void 0}function pz(s){let c=c_(s);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,s}function ti(s,c){return c_(s).flags=c,s}function Gw(s,c){let g=c_(s);return g.flags=g.flags|c,s}function oie(s,c){return c_(s).internalFlags=c,s}function N3(s,c){let g=c_(s);return g.internalFlags=g.internalFlags|c,s}function XT(s){var c;return((c=s.emitNode)==null?void 0:c.sourceMapRange)??s}function Hg(s,c){return c_(s).sourceMapRange=c,s}function fz(s,c){var g,d;return(d=(g=s.emitNode)==null?void 0:g.tokenSourceMapRanges)==null?void 0:d[c]}function jbe(s,c,g){let d=c_(s),h=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return h[c]=g,s}function D3(s){var c;return(c=s.emitNode)==null?void 0:c.startsOnNewLine}function Md(s,c){return c_(s).startsOnNewLine=c,s}function DB(s){var c;return((c=s.emitNode)==null?void 0:c.commentRange)??s}function hh(s,c){return c_(s).commentRange=c,s}function k3(s){var c;return(c=s.emitNode)==null?void 0:c.leadingComments}function kB(s,c){return c_(s).leadingComments=c,s}function JT(s,c,g,d){return kB(s,Ft(k3(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function hU(s){var c;return(c=s.emitNode)==null?void 0:c.trailingComments}function x3(s,c){return c_(s).trailingComments=c,s}function Iz(s,c,g,d){return x3(s,Ft(hU(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function LLe(s,c){kB(s,k3(c)),x3(s,hU(c));let g=c_(c);return g.leadingComments=void 0,g.trailingComments=void 0,s}function VLe(s){var c;return(c=s.emitNode)==null?void 0:c.constantValue}function PLe(s,c){let g=c_(s);return g.constantValue=c,s}function $Y(s,c){let g=c_(s);return g.helpers=Ft(g.helpers,c),s}function hN(s,c){if(jt(c)){let g=c_(s);for(let d of c)g.helpers=ps(g.helpers,d)}return s}function s$e(s,c){var g;let d=(g=s.emitNode)==null?void 0:g.helpers;return d?Ql(d,c):!1}function zbe(s){var c;return(c=s.emitNode)==null?void 0:c.helpers}function WLe(s,c,g){let d=s.emitNode,h=d&&d.helpers;if(!jt(h))return;let _=c_(c),S=0;for(let R=0;R0&&(h[R-S]=T)}S>0&&(h.length-=S)}function qbe(s){var c;return(c=s.emitNode)==null?void 0:c.snippetElement}function $be(s,c){let g=c_(s);return g.snippetElement=c,s}function eEe(s){return c_(s).internalFlags|=4,s}function OLe(s,c){let g=c_(s);return g.typeNode=c,s}function MLe(s){var c;return(c=s.emitNode)==null?void 0:c.typeNode}function xx(s,c){return c_(s).identifierTypeArguments=c,s}function G3(s){var c;return(c=s.emitNode)==null?void 0:c.identifierTypeArguments}function aie(s,c){return c_(s).autoGenerate=c,s}function o$e(s){var c;return(c=s.emitNode)==null?void 0:c.autoGenerate}function HLe(s,c){return c_(s).generatedImportReference=c,s}function YLe(s){var c;return(c=s.emitNode)==null?void 0:c.generatedImportReference}var QLe=(s=>(s.Field="f",s.Method="m",s.Accessor="a",s))(QLe||{});function XLe(s){let c=s.factory,g=FA(()=>oie(c.createTrue(),8)),d=FA(()=>oie(c.createFalse(),8));return{getUnscopedHelperName:h,createDecorateHelper:_,createMetadataHelper:S,createParamHelper:R,createESDecorateHelper:Ie,createRunInitializersHelper:_e,createAssignHelper:Ee,createAwaitHelper:Ne,createAsyncGeneratorHelper:Te,createAsyncDelegatorHelper:Ze,createAsyncValuesHelper:We,createRestHelper:Ue,createAwaiterHelper:$e,createExtendsHelper:Ye,createTemplateObjectHelper:Tt,createSpreadArrayHelper:ot,createPropKeyHelper:Qe,createSetFunctionNameHelper:mt,createValuesHelper:ht,createReadHelper:_t,createGeneratorHelper:Rt,createImportStarHelper:Lt,createImportStarCallbackHelper:Ke,createImportDefaultHelper:Pt,createExportStarHelper:_r,createClassPrivateFieldGetHelper:Gt,createClassPrivateFieldSetHelper:nt,createClassPrivateFieldInHelper:Dt,createAddDisposableResourceHelper:tr,createDisposeResourcesHelper:ur,createRewriteRelativeImportExtensionsHelper:Gr};function h(dt){return ti(c.createIdentifier(dt),8196)}function _(dt,pr,st,ir){s.requestEmitHelper(CPt);let zt=[];return zt.push(c.createArrayLiteralExpression(dt,!0)),zt.push(pr),st&&(zt.push(st),ir&&zt.push(ir)),c.createCallExpression(h("__decorate"),void 0,zt)}function S(dt,pr){return s.requestEmitHelper(_Pt),c.createCallExpression(h("__metadata"),void 0,[c.createStringLiteral(dt),pr])}function R(dt,pr,st){return s.requestEmitHelper(yPt),gn(c.createCallExpression(h("__param"),void 0,[c.createNumericLiteral(pr+""),dt]),st)}function T(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),dt.name),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function W(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,pr))}function V(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(pr,c.createIdentifier("value")))])))}function M(dt){let pr=dt.computed?dt.name:Ir(dt.name)?c.createStringLiteralFromNode(dt.name):dt.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(pr,103,c.createIdentifier("obj"))))}function ee(dt,pr){let st=[];return st.push(M(dt)),pr.get&&st.push(W(dt)),pr.set&&st.push(V(dt)),c.createObjectLiteralExpression(st)}function re(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(dt.kind)),c.createPropertyAssignment(c.createIdentifier("name"),dt.name.computed?dt.name.name:c.createStringLiteralFromNode(dt.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),dt.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),dt.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),ee(dt.name,dt.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function ge(dt){return dt.kind==="class"?T(dt):re(dt)}function Ie(dt,pr,st,ir,zt,Ht){return s.requestEmitHelper(bPt),c.createCallExpression(h("__esDecorate"),void 0,[dt??c.createNull(),pr??c.createNull(),st,ge(ir),zt,Ht])}function _e(dt,pr,st){return s.requestEmitHelper(Gx),c.createCallExpression(h("__runInitializers"),void 0,st?[dt,pr,st]:[dt,pr])}function Ee(dt){return Mg(s.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,dt):(s.requestEmitHelper(EPt),c.createCallExpression(h("__assign"),void 0,dt))}function Ne(dt){return s.requestEmitHelper(td),c.createCallExpression(h("__await"),void 0,[dt])}function Te(dt,pr){return s.requestEmitHelper(td),s.requestEmitHelper(tde),(dt.emitNode||(dt.emitNode={})).flags|=1572864,c.createCallExpression(h("__asyncGenerator"),void 0,[pr?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),dt])}function Ze(dt){return s.requestEmitHelper(td),s.requestEmitHelper(NF),c.createCallExpression(h("__asyncDelegator"),void 0,[dt])}function We(dt){return s.requestEmitHelper(SPt),c.createCallExpression(h("__asyncValues"),void 0,[dt])}function Ue(dt,pr,st,ir){s.requestEmitHelper(vPt);let zt=[],Ht=0;for(let Br=0;Br{let d="";for(let h=0;h= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; - };`},IPt={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:` + };`},_Pt={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:` var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - };`},hPt={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:` + };`},yPt={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:` var __param = (this && this.__param) || function (paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); } - };`},mPt={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:` + };`},bPt={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:` var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; } var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; @@ -707,7 +707,7 @@ ${Hn.join(` value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); } return useValue ? value : void 0; - };`},CPt={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:` + };`},EPt={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:` var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { @@ -719,7 +719,7 @@ ${Hn.join(` }; return __assign.apply(this, arguments); };`},td={name:"typescript:await",importName:"__await",scoped:!1,text:` - var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},ede={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[td],text:` + var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},tde={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[td],text:` var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; @@ -736,14 +736,14 @@ ${Hn.join(` var i, p; return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; } - };`},_Pt={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:` + };`},SPt={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:` var __asyncValues = (this && this.__asyncValues) || function (o) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m = o[Symbol.asyncIterator], i; return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } - };`},yPt={name:"typescript:rest",importName:"__rest",scoped:!1,text:` + };`},vPt={name:"typescript:rest",importName:"__rest",scoped:!1,text:` var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) @@ -754,7 +754,7 @@ ${Hn.join(` t[p[i]] = s[p[i]]; } return t; - };`},bPt={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:` + };`},BPt={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:` var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -763,7 +763,7 @@ ${Hn.join(` function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); - };`},EPt={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:` + };`},wPt={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:` var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || @@ -783,7 +783,7 @@ ${Hn.join(` var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) { if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } return cooked; - };`},SPt={name:"typescript:read",importName:"__read",scoped:!1,text:` + };`},TPt={name:"typescript:read",importName:"__read",scoped:!1,text:` var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; @@ -799,7 +799,7 @@ ${Hn.join(` finally { if (e) throw e.error; } } return ar; - };`},tde={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` + };`},rde={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { @@ -808,14 +808,14 @@ ${Hn.join(` } } return to.concat(ar || Array.prototype.slice.call(from)); - };`},vPt={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:` + };`},RPt={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:` var __propKey = (this && this.__propKey) || function (x) { return typeof x === "symbol" ? x : "".concat(x); - };`},BPt={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:` + };`},NPt={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:` var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) { if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : ""; return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); - };`},XLe={name:"typescript:values",importName:"__values",scoped:!1,text:` + };`},ULe={name:"typescript:values",importName:"__values",scoped:!1,text:` var __values = (this && this.__values) || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); @@ -826,7 +826,7 @@ ${Hn.join(` } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - };`},wPt={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:` + };`},DPt={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:` var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype); return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; @@ -853,7 +853,7 @@ ${Hn.join(` } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } - };`},JLe={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:` + };`},KLe={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:` var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); @@ -864,12 +864,12 @@ ${Hn.join(` }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; - }));`},TPt={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:` + }));`},kPt={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:` var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; - });`},o$e={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[JLe,TPt],priority:2,text:` + });`},c$e={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[KLe,kPt],priority:2,text:` var __importStar = (this && this.__importStar) || (function () { var ownKeys = function(o) { ownKeys = Object.getOwnPropertyNames || function (o) { @@ -886,28 +886,28 @@ ${Hn.join(` __setModuleDefault(result, mod); return result; }; - })();`},eEe={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:` + })();`},tEe={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:` var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; - };`},RPt={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[JLe],priority:2,text:` + };`},xPt={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[KLe],priority:2,text:` var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); - };`},aie={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` + };`},cie={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); - };`},NPt={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:` + };`},GPt={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:` var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; - };`},cie={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` + };`},lie={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) { if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); return typeof state === "function" ? receiver === state : state.has(receiver); - };`},a$e={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` + };`},l$e={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) { if (value !== null && value !== void 0) { if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); @@ -929,7 +929,7 @@ ${Hn.join(` env.stack.push({ async: true }); } return value; - };`},c$e={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` + };`},u$e={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) { return function (env) { function fail(e) { @@ -959,7 +959,7 @@ ${Hn.join(` })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { var e = new Error(message); return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; - });`},l$e={name:"typescript:rewriteRelativeImportExtensions",importName:"__rewriteRelativeImportExtension",scoped:!1,text:` + });`},g$e={name:"typescript:rewriteRelativeImportExtensions",importName:"__rewriteRelativeImportExtension",scoped:!1,text:` var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) { if (typeof path === "string" && /^\\.\\.?\\//.test(path)) { return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) { @@ -967,42 +967,42 @@ ${Hn.join(` }); } return path; - };`},lie={name:"typescript:async-super",scoped:!0,text:s$e` - const ${"_superIndex"} = name => super[name];`},DF={name:"typescript:advanced-async-super",scoped:!0,text:s$e` + };`},uie={name:"typescript:async-super",scoped:!0,text:a$e` + const ${"_superIndex"} = name => super[name];`},DF={name:"typescript:advanced-async-super",scoped:!0,text:a$e` const ${"_superIndex"} = (function (geti, seti) { const cache = Object.create(null); return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } }); - })(name => super[name], (name, value) => super[name] = value);`};function qD(s,c){return Zl(s)&&Ir(s.expression)&&(tA(s.expression)&8192)!==0&&s.expression.escapedText===c}function mC(s){return s.kind===9}function eQ(s){return s.kind===10}function Zg(s){return s.kind===11}function KL(s){return s.kind===12}function tEe(s){return s.kind===14}function GP(s){return s.kind===15}function tQ(s){return s.kind===16}function uie(s){return s.kind===17}function rde(s){return s.kind===18}function nde(s){return s.kind===26}function rEe(s){return s.kind===28}function mz(s){return s.kind===40}function ide(s){return s.kind===41}function gie(s){return s.kind===42}function Cz(s){return s.kind===54}function UT(s){return s.kind===58}function nEe(s){return s.kind===59}function Aie(s){return s.kind===29}function ULe(s){return s.kind===39}function Ir(s){return s.kind===80}function p(s){return s.kind===81}function y(s){return s.kind===95}function w(s){return s.kind===90}function G(s){return s.kind===134}function J(s){return s.kind===131}function U(s){return s.kind===135}function le(s){return s.kind===148}function Ge(s){return s.kind===126}function Xe(s){return s.kind===128}function bt(s){return s.kind===164}function It(s){return s.kind===129}function rr(s){return s.kind===108}function an(s){return s.kind===102}function Ks(s){return s.kind===84}function zi(s){return s.kind===167}function Un(s){return s.kind===168}function Ds(s){return s.kind===169}function Si(s){return s.kind===170}function So(s){return s.kind===171}function ss(s){return s.kind===172}function pi(s){return s.kind===173}function hl(s){return s.kind===174}function uu(s){return s.kind===175}function fl(s){return s.kind===176}function Tc(s){return s.kind===177}function Bg(s){return s.kind===178}function Dg(s){return s.kind===179}function wg(s){return s.kind===180}function em(s){return s.kind===181}function w0(s){return s.kind===182}function bE(s){return s.kind===183}function nh(s){return s.kind===184}function x_(s){return s.kind===185}function $D(s){return s.kind===186}function Fw(s){return s.kind===187}function mh(s){return s.kind===188}function kF(s){return s.kind===189}function Zw(s){return s.kind===190}function KT(s){return s.kind===203}function jL(s){return s.kind===191}function zL(s){return s.kind===192}function aS(s){return s.kind===193}function mf(s){return s.kind===194}function d2(s){return s.kind===195}function jT(s){return s.kind===196}function fv(s){return s.kind===197}function Fx(s){return s.kind===198}function xB(s){return s.kind===199}function Iv(s){return s.kind===200}function GB(s){return s.kind===201}function EE(s){return s.kind===202}function Um(s){return s.kind===206}function mN(s){return s.kind===205}function zT(s){return s.kind===204}function Km(s){return s.kind===207}function p2(s){return s.kind===208}function hg(s){return s.kind===209}function OI(s){return s.kind===210}function og(s){return s.kind===211}function jo(s){return s.kind===212}function Yg(s){return s.kind===213}function Zl(s){return s.kind===214}function f2(s){return s.kind===215}function MI(s){return s.kind===216}function xF(s){return s.kind===217}function gI(s){return s.kind===218}function UA(s){return s.kind===219}function lA(s){return s.kind===220}function GF(s){return s.kind===221}function CN(s){return s.kind===222}function qT(s){return s.kind===223}function I1(s){return s.kind===224}function T0(s){return s.kind===225}function ek(s){return s.kind===226}function fo(s){return s.kind===227}function Lw(s){return s.kind===228}function FF(s){return s.kind===229}function Hd(s){return s.kind===230}function of(s){return s.kind===231}function vd(s){return s.kind===232}function yp(s){return s.kind===233}function l_(s){return s.kind===234}function Yd(s){return s.kind===235}function Qg(s){return s.kind===239}function hv(s){return s.kind===236}function Du(s){return s.kind===237}function F3(s){return s.kind===238}function ly(s){return s.kind===356}function sde(s){return s.kind===357}function die(s){return s.kind===240}function DPt(s){return s.kind===241}function $u(s){return s.kind===242}function Ch(s){return s.kind===244}function u$e(s){return s.kind===243}function VC(s){return s.kind===245}function Z3(s){return s.kind===246}function Uqr(s){return s.kind===247}function g$e(s){return s.kind===248}function L3(s){return s.kind===249}function KLe(s){return s.kind===250}function iEe(s){return s.kind===251}function Kqr(s){return s.kind===252}function jqr(s){return s.kind===253}function I2(s){return s.kind===254}function kPt(s){return s.kind===255}function ode(s){return s.kind===256}function FP(s){return s.kind===257}function A$e(s){return s.kind===258}function mU(s){return s.kind===259}function zqr(s){return s.kind===260}function nc(s){return s.kind===261}function u_(s){return s.kind===262}function ih(s){return s.kind===263}function pm(s){return s.kind===264}function g_(s){return s.kind===265}function FB(s){return s.kind===266}function V3(s){return s.kind===267}function xh(s){return s.kind===268}function _N(s){return s.kind===269}function ade(s){return s.kind===270}function sEe(s){return s.kind===271}function km(s){return s.kind===272}function Mf(s){return s.kind===273}function Vw(s){return s.kind===274}function qqr(s){return s.kind===303}function xPt(s){return s.kind===301}function $qr(s){return s.kind===302}function CU(s){return s.kind===301}function GPt(s){return s.kind===302}function Zx(s){return s.kind===275}function tk(s){return s.kind===281}function yN(s){return s.kind===276}function uy(s){return s.kind===277}function Cf(s){return s.kind===278}function Gh(s){return s.kind===279}function mv(s){return s.kind===280}function R0(s){return s.kind===282}function jLe(s){return s.kind===80||s.kind===11}function e$r(s){return s.kind===283}function FPt(s){return s.kind===354}function _z(s){return s.kind===358}function ZF(s){return s.kind===284}function bN(s){return s.kind===285}function _U(s){return s.kind===286}function $T(s){return s.kind===287}function rQ(s){return s.kind===288}function P3(s){return s.kind===289}function Pw(s){return s.kind===290}function ZPt(s){return s.kind===291}function EN(s){return s.kind===292}function nQ(s){return s.kind===293}function yz(s){return s.kind===294}function pie(s){return s.kind===295}function eR(s){return s.kind===296}function fie(s){return s.kind===297}function cde(s){return s.kind===298}function h1(s){return s.kind===299}function iQ(s){return s.kind===300}function fm(s){return s.kind===304}function a0(s){return s.kind===305}function Lx(s){return s.kind===306}function LF(s){return s.kind===307}function ll(s){return s.kind===308}function LPt(s){return s.kind===309}function W3(s){return s.kind===310}function lde(s){return s.kind===311}function O3(s){return s.kind===312}function VPt(s){return s.kind===325}function PPt(s){return s.kind===326}function t$r(s){return s.kind===327}function WPt(s){return s.kind===313}function OPt(s){return s.kind===314}function Iie(s){return s.kind===315}function zLe(s){return s.kind===316}function d$e(s){return s.kind===317}function hie(s){return s.kind===318}function qLe(s){return s.kind===319}function r$r(s){return s.kind===320}function tR(s){return s.kind===321}function yU(s){return s.kind===323}function qL(s){return s.kind===324}function bz(s){return s.kind===329}function n$r(s){return s.kind===331}function MPt(s){return s.kind===333}function p$e(s){return s.kind===339}function f$e(s){return s.kind===334}function I$e(s){return s.kind===335}function h$e(s){return s.kind===336}function m$e(s){return s.kind===337}function $Le(s){return s.kind===338}function mie(s){return s.kind===340}function C$e(s){return s.kind===332}function i$r(s){return s.kind===348}function oEe(s){return s.kind===341}function cS(s){return s.kind===342}function e9e(s){return s.kind===343}function _$e(s){return s.kind===344}function ude(s){return s.kind===345}function ZB(s){return s.kind===346}function bU(s){return s.kind===347}function s$r(s){return s.kind===328}function HPt(s){return s.kind===349}function t9e(s){return s.kind===330}function r9e(s){return s.kind===351}function o$r(s){return s.kind===350}function SN(s){return s.kind===352}function Cie(s){return s.kind===353}var gde=new WeakMap;function y$e(s,c){var g;let d=s.kind;return z6(d)?d===353?s._children:(g=gde.get(c))==null?void 0:g.get(s):E}function YPt(s,c,g){s.kind===353&&pe.fail("Should not need to re-set the children of a SyntaxList.");let d=gde.get(c);return d===void 0&&(d=new WeakMap,gde.set(c,d)),d.set(s,g),g}function b$e(s,c){var g;s.kind===353&&pe.fail("Did not expect to unset the children of a SyntaxList."),(g=gde.get(c))==null||g.delete(s)}function QPt(s,c){let g=gde.get(s);g!==void 0&&(gde.delete(s),gde.set(c,g))}function aEe(s){return s.createExportDeclaration(void 0,!1,s.createNamedExports([]),void 0)}function EU(s,c,g,d){if(Un(g))return gn(s.createElementAccessExpression(c,g.expression),d);{let h=gn(_w(g)?s.createPropertyAccessExpression(c,g):s.createElementAccessExpression(c,g),g);return Gw(h,128),h}}function XPt(s,c){let g=H3.createIdentifier(s||"React");return XA(g,$l(c)),g}function JPt(s,c,g){if(zi(c)){let d=JPt(s,c.left,g),h=s.createIdentifier(Vo(c.right));return h.escapedText=c.right.escapedText,s.createPropertyAccessExpression(d,h)}else return XPt(Vo(c),g)}function E$e(s,c,g,d){return c?JPt(s,c,d):s.createPropertyAccessExpression(XPt(g,d),"createElement")}function f2s(s,c,g,d){return c?JPt(s,c,d):s.createPropertyAccessExpression(XPt(g,d),"Fragment")}function UPt(s,c,g,d,h,_){let S=[g];if(d&&S.push(d),h&&h.length>0)if(d||S.push(s.createNull()),h.length>1)for(let R of h)N0(R),S.push(R);else S.push(h[0]);return gn(s.createCallExpression(c,void 0,S),_)}function KPt(s,c,g,d,h,_,S){let T=[f2s(s,g,d,_),s.createNull()];if(h&&h.length>0)if(h.length>1)for(let W of h)N0(W),T.push(W);else T.push(h[0]);return gn(s.createCallExpression(E$e(s,c,d,_),void 0,T),S)}function S$e(s,c,g){if(u_(c)){let d=ma(c.declarations),h=s.updateVariableDeclaration(d,d.name,void 0,void 0,g);return gn(s.createVariableStatement(void 0,s.updateVariableDeclarationList(c,[h])),c)}else{let d=gn(s.createAssignment(c,g),c);return gn(s.createExpressionStatement(d),c)}}function cEe(s,c){if(zi(c)){let g=cEe(s,c.left),d=XA(gn(s.cloneNode(c.right),c.right),c.right.parent);return gn(s.createPropertyAccessExpression(g,d),c)}else return XA(gn(s.cloneNode(c),c),c.parent)}function v$e(s,c){return Ir(c)?s.createStringLiteralFromNode(c):Un(c)?XA(gn(s.cloneNode(c.expression),c.expression),c.expression.parent):XA(gn(s.cloneNode(c),c),c.parent)}function I2s(s,c,g,d,h){let{firstAccessor:_,getAccessor:S,setAccessor:R}=BP(c,g);if(g===_)return gn(s.createObjectDefinePropertyCall(d,v$e(s,g.name),s.createPropertyDescriptor({enumerable:s.createFalse(),configurable:!0,get:S&&gn(ua(s.createFunctionExpression($R(S),void 0,void 0,void 0,S.parameters,void 0,S.body),S),S),set:R&&gn(ua(s.createFunctionExpression($R(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!h)),_)}function h2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),c.initializer),c),c)}function m2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),s.cloneNode(c.name)),c),c)}function C2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),ua(gn(s.createFunctionExpression($R(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function jPt(s,c,g,d){switch(g.name&&p(g.name)&&pe.failBadSyntaxKind(g.name,"Private identifiers are not allowed in object literals."),g.kind){case 178:case 179:return I2s(s,c.properties,g,d,!!c.multiLine);case 304:return h2s(s,g,d);case 305:return m2s(s,g,d);case 175:return C2s(s,g,d)}}function n9e(s,c,g,d,h){let _=c.operator;pe.assert(_===46||_===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let S=s.createTempVariable(d);g=s.createAssignment(S,g),gn(g,c.operand);let R=T0(c)?s.createPrefixUnaryExpression(_,S):s.createPostfixUnaryExpression(S,_);return gn(R,c),h&&(R=s.createAssignment(h,R),gn(R,c)),g=s.createComma(g,R),gn(g,c),ek(c)&&(g=s.createComma(g,S),gn(g,c)),g}function B$e(s){return(tA(s)&65536)!==0}function VF(s){return(tA(s)&32768)!==0}function i9e(s){return(tA(s)&16384)!==0}function a$r(s){return Zg(s.expression)&&s.expression.text==="use strict"}function w$e(s){for(let c of s)if(nS(c)){if(a$r(c))return c}else break}function zPt(s){let c=Nc(s);return c!==void 0&&nS(c)&&a$r(c)}function lEe(s){return s.kind===227&&s.operatorToken.kind===28}function Ade(s){return lEe(s)||sde(s)}function sQ(s){return gI(s)&&wo(s)&&!!ov(s)}function _ie(s){let c=eN(s);return pe.assertIsDefined(c),c}function s9e(s,c=63){switch(s.kind){case 218:return c&-2147483648&&sQ(s)?!1:(c&1)!==0;case 217:case 235:return(c&2)!==0;case 239:return(c&34)!==0;case 234:return(c&16)!==0;case 236:return(c&4)!==0;case 356:return(c&8)!==0}return!1}function HI(s,c=63){for(;s9e(s,c);)s=s.expression;return s}function qPt(s,c=63){let g=s.parent;for(;s9e(g,c);)g=g.parent,pe.assert(g);return g}function N0(s){return Md(s,!0)}function uEe(s){let c=Dd(s,ll),g=c&&c.emitNode;return g&&g.externalHelpersModuleName}function $Pt(s){let c=Dd(s,ll),g=c&&c.emitNode;return!!g&&(!!g.externalHelpersModuleName||!!g.externalHelpers)}function T$e(s,c,g,d,h,_,S){if(d.importHelpers&&g3(g,d)){let R=i0(d),T=NU(g,d),W=_2s(g);if(T!==1&&(R>=5&&R<=99||T===99||T===void 0&&R===200)){if(W){let V=[];for(let M of W){let ee=M.importName;ee&&Qi(V,ee)}if(jt(V)){V.sort(Ca);let M=s.createNamedImports(At(V,Ie=>u7(g,Ie)?s.createImportSpecifier(!1,void 0,s.createIdentifier(Ie)):s.createImportSpecifier(!1,s.createIdentifier(Ie),c.getUnscopedHelperName(Ie)))),ee=Dd(g,ll),re=c_(ee);re.externalHelpers=!0;let ge=s.createImportDeclaration(void 0,s.createImportClause(void 0,void 0,M),s.createStringLiteral(PD),void 0);return N3(ge,2),ge}}}else{let V=y2s(s,g,d,W,h,_||S);if(V){let M=s.createImportEqualsDeclaration(void 0,!1,V,s.createExternalModuleReference(s.createStringLiteral(PD)));return N3(M,2),M}}}}function _2s(s){return Me(jbe(s),c=>!c.scoped)}function y2s(s,c,g,d,h,_){let S=uEe(c);if(S)return S;if(jt(d)||(h||kw(g)&&_)&&Lde(c,g)<4){let T=Dd(c,ll),W=c_(T);return W.externalHelpersModuleName||(W.externalHelpersModuleName=s.createUniqueName(PD))}}function yie(s,c,g){let d=JJ(c);if(d&&!h3(c)&&!wY(c)){let h=d.name;return h.kind===11?s.getGeneratedNameForNode(c):kp(h)?h:s.createIdentifier(mF(g,h)||Vo(h))}if(c.kind===273&&c.importClause||c.kind===279&&c.moduleSpecifier)return s.getGeneratedNameForNode(c)}function Ez(s,c,g,d,h,_){let S=LY(c);if(S&&Zg(S))return E2s(c,d,s,h,_)||b2s(s,S,g)||s.cloneNode(S)}function b2s(s,c,g){let d=g.renamedDependencies&&g.renamedDependencies.get(c.text);return d?s.createStringLiteral(d):void 0}function gEe(s,c,g,d){if(c){if(c.moduleName)return s.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return s.createStringLiteral(Mye(g,c.fileName))}}function E2s(s,c,g,d,h){return gEe(g,d.getExternalModuleFileFromDeclaration(s),c,h)}function AEe(s){if(uP(s))return s.initializer;if(fm(s)){let c=s.initializer;return Jm(c,!0)?c.right:void 0}if(a0(s))return s.objectAssignmentInitializer;if(Jm(s,!0))return s.right;if(of(s))return AEe(s.expression)}function ZP(s){if(uP(s))return s.name;if(yw(s)){switch(s.kind){case 304:return ZP(s.initializer);case 305:return s.name;case 306:return ZP(s.expression)}return}return Jm(s,!0)?ZP(s.left):of(s)?ZP(s.expression):s}function o9e(s){switch(s.kind){case 170:case 209:return s.dotDotDotToken;case 231:case 306:return s}}function R$e(s){let c=a9e(s);return pe.assert(!!c||Lx(s),"Invalid property name for binding element."),c}function a9e(s){switch(s.kind){case 209:if(s.propertyName){let g=s.propertyName;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&c$r(g.expression)?g.expression:g}break;case 304:if(s.name){let g=s.name;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&c$r(g.expression)?g.expression:g}break;case 306:return s.name&&p(s.name)?pe.failBadSyntaxKind(s.name):s.name}let c=ZP(s);if(c&&VI(c))return c}function c$r(s){let c=s.kind;return c===11||c===9}function bie(s){switch(s.kind){case 207:case 208:case 210:return s.elements;case 211:return s.properties}}function N$e(s){if(s){let c=s;for(;;){if(Ir(c)||!c.body)return Ir(c)?c:c.name;c=c.body}}}function l$r(s){let c=s.kind;return c===177||c===179}function eWt(s){let c=s.kind;return c===177||c===178||c===179}function D$e(s){let c=s.kind;return c===304||c===305||c===263||c===177||c===182||c===176||c===283||c===244||c===265||c===266||c===267||c===268||c===272||c===273||c===271||c===279||c===278}function tWt(s){let c=s.kind;return c===176||c===304||c===305||c===283||c===271}function rWt(s){return UT(s)||Cz(s)}function nWt(s){return Ir(s)||Fx(s)}function iWt(s){return le(s)||mz(s)||ide(s)}function sWt(s){return UT(s)||mz(s)||ide(s)}function oWt(s){return Ir(s)||Zg(s)}function S2s(s){return s===43}function v2s(s){return s===42||s===44||s===45}function B2s(s){return S2s(s)||v2s(s)}function w2s(s){return s===40||s===41}function T2s(s){return w2s(s)||B2s(s)}function R2s(s){return s===48||s===49||s===50}function k$e(s){return R2s(s)||T2s(s)}function N2s(s){return s===30||s===33||s===32||s===34||s===104||s===103}function D2s(s){return N2s(s)||k$e(s)}function k2s(s){return s===35||s===37||s===36||s===38}function x2s(s){return k2s(s)||D2s(s)}function G2s(s){return s===51||s===52||s===53}function F2s(s){return G2s(s)||x2s(s)}function Z2s(s){return s===56||s===57}function L2s(s){return Z2s(s)||F2s(s)}function V2s(s){return s===61||L2s(s)||UD(s)}function P2s(s){return V2s(s)||s===28}function aWt(s){return P2s(s.kind)}var x$e;(s=>{function c(V,M,ee,re,ge,Ie,_e){let Ee=M>0?ge[M-1]:void 0;return pe.assertEqual(ee[M],c),ge[M]=V.onEnter(re[M],Ee,_e),ee[M]=R(V,c),M}s.enter=c;function g(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],g),pe.assertIsDefined(V.onLeft),ee[M]=R(V,g);let Ee=V.onLeft(re[M].left,ge[M],re[M]);return Ee?(W(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.left=g;function d(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],d),pe.assertIsDefined(V.onOperator),ee[M]=R(V,d),V.onOperator(re[M].operatorToken,ge[M],re[M]),M}s.operator=d;function h(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],h),pe.assertIsDefined(V.onRight),ee[M]=R(V,h);let Ee=V.onRight(re[M].right,ge[M],re[M]);return Ee?(W(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.right=h;function _(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],_),ee[M]=R(V,_);let Ee=V.onExit(re[M],ge[M]);if(M>0){if(M--,V.foldState){let Ne=ee[M]===_?"right":"left";ge[M]=V.foldState(ge[M],Ee,Ne)}}else Ie.value=Ee;return M}s.exit=_;function S(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],S),M}s.done=S;function R(V,M){switch(M){case c:if(V.onLeft)return g;case g:if(V.onOperator)return d;case d:if(V.onRight)return h;case h:return _;case _:return S;case S:return S;default:pe.fail("Invalid state")}}s.nextState=R;function T(V,M,ee,re,ge){return V++,M[V]=c,ee[V]=ge,re[V]=void 0,V}function W(V,M,ee){if(pe.shouldAssert(2))for(;V>=0;)pe.assert(M[V]!==ee,"Circular traversal detected."),V--}})(x$e||(x$e={}));var W2s=class{constructor(s,c,g,d,h,_){this.onEnter=s,this.onLeft=c,this.onOperator=g,this.onRight=d,this.onExit=h,this.foldState=_}};function c9e(s,c,g,d,h,_){let S=new W2s(s,c,g,d,h,_);return R;function R(T,W){let V={value:void 0},M=[x$e.enter],ee=[T],re=[void 0],ge=0;for(;M[ge]!==x$e.done;)ge=M[ge](S,ge,M,ee,re,V,W);return pe.assertEqual(ge,0),V.value}}function O2s(s){return s===95||s===90}function dEe(s){let c=s.kind;return O2s(c)}function cWt(s,c){if(c!==void 0)return c.length===0?c:gn(s.createNodeArray([],c.hasTrailingComma),c)}function pEe(s){var c;let g=s.emitNode.autoGenerate;if(g.flags&4){let d=g.id,h=s,_=h.original;for(;_;){h=_;let S=(c=h.emitNode)==null?void 0:c.autoGenerate;if(_w(h)&&(S===void 0||S.flags&4&&S.id!==d))break;_=h.original}return h}return s}function Eie(s,c){return typeof s=="object"?M3(!1,s.prefix,s.node,s.suffix,c):typeof s=="string"?s.length>0&&s.charCodeAt(0)===35?s.slice(1):s:""}function M2s(s,c){return typeof s=="string"?s:H2s(s,pe.checkDefined(c))}function H2s(s,c){return TL(s)?c(s).slice(1):kp(s)?c(s):p(s)?s.escapedText.slice(1):Vo(s)}function M3(s,c,g,d,h){return c=Eie(c,h),d=Eie(d,h),g=M2s(g,h),`${s?"#":""}${c}${g}${d}`}function G$e(s,c,g,d){return s.updatePropertyDeclaration(c,g,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function lWt(s,c,g,d,h=s.createThis()){return s.createGetAccessorDeclaration(g,d,[],void 0,s.createBlock([s.createReturnStatement(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function uWt(s,c,g,d,h=s.createThis()){return s.createSetAccessorDeclaration(g,d,[s.createParameterDeclaration(void 0,void 0,"value")],s.createBlock([s.createExpressionStatement(s.createAssignment(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),s.createIdentifier("value")))]))}function l9e(s){let c=s.expression;for(;;){if(c=HI(c),sde(c)){c=Ei(c.elements);continue}if(lEe(c)){c=c.right;continue}if(Jm(c,!0)&&kp(c.left))return c;break}}function Y2s(s){return gI(s)&&sp(s)&&!s.emitNode}function u9e(s,c){if(Y2s(s))u9e(s.expression,c);else if(lEe(s))u9e(s.left,c),u9e(s.right,c);else if(sde(s))for(let g of s.elements)u9e(g,c);else c.push(s)}function gWt(s){let c=[];return u9e(s,c),c}function fEe(s){if(s.transformFlags&65536)return!0;if(s.transformFlags&128)for(let c of bie(s)){let g=ZP(c);if(g&&CY(g)&&(g.transformFlags&65536||g.transformFlags&128&&fEe(g)))return!0}return!1}function gn(s,c){return c?TB(s,c.pos,c.end):s}function LB(s){let c=s.kind;return c===169||c===170||c===172||c===173||c===174||c===175||c===177||c===178||c===179||c===182||c===186||c===219||c===220||c===232||c===244||c===263||c===264||c===265||c===266||c===267||c===268||c===272||c===273||c===278||c===279}function oQ(s){let c=s.kind;return c===170||c===173||c===175||c===178||c===179||c===232||c===264}var u$r,g$r,A$r,d$r,p$r,AWt={createBaseSourceFileNode:s=>new(p$r||(p$r=ZC.getSourceFileConstructor()))(s,-1,-1),createBaseIdentifierNode:s=>new(A$r||(A$r=ZC.getIdentifierConstructor()))(s,-1,-1),createBasePrivateIdentifierNode:s=>new(d$r||(d$r=ZC.getPrivateIdentifierConstructor()))(s,-1,-1),createBaseTokenNode:s=>new(g$r||(g$r=ZC.getTokenConstructor()))(s,-1,-1),createBaseNode:s=>new(u$r||(u$r=ZC.getNodeConstructor()))(s,-1,-1)},H3=nie(1,AWt);function Bi(s,c){return c&&s(c)}function ol(s,c,g){if(g){if(c)return c(g);for(let d of g){let h=s(d);if(h)return h}}}function F$e(s,c){return s.charCodeAt(c+1)===42&&s.charCodeAt(c+2)===42&&s.charCodeAt(c+3)!==47}function IEe(s){return F(s.statements,Q2s)||X2s(s)}function Q2s(s){return LB(s)&&J2s(s,95)||km(s)&&ZF(s.moduleReference)||Mf(s)||Cf(s)||Gh(s)?s:void 0}function X2s(s){return s.flags&8388608?f$r(s):void 0}function f$r(s){return U2s(s)?s:Lu(s,f$r)}function J2s(s,c){return jt(s.modifiers,g=>g.kind===c)}function U2s(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}var K2s={167:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},169:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.constraint)||Bi(g,c.default)||Bi(g,c.expression)},305:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.equalsToken)||Bi(g,c.objectAssignmentInitializer)},306:function(c,g,d){return Bi(g,c.expression)},170:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},173:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},172:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},304:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.initializer)},261:function(c,g,d){return Bi(g,c.name)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},209:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.propertyName)||Bi(g,c.name)||Bi(g,c.initializer)},182:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},186:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},185:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},180:I$r,181:I$r,175:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},174:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},177:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},178:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},179:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},263:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},219:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},220:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.equalsGreaterThanToken)||Bi(g,c.body)},176:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.body)},184:function(c,g,d){return Bi(g,c.typeName)||ol(g,d,c.typeArguments)},183:function(c,g,d){return Bi(g,c.assertsModifier)||Bi(g,c.parameterName)||Bi(g,c.type)},187:function(c,g,d){return Bi(g,c.exprName)||ol(g,d,c.typeArguments)},188:function(c,g,d){return ol(g,d,c.members)},189:function(c,g,d){return Bi(g,c.elementType)},190:function(c,g,d){return ol(g,d,c.elements)},193:h$r,194:h$r,195:function(c,g,d){return Bi(g,c.checkType)||Bi(g,c.extendsType)||Bi(g,c.trueType)||Bi(g,c.falseType)},196:function(c,g,d){return Bi(g,c.typeParameter)},206:function(c,g,d){return Bi(g,c.argument)||Bi(g,c.attributes)||Bi(g,c.qualifier)||ol(g,d,c.typeArguments)},303:function(c,g,d){return Bi(g,c.assertClause)},197:m$r,199:m$r,200:function(c,g,d){return Bi(g,c.objectType)||Bi(g,c.indexType)},201:function(c,g,d){return Bi(g,c.readonlyToken)||Bi(g,c.typeParameter)||Bi(g,c.nameType)||Bi(g,c.questionToken)||Bi(g,c.type)||ol(g,d,c.members)},202:function(c,g,d){return Bi(g,c.literal)},203:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)},207:C$r,208:C$r,210:function(c,g,d){return ol(g,d,c.elements)},211:function(c,g,d){return ol(g,d,c.properties)},212:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.name)},213:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.argumentExpression)},214:_$r,215:_$r,216:function(c,g,d){return Bi(g,c.tag)||Bi(g,c.questionDotToken)||ol(g,d,c.typeArguments)||Bi(g,c.template)},217:function(c,g,d){return Bi(g,c.type)||Bi(g,c.expression)},218:function(c,g,d){return Bi(g,c.expression)},221:function(c,g,d){return Bi(g,c.expression)},222:function(c,g,d){return Bi(g,c.expression)},223:function(c,g,d){return Bi(g,c.expression)},225:function(c,g,d){return Bi(g,c.operand)},230:function(c,g,d){return Bi(g,c.asteriskToken)||Bi(g,c.expression)},224:function(c,g,d){return Bi(g,c.expression)},226:function(c,g,d){return Bi(g,c.operand)},227:function(c,g,d){return Bi(g,c.left)||Bi(g,c.operatorToken)||Bi(g,c.right)},235:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},236:function(c,g,d){return Bi(g,c.expression)},239:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},237:function(c,g,d){return Bi(g,c.name)},228:function(c,g,d){return Bi(g,c.condition)||Bi(g,c.questionToken)||Bi(g,c.whenTrue)||Bi(g,c.colonToken)||Bi(g,c.whenFalse)},231:function(c,g,d){return Bi(g,c.expression)},242:y$r,269:y$r,308:function(c,g,d){return ol(g,d,c.statements)||Bi(g,c.endOfFileToken)},244:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.declarationList)},262:function(c,g,d){return ol(g,d,c.declarations)},245:function(c,g,d){return Bi(g,c.expression)},246:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.thenStatement)||Bi(g,c.elseStatement)},247:function(c,g,d){return Bi(g,c.statement)||Bi(g,c.expression)},248:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},249:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.condition)||Bi(g,c.incrementor)||Bi(g,c.statement)},250:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},251:function(c,g,d){return Bi(g,c.awaitModifier)||Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},252:b$r,253:b$r,254:function(c,g,d){return Bi(g,c.expression)},255:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},256:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.caseBlock)},270:function(c,g,d){return ol(g,d,c.clauses)},297:function(c,g,d){return Bi(g,c.expression)||ol(g,d,c.statements)},298:function(c,g,d){return ol(g,d,c.statements)},257:function(c,g,d){return Bi(g,c.label)||Bi(g,c.statement)},258:function(c,g,d){return Bi(g,c.expression)},259:function(c,g,d){return Bi(g,c.tryBlock)||Bi(g,c.catchClause)||Bi(g,c.finallyBlock)},300:function(c,g,d){return Bi(g,c.variableDeclaration)||Bi(g,c.block)},171:function(c,g,d){return Bi(g,c.expression)},264:E$r,232:E$r,265:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.heritageClauses)||ol(g,d,c.members)},266:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||Bi(g,c.type)},267:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.members)},307:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},268:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.body)},272:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.moduleReference)},273:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.importClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},274:function(c,g,d){return Bi(g,c.name)||Bi(g,c.namedBindings)},301:function(c,g,d){return ol(g,d,c.elements)},302:function(c,g,d){return Bi(g,c.name)||Bi(g,c.value)},271:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)},275:function(c,g,d){return Bi(g,c.name)},281:function(c,g,d){return Bi(g,c.name)},276:S$r,280:S$r,279:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.exportClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},277:v$r,282:v$r,278:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.expression)},229:function(c,g,d){return Bi(g,c.head)||ol(g,d,c.templateSpans)},240:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.literal)},204:function(c,g,d){return Bi(g,c.head)||ol(g,d,c.templateSpans)},205:function(c,g,d){return Bi(g,c.type)||Bi(g,c.literal)},168:function(c,g,d){return Bi(g,c.expression)},299:function(c,g,d){return ol(g,d,c.types)},234:function(c,g,d){return Bi(g,c.expression)||ol(g,d,c.typeArguments)},284:function(c,g,d){return Bi(g,c.expression)},283:function(c,g,d){return ol(g,d,c.modifiers)},357:function(c,g,d){return ol(g,d,c.elements)},285:function(c,g,d){return Bi(g,c.openingElement)||ol(g,d,c.children)||Bi(g,c.closingElement)},289:function(c,g,d){return Bi(g,c.openingFragment)||ol(g,d,c.children)||Bi(g,c.closingFragment)},286:B$r,287:B$r,293:function(c,g,d){return ol(g,d,c.properties)},292:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},294:function(c,g,d){return Bi(g,c.expression)},295:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.expression)},288:function(c,g,d){return Bi(g,c.tagName)},296:function(c,g,d){return Bi(g,c.namespace)||Bi(g,c.name)},191:dde,192:dde,310:dde,316:dde,315:dde,317:dde,319:dde,318:function(c,g,d){return ol(g,d,c.parameters)||Bi(g,c.type)},321:function(c,g,d){return(typeof c.comment=="string"?void 0:ol(g,d,c.comment))||ol(g,d,c.tags)},348:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.name)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},311:function(c,g,d){return Bi(g,c.name)},312:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},342:w$r,349:w$r,331:function(c,g,d){return Bi(g,c.tagName)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},330:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},329:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},346:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.constraint)||ol(g,d,c.typeParameters)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},347:function(c,g,d){return Bi(g,c.tagName)||(c.typeExpression&&c.typeExpression.kind===310?Bi(g,c.typeExpression)||Bi(g,c.fullName)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment)):Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment)))},339:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},343:pde,345:pde,344:pde,341:pde,351:pde,350:pde,340:pde,324:function(c,g,d){return F(c.typeParameters,g)||F(c.parameters,g)||Bi(g,c.type)},325:dWt,326:dWt,327:dWt,323:function(c,g,d){return F(c.jsDocPropertyTags,g)},328:Sie,333:Sie,334:Sie,335:Sie,336:Sie,337:Sie,332:Sie,338:Sie,352:j2s,356:z2s};function I$r(s,c,g){return ol(c,g,s.typeParameters)||ol(c,g,s.parameters)||Bi(c,s.type)}function h$r(s,c,g){return ol(c,g,s.types)}function m$r(s,c,g){return Bi(c,s.type)}function C$r(s,c,g){return ol(c,g,s.elements)}function _$r(s,c,g){return Bi(c,s.expression)||Bi(c,s.questionDotToken)||ol(c,g,s.typeArguments)||ol(c,g,s.arguments)}function y$r(s,c,g){return ol(c,g,s.statements)}function b$r(s,c,g){return Bi(c,s.label)}function E$r(s,c,g){return ol(c,g,s.modifiers)||Bi(c,s.name)||ol(c,g,s.typeParameters)||ol(c,g,s.heritageClauses)||ol(c,g,s.members)}function S$r(s,c,g){return ol(c,g,s.elements)}function v$r(s,c,g){return Bi(c,s.propertyName)||Bi(c,s.name)}function B$r(s,c,g){return Bi(c,s.tagName)||ol(c,g,s.typeArguments)||Bi(c,s.attributes)}function dde(s,c,g){return Bi(c,s.type)}function w$r(s,c,g){return Bi(c,s.tagName)||(s.isNameFirst?Bi(c,s.name)||Bi(c,s.typeExpression):Bi(c,s.typeExpression)||Bi(c,s.name))||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function pde(s,c,g){return Bi(c,s.tagName)||Bi(c,s.typeExpression)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function dWt(s,c,g){return Bi(c,s.name)}function Sie(s,c,g){return Bi(c,s.tagName)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function j2s(s,c,g){return Bi(c,s.tagName)||Bi(c,s.importClause)||Bi(c,s.moduleSpecifier)||Bi(c,s.attributes)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function z2s(s,c,g){return Bi(c,s.expression)}function Lu(s,c,g){if(s===void 0||s.kind<=166)return;let d=K2s[s.kind];return d===void 0?void 0:d(s,c,g)}function Sz(s,c,g){let d=T$r(s),h=[];for(;h.length=0;--R)d.push(_[R]),h.push(S)}else{let R=c(_,S);if(R){if(R==="skip")continue;return R}if(_.kind>=167)for(let T of T$r(_))d.push(T),h.push(_)}}}function T$r(s){let c=[];return Lu(s,g,g),c;function g(d){c.unshift(d)}}function R$r(s){s.externalModuleIndicator=IEe(s)}function vz(s,c,g,d=!1,h){var _,S;(_=ki)==null||_.push(ki.Phase.Parse,"createSourceFile",{path:s},!0),Mc("beforeParse");let R,{languageVersion:T,setExternalModuleIndicator:W,impliedNodeFormat:V,jsDocParsingMode:M}=typeof g=="object"?g:{languageVersion:g};if(T===100)R=Y3.parseSourceFile(s,c,T,void 0,d,6,Dc,M);else{let ee=V===void 0?W:re=>(re.impliedNodeFormat=V,(W||R$r)(re));R=Y3.parseSourceFile(s,c,T,void 0,d,h,ee,M)}return Mc("afterParse"),Pf("Parse","beforeParse","afterParse"),(S=ki)==null||S.pop(),R}function Bz(s,c){return Y3.parseIsolatedEntityName(s,c)}function hEe(s,c){return Y3.parseJsonText(s,c)}function xm(s){return s.externalModuleIndicator!==void 0}function Z$e(s,c,g,d=!1){let h=L$e.updateSourceFile(s,c,g,d);return h.flags|=s.flags&12582912,h}function pWt(s,c,g){let d=Y3.JSDocParser.parseIsolatedJSDocComment(s,c,g);return d&&d.jsDoc&&Y3.fixupParentReferences(d.jsDoc),d}function N$r(s,c,g){return Y3.JSDocParser.parseJSDocTypeExpressionForTests(s,c,g)}var Y3;(s=>{var c=wb(99,!0),g=40960,d,h,_,S,R;function T(rt){return Ht++,rt}var W={createBaseSourceFileNode:rt=>T(new R(rt,0,0)),createBaseIdentifierNode:rt=>T(new _(rt,0,0)),createBasePrivateIdentifierNode:rt=>T(new S(rt,0,0)),createBaseTokenNode:rt=>T(new h(rt,0,0)),createBaseNode:rt=>T(new d(rt,0,0))},V=nie(11,W),{createNodeArray:M,createNumericLiteral:ee,createStringLiteral:re,createLiteralLikeNode:ge,createIdentifier:Ie,createPrivateIdentifier:_e,createToken:Ee,createArrayLiteralExpression:Ne,createObjectLiteralExpression:Te,createPropertyAccessExpression:Ze,createPropertyAccessChain:We,createElementAccessExpression:Ue,createElementAccessChain:$e,createCallExpression:Ye,createCallChain:Tt,createNewExpression:ot,createParenthesizedExpression:Qe,createBlock:mt,createVariableStatement:ht,createExpressionStatement:_t,createIfStatement:Rt,createWhileStatement:Lt,createForStatement:Ke,createForOfStatement:Pt,createVariableDeclaration:_r,createVariableDeclarationList:Gt}=V,nt,Dt,tr,ur,Gr,dt,pr,st,ir,zt,Ht,Br,mn,jn,Zi,Ns,An=!0,si=!1;function ks(rt,Kt,xr,Tn,Ai=!1,Pi,Ba,Xo=0){var uo;if(Pi=xAe(rt,Pi),Pi===6){let Tl=su(rt,Kt,xr,Tn,Ai);return bEe(Tl,(uo=Tl.statements[0])==null?void 0:uo.expression,Tl.parseDiagnostics,!1,void 0),Tl.referencedFiles=E,Tl.typeReferenceDirectives=E,Tl.libReferenceDirectives=E,Tl.amdDependencies=E,Tl.hasNoDefaultLib=!1,Tl.pragmas=N,Tl}Zn(rt,Kt,xr,Tn,Pi,Xo);let Cc=Gl(xr,Ai,Pi,Ba||R$r,Xo);return ya(),Cc}s.parseSourceFile=ks;function Ic(rt,Kt){Zn("",rt,Kt,void 0,1,0),Ot();let xr=en(!0),Tn=Je()===1&&!pr.length;return ya(),Tn?xr:void 0}s.parseIsolatedEntityName=Ic;function su(rt,Kt,xr=2,Tn,Ai=!1){Zn(rt,Kt,xr,Tn,6,0),Dt=Ns,Ot();let Pi=xe(),Ba,Xo;if(Je()===1)Ba=TA([],Pi,Pi),Xo=sh();else{let Tl;for(;Je()!==1;){let zA;switch(Je()){case 23:zA=nW();break;case 112:case 97:case 106:zA=sh();break;case 41:Vn(()=>Ot()===9&&Ot()!==59)?zA=g9():zA=p9();break;case 9:case 11:if(Vn(()=>Ot()!==59)){zA=Ln();break}default:zA=p9();break}Tl&&Ki(Tl)?Tl.push(zA):Tl?Tl=[Tl,zA]:(Tl=zA,Je()!==1&&bn(Z.Unexpected_token))}let bp=Ki(Tl)?oi(Ne(Tl),Pi):pe.checkDefined(Tl),ep=_t(bp);oi(ep,Pi),Ba=TA([ep],Pi),Xo=jp(1,Z.Unexpected_token)}let uo=hn(rt,2,6,!1,Ba,Xo,Dt,Dc);Ai&&yr(uo),uo.nodeCount=Ht,uo.identifierCount=mn,uo.identifiers=Br,uo.parseDiagnostics=XL(pr,uo),st&&(uo.jsDocDiagnostics=XL(st,uo));let Cc=uo;return ya(),Cc}s.parseJsonText=su;function Zn(rt,Kt,xr,Tn,Ai,Pi){switch(d=ZC.getNodeConstructor(),h=ZC.getTokenConstructor(),_=ZC.getIdentifierConstructor(),S=ZC.getPrivateIdentifierConstructor(),R=ZC.getSourceFileConstructor(),nt=iu(rt),tr=Kt,ur=xr,ir=Tn,Gr=Ai,dt=Zne(Ai),pr=[],jn=0,Br=new Map,mn=0,Ht=0,Dt=0,An=!0,Gr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}si=!1,c.setText(tr),c.setOnError(Bt),c.setScriptTarget(ur),c.setLanguageVariant(dt),c.setScriptKind(Gr),c.setJSDocParsingMode(Pi)}function ya(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),tr=void 0,ur=void 0,ir=void 0,Gr=void 0,dt=void 0,Dt=0,pr=void 0,st=void 0,jn=0,Br=void 0,Zi=void 0,An=!0}function Gl(rt,Kt,xr,Tn,Ai){let Pi=PC(nt);Pi&&(Ns|=33554432),Dt=Ns,Ot();let Ba=uA(0,BE);pe.assert(Je()===1);let Xo=fr(),uo=Wo(sh(),Xo),Cc=hn(nt,rt,xr,Pi,Ba,uo,Dt,Tn);return V$e(Cc,tr),P$e(Cc,Tl),Cc.commentDirectives=c.getCommentDirectives(),Cc.nodeCount=Ht,Cc.identifierCount=mn,Cc.identifiers=Br,Cc.parseDiagnostics=XL(pr,Cc),Cc.jsDocParsingMode=Ai,st&&(Cc.jsDocDiagnostics=XL(st,Cc)),Kt&&yr(Cc),Cc;function Tl(bp,ep,zA){pr.push(QY(nt,tr,bp,ep,zA))}}let ba=!1;function Wo(rt,Kt){if(!Kt)return rt;pe.assert(!rt.jsDoc);let xr=Xt(dye(rt,tr),Tn=>VN.parseJSDocComment(rt,Tn.pos,Tn.end-Tn.pos));return xr.length&&(rt.jsDoc=xr),ba&&(ba=!1,rt.flags|=536870912),rt}function hc(rt){let Kt=ir,xr=L$e.createSyntaxCursor(rt);ir={currentNode:Tl};let Tn=[],Ai=pr;pr=[];let Pi=0,Ba=uo(rt.statements,0);for(;Ba!==-1;){let bp=rt.statements[Pi],ep=rt.statements[Ba];Or(Tn,rt.statements,Pi,Ba),Pi=Cc(rt.statements,Ba);let zA=Se(Ai,CS=>CS.start>=bp.pos),Bv=zA>=0?Se(Ai,CS=>CS.start>=ep.pos,zA):-1;zA>=0&&Or(pr,Ai,zA,Bv>=0?Bv:void 0),Wi(()=>{let CS=Ns;for(Ns|=65536,c.resetTokenState(ep.pos),Ot();Je()!==1;){let C9=c.getTokenFullStart(),_9=hm(0,BE);if(Tn.push(_9),C9===c.getTokenFullStart()&&Ot(),Pi>=0){let Kx=rt.statements[Pi];if(_9.end===Kx.pos)break;_9.end>Kx.pos&&(Pi=Cc(rt.statements,Pi+1))}}Ns=CS},2),Ba=Pi>=0?uo(rt.statements,Pi):-1}if(Pi>=0){let bp=rt.statements[Pi];Or(Tn,rt.statements,Pi);let ep=Se(Ai,zA=>zA.start>=bp.pos);ep>=0&&Or(pr,Ai,ep)}return ir=Kt,V.updateSourceFile(rt,gn(M(Tn),rt.statements));function Xo(bp){return!(bp.flags&65536)&&!!(bp.transformFlags&67108864)}function uo(bp,ep){for(let zA=ep;zA118}function fs(){return Je()===80?!0:Je()===127&&hr()||Je()===135&&nn()?!1:Je()>118}function bi(rt,Kt,xr=!0){return Je()===rt?(xr&&Ot(),!0):(Kt?bn(Kt):bn(Z._0_expected,Vi(rt)),!1)}let mc=Object.keys(ev).filter(rt=>rt.length>2);function gg(rt){if(MI(rt)){Mt(Yu(tr,rt.template.pos),rt.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Kt=Ir(rt)?Vo(rt):void 0;if(!Kt||!Uh(Kt,ur)){bn(Z._0_expected,Vi(27));return}let xr=Yu(tr,rt.pos);switch(Kt){case"const":case"let":case"var":Mt(xr,rt.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Ag(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Mt(xr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Ag(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":Ag(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let Tn=Dr(Kt,mc,Fl)??_u(Kt);if(Tn){Mt(xr,rt.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,Tn);return}Je()!==0&&Mt(xr,rt.end,Z.Unexpected_keyword_or_identifier)}function Ag(rt,Kt,xr){Je()===xr?bn(Kt):bn(rt,c.getTokenValue())}function _u(rt){for(let Kt of mc)if(rt.length>Kt.length+2&&Ac(rt,Kt))return`${Kt} ${rt.slice(Kt.length)}`}function wI(rt,Kt,xr){if(Je()===60&&!c.hasPrecedingLineBreak()){bn(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Je()===21){bn(Z.Cannot_start_a_function_call_in_a_type_annotation),Ot();return}if(Kt&&!gu()){xr?bn(Z._0_expected,Vi(27)):bn(Z.Expected_for_property_initializer);return}if(!bg()){if(xr){bn(Z._0_expected,Vi(27));return}gg(rt)}}function AI(rt){return Je()===rt?($r(),!0):(pe.assert(eAe(rt)),bn(Z._0_expected,Vi(rt)),!1)}function pp(rt,Kt,xr,Tn){if(Je()===Kt){Ot();return}let Ai=bn(Z._0_expected,Vi(Kt));xr&&Ai&&lg(Ai,QY(nt,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Vi(rt),Vi(Kt)))}function Dl(rt){return Je()===rt?(Ot(),!0):!1}function yu(rt){if(Je()===rt)return sh()}function tm(rt){if(Je()===rt)return dS()}function jp(rt,Kt,xr){return yu(rt)||$d(rt,!1,Kt||Z._0_expected,xr||Vi(rt))}function Xg(rt){let Kt=tm(rt);return Kt||(pe.assert(eAe(rt)),$d(rt,!1,Z._0_expected,Vi(rt)))}function sh(){let rt=xe(),Kt=Je();return Ot(),oi(Ee(Kt),rt)}function dS(){let rt=xe(),Kt=Je();return $r(),oi(Ee(Kt),rt)}function gu(){return Je()===27?!0:Je()===20||Je()===1||c.hasPrecedingLineBreak()}function bg(){return gu()?(Je()===27&&Ot(),!0):!1}function KA(){return bg()||bi(27)}function TA(rt,Kt,xr,Tn){let Ai=M(rt,Tn);return TB(Ai,Kt,xr??c.getTokenFullStart()),Ai}function oi(rt,Kt,xr){return TB(rt,Kt,xr??c.getTokenFullStart()),Ns&&(rt.flags|=Ns),si&&(si=!1,rt.flags|=262144),rt}function $d(rt,Kt,xr,...Tn){Kt?ds(c.getTokenFullStart(),0,xr,...Tn):xr&&bn(xr,...Tn);let Ai=xe(),Pi=rt===80?Ie("",void 0):LD(rt)?V.createTemplateLiteralLikeNode(rt,"","",void 0):rt===9?ee("",void 0):rt===11?re("",void 0):rt===283?V.createMissingDeclaration():Ee(rt);return oi(Pi,Ai)}function YI(rt){let Kt=Br.get(rt);return Kt===void 0&&Br.set(rt,Kt=rt),Kt}function Fh(rt,Kt,xr){if(rt){mn++;let Xo=c.hasPrecedingJSDocLeadingAsterisks()?c.getTokenStart():xe(),uo=Je(),Cc=YI(c.getTokenValue()),Tl=c.hasExtendedUnicodeEscape();return In(),oi(Ie(Cc,uo,Tl),Xo)}if(Je()===81)return bn(xr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),Fh(!0);if(Je()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return Fh(!0);mn++;let Tn=Je()===1,Ai=c.isReservedWord(),Pi=c.getTokenText(),Ba=Ai?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return $d(80,Tn,Kt||Ba,Pi)}function WC(rt){return Fh(gs(),void 0,rt)}function _f(rt,Kt){return Fh(fs(),rt,Kt)}function QI(rt){return Fh(Id(Je()),rt)}function ve(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&bn(Z.Unicode_escape_sequence_cannot_appear_here),Fh(Id(Je()))}function mr(){return Id(Je())||Je()===11||Je()===9||Je()===10}function ln(){return Id(Je())||Je()===11}function ni(rt){if(Je()===11||Je()===9||Je()===10){let Kt=Ln();return Kt.text=YI(Kt.text),Kt}return rt&&Je()===23?Za():Je()===81?Go():QI()}function Ls(){return ni(!0)}function Za(){let rt=xe();bi(23);let Kt=Cs(Ay);return bi(24),oi(V.createComputedPropertyName(Kt),rt)}function Go(){let rt=xe(),Kt=_e(YI(c.getTokenValue()));return Ot(),oi(Kt,rt)}function Ss(rt){return Je()===rt&&Ui(rl)}function Uc(){return Ot(),c.hasPrecedingLineBreak()?!1:rm()}function rl(){switch(Je()){case 87:return Ot()===94;case 95:return Ot(),Je()===90?Vn(Gp):Je()===156?Vn(Lg):xd();case 90:return Gp();case 126:return Ot(),rm();case 139:case 153:return Ot(),_h();default:return Uc()}}function xd(){return Je()===60||Je()!==42&&Je()!==130&&Je()!==19&&rm()}function Lg(){return Ot(),xd()}function yf(){return VD(Je())&&Ui(rl)}function rm(){return Je()===23||Je()===19||Je()===42||Je()===26||mr()}function _h(){return Je()===23||mr()}function Gp(){return Ot(),Je()===86||Je()===100||Je()===120||Je()===60||Je()===128&&Vn(Hb)||Je()===134&&Vn(vv)}function oh(rt,Kt){if(af(rt))return!0;switch(rt){case 0:case 1:case 3:return!(Je()===27&&Kt)&&f9();case 2:return Je()===84||Je()===90;case 4:return Vn(MB);case 5:return Vn(aK)||Je()===27&&!Kt;case 6:return Je()===23||mr();case 12:switch(Je()){case 23:case 42:case 26:case 25:return!0;default:return mr()}case 18:return mr();case 9:return Je()===23||Je()===26||mr();case 24:return ln();case 7:return Je()===19?Vn(b1):Kt?fs()&&!or():Ob()&&!or();case 8:return fq();case 10:return Je()===28||Je()===26||fq();case 19:return Je()===103||Je()===87||fs();case 15:switch(Je()){case 28:case 25:return!0}case 11:return Je()===26||u0();case 16:return sn(!1);case 17:return sn(!0);case 20:case 21:return Je()===28||KP();case 22:return cK();case 23:return Je()===161&&Vn(Ux)?!1:Je()===11?!0:Id(Je());case 13:return Id(Je())||Je()===19;case 14:return!0;case 25:return!0;case 26:return pe.fail("ParsingContext.Count used as a context");default:pe.assertNever(rt,"Non-exhaustive case in 'isListElement'.")}}function b1(){if(pe.assert(Je()===19),Ot()===20){let rt=Ot();return rt===28||rt===19||rt===96||rt===119}return!0}function Z_(){return Ot(),fs()}function m2(){return Ot(),Id(Je())}function Vb(){return Ot(),fB(Je())}function or(){return Je()===119||Je()===96?Vn(qn):!1}function qn(){return Ot(),u0()}function Js(){return Ot(),KP()}function Hl(rt){if(Je()===1)return!0;switch(rt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Je()===20;case 3:return Je()===20||Je()===84||Je()===90;case 7:return Je()===19||Je()===96||Je()===119;case 8:return RA();case 19:return Je()===32||Je()===21||Je()===19||Je()===96||Je()===119;case 11:return Je()===22||Je()===27;case 15:case 21:case 10:return Je()===24;case 17:case 16:case 18:return Je()===22||Je()===24;case 20:return Je()!==28;case 22:return Je()===19||Je()===20;case 13:return Je()===32||Je()===44;case 14:return Je()===30&&Vn(uWe);default:return!1}}function RA(){return!!(gu()||dy(Je())||Je()===39)}function NA(){pe.assert(jn,"Missing parsing context");for(let rt=0;rt<26;rt++)if(jn&1<=0)}function oR(rt){return rt===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function pS(){let rt=TA([],xe());return rt.isMissingList=!0,rt}function xN(rt){return!!rt.isMissingList}function at(rt,Kt,xr,Tn){if(bi(xr)){let Ai=qm(rt,Kt);return bi(Tn),Ai}return pS()}function en(rt,Kt){let xr=xe(),Tn=rt?QI(Kt):_f(Kt);for(;Dl(25)&&Je()!==30;)Tn=oi(V.createQualifiedName(Tn,_i(rt,!1,!0)),xr);return Tn}function gi(rt,Kt){return oi(V.createQualifiedName(rt,Kt),rt.pos)}function _i(rt,Kt,xr){if(c.hasPrecedingLineBreak()&&Id(Je())&&Vn(lq))return $d(80,!0,Z.Identifier_expected);if(Je()===81){let Tn=Go();return Kt?Tn:$d(80,!0,Z.Identifier_expected)}return rt?xr?QI():ve():_f()}function ys(rt){let Kt=xe(),xr=[],Tn;do Tn=gr(rt),xr.push(Tn);while(Tn.literal.kind===17);return TA(xr,Kt)}function $s(rt){let Kt=xe();return oi(V.createTemplateExpression(bs(rt),ys(rt)),Kt)}function wa(){let rt=xe();return oi(V.createTemplateLiteralType(bs(!1),pc()),rt)}function pc(){let rt=xe(),Kt=[],xr;do xr=ul(),Kt.push(xr);while(xr.literal.kind===17);return TA(Kt,rt)}function ul(){let rt=xe();return oi(V.createTemplateLiteralTypeSpan(bf(),Fe(!1)),rt)}function Fe(rt){return Je()===20?(Ys(rt),Xl()):jp(18,Z._0_expected,Vi(20))}function gr(rt){let Kt=xe();return oi(V.createTemplateSpan(Cs(Ay),Fe(rt)),Kt)}function Ln(){return jl(Je())}function bs(rt){!rt&&c.getTokenFlags()&26656&&Ys(!1);let Kt=jl(Je());return pe.assert(Kt.kind===16,"Template head has wrong token kind"),Kt}function Xl(){let rt=jl(Je());return pe.assert(rt.kind===17||rt.kind===18,"Template fragment has wrong token kind"),rt}function eg(rt){let Kt=rt===15||rt===18,xr=c.getTokenText();return xr.substring(1,xr.length-(c.isUnterminated()?0:Kt?1:2))}function jl(rt){let Kt=xe(),xr=LD(rt)?V.createTemplateLiteralLikeNode(rt,c.getTokenValue(),eg(rt),c.getTokenFlags()&7176):rt===9?ee(c.getTokenValue(),c.getNumericLiteralFlags()):rt===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):pY(rt)?ge(rt,c.getTokenValue()):pe.fail();return c.hasExtendedUnicodeEscape()&&(xr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(xr.isUnterminated=!0),Ot(),oi(xr,Kt)}function Eu(){return en(!0,Z.Type_expected)}function Df(){if(!c.hasPrecedingLineBreak()&&tn()===30)return at(20,bf,30,32)}function Jg(){let rt=xe();return oi(V.createTypeReferenceNode(Eu(),Df()),rt)}function MC(rt){switch(rt.kind){case 184:return sf(rt.typeName);case 185:case 186:{let{parameters:Kt,type:xr}=rt;return xN(Kt)||MC(xr)}case 197:return MC(rt.type);default:return!1}}function S1(rt){return Ot(),oi(V.createTypePredicateNode(void 0,rt,bf()),rt.pos)}function fS(){let rt=xe();return Ot(),oi(V.createThisTypeNode(),rt)}function bv(){let rt=xe();return Ot(),oi(V.createJSDocAllType(),rt)}function XF(){let rt=xe();return Ot(),oi(V.createJSDocNonNullableType(EQ(),!1),rt)}function o9(){let rt=xe();return Ot(),Je()===28||Je()===20||Je()===22||Je()===32||Je()===64||Je()===52?oi(V.createJSDocUnknownType(),rt):oi(V.createJSDocNullableType(bf(),!1),rt)}function My(){let rt=xe(),Kt=fr();if(Ui(mq)){let xr=$a(36),Tn=co(59,!1);return Wo(oi(V.createJSDocFunctionType(xr,Tn),rt),Kt)}return oi(V.createTypeReferenceNode(QI(),void 0),rt)}function sk(){let rt=xe(),Kt;return(Je()===110||Je()===105)&&(Kt=QI(),bi(59)),oi(V.createParameterDeclaration(void 0,void 0,Kt,void 0,aR(),void 0),rt)}function aR(){c.setSkipJsDocLeadingAsterisks(!0);let rt=xe();if(Dl(144)){let Tn=V.createJSDocNamepathType(void 0);e:for(;;)switch(Je()){case 20:case 1:case 28:case 5:break e;default:$r()}return c.setSkipJsDocLeadingAsterisks(!1),oi(Tn,rt)}let Kt=Dl(26),xr=jF();return c.setSkipJsDocLeadingAsterisks(!1),Kt&&(xr=oi(V.createJSDocVariadicType(xr),rt)),Je()===64?(Ot(),oi(V.createJSDocOptionalType(xr),rt)):xr}function WB(){let rt=xe();bi(114);let Kt=en(!0),xr=c.hasPrecedingLineBreak()?void 0:Hf();return oi(V.createTypeQueryNode(Kt,xr),rt)}function UP(){let rt=xe(),Kt=Oc(!1,!0),xr=_f(),Tn,Ai;Dl(96)&&(KP()||!u0()?Tn=bf():Ai=f5());let Pi=Dl(64)?bf():void 0,Ba=V.createTypeParameterDeclaration(Kt,xr,Tn,Pi);return Ba.expression=Ai,oi(Ba,rt)}function br(){if(Je()===30)return at(19,UP,30,32)}function sn(rt){return Je()===26||fq()||VD(Je())||Je()===60||KP(!rt)}function ei(rt){let Kt=I9(Z.Private_identifiers_cannot_be_used_as_parameters);return DJ(Kt)===0&&!jt(rt)&&VD(Je())&&Ot(),Kt}function is(){return gs()||Je()===23||Je()===19}function Qs(rt){return Os(rt)}function Oo(rt){return Os(rt,!1)}function Os(rt,Kt=!0){let xr=xe(),Tn=fr(),Ai=rt?it(()=>Oc(!0)):nr(()=>Oc(!0));if(Je()===110){let uo=V.createParameterDeclaration(Ai,void 0,Fh(!0),void 0,l0(),void 0),Cc=Nc(Ai);return Cc&&cn(Cc,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Wo(oi(uo,xr),Tn)}let Pi=An;An=!1;let Ba=yu(26);if(!Kt&&!is())return;let Xo=Wo(oi(V.createParameterDeclaration(Ai,Ba,ei(Ai),yu(58),l0(),lk()),xr),Tn);return An=Pi,Xo}function co(rt,Kt){if(Yc(rt,Kt))return Pr(jF)}function Yc(rt,Kt){return rt===39?(bi(rt),!0):Dl(59)?!0:Kt&&Je()===39?(bn(Z._0_expected,Vi(59)),Ot(),!0):!1}function tu(rt,Kt){let xr=hr(),Tn=nn();pa(!!(rt&1)),tl(!!(rt&2));let Ai=rt&32?qm(17,sk):qm(16,()=>Kt?Qs(Tn):Oo(Tn));return pa(xr),tl(Tn),Ai}function $a(rt){if(!bi(21))return pS();let Kt=tu(rt,!0);return bi(22),Kt}function ru(){Dl(28)||KA()}function gl(rt){let Kt=xe(),xr=fr();rt===181&&bi(105);let Tn=br(),Ai=$a(4),Pi=co(59,!0);ru();let Ba=rt===180?V.createCallSignature(Tn,Ai,Pi):V.createConstructSignature(Tn,Ai,Pi);return Wo(oi(Ba,Kt),xr)}function kf(){return Je()===23&&Vn(Wb)}function Wb(){if(Ot(),Je()===26||Je()===24)return!0;if(VD(Je())){if(Ot(),fs())return!0}else if(fs())Ot();else return!1;return Je()===59||Je()===28?!0:Je()!==58?!1:(Ot(),Je()===59||Je()===28||Je()===24)}function OB(rt,Kt,xr){let Tn=at(16,()=>Qs(!1),23,24),Ai=l0();ru();let Pi=V.createIndexSignature(xr,Tn,Ai);return Wo(oi(Pi,rt),Kt)}function p_(rt,Kt,xr){let Tn=Ls(),Ai=yu(58),Pi;if(Je()===21||Je()===30){let Ba=br(),Xo=$a(4),uo=co(59,!0);Pi=V.createMethodSignature(xr,Tn,Ai,Ba,Xo,uo)}else{let Ba=l0();Pi=V.createPropertySignature(xr,Tn,Ai,Ba),Je()===64&&(Pi.initializer=lk())}return ru(),Wo(oi(Pi,rt),Kt)}function MB(){if(Je()===21||Je()===30||Je()===139||Je()===153)return!0;let rt=!1;for(;VD(Je());)rt=!0,Ot();return Je()===23?!0:(mr()&&(rt=!0,Ot()),rt?Je()===21||Je()===30||Je()===58||Je()===59||Je()===28||gu():!1)}function v1(){if(Je()===21||Je()===30)return gl(180);if(Je()===105&&Vn(s5))return gl(181);let rt=xe(),Kt=fr(),xr=Oc(!1);return Ss(139)?v5(rt,Kt,xr,178,4):Ss(153)?v5(rt,Kt,xr,179,4):kf()?OB(rt,Kt,xr):p_(rt,Kt,xr)}function s5(){return Ot(),Je()===21||Je()===30}function GN(){return Ot()===25}function ok(){switch(Ot()){case 21:case 30:case 25:return!0}return!1}function o5(){let rt=xe();return oi(V.createTypeLiteralNode(ak()),rt)}function ak(){let rt;return bi(19)?(rt=uA(4,v1),bi(20)):rt=pS(),rt}function gse(){return Ot(),Je()===40||Je()===41?Ot()===148:(Je()===148&&Ot(),Je()===23&&Z_()&&Ot()===103)}function hpe(){let rt=xe(),Kt=QI();bi(103);let xr=bf();return oi(V.createTypeParameterDeclaration(void 0,Kt,xr,void 0),rt)}function Ase(){let rt=xe();bi(19);let Kt;(Je()===148||Je()===40||Je()===41)&&(Kt=sh(),Kt.kind!==148&&bi(148)),bi(23);let xr=hpe(),Tn=Dl(130)?bf():void 0;bi(24);let Ai;(Je()===58||Je()===40||Je()===41)&&(Ai=sh(),Ai.kind!==58&&bi(58));let Pi=l0();KA();let Ba=uA(4,v1);return bi(20),oi(V.createMappedTypeNode(Kt,xr,Tn,Ai,Pi,Ba),rt)}function Mx(){let rt=xe();if(Dl(26))return oi(V.createRestTypeNode(bf()),rt);let Kt=bf();if(Iie(Kt)&&Kt.pos===Kt.type.pos){let xr=V.createOptionalTypeNode(Kt.type);return gn(xr,Kt),xr.flags=Kt.flags,xr}return Kt}function a5(){return Ot()===59||Je()===58&&Ot()===59}function WU(){return Je()===26?Id(Ot())&&a5():Id(Je())&&a5()}function a9(){if(Vn(WU)){let rt=xe(),Kt=fr(),xr=yu(26),Tn=QI(),Ai=yu(58);bi(59);let Pi=Mx(),Ba=V.createNamedTupleMember(xr,Tn,Ai,Pi);return Wo(oi(Ba,rt),Kt)}return Mx()}function OU(){let rt=xe();return oi(V.createTupleTypeNode(at(21,a9,23,24)),rt)}function qz(){let rt=xe();bi(21);let Kt=bf();return bi(22),oi(V.createParenthesizedType(Kt),rt)}function mpe(){let rt;if(Je()===128){let Kt=xe();Ot();let xr=oi(Ee(128),Kt);rt=TA([xr],Kt)}return rt}function MU(){let rt=xe(),Kt=fr(),xr=mpe(),Tn=Dl(105);pe.assert(!xr||Tn,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Ai=br(),Pi=$a(4),Ba=co(39,!1),Xo=Tn?V.createConstructorTypeNode(xr,Ai,Pi,Ba):V.createFunctionTypeNode(Ai,Pi,Ba);return Wo(oi(Xo,rt),Kt)}function $z(){let rt=sh();return Je()===25?void 0:rt}function c5(rt){let Kt=xe();rt&&Ot();let xr=Je()===112||Je()===97||Je()===106?sh():jl(Je());return rt&&(xr=oi(V.createPrefixUnaryExpression(41,xr),Kt)),oi(V.createLiteralTypeNode(xr),Kt)}function dse(){return Ot(),Je()===102}function HU(){Dt|=4194304;let rt=xe(),Kt=Dl(114);bi(102),bi(21);let xr=bf(),Tn;if(Dl(28)){let Ba=c.getTokenStart();bi(19);let Xo=Je();if(Xo===118||Xo===132?Ot():bn(Z._0_expected,Vi(118)),bi(59),Tn=lW(Xo,!0),Dl(28),!bi(20)){let uo=li(pr);uo&&uo.code===Z._0_expected.code&&lg(uo,QY(nt,tr,Ba,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}bi(22);let Ai=Dl(25)?Eu():void 0,Pi=Df();return oi(V.createImportTypeNode(xr,Tn,Ai,Pi,Kt),rt)}function eq(){return Ot(),Je()===9||Je()===10}function EQ(){switch(Je()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ui($z)||Jg();case 67:c.reScanAsteriskEqualsToken();case 42:return bv();case 61:c.reScanQuestionToken();case 58:return o9();case 100:return My();case 54:return XF();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return c5();case 41:return Vn(eq)?c5(!0):Jg();case 116:return sh();case 110:{let rt=fS();return Je()===142&&!c.hasPrecedingLineBreak()?S1(rt):rt}case 114:return Vn(dse)?HU():WB();case 19:return Vn(gse)?Ase():o5();case 23:return OU();case 21:return qz();case 102:return HU();case 131:return Vn(lq)?ck():Jg();case 16:return wa();default:return Jg()}}function KP(rt){switch(Je()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!rt;case 41:return!rt&&Vn(eq);case 21:return!rt&&Vn(tq);default:return fs()}}function tq(){return Ot(),Je()===22||sn(!1)||KP()}function rq(){let rt=xe(),Kt=EQ();for(;!c.hasPrecedingLineBreak();)switch(Je()){case 54:Ot(),Kt=oi(V.createJSDocNonNullableType(Kt,!0),rt);break;case 58:if(Vn(Js))return Kt;Ot(),Kt=oi(V.createJSDocNullableType(Kt,!0),rt);break;case 23:if(bi(23),KP()){let xr=bf();bi(24),Kt=oi(V.createIndexedAccessTypeNode(Kt,xr),rt)}else bi(24),Kt=oi(V.createArrayTypeNode(Kt),rt);break;default:return Kt}return Kt}function SQ(rt){let Kt=xe();return bi(rt),oi(V.createTypeOperatorNode(rt,UF()),Kt)}function jP(){if(Dl(96)){let rt=Pn(bf);if(Ni()||Je()!==58)return rt}}function c9(){let rt=xe(),Kt=_f(),xr=Ui(jP),Tn=V.createTypeParameterDeclaration(void 0,Kt,xr);return oi(Tn,rt)}function JF(){let rt=xe();return bi(140),oi(V.createInferTypeNode(c9()),rt)}function UF(){let rt=Je();switch(rt){case 143:case 158:case 148:return SQ(rt);case 140:return JF()}return Pr(rq)}function KF(rt){if(PA()){let Kt=MU(),xr;return x_(Kt)?xr=rt?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:xr=rt?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,cn(Kt,xr),Kt}}function zP(rt,Kt,xr){let Tn=xe(),Ai=rt===52,Pi=Dl(rt),Ba=Pi&&KF(Ai)||Kt();if(Je()===rt||Pi){let Xo=[Ba];for(;Dl(rt);)Xo.push(KF(Ai)||Kt());Ba=oi(xr(TA(Xo,Tn)),Tn)}return Ba}function l5(){return zP(51,UF,V.createIntersectionTypeNode)}function YU(){return zP(52,l5,V.createUnionTypeNode)}function u5(){return Ot(),Je()===105}function PA(){return Je()===30||Je()===21&&Vn(pse)?!0:Je()===105||Je()===128&&Vn(u5)}function QU(){if(VD(Je())&&Oc(!1),fs()||Je()===110)return Ot(),!0;if(Je()===23||Je()===19){let rt=pr.length;return I9(),rt===pr.length}return!1}function pse(){return Ot(),!!(Je()===22||Je()===26||QU()&&(Je()===59||Je()===28||Je()===58||Je()===64||Je()===22&&(Ot(),Je()===39)))}function jF(){let rt=xe(),Kt=fs()&&Ui(zF),xr=bf();return Kt?oi(V.createTypePredicateNode(void 0,Kt,xr),rt):xr}function zF(){let rt=_f();if(Je()===142&&!c.hasPrecedingLineBreak())return Ot(),rt}function ck(){let rt=xe(),Kt=jp(131),xr=Je()===110?fS():_f(),Tn=Dl(142)?bf():void 0;return oi(V.createTypePredicateNode(Kt,xr,Tn),rt)}function bf(){if(Ns&81920)return Qu(81920,bf);if(PA())return MU();let rt=xe(),Kt=YU();if(!Ni()&&!c.hasPrecedingLineBreak()&&Dl(96)){let xr=Pn(bf);bi(58);let Tn=Pr(bf);bi(59);let Ai=Pr(bf);return oi(V.createConditionalTypeNode(Kt,xr,Tn,Ai),rt)}return Kt}function l0(){return Dl(59)?bf():void 0}function Ob(){switch(Je()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return Vn(ok);default:return fs()}}function u0(){if(Ob())return!0;switch(Je()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return YB()?!0:fs()}}function g5(){return Je()!==19&&Je()!==100&&Je()!==86&&Je()!==60&&u0()}function Ay(){let rt=Gi();rt&&Oa(!1);let Kt=xe(),xr=Hy(!0),Tn;for(;Tn=yu(28);)xr=gA(xr,Tn,Hy(!0),Kt);return rt&&Oa(!0),xr}function lk(){return Dl(64)?Hy(!0):void 0}function Hy(rt){if(HB())return A5();let Kt=Cpe(rt)||Sr(rt);if(Kt)return Kt;let xr=xe(),Tn=fr(),Ai=qP(0);return Ai.kind===80&&Je()===39?d5(xr,Ai,rt,Tn,void 0):D_(Ai)&&UD(ao())?gA(Ai,sh(),Hy(rt),xr):u9(Ai,xr,rt)}function HB(){return Je()===127?hr()?!0:Vn(NQ):!1}function Mw(){return Ot(),!c.hasPrecedingLineBreak()&&fs()}function A5(){let rt=xe();return Ot(),!c.hasPrecedingLineBreak()&&(Je()===42||u0())?oi(V.createYieldExpression(yu(42),Hy(!0)),rt):oi(V.createYieldExpression(void 0,void 0),rt)}function d5(rt,Kt,xr,Tn,Ai){pe.assert(Je()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Pi=V.createParameterDeclaration(void 0,void 0,Kt,void 0,void 0,void 0);oi(Pi,Kt.pos);let Ba=TA([Pi],Pi.pos,Pi.end),Xo=jp(39),uo=Hw(!!Ai,xr),Cc=V.createArrowFunction(Ai,void 0,Ba,void 0,Xo,uo);return Wo(oi(Cc,rt),Tn)}function Cpe(rt){let Kt=fse();if(Kt!==0)return Kt===1?Hx(!0,!0):Ui(()=>vQ(rt))}function fse(){return Je()===21||Je()===30||Je()===134?Vn(l9):Je()===39?1:0}function l9(){if(Je()===134&&(Ot(),c.hasPrecedingLineBreak()||Je()!==21&&Je()!==30))return 0;let rt=Je(),Kt=Ot();if(rt===21){if(Kt===22)switch(Ot()){case 39:case 59:case 19:return 1;default:return 0}if(Kt===23||Kt===19)return 2;if(Kt===26)return 1;if(VD(Kt)&&Kt!==134&&Vn(Z_))return Ot()===130?0:1;if(!fs()&&Kt!==110)return 0;switch(Ot()){case 59:return 1;case 58:return Ot(),Je()===59||Je()===28||Je()===64||Je()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return pe.assert(rt===30),!fs()&&Je()!==87?0:dt===1?Vn(()=>{Dl(87);let Tn=Ot();if(Tn===96)switch(Ot()){case 64:case 32:case 44:return!1;default:return!0}else if(Tn===28||Tn===64)return!0;return!1})?1:0:2}function vQ(rt){let Kt=c.getTokenStart();if(Zi?.has(Kt))return;let xr=Hx(!1,rt);return xr||(Zi||(Zi=new Set)).add(Kt),xr}function Sr(rt){if(Je()===134&&Vn(XU)===1){let Kt=xe(),xr=fr(),Tn=zl(),Ai=qP(0);return d5(Kt,Ai,rt,xr,Tn)}}function XU(){if(Je()===134){if(Ot(),c.hasPrecedingLineBreak()||Je()===39)return 0;let rt=qP(0);if(!c.hasPrecedingLineBreak()&&rt.kind===80&&Je()===39)return 1}return 0}function Hx(rt,Kt){let xr=xe(),Tn=fr(),Ai=zl(),Pi=jt(Ai,G)?2:0,Ba=br(),Xo;if(bi(21)){if(rt)Xo=tu(Pi,rt);else{let C9=tu(Pi,rt);if(!C9)return;Xo=C9}if(!bi(22)&&!rt)return}else{if(!rt)return;Xo=pS()}let uo=Je()===59,Cc=co(59,!1);if(Cc&&!rt&&MC(Cc))return;let Tl=Cc;for(;Tl?.kind===197;)Tl=Tl.type;let bp=Tl&&hie(Tl);if(!rt&&Je()!==39&&(bp||Je()!==19))return;let ep=Je(),zA=jp(39),Bv=ep===39||ep===19?Hw(jt(Ai,G),Kt):_f();if(!Kt&&uo&&Je()!==59)return;let CS=V.createArrowFunction(Ai,Ba,Xo,Cc,zA,Bv);return Wo(oi(CS,xr),Tn)}function Hw(rt,Kt){if(Je()===19)return sW(rt?2:0);if(Je()!==27&&Je()!==100&&Je()!==86&&f9()&&!g5())return sW(16|(rt?2:0));let xr=hr();pa(!1);let Tn=An;An=!1;let Ai=rt?it(()=>Hy(Kt)):nr(()=>Hy(Kt));return An=Tn,pa(xr),Ai}function u9(rt,Kt,xr){let Tn=yu(58);if(!Tn)return rt;let Ai;return oi(V.createConditionalExpression(rt,Tn,Qu(g,()=>Hy(!1)),Ai=jp(59),u1(Ai)?Hy(xr):$d(80,!1,Z._0_expected,Vi(59))),Kt)}function qP(rt){let Kt=xe(),xr=f5();return cR(rt,xr,Kt)}function dy(rt){return rt===103||rt===165}function cR(rt,Kt,xr){for(;;){ao();let Tn=bne(Je());if(!(Je()===43?Tn>=rt:Tn>rt)||Je()===103&&En())break;if(Je()===130||Je()===152){if(c.hasPrecedingLineBreak())break;{let Pi=Je();Ot(),Kt=Pi===152?p5(Kt,bf()):IS(Kt,bf())}}else Kt=gA(Kt,sh(),qP(Tn),xr)}return Kt}function YB(){return En()&&Je()===103?!1:bne(Je())>0}function p5(rt,Kt){return oi(V.createSatisfiesExpression(rt,Kt),rt.pos)}function gA(rt,Kt,xr,Tn){return oi(V.createBinaryExpression(rt,Kt,xr),Tn)}function IS(rt,Kt){return oi(V.createAsExpression(rt,Kt),rt.pos)}function g9(){let rt=xe();return oi(V.createPrefixUnaryExpression(Je(),Hn(A9)),rt)}function JU(){let rt=xe();return oi(V.createDeleteExpression(Hn(A9)),rt)}function qF(){let rt=xe();return oi(V.createTypeOfExpression(Hn(A9)),rt)}function BQ(){let rt=xe();return oi(V.createVoidExpression(Hn(A9)),rt)}function Ev(){return Je()===135?nn()?!0:Vn(NQ):!1}function Yx(){let rt=xe();return oi(V.createAwaitExpression(Hn(A9)),rt)}function f5(){if(FN()){let xr=xe(),Tn=wQ();return Je()===43?cR(bne(Je()),Tn,xr):Tn}let rt=Je(),Kt=A9();if(Je()===43){let xr=Yu(tr,Kt.pos),{end:Tn}=Kt;Kt.kind===217?Mt(xr,Tn,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(pe.assert(eAe(rt)),Mt(xr,Tn,Z.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,Vi(rt)))}return Kt}function A9(){switch(Je()){case 40:case 41:case 55:case 54:return g9();case 91:return JU();case 114:return qF();case 116:return BQ();case 30:return dt===1?f_(!0,void 0,void 0,!0):G0();case 135:if(Ev())return Yx();default:return wQ()}}function FN(){switch(Je()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(dt!==1)return!1;default:return!0}}function wQ(){if(Je()===46||Je()===47){let Kt=xe();return oi(V.createPrefixUnaryExpression(Je(),Hn(I5)),Kt)}else if(dt===1&&Je()===30&&Vn(Vb))return f_(!0);let rt=I5();if(pe.assert(D_(rt)),(Je()===46||Je()===47)&&!c.hasPrecedingLineBreak()){let Kt=Je();return Ot(),oi(V.createPostfixUnaryExpression(rt,Kt),rt.pos)}return rt}function I5(){let rt=xe(),Kt;return Je()===102?Vn(s5)?(Dt|=4194304,Kt=sh()):Vn(GN)?(Ot(),Ot(),Kt=oi(V.createMetaProperty(102,QI()),rt),Kt.name.escapedText==="defer"?(Je()===21||Je()===30)&&(Dt|=4194304):Dt|=8388608):Kt=fa():Kt=Je()===108?sa():fa(),Mb(rt,Kt)}function fa(){let rt=xe(),Kt=m5();return hS(rt,Kt,!0)}function sa(){let rt=xe(),Kt=sh();if(Je()===30){let xr=xe(),Tn=Ui(h5);Tn!==void 0&&(Mt(xr,xe(),Z.super_may_not_use_type_arguments),Yw()||(Kt=V.createExpressionWithTypeArguments(Kt,Tn)))}return Je()===21||Je()===25||Je()===23?Kt:(jp(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),oi(Ze(Kt,_i(!0,!0,!0)),rt))}function f_(rt,Kt,xr,Tn=!1){let Ai=xe(),Pi=_pe(rt),Ba;if(Pi.kind===287){let Xo=TQ(Pi),uo,Cc=Xo[Xo.length-1];if(Cc?.kind===285&&!Q3(Cc.openingElement.tagName,Cc.closingElement.tagName)&&Q3(Pi.tagName,Cc.closingElement.tagName)){let Tl=Cc.children.end,bp=oi(V.createJsxElement(Cc.openingElement,Cc.children,oi(V.createJsxClosingElement(oi(Ie(""),Tl,Tl)),Tl,Tl)),Cc.openingElement.pos,Tl);Xo=TA([...Xo.slice(0,Xo.length-1),bp],Xo.pos,Tl),uo=Cc.closingElement}else uo=hse(Pi,rt),Q3(Pi.tagName,uo.tagName)||(xr&&$T(xr)&&Q3(uo.tagName,xr.tagName)?cn(Pi.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,TY(tr,Pi.tagName)):cn(uo.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,TY(tr,Pi.tagName)));Ba=oi(V.createJsxElement(Pi,Xo,uo),Ai)}else Pi.kind===290?Ba=oi(V.createJsxFragment(Pi,TQ(Pi),nq(rt)),Ai):(pe.assert(Pi.kind===286),Ba=Pi);if(!Tn&&rt&&Je()===30){let Xo=typeof Kt>"u"?Ba.pos:Kt,uo=Ui(()=>f_(!0,Xo));if(uo){let Cc=$d(28,!1);return xbe(Cc,uo.pos,0),Mt(Yu(tr,Xo),uo.end,Z.JSX_expressions_must_have_one_parent_element),oi(V.createBinaryExpression(Ba,Cc,uo),Ai)}}return Ba}function UU(){let rt=xe(),Kt=V.createJsxText(c.getTokenValue(),zt===13);return zt=c.scanJsxToken(),oi(Kt,rt)}function $F(rt,Kt){switch(Kt){case 1:if(Pw(rt))cn(rt,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let xr=rt.tagName,Tn=Math.min(Yu(tr,xr.pos),xr.end);Mt(Tn,xr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,TY(tr,rt.tagName))}return;case 31:case 7:return;case 12:case 13:return UU();case 19:return hu(!1);case 30:return f_(!1,void 0,rt);default:return pe.assertNever(Kt)}}function TQ(rt){let Kt=[],xr=xe(),Tn=jn;for(jn|=16384;;){let Ai=$F(rt,zt=c.reScanJsxToken());if(!Ai||(Kt.push(Ai),$T(rt)&&Ai?.kind===285&&!Q3(Ai.openingElement.tagName,Ai.closingElement.tagName)&&Q3(rt.tagName,Ai.closingElement.tagName)))break}return jn=Tn,TA(Kt,xr)}function Ise(){let rt=xe();return oi(V.createJsxAttributes(uA(13,vE)),rt)}function _pe(rt){let Kt=xe();if(bi(30),Je()===32)return ci(),oi(V.createJsxOpeningFragment(),Kt);let xr=qo(),Tn=Ns&524288?void 0:Hf(),Ai=Ise(),Pi;return Je()===32?(ci(),Pi=V.createJsxOpeningElement(xr,Tn,Ai)):(bi(44),bi(32,void 0,!1)&&(rt?Ot():ci()),Pi=V.createJsxSelfClosingElement(xr,Tn,Ai)),oi(Pi,Kt)}function qo(){let rt=xe(),Kt=py();if(eR(Kt))return Kt;let xr=Kt;for(;Dl(25);)xr=oi(Ze(xr,_i(!0,!1,!1)),rt);return xr}function py(){let rt=xe();Mn();let Kt=Je()===110,xr=ve();return Dl(59)?(Mn(),oi(V.createJsxNamespacedName(xr,ve()),rt)):Kt?oi(V.createToken(110),rt):xr}function hu(rt){let Kt=xe();if(!bi(19))return;let xr,Tn;return Je()!==20&&(rt||(xr=yu(26)),Tn=Ay()),rt?bi(20):bi(20,void 0,!1)&&ci(),oi(V.createJsxExpression(xr,Tn),Kt)}function vE(){if(Je()===19)return Fo();let rt=xe();return oi(V.createJsxAttribute($P(),KU()),rt)}function KU(){if(Je()===64){if(es()===11)return Ln();if(Je()===19)return hu(!0);if(Je()===30)return f_(!0);bn(Z.or_JSX_element_expected)}}function $P(){let rt=xe();Mn();let Kt=ve();return Dl(59)?(Mn(),oi(V.createJsxNamespacedName(Kt,ve()),rt)):Kt}function Fo(){let rt=xe();bi(19),bi(26);let Kt=Ay();return bi(20),oi(V.createJsxSpreadAttribute(Kt),rt)}function hse(rt,Kt){let xr=xe();bi(31);let Tn=qo();return bi(32,void 0,!1)&&(Kt||!Q3(rt.tagName,Tn)?Ot():ci()),oi(V.createJsxClosingElement(Tn),xr)}function nq(rt){let Kt=xe();return bi(31),bi(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(rt?Ot():ci()),oi(V.createJsxJsxClosingFragment(),Kt)}function G0(){pe.assert(dt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let rt=xe();bi(30);let Kt=bf();bi(32);let xr=A9();return oi(V.createTypeAssertion(Kt,xr),rt)}function uk(){return Ot(),Id(Je())||Je()===23||Yw()}function lR(){return Je()===29&&Vn(uk)}function eW(rt){if(rt.flags&64)return!0;if(hv(rt)){let Kt=rt.expression;for(;hv(Kt)&&!(Kt.flags&64);)Kt=Kt.expression;if(Kt.flags&64){for(;hv(rt);)rt.flags|=64,rt=rt.expression;return!0}}return!1}function jU(rt,Kt,xr){let Tn=_i(!0,!0,!0),Ai=xr||eW(Kt),Pi=Ai?We(Kt,xr,Tn):Ze(Kt,Tn);if(Ai&&p(Pi.name)&&cn(Pi.name,Z.An_optional_chain_cannot_contain_private_identifiers),l_(Kt)&&Kt.typeArguments){let Ba=Kt.typeArguments.pos-1,Xo=Yu(tr,Kt.typeArguments.end)+1;Mt(Ba,Xo,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return oi(Pi,rt)}function tW(rt,Kt,xr){let Tn;if(Je()===24)Tn=$d(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let Pi=Cs(Ay);d1(Pi)&&(Pi.text=YI(Pi.text)),Tn=Pi}bi(24);let Ai=xr||eW(Kt)?$e(Kt,xr,Tn):Ue(Kt,Tn);return oi(Ai,rt)}function hS(rt,Kt,xr){for(;;){let Tn,Ai=!1;if(xr&&lR()?(Tn=jp(29),Ai=Id(Je())):Ai=Dl(25),Ai){Kt=jU(rt,Kt,Tn);continue}if((Tn||!Gi())&&Dl(23)){Kt=tW(rt,Kt,Tn);continue}if(Yw()){Kt=!Tn&&Kt.kind===234?Sv(rt,Kt.expression,Tn,Kt.typeArguments):Sv(rt,Kt,Tn,void 0);continue}if(!Tn){if(Je()===54&&!c.hasPrecedingLineBreak()){Ot(),Kt=oi(V.createNonNullExpression(Kt),rt);continue}let Pi=Ui(h5);if(Pi){Kt=oi(V.createExpressionWithTypeArguments(Kt,Pi),rt);continue}}return Kt}}function Yw(){return Je()===15||Je()===16}function Sv(rt,Kt,xr,Tn){let Ai=V.createTaggedTemplateExpression(Kt,Tn,Je()===15?(Ys(!0),Ln()):$s(!0));return(xr||Kt.flags&64)&&(Ai.flags|=64),Ai.questionDotToken=xr,oi(Ai,rt)}function Mb(rt,Kt){for(;;){Kt=hS(rt,Kt,!0);let xr,Tn=yu(29);if(Tn&&(xr=Ui(h5),Yw())){Kt=Sv(rt,Kt,Tn,xr);continue}if(xr||Je()===21){!Tn&&Kt.kind===234&&(xr=Kt.typeArguments,Kt=Kt.expression);let Ai=d9(),Pi=Tn||eW(Kt)?Tt(Kt,Tn,xr,Ai):Ye(Kt,xr,Ai);Kt=oi(Pi,rt);continue}if(Tn){let Ai=$d(80,!1,Z.Identifier_expected);Kt=oi(We(Kt,Tn,Ai),rt)}break}return Kt}function d9(){bi(21);let rt=qm(11,ZN);return bi(22),rt}function h5(){if(Ns&524288||tn()!==30)return;Ot();let rt=qm(20,bf);if(ao()===32)return Ot(),rt&&iq()?rt:void 0}function iq(){switch(Je()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||YB()||!u0()}function m5(){switch(Je()){case 15:c.getTokenFlags()&26656&&Ys(!1);case 9:case 10:case 11:return Ln();case 110:case 108:case 106:case 112:case 97:return sh();case 21:return rW();case 23:return nW();case 19:return p9();case 134:if(!Vn(vv))break;return iW();case 60:return _A();case 86:return Lh();case 100:return iW();case 105:return tZ();case 44:case 69:if(Bs()===14)return Ln();break;case 16:return $s(!1);case 81:return Go()}return _f(Z.Expression_expected)}function rW(){let rt=xe(),Kt=fr();bi(21);let xr=Cs(Ay);return bi(22),Wo(oi(Qe(xr),rt),Kt)}function sq(){let rt=xe();bi(26);let Kt=Hy(!0);return oi(V.createSpreadElement(Kt),rt)}function eZ(){return Je()===26?sq():Je()===28?oi(V.createOmittedExpression(),xe()):Hy(!0)}function ZN(){return Qu(g,eZ)}function nW(){let rt=xe(),Kt=c.getTokenStart(),xr=bi(23),Tn=c.hasPrecedingLineBreak(),Ai=qm(15,eZ);return pp(23,24,xr,Kt),oi(Ne(Ai,Tn),rt)}function C5(){let rt=xe(),Kt=fr();if(yu(26)){let Tl=Hy(!0);return Wo(oi(V.createSpreadAssignment(Tl),rt),Kt)}let xr=Oc(!0);if(Ss(139))return v5(rt,Kt,xr,178,0);if(Ss(153))return v5(rt,Kt,xr,179,0);let Tn=yu(42),Ai=fs(),Pi=Ls(),Ba=yu(58),Xo=yu(54);if(Tn||Je()===21||Je()===30)return S5(rt,Kt,xr,Tn,Pi,Ba,Xo);let uo;if(Ai&&Je()!==59){let Tl=yu(64),bp=Tl?Cs(()=>Hy(!0)):void 0;uo=V.createShorthandPropertyAssignment(Pi,bp),uo.equalsToken=Tl}else{bi(59);let Tl=Cs(()=>Hy(!0));uo=V.createPropertyAssignment(Pi,Tl)}return uo.modifiers=xr,uo.questionToken=Ba,uo.exclamationToken=Xo,Wo(oi(uo,rt),Kt)}function p9(){let rt=xe(),Kt=c.getTokenStart(),xr=bi(19),Tn=c.hasPrecedingLineBreak(),Ai=qm(12,C5,!0);return pp(19,20,xr,Kt),oi(Te(Ai,Tn),rt)}function iW(){let rt=Gi();Oa(!1);let Kt=xe(),xr=fr(),Tn=Oc(!1);bi(100);let Ai=yu(42),Pi=Ai?1:0,Ba=jt(Tn,G)?2:0,Xo=Pi&&Ba?Fr(Qw):Pi?pt(Qw):Ba?it(Qw):Qw(),uo=br(),Cc=$a(Pi|Ba),Tl=co(59,!1),bp=sW(Pi|Ba);Oa(rt);let ep=V.createFunctionExpression(Tn,Ai,Xo,uo,Cc,Tl,bp);return Wo(oi(ep,Kt),xr)}function Qw(){return gs()?WC():void 0}function tZ(){let rt=xe();if(bi(105),Dl(25)){let Pi=QI();return oi(V.createMetaProperty(105,Pi),rt)}let Kt=xe(),xr=hS(Kt,m5(),!1),Tn;xr.kind===234&&(Tn=xr.typeArguments,xr=xr.expression),Je()===29&&bn(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,TY(tr,xr));let Ai=Je()===21?d9():void 0;return oi(ot(xr,Tn,Ai),rt)}function Qx(rt,Kt){let xr=xe(),Tn=fr(),Ai=c.getTokenStart(),Pi=bi(19,Kt);if(Pi||rt){let Ba=c.hasPrecedingLineBreak(),Xo=uA(1,BE);pp(19,20,Pi,Ai);let uo=Wo(oi(mt(Xo,Ba),xr),Tn);return Je()===64&&(bn(Z.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Ot()),uo}else{let Ba=pS();return Wo(oi(mt(Ba,void 0),xr),Tn)}}function sW(rt,Kt){let xr=hr();pa(!!(rt&1));let Tn=nn();tl(!!(rt&2));let Ai=An;An=!1;let Pi=Gi();Pi&&Oa(!1);let Ba=Qx(!!(rt&16),Kt);return Pi&&Oa(!0),An=Ai,pa(xr),tl(Tn),Ba}function HC(){let rt=xe(),Kt=fr();return bi(27),Wo(oi(V.createEmptyStatement(),rt),Kt)}function RQ(){let rt=xe(),Kt=fr();bi(101);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=BE(),Ba=Dl(93)?BE():void 0;return Wo(oi(Rt(Ai,Pi,Ba),rt),Kt)}function Xx(){let rt=xe(),Kt=fr();bi(92);let xr=BE();bi(117);let Tn=c.getTokenStart(),Ai=bi(21),Pi=Cs(Ay);return pp(21,22,Ai,Tn),Dl(27),Wo(oi(V.createDoStatement(xr,Pi),rt),Kt)}function _5(){let rt=xe(),Kt=fr();bi(117);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=BE();return Wo(oi(Lt(Ai,Pi),rt),Kt)}function zU(){let rt=xe(),Kt=fr();bi(99);let xr=yu(135);bi(21);let Tn;Je()!==27&&(Je()===115||Je()===121||Je()===87||Je()===160&&Vn(TI)||Je()===135&&Vn(gq)?Tn=iK(!0):Tn=Tu(Ay));let Ai;if(xr?bi(165):Dl(165)){let Pi=Cs(()=>Hy(!0));bi(22),Ai=Pt(xr,Tn,Pi,BE())}else if(Dl(103)){let Pi=Cs(Ay);bi(22),Ai=V.createForInStatement(Tn,Pi,BE())}else{bi(27);let Pi=Je()!==27&&Je()!==22?Cs(Ay):void 0;bi(27);let Ba=Je()!==22?Cs(Ay):void 0;bi(22),Ai=Ke(Tn,Pi,Ba,BE())}return Wo(oi(Ai,rt),Kt)}function Jx(rt){let Kt=xe(),xr=fr();bi(rt===253?83:88);let Tn=gu()?void 0:_f();KA();let Ai=rt===253?V.createBreakStatement(Tn):V.createContinueStatement(Tn);return Wo(oi(Ai,Kt),xr)}function mse(){let rt=xe(),Kt=fr();bi(107);let xr=gu()?void 0:Cs(Ay);return KA(),Wo(oi(V.createReturnStatement(xr),rt),Kt)}function oq(){let rt=xe(),Kt=fr();bi(118);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=Tg(67108864,BE);return Wo(oi(V.createWithStatement(Ai,Pi),rt),Kt)}function aq(){let rt=xe(),Kt=fr();bi(84);let xr=Cs(Ay);bi(59);let Tn=uA(3,BE);return Wo(oi(V.createCaseClause(xr,Tn),rt),Kt)}function ype(){let rt=xe();bi(90),bi(59);let Kt=uA(3,BE);return oi(V.createDefaultClause(Kt),rt)}function cq(){return Je()===84?aq():ype()}function y5(){let rt=xe();bi(19);let Kt=uA(2,cq);return bi(20),oi(V.createCaseBlock(Kt),rt)}function rZ(){let rt=xe(),Kt=fr();bi(109),bi(21);let xr=Cs(Ay);bi(22);let Tn=y5();return Wo(oi(V.createSwitchStatement(xr,Tn),rt),Kt)}function Cse(){let rt=xe(),Kt=fr();bi(111);let xr=c.hasPrecedingLineBreak()?void 0:Cs(Ay);return xr===void 0&&(mn++,xr=oi(Ie(""),xe())),bg()||gg(xr),Wo(oi(V.createThrowStatement(xr),rt),Kt)}function b5(){let rt=xe(),Kt=fr();bi(113);let xr=Qx(!1),Tn=Je()===85?qU():void 0,Ai;return(!Tn||Je()===98)&&(bi(98,Z.catch_or_finally_expected),Ai=Qx(!1)),Wo(oi(V.createTryStatement(xr,Tn,Ai),rt),Kt)}function qU(){let rt=xe();bi(85);let Kt;Dl(21)?(Kt=LN(),bi(22)):Kt=void 0;let xr=Qx(!1);return oi(V.createCatchClause(Kt,xr),rt)}function Zh(){let rt=xe(),Kt=fr();return bi(89),KA(),Wo(oi(V.createDebuggerStatement(),rt),Kt)}function YC(){let rt=xe(),Kt=fr(),xr,Tn=Je()===21,Ai=Cs(Ay);return Ir(Ai)&&Dl(59)?xr=V.createLabeledStatement(Ai,BE()):(bg()||gg(Ai),xr=_t(Ai),Tn&&(Kt=!1)),Wo(oi(xr,rt),Kt)}function lq(){return Ot(),Id(Je())&&!c.hasPrecedingLineBreak()}function Hb(){return Ot(),Je()===86&&!c.hasPrecedingLineBreak()}function vv(){return Ot(),Je()===100&&!c.hasPrecedingLineBreak()}function NQ(){return Ot(),(Id(Je())||Je()===9||Je()===10||Je()===11)&&!c.hasPrecedingLineBreak()}function uR(){for(;;)switch(Je()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return DQ();case 135:return F0();case 120:case 156:case 166:return Mw();case 144:case 145:return rK();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let rt=Je();if(Ot(),c.hasPrecedingLineBreak())return!1;if(rt===138&&Je()===156)return!0;continue;case 162:return Ot(),Je()===19||Je()===80||Je()===95;case 102:return Ot(),Je()===166||Je()===11||Je()===42||Je()===19||Id(Je());case 95:let Kt=Ot();if(Kt===156&&(Kt=Vn(Ot)),Kt===64||Kt===42||Kt===19||Kt===90||Kt===130||Kt===60)return!0;continue;case 126:Ot();continue;default:return!1}}function oW(){return Vn(uR)}function f9(){switch(Je()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return oW()||Vn(ok);case 87:case 95:return oW();case 134:case 138:case 120:case 144:case 145:case 156:case 162:case 166:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return oW()||!Vn(lq);default:return u0()}}function uq(){return Ot(),gs()||Je()===19||Je()===23}function bpe(){return Vn(uq)}function TI(){return $U(!0)}function _se(){return Ot(),Je()===64||Je()===27||Je()===59}function $U(rt){return Ot(),rt&&Je()===165?Vn(_se):(gs()||Je()===19)&&!c.hasPrecedingLineBreak()}function DQ(){return Vn($U)}function gq(rt){return Ot()===160?$U(rt):!1}function F0(){return Vn(gq)}function BE(){switch(Je()){case 27:return HC();case 19:return Qx(!1);case 115:return jA(xe(),fr(),void 0);case 121:if(bpe())return jA(xe(),fr(),void 0);break;case 135:if(F0())return jA(xe(),fr(),void 0);break;case 160:if(DQ())return jA(xe(),fr(),void 0);break;case 100:return Uo(xe(),fr(),void 0);case 86:return g0(xe(),fr(),void 0);case 101:return RQ();case 92:return Xx();case 117:return _5();case 99:return zU();case 88:return Jx(252);case 83:return Jx(253);case 107:return mse();case 118:return oq();case 109:return rZ();case 111:return Cse();case 113:case 85:case 98:return b5();case 89:return Zh();case 60:return E5();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(oW())return E5();break}return YC()}function eK(rt){return rt.kind===138}function E5(){let rt=xe(),Kt=fr(),xr=Oc(!0);if(jt(xr,eK)){let Ai=wE(rt);if(Ai)return Ai;for(let Pi of xr)Pi.flags|=33554432;return Tg(33554432,()=>tK(rt,Kt,xr))}else return tK(rt,Kt,xr)}function wE(rt){return Tg(33554432,()=>{let Kt=af(jn,rt);if(Kt)return dI(Kt)})}function tK(rt,Kt,xr){switch(Je()){case 115:case 121:case 87:case 160:case 135:return jA(rt,Kt,xr);case 100:return Uo(rt,Kt,xr);case 86:return g0(rt,Kt,xr);case 120:return Jw(rt,Kt,xr);case 156:return m9(rt,Kt,xr);case 94:return lWe(rt,Kt,xr);case 162:case 144:case 145:return c2e(rt,Kt,xr);case 102:return uK(rt,Kt,xr);case 95:switch(Ot(),Je()){case 90:case 64:return T5(rt,Kt,xr);case 130:return GQ(rt,Kt,xr);default:return Tpe(rt,Kt,xr)}default:if(xr){let Tn=$d(283,!0,Z.Declaration_expected);return iz(Tn,rt),Tn.modifiers=xr,Tn}return}}function Ux(){return Ot()===11}function Aq(){return Ot(),Je()===161||Je()===64}function rK(){return Ot(),!c.hasPrecedingLineBreak()&&(fs()||Je()===11)}function Xw(rt,Kt){if(Je()!==19){if(rt&4){ru();return}if(gu()){KA();return}}return sW(rt,Kt)}function dq(){let rt=xe();if(Je()===28)return oi(V.createOmittedExpression(),rt);let Kt=yu(26),xr=I9(),Tn=lk();return oi(V.createBindingElement(Kt,void 0,xr,Tn),rt)}function yse(){let rt=xe(),Kt=yu(26),xr=gs(),Tn=Ls(),Ai;xr&&Je()!==59?(Ai=Tn,Tn=void 0):(bi(59),Ai=I9());let Pi=lk();return oi(V.createBindingElement(Kt,Tn,Ai,Pi),rt)}function pq(){let rt=xe();bi(19);let Kt=Cs(()=>qm(9,yse));return bi(20),oi(V.createObjectBindingPattern(Kt),rt)}function nK(){let rt=xe();bi(23);let Kt=Cs(()=>qm(10,dq));return bi(24),oi(V.createArrayBindingPattern(Kt),rt)}function fq(){return Je()===19||Je()===23||Je()===81||gs()}function I9(rt){return Je()===23?nK():Je()===19?pq():WC(rt)}function B1(){return LN(!0)}function LN(rt){let Kt=xe(),xr=fr(),Tn=I9(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Ai;rt&&Tn.kind===80&&Je()===54&&!c.hasPrecedingLineBreak()&&(Ai=sh());let Pi=l0(),Ba=dy(Je())?void 0:lk(),Xo=_r(Tn,Ai,Pi,Ba);return Wo(oi(Xo,Kt),xr)}function iK(rt){let Kt=xe(),xr=0;switch(Je()){case 115:break;case 121:xr|=1;break;case 87:xr|=2;break;case 160:xr|=4;break;case 135:pe.assert(F0()),xr|=6,Ot();break;default:pe.fail()}Ot();let Tn;if(Je()===165&&Vn(sK))Tn=pS();else{let Ai=En();lo(rt),Tn=qm(8,rt?LN:B1),lo(Ai)}return oi(Gt(Tn,xr),Kt)}function sK(){return Z_()&&Ot()===22}function jA(rt,Kt,xr){let Tn=iK(!1);KA();let Ai=ht(xr,Tn);return Wo(oi(Ai,rt),Kt)}function Uo(rt,Kt,xr){let Tn=nn(),Ai=Dw(xr);bi(100);let Pi=yu(42),Ba=Ai&2048?Qw():WC(),Xo=Pi?1:0,uo=Ai&1024?2:0,Cc=br();Ai&32&&tl(!0);let Tl=$a(Xo|uo),bp=co(59,!1),ep=Xw(Xo|uo,Z.or_expected);tl(Tn);let zA=V.createFunctionDeclaration(xr,Pi,Ba,Cc,Tl,bp,ep);return Wo(oi(zA,rt),Kt)}function mS(){if(Je()===137)return bi(137);if(Je()===11&&Vn(Ot)===21)return Ui(()=>{let rt=Ln();return rt.text==="constructor"?rt:void 0})}function $m(rt,Kt,xr){return Ui(()=>{if(mS()){let Tn=br(),Ai=$a(0),Pi=co(59,!1),Ba=Xw(0,Z.or_expected),Xo=V.createConstructorDeclaration(xr,Ai,Ba);return Xo.typeParameters=Tn,Xo.type=Pi,Wo(oi(Xo,rt),Kt)}})}function S5(rt,Kt,xr,Tn,Ai,Pi,Ba,Xo){let uo=Tn?1:0,Cc=jt(xr,G)?2:0,Tl=br(),bp=$a(uo|Cc),ep=co(59,!1),zA=Xw(uo|Cc,Xo),Bv=V.createMethodDeclaration(xr,Tn,Ai,Pi,Tl,bp,ep,zA);return Bv.exclamationToken=Ba,Wo(oi(Bv,rt),Kt)}function oK(rt,Kt,xr,Tn,Ai){let Pi=!Ai&&!c.hasPrecedingLineBreak()?yu(54):void 0,Ba=l0(),Xo=Qu(90112,lk);wI(Tn,Ba,Xo);let uo=V.createPropertyDeclaration(xr,Tn,Ai||Pi,Ba,Xo);return Wo(oi(uo,rt),Kt)}function kQ(rt,Kt,xr){let Tn=yu(42),Ai=Ls(),Pi=yu(58);return Tn||Je()===21||Je()===30?S5(rt,Kt,xr,Tn,Ai,Pi,void 0,Z.or_expected):oK(rt,Kt,xr,Ai,Pi)}function v5(rt,Kt,xr,Tn,Ai){let Pi=Ls(),Ba=br(),Xo=$a(0),uo=co(59,!1),Cc=Xw(Ai),Tl=Tn===178?V.createGetAccessorDeclaration(xr,Pi,Xo,uo,Cc):V.createSetAccessorDeclaration(xr,Pi,Xo,Cc);return Tl.typeParameters=Ba,Dg(Tl)&&(Tl.type=uo),Wo(oi(Tl,rt),Kt)}function aK(){let rt;if(Je()===60)return!0;for(;VD(Je());){if(rt=Je(),Sre(rt))return!0;Ot()}if(Je()===42||(mr()&&(rt=Je(),Ot()),Je()===23))return!0;if(rt!==void 0){if(!v0(rt)||rt===153||rt===139)return!0;switch(Je()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return gu()}}return!1}function Ae(rt,Kt,xr){jp(126);let Tn=Et(),Ai=Wo(oi(V.createClassStaticBlockDeclaration(Tn),rt),Kt);return Ai.modifiers=xr,Ai}function Et(){let rt=hr(),Kt=nn();pa(!1),tl(!0);let xr=Qx(!1);return pa(rt),tl(Kt),xr}function fn(){if(nn()&&Je()===135){let rt=xe(),Kt=_f(Z.Expression_expected);Ot();let xr=hS(rt,Kt,!0);return Mb(rt,xr)}return I5()}function qi(){let rt=xe();if(!Dl(60))return;let Kt=on(fn);return oi(V.createDecorator(Kt),rt)}function ic(rt,Kt,xr){let Tn=xe(),Ai=Je();if(Je()===87&&Kt){if(!Ui(Uc))return}else{if(xr&&Je()===126&&Vn(lK))return;if(rt&&Je()===126)return;if(!yf())return}return oi(Ee(Ai),Tn)}function Oc(rt,Kt,xr){let Tn=xe(),Ai,Pi,Ba,Xo=!1,uo=!1,Cc=!1;if(rt&&Je()===60)for(;Pi=qi();)Ai=Ft(Ai,Pi);for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba),uo=!0;if(uo&&rt&&Je()===60)for(;Pi=qi();)Ai=Ft(Ai,Pi),Cc=!0;if(Cc)for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba);return Ai&&TA(Ai,Tn)}function zl(){let rt;if(Je()===134){let Kt=xe();Ot();let xr=oi(Ee(134),Kt);rt=TA([xr],Kt)}return rt}function Vc(){let rt=xe(),Kt=fr();if(Je()===27)return Ot(),Wo(oi(V.createSemicolonClassElement(),rt),Kt);let xr=Oc(!0,!0,!0);if(Je()===126&&Vn(lK))return Ae(rt,Kt,xr);if(Ss(139))return v5(rt,Kt,xr,178,0);if(Ss(153))return v5(rt,Kt,xr,179,0);if(Je()===137||Je()===11){let Tn=$m(rt,Kt,xr);if(Tn)return Tn}if(kf())return OB(rt,Kt,xr);if(Id(Je())||Je()===11||Je()===9||Je()===10||Je()===42||Je()===23)if(jt(xr,eK)){for(let Ai of xr)Ai.flags|=33554432;return Tg(33554432,()=>kQ(rt,Kt,xr))}else return kQ(rt,Kt,xr);if(xr){let Tn=$d(80,!0,Z.Declaration_expected);return oK(rt,Kt,xr,Tn,void 0)}return pe.fail("Should not have attempted to parse class member declaration.")}function _A(){let rt=xe(),Kt=fr(),xr=Oc(!0);if(Je()===86)return Yy(rt,Kt,xr,232);let Tn=$d(283,!0,Z.Expression_expected);return iz(Tn,rt),Tn.modifiers=xr,Tn}function Lh(){return Yy(xe(),fr(),void 0,232)}function g0(rt,Kt,xr){return Yy(rt,Kt,xr,264)}function Yy(rt,Kt,xr,Tn){let Ai=nn();bi(86);let Pi=B5(),Ba=br();jt(xr,y)&&tl(!0);let Xo=aW(),uo;bi(19)?(uo=h9(),bi(20)):uo=pS(),tl(Ai);let Cc=Tn===264?V.createClassDeclaration(xr,Pi,Ba,Xo,uo):V.createClassExpression(xr,Pi,Ba,Xo,uo);return Wo(oi(Cc,rt),Kt)}function B5(){return gs()&&!Qy()?Fh(gs()):void 0}function Qy(){return Je()===119&&Vn(m2)}function aW(){if(cK())return uA(22,Iq)}function Iq(){let rt=xe(),Kt=Je();pe.assert(Kt===96||Kt===119),Ot();let xr=qm(7,QB);return oi(V.createHeritageClause(Kt,xr),rt)}function QB(){let rt=xe(),Kt=I5();if(Kt.kind===234)return Kt;let xr=Hf();return oi(V.createExpressionWithTypeArguments(Kt,xr),rt)}function Hf(){return Je()===30?at(20,bf,30,32):void 0}function cK(){return Je()===96||Je()===119}function h9(){return uA(5,Vc)}function Jw(rt,Kt,xr){bi(120);let Tn=_f(),Ai=br(),Pi=aW(),Ba=ak(),Xo=V.createInterfaceDeclaration(xr,Tn,Ai,Pi,Ba);return Wo(oi(Xo,rt),Kt)}function m9(rt,Kt,xr){bi(156),c.hasPrecedingLineBreak()&&bn(Z.Line_break_not_permitted_here);let Tn=_f(),Ai=br();bi(64);let Pi=Je()===141&&Ui($z)||bf();KA();let Ba=V.createTypeAliasDeclaration(xr,Tn,Ai,Pi);return Wo(oi(Ba,rt),Kt)}function xQ(){let rt=xe(),Kt=fr(),xr=Ls(),Tn=Cs(lk);return Wo(oi(V.createEnumMember(xr,Tn),rt),Kt)}function lWe(rt,Kt,xr){bi(94);let Tn=_f(),Ai;bi(19)?(Ai=Kr(()=>qm(6,xQ)),bi(20)):Ai=pS();let Pi=V.createEnumDeclaration(xr,Tn,Ai);return Wo(oi(Pi,rt),Kt)}function Epe(){let rt=xe(),Kt;return bi(19)?(Kt=uA(1,BE),bi(20)):Kt=pS(),oi(V.createModuleBlock(Kt),rt)}function hq(rt,Kt,xr,Tn){let Ai=Tn&32,Pi=Tn&8?QI():_f(),Ba=Dl(25)?hq(xe(),!1,void 0,8|Ai):Epe(),Xo=V.createModuleDeclaration(xr,Pi,Ba,Tn);return Wo(oi(Xo,rt),Kt)}function Spe(rt,Kt,xr){let Tn=0,Ai;Je()===162?(Ai=_f(),Tn|=2048):(Ai=Ln(),Ai.text=YI(Ai.text));let Pi;Je()===19?Pi=Epe():KA();let Ba=V.createModuleDeclaration(xr,Ai,Pi,Tn);return Wo(oi(Ba,rt),Kt)}function c2e(rt,Kt,xr){let Tn=0;if(Je()===162)return Spe(rt,Kt,xr);if(Dl(145))Tn|=32;else if(bi(144),Je()===11)return Spe(rt,Kt,xr);return hq(rt,Kt,xr,Tn)}function cW(){return Je()===149&&Vn(mq)}function mq(){return Ot()===21}function lK(){return Ot()===19}function uWe(){return Ot()===44}function GQ(rt,Kt,xr){bi(130),bi(145);let Tn=_f();KA();let Ai=V.createNamespaceExportDeclaration(Tn);return Ai.modifiers=xr,Wo(oi(Ai,rt),Kt)}function uK(rt,Kt,xr){bi(102);let Tn=c.getTokenFullStart(),Ai;fs()&&(Ai=_f());let Pi;if(Ai?.escapedText==="type"&&(Je()!==161||fs()&&Vn(Aq))&&(fs()||no())?(Pi=156,Ai=fs()?_f():void 0):Ai?.escapedText==="defer"&&(Je()===161?!Vn(Ux):Je()!==28&&Je()!==64)&&(Pi=166,Ai=fs()?_f():void 0),Ai&&!Bpe()&&Pi!==166)return bse(rt,Kt,xr,Ai,Pi===156);let Ba=vpe(Ai,Tn,Pi,void 0),Xo=gK(),uo=Cq();KA();let Cc=V.createImportDeclaration(xr,Ba,Xo,uo);return Wo(oi(Cc,rt),Kt)}function vpe(rt,Kt,xr,Tn=!1){let Ai;return(rt||Je()===42||Je()===19)&&(Ai=Ese(rt,Kt,xr,Tn),bi(161)),Ai}function Cq(){let rt=Je();if((rt===118||rt===132)&&!c.hasPrecedingLineBreak())return lW(rt)}function kl(){let rt=xe(),Kt=Id(Je())?QI():jl(11);bi(59);let xr=Hy(!0);return oi(V.createImportAttribute(Kt,xr),rt)}function lW(rt,Kt){let xr=xe();Kt||bi(rt);let Tn=c.getTokenStart();if(bi(19)){let Ai=c.hasPrecedingLineBreak(),Pi=qm(24,kl,!0);if(!bi(20)){let Ba=li(pr);Ba&&Ba.code===Z._0_expected.code&&lg(Ba,QY(nt,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return oi(V.createImportAttributes(Pi,Ai,rt),xr)}else{let Ai=TA([],xe(),void 0,!1);return oi(V.createImportAttributes(Ai,!1,rt),xr)}}function no(){return Je()===42||Je()===19}function Bpe(){return Je()===28||Je()===161}function bse(rt,Kt,xr,Tn,Ai){bi(64);let Pi=FQ();KA();let Ba=V.createImportEqualsDeclaration(xr,Ai,Tn,Pi);return Wo(oi(Ba,rt),Kt)}function Ese(rt,Kt,xr,Tn){let Ai;return(!rt||Dl(28))&&(Tn&&c.setSkipJsDocLeadingAsterisks(!0),Je()===42?Ai=gWe():Ai=u2e(276),Tn&&c.setSkipJsDocLeadingAsterisks(!1)),oi(V.createImportClause(xr,rt,Ai),Kt)}function FQ(){return cW()?l2e():en(!1)}function l2e(){let rt=xe();bi(149),bi(21);let Kt=gK();return bi(22),oi(V.createExternalModuleReference(Kt),rt)}function gK(){if(Je()===11){let rt=Ln();return rt.text=YI(rt.text),rt}else return Ay()}function gWe(){let rt=xe();bi(42),bi(130);let Kt=_f();return oi(V.createNamespaceImport(Kt),rt)}function Sse(){return Id(Je())||Je()===11}function gk(rt){return Je()===11?Ln():rt()}function u2e(rt){let Kt=xe(),xr=rt===276?V.createNamedImports(at(23,AWe,19,20)):V.createNamedExports(at(23,w5,19,20));return oi(xr,Kt)}function w5(){let rt=fr();return Wo(wpe(282),rt)}function AWe(){return wpe(277)}function wpe(rt){let Kt=xe(),xr=v0(Je())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),Pi=!1,Ba,Xo=!0,uo=gk(QI);if(uo.kind===80&&uo.escapedText==="type")if(Je()===130){let bp=QI();if(Je()===130){let ep=QI();Sse()?(Pi=!0,Ba=bp,uo=gk(Tl),Xo=!1):(Ba=uo,uo=ep,Xo=!1)}else Sse()?(Ba=uo,Xo=!1,uo=gk(Tl)):(Pi=!0,uo=bp)}else Sse()&&(Pi=!0,uo=gk(Tl));Xo&&Je()===130&&(Ba=uo,bi(130),uo=gk(Tl)),rt===277&&(uo.kind!==80?(Mt(Yu(tr,uo.pos),uo.end,Z.Identifier_expected),uo=TB($d(80,!1),uo.pos,uo.pos)):xr&&Mt(Tn,Ai,Z.Identifier_expected));let Cc=rt===277?V.createImportSpecifier(Pi,Ba,uo):V.createExportSpecifier(Pi,Ba,uo);return oi(Cc,Kt);function Tl(){return xr=v0(Je())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),QI()}}function g2e(rt){return oi(V.createNamespaceExport(gk(QI)),rt)}function Tpe(rt,Kt,xr){let Tn=nn();tl(!0);let Ai,Pi,Ba,Xo=Dl(156),uo=xe();Dl(42)?(Dl(130)&&(Ai=g2e(uo)),bi(161),Pi=gK()):(Ai=u2e(280),(Je()===161||Je()===11&&!c.hasPrecedingLineBreak())&&(bi(161),Pi=gK()));let Cc=Je();Pi&&(Cc===118||Cc===132)&&!c.hasPrecedingLineBreak()&&(Ba=lW(Cc)),KA(),tl(Tn);let Tl=V.createExportDeclaration(xr,Xo,Ai,Pi,Ba);return Wo(oi(Tl,rt),Kt)}function T5(rt,Kt,xr){let Tn=nn();tl(!0);let Ai;Dl(64)?Ai=!0:bi(90);let Pi=Hy(!0);KA(),tl(Tn);let Ba=V.createExportAssignment(xr,Ai,Pi);return Wo(oi(Ba,rt),Kt)}let Ak;(rt=>{rt[rt.SourceElements=0]="SourceElements",rt[rt.BlockStatements=1]="BlockStatements",rt[rt.SwitchClauses=2]="SwitchClauses",rt[rt.SwitchClauseStatements=3]="SwitchClauseStatements",rt[rt.TypeMembers=4]="TypeMembers",rt[rt.ClassMembers=5]="ClassMembers",rt[rt.EnumMembers=6]="EnumMembers",rt[rt.HeritageClauseElement=7]="HeritageClauseElement",rt[rt.VariableDeclarations=8]="VariableDeclarations",rt[rt.ObjectBindingElements=9]="ObjectBindingElements",rt[rt.ArrayBindingElements=10]="ArrayBindingElements",rt[rt.ArgumentExpressions=11]="ArgumentExpressions",rt[rt.ObjectLiteralMembers=12]="ObjectLiteralMembers",rt[rt.JsxAttributes=13]="JsxAttributes",rt[rt.JsxChildren=14]="JsxChildren",rt[rt.ArrayLiteralMembers=15]="ArrayLiteralMembers",rt[rt.Parameters=16]="Parameters",rt[rt.JSDocParameters=17]="JSDocParameters",rt[rt.RestProperties=18]="RestProperties",rt[rt.TypeParameters=19]="TypeParameters",rt[rt.TypeArguments=20]="TypeArguments",rt[rt.TupleElementTypes=21]="TupleElementTypes",rt[rt.HeritageClauses=22]="HeritageClauses",rt[rt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",rt[rt.ImportAttributes=24]="ImportAttributes",rt[rt.JSDocComment=25]="JSDocComment",rt[rt.Count=26]="Count"})(Ak||(Ak={}));let vse;(rt=>{rt[rt.False=0]="False",rt[rt.True=1]="True",rt[rt.Unknown=2]="Unknown"})(vse||(vse={}));let VN;(rt=>{function Kt(Cc,Tl,bp){Zn("file.js",Cc,99,void 0,1,0),c.setText(Cc,Tl,bp),zt=c.scan();let ep=xr(),zA=hn("file.js",99,1,!1,[],Ee(1),0,Dc),Bv=XL(pr,zA);return st&&(zA.jsDocDiagnostics=XL(st,zA)),ya(),ep?{jsDocTypeExpression:ep,diagnostics:Bv}:void 0}rt.parseJSDocTypeExpressionForTests=Kt;function xr(Cc){let Tl=xe(),bp=(Cc?Dl:bi)(19),ep=Tg(16777216,aR);(!Cc||bp)&&AI(20);let zA=V.createJSDocTypeExpression(ep);return yr(zA),oi(zA,Tl)}rt.parseJSDocTypeExpression=xr;function Tn(){let Cc=xe(),Tl=Dl(19),bp=xe(),ep=en(!1);for(;Je()===81;)wn(),$r(),ep=oi(V.createJSDocMemberName(ep,_f()),bp);Tl&&AI(20);let zA=V.createJSDocNameReference(ep);return yr(zA),oi(zA,Cc)}rt.parseJSDocNameReference=Tn;function Ai(Cc,Tl,bp){Zn("",Cc,99,void 0,1,0);let ep=Tg(16777216,()=>uo(Tl,bp)),Bv=XL(pr,{languageVariant:0,text:Cc});return ya(),ep?{jsDoc:ep,diagnostics:Bv}:void 0}rt.parseIsolatedJSDocComment=Ai;function Pi(Cc,Tl,bp){let ep=zt,zA=pr.length,Bv=si,CS=Tg(16777216,()=>uo(Tl,bp));return XA(CS,Cc),Ns&524288&&(st||(st=[]),Or(st,pr,zA)),zt=ep,pr.length=zA,si=Bv,CS}rt.parseJSDocComment=Pi;let Ba;(Cc=>{Cc[Cc.BeginningOfLine=0]="BeginningOfLine",Cc[Cc.SawAsterisk=1]="SawAsterisk",Cc[Cc.SavingComments=2]="SavingComments",Cc[Cc.SavingBackticks=3]="SavingBackticks"})(Ba||(Ba={}));let Xo;(Cc=>{Cc[Cc.Property=1]="Property",Cc[Cc.Parameter=2]="Parameter",Cc[Cc.CallbackParameter=4]="CallbackParameter"})(Xo||(Xo={}));function uo(Cc=0,Tl){let bp=tr,ep=Tl===void 0?bp.length:Cc+Tl;if(Tl=ep-Cc,pe.assert(Cc>=0),pe.assert(Cc<=ep),pe.assert(ep<=bp.length),!F$e(bp,Cc))return;let zA,Bv,CS,C9,_9,Kx=[],uW=[],nd=jn;jn|=1<<25;let Fm=c.scanRange(Cc+3,Tl-5,y9);return jn=nd,Fm;function y9(){let vs=1,da,Sa=Cc-(bp.lastIndexOf(` + })(name => super[name], (name, value) => super[name] = value);`};function qD(s,c){return Zl(s)&&Ir(s.expression)&&(tA(s.expression)&8192)!==0&&s.expression.escapedText===c}function mC(s){return s.kind===9}function eQ(s){return s.kind===10}function Zg(s){return s.kind===11}function KL(s){return s.kind===12}function rEe(s){return s.kind===14}function GP(s){return s.kind===15}function tQ(s){return s.kind===16}function gie(s){return s.kind===17}function nde(s){return s.kind===18}function ide(s){return s.kind===26}function nEe(s){return s.kind===28}function mz(s){return s.kind===40}function sde(s){return s.kind===41}function Aie(s){return s.kind===42}function Cz(s){return s.kind===54}function UT(s){return s.kind===58}function iEe(s){return s.kind===59}function die(s){return s.kind===29}function jLe(s){return s.kind===39}function Ir(s){return s.kind===80}function p(s){return s.kind===81}function y(s){return s.kind===95}function w(s){return s.kind===90}function G(s){return s.kind===134}function J(s){return s.kind===131}function U(s){return s.kind===135}function le(s){return s.kind===148}function Ge(s){return s.kind===126}function Xe(s){return s.kind===128}function bt(s){return s.kind===164}function It(s){return s.kind===129}function rr(s){return s.kind===108}function an(s){return s.kind===102}function Ks(s){return s.kind===84}function zi(s){return s.kind===167}function Un(s){return s.kind===168}function Ds(s){return s.kind===169}function Si(s){return s.kind===170}function So(s){return s.kind===171}function ss(s){return s.kind===172}function pi(s){return s.kind===173}function hl(s){return s.kind===174}function uu(s){return s.kind===175}function fl(s){return s.kind===176}function Tc(s){return s.kind===177}function Bg(s){return s.kind===178}function Dg(s){return s.kind===179}function wg(s){return s.kind===180}function em(s){return s.kind===181}function w0(s){return s.kind===182}function bE(s){return s.kind===183}function nh(s){return s.kind===184}function x_(s){return s.kind===185}function $D(s){return s.kind===186}function Fw(s){return s.kind===187}function mh(s){return s.kind===188}function kF(s){return s.kind===189}function Zw(s){return s.kind===190}function KT(s){return s.kind===203}function jL(s){return s.kind===191}function zL(s){return s.kind===192}function aS(s){return s.kind===193}function mf(s){return s.kind===194}function d2(s){return s.kind===195}function jT(s){return s.kind===196}function fv(s){return s.kind===197}function Fx(s){return s.kind===198}function xB(s){return s.kind===199}function Iv(s){return s.kind===200}function GB(s){return s.kind===201}function EE(s){return s.kind===202}function Um(s){return s.kind===206}function mN(s){return s.kind===205}function zT(s){return s.kind===204}function Km(s){return s.kind===207}function p2(s){return s.kind===208}function hg(s){return s.kind===209}function OI(s){return s.kind===210}function og(s){return s.kind===211}function jo(s){return s.kind===212}function Yg(s){return s.kind===213}function Zl(s){return s.kind===214}function f2(s){return s.kind===215}function MI(s){return s.kind===216}function xF(s){return s.kind===217}function gI(s){return s.kind===218}function UA(s){return s.kind===219}function lA(s){return s.kind===220}function GF(s){return s.kind===221}function CN(s){return s.kind===222}function qT(s){return s.kind===223}function I1(s){return s.kind===224}function T0(s){return s.kind===225}function ek(s){return s.kind===226}function fo(s){return s.kind===227}function Lw(s){return s.kind===228}function FF(s){return s.kind===229}function Hd(s){return s.kind===230}function of(s){return s.kind===231}function vd(s){return s.kind===232}function yp(s){return s.kind===233}function l_(s){return s.kind===234}function Yd(s){return s.kind===235}function Qg(s){return s.kind===239}function hv(s){return s.kind===236}function Du(s){return s.kind===237}function F3(s){return s.kind===238}function ly(s){return s.kind===356}function ode(s){return s.kind===357}function pie(s){return s.kind===240}function FPt(s){return s.kind===241}function $u(s){return s.kind===242}function Ch(s){return s.kind===244}function A$e(s){return s.kind===243}function VC(s){return s.kind===245}function Z3(s){return s.kind===246}function t$r(s){return s.kind===247}function d$e(s){return s.kind===248}function L3(s){return s.kind===249}function zLe(s){return s.kind===250}function sEe(s){return s.kind===251}function r$r(s){return s.kind===252}function n$r(s){return s.kind===253}function I2(s){return s.kind===254}function ZPt(s){return s.kind===255}function ade(s){return s.kind===256}function FP(s){return s.kind===257}function p$e(s){return s.kind===258}function mU(s){return s.kind===259}function i$r(s){return s.kind===260}function nc(s){return s.kind===261}function u_(s){return s.kind===262}function ih(s){return s.kind===263}function pm(s){return s.kind===264}function g_(s){return s.kind===265}function FB(s){return s.kind===266}function V3(s){return s.kind===267}function xh(s){return s.kind===268}function _N(s){return s.kind===269}function cde(s){return s.kind===270}function oEe(s){return s.kind===271}function km(s){return s.kind===272}function Mf(s){return s.kind===273}function Vw(s){return s.kind===274}function s$r(s){return s.kind===303}function LPt(s){return s.kind===301}function o$r(s){return s.kind===302}function CU(s){return s.kind===301}function VPt(s){return s.kind===302}function Zx(s){return s.kind===275}function tk(s){return s.kind===281}function yN(s){return s.kind===276}function uy(s){return s.kind===277}function Cf(s){return s.kind===278}function Gh(s){return s.kind===279}function mv(s){return s.kind===280}function R0(s){return s.kind===282}function qLe(s){return s.kind===80||s.kind===11}function a$r(s){return s.kind===283}function PPt(s){return s.kind===354}function _z(s){return s.kind===358}function ZF(s){return s.kind===284}function bN(s){return s.kind===285}function _U(s){return s.kind===286}function $T(s){return s.kind===287}function rQ(s){return s.kind===288}function P3(s){return s.kind===289}function Pw(s){return s.kind===290}function WPt(s){return s.kind===291}function EN(s){return s.kind===292}function nQ(s){return s.kind===293}function yz(s){return s.kind===294}function fie(s){return s.kind===295}function eR(s){return s.kind===296}function Iie(s){return s.kind===297}function lde(s){return s.kind===298}function h1(s){return s.kind===299}function iQ(s){return s.kind===300}function fm(s){return s.kind===304}function a0(s){return s.kind===305}function Lx(s){return s.kind===306}function LF(s){return s.kind===307}function ll(s){return s.kind===308}function OPt(s){return s.kind===309}function W3(s){return s.kind===310}function ude(s){return s.kind===311}function O3(s){return s.kind===312}function MPt(s){return s.kind===325}function HPt(s){return s.kind===326}function c$r(s){return s.kind===327}function YPt(s){return s.kind===313}function QPt(s){return s.kind===314}function hie(s){return s.kind===315}function $Le(s){return s.kind===316}function f$e(s){return s.kind===317}function mie(s){return s.kind===318}function e9e(s){return s.kind===319}function l$r(s){return s.kind===320}function tR(s){return s.kind===321}function yU(s){return s.kind===323}function qL(s){return s.kind===324}function bz(s){return s.kind===329}function u$r(s){return s.kind===331}function XPt(s){return s.kind===333}function I$e(s){return s.kind===339}function h$e(s){return s.kind===334}function m$e(s){return s.kind===335}function C$e(s){return s.kind===336}function _$e(s){return s.kind===337}function t9e(s){return s.kind===338}function Cie(s){return s.kind===340}function y$e(s){return s.kind===332}function g$r(s){return s.kind===348}function aEe(s){return s.kind===341}function cS(s){return s.kind===342}function r9e(s){return s.kind===343}function b$e(s){return s.kind===344}function gde(s){return s.kind===345}function ZB(s){return s.kind===346}function bU(s){return s.kind===347}function A$r(s){return s.kind===328}function JPt(s){return s.kind===349}function n9e(s){return s.kind===330}function i9e(s){return s.kind===351}function d$r(s){return s.kind===350}function SN(s){return s.kind===352}function _ie(s){return s.kind===353}var Ade=new WeakMap;function E$e(s,c){var g;let d=s.kind;return z6(d)?d===353?s._children:(g=Ade.get(c))==null?void 0:g.get(s):E}function UPt(s,c,g){s.kind===353&&pe.fail("Should not need to re-set the children of a SyntaxList.");let d=Ade.get(c);return d===void 0&&(d=new WeakMap,Ade.set(c,d)),d.set(s,g),g}function S$e(s,c){var g;s.kind===353&&pe.fail("Did not expect to unset the children of a SyntaxList."),(g=Ade.get(c))==null||g.delete(s)}function KPt(s,c){let g=Ade.get(s);g!==void 0&&(Ade.delete(s),Ade.set(c,g))}function cEe(s){return s.createExportDeclaration(void 0,!1,s.createNamedExports([]),void 0)}function EU(s,c,g,d){if(Un(g))return gn(s.createElementAccessExpression(c,g.expression),d);{let h=gn(_w(g)?s.createPropertyAccessExpression(c,g):s.createElementAccessExpression(c,g),g);return Gw(h,128),h}}function jPt(s,c){let g=H3.createIdentifier(s||"React");return XA(g,$l(c)),g}function zPt(s,c,g){if(zi(c)){let d=zPt(s,c.left,g),h=s.createIdentifier(Vo(c.right));return h.escapedText=c.right.escapedText,s.createPropertyAccessExpression(d,h)}else return jPt(Vo(c),g)}function v$e(s,c,g,d){return c?zPt(s,c,d):s.createPropertyAccessExpression(jPt(g,d),"createElement")}function D2s(s,c,g,d){return c?zPt(s,c,d):s.createPropertyAccessExpression(jPt(g,d),"Fragment")}function qPt(s,c,g,d,h,_){let S=[g];if(d&&S.push(d),h&&h.length>0)if(d||S.push(s.createNull()),h.length>1)for(let R of h)N0(R),S.push(R);else S.push(h[0]);return gn(s.createCallExpression(c,void 0,S),_)}function $Pt(s,c,g,d,h,_,S){let T=[D2s(s,g,d,_),s.createNull()];if(h&&h.length>0)if(h.length>1)for(let W of h)N0(W),T.push(W);else T.push(h[0]);return gn(s.createCallExpression(v$e(s,c,d,_),void 0,T),S)}function B$e(s,c,g){if(u_(c)){let d=ma(c.declarations),h=s.updateVariableDeclaration(d,d.name,void 0,void 0,g);return gn(s.createVariableStatement(void 0,s.updateVariableDeclarationList(c,[h])),c)}else{let d=gn(s.createAssignment(c,g),c);return gn(s.createExpressionStatement(d),c)}}function lEe(s,c){if(zi(c)){let g=lEe(s,c.left),d=XA(gn(s.cloneNode(c.right),c.right),c.right.parent);return gn(s.createPropertyAccessExpression(g,d),c)}else return XA(gn(s.cloneNode(c),c),c.parent)}function w$e(s,c){return Ir(c)?s.createStringLiteralFromNode(c):Un(c)?XA(gn(s.cloneNode(c.expression),c.expression),c.expression.parent):XA(gn(s.cloneNode(c),c),c.parent)}function k2s(s,c,g,d,h){let{firstAccessor:_,getAccessor:S,setAccessor:R}=BP(c,g);if(g===_)return gn(s.createObjectDefinePropertyCall(d,w$e(s,g.name),s.createPropertyDescriptor({enumerable:s.createFalse(),configurable:!0,get:S&&gn(ua(s.createFunctionExpression($R(S),void 0,void 0,void 0,S.parameters,void 0,S.body),S),S),set:R&&gn(ua(s.createFunctionExpression($R(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!h)),_)}function x2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),c.initializer),c),c)}function G2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),s.cloneNode(c.name)),c),c)}function F2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),ua(gn(s.createFunctionExpression($R(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function eWt(s,c,g,d){switch(g.name&&p(g.name)&&pe.failBadSyntaxKind(g.name,"Private identifiers are not allowed in object literals."),g.kind){case 178:case 179:return k2s(s,c.properties,g,d,!!c.multiLine);case 304:return x2s(s,g,d);case 305:return G2s(s,g,d);case 175:return F2s(s,g,d)}}function s9e(s,c,g,d,h){let _=c.operator;pe.assert(_===46||_===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let S=s.createTempVariable(d);g=s.createAssignment(S,g),gn(g,c.operand);let R=T0(c)?s.createPrefixUnaryExpression(_,S):s.createPostfixUnaryExpression(S,_);return gn(R,c),h&&(R=s.createAssignment(h,R),gn(R,c)),g=s.createComma(g,R),gn(g,c),ek(c)&&(g=s.createComma(g,S),gn(g,c)),g}function T$e(s){return(tA(s)&65536)!==0}function VF(s){return(tA(s)&32768)!==0}function o9e(s){return(tA(s)&16384)!==0}function p$r(s){return Zg(s.expression)&&s.expression.text==="use strict"}function R$e(s){for(let c of s)if(nS(c)){if(p$r(c))return c}else break}function tWt(s){let c=Nc(s);return c!==void 0&&nS(c)&&p$r(c)}function uEe(s){return s.kind===227&&s.operatorToken.kind===28}function dde(s){return uEe(s)||ode(s)}function sQ(s){return gI(s)&&wo(s)&&!!ov(s)}function yie(s){let c=eN(s);return pe.assertIsDefined(c),c}function a9e(s,c=63){switch(s.kind){case 218:return c&-2147483648&&sQ(s)?!1:(c&1)!==0;case 217:case 235:return(c&2)!==0;case 239:return(c&34)!==0;case 234:return(c&16)!==0;case 236:return(c&4)!==0;case 356:return(c&8)!==0}return!1}function HI(s,c=63){for(;a9e(s,c);)s=s.expression;return s}function rWt(s,c=63){let g=s.parent;for(;a9e(g,c);)g=g.parent,pe.assert(g);return g}function N0(s){return Md(s,!0)}function gEe(s){let c=Dd(s,ll),g=c&&c.emitNode;return g&&g.externalHelpersModuleName}function nWt(s){let c=Dd(s,ll),g=c&&c.emitNode;return!!g&&(!!g.externalHelpersModuleName||!!g.externalHelpers)}function N$e(s,c,g,d,h,_,S){if(d.importHelpers&&g3(g,d)){let R=i0(d),T=NU(g,d),W=Z2s(g);if(T!==1&&(R>=5&&R<=99||T===99||T===void 0&&R===200)){if(W){let V=[];for(let M of W){let ee=M.importName;ee&&Qi(V,ee)}if(jt(V)){V.sort(Ca);let M=s.createNamedImports(At(V,Ie=>u7(g,Ie)?s.createImportSpecifier(!1,void 0,s.createIdentifier(Ie)):s.createImportSpecifier(!1,s.createIdentifier(Ie),c.getUnscopedHelperName(Ie)))),ee=Dd(g,ll),re=c_(ee);re.externalHelpers=!0;let ge=s.createImportDeclaration(void 0,s.createImportClause(void 0,void 0,M),s.createStringLiteral(PD),void 0);return N3(ge,2),ge}}}else{let V=L2s(s,g,d,W,h,_||S);if(V){let M=s.createImportEqualsDeclaration(void 0,!1,V,s.createExternalModuleReference(s.createStringLiteral(PD)));return N3(M,2),M}}}}function Z2s(s){return Me(zbe(s),c=>!c.scoped)}function L2s(s,c,g,d,h,_){let S=gEe(c);if(S)return S;if(jt(d)||(h||kw(g)&&_)&&Vde(c,g)<4){let T=Dd(c,ll),W=c_(T);return W.externalHelpersModuleName||(W.externalHelpersModuleName=s.createUniqueName(PD))}}function bie(s,c,g){let d=JJ(c);if(d&&!h3(c)&&!wY(c)){let h=d.name;return h.kind===11?s.getGeneratedNameForNode(c):kp(h)?h:s.createIdentifier(mF(g,h)||Vo(h))}if(c.kind===273&&c.importClause||c.kind===279&&c.moduleSpecifier)return s.getGeneratedNameForNode(c)}function Ez(s,c,g,d,h,_){let S=LY(c);if(S&&Zg(S))return P2s(c,d,s,h,_)||V2s(s,S,g)||s.cloneNode(S)}function V2s(s,c,g){let d=g.renamedDependencies&&g.renamedDependencies.get(c.text);return d?s.createStringLiteral(d):void 0}function AEe(s,c,g,d){if(c){if(c.moduleName)return s.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return s.createStringLiteral(Hye(g,c.fileName))}}function P2s(s,c,g,d,h){return AEe(g,d.getExternalModuleFileFromDeclaration(s),c,h)}function dEe(s){if(uP(s))return s.initializer;if(fm(s)){let c=s.initializer;return Jm(c,!0)?c.right:void 0}if(a0(s))return s.objectAssignmentInitializer;if(Jm(s,!0))return s.right;if(of(s))return dEe(s.expression)}function ZP(s){if(uP(s))return s.name;if(yw(s)){switch(s.kind){case 304:return ZP(s.initializer);case 305:return s.name;case 306:return ZP(s.expression)}return}return Jm(s,!0)?ZP(s.left):of(s)?ZP(s.expression):s}function c9e(s){switch(s.kind){case 170:case 209:return s.dotDotDotToken;case 231:case 306:return s}}function D$e(s){let c=l9e(s);return pe.assert(!!c||Lx(s),"Invalid property name for binding element."),c}function l9e(s){switch(s.kind){case 209:if(s.propertyName){let g=s.propertyName;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&f$r(g.expression)?g.expression:g}break;case 304:if(s.name){let g=s.name;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&f$r(g.expression)?g.expression:g}break;case 306:return s.name&&p(s.name)?pe.failBadSyntaxKind(s.name):s.name}let c=ZP(s);if(c&&VI(c))return c}function f$r(s){let c=s.kind;return c===11||c===9}function Eie(s){switch(s.kind){case 207:case 208:case 210:return s.elements;case 211:return s.properties}}function k$e(s){if(s){let c=s;for(;;){if(Ir(c)||!c.body)return Ir(c)?c:c.name;c=c.body}}}function I$r(s){let c=s.kind;return c===177||c===179}function iWt(s){let c=s.kind;return c===177||c===178||c===179}function x$e(s){let c=s.kind;return c===304||c===305||c===263||c===177||c===182||c===176||c===283||c===244||c===265||c===266||c===267||c===268||c===272||c===273||c===271||c===279||c===278}function sWt(s){let c=s.kind;return c===176||c===304||c===305||c===283||c===271}function oWt(s){return UT(s)||Cz(s)}function aWt(s){return Ir(s)||Fx(s)}function cWt(s){return le(s)||mz(s)||sde(s)}function lWt(s){return UT(s)||mz(s)||sde(s)}function uWt(s){return Ir(s)||Zg(s)}function W2s(s){return s===43}function O2s(s){return s===42||s===44||s===45}function M2s(s){return W2s(s)||O2s(s)}function H2s(s){return s===40||s===41}function Y2s(s){return H2s(s)||M2s(s)}function Q2s(s){return s===48||s===49||s===50}function G$e(s){return Q2s(s)||Y2s(s)}function X2s(s){return s===30||s===33||s===32||s===34||s===104||s===103}function J2s(s){return X2s(s)||G$e(s)}function U2s(s){return s===35||s===37||s===36||s===38}function K2s(s){return U2s(s)||J2s(s)}function j2s(s){return s===51||s===52||s===53}function z2s(s){return j2s(s)||K2s(s)}function q2s(s){return s===56||s===57}function $2s(s){return q2s(s)||z2s(s)}function eSs(s){return s===61||$2s(s)||UD(s)}function tSs(s){return eSs(s)||s===28}function gWt(s){return tSs(s.kind)}var F$e;(s=>{function c(V,M,ee,re,ge,Ie,_e){let Ee=M>0?ge[M-1]:void 0;return pe.assertEqual(ee[M],c),ge[M]=V.onEnter(re[M],Ee,_e),ee[M]=R(V,c),M}s.enter=c;function g(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],g),pe.assertIsDefined(V.onLeft),ee[M]=R(V,g);let Ee=V.onLeft(re[M].left,ge[M],re[M]);return Ee?(W(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.left=g;function d(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],d),pe.assertIsDefined(V.onOperator),ee[M]=R(V,d),V.onOperator(re[M].operatorToken,ge[M],re[M]),M}s.operator=d;function h(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],h),pe.assertIsDefined(V.onRight),ee[M]=R(V,h);let Ee=V.onRight(re[M].right,ge[M],re[M]);return Ee?(W(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.right=h;function _(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],_),ee[M]=R(V,_);let Ee=V.onExit(re[M],ge[M]);if(M>0){if(M--,V.foldState){let Ne=ee[M]===_?"right":"left";ge[M]=V.foldState(ge[M],Ee,Ne)}}else Ie.value=Ee;return M}s.exit=_;function S(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],S),M}s.done=S;function R(V,M){switch(M){case c:if(V.onLeft)return g;case g:if(V.onOperator)return d;case d:if(V.onRight)return h;case h:return _;case _:return S;case S:return S;default:pe.fail("Invalid state")}}s.nextState=R;function T(V,M,ee,re,ge){return V++,M[V]=c,ee[V]=ge,re[V]=void 0,V}function W(V,M,ee){if(pe.shouldAssert(2))for(;V>=0;)pe.assert(M[V]!==ee,"Circular traversal detected."),V--}})(F$e||(F$e={}));var rSs=class{constructor(s,c,g,d,h,_){this.onEnter=s,this.onLeft=c,this.onOperator=g,this.onRight=d,this.onExit=h,this.foldState=_}};function u9e(s,c,g,d,h,_){let S=new rSs(s,c,g,d,h,_);return R;function R(T,W){let V={value:void 0},M=[F$e.enter],ee=[T],re=[void 0],ge=0;for(;M[ge]!==F$e.done;)ge=M[ge](S,ge,M,ee,re,V,W);return pe.assertEqual(ge,0),V.value}}function nSs(s){return s===95||s===90}function pEe(s){let c=s.kind;return nSs(c)}function AWt(s,c){if(c!==void 0)return c.length===0?c:gn(s.createNodeArray([],c.hasTrailingComma),c)}function fEe(s){var c;let g=s.emitNode.autoGenerate;if(g.flags&4){let d=g.id,h=s,_=h.original;for(;_;){h=_;let S=(c=h.emitNode)==null?void 0:c.autoGenerate;if(_w(h)&&(S===void 0||S.flags&4&&S.id!==d))break;_=h.original}return h}return s}function Sie(s,c){return typeof s=="object"?M3(!1,s.prefix,s.node,s.suffix,c):typeof s=="string"?s.length>0&&s.charCodeAt(0)===35?s.slice(1):s:""}function iSs(s,c){return typeof s=="string"?s:sSs(s,pe.checkDefined(c))}function sSs(s,c){return TL(s)?c(s).slice(1):kp(s)?c(s):p(s)?s.escapedText.slice(1):Vo(s)}function M3(s,c,g,d,h){return c=Sie(c,h),d=Sie(d,h),g=iSs(g,h),`${s?"#":""}${c}${g}${d}`}function Z$e(s,c,g,d){return s.updatePropertyDeclaration(c,g,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function dWt(s,c,g,d,h=s.createThis()){return s.createGetAccessorDeclaration(g,d,[],void 0,s.createBlock([s.createReturnStatement(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function pWt(s,c,g,d,h=s.createThis()){return s.createSetAccessorDeclaration(g,d,[s.createParameterDeclaration(void 0,void 0,"value")],s.createBlock([s.createExpressionStatement(s.createAssignment(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),s.createIdentifier("value")))]))}function g9e(s){let c=s.expression;for(;;){if(c=HI(c),ode(c)){c=Ei(c.elements);continue}if(uEe(c)){c=c.right;continue}if(Jm(c,!0)&&kp(c.left))return c;break}}function oSs(s){return gI(s)&&sp(s)&&!s.emitNode}function A9e(s,c){if(oSs(s))A9e(s.expression,c);else if(uEe(s))A9e(s.left,c),A9e(s.right,c);else if(ode(s))for(let g of s.elements)A9e(g,c);else c.push(s)}function fWt(s){let c=[];return A9e(s,c),c}function IEe(s){if(s.transformFlags&65536)return!0;if(s.transformFlags&128)for(let c of Eie(s)){let g=ZP(c);if(g&&CY(g)&&(g.transformFlags&65536||g.transformFlags&128&&IEe(g)))return!0}return!1}function gn(s,c){return c?TB(s,c.pos,c.end):s}function LB(s){let c=s.kind;return c===169||c===170||c===172||c===173||c===174||c===175||c===177||c===178||c===179||c===182||c===186||c===219||c===220||c===232||c===244||c===263||c===264||c===265||c===266||c===267||c===268||c===272||c===273||c===278||c===279}function oQ(s){let c=s.kind;return c===170||c===173||c===175||c===178||c===179||c===232||c===264}var h$r,m$r,C$r,_$r,y$r,IWt={createBaseSourceFileNode:s=>new(y$r||(y$r=ZC.getSourceFileConstructor()))(s,-1,-1),createBaseIdentifierNode:s=>new(C$r||(C$r=ZC.getIdentifierConstructor()))(s,-1,-1),createBasePrivateIdentifierNode:s=>new(_$r||(_$r=ZC.getPrivateIdentifierConstructor()))(s,-1,-1),createBaseTokenNode:s=>new(m$r||(m$r=ZC.getTokenConstructor()))(s,-1,-1),createBaseNode:s=>new(h$r||(h$r=ZC.getNodeConstructor()))(s,-1,-1)},H3=iie(1,IWt);function Bi(s,c){return c&&s(c)}function ol(s,c,g){if(g){if(c)return c(g);for(let d of g){let h=s(d);if(h)return h}}}function L$e(s,c){return s.charCodeAt(c+1)===42&&s.charCodeAt(c+2)===42&&s.charCodeAt(c+3)!==47}function hEe(s){return F(s.statements,aSs)||cSs(s)}function aSs(s){return LB(s)&&lSs(s,95)||km(s)&&ZF(s.moduleReference)||Mf(s)||Cf(s)||Gh(s)?s:void 0}function cSs(s){return s.flags&8388608?b$r(s):void 0}function b$r(s){return uSs(s)?s:Lu(s,b$r)}function lSs(s,c){return jt(s.modifiers,g=>g.kind===c)}function uSs(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}var gSs={167:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},169:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.constraint)||Bi(g,c.default)||Bi(g,c.expression)},305:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.equalsToken)||Bi(g,c.objectAssignmentInitializer)},306:function(c,g,d){return Bi(g,c.expression)},170:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},173:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},172:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},304:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.initializer)},261:function(c,g,d){return Bi(g,c.name)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},209:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.propertyName)||Bi(g,c.name)||Bi(g,c.initializer)},182:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},186:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},185:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},180:E$r,181:E$r,175:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},174:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},177:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},178:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},179:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},263:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},219:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},220:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.equalsGreaterThanToken)||Bi(g,c.body)},176:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.body)},184:function(c,g,d){return Bi(g,c.typeName)||ol(g,d,c.typeArguments)},183:function(c,g,d){return Bi(g,c.assertsModifier)||Bi(g,c.parameterName)||Bi(g,c.type)},187:function(c,g,d){return Bi(g,c.exprName)||ol(g,d,c.typeArguments)},188:function(c,g,d){return ol(g,d,c.members)},189:function(c,g,d){return Bi(g,c.elementType)},190:function(c,g,d){return ol(g,d,c.elements)},193:S$r,194:S$r,195:function(c,g,d){return Bi(g,c.checkType)||Bi(g,c.extendsType)||Bi(g,c.trueType)||Bi(g,c.falseType)},196:function(c,g,d){return Bi(g,c.typeParameter)},206:function(c,g,d){return Bi(g,c.argument)||Bi(g,c.attributes)||Bi(g,c.qualifier)||ol(g,d,c.typeArguments)},303:function(c,g,d){return Bi(g,c.assertClause)},197:v$r,199:v$r,200:function(c,g,d){return Bi(g,c.objectType)||Bi(g,c.indexType)},201:function(c,g,d){return Bi(g,c.readonlyToken)||Bi(g,c.typeParameter)||Bi(g,c.nameType)||Bi(g,c.questionToken)||Bi(g,c.type)||ol(g,d,c.members)},202:function(c,g,d){return Bi(g,c.literal)},203:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)},207:B$r,208:B$r,210:function(c,g,d){return ol(g,d,c.elements)},211:function(c,g,d){return ol(g,d,c.properties)},212:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.name)},213:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.argumentExpression)},214:w$r,215:w$r,216:function(c,g,d){return Bi(g,c.tag)||Bi(g,c.questionDotToken)||ol(g,d,c.typeArguments)||Bi(g,c.template)},217:function(c,g,d){return Bi(g,c.type)||Bi(g,c.expression)},218:function(c,g,d){return Bi(g,c.expression)},221:function(c,g,d){return Bi(g,c.expression)},222:function(c,g,d){return Bi(g,c.expression)},223:function(c,g,d){return Bi(g,c.expression)},225:function(c,g,d){return Bi(g,c.operand)},230:function(c,g,d){return Bi(g,c.asteriskToken)||Bi(g,c.expression)},224:function(c,g,d){return Bi(g,c.expression)},226:function(c,g,d){return Bi(g,c.operand)},227:function(c,g,d){return Bi(g,c.left)||Bi(g,c.operatorToken)||Bi(g,c.right)},235:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},236:function(c,g,d){return Bi(g,c.expression)},239:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},237:function(c,g,d){return Bi(g,c.name)},228:function(c,g,d){return Bi(g,c.condition)||Bi(g,c.questionToken)||Bi(g,c.whenTrue)||Bi(g,c.colonToken)||Bi(g,c.whenFalse)},231:function(c,g,d){return Bi(g,c.expression)},242:T$r,269:T$r,308:function(c,g,d){return ol(g,d,c.statements)||Bi(g,c.endOfFileToken)},244:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.declarationList)},262:function(c,g,d){return ol(g,d,c.declarations)},245:function(c,g,d){return Bi(g,c.expression)},246:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.thenStatement)||Bi(g,c.elseStatement)},247:function(c,g,d){return Bi(g,c.statement)||Bi(g,c.expression)},248:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},249:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.condition)||Bi(g,c.incrementor)||Bi(g,c.statement)},250:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},251:function(c,g,d){return Bi(g,c.awaitModifier)||Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},252:R$r,253:R$r,254:function(c,g,d){return Bi(g,c.expression)},255:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},256:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.caseBlock)},270:function(c,g,d){return ol(g,d,c.clauses)},297:function(c,g,d){return Bi(g,c.expression)||ol(g,d,c.statements)},298:function(c,g,d){return ol(g,d,c.statements)},257:function(c,g,d){return Bi(g,c.label)||Bi(g,c.statement)},258:function(c,g,d){return Bi(g,c.expression)},259:function(c,g,d){return Bi(g,c.tryBlock)||Bi(g,c.catchClause)||Bi(g,c.finallyBlock)},300:function(c,g,d){return Bi(g,c.variableDeclaration)||Bi(g,c.block)},171:function(c,g,d){return Bi(g,c.expression)},264:N$r,232:N$r,265:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.heritageClauses)||ol(g,d,c.members)},266:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||Bi(g,c.type)},267:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.members)},307:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},268:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.body)},272:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.moduleReference)},273:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.importClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},274:function(c,g,d){return Bi(g,c.name)||Bi(g,c.namedBindings)},301:function(c,g,d){return ol(g,d,c.elements)},302:function(c,g,d){return Bi(g,c.name)||Bi(g,c.value)},271:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)},275:function(c,g,d){return Bi(g,c.name)},281:function(c,g,d){return Bi(g,c.name)},276:D$r,280:D$r,279:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.exportClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},277:k$r,282:k$r,278:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.expression)},229:function(c,g,d){return Bi(g,c.head)||ol(g,d,c.templateSpans)},240:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.literal)},204:function(c,g,d){return Bi(g,c.head)||ol(g,d,c.templateSpans)},205:function(c,g,d){return Bi(g,c.type)||Bi(g,c.literal)},168:function(c,g,d){return Bi(g,c.expression)},299:function(c,g,d){return ol(g,d,c.types)},234:function(c,g,d){return Bi(g,c.expression)||ol(g,d,c.typeArguments)},284:function(c,g,d){return Bi(g,c.expression)},283:function(c,g,d){return ol(g,d,c.modifiers)},357:function(c,g,d){return ol(g,d,c.elements)},285:function(c,g,d){return Bi(g,c.openingElement)||ol(g,d,c.children)||Bi(g,c.closingElement)},289:function(c,g,d){return Bi(g,c.openingFragment)||ol(g,d,c.children)||Bi(g,c.closingFragment)},286:x$r,287:x$r,293:function(c,g,d){return ol(g,d,c.properties)},292:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},294:function(c,g,d){return Bi(g,c.expression)},295:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.expression)},288:function(c,g,d){return Bi(g,c.tagName)},296:function(c,g,d){return Bi(g,c.namespace)||Bi(g,c.name)},191:pde,192:pde,310:pde,316:pde,315:pde,317:pde,319:pde,318:function(c,g,d){return ol(g,d,c.parameters)||Bi(g,c.type)},321:function(c,g,d){return(typeof c.comment=="string"?void 0:ol(g,d,c.comment))||ol(g,d,c.tags)},348:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.name)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},311:function(c,g,d){return Bi(g,c.name)},312:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},342:G$r,349:G$r,331:function(c,g,d){return Bi(g,c.tagName)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},330:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},329:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},346:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.constraint)||ol(g,d,c.typeParameters)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},347:function(c,g,d){return Bi(g,c.tagName)||(c.typeExpression&&c.typeExpression.kind===310?Bi(g,c.typeExpression)||Bi(g,c.fullName)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment)):Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment)))},339:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},343:fde,345:fde,344:fde,341:fde,351:fde,350:fde,340:fde,324:function(c,g,d){return F(c.typeParameters,g)||F(c.parameters,g)||Bi(g,c.type)},325:hWt,326:hWt,327:hWt,323:function(c,g,d){return F(c.jsDocPropertyTags,g)},328:vie,333:vie,334:vie,335:vie,336:vie,337:vie,332:vie,338:vie,352:ASs,356:dSs};function E$r(s,c,g){return ol(c,g,s.typeParameters)||ol(c,g,s.parameters)||Bi(c,s.type)}function S$r(s,c,g){return ol(c,g,s.types)}function v$r(s,c,g){return Bi(c,s.type)}function B$r(s,c,g){return ol(c,g,s.elements)}function w$r(s,c,g){return Bi(c,s.expression)||Bi(c,s.questionDotToken)||ol(c,g,s.typeArguments)||ol(c,g,s.arguments)}function T$r(s,c,g){return ol(c,g,s.statements)}function R$r(s,c,g){return Bi(c,s.label)}function N$r(s,c,g){return ol(c,g,s.modifiers)||Bi(c,s.name)||ol(c,g,s.typeParameters)||ol(c,g,s.heritageClauses)||ol(c,g,s.members)}function D$r(s,c,g){return ol(c,g,s.elements)}function k$r(s,c,g){return Bi(c,s.propertyName)||Bi(c,s.name)}function x$r(s,c,g){return Bi(c,s.tagName)||ol(c,g,s.typeArguments)||Bi(c,s.attributes)}function pde(s,c,g){return Bi(c,s.type)}function G$r(s,c,g){return Bi(c,s.tagName)||(s.isNameFirst?Bi(c,s.name)||Bi(c,s.typeExpression):Bi(c,s.typeExpression)||Bi(c,s.name))||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function fde(s,c,g){return Bi(c,s.tagName)||Bi(c,s.typeExpression)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function hWt(s,c,g){return Bi(c,s.name)}function vie(s,c,g){return Bi(c,s.tagName)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function ASs(s,c,g){return Bi(c,s.tagName)||Bi(c,s.importClause)||Bi(c,s.moduleSpecifier)||Bi(c,s.attributes)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function dSs(s,c,g){return Bi(c,s.expression)}function Lu(s,c,g){if(s===void 0||s.kind<=166)return;let d=gSs[s.kind];return d===void 0?void 0:d(s,c,g)}function Sz(s,c,g){let d=F$r(s),h=[];for(;h.length=0;--R)d.push(_[R]),h.push(S)}else{let R=c(_,S);if(R){if(R==="skip")continue;return R}if(_.kind>=167)for(let T of F$r(_))d.push(T),h.push(_)}}}function F$r(s){let c=[];return Lu(s,g,g),c;function g(d){c.unshift(d)}}function Z$r(s){s.externalModuleIndicator=hEe(s)}function vz(s,c,g,d=!1,h){var _,S;(_=ki)==null||_.push(ki.Phase.Parse,"createSourceFile",{path:s},!0),Mc("beforeParse");let R,{languageVersion:T,setExternalModuleIndicator:W,impliedNodeFormat:V,jsDocParsingMode:M}=typeof g=="object"?g:{languageVersion:g};if(T===100)R=Y3.parseSourceFile(s,c,T,void 0,d,6,Dc,M);else{let ee=V===void 0?W:re=>(re.impliedNodeFormat=V,(W||Z$r)(re));R=Y3.parseSourceFile(s,c,T,void 0,d,h,ee,M)}return Mc("afterParse"),Pf("Parse","beforeParse","afterParse"),(S=ki)==null||S.pop(),R}function Bz(s,c){return Y3.parseIsolatedEntityName(s,c)}function mEe(s,c){return Y3.parseJsonText(s,c)}function xm(s){return s.externalModuleIndicator!==void 0}function V$e(s,c,g,d=!1){let h=P$e.updateSourceFile(s,c,g,d);return h.flags|=s.flags&12582912,h}function mWt(s,c,g){let d=Y3.JSDocParser.parseIsolatedJSDocComment(s,c,g);return d&&d.jsDoc&&Y3.fixupParentReferences(d.jsDoc),d}function L$r(s,c,g){return Y3.JSDocParser.parseJSDocTypeExpressionForTests(s,c,g)}var Y3;(s=>{var c=wb(99,!0),g=40960,d,h,_,S,R;function T(rt){return Ht++,rt}var W={createBaseSourceFileNode:rt=>T(new R(rt,0,0)),createBaseIdentifierNode:rt=>T(new _(rt,0,0)),createBasePrivateIdentifierNode:rt=>T(new S(rt,0,0)),createBaseTokenNode:rt=>T(new h(rt,0,0)),createBaseNode:rt=>T(new d(rt,0,0))},V=iie(11,W),{createNodeArray:M,createNumericLiteral:ee,createStringLiteral:re,createLiteralLikeNode:ge,createIdentifier:Ie,createPrivateIdentifier:_e,createToken:Ee,createArrayLiteralExpression:Ne,createObjectLiteralExpression:Te,createPropertyAccessExpression:Ze,createPropertyAccessChain:We,createElementAccessExpression:Ue,createElementAccessChain:$e,createCallExpression:Ye,createCallChain:Tt,createNewExpression:ot,createParenthesizedExpression:Qe,createBlock:mt,createVariableStatement:ht,createExpressionStatement:_t,createIfStatement:Rt,createWhileStatement:Lt,createForStatement:Ke,createForOfStatement:Pt,createVariableDeclaration:_r,createVariableDeclarationList:Gt}=V,nt,Dt,tr,ur,Gr,dt,pr,st,ir,zt,Ht,Br,mn,jn,Zi,Ns,An=!0,si=!1;function ks(rt,Kt,xr,Tn,Ai=!1,Pi,Ba,Xo=0){var uo;if(Pi=GAe(rt,Pi),Pi===6){let Tl=su(rt,Kt,xr,Tn,Ai);return EEe(Tl,(uo=Tl.statements[0])==null?void 0:uo.expression,Tl.parseDiagnostics,!1,void 0),Tl.referencedFiles=E,Tl.typeReferenceDirectives=E,Tl.libReferenceDirectives=E,Tl.amdDependencies=E,Tl.hasNoDefaultLib=!1,Tl.pragmas=N,Tl}Zn(rt,Kt,xr,Tn,Pi,Xo);let Cc=Gl(xr,Ai,Pi,Ba||Z$r,Xo);return ya(),Cc}s.parseSourceFile=ks;function Ic(rt,Kt){Zn("",rt,Kt,void 0,1,0),Ot();let xr=en(!0),Tn=Je()===1&&!pr.length;return ya(),Tn?xr:void 0}s.parseIsolatedEntityName=Ic;function su(rt,Kt,xr=2,Tn,Ai=!1){Zn(rt,Kt,xr,Tn,6,0),Dt=Ns,Ot();let Pi=xe(),Ba,Xo;if(Je()===1)Ba=TA([],Pi,Pi),Xo=sh();else{let Tl;for(;Je()!==1;){let zA;switch(Je()){case 23:zA=nW();break;case 112:case 97:case 106:zA=sh();break;case 41:Vn(()=>Ot()===9&&Ot()!==59)?zA=g9():zA=p9();break;case 9:case 11:if(Vn(()=>Ot()!==59)){zA=Ln();break}default:zA=p9();break}Tl&&Ki(Tl)?Tl.push(zA):Tl?Tl=[Tl,zA]:(Tl=zA,Je()!==1&&En(Z.Unexpected_token))}let bp=Ki(Tl)?oi(Ne(Tl),Pi):pe.checkDefined(Tl),ep=_t(bp);oi(ep,Pi),Ba=TA([ep],Pi),Xo=jp(1,Z.Unexpected_token)}let uo=hn(rt,2,6,!1,Ba,Xo,Dt,Dc);Ai&&yr(uo),uo.nodeCount=Ht,uo.identifierCount=mn,uo.identifiers=Br,uo.parseDiagnostics=XL(pr,uo),st&&(uo.jsDocDiagnostics=XL(st,uo));let Cc=uo;return ya(),Cc}s.parseJsonText=su;function Zn(rt,Kt,xr,Tn,Ai,Pi){switch(d=ZC.getNodeConstructor(),h=ZC.getTokenConstructor(),_=ZC.getIdentifierConstructor(),S=ZC.getPrivateIdentifierConstructor(),R=ZC.getSourceFileConstructor(),nt=iu(rt),tr=Kt,ur=xr,ir=Tn,Gr=Ai,dt=Lne(Ai),pr=[],jn=0,Br=new Map,mn=0,Ht=0,Dt=0,An=!0,Gr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}si=!1,c.setText(tr),c.setOnError(Bt),c.setScriptTarget(ur),c.setLanguageVariant(dt),c.setScriptKind(Gr),c.setJSDocParsingMode(Pi)}function ya(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),tr=void 0,ur=void 0,ir=void 0,Gr=void 0,dt=void 0,Dt=0,pr=void 0,st=void 0,jn=0,Br=void 0,Zi=void 0,An=!0}function Gl(rt,Kt,xr,Tn,Ai){let Pi=PC(nt);Pi&&(Ns|=33554432),Dt=Ns,Ot();let Ba=uA(0,BE);pe.assert(Je()===1);let Xo=fr(),uo=Wo(sh(),Xo),Cc=hn(nt,rt,xr,Pi,Ba,uo,Dt,Tn);return W$e(Cc,tr),O$e(Cc,Tl),Cc.commentDirectives=c.getCommentDirectives(),Cc.nodeCount=Ht,Cc.identifierCount=mn,Cc.identifiers=Br,Cc.parseDiagnostics=XL(pr,Cc),Cc.jsDocParsingMode=Ai,st&&(Cc.jsDocDiagnostics=XL(st,Cc)),Kt&&yr(Cc),Cc;function Tl(bp,ep,zA){pr.push(QY(nt,tr,bp,ep,zA))}}let ba=!1;function Wo(rt,Kt){if(!Kt)return rt;pe.assert(!rt.jsDoc);let xr=Xt(pye(rt,tr),Tn=>VN.parseJSDocComment(rt,Tn.pos,Tn.end-Tn.pos));return xr.length&&(rt.jsDoc=xr),ba&&(ba=!1,rt.flags|=536870912),rt}function hc(rt){let Kt=ir,xr=P$e.createSyntaxCursor(rt);ir={currentNode:Tl};let Tn=[],Ai=pr;pr=[];let Pi=0,Ba=uo(rt.statements,0);for(;Ba!==-1;){let bp=rt.statements[Pi],ep=rt.statements[Ba];Or(Tn,rt.statements,Pi,Ba),Pi=Cc(rt.statements,Ba);let zA=Se(Ai,CS=>CS.start>=bp.pos),Bv=zA>=0?Se(Ai,CS=>CS.start>=ep.pos,zA):-1;zA>=0&&Or(pr,Ai,zA,Bv>=0?Bv:void 0),Wi(()=>{let CS=Ns;for(Ns|=65536,c.resetTokenState(ep.pos),Ot();Je()!==1;){let C9=c.getTokenFullStart(),_9=hm(0,BE);if(Tn.push(_9),C9===c.getTokenFullStart()&&Ot(),Pi>=0){let Kx=rt.statements[Pi];if(_9.end===Kx.pos)break;_9.end>Kx.pos&&(Pi=Cc(rt.statements,Pi+1))}}Ns=CS},2),Ba=Pi>=0?uo(rt.statements,Pi):-1}if(Pi>=0){let bp=rt.statements[Pi];Or(Tn,rt.statements,Pi);let ep=Se(Ai,zA=>zA.start>=bp.pos);ep>=0&&Or(pr,Ai,ep)}return ir=Kt,V.updateSourceFile(rt,gn(M(Tn),rt.statements));function Xo(bp){return!(bp.flags&65536)&&!!(bp.transformFlags&67108864)}function uo(bp,ep){for(let zA=ep;zA118}function fs(){return Je()===80?!0:Je()===127&&hr()||Je()===135&&nn()?!1:Je()>118}function bi(rt,Kt,xr=!0){return Je()===rt?(xr&&Ot(),!0):(Kt?En(Kt):En(Z._0_expected,Vi(rt)),!1)}let mc=Object.keys(ev).filter(rt=>rt.length>2);function gg(rt){if(MI(rt)){Mt(Yu(tr,rt.template.pos),rt.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Kt=Ir(rt)?Vo(rt):void 0;if(!Kt||!Uh(Kt,ur)){En(Z._0_expected,Vi(27));return}let xr=Yu(tr,rt.pos);switch(Kt){case"const":case"let":case"var":Mt(xr,rt.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Ag(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Mt(xr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Ag(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":Ag(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let Tn=Dr(Kt,mc,Fl)??_u(Kt);if(Tn){Mt(xr,rt.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,Tn);return}Je()!==0&&Mt(xr,rt.end,Z.Unexpected_keyword_or_identifier)}function Ag(rt,Kt,xr){Je()===xr?En(Kt):En(rt,c.getTokenValue())}function _u(rt){for(let Kt of mc)if(rt.length>Kt.length+2&&Ac(rt,Kt))return`${Kt} ${rt.slice(Kt.length)}`}function wI(rt,Kt,xr){if(Je()===60&&!c.hasPrecedingLineBreak()){En(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Je()===21){En(Z.Cannot_start_a_function_call_in_a_type_annotation),Ot();return}if(Kt&&!gu()){xr?En(Z._0_expected,Vi(27)):En(Z.Expected_for_property_initializer);return}if(!bg()){if(xr){En(Z._0_expected,Vi(27));return}gg(rt)}}function AI(rt){return Je()===rt?($r(),!0):(pe.assert(tAe(rt)),En(Z._0_expected,Vi(rt)),!1)}function pp(rt,Kt,xr,Tn){if(Je()===Kt){Ot();return}let Ai=En(Z._0_expected,Vi(Kt));xr&&Ai&&lg(Ai,QY(nt,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Vi(rt),Vi(Kt)))}function Dl(rt){return Je()===rt?(Ot(),!0):!1}function yu(rt){if(Je()===rt)return sh()}function tm(rt){if(Je()===rt)return dS()}function jp(rt,Kt,xr){return yu(rt)||$d(rt,!1,Kt||Z._0_expected,xr||Vi(rt))}function Xg(rt){let Kt=tm(rt);return Kt||(pe.assert(tAe(rt)),$d(rt,!1,Z._0_expected,Vi(rt)))}function sh(){let rt=xe(),Kt=Je();return Ot(),oi(Ee(Kt),rt)}function dS(){let rt=xe(),Kt=Je();return $r(),oi(Ee(Kt),rt)}function gu(){return Je()===27?!0:Je()===20||Je()===1||c.hasPrecedingLineBreak()}function bg(){return gu()?(Je()===27&&Ot(),!0):!1}function KA(){return bg()||bi(27)}function TA(rt,Kt,xr,Tn){let Ai=M(rt,Tn);return TB(Ai,Kt,xr??c.getTokenFullStart()),Ai}function oi(rt,Kt,xr){return TB(rt,Kt,xr??c.getTokenFullStart()),Ns&&(rt.flags|=Ns),si&&(si=!1,rt.flags|=262144),rt}function $d(rt,Kt,xr,...Tn){Kt?ds(c.getTokenFullStart(),0,xr,...Tn):xr&&En(xr,...Tn);let Ai=xe(),Pi=rt===80?Ie("",void 0):LD(rt)?V.createTemplateLiteralLikeNode(rt,"","",void 0):rt===9?ee("",void 0):rt===11?re("",void 0):rt===283?V.createMissingDeclaration():Ee(rt);return oi(Pi,Ai)}function YI(rt){let Kt=Br.get(rt);return Kt===void 0&&Br.set(rt,Kt=rt),Kt}function Fh(rt,Kt,xr){if(rt){mn++;let Xo=c.hasPrecedingJSDocLeadingAsterisks()?c.getTokenStart():xe(),uo=Je(),Cc=YI(c.getTokenValue()),Tl=c.hasExtendedUnicodeEscape();return In(),oi(Ie(Cc,uo,Tl),Xo)}if(Je()===81)return En(xr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),Fh(!0);if(Je()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return Fh(!0);mn++;let Tn=Je()===1,Ai=c.isReservedWord(),Pi=c.getTokenText(),Ba=Ai?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return $d(80,Tn,Kt||Ba,Pi)}function WC(rt){return Fh(gs(),void 0,rt)}function _f(rt,Kt){return Fh(fs(),rt,Kt)}function QI(rt){return Fh(Id(Je()),rt)}function ve(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&En(Z.Unicode_escape_sequence_cannot_appear_here),Fh(Id(Je()))}function mr(){return Id(Je())||Je()===11||Je()===9||Je()===10}function ln(){return Id(Je())||Je()===11}function ni(rt){if(Je()===11||Je()===9||Je()===10){let Kt=Ln();return Kt.text=YI(Kt.text),Kt}return rt&&Je()===23?Za():Je()===81?Go():QI()}function Ls(){return ni(!0)}function Za(){let rt=xe();bi(23);let Kt=Cs(Ay);return bi(24),oi(V.createComputedPropertyName(Kt),rt)}function Go(){let rt=xe(),Kt=_e(YI(c.getTokenValue()));return Ot(),oi(Kt,rt)}function Ss(rt){return Je()===rt&&Ui(rl)}function Uc(){return Ot(),c.hasPrecedingLineBreak()?!1:rm()}function rl(){switch(Je()){case 87:return Ot()===94;case 95:return Ot(),Je()===90?Vn(Gp):Je()===156?Vn(Lg):xd();case 90:return Gp();case 126:return Ot(),rm();case 139:case 153:return Ot(),_h();default:return Uc()}}function xd(){return Je()===60||Je()!==42&&Je()!==130&&Je()!==19&&rm()}function Lg(){return Ot(),xd()}function yf(){return VD(Je())&&Ui(rl)}function rm(){return Je()===23||Je()===19||Je()===42||Je()===26||mr()}function _h(){return Je()===23||mr()}function Gp(){return Ot(),Je()===86||Je()===100||Je()===120||Je()===60||Je()===128&&Vn(Hb)||Je()===134&&Vn(vv)}function oh(rt,Kt){if(af(rt))return!0;switch(rt){case 0:case 1:case 3:return!(Je()===27&&Kt)&&f9();case 2:return Je()===84||Je()===90;case 4:return Vn(MB);case 5:return Vn(aK)||Je()===27&&!Kt;case 6:return Je()===23||mr();case 12:switch(Je()){case 23:case 42:case 26:case 25:return!0;default:return mr()}case 18:return mr();case 9:return Je()===23||Je()===26||mr();case 24:return ln();case 7:return Je()===19?Vn(b1):Kt?fs()&&!or():Ob()&&!or();case 8:return fq();case 10:return Je()===28||Je()===26||fq();case 19:return Je()===103||Je()===87||fs();case 15:switch(Je()){case 28:case 25:return!0}case 11:return Je()===26||u0();case 16:return sn(!1);case 17:return sn(!0);case 20:case 21:return Je()===28||KP();case 22:return cK();case 23:return Je()===161&&Vn(Ux)?!1:Je()===11?!0:Id(Je());case 13:return Id(Je())||Je()===19;case 14:return!0;case 25:return!0;case 26:return pe.fail("ParsingContext.Count used as a context");default:pe.assertNever(rt,"Non-exhaustive case in 'isListElement'.")}}function b1(){if(pe.assert(Je()===19),Ot()===20){let rt=Ot();return rt===28||rt===19||rt===96||rt===119}return!0}function Z_(){return Ot(),fs()}function m2(){return Ot(),Id(Je())}function Vb(){return Ot(),fB(Je())}function or(){return Je()===119||Je()===96?Vn(qn):!1}function qn(){return Ot(),u0()}function Js(){return Ot(),KP()}function Hl(rt){if(Je()===1)return!0;switch(rt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Je()===20;case 3:return Je()===20||Je()===84||Je()===90;case 7:return Je()===19||Je()===96||Je()===119;case 8:return RA();case 19:return Je()===32||Je()===21||Je()===19||Je()===96||Je()===119;case 11:return Je()===22||Je()===27;case 15:case 21:case 10:return Je()===24;case 17:case 16:case 18:return Je()===22||Je()===24;case 20:return Je()!==28;case 22:return Je()===19||Je()===20;case 13:return Je()===32||Je()===44;case 14:return Je()===30&&Vn(AWe);default:return!1}}function RA(){return!!(gu()||dy(Je())||Je()===39)}function NA(){pe.assert(jn,"Missing parsing context");for(let rt=0;rt<26;rt++)if(jn&1<=0)}function oR(rt){return rt===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function pS(){let rt=TA([],xe());return rt.isMissingList=!0,rt}function xN(rt){return!!rt.isMissingList}function at(rt,Kt,xr,Tn){if(bi(xr)){let Ai=qm(rt,Kt);return bi(Tn),Ai}return pS()}function en(rt,Kt){let xr=xe(),Tn=rt?QI(Kt):_f(Kt);for(;Dl(25)&&Je()!==30;)Tn=oi(V.createQualifiedName(Tn,_i(rt,!1,!0)),xr);return Tn}function gi(rt,Kt){return oi(V.createQualifiedName(rt,Kt),rt.pos)}function _i(rt,Kt,xr){if(c.hasPrecedingLineBreak()&&Id(Je())&&Vn(lq))return $d(80,!0,Z.Identifier_expected);if(Je()===81){let Tn=Go();return Kt?Tn:$d(80,!0,Z.Identifier_expected)}return rt?xr?QI():ve():_f()}function ys(rt){let Kt=xe(),xr=[],Tn;do Tn=gr(rt),xr.push(Tn);while(Tn.literal.kind===17);return TA(xr,Kt)}function eo(rt){let Kt=xe();return oi(V.createTemplateExpression(bs(rt),ys(rt)),Kt)}function wa(){let rt=xe();return oi(V.createTemplateLiteralType(bs(!1),pc()),rt)}function pc(){let rt=xe(),Kt=[],xr;do xr=ul(),Kt.push(xr);while(xr.literal.kind===17);return TA(Kt,rt)}function ul(){let rt=xe();return oi(V.createTemplateLiteralTypeSpan(bf(),Fe(!1)),rt)}function Fe(rt){return Je()===20?(Ys(rt),Xl()):jp(18,Z._0_expected,Vi(20))}function gr(rt){let Kt=xe();return oi(V.createTemplateSpan(Cs(Ay),Fe(rt)),Kt)}function Ln(){return jl(Je())}function bs(rt){!rt&&c.getTokenFlags()&26656&&Ys(!1);let Kt=jl(Je());return pe.assert(Kt.kind===16,"Template head has wrong token kind"),Kt}function Xl(){let rt=jl(Je());return pe.assert(rt.kind===17||rt.kind===18,"Template fragment has wrong token kind"),rt}function eg(rt){let Kt=rt===15||rt===18,xr=c.getTokenText();return xr.substring(1,xr.length-(c.isUnterminated()?0:Kt?1:2))}function jl(rt){let Kt=xe(),xr=LD(rt)?V.createTemplateLiteralLikeNode(rt,c.getTokenValue(),eg(rt),c.getTokenFlags()&7176):rt===9?ee(c.getTokenValue(),c.getNumericLiteralFlags()):rt===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):pY(rt)?ge(rt,c.getTokenValue()):pe.fail();return c.hasExtendedUnicodeEscape()&&(xr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(xr.isUnterminated=!0),Ot(),oi(xr,Kt)}function Eu(){return en(!0,Z.Type_expected)}function Df(){if(!c.hasPrecedingLineBreak()&&tn()===30)return at(20,bf,30,32)}function Jg(){let rt=xe();return oi(V.createTypeReferenceNode(Eu(),Df()),rt)}function MC(rt){switch(rt.kind){case 184:return sf(rt.typeName);case 185:case 186:{let{parameters:Kt,type:xr}=rt;return xN(Kt)||MC(xr)}case 197:return MC(rt.type);default:return!1}}function S1(rt){return Ot(),oi(V.createTypePredicateNode(void 0,rt,bf()),rt.pos)}function fS(){let rt=xe();return Ot(),oi(V.createThisTypeNode(),rt)}function bv(){let rt=xe();return Ot(),oi(V.createJSDocAllType(),rt)}function XF(){let rt=xe();return Ot(),oi(V.createJSDocNonNullableType(EQ(),!1),rt)}function o9(){let rt=xe();return Ot(),Je()===28||Je()===20||Je()===22||Je()===32||Je()===64||Je()===52?oi(V.createJSDocUnknownType(),rt):oi(V.createJSDocNullableType(bf(),!1),rt)}function My(){let rt=xe(),Kt=fr();if(Ui(mq)){let xr=$a(36),Tn=co(59,!1);return Wo(oi(V.createJSDocFunctionType(xr,Tn),rt),Kt)}return oi(V.createTypeReferenceNode(QI(),void 0),rt)}function sk(){let rt=xe(),Kt;return(Je()===110||Je()===105)&&(Kt=QI(),bi(59)),oi(V.createParameterDeclaration(void 0,void 0,Kt,void 0,aR(),void 0),rt)}function aR(){c.setSkipJsDocLeadingAsterisks(!0);let rt=xe();if(Dl(144)){let Tn=V.createJSDocNamepathType(void 0);e:for(;;)switch(Je()){case 20:case 1:case 28:case 5:break e;default:$r()}return c.setSkipJsDocLeadingAsterisks(!1),oi(Tn,rt)}let Kt=Dl(26),xr=jF();return c.setSkipJsDocLeadingAsterisks(!1),Kt&&(xr=oi(V.createJSDocVariadicType(xr),rt)),Je()===64?(Ot(),oi(V.createJSDocOptionalType(xr),rt)):xr}function WB(){let rt=xe();bi(114);let Kt=en(!0),xr=c.hasPrecedingLineBreak()?void 0:Hf();return oi(V.createTypeQueryNode(Kt,xr),rt)}function UP(){let rt=xe(),Kt=Oc(!1,!0),xr=_f(),Tn,Ai;Dl(96)&&(KP()||!u0()?Tn=bf():Ai=f5());let Pi=Dl(64)?bf():void 0,Ba=V.createTypeParameterDeclaration(Kt,xr,Tn,Pi);return Ba.expression=Ai,oi(Ba,rt)}function br(){if(Je()===30)return at(19,UP,30,32)}function sn(rt){return Je()===26||fq()||VD(Je())||Je()===60||KP(!rt)}function ei(rt){let Kt=I9(Z.Private_identifiers_cannot_be_used_as_parameters);return DJ(Kt)===0&&!jt(rt)&&VD(Je())&&Ot(),Kt}function is(){return gs()||Je()===23||Je()===19}function Qs(rt){return Os(rt)}function Oo(rt){return Os(rt,!1)}function Os(rt,Kt=!0){let xr=xe(),Tn=fr(),Ai=rt?it(()=>Oc(!0)):nr(()=>Oc(!0));if(Je()===110){let uo=V.createParameterDeclaration(Ai,void 0,Fh(!0),void 0,l0(),void 0),Cc=Nc(Ai);return Cc&&cn(Cc,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Wo(oi(uo,xr),Tn)}let Pi=An;An=!1;let Ba=yu(26);if(!Kt&&!is())return;let Xo=Wo(oi(V.createParameterDeclaration(Ai,Ba,ei(Ai),yu(58),l0(),lk()),xr),Tn);return An=Pi,Xo}function co(rt,Kt){if(Yc(rt,Kt))return Pr(jF)}function Yc(rt,Kt){return rt===39?(bi(rt),!0):Dl(59)?!0:Kt&&Je()===39?(En(Z._0_expected,Vi(59)),Ot(),!0):!1}function tu(rt,Kt){let xr=hr(),Tn=nn();pa(!!(rt&1)),tl(!!(rt&2));let Ai=rt&32?qm(17,sk):qm(16,()=>Kt?Qs(Tn):Oo(Tn));return pa(xr),tl(Tn),Ai}function $a(rt){if(!bi(21))return pS();let Kt=tu(rt,!0);return bi(22),Kt}function ru(){Dl(28)||KA()}function gl(rt){let Kt=xe(),xr=fr();rt===181&&bi(105);let Tn=br(),Ai=$a(4),Pi=co(59,!0);ru();let Ba=rt===180?V.createCallSignature(Tn,Ai,Pi):V.createConstructSignature(Tn,Ai,Pi);return Wo(oi(Ba,Kt),xr)}function kf(){return Je()===23&&Vn(Wb)}function Wb(){if(Ot(),Je()===26||Je()===24)return!0;if(VD(Je())){if(Ot(),fs())return!0}else if(fs())Ot();else return!1;return Je()===59||Je()===28?!0:Je()!==58?!1:(Ot(),Je()===59||Je()===28||Je()===24)}function OB(rt,Kt,xr){let Tn=at(16,()=>Qs(!1),23,24),Ai=l0();ru();let Pi=V.createIndexSignature(xr,Tn,Ai);return Wo(oi(Pi,rt),Kt)}function p_(rt,Kt,xr){let Tn=Ls(),Ai=yu(58),Pi;if(Je()===21||Je()===30){let Ba=br(),Xo=$a(4),uo=co(59,!0);Pi=V.createMethodSignature(xr,Tn,Ai,Ba,Xo,uo)}else{let Ba=l0();Pi=V.createPropertySignature(xr,Tn,Ai,Ba),Je()===64&&(Pi.initializer=lk())}return ru(),Wo(oi(Pi,rt),Kt)}function MB(){if(Je()===21||Je()===30||Je()===139||Je()===153)return!0;let rt=!1;for(;VD(Je());)rt=!0,Ot();return Je()===23?!0:(mr()&&(rt=!0,Ot()),rt?Je()===21||Je()===30||Je()===58||Je()===59||Je()===28||gu():!1)}function v1(){if(Je()===21||Je()===30)return gl(180);if(Je()===105&&Vn(s5))return gl(181);let rt=xe(),Kt=fr(),xr=Oc(!1);return Ss(139)?v5(rt,Kt,xr,178,4):Ss(153)?v5(rt,Kt,xr,179,4):kf()?OB(rt,Kt,xr):p_(rt,Kt,xr)}function s5(){return Ot(),Je()===21||Je()===30}function GN(){return Ot()===25}function ok(){switch(Ot()){case 21:case 30:case 25:return!0}return!1}function o5(){let rt=xe();return oi(V.createTypeLiteralNode(ak()),rt)}function ak(){let rt;return bi(19)?(rt=uA(4,v1),bi(20)):rt=pS(),rt}function Ase(){return Ot(),Je()===40||Je()===41?Ot()===148:(Je()===148&&Ot(),Je()===23&&Z_()&&Ot()===103)}function mpe(){let rt=xe(),Kt=QI();bi(103);let xr=bf();return oi(V.createTypeParameterDeclaration(void 0,Kt,xr,void 0),rt)}function dse(){let rt=xe();bi(19);let Kt;(Je()===148||Je()===40||Je()===41)&&(Kt=sh(),Kt.kind!==148&&bi(148)),bi(23);let xr=mpe(),Tn=Dl(130)?bf():void 0;bi(24);let Ai;(Je()===58||Je()===40||Je()===41)&&(Ai=sh(),Ai.kind!==58&&bi(58));let Pi=l0();KA();let Ba=uA(4,v1);return bi(20),oi(V.createMappedTypeNode(Kt,xr,Tn,Ai,Pi,Ba),rt)}function Mx(){let rt=xe();if(Dl(26))return oi(V.createRestTypeNode(bf()),rt);let Kt=bf();if(hie(Kt)&&Kt.pos===Kt.type.pos){let xr=V.createOptionalTypeNode(Kt.type);return gn(xr,Kt),xr.flags=Kt.flags,xr}return Kt}function a5(){return Ot()===59||Je()===58&&Ot()===59}function WU(){return Je()===26?Id(Ot())&&a5():Id(Je())&&a5()}function a9(){if(Vn(WU)){let rt=xe(),Kt=fr(),xr=yu(26),Tn=QI(),Ai=yu(58);bi(59);let Pi=Mx(),Ba=V.createNamedTupleMember(xr,Tn,Ai,Pi);return Wo(oi(Ba,rt),Kt)}return Mx()}function OU(){let rt=xe();return oi(V.createTupleTypeNode(at(21,a9,23,24)),rt)}function qz(){let rt=xe();bi(21);let Kt=bf();return bi(22),oi(V.createParenthesizedType(Kt),rt)}function Cpe(){let rt;if(Je()===128){let Kt=xe();Ot();let xr=oi(Ee(128),Kt);rt=TA([xr],Kt)}return rt}function MU(){let rt=xe(),Kt=fr(),xr=Cpe(),Tn=Dl(105);pe.assert(!xr||Tn,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Ai=br(),Pi=$a(4),Ba=co(39,!1),Xo=Tn?V.createConstructorTypeNode(xr,Ai,Pi,Ba):V.createFunctionTypeNode(Ai,Pi,Ba);return Wo(oi(Xo,rt),Kt)}function $z(){let rt=sh();return Je()===25?void 0:rt}function c5(rt){let Kt=xe();rt&&Ot();let xr=Je()===112||Je()===97||Je()===106?sh():jl(Je());return rt&&(xr=oi(V.createPrefixUnaryExpression(41,xr),Kt)),oi(V.createLiteralTypeNode(xr),Kt)}function pse(){return Ot(),Je()===102}function HU(){Dt|=4194304;let rt=xe(),Kt=Dl(114);bi(102),bi(21);let xr=bf(),Tn;if(Dl(28)){let Ba=c.getTokenStart();bi(19);let Xo=Je();if(Xo===118||Xo===132?Ot():En(Z._0_expected,Vi(118)),bi(59),Tn=lW(Xo,!0),Dl(28),!bi(20)){let uo=li(pr);uo&&uo.code===Z._0_expected.code&&lg(uo,QY(nt,tr,Ba,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}bi(22);let Ai=Dl(25)?Eu():void 0,Pi=Df();return oi(V.createImportTypeNode(xr,Tn,Ai,Pi,Kt),rt)}function eq(){return Ot(),Je()===9||Je()===10}function EQ(){switch(Je()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ui($z)||Jg();case 67:c.reScanAsteriskEqualsToken();case 42:return bv();case 61:c.reScanQuestionToken();case 58:return o9();case 100:return My();case 54:return XF();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return c5();case 41:return Vn(eq)?c5(!0):Jg();case 116:return sh();case 110:{let rt=fS();return Je()===142&&!c.hasPrecedingLineBreak()?S1(rt):rt}case 114:return Vn(pse)?HU():WB();case 19:return Vn(Ase)?dse():o5();case 23:return OU();case 21:return qz();case 102:return HU();case 131:return Vn(lq)?ck():Jg();case 16:return wa();default:return Jg()}}function KP(rt){switch(Je()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!rt;case 41:return!rt&&Vn(eq);case 21:return!rt&&Vn(tq);default:return fs()}}function tq(){return Ot(),Je()===22||sn(!1)||KP()}function rq(){let rt=xe(),Kt=EQ();for(;!c.hasPrecedingLineBreak();)switch(Je()){case 54:Ot(),Kt=oi(V.createJSDocNonNullableType(Kt,!0),rt);break;case 58:if(Vn(Js))return Kt;Ot(),Kt=oi(V.createJSDocNullableType(Kt,!0),rt);break;case 23:if(bi(23),KP()){let xr=bf();bi(24),Kt=oi(V.createIndexedAccessTypeNode(Kt,xr),rt)}else bi(24),Kt=oi(V.createArrayTypeNode(Kt),rt);break;default:return Kt}return Kt}function SQ(rt){let Kt=xe();return bi(rt),oi(V.createTypeOperatorNode(rt,UF()),Kt)}function jP(){if(Dl(96)){let rt=Pn(bf);if(Ni()||Je()!==58)return rt}}function c9(){let rt=xe(),Kt=_f(),xr=Ui(jP),Tn=V.createTypeParameterDeclaration(void 0,Kt,xr);return oi(Tn,rt)}function JF(){let rt=xe();return bi(140),oi(V.createInferTypeNode(c9()),rt)}function UF(){let rt=Je();switch(rt){case 143:case 158:case 148:return SQ(rt);case 140:return JF()}return Pr(rq)}function KF(rt){if(PA()){let Kt=MU(),xr;return x_(Kt)?xr=rt?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:xr=rt?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,cn(Kt,xr),Kt}}function zP(rt,Kt,xr){let Tn=xe(),Ai=rt===52,Pi=Dl(rt),Ba=Pi&&KF(Ai)||Kt();if(Je()===rt||Pi){let Xo=[Ba];for(;Dl(rt);)Xo.push(KF(Ai)||Kt());Ba=oi(xr(TA(Xo,Tn)),Tn)}return Ba}function l5(){return zP(51,UF,V.createIntersectionTypeNode)}function YU(){return zP(52,l5,V.createUnionTypeNode)}function u5(){return Ot(),Je()===105}function PA(){return Je()===30||Je()===21&&Vn(fse)?!0:Je()===105||Je()===128&&Vn(u5)}function QU(){if(VD(Je())&&Oc(!1),fs()||Je()===110)return Ot(),!0;if(Je()===23||Je()===19){let rt=pr.length;return I9(),rt===pr.length}return!1}function fse(){return Ot(),!!(Je()===22||Je()===26||QU()&&(Je()===59||Je()===28||Je()===58||Je()===64||Je()===22&&(Ot(),Je()===39)))}function jF(){let rt=xe(),Kt=fs()&&Ui(zF),xr=bf();return Kt?oi(V.createTypePredicateNode(void 0,Kt,xr),rt):xr}function zF(){let rt=_f();if(Je()===142&&!c.hasPrecedingLineBreak())return Ot(),rt}function ck(){let rt=xe(),Kt=jp(131),xr=Je()===110?fS():_f(),Tn=Dl(142)?bf():void 0;return oi(V.createTypePredicateNode(Kt,xr,Tn),rt)}function bf(){if(Ns&81920)return Qu(81920,bf);if(PA())return MU();let rt=xe(),Kt=YU();if(!Ni()&&!c.hasPrecedingLineBreak()&&Dl(96)){let xr=Pn(bf);bi(58);let Tn=Pr(bf);bi(59);let Ai=Pr(bf);return oi(V.createConditionalTypeNode(Kt,xr,Tn,Ai),rt)}return Kt}function l0(){return Dl(59)?bf():void 0}function Ob(){switch(Je()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return Vn(ok);default:return fs()}}function u0(){if(Ob())return!0;switch(Je()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return YB()?!0:fs()}}function g5(){return Je()!==19&&Je()!==100&&Je()!==86&&Je()!==60&&u0()}function Ay(){let rt=Gi();rt&&Oa(!1);let Kt=xe(),xr=Hy(!0),Tn;for(;Tn=yu(28);)xr=gA(xr,Tn,Hy(!0),Kt);return rt&&Oa(!0),xr}function lk(){return Dl(64)?Hy(!0):void 0}function Hy(rt){if(HB())return A5();let Kt=_pe(rt)||Sr(rt);if(Kt)return Kt;let xr=xe(),Tn=fr(),Ai=qP(0);return Ai.kind===80&&Je()===39?d5(xr,Ai,rt,Tn,void 0):D_(Ai)&&UD(ao())?gA(Ai,sh(),Hy(rt),xr):u9(Ai,xr,rt)}function HB(){return Je()===127?hr()?!0:Vn(NQ):!1}function Mw(){return Ot(),!c.hasPrecedingLineBreak()&&fs()}function A5(){let rt=xe();return Ot(),!c.hasPrecedingLineBreak()&&(Je()===42||u0())?oi(V.createYieldExpression(yu(42),Hy(!0)),rt):oi(V.createYieldExpression(void 0,void 0),rt)}function d5(rt,Kt,xr,Tn,Ai){pe.assert(Je()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Pi=V.createParameterDeclaration(void 0,void 0,Kt,void 0,void 0,void 0);oi(Pi,Kt.pos);let Ba=TA([Pi],Pi.pos,Pi.end),Xo=jp(39),uo=Hw(!!Ai,xr),Cc=V.createArrowFunction(Ai,void 0,Ba,void 0,Xo,uo);return Wo(oi(Cc,rt),Tn)}function _pe(rt){let Kt=Ise();if(Kt!==0)return Kt===1?Hx(!0,!0):Ui(()=>vQ(rt))}function Ise(){return Je()===21||Je()===30||Je()===134?Vn(l9):Je()===39?1:0}function l9(){if(Je()===134&&(Ot(),c.hasPrecedingLineBreak()||Je()!==21&&Je()!==30))return 0;let rt=Je(),Kt=Ot();if(rt===21){if(Kt===22)switch(Ot()){case 39:case 59:case 19:return 1;default:return 0}if(Kt===23||Kt===19)return 2;if(Kt===26)return 1;if(VD(Kt)&&Kt!==134&&Vn(Z_))return Ot()===130?0:1;if(!fs()&&Kt!==110)return 0;switch(Ot()){case 59:return 1;case 58:return Ot(),Je()===59||Je()===28||Je()===64||Je()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return pe.assert(rt===30),!fs()&&Je()!==87?0:dt===1?Vn(()=>{Dl(87);let Tn=Ot();if(Tn===96)switch(Ot()){case 64:case 32:case 44:return!1;default:return!0}else if(Tn===28||Tn===64)return!0;return!1})?1:0:2}function vQ(rt){let Kt=c.getTokenStart();if(Zi?.has(Kt))return;let xr=Hx(!1,rt);return xr||(Zi||(Zi=new Set)).add(Kt),xr}function Sr(rt){if(Je()===134&&Vn(XU)===1){let Kt=xe(),xr=fr(),Tn=zl(),Ai=qP(0);return d5(Kt,Ai,rt,xr,Tn)}}function XU(){if(Je()===134){if(Ot(),c.hasPrecedingLineBreak()||Je()===39)return 0;let rt=qP(0);if(!c.hasPrecedingLineBreak()&&rt.kind===80&&Je()===39)return 1}return 0}function Hx(rt,Kt){let xr=xe(),Tn=fr(),Ai=zl(),Pi=jt(Ai,G)?2:0,Ba=br(),Xo;if(bi(21)){if(rt)Xo=tu(Pi,rt);else{let C9=tu(Pi,rt);if(!C9)return;Xo=C9}if(!bi(22)&&!rt)return}else{if(!rt)return;Xo=pS()}let uo=Je()===59,Cc=co(59,!1);if(Cc&&!rt&&MC(Cc))return;let Tl=Cc;for(;Tl?.kind===197;)Tl=Tl.type;let bp=Tl&&mie(Tl);if(!rt&&Je()!==39&&(bp||Je()!==19))return;let ep=Je(),zA=jp(39),Bv=ep===39||ep===19?Hw(jt(Ai,G),Kt):_f();if(!Kt&&uo&&Je()!==59)return;let CS=V.createArrowFunction(Ai,Ba,Xo,Cc,zA,Bv);return Wo(oi(CS,xr),Tn)}function Hw(rt,Kt){if(Je()===19)return sW(rt?2:0);if(Je()!==27&&Je()!==100&&Je()!==86&&f9()&&!g5())return sW(16|(rt?2:0));let xr=hr();pa(!1);let Tn=An;An=!1;let Ai=rt?it(()=>Hy(Kt)):nr(()=>Hy(Kt));return An=Tn,pa(xr),Ai}function u9(rt,Kt,xr){let Tn=yu(58);if(!Tn)return rt;let Ai;return oi(V.createConditionalExpression(rt,Tn,Qu(g,()=>Hy(!1)),Ai=jp(59),u1(Ai)?Hy(xr):$d(80,!1,Z._0_expected,Vi(59))),Kt)}function qP(rt){let Kt=xe(),xr=f5();return cR(rt,xr,Kt)}function dy(rt){return rt===103||rt===165}function cR(rt,Kt,xr){for(;;){ao();let Tn=Ene(Je());if(!(Je()===43?Tn>=rt:Tn>rt)||Je()===103&&Sn())break;if(Je()===130||Je()===152){if(c.hasPrecedingLineBreak())break;{let Pi=Je();Ot(),Kt=Pi===152?p5(Kt,bf()):IS(Kt,bf())}}else Kt=gA(Kt,sh(),qP(Tn),xr)}return Kt}function YB(){return Sn()&&Je()===103?!1:Ene(Je())>0}function p5(rt,Kt){return oi(V.createSatisfiesExpression(rt,Kt),rt.pos)}function gA(rt,Kt,xr,Tn){return oi(V.createBinaryExpression(rt,Kt,xr),Tn)}function IS(rt,Kt){return oi(V.createAsExpression(rt,Kt),rt.pos)}function g9(){let rt=xe();return oi(V.createPrefixUnaryExpression(Je(),Hn(A9)),rt)}function JU(){let rt=xe();return oi(V.createDeleteExpression(Hn(A9)),rt)}function qF(){let rt=xe();return oi(V.createTypeOfExpression(Hn(A9)),rt)}function BQ(){let rt=xe();return oi(V.createVoidExpression(Hn(A9)),rt)}function Ev(){return Je()===135?nn()?!0:Vn(NQ):!1}function Yx(){let rt=xe();return oi(V.createAwaitExpression(Hn(A9)),rt)}function f5(){if(FN()){let xr=xe(),Tn=wQ();return Je()===43?cR(Ene(Je()),Tn,xr):Tn}let rt=Je(),Kt=A9();if(Je()===43){let xr=Yu(tr,Kt.pos),{end:Tn}=Kt;Kt.kind===217?Mt(xr,Tn,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(pe.assert(tAe(rt)),Mt(xr,Tn,Z.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,Vi(rt)))}return Kt}function A9(){switch(Je()){case 40:case 41:case 55:case 54:return g9();case 91:return JU();case 114:return qF();case 116:return BQ();case 30:return dt===1?f_(!0,void 0,void 0,!0):G0();case 135:if(Ev())return Yx();default:return wQ()}}function FN(){switch(Je()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(dt!==1)return!1;default:return!0}}function wQ(){if(Je()===46||Je()===47){let Kt=xe();return oi(V.createPrefixUnaryExpression(Je(),Hn(I5)),Kt)}else if(dt===1&&Je()===30&&Vn(Vb))return f_(!0);let rt=I5();if(pe.assert(D_(rt)),(Je()===46||Je()===47)&&!c.hasPrecedingLineBreak()){let Kt=Je();return Ot(),oi(V.createPostfixUnaryExpression(rt,Kt),rt.pos)}return rt}function I5(){let rt=xe(),Kt;return Je()===102?Vn(s5)?(Dt|=4194304,Kt=sh()):Vn(GN)?(Ot(),Ot(),Kt=oi(V.createMetaProperty(102,QI()),rt),Kt.name.escapedText==="defer"?(Je()===21||Je()===30)&&(Dt|=4194304):Dt|=8388608):Kt=fa():Kt=Je()===108?sa():fa(),Mb(rt,Kt)}function fa(){let rt=xe(),Kt=m5();return hS(rt,Kt,!0)}function sa(){let rt=xe(),Kt=sh();if(Je()===30){let xr=xe(),Tn=Ui(h5);Tn!==void 0&&(Mt(xr,xe(),Z.super_may_not_use_type_arguments),Yw()||(Kt=V.createExpressionWithTypeArguments(Kt,Tn)))}return Je()===21||Je()===25||Je()===23?Kt:(jp(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),oi(Ze(Kt,_i(!0,!0,!0)),rt))}function f_(rt,Kt,xr,Tn=!1){let Ai=xe(),Pi=ype(rt),Ba;if(Pi.kind===287){let Xo=TQ(Pi),uo,Cc=Xo[Xo.length-1];if(Cc?.kind===285&&!Q3(Cc.openingElement.tagName,Cc.closingElement.tagName)&&Q3(Pi.tagName,Cc.closingElement.tagName)){let Tl=Cc.children.end,bp=oi(V.createJsxElement(Cc.openingElement,Cc.children,oi(V.createJsxClosingElement(oi(Ie(""),Tl,Tl)),Tl,Tl)),Cc.openingElement.pos,Tl);Xo=TA([...Xo.slice(0,Xo.length-1),bp],Xo.pos,Tl),uo=Cc.closingElement}else uo=mse(Pi,rt),Q3(Pi.tagName,uo.tagName)||(xr&&$T(xr)&&Q3(uo.tagName,xr.tagName)?cn(Pi.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,TY(tr,Pi.tagName)):cn(uo.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,TY(tr,Pi.tagName)));Ba=oi(V.createJsxElement(Pi,Xo,uo),Ai)}else Pi.kind===290?Ba=oi(V.createJsxFragment(Pi,TQ(Pi),nq(rt)),Ai):(pe.assert(Pi.kind===286),Ba=Pi);if(!Tn&&rt&&Je()===30){let Xo=typeof Kt>"u"?Ba.pos:Kt,uo=Ui(()=>f_(!0,Xo));if(uo){let Cc=$d(28,!1);return Gbe(Cc,uo.pos,0),Mt(Yu(tr,Xo),uo.end,Z.JSX_expressions_must_have_one_parent_element),oi(V.createBinaryExpression(Ba,Cc,uo),Ai)}}return Ba}function UU(){let rt=xe(),Kt=V.createJsxText(c.getTokenValue(),zt===13);return zt=c.scanJsxToken(),oi(Kt,rt)}function $F(rt,Kt){switch(Kt){case 1:if(Pw(rt))cn(rt,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let xr=rt.tagName,Tn=Math.min(Yu(tr,xr.pos),xr.end);Mt(Tn,xr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,TY(tr,rt.tagName))}return;case 31:case 7:return;case 12:case 13:return UU();case 19:return hu(!1);case 30:return f_(!1,void 0,rt);default:return pe.assertNever(Kt)}}function TQ(rt){let Kt=[],xr=xe(),Tn=jn;for(jn|=16384;;){let Ai=$F(rt,zt=c.reScanJsxToken());if(!Ai||(Kt.push(Ai),$T(rt)&&Ai?.kind===285&&!Q3(Ai.openingElement.tagName,Ai.closingElement.tagName)&&Q3(rt.tagName,Ai.closingElement.tagName)))break}return jn=Tn,TA(Kt,xr)}function hse(){let rt=xe();return oi(V.createJsxAttributes(uA(13,vE)),rt)}function ype(rt){let Kt=xe();if(bi(30),Je()===32)return ci(),oi(V.createJsxOpeningFragment(),Kt);let xr=qo(),Tn=Ns&524288?void 0:Hf(),Ai=hse(),Pi;return Je()===32?(ci(),Pi=V.createJsxOpeningElement(xr,Tn,Ai)):(bi(44),bi(32,void 0,!1)&&(rt?Ot():ci()),Pi=V.createJsxSelfClosingElement(xr,Tn,Ai)),oi(Pi,Kt)}function qo(){let rt=xe(),Kt=py();if(eR(Kt))return Kt;let xr=Kt;for(;Dl(25);)xr=oi(Ze(xr,_i(!0,!1,!1)),rt);return xr}function py(){let rt=xe();Mn();let Kt=Je()===110,xr=ve();return Dl(59)?(Mn(),oi(V.createJsxNamespacedName(xr,ve()),rt)):Kt?oi(V.createToken(110),rt):xr}function hu(rt){let Kt=xe();if(!bi(19))return;let xr,Tn;return Je()!==20&&(rt||(xr=yu(26)),Tn=Ay()),rt?bi(20):bi(20,void 0,!1)&&ci(),oi(V.createJsxExpression(xr,Tn),Kt)}function vE(){if(Je()===19)return Fo();let rt=xe();return oi(V.createJsxAttribute($P(),KU()),rt)}function KU(){if(Je()===64){if(es()===11)return Ln();if(Je()===19)return hu(!0);if(Je()===30)return f_(!0);En(Z.or_JSX_element_expected)}}function $P(){let rt=xe();Mn();let Kt=ve();return Dl(59)?(Mn(),oi(V.createJsxNamespacedName(Kt,ve()),rt)):Kt}function Fo(){let rt=xe();bi(19),bi(26);let Kt=Ay();return bi(20),oi(V.createJsxSpreadAttribute(Kt),rt)}function mse(rt,Kt){let xr=xe();bi(31);let Tn=qo();return bi(32,void 0,!1)&&(Kt||!Q3(rt.tagName,Tn)?Ot():ci()),oi(V.createJsxClosingElement(Tn),xr)}function nq(rt){let Kt=xe();return bi(31),bi(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(rt?Ot():ci()),oi(V.createJsxJsxClosingFragment(),Kt)}function G0(){pe.assert(dt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let rt=xe();bi(30);let Kt=bf();bi(32);let xr=A9();return oi(V.createTypeAssertion(Kt,xr),rt)}function uk(){return Ot(),Id(Je())||Je()===23||Yw()}function lR(){return Je()===29&&Vn(uk)}function eW(rt){if(rt.flags&64)return!0;if(hv(rt)){let Kt=rt.expression;for(;hv(Kt)&&!(Kt.flags&64);)Kt=Kt.expression;if(Kt.flags&64){for(;hv(rt);)rt.flags|=64,rt=rt.expression;return!0}}return!1}function jU(rt,Kt,xr){let Tn=_i(!0,!0,!0),Ai=xr||eW(Kt),Pi=Ai?We(Kt,xr,Tn):Ze(Kt,Tn);if(Ai&&p(Pi.name)&&cn(Pi.name,Z.An_optional_chain_cannot_contain_private_identifiers),l_(Kt)&&Kt.typeArguments){let Ba=Kt.typeArguments.pos-1,Xo=Yu(tr,Kt.typeArguments.end)+1;Mt(Ba,Xo,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return oi(Pi,rt)}function tW(rt,Kt,xr){let Tn;if(Je()===24)Tn=$d(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let Pi=Cs(Ay);d1(Pi)&&(Pi.text=YI(Pi.text)),Tn=Pi}bi(24);let Ai=xr||eW(Kt)?$e(Kt,xr,Tn):Ue(Kt,Tn);return oi(Ai,rt)}function hS(rt,Kt,xr){for(;;){let Tn,Ai=!1;if(xr&&lR()?(Tn=jp(29),Ai=Id(Je())):Ai=Dl(25),Ai){Kt=jU(rt,Kt,Tn);continue}if((Tn||!Gi())&&Dl(23)){Kt=tW(rt,Kt,Tn);continue}if(Yw()){Kt=!Tn&&Kt.kind===234?Sv(rt,Kt.expression,Tn,Kt.typeArguments):Sv(rt,Kt,Tn,void 0);continue}if(!Tn){if(Je()===54&&!c.hasPrecedingLineBreak()){Ot(),Kt=oi(V.createNonNullExpression(Kt),rt);continue}let Pi=Ui(h5);if(Pi){Kt=oi(V.createExpressionWithTypeArguments(Kt,Pi),rt);continue}}return Kt}}function Yw(){return Je()===15||Je()===16}function Sv(rt,Kt,xr,Tn){let Ai=V.createTaggedTemplateExpression(Kt,Tn,Je()===15?(Ys(!0),Ln()):eo(!0));return(xr||Kt.flags&64)&&(Ai.flags|=64),Ai.questionDotToken=xr,oi(Ai,rt)}function Mb(rt,Kt){for(;;){Kt=hS(rt,Kt,!0);let xr,Tn=yu(29);if(Tn&&(xr=Ui(h5),Yw())){Kt=Sv(rt,Kt,Tn,xr);continue}if(xr||Je()===21){!Tn&&Kt.kind===234&&(xr=Kt.typeArguments,Kt=Kt.expression);let Ai=d9(),Pi=Tn||eW(Kt)?Tt(Kt,Tn,xr,Ai):Ye(Kt,xr,Ai);Kt=oi(Pi,rt);continue}if(Tn){let Ai=$d(80,!1,Z.Identifier_expected);Kt=oi(We(Kt,Tn,Ai),rt)}break}return Kt}function d9(){bi(21);let rt=qm(11,ZN);return bi(22),rt}function h5(){if(Ns&524288||tn()!==30)return;Ot();let rt=qm(20,bf);if(ao()===32)return Ot(),rt&&iq()?rt:void 0}function iq(){switch(Je()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||YB()||!u0()}function m5(){switch(Je()){case 15:c.getTokenFlags()&26656&&Ys(!1);case 9:case 10:case 11:return Ln();case 110:case 108:case 106:case 112:case 97:return sh();case 21:return rW();case 23:return nW();case 19:return p9();case 134:if(!Vn(vv))break;return iW();case 60:return _A();case 86:return Lh();case 100:return iW();case 105:return tZ();case 44:case 69:if(Bs()===14)return Ln();break;case 16:return eo(!1);case 81:return Go()}return _f(Z.Expression_expected)}function rW(){let rt=xe(),Kt=fr();bi(21);let xr=Cs(Ay);return bi(22),Wo(oi(Qe(xr),rt),Kt)}function sq(){let rt=xe();bi(26);let Kt=Hy(!0);return oi(V.createSpreadElement(Kt),rt)}function eZ(){return Je()===26?sq():Je()===28?oi(V.createOmittedExpression(),xe()):Hy(!0)}function ZN(){return Qu(g,eZ)}function nW(){let rt=xe(),Kt=c.getTokenStart(),xr=bi(23),Tn=c.hasPrecedingLineBreak(),Ai=qm(15,eZ);return pp(23,24,xr,Kt),oi(Ne(Ai,Tn),rt)}function C5(){let rt=xe(),Kt=fr();if(yu(26)){let Tl=Hy(!0);return Wo(oi(V.createSpreadAssignment(Tl),rt),Kt)}let xr=Oc(!0);if(Ss(139))return v5(rt,Kt,xr,178,0);if(Ss(153))return v5(rt,Kt,xr,179,0);let Tn=yu(42),Ai=fs(),Pi=Ls(),Ba=yu(58),Xo=yu(54);if(Tn||Je()===21||Je()===30)return S5(rt,Kt,xr,Tn,Pi,Ba,Xo);let uo;if(Ai&&Je()!==59){let Tl=yu(64),bp=Tl?Cs(()=>Hy(!0)):void 0;uo=V.createShorthandPropertyAssignment(Pi,bp),uo.equalsToken=Tl}else{bi(59);let Tl=Cs(()=>Hy(!0));uo=V.createPropertyAssignment(Pi,Tl)}return uo.modifiers=xr,uo.questionToken=Ba,uo.exclamationToken=Xo,Wo(oi(uo,rt),Kt)}function p9(){let rt=xe(),Kt=c.getTokenStart(),xr=bi(19),Tn=c.hasPrecedingLineBreak(),Ai=qm(12,C5,!0);return pp(19,20,xr,Kt),oi(Te(Ai,Tn),rt)}function iW(){let rt=Gi();Oa(!1);let Kt=xe(),xr=fr(),Tn=Oc(!1);bi(100);let Ai=yu(42),Pi=Ai?1:0,Ba=jt(Tn,G)?2:0,Xo=Pi&&Ba?Fr(Qw):Pi?pt(Qw):Ba?it(Qw):Qw(),uo=br(),Cc=$a(Pi|Ba),Tl=co(59,!1),bp=sW(Pi|Ba);Oa(rt);let ep=V.createFunctionExpression(Tn,Ai,Xo,uo,Cc,Tl,bp);return Wo(oi(ep,Kt),xr)}function Qw(){return gs()?WC():void 0}function tZ(){let rt=xe();if(bi(105),Dl(25)){let Pi=QI();return oi(V.createMetaProperty(105,Pi),rt)}let Kt=xe(),xr=hS(Kt,m5(),!1),Tn;xr.kind===234&&(Tn=xr.typeArguments,xr=xr.expression),Je()===29&&En(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,TY(tr,xr));let Ai=Je()===21?d9():void 0;return oi(ot(xr,Tn,Ai),rt)}function Qx(rt,Kt){let xr=xe(),Tn=fr(),Ai=c.getTokenStart(),Pi=bi(19,Kt);if(Pi||rt){let Ba=c.hasPrecedingLineBreak(),Xo=uA(1,BE);pp(19,20,Pi,Ai);let uo=Wo(oi(mt(Xo,Ba),xr),Tn);return Je()===64&&(En(Z.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Ot()),uo}else{let Ba=pS();return Wo(oi(mt(Ba,void 0),xr),Tn)}}function sW(rt,Kt){let xr=hr();pa(!!(rt&1));let Tn=nn();tl(!!(rt&2));let Ai=An;An=!1;let Pi=Gi();Pi&&Oa(!1);let Ba=Qx(!!(rt&16),Kt);return Pi&&Oa(!0),An=Ai,pa(xr),tl(Tn),Ba}function HC(){let rt=xe(),Kt=fr();return bi(27),Wo(oi(V.createEmptyStatement(),rt),Kt)}function RQ(){let rt=xe(),Kt=fr();bi(101);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=BE(),Ba=Dl(93)?BE():void 0;return Wo(oi(Rt(Ai,Pi,Ba),rt),Kt)}function Xx(){let rt=xe(),Kt=fr();bi(92);let xr=BE();bi(117);let Tn=c.getTokenStart(),Ai=bi(21),Pi=Cs(Ay);return pp(21,22,Ai,Tn),Dl(27),Wo(oi(V.createDoStatement(xr,Pi),rt),Kt)}function _5(){let rt=xe(),Kt=fr();bi(117);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=BE();return Wo(oi(Lt(Ai,Pi),rt),Kt)}function zU(){let rt=xe(),Kt=fr();bi(99);let xr=yu(135);bi(21);let Tn;Je()!==27&&(Je()===115||Je()===121||Je()===87||Je()===160&&Vn(TI)||Je()===135&&Vn(gq)?Tn=iK(!0):Tn=Tu(Ay));let Ai;if(xr?bi(165):Dl(165)){let Pi=Cs(()=>Hy(!0));bi(22),Ai=Pt(xr,Tn,Pi,BE())}else if(Dl(103)){let Pi=Cs(Ay);bi(22),Ai=V.createForInStatement(Tn,Pi,BE())}else{bi(27);let Pi=Je()!==27&&Je()!==22?Cs(Ay):void 0;bi(27);let Ba=Je()!==22?Cs(Ay):void 0;bi(22),Ai=Ke(Tn,Pi,Ba,BE())}return Wo(oi(Ai,rt),Kt)}function Jx(rt){let Kt=xe(),xr=fr();bi(rt===253?83:88);let Tn=gu()?void 0:_f();KA();let Ai=rt===253?V.createBreakStatement(Tn):V.createContinueStatement(Tn);return Wo(oi(Ai,Kt),xr)}function Cse(){let rt=xe(),Kt=fr();bi(107);let xr=gu()?void 0:Cs(Ay);return KA(),Wo(oi(V.createReturnStatement(xr),rt),Kt)}function oq(){let rt=xe(),Kt=fr();bi(118);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=Tg(67108864,BE);return Wo(oi(V.createWithStatement(Ai,Pi),rt),Kt)}function aq(){let rt=xe(),Kt=fr();bi(84);let xr=Cs(Ay);bi(59);let Tn=uA(3,BE);return Wo(oi(V.createCaseClause(xr,Tn),rt),Kt)}function bpe(){let rt=xe();bi(90),bi(59);let Kt=uA(3,BE);return oi(V.createDefaultClause(Kt),rt)}function cq(){return Je()===84?aq():bpe()}function y5(){let rt=xe();bi(19);let Kt=uA(2,cq);return bi(20),oi(V.createCaseBlock(Kt),rt)}function rZ(){let rt=xe(),Kt=fr();bi(109),bi(21);let xr=Cs(Ay);bi(22);let Tn=y5();return Wo(oi(V.createSwitchStatement(xr,Tn),rt),Kt)}function _se(){let rt=xe(),Kt=fr();bi(111);let xr=c.hasPrecedingLineBreak()?void 0:Cs(Ay);return xr===void 0&&(mn++,xr=oi(Ie(""),xe())),bg()||gg(xr),Wo(oi(V.createThrowStatement(xr),rt),Kt)}function b5(){let rt=xe(),Kt=fr();bi(113);let xr=Qx(!1),Tn=Je()===85?qU():void 0,Ai;return(!Tn||Je()===98)&&(bi(98,Z.catch_or_finally_expected),Ai=Qx(!1)),Wo(oi(V.createTryStatement(xr,Tn,Ai),rt),Kt)}function qU(){let rt=xe();bi(85);let Kt;Dl(21)?(Kt=LN(),bi(22)):Kt=void 0;let xr=Qx(!1);return oi(V.createCatchClause(Kt,xr),rt)}function Zh(){let rt=xe(),Kt=fr();return bi(89),KA(),Wo(oi(V.createDebuggerStatement(),rt),Kt)}function YC(){let rt=xe(),Kt=fr(),xr,Tn=Je()===21,Ai=Cs(Ay);return Ir(Ai)&&Dl(59)?xr=V.createLabeledStatement(Ai,BE()):(bg()||gg(Ai),xr=_t(Ai),Tn&&(Kt=!1)),Wo(oi(xr,rt),Kt)}function lq(){return Ot(),Id(Je())&&!c.hasPrecedingLineBreak()}function Hb(){return Ot(),Je()===86&&!c.hasPrecedingLineBreak()}function vv(){return Ot(),Je()===100&&!c.hasPrecedingLineBreak()}function NQ(){return Ot(),(Id(Je())||Je()===9||Je()===10||Je()===11)&&!c.hasPrecedingLineBreak()}function uR(){for(;;)switch(Je()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return DQ();case 135:return F0();case 120:case 156:case 166:return Mw();case 144:case 145:return rK();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let rt=Je();if(Ot(),c.hasPrecedingLineBreak())return!1;if(rt===138&&Je()===156)return!0;continue;case 162:return Ot(),Je()===19||Je()===80||Je()===95;case 102:return Ot(),Je()===166||Je()===11||Je()===42||Je()===19||Id(Je());case 95:let Kt=Ot();if(Kt===156&&(Kt=Vn(Ot)),Kt===64||Kt===42||Kt===19||Kt===90||Kt===130||Kt===60)return!0;continue;case 126:Ot();continue;default:return!1}}function oW(){return Vn(uR)}function f9(){switch(Je()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return oW()||Vn(ok);case 87:case 95:return oW();case 134:case 138:case 120:case 144:case 145:case 156:case 162:case 166:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return oW()||!Vn(lq);default:return u0()}}function uq(){return Ot(),gs()||Je()===19||Je()===23}function Epe(){return Vn(uq)}function TI(){return $U(!0)}function yse(){return Ot(),Je()===64||Je()===27||Je()===59}function $U(rt){return Ot(),rt&&Je()===165?Vn(yse):(gs()||Je()===19)&&!c.hasPrecedingLineBreak()}function DQ(){return Vn($U)}function gq(rt){return Ot()===160?$U(rt):!1}function F0(){return Vn(gq)}function BE(){switch(Je()){case 27:return HC();case 19:return Qx(!1);case 115:return jA(xe(),fr(),void 0);case 121:if(Epe())return jA(xe(),fr(),void 0);break;case 135:if(F0())return jA(xe(),fr(),void 0);break;case 160:if(DQ())return jA(xe(),fr(),void 0);break;case 100:return Uo(xe(),fr(),void 0);case 86:return g0(xe(),fr(),void 0);case 101:return RQ();case 92:return Xx();case 117:return _5();case 99:return zU();case 88:return Jx(252);case 83:return Jx(253);case 107:return Cse();case 118:return oq();case 109:return rZ();case 111:return _se();case 113:case 85:case 98:return b5();case 89:return Zh();case 60:return E5();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(oW())return E5();break}return YC()}function eK(rt){return rt.kind===138}function E5(){let rt=xe(),Kt=fr(),xr=Oc(!0);if(jt(xr,eK)){let Ai=wE(rt);if(Ai)return Ai;for(let Pi of xr)Pi.flags|=33554432;return Tg(33554432,()=>tK(rt,Kt,xr))}else return tK(rt,Kt,xr)}function wE(rt){return Tg(33554432,()=>{let Kt=af(jn,rt);if(Kt)return dI(Kt)})}function tK(rt,Kt,xr){switch(Je()){case 115:case 121:case 87:case 160:case 135:return jA(rt,Kt,xr);case 100:return Uo(rt,Kt,xr);case 86:return g0(rt,Kt,xr);case 120:return Jw(rt,Kt,xr);case 156:return m9(rt,Kt,xr);case 94:return gWe(rt,Kt,xr);case 162:case 144:case 145:return l2e(rt,Kt,xr);case 102:return uK(rt,Kt,xr);case 95:switch(Ot(),Je()){case 90:case 64:return T5(rt,Kt,xr);case 130:return GQ(rt,Kt,xr);default:return Rpe(rt,Kt,xr)}default:if(xr){let Tn=$d(283,!0,Z.Declaration_expected);return iz(Tn,rt),Tn.modifiers=xr,Tn}return}}function Ux(){return Ot()===11}function Aq(){return Ot(),Je()===161||Je()===64}function rK(){return Ot(),!c.hasPrecedingLineBreak()&&(fs()||Je()===11)}function Xw(rt,Kt){if(Je()!==19){if(rt&4){ru();return}if(gu()){KA();return}}return sW(rt,Kt)}function dq(){let rt=xe();if(Je()===28)return oi(V.createOmittedExpression(),rt);let Kt=yu(26),xr=I9(),Tn=lk();return oi(V.createBindingElement(Kt,void 0,xr,Tn),rt)}function bse(){let rt=xe(),Kt=yu(26),xr=gs(),Tn=Ls(),Ai;xr&&Je()!==59?(Ai=Tn,Tn=void 0):(bi(59),Ai=I9());let Pi=lk();return oi(V.createBindingElement(Kt,Tn,Ai,Pi),rt)}function pq(){let rt=xe();bi(19);let Kt=Cs(()=>qm(9,bse));return bi(20),oi(V.createObjectBindingPattern(Kt),rt)}function nK(){let rt=xe();bi(23);let Kt=Cs(()=>qm(10,dq));return bi(24),oi(V.createArrayBindingPattern(Kt),rt)}function fq(){return Je()===19||Je()===23||Je()===81||gs()}function I9(rt){return Je()===23?nK():Je()===19?pq():WC(rt)}function B1(){return LN(!0)}function LN(rt){let Kt=xe(),xr=fr(),Tn=I9(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Ai;rt&&Tn.kind===80&&Je()===54&&!c.hasPrecedingLineBreak()&&(Ai=sh());let Pi=l0(),Ba=dy(Je())?void 0:lk(),Xo=_r(Tn,Ai,Pi,Ba);return Wo(oi(Xo,Kt),xr)}function iK(rt){let Kt=xe(),xr=0;switch(Je()){case 115:break;case 121:xr|=1;break;case 87:xr|=2;break;case 160:xr|=4;break;case 135:pe.assert(F0()),xr|=6,Ot();break;default:pe.fail()}Ot();let Tn;if(Je()===165&&Vn(sK))Tn=pS();else{let Ai=Sn();lo(rt),Tn=qm(8,rt?LN:B1),lo(Ai)}return oi(Gt(Tn,xr),Kt)}function sK(){return Z_()&&Ot()===22}function jA(rt,Kt,xr){let Tn=iK(!1);KA();let Ai=ht(xr,Tn);return Wo(oi(Ai,rt),Kt)}function Uo(rt,Kt,xr){let Tn=nn(),Ai=Dw(xr);bi(100);let Pi=yu(42),Ba=Ai&2048?Qw():WC(),Xo=Pi?1:0,uo=Ai&1024?2:0,Cc=br();Ai&32&&tl(!0);let Tl=$a(Xo|uo),bp=co(59,!1),ep=Xw(Xo|uo,Z.or_expected);tl(Tn);let zA=V.createFunctionDeclaration(xr,Pi,Ba,Cc,Tl,bp,ep);return Wo(oi(zA,rt),Kt)}function mS(){if(Je()===137)return bi(137);if(Je()===11&&Vn(Ot)===21)return Ui(()=>{let rt=Ln();return rt.text==="constructor"?rt:void 0})}function $m(rt,Kt,xr){return Ui(()=>{if(mS()){let Tn=br(),Ai=$a(0),Pi=co(59,!1),Ba=Xw(0,Z.or_expected),Xo=V.createConstructorDeclaration(xr,Ai,Ba);return Xo.typeParameters=Tn,Xo.type=Pi,Wo(oi(Xo,rt),Kt)}})}function S5(rt,Kt,xr,Tn,Ai,Pi,Ba,Xo){let uo=Tn?1:0,Cc=jt(xr,G)?2:0,Tl=br(),bp=$a(uo|Cc),ep=co(59,!1),zA=Xw(uo|Cc,Xo),Bv=V.createMethodDeclaration(xr,Tn,Ai,Pi,Tl,bp,ep,zA);return Bv.exclamationToken=Ba,Wo(oi(Bv,rt),Kt)}function oK(rt,Kt,xr,Tn,Ai){let Pi=!Ai&&!c.hasPrecedingLineBreak()?yu(54):void 0,Ba=l0(),Xo=Qu(90112,lk);wI(Tn,Ba,Xo);let uo=V.createPropertyDeclaration(xr,Tn,Ai||Pi,Ba,Xo);return Wo(oi(uo,rt),Kt)}function kQ(rt,Kt,xr){let Tn=yu(42),Ai=Ls(),Pi=yu(58);return Tn||Je()===21||Je()===30?S5(rt,Kt,xr,Tn,Ai,Pi,void 0,Z.or_expected):oK(rt,Kt,xr,Ai,Pi)}function v5(rt,Kt,xr,Tn,Ai){let Pi=Ls(),Ba=br(),Xo=$a(0),uo=co(59,!1),Cc=Xw(Ai),Tl=Tn===178?V.createGetAccessorDeclaration(xr,Pi,Xo,uo,Cc):V.createSetAccessorDeclaration(xr,Pi,Xo,Cc);return Tl.typeParameters=Ba,Dg(Tl)&&(Tl.type=uo),Wo(oi(Tl,rt),Kt)}function aK(){let rt;if(Je()===60)return!0;for(;VD(Je());){if(rt=Je(),vre(rt))return!0;Ot()}if(Je()===42||(mr()&&(rt=Je(),Ot()),Je()===23))return!0;if(rt!==void 0){if(!v0(rt)||rt===153||rt===139)return!0;switch(Je()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return gu()}}return!1}function Ae(rt,Kt,xr){jp(126);let Tn=Et(),Ai=Wo(oi(V.createClassStaticBlockDeclaration(Tn),rt),Kt);return Ai.modifiers=xr,Ai}function Et(){let rt=hr(),Kt=nn();pa(!1),tl(!0);let xr=Qx(!1);return pa(rt),tl(Kt),xr}function fn(){if(nn()&&Je()===135){let rt=xe(),Kt=_f(Z.Expression_expected);Ot();let xr=hS(rt,Kt,!0);return Mb(rt,xr)}return I5()}function qi(){let rt=xe();if(!Dl(60))return;let Kt=on(fn);return oi(V.createDecorator(Kt),rt)}function ic(rt,Kt,xr){let Tn=xe(),Ai=Je();if(Je()===87&&Kt){if(!Ui(Uc))return}else{if(xr&&Je()===126&&Vn(lK))return;if(rt&&Je()===126)return;if(!yf())return}return oi(Ee(Ai),Tn)}function Oc(rt,Kt,xr){let Tn=xe(),Ai,Pi,Ba,Xo=!1,uo=!1,Cc=!1;if(rt&&Je()===60)for(;Pi=qi();)Ai=Ft(Ai,Pi);for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba),uo=!0;if(uo&&rt&&Je()===60)for(;Pi=qi();)Ai=Ft(Ai,Pi),Cc=!0;if(Cc)for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba);return Ai&&TA(Ai,Tn)}function zl(){let rt;if(Je()===134){let Kt=xe();Ot();let xr=oi(Ee(134),Kt);rt=TA([xr],Kt)}return rt}function Vc(){let rt=xe(),Kt=fr();if(Je()===27)return Ot(),Wo(oi(V.createSemicolonClassElement(),rt),Kt);let xr=Oc(!0,!0,!0);if(Je()===126&&Vn(lK))return Ae(rt,Kt,xr);if(Ss(139))return v5(rt,Kt,xr,178,0);if(Ss(153))return v5(rt,Kt,xr,179,0);if(Je()===137||Je()===11){let Tn=$m(rt,Kt,xr);if(Tn)return Tn}if(kf())return OB(rt,Kt,xr);if(Id(Je())||Je()===11||Je()===9||Je()===10||Je()===42||Je()===23)if(jt(xr,eK)){for(let Ai of xr)Ai.flags|=33554432;return Tg(33554432,()=>kQ(rt,Kt,xr))}else return kQ(rt,Kt,xr);if(xr){let Tn=$d(80,!0,Z.Declaration_expected);return oK(rt,Kt,xr,Tn,void 0)}return pe.fail("Should not have attempted to parse class member declaration.")}function _A(){let rt=xe(),Kt=fr(),xr=Oc(!0);if(Je()===86)return Yy(rt,Kt,xr,232);let Tn=$d(283,!0,Z.Expression_expected);return iz(Tn,rt),Tn.modifiers=xr,Tn}function Lh(){return Yy(xe(),fr(),void 0,232)}function g0(rt,Kt,xr){return Yy(rt,Kt,xr,264)}function Yy(rt,Kt,xr,Tn){let Ai=nn();bi(86);let Pi=B5(),Ba=br();jt(xr,y)&&tl(!0);let Xo=aW(),uo;bi(19)?(uo=h9(),bi(20)):uo=pS(),tl(Ai);let Cc=Tn===264?V.createClassDeclaration(xr,Pi,Ba,Xo,uo):V.createClassExpression(xr,Pi,Ba,Xo,uo);return Wo(oi(Cc,rt),Kt)}function B5(){return gs()&&!Qy()?Fh(gs()):void 0}function Qy(){return Je()===119&&Vn(m2)}function aW(){if(cK())return uA(22,Iq)}function Iq(){let rt=xe(),Kt=Je();pe.assert(Kt===96||Kt===119),Ot();let xr=qm(7,QB);return oi(V.createHeritageClause(Kt,xr),rt)}function QB(){let rt=xe(),Kt=I5();if(Kt.kind===234)return Kt;let xr=Hf();return oi(V.createExpressionWithTypeArguments(Kt,xr),rt)}function Hf(){return Je()===30?at(20,bf,30,32):void 0}function cK(){return Je()===96||Je()===119}function h9(){return uA(5,Vc)}function Jw(rt,Kt,xr){bi(120);let Tn=_f(),Ai=br(),Pi=aW(),Ba=ak(),Xo=V.createInterfaceDeclaration(xr,Tn,Ai,Pi,Ba);return Wo(oi(Xo,rt),Kt)}function m9(rt,Kt,xr){bi(156),c.hasPrecedingLineBreak()&&En(Z.Line_break_not_permitted_here);let Tn=_f(),Ai=br();bi(64);let Pi=Je()===141&&Ui($z)||bf();KA();let Ba=V.createTypeAliasDeclaration(xr,Tn,Ai,Pi);return Wo(oi(Ba,rt),Kt)}function xQ(){let rt=xe(),Kt=fr(),xr=Ls(),Tn=Cs(lk);return Wo(oi(V.createEnumMember(xr,Tn),rt),Kt)}function gWe(rt,Kt,xr){bi(94);let Tn=_f(),Ai;bi(19)?(Ai=Kr(()=>qm(6,xQ)),bi(20)):Ai=pS();let Pi=V.createEnumDeclaration(xr,Tn,Ai);return Wo(oi(Pi,rt),Kt)}function Spe(){let rt=xe(),Kt;return bi(19)?(Kt=uA(1,BE),bi(20)):Kt=pS(),oi(V.createModuleBlock(Kt),rt)}function hq(rt,Kt,xr,Tn){let Ai=Tn&32,Pi=Tn&8?QI():_f(),Ba=Dl(25)?hq(xe(),!1,void 0,8|Ai):Spe(),Xo=V.createModuleDeclaration(xr,Pi,Ba,Tn);return Wo(oi(Xo,rt),Kt)}function vpe(rt,Kt,xr){let Tn=0,Ai;Je()===162?(Ai=_f(),Tn|=2048):(Ai=Ln(),Ai.text=YI(Ai.text));let Pi;Je()===19?Pi=Spe():KA();let Ba=V.createModuleDeclaration(xr,Ai,Pi,Tn);return Wo(oi(Ba,rt),Kt)}function l2e(rt,Kt,xr){let Tn=0;if(Je()===162)return vpe(rt,Kt,xr);if(Dl(145))Tn|=32;else if(bi(144),Je()===11)return vpe(rt,Kt,xr);return hq(rt,Kt,xr,Tn)}function cW(){return Je()===149&&Vn(mq)}function mq(){return Ot()===21}function lK(){return Ot()===19}function AWe(){return Ot()===44}function GQ(rt,Kt,xr){bi(130),bi(145);let Tn=_f();KA();let Ai=V.createNamespaceExportDeclaration(Tn);return Ai.modifiers=xr,Wo(oi(Ai,rt),Kt)}function uK(rt,Kt,xr){bi(102);let Tn=c.getTokenFullStart(),Ai;fs()&&(Ai=_f());let Pi;if(Ai?.escapedText==="type"&&(Je()!==161||fs()&&Vn(Aq))&&(fs()||no())?(Pi=156,Ai=fs()?_f():void 0):Ai?.escapedText==="defer"&&(Je()===161?!Vn(Ux):Je()!==28&&Je()!==64)&&(Pi=166,Ai=fs()?_f():void 0),Ai&&!wpe()&&Pi!==166)return Ese(rt,Kt,xr,Ai,Pi===156);let Ba=Bpe(Ai,Tn,Pi,void 0),Xo=gK(),uo=Cq();KA();let Cc=V.createImportDeclaration(xr,Ba,Xo,uo);return Wo(oi(Cc,rt),Kt)}function Bpe(rt,Kt,xr,Tn=!1){let Ai;return(rt||Je()===42||Je()===19)&&(Ai=Sse(rt,Kt,xr,Tn),bi(161)),Ai}function Cq(){let rt=Je();if((rt===118||rt===132)&&!c.hasPrecedingLineBreak())return lW(rt)}function kl(){let rt=xe(),Kt=Id(Je())?QI():jl(11);bi(59);let xr=Hy(!0);return oi(V.createImportAttribute(Kt,xr),rt)}function lW(rt,Kt){let xr=xe();Kt||bi(rt);let Tn=c.getTokenStart();if(bi(19)){let Ai=c.hasPrecedingLineBreak(),Pi=qm(24,kl,!0);if(!bi(20)){let Ba=li(pr);Ba&&Ba.code===Z._0_expected.code&&lg(Ba,QY(nt,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return oi(V.createImportAttributes(Pi,Ai,rt),xr)}else{let Ai=TA([],xe(),void 0,!1);return oi(V.createImportAttributes(Ai,!1,rt),xr)}}function no(){return Je()===42||Je()===19}function wpe(){return Je()===28||Je()===161}function Ese(rt,Kt,xr,Tn,Ai){bi(64);let Pi=FQ();KA();let Ba=V.createImportEqualsDeclaration(xr,Ai,Tn,Pi);return Wo(oi(Ba,rt),Kt)}function Sse(rt,Kt,xr,Tn){let Ai;return(!rt||Dl(28))&&(Tn&&c.setSkipJsDocLeadingAsterisks(!0),Je()===42?Ai=dWe():Ai=g2e(276),Tn&&c.setSkipJsDocLeadingAsterisks(!1)),oi(V.createImportClause(xr,rt,Ai),Kt)}function FQ(){return cW()?u2e():en(!1)}function u2e(){let rt=xe();bi(149),bi(21);let Kt=gK();return bi(22),oi(V.createExternalModuleReference(Kt),rt)}function gK(){if(Je()===11){let rt=Ln();return rt.text=YI(rt.text),rt}else return Ay()}function dWe(){let rt=xe();bi(42),bi(130);let Kt=_f();return oi(V.createNamespaceImport(Kt),rt)}function vse(){return Id(Je())||Je()===11}function gk(rt){return Je()===11?Ln():rt()}function g2e(rt){let Kt=xe(),xr=rt===276?V.createNamedImports(at(23,pWe,19,20)):V.createNamedExports(at(23,w5,19,20));return oi(xr,Kt)}function w5(){let rt=fr();return Wo(Tpe(282),rt)}function pWe(){return Tpe(277)}function Tpe(rt){let Kt=xe(),xr=v0(Je())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),Pi=!1,Ba,Xo=!0,uo=gk(QI);if(uo.kind===80&&uo.escapedText==="type")if(Je()===130){let bp=QI();if(Je()===130){let ep=QI();vse()?(Pi=!0,Ba=bp,uo=gk(Tl),Xo=!1):(Ba=uo,uo=ep,Xo=!1)}else vse()?(Ba=uo,Xo=!1,uo=gk(Tl)):(Pi=!0,uo=bp)}else vse()&&(Pi=!0,uo=gk(Tl));Xo&&Je()===130&&(Ba=uo,bi(130),uo=gk(Tl)),rt===277&&(uo.kind!==80?(Mt(Yu(tr,uo.pos),uo.end,Z.Identifier_expected),uo=TB($d(80,!1),uo.pos,uo.pos)):xr&&Mt(Tn,Ai,Z.Identifier_expected));let Cc=rt===277?V.createImportSpecifier(Pi,Ba,uo):V.createExportSpecifier(Pi,Ba,uo);return oi(Cc,Kt);function Tl(){return xr=v0(Je())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),QI()}}function A2e(rt){return oi(V.createNamespaceExport(gk(QI)),rt)}function Rpe(rt,Kt,xr){let Tn=nn();tl(!0);let Ai,Pi,Ba,Xo=Dl(156),uo=xe();Dl(42)?(Dl(130)&&(Ai=A2e(uo)),bi(161),Pi=gK()):(Ai=g2e(280),(Je()===161||Je()===11&&!c.hasPrecedingLineBreak())&&(bi(161),Pi=gK()));let Cc=Je();Pi&&(Cc===118||Cc===132)&&!c.hasPrecedingLineBreak()&&(Ba=lW(Cc)),KA(),tl(Tn);let Tl=V.createExportDeclaration(xr,Xo,Ai,Pi,Ba);return Wo(oi(Tl,rt),Kt)}function T5(rt,Kt,xr){let Tn=nn();tl(!0);let Ai;Dl(64)?Ai=!0:bi(90);let Pi=Hy(!0);KA(),tl(Tn);let Ba=V.createExportAssignment(xr,Ai,Pi);return Wo(oi(Ba,rt),Kt)}let Ak;(rt=>{rt[rt.SourceElements=0]="SourceElements",rt[rt.BlockStatements=1]="BlockStatements",rt[rt.SwitchClauses=2]="SwitchClauses",rt[rt.SwitchClauseStatements=3]="SwitchClauseStatements",rt[rt.TypeMembers=4]="TypeMembers",rt[rt.ClassMembers=5]="ClassMembers",rt[rt.EnumMembers=6]="EnumMembers",rt[rt.HeritageClauseElement=7]="HeritageClauseElement",rt[rt.VariableDeclarations=8]="VariableDeclarations",rt[rt.ObjectBindingElements=9]="ObjectBindingElements",rt[rt.ArrayBindingElements=10]="ArrayBindingElements",rt[rt.ArgumentExpressions=11]="ArgumentExpressions",rt[rt.ObjectLiteralMembers=12]="ObjectLiteralMembers",rt[rt.JsxAttributes=13]="JsxAttributes",rt[rt.JsxChildren=14]="JsxChildren",rt[rt.ArrayLiteralMembers=15]="ArrayLiteralMembers",rt[rt.Parameters=16]="Parameters",rt[rt.JSDocParameters=17]="JSDocParameters",rt[rt.RestProperties=18]="RestProperties",rt[rt.TypeParameters=19]="TypeParameters",rt[rt.TypeArguments=20]="TypeArguments",rt[rt.TupleElementTypes=21]="TupleElementTypes",rt[rt.HeritageClauses=22]="HeritageClauses",rt[rt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",rt[rt.ImportAttributes=24]="ImportAttributes",rt[rt.JSDocComment=25]="JSDocComment",rt[rt.Count=26]="Count"})(Ak||(Ak={}));let Bse;(rt=>{rt[rt.False=0]="False",rt[rt.True=1]="True",rt[rt.Unknown=2]="Unknown"})(Bse||(Bse={}));let VN;(rt=>{function Kt(Cc,Tl,bp){Zn("file.js",Cc,99,void 0,1,0),c.setText(Cc,Tl,bp),zt=c.scan();let ep=xr(),zA=hn("file.js",99,1,!1,[],Ee(1),0,Dc),Bv=XL(pr,zA);return st&&(zA.jsDocDiagnostics=XL(st,zA)),ya(),ep?{jsDocTypeExpression:ep,diagnostics:Bv}:void 0}rt.parseJSDocTypeExpressionForTests=Kt;function xr(Cc){let Tl=xe(),bp=(Cc?Dl:bi)(19),ep=Tg(16777216,aR);(!Cc||bp)&&AI(20);let zA=V.createJSDocTypeExpression(ep);return yr(zA),oi(zA,Tl)}rt.parseJSDocTypeExpression=xr;function Tn(){let Cc=xe(),Tl=Dl(19),bp=xe(),ep=en(!1);for(;Je()===81;)wn(),$r(),ep=oi(V.createJSDocMemberName(ep,_f()),bp);Tl&&AI(20);let zA=V.createJSDocNameReference(ep);return yr(zA),oi(zA,Cc)}rt.parseJSDocNameReference=Tn;function Ai(Cc,Tl,bp){Zn("",Cc,99,void 0,1,0);let ep=Tg(16777216,()=>uo(Tl,bp)),Bv=XL(pr,{languageVariant:0,text:Cc});return ya(),ep?{jsDoc:ep,diagnostics:Bv}:void 0}rt.parseIsolatedJSDocComment=Ai;function Pi(Cc,Tl,bp){let ep=zt,zA=pr.length,Bv=si,CS=Tg(16777216,()=>uo(Tl,bp));return XA(CS,Cc),Ns&524288&&(st||(st=[]),Or(st,pr,zA)),zt=ep,pr.length=zA,si=Bv,CS}rt.parseJSDocComment=Pi;let Ba;(Cc=>{Cc[Cc.BeginningOfLine=0]="BeginningOfLine",Cc[Cc.SawAsterisk=1]="SawAsterisk",Cc[Cc.SavingComments=2]="SavingComments",Cc[Cc.SavingBackticks=3]="SavingBackticks"})(Ba||(Ba={}));let Xo;(Cc=>{Cc[Cc.Property=1]="Property",Cc[Cc.Parameter=2]="Parameter",Cc[Cc.CallbackParameter=4]="CallbackParameter"})(Xo||(Xo={}));function uo(Cc=0,Tl){let bp=tr,ep=Tl===void 0?bp.length:Cc+Tl;if(Tl=ep-Cc,pe.assert(Cc>=0),pe.assert(Cc<=ep),pe.assert(ep<=bp.length),!L$e(bp,Cc))return;let zA,Bv,CS,C9,_9,Kx=[],uW=[],nd=jn;jn|=1<<25;let Fm=c.scanRange(Cc+3,Tl-5,y9);return jn=nd,Fm;function y9(){let vs=1,da,Sa=Cc-(bp.lastIndexOf(` `,Cc)+1)+4;function Fc(Ep){da||(da=Sa),Kx.push(Ep),Sa+=Ep.length}for($r();AR(5););AR(4)&&(vs=0,Sa=0);e:for(;;){switch(Je()){case 60:_q(Kx),_9||(_9=xe()),cf(q(Sa)),vs=0,da=void 0;break;case 4:Kx.push(c.getTokenText()),vs=0,Sa=0;break;case 42:let Ep=c.getTokenText();vs===1?(vs=2,Fc(Ep)):(pe.assert(vs===0),vs=1,Sa+=Ep.length);break;case 5:pe.assert(vs!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let I_=c.getTokenText();da!==void 0&&Sa+I_.length>da&&Kx.push(I_.slice(da-Sa)),Sa+=I_.length;break;case 1:break e;case 82:vs=2,Fc(c.getTokenValue());break;case 19:vs=2;let dR=c.getTokenFullStart(),XB=c.getTokenEnd()-1,Uw=yt(XB);if(Uw){C9||Z0(Kx),uW.push(oi(V.createJSDocText(Kx.join("")),C9??Cc,dR)),uW.push(Uw),Kx=[],C9=c.getTokenEnd();break}default:vs=2,Fc(c.getTokenText());break}vs===2?ri(!1):$r()}let Qc=Kx.join("").trimEnd();uW.length&&Qc.length&&uW.push(oi(V.createJSDocText(Qc),C9??Cc,_9)),uW.length&&zA&&pe.assertIsDefined(_9,"having parsed tags implies that the end of the comment span should be set");let Ug=zA&&TA(zA,Bv,CS);return oi(V.createJSDocComment(uW.length?TA(uW,Cc,_9):Qc.length?Qc:void 0,Ug),Cc,ep)}function Z0(vs){for(;vs.length&&(vs[0]===` -`||vs[0]==="\r");)vs.shift()}function _q(vs){for(;vs.length;){let da=vs[vs.length-1].trimEnd();if(da==="")vs.pop();else if(da.lengthI_&&(Fc.push(zx.slice(I_-vs)),Ep=2),vs+=zx.length;break;case 19:Ep=2;let nZ=c.getTokenFullStart(),Bse=c.getTokenEnd()-1,xpe=yt(Bse);xpe?(Qc.push(oi(V.createJSDocText(Fc.join("")),Ug??Sa,nZ)),Qc.push(xpe),Fc=[],Ug=c.getTokenEnd()):dR(c.getTokenText());break;case 62:Ep===3?Ep=2:Ep=3,dR(c.getTokenText());break;case 82:Ep!==3&&(Ep=2),dR(c.getTokenValue());break;case 42:if(Ep===0){Ep=1,vs+=1;break}default:Ep!==3&&(Ep=2),dR(c.getTokenText());break}Ep===2||Ep===3?XB=ri(Ep===3):XB=$r()}Z0(Fc);let Uw=Fc.join("").trimEnd();if(Qc.length)return Uw.length&&Qc.push(oi(V.createJSDocText(Uw),Ug??Sa)),TA(Qc,Sa,c.getTokenEnd());if(Uw.length)return Uw}function yt(vs){let da=Ui(Ii);if(!da)return;$r(),dk();let Sa=Rr(),Fc=[];for(;Je()!==20&&Je()!==4&&Je()!==1;)Fc.push(c.getTokenText()),$r();let Qc=da==="link"?V.createJSDocLink:da==="linkcode"?V.createJSDocLinkCode:V.createJSDocLinkPlain;return oi(Qc(Sa,Fc.join("")),vs,c.getTokenEnd())}function Rr(){if(Id(Je())){let vs=xe(),da=QI();for(;Dl(25);)da=oi(V.createQualifiedName(da,Je()===81?$d(80,!1):QI()),vs);for(;Je()===81;)wn(),$r(),da=oi(V.createJSDocMemberName(da,_f()),vs);return da}}function Ii(){if(vo(),Je()===19&&$r()===60&&Id($r())){let vs=c.getTokenValue();if(Jo(vs))return vs}}function Jo(vs){return vs==="link"||vs==="linkcode"||vs==="linkplain"}function Au(vs,da,Sa,Fc){return oi(V.createJSDocUnknownTag(da,Ce(vs,xe(),Sa,Fc)),vs)}function cf(vs){vs&&(zA?zA.push(vs):(zA=[vs],Bv=vs.pos),CS=vs.end)}function _2(){return vo(),Je()===19?xr():void 0}function gW(){let vs=AR(23);vs&&dk();let da=AR(62),Sa=Mst();return da&&Xg(62),vs&&(dk(),yu(64)&&Ay(),bi(24)),{name:Sa,isBracketed:vs}}function gR(vs){switch(vs.kind){case 151:return!0;case 189:return gR(vs.elementType);default:return nh(vs)&&Ir(vs.typeName)&&vs.typeName.escapedText==="Object"&&!vs.typeArguments}}function yq(vs,da,Sa,Fc){let Qc=_2(),Ug=!Qc;vo();let{name:Ep,isBracketed:I_}=gW(),dR=vo();Ug&&!Vn(Ii)&&(Qc=_2());let XB=Ce(vs,xe(),Fc,dR),Uw=AJt(Qc,Ep,Sa,Fc);Uw&&(Qc=Uw,Ug=!0);let zx=Sa===1?V.createJSDocPropertyTag(da,Ep,I_,Qc,Ug,XB):V.createJSDocParameterTag(da,Ep,I_,Qc,Ug,XB);return oi(zx,vs)}function AJt(vs,da,Sa,Fc){if(vs&&gR(vs.type)){let Qc=xe(),Ug,Ep;for(;Ug=Ui(()=>AK(Sa,Fc,da));)Ug.kind===342||Ug.kind===349?Ep=Ft(Ep,Ug):Ug.kind===346&&cn(Ug.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Ep){let I_=oi(V.createJSDocTypeLiteral(Ep,vs.type.kind===189),Qc);return oi(V.createJSDocTypeExpression(I_),Qc)}}}function Rpe(vs,da,Sa,Fc){jt(zA,e9e)&&Mt(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=_2();return oi(V.createJSDocReturnTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function bq(vs,da,Sa,Fc){jt(zA,ude)&&Mt(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=xr(!0),Ug=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocTypeTag(da,Qc,Ug),vs)}function dJt(vs,da,Sa,Fc){let Ug=Je()===23||Vn(()=>$r()===60&&Id($r())&&Jo(c.getTokenValue()))?void 0:Tn(),Ep=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSeeTag(da,Ug,Ep),vs)}function pJt(vs,da,Sa,Fc){let Qc=_2(),Ug=Ce(vs,xe(),Sa,Fc);return oi(V.createJSDocThrowsTag(da,Qc,Ug),vs)}function A2e(vs,da,Sa,Fc){let Qc=xe(),Ug=Zst(),Ep=c.getTokenFullStart(),I_=Ce(vs,Ep,Sa,Fc);I_||(Ep=c.getTokenFullStart());let dR=typeof I_!="string"?TA(Nn([oi(Ug,Qc,Ep)],I_),Qc):Ug.text+I_;return oi(V.createJSDocAuthorTag(da,dR),vs)}function Zst(){let vs=[],da=!1,Sa=c.getToken();for(;Sa!==1&&Sa!==4;){if(Sa===30)da=!0;else{if(Sa===60&&!da)break;if(Sa===32&&da){vs.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}vs.push(c.getTokenText()),Sa=$r()}return V.createJSDocText(vs.join(""))}function AW(vs,da,Sa,Fc){let Qc=ZQ();return oi(V.createJSDocImplementsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function fJt(vs,da,Sa,Fc){let Qc=ZQ();return oi(V.createJSDocAugmentsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function IJt(vs,da,Sa,Fc){let Qc=xr(!1),Ug=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSatisfiesTag(da,Qc,Ug),vs)}function hJt(vs,da,Sa,Fc){let Qc=c.getTokenFullStart(),Ug;fs()&&(Ug=_f());let Ep=vpe(Ug,Qc,156,!0),I_=gK(),dR=Cq(),XB=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocImportTag(da,Ep,I_,dR,XB),vs)}function ZQ(){let vs=Dl(19),da=xe(),Sa=Npe();c.setSkipJsDocLeadingAsterisks(!0);let Fc=Hf();c.setSkipJsDocLeadingAsterisks(!1);let Qc=V.createExpressionWithTypeArguments(Sa,Fc),Ug=oi(Qc,da);return vs&&(dk(),bi(20)),Ug}function Npe(){let vs=xe(),da=w1();for(;Dl(25);){let Sa=w1();da=oi(Ze(da,Sa),vs)}return da}function Eq(vs,da,Sa,Fc,Qc){return oi(da(Sa,Ce(vs,xe(),Fc,Qc)),vs)}function Lst(vs,da,Sa,Fc){let Qc=xr(!0);return dk(),oi(V.createJSDocThisTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Dpe(vs,da,Sa,Fc){let Qc=xr(!0);return dk(),oi(V.createJSDocEnumTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Vst(vs,da,Sa,Fc){let Qc=_2();vo();let Ug=d2e();dk();let Ep=Pe(Sa),I_;if(!Qc||gR(Qc.type)){let XB,Uw,zx,nZ=!1;for(;(XB=Ui(()=>_Jt(Sa)))&&XB.kind!==346;)if(nZ=!0,XB.kind===345)if(Uw){let Bse=bn(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);Bse&&lg(Bse,QY(nt,tr,0,0,Z.The_tag_was_first_specified_here));break}else Uw=XB;else zx=Ft(zx,XB);if(nZ){let Bse=Qc&&Qc.type.kind===189,xpe=V.createJSDocTypeLiteral(zx,Bse);Qc=Uw&&Uw.typeExpression&&!gR(Uw.typeExpression.type)?Uw.typeExpression:oi(xpe,vs),I_=Qc.end}}I_=I_||Ep!==void 0?xe():(Ug??Qc??da).end,Ep||(Ep=Ce(vs,I_,Sa,Fc));let dR=V.createJSDocTypedefTag(da,Qc,Ug,Ep);return oi(dR,vs,I_)}function d2e(vs){let da=c.getTokenStart();if(!Id(Je()))return;let Sa=w1();if(Dl(25)){let Fc=d2e(!0),Qc=V.createModuleDeclaration(void 0,Sa,Fc,vs?8:void 0);return oi(Qc,da)}return vs&&(Sa.flags|=4096),Sa}function kpe(vs){let da=xe(),Sa,Fc;for(;Sa=Ui(()=>AK(4,vs));){if(Sa.kind===346){cn(Sa.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Fc=Ft(Fc,Sa)}return TA(Fc||[],da)}function Pst(vs,da){let Sa=kpe(da),Fc=Ui(()=>{if(AR(60)){let Qc=q(da);if(Qc&&Qc.kind===343)return Qc}});return oi(V.createJSDocSignature(void 0,Sa,Fc),vs)}function Wst(vs,da,Sa,Fc){let Qc=d2e();dk();let Ug=Pe(Sa),Ep=Pst(vs,Sa);Ug||(Ug=Ce(vs,xe(),Sa,Fc));let I_=Ug!==void 0?xe():Ep.end;return oi(V.createJSDocCallbackTag(da,Ep,Qc,Ug),vs,I_)}function mJt(vs,da,Sa,Fc){dk();let Qc=Pe(Sa),Ug=Pst(vs,Sa);Qc||(Qc=Ce(vs,xe(),Sa,Fc));let Ep=Qc!==void 0?xe():Ug.end;return oi(V.createJSDocOverloadTag(da,Ug,Qc),vs,Ep)}function CJt(vs,da){for(;!Ir(vs)||!Ir(da);)if(!Ir(vs)&&!Ir(da)&&vs.right.escapedText===da.right.escapedText)vs=vs.left,da=da.left;else return!1;return vs.escapedText===da.escapedText}function _Jt(vs){return AK(1,vs)}function AK(vs,da,Sa){let Fc=!0,Qc=!1;for(;;)switch($r()){case 60:if(Fc){let Ug=Ost(vs,da);return Ug&&(Ug.kind===342||Ug.kind===349)&&Sa&&(Ir(Ug.name)||!CJt(Sa,Ug.name.left))?!1:Ug}Qc=!1;break;case 4:Fc=!0,Qc=!1;break;case 42:Qc&&(Fc=!1),Qc=!0;break;case 80:Fc=!1;break;case 1:return!1}}function Ost(vs,da){pe.assert(Je()===60);let Sa=c.getTokenFullStart();$r();let Fc=w1(),Qc=vo(),Ug;switch(Fc.escapedText){case"type":return vs===1&&bq(Sa,Fc);case"prop":case"property":Ug=1;break;case"arg":case"argument":case"param":Ug=6;break;case"template":return Io(Sa,Fc,da,Qc);case"this":return Lst(Sa,Fc,da,Qc);default:return!1}return vs&Ug?yq(Sa,Fc,vs,da):!1}function yJt(){let vs=xe(),da=AR(23);da&&dk();let Sa=Oc(!1,!0),Fc=w1(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Qc;if(da&&(dk(),bi(64),Qc=Tg(16777216,aR),bi(24)),!sf(Fc))return oi(V.createTypeParameterDeclaration(Sa,Fc,void 0,Qc),vs)}function b9(){let vs=xe(),da=[];do{dk();let Sa=yJt();Sa!==void 0&&da.push(Sa),vo()}while(AR(28));return TA(da,vs)}function Io(vs,da,Sa,Fc){let Qc=Je()===19?xr():void 0,Ug=b9();return oi(V.createJSDocTemplateTag(da,Qc,Ug,Ce(vs,xe(),Sa,Fc)),vs)}function AR(vs){return Je()===vs?($r(),!0):!1}function Mst(){let vs=w1();for(Dl(23)&&bi(24);Dl(25);){let da=w1();Dl(23)&&bi(24),vs=gi(vs,da)}return vs}function w1(vs){if(!Id(Je()))return $d(80,!vs,vs||Z.Identifier_expected);mn++;let da=c.getTokenStart(),Sa=c.getTokenEnd(),Fc=Je(),Qc=YI(c.getTokenValue()),Ug=oi(Ie(Qc,Fc),da,Sa);return $r(),Ug}}})(VN=s.JSDocParser||(s.JSDocParser={}))})(Y3||(Y3={}));var D$r=new WeakSet;function q2s(s){D$r.has(s)&&pe.fail("Source file has already been incrementally parsed"),D$r.add(s)}var k$r=new WeakSet;function $2s(s){return k$r.has(s)}function fWt(s){k$r.add(s)}var L$e;(s=>{function c(re,ge,Ie,_e){if(_e=_e||pe.shouldAssert(2),V(re,ge,Ie,_e),sy(Ie))return re;if(re.statements.length===0)return Y3.parseSourceFile(re.fileName,ge,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);q2s(re),Y3.fixupParentReferences(re);let Ee=re.text,Ne=M(re),Te=T(re,Ie);V(re,ge,Te,_e),pe.assert(Te.span.start<=Ie.span.start),pe.assert(Rs(Te.span)===Rs(Ie.span)),pe.assert(Rs(qR(Te))===Rs(qR(Ie)));let Ze=qR(Te).length-Te.span.length;R(re,Te.span.start,Rs(Te.span),Rs(qR(Te)),Ze,Ee,ge,_e);let We=Y3.parseSourceFile(re.fileName,ge,re.languageVersion,Ne,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return We.commentDirectives=g(re.commentDirectives,We.commentDirectives,Te.span.start,Rs(Te.span),Ze,Ee,ge,_e),We.impliedNodeFormat=re.impliedNodeFormat,QPt(re,We),We}s.updateSourceFile=c;function g(re,ge,Ie,_e,Ee,Ne,Te,Ze){if(!re)return ge;let We,Ue=!1;for(let Ye of re){let{range:Tt,type:ot}=Ye;if(Tt.end_e){$e();let Qe={range:{pos:Tt.pos+Ee,end:Tt.end+Ee},type:ot};We=Ft(We,Qe),Ze&&pe.assert(Ne.substring(Tt.pos,Tt.end)===Te.substring(Qe.range.pos,Qe.range.end))}}return $e(),We;function $e(){Ue||(Ue=!0,We?ge&&We.push(...ge):We=ge)}}function d(re,ge,Ie,_e,Ee,Ne,Te){Ie?We(re):Ze(re);return;function Ze(Ue){let $e="";if(Te&&h(Ue)&&($e=Ee.substring(Ue.pos,Ue.end)),b$e(Ue,ge),TB(Ue,Ue.pos+_e,Ue.end+_e),Te&&h(Ue)&&pe.assert($e===Ne.substring(Ue.pos,Ue.end)),Lu(Ue,Ze,We),Xm(Ue))for(let Ye of Ue.jsDoc)Ze(Ye);S(Ue,Te)}function We(Ue){TB(Ue,Ue.pos+_e,Ue.end+_e);for(let $e of Ue)Ze($e)}}function h(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function _(re,ge,Ie,_e,Ee){pe.assert(re.end>=ge,"Adjusting an element that was entirely before the change range"),pe.assert(re.pos<=Ie,"Adjusting an element that was entirely after the change range"),pe.assert(re.pos<=re.end);let Ne=Math.min(re.pos,_e),Te=re.end>=Ie?re.end+Ee:Math.min(re.end,_e);if(pe.assert(Ne<=Te),re.parent){let Ze=re.parent;pe.assertGreaterThanOrEqual(Ne,Ze.pos),pe.assertLessThanOrEqual(Te,Ze.end)}TB(re,Ne,Te)}function S(re,ge){if(ge){let Ie=re.pos,_e=Ee=>{pe.assert(Ee.pos>=Ie),Ie=Ee.end};if(Xm(re))for(let Ee of re.jsDoc)_e(Ee);Lu(re,_e),pe.assert(Ie<=re.end)}}function R(re,ge,Ie,_e,Ee,Ne,Te,Ze){We(re);return;function We($e){if(pe.assert($e.pos<=$e.end),$e.pos>Ie){d($e,re,!1,Ee,Ne,Te,Ze);return}let Ye=$e.end;if(Ye>=ge){if(fWt($e),b$e($e,re),_($e,ge,Ie,_e,Ee),Lu($e,We,Ue),Xm($e))for(let Tt of $e.jsDoc)We(Tt);S($e,Ze);return}pe.assert(YeIe){d($e,re,!0,Ee,Ne,Te,Ze);return}let Ye=$e.end;if(Ye>=ge){fWt($e),_($e,ge,Ie,_e,Ee);for(let Tt of $e)We(Tt);return}pe.assert(Ye0&&Te<=1;Te++){let Ze=W(re,_e);pe.assert(Ze.pos<=_e);let We=Ze.pos;_e=Math.max(0,We-1)}let Ee=wA(_e,Rs(ge.span)),Ne=ge.newLength+(ge.span.start-_e);return $2(Ee,Ne)}function W(re,ge){let Ie=re,_e;if(Lu(re,Ne),_e){let Te=Ee(_e);Te.pos>Ie.pos&&(Ie=Te)}return Ie;function Ee(Te){for(;;){let Ze=ube(Te);if(Ze)Te=Ze;else return Te}}function Ne(Te){if(!sf(Te))if(Te.pos<=ge){if(Te.pos>=Ie.pos&&(Ie=Te),gege),!0}}function V(re,ge,Ie,_e){let Ee=re.text;if(Ie&&(pe.assert(Ee.length-Ie.span.length+Ie.newLength===ge.length),_e||pe.shouldAssert(3))){let Ne=Ee.substr(0,Ie.span.start),Te=ge.substr(0,Ie.span.start);pe.assert(Ne===Te);let Ze=Ee.substring(Rs(Ie.span),Ee.length),We=ge.substring(Rs(qR(Ie)),ge.length);pe.assert(Ze===We)}}function M(re){let ge=re.statements,Ie=0;pe.assert(Ie=Ue.pos&&Te=Ue.pos&&Te{re[re.Value=-1]="Value"})(ee||(ee={}))})(L$e||(L$e={}));function PC(s){return g9e(s)!==void 0}function g9e(s){let c=gE(s,LAe,!1);if(c)return c;if(aA(s,".ts")){let g=gp(s),d=g.lastIndexOf(".d.");if(d>=0)return g.substring(d)}}function eSs(s,c,g,d){if(s){if(s==="import")return 99;if(s==="require")return 1;d(c,g-c,Z.resolution_mode_should_be_either_require_or_import)}}function V$e(s,c){let g=[];for(let d of fE(c,0)||E){let h=c.substring(d.pos,d.end);iSs(g,d,h)}s.pragmas=new Map;for(let d of g){if(s.pragmas.has(d.name)){let h=s.pragmas.get(d.name);h instanceof Array?h.push(d.args):s.pragmas.set(d.name,[h,d.args]);continue}s.pragmas.set(d.name,d.args)}}function P$e(s,c){s.checkJsDirective=void 0,s.referencedFiles=[],s.typeReferenceDirectives=[],s.libReferenceDirectives=[],s.amdDependencies=[],s.hasNoDefaultLib=!1,s.pragmas.forEach((g,d)=>{switch(d){case"reference":{let h=s.referencedFiles,_=s.typeReferenceDirectives,S=s.libReferenceDirectives;F(cc(g),R=>{let{types:T,lib:W,path:V,["resolution-mode"]:M,preserve:ee}=R.arguments,re=ee==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")s.hasNoDefaultLib=!0;else if(T){let ge=eSs(M,T.pos,T.end,c);_.push({pos:T.pos,end:T.end,fileName:T.value,...ge?{resolutionMode:ge}:{},...re?{preserve:re}:{}})}else W?S.push({pos:W.pos,end:W.end,fileName:W.value,...re?{preserve:re}:{}}):V?h.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{s.amdDependencies=At(cc(g),h=>({name:h.arguments.name,path:h.arguments.path}));break}case"amd-module":{if(g instanceof Array)for(let h of g)s.moduleName&&c(h.range.pos,h.range.end-h.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),s.moduleName=h.arguments.name;else s.moduleName=g.arguments.name;break}case"ts-nocheck":case"ts-check":{F(cc(g),h=>{(!s.checkJsDirective||h.range.pos>s.checkJsDirective.pos)&&(s.checkJsDirective={enabled:d==="ts-check",end:h.range.end,pos:h.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:pe.fail("Unhandled pragma kind")}})}var IWt=new Map;function tSs(s){if(IWt.has(s))return IWt.get(s);let c=new RegExp(`(\\s${s}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return IWt.set(s,c),c}var rSs=/^\/\/\/\s*<(\S+)\s.*?\/>/m,nSs=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function iSs(s,c,g){let d=c.kind===2&&rSs.exec(g);if(d){let _=d[1].toLowerCase(),S=e1[_];if(!S||!(S.kind&1))return;if(S.args){let R={};for(let T of S.args){let V=tSs(T.name).exec(g);if(!V&&!T.optional)return;if(V){let M=V[2]||V[3];if(T.captureSpan){let ee=c.pos+V.index+V[1].length+1;R[T.name]={value:M,pos:ee,end:ee+M.length}}else R[T.name]=M}}s.push({name:_,args:{arguments:R,range:c}})}else s.push({name:_,args:{arguments:{},range:c}});return}let h=c.kind===2&&nSs.exec(g);if(h)return x$r(s,c,2,h);if(c.kind===3){let _=/@(\S+)(\s+(?:\S.*)?)?$/gm,S;for(;S=_.exec(g);)x$r(s,c,4,S)}}function x$r(s,c,g,d){if(!d)return;let h=d[1].toLowerCase(),_=e1[h];if(!_||!(_.kind&g))return;let S=d[2],R=sSs(_,S);R!=="fail"&&s.push({name:h,args:{arguments:R,range:c}})}function sSs(s,c){if(!c)return{};if(!s.args)return{};let g=c.trim().split(/\s+/),d={};for(let h=0;h[""+c,s])),F$r=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["es2024","lib.es2024.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.arraybuffer","lib.es2017.arraybuffer.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["es2023.intl","lib.es2023.intl.d.ts"],["es2024.arraybuffer","lib.es2024.arraybuffer.d.ts"],["es2024.collection","lib.es2024.collection.d.ts"],["es2024.object","lib.es2024.object.d.ts"],["es2024.promise","lib.es2024.promise.d.ts"],["es2024.regexp","lib.es2024.regexp.d.ts"],["es2024.sharedmemory","lib.es2024.sharedmemory.d.ts"],["es2024.string","lib.es2024.string.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.es2024.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.es2024.object.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.regexp","lib.es2024.regexp.d.ts"],["esnext.string","lib.es2024.string.d.ts"],["esnext.iterator","lib.esnext.iterator.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.float16","lib.esnext.float16.d.ts"],["esnext.error","lib.esnext.error.d.ts"],["esnext.sharedmemory","lib.esnext.sharedmemory.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],A9e=F$r.map(s=>s[0]),W$e=new Map(F$r),wz=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:LWt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:LWt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],d9e=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],O$e={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,es2023:10,es2024:11,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},mWt={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,node18:101,node20:102,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},Z$r=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},O$e,mWt,{name:"lib",type:"list",element:{name:"lib",type:W$e,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:G$r,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting,defaultValueDescription:!1},{name:"isolatedDeclarations",type:"boolean",category:Z.Interop_Constraints,description:Z.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"erasableSyntaxOnly",type:"boolean",category:Z.Interop_Constraints,description:Z.Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"libReplacement",type:"boolean",affectsProgramStructure:!0,category:Z.Language_and_Environment,description:Z.Enable_lib_replacement,defaultValueDescription:!0},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBuiltinIteratorReturn",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:Z.Type_Checking,description:Z.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"rewriteRelativeImportExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files,defaultValueDescription:!1},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"noUncheckedSideEffectImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Check_side_effect_imports,defaultValueDescription:!1},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSourceFile:!0,category:Z.Language_and_Environment,description:Z.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],Ww=[...d9e,...Z$r],CWt=Ww.filter(s=>!!s.affectsSemanticDiagnostics),_Wt=Ww.filter(s=>!!s.affectsEmit),yWt=Ww.filter(s=>!!s.affectsDeclarationPath),M$e=Ww.filter(s=>!!s.affectsModuleResolution),H$e=Ww.filter(s=>!!s.affectsSourceFile||!!s.affectsBindDiagnostics),bWt=Ww.filter(s=>!!s.affectsProgramStructure),EWt=Ww.filter(s=>Da(s,"transpileOptionValue")),oSs=Ww.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),aSs=wz.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),SWt=Ww.filter(cSs);function cSs(s){return!Xs(s.type)}var SU={name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},Y$e=[SU,{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1},{name:"stopBuildOnErrors",category:Z.Command_line_Options,description:Z.Skip_building_downstream_projects_on_error_in_upstream_project,type:"boolean",defaultValueDescription:!1}],CEe=[...d9e,...Y$e],p9e=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}];function f9e(s){let c=new Map,g=new Map;return F(s,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&g.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:g}}var L$r;function vie(){return L$r||(L$r=f9e(Ww))}var lSs={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:H$r},V$r={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function vWt(s){return P$r(s,Nf)}function P$r(s,c){let g=Do(s.type.keys()),d=(s.deprecatedKeys?g.filter(h=>!s.deprecatedKeys.has(h)):g).map(h=>`'${h}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${s.name}`,d)}function I9e(s,c,g){return Een(s,(c??"").trim(),g)}function BWt(s,c="",g){if(c=c.trim(),Ac(c,"-"))return;if(s.type==="listOrElement"&&!c.includes(","))return Tz(s,c,g);if(c==="")return[];let d=c.split(",");switch(s.element.type){case"number":return Xt(d,h=>Tz(s.element,parseInt(h),g));case"string":return Xt(d,h=>Tz(s.element,h||"",g));case"boolean":case"object":return pe.fail(`List of ${s.element.type} is not yet supported.`);default:return Xt(d,h=>I9e(s.element,h,g))}}function W$r(s){return s.name}function wWt(s,c,g,d,h){var _;let S=(_=c.alternateMode)==null?void 0:_.getOptionsNameMap().optionsNameMap.get(s.toLowerCase());if(S)return X3(h,d,S!==SU?c.alternateMode.diagnostic:Z.Option_build_must_be_the_first_command_line_argument,s);let R=Dr(s,c.optionDeclarations,W$r);return R?X3(h,d,c.unknownDidYouMeanDiagnostic,g||s,R.name):X3(h,d,c.unknownOptionDiagnostic,g||s)}function Q$e(s,c,g){let d={},h,_=[],S=[];return R(c),{options:d,watchOptions:h,fileNames:_,errors:S};function R(W){let V=0;for(;Vyd.readFile(re)));if(!Xs(V)){S.push(V);return}let M=[],ee=0;for(;;){for(;ee=V.length)break;let re=ee;if(V.charCodeAt(re)===34){for(ee++;ee32;)ee++;M.push(V.substring(re,ee))}}R(M)}}function O$r(s,c,g,d,h,_){if(d.isTSConfigOnly){let S=s[c];S==="null"?(h[d.name]=void 0,c++):d.type==="boolean"?S==="false"?(h[d.name]=Tz(d,!1,_),c++):(S==="true"&&c++,_.push(Nf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(_.push(Nf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),S&&!Ac(S,"-")&&c++)}else if(!s[c]&&d.type!=="boolean"&&_.push(Nf(g.optionTypeMismatchDiagnostic,d.name,j$e(d))),s[c]!=="null")switch(d.type){case"number":h[d.name]=Tz(d,parseInt(s[c]),_),c++;break;case"boolean":let S=s[c];h[d.name]=Tz(d,S!=="false",_),(S==="false"||S==="true")&&c++;break;case"string":h[d.name]=Tz(d,s[c]||"",_),c++;break;case"list":let R=BWt(d,s[c],_);h[d.name]=R||[],R&&c++;break;case"listOrElement":pe.fail("listOrElement not supported here");break;default:h[d.name]=I9e(d,s[c],_),c++;break}else h[d.name]=void 0,c++;return c}var h9e={alternateMode:lSs,getOptionsNameMap:vie,optionDeclarations:Ww,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function TWt(s,c){return Q$e(h9e,s,c)}function X$e(s,c){return RWt(vie,s,c)}function RWt(s,c,g=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:h}=s();if(g){let _=h.get(c);_!==void 0&&(c=_)}return d.get(c)}var M$r;function H$r(){return M$r||(M$r=f9e(CEe))}var uSs={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:vie},gSs={alternateMode:uSs,getOptionsNameMap:H$r,optionDeclarations:CEe,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function NWt(s){let{options:c,watchOptions:g,fileNames:d,errors:h}=Q$e(gSs,s),_=c;return d.length===0&&d.push("."),_.clean&&_.force&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","force")),_.clean&&_.verbose&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),_.clean&&_.watch&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),_.watch&&_.dry&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:_,watchOptions:g,projects:d,errors:h}}function Zb(s,...c){return Ma(Nf(s,...c).messageText,Xs)}function _Ee(s,c,g,d,h,_){let S=fde(s,W=>g.readFile(W));if(!Xs(S)){g.onUnRecoverableConfigFileDiagnostic(S);return}let R=hEe(s,S),T=g.getCurrentDirectory();return R.path=Ou(s,T,_d(g.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,EEe(R,g,Xc(Mo(s),T),c,Xc(s,T),void 0,_,d,h)}function yEe(s,c){let g=fde(s,c);return Xs(g)?J$e(s,g):{config:{},error:g}}function J$e(s,c){let g=hEe(s,c);return{config:ren(g,g.parseDiagnostics,void 0),error:g.parseDiagnostics.length?g.parseDiagnostics[0]:void 0}}function DWt(s,c){let g=fde(s,c);return Xs(g)?hEe(s,g):{fileName:s,parseDiagnostics:[g]}}function fde(s,c){let g;try{g=c(s)}catch(d){return Nf(Z.Cannot_read_file_0_Colon_1,s,d.message)}return g===void 0?Nf(Z.Cannot_read_file_0,s):g}function U$e(s){return Ru(s,W$r)}var Y$r={optionDeclarations:p9e,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},Q$r;function X$r(){return Q$r||(Q$r=f9e(wz))}var K$e={getOptionsNameMap:X$r,optionDeclarations:wz,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},J$r;function U$r(){return J$r||(J$r=U$e(Ww))}var K$r;function j$r(){return K$r||(K$r=U$e(wz))}var z$r;function q$r(){return z$r||(z$r=U$e(p9e))}var m9e={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},$$r={name:"compilerOptions",type:"object",elementOptions:U$r(),extraKeyDiagnostics:h9e},een={name:"watchOptions",type:"object",elementOptions:j$r(),extraKeyDiagnostics:K$e},ten={name:"typeAcquisition",type:"object",elementOptions:q$r(),extraKeyDiagnostics:Y$r},kWt;function ASs(){return kWt===void 0&&(kWt={name:void 0,type:"object",elementOptions:U$e([$$r,een,ten,m9e,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},hWt])}),kWt}function ren(s,c,g){var d;let h=(d=s.statements[0])==null?void 0:d.expression;if(h&&h.kind!==211){if(c.push(_E(s,h,Z.The_root_value_of_a_0_file_must_be_an_object,gp(s.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),OI(h)){let _=de(h.elements,og);if(_)return bEe(s,_,c,!0,g)}return{}}return bEe(s,h,c,!0,g)}function xWt(s,c){var g;return bEe(s,(g=s.statements[0])==null?void 0:g.expression,c,!0,void 0)}function bEe(s,c,g,d,h){if(!c)return d?{}:void 0;return R(c,h?.rootOptions);function _(W,V){var M;let ee=d?{}:void 0;for(let re of W.properties){if(re.kind!==304){g.push(_E(s,re,Z.Property_assignment_expected));continue}re.questionToken&&g.push(_E(s,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),T(re.name)||g.push(_E(s,re.name,Z.String_literal_with_double_quotes_expected));let ge=kY(re.name)?void 0:hP(re.name),Ie=ge&&Bc(ge),_e=Ie?(M=V?.elementOptions)==null?void 0:M.get(Ie):void 0,Ee=R(re.initializer,_e);typeof Ie<"u"&&(d&&(ee[Ie]=Ee),h?.onPropertySet(Ie,Ee,re,V,_e))}return ee}function S(W,V){if(!d){W.forEach(M=>R(M,V));return}return Me(W.map(M=>R(M,V)),M=>M!==void 0)}function R(W,V){switch(W.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return T(W)||g.push(_E(s,W,Z.String_literal_with_double_quotes_expected)),W.text;case 9:return Number(W.text);case 225:if(W.operator!==41||W.operand.kind!==9)break;return-Number(W.operand.text);case 211:return _(W,V);case 210:return S(W.elements,V&&V.element)}V?g.push(_E(s,W,Z.Compiler_option_0_requires_a_value_of_type_1,V.name,j$e(V))):g.push(_E(s,W,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function T(W){return Zg(W)&&sne(W,s)}}function j$e(s){return s.type==="listOrElement"?`${j$e(s.element)} or Array`:s.type==="list"?"Array":Xs(s.type)?s.type:"string"}function nen(s,c){if(s){if(SEe(c))return!s.disallowNullOrUndefined;if(s.type==="list")return Ki(c);if(s.type==="listOrElement")return Ki(c)||nen(s.element,c);let g=Xs(s.type)?s.type:"string";return typeof c===g}return!1}function z$e(s,c,g){var d,h,_;let S=_d(g.useCaseSensitiveFileNames),R=At(Me(s.fileNames,(h=(d=s.options.configFile)==null?void 0:d.configFileSpecs)!=null&&h.validatedIncludeSpecs?fSs(c,s.options.configFile.configFileSpecs.validatedIncludeSpecs,s.options.configFile.configFileSpecs.validatedExcludeSpecs,g):Tf),ge=>i1(Xc(c,g.getCurrentDirectory()),Xc(ge,g.getCurrentDirectory()),S)),T={configFilePath:Xc(c,g.getCurrentDirectory()),useCaseSensitiveFileNames:g.useCaseSensitiveFileNames},W=q$e(s.options,T),V=s.watchOptions&&ISs(s.watchOptions),M={compilerOptions:{...C9e(W),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:V&&C9e(V),references:At(s.projectReferences,ge=>({...ge,path:ge.originalPath?ge.originalPath:"",originalPath:void 0})),files:B(R)?R:void 0,...(_=s.options.configFile)!=null&&_.configFileSpecs?{include:pSs(s.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:s.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:s.compileOnSave?!0:void 0},ee=new Set(W.keys()),re={};for(let ge in J7)if(!ee.has(ge)&&dSs(ge,ee)){let Ie=J7[ge].computeValue(s.options),_e=J7[ge].computeValue({});Ie!==_e&&(re[ge]=J7[ge].computeValue(s.options))}return Wt(M.compilerOptions,C9e(q$e(re,T))),M}function dSs(s,c){let g=new Set;return d(s);function d(h){var _;return Zy(g,h)?jt((_=J7[h])==null?void 0:_.dependencies,S=>c.has(S)||d(S)):!1}}function C9e(s){return Object.fromEntries(s)}function pSs(s){if(B(s)){if(B(s)!==1)return s;if(s[0]!==cen)return s}}function fSs(s,c,g,d){if(!c)return Tf;let h=kAe(s,g,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),_=h.excludePattern&&zD(h.excludePattern,d.useCaseSensitiveFileNames),S=h.includeFilePattern&&zD(h.includeFilePattern,d.useCaseSensitiveFileNames);return S?_?R=>!(S.test(R)&&!_.test(R)):R=>!S.test(R):_?R=>_.test(R):Tf}function ien(s){switch(s.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return ien(s.element);default:return s.type}}function _9e(s,c){return Dh(c,(g,d)=>{if(g===s)return d})}function q$e(s,c){return sen(s,vie(),c)}function ISs(s){return sen(s,X$r())}function sen(s,{optionsNameMap:c},g){let d=new Map,h=g&&_d(g.useCaseSensitiveFileNames);for(let _ in s)if(Da(s,_)){if(c.has(_)&&(c.get(_).category===Z.Command_line_Options||c.get(_).category===Z.Output_Formatting))continue;let S=s[_],R=c.get(_.toLowerCase());if(R){pe.assert(R.type!=="listOrElement");let T=ien(R);T?R.type==="list"?d.set(_,S.map(W=>_9e(W,T))):d.set(_,_9e(S,T)):g&&R.isFilePath?d.set(_,i1(g.configFilePath,Xc(S,Mo(g.configFilePath)),h)):g&&R.type==="list"&&R.element.isFilePath?d.set(_,S.map(W=>i1(g.configFilePath,Xc(W,Mo(g.configFilePath)),h))):d.set(_,S)}}return d}function GWt(s,c){let g=" ",d=[],h=Object.keys(s).filter(V=>V!=="init"&&V!=="help"&&V!=="watch");if(d.push("{"),d.push(`${g}// ${Bu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)}`),d.push(`${g}"compilerOptions": {`),S(Z.File_Layout),R("rootDir","./src","optional"),R("outDir","./dist","optional"),_(),S(Z.Environment_Settings),S(Z.See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule),R("module",199),R("target",99),R("types",[]),s.lib&&R("lib",s.lib),S(Z.For_nodejs_Colon),d.push(`${g}${g}// "lib": ["esnext"],`),d.push(`${g}${g}// "types": ["node"],`),S(Z.and_npm_install_D_types_Slashnode),_(),S(Z.Other_Outputs),R("sourceMap",!0),R("declaration",!0),R("declarationMap",!0),_(),S(Z.Stricter_Typechecking_Options),R("noUncheckedIndexedAccess",!0),R("exactOptionalPropertyTypes",!0),_(),S(Z.Style_Options),R("noImplicitReturns",!0,"optional"),R("noImplicitOverride",!0,"optional"),R("noUnusedLocals",!0,"optional"),R("noUnusedParameters",!0,"optional"),R("noFallthroughCasesInSwitch",!0,"optional"),R("noPropertyAccessFromIndexSignature",!0,"optional"),_(),S(Z.Recommended_Options),R("strict",!0),R("jsx",4),R("verbatimModuleSyntax",!0),R("isolatedModules",!0),R("noUncheckedSideEffectImports",!0),R("moduleDetection",3),R("skipLibCheck",!0),h.length>0)for(_();h.length>0;)R(h[0],s[h[0]]);function _(){d.push("")}function S(V){d.push(`${g}${g}// ${Bu(V)}`)}function R(V,M,ee="never"){let re=h.indexOf(V);re>=0&&h.splice(re,1);let ge;ee==="always"?ge=!0:ee==="never"?ge=!1:ge=!Da(s,V);let Ie=s[V]??M;ge?d.push(`${g}${g}// "${V}": ${T(V,Ie)},`):d.push(`${g}${g}"${V}": ${T(V,Ie)},`)}function T(V,M){let ee=Ww.filter(ge=>ge.name===V)[0];ee||pe.fail(`No option named ${V}?`);let re=ee.type instanceof Map?ee.type:void 0;if(Ki(M)){let ge="element"in ee&&ee.element.type instanceof Map?ee.element.type:void 0;return`[${M.map(Ie=>W(Ie,ge)).join(", ")}]`}else return W(M,re)}function W(V,M){return M&&(V=_9e(V,M)??pe.fail(`No matching value of ${V}`)),JSON.stringify(V)}return d.push(`${g}}`),d.push("}"),d.push(""),d.join(c)}function y9e(s,c){let g={},d=vie().optionsNameMap;for(let h in s)Da(s,h)&&(g[h]=hSs(d.get(h.toLowerCase()),s[h],c));return g.configFilePath&&(g.configFilePath=c(g.configFilePath)),g}function hSs(s,c,g){if(s&&!SEe(c)){if(s.type==="list"){let d=c;if(s.element.isFilePath&&d.length)return d.map(g)}else if(s.isFilePath)return g(c);pe.assert(s.type!=="listOrElement")}return c}function oen(s,c,g,d,h,_,S,R,T){return len(s,void 0,c,g,d,T,h,_,S,R)}function EEe(s,c,g,d,h,_,S,R,T){var W,V;(W=ki)==null||W.push(ki.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:s.fileName});let M=len(void 0,s,c,g,d,T,h,_,S,R);return(V=ki)==null||V.pop(),M}function $$e(s,c){c&&Object.defineProperty(s,"configFile",{enumerable:!1,writable:!1,value:c})}function SEe(s){return s==null}function aen(s,c){return Mo(Xc(s,c))}var cen="**/*";function len(s,c,g,d,h={},_,S,R=[],T=[],W){pe.assert(s===void 0&&c!==void 0||s!==void 0&&c===void 0);let V=[],M=fen(s,c,g,d,S,R,V,W),{raw:ee}=M,re=uen(OA(h,M.options||{}),oSs,d),ge=b9e(_&&M.watchOptions?OA(_,M.watchOptions):M.watchOptions||_,d);re.configFilePath=S&&Dp(S);let Ie=iu(S?aen(S,d):d),_e=Ee();return c&&(c.configFileSpecs=_e),$$e(re,c),{options:re,watchOptions:ge,fileNames:Ne(Ie),projectReferences:Te(Ie),typeAcquisition:M.typeAcquisition||ret(),raw:ee,errors:V,wildcardDirectories:RSs(_e,Ie,g.useCaseSensitiveFileNames),compileOnSave:!!ee.compileOnSave};function Ee(){let Ye=Ue("references",Gt=>typeof Gt=="object","object"),Tt=Ze(We("files"));if(Tt){let Gt=Ye==="no-prop"||Ki(Ye)&&Ye.length===0,nt=Da(ee,"extends");if(Tt.length===0&&Gt&&!nt)if(c){let Dt=S||"tsconfig.json",tr=Z.The_files_list_in_config_file_0_is_empty,ur=zre(c,"files",dt=>dt.initializer),Gr=X3(c,ur,tr,Dt);V.push(Gr)}else $e(Z.The_files_list_in_config_file_0_is_empty,S||"tsconfig.json")}let ot=Ze(We("include")),Qe=We("exclude"),mt=!1,ht=Ze(Qe);if(Qe==="no-prop"){let Gt=re.outDir,nt=re.declarationDir;(Gt||nt)&&(ht=Me([Gt,nt],Dt=>!!Dt))}Tt===void 0&&ot===void 0&&(ot=[cen],mt=!0);let _t,Rt,Lt,Ke;ot&&(_t=Ben(ot,V,!0,c,"include"),Lt=E9e(_t,Ie)||_t),ht&&(Rt=Ben(ht,V,!1,c,"exclude"),Ke=E9e(Rt,Ie)||Rt);let Pt=Me(Tt,Xs),_r=E9e(Pt,Ie)||Pt;return{filesSpecs:Tt,includeSpecs:ot,excludeSpecs:ht,validatedFilesSpec:_r,validatedIncludeSpecs:Lt,validatedExcludeSpecs:Ke,validatedFilesSpecBeforeSubstitution:Pt,validatedIncludeSpecsBeforeSubstitution:_t,validatedExcludeSpecsBeforeSubstitution:Rt,isDefaultIncludeSpec:mt}}function Ne(Ye){let Tt=Ide(_e,Ye,re,g,T);return pen(Tt,vEe(ee),R)&&V.push(den(_e,S)),Tt}function Te(Ye){let Tt,ot=Ue("references",Qe=>typeof Qe=="object","object");if(Ki(ot))for(let Qe of ot)typeof Qe.path!="string"?$e(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(Tt||(Tt=[])).push({path:Xc(Qe.path,Ye),originalPath:Qe.path,prepend:Qe.prepend,circular:Qe.circular});return Tt}function Ze(Ye){return Ki(Ye)?Ye:void 0}function We(Ye){return Ue(Ye,Xs,"string")}function Ue(Ye,Tt,ot){if(Da(ee,Ye)&&!SEe(ee[Ye]))if(Ki(ee[Ye])){let Qe=ee[Ye];return!c&&!ue(Qe,Tt)&&V.push(Nf(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,ot)),Qe}else return $e(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,"Array"),"not-array";return"no-prop"}function $e(Ye,...Tt){c||V.push(Nf(Ye,...Tt))}}function b9e(s,c){return uen(s,aSs,c)}function uen(s,c,g){if(!s)return s;let d;for(let _ of c)if(s[_.name]!==void 0){let S=s[_.name];switch(_.type){case"string":pe.assert(_.isFilePath),eet(S)&&h(_,Aen(S,g));break;case"list":pe.assert(_.element.isFilePath);let R=E9e(S,g);R&&h(_,R);break;case"object":pe.assert(_.name==="paths");let T=mSs(S,g);T&&h(_,T);break;default:pe.fail("option type not supported")}}return d||s;function h(_,S){(d??(d=Wt({},s)))[_.name]=S}}var gen="${configDir}";function eet(s){return Xs(s)&&Ac(s,gen,!0)}function Aen(s,c){return Xc(s.replace(gen,"./"),c)}function E9e(s,c){if(!s)return s;let g;return s.forEach((d,h)=>{eet(d)&&((g??(g=s.slice()))[h]=Aen(d,c))}),g}function mSs(s,c){let g;return _g(s).forEach(h=>{if(!Ki(s[h]))return;let _=E9e(s[h],c);_&&((g??(g=Wt({},s)))[h]=_)}),g}function CSs(s){return s.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function den({includeSpecs:s,excludeSpecs:c},g){return Nf(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,g||"tsconfig.json",JSON.stringify(s||[]),JSON.stringify(c||[]))}function pen(s,c,g){return s.length===0&&c&&(!g||g.length===0)}function tet(s){return!s.fileNames.length&&Da(s.raw,"references")}function vEe(s){return!Da(s,"files")&&!Da(s,"references")}function S9e(s,c,g,d,h){let _=d.length;return pen(s,h)?d.push(den(g,c)):je(d,S=>!CSs(S)),_!==d.length}function _Ss(s){return!!s.options}function fen(s,c,g,d,h,_,S,R){var T;d=Dp(d);let W=Xc(h||"",d);if(_.includes(W))return S.push(Nf(Z.Circularity_detected_while_resolving_configuration_Colon_0,[..._,W].join(" -> "))),{raw:s||xWt(c,S)};let V=s?ySs(s,g,d,h,S):bSs(c,g,d,h,S);if((T=V.options)!=null&&T.paths&&(V.options.pathsBasePath=d),V.extendedConfigPath){_=_.concat([W]);let re={options:{}};Xs(V.extendedConfigPath)?M(re,V.extendedConfigPath):V.extendedConfigPath.forEach(ge=>M(re,ge)),re.include&&(V.raw.include=re.include),re.exclude&&(V.raw.exclude=re.exclude),re.files&&(V.raw.files=re.files),V.raw.compileOnSave===void 0&&re.compileOnSave&&(V.raw.compileOnSave=re.compileOnSave),c&&re.extendedSourceFiles&&(c.extendedSourceFiles=Do(re.extendedSourceFiles.keys())),V.options=Wt(re.options,V.options),V.watchOptions=V.watchOptions&&re.watchOptions?ee(re,V.watchOptions):V.watchOptions||re.watchOptions}return V;function M(re,ge){let Ie=ESs(c,ge,g,_,S,R,re);if(Ie&&_Ss(Ie)){let _e=Ie.raw,Ee,Ne=Te=>{V.raw[Te]||_e[Te]&&(re[Te]=At(_e[Te],Ze=>eet(Ze)||Xp(Ze)?Ze:Ro(Ee||(Ee=r2(Mo(ge),d,_d(g.useCaseSensitiveFileNames))),Ze)))};Ne("include"),Ne("exclude"),Ne("files"),_e.compileOnSave!==void 0&&(re.compileOnSave=_e.compileOnSave),Wt(re.options,Ie.options),re.watchOptions=re.watchOptions&&Ie.watchOptions?ee(re,Ie.watchOptions):re.watchOptions||Ie.watchOptions}}function ee(re,ge){return re.watchOptionsCopied?Wt(re.watchOptions,ge):(re.watchOptionsCopied=!0,Wt({},re.watchOptions,ge))}}function ySs(s,c,g,d,h){Da(s,"excludes")&&h.push(Nf(Z.Unknown_option_excludes_Did_you_mean_exclude));let _=yen(s.compilerOptions,g,h,d),S=ben(s.typeAcquisition,g,h,d),R=vSs(s.watchOptions,g,h);s.compileOnSave=SSs(s,g,h);let T=s.extends||s.extends===""?Ien(s.extends,c,g,d,h):void 0;return{raw:s,options:_,watchOptions:R,typeAcquisition:S,extendedConfigPath:T}}function Ien(s,c,g,d,h,_,S,R){let T,W=d?aen(d,g):g;if(Xs(s))T=hen(s,c,W,h,S,R);else if(Ki(s)){T=[];for(let V=0;VNe.name===re)&&(W=Ft(W,Ie.name))))}}function hen(s,c,g,d,h,_){if(s=Dp(s),Xp(s)||Ac(s,"./")||Ac(s,"../")){let R=Xc(s,g);if(!c.fileExists(R)&&!di(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push(X3(_,h,Z.File_0_not_found,s));return}return R}let S=$Wt(s,Ro(g,"tsconfig.json"),c);if(S.resolvedModule)return S.resolvedModule.resolvedFileName;s===""?d.push(X3(_,h,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push(X3(_,h,Z.File_0_not_found,s))}function ESs(s,c,g,d,h,_,S){let R=g.useCaseSensitiveFileNames?c:Om(c),T,W,V;if(_&&(T=_.get(R))?{extendedResult:W,extendedConfig:V}=T:(W=DWt(c,M=>g.readFile(M)),W.parseDiagnostics.length||(V=fen(void 0,W,g,Mo(c),gp(c),d,h,_)),_&&_.set(R,{extendedResult:W,extendedConfig:V})),s&&((S.extendedSourceFiles??(S.extendedSourceFiles=new Set)).add(W.fileName),W.extendedSourceFiles))for(let M of W.extendedSourceFiles)S.extendedSourceFiles.add(M);if(W.parseDiagnostics.length){h.push(...W.parseDiagnostics);return}return V}function SSs(s,c,g){if(!Da(s,hWt.name))return!1;let d=vU(hWt,s.compileOnSave,c,g);return typeof d=="boolean"&&d}function men(s,c,g){let d=[];return{options:yen(s,c,d,g),errors:d}}function Cen(s,c,g){let d=[];return{options:ben(s,c,d,g),errors:d}}function _en(s){return s&&gp(s)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function yen(s,c,g,d){let h=_en(d);return FWt(U$r(),s,c,h,h9e,g),d&&(h.configFilePath=Dp(d)),h}function ret(s){return{enable:!!s&&gp(s)==="jsconfig.json",include:[],exclude:[]}}function ben(s,c,g,d){let h=ret(d);return FWt(q$r(),s,c,h,Y$r,g),h}function vSs(s,c,g){return FWt(j$r(),s,c,void 0,K$e,g)}function FWt(s,c,g,d,h,_){if(c){for(let S in c){let R=s.get(S);R?(d||(d={}))[R.name]=vU(R,c[S],g,_):_.push(wWt(S,h))}return d}}function X3(s,c,g,...d){return s&&c?_E(s,c,g,...d):Nf(g,...d)}function vU(s,c,g,d,h,_,S){if(s.isCommandLineOnly){d.push(X3(S,h?.name,Z.Option_0_can_only_be_specified_on_command_line,s.name));return}if(nen(s,c)){let R=s.type;if(R==="list"&&Ki(c))return Sen(s,c,g,d,h,_,S);if(R==="listOrElement")return Ki(c)?Sen(s,c,g,d,h,_,S):vU(s.element,c,g,d,h,_,S);if(!Xs(s.type))return Een(s,c,d,_,S);let T=Tz(s,c,d,_,S);return SEe(T)?T:BSs(s,g,T)}else d.push(X3(S,_,Z.Compiler_option_0_requires_a_value_of_type_1,s.name,j$e(s)))}function BSs(s,c,g){return s.isFilePath&&(g=Dp(g),g=eet(g)?g:Xc(g,c),g===""&&(g=".")),g}function Tz(s,c,g,d,h){var _;if(SEe(c))return;let S=(_=s.extraValidation)==null?void 0:_.call(s,c);if(!S)return c;g.push(X3(h,d,...S))}function Een(s,c,g,d,h){if(SEe(c))return;let _=c.toLowerCase(),S=s.type.get(_);if(S!==void 0)return Tz(s,S,g,d,h);g.push(P$r(s,(R,...T)=>X3(h,d,R,...T)))}function Sen(s,c,g,d,h,_,S){return Me(At(c,(R,T)=>vU(s.element,R,g,d,h,_?.elements[T],S)),R=>s.listPreserveFalsyValues?!0:!!R)}var wSs=/(?:^|\/)\*\*\/?$/,TSs=/^[^*?]*(?=\/[^/]*[*?])/;function Ide(s,c,g,d,h=E){c=iu(c);let _=_d(d.useCaseSensitiveFileNames),S=new Map,R=new Map,T=new Map,{validatedFilesSpec:W,validatedIncludeSpecs:V,validatedExcludeSpecs:M}=s,ee=z7(g,h),re=q7(g,ee);if(W)for(let Ee of W){let Ne=Xc(Ee,c);S.set(_(Ne),Ne)}let ge;if(V&&V.length>0)for(let Ee of d.readDirectory(c,Nr(re),M,V,void 0)){if(aA(Ee,".json")){if(!ge){let Ze=V.filter(Ue=>di(Ue,".json")),We=At(Hne(Ze,c,"files"),Ue=>`^${Ue}$`);ge=We?We.map(Ue=>zD(Ue,d.useCaseSensitiveFileNames)):E}if(Se(ge,Ze=>Ze.test(Ee))!==-1){let Ze=_(Ee);!S.has(Ze)&&!T.has(Ze)&&T.set(Ze,Ee)}continue}if(DSs(Ee,S,R,ee,_))continue;kSs(Ee,R,ee,_);let Ne=_(Ee);!S.has(Ne)&&!R.has(Ne)&&R.set(Ne,Ee)}let Ie=Do(S.values()),_e=Do(R.values());return Ie.concat(_e,Do(T.values()))}function ZWt(s,c,g,d,h){let{validatedFilesSpec:_,validatedIncludeSpecs:S,validatedExcludeSpecs:R}=c;if(!B(S)||!B(R))return!1;g=iu(g);let T=_d(d);if(_){for(let W of _)if(T(Xc(W,g))===s)return!1}return B9e(s,R,d,h,g)}function ven(s){let c=Ac(s,"**/")?0:s.indexOf("/**/");return c===-1?!1:(di(s,"/..")?s.length:s.lastIndexOf("/../"))>c}function v9e(s,c,g,d){return B9e(s,Me(c,h=>!ven(h)),g,d)}function B9e(s,c,g,d,h){let _=j7(c,Ro(iu(d),h),"exclude"),S=_&&zD(_,g);return S?S.test(s)?!0:!E0(s)&&S.test(hp(s)):!1}function Ben(s,c,g,d,h){return s.filter(S=>{if(!Xs(S))return!1;let R=LWt(S,g);return R!==void 0&&c.push(_(...R)),R===void 0});function _(S,R){let T=Pge(d,h,R);return X3(d,T,S,R)}}function LWt(s,c){if(pe.assert(typeof s=="string"),c&&wSs.test(s))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s];if(ven(s))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s]}function RSs({validatedIncludeSpecs:s,validatedExcludeSpecs:c},g,d){let h=j7(c,g,"exclude"),_=h&&new RegExp(h,d?"":"i"),S={},R=new Map;if(s!==void 0){let T=[];for(let W of s){let V=iu(Ro(g,W));if(_&&_.test(V))continue;let M=NSs(V,d);if(M){let{key:ee,path:re,flags:ge}=M,Ie=R.get(ee),_e=Ie!==void 0?S[Ie]:void 0;(_e===void 0||_efu(s,S)?S:void 0);if(!_)return!1;for(let S of _){if(aA(s,S)&&(S!==".ts"||!aA(s,".d.ts")))return!1;let R=h(fN(s,S));if(c.has(R)||g.has(R)){if(S===".d.ts"&&(aA(s,".js")||aA(s,".jsx")))continue;return!0}}return!1}function kSs(s,c,g,d){let h=F(g,_=>fu(s,_)?_:void 0);if(h)for(let _=h.length-1;_>=0;_--){let S=h[_];if(aA(s,S))return;let R=d(fN(s,S));c.delete(R)}}function PWt(s){let c={};for(let g in s)if(Da(s,g)){let d=X$e(g);d!==void 0&&(c[g]=WWt(s[g],d))}return c}function WWt(s,c){if(s===void 0)return s;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof s=="number"?s:"";case"boolean":return typeof s=="boolean"?s:"";case"listOrElement":if(!Ki(s))return WWt(s,c.element);case"list":let g=c.element;return Ki(s)?Xt(s,d=>WWt(d,g)):"";default:return Dh(c.type,(d,h)=>{if(d===s)return h})}}function LP(s){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=wt("module");if(c)return c(`${s}/`)}function wen(s){var c;return(c=LP(s))==null?void 0:c.resolveRequest("pnpapi",null)}function Ten(s){let c=LP(s);if(!c)return[];s=AE(s);let g=c.findPackageLocator(`${s}/`);if(!g)return[];let{packageDependencies:d}=c.getPackageInformation(g),h=[];for(let[_,S]of Array.from(d.entries()))if(_.startsWith("@types/")&&S!==null){let R=c.getLocator(_,S),{packageLocation:T}=c.getPackageInformation(R);h.push(Mo(T))}return h}function xSs(s,c){let g=LP(s),d=g.findPackageLocator(s),h=g.findPackageLocator(c);if(h===null)return!1;let _=g.getPackageInformation(d),S=_.packageDependencies.get(h.name);if(S)return S===h.reference;for(let R of _.packageDependencies.values())if(Array.isArray(R)&&R[0]===h.name&&R[1]===h.reference)return!0;return!1}function eu(s,c,...g){s.trace(XY(c,...g))}function VP(s,c){return!!s.traceResolution&&c.trace!==void 0}function Rz(s,c,g){let d;if(c&&s){let h=s.contents.packageJsonContent;typeof h.name=="string"&&typeof h.version=="string"&&(d={name:h.name,subModuleName:c.path.slice(s.packageDirectory.length+ag.length),version:h.version,peerDependencies:tvs(s,g)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function net(s){return Rz(void 0,s,void 0)}function Ren(s){if(s)return pe.assert(s.packageId===void 0),{path:s.path,ext:s.extension,resolvedUsingTsExtension:s.resolvedUsingTsExtension}}function w9e(s){let c=[];return s&1&&c.push("TypeScript"),s&2&&c.push("JavaScript"),s&4&&c.push("Declaration"),s&8&&c.push("JSON"),c.join(", ")}function GSs(s){let c=[];return s&1&&c.push(...Yne),s&2&&c.push(...uU),s&4&&c.push(...LAe),s&8&&c.push(".json"),c}function OWt(s){if(s)return pe.assert(PAe(s.extension)),{fileName:s.path,packageId:s.packageId}}function Nen(s,c,g,d,h,_,S,R,T){if(!S.resultFromCache&&!S.compilerOptions.preserveSymlinks&&c&&g&&!c.originalPath&&!Xr(s)){let{resolvedFileName:W,originalPath:V}=xen(c.path,S.host,S.traceEnabled);V&&(c={...c,path:W,originalPath:V})}return Den(c,g,d,h,_,S.resultFromCache,R,T)}function Den(s,c,g,d,h,_,S,R){return _?S?.isReadonly?{..._,failedLookupLocations:MWt(_.failedLookupLocations,g),affectingLocations:MWt(_.affectingLocations,d),resolutionDiagnostics:MWt(_.resolutionDiagnostics,h)}:(_.failedLookupLocations=Bie(_.failedLookupLocations,g),_.affectingLocations=Bie(_.affectingLocations,d),_.resolutionDiagnostics=Bie(_.resolutionDiagnostics,h),_):{resolvedModule:s&&{resolvedFileName:s.path,originalPath:s.originalPath===!0?void 0:s.originalPath,extension:s.extension,isExternalLibraryImport:c,packageId:s.packageId,resolvedUsingTsExtension:!!s.resolvedUsingTsExtension},failedLookupLocations:hde(g),affectingLocations:hde(d),resolutionDiagnostics:hde(h),alternateResult:R}}function hde(s){return s.length?s:void 0}function Bie(s,c){return c?.length?s?.length?(s.push(...c),s):c:s}function MWt(s,c){return s?.length?c.length?[...s,...c]:s.slice():hde(c)}function HWt(s,c,g,d){if(!Da(s,c)){d.traceEnabled&&eu(d.host,Z.package_json_does_not_have_a_0_field,c);return}let h=s[c];if(typeof h!==g||h===null){d.traceEnabled&&eu(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,g,h===null?"null":typeof h);return}return h}function iet(s,c,g,d){let h=HWt(s,c,"string",d);if(h===void 0)return;if(!h){d.traceEnabled&&eu(d.host,Z.package_json_had_a_falsy_0_field,c);return}let _=iu(Ro(g,h));return d.traceEnabled&&eu(d.host,Z.package_json_has_0_field_1_that_references_2,c,h,_),_}function FSs(s,c,g){return iet(s,"typings",c,g)||iet(s,"types",c,g)}function ZSs(s,c,g){return iet(s,"tsconfig",c,g)}function LSs(s,c,g){return iet(s,"main",c,g)}function VSs(s,c){let g=HWt(s,"typesVersions","object",c);if(g!==void 0)return c.traceEnabled&&eu(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),g}function PSs(s,c){let g=VSs(s,c);if(g===void 0)return;if(c.traceEnabled)for(let S in g)Da(g,S)&&!gt.tryParse(S)&&eu(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,S);let d=T9e(g);if(!d){c.traceEnabled&&eu(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,I);return}let{version:h,paths:_}=d;if(typeof _!="object"){c.traceEnabled&&eu(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${h}']`,"object",typeof _);return}return d}var YWt;function T9e(s){YWt||(YWt=new O(C));for(let c in s){if(!Da(s,c))continue;let g=gt.tryParse(c);if(g!==void 0&&g.test(YWt))return{version:c,paths:s[c]}}}function mde(s,c){if(s.typeRoots)return s.typeRoots;let g;if(s.configFilePath?g=Mo(s.configFilePath):c.getCurrentDirectory&&(g=c.getCurrentDirectory()),g!==void 0)return MSs(g)}function WSs(s){let c;return pE(iu(s),g=>{let d=Ro(g,OSs);(c??(c=[])).push(d)}),c}var OSs=Ro("node_modules","@types");function ken(s,c,g){let d=typeof g.useCaseSensitiveFileNames=="function"?g.useCaseSensitiveFileNames():g.useCaseSensitiveFileNames;return qf(s,c,!d)===0}function MSs(s){let c=WSs(s),g=Ten(s);if(c?.length)return[...c,...g];if(g.length)return g}function xen(s,c,g){let d=Men(s,c,g),h=ken(s,d,c);return{resolvedFileName:h?s:d,originalPath:h?void 0:s}}function Gen(s,c,g){let d=di(s,"/node_modules/@types")||di(s,"/node_modules/@types/")?iOt(c,g):c;return Ro(s,d)}function QWt(s,c,g,d,h,_,S){pe.assert(typeof s=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");let R=VP(g,d);h&&(g=h.commandLine.options);let T=c?Mo(c):void 0,W=T?_?.getFromDirectoryCache(s,S,T,h):void 0;if(!W&&T&&!Xr(s)&&(W=_?.getFromNonRelativeNameCache(s,S,T,h)),W)return R&&(eu(d,Z.Resolving_type_reference_directive_0_containing_file_1,s,c),h&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName),eu(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,s,T),We(W)),W;let V=mde(g,d);R&&(c===void 0?V===void 0?eu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,s):eu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,s,V):V===void 0?eu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,s,c):eu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,s,c,V),h&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let M=[],ee=[],re=XWt(g);S!==void 0&&(re|=30);let ge=k_(g);S===99&&3<=ge&&ge<=99&&(re|=32);let Ie=re&8?PP(g,S):[],_e=[],Ee={compilerOptions:g,host:d,traceEnabled:R,failedLookupLocations:M,affectingLocations:ee,packageJsonInfoCache:_,features:re,conditions:Ie,requestContainingDirectory:T,reportDiagnostic:Ye=>void _e.push(Ye),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Ne=Ue(),Te=!0;Ne||(Ne=$e(),Te=!1);let Ze;if(Ne){let{fileName:Ye,packageId:Tt}=Ne,ot=Ye,Qe;g.preserveSymlinks||({resolvedFileName:ot,originalPath:Qe}=xen(Ye,d,R)),Ze={primary:Te,resolvedFileName:ot,originalPath:Qe,packageId:Tt,isExternalLibraryImport:WP(Ye)}}return W={resolvedTypeReferenceDirective:Ze,failedLookupLocations:hde(M),affectingLocations:hde(ee),resolutionDiagnostics:hde(_e)},T&&_&&!_.isReadonly&&(_.getOrCreateCacheForDirectory(T,h).set(s,S,W),Xr(s)||_.getOrCreateCacheForNonRelativeName(s,S,h).set(T,W)),R&&We(W),W;function We(Ye){var Tt;(Tt=Ye.resolvedTypeReferenceDirective)!=null&&Tt.resolvedFileName?Ye.resolvedTypeReferenceDirective.packageId?eu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,oN(Ye.resolvedTypeReferenceDirective.packageId),Ye.resolvedTypeReferenceDirective.primary):eu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,Ye.resolvedTypeReferenceDirective.primary):eu(d,Z.Type_reference_directive_0_was_not_resolved,s)}function Ue(){if(V&&V.length)return R&&eu(d,Z.Resolving_with_primary_search_path_0,V.join(", ")),X(V,Ye=>{let Tt=Gen(Ye,s,Ee),ot=f1(Ye,d);if(!ot&&R&&eu(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,Ye),g.typeRoots){let Qe=Rie(4,Tt,!ot,Ee);if(Qe){let mt=wEe(Qe.path),ht=mt?aQ(mt,!1,Ee):void 0;return OWt(Rz(ht,Qe,Ee))}}return OWt(tOt(4,Tt,!ot,Ee))});R&&eu(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function $e(){let Ye=c&&Mo(c);if(Ye!==void 0){let Tt;if(!g.typeRoots||!di(c,Fde))if(R&&eu(d,Z.Looking_up_in_node_modules_folder_initial_location_0,Ye),Xr(s)){let{path:ot}=Oen(Ye,s);Tt=cet(4,ot,!1,Ee,!0)}else{let ot=zen(4,s,Ye,Ee,void 0,void 0);Tt=ot&&ot.value}else R&&eu(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return OWt(Tt)}else R&&eu(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function XWt(s){let c=0;switch(k_(s)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return s.resolvePackageJsonExports?c|=8:s.resolvePackageJsonExports===!1&&(c&=-9),s.resolvePackageJsonImports?c|=2:s.resolvePackageJsonImports===!1&&(c&=-3),c}function PP(s,c){let g=k_(s);if(c===void 0){if(g===100)c=99;else if(g===2)return[]}let d=c===99?["import"]:["require"];return s.noDtsResolution||d.push("types"),g!==100&&d.push("node"),Nn(d,s.customConditions)}function set(s,c,g,d,h){let _=_de(h?.getPackageJsonInfoCache(),d,g),S=LP(c);if(S)try{let R=S.resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1}),T=Dp(R).replace(/\/$/,"");return aQ(T,!1,_)}catch{return}return vN(d,c,R=>{if(gp(R)!=="node_modules"){let T=Ro(R,"node_modules"),W=Ro(T,s);return aQ(W,!1,_)}})}function R9e(s,c){if(s.types)return s.types;let g=[];if(c.directoryExists&&c.getDirectories){let d=mde(s,c);if(d){for(let h of d)if(c.directoryExists(h))for(let _ of c.getDirectories(h)){let S=iu(_),R=Ro(h,S,"package.json");if(!(c.fileExists(R)&&E3(R,c).typings===null)){let W=gp(S);W.charCodeAt(0)!==46&&g.push(W)}}}}return g}function N9e(s){return!!s?.contents}function JWt(s){return!!s&&!s.contents}function UWt(s){var c;if(s===null||typeof s!="object")return""+s;if(Ki(s))return`[${(c=s.map(d=>UWt(d)))==null?void 0:c.join(",")}]`;let g="{";for(let d in s)Da(s,d)&&(g+=`${d}: ${UWt(s[d])}`);return g+"}"}function oet(s,c){return c.map(g=>UWt(K7(s,g))).join("|")+`|${s.pathsBasePath}`}function Fen(s,c){let g=new Map,d=new Map,h=new Map;return s&&g.set(s,h),{getMapOfCacheRedirects:_,getOrCreateMapOfCacheRedirects:S,update:R,clear:W,getOwnMap:()=>h};function _(M){return M?T(M.commandLine.options,!1):h}function S(M){return M?T(M.commandLine.options,!0):h}function R(M){s!==M&&(s?h=T(M,!0):g.set(M,h),s=M)}function T(M,ee){let re=g.get(M);if(re)return re;let ge=V(M);if(re=d.get(ge),!re){if(s){let Ie=V(s);Ie===ge?re=h:d.has(Ie)||d.set(Ie,h)}ee&&(re??(re=new Map)),re&&d.set(ge,re)}return re&&g.set(M,re),re}function W(){let M=s&&c.get(s);h.clear(),g.clear(),c.clear(),d.clear(),s&&(M&&c.set(s,M),g.set(s,h))}function V(M){let ee=c.get(M);return ee||c.set(M,ee=oet(M,M$e)),ee}}function HSs(s,c){let g;return{getPackageJsonInfo:d,setPackageJsonInfo:h,clear:_,getInternalMap:S};function d(R){return g?.get(Ou(R,s,c))}function h(R,T){(g||(g=new Map)).set(Ou(R,s,c),T)}function _(){g=void 0}function S(){return g}}function Zen(s,c,g,d){let h=s.getOrCreateMapOfCacheRedirects(c),_=h.get(g);return _||(_=d(),h.set(g,_)),_}function YSs(s,c,g,d){let h=Fen(g,d);return{getFromDirectoryCache:T,getOrCreateCacheForDirectory:R,clear:_,update:S,directoryToModuleNameMap:h};function _(){h.clear()}function S(W){h.update(W)}function R(W,V){let M=Ou(W,s,c);return Zen(h,V,M,()=>wie())}function T(W,V,M,ee){var re,ge;let Ie=Ou(M,s,c);return(ge=(re=h.getMapOfCacheRedirects(ee))==null?void 0:re.get(Ie))==null?void 0:ge.get(W,V)}}function Cde(s,c){return c===void 0?s:`${c}|${s}`}function wie(){let s=new Map,c=new Map,g={get(h,_){return s.get(d(h,_))},set(h,_,S){return s.set(d(h,_),S),g},delete(h,_){return s.delete(d(h,_)),g},has(h,_){return s.has(d(h,_))},forEach(h){return s.forEach((_,S)=>{let[R,T]=c.get(S);return h(_,R,T)})},size(){return s.size}};return g;function d(h,_){let S=Cde(h,_);return c.set(S,[h,_]),S}}function QSs(s){return s.resolvedModule&&(s.resolvedModule.originalPath||s.resolvedModule.resolvedFileName)}function XSs(s){return s.resolvedTypeReferenceDirective&&(s.resolvedTypeReferenceDirective.originalPath||s.resolvedTypeReferenceDirective.resolvedFileName)}function JSs(s,c,g,d,h){let _=Fen(g,h);return{getFromNonRelativeNameCache:T,getOrCreateCacheForNonRelativeName:W,clear:S,update:R};function S(){_.clear()}function R(M){_.update(M)}function T(M,ee,re,ge){var Ie,_e;return pe.assert(!Xr(M)),(_e=(Ie=_.getMapOfCacheRedirects(ge))==null?void 0:Ie.get(Cde(M,ee)))==null?void 0:_e.get(re)}function W(M,ee,re){return pe.assert(!Xr(M)),Zen(_,re,Cde(M,ee),V)}function V(){let M=new Map;return{get:ee,set:re};function ee(Ie){return M.get(Ou(Ie,s,c))}function re(Ie,_e){let Ee=Ou(Ie,s,c);if(M.has(Ee))return;M.set(Ee,_e);let Ne=d(_e),Te=Ne&&ge(Ee,Ne),Ze=Ee;for(;Ze!==Te;){let We=Mo(Ze);if(We===Ze||M.has(We))break;M.set(We,_e),Ze=We}}function ge(Ie,_e){let Ee=Ou(Mo(_e),s,c),Ne=0,Te=Math.min(Ie.length,Ee.length);for(;Ned,clearAllExceptPackageJsonInfoCache:W,optionsToRedirectsKey:_};function T(){W(),d.clear()}function W(){S.clear(),R.clear()}function V(M){S.update(M),R.update(M)}}function Tie(s,c,g,d,h){let _=Len(s,c,g,d,QSs,h);return _.getOrCreateCacheForModuleName=(S,R,T)=>_.getOrCreateCacheForNonRelativeName(S,R,T),_}function D9e(s,c,g,d,h){return Len(s,c,g,d,XSs,h)}function aet(s){return{moduleResolution:2,traceResolution:s.traceResolution}}function k9e(s,c,g,d,h){return BU(s,c,aet(g),d,h)}function Ven(s,c,g,d){let h=Mo(c);return g.getFromDirectoryCache(s,d,h,void 0)}function BU(s,c,g,d,h,_,S){let R=VP(g,d);_&&(g=_.commandLine.options),R&&(eu(d,Z.Resolving_module_0_from_1,s,c),_&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,_.sourceFile.fileName));let T=Mo(c),W=h?.getFromDirectoryCache(s,S,T,_);if(W)R&&eu(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,s,T);else{let V=g.moduleResolution;switch(V===void 0?(V=k_(g),R&&eu(d,Z.Module_resolution_kind_is_not_specified_using_0,z_[V])):R&&eu(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,z_[V]),V){case 3:W=zSs(s,c,g,d,h,_,S);break;case 99:W=qSs(s,c,g,d,h,_,S);break;case 2:W=qWt(s,c,g,d,h,_,S?PP(g,S):void 0);break;case 1:W=oOt(s,c,g,d,h,_);break;case 100:W=zWt(s,c,g,d,h,_,S?PP(g,S):void 0);break;default:return pe.fail(`Unexpected moduleResolution: ${V}`)}h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(T,_).set(s,S,W),Xr(s)||h.getOrCreateCacheForNonRelativeName(s,S,_).set(T,W))}return R&&(W.resolvedModule?W.resolvedModule.packageId?eu(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,s,W.resolvedModule.resolvedFileName,oN(W.resolvedModule.packageId)):eu(d,Z.Module_name_0_was_successfully_resolved_to_1,s,W.resolvedModule.resolvedFileName):eu(d,Z.Module_name_0_was_not_resolved,s)),W}function Pen(s,c,g,d,h){let _=USs(s,c,d,h);return _?_.value:Xr(c)?KSs(s,c,g,d,h):jSs(s,c,d,h)}function USs(s,c,g,d){let{baseUrl:h,paths:_}=d.compilerOptions;if(_&&!Ip(c)){d.traceEnabled&&(h&&eu(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),eu(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let S=oAe(d.compilerOptions,d.host),R=$7(_);return rOt(s,c,S,_,R,g,!1,d)}}function KSs(s,c,g,d,h){if(!h.compilerOptions.rootDirs)return;h.traceEnabled&&eu(h.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let _=iu(Ro(g,c)),S,R;for(let T of h.compilerOptions.rootDirs){let W=iu(T);di(W,ag)||(W+=ag);let V=Ac(_,W)&&(R===void 0||R.length(s[s.None=0]="None",s[s.Imports=2]="Imports",s[s.SelfName=4]="SelfName",s[s.Exports=8]="Exports",s[s.ExportsPatternTrailers=16]="ExportsPatternTrailers",s[s.AllFeatures=30]="AllFeatures",s[s.Node16Default=30]="Node16Default",s[s.NodeNextDefault=30]="NodeNextDefault",s[s.BundlerDefault=30]="BundlerDefault",s[s.EsmMode=32]="EsmMode",s))(jWt||{});function zSs(s,c,g,d,h,_,S){return Wen(30,s,c,g,d,h,_,S)}function qSs(s,c,g,d,h,_,S){return Wen(30,s,c,g,d,h,_,S)}function Wen(s,c,g,d,h,_,S,R,T){let W=Mo(g),V=R===99?32:0,M=d.noDtsResolution?3:7;return NP(d)&&(M|=8),BEe(s|V,c,W,d,h,_,M,!1,S,T)}function $Ss(s,c,g){return BEe(0,s,c,{moduleResolution:2,allowJs:!0},g,void 0,2,!1,void 0,void 0)}function zWt(s,c,g,d,h,_,S){let R=Mo(c),T=g.noDtsResolution?3:7;return NP(g)&&(T|=8),BEe(XWt(g),s,R,g,d,h,T,!1,_,S)}function qWt(s,c,g,d,h,_,S,R){let T;return R?T=8:g.noDtsResolution?(T=3,NP(g)&&(T|=8)):T=NP(g)?15:7,BEe(S?30:0,s,Mo(c),g,d,h,T,!!R,_,S)}function $Wt(s,c,g){return BEe(30,s,Mo(c),{moduleResolution:99},g,void 0,8,!0,void 0,void 0)}function BEe(s,c,g,d,h,_,S,R,T,W){var V,M,ee,re,ge;let Ie=VP(d,h),_e=[],Ee=[],Ne=k_(d);W??(W=PP(d,Ne===100||Ne===2?void 0:s&32?99:1));let Te=[],Ze={compilerOptions:d,host:h,traceEnabled:Ie,failedLookupLocations:_e,affectingLocations:Ee,packageJsonInfoCache:_,features:s,conditions:W??E,requestContainingDirectory:g,reportDiagnostic:Ye=>void Te.push(Ye),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ie&&lU(Ne)&&eu(h,Z.Resolving_in_0_mode_with_conditions_1,s&32?"ESM":"CJS",Ze.conditions.map(Ye=>`'${Ye}'`).join(", "));let We;if(Ne===2){let Ye=S&5,Tt=S&-6;We=Ye&&$e(Ye,Ze)||Tt&&$e(Tt,Ze)||void 0}else We=$e(S,Ze);let Ue;if(Ze.resolvedPackageDirectory&&!R&&!Xr(c)){let Ye=We?.value&&S&5&&!Uen(5,We.value.resolved.extension);if((V=We?.value)!=null&&V.isExternalLibraryImport&&Ye&&s&8&&W?.includes("import")){OP(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let Tt={...Ze,features:Ze.features&-9,reportDiagnostic:Dc},ot=$e(S&5,Tt);(M=ot?.value)!=null&&M.isExternalLibraryImport&&(Ue=ot.value.resolved.path)}else if((!We?.value||Ye)&&Ne===2){OP(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let Tt={...Ze.compilerOptions,moduleResolution:100},ot={...Ze,compilerOptions:Tt,features:30,conditions:PP(Tt),reportDiagnostic:Dc},Qe=$e(S&5,ot);(ee=Qe?.value)!=null&&ee.isExternalLibraryImport&&(Ue=Qe.value.resolved.path)}}return Nen(c,(re=We?.value)==null?void 0:re.resolved,(ge=We?.value)==null?void 0:ge.isExternalLibraryImport,_e,Ee,Te,Ze,_,Ue);function $e(Ye,Tt){let Qe=Pen(Ye,c,g,(mt,ht,_t,Rt)=>cet(mt,ht,_t,Rt,!0),Tt);if(Qe)return h2({resolved:Qe,isExternalLibraryImport:WP(Qe.path)});if(Xr(c)){let{path:mt,parts:ht}=Oen(g,c),_t=cet(Ye,mt,!1,Tt,!0);return _t&&h2({resolved:_t,isExternalLibraryImport:k(ht,"node_modules")})}else{if(s&2&&Ac(c,"#")){let ht=svs(Ye,c,g,Tt,_,T);if(ht)return ht.value&&{value:{resolved:ht.value,isExternalLibraryImport:!1}}}if(s&4){let ht=ivs(Ye,c,g,Tt,_,T);if(ht)return ht.value&&{value:{resolved:ht.value,isExternalLibraryImport:!1}}}if(c.includes(":")){Ie&&eu(h,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,w9e(Ye));return}Ie&&eu(h,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,w9e(Ye));let mt=zen(Ye,c,g,Tt,_,T);return Ye&4&&(mt??(mt=rtn(c,Tt))),mt&&{value:mt.value&&{resolved:mt.value,isExternalLibraryImport:!0}}}}}function Oen(s,c){let g=Ro(s,c),d=Np(g),h=li(d);return{path:h==="."||h===".."?hp(iu(g)):iu(g),parts:d}}function Men(s,c,g){if(!c.realpath)return s;let d=iu(c.realpath(s));return g&&eu(c,Z.Resolving_real_path_for_0_result_1,s,d),d}function cet(s,c,g,d,h){if(d.traceEnabled&&eu(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,w9e(s)),!Jp(c)){if(!g){let S=Mo(c);f1(S,d.host)||(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,S),g=!0)}let _=Rie(s,c,g,d);if(_){let S=h?wEe(_.path):void 0,R=S?aQ(S,!1,d):void 0;return Rz(R,_,d)}}if(g||f1(c,d.host)||(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),g=!0),!(d.features&32))return tOt(s,c,g,d,h)}var Vx="/node_modules/";function WP(s){return s.includes(Vx)}function wEe(s,c){let g=iu(s),d=g.lastIndexOf(Vx);if(d===-1)return;let h=d+Vx.length,_=Hen(g,h,c);return g.charCodeAt(h)===64&&(_=Hen(g,_,c)),g.slice(0,_)}function Hen(s,c,g){let d=s.indexOf(ag,c+1);return d===-1?g?s.length:c:d}function eOt(s,c,g,d){return net(Rie(s,c,g,d))}function Rie(s,c,g,d){let h=Yen(s,c,g,d);if(h)return h;if(!(d.features&32)){let _=Qen(c,s,"",g,d);if(_)return _}}function Yen(s,c,g,d){if(!gp(c).includes("."))return;let _=s0(c);_===c&&(_=c.substring(0,c.lastIndexOf(".")));let S=c.substring(_.length);return d.traceEnabled&&eu(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,S),Qen(_,s,S,g,d)}function uet(s,c,g,d,h){if(s&1&&fu(c,Yne)||s&4&&fu(c,LAe)){let _=get(c,d,h),S=O7(c);return _!==void 0?{path:c,ext:S,resolvedUsingTsExtension:g?!di(g,S):void 0}:void 0}return h.isConfigLookup&&s===8&&aA(c,".json")?get(c,d,h)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:Yen(s,c,d,h)}function Qen(s,c,g,d,h){if(!d){let S=Mo(s);S&&(d=!f1(S,h.host))}switch(g){case".mjs":case".mts":case".d.mts":return c&1&&_(".mts",g===".mts"||g===".d.mts")||c&4&&_(".d.mts",g===".mts"||g===".d.mts")||c&2&&_(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&_(".cts",g===".cts"||g===".d.cts")||c&4&&_(".d.cts",g===".cts"||g===".d.cts")||c&2&&_(".cjs")||void 0;case".json":return c&4&&_(".d.json.ts")||c&8&&_(".json")||void 0;case".tsx":case".jsx":return c&1&&(_(".tsx",g===".tsx")||_(".ts",g===".tsx"))||c&4&&_(".d.ts",g===".tsx")||c&2&&(_(".jsx")||_(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(_(".ts",g===".ts"||g===".d.ts")||_(".tsx",g===".ts"||g===".d.ts"))||c&4&&_(".d.ts",g===".ts"||g===".d.ts")||c&2&&(_(".js")||_(".jsx"))||h.isConfigLookup&&_(".json")||void 0;default:return c&4&&!PC(s+g)&&_(`.d${g}.ts`)||void 0}function _(S,R){let T=get(s+S,d,h);return T===void 0?void 0:{path:T,ext:S,resolvedUsingTsExtension:!h.candidateIsFromPackageJsonField&&R}}}function get(s,c,g){var d;if(!((d=g.compilerOptions.moduleSuffixes)!=null&&d.length))return Xen(s,c,g);let h=QT(s)??"",_=h?Xne(s,h):s;return F(g.compilerOptions.moduleSuffixes,S=>Xen(_+S+h,c,g))}function Xen(s,c,g){var d;if(!c){if(g.host.fileExists(s))return g.traceEnabled&&eu(g.host,Z.File_0_exists_use_it_as_a_name_resolution_result,s),s;g.traceEnabled&&eu(g.host,Z.File_0_does_not_exist,s)}(d=g.failedLookupLocations)==null||d.push(s)}function tOt(s,c,g,d,h=!0){let _=h?aQ(c,g,d):void 0;return Rz(_,det(s,c,g,d,_),d)}function Aet(s,c,g,d,h){if(!h&&s.contents.resolvedEntrypoints!==void 0)return s.contents.resolvedEntrypoints;let _,S=5|(h?2:0),R=XWt(c),T=_de(d?.getPackageJsonInfoCache(),g,c);T.conditions=PP(c),T.requestContainingDirectory=s.packageDirectory;let W=det(S,s.packageDirectory,!1,T,s);if(_=Ft(_,W?.path),R&8&&s.contents.packageJsonContent.exports){let V=io([PP(c,99),PP(c,1)],Sc);for(let M of V){let ee={...T,failedLookupLocations:[],conditions:M,host:g},re=evs(s,s.contents.packageJsonContent.exports,ee,S);if(re)for(let ge of re)_=ps(_,ge.path)}}return s.contents.resolvedEntrypoints=_||!1}function evs(s,c,g,d){let h;if(Ki(c))for(let S of c)_(S);else if(typeof c=="object"&&c!==null&&x9e(c))for(let S in c)_(c[S]);else _(c);return h;function _(S){var R,T;if(typeof S=="string"&&Ac(S,"./"))if(S.includes("*")&&g.host.readDirectory){if(S.indexOf("*")!==S.lastIndexOf("*"))return!1;g.host.readDirectory(s.packageDirectory,GSs(d),void 0,[i_(R3(S,"**/*"),".*")]).forEach(W=>{h=ps(h,{path:W,ext:gE(W),resolvedUsingTsExtension:void 0})})}else{let W=Np(S).slice(2);if(W.includes("..")||W.includes(".")||W.includes("node_modules"))return!1;let V=Ro(s.packageDirectory,S),M=Xc(V,(T=(R=g.host).getCurrentDirectory)==null?void 0:T.call(R)),ee=uet(d,M,S,!1,g);if(ee)return h=ps(h,ee,(re,ge)=>re.path===ge.path),!0}else if(Array.isArray(S)){for(let W of S)if(_(W))return!0}else if(typeof S=="object"&&S!==null)return F(_g(S),W=>{if(W==="default"||k(g.conditions,W)||REe(g.conditions,W))return _(S[W]),!0})}}function _de(s,c,g){return{host:c,compilerOptions:g,traceEnabled:VP(g,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:s,features:0,conditions:E,requestContainingDirectory:void 0,reportDiagnostic:Dc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function yde(s,c){return vN(c.host,s,g=>aQ(g,!1,c))}function Jen(s,c){return s.contents.versionPaths===void 0&&(s.contents.versionPaths=PSs(s.contents.packageJsonContent,c)||!1),s.contents.versionPaths||void 0}function tvs(s,c){return s.contents.peerDependencies===void 0&&(s.contents.peerDependencies=rvs(s,c)||!1),s.contents.peerDependencies||void 0}function rvs(s,c){let g=HWt(s.contents.packageJsonContent,"peerDependencies","object",c);if(g===void 0)return;c.traceEnabled&&eu(c.host,Z.package_json_has_a_peerDependencies_field);let d=Men(s.packageDirectory,c.host,c.traceEnabled),h=d.substring(0,d.lastIndexOf("node_modules")+12)+ag,_="";for(let S in g)if(Da(g,S)){let R=aQ(h+S,!1,c);if(R){let T=R.contents.packageJsonContent.version;_+=`+${S}@${T}`,c.traceEnabled&&eu(c.host,Z.Found_peerDependency_0_with_1_version,S,T)}else c.traceEnabled&&eu(c.host,Z.Failed_to_find_peerDependency_0,S)}return _}function aQ(s,c,g){var d,h,_,S,R,T;let{host:W,traceEnabled:V}=g,M=Ro(s,"package.json");if(c){(d=g.failedLookupLocations)==null||d.push(M);return}let ee=(h=g.packageJsonInfoCache)==null?void 0:h.getPackageJsonInfo(M);if(ee!==void 0){if(N9e(ee))return V&&eu(W,Z.File_0_exists_according_to_earlier_cached_lookups,M),(_=g.affectingLocations)==null||_.push(M),ee.packageDirectory===s?ee:{packageDirectory:s,contents:ee.contents};ee.directoryExists&&V&&eu(W,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,M),(S=g.failedLookupLocations)==null||S.push(M);return}let re=f1(s,W);if(re&&W.fileExists(M)){let ge=E3(M,W);V&&eu(W,Z.Found_package_json_at_0,M);let Ie={packageDirectory:s,contents:{packageJsonContent:ge,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,Ie),(R=g.affectingLocations)==null||R.push(M),Ie}else re&&V&&eu(W,Z.File_0_does_not_exist,M),g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,{packageDirectory:s,directoryExists:re}),(T=g.failedLookupLocations)==null||T.push(M)}function det(s,c,g,d,h){let _=h&&Jen(h,d),S;h&&ken(h?.packageDirectory,c,d.host)&&(d.isConfigLookup?S=ZSs(h.contents.packageJsonContent,h.packageDirectory,d):S=s&4&&FSs(h.contents.packageJsonContent,h.packageDirectory,d)||s&7&&LSs(h.contents.packageJsonContent,h.packageDirectory,d)||void 0);let R=(ee,re,ge,Ie)=>{let _e=uet(ee,re,void 0,ge,Ie);if(_e)return net(_e);let Ee=ee===4?5:ee,Ne=Ie.features,Te=Ie.candidateIsFromPackageJsonField;Ie.candidateIsFromPackageJsonField=!0,h?.contents.packageJsonContent.type!=="module"&&(Ie.features&=-33);let Ze=cet(Ee,re,ge,Ie,!1);return Ie.features=Ne,Ie.candidateIsFromPackageJsonField=Te,Ze},T=S?!f1(Mo(S),d.host):void 0,W=g||!f1(c,d.host),V=Ro(c,d.isConfigLookup?"tsconfig":"index");if(_&&(!S||Jh(c,S))){let ee=mp(c,S||V,!1);d.traceEnabled&&eu(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,_.version,C,ee);let re=$7(_.paths),ge=rOt(s,ee,c,_.paths,re,R,T||W,d);if(ge)return Ren(ge.value)}let M=S&&Ren(R(s,S,T,d));if(M)return M;if(!(d.features&32))return Rie(s,V,W,d)}function Uen(s,c){return s&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||s&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||s&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||s&8&&c===".json"||!1}function TEe(s){let c=s.indexOf(ag);return s[0]==="@"&&(c=s.indexOf(ag,c+1)),c===-1?{packageName:s,rest:""}:{packageName:s.slice(0,c),rest:s.slice(c+1)}}function x9e(s){return ue(_g(s),c=>Ac(c,"."))}function nvs(s){return!jt(_g(s),c=>Ac(c,"."))}function ivs(s,c,g,d,h,_){var S,R;let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),W=yde(T,d);if(!W||!W.contents.packageJsonContent.exports||typeof W.contents.packageJsonContent.name!="string")return;let V=Np(c),M=Np(W.contents.packageJsonContent.name);if(!ue(M,(_e,Ee)=>V[Ee]===_e))return;let ee=V.slice(M.length),re=B(ee)?`.${ag}${ee.join(ag)}`:".";if(TF(d.compilerOptions)&&!WP(g))return pet(W,s,re,d,h,_);let ge=s&5,Ie=s&-6;return pet(W,ge,re,d,h,_)||pet(W,Ie,re,d,h,_)}function pet(s,c,g,d,h,_){if(s.contents.packageJsonContent.exports){if(g==="."){let S;if(typeof s.contents.packageJsonContent.exports=="string"||Array.isArray(s.contents.packageJsonContent.exports)||typeof s.contents.packageJsonContent.exports=="object"&&nvs(s.contents.packageJsonContent.exports)?S=s.contents.packageJsonContent.exports:Da(s.contents.packageJsonContent.exports,".")&&(S=s.contents.packageJsonContent.exports["."]),S)return jen(c,d,h,_,g,s,!1)(S,"",!1,".")}else if(x9e(s.contents.packageJsonContent.exports)){if(typeof s.contents.packageJsonContent.exports!="object")return d.traceEnabled&&eu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),h2(void 0);let S=Ken(c,d,h,_,g,s.contents.packageJsonContent.exports,s,!1);if(S)return S}return d.traceEnabled&&eu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),h2(void 0)}}function svs(s,c,g,d,h,_){var S,R;if(c==="#"||Ac(c,"#/"))return d.traceEnabled&&eu(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),h2(void 0);let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),W=yde(T,d);if(!W)return d.traceEnabled&&eu(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,T),h2(void 0);if(!W.contents.packageJsonContent.imports)return d.traceEnabled&&eu(d.host,Z.package_json_scope_0_has_no_imports_defined,W.packageDirectory),h2(void 0);let V=Ken(s,d,h,_,c,W.contents.packageJsonContent.imports,W,!0);return V||(d.traceEnabled&&eu(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,W.packageDirectory),h2(void 0))}function fet(s,c){let g=s.indexOf("*"),d=c.indexOf("*"),h=g===-1?s.length:g+1,_=d===-1?c.length:d+1;return h>_?-1:_>h||g===-1?1:d===-1||s.length>c.length?-1:c.length>s.length?1:0}function Ken(s,c,g,d,h,_,S,R){let T=jen(s,c,g,d,h,S,R);if(!di(h,ag)&&!h.includes("*")&&Da(_,h)){let M=_[h];return T(M,"",!1,h)}let W=bo(Me(_g(_),M=>ovs(M)||di(M,"/")),fet);for(let M of W)if(c.features&16&&V(M,h)){let ee=_[M],re=M.indexOf("*"),ge=h.substring(M.substring(0,re).length,h.length-(M.length-1-re));return T(ee,ge,!0,M)}else if(di(M,"*")&&Ac(h,M.substring(0,M.length-1))){let ee=_[M],re=h.substring(M.length-1);return T(ee,re,!0,M)}else if(Ac(h,M)){let ee=_[M],re=h.substring(M.length);return T(ee,re,!1,M)}function V(M,ee){if(di(M,"*"))return!1;let re=M.indexOf("*");return re===-1?!1:Ac(ee,M.substring(0,re))&&di(ee,M.substring(re+1))}}function ovs(s){let c=s.indexOf("*");return c!==-1&&c===s.lastIndexOf("*")}function jen(s,c,g,d,h,_,S){return R;function R(T,W,V,M){var ee,re;if(typeof T=="string"){if(!V&&W.length>0&&!di(T,"/"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);if(!Ac(T,"./")){if(S&&!Ac(T,"../")&&!Ac(T,"/")&&!Xp(T)){let $e=V?T.replace(/\*/g,W):T+W;OP(c,Z.Using_0_subpath_1_with_target_2,"imports",M,$e),OP(c,Z.Resolving_module_0_from_1,$e,_.packageDirectory+"/");let Ye=BEe(c.features,$e,_.packageDirectory+"/",c.compilerOptions,c.host,g,s,!1,d,c.conditions);return(ee=c.failedLookupLocations)==null||ee.push(...Ye.failedLookupLocations??E),(re=c.affectingLocations)==null||re.push(...Ye.affectingLocations??E),h2(Ye.resolvedModule?{path:Ye.resolvedModule.resolvedFileName,extension:Ye.resolvedModule.extension,packageId:Ye.resolvedModule.packageId,originalPath:Ye.resolvedModule.originalPath,resolvedUsingTsExtension:Ye.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0)}let Ne=(Ip(T)?Np(T).slice(1):Np(T)).slice(1);if(Ne.includes("..")||Ne.includes(".")||Ne.includes("node_modules"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);let Te=Ro(_.packageDirectory,T),Ze=Np(W);if(Ze.includes("..")||Ze.includes(".")||Ze.includes("node_modules"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);c.traceEnabled&&eu(c.host,Z.Using_0_subpath_1_with_target_2,S?"imports":"exports",M,V?T.replace(/\*/g,W):T+W);let We=ge(V?Te.replace(/\*/g,W):Te+W),Ue=_e(We,W,Ro(_.packageDirectory,"package.json"),S);return Ue||h2(Rz(_,uet(s,We,T,!1,c),c))}else if(typeof T=="object"&&T!==null)if(Array.isArray(T)){if(!B(T))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);for(let Ee of T){let Ne=R(Ee,W,V,M);if(Ne)return Ne}}else{OP(c,Z.Entering_conditional_exports);for(let Ee of _g(T))if(Ee==="default"||c.conditions.includes(Ee)||REe(c.conditions,Ee)){OP(c,Z.Matched_0_condition_1,S?"imports":"exports",Ee);let Ne=T[Ee],Te=R(Ne,W,V,M);if(Te)return OP(c,Z.Resolved_under_condition_0,Ee),OP(c,Z.Exiting_conditional_exports),Te;OP(c,Z.Failed_to_resolve_under_condition_0,Ee)}else OP(c,Z.Saw_non_matching_condition_0,Ee);OP(c,Z.Exiting_conditional_exports);return}else if(T===null)return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,_.packageDirectory,h),h2(void 0);return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);function ge(Ee){var Ne,Te;return Ee===void 0?Ee:Xc(Ee,(Te=(Ne=c.host).getCurrentDirectory)==null?void 0:Te.call(Ne))}function Ie(Ee,Ne){return hp(Ro(Ee,Ne))}function _e(Ee,Ne,Te,Ze){var We,Ue,$e,Ye;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ee.includes("/node_modules/")&&(!c.compilerOptions.configFile||Jh(_.packageDirectory,ge(c.compilerOptions.configFile.fileName),!Iet(c)))){let ot=JD({useCaseSensitiveFileNames:()=>Iet(c)}),Qe=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let mt=ge(xde(c.compilerOptions,()=>[],((Ue=(We=c.host).getCurrentDirectory)==null?void 0:Ue.call(We))||"",ot));Qe.push(mt)}else if(c.requestContainingDirectory){let mt=ge(Ro(c.requestContainingDirectory,"index.ts")),ht=ge(xde(c.compilerOptions,()=>[mt,ge(Te)],((Ye=($e=c.host).getCurrentDirectory)==null?void 0:Ye.call($e))||"",ot));Qe.push(ht);let _t=hp(ht);for(;_t&&_t.length>1;){let Rt=Np(_t);Rt.pop();let Lt=Dm(Rt);Qe.unshift(Lt),_t=hp(Lt)}}Qe.length>1&&c.reportDiagnostic(Nf(Ze?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,Ne===""?".":Ne,Te));for(let mt of Qe){let ht=Tt(mt);for(let _t of ht)if(Jh(_t,Ee,!Iet(c))){let Rt=Ee.slice(_t.length+1),Lt=Ro(mt,Rt),Ke=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let Pt of Ke)if(aA(Lt,Pt)){let _r=Hye(Lt);for(let Gt of _r){if(!Uen(s,Gt))continue;let nt=K2(Lt,Gt,Pt,!Iet(c));if(c.host.fileExists(nt))return h2(Rz(_,uet(s,nt,void 0,!1,c),c))}}}}}return;function Tt(ot){var Qe,mt;let ht=c.compilerOptions.configFile?((mt=(Qe=c.host).getCurrentDirectory)==null?void 0:mt.call(Qe))||"":ot,_t=[];return c.compilerOptions.declarationDir&&_t.push(ge(Ie(ht,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&_t.push(ge(Ie(ht,c.compilerOptions.outDir))),_t}}}}function REe(s,c){if(!s.includes("types")||!Ac(c,"types@"))return!1;let g=gt.tryParse(c.substring(6));return g?g.test(C):!1}function zen(s,c,g,d,h,_){return qen(s,c,g,d,!1,h,_)}function avs(s,c,g){return qen(4,s,c,g,!0,void 0,void 0)}function qen(s,c,g,d,h,_,S){let R=d.features===0?void 0:d.features&32||d.conditions.includes("import")?99:1,T=s&5,W=s&-6;if(T){OP(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,w9e(T));let M=V(T);if(M)return M}if(W&&!h)return OP(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,w9e(W)),V(W);function V(M){let ee=Dp(g);if(LP(ee)){let re=sOt(_,c,R,ee,S,d);return re||h2(cvs(M,c,ee,d,h,_,S))}return vN(d.host,Dp(g),re=>{if(gp(re)!=="node_modules"){let ge=sOt(_,c,R,re,S,d);return ge||h2($en(M,c,re,d,h,_,S))}})}}function vN(s,c,g){var d;let h=(d=s?.getGlobalTypingsCacheLocation)==null?void 0:d.call(s);return pE(c,_=>{let S=g(_);if(S!==void 0)return S;if(_===h)return!1})||void 0}function $en(s,c,g,d,h,_,S){let R=Ro(g,"node_modules"),T=f1(R,d.host);if(!T&&d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!h){let W=etn(s,c,R,T,d,_,S);if(W)return W}if(s&4){let W=Ro(R,"@types"),V=T;return T&&!f1(W,d.host)&&(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,W),V=!1),etn(4,iOt(c,d),W,V,d,_,S)}}function cvs(s,c,g,d,h,_,S){let R=Dp(g);if(!h){let T=ntn(s,c,R,d,_,S);if(T)return T}if(s&4)return ntn(4,`@types/${iOt(c,d)}`,R,d,_,S)}function etn(s,c,g,d,h,_,S){let R=iu(Ro(g,c)),{packageName:T,rest:W}=TEe(c),V=Ro(g,T);return ttn(s,d,h,_,S,R,W,V)}function lvs(s,c,g,d,h,_){let S=iu(Ro(c,g));return ttn(s,!0,d,h,_,S,g,c)}function ttn(s,c,g,d,h,_,S,R){var T,W;let V,M=aQ(_,!c,g);if(S!==""&&M&&(!(g.features&8)||!Da(((T=V=aQ(R,!c,g))==null?void 0:T.contents.packageJsonContent)??E,"exports"))){let ge=Rie(s,_,!c,g);if(ge)return net(ge);let Ie=det(s,_,!c,g,M);return Rz(M,Ie,g)}let ee=(ge,Ie,_e,Ee)=>{let Ne=(S||!(Ee.features&32))&&Rie(ge,Ie,_e,Ee)||det(ge,Ie,_e,Ee,M);return!Ne&&!S&&M&&(M.contents.packageJsonContent.exports===void 0||M.contents.packageJsonContent.exports===null)&&Ee.features&32&&(Ne=Rie(ge,Ro(Ie,"index.js"),_e,Ee)),Rz(M,Ne,Ee)};if(S!==""&&(M=V??aQ(R,!c,g)),M&&(g.resolvedPackageDirectory=!0),M&&M.contents.packageJsonContent.exports&&g.features&8)return(W=pet(M,s,Ro(".",S),g,d,h))==null?void 0:W.value;let re=S!==""&&M?Jen(M,g):void 0;if(re){g.traceEnabled&&eu(g.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,C,S);let ge=c&&f1(R,g.host),Ie=$7(re.paths),_e=rOt(s,S,R,re.paths,Ie,ee,!ge,g);if(_e)return _e.value}return ee(s,_,!c,g)}function rOt(s,c,g,d,h,_,S,R){let T=Tbe(h,c);if(T){let W=Xs(T)?void 0:pw(T,c),V=Xs(T)?T:j1(T);return R.traceEnabled&&eu(R.host,Z.Module_name_0_matched_pattern_1,c,V),{value:F(d[V],ee=>{let re=W?R3(ee,W):ee,ge=iu(Ro(g,re));R.traceEnabled&&eu(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,ee,re);let Ie=QT(ee);if(Ie!==void 0){let _e=get(ge,S,R);if(_e!==void 0)return net({path:_e,ext:Ie,resolvedUsingTsExtension:void 0})}return _(s,ge,S||!f1(Mo(ge),R.host),R)})}}}var nOt="__";function iOt(s,c){let g=Nie(s);return c.traceEnabled&&g!==s&&eu(c.host,Z.Scoped_package_detected_looking_in_0,g),g}function G9e(s){return`@types/${Nie(s)}`}function Nie(s){if(Ac(s,"@")){let c=s.replace(ag,nOt);if(c!==s)return c.slice(1)}return s}function bde(s){let c=Nm(s,"@types/");return c!==s?NEe(c):s}function NEe(s){return s.includes(nOt)?"@"+s.replace(nOt,ag):s}function sOt(s,c,g,d,h,_){let S=s&&s.getFromNonRelativeNameCache(c,g,d,h);if(S)return _.traceEnabled&&eu(_.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),_.resultFromCache=S,{value:S.resolvedModule&&{path:S.resolvedModule.resolvedFileName,originalPath:S.resolvedModule.originalPath||!0,extension:S.resolvedModule.extension,packageId:S.resolvedModule.packageId,resolvedUsingTsExtension:S.resolvedModule.resolvedUsingTsExtension}}}function oOt(s,c,g,d,h,_){let S=VP(g,d),R=[],T=[],W=Mo(c),V=[],M={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:W,reportDiagnostic:ge=>void V.push(ge),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},ee=re(5)||re(2|(g.resolveJsonModule?8:0));return Nen(s,ee&&ee.value,ee?.value&&WP(ee.value.path),R,T,V,M,h);function re(ge){let Ie=Pen(ge,s,W,eOt,M);if(Ie)return{value:Ie};if(Xr(s)){let _e=iu(Ro(W,s));return h2(eOt(ge,_e,!1,M))}else{let _e=vN(M.host,W,Ee=>{let Ne=sOt(h,s,void 0,Ee,_,M);if(Ne)return Ne;let Te=iu(Ro(Ee,s));return h2(eOt(ge,Te,!1,M))});if(_e)return _e;if(ge&5){let Ee=avs(s,W,M);return ge&4&&(Ee??(Ee=rtn(s,M))),Ee}}}}function rtn(s,c){if(c.compilerOptions.typeRoots)for(let g of c.compilerOptions.typeRoots){let d=Gen(g,s,c),h=f1(g,c.host);!h&&c.traceEnabled&&eu(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,g);let _=Rie(4,d,!h,c);if(_){let R=wEe(_.path),T=R?aQ(R,!1,c):void 0;return h2(Rz(T,_,c))}let S=tOt(4,d,!h,c);if(S)return h2(S)}}function Die(s,c){return eLe(s)||!!c&&PC(c)}function aOt(s,c,g,d,h,_){let S=VP(g,d);S&&eu(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,s,h);let R=[],T=[],W=[],V={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:_,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:ee=>void W.push(ee),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},M=$en(4,s,h,V,!1,void 0,void 0);return Den(M,!0,R,T,W,V.resultFromCache,void 0)}function h2(s){return s!==void 0?{value:s}:void 0}function OP(s,c,...g){s.traceEnabled&&eu(s.host,c,...g)}function Iet(s){return s.host.useCaseSensitiveFileNames?typeof s.host.useCaseSensitiveFileNames=="boolean"?s.host.useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames():!0}function uvs(s,c){try{let g=LP(c).resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1});return Dp(g).replace(/\/$/,"")}catch{}}function ntn(s,c,g,d,h,_){let{packageName:S,rest:R}=TEe(c),T=uvs(S,g);return T?lvs(s,T,R,d,h,_):void 0}var cOt=(s=>(s[s.NonInstantiated=0]="NonInstantiated",s[s.Instantiated=1]="Instantiated",s[s.ConstEnumOnly=2]="ConstEnumOnly",s))(cOt||{});function PF(s,c){return s.body&&!s.body.parent&&(XA(s.body,s),UL(s.body,!1)),s.body?lOt(s.body,c):1}function lOt(s,c=new Map){let g=rd(s);if(c.has(g))return c.get(g)||0;c.set(g,void 0);let d=gvs(s,c);return c.set(g,d),d}function gvs(s,c){switch(s.kind){case 265:case 266:return 0;case 267:if(VA(s))return 2;break;case 273:case 272:if(!Ga(s,32))return 0;break;case 279:let g=s;if(!g.moduleSpecifier&&g.exportClause&&g.exportClause.kind===280){let d=0;for(let h of g.exportClause.elements){let _=Avs(h,c);if(_>d&&(d=_),d===1)return d}return d}break;case 269:{let d=0;return Lu(s,h=>{let _=lOt(h,c);switch(_){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:pe.assertNever(_)}}),d}case 268:return PF(s,c);case 80:if(s.flags&4096)return 0}return 1}function Avs(s,c){let g=s.propertyName||s.name;if(g.kind!==80)return 1;let d=s.parent;for(;d;){if($u(d)||_N(d)||ll(d)){let h=d.statements,_;for(let S of h)if(t3(S,g)){S.parent||(XA(S,d),UL(S,!1));let R=lOt(S,c);if((_===void 0||R>_)&&(_=R),_===1)return _;S.kind===272&&(_=1)}if(_!==void 0)return _}d=d.parent}return 1}var uOt=(s=>(s[s.None=0]="None",s[s.IsContainer=1]="IsContainer",s[s.IsBlockScopedContainer=2]="IsBlockScopedContainer",s[s.IsControlFlowContainer=4]="IsControlFlowContainer",s[s.IsFunctionLike=8]="IsFunctionLike",s[s.IsFunctionExpression=16]="IsFunctionExpression",s[s.HasLocals=32]="HasLocals",s[s.IsInterface=64]="IsInterface",s[s.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",s))(uOt||{});function rk(s,c,g){return pe.attachFlowNodeDebugInfo({flags:s,id:0,node:c,antecedent:g})}var dvs=pvs();function gOt(s,c){Mc("beforeBind"),dvs(s,c),Mc("afterBind"),Pf("Bind","beforeBind","afterBind")}function pvs(){var s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt=!1,ot=0,Qe,mt,ht=rk(1,void 0,void 0),_t=rk(1,void 0,void 0),Rt=xe();return Ke;function Lt(Fe,gr,...Ln){return _E(ms(Fe)||s,Fe,gr,...Ln)}function Ke(Fe,gr){var Ln,bs;s=Fe,c=gr,g=Mg(c),Ye=Pt(s,gr),mt=new Set,ot=0,Qe=ZC.getSymbolConstructor(),pe.attachFlowNodeDebugInfo(ht),pe.attachFlowNodeDebugInfo(_t),s.locals||((Ln=ki)==null||Ln.push(ki.Phase.Bind,"bindSourceFile",{path:s.path},!0),Ss(s),(bs=ki)==null||bs.pop(),s.symbolCount=ot,s.classifiableNames=mt,jp(),Xg()),s=void 0,c=void 0,g=void 0,d=void 0,h=void 0,_=void 0,S=void 0,R=void 0,T=void 0,V=void 0,W=!1,M=void 0,ee=void 0,re=void 0,ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Te=void 0,Ze=!1,We=!1,Ue=!1,Tt=!1,$e=0}function Pt(Fe,gr){return a_(gr,"alwaysStrict")&&!Fe.isDeclarationFile?!0:!!Fe.externalModuleIndicator}function _r(Fe,gr){return ot++,new Qe(Fe,gr)}function Gt(Fe,gr,Ln){Fe.flags|=Ln,gr.symbol=Fe,Fe.declarations=ps(Fe.declarations,gr),Ln&1955&&!Fe.exports&&(Fe.exports=qu()),Ln&6240&&!Fe.members&&(Fe.members=qu()),Fe.constEnumOnlyModule&&Fe.flags&304&&(Fe.constEnumOnlyModule=!1),Ln&111551&&S7(Fe,gr)}function nt(Fe){if(Fe.kind===278)return Fe.isExportEquals?"export=":"default";let gr=Il(Fe);if(gr){if(s_(Fe)){let Ln=c2(gr);return vB(Fe)?"__global":`"${Ln}"`}if(gr.kind===168){let Ln=gr.expression;if(d1(Ln))return Ap(Ln.text);if(Cne(Ln))return Vi(Ln.operator)+Ln.operand.text;pe.fail("Only computed properties with literal names have declaration names")}if(p(gr)){let Ln=hC(Fe);if(!Ln)return;let bs=Ln.symbol;return _ne(bs,gr.escapedText)}return eR(gr)?oS(gr):Tw(gr)?qJ(gr):void 0}switch(Fe.kind){case 177:return"__constructor";case 185:case 180:case 324:return"__call";case 186:case 181:return"__new";case 182:return"__index";case 279:return"__export";case 308:return"export=";case 227:if(nI(Fe)===2)return"export=";pe.fail("Unknown binary declaration kind");break;case 318:return PY(Fe)?"__new":"__call";case 170:return pe.assert(Fe.parent.kind===318,"Impossible parameter parent kind",()=>`parent is: ${pe.formatSyntaxKind(Fe.parent.kind)}, expected JSDocFunctionType`),"arg"+Fe.parent.parameters.indexOf(Fe)}}function Dt(Fe){return rh(Fe)?Wd(Fe.name):Bc(pe.checkDefined(nt(Fe)))}function tr(Fe,gr,Ln,bs,Xl,eg,jl){pe.assert(jl||!XD(Ln));let Eu=Ga(Ln,2048)||R0(Ln)&&lv(Ln.name),Df=jl?"__computed":Eu&&gr?"default":nt(Ln),Jg;if(Df===void 0)Jg=_r(0,"__missing");else if(Jg=Fe.get(Df),bs&2885600&&mt.add(Df),!Jg)Fe.set(Df,Jg=_r(0,Df)),eg&&(Jg.isReplaceableByMethod=!0);else{if(eg&&!Jg.isReplaceableByMethod)return Jg;if(Jg.flags&Xl){if(Jg.isReplaceableByMethod)Fe.set(Df,Jg=_r(0,Df));else if(!(bs&3&&Jg.flags&67108864)){rh(Ln)&&XA(Ln.name,Ln);let MC=Jg.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,S1=!0;(Jg.flags&384||bs&384)&&(MC=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,S1=!1);let fS=!1;B(Jg.declarations)&&(Eu||Jg.declarations&&Jg.declarations.length&&Ln.kind===278&&!Ln.isExportEquals)&&(MC=Z.A_module_cannot_have_multiple_default_exports,S1=!1,fS=!0);let bv=[];FB(Ln)&&sf(Ln.type)&&Ga(Ln,32)&&Jg.flags&2887656&&bv.push(Lt(Ln,Z.Did_you_mean_0,`export type { ${Bc(Ln.name.escapedText)} }`));let XF=Il(Ln)||Ln;F(Jg.declarations,(My,sk)=>{let aR=Il(My)||My,WB=S1?Lt(aR,MC,Dt(My)):Lt(aR,MC);s.bindDiagnostics.push(fS?lg(WB,Lt(XF,sk===0?Z.Another_export_default_is_here:Z.and_here)):WB),fS&&bv.push(Lt(aR,Z.The_first_export_default_is_here))});let o9=S1?Lt(XF,MC,Dt(Ln)):Lt(XF,MC);s.bindDiagnostics.push(lg(o9,...bv)),Jg=_r(0,Df)}}}return Gt(Jg,Ln,bs),Jg.parent?pe.assert(Jg.parent===gr,"Existing symbol parent should match new one"):Jg.parent=gr,Jg}function ur(Fe,gr,Ln){let bs=!!(Hc(Fe)&32)||Gr(Fe);if(gr&2097152)return Fe.kind===282||Fe.kind===272&&bs?tr(h.symbol.exports,h.symbol,Fe,gr,Ln):(pe.assertNode(h,WI),tr(h.locals,void 0,Fe,gr,Ln));if(iS(Fe)&&pe.assert(wo(Fe)),!s_(Fe)&&(bs||h.flags&128)){if(!WI(h)||!h.locals||Ga(Fe,2048)&&!nt(Fe))return tr(h.symbol.exports,h.symbol,Fe,gr,Ln);let Xl=gr&111551?1048576:0,eg=tr(h.locals,void 0,Fe,Xl,Ln);return eg.exportSymbol=tr(h.symbol.exports,h.symbol,Fe,gr,Ln),Fe.localSymbol=eg,eg}else return pe.assertNode(h,WI),tr(h.locals,void 0,Fe,gr,Ln)}function Gr(Fe){if(Fe.parent&&xh(Fe)&&(Fe=Fe.parent),!iS(Fe))return!1;if(!oEe(Fe)&&Fe.fullName)return!0;let gr=Il(Fe);return gr?!!(BF(gr.parent)&&yv(gr.parent)||jh(gr.parent)&&Hc(gr.parent)&32):!1}function dt(Fe,gr){let Ln=h,bs=_,Xl=S,eg=We;if(Fe.kind===220&&Fe.body.kind!==242&&(We=!0),gr&1?(Fe.kind!==220&&(_=h),h=S=Fe,gr&32&&(h.locals=qu(),Ui(h))):gr&2&&(S=Fe,gr&32&&(S.locals=void 0)),gr&4){let jl=M,Eu=ee,Df=re,Jg=ge,MC=Ee,S1=Te,fS=Ze,bv=gr&16&&!Ga(Fe,1024)&&!Fe.asteriskToken&&!!ZL(Fe)||Fe.kind===176;bv||(M=rk(2,void 0,void 0),gr&144&&(M.node=Fe)),ge=bv||Fe.kind===177||wo(Fe)&&(Fe.kind===263||Fe.kind===219)?si():void 0,Ee=void 0,ee=void 0,re=void 0,Te=void 0,Ze=!1,zt(Fe),Fe.flags&=-5633,!(M.flags&1)&&gr&8&&u1(Fe.body)&&(Fe.flags|=512,Ze&&(Fe.flags|=1024),Fe.endFlowNode=M),Fe.kind===308&&(Fe.flags|=$e,Fe.endFlowNode=M),ge&&(Zn(ge,M),M=hc(ge),(Fe.kind===177||Fe.kind===176||wo(Fe)&&(Fe.kind===263||Fe.kind===219))&&(Fe.returnFlowNode=M)),bv||(M=jl),ee=Eu,re=Df,ge=Jg,Ee=MC,Te=S1,Ze=fS}else gr&64?(W=!1,zt(Fe),pe.assertNotNode(Fe,Ir),Fe.flags=W?Fe.flags|256:Fe.flags&-257):zt(Fe);We=eg,h=Ln,_=bs,S=Xl}function pr(Fe){st(Fe,gr=>gr.kind===263?Ss(gr):void 0),st(Fe,gr=>gr.kind!==263?Ss(gr):void 0)}function st(Fe,gr=Ss){Fe!==void 0&&F(Fe,gr)}function ir(Fe){Lu(Fe,Ss,st)}function zt(Fe){let gr=Tt;if(Tt=!1,ul(Fe)){UJ(Fe)&&Fe.flowNode&&(Fe.flowNode=void 0),ir(Fe),Uc(Fe),Tt=gr;return}switch(Fe.kind>=244&&Fe.kind<=260&&(!c.allowUnreachableCode||Fe.kind===254)&&(Fe.flowNode=M),Fe.kind){case 248:Tg(Fe);break;case 247:Cs(Fe);break;case 249:Tu(Fe);break;case 250:case 251:Pr(Fe);break;case 246:Pn(Fe);break;case 254:case 258:pt(Fe);break;case 253:case 252:nr(Fe);break;case 259:Fr(Fe);break;case 256:Kr(Fe);break;case 270:Dn(Fe);break;case 297:hr(Fe);break;case 245:En(Fe);break;case 257:Gi(Fe);break;case 225:Mt(Fe);break;case 226:cn(Fe);break;case 227:if(Dx(Fe)){Tt=gr,Bt(Fe);return}Rt(Fe);break;case 221:fr(Fe);break;case 228:Je(Fe);break;case 261:Hn(Fe);break;case 212:case 213:Wi(Fe);break;case 214:Vn(Fe);break;case 236:es(Fe);break;case 347:case 339:case 341:ao(Fe);break;case 352:Ys(Fe);break;case 308:{pr(Fe.statements),Ss(Fe.endOfFileToken);break}case 242:case 269:pr(Fe.statements);break;case 209:Ot(Fe);break;case 170:$r(Fe);break;case 211:case 210:case 304:case 231:Tt=gr;default:ir(Fe);break}Uc(Fe),Tt=gr}function Ht(Fe){switch(Fe.kind){case 80:case 110:return!0;case 212:case 213:return mn(Fe);case 214:return jn(Fe);case 218:if(sQ(Fe))return!1;case 236:return Ht(Fe.expression);case 227:return Ns(Fe);case 225:return Fe.operator===54&&Ht(Fe.operand);case 222:return Ht(Fe.expression)}return!1}function Br(Fe){switch(Fe.kind){case 80:case 110:case 108:case 237:return!0;case 212:case 218:case 236:return Br(Fe.expression);case 213:return(d1(Fe.argumentExpression)||Od(Fe.argumentExpression))&&Br(Fe.expression);case 227:return Fe.operatorToken.kind===28&&Br(Fe.right)||UD(Fe.operatorToken.kind)&&D_(Fe.left)}return!1}function mn(Fe){return Br(Fe)||GC(Fe)&&mn(Fe.expression)}function jn(Fe){if(Fe.arguments){for(let gr of Fe.arguments)if(mn(gr))return!0}return!!(Fe.expression.kind===212&&mn(Fe.expression.expression))}function Zi(Fe,gr){return CN(Fe)&&An(Fe.expression)&&mA(gr)}function Ns(Fe){switch(Fe.operatorToken.kind){case 64:case 76:case 77:case 78:return mn(Fe.left);case 35:case 36:case 37:case 38:let gr=QA(Fe.left),Ln=QA(Fe.right);return An(gr)||An(Ln)||Zi(Ln,gr)||Zi(gr,Ln)||hY(Ln)&&Ht(gr)||hY(gr)&&Ht(Ln);case 104:return An(Fe.left);case 103:return Ht(Fe.right);case 28:return Ht(Fe.right)}return!1}function An(Fe){switch(Fe.kind){case 218:return An(Fe.expression);case 227:switch(Fe.operatorToken.kind){case 64:return An(Fe.left);case 28:return An(Fe.right)}}return mn(Fe)}function si(){return rk(4,void 0,void 0)}function ks(){return rk(8,void 0,void 0)}function Ic(Fe,gr,Ln){return rk(1024,{target:Fe,antecedents:gr},Ln)}function su(Fe){Fe.flags|=Fe.flags&2048?4096:2048}function Zn(Fe,gr){!(gr.flags&1)&&!k(Fe.antecedent,gr)&&((Fe.antecedent||(Fe.antecedent=[])).push(gr),su(gr))}function ya(Fe,gr,Ln){return gr.flags&1?gr:Ln?(Ln.kind===112&&Fe&64||Ln.kind===97&&Fe&32)&&!gY(Ln)&&!IJ(Ln.parent)?ht:Ht(Ln)?(su(gr),rk(Fe,Ln,gr)):gr:Fe&32?gr:ht}function Gl(Fe,gr,Ln,bs){return su(Fe),rk(128,{switchStatement:gr,clauseStart:Ln,clauseEnd:bs},Fe)}function ba(Fe,gr,Ln){su(gr),Ue=!0;let bs=rk(Fe,Ln,gr);return Ee&&Zn(Ee,bs),bs}function Wo(Fe,gr){return su(Fe),Ue=!0,rk(512,gr,Fe)}function hc(Fe){let gr=Fe.antecedent;return gr?gr.length===1?gr[0]:Fe:ht}function yr(Fe){let gr=Fe.parent;switch(gr.kind){case 246:case 248:case 247:return gr.expression===Fe;case 249:case 228:return gr.condition===Fe}return!1}function hn(Fe){for(;;)if(Fe.kind===218)Fe=Fe.expression;else if(Fe.kind===225&&Fe.operator===54)Fe=Fe.operand;else return Nne(Fe)}function Oi(Fe){return gAe(QA(Fe))}function lo(Fe){for(;gI(Fe.parent)||T0(Fe.parent)&&Fe.parent.operator===54;)Fe=Fe.parent;return!yr(Fe)&&!hn(Fe.parent)&&!(GC(Fe.parent)&&Fe.parent.expression===Fe)}function pa(Fe,gr,Ln,bs){let Xl=Ie,eg=_e;Ie=Ln,_e=bs,Fe(gr),Ie=Xl,_e=eg}function Oa(Fe,gr,Ln){pa(Ss,Fe,gr,Ln),(!Fe||!Oi(Fe)&&!hn(Fe)&&!(GC(Fe)&&i3(Fe)))&&(Zn(gr,ya(32,M,Fe)),Zn(Ln,ya(64,M,Fe)))}function tl(Fe,gr,Ln){let bs=ee,Xl=re;ee=gr,re=Ln,Ss(Fe),ee=bs,re=Xl}function Qu(Fe,gr){let Ln=Te;for(;Ln&&Fe.parent.kind===257;)Ln.continueTarget=gr,Ln=Ln.next,Fe=Fe.parent;return gr}function Tg(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si();Zn(gr,M),M=gr,Oa(Fe.expression,Ln,bs),M=hc(Ln),tl(Fe.statement,bs,gr),Zn(gr,M),M=hc(bs)}function Cs(Fe){let gr=ks(),Ln=Qu(Fe,si()),bs=si();Zn(gr,M),M=gr,tl(Fe.statement,bs,Ln),Zn(Ln,M),M=hc(Ln),Oa(Fe.expression,gr,bs),M=hc(bs)}function Tu(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si(),Xl=si();Ss(Fe.initializer),Zn(gr,M),M=gr,Oa(Fe.condition,Ln,Xl),M=hc(Ln),tl(Fe.statement,Xl,bs),Zn(bs,M),M=hc(bs),Ss(Fe.incrementor),Zn(gr,M),M=hc(Xl)}function Pr(Fe){let gr=Qu(Fe,ks()),Ln=si();Ss(Fe.expression),Zn(gr,M),M=gr,Fe.kind===251&&Ss(Fe.awaitModifier),Zn(Ln,M),Ss(Fe.initializer),Fe.initializer.kind!==262&&bn(Fe.initializer),tl(Fe.statement,Ln,gr),Zn(gr,M),M=hc(Ln)}function Pn(Fe){let gr=si(),Ln=si(),bs=si();Oa(Fe.expression,gr,Ln),M=hc(gr),Ss(Fe.thenStatement),Zn(bs,M),M=hc(Ln),Ss(Fe.elseStatement),Zn(bs,M),M=hc(bs)}function pt(Fe){let gr=We;We=!0,Ss(Fe.expression),We=gr,Fe.kind===254&&(Ze=!0,ge&&Zn(ge,M)),M=ht,Ue=!0}function on(Fe){for(let gr=Te;gr;gr=gr.next)if(gr.name===Fe)return gr}function it(Fe,gr,Ln){let bs=Fe.kind===253?gr:Ln;bs&&(Zn(bs,M),M=ht,Ue=!0)}function nr(Fe){if(Ss(Fe.label),Fe.label){let gr=on(Fe.label.escapedText);gr&&(gr.referenced=!0,it(Fe,gr.breakTarget,gr.continueTarget))}else it(Fe,ee,re)}function Fr(Fe){let gr=ge,Ln=Ee,bs=si(),Xl=si(),eg=si();if(Fe.finallyBlock&&(ge=Xl),Zn(eg,M),Ee=eg,Ss(Fe.tryBlock),Zn(bs,M),Fe.catchClause&&(M=hc(eg),eg=si(),Zn(eg,M),Ee=eg,Ss(Fe.catchClause),Zn(bs,M)),ge=gr,Ee=Ln,Fe.finallyBlock){let jl=si();jl.antecedent=Nn(Nn(bs.antecedent,eg.antecedent),Xl.antecedent),M=jl,Ss(Fe.finallyBlock),M.flags&1?M=ht:(ge&&Xl.antecedent&&Zn(ge,Ic(jl,Xl.antecedent,M)),Ee&&eg.antecedent&&Zn(Ee,Ic(jl,eg.antecedent,M)),M=bs.antecedent?Ic(jl,bs.antecedent,M):ht)}else M=hc(bs)}function Kr(Fe){let gr=si();Ss(Fe.expression);let Ln=ee,bs=Ne;ee=gr,Ne=M,Ss(Fe.caseBlock),Zn(gr,M);let Xl=F(Fe.caseBlock.clauses,eg=>eg.kind===298);Fe.possiblyExhaustive=!Xl&&!gr.antecedent,Xl||Zn(gr,Gl(Ne,Fe,0,0)),ee=Ln,Ne=bs,M=hc(gr)}function Dn(Fe){let gr=Fe.clauses,Ln=Fe.parent.expression.kind===112||Ht(Fe.parent.expression),bs=ht;for(let Xl=0;XlGh(Ln)||Cf(Ln))}function gg(Fe){Fe.flags&33554432&&!mc(Fe)?Fe.flags|=128:Fe.flags&=-129}function Ag(Fe){if(gg(Fe),s_(Fe))if(Ga(Fe,32)&&ni(Fe,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),Xre(Fe))_u(Fe);else{let gr;if(Fe.name.kind===11){let{text:bs}=Fe.name;gr=UY(bs),gr===void 0&&ni(Fe.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,bs)}let Ln=gs(Fe,512,110735);s.patternAmbientModules=Ft(s.patternAmbientModules,gr&&!Xs(gr)?{pattern:gr,symbol:Ln}:void 0)}else{let gr=_u(Fe);if(gr!==0){let{symbol:Ln}=Fe;Ln.constEnumOnlyModule=!(Ln.flags&304)&&gr===2&&Ln.constEnumOnlyModule!==!1}}}function _u(Fe){let gr=PF(Fe),Ln=gr!==0;return gs(Fe,Ln?512:1024,Ln?110735:0),gr}function wI(Fe){let gr=_r(131072,nt(Fe));Gt(gr,Fe,131072);let Ln=_r(2048,"__type");Gt(Ln,Fe,2048),Ln.members=qu(),Ln.members.set(gr.escapedName,gr)}function AI(Fe){return yu(Fe,4096,"__object")}function pp(Fe){return yu(Fe,4096,"__jsxAttributes")}function Dl(Fe,gr,Ln){return gs(Fe,gr,Ln)}function yu(Fe,gr,Ln){let bs=_r(gr,Ln);return gr&106508&&(bs.parent=h.symbol),Gt(bs,Fe,gr),bs}function tm(Fe,gr,Ln){switch(S.kind){case 268:ur(Fe,gr,Ln);break;case 308:if(vl(h)){ur(Fe,gr,Ln);break}default:pe.assertNode(S,WI),S.locals||(S.locals=qu(),Ui(S)),tr(S.locals,void 0,Fe,gr,Ln)}}function jp(){if(!T)return;let Fe=h,gr=R,Ln=S,bs=d,Xl=M;for(let eg of T){let jl=eg.parent.parent;h=f7(jl)||s,S=tS(jl)||s,M=rk(2,void 0,void 0),d=eg,Ss(eg.typeExpression);let Eu=Il(eg);if((oEe(eg)||!eg.fullName)&&Eu&&BF(Eu.parent)){let Df=yv(Eu.parent);if(Df){E1(s.symbol,Eu.parent,Df,!!ji(Eu,MC=>jo(MC)&&MC.name.escapedText==="prototype"),!1);let Jg=h;switch(XJ(Eu.parent)){case 1:case 2:vl(s)?h=s:h=void 0;break;case 4:h=Eu.parent.expression;break;case 3:h=Eu.parent.expression.name;break;case 5:h=cQ(s,Eu.parent.expression)?s:jo(Eu.parent.expression)?Eu.parent.expression.name:Eu.parent.expression;break;case 0:return pe.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}h&&ur(eg,524288,788968),h=Jg}}else oEe(eg)||!eg.fullName||eg.fullName.kind===80?(d=eg.parent,tm(eg,524288,788968)):Ss(eg.fullName)}h=Fe,R=gr,S=Ln,d=bs,M=Xl}function Xg(){if(V===void 0)return;let Fe=h,gr=R,Ln=S,bs=d,Xl=M;for(let eg of V){let jl=bP(eg),Eu=jl?f7(jl):void 0,Df=jl?tS(jl):void 0;h=Eu||s,S=Df||s,M=rk(2,void 0,void 0),d=eg,Ss(eg.importClause)}h=Fe,R=gr,S=Ln,d=bs,M=Xl}function sh(Fe){if(!s.parseDiagnostics.length&&!(Fe.flags&33554432)&&!(Fe.flags&16777216)&&!_Ze(Fe)){let gr=iv(Fe);if(gr===void 0)return;Ye&&gr>=119&&gr<=127?s.bindDiagnostics.push(Lt(Fe,dS(Fe),Wd(Fe))):gr===135?xm(s)&&Mge(Fe)?s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Wd(Fe))):Fe.flags&65536&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Wd(Fe))):gr===127&&Fe.flags&16384&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Wd(Fe)))}}function dS(Fe){return hC(Fe)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function gu(Fe){Fe.escapedText==="#constructor"&&(s.parseDiagnostics.length||s.bindDiagnostics.push(Lt(Fe,Z.constructor_is_a_reserved_word,Wd(Fe))))}function bg(Fe){Ye&&D_(Fe.left)&&UD(Fe.operatorToken.kind)&&$d(Fe,Fe.left)}function KA(Fe){Ye&&Fe.variableDeclaration&&$d(Fe,Fe.variableDeclaration.name)}function TA(Fe){if(Ye&&Fe.expression.kind===80){let gr=qa(s,Fe.expression);s.bindDiagnostics.push(qh(s,gr.start,gr.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function oi(Fe){return Ir(Fe)&&(Fe.escapedText==="eval"||Fe.escapedText==="arguments")}function $d(Fe,gr){if(gr&&gr.kind===80){let Ln=gr;if(oi(Ln)){let bs=qa(s,gr);s.bindDiagnostics.push(qh(s,bs.start,bs.length,YI(Fe),Vo(Ln)))}}}function YI(Fe){return hC(Fe)?Z.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:s.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function Fh(Fe){Ye&&!(Fe.flags&33554432)&&$d(Fe,Fe.name)}function WC(Fe){return hC(Fe)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function _f(Fe){if(g<2&&S.kind!==308&&S.kind!==268&&!s3(S)){let gr=qa(s,Fe);s.bindDiagnostics.push(qh(s,gr.start,gr.length,WC(Fe)))}}function QI(Fe){Ye&&$d(Fe,Fe.operand)}function ve(Fe){Ye&&(Fe.operator===46||Fe.operator===47)&&$d(Fe,Fe.operand)}function mr(Fe){Ye&&ni(Fe,Z.with_statements_are_not_allowed_in_strict_mode)}function ln(Fe){Ye&&Mg(c)>=2&&(uge(Fe.statement)||Ch(Fe.statement))&&ni(Fe.label,Z.A_label_is_not_allowed_here)}function ni(Fe,gr,...Ln){let bs=rs(s,Fe.pos);s.bindDiagnostics.push(qh(s,bs.start,bs.length,gr,...Ln))}function Ls(Fe,gr,Ln){Za(Fe,gr,gr,Ln)}function Za(Fe,gr,Ln,bs){Go(Fe,{pos:MD(gr,s),end:Ln.end},bs)}function Go(Fe,gr,Ln){let bs=qh(s,gr.pos,gr.end-gr.pos,Ln);Fe?s.bindDiagnostics.push(bs):s.bindSuggestionDiagnostics=Ft(s.bindSuggestionDiagnostics,{...bs,category:2})}function Ss(Fe){if(!Fe)return;XA(Fe,d),ki&&(Fe.tracingPath=s.path);let gr=Ye;if(Lg(Fe),Fe.kind>166){let Ln=d;d=Fe;let bs=het(Fe);bs===0?zt(Fe):dt(Fe,bs),d=Ln}else{let Ln=d;Fe.kind===1&&(d=Fe),Uc(Fe),d=Ln}Ye=gr}function Uc(Fe){if(Xm(Fe))if(wo(Fe))for(let gr of Fe.jsDoc)Ss(gr);else for(let gr of Fe.jsDoc)XA(gr,Fe),UL(gr,!1)}function rl(Fe){if(!Ye)for(let gr of Fe){if(!nS(gr))return;if(xd(gr)){Ye=!0;return}}}function xd(Fe){let gr=mF(s,Fe.expression);return gr==='"use strict"'||gr==="'use strict'"}function Lg(Fe){switch(Fe.kind){case 80:if(Fe.flags&4096){let jl=Fe.parent;for(;jl&&!iS(jl);)jl=jl.parent;tm(jl,524288,788968);break}case 110:return M&&(un(Fe)||d.kind===305)&&(Fe.flowNode=M),sh(Fe);case 167:M&&Qge(Fe)&&(Fe.flowNode=M);break;case 237:case 108:Fe.flowNode=M;break;case 81:return gu(Fe);case 212:case 213:let gr=Fe;M&&Br(gr)&&(gr.flowNode=M),Eye(gr)&&hm(gr),wo(gr)&&s.commonJsModuleIndicator&&cN(gr)&&!F9e(S,"module")&&tr(s.locals,void 0,gr.expression,134217729,111550);break;case 227:switch(nI(Fe)){case 1:qn(Fe);break;case 2:Js(Fe);break;case 3:XI(Fe.left,Fe);break;case 6:af(Fe);break;case 4:RA(Fe);break;case 5:let jl=Fe.left.expression;if(wo(Fe)&&Ir(jl)){let Eu=F9e(S,jl.escapedText);if(Hge(Eu?.valueDeclaration)){RA(Fe);break}}d_(Fe);break;case 0:break;default:pe.fail("Unknown binary expression special property assignment kind")}return bg(Fe);case 300:return KA(Fe);case 221:return TA(Fe);case 226:return QI(Fe);case 225:return ve(Fe);case 255:return mr(Fe);case 257:return ln(Fe);case 198:W=!0;return;case 183:break;case 169:return wa(Fe);case 170:return en(Fe);case 261:return at(Fe);case 209:return Fe.flowNode=M,at(Fe);case 173:case 172:return yf(Fe);case 304:case 305:return ys(Fe,4,0);case 307:return ys(Fe,8,900095);case 180:case 181:case 182:return gs(Fe,131072,0);case 175:case 174:return ys(Fe,8192|(Fe.questionToken?16777216:0),a2(Fe)?0:103359);case 263:return gi(Fe);case 177:return gs(Fe,16384,0);case 178:return ys(Fe,32768,46015);case 179:return ys(Fe,65536,78783);case 185:case 318:case 324:case 186:return wI(Fe);case 188:case 323:case 201:return rm(Fe);case 333:return Bs(Fe);case 211:return AI(Fe);case 219:case 220:return _i(Fe);case 214:switch(nI(Fe)){case 7:return C2(Fe);case 8:return or(Fe);case 9:return dI(Fe);case 0:break;default:return pe.fail("Unknown call expression assignment declaration kind")}wo(Fe)&&oR(Fe);break;case 232:case 264:return Ye=!0,pS(Fe);case 265:return tm(Fe,64,788872);case 266:return tm(Fe,524288,788968);case 267:return xN(Fe);case 268:return Ag(Fe);case 293:return pp(Fe);case 292:return Dl(Fe,4,0);case 272:case 275:case 277:case 282:return gs(Fe,2097152,2097152);case 271:return b1(Fe);case 274:return m2(Fe);case 279:return Z_(Fe);case 278:return oh(Fe);case 308:return rl(Fe.statements),_h();case 242:if(!s3(Fe.parent))return;case 269:return rl(Fe.statements);case 342:if(Fe.parent.kind===324)return en(Fe);if(Fe.parent.kind!==323)break;case 349:let Xl=Fe,eg=Xl.isBracketed||Xl.typeExpression&&Xl.typeExpression.type.kind===317?16777220:4;return gs(Xl,eg,0);case 347:case 339:case 341:return(T||(T=[])).push(Fe);case 340:return Ss(Fe.typeExpression);case 352:return(V||(V=[])).push(Fe)}}function yf(Fe){let gr=t0(Fe),Ln=gr?98304:4,bs=gr?13247:0;return ys(Fe,Ln|(Fe.questionToken?16777216:0),bs)}function rm(Fe){return yu(Fe,2048,"__type")}function _h(){if(gg(s),xm(s))Gp();else if(Zu(s)){Gp();let Fe=s.symbol;tr(s.symbol.exports,s.symbol,s,4,-1),s.symbol=Fe}}function Gp(){yu(s,512,`"${s0(s.fileName)}"`)}function oh(Fe){if(!h.symbol||!h.symbol.exports)yu(Fe,111551,nt(Fe));else{let gr=Ine(Fe)?2097152:4,Ln=tr(h.symbol.exports,h.symbol,Fe,gr,-1);Fe.isExportEquals&&S7(Ln,Fe)}}function b1(Fe){jt(Fe.modifiers)&&s.bindDiagnostics.push(Lt(Fe,Z.Modifiers_cannot_appear_here));let gr=ll(Fe.parent)?xm(Fe.parent)?Fe.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;gr?s.bindDiagnostics.push(Lt(Fe,gr)):(s.symbol.globalExports=s.symbol.globalExports||qu(),tr(s.symbol.globalExports,s.symbol,Fe,2097152,2097152))}function Z_(Fe){!h.symbol||!h.symbol.exports?yu(Fe,8388608,nt(Fe)):Fe.exportClause?tk(Fe.exportClause)&&(XA(Fe.exportClause,Fe),tr(h.symbol.exports,h.symbol,Fe.exportClause,2097152,2097152)):tr(h.symbol.exports,h.symbol,Fe,8388608,0)}function m2(Fe){Fe.name&&gs(Fe,2097152,2097152)}function Vb(Fe){return s.externalModuleIndicator&&s.externalModuleIndicator!==!0?!1:(s.commonJsModuleIndicator||(s.commonJsModuleIndicator=Fe,s.externalModuleIndicator||Gp()),!0)}function or(Fe){if(!Vb(Fe))return;let gr=qm(Fe.arguments[0],void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));gr&&tr(gr.exports,gr,Fe,1048580,0)}function qn(Fe){if(!Vb(Fe))return;let gr=qm(Fe.left.expression,void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));if(gr){let bs=$ge(Fe.right)&&(p3(Fe.left.expression)||cN(Fe.left.expression))?2097152:1048580;XA(Fe.left,Fe),tr(gr.exports,gr,Fe.left,bs,0)}}function Js(Fe){if(!Vb(Fe))return;let gr=ane(Fe.right);if(rbe(gr)||h===s&&cQ(s,gr))return;if(og(gr)&&ue(gr.properties,a0)){F(gr.properties,Hl);return}let Ln=Ine(Fe)?2097152:1049092,bs=tr(s.symbol.exports,s.symbol,Fe,Ln|67108864,0);S7(bs,Fe)}function Hl(Fe){tr(s.symbol.exports,s.symbol,Fe,69206016,0)}function RA(Fe){if(pe.assert(wo(Fe)),fo(Fe)&&jo(Fe.left)&&p(Fe.left.name)||jo(Fe)&&p(Fe.name))return;let Ln=r0(Fe,!1,!1);switch(Ln.kind){case 263:case 219:let bs=Ln.symbol;if(fo(Ln.parent)&&Ln.parent.operatorToken.kind===64){let jl=Ln.parent.left;yP(jl)&&wF(jl.expression)&&(bs=Pb(jl.expression.expression,_))}bs&&bs.valueDeclaration&&(bs.members=bs.members||qu(),XD(Fe)?NA(Fe,bs,bs.members):tr(bs.members,bs,Fe,67108868,0),Gt(bs,bs.valueDeclaration,32));break;case 177:case 173:case 175:case 178:case 179:case 176:let Xl=Ln.parent,eg=cg(Ln)?Xl.symbol.exports:Xl.symbol.members;XD(Fe)?NA(Fe,Xl.symbol,eg):tr(eg,Xl.symbol,Fe,67108868,0,!0);break;case 308:if(XD(Fe))break;Ln.commonJsModuleIndicator?tr(Ln.symbol.exports,Ln.symbol,Fe,1048580,0):gs(Fe,1,111550);break;case 268:break;default:pe.failBadSyntaxKind(Ln)}}function NA(Fe,gr,Ln){tr(Ln,gr,Fe,4,0,!0,!0),uA(Fe,gr)}function uA(Fe,gr){gr&&(gr.assignmentDeclarationMembers||(gr.assignmentDeclarationMembers=new Map)).set(rd(Fe),Fe)}function hm(Fe){Fe.expression.kind===110?RA(Fe):yP(Fe)&&Fe.parent.parent.kind===308&&(wF(Fe.expression)?XI(Fe,Fe.parent):OC(Fe))}function af(Fe){XA(Fe.left,Fe),XA(Fe.right,Fe),ik(Fe.left.expression,Fe.left,!1,!0)}function dI(Fe){let gr=Pb(Fe.arguments[0].expression);gr&&gr.valueDeclaration&&Gt(gr,gr.valueDeclaration,32),gy(Fe,gr,!0)}function XI(Fe,gr){let Ln=Fe.expression,bs=Ln.expression;XA(bs,Ln),XA(Ln,Fe),XA(Fe,gr),ik(bs,Fe,!0,!0)}function C2(Fe){let gr=Pb(Fe.arguments[0]),Ln=Fe.parent.parent.kind===308;gr=E1(gr,Fe.arguments[0],Ln,!1,!1),gy(Fe,gr,!1)}function d_(Fe){var gr;let Ln=Pb(Fe.left.expression,S)||Pb(Fe.left.expression,h);if(!wo(Fe)&&!AZe(Ln))return;let bs=oU(Fe.left);if(!(Ir(bs)&&((gr=F9e(h,bs.escapedText))==null?void 0:gr.flags)&2097152))if(XA(Fe.left,Fe),XA(Fe.right,Fe),Ir(Fe.left.expression)&&h===s&&cQ(s,Fe.left.expression))qn(Fe);else if(XD(Fe)){yu(Fe,67108868,"__computed");let Xl=E1(Ln,Fe.left.expression,yv(Fe.left),!1,!1);uA(Fe,Xl)}else OC(Ma(Fe.left,I3))}function OC(Fe){pe.assert(!Ir(Fe)),XA(Fe.expression,Fe),ik(Fe.expression,Fe,!1,!1)}function E1(Fe,gr,Ln,bs,Xl){return Fe?.flags&2097152||(Ln&&!bs&&(Fe=qm(gr,Fe,(Eu,Df,Jg)=>{if(Df)return Gt(Df,Eu,67110400),Df;{let MC=Jg?Jg.exports:s.jsGlobalAugmentations||(s.jsGlobalAugmentations=qu());return tr(MC,Jg,Eu,67110400,110735)}})),Xl&&Fe&&Fe.valueDeclaration&&Gt(Fe,Fe.valueDeclaration,32)),Fe}function gy(Fe,gr,Ln){if(!gr||!Wx(gr))return;let bs=Ln?gr.members||(gr.members=qu()):gr.exports||(gr.exports=qu()),Xl=0,eg=0;kd(FY(Fe))?(Xl=8192,eg=103359):Zl(Fe)&&f3(Fe)&&(jt(Fe.arguments[2].properties,jl=>{let Eu=Il(jl);return!!Eu&&Ir(Eu)&&Vo(Eu)==="set"})&&(Xl|=65540,eg|=78783),jt(Fe.arguments[2].properties,jl=>{let Eu=Il(jl);return!!Eu&&Ir(Eu)&&Vo(Eu)==="get"})&&(Xl|=32772,eg|=46015)),Xl===0&&(Xl=4,eg=0),tr(bs,gr,Fe,Xl|67108864,eg&-67108865)}function yv(Fe){return fo(Fe.parent)?Ox(Fe.parent).parent.kind===308:Fe.parent.parent.kind===308}function ik(Fe,gr,Ln,bs){let Xl=Pb(Fe,S)||Pb(Fe,h),eg=yv(gr);Xl=E1(Xl,gr.expression,eg,Ln,bs),gy(gr,Xl,Ln)}function Wx(Fe){if(Fe.flags&1072)return!0;let gr=Fe.valueDeclaration;if(gr&&Zl(gr))return!!FY(gr);let Ln=gr?nc(gr)?gr.initializer:fo(gr)?gr.right:jo(gr)&&fo(gr.parent)?gr.parent.right:void 0:void 0;if(Ln=Ln&&ane(Ln),Ln){let bs=wF(nc(gr)?gr.name:fo(gr)?gr.left:gr);return!!VL(fo(Ln)&&(Ln.operatorToken.kind===57||Ln.operatorToken.kind===61)?Ln.right:Ln,bs)}return!1}function Ox(Fe){for(;fo(Fe.parent);)Fe=Fe.parent;return Fe.parent}function Pb(Fe,gr=h){if(Ir(Fe))return F9e(gr,Fe.escapedText);{let Ln=Pb(Fe.expression);return Ln&&Ln.exports&&Ln.exports.get(YD(Fe))}}function qm(Fe,gr,Ln){if(cQ(s,Fe))return s.symbol;if(Ir(Fe))return Ln(Fe,Pb(Fe),gr);{let bs=qm(Fe.expression,gr,Ln),Xl=cne(Fe);return p(Xl)&&pe.fail("unexpected PrivateIdentifier"),Ln(Xl,bs&&bs.exports&&bs.exports.get(YD(Fe)),bs)}}function oR(Fe){!s.commonJsModuleIndicator&&ay(Fe,!1)&&Vb(Fe)}function pS(Fe){if(Fe.kind===264)tm(Fe,32,899503);else{let Xl=Fe.name?Fe.name.escapedText:"__class";yu(Fe,32,Xl),Fe.name&&mt.add(Fe.name.escapedText)}let{symbol:gr}=Fe,Ln=_r(4194308,"prototype"),bs=gr.exports.get(Ln.escapedName);bs&&(Fe.name&&XA(Fe.name,Fe),s.bindDiagnostics.push(Lt(bs.declarations[0],Z.Duplicate_identifier_0,nf(Ln)))),gr.exports.set(Ln.escapedName,Ln),Ln.parent=gr}function xN(Fe){return VA(Fe)?tm(Fe,128,899967):tm(Fe,256,899327)}function at(Fe){if(Ye&&$d(Fe,Fe.name),!Nu(Fe.name)){let gr=Fe.kind===261?Fe:Fe.parent.parent;wo(Fe)&&CP(gr)&&!ov(Fe)&&!(Hc(Fe)&32)?gs(Fe,2097152,2097152):ZJ(Fe)?tm(Fe,2,111551):HL(Fe)?gs(Fe,1,111551):gs(Fe,1,111550)}}function en(Fe){if(!(Fe.kind===342&&h.kind!==324)&&(Ye&&!(Fe.flags&33554432)&&$d(Fe,Fe.name),Nu(Fe.name)?yu(Fe,1,"__"+Fe.parent.parameters.indexOf(Fe)):gs(Fe,1,111551),Ve(Fe,Fe.parent))){let gr=Fe.parent.parent;tr(gr.symbol.members,gr.symbol,Fe,4|(Fe.questionToken?16777216:0),0)}}function gi(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),Fh(Fe),Ye?(_f(Fe),tm(Fe,16,110991)):gs(Fe,16,110991)}function _i(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),M&&(Fe.flowNode=M),Fh(Fe);let gr=Fe.name?Fe.name.escapedText:"__function";return yu(Fe,16,gr)}function ys(Fe,gr,Ln){return!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),M&&Vge(Fe)&&(Fe.flowNode=M),XD(Fe)?yu(Fe,gr,"__computed"):gs(Fe,gr,Ln)}function $s(Fe){let gr=ji(Fe,Ln=>Ln.parent&&d2(Ln.parent)&&Ln.parent.extendsType===Ln);return gr&&gr.parent}function wa(Fe){if(ZB(Fe.parent)){let gr=zge(Fe.parent);gr?(pe.assertNode(gr,WI),gr.locals??(gr.locals=qu()),tr(gr.locals,void 0,Fe,262144,526824)):gs(Fe,262144,526824)}else if(Fe.parent.kind===196){let gr=$s(Fe.parent);gr?(pe.assertNode(gr,WI),gr.locals??(gr.locals=qu()),tr(gr.locals,void 0,Fe,262144,526824)):yu(Fe,262144,nt(Fe))}else gs(Fe,262144,526824)}function pc(Fe){let gr=PF(Fe);return gr===1||gr===2&&Fb(c)}function ul(Fe){if(!(M.flags&1))return!1;if(M===ht&&(vJ(Fe)&&Fe.kind!==243||Fe.kind===264||itn(Fe,c)||Fe.kind===268&&pc(Fe))&&(M=_t,!c.allowUnreachableCode)){let Ln=rLe(c)&&!(Fe.flags&33554432)&&(!Ch(Fe)||!!(dm(Fe.declarationList)&7)||Fe.declarationList.declarations.some(bs=>!!bs.initializer));fvs(Fe,c,(bs,Xl)=>Za(Ln,bs,Xl,Z.Unreachable_code_detected))}return!0}}function itn(s,c){return s.kind===267&&(!VA(s)||Fb(c))}function fvs(s,c,g){if(Lc(s)&&d(s)&&$u(s.parent)){let{statements:_}=s.parent,S=Rbe(_,s);Fn(S,d,(R,T)=>g(S[R],S[T-1]))}else g(s,s);function d(_){return!ih(_)&&!h(_)&&!(Ch(_)&&!(dm(_)&7)&&_.declarationList.declarations.some(S=>!S.initializer))}function h(_){switch(_.kind){case 265:case 266:return!0;case 268:return PF(_)!==1;case 267:return!itn(_,c);default:return!1}}}function cQ(s,c){let g=0,d=oA();for(d.enqueue(c);!d.isEmpty()&&g<100;){if(g++,c=d.dequeue(),p3(c)||cN(c))return!0;if(Ir(c)){let h=F9e(s,c.escapedText);if(h&&h.valueDeclaration&&nc(h.valueDeclaration)&&h.valueDeclaration.initializer){let _=h.valueDeclaration.initializer;d.enqueue(_),Jm(_,!0)&&(d.enqueue(_.left),d.enqueue(_.right))}}}return!1}function het(s){switch(s.kind){case 232:case 264:case 267:case 211:case 188:case 323:case 293:return 1;case 265:return 65;case 268:case 266:case 201:case 182:return 33;case 308:return 37;case 178:case 179:case 175:if(Vge(s))return 173;case 177:case 263:case 174:case 180:case 324:case 318:case 185:case 181:case 186:case 176:return 45;case 352:return 37;case 219:case 220:return 61;case 269:return 4;case 173:return s.initializer?4:0;case 300:case 249:case 250:case 251:case 270:return 34;case 242:return bu(s.parent)||fl(s.parent)?0:34}return 0}function F9e(s,c){var g,d,h,_;let S=(d=(g=Gs(s,WI))==null?void 0:g.locals)==null?void 0:d.get(c);if(S)return S.exportSymbol??S;if(ll(s)&&s.jsGlobalAugmentations&&s.jsGlobalAugmentations.has(c))return s.jsGlobalAugmentations.get(c);if(mE(s))return(_=(h=s.symbol)==null?void 0:h.exports)==null?void 0:_.get(c)}function AOt(s,c,g,d,h,_,S,R,T,W){return V;function V(M=()=>!0){let ee=[],re=[];return{walkType:Tt=>{try{return ge(Tt),{visitedTypes:Qh(ee),visitedSymbols:Qh(re)}}finally{St(ee),St(re)}},walkSymbol:Tt=>{try{return Ye(Tt),{visitedTypes:Qh(ee),visitedSymbols:Qh(re)}}finally{St(ee),St(re)}}};function ge(Tt){if(!(!Tt||ee[Tt.id]||(ee[Tt.id]=Tt,Ye(Tt.symbol)))){if(Tt.flags&524288){let Qe=Tt,mt=Qe.objectFlags;mt&4&&Ie(Tt),mt&32&&Ze(Tt),mt&3&&Ue(Tt),mt&24&&$e(Qe)}Tt.flags&262144&&_e(Tt),Tt.flags&3145728&&Ee(Tt),Tt.flags&4194304&&Ne(Tt),Tt.flags&8388608&&Te(Tt)}}function Ie(Tt){ge(Tt.target),F(W(Tt),ge)}function _e(Tt){ge(R(Tt))}function Ee(Tt){F(Tt.types,ge)}function Ne(Tt){ge(Tt.type)}function Te(Tt){ge(Tt.objectType),ge(Tt.indexType),ge(Tt.constraint)}function Ze(Tt){ge(Tt.typeParameter),ge(Tt.constraintType),ge(Tt.templateType),ge(Tt.modifiersType)}function We(Tt){let ot=c(Tt);ot&&ge(ot.type),F(Tt.typeParameters,ge);for(let Qe of Tt.parameters)Ye(Qe);ge(s(Tt)),ge(g(Tt))}function Ue(Tt){$e(Tt),F(Tt.typeParameters,ge),F(d(Tt),ge),ge(Tt.thisType)}function $e(Tt){let ot=h(Tt);for(let Qe of ot.indexInfos)ge(Qe.keyType),ge(Qe.type);for(let Qe of ot.callSignatures)We(Qe);for(let Qe of ot.constructSignatures)We(Qe);for(let Qe of ot.properties)Ye(Qe)}function Ye(Tt){if(!Tt)return!1;let ot=kg(Tt);if(re[ot])return!1;if(re[ot]=Tt,!M(Tt))return!0;let Qe=_(Tt);return ge(Qe),Tt.exports&&Tt.exports.forEach(Ye),F(Tt.declarations,mt=>{if(mt.type&&mt.type.kind===187){let ht=mt.type,_t=S(T(ht.exprName));Ye(_t)}}),!1}}}var WF={};o(WF,{RelativePreference:()=>stn,countPathComponents:()=>V9e,forEachFileNameOfModule:()=>gtn,getLocalModuleSpecifierBetweenFileNames:()=>yvs,getModuleSpecifier:()=>mvs,getModuleSpecifierPreferences:()=>DEe,getModuleSpecifiers:()=>ctn,getModuleSpecifiersWithCacheInfo:()=>ltn,getNodeModulesPackageName:()=>Cvs,tryGetJSExtensionForFile:()=>Cet,tryGetModuleSpecifiersFromCache:()=>_vs,tryGetRealFileNameForNonJsDeclarationFileName:()=>Itn,updateModuleSpecifier:()=>hvs});var Ivs=ZA(s=>{try{let c=s.indexOf("/");if(c!==0)return new RegExp(s);let g=s.lastIndexOf("/");if(c===g)return new RegExp(s);for(;(c=s.indexOf("/",c+1))!==g;)if(s[c-1]!=="\\")return new RegExp(s);let d=s.substring(g+1).replace(/[^iu]/g,"");return s=s.substring(1,g),new RegExp(s,d)}catch{return}}),stn=(s=>(s[s.Relative=0]="Relative",s[s.NonRelative=1]="NonRelative",s[s.Shortest=2]="Shortest",s[s.ExternalNonRelative=3]="ExternalNonRelative",s))(stn||{});function DEe({importModuleSpecifierPreference:s,importModuleSpecifierEnding:c,autoImportSpecifierExcludeRegexes:g},d,h,_,S){let R=T();return{excludeRegexes:g,relativePreference:S!==void 0?Xr(S)?0:1:s==="relative"?0:s==="non-relative"?1:s==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:W=>{let V=_et(_,d,h),M=W!==V?T(W):R,ee=k_(h);if((W??V)===99&&3<=ee&&ee<=99)return Die(h,_.fileName)?[3,2]:[2];if(k_(h)===1)return M===2?[2,1]:[1,2];let re=Die(h,_.fileName);switch(M){case 2:return re?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return re?[1,0,3,2]:[1,0,2];case 0:return re?[0,1,3,2]:[0,1,2];default:pe.assertNever(M)}}};function T(W){if(S!==void 0){if(pN(S))return 2;if(di(S,"/index"))return 1}return pLe(c,W??_et(_,d,h),h,aN(_)?_:void 0)}}function hvs(s,c,g,d,h,_,S={}){let R=otn(s,c,g,d,h,DEe({},h,s,c,_),{},S);if(R!==_)return R}function mvs(s,c,g,d,h,_={}){return otn(s,c,g,d,h,DEe({},h,s,c),{},_)}function Cvs(s,c,g,d,h,_={}){let S=L9e(c.fileName,d),R=Atn(S,g,d,h,s,_);return X(R,T=>fOt(T,S,c,d,s,h,!0,_.overrideImportMode))}function otn(s,c,g,d,h,_,S,R={}){let T=L9e(g,h),W=Atn(T,d,h,S,s,R);return X(W,V=>fOt(V,T,c,h,s,S,void 0,R.overrideImportMode))||dOt(d,T,s,h,R.overrideImportMode||_et(c,h,s),_)}function _vs(s,c,g,d,h={}){let _=atn(s,c,g,d,h);return _[1]&&{kind:_[0],moduleSpecifiers:_[1],computedWithoutCache:!1}}function atn(s,c,g,d,h={}){var _;let S=FJ(s);if(!S)return E;let R=(_=g.getModuleSpecifierCache)==null?void 0:_.call(g),T=R?.get(c.path,S.path,d,h);return[T?.kind,T?.moduleSpecifiers,S,T?.modulePaths,R]}function ctn(s,c,g,d,h,_,S={}){return ltn(s,c,g,d,h,_,S,!1).moduleSpecifiers}function ltn(s,c,g,d,h,_,S={},R){let T=!1,W=Bvs(s,c);if(W)return{kind:"ambient",moduleSpecifiers:R&&Z9e(W,_.autoImportSpecifierExcludeRegexes)?E:[W],computedWithoutCache:T};let[V,M,ee,re,ge]=atn(s,d,h,_,S);if(M)return{kind:V,moduleSpecifiers:M,computedWithoutCache:T};if(!ee)return{kind:void 0,moduleSpecifiers:E,computedWithoutCache:T};T=!0,re||(re=dtn(L9e(d.fileName,h),ee.originalFileName,h,g,S));let Ie=bvs(re,g,d,h,_,S,R);return ge?.set(d.path,ee.path,_,S,Ie.kind,re,Ie.moduleSpecifiers),Ie}function yvs(s,c,g,d,h,_={}){let S=L9e(s.fileName,d),R=_.overrideImportMode??s.impliedNodeFormat;return dOt(c,S,g,d,R,DEe(h,d,g,s))}function bvs(s,c,g,d,h,_={},S){let R=L9e(g.fileName,d),T=DEe(h,d,c,g),W=aN(g)&&F(s,Ie=>F(d.getFileIncludeReasons().get(Ou(Ie.path,d.getCurrentDirectory(),R.getCanonicalFileName)),_e=>{if(_e.kind!==3||_e.file!==g.path)return;let Ee=d.getModeForResolutionAtIndex(g,_e.index),Ne=_.overrideImportMode??d.getDefaultResolutionModeForFile(g);if(Ee!==Ne&&Ee!==void 0&&Ne!==void 0)return;let Te=KEe(g,_e.index).text;return T.relativePreference!==1||!Ip(Te)?Te:void 0}));if(W)return{kind:void 0,moduleSpecifiers:[W],computedWithoutCache:!0};let V=jt(s,Ie=>Ie.isInNodeModules),M,ee,re,ge;for(let Ie of s){let _e=Ie.isInNodeModules?fOt(Ie,R,g,d,c,h,void 0,_.overrideImportMode):void 0;if(_e&&!(S&&Z9e(_e,T.excludeRegexes))&&(M=Ft(M,_e),Ie.isRedirect))return{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0};let Ee=dOt(Ie.path,R,c,d,_.overrideImportMode||g.impliedNodeFormat,T,Ie.isRedirect||!!_e);!Ee||S&&Z9e(Ee,T.excludeRegexes)||(Ie.isRedirect?re=Ft(re,Ee):Xh(Ee)?WP(Ee)?ge=Ft(ge,Ee):ee=Ft(ee,Ee):(S||!V||Ie.isInNodeModules)&&(ge=Ft(ge,Ee)))}return ee?.length?{kind:"paths",moduleSpecifiers:ee,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:M?.length?{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:ge??E,computedWithoutCache:!0}}function Z9e(s,c){return jt(c,g=>{var d;return!!((d=Ivs(g))!=null&&d.test(s))})}function L9e(s,c){s=Xc(s,c.getCurrentDirectory());let g=_d(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=Mo(s);return{getCanonicalFileName:g,importingSourceFileName:s,sourceDirectory:d,canonicalSourceDirectory:g(d)}}function dOt(s,c,g,d,h,{getAllowedEndingsInPreferredOrder:_,relativePreference:S,excludeRegexes:R},T){let{baseUrl:W,paths:V,rootDirs:M}=g;if(T&&!V)return;let{sourceDirectory:ee,canonicalSourceDirectory:re,getCanonicalFileName:ge}=c,Ie=_(h),_e=M&&Rvs(M,s,ee,ge,Ie,g)||kEe(Am(mp(ee,s,ge)),Ie,g);if(!W&&!V&&!Vne(g)||S===0)return T?void 0:_e;let Ee=Xc(oAe(g,d)||W,d.getCurrentDirectory()),Ne=IOt(s,Ee,ge);if(!Ne)return T?void 0:_e;let Te=T?void 0:Tvs(s,ee,g,d,h,Dvs(Ie)),Ze=T||Te===void 0?V&&ptn(Ne,V,Ie,Ee,ge,d,g):void 0;if(T)return Ze;let We=Te??(Ze===void 0&&W!==void 0?kEe(Ne,Ie,g):Ze);if(!We)return _e;let Ue=Z9e(_e,R),$e=Z9e(We,R);if(!Ue&&$e)return _e;if(Ue&&!$e||S===1&&!Ip(We))return We;if(S===3&&!Ip(We)){let Ye=g.configFilePath?Ou(Mo(g.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),Tt=Ou(s,Ye,ge),ot=Ac(re,Ye),Qe=Ac(Tt,Ye);if(ot&&!Qe||!ot&&Qe)return We;let mt=pOt(d,Mo(Tt)),ht=pOt(d,ee),_t=!y3(d);return Evs(mt,ht,_t)?_e:We}return htn(We)||V9e(_e)s.fileExists(Ro(g,"package.json"))?g:void 0)}function gtn(s,c,g,d,h){var _,S;let R=JD(g),T=g.getCurrentDirectory(),W=g.isSourceOfProjectReferenceRedirect(c)?(_=g.getRedirectFromSourceFile(c))==null?void 0:_.outputDts:void 0,V=Ou(c,T,R),M=g.redirectTargetsMap.get(V)||E,re=[...W?[W]:E,c,...M].map(Ne=>Xc(Ne,T)),ge=!ue(re,sz);if(!d){let Ne=F(re,Te=>!(ge&&sz(Te))&&h(Te,W===Te));if(Ne)return Ne}let Ie=(S=g.getSymlinkCache)==null?void 0:S.call(g).getSymlinkedDirectoriesByRealpath(),_e=Xc(c,T);return Ie&&vN(g,Mo(_e),Ne=>{let Te=Ie.get(hp(Ou(Ne,T,R)));if(Te)return $S(s,Ne,R)?!1:F(re,Ze=>{if(!$S(Ze,Ne,R))return;let We=mp(Ne,Ze,R);for(let Ue of Te){let $e=AE(Ue,We),Ye=h($e,Ze===W);if(ge=!0,Ye)return Ye}})})||(d?F(re,Ne=>ge&&sz(Ne)?void 0:h(Ne,Ne===W)):void 0)}function Atn(s,c,g,d,h,_={}){var S;let R=Ou(s.importingSourceFileName,g.getCurrentDirectory(),JD(g)),T=Ou(c,g.getCurrentDirectory(),JD(g)),W=(S=g.getModuleSpecifierCache)==null?void 0:S.call(g);if(W){let M=W.get(R,T,d,_);if(M?.modulePaths)return M.modulePaths}let V=dtn(s,c,g,h,_);return W&&W.setModulePaths(R,T,d,_,V),V}var Svs=["dependencies","peerDependencies","optionalDependencies"];function vvs(s){let c;for(let g of Svs){let d=s[g];d&&typeof d=="object"&&(c=Nn(c,_g(d)))}return c}function dtn(s,c,g,d,h){var _,S;let R=(_=g.getModuleResolutionCache)==null?void 0:_.call(g),T=(S=g.getSymlinkCache)==null?void 0:S.call(g);if(R&&T&&g.readFile&&!WP(s.importingSourceFileName)){pe.type(g);let ee=_de(R.getPackageJsonInfoCache(),g,{}),re=yde(Mo(s.importingSourceFileName),ee);if(re){let ge=vvs(re.contents.packageJsonContent);for(let Ie of ge||E){let _e=BU(Ie,Ro(re.packageDirectory,"package.json"),d,g,R,void 0,h.overrideImportMode);T.setSymlinksFromResolution(_e.resolvedModule)}}}let W=new Map,V=!1;gtn(s.importingSourceFileName,c,g,!0,(ee,re)=>{let ge=WP(ee),Ie=LP(ee);if(!ge&&Ie){let _e=Ie.findPackageLocator(s.importingSourceFileName),Ee=Ie.findPackageLocator(ee);_e&&Ee&&_e!==Ee&&(ge=!0)}W.set(ee,{path:s.getCanonicalFileName(ee),isRedirect:re,isInNodeModules:ge}),V=V||ge});let M=[];for(let ee=s.canonicalSourceDirectory;W.size!==0;){let re=hp(ee),ge;W.forEach(({path:_e,isRedirect:Ee,isInNodeModules:Ne},Te)=>{Ac(_e,re)&&((ge||(ge=[])).push({path:Te,isRedirect:Ee,isInNodeModules:Ne}),W.delete(Te))}),ge&&(ge.length>1&&ge.sort(utn),M.push(...ge));let Ie=Mo(ee);if(Ie===ee)break;ee=Ie}if(W.size){let ee=Do(W.entries(),([re,{isRedirect:ge,isInNodeModules:Ie}])=>({path:re,isRedirect:ge,isInNodeModules:Ie}));ee.length>1&&ee.sort(utn),M.push(...ee)}return M}function Bvs(s,c){var g;let d=(g=s.declarations)==null?void 0:g.find(S=>Qre(S)&&(!_F(S)||!Xr(c2(S.name))));if(d)return d.name.text;let _=Xt(s.declarations,S=>{var R,T,W,V;if(!xh(S))return;let M=Ie(S);if(!((R=M?.parent)!=null&&R.parent&&_N(M.parent)&&s_(M.parent.parent)&&ll(M.parent.parent.parent)))return;let ee=(V=(W=(T=M.parent.parent.symbol.exports)==null?void 0:T.get("export="))==null?void 0:W.valueDeclaration)==null?void 0:V.expression;if(!ee)return;let re=c.getSymbolAtLocation(ee);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===S.symbol)return M.parent.parent;function Ie(_e){for(;_e.flags&8;)_e=_e.parent;return _e}})[0];if(_)return _.name.text}function ptn(s,c,g,d,h,_,S){for(let T in c)for(let W of c[T]){let V=iu(W),M=IOt(V,d,h)??V,ee=M.indexOf("*"),re=g.map(ge=>({ending:ge,value:kEe(s,[ge],S)}));if(QT(M)&&re.push({ending:void 0,value:s}),ee!==-1){let ge=M.substring(0,ee),Ie=M.substring(ee+1);for(let{ending:_e,value:Ee}of re)if(Ee.length>=ge.length+Ie.length&&Ac(Ee,ge)&&di(Ee,Ie)&&R({ending:_e,value:Ee})){let Ne=Ee.substring(ge.length,Ee.length-Ie.length);if(!Ip(Ne))return R3(T,Ne)}}else if(jt(re,ge=>ge.ending!==0&&M===ge.value)||jt(re,ge=>ge.ending===0&&M===ge.value&&R(ge)))return T}function R({ending:T,value:W}){return T!==0||W===kEe(s,[T],S,_)}}function P9e(s,c,g,d,h,_,S,R,T,W){if(typeof _=="string"){let V=!y3(c),M=()=>c.getCommonSourceDirectory(),ee=T&&Ket(g,s,V,M),re=T&&Uet(g,s,V,M),ge=Xc(Ro(d,_),void 0),Ie=w3(g)?s0(g)+Cet(g,s):void 0,_e=W&&ALe(g);switch(R){case 0:if(Ie&&qf(Ie,ge,V)===0||qf(g,ge,V)===0||ee&&qf(ee,ge,V)===0||re&&qf(re,ge,V)===0)return{moduleFileToTry:h};break;case 1:if(_e&&Jh(g,ge,V)){let Ze=mp(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(Ie&&Jh(ge,Ie,V)){let Ze=mp(ge,Ie,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(!_e&&Jh(ge,g,V)){let Ze=mp(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(ee&&Jh(ge,ee,V)){let Ze=mp(ge,ee,!1);return{moduleFileToTry:Ro(h,Ze)}}if(re&&Jh(ge,re,V)){let Ze=i_(mp(ge,re,!1),met(re,s));return{moduleFileToTry:Ro(h,Ze)}}break;case 2:let Ee=ge.indexOf("*"),Ne=ge.slice(0,Ee),Te=ge.slice(Ee+1);if(_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(Ie&&Ac(Ie,Ne,V)&&di(Ie,Te,V)){let Ze=Ie.slice(Ne.length,Ie.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(!_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(ee&&Ac(ee,Ne,V)&&di(ee,Te,V)){let Ze=ee.slice(Ne.length,ee.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(re&&Ac(re,Ne,V)&&di(re,Te,V)){let Ze=re.slice(Ne.length,re.length-Te.length),We=R3(h,Ze),Ue=Cet(re,s);return Ue?{moduleFileToTry:i_(We,Ue)}:void 0}break}}else{if(Array.isArray(_))return F(_,V=>P9e(s,c,g,d,h,V,S,R,T,W));if(typeof _=="object"&&_!==null){for(let V of _g(_))if(V==="default"||S.indexOf(V)>=0||REe(S,V)){let M=_[V],ee=P9e(s,c,g,d,h,M,S,R,T,W);if(ee)return ee}}}}function wvs(s,c,g,d,h,_,S){return typeof _=="object"&&_!==null&&!Array.isArray(_)&&x9e(_)?F(_g(_),R=>{let T=Xc(Ro(h,R),void 0),W=di(R,"/")?1:R.includes("*")?2:0;return P9e(s,c,g,d,T,_[R],S,W,!1,!1)}):P9e(s,c,g,d,h,_,S,0,!1,!1)}function Tvs(s,c,g,d,h,_){var S,R,T;if(!d.readFile||!Vne(g))return;let W=pOt(d,c);if(!W)return;let V=Ro(W,"package.json"),M=(R=(S=d.getPackageJsonInfoCache)==null?void 0:S.call(d))==null?void 0:R.getPackageJsonInfo(V);if(JWt(M)||!d.fileExists(V))return;let ee=M?.contents.packageJsonContent||nU(d.readFile(V)),re=ee?.imports;if(!re)return;let ge=PP(g,h);return(T=F(_g(re),Ie=>{if(!Ac(Ie,"#")||Ie==="#"||Ac(Ie,"#/"))return;let _e=di(Ie,"/")?1:Ie.includes("*")?2:0;return P9e(g,d,s,W,Ie,re[Ie],ge,_e,!0,_)}))==null?void 0:T.moduleFileToTry}function Rvs(s,c,g,d,h,_){let S=ftn(c,s,d);if(S===void 0)return;let R=ftn(g,s,d),T=er(R,V=>At(S,M=>Am(mp(V,M,d)))),W=oa(T,Qne);if(W)return kEe(W,h,_)}function fOt({path:s,isRedirect:c},{getCanonicalFileName:g,canonicalSourceDirectory:d},h,_,S,R,T,W){if(!_.fileExists||!_.readFile)return;let V=MAe(s),M,ee=LP(s);if(ee){let Ze=ee.findPackageLocator(h.fileName),We=ee.findPackageLocator(s);if(Ze===We)return;if(Ze&&We){let Ue=ee.getPackageInformation(Ze);if(We.reference===Ue.packageDependencies.get(We.name))M=We.name;else for(let[$e,Ye]of Ue.packageDependencies)if(Array.isArray(Ye)&&Ye[0]===We.name&&Ye[1]===We.reference){M=$e;break}V||(V={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:ee.getPackageInformation(We).packageLocation.length-1,fileNameIndex:s.lastIndexOf("/")})}}if(!V)return;let ge=DEe(R,_,S,h).getAllowedEndingsInPreferredOrder(),Ie=s,_e=!1;if(!T){let Ze=V.packageRootIndex,We;for(;;){let{moduleFileToTry:Ue,packageRootPath:$e,blockedByExports:Ye,verbatimFromExports:Tt}=Te(Ze);if(k_(S)!==1){if(Ye)return;if(Tt)return Ue}if($e){Ie=$e,_e=!0;break}if(We||(We=Ue),Ze=s.indexOf(ag,Ze+1),Ze===-1){Ie=kEe(We,ge,S,_);break}}}if(c&&!_e)return;if(typeof process.versions.pnp>"u"){let Ze=_.getGlobalTypingsCacheLocation&&_.getGlobalTypingsCacheLocation(),We=g(Ie.substring(0,V.topLevelNodeModulesIndex));if(!(Ac(d,We)||Ze&&Ac(g(Ze),We)))return}let Ee=typeof M<"u"?M+Ie.substring(V.packageRootIndex):Ie.substring(V.topLevelPackageNameIndex+1),Ne=bde(Ee);return k_(S)===1&&Ne===Ee?void 0:Ne;function Te(Ze){var We,Ue;let $e=s.substring(0,Ze),Ye=Ro($e,"package.json"),Tt=s,ot=!1,Qe=(Ue=(We=_.getPackageJsonInfoCache)==null?void 0:We.call(_))==null?void 0:Ue.getPackageJsonInfo(Ye);if(N9e(Qe)||Qe===void 0&&_.fileExists(Ye)){let mt=Qe?.contents.packageJsonContent||nU(_.readFile(Ye)),ht=W||_et(h,_,S);if(U7(S)){let Lt=$e.substring(V.topLevelPackageNameIndex+1),Ke=bde(M||Lt),Pt=PP(S,ht),_r=mt?.exports?wvs(S,_,s,$e,Ke,mt.exports,Pt):void 0;if(_r)return{..._r,verbatimFromExports:!0};if(mt?.exports)return{moduleFileToTry:s,blockedByExports:!0}}let _t=mt?.typesVersions?T9e(mt.typesVersions):void 0;if(_t){let Lt=s.slice($e.length+1),Ke=ptn(Lt,_t.paths,ge,$e,g,_,S);Ke===void 0?ot=!0:Tt=Ro($e,Ke)}let Rt=mt?.typings||mt?.types||mt?.main||"index.js";if(Xs(Rt)&&!(ot&&Tbe($7(_t.paths),Rt))){let Lt=Ou(Rt,$e,g),Ke=g(Tt);if(s0(Lt)===s0(Ke))return{packageRootPath:$e,moduleFileToTry:Tt};if(mt?.type!=="module"&&!fu(Ke,VAe)&&Ac(Ke,Lt)&&Mo(Ke)===ny(Lt)&&s0(gp(Ke))==="index")return{packageRootPath:$e,moduleFileToTry:Tt}}}else{let mt=g(Tt.substring(V.packageRootIndex+1));if(mt==="index.d.ts"||mt==="index.js"||mt==="index.ts"||mt==="index.tsx")return{moduleFileToTry:Tt,packageRootPath:$e}}return{moduleFileToTry:Tt}}}function Nvs(s,c){if(!s.fileExists)return;let g=Nr(z7({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of g){let h=c+d;if(s.fileExists(h))return h}}function ftn(s,c,g){return Xt(c,d=>{let h=IOt(s,d,g);return h!==void 0&&htn(h)?void 0:h})}function kEe(s,c,g,d){if(fu(s,[".json",".mjs",".cjs"]))return s;let h=s0(s);if(s===h)return s;let _=c.indexOf(2),S=c.indexOf(3);if(fu(s,[".mts",".cts"])&&S!==-1&&S<_)return s;if(fu(s,[".d.mts",".mts",".d.cts",".cts"]))return h+met(s,g);if(!fu(s,[".d.ts"])&&fu(s,[".ts"])&&s.includes(".d."))return Itn(s);switch(c[0]){case 0:let R=aa(h,"/index");return d&&R!==h&&Nvs(d,R)?h:R;case 1:return h;case 2:return h+met(s,g);case 3:if(PC(s)){let T=c.findIndex(W=>W===0||W===1);return T!==-1&&T<_?h:h+met(s,g)}return s;default:return pe.assertNever(c[0])}}function Itn(s){let c=gp(s);if(!di(s,".ts")||!c.includes(".d.")||fu(c,[".d.ts"]))return;let g=Xne(s,".ts"),d=g.substring(g.lastIndexOf("."));return g.substring(0,g.indexOf(".d."))+d}function met(s,c){return Cet(s,c)??pe.fail(`Extension ${tz(s)} is unsupported:: FileName:: ${s}`)}function Cet(s,c){let g=QT(s);switch(g){case".ts":case".d.ts":return".js";case".tsx":return c.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return g;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function IOt(s,c,g){let d=Of(c,s,c,g,!1);return Xp(d)?void 0:d}function htn(s){return Ac(s,"..")}function _et(s,c,g){return aN(s)?c.getDefaultResolutionModeForFile(s):sVe(s,g)}function Dvs(s){let c=s.indexOf(3);return c>-1&&c(s[s.None=0]="None",s[s.TypeofEQString=1]="TypeofEQString",s[s.TypeofEQNumber=2]="TypeofEQNumber",s[s.TypeofEQBigInt=4]="TypeofEQBigInt",s[s.TypeofEQBoolean=8]="TypeofEQBoolean",s[s.TypeofEQSymbol=16]="TypeofEQSymbol",s[s.TypeofEQObject=32]="TypeofEQObject",s[s.TypeofEQFunction=64]="TypeofEQFunction",s[s.TypeofEQHostObject=128]="TypeofEQHostObject",s[s.TypeofNEString=256]="TypeofNEString",s[s.TypeofNENumber=512]="TypeofNENumber",s[s.TypeofNEBigInt=1024]="TypeofNEBigInt",s[s.TypeofNEBoolean=2048]="TypeofNEBoolean",s[s.TypeofNESymbol=4096]="TypeofNESymbol",s[s.TypeofNEObject=8192]="TypeofNEObject",s[s.TypeofNEFunction=16384]="TypeofNEFunction",s[s.TypeofNEHostObject=32768]="TypeofNEHostObject",s[s.EQUndefined=65536]="EQUndefined",s[s.EQNull=131072]="EQNull",s[s.EQUndefinedOrNull=262144]="EQUndefinedOrNull",s[s.NEUndefined=524288]="NEUndefined",s[s.NENull=1048576]="NENull",s[s.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",s[s.Truthy=4194304]="Truthy",s[s.Falsy=8388608]="Falsy",s[s.IsUndefined=16777216]="IsUndefined",s[s.IsNull=33554432]="IsNull",s[s.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",s[s.All=134217727]="All",s[s.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",s[s.BaseStringFacts=12582401]="BaseStringFacts",s[s.StringStrictFacts=16317953]="StringStrictFacts",s[s.StringFacts=16776705]="StringFacts",s[s.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",s[s.EmptyStringFacts=12582401]="EmptyStringFacts",s[s.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",s[s.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",s[s.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",s[s.BaseNumberFacts=12582146]="BaseNumberFacts",s[s.NumberStrictFacts=16317698]="NumberStrictFacts",s[s.NumberFacts=16776450]="NumberFacts",s[s.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",s[s.ZeroNumberFacts=12582146]="ZeroNumberFacts",s[s.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",s[s.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",s[s.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",s[s.BaseBigIntFacts=12581636]="BaseBigIntFacts",s[s.BigIntStrictFacts=16317188]="BigIntStrictFacts",s[s.BigIntFacts=16775940]="BigIntFacts",s[s.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",s[s.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",s[s.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",s[s.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",s[s.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",s[s.BaseBooleanFacts=12580616]="BaseBooleanFacts",s[s.BooleanStrictFacts=16316168]="BooleanStrictFacts",s[s.BooleanFacts=16774920]="BooleanFacts",s[s.FalseStrictFacts=12121864]="FalseStrictFacts",s[s.FalseFacts=12580616]="FalseFacts",s[s.TrueStrictFacts=7927560]="TrueStrictFacts",s[s.TrueFacts=16774920]="TrueFacts",s[s.SymbolStrictFacts=7925520]="SymbolStrictFacts",s[s.SymbolFacts=16772880]="SymbolFacts",s[s.ObjectStrictFacts=7888800]="ObjectStrictFacts",s[s.ObjectFacts=16736160]="ObjectFacts",s[s.FunctionStrictFacts=7880640]="FunctionStrictFacts",s[s.FunctionFacts=16728e3]="FunctionFacts",s[s.VoidFacts=9830144]="VoidFacts",s[s.UndefinedFacts=26607360]="UndefinedFacts",s[s.NullFacts=42917664]="NullFacts",s[s.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",s[s.EmptyObjectFacts=83886079]="EmptyObjectFacts",s[s.UnknownFacts=83886079]="UnknownFacts",s[s.AllTypeofNE=556800]="AllTypeofNE",s[s.OrFactsMask=8256]="OrFactsMask",s[s.AndFactsMask=134209471]="AndFactsMask",s))(bet||{}),mOt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),Eet=(s=>(s[s.Normal=0]="Normal",s[s.Contextual=1]="Contextual",s[s.Inferential=2]="Inferential",s[s.SkipContextSensitive=4]="SkipContextSensitive",s[s.SkipGenericFunctions=8]="SkipGenericFunctions",s[s.IsForSignatureHelp=16]="IsForSignatureHelp",s[s.RestBindingElement=32]="RestBindingElement",s[s.TypeOnly=64]="TypeOnly",s))(Eet||{}),vet=(s=>(s[s.None=0]="None",s[s.BivariantCallback=1]="BivariantCallback",s[s.StrictCallback=2]="StrictCallback",s[s.IgnoreReturnTypes=4]="IgnoreReturnTypes",s[s.StrictArity=8]="StrictArity",s[s.StrictTopSignature=16]="StrictTopSignature",s[s.Callback=3]="Callback",s))(vet||{}),kvs=dh(Etn,Gvs),Bet=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),btn=class{};function xvs(){this.flags=0}function rd(s){return s.id||(s.id=Ctn,Ctn++),s.id}function kg(s){return s.id||(s.id=mtn,mtn++),s.id}function wet(s,c){let g=PF(s);return g===1||c&&g===2}function COt(s){var c=[],g=u=>{c.push(u)},d,h,_=ZC.getSymbolConstructor(),S=ZC.getTypeConstructor(),R=ZC.getSignatureConstructor(),T=0,W=0,V=0,M=0,ee=0,re=0,ge,Ie,_e=!1,Ee=qu(),Ne=[1],Te=s.getCompilerOptions(),Ze=Mg(Te),We=i0(Te),Ue=!!Te.experimentalDecorators,$e=Pne(Te),Ye=hbe(Te),Tt=JY(Te),ot=a_(Te,"strictNullChecks"),Qe=a_(Te,"strictFunctionTypes"),mt=a_(Te,"strictBindCallApply"),ht=a_(Te,"strictPropertyInitialization"),_t=a_(Te,"strictBuiltinIteratorReturn"),Rt=a_(Te,"noImplicitAny"),Lt=a_(Te,"noImplicitThis"),Ke=a_(Te,"useUnknownInCatchVariables"),Pt=Te.exactOptionalPropertyTypes,_r=!!Te.noUncheckedSideEffectImports,Gt=h4s(),nt=t8s(),Dt=gWe(),tr=E5t(Te,Dt.syntacticBuilderResolver),ur=NLe({evaluateElementAccessExpression:QUs,evaluateEntityNameExpression:E0n}),Gr=qu(),dt=gA(4,"undefined");dt.declarations=[];var pr=gA(1536,"globalThis",8);pr.exports=Gr,pr.declarations=[],Gr.set(pr.escapedName,pr);var st=gA(4,"arguments"),ir=gA(4,"require"),zt=Te.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Ht=!Te.verbatimModuleSyntax,Br,mn,jn=0,Zi,Ns=0,An=JAe({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:st,globals:Gr,getSymbolOfDeclaration:Uo,error:Sr,getRequiresScopeChangeCache:TQ,setRequiresScopeChangeCache:Ise,lookup:f_,onPropertyWithInvalidInitializer:_pe,onFailedToResolveSymbol:qo,onSuccessfullyResolvedSymbol:py}),si=JAe({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:st,globals:Gr,getSymbolOfDeclaration:Uo,error:Sr,getRequiresScopeChangeCache:TQ,setRequiresScopeChangeCache:Ise,lookup:VQs});let ks={getNodeCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.nodeCount,0),getIdentifierCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.identifierCount,0),getSymbolCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.symbolCount,W),getTypeCount:()=>T,getInstantiationCount:()=>V,getRelationCacheSizes:()=>({assignable:l0.size,identity:u0.size,subtype:ck.size,strictSubtype:bf.size}),isUndefinedSymbol:u=>u===dt,isArgumentsSymbol:u=>u===st,isUnknownSymbol:u=>u===it,getMergedSymbol:jA,symbolIsValue:qi,getDiagnostics:D0n,getGlobalDiagnostics:IKs,getRecursionIdentity:yot,getUnmatchedProperties:JUt,getTypeOfSymbolAtLocation:(u,m)=>{let v=$l(m);return v?KHs(u,v):nn},getTypeOfSymbol:Io,getSymbolsOfParameterPropertyDeclaration:(u,m)=>{let v=$l(u,Si);return v===void 0?pe.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(pe.assert(Ve(v,v.parent)),UU(v,Ap(m)))},getDeclaredTypeOfSymbol:Fp,getPropertiesOfType:Gd,getPropertyOfType:(u,m)=>Gg(u,Ap(m)),getPrivateIdentifierPropertyOfType:(u,m,v)=>{let D=$l(v);if(!D)return;let P=Ap(m),Y=sOe(P,D);return Y?nat(u,Y):void 0},getTypeOfPropertyOfType:(u,m)=>Pi(u,Ap(m)),getIndexInfoOfType:(u,m)=>$x(u,m===0?$r:ri),getIndexInfosOfType:A0,getIndexInfosOfIndexSymbol:zst,getSignaturesOfType:tg,getIndexTypeOfType:(u,m)=>D5(u,m===0?$r:ri),getIndexType:u=>ON(u),getBaseTypes:Kw,getBaseTypeOfLiteralType:uZ,getWidenedType:D1,getWidenedLiteralType:V5,fillMissingTypeArguments:v9,getTypeFromTypeNode:u=>{let m=$l(u,uc);return m?nl(m):nn},getParameterType:CR,getParameterIdentifierInfoAtPosition:kXs,getPromisedTypeOfPromise:eSe,getAwaitedType:u=>Zq(u),getReturnTypeOfSignature:ud,isNullableType:iOe,getNullableType:OWe,getNonNullableType:gZ,getNonOptionalType:vot,getTypeArguments:lf,typeToTypeNode:Dt.typeToTypeNode,typePredicateToTypePredicateNode:Dt.typePredicateToTypePredicateNode,indexInfoToIndexSignatureDeclaration:Dt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:Dt.signatureToSignatureDeclaration,symbolToEntityName:Dt.symbolToEntityName,symbolToExpression:Dt.symbolToExpression,symbolToNode:Dt.symbolToNode,symbolToTypeParameterDeclarations:Dt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:Dt.symbolToParameterDeclaration,typeParameterToDeclaration:Dt.typeParameterToDeclaration,getSymbolsInScope:(u,m)=>{let v=$l(u);return v?hKs(v,m):[]},getSymbolAtLocation:u=>{let m=$l(u);return m?xv(m,!0):void 0},getIndexInfosAtLocation:u=>{let m=$l(u);return m?vKs(m):void 0},getShorthandAssignmentValueSymbol:u=>{let m=$l(u);return m?BKs(m):void 0},getExportSpecifierLocalTargetSymbol:u=>{let m=$l(u,R0);return m?wKs(m):void 0},getExportSymbolOfSymbol(u){return jA(u.exportSymbol||u)},getTypeAtLocation:u=>{let m=$l(u);return m?Vq(m):nn},getTypeOfAssignmentPattern:u=>{let m=$l(u,CY);return m&&xat(m)||nn},getPropertySymbolOfDestructuringAssignment:u=>{let m=$l(u,Ir);return m?TKs(m):void 0},signatureToString:(u,m,v,D)=>lW(u,$l(m),v,D),typeToString:(u,m,v)=>no(u,$l(m),v),symbolToString:(u,m,v,D)=>kl(u,$l(m),v,D),typePredicateToString:(u,m,v)=>gk(u,$l(m),v),writeSignature:(u,m,v,D,P,Y,oe,Be)=>lW(u,$l(m),v,D,P,Y,oe,Be),writeType:(u,m,v,D,P,Y,oe)=>no(u,$l(m),v,D,P,Y,oe),writeSymbol:(u,m,v,D,P)=>kl(u,$l(m),v,D,P),writeTypePredicate:(u,m,v,D)=>gk(u,$l(m),v,D),getAugmentedPropertiesOfType:Z8t,getRootSymbols:P0n,getSymbolOfExpando:lat,getContextualType:(u,m)=>{let v=$l(u,un);if(v)return m&4?ya(v,()=>Jy(v,m)):Jy(v,m)},getContextualTypeForObjectLiteralElement:u=>{let m=$l(u,yw);return m?EKt(m,void 0):void 0},getContextualTypeForArgumentAtIndex:(u,m)=>{let v=$l(u,hF);return v&&_Kt(v,m)},getContextualTypeForJsxAttribute:u=>{let m=$l(u,wJ);return m&&eCn(m,void 0)},isContextSensitive:bS,getTypeOfPropertyOfContextualType:W5,getFullyQualifiedName:f9,getResolvedSignature:(u,m,v)=>Gl(u,m,v,0),getCandidateSignaturesForStringLiteralCompletions:su,getResolvedSignatureForSignatureHelp:(u,m,v)=>Zn(u,()=>Gl(u,m,v,16)),getExpandedParameters:Lfn,hasEffectiveRestParameter:Ck,containsArgumentsReference:PJt,getConstantValue:u=>{let m=$l(u,Q0n);return m?Zat(m):void 0},isValidPropertyAccess:(u,m)=>{let v=$l(u,wre);return!!v&&OQs(v,Ap(m))},isValidPropertyAccessForCompletions:(u,m,v)=>{let D=$l(u,jo);return!!D&&DCn(D,m,v)},getSignatureFromDeclaration:u=>{let m=$l(u,bu);return m?yS(m):void 0},isImplementationOfOverload:u=>{let m=$l(u,bu);return m?H0n(m):void 0},getImmediateAliasedSymbol:jot,getAliasedSymbol:YC,getEmitResolver:Cpe,requiresAddingImplicitUndefined:DOe,getExportsOfModule:dq,getExportsAndPropertiesOfModule:yse,forEachExportAndPropertyOfModule:pq,getSymbolWalker:AOt(d3s,Tv,ud,Kw,pR,Io,L0,Xy,B0,lf),getAmbientModules:H8s,getJsxIntrinsicTagNamesAt:yQs,isOptionalParameter:u=>{let m=$l(u,Si);return m?m2e(m):!1},tryGetMemberInModuleExports:(u,m)=>nK(Ap(u),m),tryGetMemberInModuleExportsAndProperties:(u,m)=>fq(Ap(u),m),tryFindAmbientModule:u=>nIn(u,!0),getApparentType:fy,getUnionType:Ha,isTypeAssignableTo:dg,createAnonymousType:Hf,createSignature:PN,createSymbol:gA,createIndexInfo:eG,getAnyType:()=>hr,getStringType:()=>$r,getStringLiteralType:TE,getNumberType:()=>ri,getNumberLiteralType:fR,getBigIntType:()=>ao,getBigIntLiteralType:RWe,getUnknownType:()=>cn,createPromiseType:pOe,createArrayType:d0,getElementTypeOfArrayType:WWe,getBooleanType:()=>Mn,getFalseType:u=>u?Bs:Ys,getTrueType:u=>u?tn:wn,getVoidType:()=>es,getUndefinedType:()=>Bt,getNullType:()=>Hn,getESSymbolType:()=>ci,getNeverType:()=>Wi,getNonPrimitiveType:()=>fs,getOptionalType:()=>In,getPromiseType:()=>EWe(!1),getPromiseLikeType:()=>wIn(!1),getAnyAsyncIterableType:()=>{let u=SWe(!1);if(u!==oi)return iZ(u,[hr,hr,hr])},isSymbolAccessible:cW,isArrayType:Nv,isTupleType:yA,isArrayLikeType:T9,isEmptyAnonymousObjectType:mk,isTypeInvalidDueToUnionDiscriminant:UOs,getExactOptionalProperties:EMs,getAllPossiblePropertiesOfTypes:KOs,getSuggestedSymbolForNonexistentProperty:ZKt,getSuggestedSymbolForNonexistentJSXAttribute:wCn,getSuggestedSymbolForNonexistentSymbol:(u,m,v)=>RCn(u,Ap(m),v),getSuggestedSymbolForNonexistentModule:LKt,getSuggestedSymbolForNonexistentClassMember:BCn,getBaseConstraintOfType:L_,getDefaultFromTypeParameter:u=>u&&u.flags&262144?VQ(u):void 0,resolveName(u,m,v,D){return An(m,Ap(u),v,void 0,!1,D)},getJsxNamespace:u=>Bc(Mw(u)),getJsxFragmentFactory:u=>{let m=O8t(u);return m&&Bc(B0(m).escapedText)},getAccessibleSymbolChain:m9,getTypePredicateOfSignature:Tv,resolveExternalModuleName:u=>{let m=$l(u,un);return m&&F0(m,m,!0)},resolveExternalModuleSymbol:wE,tryGetThisTypeAt:(u,m,v)=>{let D=$l(u);return D&&IKt(D,m,v)},getTypeArgumentConstraint:u=>{let m=$l(u,uc);return m&&$4s(m)},getSuggestionDiagnostics:(u,m)=>{let v=$l(u,ll)||pe.fail("Could not determine parsed source file.");if(T3(v,Te,s))return E;let D;try{return d=m,G8t(v),pe.assert(!!(sa(v).flags&1)),D=Or(D,QU.getDiagnostics(v.fileName)),K_n(N0n(v),(P,Y,oe)=>{!pP(P)&&!R0n(Y,!!(P.flags&33554432))&&(D||(D=[])).push({...oe,category:2})}),D||E}finally{d=void 0}},runWithCancellationToken:(u,m)=>{try{return d=u,m(ks)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Ug,isDeclarationVisible:Ak,isPropertyAccessible:PKt,getTypeOnlyAliasDeclaration:uR,getMemberOverrideModifierStatus:GUs,isTypeParameterPossiblyReferenced:kWe,typeHasCallOrConstructSignatures:Gat,getSymbolFlags:Hb,getTypeArgumentsForResolvedSignature:Ic,isLibType:Sse};function Ic(u){if(u.mapper!==void 0)return cZ((u.target||u).typeParameters,u.mapper)}function su(u,m){let v=new Set,D=[];ya(m,()=>Gl(u,D,void 0,0));for(let P of D)v.add(P);D.length=0,Zn(m,()=>Gl(u,D,void 0,0));for(let P of D)v.add(P);return Do(v)}function Zn(u,m){if(u=ji(u,Tre),u){let v=[],D=[];for(;u;){let Y=sa(u);if(v.push([Y,Y.resolvedSignature]),Y.resolvedSignature=void 0,RF(u)){let oe=fa(Uo(u)),Be=oe.type;D.push([oe,Be]),oe.type=void 0}u=ji(u.parent,Tre)}let P=m();for(let[Y,oe]of v)Y.resolvedSignature=oe;for(let[Y,oe]of D)Y.type=oe;return P}return m()}function ya(u,m){let v=ji(u,hF);if(v){let P=u;do sa(P).skipDirectInference=!0,P=P.parent;while(P&&P!==v)}_e=!0;let D=Zn(u,m);if(_e=!1,v){let P=u;do sa(P).skipDirectInference=void 0,P=P.parent;while(P&&P!==v)}return D}function Gl(u,m,v,D){let P=$l(u,hF);Br=v;let Y=P?Hse(P,m,D):void 0;return Br=void 0,Y}var ba=new Map,Wo=new Map,hc=new Map,yr=new Map,hn=new Map,Oi=new Map,lo=new Map,pa=new Map,Oa=new Map,tl=new Map,Qu=new Map,Tg=new Map,Cs=new Map,Tu=new Map,Pr=new Map,Pn=[],pt=new Map,on=new Set,it=gA(4,"unknown"),nr=gA(0,"__resolving__"),Fr=new Map,Kr=new Map,Dn=new Set,hr=Vc(1,"any"),En=Vc(1,"any",262144,"auto"),Ni=Vc(1,"any",void 0,"wildcard"),Gi=Vc(1,"any",void 0,"blocked string"),nn=Vc(1,"error"),bn=Vc(1,"unresolved"),ds=Vc(1,"any",65536,"non-inferrable"),Mt=Vc(1,"intrinsic"),cn=Vc(2,"unknown"),Bt=Vc(32768,"undefined"),xe=ot?Bt:Vc(32768,"undefined",65536,"widening"),fr=Vc(32768,"undefined",void 0,"missing"),Je=Pt?fr:Bt,In=Vc(32768,"undefined",void 0,"optional"),Hn=Vc(65536,"null"),Ot=ot?Hn:Vc(65536,"null",65536,"widening"),$r=Vc(4,"string"),ri=Vc(8,"number"),ao=Vc(64,"bigint"),Bs=Vc(512,"false",void 0,"fresh"),Ys=Vc(512,"false"),tn=Vc(512,"true",void 0,"fresh"),wn=Vc(512,"true");tn.regularType=wn,tn.freshType=tn,wn.regularType=wn,wn.freshType=tn,Bs.regularType=Ys,Bs.freshType=Bs,Ys.regularType=Ys,Ys.freshType=Bs;var Mn=Ha([Ys,wn]),ci=Vc(4096,"symbol"),es=Vc(16384,"void"),Wi=Vc(131072,"never"),Vn=Vc(131072,"never",262144,"silent"),Ui=Vc(131072,"never",void 0,"implicit"),gs=Vc(131072,"never",void 0,"unreachable"),fs=Vc(67108864,"object"),bi=Ha([$r,ri]),mc=Ha([$r,ri,ci]),gg=Ha([ri,ao]),Ag=Ha([$r,ri,Mn,ao,Hn,Bt]),_u=hK(["",""],[ri]),wI=DWe(u=>u.flags&262144?K5s(u):u,()=>"(restrictive mapper)"),AI=DWe(u=>u.flags&262144?Ni:u,()=>"(permissive mapper)"),pp=Vc(131072,"never",void 0,"unique literal"),Dl=DWe(u=>u.flags&262144?pp:u,()=>"(unique literal mapper)"),yu,tm=DWe(u=>(yu&&(u===_f||u===QI||u===ve)&&yu(!0),u),()=>"(unmeasurable reporter)"),jp=DWe(u=>(yu&&(u===_f||u===QI||u===ve)&&yu(!1),u),()=>"(unreliable reporter)"),Xg=Hf(void 0,Ee,E,E,E),sh=Hf(void 0,Ee,E,E,E);sh.objectFlags|=2048;var dS=Hf(void 0,Ee,E,E,E);dS.objectFlags|=141440;var gu=gA(2048,"__type");gu.members=qu();var bg=Hf(gu,Ee,E,E,E),KA=Hf(void 0,Ee,E,E,E),TA=ot?Ha([Bt,Hn,KA]):cn,oi=Hf(void 0,Ee,E,E,E);oi.instantiations=new Map;var $d=Hf(void 0,Ee,E,E,E);$d.objectFlags|=262144;var YI=Hf(void 0,Ee,E,E,E),Fh=Hf(void 0,Ee,E,E,E),WC=Hf(void 0,Ee,E,E,E),_f=Yy(),QI=Yy();QI.constraint=_f;var ve=Yy(),mr=Yy(),ln=Yy();ln.constraint=mr;var ni=C2e(1,"<>",0,hr),Ls=PN(void 0,void 0,void 0,E,hr,void 0,0,0),Za=PN(void 0,void 0,void 0,E,nn,void 0,0,0),Go=PN(void 0,void 0,void 0,E,hr,void 0,0,0),Ss=PN(void 0,void 0,void 0,E,Vn,void 0,0,0),Uc=eG(ri,$r,!0),rl=eG($r,hr,!1),xd=new Map,Lg={get yieldType(){return pe.fail("Not supported")},get returnType(){return pe.fail("Not supported")},get nextType(){return pe.fail("Not supported")}},yf=yW(hr,hr,hr),rm=yW(Vn,Vn,Vn),_h={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:T3s,getGlobalIterableType:SWe,getGlobalIterableIteratorType:TIn,getGlobalIteratorObjectType:N3s,getGlobalGeneratorType:D3s,getGlobalBuiltinIteratorTypes:R3s,resolveIterationType:(u,m)=>Zq(u,m,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},Gp={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:k3s,getGlobalIterableType:sot,getGlobalIterableIteratorType:RIn,getGlobalIteratorObjectType:G3s,getGlobalGeneratorType:F3s,getGlobalBuiltinIteratorTypes:x3s,resolveIterationType:(u,m)=>u,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},oh,b1=new Map,Z_=new Map,m2,Vb,or,qn,Js,Hl,RA,NA,uA,hm,af,dI,XI,C2,d_,OC,E1,gy,yv,ik,Wx,Ox,Pb,qm,oR,pS,xN,at,en,gi,_i,ys,$s,wa,pc,ul,Fe,gr,Ln,bs,Xl,eg,jl,Eu,Df,Jg,MC,S1,fS,bv,XF,o9,My,sk,aR,WB,UP,br,sn,ei,is,Qs=new Map,Oo=0,Os=0,co=0,Yc=!1,tu=0,$a,ru,gl,kf=[],Wb=[],OB=[],p_=0,MB=[],v1=[],s5=[],GN=0,ok=[],o5=[],ak=0,gse=TE(""),hpe=fR(0),Ase=RWe({negative:!1,base10Value:"0"}),Mx=[],a5=[],WU=[],a9=0,OU=!1,qz=0,mpe=10,MU=[],$z=[],c5=[],dse=[],HU=[],eq=[],EQ=[],KP=[],tq=[],rq=[],SQ=[],jP=[],c9=[],JF=[],UF=[],KF=[],zP=[],l5=[],YU=[],u5=0,PA=EF(),QU=EF(),pse=g0(),jF,zF,ck=new Map,bf=new Map,l0=new Map,Ob=new Map,u0=new Map,g5=new Map,Ay=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Te.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return r8s(),ks;function lk(u){return!jo(u)||!Ir(u.name)||!jo(u.expression)&&!Ir(u.expression)?!1:Ir(u.expression)?Vo(u.expression)==="Symbol"&&L0(u.expression)===(Gse("Symbol",1160127,void 0)||it):Ir(u.expression.expression)?Vo(u.expression.name)==="Symbol"&&Vo(u.expression.expression)==="globalThis"&&L0(u.expression.expression)===pr:!1}function Hy(u){return u?Pr.get(u):void 0}function HB(u,m){return u&&Pr.set(u,m),m}function Mw(u){if(u){let m=ms(u);if(m)if(Pw(u)){if(m.localJsxFragmentNamespace)return m.localJsxFragmentNamespace;let v=m.pragmas.get("jsxfrag");if(v){let P=Ki(v)?v[0]:v;if(m.localJsxFragmentFactory=Bz(P.arguments.factory,Ze),Mr(m.localJsxFragmentFactory,d5,fC),m.localJsxFragmentFactory)return m.localJsxFragmentNamespace=B0(m.localJsxFragmentFactory).escapedText}let D=O8t(u);if(D)return m.localJsxFragmentFactory=D,m.localJsxFragmentNamespace=B0(D).escapedText}else{let v=A5(m);if(v)return m.localJsxNamespace=v}}return jF||(jF="React",Te.jsxFactory?(zF=Bz(Te.jsxFactory,Ze),Mr(zF,d5),zF&&(jF=B0(zF).escapedText)):Te.reactNamespace&&(jF=Ap(Te.reactNamespace))),zF||(zF=me.createQualifiedName(me.createIdentifier(Bc(jF)),"createElement")),jF}function A5(u){if(u.localJsxNamespace)return u.localJsxNamespace;let m=u.pragmas.get("jsx");if(m){let v=Ki(m)?m[0]:m;if(u.localJsxFactory=Bz(v.arguments.factory,Ze),Mr(u.localJsxFactory,d5,fC),u.localJsxFactory)return u.localJsxNamespace=B0(u.localJsxFactory).escapedText}}function d5(u){return TB(u,-1,-1),_s(u,d5,void 0)}function Cpe(u,m,v){return v||D0n(u,m),nt}function fse(u,m,...v){let D=u?mo(u,m,...v):Nf(m,...v),P=PA.lookup(D);return P||(PA.add(D),D)}function l9(u,m,v,...D){let P=Sr(m,v,...D);return P.skippedOn=u,P}function vQ(u,m,...v){return u?mo(u,m,...v):Nf(m,...v)}function Sr(u,m,...v){let D=vQ(u,m,...v);return PA.add(D),D}function XU(u){let v=ms(u).fileName;return fu(v,[".cts",".cjs"])?Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript}function Hx(u,m){u?PA.add(m):QU.add({...m,category:2})}function Hw(u,m,v,...D){if(m.pos<0||m.end<0){if(!u)return;let P=ms(m);Hx(u,"message"in v?qh(P,0,0,v,...D):Ut(P,v));return}Hx(u,"message"in v?mo(m,v,...D):Bw(ms(m),m,v))}function u9(u,m,v,...D){let P=Sr(u,v,...D);if(m){let Y=mo(u,Z.Did_you_forget_to_use_await);lg(P,Y)}return P}function qP(u,m){let v=Array.isArray(u)?F(u,Kh):Kh(u);return v&&lg(m,mo(v,Z.The_declaration_was_marked_as_deprecated_here)),QU.add(m),m}function dy(u){let m=$m(u);return m&&B(u.declarations)>1?m.flags&64?jt(u.declarations,cR):ue(u.declarations,cR):!!u.valueDeclaration&&cR(u.valueDeclaration)||B(u.declarations)&&ue(u.declarations,cR)}function cR(u){return!!(jQ(u)&536870912)}function YB(u,m,v){let D=mo(u,Z._0_is_deprecated,v);return qP(m,D)}function p5(u,m,v,D){let P=v?mo(u,Z.The_signature_0_of_1_is_deprecated,D,v):mo(u,Z._0_is_deprecated,D);return qP(m,P)}function gA(u,m,v){W++;let D=new _(u|33554432,m);return D.links=new btn,D.links.checkFlags=v||0,D}function IS(u,m){let v=gA(1,u);return v.links.type=m,v}function g9(u,m){let v=gA(4,u);return v.links.type=m,v}function JU(u){let m=0;return u&2&&(m|=111551),u&1&&(m|=111550),u&4&&(m|=0),u&8&&(m|=900095),u&16&&(m|=110991),u&32&&(m|=899503),u&64&&(m|=788872),u&256&&(m|=899327),u&128&&(m|=899967),u&512&&(m|=110735),u&8192&&(m|=103359),u&32768&&(m|=46015),u&65536&&(m|=78783),u&262144&&(m|=526824),u&524288&&(m|=788968),u&2097152&&(m|=2097152),m}function qF(u,m){m.mergeId||(m.mergeId=_tn,_tn++),MU[m.mergeId]=u}function BQ(u){let m=gA(u.flags,u.escapedName);return m.declarations=u.declarations?u.declarations.slice():[],m.parent=u.parent,u.valueDeclaration&&(m.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(m.constEnumOnlyModule=!0),u.members&&(m.members=new Map(u.members)),u.exports&&(m.exports=new Map(u.exports)),qF(m,u),m}function Ev(u,m,v=!1){if(!(u.flags&JU(m.flags))||(m.flags|u.flags)&67108864){if(m===u)return u;if(!(u.flags&33554432)){let Y=Zh(u);if(Y===it)return m;if(!(Y.flags&JU(m.flags))||(m.flags|Y.flags)&67108864)u=BQ(Y);else return D(u,m),m}m.flags&512&&u.flags&512&&u.constEnumOnlyModule&&!m.constEnumOnlyModule&&(u.constEnumOnlyModule=!1),u.flags|=m.flags,m.valueDeclaration&&S7(u,m.valueDeclaration),Or(u.declarations,m.declarations),m.members&&(u.members||(u.members=qu()),FN(u.members,m.members,v)),m.exports&&(u.exports||(u.exports=qu()),FN(u.exports,m.exports,v,u)),v||qF(u,m)}else u.flags&1024?u!==pr&&Sr(m.declarations&&Il(m.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,kl(u)):D(u,m);return u;function D(Y,oe){let Be=!!(Y.flags&384||oe.flags&384),Oe=!!(Y.flags&2||oe.flags&2),He=Be?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Oe?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,qe=oe.declarations&&ms(oe.declarations[0]),Vt=Y.declarations&&ms(Y.declarations[0]),kt=SY(qe,Te.checkJs),vr=SY(Vt,Te.checkJs),dn=kl(oe);if(qe&&Vt&&oh&&!Be&&qe!==Vt){let vn=qf(qe.path,Vt.path)===-1?qe:Vt,ii=vn===qe?Vt:qe,Yi=cr(oh,`${vn.path}|${ii.path}`,()=>({firstFile:vn,secondFile:ii,conflictingSymbols:new Map})),js=cr(Yi.conflictingSymbols,dn,()=>({isBlockScoped:Oe,firstFileLocations:[],secondFileLocations:[]}));kt||P(js.firstFileLocations,oe),vr||P(js.secondFileLocations,Y)}else kt||Yx(oe,He,dn,Y),vr||Yx(Y,He,dn,oe)}function P(Y,oe){if(oe.declarations)for(let Be of oe.declarations)Qi(Y,Be)}}function Yx(u,m,v,D){F(u.declarations,P=>{f5(P,m,v,D.declarations)})}function f5(u,m,v,D){let P=(VL(u,!1)?_ye(u):Il(u))||u,Y=fse(P,m,v);for(let oe of D||E){let Be=(VL(oe,!1)?_ye(oe):Il(oe))||oe;if(Be===P)continue;Y.relatedInformation=Y.relatedInformation||[];let Oe=mo(Be,Z._0_was_also_declared_here,v),He=mo(Be,Z.and_here);B(Y.relatedInformation)>=5||jt(Y.relatedInformation,qe=>X7(qe,He)===0||X7(qe,Oe)===0)||lg(Y,B(Y.relatedInformation)?He:Oe)}}function A9(u,m){if(!u?.size)return m;if(!m?.size)return u;let v=qu();return FN(v,u),FN(v,m),v}function FN(u,m,v=!1,D){m.forEach((P,Y)=>{let oe=u.get(Y),Be=oe?Ev(oe,P,v):jA(P);D&&oe&&(Be.parent=D),u.set(Y,Be)})}function wQ(u){var m,v,D;let P=u.parent;if(((m=P.symbol.declarations)==null?void 0:m[0])!==P){pe.assert(P.symbol.declarations.length>1);return}if(vB(P))FN(Gr,P.symbol.exports);else{let Y=u.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,oe=BE(u,u,Y,!1,!0);if(!oe)return;if(oe=wE(oe),oe.flags&1920)if(jt(Vb,Be=>oe===Be.symbol)){let Be=Ev(P.symbol,oe,!0);or||(or=new Map),or.set(u.text,Be)}else{if((v=oe.exports)!=null&&v.get("__export")&&((D=P.symbol.exports)!=null&&D.size)){let Be=SJt(oe,"resolvedExports");for(let[Oe,He]of Do(P.symbol.exports.entries()))Be.has(Oe)&&!oe.exports.has(Oe)&&Ev(Be.get(Oe),He)}Ev(oe,P.symbol)}else Sr(u,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,u.text)}}function I5(){let u=dt.escapedName,m=Gr.get(u);m?F(m.declarations,v=>{KY(v)||PA.add(mo(v,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,Bc(u)))}):Gr.set(u,dt)}function fa(u){if(u.flags&33554432)return u.links;let m=kg(u);return $z[m]??($z[m]=new btn)}function sa(u){let m=rd(u);return c5[m]||(c5[m]=new xvs)}function f_(u,m,v){if(v){let D=jA(u.get(m));if(D&&(D.flags&v||D.flags&2097152&&Hb(D)&v))return D}}function UU(u,m){let v=u.parent,D=u.parent.parent,P=f_(v.locals,m,111551),Y=f_(pk(D.symbol),m,111551);return P&&Y?[P,Y]:pe.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function $F(u,m){let v=ms(u),D=ms(m),P=tS(u);if(v!==D){if(We&&(v.externalModuleIndicator||D.externalModuleIndicator)||!Te.outFile||OY(m)||u.flags&33554432||oe(m,u))return!0;let He=s.getSourceFiles();return He.indexOf(v)<=He.indexOf(D)}if(m.flags&16777216||OY(m)||eKt(m))return!0;if(u.pos<=m.pos&&!(pi(u)&&$re(m.parent)&&!u.initializer&&!u.exclamationToken)){if(u.kind===209){let He=ML(m,209);return He?ji(He,hg)!==ji(u,hg)||u.posqe===u?"quit":Un(qe)?qe.parent.parent===u:!Ue&&So(qe)&&(qe.parent===u||uu(qe.parent)&&qe.parent.parent===u||fJ(qe.parent)&&qe.parent.parent===u||pi(qe.parent)&&qe.parent.parent===u||Si(qe.parent)&&qe.parent.parent.parent===u));return He?!Ue&&So(He)?!!ji(m,qe=>qe===He?"quit":bu(qe)&&!ZL(qe)):!1:!0}else{if(pi(u))return!Oe(u,m,!1);if(Ve(u,u.parent))return!(Ye&&hC(u)===hC(m)&&oe(m,u))}}return!0}if(m.parent.kind===282||m.parent.kind===278&&m.parent.isExportEquals||m.kind===278&&m.isExportEquals)return!0;if(oe(m,u))return Ye&&hC(u)&&(pi(u)||Ve(u,u.parent))?!Oe(u,m,!0):!0;return!1;function Y(He,qe){switch(He.parent.parent.kind){case 244:case 249:case 251:if(Yw(qe,He,P))return!0;break}let Vt=He.parent.parent;return DL(Vt)&&Yw(qe,Vt.expression,P)}function oe(He,qe){return Be(He,qe)}function Be(He,qe){return!!ji(He,Vt=>{if(Vt===P)return"quit";if(bu(Vt))return!ZL(Vt);if(fl(Vt))return qe.posHe.end?!1:ji(qe,vr=>{if(vr===He)return"quit";switch(vr.kind){case 220:return!0;case 173:return Vt&&(pi(He)&&vr.parent===He.parent||Ve(He,He.parent)&&vr.parent===He.parent.parent)?"quit":!0;case 242:switch(vr.parent.kind){case 178:case 175:case 179:return!0;default:return!1}default:return!1}})===void 0}}function TQ(u){return sa(u).declarationRequiresScopeChange}function Ise(u,m){sa(u).declarationRequiresScopeChange=m}function _pe(u,m,v,D){return Ye?!1:(u&&!D&&KU(u,m,m)||Sr(u,u&&v.type&&sl(v.type,u.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Wd(v.name),vE(m)),!0)}function qo(u,m,v,D){let P=Xs(m)?m:m.escapedText;g(()=>{if(!u||u.parent.kind!==325&&!KU(u,P,m)&&!$P(u)&&!hse(u,P,v)&&!uk(u,P)&&!tW(u,P,v)&&!lR(u,P,v)&&!nq(u,P,v)){let Y,oe;if(m&&(oe=ZQs(m),oe&&Sr(u,D,vE(m),oe)),!oe&&qz{var oe;let Be=m.escapedName,Oe=D&&ll(D)&&vl(D);if(u&&(v&2||(v&32||v&384)&&(v&111551)===111551)){let He=fn(m);(He.flags&2||He.flags&32||He.flags&384)&&hS(He,u)}if(Oe&&(v&111551)===111551&&!(u.flags&16777216)){let He=jA(m);B(He.declarations)&&ue(He.declarations,qe=>sEe(qe)||ll(qe)&&!!qe.symbol.globalExports)&&Hw(!Te.allowUmdGlobalAccess,u,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Bc(Be))}if(P&&!Y&&(v&111551)===111551){let He=jA(Yst(m)),qe=Rw(P);He===Uo(P)?Sr(u,Z.Parameter_0_cannot_reference_itself,Wd(P.name)):He.valueDeclaration&&He.valueDeclaration.pos>P.pos&&qe.parent.locals&&f_(qe.parent.locals,He.escapedName,v)===He&&Sr(u,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,Wd(P.name),Wd(u))}if(u&&v&111551&&m.flags&2097152&&!(m.flags&111551)&&!JL(u)){let He=uR(m,111551);if(He){let qe=He.kind===282||He.kind===279||He.kind===281?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Vt=Bc(Be);hu(Sr(u,qe,Vt),He,Vt)}}if(Te.isolatedModules&&m&&Oe&&(v&111551)===111551){let qe=f_(Gr,Be,v)===m&&ll(D)&&D.locals&&f_(D.locals,Be,-111552);if(qe){let Vt=(oe=qe.declarations)==null?void 0:oe.find(kt=>kt.kind===277||kt.kind===274||kt.kind===275||kt.kind===272);Vt&&!rN(Vt)&&Sr(Vt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Bc(Be))}}})}function hu(u,m,v){return m?lg(u,mo(m,m.kind===282||m.kind===279||m.kind===281?Z._0_was_exported_here:Z._0_was_imported_here,v)):u}function vE(u){return Xs(u)?Bc(u):Wd(u)}function KU(u,m,v){if(!Ir(u)||u.escapedText!==m||k0n(u)||OY(u))return!1;let D=r0(u,!1,!1),P=D;for(;P;){if(xa(P.parent)){let Y=Uo(P.parent);if(!Y)break;let oe=Io(Y);if(Gg(oe,m))return Sr(u,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,vE(v),kl(Y)),!0;if(P===D&&!cg(P)){let Be=Fp(Y).thisType;if(Gg(Be,m))return Sr(u,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,vE(v)),!0}}P=P.parent}return!1}function $P(u){let m=Fo(u);return m&&TI(m,64,!0)?(Sr(u,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,xp(m)),!0):!1}function Fo(u){switch(u.kind){case 80:case 212:return u.parent?Fo(u.parent):void 0;case 234:if(Od(u.expression))return u.expression;default:return}}function hse(u,m,v){let D=1920|(wo(u)?111551:0);if(v===D){let P=Zh(An(u,m,788968&~D,void 0,!1)),Y=u.parent;if(P){if(zi(Y)){pe.assert(Y.left===u,"Should only be resolving left side of qualified name as a namespace");let oe=Y.right.escapedText;if(Gg(Fp(P),oe))return Sr(Y,Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,Bc(m),Bc(oe)),!0}return Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Bc(m)),!0}}return!1}function nq(u,m,v){if(v&788584){let D=Zh(An(u,m,111127,void 0,!1));if(D&&!(D.flags&1920))return Sr(u,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Bc(m)),!0}return!1}function G0(u){return u==="any"||u==="string"||u==="number"||u==="boolean"||u==="never"||u==="unknown"}function uk(u,m){return G0(m)&&u.parent.kind===282?(Sr(u,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,m),!0):!1}function lR(u,m,v){if(v&111551){if(G0(m)){let Y=u.parent.parent;if(Y&&Y.parent&&h1(Y)){let oe=Y.token;Y.parent.kind===265&&oe===96?Sr(u,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Bc(m)):xa(Y.parent)&&oe===96?Sr(u,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Bc(m)):xa(Y.parent)&&oe===119&&Sr(u,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Bc(m))}else Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Bc(m));return!0}let D=Zh(An(u,m,788544,void 0,!1)),P=D&&Hb(D);if(D&&P!==void 0&&!(P&111551)){let Y=Bc(m);return jU(m)?Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,Y):eW(u,D)?Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,Y,Y==="K"?"P":"K"):Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Y),!0}}return!1}function eW(u,m){let v=ji(u.parent,D=>Un(D)||ss(D)?!1:mh(D)||"quit");if(v&&v.members.length===1){let D=Fp(m);return!!(D.flags&1048576)&&j2e(D,384,!0)}return!1}function jU(u){switch(u){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function tW(u,m,v){if(v&111127){if(Zh(An(u,m,1024,void 0,!1)))return Sr(u,Z.Cannot_use_namespace_0_as_a_value,Bc(m)),!0}else if(v&788544&&Zh(An(u,m,1536,void 0,!1)))return Sr(u,Z.Cannot_use_namespace_0_as_a_type,Bc(m)),!0;return!1}function hS(u,m){var v;if(pe.assert(!!(u.flags&2||u.flags&32||u.flags&384)),u.flags&67108881&&u.flags&32)return;let D=(v=u.declarations)==null?void 0:v.find(P=>ZJ(P)||xa(P)||P.kind===267);if(D===void 0)return pe.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!$F(D,m)){let P,Y=Wd(Il(D));u.flags&2?P=Sr(m,Z.Block_scoped_variable_0_used_before_its_declaration,Y):u.flags&32?P=Sr(m,Z.Class_0_used_before_its_declaration,Y):u.flags&256?P=Sr(m,Z.Enum_0_used_before_its_declaration,Y):(pe.assert(!!(u.flags&128)),sS(Te)&&(P=Sr(m,Z.Enum_0_used_before_its_declaration,Y))),P&&lg(P,mo(D,Z._0_is_declared_here,Y))}}function Yw(u,m,v){return!!m&&!!ji(u,D=>D===m||(D===v||bu(D)&&(!ZL(D)||SI(D)&3)?"quit":!1))}function Sv(u){switch(u.kind){case 272:return u;case 274:return u.parent;case 275:return u.parent.parent;case 277:return u.parent.parent.parent;default:return}}function Mb(u){return u.declarations&&be(u.declarations,d9)}function d9(u){return u.kind===272||u.kind===271||u.kind===274&&!!u.name||u.kind===275||u.kind===281||u.kind===277||u.kind===282||u.kind===278&&Ine(u)||fo(u)&&nI(u)===2&&Ine(u)||_p(u)&&fo(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64&&h5(u.parent.right)||u.kind===305||u.kind===304&&h5(u.initializer)||u.kind===261&&CP(u)||u.kind===209&&CP(u.parent.parent)}function h5(u){return $ge(u)||UA(u)&&YN(u)}function iq(u,m){let v=aq(u);if(v){let P=oU(v.expression).arguments[0];return Ir(v.name)?Zh(Gg(iIn(P),v.name.escapedText)):void 0}if(nc(u)||u.moduleReference.kind===284){let P=F0(u,Cye(u)||_7(u)),Y=wE(P);if(Y&&102<=We&&We<=199){let oe=RQ(Y,"module.exports",u,m);if(oe)return oe}return vv(u,P,Y,!1),Y}let D=oW(u.moduleReference,m);return m5(u,D),D}function m5(u,m){if(vv(u,void 0,m,!1)&&!u.isTypeOnly){let v=uR(Uo(u)),D=v.kind===282||v.kind===279,P=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,Y=D?Z._0_was_exported_here:Z._0_was_imported_here,oe=v.kind===279?"*":HD(v.name);lg(Sr(u.moduleReference,P),mo(v,Y,oe))}}function rW(u,m,v,D){let P=u.exports.get("export="),Y=P?Gg(Io(P),m,!0):u.exports.get(m),oe=Zh(Y,D);return vv(v,Y,oe,!1),oe}function sq(u){return Cf(u)&&!u.isExportEquals||Ga(u,2048)||R0(u)||tk(u)}function eZ(u){return mA(u)?s.getEmitSyntaxForUsageLocation(ms(u),u):void 0}function ZN(u,m){return u===99&&m===1}function nW(u,m){if(100<=We&&We<=199&&eZ(u)===99){m??(m=F0(u,u,!0));let D=m&&FJ(m);return D&&(Zu(D)||g9e(D.fileName)===".d.json.ts")}return!1}function C5(u,m,v,D){let P=u&&eZ(D);if(u&&P!==void 0){let Y=s.getImpliedNodeFormatForEmit(u);if(P===99&&Y===1&&100<=We&&We<=199)return!0;if(P===99&&Y===99)return!1}if(!Tt)return!1;if(!u||u.isDeclarationFile){let Y=rW(m,"default",void 0,!0);return!(Y&&jt(Y.declarations,sq)||rW(m,Ap("__esModule"),void 0,v))}return n0(u)?typeof u.externalModuleIndicator!="object"&&!rW(m,Ap("__esModule"),void 0,v):Xw(m)}function p9(u,m){let v=F0(u,u.parent.moduleSpecifier);if(v)return iW(v,u,m)}function iW(u,m,v){var D;let P=(D=u.declarations)==null?void 0:D.find(ll),Y=Qw(m),oe,Be;if(NY(u))oe=u;else if(P&&Y&&102<=We&&We<=199&&eZ(Y)===1&&s.getImpliedNodeFormatForEmit(P)===99&&(Be=rW(u,"module.exports",m,v))){if(!kw(Te)){Sr(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,kl(u),"esModuleInterop");return}return vv(m,Be,void 0,!1),Be}else oe=rW(u,"default",m,v);if(!Y)return oe;let Oe=nW(Y,u),He=C5(P,u,v,Y);if(!oe&&!He&&!Oe)if(Xw(u)&&!Tt){let qe=We>=5?"allowSyntheticDefaultImports":"esModuleInterop",kt=u.exports.get("export=").valueDeclaration,vr=Sr(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,kl(u),qe);kt&&lg(vr,mo(kt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,qe))}else Vw(m)?tZ(u,m):zU(u,u,m,eS(m)&&m.propertyName||m.name);else if(He||Oe){let qe=wE(u,v)||Zh(u,v);return vv(m,u,qe,!1),qe}return vv(m,oe,void 0,!1),oe}function Qw(u){switch(u.kind){case 274:return u.parent.moduleSpecifier;case 272:return ZF(u.moduleReference)?u.moduleReference.expression:void 0;case 275:return u.parent.parent.moduleSpecifier;case 277:return u.parent.parent.parent.moduleSpecifier;case 282:return u.parent.parent.moduleSpecifier;default:return pe.assertNever(u)}}function tZ(u,m){var v,D,P;if((v=u.exports)!=null&&v.has(m.symbol.escapedName))Sr(m.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,kl(u),kl(m.symbol));else{let Y=Sr(m.name,Z.Module_0_has_no_default_export,kl(u)),oe=(D=u.exports)==null?void 0:D.get("__export");if(oe){let Be=(P=oe.declarations)==null?void 0:P.find(Oe=>{var He,qe;return!!(Gh(Oe)&&Oe.moduleSpecifier&&((qe=(He=F0(Oe,Oe.moduleSpecifier))==null?void 0:He.exports)!=null&&qe.has("default")))});Be&&lg(Y,mo(Be,Z.export_Asterisk_does_not_re_export_a_default))}}}function Qx(u,m){let v=u.parent.parent.moduleSpecifier,D=F0(u,v),P=Ux(D,v,m,!1);return vv(u,D,P,!1),P}function sW(u,m){let v=u.parent.moduleSpecifier,D=v&&F0(u,v),P=v&&Ux(D,v,m,!1);return vv(u,D,P,!1),P}function HC(u,m){if(u===it&&m===it)return it;if(u.flags&790504)return u;let v=gA(u.flags|m.flags,u.escapedName);return pe.assert(u.declarations||m.declarations),v.declarations=io(Nn(u.declarations,m.declarations),yg),v.parent=u.parent||m.parent,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration),m.members&&(v.members=new Map(m.members)),u.exports&&(v.exports=new Map(u.exports)),v}function RQ(u,m,v,D){var P;if(u.flags&1536){let Y=B1(u).get(m),oe=Zh(Y,D),Be=(P=fa(u).typeOnlyExportStarMap)==null?void 0:P.get(m);return vv(v,Y,oe,!1,Be,m),oe}}function Xx(u,m){if(u.flags&3){let v=u.valueDeclaration.type;if(v)return Zh(Gg(nl(v),m))}}function _5(u,m,v=!1){var D;let P=Cye(u)||u.moduleSpecifier,Y=F0(u,P),oe=!jo(m)&&m.propertyName||m.name;if(!Ir(oe)&&oe.kind!==11)return;let Be=CF(oe),He=Ux(Y,P,!1,Be==="default"&&Tt);if(He&&(Be||oe.kind===11)){if(NY(Y))return Y;let qe;Y&&Y.exports&&Y.exports.get("export=")?qe=Gg(Io(He),Be,!0):qe=Xx(He,Be),qe=Zh(qe,v);let Vt=RQ(He,Be,m,v);if(Vt===void 0&&Be==="default"){let vr=(D=Y.declarations)==null?void 0:D.find(ll);(nW(P,Y)||C5(vr,Y,v,P))&&(Vt=wE(Y,v)||Zh(Y,v))}let kt=Vt&&qe&&Vt!==qe?HC(qe,Vt):Vt||qe;return eS(m)&&nW(P,Y)&&Be!=="default"?Sr(oe,Z.Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0,jS[We]):kt||zU(Y,He,u,oe),kt}}function zU(u,m,v,D){var P;let Y=f9(u,v),oe=Wd(D),Be=Ir(D)?LKt(D,m):void 0;if(Be!==void 0){let Oe=kl(Be),He=Sr(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,Y,oe,Oe);Be.valueDeclaration&&lg(He,mo(Be.valueDeclaration,Z._0_is_declared_here,Oe))}else(P=u.exports)!=null&&P.has("default")?Sr(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,Y,oe):Jx(v,D,oe,u,Y)}function Jx(u,m,v,D,P){var Y,oe;let Be=(oe=(Y=Gs(D.valueDeclaration,WI))==null?void 0:Y.locals)==null?void 0:oe.get(CF(m)),Oe=D.exports;if(Be){let He=Oe?.get("export=");if(He)Et(He,Be)?mse(u,m,v,P):Sr(m,Z.Module_0_has_no_exported_member_1,P,v);else{let qe=Oe?de(VJt(Oe),kt=>!!Et(kt,Be)):void 0,Vt=qe?Sr(m,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,P,v,kl(qe)):Sr(m,Z.Module_0_declares_1_locally_but_it_is_not_exported,P,v);Be.declarations&&lg(Vt,...At(Be.declarations,(kt,vr)=>mo(kt,vr===0?Z._0_is_declared_here:Z.and_here,v)))}}else Sr(m,Z.Module_0_has_no_exported_member_1,P,v)}function mse(u,m,v,D){if(We>=5){let P=kw(Te)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v)}else if(wo(u)){let P=kw(Te)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v)}else{let P=kw(Te)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v,v,D)}}function oq(u,m){if(uy(u)&&lv(u.propertyName||u.name)){let oe=Qw(u),Be=oe&&F0(u,oe);if(Be)return iW(Be,u,m)}let v=hg(u)?Rw(u):u.parent.parent.parent,D=aq(v),P=_5(v,D||u,m),Y=u.propertyName||u.name;return D&&P&&Ir(Y)?Zh(Gg(Io(P),Y.escapedText),m):(vv(u,void 0,P,!1),P)}function aq(u){if(nc(u)&&u.initializer&&jo(u.initializer))return u.initializer}function ype(u,m){if(mE(u.parent)){let v=wE(u.parent.symbol,m);return vv(u,void 0,v,!1),v}}function cq(u,m,v){let D=u.propertyName||u.name;if(lv(D)){let Y=Qw(u),oe=Y&&F0(u,Y);if(oe)return iW(oe,u,!!v)}let P=u.parent.parent.moduleSpecifier?_5(u.parent.parent,u,v):D.kind===11?void 0:TI(D,m,!1,v);return vv(u,void 0,P,!1),P}function y5(u,m){let v=Cf(u)?u.expression:u.right,D=rZ(v,m);return vv(u,void 0,D,!1),D}function rZ(u,m){if(vd(u))return RI(u).symbol;if(!fC(u)&&!Od(u))return;let v=TI(u,901119,!0,m);return v||(RI(u),sa(u).resolvedSymbol)}function Cse(u,m){if(fo(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64)return rZ(u.parent.right,m)}function b5(u,m=!1){switch(u.kind){case 272:case 261:return iq(u,m);case 274:return p9(u,m);case 275:return Qx(u,m);case 281:return sW(u,m);case 277:case 209:return oq(u,m);case 282:return cq(u,901119,m);case 278:case 227:return y5(u,m);case 271:return ype(u,m);case 305:return TI(u.name,901119,!0,m);case 304:return rZ(u.initializer,m);case 213:case 212:return Cse(u,m);default:return pe.fail()}}function qU(u,m=901119){return u?(u.flags&(2097152|m))===2097152||!!(u.flags&2097152&&u.flags&67108864):!1}function Zh(u,m){return!m&&qU(u)?YC(u):u}function YC(u){pe.assert((u.flags&2097152)!==0,"Should only get Alias here.");let m=fa(u);if(m.aliasTarget)m.aliasTarget===nr&&(m.aliasTarget=it);else{m.aliasTarget=nr;let v=Mb(u);if(!v)return pe.fail();let D=b5(v);m.aliasTarget===nr?m.aliasTarget=D||it:Sr(v,Z.Circular_definition_of_import_alias_0,kl(u))}return m.aliasTarget}function lq(u){if(fa(u).aliasTarget!==nr)return YC(u)}function Hb(u,m,v){let D=m&&uR(u),P=D&&Gh(D),Y=D&&(P?F0(D.moduleSpecifier,D.moduleSpecifier,!0):YC(D.symbol)),oe=P&&Y?LN(Y):void 0,Be=v?0:u.flags,Oe;for(;u.flags&2097152;){let He=fn(YC(u));if(!P&&He===Y||oe?.get(He.escapedName)===He)break;if(He===it)return-1;if(He===u||Oe?.has(He))break;He.flags&2097152&&(Oe?Oe.add(He):Oe=new Set([u,He])),Be|=He.flags,u=He}return Be}function vv(u,m,v,D,P,Y){if(!u||jo(u))return!1;let oe=Uo(u);if(nN(u)){let Oe=fa(oe);return Oe.typeOnlyDeclaration=u,!0}if(P){let Oe=fa(oe);return Oe.typeOnlyDeclaration=P,oe.escapedName!==Y&&(Oe.typeOnlyExportStarName=Y),!0}let Be=fa(oe);return NQ(Be,m,D)||NQ(Be,v,D)}function NQ(u,m,v){var D;if(m&&(u.typeOnlyDeclaration===void 0||v&&u.typeOnlyDeclaration===!1)){let P=((D=m.exports)==null?void 0:D.get("export="))??m,Y=P.declarations&&de(P.declarations,nN);u.typeOnlyDeclaration=Y??fa(P).typeOnlyDeclaration??!1}return!!u.typeOnlyDeclaration}function uR(u,m){var v;if(!(u.flags&2097152))return;let D=fa(u);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let P=Zh(u);vv((v=u.declarations)==null?void 0:v[0],Mb(u)&&jot(u),P,!0)}if(m===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let P=D.typeOnlyDeclaration.kind===279?Zh(LN(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||u.escapedName)):YC(D.typeOnlyDeclaration.symbol);return Hb(P)&m?D.typeOnlyDeclaration:void 0}}function oW(u,m){return u.kind===80&&P7(u)&&(u=u.parent),u.kind===80||u.parent.kind===167?TI(u,1920,!1,m):(pe.assert(u.parent.kind===272),TI(u,901119,!1,m))}function f9(u,m){return u.parent?f9(u.parent,m)+"."+kl(u):kl(u,m,void 0,36)}function uq(u){for(;zi(u.parent);)u=u.parent;return u}function bpe(u){let m=B0(u),v=An(m,m,111551,void 0,!0);if(v){for(;zi(m.parent);){let D=Io(v);if(v=Gg(D,m.parent.right.escapedText),!v)return;m=m.parent}return v}}function TI(u,m,v,D,P){if(sf(u))return;let Y=1920|(wo(u)?m&111551:0),oe;if(u.kind===80){let Be=m===Y||sp(u)?Z.Cannot_find_namespace_0:imn(B0(u)),Oe=wo(u)&&!sp(u)?_se(u,m):void 0;if(oe=jA(An(P||u,u,m,v||Oe?void 0:Be,!0,!1)),!oe)return jA(Oe)}else if(u.kind===167||u.kind===212){let Be=u.kind===167?u.left:u.expression,Oe=u.kind===167?u.right:u.name,He=TI(Be,Y,v,!1,P);if(!He||sf(Oe))return;if(He===it)return He;if(He.valueDeclaration&&wo(He.valueDeclaration)&&k_(Te)!==100&&nc(He.valueDeclaration)&&He.valueDeclaration.initializer&&e_n(He.valueDeclaration.initializer)){let qe=He.valueDeclaration.initializer.arguments[0],Vt=F0(qe,qe);if(Vt){let kt=wE(Vt);kt&&(He=kt)}}if(oe=jA(f_(B1(He),Oe.escapedText,m)),!oe&&He.flags&2097152&&(oe=jA(f_(B1(YC(He)),Oe.escapedText,m))),!oe){if(!v){let qe=f9(He),Vt=Wd(Oe),kt=LKt(Oe,He);if(kt){Sr(Oe,Z._0_has_no_exported_member_named_1_Did_you_mean_2,qe,Vt,kl(kt));return}let vr=zi(u)&&uq(u);if(qn&&m&788968&&vr&&!CN(vr.parent)&&bpe(vr)){Sr(vr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,oy(vr));return}if(m&1920&&zi(u.parent)){let vn=jA(f_(B1(He),Oe.escapedText,788968));if(vn){Sr(u.parent.right,Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,kl(vn),Bc(u.parent.right.escapedText));return}}Sr(Oe,Z.Namespace_0_has_no_exported_member_1,qe,Vt)}return}}else pe.assertNever(u,"Unknown entity name kind.");return!sp(u)&&fC(u)&&(oe.flags&2097152||u.parent.kind===278)&&vv(Rye(u),oe,void 0,!0),oe.flags&m||D?oe:YC(oe)}function _se(u,m){if(rot(u.parent)){let v=$U(u.parent);if(v)return An(v,u,m,void 0,!0)}}function $U(u){if(ji(u,P=>l3(P)||P.flags&16777216?iS(P):"quit"))return;let v=bP(u);if(v&&VC(v)&&lne(v.expression)){let P=Uo(v.expression.left);if(P)return DQ(P)}if(v&&UA(v)&&lne(v.parent)&&VC(v.parent.parent)){let P=Uo(v.parent.left);if(P)return DQ(P)}if(v&&(a2(v)||fm(v))&&fo(v.parent.parent)&&nI(v.parent.parent)===6){let P=Uo(v.parent.parent.left);if(P)return DQ(P)}let D=WL(u);if(D&&bu(D)){let P=Uo(D);return P&&P.valueDeclaration}}function DQ(u){let m=u.parent.valueDeclaration;return m?(b7(m)?FY(m):l1(m)?E7(m):void 0)||m:void 0}function gq(u){let m=u.valueDeclaration;if(!m||!wo(m)||u.flags&524288||VL(m,!1))return;let v=nc(m)?E7(m):FY(m);if(v){let D=mS(v);if(D)return JKt(D,u)}}function F0(u,m,v){let P=k_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return BE(u,m,v?void 0:P,v)}function BE(u,m,v,D=!1,P=!1){return mA(m)?eK(u,m.text,v,D?void 0:m,P):void 0}function eK(u,m,v,D,P=!1){var Y,oe,Be,Oe,He,qe,Vt,kt,vr,dn,vn,ii;if(D&&Ac(m,"@types/")){let Kc=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Vu=Nm(m,"@types/");Sr(D,Kc,Vu,m)}let Yi=nIn(m,!0);if(Yi)return Yi;let js=ms(u),Co=mA(u)?u:((Y=xh(u)?u:u.parent&&xh(u.parent)&&u.parent.name===u?u.parent:void 0)==null?void 0:Y.name)||((oe=ky(u)?u:void 0)==null?void 0:oe.argument.literal)||(nc(u)&&u.initializer&&ay(u.initializer,!0)?u.initializer.arguments[0]:void 0)||((Be=ji(u,Up))==null?void 0:Be.arguments[0])||((Oe=ji(u,Hp(Mf,SN,Gh)))==null?void 0:Oe.moduleSpecifier)||((He=ji(u,LL))==null?void 0:He.moduleReference.expression),Ji=Co&&mA(Co)?s.getModeForUsageLocation(js,Co):s.getDefaultResolutionModeForFile(js),Mi=k_(Te),To=(qe=s.getResolvedModule(js,m,Ji))==null?void 0:qe.resolvedModule,Ka=D&&To&&htt(Te,To,js),yl=To&&(!Ka||Ka===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&s.getSourceFile(To.resolvedFileName);if(yl){if(Ka&&Sr(D,Ka,m,To.resolvedFileName),To.resolvedUsingTsExtension&&PC(m)){let Kc=((Vt=ji(u,Mf))==null?void 0:Vt.importClause)||ji(u,Hp(km,Gh));(D&&Kc&&!Kc.isTypeOnly||ji(u,Up))&&Sr(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,ka(pe.checkDefined(O7(m))))}else if(To.resolvedUsingTsExtension&&!Die(Te,js.fileName)){let Kc=((kt=ji(u,Mf))==null?void 0:kt.importClause)||ji(u,Hp(km,Gh));if(D&&!(Kc?.isTypeOnly||ji(u,Um))){let Vu=pe.checkDefined(O7(m));Sr(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Vu)}}else if(Te.rewriteRelativeImportExtensions&&!(u.flags&33554432)&&!PC(m)&&!ky(u)&&!sge(u)){let Kc=une(m,Te);if(!To.resolvedUsingTsExtension&&Kc)Sr(D,Z.This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0,i1(Xc(js.fileName,s.getCurrentDirectory()),To.resolvedFileName,JD(s)));else if(To.resolvedUsingTsExtension&&!Kc&&SP(yl,s))Sr(D,Z.This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path,gE(m));else if(To.resolvedUsingTsExtension&&Kc){let Vu=(vr=s.getRedirectFromSourceFile(yl.path))==null?void 0:vr.resolvedRef;if(Vu){let gd=!s.useCaseSensitiveFileNames(),Ll=s.getCommonSourceDirectory(),Ef=RU(Vu.commandLine,gd),UI=mp(Ll,Ef,gd),V0=mp(Te.outDir||Ll,Vu.commandLine.options.outDir||Ef,gd);UI!==V0&&Sr(D,Z.This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files)}}}if(yl.symbol){if(D&&To.isExternalLibraryImport&&!ez(To.extension)&&E5(!1,D,js,Ji,To,m),D&&(We===100||We===101)){let Kc=js.impliedNodeFormat===1&&!ji(u,Up)||!!ji(u,km),Vu=ji(u,gd=>Um(gd)||Gh(gd)||Mf(gd)||SN(gd));if(Kc&&yl.impliedNodeFormat===99&&!TLe(Vu))if(ji(u,km))Sr(D,Z.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead,m);else{let gd,Ll=QT(js.fileName);(Ll===".ts"||Ll===".js"||Ll===".tsx"||Ll===".jsx")&&(gd=l7(js));let Ef=Vu?.kind===273&&((dn=Vu.importClause)!=null&&dn.isTypeOnly)?Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Vu?.kind===206?Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Z.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead;PA.add(Bw(ms(D),D,wu(gd,Ef,m)))}}return jA(yl.symbol)}D&&v&&!Wbe(D)&&Sr(D,Z.File_0_is_not_a_module,yl.fileName);return}if(Vb){let Kc=YA(Vb,Vu=>Vu.pattern,m);if(Kc){let Vu=or&&or.get(m);return jA(Vu||Kc.symbol)}}if(!D)return;if(To&&!ez(To.extension)&&Ka===void 0||Ka===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(P){let Kc=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;Sr(D,Kc,m,To.resolvedFileName)}else E5(Rt&&!!v,D,js,Ji,To,m);return}if(v){if(To){let Kc=s.getRedirectFromSourceFile(To.resolvedFileName);if(Kc?.outputDts){Sr(D,Z.Output_file_0_has_not_been_built_from_source_file_1,Kc.outputDts,To.resolvedFileName);return}}if(Ka)Sr(D,Ka,m,To.resolvedFileName);else{let Kc=Ip(m)&&!E0(m),Vu=Mi===3||Mi===99;if(!NP(Te)&&aA(m,".json")&&Mi!==1&&wAe(Te))Sr(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,m);else if(Ji===99&&Vu&&Kc){let gd=Xc(m,Mo(js.path)),Ll=(vn=Ay.find(([Ef,UI])=>s.fileExists(gd+Ef)))==null?void 0:vn[1];Ll?Sr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,m+Ll):Sr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if((ii=s.getResolvedModule(js,m,Ji))!=null&&ii.alternateResult){let gd=kJ(js,s,m,Ji,m);Hw(!0,D,wu(gd,v,m))}else Sr(D,v,m)}}return;function ka(Kc){let Vu=Xne(m,Kc);if(Wne(We)||Ji===99){let gd=PC(m)&&Die(Te);return Vu+(Kc===".mts"||Kc===".d.mts"?gd?".mts":".mjs":Kc===".cts"||Kc===".d.mts"?gd?".cts":".cjs":gd?".ts":".js")}return Vu}}function E5(u,m,v,D,{packageId:P,resolvedFileName:Y},oe){if(Wbe(m))return;let Be;!Xr(oe)&&P&&(Be=kJ(v,s,oe,D,P.name)),Hw(u,m,wu(Be,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,oe,Y))}function wE(u,m){if(u?.exports){let v=Zh(u.exports.get("export="),m),D=tK(jA(v),jA(u));return jA(D)||u}}function tK(u,m){if(!u||u===it||u===m||m.exports.size===1||u.flags&2097152)return u;let v=fa(u);if(v.cjsExportMerged)return v.cjsExportMerged;let D=u.flags&33554432?u:BQ(u);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=qu()),m.exports.forEach((P,Y)=>{Y!=="export="&&D.exports.set(Y,D.exports.has(Y)?Ev(D.exports.get(Y),P):P)}),D===u&&(fa(D).resolvedExports=void 0,fa(D).resolvedMembers=void 0),fa(D).cjsExportMerged=D,v.cjsExportMerged=D}function Ux(u,m,v,D){var P;let Y=wE(u,v);if(!v&&Y){if(!D&&!(Y.flags&1539)&&!Cp(Y,308)){let Oe=We>=5?"allowSyntheticDefaultImports":"esModuleInterop";return Sr(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Oe),Y}let oe=m.parent,Be=Mf(oe)&&JJ(oe);if(Be||Up(oe)){let Oe=Up(oe)?oe.arguments[0]:oe.moduleSpecifier,He=Io(Y),qe=qCn(He,Y,u,Oe);if(qe)return rK(Y,qe,oe);let Vt=(P=u?.declarations)==null?void 0:P.find(ll),kt=eZ(Oe),vr;if(Be&&Vt&&102<=We&&We<=199&&kt===1&&s.getImpliedNodeFormatForEmit(Vt)===99&&(vr=rW(Y,"module.exports",Be,v)))return!D&&!(Y.flags&1539)&&Sr(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,"esModuleInterop"),kw(Te)&&Aq(He)?rK(vr,He,oe):vr;let dn=Vt&&ZN(kt,s.getImpliedNodeFormatForEmit(Vt));if((kw(Te)||dn)&&(Aq(He)||Gg(He,"default",!0)||dn)){let vn=He.flags&3670016?$Cn(He,Y,u,Oe):UKt(Y,Y.parent);return rK(Y,vn,oe)}}}return Y}function Aq(u){return jt(_We(u,0))||jt(_We(u,1))}function rK(u,m,v){let D=gA(u.flags,u.escapedName);D.declarations=u.declarations?u.declarations.slice():[],D.parent=u.parent,D.links.target=u,D.links.originatingImport=v,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),u.members&&(D.members=new Map(u.members)),u.exports&&(D.exports=new Map(u.exports));let P=pR(m);return D.links.type=Hf(D,P.members,E,E,P.indexInfos),D}function Xw(u){return u.exports.get("export=")!==void 0}function dq(u){return VJt(LN(u))}function yse(u){let m=dq(u),v=wE(u);if(v!==u){let D=Io(v);I9(D)&&Or(m,Gd(D))}return m}function pq(u,m){LN(u).forEach((P,Y)=>{B5(Y)||m(P,Y)});let D=wE(u);if(D!==u){let P=Io(D);I9(P)&&JOs(P,(Y,oe)=>{m(Y,oe)})}}function nK(u,m){let v=LN(m);if(v)return v.get(u)}function fq(u,m){let v=nK(u,m);if(v)return v;let D=wE(m);if(D===m)return;let P=Io(D);return I9(P)?Gg(P,u):void 0}function I9(u){return!(u.flags&402784252||la(u)&1||Nv(u)||yA(u))}function B1(u){return u.flags&6256?SJt(u,"resolvedExports"):u.flags&1536?LN(u):u.exports||Ee}function LN(u){let m=fa(u);if(!m.resolvedExports){let{exports:v,typeOnlyExportStarMap:D}=sK(u);m.resolvedExports=v,m.typeOnlyExportStarMap=D}return m.resolvedExports}function iK(u,m,v,D){m&&m.forEach((P,Y)=>{if(Y==="default")return;let oe=u.get(Y);if(!oe)u.set(Y,P),v&&D&&v.set(Y,{specifierText:xp(D.moduleSpecifier)});else if(v&&D&&oe&&Zh(oe)!==Zh(P)){let Be=v.get(Y);Be.exportsWithDuplicate?Be.exportsWithDuplicate.push(D):Be.exportsWithDuplicate=[D]}})}function sK(u){let m=[],v,D=new Set;u=wE(u);let P=Y(u)||Ee;return v&&D.forEach(oe=>v.delete(oe)),{exports:P,typeOnlyExportStarMap:v};function Y(oe,Be,Oe){if(!Oe&&oe?.exports&&oe.exports.forEach((Vt,kt)=>D.add(kt)),!(oe&&oe.exports&&Qi(m,oe)))return;let He=new Map(oe.exports),qe=oe.exports.get("__export");if(qe){let Vt=qu(),kt=new Map;if(qe.declarations)for(let vr of qe.declarations){let dn=F0(vr,vr.moduleSpecifier),vn=Y(dn,vr,Oe||vr.isTypeOnly);iK(Vt,vn,kt,vr)}kt.forEach(({exportsWithDuplicate:vr},dn)=>{if(!(dn==="export="||!(vr&&vr.length)||He.has(dn)))for(let vn of vr)PA.add(mo(vn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,kt.get(dn).specifierText,Bc(dn)))}),iK(He,Vt)}return Be?.isTypeOnly&&(v??(v=new Map),He.forEach((Vt,kt)=>v.set(kt,Be))),He}}function jA(u){let m;return u&&u.mergeId&&(m=MU[u.mergeId])?m:u}function Uo(u){return jA(u.symbol&&Yst(u.symbol))}function mS(u){return mE(u)?Uo(u):void 0}function $m(u){return jA(u.parent&&Yst(u.parent))}function S5(u){var m,v;return(((m=u.valueDeclaration)==null?void 0:m.kind)===220||((v=u.valueDeclaration)==null?void 0:v.kind)===219)&&mS(u.valueDeclaration.parent)||u}function oK(u,m){let v=ms(m),D=rd(v),P=fa(u),Y;if(P.extendedContainersByFile&&(Y=P.extendedContainersByFile.get(D)))return Y;if(v&&v.imports){for(let Be of v.imports){if(sp(Be))continue;let Oe=F0(m,Be,!0);!Oe||!Ae(Oe,u)||(Y=Ft(Y,Oe))}if(B(Y))return(P.extendedContainersByFile||(P.extendedContainersByFile=new Map)).set(D,Y),Y}if(P.extendedContainers)return P.extendedContainers;let oe=s.getSourceFiles();for(let Be of oe){if(!xm(Be))continue;let Oe=Uo(Be);Ae(Oe,u)&&(Y=Ft(Y,Oe))}return P.extendedContainers=Y||E}function kQ(u,m,v){let D=$m(u);if(D&&!(u.flags&262144))return Oe(D);let P=Xt(u.declarations,qe=>{if(!s_(qe)&&qe.parent){if(GQ(qe.parent))return Uo(qe.parent);if(_N(qe.parent)&&qe.parent.parent&&wE(Uo(qe.parent.parent))===u)return Uo(qe.parent.parent)}if(vd(qe)&&fo(qe.parent)&&qe.parent.operatorToken.kind===64&&_p(qe.parent.left)&&Od(qe.parent.left.expression))return cN(qe.parent.left)||p3(qe.parent.left.expression)?Uo(ms(qe)):(RI(qe.parent.left.expression),sa(qe.parent.left.expression).resolvedSymbol)});if(!B(P))return;let Y=Xt(P,qe=>Ae(qe,u)?qe:void 0),oe=[],Be=[];for(let qe of Y){let[Vt,...kt]=Oe(qe);oe=Ft(oe,Vt),Be=Or(Be,kt)}return Nn(oe,Be);function Oe(qe){let Vt=Xt(qe.declarations,He),kt=m&&oK(u,m),vr=v5(qe,v);if(m&&qe.flags&Jw(v)&&m9(qe,m,1920,!1))return Ft(Nn(Nn([qe],Vt),kt),vr);let dn=!(qe.flags&Jw(v))&&qe.flags&788968&&Fp(qe).flags&524288&&v===111551?h9(m,ii=>Dh(ii,Yi=>{if(Yi.flags&Jw(v)&&Io(Yi)===Fp(qe))return Yi})):void 0,vn=dn?[dn,...Vt,qe]:[...Vt,qe];return vn=Ft(vn,vr),vn=Or(vn,kt),vn}function He(qe){return D&&aK(qe,D)}}function v5(u,m){let v=!!B(u.declarations)&&ma(u.declarations);if(m&111551&&v&&v.parent&&nc(v.parent)&&(og(v)&&v===v.parent.initializer||mh(v)&&v===v.parent.type))return Uo(v.parent)}function aK(u,m){let v=lK(u),D=v&&v.exports&&v.exports.get("export=");return D&&Et(D,m)?v:void 0}function Ae(u,m){if(u===$m(m))return m;let v=u.exports&&u.exports.get("export=");if(v&&Et(v,m))return u;let D=B1(u),P=D.get(m.escapedName);return P&&Et(P,m)?P:Dh(D,Y=>{if(Et(Y,m))return Y})}function Et(u,m){if(jA(Zh(jA(u)))===jA(Zh(jA(m))))return u}function fn(u){return jA(u&&(u.flags&1048576)!==0&&u.exportSymbol||u)}function qi(u,m){return!!(u.flags&111551||u.flags&2097152&&Hb(u,!m)&111551)}function ic(u){var m;let v=new S(ks,u);return T++,v.id=T,(m=ki)==null||m.recordType(v),v}function Oc(u,m){let v=ic(u);return v.symbol=m,v}function zl(u){return new S(ks,u)}function Vc(u,m,v=0,D){_A(m,D);let P=ic(u);return P.intrinsicName=m,P.debugIntrinsicName=D,P.objectFlags=v|524288|2097152|33554432|16777216,P}function _A(u,m){let v=`${u},${m??""}`;Dn.has(v)&&pe.fail(`Duplicate intrinsic type name ${u}${m?` (${m})`:""}; you may need to pass a name to createIntrinsicType.`),Dn.add(v)}function Lh(u,m){let v=Oc(524288,m);return v.objectFlags=u,v.members=void 0,v.properties=void 0,v.callSignatures=void 0,v.constructSignatures=void 0,v.indexInfos=void 0,v}function g0(){return Ha(Do(mOt.keys(),TE))}function Yy(u){return Oc(262144,u)}function B5(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)!==95&&u.charCodeAt(2)!==64&&u.charCodeAt(2)!==35}function Qy(u){let m;return u.forEach((v,D)=>{aW(v,D)&&(m||(m=[])).push(v)}),m||E}function aW(u,m){return!B5(m)&&qi(u)}function Iq(u){let m=Qy(u),v=jst(u);return v?Nn(m,[v]):m}function QB(u,m,v,D,P){let Y=u;return Y.members=m,Y.properties=E,Y.callSignatures=v,Y.constructSignatures=D,Y.indexInfos=P,m!==Ee&&(Y.properties=Qy(m)),Y}function Hf(u,m,v,D,P){return QB(Lh(16,u),m,v,D,P)}function cK(u){if(u.constructSignatures.length===0)return u;if(u.objectTypeWithoutAbstractConstructSignatures)return u.objectTypeWithoutAbstractConstructSignatures;let m=Me(u.constructSignatures,D=>!(D.flags&4));if(u.constructSignatures===m)return u;let v=Hf(u.symbol,u.members,u.callSignatures,jt(m)?m:E,u.indexInfos);return u.objectTypeWithoutAbstractConstructSignatures=v,v.objectTypeWithoutAbstractConstructSignatures=v,v}function h9(u,m){let v;for(let D=u;D;D=D.parent){if(WI(D)&&D.locals&&!fc(D)&&(v=m(D.locals,void 0,!0,D)))return v;switch(D.kind){case 308:if(!vl(D))break;case 268:let P=Uo(D);if(v=m(P?.exports||Ee,void 0,!0,D))return v;break;case 264:case 232:case 265:let Y;if((Uo(D).members||Ee).forEach((oe,Be)=>{oe.flags&788968&&(Y||(Y=qu())).set(Be,oe)}),Y&&(v=m(Y,void 0,!1,D)))return v;break}}return m(Gr,void 0,!0)}function Jw(u){return u===111551?111551:1920}function m9(u,m,v,D,P=new Map){if(!(u&&!lWe(u)))return;let Y=fa(u),oe=Y.accessibleChainCache||(Y.accessibleChainCache=new Map),Be=h9(m,(Yi,js,Co,Ji)=>Ji),Oe=`${D?0:1}|${Be?rd(Be):0}|${v}`;if(oe.has(Oe))return oe.get(Oe);let He=kg(u),qe=P.get(He);qe||P.set(He,qe=[]);let Vt=h9(m,kt);return oe.set(Oe,Vt),Vt;function kt(Yi,js,Co){if(!Qi(qe,Yi))return;let Ji=vn(Yi,js,Co);return qe.pop(),Ji}function vr(Yi,js){return!xQ(Yi,m,js)||!!m9(Yi.parent,m,Jw(js),D,P)}function dn(Yi,js,Co){return(u===(js||Yi)||jA(u)===jA(js||Yi))&&!jt(Yi.declarations,GQ)&&(Co||vr(jA(Yi),v))}function vn(Yi,js,Co){return dn(Yi.get(u.escapedName),void 0,js)?[u]:Dh(Yi,Mi=>{if(Mi.flags&2097152&&Mi.escapedName!=="export="&&Mi.escapedName!=="default"&&!(yAe(Mi)&&m&&xm(ms(m)))&&(!D||jt(Mi.declarations,LL))&&(!Co||!jt(Mi.declarations,cZe))&&(js||!Cp(Mi,282))){let To=YC(Mi),Ka=ii(Mi,To,js);if(Ka)return Ka}if(Mi.escapedName===u.escapedName&&Mi.exportSymbol&&dn(jA(Mi.exportSymbol),void 0,js))return[u]})||(Yi===Gr?ii(pr,pr,js):void 0)}function ii(Yi,js,Co){if(dn(Yi,js,Co))return[Yi];let Ji=B1(js),Mi=Ji&&kt(Ji,!0);if(Mi&&vr(Yi,Jw(v)))return[Yi].concat(Mi)}}function xQ(u,m,v){let D=!1;return h9(m,P=>{let Y=jA(P.get(u.escapedName));if(!Y)return!1;if(Y===u)return!0;let oe=Y.flags&2097152&&!Cp(Y,282);return Y=oe?YC(Y):Y,(oe?Hb(Y):Y.flags)&v?(D=!0,!0):!1}),D}function lWe(u){if(u.declarations&&u.declarations.length){for(let m of u.declarations)switch(m.kind){case 173:case 175:case 178:case 179:continue;default:return!1}return!0}return!1}function Epe(u,m){return mq(u,m,788968,!1,!0).accessibility===0}function hq(u,m){return mq(u,m,111551,!1,!0).accessibility===0}function Spe(u,m,v){return mq(u,m,v,!1,!1).accessibility===0}function c2e(u,m,v,D,P,Y){if(!B(u))return;let oe,Be=!1;for(let Oe of u){let He=m9(Oe,m,D,!1);if(He){oe=Oe;let kt=uK(He[0],P);if(kt)return kt}if(Y&&jt(Oe.declarations,GQ)){if(P){Be=!0;continue}return{accessibility:0}}let qe=kQ(Oe,m,D),Vt=c2e(qe,m,v,v===Oe?Jw(D):D,P,Y);if(Vt)return Vt}if(Be)return{accessibility:0};if(oe)return{accessibility:1,errorSymbolName:kl(v,m,D),errorModuleName:oe!==v?kl(oe,m,1920):void 0}}function cW(u,m,v,D){return mq(u,m,v,D,!0)}function mq(u,m,v,D,P){if(u&&m){let Y=c2e([u],m,u,v,D,P);if(Y)return Y;let oe=F(u.declarations,lK);if(oe){let Be=lK(m);if(oe!==Be)return{accessibility:2,errorSymbolName:kl(u,m,v),errorModuleName:kl(oe),errorNode:wo(m)?m:void 0}}return{accessibility:1,errorSymbolName:kl(u,m,v)}}return{accessibility:0}}function lK(u){let m=ji(u,uWe);return m&&Uo(m)}function uWe(u){return s_(u)||u.kind===308&&vl(u)}function GQ(u){return RY(u)||u.kind===308&&vl(u)}function uK(u,m){let v;if(!ue(Me(u.declarations,Y=>Y.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:v};function D(Y){var oe,Be;if(!Ak(Y)){let Oe=Sv(Y);if(Oe&&!Ga(Oe,32)&&Ak(Oe.parent))return P(Y,Oe);if(nc(Y)&&Ch(Y.parent.parent)&&!Ga(Y.parent.parent,32)&&Ak(Y.parent.parent.parent))return P(Y,Y.parent.parent);if(p7(Y)&&!Ga(Y,32)&&Ak(Y.parent))return P(Y,Y);if(hg(Y)){if(u.flags&2097152&&wo(Y)&&((oe=Y.parent)!=null&&oe.parent)&&nc(Y.parent.parent)&&((Be=Y.parent.parent.parent)!=null&&Be.parent)&&Ch(Y.parent.parent.parent.parent)&&!Ga(Y.parent.parent.parent.parent,32)&&Y.parent.parent.parent.parent.parent&&Ak(Y.parent.parent.parent.parent.parent))return P(Y,Y.parent.parent.parent.parent);if(u.flags&2){let He=ai(Y);if(He.kind===170)return!1;let qe=He.parent.parent;return qe.kind!==244?!1:Ga(qe,32)?!0:Ak(qe.parent)?P(Y,qe):!1}}return!1}return!0}function P(Y,oe){return m&&(sa(Y).isVisible=!0,v=ps(v,oe)),!0}}function vpe(u){let m;return u.parent.kind===187||u.parent.kind===234&&!ww(u.parent)||u.parent.kind===168||u.parent.kind===183&&u.parent.parameterName===u?m=1160127:u.kind===167||u.kind===212||u.parent.kind===272||u.parent.kind===167&&u.parent.left===u||u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u?m=1920:m=788968,m}function Cq(u,m,v=!0){let D=vpe(u),P=B0(u),Y=An(m,P.escapedText,D,void 0,!1);return Y&&Y.flags&262144&&D&788968?{accessibility:0}:!Y&&vF(P)&&cW(Uo(r0(P,!1,!1)),P,D,!1).accessibility===0?{accessibility:0}:Y?uK(Y,v)||{accessibility:1,errorSymbolName:xp(P),errorNode:P}:{accessibility:3,errorSymbolName:xp(P),errorNode:P}}function kl(u,m,v,D=4,P){let Y=70221824,oe=0;D&2&&(Y|=128),D&1&&(Y|=512),D&8&&(Y|=16384),D&32&&(oe|=4),D&16&&(oe|=1);let Be=D&4?Dt.symbolToNode:Dt.symbolToEntityName;return P?Oe(P).getText():dP(Oe);function Oe(He){let qe=Be(u,v,m,Y,oe),Vt=m?.kind===308?p3t():gQ(),kt=m&&ms(m);return Vt.writeNode(4,qe,kt,He),He}}function lW(u,m,v=0,D,P,Y,oe,Be){return P?Oe(P).getText():dP(Oe);function Oe(He){let qe;v&262144?qe=D===1?186:185:qe=D===1?181:180;let Vt=Dt.signatureToSignatureDeclaration(u,qe,m,FQ(v)|70221824|512,void 0,void 0,Y,oe,Be),kt=ett(),vr=m&&ms(m);return kt.writeNode(4,Vt,vr,Oye(He)),He}}function no(u,m,v=1064960,D=Bne(""),P,Y,oe){let Be=!P&&Te.noErrorTruncation||v&1,Oe=Dt.typeToTypeNode(u,m,FQ(v)|70221824|(Be?1:0),void 0,void 0,P,Y,oe);if(Oe===void 0)return pe.fail("should always get typenode");let He=u!==bn?gQ():d3t(),qe=m&&ms(m);He.writeNode(4,Oe,qe,D);let Vt=D.getText(),kt=P||(Be?Lre*2:EY*2);return kt&&Vt&&Vt.length>=kt?Vt.substr(0,kt-3)+"...":Vt}function Bpe(u,m){let v=Ese(u.symbol)?no(u,u.symbol.valueDeclaration):no(u),D=Ese(m.symbol)?no(m,m.symbol.valueDeclaration):no(m);return v===D&&(v=bse(u),D=bse(m)),[v,D]}function bse(u){return no(u,void 0,64)}function Ese(u){return u&&!!u.valueDeclaration&&un(u.valueDeclaration)&&!bS(u.valueDeclaration)}function FQ(u=0){return u&848330095}function l2e(u){return!!u.symbol&&!!(u.symbol.flags&32)&&(u===wv(u.symbol)||!!(u.flags&524288)&&!!(la(u)&16777216))}function gK(u){return nl(u)}function gWe(){return{syntacticBuilderResolver:{evaluateEntityNameExpression:E0n,isExpandoFunctionDeclaration:Y0n,hasLateBindableName:wse,shouldRemoveDeclaration($t,lt){return!($t.internalFlags&8&&Od(lt.name.expression)&&zw(lt.name).flags&1)},createRecoveryBoundary($t){return Kc($t)},isDefinitelyReferenceToGlobalSymbolObject:lk,getAllAccessorDeclarations:P8t,requiresAddingImplicitUndefined($t,lt,hi){var Di;switch($t.kind){case 173:case 172:case 349:lt??(lt=Uo($t));let Qt=Io(lt);return!!(lt.flags&4&<.flags&16777216&&RB($t)&&((Di=lt.links)!=null&&Di.mappedType)&&CMs(Qt));case 170:case 342:return DOe($t,hi);default:pe.assertNever($t)}},isOptionalParameter:m2e,isUndefinedIdentifierExpression($t){return xv($t)===dt},isEntityNameVisible($t,lt,hi){return Cq(lt,$t.enclosingDeclaration,hi)},serializeExistingTypeNode($t,lt,hi){return Qb($t,lt,!!hi)},serializeReturnTypeForSignature($t,lt,hi){let Di=$t,Qt=yS(lt);hi??(hi=Uo(lt));let Cr=Di.enclosingSymbolTypes.get(kg(hi))??_l(ud(Qt),Di.mapper);return nA(Di,Qt,Cr)},serializeTypeOfExpression($t,lt){let hi=$t,Di=_l(D1(Z0n(lt)),hi.mapper);return ii(Di,hi)},serializeTypeOfDeclaration($t,lt,hi){var Di;let Qt=$t;hi??(hi=Uo(lt));let Cr=(Di=Qt.enclosingSymbolTypes)==null?void 0:Di.get(kg(hi));return Cr===void 0&&(Cr=hi.flags&98304&<.kind===179?_l(b9(hi),Qt.mapper):hi&&!(hi.flags&133120)?_l(V5(Io(hi)),Qt.mapper):nn),lt&&(Si(lt)||cS(lt))&&DOe(lt,Qt.enclosingDeclaration)&&(Cr=mW(Cr)),Ao(hi,Qt,Cr)},serializeNameOfParameter($t,lt){return qc(Uo(lt),lt,$t)},serializeEntityName($t,lt){let hi=$t,Di=xv(lt,!0);if(Di&&hq(Di,hi.enclosingDeclaration))return Gv(Di,hi,1160127)},serializeTypeName($t,lt,hi,Di){return tC($t,lt,hi,Di)},getJsDocPropertyOverride($t,lt,hi){let Di=$t,Qt=Ir(hi.name)?hi.name:hi.name.right,Cr=Pi(m(Di,lt),Qt.escapedText);return Cr&&hi.typeExpression&&m(Di,hi.typeExpression.type)!==Cr?ii(Cr,Di):void 0},enterNewScope($t,lt){if(bu(lt)||qL(lt)){let hi=yS(lt);return Vu($t,lt,hi.parameters,hi.typeParameters)}else{let hi=d2(lt)?AUt(lt):[R5(Uo(lt.typeParameter))];return Vu($t,lt,void 0,hi)}},markNodeReuse($t,lt,hi){return v($t,lt,hi)},trackExistingEntityName($t,lt){return Sp(lt,$t)},trackComputedName($t,lt){_o(lt,$t.enclosingDeclaration,$t)},getModuleSpecifierOverride($t,lt,hi){let Di=$t;if(Di.bundled||Di.enclosingFile!==ms(hi)){let Qt=hi.text,Cr=Qt,jr=sa(lt).resolvedSymbol,Qn=lt.isTypeOf?111551:788968,yi=jr&&cW(jr,Di.enclosingDeclaration,Qn,!1).accessibility===0&&du(jr,Di,Qn,!0)[0];if(yi&&WD(yi))Qt=yh(yi,Di);else{let Xn=M8t(lt);Xn&&(Qt=yh(Xn.symbol,Di))}if(Qt.includes("/node_modules/")&&(Di.encounteredError=!0,Di.tracker.reportLikelyUnsafeImportRequiredError&&Di.tracker.reportLikelyUnsafeImportRequiredError(Qt)),Qt!==Cr)return Qt}},canReuseTypeNode($t,lt){return P0($t,lt)},canReuseTypeNodeAnnotation($t,lt,hi,Di,Qt){var Cr;let jr=$t;if(jr.enclosingDeclaration===void 0)return!1;Di??(Di=Uo(lt));let Qn=(Cr=jr.enclosingSymbolTypes)==null?void 0:Cr.get(kg(Di));Qn===void 0&&(Di.flags&98304?Qn=lt.kind===179?b9(Di):Dpe(Di):C3(lt)?Qn=ud(yS(lt)):Qn=Io(Di));let yi=gK(hi);return uo(yi)?!0:(Qt&&yi&&(yi=Z0(yi,!Si(lt))),!!yi&&tc(lt,Qn,yi)&&as(hi,Qn))}},typeToTypeNode:($t,lt,hi,Di,Qt,Cr,jr,Qn)=>He(lt,hi,Di,Qt,Cr,jr,yi=>ii($t,yi),Qn),typePredicateToTypePredicateNode:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>V0($t,Cr)),serializeTypeForDeclaration:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>tr.serializeTypeOfDeclaration($t,lt,jr)),serializeReturnTypeForSignature:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeReturnTypeForSignature($t,Uo($t),Cr)),serializeTypeForExpression:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeTypeOfExpression($t,Cr)),indexInfoToIndexSignatureDeclaration:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>yl($t,Cr,void 0)),signatureToSignatureDeclaration:($t,lt,hi,Di,Qt,Cr,jr,Qn,yi)=>He(hi,Di,Qt,Cr,jr,Qn,Xn=>ka($t,lt,Xn),yi),symbolToEntityName:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>ch($t,jr,lt,!1)),symbolToExpression:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>Gv($t,jr,lt)),symbolToTypeParameterDeclarations:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>uf($t,Cr)),symbolToParameterDeclaration:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>eo($t,Cr)),typeParameterToDeclaration:($t,lt,hi,Di,Qt,Cr,jr,Qn)=>He(lt,hi,Di,Qt,Cr,jr,yi=>UI($t,yi),Qn),symbolTableToDeclarationStatements:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>H5($t,Cr)),symbolToNode:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>D($t,jr,lt)),symbolToDeclarations:P};function m($t,lt,hi){let Di=gK(lt);if(!$t.mapper)return Di;let Qt=_l(Di,$t.mapper);return hi&&Qt!==Di?void 0:Qt}function v($t,lt,hi){if((!sp(lt)||!(lt.flags&16)||!$t.enclosingFile||$t.enclosingFile!==ms(Dd(lt)))&&(lt=me.cloneNode(lt)),lt===hi||!hi)return lt;let Di=lt.original;for(;Di&&Di!==hi;)Di=Di.original;return Di||ua(lt,hi),$t.enclosingFile&&$t.enclosingFile===ms(Dd(hi))?gn(lt,hi):lt}function D($t,lt,hi){if(lt.internalFlags&1){if($t.valueDeclaration){let Qt=Il($t.valueDeclaration);if(Qt&&Un(Qt))return Qt}let Di=fa($t).nameType;if(Di&&Di.flags&9216)return lt.enclosingDeclaration=Di.symbol.valueDeclaration,me.createComputedPropertyName(Gv(Di.symbol,lt,hi))}return Gv($t,lt,hi)}function P($t,lt,hi,Di,Qt,Cr){let jr=He(void 0,hi,void 0,void 0,Di,Qt,Qn=>Oe($t,Qn),Cr);return Xt(jr,Qn=>{switch(Qn.kind){case 264:return Y(Qn,$t);case 267:return oe(Qn,V3,$t);case 265:return Be(Qn,$t,lt);case 268:return oe(Qn,xh,$t);default:return}})}function Y($t,lt){let hi=Me(lt.declarations,xa),Di=hi&&hi.length>0?hi[0]:$t,Qt=o_(Di)&-161;return vd(Di)&&($t=me.updateClassDeclaration($t,$t.modifiers,void 0,$t.typeParameters,$t.heritageClauses,$t.members)),me.replaceModifiers($t,Qt)}function oe($t,lt,hi){let Di=Me(hi.declarations,lt),Qt=Di&&Di.length>0?Di[0]:$t,Cr=o_(Qt)&-161;return me.replaceModifiers($t,Cr)}function Be($t,lt,hi){if(hi&64)return oe($t,g_,lt)}function Oe($t,lt){let hi=Fp($t);lt.typeStack.push(hi.id),lt.typeStack.push(-1);let Di=qu([$t]),Qt=H5(Di,lt);return lt.typeStack.pop(),lt.typeStack.pop(),Qt}function He($t,lt,hi,Di,Qt,Cr,jr,Qn){let yi=Di?.trackSymbol?Di.moduleResolverHost:(hi||0)&4?Fvs(s):void 0;lt=lt||0;let Xn=Qt||(lt&1?Lre:EY),Ti={enclosingDeclaration:$t,enclosingFile:$t&&ms($t),flags:lt,internalFlags:hi||0,tracker:void 0,maxTruncationLength:Xn,maxExpansionDepth:Cr??-1,encounteredError:!1,suppressReportInferenceFallback:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Te.outFile&&!!$t&&vl(ms($t)),truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,enclosingSymbolTypes:new Map,mapper:void 0,depth:0,typeStack:[],out:{canIncreaseExpansionDepth:!1,truncated:!1}};Ti.tracker=new _Ot(Ti,Di,yi);let Us=jr(Ti);return Ti.truncating&&Ti.flags&1&&Ti.tracker.reportTruncationError(),Qn&&(Qn.canIncreaseExpansionDepth=Ti.out.canIncreaseExpansionDepth,Qn.truncated=Ti.out.truncated),Ti.encounteredError?void 0:Us}function qe($t,lt,hi){let Di=kg(lt),Qt=$t.enclosingSymbolTypes.get(Di);return $t.enclosingSymbolTypes.set(Di,hi),Cr;function Cr(){Qt?$t.enclosingSymbolTypes.set(Di,Qt):$t.enclosingSymbolTypes.delete(Di)}}function Vt($t){let lt=$t.flags,hi=$t.internalFlags,Di=$t.depth;return Qt;function Qt(){$t.flags=lt,$t.internalFlags=hi,$t.depth=Di}}function kt($t){return $t.maxExpansionDepth>=0&&vr($t)}function vr($t){return $t.truncating?$t.truncating:$t.truncating=$t.approximateLength>$t.maxTruncationLength}function dn($t,lt){for(let hi=0;hi0)return $t.flags&1048576?me.createUnionTypeNode(ta):me.createIntersectionTypeNode(ta);!lt.encounteredError&&!(lt.flags&262144)&&(lt.encounteredError=!0);return}if(jr&48)return pe.assert(!!($t.flags&524288)),No($t);if($t.flags&4194304){let Li=$t.type;lt.approximateLength+=6;let ta=ii(Li,lt);return me.createTypeOperatorNode(143,ta)}if($t.flags&134217728){let Li=$t.texts,ta=$t.types,mu=me.createTemplateHead(Li[0]),Jl=me.createNodeArray(At(ta,(EA,Ad)=>me.createTemplateLiteralTypeSpan(ii(EA,lt),(AdQn(Li));if($t.flags&33554432){let Li=ii($t.baseType,lt),ta=xse($t)&&JJt("NoInfer",!1);return ta?Fd(ta,lt,788968,[Li]):Li}return pe.fail("Should be unreachable.");function Qn(Li){let ta=ii(Li.checkType,lt);if(lt.approximateLength+=15,lt.flags&4&&Li.root.isDistributive&&!(Li.checkType.flags&262144)){let ou=Yy(gA(262144,"T")),mm=Qf(ou,lt),Cm=me.createTypeReferenceNode(mm);lt.approximateLength+=37;let W_=yK(Li.root.checkType,ou,Li.mapper),W0=lt.inferTypeParameters;lt.inferTypeParameters=Li.root.inferTypeParameters;let Uy=ii(_l(Li.root.extendsType,W_),lt);lt.inferTypeParameters=W0;let IZ=yi(_l(m(lt,Li.root.node.trueType),W_)),Q5=yi(_l(m(lt,Li.root.node.falseType),W_));return me.createConditionalTypeNode(ta,me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Cm.typeName))),me.createConditionalTypeNode(me.createTypeReferenceNode(me.cloneNode(mm)),ii(Li.checkType,lt),me.createConditionalTypeNode(Cm,Uy,IZ,Q5),me.createKeywordTypeNode(146)),me.createKeywordTypeNode(146))}let mu=lt.inferTypeParameters;lt.inferTypeParameters=Li.root.inferTypeParameters;let Jl=ii(Li.extendsType,lt);lt.inferTypeParameters=mu;let EA=yi(fW(Li)),Ad=yi(IW(Li));return me.createConditionalTypeNode(ta,Jl,EA,Ad)}function yi(Li){var ta,mu,Jl;return Li.flags&1048576?(ta=lt.visitedTypes)!=null&&ta.has(QC(Li))?(lt.flags&131072||(lt.encounteredError=!0,(Jl=(mu=lt.tracker)==null?void 0:mu.reportCyclicStructureError)==null||Jl.call(mu)),js(lt)):zo(Li,EA=>ii(EA,lt)):ii(Li,lt)}function Xn(Li){return!!B2e(Li)}function Ti(Li){return!!Li.target&&Xn(Li.target)&&!Xn(Li)}function Us(Li){var ta;pe.assert(!!(Li.flags&524288));let mu=Li.declaration.readonlyToken?me.createToken(Li.declaration.readonlyToken.kind):void 0,Jl=Li.declaration.questionToken?me.createToken(Li.declaration.questionToken.kind):void 0,EA,Ad,ou=qx(Li),mm=jw(Li),Cm=!Rse(Li)&&!(N5(Li).flags&2)&<.flags&4&&!(_S(Li).flags&262144&&((ta=Xy(_S(Li)))==null?void 0:ta.flags)&4194304);if(Rse(Li)){if(Ti(Li)&<.flags&4){let EW=Yy(gA(262144,"T")),Oq=Qf(EW,lt),afe=Li.target;Ad=me.createTypeReferenceNode(Oq),ou=_l(qx(afe),dhn([jw(afe),N5(afe)],[mm,EW]))}EA=me.createTypeOperatorNode(143,Ad||ii(N5(Li),lt))}else if(Cm){let EW=Yy(gA(262144,"T")),Oq=Qf(EW,lt);Ad=me.createTypeReferenceNode(Oq),EA=Ad}else EA=ii(_S(Li),lt);let W_=Ll(mm,lt,EA),W0=Vu(lt,Li.declaration,void 0,[R5(Uo(Li.declaration.typeParameter))]),Uy=Li.declaration.nameType?ii(E9(Li),lt):void 0,IZ=ii(AZ(ou,!!(fk(Li)&4)),lt);W0();let Q5=me.createMappedTypeNode(mu,W_,Uy,Jl,IZ,void 0);lt.approximateLength+=10;let zQ=ti(Q5,1);if(Ti(Li)&<.flags&4){let EW=_l(Xy(m(lt,Li.declaration.typeParameter.constraint.type))||cn,Li.mapper);return me.createConditionalTypeNode(ii(N5(Li),lt),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Ad.typeName),EW.flags&2?void 0:ii(EW,lt))),zQ,me.createKeywordTypeNode(146))}else if(Cm)return me.createConditionalTypeNode(ii(_S(Li),lt),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Ad.typeName),me.createTypeOperatorNode(143,ii(N5(Li),lt)))),zQ,me.createKeywordTypeNode(146));return zQ}function No(Li,ta=!1,mu=!1){var Jl,EA;let Ad=Li.id,ou=Li.symbol;if(ou){if(!!(la(Li)&8388608)){let Uy=Li.node;if(Fw(Uy)&&m(lt,Uy)===Li){let IZ=tr.tryReuseExistingTypeNode(lt,Uy);if(IZ)return IZ}return(Jl=lt.visitedTypes)!=null&&Jl.has(Ad)?js(lt):zo(Li,za)}let W_=l2e(Li)?788968:111551;if(YN(ou.valueDeclaration))return Fd(ou,lt,W_);if(!mu&&(ou.flags&32&&!ta&&!d2e(ou)&&!(ou.valueDeclaration&&xa(ou.valueDeclaration)&<.flags&2048&&(!pm(ou.valueDeclaration)||cW(ou,lt.enclosingDeclaration,W_,!1).accessibility!==0))||ou.flags&896||mm()))if(vn(Li,lt))lt.depth+=1;else return Fd(ou,lt,W_);if((EA=lt.visitedTypes)!=null&&EA.has(Ad)){let W0=AWe(Li);return W0?Fd(W0,lt,788968):js(lt)}else return zo(Li,za)}else return za(Li);function mm(){var Cm;let W_=!!(ou.flags&8192)&&jt(ou.declarations,Uy=>cg(Uy)&&!Nfn(Il(Uy))),W0=!!(ou.flags&16)&&(ou.parent||F(ou.declarations,Uy=>Uy.parent.kind===308||Uy.parent.kind===269));if(W_||W0)return(!!(lt.flags&4096)||((Cm=lt.visitedTypes)==null?void 0:Cm.has(Ad)))&&(!(lt.flags&8)||hq(ou,lt.enclosingDeclaration))}}function zo(Li,ta){var mu,Jl,EA;let Ad=Li.id,ou=la(Li)&16&&Li.symbol&&Li.symbol.flags&32,mm=la(Li)&4&&Li.node?"N"+rd(Li.node):Li.flags&16777216?"N"+rd(Li.root.node):Li.symbol?(ou?"+":"")+kg(Li.symbol):void 0;lt.visitedTypes||(lt.visitedTypes=new Set),mm&&!lt.symbolDepth&&(lt.symbolDepth=new Map);let Cm=lt.maxExpansionDepth>=0?void 0:lt.enclosingDeclaration&&sa(lt.enclosingDeclaration),W_=`${QC(Li)}|${lt.flags}|${lt.internalFlags}`;Cm&&(Cm.serializedTypes||(Cm.serializedTypes=new Map));let W0=(mu=Cm?.serializedTypes)==null?void 0:mu.get(W_);if(W0)return(Jl=W0.trackedSymbols)==null||Jl.forEach(([_k,Jse,GOe])=>lt.tracker.trackSymbol(_k,Jse,GOe)),W0.truncating&&(lt.truncating=!0),lt.approximateLength+=W0.addedLength,Oq(W0.node);let Uy;if(mm){if(Uy=lt.symbolDepth.get(mm)||0,Uy>10)return js(lt);lt.symbolDepth.set(mm,Uy+1)}lt.visitedTypes.add(Ad);let IZ=lt.trackedSymbols;lt.trackedSymbols=void 0;let Q5=lt.approximateLength,zQ=ta(Li),EW=lt.approximateLength-Q5;return!lt.reportedDiagnostic&&!lt.encounteredError&&((EA=Cm?.serializedTypes)==null||EA.set(W_,{node:zQ,truncating:lt.truncating,addedLength:EW,trackedSymbols:lt.trackedSymbols})),lt.visitedTypes.delete(Ad),mm&<.symbolDepth.set(mm,Uy),lt.trackedSymbols=IZ,zQ;function Oq(_k){return!sp(_k)&&$l(_k)===_k?_k:v(lt,me.cloneNode(_s(_k,Oq,void 0,afe,Oq)),_k)}function afe(_k,Jse,GOe,U8t,K8t){return _k&&_k.length===0?gn(me.createNodeArray(void 0,_k.hasTrailingComma),_k):Ws(_k,Jse,GOe,U8t,K8t)}}function za(Li){if(Yb(Li)||Li.containsError)return Us(Li);let ta=pR(Li);if(!ta.properties.length&&!ta.indexInfos.length){if(!ta.callSignatures.length&&!ta.constructSignatures.length)return lt.approximateLength+=2,ti(me.createTypeLiteralNode(void 0),1);if(ta.callSignatures.length===1&&!ta.constructSignatures.length){let ou=ta.callSignatures[0];return ka(ou,185,lt)}if(ta.constructSignatures.length===1&&!ta.callSignatures.length){let ou=ta.constructSignatures[0];return ka(ou,186,lt)}}let mu=Me(ta.constructSignatures,ou=>!!(ou.flags&4));if(jt(mu)){let ou=At(mu,fK);return ta.callSignatures.length+(ta.constructSignatures.length-mu.length)+ta.indexInfos.length+(lt.flags&2048?ct(ta.properties,Cm=>!(Cm.flags&4194304)):B(ta.properties))&&ou.push(cK(ta)),ii(Kg(ou),lt)}let Jl=Vt(lt);lt.flags|=4194304;let EA=DA(ta);Jl();let Ad=me.createTypeLiteralNode(EA);return lt.approximateLength+=2,ti(Ad,lt.flags&1024?0:1),Ad}function La(Li){let ta=lf(Li);if(Li.target===NA||Li.target===uA){if(lt.flags&2){let EA=ii(ta[0],lt);return me.createTypeReferenceNode(Li.target===NA?"Array":"ReadonlyArray",[EA])}let mu=ii(ta[0],lt),Jl=me.createArrayTypeNode(mu);return Li.target===NA?Jl:me.createTypeOperatorNode(148,Jl)}else if(Li.target.objectFlags&8){if(ta=Tr(ta,(mu,Jl)=>AZ(mu,!!(Li.target.elementFlags[Jl]&2))),ta.length>0){let mu=B9(Li),Jl=To(ta.slice(0,mu),lt);if(Jl){let{labeledElementDeclarations:EA}=Li.target;for(let ou=0;ou0){let Cm=0;if(Li.target.typeParameters&&(Cm=Math.min(Li.target.typeParameters.length,ta.length),(w1(Li,sot(!1))||w1(Li,RIn(!1))||w1(Li,SWe(!1))||w1(Li,TIn(!1)))&&(!Li.node||!nh(Li.node)||!Li.node.typeArguments||Li.node.typeArguments.length0;){let W_=ta[Cm-1],W0=Li.target.typeParameters[Cm-1],Uy=VQ(W0);if(!Uy||!rG(W_,Uy))break;Cm--}Ad=To(ta.slice(Jl,Cm),lt)}let ou=Vt(lt);lt.flags|=16;let mm=Fd(Li.symbol,lt,788968,Ad);return ou(),EA?to(EA,mm):mm}}}function to(Li,ta){if(Um(Li)){let mu=Li.typeArguments,Jl=Li.qualifier;Jl&&(Ir(Jl)?mu!==G3(Jl)&&(Jl=xx(me.cloneNode(Jl),mu)):mu!==G3(Jl.right)&&(Jl=me.updateQualifiedName(Jl,Jl.left,xx(me.cloneNode(Jl.right),mu)))),mu=ta.typeArguments;let EA=_c(ta);for(let Ad of EA)Jl=Jl?me.createQualifiedName(Jl,Ad):Ad;return me.updateImportTypeNode(Li,Li.argument,Li.attributes,Jl,mu,Li.isTypeOf)}else{let mu=Li.typeArguments,Jl=Li.typeName;Ir(Jl)?mu!==G3(Jl)&&(Jl=xx(me.cloneNode(Jl),mu)):mu!==G3(Jl.right)&&(Jl=me.updateQualifiedName(Jl,Jl.left,xx(me.cloneNode(Jl.right),mu))),mu=ta.typeArguments;let EA=_c(ta);for(let Ad of EA)Jl=me.createQualifiedName(Jl,Ad);return me.updateTypeReferenceNode(Li,Jl,mu)}}function _c(Li){let ta=Li.typeName,mu=[];for(;!Ir(ta);)mu.unshift(ta.right),ta=ta.left;return mu.unshift(ta),mu}function nu(Li,ta,mu){if(Li.components&&ue(Li.components,EA=>{var Ad;return!!(EA.name&&Un(EA.name)&&Od(EA.name.expression)&&ta.enclosingDeclaration&&((Ad=Cq(EA.name.expression,ta.enclosingDeclaration,!1))==null?void 0:Ad.accessibility)===0)})){let EA=Me(Li.components,Ad=>!wse(Ad));return At(EA,Ad=>(_o(Ad.name.expression,ta.enclosingDeclaration,ta),v(ta,me.createPropertySignature(Li.isReadonly?[me.createModifier(148)]:void 0,Ad.name,(ss(Ad)||pi(Ad)||hl(Ad)||uu(Ad)||bB(Ad)||cv(Ad))&&Ad.questionToken?me.createToken(58):void 0,mu||ii(Io(Ad.symbol),ta)),Ad)))}return[yl(Li,ta,mu)]}function DA(Li){if(vr(lt))return lt.out.truncated=!0,lt.flags&1?[Iz(me.createNotEmittedTypeElement(),3,"elided")]:[me.createPropertySignature(void 0,"...",void 0,void 0)];lt.typeStack.push(-1);let ta=[];for(let EA of Li.callSignatures)ta.push(ka(EA,180,lt));for(let EA of Li.constructSignatures)EA.flags&4||ta.push(ka(EA,181,lt));for(let EA of Li.indexInfos)ta.push(...nu(EA,lt,Li.objectFlags&1024?js(lt):void 0));let mu=Li.properties;if(!mu)return lt.typeStack.pop(),ta;let Jl=0;for(let EA of mu)if(!(Y5(lt)&&EA.flags&4194304)){if(Jl++,lt.flags&2048){if(EA.flags&4194304)continue;u2(EA)&6&<.tracker.reportPrivateInBaseOfClassExpression&<.tracker.reportPrivateInBaseOfClassExpression(Bc(EA.escapedName))}if(vr(lt)&&Jl+2!(za.flags&32768)),0);for(let za of zo){let La=ka(za,174,lt,{name:Qn,questionToken:yi});hi.push(No(La,za.declaration||$t.valueDeclaration))}if(zo.length||!yi)return}let Xn;Co($t,lt)?Xn=js(lt):(Qt&&(lt.reverseMappedStack||(lt.reverseMappedStack=[]),lt.reverseMappedStack.push($t)),Xn=Cr?ea(lt,void 0,Cr,$t):me.createKeywordTypeNode(133),Qt&<.reverseMappedStack.pop());let Ti=yR($t)?[me.createToken(148)]:void 0;Ti&&(lt.approximateLength+=9);let Us=me.createPropertySignature(Ti,Qn,yi,Xn);hi.push(No(Us,$t.valueDeclaration));function No(zo,za){var La;let to=(La=$t.declarations)==null?void 0:La.find(_c=>_c.kind===349);if(to){let _c=pJ(to.comment);_c&&kB(zo,[{kind:3,text:`* +`||vs[0]==="\r");)vs.shift()}function _q(vs){for(;vs.length;){let da=vs[vs.length-1].trimEnd();if(da==="")vs.pop();else if(da.lengthI_&&(Fc.push(zx.slice(I_-vs)),Ep=2),vs+=zx.length;break;case 19:Ep=2;let nZ=c.getTokenFullStart(),wse=c.getTokenEnd()-1,Gpe=yt(wse);Gpe?(Qc.push(oi(V.createJSDocText(Fc.join("")),Ug??Sa,nZ)),Qc.push(Gpe),Fc=[],Ug=c.getTokenEnd()):dR(c.getTokenText());break;case 62:Ep===3?Ep=2:Ep=3,dR(c.getTokenText());break;case 82:Ep!==3&&(Ep=2),dR(c.getTokenValue());break;case 42:if(Ep===0){Ep=1,vs+=1;break}default:Ep!==3&&(Ep=2),dR(c.getTokenText());break}Ep===2||Ep===3?XB=ri(Ep===3):XB=$r()}Z0(Fc);let Uw=Fc.join("").trimEnd();if(Qc.length)return Uw.length&&Qc.push(oi(V.createJSDocText(Uw),Ug??Sa)),TA(Qc,Sa,c.getTokenEnd());if(Uw.length)return Uw}function yt(vs){let da=Ui(Ii);if(!da)return;$r(),dk();let Sa=Rr(),Fc=[];for(;Je()!==20&&Je()!==4&&Je()!==1;)Fc.push(c.getTokenText()),$r();let Qc=da==="link"?V.createJSDocLink:da==="linkcode"?V.createJSDocLinkCode:V.createJSDocLinkPlain;return oi(Qc(Sa,Fc.join("")),vs,c.getTokenEnd())}function Rr(){if(Id(Je())){let vs=xe(),da=QI();for(;Dl(25);)da=oi(V.createQualifiedName(da,Je()===81?$d(80,!1):QI()),vs);for(;Je()===81;)wn(),$r(),da=oi(V.createJSDocMemberName(da,_f()),vs);return da}}function Ii(){if(vo(),Je()===19&&$r()===60&&Id($r())){let vs=c.getTokenValue();if(Jo(vs))return vs}}function Jo(vs){return vs==="link"||vs==="linkcode"||vs==="linkplain"}function Au(vs,da,Sa,Fc){return oi(V.createJSDocUnknownTag(da,Ce(vs,xe(),Sa,Fc)),vs)}function cf(vs){vs&&(zA?zA.push(vs):(zA=[vs],Bv=vs.pos),CS=vs.end)}function _2(){return vo(),Je()===19?xr():void 0}function gW(){let vs=AR(23);vs&&dk();let da=AR(62),Sa=Yst();return da&&Xg(62),vs&&(dk(),yu(64)&&Ay(),bi(24)),{name:Sa,isBracketed:vs}}function gR(vs){switch(vs.kind){case 151:return!0;case 189:return gR(vs.elementType);default:return nh(vs)&&Ir(vs.typeName)&&vs.typeName.escapedText==="Object"&&!vs.typeArguments}}function yq(vs,da,Sa,Fc){let Qc=_2(),Ug=!Qc;vo();let{name:Ep,isBracketed:I_}=gW(),dR=vo();Ug&&!Vn(Ii)&&(Qc=_2());let XB=Ce(vs,xe(),Fc,dR),Uw=IJt(Qc,Ep,Sa,Fc);Uw&&(Qc=Uw,Ug=!0);let zx=Sa===1?V.createJSDocPropertyTag(da,Ep,I_,Qc,Ug,XB):V.createJSDocParameterTag(da,Ep,I_,Qc,Ug,XB);return oi(zx,vs)}function IJt(vs,da,Sa,Fc){if(vs&&gR(vs.type)){let Qc=xe(),Ug,Ep;for(;Ug=Ui(()=>AK(Sa,Fc,da));)Ug.kind===342||Ug.kind===349?Ep=Ft(Ep,Ug):Ug.kind===346&&cn(Ug.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Ep){let I_=oi(V.createJSDocTypeLiteral(Ep,vs.type.kind===189),Qc);return oi(V.createJSDocTypeExpression(I_),Qc)}}}function Npe(vs,da,Sa,Fc){jt(zA,r9e)&&Mt(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=_2();return oi(V.createJSDocReturnTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function bq(vs,da,Sa,Fc){jt(zA,gde)&&Mt(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=xr(!0),Ug=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocTypeTag(da,Qc,Ug),vs)}function hJt(vs,da,Sa,Fc){let Ug=Je()===23||Vn(()=>$r()===60&&Id($r())&&Jo(c.getTokenValue()))?void 0:Tn(),Ep=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSeeTag(da,Ug,Ep),vs)}function mJt(vs,da,Sa,Fc){let Qc=_2(),Ug=Ce(vs,xe(),Sa,Fc);return oi(V.createJSDocThrowsTag(da,Qc,Ug),vs)}function d2e(vs,da,Sa,Fc){let Qc=xe(),Ug=Vst(),Ep=c.getTokenFullStart(),I_=Ce(vs,Ep,Sa,Fc);I_||(Ep=c.getTokenFullStart());let dR=typeof I_!="string"?TA(Nn([oi(Ug,Qc,Ep)],I_),Qc):Ug.text+I_;return oi(V.createJSDocAuthorTag(da,dR),vs)}function Vst(){let vs=[],da=!1,Sa=c.getToken();for(;Sa!==1&&Sa!==4;){if(Sa===30)da=!0;else{if(Sa===60&&!da)break;if(Sa===32&&da){vs.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}vs.push(c.getTokenText()),Sa=$r()}return V.createJSDocText(vs.join(""))}function AW(vs,da,Sa,Fc){let Qc=ZQ();return oi(V.createJSDocImplementsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function CJt(vs,da,Sa,Fc){let Qc=ZQ();return oi(V.createJSDocAugmentsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function _Jt(vs,da,Sa,Fc){let Qc=xr(!1),Ug=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSatisfiesTag(da,Qc,Ug),vs)}function yJt(vs,da,Sa,Fc){let Qc=c.getTokenFullStart(),Ug;fs()&&(Ug=_f());let Ep=Bpe(Ug,Qc,156,!0),I_=gK(),dR=Cq(),XB=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocImportTag(da,Ep,I_,dR,XB),vs)}function ZQ(){let vs=Dl(19),da=xe(),Sa=Dpe();c.setSkipJsDocLeadingAsterisks(!0);let Fc=Hf();c.setSkipJsDocLeadingAsterisks(!1);let Qc=V.createExpressionWithTypeArguments(Sa,Fc),Ug=oi(Qc,da);return vs&&(dk(),bi(20)),Ug}function Dpe(){let vs=xe(),da=w1();for(;Dl(25);){let Sa=w1();da=oi(Ze(da,Sa),vs)}return da}function Eq(vs,da,Sa,Fc,Qc){return oi(da(Sa,Ce(vs,xe(),Fc,Qc)),vs)}function Pst(vs,da,Sa,Fc){let Qc=xr(!0);return dk(),oi(V.createJSDocThisTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function kpe(vs,da,Sa,Fc){let Qc=xr(!0);return dk(),oi(V.createJSDocEnumTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Wst(vs,da,Sa,Fc){let Qc=_2();vo();let Ug=p2e();dk();let Ep=Pe(Sa),I_;if(!Qc||gR(Qc.type)){let XB,Uw,zx,nZ=!1;for(;(XB=Ui(()=>SJt(Sa)))&&XB.kind!==346;)if(nZ=!0,XB.kind===345)if(Uw){let wse=En(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);wse&&lg(wse,QY(nt,tr,0,0,Z.The_tag_was_first_specified_here));break}else Uw=XB;else zx=Ft(zx,XB);if(nZ){let wse=Qc&&Qc.type.kind===189,Gpe=V.createJSDocTypeLiteral(zx,wse);Qc=Uw&&Uw.typeExpression&&!gR(Uw.typeExpression.type)?Uw.typeExpression:oi(Gpe,vs),I_=Qc.end}}I_=I_||Ep!==void 0?xe():(Ug??Qc??da).end,Ep||(Ep=Ce(vs,I_,Sa,Fc));let dR=V.createJSDocTypedefTag(da,Qc,Ug,Ep);return oi(dR,vs,I_)}function p2e(vs){let da=c.getTokenStart();if(!Id(Je()))return;let Sa=w1();if(Dl(25)){let Fc=p2e(!0),Qc=V.createModuleDeclaration(void 0,Sa,Fc,vs?8:void 0);return oi(Qc,da)}return vs&&(Sa.flags|=4096),Sa}function xpe(vs){let da=xe(),Sa,Fc;for(;Sa=Ui(()=>AK(4,vs));){if(Sa.kind===346){cn(Sa.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Fc=Ft(Fc,Sa)}return TA(Fc||[],da)}function Ost(vs,da){let Sa=xpe(da),Fc=Ui(()=>{if(AR(60)){let Qc=q(da);if(Qc&&Qc.kind===343)return Qc}});return oi(V.createJSDocSignature(void 0,Sa,Fc),vs)}function Mst(vs,da,Sa,Fc){let Qc=p2e();dk();let Ug=Pe(Sa),Ep=Ost(vs,Sa);Ug||(Ug=Ce(vs,xe(),Sa,Fc));let I_=Ug!==void 0?xe():Ep.end;return oi(V.createJSDocCallbackTag(da,Ep,Qc,Ug),vs,I_)}function bJt(vs,da,Sa,Fc){dk();let Qc=Pe(Sa),Ug=Ost(vs,Sa);Qc||(Qc=Ce(vs,xe(),Sa,Fc));let Ep=Qc!==void 0?xe():Ug.end;return oi(V.createJSDocOverloadTag(da,Ug,Qc),vs,Ep)}function EJt(vs,da){for(;!Ir(vs)||!Ir(da);)if(!Ir(vs)&&!Ir(da)&&vs.right.escapedText===da.right.escapedText)vs=vs.left,da=da.left;else return!1;return vs.escapedText===da.escapedText}function SJt(vs){return AK(1,vs)}function AK(vs,da,Sa){let Fc=!0,Qc=!1;for(;;)switch($r()){case 60:if(Fc){let Ug=Hst(vs,da);return Ug&&(Ug.kind===342||Ug.kind===349)&&Sa&&(Ir(Ug.name)||!EJt(Sa,Ug.name.left))?!1:Ug}Qc=!1;break;case 4:Fc=!0,Qc=!1;break;case 42:Qc&&(Fc=!1),Qc=!0;break;case 80:Fc=!1;break;case 1:return!1}}function Hst(vs,da){pe.assert(Je()===60);let Sa=c.getTokenFullStart();$r();let Fc=w1(),Qc=vo(),Ug;switch(Fc.escapedText){case"type":return vs===1&&bq(Sa,Fc);case"prop":case"property":Ug=1;break;case"arg":case"argument":case"param":Ug=6;break;case"template":return Io(Sa,Fc,da,Qc);case"this":return Pst(Sa,Fc,da,Qc);default:return!1}return vs&Ug?yq(Sa,Fc,vs,da):!1}function vJt(){let vs=xe(),da=AR(23);da&&dk();let Sa=Oc(!1,!0),Fc=w1(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Qc;if(da&&(dk(),bi(64),Qc=Tg(16777216,aR),bi(24)),!sf(Fc))return oi(V.createTypeParameterDeclaration(Sa,Fc,void 0,Qc),vs)}function b9(){let vs=xe(),da=[];do{dk();let Sa=vJt();Sa!==void 0&&da.push(Sa),vo()}while(AR(28));return TA(da,vs)}function Io(vs,da,Sa,Fc){let Qc=Je()===19?xr():void 0,Ug=b9();return oi(V.createJSDocTemplateTag(da,Qc,Ug,Ce(vs,xe(),Sa,Fc)),vs)}function AR(vs){return Je()===vs?($r(),!0):!1}function Yst(){let vs=w1();for(Dl(23)&&bi(24);Dl(25);){let da=w1();Dl(23)&&bi(24),vs=gi(vs,da)}return vs}function w1(vs){if(!Id(Je()))return $d(80,!vs,vs||Z.Identifier_expected);mn++;let da=c.getTokenStart(),Sa=c.getTokenEnd(),Fc=Je(),Qc=YI(c.getTokenValue()),Ug=oi(Ie(Qc,Fc),da,Sa);return $r(),Ug}}})(VN=s.JSDocParser||(s.JSDocParser={}))})(Y3||(Y3={}));var V$r=new WeakSet;function pSs(s){V$r.has(s)&&pe.fail("Source file has already been incrementally parsed"),V$r.add(s)}var P$r=new WeakSet;function fSs(s){return P$r.has(s)}function CWt(s){P$r.add(s)}var P$e;(s=>{function c(re,ge,Ie,_e){if(_e=_e||pe.shouldAssert(2),V(re,ge,Ie,_e),sy(Ie))return re;if(re.statements.length===0)return Y3.parseSourceFile(re.fileName,ge,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);pSs(re),Y3.fixupParentReferences(re);let Ee=re.text,Ne=M(re),Te=T(re,Ie);V(re,ge,Te,_e),pe.assert(Te.span.start<=Ie.span.start),pe.assert(Rs(Te.span)===Rs(Ie.span)),pe.assert(Rs(qR(Te))===Rs(qR(Ie)));let Ze=qR(Te).length-Te.span.length;R(re,Te.span.start,Rs(Te.span),Rs(qR(Te)),Ze,Ee,ge,_e);let We=Y3.parseSourceFile(re.fileName,ge,re.languageVersion,Ne,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return We.commentDirectives=g(re.commentDirectives,We.commentDirectives,Te.span.start,Rs(Te.span),Ze,Ee,ge,_e),We.impliedNodeFormat=re.impliedNodeFormat,KPt(re,We),We}s.updateSourceFile=c;function g(re,ge,Ie,_e,Ee,Ne,Te,Ze){if(!re)return ge;let We,Ue=!1;for(let Ye of re){let{range:Tt,type:ot}=Ye;if(Tt.end_e){$e();let Qe={range:{pos:Tt.pos+Ee,end:Tt.end+Ee},type:ot};We=Ft(We,Qe),Ze&&pe.assert(Ne.substring(Tt.pos,Tt.end)===Te.substring(Qe.range.pos,Qe.range.end))}}return $e(),We;function $e(){Ue||(Ue=!0,We?ge&&We.push(...ge):We=ge)}}function d(re,ge,Ie,_e,Ee,Ne,Te){Ie?We(re):Ze(re);return;function Ze(Ue){let $e="";if(Te&&h(Ue)&&($e=Ee.substring(Ue.pos,Ue.end)),S$e(Ue,ge),TB(Ue,Ue.pos+_e,Ue.end+_e),Te&&h(Ue)&&pe.assert($e===Ne.substring(Ue.pos,Ue.end)),Lu(Ue,Ze,We),Xm(Ue))for(let Ye of Ue.jsDoc)Ze(Ye);S(Ue,Te)}function We(Ue){TB(Ue,Ue.pos+_e,Ue.end+_e);for(let $e of Ue)Ze($e)}}function h(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function _(re,ge,Ie,_e,Ee){pe.assert(re.end>=ge,"Adjusting an element that was entirely before the change range"),pe.assert(re.pos<=Ie,"Adjusting an element that was entirely after the change range"),pe.assert(re.pos<=re.end);let Ne=Math.min(re.pos,_e),Te=re.end>=Ie?re.end+Ee:Math.min(re.end,_e);if(pe.assert(Ne<=Te),re.parent){let Ze=re.parent;pe.assertGreaterThanOrEqual(Ne,Ze.pos),pe.assertLessThanOrEqual(Te,Ze.end)}TB(re,Ne,Te)}function S(re,ge){if(ge){let Ie=re.pos,_e=Ee=>{pe.assert(Ee.pos>=Ie),Ie=Ee.end};if(Xm(re))for(let Ee of re.jsDoc)_e(Ee);Lu(re,_e),pe.assert(Ie<=re.end)}}function R(re,ge,Ie,_e,Ee,Ne,Te,Ze){We(re);return;function We($e){if(pe.assert($e.pos<=$e.end),$e.pos>Ie){d($e,re,!1,Ee,Ne,Te,Ze);return}let Ye=$e.end;if(Ye>=ge){if(CWt($e),S$e($e,re),_($e,ge,Ie,_e,Ee),Lu($e,We,Ue),Xm($e))for(let Tt of $e.jsDoc)We(Tt);S($e,Ze);return}pe.assert(YeIe){d($e,re,!0,Ee,Ne,Te,Ze);return}let Ye=$e.end;if(Ye>=ge){CWt($e),_($e,ge,Ie,_e,Ee);for(let Tt of $e)We(Tt);return}pe.assert(Ye0&&Te<=1;Te++){let Ze=W(re,_e);pe.assert(Ze.pos<=_e);let We=Ze.pos;_e=Math.max(0,We-1)}let Ee=wA(_e,Rs(ge.span)),Ne=ge.newLength+(ge.span.start-_e);return $2(Ee,Ne)}function W(re,ge){let Ie=re,_e;if(Lu(re,Ne),_e){let Te=Ee(_e);Te.pos>Ie.pos&&(Ie=Te)}return Ie;function Ee(Te){for(;;){let Ze=gbe(Te);if(Ze)Te=Ze;else return Te}}function Ne(Te){if(!sf(Te))if(Te.pos<=ge){if(Te.pos>=Ie.pos&&(Ie=Te),gege),!0}}function V(re,ge,Ie,_e){let Ee=re.text;if(Ie&&(pe.assert(Ee.length-Ie.span.length+Ie.newLength===ge.length),_e||pe.shouldAssert(3))){let Ne=Ee.substr(0,Ie.span.start),Te=ge.substr(0,Ie.span.start);pe.assert(Ne===Te);let Ze=Ee.substring(Rs(Ie.span),Ee.length),We=ge.substring(Rs(qR(Ie)),ge.length);pe.assert(Ze===We)}}function M(re){let ge=re.statements,Ie=0;pe.assert(Ie=Ue.pos&&Te=Ue.pos&&Te{re[re.Value=-1]="Value"})(ee||(ee={}))})(P$e||(P$e={}));function PC(s){return d9e(s)!==void 0}function d9e(s){let c=gE(s,VAe,!1);if(c)return c;if(aA(s,".ts")){let g=gp(s),d=g.lastIndexOf(".d.");if(d>=0)return g.substring(d)}}function ISs(s,c,g,d){if(s){if(s==="import")return 99;if(s==="require")return 1;d(c,g-c,Z.resolution_mode_should_be_either_require_or_import)}}function W$e(s,c){let g=[];for(let d of fE(c,0)||E){let h=c.substring(d.pos,d.end);_Ss(g,d,h)}s.pragmas=new Map;for(let d of g){if(s.pragmas.has(d.name)){let h=s.pragmas.get(d.name);h instanceof Array?h.push(d.args):s.pragmas.set(d.name,[h,d.args]);continue}s.pragmas.set(d.name,d.args)}}function O$e(s,c){s.checkJsDirective=void 0,s.referencedFiles=[],s.typeReferenceDirectives=[],s.libReferenceDirectives=[],s.amdDependencies=[],s.hasNoDefaultLib=!1,s.pragmas.forEach((g,d)=>{switch(d){case"reference":{let h=s.referencedFiles,_=s.typeReferenceDirectives,S=s.libReferenceDirectives;F(cc(g),R=>{let{types:T,lib:W,path:V,["resolution-mode"]:M,preserve:ee}=R.arguments,re=ee==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")s.hasNoDefaultLib=!0;else if(T){let ge=ISs(M,T.pos,T.end,c);_.push({pos:T.pos,end:T.end,fileName:T.value,...ge?{resolutionMode:ge}:{},...re?{preserve:re}:{}})}else W?S.push({pos:W.pos,end:W.end,fileName:W.value,...re?{preserve:re}:{}}):V?h.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{s.amdDependencies=At(cc(g),h=>({name:h.arguments.name,path:h.arguments.path}));break}case"amd-module":{if(g instanceof Array)for(let h of g)s.moduleName&&c(h.range.pos,h.range.end-h.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),s.moduleName=h.arguments.name;else s.moduleName=g.arguments.name;break}case"ts-nocheck":case"ts-check":{F(cc(g),h=>{(!s.checkJsDirective||h.range.pos>s.checkJsDirective.pos)&&(s.checkJsDirective={enabled:d==="ts-check",end:h.range.end,pos:h.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:pe.fail("Unhandled pragma kind")}})}var _Wt=new Map;function hSs(s){if(_Wt.has(s))return _Wt.get(s);let c=new RegExp(`(\\s${s}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return _Wt.set(s,c),c}var mSs=/^\/\/\/\s*<(\S+)\s.*?\/>/m,CSs=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function _Ss(s,c,g){let d=c.kind===2&&mSs.exec(g);if(d){let _=d[1].toLowerCase(),S=e1[_];if(!S||!(S.kind&1))return;if(S.args){let R={};for(let T of S.args){let V=hSs(T.name).exec(g);if(!V&&!T.optional)return;if(V){let M=V[2]||V[3];if(T.captureSpan){let ee=c.pos+V.index+V[1].length+1;R[T.name]={value:M,pos:ee,end:ee+M.length}}else R[T.name]=M}}s.push({name:_,args:{arguments:R,range:c}})}else s.push({name:_,args:{arguments:{},range:c}});return}let h=c.kind===2&&CSs.exec(g);if(h)return W$r(s,c,2,h);if(c.kind===3){let _=/@(\S+)(\s+(?:\S.*)?)?$/gm,S;for(;S=_.exec(g);)W$r(s,c,4,S)}}function W$r(s,c,g,d){if(!d)return;let h=d[1].toLowerCase(),_=e1[h];if(!_||!(_.kind&g))return;let S=d[2],R=ySs(_,S);R!=="fail"&&s.push({name:h,args:{arguments:R,range:c}})}function ySs(s,c){if(!c)return{};if(!s.args)return{};let g=c.trim().split(/\s+/),d={};for(let h=0;h[""+c,s])),M$r=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["es2024","lib.es2024.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.arraybuffer","lib.es2017.arraybuffer.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["es2023.intl","lib.es2023.intl.d.ts"],["es2024.arraybuffer","lib.es2024.arraybuffer.d.ts"],["es2024.collection","lib.es2024.collection.d.ts"],["es2024.object","lib.es2024.object.d.ts"],["es2024.promise","lib.es2024.promise.d.ts"],["es2024.regexp","lib.es2024.regexp.d.ts"],["es2024.sharedmemory","lib.es2024.sharedmemory.d.ts"],["es2024.string","lib.es2024.string.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.es2024.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.es2024.object.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.regexp","lib.es2024.regexp.d.ts"],["esnext.string","lib.es2024.string.d.ts"],["esnext.iterator","lib.esnext.iterator.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.float16","lib.esnext.float16.d.ts"],["esnext.error","lib.esnext.error.d.ts"],["esnext.sharedmemory","lib.esnext.sharedmemory.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],p9e=M$r.map(s=>s[0]),M$e=new Map(M$r),wz=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:OWt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:OWt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],f9e=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],H$e={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,es2023:10,es2024:11,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},bWt={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,node18:101,node20:102,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},H$r=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},H$e,bWt,{name:"lib",type:"list",element:{name:"lib",type:M$e,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:O$r,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting,defaultValueDescription:!1},{name:"isolatedDeclarations",type:"boolean",category:Z.Interop_Constraints,description:Z.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"erasableSyntaxOnly",type:"boolean",category:Z.Interop_Constraints,description:Z.Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"libReplacement",type:"boolean",affectsProgramStructure:!0,category:Z.Language_and_Environment,description:Z.Enable_lib_replacement,defaultValueDescription:!0},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBuiltinIteratorReturn",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:Z.Type_Checking,description:Z.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"rewriteRelativeImportExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files,defaultValueDescription:!1},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"noUncheckedSideEffectImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Check_side_effect_imports,defaultValueDescription:!1},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSourceFile:!0,category:Z.Language_and_Environment,description:Z.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],Ww=[...f9e,...H$r],EWt=Ww.filter(s=>!!s.affectsSemanticDiagnostics),SWt=Ww.filter(s=>!!s.affectsEmit),vWt=Ww.filter(s=>!!s.affectsDeclarationPath),Y$e=Ww.filter(s=>!!s.affectsModuleResolution),Q$e=Ww.filter(s=>!!s.affectsSourceFile||!!s.affectsBindDiagnostics),BWt=Ww.filter(s=>!!s.affectsProgramStructure),wWt=Ww.filter(s=>Da(s,"transpileOptionValue")),bSs=Ww.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),ESs=wz.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),TWt=Ww.filter(SSs);function SSs(s){return!Xs(s.type)}var SU={name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},X$e=[SU,{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1},{name:"stopBuildOnErrors",category:Z.Command_line_Options,description:Z.Skip_building_downstream_projects_on_error_in_upstream_project,type:"boolean",defaultValueDescription:!1}],_Ee=[...f9e,...X$e],I9e=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}];function h9e(s){let c=new Map,g=new Map;return F(s,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&g.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:g}}var Y$r;function Bie(){return Y$r||(Y$r=h9e(Ww))}var vSs={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:j$r},Q$r={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function RWt(s){return X$r(s,Nf)}function X$r(s,c){let g=Do(s.type.keys()),d=(s.deprecatedKeys?g.filter(h=>!s.deprecatedKeys.has(h)):g).map(h=>`'${h}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${s.name}`,d)}function m9e(s,c,g){return Nen(s,(c??"").trim(),g)}function NWt(s,c="",g){if(c=c.trim(),Ac(c,"-"))return;if(s.type==="listOrElement"&&!c.includes(","))return Tz(s,c,g);if(c==="")return[];let d=c.split(",");switch(s.element.type){case"number":return Xt(d,h=>Tz(s.element,parseInt(h),g));case"string":return Xt(d,h=>Tz(s.element,h||"",g));case"boolean":case"object":return pe.fail(`List of ${s.element.type} is not yet supported.`);default:return Xt(d,h=>m9e(s.element,h,g))}}function J$r(s){return s.name}function DWt(s,c,g,d,h){var _;let S=(_=c.alternateMode)==null?void 0:_.getOptionsNameMap().optionsNameMap.get(s.toLowerCase());if(S)return X3(h,d,S!==SU?c.alternateMode.diagnostic:Z.Option_build_must_be_the_first_command_line_argument,s);let R=Dr(s,c.optionDeclarations,J$r);return R?X3(h,d,c.unknownDidYouMeanDiagnostic,g||s,R.name):X3(h,d,c.unknownOptionDiagnostic,g||s)}function J$e(s,c,g){let d={},h,_=[],S=[];return R(c),{options:d,watchOptions:h,fileNames:_,errors:S};function R(W){let V=0;for(;Vyd.readFile(re)));if(!Xs(V)){S.push(V);return}let M=[],ee=0;for(;;){for(;ee=V.length)break;let re=ee;if(V.charCodeAt(re)===34){for(ee++;ee32;)ee++;M.push(V.substring(re,ee))}}R(M)}}function U$r(s,c,g,d,h,_){if(d.isTSConfigOnly){let S=s[c];S==="null"?(h[d.name]=void 0,c++):d.type==="boolean"?S==="false"?(h[d.name]=Tz(d,!1,_),c++):(S==="true"&&c++,_.push(Nf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(_.push(Nf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),S&&!Ac(S,"-")&&c++)}else if(!s[c]&&d.type!=="boolean"&&_.push(Nf(g.optionTypeMismatchDiagnostic,d.name,q$e(d))),s[c]!=="null")switch(d.type){case"number":h[d.name]=Tz(d,parseInt(s[c]),_),c++;break;case"boolean":let S=s[c];h[d.name]=Tz(d,S!=="false",_),(S==="false"||S==="true")&&c++;break;case"string":h[d.name]=Tz(d,s[c]||"",_),c++;break;case"list":let R=NWt(d,s[c],_);h[d.name]=R||[],R&&c++;break;case"listOrElement":pe.fail("listOrElement not supported here");break;default:h[d.name]=m9e(d,s[c],_),c++;break}else h[d.name]=void 0,c++;return c}var C9e={alternateMode:vSs,getOptionsNameMap:Bie,optionDeclarations:Ww,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function kWt(s,c){return J$e(C9e,s,c)}function U$e(s,c){return xWt(Bie,s,c)}function xWt(s,c,g=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:h}=s();if(g){let _=h.get(c);_!==void 0&&(c=_)}return d.get(c)}var K$r;function j$r(){return K$r||(K$r=h9e(_Ee))}var BSs={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:Bie},wSs={alternateMode:BSs,getOptionsNameMap:j$r,optionDeclarations:_Ee,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function GWt(s){let{options:c,watchOptions:g,fileNames:d,errors:h}=J$e(wSs,s),_=c;return d.length===0&&d.push("."),_.clean&&_.force&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","force")),_.clean&&_.verbose&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),_.clean&&_.watch&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),_.watch&&_.dry&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:_,watchOptions:g,projects:d,errors:h}}function Zb(s,...c){return Ma(Nf(s,...c).messageText,Xs)}function yEe(s,c,g,d,h,_){let S=Ide(s,W=>g.readFile(W));if(!Xs(S)){g.onUnRecoverableConfigFileDiagnostic(S);return}let R=mEe(s,S),T=g.getCurrentDirectory();return R.path=Ou(s,T,_d(g.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,SEe(R,g,Xc(Mo(s),T),c,Xc(s,T),void 0,_,d,h)}function bEe(s,c){let g=Ide(s,c);return Xs(g)?K$e(s,g):{config:{},error:g}}function K$e(s,c){let g=mEe(s,c);return{config:len(g,g.parseDiagnostics,void 0),error:g.parseDiagnostics.length?g.parseDiagnostics[0]:void 0}}function FWt(s,c){let g=Ide(s,c);return Xs(g)?mEe(s,g):{fileName:s,parseDiagnostics:[g]}}function Ide(s,c){let g;try{g=c(s)}catch(d){return Nf(Z.Cannot_read_file_0_Colon_1,s,d.message)}return g===void 0?Nf(Z.Cannot_read_file_0,s):g}function j$e(s){return Ru(s,J$r)}var z$r={optionDeclarations:I9e,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},q$r;function $$r(){return q$r||(q$r=h9e(wz))}var z$e={getOptionsNameMap:$$r,optionDeclarations:wz,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},een;function ten(){return een||(een=j$e(Ww))}var ren;function nen(){return ren||(ren=j$e(wz))}var ien;function sen(){return ien||(ien=j$e(I9e))}var _9e={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},oen={name:"compilerOptions",type:"object",elementOptions:ten(),extraKeyDiagnostics:C9e},aen={name:"watchOptions",type:"object",elementOptions:nen(),extraKeyDiagnostics:z$e},cen={name:"typeAcquisition",type:"object",elementOptions:sen(),extraKeyDiagnostics:z$r},ZWt;function TSs(){return ZWt===void 0&&(ZWt={name:void 0,type:"object",elementOptions:j$e([oen,aen,cen,_9e,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},yWt])}),ZWt}function len(s,c,g){var d;let h=(d=s.statements[0])==null?void 0:d.expression;if(h&&h.kind!==211){if(c.push(_E(s,h,Z.The_root_value_of_a_0_file_must_be_an_object,gp(s.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),OI(h)){let _=de(h.elements,og);if(_)return EEe(s,_,c,!0,g)}return{}}return EEe(s,h,c,!0,g)}function LWt(s,c){var g;return EEe(s,(g=s.statements[0])==null?void 0:g.expression,c,!0,void 0)}function EEe(s,c,g,d,h){if(!c)return d?{}:void 0;return R(c,h?.rootOptions);function _(W,V){var M;let ee=d?{}:void 0;for(let re of W.properties){if(re.kind!==304){g.push(_E(s,re,Z.Property_assignment_expected));continue}re.questionToken&&g.push(_E(s,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),T(re.name)||g.push(_E(s,re.name,Z.String_literal_with_double_quotes_expected));let ge=kY(re.name)?void 0:hP(re.name),Ie=ge&&Bc(ge),_e=Ie?(M=V?.elementOptions)==null?void 0:M.get(Ie):void 0,Ee=R(re.initializer,_e);typeof Ie<"u"&&(d&&(ee[Ie]=Ee),h?.onPropertySet(Ie,Ee,re,V,_e))}return ee}function S(W,V){if(!d){W.forEach(M=>R(M,V));return}return Me(W.map(M=>R(M,V)),M=>M!==void 0)}function R(W,V){switch(W.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return T(W)||g.push(_E(s,W,Z.String_literal_with_double_quotes_expected)),W.text;case 9:return Number(W.text);case 225:if(W.operator!==41||W.operand.kind!==9)break;return-Number(W.operand.text);case 211:return _(W,V);case 210:return S(W.elements,V&&V.element)}V?g.push(_E(s,W,Z.Compiler_option_0_requires_a_value_of_type_1,V.name,q$e(V))):g.push(_E(s,W,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function T(W){return Zg(W)&&one(W,s)}}function q$e(s){return s.type==="listOrElement"?`${q$e(s.element)} or Array`:s.type==="list"?"Array":Xs(s.type)?s.type:"string"}function uen(s,c){if(s){if(vEe(c))return!s.disallowNullOrUndefined;if(s.type==="list")return Ki(c);if(s.type==="listOrElement")return Ki(c)||uen(s.element,c);let g=Xs(s.type)?s.type:"string";return typeof c===g}return!1}function $$e(s,c,g){var d,h,_;let S=_d(g.useCaseSensitiveFileNames),R=At(Me(s.fileNames,(h=(d=s.options.configFile)==null?void 0:d.configFileSpecs)!=null&&h.validatedIncludeSpecs?DSs(c,s.options.configFile.configFileSpecs.validatedIncludeSpecs,s.options.configFile.configFileSpecs.validatedExcludeSpecs,g):Tf),ge=>i1(Xc(c,g.getCurrentDirectory()),Xc(ge,g.getCurrentDirectory()),S)),T={configFilePath:Xc(c,g.getCurrentDirectory()),useCaseSensitiveFileNames:g.useCaseSensitiveFileNames},W=eet(s.options,T),V=s.watchOptions&&kSs(s.watchOptions),M={compilerOptions:{...y9e(W),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:V&&y9e(V),references:At(s.projectReferences,ge=>({...ge,path:ge.originalPath?ge.originalPath:"",originalPath:void 0})),files:B(R)?R:void 0,...(_=s.options.configFile)!=null&&_.configFileSpecs?{include:NSs(s.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:s.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:s.compileOnSave?!0:void 0},ee=new Set(W.keys()),re={};for(let ge in J7)if(!ee.has(ge)&&RSs(ge,ee)){let Ie=J7[ge].computeValue(s.options),_e=J7[ge].computeValue({});Ie!==_e&&(re[ge]=J7[ge].computeValue(s.options))}return Wt(M.compilerOptions,y9e(eet(re,T))),M}function RSs(s,c){let g=new Set;return d(s);function d(h){var _;return Zy(g,h)?jt((_=J7[h])==null?void 0:_.dependencies,S=>c.has(S)||d(S)):!1}}function y9e(s){return Object.fromEntries(s)}function NSs(s){if(B(s)){if(B(s)!==1)return s;if(s[0]!==fen)return s}}function DSs(s,c,g,d){if(!c)return Tf;let h=xAe(s,g,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),_=h.excludePattern&&zD(h.excludePattern,d.useCaseSensitiveFileNames),S=h.includeFilePattern&&zD(h.includeFilePattern,d.useCaseSensitiveFileNames);return S?_?R=>!(S.test(R)&&!_.test(R)):R=>!S.test(R):_?R=>_.test(R):Tf}function gen(s){switch(s.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return gen(s.element);default:return s.type}}function b9e(s,c){return Dh(c,(g,d)=>{if(g===s)return d})}function eet(s,c){return Aen(s,Bie(),c)}function kSs(s){return Aen(s,$$r())}function Aen(s,{optionsNameMap:c},g){let d=new Map,h=g&&_d(g.useCaseSensitiveFileNames);for(let _ in s)if(Da(s,_)){if(c.has(_)&&(c.get(_).category===Z.Command_line_Options||c.get(_).category===Z.Output_Formatting))continue;let S=s[_],R=c.get(_.toLowerCase());if(R){pe.assert(R.type!=="listOrElement");let T=gen(R);T?R.type==="list"?d.set(_,S.map(W=>b9e(W,T))):d.set(_,b9e(S,T)):g&&R.isFilePath?d.set(_,i1(g.configFilePath,Xc(S,Mo(g.configFilePath)),h)):g&&R.type==="list"&&R.element.isFilePath?d.set(_,S.map(W=>i1(g.configFilePath,Xc(W,Mo(g.configFilePath)),h))):d.set(_,S)}}return d}function VWt(s,c){let g=" ",d=[],h=Object.keys(s).filter(V=>V!=="init"&&V!=="help"&&V!=="watch");if(d.push("{"),d.push(`${g}// ${Bu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)}`),d.push(`${g}"compilerOptions": {`),S(Z.File_Layout),R("rootDir","./src","optional"),R("outDir","./dist","optional"),_(),S(Z.Environment_Settings),S(Z.See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule),R("module",199),R("target",99),R("types",[]),s.lib&&R("lib",s.lib),S(Z.For_nodejs_Colon),d.push(`${g}${g}// "lib": ["esnext"],`),d.push(`${g}${g}// "types": ["node"],`),S(Z.and_npm_install_D_types_Slashnode),_(),S(Z.Other_Outputs),R("sourceMap",!0),R("declaration",!0),R("declarationMap",!0),_(),S(Z.Stricter_Typechecking_Options),R("noUncheckedIndexedAccess",!0),R("exactOptionalPropertyTypes",!0),_(),S(Z.Style_Options),R("noImplicitReturns",!0,"optional"),R("noImplicitOverride",!0,"optional"),R("noUnusedLocals",!0,"optional"),R("noUnusedParameters",!0,"optional"),R("noFallthroughCasesInSwitch",!0,"optional"),R("noPropertyAccessFromIndexSignature",!0,"optional"),_(),S(Z.Recommended_Options),R("strict",!0),R("jsx",4),R("verbatimModuleSyntax",!0),R("isolatedModules",!0),R("noUncheckedSideEffectImports",!0),R("moduleDetection",3),R("skipLibCheck",!0),h.length>0)for(_();h.length>0;)R(h[0],s[h[0]]);function _(){d.push("")}function S(V){d.push(`${g}${g}// ${Bu(V)}`)}function R(V,M,ee="never"){let re=h.indexOf(V);re>=0&&h.splice(re,1);let ge;ee==="always"?ge=!0:ee==="never"?ge=!1:ge=!Da(s,V);let Ie=s[V]??M;ge?d.push(`${g}${g}// "${V}": ${T(V,Ie)},`):d.push(`${g}${g}"${V}": ${T(V,Ie)},`)}function T(V,M){let ee=Ww.filter(ge=>ge.name===V)[0];ee||pe.fail(`No option named ${V}?`);let re=ee.type instanceof Map?ee.type:void 0;if(Ki(M)){let ge="element"in ee&&ee.element.type instanceof Map?ee.element.type:void 0;return`[${M.map(Ie=>W(Ie,ge)).join(", ")}]`}else return W(M,re)}function W(V,M){return M&&(V=b9e(V,M)??pe.fail(`No matching value of ${V}`)),JSON.stringify(V)}return d.push(`${g}}`),d.push("}"),d.push(""),d.join(c)}function E9e(s,c){let g={},d=Bie().optionsNameMap;for(let h in s)Da(s,h)&&(g[h]=xSs(d.get(h.toLowerCase()),s[h],c));return g.configFilePath&&(g.configFilePath=c(g.configFilePath)),g}function xSs(s,c,g){if(s&&!vEe(c)){if(s.type==="list"){let d=c;if(s.element.isFilePath&&d.length)return d.map(g)}else if(s.isFilePath)return g(c);pe.assert(s.type!=="listOrElement")}return c}function den(s,c,g,d,h,_,S,R,T){return Ien(s,void 0,c,g,d,T,h,_,S,R)}function SEe(s,c,g,d,h,_,S,R,T){var W,V;(W=ki)==null||W.push(ki.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:s.fileName});let M=Ien(void 0,s,c,g,d,T,h,_,S,R);return(V=ki)==null||V.pop(),M}function tet(s,c){c&&Object.defineProperty(s,"configFile",{enumerable:!1,writable:!1,value:c})}function vEe(s){return s==null}function pen(s,c){return Mo(Xc(s,c))}var fen="**/*";function Ien(s,c,g,d,h={},_,S,R=[],T=[],W){pe.assert(s===void 0&&c!==void 0||s!==void 0&&c===void 0);let V=[],M=ben(s,c,g,d,S,R,V,W),{raw:ee}=M,re=hen(OA(h,M.options||{}),bSs,d),ge=S9e(_&&M.watchOptions?OA(_,M.watchOptions):M.watchOptions||_,d);re.configFilePath=S&&Dp(S);let Ie=iu(S?pen(S,d):d),_e=Ee();return c&&(c.configFileSpecs=_e),tet(re,c),{options:re,watchOptions:ge,fileNames:Ne(Ie),projectReferences:Te(Ie),typeAcquisition:M.typeAcquisition||iet(),raw:ee,errors:V,wildcardDirectories:QSs(_e,Ie,g.useCaseSensitiveFileNames),compileOnSave:!!ee.compileOnSave};function Ee(){let Ye=Ue("references",Gt=>typeof Gt=="object","object"),Tt=Ze(We("files"));if(Tt){let Gt=Ye==="no-prop"||Ki(Ye)&&Ye.length===0,nt=Da(ee,"extends");if(Tt.length===0&&Gt&&!nt)if(c){let Dt=S||"tsconfig.json",tr=Z.The_files_list_in_config_file_0_is_empty,ur=qre(c,"files",dt=>dt.initializer),Gr=X3(c,ur,tr,Dt);V.push(Gr)}else $e(Z.The_files_list_in_config_file_0_is_empty,S||"tsconfig.json")}let ot=Ze(We("include")),Qe=We("exclude"),mt=!1,ht=Ze(Qe);if(Qe==="no-prop"){let Gt=re.outDir,nt=re.declarationDir;(Gt||nt)&&(ht=Me([Gt,nt],Dt=>!!Dt))}Tt===void 0&&ot===void 0&&(ot=[fen],mt=!0);let _t,Rt,Lt,Ke;ot&&(_t=xen(ot,V,!0,c,"include"),Lt=v9e(_t,Ie)||_t),ht&&(Rt=xen(ht,V,!1,c,"exclude"),Ke=v9e(Rt,Ie)||Rt);let Pt=Me(Tt,Xs),_r=v9e(Pt,Ie)||Pt;return{filesSpecs:Tt,includeSpecs:ot,excludeSpecs:ht,validatedFilesSpec:_r,validatedIncludeSpecs:Lt,validatedExcludeSpecs:Ke,validatedFilesSpecBeforeSubstitution:Pt,validatedIncludeSpecsBeforeSubstitution:_t,validatedExcludeSpecsBeforeSubstitution:Rt,isDefaultIncludeSpec:mt}}function Ne(Ye){let Tt=hde(_e,Ye,re,g,T);return yen(Tt,BEe(ee),R)&&V.push(_en(_e,S)),Tt}function Te(Ye){let Tt,ot=Ue("references",Qe=>typeof Qe=="object","object");if(Ki(ot))for(let Qe of ot)typeof Qe.path!="string"?$e(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(Tt||(Tt=[])).push({path:Xc(Qe.path,Ye),originalPath:Qe.path,prepend:Qe.prepend,circular:Qe.circular});return Tt}function Ze(Ye){return Ki(Ye)?Ye:void 0}function We(Ye){return Ue(Ye,Xs,"string")}function Ue(Ye,Tt,ot){if(Da(ee,Ye)&&!vEe(ee[Ye]))if(Ki(ee[Ye])){let Qe=ee[Ye];return!c&&!ue(Qe,Tt)&&V.push(Nf(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,ot)),Qe}else return $e(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,"Array"),"not-array";return"no-prop"}function $e(Ye,...Tt){c||V.push(Nf(Ye,...Tt))}}function S9e(s,c){return hen(s,ESs,c)}function hen(s,c,g){if(!s)return s;let d;for(let _ of c)if(s[_.name]!==void 0){let S=s[_.name];switch(_.type){case"string":pe.assert(_.isFilePath),ret(S)&&h(_,Cen(S,g));break;case"list":pe.assert(_.element.isFilePath);let R=v9e(S,g);R&&h(_,R);break;case"object":pe.assert(_.name==="paths");let T=GSs(S,g);T&&h(_,T);break;default:pe.fail("option type not supported")}}return d||s;function h(_,S){(d??(d=Wt({},s)))[_.name]=S}}var men="${configDir}";function ret(s){return Xs(s)&&Ac(s,men,!0)}function Cen(s,c){return Xc(s.replace(men,"./"),c)}function v9e(s,c){if(!s)return s;let g;return s.forEach((d,h)=>{ret(d)&&((g??(g=s.slice()))[h]=Cen(d,c))}),g}function GSs(s,c){let g;return _g(s).forEach(h=>{if(!Ki(s[h]))return;let _=v9e(s[h],c);_&&((g??(g=Wt({},s)))[h]=_)}),g}function FSs(s){return s.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function _en({includeSpecs:s,excludeSpecs:c},g){return Nf(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,g||"tsconfig.json",JSON.stringify(s||[]),JSON.stringify(c||[]))}function yen(s,c,g){return s.length===0&&c&&(!g||g.length===0)}function net(s){return!s.fileNames.length&&Da(s.raw,"references")}function BEe(s){return!Da(s,"files")&&!Da(s,"references")}function B9e(s,c,g,d,h){let _=d.length;return yen(s,h)?d.push(_en(g,c)):je(d,S=>!FSs(S)),_!==d.length}function ZSs(s){return!!s.options}function ben(s,c,g,d,h,_,S,R){var T;d=Dp(d);let W=Xc(h||"",d);if(_.includes(W))return S.push(Nf(Z.Circularity_detected_while_resolving_configuration_Colon_0,[..._,W].join(" -> "))),{raw:s||LWt(c,S)};let V=s?LSs(s,g,d,h,S):VSs(c,g,d,h,S);if((T=V.options)!=null&&T.paths&&(V.options.pathsBasePath=d),V.extendedConfigPath){_=_.concat([W]);let re={options:{}};Xs(V.extendedConfigPath)?M(re,V.extendedConfigPath):V.extendedConfigPath.forEach(ge=>M(re,ge)),re.include&&(V.raw.include=re.include),re.exclude&&(V.raw.exclude=re.exclude),re.files&&(V.raw.files=re.files),V.raw.compileOnSave===void 0&&re.compileOnSave&&(V.raw.compileOnSave=re.compileOnSave),c&&re.extendedSourceFiles&&(c.extendedSourceFiles=Do(re.extendedSourceFiles.keys())),V.options=Wt(re.options,V.options),V.watchOptions=V.watchOptions&&re.watchOptions?ee(re,V.watchOptions):V.watchOptions||re.watchOptions}return V;function M(re,ge){let Ie=PSs(c,ge,g,_,S,R,re);if(Ie&&ZSs(Ie)){let _e=Ie.raw,Ee,Ne=Te=>{V.raw[Te]||_e[Te]&&(re[Te]=At(_e[Te],Ze=>ret(Ze)||Xp(Ze)?Ze:Ro(Ee||(Ee=r2(Mo(ge),d,_d(g.useCaseSensitiveFileNames))),Ze)))};Ne("include"),Ne("exclude"),Ne("files"),_e.compileOnSave!==void 0&&(re.compileOnSave=_e.compileOnSave),Wt(re.options,Ie.options),re.watchOptions=re.watchOptions&&Ie.watchOptions?ee(re,Ie.watchOptions):re.watchOptions||Ie.watchOptions}}function ee(re,ge){return re.watchOptionsCopied?Wt(re.watchOptions,ge):(re.watchOptionsCopied=!0,Wt({},re.watchOptions,ge))}}function LSs(s,c,g,d,h){Da(s,"excludes")&&h.push(Nf(Z.Unknown_option_excludes_Did_you_mean_exclude));let _=Ten(s.compilerOptions,g,h,d),S=Ren(s.typeAcquisition,g,h,d),R=OSs(s.watchOptions,g,h);s.compileOnSave=WSs(s,g,h);let T=s.extends||s.extends===""?Een(s.extends,c,g,d,h):void 0;return{raw:s,options:_,watchOptions:R,typeAcquisition:S,extendedConfigPath:T}}function Een(s,c,g,d,h,_,S,R){let T,W=d?pen(d,g):g;if(Xs(s))T=Sen(s,c,W,h,S,R);else if(Ki(s)){T=[];for(let V=0;VNe.name===re)&&(W=Ft(W,Ie.name))))}}function Sen(s,c,g,d,h,_){if(s=Dp(s),Xp(s)||Ac(s,"./")||Ac(s,"../")){let R=Xc(s,g);if(!c.fileExists(R)&&!di(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push(X3(_,h,Z.File_0_not_found,s));return}return R}let S=nOt(s,Ro(g,"tsconfig.json"),c);if(S.resolvedModule)return S.resolvedModule.resolvedFileName;s===""?d.push(X3(_,h,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push(X3(_,h,Z.File_0_not_found,s))}function PSs(s,c,g,d,h,_,S){let R=g.useCaseSensitiveFileNames?c:Om(c),T,W,V;if(_&&(T=_.get(R))?{extendedResult:W,extendedConfig:V}=T:(W=FWt(c,M=>g.readFile(M)),W.parseDiagnostics.length||(V=ben(void 0,W,g,Mo(c),gp(c),d,h,_)),_&&_.set(R,{extendedResult:W,extendedConfig:V})),s&&((S.extendedSourceFiles??(S.extendedSourceFiles=new Set)).add(W.fileName),W.extendedSourceFiles))for(let M of W.extendedSourceFiles)S.extendedSourceFiles.add(M);if(W.parseDiagnostics.length){h.push(...W.parseDiagnostics);return}return V}function WSs(s,c,g){if(!Da(s,yWt.name))return!1;let d=vU(yWt,s.compileOnSave,c,g);return typeof d=="boolean"&&d}function ven(s,c,g){let d=[];return{options:Ten(s,c,d,g),errors:d}}function Ben(s,c,g){let d=[];return{options:Ren(s,c,d,g),errors:d}}function wen(s){return s&&gp(s)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function Ten(s,c,g,d){let h=wen(d);return PWt(ten(),s,c,h,C9e,g),d&&(h.configFilePath=Dp(d)),h}function iet(s){return{enable:!!s&&gp(s)==="jsconfig.json",include:[],exclude:[]}}function Ren(s,c,g,d){let h=iet(d);return PWt(sen(),s,c,h,z$r,g),h}function OSs(s,c,g){return PWt(nen(),s,c,void 0,z$e,g)}function PWt(s,c,g,d,h,_){if(c){for(let S in c){let R=s.get(S);R?(d||(d={}))[R.name]=vU(R,c[S],g,_):_.push(DWt(S,h))}return d}}function X3(s,c,g,...d){return s&&c?_E(s,c,g,...d):Nf(g,...d)}function vU(s,c,g,d,h,_,S){if(s.isCommandLineOnly){d.push(X3(S,h?.name,Z.Option_0_can_only_be_specified_on_command_line,s.name));return}if(uen(s,c)){let R=s.type;if(R==="list"&&Ki(c))return Den(s,c,g,d,h,_,S);if(R==="listOrElement")return Ki(c)?Den(s,c,g,d,h,_,S):vU(s.element,c,g,d,h,_,S);if(!Xs(s.type))return Nen(s,c,d,_,S);let T=Tz(s,c,d,_,S);return vEe(T)?T:MSs(s,g,T)}else d.push(X3(S,_,Z.Compiler_option_0_requires_a_value_of_type_1,s.name,q$e(s)))}function MSs(s,c,g){return s.isFilePath&&(g=Dp(g),g=ret(g)?g:Xc(g,c),g===""&&(g=".")),g}function Tz(s,c,g,d,h){var _;if(vEe(c))return;let S=(_=s.extraValidation)==null?void 0:_.call(s,c);if(!S)return c;g.push(X3(h,d,...S))}function Nen(s,c,g,d,h){if(vEe(c))return;let _=c.toLowerCase(),S=s.type.get(_);if(S!==void 0)return Tz(s,S,g,d,h);g.push(X$r(s,(R,...T)=>X3(h,d,R,...T)))}function Den(s,c,g,d,h,_,S){return Me(At(c,(R,T)=>vU(s.element,R,g,d,h,_?.elements[T],S)),R=>s.listPreserveFalsyValues?!0:!!R)}var HSs=/(?:^|\/)\*\*\/?$/,YSs=/^[^*?]*(?=\/[^/]*[*?])/;function hde(s,c,g,d,h=E){c=iu(c);let _=_d(d.useCaseSensitiveFileNames),S=new Map,R=new Map,T=new Map,{validatedFilesSpec:W,validatedIncludeSpecs:V,validatedExcludeSpecs:M}=s,ee=z7(g,h),re=q7(g,ee);if(W)for(let Ee of W){let Ne=Xc(Ee,c);S.set(_(Ne),Ne)}let ge;if(V&&V.length>0)for(let Ee of d.readDirectory(c,Nr(re),M,V,void 0)){if(aA(Ee,".json")){if(!ge){let Ze=V.filter(Ue=>di(Ue,".json")),We=At(Yne(Ze,c,"files"),Ue=>`^${Ue}$`);ge=We?We.map(Ue=>zD(Ue,d.useCaseSensitiveFileNames)):E}if(Se(ge,Ze=>Ze.test(Ee))!==-1){let Ze=_(Ee);!S.has(Ze)&&!T.has(Ze)&&T.set(Ze,Ee)}continue}if(JSs(Ee,S,R,ee,_))continue;USs(Ee,R,ee,_);let Ne=_(Ee);!S.has(Ne)&&!R.has(Ne)&&R.set(Ne,Ee)}let Ie=Do(S.values()),_e=Do(R.values());return Ie.concat(_e,Do(T.values()))}function WWt(s,c,g,d,h){let{validatedFilesSpec:_,validatedIncludeSpecs:S,validatedExcludeSpecs:R}=c;if(!B(S)||!B(R))return!1;g=iu(g);let T=_d(d);if(_){for(let W of _)if(T(Xc(W,g))===s)return!1}return T9e(s,R,d,h,g)}function ken(s){let c=Ac(s,"**/")?0:s.indexOf("/**/");return c===-1?!1:(di(s,"/..")?s.length:s.lastIndexOf("/../"))>c}function w9e(s,c,g,d){return T9e(s,Me(c,h=>!ken(h)),g,d)}function T9e(s,c,g,d,h){let _=j7(c,Ro(iu(d),h),"exclude"),S=_&&zD(_,g);return S?S.test(s)?!0:!E0(s)&&S.test(hp(s)):!1}function xen(s,c,g,d,h){return s.filter(S=>{if(!Xs(S))return!1;let R=OWt(S,g);return R!==void 0&&c.push(_(...R)),R===void 0});function _(S,R){let T=Wge(d,h,R);return X3(d,T,S,R)}}function OWt(s,c){if(pe.assert(typeof s=="string"),c&&HSs.test(s))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s];if(ken(s))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s]}function QSs({validatedIncludeSpecs:s,validatedExcludeSpecs:c},g,d){let h=j7(c,g,"exclude"),_=h&&new RegExp(h,d?"":"i"),S={},R=new Map;if(s!==void 0){let T=[];for(let W of s){let V=iu(Ro(g,W));if(_&&_.test(V))continue;let M=XSs(V,d);if(M){let{key:ee,path:re,flags:ge}=M,Ie=R.get(ee),_e=Ie!==void 0?S[Ie]:void 0;(_e===void 0||_efu(s,S)?S:void 0);if(!_)return!1;for(let S of _){if(aA(s,S)&&(S!==".ts"||!aA(s,".d.ts")))return!1;let R=h(fN(s,S));if(c.has(R)||g.has(R)){if(S===".d.ts"&&(aA(s,".js")||aA(s,".jsx")))continue;return!0}}return!1}function USs(s,c,g,d){let h=F(g,_=>fu(s,_)?_:void 0);if(h)for(let _=h.length-1;_>=0;_--){let S=h[_];if(aA(s,S))return;let R=d(fN(s,S));c.delete(R)}}function HWt(s){let c={};for(let g in s)if(Da(s,g)){let d=U$e(g);d!==void 0&&(c[g]=YWt(s[g],d))}return c}function YWt(s,c){if(s===void 0)return s;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof s=="number"?s:"";case"boolean":return typeof s=="boolean"?s:"";case"listOrElement":if(!Ki(s))return YWt(s,c.element);case"list":let g=c.element;return Ki(s)?Xt(s,d=>YWt(d,g)):"";default:return Dh(c.type,(d,h)=>{if(d===s)return h})}}function LP(s){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=wt("module");if(c)return c(`${s}/`)}function Gen(s){var c;return(c=LP(s))==null?void 0:c.resolveRequest("pnpapi",null)}function Fen(s){let c=LP(s);if(!c)return[];s=AE(s);let g=c.findPackageLocator(`${s}/`);if(!g)return[];let{packageDependencies:d}=c.getPackageInformation(g),h=[];for(let[_,S]of Array.from(d.entries()))if(_.startsWith("@types/")&&S!==null){let R=c.getLocator(_,S),{packageLocation:T}=c.getPackageInformation(R);h.push(Mo(T))}return h}function KSs(s,c){let g=LP(s),d=g.findPackageLocator(s),h=g.findPackageLocator(c);if(h===null)return!1;let _=g.getPackageInformation(d),S=_.packageDependencies.get(h.name);if(S)return S===h.reference;for(let R of _.packageDependencies.values())if(Array.isArray(R)&&R[0]===h.name&&R[1]===h.reference)return!0;return!1}function eu(s,c,...g){s.trace(XY(c,...g))}function VP(s,c){return!!s.traceResolution&&c.trace!==void 0}function Rz(s,c,g){let d;if(c&&s){let h=s.contents.packageJsonContent;typeof h.name=="string"&&typeof h.version=="string"&&(d={name:h.name,subModuleName:c.path.slice(s.packageDirectory.length+ag.length),version:h.version,peerDependencies:hvs(s,g)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function set(s){return Rz(void 0,s,void 0)}function Zen(s){if(s)return pe.assert(s.packageId===void 0),{path:s.path,ext:s.extension,resolvedUsingTsExtension:s.resolvedUsingTsExtension}}function R9e(s){let c=[];return s&1&&c.push("TypeScript"),s&2&&c.push("JavaScript"),s&4&&c.push("Declaration"),s&8&&c.push("JSON"),c.join(", ")}function jSs(s){let c=[];return s&1&&c.push(...Qne),s&2&&c.push(...uU),s&4&&c.push(...VAe),s&8&&c.push(".json"),c}function QWt(s){if(s)return pe.assert(WAe(s.extension)),{fileName:s.path,packageId:s.packageId}}function Len(s,c,g,d,h,_,S,R,T){if(!S.resultFromCache&&!S.compilerOptions.preserveSymlinks&&c&&g&&!c.originalPath&&!Xr(s)){let{resolvedFileName:W,originalPath:V}=Wen(c.path,S.host,S.traceEnabled);V&&(c={...c,path:W,originalPath:V})}return Ven(c,g,d,h,_,S.resultFromCache,R,T)}function Ven(s,c,g,d,h,_,S,R){return _?S?.isReadonly?{..._,failedLookupLocations:XWt(_.failedLookupLocations,g),affectingLocations:XWt(_.affectingLocations,d),resolutionDiagnostics:XWt(_.resolutionDiagnostics,h)}:(_.failedLookupLocations=wie(_.failedLookupLocations,g),_.affectingLocations=wie(_.affectingLocations,d),_.resolutionDiagnostics=wie(_.resolutionDiagnostics,h),_):{resolvedModule:s&&{resolvedFileName:s.path,originalPath:s.originalPath===!0?void 0:s.originalPath,extension:s.extension,isExternalLibraryImport:c,packageId:s.packageId,resolvedUsingTsExtension:!!s.resolvedUsingTsExtension},failedLookupLocations:mde(g),affectingLocations:mde(d),resolutionDiagnostics:mde(h),alternateResult:R}}function mde(s){return s.length?s:void 0}function wie(s,c){return c?.length?s?.length?(s.push(...c),s):c:s}function XWt(s,c){return s?.length?c.length?[...s,...c]:s.slice():mde(c)}function JWt(s,c,g,d){if(!Da(s,c)){d.traceEnabled&&eu(d.host,Z.package_json_does_not_have_a_0_field,c);return}let h=s[c];if(typeof h!==g||h===null){d.traceEnabled&&eu(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,g,h===null?"null":typeof h);return}return h}function oet(s,c,g,d){let h=JWt(s,c,"string",d);if(h===void 0)return;if(!h){d.traceEnabled&&eu(d.host,Z.package_json_had_a_falsy_0_field,c);return}let _=iu(Ro(g,h));return d.traceEnabled&&eu(d.host,Z.package_json_has_0_field_1_that_references_2,c,h,_),_}function zSs(s,c,g){return oet(s,"typings",c,g)||oet(s,"types",c,g)}function qSs(s,c,g){return oet(s,"tsconfig",c,g)}function $Ss(s,c,g){return oet(s,"main",c,g)}function evs(s,c){let g=JWt(s,"typesVersions","object",c);if(g!==void 0)return c.traceEnabled&&eu(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),g}function tvs(s,c){let g=evs(s,c);if(g===void 0)return;if(c.traceEnabled)for(let S in g)Da(g,S)&&!gt.tryParse(S)&&eu(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,S);let d=N9e(g);if(!d){c.traceEnabled&&eu(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,I);return}let{version:h,paths:_}=d;if(typeof _!="object"){c.traceEnabled&&eu(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${h}']`,"object",typeof _);return}return d}var UWt;function N9e(s){UWt||(UWt=new O(C));for(let c in s){if(!Da(s,c))continue;let g=gt.tryParse(c);if(g!==void 0&&g.test(UWt))return{version:c,paths:s[c]}}}function Cde(s,c){if(s.typeRoots)return s.typeRoots;let g;if(s.configFilePath?g=Mo(s.configFilePath):c.getCurrentDirectory&&(g=c.getCurrentDirectory()),g!==void 0)return ivs(g)}function rvs(s){let c;return pE(iu(s),g=>{let d=Ro(g,nvs);(c??(c=[])).push(d)}),c}var nvs=Ro("node_modules","@types");function Pen(s,c,g){let d=typeof g.useCaseSensitiveFileNames=="function"?g.useCaseSensitiveFileNames():g.useCaseSensitiveFileNames;return qf(s,c,!d)===0}function ivs(s){let c=rvs(s),g=Fen(s);if(c?.length)return[...c,...g];if(g.length)return g}function Wen(s,c,g){let d=Ken(s,c,g),h=Pen(s,d,c);return{resolvedFileName:h?s:d,originalPath:h?void 0:s}}function Oen(s,c,g){let d=di(s,"/node_modules/@types")||di(s,"/node_modules/@types/")?cOt(c,g):c;return Ro(s,d)}function KWt(s,c,g,d,h,_,S){pe.assert(typeof s=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");let R=VP(g,d);h&&(g=h.commandLine.options);let T=c?Mo(c):void 0,W=T?_?.getFromDirectoryCache(s,S,T,h):void 0;if(!W&&T&&!Xr(s)&&(W=_?.getFromNonRelativeNameCache(s,S,T,h)),W)return R&&(eu(d,Z.Resolving_type_reference_directive_0_containing_file_1,s,c),h&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName),eu(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,s,T),We(W)),W;let V=Cde(g,d);R&&(c===void 0?V===void 0?eu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,s):eu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,s,V):V===void 0?eu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,s,c):eu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,s,c,V),h&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let M=[],ee=[],re=jWt(g);S!==void 0&&(re|=30);let ge=k_(g);S===99&&3<=ge&&ge<=99&&(re|=32);let Ie=re&8?PP(g,S):[],_e=[],Ee={compilerOptions:g,host:d,traceEnabled:R,failedLookupLocations:M,affectingLocations:ee,packageJsonInfoCache:_,features:re,conditions:Ie,requestContainingDirectory:T,reportDiagnostic:Ye=>void _e.push(Ye),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Ne=Ue(),Te=!0;Ne||(Ne=$e(),Te=!1);let Ze;if(Ne){let{fileName:Ye,packageId:Tt}=Ne,ot=Ye,Qe;g.preserveSymlinks||({resolvedFileName:ot,originalPath:Qe}=Wen(Ye,d,R)),Ze={primary:Te,resolvedFileName:ot,originalPath:Qe,packageId:Tt,isExternalLibraryImport:WP(Ye)}}return W={resolvedTypeReferenceDirective:Ze,failedLookupLocations:mde(M),affectingLocations:mde(ee),resolutionDiagnostics:mde(_e)},T&&_&&!_.isReadonly&&(_.getOrCreateCacheForDirectory(T,h).set(s,S,W),Xr(s)||_.getOrCreateCacheForNonRelativeName(s,S,h).set(T,W)),R&&We(W),W;function We(Ye){var Tt;(Tt=Ye.resolvedTypeReferenceDirective)!=null&&Tt.resolvedFileName?Ye.resolvedTypeReferenceDirective.packageId?eu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,oN(Ye.resolvedTypeReferenceDirective.packageId),Ye.resolvedTypeReferenceDirective.primary):eu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,Ye.resolvedTypeReferenceDirective.primary):eu(d,Z.Type_reference_directive_0_was_not_resolved,s)}function Ue(){if(V&&V.length)return R&&eu(d,Z.Resolving_with_primary_search_path_0,V.join(", ")),X(V,Ye=>{let Tt=Oen(Ye,s,Ee),ot=f1(Ye,d);if(!ot&&R&&eu(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,Ye),g.typeRoots){let Qe=Nie(4,Tt,!ot,Ee);if(Qe){let mt=TEe(Qe.path),ht=mt?aQ(mt,!1,Ee):void 0;return QWt(Rz(ht,Qe,Ee))}}return QWt(sOt(4,Tt,!ot,Ee))});R&&eu(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function $e(){let Ye=c&&Mo(c);if(Ye!==void 0){let Tt;if(!g.typeRoots||!di(c,Zde))if(R&&eu(d,Z.Looking_up_in_node_modules_folder_initial_location_0,Ye),Xr(s)){let{path:ot}=Uen(Ye,s);Tt=get(4,ot,!1,Ee,!0)}else{let ot=itn(4,s,Ye,Ee,void 0,void 0);Tt=ot&&ot.value}else R&&eu(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return QWt(Tt)}else R&&eu(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function jWt(s){let c=0;switch(k_(s)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return s.resolvePackageJsonExports?c|=8:s.resolvePackageJsonExports===!1&&(c&=-9),s.resolvePackageJsonImports?c|=2:s.resolvePackageJsonImports===!1&&(c&=-3),c}function PP(s,c){let g=k_(s);if(c===void 0){if(g===100)c=99;else if(g===2)return[]}let d=c===99?["import"]:["require"];return s.noDtsResolution||d.push("types"),g!==100&&d.push("node"),Nn(d,s.customConditions)}function aet(s,c,g,d,h){let _=yde(h?.getPackageJsonInfoCache(),d,g),S=LP(c);if(S)try{let R=S.resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1}),T=Dp(R).replace(/\/$/,"");return aQ(T,!1,_)}catch{return}return vN(d,c,R=>{if(gp(R)!=="node_modules"){let T=Ro(R,"node_modules"),W=Ro(T,s);return aQ(W,!1,_)}})}function D9e(s,c){if(s.types)return s.types;let g=[];if(c.directoryExists&&c.getDirectories){let d=Cde(s,c);if(d){for(let h of d)if(c.directoryExists(h))for(let _ of c.getDirectories(h)){let S=iu(_),R=Ro(h,S,"package.json");if(!(c.fileExists(R)&&E3(R,c).typings===null)){let W=gp(S);W.charCodeAt(0)!==46&&g.push(W)}}}}return g}function k9e(s){return!!s?.contents}function zWt(s){return!!s&&!s.contents}function qWt(s){var c;if(s===null||typeof s!="object")return""+s;if(Ki(s))return`[${(c=s.map(d=>qWt(d)))==null?void 0:c.join(",")}]`;let g="{";for(let d in s)Da(s,d)&&(g+=`${d}: ${qWt(s[d])}`);return g+"}"}function cet(s,c){return c.map(g=>qWt(K7(s,g))).join("|")+`|${s.pathsBasePath}`}function Men(s,c){let g=new Map,d=new Map,h=new Map;return s&&g.set(s,h),{getMapOfCacheRedirects:_,getOrCreateMapOfCacheRedirects:S,update:R,clear:W,getOwnMap:()=>h};function _(M){return M?T(M.commandLine.options,!1):h}function S(M){return M?T(M.commandLine.options,!0):h}function R(M){s!==M&&(s?h=T(M,!0):g.set(M,h),s=M)}function T(M,ee){let re=g.get(M);if(re)return re;let ge=V(M);if(re=d.get(ge),!re){if(s){let Ie=V(s);Ie===ge?re=h:d.has(Ie)||d.set(Ie,h)}ee&&(re??(re=new Map)),re&&d.set(ge,re)}return re&&g.set(M,re),re}function W(){let M=s&&c.get(s);h.clear(),g.clear(),c.clear(),d.clear(),s&&(M&&c.set(s,M),g.set(s,h))}function V(M){let ee=c.get(M);return ee||c.set(M,ee=cet(M,Y$e)),ee}}function svs(s,c){let g;return{getPackageJsonInfo:d,setPackageJsonInfo:h,clear:_,getInternalMap:S};function d(R){return g?.get(Ou(R,s,c))}function h(R,T){(g||(g=new Map)).set(Ou(R,s,c),T)}function _(){g=void 0}function S(){return g}}function Hen(s,c,g,d){let h=s.getOrCreateMapOfCacheRedirects(c),_=h.get(g);return _||(_=d(),h.set(g,_)),_}function ovs(s,c,g,d){let h=Men(g,d);return{getFromDirectoryCache:T,getOrCreateCacheForDirectory:R,clear:_,update:S,directoryToModuleNameMap:h};function _(){h.clear()}function S(W){h.update(W)}function R(W,V){let M=Ou(W,s,c);return Hen(h,V,M,()=>Tie())}function T(W,V,M,ee){var re,ge;let Ie=Ou(M,s,c);return(ge=(re=h.getMapOfCacheRedirects(ee))==null?void 0:re.get(Ie))==null?void 0:ge.get(W,V)}}function _de(s,c){return c===void 0?s:`${c}|${s}`}function Tie(){let s=new Map,c=new Map,g={get(h,_){return s.get(d(h,_))},set(h,_,S){return s.set(d(h,_),S),g},delete(h,_){return s.delete(d(h,_)),g},has(h,_){return s.has(d(h,_))},forEach(h){return s.forEach((_,S)=>{let[R,T]=c.get(S);return h(_,R,T)})},size(){return s.size}};return g;function d(h,_){let S=_de(h,_);return c.set(S,[h,_]),S}}function avs(s){return s.resolvedModule&&(s.resolvedModule.originalPath||s.resolvedModule.resolvedFileName)}function cvs(s){return s.resolvedTypeReferenceDirective&&(s.resolvedTypeReferenceDirective.originalPath||s.resolvedTypeReferenceDirective.resolvedFileName)}function lvs(s,c,g,d,h){let _=Men(g,h);return{getFromNonRelativeNameCache:T,getOrCreateCacheForNonRelativeName:W,clear:S,update:R};function S(){_.clear()}function R(M){_.update(M)}function T(M,ee,re,ge){var Ie,_e;return pe.assert(!Xr(M)),(_e=(Ie=_.getMapOfCacheRedirects(ge))==null?void 0:Ie.get(_de(M,ee)))==null?void 0:_e.get(re)}function W(M,ee,re){return pe.assert(!Xr(M)),Hen(_,re,_de(M,ee),V)}function V(){let M=new Map;return{get:ee,set:re};function ee(Ie){return M.get(Ou(Ie,s,c))}function re(Ie,_e){let Ee=Ou(Ie,s,c);if(M.has(Ee))return;M.set(Ee,_e);let Ne=d(_e),Te=Ne&&ge(Ee,Ne),Ze=Ee;for(;Ze!==Te;){let We=Mo(Ze);if(We===Ze||M.has(We))break;M.set(We,_e),Ze=We}}function ge(Ie,_e){let Ee=Ou(Mo(_e),s,c),Ne=0,Te=Math.min(Ie.length,Ee.length);for(;Ned,clearAllExceptPackageJsonInfoCache:W,optionsToRedirectsKey:_};function T(){W(),d.clear()}function W(){S.clear(),R.clear()}function V(M){S.update(M),R.update(M)}}function Rie(s,c,g,d,h){let _=Yen(s,c,g,d,avs,h);return _.getOrCreateCacheForModuleName=(S,R,T)=>_.getOrCreateCacheForNonRelativeName(S,R,T),_}function x9e(s,c,g,d,h){return Yen(s,c,g,d,cvs,h)}function uet(s){return{moduleResolution:2,traceResolution:s.traceResolution}}function G9e(s,c,g,d,h){return BU(s,c,uet(g),d,h)}function Qen(s,c,g,d){let h=Mo(c);return g.getFromDirectoryCache(s,d,h,void 0)}function BU(s,c,g,d,h,_,S){let R=VP(g,d);_&&(g=_.commandLine.options),R&&(eu(d,Z.Resolving_module_0_from_1,s,c),_&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,_.sourceFile.fileName));let T=Mo(c),W=h?.getFromDirectoryCache(s,S,T,_);if(W)R&&eu(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,s,T);else{let V=g.moduleResolution;switch(V===void 0?(V=k_(g),R&&eu(d,Z.Module_resolution_kind_is_not_specified_using_0,z_[V])):R&&eu(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,z_[V]),V){case 3:W=dvs(s,c,g,d,h,_,S);break;case 99:W=pvs(s,c,g,d,h,_,S);break;case 2:W=rOt(s,c,g,d,h,_,S?PP(g,S):void 0);break;case 1:W=uOt(s,c,g,d,h,_);break;case 100:W=tOt(s,c,g,d,h,_,S?PP(g,S):void 0);break;default:return pe.fail(`Unexpected moduleResolution: ${V}`)}h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(T,_).set(s,S,W),Xr(s)||h.getOrCreateCacheForNonRelativeName(s,S,_).set(T,W))}return R&&(W.resolvedModule?W.resolvedModule.packageId?eu(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,s,W.resolvedModule.resolvedFileName,oN(W.resolvedModule.packageId)):eu(d,Z.Module_name_0_was_successfully_resolved_to_1,s,W.resolvedModule.resolvedFileName):eu(d,Z.Module_name_0_was_not_resolved,s)),W}function Xen(s,c,g,d,h){let _=uvs(s,c,d,h);return _?_.value:Xr(c)?gvs(s,c,g,d,h):Avs(s,c,d,h)}function uvs(s,c,g,d){let{baseUrl:h,paths:_}=d.compilerOptions;if(_&&!Ip(c)){d.traceEnabled&&(h&&eu(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),eu(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let S=aAe(d.compilerOptions,d.host),R=$7(_);return oOt(s,c,S,_,R,g,!1,d)}}function gvs(s,c,g,d,h){if(!h.compilerOptions.rootDirs)return;h.traceEnabled&&eu(h.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let _=iu(Ro(g,c)),S,R;for(let T of h.compilerOptions.rootDirs){let W=iu(T);di(W,ag)||(W+=ag);let V=Ac(_,W)&&(R===void 0||R.length(s[s.None=0]="None",s[s.Imports=2]="Imports",s[s.SelfName=4]="SelfName",s[s.Exports=8]="Exports",s[s.ExportsPatternTrailers=16]="ExportsPatternTrailers",s[s.AllFeatures=30]="AllFeatures",s[s.Node16Default=30]="Node16Default",s[s.NodeNextDefault=30]="NodeNextDefault",s[s.BundlerDefault=30]="BundlerDefault",s[s.EsmMode=32]="EsmMode",s))(eOt||{});function dvs(s,c,g,d,h,_,S){return Jen(30,s,c,g,d,h,_,S)}function pvs(s,c,g,d,h,_,S){return Jen(30,s,c,g,d,h,_,S)}function Jen(s,c,g,d,h,_,S,R,T){let W=Mo(g),V=R===99?32:0,M=d.noDtsResolution?3:7;return NP(d)&&(M|=8),wEe(s|V,c,W,d,h,_,M,!1,S,T)}function fvs(s,c,g){return wEe(0,s,c,{moduleResolution:2,allowJs:!0},g,void 0,2,!1,void 0,void 0)}function tOt(s,c,g,d,h,_,S){let R=Mo(c),T=g.noDtsResolution?3:7;return NP(g)&&(T|=8),wEe(jWt(g),s,R,g,d,h,T,!1,_,S)}function rOt(s,c,g,d,h,_,S,R){let T;return R?T=8:g.noDtsResolution?(T=3,NP(g)&&(T|=8)):T=NP(g)?15:7,wEe(S?30:0,s,Mo(c),g,d,h,T,!!R,_,S)}function nOt(s,c,g){return wEe(30,s,Mo(c),{moduleResolution:99},g,void 0,8,!0,void 0,void 0)}function wEe(s,c,g,d,h,_,S,R,T,W){var V,M,ee,re,ge;let Ie=VP(d,h),_e=[],Ee=[],Ne=k_(d);W??(W=PP(d,Ne===100||Ne===2?void 0:s&32?99:1));let Te=[],Ze={compilerOptions:d,host:h,traceEnabled:Ie,failedLookupLocations:_e,affectingLocations:Ee,packageJsonInfoCache:_,features:s,conditions:W??E,requestContainingDirectory:g,reportDiagnostic:Ye=>void Te.push(Ye),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ie&&lU(Ne)&&eu(h,Z.Resolving_in_0_mode_with_conditions_1,s&32?"ESM":"CJS",Ze.conditions.map(Ye=>`'${Ye}'`).join(", "));let We;if(Ne===2){let Ye=S&5,Tt=S&-6;We=Ye&&$e(Ye,Ze)||Tt&&$e(Tt,Ze)||void 0}else We=$e(S,Ze);let Ue;if(Ze.resolvedPackageDirectory&&!R&&!Xr(c)){let Ye=We?.value&&S&5&&!ttn(5,We.value.resolved.extension);if((V=We?.value)!=null&&V.isExternalLibraryImport&&Ye&&s&8&&W?.includes("import")){OP(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let Tt={...Ze,features:Ze.features&-9,reportDiagnostic:Dc},ot=$e(S&5,Tt);(M=ot?.value)!=null&&M.isExternalLibraryImport&&(Ue=ot.value.resolved.path)}else if((!We?.value||Ye)&&Ne===2){OP(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let Tt={...Ze.compilerOptions,moduleResolution:100},ot={...Ze,compilerOptions:Tt,features:30,conditions:PP(Tt),reportDiagnostic:Dc},Qe=$e(S&5,ot);(ee=Qe?.value)!=null&&ee.isExternalLibraryImport&&(Ue=Qe.value.resolved.path)}}return Len(c,(re=We?.value)==null?void 0:re.resolved,(ge=We?.value)==null?void 0:ge.isExternalLibraryImport,_e,Ee,Te,Ze,_,Ue);function $e(Ye,Tt){let Qe=Xen(Ye,c,g,(mt,ht,_t,Rt)=>get(mt,ht,_t,Rt,!0),Tt);if(Qe)return h2({resolved:Qe,isExternalLibraryImport:WP(Qe.path)});if(Xr(c)){let{path:mt,parts:ht}=Uen(g,c),_t=get(Ye,mt,!1,Tt,!0);return _t&&h2({resolved:_t,isExternalLibraryImport:k(ht,"node_modules")})}else{if(s&2&&Ac(c,"#")){let ht=yvs(Ye,c,g,Tt,_,T);if(ht)return ht.value&&{value:{resolved:ht.value,isExternalLibraryImport:!1}}}if(s&4){let ht=_vs(Ye,c,g,Tt,_,T);if(ht)return ht.value&&{value:{resolved:ht.value,isExternalLibraryImport:!1}}}if(c.includes(":")){Ie&&eu(h,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,R9e(Ye));return}Ie&&eu(h,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,R9e(Ye));let mt=itn(Ye,c,g,Tt,_,T);return Ye&4&&(mt??(mt=ltn(c,Tt))),mt&&{value:mt.value&&{resolved:mt.value,isExternalLibraryImport:!0}}}}}function Uen(s,c){let g=Ro(s,c),d=Np(g),h=li(d);return{path:h==="."||h===".."?hp(iu(g)):iu(g),parts:d}}function Ken(s,c,g){if(!c.realpath)return s;let d=iu(c.realpath(s));return g&&eu(c,Z.Resolving_real_path_for_0_result_1,s,d),d}function get(s,c,g,d,h){if(d.traceEnabled&&eu(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,R9e(s)),!Jp(c)){if(!g){let S=Mo(c);f1(S,d.host)||(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,S),g=!0)}let _=Nie(s,c,g,d);if(_){let S=h?TEe(_.path):void 0,R=S?aQ(S,!1,d):void 0;return Rz(R,_,d)}}if(g||f1(c,d.host)||(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),g=!0),!(d.features&32))return sOt(s,c,g,d,h)}var Vx="/node_modules/";function WP(s){return s.includes(Vx)}function TEe(s,c){let g=iu(s),d=g.lastIndexOf(Vx);if(d===-1)return;let h=d+Vx.length,_=jen(g,h,c);return g.charCodeAt(h)===64&&(_=jen(g,_,c)),g.slice(0,_)}function jen(s,c,g){let d=s.indexOf(ag,c+1);return d===-1?g?s.length:c:d}function iOt(s,c,g,d){return set(Nie(s,c,g,d))}function Nie(s,c,g,d){let h=zen(s,c,g,d);if(h)return h;if(!(d.features&32)){let _=qen(c,s,"",g,d);if(_)return _}}function zen(s,c,g,d){if(!gp(c).includes("."))return;let _=s0(c);_===c&&(_=c.substring(0,c.lastIndexOf(".")));let S=c.substring(_.length);return d.traceEnabled&&eu(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,S),qen(_,s,S,g,d)}function Aet(s,c,g,d,h){if(s&1&&fu(c,Qne)||s&4&&fu(c,VAe)){let _=det(c,d,h),S=O7(c);return _!==void 0?{path:c,ext:S,resolvedUsingTsExtension:g?!di(g,S):void 0}:void 0}return h.isConfigLookup&&s===8&&aA(c,".json")?det(c,d,h)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:zen(s,c,d,h)}function qen(s,c,g,d,h){if(!d){let S=Mo(s);S&&(d=!f1(S,h.host))}switch(g){case".mjs":case".mts":case".d.mts":return c&1&&_(".mts",g===".mts"||g===".d.mts")||c&4&&_(".d.mts",g===".mts"||g===".d.mts")||c&2&&_(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&_(".cts",g===".cts"||g===".d.cts")||c&4&&_(".d.cts",g===".cts"||g===".d.cts")||c&2&&_(".cjs")||void 0;case".json":return c&4&&_(".d.json.ts")||c&8&&_(".json")||void 0;case".tsx":case".jsx":return c&1&&(_(".tsx",g===".tsx")||_(".ts",g===".tsx"))||c&4&&_(".d.ts",g===".tsx")||c&2&&(_(".jsx")||_(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(_(".ts",g===".ts"||g===".d.ts")||_(".tsx",g===".ts"||g===".d.ts"))||c&4&&_(".d.ts",g===".ts"||g===".d.ts")||c&2&&(_(".js")||_(".jsx"))||h.isConfigLookup&&_(".json")||void 0;default:return c&4&&!PC(s+g)&&_(`.d${g}.ts`)||void 0}function _(S,R){let T=det(s+S,d,h);return T===void 0?void 0:{path:T,ext:S,resolvedUsingTsExtension:!h.candidateIsFromPackageJsonField&&R}}}function det(s,c,g){var d;if(!((d=g.compilerOptions.moduleSuffixes)!=null&&d.length))return $en(s,c,g);let h=QT(s)??"",_=h?Jne(s,h):s;return F(g.compilerOptions.moduleSuffixes,S=>$en(_+S+h,c,g))}function $en(s,c,g){var d;if(!c){if(g.host.fileExists(s))return g.traceEnabled&&eu(g.host,Z.File_0_exists_use_it_as_a_name_resolution_result,s),s;g.traceEnabled&&eu(g.host,Z.File_0_does_not_exist,s)}(d=g.failedLookupLocations)==null||d.push(s)}function sOt(s,c,g,d,h=!0){let _=h?aQ(c,g,d):void 0;return Rz(_,fet(s,c,g,d,_),d)}function pet(s,c,g,d,h){if(!h&&s.contents.resolvedEntrypoints!==void 0)return s.contents.resolvedEntrypoints;let _,S=5|(h?2:0),R=jWt(c),T=yde(d?.getPackageJsonInfoCache(),g,c);T.conditions=PP(c),T.requestContainingDirectory=s.packageDirectory;let W=fet(S,s.packageDirectory,!1,T,s);if(_=Ft(_,W?.path),R&8&&s.contents.packageJsonContent.exports){let V=io([PP(c,99),PP(c,1)],Sc);for(let M of V){let ee={...T,failedLookupLocations:[],conditions:M,host:g},re=Ivs(s,s.contents.packageJsonContent.exports,ee,S);if(re)for(let ge of re)_=ps(_,ge.path)}}return s.contents.resolvedEntrypoints=_||!1}function Ivs(s,c,g,d){let h;if(Ki(c))for(let S of c)_(S);else if(typeof c=="object"&&c!==null&&F9e(c))for(let S in c)_(c[S]);else _(c);return h;function _(S){var R,T;if(typeof S=="string"&&Ac(S,"./"))if(S.includes("*")&&g.host.readDirectory){if(S.indexOf("*")!==S.lastIndexOf("*"))return!1;g.host.readDirectory(s.packageDirectory,jSs(d),void 0,[i_(R3(S,"**/*"),".*")]).forEach(W=>{h=ps(h,{path:W,ext:gE(W),resolvedUsingTsExtension:void 0})})}else{let W=Np(S).slice(2);if(W.includes("..")||W.includes(".")||W.includes("node_modules"))return!1;let V=Ro(s.packageDirectory,S),M=Xc(V,(T=(R=g.host).getCurrentDirectory)==null?void 0:T.call(R)),ee=Aet(d,M,S,!1,g);if(ee)return h=ps(h,ee,(re,ge)=>re.path===ge.path),!0}else if(Array.isArray(S)){for(let W of S)if(_(W))return!0}else if(typeof S=="object"&&S!==null)return F(_g(S),W=>{if(W==="default"||k(g.conditions,W)||NEe(g.conditions,W))return _(S[W]),!0})}}function yde(s,c,g){return{host:c,compilerOptions:g,traceEnabled:VP(g,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:s,features:0,conditions:E,requestContainingDirectory:void 0,reportDiagnostic:Dc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function bde(s,c){return vN(c.host,s,g=>aQ(g,!1,c))}function etn(s,c){return s.contents.versionPaths===void 0&&(s.contents.versionPaths=tvs(s.contents.packageJsonContent,c)||!1),s.contents.versionPaths||void 0}function hvs(s,c){return s.contents.peerDependencies===void 0&&(s.contents.peerDependencies=mvs(s,c)||!1),s.contents.peerDependencies||void 0}function mvs(s,c){let g=JWt(s.contents.packageJsonContent,"peerDependencies","object",c);if(g===void 0)return;c.traceEnabled&&eu(c.host,Z.package_json_has_a_peerDependencies_field);let d=Ken(s.packageDirectory,c.host,c.traceEnabled),h=d.substring(0,d.lastIndexOf("node_modules")+12)+ag,_="";for(let S in g)if(Da(g,S)){let R=aQ(h+S,!1,c);if(R){let T=R.contents.packageJsonContent.version;_+=`+${S}@${T}`,c.traceEnabled&&eu(c.host,Z.Found_peerDependency_0_with_1_version,S,T)}else c.traceEnabled&&eu(c.host,Z.Failed_to_find_peerDependency_0,S)}return _}function aQ(s,c,g){var d,h,_,S,R,T;let{host:W,traceEnabled:V}=g,M=Ro(s,"package.json");if(c){(d=g.failedLookupLocations)==null||d.push(M);return}let ee=(h=g.packageJsonInfoCache)==null?void 0:h.getPackageJsonInfo(M);if(ee!==void 0){if(k9e(ee))return V&&eu(W,Z.File_0_exists_according_to_earlier_cached_lookups,M),(_=g.affectingLocations)==null||_.push(M),ee.packageDirectory===s?ee:{packageDirectory:s,contents:ee.contents};ee.directoryExists&&V&&eu(W,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,M),(S=g.failedLookupLocations)==null||S.push(M);return}let re=f1(s,W);if(re&&W.fileExists(M)){let ge=E3(M,W);V&&eu(W,Z.Found_package_json_at_0,M);let Ie={packageDirectory:s,contents:{packageJsonContent:ge,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,Ie),(R=g.affectingLocations)==null||R.push(M),Ie}else re&&V&&eu(W,Z.File_0_does_not_exist,M),g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,{packageDirectory:s,directoryExists:re}),(T=g.failedLookupLocations)==null||T.push(M)}function fet(s,c,g,d,h){let _=h&&etn(h,d),S;h&&Pen(h?.packageDirectory,c,d.host)&&(d.isConfigLookup?S=qSs(h.contents.packageJsonContent,h.packageDirectory,d):S=s&4&&zSs(h.contents.packageJsonContent,h.packageDirectory,d)||s&7&&$Ss(h.contents.packageJsonContent,h.packageDirectory,d)||void 0);let R=(ee,re,ge,Ie)=>{let _e=Aet(ee,re,void 0,ge,Ie);if(_e)return set(_e);let Ee=ee===4?5:ee,Ne=Ie.features,Te=Ie.candidateIsFromPackageJsonField;Ie.candidateIsFromPackageJsonField=!0,h?.contents.packageJsonContent.type!=="module"&&(Ie.features&=-33);let Ze=get(Ee,re,ge,Ie,!1);return Ie.features=Ne,Ie.candidateIsFromPackageJsonField=Te,Ze},T=S?!f1(Mo(S),d.host):void 0,W=g||!f1(c,d.host),V=Ro(c,d.isConfigLookup?"tsconfig":"index");if(_&&(!S||Jh(c,S))){let ee=mp(c,S||V,!1);d.traceEnabled&&eu(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,_.version,C,ee);let re=$7(_.paths),ge=oOt(s,ee,c,_.paths,re,R,T||W,d);if(ge)return Zen(ge.value)}let M=S&&Zen(R(s,S,T,d));if(M)return M;if(!(d.features&32))return Nie(s,V,W,d)}function ttn(s,c){return s&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||s&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||s&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||s&8&&c===".json"||!1}function REe(s){let c=s.indexOf(ag);return s[0]==="@"&&(c=s.indexOf(ag,c+1)),c===-1?{packageName:s,rest:""}:{packageName:s.slice(0,c),rest:s.slice(c+1)}}function F9e(s){return ue(_g(s),c=>Ac(c,"."))}function Cvs(s){return!jt(_g(s),c=>Ac(c,"."))}function _vs(s,c,g,d,h,_){var S,R;let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),W=bde(T,d);if(!W||!W.contents.packageJsonContent.exports||typeof W.contents.packageJsonContent.name!="string")return;let V=Np(c),M=Np(W.contents.packageJsonContent.name);if(!ue(M,(_e,Ee)=>V[Ee]===_e))return;let ee=V.slice(M.length),re=B(ee)?`.${ag}${ee.join(ag)}`:".";if(TF(d.compilerOptions)&&!WP(g))return Iet(W,s,re,d,h,_);let ge=s&5,Ie=s&-6;return Iet(W,ge,re,d,h,_)||Iet(W,Ie,re,d,h,_)}function Iet(s,c,g,d,h,_){if(s.contents.packageJsonContent.exports){if(g==="."){let S;if(typeof s.contents.packageJsonContent.exports=="string"||Array.isArray(s.contents.packageJsonContent.exports)||typeof s.contents.packageJsonContent.exports=="object"&&Cvs(s.contents.packageJsonContent.exports)?S=s.contents.packageJsonContent.exports:Da(s.contents.packageJsonContent.exports,".")&&(S=s.contents.packageJsonContent.exports["."]),S)return ntn(c,d,h,_,g,s,!1)(S,"",!1,".")}else if(F9e(s.contents.packageJsonContent.exports)){if(typeof s.contents.packageJsonContent.exports!="object")return d.traceEnabled&&eu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),h2(void 0);let S=rtn(c,d,h,_,g,s.contents.packageJsonContent.exports,s,!1);if(S)return S}return d.traceEnabled&&eu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),h2(void 0)}}function yvs(s,c,g,d,h,_){var S,R;if(c==="#"||Ac(c,"#/"))return d.traceEnabled&&eu(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),h2(void 0);let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),W=bde(T,d);if(!W)return d.traceEnabled&&eu(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,T),h2(void 0);if(!W.contents.packageJsonContent.imports)return d.traceEnabled&&eu(d.host,Z.package_json_scope_0_has_no_imports_defined,W.packageDirectory),h2(void 0);let V=rtn(s,d,h,_,c,W.contents.packageJsonContent.imports,W,!0);return V||(d.traceEnabled&&eu(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,W.packageDirectory),h2(void 0))}function het(s,c){let g=s.indexOf("*"),d=c.indexOf("*"),h=g===-1?s.length:g+1,_=d===-1?c.length:d+1;return h>_?-1:_>h||g===-1?1:d===-1||s.length>c.length?-1:c.length>s.length?1:0}function rtn(s,c,g,d,h,_,S,R){let T=ntn(s,c,g,d,h,S,R);if(!di(h,ag)&&!h.includes("*")&&Da(_,h)){let M=_[h];return T(M,"",!1,h)}let W=bo(Me(_g(_),M=>bvs(M)||di(M,"/")),het);for(let M of W)if(c.features&16&&V(M,h)){let ee=_[M],re=M.indexOf("*"),ge=h.substring(M.substring(0,re).length,h.length-(M.length-1-re));return T(ee,ge,!0,M)}else if(di(M,"*")&&Ac(h,M.substring(0,M.length-1))){let ee=_[M],re=h.substring(M.length-1);return T(ee,re,!0,M)}else if(Ac(h,M)){let ee=_[M],re=h.substring(M.length);return T(ee,re,!1,M)}function V(M,ee){if(di(M,"*"))return!1;let re=M.indexOf("*");return re===-1?!1:Ac(ee,M.substring(0,re))&&di(ee,M.substring(re+1))}}function bvs(s){let c=s.indexOf("*");return c!==-1&&c===s.lastIndexOf("*")}function ntn(s,c,g,d,h,_,S){return R;function R(T,W,V,M){var ee,re;if(typeof T=="string"){if(!V&&W.length>0&&!di(T,"/"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);if(!Ac(T,"./")){if(S&&!Ac(T,"../")&&!Ac(T,"/")&&!Xp(T)){let $e=V?T.replace(/\*/g,W):T+W;OP(c,Z.Using_0_subpath_1_with_target_2,"imports",M,$e),OP(c,Z.Resolving_module_0_from_1,$e,_.packageDirectory+"/");let Ye=wEe(c.features,$e,_.packageDirectory+"/",c.compilerOptions,c.host,g,s,!1,d,c.conditions);return(ee=c.failedLookupLocations)==null||ee.push(...Ye.failedLookupLocations??E),(re=c.affectingLocations)==null||re.push(...Ye.affectingLocations??E),h2(Ye.resolvedModule?{path:Ye.resolvedModule.resolvedFileName,extension:Ye.resolvedModule.extension,packageId:Ye.resolvedModule.packageId,originalPath:Ye.resolvedModule.originalPath,resolvedUsingTsExtension:Ye.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0)}let Ne=(Ip(T)?Np(T).slice(1):Np(T)).slice(1);if(Ne.includes("..")||Ne.includes(".")||Ne.includes("node_modules"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);let Te=Ro(_.packageDirectory,T),Ze=Np(W);if(Ze.includes("..")||Ze.includes(".")||Ze.includes("node_modules"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);c.traceEnabled&&eu(c.host,Z.Using_0_subpath_1_with_target_2,S?"imports":"exports",M,V?T.replace(/\*/g,W):T+W);let We=ge(V?Te.replace(/\*/g,W):Te+W),Ue=_e(We,W,Ro(_.packageDirectory,"package.json"),S);return Ue||h2(Rz(_,Aet(s,We,T,!1,c),c))}else if(typeof T=="object"&&T!==null)if(Array.isArray(T)){if(!B(T))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);for(let Ee of T){let Ne=R(Ee,W,V,M);if(Ne)return Ne}}else{OP(c,Z.Entering_conditional_exports);for(let Ee of _g(T))if(Ee==="default"||c.conditions.includes(Ee)||NEe(c.conditions,Ee)){OP(c,Z.Matched_0_condition_1,S?"imports":"exports",Ee);let Ne=T[Ee],Te=R(Ne,W,V,M);if(Te)return OP(c,Z.Resolved_under_condition_0,Ee),OP(c,Z.Exiting_conditional_exports),Te;OP(c,Z.Failed_to_resolve_under_condition_0,Ee)}else OP(c,Z.Saw_non_matching_condition_0,Ee);OP(c,Z.Exiting_conditional_exports);return}else if(T===null)return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,_.packageDirectory,h),h2(void 0);return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);function ge(Ee){var Ne,Te;return Ee===void 0?Ee:Xc(Ee,(Te=(Ne=c.host).getCurrentDirectory)==null?void 0:Te.call(Ne))}function Ie(Ee,Ne){return hp(Ro(Ee,Ne))}function _e(Ee,Ne,Te,Ze){var We,Ue,$e,Ye;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ee.includes("/node_modules/")&&(!c.compilerOptions.configFile||Jh(_.packageDirectory,ge(c.compilerOptions.configFile.fileName),!met(c)))){let ot=JD({useCaseSensitiveFileNames:()=>met(c)}),Qe=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let mt=ge(Gde(c.compilerOptions,()=>[],((Ue=(We=c.host).getCurrentDirectory)==null?void 0:Ue.call(We))||"",ot));Qe.push(mt)}else if(c.requestContainingDirectory){let mt=ge(Ro(c.requestContainingDirectory,"index.ts")),ht=ge(Gde(c.compilerOptions,()=>[mt,ge(Te)],((Ye=($e=c.host).getCurrentDirectory)==null?void 0:Ye.call($e))||"",ot));Qe.push(ht);let _t=hp(ht);for(;_t&&_t.length>1;){let Rt=Np(_t);Rt.pop();let Lt=Dm(Rt);Qe.unshift(Lt),_t=hp(Lt)}}Qe.length>1&&c.reportDiagnostic(Nf(Ze?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,Ne===""?".":Ne,Te));for(let mt of Qe){let ht=Tt(mt);for(let _t of ht)if(Jh(_t,Ee,!met(c))){let Rt=Ee.slice(_t.length+1),Lt=Ro(mt,Rt),Ke=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let Pt of Ke)if(aA(Lt,Pt)){let _r=Yye(Lt);for(let Gt of _r){if(!ttn(s,Gt))continue;let nt=K2(Lt,Gt,Pt,!met(c));if(c.host.fileExists(nt))return h2(Rz(_,Aet(s,nt,void 0,!1,c),c))}}}}}return;function Tt(ot){var Qe,mt;let ht=c.compilerOptions.configFile?((mt=(Qe=c.host).getCurrentDirectory)==null?void 0:mt.call(Qe))||"":ot,_t=[];return c.compilerOptions.declarationDir&&_t.push(ge(Ie(ht,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&_t.push(ge(Ie(ht,c.compilerOptions.outDir))),_t}}}}function NEe(s,c){if(!s.includes("types")||!Ac(c,"types@"))return!1;let g=gt.tryParse(c.substring(6));return g?g.test(C):!1}function itn(s,c,g,d,h,_){return stn(s,c,g,d,!1,h,_)}function Evs(s,c,g){return stn(4,s,c,g,!0,void 0,void 0)}function stn(s,c,g,d,h,_,S){let R=d.features===0?void 0:d.features&32||d.conditions.includes("import")?99:1,T=s&5,W=s&-6;if(T){OP(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,R9e(T));let M=V(T);if(M)return M}if(W&&!h)return OP(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,R9e(W)),V(W);function V(M){let ee=Dp(g);if(LP(ee)){let re=lOt(_,c,R,ee,S,d);return re||h2(Svs(M,c,ee,d,h,_,S))}return vN(d.host,Dp(g),re=>{if(gp(re)!=="node_modules"){let ge=lOt(_,c,R,re,S,d);return ge||h2(otn(M,c,re,d,h,_,S))}})}}function vN(s,c,g){var d;let h=(d=s?.getGlobalTypingsCacheLocation)==null?void 0:d.call(s);return pE(c,_=>{let S=g(_);if(S!==void 0)return S;if(_===h)return!1})||void 0}function otn(s,c,g,d,h,_,S){let R=Ro(g,"node_modules"),T=f1(R,d.host);if(!T&&d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!h){let W=atn(s,c,R,T,d,_,S);if(W)return W}if(s&4){let W=Ro(R,"@types"),V=T;return T&&!f1(W,d.host)&&(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,W),V=!1),atn(4,cOt(c,d),W,V,d,_,S)}}function Svs(s,c,g,d,h,_,S){let R=Dp(g);if(!h){let T=utn(s,c,R,d,_,S);if(T)return T}if(s&4)return utn(4,`@types/${cOt(c,d)}`,R,d,_,S)}function atn(s,c,g,d,h,_,S){let R=iu(Ro(g,c)),{packageName:T,rest:W}=REe(c),V=Ro(g,T);return ctn(s,d,h,_,S,R,W,V)}function vvs(s,c,g,d,h,_){let S=iu(Ro(c,g));return ctn(s,!0,d,h,_,S,g,c)}function ctn(s,c,g,d,h,_,S,R){var T,W;let V,M=aQ(_,!c,g);if(S!==""&&M&&(!(g.features&8)||!Da(((T=V=aQ(R,!c,g))==null?void 0:T.contents.packageJsonContent)??E,"exports"))){let ge=Nie(s,_,!c,g);if(ge)return set(ge);let Ie=fet(s,_,!c,g,M);return Rz(M,Ie,g)}let ee=(ge,Ie,_e,Ee)=>{let Ne=(S||!(Ee.features&32))&&Nie(ge,Ie,_e,Ee)||fet(ge,Ie,_e,Ee,M);return!Ne&&!S&&M&&(M.contents.packageJsonContent.exports===void 0||M.contents.packageJsonContent.exports===null)&&Ee.features&32&&(Ne=Nie(ge,Ro(Ie,"index.js"),_e,Ee)),Rz(M,Ne,Ee)};if(S!==""&&(M=V??aQ(R,!c,g)),M&&(g.resolvedPackageDirectory=!0),M&&M.contents.packageJsonContent.exports&&g.features&8)return(W=Iet(M,s,Ro(".",S),g,d,h))==null?void 0:W.value;let re=S!==""&&M?etn(M,g):void 0;if(re){g.traceEnabled&&eu(g.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,C,S);let ge=c&&f1(R,g.host),Ie=$7(re.paths),_e=oOt(s,S,R,re.paths,Ie,ee,!ge,g);if(_e)return _e.value}return ee(s,_,!c,g)}function oOt(s,c,g,d,h,_,S,R){let T=Rbe(h,c);if(T){let W=Xs(T)?void 0:pw(T,c),V=Xs(T)?T:j1(T);return R.traceEnabled&&eu(R.host,Z.Module_name_0_matched_pattern_1,c,V),{value:F(d[V],ee=>{let re=W?R3(ee,W):ee,ge=iu(Ro(g,re));R.traceEnabled&&eu(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,ee,re);let Ie=QT(ee);if(Ie!==void 0){let _e=det(ge,S,R);if(_e!==void 0)return set({path:_e,ext:Ie,resolvedUsingTsExtension:void 0})}return _(s,ge,S||!f1(Mo(ge),R.host),R)})}}}var aOt="__";function cOt(s,c){let g=Die(s);return c.traceEnabled&&g!==s&&eu(c.host,Z.Scoped_package_detected_looking_in_0,g),g}function Z9e(s){return`@types/${Die(s)}`}function Die(s){if(Ac(s,"@")){let c=s.replace(ag,aOt);if(c!==s)return c.slice(1)}return s}function Ede(s){let c=Nm(s,"@types/");return c!==s?DEe(c):s}function DEe(s){return s.includes(aOt)?"@"+s.replace(aOt,ag):s}function lOt(s,c,g,d,h,_){let S=s&&s.getFromNonRelativeNameCache(c,g,d,h);if(S)return _.traceEnabled&&eu(_.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),_.resultFromCache=S,{value:S.resolvedModule&&{path:S.resolvedModule.resolvedFileName,originalPath:S.resolvedModule.originalPath||!0,extension:S.resolvedModule.extension,packageId:S.resolvedModule.packageId,resolvedUsingTsExtension:S.resolvedModule.resolvedUsingTsExtension}}}function uOt(s,c,g,d,h,_){let S=VP(g,d),R=[],T=[],W=Mo(c),V=[],M={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:W,reportDiagnostic:ge=>void V.push(ge),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},ee=re(5)||re(2|(g.resolveJsonModule?8:0));return Len(s,ee&&ee.value,ee?.value&&WP(ee.value.path),R,T,V,M,h);function re(ge){let Ie=Xen(ge,s,W,iOt,M);if(Ie)return{value:Ie};if(Xr(s)){let _e=iu(Ro(W,s));return h2(iOt(ge,_e,!1,M))}else{let _e=vN(M.host,W,Ee=>{let Ne=lOt(h,s,void 0,Ee,_,M);if(Ne)return Ne;let Te=iu(Ro(Ee,s));return h2(iOt(ge,Te,!1,M))});if(_e)return _e;if(ge&5){let Ee=Evs(s,W,M);return ge&4&&(Ee??(Ee=ltn(s,M))),Ee}}}}function ltn(s,c){if(c.compilerOptions.typeRoots)for(let g of c.compilerOptions.typeRoots){let d=Oen(g,s,c),h=f1(g,c.host);!h&&c.traceEnabled&&eu(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,g);let _=Nie(4,d,!h,c);if(_){let R=TEe(_.path),T=R?aQ(R,!1,c):void 0;return h2(Rz(T,_,c))}let S=sOt(4,d,!h,c);if(S)return h2(S)}}function kie(s,c){return rLe(s)||!!c&&PC(c)}function gOt(s,c,g,d,h,_){let S=VP(g,d);S&&eu(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,s,h);let R=[],T=[],W=[],V={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:_,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:ee=>void W.push(ee),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},M=otn(4,s,h,V,!1,void 0,void 0);return Ven(M,!0,R,T,W,V.resultFromCache,void 0)}function h2(s){return s!==void 0?{value:s}:void 0}function OP(s,c,...g){s.traceEnabled&&eu(s.host,c,...g)}function met(s){return s.host.useCaseSensitiveFileNames?typeof s.host.useCaseSensitiveFileNames=="boolean"?s.host.useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames():!0}function Bvs(s,c){try{let g=LP(c).resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1});return Dp(g).replace(/\/$/,"")}catch{}}function utn(s,c,g,d,h,_){let{packageName:S,rest:R}=REe(c),T=Bvs(S,g);return T?vvs(s,T,R,d,h,_):void 0}var AOt=(s=>(s[s.NonInstantiated=0]="NonInstantiated",s[s.Instantiated=1]="Instantiated",s[s.ConstEnumOnly=2]="ConstEnumOnly",s))(AOt||{});function PF(s,c){return s.body&&!s.body.parent&&(XA(s.body,s),UL(s.body,!1)),s.body?dOt(s.body,c):1}function dOt(s,c=new Map){let g=rd(s);if(c.has(g))return c.get(g)||0;c.set(g,void 0);let d=wvs(s,c);return c.set(g,d),d}function wvs(s,c){switch(s.kind){case 265:case 266:return 0;case 267:if(VA(s))return 2;break;case 273:case 272:if(!Ga(s,32))return 0;break;case 279:let g=s;if(!g.moduleSpecifier&&g.exportClause&&g.exportClause.kind===280){let d=0;for(let h of g.exportClause.elements){let _=Tvs(h,c);if(_>d&&(d=_),d===1)return d}return d}break;case 269:{let d=0;return Lu(s,h=>{let _=dOt(h,c);switch(_){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:pe.assertNever(_)}}),d}case 268:return PF(s,c);case 80:if(s.flags&4096)return 0}return 1}function Tvs(s,c){let g=s.propertyName||s.name;if(g.kind!==80)return 1;let d=s.parent;for(;d;){if($u(d)||_N(d)||ll(d)){let h=d.statements,_;for(let S of h)if(t3(S,g)){S.parent||(XA(S,d),UL(S,!1));let R=dOt(S,c);if((_===void 0||R>_)&&(_=R),_===1)return _;S.kind===272&&(_=1)}if(_!==void 0)return _}d=d.parent}return 1}var pOt=(s=>(s[s.None=0]="None",s[s.IsContainer=1]="IsContainer",s[s.IsBlockScopedContainer=2]="IsBlockScopedContainer",s[s.IsControlFlowContainer=4]="IsControlFlowContainer",s[s.IsFunctionLike=8]="IsFunctionLike",s[s.IsFunctionExpression=16]="IsFunctionExpression",s[s.HasLocals=32]="HasLocals",s[s.IsInterface=64]="IsInterface",s[s.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",s))(pOt||{});function rk(s,c,g){return pe.attachFlowNodeDebugInfo({flags:s,id:0,node:c,antecedent:g})}var Rvs=Nvs();function fOt(s,c){Mc("beforeBind"),Rvs(s,c),Mc("afterBind"),Pf("Bind","beforeBind","afterBind")}function Nvs(){var s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt=!1,ot=0,Qe,mt,ht=rk(1,void 0,void 0),_t=rk(1,void 0,void 0),Rt=xe();return Ke;function Lt(Fe,gr,...Ln){return _E(ms(Fe)||s,Fe,gr,...Ln)}function Ke(Fe,gr){var Ln,bs;s=Fe,c=gr,g=Mg(c),Ye=Pt(s,gr),mt=new Set,ot=0,Qe=ZC.getSymbolConstructor(),pe.attachFlowNodeDebugInfo(ht),pe.attachFlowNodeDebugInfo(_t),s.locals||((Ln=ki)==null||Ln.push(ki.Phase.Bind,"bindSourceFile",{path:s.path},!0),Ss(s),(bs=ki)==null||bs.pop(),s.symbolCount=ot,s.classifiableNames=mt,jp(),Xg()),s=void 0,c=void 0,g=void 0,d=void 0,h=void 0,_=void 0,S=void 0,R=void 0,T=void 0,V=void 0,W=!1,M=void 0,ee=void 0,re=void 0,ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Te=void 0,Ze=!1,We=!1,Ue=!1,Tt=!1,$e=0}function Pt(Fe,gr){return a_(gr,"alwaysStrict")&&!Fe.isDeclarationFile?!0:!!Fe.externalModuleIndicator}function _r(Fe,gr){return ot++,new Qe(Fe,gr)}function Gt(Fe,gr,Ln){Fe.flags|=Ln,gr.symbol=Fe,Fe.declarations=ps(Fe.declarations,gr),Ln&1955&&!Fe.exports&&(Fe.exports=qu()),Ln&6240&&!Fe.members&&(Fe.members=qu()),Fe.constEnumOnlyModule&&Fe.flags&304&&(Fe.constEnumOnlyModule=!1),Ln&111551&&S7(Fe,gr)}function nt(Fe){if(Fe.kind===278)return Fe.isExportEquals?"export=":"default";let gr=Il(Fe);if(gr){if(s_(Fe)){let Ln=c2(gr);return vB(Fe)?"__global":`"${Ln}"`}if(gr.kind===168){let Ln=gr.expression;if(d1(Ln))return Ap(Ln.text);if(_ne(Ln))return Vi(Ln.operator)+Ln.operand.text;pe.fail("Only computed properties with literal names have declaration names")}if(p(gr)){let Ln=hC(Fe);if(!Ln)return;let bs=Ln.symbol;return yne(bs,gr.escapedText)}return eR(gr)?oS(gr):Tw(gr)?qJ(gr):void 0}switch(Fe.kind){case 177:return"__constructor";case 185:case 180:case 324:return"__call";case 186:case 181:return"__new";case 182:return"__index";case 279:return"__export";case 308:return"export=";case 227:if(nI(Fe)===2)return"export=";pe.fail("Unknown binary declaration kind");break;case 318:return PY(Fe)?"__new":"__call";case 170:return pe.assert(Fe.parent.kind===318,"Impossible parameter parent kind",()=>`parent is: ${pe.formatSyntaxKind(Fe.parent.kind)}, expected JSDocFunctionType`),"arg"+Fe.parent.parameters.indexOf(Fe)}}function Dt(Fe){return rh(Fe)?Wd(Fe.name):Bc(pe.checkDefined(nt(Fe)))}function tr(Fe,gr,Ln,bs,Xl,eg,jl){pe.assert(jl||!XD(Ln));let Eu=Ga(Ln,2048)||R0(Ln)&&lv(Ln.name),Df=jl?"__computed":Eu&&gr?"default":nt(Ln),Jg;if(Df===void 0)Jg=_r(0,"__missing");else if(Jg=Fe.get(Df),bs&2885600&&mt.add(Df),!Jg)Fe.set(Df,Jg=_r(0,Df)),eg&&(Jg.isReplaceableByMethod=!0);else{if(eg&&!Jg.isReplaceableByMethod)return Jg;if(Jg.flags&Xl){if(Jg.isReplaceableByMethod)Fe.set(Df,Jg=_r(0,Df));else if(!(bs&3&&Jg.flags&67108864)){rh(Ln)&&XA(Ln.name,Ln);let MC=Jg.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,S1=!0;(Jg.flags&384||bs&384)&&(MC=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,S1=!1);let fS=!1;B(Jg.declarations)&&(Eu||Jg.declarations&&Jg.declarations.length&&Ln.kind===278&&!Ln.isExportEquals)&&(MC=Z.A_module_cannot_have_multiple_default_exports,S1=!1,fS=!0);let bv=[];FB(Ln)&&sf(Ln.type)&&Ga(Ln,32)&&Jg.flags&2887656&&bv.push(Lt(Ln,Z.Did_you_mean_0,`export type { ${Bc(Ln.name.escapedText)} }`));let XF=Il(Ln)||Ln;F(Jg.declarations,(My,sk)=>{let aR=Il(My)||My,WB=S1?Lt(aR,MC,Dt(My)):Lt(aR,MC);s.bindDiagnostics.push(fS?lg(WB,Lt(XF,sk===0?Z.Another_export_default_is_here:Z.and_here)):WB),fS&&bv.push(Lt(aR,Z.The_first_export_default_is_here))});let o9=S1?Lt(XF,MC,Dt(Ln)):Lt(XF,MC);s.bindDiagnostics.push(lg(o9,...bv)),Jg=_r(0,Df)}}}return Gt(Jg,Ln,bs),Jg.parent?pe.assert(Jg.parent===gr,"Existing symbol parent should match new one"):Jg.parent=gr,Jg}function ur(Fe,gr,Ln){let bs=!!(Hc(Fe)&32)||Gr(Fe);if(gr&2097152)return Fe.kind===282||Fe.kind===272&&bs?tr(h.symbol.exports,h.symbol,Fe,gr,Ln):(pe.assertNode(h,WI),tr(h.locals,void 0,Fe,gr,Ln));if(iS(Fe)&&pe.assert(wo(Fe)),!s_(Fe)&&(bs||h.flags&128)){if(!WI(h)||!h.locals||Ga(Fe,2048)&&!nt(Fe))return tr(h.symbol.exports,h.symbol,Fe,gr,Ln);let Xl=gr&111551?1048576:0,eg=tr(h.locals,void 0,Fe,Xl,Ln);return eg.exportSymbol=tr(h.symbol.exports,h.symbol,Fe,gr,Ln),Fe.localSymbol=eg,eg}else return pe.assertNode(h,WI),tr(h.locals,void 0,Fe,gr,Ln)}function Gr(Fe){if(Fe.parent&&xh(Fe)&&(Fe=Fe.parent),!iS(Fe))return!1;if(!aEe(Fe)&&Fe.fullName)return!0;let gr=Il(Fe);return gr?!!(BF(gr.parent)&&yv(gr.parent)||jh(gr.parent)&&Hc(gr.parent)&32):!1}function dt(Fe,gr){let Ln=h,bs=_,Xl=S,eg=We;if(Fe.kind===220&&Fe.body.kind!==242&&(We=!0),gr&1?(Fe.kind!==220&&(_=h),h=S=Fe,gr&32&&(h.locals=qu(),Ui(h))):gr&2&&(S=Fe,gr&32&&(S.locals=void 0)),gr&4){let jl=M,Eu=ee,Df=re,Jg=ge,MC=Ee,S1=Te,fS=Ze,bv=gr&16&&!Ga(Fe,1024)&&!Fe.asteriskToken&&!!ZL(Fe)||Fe.kind===176;bv||(M=rk(2,void 0,void 0),gr&144&&(M.node=Fe)),ge=bv||Fe.kind===177||wo(Fe)&&(Fe.kind===263||Fe.kind===219)?si():void 0,Ee=void 0,ee=void 0,re=void 0,Te=void 0,Ze=!1,zt(Fe),Fe.flags&=-5633,!(M.flags&1)&&gr&8&&u1(Fe.body)&&(Fe.flags|=512,Ze&&(Fe.flags|=1024),Fe.endFlowNode=M),Fe.kind===308&&(Fe.flags|=$e,Fe.endFlowNode=M),ge&&(Zn(ge,M),M=hc(ge),(Fe.kind===177||Fe.kind===176||wo(Fe)&&(Fe.kind===263||Fe.kind===219))&&(Fe.returnFlowNode=M)),bv||(M=jl),ee=Eu,re=Df,ge=Jg,Ee=MC,Te=S1,Ze=fS}else gr&64?(W=!1,zt(Fe),pe.assertNotNode(Fe,Ir),Fe.flags=W?Fe.flags|256:Fe.flags&-257):zt(Fe);We=eg,h=Ln,_=bs,S=Xl}function pr(Fe){st(Fe,gr=>gr.kind===263?Ss(gr):void 0),st(Fe,gr=>gr.kind!==263?Ss(gr):void 0)}function st(Fe,gr=Ss){Fe!==void 0&&F(Fe,gr)}function ir(Fe){Lu(Fe,Ss,st)}function zt(Fe){let gr=Tt;if(Tt=!1,ul(Fe)){UJ(Fe)&&Fe.flowNode&&(Fe.flowNode=void 0),ir(Fe),Uc(Fe),Tt=gr;return}switch(Fe.kind>=244&&Fe.kind<=260&&(!c.allowUnreachableCode||Fe.kind===254)&&(Fe.flowNode=M),Fe.kind){case 248:Tg(Fe);break;case 247:Cs(Fe);break;case 249:Tu(Fe);break;case 250:case 251:Pr(Fe);break;case 246:Pn(Fe);break;case 254:case 258:pt(Fe);break;case 253:case 252:nr(Fe);break;case 259:Fr(Fe);break;case 256:Kr(Fe);break;case 270:Dn(Fe);break;case 297:hr(Fe);break;case 245:Sn(Fe);break;case 257:Gi(Fe);break;case 225:Mt(Fe);break;case 226:cn(Fe);break;case 227:if(Dx(Fe)){Tt=gr,Bt(Fe);return}Rt(Fe);break;case 221:fr(Fe);break;case 228:Je(Fe);break;case 261:Hn(Fe);break;case 212:case 213:Wi(Fe);break;case 214:Vn(Fe);break;case 236:es(Fe);break;case 347:case 339:case 341:ao(Fe);break;case 352:Ys(Fe);break;case 308:{pr(Fe.statements),Ss(Fe.endOfFileToken);break}case 242:case 269:pr(Fe.statements);break;case 209:Ot(Fe);break;case 170:$r(Fe);break;case 211:case 210:case 304:case 231:Tt=gr;default:ir(Fe);break}Uc(Fe),Tt=gr}function Ht(Fe){switch(Fe.kind){case 80:case 110:return!0;case 212:case 213:return mn(Fe);case 214:return jn(Fe);case 218:if(sQ(Fe))return!1;case 236:return Ht(Fe.expression);case 227:return Ns(Fe);case 225:return Fe.operator===54&&Ht(Fe.operand);case 222:return Ht(Fe.expression)}return!1}function Br(Fe){switch(Fe.kind){case 80:case 110:case 108:case 237:return!0;case 212:case 218:case 236:return Br(Fe.expression);case 213:return(d1(Fe.argumentExpression)||Od(Fe.argumentExpression))&&Br(Fe.expression);case 227:return Fe.operatorToken.kind===28&&Br(Fe.right)||UD(Fe.operatorToken.kind)&&D_(Fe.left)}return!1}function mn(Fe){return Br(Fe)||GC(Fe)&&mn(Fe.expression)}function jn(Fe){if(Fe.arguments){for(let gr of Fe.arguments)if(mn(gr))return!0}return!!(Fe.expression.kind===212&&mn(Fe.expression.expression))}function Zi(Fe,gr){return CN(Fe)&&An(Fe.expression)&&mA(gr)}function Ns(Fe){switch(Fe.operatorToken.kind){case 64:case 76:case 77:case 78:return mn(Fe.left);case 35:case 36:case 37:case 38:let gr=QA(Fe.left),Ln=QA(Fe.right);return An(gr)||An(Ln)||Zi(Ln,gr)||Zi(gr,Ln)||hY(Ln)&&Ht(gr)||hY(gr)&&Ht(Ln);case 104:return An(Fe.left);case 103:return Ht(Fe.right);case 28:return Ht(Fe.right)}return!1}function An(Fe){switch(Fe.kind){case 218:return An(Fe.expression);case 227:switch(Fe.operatorToken.kind){case 64:return An(Fe.left);case 28:return An(Fe.right)}}return mn(Fe)}function si(){return rk(4,void 0,void 0)}function ks(){return rk(8,void 0,void 0)}function Ic(Fe,gr,Ln){return rk(1024,{target:Fe,antecedents:gr},Ln)}function su(Fe){Fe.flags|=Fe.flags&2048?4096:2048}function Zn(Fe,gr){!(gr.flags&1)&&!k(Fe.antecedent,gr)&&((Fe.antecedent||(Fe.antecedent=[])).push(gr),su(gr))}function ya(Fe,gr,Ln){return gr.flags&1?gr:Ln?(Ln.kind===112&&Fe&64||Ln.kind===97&&Fe&32)&&!gY(Ln)&&!IJ(Ln.parent)?ht:Ht(Ln)?(su(gr),rk(Fe,Ln,gr)):gr:Fe&32?gr:ht}function Gl(Fe,gr,Ln,bs){return su(Fe),rk(128,{switchStatement:gr,clauseStart:Ln,clauseEnd:bs},Fe)}function ba(Fe,gr,Ln){su(gr),Ue=!0;let bs=rk(Fe,Ln,gr);return Ee&&Zn(Ee,bs),bs}function Wo(Fe,gr){return su(Fe),Ue=!0,rk(512,gr,Fe)}function hc(Fe){let gr=Fe.antecedent;return gr?gr.length===1?gr[0]:Fe:ht}function yr(Fe){let gr=Fe.parent;switch(gr.kind){case 246:case 248:case 247:return gr.expression===Fe;case 249:case 228:return gr.condition===Fe}return!1}function hn(Fe){for(;;)if(Fe.kind===218)Fe=Fe.expression;else if(Fe.kind===225&&Fe.operator===54)Fe=Fe.operand;else return Dne(Fe)}function Oi(Fe){return AAe(QA(Fe))}function lo(Fe){for(;gI(Fe.parent)||T0(Fe.parent)&&Fe.parent.operator===54;)Fe=Fe.parent;return!yr(Fe)&&!hn(Fe.parent)&&!(GC(Fe.parent)&&Fe.parent.expression===Fe)}function pa(Fe,gr,Ln,bs){let Xl=Ie,eg=_e;Ie=Ln,_e=bs,Fe(gr),Ie=Xl,_e=eg}function Oa(Fe,gr,Ln){pa(Ss,Fe,gr,Ln),(!Fe||!Oi(Fe)&&!hn(Fe)&&!(GC(Fe)&&i3(Fe)))&&(Zn(gr,ya(32,M,Fe)),Zn(Ln,ya(64,M,Fe)))}function tl(Fe,gr,Ln){let bs=ee,Xl=re;ee=gr,re=Ln,Ss(Fe),ee=bs,re=Xl}function Qu(Fe,gr){let Ln=Te;for(;Ln&&Fe.parent.kind===257;)Ln.continueTarget=gr,Ln=Ln.next,Fe=Fe.parent;return gr}function Tg(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si();Zn(gr,M),M=gr,Oa(Fe.expression,Ln,bs),M=hc(Ln),tl(Fe.statement,bs,gr),Zn(gr,M),M=hc(bs)}function Cs(Fe){let gr=ks(),Ln=Qu(Fe,si()),bs=si();Zn(gr,M),M=gr,tl(Fe.statement,bs,Ln),Zn(Ln,M),M=hc(Ln),Oa(Fe.expression,gr,bs),M=hc(bs)}function Tu(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si(),Xl=si();Ss(Fe.initializer),Zn(gr,M),M=gr,Oa(Fe.condition,Ln,Xl),M=hc(Ln),tl(Fe.statement,Xl,bs),Zn(bs,M),M=hc(bs),Ss(Fe.incrementor),Zn(gr,M),M=hc(Xl)}function Pr(Fe){let gr=Qu(Fe,ks()),Ln=si();Ss(Fe.expression),Zn(gr,M),M=gr,Fe.kind===251&&Ss(Fe.awaitModifier),Zn(Ln,M),Ss(Fe.initializer),Fe.initializer.kind!==262&&En(Fe.initializer),tl(Fe.statement,Ln,gr),Zn(gr,M),M=hc(Ln)}function Pn(Fe){let gr=si(),Ln=si(),bs=si();Oa(Fe.expression,gr,Ln),M=hc(gr),Ss(Fe.thenStatement),Zn(bs,M),M=hc(Ln),Ss(Fe.elseStatement),Zn(bs,M),M=hc(bs)}function pt(Fe){let gr=We;We=!0,Ss(Fe.expression),We=gr,Fe.kind===254&&(Ze=!0,ge&&Zn(ge,M)),M=ht,Ue=!0}function on(Fe){for(let gr=Te;gr;gr=gr.next)if(gr.name===Fe)return gr}function it(Fe,gr,Ln){let bs=Fe.kind===253?gr:Ln;bs&&(Zn(bs,M),M=ht,Ue=!0)}function nr(Fe){if(Ss(Fe.label),Fe.label){let gr=on(Fe.label.escapedText);gr&&(gr.referenced=!0,it(Fe,gr.breakTarget,gr.continueTarget))}else it(Fe,ee,re)}function Fr(Fe){let gr=ge,Ln=Ee,bs=si(),Xl=si(),eg=si();if(Fe.finallyBlock&&(ge=Xl),Zn(eg,M),Ee=eg,Ss(Fe.tryBlock),Zn(bs,M),Fe.catchClause&&(M=hc(eg),eg=si(),Zn(eg,M),Ee=eg,Ss(Fe.catchClause),Zn(bs,M)),ge=gr,Ee=Ln,Fe.finallyBlock){let jl=si();jl.antecedent=Nn(Nn(bs.antecedent,eg.antecedent),Xl.antecedent),M=jl,Ss(Fe.finallyBlock),M.flags&1?M=ht:(ge&&Xl.antecedent&&Zn(ge,Ic(jl,Xl.antecedent,M)),Ee&&eg.antecedent&&Zn(Ee,Ic(jl,eg.antecedent,M)),M=bs.antecedent?Ic(jl,bs.antecedent,M):ht)}else M=hc(bs)}function Kr(Fe){let gr=si();Ss(Fe.expression);let Ln=ee,bs=Ne;ee=gr,Ne=M,Ss(Fe.caseBlock),Zn(gr,M);let Xl=F(Fe.caseBlock.clauses,eg=>eg.kind===298);Fe.possiblyExhaustive=!Xl&&!gr.antecedent,Xl||Zn(gr,Gl(Ne,Fe,0,0)),ee=Ln,Ne=bs,M=hc(gr)}function Dn(Fe){let gr=Fe.clauses,Ln=Fe.parent.expression.kind===112||Ht(Fe.parent.expression),bs=ht;for(let Xl=0;XlGh(Ln)||Cf(Ln))}function gg(Fe){Fe.flags&33554432&&!mc(Fe)?Fe.flags|=128:Fe.flags&=-129}function Ag(Fe){if(gg(Fe),s_(Fe))if(Ga(Fe,32)&&ni(Fe,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),Jre(Fe))_u(Fe);else{let gr;if(Fe.name.kind===11){let{text:bs}=Fe.name;gr=UY(bs),gr===void 0&&ni(Fe.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,bs)}let Ln=gs(Fe,512,110735);s.patternAmbientModules=Ft(s.patternAmbientModules,gr&&!Xs(gr)?{pattern:gr,symbol:Ln}:void 0)}else{let gr=_u(Fe);if(gr!==0){let{symbol:Ln}=Fe;Ln.constEnumOnlyModule=!(Ln.flags&304)&&gr===2&&Ln.constEnumOnlyModule!==!1}}}function _u(Fe){let gr=PF(Fe),Ln=gr!==0;return gs(Fe,Ln?512:1024,Ln?110735:0),gr}function wI(Fe){let gr=_r(131072,nt(Fe));Gt(gr,Fe,131072);let Ln=_r(2048,"__type");Gt(Ln,Fe,2048),Ln.members=qu(),Ln.members.set(gr.escapedName,gr)}function AI(Fe){return yu(Fe,4096,"__object")}function pp(Fe){return yu(Fe,4096,"__jsxAttributes")}function Dl(Fe,gr,Ln){return gs(Fe,gr,Ln)}function yu(Fe,gr,Ln){let bs=_r(gr,Ln);return gr&106508&&(bs.parent=h.symbol),Gt(bs,Fe,gr),bs}function tm(Fe,gr,Ln){switch(S.kind){case 268:ur(Fe,gr,Ln);break;case 308:if(vl(h)){ur(Fe,gr,Ln);break}default:pe.assertNode(S,WI),S.locals||(S.locals=qu(),Ui(S)),tr(S.locals,void 0,Fe,gr,Ln)}}function jp(){if(!T)return;let Fe=h,gr=R,Ln=S,bs=d,Xl=M;for(let eg of T){let jl=eg.parent.parent;h=f7(jl)||s,S=tS(jl)||s,M=rk(2,void 0,void 0),d=eg,Ss(eg.typeExpression);let Eu=Il(eg);if((aEe(eg)||!eg.fullName)&&Eu&&BF(Eu.parent)){let Df=yv(Eu.parent);if(Df){E1(s.symbol,Eu.parent,Df,!!ji(Eu,MC=>jo(MC)&&MC.name.escapedText==="prototype"),!1);let Jg=h;switch(XJ(Eu.parent)){case 1:case 2:vl(s)?h=s:h=void 0;break;case 4:h=Eu.parent.expression;break;case 3:h=Eu.parent.expression.name;break;case 5:h=cQ(s,Eu.parent.expression)?s:jo(Eu.parent.expression)?Eu.parent.expression.name:Eu.parent.expression;break;case 0:return pe.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}h&&ur(eg,524288,788968),h=Jg}}else aEe(eg)||!eg.fullName||eg.fullName.kind===80?(d=eg.parent,tm(eg,524288,788968)):Ss(eg.fullName)}h=Fe,R=gr,S=Ln,d=bs,M=Xl}function Xg(){if(V===void 0)return;let Fe=h,gr=R,Ln=S,bs=d,Xl=M;for(let eg of V){let jl=bP(eg),Eu=jl?f7(jl):void 0,Df=jl?tS(jl):void 0;h=Eu||s,S=Df||s,M=rk(2,void 0,void 0),d=eg,Ss(eg.importClause)}h=Fe,R=gr,S=Ln,d=bs,M=Xl}function sh(Fe){if(!s.parseDiagnostics.length&&!(Fe.flags&33554432)&&!(Fe.flags&16777216)&&!bZe(Fe)){let gr=iv(Fe);if(gr===void 0)return;Ye&&gr>=119&&gr<=127?s.bindDiagnostics.push(Lt(Fe,dS(Fe),Wd(Fe))):gr===135?xm(s)&&Hge(Fe)?s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Wd(Fe))):Fe.flags&65536&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Wd(Fe))):gr===127&&Fe.flags&16384&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Wd(Fe)))}}function dS(Fe){return hC(Fe)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function gu(Fe){Fe.escapedText==="#constructor"&&(s.parseDiagnostics.length||s.bindDiagnostics.push(Lt(Fe,Z.constructor_is_a_reserved_word,Wd(Fe))))}function bg(Fe){Ye&&D_(Fe.left)&&UD(Fe.operatorToken.kind)&&$d(Fe,Fe.left)}function KA(Fe){Ye&&Fe.variableDeclaration&&$d(Fe,Fe.variableDeclaration.name)}function TA(Fe){if(Ye&&Fe.expression.kind===80){let gr=qa(s,Fe.expression);s.bindDiagnostics.push(qh(s,gr.start,gr.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function oi(Fe){return Ir(Fe)&&(Fe.escapedText==="eval"||Fe.escapedText==="arguments")}function $d(Fe,gr){if(gr&&gr.kind===80){let Ln=gr;if(oi(Ln)){let bs=qa(s,gr);s.bindDiagnostics.push(qh(s,bs.start,bs.length,YI(Fe),Vo(Ln)))}}}function YI(Fe){return hC(Fe)?Z.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:s.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function Fh(Fe){Ye&&!(Fe.flags&33554432)&&$d(Fe,Fe.name)}function WC(Fe){return hC(Fe)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function _f(Fe){if(g<2&&S.kind!==308&&S.kind!==268&&!s3(S)){let gr=qa(s,Fe);s.bindDiagnostics.push(qh(s,gr.start,gr.length,WC(Fe)))}}function QI(Fe){Ye&&$d(Fe,Fe.operand)}function ve(Fe){Ye&&(Fe.operator===46||Fe.operator===47)&&$d(Fe,Fe.operand)}function mr(Fe){Ye&&ni(Fe,Z.with_statements_are_not_allowed_in_strict_mode)}function ln(Fe){Ye&&Mg(c)>=2&&(gge(Fe.statement)||Ch(Fe.statement))&&ni(Fe.label,Z.A_label_is_not_allowed_here)}function ni(Fe,gr,...Ln){let bs=rs(s,Fe.pos);s.bindDiagnostics.push(qh(s,bs.start,bs.length,gr,...Ln))}function Ls(Fe,gr,Ln){Za(Fe,gr,gr,Ln)}function Za(Fe,gr,Ln,bs){Go(Fe,{pos:MD(gr,s),end:Ln.end},bs)}function Go(Fe,gr,Ln){let bs=qh(s,gr.pos,gr.end-gr.pos,Ln);Fe?s.bindDiagnostics.push(bs):s.bindSuggestionDiagnostics=Ft(s.bindSuggestionDiagnostics,{...bs,category:2})}function Ss(Fe){if(!Fe)return;XA(Fe,d),ki&&(Fe.tracingPath=s.path);let gr=Ye;if(Lg(Fe),Fe.kind>166){let Ln=d;d=Fe;let bs=Cet(Fe);bs===0?zt(Fe):dt(Fe,bs),d=Ln}else{let Ln=d;Fe.kind===1&&(d=Fe),Uc(Fe),d=Ln}Ye=gr}function Uc(Fe){if(Xm(Fe))if(wo(Fe))for(let gr of Fe.jsDoc)Ss(gr);else for(let gr of Fe.jsDoc)XA(gr,Fe),UL(gr,!1)}function rl(Fe){if(!Ye)for(let gr of Fe){if(!nS(gr))return;if(xd(gr)){Ye=!0;return}}}function xd(Fe){let gr=mF(s,Fe.expression);return gr==='"use strict"'||gr==="'use strict'"}function Lg(Fe){switch(Fe.kind){case 80:if(Fe.flags&4096){let jl=Fe.parent;for(;jl&&!iS(jl);)jl=jl.parent;tm(jl,524288,788968);break}case 110:return M&&(un(Fe)||d.kind===305)&&(Fe.flowNode=M),sh(Fe);case 167:M&&Xge(Fe)&&(Fe.flowNode=M);break;case 237:case 108:Fe.flowNode=M;break;case 81:return gu(Fe);case 212:case 213:let gr=Fe;M&&Br(gr)&&(gr.flowNode=M),Sye(gr)&&hm(gr),wo(gr)&&s.commonJsModuleIndicator&&cN(gr)&&!L9e(S,"module")&&tr(s.locals,void 0,gr.expression,134217729,111550);break;case 227:switch(nI(Fe)){case 1:qn(Fe);break;case 2:Js(Fe);break;case 3:XI(Fe.left,Fe);break;case 6:af(Fe);break;case 4:RA(Fe);break;case 5:let jl=Fe.left.expression;if(wo(Fe)&&Ir(jl)){let Eu=L9e(S,jl.escapedText);if(Yge(Eu?.valueDeclaration)){RA(Fe);break}}d_(Fe);break;case 0:break;default:pe.fail("Unknown binary expression special property assignment kind")}return bg(Fe);case 300:return KA(Fe);case 221:return TA(Fe);case 226:return QI(Fe);case 225:return ve(Fe);case 255:return mr(Fe);case 257:return ln(Fe);case 198:W=!0;return;case 183:break;case 169:return wa(Fe);case 170:return en(Fe);case 261:return at(Fe);case 209:return Fe.flowNode=M,at(Fe);case 173:case 172:return yf(Fe);case 304:case 305:return ys(Fe,4,0);case 307:return ys(Fe,8,900095);case 180:case 181:case 182:return gs(Fe,131072,0);case 175:case 174:return ys(Fe,8192|(Fe.questionToken?16777216:0),a2(Fe)?0:103359);case 263:return gi(Fe);case 177:return gs(Fe,16384,0);case 178:return ys(Fe,32768,46015);case 179:return ys(Fe,65536,78783);case 185:case 318:case 324:case 186:return wI(Fe);case 188:case 323:case 201:return rm(Fe);case 333:return Bs(Fe);case 211:return AI(Fe);case 219:case 220:return _i(Fe);case 214:switch(nI(Fe)){case 7:return C2(Fe);case 8:return or(Fe);case 9:return dI(Fe);case 0:break;default:return pe.fail("Unknown call expression assignment declaration kind")}wo(Fe)&&oR(Fe);break;case 232:case 264:return Ye=!0,pS(Fe);case 265:return tm(Fe,64,788872);case 266:return tm(Fe,524288,788968);case 267:return xN(Fe);case 268:return Ag(Fe);case 293:return pp(Fe);case 292:return Dl(Fe,4,0);case 272:case 275:case 277:case 282:return gs(Fe,2097152,2097152);case 271:return b1(Fe);case 274:return m2(Fe);case 279:return Z_(Fe);case 278:return oh(Fe);case 308:return rl(Fe.statements),_h();case 242:if(!s3(Fe.parent))return;case 269:return rl(Fe.statements);case 342:if(Fe.parent.kind===324)return en(Fe);if(Fe.parent.kind!==323)break;case 349:let Xl=Fe,eg=Xl.isBracketed||Xl.typeExpression&&Xl.typeExpression.type.kind===317?16777220:4;return gs(Xl,eg,0);case 347:case 339:case 341:return(T||(T=[])).push(Fe);case 340:return Ss(Fe.typeExpression);case 352:return(V||(V=[])).push(Fe)}}function yf(Fe){let gr=t0(Fe),Ln=gr?98304:4,bs=gr?13247:0;return ys(Fe,Ln|(Fe.questionToken?16777216:0),bs)}function rm(Fe){return yu(Fe,2048,"__type")}function _h(){if(gg(s),xm(s))Gp();else if(Zu(s)){Gp();let Fe=s.symbol;tr(s.symbol.exports,s.symbol,s,4,-1),s.symbol=Fe}}function Gp(){yu(s,512,`"${s0(s.fileName)}"`)}function oh(Fe){if(!h.symbol||!h.symbol.exports)yu(Fe,111551,nt(Fe));else{let gr=hne(Fe)?2097152:4,Ln=tr(h.symbol.exports,h.symbol,Fe,gr,-1);Fe.isExportEquals&&S7(Ln,Fe)}}function b1(Fe){jt(Fe.modifiers)&&s.bindDiagnostics.push(Lt(Fe,Z.Modifiers_cannot_appear_here));let gr=ll(Fe.parent)?xm(Fe.parent)?Fe.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;gr?s.bindDiagnostics.push(Lt(Fe,gr)):(s.symbol.globalExports=s.symbol.globalExports||qu(),tr(s.symbol.globalExports,s.symbol,Fe,2097152,2097152))}function Z_(Fe){!h.symbol||!h.symbol.exports?yu(Fe,8388608,nt(Fe)):Fe.exportClause?tk(Fe.exportClause)&&(XA(Fe.exportClause,Fe),tr(h.symbol.exports,h.symbol,Fe.exportClause,2097152,2097152)):tr(h.symbol.exports,h.symbol,Fe,8388608,0)}function m2(Fe){Fe.name&&gs(Fe,2097152,2097152)}function Vb(Fe){return s.externalModuleIndicator&&s.externalModuleIndicator!==!0?!1:(s.commonJsModuleIndicator||(s.commonJsModuleIndicator=Fe,s.externalModuleIndicator||Gp()),!0)}function or(Fe){if(!Vb(Fe))return;let gr=qm(Fe.arguments[0],void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));gr&&tr(gr.exports,gr,Fe,1048580,0)}function qn(Fe){if(!Vb(Fe))return;let gr=qm(Fe.left.expression,void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));if(gr){let bs=eAe(Fe.right)&&(p3(Fe.left.expression)||cN(Fe.left.expression))?2097152:1048580;XA(Fe.left,Fe),tr(gr.exports,gr,Fe.left,bs,0)}}function Js(Fe){if(!Vb(Fe))return;let gr=cne(Fe.right);if(nbe(gr)||h===s&&cQ(s,gr))return;if(og(gr)&&ue(gr.properties,a0)){F(gr.properties,Hl);return}let Ln=hne(Fe)?2097152:1049092,bs=tr(s.symbol.exports,s.symbol,Fe,Ln|67108864,0);S7(bs,Fe)}function Hl(Fe){tr(s.symbol.exports,s.symbol,Fe,69206016,0)}function RA(Fe){if(pe.assert(wo(Fe)),fo(Fe)&&jo(Fe.left)&&p(Fe.left.name)||jo(Fe)&&p(Fe.name))return;let Ln=r0(Fe,!1,!1);switch(Ln.kind){case 263:case 219:let bs=Ln.symbol;if(fo(Ln.parent)&&Ln.parent.operatorToken.kind===64){let jl=Ln.parent.left;yP(jl)&&wF(jl.expression)&&(bs=Pb(jl.expression.expression,_))}bs&&bs.valueDeclaration&&(bs.members=bs.members||qu(),XD(Fe)?NA(Fe,bs,bs.members):tr(bs.members,bs,Fe,67108868,0),Gt(bs,bs.valueDeclaration,32));break;case 177:case 173:case 175:case 178:case 179:case 176:let Xl=Ln.parent,eg=cg(Ln)?Xl.symbol.exports:Xl.symbol.members;XD(Fe)?NA(Fe,Xl.symbol,eg):tr(eg,Xl.symbol,Fe,67108868,0,!0);break;case 308:if(XD(Fe))break;Ln.commonJsModuleIndicator?tr(Ln.symbol.exports,Ln.symbol,Fe,1048580,0):gs(Fe,1,111550);break;case 268:break;default:pe.failBadSyntaxKind(Ln)}}function NA(Fe,gr,Ln){tr(Ln,gr,Fe,4,0,!0,!0),uA(Fe,gr)}function uA(Fe,gr){gr&&(gr.assignmentDeclarationMembers||(gr.assignmentDeclarationMembers=new Map)).set(rd(Fe),Fe)}function hm(Fe){Fe.expression.kind===110?RA(Fe):yP(Fe)&&Fe.parent.parent.kind===308&&(wF(Fe.expression)?XI(Fe,Fe.parent):OC(Fe))}function af(Fe){XA(Fe.left,Fe),XA(Fe.right,Fe),ik(Fe.left.expression,Fe.left,!1,!0)}function dI(Fe){let gr=Pb(Fe.arguments[0].expression);gr&&gr.valueDeclaration&&Gt(gr,gr.valueDeclaration,32),gy(Fe,gr,!0)}function XI(Fe,gr){let Ln=Fe.expression,bs=Ln.expression;XA(bs,Ln),XA(Ln,Fe),XA(Fe,gr),ik(bs,Fe,!0,!0)}function C2(Fe){let gr=Pb(Fe.arguments[0]),Ln=Fe.parent.parent.kind===308;gr=E1(gr,Fe.arguments[0],Ln,!1,!1),gy(Fe,gr,!1)}function d_(Fe){var gr;let Ln=Pb(Fe.left.expression,S)||Pb(Fe.left.expression,h);if(!wo(Fe)&&!pZe(Ln))return;let bs=oU(Fe.left);if(!(Ir(bs)&&((gr=L9e(h,bs.escapedText))==null?void 0:gr.flags)&2097152))if(XA(Fe.left,Fe),XA(Fe.right,Fe),Ir(Fe.left.expression)&&h===s&&cQ(s,Fe.left.expression))qn(Fe);else if(XD(Fe)){yu(Fe,67108868,"__computed");let Xl=E1(Ln,Fe.left.expression,yv(Fe.left),!1,!1);uA(Fe,Xl)}else OC(Ma(Fe.left,I3))}function OC(Fe){pe.assert(!Ir(Fe)),XA(Fe.expression,Fe),ik(Fe.expression,Fe,!1,!1)}function E1(Fe,gr,Ln,bs,Xl){return Fe?.flags&2097152||(Ln&&!bs&&(Fe=qm(gr,Fe,(Eu,Df,Jg)=>{if(Df)return Gt(Df,Eu,67110400),Df;{let MC=Jg?Jg.exports:s.jsGlobalAugmentations||(s.jsGlobalAugmentations=qu());return tr(MC,Jg,Eu,67110400,110735)}})),Xl&&Fe&&Fe.valueDeclaration&&Gt(Fe,Fe.valueDeclaration,32)),Fe}function gy(Fe,gr,Ln){if(!gr||!Wx(gr))return;let bs=Ln?gr.members||(gr.members=qu()):gr.exports||(gr.exports=qu()),Xl=0,eg=0;kd(FY(Fe))?(Xl=8192,eg=103359):Zl(Fe)&&f3(Fe)&&(jt(Fe.arguments[2].properties,jl=>{let Eu=Il(jl);return!!Eu&&Ir(Eu)&&Vo(Eu)==="set"})&&(Xl|=65540,eg|=78783),jt(Fe.arguments[2].properties,jl=>{let Eu=Il(jl);return!!Eu&&Ir(Eu)&&Vo(Eu)==="get"})&&(Xl|=32772,eg|=46015)),Xl===0&&(Xl=4,eg=0),tr(bs,gr,Fe,Xl|67108864,eg&-67108865)}function yv(Fe){return fo(Fe.parent)?Ox(Fe.parent).parent.kind===308:Fe.parent.parent.kind===308}function ik(Fe,gr,Ln,bs){let Xl=Pb(Fe,S)||Pb(Fe,h),eg=yv(gr);Xl=E1(Xl,gr.expression,eg,Ln,bs),gy(gr,Xl,Ln)}function Wx(Fe){if(Fe.flags&1072)return!0;let gr=Fe.valueDeclaration;if(gr&&Zl(gr))return!!FY(gr);let Ln=gr?nc(gr)?gr.initializer:fo(gr)?gr.right:jo(gr)&&fo(gr.parent)?gr.parent.right:void 0:void 0;if(Ln=Ln&&cne(Ln),Ln){let bs=wF(nc(gr)?gr.name:fo(gr)?gr.left:gr);return!!VL(fo(Ln)&&(Ln.operatorToken.kind===57||Ln.operatorToken.kind===61)?Ln.right:Ln,bs)}return!1}function Ox(Fe){for(;fo(Fe.parent);)Fe=Fe.parent;return Fe.parent}function Pb(Fe,gr=h){if(Ir(Fe))return L9e(gr,Fe.escapedText);{let Ln=Pb(Fe.expression);return Ln&&Ln.exports&&Ln.exports.get(YD(Fe))}}function qm(Fe,gr,Ln){if(cQ(s,Fe))return s.symbol;if(Ir(Fe))return Ln(Fe,Pb(Fe),gr);{let bs=qm(Fe.expression,gr,Ln),Xl=lne(Fe);return p(Xl)&&pe.fail("unexpected PrivateIdentifier"),Ln(Xl,bs&&bs.exports&&bs.exports.get(YD(Fe)),bs)}}function oR(Fe){!s.commonJsModuleIndicator&&ay(Fe,!1)&&Vb(Fe)}function pS(Fe){if(Fe.kind===264)tm(Fe,32,899503);else{let Xl=Fe.name?Fe.name.escapedText:"__class";yu(Fe,32,Xl),Fe.name&&mt.add(Fe.name.escapedText)}let{symbol:gr}=Fe,Ln=_r(4194308,"prototype"),bs=gr.exports.get(Ln.escapedName);bs&&(Fe.name&&XA(Fe.name,Fe),s.bindDiagnostics.push(Lt(bs.declarations[0],Z.Duplicate_identifier_0,nf(Ln)))),gr.exports.set(Ln.escapedName,Ln),Ln.parent=gr}function xN(Fe){return VA(Fe)?tm(Fe,128,899967):tm(Fe,256,899327)}function at(Fe){if(Ye&&$d(Fe,Fe.name),!Nu(Fe.name)){let gr=Fe.kind===261?Fe:Fe.parent.parent;wo(Fe)&&CP(gr)&&!ov(Fe)&&!(Hc(Fe)&32)?gs(Fe,2097152,2097152):ZJ(Fe)?tm(Fe,2,111551):HL(Fe)?gs(Fe,1,111551):gs(Fe,1,111550)}}function en(Fe){if(!(Fe.kind===342&&h.kind!==324)&&(Ye&&!(Fe.flags&33554432)&&$d(Fe,Fe.name),Nu(Fe.name)?yu(Fe,1,"__"+Fe.parent.parameters.indexOf(Fe)):gs(Fe,1,111551),Ve(Fe,Fe.parent))){let gr=Fe.parent.parent;tr(gr.symbol.members,gr.symbol,Fe,4|(Fe.questionToken?16777216:0),0)}}function gi(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),Fh(Fe),Ye?(_f(Fe),tm(Fe,16,110991)):gs(Fe,16,110991)}function _i(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),M&&(Fe.flowNode=M),Fh(Fe);let gr=Fe.name?Fe.name.escapedText:"__function";return yu(Fe,16,gr)}function ys(Fe,gr,Ln){return!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),M&&Pge(Fe)&&(Fe.flowNode=M),XD(Fe)?yu(Fe,gr,"__computed"):gs(Fe,gr,Ln)}function eo(Fe){let gr=ji(Fe,Ln=>Ln.parent&&d2(Ln.parent)&&Ln.parent.extendsType===Ln);return gr&&gr.parent}function wa(Fe){if(ZB(Fe.parent)){let gr=qge(Fe.parent);gr?(pe.assertNode(gr,WI),gr.locals??(gr.locals=qu()),tr(gr.locals,void 0,Fe,262144,526824)):gs(Fe,262144,526824)}else if(Fe.parent.kind===196){let gr=eo(Fe.parent);gr?(pe.assertNode(gr,WI),gr.locals??(gr.locals=qu()),tr(gr.locals,void 0,Fe,262144,526824)):yu(Fe,262144,nt(Fe))}else gs(Fe,262144,526824)}function pc(Fe){let gr=PF(Fe);return gr===1||gr===2&&Fb(c)}function ul(Fe){if(!(M.flags&1))return!1;if(M===ht&&(vJ(Fe)&&Fe.kind!==243||Fe.kind===264||gtn(Fe,c)||Fe.kind===268&&pc(Fe))&&(M=_t,!c.allowUnreachableCode)){let Ln=iLe(c)&&!(Fe.flags&33554432)&&(!Ch(Fe)||!!(dm(Fe.declarationList)&7)||Fe.declarationList.declarations.some(bs=>!!bs.initializer));Dvs(Fe,c,(bs,Xl)=>Za(Ln,bs,Xl,Z.Unreachable_code_detected))}return!0}}function gtn(s,c){return s.kind===267&&(!VA(s)||Fb(c))}function Dvs(s,c,g){if(Lc(s)&&d(s)&&$u(s.parent)){let{statements:_}=s.parent,S=Nbe(_,s);Fn(S,d,(R,T)=>g(S[R],S[T-1]))}else g(s,s);function d(_){return!ih(_)&&!h(_)&&!(Ch(_)&&!(dm(_)&7)&&_.declarationList.declarations.some(S=>!S.initializer))}function h(_){switch(_.kind){case 265:case 266:return!0;case 268:return PF(_)!==1;case 267:return!gtn(_,c);default:return!1}}}function cQ(s,c){let g=0,d=oA();for(d.enqueue(c);!d.isEmpty()&&g<100;){if(g++,c=d.dequeue(),p3(c)||cN(c))return!0;if(Ir(c)){let h=L9e(s,c.escapedText);if(h&&h.valueDeclaration&&nc(h.valueDeclaration)&&h.valueDeclaration.initializer){let _=h.valueDeclaration.initializer;d.enqueue(_),Jm(_,!0)&&(d.enqueue(_.left),d.enqueue(_.right))}}}return!1}function Cet(s){switch(s.kind){case 232:case 264:case 267:case 211:case 188:case 323:case 293:return 1;case 265:return 65;case 268:case 266:case 201:case 182:return 33;case 308:return 37;case 178:case 179:case 175:if(Pge(s))return 173;case 177:case 263:case 174:case 180:case 324:case 318:case 185:case 181:case 186:case 176:return 45;case 352:return 37;case 219:case 220:return 61;case 269:return 4;case 173:return s.initializer?4:0;case 300:case 249:case 250:case 251:case 270:return 34;case 242:return bu(s.parent)||fl(s.parent)?0:34}return 0}function L9e(s,c){var g,d,h,_;let S=(d=(g=Gs(s,WI))==null?void 0:g.locals)==null?void 0:d.get(c);if(S)return S.exportSymbol??S;if(ll(s)&&s.jsGlobalAugmentations&&s.jsGlobalAugmentations.has(c))return s.jsGlobalAugmentations.get(c);if(mE(s))return(_=(h=s.symbol)==null?void 0:h.exports)==null?void 0:_.get(c)}function IOt(s,c,g,d,h,_,S,R,T,W){return V;function V(M=()=>!0){let ee=[],re=[];return{walkType:Tt=>{try{return ge(Tt),{visitedTypes:Qh(ee),visitedSymbols:Qh(re)}}finally{St(ee),St(re)}},walkSymbol:Tt=>{try{return Ye(Tt),{visitedTypes:Qh(ee),visitedSymbols:Qh(re)}}finally{St(ee),St(re)}}};function ge(Tt){if(!(!Tt||ee[Tt.id]||(ee[Tt.id]=Tt,Ye(Tt.symbol)))){if(Tt.flags&524288){let Qe=Tt,mt=Qe.objectFlags;mt&4&&Ie(Tt),mt&32&&Ze(Tt),mt&3&&Ue(Tt),mt&24&&$e(Qe)}Tt.flags&262144&&_e(Tt),Tt.flags&3145728&&Ee(Tt),Tt.flags&4194304&&Ne(Tt),Tt.flags&8388608&&Te(Tt)}}function Ie(Tt){ge(Tt.target),F(W(Tt),ge)}function _e(Tt){ge(R(Tt))}function Ee(Tt){F(Tt.types,ge)}function Ne(Tt){ge(Tt.type)}function Te(Tt){ge(Tt.objectType),ge(Tt.indexType),ge(Tt.constraint)}function Ze(Tt){ge(Tt.typeParameter),ge(Tt.constraintType),ge(Tt.templateType),ge(Tt.modifiersType)}function We(Tt){let ot=c(Tt);ot&&ge(ot.type),F(Tt.typeParameters,ge);for(let Qe of Tt.parameters)Ye(Qe);ge(s(Tt)),ge(g(Tt))}function Ue(Tt){$e(Tt),F(Tt.typeParameters,ge),F(d(Tt),ge),ge(Tt.thisType)}function $e(Tt){let ot=h(Tt);for(let Qe of ot.indexInfos)ge(Qe.keyType),ge(Qe.type);for(let Qe of ot.callSignatures)We(Qe);for(let Qe of ot.constructSignatures)We(Qe);for(let Qe of ot.properties)Ye(Qe)}function Ye(Tt){if(!Tt)return!1;let ot=kg(Tt);if(re[ot])return!1;if(re[ot]=Tt,!M(Tt))return!0;let Qe=_(Tt);return ge(Qe),Tt.exports&&Tt.exports.forEach(Ye),F(Tt.declarations,mt=>{if(mt.type&&mt.type.kind===187){let ht=mt.type,_t=S(T(ht.exprName));Ye(_t)}}),!1}}}var WF={};o(WF,{RelativePreference:()=>Atn,countPathComponents:()=>W9e,forEachFileNameOfModule:()=>mtn,getLocalModuleSpecifierBetweenFileNames:()=>Lvs,getModuleSpecifier:()=>Gvs,getModuleSpecifierPreferences:()=>kEe,getModuleSpecifiers:()=>ftn,getModuleSpecifiersWithCacheInfo:()=>Itn,getNodeModulesPackageName:()=>Fvs,tryGetJSExtensionForFile:()=>yet,tryGetModuleSpecifiersFromCache:()=>Zvs,tryGetRealFileNameForNonJsDeclarationFileName:()=>Etn,updateModuleSpecifier:()=>xvs});var kvs=ZA(s=>{try{let c=s.indexOf("/");if(c!==0)return new RegExp(s);let g=s.lastIndexOf("/");if(c===g)return new RegExp(s);for(;(c=s.indexOf("/",c+1))!==g;)if(s[c-1]!=="\\")return new RegExp(s);let d=s.substring(g+1).replace(/[^iu]/g,"");return s=s.substring(1,g),new RegExp(s,d)}catch{return}}),Atn=(s=>(s[s.Relative=0]="Relative",s[s.NonRelative=1]="NonRelative",s[s.Shortest=2]="Shortest",s[s.ExternalNonRelative=3]="ExternalNonRelative",s))(Atn||{});function kEe({importModuleSpecifierPreference:s,importModuleSpecifierEnding:c,autoImportSpecifierExcludeRegexes:g},d,h,_,S){let R=T();return{excludeRegexes:g,relativePreference:S!==void 0?Xr(S)?0:1:s==="relative"?0:s==="non-relative"?1:s==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:W=>{let V=bet(_,d,h),M=W!==V?T(W):R,ee=k_(h);if((W??V)===99&&3<=ee&&ee<=99)return kie(h,_.fileName)?[3,2]:[2];if(k_(h)===1)return M===2?[2,1]:[1,2];let re=kie(h,_.fileName);switch(M){case 2:return re?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return re?[1,0,3,2]:[1,0,2];case 0:return re?[0,1,3,2]:[0,1,2];default:pe.assertNever(M)}}};function T(W){if(S!==void 0){if(pN(S))return 2;if(di(S,"/index"))return 1}return ILe(c,W??bet(_,d,h),h,aN(_)?_:void 0)}}function xvs(s,c,g,d,h,_,S={}){let R=dtn(s,c,g,d,h,kEe({},h,s,c,_),{},S);if(R!==_)return R}function Gvs(s,c,g,d,h,_={}){return dtn(s,c,g,d,h,kEe({},h,s,c),{},_)}function Fvs(s,c,g,d,h,_={}){let S=P9e(c.fileName,d),R=Ctn(S,g,d,h,s,_);return X(R,T=>COt(T,S,c,d,s,h,!0,_.overrideImportMode))}function dtn(s,c,g,d,h,_,S,R={}){let T=P9e(g,h),W=Ctn(T,d,h,S,s,R);return X(W,V=>COt(V,T,c,h,s,S,void 0,R.overrideImportMode))||hOt(d,T,s,h,R.overrideImportMode||bet(c,h,s),_)}function Zvs(s,c,g,d,h={}){let _=ptn(s,c,g,d,h);return _[1]&&{kind:_[0],moduleSpecifiers:_[1],computedWithoutCache:!1}}function ptn(s,c,g,d,h={}){var _;let S=FJ(s);if(!S)return E;let R=(_=g.getModuleSpecifierCache)==null?void 0:_.call(g),T=R?.get(c.path,S.path,d,h);return[T?.kind,T?.moduleSpecifiers,S,T?.modulePaths,R]}function ftn(s,c,g,d,h,_,S={}){return Itn(s,c,g,d,h,_,S,!1).moduleSpecifiers}function Itn(s,c,g,d,h,_,S={},R){let T=!1,W=Mvs(s,c);if(W)return{kind:"ambient",moduleSpecifiers:R&&V9e(W,_.autoImportSpecifierExcludeRegexes)?E:[W],computedWithoutCache:T};let[V,M,ee,re,ge]=ptn(s,d,h,_,S);if(M)return{kind:V,moduleSpecifiers:M,computedWithoutCache:T};if(!ee)return{kind:void 0,moduleSpecifiers:E,computedWithoutCache:T};T=!0,re||(re=_tn(P9e(d.fileName,h),ee.originalFileName,h,g,S));let Ie=Vvs(re,g,d,h,_,S,R);return ge?.set(d.path,ee.path,_,S,Ie.kind,re,Ie.moduleSpecifiers),Ie}function Lvs(s,c,g,d,h,_={}){let S=P9e(s.fileName,d),R=_.overrideImportMode??s.impliedNodeFormat;return hOt(c,S,g,d,R,kEe(h,d,g,s))}function Vvs(s,c,g,d,h,_={},S){let R=P9e(g.fileName,d),T=kEe(h,d,c,g),W=aN(g)&&F(s,Ie=>F(d.getFileIncludeReasons().get(Ou(Ie.path,d.getCurrentDirectory(),R.getCanonicalFileName)),_e=>{if(_e.kind!==3||_e.file!==g.path)return;let Ee=d.getModeForResolutionAtIndex(g,_e.index),Ne=_.overrideImportMode??d.getDefaultResolutionModeForFile(g);if(Ee!==Ne&&Ee!==void 0&&Ne!==void 0)return;let Te=jEe(g,_e.index).text;return T.relativePreference!==1||!Ip(Te)?Te:void 0}));if(W)return{kind:void 0,moduleSpecifiers:[W],computedWithoutCache:!0};let V=jt(s,Ie=>Ie.isInNodeModules),M,ee,re,ge;for(let Ie of s){let _e=Ie.isInNodeModules?COt(Ie,R,g,d,c,h,void 0,_.overrideImportMode):void 0;if(_e&&!(S&&V9e(_e,T.excludeRegexes))&&(M=Ft(M,_e),Ie.isRedirect))return{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0};let Ee=hOt(Ie.path,R,c,d,_.overrideImportMode||g.impliedNodeFormat,T,Ie.isRedirect||!!_e);!Ee||S&&V9e(Ee,T.excludeRegexes)||(Ie.isRedirect?re=Ft(re,Ee):Xh(Ee)?WP(Ee)?ge=Ft(ge,Ee):ee=Ft(ee,Ee):(S||!V||Ie.isInNodeModules)&&(ge=Ft(ge,Ee)))}return ee?.length?{kind:"paths",moduleSpecifiers:ee,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:M?.length?{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:ge??E,computedWithoutCache:!0}}function V9e(s,c){return jt(c,g=>{var d;return!!((d=kvs(g))!=null&&d.test(s))})}function P9e(s,c){s=Xc(s,c.getCurrentDirectory());let g=_d(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=Mo(s);return{getCanonicalFileName:g,importingSourceFileName:s,sourceDirectory:d,canonicalSourceDirectory:g(d)}}function hOt(s,c,g,d,h,{getAllowedEndingsInPreferredOrder:_,relativePreference:S,excludeRegexes:R},T){let{baseUrl:W,paths:V,rootDirs:M}=g;if(T&&!V)return;let{sourceDirectory:ee,canonicalSourceDirectory:re,getCanonicalFileName:ge}=c,Ie=_(h),_e=M&&Qvs(M,s,ee,ge,Ie,g)||xEe(Am(mp(ee,s,ge)),Ie,g);if(!W&&!V&&!Pne(g)||S===0)return T?void 0:_e;let Ee=Xc(aAe(g,d)||W,d.getCurrentDirectory()),Ne=_Ot(s,Ee,ge);if(!Ne)return T?void 0:_e;let Te=T?void 0:Yvs(s,ee,g,d,h,Jvs(Ie)),Ze=T||Te===void 0?V&&ytn(Ne,V,Ie,Ee,ge,d,g):void 0;if(T)return Ze;let We=Te??(Ze===void 0&&W!==void 0?xEe(Ne,Ie,g):Ze);if(!We)return _e;let Ue=V9e(_e,R),$e=V9e(We,R);if(!Ue&&$e)return _e;if(Ue&&!$e||S===1&&!Ip(We))return We;if(S===3&&!Ip(We)){let Ye=g.configFilePath?Ou(Mo(g.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),Tt=Ou(s,Ye,ge),ot=Ac(re,Ye),Qe=Ac(Tt,Ye);if(ot&&!Qe||!ot&&Qe)return We;let mt=mOt(d,Mo(Tt)),ht=mOt(d,ee),_t=!y3(d);return Pvs(mt,ht,_t)?_e:We}return Stn(We)||W9e(_e)s.fileExists(Ro(g,"package.json"))?g:void 0)}function mtn(s,c,g,d,h){var _,S;let R=JD(g),T=g.getCurrentDirectory(),W=g.isSourceOfProjectReferenceRedirect(c)?(_=g.getRedirectFromSourceFile(c))==null?void 0:_.outputDts:void 0,V=Ou(c,T,R),M=g.redirectTargetsMap.get(V)||E,re=[...W?[W]:E,c,...M].map(Ne=>Xc(Ne,T)),ge=!ue(re,sz);if(!d){let Ne=F(re,Te=>!(ge&&sz(Te))&&h(Te,W===Te));if(Ne)return Ne}let Ie=(S=g.getSymlinkCache)==null?void 0:S.call(g).getSymlinkedDirectoriesByRealpath(),_e=Xc(c,T);return Ie&&vN(g,Mo(_e),Ne=>{let Te=Ie.get(hp(Ou(Ne,T,R)));if(Te)return $S(s,Ne,R)?!1:F(re,Ze=>{if(!$S(Ze,Ne,R))return;let We=mp(Ne,Ze,R);for(let Ue of Te){let $e=AE(Ue,We),Ye=h($e,Ze===W);if(ge=!0,Ye)return Ye}})})||(d?F(re,Ne=>ge&&sz(Ne)?void 0:h(Ne,Ne===W)):void 0)}function Ctn(s,c,g,d,h,_={}){var S;let R=Ou(s.importingSourceFileName,g.getCurrentDirectory(),JD(g)),T=Ou(c,g.getCurrentDirectory(),JD(g)),W=(S=g.getModuleSpecifierCache)==null?void 0:S.call(g);if(W){let M=W.get(R,T,d,_);if(M?.modulePaths)return M.modulePaths}let V=_tn(s,c,g,h,_);return W&&W.setModulePaths(R,T,d,_,V),V}var Wvs=["dependencies","peerDependencies","optionalDependencies"];function Ovs(s){let c;for(let g of Wvs){let d=s[g];d&&typeof d=="object"&&(c=Nn(c,_g(d)))}return c}function _tn(s,c,g,d,h){var _,S;let R=(_=g.getModuleResolutionCache)==null?void 0:_.call(g),T=(S=g.getSymlinkCache)==null?void 0:S.call(g);if(R&&T&&g.readFile&&!WP(s.importingSourceFileName)){pe.type(g);let ee=yde(R.getPackageJsonInfoCache(),g,{}),re=bde(Mo(s.importingSourceFileName),ee);if(re){let ge=Ovs(re.contents.packageJsonContent);for(let Ie of ge||E){let _e=BU(Ie,Ro(re.packageDirectory,"package.json"),d,g,R,void 0,h.overrideImportMode);T.setSymlinksFromResolution(_e.resolvedModule)}}}let W=new Map,V=!1;mtn(s.importingSourceFileName,c,g,!0,(ee,re)=>{let ge=WP(ee),Ie=LP(ee);if(!ge&&Ie){let _e=Ie.findPackageLocator(s.importingSourceFileName),Ee=Ie.findPackageLocator(ee);_e&&Ee&&_e!==Ee&&(ge=!0)}W.set(ee,{path:s.getCanonicalFileName(ee),isRedirect:re,isInNodeModules:ge}),V=V||ge});let M=[];for(let ee=s.canonicalSourceDirectory;W.size!==0;){let re=hp(ee),ge;W.forEach(({path:_e,isRedirect:Ee,isInNodeModules:Ne},Te)=>{Ac(_e,re)&&((ge||(ge=[])).push({path:Te,isRedirect:Ee,isInNodeModules:Ne}),W.delete(Te))}),ge&&(ge.length>1&&ge.sort(htn),M.push(...ge));let Ie=Mo(ee);if(Ie===ee)break;ee=Ie}if(W.size){let ee=Do(W.entries(),([re,{isRedirect:ge,isInNodeModules:Ie}])=>({path:re,isRedirect:ge,isInNodeModules:Ie}));ee.length>1&&ee.sort(htn),M.push(...ee)}return M}function Mvs(s,c){var g;let d=(g=s.declarations)==null?void 0:g.find(S=>Xre(S)&&(!_F(S)||!Xr(c2(S.name))));if(d)return d.name.text;let _=Xt(s.declarations,S=>{var R,T,W,V;if(!xh(S))return;let M=Ie(S);if(!((R=M?.parent)!=null&&R.parent&&_N(M.parent)&&s_(M.parent.parent)&&ll(M.parent.parent.parent)))return;let ee=(V=(W=(T=M.parent.parent.symbol.exports)==null?void 0:T.get("export="))==null?void 0:W.valueDeclaration)==null?void 0:V.expression;if(!ee)return;let re=c.getSymbolAtLocation(ee);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===S.symbol)return M.parent.parent;function Ie(_e){for(;_e.flags&8;)_e=_e.parent;return _e}})[0];if(_)return _.name.text}function ytn(s,c,g,d,h,_,S){for(let T in c)for(let W of c[T]){let V=iu(W),M=_Ot(V,d,h)??V,ee=M.indexOf("*"),re=g.map(ge=>({ending:ge,value:xEe(s,[ge],S)}));if(QT(M)&&re.push({ending:void 0,value:s}),ee!==-1){let ge=M.substring(0,ee),Ie=M.substring(ee+1);for(let{ending:_e,value:Ee}of re)if(Ee.length>=ge.length+Ie.length&&Ac(Ee,ge)&&di(Ee,Ie)&&R({ending:_e,value:Ee})){let Ne=Ee.substring(ge.length,Ee.length-Ie.length);if(!Ip(Ne))return R3(T,Ne)}}else if(jt(re,ge=>ge.ending!==0&&M===ge.value)||jt(re,ge=>ge.ending===0&&M===ge.value&&R(ge)))return T}function R({ending:T,value:W}){return T!==0||W===xEe(s,[T],S,_)}}function O9e(s,c,g,d,h,_,S,R,T,W){if(typeof _=="string"){let V=!y3(c),M=()=>c.getCommonSourceDirectory(),ee=T&&zet(g,s,V,M),re=T&&jet(g,s,V,M),ge=Xc(Ro(d,_),void 0),Ie=w3(g)?s0(g)+yet(g,s):void 0,_e=W&&pLe(g);switch(R){case 0:if(Ie&&qf(Ie,ge,V)===0||qf(g,ge,V)===0||ee&&qf(ee,ge,V)===0||re&&qf(re,ge,V)===0)return{moduleFileToTry:h};break;case 1:if(_e&&Jh(g,ge,V)){let Ze=mp(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(Ie&&Jh(ge,Ie,V)){let Ze=mp(ge,Ie,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(!_e&&Jh(ge,g,V)){let Ze=mp(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(ee&&Jh(ge,ee,V)){let Ze=mp(ge,ee,!1);return{moduleFileToTry:Ro(h,Ze)}}if(re&&Jh(ge,re,V)){let Ze=i_(mp(ge,re,!1),_et(re,s));return{moduleFileToTry:Ro(h,Ze)}}break;case 2:let Ee=ge.indexOf("*"),Ne=ge.slice(0,Ee),Te=ge.slice(Ee+1);if(_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(Ie&&Ac(Ie,Ne,V)&&di(Ie,Te,V)){let Ze=Ie.slice(Ne.length,Ie.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(!_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(ee&&Ac(ee,Ne,V)&&di(ee,Te,V)){let Ze=ee.slice(Ne.length,ee.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(re&&Ac(re,Ne,V)&&di(re,Te,V)){let Ze=re.slice(Ne.length,re.length-Te.length),We=R3(h,Ze),Ue=yet(re,s);return Ue?{moduleFileToTry:i_(We,Ue)}:void 0}break}}else{if(Array.isArray(_))return F(_,V=>O9e(s,c,g,d,h,V,S,R,T,W));if(typeof _=="object"&&_!==null){for(let V of _g(_))if(V==="default"||S.indexOf(V)>=0||NEe(S,V)){let M=_[V],ee=O9e(s,c,g,d,h,M,S,R,T,W);if(ee)return ee}}}}function Hvs(s,c,g,d,h,_,S){return typeof _=="object"&&_!==null&&!Array.isArray(_)&&F9e(_)?F(_g(_),R=>{let T=Xc(Ro(h,R),void 0),W=di(R,"/")?1:R.includes("*")?2:0;return O9e(s,c,g,d,T,_[R],S,W,!1,!1)}):O9e(s,c,g,d,h,_,S,0,!1,!1)}function Yvs(s,c,g,d,h,_){var S,R,T;if(!d.readFile||!Pne(g))return;let W=mOt(d,c);if(!W)return;let V=Ro(W,"package.json"),M=(R=(S=d.getPackageJsonInfoCache)==null?void 0:S.call(d))==null?void 0:R.getPackageJsonInfo(V);if(zWt(M)||!d.fileExists(V))return;let ee=M?.contents.packageJsonContent||nU(d.readFile(V)),re=ee?.imports;if(!re)return;let ge=PP(g,h);return(T=F(_g(re),Ie=>{if(!Ac(Ie,"#")||Ie==="#"||Ac(Ie,"#/"))return;let _e=di(Ie,"/")?1:Ie.includes("*")?2:0;return O9e(g,d,s,W,Ie,re[Ie],ge,_e,!0,_)}))==null?void 0:T.moduleFileToTry}function Qvs(s,c,g,d,h,_){let S=btn(c,s,d);if(S===void 0)return;let R=btn(g,s,d),T=er(R,V=>At(S,M=>Am(mp(V,M,d)))),W=oa(T,Xne);if(W)return xEe(W,h,_)}function COt({path:s,isRedirect:c},{getCanonicalFileName:g,canonicalSourceDirectory:d},h,_,S,R,T,W){if(!_.fileExists||!_.readFile)return;let V=HAe(s),M,ee=LP(s);if(ee){let Ze=ee.findPackageLocator(h.fileName),We=ee.findPackageLocator(s);if(Ze===We)return;if(Ze&&We){let Ue=ee.getPackageInformation(Ze);if(We.reference===Ue.packageDependencies.get(We.name))M=We.name;else for(let[$e,Ye]of Ue.packageDependencies)if(Array.isArray(Ye)&&Ye[0]===We.name&&Ye[1]===We.reference){M=$e;break}V||(V={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:ee.getPackageInformation(We).packageLocation.length-1,fileNameIndex:s.lastIndexOf("/")})}}if(!V)return;let ge=kEe(R,_,S,h).getAllowedEndingsInPreferredOrder(),Ie=s,_e=!1;if(!T){let Ze=V.packageRootIndex,We;for(;;){let{moduleFileToTry:Ue,packageRootPath:$e,blockedByExports:Ye,verbatimFromExports:Tt}=Te(Ze);if(k_(S)!==1){if(Ye)return;if(Tt)return Ue}if($e){Ie=$e,_e=!0;break}if(We||(We=Ue),Ze=s.indexOf(ag,Ze+1),Ze===-1){Ie=xEe(We,ge,S,_);break}}}if(c&&!_e)return;if(typeof process.versions.pnp>"u"){let Ze=_.getGlobalTypingsCacheLocation&&_.getGlobalTypingsCacheLocation(),We=g(Ie.substring(0,V.topLevelNodeModulesIndex));if(!(Ac(d,We)||Ze&&Ac(g(Ze),We)))return}let Ee=typeof M<"u"?M+Ie.substring(V.packageRootIndex):Ie.substring(V.topLevelPackageNameIndex+1),Ne=Ede(Ee);return k_(S)===1&&Ne===Ee?void 0:Ne;function Te(Ze){var We,Ue;let $e=s.substring(0,Ze),Ye=Ro($e,"package.json"),Tt=s,ot=!1,Qe=(Ue=(We=_.getPackageJsonInfoCache)==null?void 0:We.call(_))==null?void 0:Ue.getPackageJsonInfo(Ye);if(k9e(Qe)||Qe===void 0&&_.fileExists(Ye)){let mt=Qe?.contents.packageJsonContent||nU(_.readFile(Ye)),ht=W||bet(h,_,S);if(U7(S)){let Lt=$e.substring(V.topLevelPackageNameIndex+1),Ke=Ede(M||Lt),Pt=PP(S,ht),_r=mt?.exports?Hvs(S,_,s,$e,Ke,mt.exports,Pt):void 0;if(_r)return{..._r,verbatimFromExports:!0};if(mt?.exports)return{moduleFileToTry:s,blockedByExports:!0}}let _t=mt?.typesVersions?N9e(mt.typesVersions):void 0;if(_t){let Lt=s.slice($e.length+1),Ke=ytn(Lt,_t.paths,ge,$e,g,_,S);Ke===void 0?ot=!0:Tt=Ro($e,Ke)}let Rt=mt?.typings||mt?.types||mt?.main||"index.js";if(Xs(Rt)&&!(ot&&Rbe($7(_t.paths),Rt))){let Lt=Ou(Rt,$e,g),Ke=g(Tt);if(s0(Lt)===s0(Ke))return{packageRootPath:$e,moduleFileToTry:Tt};if(mt?.type!=="module"&&!fu(Ke,PAe)&&Ac(Ke,Lt)&&Mo(Ke)===ny(Lt)&&s0(gp(Ke))==="index")return{packageRootPath:$e,moduleFileToTry:Tt}}}else{let mt=g(Tt.substring(V.packageRootIndex+1));if(mt==="index.d.ts"||mt==="index.js"||mt==="index.ts"||mt==="index.tsx")return{moduleFileToTry:Tt,packageRootPath:$e}}return{moduleFileToTry:Tt}}}function Xvs(s,c){if(!s.fileExists)return;let g=Nr(z7({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of g){let h=c+d;if(s.fileExists(h))return h}}function btn(s,c,g){return Xt(c,d=>{let h=_Ot(s,d,g);return h!==void 0&&Stn(h)?void 0:h})}function xEe(s,c,g,d){if(fu(s,[".json",".mjs",".cjs"]))return s;let h=s0(s);if(s===h)return s;let _=c.indexOf(2),S=c.indexOf(3);if(fu(s,[".mts",".cts"])&&S!==-1&&S<_)return s;if(fu(s,[".d.mts",".mts",".d.cts",".cts"]))return h+_et(s,g);if(!fu(s,[".d.ts"])&&fu(s,[".ts"])&&s.includes(".d."))return Etn(s);switch(c[0]){case 0:let R=aa(h,"/index");return d&&R!==h&&Xvs(d,R)?h:R;case 1:return h;case 2:return h+_et(s,g);case 3:if(PC(s)){let T=c.findIndex(W=>W===0||W===1);return T!==-1&&T<_?h:h+_et(s,g)}return s;default:return pe.assertNever(c[0])}}function Etn(s){let c=gp(s);if(!di(s,".ts")||!c.includes(".d.")||fu(c,[".d.ts"]))return;let g=Jne(s,".ts"),d=g.substring(g.lastIndexOf("."));return g.substring(0,g.indexOf(".d."))+d}function _et(s,c){return yet(s,c)??pe.fail(`Extension ${tz(s)} is unsupported:: FileName:: ${s}`)}function yet(s,c){let g=QT(s);switch(g){case".ts":case".d.ts":return".js";case".tsx":return c.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return g;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function _Ot(s,c,g){let d=Of(c,s,c,g,!1);return Xp(d)?void 0:d}function Stn(s){return Ac(s,"..")}function bet(s,c,g){return aN(s)?c.getDefaultResolutionModeForFile(s):aVe(s,g)}function Jvs(s){let c=s.indexOf(3);return c>-1&&c(s[s.None=0]="None",s[s.TypeofEQString=1]="TypeofEQString",s[s.TypeofEQNumber=2]="TypeofEQNumber",s[s.TypeofEQBigInt=4]="TypeofEQBigInt",s[s.TypeofEQBoolean=8]="TypeofEQBoolean",s[s.TypeofEQSymbol=16]="TypeofEQSymbol",s[s.TypeofEQObject=32]="TypeofEQObject",s[s.TypeofEQFunction=64]="TypeofEQFunction",s[s.TypeofEQHostObject=128]="TypeofEQHostObject",s[s.TypeofNEString=256]="TypeofNEString",s[s.TypeofNENumber=512]="TypeofNENumber",s[s.TypeofNEBigInt=1024]="TypeofNEBigInt",s[s.TypeofNEBoolean=2048]="TypeofNEBoolean",s[s.TypeofNESymbol=4096]="TypeofNESymbol",s[s.TypeofNEObject=8192]="TypeofNEObject",s[s.TypeofNEFunction=16384]="TypeofNEFunction",s[s.TypeofNEHostObject=32768]="TypeofNEHostObject",s[s.EQUndefined=65536]="EQUndefined",s[s.EQNull=131072]="EQNull",s[s.EQUndefinedOrNull=262144]="EQUndefinedOrNull",s[s.NEUndefined=524288]="NEUndefined",s[s.NENull=1048576]="NENull",s[s.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",s[s.Truthy=4194304]="Truthy",s[s.Falsy=8388608]="Falsy",s[s.IsUndefined=16777216]="IsUndefined",s[s.IsNull=33554432]="IsNull",s[s.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",s[s.All=134217727]="All",s[s.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",s[s.BaseStringFacts=12582401]="BaseStringFacts",s[s.StringStrictFacts=16317953]="StringStrictFacts",s[s.StringFacts=16776705]="StringFacts",s[s.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",s[s.EmptyStringFacts=12582401]="EmptyStringFacts",s[s.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",s[s.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",s[s.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",s[s.BaseNumberFacts=12582146]="BaseNumberFacts",s[s.NumberStrictFacts=16317698]="NumberStrictFacts",s[s.NumberFacts=16776450]="NumberFacts",s[s.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",s[s.ZeroNumberFacts=12582146]="ZeroNumberFacts",s[s.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",s[s.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",s[s.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",s[s.BaseBigIntFacts=12581636]="BaseBigIntFacts",s[s.BigIntStrictFacts=16317188]="BigIntStrictFacts",s[s.BigIntFacts=16775940]="BigIntFacts",s[s.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",s[s.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",s[s.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",s[s.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",s[s.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",s[s.BaseBooleanFacts=12580616]="BaseBooleanFacts",s[s.BooleanStrictFacts=16316168]="BooleanStrictFacts",s[s.BooleanFacts=16774920]="BooleanFacts",s[s.FalseStrictFacts=12121864]="FalseStrictFacts",s[s.FalseFacts=12580616]="FalseFacts",s[s.TrueStrictFacts=7927560]="TrueStrictFacts",s[s.TrueFacts=16774920]="TrueFacts",s[s.SymbolStrictFacts=7925520]="SymbolStrictFacts",s[s.SymbolFacts=16772880]="SymbolFacts",s[s.ObjectStrictFacts=7888800]="ObjectStrictFacts",s[s.ObjectFacts=16736160]="ObjectFacts",s[s.FunctionStrictFacts=7880640]="FunctionStrictFacts",s[s.FunctionFacts=16728e3]="FunctionFacts",s[s.VoidFacts=9830144]="VoidFacts",s[s.UndefinedFacts=26607360]="UndefinedFacts",s[s.NullFacts=42917664]="NullFacts",s[s.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",s[s.EmptyObjectFacts=83886079]="EmptyObjectFacts",s[s.UnknownFacts=83886079]="UnknownFacts",s[s.AllTypeofNE=556800]="AllTypeofNE",s[s.OrFactsMask=8256]="OrFactsMask",s[s.AndFactsMask=134209471]="AndFactsMask",s))(vet||{}),bOt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),Bet=(s=>(s[s.Normal=0]="Normal",s[s.Contextual=1]="Contextual",s[s.Inferential=2]="Inferential",s[s.SkipContextSensitive=4]="SkipContextSensitive",s[s.SkipGenericFunctions=8]="SkipGenericFunctions",s[s.IsForSignatureHelp=16]="IsForSignatureHelp",s[s.RestBindingElement=32]="RestBindingElement",s[s.TypeOnly=64]="TypeOnly",s))(Bet||{}),wet=(s=>(s[s.None=0]="None",s[s.BivariantCallback=1]="BivariantCallback",s[s.StrictCallback=2]="StrictCallback",s[s.IgnoreReturnTypes=4]="IgnoreReturnTypes",s[s.StrictArity=8]="StrictArity",s[s.StrictTopSignature=16]="StrictTopSignature",s[s.Callback=3]="Callback",s))(wet||{}),Uvs=dh(Ntn,jvs),Tet=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),Rtn=class{};function Kvs(){this.flags=0}function rd(s){return s.id||(s.id=Btn,Btn++),s.id}function kg(s){return s.id||(s.id=vtn,vtn++),s.id}function Ret(s,c){let g=PF(s);return g===1||c&&g===2}function EOt(s){var c=[],g=u=>{c.push(u)},d,h,_=ZC.getSymbolConstructor(),S=ZC.getTypeConstructor(),R=ZC.getSignatureConstructor(),T=0,W=0,V=0,M=0,ee=0,re=0,ge,Ie,_e=!1,Ee=qu(),Ne=[1],Te=s.getCompilerOptions(),Ze=Mg(Te),We=i0(Te),Ue=!!Te.experimentalDecorators,$e=Wne(Te),Ye=mbe(Te),Tt=JY(Te),ot=a_(Te,"strictNullChecks"),Qe=a_(Te,"strictFunctionTypes"),mt=a_(Te,"strictBindCallApply"),ht=a_(Te,"strictPropertyInitialization"),_t=a_(Te,"strictBuiltinIteratorReturn"),Rt=a_(Te,"noImplicitAny"),Lt=a_(Te,"noImplicitThis"),Ke=a_(Te,"useUnknownInCatchVariables"),Pt=Te.exactOptionalPropertyTypes,_r=!!Te.noUncheckedSideEffectImports,Gt=x4s(),nt=h8s(),Dt=dWe(),tr=w5t(Te,Dt.syntacticBuilderResolver),ur=kLe({evaluateElementAccessExpression:aKs,evaluateEntityNameExpression:N0n}),Gr=qu(),dt=gA(4,"undefined");dt.declarations=[];var pr=gA(1536,"globalThis",8);pr.exports=Gr,pr.declarations=[],Gr.set(pr.escapedName,pr);var st=gA(4,"arguments"),ir=gA(4,"require"),zt=Te.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Ht=!Te.verbatimModuleSyntax,Br,mn,jn=0,Zi,Ns=0,An=UAe({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:st,globals:Gr,getSymbolOfDeclaration:Uo,error:Sr,getRequiresScopeChangeCache:TQ,setRequiresScopeChangeCache:hse,lookup:f_,onPropertyWithInvalidInitializer:ype,onFailedToResolveSymbol:qo,onSuccessfullyResolvedSymbol:py}),si=UAe({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:st,globals:Gr,getSymbolOfDeclaration:Uo,error:Sr,getRequiresScopeChangeCache:TQ,setRequiresScopeChangeCache:hse,lookup:eXs});let ks={getNodeCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.nodeCount,0),getIdentifierCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.identifierCount,0),getSymbolCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.symbolCount,W),getTypeCount:()=>T,getInstantiationCount:()=>V,getRelationCacheSizes:()=>({assignable:l0.size,identity:u0.size,subtype:ck.size,strictSubtype:bf.size}),isUndefinedSymbol:u=>u===dt,isArgumentsSymbol:u=>u===st,isUnknownSymbol:u=>u===it,getMergedSymbol:jA,symbolIsValue:qi,getDiagnostics:V0n,getGlobalDiagnostics:kKs,getRecursionIdentity:Eot,getUnmatchedProperties:zUt,getTypeOfSymbolAtLocation:(u,m)=>{let v=$l(m);return v?gYs(u,v):nn},getTypeOfSymbol:Io,getSymbolsOfParameterPropertyDeclaration:(u,m)=>{let v=$l(u,Si);return v===void 0?pe.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(pe.assert(Ve(v,v.parent)),UU(v,Ap(m)))},getDeclaredTypeOfSymbol:Fp,getPropertiesOfType:Gd,getPropertyOfType:(u,m)=>Gg(u,Ap(m)),getPrivateIdentifierPropertyOfType:(u,m,v)=>{let D=$l(v);if(!D)return;let P=Ap(m),Y=aOe(P,D);return Y?sat(u,Y):void 0},getTypeOfPropertyOfType:(u,m)=>Pi(u,Ap(m)),getIndexInfoOfType:(u,m)=>$x(u,m===0?$r:ri),getIndexInfosOfType:A0,getIndexInfosOfIndexSymbol:$st,getSignaturesOfType:tg,getIndexTypeOfType:(u,m)=>D5(u,m===0?$r:ri),getIndexType:u=>ON(u),getBaseTypes:Kw,getBaseTypeOfLiteralType:uZ,getWidenedType:D1,getWidenedLiteralType:V5,fillMissingTypeArguments:v9,getTypeFromTypeNode:u=>{let m=$l(u,uc);return m?nl(m):nn},getParameterType:CR,getParameterIdentifierInfoAtPosition:UXs,getPromisedTypeOfPromise:tSe,getAwaitedType:u=>Zq(u),getReturnTypeOfSignature:ud,isNullableType:oOe,getNullableType:HWe,getNonNullableType:gZ,getNonOptionalType:wot,getTypeArguments:lf,typeToTypeNode:Dt.typeToTypeNode,typePredicateToTypePredicateNode:Dt.typePredicateToTypePredicateNode,indexInfoToIndexSignatureDeclaration:Dt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:Dt.signatureToSignatureDeclaration,symbolToEntityName:Dt.symbolToEntityName,symbolToExpression:Dt.symbolToExpression,symbolToNode:Dt.symbolToNode,symbolToTypeParameterDeclarations:Dt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:Dt.symbolToParameterDeclaration,typeParameterToDeclaration:Dt.typeParameterToDeclaration,getSymbolsInScope:(u,m)=>{let v=$l(u);return v?xKs(v,m):[]},getSymbolAtLocation:u=>{let m=$l(u);return m?xv(m,!0):void 0},getIndexInfosAtLocation:u=>{let m=$l(u);return m?OKs(m):void 0},getShorthandAssignmentValueSymbol:u=>{let m=$l(u);return m?MKs(m):void 0},getExportSpecifierLocalTargetSymbol:u=>{let m=$l(u,R0);return m?HKs(m):void 0},getExportSymbolOfSymbol(u){return jA(u.exportSymbol||u)},getTypeAtLocation:u=>{let m=$l(u);return m?Vq(m):nn},getTypeOfAssignmentPattern:u=>{let m=$l(u,CY);return m&&Fat(m)||nn},getPropertySymbolOfDestructuringAssignment:u=>{let m=$l(u,Ir);return m?YKs(m):void 0},signatureToString:(u,m,v,D)=>lW(u,$l(m),v,D),typeToString:(u,m,v)=>no(u,$l(m),v),symbolToString:(u,m,v,D)=>kl(u,$l(m),v,D),typePredicateToString:(u,m,v)=>gk(u,$l(m),v),writeSignature:(u,m,v,D,P,Y,oe,Be)=>lW(u,$l(m),v,D,P,Y,oe,Be),writeType:(u,m,v,D,P,Y,oe)=>no(u,$l(m),v,D,P,Y,oe),writeSymbol:(u,m,v,D,P)=>kl(u,$l(m),v,D,P),writeTypePredicate:(u,m,v,D)=>gk(u,$l(m),v,D),getAugmentedPropertiesOfType:W8t,getRootSymbols:X0n,getSymbolOfExpando:gat,getContextualType:(u,m)=>{let v=$l(u,un);if(v)return m&4?ya(v,()=>Jy(v,m)):Jy(v,m)},getContextualTypeForObjectLiteralElement:u=>{let m=$l(u,yw);return m?wKt(m,void 0):void 0},getContextualTypeForArgumentAtIndex:(u,m)=>{let v=$l(u,hF);return v&&SKt(v,m)},getContextualTypeForJsxAttribute:u=>{let m=$l(u,wJ);return m&&aCn(m,void 0)},isContextSensitive:bS,getTypeOfPropertyOfContextualType:W5,getFullyQualifiedName:f9,getResolvedSignature:(u,m,v)=>Gl(u,m,v,0),getCandidateSignaturesForStringLiteralCompletions:su,getResolvedSignatureForSignatureHelp:(u,m,v)=>Zn(u,()=>Gl(u,m,v,16)),getExpandedParameters:Yfn,hasEffectiveRestParameter:Ck,containsArgumentsReference:HJt,getConstantValue:u=>{let m=$l(u,q0n);return m?Vat(m):void 0},isValidPropertyAccess:(u,m)=>{let v=$l(u,Tre);return!!v&&nXs(v,Ap(m))},isValidPropertyAccessForCompletions:(u,m,v)=>{let D=$l(u,jo);return!!D&&VCn(D,m,v)},getSignatureFromDeclaration:u=>{let m=$l(u,bu);return m?yS(m):void 0},isImplementationOfOverload:u=>{let m=$l(u,bu);return m?j0n(m):void 0},getImmediateAliasedSymbol:qot,getAliasedSymbol:YC,getEmitResolver:_pe,requiresAddingImplicitUndefined:xOe,getExportsOfModule:dq,getExportsAndPropertiesOfModule:bse,forEachExportAndPropertyOfModule:pq,getSymbolWalker:IOt(R3s,Tv,ud,Kw,pR,Io,L0,Xy,B0,lf),getAmbientModules:sjs,getJsxIntrinsicTagNamesAt:LQs,isOptionalParameter:u=>{let m=$l(u,Si);return m?C2e(m):!1},tryGetMemberInModuleExports:(u,m)=>nK(Ap(u),m),tryGetMemberInModuleExportsAndProperties:(u,m)=>fq(Ap(u),m),tryFindAmbientModule:u=>uIn(u,!0),getApparentType:fy,getUnionType:Ha,isTypeAssignableTo:dg,createAnonymousType:Hf,createSignature:PN,createSymbol:gA,createIndexInfo:eG,getAnyType:()=>hr,getStringType:()=>$r,getStringLiteralType:TE,getNumberType:()=>ri,getNumberLiteralType:fR,getBigIntType:()=>ao,getBigIntLiteralType:DWe,getUnknownType:()=>cn,createPromiseType:IOe,createArrayType:d0,getElementTypeOfArrayType:MWe,getBooleanType:()=>Mn,getFalseType:u=>u?Bs:Ys,getTrueType:u=>u?tn:wn,getVoidType:()=>es,getUndefinedType:()=>Bt,getNullType:()=>Hn,getESSymbolType:()=>ci,getNeverType:()=>Wi,getNonPrimitiveType:()=>fs,getOptionalType:()=>In,getPromiseType:()=>vWe(!1),getPromiseLikeType:()=>GIn(!1),getAnyAsyncIterableType:()=>{let u=BWe(!1);if(u!==oi)return iZ(u,[hr,hr,hr])},isSymbolAccessible:cW,isArrayType:Nv,isTupleType:yA,isArrayLikeType:T9,isEmptyAnonymousObjectType:mk,isTypeInvalidDueToUnionDiscriminant:u3s,getExactOptionalProperties:PMs,getAllPossiblePropertiesOfTypes:g3s,getSuggestedSymbolForNonexistentProperty:WKt,getSuggestedSymbolForNonexistentJSXAttribute:GCn,getSuggestedSymbolForNonexistentSymbol:(u,m,v)=>ZCn(u,Ap(m),v),getSuggestedSymbolForNonexistentModule:OKt,getSuggestedSymbolForNonexistentClassMember:xCn,getBaseConstraintOfType:L_,getDefaultFromTypeParameter:u=>u&&u.flags&262144?VQ(u):void 0,resolveName(u,m,v,D){return An(m,Ap(u),v,void 0,!1,D)},getJsxNamespace:u=>Bc(Mw(u)),getJsxFragmentFactory:u=>{let m=Q8t(u);return m&&Bc(B0(m).escapedText)},getAccessibleSymbolChain:m9,getTypePredicateOfSignature:Tv,resolveExternalModuleName:u=>{let m=$l(u,un);return m&&F0(m,m,!0)},resolveExternalModuleSymbol:wE,tryGetThisTypeAt:(u,m,v)=>{let D=$l(u);return D&&_Kt(D,m,v)},getTypeArgumentConstraint:u=>{let m=$l(u,uc);return m&&fJs(m)},getSuggestionDiagnostics:(u,m)=>{let v=$l(u,ll)||pe.fail("Could not determine parsed source file.");if(T3(v,Te,s))return E;let D;try{return d=m,V8t(v),pe.assert(!!(sa(v).flags&1)),D=Or(D,QU.getDiagnostics(v.fileName)),r0n(L0n(v),(P,Y,oe)=>{!pP(P)&&!Z0n(Y,!!(P.flags&33554432))&&(D||(D=[])).push({...oe,category:2})}),D||E}finally{d=void 0}},runWithCancellationToken:(u,m)=>{try{return d=u,m(ks)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Ug,isDeclarationVisible:Ak,isPropertyAccessible:HKt,getTypeOnlyAliasDeclaration:uR,getMemberOverrideModifierStatus:jUs,isTypeParameterPossiblyReferenced:GWe,typeHasCallOrConstructSignatures:Zat,getSymbolFlags:Hb,getTypeArgumentsForResolvedSignature:Ic,isLibType:vse};function Ic(u){if(u.mapper!==void 0)return cZ((u.target||u).typeParameters,u.mapper)}function su(u,m){let v=new Set,D=[];ya(m,()=>Gl(u,D,void 0,0));for(let P of D)v.add(P);D.length=0,Zn(m,()=>Gl(u,D,void 0,0));for(let P of D)v.add(P);return Do(v)}function Zn(u,m){if(u=ji(u,Rre),u){let v=[],D=[];for(;u;){let Y=sa(u);if(v.push([Y,Y.resolvedSignature]),Y.resolvedSignature=void 0,RF(u)){let oe=fa(Uo(u)),Be=oe.type;D.push([oe,Be]),oe.type=void 0}u=ji(u.parent,Rre)}let P=m();for(let[Y,oe]of v)Y.resolvedSignature=oe;for(let[Y,oe]of D)Y.type=oe;return P}return m()}function ya(u,m){let v=ji(u,hF);if(v){let P=u;do sa(P).skipDirectInference=!0,P=P.parent;while(P&&P!==v)}_e=!0;let D=Zn(u,m);if(_e=!1,v){let P=u;do sa(P).skipDirectInference=void 0,P=P.parent;while(P&&P!==v)}return D}function Gl(u,m,v,D){let P=$l(u,hF);Br=v;let Y=P?Yse(P,m,D):void 0;return Br=void 0,Y}var ba=new Map,Wo=new Map,hc=new Map,yr=new Map,hn=new Map,Oi=new Map,lo=new Map,pa=new Map,Oa=new Map,tl=new Map,Qu=new Map,Tg=new Map,Cs=new Map,Tu=new Map,Pr=new Map,Pn=[],pt=new Map,on=new Set,it=gA(4,"unknown"),nr=gA(0,"__resolving__"),Fr=new Map,Kr=new Map,Dn=new Set,hr=Vc(1,"any"),Sn=Vc(1,"any",262144,"auto"),Ni=Vc(1,"any",void 0,"wildcard"),Gi=Vc(1,"any",void 0,"blocked string"),nn=Vc(1,"error"),En=Vc(1,"unresolved"),ds=Vc(1,"any",65536,"non-inferrable"),Mt=Vc(1,"intrinsic"),cn=Vc(2,"unknown"),Bt=Vc(32768,"undefined"),xe=ot?Bt:Vc(32768,"undefined",65536,"widening"),fr=Vc(32768,"undefined",void 0,"missing"),Je=Pt?fr:Bt,In=Vc(32768,"undefined",void 0,"optional"),Hn=Vc(65536,"null"),Ot=ot?Hn:Vc(65536,"null",65536,"widening"),$r=Vc(4,"string"),ri=Vc(8,"number"),ao=Vc(64,"bigint"),Bs=Vc(512,"false",void 0,"fresh"),Ys=Vc(512,"false"),tn=Vc(512,"true",void 0,"fresh"),wn=Vc(512,"true");tn.regularType=wn,tn.freshType=tn,wn.regularType=wn,wn.freshType=tn,Bs.regularType=Ys,Bs.freshType=Bs,Ys.regularType=Ys,Ys.freshType=Bs;var Mn=Ha([Ys,wn]),ci=Vc(4096,"symbol"),es=Vc(16384,"void"),Wi=Vc(131072,"never"),Vn=Vc(131072,"never",262144,"silent"),Ui=Vc(131072,"never",void 0,"implicit"),gs=Vc(131072,"never",void 0,"unreachable"),fs=Vc(67108864,"object"),bi=Ha([$r,ri]),mc=Ha([$r,ri,ci]),gg=Ha([ri,ao]),Ag=Ha([$r,ri,Mn,ao,Hn,Bt]),_u=hK(["",""],[ri]),wI=xWe(u=>u.flags&262144?gMs(u):u,()=>"(restrictive mapper)"),AI=xWe(u=>u.flags&262144?Ni:u,()=>"(permissive mapper)"),pp=Vc(131072,"never",void 0,"unique literal"),Dl=xWe(u=>u.flags&262144?pp:u,()=>"(unique literal mapper)"),yu,tm=xWe(u=>(yu&&(u===_f||u===QI||u===ve)&&yu(!0),u),()=>"(unmeasurable reporter)"),jp=xWe(u=>(yu&&(u===_f||u===QI||u===ve)&&yu(!1),u),()=>"(unreliable reporter)"),Xg=Hf(void 0,Ee,E,E,E),sh=Hf(void 0,Ee,E,E,E);sh.objectFlags|=2048;var dS=Hf(void 0,Ee,E,E,E);dS.objectFlags|=141440;var gu=gA(2048,"__type");gu.members=qu();var bg=Hf(gu,Ee,E,E,E),KA=Hf(void 0,Ee,E,E,E),TA=ot?Ha([Bt,Hn,KA]):cn,oi=Hf(void 0,Ee,E,E,E);oi.instantiations=new Map;var $d=Hf(void 0,Ee,E,E,E);$d.objectFlags|=262144;var YI=Hf(void 0,Ee,E,E,E),Fh=Hf(void 0,Ee,E,E,E),WC=Hf(void 0,Ee,E,E,E),_f=Yy(),QI=Yy();QI.constraint=_f;var ve=Yy(),mr=Yy(),ln=Yy();ln.constraint=mr;var ni=_2e(1,"<>",0,hr),Ls=PN(void 0,void 0,void 0,E,hr,void 0,0,0),Za=PN(void 0,void 0,void 0,E,nn,void 0,0,0),Go=PN(void 0,void 0,void 0,E,hr,void 0,0,0),Ss=PN(void 0,void 0,void 0,E,Vn,void 0,0,0),Uc=eG(ri,$r,!0),rl=eG($r,hr,!1),xd=new Map,Lg={get yieldType(){return pe.fail("Not supported")},get returnType(){return pe.fail("Not supported")},get nextType(){return pe.fail("Not supported")}},yf=yW(hr,hr,hr),rm=yW(Vn,Vn,Vn),_h={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:Y3s,getGlobalIterableType:BWe,getGlobalIterableIteratorType:FIn,getGlobalIteratorObjectType:X3s,getGlobalGeneratorType:J3s,getGlobalBuiltinIteratorTypes:Q3s,resolveIterationType:(u,m)=>Zq(u,m,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},Gp={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:U3s,getGlobalIterableType:aot,getGlobalIterableIteratorType:ZIn,getGlobalIteratorObjectType:j3s,getGlobalGeneratorType:z3s,getGlobalBuiltinIteratorTypes:K3s,resolveIterationType:(u,m)=>u,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},oh,b1=new Map,Z_=new Map,m2,Vb,or,qn,Js,Hl,RA,NA,uA,hm,af,dI,XI,C2,d_,OC,E1,gy,yv,ik,Wx,Ox,Pb,qm,oR,pS,xN,at,en,gi,_i,ys,eo,wa,pc,ul,Fe,gr,Ln,bs,Xl,eg,jl,Eu,Df,Jg,MC,S1,fS,bv,XF,o9,My,sk,aR,WB,UP,br,sn,ei,is,Qs=new Map,Oo=0,Os=0,co=0,Yc=!1,tu=0,$a,ru,gl,kf=[],Wb=[],OB=[],p_=0,MB=[],v1=[],s5=[],GN=0,ok=[],o5=[],ak=0,Ase=TE(""),mpe=fR(0),dse=DWe({negative:!1,base10Value:"0"}),Mx=[],a5=[],WU=[],a9=0,OU=!1,qz=0,Cpe=10,MU=[],$z=[],c5=[],pse=[],HU=[],eq=[],EQ=[],KP=[],tq=[],rq=[],SQ=[],jP=[],c9=[],JF=[],UF=[],KF=[],zP=[],l5=[],YU=[],u5=0,PA=EF(),QU=EF(),fse=g0(),jF,zF,ck=new Map,bf=new Map,l0=new Map,Ob=new Map,u0=new Map,g5=new Map,Ay=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Te.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return m8s(),ks;function lk(u){return!jo(u)||!Ir(u.name)||!jo(u.expression)&&!Ir(u.expression)?!1:Ir(u.expression)?Vo(u.expression)==="Symbol"&&L0(u.expression)===(Fse("Symbol",1160127,void 0)||it):Ir(u.expression.expression)?Vo(u.expression.name)==="Symbol"&&Vo(u.expression.expression)==="globalThis"&&L0(u.expression.expression)===pr:!1}function Hy(u){return u?Pr.get(u):void 0}function HB(u,m){return u&&Pr.set(u,m),m}function Mw(u){if(u){let m=ms(u);if(m)if(Pw(u)){if(m.localJsxFragmentNamespace)return m.localJsxFragmentNamespace;let v=m.pragmas.get("jsxfrag");if(v){let P=Ki(v)?v[0]:v;if(m.localJsxFragmentFactory=Bz(P.arguments.factory,Ze),Mr(m.localJsxFragmentFactory,d5,fC),m.localJsxFragmentFactory)return m.localJsxFragmentNamespace=B0(m.localJsxFragmentFactory).escapedText}let D=Q8t(u);if(D)return m.localJsxFragmentFactory=D,m.localJsxFragmentNamespace=B0(D).escapedText}else{let v=A5(m);if(v)return m.localJsxNamespace=v}}return jF||(jF="React",Te.jsxFactory?(zF=Bz(Te.jsxFactory,Ze),Mr(zF,d5),zF&&(jF=B0(zF).escapedText)):Te.reactNamespace&&(jF=Ap(Te.reactNamespace))),zF||(zF=me.createQualifiedName(me.createIdentifier(Bc(jF)),"createElement")),jF}function A5(u){if(u.localJsxNamespace)return u.localJsxNamespace;let m=u.pragmas.get("jsx");if(m){let v=Ki(m)?m[0]:m;if(u.localJsxFactory=Bz(v.arguments.factory,Ze),Mr(u.localJsxFactory,d5,fC),u.localJsxFactory)return u.localJsxNamespace=B0(u.localJsxFactory).escapedText}}function d5(u){return TB(u,-1,-1),_s(u,d5,void 0)}function _pe(u,m,v){return v||V0n(u,m),nt}function Ise(u,m,...v){let D=u?mo(u,m,...v):Nf(m,...v),P=PA.lookup(D);return P||(PA.add(D),D)}function l9(u,m,v,...D){let P=Sr(m,v,...D);return P.skippedOn=u,P}function vQ(u,m,...v){return u?mo(u,m,...v):Nf(m,...v)}function Sr(u,m,...v){let D=vQ(u,m,...v);return PA.add(D),D}function XU(u){let v=ms(u).fileName;return fu(v,[".cts",".cjs"])?Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript}function Hx(u,m){u?PA.add(m):QU.add({...m,category:2})}function Hw(u,m,v,...D){if(m.pos<0||m.end<0){if(!u)return;let P=ms(m);Hx(u,"message"in v?qh(P,0,0,v,...D):Ut(P,v));return}Hx(u,"message"in v?mo(m,v,...D):Bw(ms(m),m,v))}function u9(u,m,v,...D){let P=Sr(u,v,...D);if(m){let Y=mo(u,Z.Did_you_forget_to_use_await);lg(P,Y)}return P}function qP(u,m){let v=Array.isArray(u)?F(u,Kh):Kh(u);return v&&lg(m,mo(v,Z.The_declaration_was_marked_as_deprecated_here)),QU.add(m),m}function dy(u){let m=$m(u);return m&&B(u.declarations)>1?m.flags&64?jt(u.declarations,cR):ue(u.declarations,cR):!!u.valueDeclaration&&cR(u.valueDeclaration)||B(u.declarations)&&ue(u.declarations,cR)}function cR(u){return!!(jQ(u)&536870912)}function YB(u,m,v){let D=mo(u,Z._0_is_deprecated,v);return qP(m,D)}function p5(u,m,v,D){let P=v?mo(u,Z.The_signature_0_of_1_is_deprecated,D,v):mo(u,Z._0_is_deprecated,D);return qP(m,P)}function gA(u,m,v){W++;let D=new _(u|33554432,m);return D.links=new Rtn,D.links.checkFlags=v||0,D}function IS(u,m){let v=gA(1,u);return v.links.type=m,v}function g9(u,m){let v=gA(4,u);return v.links.type=m,v}function JU(u){let m=0;return u&2&&(m|=111551),u&1&&(m|=111550),u&4&&(m|=0),u&8&&(m|=900095),u&16&&(m|=110991),u&32&&(m|=899503),u&64&&(m|=788872),u&256&&(m|=899327),u&128&&(m|=899967),u&512&&(m|=110735),u&8192&&(m|=103359),u&32768&&(m|=46015),u&65536&&(m|=78783),u&262144&&(m|=526824),u&524288&&(m|=788968),u&2097152&&(m|=2097152),m}function qF(u,m){m.mergeId||(m.mergeId=wtn,wtn++),MU[m.mergeId]=u}function BQ(u){let m=gA(u.flags,u.escapedName);return m.declarations=u.declarations?u.declarations.slice():[],m.parent=u.parent,u.valueDeclaration&&(m.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(m.constEnumOnlyModule=!0),u.members&&(m.members=new Map(u.members)),u.exports&&(m.exports=new Map(u.exports)),qF(m,u),m}function Ev(u,m,v=!1){if(!(u.flags&JU(m.flags))||(m.flags|u.flags)&67108864){if(m===u)return u;if(!(u.flags&33554432)){let Y=Zh(u);if(Y===it)return m;if(!(Y.flags&JU(m.flags))||(m.flags|Y.flags)&67108864)u=BQ(Y);else return D(u,m),m}m.flags&512&&u.flags&512&&u.constEnumOnlyModule&&!m.constEnumOnlyModule&&(u.constEnumOnlyModule=!1),u.flags|=m.flags,m.valueDeclaration&&S7(u,m.valueDeclaration),Or(u.declarations,m.declarations),m.members&&(u.members||(u.members=qu()),FN(u.members,m.members,v)),m.exports&&(u.exports||(u.exports=qu()),FN(u.exports,m.exports,v,u)),v||qF(u,m)}else u.flags&1024?u!==pr&&Sr(m.declarations&&Il(m.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,kl(u)):D(u,m);return u;function D(Y,oe){let Be=!!(Y.flags&384||oe.flags&384),Oe=!!(Y.flags&2||oe.flags&2),He=Be?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Oe?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,qe=oe.declarations&&ms(oe.declarations[0]),Vt=Y.declarations&&ms(Y.declarations[0]),kt=SY(qe,Te.checkJs),vr=SY(Vt,Te.checkJs),dn=kl(oe);if(qe&&Vt&&oh&&!Be&&qe!==Vt){let vn=qf(qe.path,Vt.path)===-1?qe:Vt,ii=vn===qe?Vt:qe,Yi=cr(oh,`${vn.path}|${ii.path}`,()=>({firstFile:vn,secondFile:ii,conflictingSymbols:new Map})),js=cr(Yi.conflictingSymbols,dn,()=>({isBlockScoped:Oe,firstFileLocations:[],secondFileLocations:[]}));kt||P(js.firstFileLocations,oe),vr||P(js.secondFileLocations,Y)}else kt||Yx(oe,He,dn,Y),vr||Yx(Y,He,dn,oe)}function P(Y,oe){if(oe.declarations)for(let Be of oe.declarations)Qi(Y,Be)}}function Yx(u,m,v,D){F(u.declarations,P=>{f5(P,m,v,D.declarations)})}function f5(u,m,v,D){let P=(VL(u,!1)?yye(u):Il(u))||u,Y=Ise(P,m,v);for(let oe of D||E){let Be=(VL(oe,!1)?yye(oe):Il(oe))||oe;if(Be===P)continue;Y.relatedInformation=Y.relatedInformation||[];let Oe=mo(Be,Z._0_was_also_declared_here,v),He=mo(Be,Z.and_here);B(Y.relatedInformation)>=5||jt(Y.relatedInformation,qe=>X7(qe,He)===0||X7(qe,Oe)===0)||lg(Y,B(Y.relatedInformation)?He:Oe)}}function A9(u,m){if(!u?.size)return m;if(!m?.size)return u;let v=qu();return FN(v,u),FN(v,m),v}function FN(u,m,v=!1,D){m.forEach((P,Y)=>{let oe=u.get(Y),Be=oe?Ev(oe,P,v):jA(P);D&&oe&&(Be.parent=D),u.set(Y,Be)})}function wQ(u){var m,v,D;let P=u.parent;if(((m=P.symbol.declarations)==null?void 0:m[0])!==P){pe.assert(P.symbol.declarations.length>1);return}if(vB(P))FN(Gr,P.symbol.exports);else{let Y=u.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,oe=BE(u,u,Y,!1,!0);if(!oe)return;if(oe=wE(oe),oe.flags&1920)if(jt(Vb,Be=>oe===Be.symbol)){let Be=Ev(P.symbol,oe,!0);or||(or=new Map),or.set(u.text,Be)}else{if((v=oe.exports)!=null&&v.get("__export")&&((D=P.symbol.exports)!=null&&D.size)){let Be=TJt(oe,"resolvedExports");for(let[Oe,He]of Do(P.symbol.exports.entries()))Be.has(Oe)&&!oe.exports.has(Oe)&&Ev(Be.get(Oe),He)}Ev(oe,P.symbol)}else Sr(u,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,u.text)}}function I5(){let u=dt.escapedName,m=Gr.get(u);m?F(m.declarations,v=>{KY(v)||PA.add(mo(v,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,Bc(u)))}):Gr.set(u,dt)}function fa(u){if(u.flags&33554432)return u.links;let m=kg(u);return $z[m]??($z[m]=new Rtn)}function sa(u){let m=rd(u);return c5[m]||(c5[m]=new Kvs)}function f_(u,m,v){if(v){let D=jA(u.get(m));if(D&&(D.flags&v||D.flags&2097152&&Hb(D)&v))return D}}function UU(u,m){let v=u.parent,D=u.parent.parent,P=f_(v.locals,m,111551),Y=f_(pk(D.symbol),m,111551);return P&&Y?[P,Y]:pe.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function $F(u,m){let v=ms(u),D=ms(m),P=tS(u);if(v!==D){if(We&&(v.externalModuleIndicator||D.externalModuleIndicator)||!Te.outFile||OY(m)||u.flags&33554432||oe(m,u))return!0;let He=s.getSourceFiles();return He.indexOf(v)<=He.indexOf(D)}if(m.flags&16777216||OY(m)||iKt(m))return!0;if(u.pos<=m.pos&&!(pi(u)&&ene(m.parent)&&!u.initializer&&!u.exclamationToken)){if(u.kind===209){let He=ML(m,209);return He?ji(He,hg)!==ji(u,hg)||u.posqe===u?"quit":Un(qe)?qe.parent.parent===u:!Ue&&So(qe)&&(qe.parent===u||uu(qe.parent)&&qe.parent.parent===u||fJ(qe.parent)&&qe.parent.parent===u||pi(qe.parent)&&qe.parent.parent===u||Si(qe.parent)&&qe.parent.parent.parent===u));return He?!Ue&&So(He)?!!ji(m,qe=>qe===He?"quit":bu(qe)&&!ZL(qe)):!1:!0}else{if(pi(u))return!Oe(u,m,!1);if(Ve(u,u.parent))return!(Ye&&hC(u)===hC(m)&&oe(m,u))}}return!0}if(m.parent.kind===282||m.parent.kind===278&&m.parent.isExportEquals||m.kind===278&&m.isExportEquals)return!0;if(oe(m,u))return Ye&&hC(u)&&(pi(u)||Ve(u,u.parent))?!Oe(u,m,!0):!0;return!1;function Y(He,qe){switch(He.parent.parent.kind){case 244:case 249:case 251:if(Yw(qe,He,P))return!0;break}let Vt=He.parent.parent;return DL(Vt)&&Yw(qe,Vt.expression,P)}function oe(He,qe){return Be(He,qe)}function Be(He,qe){return!!ji(He,Vt=>{if(Vt===P)return"quit";if(bu(Vt))return!ZL(Vt);if(fl(Vt))return qe.posHe.end?!1:ji(qe,vr=>{if(vr===He)return"quit";switch(vr.kind){case 220:return!0;case 173:return Vt&&(pi(He)&&vr.parent===He.parent||Ve(He,He.parent)&&vr.parent===He.parent.parent)?"quit":!0;case 242:switch(vr.parent.kind){case 178:case 175:case 179:return!0;default:return!1}default:return!1}})===void 0}}function TQ(u){return sa(u).declarationRequiresScopeChange}function hse(u,m){sa(u).declarationRequiresScopeChange=m}function ype(u,m,v,D){return Ye?!1:(u&&!D&&KU(u,m,m)||Sr(u,u&&v.type&&sl(v.type,u.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Wd(v.name),vE(m)),!0)}function qo(u,m,v,D){let P=Xs(m)?m:m.escapedText;g(()=>{if(!u||u.parent.kind!==325&&!KU(u,P,m)&&!$P(u)&&!mse(u,P,v)&&!uk(u,P)&&!tW(u,P,v)&&!lR(u,P,v)&&!nq(u,P,v)){let Y,oe;if(m&&(oe=qQs(m),oe&&Sr(u,D,vE(m),oe)),!oe&&qz{var oe;let Be=m.escapedName,Oe=D&&ll(D)&&vl(D);if(u&&(v&2||(v&32||v&384)&&(v&111551)===111551)){let He=fn(m);(He.flags&2||He.flags&32||He.flags&384)&&hS(He,u)}if(Oe&&(v&111551)===111551&&!(u.flags&16777216)){let He=jA(m);B(He.declarations)&&ue(He.declarations,qe=>oEe(qe)||ll(qe)&&!!qe.symbol.globalExports)&&Hw(!Te.allowUmdGlobalAccess,u,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Bc(Be))}if(P&&!Y&&(v&111551)===111551){let He=jA(Xst(m)),qe=Rw(P);He===Uo(P)?Sr(u,Z.Parameter_0_cannot_reference_itself,Wd(P.name)):He.valueDeclaration&&He.valueDeclaration.pos>P.pos&&qe.parent.locals&&f_(qe.parent.locals,He.escapedName,v)===He&&Sr(u,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,Wd(P.name),Wd(u))}if(u&&v&111551&&m.flags&2097152&&!(m.flags&111551)&&!JL(u)){let He=uR(m,111551);if(He){let qe=He.kind===282||He.kind===279||He.kind===281?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Vt=Bc(Be);hu(Sr(u,qe,Vt),He,Vt)}}if(Te.isolatedModules&&m&&Oe&&(v&111551)===111551){let qe=f_(Gr,Be,v)===m&&ll(D)&&D.locals&&f_(D.locals,Be,-111552);if(qe){let Vt=(oe=qe.declarations)==null?void 0:oe.find(kt=>kt.kind===277||kt.kind===274||kt.kind===275||kt.kind===272);Vt&&!rN(Vt)&&Sr(Vt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Bc(Be))}}})}function hu(u,m,v){return m?lg(u,mo(m,m.kind===282||m.kind===279||m.kind===281?Z._0_was_exported_here:Z._0_was_imported_here,v)):u}function vE(u){return Xs(u)?Bc(u):Wd(u)}function KU(u,m,v){if(!Ir(u)||u.escapedText!==m||P0n(u)||OY(u))return!1;let D=r0(u,!1,!1),P=D;for(;P;){if(xa(P.parent)){let Y=Uo(P.parent);if(!Y)break;let oe=Io(Y);if(Gg(oe,m))return Sr(u,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,vE(v),kl(Y)),!0;if(P===D&&!cg(P)){let Be=Fp(Y).thisType;if(Gg(Be,m))return Sr(u,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,vE(v)),!0}}P=P.parent}return!1}function $P(u){let m=Fo(u);return m&&TI(m,64,!0)?(Sr(u,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,xp(m)),!0):!1}function Fo(u){switch(u.kind){case 80:case 212:return u.parent?Fo(u.parent):void 0;case 234:if(Od(u.expression))return u.expression;default:return}}function mse(u,m,v){let D=1920|(wo(u)?111551:0);if(v===D){let P=Zh(An(u,m,788968&~D,void 0,!1)),Y=u.parent;if(P){if(zi(Y)){pe.assert(Y.left===u,"Should only be resolving left side of qualified name as a namespace");let oe=Y.right.escapedText;if(Gg(Fp(P),oe))return Sr(Y,Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,Bc(m),Bc(oe)),!0}return Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Bc(m)),!0}}return!1}function nq(u,m,v){if(v&788584){let D=Zh(An(u,m,111127,void 0,!1));if(D&&!(D.flags&1920))return Sr(u,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Bc(m)),!0}return!1}function G0(u){return u==="any"||u==="string"||u==="number"||u==="boolean"||u==="never"||u==="unknown"}function uk(u,m){return G0(m)&&u.parent.kind===282?(Sr(u,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,m),!0):!1}function lR(u,m,v){if(v&111551){if(G0(m)){let Y=u.parent.parent;if(Y&&Y.parent&&h1(Y)){let oe=Y.token;Y.parent.kind===265&&oe===96?Sr(u,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Bc(m)):xa(Y.parent)&&oe===96?Sr(u,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Bc(m)):xa(Y.parent)&&oe===119&&Sr(u,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Bc(m))}else Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Bc(m));return!0}let D=Zh(An(u,m,788544,void 0,!1)),P=D&&Hb(D);if(D&&P!==void 0&&!(P&111551)){let Y=Bc(m);return jU(m)?Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,Y):eW(u,D)?Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,Y,Y==="K"?"P":"K"):Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Y),!0}}return!1}function eW(u,m){let v=ji(u.parent,D=>Un(D)||ss(D)?!1:mh(D)||"quit");if(v&&v.members.length===1){let D=Fp(m);return!!(D.flags&1048576)&&z2e(D,384,!0)}return!1}function jU(u){switch(u){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function tW(u,m,v){if(v&111127){if(Zh(An(u,m,1024,void 0,!1)))return Sr(u,Z.Cannot_use_namespace_0_as_a_value,Bc(m)),!0}else if(v&788544&&Zh(An(u,m,1536,void 0,!1)))return Sr(u,Z.Cannot_use_namespace_0_as_a_type,Bc(m)),!0;return!1}function hS(u,m){var v;if(pe.assert(!!(u.flags&2||u.flags&32||u.flags&384)),u.flags&67108881&&u.flags&32)return;let D=(v=u.declarations)==null?void 0:v.find(P=>ZJ(P)||xa(P)||P.kind===267);if(D===void 0)return pe.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!$F(D,m)){let P,Y=Wd(Il(D));u.flags&2?P=Sr(m,Z.Block_scoped_variable_0_used_before_its_declaration,Y):u.flags&32?P=Sr(m,Z.Class_0_used_before_its_declaration,Y):u.flags&256?P=Sr(m,Z.Enum_0_used_before_its_declaration,Y):(pe.assert(!!(u.flags&128)),sS(Te)&&(P=Sr(m,Z.Enum_0_used_before_its_declaration,Y))),P&&lg(P,mo(D,Z._0_is_declared_here,Y))}}function Yw(u,m,v){return!!m&&!!ji(u,D=>D===m||(D===v||bu(D)&&(!ZL(D)||SI(D)&3)?"quit":!1))}function Sv(u){switch(u.kind){case 272:return u;case 274:return u.parent;case 275:return u.parent.parent;case 277:return u.parent.parent.parent;default:return}}function Mb(u){return u.declarations&&be(u.declarations,d9)}function d9(u){return u.kind===272||u.kind===271||u.kind===274&&!!u.name||u.kind===275||u.kind===281||u.kind===277||u.kind===282||u.kind===278&&hne(u)||fo(u)&&nI(u)===2&&hne(u)||_p(u)&&fo(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64&&h5(u.parent.right)||u.kind===305||u.kind===304&&h5(u.initializer)||u.kind===261&&CP(u)||u.kind===209&&CP(u.parent.parent)}function h5(u){return eAe(u)||UA(u)&&YN(u)}function iq(u,m){let v=aq(u);if(v){let P=oU(v.expression).arguments[0];return Ir(v.name)?Zh(Gg(gIn(P),v.name.escapedText)):void 0}if(nc(u)||u.moduleReference.kind===284){let P=F0(u,_ye(u)||_7(u)),Y=wE(P);if(Y&&102<=We&&We<=199){let oe=RQ(Y,"module.exports",u,m);if(oe)return oe}return vv(u,P,Y,!1),Y}let D=oW(u.moduleReference,m);return m5(u,D),D}function m5(u,m){if(vv(u,void 0,m,!1)&&!u.isTypeOnly){let v=uR(Uo(u)),D=v.kind===282||v.kind===279,P=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,Y=D?Z._0_was_exported_here:Z._0_was_imported_here,oe=v.kind===279?"*":HD(v.name);lg(Sr(u.moduleReference,P),mo(v,Y,oe))}}function rW(u,m,v,D){let P=u.exports.get("export="),Y=P?Gg(Io(P),m,!0):u.exports.get(m),oe=Zh(Y,D);return vv(v,Y,oe,!1),oe}function sq(u){return Cf(u)&&!u.isExportEquals||Ga(u,2048)||R0(u)||tk(u)}function eZ(u){return mA(u)?s.getEmitSyntaxForUsageLocation(ms(u),u):void 0}function ZN(u,m){return u===99&&m===1}function nW(u,m){if(100<=We&&We<=199&&eZ(u)===99){m??(m=F0(u,u,!0));let D=m&&FJ(m);return D&&(Zu(D)||d9e(D.fileName)===".d.json.ts")}return!1}function C5(u,m,v,D){let P=u&&eZ(D);if(u&&P!==void 0){let Y=s.getImpliedNodeFormatForEmit(u);if(P===99&&Y===1&&100<=We&&We<=199)return!0;if(P===99&&Y===99)return!1}if(!Tt)return!1;if(!u||u.isDeclarationFile){let Y=rW(m,"default",void 0,!0);return!(Y&&jt(Y.declarations,sq)||rW(m,Ap("__esModule"),void 0,v))}return n0(u)?typeof u.externalModuleIndicator!="object"&&!rW(m,Ap("__esModule"),void 0,v):Xw(m)}function p9(u,m){let v=F0(u,u.parent.moduleSpecifier);if(v)return iW(v,u,m)}function iW(u,m,v){var D;let P=(D=u.declarations)==null?void 0:D.find(ll),Y=Qw(m),oe,Be;if(NY(u))oe=u;else if(P&&Y&&102<=We&&We<=199&&eZ(Y)===1&&s.getImpliedNodeFormatForEmit(P)===99&&(Be=rW(u,"module.exports",m,v))){if(!kw(Te)){Sr(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,kl(u),"esModuleInterop");return}return vv(m,Be,void 0,!1),Be}else oe=rW(u,"default",m,v);if(!Y)return oe;let Oe=nW(Y,u),He=C5(P,u,v,Y);if(!oe&&!He&&!Oe)if(Xw(u)&&!Tt){let qe=We>=5?"allowSyntheticDefaultImports":"esModuleInterop",kt=u.exports.get("export=").valueDeclaration,vr=Sr(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,kl(u),qe);kt&&lg(vr,mo(kt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,qe))}else Vw(m)?tZ(u,m):zU(u,u,m,eS(m)&&m.propertyName||m.name);else if(He||Oe){let qe=wE(u,v)||Zh(u,v);return vv(m,u,qe,!1),qe}return vv(m,oe,void 0,!1),oe}function Qw(u){switch(u.kind){case 274:return u.parent.moduleSpecifier;case 272:return ZF(u.moduleReference)?u.moduleReference.expression:void 0;case 275:return u.parent.parent.moduleSpecifier;case 277:return u.parent.parent.parent.moduleSpecifier;case 282:return u.parent.parent.moduleSpecifier;default:return pe.assertNever(u)}}function tZ(u,m){var v,D,P;if((v=u.exports)!=null&&v.has(m.symbol.escapedName))Sr(m.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,kl(u),kl(m.symbol));else{let Y=Sr(m.name,Z.Module_0_has_no_default_export,kl(u)),oe=(D=u.exports)==null?void 0:D.get("__export");if(oe){let Be=(P=oe.declarations)==null?void 0:P.find(Oe=>{var He,qe;return!!(Gh(Oe)&&Oe.moduleSpecifier&&((qe=(He=F0(Oe,Oe.moduleSpecifier))==null?void 0:He.exports)!=null&&qe.has("default")))});Be&&lg(Y,mo(Be,Z.export_Asterisk_does_not_re_export_a_default))}}}function Qx(u,m){let v=u.parent.parent.moduleSpecifier,D=F0(u,v),P=Ux(D,v,m,!1);return vv(u,D,P,!1),P}function sW(u,m){let v=u.parent.moduleSpecifier,D=v&&F0(u,v),P=v&&Ux(D,v,m,!1);return vv(u,D,P,!1),P}function HC(u,m){if(u===it&&m===it)return it;if(u.flags&790504)return u;let v=gA(u.flags|m.flags,u.escapedName);return pe.assert(u.declarations||m.declarations),v.declarations=io(Nn(u.declarations,m.declarations),yg),v.parent=u.parent||m.parent,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration),m.members&&(v.members=new Map(m.members)),u.exports&&(v.exports=new Map(u.exports)),v}function RQ(u,m,v,D){var P;if(u.flags&1536){let Y=B1(u).get(m),oe=Zh(Y,D),Be=(P=fa(u).typeOnlyExportStarMap)==null?void 0:P.get(m);return vv(v,Y,oe,!1,Be,m),oe}}function Xx(u,m){if(u.flags&3){let v=u.valueDeclaration.type;if(v)return Zh(Gg(nl(v),m))}}function _5(u,m,v=!1){var D;let P=_ye(u)||u.moduleSpecifier,Y=F0(u,P),oe=!jo(m)&&m.propertyName||m.name;if(!Ir(oe)&&oe.kind!==11)return;let Be=CF(oe),He=Ux(Y,P,!1,Be==="default"&&Tt);if(He&&(Be||oe.kind===11)){if(NY(Y))return Y;let qe;Y&&Y.exports&&Y.exports.get("export=")?qe=Gg(Io(He),Be,!0):qe=Xx(He,Be),qe=Zh(qe,v);let Vt=RQ(He,Be,m,v);if(Vt===void 0&&Be==="default"){let vr=(D=Y.declarations)==null?void 0:D.find(ll);(nW(P,Y)||C5(vr,Y,v,P))&&(Vt=wE(Y,v)||Zh(Y,v))}let kt=Vt&&qe&&Vt!==qe?HC(qe,Vt):Vt||qe;return eS(m)&&nW(P,Y)&&Be!=="default"?Sr(oe,Z.Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0,jS[We]):kt||zU(Y,He,u,oe),kt}}function zU(u,m,v,D){var P;let Y=f9(u,v),oe=Wd(D),Be=Ir(D)?OKt(D,m):void 0;if(Be!==void 0){let Oe=kl(Be),He=Sr(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,Y,oe,Oe);Be.valueDeclaration&&lg(He,mo(Be.valueDeclaration,Z._0_is_declared_here,Oe))}else(P=u.exports)!=null&&P.has("default")?Sr(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,Y,oe):Jx(v,D,oe,u,Y)}function Jx(u,m,v,D,P){var Y,oe;let Be=(oe=(Y=Gs(D.valueDeclaration,WI))==null?void 0:Y.locals)==null?void 0:oe.get(CF(m)),Oe=D.exports;if(Be){let He=Oe?.get("export=");if(He)Et(He,Be)?Cse(u,m,v,P):Sr(m,Z.Module_0_has_no_exported_member_1,P,v);else{let qe=Oe?de(MJt(Oe),kt=>!!Et(kt,Be)):void 0,Vt=qe?Sr(m,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,P,v,kl(qe)):Sr(m,Z.Module_0_declares_1_locally_but_it_is_not_exported,P,v);Be.declarations&&lg(Vt,...At(Be.declarations,(kt,vr)=>mo(kt,vr===0?Z._0_is_declared_here:Z.and_here,v)))}}else Sr(m,Z.Module_0_has_no_exported_member_1,P,v)}function Cse(u,m,v,D){if(We>=5){let P=kw(Te)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v)}else if(wo(u)){let P=kw(Te)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v)}else{let P=kw(Te)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v,v,D)}}function oq(u,m){if(uy(u)&&lv(u.propertyName||u.name)){let oe=Qw(u),Be=oe&&F0(u,oe);if(Be)return iW(Be,u,m)}let v=hg(u)?Rw(u):u.parent.parent.parent,D=aq(v),P=_5(v,D||u,m),Y=u.propertyName||u.name;return D&&P&&Ir(Y)?Zh(Gg(Io(P),Y.escapedText),m):(vv(u,void 0,P,!1),P)}function aq(u){if(nc(u)&&u.initializer&&jo(u.initializer))return u.initializer}function bpe(u,m){if(mE(u.parent)){let v=wE(u.parent.symbol,m);return vv(u,void 0,v,!1),v}}function cq(u,m,v){let D=u.propertyName||u.name;if(lv(D)){let Y=Qw(u),oe=Y&&F0(u,Y);if(oe)return iW(oe,u,!!v)}let P=u.parent.parent.moduleSpecifier?_5(u.parent.parent,u,v):D.kind===11?void 0:TI(D,m,!1,v);return vv(u,void 0,P,!1),P}function y5(u,m){let v=Cf(u)?u.expression:u.right,D=rZ(v,m);return vv(u,void 0,D,!1),D}function rZ(u,m){if(vd(u))return RI(u).symbol;if(!fC(u)&&!Od(u))return;let v=TI(u,901119,!0,m);return v||(RI(u),sa(u).resolvedSymbol)}function _se(u,m){if(fo(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64)return rZ(u.parent.right,m)}function b5(u,m=!1){switch(u.kind){case 272:case 261:return iq(u,m);case 274:return p9(u,m);case 275:return Qx(u,m);case 281:return sW(u,m);case 277:case 209:return oq(u,m);case 282:return cq(u,901119,m);case 278:case 227:return y5(u,m);case 271:return bpe(u,m);case 305:return TI(u.name,901119,!0,m);case 304:return rZ(u.initializer,m);case 213:case 212:return _se(u,m);default:return pe.fail()}}function qU(u,m=901119){return u?(u.flags&(2097152|m))===2097152||!!(u.flags&2097152&&u.flags&67108864):!1}function Zh(u,m){return!m&&qU(u)?YC(u):u}function YC(u){pe.assert((u.flags&2097152)!==0,"Should only get Alias here.");let m=fa(u);if(m.aliasTarget)m.aliasTarget===nr&&(m.aliasTarget=it);else{m.aliasTarget=nr;let v=Mb(u);if(!v)return pe.fail();let D=b5(v);m.aliasTarget===nr?m.aliasTarget=D||it:Sr(v,Z.Circular_definition_of_import_alias_0,kl(u))}return m.aliasTarget}function lq(u){if(fa(u).aliasTarget!==nr)return YC(u)}function Hb(u,m,v){let D=m&&uR(u),P=D&&Gh(D),Y=D&&(P?F0(D.moduleSpecifier,D.moduleSpecifier,!0):YC(D.symbol)),oe=P&&Y?LN(Y):void 0,Be=v?0:u.flags,Oe;for(;u.flags&2097152;){let He=fn(YC(u));if(!P&&He===Y||oe?.get(He.escapedName)===He)break;if(He===it)return-1;if(He===u||Oe?.has(He))break;He.flags&2097152&&(Oe?Oe.add(He):Oe=new Set([u,He])),Be|=He.flags,u=He}return Be}function vv(u,m,v,D,P,Y){if(!u||jo(u))return!1;let oe=Uo(u);if(nN(u)){let Oe=fa(oe);return Oe.typeOnlyDeclaration=u,!0}if(P){let Oe=fa(oe);return Oe.typeOnlyDeclaration=P,oe.escapedName!==Y&&(Oe.typeOnlyExportStarName=Y),!0}let Be=fa(oe);return NQ(Be,m,D)||NQ(Be,v,D)}function NQ(u,m,v){var D;if(m&&(u.typeOnlyDeclaration===void 0||v&&u.typeOnlyDeclaration===!1)){let P=((D=m.exports)==null?void 0:D.get("export="))??m,Y=P.declarations&&de(P.declarations,nN);u.typeOnlyDeclaration=Y??fa(P).typeOnlyDeclaration??!1}return!!u.typeOnlyDeclaration}function uR(u,m){var v;if(!(u.flags&2097152))return;let D=fa(u);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let P=Zh(u);vv((v=u.declarations)==null?void 0:v[0],Mb(u)&&qot(u),P,!0)}if(m===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let P=D.typeOnlyDeclaration.kind===279?Zh(LN(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||u.escapedName)):YC(D.typeOnlyDeclaration.symbol);return Hb(P)&m?D.typeOnlyDeclaration:void 0}}function oW(u,m){return u.kind===80&&P7(u)&&(u=u.parent),u.kind===80||u.parent.kind===167?TI(u,1920,!1,m):(pe.assert(u.parent.kind===272),TI(u,901119,!1,m))}function f9(u,m){return u.parent?f9(u.parent,m)+"."+kl(u):kl(u,m,void 0,36)}function uq(u){for(;zi(u.parent);)u=u.parent;return u}function Epe(u){let m=B0(u),v=An(m,m,111551,void 0,!0);if(v){for(;zi(m.parent);){let D=Io(v);if(v=Gg(D,m.parent.right.escapedText),!v)return;m=m.parent}return v}}function TI(u,m,v,D,P){if(sf(u))return;let Y=1920|(wo(u)?m&111551:0),oe;if(u.kind===80){let Be=m===Y||sp(u)?Z.Cannot_find_namespace_0:gmn(B0(u)),Oe=wo(u)&&!sp(u)?yse(u,m):void 0;if(oe=jA(An(P||u,u,m,v||Oe?void 0:Be,!0,!1)),!oe)return jA(Oe)}else if(u.kind===167||u.kind===212){let Be=u.kind===167?u.left:u.expression,Oe=u.kind===167?u.right:u.name,He=TI(Be,Y,v,!1,P);if(!He||sf(Oe))return;if(He===it)return He;if(He.valueDeclaration&&wo(He.valueDeclaration)&&k_(Te)!==100&&nc(He.valueDeclaration)&&He.valueDeclaration.initializer&&a_n(He.valueDeclaration.initializer)){let qe=He.valueDeclaration.initializer.arguments[0],Vt=F0(qe,qe);if(Vt){let kt=wE(Vt);kt&&(He=kt)}}if(oe=jA(f_(B1(He),Oe.escapedText,m)),!oe&&He.flags&2097152&&(oe=jA(f_(B1(YC(He)),Oe.escapedText,m))),!oe){if(!v){let qe=f9(He),Vt=Wd(Oe),kt=OKt(Oe,He);if(kt){Sr(Oe,Z._0_has_no_exported_member_named_1_Did_you_mean_2,qe,Vt,kl(kt));return}let vr=zi(u)&&uq(u);if(qn&&m&788968&&vr&&!CN(vr.parent)&&Epe(vr)){Sr(vr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,oy(vr));return}if(m&1920&&zi(u.parent)){let vn=jA(f_(B1(He),Oe.escapedText,788968));if(vn){Sr(u.parent.right,Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,kl(vn),Bc(u.parent.right.escapedText));return}}Sr(Oe,Z.Namespace_0_has_no_exported_member_1,qe,Vt)}return}}else pe.assertNever(u,"Unknown entity name kind.");return!sp(u)&&fC(u)&&(oe.flags&2097152||u.parent.kind===278)&&vv(Nye(u),oe,void 0,!0),oe.flags&m||D?oe:YC(oe)}function yse(u,m){if(iot(u.parent)){let v=$U(u.parent);if(v)return An(v,u,m,void 0,!0)}}function $U(u){if(ji(u,P=>l3(P)||P.flags&16777216?iS(P):"quit"))return;let v=bP(u);if(v&&VC(v)&&une(v.expression)){let P=Uo(v.expression.left);if(P)return DQ(P)}if(v&&UA(v)&&une(v.parent)&&VC(v.parent.parent)){let P=Uo(v.parent.left);if(P)return DQ(P)}if(v&&(a2(v)||fm(v))&&fo(v.parent.parent)&&nI(v.parent.parent)===6){let P=Uo(v.parent.parent.left);if(P)return DQ(P)}let D=WL(u);if(D&&bu(D)){let P=Uo(D);return P&&P.valueDeclaration}}function DQ(u){let m=u.parent.valueDeclaration;return m?(b7(m)?FY(m):l1(m)?E7(m):void 0)||m:void 0}function gq(u){let m=u.valueDeclaration;if(!m||!wo(m)||u.flags&524288||VL(m,!1))return;let v=nc(m)?E7(m):FY(m);if(v){let D=mS(v);if(D)return zKt(D,u)}}function F0(u,m,v){let P=k_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return BE(u,m,v?void 0:P,v)}function BE(u,m,v,D=!1,P=!1){return mA(m)?eK(u,m.text,v,D?void 0:m,P):void 0}function eK(u,m,v,D,P=!1){var Y,oe,Be,Oe,He,qe,Vt,kt,vr,dn,vn,ii;if(D&&Ac(m,"@types/")){let Kc=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Vu=Nm(m,"@types/");Sr(D,Kc,Vu,m)}let Yi=uIn(m,!0);if(Yi)return Yi;let js=ms(u),Co=mA(u)?u:((Y=xh(u)?u:u.parent&&xh(u.parent)&&u.parent.name===u?u.parent:void 0)==null?void 0:Y.name)||((oe=ky(u)?u:void 0)==null?void 0:oe.argument.literal)||(nc(u)&&u.initializer&&ay(u.initializer,!0)?u.initializer.arguments[0]:void 0)||((Be=ji(u,Up))==null?void 0:Be.arguments[0])||((Oe=ji(u,Hp(Mf,SN,Gh)))==null?void 0:Oe.moduleSpecifier)||((He=ji(u,LL))==null?void 0:He.moduleReference.expression),Ji=Co&&mA(Co)?s.getModeForUsageLocation(js,Co):s.getDefaultResolutionModeForFile(js),Mi=k_(Te),To=(qe=s.getResolvedModule(js,m,Ji))==null?void 0:qe.resolvedModule,Ka=D&&To&&Ctt(Te,To,js),yl=To&&(!Ka||Ka===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&s.getSourceFile(To.resolvedFileName);if(yl){if(Ka&&Sr(D,Ka,m,To.resolvedFileName),To.resolvedUsingTsExtension&&PC(m)){let Kc=((Vt=ji(u,Mf))==null?void 0:Vt.importClause)||ji(u,Hp(km,Gh));(D&&Kc&&!Kc.isTypeOnly||ji(u,Up))&&Sr(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,ka(pe.checkDefined(O7(m))))}else if(To.resolvedUsingTsExtension&&!kie(Te,js.fileName)){let Kc=((kt=ji(u,Mf))==null?void 0:kt.importClause)||ji(u,Hp(km,Gh));if(D&&!(Kc?.isTypeOnly||ji(u,Um))){let Vu=pe.checkDefined(O7(m));Sr(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Vu)}}else if(Te.rewriteRelativeImportExtensions&&!(u.flags&33554432)&&!PC(m)&&!ky(u)&&!oge(u)){let Kc=gne(m,Te);if(!To.resolvedUsingTsExtension&&Kc)Sr(D,Z.This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0,i1(Xc(js.fileName,s.getCurrentDirectory()),To.resolvedFileName,JD(s)));else if(To.resolvedUsingTsExtension&&!Kc&&SP(yl,s))Sr(D,Z.This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path,gE(m));else if(To.resolvedUsingTsExtension&&Kc){let Vu=(vr=s.getRedirectFromSourceFile(yl.path))==null?void 0:vr.resolvedRef;if(Vu){let gd=!s.useCaseSensitiveFileNames(),Ll=s.getCommonSourceDirectory(),Ef=RU(Vu.commandLine,gd),UI=mp(Ll,Ef,gd),V0=mp(Te.outDir||Ll,Vu.commandLine.options.outDir||Ef,gd);UI!==V0&&Sr(D,Z.This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files)}}}if(yl.symbol){if(D&&To.isExternalLibraryImport&&!ez(To.extension)&&E5(!1,D,js,Ji,To,m),D&&(We===100||We===101)){let Kc=js.impliedNodeFormat===1&&!ji(u,Up)||!!ji(u,km),Vu=ji(u,gd=>Um(gd)||Gh(gd)||Mf(gd)||SN(gd));if(Kc&&yl.impliedNodeFormat===99&&!NLe(Vu))if(ji(u,km))Sr(D,Z.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead,m);else{let gd,Ll=QT(js.fileName);(Ll===".ts"||Ll===".js"||Ll===".tsx"||Ll===".jsx")&&(gd=l7(js));let Ef=Vu?.kind===273&&((dn=Vu.importClause)!=null&&dn.isTypeOnly)?Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Vu?.kind===206?Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Z.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead;PA.add(Bw(ms(D),D,wu(gd,Ef,m)))}}return jA(yl.symbol)}D&&v&&!Obe(D)&&Sr(D,Z.File_0_is_not_a_module,yl.fileName);return}if(Vb){let Kc=YA(Vb,Vu=>Vu.pattern,m);if(Kc){let Vu=or&&or.get(m);return jA(Vu||Kc.symbol)}}if(!D)return;if(To&&!ez(To.extension)&&Ka===void 0||Ka===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(P){let Kc=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;Sr(D,Kc,m,To.resolvedFileName)}else E5(Rt&&!!v,D,js,Ji,To,m);return}if(v){if(To){let Kc=s.getRedirectFromSourceFile(To.resolvedFileName);if(Kc?.outputDts){Sr(D,Z.Output_file_0_has_not_been_built_from_source_file_1,Kc.outputDts,To.resolvedFileName);return}}if(Ka)Sr(D,Ka,m,To.resolvedFileName);else{let Kc=Ip(m)&&!E0(m),Vu=Mi===3||Mi===99;if(!NP(Te)&&aA(m,".json")&&Mi!==1&&TAe(Te))Sr(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,m);else if(Ji===99&&Vu&&Kc){let gd=Xc(m,Mo(js.path)),Ll=(vn=Ay.find(([Ef,UI])=>s.fileExists(gd+Ef)))==null?void 0:vn[1];Ll?Sr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,m+Ll):Sr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if((ii=s.getResolvedModule(js,m,Ji))!=null&&ii.alternateResult){let gd=kJ(js,s,m,Ji,m);Hw(!0,D,wu(gd,v,m))}else Sr(D,v,m)}}return;function ka(Kc){let Vu=Jne(m,Kc);if(One(We)||Ji===99){let gd=PC(m)&&kie(Te);return Vu+(Kc===".mts"||Kc===".d.mts"?gd?".mts":".mjs":Kc===".cts"||Kc===".d.mts"?gd?".cts":".cjs":gd?".ts":".js")}return Vu}}function E5(u,m,v,D,{packageId:P,resolvedFileName:Y},oe){if(Obe(m))return;let Be;!Xr(oe)&&P&&(Be=kJ(v,s,oe,D,P.name)),Hw(u,m,wu(Be,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,oe,Y))}function wE(u,m){if(u?.exports){let v=Zh(u.exports.get("export="),m),D=tK(jA(v),jA(u));return jA(D)||u}}function tK(u,m){if(!u||u===it||u===m||m.exports.size===1||u.flags&2097152)return u;let v=fa(u);if(v.cjsExportMerged)return v.cjsExportMerged;let D=u.flags&33554432?u:BQ(u);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=qu()),m.exports.forEach((P,Y)=>{Y!=="export="&&D.exports.set(Y,D.exports.has(Y)?Ev(D.exports.get(Y),P):P)}),D===u&&(fa(D).resolvedExports=void 0,fa(D).resolvedMembers=void 0),fa(D).cjsExportMerged=D,v.cjsExportMerged=D}function Ux(u,m,v,D){var P;let Y=wE(u,v);if(!v&&Y){if(!D&&!(Y.flags&1539)&&!Cp(Y,308)){let Oe=We>=5?"allowSyntheticDefaultImports":"esModuleInterop";return Sr(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Oe),Y}let oe=m.parent,Be=Mf(oe)&&JJ(oe);if(Be||Up(oe)){let Oe=Up(oe)?oe.arguments[0]:oe.moduleSpecifier,He=Io(Y),qe=s_n(He,Y,u,Oe);if(qe)return rK(Y,qe,oe);let Vt=(P=u?.declarations)==null?void 0:P.find(ll),kt=eZ(Oe),vr;if(Be&&Vt&&102<=We&&We<=199&&kt===1&&s.getImpliedNodeFormatForEmit(Vt)===99&&(vr=rW(Y,"module.exports",Be,v)))return!D&&!(Y.flags&1539)&&Sr(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,"esModuleInterop"),kw(Te)&&Aq(He)?rK(vr,He,oe):vr;let dn=Vt&&ZN(kt,s.getImpliedNodeFormatForEmit(Vt));if((kw(Te)||dn)&&(Aq(He)||Gg(He,"default",!0)||dn)){let vn=He.flags&3670016?o_n(He,Y,u,Oe):qKt(Y,Y.parent);return rK(Y,vn,oe)}}}return Y}function Aq(u){return jt(bWe(u,0))||jt(bWe(u,1))}function rK(u,m,v){let D=gA(u.flags,u.escapedName);D.declarations=u.declarations?u.declarations.slice():[],D.parent=u.parent,D.links.target=u,D.links.originatingImport=v,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),u.members&&(D.members=new Map(u.members)),u.exports&&(D.exports=new Map(u.exports));let P=pR(m);return D.links.type=Hf(D,P.members,E,E,P.indexInfos),D}function Xw(u){return u.exports.get("export=")!==void 0}function dq(u){return MJt(LN(u))}function bse(u){let m=dq(u),v=wE(u);if(v!==u){let D=Io(v);I9(D)&&Or(m,Gd(D))}return m}function pq(u,m){LN(u).forEach((P,Y)=>{B5(Y)||m(P,Y)});let D=wE(u);if(D!==u){let P=Io(D);I9(P)&&l3s(P,(Y,oe)=>{m(Y,oe)})}}function nK(u,m){let v=LN(m);if(v)return v.get(u)}function fq(u,m){let v=nK(u,m);if(v)return v;let D=wE(m);if(D===m)return;let P=Io(D);return I9(P)?Gg(P,u):void 0}function I9(u){return!(u.flags&402784252||la(u)&1||Nv(u)||yA(u))}function B1(u){return u.flags&6256?TJt(u,"resolvedExports"):u.flags&1536?LN(u):u.exports||Ee}function LN(u){let m=fa(u);if(!m.resolvedExports){let{exports:v,typeOnlyExportStarMap:D}=sK(u);m.resolvedExports=v,m.typeOnlyExportStarMap=D}return m.resolvedExports}function iK(u,m,v,D){m&&m.forEach((P,Y)=>{if(Y==="default")return;let oe=u.get(Y);if(!oe)u.set(Y,P),v&&D&&v.set(Y,{specifierText:xp(D.moduleSpecifier)});else if(v&&D&&oe&&Zh(oe)!==Zh(P)){let Be=v.get(Y);Be.exportsWithDuplicate?Be.exportsWithDuplicate.push(D):Be.exportsWithDuplicate=[D]}})}function sK(u){let m=[],v,D=new Set;u=wE(u);let P=Y(u)||Ee;return v&&D.forEach(oe=>v.delete(oe)),{exports:P,typeOnlyExportStarMap:v};function Y(oe,Be,Oe){if(!Oe&&oe?.exports&&oe.exports.forEach((Vt,kt)=>D.add(kt)),!(oe&&oe.exports&&Qi(m,oe)))return;let He=new Map(oe.exports),qe=oe.exports.get("__export");if(qe){let Vt=qu(),kt=new Map;if(qe.declarations)for(let vr of qe.declarations){let dn=F0(vr,vr.moduleSpecifier),vn=Y(dn,vr,Oe||vr.isTypeOnly);iK(Vt,vn,kt,vr)}kt.forEach(({exportsWithDuplicate:vr},dn)=>{if(!(dn==="export="||!(vr&&vr.length)||He.has(dn)))for(let vn of vr)PA.add(mo(vn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,kt.get(dn).specifierText,Bc(dn)))}),iK(He,Vt)}return Be?.isTypeOnly&&(v??(v=new Map),He.forEach((Vt,kt)=>v.set(kt,Be))),He}}function jA(u){let m;return u&&u.mergeId&&(m=MU[u.mergeId])?m:u}function Uo(u){return jA(u.symbol&&Xst(u.symbol))}function mS(u){return mE(u)?Uo(u):void 0}function $m(u){return jA(u.parent&&Xst(u.parent))}function S5(u){var m,v;return(((m=u.valueDeclaration)==null?void 0:m.kind)===220||((v=u.valueDeclaration)==null?void 0:v.kind)===219)&&mS(u.valueDeclaration.parent)||u}function oK(u,m){let v=ms(m),D=rd(v),P=fa(u),Y;if(P.extendedContainersByFile&&(Y=P.extendedContainersByFile.get(D)))return Y;if(v&&v.imports){for(let Be of v.imports){if(sp(Be))continue;let Oe=F0(m,Be,!0);!Oe||!Ae(Oe,u)||(Y=Ft(Y,Oe))}if(B(Y))return(P.extendedContainersByFile||(P.extendedContainersByFile=new Map)).set(D,Y),Y}if(P.extendedContainers)return P.extendedContainers;let oe=s.getSourceFiles();for(let Be of oe){if(!xm(Be))continue;let Oe=Uo(Be);Ae(Oe,u)&&(Y=Ft(Y,Oe))}return P.extendedContainers=Y||E}function kQ(u,m,v){let D=$m(u);if(D&&!(u.flags&262144))return Oe(D);let P=Xt(u.declarations,qe=>{if(!s_(qe)&&qe.parent){if(GQ(qe.parent))return Uo(qe.parent);if(_N(qe.parent)&&qe.parent.parent&&wE(Uo(qe.parent.parent))===u)return Uo(qe.parent.parent)}if(vd(qe)&&fo(qe.parent)&&qe.parent.operatorToken.kind===64&&_p(qe.parent.left)&&Od(qe.parent.left.expression))return cN(qe.parent.left)||p3(qe.parent.left.expression)?Uo(ms(qe)):(RI(qe.parent.left.expression),sa(qe.parent.left.expression).resolvedSymbol)});if(!B(P))return;let Y=Xt(P,qe=>Ae(qe,u)?qe:void 0),oe=[],Be=[];for(let qe of Y){let[Vt,...kt]=Oe(qe);oe=Ft(oe,Vt),Be=Or(Be,kt)}return Nn(oe,Be);function Oe(qe){let Vt=Xt(qe.declarations,He),kt=m&&oK(u,m),vr=v5(qe,v);if(m&&qe.flags&Jw(v)&&m9(qe,m,1920,!1))return Ft(Nn(Nn([qe],Vt),kt),vr);let dn=!(qe.flags&Jw(v))&&qe.flags&788968&&Fp(qe).flags&524288&&v===111551?h9(m,ii=>Dh(ii,Yi=>{if(Yi.flags&Jw(v)&&Io(Yi)===Fp(qe))return Yi})):void 0,vn=dn?[dn,...Vt,qe]:[...Vt,qe];return vn=Ft(vn,vr),vn=Or(vn,kt),vn}function He(qe){return D&&aK(qe,D)}}function v5(u,m){let v=!!B(u.declarations)&&ma(u.declarations);if(m&111551&&v&&v.parent&&nc(v.parent)&&(og(v)&&v===v.parent.initializer||mh(v)&&v===v.parent.type))return Uo(v.parent)}function aK(u,m){let v=lK(u),D=v&&v.exports&&v.exports.get("export=");return D&&Et(D,m)?v:void 0}function Ae(u,m){if(u===$m(m))return m;let v=u.exports&&u.exports.get("export=");if(v&&Et(v,m))return u;let D=B1(u),P=D.get(m.escapedName);return P&&Et(P,m)?P:Dh(D,Y=>{if(Et(Y,m))return Y})}function Et(u,m){if(jA(Zh(jA(u)))===jA(Zh(jA(m))))return u}function fn(u){return jA(u&&(u.flags&1048576)!==0&&u.exportSymbol||u)}function qi(u,m){return!!(u.flags&111551||u.flags&2097152&&Hb(u,!m)&111551)}function ic(u){var m;let v=new S(ks,u);return T++,v.id=T,(m=ki)==null||m.recordType(v),v}function Oc(u,m){let v=ic(u);return v.symbol=m,v}function zl(u){return new S(ks,u)}function Vc(u,m,v=0,D){_A(m,D);let P=ic(u);return P.intrinsicName=m,P.debugIntrinsicName=D,P.objectFlags=v|524288|2097152|33554432|16777216,P}function _A(u,m){let v=`${u},${m??""}`;Dn.has(v)&&pe.fail(`Duplicate intrinsic type name ${u}${m?` (${m})`:""}; you may need to pass a name to createIntrinsicType.`),Dn.add(v)}function Lh(u,m){let v=Oc(524288,m);return v.objectFlags=u,v.members=void 0,v.properties=void 0,v.callSignatures=void 0,v.constructSignatures=void 0,v.indexInfos=void 0,v}function g0(){return Ha(Do(bOt.keys(),TE))}function Yy(u){return Oc(262144,u)}function B5(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)!==95&&u.charCodeAt(2)!==64&&u.charCodeAt(2)!==35}function Qy(u){let m;return u.forEach((v,D)=>{aW(v,D)&&(m||(m=[])).push(v)}),m||E}function aW(u,m){return!B5(m)&&qi(u)}function Iq(u){let m=Qy(u),v=qst(u);return v?Nn(m,[v]):m}function QB(u,m,v,D,P){let Y=u;return Y.members=m,Y.properties=E,Y.callSignatures=v,Y.constructSignatures=D,Y.indexInfos=P,m!==Ee&&(Y.properties=Qy(m)),Y}function Hf(u,m,v,D,P){return QB(Lh(16,u),m,v,D,P)}function cK(u){if(u.constructSignatures.length===0)return u;if(u.objectTypeWithoutAbstractConstructSignatures)return u.objectTypeWithoutAbstractConstructSignatures;let m=Me(u.constructSignatures,D=>!(D.flags&4));if(u.constructSignatures===m)return u;let v=Hf(u.symbol,u.members,u.callSignatures,jt(m)?m:E,u.indexInfos);return u.objectTypeWithoutAbstractConstructSignatures=v,v.objectTypeWithoutAbstractConstructSignatures=v,v}function h9(u,m){let v;for(let D=u;D;D=D.parent){if(WI(D)&&D.locals&&!fc(D)&&(v=m(D.locals,void 0,!0,D)))return v;switch(D.kind){case 308:if(!vl(D))break;case 268:let P=Uo(D);if(v=m(P?.exports||Ee,void 0,!0,D))return v;break;case 264:case 232:case 265:let Y;if((Uo(D).members||Ee).forEach((oe,Be)=>{oe.flags&788968&&(Y||(Y=qu())).set(Be,oe)}),Y&&(v=m(Y,void 0,!1,D)))return v;break}}return m(Gr,void 0,!0)}function Jw(u){return u===111551?111551:1920}function m9(u,m,v,D,P=new Map){if(!(u&&!gWe(u)))return;let Y=fa(u),oe=Y.accessibleChainCache||(Y.accessibleChainCache=new Map),Be=h9(m,(Yi,js,Co,Ji)=>Ji),Oe=`${D?0:1}|${Be?rd(Be):0}|${v}`;if(oe.has(Oe))return oe.get(Oe);let He=kg(u),qe=P.get(He);qe||P.set(He,qe=[]);let Vt=h9(m,kt);return oe.set(Oe,Vt),Vt;function kt(Yi,js,Co){if(!Qi(qe,Yi))return;let Ji=vn(Yi,js,Co);return qe.pop(),Ji}function vr(Yi,js){return!xQ(Yi,m,js)||!!m9(Yi.parent,m,Jw(js),D,P)}function dn(Yi,js,Co){return(u===(js||Yi)||jA(u)===jA(js||Yi))&&!jt(Yi.declarations,GQ)&&(Co||vr(jA(Yi),v))}function vn(Yi,js,Co){return dn(Yi.get(u.escapedName),void 0,js)?[u]:Dh(Yi,Mi=>{if(Mi.flags&2097152&&Mi.escapedName!=="export="&&Mi.escapedName!=="default"&&!(bAe(Mi)&&m&&xm(ms(m)))&&(!D||jt(Mi.declarations,LL))&&(!Co||!jt(Mi.declarations,uZe))&&(js||!Cp(Mi,282))){let To=YC(Mi),Ka=ii(Mi,To,js);if(Ka)return Ka}if(Mi.escapedName===u.escapedName&&Mi.exportSymbol&&dn(jA(Mi.exportSymbol),void 0,js))return[u]})||(Yi===Gr?ii(pr,pr,js):void 0)}function ii(Yi,js,Co){if(dn(Yi,js,Co))return[Yi];let Ji=B1(js),Mi=Ji&&kt(Ji,!0);if(Mi&&vr(Yi,Jw(v)))return[Yi].concat(Mi)}}function xQ(u,m,v){let D=!1;return h9(m,P=>{let Y=jA(P.get(u.escapedName));if(!Y)return!1;if(Y===u)return!0;let oe=Y.flags&2097152&&!Cp(Y,282);return Y=oe?YC(Y):Y,(oe?Hb(Y):Y.flags)&v?(D=!0,!0):!1}),D}function gWe(u){if(u.declarations&&u.declarations.length){for(let m of u.declarations)switch(m.kind){case 173:case 175:case 178:case 179:continue;default:return!1}return!0}return!1}function Spe(u,m){return mq(u,m,788968,!1,!0).accessibility===0}function hq(u,m){return mq(u,m,111551,!1,!0).accessibility===0}function vpe(u,m,v){return mq(u,m,v,!1,!1).accessibility===0}function l2e(u,m,v,D,P,Y){if(!B(u))return;let oe,Be=!1;for(let Oe of u){let He=m9(Oe,m,D,!1);if(He){oe=Oe;let kt=uK(He[0],P);if(kt)return kt}if(Y&&jt(Oe.declarations,GQ)){if(P){Be=!0;continue}return{accessibility:0}}let qe=kQ(Oe,m,D),Vt=l2e(qe,m,v,v===Oe?Jw(D):D,P,Y);if(Vt)return Vt}if(Be)return{accessibility:0};if(oe)return{accessibility:1,errorSymbolName:kl(v,m,D),errorModuleName:oe!==v?kl(oe,m,1920):void 0}}function cW(u,m,v,D){return mq(u,m,v,D,!0)}function mq(u,m,v,D,P){if(u&&m){let Y=l2e([u],m,u,v,D,P);if(Y)return Y;let oe=F(u.declarations,lK);if(oe){let Be=lK(m);if(oe!==Be)return{accessibility:2,errorSymbolName:kl(u,m,v),errorModuleName:kl(oe),errorNode:wo(m)?m:void 0}}return{accessibility:1,errorSymbolName:kl(u,m,v)}}return{accessibility:0}}function lK(u){let m=ji(u,AWe);return m&&Uo(m)}function AWe(u){return s_(u)||u.kind===308&&vl(u)}function GQ(u){return RY(u)||u.kind===308&&vl(u)}function uK(u,m){let v;if(!ue(Me(u.declarations,Y=>Y.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:v};function D(Y){var oe,Be;if(!Ak(Y)){let Oe=Sv(Y);if(Oe&&!Ga(Oe,32)&&Ak(Oe.parent))return P(Y,Oe);if(nc(Y)&&Ch(Y.parent.parent)&&!Ga(Y.parent.parent,32)&&Ak(Y.parent.parent.parent))return P(Y,Y.parent.parent);if(p7(Y)&&!Ga(Y,32)&&Ak(Y.parent))return P(Y,Y);if(hg(Y)){if(u.flags&2097152&&wo(Y)&&((oe=Y.parent)!=null&&oe.parent)&&nc(Y.parent.parent)&&((Be=Y.parent.parent.parent)!=null&&Be.parent)&&Ch(Y.parent.parent.parent.parent)&&!Ga(Y.parent.parent.parent.parent,32)&&Y.parent.parent.parent.parent.parent&&Ak(Y.parent.parent.parent.parent.parent))return P(Y,Y.parent.parent.parent.parent);if(u.flags&2){let He=ai(Y);if(He.kind===170)return!1;let qe=He.parent.parent;return qe.kind!==244?!1:Ga(qe,32)?!0:Ak(qe.parent)?P(Y,qe):!1}}return!1}return!0}function P(Y,oe){return m&&(sa(Y).isVisible=!0,v=ps(v,oe)),!0}}function Bpe(u){let m;return u.parent.kind===187||u.parent.kind===234&&!ww(u.parent)||u.parent.kind===168||u.parent.kind===183&&u.parent.parameterName===u?m=1160127:u.kind===167||u.kind===212||u.parent.kind===272||u.parent.kind===167&&u.parent.left===u||u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u?m=1920:m=788968,m}function Cq(u,m,v=!0){let D=Bpe(u),P=B0(u),Y=An(m,P.escapedText,D,void 0,!1);return Y&&Y.flags&262144&&D&788968?{accessibility:0}:!Y&&vF(P)&&cW(Uo(r0(P,!1,!1)),P,D,!1).accessibility===0?{accessibility:0}:Y?uK(Y,v)||{accessibility:1,errorSymbolName:xp(P),errorNode:P}:{accessibility:3,errorSymbolName:xp(P),errorNode:P}}function kl(u,m,v,D=4,P){let Y=70221824,oe=0;D&2&&(Y|=128),D&1&&(Y|=512),D&8&&(Y|=16384),D&32&&(oe|=4),D&16&&(oe|=1);let Be=D&4?Dt.symbolToNode:Dt.symbolToEntityName;return P?Oe(P).getText():dP(Oe);function Oe(He){let qe=Be(u,v,m,Y,oe),Vt=m?.kind===308?m3t():gQ(),kt=m&&ms(m);return Vt.writeNode(4,qe,kt,He),He}}function lW(u,m,v=0,D,P,Y,oe,Be){return P?Oe(P).getText():dP(Oe);function Oe(He){let qe;v&262144?qe=D===1?186:185:qe=D===1?181:180;let Vt=Dt.signatureToSignatureDeclaration(u,qe,m,FQ(v)|70221824|512,void 0,void 0,Y,oe,Be),kt=rtt(),vr=m&&ms(m);return kt.writeNode(4,Vt,vr,Mye(He)),He}}function no(u,m,v=1064960,D=wne(""),P,Y,oe){let Be=!P&&Te.noErrorTruncation||v&1,Oe=Dt.typeToTypeNode(u,m,FQ(v)|70221824|(Be?1:0),void 0,void 0,P,Y,oe);if(Oe===void 0)return pe.fail("should always get typenode");let He=u!==En?gQ():h3t(),qe=m&&ms(m);He.writeNode(4,Oe,qe,D);let Vt=D.getText(),kt=P||(Be?Vre*2:EY*2);return kt&&Vt&&Vt.length>=kt?Vt.substr(0,kt-3)+"...":Vt}function wpe(u,m){let v=Sse(u.symbol)?no(u,u.symbol.valueDeclaration):no(u),D=Sse(m.symbol)?no(m,m.symbol.valueDeclaration):no(m);return v===D&&(v=Ese(u),D=Ese(m)),[v,D]}function Ese(u){return no(u,void 0,64)}function Sse(u){return u&&!!u.valueDeclaration&&un(u.valueDeclaration)&&!bS(u.valueDeclaration)}function FQ(u=0){return u&848330095}function u2e(u){return!!u.symbol&&!!(u.symbol.flags&32)&&(u===wv(u.symbol)||!!(u.flags&524288)&&!!(la(u)&16777216))}function gK(u){return nl(u)}function dWe(){return{syntacticBuilderResolver:{evaluateEntityNameExpression:N0n,isExpandoFunctionDeclaration:z0n,hasLateBindableName:Tse,shouldRemoveDeclaration($t,lt){return!($t.internalFlags&8&&Od(lt.name.expression)&&zw(lt.name).flags&1)},createRecoveryBoundary($t){return Kc($t)},isDefinitelyReferenceToGlobalSymbolObject:lk,getAllAccessorDeclarations:H8t,requiresAddingImplicitUndefined($t,lt,hi){var Di;switch($t.kind){case 173:case 172:case 349:lt??(lt=Uo($t));let Qt=Io(lt);return!!(lt.flags&4&<.flags&16777216&&RB($t)&&((Di=lt.links)!=null&&Di.mappedType)&&FMs(Qt));case 170:case 342:return xOe($t,hi);default:pe.assertNever($t)}},isOptionalParameter:C2e,isUndefinedIdentifierExpression($t){return xv($t)===dt},isEntityNameVisible($t,lt,hi){return Cq(lt,$t.enclosingDeclaration,hi)},serializeExistingTypeNode($t,lt,hi){return Qb($t,lt,!!hi)},serializeReturnTypeForSignature($t,lt,hi){let Di=$t,Qt=yS(lt);hi??(hi=Uo(lt));let Cr=Di.enclosingSymbolTypes.get(kg(hi))??_l(ud(Qt),Di.mapper);return nA(Di,Qt,Cr)},serializeTypeOfExpression($t,lt){let hi=$t,Di=_l(D1(H0n(lt)),hi.mapper);return ii(Di,hi)},serializeTypeOfDeclaration($t,lt,hi){var Di;let Qt=$t;hi??(hi=Uo(lt));let Cr=(Di=Qt.enclosingSymbolTypes)==null?void 0:Di.get(kg(hi));return Cr===void 0&&(Cr=hi.flags&98304&<.kind===179?_l(b9(hi),Qt.mapper):hi&&!(hi.flags&133120)?_l(V5(Io(hi)),Qt.mapper):nn),lt&&(Si(lt)||cS(lt))&&xOe(lt,Qt.enclosingDeclaration)&&(Cr=mW(Cr)),Ao(hi,Qt,Cr)},serializeNameOfParameter($t,lt){return qc(Uo(lt),lt,$t)},serializeEntityName($t,lt){let hi=$t,Di=xv(lt,!0);if(Di&&hq(Di,hi.enclosingDeclaration))return Gv(Di,hi,1160127)},serializeTypeName($t,lt,hi,Di){return tC($t,lt,hi,Di)},getJsDocPropertyOverride($t,lt,hi){let Di=$t,Qt=Ir(hi.name)?hi.name:hi.name.right,Cr=Pi(m(Di,lt),Qt.escapedText);return Cr&&hi.typeExpression&&m(Di,hi.typeExpression.type)!==Cr?ii(Cr,Di):void 0},enterNewScope($t,lt){if(bu(lt)||qL(lt)){let hi=yS(lt);return Vu($t,lt,hi.parameters,hi.typeParameters)}else{let hi=d2(lt)?IUt(lt):[R5(Uo(lt.typeParameter))];return Vu($t,lt,void 0,hi)}},markNodeReuse($t,lt,hi){return v($t,lt,hi)},trackExistingEntityName($t,lt){return Sp(lt,$t)},trackComputedName($t,lt){_o(lt,$t.enclosingDeclaration,$t)},getModuleSpecifierOverride($t,lt,hi){let Di=$t;if(Di.bundled||Di.enclosingFile!==ms(hi)){let Qt=hi.text,Cr=Qt,jr=sa(lt).resolvedSymbol,Qn=lt.isTypeOf?111551:788968,yi=jr&&cW(jr,Di.enclosingDeclaration,Qn,!1).accessibility===0&&du(jr,Di,Qn,!0)[0];if(yi&&WD(yi))Qt=yh(yi,Di);else{let Xn=X8t(lt);Xn&&(Qt=yh(Xn.symbol,Di))}if(Qt.includes("/node_modules/")&&(Di.encounteredError=!0,Di.tracker.reportLikelyUnsafeImportRequiredError&&Di.tracker.reportLikelyUnsafeImportRequiredError(Qt)),Qt!==Cr)return Qt}},canReuseTypeNode($t,lt){return P0($t,lt)},canReuseTypeNodeAnnotation($t,lt,hi,Di,Qt){var Cr;let jr=$t;if(jr.enclosingDeclaration===void 0)return!1;Di??(Di=Uo(lt));let Qn=(Cr=jr.enclosingSymbolTypes)==null?void 0:Cr.get(kg(Di));Qn===void 0&&(Di.flags&98304?Qn=lt.kind===179?b9(Di):kpe(Di):C3(lt)?Qn=ud(yS(lt)):Qn=Io(Di));let yi=gK(hi);return uo(yi)?!0:(Qt&&yi&&(yi=Z0(yi,!Si(lt))),!!yi&&tc(lt,Qn,yi)&&as(hi,Qn))}},typeToTypeNode:($t,lt,hi,Di,Qt,Cr,jr,Qn)=>He(lt,hi,Di,Qt,Cr,jr,yi=>ii($t,yi),Qn),typePredicateToTypePredicateNode:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>V0($t,Cr)),serializeTypeForDeclaration:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>tr.serializeTypeOfDeclaration($t,lt,jr)),serializeReturnTypeForSignature:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeReturnTypeForSignature($t,Uo($t),Cr)),serializeTypeForExpression:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeTypeOfExpression($t,Cr)),indexInfoToIndexSignatureDeclaration:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>yl($t,Cr,void 0)),signatureToSignatureDeclaration:($t,lt,hi,Di,Qt,Cr,jr,Qn,yi)=>He(hi,Di,Qt,Cr,jr,Qn,Xn=>ka($t,lt,Xn),yi),symbolToEntityName:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>ch($t,jr,lt,!1)),symbolToExpression:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>Gv($t,jr,lt)),symbolToTypeParameterDeclarations:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>uf($t,Cr)),symbolToParameterDeclaration:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>to($t,Cr)),typeParameterToDeclaration:($t,lt,hi,Di,Qt,Cr,jr,Qn)=>He(lt,hi,Di,Qt,Cr,jr,yi=>UI($t,yi),Qn),symbolTableToDeclarationStatements:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>H5($t,Cr)),symbolToNode:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>D($t,jr,lt)),symbolToDeclarations:P};function m($t,lt,hi){let Di=gK(lt);if(!$t.mapper)return Di;let Qt=_l(Di,$t.mapper);return hi&&Qt!==Di?void 0:Qt}function v($t,lt,hi){if((!sp(lt)||!(lt.flags&16)||!$t.enclosingFile||$t.enclosingFile!==ms(Dd(lt)))&&(lt=me.cloneNode(lt)),lt===hi||!hi)return lt;let Di=lt.original;for(;Di&&Di!==hi;)Di=Di.original;return Di||ua(lt,hi),$t.enclosingFile&&$t.enclosingFile===ms(Dd(hi))?gn(lt,hi):lt}function D($t,lt,hi){if(lt.internalFlags&1){if($t.valueDeclaration){let Qt=Il($t.valueDeclaration);if(Qt&&Un(Qt))return Qt}let Di=fa($t).nameType;if(Di&&Di.flags&9216)return lt.enclosingDeclaration=Di.symbol.valueDeclaration,me.createComputedPropertyName(Gv(Di.symbol,lt,hi))}return Gv($t,lt,hi)}function P($t,lt,hi,Di,Qt,Cr){let jr=He(void 0,hi,void 0,void 0,Di,Qt,Qn=>Oe($t,Qn),Cr);return Xt(jr,Qn=>{switch(Qn.kind){case 264:return Y(Qn,$t);case 267:return oe(Qn,V3,$t);case 265:return Be(Qn,$t,lt);case 268:return oe(Qn,xh,$t);default:return}})}function Y($t,lt){let hi=Me(lt.declarations,xa),Di=hi&&hi.length>0?hi[0]:$t,Qt=o_(Di)&-161;return vd(Di)&&($t=me.updateClassDeclaration($t,$t.modifiers,void 0,$t.typeParameters,$t.heritageClauses,$t.members)),me.replaceModifiers($t,Qt)}function oe($t,lt,hi){let Di=Me(hi.declarations,lt),Qt=Di&&Di.length>0?Di[0]:$t,Cr=o_(Qt)&-161;return me.replaceModifiers($t,Cr)}function Be($t,lt,hi){if(hi&64)return oe($t,g_,lt)}function Oe($t,lt){let hi=Fp($t);lt.typeStack.push(hi.id),lt.typeStack.push(-1);let Di=qu([$t]),Qt=H5(Di,lt);return lt.typeStack.pop(),lt.typeStack.pop(),Qt}function He($t,lt,hi,Di,Qt,Cr,jr,Qn){let yi=Di?.trackSymbol?Di.moduleResolverHost:(hi||0)&4?zvs(s):void 0;lt=lt||0;let Xn=Qt||(lt&1?Vre:EY),Ti={enclosingDeclaration:$t,enclosingFile:$t&&ms($t),flags:lt,internalFlags:hi||0,tracker:void 0,maxTruncationLength:Xn,maxExpansionDepth:Cr??-1,encounteredError:!1,suppressReportInferenceFallback:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Te.outFile&&!!$t&&vl(ms($t)),truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,enclosingSymbolTypes:new Map,mapper:void 0,depth:0,typeStack:[],out:{canIncreaseExpansionDepth:!1,truncated:!1}};Ti.tracker=new SOt(Ti,Di,yi);let Us=jr(Ti);return Ti.truncating&&Ti.flags&1&&Ti.tracker.reportTruncationError(),Qn&&(Qn.canIncreaseExpansionDepth=Ti.out.canIncreaseExpansionDepth,Qn.truncated=Ti.out.truncated),Ti.encounteredError?void 0:Us}function qe($t,lt,hi){let Di=kg(lt),Qt=$t.enclosingSymbolTypes.get(Di);return $t.enclosingSymbolTypes.set(Di,hi),Cr;function Cr(){Qt?$t.enclosingSymbolTypes.set(Di,Qt):$t.enclosingSymbolTypes.delete(Di)}}function Vt($t){let lt=$t.flags,hi=$t.internalFlags,Di=$t.depth;return Qt;function Qt(){$t.flags=lt,$t.internalFlags=hi,$t.depth=Di}}function kt($t){return $t.maxExpansionDepth>=0&&vr($t)}function vr($t){return $t.truncating?$t.truncating:$t.truncating=$t.approximateLength>$t.maxTruncationLength}function dn($t,lt){for(let hi=0;hi0)return $t.flags&1048576?me.createUnionTypeNode(ta):me.createIntersectionTypeNode(ta);!lt.encounteredError&&!(lt.flags&262144)&&(lt.encounteredError=!0);return}if(jr&48)return pe.assert(!!($t.flags&524288)),No($t);if($t.flags&4194304){let Li=$t.type;lt.approximateLength+=6;let ta=ii(Li,lt);return me.createTypeOperatorNode(143,ta)}if($t.flags&134217728){let Li=$t.texts,ta=$t.types,mu=me.createTemplateHead(Li[0]),Jl=me.createNodeArray(At(ta,(EA,Ad)=>me.createTemplateLiteralTypeSpan(ii(EA,lt),(AdQn(Li));if($t.flags&33554432){let Li=ii($t.baseType,lt),ta=Gse($t)&&zJt("NoInfer",!1);return ta?Fd(ta,lt,788968,[Li]):Li}return pe.fail("Should be unreachable.");function Qn(Li){let ta=ii(Li.checkType,lt);if(lt.approximateLength+=15,lt.flags&4&&Li.root.isDistributive&&!(Li.checkType.flags&262144)){let ou=Yy(gA(262144,"T")),mm=Qf(ou,lt),Cm=me.createTypeReferenceNode(mm);lt.approximateLength+=37;let W_=yK(Li.root.checkType,ou,Li.mapper),W0=lt.inferTypeParameters;lt.inferTypeParameters=Li.root.inferTypeParameters;let Uy=ii(_l(Li.root.extendsType,W_),lt);lt.inferTypeParameters=W0;let IZ=yi(_l(m(lt,Li.root.node.trueType),W_)),Q5=yi(_l(m(lt,Li.root.node.falseType),W_));return me.createConditionalTypeNode(ta,me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Cm.typeName))),me.createConditionalTypeNode(me.createTypeReferenceNode(me.cloneNode(mm)),ii(Li.checkType,lt),me.createConditionalTypeNode(Cm,Uy,IZ,Q5),me.createKeywordTypeNode(146)),me.createKeywordTypeNode(146))}let mu=lt.inferTypeParameters;lt.inferTypeParameters=Li.root.inferTypeParameters;let Jl=ii(Li.extendsType,lt);lt.inferTypeParameters=mu;let EA=yi(fW(Li)),Ad=yi(IW(Li));return me.createConditionalTypeNode(ta,Jl,EA,Ad)}function yi(Li){var ta,mu,Jl;return Li.flags&1048576?(ta=lt.visitedTypes)!=null&&ta.has(QC(Li))?(lt.flags&131072||(lt.encounteredError=!0,(Jl=(mu=lt.tracker)==null?void 0:mu.reportCyclicStructureError)==null||Jl.call(mu)),js(lt)):zo(Li,EA=>ii(EA,lt)):ii(Li,lt)}function Xn(Li){return!!w2e(Li)}function Ti(Li){return!!Li.target&&Xn(Li.target)&&!Xn(Li)}function Us(Li){var ta;pe.assert(!!(Li.flags&524288));let mu=Li.declaration.readonlyToken?me.createToken(Li.declaration.readonlyToken.kind):void 0,Jl=Li.declaration.questionToken?me.createToken(Li.declaration.questionToken.kind):void 0,EA,Ad,ou=qx(Li),mm=jw(Li),Cm=!Nse(Li)&&!(N5(Li).flags&2)&<.flags&4&&!(_S(Li).flags&262144&&((ta=Xy(_S(Li)))==null?void 0:ta.flags)&4194304);if(Nse(Li)){if(Ti(Li)&<.flags&4){let EW=Yy(gA(262144,"T")),Oq=Qf(EW,lt),cfe=Li.target;Ad=me.createTypeReferenceNode(Oq),ou=_l(qx(cfe),_hn([jw(cfe),N5(cfe)],[mm,EW]))}EA=me.createTypeOperatorNode(143,Ad||ii(N5(Li),lt))}else if(Cm){let EW=Yy(gA(262144,"T")),Oq=Qf(EW,lt);Ad=me.createTypeReferenceNode(Oq),EA=Ad}else EA=ii(_S(Li),lt);let W_=Ll(mm,lt,EA),W0=Vu(lt,Li.declaration,void 0,[R5(Uo(Li.declaration.typeParameter))]),Uy=Li.declaration.nameType?ii(E9(Li),lt):void 0,IZ=ii(AZ(ou,!!(fk(Li)&4)),lt);W0();let Q5=me.createMappedTypeNode(mu,W_,Uy,Jl,IZ,void 0);lt.approximateLength+=10;let zQ=ti(Q5,1);if(Ti(Li)&<.flags&4){let EW=_l(Xy(m(lt,Li.declaration.typeParameter.constraint.type))||cn,Li.mapper);return me.createConditionalTypeNode(ii(N5(Li),lt),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Ad.typeName),EW.flags&2?void 0:ii(EW,lt))),zQ,me.createKeywordTypeNode(146))}else if(Cm)return me.createConditionalTypeNode(ii(_S(Li),lt),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Ad.typeName),me.createTypeOperatorNode(143,ii(N5(Li),lt)))),zQ,me.createKeywordTypeNode(146));return zQ}function No(Li,ta=!1,mu=!1){var Jl,EA;let Ad=Li.id,ou=Li.symbol;if(ou){if(!!(la(Li)&8388608)){let Uy=Li.node;if(Fw(Uy)&&m(lt,Uy)===Li){let IZ=tr.tryReuseExistingTypeNode(lt,Uy);if(IZ)return IZ}return(Jl=lt.visitedTypes)!=null&&Jl.has(Ad)?js(lt):zo(Li,za)}let W_=u2e(Li)?788968:111551;if(YN(ou.valueDeclaration))return Fd(ou,lt,W_);if(!mu&&(ou.flags&32&&!ta&&!p2e(ou)&&!(ou.valueDeclaration&&xa(ou.valueDeclaration)&<.flags&2048&&(!pm(ou.valueDeclaration)||cW(ou,lt.enclosingDeclaration,W_,!1).accessibility!==0))||ou.flags&896||mm()))if(vn(Li,lt))lt.depth+=1;else return Fd(ou,lt,W_);if((EA=lt.visitedTypes)!=null&&EA.has(Ad)){let W0=pWe(Li);return W0?Fd(W0,lt,788968):js(lt)}else return zo(Li,za)}else return za(Li);function mm(){var Cm;let W_=!!(ou.flags&8192)&&jt(ou.declarations,Uy=>cg(Uy)&&!Lfn(Il(Uy))),W0=!!(ou.flags&16)&&(ou.parent||F(ou.declarations,Uy=>Uy.parent.kind===308||Uy.parent.kind===269));if(W_||W0)return(!!(lt.flags&4096)||((Cm=lt.visitedTypes)==null?void 0:Cm.has(Ad)))&&(!(lt.flags&8)||hq(ou,lt.enclosingDeclaration))}}function zo(Li,ta){var mu,Jl,EA;let Ad=Li.id,ou=la(Li)&16&&Li.symbol&&Li.symbol.flags&32,mm=la(Li)&4&&Li.node?"N"+rd(Li.node):Li.flags&16777216?"N"+rd(Li.root.node):Li.symbol?(ou?"+":"")+kg(Li.symbol):void 0;lt.visitedTypes||(lt.visitedTypes=new Set),mm&&!lt.symbolDepth&&(lt.symbolDepth=new Map);let Cm=lt.maxExpansionDepth>=0?void 0:lt.enclosingDeclaration&&sa(lt.enclosingDeclaration),W_=`${QC(Li)}|${lt.flags}|${lt.internalFlags}`;Cm&&(Cm.serializedTypes||(Cm.serializedTypes=new Map));let W0=(mu=Cm?.serializedTypes)==null?void 0:mu.get(W_);if(W0)return(Jl=W0.trackedSymbols)==null||Jl.forEach(([_k,Use,ZOe])=>lt.tracker.trackSymbol(_k,Use,ZOe)),W0.truncating&&(lt.truncating=!0),lt.approximateLength+=W0.addedLength,Oq(W0.node);let Uy;if(mm){if(Uy=lt.symbolDepth.get(mm)||0,Uy>10)return js(lt);lt.symbolDepth.set(mm,Uy+1)}lt.visitedTypes.add(Ad);let IZ=lt.trackedSymbols;lt.trackedSymbols=void 0;let Q5=lt.approximateLength,zQ=ta(Li),EW=lt.approximateLength-Q5;return!lt.reportedDiagnostic&&!lt.encounteredError&&((EA=Cm?.serializedTypes)==null||EA.set(W_,{node:zQ,truncating:lt.truncating,addedLength:EW,trackedSymbols:lt.trackedSymbols})),lt.visitedTypes.delete(Ad),mm&<.symbolDepth.set(mm,Uy),lt.trackedSymbols=IZ,zQ;function Oq(_k){return!sp(_k)&&$l(_k)===_k?_k:v(lt,me.cloneNode(_s(_k,Oq,void 0,cfe,Oq)),_k)}function cfe(_k,Use,ZOe,q8t,$8t){return _k&&_k.length===0?gn(me.createNodeArray(void 0,_k.hasTrailingComma),_k):Ws(_k,Use,ZOe,q8t,$8t)}}function za(Li){if(Yb(Li)||Li.containsError)return Us(Li);let ta=pR(Li);if(!ta.properties.length&&!ta.indexInfos.length){if(!ta.callSignatures.length&&!ta.constructSignatures.length)return lt.approximateLength+=2,ti(me.createTypeLiteralNode(void 0),1);if(ta.callSignatures.length===1&&!ta.constructSignatures.length){let ou=ta.callSignatures[0];return ka(ou,185,lt)}if(ta.constructSignatures.length===1&&!ta.callSignatures.length){let ou=ta.constructSignatures[0];return ka(ou,186,lt)}}let mu=Me(ta.constructSignatures,ou=>!!(ou.flags&4));if(jt(mu)){let ou=At(mu,fK);return ta.callSignatures.length+(ta.constructSignatures.length-mu.length)+ta.indexInfos.length+(lt.flags&2048?ct(ta.properties,Cm=>!(Cm.flags&4194304)):B(ta.properties))&&ou.push(cK(ta)),ii(Kg(ou),lt)}let Jl=Vt(lt);lt.flags|=4194304;let EA=DA(ta);Jl();let Ad=me.createTypeLiteralNode(EA);return lt.approximateLength+=2,ti(Ad,lt.flags&1024?0:1),Ad}function La(Li){let ta=lf(Li);if(Li.target===NA||Li.target===uA){if(lt.flags&2){let EA=ii(ta[0],lt);return me.createTypeReferenceNode(Li.target===NA?"Array":"ReadonlyArray",[EA])}let mu=ii(ta[0],lt),Jl=me.createArrayTypeNode(mu);return Li.target===NA?Jl:me.createTypeOperatorNode(148,Jl)}else if(Li.target.objectFlags&8){if(ta=Tr(ta,(mu,Jl)=>AZ(mu,!!(Li.target.elementFlags[Jl]&2))),ta.length>0){let mu=B9(Li),Jl=To(ta.slice(0,mu),lt);if(Jl){let{labeledElementDeclarations:EA}=Li.target;for(let ou=0;ou0){let Cm=0;if(Li.target.typeParameters&&(Cm=Math.min(Li.target.typeParameters.length,ta.length),(w1(Li,aot(!1))||w1(Li,ZIn(!1))||w1(Li,BWe(!1))||w1(Li,FIn(!1)))&&(!Li.node||!nh(Li.node)||!Li.node.typeArguments||Li.node.typeArguments.length0;){let W_=ta[Cm-1],W0=Li.target.typeParameters[Cm-1],Uy=VQ(W0);if(!Uy||!rG(W_,Uy))break;Cm--}Ad=To(ta.slice(Jl,Cm),lt)}let ou=Vt(lt);lt.flags|=16;let mm=Fd(Li.symbol,lt,788968,Ad);return ou(),EA?ro(EA,mm):mm}}}function ro(Li,ta){if(Um(Li)){let mu=Li.typeArguments,Jl=Li.qualifier;Jl&&(Ir(Jl)?mu!==G3(Jl)&&(Jl=xx(me.cloneNode(Jl),mu)):mu!==G3(Jl.right)&&(Jl=me.updateQualifiedName(Jl,Jl.left,xx(me.cloneNode(Jl.right),mu)))),mu=ta.typeArguments;let EA=_c(ta);for(let Ad of EA)Jl=Jl?me.createQualifiedName(Jl,Ad):Ad;return me.updateImportTypeNode(Li,Li.argument,Li.attributes,Jl,mu,Li.isTypeOf)}else{let mu=Li.typeArguments,Jl=Li.typeName;Ir(Jl)?mu!==G3(Jl)&&(Jl=xx(me.cloneNode(Jl),mu)):mu!==G3(Jl.right)&&(Jl=me.updateQualifiedName(Jl,Jl.left,xx(me.cloneNode(Jl.right),mu))),mu=ta.typeArguments;let EA=_c(ta);for(let Ad of EA)Jl=me.createQualifiedName(Jl,Ad);return me.updateTypeReferenceNode(Li,Jl,mu)}}function _c(Li){let ta=Li.typeName,mu=[];for(;!Ir(ta);)mu.unshift(ta.right),ta=ta.left;return mu.unshift(ta),mu}function nu(Li,ta,mu){if(Li.components&&ue(Li.components,EA=>{var Ad;return!!(EA.name&&Un(EA.name)&&Od(EA.name.expression)&&ta.enclosingDeclaration&&((Ad=Cq(EA.name.expression,ta.enclosingDeclaration,!1))==null?void 0:Ad.accessibility)===0)})){let EA=Me(Li.components,Ad=>!Tse(Ad));return At(EA,Ad=>(_o(Ad.name.expression,ta.enclosingDeclaration,ta),v(ta,me.createPropertySignature(Li.isReadonly?[me.createModifier(148)]:void 0,Ad.name,(ss(Ad)||pi(Ad)||hl(Ad)||uu(Ad)||bB(Ad)||cv(Ad))&&Ad.questionToken?me.createToken(58):void 0,mu||ii(Io(Ad.symbol),ta)),Ad)))}return[yl(Li,ta,mu)]}function DA(Li){if(vr(lt))return lt.out.truncated=!0,lt.flags&1?[Iz(me.createNotEmittedTypeElement(),3,"elided")]:[me.createPropertySignature(void 0,"...",void 0,void 0)];lt.typeStack.push(-1);let ta=[];for(let EA of Li.callSignatures)ta.push(ka(EA,180,lt));for(let EA of Li.constructSignatures)EA.flags&4||ta.push(ka(EA,181,lt));for(let EA of Li.indexInfos)ta.push(...nu(EA,lt,Li.objectFlags&1024?js(lt):void 0));let mu=Li.properties;if(!mu)return lt.typeStack.pop(),ta;let Jl=0;for(let EA of mu)if(!(Y5(lt)&&EA.flags&4194304)){if(Jl++,lt.flags&2048){if(EA.flags&4194304)continue;u2(EA)&6&<.tracker.reportPrivateInBaseOfClassExpression&<.tracker.reportPrivateInBaseOfClassExpression(Bc(EA.escapedName))}if(vr(lt)&&Jl+2!(za.flags&32768)),0);for(let za of zo){let La=ka(za,174,lt,{name:Qn,questionToken:yi});hi.push(No(La,za.declaration||$t.valueDeclaration))}if(zo.length||!yi)return}let Xn;Co($t,lt)?Xn=js(lt):(Qt&&(lt.reverseMappedStack||(lt.reverseMappedStack=[]),lt.reverseMappedStack.push($t)),Xn=Cr?ea(lt,void 0,Cr,$t):me.createKeywordTypeNode(133),Qt&<.reverseMappedStack.pop());let Ti=yR($t)?[me.createToken(148)]:void 0;Ti&&(lt.approximateLength+=9);let Us=me.createPropertySignature(Ti,Qn,yi,Xn);hi.push(No(Us,$t.valueDeclaration));function No(zo,za){var La;let ro=(La=$t.declarations)==null?void 0:La.find(_c=>_c.kind===349);if(ro){let _c=pJ(ro.comment);_c&&kB(zo,[{kind:3,text:`* * `+_c.replace(/\n/g,` * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else za&&Mi(lt,zo,za);return zo}}function Mi($t,lt,hi){return $t.enclosingFile&&$t.enclosingFile===ms(hi)?hh(lt,hi):lt}function To($t,lt,hi){if(jt($t)){if(vr(lt))if(lt.out.truncated=!0,hi){if($t.length>2)return[ii($t[0],lt),lt.flags&1?JT(me.createKeywordTypeNode(133),3,`... ${$t.length-2} more elided ...`):me.createTypeReferenceNode(`... ${$t.length-2} more ...`,void 0),ii($t[$t.length-1],lt)]}else return[lt.flags&1?JT(me.createKeywordTypeNode(133),3,"elided"):me.createTypeReferenceNode("...",void 0)];let Qt=!(lt.flags&64)?dl():void 0,Cr=[],jr=0;for(let Qn of $t){if(jr++,vr(lt)&&jr+2<$t.length-1){lt.out.truncated=!0,Cr.push(lt.flags&1?JT(me.createKeywordTypeNode(133),3,`... ${$t.length-jr} more elided ...`):me.createTypeReferenceNode(`... ${$t.length-jr} more ...`,void 0));let Xn=ii($t[$t.length-1],lt);Xn&&Cr.push(Xn);break}lt.approximateLength+=2;let yi=ii(Qn,lt);yi&&(Cr.push(yi),Qt&&_Le(yi)&&Qt.add(yi.typeName.escapedText,[Qn,Cr.length-1]))}if(Qt){let Qn=Vt(lt);lt.flags|=64,Qt.forEach(yi=>{if(!yLe(yi,([Xn],[Ti])=>Ka(Xn,Ti)))for(let[Xn,Ti]of yi)Cr[Ti]=ii(Xn,lt)}),Qn()}return Cr}}function Ka($t,lt){return $t===lt||!!$t.symbol&&$t.symbol===lt.symbol||!!$t.aliasSymbol&&$t.aliasSymbol===lt.aliasSymbol}function yl($t,lt,hi){let Di=kge($t)||"x",Qt=ii($t.keyType,lt),Cr=me.createParameterDeclaration(void 0,void 0,Di,void 0,Qt,void 0);return hi||(hi=ii($t.type||hr,lt)),!$t.type&&!(lt.flags&2097152)&&(lt.encounteredError=!0),lt.approximateLength+=Di.length+4,me.createIndexSignature($t.isReadonly?[me.createToken(148)]:void 0,[Cr],hi)}function ka($t,lt,hi,Di){var Qt;let Cr,jr,Qn=Lfn($t,!0)[0],yi=Vu(hi,$t.declaration,Qn,$t.typeParameters,$t.parameters,$t.mapper);hi.approximateLength+=3,hi.flags&32&&$t.target&&$t.mapper&&$t.target.typeParameters?jr=$t.target.typeParameters.map(La=>ii(_l(La,$t.mapper),hi)):Cr=$t.typeParameters&&$t.typeParameters.map(La=>UI(La,hi));let Xn=Vt(hi);hi.flags&=-257;let Ti=(jt(Qn,La=>La!==Qn[Qn.length-1]&&!!(iI(La)&32768))?$t.parameters:Qn).map(La=>eo(La,hi,lt===177)),Us=hi.flags&33554432?void 0:gd($t,hi);Us&&Ti.unshift(Us),Xn();let No=jg(hi,$t),zo=Di?.modifiers;if(lt===186&&$t.flags&4){let La=Dw(zo);zo=me.createModifiersFromModifierFlags(La|64)}let za=lt===180?me.createCallSignature(Cr,Ti,No):lt===181?me.createConstructSignature(Cr,Ti,No):lt===174?me.createMethodSignature(zo,Di?.name??me.createIdentifier(""),Di?.questionToken,Cr,Ti,No):lt===175?me.createMethodDeclaration(zo,void 0,Di?.name??me.createIdentifier(""),void 0,Cr,Ti,No,void 0):lt===177?me.createConstructorDeclaration(zo,Ti,void 0):lt===178?me.createGetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,No,void 0):lt===179?me.createSetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,void 0):lt===182?me.createIndexSignature(zo,Ti,No):lt===318?me.createJSDocFunctionType(Ti,No):lt===185?me.createFunctionTypeNode(Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):lt===186?me.createConstructorTypeNode(zo,Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):lt===263?me.createFunctionDeclaration(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,void 0):lt===219?me.createFunctionExpression(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,me.createBlock([])):lt===220?me.createArrowFunction(zo,Cr,Ti,No,void 0,me.createBlock([])):pe.assertNever(lt);if(jr&&(za.typeArguments=me.createNodeArray(jr)),((Qt=$t.declaration)==null?void 0:Qt.kind)===324&&$t.declaration.parent.kind===340){let La=xp($t.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(to=>to.replace(/^\s+/," ")).join(` -`);JT(za,3,La,!0)}return yi?.(),za}function Kc($t){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let lt,hi,Di=!1,Qt=$t.tracker,Cr=$t.trackedSymbols;$t.trackedSymbols=void 0;let jr=$t.encounteredError;return $t.tracker=new _Ot($t,{...Qt.inner,reportCyclicStructureError(){Qn(()=>Qt.reportCyclicStructureError())},reportInaccessibleThisError(){Qn(()=>Qt.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){Qn(()=>Qt.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(Ti){Qn(()=>Qt.reportLikelyUnsafeImportRequiredError(Ti))},reportNonSerializableProperty(Ti){Qn(()=>Qt.reportNonSerializableProperty(Ti))},reportPrivateInBaseOfClassExpression(Ti){Qn(()=>Qt.reportPrivateInBaseOfClassExpression(Ti))},trackSymbol(Ti,Us,No){return(lt??(lt=[])).push([Ti,Us,No]),!1},moduleResolverHost:$t.tracker.moduleResolverHost},$t.tracker.moduleResolverHost),{startRecoveryScope:yi,finalizeBoundary:Xn,markError:Qn,hadError:()=>Di};function Qn(Ti){Di=!0,Ti&&(hi??(hi=[])).push(Ti)}function yi(){let Ti=lt?.length??0,Us=hi?.length??0;return()=>{Di=!1,lt&&(lt.length=Ti),hi&&(hi.length=Us)}}function Xn(){return $t.tracker=Qt,$t.trackedSymbols=Cr,$t.encounteredError=jr,hi?.forEach(Ti=>Ti()),Di?!1:(lt?.forEach(([Ti,Us,No])=>$t.tracker.trackSymbol(Ti,Us,No)),!0)}}function Vu($t,lt,hi,Di,Qt,Cr){let jr=uSe($t),Qn,yi,Xn=$t.enclosingDeclaration,Ti=$t.mapper;if(Cr&&($t.mapper=Cr),$t.enclosingDeclaration&<){let No=function(zo,za){pe.assert($t.enclosingDeclaration);let La;sa($t.enclosingDeclaration).fakeScopeForSignatureDeclaration===zo?La=$t.enclosingDeclaration:$t.enclosingDeclaration.parent&&sa($t.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===zo&&(La=$t.enclosingDeclaration.parent),pe.assertOptionalNode(La,$u);let to=La?.locals??qu(),_c,nu;if(za((DA,Li)=>{if(La){let ta=to.get(DA);ta?nu=Ft(nu,{name:DA,oldSymbol:ta}):_c=Ft(_c,DA)}to.set(DA,Li)}),La)return function(){F(_c,Li=>to.delete(Li)),F(nu,Li=>to.set(Li.name,Li.oldSymbol))};{let DA=me.createBlock(E);sa(DA).fakeScopeForSignatureDeclaration=zo,DA.locals=to,XA(DA,$t.enclosingDeclaration),$t.enclosingDeclaration=DA}};var Us=No;Qn=jt(hi)?No("params",zo=>{if(hi)for(let za=0;za{if(Si(_c)&&Nu(_c.name))return nu(_c.name),!0;return;function nu(Li){F(Li.elements,ta=>{switch(ta.kind){case 233:return;case 209:return DA(ta);default:return pe.assertNever(ta)}})}function DA(Li){if(Nu(Li.name))return nu(Li.name);let ta=Uo(Li);zo(ta.escapedName,ta)}})||zo(La.escapedName,La)}}):void 0,$t.flags&4&&jt(Di)&&(yi=No("typeParams",zo=>{for(let za of Di??E){let La=Qf(za,$t).escapedText;zo(La,za.symbol)}}))}return()=>{Qn?.(),yi?.(),jr(),$t.enclosingDeclaration=Xn,$t.mapper=Ti}}function gd($t,lt){if($t.thisParameter)return eo($t.thisParameter,lt);if($t.declaration&&wo($t.declaration)){let hi=Nb($t.declaration);if(hi&&hi.typeExpression)return me.createParameterDeclaration(void 0,void 0,"this",void 0,ii(m(lt,hi.typeExpression),lt))}}function Ll($t,lt,hi){let Di=Vt(lt);lt.flags&=-513;let Qt=me.createModifiersFromModifierFlags(kUt($t)),Cr=Qf($t,lt),jr=VQ($t),Qn=jr&&ii(jr,lt);return Di(),me.createTypeParameterDeclaration(Qt,Cr,hi,Qn)}function Ef($t,lt,hi){return!dn($t,hi)&<&&m(hi,lt)===$t&&tr.tryReuseExistingTypeNode(hi,lt)||ii($t,hi)}function UI($t,lt,hi=Xy($t)){let Di=hi&&Ef(hi,$st($t),lt);return Ll($t,lt,Di)}function V0($t,lt){let hi=$t.kind===2||$t.kind===3?me.createToken(131):void 0,Di=$t.kind===1||$t.kind===3?ti(me.createIdentifier($t.parameterName),16777216):me.createThisTypeNode(),Qt=$t.type&&ii($t.type,lt);return me.createTypePredicateNode(hi,Di,Qt)}function xs($t){let lt=Cp($t,170);if(lt)return lt;if(!bw($t))return Cp($t,342)}function eo($t,lt,hi){let Di=xs($t),Qt=Io($t),Cr=ea(lt,Di,Qt,$t),jr=!(lt.flags&8192)&&hi&&Di&&LB(Di)?At($R(Di),me.cloneNode):void 0,yi=Di&&EB(Di)||iI($t)&32768?me.createToken(26):void 0,Xn=qc($t,Di,lt),Us=Di&&m2e(Di)||iI($t)&16384?me.createToken(58):void 0,No=me.createParameterDeclaration(jr,yi,Xn,Us,Cr,void 0);return lt.approximateLength+=nf($t).length+3,No}function qc($t,lt,hi){return lt&<.name?lt.name.kind===80?ti(me.cloneNode(lt.name),16777216):lt.name.kind===167?ti(me.cloneNode(lt.name.right),16777216):Di(lt.name):nf($t);function Di(Qt){return Cr(Qt);function Cr(jr){hi.tracker.canTrackSymbol&&Un(jr)&&EJt(jr)&&_o(jr.expression,hi.enclosingDeclaration,hi);let Qn=_s(jr,Cr,void 0,void 0,Cr);return hg(Qn)&&(Qn=me.updateBindingElement(Qn,Qn.dotDotDotToken,Qn.propertyName,Qn.name,void 0)),sp(Qn)||(Qn=me.cloneNode(Qn)),ti(Qn,16777217)}}}function _o($t,lt,hi){if(!hi.tracker.canTrackSymbol)return;let Di=B0($t),Qt=An(lt,Di.escapedText,1160127,void 0,!0);if(Qt)hi.tracker.trackSymbol(Qt,lt,111551);else{let Cr=An(Di,Di.escapedText,1160127,void 0,!0);Cr&&hi.tracker.trackSymbol(Cr,lt,111551)}}function du($t,lt,hi,Di){return lt.tracker.trackSymbol($t,lt.enclosingDeclaration,hi),Bd($t,lt,hi,Di)}function Bd($t,lt,hi,Di){let Qt;return!($t.flags&262144)&&(lt.enclosingDeclaration||lt.flags&64)&&!(lt.internalFlags&4)?(Qt=pe.checkDefined(jr($t,hi,!0)),pe.assert(Qt&&Qt.length>0)):Qt=[$t],Qt;function jr(Qn,yi,Xn){let Ti=m9(Qn,lt.enclosingDeclaration,yi,!!(lt.flags&128)),Us;if(!Ti||xQ(Ti[0],lt.enclosingDeclaration,Ti.length===1?yi:Jw(yi))){let zo=kQ(Ti?Ti[0]:Qn,lt.enclosingDeclaration,yi);if(B(zo)){Us=zo.map(to=>jt(to.declarations,GQ)?yh(to,lt):void 0);let za=zo.map((to,_c)=>_c);za.sort(No);let La=za.map(to=>zo[to]);for(let to of La){let _c=jr(to,Jw(yi),!1);if(_c){if(to.exports&&to.exports.get("export=")&&Et(to.exports.get("export="),Qn)){Ti=_c;break}Ti=_c.concat(Ti||[Ae(to,Qn)||Qn]);break}}}}if(Ti)return Ti;if(Xn||!(Qn.flags&6144))return!Xn&&!Di&&F(Qn.declarations,GQ)?void 0:[Qn];function No(zo,za){let La=Us[zo],to=Us[za];if(La&&to){let _c=Ip(to);return Ip(La)===_c?V9e(La)-V9e(to):_c?-1:1}return 0}}}function uf($t,lt){let hi;return Xse($t).flags&524384&&(hi=me.createNodeArray(At(Ug($t),Qt=>UI(Qt,lt)))),hi}function JC($t,lt,hi){var Di;pe.assert($t&&0<=lt&<<$t.length);let Qt=$t[lt],Cr=kg(Qt);if((Di=hi.typeParameterSymbolList)!=null&&Di.has(Cr))return;hi.mustCreateTypeParameterSymbolList&&(hi.mustCreateTypeParameterSymbolList=!1,hi.typeParameterSymbolList=new Set(hi.typeParameterSymbolList)),hi.typeParameterSymbolList.add(Cr);let jr;if(hi.flags&512&<<$t.length-1){let Qn=Qt,yi=$t[lt+1];if(iI(yi)&1){let Xn=Ep(Qn.flags&2097152?YC(Qn):Qn);jr=To(At(Xn,Ti=>w9(Ti,yi.links.mapper)),hi)}else jr=uf(Qt,hi)}return jr}function bA($t){return Iv($t.objectType)?bA($t.objectType):$t}function yh($t,lt,hi){let Di=Cp($t,308);if(!Di){let Us=X($t.declarations,No=>aK(No,$t));Us&&(Di=Cp(Us,308))}if(Di&&Di.moduleName!==void 0)return Di.moduleName;if(!Di&&hOt.test($t.escapedName))return $t.escapedName.substring(1,$t.escapedName.length-1);if(!lt.enclosingFile||!lt.tracker.moduleResolverHost)return hOt.test($t.escapedName)?$t.escapedName.substring(1,$t.escapedName.length-1):ms(LJ($t)).fileName;let Qt=Dd(lt.enclosingDeclaration),Cr=dZe(Qt)?ZY(Qt):void 0,jr=lt.enclosingFile,Qn=hi||Cr&&s.getModeForUsageLocation(jr,Cr)||jr&&s.getDefaultResolutionModeForFile(jr),yi=Cde(jr.path,Qn),Xn=fa($t),Ti=Xn.specifierCache&&Xn.specifierCache.get(yi);if(!Ti){let Us=!!Te.outFile,{moduleResolverHost:No}=lt.tracker,zo=Us?{...Te,baseUrl:No.getCommonSourceDirectory()}:Te;Ti=ma(ctn($t,ks,zo,jr,No,{importModuleSpecifierPreference:Us?"non-relative":"project-relative",importModuleSpecifierEnding:Us?"minimal":Qn===99?"js":void 0},{overrideImportMode:hi})),Xn.specifierCache??(Xn.specifierCache=new Map),Xn.specifierCache.set(yi,Ti)}return Ti}function Vh($t){let lt=me.createIdentifier(Bc($t.escapedName));return $t.parent?me.createQualifiedName(Vh($t.parent),lt):lt}function Fd($t,lt,hi,Di){let Qt=du($t,lt,hi,!(lt.flags&16384)),Cr=hi===111551;if(jt(Qt[0].declarations,GQ)){let yi=Qt.length>1?Qn(Qt,Qt.length-1,1):void 0,Xn=Di||JC(Qt,0,lt),Ti=ms(Dd(lt.enclosingDeclaration)),Us=FJ(Qt[0]),No,zo;if((k_(Te)===3||k_(Te)===99)&&Us?.impliedNodeFormat===99&&Us.impliedNodeFormat!==Ti?.impliedNodeFormat&&(No=yh(Qt[0],lt,99),zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral("import"))]))),No||(No=yh(Qt[0],lt)),!(lt.flags&67108864)&&k_(Te)!==1&&No.includes("/node_modules/")){let La=No;if(k_(Te)===3||k_(Te)===99){let to=Ti?.impliedNodeFormat===99?1:99;No=yh(Qt[0],lt,to),No.includes("/node_modules/")?No=La:zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral(to===99?"import":"require"))]))}zo||(lt.encounteredError=!0,lt.tracker.reportLikelyUnsafeImportRequiredError&<.tracker.reportLikelyUnsafeImportRequiredError(La))}let za=me.createLiteralTypeNode(me.createStringLiteral(No));if(lt.approximateLength+=No.length+10,!yi||fC(yi)){if(yi){let La=Ir(yi)?yi:yi.right;xx(La,void 0)}return me.createImportTypeNode(za,zo,yi,Xn,Cr)}else{let La=bA(yi),to=La.objectType.typeName;return me.createIndexedAccessTypeNode(me.createImportTypeNode(za,zo,to,Xn,Cr),La.indexType)}}let jr=Qn(Qt,Qt.length-1,0);if(Iv(jr))return jr;if(Cr)return me.createTypeQueryNode(jr);{let yi=Ir(jr)?jr:jr.right,Xn=G3(yi);return xx(yi,void 0),me.createTypeReferenceNode(jr,Xn)}function Qn(yi,Xn,Ti){let Us=Xn===yi.length-1?Di:JC(yi,Xn,lt),No=yi[Xn],zo=yi[Xn-1],za;if(Xn===0)lt.flags|=16777216,za=T5(No,lt),lt.approximateLength+=(za?za.length:0)+1,lt.flags^=16777216;else if(zo&&B1(zo)){let to=B1(zo);Dh(to,(_c,nu)=>{if(Et(_c,No)&&!p2e(nu)&&nu!=="export=")return za=Bc(nu),!0})}if(za===void 0){let to=X(No.declarations,Il);if(to&&Un(to)&&fC(to.expression)){let _c=Qn(yi,Xn-1,Ti);return fC(_c)?me.createIndexedAccessTypeNode(me.createParenthesizedType(me.createTypeQueryNode(_c)),me.createTypeQueryNode(to.expression)):_c}za=T5(No,lt)}if(lt.approximateLength+=za.length+1,!(lt.flags&16)&&zo&&pk(zo)&&pk(zo).get(No.escapedName)&&Et(pk(zo).get(No.escapedName),No)){let to=Qn(yi,Xn-1,Ti);return Iv(to)?me.createIndexedAccessTypeNode(to,me.createLiteralTypeNode(me.createStringLiteral(za))):me.createIndexedAccessTypeNode(me.createTypeReferenceNode(to,Us),me.createLiteralTypeNode(me.createStringLiteral(za)))}let La=ti(me.createIdentifier(za),16777216);if(Us&&xx(La,me.createNodeArray(Us)),La.symbol=No,Xn>Ti){let to=Qn(yi,Xn-1,Ti);return fC(to)?me.createQualifiedName(to,La):pe.fail("Impossible construct - an export of an indexed access cannot be reachable")}return La}}function ES($t,lt,hi){let Di=An(lt.enclosingDeclaration,$t,788968,void 0,!1);return Di&&Di.flags&262144?Di!==hi.symbol:!1}function Qf($t,lt){var hi,Di,Qt,Cr;if(lt.flags&4&<.typeParameterNames){let yi=lt.typeParameterNames.get(QC($t));if(yi)return yi}let jr=ch($t.symbol,lt,788968,!0);if(!(jr.kind&80))return me.createIdentifier("(Missing type parameter)");let Qn=(Di=(hi=$t.symbol)==null?void 0:hi.declarations)==null?void 0:Di[0];if(Qn&&Ds(Qn)&&(jr=v(lt,jr,Qn.name)),lt.flags&4){let yi=jr.escapedText,Xn=((Qt=lt.typeParameterNamesByTextNextNameCount)==null?void 0:Qt.get(yi))||0,Ti=yi;for(;(Cr=lt.typeParameterNamesByText)!=null&&Cr.has(Ti)||ES(Ti,lt,$t);)Xn++,Ti=`${yi}_${Xn}`;if(Ti!==yi){let Us=G3(jr);jr=me.createIdentifier(Ti),xx(jr,Us)}lt.mustCreateTypeParametersNamesLookups&&(lt.mustCreateTypeParametersNamesLookups=!1,lt.typeParameterNames=new Map(lt.typeParameterNames),lt.typeParameterNamesByTextNextNameCount=new Map(lt.typeParameterNamesByTextNextNameCount),lt.typeParameterNamesByText=new Set(lt.typeParameterNamesByText)),lt.typeParameterNamesByTextNextNameCount.set(yi,Xn),lt.typeParameterNames.set(QC($t),jr),lt.typeParameterNamesByText.add(Ti)}return jr}function ch($t,lt,hi,Di){let Qt=du($t,lt,hi);return Di&&Qt.length!==1&&!lt.encounteredError&&!(lt.flags&65536)&&(lt.encounteredError=!0),Cr(Qt,Qt.length-1);function Cr(jr,Qn){let yi=JC(jr,Qn,lt),Xn=jr[Qn];Qn===0&&(lt.flags|=16777216);let Ti=T5(Xn,lt);Qn===0&&(lt.flags^=16777216);let Us=ti(me.createIdentifier(Ti),16777216);return yi&&xx(Us,me.createNodeArray(yi)),Us.symbol=Xn,Qn>0?me.createQualifiedName(Cr(jr,Qn-1),Us):Us}}function Gv($t,lt,hi){let Di=du($t,lt,hi);return Qt(Di,Di.length-1);function Qt(Cr,jr){let Qn=JC(Cr,jr,lt),yi=Cr[jr];jr===0&&(lt.flags|=16777216);let Xn=T5(yi,lt);jr===0&&(lt.flags^=16777216);let Ti=Xn.charCodeAt(0);if(ine(Ti)&&jt(yi.declarations,GQ)){let Us=yh(yi,lt);return lt.approximateLength+=2+Us.length,me.createStringLiteral(Us)}if(jr===0||Fbe(Xn,Ze)){let Us=ti(me.createIdentifier(Xn),16777216);return Qn&&xx(Us,me.createNodeArray(Qn)),Us.symbol=yi,lt.approximateLength+=1+Xn.length,jr>0?me.createPropertyAccessExpression(Qt(Cr,jr-1),Us):Us}else{Ti===91&&(Xn=Xn.substring(1,Xn.length-1),Ti=Xn.charCodeAt(0));let Us;if(ine(Ti)&&!(yi.flags&8)){let No=l2(Xn).replace(/\\./g,zo=>zo.substring(1));lt.approximateLength+=No.length+2,Us=me.createStringLiteral(No,Ti===39)}else""+ +Xn===Xn&&(lt.approximateLength+=Xn.length,Us=me.createNumericLiteral(+Xn));if(!Us){let No=ti(me.createIdentifier(Xn),16777216);Qn&&xx(No,me.createNodeArray(Qn)),No.symbol=yi,lt.approximateLength+=Xn.length,Us=No}return lt.approximateLength+=2,me.createElementAccessExpression(Qt(Cr,jr-1),Us)}}}function sfe($t){let lt=Il($t);return lt?Un(lt)?!!(Ol(lt.expression).flags&402653316):Yg(lt)?!!(Ol(lt.argumentExpression).flags&402653316):Zg(lt):!1}function lSe($t){let lt=Il($t);return!!(lt&&Zg(lt)&&(lt.singleQuote||!sp(lt)&&Ac(xp(lt,!1),"'")))}function ofe($t,lt){let hi=Mat($t);if(hi)if(!!lt.tracker.reportPrivateInBaseOfClassExpression&<.flags&2048){let Xn=Bc($t.escapedName);return Xn=Xn.replace(/__#\d+@#/g,"__#private@#"),Une(Xn,Mg(Te),!1,!0,!!($t.flags&8192))}else return hi;let Di=!!B($t.declarations)&&ue($t.declarations,sfe),Qt=!!B($t.declarations)&&ue($t.declarations,lSe),Cr=!!($t.flags&8192),jr=y2($t,lt,Qt,Di,Cr);if(jr)return jr;let Qn=Bc($t.escapedName);return Une(Qn,Mg(Te),Qt,Di,Cr)}function y2($t,lt,hi,Di,Qt){let Cr=fa($t).nameType;if(Cr){if(Cr.flags&384){let jr=""+Cr.value;return!Uh(jr,Mg(Te))&&(Di||!IN(jr))?me.createStringLiteral(jr,!!hi):IN(jr)&&Ac(jr,"-")?me.createComputedPropertyName(me.createPrefixUnaryExpression(41,me.createNumericLiteral(-jr))):Une(jr,Mg(Te),hi,Di,Qt)}if(Cr.flags&8192)return me.createComputedPropertyName(Gv(Cr.symbol,lt,111551))}}function uSe($t){let lt=$t.mustCreateTypeParameterSymbolList,hi=$t.mustCreateTypeParametersNamesLookups;$t.mustCreateTypeParameterSymbolList=!0,$t.mustCreateTypeParametersNamesLookups=!0;let Di=$t.typeParameterNames,Qt=$t.typeParameterNamesByText,Cr=$t.typeParameterNamesByTextNextNameCount,jr=$t.typeParameterSymbolList;return()=>{$t.typeParameterNames=Di,$t.typeParameterNamesByText=Qt,$t.typeParameterNamesByTextNextNameCount=Cr,$t.typeParameterSymbolList=jr,$t.mustCreateTypeParameterSymbolList=lt,$t.mustCreateTypeParametersNamesLookups=hi}}function zn($t,lt){return $t.declarations&&de($t.declarations,hi=>!!X0n(hi)&&(!lt||!!ji(hi,Di=>Di===lt)))}function as($t,lt){if(!(la(lt)&4)||!nh($t))return!0;not($t);let hi=sa($t).resolvedSymbol,Di=hi&&Fp(hi);return!Di||Di!==lt.target?!0:B($t.typeArguments)>=Ik(lt.target.typeParameters)}function Ms($t){for(;sa($t).fakeScopeForSignatureDeclaration;)$t=$t.parent;return $t}function Ao($t,lt,hi){return hi.flags&8192&&hi.symbol===$t&&(!lt.enclosingDeclaration||jt($t.declarations,Qt=>ms(Qt)===lt.enclosingFile))&&(lt.flags|=1048576),ii(hi,lt)}function ea($t,lt,hi,Di){var Qt;let Cr,jr=lt&&(Si(lt)||cS(lt))&&DOe(lt,$t.enclosingDeclaration),Qn=lt??Di.valueDeclaration??zn(Di)??((Qt=Di.declarations)==null?void 0:Qt[0]);if(!dn(hi,$t)&&Qn){let yi=qe($t,Di,hi);yB(Qn)?Cr=tr.serializeTypeOfAccessor(Qn,Di,$t):KAe(Qn)&&!sp(Qn)&&!(la(hi)&196608)&&(Cr=tr.serializeTypeOfDeclaration(Qn,Di,$t)),yi()}return Cr||(jr&&(hi=mW(hi)),Cr=Ao(Di,$t,hi)),Cr??me.createKeywordTypeNode(133)}function tc($t,lt,hi){return hi===lt?!0:$t&&((ss($t)||pi($t))&&$t.questionToken||Si($t)&&Xst($t))?Dv(lt,524288)===hi:!1}function jg($t,lt){let hi=$t.flags&256,Di=Vt($t);hi&&($t.flags&=-257);let Qt,Cr=ud(lt);if(!(hi&&Xo(Cr))){if(lt.declaration&&!sp(lt.declaration)&&!dn(Cr,$t)){let jr=Uo(lt.declaration),Qn=qe($t,jr,Cr);Qt=tr.serializeReturnTypeForSignature(lt.declaration,jr,$t),Qn()}Qt||(Qt=nA($t,lt,Cr))}return!Qt&&!hi&&(Qt=me.createKeywordTypeNode(133)),Di(),Qt}function nA($t,lt,hi){let Di=$t.suppressReportInferenceFallback;$t.suppressReportInferenceFallback=!0;let Qt=Tv(lt),Cr=Qt?V0($t.mapper?Ihn(Qt,$t.mapper):Qt,$t):ii(hi,$t);return $t.suppressReportInferenceFallback=Di,Cr}function Sp($t,lt,hi=lt.enclosingDeclaration){let Di=!1,Qt=B0($t);if(wo($t)&&(p3(Qt)||cN(Qt.parent)||zi(Qt.parent)&&_P(Qt.parent.left)&&p3(Qt.parent.right)))return Di=!0,{introducesError:Di,node:$t};let Cr=vpe($t),jr;if(vF(Qt))return jr=Uo(r0(Qt,!1,!1)),cW(jr,Qt,Cr,!1).accessibility!==0&&(Di=!0,lt.tracker.reportInaccessibleThisError()),{introducesError:Di,node:Qn($t)};if(jr=TI(Qt,Cr,!0,!0),lt.enclosingDeclaration&&!(jr&&jr.flags&262144)){jr=fn(jr);let yi=TI(Qt,Cr,!0,!0,lt.enclosingDeclaration);if(yi===it||yi===void 0&&jr!==void 0||yi&&jr&&!Et(fn(yi),jr))return yi!==it&<.tracker.reportInferenceFallback($t),Di=!0,{introducesError:Di,node:$t,sym:jr};jr=yi}if(jr)return jr.flags&1&&jr.valueDeclaration&&(HL(jr.valueDeclaration)||cS(jr.valueDeclaration))?{introducesError:Di,node:Qn($t)}:(!(jr.flags&262144)&&!HT($t)&&cW(jr,hi,Cr,!1).accessibility!==0?(lt.tracker.reportInferenceFallback($t),Di=!0):lt.tracker.trackSymbol(jr,hi,Cr),{introducesError:Di,node:Qn($t)});return{introducesError:Di,node:$t};function Qn(yi){if(yi===Qt){let Ti=Fp(jr),Us=jr.flags&262144?Qf(Ti,lt):me.cloneNode(yi);return Us.symbol=jr,v(lt,ti(Us,16777216),yi)}let Xn=_s(yi,Ti=>Qn(Ti),void 0);return v(lt,Xn,yi)}}function tC($t,lt,hi,Di){let Qt=hi?111551:788968,Cr=TI(lt,Qt,!0);if(!Cr)return;let jr=Cr.flags&2097152?YC(Cr):Cr;if(cW(Cr,$t.enclosingDeclaration,Qt,!1).accessibility===0)return Fd(jr,$t,Qt,Di)}function P0($t,lt){let hi=m($t,lt,!0);if(!hi)return!1;if(wo(lt)&&ky(lt)){ahn(lt);let Di=sa(lt).resolvedSymbol;return!Di||!(!lt.isTypeOf&&!(Di.flags&788968)||!(B(lt.typeArguments)>=Ik(Ug(Di))))}if(nh(lt)){if(s2(lt))return!1;let Di=sa(lt).resolvedSymbol;if(!Di)return!1;if(Di.flags&262144){let Qt=Fp(Di);return!($t.mapper&&w9(Qt,$t.mapper)!==Qt)}if(GY(lt))return as(lt,hi)&&!mIn(lt)&&!!(Di.flags&788968)}if(xB(lt)&<.operator===158&<.type.kind===155){let Di=$t.enclosingDeclaration&&Ms($t.enclosingDeclaration);return!!ji(lt,Qt=>Qt===Di)}return!0}function Qb($t,lt,hi){let Di=m($t,lt);if(hi&&!kv(Di,Qt=>!!(Qt.flags&32768))&&P0($t,lt)){let Qt=tr.tryReuseExistingTypeNode($t,lt);if(Qt)return me.createUnionTypeNode([Qt,me.createKeywordTypeNode(157)])}return ii(Di,$t)}function H5($t,lt){var hi;let Di=cyn(me.createPropertyDeclaration,175,!0),Qt=cyn((Bn,go,sc,yc)=>me.createPropertySignature(Bn,go,sc,yc),174,!1),Cr=lt.enclosingDeclaration,jr=[],Qn=new Set,yi=[],Xn=lt;lt={...Xn,usedSymbolNames:new Set(Xn.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((hi=Xn.remappedSymbolReferences)==null?void 0:hi.entries()),tracker:void 0};let Ti={...Xn.tracker.inner,trackSymbol:(Bn,go,sc)=>{var yc,Yo;if((yc=lt.remappedSymbolNames)!=null&&yc.has(kg(Bn)))return!1;if(cW(Bn,go,sc,!1).accessibility===0){let sA=Bd(Bn,lt,sc);if(!(Bn.flags&4)){let Pu=sA[0],Zc=ms(Xn.enclosingDeclaration);jt(Pu.declarations,Rg=>ms(Rg)===Zc)&&EA(Pu)}}else if((Yo=Xn.tracker.inner)!=null&&Yo.trackSymbol)return Xn.tracker.inner.trackSymbol(Bn,go,sc);return!1}};lt.tracker=new _Ot(lt,Ti,Xn.tracker.moduleResolverHost),Dh($t,(Bn,go)=>{let sc=Bc(go);yk(Bn,sc)});let Us=!lt.bundled,No=$t.get("export=");return No&&$t.size>1&&No.flags&2098688&&($t=qu(),$t.set("export=",No)),ta($t),nu(jr);function zo(Bn){return!!Bn&&Bn.kind===80}function za(Bn){return Ch(Bn)?Me(At(Bn.declarationList.declarations,Il),zo):Me([Il(Bn)],zo)}function La(Bn){let go=de(Bn,Cf),sc=Se(Bn,xh),yc=sc!==-1?Bn[sc]:void 0;if(yc&&go&&go.isExportEquals&&Ir(go.expression)&&Ir(yc.name)&&Vo(yc.name)===Vo(go.expression)&&yc.body&&_N(yc.body)){let Yo=Me(Bn,Pu=>!!(o_(Pu)&32)),Vg=yc.name,sA=yc.body;if(B(Yo)&&(yc=me.updateModuleDeclaration(yc,yc.modifiers,yc.name,sA=me.updateModuleBlock(sA,me.createNodeArray([...yc.body.statements,me.createExportDeclaration(void 0,!1,me.createNamedExports(At(er(Yo,Pu=>za(Pu)),Pu=>me.createExportSpecifier(!1,void 0,Pu))),void 0)]))),Bn=[...Bn.slice(0,sc),yc,...Bn.slice(sc+1)]),!de(Bn,Pu=>Pu!==yc&&t3(Pu,Vg))){jr=[];let Pu=!jt(sA.statements,Zc=>Ga(Zc,32)||Cf(Zc)||Gh(Zc));F(sA.statements,Zc=>{ou(Zc,Pu?32:0)}),Bn=[...Me(Bn,Zc=>Zc!==yc&&Zc!==go),...jr]}}return Bn}function to(Bn){let go=Me(Bn,yc=>Gh(yc)&&!yc.moduleSpecifier&&!!yc.exportClause&&mv(yc.exportClause));B(go)>1&&(Bn=[...Me(Bn,Yo=>!Gh(Yo)||!!Yo.moduleSpecifier||!Yo.exportClause),me.createExportDeclaration(void 0,!1,me.createNamedExports(er(go,Yo=>Ma(Yo.exportClause,mv).elements)),void 0)]);let sc=Me(Bn,yc=>Gh(yc)&&!!yc.moduleSpecifier&&!!yc.exportClause&&mv(yc.exportClause));if(B(sc)>1){let yc=Yn(sc,Yo=>Zg(Yo.moduleSpecifier)?">"+Yo.moduleSpecifier.text:">");if(yc.length!==sc.length)for(let Yo of yc)Yo.length>1&&(Bn=[...Me(Bn,Vg=>!Yo.includes(Vg)),me.createExportDeclaration(void 0,!1,me.createNamedExports(er(Yo,Vg=>Ma(Vg.exportClause,mv).elements)),Yo[0].moduleSpecifier)])}return Bn}function _c(Bn){let go=Se(Bn,sc=>Gh(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&mv(sc.exportClause));if(go>=0){let sc=Bn[go],yc=Xt(sc.exportClause.elements,Yo=>{if(!Yo.propertyName&&Yo.name.kind!==11){let Vg=Yo.name,sA=po(Bn),Pu=Me(sA,Zc=>t3(Bn[Zc],Vg));if(B(Pu)&&ue(Pu,Zc=>Kne(Bn[Zc]))){for(let Zc of Pu)Bn[Zc]=DA(Bn[Zc]);return}}return Yo});B(yc)?Bn[go]=me.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,me.updateNamedExports(sc.exportClause,yc),sc.moduleSpecifier,sc.attributes):LA(Bn,go)}return Bn}function nu(Bn){return Bn=La(Bn),Bn=to(Bn),Bn=_c(Bn),Cr&&(ll(Cr)&&vl(Cr)||xh(Cr))&&(!jt(Bn,PT)||!Db(Bn)&&jt(Bn,t7))&&Bn.push(aEe(me)),Bn}function DA(Bn){let go=(o_(Bn)|32)&-129;return me.replaceModifiers(Bn,go)}function Li(Bn){let go=o_(Bn)&-33;return me.replaceModifiers(Bn,go)}function ta(Bn,go,sc){go||yi.push(new Map);let yc=0,Yo=Array.from(Bn.values());for(let Vg of Yo){if(yc++,kt(lt)&&yc+2{mu(Vg,!0,!!sc)}),yi.pop())}function mu(Bn,go,sc){Gd(Io(Bn));let yc=jA(Bn);if(Qn.has(kg(yc)))return;if(Qn.add(kg(yc)),!go||B(Bn.declarations)&&jt(Bn.declarations,Vg=>!!ji(Vg,sA=>sA===Cr))){let Vg=uSe(lt);lt.tracker.pushErrorFallbackNode(de(Bn.declarations,sA=>ms(sA)===lt.enclosingFile)),Jl(Bn,go,sc),lt.tracker.popErrorFallbackNode(),Vg()}}function Jl(Bn,go,sc,yc=Bn.escapedName){var Yo,Vg,sA,Pu,Zc,Rg,_m;let xf=Bc(yc),f0=yc==="default";if(go&&!(lt.flags&131072)&&WY(xf)&&!f0){lt.encounteredError=!0;return}let KI=f0&&!!(Bn.flags&-113||Bn.flags&16&&B(Gd(Io(Bn))))&&!(Bn.flags&2097152),gf=!KI&&!go&&WY(xf)&&!f0;(KI||gf)&&(go=!0);let pI=(go?0:32)|(f0&&!KI?2048:0),NI=Bn.flags&1536&&Bn.flags&7&&yc!=="export=",SS=NI&&j8t(Io(Bn),Bn);if((Bn.flags&8208||SS)&&EW(Io(Bn),Bn,yk(Bn,xf),pI),Bn.flags&524288&&mm(Bn,xf,pI),Bn.flags&98311&&yc!=="export="&&!(Bn.flags&4194304)&&!(Bn.flags&32)&&!(Bn.flags&8192)&&!SS)if(sc)FOe(Bn)&&(gf=!1,KI=!1);else{let Ph=Io(Bn),Ky=yk(Bn,xf);if(Ph.symbol&&Ph.symbol!==Bn&&Ph.symbol.flags&16&&jt(Ph.symbol.declarations,RF)&&((Yo=Ph.symbol.members)!=null&&Yo.size||(Vg=Ph.symbol.exports)!=null&&Vg.size))lt.remappedSymbolReferences||(lt.remappedSymbolReferences=new Map),lt.remappedSymbolReferences.set(kg(Ph.symbol),Bn),Jl(Ph.symbol,go,sc,yc),lt.remappedSymbolReferences.delete(kg(Ph.symbol));else if(!(Bn.flags&16)&&j8t(Ph,Bn))EW(Ph,Bn,Ky,pI);else{let k9=Bn.flags&2?kq(Bn)?2:1:(sA=Bn.parent)!=null&&sA.valueDeclaration&&ll((Pu=Bn.parent)==null?void 0:Pu.valueDeclaration)?2:void 0,vS=KI||!(Bn.flags&4)?Ky:LOe(Ky,Bn),oG=Bn.declarations&&de(Bn.declarations,vW=>nc(vW));oG&&u_(oG.parent)&&oG.parent.declarations.length===1&&(oG=oG.parent.parent);let SW=(Zc=Bn.declarations)==null?void 0:Zc.find(jo);if(SW&&fo(SW.parent)&&Ir(SW.parent.right)&&((Rg=Ph.symbol)!=null&&Rg.valueDeclaration)&&ll(Ph.symbol.valueDeclaration)){let vW=Ky===SW.parent.right.escapedText?void 0:SW.parent.right;lt.approximateLength+=12+(((_m=vW?.escapedText)==null?void 0:_m.length)??0),ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vW,Ky)])),0),lt.tracker.trackSymbol(Ph.symbol,lt.enclosingDeclaration,111551)}else{let vW=v(lt,me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(vS,void 0,ea(lt,void 0,Ph,Bn))],k9)),oG);lt.approximateLength+=7+vS.length,ou(vW,vS!==Ky?pI&-33:pI),vS!==Ky&&!go&&(lt.approximateLength+=16+vS.length+Ky.length,ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vS,Ky)])),0),gf=!1,KI=!1)}}}if(Bn.flags&384&&zQ(Bn,xf,pI),Bn.flags&32&&(Bn.flags&4&&Bn.valueDeclaration&&fo(Bn.valueDeclaration.parent)&&vd(Bn.valueDeclaration.parent.right)?ayn(Bn,yk(Bn,xf),pI):U8t(Bn,yk(Bn,xf),pI)),(Bn.flags&1536&&(!NI||IZ(Bn))||SS)&&Q5(Bn,xf,pI),Bn.flags&64&&!(Bn.flags&32)&&Cm(Bn,xf,pI),Bn.flags&2097152&&ayn(Bn,yk(Bn,xf),pI),Bn.flags&4&&Bn.escapedName==="export="&&FOe(Bn),Bn.flags&8388608&&Bn.declarations)for(let Ph of Bn.declarations){let Ky=F0(Ph,Ph.moduleSpecifier);if(!Ky)continue;let k9=Ph.isTypeOnly,vS=yh(Ky,lt);lt.approximateLength+=17+vS.length,ou(me.createExportDeclaration(void 0,k9,void 0,me.createStringLiteral(vS)),0)}if(KI){let Ph=yk(Bn,xf);lt.approximateLength+=16+Ph.length,ou(me.createExportAssignment(void 0,!1,me.createIdentifier(Ph)),0)}else if(gf){let Ph=yk(Bn,xf);lt.approximateLength+=22+xf.length+Ph.length,ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Ph,xf)])),0)}}function EA(Bn){if(jt(Bn.declarations,HL))return;pe.assertIsDefined(yi[yi.length-1]),LOe(Bc(Bn.escapedName),Bn);let go=!!(Bn.flags&2097152)&&!jt(Bn.declarations,sc=>!!ji(sc,Gh)||tk(sc)||km(sc)&&!ZF(sc.moduleReference));yi[go?0:yi.length-1].set(kg(Bn),Bn)}function Ad(Bn){return ll(Bn)&&(vl(Bn)||Zu(Bn))||s_(Bn)&&!vB(Bn)}function ou(Bn,go){if(LB(Bn)){let sc=o_(Bn),yc=0,Yo=lt.enclosingDeclaration&&(iS(lt.enclosingDeclaration)?ms(lt.enclosingDeclaration):lt.enclosingDeclaration);go&32&&Yo&&(Ad(Yo)||xh(Yo))&&Kne(Bn)&&(yc|=32),Us&&!(yc&32)&&(!Yo||!(Yo.flags&33554432))&&(V3(Bn)||Ch(Bn)||ih(Bn)||pm(Bn)||xh(Bn))&&(yc|=128),go&2048&&(pm(Bn)||g_(Bn)||ih(Bn))&&(yc|=2048),yc&&(Bn=me.replaceModifiers(Bn,yc|sc)),lt.approximateLength+=ZOe(yc|sc)}jr.push(Bn)}function mm(Bn,go,sc){var yc;let Yo=yfn(Bn),Vg=fa(Bn).typeParameters,sA=At(Vg,KI=>UI(KI,lt)),Pu=(yc=Bn.declarations)==null?void 0:yc.find(iS),Zc=pJ(Pu?Pu.comment||Pu.parent.comment:void 0),Rg=Vt(lt);lt.flags|=8388608;let _m=lt.enclosingDeclaration;lt.enclosingDeclaration=Pu;let xf=Pu&&Pu.typeExpression&&W3(Pu.typeExpression)&&tr.tryReuseExistingTypeNode(lt,Pu.typeExpression.type)||ii(Yo,lt),f0=yk(Bn,go);lt.approximateLength+=8+(Zc?.length??0)+f0.length,ou(kB(me.createTypeAliasDeclaration(void 0,f0,sA,xf),Zc?[{kind:3,text:`* + `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else za&&Mi(lt,zo,za);return zo}}function Mi($t,lt,hi){return $t.enclosingFile&&$t.enclosingFile===ms(hi)?hh(lt,hi):lt}function To($t,lt,hi){if(jt($t)){if(vr(lt))if(lt.out.truncated=!0,hi){if($t.length>2)return[ii($t[0],lt),lt.flags&1?JT(me.createKeywordTypeNode(133),3,`... ${$t.length-2} more elided ...`):me.createTypeReferenceNode(`... ${$t.length-2} more ...`,void 0),ii($t[$t.length-1],lt)]}else return[lt.flags&1?JT(me.createKeywordTypeNode(133),3,"elided"):me.createTypeReferenceNode("...",void 0)];let Qt=!(lt.flags&64)?dl():void 0,Cr=[],jr=0;for(let Qn of $t){if(jr++,vr(lt)&&jr+2<$t.length-1){lt.out.truncated=!0,Cr.push(lt.flags&1?JT(me.createKeywordTypeNode(133),3,`... ${$t.length-jr} more elided ...`):me.createTypeReferenceNode(`... ${$t.length-jr} more ...`,void 0));let Xn=ii($t[$t.length-1],lt);Xn&&Cr.push(Xn);break}lt.approximateLength+=2;let yi=ii(Qn,lt);yi&&(Cr.push(yi),Qt&&bLe(yi)&&Qt.add(yi.typeName.escapedText,[Qn,Cr.length-1]))}if(Qt){let Qn=Vt(lt);lt.flags|=64,Qt.forEach(yi=>{if(!ELe(yi,([Xn],[Ti])=>Ka(Xn,Ti)))for(let[Xn,Ti]of yi)Cr[Ti]=ii(Xn,lt)}),Qn()}return Cr}}function Ka($t,lt){return $t===lt||!!$t.symbol&&$t.symbol===lt.symbol||!!$t.aliasSymbol&&$t.aliasSymbol===lt.aliasSymbol}function yl($t,lt,hi){let Di=xge($t)||"x",Qt=ii($t.keyType,lt),Cr=me.createParameterDeclaration(void 0,void 0,Di,void 0,Qt,void 0);return hi||(hi=ii($t.type||hr,lt)),!$t.type&&!(lt.flags&2097152)&&(lt.encounteredError=!0),lt.approximateLength+=Di.length+4,me.createIndexSignature($t.isReadonly?[me.createToken(148)]:void 0,[Cr],hi)}function ka($t,lt,hi,Di){var Qt;let Cr,jr,Qn=Yfn($t,!0)[0],yi=Vu(hi,$t.declaration,Qn,$t.typeParameters,$t.parameters,$t.mapper);hi.approximateLength+=3,hi.flags&32&&$t.target&&$t.mapper&&$t.target.typeParameters?jr=$t.target.typeParameters.map(La=>ii(_l(La,$t.mapper),hi)):Cr=$t.typeParameters&&$t.typeParameters.map(La=>UI(La,hi));let Xn=Vt(hi);hi.flags&=-257;let Ti=(jt(Qn,La=>La!==Qn[Qn.length-1]&&!!(iI(La)&32768))?$t.parameters:Qn).map(La=>to(La,hi,lt===177)),Us=hi.flags&33554432?void 0:gd($t,hi);Us&&Ti.unshift(Us),Xn();let No=jg(hi,$t),zo=Di?.modifiers;if(lt===186&&$t.flags&4){let La=Dw(zo);zo=me.createModifiersFromModifierFlags(La|64)}let za=lt===180?me.createCallSignature(Cr,Ti,No):lt===181?me.createConstructSignature(Cr,Ti,No):lt===174?me.createMethodSignature(zo,Di?.name??me.createIdentifier(""),Di?.questionToken,Cr,Ti,No):lt===175?me.createMethodDeclaration(zo,void 0,Di?.name??me.createIdentifier(""),void 0,Cr,Ti,No,void 0):lt===177?me.createConstructorDeclaration(zo,Ti,void 0):lt===178?me.createGetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,No,void 0):lt===179?me.createSetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,void 0):lt===182?me.createIndexSignature(zo,Ti,No):lt===318?me.createJSDocFunctionType(Ti,No):lt===185?me.createFunctionTypeNode(Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):lt===186?me.createConstructorTypeNode(zo,Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):lt===263?me.createFunctionDeclaration(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,void 0):lt===219?me.createFunctionExpression(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,me.createBlock([])):lt===220?me.createArrowFunction(zo,Cr,Ti,No,void 0,me.createBlock([])):pe.assertNever(lt);if(jr&&(za.typeArguments=me.createNodeArray(jr)),((Qt=$t.declaration)==null?void 0:Qt.kind)===324&&$t.declaration.parent.kind===340){let La=xp($t.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(ro=>ro.replace(/^\s+/," ")).join(` +`);JT(za,3,La,!0)}return yi?.(),za}function Kc($t){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let lt,hi,Di=!1,Qt=$t.tracker,Cr=$t.trackedSymbols;$t.trackedSymbols=void 0;let jr=$t.encounteredError;return $t.tracker=new SOt($t,{...Qt.inner,reportCyclicStructureError(){Qn(()=>Qt.reportCyclicStructureError())},reportInaccessibleThisError(){Qn(()=>Qt.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){Qn(()=>Qt.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(Ti){Qn(()=>Qt.reportLikelyUnsafeImportRequiredError(Ti))},reportNonSerializableProperty(Ti){Qn(()=>Qt.reportNonSerializableProperty(Ti))},reportPrivateInBaseOfClassExpression(Ti){Qn(()=>Qt.reportPrivateInBaseOfClassExpression(Ti))},trackSymbol(Ti,Us,No){return(lt??(lt=[])).push([Ti,Us,No]),!1},moduleResolverHost:$t.tracker.moduleResolverHost},$t.tracker.moduleResolverHost),{startRecoveryScope:yi,finalizeBoundary:Xn,markError:Qn,hadError:()=>Di};function Qn(Ti){Di=!0,Ti&&(hi??(hi=[])).push(Ti)}function yi(){let Ti=lt?.length??0,Us=hi?.length??0;return()=>{Di=!1,lt&&(lt.length=Ti),hi&&(hi.length=Us)}}function Xn(){return $t.tracker=Qt,$t.trackedSymbols=Cr,$t.encounteredError=jr,hi?.forEach(Ti=>Ti()),Di?!1:(lt?.forEach(([Ti,Us,No])=>$t.tracker.trackSymbol(Ti,Us,No)),!0)}}function Vu($t,lt,hi,Di,Qt,Cr){let jr=gSe($t),Qn,yi,Xn=$t.enclosingDeclaration,Ti=$t.mapper;if(Cr&&($t.mapper=Cr),$t.enclosingDeclaration&<){let No=function(zo,za){pe.assert($t.enclosingDeclaration);let La;sa($t.enclosingDeclaration).fakeScopeForSignatureDeclaration===zo?La=$t.enclosingDeclaration:$t.enclosingDeclaration.parent&&sa($t.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===zo&&(La=$t.enclosingDeclaration.parent),pe.assertOptionalNode(La,$u);let ro=La?.locals??qu(),_c,nu;if(za((DA,Li)=>{if(La){let ta=ro.get(DA);ta?nu=Ft(nu,{name:DA,oldSymbol:ta}):_c=Ft(_c,DA)}ro.set(DA,Li)}),La)return function(){F(_c,Li=>ro.delete(Li)),F(nu,Li=>ro.set(Li.name,Li.oldSymbol))};{let DA=me.createBlock(E);sa(DA).fakeScopeForSignatureDeclaration=zo,DA.locals=ro,XA(DA,$t.enclosingDeclaration),$t.enclosingDeclaration=DA}};var Us=No;Qn=jt(hi)?No("params",zo=>{if(hi)for(let za=0;za{if(Si(_c)&&Nu(_c.name))return nu(_c.name),!0;return;function nu(Li){F(Li.elements,ta=>{switch(ta.kind){case 233:return;case 209:return DA(ta);default:return pe.assertNever(ta)}})}function DA(Li){if(Nu(Li.name))return nu(Li.name);let ta=Uo(Li);zo(ta.escapedName,ta)}})||zo(La.escapedName,La)}}):void 0,$t.flags&4&&jt(Di)&&(yi=No("typeParams",zo=>{for(let za of Di??E){let La=Qf(za,$t).escapedText;zo(La,za.symbol)}}))}return()=>{Qn?.(),yi?.(),jr(),$t.enclosingDeclaration=Xn,$t.mapper=Ti}}function gd($t,lt){if($t.thisParameter)return to($t.thisParameter,lt);if($t.declaration&&wo($t.declaration)){let hi=Nb($t.declaration);if(hi&&hi.typeExpression)return me.createParameterDeclaration(void 0,void 0,"this",void 0,ii(m(lt,hi.typeExpression),lt))}}function Ll($t,lt,hi){let Di=Vt(lt);lt.flags&=-513;let Qt=me.createModifiersFromModifierFlags(ZUt($t)),Cr=Qf($t,lt),jr=VQ($t),Qn=jr&&ii(jr,lt);return Di(),me.createTypeParameterDeclaration(Qt,Cr,hi,Qn)}function Ef($t,lt,hi){return!dn($t,hi)&<&&m(hi,lt)===$t&&tr.tryReuseExistingTypeNode(hi,lt)||ii($t,hi)}function UI($t,lt,hi=Xy($t)){let Di=hi&&Ef(hi,tot($t),lt);return Ll($t,lt,Di)}function V0($t,lt){let hi=$t.kind===2||$t.kind===3?me.createToken(131):void 0,Di=$t.kind===1||$t.kind===3?ti(me.createIdentifier($t.parameterName),16777216):me.createThisTypeNode(),Qt=$t.type&&ii($t.type,lt);return me.createTypePredicateNode(hi,Di,Qt)}function xs($t){let lt=Cp($t,170);if(lt)return lt;if(!bw($t))return Cp($t,342)}function to($t,lt,hi){let Di=xs($t),Qt=Io($t),Cr=ea(lt,Di,Qt,$t),jr=!(lt.flags&8192)&&hi&&Di&&LB(Di)?At($R(Di),me.cloneNode):void 0,yi=Di&&EB(Di)||iI($t)&32768?me.createToken(26):void 0,Xn=qc($t,Di,lt),Us=Di&&C2e(Di)||iI($t)&16384?me.createToken(58):void 0,No=me.createParameterDeclaration(jr,yi,Xn,Us,Cr,void 0);return lt.approximateLength+=nf($t).length+3,No}function qc($t,lt,hi){return lt&<.name?lt.name.kind===80?ti(me.cloneNode(lt.name),16777216):lt.name.kind===167?ti(me.cloneNode(lt.name.right),16777216):Di(lt.name):nf($t);function Di(Qt){return Cr(Qt);function Cr(jr){hi.tracker.canTrackSymbol&&Un(jr)&&wJt(jr)&&_o(jr.expression,hi.enclosingDeclaration,hi);let Qn=_s(jr,Cr,void 0,void 0,Cr);return hg(Qn)&&(Qn=me.updateBindingElement(Qn,Qn.dotDotDotToken,Qn.propertyName,Qn.name,void 0)),sp(Qn)||(Qn=me.cloneNode(Qn)),ti(Qn,16777217)}}}function _o($t,lt,hi){if(!hi.tracker.canTrackSymbol)return;let Di=B0($t),Qt=An(lt,Di.escapedText,1160127,void 0,!0);if(Qt)hi.tracker.trackSymbol(Qt,lt,111551);else{let Cr=An(Di,Di.escapedText,1160127,void 0,!0);Cr&&hi.tracker.trackSymbol(Cr,lt,111551)}}function du($t,lt,hi,Di){return lt.tracker.trackSymbol($t,lt.enclosingDeclaration,hi),Bd($t,lt,hi,Di)}function Bd($t,lt,hi,Di){let Qt;return!($t.flags&262144)&&(lt.enclosingDeclaration||lt.flags&64)&&!(lt.internalFlags&4)?(Qt=pe.checkDefined(jr($t,hi,!0)),pe.assert(Qt&&Qt.length>0)):Qt=[$t],Qt;function jr(Qn,yi,Xn){let Ti=m9(Qn,lt.enclosingDeclaration,yi,!!(lt.flags&128)),Us;if(!Ti||xQ(Ti[0],lt.enclosingDeclaration,Ti.length===1?yi:Jw(yi))){let zo=kQ(Ti?Ti[0]:Qn,lt.enclosingDeclaration,yi);if(B(zo)){Us=zo.map(ro=>jt(ro.declarations,GQ)?yh(ro,lt):void 0);let za=zo.map((ro,_c)=>_c);za.sort(No);let La=za.map(ro=>zo[ro]);for(let ro of La){let _c=jr(ro,Jw(yi),!1);if(_c){if(ro.exports&&ro.exports.get("export=")&&Et(ro.exports.get("export="),Qn)){Ti=_c;break}Ti=_c.concat(Ti||[Ae(ro,Qn)||Qn]);break}}}}if(Ti)return Ti;if(Xn||!(Qn.flags&6144))return!Xn&&!Di&&F(Qn.declarations,GQ)?void 0:[Qn];function No(zo,za){let La=Us[zo],ro=Us[za];if(La&&ro){let _c=Ip(ro);return Ip(La)===_c?W9e(La)-W9e(ro):_c?-1:1}return 0}}}function uf($t,lt){let hi;return Jse($t).flags&524384&&(hi=me.createNodeArray(At(Ug($t),Qt=>UI(Qt,lt)))),hi}function JC($t,lt,hi){var Di;pe.assert($t&&0<=lt&<<$t.length);let Qt=$t[lt],Cr=kg(Qt);if((Di=hi.typeParameterSymbolList)!=null&&Di.has(Cr))return;hi.mustCreateTypeParameterSymbolList&&(hi.mustCreateTypeParameterSymbolList=!1,hi.typeParameterSymbolList=new Set(hi.typeParameterSymbolList)),hi.typeParameterSymbolList.add(Cr);let jr;if(hi.flags&512&<<$t.length-1){let Qn=Qt,yi=$t[lt+1];if(iI(yi)&1){let Xn=Ep(Qn.flags&2097152?YC(Qn):Qn);jr=To(At(Xn,Ti=>w9(Ti,yi.links.mapper)),hi)}else jr=uf(Qt,hi)}return jr}function bA($t){return Iv($t.objectType)?bA($t.objectType):$t}function yh($t,lt,hi){let Di=Cp($t,308);if(!Di){let Us=X($t.declarations,No=>aK(No,$t));Us&&(Di=Cp(Us,308))}if(Di&&Di.moduleName!==void 0)return Di.moduleName;if(!Di&&yOt.test($t.escapedName))return $t.escapedName.substring(1,$t.escapedName.length-1);if(!lt.enclosingFile||!lt.tracker.moduleResolverHost)return yOt.test($t.escapedName)?$t.escapedName.substring(1,$t.escapedName.length-1):ms(LJ($t)).fileName;let Qt=Dd(lt.enclosingDeclaration),Cr=fZe(Qt)?ZY(Qt):void 0,jr=lt.enclosingFile,Qn=hi||Cr&&s.getModeForUsageLocation(jr,Cr)||jr&&s.getDefaultResolutionModeForFile(jr),yi=_de(jr.path,Qn),Xn=fa($t),Ti=Xn.specifierCache&&Xn.specifierCache.get(yi);if(!Ti){let Us=!!Te.outFile,{moduleResolverHost:No}=lt.tracker,zo=Us?{...Te,baseUrl:No.getCommonSourceDirectory()}:Te;Ti=ma(ftn($t,ks,zo,jr,No,{importModuleSpecifierPreference:Us?"non-relative":"project-relative",importModuleSpecifierEnding:Us?"minimal":Qn===99?"js":void 0},{overrideImportMode:hi})),Xn.specifierCache??(Xn.specifierCache=new Map),Xn.specifierCache.set(yi,Ti)}return Ti}function Vh($t){let lt=me.createIdentifier(Bc($t.escapedName));return $t.parent?me.createQualifiedName(Vh($t.parent),lt):lt}function Fd($t,lt,hi,Di){let Qt=du($t,lt,hi,!(lt.flags&16384)),Cr=hi===111551;if(jt(Qt[0].declarations,GQ)){let yi=Qt.length>1?Qn(Qt,Qt.length-1,1):void 0,Xn=Di||JC(Qt,0,lt),Ti=ms(Dd(lt.enclosingDeclaration)),Us=FJ(Qt[0]),No,zo;if((k_(Te)===3||k_(Te)===99)&&Us?.impliedNodeFormat===99&&Us.impliedNodeFormat!==Ti?.impliedNodeFormat&&(No=yh(Qt[0],lt,99),zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral("import"))]))),No||(No=yh(Qt[0],lt)),!(lt.flags&67108864)&&k_(Te)!==1&&No.includes("/node_modules/")){let La=No;if(k_(Te)===3||k_(Te)===99){let ro=Ti?.impliedNodeFormat===99?1:99;No=yh(Qt[0],lt,ro),No.includes("/node_modules/")?No=La:zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral(ro===99?"import":"require"))]))}zo||(lt.encounteredError=!0,lt.tracker.reportLikelyUnsafeImportRequiredError&<.tracker.reportLikelyUnsafeImportRequiredError(La))}let za=me.createLiteralTypeNode(me.createStringLiteral(No));if(lt.approximateLength+=No.length+10,!yi||fC(yi)){if(yi){let La=Ir(yi)?yi:yi.right;xx(La,void 0)}return me.createImportTypeNode(za,zo,yi,Xn,Cr)}else{let La=bA(yi),ro=La.objectType.typeName;return me.createIndexedAccessTypeNode(me.createImportTypeNode(za,zo,ro,Xn,Cr),La.indexType)}}let jr=Qn(Qt,Qt.length-1,0);if(Iv(jr))return jr;if(Cr)return me.createTypeQueryNode(jr);{let yi=Ir(jr)?jr:jr.right,Xn=G3(yi);return xx(yi,void 0),me.createTypeReferenceNode(jr,Xn)}function Qn(yi,Xn,Ti){let Us=Xn===yi.length-1?Di:JC(yi,Xn,lt),No=yi[Xn],zo=yi[Xn-1],za;if(Xn===0)lt.flags|=16777216,za=T5(No,lt),lt.approximateLength+=(za?za.length:0)+1,lt.flags^=16777216;else if(zo&&B1(zo)){let ro=B1(zo);Dh(ro,(_c,nu)=>{if(Et(_c,No)&&!f2e(nu)&&nu!=="export=")return za=Bc(nu),!0})}if(za===void 0){let ro=X(No.declarations,Il);if(ro&&Un(ro)&&fC(ro.expression)){let _c=Qn(yi,Xn-1,Ti);return fC(_c)?me.createIndexedAccessTypeNode(me.createParenthesizedType(me.createTypeQueryNode(_c)),me.createTypeQueryNode(ro.expression)):_c}za=T5(No,lt)}if(lt.approximateLength+=za.length+1,!(lt.flags&16)&&zo&&pk(zo)&&pk(zo).get(No.escapedName)&&Et(pk(zo).get(No.escapedName),No)){let ro=Qn(yi,Xn-1,Ti);return Iv(ro)?me.createIndexedAccessTypeNode(ro,me.createLiteralTypeNode(me.createStringLiteral(za))):me.createIndexedAccessTypeNode(me.createTypeReferenceNode(ro,Us),me.createLiteralTypeNode(me.createStringLiteral(za)))}let La=ti(me.createIdentifier(za),16777216);if(Us&&xx(La,me.createNodeArray(Us)),La.symbol=No,Xn>Ti){let ro=Qn(yi,Xn-1,Ti);return fC(ro)?me.createQualifiedName(ro,La):pe.fail("Impossible construct - an export of an indexed access cannot be reachable")}return La}}function ES($t,lt,hi){let Di=An(lt.enclosingDeclaration,$t,788968,void 0,!1);return Di&&Di.flags&262144?Di!==hi.symbol:!1}function Qf($t,lt){var hi,Di,Qt,Cr;if(lt.flags&4&<.typeParameterNames){let yi=lt.typeParameterNames.get(QC($t));if(yi)return yi}let jr=ch($t.symbol,lt,788968,!0);if(!(jr.kind&80))return me.createIdentifier("(Missing type parameter)");let Qn=(Di=(hi=$t.symbol)==null?void 0:hi.declarations)==null?void 0:Di[0];if(Qn&&Ds(Qn)&&(jr=v(lt,jr,Qn.name)),lt.flags&4){let yi=jr.escapedText,Xn=((Qt=lt.typeParameterNamesByTextNextNameCount)==null?void 0:Qt.get(yi))||0,Ti=yi;for(;(Cr=lt.typeParameterNamesByText)!=null&&Cr.has(Ti)||ES(Ti,lt,$t);)Xn++,Ti=`${yi}_${Xn}`;if(Ti!==yi){let Us=G3(jr);jr=me.createIdentifier(Ti),xx(jr,Us)}lt.mustCreateTypeParametersNamesLookups&&(lt.mustCreateTypeParametersNamesLookups=!1,lt.typeParameterNames=new Map(lt.typeParameterNames),lt.typeParameterNamesByTextNextNameCount=new Map(lt.typeParameterNamesByTextNextNameCount),lt.typeParameterNamesByText=new Set(lt.typeParameterNamesByText)),lt.typeParameterNamesByTextNextNameCount.set(yi,Xn),lt.typeParameterNames.set(QC($t),jr),lt.typeParameterNamesByText.add(Ti)}return jr}function ch($t,lt,hi,Di){let Qt=du($t,lt,hi);return Di&&Qt.length!==1&&!lt.encounteredError&&!(lt.flags&65536)&&(lt.encounteredError=!0),Cr(Qt,Qt.length-1);function Cr(jr,Qn){let yi=JC(jr,Qn,lt),Xn=jr[Qn];Qn===0&&(lt.flags|=16777216);let Ti=T5(Xn,lt);Qn===0&&(lt.flags^=16777216);let Us=ti(me.createIdentifier(Ti),16777216);return yi&&xx(Us,me.createNodeArray(yi)),Us.symbol=Xn,Qn>0?me.createQualifiedName(Cr(jr,Qn-1),Us):Us}}function Gv($t,lt,hi){let Di=du($t,lt,hi);return Qt(Di,Di.length-1);function Qt(Cr,jr){let Qn=JC(Cr,jr,lt),yi=Cr[jr];jr===0&&(lt.flags|=16777216);let Xn=T5(yi,lt);jr===0&&(lt.flags^=16777216);let Ti=Xn.charCodeAt(0);if(sne(Ti)&&jt(yi.declarations,GQ)){let Us=yh(yi,lt);return lt.approximateLength+=2+Us.length,me.createStringLiteral(Us)}if(jr===0||Zbe(Xn,Ze)){let Us=ti(me.createIdentifier(Xn),16777216);return Qn&&xx(Us,me.createNodeArray(Qn)),Us.symbol=yi,lt.approximateLength+=1+Xn.length,jr>0?me.createPropertyAccessExpression(Qt(Cr,jr-1),Us):Us}else{Ti===91&&(Xn=Xn.substring(1,Xn.length-1),Ti=Xn.charCodeAt(0));let Us;if(sne(Ti)&&!(yi.flags&8)){let No=l2(Xn).replace(/\\./g,zo=>zo.substring(1));lt.approximateLength+=No.length+2,Us=me.createStringLiteral(No,Ti===39)}else""+ +Xn===Xn&&(lt.approximateLength+=Xn.length,Us=me.createNumericLiteral(+Xn));if(!Us){let No=ti(me.createIdentifier(Xn),16777216);Qn&&xx(No,me.createNodeArray(Qn)),No.symbol=yi,lt.approximateLength+=Xn.length,Us=No}return lt.approximateLength+=2,me.createElementAccessExpression(Qt(Cr,jr-1),Us)}}}function ofe($t){let lt=Il($t);return lt?Un(lt)?!!(Ol(lt.expression).flags&402653316):Yg(lt)?!!(Ol(lt.argumentExpression).flags&402653316):Zg(lt):!1}function uSe($t){let lt=Il($t);return!!(lt&&Zg(lt)&&(lt.singleQuote||!sp(lt)&&Ac(xp(lt,!1),"'")))}function afe($t,lt){let hi=Yat($t);if(hi)if(!!lt.tracker.reportPrivateInBaseOfClassExpression&<.flags&2048){let Xn=Bc($t.escapedName);return Xn=Xn.replace(/__#\d+@#/g,"__#private@#"),Kne(Xn,Mg(Te),!1,!0,!!($t.flags&8192))}else return hi;let Di=!!B($t.declarations)&&ue($t.declarations,ofe),Qt=!!B($t.declarations)&&ue($t.declarations,uSe),Cr=!!($t.flags&8192),jr=y2($t,lt,Qt,Di,Cr);if(jr)return jr;let Qn=Bc($t.escapedName);return Kne(Qn,Mg(Te),Qt,Di,Cr)}function y2($t,lt,hi,Di,Qt){let Cr=fa($t).nameType;if(Cr){if(Cr.flags&384){let jr=""+Cr.value;return!Uh(jr,Mg(Te))&&(Di||!IN(jr))?me.createStringLiteral(jr,!!hi):IN(jr)&&Ac(jr,"-")?me.createComputedPropertyName(me.createPrefixUnaryExpression(41,me.createNumericLiteral(-jr))):Kne(jr,Mg(Te),hi,Di,Qt)}if(Cr.flags&8192)return me.createComputedPropertyName(Gv(Cr.symbol,lt,111551))}}function gSe($t){let lt=$t.mustCreateTypeParameterSymbolList,hi=$t.mustCreateTypeParametersNamesLookups;$t.mustCreateTypeParameterSymbolList=!0,$t.mustCreateTypeParametersNamesLookups=!0;let Di=$t.typeParameterNames,Qt=$t.typeParameterNamesByText,Cr=$t.typeParameterNamesByTextNextNameCount,jr=$t.typeParameterSymbolList;return()=>{$t.typeParameterNames=Di,$t.typeParameterNamesByText=Qt,$t.typeParameterNamesByTextNextNameCount=Cr,$t.typeParameterSymbolList=jr,$t.mustCreateTypeParameterSymbolList=lt,$t.mustCreateTypeParametersNamesLookups=hi}}function zn($t,lt){return $t.declarations&&de($t.declarations,hi=>!!$0n(hi)&&(!lt||!!ji(hi,Di=>Di===lt)))}function as($t,lt){if(!(la(lt)&4)||!nh($t))return!0;sot($t);let hi=sa($t).resolvedSymbol,Di=hi&&Fp(hi);return!Di||Di!==lt.target?!0:B($t.typeArguments)>=Ik(lt.target.typeParameters)}function Ms($t){for(;sa($t).fakeScopeForSignatureDeclaration;)$t=$t.parent;return $t}function Ao($t,lt,hi){return hi.flags&8192&&hi.symbol===$t&&(!lt.enclosingDeclaration||jt($t.declarations,Qt=>ms(Qt)===lt.enclosingFile))&&(lt.flags|=1048576),ii(hi,lt)}function ea($t,lt,hi,Di){var Qt;let Cr,jr=lt&&(Si(lt)||cS(lt))&&xOe(lt,$t.enclosingDeclaration),Qn=lt??Di.valueDeclaration??zn(Di)??((Qt=Di.declarations)==null?void 0:Qt[0]);if(!dn(hi,$t)&&Qn){let yi=qe($t,Di,hi);yB(Qn)?Cr=tr.serializeTypeOfAccessor(Qn,Di,$t):jAe(Qn)&&!sp(Qn)&&!(la(hi)&196608)&&(Cr=tr.serializeTypeOfDeclaration(Qn,Di,$t)),yi()}return Cr||(jr&&(hi=mW(hi)),Cr=Ao(Di,$t,hi)),Cr??me.createKeywordTypeNode(133)}function tc($t,lt,hi){return hi===lt?!0:$t&&((ss($t)||pi($t))&&$t.questionToken||Si($t)&&Ust($t))?Dv(lt,524288)===hi:!1}function jg($t,lt){let hi=$t.flags&256,Di=Vt($t);hi&&($t.flags&=-257);let Qt,Cr=ud(lt);if(!(hi&&Xo(Cr))){if(lt.declaration&&!sp(lt.declaration)&&!dn(Cr,$t)){let jr=Uo(lt.declaration),Qn=qe($t,jr,Cr);Qt=tr.serializeReturnTypeForSignature(lt.declaration,jr,$t),Qn()}Qt||(Qt=nA($t,lt,Cr))}return!Qt&&!hi&&(Qt=me.createKeywordTypeNode(133)),Di(),Qt}function nA($t,lt,hi){let Di=$t.suppressReportInferenceFallback;$t.suppressReportInferenceFallback=!0;let Qt=Tv(lt),Cr=Qt?V0($t.mapper?Ehn(Qt,$t.mapper):Qt,$t):ii(hi,$t);return $t.suppressReportInferenceFallback=Di,Cr}function Sp($t,lt,hi=lt.enclosingDeclaration){let Di=!1,Qt=B0($t);if(wo($t)&&(p3(Qt)||cN(Qt.parent)||zi(Qt.parent)&&_P(Qt.parent.left)&&p3(Qt.parent.right)))return Di=!0,{introducesError:Di,node:$t};let Cr=Bpe($t),jr;if(vF(Qt))return jr=Uo(r0(Qt,!1,!1)),cW(jr,Qt,Cr,!1).accessibility!==0&&(Di=!0,lt.tracker.reportInaccessibleThisError()),{introducesError:Di,node:Qn($t)};if(jr=TI(Qt,Cr,!0,!0),lt.enclosingDeclaration&&!(jr&&jr.flags&262144)){jr=fn(jr);let yi=TI(Qt,Cr,!0,!0,lt.enclosingDeclaration);if(yi===it||yi===void 0&&jr!==void 0||yi&&jr&&!Et(fn(yi),jr))return yi!==it&<.tracker.reportInferenceFallback($t),Di=!0,{introducesError:Di,node:$t,sym:jr};jr=yi}if(jr)return jr.flags&1&&jr.valueDeclaration&&(HL(jr.valueDeclaration)||cS(jr.valueDeclaration))?{introducesError:Di,node:Qn($t)}:(!(jr.flags&262144)&&!HT($t)&&cW(jr,hi,Cr,!1).accessibility!==0?(lt.tracker.reportInferenceFallback($t),Di=!0):lt.tracker.trackSymbol(jr,hi,Cr),{introducesError:Di,node:Qn($t)});return{introducesError:Di,node:$t};function Qn(yi){if(yi===Qt){let Ti=Fp(jr),Us=jr.flags&262144?Qf(Ti,lt):me.cloneNode(yi);return Us.symbol=jr,v(lt,ti(Us,16777216),yi)}let Xn=_s(yi,Ti=>Qn(Ti),void 0);return v(lt,Xn,yi)}}function tC($t,lt,hi,Di){let Qt=hi?111551:788968,Cr=TI(lt,Qt,!0);if(!Cr)return;let jr=Cr.flags&2097152?YC(Cr):Cr;if(cW(Cr,$t.enclosingDeclaration,Qt,!1).accessibility===0)return Fd(jr,$t,Qt,Di)}function P0($t,lt){let hi=m($t,lt,!0);if(!hi)return!1;if(wo(lt)&&ky(lt)){phn(lt);let Di=sa(lt).resolvedSymbol;return!Di||!(!lt.isTypeOf&&!(Di.flags&788968)||!(B(lt.typeArguments)>=Ik(Ug(Di))))}if(nh(lt)){if(s2(lt))return!1;let Di=sa(lt).resolvedSymbol;if(!Di)return!1;if(Di.flags&262144){let Qt=Fp(Di);return!($t.mapper&&w9(Qt,$t.mapper)!==Qt)}if(GY(lt))return as(lt,hi)&&!vIn(lt)&&!!(Di.flags&788968)}if(xB(lt)&<.operator===158&<.type.kind===155){let Di=$t.enclosingDeclaration&&Ms($t.enclosingDeclaration);return!!ji(lt,Qt=>Qt===Di)}return!0}function Qb($t,lt,hi){let Di=m($t,lt);if(hi&&!kv(Di,Qt=>!!(Qt.flags&32768))&&P0($t,lt)){let Qt=tr.tryReuseExistingTypeNode($t,lt);if(Qt)return me.createUnionTypeNode([Qt,me.createKeywordTypeNode(157)])}return ii(Di,$t)}function H5($t,lt){var hi;let Di=fyn(me.createPropertyDeclaration,175,!0),Qt=fyn((Bn,go,sc,yc)=>me.createPropertySignature(Bn,go,sc,yc),174,!1),Cr=lt.enclosingDeclaration,jr=[],Qn=new Set,yi=[],Xn=lt;lt={...Xn,usedSymbolNames:new Set(Xn.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((hi=Xn.remappedSymbolReferences)==null?void 0:hi.entries()),tracker:void 0};let Ti={...Xn.tracker.inner,trackSymbol:(Bn,go,sc)=>{var yc,Yo;if((yc=lt.remappedSymbolNames)!=null&&yc.has(kg(Bn)))return!1;if(cW(Bn,go,sc,!1).accessibility===0){let sA=Bd(Bn,lt,sc);if(!(Bn.flags&4)){let Pu=sA[0],Zc=ms(Xn.enclosingDeclaration);jt(Pu.declarations,Rg=>ms(Rg)===Zc)&&EA(Pu)}}else if((Yo=Xn.tracker.inner)!=null&&Yo.trackSymbol)return Xn.tracker.inner.trackSymbol(Bn,go,sc);return!1}};lt.tracker=new SOt(lt,Ti,Xn.tracker.moduleResolverHost),Dh($t,(Bn,go)=>{let sc=Bc(go);yk(Bn,sc)});let Us=!lt.bundled,No=$t.get("export=");return No&&$t.size>1&&No.flags&2098688&&($t=qu(),$t.set("export=",No)),ta($t),nu(jr);function zo(Bn){return!!Bn&&Bn.kind===80}function za(Bn){return Ch(Bn)?Me(At(Bn.declarationList.declarations,Il),zo):Me([Il(Bn)],zo)}function La(Bn){let go=de(Bn,Cf),sc=Se(Bn,xh),yc=sc!==-1?Bn[sc]:void 0;if(yc&&go&&go.isExportEquals&&Ir(go.expression)&&Ir(yc.name)&&Vo(yc.name)===Vo(go.expression)&&yc.body&&_N(yc.body)){let Yo=Me(Bn,Pu=>!!(o_(Pu)&32)),Vg=yc.name,sA=yc.body;if(B(Yo)&&(yc=me.updateModuleDeclaration(yc,yc.modifiers,yc.name,sA=me.updateModuleBlock(sA,me.createNodeArray([...yc.body.statements,me.createExportDeclaration(void 0,!1,me.createNamedExports(At(er(Yo,Pu=>za(Pu)),Pu=>me.createExportSpecifier(!1,void 0,Pu))),void 0)]))),Bn=[...Bn.slice(0,sc),yc,...Bn.slice(sc+1)]),!de(Bn,Pu=>Pu!==yc&&t3(Pu,Vg))){jr=[];let Pu=!jt(sA.statements,Zc=>Ga(Zc,32)||Cf(Zc)||Gh(Zc));F(sA.statements,Zc=>{ou(Zc,Pu?32:0)}),Bn=[...Me(Bn,Zc=>Zc!==yc&&Zc!==go),...jr]}}return Bn}function ro(Bn){let go=Me(Bn,yc=>Gh(yc)&&!yc.moduleSpecifier&&!!yc.exportClause&&mv(yc.exportClause));B(go)>1&&(Bn=[...Me(Bn,Yo=>!Gh(Yo)||!!Yo.moduleSpecifier||!Yo.exportClause),me.createExportDeclaration(void 0,!1,me.createNamedExports(er(go,Yo=>Ma(Yo.exportClause,mv).elements)),void 0)]);let sc=Me(Bn,yc=>Gh(yc)&&!!yc.moduleSpecifier&&!!yc.exportClause&&mv(yc.exportClause));if(B(sc)>1){let yc=Yn(sc,Yo=>Zg(Yo.moduleSpecifier)?">"+Yo.moduleSpecifier.text:">");if(yc.length!==sc.length)for(let Yo of yc)Yo.length>1&&(Bn=[...Me(Bn,Vg=>!Yo.includes(Vg)),me.createExportDeclaration(void 0,!1,me.createNamedExports(er(Yo,Vg=>Ma(Vg.exportClause,mv).elements)),Yo[0].moduleSpecifier)])}return Bn}function _c(Bn){let go=Se(Bn,sc=>Gh(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&mv(sc.exportClause));if(go>=0){let sc=Bn[go],yc=Xt(sc.exportClause.elements,Yo=>{if(!Yo.propertyName&&Yo.name.kind!==11){let Vg=Yo.name,sA=po(Bn),Pu=Me(sA,Zc=>t3(Bn[Zc],Vg));if(B(Pu)&&ue(Pu,Zc=>jne(Bn[Zc]))){for(let Zc of Pu)Bn[Zc]=DA(Bn[Zc]);return}}return Yo});B(yc)?Bn[go]=me.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,me.updateNamedExports(sc.exportClause,yc),sc.moduleSpecifier,sc.attributes):LA(Bn,go)}return Bn}function nu(Bn){return Bn=La(Bn),Bn=ro(Bn),Bn=_c(Bn),Cr&&(ll(Cr)&&vl(Cr)||xh(Cr))&&(!jt(Bn,PT)||!Db(Bn)&&jt(Bn,t7))&&Bn.push(cEe(me)),Bn}function DA(Bn){let go=(o_(Bn)|32)&-129;return me.replaceModifiers(Bn,go)}function Li(Bn){let go=o_(Bn)&-33;return me.replaceModifiers(Bn,go)}function ta(Bn,go,sc){go||yi.push(new Map);let yc=0,Yo=Array.from(Bn.values());for(let Vg of Yo){if(yc++,kt(lt)&&yc+2{mu(Vg,!0,!!sc)}),yi.pop())}function mu(Bn,go,sc){Gd(Io(Bn));let yc=jA(Bn);if(Qn.has(kg(yc)))return;if(Qn.add(kg(yc)),!go||B(Bn.declarations)&&jt(Bn.declarations,Vg=>!!ji(Vg,sA=>sA===Cr))){let Vg=gSe(lt);lt.tracker.pushErrorFallbackNode(de(Bn.declarations,sA=>ms(sA)===lt.enclosingFile)),Jl(Bn,go,sc),lt.tracker.popErrorFallbackNode(),Vg()}}function Jl(Bn,go,sc,yc=Bn.escapedName){var Yo,Vg,sA,Pu,Zc,Rg,_m;let xf=Bc(yc),f0=yc==="default";if(go&&!(lt.flags&131072)&&WY(xf)&&!f0){lt.encounteredError=!0;return}let KI=f0&&!!(Bn.flags&-113||Bn.flags&16&&B(Gd(Io(Bn))))&&!(Bn.flags&2097152),gf=!KI&&!go&&WY(xf)&&!f0;(KI||gf)&&(go=!0);let pI=(go?0:32)|(f0&&!KI?2048:0),NI=Bn.flags&1536&&Bn.flags&7&&yc!=="export=",SS=NI&&ejt(Io(Bn),Bn);if((Bn.flags&8208||SS)&&EW(Io(Bn),Bn,yk(Bn,xf),pI),Bn.flags&524288&&mm(Bn,xf,pI),Bn.flags&98311&&yc!=="export="&&!(Bn.flags&4194304)&&!(Bn.flags&32)&&!(Bn.flags&8192)&&!SS)if(sc)LOe(Bn)&&(gf=!1,KI=!1);else{let Ph=Io(Bn),Ky=yk(Bn,xf);if(Ph.symbol&&Ph.symbol!==Bn&&Ph.symbol.flags&16&&jt(Ph.symbol.declarations,RF)&&((Yo=Ph.symbol.members)!=null&&Yo.size||(Vg=Ph.symbol.exports)!=null&&Vg.size))lt.remappedSymbolReferences||(lt.remappedSymbolReferences=new Map),lt.remappedSymbolReferences.set(kg(Ph.symbol),Bn),Jl(Ph.symbol,go,sc,yc),lt.remappedSymbolReferences.delete(kg(Ph.symbol));else if(!(Bn.flags&16)&&ejt(Ph,Bn))EW(Ph,Bn,Ky,pI);else{let k9=Bn.flags&2?kq(Bn)?2:1:(sA=Bn.parent)!=null&&sA.valueDeclaration&&ll((Pu=Bn.parent)==null?void 0:Pu.valueDeclaration)?2:void 0,vS=KI||!(Bn.flags&4)?Ky:POe(Ky,Bn),oG=Bn.declarations&&de(Bn.declarations,vW=>nc(vW));oG&&u_(oG.parent)&&oG.parent.declarations.length===1&&(oG=oG.parent.parent);let SW=(Zc=Bn.declarations)==null?void 0:Zc.find(jo);if(SW&&fo(SW.parent)&&Ir(SW.parent.right)&&((Rg=Ph.symbol)!=null&&Rg.valueDeclaration)&&ll(Ph.symbol.valueDeclaration)){let vW=Ky===SW.parent.right.escapedText?void 0:SW.parent.right;lt.approximateLength+=12+(((_m=vW?.escapedText)==null?void 0:_m.length)??0),ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vW,Ky)])),0),lt.tracker.trackSymbol(Ph.symbol,lt.enclosingDeclaration,111551)}else{let vW=v(lt,me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(vS,void 0,ea(lt,void 0,Ph,Bn))],k9)),oG);lt.approximateLength+=7+vS.length,ou(vW,vS!==Ky?pI&-33:pI),vS!==Ky&&!go&&(lt.approximateLength+=16+vS.length+Ky.length,ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vS,Ky)])),0),gf=!1,KI=!1)}}}if(Bn.flags&384&&zQ(Bn,xf,pI),Bn.flags&32&&(Bn.flags&4&&Bn.valueDeclaration&&fo(Bn.valueDeclaration.parent)&&vd(Bn.valueDeclaration.parent.right)?pyn(Bn,yk(Bn,xf),pI):q8t(Bn,yk(Bn,xf),pI)),(Bn.flags&1536&&(!NI||IZ(Bn))||SS)&&Q5(Bn,xf,pI),Bn.flags&64&&!(Bn.flags&32)&&Cm(Bn,xf,pI),Bn.flags&2097152&&pyn(Bn,yk(Bn,xf),pI),Bn.flags&4&&Bn.escapedName==="export="&&LOe(Bn),Bn.flags&8388608&&Bn.declarations)for(let Ph of Bn.declarations){let Ky=F0(Ph,Ph.moduleSpecifier);if(!Ky)continue;let k9=Ph.isTypeOnly,vS=yh(Ky,lt);lt.approximateLength+=17+vS.length,ou(me.createExportDeclaration(void 0,k9,void 0,me.createStringLiteral(vS)),0)}if(KI){let Ph=yk(Bn,xf);lt.approximateLength+=16+Ph.length,ou(me.createExportAssignment(void 0,!1,me.createIdentifier(Ph)),0)}else if(gf){let Ph=yk(Bn,xf);lt.approximateLength+=22+xf.length+Ph.length,ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Ph,xf)])),0)}}function EA(Bn){if(jt(Bn.declarations,HL))return;pe.assertIsDefined(yi[yi.length-1]),POe(Bc(Bn.escapedName),Bn);let go=!!(Bn.flags&2097152)&&!jt(Bn.declarations,sc=>!!ji(sc,Gh)||tk(sc)||km(sc)&&!ZF(sc.moduleReference));yi[go?0:yi.length-1].set(kg(Bn),Bn)}function Ad(Bn){return ll(Bn)&&(vl(Bn)||Zu(Bn))||s_(Bn)&&!vB(Bn)}function ou(Bn,go){if(LB(Bn)){let sc=o_(Bn),yc=0,Yo=lt.enclosingDeclaration&&(iS(lt.enclosingDeclaration)?ms(lt.enclosingDeclaration):lt.enclosingDeclaration);go&32&&Yo&&(Ad(Yo)||xh(Yo))&&jne(Bn)&&(yc|=32),Us&&!(yc&32)&&(!Yo||!(Yo.flags&33554432))&&(V3(Bn)||Ch(Bn)||ih(Bn)||pm(Bn)||xh(Bn))&&(yc|=128),go&2048&&(pm(Bn)||g_(Bn)||ih(Bn))&&(yc|=2048),yc&&(Bn=me.replaceModifiers(Bn,yc|sc)),lt.approximateLength+=VOe(yc|sc)}jr.push(Bn)}function mm(Bn,go,sc){var yc;let Yo=Tfn(Bn),Vg=fa(Bn).typeParameters,sA=At(Vg,KI=>UI(KI,lt)),Pu=(yc=Bn.declarations)==null?void 0:yc.find(iS),Zc=pJ(Pu?Pu.comment||Pu.parent.comment:void 0),Rg=Vt(lt);lt.flags|=8388608;let _m=lt.enclosingDeclaration;lt.enclosingDeclaration=Pu;let xf=Pu&&Pu.typeExpression&&W3(Pu.typeExpression)&&tr.tryReuseExistingTypeNode(lt,Pu.typeExpression.type)||ii(Yo,lt),f0=yk(Bn,go);lt.approximateLength+=8+(Zc?.length??0)+f0.length,ou(kB(me.createTypeAliasDeclaration(void 0,f0,sA,xf),Zc?[{kind:3,text:`* * `+Zc.replace(/\n/g,` * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Rg(),lt.enclosingDeclaration=_m}function Cm(Bn,go,sc){let yc=yk(Bn,go);lt.approximateLength+=14+yc.length;let Yo=wv(Bn),Vg=Ug(Bn),sA=At(Vg,gf=>UI(gf,lt)),Pu=Kw(Yo),Zc=B(Pu)?Kg(Pu):void 0,Rg=W_(Gd(Yo),!1,Zc),_m=z8t(0,Yo,Zc,180),xf=z8t(1,Yo,Zc,181),f0=uyn(Yo,Zc),KI=B(Pu)?[me.createHeritageClause(96,Xt(Pu,gf=>q8t(gf,111551)))]:void 0;ou(me.createInterfaceDeclaration(void 0,yc,sA,KI,[...f0,...xf,..._m,...Rg]),sc)}function W_(Bn,go,sc,yc){let Yo=[],Vg=0;for(let sA of Bn){if(Vg++,kt(lt)&&Vg+2Jse(yc)&&Uh(yc.escapedName,99))}function IZ(Bn){return ue(Uy(Bn),go=>!(Hb(Zh(go))&111551))}function Q5(Bn,go,sc){let yc=Uy(Bn),Yo=Y5(lt),Vg=Ju(yc,Zc=>Zc.parent&&Zc.parent===Bn||Yo?"real":"merged"),sA=Vg.get("real")||E,Pu=Vg.get("merged")||E;if(B(sA)||Yo){let Zc;if(Yo){let Rg=lt.flags;lt.flags|=514,Zc=D(Bn,lt,-1),lt.flags=Rg}else{let Rg=yk(Bn,go);Zc=me.createIdentifier(Rg),lt.approximateLength+=Rg.length}_k(sA,Zc,sc,!!(Bn.flags&67108880))}if(B(Pu)){let Zc=ms(lt.enclosingDeclaration),Rg=yk(Bn,go),_m=me.createModuleBlock([me.createExportDeclaration(void 0,!1,me.createNamedExports(Xt(Me(Pu,xf=>xf.escapedName!=="export="),xf=>{var f0,KI;let gf=Bc(xf.escapedName),pI=yk(xf,gf),NI=xf.declarations&&Mb(xf);if(Zc&&(NI?Zc!==ms(NI):!jt(xf.declarations,Ky=>ms(Ky)===Zc))){(KI=(f0=lt.tracker)==null?void 0:f0.reportNonlocalAugmentation)==null||KI.call(f0,Zc,Bn,xf);return}let SS=NI&&b5(NI,!0);EA(SS||xf);let Ph=SS?yk(SS,Bc(SS.escapedName)):pI;return me.createExportSpecifier(!1,gf===Ph?void 0:Ph,gf)})))]);ou(me.createModuleDeclaration(void 0,me.createIdentifier(Rg),_m,32),0)}}function zQ(Bn,go,sc){let yc=yk(Bn,go);lt.approximateLength+=9+yc.length;let Yo=[],Vg=Me(Gd(Io(Bn)),Pu=>!!(Pu.flags&8)),sA=0;for(let Pu of Vg){if(sA++,kt(lt)&&sA+2!B(NI.declarations)||jt(NI.declarations,SS=>ms(SS)===ms(lt.enclosingDeclaration))||Vg?"local":"remote").get("local")||E,Zc=H3.createModuleDeclaration(void 0,go,me.createModuleBlock([]),Yo);XA(Zc,Cr),Zc.locals=qu(Bn),Zc.symbol=Bn[0].parent;let Rg=jr;jr=[];let _m=Us;Us=!1;let xf={...lt,enclosingDeclaration:Zc},f0=lt;lt=xf,ta(qu(Pu),yc,!0),lt=f0,Us=_m;let KI=jr;jr=Rg;let gf=At(KI,NI=>Cf(NI)&&!NI.isExportEquals&&Ir(NI.expression)?me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,NI.expression,me.createIdentifier("default"))])):NI),pI=ue(gf,NI=>Ga(NI,32))?At(gf,Li):gf;Zc=me.updateModuleDeclaration(Zc,Zc.modifiers,Zc.name,me.createModuleBlock(pI)),ou(Zc,sc)}else Vg&&(lt.approximateLength+=14,ou(me.createModuleDeclaration(void 0,go,me.createModuleBlock([]),Yo),sc))}function Jse(Bn){return!!(Bn.flags&2887656)||!(Bn.flags&4194304||Bn.escapedName==="prototype"||Bn.valueDeclaration&&cg(Bn.valueDeclaration)&&xa(Bn.valueDeclaration.parent))}function GOe(Bn){let go=Xt(Bn,sc=>{let yc=lt.enclosingDeclaration;lt.enclosingDeclaration=sc;let Yo=sc.expression;if(Od(Yo)){if(Ir(Yo)&&Vo(Yo)==="")return Vg(void 0);let sA;if({introducesError:sA,node:Yo}=Sp(Yo,lt),sA)return Vg(void 0)}return Vg(me.createExpressionWithTypeArguments(Yo,At(sc.typeArguments,sA=>tr.tryReuseExistingTypeNode(lt,sA)||ii(m(lt,sA),lt))));function Vg(sA){return lt.enclosingDeclaration=yc,sA}});if(go.length===Bn.length)return go}function U8t(Bn,go,sc){var yc,Yo;lt.approximateLength+=9+go.length;let Vg=(yc=Bn.declarations)==null?void 0:yc.find(xa),sA=lt.enclosingDeclaration;lt.enclosingDeclaration=Vg||sA;let Pu=Ug(Bn),Zc=At(Pu,x9=>UI(x9,lt));F(Pu,x9=>lt.approximateLength+=nf(x9.symbol).length);let Rg=T1(wv(Bn)),_m=Kw(Rg),xf=Vg&&jJ(Vg),f0=xf&&GOe(xf)||Xt(Bse(Rg),ejs),KI=Io(Bn),gf=!!((Yo=KI.symbol)!=null&&Yo.valueDeclaration)&&xa(KI.symbol.valueDeclaration),pI=gf?nZ(KI):hr;lt.approximateLength+=(B(_m)?8:0)+(B(f0)?11:0);let NI=[...B(_m)?[me.createHeritageClause(96,At(_m,x9=>$8s(x9,pI,go)))]:[],...B(f0)?[me.createHeritageClause(119,f0)]:[]],SS=LUs(Rg,_m,Gd(Rg)),Ph=Me(SS,x9=>!xOe(x9)),Ky=jt(SS,xOe),k9=Ky?Y5(lt)?W_(Me(SS,xOe),!0,_m[0],!1):[me.createPropertyDeclaration(void 0,me.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:E;Ky&&!Y5(lt)&&(lt.approximateLength+=9);let vS=W_(Ph,!0,_m[0],!1),oG=W_(Me(Gd(KI),x9=>!(x9.flags&4194304)&&x9.escapedName!=="prototype"&&!Jse(x9)),!0,pI,!0),SW=!gf&&!!Bn.valueDeclaration&&wo(Bn.valueDeclaration)&&!jt(tg(KI,1));SW&&(lt.approximateLength+=21);let vW=SW?[me.createConstructorDeclaration(me.createModifiersFromModifierFlags(2),[],void 0)]:z8t(1,KI,pI,177),tjs=uyn(Rg,_m[0]);lt.enclosingDeclaration=sA,ou(v(lt,me.createClassDeclaration(void 0,go,Zc,NI,[...tjs,...oG,...vW,...vS,...k9]),Bn.declarations&&Me(Bn.declarations,x9=>pm(x9)||vd(x9))[0]),sc)}function K8t(Bn){return X(Bn,go=>{if(uy(go)||R0(go))return HD(go.propertyName||go.name);if(fo(go)||Cf(go)){let sc=Cf(go)?go.expression:go.right;if(jo(sc))return Vo(sc.name)}if(d9(go)){let sc=Il(go);if(sc&&Ir(sc))return Vo(sc)}})}function ayn(Bn,go,sc){var yc,Yo,Vg,sA,Pu;let Zc=Mb(Bn);if(!Zc)return pe.fail();let Rg=jA(b5(Zc,!0));if(!Rg)return;let _m=NY(Rg)&&K8t(Bn.declarations)||Bc(Rg.escapedName);_m==="export="&&Tt&&(_m="default");let xf=yk(Rg,_m);switch(EA(Rg),Zc.kind){case 209:if(((Yo=(yc=Zc.parent)==null?void 0:yc.parent)==null?void 0:Yo.kind)===261){let gf=yh(Rg.parent||Rg,lt),{propertyName:pI}=Zc,NI=pI&&Ir(pI)?Vo(pI):void 0;lt.approximateLength+=24+go.length+gf.length+(NI?.length??0),ou(me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,NI?me.createIdentifier(NI):void 0,me.createIdentifier(go))])),me.createStringLiteral(gf),void 0),0);break}pe.failBadSyntaxKind(((Vg=Zc.parent)==null?void 0:Vg.parent)||Zc,"Unhandled binding element grandparent kind in declaration serialization");break;case 305:((Pu=(sA=Zc.parent)==null?void 0:sA.parent)==null?void 0:Pu.kind)===227&&cfe(Bc(Bn.escapedName),xf);break;case 261:if(jo(Zc.initializer)){let gf=Zc.initializer,pI=me.createUniqueName(go),NI=yh(Rg.parent||Rg,lt);lt.approximateLength+=22+NI.length+Vo(pI).length,ou(me.createImportEqualsDeclaration(void 0,!1,pI,me.createExternalModuleReference(me.createStringLiteral(NI))),0),lt.approximateLength+=12+go.length+Vo(pI).length+Vo(gf.name).length,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(go),me.createQualifiedName(pI,gf.name)),sc);break}case 272:if(Rg.escapedName==="export="&&jt(Rg.declarations,gf=>ll(gf)&&Zu(gf))){FOe(Bn);break}let f0=!(Rg.flags&512)&&!nc(Zc);lt.approximateLength+=11+go.length+Bc(Rg.escapedName).length,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(go),f0?ch(Rg,lt,-1,!1):me.createExternalModuleReference(me.createStringLiteral(yh(Rg,lt)))),f0?sc:0);break;case 271:ou(me.createNamespaceExportDeclaration(Vo(Zc.name)),0);break;case 274:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.moduleSpecifier,NI=Mf(Zc.parent)?Zc.parent.attributes:void 0,SS=SN(Zc.parent);lt.approximateLength+=14+go.length+3+(SS?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(SS?156:void 0,me.createIdentifier(go),void 0),pI,NI),0);break}case 275:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.parent.moduleSpecifier,NI=SN(Zc.parent.parent);lt.approximateLength+=19+go.length+3+(NI?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(NI?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(go))),pI,Zc.parent.attributes),0);break}case 281:lt.approximateLength+=19+go.length+3,ou(me.createExportDeclaration(void 0,!1,me.createNamespaceExport(me.createIdentifier(go)),me.createStringLiteral(yh(Rg,lt))),0);break;case 277:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.parent.parent.moduleSpecifier,NI=SN(Zc.parent.parent.parent);lt.approximateLength+=19+go.length+3+(NI?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(NI?156:void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,go!==_m?me.createIdentifier(_m):void 0,me.createIdentifier(go))])),pI,Zc.parent.parent.parent.attributes),0);break}case 282:let KI=Zc.parent.parent.moduleSpecifier;if(KI){let gf=Zc.propertyName;gf&&lv(gf)&&(_m="default")}cfe(Bc(Bn.escapedName),KI?_m:xf,KI&&mA(KI)?me.createStringLiteral(KI.text):void 0);break;case 278:FOe(Bn);break;case 227:case 212:case 213:Bn.escapedName==="default"||Bn.escapedName==="export="?FOe(Bn):cfe(go,xf);break;default:return pe.failBadSyntaxKind(Zc,"Unhandled alias declaration kind in symbol serializer!")}}function cfe(Bn,go,sc){lt.approximateLength+=16+Bn.length+(Bn!==go?go.length:0),ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Bn!==go?go:void 0,Bn)]),sc),0)}function FOe(Bn){var go;if(Bn.flags&4194304)return!1;let sc=Bc(Bn.escapedName),yc=sc==="export=",Vg=yc||sc==="default",sA=Bn.declarations&&Mb(Bn),Pu=sA&&b5(sA,!0);if(Pu&&B(Pu.declarations)&&jt(Pu.declarations,Zc=>ms(Zc)===ms(Cr))){let Zc=sA&&(Cf(sA)||fo(sA)?hne(sA):yZe(sA)),Rg=Zc&&Od(Zc)?qUs(Zc):void 0,_m=Rg&&TI(Rg,-1,!0,!0,Cr);(_m||Pu)&&EA(_m||Pu);let xf=lt.tracker.disableTrackSymbol;if(lt.tracker.disableTrackSymbol=!0,Vg)lt.approximateLength+=10,jr.push(me.createExportAssignment(void 0,yc,Gv(Pu,lt,-1)));else if(Rg===Zc&&Rg)cfe(sc,Vo(Rg));else if(Zc&&vd(Zc))cfe(sc,yk(Pu,nf(Pu)));else{let f0=LOe(sc,Bn);lt.approximateLength+=f0.length+10,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(f0),ch(Pu,lt,-1,!1)),0),cfe(sc,f0)}return lt.tracker.disableTrackSymbol=xf,!0}else{let Zc=LOe(sc,Bn),Rg=D1(Io(jA(Bn)));if(j8t(Rg,Bn))EW(Rg,Bn,Zc,Vg?0:32);else{let _m=((go=lt.enclosingDeclaration)==null?void 0:go.kind)===268&&(!(Bn.flags&98304)||Bn.flags&65536)?1:2;lt.approximateLength+=Zc.length+5;let xf=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zc,void 0,ea(lt,void 0,Rg,Bn))],_m));ou(xf,Pu&&Pu.flags&4&&Pu.escapedName==="export="?128:sc===Zc?32:0)}return Vg?(lt.approximateLength+=Zc.length+10,jr.push(me.createExportAssignment(void 0,yc,me.createIdentifier(Zc))),!0):sc!==Zc?(cfe(sc,Zc),!0):!1}}function j8t(Bn,go){var sc;let yc=ms(lt.enclosingDeclaration);return la(Bn)&48&&!jt((sc=Bn.symbol)==null?void 0:sc.declarations,uc)&&!B(A0(Bn))&&!l2e(Bn)&&!!(B(Me(Gd(Bn),Jse))||B(tg(Bn,0)))&&!B(tg(Bn,1))&&!zn(go,Cr)&&!(Bn.symbol&&jt(Bn.symbol.declarations,Yo=>ms(Yo)!==yc))&&!jt(Gd(Bn),Yo=>p2e(Yo.escapedName))&&!jt(Gd(Bn),Yo=>jt(Yo.declarations,Vg=>ms(Vg)!==yc))&&ue(Gd(Bn),Yo=>Uh(nf(Yo),Ze)?Yo.flags&98304?AR(Yo)===b9(Yo):!0:!1)}function cyn(Bn,go,sc){return function(Yo,Vg,sA){var Pu,Zc,Rg,_m,xf,f0;let KI=u2(Yo),gf=!!(KI&2)&&!Y5(lt);if(Vg&&Yo.flags&2887656)return[];if(Yo.flags&4194304||Yo.escapedName==="constructor"||sA&&Gg(sA,Yo.escapedName)&&yR(Gg(sA,Yo.escapedName))===yR(Yo)&&(Yo.flags&16777216)===(Gg(sA,Yo.escapedName).flags&16777216)&&rG(Io(Yo),Pi(sA,Yo.escapedName)))return[];let pI=KI&-1025|(Vg?256:0),NI=ofe(Yo,lt),SS=(Pu=Yo.declarations)==null?void 0:Pu.find(Hp(pi,yB,nc,ss,fo,jo));if(Yo.flags&98304&&sc){let Ph=[];if(Yo.flags&65536){let Ky=Yo.declarations&&F(Yo.declarations,oG=>{if(oG.kind===179)return oG;if(Zl(oG)&&f3(oG))return F(oG.arguments[2].properties,SW=>{let vW=Il(SW);if(vW&&Ir(vW)&&Vo(vW)==="set")return SW})});pe.assert(!!Ky);let k9=kd(Ky)?yS(Ky).parameters[0]:void 0,vS=(Zc=Yo.declarations)==null?void 0:Zc.find(cv);lt.approximateLength+=ZOe(pI)+7+(k9?nf(k9).length:5)+(gf?0:2),Ph.push(v(lt,me.createSetAccessorDeclaration(me.createModifiersFromModifierFlags(pI),NI,[me.createParameterDeclaration(void 0,void 0,k9?qc(k9,xs(k9),lt):"value",void 0,gf?void 0:ea(lt,vS,b9(Yo),Yo))],void 0),vS??SS))}if(Yo.flags&32768){let Ky=(Rg=Yo.declarations)==null?void 0:Rg.find(bB);lt.approximateLength+=ZOe(pI)+8+(gf?0:2),Ph.push(v(lt,me.createGetAccessorDeclaration(me.createModifiersFromModifierFlags(pI),NI,[],gf?void 0:ea(lt,Ky,Io(Yo),Yo),void 0),Ky??SS))}return Ph}else if(Yo.flags&98311){let Ph=(yR(Yo)?8:0)|pI;return lt.approximateLength+=2+(gf?0:2)+ZOe(Ph),v(lt,Bn(me.createModifiersFromModifierFlags(Ph),NI,Yo.flags&16777216?me.createToken(58):void 0,gf?void 0:ea(lt,(_m=Yo.declarations)==null?void 0:_m.find(Dg),b9(Yo),Yo),void 0),((xf=Yo.declarations)==null?void 0:xf.find(Hp(pi,nc)))||SS)}if(Yo.flags&8208){let Ph=Io(Yo),Ky=tg(Ph,0);if(gf){let vS=(yR(Yo)?8:0)|pI;return lt.approximateLength+=1+ZOe(vS),v(lt,Bn(me.createModifiersFromModifierFlags(vS),NI,Yo.flags&16777216?me.createToken(58):void 0,void 0,void 0),((f0=Yo.declarations)==null?void 0:f0.find(kd))||Ky[0]&&Ky[0].declaration||Yo.declarations&&Yo.declarations[0])}let k9=[];for(let vS of Ky){lt.approximateLength+=1;let oG=ka(vS,go,lt,{name:NI,questionToken:Yo.flags&16777216?me.createToken(58):void 0,modifiers:pI?me.createModifiersFromModifierFlags(pI):void 0}),SW=vS.declaration&&lne(vS.declaration.parent)?vS.declaration.parent:vS.declaration;k9.push(v(lt,oG,SW))}return k9}return pe.fail(`Unhandled class member kind! ${Yo.__debugFlags||Yo.flags}`)}}function ZOe(Bn){let go=0;return Bn&32&&(go+=7),Bn&128&&(go+=8),Bn&2048&&(go+=8),Bn&4096&&(go+=6),Bn&1&&(go+=7),Bn&2&&(go+=8),Bn&4&&(go+=10),Bn&64&&(go+=9),Bn&256&&(go+=7),Bn&16&&(go+=9),Bn&8&&(go+=9),Bn&512&&(go+=9),Bn&1024&&(go+=6),Bn&8192&&(go+=3),Bn&16384&&(go+=4),go}function lyn(Bn,go){return Qt(Bn,!1,go)}function z8t(Bn,go,sc,yc){let Yo=tg(go,Bn);if(Bn===1){if(!sc&&ue(Yo,Pu=>B(Pu.parameters)===0))return[];if(sc){let Pu=tg(sc,1);if(!B(Pu)&&ue(Yo,Zc=>B(Zc.parameters)===0))return[];if(Pu.length===Yo.length){let Zc=!1;for(let Rg=0;Rgii(Yo,lt)),yc=Gv(Bn.target.symbol,lt,788968)):Bn.symbol&&Spe(Bn.symbol,Cr,go)&&(yc=Gv(Bn.symbol,lt,788968)),yc)return me.createExpressionWithTypeArguments(yc,sc)}function ejs(Bn){let go=q8t(Bn,788968);if(go)return go;if(Bn.symbol)return me.createExpressionWithTypeArguments(Gv(Bn.symbol,lt,788968),void 0)}function LOe(Bn,go){var sc,yc;let Yo=go?kg(go):void 0;if(Yo&<.remappedSymbolNames.has(Yo))return lt.remappedSymbolNames.get(Yo);go&&(Bn=gyn(go,Bn));let Vg=0,sA=Bn;for(;(sc=lt.usedSymbolNames)!=null&&sc.has(Bn);)Vg++,Bn=`${sA}_${Vg}`;return(yc=lt.usedSymbolNames)==null||yc.add(Bn),Yo&<.remappedSymbolNames.set(Yo,Bn),Bn}function gyn(Bn,go){if(go==="default"||go==="__class"||go==="__function"){let sc=Vt(lt);lt.flags|=16777216;let yc=T5(Bn,lt);sc(),go=yc.length>0&&ine(yc.charCodeAt(0))?l2(yc):yc}return go==="default"?go="_default":go==="export="&&(go="_exports"),go=Uh(go,Ze)&&!WY(go)?go:"_"+go.replace(/[^a-z0-9]/gi,"_"),go}function yk(Bn,go){let sc=kg(Bn);return lt.remappedSymbolNames.has(sc)?lt.remappedSymbolNames.get(sc):(go=gyn(Bn,go),lt.remappedSymbolNames.set(sc,go),go)}}function Y5($t){return $t.maxExpansionDepth!==-1}function xOe($t){return!!$t.valueDeclaration&&rh($t.valueDeclaration)&&p($t.valueDeclaration.name)}function Mat($t){if($t.valueDeclaration&&rh($t.valueDeclaration)&&p($t.valueDeclaration.name))return me.cloneNode($t.valueDeclaration.name)}}function Sse(u){var m;let v=la(u)&4?u.target.symbol:u.symbol;return yA(u)||!!((m=v?.declarations)!=null&&m.some(D=>s.isSourceFileDefaultLibrary(ms(D))))}function gk(u,m,v=16384,D){return D?P(D).getText():dP(P);function P(Y){let oe=FQ(v)|70221824|512,Be=Dt.typePredicateToTypePredicateNode(u,m,oe),Oe=gQ(),He=m&&ms(m);return Oe.writeNode(4,Be,He,Y),Y}}function u2e(u,m){let v=[],D=0;for(let P=0;PIl(oe)?oe:void 0),Y=P&&Il(P);if(P&&Y){if(Zl(P)&&f3(P))return nf(u);if(Un(Y)&&!(iI(u)&4096)){let oe=fa(u).nameType;if(oe&&oe.flags&384){let Be=Tpe(u,m);if(Be!==void 0)return Be}}return Wd(Y)}if(P||(P=u.declarations[0]),P.parent&&P.parent.kind===261)return Wd(P.parent.name);switch(P.kind){case 232:case 219:case 220:return m&&!m.encounteredError&&!(m.flags&131072)&&(m.encounteredError=!0),P.kind===232?"(Anonymous class)":"(Anonymous function)"}}let D=Tpe(u,m);return D!==void 0?D:nf(u)}function Ak(u){if(u){let v=sa(u);return v.isVisible===void 0&&(v.isVisible=!!m()),v.isVisible}return!1;function m(){switch(u.kind){case 339:case 347:case 341:return!!(u.parent&&u.parent.parent&&u.parent.parent.parent&&ll(u.parent.parent.parent));case 209:return Ak(u.parent.parent);case 261:if(Nu(u.name)&&!u.name.elements.length)return!1;case 268:case 264:case 265:case 266:case 263:case 267:case 272:if(_F(u))return!0;let v=Tn(u);return!(Oat(u)&32)&&!(u.kind!==272&&v.kind!==308&&v.flags&33554432)?fc(v):Ak(v);case 173:case 172:case 178:case 179:case 175:case 174:if(Gb(u,6))return!1;case 177:case 181:case 180:case 182:case 170:case 269:case 185:case 186:case 188:case 184:case 189:case 190:case 193:case 194:case 197:case 203:return Ak(u.parent);case 274:case 275:case 277:return!1;case 169:case 308:case 271:return!0;case 278:return!1;default:return!1}}}function vse(u,m){let v;u.kind!==11&&u.parent&&u.parent.kind===278?v=An(u,u,2998271,void 0,!1):u.parent.kind===282&&(v=cq(u.parent,2998271));let D,P;return v&&(P=new Set,P.add(kg(v)),Y(v.declarations)),D;function Y(oe){F(oe,Be=>{let Oe=Sv(Be)||Be;if(m?sa(Be).isVisible=!0:(D=D||[],Qi(D,Oe)),d3(Be)){let He=Be.moduleReference,qe=B0(He),Vt=An(Be,qe.escapedText,901119,void 0,!1);Vt&&P&&Ar(P,kg(Vt))&&Y(Vt.declarations)}})}}function VN(u,m){let v=rt(u,m);if(v>=0){let{length:D}=Mx;for(let P=v;P=a9;v--){if(Kt(Mx[v],WU[v]))return-1;if(Mx[v]===u&&WU[v]===m)return v}return-1}function Kt(u,m){switch(m){case 0:return!!fa(u).type;case 2:return!!fa(u).declaredType;case 1:return!!u.resolvedBaseConstructorType;case 3:return!!u.resolvedReturnType;case 4:return!!u.immediateBaseConstraint;case 5:return!!u.resolvedTypeArguments;case 6:return!!u.baseTypesResolved;case 7:return!!fa(u).writeType;case 8:return sa(u).parameterInitializerContainsUndefined!==void 0}return pe.assertNever(m)}function xr(){return Mx.pop(),WU.pop(),a5.pop()}function Tn(u){return ji(Rw(u),m=>{switch(m.kind){case 261:case 262:case 277:case 276:case 275:case 274:return!1;default:return!0}}).parent}function Ai(u){let m=Fp($m(u));return m.typeParameters?iZ(m,At(m.typeParameters,v=>hr)):m}function Pi(u,m){let v=Gg(u,m);return v?Io(v):void 0}function Ba(u,m){var v;let D;return Pi(u,m)||(D=(v=vq(u,m))==null?void 0:v.type)&&Z0(D,!0,!0)}function Xo(u){return u&&(u.flags&1)!==0}function uo(u){return u===nn||!!(u.flags&1&&u.aliasSymbol)}function Cc(u,m){if(m!==0)return _q(u,!1,m);let v=Uo(u);return v&&fa(v).type||_q(u,!1,m)}function Tl(u,m,v){if(u=nm(u,Oe=>!(Oe.flags&98304)),u.flags&131072)return Xg;if(u.flags&1048576)return Yf(u,Oe=>Tl(Oe,m,v));let D=Ha(At(m,sZ)),P=[],Y=[];for(let Oe of Gd(u)){let He=Bq(Oe,8576);!dg(He,D)&&!(u2(Oe)&6)&&lot(Oe)?P.push(Oe):Y.push(He)}if(CK(u)||_K(D)){if(Y.length&&(D=Ha([D,...Y])),D.flags&131072)return u;let Oe=W3s();return Oe?kse(Oe,[u,D]):nn}let oe=qu();for(let Oe of P)oe.set(Oe.escapedName,fUt(Oe,!1));let Be=Hf(v,oe,E,E,A0(u));return Be.objectFlags|=4194304,Be}function bp(u){return!!(u.flags&465829888)&&ah(L_(u)||cn,32768)}function ep(u){let m=kv(u,bp)?Yf(u,v=>v.flags&465829888?WN(v):v):u;return Dv(m,524288)}function zA(u,m){let v=Bv(u);return v?dZ(v,m):m}function Bv(u){let m=CS(u);if(m&&UJ(m)&&m.flowNode){let v=C9(u);if(v){let D=gn(H3.createStringLiteral(v),u),P=D_(m)?m:H3.createParenthesizedExpression(m),Y=gn(H3.createElementAccessExpression(P,D),u);return XA(D,Y),XA(Y,u),P!==m&&XA(P,Y),Y.flowNode=m.flowNode,Y}}}function CS(u){let m=u.parent.parent;switch(m.kind){case 209:case 304:return Bv(m);case 210:return Bv(u.parent);case 261:return m.initializer;case 227:return m.right}}function C9(u){let m=u.parent;return u.kind===209&&m.kind===207?_9(u.propertyName||u.name):u.kind===304||u.kind===305?_9(u.name):""+m.elements.indexOf(u)}function _9(u){let m=sZ(u);return m.flags&384?""+m.value:void 0}function Kx(u){let m=u.dotDotDotToken?32:0,v=Cc(u.parent.parent,m);return v&&uW(u,v,!1)}function uW(u,m,v){if(Xo(m))return m;let D=u.parent;ot&&u.flags&33554432&&HL(u)?m=gZ(m):ot&&D.parent.initializer&&!hR(fmn(D.parent.initializer),65536)&&(m=Dv(m,524288));let P=32|(v||Gq(u)?16:0),Y;if(D.kind===207)if(u.dotDotDotToken){if(m=JB(m),m.flags&2||!tOe(m))return Sr(u,Z.Rest_types_may_only_be_created_from_object_types),nn;let oe=[];for(let Be of D.elements)Be.dotDotDotToken||oe.push(Be.propertyName||Be.name);Y=Tl(m,oe,u.symbol)}else{let oe=u.propertyName||u.name,Be=sZ(oe),Oe=R1(m,Be,P,oe);Y=zA(u,Oe)}else{let oe=N9(65|(u.dotDotDotToken?0:128),m,Bt,D),Be=D.elements.indexOf(u);if(u.dotDotDotToken){let Oe=Yf(m,He=>He.flags&58982400?WN(He):He);Y=RE(Oe,yA)?Yf(Oe,He=>Ope(He,Be)):d0(oe)}else if(T9(m)){let Oe=fR(Be),He=pW(m,Oe,P,u.name)||nn;Y=zA(u,He)}else Y=oe}return u.initializer?kh(ai(u))?ot&&!hR(zpe(u,0),16777216)?ep(Y):Y:u8t(u,Ha([ep(Y),zpe(u,0)],2)):Y}function nd(u){let m=eN(u);if(m)return nl(m)}function Fm(u){let m=QA(u,!0);return m.kind===106||m.kind===80&&L0(m)===dt}function y9(u){let m=QA(u,!0);return m.kind===210&&m.elements.length===0}function Z0(u,m=!1,v=!0){return ot&&v?mW(u,m):u}function _q(u,m,v){if(nc(u)&&u.parent.parent.kind===250){let oe=ON(DKt(Ol(u.parent.parent.expression,v)));return oe.flags&4456448?KIn(oe):$r}if(nc(u)&&u.parent.parent.kind===251){let oe=u.parent.parent;return BOe(oe)||hr}if(Nu(u.parent))return Kx(u);let D=pi(u)&&!Nw(u)||ss(u)||HPt(u),P=m&&RB(u),Y=AW(u);if(Yre(u))return Y?Xo(Y)||Y===cn?Y:nn:Ke?cn:hr;if(Y)return Z0(Y,D,P);if((Rt||wo(u))&&nc(u)&&!Nu(u.name)&&!(Oat(u)&32)&&!(u.flags&33554432)){if(!(jQ(u)&6)&&(!u.initializer||Fm(u.initializer)))return En;if(u.initializer&&y9(u.initializer))return OC}if(Si(u)){if(!u.symbol)return;let oe=u.parent;if(oe.kind===179&&Tse(oe)){let He=Cp(Uo(u.parent),178);if(He){let qe=yS(He),Vt=Q8t(oe);return Vt&&u===Vt?(pe.assert(!Vt.type),Io(qe.thisParameter)):ud(qe)}}let Be=u3s(oe,u);if(Be)return Be;let Oe=u.symbol.escapedName==="this"?hKt(oe):Xmn(u);if(Oe)return Z0(Oe,!1,P)}if(l1(u)&&u.initializer){if(wo(u)&&!Si(u)){let Be=Ii(u,Uo(u),E7(u));if(Be)return Be}let oe=u8t(u,zpe(u,v));return Z0(oe,D,P)}if(pi(u)&&(Rt||wo(u)))if(zh(u)){let oe=Me(u.parent.members,fl),Be=oe.length?Ce(u.symbol,oe):o_(u)&128?_ot(u.symbol):void 0;return Be&&Z0(Be,!0,P)}else{let oe=zY(u.parent),Be=oe?Pe(u.symbol,oe):o_(u)&128?_ot(u.symbol):void 0;return Be&&Z0(Be,!0,P)}if(EN(u))return tn;if(Nu(u.name))return Rpe(u.name,!1,!0)}function jx(u){if(u.valueDeclaration&&fo(u.valueDeclaration)){let m=fa(u);return m.isConstructorDeclaredProperty===void 0&&(m.isConstructorDeclaredProperty=!1,m.isConstructorDeclaredProperty=!!vo(u)&&ue(u.declarations,v=>fo(v)&&Qot(v)&&(v.left.kind!==213||d1(v.left.argumentExpression))&&!Jo(void 0,v,u,v))),m.isConstructorDeclaredProperty}return!1}function dk(u){let m=u.valueDeclaration;return m&&pi(m)&&!kh(m)&&!m.initializer&&(Rt||wo(m))}function vo(u){if(u.declarations)for(let m of u.declarations){let v=r0(m,!1,!1);if(v&&(v.kind===177||YN(v)))return v}}function q(u){let m=ms(u.declarations[0]),v=Bc(u.escapedName),D=u.declarations.every(Y=>wo(Y)&&_p(Y)&&cN(Y.expression)),P=D?me.createPropertyAccessExpression(me.createPropertyAccessExpression(me.createIdentifier("module"),me.createIdentifier("exports")),v):me.createPropertyAccessExpression(me.createIdentifier("exports"),v);return D&&XA(P.expression.expression,P.expression),XA(P.expression,P),XA(P,m),P.flowNode=m.endFlowNode,dZ(P,En,Bt)}function Ce(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName);for(let D of m){let P=me.createPropertyAccessExpression(me.createThis(),v);XA(P.expression,P),XA(P,D),P.flowNode=D.returnFlowNode;let Y=yt(P,u);if(Rt&&(Y===En||Y===OC)&&Sr(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,kl(u),no(Y)),!RE(Y,iOe))return iSe(Y)}}function Pe(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName),D=me.createPropertyAccessExpression(me.createThis(),v);XA(D.expression,D),XA(D,m),D.flowNode=m.returnFlowNode;let P=yt(D,u);return Rt&&(P===En||P===OC)&&Sr(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,kl(u),no(P)),RE(P,iOe)?void 0:iSe(P)}function yt(u,m){let v=m?.valueDeclaration&&(!dk(m)||o_(m.valueDeclaration)&128)&&_ot(m)||Bt;return dZ(u,En,v)}function Rr(u,m){let v=FY(u.valueDeclaration);if(v){let Be=wo(v)?ov(v):void 0;return Be&&Be.typeExpression?nl(Be.typeExpression):u.valueDeclaration&&Ii(u.valueDeclaration,u,v)||V5(RI(v))}let D,P=!1,Y=!1;if(jx(u)&&(D=Pe(u,vo(u))),!D){let Be;if(u.declarations){let Oe;for(let He of u.declarations){let qe=fo(He)||Zl(He)?He:_p(He)?fo(He.parent)?He.parent:He:void 0;if(!qe)continue;let Vt=_p(qe)?XJ(qe):nI(qe);(Vt===4||fo(qe)&&Qot(qe,Vt))&&(_2(qe)?P=!0:Y=!0),Zl(qe)||(Oe=Jo(Oe,qe,u,He)),Oe||(Be||(Be=[])).push(fo(qe)||Zl(qe)?Au(u,m,qe,Vt):Wi)}D=Oe}if(!D){if(!B(Be))return nn;let Oe=P&&u.declarations?gW(Be,u.declarations):void 0;if(Y){let qe=_ot(u);qe&&((Oe||(Oe=[])).push(qe),P=!0)}let He=jt(Oe,qe=>!!(qe.flags&-98305))?Oe:Be;D=Ha(He)}}let oe=D1(Z0(D,!1,Y&&!P));return u.valueDeclaration&&wo(u.valueDeclaration)&&nm(oe,Be=>!!(Be.flags&-98305))===Wi?(P5(u.valueDeclaration,hr),hr):oe}function Ii(u,m,v){var D,P;if(!wo(u)||!v||!og(v)||v.properties.length)return;let Y=qu();for(;fo(u)||jo(u);){let Oe=mS(u);(D=Oe?.exports)!=null&&D.size&&FN(Y,Oe.exports),u=fo(u)?u.parent:u.parent.parent}let oe=mS(u);(P=oe?.exports)!=null&&P.size&&FN(Y,oe.exports);let Be=Hf(m,Y,E,E,E);return Be.objectFlags|=4096,Be}function Jo(u,m,v,D){var P;let Y=kh(m.parent);if(Y){let oe=D1(nl(Y));if(u)!uo(u)&&!uo(oe)&&!rG(u,oe)&&e0n(void 0,u,D,oe);else return oe}if((P=v.parent)!=null&&P.valueDeclaration){let oe=S5(v.parent);if(oe.valueDeclaration){let Be=kh(oe.valueDeclaration);if(Be){let Oe=Gg(nl(Be),v.escapedName);if(Oe)return AR(Oe)}}}return u}function Au(u,m,v,D){if(Zl(v)){if(m)return Io(m);let oe=RI(v.arguments[2]),Be=Pi(oe,"value");if(Be)return Be;let Oe=Pi(oe,"get");if(Oe){let qe=kK(Oe);if(qe)return ud(qe)}let He=Pi(oe,"set");if(He){let qe=kK(He);if(qe)return e8t(qe)}return hr}if(cf(v.left,v.right))return hr;let P=D===1&&(jo(v.left)||Yg(v.left))&&(cN(v.left.expression)||Ir(v.left.expression)&&p3(v.left.expression)),Y=m?Io(m):P?Iy(RI(v.right)):V5(RI(v.right));if(Y.flags&524288&&D===2&&u.escapedName==="export="){let oe=pR(Y),Be=qu();a7(oe.members,Be);let Oe=Be.size;m&&!m.exports&&(m.exports=qu()),(m||u).exports.forEach((qe,Vt)=>{var kt;let vr=Be.get(Vt);if(vr&&vr!==qe&&!(qe.flags&2097152))if(qe.flags&111551&&vr.flags&111551){if(qe.valueDeclaration&&vr.valueDeclaration&&ms(qe.valueDeclaration)!==ms(vr.valueDeclaration)){let vn=Bc(qe.escapedName),ii=((kt=Gs(vr.valueDeclaration,rh))==null?void 0:kt.name)||vr.valueDeclaration;lg(Sr(qe.valueDeclaration,Z.Duplicate_identifier_0,vn),mo(ii,Z._0_was_also_declared_here,vn)),lg(Sr(ii,Z.Duplicate_identifier_0,vn),mo(qe.valueDeclaration,Z._0_was_also_declared_here,vn))}let dn=gA(qe.flags|vr.flags,Vt);dn.links.type=Ha([Io(qe),Io(vr)]),dn.valueDeclaration=vr.valueDeclaration,dn.declarations=Nn(vr.declarations,qe.declarations),Be.set(Vt,dn)}else Be.set(Vt,Ev(qe,vr));else Be.set(Vt,qe)});let He=Hf(Oe!==Be.size?void 0:oe.symbol,Be,oe.callSignatures,oe.constructSignatures,oe.indexInfos);if(Oe===Be.size&&(Y.aliasSymbol&&(He.aliasSymbol=Y.aliasSymbol,He.aliasTypeArguments=Y.aliasTypeArguments),la(Y)&4)){He.aliasSymbol=Y.symbol;let qe=lf(Y);He.aliasTypeArguments=B(qe)?qe:void 0}return He.objectFlags|=yWe([Y])|la(Y)&20608,He.symbol&&He.symbol.flags&32&&Y===wv(He.symbol)&&(He.objectFlags|=16777216),He}return bot(Y)?(P5(v,d_),d_):Y}function cf(u,m){return jo(u)&&u.expression.kind===110&&Sz(m,v=>h_(u,v))}function _2(u){let m=r0(u,!1,!1);return m.kind===177||m.kind===263||m.kind===219&&!lne(m.parent)}function gW(u,m){return pe.assert(u.length===m.length),u.filter((v,D)=>{let P=m[D],Y=fo(P)?P:fo(P.parent)?P.parent:void 0;return Y&&_2(Y)})}function gR(u,m,v){if(u.initializer){let D=Nu(u.name)?Rpe(u.name,!0,!1):cn;return Z0(B_n(u,zpe(u,0,D)))}return Nu(u.name)?Rpe(u.name,m,v):(v&&!Zst(u)&&P5(u,hr),m?ds:hr)}function yq(u,m,v){let D=qu(),P,Y=131200;F(u.elements,Be=>{let Oe=Be.propertyName||Be.name;if(Be.dotDotDotToken){P=eG($r,hr,!1);return}let He=sZ(Oe);if(!g2(He)){Y|=512;return}let qe=A2(He),Vt=4|(Be.initializer?16777216:0),kt=gA(Vt,qe);kt.links.type=gR(Be,m,v),D.set(kt.escapedName,kt)});let oe=Hf(void 0,D,E,E,P?[P]:E);return oe.objectFlags|=Y,m&&(oe.pattern=u,oe.objectFlags|=131072),oe}function AJt(u,m,v){let D=u.elements,P=li(D),Y=P&&P.kind===209&&P.dotDotDotToken?P:void 0;if(D.length===0||D.length===1&&Y)return Ze>=2?xIn(hr):d_;let oe=At(D,qe=>yp(qe)?hr:gR(qe,m,v)),Be=De(D,qe=>!(qe===Y||yp(qe)||Gq(qe)),D.length-1)+1,Oe=At(D,(qe,Vt)=>qe===Y?4:Vt>=Be?2:1),He=hk(oe,Oe);return m&&(He=gIn(He),He.pattern=u,He.objectFlags|=131072),He}function Rpe(u,m=!1,v=!1){m&&MB.push(u);let D=u.kind===207?yq(u,m,v):AJt(u,m,v);return m&&MB.pop(),D}function bq(u,m){return A2e(_q(u,!0,0),u,m)}function dJt(u){let m=sa(u);if(!m.resolvedType){let v=gA(4096,"__importAttributes"),D=qu();F(u.elements,Y=>{let oe=gA(4,XAe(Y));oe.parent=v,oe.links.type=$Us(Y),oe.links.target=oe,D.set(oe.escapedName,oe)});let P=Hf(v,D,E,E,E);P.objectFlags|=262272,m.resolvedType=P}return m.resolvedType}function pJt(u){let m=mS(u),v=B3s(!1);return v&&m&&m===v}function A2e(u,m,v){return u?(u.flags&4096&&pJt(m.parent)&&(u=IUt(m)),v&&Not(m,u),u.flags&8192&&(hg(m)||!AW(m))&&u.symbol!==Uo(m)&&(u=ci),D1(u)):(u=Si(m)&&m.dotDotDotToken?d_:hr,v&&(Zst(m)||P5(m,u)),u)}function Zst(u){let m=Rw(u),v=m.kind===170?m.parent:m;return _Oe(v)}function AW(u){let m=kh(u);if(m)return nl(m)}function fJt(u){let m=u.valueDeclaration;return m?(hg(m)&&(m=ai(m)),Si(m)?dot(m.parent):!1):!1}function IJt(u){let m=fa(u);if(!m.type){let v=hJt(u);return!m.type&&!fJt(u)&&(m.type=v),v}return m.type}function hJt(u){if(u.flags&4194304)return Ai(u);if(u===ir)return hr;if(u.flags&134217728&&u.valueDeclaration){let D=Uo(ms(u.valueDeclaration)),P=gA(D.flags,"exports");P.declarations=D.declarations?D.declarations.slice():[],P.parent=u,P.links.target=D,D.valueDeclaration&&(P.valueDeclaration=D.valueDeclaration),D.members&&(P.members=new Map(D.members)),D.exports&&(P.exports=new Map(D.exports));let Y=qu();return Y.set("exports",P),Hf(u,Y,E,E,E)}pe.assertIsDefined(u.valueDeclaration);let m=u.valueDeclaration;if(ll(m)&&Zu(m))return m.statements.length?D1(V5(Ol(m.statements[0].expression))):Xg;if(yB(m))return Dpe(u);if(!VN(u,0))return u.flags&512&&!(u.flags&67108864)?kpe(u):AK(u);let v;if(m.kind===278)v=A2e(AW(m)||RI(m.expression),m);else if(fo(m)||wo(m)&&(Zl(m)||(jo(m)||Kge(m))&&fo(m.parent)))v=Rr(u);else if(jo(m)||Yg(m)||Ir(m)||mA(m)||mC(m)||pm(m)||ih(m)||uu(m)&&!a2(m)||hl(m)||ll(m)){if(u.flags&9136)return kpe(u);v=fo(m.parent)?Rr(u):AW(m)||hr}else if(fm(m))v=AW(m)||w_n(m);else if(EN(m))v=AW(m)||aCn(m);else if(a0(m))v=AW(m)||$pe(m.name,0);else if(a2(m))v=AW(m)||T_n(m,0);else if(Si(m)||pi(m)||ss(m)||nc(m)||hg(m)||dY(m))v=bq(m,!0);else if(V3(m))v=kpe(u);else if(LF(m))v=Wst(u);else return pe.fail("Unhandled declaration kind! "+pe.formatSyntaxKind(m.kind)+" for "+pe.formatSymbol(u));return xr()?v:u.flags&512&&!(u.flags&67108864)?kpe(u):AK(u)}function ZQ(u){if(u)switch(u.kind){case 178:return xb(u);case 179:return Jye(u);case 173:return pe.assert(Nw(u)),kh(u)}}function Npe(u){let m=ZQ(u);return m&&nl(m)}function Eq(u){let m=Q8t(u);return m&&m.symbol}function Lst(u){return k5(yS(u))}function Dpe(u){let m=fa(u);if(!m.type){if(!VN(u,0))return nn;let v=Cp(u,178),D=Cp(u,179),P=Gs(Cp(u,173),t0),Y=v&&wo(v)&&nd(v)||Npe(v)||Npe(D)||Npe(P)||v&&v.body&&gat(v)||P&&bq(P,!0);Y||(D&&!_Oe(D)?Hw(Rt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,kl(u)):v&&!_Oe(v)?Hw(Rt,v,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,kl(u)):P&&!_Oe(P)&&Hw(Rt,P,Z.Member_0_implicitly_has_an_1_type,kl(u),"any"),Y=hr),xr()||(ZQ(v)?Sr(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)):ZQ(D)||ZQ(P)?Sr(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)):v&&Rt&&Sr(v,Z._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,kl(u)),Y=hr),m.type??(m.type=Y)}return m.type}function Vst(u){let m=fa(u);if(!m.writeType){if(!VN(u,7))return nn;let v=Cp(u,179)??Gs(Cp(u,173),t0),D=Npe(v);xr()||(ZQ(v)&&Sr(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)),D=hr),m.writeType??(m.writeType=D||Dpe(u))}return m.writeType}function d2e(u){let m=nZ(wv(u));return m.flags&8650752?m:m.flags&2097152?de(m.types,v=>!!(v.flags&8650752)):void 0}function kpe(u){let m=fa(u),v=m;if(!m.type){let D=u.valueDeclaration&&lat(u.valueDeclaration,!1);if(D){let P=JKt(u,D);P&&(u=P,m=P.links)}v.type=m.type=Pst(u)}return m.type}function Pst(u){let m=u.valueDeclaration;if(u.flags&1536&&NY(u))return hr;if(m&&(m.kind===227||_p(m)&&m.parent.kind===227))return Rr(u);if(u.flags&512&&m&&ll(m)&&m.commonJsModuleIndicator){let D=wE(u);if(D!==u){if(!VN(u,0))return nn;let P=jA(u.exports.get("export=")),Y=Rr(P,P===D?void 0:D);return xr()?Y:AK(u)}}let v=Lh(16,u);if(u.flags&32){let D=d2e(u);return D?Kg([v,D]):v}else return ot&&u.flags&16777216?mW(v,!0):v}function Wst(u){let m=fa(u);return m.type||(m.type=Sfn(u))}function mJt(u){let m=fa(u);if(!m.type){if(!VN(u,0))return nn;let v=YC(u),D=u.declarations&&b5(Mb(u),!0),P=X(D?.declarations,Y=>Cf(Y)?AW(Y):void 0);if(m.type??(m.type=D?.declarations&&Dat(D.declarations)&&u.declarations.length?q(D):Dat(u.declarations)?En:P||(Hb(v)&111551?Io(v):nn)),!xr())return AK(D??u),m.type??(m.type=nn)}return m.type}function CJt(u){let m=fa(u);return m.type||(m.type=_l(Io(m.target),m.mapper))}function _Jt(u){let m=fa(u);return m.writeType||(m.writeType=_l(b9(m.target),m.mapper))}function AK(u){let m=u.valueDeclaration;if(m){if(kh(m))return Sr(u.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)),nn;Rt&&(m.kind!==170||m.initializer)&&Sr(u.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,kl(u))}else if(u.flags&2097152){let v=Mb(u);v&&Sr(v,Z.Circular_definition_of_import_alias_0,kl(u))}return hr}function Ost(u){let m=fa(u);return m.type||(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.type=m.deferralParent.flags&1048576?Ha(m.deferralConstituents):Kg(m.deferralConstituents)),m.type}function yJt(u){let m=fa(u);return!m.writeType&&m.deferralWriteConstituents&&(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.writeType=m.deferralParent.flags&1048576?Ha(m.deferralWriteConstituents):Kg(m.deferralWriteConstituents)),m.writeType}function b9(u){let m=iI(u);return m&2?m&65536?yJt(u)||Ost(u):u.links.writeType||u.links.type:u.flags&4?AZ(Io(u),!!(u.flags&16777216)):u.flags&98304?m&1?_Jt(u):Vst(u):Io(u)}function Io(u){let m=iI(u);return m&65536?Ost(u):m&1?CJt(u):m&262144?QOs(u):m&8192?cHs(u):u.flags&7?IJt(u):u.flags&9136?kpe(u):u.flags&8?Wst(u):u.flags&98304?Dpe(u):u.flags&2097152?mJt(u):nn}function AR(u){return AZ(Io(u),!!(u.flags&16777216))}function Mst(u,m){if(u===void 0||!(la(u)&4))return!1;for(let v of m)if(u.target===v)return!0;return!1}function w1(u,m){return u!==void 0&&m!==void 0&&(la(u)&4)!==0&&u.target===m}function vs(u){return la(u)&4?u.target:u}function da(u,m){return v(u);function v(D){if(la(D)&7){let P=vs(D);return P===m||jt(Kw(P),v)}else if(D.flags&2097152)return jt(D.types,v);return!1}}function Sa(u,m){for(let v of m)u=ps(u,R5(Uo(v)));return u}function Fc(u,m){for(;;){if(u=u.parent,u&&fo(u)){let D=nI(u);if(D===6||D===3){let P=Uo(u.left);P&&P.parent&&!ji(P.parent.valueDeclaration,Y=>u===Y)&&(u=P.parent.valueDeclaration)}}if(!u)return;let v=u.kind;switch(v){case 264:case 232:case 265:case 180:case 181:case 174:case 185:case 186:case 318:case 263:case 175:case 219:case 220:case 266:case 346:case 347:case 341:case 339:case 201:case 195:{let P=Fc(u,m);if((v===219||v===220||a2(u))&&bS(u)){let Be=Nc(tg(Io(Uo(u)),0));if(Be&&Be.typeParameters)return[...P||E,...Be.typeParameters]}if(v===201)return Ft(P,R5(Uo(u.typeParameter)));if(v===195)return Nn(P,AUt(u));let Y=Sa(P,ZD(u)),oe=m&&(v===264||v===232||v===265||YN(u))&&wv(Uo(u)).thisType;return oe?Ft(Y,oe):Y}case 342:let D=dne(u);D&&(u=D.valueDeclaration);break;case 321:{let P=Fc(u,m);return u.tags?Sa(P,er(u.tags,Y=>ZB(Y)?Y.typeParameters:void 0)):P}}}}function Qc(u){var m;let v=u.flags&32||u.flags&16?u.valueDeclaration:(m=u.declarations)==null?void 0:m.find(D=>{if(D.kind===265)return!0;if(D.kind!==261)return!1;let P=D.initializer;return!!P&&(P.kind===219||P.kind===220)});return pe.assert(!!v,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Fc(v)}function Ug(u){if(!u.declarations)return;let m;for(let v of u.declarations)(v.kind===265||v.kind===264||v.kind===232||YN(v)||gne(v))&&(m=Sa(m,ZD(v)));return m}function Ep(u){return Nn(Qc(u),Ug(u))}function I_(u){let m=tg(u,1);if(m.length===1){let v=m[0];if(!v.typeParameters&&v.parameters.length===1&&D0(v)){let D=gOe(v.parameters[0]);return Xo(D)||WWe(D)===hr}}return!1}function dR(u){if(tg(u,1).length>0)return!0;if(u.flags&8650752){let m=L_(u);return!!m&&I_(m)}return!1}function XB(u){let m=AN(u.symbol);return m&&BB(m)}function Uw(u,m,v){let D=B(m),P=wo(v);return Me(tg(u,1),Y=>(P||D>=Ik(Y.typeParameters))&&D<=B(Y.typeParameters))}function zx(u,m,v){let D=Uw(u,m,v),P=At(m,nl);return Tr(D,Y=>jt(Y.typeParameters)?_2e(Y,P,wo(v)):Y)}function nZ(u){if(!u.resolvedBaseConstructorType){let m=AN(u.symbol),v=m&&BB(m),D=XB(u);if(!D)return u.resolvedBaseConstructorType=Bt;if(!VN(u,1))return nn;let P=Ol(D.expression);if(v&&D!==v&&(pe.assert(!v.typeArguments),Ol(v.expression)),P.flags&2621440&&pR(P),!xr())return Sr(u.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,kl(u.symbol)),u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn);if(!(P.flags&1)&&P!==Ot&&!dR(P)){let Y=Sr(D.expression,Z.Type_0_is_not_a_constructor_function_type,no(P));if(P.flags&262144){let oe=Vpe(P),Be=cn;if(oe){let Oe=tg(oe,1);Oe[0]&&(Be=ud(Oe[0]))}P.symbol.declarations&&lg(Y,mo(P.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,kl(P.symbol),no(Be)))}return u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn)}u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=P)}return u.resolvedBaseConstructorType}function Bse(u){let m=E;if(u.symbol.declarations)for(let v of u.symbol.declarations){let D=jJ(v);if(D)for(let P of D){let Y=nl(P);uo(Y)||(m===E?m=[Y]:m.push(Y))}}return m}function xpe(u,m){Sr(u,Z.Type_0_recursively_references_itself_as_a_base_type,no(m,void 0,2))}function Kw(u){if(!u.baseTypesResolved){if(VN(u,6)&&(u.objectFlags&8?u.resolvedBaseTypes=[IOs(u)]:u.symbol.flags&96?(u.symbol.flags&32&&hOs(u),u.symbol.flags&64&&COs(u)):pe.fail("type must be class or interface"),!xr()&&u.symbol.declarations))for(let m of u.symbol.declarations)(m.kind===264||m.kind===265)&&xpe(m,u);u.baseTypesResolved=!0}return u.resolvedBaseTypes}function IOs(u){let m=Tr(u.typeParameters,(v,D)=>u.elementFlags[D]&8?R1(v,ri):v);return d0(Ha(m||E),u.readonly)}function hOs(u){u.resolvedBaseTypes=Zre;let m=fy(nZ(u));if(!(m.flags&2621441))return u.resolvedBaseTypes=E;let v=XB(u),D,P=m.symbol?Fp(m.symbol):void 0;if(m.symbol&&m.symbol.flags&32&&mOs(P))D=AIn(v,m.symbol);else if(m.flags&1)D=m;else{let oe=zx(m,v.typeArguments,v);if(!oe.length)return Sr(v.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),u.resolvedBaseTypes=E;D=ud(oe[0])}if(uo(D))return u.resolvedBaseTypes=E;let Y=JB(D);if(!dWe(Y)){let oe=GJt(void 0,D),Be=wu(oe,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,no(Y));return PA.add(Bw(ms(v.expression),v.expression,Be)),u.resolvedBaseTypes=E}return u===Y||da(Y,u)?(Sr(u.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,no(u,void 0,2)),u.resolvedBaseTypes=E):(u.resolvedBaseTypes===Zre&&(u.members=void 0),u.resolvedBaseTypes=[Y])}function mOs(u){let m=u.outerTypeParameters;if(m){let v=m.length-1,D=lf(u);return m[v].symbol!==D[v].symbol}return!0}function dWe(u){if(u.flags&262144){let m=L_(u);if(m)return dWe(m)}return!!(u.flags&67633153&&!Yb(u)||u.flags&2097152&&ue(u.types,dWe))}function COs(u){if(u.resolvedBaseTypes=u.resolvedBaseTypes||E,u.symbol.declarations){for(let m of u.symbol.declarations)if(m.kind===265&&N7(m))for(let v of N7(m)){let D=JB(nl(v));uo(D)||(dWe(D)?u!==D&&!da(D,u)?u.resolvedBaseTypes===E?u.resolvedBaseTypes=[D]:u.resolvedBaseTypes.push(D):xpe(m,u):Sr(v,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function _Os(u){if(!u.declarations)return!0;for(let m of u.declarations)if(m.kind===265){if(m.flags&256)return!1;let v=N7(m);if(v){for(let D of v)if(Od(D.expression)){let P=TI(D.expression,788968,!0);if(!P||!(P.flags&64)||wv(P).thisType)return!1}}}return!0}function wv(u){let m=fa(u),v=m;if(!m.declaredType){let D=u.flags&32?1:2,P=JKt(u,u.valueDeclaration&&_Xs(u.valueDeclaration));P&&(u=P,m=P.links);let Y=v.declaredType=m.declaredType=Lh(D,u),oe=Qc(u),Be=Ug(u);(oe||Be||D===1||!_Os(u))&&(Y.objectFlags|=4,Y.typeParameters=Nn(oe,Be),Y.outerTypeParameters=oe,Y.localTypeParameters=Be,Y.instantiations=new Map,Y.instantiations.set(UB(Y.typeParameters),Y),Y.target=Y,Y.resolvedTypeArguments=Y.typeParameters,Y.thisType=Yy(u),Y.thisType.isThisType=!0,Y.thisType.constraint=Y)}return m.declaredType}function yfn(u){var m;let v=fa(u);if(!v.declaredType){if(!VN(u,2))return nn;let D=pe.checkDefined((m=u.declarations)==null?void 0:m.find(gne),"Type alias symbol with no valid declaration found"),P=iS(D)?D.typeExpression:D.type,Y=P?nl(P):nn;if(xr()){let oe=Ug(u);oe&&(v.typeParameters=oe,v.instantiations=new Map,v.instantiations.set(UB(oe),Y)),Y===Mt&&u.escapedName==="BuiltinIteratorReturn"&&(Y=jJt())}else Y=nn,D.kind===341?Sr(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,kl(u)):Sr(rh(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,kl(u));v.declaredType??(v.declaredType=Y)}return v.declaredType}function Hst(u){return u.flags&1056&&u.symbol.flags&8?Fp($m(u.symbol)):u}function bfn(u){let m=fa(u);if(!m.declaredType){let v=[];if(u.declarations){for(let P of u.declarations)if(P.kind===267){for(let Y of P.members)if(Tse(Y)){let oe=Uo(Y),Be=GK(Y).value,Oe=Rq(Be!==void 0?M5s(Be,kg(u),oe):Efn(oe));fa(oe).declaredType=Oe,v.push(Iy(Oe))}}}let D=v.length?Ha(v,1,u,void 0):Efn(u);D.flags&1048576&&(D.flags|=1024,D.symbol=u),m.declaredType=D}return m.declaredType}function Efn(u){let m=Oc(32,u),v=Oc(32,u);return m.regularType=m,m.freshType=v,v.regularType=m,v.freshType=v,m}function Sfn(u){let m=fa(u);if(!m.declaredType){let v=bfn($m(u));m.declaredType||(m.declaredType=v)}return m.declaredType}function R5(u){let m=fa(u);return m.declaredType||(m.declaredType=Yy(u))}function yOs(u){let m=fa(u);return m.declaredType||(m.declaredType=Fp(YC(u)))}function Fp(u){return vfn(u)||nn}function vfn(u){if(u.flags&96)return wv(u);if(u.flags&524288)return yfn(u);if(u.flags&262144)return R5(u);if(u.flags&384)return bfn(u);if(u.flags&8)return Sfn(u);if(u.flags&2097152)return yOs(u)}function pWe(u){switch(u.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 202:return!0;case 189:return pWe(u.elementType);case 184:return!u.typeArguments||u.typeArguments.every(pWe)}return!1}function bOs(u){let m=n3(u);return!m||pWe(m)}function Bfn(u){let m=kh(u);return m?pWe(m):!WT(u)}function EOs(u){let m=xb(u),v=ZD(u);return(u.kind===177||!!m&&pWe(m))&&u.parameters.every(Bfn)&&v.every(bOs)}function SOs(u){if(u.declarations&&u.declarations.length===1){let m=u.declarations[0];if(m)switch(m.kind){case 173:case 172:return Bfn(m);case 175:case 174:case 177:case 178:case 179:return EOs(m)}}return!1}function wfn(u,m,v){let D=qu();for(let P of u)D.set(P.escapedName,v&&SOs(P)?P:_Ut(P,m));return D}function Tfn(u,m){for(let v of m){if(Rfn(v))continue;let D=u.get(v.escapedName);(!D||D.valueDeclaration&&fo(D.valueDeclaration)&&!jx(D)&&!iZe(D.valueDeclaration))&&(u.set(v.escapedName,v),u.set(v.escapedName,v))}}function Rfn(u){return!!u.valueDeclaration&&pC(u.valueDeclaration)&&cg(u.valueDeclaration)}function bJt(u){if(!u.declaredProperties){let m=u.symbol,v=pk(m);u.declaredProperties=Qy(v),u.declaredCallSignatures=E,u.declaredConstructSignatures=E,u.declaredIndexInfos=E,u.declaredCallSignatures=PQ(v.get("__call")),u.declaredConstructSignatures=PQ(v.get("__new")),u.declaredIndexInfos=cIn(m)}return u}function EJt(u){return Dfn(u)&&g2(Un(u)?zw(u):RI(u.argumentExpression))}function Nfn(u){return Dfn(u)&&vOs(Un(u)?zw(u):RI(u.argumentExpression))}function Dfn(u){if(!Un(u)&&!Yg(u))return!1;let m=Un(u)?u.expression:u.argumentExpression;return Od(m)}function vOs(u){return dg(u,mc)}function p2e(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)===64}function wse(u){let m=Il(u);return!!m&&EJt(m)}function kfn(u){let m=Il(u);return!!m&&Nfn(m)}function Tse(u){return!XD(u)||wse(u)}function xfn(u){return rAe(u)&&!EJt(u)}function BOs(u,m,v){pe.assert(!!(iI(u)&4096),"Expected a late-bound symbol."),u.flags|=v,fa(m.symbol).lateSymbol=u,u.declarations?m.symbol.isReplaceableByMethod||u.declarations.push(m):u.declarations=[m],v&111551&&S7(u,m)}function Gfn(u,m,v,D){pe.assert(!!D.symbol,"The member is expected to have a symbol.");let P=sa(D);if(!P.resolvedSymbol){P.resolvedSymbol=D.symbol;let Y=fo(D)?D.left:D.name,oe=Yg(Y)?RI(Y.argumentExpression):zw(Y);if(g2(oe)){let Be=A2(oe),Oe=D.symbol.flags,He=v.get(Be);He||v.set(Be,He=gA(0,Be,4096));let qe=m&&m.get(Be);if(!(u.flags&32)&&He.flags&JU(Oe)){let Vt=qe?Nn(qe.declarations,He.declarations):He.declarations,kt=!(oe.flags&8192)&&Bc(Be)||Wd(Y);F(Vt,vr=>Sr(Il(vr)||vr,Z.Property_0_was_also_declared_here,kt)),Sr(Y||D,Z.Duplicate_property_0,kt),He=gA(0,Be,4096)}return He.links.nameType=oe,BOs(He,D,Oe),He.parent?pe.assert(He.parent===u,"Existing symbol parent should match new one"):He.parent=u,P.resolvedSymbol=He}}return P.resolvedSymbol}function wOs(u,m,v,D){let P=v.get("__index");if(!P){let Y=m?.get("__index");Y?(P=BQ(Y),P.links.checkFlags|=4096):P=gA(0,"__index",4096),v.set("__index",P)}P.declarations?D.symbol.isReplaceableByMethod||P.declarations.push(D):P.declarations=[D]}function SJt(u,m){let v=fa(u);if(!v[m]){let D=m==="resolvedExports",P=D?u.flags&1536?sK(u).exports:u.exports:u.members;v[m]=P||Ee;let Y=qu();for(let Oe of u.declarations||E){let He=Zge(Oe);if(He)for(let qe of He)D===zh(qe)&&(wse(qe)?Gfn(u,P,Y,qe):kfn(qe)&&wOs(u,P,Y,qe))}let oe=S5(u).assignmentDeclarationMembers;if(oe){let Oe=Do(oe.values());for(let He of Oe){let qe=nI(He),Vt=qe===3||fo(He)&&Qot(He,qe)||qe===9||qe===6;D===!Vt&&wse(He)&&Gfn(u,P,Y,He)}}let Be=A9(P,Y);if(u.flags&33554432&&v.cjsExportMerged&&u.declarations)for(let Oe of u.declarations){let He=fa(Oe.symbol)[m];if(!Be){Be=He;continue}He&&He.forEach((qe,Vt)=>{let kt=Be.get(Vt);if(!kt)Be.set(Vt,qe);else{if(kt===qe)return;Be.set(Vt,Ev(kt,qe))}})}v[m]=Be||Ee}return v[m]}function pk(u){return u.flags&6256?SJt(u,"resolvedMembers"):u.members||Ee}function Yst(u){if(u.flags&106500&&u.escapedName==="__computed"){let m=fa(u);if(!m.lateSymbol&&jt(u.declarations,wse)){let v=jA(u.parent);jt(u.declarations,zh)?B1(v):pk(v)}return m.lateSymbol||(m.lateSymbol=u)}return u}function T1(u,m,v){if(la(u)&4){let D=u.target,P=lf(u);return B(D.typeParameters)===B(P)?iZ(D,Nn(P,[m||D.thisType])):u}else if(u.flags&2097152){let D=Tr(u.types,P=>T1(P,m,v));return D!==u.types?Kg(D):u}return v?fy(u):u}function Ffn(u,m,v,D){let P,Y,oe,Be,Oe;gc(v,D,0,v.length)?(Y=m.symbol?pk(m.symbol):qu(m.declaredProperties),oe=m.declaredCallSignatures,Be=m.declaredConstructSignatures,Oe=m.declaredIndexInfos):(P=N1(v,D),Y=wfn(m.declaredProperties,P,v.length===1),oe=got(m.declaredCallSignatures,P),Be=got(m.declaredConstructSignatures,P),Oe=Ahn(m.declaredIndexInfos,P));let He=Kw(m);if(He.length){if(m.symbol&&Y===pk(m.symbol)){let Vt=qu(m.declaredProperties),kt=Kst(m.symbol);kt&&Vt.set("__index",kt),Y=Vt}QB(u,Y,oe,Be,Oe);let qe=li(D);for(let Vt of He){let kt=qe?T1(_l(Vt,P),qe):Vt;Tfn(Y,Gd(kt)),oe=Nn(oe,tg(kt,0)),Be=Nn(Be,tg(kt,1));let vr=kt!==hr?A0(kt):[rl];Oe=Nn(Oe,Me(vr,dn=>!Zpe(Oe,dn.keyType)))}}QB(u,Y,oe,Be,Oe)}function TOs(u){Ffn(u,bJt(u),E,E)}function ROs(u){let m=bJt(u.target),v=Nn(m.typeParameters,[m.thisType]),D=lf(u),P=D.length===v.length?D:Nn(D,[u]);Ffn(u,m,v,P)}function PN(u,m,v,D,P,Y,oe,Be){let Oe=new R(ks,Be);return Oe.declaration=u,Oe.typeParameters=m,Oe.parameters=D,Oe.thisParameter=v,Oe.resolvedReturnType=P,Oe.resolvedTypePredicate=Y,Oe.minArgumentCount=oe,Oe.resolvedMinArgumentCount=void 0,Oe.target=void 0,Oe.mapper=void 0,Oe.compositeSignatures=void 0,Oe.compositeKind=void 0,Oe}function f2e(u){let m=PN(u.declaration,u.typeParameters,u.thisParameter,u.parameters,void 0,void 0,u.minArgumentCount,u.flags&167);return m.target=u.target,m.mapper=u.mapper,m.compositeSignatures=u.compositeSignatures,m.compositeKind=u.compositeKind,m}function Zfn(u,m){let v=f2e(u);return v.compositeSignatures=m,v.compositeKind=1048576,v.target=void 0,v.mapper=void 0,v}function NOs(u,m){if((u.flags&24)===m)return u;u.optionalCallSignatureCache||(u.optionalCallSignatureCache={});let v=m===8?"inner":"outer";return u.optionalCallSignatureCache[v]||(u.optionalCallSignatureCache[v]=DOs(u,m))}function DOs(u,m){pe.assert(m===8||m===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let v=f2e(u);return v.flags|=m,v}function Lfn(u,m){if(D0(u)){let P=u.parameters.length-1,Y=u.parameters[P],oe=Io(Y);if(yA(oe))return[v(oe,P,Y)];if(!m&&oe.flags&1048576&&ue(oe.types,yA))return At(oe.types,Be=>v(Be,P,Y))}return[u.parameters];function v(P,Y,oe){let Be=lf(P),Oe=D(P,oe),He=At(Be,(qe,Vt)=>{let kt=Oe&&Oe[Vt]?Oe[Vt]:jpe(u,Y+Vt,P),vr=P.target.elementFlags[Vt],dn=vr&12?32768:vr&2?16384:0,vn=gA(1,kt,dn);return vn.links.type=vr&4?d0(qe):qe,vn});return Nn(u.parameters.slice(0,Y),He)}function D(P,Y){let oe=At(P.target.labeledElementDeclarations,(Be,Oe)=>$Kt(Be,Oe,P.target.elementFlags[Oe],Y));if(oe){let Be=[],Oe=new Set;for(let qe=0;qe=Vt&&Oe<=kt){let vr=kt?Ust(qe,v9(Be,qe.typeParameters,Vt,oe)):f2e(qe);vr.typeParameters=u.localTypeParameters,vr.resolvedReturnType=u,vr.flags=P?vr.flags|4:vr.flags&-5,He.push(vr)}}return He}function Qst(u,m,v,D,P){for(let Y of u)if(VWe(Y,m,v,D,P,v?sMs:T2e))return Y}function xOs(u,m,v){if(m.typeParameters){if(v>0)return;for(let P=1;P1&&(v=v===void 0?D:-1);for(let P of u[D])if(!m||!Qst(m,P,!1,!1,!0)){let Y=xOs(u,P,D);if(Y){let oe=P;if(Y.length>1){let Be=P.thisParameter,Oe=F(Y,He=>He.thisParameter);if(Oe){let He=Kg(Xt(Y,qe=>qe.thisParameter&&Io(qe.thisParameter)));Be=SK(Oe,He)}oe=Zfn(P,Y),oe.thisParameter=Be}(m||(m=[])).push(oe)}}}if(!B(m)&&v!==-1){let D=u[v!==void 0?v:0],P=D.slice();for(let Y of u)if(Y!==D){let oe=Y[0];if(pe.assert(!!oe,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),P=oe.typeParameters&&jt(P,Be=>!!Be.typeParameters&&!Vfn(oe.typeParameters,Be.typeParameters))?void 0:At(P,Be=>ZOs(Be,oe)),!P)break}m=P}return m||E}function Vfn(u,m){if(B(u)!==B(m))return!1;if(!u||!m)return!0;let v=N1(m,u);for(let D=0;D=P?u:m,oe=Y===u?m:u,Be=Y===u?D:P,Oe=Ck(u)||Ck(m),He=Oe&&!Ck(Y),qe=new Array(Be+(He?1:0));for(let Vt=0;Vt=_R(Y)&&Vt>=_R(oe),Yi=Vt>=D?void 0:jpe(u,Vt),js=Vt>=P?void 0:jpe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=gA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?d0(dn):dn,qe[Vt]=Ji}if(He){let Vt=gA(1,"args",32768);Vt.links.type=d0(CR(oe,Be)),oe===m&&(Vt.links.type=_l(Vt.links.type,v)),qe[Be]=Vt}return qe}function ZOs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=N1(m.typeParameters,u.typeParameters));let P=(u.flags|m.flags)&166,Y=u.declaration,oe=FOs(u,m,D),Be=li(oe);Be&&iI(Be)&32768&&(P|=1);let Oe=GOs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),qe=PN(Y,v,Oe,oe,void 0,void 0,He,P);return qe.compositeKind=1048576,qe.compositeSignatures=Nn(u.compositeKind!==2097152&&u.compositeSignatures||[u],[m]),D?qe.mapper=u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures?F5(u.mapper,D):D:u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures&&(qe.mapper=u.mapper),qe}function Pfn(u){let m=A0(u[0]);if(m){let v=[];for(let D of m){let P=D.keyType;ue(u,Y=>!!$x(Y,P))&&v.push(eG(P,Ha(At(u,Y=>D5(Y,P))),jt(u,Y=>$x(Y,P).isReadonly)))}return v}return E}function LOs(u){let m=vJt(At(u.types,P=>P===Js?[Za]:tg(P,0))),v=vJt(At(u.types,P=>tg(P,1))),D=Pfn(u.types);QB(u,Ee,m,v,D)}function fWe(u,m){return u?m?Kg([u,m]):u:m}function Wfn(u){let m=ct(u,D=>tg(D,1).length>0),v=At(u,I_);if(m>0&&m===ct(v,D=>D)){let D=v.indexOf(!0);v[D]=!1}return v}function VOs(u,m,v,D){let P=[];for(let Y=0;YBe);for(let Be=0;Be0&&(He=At(He,qe=>{let Vt=f2e(qe);return Vt.resolvedReturnType=VOs(ud(qe),P,Y,Be),Vt})),v=Ofn(v,He)}m=Ofn(m,tg(Oe,0)),D=Ul(A0(Oe),(He,qe)=>Mfn(He,qe,!1),D)}QB(u,Ee,m||E,v||E,D||E)}function Ofn(u,m){for(let v of m)(!u||ue(u,D=>!VWe(D,v,!1,!1,!1,T2e)))&&(u=Ft(u,v));return u}function Mfn(u,m,v){if(u)for(let D=0;D{var Oe;!(Be.flags&418)&&!(Be.flags&512&&((Oe=Be.declarations)!=null&&Oe.length)&&ue(Be.declarations,s_))&&oe.set(Be.escapedName,Be)}),v=oe}let P;if(QB(u,v,E,E,E),m.flags&32){let oe=wv(m),Be=nZ(oe);Be.flags&11272192?(v=qu(Iq(v)),Tfn(v,Gd(Be))):Be===hr&&(P=rl)}let Y=jst(v);if(Y?D=zst(Y,Do(v.values())):(P&&(D=Ft(D,P)),m.flags&384&&(Fp(m).flags&32||jt(u.properties,oe=>!!(Io(oe).flags&296)))&&(D=Ft(D,Uc))),QB(u,v,E,E,D||E),m.flags&8208&&(u.callSignatures=PQ(m)),m.flags&32){let oe=wv(m),Be=m.members?PQ(m.members.get("__constructor")):E;m.flags&16&&(Be=Or(Be.slice(),Xt(u.callSignatures,Oe=>YN(Oe.declaration)?PN(Oe.declaration,Oe.typeParameters,Oe.thisParameter,Oe.parameters,oe,void 0,Oe.minArgumentCount,Oe.flags&167):void 0))),Be.length||(Be=kOs(oe)),u.constructSignatures=Be}}function OOs(u,m,v){return _l(u,N1([m.indexType,m.objectType],[fR(0),hk([v])]))}function MOs(u){let m=_S(u.mappedType);if(!(m.flags&1048576||m.flags&2097152))return;let v=m.flags&1048576?m.origin:m;if(!v||!(v.flags&2097152))return;let D=Kg(v.types.filter(P=>P!==u.constraintType));return D!==Wi?D:void 0}function HOs(u){let m=$x(u.source,$r),v=fk(u.mappedType),D=!(v&1),P=v&4?0:16777216,Y=m?[eG($r,kot(m.type,u.mappedType,u.constraintType)||cn,D&&m.isReadonly)]:E,oe=qu(),Be=MOs(u);for(let Oe of Gd(u.source)){if(Be){let Vt=Bq(Oe,8576);if(!dg(Vt,Be))continue}let He=8192|(D&&yR(Oe)?8:0),qe=gA(4|Oe.flags&P,Oe.escapedName,He);if(qe.declarations=Oe.declarations,qe.links.nameType=fa(Oe).nameType,qe.links.propertyType=Io(Oe),u.constraintType.type.flags&8388608&&u.constraintType.type.objectType.flags&262144&&u.constraintType.type.indexType.flags&262144){let Vt=u.constraintType.type.objectType,kt=OOs(u.mappedType,u.constraintType.type,Vt);qe.links.mappedType=kt,qe.links.constraintType=ON(Vt)}else qe.links.mappedType=u.mappedType,qe.links.constraintType=u.constraintType;oe.set(Oe.escapedName,qe)}QB(u,oe,E,E,Y)}function IWe(u){if(u.flags&4194304){let m=fy(u.type);return hW(m)?LIn(m):ON(m)}if(u.flags&16777216){if(u.root.isDistributive){let m=u.checkType,v=IWe(m);if(v!==m)return bUt(u,yK(u.root.checkType,v,u.mapper),!1)}return u}if(u.flags&1048576)return Yf(u,IWe,!0);if(u.flags&2097152){let m=u.types;return m.length===2&&m[0].flags&76&&m[1]===bg?u:Kg(Tr(u.types,IWe))}return u}function BJt(u){return iI(u)&4096}function wJt(u,m,v,D){for(let P of Gd(u))D(Bq(P,m));if(u.flags&1)D($r);else for(let P of A0(u))(!v||P.keyType.flags&134217732)&&D(P.keyType)}function YOs(u){let m=qu(),v;QB(u,Ee,E,E,E);let D=jw(u),P=_S(u),Y=u.target||u,oe=E9(Y),Be=I2e(Y)!==2,Oe=qx(Y),He=fy(N5(u)),qe=fk(u);Rse(u)?wJt(He,8576,!1,kt):TK(IWe(P),kt),QB(u,m,E,E,v||E);function kt(dn){let vn=oe?_l(oe,v2e(u.mapper,D,dn)):dn;TK(vn,ii=>vr(dn,ii))}function vr(dn,vn){if(g2(vn)){let ii=A2(vn),Yi=m.get(ii);if(Yi)Yi.links.nameType=Ha([Yi.links.nameType,vn]),Yi.links.keyType=Ha([Yi.links.keyType,dn]);else{let js=g2(dn)?Gg(He,A2(dn)):void 0,Co=!!(qe&4||!(qe&8)&&js&&js.flags&16777216),Ji=!!(qe&1||!(qe&2)&&js&&yR(js)),Mi=ot&&!Co&&js&&js.flags&16777216,To=js?BJt(js):0,Ka=gA(4|(Co?16777216:0),ii,To|262144|(Ji?8:0)|(Mi?524288:0));Ka.links.mappedType=u,Ka.links.nameType=vn,Ka.links.keyType=dn,js&&(Ka.links.syntheticOrigin=js,Ka.declarations=Be?js.declarations:void 0),m.set(ii,Ka)}}else if(qst(vn)||vn.flags&33){let ii=vn.flags&5?$r:vn.flags&40?ri:vn,Yi=_l(Oe,v2e(u.mapper,D,dn)),js=h2e(He,vn),Co=!!(qe&1||!(qe&2)&&js?.isReadonly),Ji=eG(ii,Yi,Co);v=Mfn(v,Ji,!0)}}}function QOs(u){var m;if(!u.links.type){let v=u.links.mappedType;if(!VN(u,0))return v.containsError=!0,nn;let D=qx(v.target||v),P=v2e(v.mapper,jw(v),u.links.keyType),Y=_l(D,P),oe=ot&&u.flags&16777216&&!ah(Y,49152)?mW(Y,!0):u.links.checkFlags&524288?wot(Y):Y;xr()||(Sr(ge,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,kl(u),no(v)),oe=nn),(m=u.links).type??(m.type=oe)}return u.links.type}function jw(u){return u.typeParameter||(u.typeParameter=R5(Uo(u.declaration.typeParameter)))}function _S(u){return u.constraintType||(u.constraintType=Xy(jw(u))||nn)}function E9(u){return u.declaration.nameType?u.nameType||(u.nameType=_l(nl(u.declaration.nameType),u.mapper)):void 0}function qx(u){return u.templateType||(u.templateType=u.declaration.type?_l(Z0(nl(u.declaration.type),!0,!!(fk(u)&4)),u.mapper):nn)}function Hfn(u){return n3(u.declaration.typeParameter)}function Rse(u){let m=Hfn(u);return m.kind===199&&m.operator===143}function N5(u){if(!u.modifiersType)if(Rse(u))u.modifiersType=_l(nl(Hfn(u).type),u.mapper);else{let m=uUt(u.declaration),v=_S(m),D=v&&v.flags&262144?Xy(v):v;u.modifiersType=D&&D.flags&4194304?_l(D.type,u.mapper):cn}return u.modifiersType}function fk(u){let m=u.declaration;return(m.readonlyToken?m.readonlyToken.kind===41?2:1:0)|(m.questionToken?m.questionToken.kind===41?8:4:0)}function Yfn(u){let m=fk(u);return m&8?-1:m&4?1:0}function Gpe(u){if(la(u)&32)return Yfn(u)||Gpe(N5(u));if(u.flags&2097152){let m=Gpe(u.types[0]);return ue(u.types,(v,D)=>D===0||Gpe(v)===m)?m:0}return 0}function XOs(u){return!!(la(u)&32&&fk(u)&4)}function Yb(u){if(la(u)&32){let m=_S(u);if(_K(m))return!0;let v=E9(u);if(v&&_K(_l(v,HQ(jw(u),m))))return!0}return!1}function I2e(u){let m=E9(u);return m?dg(m,jw(u))?1:2:0}function pR(u){return u.members||(u.flags&524288?u.objectFlags&4?ROs(u):u.objectFlags&3?TOs(u):u.objectFlags&1024?HOs(u):u.objectFlags&16?WOs(u):u.objectFlags&32?YOs(u):pe.fail("Unhandled object type "+pe.formatObjectFlags(u.objectFlags)):u.flags&1048576?LOs(u):u.flags&2097152?POs(u):pe.fail("Unhandled type "+pe.formatTypeFlags(u.flags))),u}function S9(u){return u.flags&524288?pR(u).properties:E}function LQ(u,m){if(u.flags&524288){let D=pR(u).members.get(m);if(D&&qi(D))return D}}function hWe(u){if(!u.resolvedProperties){let m=qu();for(let v of u.types){for(let D of Gd(v))if(!m.has(D.escapedName)){let P=CWe(u,D.escapedName,!!(u.flags&2097152));P&&m.set(D.escapedName,P)}if(u.flags&1048576&&A0(v).length===0)break}u.resolvedProperties=Qy(m)}return u.resolvedProperties}function Gd(u){return u=Fpe(u),u.flags&3145728?hWe(u):S9(u)}function JOs(u,m){u=Fpe(u),u.flags&3670016&&pR(u).members.forEach((v,D)=>{aW(v,D)&&m(v,D)})}function UOs(u,m){return m.properties.some(D=>{let P=D.name&&(eR(D.name)?TE(xw(D.name)):sZ(D.name)),Y=P&&g2(P)?A2(P):void 0,oe=Y===void 0?void 0:Pi(u,Y);return!!oe&&D2e(oe)&&!dg(Vq(D),oe)})}function KOs(u){let m=Ha(u);if(!(m.flags&1048576))return Z8t(m);let v=qu();for(let D of u)for(let{escapedName:P}of Z8t(D))if(!v.has(P)){let Y=zfn(m,P);Y&&v.set(P,Y)}return Do(v.values())}function dK(u){return u.flags&262144?Xy(u):u.flags&8388608?zOs(u):u.flags&16777216?Jfn(u):L_(u)}function Xy(u){return mWe(u)?Vpe(u):void 0}function jOs(u,m){let v=B2e(u);return!!v&&pK(v,m)}function pK(u,m=0){var v;return m<5&&!!(u&&(u.flags&262144&&jt((v=u.symbol)==null?void 0:v.declarations,D=>Ga(D,4096))||u.flags&3145728&&jt(u.types,D=>pK(D,m))||u.flags&8388608&&pK(u.objectType,m+1)||u.flags&16777216&&pK(Jfn(u),m+1)||u.flags&33554432&&pK(u.baseType,m)||la(u)&32&&jOs(u,m)||hW(u)&&Se(WQ(u),(D,P)=>!!(u.target.elementFlags[P]&8)&&pK(D,m))>=0))}function zOs(u){return mWe(u)?qOs(u):void 0}function TJt(u){let m=oZ(u,!1);return m!==u?m:dK(u)}function qOs(u){if(kJt(u))return aot(u.objectType,u.indexType);let m=TJt(u.indexType);if(m&&m!==u.indexType){let D=pW(u.objectType,m,u.accessFlags);if(D)return D}let v=TJt(u.objectType);if(v&&v!==u.objectType)return pW(v,u.indexType,u.accessFlags)}function RJt(u){if(!u.resolvedDefaultConstraint){let m=L5s(u),v=IW(u);u.resolvedDefaultConstraint=Xo(m)?v:Xo(v)?m:Ha([m,v])}return u.resolvedDefaultConstraint}function Qfn(u){if(u.resolvedConstraintOfDistributive!==void 0)return u.resolvedConstraintOfDistributive||void 0;if(u.root.isDistributive&&u.restrictiveInstantiation!==u){let m=oZ(u.checkType,!1),v=m===u.checkType?dK(m):m;if(v&&v!==u.checkType){let D=bUt(u,yK(u.root.checkType,v,u.mapper),!0);if(!(D.flags&131072))return u.resolvedConstraintOfDistributive=D,D}}u.resolvedConstraintOfDistributive=!1}function Xfn(u){return Qfn(u)||RJt(u)}function Jfn(u){return mWe(u)?Xfn(u):void 0}function $Os(u,m){let v,D=!1;for(let P of u)if(P.flags&465829888){let Y=dK(P);for(;Y&&Y.flags&21233664;)Y=dK(Y);Y&&(v=Ft(v,Y),m&&(v=Ft(v,P)))}else(P.flags&469892092||mk(P))&&(D=!0);if(v&&(m||D)){if(D)for(let P of u)(P.flags&469892092||mk(P))&&(v=Ft(v,P));return FWe(Kg(v,2),!1)}}function L_(u){if(u.flags&464781312||hW(u)){let m=NJt(u);return m!==YI&&m!==Fh?m:void 0}return u.flags&4194304?mc:void 0}function WN(u){return L_(u)||u}function mWe(u){return NJt(u)!==Fh}function NJt(u){if(u.resolvedBaseConstraint)return u.resolvedBaseConstraint;let m=[];return u.resolvedBaseConstraint=v(u);function v(Y){if(!Y.immediateBaseConstraint){if(!VN(Y,4))return Fh;let oe,Be=yot(Y);if((m.length<10||m.length<50&&!k(m,Be))&&(m.push(Be),oe=P(oZ(Y,!1)),m.pop()),!xr()){if(Y.flags&262144){let Oe=$st(Y);if(Oe){let He=Sr(Oe,Z.Type_parameter_0_has_a_circular_constraint,no(Y));ge&&!EP(Oe,ge)&&!EP(ge,Oe)&&lg(He,mo(ge,Z.Circularity_originates_in_type_at_this_location))}}oe=Fh}Y.immediateBaseConstraint??(Y.immediateBaseConstraint=oe||YI)}return Y.immediateBaseConstraint}function D(Y){let oe=v(Y);return oe!==YI&&oe!==Fh?oe:void 0}function P(Y){if(Y.flags&262144){let oe=Vpe(Y);return Y.isThisType||!oe?oe:D(oe)}if(Y.flags&3145728){let oe=Y.types,Be=[],Oe=!1;for(let He of oe){let qe=D(He);qe?(qe!==He&&(Oe=!0),Be.push(qe)):Oe=!0}return Oe?Y.flags&1048576&&Be.length===oe.length?Ha(Be):Y.flags&2097152&&Be.length?Kg(Be):void 0:Y}if(Y.flags&4194304)return mc;if(Y.flags&134217728){let oe=Y.types,Be=Xt(oe,D);return Be.length===oe.length?hK(Y.texts,Be):$r}if(Y.flags&268435456){let oe=D(Y.type);return oe&&oe!==Y.type?wq(Y.symbol,oe):$r}if(Y.flags&8388608){if(kJt(Y))return D(aot(Y.objectType,Y.indexType));let oe=D(Y.objectType),Be=D(Y.indexType),Oe=oe&&Be&&pW(oe,Be,Y.accessFlags);return Oe&&D(Oe)}if(Y.flags&16777216){let oe=Xfn(Y);return oe&&D(oe)}if(Y.flags&33554432)return D(QJt(Y));if(hW(Y)){let oe=At(WQ(Y),(Be,Oe)=>{let He=Be.flags&262144&&Y.target.elementFlags[Oe]&8&&D(Be)||Be;return He!==Be&&RE(He,qe=>L5(qe)&&!hW(qe))?He:Be});return hk(oe,Y.target.elementFlags,Y.target.readonly,Y.target.labeledElementDeclarations)}return Y}}function e3s(u,m){if(u===m)return u.resolvedApparentType||(u.resolvedApparentType=T1(u,m,!0));let v=`I${QC(u)},${QC(m)}`;return Hy(v)??HB(v,T1(u,m,!0))}function DJt(u){if(u.default)u.default===WC&&(u.default=Fh);else if(u.target){let m=DJt(u.target);u.default=m?_l(m,u.mapper):YI}else{u.default=WC;let m=u.symbol&&F(u.symbol.declarations,D=>Ds(D)&&D.default),v=m?nl(m):YI;u.default===WC&&(u.default=v)}return u.default}function VQ(u){let m=DJt(u);return m!==YI&&m!==Fh?m:void 0}function t3s(u){return DJt(u)!==Fh}function Ufn(u){return!!(u.symbol&&F(u.symbol.declarations,m=>Ds(m)&&m.default))}function Kfn(u){return u.resolvedApparentType||(u.resolvedApparentType=r3s(u))}function r3s(u){let m=u.target??u,v=B2e(m);if(v&&!m.declaration.nameType){let D=N5(u),P=Yb(D)?Kfn(D):L_(D);if(P&&RE(P,Y=>L5(Y)||jfn(Y)))return _l(m,yK(v,P,u.mapper))}return u}function jfn(u){return!!(u.flags&2097152)&&ue(u.types,L5)}function kJt(u){let m;return!!(u.flags&8388608&&la(m=u.objectType)&32&&!Yb(m)&&_K(u.indexType)&&!(fk(m)&8)&&!m.declaration.nameType)}function fy(u){let m=u.flags&465829888?L_(u)||cn:u,v=la(m);return v&32?Kfn(m):v&4&&m!==u?T1(m,u):m.flags&2097152?e3s(m,u):m.flags&402653316?hm:m.flags&296?af:m.flags&2112?O3s():m.flags&528?dI:m.flags&12288?BIn():m.flags&67108864?Xg:m.flags&4194304?mc:m.flags&2&&!ot?Xg:m}function Fpe(u){return JB(fy(JB(u)))}function zfn(u,m,v){var D,P,Y;let oe=0,Be,Oe,He,qe=u.flags&1048576,Vt,kt=4,vr=qe?0:8,dn=!1;for(let yl of u.types){let ka=fy(yl);if(!(uo(ka)||ka.flags&131072)){let Kc=Gg(ka,m,v),Vu=Kc?u2(Kc):0;if(Kc){if(Kc.flags&106500&&(Vt??(Vt=qe?0:16777216),qe?Vt|=Kc.flags&16777216:Vt&=Kc.flags),!Be)Be=Kc,oe=Kc.flags&98304||4;else if(Kc!==Be){if((Xse(Kc)||Kc)===(Xse(Be)||Be)&&xUt(Be,Kc,(Ll,Ef)=>Ll===Ef?-1:0)===-1)dn=!!Be.parent&&!!B(Ug(Be.parent));else{Oe||(Oe=new Map,Oe.set(kg(Be),Be));let Ll=kg(Kc);Oe.has(Ll)||Oe.set(Ll,Kc)}oe&98304&&(Kc.flags&98304)!==(oe&98304)&&(oe=oe&-98305|4)}qe&&yR(Kc)?vr|=8:!qe&&!yR(Kc)&&(vr&=-9),vr|=(Vu&6?0:256)|(Vu&4?512:0)|(Vu&2?1024:0)|(Vu&256?2048:0),RKt(Kc)||(kt=2)}else if(qe){let gd=!p2e(m)&&vq(ka,m);gd?(oe=oe&-98305|4,vr|=32|(gd.isReadonly?8:0),He=Ft(He,yA(ka)?Sot(ka)||Bt:gd.type)):R9(ka)&&!(la(ka)&2097152)?(vr|=32,He=Ft(He,Bt)):vr|=16}}}if(!Be||qe&&(Oe||vr&48)&&vr&1536&&!(Oe&&n3s(Oe.values())))return;if(!Oe&&!(vr&16)&&!He)if(dn){let yl=(D=Gs(Be,bw))==null?void 0:D.links,ka=SK(Be,yl?.type);return ka.parent=(Y=(P=Be.valueDeclaration)==null?void 0:P.symbol)==null?void 0:Y.parent,ka.links.containingType=u,ka.links.mapper=yl?.mapper,ka.links.writeType=b9(Be),ka}else return Be;let vn=Oe?Do(Oe.values()):[Be],ii,Yi,js,Co=[],Ji,Mi,To=!1;for(let yl of vn){Mi?yl.valueDeclaration&&yl.valueDeclaration!==Mi&&(To=!0):Mi=yl.valueDeclaration,ii=Or(ii,yl.declarations);let ka=Io(yl);Yi||(Yi=ka,js=fa(yl).nameType);let Kc=b9(yl);(Ji||Kc!==ka)&&(Ji=Ft(Ji||Co.slice(),Kc)),ka!==Yi&&(vr|=64),(D2e(ka)||mK(ka))&&(vr|=128),ka.flags&131072&&ka!==pp&&(vr|=131072),Co.push(ka)}Or(Co,He);let Ka=gA(oe|(Vt??0),m,kt|vr);return Ka.links.containingType=u,!To&&Mi&&(Ka.valueDeclaration=Mi,Mi.symbol.parent&&(Ka.parent=Mi.symbol.parent)),Ka.declarations=ii,Ka.links.nameType=js,Co.length>2?(Ka.links.checkFlags|=65536,Ka.links.deferralParent=u,Ka.links.deferralConstituents=Co,Ka.links.deferralWriteConstituents=Ji):(Ka.links.type=qe?Ha(Co):Kg(Co),Ji&&(Ka.links.writeType=qe?Ha(Ji):Kg(Ji))),Ka}function qfn(u,m,v){var D,P,Y;let oe=v?(D=u.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(m):(P=u.propertyCache)==null?void 0:P.get(m);return oe||(oe=zfn(u,m,v),oe&&((v?u.propertyCacheWithoutObjectFunctionPropertyAugment||(u.propertyCacheWithoutObjectFunctionPropertyAugment=qu()):u.propertyCache||(u.propertyCache=qu())).set(m,oe),v&&!(iI(oe)&48)&&!((Y=u.propertyCache)!=null&&Y.get(m))&&(u.propertyCache||(u.propertyCache=qu())).set(m,oe))),oe}function n3s(u){let m;for(let v of u){if(!v.declarations)return;if(!m){m=new Set(v.declarations);continue}if(m.forEach(D=>{k(v.declarations,D)||m.delete(D)}),m.size===0)return}return m}function CWe(u,m,v){let D=qfn(u,m,v);return D&&!(iI(D)&16)?D:void 0}function JB(u){return u.flags&1048576&&u.objectFlags&16777216?u.resolvedReducedType||(u.resolvedReducedType=i3s(u)):u.flags&2097152?(u.objectFlags&16777216||(u.objectFlags|=16777216|(jt(hWe(u),s3s)?33554432:0)),u.objectFlags&33554432?Wi:u):u}function i3s(u){let m=Tr(u.types,JB);if(m===u.types)return u;let v=Ha(m);return v.flags&1048576&&(v.resolvedReducedType=v),v}function s3s(u){return $fn(u)||eIn(u)}function $fn(u){return!(u.flags&16777216)&&(iI(u)&131264)===192&&!!(Io(u).flags&131072)}function eIn(u){return!u.valueDeclaration&&!!(iI(u)&1024)}function xJt(u){return!!(u.flags&1048576&&u.objectFlags&16777216&&jt(u.types,xJt)||u.flags&2097152&&o3s(u))}function o3s(u){let m=u.uniqueLiteralFilledInstantiation||(u.uniqueLiteralFilledInstantiation=_l(u,Dl));return JB(m)!==m}function GJt(u,m){if(m.flags&2097152&&la(m)&33554432){let v=de(hWe(m),$fn);if(v)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,no(m,void 0,536870912),kl(v));let D=de(hWe(m),eIn);if(D)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,no(m,void 0,536870912),kl(D))}return u}function Gg(u,m,v,D){var P,Y;if(u=Fpe(u),u.flags&524288){let oe=pR(u),Be=oe.members.get(m);if(Be&&!D&&((P=u.symbol)==null?void 0:P.flags)&512&&((Y=fa(u.symbol).typeOnlyExportStarMap)!=null&&Y.has(m)))return;if(Be&&qi(Be,D))return Be;if(v)return;let Oe=oe===$d?Js:oe.callSignatures.length?Hl:oe.constructSignatures.length?RA:void 0;if(Oe){let He=LQ(Oe,m);if(He)return He}return LQ(qn,m)}if(u.flags&2097152){let oe=CWe(u,m,!0);return oe||(v?void 0:CWe(u,m,v))}if(u.flags&1048576)return CWe(u,m,v)}function _We(u,m){if(u.flags&3670016){let v=pR(u);return m===0?v.callSignatures:v.constructSignatures}return E}function tg(u,m){let v=_We(Fpe(u),m);if(m===0&&!B(v)&&u.flags&1048576){if(u.arrayFallbackSignatures)return u.arrayFallbackSignatures;let D;if(RE(u,P=>{var Y;return!!((Y=P.symbol)!=null&&Y.parent)&&a3s(P.symbol.parent)&&(D?D===P.symbol.escapedName:(D=P.symbol.escapedName,!0))})){let P=Yf(u,oe=>w9((tIn(oe.symbol.parent)?uA:NA).typeParameters[0],oe.mapper)),Y=d0(P,kv(u,oe=>tIn(oe.symbol.parent)));return u.arrayFallbackSignatures=tg(Pi(Y,D),m)}u.arrayFallbackSignatures=v}return v}function a3s(u){return!u||!NA.symbol||!uA.symbol?!1:!!Et(u,NA.symbol)||!!Et(u,uA.symbol)}function tIn(u){return!u||!uA.symbol?!1:!!Et(u,uA.symbol)}function Zpe(u,m){return de(u,v=>v.keyType===m)}function FJt(u,m){let v,D,P;for(let Y of u)Y.keyType===$r?v=Y:Sq(m,Y.keyType)&&(D?(P||(P=[D])).push(Y):D=Y);return P?eG(cn,Kg(At(P,Y=>Y.type)),Ul(P,(Y,oe)=>Y&&oe.isReadonly,!0)):D||(v&&Sq(m,$r)?v:void 0)}function Sq(u,m){return dg(u,m)||m===$r&&dg(u,ri)||m===ri&&(u===_u||!!(u.flags&128)&&IN(u.value))}function ZJt(u){return u.flags&3670016?pR(u).indexInfos:E}function A0(u){return ZJt(Fpe(u))}function $x(u,m){return Zpe(A0(u),m)}function D5(u,m){var v;return(v=$x(u,m))==null?void 0:v.type}function LJt(u,m){return A0(u).filter(v=>Sq(m,v.keyType))}function h2e(u,m){return FJt(A0(u),m)}function vq(u,m){return h2e(u,p2e(m)?ci:TE(Bc(m)))}function rIn(u){var m;let v;for(let D of ZD(u))v=ps(v,R5(D.symbol));return v?.length?v:ih(u)?(m=Lpe(u))==null?void 0:m.typeParameters:void 0}function VJt(u){let m=[];return u.forEach((v,D)=>{B5(D)||m.push(v)}),m}function nIn(u,m){if(Xr(u))return;let v=f_(Gr,'"'+u+'"',512);return v&&m?jA(v):v}function Xst(u){return VY(u)||jne(u)||Si(u)&&HAe(u)}function m2e(u){if(Xst(u))return!0;if(!Si(u))return!1;if(u.initializer){let v=yS(u.parent),D=u.parent.parameters.indexOf(u);return pe.assert(D>=0),D>=_R(v,3)}let m=ZL(u.parent);return m?!u.type&&!u.dotDotDotToken&&u.parent.parameters.indexOf(u)>=aat(m).length:!1}function c3s(u){return pi(u)&&!Nw(u)&&u.questionToken}function C2e(u,m,v,D){return{kind:u,parameterName:m,parameterIndex:v,type:D}}function Ik(u){let m=0;if(u)for(let v=0;v=v&&Y<=P){let oe=u?u.slice():[];for(let Oe=Y;Oe!!eN(dn))&&!eN(u)&&!Kot(u)&&(D|=32);for(let dn=He?1:0;dnOe.arguments.length&&!Yi||(P=v.length)}if((u.kind===178||u.kind===179)&&Tse(u)&&(!Be||!Y)){let dn=u.kind===178?179:178,vn=Cp(Uo(u),dn);vn&&(Y=Eq(vn))}oe&&oe.typeExpression&&(Y=SK(gA(1,"this"),nl(oe.typeExpression)));let Vt=qL(u)?WL(u):u,kt=Vt&&Tc(Vt)?wv(jA(Vt.parent.symbol)):void 0,vr=kt?kt.localTypeParameters:rIn(u);(Gre(u)||wo(u)&&l3s(u,v))&&(D|=1),($D(u)&&Ga(u,64)||Tc(u)&&Ga(u.parent,64))&&(D|=4),m.resolvedSignature=PN(u,vr,Y,v,void 0,void 0,P,D)}return m.resolvedSignature}function l3s(u,m){if(qL(u)||!PJt(u))return!1;let v=li(u.parameters),D=v?vL(v):Sx(u).filter(cS),P=X(D,oe=>oe.typeExpression&&qLe(oe.typeExpression.type)?oe.typeExpression.type:void 0),Y=gA(3,"args",32768);return P?Y.links.type=d0(nl(P.type)):(Y.links.checkFlags|=65536,Y.links.deferralParent=Wi,Y.links.deferralConstituents=[d_],Y.links.deferralWriteConstituents=[d_]),P&&m.pop(),m.push(Y),!0}function Lpe(u){if(!(wo(u)&&kd(u)))return;let m=ov(u);return m?.typeExpression&&kK(nl(m.typeExpression))}function u3s(u,m){let v=Lpe(u);if(!v)return;let D=u.parameters.indexOf(m);return m.dotDotDotToken?AOe(v,D):CR(v,D)}function g3s(u){let m=Lpe(u);return m&&ud(m)}function PJt(u){let m=sa(u);return m.containsArgumentsReference===void 0&&(m.flags&512?m.containsArgumentsReference=!0:m.containsArgumentsReference=v(u.body)),m.containsArgumentsReference;function v(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===st.escapedName&&aSe(D)===st;case 173:case 175:case 178:case 179:return D.name.kind===168&&v(D.name);case 212:case 213:return v(D.expression);case 304:return v(D.initializer);default:return!Fye(D)&&!ww(D)&&!!Lu(D,v)}}}function PQ(u){if(!u||!u.declarations)return E;let m=[];for(let v=0;v0&&D.body){let P=u.declarations[v-1];if(D.parent===P.parent&&D.kind===P.kind&&D.pos===P.end)continue}if(wo(D)&&D.jsDoc){let P=Bye(D);if(B(P)){for(let Y of P){let oe=Y.typeExpression;oe.type===void 0&&!Tc(D)&&P5(oe,hr),m.push(yS(oe))}continue}}m.push(!RF(D)&&!a2(D)&&Lpe(D)||yS(D))}}return m}function iIn(u){let m=F0(u,u);if(m){let v=wE(m);if(v)return Io(v)}return hr}function k5(u){if(u.thisParameter)return Io(u.thisParameter)}function Tv(u){if(!u.resolvedTypePredicate){if(u.target){let m=Tv(u.target);u.resolvedTypePredicate=m?Ihn(m,u.mapper):ni}else if(u.compositeSignatures)u.resolvedTypePredicate=A5s(u.compositeSignatures,u.compositeKind)||ni;else{let m=u.declaration&&xb(u.declaration),v;if(!m){let D=Lpe(u.declaration);D&&u!==D&&(v=Tv(D))}if(m||v)u.resolvedTypePredicate=m&&bE(m)?A3s(m,u):v||ni;else if(u.declaration&&kd(u.declaration)&&(!u.resolvedReturnType||u.resolvedReturnType.flags&16)&&NE(u)>0){let{declaration:D}=u;u.resolvedTypePredicate=ni,u.resolvedTypePredicate=qXs(D)||ni}else u.resolvedTypePredicate=ni}pe.assert(!!u.resolvedTypePredicate)}return u.resolvedTypePredicate===ni?void 0:u.resolvedTypePredicate}function A3s(u,m){let v=u.parameterName,D=u.type&&nl(u.type);return v.kind===198?C2e(u.assertsModifier?2:0,void 0,void 0,D):C2e(u.assertsModifier?3:1,v.escapedText,Se(m.parameters,P=>P.escapedName===v.escapedText),D)}function sIn(u,m,v){return m!==2097152?Ha(u,v):Kg(u)}function ud(u){if(!u.resolvedReturnType){if(!VN(u,3))return nn;let m=u.target?_l(ud(u.target),u.mapper):u.compositeSignatures?_l(sIn(At(u.compositeSignatures,ud),u.compositeKind,2),u.mapper):Nse(u.declaration)||(sf(u.declaration.body)?hr:gat(u.declaration));if(u.flags&8?m=Qhn(m):u.flags&16&&(m=mW(m)),!xr()){if(u.declaration){let v=xb(u.declaration);if(v)Sr(v,Z.Return_type_annotation_circularly_references_itself);else if(Rt){let D=u.declaration,P=Il(D);P?Sr(P,Z._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Wd(P)):Sr(D,Z.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}m=hr}u.resolvedReturnType??(u.resolvedReturnType=m)}return u.resolvedReturnType}function Nse(u){if(u.kind===177)return wv(jA(u.parent.symbol));let m=xb(u);if(qL(u)){let v=KJ(u);if(v&&Tc(v.parent)&&!m)return wv(jA(v.parent.parent.symbol))}if(PY(u))return nl(u.parameters[0].type);if(m)return nl(m);if(u.kind===178&&Tse(u)){let v=wo(u)&&nd(u);if(v)return v;let D=Cp(Uo(u),179),P=Npe(D);if(P)return P}return g3s(u)}function Jst(u){return u.compositeSignatures&&jt(u.compositeSignatures,Jst)||!u.resolvedReturnType&&rt(u,3)>=0}function d3s(u){return oIn(u)||hr}function oIn(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]),v=yA(m)?Sot(m):m;return v&&D5(v,ri)}}function _2e(u,m,v,D){let P=WJt(u,v9(m,u.typeParameters,Ik(u.typeParameters),v));if(D){let Y=ZCn(ud(P));if(Y){let oe=f2e(Y);oe.typeParameters=D;let Be=fK(oe);Be.mapper=P.mapper;let Oe=f2e(P);return Oe.resolvedReturnType=Be,Oe}}return P}function WJt(u,m){let v=u.instantiations||(u.instantiations=new Map),D=UB(m),P=v.get(D);return P||v.set(D,P=Ust(u,m)),P}function Ust(u,m){return bK(u,p3s(u,m),!0)}function aIn(u){return Tr(u.typeParameters,m=>m.mapper?_l(m,m.mapper):m)}function p3s(u,m){return N1(aIn(u),m)}function y2e(u){return u.typeParameters?u.erasedSignatureCache||(u.erasedSignatureCache=f3s(u)):u}function f3s(u){return bK(u,phn(u.typeParameters),!0)}function I3s(u){return u.typeParameters?u.canonicalSignatureCache||(u.canonicalSignatureCache=h3s(u)):u}function h3s(u){return _2e(u,At(u.typeParameters,m=>m.target&&!Xy(m.target)?m.target:m),wo(u.declaration))}function m3s(u){let m=u.typeParameters;if(m){if(u.baseSignatureCache)return u.baseSignatureCache;let v=phn(m),D=N1(m,At(m,Y=>Xy(Y)||cn)),P=At(m,Y=>_l(Y,D)||cn);for(let Y=0;Y{qst(vr)&&!Zpe(v,vr)&&v.push(eG(vr,Vt.type?nl(Vt.type):hr,Gb(Vt,8),Vt))})}}else if(kfn(Vt)){let kt=fo(Vt)?Vt.left:Vt.name,vr=Yg(kt)?RI(kt.argumentExpression):zw(kt);if(Zpe(v,vr))continue;dg(vr,mc)&&(dg(vr,ri)?(D=!0,b3(Vt)||(P=!1)):dg(vr,ci)?(Y=!0,b3(Vt)||(oe=!1)):(Be=!0,b3(Vt)||(Oe=!1)),He.push(Vt.symbol))}let qe=Nn(He,Me(m,Vt=>Vt!==u));return Be&&!Zpe(v,$r)&&v.push(M2e(Oe,0,qe,$r)),D&&!Zpe(v,ri)&&v.push(M2e(P,0,qe,ri)),Y&&!Zpe(v,ci)&&v.push(M2e(oe,0,qe,ci)),v}return E}function qst(u){return!!(u.flags&4108)||mK(u)||!!(u.flags&2097152)&&!G5(u)&&jt(u.types,qst)}function $st(u){return Xt(Me(u.symbol&&u.symbol.declarations,Ds),n3)[0]}function lIn(u,m){var v;let D;if((v=u.symbol)!=null&&v.declarations){for(let P of u.symbol.declarations)if(P.parent.kind===196){let[Y=P.parent,oe]=wye(P.parent.parent);if(oe.kind===184&&!m){let Be=oe,Oe=f8t(Be);if(Oe){let He=Be.typeArguments.indexOf(Y);if(He()=>z4s(Be,Oe,dn))),kt=_l(qe,Vt);kt!==u&&(D=Ft(D,kt))}}}}else if(oe.kind===170&&oe.dotDotDotToken||oe.kind===192||oe.kind===203&&oe.dotDotDotToken)D=Ft(D,d0(cn));else if(oe.kind===205)D=Ft(D,$r);else if(oe.kind===169&&oe.parent.kind===201)D=Ft(D,mc);else if(oe.kind===201&&oe.type&&QA(oe.type)===P.parent&&oe.parent.kind===195&&oe.parent.extendsType===oe&&oe.parent.checkType.kind===201&&oe.parent.checkType.type){let Be=oe.parent.checkType,Oe=nl(Be.type);D=Ft(D,_l(Oe,HQ(R5(Uo(Be.typeParameter)),Be.typeParameter.constraint?nl(Be.typeParameter.constraint):mc)))}}}return D&&Kg(D)}function Vpe(u){if(!u.constraint)if(u.target){let m=Xy(u.target);u.constraint=m?_l(m,u.mapper):YI}else{let m=$st(u);if(!m)u.constraint=lIn(u)||YI;else{let v=nl(m);v.flags&1&&!uo(v)&&(v=m.parent.parent.kind===201?mc:cn),u.constraint=v}}return u.constraint===YI?void 0:u.constraint}function uIn(u){let m=Cp(u.symbol,169),v=ZB(m.parent)?zge(m.parent):m.parent;return v&&mS(v)}function UB(u){let m="";if(u){let v=u.length,D=0;for(;D1&&(m+=":"+Y),D+=Y}}return m}function IK(u,m){return u?`@${kg(u)}`+(m?`:${UB(m)}`:""):""}function yWe(u,m){let v=0;for(let D of u)(m===void 0||!(D.flags&m))&&(v|=la(D));return v&458752}function Dse(u,m){return jt(m)&&u===oi?cn:iZ(u,m)}function iZ(u,m){let v=UB(m),D=u.instantiations.get(v);return D||(D=Lh(4,u.symbol),u.instantiations.set(v,D),D.objectFlags|=m?yWe(m):0,D.target=u,D.resolvedTypeArguments=m),D}function gIn(u){let m=Oc(u.flags,u.symbol);return m.objectFlags=u.objectFlags,m.target=u.target,m.resolvedTypeArguments=u.resolvedTypeArguments,m}function OJt(u,m,v,D,P){if(!D){D=Tq(m);let oe=Fse(D);P=v?cZ(oe,v):oe}let Y=Lh(4,u.symbol);return Y.target=u,Y.node=m,Y.mapper=v,Y.aliasSymbol=D,Y.aliasTypeArguments=P,Y}function lf(u){var m,v;if(!u.resolvedTypeArguments){if(!VN(u,5))return Nn(u.target.outerTypeParameters,(m=u.target.localTypeParameters)==null?void 0:m.map(()=>nn))||E;let D=u.node,P=D?D.kind===184?Nn(u.target.outerTypeParameters,hat(D,u.target.localTypeParameters)):D.kind===189?[nl(D.elementType)]:At(D.elements,nl):E;xr()?u.resolvedTypeArguments??(u.resolvedTypeArguments=u.mapper?cZ(P,u.mapper):P):(u.resolvedTypeArguments??(u.resolvedTypeArguments=Nn(u.target.outerTypeParameters,((v=u.target.localTypeParameters)==null?void 0:v.map(()=>nn))||E)),Sr(u.node||ge,u.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,u.target.symbol&&kl(u.target.symbol)))}return u.resolvedTypeArguments}function B9(u){return B(u.target.typeParameters)}function AIn(u,m){let v=Fp(jA(m)),D=v.localTypeParameters;if(D){let P=B(u.typeArguments),Y=Ik(D),oe=wo(u);if(!(!Rt&&oe)&&(PD.length)){let He=oe&&l_(u)&&!bz(u.parent),qe=Y===D.length?He?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:He?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Vt=no(v,void 0,2);if(Sr(u,qe,Vt,Y,D.length),!oe)return nn}if(u.kind===184&&FIn(u,B(u.typeArguments)!==D.length))return OJt(v,u,void 0);let Oe=Nn(v.outerTypeParameters,v9(bWe(u),D,Y,oe));return iZ(v,Oe)}return x5(u,m)?v:nn}function kse(u,m,v,D){let P=Fp(u);if(P===Mt){let He=Bet.get(u.escapedName);if(He!==void 0&&m&&m.length===1)return He===4?MJt(m[0]):wq(u,m[0])}let Y=fa(u),oe=Y.typeParameters,Be=UB(m)+IK(v,D),Oe=Y.instantiations.get(Be);return Oe||Y.instantiations.set(Be,Oe=Chn(P,N1(oe,v9(m,oe,Ik(oe),wo(u.valueDeclaration))),v,D)),Oe}function C3s(u,m){if(iI(m)&1048576){let P=bWe(u),Y=IK(m,P),oe=Kr.get(Y);return oe||(oe=Vc(1,"error",void 0,`alias ${Y}`),oe.aliasSymbol=m,oe.aliasTypeArguments=P,Kr.set(Y,oe)),oe}let v=Fp(m),D=fa(m).typeParameters;if(D){let P=B(u.typeArguments),Y=Ik(D);if(PD.length)return Sr(u,Y===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,kl(m),Y,D.length),nn;let oe=Tq(u),Be=oe&&(dIn(m)||!dIn(oe))?oe:void 0,Oe;if(Be)Oe=Fse(Be);else if(s7(u)){let He=Ppe(u,2097152,!0);if(He&&He!==it){let qe=YC(He);qe&&qe.flags&524288&&(Be=qe,Oe=bWe(u)||(D?[]:void 0))}}return kse(m,bWe(u),Be,Oe)}return x5(u,m)?v:nn}function dIn(u){var m;let v=(m=u.declarations)==null?void 0:m.find(gne);return!!(v&&A1(v))}function _3s(u){switch(u.kind){case 184:return u.typeName;case 234:let m=u.expression;if(Od(m))return m}}function pIn(u){return u.parent?`${pIn(u.parent)}.${u.escapedName}`:u.escapedName}function eot(u){let v=(u.kind===167?u.right:u.kind===212?u.name:u).escapedText;if(v){let D=u.kind===167?eot(u.left):u.kind===212?eot(u.expression):void 0,P=D?`${pIn(D)}.${v}`:v,Y=Fr.get(P);return Y||(Fr.set(P,Y=gA(524288,v,1048576)),Y.parent=D,Y.links.declaredType=bn),Y}return it}function Ppe(u,m,v){let D=_3s(u);if(!D)return it;let P=TI(D,m,v);return P&&P!==it?P:v?it:eot(D)}function tot(u,m){if(m===it)return nn;if(m=gq(m)||m,m.flags&96)return AIn(u,m);if(m.flags&524288)return C3s(u,m);let v=vfn(m);if(v)return x5(u,m)?Iy(v):nn;if(m.flags&111551&&rot(u)){let D=y3s(u,m);return D||(Ppe(u,788968),Io(m))}return nn}function y3s(u,m){let v=sa(u);if(!v.resolvedJSDocType){let D=Io(m),P=D;if(m.valueDeclaration){let Y=u.kind===206&&u.qualifier;D.symbol&&D.symbol!==m&&Y&&(P=tot(u,D.symbol))}v.resolvedJSDocType=P}return v.resolvedJSDocType}function MJt(u){return HJt(u)?fIn(u,cn):u}function HJt(u){return!!(u.flags&3145728&&jt(u.types,HJt)||u.flags&33554432&&!xse(u)&&HJt(u.baseType)||u.flags&524288&&!mk(u)||u.flags&432275456&&!mK(u))}function xse(u){return!!(u.flags&33554432&&u.constraint.flags&2)}function YJt(u,m){return m.flags&3||m===u||u.flags&1?u:fIn(u,m)}function fIn(u,m){let v=`${QC(u)}>${QC(m)}`,D=Tg.get(v);if(D)return D;let P=ic(33554432);return P.baseType=u,P.constraint=m,Tg.set(v,P),P}function QJt(u){return xse(u)?u.baseType:Kg([u.constraint,u.baseType])}function IIn(u){return u.kind===190&&u.elements.length===1}function hIn(u,m,v){return IIn(m)&&IIn(v)?hIn(u,m.elements[0],v.elements[0]):aZ(nl(m))===aZ(u)?nl(v):void 0}function b3s(u,m){let v,D=!0;for(;m&&!Lc(m)&&m.kind!==321;){let P=m.parent;if(P.kind===170&&(D=!D),(D||u.flags&8650752)&&P.kind===195&&m===P.trueType){let Y=hIn(u,P.checkType,P.extendsType);Y&&(v=Ft(v,Y))}else if(u.flags&262144&&P.kind===201&&!P.nameType&&m===P.type){let Y=nl(P);if(jw(Y)===aZ(u)){let oe=B2e(Y);if(oe){let Be=Xy(oe);Be&&RE(Be,L5)&&(v=Ft(v,Ha([ri,_u])))}}}m=P}return v?YJt(u,Kg(v)):u}function rot(u){return!!(u.flags&16777216)&&(u.kind===184||u.kind===206)}function x5(u,m){return u.typeArguments?(Sr(u,Z.Type_0_is_not_generic,m?kl(m):u.typeName?Wd(u.typeName):yet),!1):!0}function mIn(u){if(Ir(u.typeName)){let m=u.typeArguments;switch(u.typeName.escapedText){case"String":return x5(u),$r;case"Number":return x5(u),ri;case"BigInt":return x5(u),ao;case"Boolean":return x5(u),Mn;case"Void":return x5(u),es;case"Undefined":return x5(u),Bt;case"Null":return x5(u),Hn;case"Function":case"function":return x5(u),Js;case"array":return(!m||!m.length)&&!Rt?d_:void 0;case"promise":return(!m||!m.length)&&!Rt?pOe(hr):void 0;case"Object":if(m&&m.length===2){if(Uge(u)){let v=nl(m[0]),D=nl(m[1]),P=v===$r||v===ri?[eG(v,D,!1)]:E;return Hf(void 0,Ee,E,E,P)}return hr}return x5(u),Rt?void 0:hr}}}function E3s(u){let m=nl(u.type);return ot?OWe(m,65536):m}function not(u){let m=sa(u);if(!m.resolvedType){if(s2(u)&&Ed(u.parent))return m.resolvedSymbol=it,m.resolvedType=RI(u.parent.expression);let v,D,P=788968;rot(u)&&(D=mIn(u),D||(v=Ppe(u,P,!0),v===it?v=Ppe(u,P|111551):Ppe(u,P),D=tot(u,v))),D||(v=Ppe(u,P),D=tot(u,v)),m.resolvedSymbol=v,m.resolvedType=D}return m.resolvedType}function bWe(u){return At(u.typeArguments,nl)}function CIn(u){let m=sa(u);if(!m.resolvedType){let v=n_n(u);m.resolvedType=Iy(D1(v))}return m.resolvedType}function _In(u,m){function v(P){let Y=P.declarations;if(Y)for(let oe of Y)switch(oe.kind){case 264:case 265:case 267:return oe}}if(!u)return m?oi:Xg;let D=Fp(u);return D.flags&524288?B(D.typeParameters)!==m?(Sr(v(u),Z.Global_type_0_must_have_1_type_parameter_s,nf(u),m),m?oi:Xg):D:(Sr(v(u),Z.Global_type_0_must_be_a_class_or_interface_type,nf(u)),m?oi:Xg)}function XJt(u,m){return Gse(u,111551,m?Z.Cannot_find_global_value_0:void 0)}function JJt(u,m){return Gse(u,788968,m?Z.Cannot_find_global_type_0:void 0)}function iot(u,m,v){let D=Gse(u,788968,v?Z.Cannot_find_global_type_0:void 0);if(D&&(Fp(D),B(fa(D).typeParameters)!==m)){let P=D.declarations&&de(D.declarations,FB);Sr(P,Z.Global_type_0_must_have_1_type_parameter_s,nf(D),m);return}return D}function Gse(u,m,v){return An(void 0,u,m,v,!1,!1)}function JI(u,m,v){let D=JJt(u,v);return D||v?_In(D,m):void 0}function yIn(u,m){let v;for(let D of u)v=Ft(v,JI(D,m,!1));return v??E}function S3s(){return Ox||(Ox=JI("TypedPropertyDescriptor",1,!0)||oi)}function v3s(){return Xl||(Xl=JI("TemplateStringsArray",0,!0)||Xg)}function bIn(){return eg||(eg=JI("ImportMeta",0,!0)||Xg)}function EIn(){if(!jl){let u=gA(0,"ImportMetaExpression"),m=bIn(),v=gA(4,"meta",8);v.parent=u,v.links.type=m;let D=qu([v]);u.members=D,jl=Hf(u,D,E,E,E)}return jl}function SIn(u){return Eu||(Eu=JI("ImportCallOptions",0,u))||Xg}function UJt(u){return Df||(Df=JI("ImportAttributes",0,u))||Xg}function vIn(u){return yv||(yv=XJt("Symbol",u))}function B3s(u){return ik||(ik=JJt("SymbolConstructor",u))}function BIn(){return Wx||(Wx=JI("Symbol",0,!1))||Xg}function EWe(u){return Pb||(Pb=JI("Promise",1,u))||oi}function wIn(u){return qm||(qm=JI("PromiseLike",1,u))||oi}function KJt(u){return oR||(oR=XJt("Promise",u))}function w3s(u){return pS||(pS=JI("PromiseConstructorLike",0,u))||Xg}function SWe(u){return wa||(wa=JI("AsyncIterable",3,u))||oi}function T3s(u){return pc||(pc=JI("AsyncIterator",3,u))||oi}function TIn(u){return ul||(ul=JI("AsyncIterableIterator",3,u))||oi}function R3s(){return gr??(gr=yIn(["ReadableStreamAsyncIterator"],1))}function N3s(u){return Ln||(Ln=JI("AsyncIteratorObject",3,u))||oi}function D3s(u){return bs||(bs=JI("AsyncGenerator",3,u))||oi}function sot(u){return xN||(xN=JI("Iterable",3,u))||oi}function k3s(u){return at||(at=JI("Iterator",3,u))||oi}function RIn(u){return en||(en=JI("IterableIterator",3,u))||oi}function jJt(){return _t?Bt:hr}function x3s(){return Fe??(Fe=yIn(["ArrayIterator","MapIterator","SetIterator","StringIterator"],1))}function G3s(u){return gi||(gi=JI("IteratorObject",3,u))||oi}function F3s(u){return _i||(_i=JI("Generator",3,u))||oi}function Z3s(u){return ys||(ys=JI("IteratorYieldResult",1,u))||oi}function L3s(u){return $s||($s=JI("IteratorReturnResult",1,u))||oi}function NIn(u){return Jg||(Jg=JI("Disposable",0,u))||Xg}function V3s(u){return MC||(MC=JI("AsyncDisposable",0,u))||Xg}function DIn(u,m=0){let v=Gse(u,788968,void 0);return v&&_In(v,m)}function P3s(){return S1||(S1=iot("Extract",2,!0)||it),S1===it?void 0:S1}function W3s(){return fS||(fS=iot("Omit",2,!0)||it),fS===it?void 0:fS}function zJt(u){return bv||(bv=iot("Awaited",1,u)||(u?it:void 0)),bv===it?void 0:bv}function O3s(){return XF||(XF=JI("BigInt",0,!1))||Xg}function M3s(u){return sk??(sk=JI("ClassDecoratorContext",1,u))??oi}function H3s(u){return aR??(aR=JI("ClassMethodDecoratorContext",2,u))??oi}function Y3s(u){return WB??(WB=JI("ClassGetterDecoratorContext",2,u))??oi}function Q3s(u){return UP??(UP=JI("ClassSetterDecoratorContext",2,u))??oi}function X3s(u){return br??(br=JI("ClassAccessorDecoratorContext",2,u))??oi}function J3s(u){return sn??(sn=JI("ClassAccessorDecoratorTarget",2,u))??oi}function U3s(u){return ei??(ei=JI("ClassAccessorDecoratorResult",2,u))??oi}function K3s(u){return is??(is=JI("ClassFieldDecoratorContext",2,u))??oi}function j3s(){return o9||(o9=XJt("NaN",!1))}function z3s(){return My||(My=iot("Record",2,!0)||it),My===it?void 0:My}function Wpe(u,m){return u!==oi?iZ(u,m):Xg}function kIn(u){return Wpe(S3s(),[u])}function xIn(u){return Wpe(sot(!0),[u,es,Bt])}function d0(u,m){return Wpe(m?uA:NA,[u])}function qJt(u){switch(u.kind){case 191:return 2;case 192:return GIn(u);case 203:return u.questionToken?2:u.dotDotDotToken?GIn(u):1;default:return 1}}function GIn(u){return NWe(u.type)?4:8}function q3s(u){let m=t5s(u.parent);if(NWe(u))return m?uA:NA;let D=At(u.elements,qJt);return $Jt(D,m,At(u.elements,$3s))}function $3s(u){return KT(u)||Si(u)?u:void 0}function FIn(u,m){return!!Tq(u)||ZIn(u)&&(u.kind===189?dW(u.elementType):u.kind===190?jt(u.elements,dW):m||jt(u.typeArguments,dW))}function ZIn(u){let m=u.parent;switch(m.kind){case 197:case 203:case 184:case 193:case 194:case 200:case 195:case 199:case 189:case 190:return ZIn(m);case 266:return!0}return!1}function dW(u){switch(u.kind){case 184:return rot(u)||!!(Ppe(u,788968).flags&524288);case 187:return!0;case 199:return u.operator!==158&&dW(u.type);case 197:case 191:case 203:case 317:case 315:case 316:case 310:return dW(u.type);case 192:return u.type.kind!==189||dW(u.type.elementType);case 193:case 194:return jt(u.types,dW);case 200:return dW(u.objectType)||dW(u.indexType);case 195:return dW(u.checkType)||dW(u.extendsType)||dW(u.trueType)||dW(u.falseType)}return!1}function e5s(u){let m=sa(u);if(!m.resolvedType){let v=q3s(u);if(v===oi)m.resolvedType=Xg;else if(!(u.kind===190&&jt(u.elements,D=>!!(qJt(D)&8)))&&FIn(u))m.resolvedType=u.kind===190&&u.elements.length===0?v:OJt(v,u,void 0);else{let D=u.kind===189?[nl(u.elementType)]:At(u.elements,nl);m.resolvedType=eUt(v,D)}}return m.resolvedType}function t5s(u){return xB(u)&&u.operator===148}function hk(u,m,v=!1,D=[]){let P=$Jt(m||At(u,Y=>1),v,D);return P===oi?Xg:u.length?eUt(P,u):P}function $Jt(u,m,v){if(u.length===1&&u[0]&4)return m?uA:NA;let D=At(u,Y=>Y&1?"#":Y&2?"?":Y&4?".":"*").join()+(m?"R":"")+(jt(v,Y=>!!Y)?","+At(v,Y=>Y?rd(Y):"_").join(","):""),P=ba.get(D);return P||ba.set(D,P=r5s(u,m,v)),P}function r5s(u,m,v){let D=u.length,P=ct(u,Vt=>!!(Vt&9)),Y,oe=[],Be=0;if(D){Y=new Array(D);for(let Vt=0;Vt!!(u.elementFlags[ii]&8&&vn.flags&1179648));if(dn>=0)return BWe(At(m,(vn,ii)=>u.elementFlags[ii]&8?vn:cn))?Yf(m[dn],vn=>tUt(u,Yl(m,dn,vn))):nn}let oe=[],Be=[],Oe=[],He=-1,qe=-1,Vt=-1;for(let dn=0;dn=1e4)return Sr(ge,ww(ge)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),nn;F(Yi,(js,Co)=>{var Ji;return vr(js,vn.target.elementFlags[Co],(Ji=vn.target.labeledElementDeclarations)==null?void 0:Ji[Co])})}else vr(T9(vn)&&D5(vn,ri)||nn,4,(P=u.labeledElementDeclarations)==null?void 0:P[dn]);else vr(vn,ii,(Y=u.labeledElementDeclarations)==null?void 0:Y[dn])}for(let dn=0;dn=0&&qeBe[qe+vn]&8?R1(dn,ri):dn)),oe.splice(qe+1,Vt-qe),Be.splice(qe+1,Vt-qe),Oe.splice(qe+1,Vt-qe));let kt=$Jt(Be,u.readonly,Oe);return kt===oi?Xg:Be.length?iZ(kt,oe):kt;function vr(dn,vn,ii){vn&1&&(He=Be.length),vn&4&&qe<0&&(qe=Be.length),vn&6&&(Vt=Be.length),oe.push(vn&2?Z0(dn,!0):dn),Be.push(vn),Oe.push(ii)}}function Ope(u,m,v=0){let D=u.target,P=B9(u)-v;return m>D.fixedLength?HMs(u)||hk(E):hk(lf(u).slice(m,P),D.elementFlags.slice(m,P),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(m,P))}function LIn(u){return Ha(Ft(Ri(u.target.fixedLength,m=>TE(""+m)),ON(u.target.readonly?uA:NA)))}function n5s(u,m){let v=Se(u.elementFlags,D=>!(D&m));return v>=0?v:u.elementFlags.length}function b2e(u,m){return u.elementFlags.length-De(u.elementFlags,v=>!(v&m))-1}function rUt(u){return u.fixedLength+b2e(u,3)}function WQ(u){let m=lf(u),v=B9(u);return m.length===v?m:m.slice(0,v)}function i5s(u){return Z0(nl(u.type),!0)}function QC(u){return u.id}function tG(u,m){return Wc(u,m,QC,Zt)>=0}function vWe(u,m){let v=Wc(u,m,QC,Zt);return v<0?(u.splice(~v,0,m),!0):!1}function s5s(u,m,v){let D=v.flags;if(!(D&131072))if(m|=D&473694207,D&465829888&&(m|=33554432),D&2097152&&la(v)&67108864&&(m|=536870912),v===Ni&&(m|=8388608),uo(v)&&(m|=1073741824),!ot&&D&98304)la(v)&65536||(m|=4194304);else{let P=u.length,Y=P&&v.id>u[P-1].id?~P:Wc(u,v,QC,Zt);Y<0&&u.splice(~Y,0,v)}return m}function VIn(u,m,v){let D;for(let P of v)P!==D&&(m=P.flags&1048576?VIn(u,m|(g5s(P)?1048576:0),P.types):s5s(u,m,P),D=P);return m}function o5s(u,m){var v;if(u.length<2)return u;let D=UB(u),P=Cs.get(D);if(P)return P;let Y=m&&jt(u,He=>!!(He.flags&524288)&&!Yb(He)&&BUt(pR(He))),oe=u.length,Be=oe,Oe=0;for(;Be>0;){Be--;let He=u[Be];if(Y||He.flags&469499904){if(He.flags&262144&&WN(He).flags&1048576){MN(He,Ha(At(u,kt=>kt===He?Wi:kt)),bf)&&LA(u,Be);continue}let qe=He.flags&61603840?de(Gd(He),kt=>IR(Io(kt))):void 0,Vt=qe&&Iy(Io(qe));for(let kt of u)if(He!==kt){if(Oe===1e5&&Oe/(oe-Be)*oe>1e6){(v=ki)==null||v.instant(ki.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:u.map(dn=>dn.id)}),Sr(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Oe++,qe&&kt.flags&61603840){let vr=Pi(kt,qe.escapedName);if(vr&&IR(vr)&&Iy(vr)!==Vt)continue}if(MN(He,kt,bf)&&(!(la(vs(He))&1)||!(la(vs(kt))&1)||Z5(He,kt))){LA(u,Be);break}}}}return Cs.set(D,u),u}function a5s(u,m,v){let D=u.length;for(;D>0;){D--;let P=u[D],Y=P.flags;(Y&402653312&&m&4||Y&256&&m&8||Y&2048&&m&64||Y&8192&&m&4096||v&&Y&32768&&m&16384||MQ(P)&&tG(u,P.regularType))&&LA(u,D)}}function c5s(u){let m=Me(u,mK);if(m.length){let v=u.length;for(;v>0;){v--;let D=u[v];D.flags&128&&jt(m,P=>l5s(D,P))&&LA(u,v)}}}function l5s(u,m){return m.flags&134217728?Got(u,m):xot(u,m)}function u5s(u){let m=[];for(let v of u)if(v.flags&2097152&&la(v)&67108864){let D=v.types[0].flags&8650752?0:1;Qi(m,v.types[D])}for(let v of m){let D=[];for(let Y of u)if(Y.flags&2097152&&la(Y)&67108864){let oe=Y.types[0].flags&8650752?0:1;Y.types[oe]===v&&vWe(D,Y.types[1-oe])}let P=L_(v);if(RE(P,Y=>tG(D,Y))){let Y=u.length;for(;Y>0;){Y--;let oe=u[Y];if(oe.flags&2097152&&la(oe)&67108864){let Be=oe.types[0].flags&8650752?0:1;oe.types[Be]===v&&tG(D,oe.types[1-Be])&&LA(u,Y)}}vWe(u,v)}}}function g5s(u){return!!(u.flags&1048576&&(u.aliasSymbol||u.origin))}function PIn(u,m){for(let v of m)if(v.flags&1048576){let D=v.origin;v.aliasSymbol||D&&!(D.flags&1048576)?Qi(u,v):D&&D.flags&1048576&&PIn(u,D.types)}}function nUt(u,m){let v=zl(u);return v.types=m,v}function Ha(u,m=1,v,D,P){if(u.length===0)return Wi;if(u.length===1)return u[0];if(u.length===2&&!P&&(u[0].flags&1048576||u[1].flags&1048576)){let Y=m===0?"N":m===2?"S":"L",oe=u[0].id=2&&Y[0]===Bt&&Y[1]===fr&&LA(Y,1),(oe&402664352||oe&16384&&oe&32768)&&a5s(Y,oe,!!(m&2)),oe&128&&oe&402653184&&c5s(Y),oe&536870912&&u5s(Y),m===2&&(Y=o5s(Y,!!(oe&524288)),!Y))return nn;if(Y.length===0)return oe&65536?oe&4194304?Hn:Ot:oe&32768?oe&4194304?Bt:xe:Wi}if(!P&&oe&1048576){let Oe=[];PIn(Oe,u);let He=[];for(let Vt of Y)jt(Oe,kt=>tG(kt.types,Vt))||He.push(Vt);if(!v&&Oe.length===1&&He.length===0)return Oe[0];if(Ul(Oe,(Vt,kt)=>Vt+kt.types.length,0)+He.length===Y.length){for(let Vt of Oe)vWe(He,Vt);P=nUt(1048576,He)}}let Be=(oe&36323331?0:32768)|(oe&2097152?16777216:0);return sUt(Y,Be,v,D,P)}function A5s(u,m){let v,D=[];for(let Y of u){let oe=Tv(Y);if(oe){if(oe.kind!==0&&oe.kind!==1||v&&!iUt(v,oe))return;v=oe,D.push(oe.type)}else{let Be=m!==2097152?ud(Y):void 0;if(Be!==Bs&&Be!==Ys)return}}if(!v)return;let P=sIn(D,m);return C2e(v.kind,v.parameterName,v.parameterIndex,P)}function iUt(u,m){return u.kind===m.kind&&u.parameterIndex===m.parameterIndex}function sUt(u,m,v,D,P){if(u.length===0)return Wi;if(u.length===1)return u[0];let oe=(P?P.flags&1048576?`|${UB(P.types)}`:P.flags&2097152?`&${UB(P.types)}`:`#${P.type.id}|${UB(u)}`:UB(u))+IK(v,D),Be=Wo.get(oe);return Be||(Be=ic(1048576),Be.objectFlags=m|yWe(u,98304),Be.types=u,Be.origin=P,Be.aliasSymbol=v,Be.aliasTypeArguments=D,u.length===2&&u[0].flags&512&&u[1].flags&512&&(Be.flags|=16,Be.intrinsicName="boolean"),Wo.set(oe,Be)),Be}function d5s(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u);m.resolvedType=Ha(At(u.types,nl),1,v,Fse(v))}return m.resolvedType}function p5s(u,m,v){let D=v.flags;return D&2097152?OIn(u,m,v.types):(mk(v)?m&16777216||(m|=16777216,u.set(v.id.toString(),v)):(D&3?(v===Ni&&(m|=8388608),uo(v)&&(m|=1073741824)):(ot||!(D&98304))&&(v===fr&&(m|=262144,v=Bt),u.has(v.id.toString())||(v.flags&109472&&m&109472&&(m|=67108864),u.set(v.id.toString(),v))),m|=D&473694207),m)}function OIn(u,m,v){for(let D of v)m=p5s(u,m,Iy(D));return m}function f5s(u,m){let v=u.length;for(;v>0;){v--;let D=u[v];(D.flags&4&&m&402653312||D.flags&8&&m&256||D.flags&64&&m&2048||D.flags&4096&&m&8192||D.flags&16384&&m&32768||mk(D)&&m&470302716)&&LA(u,v)}}function I5s(u,m){for(let v of u)if(!tG(v.types,m)){if(m===fr)return tG(v.types,Bt);if(m===Bt)return tG(v.types,fr);let D=m.flags&128?$r:m.flags&288?ri:m.flags&2048?ao:m.flags&8192?ci:void 0;if(!D||!tG(v.types,D))return!1}return!0}function h5s(u){let m=u.length,v=Me(u,D=>!!(D.flags&128));for(;m>0;){m--;let D=u[m];if(D.flags&402653184){for(let P of v)if(YQ(P,D)){LA(u,m);break}else if(mK(D))return!0}}return!1}function MIn(u,m){for(let v=0;v!(D.flags&m))}function m5s(u){let m,v=Se(u,oe=>!!(la(oe)&32768));if(v<0)return!1;let D=v+1;for(;D!!(dn.flags&469893116)||mk(dn))){if(Mpe(vr,kt))return Vt;if(!(vr.flags&1048576&&kv(vr,dn=>Mpe(dn,kt)))&&!Mpe(kt,vr))return Wi;Be=67108864}}}let Oe=UB(oe)+(m&2?"*":IK(v,D)),He=yr.get(Oe);if(!He){if(Y&1048576)if(m5s(oe))He=Kg(oe,m,v,D);else if(ue(oe,qe=>!!(qe.flags&1048576&&qe.types[0].flags&32768))){let qe=jt(oe,x2e)?fr:Bt;MIn(oe,32768),He=Ha([Kg(oe,m),qe],1,v,D)}else if(ue(oe,qe=>!!(qe.flags&1048576&&(qe.types[0].flags&65536||qe.types[1].flags&65536))))MIn(oe,65536),He=Ha([Kg(oe,m),Hn],1,v,D);else if(oe.length>=3&&u.length>2){let qe=Math.floor(oe.length/2);He=Kg([Kg(oe.slice(0,qe),m),Kg(oe.slice(qe),m)],m,v,D)}else{if(!BWe(oe))return nn;let qe=_5s(oe,m),Vt=jt(qe,kt=>!!(kt.flags&2097152))&&oUt(qe)>oUt(oe)?nUt(2097152,oe):void 0;He=Ha(qe,1,v,D,Vt)}else He=C5s(oe,Be,v,D);yr.set(Oe,He)}return He}function HIn(u){return Ul(u,(m,v)=>v.flags&1048576?m*v.types.length:v.flags&131072?0:m,1)}function BWe(u){var m;let v=HIn(u);return v>=1e5?((m=ki)==null||m.instant(ki.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:u.map(D=>D.id),size:v}),Sr(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function _5s(u,m){let v=HIn(u),D=[];for(let P=0;P=0;Oe--)if(u[Oe].flags&1048576){let He=u[Oe].types,qe=He.length;Y[Oe]=He[oe%qe],oe=Math.floor(oe/qe)}let Be=Kg(Y,m);Be.flags&131072||D.push(Be)}return D}function YIn(u){return!(u.flags&3145728)||u.aliasSymbol?1:u.flags&1048576&&u.origin?YIn(u.origin):oUt(u.types)}function oUt(u){return Ul(u,(m,v)=>m+YIn(v),0)}function y5s(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u),D=At(u.types,nl),P=D.length===2?D.indexOf(bg):-1,Y=P>=0?D[1-P]:cn,oe=!!(Y.flags&76||Y.flags&134217728&&mK(Y));m.resolvedType=Kg(D,oe?1:0,v,Fse(v))}return m.resolvedType}function QIn(u,m){let v=ic(4194304);return v.type=u,v.indexFlags=m,v}function b5s(u){let m=zl(4194304);return m.type=u,m}function XIn(u,m){return m&1?u.resolvedStringIndexType||(u.resolvedStringIndexType=QIn(u,1)):u.resolvedIndexType||(u.resolvedIndexType=QIn(u,0))}function JIn(u,m){let v=jw(u),D=_S(u),P=E9(u.target||u);if(!P&&!(m&2))return D;let Y=[];if(_K(D)){if(Rse(u))return XIn(u,m);TK(D,Be)}else if(Rse(u)){let Oe=fy(N5(u));wJt(Oe,8576,!!(m&1),Be)}else TK(IWe(D),Be);let oe=m&2?nm(Ha(Y),Oe=>!(Oe.flags&5)):Ha(Y);if(oe.flags&1048576&&D.flags&1048576&&UB(oe.types)===UB(D.types))return D;return oe;function Be(Oe){let He=P?_l(P,v2e(u.mapper,v,Oe)):Oe;Y.push(He===$r?bi:He)}}function E5s(u){let m=jw(u);return v(E9(u)||m);function v(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===m:D.flags&137363456?ue(D.types,v):D.flags&8388608?v(D.objectType)&&v(D.indexType):D.flags&33554432?v(D.baseType)&&v(D.constraint):D.flags&268435456?v(D.type):!1}}function sZ(u){if(p(u))return Wi;if(mC(u))return Iy(Ol(u));if(Un(u))return Iy(zw(u));let m=_3(u);return m!==void 0?TE(Bc(m)):un(u)?Iy(Ol(u)):Wi}function Bq(u,m,v){if(v||!(u2(u)&6)){let D=fa(Yst(u)).nameType;if(!D){let P=Il(u.valueDeclaration);D=u.escapedName==="default"?TE("default"):P&&sZ(P)||(k7(u)?void 0:TE(nf(u)))}if(D&&D.flags&m)return D}return Wi}function UIn(u,m){return!!(u.flags&m||u.flags&2097152&&jt(u.types,v=>UIn(v,m)))}function S5s(u,m,v){let D=v&&(la(u)&7||u.aliasSymbol)?b5s(u):void 0,P=At(Gd(u),oe=>Bq(oe,m)),Y=At(A0(u),oe=>oe!==Uc&&UIn(oe.keyType,m)?oe.keyType===$r&&m&8?bi:oe.keyType:Wi);return Ha(Nn(P,Y),1,void 0,void 0,D)}function aUt(u,m=0){return!!(u.flags&58982400||hW(u)||Yb(u)&&(!E5s(u)||I2e(u)===2)||u.flags&1048576&&!(m&4)&&xJt(u)||u.flags&2097152&&ah(u,465829888)&&jt(u.types,mk))}function ON(u,m=0){return u=JB(u),xse(u)?MJt(ON(u.baseType,m)):aUt(u,m)?XIn(u,m):u.flags&1048576?Kg(At(u.types,v=>ON(v,m))):u.flags&2097152?Ha(At(u.types,v=>ON(v,m))):la(u)&32?JIn(u,m):u===Ni?Ni:u.flags&2?Wi:u.flags&131073?mc:S5s(u,(m&2?128:402653316)|(m&1?0:12584),m===0)}function KIn(u){let m=P3s();return m?kse(m,[u,$r]):$r}function v5s(u){let m=KIn(ON(u));return m.flags&131072?$r:m}function B5s(u){let m=sa(u);if(!m.resolvedType)switch(u.operator){case 143:m.resolvedType=ON(nl(u.type));break;case 158:m.resolvedType=u.type.kind===155?IUt(pne(u.parent)):nn;break;case 148:m.resolvedType=nl(u.type);break;default:pe.assertNever(u.operator)}return m.resolvedType}function w5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=hK([u.head.text,...At(u.templateSpans,v=>v.literal.text)],At(u.templateSpans,v=>nl(v.type)))),m.resolvedType}function hK(u,m){let v=Se(m,He=>!!(He.flags&1179648));if(v>=0)return BWe(m)?Yf(m[v],He=>hK(u,Yl(m,v,He))):nn;if(k(m,Ni))return Ni;let D=[],P=[],Y=u[0];if(!Oe(u,m))return $r;if(D.length===0)return TE(Y);if(P.push(Y),ue(P,He=>He==="")){if(ue(D,He=>!!(He.flags&4)))return $r;if(D.length===1&&mK(D[0]))return D[0]}let oe=`${UB(D)}|${At(P,He=>He.length).join(",")}|${P.join("")}`,Be=tl.get(oe);return Be||tl.set(oe,Be=R5s(P,D)),Be;function Oe(He,qe){for(let Vt=0;Vtwq(u,v)):m.flags&128?TE(jIn(u,m.value)):m.flags&134217728?hK(...N5s(u,m.texts,m.types)):m.flags&268435456&&u===m.symbol?m:m.flags&268435461||_K(m)?zIn(u,m):wWe(m)?zIn(u,hK(["",""],[m])):m}function jIn(u,m){switch(Bet.get(u.escapedName)){case 0:return m.toUpperCase();case 1:return m.toLowerCase();case 2:return m.charAt(0).toUpperCase()+m.slice(1);case 3:return m.charAt(0).toLowerCase()+m.slice(1)}return m}function N5s(u,m,v){switch(Bet.get(u.escapedName)){case 0:return[m.map(D=>D.toUpperCase()),v.map(D=>wq(u,D))];case 1:return[m.map(D=>D.toLowerCase()),v.map(D=>wq(u,D))];case 2:return[m[0]===""?m:[m[0].charAt(0).toUpperCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[wq(u,v[0]),...v.slice(1)]:v];case 3:return[m[0]===""?m:[m[0].charAt(0).toLowerCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[wq(u,v[0]),...v.slice(1)]:v]}return[m,v]}function zIn(u,m){let v=`${kg(u)},${QC(m)}`,D=Qu.get(v);return D||Qu.set(v,D=D5s(u,m)),D}function D5s(u,m){let v=Oc(268435456,u);return v.type=m,v}function k5s(u,m,v,D,P){let Y=ic(8388608);return Y.objectType=u,Y.indexType=m,Y.accessFlags=v,Y.aliasSymbol=D,Y.aliasTypeArguments=P,Y}function E2e(u){if(Rt)return!1;if(la(u)&4096)return!0;if(u.flags&1048576)return ue(u.types,E2e);if(u.flags&2097152)return jt(u.types,E2e);if(u.flags&465829888){let m=NJt(u);return m!==u&&E2e(m)}return!1}function oot(u,m){return g2(u)?A2(u):m&&VI(m)?_3(m):void 0}function cUt(u,m){if(m.flags&8208){let v=ji(u.parent,D=>!_p(D))||u.parent;return hF(v)?av(v)&&Ir(u)&&lmn(v,u):ue(m.declarations,D=>!bu(D)||cR(D))}return!0}function qIn(u,m,v,D,P,Y){let oe=P&&P.kind===213?P:void 0,Be=P&&p(P)?void 0:oot(v,P);if(Be!==void 0){if(Y&256)return W5(m,Be)||hr;let He=Gg(m,Be);if(He){if(Y&64&&P&&He.declarations&&dy(He)&&cUt(P,He)){let Vt=oe?.argumentExpression??(Iv(P)?P.indexType:P);YB(Vt,He.declarations,Be)}if(oe){if(aOe(He,oe,NCn(oe.expression,m.symbol)),m_n(oe,He,QD(oe))){Sr(oe.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,kl(He));return}if(Y&8&&(sa(P).resolvedSymbol=He),bCn(oe,He))return En}let qe=Y&4?b9(He):Io(He);return oe&&QD(oe)!==1?dZ(oe,qe):P&&Iv(P)&&x2e(qe)?Ha([qe,Bt]):qe}if(RE(m,yA)&&IN(Be)){let qe=+Be;if(P&&RE(m,Vt=>!(Vt.target.combinedFlags&12))&&!(Y&16)){let Vt=lUt(P);if(yA(m)){if(qe<0)return Sr(Vt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),Bt;Sr(Vt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,no(m),B9(m),Bc(Be))}else Sr(Vt,Z.Property_0_does_not_exist_on_type_1,Bc(Be),no(m))}if(qe>=0)return Oe($x(m,ri)),Mhn(m,qe,Y&1?fr:void 0)}}if(!(v.flags&98304)&&V_(v,402665900)){if(m.flags&131073)return m;let He=h2e(m,v)||$x(m,$r);if(He){if(Y&2&&He.keyType!==ri){oe&&(Y&4?Sr(oe,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,no(u)):Sr(oe,Z.Type_0_cannot_be_used_to_index_type_1,no(v),no(u)));return}if(P&&He.keyType===$r&&!V_(v,12)){let qe=lUt(P);return Sr(qe,Z.Type_0_cannot_be_used_as_an_index_type,no(v)),Y&1?Ha([He.type,fr]):He.type}return Oe(He),Y&1&&!(m.symbol&&m.symbol.flags&384&&v.symbol&&v.flags&1024&&$m(v.symbol)===m.symbol)?Ha([He.type,fr]):He.type}if(v.flags&131072)return Wi;if(E2e(m))return hr;if(oe&&!pat(m)){if(R9(m)){if(Rt&&v.flags&384)return PA.add(mo(oe,Z.Property_0_does_not_exist_on_type_1,v.value,no(m))),Bt;if(v.flags&12){let qe=At(m.properties,Vt=>Io(Vt));return Ha(Ft(qe,Bt))}}if(m.symbol===pr&&Be!==void 0&&pr.exports.has(Be)&&pr.exports.get(Be).flags&418)Sr(oe,Z.Property_0_does_not_exist_on_type_1,Bc(Be),no(m));else if(Rt&&!(Y&128))if(Be!==void 0&&vCn(Be,m)){let qe=no(m);Sr(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Be,qe,qe+"["+xp(oe.argumentExpression)+"]")}else if(D5(m,ri))Sr(oe.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let qe;if(Be!==void 0&&(qe=TCn(Be,m)))qe!==void 0&&Sr(oe.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Be,no(m),qe);else{let Vt=PQs(m,oe,v);if(Vt!==void 0)Sr(oe,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,no(m),Vt);else{let kt;if(v.flags&1024)kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+no(v)+"]",no(m));else if(v.flags&8192){let vr=f9(v.symbol,oe);kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+vr+"]",no(m))}else v.flags&128||v.flags&256?kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,v.value,no(m)):v.flags&12&&(kt=wu(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,no(v),no(m)));kt=wu(kt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,no(D),no(m)),PA.add(Bw(ms(oe),oe,kt))}}}return}}if(Y&16&&R9(m))return Bt;if(E2e(m))return hr;if(P){let He=lUt(P);if(He.kind!==10&&v.flags&384)Sr(He,Z.Property_0_does_not_exist_on_type_1,""+v.value,no(m));else if(v.flags&12)Sr(He,Z.Type_0_has_no_matching_index_signature_for_type_1,no(m),no(v));else{let qe=He.kind===10?"bigint":no(v);Sr(He,Z.Type_0_cannot_be_used_as_an_index_type,qe)}}if(Xo(v))return v;return;function Oe(He){He&&He.isReadonly&&oe&&(bF(oe)||Tye(oe))&&Sr(oe,Z.Index_signature_in_type_0_only_permits_reading,no(m))}}function lUt(u){return u.kind===213?u.argumentExpression:u.kind===200?u.indexType:u.kind===168?u.expression:u}function wWe(u){if(u.flags&2097152){let m=!1;for(let v of u.types)if(v.flags&101248||wWe(v))m=!0;else if(!(v.flags&524288))return!1;return m}return!!(u.flags&77)||mK(u)}function mK(u){return!!(u.flags&134217728)&&ue(u.types,wWe)||!!(u.flags&268435456)&&wWe(u.type)}function $In(u){return!!(u.flags&402653184)&&!mK(u)}function G5(u){return!!S2e(u)}function CK(u){return!!(S2e(u)&4194304)}function _K(u){return!!(S2e(u)&8388608)}function S2e(u){return u.flags&3145728?(u.objectFlags&2097152||(u.objectFlags|=2097152|Ul(u.types,(m,v)=>m|S2e(v),0)),u.objectFlags&12582912):u.flags&33554432?(u.objectFlags&2097152||(u.objectFlags|=2097152|S2e(u.baseType)|S2e(u.constraint)),u.objectFlags&12582912):(u.flags&58982400||Yb(u)||hW(u)?4194304:0)|(u.flags&63176704||$In(u)?8388608:0)}function oZ(u,m){return u.flags&8388608?G5s(u,m):u.flags&16777216?F5s(u,m):u}function ehn(u,m,v){if(u.flags&1048576||u.flags&2097152&&!aUt(u)){let D=At(u.types,P=>oZ(R1(P,m),v));return u.flags&2097152||v?Kg(D):Ha(D)}}function x5s(u,m,v){if(m.flags&1048576){let D=At(m.types,P=>oZ(R1(u,P),v));return v?Kg(D):Ha(D)}}function G5s(u,m){let v=m?"simplifiedForWriting":"simplifiedForReading";if(u[v])return u[v]===Fh?u:u[v];u[v]=Fh;let D=oZ(u.objectType,m),P=oZ(u.indexType,m),Y=x5s(D,P,m);if(Y)return u[v]=Y;if(!(P.flags&465829888)){let oe=ehn(D,P,m);if(oe)return u[v]=oe}if(hW(D)&&P.flags&296){let oe=Qpe(D,P.flags&8?0:D.target.fixedLength,0,m);if(oe)return u[v]=oe}return Yb(D)&&I2e(D)!==2?u[v]=Yf(aot(D,u.indexType),oe=>oZ(oe,m)):u[v]=u}function F5s(u,m){let v=u.checkType,D=u.extendsType,P=fW(u),Y=IW(u);if(Y.flags&131072&&aZ(P)===aZ(v)){if(v.flags&1||dg(EK(v),EK(D)))return oZ(P,m);if(thn(v,D))return Wi}else if(P.flags&131072&&aZ(Y)===aZ(v)){if(!(v.flags&1)&&dg(EK(v),EK(D)))return Wi;if(v.flags&1||thn(v,D))return oZ(Y,m)}return u}function thn(u,m){return!!(Ha([fWe(u,m),Wi]).flags&131072)}function aot(u,m){let v=N1([jw(u)],[m]),D=F5(u.mapper,v),P=_l(qx(u.target||u),D),Y=Yfn(u)>0||(G5(u)?Gpe(N5(u))>0:Z5s(u,m));return Z0(P,!0,Y)}function Z5s(u,m){let v=L_(m);return!!v&&jt(Gd(u),D=>!!(D.flags&16777216)&&dg(Bq(D,8576),v))}function R1(u,m,v=0,D,P,Y){return pW(u,m,v,D,P,Y)||(D?nn:cn)}function rhn(u,m){return RE(u,v=>{if(v.flags&384){let D=A2(v);if(IN(D)){let P=+D;return P>=0&&P0&&!jt(u.elements,m=>jL(m)||zL(m)||KT(m)&&!!(m.questionToken||m.dotDotDotToken))}function shn(u,m){return G5(u)||m&&yA(u)&&jt(WQ(u),G5)}function gUt(u,m,v,D,P){let Y,oe,Be=0;for(;;){if(Be===1e3)return Sr(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let He=_l(aZ(u.checkType),m),qe=_l(u.extendsType,m);if(He===nn||qe===nn)return nn;if(He===Ni||qe===Ni)return Ni;let Vt=w7(u.node.checkType),kt=w7(u.node.extendsType),vr=ihn(Vt)&&ihn(kt)&&B(Vt.elements)===B(kt.elements),dn=shn(He,vr),vn;if(u.inferTypeParameters){let Yi=F2e(u.inferTypeParameters,void 0,0);m&&(Yi.nonFixingMapper=F5(Yi.nonFixingMapper,m)),dn||nG(Yi.inferences,He,qe,1536),vn=m?F5(Yi.mapper,m):Yi.mapper}let ii=vn?_l(u.extendsType,vn):qe;if(!dn&&!shn(ii,vr)){if(!(ii.flags&3)&&(He.flags&1||!dg(w2e(He),w2e(ii)))){(He.flags&1||v&&!(ii.flags&131072)&&kv(w2e(ii),js=>dg(js,w2e(He))))&&(oe||(oe=[])).push(_l(nl(u.node.trueType),vn||m));let Yi=nl(u.node.falseType);if(Yi.flags&16777216){let js=Yi.root;if(js.node.parent===u.node&&(!js.isDistributive||js.checkType===u.checkType)){u=js;continue}if(Oe(Yi,m))continue}Y=_l(Yi,m);break}if(ii.flags&3||dg(EK(He),EK(ii))){let Yi=nl(u.node.trueType),js=vn||m;if(Oe(Yi,js))continue;Y=_l(Yi,js);break}}Y=ic(16777216),Y.root=u,Y.checkType=_l(u.checkType,m),Y.extendsType=_l(u.extendsType,m),Y.mapper=m,Y.combinedMapper=vn,Y.aliasSymbol=D||u.aliasSymbol,Y.aliasTypeArguments=D?P:cZ(u.aliasTypeArguments,m);break}return oe?Ha(Ft(oe,Y)):Y;function Oe(He,qe){if(He.flags&16777216&&qe){let Vt=He.root;if(Vt.outerTypeParameters){let kt=F5(He.mapper,qe),vr=At(Vt.outerTypeParameters,ii=>w9(ii,kt)),dn=N1(Vt.outerTypeParameters,vr),vn=Vt.isDistributive?w9(Vt.checkType,dn):void 0;if(!vn||vn===Vt.checkType||!(vn.flags&1179648))return u=Vt,m=dn,D=void 0,P=void 0,Vt.aliasSymbol&&Be++,!0}}return!1}}function fW(u){return u.resolvedTrueType||(u.resolvedTrueType=_l(nl(u.root.node.trueType),u.mapper))}function IW(u){return u.resolvedFalseType||(u.resolvedFalseType=_l(nl(u.root.node.falseType),u.mapper))}function L5s(u){return u.resolvedInferredTrueType||(u.resolvedInferredTrueType=u.combinedMapper?_l(nl(u.root.node.trueType),u.combinedMapper):fW(u))}function AUt(u){let m;return u.locals&&u.locals.forEach(v=>{v.flags&262144&&(m=Ft(m,Fp(v)))}),m}function V5s(u){return u.isDistributive&&(kWe(u.checkType,u.node.trueType)||kWe(u.checkType,u.node.falseType))}function P5s(u){let m=sa(u);if(!m.resolvedType){let v=nl(u.checkType),D=Tq(u),P=Fse(D),Y=Fc(u,!0),oe=P?Y:Me(Y,Oe=>kWe(Oe,u)),Be={node:u,checkType:v,extendsType:nl(u.extendsType),isDistributive:!!(v.flags&262144),inferTypeParameters:AUt(u),outerTypeParameters:oe,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:P};m.resolvedType=gUt(Be,void 0,!1),oe&&(Be.instantiations=new Map,Be.instantiations.set(UB(oe),m.resolvedType))}return m.resolvedType}function W5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=R5(Uo(u.typeParameter))),m.resolvedType}function ohn(u){return Ir(u)?[u]:Ft(ohn(u.left),u.right)}function ahn(u){var m;let v=sa(u);if(!v.resolvedType){if(!ky(u))return Sr(u.argument,Z.String_literal_expected),v.resolvedSymbol=it,v.resolvedType=nn;let D=u.isTypeOf?111551:u.flags&16777216?900095:788968,P=F0(u,u.argument.literal);if(!P)return v.resolvedSymbol=it,v.resolvedType=nn;let Y=!!((m=P.exports)!=null&&m.get("export=")),oe=wE(P,!1);if(sf(u.qualifier))if(oe.flags&D)v.resolvedType=chn(u,v,oe,D);else{let Be=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;Sr(u,Be,u.argument.literal.text),v.resolvedSymbol=it,v.resolvedType=nn}else{let Be=ohn(u.qualifier),Oe=oe,He;for(;He=Be.shift();){let qe=Be.length?1920:D,Vt=jA(Zh(Oe)),kt=u.isTypeOf||wo(u)&&Y?Gg(Io(Vt),He.escapedText,!1,!0):void 0,dn=(u.isTypeOf?void 0:f_(B1(Vt),He.escapedText,qe))??kt;if(!dn)return Sr(He,Z.Namespace_0_has_no_exported_member_1,f9(Oe),Wd(He)),v.resolvedType=nn;sa(He).resolvedSymbol=dn,sa(He.parent).resolvedSymbol=dn,Oe=dn}v.resolvedType=chn(u,v,Oe,D)}}return v.resolvedType}function chn(u,m,v,D){let P=Zh(v);return m.resolvedSymbol=P,D===111551?i_n(Io(v),u):tot(u,P)}function lhn(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u);if(!u.symbol||pk(u.symbol).size===0&&!v)m.resolvedType=bg;else{let D=Lh(16,u.symbol);D.aliasSymbol=v,D.aliasTypeArguments=Fse(v),yU(u)&&u.isArrayType&&(D=d0(D)),m.resolvedType=D}}return m.resolvedType}function Tq(u){let m=u.parent;for(;fv(m)||W3(m)||xB(m)&&m.operator===148;)m=m.parent;return gne(m)?Uo(m):void 0}function Fse(u){return u?Ug(u):void 0}function cot(u){return!!(u.flags&524288)&&!Yb(u)}function dUt(u){return lZ(u)||!!(u.flags&474058748)}function pUt(u,m){if(!(u.flags&1048576))return u;if(ue(u.types,dUt))return de(u.types,lZ)||Xg;let v=de(u.types,Y=>!dUt(Y));if(!v||de(u.types,Y=>Y!==v&&!dUt(Y)))return u;return P(v);function P(Y){let oe=qu();for(let Oe of Gd(Y))if(!(u2(Oe)&6)){if(lot(Oe)){let He=Oe.flags&65536&&!(Oe.flags&32768),Vt=gA(16777220,Oe.escapedName,BJt(Oe)|(m?8:0));Vt.links.type=He?Bt:Z0(Io(Oe),!0),Vt.declarations=Oe.declarations,Vt.links.nameType=fa(Oe).nameType,Vt.links.syntheticOrigin=Oe,oe.set(Oe.escapedName,Vt)}}let Be=Hf(Y.symbol,oe,E,E,A0(Y));return Be.objectFlags|=131200,Be}}function OQ(u,m,v,D,P){if(u.flags&1||m.flags&1)return hr;if(u.flags&2||m.flags&2)return cn;if(u.flags&131072)return m;if(m.flags&131072)return u;if(u=pUt(u,P),u.flags&1048576)return BWe([u,m])?Yf(u,He=>OQ(He,m,v,D,P)):nn;if(m=pUt(m,P),m.flags&1048576)return BWe([u,m])?Yf(m,He=>OQ(u,He,v,D,P)):nn;if(m.flags&473960444)return u;if(CK(u)||CK(m)){if(lZ(u))return m;if(u.flags&2097152){let He=u.types,qe=He[He.length-1];if(cot(qe)&&cot(m))return Kg(Nn(He.slice(0,He.length-1),[OQ(qe,m,v,D,P)]))}return Kg([u,m])}let Y=qu(),oe=new Set,Be=u===Xg?A0(m):Pfn([u,m]);for(let He of Gd(m))u2(He)&6?oe.add(He.escapedName):lot(He)&&Y.set(He.escapedName,fUt(He,P));for(let He of Gd(u))if(!(oe.has(He.escapedName)||!lot(He)))if(Y.has(He.escapedName)){let qe=Y.get(He.escapedName),Vt=Io(qe);if(qe.flags&16777216){let kt=Nn(He.declarations,qe.declarations),vr=4|He.flags&16777216,dn=gA(vr,He.escapedName),vn=Io(He),ii=wot(vn),Yi=wot(Vt);dn.links.type=ii===Yi?vn:Ha([vn,Yi],2),dn.links.leftSpread=He,dn.links.rightSpread=qe,dn.declarations=kt,dn.links.nameType=fa(He).nameType,Y.set(He.escapedName,dn)}}else Y.set(He.escapedName,fUt(He,P));let Oe=Hf(v,Y,E,E,Tr(Be,He=>O5s(He,P)));return Oe.objectFlags|=2228352|D,Oe}function lot(u){var m;return!jt(u.declarations,pC)&&(!(u.flags&106496)||!((m=u.declarations)!=null&&m.some(v=>xa(v.parent))))}function fUt(u,m){let v=u.flags&65536&&!(u.flags&32768);if(!v&&m===yR(u))return u;let D=4|u.flags&16777216,P=gA(D,u.escapedName,BJt(u)|(m?8:0));return P.links.type=v?Bt:Io(u),P.declarations=u.declarations,P.links.nameType=fa(u).nameType,P.links.syntheticOrigin=u,P}function O5s(u,m){return u.isReadonly!==m?eG(u.keyType,u.type,m,u.declaration,u.components):u}function TWe(u,m,v,D){let P=Oc(u,v);return P.value=m,P.regularType=D||P,P}function Rq(u){if(u.flags&2976){if(!u.freshType){let m=TWe(u.flags,u.value,u.symbol,u);m.freshType=m,u.freshType=m}return u.freshType}return u}function Iy(u){return u.flags&2976?u.regularType:u.flags&1048576?u.regularType||(u.regularType=Yf(u,Iy)):u}function MQ(u){return!!(u.flags&2976)&&u.freshType===u}function TE(u){let m;return hn.get(u)||(hn.set(u,m=TWe(128,u)),m)}function fR(u){let m;return Oi.get(u)||(Oi.set(u,m=TWe(256,u)),m)}function RWe(u){let m,v=kP(u);return lo.get(v)||(lo.set(v,m=TWe(2048,u)),m)}function M5s(u,m,v){let D,P=`${m}${typeof u=="string"?"@":"#"}${u}`,Y=1024|(typeof u=="string"?128:256);return pa.get(P)||(pa.set(P,D=TWe(Y,u,v)),D)}function H5s(u){if(u.literal.kind===106)return Hn;let m=sa(u);return m.resolvedType||(m.resolvedType=Iy(Ol(u.literal))),m.resolvedType}function Y5s(u){let m=Oc(8192,u);return m.escapedName=`__@${m.symbol.escapedName}@${kg(m.symbol)}`,m}function IUt(u){if(wo(u)&&W3(u)){let m=bP(u);m&&(u=m3(m)||m)}if(eZe(u)){let m=Lge(u)?mS(u.left):mS(u);if(m){let v=fa(m);return v.uniqueESSymbolType||(v.uniqueESSymbolType=Y5s(m))}}return ci}function Q5s(u){let m=r0(u,!1,!1),v=m&&m.parent;if(v&&(xa(v)||v.kind===265)&&!cg(m)&&(!Tc(m)||EP(u,m.body)))return wv(Uo(v)).thisType;if(v&&og(v)&&fo(v.parent)&&nI(v.parent)===6)return wv(mS(v.parent.left).parent).thisType;let D=u.flags&16777216?PL(u):void 0;return D&&UA(D)&&fo(D.parent)&&nI(D.parent)===3?wv(mS(D.parent.left).parent).thisType:YN(m)&&EP(u,m.body)?wv(Uo(m)).thisType:(Sr(u,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),nn)}function hUt(u){let m=sa(u);return m.resolvedType||(m.resolvedType=Q5s(u)),m.resolvedType}function uhn(u){return nl(NWe(u.type)||u.type)}function NWe(u){switch(u.kind){case 197:return NWe(u.type);case 190:if(u.elements.length===1&&(u=u.elements[0],u.kind===192||u.kind===203&&u.dotDotDotToken))return NWe(u.type);break;case 189:return u.elementType}}function X5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=u.dotDotDotToken?uhn(u):Z0(nl(u.type),!0,!!u.questionToken))}function nl(u){return b3s(ghn(u),u)}function ghn(u){switch(u.kind){case 133:case 313:case 314:return hr;case 159:return cn;case 154:return $r;case 150:return ri;case 163:return ao;case 136:return Mn;case 155:return ci;case 116:return es;case 157:return Bt;case 106:return Hn;case 146:return Wi;case 151:return u.flags&524288&&!Rt?hr:fs;case 141:return Mt;case 198:case 110:return hUt(u);case 202:return H5s(u);case 184:return not(u);case 183:return u.assertsModifier?es:Mn;case 234:return not(u);case 187:return CIn(u);case 189:case 190:return e5s(u);case 191:return i5s(u);case 193:return d5s(u);case 194:return y5s(u);case 315:return E3s(u);case 317:return Z0(nl(u.type));case 203:return X5s(u);case 197:case 316:case 310:return nl(u.type);case 192:return uhn(u);case 319:return uKs(u);case 185:case 186:case 188:case 323:case 318:case 324:return lhn(u);case 199:return B5s(u);case 200:return nhn(u);case 201:return uUt(u);case 195:return P5s(u);case 196:return W5s(u);case 204:return w5s(u);case 206:return ahn(u);case 80:case 167:case 212:let m=xv(u);return m?Fp(m):nn;default:return nn}}function uot(u,m,v){if(u&&u.length)for(let D=0;DD.typeParameter),At(v,()=>cn))}function U5s(u){return u.outerReturnMapper??(u.outerReturnMapper=fhn(u.returnMapper,Uhn(u).mapper))}function F5(u,m){return u?Aot(4,u,m):m}function fhn(u,m){return u?Aot(5,u,m):m}function yK(u,m,v){return v?Aot(5,HQ(u,m),v):HQ(u,m)}function v2e(u,m,v){return u?Aot(5,u,HQ(m,v)):HQ(m,v)}function K5s(u){return!u.constraint&&!$st(u)||u.constraint===YI?u:u.restrictiveInstantiation||(u.restrictiveInstantiation=Yy(u.symbol),u.restrictiveInstantiation.constraint=YI,u.restrictiveInstantiation)}function CUt(u){let m=Yy(u.symbol);return m.target=u,m}function Ihn(u,m){return C2e(u.kind,u.parameterName,u.parameterIndex,_l(u.type,m))}function bK(u,m,v){let D;if(u.typeParameters&&!v){D=At(u.typeParameters,CUt),m=F5(N1(u.typeParameters,D),m);for(let Y of D)Y.mapper=m}let P=PN(u.declaration,D,u.thisParameter&&_Ut(u.thisParameter,m),uot(u.parameters,m,_Ut),void 0,void 0,u.minArgumentCount,u.flags&167);return P.target=u,P.mapper=m,P}function _Ut(u,m){let v=fa(u);if(v.type&&!CW(v.type)&&(!(u.flags&65536)||v.writeType&&!CW(v.writeType)))return u;iI(u)&1&&(u=v.target,m=F5(v.mapper,m));let D=gA(u.flags,u.escapedName,1|iI(u)&53256);return D.declarations=u.declarations,D.parent=u.parent,D.links.target=u,D.links.mapper=m,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),v.nameType&&(D.links.nameType=v.nameType),D}function j5s(u,m,v,D){let P=u.objectFlags&4||u.objectFlags&8388608?u.node:u.symbol.declarations[0],Y=sa(P),oe=u.objectFlags&4?Y.resolvedType:u.objectFlags&64?u.target:u,Be=Y.outerTypeParameters;if(!Be){let Oe=Fc(P,!0);if(YN(P)){let qe=rIn(P);Oe=Or(Oe,qe)}Be=Oe||E;let He=u.objectFlags&8388612?[P]:u.symbol.declarations;Be=(oe.objectFlags&8388612||oe.symbol.flags&8192||oe.symbol.flags&2048)&&!oe.aliasTypeArguments?Me(Be,qe=>jt(He,Vt=>kWe(qe,Vt))):Be,Y.outerTypeParameters=Be}if(Be.length){let Oe=F5(u.mapper,m),He=At(Be,dn=>w9(dn,Oe)),qe=v||u.aliasSymbol,Vt=v?D:cZ(u.aliasTypeArguments,m),kt=UB(He)+IK(qe,Vt);oe.instantiations||(oe.instantiations=new Map,oe.instantiations.set(UB(Be)+IK(oe.aliasSymbol,oe.aliasTypeArguments),oe));let vr=oe.instantiations.get(kt);if(!vr){let dn=N1(Be,He);oe.objectFlags&134217728&&m&&(dn=F5(dn,m)),vr=oe.objectFlags&4?OJt(u.target,u.node,dn,qe,Vt):oe.objectFlags&32?q5s(oe,dn,qe,Vt):yUt(oe,dn,qe,Vt),oe.instantiations.set(kt,vr);let vn=la(vr);if(vr.flags&3899393&&!(vn&524288)){let ii=jt(He,CW);la(vr)&524288||(vn&52?vr.objectFlags|=524288|(ii?1048576:0):vr.objectFlags|=ii?0:524288)}}return vr}return u}function z5s(u){return!(u.parent.kind===184&&u.parent.typeArguments&&u===u.parent.typeName||u.parent.kind===206&&u.parent.typeArguments&&u===u.parent.qualifier)}function kWe(u,m){if(u.symbol&&u.symbol.declarations&&u.symbol.declarations.length===1){let D=u.symbol.declarations[0].parent;for(let P=m;P!==D;P=P.parent)if(!P||P.kind===242||P.kind===195&&Lu(P.extendsType,v))return!0;return v(m)}return!0;function v(D){switch(D.kind){case 198:return!!u.isThisType;case 80:return!u.isThisType&&ww(D)&&z5s(D)&&ghn(D)===u;case 187:let P=D.exprName,Y=B0(P);if(!vF(Y)){let oe=L0(Y),Be=u.symbol.declarations[0],Oe=Be.kind===169?Be.parent:u.isThisType?Be:void 0;if(oe.declarations&&Oe)return jt(oe.declarations,He=>EP(He,Oe))||jt(D.typeArguments,v)}return!0;case 175:case 174:return!D.type&&!!D.body||jt(D.typeParameters,v)||jt(D.parameters,v)||!!D.type&&v(D.type)}return!!Lu(D,v)}}function B2e(u){let m=_S(u);if(m.flags&4194304){let v=aZ(m.type);if(v.flags&262144)return v}}function q5s(u,m,v,D){let P=B2e(u);if(P){let oe=_l(P,m);if(P!==oe)return Cmn(JB(oe),Y,v,D)}return _l(_S(u),m)===Ni?Ni:yUt(u,m,v,D);function Y(oe){if(oe.flags&61603843&&oe!==Ni&&!uo(oe)){if(!u.declaration.nameType){let Be;if(Nv(oe)||oe.flags&1&&rt(P,4)<0&&(Be=Xy(P))&&RE(Be,L5))return eMs(oe,u,yK(P,oe,m));if(yA(oe))return $5s(oe,u,P,m);if(jfn(oe))return Kg(At(oe.types,Y))}return yUt(u,yK(P,oe,m))}return oe}}function hhn(u,m){return m&1?!0:m&2?!1:u}function $5s(u,m,v,D){let P=u.target.elementFlags,Y=u.target.fixedLength,oe=Y?yK(v,u,D):D,Be=At(WQ(u),(Vt,kt)=>{let vr=P[kt];return ktVt&1?2:Vt):Oe&8?At(P,Vt=>Vt&2?1:Vt):P,qe=hhn(u.target.readonly,fk(m));return k(Be,nn)?nn:hk(Be,He,qe,u.target.labeledElementDeclarations)}function eMs(u,m,v){let D=mhn(m,ri,!0,v);return uo(D)?nn:d0(D,hhn(Hpe(u),fk(m)))}function mhn(u,m,v,D){let P=v2e(D,jw(u),m),Y=_l(qx(u.target||u),P),oe=fk(u);return ot&&oe&4&&!ah(Y,49152)?mW(Y,!0):ot&&oe&8&&v?Dv(Y,524288):Y}function yUt(u,m,v,D){pe.assert(u.symbol,"anonymous type must have symbol to be instantiated");let P=Lh(u.objectFlags&-1572865|64,u.symbol);if(u.objectFlags&32){P.declaration=u.declaration;let Y=jw(u),oe=CUt(Y);P.typeParameter=oe,m=F5(HQ(Y,oe),m),oe.mapper=m}return u.objectFlags&8388608&&(P.node=u.node),P.target=u,P.mapper=m,P.aliasSymbol=v||u.aliasSymbol,P.aliasTypeArguments=v?D:cZ(u.aliasTypeArguments,m),P.objectFlags|=P.aliasTypeArguments?yWe(P.aliasTypeArguments):0,P}function bUt(u,m,v,D,P){let Y=u.root;if(Y.outerTypeParameters){let oe=At(Y.outerTypeParameters,He=>w9(He,m)),Be=(v?"C":"")+UB(oe)+IK(D,P),Oe=Y.instantiations.get(Be);if(!Oe){let He=N1(Y.outerTypeParameters,oe),qe=Y.checkType,Vt=Y.isDistributive?JB(w9(qe,He)):void 0;Oe=Vt&&qe!==Vt&&Vt.flags&1179648?Cmn(Vt,kt=>gUt(Y,yK(qe,kt,He),v),D,P):gUt(Y,He,v,D,P),Y.instantiations.set(Be,Oe)}return Oe}return u}function _l(u,m){return u&&m?Chn(u,m,void 0,void 0):u}function Chn(u,m,v,D){var P;if(!CW(u))return u;if(ee===100||M>=5e6)return(P=ki)==null||P.instant(ki.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:u.id,instantiationDepth:ee,instantiationCount:M}),Sr(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let Y=WYs(m);Y===-1&&VYs(m);let oe=u.id+IK(v,D),Be=o5[Y!==-1?Y:ak-1],Oe=Be.get(oe);if(Oe)return Oe;V++,M++,ee++;let He=tMs(u,m,v,D);return Y===-1?PYs():Be.set(oe,He),ee--,He}function tMs(u,m,v,D){let P=u.flags;if(P&262144)return w9(u,m);if(P&524288){let Y=u.objectFlags;if(Y&52){if(Y&4&&!u.node){let oe=u.resolvedTypeArguments,Be=cZ(oe,m);return Be!==oe?eUt(u.target,Be):u}return Y&1024?rMs(u,m):j5s(u,m,v,D)}return u}if(P&3145728){let Y=u.flags&1048576?u.origin:void 0,oe=Y&&Y.flags&3145728?Y.types:u.types,Be=cZ(oe,m);if(Be===oe&&v===u.aliasSymbol)return u;let Oe=v||u.aliasSymbol,He=v?D:cZ(u.aliasTypeArguments,m);return P&2097152||Y&&Y.flags&2097152?Kg(Be,0,Oe,He):Ha(Be,1,Oe,He)}if(P&4194304)return ON(_l(u.type,m));if(P&134217728)return hK(u.texts,cZ(u.types,m));if(P&268435456)return wq(u.symbol,_l(u.type,m));if(P&8388608){let Y=v||u.aliasSymbol,oe=v?D:cZ(u.aliasTypeArguments,m);return R1(_l(u.objectType,m),_l(u.indexType,m),u.accessFlags,void 0,Y,oe)}if(P&16777216)return bUt(u,F5(u.mapper,m),!1,v,D);if(P&33554432){let Y=_l(u.baseType,m);if(xse(u))return MJt(Y);let oe=_l(u.constraint,m);return Y.flags&8650752&&G5(oe)?YJt(Y,oe):oe.flags&3||dg(EK(Y),EK(oe))?Y:Y.flags&8650752?YJt(Y,oe):Kg([oe,Y])}return u}function rMs(u,m){let v=_l(u.mappedType,m);if(!(la(v)&32))return u;let D=_l(u.constraintType,m);if(!(D.flags&4194304))return u;let P=zhn(_l(u.source,m),v,D);return P||u}function w2e(u){return u.flags&402915327?u:u.permissiveInstantiation||(u.permissiveInstantiation=_l(u,AI))}function EK(u){return u.flags&402915327?u:(u.restrictiveInstantiation||(u.restrictiveInstantiation=_l(u,wI),u.restrictiveInstantiation.restrictiveInstantiation=u.restrictiveInstantiation),u.restrictiveInstantiation)}function nMs(u,m){return eG(u.keyType,_l(u.type,m),u.isReadonly,u.declaration,u.components)}function bS(u){switch(pe.assert(u.kind!==175||a2(u)),u.kind){case 219:case 220:case 175:case 263:return _hn(u);case 211:return jt(u.properties,bS);case 210:return jt(u.elements,bS);case 228:return bS(u.whenTrue)||bS(u.whenFalse);case 227:return(u.operatorToken.kind===57||u.operatorToken.kind===61)&&(bS(u.left)||bS(u.right));case 304:return bS(u.initializer);case 218:return bS(u.expression);case 293:return jt(u.properties,bS)||$T(u.parent)&&jt(u.parent.parent.children,bS);case 292:{let{initializer:m}=u;return!!m&&bS(m)}case 295:{let{expression:m}=u;return!!m&&bS(m)}}return!1}function _hn(u){return OAe(u)||iMs(u)}function iMs(u){return u.typeParameters||xb(u)||!u.body?!1:u.body.kind!==242?bS(u.body):!!yF(u.body,m=>!!m.expression&&bS(m.expression))}function dot(u){return(RF(u)||a2(u))&&_hn(u)}function yhn(u){if(u.flags&524288){let m=pR(u);if(m.constructSignatures.length||m.callSignatures.length){let v=Lh(16,u.symbol);return v.members=m.members,v.properties=m.properties,v.callSignatures=E,v.constructSignatures=E,v.indexInfos=E,v}}else if(u.flags&2097152)return Kg(At(u.types,yhn));return u}function rG(u,m){return MN(u,m,u0)}function T2e(u,m){return MN(u,m,u0)?-1:0}function EUt(u,m){return MN(u,m,l0)?-1:0}function sMs(u,m){return MN(u,m,ck)?-1:0}function YQ(u,m){return MN(u,m,ck)}function Mpe(u,m){return MN(u,m,bf)}function dg(u,m){return MN(u,m,l0)}function Z5(u,m){return u.flags&1048576?ue(u.types,v=>Z5(v,m)):m.flags&1048576?jt(m.types,v=>Z5(u,v)):u.flags&2097152?jt(u.types,v=>Z5(v,m)):u.flags&58982400?Z5(L_(u)||cn,m):mk(m)?!!(u.flags&67633152):m===qn?!!(u.flags&67633152)&&!mk(u):m===Js?!!(u.flags&524288)&&nKt(u):da(u,vs(m))||Nv(m)&&!Hpe(m)&&Z5(u,uA)}function pot(u,m){return MN(u,m,Ob)}function xWe(u,m){return pot(u,m)||pot(m,u)}function p0(u,m,v,D,P,Y){return Rv(u,m,l0,v,D,P,Y)}function QQ(u,m,v,D,P,Y){return SUt(u,m,l0,v,D,P,Y,void 0)}function SUt(u,m,v,D,P,Y,oe,Be){return MN(u,m,v)?!0:!D||!R2e(P,u,m,v,Y,oe,Be)?Rv(u,m,v,D,Y,oe,Be):!1}function bhn(u){return!!(u.flags&16777216||u.flags&2097152&&jt(u.types,bhn))}function R2e(u,m,v,D,P,Y,oe){if(!u||bhn(v))return!1;if(!Rv(m,v,D,void 0)&&oMs(u,m,v,D,P,Y,oe))return!0;switch(u.kind){case 235:if(!Pbe(u))break;case 295:case 218:return R2e(u.expression,m,v,D,P,Y,oe);case 227:switch(u.operatorToken.kind){case 64:case 28:return R2e(u.right,m,v,D,P,Y,oe)}break;case 211:return pMs(u,m,v,D,Y,oe);case 210:return AMs(u,m,v,D,Y,oe);case 293:return gMs(u,m,v,D,Y,oe);case 220:return aMs(u,m,v,D,Y,oe)}return!1}function oMs(u,m,v,D,P,Y,oe){let Be=tg(m,0),Oe=tg(m,1);for(let He of[Oe,Be])if(jt(He,qe=>{let Vt=ud(qe);return!(Vt.flags&131073)&&Rv(Vt,v,D,void 0)})){let qe=oe||{};p0(m,v,u,P,Y,qe);let Vt=qe.errors[qe.errors.length-1];return lg(Vt,mo(u,He===Oe?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function aMs(u,m,v,D,P,Y){if($u(u.body)||jt(u.parameters,If))return!1;let oe=kK(m);if(!oe)return!1;let Be=tg(v,0);if(!B(Be))return!1;let Oe=u.body,He=ud(oe),qe=Ha(At(Be,ud));if(!Rv(He,qe,D,void 0)){let Vt=Oe&&R2e(Oe,He,qe,D,void 0,P,Y);if(Vt)return Vt;let kt=Y||{};if(Rv(He,qe,D,Oe,void 0,P,kt),kt.errors)return v.symbol&&B(v.symbol.declarations)&&lg(kt.errors[kt.errors.length-1],mo(v.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(SI(u)&2)&&!Pi(He,"then")&&Rv(pOe(He),qe,D,void 0)&&lg(kt.errors[kt.errors.length-1],mo(u,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function Ehn(u,m,v){let D=pW(m,v);if(D)return D;if(m.flags&1048576){let P=Dhn(u,m);if(P)return pW(P,v)}}function Shn(u,m){eOe(u,m,!1);let v=$pe(u,1);return W2e(),v}function GWe(u,m,v,D,P,Y){let oe=!1;for(let Be of u){let{errorNode:Oe,innerExpression:He,nameType:qe,errorMessage:Vt}=Be,kt=Ehn(m,v,qe);if(!kt||kt.flags&8388608)continue;let vr=pW(m,qe);if(!vr)continue;let dn=oot(qe,void 0);if(!Rv(vr,kt,D,void 0)){let vn=He&&R2e(He,vr,kt,D,void 0,P,Y);if(oe=!0,!vn){let ii=Y||{},Yi=He?Shn(He,vr):vr;if(Pt&&Iot(Yi,kt)){let js=mo(Oe,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,no(Yi),no(kt));PA.add(js),ii.errors=[js]}else{let js=!!(dn&&(Gg(v,dn)||it).flags&16777216),Co=!!(dn&&(Gg(m,dn)||it).flags&16777216);kt=AZ(kt,js),vr=AZ(vr,js&&Co),Rv(Yi,kt,D,Oe,Vt,P,ii)&&Yi!==vr&&Rv(vr,kt,D,Oe,Vt,P,ii)}if(ii.errors){let js=ii.errors[ii.errors.length-1],Co=g2(qe)?A2(qe):void 0,Ji=Co!==void 0?Gg(v,Co):void 0,Mi=!1;if(!Ji){let To=h2e(v,qe);To&&To.declaration&&!ms(To.declaration).hasNoDefaultLib&&(Mi=!0,lg(js,mo(To.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Mi&&(Ji&&B(Ji.declarations)||v.symbol&&B(v.symbol.declarations))){let To=Ji&&B(Ji.declarations)?Ji.declarations[0]:v.symbol.declarations[0];ms(To).hasNoDefaultLib||lg(js,mo(To,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,Co&&!(qe.flags&8192)?Bc(Co):no(qe),no(v)))}}}}}return oe}function cMs(u,m,v,D,P,Y){let oe=nm(v,Eot),Be=nm(v,qe=>!Eot(qe)),Oe=Be!==Wi?v8t(13,0,Be,void 0):void 0,He=!1;for(let qe=u.next();!qe.done;qe=u.next()){let{errorNode:Vt,innerExpression:kt,nameType:vr,errorMessage:dn}=qe.value,vn=Oe,ii=oe!==Wi?Ehn(m,oe,vr):void 0;if(ii&&!(ii.flags&8388608)&&(vn=Oe?Ha([Oe,ii]):ii),!vn)continue;let Yi=pW(m,vr);if(!Yi)continue;let js=oot(vr,void 0);if(!Rv(Yi,vn,D,void 0)){let Co=kt&&R2e(kt,Yi,vn,D,void 0,P,Y);if(He=!0,!Co){let Ji=Y||{},Mi=kt?Shn(kt,Yi):Yi;if(Pt&&Iot(Mi,vn)){let To=mo(Vt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,no(Mi),no(vn));PA.add(To),Ji.errors=[To]}else{let To=!!(js&&(Gg(oe,js)||it).flags&16777216),Ka=!!(js&&(Gg(m,js)||it).flags&16777216);vn=AZ(vn,To),Yi=AZ(Yi,To&&Ka),Rv(Mi,vn,D,Vt,dn,P,Ji)&&Mi!==Yi&&Rv(Yi,vn,D,Vt,dn,P,Ji)}}}}return He}function*lMs(u){if(B(u.properties))for(let m of u.properties)yz(m)||BKt(xw(m.name))||(yield{errorNode:m.name,innerExpression:m.initializer,nameType:TE(xw(m.name))})}function*uMs(u,m){if(!B(u.children))return;let v=0;for(let D=0;D1,ii,Yi;if(sot(!1)!==oi){let Co=xIn(hr);ii=nm(vr,Ji=>dg(Ji,Co)),Yi=nm(vr,Ji=>!dg(Ji,Co))}else ii=nm(vr,Eot),Yi=nm(vr,Co=>!Eot(Co));if(vn){if(ii!==Wi){let Co=hk(zot(He,0)),Ji=uMs(He,Oe);oe=cMs(Ji,Co,ii,D,P,Y)||oe}else if(!MN(R1(m,kt),vr,D)){oe=!0;let Co=Sr(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Vt,no(vr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}else if(Yi!==Wi){let Co=dn[0],Ji=vhn(Co,kt,Oe);Ji&&(oe=GWe(function*(){yield Ji}(),m,v,D,P,Y)||oe)}else if(!MN(R1(m,kt),vr,D)){oe=!0;let Co=Sr(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Vt,no(vr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}return oe;function Oe(){if(!Be){let He=xp(u.parent.tagName),qe=rOe(NK(u)),Vt=qe===void 0?"children":Bc(qe),kt=R1(v,TE(Vt)),vr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Be={...vr,key:"!!ALREADY FORMATTED!!",message:XY(vr,He,Vt,no(kt))}}return Be}}function*Bhn(u,m){let v=B(u.elements);if(v)for(let D=0;DOe:_R(u)>Oe))return D&&!(v&8)&&P(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,_R(u),Oe),0;u.typeParameters&&u.typeParameters!==m.typeParameters&&(m=I3s(m),u=LCn(u,m,void 0,oe));let qe=NE(u),Vt=U2e(u),kt=U2e(m);(Vt||kt)&&_l(Vt||kt,Be);let vr=m.declaration?m.declaration.kind:0,dn=!(v&3)&&Qe&&vr!==175&&vr!==174&&vr!==177,vn=-1,ii=k5(u);if(ii&&ii!==es){let Co=k5(m);if(Co){let Ji=!dn&&oe(ii,Co,!1)||oe(Co,ii,D);if(!Ji)return D&&P(Z.The_this_types_of_each_signature_are_incompatible),0;vn&=Ji}}let Yi=Vt||kt?Math.min(qe,Oe):Math.max(qe,Oe),js=Vt||kt?Yi-1:-1;for(let Co=0;Co=_R(u)&&Co<_R(m)&&oe(Ji,Mi,!1)&&(ka=0),!ka)return D&&P(Z.Types_of_parameters_0_and_1_are_incompatible,Bc(jpe(u,Co)),Bc(jpe(m,Co))),0;vn&=ka}}if(!(v&4)){let Co=Jst(m)?hr:m.declaration&&YN(m.declaration)?wv(jA(m.declaration.symbol)):ud(m);if(Co===es||Co===hr)return vn;let Ji=Jst(u)?hr:u.declaration&&YN(u.declaration)?wv(jA(u.declaration.symbol)):ud(u),Mi=Tv(m);if(Mi){let To=Tv(u);if(To)vn&=IMs(To,Mi,D,P,oe);else if(rZe(Mi)||nZe(Mi))return D&&P(Z.Signature_0_must_be_a_type_predicate,lW(u)),0}else vn&=v&1&&oe(Co,Ji,!1)||oe(Ji,Co,D),!vn&&D&&Y&&Y(Ji,Co)}return vn}function IMs(u,m,v,D,P){if(u.kind!==m.kind)return v&&(D(Z.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m))),0;if((u.kind===1||u.kind===3)&&u.parameterIndex!==m.parameterIndex)return v&&(D(Z.Parameter_0_is_not_in_the_same_position_as_parameter_1,u.parameterName,m.parameterName),D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m))),0;let Y=u.type===m.type?-1:u.type&&m.type?P(u.type,m.type,v):0;return Y===0&&v&&D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m)),Y}function hMs(u,m){let v=y2e(u),D=y2e(m),P=ud(v),Y=ud(D);return Y===es||MN(Y,P,l0)||MN(P,Y,l0)?fMs(v,D,!0):!1}function BUt(u){return u!==$d&&u.properties.length===0&&u.callSignatures.length===0&&u.constructSignatures.length===0&&u.indexInfos.length===0}function lZ(u){return u.flags&524288?!Yb(u)&&BUt(pR(u)):u.flags&67108864?!0:u.flags&1048576?jt(u.types,lZ):u.flags&2097152?ue(u.types,lZ):!1}function mk(u){return!!(la(u)&16&&(u.members&&BUt(u)||u.symbol&&u.symbol.flags&2048&&pk(u.symbol).size===0))}function mMs(u){if(ot&&u.flags&1048576){if(!(u.objectFlags&33554432)){let m=u.types;u.objectFlags|=33554432|(m.length>=3&&m[0].flags&32768&&m[1].flags&65536&&jt(m,mk)?67108864:0)}return!!(u.objectFlags&67108864)}return!1}function Zse(u){return!!((u.flags&1048576?u.types[0]:u).flags&32768)}function CMs(u){let m=u.flags&1048576?u.types[0]:u;return!!(m.flags&32768)&&m!==fr}function Thn(u){return u.flags&524288&&!Yb(u)&&Gd(u).length===0&&A0(u).length===1&&!!$x(u,$r)||u.flags&3145728&&ue(u.types,Thn)||!1}function wUt(u,m,v){let D=u.flags&8?$m(u):u,P=m.flags&8?$m(m):m;if(D===P)return!0;if(D.escapedName!==P.escapedName||!(D.flags&256)||!(P.flags&256))return!1;let Y=kg(D)+","+kg(P),oe=g5.get(Y);if(oe!==void 0&&!(oe&2&&v))return!!(oe&1);let Be=Io(P);for(let Oe of Gd(Io(D)))if(Oe.flags&8){let He=Gg(Be,Oe.escapedName);if(!He||!(He.flags&8))return v&&v(Z.Property_0_is_missing_in_type_1,nf(Oe),no(Fp(P),void 0,64)),g5.set(Y,2),!1;let qe=GK(Cp(Oe,307)).value,Vt=GK(Cp(He,307)).value;if(qe!==Vt){let kt=typeof qe=="string",vr=typeof Vt=="string";if(qe!==void 0&&Vt!==void 0){if(v){let dn=kt?`"${YT(qe)}"`:qe,vn=vr?`"${YT(Vt)}"`:Vt;v(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,nf(P),nf(He),vn,dn)}return g5.set(Y,2),!1}if(kt||vr){if(v){let dn=qe??Vt;pe.assert(typeof dn=="string");let vn=`"${YT(dn)}"`;v(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,nf(P),nf(He),vn)}return g5.set(Y,2),!1}}}return g5.set(Y,1),!0}function N2e(u,m,v,D){let P=u.flags,Y=m.flags;return Y&1||P&131072||u===Ni||Y&2&&!(v===bf&&P&1)?!0:Y&131072?!1:!!(P&402653316&&Y&4||P&128&&P&1024&&Y&128&&!(Y&1024)&&u.value===m.value||P&296&&Y&8||P&256&&P&1024&&Y&256&&!(Y&1024)&&u.value===m.value||P&2112&&Y&64||P&528&&Y&16||P&12288&&Y&4096||P&32&&Y&32&&u.symbol.escapedName===m.symbol.escapedName&&wUt(u.symbol,m.symbol,D)||P&1024&&Y&1024&&(P&1048576&&Y&1048576&&wUt(u.symbol,m.symbol,D)||P&2944&&Y&2944&&u.value===m.value&&wUt(u.symbol,m.symbol,D))||P&32768&&(!ot&&!(Y&3145728)||Y&49152)||P&65536&&(!ot&&!(Y&3145728)||Y&65536)||P&524288&&Y&67108864&&!(v===bf&&mk(u)&&!(la(u)&8192))||(v===l0||v===Ob)&&(P&1||P&8&&(Y&32||Y&256&&Y&1024)||P&256&&!(P&1024)&&(Y&32||Y&256&&Y&1024&&u.value===m.value)||mMs(m)))}function MN(u,m,v){if(MQ(u)&&(u=u.regularType),MQ(m)&&(m=m.regularType),u===m)return!0;if(v!==u0){if(v===Ob&&!(m.flags&131072)&&N2e(m,u,v)||N2e(u,m,v))return!0}else if(!((u.flags|m.flags)&61865984)){if(u.flags!==m.flags)return!1;if(u.flags&67358815)return!0}if(u.flags&524288&&m.flags&524288){let D=v.get(Cot(u,m,0,v,!1));if(D!==void 0)return!!(D&1)}return u.flags&469499904||m.flags&469499904?Rv(u,m,v,void 0):!1}function Rhn(u,m){return la(u)&2048&&BKt(m.escapedName)}function FWe(u,m){for(;;){let v=MQ(u)?u.regularType:hW(u)?bMs(u,m):la(u)&4?u.node?iZ(u.target,lf(u)):FUt(u)||u:u.flags&3145728?_Ms(u,m):u.flags&33554432?m?u.baseType:QJt(u):u.flags&25165824?oZ(u,m):u;if(v===u)return v;u=v}}function _Ms(u,m){let v=JB(u);if(v!==u)return v;if(u.flags&2097152&&yMs(u)){let D=Tr(u.types,P=>FWe(P,m));if(D!==u.types)return Kg(D)}return u}function yMs(u){let m=!1,v=!1;for(let D of u.types)if(m||(m=!!(D.flags&465829888)),v||(v=!!(D.flags&98304)||mk(D)),m&&v)return!0;return!1}function bMs(u,m){let v=WQ(u),D=Tr(v,P=>P.flags&25165824?oZ(P,m):P);return v!==D?tUt(u.target,D):u}function Rv(u,m,v,D,P,Y,oe){var Be;let Oe,He,qe,Vt,kt,vr,dn=0,vn=0,ii=0,Yi=0,js=!1,Co=0,Ji=0,Mi,To,Ka=16e6-v.size>>3;pe.assert(v!==u0||!D,"no error reporting in identity checking");let yl=_o(u,m,3,!!D,P);if(To&&gd(),js){let Qt=Cot(u,m,0,v,!1);v.set(Qt,2|(Ka<=0?32:64)),(Be=ki)==null||Be.instant(ki.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:u.id,targetId:m.id,depth:vn,targetDepth:ii});let Cr=Ka<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,jr=Sr(D||ge,Cr,no(u),no(m));oe&&(oe.errors||(oe.errors=[])).push(jr)}else if(Oe){if(Y){let jr=Y();jr&&(Fne(jr,Oe),Oe=jr)}let Qt;if(P&&D&&!yl&&u.symbol){let jr=fa(u.symbol);if(jr.originatingImport&&!Up(jr.originatingImport)&&Rv(Io(jr.target),m,v,void 0)){let yi=mo(jr.originatingImport,Z.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);Qt=Ft(Qt,yi)}}let Cr=Bw(ms(D),D,Oe,Qt);He&&lg(Cr,...He),oe&&(oe.errors||(oe.errors=[])).push(Cr),(!oe||!oe.skipLogging)&&PA.add(Cr)}return D&&oe&&oe.skipLogging&&yl===0&&pe.assert(!!oe.errors,"missed opportunity to interact with error."),yl!==0;function ka(Qt){Oe=Qt.errorInfo,Mi=Qt.lastSkippedInfo,To=Qt.incompatibleStack,Co=Qt.overrideNextErrorInfo,Ji=Qt.skipParentCounter,He=Qt.relatedInfo}function Kc(){return{errorInfo:Oe,lastSkippedInfo:Mi,incompatibleStack:To?.slice(),overrideNextErrorInfo:Co,skipParentCounter:Ji,relatedInfo:He?.slice()}}function Vu(Qt,...Cr){Co++,Mi=void 0,(To||(To=[])).push([Qt,...Cr])}function gd(){let Qt=To||[];To=void 0;let Cr=Mi;if(Mi=void 0,Qt.length===1){Ll(...Qt[0]),Cr&&V0(void 0,...Cr);return}let jr="",Qn=[];for(;Qt.length;){let[yi,...Xn]=Qt.pop();switch(yi.code){case Z.Types_of_property_0_are_incompatible.code:{jr.indexOf("new ")===0&&(jr=`(${jr})`);let Ti=""+Xn[0];jr.length===0?jr=`${Ti}`:Uh(Ti,Mg(Te))?jr=`${jr}.${Ti}`:Ti[0]==="["&&Ti[Ti.length-1]==="]"?jr=`${jr}${Ti}`:jr=`${jr}[${Ti}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(jr.length===0){let Ti=yi;yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?Ti=Z.Call_signature_return_types_0_and_1_are_incompatible:yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(Ti=Z.Construct_signature_return_types_0_and_1_are_incompatible),Qn.unshift([Ti,Xn[0],Xn[1]])}else{let Ti=yi.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",Us=yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";jr=`${Ti}${jr}(${Us})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Qn.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Xn[0],Xn[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Qn.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Xn[0],Xn[1],Xn[2]]);break}default:return pe.fail(`Unhandled Diagnostic: ${yi.code}`)}}jr?Ll(jr[jr.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,jr):Qn.shift();for(let[yi,...Xn]of Qn){let Ti=yi.elidedInCompatabilityPyramid;yi.elidedInCompatabilityPyramid=!1,Ll(yi,...Xn),yi.elidedInCompatabilityPyramid=Ti}Cr&&V0(void 0,...Cr)}function Ll(Qt,...Cr){pe.assert(!!D),To&&gd(),!Qt.elidedInCompatabilityPyramid&&(Ji===0?Oe=wu(Oe,Qt,...Cr):Ji--)}function Ef(Qt,...Cr){Ll(Qt,...Cr),Ji++}function UI(Qt){pe.assert(!!Oe),He?He.push(Qt):He=[Qt]}function V0(Qt,Cr,jr){To&&gd();let[Qn,yi]=Bpe(Cr,jr),Xn=Cr,Ti=Qn;if(!(jr.flags&131072)&&D2e(Cr)&&!TUt(jr)&&(Xn=uZ(Cr),pe.assert(!dg(Xn,jr),"generalized source shouldn't be assignable"),Ti=bse(Xn)),(jr.flags&8388608&&!(Cr.flags&8388608)?jr.objectType.flags:jr.flags)&262144&&jr!==mr&&jr!==ln){let No=L_(jr),zo;No&&(dg(Xn,No)||(zo=dg(Cr,No)))?Ll(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,zo?Qn:Ti,yi,no(No)):(Oe=void 0,Ll(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,yi,Ti))}if(Qt)Qt===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&Pt&&Nhn(Cr,jr).length&&(Qt=Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties);else if(v===Ob)Qt=Z.Type_0_is_not_comparable_to_type_1;else if(Qn===yi)Qt=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(Pt&&Nhn(Cr,jr).length)Qt=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(Cr.flags&128&&jr.flags&1048576){let No=WQs(Cr,jr);if(No){Ll(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,Ti,yi,no(No));return}}Qt=Z.Type_0_is_not_assignable_to_type_1}Ll(Qt,Ti,yi)}function xs(Qt,Cr){let jr=Ese(Qt.symbol)?no(Qt,Qt.symbol.valueDeclaration):no(Qt),Qn=Ese(Cr.symbol)?no(Cr,Cr.symbol.valueDeclaration):no(Cr);(hm===Qt&&$r===Cr||af===Qt&&ri===Cr||dI===Qt&&Mn===Cr||BIn()===Qt&&ci===Cr)&&Ll(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Qn,jr)}function eo(Qt,Cr,jr){return yA(Qt)?Qt.target.readonly&&PWe(Cr)?(jr&&Ll(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,no(Qt),no(Cr)),!1):L5(Cr):Hpe(Qt)&&PWe(Cr)?(jr&&Ll(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,no(Qt),no(Cr)),!1):yA(Cr)?Nv(Qt):!0}function qc(Qt,Cr,jr){return _o(Qt,Cr,3,jr)}function _o(Qt,Cr,jr=3,Qn=!1,yi,Xn=0){if(Qt===Cr)return-1;if(Qt.flags&524288&&Cr.flags&402784252)return v===Ob&&!(Cr.flags&131072)&&N2e(Cr,Qt,v)||N2e(Qt,Cr,v,Qn?Ll:void 0)?-1:(Qn&&du(Qt,Cr,Qt,Cr,yi),0);let Ti=FWe(Qt,!1),Us=FWe(Cr,!0);if(Ti===Us)return-1;if(v===u0)return Ti.flags!==Us.flags?0:Ti.flags&67358815?-1:(Bd(Ti,Us),lSe(Ti,Us,!1,0,jr));if(Ti.flags&262144&&dK(Ti)===Us)return-1;if(Ti.flags&470302716&&Us.flags&1048576){let No=Us.types,zo=No.length===2&&No[0].flags&98304?No[1]:No.length===3&&No[0].flags&98304&&No[1].flags&98304?No[2]:void 0;if(zo&&!(zo.flags&98304)&&(Us=FWe(zo,!0),Ti===Us))return-1}if(v===Ob&&!(Us.flags&131072)&&N2e(Us,Ti,v)||N2e(Ti,Us,v,Qn?Ll:void 0))return-1;if(Ti.flags&469499904||Us.flags&469499904){if(!(Xn&2)&&R9(Ti)&&la(Ti)&8192&&JC(Ti,Us,Qn))return Qn&&V0(yi,Ti,Cr.aliasSymbol?Cr:Us),0;let zo=(v!==Ob||IR(Ti))&&!(Xn&2)&&Ti.flags&405405692&&Ti!==qn&&Us.flags&2621440&&NUt(Us)&&(Gd(Ti).length>0||Gat(Ti)),za=!!(la(Ti)&2048);if(zo&&!SMs(Ti,Us,za)){if(Qn){let _c=no(Qt.aliasSymbol?Qt:Ti),nu=no(Cr.aliasSymbol?Cr:Us),DA=tg(Ti,0),Li=tg(Ti,1);DA.length>0&&_o(ud(DA[0]),Us,1,!1)||Li.length>0&&_o(ud(Li[0]),Us,1,!1)?Ll(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,_c,nu):Ll(Z.Type_0_has_no_properties_in_common_with_type_1,_c,nu)}return 0}Bd(Ti,Us);let to=Ti.flags&1048576&&Ti.types.length<4&&!(Us.flags&1048576)||Us.flags&1048576&&Us.types.length<4&&!(Ti.flags&469499904)?yh(Ti,Us,Qn,Xn):lSe(Ti,Us,Qn,Xn,jr);if(to)return to}return Qn&&du(Qt,Cr,Ti,Us,yi),0}function du(Qt,Cr,jr,Qn,yi){var Xn,Ti;let Us=!!FUt(Qt),No=!!FUt(Cr);jr=Qt.aliasSymbol||Us?Qt:jr,Qn=Cr.aliasSymbol||No?Cr:Qn;let zo=Co>0;if(zo&&Co--,jr.flags&524288&&Qn.flags&524288){let za=Oe;eo(jr,Qn,!0),Oe!==za&&(zo=!!Oe)}if(jr.flags&524288&&Qn.flags&402784252)xs(jr,Qn);else if(jr.symbol&&jr.flags&524288&&qn===jr)Ll(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(la(jr)&2048&&Qn.flags&2097152){let za=Qn.types,La=UQ(lS.IntrinsicAttributes,D),to=UQ(lS.IntrinsicClassAttributes,D);if(!uo(La)&&!uo(to)&&(k(za,La)||k(za,to)))return}else Oe=GJt(Oe,Cr);if(!yi&&zo){let za=Kc();V0(yi,jr,Qn);let La;Oe&&Oe!==za.errorInfo&&(La={code:Oe.code,messageText:Oe.messageText}),ka(za),La&&Oe&&(Oe.canonicalHead=La),Mi=[jr,Qn];return}if(V0(yi,jr,Qn),jr.flags&262144&&((Ti=(Xn=jr.symbol)==null?void 0:Xn.declarations)!=null&&Ti[0])&&!dK(jr)){let za=CUt(jr);if(za.constraint=_l(Qn,HQ(jr,za)),mWe(za)){let La=no(Qn,jr.symbol.declarations[0]);UI(mo(jr.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,La))}}}function Bd(Qt,Cr){if(ki&&Qt.flags&3145728&&Cr.flags&3145728){let jr=Qt,Qn=Cr;if(jr.objectFlags&Qn.objectFlags&32768)return;let yi=jr.types.length,Xn=Qn.types.length;yi*Xn>1e6&&ki.instant(ki.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Qt.id,sourceSize:yi,targetId:Cr.id,targetSize:Xn,pos:D?.pos,end:D?.end})}}function uf(Qt,Cr){return Ha(Ul(Qt,(Qn,yi)=>{var Xn;yi=fy(yi);let Ti=yi.flags&3145728?CWe(yi,Cr):LQ(yi,Cr),Us=Ti&&Io(Ti)||((Xn=vq(yi,Cr))==null?void 0:Xn.type)||Bt;return Ft(Qn,Us)},void 0)||E)}function JC(Qt,Cr,jr){var Qn;if(!H2e(Cr)||!Rt&&la(Cr)&4096)return!1;let yi=!!(la(Qt)&2048);if((v===l0||v===Ob)&&(Jpe(qn,Cr)||!yi&&lZ(Cr)))return!1;let Xn=Cr,Ti;Cr.flags&1048576&&(Xn=oyn(Qt,Cr,_o)||j8s(Cr),Ti=Xn.flags&1048576?Xn.types:[Xn]);for(let Us of Gd(Qt))if(bA(Us,Qt.symbol)&&!Rhn(Qt,Us)){if(!eat(Xn,Us.escapedName,yi)){if(jr){let No=nm(Xn,H2e);if(!D)return pe.fail();if(nQ(D)||eI(D)||eI(D.parent)){Us.valueDeclaration&&EN(Us.valueDeclaration)&&ms(D)===ms(Us.valueDeclaration.name)&&(D=Us.valueDeclaration.name);let zo=kl(Us),za=wCn(zo,No),La=za?kl(za):void 0;La?Ll(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,zo,no(No),La):Ll(Z.Property_0_does_not_exist_on_type_1,zo,no(No))}else{let zo=((Qn=Qt.symbol)==null?void 0:Qn.declarations)&&Nc(Qt.symbol.declarations),za;if(Us.valueDeclaration&&ji(Us.valueDeclaration,La=>La===zo)&&ms(zo)===ms(D)){let La=Us.valueDeclaration;pe.assertNode(La,yw);let to=La.name;D=to,Ir(to)&&(za=TCn(to,No))}za!==void 0?Ef(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,kl(Us),no(No),za):Ef(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,kl(Us),no(No))}}return!0}if(Ti&&!_o(Io(Us),uf(Ti,Us.escapedName),3,jr))return jr&&Vu(Z.Types_of_property_0_are_incompatible,kl(Us)),!0}return!1}function bA(Qt,Cr){return Qt.valueDeclaration&&Cr.valueDeclaration&&Qt.valueDeclaration.parent===Cr.valueDeclaration}function yh(Qt,Cr,jr,Qn){if(Qt.flags&1048576){if(Cr.flags&1048576){let yi=Qt.origin;if(yi&&yi.flags&2097152&&Cr.aliasSymbol&&k(yi.types,Cr))return-1;let Xn=Cr.origin;if(Xn&&Xn.flags&1048576&&Qt.aliasSymbol&&k(Xn.types,Qt))return-1}return v===Ob?Qf(Qt,Cr,jr&&!(Qt.flags&402784252),Qn):Gv(Qt,Cr,jr&&!(Qt.flags&402784252),Qn)}if(Cr.flags&1048576)return Fd(G2e(Qt),Cr,jr&&!(Qt.flags&402784252)&&!(Cr.flags&402784252),Qn);if(Cr.flags&2097152)return ES(Qt,Cr,jr,2);if(v===Ob&&Cr.flags&402784252){let yi=Tr(Qt.types,Xn=>Xn.flags&465829888?L_(Xn)||cn:Xn);if(yi!==Qt.types){if(Qt=Kg(yi),Qt.flags&131072)return 0;if(!(Qt.flags&2097152))return _o(Qt,Cr,1,!1)||_o(Cr,Qt,1,!1)}}return Qf(Qt,Cr,!1,1)}function Vh(Qt,Cr){let jr=-1,Qn=Qt.types;for(let yi of Qn){let Xn=Fd(yi,Cr,!1,0);if(!Xn)return 0;jr&=Xn}return jr}function Fd(Qt,Cr,jr,Qn){let yi=Cr.types;if(Cr.flags&1048576){if(tG(yi,Qt))return-1;if(v!==Ob&&la(Cr)&32768&&!(Qt.flags&1024)&&(Qt.flags&2688||(v===ck||v===bf)&&Qt.flags&256)){let Ti=Qt===Qt.regularType?Qt.freshType:Qt.regularType,Us=Qt.flags&128?$r:Qt.flags&256?ri:Qt.flags&2048?ao:void 0;return Us&&tG(yi,Us)||Ti&&tG(yi,Ti)?-1:0}let Xn=amn(Cr,Qt);if(Xn){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}}for(let Xn of yi){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}if(jr){let Xn=Dhn(Qt,Cr,_o);Xn&&_o(Qt,Xn,2,!0,void 0,Qn)}return 0}function ES(Qt,Cr,jr,Qn){let yi=-1,Xn=Cr.types;for(let Ti of Xn){let Us=_o(Qt,Ti,2,jr,void 0,Qn);if(!Us)return 0;yi&=Us}return yi}function Qf(Qt,Cr,jr,Qn){let yi=Qt.types;if(Qt.flags&1048576&&tG(yi,Cr))return-1;let Xn=yi.length;for(let Ti=0;Ti=Ti.types.length&&Xn.length%Ti.types.length===0){let za=_o(No,Ti.types[Us%Ti.types.length],3,!1,void 0,Qn);if(za){yi&=za;continue}}let zo=_o(No,Cr,1,jr,void 0,Qn);if(!zo)return 0;yi&=zo}return yi}function sfe(Qt=E,Cr=E,jr=E,Qn,yi){if(Qt.length!==Cr.length&&v===u0)return 0;let Xn=Qt.length<=Cr.length?Qt.length:Cr.length,Ti=-1;for(let Us=0;Us(_c|=Li?16:8,to(Li)));let nu;return Yi===3?((Xn=ki)==null||Xn.instant(ki.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Qt.id,sourceIdStack:kt.map(Li=>Li.id),targetId:Cr.id,targetIdStack:vr.map(Li=>Li.id),depth:vn,targetDepth:ii}),nu=3):((Ti=ki)==null||Ti.push(ki.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Qt.id,targetId:Cr.id}),nu=ofe(Qt,Cr,jr,Qn),(Us=ki)==null||Us.pop()),yu&&(yu=to),yi&1&&vn--,yi&2&&ii--,Yi=La,nu?(nu===-1||vn===0&&ii===0)&&DA(nu===-1||nu===3):(v.set(No,2|_c),Ka--,DA(!1)),nu;function DA(Li){for(let ta=za;taUs!==Qt)&&(Xn=_o(Ti,Cr,1,!1,void 0,Qn))}Xn&&!(Qn&2)&&Cr.flags&2097152&&!CK(Cr)&&Qt.flags&2621440?(Xn&=jg(Qt,Cr,jr,void 0,!1,0),Xn&&R9(Qt)&&la(Qt)&8192&&(Xn&=$t(Qt,Cr,!1,jr,0))):Xn&&cot(Cr)&&!L5(Cr)&&Qt.flags&2097152&&fy(Qt).flags&3670016&&!jt(Qt.types,Ti=>Ti===Cr||!!(la(Ti)&262144))&&(Xn&=jg(Qt,Cr,jr,void 0,!0,Qn))}return Xn&&ka(yi),Xn}function y2(Qt,Cr){let jr=fy(N5(Cr)),Qn=[];return wJt(jr,8576,!1,yi=>void Qn.push(_l(Qt,v2e(Cr.mapper,jw(Cr),yi)))),Ha(Qn)}function uSe(Qt,Cr,jr,Qn,yi){let Xn,Ti,Us=!1,No=Qt.flags,zo=Cr.flags;if(v===u0){if(No&3145728){let to=Vh(Qt,Cr);return to&&(to&=Vh(Cr,Qt)),to}if(No&4194304)return _o(Qt.type,Cr.type,3,!1);if(No&8388608&&(Xn=_o(Qt.objectType,Cr.objectType,3,!1))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,!1))||No&16777216&&Qt.root.isDistributive===Cr.root.isDistributive&&(Xn=_o(Qt.checkType,Cr.checkType,3,!1))&&(Xn&=_o(Qt.extendsType,Cr.extendsType,3,!1))&&(Xn&=_o(fW(Qt),fW(Cr),3,!1))&&(Xn&=_o(IW(Qt),IW(Cr),3,!1))||No&33554432&&(Xn=_o(Qt.baseType,Cr.baseType,3,!1))&&(Xn&=_o(Qt.constraint,Cr.constraint,3,!1)))return Xn;if(No&134217728&&Sc(Qt.texts,Cr.texts)){let to=Qt.types,_c=Cr.types;Xn=-1;for(let nu=0;nu!!(_c.flags&262144));){if(Xn=_o(to,Cr,1,!1))return Xn;to=Xy(to)}return 0}}else if(zo&4194304){let to=Cr.type;if(No&4194304&&(Xn=_o(to,Qt.type,3,!1)))return Xn;if(yA(to)){if(Xn=_o(Qt,LIn(to),2,jr))return Xn}else{let _c=TJt(to);if(_c){if(_o(Qt,ON(_c,Cr.indexFlags|4),2,jr)===-1)return-1}else if(Yb(to)){let nu=E9(to),DA=_S(to),Li;if(nu&&Rse(to)){let ta=y2(nu,to);Li=Ha([ta,nu])}else Li=nu||DA;if(_o(Qt,Li,2,jr)===-1)return-1}}}else if(zo&8388608){if(No&8388608){if((Xn=_o(Qt.objectType,Cr.objectType,3,jr))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,jr)),Xn)return Xn;jr&&(Ti=Oe)}if(v===l0||v===Ob){let to=Cr.objectType,_c=Cr.indexType,nu=L_(to)||to,DA=L_(_c)||_c;if(!CK(nu)&&!_K(DA)){let Li=4|(nu!==to?2:0),ta=pW(nu,DA,Li);if(ta){if(jr&&Ti&&ka(yi),Xn=_o(Qt,ta,2,jr,void 0,Qn))return Xn;jr&&Ti&&Oe&&(Oe=za([Ti])<=za([Oe])?Ti:Oe)}}}jr&&(Ti=void 0)}else if(Yb(Cr)&&v!==u0){let to=!!Cr.declaration.nameType,_c=qx(Cr),nu=fk(Cr);if(!(nu&8)){if(!to&&_c.flags&8388608&&_c.objectType===Qt&&_c.indexType===jw(Cr))return-1;if(!Yb(Qt)){let DA=to?E9(Cr):_S(Cr),Li=ON(Qt,2),ta=nu&4,mu=ta?fWe(DA,Li):void 0;if(ta?!(mu.flags&131072):_o(DA,Li,3)){let Jl=qx(Cr),EA=jw(Cr),Ad=Upe(Jl,-98305);if(!to&&Ad.flags&8388608&&Ad.indexType===EA){if(Xn=_o(Qt,Ad.objectType,2,jr))return Xn}else{let ou=to?mu||DA:mu?Kg([mu,EA]):EA,mm=R1(Qt,ou);if(Xn=_o(mm,Jl,3,jr))return Xn}}Ti=Oe,ka(yi)}}}else if(zo&16777216){if(Dq(Cr,vr,ii,10))return 3;let to=Cr;if(!to.root.inferTypeParameters&&!V5s(to.root)&&!(Qt.flags&16777216&&Qt.root===to.root)){let _c=!dg(w2e(to.checkType),w2e(to.extendsType)),nu=!_c&&dg(EK(to.checkType),EK(to.extendsType));if((Xn=_c?-1:_o(Qt,fW(to),2,!1,void 0,Qn))&&(Xn&=nu?-1:_o(Qt,IW(to),2,!1,void 0,Qn),Xn))return Xn}}else if(zo&134217728){if(No&134217728){if(v===Ob)return AHs(Qt,Cr)?0:-1;_l(Qt,tm)}if(Got(Qt,Cr))return-1}else if(Cr.flags&268435456&&!(Qt.flags&268435456)&&xot(Qt,Cr))return-1;if(No&8650752){if(!(No&8388608&&zo&8388608)){let to=dK(Qt)||cn;if(Xn=_o(to,Cr,1,!1,void 0,Qn))return Xn;if(Xn=_o(T1(to,Qt),Cr,1,jr&&to!==cn&&!(zo&No&262144),void 0,Qn))return Xn;if(kJt(Qt)){let _c=dK(Qt.indexType);if(_c&&(Xn=_o(R1(Qt.objectType,_c),Cr,1,jr)))return Xn}}}else if(No&4194304){let to=aUt(Qt.type,Qt.indexFlags)&&la(Qt.type)&32;if(Xn=_o(mc,Cr,1,jr&&!to))return Xn;if(to){let _c=Qt.type,nu=E9(_c),DA=nu&&Rse(_c)?y2(nu,_c):nu||_S(_c);if(Xn=_o(DA,Cr,1,jr))return Xn}}else if(No&134217728&&!(zo&524288)){if(!(zo&134217728)){let to=L_(Qt);if(to&&to!==Qt&&(Xn=_o(to,Cr,1,jr)))return Xn}}else if(No&268435456)if(zo&268435456){if(Qt.symbol!==Cr.symbol)return 0;if(Xn=_o(Qt.type,Cr.type,3,jr))return Xn}else{let to=L_(Qt);if(to&&(Xn=_o(to,Cr,1,jr)))return Xn}else if(No&16777216){if(Dq(Qt,kt,vn,10))return 3;if(zo&16777216){let nu=Qt.root.inferTypeParameters,DA=Qt.extendsType,Li;if(nu){let ta=F2e(nu,void 0,0,qc);nG(ta.inferences,Cr.extendsType,DA,1536),DA=_l(DA,ta.mapper),Li=ta.mapper}if(rG(DA,Cr.extendsType)&&(_o(Qt.checkType,Cr.checkType,3)||_o(Cr.checkType,Qt.checkType,3))&&((Xn=_o(_l(fW(Qt),Li),fW(Cr),3,jr))&&(Xn&=_o(IW(Qt),IW(Cr),3,jr)),Xn))return Xn}let to=RJt(Qt);if(to&&(Xn=_o(to,Cr,1,jr)))return Xn;let _c=!(zo&16777216)&&mWe(Qt)?Qfn(Qt):void 0;if(_c&&(ka(yi),Xn=_o(_c,Cr,1,jr)))return Xn}else{if(v!==ck&&v!==bf&&XOs(Cr)&&lZ(Qt))return-1;if(Yb(Cr))return Yb(Qt)&&(Xn=zn(Qt,Cr,jr))?Xn:0;let to=!!(No&402784252);if(v!==u0)Qt=fy(Qt),No=Qt.flags;else if(Yb(Qt))return 0;if(la(Qt)&4&&la(Cr)&4&&Qt.target===Cr.target&&!yA(Qt)&&!(hot(Qt)||hot(Cr))){if(bot(Qt))return-1;let _c=DUt(Qt.target);if(_c===E)return 1;let nu=La(lf(Qt),lf(Cr),_c,Qn);if(nu!==void 0)return nu}else{if(Hpe(Cr)?RE(Qt,L5):Nv(Cr)&&RE(Qt,_c=>yA(_c)&&!_c.target.readonly))return v!==u0?_o(D5(Qt,ri)||hr,D5(Cr,ri)||hr,3,jr):0;if(hW(Qt)&&yA(Cr)&&!hW(Cr)){let _c=WN(Qt);if(_c!==Qt)return _o(_c,Cr,1,jr)}else if((v===ck||v===bf)&&lZ(Cr)&&la(Cr)&8192&&!lZ(Qt))return 0}if(No&2621440&&zo&524288){let _c=jr&&Oe===yi.errorInfo&&!to;if(Xn=jg(Qt,Cr,_c,void 0,!1,Qn),Xn&&(Xn&=Sp(Qt,Cr,0,_c,Qn),Xn&&(Xn&=Sp(Qt,Cr,1,_c,Qn),Xn&&(Xn&=$t(Qt,Cr,to,_c,Qn)))),Us&&Xn)Oe=Ti||Oe||yi.errorInfo;else if(Xn)return Xn}if(No&2621440&&zo&1048576){let _c=Upe(Cr,36175872);if(_c.flags&1048576){let nu=as(Qt,_c);if(nu)return nu}}}return 0;function za(to){return to?Ul(to,(_c,nu)=>_c+1+za(nu.next),0):0}function La(to,_c,nu,DA){if(Xn=sfe(to,_c,nu,jr,DA))return Xn;if(jt(nu,ta=>!!(ta&24))){Ti=void 0,ka(yi);return}let Li=_c&&vMs(_c,nu);if(Us=!Li,nu!==E&&!Li){if(Us&&!(jr&&jt(nu,ta=>(ta&7)===0)))return 0;Ti=Oe,ka(yi)}}}function zn(Qt,Cr,jr){if(v===Ob||(v===u0?fk(Qt)===fk(Cr):Gpe(Qt)<=Gpe(Cr))){let yi,Xn=_S(Cr),Ti=_l(_S(Qt),Gpe(Qt)<0?jp:tm);if(yi=_o(Xn,Ti,3,jr)){let Us=N1([jw(Qt)],[jw(Cr)]);if(_l(E9(Qt),Us)===_l(E9(Cr),Us))return yi&_o(_l(qx(Qt),Us),qx(Cr),3,jr)}}return 0}function as(Qt,Cr){var jr;let Qn=Gd(Qt),yi=omn(Qn,Cr);if(!yi)return 0;let Xn=1;for(let La of yi)if(Xn*=WHs(AR(La)),Xn>25)return(jr=ki)==null||jr.instant(ki.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Qt.id,targetId:Cr.id,numCombinations:Xn}),0;let Ti=new Array(yi.length),Us=new Set;for(let La=0;LaLa[nu],!1,0,ot||v===Ob))continue e}Qi(zo,_c,yg),to=!0}if(!to)return 0}let za=-1;for(let La of zo)if(za&=jg(Qt,La,!1,Us,!1,0),za&&(za&=Sp(Qt,La,0,!1,0),za&&(za&=Sp(Qt,La,1,!1,0),za&&!(yA(Qt)&&yA(La))&&(za&=$t(Qt,La,!1,!1,0)))),!za)return za;return za}function Ms(Qt,Cr){if(!Cr||Qt.length===0)return Qt;let jr;for(let Qn=0;Qn5?Ll(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,no(Qt),no(Cr),At(Xn.slice(0,4),Ti=>kl(Ti)).join(", "),Xn.length-4):Ll(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,no(Qt),no(Cr),At(Xn,Ti=>kl(Ti)).join(", ")),yi&&Oe&&Co++)}function jg(Qt,Cr,jr,Qn,yi,Xn){if(v===u0)return nA(Qt,Cr,Qn);let Ti=-1;if(yA(Cr)){if(L5(Qt)){if(!Cr.target.readonly&&(Hpe(Qt)||yA(Qt)&&Qt.target.readonly))return 0;let La=B9(Qt),to=B9(Cr),_c=yA(Qt)?Qt.target.combinedFlags&4:4,nu=!!(Cr.target.combinedFlags&12),DA=yA(Qt)?Qt.target.minLength:0,Li=Cr.target.minLength;if(!_c&&La=Jl?to-1-Math.min(Cm,EA):ou,W0=Cr.target.elementFlags[W_];if(W0&8&&!(mm&8))return jr&&Ll(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,W_),0;if(mm&8&&!(W0&12))return jr&&Ll(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,ou,W_),0;if(W0&1&&!(mm&1))return jr&&Ll(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,W_),0;if(Ad&&((mm&12||W0&12)&&(Ad=!1),Ad&&Qn?.has(""+ou)))continue;let Uy=AZ(ta[ou],!!(mm&W0&2)),IZ=mu[W_],Q5=mm&8&&W0&4?d0(IZ):AZ(IZ,!!(W0&2)),zQ=_o(Uy,Q5,3,jr,void 0,Xn);if(!zQ)return jr&&(to>1||La>1)&&(nu&&ou>=Jl&&Cm>=EA&&Jl!==La-EA-1?Vu(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Jl,La-EA-1,W_):Vu(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,ou,W_)),0;Ti&=zQ}return Ti}if(Cr.target.combinedFlags&12)return 0}let Us=(v===ck||v===bf)&&!R9(Qt)&&!bot(Qt)&&!yA(Qt),No=UUt(Qt,Cr,Us,!1);if(No)return jr&&tC(Qt,Cr)&&tc(Qt,Cr,No,Us),0;if(R9(Cr)){for(let La of Ms(Gd(Qt),Qn))if(!LQ(Cr,La.escapedName)&&!(Io(La).flags&32768))return jr&&Ll(Z.Property_0_does_not_exist_on_type_1,kl(La),no(Cr)),0}let zo=Gd(Cr),za=yA(Qt)&&yA(Cr);for(let La of Ms(zo,Qn)){let to=La.escapedName;if(!(La.flags&4194304)&&(!za||IN(to)||to==="length")&&(!yi||La.flags&16777216)){let _c=Gg(Qt,to);if(_c&&_c!==La){let nu=ea(Qt,Cr,_c,La,AR,jr,Xn,v===Ob);if(!nu)return 0;Ti&=nu}}}return Ti}function nA(Qt,Cr,jr){if(!(Qt.flags&524288&&Cr.flags&524288))return 0;let Qn=Ms(S9(Qt),jr),yi=Ms(S9(Cr),jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti of Qn){let Us=LQ(Cr,Ti.escapedName);if(!Us)return 0;let No=xUt(Ti,Us,_o);if(!No)return 0;Xn&=No}return Xn}function Sp(Qt,Cr,jr,Qn,yi){var Xn,Ti;if(v===u0)return Y5(Qt,Cr,jr);if(Cr===$d||Qt===$d)return-1;let Us=Qt.symbol&&YN(Qt.symbol.valueDeclaration),No=Cr.symbol&&YN(Cr.symbol.valueDeclaration),zo=tg(Qt,Us&&jr===1?0:jr),za=tg(Cr,No&&jr===1?0:jr);if(jr===1&&zo.length&&za.length){let DA=!!(zo[0].flags&4),Li=!!(za[0].flags&4);if(DA&&!Li)return Qn&&Ll(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!Di(zo[0],za[0],Qn))return 0}let La=-1,to=jr===1?Qb:P0,_c=la(Qt),nu=la(Cr);if(_c&64&&nu&64&&Qt.symbol===Cr.symbol||_c&4&&nu&4&&Qt.target===Cr.target){pe.assertEqual(zo.length,za.length);for(let DA=0;DAlW(Jl,void 0,262144,jr);return Ll(Z.Type_0_is_not_assignable_to_type_1,mu(Li),mu(ta)),Ll(Z.Types_of_construct_signatures_are_incompatible),La}}else e:for(let DA of za){let Li=Kc(),ta=Qn;for(let mu of zo){let Jl=H5(mu,DA,!0,ta,yi,to(mu,DA));if(Jl){La&=Jl,ka(Li);continue e}ta=!1}return ta&&Ll(Z.Type_0_provides_no_match_for_the_signature_1,no(Qt),lW(DA,void 0,void 0,jr)),0}return La}function tC(Qt,Cr){let jr=_We(Qt,0),Qn=_We(Qt,1),yi=S9(Qt);return(jr.length||Qn.length)&&!yi.length?!!(tg(Cr,0).length&&jr.length||tg(Cr,1).length&&Qn.length):!0}function P0(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,no(jr),no(Qn)):(jr,Qn)=>Vu(Z.Call_signature_return_types_0_and_1_are_incompatible,no(jr),no(Qn))}function Qb(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,no(jr),no(Qn)):(jr,Qn)=>Vu(Z.Construct_signature_return_types_0_and_1_are_incompatible,no(jr),no(Qn))}function H5(Qt,Cr,jr,Qn,yi,Xn){let Ti=v===ck?16:v===bf?24:0;return vUt(jr?y2e(Qt):Qt,jr?y2e(Cr):Cr,Ti,Qn,Ll,Xn,Us,tm);function Us(No,zo,za){return _o(No,zo,3,za,void 0,yi)}}function Y5(Qt,Cr,jr){let Qn=tg(Qt,jr),yi=tg(Cr,jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti=0;TiNo.keyType===$r),Us=-1;for(let No of Xn){let zo=v!==bf&&!jr&&Ti&&No.type.flags&1?-1:Yb(Qt)&&Ti?_o(qx(Qt),No.type,3,Qn):lt(Qt,No,Qn,yi);if(!zo)return 0;Us&=zo}return Us}function lt(Qt,Cr,jr,Qn){let yi=h2e(Qt,Cr.keyType);return yi?Mat(yi,Cr,jr,Qn):!(Qn&1)&&(v!==bf||la(Qt)&8192)&&Tot(Qt)?xOe(Qt,Cr,jr,Qn):(jr&&Ll(Z.Index_signature_for_type_0_is_missing_in_type_1,no(Cr.keyType),no(Qt)),0)}function hi(Qt,Cr){let jr=A0(Qt),Qn=A0(Cr);if(jr.length!==Qn.length)return 0;for(let yi of Qn){let Xn=$x(Qt,yi.keyType);if(!(Xn&&_o(Xn.type,yi.type,3)&&Xn.isReadonly===yi.isReadonly))return 0}return-1}function Di(Qt,Cr,jr){if(!Qt.declaration||!Cr.declaration)return!0;let Qn=MY(Qt.declaration,6),yi=MY(Cr.declaration,6);return yi===2||yi===4&&Qn!==2||yi!==4&&!Qn?!0:(jr&&Ll(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,w5(Qn),w5(yi)),!1)}}function TUt(u){if(u.flags&16)return!1;if(u.flags&3145728)return!!F(u.types,TUt);if(u.flags&465829888){let m=dK(u);if(m&&m!==u)return TUt(m)}return IR(u)||!!(u.flags&134217728)||!!(u.flags&268435456)}function Nhn(u,m){return yA(u)&&yA(m)?E:Gd(m).filter(v=>Iot(Pi(u,v.escapedName),Io(v)))}function Iot(u,m){return!!u&&!!m&&ah(u,32768)&&!!x2e(m)}function EMs(u){return Gd(u).filter(m=>x2e(Io(m)))}function Dhn(u,m,v=EUt){return oyn(u,m,v)||X8s(u,m)||J8s(u,m)||U8s(u,m)||K8s(u,m)}function RUt(u,m,v){let D=u.types,P=D.map(oe=>oe.flags&402784252?0:-1);for(let[oe,Be]of m){let Oe=!1;for(let He=0;He!!v(Vt,qe))?Oe=!0:P[He]=3)}for(let He=0;HeP[Be]),0):u;return Y.flags&131072?u:Y}function NUt(u){if(u.flags&524288){let m=pR(u);return m.callSignatures.length===0&&m.constructSignatures.length===0&&m.indexInfos.length===0&&m.properties.length>0&&ue(m.properties,v=>!!(v.flags&16777216))}return u.flags&33554432?NUt(u.baseType):u.flags&2097152?ue(u.types,NUt):!1}function SMs(u,m,v){for(let D of Gd(u))if(eat(m,D.escapedName,v))return!0;return!1}function DUt(u){return u===NA||u===uA||u.objectFlags&8?Ne:xhn(u.symbol,u.typeParameters)}function khn(u){return xhn(u,fa(u).typeParameters)}function xhn(u,m=E){var v,D;let P=fa(u);if(!P.variances){(v=ki)==null||v.push(ki.Phase.CheckTypes,"getVariancesWorker",{arity:m.length,id:QC(Fp(u))});let Y=OU,oe=a9;OU||(OU=!0,a9=Mx.length),P.variances=E;let Be=[];for(let Oe of m){let He=kUt(Oe),qe=He&16384?He&8192?0:1:He&8192?2:void 0;if(qe===void 0){let Vt=!1,kt=!1,vr=yu;yu=ii=>ii?kt=!0:Vt=!0;let dn=ZWe(u,Oe,_f),vn=ZWe(u,Oe,QI);qe=(dg(vn,dn)?1:0)|(dg(dn,vn)?2:0),qe===3&&dg(ZWe(u,Oe,ve),dn)&&(qe=4),yu=vr,(Vt||kt)&&(Vt&&(qe|=8),kt&&(qe|=16))}Be.push(qe)}Y||(OU=!1,a9=oe),P.variances=Be,(D=ki)==null||D.pop({variances:Be.map(pe.formatVariance)})}return P.variances}function ZWe(u,m,v){let D=HQ(m,v),P=Fp(u);if(uo(P))return P;let Y=u.flags&524288?kse(u,cZ(fa(u).typeParameters,D)):iZ(P,cZ(P.typeParameters,D));return on.add(QC(Y)),Y}function hot(u){return on.has(QC(u))}function kUt(u){var m;return Ul((m=u.symbol)==null?void 0:m.declarations,(v,D)=>v|o_(D),0)&28672}function vMs(u,m){for(let v=0;v!!(m.flags&262144)||mot(m))}function TMs(u,m,v,D){let P=[],Y="",oe=Oe(u,0),Be=Oe(m,0);return`${Y}${oe},${Be}${v}`;function Oe(He,qe=0){let Vt=""+He.target.id;for(let kt of lf(He)){if(kt.flags&262144){if(D||BMs(kt)){let vr=P.indexOf(kt);vr<0&&(vr=P.length,P.push(kt)),Vt+="="+vr;continue}Y="*"}else if(qe<4&&mot(kt)){Vt+="<"+Oe(kt,qe+1)+">";continue}Vt+="-"+kt.id}return Vt}}function Cot(u,m,v,D,P){if(D===u0&&u.id>m.id){let oe=u;u=m,m=oe}let Y=v?":"+v:"";return mot(u)&&mot(m)?TMs(u,m,Y,P):`${u.id},${m.id}${Y}`}function LWe(u,m){if(iI(u)&6){for(let v of u.links.containingType.types){let D=Gg(v,u.escapedName),P=D&&LWe(D,m);if(P)return P}return}return m(u)}function Nq(u){return u.parent&&u.parent.flags&32?Fp($m(u)):void 0}function _ot(u){let m=Nq(u),v=m&&Kw(m)[0];return v&&Pi(v,u.escapedName)}function RMs(u,m){return LWe(u,v=>{let D=Nq(v);return D?da(D,m):!1})}function NMs(u,m){return!LWe(m,v=>u2(v)&4?!RMs(u,Nq(v)):!1)}function Ghn(u,m,v){return LWe(m,D=>u2(D,v)&4?!da(u,Nq(D)):!1)?void 0:u}function Dq(u,m,v,D=3){if(v>=D){if((la(u)&96)===96&&(u=Fhn(u)),u.flags&2097152)return jt(u.types,Be=>Dq(Be,m,v,D));let P=yot(u),Y=0,oe=0;for(let Be=0;Be=oe&&(Y++,Y>=D))return!0;oe=Oe.id}}}return!1}function Fhn(u){let m;for(;(la(u)&96)===96&&(m=N5(u))&&(m.symbol||m.flags&2097152&&jt(m.types,v=>!!v.symbol));)u=m;return u}function Zhn(u,m){return(la(u)&96)===96&&(u=Fhn(u)),u.flags&2097152?jt(u.types,v=>Zhn(v,m)):yot(u)===m}function yot(u){if(u.flags&524288&&!jUt(u)){if(la(u)&4&&u.node)return u.node;if(u.symbol&&!(la(u)&16&&u.symbol.flags&32))return u.symbol;if(yA(u))return u.target}if(u.flags&262144)return u.symbol;if(u.flags&8388608){do u=u.objectType;while(u.flags&8388608);return u}return u.flags&16777216?u.root:u}function DMs(u,m){return xUt(u,m,T2e)!==0}function xUt(u,m,v){if(u===m)return-1;let D=u2(u)&6,P=u2(m)&6;if(D!==P)return 0;if(D){if(Xse(u)!==Xse(m))return 0}else if((u.flags&16777216)!==(m.flags&16777216))return 0;return yR(u)!==yR(m)?0:v(Io(u),Io(m))}function kMs(u,m,v){let D=NE(u),P=NE(m),Y=_R(u),oe=_R(m),Be=Ck(u),Oe=Ck(m);return!!(D===P&&Y===oe&&Be===Oe||v&&Y<=oe)}function VWe(u,m,v,D,P,Y){if(u===m)return-1;if(!kMs(u,m,v)||B(u.typeParameters)!==B(m.typeParameters))return 0;if(m.typeParameters){let Oe=N1(u.typeParameters,m.typeParameters);for(let He=0;Hem|(v.flags&1048576?Lhn(v.types):v.flags),0)}function FMs(u){if(u.length===1)return u[0];let m=ot?Tr(u,D=>nm(D,P=>!(P.flags&98304))):u,v=GMs(m)?Ha(m):ZMs(m);return m===u?v:OWe(v,Lhn(u)&98304)}function ZMs(u){let m=Ul(u,(v,D)=>Mpe(v,D)?D:v);return ue(u,v=>v===m||Mpe(v,m))?m:Ul(u,(v,D)=>YQ(v,D)?D:v)}function LMs(u){return Ul(u,(m,v)=>YQ(v,m)?v:m)}function Nv(u){return!!(la(u)&4)&&(u.target===NA||u.target===uA)}function Hpe(u){return!!(la(u)&4)&&u.target===uA}function L5(u){return Nv(u)||yA(u)}function PWe(u){return Nv(u)&&!Hpe(u)||yA(u)&&!u.target.readonly}function WWe(u){return Nv(u)?lf(u)[0]:void 0}function T9(u){return Nv(u)||!(u.flags&98304)&&dg(u,E1)}function GUt(u){return PWe(u)||!(u.flags&98305)&&dg(u,d_)}function FUt(u){if(!(la(u)&4)||!(la(u.target)&3))return;if(la(u)&33554432)return la(u)&67108864?u.cachedEquivalentBaseType:void 0;u.objectFlags|=33554432;let m=u.target;if(la(m)&1){let P=XB(m);if(P&&P.expression.kind!==80&&P.expression.kind!==212)return}let v=Kw(m);if(v.length!==1||pk(u.symbol).size)return;let D=B(m.typeParameters)?_l(v[0],N1(m.typeParameters,lf(u).slice(0,m.typeParameters.length))):v[0];return B(lf(u))>B(m.typeParameters)&&(D=T1(D,Ei(lf(u)))),u.objectFlags|=67108864,u.cachedEquivalentBaseType=D}function Vhn(u){return ot?u===Ui:u===xe}function bot(u){let m=WWe(u);return!!m&&Vhn(m)}function Ype(u){let m;return yA(u)||!!Gg(u,"0")||T9(u)&&!!(m=Pi(u,"length"))&&RE(m,v=>!!(v.flags&256))}function Eot(u){return T9(u)||Ype(u)}function VMs(u,m){let v=Pi(u,""+m);if(v)return v;if(RE(u,yA))return Mhn(u,m,Te.noUncheckedIndexedAccess?Bt:void 0)}function PMs(u){return!(u.flags&240544)}function IR(u){return!!(u.flags&109472)}function Phn(u){let m=WN(u);return m.flags&2097152?jt(m.types,IR):IR(m)}function WMs(u){return u.flags&2097152&&de(u.types,IR)||u}function D2e(u){return u.flags&16?!0:u.flags&1048576?u.flags&1024?!0:ue(u.types,IR):IR(u)}function uZ(u){return u.flags&1056?Hst(u):u.flags&402653312?$r:u.flags&256?ri:u.flags&2048?ao:u.flags&512?Mn:u.flags&1048576?OMs(u):u}function OMs(u){let m=`B${QC(u)}`;return Hy(m)??HB(m,Yf(u,uZ))}function ZUt(u){return u.flags&402653312?$r:u.flags&288?ri:u.flags&2048?ao:u.flags&512?Mn:u.flags&1048576?Yf(u,ZUt):u}function V5(u){return u.flags&1056&&MQ(u)?Hst(u):u.flags&128&&MQ(u)?$r:u.flags&256&&MQ(u)?ri:u.flags&2048&&MQ(u)?ao:u.flags&512&&MQ(u)?Mn:u.flags&1048576?Yf(u,V5):u}function Whn(u){return u.flags&8192?ci:u.flags&1048576?Yf(u,Whn):u}function LUt(u,m){return fat(u,m)||(u=Whn(V5(u))),Iy(u)}function MMs(u,m,v){if(u&&IR(u)){let D=m?v?eSe(m):m:void 0;u=LUt(u,D)}return u}function VUt(u,m,v,D){if(u&&IR(u)){let P=m?D9(v,m,D):void 0;u=LUt(u,P)}return u}function yA(u){return!!(la(u)&4&&u.target.objectFlags&8)}function hW(u){return yA(u)&&!!(u.target.combinedFlags&8)}function Ohn(u){return hW(u)&&u.target.elementFlags.length===1}function Sot(u){return Qpe(u,u.target.fixedLength)}function Mhn(u,m,v){return Yf(u,D=>{let P=D,Y=Sot(P);return Y?v&&m>=rUt(P.target)?Ha([Y,v]):Y:Bt})}function HMs(u){let m=Sot(u);return m&&d0(m)}function Qpe(u,m,v=0,D=!1,P=!1){let Y=B9(u)-v;if(m(v&12)===(m.target.elementFlags[D]&12))}function Hhn({value:u}){return u.base10Value==="0"}function Yhn(u){return nm(u,m=>hR(m,4194304))}function QMs(u){return Yf(u,XMs)}function XMs(u){return u.flags&4?gse:u.flags&8?hpe:u.flags&64?Ase:u===Ys||u===Bs||u.flags&114691||u.flags&128&&u.value===""||u.flags&256&&u.value===0||u.flags&2048&&Hhn(u)?u:Wi}function OWe(u,m){let v=m&~u.flags&98304;return v===0?u:Ha(v===32768?[u,Bt]:v===65536?[u,Hn]:[u,Bt,Hn])}function mW(u,m=!1){pe.assert(ot);let v=m?Je:Bt;return u===v||u.flags&1048576&&u.types[0]===v?u:Ha([u,v])}function JMs(u){return gy||(gy=Gse("NonNullable",524288,void 0)||it),gy!==it?kse(gy,[u]):Kg([u,Xg])}function gZ(u){return ot?wK(u,2097152):u}function Qhn(u){return ot?Ha([u,In]):u}function vot(u){return ot?Zot(u,In):u}function Bot(u,m,v){return v?i3(m)?mW(u):Qhn(u):u}function k2e(u,m){return gY(m)?gZ(u):GC(m)?vot(u):u}function AZ(u,m){return Pt&&m?Zot(u,fr):u}function x2e(u){return u===fr||!!(u.flags&1048576)&&u.types[0]===fr}function wot(u){return Pt?Zot(u,fr):Dv(u,524288)}function UMs(u,m){return(u.flags&524)!==0&&(m.flags&28)!==0}function Tot(u){let m=la(u);return u.flags&2097152?ue(u.types,Tot):!!(u.symbol&&u.symbol.flags&7040&&!(u.symbol.flags&32)&&!Gat(u))||!!(m&4194304)||!!(m&1024&&Tot(u.source))}function SK(u,m){let v=gA(u.flags,u.escapedName,iI(u)&8);v.declarations=u.declarations,v.parent=u.parent,v.links.type=m,v.links.target=u,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration);let D=fa(u).nameType;return D&&(v.links.nameType=D),v}function KMs(u,m){let v=qu();for(let D of S9(u)){let P=Io(D),Y=m(P);v.set(D.escapedName,Y===P?D:SK(D,Y))}return v}function G2e(u){if(!(R9(u)&&la(u)&8192))return u;let m=u.regularType;if(m)return m;let v=u,D=KMs(u,G2e),P=Hf(v.symbol,D,v.callSignatures,v.constructSignatures,v.indexInfos);return P.flags=v.flags,P.objectFlags|=v.objectFlags&-8193,u.regularType=P,P}function Xhn(u,m,v){return{parent:u,propertyName:m,siblings:v,resolvedProperties:void 0}}function Jhn(u){if(!u.siblings){let m=[];for(let v of Jhn(u.parent))if(R9(v)){let D=LQ(v,u.propertyName);D&&TK(Io(D),P=>{m.push(P)})}u.siblings=m}return u.siblings}function jMs(u){if(!u.resolvedProperties){let m=new Map;for(let v of Jhn(u))if(R9(v)&&!(la(v)&2097152))for(let D of Gd(v))m.set(D.escapedName,D);u.resolvedProperties=Do(m.values())}return u.resolvedProperties}function zMs(u,m){if(!(u.flags&4))return u;let v=Io(u),D=m&&Xhn(m,u.escapedName,void 0),P=PUt(v,D);return P===v?u:SK(u,P)}function qMs(u){let m=pt.get(u.escapedName);if(m)return m;let v=SK(u,Je);return v.flags|=16777216,pt.set(u.escapedName,v),v}function $Ms(u,m){let v=qu();for(let P of S9(u))v.set(P.escapedName,zMs(P,m));if(m)for(let P of jMs(m))v.has(P.escapedName)||v.set(P.escapedName,qMs(P));let D=Hf(u.symbol,v,E,E,Tr(A0(u),P=>eG(P.keyType,D1(P.type),P.isReadonly,P.declaration,P.components)));return D.objectFlags|=la(u)&266240,D}function D1(u){return PUt(u,void 0)}function PUt(u,m){if(la(u)&196608){if(m===void 0&&u.widened)return u.widened;let v;if(u.flags&98305)v=hr;else if(R9(u))v=$Ms(u,m);else if(u.flags&1048576){let D=m||Xhn(void 0,void 0,u.types),P=Tr(u.types,Y=>Y.flags&98304?Y:PUt(Y,D));v=Ha(P,jt(P,lZ)?2:1)}else u.flags&2097152?v=Kg(Tr(u.types,D1)):L5(u)&&(v=iZ(u.target,Tr(lf(u),D1)));return v&&m===void 0&&(u.widened=v),v||u}return u}function Rot(u){var m;let v=!1;if(la(u)&65536){if(u.flags&1048576)if(jt(u.types,lZ))v=!0;else for(let D of u.types)v||(v=Rot(D));else if(L5(u))for(let D of lf(u))v||(v=Rot(D));else if(R9(u))for(let D of S9(u)){let P=Io(D);if(la(P)&65536&&(v=Rot(P),!v)){let Y=(m=D.declarations)==null?void 0:m.find(oe=>{var Be;return((Be=oe.symbol.valueDeclaration)==null?void 0:Be.parent)===u.symbol.valueDeclaration});Y&&(Sr(Y,Z.Object_literal_s_property_0_implicitly_has_an_1_type,kl(D),no(D1(P))),v=!0)}}}return v}function P5(u,m,v){let D=no(D1(m));if(wo(u)&&!rz(ms(u),Te))return;let P;switch(u.kind){case 227:case 173:case 172:P=Rt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 170:let Y=u;if(Ir(Y.name)){let oe=iv(Y.name);if((wg(Y.parent)||hl(Y.parent)||x_(Y.parent))&&Y.parent.parameters.includes(Y)&&(An(Y,Y.name.escapedText,788968,void 0,!0)||oe&&bAe(oe))){let Be="arg"+Y.parent.parameters.indexOf(Y),Oe=Wd(Y.name)+(Y.dotDotDotToken?"[]":"");Hw(Rt,u,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Be,Oe);return}}P=u.dotDotDotToken?Rt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Rt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 209:if(P=Z.Binding_element_0_implicitly_has_an_1_type,!Rt)return;break;case 318:Sr(u,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 324:Rt&&mie(u.parent)&&Sr(u.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 263:case 175:case 174:case 178:case 179:case 219:case 220:if(Rt&&!u.name){v===3?Sr(u,Z.Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation,D):Sr(u,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}P=Rt?v===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 201:Rt&&Sr(u,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:P=Rt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}Hw(Rt,u,P,Wd(Il(u)),D)}function eHs(u,m){let v=Kot(u);if(!v)return!0;let D=ud(v),P=SI(u);switch(m){case 1:return P&1?D=D9(1,D,!!(P&2))??D:P&2&&(D=pZ(D)??D),G5(D);case 3:let Y=D9(0,D,!!(P&2));return!!Y&&G5(Y);case 2:let oe=D9(2,D,!!(P&2));return!!oe&&G5(oe)}return!1}function Not(u,m,v){g(()=>{Rt&&la(m)&65536&&(!v||kd(u)&&eHs(u,v))&&(Rot(m)||P5(u,m,v))})}function WUt(u,m,v){let D=NE(u),P=NE(m),Y=J2e(u),oe=J2e(m),Be=oe?P-1:P,Oe=Y?Be:Math.min(D,Be),He=k5(u);if(He){let qe=k5(m);qe&&v(He,qe)}for(let qe=0;qem.typeParameter),At(u.inferences,(m,v)=>()=>(m.isFixed||(nHs(u),Dot(u.inferences),m.isFixed=!0),zUt(u,v))))}function rHs(u){return mUt(At(u.inferences,m=>m.typeParameter),At(u.inferences,(m,v)=>()=>zUt(u,v)))}function Dot(u){for(let m of u)m.isFixed||(m.inferredType=void 0)}function HUt(u,m,v){(u.intraExpressionInferenceSites??(u.intraExpressionInferenceSites=[])).push({node:m,type:v})}function nHs(u){if(u.intraExpressionInferenceSites){for(let{node:m,type:v}of u.intraExpressionInferenceSites){let D=m.kind===175?$mn(m,2):Jy(m,2);D&&nG(u.inferences,v,D)}u.intraExpressionInferenceSites=void 0}}function YUt(u){return{typeParameter:u,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function Khn(u){return{typeParameter:u.typeParameter,candidates:u.candidates&&u.candidates.slice(),contraCandidates:u.contraCandidates&&u.contraCandidates.slice(),inferredType:u.inferredType,priority:u.priority,topLevel:u.topLevel,isFixed:u.isFixed,impliedArity:u.impliedArity}}function iHs(u){let m=Me(u.inferences,Qse);return m.length?MUt(At(m,Khn),u.signature,u.flags,u.compareTypes):void 0}function QUt(u){return u&&u.mapper}function CW(u){let m=la(u);if(m&524288)return!!(m&1048576);let v=!!(u.flags&465829888||u.flags&524288&&!jhn(u)&&(m&4&&(u.node||jt(lf(u),CW))||m&16&&u.symbol&&u.symbol.flags&14384&&u.symbol.declarations||m&12583968)||u.flags&3145728&&!(u.flags&1024)&&!jhn(u)&&jt(u.types,CW));return u.flags&3899393&&(u.objectFlags|=524288|(v?1048576:0)),v}function jhn(u){if(u.aliasSymbol&&!u.aliasTypeArguments){let m=Cp(u.aliasSymbol,266);return!!(m&&ji(m.parent,v=>v.kind===308?!0:v.kind===268?!1:"quit"))}return!1}function Z2e(u,m,v=0){return!!(u===m||u.flags&3145728&&jt(u.types,D=>Z2e(D,m,v))||v<3&&u.flags&16777216&&(Z2e(fW(u),m,v+1)||Z2e(IW(u),m,v+1)))}function sHs(u,m){let v=Tv(u);return v?!!v.type&&Z2e(v.type,m):Z2e(ud(u),m)}function oHs(u){let m=qu();TK(u,D=>{if(!(D.flags&128))return;let P=Ap(D.value),Y=gA(4,P);Y.links.type=hr,D.symbol&&(Y.declarations=D.symbol.declarations,Y.valueDeclaration=D.symbol.valueDeclaration),m.set(P,Y)});let v=u.flags&4?[eG($r,Xg,!1)]:E;return Hf(void 0,m,E,E,v)}function zhn(u,m,v){let D=u.id+","+m.id+","+v.id;if(Z_.has(D))return Z_.get(D);let P=aHs(u,m,v);return Z_.set(D,P),P}function XUt(u){return!(la(u)&262144)||R9(u)&&jt(Gd(u),m=>XUt(Io(m)))||yA(u)&&jt(WQ(u),XUt)}function aHs(u,m,v){if(!($x(u,$r)||Gd(u).length!==0&&XUt(u)))return;if(Nv(u)){let P=kot(lf(u)[0],m,v);return P?d0(P,Hpe(u)):void 0}if(yA(u)){let P=At(WQ(u),oe=>kot(oe,m,v));if(!ue(P,oe=>!!oe))return;let Y=fk(m)&4?Tr(u.target.elementFlags,oe=>oe&2?1:oe):u.target.elementFlags;return hk(P,Y,u.target.readonly,u.target.labeledElementDeclarations)}let D=Lh(1040,void 0);return D.source=u,D.mappedType=m,D.constraintType=v,D}function cHs(u){let m=fa(u);return m.type||(m.type=kot(u.links.propertyType,u.links.mappedType,u.links.constraintType)||cn),m.type}function lHs(u,m,v){let D=R1(v.type,jw(m)),P=qx(m),Y=YUt(D);return nG([Y],u,P),qhn(Y)||cn}function kot(u,m,v){let D=u.id+","+m.id+","+v.id;if(b1.has(D))return b1.get(D)||cn;l5.push(u),YU.push(m);let P=u5;Dq(u,l5,l5.length,2)&&(u5|=1),Dq(m,YU,YU.length,2)&&(u5|=2);let Y;return u5!==3&&(Y=lHs(u,m,v)),l5.pop(),YU.pop(),u5=P,b1.set(D,Y),Y}function*JUt(u,m,v,D){let P=Gd(m);for(let Y of P)if(!Rfn(Y)&&(v||!(Y.flags&16777216||iI(Y)&48))){let oe=Gg(u,Y.escapedName);if(!oe)yield Y;else if(D){let Be=Io(Y);if(Be.flags&109472){let Oe=Io(oe);Oe.flags&1||Iy(Oe)===Iy(Be)||(yield Y)}}}}function UUt(u,m,v,D){return iA(JUt(u,m,v,D))}function uHs(u,m){return!(m.target.combinedFlags&8)&&m.target.minLength>u.target.minLength||!(m.target.combinedFlags&12)&&(!!(u.target.combinedFlags&12)||m.target.fixedLengthwq(Y,P),u)===u&&xot(u,m)}return!1}function tmn(u,m){if(m.flags&2097152)return ue(m.types,v=>v===bg||tmn(u,v));if(m.flags&4||dg(u,m))return!0;if(u.flags&128){let v=u.value;return!!(m.flags&8&&emn(v,!1)||m.flags&64&&Jne(v,!1)||m.flags&98816&&v===m.intrinsicName||m.flags&268435456&&xot(u,m)||m.flags&134217728&&Got(u,m))}if(u.flags&134217728){let v=u.texts;return v.length===2&&v[0]===""&&v[1]===""&&dg(u.types[0],m)}return!1}function rmn(u,m){return u.flags&128?nmn([u.value],E,m):u.flags&134217728?Sc(u.texts,m.texts)?At(u.types,(v,D)=>dg(WN(v),WN(m.types[D]))?v:pHs(v)):nmn(u.texts,u.types,m):void 0}function Got(u,m){let v=rmn(u,m);return!!v&&ue(v,(D,P)=>tmn(D,m.types[P]))}function pHs(u){return u.flags&402653317?u:hK(["",""],[u])}function nmn(u,m,v){let D=u.length-1,P=u[0],Y=u[D],oe=v.texts,Be=oe.length-1,Oe=oe[0],He=oe[Be];if(D===0&&P.length0){let js=kt,Co=vr;for(;Co=dn(js).indexOf(Yi,Co),!(Co>=0);){if(js++,js===u.length)return;Co=0}vn(js,Co),vr+=Yi.length}else if(vr!k(_o,Bd)):xs,du?Me(eo,Bd=>!k(du,Bd)):eo]}function js(xs,eo,qc){let _o=xs.length!!Mi(du));if(!_o||eo&&_o!==eo)return;eo=_o}return eo}function Ka(xs,eo,qc){let _o=0;if(qc&1048576){let du,Bd=xs.flags&1048576?xs.types:[xs],uf=new Array(Bd.length),JC=!1;for(let bA of eo)if(Mi(bA))du=bA,_o++;else for(let yh=0;yhuf[Vh]?void 0:yh);if(bA.length){kt(Ha(bA),du);return}}}else for(let du of eo)Mi(du)?_o++:kt(xs,du);if(qc&2097152?_o===1:_o>0)for(let du of eo)Mi(du)&&vr(xs,du,1)}function yl(xs,eo,qc){if(qc.flags&1048576||qc.flags&2097152){let _o=!1;for(let du of qc.types)_o=yl(xs,eo,du)||_o;return _o}if(qc.flags&4194304){let _o=Mi(qc.type);if(_o&&!_o.isFixed&&!$hn(xs)){let du=zhn(xs,eo,qc);du&&vr(du,_o.typeParameter,la(xs)&262144?16:8)}return!0}if(qc.flags&262144){vr(ON(xs,xs.pattern?2:0),qc,32);let _o=dK(qc);if(_o&&yl(xs,eo,_o))return!0;let du=At(Gd(xs),Io),Bd=At(A0(xs),uf=>uf!==Uc?uf.type:Wi);return kt(Ha(Nn(du,Bd)),qx(eo)),!0}return!1}function ka(xs,eo){if(xs.flags&16777216)kt(xs.checkType,eo.checkType),kt(xs.extendsType,eo.extendsType),kt(fW(xs),fW(eo)),kt(IW(xs),IW(eo));else{let qc=[fW(eo),IW(eo)];vn(xs,qc,eo.flags,P?64:0)}}function Kc(xs,eo){let qc=rmn(xs,eo),_o=eo.types;if(qc||ue(eo.texts,du=>du.length===0))for(let du=0;du<_o.length;du++){let Bd=qc?qc[du]:Wi,uf=_o[du];if(Bd.flags&128&&uf.flags&8650752){let JC=Mi(uf),bA=JC?L_(JC.typeParameter):void 0;if(bA&&!Xo(bA)){let yh=bA.flags&1048576?bA.types:[bA],Vh=Ul(yh,(Fd,ES)=>Fd|ES.flags,0);if(!(Vh&4)){let Fd=Bd.value;Vh&296&&!emn(Fd,!0)&&(Vh&=-297),Vh&2112&&!Jne(Fd,!0)&&(Vh&=-2113);let ES=Ul(yh,(Qf,ch)=>ch.flags&Vh?Qf.flags&4?Qf:ch.flags&4?Bd:Qf.flags&134217728?Qf:ch.flags&134217728&&Got(Bd,ch)?Bd:Qf.flags&268435456?Qf:ch.flags&268435456&&Fd===jIn(ch.symbol,Fd)?Bd:Qf.flags&128?Qf:ch.flags&128&&ch.value===Fd?ch:Qf.flags&8?Qf:ch.flags&8?fR(+Fd):Qf.flags&32?Qf:ch.flags&32?fR(+Fd):Qf.flags&256?Qf:ch.flags&256&&ch.value===+Fd?ch:Qf.flags&64?Qf:ch.flags&64?dHs(Fd):Qf.flags&2048?Qf:ch.flags&2048&&kP(ch.value)===Fd?ch:Qf.flags&16?Qf:ch.flags&16?Fd==="true"?tn:Fd==="false"?Bs:Mn:Qf.flags&512?Qf:ch.flags&512&&ch.intrinsicName===Fd?ch:Qf.flags&32768?Qf:ch.flags&32768&&ch.intrinsicName===Fd?ch:Qf.flags&65536?Qf:ch.flags&65536&&ch.intrinsicName===Fd?ch:Qf:Qf,Wi);if(!(ES.flags&131072)){kt(ES,uf);continue}}}}kt(Bd,uf)}}function Vu(xs,eo){kt(_S(xs),_S(eo)),kt(qx(xs),qx(eo));let qc=E9(xs),_o=E9(eo);qc&&_o&&kt(qc,_o)}function gd(xs,eo){var qc,_o;if(la(xs)&4&&la(eo)&4&&(xs.target===eo.target||Nv(xs)&&Nv(eo))){js(lf(xs),lf(eo),DUt(xs.target));return}if(Yb(xs)&&Yb(eo)&&Vu(xs,eo),la(eo)&32&&!eo.declaration.nameType){let du=_S(eo);if(yl(xs,eo,du))return}if(!gHs(xs,eo)){if(L5(xs)){if(yA(eo)){let du=B9(xs),Bd=B9(eo),uf=lf(eo),JC=eo.target.elementFlags;if(yA(xs)&&YMs(xs,eo)){for(let Vh=0;Vh0){let Bd=tg(eo,qc),uf=Bd.length;for(let JC=0;JC1){let m=Me(u,jUt);if(m.length){let v=Ha(m,2);return Nn(Me(u,D=>!jUt(D)),[v])}}return u}function CHs(u){return u.priority&416?Kg(u.contraCandidates):LMs(u.contraCandidates)}function _Hs(u,m){let v=mHs(u.candidates),D=hHs(u.typeParameter)||pK(u.typeParameter),P=!D&&u.topLevel&&(u.isFixed||!sHs(m,u.typeParameter)),Y=D?Tr(v,Iy):P?Tr(v,V5):v,oe=u.priority&416?Ha(Y,2):FMs(Y);return D1(oe)}function zUt(u,m){let v=u.inferences[m];if(!v.inferredType){let D,P;if(u.signature){let oe=v.candidates?_Hs(v,u.signature):void 0,Be=v.contraCandidates?CHs(v):void 0;if(oe||Be){let Oe=oe&&(!Be||!(oe.flags&131073)&&jt(v.contraCandidates,He=>dg(oe,He))&&ue(u.inferences,He=>He!==v&&Xy(He.typeParameter)!==v.typeParameter||ue(He.candidates,qe=>dg(qe,oe))));D=Oe?oe:Be,P=Oe?Be:oe}else if(u.flags&1)D=Vn;else{let Oe=VQ(v.typeParameter);Oe&&(D=_l(Oe,fhn(J5s(u,m),u.nonFixingMapper)))}}else D=qhn(v);v.inferredType=D||qUt(!!(u.flags&2));let Y=Xy(v.typeParameter);if(Y){let oe=_l(Y,u.nonFixingMapper);(!D||!u.compareTypes(D,T1(oe,D)))&&(v.inferredType=P&&u.compareTypes(P,T1(oe,P))?P:oe)}OYs()}return v.inferredType}function qUt(u){return u?hr:cn}function $Ut(u){let m=[];for(let v=0;vg_(m)||FB(m)||mh(m)))}function MWe(u,m,v,D){switch(u.kind){case 80:if(!YL(u)){let oe=L0(u);return oe!==it?`${D?rd(D):"-1"}|${QC(m)}|${QC(v)}|${kg(oe)}`:void 0}case 110:return`0|${D?rd(D):"-1"}|${QC(m)}|${QC(v)}`;case 236:case 218:return MWe(u.expression,m,v,D);case 167:let P=MWe(u.left,m,v,D);return P&&`${P}.${u.right.escapedText}`;case 212:case 213:let Y=vK(u);if(Y!==void 0){let oe=MWe(u.expression,m,v,D);return oe&&`${oe}.${Y}`}if(Yg(u)&&Ir(u.argumentExpression)){let oe=L0(u.argumentExpression);if(kq(oe)||P2e(oe)&&!V2e(oe)){let Be=MWe(u.expression,m,v,D);return Be&&`${Be}.@${kg(oe)}`}}break;case 207:case 208:case 263:case 219:case 220:case 175:return`${rd(u)}#${QC(m)}`}}function h_(u,m){switch(m.kind){case 218:case 236:return h_(u,m.expression);case 227:return Jm(m)&&h_(u,m.left)||fo(m)&&m.operatorToken.kind===28&&h_(u,m.right)}switch(u.kind){case 237:return m.kind===237&&u.keywordToken===m.keywordToken&&u.name.escapedText===m.name.escapedText;case 80:case 81:return YL(u)?m.kind===110:m.kind===80&&L0(u)===L0(m)||(nc(m)||hg(m))&&fn(L0(u))===Uo(m);case 110:return m.kind===110;case 108:return m.kind===108;case 236:case 218:case 239:return h_(u.expression,m);case 212:case 213:let v=vK(u);if(v!==void 0){let D=_p(m)?vK(m):void 0;if(D!==void 0)return D===v&&h_(u.expression,m.expression)}if(Yg(u)&&Yg(m)&&Ir(u.argumentExpression)&&Ir(m.argumentExpression)){let D=L0(u.argumentExpression);if(D===L0(m.argumentExpression)&&(kq(D)||P2e(D)&&!V2e(D)))return h_(u.expression,m.expression)}break;case 167:return _p(m)&&u.right.escapedText===vK(m)&&h_(u.left,m.expression);case 227:return fo(u)&&u.operatorToken.kind===28&&h_(u.right,m)}return!1}function vK(u){if(jo(u))return u.name.escapedText;if(Yg(u))return yHs(u);if(hg(u)){let m=C9(u);return m?Ap(m):void 0}if(Si(u))return""+u.parent.parameters.indexOf(u)}function tKt(u){return u.flags&8192?u.escapedName:u.flags&384?Ap(""+u.value):void 0}function yHs(u){return d1(u.argumentExpression)?Ap(u.argumentExpression.text):Od(u.argumentExpression)?bHs(u.argumentExpression):void 0}function bHs(u){let m=TI(u,111551,!0);if(!m||!(kq(m)||m.flags&8))return;let v=m.valueDeclaration;if(v===void 0)return;let D=AW(v);if(D){let P=tKt(D);if(P!==void 0)return P}if(l1(v)&&$F(v,u)){let P=one(v);if(P){let Y=Nu(v.parent)?Kx(v):P_(P);return Y&&tKt(Y)}if(LF(v))return hP(v.name)}}function smn(u,m){for(;_p(u);)if(u=u.expression,h_(u,m))return!0;return!1}function BK(u,m){for(;GC(u);)if(u=u.expression,h_(u,m))return!0;return!1}function Xpe(u,m){if(u&&u.flags&1048576){let v=qfn(u,m);if(v&&iI(v)&2)return v.links.isDiscriminantProperty===void 0&&(v.links.isDiscriminantProperty=(v.links.checkFlags&192)===192&&!G5(Io(v))),!!v.links.isDiscriminantProperty}return!1}function omn(u,m){let v;for(let D of u)if(Xpe(m,D.escapedName)){if(v){v.push(D);continue}v=[D]}return v}function EHs(u,m){let v=new Map,D=0;for(let P of u)if(P.flags&61603840){let Y=Pi(P,m);if(Y){if(!D2e(Y))return;let oe=!1;TK(Y,Be=>{let Oe=QC(Iy(Be)),He=v.get(Oe);He?He!==cn&&(v.set(Oe,cn),oe=!0):v.set(Oe,P)}),oe||D++}}return D>=10&&D*2>=u.length?v:void 0}function HWe(u){let m=u.types;if(!(m.length<10||la(u)&32768||ct(m,v=>!!(v.flags&59506688))<10)){if(u.keyPropertyName===void 0){let v=F(m,P=>P.flags&59506688?F(Gd(P),Y=>IR(Io(Y))?Y.escapedName:void 0):void 0),D=v&&EHs(m,v);u.keyPropertyName=D?v:"",u.constituentMap=D}return u.keyPropertyName.length?u.keyPropertyName:void 0}}function YWe(u,m){var v;let D=(v=u.constituentMap)==null?void 0:v.get(QC(Iy(m)));return D!==cn?D:void 0}function amn(u,m){let v=HWe(u),D=v&&Pi(m,v);return D&&YWe(u,D)}function SHs(u,m){let v=HWe(u),D=v&&de(m.properties,Y=>Y.symbol&&Y.kind===304&&Y.symbol.escapedName===v&&$We(Y.initializer)),P=D&&COe(D.initializer);return P&&YWe(u,P)}function cmn(u,m){return h_(u,m)||smn(u,m)}function lmn(u,m){if(u.arguments){for(let v of u.arguments)if(cmn(m,v)||BK(v,m))return!0}return!!(u.expression.kind===212&&cmn(m,u.expression.expression))}function rKt(u){return u.id<=0&&(u.id=ytn,ytn++),u.id}function vHs(u,m){if(!(u.flags&1048576))return dg(u,m);for(let v of u.types)if(dg(v,m))return!0;return!1}function BHs(u,m){if(u===m)return u;if(m.flags&131072)return m;let v=`A${QC(u)},${QC(m)}`;return Hy(v)??HB(v,wHs(u,m))}function wHs(u,m){let v=nm(u,P=>vHs(m,P)),D=m.flags&512&&MQ(m)?Yf(v,Rq):v;return dg(m,D)?D:u}function nKt(u){if(la(u)&256)return!1;let m=pR(u);return!!(m.callSignatures.length||m.constructSignatures.length||m.members.get("bind")&&YQ(u,Js))}function Lse(u,m){return iKt(u,m)&m}function hR(u,m){return Lse(u,m)!==0}function iKt(u,m){u.flags&467927040&&(u=L_(u)||cn);let v=u.flags;if(v&268435460)return ot?16317953:16776705;if(v&134217856){let D=v&128&&u.value==="";return ot?D?12123649:7929345:D?12582401:16776705}if(v&40)return ot?16317698:16776450;if(v&256){let D=u.value===0;return ot?D?12123394:7929090:D?12582146:16776450}if(v&64)return ot?16317188:16775940;if(v&2048){let D=Hhn(u);return ot?D?12122884:7928580:D?12581636:16775940}return v&16?ot?16316168:16774920:v&528?ot?u===Bs||u===Ys?12121864:7927560:u===Bs||u===Ys?12580616:16774920:v&524288?m&(ot?83427327:83886079)?la(u)&16&&lZ(u)?ot?83427327:83886079:nKt(u)?ot?7880640:16728e3:ot?7888800:16736160:0:v&16384?9830144:v&32768?26607360:v&65536?42917664:v&12288?ot?7925520:16772880:v&67108864?ot?7888800:16736160:v&131072?0:v&1048576?Ul(u.types,(D,P)=>D|iKt(P,m),0):v&2097152?THs(u,m):83886079}function THs(u,m){let v=ah(u,402784252),D=0,P=134217727;for(let Y of u.types)if(!(v&&Y.flags&524288)){let oe=iKt(Y,m);D|=oe,P&=oe}return D&8256|P&134209471}function Dv(u,m){return nm(u,v=>hR(v,m))}function wK(u,m){let v=sKt(Dv(ot&&u.flags&2?TA:u,m));if(ot)switch(m){case 524288:return umn(v,65536,131072,33554432,Hn);case 1048576:return umn(v,131072,65536,16777216,Bt);case 2097152:case 4194304:return Yf(v,D=>hR(D,262144)?JMs(D):D)}return v}function umn(u,m,v,D,P){let Y=Lse(u,50528256);if(!(Y&m))return u;let oe=Ha([Xg,P]);return Yf(u,Be=>hR(Be,m)?Kg([Be,!(Y&D)&&hR(Be,v)?oe:Xg]):Be)}function sKt(u){return u===TA?cn:u}function oKt(u,m){return m?Ha([ep(u),P_(m)]):u}function gmn(u,m){var v;let D=sZ(m);if(!g2(D))return nn;let P=A2(D);return Pi(u,P)||L2e((v=vq(u,P))==null?void 0:v.type)||nn}function Amn(u,m){return RE(u,Ype)&&VMs(u,m)||L2e(N9(65,u,Bt,void 0))||nn}function L2e(u){return u&&(Te.noUncheckedIndexedAccess?Ha([u,fr]):u)}function dmn(u){return d0(N9(65,u,Bt,void 0)||nn)}function RHs(u){return u.parent.kind===210&&aKt(u.parent)||u.parent.kind===304&&aKt(u.parent.parent)?oKt(QWe(u),u.right):P_(u.right)}function aKt(u){return u.parent.kind===227&&u.parent.left===u||u.parent.kind===251&&u.parent.initializer===u}function NHs(u,m){return Amn(QWe(u),u.elements.indexOf(m))}function DHs(u){return dmn(QWe(u.parent))}function pmn(u){return gmn(QWe(u.parent),u.name)}function kHs(u){return oKt(pmn(u),u.objectAssignmentInitializer)}function QWe(u){let{parent:m}=u;switch(m.kind){case 250:return $r;case 251:return BOe(m)||nn;case 227:return RHs(m);case 221:return Bt;case 210:return NHs(m,u);case 231:return DHs(m);case 304:return pmn(m);case 305:return kHs(m)}return nn}function xHs(u){let m=u.parent,v=Imn(m.parent),D=m.kind===207?gmn(v,u.propertyName||u.name):u.dotDotDotToken?dmn(v):Amn(v,m.elements.indexOf(u));return oKt(D,u.initializer)}function fmn(u){return sa(u).resolvedType||P_(u)}function GHs(u){return u.initializer?fmn(u.initializer):u.parent.parent.kind===250?$r:u.parent.parent.kind===251&&BOe(u.parent.parent)||nn}function Imn(u){return u.kind===261?GHs(u):xHs(u)}function FHs(u){return u.kind===261&&u.initializer&&y9(u.initializer)||u.kind!==209&&u.parent.kind===227&&y9(u.parent.right)}function XQ(u){switch(u.kind){case 218:return XQ(u.expression);case 227:switch(u.operatorToken.kind){case 64:case 76:case 77:case 78:return XQ(u.left);case 28:return XQ(u.right)}}return u}function hmn(u){let{parent:m}=u;return m.kind===218||m.kind===227&&m.operatorToken.kind===64&&m.left===u||m.kind===227&&m.operatorToken.kind===28&&m.right===u?hmn(m):u}function ZHs(u){return u.kind===297?Iy(P_(u.expression)):Wi}function Fot(u){let m=sa(u);if(!m.switchTypes){m.switchTypes=[];for(let v of u.caseBlock.clauses)m.switchTypes.push(ZHs(v))}return m.switchTypes}function mmn(u){if(jt(u.caseBlock.clauses,v=>v.kind===297&&!mA(v.expression)))return;let m=[];for(let v of u.caseBlock.clauses){let D=v.kind===297?v.expression.text:void 0;m.push(D&&!k(m,D)?D:void 0)}return m}function LHs(u,m){return u.flags&1048576?!F(u.types,v=>!k(m,v)):k(m,u)}function Jpe(u,m){return!!(u===m||u.flags&131072||m.flags&1048576&&VHs(u,m))}function VHs(u,m){if(u.flags&1048576){for(let v of u.types)if(!tG(m.types,v))return!1;return!0}return u.flags&1056&&Hst(u)===m?!0:tG(m.types,u)}function TK(u,m){return u.flags&1048576?F(u.types,m):m(u)}function kv(u,m){return u.flags&1048576?jt(u.types,m):m(u)}function RE(u,m){return u.flags&1048576?ue(u.types,m):m(u)}function PHs(u,m){return u.flags&3145728?ue(u.types,m):m(u)}function nm(u,m){if(u.flags&1048576){let v=u.types,D=Me(v,m);if(D===v)return u;let P=u.origin,Y;if(P&&P.flags&1048576){let oe=P.types,Be=Me(oe,Oe=>!!(Oe.flags&1048576)||m(Oe));if(oe.length-Be.length===v.length-D.length){if(Be.length===1)return Be[0];Y=nUt(1048576,Be)}}return sUt(D,u.objectFlags&16809984,void 0,void 0,Y)}return u.flags&131072||m(u)?u:Wi}function Zot(u,m){return nm(u,v=>v!==m)}function WHs(u){return u.flags&1048576?u.types.length:1}function Yf(u,m,v){if(u.flags&131072)return u;if(!(u.flags&1048576))return m(u);let D=u.origin,P=D&&D.flags&1048576?D.types:u.types,Y,oe=!1;for(let Be of P){let Oe=Be.flags&1048576?Yf(Be,m,v):m(Be);oe||(oe=Be!==Oe),Oe&&(Y?Y.push(Oe):Y=[Oe])}return oe?Y&&Ha(Y,v?0:1):u}function Cmn(u,m,v,D){return u.flags&1048576&&v?Ha(At(u.types,m),1,v,D):Yf(u,m)}function Upe(u,m){return nm(u,v=>(v.flags&m)!==0)}function _mn(u,m){return ah(u,134217804)&&ah(m,402655616)?Yf(u,v=>v.flags&4?Upe(m,402653316):mK(v)&&!ah(m,402653188)?Upe(m,128):v.flags&8?Upe(m,264):v.flags&64?Upe(m,2112):v):u}function Vse(u){return u.flags===0}function RK(u){return u.flags===0?u.type:u}function Pse(u,m){return m?{flags:0,type:u.flags&131072?Vn:u}:u}function OHs(u){let m=Lh(256);return m.elementType=u,m}function cKt(u){return Pn[u.id]||(Pn[u.id]=OHs(u))}function ymn(u,m){let v=G2e(uZ(COe(m)));return Jpe(v,u.elementType)?u:cKt(Ha([u.elementType,v]))}function MHs(u){return u.flags&131072?OC:d0(u.flags&1048576?Ha(u.types,2):u)}function HHs(u){return u.finalArrayType||(u.finalArrayType=MHs(u.elementType))}function XWe(u){return la(u)&256?HHs(u):u}function YHs(u){return la(u)&256?u.elementType:Wi}function QHs(u){let m=!1;for(let v of u)if(!(v.flags&131072)){if(!(la(v)&256))return!1;m=!0}return m}function bmn(u){let m=hmn(u),v=m.parent,D=jo(v)&&(v.name.escapedText==="length"||v.parent.kind===214&&Ir(v.name)&&Gye(v.name)),P=v.kind===213&&v.expression===m&&v.parent.kind===227&&v.parent.operatorToken.kind===64&&v.parent.left===v&&!bF(v.parent)&&V_(P_(v.argumentExpression),296);return D||P}function XHs(u){return(nc(u)||pi(u)||ss(u)||Si(u))&&!!(kh(u)||wo(u)&&WT(u)&&u.initializer&&RF(u.initializer)&&xb(u.initializer))}function Lot(u,m){if(u=Zh(u),u.flags&8752)return Io(u);if(u.flags&7){if(iI(u)&262144){let D=u.links.syntheticOrigin;if(D&&Lot(D))return Io(u)}let v=u.valueDeclaration;if(v){if(XHs(v))return Io(u);if(nc(v)&&v.parent.parent.kind===251){let D=v.parent.parent,P=JWe(D.expression,void 0);if(P){let Y=D.awaitModifier?15:13;return N9(Y,P,Bt,void 0)}}m&&lg(m,mo(v,Z._0_needs_an_explicit_type_annotation,kl(u)))}}}function JWe(u,m){if(!(u.flags&67108864))switch(u.kind){case 80:let v=fn(L0(u));return Lot(v,m);case 110:return dYs(u);case 108:return Hot(u);case 212:{let D=JWe(u.expression,m);if(D){let P=u.name,Y;if(p(P)){if(!D.symbol)return;Y=Gg(D,_ne(D.symbol,P.escapedText))}else Y=Gg(D,P.escapedText);return Y&&Lot(Y,m)}return}case 218:return JWe(u.expression,m)}}function UWe(u){let m=sa(u),v=m.effectsSignature;if(v===void 0){let D;if(fo(u)){let oe=Ose(u.right);D=c8t(oe)}else u.parent.kind===245?D=JWe(u.expression,void 0):u.expression.kind!==108&&(GC(u)?D=HN(k2e(Ol(u.expression),u.expression),u.expression):D=Ose(u.expression));let P=tg(D&&fy(D)||cn,0),Y=P.length===1&&!P[0].typeParameters?P[0]:jt(P,Emn)?Hse(u):void 0;v=m.effectsSignature=Y&&Emn(Y)?Y:Za}return v===Za?void 0:v}function Emn(u){return!!(Tv(u)||u.declaration&&(Nse(u.declaration)||cn).flags&131072)}function JHs(u,m){if(u.kind===1||u.kind===3)return m.arguments[u.parameterIndex];let v=QA(m.expression);return _p(v)?QA(v.expression):void 0}function UHs(u){let m=ji(u,CJ),v=ms(u),D=rs(v,m.statements.pos);PA.add(qh(v,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function KWe(u){let m=Vot(u,!1);return $a=u,ru=m,m}function jWe(u){let m=QA(u,!0);return m.kind===97||m.kind===227&&(m.operatorToken.kind===56&&(jWe(m.left)||jWe(m.right))||m.operatorToken.kind===57&&jWe(m.left)&&jWe(m.right))}function Vot(u,m){for(;;){if(u===$a)return ru;let v=u.flags;if(v&4096){if(!m){let D=rKt(u),P=rq[D];return P!==void 0?P:rq[D]=Vot(u,!0)}m=!1}if(v&368)u=u.antecedent;else if(v&512){let D=UWe(u.node);if(D){let P=Tv(D);if(P&&P.kind===3&&!P.type){let Y=u.node.arguments[P.parameterIndex];if(Y&&jWe(Y))return!1}if(ud(D).flags&131072)return!1}u=u.antecedent}else{if(v&4)return jt(u.antecedent,D=>Vot(D,!1));if(v&8){let D=u.antecedent;if(D===void 0||D.length===0)return!1;u=D[0]}else if(v&128){let D=u.node;if(D.clauseStart===D.clauseEnd&&f_n(D.switchStatement))return!1;u=u.antecedent}else if(v&1024){$a=void 0;let D=u.node.target,P=D.antecedent;D.antecedent=u.node.antecedents;let Y=Vot(u.antecedent,!1);return D.antecedent=P,Y}else return!(v&1)}}}function Pot(u,m){for(;;){let v=u.flags;if(v&4096){if(!m){let D=rKt(u),P=SQ[D];return P!==void 0?P:SQ[D]=Pot(u,!0)}m=!1}if(v&496)u=u.antecedent;else if(v&512){if(u.node.expression.kind===108)return!0;u=u.antecedent}else{if(v&4)return ue(u.antecedent,D=>Pot(D,!1));if(v&8)u=u.antecedent[0];else if(v&1024){let D=u.node.target,P=D.antecedent;D.antecedent=u.node.antecedents;let Y=Pot(u.antecedent,!1);return D.antecedent=P,Y}else return!!(v&1)}}}function lKt(u){switch(u.kind){case 110:return!0;case 80:if(!YL(u)){let v=L0(u);return kq(v)||P2e(v)&&!V2e(v)||!!v.valueDeclaration&&UA(v.valueDeclaration)}break;case 212:case 213:return lKt(u.expression)&&yR(sa(u).resolvedSymbol||it);case 207:case 208:let m=Rw(u.parent);return Si(m)||vLe(m)?!uKt(m):nc(m)&&cSe(m)}return!1}function dZ(u,m,v=m,D,P=(Y=>(Y=Gs(u,UJ))==null?void 0:Y.flowNode)()){let Y,oe=!1,Be=0;if(Yc)return nn;if(!P)return m;tu++;let Oe=co,He=RK(kt(P));co=Oe;let qe=la(He)&256&&bmn(u)?OC:XWe(He);if(qe===gs||u.parent&&u.parent.kind===236&&!(qe.flags&131072)&&Dv(qe,2097152).flags&131072)return m;return qe;function Vt(){return oe?Y:(oe=!0,Y=MWe(u,m,v,D))}function kt(zn){var as;if(Be===2e3)return(as=ki)==null||as.instant(ki.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:zn.id}),Yc=!0,UHs(u),nn;Be++;let Ms;for(;;){let Ao=zn.flags;if(Ao&4096){for(let tc=Oe;tc=0&&Ms.parameterIndex!(tc.flags&163840)):as.kind===222&&BK(as.expression,u)&&(Ao=Bd(Ao,zn.node,tc=>!(tc.flags&131072||tc.flags&128&&tc.value==="undefined"))));let ea=yl(as,Ao);ea&&(Ao=Vu(Ao,ea,zn.node))}return Pse(Ao,Vse(Ms))}function Ji(zn){let as=[],Ms=!1,Ao=!1,ea;for(let tc of zn.antecedent){if(!ea&&tc.flags&128&&tc.node.clauseStart===tc.node.clauseEnd){ea=tc;continue}let jg=kt(tc),nA=RK(jg);if(nA===m&&m===v)return nA;Qi(as,nA),Jpe(nA,v)||(Ms=!0),Vse(jg)&&(Ao=!0)}if(ea){let tc=kt(ea),jg=RK(tc);if(!(jg.flags&131072)&&!k(as,jg)&&!f_n(ea.node.switchStatement)){if(jg===m&&m===v)return jg;as.push(jg),Jpe(jg,v)||(Ms=!0),Vse(tc)&&(Ao=!0)}}return Pse(To(as,Ms?2:1),Ao)}function Mi(zn){let as=rKt(zn),Ms=dse[as]||(dse[as]=new Map),Ao=Vt();if(!Ao)return m;let ea=Ms.get(Ao);if(ea)return ea;for(let tC=Oo;tC{let tC=Ba(Sp,Ao)||cn;return!(tC.flags&131072)&&!(nA.flags&131072)&&xWe(nA,tC)})}function Kc(zn,as,Ms,Ao,ea){if((Ms===37||Ms===38)&&zn.flags&1048576){let tc=HWe(zn);if(tc&&tc===vK(as)){let jg=YWe(zn,P_(Ao));if(jg)return Ms===(ea?37:38)?jg:IR(Pi(jg,tc)||cn)?Zot(zn,jg):zn}}return ka(zn,as,tc=>qc(tc,Ms,Ao,ea))}function Vu(zn,as,Ms){if(Ms.clauseStartYWe(zn,tc)||cn));if(ea!==cn)return ea}return ka(zn,as,Ao=>uf(Ao,Ms))}function gd(zn,as,Ms){if(h_(u,as))return wK(zn,Ms?4194304:8388608);ot&&Ms&&BK(as,u)&&(zn=wK(zn,2097152));let Ao=yl(as,zn);return Ao?ka(zn,Ao,ea=>Dv(ea,Ms?4194304:8388608)):zn}function Ll(zn,as,Ms){let Ao=Gg(zn,as);return Ao?!!(Ao.flags&16777216||iI(Ao)&48)||Ms:!!vq(zn,as)||!Ms}function Ef(zn,as,Ms){let Ao=A2(as);if(kv(zn,tc=>Ll(tc,Ao,!0)))return nm(zn,tc=>Ll(tc,Ao,Ms));if(Ms){let tc=z3s();if(tc)return Kg([zn,kse(tc,[as,cn])])}return zn}function UI(zn,as,Ms,Ao,ea){return ea=ea!==(Ms.kind===112)!=(Ao!==38&&Ao!==36),y2(zn,as,ea)}function V0(zn,as,Ms){switch(as.operatorToken.kind){case 64:case 76:case 77:case 78:return gd(y2(zn,as.right,Ms),as.left,Ms);case 35:case 36:case 37:case 38:let Ao=as.operatorToken.kind,ea=XQ(as.left),tc=XQ(as.right);if(ea.kind===222&&mA(tc))return _o(zn,ea,Ao,tc,Ms);if(tc.kind===222&&mA(ea))return _o(zn,tc,Ao,ea,Ms);if(h_(u,ea))return qc(zn,Ao,tc,Ms);if(h_(u,tc))return qc(zn,Ao,ea,Ms);ot&&(BK(ea,u)?zn=eo(zn,Ao,tc,Ms):BK(tc,u)&&(zn=eo(zn,Ao,ea,Ms)));let jg=yl(ea,zn);if(jg)return Kc(zn,jg,Ao,tc,Ms);let nA=yl(tc,zn);if(nA)return Kc(zn,nA,Ao,ea,Ms);if(Fd(ea))return ES(zn,Ao,tc,Ms);if(Fd(tc))return ES(zn,Ao,ea,Ms);if(hY(tc)&&!_p(ea))return UI(zn,ea,tc,Ao,Ms);if(hY(ea)&&!_p(tc))return UI(zn,tc,ea,Ao,Ms);break;case 104:return Qf(zn,as,Ms);case 103:if(p(as.left))return xs(zn,as,Ms);let Sp=XQ(as.right);if(x2e(zn)&&_p(u)&&h_(u.expression,Sp)){let tC=P_(as.left);if(g2(tC)&&vK(u)===A2(tC))return Dv(zn,Ms?524288:65536)}if(h_(u,Sp)){let tC=P_(as.left);if(g2(tC))return Ef(zn,tC,Ms)}break;case 28:return y2(zn,as.right,Ms);case 56:return Ms?y2(y2(zn,as.left,!0),as.right,!0):Ha([y2(zn,as.left,!1),y2(zn,as.right,!1)]);case 57:return Ms?Ha([y2(zn,as.left,!0),y2(zn,as.right,!0)]):y2(y2(zn,as.left,!1),as.right,!1)}return zn}function xs(zn,as,Ms){let Ao=XQ(as.right);if(!h_(u,Ao))return zn;pe.assertNode(as.left,p);let ea=rat(as.left);if(ea===void 0)return zn;let tc=ea.parent,jg=zh(pe.checkDefined(ea.valueDeclaration,"should always have a declaration"))?Io(tc):Fp(tc);return Gv(zn,jg,Ms,!0)}function eo(zn,as,Ms,Ao){let ea=as===35||as===37,tc=as===35||as===36?98304:32768,jg=P_(Ms);return ea!==Ao&&RE(jg,Sp=>!!(Sp.flags&tc))||ea===Ao&&RE(jg,Sp=>!(Sp.flags&(3|tc)))?wK(zn,2097152):zn}function qc(zn,as,Ms,Ao){if(zn.flags&1)return zn;(as===36||as===38)&&(Ao=!Ao);let ea=P_(Ms),tc=as===35||as===36;if(ea.flags&98304){if(!ot)return zn;let jg=tc?Ao?262144:2097152:ea.flags&65536?Ao?131072:1048576:Ao?65536:524288;return wK(zn,jg)}if(Ao){if(!tc&&(zn.flags&2||kv(zn,mk))){if(ea.flags&469893116||mk(ea))return ea;if(ea.flags&524288)return fs}let jg=nm(zn,nA=>xWe(nA,ea)||tc&&UMs(nA,ea));return _mn(jg,ea)}return IR(ea)?nm(zn,jg=>!(Phn(jg)&&xWe(jg,ea))):zn}function _o(zn,as,Ms,Ao,ea){(Ms===36||Ms===38)&&(ea=!ea);let tc=XQ(as.expression);if(!h_(u,tc)){ot&&BK(tc,u)&&ea===(Ao.text!=="undefined")&&(zn=wK(zn,2097152));let jg=yl(tc,zn);return jg?ka(zn,jg,nA=>du(nA,Ao,ea)):zn}return du(zn,Ao,ea)}function du(zn,as,Ms){return Ms?JC(zn,as.text):wK(zn,mOt.get(as.text)||32768)}function Bd(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao},ea){return Ms!==Ao&&ue(Fot(as).slice(Ms,Ao),ea)?Dv(zn,2097152):zn}function uf(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=Fot(as);if(!ea.length)return zn;let tc=ea.slice(Ms,Ao),jg=Ms===Ao||k(tc,Wi);if(zn.flags&2&&!jg){let P0;for(let Qb=0;QbxWe(nA,P0)),nA);if(!jg)return Sp;let tC=nm(zn,P0=>!(Phn(P0)&&k(ea,P0.flags&32768?Bt:Iy(WMs(P0)))));return Sp.flags&131072?tC:Ha([Sp,tC])}function JC(zn,as){switch(as){case"string":return bA(zn,$r,1);case"number":return bA(zn,ri,2);case"bigint":return bA(zn,ao,4);case"boolean":return bA(zn,Mn,8);case"symbol":return bA(zn,ci,16);case"object":return zn.flags&1?zn:Ha([bA(zn,fs,32),bA(zn,Hn,131072)]);case"function":return zn.flags&1?zn:bA(zn,Js,64);case"undefined":return bA(zn,Bt,65536)}return bA(zn,fs,128)}function bA(zn,as,Ms){return Yf(zn,Ao=>MN(Ao,as,bf)?hR(Ao,Ms)?Ao:Wi:YQ(as,Ao)?as:hR(Ao,Ms)?Kg([Ao,as]):Wi)}function yh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=mmn(as);if(!ea)return zn;let tc=Se(as.caseBlock.clauses,Sp=>Sp.kind===298);if(Ms===Ao||tc>=Ms&&tcLse(tC,Sp)===Sp)}let nA=ea.slice(Ms,Ao);return Ha(At(nA,Sp=>Sp?JC(zn,Sp):Wi))}function Vh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=Se(as.caseBlock.clauses,nA=>nA.kind===298),tc=Ms===Ao||ea>=Ms&&eanA.kind===297?y2(zn,nA.expression,!0):Wi))}function Fd(zn){return(jo(zn)&&Vo(zn.name)==="constructor"||Yg(zn)&&mA(zn.argumentExpression)&&zn.argumentExpression.text==="constructor")&&h_(u,zn.expression)}function ES(zn,as,Ms,Ao){if(Ao?as!==35&&as!==37:as!==36&&as!==38)return zn;let ea=P_(Ms);if(!V8t(ea)&&!dR(ea))return zn;let tc=Gg(ea,"prototype");if(!tc)return zn;let jg=Io(tc),nA=Xo(jg)?void 0:jg;if(!nA||nA===qn||nA===Js)return zn;if(Xo(zn))return nA;return nm(zn,tC=>Sp(tC,nA));function Sp(tC,P0){return tC.flags&524288&&la(tC)&1||P0.flags&524288&&la(P0)&1?tC.symbol===P0.symbol:YQ(tC,P0)}}function Qf(zn,as,Ms){let Ao=XQ(as.left);if(!h_(u,Ao))return Ms&&ot&&BK(Ao,u)?wK(zn,2097152):zn;let ea=as.right,tc=P_(ea);if(!Z5(tc,qn))return zn;let jg=UWe(as),nA=jg&&Tv(jg);if(nA&&nA.kind===1&&nA.parameterIndex===0)return Gv(zn,nA.type,Ms,!0);if(!Z5(tc,Js))return zn;let Sp=Yf(tc,ch);return Xo(zn)&&(Sp===qn||Sp===Js)||!Ms&&!(Sp.flags&524288&&!mk(Sp))?zn:Gv(zn,Sp,Ms,!0)}function ch(zn){let as=Pi(zn,"prototype");if(as&&!Xo(as))return as;let Ms=tg(zn,1);return Ms.length?Ha(At(Ms,Ao=>ud(y2e(Ao)))):Xg}function Gv(zn,as,Ms,Ao){let ea=zn.flags&1048576?`N${QC(zn)},${QC(as)},${(Ms?1:0)|(Ao?2:0)}`:void 0;return Hy(ea)??HB(ea,sfe(zn,as,Ms,Ao))}function sfe(zn,as,Ms,Ao){if(!Ms){if(zn===as)return Wi;if(Ao)return nm(zn,Sp=>!Z5(Sp,as));zn=zn.flags&2?TA:zn;let nA=Gv(zn,as,!0,!1);return sKt(nm(zn,Sp=>!Jpe(Sp,nA)))}if(zn.flags&3||zn===as)return as;let ea=Ao?Z5:YQ,tc=zn.flags&1048576?HWe(zn):void 0,jg=Yf(as,nA=>{let Sp=tc&&Pi(nA,tc),tC=Sp&&YWe(zn,Sp),P0=Yf(tC||zn,Ao?Qb=>Z5(Qb,nA)?Qb:Z5(nA,Qb)?nA:Wi:Qb=>Mpe(Qb,nA)?Qb:Mpe(nA,Qb)?nA:YQ(Qb,nA)?Qb:YQ(nA,Qb)?nA:Wi);return P0.flags&131072?Yf(zn,Qb=>ah(Qb,465829888)&&ea(nA,L_(Qb)||cn)?Kg([Qb,nA]):Wi):P0});return jg.flags&131072?YQ(as,zn)?as:dg(zn,as)?zn:dg(as,zn)?as:Kg([zn,as]):jg}function lSe(zn,as,Ms){if(lmn(as,u)){let Ao=Ms||!_B(as)?UWe(as):void 0,ea=Ao&&Tv(Ao);if(ea&&(ea.kind===0||ea.kind===1))return ofe(zn,ea,as,Ms)}if(x2e(zn)&&_p(u)&&jo(as.expression)){let Ao=as.expression;if(h_(u.expression,XQ(Ao.expression))&&Ir(Ao.name)&&Ao.name.escapedText==="hasOwnProperty"&&as.arguments.length===1){let ea=as.arguments[0];if(mA(ea)&&vK(u)===Ap(ea.text))return Dv(zn,Ms?524288:65536)}}return zn}function ofe(zn,as,Ms,Ao){if(as.type&&!(Xo(zn)&&(as.type===qn||as.type===Js))){let ea=JHs(as,Ms);if(ea){if(h_(u,ea))return Gv(zn,as.type,Ao,!1);ot&&BK(ea,u)&&(Ao&&!hR(as.type,65536)||!Ao&&RE(as.type,iOe))&&(zn=wK(zn,2097152));let tc=yl(ea,zn);if(tc)return ka(zn,tc,jg=>Gv(jg,as.type,Ao,!1))}}return zn}function y2(zn,as,Ms){if(gY(as)||fo(as.parent)&&(as.parent.operatorToken.kind===61||as.parent.operatorToken.kind===78)&&as.parent.left===as)return uSe(zn,as,Ms);switch(as.kind){case 80:if(!h_(u,as)&&re<5){let Ao=L0(as);if(kq(Ao)){let ea=Ao.valueDeclaration;if(ea&&nc(ea)&&!ea.type&&ea.initializer&&lKt(u)){re++;let tc=y2(zn,ea.initializer,Ms);return re--,tc}}}case 110:case 108:case 212:case 213:return gd(zn,as,Ms);case 214:return lSe(zn,as,Ms);case 218:case 236:case 239:return y2(zn,as.expression,Ms);case 227:return V0(zn,as,Ms);case 225:if(as.operator===54)return y2(zn,as.operand,!Ms);break}return zn}function uSe(zn,as,Ms){if(h_(u,as))return wK(zn,Ms?2097152:262144);let Ao=yl(as,zn);return Ao?ka(zn,Ao,ea=>Dv(ea,Ms?2097152:262144)):zn}}function KHs(u,m){if(u=fn(u),(m.kind===80||m.kind===81)&&(P7(m)&&(m=m.parent),MT(m)&&(!bF(m)||B3(m)))){let v=vot(B3(m)&&m.kind===212?tat(m,void 0,!0):P_(m));if(fn(sa(m).resolvedSymbol)===u)return v}return HT(m)&&cv(m.parent)&&ZQ(m.parent)?Vst(m.parent.symbol):tbe(m)&&B3(m.parent)?b9(u):AR(u)}function Kpe(u){return ji(u.parent,m=>bu(m)&&!ZL(m)||m.kind===269||m.kind===308||m.kind===173)}function jHs(u){return(u.lastAssignmentPos!==void 0||V2e(u)&&u.lastAssignmentPos!==void 0)&&u.lastAssignmentPos<0}function V2e(u){return!Smn(u,void 0)}function Smn(u,m){let v=ji(u.valueDeclaration,Wot);if(!v)return!1;let D=sa(v);return D.flags&131072||(D.flags|=131072,zHs(v)||Bmn(v)),!u.lastAssignmentPos||m&&Math.abs(u.lastAssignmentPos)m.kind!==233&&vmn(m.name))}function zHs(u){return!!ji(u.parent,m=>Wot(m)&&!!(sa(m).flags&131072))}function Wot(u){return kd(u)||ll(u)}function Bmn(u){switch(u.kind){case 80:let m=QD(u);if(m!==0){let P=L0(u),Y=m===1||P.lastAssignmentPos!==void 0&&P.lastAssignmentPos<0;if(P2e(P)){if(P.lastAssignmentPos===void 0||Math.abs(P.lastAssignmentPos)!==Number.MAX_VALUE){let oe=ji(u,Wot),Be=ji(P.valueDeclaration,Wot);P.lastAssignmentPos=oe===Be?qHs(u,P.valueDeclaration):Number.MAX_VALUE}Y&&P.lastAssignmentPos>0&&(P.lastAssignmentPos*=-1)}}return;case 282:let v=u.parent.parent,D=u.propertyName||u.name;if(!u.isTypeOnly&&!v.isTypeOnly&&!v.moduleSpecifier&&D.kind!==11){let P=TI(D,111551,!0,!0);if(P&&P2e(P)){let Y=P.lastAssignmentPos!==void 0&&P.lastAssignmentPos<0?-1:1;P.lastAssignmentPos=Y*Number.MAX_VALUE}}return;case 265:case 266:case 267:return}uc(u)||Lu(u,Bmn)}function qHs(u,m){let v=u.pos;for(;u&&u.pos>m.pos;){switch(u.kind){case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 259:case 264:v=u.end}u=u.parent}return v}function kq(u){return u.flags&3&&(TKt(u)&6)!==0}function P2e(u){let m=u.valueDeclaration&&Rw(u.valueDeclaration);return!!m&&(Si(m)||nc(m)&&(iQ(m.parent)||wmn(m)))}function wmn(u){return!!(u.parent.flags&1)&&!(Hc(u)&32||u.parent.parent.kind===244&&fc(u.parent.parent.parent))}function $Hs(u){let m=sa(u);if(m.parameterInitializerContainsUndefined===void 0){if(!VN(u,8))return AK(u.symbol),!0;let v=!!hR(zpe(u,0),16777216);if(!xr())return AK(u.symbol),!0;m.parameterInitializerContainsUndefined??(m.parameterInitializerContainsUndefined=v)}return m.parameterInitializerContainsUndefined}function eYs(u,m){return ot&&m.kind===170&&m.initializer&&hR(u,16777216)&&!$Hs(m)?Dv(u,524288):u}function tYs(u,m){let v=m.parent;return v.kind===212||v.kind===167||v.kind===214&&v.expression===m||v.kind===215&&v.expression===m||v.kind===213&&v.expression===m&&!(kv(u,Rmn)&&_K(P_(v.argumentExpression)))}function Tmn(u){return u.flags&2097152?jt(u.types,Tmn):!!(u.flags&465829888&&WN(u).flags&1146880)}function Rmn(u){return u.flags&2097152?jt(u.types,Rmn):!!(u.flags&465829888&&!ah(WN(u),98304))}function rYs(u,m){let v=(Ir(u)||jo(u)||Yg(u))&&!(($T(u.parent)||_U(u.parent))&&u.parent.tagName===u)&&(m&&m&32?Jy(u,8):Jy(u,void 0));return v&&!G5(v)}function gKt(u,m,v){return xse(u)&&(u=u.baseType),!(v&&v&2)&&kv(u,Tmn)&&(tYs(u,m)||rYs(m,v))?Yf(u,WN):u}function Nmn(u){return!!ji(u,m=>{let v=m.parent;return v===void 0?"quit":Cf(v)?v.expression===m&&Od(m):R0(v)?v.name===m||v.propertyName===m:!1})}function xq(u,m,v,D){if(Ht&&!(u.flags&33554432&&!ss(u)&&!pi(u)))switch(m){case 1:return Oot(u);case 2:return Dmn(u,v,D);case 3:return kmn(u);case 4:return AKt(u);case 5:return xmn(u);case 6:return Gmn(u);case 7:return Fmn(u);case 8:return Zmn(u);case 0:{if(Ir(u)&&(MT(u)||a0(u.parent)||km(u.parent)&&u.parent.moduleReference===u)&&Wmn(u)){if(SJ(u.parent)&&(jo(u.parent)?u.parent.expression:u.parent.left)!==u)return;Oot(u);return}if(SJ(u)){let P=u;for(;SJ(P);){if(ww(P))return;P=P.parent}return Dmn(u)}return Cf(u)?kmn(u):eI(u)||Pw(u)?AKt(u):km(u)?d3(u)||wat(u)?Gmn(u):void 0:R0(u)?Fmn(u):((kd(u)||hl(u))&&xmn(u),!Te.emitDecoratorMetadata||!oQ(u)||!p1(u)||!u.modifiers||!OJ(Ue,u,u.parent,u.parent.parent)?void 0:Zmn(u))}default:pe.assertNever(m,`Unhandled reference hint: ${m}`)}}function Oot(u){let m=L0(u);m&&m!==st&&m!==it&&!YL(u)&&zWe(m,u)}function Dmn(u,m,v){let D=jo(u)?u.expression:u.left;if(vF(D)||!Ir(D))return;let P=L0(D);if(!P||P===it)return;if(sS(Te)||Fb(Te)&&Nmn(u)){zWe(P,u);return}let Y=v||RI(D);if(Xo(Y)||Y===Vn){zWe(P,u);return}let oe=m;if(!oe&&!v){let Be=jo(u)?u.name:u.right,Oe=p(Be)&&sOe(Be.escapedText,Be),He=QD(u),qe=fy(He!==0||kKt(u)?D1(Y):Y);oe=p(Be)?Oe&&nat(qe,Oe)||void 0:Gg(qe,Be.escapedText)}oe&&(oSe(oe)||oe.flags&8&&u.parent.kind===307)||zWe(P,u)}function kmn(u){if(Ir(u.expression)){let m=u.expression,v=fn(TI(m,-1,!0,!0,u));v&&zWe(v,m)}}function AKt(u){if(!$ot(u)){let m=PA&&Te.jsx===2?Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:void 0,v=Mw(u),D=eI(u)?u.tagName:u,P=Te.jsx!==1&&Te.jsx!==3,Y;if(Pw(u)&&v==="null"||(Y=An(D,v,P?111551:111167,m,!0)),Y&&(Y.isReferenced=-1,Ht&&Y.flags&2097152&&!uR(Y)&&Mot(Y)),Pw(u)){let oe=ms(u),Be=W8t(oe);if(Be){let Oe=B0(Be).escapedText;An(D,Oe,P?111551:111167,m,!0)}}}}function xmn(u){if(Ze<2&&SI(u)&2){let m=xb(u);nYs(m)}}function Gmn(u){Ga(u,32)&&Lmn(u)}function Fmn(u){if(!u.parent.parent.moduleSpecifier&&!u.isTypeOnly&&!u.parent.parent.isTypeOnly){let m=u.propertyName||u.name;if(m.kind===11)return;let v=An(m,m.escapedText,2998271,void 0,!0);if(!(v&&(v===dt||v===pr||v.declarations&&fc(Tn(v.declarations[0]))))){let D=v&&(v.flags&2097152?YC(v):v);(!D||Hb(D)&111551)&&(Lmn(u),Oot(m))}return}}function Zmn(u){if(Te.emitDecoratorMetadata){let m=de(u.modifiers,So);if(!m)return;switch(eC(m,16),u.kind){case 264:let v=lN(u);if(v)for(let oe of v.parameters)Wse(_at(oe));break;case 178:case 179:let D=u.kind===178?179:178,P=Cp(Uo(u),D);Wse(ZQ(u)||P&&ZQ(P));break;case 175:for(let oe of u.parameters)Wse(_at(oe));Wse(xb(u));break;case 173:Wse(kh(u));break;case 170:Wse(_at(u));let Y=u.parent;for(let oe of Y.parameters)Wse(_at(oe));Wse(xb(Y));break}}}function zWe(u,m){if(Ht&&qU(u,111551)&&!OY(m)){let v=YC(u);Hb(u,!0)&1160127&&(sS(Te)||Fb(Te)&&Nmn(m)||!oSe(fn(v)))&&Mot(u)}}function Mot(u){pe.assert(Ht);let m=fa(u);if(!m.referenced){m.referenced=!0;let v=Mb(u);if(!v)return pe.fail();if(d3(v)&&Hb(Zh(u))&111551){let D=B0(v.moduleReference);Oot(D)}}}function Lmn(u){let m=Uo(u),v=YC(m);v&&(v===it||Hb(m,!0)&111551&&!oSe(v))&&Mot(m)}function Vmn(u,m){if(!u)return;let v=B0(u),D=(u.kind===80?788968:1920)|2097152,P=An(v,v.escapedText,D,void 0,!0);if(P&&P.flags&2097152){if(Ht&&qi(P)&&!oSe(YC(P))&&!uR(P))Mot(P);else if(m&&sS(Te)&&i0(Te)>=5&&!qi(P)&&!jt(P.declarations,nN)){let Y=Sr(u,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),oe=de(P.declarations||E,d9);oe&&lg(Y,mo(oe,Z._0_was_imported_here,Vo(v)))}}}function nYs(u){Vmn(u&&ene(u),!1)}function Wse(u){let m=m8t(u);m&&fC(m)&&Vmn(m,!0)}function iYs(u,m){var v;let D=Io(u),P=u.valueDeclaration;if(P){if(hg(P)&&!P.initializer&&!P.dotDotDotToken&&P.parent.elements.length>=2){let Y=P.parent.parent,oe=Rw(Y);if(oe.kind===261&&jQ(oe)&6||oe.kind===170){let Be=sa(Y);if(!(Be.flags&4194304)){Be.flags|=4194304;let Oe=Cc(Y,0),He=Oe&&Yf(Oe,WN);if(Be.flags&=-4194305,He&&He.flags&1048576&&!(oe.kind===170&&uKt(oe))){let qe=P.parent,Vt=dZ(qe,He,He,void 0,m.flowNode);return Vt.flags&131072?Wi:uW(P,Vt,!0)}}}}if(Si(P)&&!P.type&&!P.initializer&&!P.dotDotDotToken){let Y=P.parent;if(Y.parameters.length>=2&&dot(Y)){let oe=O2e(Y);if(oe&&oe.parameters.length===1&&D0(oe)){let Be=Fpe(_l(Io(oe.parameters[0]),(v=JQ(Y))==null?void 0:v.nonFixingMapper));if(Be.flags&1048576&&RE(Be,yA)&&!jt(Y.parameters,uKt)){let Oe=dZ(Y,Be,Be,void 0,m.flowNode),He=Y.parameters.indexOf(P)-(vP(Y)?1:0);return R1(Oe,fR(He))}}}}}return D}function Pmn(u,m){if(YL(u))return;if(m===st){if(FKt(u,!0)){Sr(u,Z.arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks);return}let Y=A1(u);if(Y)for(Ze<2&&(Y.kind===220?Sr(u,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):Ga(Y,1024)&&Sr(u,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),sa(Y).flags|=512;Y&&lA(Y);)Y=A1(Y),Y&&(sa(Y).flags|=512);return}let v=fn(m),D=D8t(v,u);dy(D)&&cUt(u,D)&&D.declarations&&YB(u,D.declarations,u.escapedText);let P=v.valueDeclaration;if(P&&v.flags&32&&xa(P)&&P.name!==u){let Y=r0(u,!1,!1);for(;Y.kind!==308&&Y.parent!==P;)Y=r0(Y,!1,!1);Y.kind!==308&&(sa(P).flags|=262144,sa(Y).flags|=262144,sa(u).flags|=536870912)}lYs(u,m)}function sYs(u,m){if(YL(u))return qWe(u);let v=L0(u);if(v===it)return nn;if(Pmn(u,v),v===st)return FKt(u)?nn:Io(v);Wmn(u)&&xq(u,1);let D=fn(v),P=D.valueDeclaration,Y=P;if(P&&P.kind===209&&k(MB,P.parent)&&ji(u,Mi=>Mi===P.parent))return ds;let oe=iYs(D,u),Be=QD(u);if(Be){if(!(D.flags&3)&&!(wo(u)&&D.flags&512)){let Mi=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return Sr(u,Mi,kl(v)),nn}if(yR(D))return D.flags&3?Sr(u,Z.Cannot_assign_to_0_because_it_is_a_constant,kl(v)):Sr(u,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,kl(v)),nn}let Oe=D.flags&2097152;if(D.flags&3){if(Be===1)return qge(u)?uZ(oe):oe}else if(Oe)P=Mb(v);else return oe;if(!P)return oe;oe=gKt(oe,u,m);let He=Rw(P).kind===170,qe=Kpe(P),Vt=Kpe(u),kt=Vt!==qe,vr=u.parent&&u.parent.parent&&Lx(u.parent)&&aKt(u.parent.parent),dn=v.flags&134217728,vn=oe===En||oe===OC,ii=vn&&u.parent.kind===236;for(;Vt!==qe&&(Vt.kind===219||Vt.kind===220||Vge(Vt))&&(kq(D)&&oe!==OC||P2e(D)&&Smn(D,u));)Vt=Kpe(Vt);let Yi=Y&&nc(Y)&&!Y.initializer&&!Y.exclamationToken&&wmn(Y)&&!jHs(v),js=He||Oe||kt&&!Yi||vr||dn||oYs(u,P)||oe!==En&&oe!==OC&&(!ot||(oe.flags&16387)!==0||OY(u)||eKt(u)||u.parent.kind===282)||u.parent.kind===236||P.kind===261&&P.exclamationToken||P.flags&33554432,Co=ii?Bt:js?He?eYs(oe,P):oe:vn?Bt:mW(oe),Ji=ii?gZ(dZ(u,oe,Co,Vt)):dZ(u,oe,Co,Vt);if(!bmn(u)&&(oe===En||oe===OC)){if(Ji===En||Ji===OC)return Rt&&(Sr(Il(P),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,kl(v),no(Ji)),Sr(u,Z.Variable_0_implicitly_has_an_1_type,kl(v),no(Ji))),iSe(Ji)}else if(!js&&!Zse(oe)&&Zse(Ji))return Sr(u,Z.Variable_0_is_used_before_being_assigned,kl(v)),oe;return Be?uZ(Ji):Ji}function oYs(u,m){if(hg(m)){let v=ji(u,hg);return v&&Rw(v)===Rw(m)}}function Wmn(u){var m;let v=u.parent;if(v){if(jo(v)&&v.expression===u||R0(v)&&v.isTypeOnly)return!1;let D=(m=v.parent)==null?void 0:m.parent;if(D&&Gh(D)&&D.isTypeOnly)return!1}return!0}function aYs(u,m){return!!ji(u,v=>v===m?"quit":bu(v)||v.parent&&pi(v.parent)&&!zh(v.parent)&&v.parent.initializer===v)}function cYs(u,m){return ji(u,v=>v===m?"quit":v===m.initializer||v===m.condition||v===m.incrementor||v===m.statement)}function dKt(u){return ji(u,m=>!m||Fye(m)?"quit":VT(m,!1))}function lYs(u,m){if(Ze>=2||!(m.flags&34)||!m.valueDeclaration||ll(m.valueDeclaration)||m.valueDeclaration.parent.kind===300)return;let v=tS(m.valueDeclaration),D=aYs(u,v),P=dKt(v);if(P){if(D){let Y=!0;if(L3(v)){let oe=ML(m.valueDeclaration,262);if(oe&&oe.parent===v){let Be=cYs(u.parent,v);if(Be){let Oe=sa(Be);Oe.flags|=8192;let He=Oe.capturedBlockScopeBindings||(Oe.capturedBlockScopeBindings=[]);Qi(He,m),Be===v.initializer&&(Y=!1)}}}Y&&(sa(P).flags|=4096)}if(L3(v)){let Y=ML(m.valueDeclaration,262);Y&&Y.parent===v&&gYs(u,v)&&(sa(m.valueDeclaration).flags|=65536)}sa(m.valueDeclaration).flags|=32768}D&&(sa(m.valueDeclaration).flags|=16384)}function uYs(u,m){let v=sa(u);return!!v&&k(v.capturedBlockScopeBindings,Uo(m))}function gYs(u,m){let v=u;for(;v.parent.kind===218;)v=v.parent;let D=!1;if(bF(v))D=!0;else if(v.parent.kind===225||v.parent.kind===226){let P=v.parent;D=P.operator===46||P.operator===47}return D?!!ji(v,P=>P===m?"quit":P===m.statement):!1}function pKt(u,m){if(sa(u).flags|=2,m.kind===173||m.kind===177){let v=m.parent;sa(v).flags|=4}else sa(m).flags|=4}function Omn(u){return Dy(u)?u:bu(u)?void 0:Lu(u,Omn)}function fKt(u){let m=Uo(u),v=Fp(m);return nZ(v)===Ot}function Mmn(u,m,v){let D=m.parent;OL(D)&&!fKt(D)&&UJ(u)&&u.flowNode&&!Pot(u.flowNode,!1)&&Sr(u,v)}function AYs(u,m){pi(m)&&zh(m)&&Ue&&m.initializer&&sl(m.initializer,u.pos)&&p1(m.parent)&&Sr(u,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function qWe(u){let m=OY(u),v=r0(u,!0,!0),D=!1,P=!1;for(v.kind===177&&Mmn(u,v,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(v.kind===220&&(v=r0(v,!1,!P),D=!0),v.kind===168){v=r0(v,!D,!1),P=!0;continue}break}if(AYs(u,v),P)Sr(u,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(v.kind){case 268:Sr(u,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 267:Sr(u,Z.this_cannot_be_referenced_in_current_location);break}!m&&D&&Ze<2&&pKt(u,v);let Y=IKt(u,!0,v);if(Lt){let oe=Io(pr);if(Y===oe&&D)Sr(u,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!Y){let Be=Sr(u,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!ll(v)){let Oe=IKt(v);Oe&&Oe!==oe&&lg(Be,mo(v,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return Y||hr}function IKt(u,m=!0,v=r0(u,!1,!1)){let D=wo(u);if(bu(v)&&(!CKt(u)||vP(v))){let P=Lst(v)||D&&fYs(v);if(!P){let Y=pYs(v);if(D&&Y){let oe=Ol(Y).symbol;oe&&oe.members&&oe.flags&16&&(P=Fp(oe).thisType)}else YN(v)&&(P=Fp(jA(v.symbol)).thisType);P||(P=hKt(v))}if(P)return dZ(u,P)}if(xa(v.parent)){let P=Uo(v.parent),Y=cg(v)?Io(P):Fp(P).thisType;return dZ(u,Y)}if(ll(v))if(v.commonJsModuleIndicator){let P=Uo(v);return P&&Io(P)}else{if(v.externalModuleIndicator)return Bt;if(m)return Io(pr)}}function dYs(u){let m=r0(u,!1,!1);if(bu(m)){let v=yS(m);if(v.thisParameter)return Lot(v.thisParameter)}if(xa(m.parent)){let v=Uo(m.parent);return cg(m)?Io(v):Fp(v).thisType}}function pYs(u){if(u.kind===219&&fo(u.parent)&&nI(u.parent)===3)return u.parent.left.expression.expression;if(u.kind===175&&u.parent.kind===211&&fo(u.parent.parent)&&nI(u.parent.parent)===6)return u.parent.parent.left.expression;if(u.kind===219&&u.parent.kind===304&&u.parent.parent.kind===211&&fo(u.parent.parent.parent)&&nI(u.parent.parent.parent)===6)return u.parent.parent.parent.left.expression;if(u.kind===219&&fm(u.parent)&&Ir(u.parent.name)&&(u.parent.name.escapedText==="value"||u.parent.name.escapedText==="get"||u.parent.name.escapedText==="set")&&og(u.parent.parent)&&Zl(u.parent.parent.parent)&&u.parent.parent.parent.arguments[2]===u.parent.parent&&nI(u.parent.parent.parent)===9)return u.parent.parent.parent.arguments[0].expression;if(uu(u)&&Ir(u.name)&&(u.name.escapedText==="value"||u.name.escapedText==="get"||u.name.escapedText==="set")&&og(u.parent)&&Zl(u.parent.parent)&&u.parent.parent.arguments[2]===u.parent&&nI(u.parent.parent)===9)return u.parent.parent.arguments[0].expression}function fYs(u){let m=Nb(u);if(m&&m.typeExpression)return nl(m.typeExpression);let v=Lpe(u);if(v)return k5(v)}function IYs(u,m){return!!ji(u,v=>kd(v)?"quit":v.kind===170&&v.parent===m)}function Hot(u){let m=u.parent.kind===214&&u.parent.expression===u,v=C7(u,!0),D=v,P=!1,Y=!1;if(!m){for(;D&&D.kind===220;)Ga(D,1024)&&(Y=!0),D=C7(D,!0),P=Ze<2;D&&Ga(D,1024)&&(Y=!0)}let oe=0;if(!D||!qe(D)){let Vt=ji(u,kt=>kt===D?"quit":kt.kind===168);return Vt&&Vt.kind===168?Sr(u,Z.super_cannot_be_referenced_in_a_computed_property_name):m?Sr(u,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(xa(D.parent)||D.parent.kind===211)?Sr(u,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):Sr(u,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),nn}if(!m&&v.kind===177&&Mmn(u,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),cg(D)||m?(oe=32,!m&&Ze>=2&&Ze<=8&&(pi(D)||fl(D))&&Dge(u.parent,Vt=>{(!ll(Vt)||vl(Vt))&&(sa(Vt).flags|=2097152)})):oe=16,sa(u).flags|=oe,D.kind===175&&Y&&(xy(u.parent)&&bF(u.parent)?sa(D).flags|=256:sa(D).flags|=128),P&&pKt(u.parent,D),D.parent.kind===211)return Ze<2?(Sr(u,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),nn):hr;let Be=D.parent;if(!OL(Be))return Sr(u,Z.super_can_only_be_referenced_in_a_derived_class),nn;if(fKt(Be))return m?nn:Ot;let Oe=Fp(Uo(Be)),He=Oe&&Kw(Oe)[0];if(!He)return nn;if(D.kind===177&&IYs(u,D))return Sr(u,Z.super_cannot_be_referenced_in_constructor_arguments),nn;return oe===32?nZ(Oe):T1(He,Oe.thisType);function qe(Vt){return m?Vt.kind===177:xa(Vt.parent)||Vt.parent.kind===211?cg(Vt)?Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===176:Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===172||Vt.kind===177:!1}}function Hmn(u){return(u.kind===175||u.kind===178||u.kind===179)&&u.parent.kind===211?u.parent:u.kind===219&&u.parent.kind===304?u.parent.parent:void 0}function Ymn(u){return la(u)&4&&u.target===C2?lf(u)[0]:void 0}function hYs(u){return Yf(u,m=>m.flags&2097152?F(m.types,Ymn):Ymn(m))}function Qmn(u,m){let v=u,D=m;for(;D;){let P=hYs(D);if(P)return P;if(v.parent.kind!==304)break;v=v.parent.parent,D=O5(v,void 0)}}function hKt(u){if(u.kind===220)return;if(dot(u)){let v=O2e(u);if(v){let D=v.thisParameter;if(D)return Io(D)}}let m=wo(u);if(Lt||m){let v=Hmn(u);if(v){let P=O5(v,void 0),Y=Qmn(v,P);return Y?_l(Y,QUt(JQ(v))):D1(P?gZ(P):RI(v))}let D=gv(u.parent);if(Jm(D)){let P=D.left;if(_p(P)){let{expression:Y}=P;if(m&&Ir(Y)){let oe=ms(D);if(oe.commonJsModuleIndicator&&L0(Y)===oe.symbol)return}return D1(RI(Y))}}}}function Xmn(u){let m=u.parent;if(!dot(m))return;let v=ZL(m);if(v&&v.arguments){let P=aat(v),Y=m.parameters.indexOf(u);if(u.dotDotDotToken)return HKt(P,Y,P.length,hr,void 0,0);let oe=sa(v),Be=oe.resolvedSignature;oe.resolvedSignature=Ls;let Oe=Y0)return Rpe(v.name,!0,!1)}}function yYs(u,m){let v=A1(u);if(v){let D=Yot(v,m);if(D){let P=SI(v);if(P&1){let Y=(P&2)!==0;D.flags&1048576&&(D=nm(D,Be=>!!D9(1,Be,Y)));let oe=D9(1,D,(P&2)!==0);if(!oe)return;D=oe}if(P&2){let Y=Yf(D,pZ);return Y&&Ha([Y,A_n(Y)])}return D}}}function bYs(u,m){let v=Jy(u,m);if(v){let D=pZ(v);return D&&Ha([D,A_n(D)])}}function EYs(u,m){let v=A1(u);if(v){let D=SI(v),P=Yot(v,m);if(P){let Y=(D&2)!==0;if(!u.asteriskToken&&P.flags&1048576&&(P=nm(P,oe=>!!D9(1,oe,Y))),u.asteriskToken){let oe=R8t(P,Y),Be=oe?.yieldType??Vn,Oe=Jy(u,m)??Vn,He=oe?.nextType??cn,qe=Aat(Be,Oe,He,!1);if(Y){let Vt=Aat(Be,Oe,He,!0);return Ha([qe,Vt])}return qe}return D9(0,P,Y)}}}function CKt(u){let m=!1;for(;u.parent&&!bu(u.parent);){if(Si(u.parent)&&(m||u.parent.initializer===u))return!0;hg(u.parent)&&u.parent.initializer===u&&(m=!0),u=u.parent}return!1}function Jmn(u,m){let v=!!(SI(m)&2),D=Yot(m,void 0);if(D)return D9(u,D,v)||void 0}function Yot(u,m){let v=Nse(u);if(v)return v;let D=Kot(u);if(D&&!Jst(D)){let Y=ud(D),oe=SI(u);return oe&1?nm(Y,Be=>!!(Be.flags&58998787)||d8t(Be,oe,void 0)):oe&2?nm(Y,Be=>!!(Be.flags&58998787)||!!efe(Be)):Y}let P=ZL(u);if(P)return Jy(P,m)}function Umn(u,m){let D=aat(u).indexOf(m);return D===-1?void 0:_Kt(u,D)}function _Kt(u,m){if(Up(u))return m===0?$r:m===1?SIn(!1):hr;let v=sa(u).resolvedSignature===Go?Go:Hse(u);if(eI(u)&&m===0)return Uot(v,u);let D=v.parameters.length-1;return D0(v)&&m>=D?R1(Io(v.parameters[D]),fR(m-D),256):CR(v,m)}function SYs(u){let m=n8t(u);return m?fK(m):void 0}function vYs(u,m){if(u.parent.kind===216)return Umn(u.parent,m)}function BYs(u,m){let v=u.parent,{left:D,operatorToken:P,right:Y}=v;switch(P.kind){case 64:case 77:case 76:case 78:return u===Y?TYs(v):void 0;case 57:case 61:let oe=Jy(v,m);return u===Y&&(oe&&oe.pattern||!oe&&!uZe(v))?P_(D):oe;case 56:case 28:return u===Y?Jy(v,m):void 0;default:return}}function wYs(u){if(mE(u)&&u.symbol)return u.symbol;if(Ir(u))return L0(u);if(jo(u)){let v=P_(u.expression);return p(u.name)?m(v,u.name):Gg(v,u.name.escapedText)}if(Yg(u)){let v=RI(u.argumentExpression);if(!g2(v))return;let D=P_(u.expression);return Gg(D,A2(v))}return;function m(v,D){let P=sOe(D.escapedText,D);return P&&nat(v,P)}}function TYs(u){var m,v;let D=nI(u);switch(D){case 0:case 4:let P=wYs(u.left),Y=P&&P.valueDeclaration;if(Y&&(pi(Y)||ss(Y))){let Oe=kh(Y);return Oe&&_l(nl(Oe),fa(P).mapper)||(pi(Y)?Y.initializer&&P_(u.left):void 0)}return D===0?P_(u.left):Kmn(u);case 5:if(Qot(u,D))return Kmn(u);if(!mE(u.left)||!u.left.symbol)return P_(u.left);{let Oe=u.left.symbol.valueDeclaration;if(!Oe)return;let He=Ma(u.left,_p),qe=kh(Oe);if(qe)return nl(qe);if(Ir(He.expression)){let Vt=He.expression,kt=An(Vt,Vt.escapedText,111551,void 0,!0);if(kt){let vr=kt.valueDeclaration&&kh(kt.valueDeclaration);if(vr){let dn=YD(He);if(dn!==void 0)return W5(nl(vr),dn)}return}}return wo(Oe)||Oe===u.left?void 0:P_(u.left)}case 1:case 6:case 3:case 2:let oe;D!==2&&(oe=mE(u.left)?(m=u.left.symbol)==null?void 0:m.valueDeclaration:void 0),oe||(oe=(v=u.symbol)==null?void 0:v.valueDeclaration);let Be=oe&&kh(oe);return Be?nl(Be):void 0;case 7:case 8:case 9:return pe.fail("Does not apply");default:return pe.assertNever(D)}}function Qot(u,m=nI(u)){if(m===4)return!0;if(!wo(u)||m!==5||!Ir(u.left.expression))return!1;let v=u.left.expression.escapedText,D=An(u.left,v,111551,void 0,!0,!0);return Hge(D?.valueDeclaration)}function Kmn(u){if(!u.symbol)return P_(u.left);if(u.symbol.valueDeclaration){let P=kh(u.symbol.valueDeclaration);if(P){let Y=nl(P);if(Y)return Y}}let m=Ma(u.left,_p);if(!a2(r0(m.expression,!1,!1)))return;let v=qWe(m.expression),D=YD(m);return D!==void 0&&W5(v,D)||void 0}function RYs(u){return!!(iI(u)&262144&&!u.links.type&&rt(u,0)>=0)}function yKt(u,m){if(u.flags&16777216){let v=u;return!!(JB(fW(v)).flags&131072)&&aZ(IW(v))===aZ(v.checkType)&&dg(m,v.extendsType)}return u.flags&2097152?jt(u.types,v=>yKt(v,m)):!1}function W5(u,m,v){return Yf(u,D=>{if(D.flags&2097152){let P,Y,oe=!1;for(let Be of D.types){if(!(Be.flags&524288))continue;if(Yb(Be)&&I2e(Be)!==2){let He=jmn(Be,m,v);P=bKt(P,He);continue}let Oe=zmn(Be,m);if(!Oe){oe||(Y=Ft(Y,Be));continue}oe=!0,Y=void 0,P=bKt(P,Oe)}if(Y)for(let Be of Y){let Oe=qmn(Be,m,v);P=bKt(P,Oe)}return P?P.length===1?P[0]:Kg(P):void 0}if(D.flags&524288)return Yb(D)&&I2e(D)!==2?jmn(D,m,v):zmn(D,m)??qmn(D,m,v)},!0)}function bKt(u,m){return m?Ft(u,m.flags&1?cn:m):u}function jmn(u,m,v){let D=v||TE(Bc(m)),P=_S(u);if(u.nameType&&yKt(u.nameType,D)||yKt(P,D))return;let Y=L_(P)||P;if(dg(D,Y))return aot(u,D)}function zmn(u,m){let v=Gg(u,m);if(!(!v||RYs(v)))return AZ(Io(v),!!(v.flags&16777216))}function qmn(u,m,v){var D;if(yA(u)&&IN(m)&&+m>=0){let P=Qpe(u,u.target.fixedLength,0,!1,!0);if(P)return P}return(D=FJt(ZJt(u),v||TE(Bc(m))))==null?void 0:D.type}function $mn(u,m){if(pe.assert(a2(u)),!(u.flags&67108864))return EKt(u,m)}function EKt(u,m){let v=u.parent,D=fm(u)&&mKt(u,m);if(D)return D;let P=O5(v,m);if(P){if(Tse(u)){let Y=Uo(u);return W5(P,Y.escapedName,fa(Y).nameType)}if(XD(u)){let Y=Il(u);if(Y&&Un(Y)){let oe=Ol(Y.expression),Be=g2(oe)&&W5(P,A2(oe));if(Be)return Be}}if(u.name){let Y=sZ(u.name);return Yf(P,oe=>{var Be;return(Be=FJt(ZJt(oe),Y))==null?void 0:Be.type},!0)}}}function NYs(u){let m,v;for(let D=0;D{if(yA(Y)){if((D===void 0||mP)?v-m:0,Be=oe>0&&Y.target.combinedFlags&12?b2e(Y.target,3):0;return oe>0&&oe<=Be?lf(Y)[B9(Y)-oe]:Qpe(Y,D===void 0?Y.target.fixedLength:Math.min(Y.target.fixedLength,D),v===void 0||P===void 0?Be:Math.min(Be,v-P),!1,!0)}return(!D||mT9(Oe)?R1(Oe,fR(oe)):Oe,!0))}function xYs(u,m){let v=u.parent;return wJ(v)?Jy(u,m):bN(v)?kYs(v,u,m):void 0}function eCn(u,m){if(EN(u)){let v=O5(u.parent,m);return!v||Xo(v)?void 0:W5(v,cz(u.name))}else return Jy(u.parent,m)}function $We(u){switch(u.kind){case 11:case 9:case 10:case 15:case 229:case 112:case 97:case 106:case 80:case 157:return!0;case 212:case 218:return $We(u.expression);case 295:return!u.expression||$We(u.expression)}return!1}function GYs(u,m){let v=`D${rd(u)},${QC(m)}`;return Hy(v)??HB(v,SHs(m,u)??RUt(m,Nn(At(Me(u.properties,D=>D.symbol?D.kind===304?$We(D.initializer)&&Xpe(m,D.symbol.escapedName):D.kind===305?Xpe(m,D.symbol.escapedName):!1:!1),D=>[()=>COe(D.kind===304?D.initializer:D.name),D.symbol.escapedName]),At(Me(Gd(m),D=>{var P;return!!(D.flags&16777216)&&!!((P=u?.symbol)!=null&&P.members)&&!u.symbol.members.has(D.escapedName)&&Xpe(m,D.escapedName)}),D=>[()=>Bt,D.escapedName])),dg))}function FYs(u,m){let v=`D${rd(u)},${QC(m)}`,D=Hy(v);if(D)return D;let P=rOe(NK(u));return HB(v,RUt(m,Nn(At(Me(u.properties,Y=>!!Y.symbol&&Y.kind===292&&Xpe(m,Y.symbol.escapedName)&&(!Y.initializer||$We(Y.initializer))),Y=>[Y.initializer?()=>COe(Y.initializer):()=>tn,Y.symbol.escapedName]),At(Me(Gd(m),Y=>{var oe;if(!(Y.flags&16777216)||!((oe=u?.symbol)!=null&&oe.members))return!1;let Be=u.parent.parent;return Y.escapedName===P&&bN(Be)&&$J(Be.children).length?!1:!u.symbol.members.has(Y.escapedName)&&Xpe(m,Y.escapedName)}),Y=>[()=>Bt,Y.escapedName])),dg))}function O5(u,m){let v=a2(u)?$mn(u,m):Jy(u,m),D=Xot(v,u,m);if(D&&!(m&&m&2&&D.flags&8650752)){let P=Yf(D,Y=>la(Y)&32?Y:fy(Y),!0);return P.flags&1048576&&og(u)?GYs(u,P):P.flags&1048576&&nQ(u)?FYs(u,P):P}}function Xot(u,m,v){if(u&&ah(u,465829888)){let D=JQ(m);if(D&&v&1&&jt(D.inferences,D4s))return Jot(u,D.nonFixingMapper);if(D?.returnMapper){let P=Jot(u,D.returnMapper);return P.flags&1048576&&tG(P.types,Ys)&&tG(P.types,wn)?nm(P,Y=>Y!==Ys&&Y!==wn):P}}return u}function Jot(u,m){return u.flags&465829888?_l(u,m):u.flags&1048576?Ha(At(u.types,v=>Jot(v,m)),0):u.flags&2097152?Kg(At(u.types,v=>Jot(v,m))):u}function Jy(u,m){var v;if(u.flags&67108864)return;let D=rCn(u,!m);if(D>=0)return Wb[D];let{parent:P}=u;switch(P.kind){case 261:case 170:case 173:case 172:case 209:return _Ys(u,m);case 220:case 254:return yYs(u,m);case 230:return EYs(P,m);case 224:return bYs(P,m);case 214:case 215:return Umn(P,u);case 171:return SYs(P);case 217:case 235:return s2(P.type)?Jy(P,m):nl(P.type);case 227:return BYs(u,m);case 304:case 305:return EKt(P,m);case 306:return Jy(P.parent,m);case 210:{let Y=P,oe=O5(Y,m),Be=fP(Y.elements,u),Oe=(v=sa(Y)).spreadIndices??(v.spreadIndices=NYs(Y.elements));return SKt(oe,Be,Y.elements.length,Oe.first,Oe.last)}case 228:return DYs(u,m);case 240:return pe.assert(P.parent.kind===229),vYs(P.parent,u);case 218:{if(wo(P)){if(Zbe(P))return nl(Lbe(P));let Y=ov(P);if(Y&&!s2(Y.typeExpression.type))return nl(Y.typeExpression.type)}return Jy(P,m)}case 236:return Jy(P,m);case 239:return nl(P.type);case 278:return AW(P);case 295:return xYs(P,m);case 292:case 294:return eCn(P,m);case 287:case 286:return HYs(P,m);case 302:return MYs(P)}}function tCn(u){eOe(u,Jy(u,void 0),!0)}function eOe(u,m,v){kf[p_]=u,Wb[p_]=m,OB[p_]=v,p_++}function W2e(){p_--,kf[p_]=void 0,Wb[p_]=void 0,OB[p_]=void 0}function rCn(u,m){for(let v=p_-1;v>=0;v--)if(u===kf[v]&&(m||!OB[v]))return v;return-1}function ZYs(u,m){v1[GN]=u,s5[GN]=m,GN++}function LYs(){GN--,v1[GN]=void 0,s5[GN]=void 0}function JQ(u){for(let m=GN-1;m>=0;m--)if(EP(u,v1[m]))return s5[m]}function VYs(u){ok[ak]=u,o5[ak]??(o5[ak]=new Map),ak++}function PYs(){ak--,ok[ak]=void 0,o5[ak].clear()}function WYs(u){for(let m=ak-1;m>=0;m--)if(u===ok[m])return m;return-1}function OYs(){for(let u=ak-1;u>=0;u--)o5[u].clear()}function MYs(u){return W5(UJt(!1),XAe(u))}function HYs(u,m){if($T(u)&&m!==4){let v=rCn(u.parent,!m);if(v>=0)return Wb[v]}return _Kt(u,0)}function Uot(u,m){return Pw(m)||WCn(m)!==0?YYs(u,m):JYs(u,m)}function YYs(u,m){let v=t8t(u,cn);v=nCn(m,NK(m),v);let D=UQ(lS.IntrinsicAttributes,m);return uo(D)||(v=fWe(D,v)),v}function QYs(u,m){if(u.compositeSignatures){let D=[];for(let P of u.compositeSignatures){let Y=ud(P);if(Xo(Y))return Y;let oe=Pi(Y,m);if(!oe)return;D.push(oe)}return Kg(D)}let v=ud(u);return Xo(v)?v:Pi(v,m)}function XYs(u){if(Pw(u))return jCn(u);if(Fq(u.tagName)){let v=dCn(u),D=cat(u,v);return fK(D)}let m=RI(u.tagName);if(m.flags&128){let v=ACn(m,u);if(!v)return nn;let D=cat(u,v);return fK(D)}return m}function nCn(u,m,v){let D=IQs(m);if(D){let P=XYs(u),Y=ICn(D,wo(u),P,v);if(Y)return Y}return v}function JYs(u,m){let v=NK(m),D=mQs(v),P=D===void 0?t8t(u,cn):D===""?ud(u):QYs(u,D);if(!P)return D&&B(m.attributes.properties)&&Sr(m,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Bc(D)),cn;if(P=nCn(m,v,P),Xo(P))return P;{let Y=P,oe=UQ(lS.IntrinsicClassAttributes,m);if(!uo(oe)){let Oe=Ug(oe.symbol),He=ud(u),qe;if(Oe){let Vt=v9([He],Oe,Ik(Oe),wo(m));qe=_l(oe,N1(Oe,Vt))}else qe=oe;Y=fWe(qe,Y)}let Be=UQ(lS.IntrinsicAttributes,m);return uo(Be)||(Y=fWe(Be,Y)),Y}}function UYs(u){return a_(Te,"noImplicitAny")?Ul(u,(m,v)=>m===v||!m?m:Vfn(m.typeParameters,v.typeParameters)?zYs(m,v):void 0):void 0}function KYs(u,m,v){if(!u||!m)return u||m;let D=Ha([Io(u),_l(Io(m),v)]);return SK(u,D)}function jYs(u,m,v){let D=NE(u),P=NE(m),Y=D>=P?u:m,oe=Y===u?m:u,Be=Y===u?D:P,Oe=Ck(u)||Ck(m),He=Oe&&!Ck(Y),qe=new Array(Be+(He?1:0));for(let Vt=0;Vt=_R(Y)&&Vt>=_R(oe),Yi=Vt>=D?void 0:jpe(u,Vt),js=Vt>=P?void 0:jpe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=gA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?d0(dn):dn,qe[Vt]=Ji}if(He){let Vt=gA(1,"args",32768);Vt.links.type=d0(CR(oe,Be)),oe===m&&(Vt.links.type=_l(Vt.links.type,v)),qe[Be]=Vt}return qe}function zYs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=N1(m.typeParameters,u.typeParameters));let P=(u.flags|m.flags)&166,Y=u.declaration,oe=jYs(u,m,D),Be=li(oe);Be&&iI(Be)&32768&&(P|=1);let Oe=KYs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),qe=PN(Y,v,Oe,oe,void 0,void 0,He,P);return qe.compositeKind=2097152,qe.compositeSignatures=Nn(u.compositeKind===2097152&&u.compositeSignatures||[u],[m]),D&&(qe.mapper=u.compositeKind===2097152&&u.mapper&&u.compositeSignatures?F5(u.mapper,D):D),qe}function vKt(u,m){let v=tg(u,0),D=Me(v,P=>!qYs(P,m));return D.length===1?D[0]:UYs(D)}function qYs(u,m){let v=0;for(;v{let oe=h.getTokenEnd();if(D.category===3&&v&&oe===v.start&&P===v.length){let Be=QY(m.fileName,m.text,oe,P,D,Y);lg(v,Be)}else(!v||oe!==v.start)&&(v=qh(m,oe,P,D,Y),PA.add(v))}),h.setText(m.text,u.pos,u.end-u.pos);try{return h.scan(),pe.assert(h.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!v}finally{h.setText(""),h.setOnError(void 0)}}return!1}function eQs(u){let m=sa(u);return m.flags&1||(m.flags|=1,g(()=>$Ys(u))),XI}function tQs(u,m){ZeYpe(kt)||Yb(kt)&&!kt.nameType&&!!B2e(kt.target||kt)),Vt=!1;for(let kt=0;ktoe[vr]&8?pW(kt,ri)||hr:kt),2):ot?Ui:xe,Oe))}function sCn(u){if(!(la(u)&4))return u;let m=u.literalType;return m||(m=u.literalType=gIn(u),m.objectFlags|=147456),m}function iQs(u){switch(u.kind){case 168:return sQs(u);case 80:return IN(u.escapedText);case 9:case 11:return IN(u.text);default:return!1}}function sQs(u){return V_(zw(u),296)}function zw(u){let m=sa(u.expression);if(!m.resolvedType){if((mh(u.parent.parent)||xa(u.parent.parent)||g_(u.parent.parent))&&fo(u.expression)&&u.expression.operatorToken.kind===103&&u.parent.kind!==178&&u.parent.kind!==179)return m.resolvedType=nn;if(m.resolvedType=Ol(u.expression),pi(u.parent)&&!zh(u.parent)&&vd(u.parent.parent)){let v=tS(u.parent.parent),D=dKt(v);D&&(sa(D).flags|=4096,sa(u).flags|=32768,sa(u.parent.parent).flags|=32768)}(m.resolvedType.flags&98304||!V_(m.resolvedType,402665900)&&!dg(m.resolvedType,mc))&&Sr(u,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return m.resolvedType}function oQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return IN(u.escapedName)||v&&rh(v)&&iQs(v.name)}function oCn(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return k7(u)||v&&rh(v)&&Un(v.name)&&V_(zw(v.name),4096)}function aQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return v&&rh(v)&&Un(v.name)}function M2e(u,m,v,D){var P;let Y=[],oe;for(let Oe=m;Oe0&&(oe=OQ(oe,Ji(),u.symbol,dn,He),Y=[],P=qu(),ii=!1,Yi=!1,js=!1);let yl=JB(Ol(Mi.expression,m&2));if(tOe(yl)){let ka=pUt(yl,He);if(D&&lCn(ka,D,Mi),Co=Y.length,uo(oe))continue;oe=OQ(oe,ka,u.symbol,dn,He)}else Sr(Mi,Z.Spread_types_may_only_be_created_from_object_types),oe=nn;continue}else pe.assert(Mi.kind===178||Mi.kind===179),Lq(Mi);Ka&&!(Ka.flags&8576)?dg(Ka,mc)&&(dg(Ka,ri)?Yi=!0:dg(Ka,ci)?js=!0:ii=!0,v&&(vn=!0)):P.set(To.escapedName,To),Y.push(To)}if(W2e(),uo(oe))return nn;if(oe!==Xg)return Y.length>0&&(oe=OQ(oe,Ji(),u.symbol,dn,He),Y=[],P=qu(),ii=!1,Yi=!1),Yf(oe,Mi=>Mi===Xg?Ji():Mi);return Ji();function Ji(){let Mi=[],To=qpe(u);ii&&Mi.push(M2e(To,Co,Y,$r)),Yi&&Mi.push(M2e(To,Co,Y,ri)),js&&Mi.push(M2e(To,Co,Y,ci));let Ka=Hf(u.symbol,P,E,E,Mi);return Ka.objectFlags|=dn|128|131072,vr&&(Ka.objectFlags|=4096),vn&&(Ka.objectFlags|=512),v&&(Ka.pattern=u),Ka}}function tOe(u){let m=Yhn(Yf(u,WN));return!!(m.flags&126615553||m.flags&3145728&&ue(m.types,tOe))}function lQs(u){wKt(u)}function uQs(u,m){return Lq(u),nOe(u)||hr}function gQs(u){wKt(u.openingElement),Fq(u.closingElement.tagName)?qot(u.closingElement):Ol(u.closingElement.tagName),zot(u)}function AQs(u,m){return Lq(u),nOe(u)||hr}function dQs(u){wKt(u.openingFragment);let m=ms(u);RAe(Te)&&(Te.jsxFactory||m.pragmas.has("jsx"))&&!Te.jsxFragmentFactory&&!m.pragmas.has("jsxfrag")&&Sr(u,Te.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),zot(u);let v=nOe(u);return uo(v)?hr:v}function BKt(u){return u.includes("-")}function Fq(u){return Ir(u)&&eU(u.escapedText)||eR(u)}function aCn(u,m){return u.initializer?$pe(u.initializer,m):tn}function cCn(u,m=0){let v=ot?qu():void 0,D=qu(),P=sh,Y=!1,oe,Be=!1,Oe=2048,He=rOe(NK(u)),qe=Pw(u),Vt,kt=u;if(!qe){let vn=u.attributes;Vt=vn.symbol,kt=vn;let ii=Jy(vn,0);for(let Yi of vn.properties){let js=Yi.symbol;if(EN(Yi)){let Co=aCn(Yi,m);Oe|=la(Co)&458752;let Ji=gA(4|js.flags,js.escapedName);if(Ji.declarations=js.declarations,Ji.parent=js.parent,js.valueDeclaration&&(Ji.valueDeclaration=js.valueDeclaration),Ji.links.type=Co,Ji.links.target=js,D.set(Ji.escapedName,Ji),v?.set(Ji.escapedName,Ji),cz(Yi.name)===He&&(Be=!0),ii){let Mi=Gg(ii,js.escapedName);Mi&&Mi.declarations&&dy(Mi)&&Ir(Yi.name)&&YB(Yi.name,Mi.declarations,Yi.name.escapedText)}if(ii&&m&2&&!(m&4)&&bS(Yi)){let Mi=JQ(vn);pe.assert(Mi);let To=Yi.initializer.expression;HUt(Mi,To,Co)}}else{pe.assert(Yi.kind===294),D.size>0&&(P=OQ(P,dn(),vn.symbol,Oe,!1),D=qu());let Co=JB(Ol(Yi.expression,m&2));Xo(Co)&&(Y=!0),tOe(Co)?(P=OQ(P,Co,vn.symbol,Oe,!1),v&&lCn(Co,v,Yi)):(Sr(Yi.expression,Z.Spread_types_may_only_be_created_from_object_types),oe=oe?Kg([oe,Co]):Co)}}Y||D.size>0&&(P=OQ(P,dn(),vn.symbol,Oe,!1))}let vr=u.parent;if((bN(vr)&&vr.openingElement===u||P3(vr)&&vr.openingFragment===u)&&$J(vr.children).length>0){let vn=zot(vr,m);if(!Y&&He&&He!==""){Be&&Sr(kt,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Bc(He));let ii=$T(u)?O5(u.attributes,void 0):void 0,Yi=ii&&W5(ii,He),js=gA(4,He);js.links.type=vn.length===1?vn[0]:Yi&&kv(Yi,Ype)?hk(vn):d0(Ha(vn)),js.valueDeclaration=me.createPropertySignature(void 0,Bc(He),void 0,void 0),XA(js.valueDeclaration,kt),js.valueDeclaration.symbol=js;let Co=qu();Co.set(He,js),P=OQ(P,Hf(Vt,Co,E,E,E),Vt,Oe,!1)}}if(Y)return hr;if(oe&&P!==sh)return Kg([oe,P]);return oe||(P===sh?dn():P);function dn(){return Oe|=8192,pQs(Oe,Vt,D)}}function pQs(u,m,v){let D=Hf(m,v,E,E,E);return D.objectFlags|=u|8192|128|131072,D}function zot(u,m){let v=[];for(let D of u.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||v.push($r);else{if(D.kind===295&&!D.expression)continue;v.push($pe(D,m))}return v}function lCn(u,m,v){for(let D of Gd(u))if(!(D.flags&16777216)){let P=m.get(D.escapedName);if(P){let Y=Sr(P.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Bc(P.escapedName));lg(Y,mo(v,Z.This_spread_always_overwrites_this_property))}}}function fQs(u,m){return cCn(u.parent,m)}function UQ(u,m){let v=NK(m),D=v&&B1(v),P=D&&f_(D,u,788968);return P?Fp(P):nn}function qot(u){let m=sa(u);if(!m.resolvedSymbol){let v=UQ(lS.IntrinsicElements,u);if(uo(v))return Rt&&Sr(u,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Bc(lS.IntrinsicElements)),m.resolvedSymbol=it;{if(!Ir(u.tagName)&&!eR(u.tagName))return pe.fail();let D=eR(u.tagName)?oS(u.tagName):u.tagName.escapedText,P=Gg(v,D);if(P)return m.jsxFlags|=1,m.resolvedSymbol=P;let Y=F0n(v,TE(Bc(D)));return Y?(m.jsxFlags|=2,m.resolvedSymbol=Y):Ba(v,D)?(m.jsxFlags|=2,m.resolvedSymbol=v.symbol):(Sr(u,Z.Property_0_does_not_exist_on_type_1,Vbe(u.tagName),"JSX."+lS.IntrinsicElements),m.resolvedSymbol=it)}}return m.resolvedSymbol}function $ot(u){let m=u&&ms(u),v=m&&sa(m);if(v&&v.jsxImplicitImportContainer===!1)return;if(v&&v.jsxImplicitImportContainer)return v.jsxImplicitImportContainer;let D=Mne(One(Te,m),Te);if(!D)return;let Y=k_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed,oe=z8s(m,D),Be=eK(oe||u,D,Y,u),Oe=Be&&Be!==it?jA(Zh(Be)):void 0;return v&&(v.jsxImplicitImportContainer=Oe||!1),Oe}function NK(u){let m=u&&sa(u);if(m&&m.jsxNamespace)return m.jsxNamespace;if(!m||m.jsxNamespace!==!1){let D=$ot(u);if(!D||D===it){let P=Mw(u);D=An(u,P,1920,void 0,!1)}if(D){let P=Zh(f_(B1(Zh(D)),lS.JSX,1920));if(P&&P!==it)return m&&(m.jsxNamespace=P),P}m&&(m.jsxNamespace=!1)}let v=Zh(Gse(lS.JSX,1920,void 0));if(v!==it)return v}function uCn(u,m){let v=m&&f_(m.exports,u,788968),D=v&&Fp(v),P=D&&Gd(D);if(P){if(P.length===0)return"";if(P.length===1)return P[0].escapedName;P.length>1&&v.declarations&&Sr(v.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,Bc(u))}}function IQs(u){return u&&f_(u.exports,lS.LibraryManagedAttributes,788968)}function hQs(u){return u&&f_(u.exports,lS.ElementType,788968)}function mQs(u){return uCn(lS.ElementAttributesPropertyNameContainer,u)}function rOe(u){return Te.jsx===4||Te.jsx===5?"children":uCn(lS.ElementChildrenAttributeNameContainer,u)}function gCn(u,m){if(u.flags&4)return[Ls];if(u.flags&128){let P=ACn(u,m);return P?[cat(m,P)]:(Sr(m,Z.Property_0_does_not_exist_on_type_1,u.value,"JSX."+lS.IntrinsicElements),E)}let v=fy(u),D=tg(v,1);return D.length===0&&(D=tg(v,0)),D.length===0&&v.flags&1048576&&(D=vJt(At(v.types,P=>gCn(P,m)))),D}function ACn(u,m){let v=UQ(lS.IntrinsicElements,m);if(!uo(v)){let D=u.value,P=Gg(v,Ap(D));if(P)return Io(P);let Y=D5(v,$r);return Y||void 0}return hr}function CQs(u,m,v){if(u===1){let P=fCn(v);P&&Rv(m,P,l0,v.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(u===0){let P=pCn(v);P&&Rv(m,P,l0,v.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let P=fCn(v),Y=pCn(v);if(!P||!Y)return;let oe=Ha([P,Y]);Rv(m,oe,l0,v.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let P=xp(v.tagName);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,P)}}function dCn(u){var m;pe.assert(Fq(u.tagName));let v=sa(u);if(!v.resolvedJsxElementAttributesType){let D=qot(u);if(v.jsxFlags&1)return v.resolvedJsxElementAttributesType=Io(D)||nn;if(v.jsxFlags&2){let P=eR(u.tagName)?oS(u.tagName):u.tagName.escapedText;return v.resolvedJsxElementAttributesType=((m=vq(UQ(lS.IntrinsicElements,u),P))==null?void 0:m.type)||nn}else return v.resolvedJsxElementAttributesType=nn}return v.resolvedJsxElementAttributesType}function pCn(u){let m=UQ(lS.ElementClass,u);if(!uo(m))return m}function nOe(u){return UQ(lS.Element,u)}function fCn(u){let m=nOe(u);if(m)return Ha([m,Hn])}function _Qs(u){let m=NK(u);if(!m)return;let v=hQs(m);if(!v)return;let D=ICn(v,wo(u));if(!(!D||uo(D)))return D}function ICn(u,m,...v){let D=Fp(u);if(u.flags&524288){let P=fa(u).typeParameters;if(B(P)>=v.length){let Y=v9(v,P,v.length,m);return B(Y)===0?D:kse(u,Y)}}if(B(D.typeParameters)>=v.length){let P=v9(v,D.typeParameters,v.length,m);return iZ(D,P)}}function yQs(u){let m=UQ(lS.IntrinsicElements,u);return m?Gd(m):E}function bQs(u){(Te.jsx||0)===0&&Sr(u,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),nOe(u)===void 0&&Rt&&Sr(u,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function wKt(u){let m=eI(u);m&&b8s(u),bQs(u),AKt(u);let v=Hse(u);if(uat(v,u),m){let D=u,P=_Qs(D);if(P!==void 0){let Y=D.tagName,oe=Fq(Y)?TE(Vbe(Y)):Ol(Y);Rv(oe,P,l0,Y,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Be=xp(Y);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,Be)})}else CQs(WCn(D),ud(v),D)}}function eat(u,m,v){if(u.flags&524288&&(LQ(u,m)||vq(u,m)||p2e(m)&&$x(u,$r)||v&&BKt(m)))return!0;if(u.flags&33554432)return eat(u.baseType,m,v);if(u.flags&3145728&&H2e(u)){for(let D of u.types)if(eat(D,m,v))return!0}return!1}function H2e(u){return!!(u.flags&524288&&!(la(u)&512)||u.flags&67108864||u.flags&33554432&&H2e(u.baseType)||u.flags&1048576&&jt(u.types,H2e)||u.flags&2097152&&ue(u.types,H2e))}function EQs(u,m){if(S8s(u),u.expression){let v=Ol(u.expression,m);return u.dotDotDotToken&&v!==hr&&!Nv(v)&&Sr(u,Z.JSX_spread_child_must_be_an_array_type),v}else return nn}function TKt(u){return u.valueDeclaration?jQ(u.valueDeclaration):0}function RKt(u){if(u.flags&8192||iI(u)&4)return!0;if(wo(u.valueDeclaration)){let m=u.valueDeclaration.parent;return m&&fo(m)&&nI(m)===3}}function NKt(u,m,v,D,P,Y=!0){let oe=Y?u.kind===167?u.right:u.kind===206?u:u.kind===209&&u.propertyName?u.propertyName:u.name:void 0;return hCn(u,m,v,D,P,oe)}function hCn(u,m,v,D,P,Y){var oe;let Be=u2(P,v);if(m){if(Ze<2&&mCn(P))return Y&&Sr(Y,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Be&64)return Y&&Sr(Y,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,kl(P),no(Nq(P))),!1;if(!(Be&256)&&((oe=P.declarations)!=null&&oe.some(vre)))return Y&&Sr(Y,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,kl(P)),!1}if(Be&64&&mCn(P)&&($re(u)||aZe(u)||Km(u.parent)&&Hge(u.parent.parent))){let He=AN($m(P));if(He&&_Ks(u))return Y&&Sr(Y,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,kl(P),c2(He.name)),!1}if(!(Be&6))return!0;if(Be&2){let He=AN($m(P));return F8t(u,He)?!0:(Y&&Sr(Y,Z.Property_0_is_private_and_only_accessible_within_class_1,kl(P),no(Nq(P))),!1)}if(m)return!0;let Oe=x0n(u,He=>{let qe=Fp(Uo(He));return Ghn(qe,P,v)});return!Oe&&(Oe=SQs(u),Oe=Oe&&Ghn(Oe,P,v),Be&256||!Oe)?(Y&&Sr(Y,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,kl(P),no(Nq(P)||D)),!1):Be&256?!0:(D.flags&262144&&(D=D.isThisType?Xy(D):L_(D)),!D||!da(D,Oe)?(Y&&Sr(Y,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,kl(P),no(Oe),no(D)),!1):!0)}function SQs(u){let m=vQs(u),v=m?.type&&nl(m.type);if(v)v.flags&262144&&(v=Xy(v));else{let D=r0(u,!1,!1);bu(D)&&(v=hKt(D))}if(v&&la(v)&7)return vs(v)}function vQs(u){let m=r0(u,!1,!1);return m&&bu(m)?vP(m):void 0}function mCn(u){return!!LWe(u,m=>!(m.flags&8192))}function Ose(u){return HN(Ol(u),u)}function iOe(u){return hR(u,50331648)}function DKt(u){return iOe(u)?gZ(u):u}function BQs(u,m){let v=Od(u)?oy(u):void 0;if(u.kind===106){Sr(u,Z.The_value_0_cannot_be_used_here,"null");return}if(v!==void 0&&v.length<100){if(Ir(u)&&v==="undefined"){Sr(u,Z.The_value_0_cannot_be_used_here,"undefined");return}Sr(u,m&16777216?m&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,v)}else Sr(u,m&16777216?m&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function wQs(u,m){Sr(u,m&16777216?m&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function CCn(u,m,v){if(ot&&u.flags&2){if(Od(m)){let P=oy(m);if(P.length<100)return Sr(m,Z._0_is_of_type_unknown,P),nn}return Sr(m,Z.Object_is_of_type_unknown),nn}let D=Lse(u,50331648);if(D&50331648){v(m,D);let P=gZ(u);return P.flags&229376?nn:P}return u}function HN(u,m){return CCn(u,m,BQs)}function _Cn(u,m){let v=HN(u,m);if(v.flags&16384){if(Od(m)){let D=oy(m);if(Ir(m)&&D==="undefined")return Sr(m,Z.The_value_0_cannot_be_used_here,D),v;if(D.length<100)return Sr(m,Z._0_is_possibly_undefined,D),v}Sr(m,Z.Object_is_possibly_undefined)}return v}function tat(u,m,v){return u.flags&64?TQs(u,m):xKt(u,u.expression,Ose(u.expression),u.name,m,v)}function TQs(u,m){let v=Ol(u.expression),D=k2e(v,u.expression);return Bot(xKt(u,u.expression,HN(D,u.expression),u.name,m),u,D!==v)}function yCn(u,m){let v=Qge(u)&&vF(u.left)?HN(qWe(u.left),u.left):Ose(u.left);return xKt(u,u.left,v,u.right,m)}function kKt(u){for(;u.parent.kind===218;)u=u.parent;return av(u.parent)&&u.parent.expression===u}function sOe(u,m){for(let v=Oge(m);v;v=hC(v)){let{symbol:D}=v,P=_ne(D,u),Y=D.members&&D.members.get(P)||D.exports&&D.exports.get(P);if(Y)return Y}}function RQs(u){if(!hC(u))return os(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!KLe(u.parent)){if(!MT(u))return os(u,Z.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression);let m=fo(u.parent)&&u.parent.operatorToken.kind===103;if(!rat(u)&&!m)return os(u,Z.Cannot_find_name_0,Vo(u))}return!1}function NQs(u){RQs(u);let m=rat(u);return m&&aOe(m,void 0,!1),hr}function rat(u){if(!MT(u))return;let m=sa(u);return m.resolvedSymbol===void 0&&(m.resolvedSymbol=sOe(u.escapedText,u)),m.resolvedSymbol}function nat(u,m){return Gg(u,m.escapedName)}function DQs(u,m,v){let D,P=Gd(u);P&&F(P,oe=>{let Be=oe.valueDeclaration;if(Be&&rh(Be)&&p(Be.name)&&Be.name.escapedText===m.escapedText)return D=oe,!0});let Y=vE(m);if(D){let oe=pe.checkDefined(D.valueDeclaration),Be=pe.checkDefined(hC(oe));if(v?.valueDeclaration){let Oe=v.valueDeclaration,He=hC(Oe);if(pe.assert(!!He),ji(He,qe=>Be===qe)){let qe=Sr(m,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,Y,no(u));return lg(qe,mo(Oe,Z.The_shadowing_declaration_of_0_is_defined_here,Y),mo(oe,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,Y)),!0}}return Sr(m,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,Y,vE(Be.name||yet)),!0}return!1}function bCn(u,m){return(jx(m)||$re(u)&&dk(m))&&r0(u,!0,!1)===vo(m)}function xKt(u,m,v,D,P,Y){let oe=sa(m).resolvedSymbol,Be=QD(u),Oe=fy(Be!==0||kKt(u)?D1(v):v),He=Xo(Oe)||Oe===Vn,qe;if(p(D)){(Ze{switch(v.kind){case 173:case 176:return!0;case 187:case 288:return"quit";case 220:return m?!1:"quit";case 242:return kd(v.parent)&&v.parent.kind!==220?"quit":!1;default:return!1}})}function xQs(u){if(!(u.parent.flags&32))return!1;let m=Io(u.parent);for(;;){if(m=m.symbol&&GQs(m),!m)return!1;let v=Gg(m,u.escapedName);if(v&&v.valueDeclaration)return!0}}function GQs(u){let m=Kw(u);if(m.length!==0)return Kg(m)}function SCn(u,m,v){let D=sa(u),P=D.nonExistentPropCheckCache||(D.nonExistentPropCheckCache=new Set),Y=`${QC(m)}|${v}`;if(P.has(Y))return;P.add(Y);let oe,Be;if(!p(u)&&m.flags&1048576&&!(m.flags&402784252)){for(let He of m.types)if(!Gg(He,u.escapedText)&&!vq(He,u.escapedText)){oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Wd(u),no(He));break}}if(vCn(u.escapedText,m)){let He=Wd(u),qe=no(m);oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,He,qe,qe+"."+He)}else{let He=eSe(m);if(He&&Gg(He,u.escapedText))oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Wd(u),no(m)),Be=mo(u,Z.Did_you_forget_to_use_await);else{let qe=Wd(u),Vt=no(m),kt=LQs(qe,m);if(kt!==void 0)oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,qe,Vt,kt);else{let vr=ZKt(u,m);if(vr!==void 0){let dn=nf(vr),vn=v?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;oe=wu(oe,vn,qe,Vt,dn),Be=vr.valueDeclaration&&mo(vr.valueDeclaration,Z._0_is_declared_here,dn)}else{let dn=FQs(m)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;oe=wu(GJt(oe,m),dn,qe,Vt)}}}}let Oe=Bw(ms(u),u,oe);Be&&lg(Oe,Be),Hx(!v||oe.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Oe)}function FQs(u){return Te.lib&&!Te.lib.includes("lib.dom.d.ts")&&PHs(u,m=>m.symbol&&/^(?:EventTarget|Node|(?:HTML[a-zA-Z]*)?Element)$/.test(Bc(m.symbol.escapedName)))&&lZ(u)}function vCn(u,m){let v=m.symbol&&Gg(Io(m.symbol),u);return v!==void 0&&!!v.valueDeclaration&&cg(v.valueDeclaration)}function ZQs(u){let m=vE(u),D=Hre().get(m);return D&&vu(D.keys())}function LQs(u,m){let v=fy(m).symbol;if(!v)return;let D=nf(v),Y=Hre().get(D);if(Y){for(let[oe,Be]of Y)if(k(Be,u))return oe}}function BCn(u,m){return oOe(u,Gd(m),106500)}function ZKt(u,m){let v=Gd(m);if(typeof u!="string"){let D=u.parent;jo(D)&&(v=Me(v,P=>DCn(D,m,P))),u=Vo(u)}return oOe(u,v,111551)}function wCn(u,m){let v=Xs(u)?u:Vo(u),D=Gd(m);return(v==="for"?de(D,Y=>nf(Y)==="htmlFor"):v==="class"?de(D,Y=>nf(Y)==="className"):void 0)??oOe(v,D,111551)}function TCn(u,m){let v=ZKt(u,m);return v&&nf(v)}function VQs(u,m,v){let D=f_(u,m,v);if(D)return D;let P;return u===Gr?P=Xt(["string","number","boolean","object","bigint","symbol"],oe=>u.has(oe.charAt(0).toUpperCase()+oe.slice(1))?gA(524288,oe):void 0).concat(Do(u.values())):P=Do(u.values()),oOe(Bc(m),P,v)}function RCn(u,m,v){return pe.assert(m!==void 0,"outername should always be defined"),si(u,m,v,void 0,!1,!1)}function LKt(u,m){return m.exports&&oOe(Vo(u),dq(m),2623475)}function PQs(u,m,v){function D(oe){let Be=LQ(u,oe);if(Be){let Oe=kK(Io(Be));return!!Oe&&_R(Oe)>=1&&dg(v,CR(Oe,0))}return!1}let P=bF(m)?"set":"get";if(!D(P))return;let Y=TP(m.expression);return Y===void 0?Y=P:Y+="."+P,Y}function WQs(u,m){let v=m.types.filter(D=>!!(D.flags&128));return Dr(u.value,v,D=>D.value)}function oOe(u,m,v){return Dr(u,m,D);function D(P){let Y=nf(P);if(!Ac(Y,'"')){if(P.flags&v)return Y;if(P.flags&2097152){let oe=lq(P);if(oe&&oe.flags&v)return Y}}}}function aOe(u,m,v){let D=u&&u.flags&106500&&u.valueDeclaration;if(!D)return;let P=Gb(D,2),Y=u.valueDeclaration&&rh(u.valueDeclaration)&&p(u.valueDeclaration.name);if(!(!P&&!Y)&&!(m&&CAe(m)&&!(u.flags&65536))){if(v){let oe=ji(m,kd);if(oe&&oe.symbol===u)return}(iI(u)&1?fa(u).target:u).isReferenced=-1}}function NCn(u,m){return u.kind===110||!!m&&Od(u)&&m===L0(B0(u))}function OQs(u,m){switch(u.kind){case 212:return VKt(u,u.expression.kind===108,m,D1(Ol(u.expression)));case 167:return VKt(u,!1,m,D1(Ol(u.left)));case 206:return VKt(u,!1,m,nl(u))}}function DCn(u,m,v){return PKt(u,u.kind===212&&u.expression.kind===108,!1,m,v)}function VKt(u,m,v,D){if(Xo(D))return!0;let P=Gg(D,v);return!!P&&PKt(u,m,!1,D,P)}function PKt(u,m,v,D,P){if(Xo(D))return!0;if(P.valueDeclaration&&pC(P.valueDeclaration)){let Y=hC(P.valueDeclaration);return!GC(u)&&!!ji(u,oe=>oe===Y)}return hCn(u,m,v,D,P)}function MQs(u){let m=u.initializer;if(m.kind===262){let v=m.declarations[0];if(v&&!Nu(v.name))return Uo(v)}else if(m.kind===80)return L0(m)}function HQs(u){return A0(u).length===1&&!!$x(u,ri)}function YQs(u){let m=QA(u);if(m.kind===80){let v=L0(m);if(v.flags&3){let D=u,P=u.parent;for(;P;){if(P.kind===250&&D===P.statement&&MQs(P)===v&&HQs(P_(P.expression)))return!0;D=P,P=P.parent}}}return!1}function QQs(u,m){return u.flags&64?XQs(u,m):kCn(u,Ose(u.expression),m)}function XQs(u,m){let v=Ol(u.expression),D=k2e(v,u.expression);return Bot(kCn(u,HN(D,u.expression),m),u,D!==v)}function kCn(u,m,v){let D=QD(u)!==0||kKt(u)?D1(m):m,P=u.argumentExpression,Y=Ol(P);if(uo(D)||D===Vn)return D;if(pat(D)&&!mA(P))return Sr(P,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),nn;let oe=YQs(P)?ri:Y,Be=QD(u),Oe;Be===0?Oe=32:(Oe=4|(CK(D)&&!az(D)?2:0),Be===2&&(Oe|=32));let He=pW(D,oe,Oe,u)||nn;return O_n(ECn(u,sa(u).resolvedSymbol,He,P,v),u)}function xCn(u){return av(u)||MI(u)||eI(u)}function DK(u){return xCn(u)&&F(u.typeArguments,rA),u.kind===216?Ol(u.template):eI(u)?Ol(u.attributes):fo(u)?Ol(u.left):av(u)&&F(u.arguments,m=>{Ol(m)}),Ls}function mR(u){return DK(u),Za}function JQs(u,m,v){let D,P,Y=0,oe,Be=-1,Oe;pe.assert(!m.length);for(let He of u){let qe=He.declaration&&Uo(He.declaration),Vt=He.declaration&&He.declaration.parent;!P||qe===P?D&&Vt===D?oe=oe+1:(D=Vt,oe=Y):(oe=Y=m.length,D=Vt),P=qe,Btn(He)?(Be++,Oe=Be,Y++):Oe=oe,m.splice(Oe,0,v?NOs(He,v):He)}}function iat(u){return!!u&&(u.kind===231||u.kind===238&&u.isSpread)}function WKt(u){return Se(u,iat)}function GCn(u){return!!(u.flags&16384)}function UQs(u){return!!(u.flags&49155)}function sat(u,m,v,D=!1){if(Pw(u))return!0;let P,Y=!1,oe=NE(v),Be=_R(v);if(u.kind===216)if(P=m.length,u.template.kind===229){let Oe=Ei(u.template.templateSpans);Y=sf(Oe.literal)||!!Oe.literal.isUnterminated}else{let Oe=u.template;pe.assert(Oe.kind===15),Y=!!Oe.isUnterminated}else if(u.kind===171)P=MCn(u,v);else if(u.kind===227)P=1;else if(eI(u)){if(Y=u.attributes.end===u.end,Y)return!0;P=Be===0?m.length:1,oe=m.length===0?oe:1,Be=Math.min(Be,1)}else if(u.arguments){P=D?m.length+1:m.length,Y=u.arguments.end===u.end;let Oe=WKt(m);if(Oe>=0)return Oe>=_R(v)&&(Ck(v)||Oeoe)return!1;if(Y||P>=Be)return!0;for(let Oe=P;Oe=D&&m.length<=v}function FCn(u,m){let v;return!!(u.target&&(v=KQ(u.target,m))&&G5(v))}function kK(u){return Y2e(u,0,!1)}function ZCn(u){return Y2e(u,0,!1)||Y2e(u,1,!1)}function Y2e(u,m,v){if(u.flags&524288){let D=pR(u);if(v||D.properties.length===0&&D.indexInfos.length===0){if(m===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(m===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function LCn(u,m,v,D){let P=F2e(aIn(u),u,0,D),Y=J2e(m),oe=v&&(Y&&Y.flags&262144?v.nonFixingMapper:v.mapper),Be=oe?bK(m,oe):m;return WUt(Be,u,(Oe,He)=>{nG(P.inferences,Oe,He)}),v||OUt(m,u,(Oe,He)=>{nG(P.inferences,Oe,He,128)}),_2e(u,$Ut(P),wo(m.declaration))}function KQs(u,m,v,D){let P=Uot(m,u),Y=Yse(u.attributes,P,D,v);return nG(D.inferences,Y,P),$Ut(D)}function VCn(u){if(!u)return es;let m=Ol(u);return MZe(u)?m:aP(u.parent)?gZ(m):GC(u.parent)?vot(m):m}function MKt(u,m,v,D,P){if(eI(u))return KQs(u,m,D,P);if(u.kind!==171&&u.kind!==227){let Oe=ue(m.typeParameters,qe=>!!VQ(qe)),He=Jy(u,Oe?8:0);if(He){let qe=ud(m);if(CW(qe)){let Vt=JQ(u);if(!(!Oe&&Jy(u,8)!==He)){let vn=QUt(Uhn(Vt,1)),ii=_l(He,vn),Yi=kK(ii),js=Yi&&Yi.typeParameters?fK(WJt(Yi,Yi.typeParameters)):ii;nG(P.inferences,js,qe,128)}let vr=F2e(m.typeParameters,m,P.flags),dn=_l(He,Vt&&U5s(Vt));nG(vr.inferences,dn,qe),P.returnMapper=jt(vr.inferences,Qse)?QUt(iHs(vr)):void 0}}}let Y=U2e(m),oe=Y?Math.min(NE(m)-1,v.length):v.length;if(Y&&Y.flags&262144){let Oe=de(P.inferences,He=>He.typeParameter===Y);Oe&&(Oe.impliedArity=Se(v,iat,oe)<0?v.length-oe:void 0)}let Be=k5(m);if(Be&&CW(Be)){let Oe=OCn(u);nG(P.inferences,VCn(Oe),Be)}for(let Oe=0;Oe=v-1){let qe=u[v-1];if(iat(qe)){let Vt=qe.kind===238?qe.type:Yse(qe.expression,D,P,Y);return T9(Vt)?PCn(Vt):d0(N9(33,Vt,Bt,qe.kind===231?qe.expression:qe),oe)}}let Be=[],Oe=[],He=[];for(let qe=m;qewu(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Vt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Be||(Be=N1(Y,oe));let kt=oe[Oe];if(!p0(kt,T1(_l(He,Be),kt),v?m[Oe]:void 0,Vt,qe))return}}return oe}function WCn(u){if(Fq(u.tagName))return 2;let m=fy(Ol(u.tagName));return B(tg(m,1))?0:B(tg(m,0))?1:2}function jQs(u,m,v,D,P,Y,oe){let Be=Uot(m,u),Oe=Pw(u)?cCn(u):Yse(u.attributes,Be,void 0,D),He=D&4?G2e(Oe):Oe;return qe()&&SUt(He,Be,v,P?Pw(u)?u:u.tagName:void 0,Pw(u)?void 0:u.attributes,void 0,Y,oe);function qe(){var Vt;if($ot(u))return!0;let kt=($T(u)||_U(u))&&!(Fq(u.tagName)||eR(u.tagName))?Ol(u.tagName):void 0;if(!kt)return!0;let vr=tg(kt,0);if(!B(vr))return!0;let dn=W8t(u);if(!dn)return!0;let vn=TI(dn,111551,!0,!1,u);if(!vn)return!0;let ii=Io(vn),Yi=tg(ii,0);if(!B(Yi))return!0;let js=!1,Co=0;for(let Mi of Yi){let To=CR(Mi,0),Ka=tg(To,0);if(B(Ka))for(let yl of Ka){if(js=!0,Ck(yl))return!0;let ka=NE(yl);ka>Co&&(Co=ka)}}if(!js)return!0;let Ji=1/0;for(let Mi of vr){let To=_R(Mi);To{P.push(Y.expression)}),P}if(u.kind===171)return zQs(u);if(u.kind===227)return[u.left];if(eI(u))return u.attributes.properties.length>0||$T(u)&&u.parent.children.length>0?[u.attributes]:E;let m=u.arguments||E,v=WKt(m);if(v>=0){let D=m.slice(0,v);for(let P=v;P{var He;let qe=oe.target.elementFlags[Oe],Vt=Q2e(Y,qe&4?d0(Be):Be,!!(qe&12),(He=oe.target.labeledElementDeclarations)==null?void 0:He[Oe]);D.push(Vt)}):D.push(Y)}return D}return m}function zQs(u){let m=u.expression,v=n8t(u);if(v){let D=[];for(let P of v.parameters){let Y=Io(P);D.push(Q2e(m,Y))}return D}return pe.fail()}function MCn(u,m){return Te.experimentalDecorators?qQs(u,m):Math.min(Math.max(NE(m),1),2)}function qQs(u,m){switch(u.parent.kind){case 264:case 232:return 1;case 173:return Nw(u.parent)?3:2;case 175:case 178:case 179:return m.parameters.length<=2?2:3;case 170:return 3;default:return pe.fail()}}function HCn(u){let m=ms(u),{start:v,length:D}=qa(m,jo(u.expression)?u.expression.name:u.expression);return{start:v,length:D,sourceFile:m}}function X2e(u,m,...v){if(Zl(u)){let{sourceFile:D,start:P,length:Y}=HCn(u);return"message"in m?qh(D,P,Y,m,...v):Ut(D,m)}else return"message"in m?mo(u,m,...v):Bw(ms(u),u,m)}function $Qs(u){return av(u)?jo(u.expression)?u.expression.name:u.expression:MI(u)?jo(u.tag)?u.tag.name:u.tag:eI(u)?u.tagName:u}function eXs(u){if(!Zl(u)||!Ir(u.expression))return!1;let m=An(u.expression,u.expression.escapedText,111551,void 0,!1),v=m?.valueDeclaration;if(!v||!Si(v)||!RF(v.parent)||!f2(v.parent.parent)||!Ir(v.parent.parent.expression))return!1;let D=KJt(!1);return D?xv(v.parent.parent.expression,!0)===D:!1}function YCn(u,m,v,D){var P;let Y=WKt(v);if(Y>-1)return mo(v[Y],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let oe=Number.POSITIVE_INFINITY,Be=Number.NEGATIVE_INFINITY,Oe=Number.NEGATIVE_INFINITY,He=Number.POSITIVE_INFINITY,qe;for(let vn of m){let ii=_R(vn),Yi=NE(vn);iiOe&&(Oe=ii),v.lengthP?oe=Math.min(oe,Oe):He1&&(vn=yl(Yi,ck,Ji,Mi)),vn||(vn=yl(Yi,l0,Ji,Mi));let To=sa(u);if(To.resolvedSignature!==Go&&!v)return pe.assert(To.resolvedSignature),To.resolvedSignature;if(vn)return vn;if(vn=rXs(u,Yi,Co,!!v,D),To.resolvedSignature=vn,Vt){if(!Y&&qe&&(Y=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),kt)if(kt.length===1||kt.length>3){let ka=kt[kt.length-1],Kc;kt.length>3&&(Kc=wu(Kc,Z.The_last_overload_gave_the_following_error),Kc=wu(Kc,Z.No_overload_matches_this_call)),Y&&(Kc=wu(Kc,Y));let Vu=cOe(u,Co,ka,l0,0,!0,()=>Kc);if(Vu)for(let gd of Vu)ka.declaration&&kt.length>3&&lg(gd,mo(ka.declaration,Z.The_last_overload_is_declared_here)),Ka(ka,gd),PA.add(gd);else pe.fail("No error for last overload signature")}else{let ka=[],Kc=0,Vu=Number.MAX_VALUE,gd=0,Ll=0;for(let eo of kt){let _o=cOe(u,Co,eo,l0,0,!0,()=>wu(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Ll+1,Yi.length,lW(eo)));_o?(_o.length<=Vu&&(Vu=_o.length,gd=Ll),Kc=Math.max(Kc,_o.length),ka.push(_o)):pe.fail("No error for 3 or fewer overload signatures"),Ll++}let Ef=Kc>1?ka[gd]:Nr(ka);pe.assert(Ef.length>0,"No errors reported for 3 or fewer overload signatures");let UI=wu(At(Ef,Qr),Z.No_overload_matches_this_call);Y&&(UI=wu(UI,Y));let V0=[...er(Ef,eo=>eo.relatedInformation)],xs;if(ue(Ef,eo=>eo.start===Ef[0].start&&eo.length===Ef[0].length&&eo.file===Ef[0].file)){let{file:eo,start:qc,length:_o}=Ef[0];xs={file:eo,start:qc,length:_o,code:UI.code,category:UI.category,messageText:UI,relatedInformation:V0}}else xs=Bw(ms(u),$Qs(u),UI,V0);Ka(kt[0],xs),PA.add(xs)}else if(vr)PA.add(YCn(u,[vr],Co,Y));else if(dn)YKt(dn,u.typeArguments,!0,Y);else if(!He){let ka=Me(m,Kc=>OKt(Kc,js));ka.length===0?PA.add(tXs(u,m,js,Y)):PA.add(YCn(u,ka,Co,Y))}}return vn;function Ka(ka,Kc){var Vu,gd;let Ll=kt,Ef=vr,UI=dn,V0=((gd=(Vu=ka.declaration)==null?void 0:Vu.symbol)==null?void 0:gd.declarations)||E,eo=V0.length>1?de(V0,qc=>kd(qc)&&u1(qc.body)):void 0;if(eo){let qc=yS(eo),_o=!qc.typeParameters;yl([qc],l0,_o)&&lg(Kc,mo(eo,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}kt=Ll,vr=Ef,dn=UI}function yl(ka,Kc,Vu,gd=!1){if(kt=void 0,vr=void 0,dn=void 0,Vu){let Ll=ka[0];if(jt(js)||!sat(u,Co,Ll,gd))return;if(cOe(u,Co,Ll,Kc,0,!1,void 0)){kt=[Ll];return}return Ll}for(let Ll=0;Ll0),Lq(u),D||m.length===1||m.some(Y=>!!Y.typeParameters)?sXs(u,m,v,P):nXs(m)}function nXs(u){let m=Xt(u,Oe=>Oe.thisParameter),v;m.length&&(v=QCn(m,m.map(gOe)));let{min:D,max:P}=hLe(u,iXs),Y=[];for(let Oe=0;OeD0(qe)?OeKQ(qe,Oe))))}let oe=Xt(u,Oe=>D0(Oe)?Ei(Oe.parameters):void 0),Be=128;if(oe.length!==0){let Oe=d0(Ha(Xt(u,oIn),2));Y.push(XCn(oe,Oe)),Be|=1}return u.some(Btn)&&(Be|=2),PN(u[0].declaration,void 0,v,Y,Kg(u.map(ud)),void 0,D,Be)}function iXs(u){let m=u.parameters.length;return D0(u)?m-1:m}function QCn(u,m){return XCn(u,Ha(m,2))}function XCn(u,m){return SK(ma(u),m)}function sXs(u,m,v,D){let P=cXs(m,Br===void 0?v.length:Br),Y=m[P],{typeParameters:oe}=Y;if(!oe)return Y;let Be=xCn(u)?u.typeArguments:void 0,Oe=Be?Ust(Y,oXs(Be,oe,wo(u))):aXs(u,oe,Y,v,D);return m[P]=Oe,Oe}function oXs(u,m,v){let D=u.map(Vq);for(;D.length>m.length;)D.pop();for(;D.length=m)return P;oe>D&&(D=oe,v=P)}return v}function lXs(u,m,v){if(u.expression.kind===108){let Oe=Hot(u.expression);if(Xo(Oe)){for(let He of u.arguments)Ol(He);return Ls}if(!uo(Oe)){let He=BB(hC(u));if(He){let qe=zx(Oe,He.typeArguments,He);return Mse(u,qe,m,v,0)}}return DK(u)}let D,P=Ol(u.expression);if(_B(u)){let Oe=k2e(P,u.expression);D=Oe===P?0:i3(u)?16:8,P=Oe}else D=0;if(P=CCn(P,u.expression,wQs),P===Vn)return Ss;let Y=fy(P);if(uo(Y))return mR(u);let oe=tg(Y,0),Be=tg(Y,1).length;if(lOe(P,Y,oe.length,Be))return!uo(P)&&u.typeArguments&&Sr(u,Z.Untyped_function_calls_may_not_accept_type_arguments),DK(u);if(!oe.length){if(Be)Sr(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,no(P));else{let Oe;if(u.arguments.length===1){let He=ms(u).text;Cl(He.charCodeAt(Yu(He,u.expression.end,!0)-1))&&(Oe=mo(u.expression,Z.Are_you_missing_a_semicolon))}XKt(u.expression,Y,0,Oe)}return mR(u)}return v&8&&!u.typeArguments&&oe.some(uXs)?(N_n(u,v),Go):oe.some(Oe=>wo(Oe.declaration)&&!!bx(Oe.declaration))?(Sr(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,no(P)),mR(u)):Mse(u,oe,m,v,D)}function uXs(u){return!!(u.typeParameters&&V8t(ud(u)))}function lOe(u,m,v,D){return Xo(u)||Xo(m)&&!!(u.flags&262144)||!v&&!D&&!(m.flags&1048576)&&!(JB(m).flags&131072)&&dg(u,Js)}function gXs(u,m,v){let D=Ose(u.expression);if(D===Vn)return Ss;if(D=fy(D),uo(D))return mR(u);if(Xo(D))return u.typeArguments&&Sr(u,Z.Untyped_function_calls_may_not_accept_type_arguments),DK(u);let P=tg(D,1);if(P.length){if(!AXs(u,P[0]))return mR(u);if(JCn(P,Be=>!!(Be.flags&4)))return Sr(u,Z.Cannot_create_an_instance_of_an_abstract_class),mR(u);let oe=D.symbol&&AN(D.symbol);return oe&&Ga(oe,64)?(Sr(u,Z.Cannot_create_an_instance_of_an_abstract_class),mR(u)):Mse(u,P,m,v,0)}let Y=tg(D,0);if(Y.length){let oe=Mse(u,Y,m,v,0);return Rt||(oe.declaration&&!YN(oe.declaration)&&ud(oe)!==es&&Sr(u,Z.Only_a_void_function_can_be_called_with_the_new_keyword),k5(oe)===es&&Sr(u,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),oe}return XKt(u.expression,D,1),mR(u)}function JCn(u,m){return Ki(u)?jt(u,v=>JCn(v,m)):u.compositeKind===1048576?jt(u.compositeSignatures,m):m(u)}function QKt(u,m){let v=Kw(m);if(!B(v))return!1;let D=v[0];if(D.flags&2097152){let P=D.types,Y=Wfn(P),oe=0;for(let Be of D.types){if(!Y[oe]&&la(Be)&3&&(Be.symbol===u||QKt(u,Be)))return!0;oe++}return!1}return D.symbol===u?!0:QKt(u,D)}function AXs(u,m){if(!m||!m.declaration)return!0;let v=m.declaration,D=MY(v,6);if(!D||v.kind!==177)return!0;let P=AN(v.parent.symbol),Y=Fp(v.parent.symbol);if(!F8t(u,P)){let oe=hC(u);if(oe&&D&4){let Be=Vq(oe);if(QKt(v.parent.symbol,Be))return!0}return D&2&&Sr(u,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,no(Y)),D&4&&Sr(u,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,no(Y)),!1}return!0}function UCn(u,m,v){let D,P=v===0,Y=Zq(m),oe=Y&&tg(Y,v).length>0;if(m.flags&1048576){let Oe=m.types,He=!1;for(let qe of Oe)if(tg(qe,v).length!==0){if(He=!0,D)break}else if(D||(D=wu(D,P?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,no(qe)),D=wu(D,P?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,no(m))),He)break;He||(D=wu(void 0,P?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,no(m))),D||(D=wu(D,P?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,no(m)))}else D=wu(D,P?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,no(m));let Be=P?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(Zl(u.parent)&&u.parent.arguments.length===0){let{resolvedSymbol:Oe}=sa(u);Oe&&Oe.flags&32768&&(Be=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:wu(D,Be),relatedMessage:oe?Z.Did_you_forget_to_use_await:void 0}}function XKt(u,m,v,D){let{messageChain:P,relatedMessage:Y}=UCn(u,m,v),oe=Bw(ms(u),u,P);if(Y&&lg(oe,mo(u,Y)),Zl(u.parent)){let{start:Be,length:Oe}=HCn(u.parent);oe.start=Be,oe.length=Oe}PA.add(oe),KCn(m,v,D?lg(oe,D):oe)}function KCn(u,m,v){if(!u.symbol)return;let D=fa(u.symbol).originatingImport;if(D&&!Up(D)){let P=tg(Io(fa(u.symbol).target),m);if(!P||!P.length)return;lg(v,mo(D,Z.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}function dXs(u,m,v){let D=Ol(u.tag),P=fy(D);if(uo(P))return mR(u);let Y=tg(P,0),oe=tg(P,1).length;if(lOe(D,P,Y.length,oe))return DK(u);if(!Y.length){if(OI(u.parent)){let Be=mo(u.tag,Z.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return PA.add(Be),mR(u)}return XKt(u.tag,P,0),mR(u)}return Mse(u,Y,m,v,0)}function pXs(u){switch(u.parent.kind){case 264:case 232:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 170:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 173:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 175:case 178:case 179:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return pe.fail()}}function fXs(u,m,v){let D=Ol(u.expression),P=fy(D);if(uo(P))return mR(u);let Y=tg(P,0),oe=tg(P,1).length;if(lOe(D,P,Y.length,oe))return DK(u);if(mXs(u,Y)&&!gI(u.expression)){let Oe=xp(u.expression,!1);return Sr(u,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Oe),mR(u)}let Be=pXs(u);if(!Y.length){let Oe=UCn(u.expression,P,0),He=wu(Oe.messageChain,Be),qe=Bw(ms(u.expression),u.expression,He);return Oe.relatedMessage&&lg(qe,mo(u.expression,Oe.relatedMessage)),PA.add(qe),KCn(P,0,qe),mR(u)}return Mse(u,Y,m,v,0,Be)}function cat(u,m){let v=NK(u),D=v&&B1(v),P=D&&f_(D,lS.Element,788968),Y=P&&Dt.symbolToEntityName(P,788968,u),oe=me.createFunctionTypeNode(void 0,[me.createParameterDeclaration(void 0,void 0,"props",void 0,Dt.typeToTypeNode(m,u))],Y?me.createTypeReferenceNode(Y,void 0):me.createKeywordTypeNode(133)),Be=gA(1,"props");return Be.links.type=m,PN(oe,void 0,void 0,[Be],P?Fp(P):nn,void 0,1,0)}function jCn(u){let m=sa(ms(u));if(m.jsxFragmentType!==void 0)return m.jsxFragmentType;let v=Mw(u);if(!((Te.jsx===2||Te.jsxFragmentFactory!==void 0)&&v!=="null"))return m.jsxFragmentType=hr;let P=Te.jsx!==1&&Te.jsx!==3,Y=PA?Z.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:void 0,oe=$ot(u)??An(u,v,P?111551:111167,Y,!0);if(oe===void 0)return m.jsxFragmentType=nn;if(oe.escapedName===Tet.Fragment)return m.jsxFragmentType=Io(oe);let Be=oe.flags&2097152?YC(oe):oe,Oe=oe&&B1(Be),He=Oe&&f_(Oe,Tet.Fragment,2),qe=He&&Io(He);return m.jsxFragmentType=qe===void 0?nn:qe}function IXs(u,m,v){let D=Pw(u),P;if(D)P=jCn(u);else{if(Fq(u.tagName)){let Be=dCn(u),Oe=cat(u,Be);return QQ(Yse(u.attributes,Uot(Oe,u),void 0,0),Be,u.tagName,u.attributes),B(u.typeArguments)&&(F(u.typeArguments,rA),PA.add(A3(ms(u),u.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,B(u.typeArguments)))),Oe}P=Ol(u.tagName)}let Y=fy(P);if(uo(Y))return mR(u);let oe=gCn(P,u);return lOe(P,Y,oe.length,0)?DK(u):oe.length===0?(D?Sr(u,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,xp(u)):Sr(u.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,xp(u.tagName)),mR(u)):Mse(u,oe,m,v,0)}function hXs(u,m,v){let D=Ol(u.right);if(!Xo(D)){let P=c8t(D);if(P){let Y=fy(P);if(uo(Y))return mR(u);let oe=tg(Y,0),Be=tg(Y,1);if(lOe(P,Y,oe.length,Be.length))return DK(u);if(oe.length)return Mse(u,oe,m,v,0)}else if(!(Gat(D)||YQ(D,Js)))return Sr(u.right,Z.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),mR(u)}return Ls}function mXs(u,m){return m.length&&ue(m,v=>v.minArgumentCount===0&&!D0(v)&&v.parameters.length1?RI(u.arguments[1]):void 0;for(let Y=2;Y{let oe=D1(P);pot(Y,oe)||whn(P,Y,v,Z.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)})}function wXs(u){let m=Ol(u.expression),v=k2e(m,u.expression);return Bot(gZ(v),u,v!==m)}function TXs(u){return u.flags&64?wXs(u):gZ(Ol(u.expression))}function n_n(u){if(K0n(u),F(u.typeArguments,rA),u.kind===234){let v=gv(u.parent);v.kind===227&&v.operatorToken.kind===104&&EP(u,v.right)&&Sr(u,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let m=u.kind===234?Ol(u.expression):vF(u.exprName)?qWe(u.exprName):Ol(u.exprName);return i_n(m,u)}function i_n(u,m){let v=m.typeArguments;if(u===Vn||uo(u)||!jt(v))return u;let D=sa(m);if(D.instantiationExpressionTypes||(D.instantiationExpressionTypes=new Map),D.instantiationExpressionTypes.has(u.id))return D.instantiationExpressionTypes.get(u.id);let P=!1,Y,oe=Oe(u);D.instantiationExpressionTypes.set(u.id,oe);let Be=P?Y:u;return Be&&PA.add(A3(ms(m),v,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,no(Be))),oe;function Oe(qe){let Vt=!1,kt=!1,vr=dn(qe);return P||(P=kt),Vt&&!kt&&(Y??(Y=qe)),vr;function dn(vn){if(vn.flags&524288){let ii=pR(vn),Yi=He(ii.callSignatures),js=He(ii.constructSignatures);if(Vt||(Vt=ii.callSignatures.length!==0||ii.constructSignatures.length!==0),kt||(kt=Yi.length!==0||js.length!==0),Yi!==ii.callSignatures||js!==ii.constructSignatures){let Co=Hf(gA(0,"__instantiationExpression"),ii.members,Yi,js,ii.indexInfos);return Co.objectFlags|=8388608,Co.node=m,Co}}else if(vn.flags&58982400){let ii=L_(vn);if(ii){let Yi=dn(ii);if(Yi!==ii)return Yi}}else{if(vn.flags&1048576)return Yf(vn,Oe);if(vn.flags&2097152)return Kg(Tr(vn.types,dn))}return vn}}function He(qe){let Vt=Me(qe,kt=>!!kt.typeParameters&&OKt(kt,v));return Tr(Vt,kt=>{let vr=YKt(kt,v,!0);return vr?_2e(kt,vr,wo(kt.declaration)):kt})}}function RXs(u){return rA(u.type),jKt(u.expression,u.type)}function jKt(u,m,v){let D=Ol(u,v),P=nl(m);if(uo(P))return P;let Y=ji(m.parent,oe=>oe.kind===239||oe.kind===351);return QQ(D,P,Y,u,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function NXs(u){return G8s(u),u.keywordToken===105?zKt(u):u.keywordToken===102?u.name.escapedText==="defer"?(pe.assert(!Zl(u.parent)||u.parent.expression!==u,"Trying to get the type of `import.defer` in `import.defer(...)`"),nn):DXs(u):pe.assertNever(u.keywordToken)}function s_n(u){switch(u.keywordToken){case 102:return EIn();case 105:let m=zKt(u);return uo(m)?nn:UXs(m);default:pe.assertNever(u.keywordToken)}}function zKt(u){let m=oZe(u);if(m)if(m.kind===177){let v=Uo(m.parent);return Io(v)}else{let v=Uo(m);return Io(v)}else return Sr(u,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),nn}function DXs(u){100<=We&&We<=199?ms(u).impliedNodeFormat!==99&&Sr(u,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):We<6&&We!==4&&Sr(u,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext);let m=ms(u);return pe.assert(!!(m.flags&8388608),"Containing file is missing import meta node flag."),u.name.escapedText==="meta"?bIn():nn}function gOe(u){let m=u.valueDeclaration;return Z0(Io(u),!1,!!m&&(WT(m)||RB(m)))}function qKt(u,m,v){switch(u.name.kind){case 80:{let D=u.name.escapedText;return u.dotDotDotToken?v&12?D:`${D}_${m}`:v&3?D:`${D}_n`}case 208:{if(u.dotDotDotToken){let D=u.name.elements,P=Gs(li(D),hg),Y=D.length-(P?.dotDotDotToken?1:0);if(m=D-1)return m===D-1?Y:d0(R1(Y,ri));let oe=[],Be=[],Oe=[];for(let He=m;He!(Oe&1)),Be=oe<0?Y.target.fixedLength:oe;Be>0&&(P=u.parameters.length-1+Be)}}if(P===void 0){if(!v&&u.flags&32)return 0;P=u.minArgumentCount}if(D)return P;for(let Y=P-1;Y>=0;Y--){let oe=CR(u,Y);if(nm(oe,GCn).flags&131072)break;P=Y}u.resolvedMinArgumentCount=P}return u.resolvedMinArgumentCount}function Ck(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]);return!yA(m)||!!(m.target.combinedFlags&12)}return!1}function J2e(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]);if(!yA(m))return Xo(m)?d_:m;if(m.target.combinedFlags&12)return Ope(m,m.target.fixedLength)}}function U2e(u){let m=J2e(u);return m&&!Nv(m)&&!Xo(m)?m:void 0}function e8t(u){return t8t(u,Wi)}function t8t(u,m){return u.parameters.length>0?CR(u,0):m}function l_n(u,m,v){let D=u.parameters.length-(D0(u)?1:0);for(let Y=0;Y=0);let Y=Tc(D.parent)?Io(Uo(D.parent.parent)):L0n(D.parent),oe=Tc(D.parent)?Bt:V0n(D.parent),Be=fR(P),Oe=IS("target",Y),He=IS("propertyKey",oe),qe=IS("parameterIndex",Be);v.decoratorSignature=tSe(void 0,void 0,[Oe,He,qe],es);break}case 175:case 178:case 179:case 173:{let D=m;if(!xa(D.parent))break;let P=L0n(D),Y=IS("target",P),oe=V0n(D),Be=IS("propertyKey",oe),Oe=pi(D)?es:kIn(Vq(D));if(!pi(m)||Nw(m)){let qe=kIn(Vq(D)),Vt=IS("descriptor",qe);v.decoratorSignature=tSe(void 0,void 0,[Y,Be,Vt],Ha([Oe,es]))}else v.decoratorSignature=tSe(void 0,void 0,[Y,Be],Ha([Oe,es]));break}}return v.decoratorSignature===Ls?void 0:v.decoratorSignature}function n8t(u){return Ue?JXs(u):XXs(u)}function pOe(u){let m=EWe(!0);return m!==oi?(u=pZ(tfe(u))||cn,iZ(m,[u])):cn}function A_n(u){let m=wIn(!0);return m!==oi?(u=pZ(tfe(u))||cn,iZ(m,[u])):cn}function fOe(u,m){let v=pOe(m);return v===cn?(Sr(u,Up(u)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),nn):(KJt(!0)||Sr(u,Up(u)?Z.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),v)}function UXs(u){let m=gA(0,"NewTargetExpression"),v=gA(4,"target",8);v.parent=m,v.links.type=u;let D=qu([v]);return m.members=D,Hf(m,D,E,E,E)}function gat(u,m){if(!u.body)return nn;let v=SI(u),D=(v&2)!==0,P=(v&1)!==0,Y,oe,Be,Oe=es;if(u.body.kind!==242)Y=RI(u.body,m&&m&-9),D&&(Y=tfe(yOe(Y,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(P){let He=I_n(u,m);He?He.length>0&&(Y=Ha(He,2)):Oe=Wi;let{yieldTypes:qe,nextTypes:Vt}=KXs(u,m);oe=jt(qe)?Ha(qe,2):void 0,Be=jt(Vt)?Kg(Vt):void 0}else{let He=I_n(u,m);if(!He)return v&2?fOe(u,Wi):Wi;if(He.length===0){let qe=Yot(u,void 0),Vt=qe&&(wOe(qe,v)||es).flags&32768?Bt:es;return v&2?fOe(u,Vt):Vt}Y=Ha(He,2)}if(Y||oe||Be){if(oe&&Not(u,oe,3),Y&&Not(u,Y,1),Be&&Not(u,Be,2),Y&&IR(Y)||oe&&IR(oe)||Be&&IR(Be)){let He=Kot(u),qe=He?He===yS(u)?P?void 0:Y:Xot(ud(He),u,void 0):void 0;P?(oe=VUt(oe,qe,0,D),Y=VUt(Y,qe,1,D),Be=VUt(Be,qe,2,D)):Y=MMs(Y,qe,D)}oe&&(oe=D1(oe)),Y&&(Y=D1(Y)),Be&&(Be=D1(Be))}return P?Aat(oe||Wi,Y||Oe,Be||Jmn(2,u)||cn,D):D?pOe(Y||Oe):Y||Oe}function Aat(u,m,v,D){let P=D?_h:Gp,Y=P.getGlobalGeneratorType(!1);if(u=P.resolveIterationType(u,void 0)||cn,m=P.resolveIterationType(m,void 0)||cn,Y===oi){let oe=P.getGlobalIterableIteratorType(!1);return oe!==oi?Wpe(oe,[u,m,v]):(P.getGlobalIterableIteratorType(!0),Xg)}return Wpe(Y,[u,m,v])}function KXs(u,m){let v=[],D=[],P=(SI(u)&2)!==0;return $Fe(u.body,Y=>{let oe=Y.expression?Ol(Y.expression,m):xe;Qi(v,d_n(Y,oe,hr,P));let Be;if(Y.asteriskToken){let Oe=Sat(oe,P?19:17,Y.expression);Be=Oe&&Oe.nextType}else Be=Jy(Y,void 0);Be&&Qi(D,Be)}),{yieldTypes:v,nextTypes:D}}function d_n(u,m,v,D){if(m===Vn)return Vn;let P=u.expression||u,Y=u.asteriskToken?N9(D?19:17,m,v,P):m;return D?Zq(Y,P,u.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Y}function p_n(u,m,v){let D=0;for(let P=0;P=m?v[P]:void 0;D|=Y!==void 0?mOt.get(Y)||32768:0}return D}function f_n(u){let m=sa(u);if(m.isExhaustive===void 0){m.isExhaustive=0;let v=jXs(u);m.isExhaustive===0&&(m.isExhaustive=v)}else m.isExhaustive===0&&(m.isExhaustive=!1);return m.isExhaustive}function jXs(u){if(u.expression.kind===222){let D=mmn(u);if(!D)return!1;let P=WN(RI(u.expression.expression)),Y=p_n(0,0,D);return P.flags&3?(556800&Y)===556800:!kv(P,oe=>Lse(oe,Y)===Y)}let m=WN(RI(u.expression));if(!D2e(m))return!1;let v=Fot(u);return!v.length||jt(v,PMs)?!1:LHs(Yf(m,Iy),v)}function i8t(u){return u.endFlowNode&&KWe(u.endFlowNode)}function I_n(u,m){let v=SI(u),D=[],P=i8t(u),Y=!1;if(yF(u.body,oe=>{let Be=oe.expression;if(Be){if(Be=QA(Be,!0),v&2&&Be.kind===224&&(Be=QA(Be.expression,!0)),Be.kind===214&&Be.expression.kind===80&&RI(Be.expression).symbol===jA(u.symbol)&&(!RF(u.symbol.valueDeclaration)||lKt(Be.expression))){Y=!0;return}let Oe=RI(Be,m&&m&-9);v&2&&(Oe=tfe(yOe(Oe,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Oe.flags&131072&&(Y=!0),Qi(D,Oe)}else P=!0}),!(D.length===0&&!P&&(Y||zXs(u))))return ot&&D.length&&P&&!(YN(u)&&D.some(oe=>oe.symbol===u.symbol))&&Qi(D,Bt),D}function zXs(u){switch(u.kind){case 219:case 220:return!0;case 175:return u.parent.kind===211;default:return!1}}function qXs(u){switch(u.kind){case 177:case 178:case 179:return}if(SI(u)!==0)return;let v;if(u.body&&u.body.kind!==242)v=u.body;else if(yF(u.body,P=>{if(v||!P.expression)return!0;v=P.expression})||!v||i8t(u))return;return $Xs(u,v)}function $Xs(u,m){if(m=QA(m,!0),!!(RI(m).flags&16))return F(u.parameters,(D,P)=>{let Y=Io(D.symbol);if(!Y||Y.flags&16||!Ir(D.name)||V2e(D.symbol)||EB(D))return;let oe=e4s(u,m,D,Y);if(oe)return C2e(1,Bc(D.name.escapedText),P,oe)})}function e4s(u,m,v,D){let P=UJ(m)&&m.flowNode||m.parent.kind===254&&m.parent.flowNode||rk(2,void 0,void 0),Y=rk(32,m,P),oe=dZ(v.name,D,D,u,Y);if(oe===D)return;let Be=rk(64,m,P);return JB(dZ(v.name,D,oe,u,Be)).flags&131072?oe:void 0}function s8t(u,m){g(v);return;function v(){let D=SI(u),P=m&&wOe(m,D);if(P&&(ah(P,16384)||P.flags&32769)||u.kind===174||sf(u.body)||u.body.kind!==242||!i8t(u))return;let Y=u.flags&1024,oe=xb(u)||u;if(P&&P.flags&131072)Sr(oe,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(P&&!Y)Sr(oe,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(P&&ot&&!dg(Bt,P))Sr(oe,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Te.noImplicitReturns){if(!P){if(!Y)return;let Be=ud(yS(u));if(u0n(u,Be))return}Sr(oe,Z.Not_all_code_paths_return_a_value)}}}function h_n(u,m){if(pe.assert(u.kind!==175||a2(u)),Lq(u),UA(u)&&rfe(u,u.name),m&&m&4&&bS(u)){if(!xb(u)&&!OAe(u)){let D=O2e(u);if(D&&CW(ud(D))){let P=sa(u);if(P.contextFreeType)return P.contextFreeType;let Y=gat(u,m),oe=PN(void 0,void 0,void 0,E,Y,void 0,0,64),Be=Hf(u.symbol,Ee,[oe],E,E);return Be.objectFlags|=262144,P.contextFreeType=Be}}return $d}return!Vat(u)&&u.kind===219&&H8t(u),t4s(u,m),Io(Uo(u))}function t4s(u,m){let v=sa(u);if(!(v.flags&64)){let D=O2e(u);if(!(v.flags&64)){v.flags|=64;let P=Nc(tg(Io(Uo(u)),0));if(!P)return;if(bS(u))if(D){let Y=JQ(u),oe;if(m&&m&2){l_n(P,D,Y);let Be=J2e(D);Be&&Be.flags&262144&&(oe=bK(D,Y.nonFixingMapper))}oe||(oe=Y?bK(D,Y.mapper):D),GXs(P,oe)}else FXs(P);else if(D&&!u.typeParameters&&D.parameters.length>u.parameters.length){let Y=JQ(u);m&&m&2&&l_n(P,D,Y)}if(D&&!Nse(u)&&!P.resolvedReturnType){let Y=gat(u,m);P.resolvedReturnType||(P.resolvedReturnType=Y)}z2e(u)}}}function r4s(u){pe.assert(u.kind!==175||a2(u));let m=SI(u),v=Nse(u);if(s8t(u,v),u.body)if(xb(u)||ud(yS(u)),u.body.kind===242)rA(u.body);else{let D=Ol(u.body),P=v&&wOe(v,m);P&&vat(u,P,u.body,u.body,D)}}function dat(u,m,v,D=!1){if(!dg(m,gg)){let P=D&&efe(m);return u9(u,!!P&&dg(P,gg),v),!1}return!0}function n4s(u){if(!Zl(u)||!f3(u))return!1;let m=RI(u.arguments[2]);if(Pi(m,"value")){let P=Gg(m,"writable"),Y=P&&Io(P);if(!Y||Y===Bs||Y===Ys)return!0;if(P&&P.valueDeclaration&&fm(P.valueDeclaration)){let oe=P.valueDeclaration.initializer,Be=Ol(oe);if(Be===Bs||Be===Ys)return!0}return!1}return!Gg(m,"set")}function yR(u){return!!(iI(u)&8||u.flags&4&&u2(u)&8||u.flags&3&&TKt(u)&6||u.flags&98304&&!(u.flags&65536)||u.flags&8||jt(u.declarations,n4s))}function m_n(u,m,v){var D,P;if(v===0)return!1;if(yR(m)){if(m.flags&4&&_p(u)&&u.expression.kind===110){let Y=Kpe(u);if(!(Y&&(Y.kind===177||YN(Y))))return!0;if(m.valueDeclaration){let oe=fo(m.valueDeclaration),Be=Y.parent===m.valueDeclaration.parent,Oe=Y===m.valueDeclaration.parent,He=oe&&((D=m.parent)==null?void 0:D.valueDeclaration)===Y.parent,qe=oe&&((P=m.parent)==null?void 0:P.valueDeclaration)===Y;return!(Be||Oe||He||qe)}}return!0}if(_p(u)){let Y=QA(u.expression);if(Y.kind===80){let oe=sa(Y).resolvedSymbol;if(oe.flags&2097152){let Be=Mb(oe);return!!Be&&Be.kind===275}}}return!1}function K2e(u,m,v){let D=HI(u,39);return D.kind!==80&&!_p(D)?(Sr(u,m),!1):D.flags&64?(Sr(u,v),!1):!0}function i4s(u){Ol(u.expression);let m=QA(u.expression);if(!_p(m))return Sr(m,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),Mn;jo(m)&&p(m.name)&&Sr(m,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let v=sa(m),D=fn(v.resolvedSymbol);return D&&(yR(D)?Sr(m,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):s4s(m,D)),Mn}function s4s(u,m){let v=Io(m);ot&&!(v.flags&131075)&&!(Pt?m.flags&16777216:hR(v,16777216))&&Sr(u,Z.The_operand_of_a_delete_operator_must_be_optional)}function o4s(u){return Ol(u.expression),pse}function a4s(u){return Lq(u),xe}function C_n(u){let m=!1,v=qre(u);if(v&&fl(v)){let D=I1(u)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;Sr(u,D),m=!0}else if(!(u.flags&65536))if(Mge(u)){let D=ms(u);if(!bW(D)){let P;if(!g3(D,Te)){P??(P=rs(D,u.pos));let Y=I1(u)?Z.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:Z.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module,oe=qh(D,P.start,P.length,Y);PA.add(oe),m=!0}switch(We){case 100:case 101:case 102:case 199:if(D.impliedNodeFormat===1){P??(P=rs(D,u.pos)),PA.add(qh(D,P.start,P.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),m=!0;break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:P??(P=rs(D,u.pos));let Y=I1(u)?Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;PA.add(qh(D,P.start,P.length,Y)),m=!0;break}}}else{let D=ms(u);if(!bW(D)){let P=rs(D,u.pos),Y=I1(u)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,oe=qh(D,P.start,P.length,Y);if(v&&v.kind!==177&&!(SI(v)&2)){let Be=mo(v,Z.Did_you_mean_to_mark_this_function_as_async);lg(oe,Be)}PA.add(oe),m=!0}}return I1(u)&&CKt(u)&&(Sr(u,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),m=!0),m}function c4s(u){g(()=>C_n(u));let m=Ol(u.expression),v=yOe(m,!0,u,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return v===m&&!uo(v)&&!(m.flags&3)&&Hx(!1,mo(u,Z.await_has_no_effect_on_the_type_of_this_expression)),v}function l4s(u){let m=Ol(u.operand);if(m===Vn)return Vn;switch(u.operand.kind){case 9:switch(u.operator){case 41:return Rq(fR(-u.operand.text));case 40:return Rq(fR(+u.operand.text))}break;case 10:if(u.operator===41)return Rq(RWe({negative:!0,base10Value:nz(u.operand.text)}))}switch(u.operator){case 40:case 41:case 55:return HN(m,u.operand),IOe(m,12288)&&Sr(u.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(u.operator)),u.operator===40?(IOe(m,2112)&&Sr(u.operand,Z.Operator_0_cannot_be_applied_to_type_1,Vi(u.operator),no(uZ(m))),ri):o8t(m);case 54:b8t(m,u.operand);let v=Lse(m,12582912);return v===4194304?Bs:v===8388608?tn:Mn;case 46:case 47:return dat(u.operand,HN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&K2e(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),o8t(m)}return nn}function u4s(u){let m=Ol(u.operand);return m===Vn?Vn:(dat(u.operand,HN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&K2e(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),o8t(m))}function o8t(u){return ah(u,2112)?V_(u,3)||ah(u,296)?gg:ao:ri}function IOe(u,m){if(ah(u,m))return!0;let v=WN(u);return!!v&&ah(v,m)}function ah(u,m){if(u.flags&m)return!0;if(u.flags&3145728){let v=u.types;for(let D of v)if(ah(D,m))return!0}return!1}function V_(u,m,v){return u.flags&m?!0:v&&u.flags&114691?!1:!!(m&296)&&dg(u,ri)||!!(m&2112)&&dg(u,ao)||!!(m&402653316)&&dg(u,$r)||!!(m&528)&&dg(u,Mn)||!!(m&16384)&&dg(u,es)||!!(m&131072)&&dg(u,Wi)||!!(m&65536)&&dg(u,Hn)||!!(m&32768)&&dg(u,Bt)||!!(m&4096)&&dg(u,ci)||!!(m&67108864)&&dg(u,fs)}function j2e(u,m,v){return u.flags&1048576?ue(u.types,D=>j2e(D,m,v)):V_(u,m,v)}function pat(u){return!!(la(u)&16)&&!!u.symbol&&a8t(u.symbol)}function a8t(u){return(u.flags&128)!==0}function c8t(u){let m=o0n("hasInstance");if(j2e(u,67108864)){let v=Gg(u,m);if(v){let D=Io(v);if(D&&tg(D,0).length!==0)return D}}}function g4s(u,m,v,D,P){if(v===Vn||D===Vn)return Vn;!Xo(v)&&j2e(v,402784252)&&Sr(u,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),pe.assert(pAe(u.parent));let Y=Hse(u.parent,void 0,P);if(Y===Go)return Vn;let oe=ud(Y);return p0(oe,Mn,m,Z.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Mn}function A4s(u){return kv(u,m=>m===KA||!!(m.flags&2097152)&&mk(WN(m)))}function d4s(u,m,v,D){if(v===Vn||D===Vn)return Vn;if(p(u)){if((ZeOpe(He,v)):d0(D);return xK(Be,Oe,P)}}}}function xK(u,m,v,D){let P;if(u.kind===305){let Y=u;Y.objectAssignmentInitializer&&(ot&&!hR(Ol(Y.objectAssignmentInitializer),16777216)&&(m=Dv(m,524288)),b4s(Y.name,Y.equalsToken,Y.objectAssignmentInitializer,v)),P=u.name}else P=u;return P.kind===227&&P.operatorToken.kind===64&&(Gt(P,v),P=P.left,ot&&(m=Dv(m,524288))),P.kind===211?p4s(P,m,D):P.kind===210?f4s(P,m,v):I4s(P,m,v)}function I4s(u,m,v){let D=Ol(u,v),P=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Y=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return K2e(u,P,Y)&&QQ(m,D,u,u),cP(u)&&eC(u.parent,1048576),m}function hOe(u){switch(u=QA(u),u.kind){case 80:case 11:case 14:case 216:case 229:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 219:case 232:case 220:case 210:case 211:case 222:case 236:case 286:case 285:return!0;case 228:return hOe(u.whenTrue)&&hOe(u.whenFalse);case 227:return UD(u.operatorToken.kind)?!1:hOe(u.left)&&hOe(u.right);case 225:case 226:switch(u.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 223:case 217:case 235:default:return!1}}function l8t(u,m){return(m.flags&98304)!==0||pot(u,m)}function h4s(){let u=c9e(m,v,D,P,Y,oe);return(kt,vr)=>{let dn=u(kt,vr);return pe.assertIsDefined(dn),dn};function m(kt,vr,dn){return vr?(vr.stackIndex++,vr.skip=!1,He(vr,void 0),Vt(vr,void 0)):vr={checkMode:dn,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},wo(kt)&&FY(kt)?(vr.skip=!0,Vt(vr,Ol(kt.right,dn)),vr):(m4s(kt),kt.operatorToken.kind===64&&(kt.left.kind===211||kt.left.kind===210)&&(vr.skip=!0,Vt(vr,xK(kt.left,Ol(kt.right,dn),dn,kt.right.kind===110))),vr)}function v(kt,vr,dn){if(!vr.skip)return Be(vr,kt)}function D(kt,vr,dn){if(!vr.skip){let vn=qe(vr);pe.assertIsDefined(vn),He(vr,vn),Vt(vr,void 0);let ii=kt.kind;if(AAe(ii)){let Yi=dn.parent;for(;Yi.kind===218||Nne(Yi);)Yi=Yi.parent;(ii===56||Z3(Yi))&&y8t(dn.left,vn,Z3(Yi)?Yi.thenStatement:void 0),Rne(ii)&&b8t(vn,dn.left)}}}function P(kt,vr,dn){if(!vr.skip)return Be(vr,kt)}function Y(kt,vr){let dn;if(vr.skip)dn=qe(vr);else{let vn=Oe(vr);pe.assertIsDefined(vn);let ii=qe(vr);pe.assertIsDefined(ii),dn=b_n(kt.left,kt.operatorToken,kt.right,vn,ii,vr.checkMode,kt)}return vr.skip=!1,He(vr,void 0),Vt(vr,void 0),vr.stackIndex--,dn}function oe(kt,vr,dn){return Vt(kt,vr),kt}function Be(kt,vr){if(fo(vr))return vr;Vt(kt,Ol(vr,kt.checkMode))}function Oe(kt){return kt.typeStack[kt.stackIndex]}function He(kt,vr){kt.typeStack[kt.stackIndex]=vr}function qe(kt){return kt.typeStack[kt.stackIndex+1]}function Vt(kt,vr){kt.typeStack[kt.stackIndex+1]=vr}}function m4s(u){if(u.operatorToken.kind===61){if(fo(u.parent)){let{left:m,operatorToken:v}=u.parent;fo(m)&&v.kind===57&&os(m,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(v.kind))}else if(fo(u.left)){let{operatorToken:m}=u.left;(m.kind===57||m.kind===56)&&os(u.left,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(m.kind),Vi(61))}else if(fo(u.right)){let{operatorToken:m}=u.right;m.kind===56&&os(u.right,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(m.kind))}C4s(u),_4s(u)}}function C4s(u){let m=HI(u.left,63),v=mOe(m);v!==3&&(v===1?Sr(m,Z.This_expression_is_always_nullish):Sr(m,Z.Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish))}function _4s(u){let m=HI(u.right,63),v=mOe(m);y4s(u)||(v===1?Sr(m,Z.This_expression_is_always_nullish):v===2&&Sr(m,Z.This_expression_is_never_nullish))}function y4s(u){return!fo(u.parent)||u.parent.operatorToken.kind!==61}function mOe(u){switch(u=HI(u),u.kind){case 224:case 214:case 216:case 213:case 237:case 215:case 212:case 230:case 110:return 3;case 227:switch(u.operatorToken.kind){case 64:case 61:case 78:case 57:case 76:case 56:case 77:return 3;case 28:return mOe(u.right)}return 2;case 228:return mOe(u.whenTrue)|mOe(u.whenFalse);case 106:return 1;case 80:return L0(u)===dt?1:3}return 2}function b4s(u,m,v,D,P){let Y=m.kind;if(Y===64&&(u.kind===211||u.kind===210))return xK(u,Ol(v,D),D,v.kind===110);let oe;Rne(Y)?oe=sSe(u,D):oe=Ol(u,D);let Be=Ol(v,D);return b_n(u,m,v,oe,Be,D,P)}function b_n(u,m,v,D,P,Y,oe){let Be=m.kind;switch(Be){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(D===Vn||P===Vn)return Vn;D=HN(D,u),P=HN(P,v);let Ji;if(D.flags&528&&P.flags&528&&(Ji=kt(m.kind))!==void 0)return Sr(oe||m,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,Vi(m.kind),Vi(Ji)),ri;{let Ka=dat(u,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),yl=dat(v,P,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ka;if(V_(D,3)&&V_(P,3)||!(ah(D,2112)||ah(P,2112)))ka=ri;else if(Oe(D,P)){switch(Be){case 50:case 73:ii();break;case 43:case 68:Ze<3&&Sr(oe,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ka=ao}else ii(Oe),ka=nn;if(Ka&&yl)switch(vr(ka),Be){case 48:case 71:case 49:case 72:case 50:case 73:let Kc=ur(v);typeof Kc.value=="number"&&Math.abs(Kc.value)>=32&&Hw(LF(gv(v.parent.parent)),oe||m,Z.This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2,xp(u),Vi(Be),Kc.value%32);break;default:break}return ka}case 40:case 65:if(D===Vn||P===Vn)return Vn;!V_(D,402653316)&&!V_(P,402653316)&&(D=HN(D,u),P=HN(P,v));let Mi;return V_(D,296,!0)&&V_(P,296,!0)?Mi=ri:V_(D,2112,!0)&&V_(P,2112,!0)?Mi=ao:V_(D,402653316,!0)||V_(P,402653316,!0)?Mi=$r:(Xo(D)||Xo(P))&&(Mi=uo(D)||uo(P)?nn:hr),Mi&&!Vt(Be)?Mi:Mi?(Be===65&&vr(Mi),Mi):(ii((yl,ka)=>V_(yl,402655727)&&V_(ka,402655727)),hr);case 30:case 32:case 33:case 34:return Vt(Be)&&(D=ZUt(HN(D,u)),P=ZUt(HN(P,v)),vn((Ka,yl)=>{if(Xo(Ka)||Xo(yl))return!0;let ka=dg(Ka,gg),Kc=dg(yl,gg);return ka&&Kc||!ka&&!Kc&&xWe(Ka,yl)})),Mn;case 35:case 36:case 37:case 38:if(!(Y&&Y&64)){if((bre(u)||bre(v))&&(!wo(u)||Be===37||Be===38)){let Ka=Be===35||Be===37;Sr(oe,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,Ka?"false":"true")}js(oe,Be,u,v),vn((Ka,yl)=>l8t(Ka,yl)||l8t(yl,Ka))}return Mn;case 104:return g4s(u,v,D,P,Y);case 103:return d4s(u,v,D,P);case 56:case 77:{let Ka=hR(D,4194304)?Ha([QMs(ot?D:uZ(P)),P]):D;return Be===77&&vr(P),Ka}case 57:case 76:{let Ka=hR(D,8388608)?Ha([gZ(Yhn(D)),P],2):D;return Be===76&&vr(P),Ka}case 61:case 78:{let Ka=hR(D,262144)?Ha([gZ(D),P],2):D;return Be===78&&vr(P),Ka}case 64:let To=fo(u.parent)?nI(u.parent):0;return He(To,P),dn(To)?((!(P.flags&524288)||To!==2&&To!==6&&!lZ(P)&&!nKt(P)&&!(la(P)&1))&&vr(P),D):(vr(P),P);case 28:if(!Te.allowUnreachableCode&&hOe(u)&&!qe(u.parent)){let Ka=ms(u),yl=Ka.text,ka=Yu(yl,u.pos);Ka.parseDiagnostics.some(Vu=>Vu.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:ho(Vu,ka))||Sr(u,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return P;default:return pe.fail()}function Oe(Ji,Mi){return V_(Ji,2112)&&V_(Mi,2112)}function He(Ji,Mi){if(Ji===2)for(let To of S9(Mi)){let Ka=Io(To);if(Ka.symbol&&Ka.symbol.flags&32){let yl=To.escapedName,ka=An(To.valueDeclaration,yl,788968,void 0,!1);ka?.declarations&&ka.declarations.some(bU)&&(Yx(ka,Z.Duplicate_identifier_0,Bc(yl),To),Yx(To,Z.Duplicate_identifier_0,Bc(yl),ka))}}}function qe(Ji){return Ji.parent.kind===218&&mC(Ji.left)&&Ji.left.text==="0"&&(Zl(Ji.parent.parent)&&Ji.parent.parent.expression===Ji.parent||Ji.parent.parent.kind===216)&&(_p(Ji.right)||Ir(Ji.right)&&Ji.right.escapedText==="eval")}function Vt(Ji){let Mi=IOe(D,12288)?u:IOe(P,12288)?v:void 0;return Mi?(Sr(Mi,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(Ji)),!1):!0}function kt(Ji){switch(Ji){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function vr(Ji){UD(Be)&&g(Mi);function Mi(){let To=D;if(vde(m.kind)&&u.kind===212&&(To=tat(u,void 0,!0)),K2e(u,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let Ka;if(Pt&&jo(u)&&ah(Ji,32768)){let yl=Pi(P_(u.expression),u.name.escapedText);Iot(Ji,yl)&&(Ka=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}QQ(Ji,To,u,v,Ka)}}}function dn(Ji){var Mi;switch(Ji){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let To=mS(u),Ka=FY(v);return!!Ka&&og(Ka)&&!!((Mi=To?.exports)!=null&&Mi.size);default:return!1}}function vn(Ji){return Ji(D,P)?!1:(ii(Ji),!0)}function ii(Ji){let Mi=!1,To=oe||m;if(Ji){let Vu=pZ(D),gd=pZ(P);Mi=!(Vu===D&&gd===P)&&!!(Vu&&gd)&&Ji(Vu,gd)}let Ka=D,yl=P;!Mi&&Ji&&([Ka,yl]=E4s(D,P,Ji));let[ka,Kc]=Bpe(Ka,yl);Yi(To,Mi,ka,Kc)||u9(To,Mi,Z.Operator_0_cannot_be_applied_to_types_1_and_2,Vi(m.kind),ka,Kc)}function Yi(Ji,Mi,To,Ka){switch(m.kind){case 37:case 35:case 38:case 36:return u9(Ji,Mi,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,To,Ka);default:return}}function js(Ji,Mi,To,Ka){let yl=Co(QA(To)),ka=Co(QA(Ka));if(yl||ka){let Kc=Sr(Ji,Z.This_condition_will_always_return_0,Vi(Mi===37||Mi===35?97:112));if(yl&&ka)return;let Vu=Mi===38||Mi===36?Vi(54):"",gd=yl?Ka:To,Ll=QA(gd);lg(Kc,mo(gd,Z.Did_you_mean_0,`${Vu}Number.isNaN(${Od(Ll)?oy(Ll):"..."})`))}}function Co(Ji){if(Ir(Ji)&&Ji.escapedText==="NaN"){let Mi=j3s();return!!Mi&&Mi===L0(Ji)}return!1}}function E4s(u,m,v){let D=u,P=m,Y=uZ(u),oe=uZ(m);return v(Y,oe)||(D=Y,P=oe),[D,P]}function S4s(u){g(Vt);let m=A1(u);if(!m)return hr;let v=SI(m);if(!(v&1))return hr;let D=(v&2)!==0;u.asteriskToken&&(D&&Zed8t(kt,v,void 0)));let Y=P&&R8t(P,D),oe=Y&&Y.yieldType||hr,Be=Y&&Y.nextType||hr,Oe=u.expression?Ol(u.expression):xe,He=d_n(u,Oe,Be,D);if(P&&He&&QQ(He,oe,u.expression||u,u.expression),u.asteriskToken)return v8t(D?19:17,1,Oe,u.expression)||hr;if(P)return D9(2,P,D)||hr;let qe=Jmn(2,m);return qe||(qe=hr,g(()=>{if(Rt&&!ELe(u)){let kt=Jy(u,void 0);(!kt||Xo(kt))&&Sr(u,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),qe;function Vt(){u.flags&16384||XC(u,Z.A_yield_expression_is_only_allowed_in_a_generator_body),CKt(u)&&Sr(u,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function v4s(u,m){let v=sSe(u.condition,m);y8t(u.condition,v,u.whenTrue);let D=Ol(u.whenTrue,m),P=Ol(u.whenFalse,m);return Ha([D,P],2)}function E_n(u){let m=u.parent;return gI(m)&&E_n(m)||Yg(m)&&m.argumentExpression===u}function B4s(u){let m=[u.head.text],v=[];for(let P of u.templateSpans){let Y=Ol(P.expression);IOe(Y,12288)&&Sr(P.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),m.push(P.literal.text),v.push(dg(Y,Ag)?Y:$r)}let D=u.parent.kind!==216&&ur(u).value;return D?Rq(TE(D)):qpe(u)||E_n(u)||kv(Jy(u,void 0)||cn,w4s)?hK(m,v):$r}function w4s(u){return!!(u.flags&134217856||u.flags&58982400&&ah(L_(u)||cn,402653316))}function T4s(u){return nQ(u)&&!_U(u.parent)?u.parent.parent:u}function Yse(u,m,v,D){let P=T4s(u);eOe(P,m,!1),ZYs(P,v);let Y=Ol(u,D|1|(v?2:0));v&&v.intraExpressionInferenceSites&&(v.intraExpressionInferenceSites=void 0);let oe=ah(Y,2944)&&fat(Y,Xot(m,u,void 0))?Iy(Y):Y;return LYs(),W2e(),oe}function RI(u,m){if(m)return Ol(u,m);let v=sa(u);if(!v.resolvedType){let D=Oo,P=gl;Oo=Os,gl=void 0,v.resolvedType=Ol(u,m),gl=P,Oo=D}return v.resolvedType}function S_n(u){return u=QA(u,!0),u.kind===217||u.kind===235||sQ(u)}function zpe(u,m,v){let D=one(u);if(wo(u)){let Y=QAe(u);if(Y)return jKt(D,Y,m)}let P=A8t(D)||(v?Yse(D,v,void 0,m||0):RI(D,m));if(Si(hg(u)?ai(u):u)){if(u.name.kind===207&&R9(P))return R4s(P,u.name);if(u.name.kind===208&&yA(P))return N4s(P,u.name)}return P}function R4s(u,m){let v;for(let Y of m.elements)if(Y.initializer){let oe=v_n(Y);oe&&!Gg(u,oe)&&(v=Ft(v,Y))}if(!v)return u;let D=qu();for(let Y of S9(u))D.set(Y.escapedName,Y);for(let Y of v){let oe=gA(16777220,v_n(Y));oe.links.type=gR(Y,!1,!1),D.set(oe.escapedName,oe)}let P=Hf(u.symbol,D,E,E,A0(u));return P.objectFlags=u.objectFlags,P}function v_n(u){let m=sZ(u.propertyName||u.name);return g2(m)?A2(m):void 0}function N4s(u,m){if(u.target.combinedFlags&12||B9(u)>=m.elements.length)return u;let v=m.elements,D=WQ(u).slice(),P=u.target.elementFlags.slice();for(let Y=B9(u);Yfat(u,D))}if(m.flags&58982400){let v=L_(m)||cn;return ah(v,4)&&ah(u,128)||ah(v,8)&&ah(u,256)||ah(v,64)&&ah(u,2048)||ah(v,4096)&&ah(u,8192)||fat(u,v)}return!!(m.flags&406847616&&ah(u,128)||m.flags&256&&ah(u,256)||m.flags&2048&&ah(u,2048)||m.flags&512&&ah(u,512)||m.flags&8192&&ah(u,8192))}return!1}function qpe(u){let m=u.parent;return Ed(m)&&s2(m.type)||sQ(m)&&s2(_ie(m))||KKt(u)&&pK(Jy(u,0))||(gI(m)||OI(m)||of(m))&&qpe(m)||(fm(m)||a0(m)||die(m))&&qpe(m.parent)}function $pe(u,m,v){let D=Ol(u,m,v);return qpe(u)||fye(u)?Iy(D):S_n(u)?D:LUt(D,Xot(Jy(u,void 0),u,void 0))}function w_n(u,m){return u.name.kind===168&&zw(u.name),$pe(u.initializer,m)}function T_n(u,m){q0n(u),u.name.kind===168&&zw(u.name);let v=h_n(u,m);return R_n(u,v,m)}function R_n(u,m,v){if(v&&v&10){let D=Y2e(m,0,!0),P=Y2e(m,1,!0),Y=D||P;if(Y&&Y.typeParameters){let oe=O5(u,2);if(oe){let Be=Y2e(gZ(oe),D?0:1,!1);if(Be&&!Be.typeParameters){if(v&8)return N_n(u,v),$d;let Oe=JQ(u),He=Oe.signature&&ud(Oe.signature),qe=He&&ZCn(He);if(qe&&!qe.typeParameters&&!ue(Oe.inferences,Qse)){let Vt=G4s(Oe,Y.typeParameters),kt=WJt(Y,Vt),vr=At(Oe.inferences,dn=>YUt(dn.typeParameter));if(WUt(kt,Be,(dn,vn)=>{nG(vr,dn,vn,0,!0)}),jt(vr,Qse)&&(OUt(kt,Be,(dn,vn)=>{nG(vr,dn,vn)}),!k4s(Oe.inferences,vr)))return x4s(Oe.inferences,vr),Oe.inferredTypeParameters=Nn(Oe.inferredTypeParameters,Vt),fK(kt)}return fK(LCn(Y,Be,Oe))}}}}return m}function N_n(u,m){if(m&2){let v=JQ(u);v.flags|=4}}function Qse(u){return!!(u.candidates||u.contraCandidates)}function D4s(u){return!!(u.candidates||u.contraCandidates||Ufn(u.typeParameter))}function k4s(u,m){for(let v=0;vv.symbol.escapedName===m)}function F4s(u,m){let v=m.length;for(;v>1&&m.charCodeAt(v-1)>=48&&m.charCodeAt(v-1)<=57;)v--;let D=m.slice(0,v);for(let P=1;;P++){let Y=D+P;if(!g8t(u,Y))return Y}}function D_n(u){let m=kK(u);if(m&&!m.typeParameters)return ud(m)}function Z4s(u){let m=Ol(u.expression),v=k2e(m,u.expression),D=D_n(m);return D&&Bot(D,u,v!==m)}function P_(u){let m=A8t(u);if(m)return m;if(u.flags&268435456&&gl){let P=gl[rd(u)];if(P)return P}let v=tu,D=Ol(u,64);if(tu!==v){let P=gl||(gl=[]);P[rd(u)]=D,bLe(u,u.flags|268435456)}return D}function A8t(u){let m=QA(u,!0);if(sQ(m)){let v=_ie(m);if(!s2(v))return nl(v)}if(m=QA(u),I1(m)){let v=A8t(m.expression);return v?Zq(v):void 0}if(Zl(m)&&m.expression.kind!==108&&!ay(m,!0)&&!zCn(m)&&!Up(m))return _B(m)?Z4s(m):D_n(Ose(m.expression));if(Ed(m)&&!s2(m.type))return nl(m.type);if(wL(u)||hY(u))return Ol(u)}function COe(u){let m=sa(u);if(m.contextFreeType)return m.contextFreeType;eOe(u,hr,!1);let v=m.contextFreeType=Ol(u,4);return W2e(),v}function Ol(u,m,v){var D,P;(D=ki)==null||D.push(ki.Phase.Check,"checkExpression",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let Y=ge;ge=u,M=0;let oe=P4s(u,m,v),Be=R_n(u,oe,m);return pat(Be)&&L4s(u,Be),ge=Y,(P=ki)==null||P.pop(),Be}function L4s(u,m){var v;let D=u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u||(u.kind===80||u.kind===167)&&kat(u)||u.parent.kind===187&&u.parent.exprName===u||u.parent.kind===282;if(D||Sr(u,Z.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query),Te.isolatedModules||Te.verbatimModuleSyntax&&D&&!An(u,B0(u),2097152,void 0,!1,!0)){pe.assert(!!(m.symbol.flags&128));let P=m.symbol.valueDeclaration,Y=(v=s.getRedirectFromOutput(ms(P).resolvedPath))==null?void 0:v.resolvedRef;P.flags&33554432&&!JL(u)&&(!Y||!Fb(Y.commandLine.options))&&Sr(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,zt)}}function V4s(u,m){if(Xm(u)){if(Zbe(u))return jKt(u.expression,Lbe(u),m);if(sQ(u))return t_n(u,m)}return Ol(u.expression,m)}function P4s(u,m,v){let D=u.kind;if(d)switch(D){case 232:case 219:case 220:d.throwIfCancellationRequested()}switch(D){case 80:return sYs(u,m);case 81:return NQs(u);case 110:return qWe(u);case 108:return Hot(u);case 106:return Ot;case 15:case 11:return KUt(u)?Gi:Rq(TE(u.text));case 9:return iyn(u),Rq(fR(+u.text));case 10:return O8s(u),Rq(RWe({negative:!1,base10Value:nz(u.text)}));case 112:return tn;case 97:return Bs;case 229:return B4s(u);case 14:return eQs(u);case 210:return iCn(u,m,v);case 211:return cQs(u,m);case 212:return tat(u,m);case 167:return yCn(u,m);case 213:return QQs(u,m);case 214:if(Up(u))return EXs(u);case 215:return bXs(u,m);case 216:return SXs(u);case 218:return V4s(u,m);case 232:return RUs(u);case 219:case 220:return h_n(u,m);case 222:return o4s(u);case 217:case 235:return vXs(u,m);case 236:return TXs(u);case 234:return n_n(u);case 239:return RXs(u);case 237:return NXs(u);case 221:return i4s(u);case 223:return a4s(u);case 224:return c4s(u);case 225:return l4s(u);case 226:return u4s(u);case 227:return Gt(u,m);case 228:return v4s(u,m);case 231:return tQs(u,m);case 233:return xe;case 230:return S4s(u);case 238:return rQs(u);case 295:return EQs(u,m);case 285:return AQs(u,m);case 286:return uQs(u,m);case 289:return dQs(u);case 293:return fQs(u,m);case 287:pe.fail("Shouldn't ever directly check a JsxOpeningElement")}return nn}function k_n(u){sG(u),u.expression&&XC(u.expression,Z.Type_expected),rA(u.constraint),rA(u.default);let m=R5(Uo(u));L_(m),t3s(m)||Sr(u.default,Z.Type_parameter_0_has_a_circular_default,no(m));let v=Xy(m),D=VQ(m);v&&D&&p0(D,T1(_l(v,HQ(m,D)),D),u.default,Z.Type_0_does_not_satisfy_the_constraint_1),Lq(u),g(()=>nfe(u.name,Z.Type_parameter_name_cannot_be_0))}function W4s(u){var m,v;if(g_(u.parent)||xa(u.parent)||FB(u.parent)){let D=R5(Uo(u)),P=kUt(D)&24576;if(P){let Y=Uo(u.parent);if(FB(u.parent)&&!(la(Fp(Y))&48))Sr(u,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(P===8192||P===16384){(m=ki)==null||m.push(ki.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:QC(Fp(Y)),id:QC(D)});let oe=ZWe(Y,D,P===16384?ln:mr),Be=ZWe(Y,D,P===16384?mr:ln),Oe=D;Ie=D,p0(oe,Be,u,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ie=Oe,(v=ki)==null||v.pop()}}}}function x_n(u){sG(u),vOe(u);let m=A1(u);Ga(u,31)&&(Te.erasableSyntaxOnly&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),m.kind===177&&u1(m.body)||Sr(u,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),m.kind===177&&Ir(u.name)&&u.name.escapedText==="constructor"&&Sr(u.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!u.initializer&&RB(u)&&Nu(u.name)&&m.body&&Sr(u,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),u.name&&Ir(u.name)&&(u.name.escapedText==="this"||u.name.escapedText==="new")&&(m.parameters.indexOf(u)!==0&&Sr(u,Z.A_0_parameter_must_be_the_first_parameter,u.name.escapedText),(m.kind===177||m.kind===181||m.kind===186)&&Sr(u,Z.A_constructor_cannot_have_a_this_parameter),m.kind===220&&Sr(u,Z.An_arrow_function_cannot_have_a_this_parameter),(m.kind===178||m.kind===179)&&Sr(u,Z.get_and_set_accessors_cannot_declare_this_parameters)),u.dotDotDotToken&&!Nu(u.name)&&!dg(JB(Io(u.symbol)),E1)&&Sr(u,Z.A_rest_parameter_must_be_of_an_array_type)}function O4s(u){let m=M4s(u);if(!m){Sr(u,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let v=yS(m),D=Tv(v);if(!D)return;rA(u.type);let{parameterName:P}=u;if(D.kind!==0&&D.kind!==2){if(D.parameterIndex>=0){if(D0(v)&&D.parameterIndex===v.parameters.length-1)Sr(P,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let Y=()=>wu(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);p0(D.type,Io(v.parameters[D.parameterIndex]),u.type,void 0,Y)}}else if(P){let Y=!1;for(let{name:oe}of m.parameters)if(Nu(oe)&&G_n(oe,P,D.parameterName)){Y=!0;break}Y||Sr(u.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}}function M4s(u){switch(u.parent.kind){case 220:case 180:case 263:case 219:case 185:case 175:case 174:let m=u.parent;if(u===m.type)return m}}function G_n(u,m,v){for(let D of u.elements){if(yp(D))continue;let P=D.name;if(P.kind===80&&P.escapedText===v)return Sr(m,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,v),!0;if((P.kind===208||P.kind===207)&&G_n(P,m,v))return!0}}function z2e(u){u.kind===182?I8s(u):(u.kind===185||u.kind===263||u.kind===186||u.kind===180||u.kind===177||u.kind===181)&&Vat(u);let m=SI(u);m&4||((m&3)===3&&Ze0&&v.declarations[0]!==u)return}let m=Kst(Uo(u));if(m?.declarations){let v=new Map;for(let D of m.declarations)w0(D)&&D.parameters.length===1&&D.parameters[0].type&&TK(nl(D.parameters[0].type),P=>{let Y=v.get(QC(P));Y?Y.declarations.push(D):v.set(QC(P),{type:P,declarations:[D]})});v.forEach(D=>{if(D.declarations.length>1)for(let P of D.declarations)Sr(P,Z.Duplicate_index_signature_for_type_0,no(D.type))})}}function Z_n(u){!sG(u)&&!V8s(u)&&Pat(u.name),vOe(u),Iat(u),Ga(u,64)&&u.kind===173&&u.initializer&&Sr(u,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Wd(u.name))}function Q4s(u){return p(u.name)&&Sr(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Z_n(u)}function X4s(u){q0n(u)||Pat(u.name),uu(u)&&u.asteriskToken&&Ir(u.name)&&Vo(u.name)==="constructor"&&Sr(u.name,Z.Class_constructor_may_not_be_a_generator),U_n(u),Ga(u,64)&&u.kind===175&&u.body&&Sr(u,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Wd(u.name)),p(u.name)&&!hC(u)&&Sr(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Iat(u)}function Iat(u){if(p(u.name)&&(ZeGa(He,31))))if(!K4s(Be,u.body))Sr(Be,Z.A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers);else{let He;for(let qe of u.body.statements){if(VC(qe)&&Dy(HI(qe.expression))){He=qe;break}if(L_n(qe))break}He===void 0&&Sr(u,Z.A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else oe||Sr(u,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function K4s(u,m){let v=gv(u.parent);return VC(v)&&v.parent===m}function L_n(u){return u.kind===108||u.kind===110?!0:sZe(u)?!1:!!Lu(u,L_n)}function V_n(u){Ir(u.name)&&Vo(u.name)==="constructor"&&xa(u.parent)&&Sr(u.name,Z.Class_constructor_may_not_be_an_accessor),g(m),rA(u.body),Iat(u);function m(){if(!Vat(u)&&!v8s(u)&&Pat(u.name),bOe(u),z2e(u),u.kind===178&&!(u.flags&33554432)&&u1(u.body)&&u.flags&512&&(u.flags&1024||Sr(u.name,Z.A_get_accessor_must_return_a_value)),u.name.kind===168&&zw(u.name),Tse(u)){let D=Uo(u),P=Cp(D,178),Y=Cp(D,179);if(P&&Y&&!(Pq(P)&1)){sa(P).flags|=1;let oe=o_(P),Be=o_(Y);(oe&64)!==(Be&64)&&(Sr(P.name,Z.Accessors_must_both_be_abstract_or_non_abstract),Sr(Y.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(oe&4&&!(Be&6)||oe&2&&!(Be&2))&&(Sr(P.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),Sr(Y.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let v=Dpe(Uo(u));u.kind===178&&s8t(u,v)}}function j4s(u){bOe(u)}function z4s(u,m,v){return u.typeArguments&&v{let D=f8t(u);D&&P_n(u,D)});let v=sa(u).resolvedSymbol;v&&jt(v.declarations,D=>KY(D)&&!!(D.flags&536870912))&&YB(uOe(u),v.declarations,v.escapedName)}}function $4s(u){let m=Gs(u.parent,s7);if(!m)return;let v=f8t(m);if(!v)return;let D=Xy(v[m.typeArguments.indexOf(u)]);return D&&_l(D,N1(v,hat(m,v)))}function eJs(u){CIn(u)}function tJs(u){F(u.members,rA),g(m);function m(){let v=lhn(u);Bat(v,v.symbol),p8t(u),F_n(u)}}function rJs(u){rA(u.elementType)}function nJs(u){let m=!1,v=!1;for(let D of u.elements){let P=qJt(D);if(P&8){let Y=nl(D.type);if(!T9(Y)){Sr(D,Z.A_rest_element_type_must_be_an_array_type);break}(Nv(Y)||yA(Y)&&Y.target.combinedFlags&4)&&(P|=4)}if(P&4){if(v){os(D,Z.A_rest_element_cannot_follow_another_rest_element);break}v=!0}else if(P&2){if(v){os(D,Z.An_optional_element_cannot_follow_a_rest_element);break}m=!0}else if(P&1&&m){os(D,Z.A_required_element_cannot_follow_an_optional_element);break}}F(u.elements,rA),nl(u)}function iJs(u){F(u.types,rA),nl(u)}function O_n(u,m){if(!(u.flags&8388608))return u;let v=u.objectType,D=u.indexType,P=Yb(v)&&I2e(v)===2?JIn(v,0):ON(v,0),Y=!!$x(v,ri);if(RE(D,oe=>dg(oe,P)||Y&&Sq(oe,ri)))return m.kind===213&&bF(m)&&la(v)&32&&fk(v)&1&&Sr(m,Z.Index_signature_in_type_0_only_permits_reading,no(v)),u;if(CK(v)){let oe=oot(D,m);if(oe){let Be=TK(fy(v),Oe=>Gg(Oe,oe));if(Be&&u2(Be)&6)return Sr(m,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Bc(oe)),nn}}return Sr(m,Z.Type_0_cannot_be_used_to_index_type_1,no(D),no(v)),nn}function sJs(u){rA(u.objectType),rA(u.indexType),O_n(nhn(u),u)}function oJs(u){aJs(u),rA(u.typeParameter),rA(u.nameType),rA(u.type),u.type||P5(u,hr);let m=uUt(u),v=E9(m);if(v)p0(v,mc,u.nameType);else{let D=_S(m);p0(D,mc,n3(u.typeParameter))}}function aJs(u){var m;if((m=u.members)!=null&&m.length)return os(u.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function cJs(u){hUt(u)}function lJs(u){w8s(u),rA(u.type)}function uJs(u){Lu(u,rA)}function gJs(u){ji(u,v=>v.parent&&v.parent.kind===195&&v.parent.extendsType===v)||os(u,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),rA(u.typeParameter);let m=Uo(u.typeParameter);if(m.declarations&&m.declarations.length>1){let v=fa(m);if(!v.typeParametersChecked){v.typeParametersChecked=!0;let D=R5(m),P=dge(m,169);if(!d0n(P,[D],Y=>[Y])){let Y=kl(m);for(let oe of P)Sr(oe.name,Z.All_declarations_of_0_must_have_identical_constraints,Y)}}}_W(u)}function AJs(u){for(let m of u.templateSpans){rA(m.type);let v=nl(m.type);p0(v,Ag,m.type)}nl(u)}function dJs(u){rA(u.argument),u.attributes&&Gie(u.attributes,os),W_n(u)}function pJs(u){u.dotDotDotToken&&u.questionToken&&os(u,Z.A_tuple_member_cannot_be_both_optional_and_rest),u.type.kind===191&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),u.type.kind===192&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),rA(u.type),nl(u)}function _Oe(u){return(Gb(u,2)||pC(u))&&!!(u.flags&33554432)}function q2e(u,m){let v=Oat(u);if(u.parent.kind!==265&&u.parent.kind!==264&&u.parent.kind!==232&&u.flags&33554432){let D=f7(u);D&&D.flags&128&&!(v&128)&&!(_N(u.parent)&&xh(u.parent.parent)&&vB(u.parent.parent))&&(v|=32),v|=128}return v&m}function mat(u){g(()=>fJs(u))}function fJs(u){function m(Ji,Mi){return Mi!==void 0&&Mi.parent===Ji[0].parent?Mi:Ji[0]}function v(Ji,Mi,To,Ka,yl){if((Ka^yl)!==0){let Kc=q2e(m(Ji,Mi),To);Yn(Ji,Vu=>ms(Vu).fileName).forEach(Vu=>{let gd=q2e(m(Vu,Mi),To);for(let Ll of Vu){let Ef=q2e(Ll,To)^Kc,UI=q2e(Ll,To)^gd;UI&32?Sr(Il(Ll),Z.Overload_signatures_must_all_be_exported_or_non_exported):UI&128?Sr(Il(Ll),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):Ef&6?Sr(Il(Ll)||Ll,Z.Overload_signatures_must_all_be_public_private_or_protected):Ef&64&&Sr(Il(Ll),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)}})}}function D(Ji,Mi,To,Ka){if(To!==Ka){let yl=VY(m(Ji,Mi));F(Ji,ka=>{VY(ka)!==yl&&Sr(Il(ka),Z.Overload_signatures_must_all_be_optional_or_required)})}}let P=230,Y=0,oe=P,Be=!1,Oe=!0,He=!1,qe,Vt,kt,vr=u.declarations,dn=(u.flags&16384)!==0;function vn(Ji){if(Ji.name&&sf(Ji.name))return;let Mi=!1,To=Lu(Ji.parent,yl=>{if(Mi)return yl;Mi=yl===Ji});if(To&&To.pos===Ji.end&&To.kind===Ji.kind){let yl=To.name||To,ka=To.name;if(Ji.name&&ka&&(p(Ji.name)&&p(ka)&&Ji.name.escapedText===ka.escapedText||Un(Ji.name)&&Un(ka)&&rG(zw(Ji.name),zw(ka))||Tw(Ji.name)&&Tw(ka)&&qJ(Ji.name)===qJ(ka))){if((Ji.kind===175||Ji.kind===174)&&cg(Ji)!==cg(To)){let Vu=cg(Ji)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;Sr(yl,Vu)}return}if(u1(To.body)){Sr(yl,Z.Function_implementation_name_must_be_0,Wd(Ji.name));return}}let Ka=Ji.name||Ji;dn?Sr(Ka,Z.Constructor_implementation_is_missing):Ga(Ji,64)?Sr(Ka,Z.All_declarations_of_an_abstract_method_must_be_consecutive):Sr(Ka,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let ii=!1,Yi=!1,js=!1,Co=[];if(vr)for(let Ji of vr){let Mi=Ji,To=Mi.flags&33554432,Ka=Mi.parent&&(Mi.parent.kind===265||Mi.parent.kind===188)||To;if(Ka&&(kt=void 0),(Mi.kind===264||Mi.kind===232)&&!To&&(js=!0),Mi.kind===263||Mi.kind===175||Mi.kind===174||Mi.kind===177){Co.push(Mi);let yl=q2e(Mi,P);Y|=yl,oe&=yl,Be=Be||VY(Mi),Oe=Oe&&VY(Mi);let ka=u1(Mi.body);ka&&qe?dn?Yi=!0:ii=!0:kt?.parent===Mi.parent&&kt.end!==Mi.pos&&vn(kt),ka?qe||(qe=Mi):He=!0,kt=Mi,Ka||(Vt=Mi)}wo(Ji)&&bu(Ji)&&Ji.jsDoc&&(He=B(Bye(Ji))>0)}if(Yi&&F(Co,Ji=>{Sr(Ji,Z.Multiple_constructor_implementations_are_not_allowed)}),ii&&F(Co,Ji=>{Sr(Il(Ji)||Ji,Z.Duplicate_function_implementation)}),js&&!dn&&u.flags&16&&vr){let Ji=Me(vr,Mi=>Mi.kind===264).map(Mi=>mo(Mi,Z.Consider_adding_a_declare_modifier_to_this_class));F(vr,Mi=>{let To=Mi.kind===264?Z.Class_declaration_cannot_implement_overload_list_for_0:Mi.kind===263?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;To&&lg(Sr(Il(Mi)||Mi,To,nf(u)),...Ji)})}if(Vt&&!Vt.body&&!Ga(Vt,64)&&!Vt.questionToken&&vn(Vt),He&&(vr&&(v(vr,qe,P,Y,oe),D(vr,qe,Be,Oe)),qe)){let Ji=PQ(u),Mi=yS(qe);for(let To of Ji)if(!hMs(Mi,To)){let Ka=To.declaration&&qL(To.declaration)?To.declaration.parent.tagName:To.declaration;lg(Sr(Ka,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),mo(qe,Z.The_implementation_signature_is_declared_here));break}}}function $2e(u){g(()=>IJs(u))}function IJs(u){let m=u.localSymbol;if(!m&&(m=Uo(u),!m.exportSymbol)||Cp(m,u.kind)!==u)return;let v=0,D=0,P=0;for(let He of m.declarations){let qe=Oe(He),Vt=q2e(He,2080);Vt&32?Vt&2048?P|=qe:v|=qe:D|=qe}let Y=v|D,oe=v&D,Be=P&Y;if(oe||Be)for(let He of m.declarations){let qe=Oe(He),Vt=Il(He);qe&Be?Sr(Vt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Wd(Vt)):qe&oe&&Sr(Vt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Wd(Vt))}function Oe(He){let qe=He;switch(qe.kind){case 265:case 266:case 347:case 339:case 341:return 2;case 268:return s_(qe)||PF(qe)!==0?5:4;case 264:case 267:case 307:return 3;case 308:return 7;case 278:case 227:let Vt=qe,kt=Cf(Vt)?Vt.expression:Vt.right;if(!Od(kt))return 1;qe=kt;case 272:case 275:case 274:let vr=0,dn=YC(Uo(qe));return F(dn.declarations,vn=>{vr|=Oe(vn)}),vr;case 261:case 209:case 263:case 277:case 80:return 1;case 174:case 172:return 2;default:return pe.failBadSyntaxKind(qe)}}}function efe(u,m,v,...D){let P=eSe(u,m);return P&&Zq(P,m,v,...D)}function eSe(u,m,v){if(Xo(u))return;let D=u;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(w1(u,EWe(!1)))return D.promisedTypeOfPromise=lf(u)[0];if(j2e(WN(u),402915324))return;let P=Pi(u,"then");if(Xo(P))return;let Y=P?tg(P,0):E;if(Y.length===0){m&&Sr(m,Z.A_promise_must_have_a_then_method);return}let oe,Be;for(let qe of Y){let Vt=k5(qe);Vt&&Vt!==es&&!MN(u,Vt,ck)?oe=Vt:Be=Ft(Be,qe)}if(!Be){pe.assertIsDefined(oe),v&&(v.value=oe),m&&Sr(m,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,no(u),no(oe));return}let Oe=Dv(Ha(At(Be,e8t)),2097152);if(Xo(Oe))return;let He=tg(Oe,0);if(He.length===0){m&&Sr(m,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=Ha(At(He,e8t),2)}function yOe(u,m,v,D,...P){return(m?Zq(u,v,D,...P):pZ(u,v,D,...P))||nn}function M_n(u){if(j2e(WN(u),402915324))return!1;let m=Pi(u,"then");return!!m&&tg(Dv(m,2097152),0).length>0}function Cat(u){var m;if(u.flags&16777216){let v=zJt(!1);return!!v&&u.aliasSymbol===v&&((m=u.aliasTypeArguments)==null?void 0:m.length)===1}return!1}function tfe(u){return u.flags&1048576?Yf(u,tfe):Cat(u)?u.aliasTypeArguments[0]:u}function H_n(u){if(Xo(u)||Cat(u))return!1;if(CK(u)){let m=L_(u);if(m?m.flags&3||lZ(m)||kv(m,M_n):ah(u,8650752))return!0}return!1}function hJs(u){let m=zJt(!0);if(m)return kse(m,[tfe(u)])}function mJs(u){return H_n(u)?hJs(u)??u:(pe.assert(Cat(u)||eSe(u)===void 0,"type provided should not be a non-generic 'promise'-like."),u)}function Zq(u,m,v,...D){let P=pZ(u,m,v,...D);return P&&mJs(P)}function pZ(u,m,v,...D){if(Xo(u)||Cat(u))return u;let P=u;if(P.awaitedTypeOfType)return P.awaitedTypeOfType;if(u.flags&1048576){if(zP.lastIndexOf(u.id)>=0){m&&Sr(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Be=m?He=>pZ(He,m,v,...D):pZ;zP.push(u.id);let Oe=Yf(u,Be);return zP.pop(),P.awaitedTypeOfType=Oe}if(H_n(u))return P.awaitedTypeOfType=u;let Y={value:void 0},oe=eSe(u,void 0,Y);if(oe){if(u.id===oe.id||zP.lastIndexOf(oe.id)>=0){m&&Sr(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}zP.push(u.id);let Be=pZ(oe,m,v,...D);return zP.pop(),Be?P.awaitedTypeOfType=Be:void 0}if(M_n(u)){if(m){pe.assertIsDefined(v);let Be;Y.value&&(Be=wu(Be,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,no(u),no(Y.value))),Be=wu(Be,v,...D),PA.add(Bw(ms(m),m,Be))}return}return P.awaitedTypeOfType=u}function CJs(u,m,v){let D=nl(m);if(Ze>=2){if(uo(D))return;let Y=EWe(!0);if(Y!==oi&&!w1(D,Y)){P(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,m,v,no(pZ(D)||es));return}}else{if(xq(u,5),uo(D))return;let Y=ene(m);if(Y===void 0){P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,no(D));return}let oe=TI(Y,111551,!0),Be=oe?Io(oe):nn;if(uo(Be)){Y.kind===80&&Y.escapedText==="Promise"&&vs(D)===EWe(!1)?Sr(v,Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,oy(Y));return}let Oe=w3s(!0);if(Oe===Xg){P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,oy(Y));return}let He=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!p0(Be,Oe,v,He,()=>m===v?void 0:wu(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Vt=Y&&B0(Y),kt=f_(u.locals,Vt.escapedText,111551);if(kt){Sr(kt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,Vo(Vt),oy(Y));return}}yOe(D,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function P(Y,oe,Be,Oe){if(oe===Be)Sr(Be,Y,Oe);else{let He=Sr(Be,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);lg(He,mo(oe,Y,Oe))}}}function _Js(u){let m=ms(u);if(!bW(m)){let v=u.expression;if(gI(v))return!1;let D=!0,P;for(;;){if(l_(v)||hv(v)){v=v.expression;continue}if(Zl(v)){D||(P=v),v.questionDotToken&&(P=v.questionDotToken),v=v.expression,D=!1;continue}if(jo(v)){v.questionDotToken&&(P=v.questionDotToken),v=v.expression,D=!1;continue}Ir(v)||(P=v);break}if(P)return lg(Sr(u.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),mo(P,Z.Invalid_syntax_in_decorator)),!0}return!1}function yJs(u){_Js(u);let m=Hse(u);uat(m,u);let v=ud(m);if(v.flags&1)return;let D=n8t(u);if(!D?.resolvedReturnType)return;let P,Y=D.resolvedReturnType;switch(u.parent.kind){case 264:case 232:P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 173:if(!Ue){P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 170:P=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 175:case 178:case 179:P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return pe.failBadSyntaxKind(u.parent)}p0(v,Y,u.expression,P)}function tSe(u,m,v,D,P,Y=v.length,oe=0){let Be=me.createFunctionTypeNode(void 0,E,me.createKeywordTypeNode(133));return PN(Be,u,m,v,D,P,Y,oe)}function h8t(u,m,v,D,P,Y,oe){let Be=tSe(u,m,v,D,P,Y,oe);return fK(Be)}function Y_n(u){return h8t(void 0,void 0,E,u)}function Q_n(u){let m=IS("value",u);return h8t(void 0,void 0,[m],es)}function m8t(u){if(u)switch(u.kind){case 194:case 193:return X_n(u.types);case 195:return X_n([u.trueType,u.falseType]);case 197:case 203:return m8t(u.type);case 184:return u.typeName}}function X_n(u){let m;for(let v of u){for(;v.kind===197||v.kind===203;)v=v.type;if(v.kind===146||!ot&&(v.kind===202&&v.literal.kind===106||v.kind===157))continue;let D=m8t(v);if(!D)return;if(m){if(!Ir(m)||!Ir(D)||m.escapedText!==D.escapedText)return}else m=D}return m}function _at(u){let m=kh(u);return EB(u)?pye(m):m}function bOe(u){if(!oQ(u)||!p1(u)||!u.modifiers||!OJ(Ue,u,u.parent,u.parent.parent))return;let m=de(u.modifiers,So);if(m){Ue?(eC(m,8),u.kind===170&&eC(m,32)):Ze1)for(let D=1;D0),v.length>1&&Sr(v[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=J_n(u.class.expression),P=OL(m);if(P){let Y=J_n(P.expression);Y&&D.escapedText!==Y.escapedText&&Sr(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,Vo(u.tagName),Vo(D),Vo(Y))}}function FJs(u){let m=bP(u);m&&pC(m)&&Sr(u,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function J_n(u){switch(u.kind){case 80:return u;case 212:return u.name;default:return}}function U_n(u){var m;bOe(u),z2e(u);let v=SI(u);if(u.name&&u.name.kind===168&&zw(u.name),Tse(u)){let Y=Uo(u),oe=u.localSymbol||Y,Be=(m=oe.declarations)==null?void 0:m.find(Oe=>Oe.kind===u.kind&&!(Oe.flags&524288));u===Be&&mat(oe),Y.parent&&mat(Y)}let D=u.kind===174?void 0:u.body;if(rA(D),s8t(u,Nse(u)),g(P),wo(u)){let Y=ov(u);Y&&Y.typeExpression&&!vKt(nl(Y.typeExpression),u)&&Sr(Y.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function P(){xb(u)||(sf(D)&&!_Oe(u)&&P5(u,hr),v&1&&u1(D)&&ud(yS(u)))}}function _W(u){g(m);function m(){let v=ms(u),D=Qs.get(v.path);D||(D=[],Qs.set(v.path,D)),D.push(u)}}function K_n(u,m){for(let v of u)switch(v.kind){case 264:case 232:ZJs(v,m),C8t(v,m);break;case 308:case 268:case 242:case 270:case 249:case 250:case 251:q_n(v,m);break;case 177:case 219:case 263:case 220:case 175:case 178:case 179:v.body&&q_n(v,m),C8t(v,m);break;case 174:case 180:case 181:case 185:case 186:case 266:case 265:C8t(v,m);break;case 196:LJs(v,m);break;default:pe.assertNever(v,"Node should not have been registered for unused identifiers check")}}function j_n(u,m,v){let D=Il(u)||u,P=KY(u)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;v(u,0,mo(D,P,m))}function rSe(u){return Ir(u)&&Vo(u).charCodeAt(0)===95}function ZJs(u,m){for(let v of u.members)switch(v.kind){case 175:case 173:case 178:case 179:if(v.kind===179&&v.symbol.flags&32768)break;let D=Uo(v);!D.isReferenced&&(Gb(v,2)||rh(v)&&p(v.name))&&!(v.flags&33554432)&&m(v,0,mo(v.name,Z._0_is_declared_but_its_value_is_never_read,kl(D)));break;case 177:for(let P of v.parameters)!P.symbol.isReferenced&&Ga(P,2)&&m(P,0,mo(P.name,Z.Property_0_is_declared_but_its_value_is_never_read,nf(P.symbol)));break;case 182:case 241:case 176:break;default:pe.fail("Unexpected class member")}}function LJs(u,m){let{typeParameter:v}=u;_8t(v)&&m(u,1,mo(u,Z._0_is_declared_but_its_value_is_never_read,Vo(v.name)))}function C8t(u,m){let v=Uo(u).declarations;if(!v||Ei(v)!==u)return;let D=ZD(u),P=new Set;for(let Y of D){if(!_8t(Y))continue;let oe=Vo(Y.name),{parent:Be}=Y;if(Be.kind!==196&&Be.typeParameters.every(_8t)){if(Ar(P,Be)){let Oe=ms(Be),He=ZB(Be)?Nbe(Be):Dbe(Oe,Be.typeParameters),Vt=Be.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,oe]:[Z.All_type_parameters_are_unused];m(Y,1,qh(Oe,He.pos,He.end-He.pos,...Vt))}}else m(Y,1,mo(Y,Z._0_is_declared_but_its_value_is_never_read,oe))}}function _8t(u){return!(jA(u.symbol).isReferenced&262144)&&!rSe(u.name)}function EOe(u,m,v,D){let P=String(D(m)),Y=u.get(P);Y?Y[1].push(v):u.set(P,[m,[v]])}function z_n(u){return Gs(Rw(u),Si)}function VJs(u){return hg(u)?Km(u.parent)?!!(u.propertyName&&rSe(u.name)):rSe(u.name):s_(u)||(nc(u)&&DL(u.parent.parent)||$_n(u))&&rSe(u.name)}function q_n(u,m){let v=new Map,D=new Map,P=new Map;u.locals.forEach(Y=>{if(!(Y.flags&262144?!(Y.flags&3&&!(Y.isReferenced&3)):Y.isReferenced||Y.exportSymbol)&&Y.declarations){for(let oe of Y.declarations)if(!VJs(oe))if($_n(oe))EOe(v,WJs(oe),oe,rd);else if(hg(oe)&&Km(oe.parent)){let Be=Ei(oe.parent.elements);(oe===Be||!Ei(oe.parent.elements).dotDotDotToken)&&EOe(D,oe.parent,oe,rd)}else if(nc(oe)){let Be=jQ(oe)&7,Oe=Il(oe);(Be!==4&&Be!==6||!Oe||!rSe(Oe))&&EOe(P,oe.parent,oe,rd)}else{let Be=Y.valueDeclaration&&z_n(Y.valueDeclaration),Oe=Y.valueDeclaration&&Il(Y.valueDeclaration);Be&&Oe?!Ve(Be,Be.parent)&&!SF(Be)&&!rSe(Oe)&&(hg(oe)&&p2(oe.parent)?EOe(D,oe.parent,oe,rd):m(Be,1,mo(Oe,Z._0_is_declared_but_its_value_is_never_read,nf(Y)))):j_n(oe,nf(Y),m)}}}),v.forEach(([Y,oe])=>{let Be=Y.parent;if((Y.name?1:0)+(Y.namedBindings?Y.namedBindings.kind===275?1:Y.namedBindings.elements.length:0)===oe.length)m(Be,0,oe.length===1?mo(Be,Z._0_is_declared_but_its_value_is_never_read,Vo(ma(oe).name)):mo(Be,Z.All_imports_in_import_declaration_are_unused));else for(let He of oe)j_n(He,Vo(He.name),m)}),D.forEach(([Y,oe])=>{let Be=z_n(Y.parent)?1:0;if(Y.elements.length===oe.length)oe.length===1&&Y.parent.kind===261&&Y.parent.parent.kind===262?EOe(P,Y.parent.parent,Y.parent,rd):m(Y,Be,oe.length===1?mo(Y,Z._0_is_declared_but_its_value_is_never_read,SOe(ma(oe).name)):mo(Y,Z.All_destructured_elements_are_unused));else for(let Oe of oe)m(Oe,Be,mo(Oe,Z._0_is_declared_but_its_value_is_never_read,SOe(Oe.name)))}),P.forEach(([Y,oe])=>{if(Y.declarations.length===oe.length)m(Y,0,oe.length===1?mo(ma(oe).name,Z._0_is_declared_but_its_value_is_never_read,SOe(ma(oe).name)):mo(Y.parent.kind===244?Y.parent:Y,Z.All_variables_are_unused));else for(let Be of oe)m(Be,0,mo(Be,Z._0_is_declared_but_its_value_is_never_read,SOe(Be.name)))})}function PJs(){var u;for(let m of KF)if(!((u=Uo(m))!=null&&u.isReferenced)){let v=ai(m);pe.assert(HL(v),"Only parameter declaration should be checked here");let D=mo(m.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Wd(m.name),Wd(m.propertyName));v.type||lg(D,qh(ms(v),v.end,0,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Wd(m.propertyName))),PA.add(D)}}function SOe(u){switch(u.kind){case 80:return Vo(u);case 208:case 207:return SOe(Ma(ma(u.elements),hg).name);default:return pe.assertNever(u)}}function $_n(u){return u.kind===274||u.kind===277||u.kind===275}function WJs(u){return u.kind===274?u:u.kind===275?u.parent:u.parent.parent}function yat(u){if(u.kind===242&&fZ(u),CJ(u)){let m=Yc;F(u.statements,rA),Yc=m}else F(u.statements,rA);u.locals&&_W(u)}function OJs(u){Ze>=2||!Gre(u)||u.flags&33554432||sf(u.body)||F(u.parameters,m=>{m.name&&!Nu(m.name)&&m.name.escapedText===st.escapedName&&l9("noEmit",m,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function nSe(u,m,v){if(m?.escapedText!==v||u.kind===173||u.kind===172||u.kind===175||u.kind===174||u.kind===178||u.kind===179||u.kind===304||u.flags&33554432||(Vw(u)||km(u)||uy(u))&&nN(u))return!1;let D=Rw(u);return!(Si(D)&&sf(D.parent.body))}function MJs(u){ji(u,m=>Pq(m)&4?(u.kind!==80?Sr(Il(u),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):Sr(u,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function HJs(u){ji(u,m=>Pq(m)&8?(u.kind!==80?Sr(Il(u),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):Sr(u,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function YJs(u,m){if(s.getEmitModuleFormatOfFile(ms(u))>=5||!m||!nSe(u,m,"require")&&!nSe(u,m,"exports")||xh(u)&&PF(u)!==1)return;let v=Tn(u);v.kind===308&&vl(v)&&l9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Wd(m),Wd(m))}function QJs(u,m){if(!m||Ze>=4||!nSe(u,m,"Promise")||xh(u)&&PF(u)!==1)return;let v=Tn(u);v.kind===308&&vl(v)&&v.flags&4096&&l9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Wd(m),Wd(m))}function XJs(u,m){Ze<=8&&(nSe(u,m,"WeakMap")||nSe(u,m,"WeakSet"))&&JF.push(u)}function JJs(u){let m=tS(u);Pq(m)&1048576&&(pe.assert(rh(u)&&Ir(u.name)&&typeof u.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),l9("noEmit",u,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,u.name.escapedText))}function UJs(u,m){m&&Ze>=2&&Ze<=8&&nSe(u,m,"Reflect")&&UF.push(u)}function KJs(u){let m=!1;if(vd(u)){for(let v of u.members)if(Pq(v)&2097152){m=!0;break}}else if(UA(u))Pq(u)&2097152&&(m=!0);else{let v=tS(u);v&&Pq(v)&2097152&&(m=!0)}m&&(pe.assert(rh(u)&&Ir(u.name),"The target of a Reflect collision check should be an identifier"),l9("noEmit",u,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Wd(u.name),"Reflect"))}function rfe(u,m){m&&(YJs(u,m),QJs(u,m),XJs(u,m),UJs(u,m),xa(u)?(nfe(m,Z.Class_name_cannot_be_0),u.flags&33554432||vUs(m)):V3(u)&&nfe(m,Z.Enum_name_cannot_be_0))}function jJs(u){if(jQ(u)&7||HL(u))return;let m=Uo(u);if(m.flags&1){if(!Ir(u.name))return pe.fail();let v=An(u,u.name.escapedText,3,void 0,!1);if(v&&v!==m&&v.flags&2&&TKt(v)&7){let D=ML(v.valueDeclaration,262),P=D.parent.kind===244&&D.parent.parent?D.parent.parent:void 0;if(!(P&&(P.kind===242&&bu(P.parent)||P.kind===269||P.kind===268||P.kind===308))){let oe=kl(v);Sr(u,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,oe,oe)}}}}function iSe(u){return u===En?hr:u===OC?d_:u}function vOe(u){var m;if(bOe(u),hg(u)||rA(u.type),!u.name)return;if(u.name.kind===168&&(zw(u.name),l1(u)&&u.initializer&&RI(u.initializer)),hg(u)){if(u.propertyName&&Ir(u.name)&&HL(u)&&sf(A1(u).body)){KF.push(u);return}Km(u.parent)&&u.dotDotDotToken&&Ze1&&jt(v.declarations,Y=>Y!==u&&I7(Y)&&!t0n(Y,u))&&Sr(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Wd(u.name))}else{let P=iSe(bq(u));!uo(D)&&!uo(P)&&!rG(D,P)&&!(v.flags&67108864)&&e0n(v.valueDeclaration,D,u,P),l1(u)&&u.initializer&&QQ(RI(u.initializer),P,u,u.initializer,void 0),v.valueDeclaration&&!t0n(u,v.valueDeclaration)&&Sr(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Wd(u.name))}u.kind!==173&&u.kind!==172&&($2e(u),(u.kind===261||u.kind===209)&&jJs(u),rfe(u,u.name))}function e0n(u,m,v,D){let P=Il(v),Y=v.kind===173||v.kind===172?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,oe=Wd(P),Be=Sr(P,Y,oe,no(m),no(D));u&&lg(Be,mo(u,Z._0_was_also_declared_here,oe))}function t0n(u,m){if(u.kind===170&&m.kind===261||u.kind===261&&m.kind===170)return!0;if(VY(u)!==VY(m))return!1;let v=1358;return MY(u,v)===MY(m,v)}function zJs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkVariableDeclaration",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath}),k8s(u),vOe(u),(v=ki)==null||v.pop()}function qJs(u){return R8s(u),vOe(u)}function bat(u){let m=dm(u)&7;(m===4||m===6)&&Ze=2,Be=!oe&&Te.downlevelIteration,Oe=Te.noUncheckedIndexedAccess&&!!(u&128);if(oe||Be||Y){let vr=Sat(m,u,oe?D:void 0);if(P&&vr){let dn=u&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:u&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:u&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:u&16?Z.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;dn&&p0(v,vr.nextType,D,dn)}if(vr||oe)return Oe?L2e(vr&&vr.yieldType):vr&&vr.yieldType}let He=m,qe=!1;if(u&4){if(He.flags&1048576){let vr=m.types,dn=Me(vr,vn=>!(vn.flags&402653316));dn!==vr&&(He=Ha(dn,2))}else He.flags&402653316&&(He=Wi);if(qe=He!==m,qe&&He.flags&131072)return Oe?L2e($r):$r}if(!T9(He)){if(D){let vr=!!(u&4)&&!qe,[dn,vn]=kt(vr,Be);u9(D,vn&&!!efe(He),dn,no(He))}return qe?Oe?L2e($r):$r:void 0}let Vt=D5(He,ri);if(qe&&Vt)return Vt.flags&402653316&&!Te.noUncheckedIndexedAccess?$r:Ha(Oe?[Vt,$r,Bt]:[Vt,$r],2);return u&128?L2e(Vt):Vt;function kt(vr,dn){var vn;return dn?vr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:v8t(u,0,m,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:lUs((vn=m.symbol)==null?void 0:vn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:vr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function lUs(u){switch(u){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function v8t(u,m,v,D){if(Xo(v))return;let P=Sat(v,u,D);return P&&P[vtn(m)]}function yW(u=Wi,m=Wi,v=cn){if(u.flags&67359327&&m.flags&180227&&v.flags&180227){let D=UB([u,m,v]),P=xd.get(D);return P||(P={yieldType:u,returnType:m,nextType:v},xd.set(D,P)),P}return{yieldType:u,returnType:m,nextType:v}}function r0n(u){let m,v,D;for(let P of u)if(!(P===void 0||P===Lg)){if(P===yf)return yf;m=Ft(m,P.yieldType),v=Ft(v,P.returnType),D=Ft(D,P.nextType)}return m||v||D?yW(m&&Ha(m),v&&Ha(v),D&&Kg(D)):Lg}function Eat(u,m){return u[m]}function iG(u,m,v){return u[m]=v}function Sat(u,m,v){var D,P;if(u===Vn)return rm;if(Xo(u))return yf;if(!(u.flags&1048576)){let He=v?{errors:void 0,skipLogging:!0}:void 0,qe=n0n(u,m,v,He);if(qe===Lg){if(v){let Vt=w8t(v,u,!!(m&2));He?.errors&&lg(Vt,...He.errors)}return}else if((D=He?.errors)!=null&&D.length)for(let Vt of He.errors)PA.add(Vt);return qe}let Y=m&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",oe=Eat(u,Y);if(oe)return oe===Lg?void 0:oe;let Be;for(let He of u.types){let qe=v?{errors:void 0}:void 0,Vt=n0n(He,m,v,qe);if(Vt===Lg){if(v){let kt=w8t(v,u,!!(m&2));qe?.errors&&lg(kt,...qe.errors)}iG(u,Y,Lg);return}else if((P=qe?.errors)!=null&&P.length)for(let kt of qe.errors)PA.add(kt);Be=Ft(Be,Vt)}let Oe=Be?r0n(Be):Lg;return iG(u,Y,Oe),Oe===Lg?void 0:Oe}function B8t(u,m){if(u===Lg)return Lg;if(u===yf)return yf;let{yieldType:v,returnType:D,nextType:P}=u;return m&&zJt(!0),yW(Zq(v,m)||hr,Zq(D,m)||hr,P)}function n0n(u,m,v,D){if(Xo(u))return yf;let P=!1;if(m&2){let Y=i0n(u,_h)||s0n(u,_h);if(Y)if(Y===Lg&&v)P=!0;else return m&8?B8t(Y,v):Y}if(m&1){let Y=i0n(u,Gp)||s0n(u,Gp);if(Y)if(Y===Lg&&v)P=!0;else if(m&2){if(Y!==Lg)return Y=B8t(Y,v),P?Y:iG(u,"iterationTypesOfAsyncIterable",Y)}else return Y}if(m&2){let Y=a0n(u,_h,v,D,P);if(Y!==Lg)return Y}if(m&1){let Y=a0n(u,Gp,v,D,P);if(Y!==Lg)return m&2?(Y=B8t(Y,v),P?Y:iG(u,"iterationTypesOfAsyncIterable",Y)):Y}return Lg}function i0n(u,m){return Eat(u,m.iterableCacheKey)}function s0n(u,m){if(w1(u,m.getGlobalIterableType(!1))||w1(u,m.getGlobalIteratorObjectType(!1))||w1(u,m.getGlobalIterableIteratorType(!1))||w1(u,m.getGlobalGeneratorType(!1))){let[v,D,P]=lf(u);return iG(u,m.iterableCacheKey,yW(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,P))}if(Mst(u,m.getGlobalBuiltinIteratorTypes())){let[v]=lf(u),D=jJt(),P=cn;return iG(u,m.iterableCacheKey,yW(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,P))}}function o0n(u){let m=vIn(!1),v=m&&Pi(Io(m),Ap(u));return v&&g2(v)?A2(v):`__@${u}`}function a0n(u,m,v,D,P){let Y=Gg(u,o0n(m.iteratorSymbolName)),oe=Y&&!(Y.flags&16777216)?Io(Y):void 0;if(Xo(oe))return P?yf:iG(u,m.iterableCacheKey,yf);let Be=oe?tg(oe,0):void 0,Oe=Me(Be,Vt=>_R(Vt)===0);if(!jt(Oe))return v&&jt(Be)&&p0(u,m.getGlobalIterableType(!0),v,void 0,void 0,D),P?Lg:iG(u,m.iterableCacheKey,Lg);let He=Kg(At(Oe,ud)),qe=c0n(He,m,v,D,P)??Lg;return P?qe:iG(u,m.iterableCacheKey,qe)}function w8t(u,m,v){let D=v?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,P=!!efe(m)||!v&&iEe(u.parent)&&u.parent.expression===u&&SWe(!1)!==oi&&dg(m,Wpe(SWe(!1),[hr,hr,hr]));return u9(u,P,D,no(m))}function uUs(u,m,v,D){return c0n(u,m,v,D,!1)}function c0n(u,m,v,D,P){if(Xo(u))return yf;let Y=gUs(u,m)||AUs(u,m);return Y===Lg&&v&&(Y=void 0,P=!0),Y??(Y=IUs(u,m,v,D,P)),Y===Lg?void 0:Y}function gUs(u,m){return Eat(u,m.iteratorCacheKey)}function AUs(u,m){if(w1(u,m.getGlobalIterableIteratorType(!1))||w1(u,m.getGlobalIteratorType(!1))||w1(u,m.getGlobalIteratorObjectType(!1))||w1(u,m.getGlobalGeneratorType(!1))){let[v,D,P]=lf(u);return iG(u,m.iteratorCacheKey,yW(v,D,P))}if(Mst(u,m.getGlobalBuiltinIteratorTypes())){let[v]=lf(u),D=jJt(),P=cn;return iG(u,m.iteratorCacheKey,yW(v,D,P))}}function l0n(u,m){let v=Pi(u,"done")||Bs;return dg(m===0?Bs:tn,v)}function dUs(u){return l0n(u,0)}function pUs(u){return l0n(u,1)}function fUs(u){if(Xo(u))return yf;let m=Eat(u,"iterationTypesOfIteratorResult");if(m)return m;if(w1(u,Z3s(!1))){let oe=lf(u)[0];return iG(u,"iterationTypesOfIteratorResult",yW(oe,void 0,void 0))}if(w1(u,L3s(!1))){let oe=lf(u)[0];return iG(u,"iterationTypesOfIteratorResult",yW(void 0,oe,void 0))}let v=nm(u,dUs),D=v!==Wi?Pi(v,"value"):void 0,P=nm(u,pUs),Y=P!==Wi?Pi(P,"value"):void 0;return!D&&!Y?iG(u,"iterationTypesOfIteratorResult",Lg):iG(u,"iterationTypesOfIteratorResult",yW(D,Y||es,void 0))}function T8t(u,m,v,D,P){var Y,oe,Be,Oe;let He=Gg(u,v);if(!He&&v!=="next")return;let qe=He&&!(v==="next"&&He.flags&16777216)?v==="next"?Io(He):Dv(Io(He),2097152):void 0;if(Xo(qe))return yf;let Vt=qe?tg(qe,0):E;if(Vt.length===0){if(D){let Ji=v==="next"?m.mustHaveANextMethodDiagnostic:m.mustBeAMethodDiagnostic;P?(P.errors??(P.errors=[]),P.errors.push(mo(D,Ji,v))):Sr(D,Ji,v)}return v==="next"?Lg:void 0}if(qe?.symbol&&Vt.length===1){let Ji=m.getGlobalGeneratorType(!1),Mi=m.getGlobalIteratorType(!1),To=((oe=(Y=Ji.symbol)==null?void 0:Y.members)==null?void 0:oe.get(v))===qe.symbol,Ka=!To&&((Oe=(Be=Mi.symbol)==null?void 0:Be.members)==null?void 0:Oe.get(v))===qe.symbol;if(To||Ka){let yl=To?Ji:Mi,{mapper:ka}=qe;return yW(w9(yl.typeParameters[0],ka),w9(yl.typeParameters[1],ka),v==="next"?w9(yl.typeParameters[2],ka):void 0)}}let kt,vr;for(let Ji of Vt)v!=="throw"&&jt(Ji.parameters)&&(kt=Ft(kt,CR(Ji,0))),vr=Ft(vr,ud(Ji));let dn,vn;if(v!=="throw"){let Ji=kt?Ha(kt):cn;if(v==="next")vn=Ji;else if(v==="return"){let Mi=m.resolveIterationType(Ji,D)||hr;dn=Ft(dn,Mi)}}let ii,Yi=vr?Kg(vr):Wi,js=m.resolveIterationType(Yi,D)||hr,Co=fUs(js);return Co===Lg?(D&&(P?(P.errors??(P.errors=[]),P.errors.push(mo(D,m.mustHaveAValueDiagnostic,v))):Sr(D,m.mustHaveAValueDiagnostic,v)),ii=hr,dn=Ft(dn,hr)):(ii=Co.yieldType,dn=Ft(dn,Co.returnType)),yW(ii,Ha(dn),vn)}function IUs(u,m,v,D,P){let Y=r0n([T8t(u,m,"next",v,D),T8t(u,m,"return",v,D),T8t(u,m,"throw",v,D)]);return P?Y:iG(u,m.iteratorCacheKey,Y)}function D9(u,m,v){if(Xo(m))return;let D=R8t(m,v);return D&&D[vtn(u)]}function R8t(u,m){if(Xo(u))return yf;let v=m?2:1,D=m?_h:Gp;return Sat(u,v,void 0)||uUs(u,D,void 0,void 0)}function hUs(u){fZ(u)||T8s(u)}function wOe(u,m){let v=!!(m&1),D=!!(m&2);if(v){let P=D9(1,u,D);return P?D?pZ(tfe(P)):P:nn}return D?pZ(u)||nn:u}function u0n(u,m){let v=wOe(m,SI(u));return!!(v&&(ah(v,16384)||v.flags&32769))}function mUs(u){if(fZ(u))return;let m=qre(u);if(m&&fl(m)){XC(u,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!m){XC(u,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let v=yS(m),D=ud(v);if(ot||u.expression||D.flags&131072){let P=u.expression?RI(u.expression):Bt;if(m.kind===179)u.expression&&Sr(u,Z.Setters_cannot_return_a_value);else if(m.kind===177){let Y=u.expression?RI(u.expression):Bt;u.expression&&!QQ(Y,D,u,u.expression)&&Sr(u,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class)}else if(Nse(m)){let Y=wOe(D,SI(m))??D;vat(m,Y,u,u.expression,P)}}else m.kind!==177&&Te.noImplicitReturns&&!u0n(m,D)&&Sr(u,Z.Not_all_code_paths_return_a_value)}function vat(u,m,v,D,P,Y=!1){let oe=wo(v),Be=SI(u);if(D){let kt=QA(D,oe);if(Lw(kt)){vat(u,m,v,kt.whenTrue,Ol(kt.whenTrue),!0),vat(u,m,v,kt.whenFalse,Ol(kt.whenFalse),!0);return}}let Oe=v.kind===254,He=Be&2?yOe(P,!1,v,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):P,qe=D&&oat(D);QQ(He,m,Oe&&!Y?v:qe,qe)}function CUs(u){fZ(u)||u.flags&65536&&XC(u,Z.with_statements_are_not_allowed_in_an_async_function_block),Ol(u.expression);let m=ms(u);if(!bW(m)){let v=rs(m,u.pos).start,D=u.statement.pos;M5(m,v,D-v,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function _Us(u){fZ(u);let m,v=!1,D=Ol(u.expression);F(u.caseBlock.clauses,P=>{P.kind===298&&!v&&(m===void 0?m=P:(os(P,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),v=!0)),P.kind===297&&g(Y(P)),F(P.statements,rA),Te.noFallthroughCasesInSwitch&&P.fallthroughFlowNode&&KWe(P.fallthroughFlowNode)&&Sr(P,Z.Fallthrough_case_in_switch);function Y(oe){return()=>{let Be=Ol(oe.expression);l8t(D,Be)||whn(Be,D,oe.expression,void 0)}}}),u.caseBlock.locals&&_W(u.caseBlock)}function yUs(u){fZ(u)||ji(u.parent,m=>bu(m)?"quit":m.kind===257&&m.label.escapedText===u.label.escapedText?(os(u.label,Z.Duplicate_label_0,xp(u.label)),!0):!1),rA(u.statement)}function bUs(u){fZ(u)||Ir(u.expression)&&!u.expression.escapedText&&M8s(u,Z.Line_break_not_permitted_here),u.expression&&Ol(u.expression)}function EUs(u){fZ(u),yat(u.tryBlock);let m=u.catchClause;if(m){if(m.variableDeclaration){let v=m.variableDeclaration;vOe(v);let D=kh(v);if(D){let P=nl(D);P&&!(P.flags&3)&&XC(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(v.initializer)XC(v.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let P=m.block.locals;P&&SB(m.locals,Y=>{let oe=P.get(Y);oe?.valueDeclaration&&oe.flags&2&&os(oe.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,Bc(Y))})}}yat(m.block)}u.finallyBlock&&yat(u.finallyBlock)}function Bat(u,m,v){let D=A0(u);if(D.length===0)return;for(let Y of S9(u))v&&Y.flags&4194304||g0n(u,Y,Bq(Y,8576,!0),AR(Y));let P=m.valueDeclaration;if(P&&xa(P)){for(let Y of P.members)if((!v&&!cg(Y)||v&&cg(Y))&&!Tse(Y)){let oe=Uo(Y);g0n(u,oe,P_(Y.name.expression),AR(oe))}}if(D.length>1)for(let Y of D)SUs(u,Y)}function g0n(u,m,v,D){let P=m.valueDeclaration,Y=Il(P);if(Y&&p(Y))return;let oe=LJt(u,v),Be=la(u)&2?Cp(u.symbol,265):void 0,Oe=P&&P.kind===227||Y&&Y.kind===168?P:void 0,He=$m(m)===u.symbol?P:void 0;for(let qe of oe){let Vt=qe.declaration&&$m(Uo(qe.declaration))===u.symbol?qe.declaration:void 0,kt=He||Vt||(Be&&!jt(Kw(u),vr=>!!LQ(vr,m.escapedName)&&!!D5(vr,qe.keyType))?Be:void 0);if(kt&&!dg(D,qe.type)){let vr=vQ(kt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,kl(m),no(D),no(qe.keyType),no(qe.type));Oe&&kt!==Oe&&lg(vr,mo(Oe,Z._0_is_declared_here,kl(m))),PA.add(vr)}}}function SUs(u,m){let v=m.declaration,D=LJt(u,m.keyType),P=la(u)&2?Cp(u.symbol,265):void 0,Y=v&&$m(Uo(v))===u.symbol?v:void 0;for(let oe of D){if(oe===m)continue;let Be=oe.declaration&&$m(Uo(oe.declaration))===u.symbol?oe.declaration:void 0,Oe=Y||Be||(P&&!jt(Kw(u),He=>!!$x(He,m.keyType)&&!!D5(He,oe.keyType))?P:void 0);Oe&&!dg(m.type,oe.type)&&Sr(Oe,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,no(m.keyType),no(m.type),no(oe.keyType),no(oe.type))}}function nfe(u,m){switch(u.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":Sr(u,m,u.escapedText)}}function vUs(u){Ze>=1&&u.escapedText==="Object"&&s.getEmitModuleFormatOfFile(ms(u))<5&&Sr(u,Z.Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0,jS[We])}function BUs(u){let m=Me(Sx(u),cS);if(!B(m))return;let v=wo(u),D=new Set,P=new Set;if(F(u.parameters,({name:oe},Be)=>{Ir(oe)&&D.add(oe.escapedText),Nu(oe)&&P.add(Be)}),PJt(u)){let oe=m.length-1,Be=m[oe];v&&Be&&Ir(Be.name)&&Be.typeExpression&&Be.typeExpression.type&&!D.has(Be.name.escapedText)&&!P.has(oe)&&!Nv(nl(Be.typeExpression.type))&&Sr(Be.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Vo(Be.name))}else F(m,({name:oe,isNameFirst:Be},Oe)=>{P.has(Oe)||Ir(oe)&&D.has(oe.escapedText)||(zi(oe)?v&&Sr(oe,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,oy(oe),oy(oe.left)):Be||Hw(v,oe,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Vo(oe)))})}function TOe(u){let m=!1;if(u)for(let D=0;D{D.default?(m=!0,wUs(D.default,u,P)):m&&Sr(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let Y=0;YD)return!1;for(let Oe=0;Oezh(v)&&pC(v))&&os(m,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!u.name&&!Ga(u,2048)&&XC(u,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),f0n(u),F(u.members,rA),_W(u)}function f0n(u){d8s(u),bOe(u),rfe(u,u.name),TOe(ZD(u)),$2e(u);let m=Uo(u),v=Fp(m),D=T1(v),P=Io(m);A0n(m),mat(m),H4s(u),!!(u.flags&33554432)||Y4s(u);let oe=BB(u);if(oe){F(oe.typeArguments,rA),Ze{let Vt=qe[0],kt=nZ(v),vr=fy(kt);if(xUs(vr,oe),rA(oe.expression),jt(oe.typeArguments)){F(oe.typeArguments,rA);for(let vn of Uw(vr,oe.typeArguments,oe))if(!P_n(oe,vn.typeParameters))break}let dn=T1(Vt,v.thisType);if(p0(D,dn,void 0)?p0(P,yhn(vr),u.name||u,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):m0n(u,D,dn,Z.Class_0_incorrectly_extends_base_class_1),kt.flags&8650752&&(I_(P)?tg(kt,1).some(ii=>ii.flags&4)&&!Ga(u,64)&&Sr(u.name||u,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):Sr(u.name||u,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(vr.symbol&&vr.symbol.flags&32)&&!(kt.flags&8650752)){let vn=zx(vr,oe.typeArguments,oe);F(vn,ii=>!YN(ii.declaration)&&!rG(ud(ii),Vt))&&Sr(oe.expression,Z.Base_constructors_must_all_have_the_same_return_type)}ZUs(v,Vt)})}kUs(u,v,D,P);let Be=jJ(u);if(Be)for(let He of Be)(!Od(He.expression)||GC(He.expression))&&Sr(He.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),I8t(He),g(Oe(He));g(()=>{Bat(v,m),Bat(P,m,!0),p8t(u),PUs(u)});function Oe(He){return()=>{let qe=JB(nl(He));if(!uo(qe))if(dWe(qe)){let Vt=qe.symbol&&qe.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,kt=T1(qe,v.thisType);p0(D,kt,void 0)||m0n(u,D,kt,Vt)}else Sr(He,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function kUs(u,m,v,D){let Y=BB(u)&&Kw(m),oe=Y?.length?T1(ma(Y),m.thisType):void 0,Be=nZ(m);for(let Oe of u.members)jye(Oe)||(Tc(Oe)&&F(Oe.parameters,He=>{Ve(He,Oe)&&I0n(u,D,Be,oe,m,v,He,!0)}),I0n(u,D,Be,oe,m,v,Oe,!1))}function I0n(u,m,v,D,P,Y,oe,Be,Oe=!0){let He=oe.name&&xv(oe.name)||xv(oe);return He?h0n(u,m,v,D,P,Y,Tne(oe),wP(oe),cg(oe),Be,He,Oe?oe:void 0):0}function h0n(u,m,v,D,P,Y,oe,Be,Oe,He,qe,Vt){let kt=wo(u),vr=!!(u.flags&33554432);if(oe&&qe?.valueDeclaration&&PI(qe.valueDeclaration)&&qe.valueDeclaration.name&&xfn(qe.valueDeclaration.name))return Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:Z.This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic),2;if(D&&(oe||Te.noImplicitOverride)){let dn=Oe?m:Y,vn=Oe?v:D,ii=Gg(dn,qe.escapedName),Yi=Gg(vn,qe.escapedName),js=no(D);if(ii&&!Yi&&oe){if(Vt){let Co=BCn(nf(qe),vn);Co?Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,js,kl(Co)):Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,js)}return 2}else if(ii&&Yi?.declarations&&Te.noImplicitOverride&&!vr){let Co=jt(Yi.declarations,wP);if(oe)return 0;if(Co){if(Be&&Co)return Vt&&Sr(Vt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,js),1}else{if(Vt){let Ji=He?kt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:kt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;Sr(Vt,Ji,js)}return 1}}}else if(oe){if(Vt){let dn=no(P);Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,dn)}return 2}return 0}function m0n(u,m,v,D){let P=!1;for(let Y of u.members){if(cg(Y))continue;let oe=Y.name&&xv(Y.name)||xv(Y);if(oe){let Be=Gg(m,oe.escapedName),Oe=Gg(v,oe.escapedName);if(Be&&Oe){let He=()=>wu(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,kl(oe),no(m),no(v));p0(Io(Be),Io(Oe),Y.name||Y,void 0,He)||(P=!0)}}}P||p0(m,v,u.name||u,D)}function xUs(u,m){let v=tg(u,1);if(v.length){let D=v[0].declaration;if(D&&Gb(D,2)){let P=AN(u.symbol);F8t(m,P)||Sr(m,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,f9(u.symbol))}}}function GUs(u,m,v){if(!m.name)return 0;let D=Uo(u),P=Fp(D),Y=T1(P),oe=Io(D),Oe=BB(u)&&Kw(P),He=Oe?.length?T1(ma(Oe),P.thisType):void 0,qe=nZ(P),Vt=m.parent?Tne(m):Ga(m,16);return h0n(u,oe,qe,He,P,Y,Vt,wP(m),cg(m),!1,v)}function Xse(u){return iI(u)&1?u.links.target:u}function FUs(u){return Me(u.declarations,m=>m.kind===264||m.kind===265)}function ZUs(u,m){var v,D,P,Y,oe;let Be=Gd(m),Oe=new Map;e:for(let He of Be){let qe=Xse(He);if(qe.flags&4194304)continue;let Vt=LQ(u,qe.escapedName);if(!Vt)continue;let kt=Xse(Vt),vr=u2(qe);if(pe.assert(!!kt,"derived should point to something, even if it is the base class' declaration."),kt===qe){let dn=AN(u.symbol);if(vr&64&&(!dn||!Ga(dn,64))){for(let Co of Kw(u)){if(Co===m)continue;let Ji=LQ(Co,qe.escapedName),Mi=Ji&&Xse(Ji);if(Mi&&Mi!==qe)continue e}let vn=no(m),ii=no(u),Yi=kl(He),js=Ft((v=Oe.get(dn))==null?void 0:v.missedProperties,Yi);Oe.set(dn,{baseTypeName:vn,typeName:ii,missedProperties:js})}}else{let dn=u2(kt);if(vr&2||dn&2)continue;let vn,ii=qe.flags&98308,Yi=kt.flags&98308;if(ii&&Yi){if((iI(qe)&6?(D=qe.declarations)!=null&&D.some(Ji=>C0n(Ji,vr)):(P=qe.declarations)!=null&&P.every(Ji=>C0n(Ji,vr)))||iI(qe)&262144||kt.valueDeclaration&&fo(kt.valueDeclaration))continue;let js=ii!==4&&Yi===4;if(js||ii===4&&Yi!==4){let Ji=js?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,Ji,kl(qe),no(m),no(u))}else if($e){let Ji=(Y=kt.declarations)==null?void 0:Y.find(Mi=>Mi.kind===173&&!Mi.initializer);if(Ji&&!(kt.flags&33554432)&&!(vr&64)&&!(dn&64)&&!((oe=kt.declarations)!=null&&oe.some(Mi=>!!(Mi.flags&33554432)))){let Mi=zY(AN(u.symbol)),To=Ji.name;if(Ji.exclamationToken||!Mi||!Ir(To)||!ot||!y0n(To,u,Mi)){let Ka=Z.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,Ka,kl(qe),no(m))}}}continue}else if(RKt(qe)){if(RKt(kt)||kt.flags&4)continue;pe.assert(!!(kt.flags&98304)),vn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else qe.flags&98304?vn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:vn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,vn,no(m),kl(qe),no(u))}}for(let[He,qe]of Oe)if(B(qe.missedProperties)===1)vd(He)?Sr(He,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,ma(qe.missedProperties),qe.baseTypeName):Sr(He,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,qe.typeName,ma(qe.missedProperties),qe.baseTypeName);else if(B(qe.missedProperties)>5){let Vt=At(qe.missedProperties.slice(0,4),vr=>`'${vr}'`).join(", "),kt=B(qe.missedProperties)-4;vd(He)?Sr(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,qe.baseTypeName,Vt,kt):Sr(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,qe.typeName,qe.baseTypeName,Vt,kt)}else{let Vt=At(qe.missedProperties,kt=>`'${kt}'`).join(", ");vd(He)?Sr(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,qe.baseTypeName,Vt):Sr(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,qe.typeName,qe.baseTypeName,Vt)}}function C0n(u,m){return m&64&&(!pi(u)||!u.initializer)||g_(u.parent)}function LUs(u,m,v){if(!B(m))return v;let D=new Map;F(v,P=>{D.set(P.escapedName,P)});for(let P of m){let Y=Gd(T1(P,u.thisType));for(let oe of Y){let Be=D.get(oe.escapedName);Be&&oe.parent===Be.parent&&D.delete(oe.escapedName)}}return Do(D.values())}function VUs(u,m){let v=Kw(u);if(v.length<2)return!0;let D=new Map;F(bJt(u).declaredProperties,Y=>{D.set(Y.escapedName,{prop:Y,containingType:u})});let P=!0;for(let Y of v){let oe=Gd(T1(Y,u.thisType));for(let Be of oe){let Oe=D.get(Be.escapedName);if(!Oe)D.set(Be.escapedName,{prop:Be,containingType:Y});else if(Oe.containingType!==u&&!DMs(Oe.prop,Be)){P=!1;let qe=no(Oe.containingType),Vt=no(Y),kt=wu(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,kl(Be),qe,Vt);kt=wu(kt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,no(u),qe,Vt),PA.add(Bw(ms(m),m,kt))}}}return P}function PUs(u){if(!ot||!ht||u.flags&33554432)return;let m=zY(u);for(let v of u.members)if(!(o_(v)&128)&&!cg(v)&&_0n(v)){let D=v.name;if(Ir(D)||p(D)||Un(D)){let P=Io(Uo(v));P.flags&3||Zse(P)||(!m||!y0n(D,P,m))&&Sr(v.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Wd(D))}}}function _0n(u){return u.kind===173&&!wP(u)&&!u.exclamationToken&&!u.initializer}function WUs(u,m,v,D,P){for(let Y of v)if(Y.pos>=D&&Y.pos<=P){let oe=me.createPropertyAccessExpression(me.createThis(),u);XA(oe.expression,oe),XA(oe,Y),oe.flowNode=Y.returnFlowNode;let Be=dZ(oe,m,mW(m));if(!Zse(Be))return!0}return!1}function y0n(u,m,v){let D=Un(u)?me.createElementAccessExpression(me.createThis(),u.expression):me.createPropertyAccessExpression(me.createThis(),u);XA(D.expression,D),XA(D,v),D.flowNode=v.returnFlowNode;let P=dZ(D,m,mW(m));return!Zse(P)}function OUs(u){sG(u)||_8s(u),Wat(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"interface"),TOe(u.typeParameters),g(()=>{nfe(u.name,Z.Interface_name_cannot_be_0),$2e(u);let m=Uo(u);A0n(m);let v=Cp(m,265);if(u===v){let D=Fp(m),P=T1(D);if(VUs(D,u.name)){for(let Y of Kw(D))p0(P,T1(Y,D.thisType),u.name,Z.Interface_0_incorrectly_extends_interface_1);Bat(D,m)}}F_n(u)}),F(N7(u),m=>{(!Od(m.expression)||GC(m.expression))&&Sr(m.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),I8t(m)}),F(u.members,rA),g(()=>{p8t(u),_W(u)})}function MUs(u){if(sG(u),nfe(u.name,Z.Type_alias_name_cannot_be_0),Wat(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"type"),$2e(u),TOe(u.typeParameters),u.type.kind===141){let m=B(u.typeParameters);(m===0?u.name.escapedText==="BuiltinIteratorReturn":m===1&&Bet.has(u.name.escapedText))||Sr(u.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types)}else rA(u.type),_W(u)}function b0n(u){let m=sa(u);if(!(m.flags&1024)){m.flags|=1024;let v=0,D;for(let P of u.members){let Y=HUs(P,v,D);sa(P).enumMemberValue=Y,v=typeof Y.value=="number"?Y.value+1:void 0,D=P}}}function HUs(u,m,v){if(kY(u.name))Sr(u.name,Z.Computed_property_names_are_not_allowed_in_enums);else if(eQ(u.name))Sr(u.name,Z.An_enum_member_cannot_have_a_numeric_name);else{let D=hP(u.name);IN(D)&&!oz(D)&&Sr(u.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(u.initializer)return YUs(u);if(u.parent.flags&33554432&&!VA(u.parent))return $h(void 0);if(m===void 0)return Sr(u.name,Z.Enum_member_must_have_initializer),$h(void 0);if(sS(Te)&&v?.initializer){let D=GK(v);typeof D.value=="number"&&!D.resolvedOtherFiles||Sr(u.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return $h(m)}function YUs(u){let m=VA(u.parent),v=u.initializer,D=ur(v,u);return D.value!==void 0?m&&typeof D.value=="number"&&!isFinite(D.value)?Sr(v,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):sS(Te)&&typeof D.value=="string"&&!D.isSyntacticallyString&&Sr(v,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${Vo(u.parent.name)}.${hP(u.name)}`):m?Sr(v,Z.const_enum_member_initializers_must_be_constant_expressions):u.parent.flags&33554432?Sr(v,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):p0(Ol(v),ri,v,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function E0n(u,m){let v=TI(u,111551,!0);if(!v)return $h(void 0);if(u.kind===80){let D=u;if(oz(D.escapedText)&&v===Gse(D.escapedText,111551,void 0))return $h(+D.escapedText,!1)}if(v.flags&8)return m?S0n(u,v,m):GK(v.valueDeclaration);if(kq(v)){let D=v.valueDeclaration;if(D&&nc(D)&&!D.type&&D.initializer&&(!m||D!==m&&$F(D,m))){let P=ur(D.initializer,D);return m&&ms(m)!==ms(D)?$h(P.value,!1,!0,!0):$h(P.value,P.isSyntacticallyString,P.resolvedOtherFiles,!0)}}return $h(void 0)}function QUs(u,m){let v=u.expression;if(Od(v)&&mA(u.argumentExpression)){let D=TI(v,111551,!0);if(D&&D.flags&384){let P=Ap(u.argumentExpression.text),Y=D.exports.get(P);if(Y)return pe.assert(ms(Y.valueDeclaration)===ms(D.valueDeclaration)),m?S0n(u,Y,m):GK(Y.valueDeclaration)}}return $h(void 0)}function S0n(u,m,v){let D=m.valueDeclaration;if(!D||D===v)return Sr(u,Z.Property_0_is_used_before_being_assigned,kl(m)),$h(void 0);if(!$F(D,v))return Sr(u,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),$h(0);let P=GK(D);return v.parent!==D.parent?$h(P.value,P.isSyntacticallyString,P.resolvedOtherFiles,!0):P}function XUs(u){g(()=>JUs(u))}function JUs(u){sG(u),rfe(u,u.name),$2e(u),u.members.forEach(rA),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),b0n(u);let m=Uo(u),v=Cp(m,u.kind);if(u===v){if(m.declarations&&m.declarations.length>1){let P=VA(u);F(m.declarations,Y=>{V3(Y)&&VA(Y)!==P&&Sr(Il(Y),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;F(m.declarations,P=>{if(P.kind!==267)return!1;let Y=P;if(!Y.members.length)return!1;let oe=Y.members[0];oe.initializer||(D?Sr(oe.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function UUs(u){p(u.name)&&Sr(u,Z.An_enum_member_cannot_be_named_with_a_private_identifier),u.initializer&&Ol(u.initializer)}function KUs(u){let m=u.declarations;if(m){for(let v of m)if((v.kind===264||v.kind===263&&u1(v.body))&&!(v.flags&33554432))return v}}function jUs(u,m){let v=tS(u),D=tS(m);return fc(v)?fc(D):fc(D)?!1:v===D}function zUs(u){u.body&&(rA(u.body),vB(u)||_W(u)),g(m);function m(){var v,D;let P=vB(u),Y=u.flags&33554432;P&&!Y&&Sr(u.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let oe=s_(u),Be=oe?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(ROe(u,Be))return;if(sG(u)||!Y&&u.name.kind===11&&os(u.name,Z.Only_ambient_modules_can_use_quoted_names),Ir(u.name)&&(rfe(u,u.name),!(u.flags&2080))){let He=ms(u),qe=Ege(u),Vt=rs(He,qe);QU.add(qh(He,Vt.start,Vt.length,Z.A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead))}$2e(u);let Oe=Uo(u);if(Oe.flags&512&&!Y&&wet(u,Fb(Te))){if(Te.erasableSyntaxOnly&&Sr(u.name,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),sS(Te)&&!ms(u).externalModuleIndicator&&Sr(u.name,Z.Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement,zt),((v=Oe.declarations)==null?void 0:v.length)>1){let He=KUs(Oe);He&&(ms(u)!==ms(He)?Sr(u.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):u.posqe.kind===95);He&&Sr(He,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(oe)if(_F(u)){if((P||Uo(u).flags&33554432)&&u.body)for(let qe of u.body.statements)N8t(qe,P)}else fc(u.parent)?P?Sr(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Xr(c2(u.name))&&Sr(u.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):P?Sr(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Sr(u.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function N8t(u,m){switch(u.kind){case 244:for(let D of u.declarationList.declarations)N8t(D,m);break;case 278:case 279:XC(u,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 272:if(d3(u))break;case 273:XC(u,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 209:case 261:let v=u.name;if(Nu(v)){for(let D of v.elements)N8t(D,m);break}case 264:case 267:case 263:case 265:case 268:case 266:if(m)return;break}}function qUs(u){switch(u.kind){case 80:return u;case 167:do u=u.left;while(u.kind!==80);return u;case 212:do{if(cN(u.expression)&&!p(u.name))return u.name;u=u.expression}while(u.kind!==80);return u}}function wat(u){let m=LY(u);if(!m||sf(m))return!1;if(!Zg(m))return Sr(m,Z.String_literal_expected),!1;let v=u.parent.kind===269&&s_(u.parent.parent);if(u.parent.kind!==308&&!v)return Sr(m,u.kind===279?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(v&&Xr(m.text)&&!wpe(u))return Sr(u,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!km(u)&&u.attributes){let D=u.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,P=!1;for(let Y of u.attributes.elements)Zg(Y.value)||(P=!0,Sr(Y.value,D));return!P}return!0}function Tat(u,m=!0){u===void 0||u.kind!==11||(m?(We===5||We===6)&&os(u,Z.String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020):os(u,Z.Identifier_expected))}function Rat(u){var m,v,D,P,Y;let oe=Uo(u),Be=YC(oe);if(Be!==it){if(oe=jA(oe.exportSymbol||oe),wo(u)&&!(Be.flags&111551)&&!nN(u)){let qe=eS(u)?u.propertyName||u.name:rh(u)?u.name:u;if(pe.assert(u.kind!==281),u.kind===282){let Vt=Sr(qe,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),kt=(v=(m=ms(u).symbol)==null?void 0:m.exports)==null?void 0:v.get(CF(u.propertyName||u.name));if(kt===Be){let vr=(D=kt.declarations)==null?void 0:D.find(l3);vr&&lg(Vt,mo(vr,Z._0_is_automatically_exported_here,Bc(kt.escapedName)))}}else{pe.assert(u.kind!==261);let Vt=ji(u,Hp(Mf,km)),kt=(Vt&&((P=ZY(Vt))==null?void 0:P.text))??"...",vr=Bc(Ir(qe)?qe.escapedText:oe.escapedName);Sr(qe,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,vr,`import("${kt}").${vr}`)}return}let Oe=Hb(Be),He=(oe.flags&1160127?111551:0)|(oe.flags&788968?788968:0)|(oe.flags&1920?1920:0);if(Oe&He){let qe=u.kind===282?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;Sr(u,qe,kl(oe))}else u.kind!==282&&Te.isolatedModules&&!ji(u,nN)&&oe.flags&1160127&&Sr(u,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,kl(oe),zt);if(sS(Te)&&!nN(u)&&!(u.flags&33554432)){let qe=uR(oe),Vt=!(Oe&111551);if(Vt||qe)switch(u.kind){case 274:case 277:case 272:{if(Te.verbatimModuleSyntax){pe.assertIsDefined(u.name,"An ImportClause with a symbol should have a name");let kt=Te.verbatimModuleSyntax&&d3(u)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:Vt?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,vr=HD(u.kind===277&&u.propertyName||u.name);hu(Sr(u,kt,vr),Vt?void 0:qe,vr)}Vt&&u.kind===272&&Gb(u,32)&&Sr(u,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,zt);break}case 282:if(Te.verbatimModuleSyntax||ms(qe)!==ms(u)){let kt=HD(u.propertyName||u.name),vr=Vt?Sr(u,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,zt):Sr(u,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,kt,zt);hu(vr,Vt?void 0:qe,kt);break}}if(Te.verbatimModuleSyntax&&u.kind!==272&&!wo(u)&&s.getEmitModuleFormatOfFile(ms(u))===1?Sr(u,XU(u)):We===200&&u.kind!==272&&u.kind!==261&&s.getEmitModuleFormatOfFile(ms(u))===1&&Sr(u,Z.ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve),Te.verbatimModuleSyntax&&!nN(u)&&!(u.flags&33554432)&&Oe&128){let kt=Be.valueDeclaration,vr=(Y=s.getRedirectFromOutput(ms(kt).resolvedPath))==null?void 0:Y.resolvedRef;kt.flags&33554432&&(!vr||!Fb(vr.commandLine.options))&&Sr(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,zt)}}if(uy(u)){let qe=D8t(oe,u);dy(qe)&&qe.declarations&&YB(u,qe.declarations,qe.escapedName)}}}function D8t(u,m){if(!(u.flags&2097152)||dy(u)||!Mb(u))return u;let v=YC(u);if(v===it)return v;for(;u.flags&2097152;){let D=jot(u);if(D){if(D===v)break;if(D.declarations&&B(D.declarations))if(dy(D)){YB(m,D.declarations,D.escapedName);break}else{if(u===v)break;u=D}}else break}return v}function Nat(u){rfe(u,u.name),Rat(u),u.kind===277&&(Tat(u.propertyName),lv(u.propertyName||u.name)&&kw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&eC(u,131072))}function k8t(u){var m;let v=u.attributes;if(v){let D=UJt(!0);D!==Xg&&p0(dJt(v),OWe(D,32768),v);let P=utt(u),Y=Gie(v,P?os:void 0),oe=u.attributes.token===118;if(P&&Y)return;if(!iLe(We))return os(v,oe?Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve);if(102<=We&&We<=199&&!oe)return XC(v,Z.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);if(u.moduleSpecifier&&eZ(u.moduleSpecifier)===1)return os(v,oe?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls);if(SN(u)||(Mf(u)?(m=u.importClause)==null?void 0:m.isTypeOnly:u.isTypeOnly))return os(v,oe?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(Y)return os(v,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function $Us(u){return Iy(RI(u.value))}function eKs(u){if(!ROe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!sG(u)&&u.modifiers&&XC(u,Z.An_import_declaration_cannot_have_modifiers),wat(u)){let m,v=u.importClause;v&&!Y8s(v)?(v.name&&Nat(v),v.namedBindings&&(v.namedBindings.kind===275?(Nat(v.namedBindings),s.getEmitModuleFormatOfFile(ms(u))<4&&kw(Te)&&eC(u,65536)):(m=F0(u,u.moduleSpecifier),m&&F(v.namedBindings.elements,Nat))),!v.isTypeOnly&&101<=We&&We<=199&&nW(u.moduleSpecifier,m)&&!tKs(u)&&Sr(u.moduleSpecifier,Z.Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0,jS[We])):_r&&!v&&F0(u,u.moduleSpecifier)}k8t(u)}}function tKs(u){return!!u.attributes&&u.attributes.elements.some(m=>{var v;return c2(m.name)==="type"&&((v=Gs(m.value,mA))==null?void 0:v.text)==="json"})}function rKs(u){if(!ROe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(sG(u),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),d3(u)||wat(u)))if(Nat(u),xq(u,6),u.moduleReference.kind!==284){let m=YC(Uo(u));if(m!==it){let v=Hb(m);if(v&111551){let D=B0(u.moduleReference);TI(D,112575).flags&1920||Sr(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Wd(D))}v&788968&&nfe(u.name,Z.Import_name_cannot_be_0)}u.isTypeOnly&&os(u,Z.An_import_alias_cannot_use_import_type)}else 5<=We&&We<=99&&!u.isTypeOnly&&!(u.flags&33554432)&&os(u,Z.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}function nKs(u){if(!ROe(u,wo(u)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!sG(u)&&FZe(u)&&XC(u,Z.An_export_declaration_cannot_have_modifiers),iKs(u),!u.moduleSpecifier||wat(u))if(u.exportClause&&!tk(u.exportClause)){F(u.exportClause.elements,sKs);let m=u.parent.kind===269&&s_(u.parent.parent),v=!m&&u.parent.kind===269&&!u.moduleSpecifier&&u.flags&33554432;u.parent.kind!==308&&!m&&!v&&Sr(u,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let m=F0(u,u.moduleSpecifier);m&&Xw(m)?Sr(u.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,kl(m)):u.exportClause&&(Rat(u.exportClause),Tat(u.exportClause.name)),s.getEmitModuleFormatOfFile(ms(u))<4&&(u.exportClause?kw(Te)&&eC(u,65536):eC(u,32768))}k8t(u)}}function iKs(u){var m;return u.isTypeOnly&&((m=u.exportClause)==null?void 0:m.kind)===280?syn(u.exportClause):!1}function ROe(u,m){let v=u.parent.kind===308||u.parent.kind===269||u.parent.kind===268;return v||XC(u,m),!v}function sKs(u){Rat(u);let m=u.parent.parent.moduleSpecifier!==void 0;if(Tat(u.propertyName,m),Tat(u.name),Ly(Te)&&vse(u.propertyName||u.name,!0),m)kw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&lv(u.propertyName||u.name)&&eC(u,131072);else{let v=u.propertyName||u.name;if(v.kind===11)return;let D=An(v,v.escapedText,2998271,void 0,!0);D&&(D===dt||D===pr||D.declarations&&fc(Tn(D.declarations[0])))?Sr(v,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,Vo(v)):xq(u,7)}}function oKs(u){let m=u.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(ROe(u,m))return;Te.erasableSyntaxOnly&&u.isExportEquals&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled);let v=u.parent.kind===308?u.parent:u.parent.parent;if(v.kind===268&&!s_(v)){u.isExportEquals?Sr(u,Z.An_export_assignment_cannot_be_used_in_a_namespace):Sr(u,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!sG(u)&&Kye(u)&&XC(u,Z.An_export_assignment_cannot_have_modifiers);let D=kh(u);D&&p0(RI(u.expression),nl(D),u.expression);let P=!u.isExportEquals&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&s.getEmitModuleFormatOfFile(ms(u))===1;if(u.expression.kind===80){let Y=u.expression,oe=fn(TI(Y,-1,!0,!0,u));if(oe){xq(u,3);let Be=uR(oe,111551);if(Hb(oe)&111551?(RI(Y),!P&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Be&&Sr(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,Vo(Y))):!P&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Sr(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,Vo(Y)),!P&&!(u.flags&33554432)&&sS(Te)&&!(oe.flags&111551)){let Oe=Hb(oe,!1,!0);oe.flags&2097152&&Oe&788968&&!(Oe&111551)&&(!Be||ms(Be)!==ms(u))?Sr(Y,u.isExportEquals?Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),zt):Be&&ms(Be)!==ms(u)&&hu(Sr(Y,u.isExportEquals?Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),zt),Be,Vo(Y))}}else RI(Y);Ly(Te)&&vse(Y,!0)}else RI(u.expression);P&&Sr(u,XU(u)),v0n(v),u.flags&33554432&&!Od(u.expression)&&os(u.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),u.isExportEquals&&(We>=5&&We!==200&&(u.flags&33554432&&s.getImpliedNodeFormatForEmit(ms(u))===99||!(u.flags&33554432)&&s.getImpliedNodeFormatForEmit(ms(u))!==1)?os(u,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):We===4&&!(u.flags&33554432)&&os(u,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function aKs(u){return Dh(u.exports,(m,v)=>v!=="export=")}function v0n(u){let m=Uo(u),v=fa(m);if(!v.exportsChecked){let D=m.exports.get("export=");if(D&&aKs(m)){let Y=Mb(D)||D.valueDeclaration;Y&&!wpe(Y)&&!wo(Y)&&Sr(Y,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let P=LN(m);P&&P.forEach(({declarations:Y,flags:oe},Be)=>{if(Be==="__export"||oe&1920)return;let Oe=ct(Y,dh(kvs,uC(g_)));if(!(oe&524288&&Oe<=2)&&Oe>1&&!Dat(Y))for(let He of Y)Etn(He)&&PA.add(mo(He,Z.Cannot_redeclare_exported_variable_0,Bc(Be)))}),v.exportsChecked=!0}}function Dat(u){return u&&u.length>1&&u.every(m=>wo(m)&&_p(m)&&(p3(m.expression)||cN(m.expression)))}function rA(u){if(u){let m=ge;ge=u,M=0,cKs(u),ge=m}}function cKs(u){if(Pq(u)&8388608)return;Ane(u)&&F(u.jsDoc,({comment:v,tags:D})=>{B0n(v),F(D,P=>{B0n(P.comment),wo(u)&&rA(P)})});let m=u.kind;if(d)switch(m){case 268:case 264:case 265:case 263:d.throwIfCancellationRequested()}switch(m>=244&&m<=260&&UJ(u)&&u.flowNode&&!KWe(u.flowNode)&&Hw(Te.allowUnreachableCode===!1,u,Z.Unreachable_code_detected),m){case 169:return k_n(u);case 170:return x_n(u);case 173:return Z_n(u);case 172:return Q4s(u);case 186:case 185:case 180:case 181:case 182:return z2e(u);case 175:case 174:return X4s(u);case 176:return J4s(u);case 177:return U4s(u);case 178:case 179:return V_n(u);case 184:return I8t(u);case 183:return O4s(u);case 187:return eJs(u);case 188:return tJs(u);case 189:return rJs(u);case 190:return nJs(u);case 193:case 194:return iJs(u);case 197:case 191:case 192:return rA(u.type);case 198:return cJs(u);case 199:return lJs(u);case 195:return uJs(u);case 196:return gJs(u);case 204:return AJs(u);case 206:return dJs(u);case 203:return pJs(u);case 329:return GJs(u);case 330:return xJs(u);case 347:case 339:case 341:return EJs(u);case 346:return SJs(u);case 345:return vJs(u);case 325:case 326:case 327:return wJs(u);case 342:return TJs(u);case 349:return RJs(u);case 318:NJs(u);case 316:case 315:case 313:case 314:case 323:w0n(u),Lu(u,rA);return;case 319:lKs(u);return;case 310:return rA(u.type);case 334:case 336:case 335:return FJs(u);case 351:return BJs(u);case 344:return DJs(u);case 352:return kJs(u);case 200:return sJs(u);case 201:return oJs(u);case 263:return bJs(u);case 242:case 269:return yat(u);case 244:return $Js(u);case 245:return eUs(u);case 246:return tUs(u);case 247:return iUs(u);case 248:return sUs(u);case 249:return oUs(u);case 250:return cUs(u);case 251:return aUs(u);case 252:case 253:return hUs(u);case 254:return mUs(u);case 255:return CUs(u);case 256:return _Us(u);case 257:return yUs(u);case 258:return bUs(u);case 259:return EUs(u);case 261:return zJs(u);case 209:return qJs(u);case 264:return DUs(u);case 265:return OUs(u);case 266:return MUs(u);case 267:return XUs(u);case 307:return UUs(u);case 268:return zUs(u);case 273:return eKs(u);case 272:return rKs(u);case 279:return nKs(u);case 278:return oKs(u);case 243:case 260:fZ(u);return;case 283:return j4s(u)}}function B0n(u){Ki(u)&&F(u,m=>{Tx(m)&&rA(m)})}function w0n(u){if(!wo(u))if(zLe(u)||Iie(u)){let m=Vi(zLe(u)?54:58),v=u.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=u.type,P=nl(D);os(u,v,m,no(Iie(u)&&!(P===Wi||P===es)?Ha(Ft([P,Bt],u.postfix?void 0:Hn)):P))}else os(u,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function lKs(u){w0n(u),rA(u.type);let{parent:m}=u;if(Si(m)&&hie(m.parent)){Ei(m.parent.parameters)!==m&&Sr(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}W3(m)||Sr(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let v=u.parent.parent;if(!cS(v)){Sr(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=dne(v);if(!D)return;let P=PL(v);(!P||Ei(P.parameters).symbol!==D)&&Sr(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function uKs(u){let m=nl(u.type),{parent:v}=u,D=u.parent.parent;if(W3(u.parent)&&cS(D)){let P=PL(D),Y=p$e(D.parent.parent);if(P||Y){let oe=li(Y?D.parent.parent.typeExpression.parameters:P.parameters),Be=dne(D);if(!oe||Be&&oe.symbol===Be&&EB(oe))return d0(m)}}return Si(v)&&hie(v.parent)?d0(m):Z0(m)}function Lq(u){let m=ms(u),v=sa(m);v.flags&1?pe.assert(!v.deferredNodes,"A type-checked file should have no deferred nodes."):(v.deferredNodes||(v.deferredNodes=new Set),v.deferredNodes.add(u))}function T0n(u){let m=sa(u);m.deferredNodes&&m.deferredNodes.forEach(gKs),m.deferredNodes=void 0}function gKs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkDeferredNode",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let D=ge;switch(ge=u,M=0,u.kind){case 214:case 215:case 216:case 171:case 287:DK(u);break;case 219:case 220:case 175:case 174:r4s(u);break;case 178:case 179:V_n(u);break;case 232:NUs(u);break;case 169:W4s(u);break;case 286:lQs(u);break;case 285:gQs(u);break;case 217:case 235:case 218:BXs(u);break;case 223:Ol(u.expression);break;case 227:pAe(u)&&DK(u);break}ge=D,(v=ki)==null||v.pop()}function AKs(u,m){var v,D;(v=ki)==null||v.push(ki.Phase.Check,m?"checkSourceFileNodes":"checkSourceFile",{path:u.path},!0);let P=m?"beforeCheckNodes":"beforeCheck",Y=m?"afterCheckNodes":"afterCheck";Mc(P),m?pKs(u,m):dKs(u),Mc(Y),Pf("Check",P,Y),(D=ki)==null||D.pop()}function R0n(u,m){if(m)return!1;switch(u){case 0:return!!Te.noUnusedLocals;case 1:return!!Te.noUnusedParameters;default:return pe.assertNever(u)}}function N0n(u){return Qs.get(u.path)||E}function dKs(u){let m=sa(u);if(!(m.flags&1)){if(T3(u,Te,s))return;nyn(u),St(jP),St(c9),St(JF),St(UF),St(KF),m.flags&8388608&&(jP=m.potentialThisCollisions,c9=m.potentialNewTargetCollisions,JF=m.potentialWeakMapSetCollisions,UF=m.potentialReflectCollisions,KF=m.potentialUnusedRenamedBindingElementsInTypes),F(u.statements,rA),rA(u.endOfFileToken),T0n(u),vl(u)&&_W(u),g(()=>{!u.isDeclarationFile&&(Te.noUnusedLocals||Te.noUnusedParameters)&&K_n(N0n(u),(v,D,P)=>{!pP(v)&&R0n(D,!!(v.flags&33554432))&&PA.add(P)}),u.isDeclarationFile||PJs()}),vl(u)&&v0n(u),jP.length&&(F(jP,MJs),St(jP)),c9.length&&(F(c9,HJs),St(c9)),JF.length&&(F(JF,JJs),St(JF)),UF.length&&(F(UF,KJs),St(UF)),m.flags|=1}}function pKs(u,m){let v=sa(u);if(!(v.flags&1)){if(T3(u,Te,s))return;nyn(u),St(jP),St(c9),St(JF),St(UF),St(KF),F(m,rA),T0n(u),(v.potentialThisCollisions||(v.potentialThisCollisions=[])).push(...jP),(v.potentialNewTargetCollisions||(v.potentialNewTargetCollisions=[])).push(...c9),(v.potentialWeakMapSetCollisions||(v.potentialWeakMapSetCollisions=[])).push(...JF),(v.potentialReflectCollisions||(v.potentialReflectCollisions=[])).push(...UF),(v.potentialUnusedRenamedBindingElementsInTypes||(v.potentialUnusedRenamedBindingElementsInTypes=[])).push(...KF),v.flags|=8388608;for(let D of m){let P=sa(D);P.flags|=8388608}}}function D0n(u,m,v){try{return d=m,fKs(u,v)}finally{d=void 0}}function x8t(){for(let u of c)u();c=[]}function G8t(u,m){x8t();let v=g;g=D=>D(),AKs(u,m),g=v}function fKs(u,m){if(u){x8t();let v=PA.getGlobalDiagnostics(),D=v.length;G8t(u,m);let P=PA.getDiagnostics(u.fileName);if(m)return P;let Y=PA.getGlobalDiagnostics();if(Y!==v){let oe=Wr(v,Y,X7);return Nn(oe,P)}else if(D===0&&Y.length>0)return Nn(Y,P);return P}return F(s.getSourceFiles(),v=>G8t(v)),PA.getDiagnostics()}function IKs(){return x8t(),PA.getGlobalDiagnostics()}function hKs(u,m){if(u.flags&67108864)return[];let v=qu(),D=!1;return P(),v.delete("this"),VJt(v);function P(){for(;u;){switch(WI(u)&&u.locals&&!fc(u)&&oe(u.locals,m),u.kind){case 308:if(!xm(u))break;case 268:Be(Uo(u).exports,m&2623475);break;case 267:oe(Uo(u).exports,m&8);break;case 232:u.name&&Y(u.symbol,m);case 264:case 265:D||oe(pk(Uo(u)),m&788968);break;case 219:u.name&&Y(u.symbol,m);break}tZe(u)&&Y(st,m),D=cg(u),u=u.parent}oe(Gr,m)}function Y(Oe,He){if(sU(Oe)&He){let qe=Oe.escapedName;v.has(qe)||v.set(qe,Oe)}}function oe(Oe,He){He&&Oe.forEach(qe=>{Y(qe,He)})}function Be(Oe,He){He&&Oe.forEach(qe=>{!Cp(qe,282)&&!Cp(qe,281)&&qe.escapedName!=="default"&&Y(qe,He)})}}function mKs(u){return u.kind===80&&KY(u.parent)&&Il(u.parent)===u}function k0n(u){for(;u.parent.kind===167;)u=u.parent;return u.parent.kind===184}function CKs(u){for(;u.parent.kind===212;)u=u.parent;return u.parent.kind===234}function x0n(u,m){let v,D=hC(u);for(;D&&!(v=m(D));)D=hC(D);return v}function _Ks(u){return!!ji(u,m=>Tc(m)&&u1(m.body)||pi(m)?!0:xa(m)||kd(m)?"quit":!1)}function F8t(u,m){return!!x0n(u,v=>v===m)}function yKs(u){for(;u.parent.kind===167;)u=u.parent;if(u.parent.kind===272)return u.parent.moduleReference===u?u.parent:void 0;if(u.parent.kind===278)return u.parent.expression===u?u.parent:void 0}function kat(u){return yKs(u)!==void 0}function bKs(u){switch(nI(u.parent.parent)){case 1:case 3:return mS(u.parent);case 5:if(jo(u.parent)&&oU(u.parent)===u)return;case 4:case 2:return Uo(u.parent.parent)}}function EKs(u){let m=u.parent;for(;zi(m);)u=m,m=m.parent;if(m&&m.kind===206&&m.qualifier===u)return m}function SKs(u){if(u.expression.kind===110){let m=r0(u,!1,!1);if(bu(m)){let v=Hmn(m);if(v){let D=O5(v,void 0),P=Qmn(v,D);return P&&!Xo(P)}}}}function G0n(u){if(HT(u))return mS(u.parent);if(wo(u)&&u.parent.kind===212&&u.parent===u.parent.parent.left&&!p(u)&&!O3(u)&&!SKs(u.parent)){let m=bKs(u);if(m)return m}if(u.parent.kind===278&&Od(u)){let m=TI(u,2998271,!0);if(m&&m!==it)return m}else if(fC(u)&&kat(u)){let m=ML(u,272);return pe.assert(m!==void 0),oW(u,!0)}if(fC(u)){let m=EKs(u);if(m){nl(m);let v=sa(u).resolvedSymbol;return v===it?void 0:v}}for(;OZe(u);)u=u.parent;if(CKs(u)){let m=0;u.parent.kind===234?(m=ww(u)?788968:111551,dAe(u.parent)&&(m|=111551)):m=1920,m|=2097152;let v=Od(u)?TI(u,m,!0):void 0;if(v)return v}if(u.parent.kind===342)return dne(u.parent);if(u.parent.kind===169&&u.parent.parent.kind===346){pe.assert(!wo(u));let m=IZe(u.parent);return m&&m.symbol}if(MT(u)){if(sf(u))return;let m=ji(u,Hp(Tx,lde,O3)),v=m?901119:111551;if(u.kind===80){if(YJ(u)&&Fq(u)){let P=qot(u.parent);return P===it?void 0:P}let D=TI(u,v,!0,!0,PL(u));if(!D&&m){let P=ji(u,Hp(xa,g_));if(P)return NOe(u,!0,Uo(P))}if(D&&m){let P=bP(u);if(P&&LF(P)&&P===D.valueDeclaration)return TI(u,v,!0,!0,ms(P))||D}return D}else{if(p(u))return rat(u);if(u.kind===212||u.kind===167){let D=sa(u);return D.resolvedSymbol?D.resolvedSymbol:(u.kind===212?(tat(u,0),D.resolvedSymbol||(D.resolvedSymbol=F0n(RI(u.expression),sZ(u.name)))):yCn(u,0),!D.resolvedSymbol&&m&&zi(u)?NOe(u):D.resolvedSymbol)}else if(O3(u))return NOe(u)}}else if(fC(u)&&k0n(u)){let m=u.parent.kind===184?788968:1920,v=TI(u,m,!0,!0);return v&&v!==it?v:eot(u)}if(u.parent.kind===183)return TI(u,1,!0)}function F0n(u,m){let v=LJt(u,m);if(v.length&&u.members){let D=jst(pR(u).members);if(v===A0(u))return D;if(D){let P=fa(D),Y=Xt(v,Be=>Be.declaration),oe=At(Y,rd).join(",");if(P.filteredIndexSymbolCache||(P.filteredIndexSymbolCache=new Map),P.filteredIndexSymbolCache.has(oe))return P.filteredIndexSymbolCache.get(oe);{let Be=gA(131072,"__index");return Be.declarations=Xt(v,Oe=>Oe.declaration),Be.parent=u.aliasSymbol?u.aliasSymbol:u.symbol?u.symbol:xv(Be.declarations[0].parent),P.filteredIndexSymbolCache.set(oe,Be),Be}}}}function NOe(u,m,v){if(fC(u)){let oe=TI(u,901119,m,!0,PL(u));if(!oe&&Ir(u)&&v&&(oe=jA(f_(B1(v),u.escapedText,901119))),oe)return oe}let D=Ir(u)?v:NOe(u.left,m,v),P=Ir(u)?u.escapedText:u.right.escapedText;if(D){let Y=D.flags&111551&&Gg(Io(D),"prototype"),oe=Y?Io(Y):Fp(D);return Gg(oe,P)}}function xv(u,m){if(ll(u))return xm(u)?jA(u.symbol):void 0;let{parent:v}=u,D=v.parent;if(!(u.flags&67108864)){if(Stn(u)){let P=Uo(v);return eS(u.parent)&&u.parent.propertyName===u?jot(P):P}else if(fne(u))return Uo(v.parent);if(u.kind===80){if(kat(u))return G0n(u);if(v.kind===209&&D.kind===207&&u===v.propertyName){let P=Vq(D),Y=Gg(P,u.escapedText);if(Y)return Y}else if(Du(v)&&v.name===u)return v.keywordToken===105&&Vo(u)==="target"?zKt(v).symbol:v.keywordToken===102&&Vo(u)==="meta"?EIn().members.get("meta"):void 0}switch(u.kind){case 80:case 81:case 212:case 167:if(!YL(u))return G0n(u);case 110:let P=r0(u,!1,!1);if(bu(P)){let Be=yS(P);if(Be.thisParameter)return Be.thisParameter}if(rne(u))return Ol(u).symbol;case 198:return hUt(u).symbol;case 108:return Ol(u).symbol;case 137:let Y=u.parent;return Y&&Y.kind===177?Y.parent.symbol:void 0;case 11:case 15:if(LL(u.parent.parent)&&_7(u.parent.parent)===u||(u.parent.kind===273||u.parent.kind===279)&&u.parent.moduleSpecifier===u||wo(u)&&SN(u.parent)&&u.parent.moduleSpecifier===u||wo(u)&&ay(u.parent,!1)||Up(u.parent)||EE(u.parent)&&ky(u.parent.parent)&&u.parent.parent.argument===u.parent)return F0(u,u,m);if(Zl(v)&&f3(v)&&v.arguments[1]===u)return Uo(v);case 9:let oe=Yg(v)?v.argumentExpression===u?P_(v.expression):void 0:EE(v)&&Iv(D)?nl(D.objectType):void 0;return oe&&Gg(oe,Ap(u.text));case 90:case 100:case 39:case 86:return mS(u.parent);case 206:return ky(u)?xv(u.argument.literal,m):void 0;case 95:return Cf(u.parent)?pe.checkDefined(u.parent.symbol):void 0;case 102:if(Du(u.parent)&&u.parent.name.escapedText==="defer")return;case 105:return Du(u.parent)?s_n(u.parent).symbol:void 0;case 104:if(fo(u.parent)){let Be=P_(u.parent.right),Oe=c8t(Be);return Oe?.symbol??Be.symbol}return;case 237:return Ol(u).symbol;case 296:if(YJ(u)&&Fq(u)){let Be=qot(u.parent);return Be===it?void 0:Be}default:return}}}function vKs(u){if(Ir(u)&&jo(u.parent)&&u.parent.name===u){let m=sZ(u),v=P_(u.parent.expression),D=v.flags&1048576?v.types:[v];return er(D,P=>Me(A0(P),Y=>Sq(m,Y.keyType)))}}function BKs(u){if(u&&u.kind===305)return TI(u.name,2208703,!0)}function wKs(u){if(R0(u)){let m=u.propertyName||u.name;return u.parent.parent.moduleSpecifier?_5(u.parent.parent,u):m.kind===11?void 0:TI(m,2998271,!0)}else return TI(u,2998271,!0)}function Vq(u){if(ll(u)&&!xm(u)||u.flags&67108864)return nn;let m=ebe(u),v=m&&wv(Uo(m.class));if(ww(u)){let D=nl(u);return v?T1(D,v.thisType):D}if(MT(u))return Z0n(u);if(v&&!m.isImplements){let D=Nc(Kw(v));return D?T1(D,v.thisType):nn}if(KY(u)){let D=Uo(u);return Fp(D)}if(mKs(u)){let D=xv(u);return D?Fp(D):nn}if(hg(u))return _q(u,!0,0)||nn;if(jh(u)){let D=Uo(u);return D?Io(D):nn}if(Stn(u)){let D=xv(u);return D?Io(D):nn}if(Nu(u))return _q(u.parent,!0,0)||nn;if(kat(u)){let D=xv(u);if(D){let P=Fp(D);return uo(P)?Io(D):P}}return Du(u.parent)&&u.parent.keywordToken===u.kind?s_n(u.parent):CU(u)?UJt(!1):nn}function xat(u){if(pe.assert(u.kind===211||u.kind===210),u.parent.kind===251){let P=BOe(u.parent);return xK(u,P||nn)}if(u.parent.kind===227){let P=P_(u.parent.right);return xK(u,P||nn)}if(u.parent.kind===304){let P=Ma(u.parent.parent,og),Y=xat(P)||nn,oe=fP(P.properties,u.parent);return __n(P,Y,oe)}let m=Ma(u.parent,OI),v=xat(m)||nn,D=N9(65,v,Bt,u.parent)||nn;return y_n(m,v,m.elements.indexOf(u),D)}function TKs(u){let m=xat(Ma(u.parent.parent,CY));return m&&Gg(m,u.escapedText)}function Z0n(u){return P7(u)&&(u=u.parent),Iy(P_(u))}function L0n(u){let m=mS(u.parent);return cg(u)?Io(m):Fp(m)}function V0n(u){let m=u.name;switch(m.kind){case 80:return TE(Vo(m));case 9:case 11:return TE(m.text);case 168:let v=zw(m);return V_(v,12288)?v:$r;default:return pe.fail("Unsupported property name.")}}function Z8t(u){u=fy(u);let m=qu(Gd(u)),v=tg(u,0).length?Hl:tg(u,1).length?RA:void 0;return v&&F(Gd(v),D=>{m.has(D.escapedName)||m.set(D.escapedName,D)}),Qy(m)}function Gat(u){return tg(u,0).length!==0||tg(u,1).length!==0}function P0n(u){let m=RKs(u);return m?er(m,P0n):[u]}function RKs(u){if(iI(u)&6)return Xt(fa(u).containingType.types,m=>Gg(m,u.escapedName));if(u.flags&33554432){let{links:{leftSpread:m,rightSpread:v,syntheticOrigin:D}}=u;return m?[m,v]:D?[D]:J_(NKs(u))}}function NKs(u){let m,v=u;for(;v=fa(v).target;)m=v;return m}function DKs(u){if(kp(u))return!1;let m=$l(u,Ir);if(!m)return!1;let v=m.parent;return v?!((jo(v)||fm(v))&&v.name===m)&&aSe(m)===st:!1}function kKs(u){return a3(u.parent)&&u===u.parent.name}function xKs(u,m){var v;let D=$l(u,Ir);if(D){let P=aSe(D,kKs(D));if(P){if(P.flags&1048576){let oe=jA(P.exportSymbol);if(!m&&oe.flags&944&&!(oe.flags&3))return;P=oe}let Y=$m(P);if(Y){if(Y.flags&512&&((v=Y.valueDeclaration)==null?void 0:v.kind)===308){let oe=Y.valueDeclaration,Be=ms(D);return oe!==Be?void 0:oe}return ji(D.parent,oe=>a3(oe)&&Uo(oe)===Y)}}}}function GKs(u){let m=MLe(u);if(m)return m;let v=$l(u,Ir);if(v){let D=KKs(v);if(qU(D,111551)&&!uR(D,111551))return Mb(D)}}function FKs(u){return u.valueDeclaration&&hg(u.valueDeclaration)&&ai(u.valueDeclaration).parent.kind===300}function W0n(u){if(u.flags&418&&u.valueDeclaration&&!ll(u.valueDeclaration)){let m=fa(u);if(m.isDeclarationWithCollidingName===void 0){let v=tS(u.valueDeclaration);if(mge(v)||FKs(u))if(An(v.parent,u.escapedName,111551,void 0,!1))m.isDeclarationWithCollidingName=!0;else if(L8t(u.valueDeclaration,16384)){let D=L8t(u.valueDeclaration,32768),P=VT(v,!1),Y=v.kind===242&&VT(v.parent,!1);m.isDeclarationWithCollidingName=!Tge(v)&&(!D||!P&&!Y)}else m.isDeclarationWithCollidingName=!1}return m.isDeclarationWithCollidingName}return!1}function ZKs(u){if(!kp(u)){let m=$l(u,Ir);if(m){let v=aSe(m);if(v&&W0n(v))return v.valueDeclaration}}}function LKs(u){let m=$l(u,jh);if(m){let v=Uo(m);if(v)return W0n(v)}return!1}function O0n(u){switch(pe.assert(Ht),u.kind){case 272:return Fat(Uo(u));case 274:case 275:case 277:case 282:let m=Uo(u);return!!m&&Fat(m,!0);case 279:let v=u.exportClause;return!!v&&(tk(v)||jt(v.elements,O0n));case 278:return u.expression&&u.expression.kind===80?Fat(Uo(u),!0):!0}return!1}function VKs(u){let m=$l(u,km);return m===void 0||m.parent.kind!==308||!d3(m)?!1:Fat(Uo(m))&&m.moduleReference&&!sf(m.moduleReference)}function Fat(u,m){if(!u)return!1;let v=ms(u.valueDeclaration),D=v&&Uo(v);wE(D);let P=fn(YC(u));return P===it?!m||!uR(u):!!(Hb(u,m,!0)&111551)&&(Fb(Te)||!oSe(P))}function oSe(u){return a8t(u)||!!u.constEnumOnlyModule}function M0n(u,m){if(pe.assert(Ht),d9(u)){let v=Uo(u),D=v&&fa(v);if(D?.referenced)return!0;let P=fa(v).aliasTarget;if(P&&o_(u)&32&&Hb(P)&111551&&(Fb(Te)||!oSe(P)))return!0}return m?!!Lu(u,v=>M0n(v,m)):!1}function H0n(u){if(u1(u.body)){if(bB(u)||cv(u))return!1;let m=Uo(u),v=PQ(m);return v.length>1||v.length===1&&v[0].declaration!==u}return!1}function PKs(u){let m=X0n(u);if(!m)return!1;let v=nl(m);return uo(v)||Zse(v)}function DOe(u,m){return(WKs(u,m)||OKs(u))&&!PKs(u)}function WKs(u,m){return!ot||m2e(u)||cS(u)||!u.initializer?!1:Ga(u,31)?!!m&&kd(m):!0}function OKs(u){return ot&&m2e(u)&&(cS(u)||!u.initializer)&&Ga(u,31)}function Y0n(u){let m=$l(u,D=>ih(D)||nc(D));if(!m)return!1;let v;if(nc(m)){if(m.type||!wo(m)&&!cSe(m))return!1;let D=E7(m);if(!D||!mE(D))return!1;v=Uo(D)}else v=Uo(m);return!v||!(v.flags&16|3)?!1:!!Dh(B1(v),D=>D.flags&111551&&jY(D.valueDeclaration))}function MKs(u){let m=$l(u,ih);if(!m)return E;let v=Uo(m);return v&&Gd(Io(v))||E}function Pq(u){var m;let v=u.id||0;return v<0||v>=c5.length?0:((m=c5[v])==null?void 0:m.flags)||0}function L8t(u,m){return HKs(u,m),!!(Pq(u)&m)}function HKs(u,m){if(!Te.noCheck&&gU(ms(u),Te)||sa(u).calculatedFlags&m)return;switch(m){case 16:case 32:return oe(u);case 128:case 256:case 2097152:return Y(u);case 512:case 8192:case 65536:case 262144:return Oe(u);case 536870912:return qe(u);case 4096:case 32768:case 16384:return kt(u);default:return pe.assertNever(m,`Unhandled node check flag calculation: ${pe.formatNodeCheckFlags(m)}`)}function D(dn,vn){let ii=vn(dn,dn.parent);if(ii!=="skip")return ii||Sz(dn,vn)}function P(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=2097536,oe(dn)}function Y(dn){D(dn,P)}function oe(dn){let vn=sa(dn);vn.calculatedFlags|=48,dn.kind===108&&Hot(dn)}function Be(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=336384,qe(dn)}function Oe(dn){D(dn,Be)}function He(dn){return MT(dn)||a0(dn.parent)&&(dn.parent.objectAssignmentInitializer??dn.parent.name)===dn}function qe(dn){let vn=sa(dn);if(vn.calculatedFlags|=536870912,Ir(dn)&&(vn.calculatedFlags|=49152,He(dn)&&!(jo(dn.parent)&&dn.parent.name===dn))){let ii=L0(dn);ii&&ii!==it&&Pmn(dn,ii)}}function Vt(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=53248,vr(dn)}function kt(dn){let vn=tS(HT(dn)?dn.parent:dn);D(vn,Vt)}function vr(dn){qe(dn),Un(dn)&&zw(dn),p(dn)&&PI(dn.parent)&&Iat(dn.parent)}}function GK(u){return b0n(u.parent),sa(u).enumMemberValue??$h(void 0)}function Q0n(u){switch(u.kind){case 307:case 212:case 213:return!0}return!1}function Zat(u){if(u.kind===307)return GK(u).value;sa(u).resolvedSymbol||RI(u);let m=sa(u).resolvedSymbol||(Od(u)?TI(u,111551,!0):void 0);if(m&&m.flags&8){let v=m.valueDeclaration;if(VA(v.parent))return GK(v).value}}function V8t(u){return!!(u.flags&524288)&&tg(u,0).length>0}function YKs(u,m){var v;let D=$l(u,fC);if(!D||m&&(m=$l(m),!m))return 0;let P=!1;if(zi(D)){let qe=TI(B0(D),111551,!0,!0,m);P=!!((v=qe?.declarations)!=null&&v.every(nN))}let Y=TI(D,111551,!0,!0,m),oe=Y&&Y.flags&2097152?YC(Y):Y;P||(P=!!(Y&&uR(Y,111551)));let Be=TI(D,788968,!0,!0,m),Oe=Be&&Be.flags&2097152?YC(Be):Be;if(Y||P||(P=!!(Be&&uR(Be,788968))),oe&&oe===Oe){let qe=KJt(!1);if(qe&&oe===qe)return 9;let Vt=Io(oe);if(Vt&&dR(Vt))return P?10:1}if(!Oe)return P?11:0;let He=Fp(Oe);return uo(He)?P?11:0:He.flags&3?11:V_(He,245760)?2:V_(He,528)?6:V_(He,296)?3:V_(He,2112)?4:V_(He,402653316)?5:yA(He)?7:V_(He,12288)?8:V8t(He)?10:Nv(He)?7:11}function QKs(u,m,v,D,P){let Y=$l(u,KAe);if(!Y)return me.createToken(133);let oe=Uo(Y);return Dt.serializeTypeForDeclaration(Y,oe,m,v|1024,D,P)}function P8t(u){u=$l(u,fJ);let m=u.kind===179?178:179,v=Cp(Uo(u),m),D=v&&v.pos{switch(D.kind){case 261:case 170:case 209:case 173:case 304:case 305:case 307:case 211:case 263:case 219:case 220:case 264:case 232:case 267:case 175:case 178:case 179:case 268:return!0}return!1})}}}function qKs(u){return hf(u)||nc(u)&&cSe(u)?MQ(Io(Uo(u))):!1}function $Ks(u,m,v){let D=u.flags&1056?Dt.symbolToExpression(u.symbol,111551,m,void 0,void 0,v):u===tn?me.createTrue():u===Bs&&me.createFalse();if(D)return D;let P=u.value;return typeof P=="object"?me.createBigIntLiteral(P):typeof P=="string"?me.createStringLiteral(P):P<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-P)):me.createNumericLiteral(P)}function e8s(u,m){let v=Io(Uo(u));return $Ks(v,u,m)}function W8t(u){return u?(Mw(u),ms(u).localJsxFactory||zF):zF}function O8t(u){if(u){let m=ms(u);if(m){if(m.localJsxFragmentFactory)return m.localJsxFragmentFactory;let v=m.pragmas.get("jsxfrag"),D=Ki(v)?v[0]:v;if(D)return m.localJsxFragmentFactory=Bz(D.arguments.factory,Ze),m.localJsxFragmentFactory}}if(Te.jsxFragmentFactory)return Bz(Te.jsxFragmentFactory,Ze)}function X0n(u){let m=kh(u);if(m)return m;if(u.kind===170&&u.parent.kind===179){let v=P8t(u.parent).getAccessor;if(v)return xb(v)}}function t8s(){return{getReferencedExportContainer:xKs,getReferencedImportDeclaration:GKs,getReferencedDeclarationWithCollidingName:ZKs,isDeclarationWithCollidingName:LKs,isValueAliasDeclaration:m=>{let v=$l(m);return v&&Ht?O0n(v):!0},hasGlobalName:UKs,isReferencedAliasDeclaration:(m,v)=>{let D=$l(m);return D&&Ht?M0n(D,v):!0},hasNodeCheckFlag:(m,v)=>{let D=$l(m);return D?L8t(D,v):!1},isTopLevelValueImportEqualsWithEntityName:VKs,isDeclarationVisible:Ak,isImplementationOfOverload:H0n,requiresAddingImplicitUndefined:DOe,isExpandoFunctionDeclaration:Y0n,getPropertiesOfContainerFunction:MKs,createTypeOfDeclaration:QKs,createReturnTypeOfSignatureDeclaration:XKs,createTypeOfExpression:JKs,createLiteralConstValue:e8s,isSymbolAccessible:cW,isEntityNameVisible:Cq,getConstantValue:m=>{let v=$l(m,Q0n);return v?Zat(v):void 0},getEnumMemberValue:m=>{let v=$l(m,LF);return v?GK(v):void 0},collectLinkedAliases:vse,markLinkedReferences:m=>{let v=$l(m);return v&&xq(v,0)},getReferencedValueDeclaration:jKs,getReferencedValueDeclarations:zKs,getTypeReferenceSerializationKind:YKs,isOptionalParameter:m2e,isArgumentsLocalBinding:DKs,getExternalModuleFileFromDeclaration:m=>{let v=$l(m,Nge);return v&&M8t(v)},isLiteralConstDeclaration:qKs,isLateBound:m=>{let v=$l(m,jh),D=v&&Uo(v);return!!(D&&iI(D)&4096)},getJsxFactoryEntity:W8t,getJsxFragmentFactoryEntity:O8t,isBindingCapturedByNode:(m,v)=>{let D=$l(m),P=$l(v);return!!D&&!!P&&(nc(P)||hg(P))&&uYs(D,P)},getDeclarationStatementsForSourceFile:(m,v,D,P)=>{let Y=$l(m);pe.assert(Y&&Y.kind===308,"Non-sourcefile node passed into getDeclarationsForSourceFile");let oe=Uo(m);return oe?(wE(oe),oe.exports?Dt.symbolTableToDeclarationStatements(oe.exports,m,v,D,P):[]):m.locals?Dt.symbolTableToDeclarationStatements(m.locals,m,v,D,P):[]},isImportRequiredByAugmentation:u,isDefinitelyReferenceToGlobalSymbolObject:lk,createLateBoundIndexSignatures:(m,v,D,P,Y)=>{let oe=m.symbol,Be=A0(Io(oe)),Oe=Kst(oe),He=Oe&&zst(Oe,Do(pk(oe).values())),qe;for(let kt of[Be,He])if(B(kt)){qe||(qe=[]);for(let vr of kt){if(vr.declaration||vr===rl)continue;if(vr.components&&ue(vr.components,ii=>{var Yi;return!!(ii.name&&Un(ii.name)&&Od(ii.name.expression)&&v&&((Yi=Cq(ii.name.expression,v,!1))==null?void 0:Yi.accessibility)===0)})){let ii=Me(vr.components,Yi=>!wse(Yi));qe.push(...At(ii,Yi=>{Vt(Yi.name.expression);let js=kt===Be?[me.createModifier(126)]:void 0;return me.createPropertyDeclaration(Ft(js,vr.isReadonly?me.createModifier(148):void 0),Yi.name,(ss(Yi)||pi(Yi)||hl(Yi)||uu(Yi)||bB(Yi)||cv(Yi))&&Yi.questionToken?me.createToken(58):void 0,Dt.typeToTypeNode(Io(Yi.symbol),v,D,P,Y),void 0)}));continue}let dn=Dt.indexInfoToIndexSignatureDeclaration(vr,v,D,P,Y);dn&&kt===Be&&(dn.modifiers||(dn.modifiers=me.createNodeArray())).unshift(me.createModifier(126)),dn&&qe.push(dn)}}return qe;function Vt(kt){if(!Y.trackSymbol)return;let vr=B0(kt),dn=An(vr,vr.escapedText,1160127,void 0,!0);dn&&Y.trackSymbol(dn,v,111551)}},symbolToDeclarations:(m,v,D,P,Y,oe)=>Dt.symbolToDeclarations(m,v,D,P,Y,oe)};function u(m){let v=ms(m);if(!v.symbol)return!1;let D=M8t(m);if(!D||D===v)return!1;let P=LN(v.symbol);for(let Y of Do(P.values()))if(Y.mergeId){let oe=jA(Y);if(oe.declarations){for(let Be of oe.declarations)if(ms(Be)===D)return!0}}return!1}}function M8t(u){let m=u.kind===268?Gs(u.name,Zg):LY(u),v=BE(m,m,void 0);if(v)return Cp(v,308)}function r8s(){for(let m of s.getSourceFiles())gOt(m,Te);oh=new Map;let u;for(let m of s.getSourceFiles())if(!m.redirectInfo){if(!vl(m)){let v=m.locals.get("globalThis");if(v?.declarations)for(let D of v.declarations)PA.add(mo(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));FN(Gr,m.locals)}m.jsGlobalAugmentations&&FN(Gr,m.jsGlobalAugmentations),m.patternAmbientModules&&m.patternAmbientModules.length&&(Vb=Nn(Vb,m.patternAmbientModules)),m.moduleAugmentations.length&&(u||(u=[])).push(m.moduleAugmentations),m.symbol&&m.symbol.globalExports&&m.symbol.globalExports.forEach((D,P)=>{Gr.has(P)||Gr.set(P,D)})}if(u)for(let m of u)for(let v of m)vB(v.parent)&&wQ(v);if(I5(),fa(dt).type=xe,fa(st).type=JI("IArguments",0,!0),fa(it).type=nn,fa(pr).type=Lh(16,pr),NA=JI("Array",1,!0),qn=JI("Object",0,!0),Js=JI("Function",0,!0),Hl=mt&&JI("CallableFunction",0,!0)||Js,RA=mt&&JI("NewableFunction",0,!0)||Js,hm=JI("String",0,!0),af=JI("Number",0,!0),dI=JI("Boolean",0,!0),XI=JI("RegExp",0,!0),d_=d0(hr),OC=d0(En),OC===Xg&&(OC=Hf(void 0,Ee,E,E,E)),uA=DIn("ReadonlyArray",1)||NA,E1=uA?Wpe(uA,[hr]):d_,C2=DIn("ThisType",1),u)for(let m of u)for(let v of m)vB(v.parent)||wQ(v);oh.forEach(({firstFile:m,secondFile:v,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:P,firstFileLocations:Y,secondFileLocations:oe},Be)=>{let Oe=P?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let He of Y)f5(He,Oe,Be,oe);for(let He of oe)f5(He,Oe,Be,Y)});else{let P=Do(D.keys()).join(", ");PA.add(lg(mo(m,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,P),mo(v,Z.Conflicts_are_in_this_file))),PA.add(lg(mo(v,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,P),mo(m,Z.Conflicts_are_in_this_file)))}}),oh=void 0}function eC(u,m){if(Te.importHelpers){let v=ms(u);if(g3(v,Te)&&!(u.flags&33554432)){let D=i8s(v,u);if(D!==it){let P=fa(D);if(P.requestedExternalEmitHelpers??(P.requestedExternalEmitHelpers=0),(P.requestedExternalEmitHelpers&m)!==m){let Y=m&~P.requestedExternalEmitHelpers;for(let oe=1;oe<=16777216;oe<<=1)if(Y&oe)for(let Be of n8s(oe)){let Oe=Zh(f_(LN(D),Ap(Be),111551));Oe?oe&524288?jt(PQ(Oe),He=>NE(He)>3)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,4):oe&1048576?jt(PQ(Oe),He=>NE(He)>4)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,5):oe&1024&&(jt(PQ(Oe),He=>NE(He)>2)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,3)):Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,PD,Be)}}P.requestedExternalEmitHelpers|=m}}}}function n8s(u){switch(u){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return Ue?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__setFunctionName"];case 8388608:return["__propKey"];case 16777216:return["__addDisposableResource","__disposeResources"];case 33554432:return["__rewriteRelativeImportExtension"];default:return pe.fail("Unrecognized helper")}}function i8s(u,m){let v=sa(u);return v.externalHelpersModule||(v.externalHelpersModule=eK(q8s(u),PD,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,m)||it),v.externalHelpersModule}function sG(u){var m;let v=a8s(u)||s8s(u);if(v!==void 0)return v;if(Si(u)&&SF(u))return XC(u,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Ch(u)?u.declarationList.flags&7:0,P,Y,oe,Be,Oe,He=0,qe=!1,Vt=!1;for(let kt of u.modifiers)if(So(kt)){if(OJ(Ue,u,u.parent,u.parent.parent)){if(Ue&&(u.kind===178||u.kind===179)){let vr=P8t(u);if(p1(vr.firstAccessor)&&u===vr.secondAccessor)return XC(u,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return u.kind===175&&!u1(u.body)?XC(u,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):XC(u,Z.Decorators_are_not_valid_here);if(He&-34849)return os(kt,Z.Decorators_are_not_valid_here);if(Vt&&He&98303){pe.assertIsDefined(Oe);let vr=ms(kt);return bW(vr)?!1:(lg(Sr(kt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),mo(Oe,Z.Decorator_used_before_export_here)),!0)}He|=32768,He&98303?He&32&&(qe=!0):Vt=!0,Oe??(Oe=kt)}else{if(kt.kind!==148){if(u.kind===172||u.kind===174)return os(kt,Z._0_modifier_cannot_appear_on_a_type_member,Vi(kt.kind));if(u.kind===182&&(kt.kind!==126||!xa(u.parent)))return os(kt,Z._0_modifier_cannot_appear_on_an_index_signature,Vi(kt.kind))}if(kt.kind!==103&&kt.kind!==147&&kt.kind!==87&&u.kind===169)return os(kt,Z._0_modifier_cannot_appear_on_a_type_parameter,Vi(kt.kind));switch(kt.kind){case 87:{if(u.kind!==267&&u.kind!==169)return os(u,Z.A_class_member_cannot_have_the_0_keyword,Vi(87));let vn=ZB(u.parent)&&WL(u.parent)||u.parent;if(u.kind===169&&!(kd(vn)||xa(vn)||x_(vn)||$D(vn)||wg(vn)||em(vn)||hl(vn)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,Vi(kt.kind));break}case 164:if(He&16)return os(kt,Z._0_modifier_already_seen,"override");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","async");He|=16,Be=kt;break;case 125:case 124:case 123:let vr=w5(HY(kt.kind));if(He&7)return os(kt,Z.Accessibility_modifier_already_seen);if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"override");if(He&256)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"static");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"accessor");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"async");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,vr);if(He&64)return kt.kind===123?os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,vr,"abstract"):os(kt,Z._0_modifier_must_precede_1_modifier,vr,"abstract");if(pC(u))return os(kt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);He|=HY(kt.kind);break;case 126:if(He&256)return os(kt,Z._0_modifier_already_seen,"static");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","async");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","override");He|=256,P=kt;break;case 129:if(He&512)return os(kt,Z._0_modifier_already_seen,"accessor");if(He&8)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(u.kind!==173)return os(kt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);He|=512;break;case 148:if(He&8)return os(kt,Z._0_modifier_already_seen,"readonly");if(u.kind!==173&&u.kind!==172&&u.kind!==182&&u.kind!==170)return os(kt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");He|=8;break;case 95:if(Te.verbatimModuleSyntax&&!(u.flags&33554432)&&u.kind!==266&&u.kind!==265&&u.kind!==268&&u.parent.kind===308&&s.getEmitModuleFormatOfFile(ms(u))===1)return os(kt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(He&32)return os(kt,Z._0_modifier_already_seen,"export");if(He&128)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(He&64)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","async");if(xa(u.parent))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");He|=32;break;case 90:let dn=u.parent.kind===308?u.parent:u.parent.parent;if(dn.kind===268&&!s_(dn))return os(kt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(He&32){if(qe)return os(Oe,Z.Decorators_are_not_valid_here)}else return os(kt,Z._0_modifier_must_precede_1_modifier,"export","default");He|=2048;break;case 138:if(He&128)return os(kt,Z._0_modifier_already_seen,"declare");if(He&1024)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(He&16)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(xa(u.parent)&&!pi(u))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(u.parent.flags&33554432&&u.parent.kind===269)return os(kt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(pC(u))return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");He|=128,Y=kt;break;case 128:if(He&64)return os(kt,Z._0_modifier_already_seen,"abstract");if(u.kind!==264&&u.kind!==186){if(u.kind!==175&&u.kind!==173&&u.kind!==178&&u.kind!==179)return os(kt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(u.parent.kind===264&&Ga(u.parent,64))){let vn=u.kind===173?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return os(kt,vn)}if(He&256)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&2)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(He&1024&&oe)return os(oe,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(rh(u)&&u.name.kind===81)return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");He|=64;break;case 134:if(He&1024)return os(kt,Z._0_modifier_already_seen,"async");if(He&128||u.parent.flags&33554432)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");He|=1024,oe=kt;break;case 103:case 147:{let vn=kt.kind===103?8192:16384,ii=kt.kind===103?"in":"out",Yi=ZB(u.parent)&&(WL(u.parent)||de((m=KJ(u.parent))==null?void 0:m.tags,bU))||u.parent;if(u.kind!==169||Yi&&!(g_(Yi)||xa(Yi)||FB(Yi)||bU(Yi)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,ii);if(He&vn)return os(kt,Z._0_modifier_already_seen,ii);if(vn&8192&&He&16384)return os(kt,Z._0_modifier_must_precede_1_modifier,"in","out");He|=vn;break}}}return u.kind===177?He&256?os(P,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):He&16?os(Be,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):He&1024?os(oe,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(u.kind===273||u.kind===272)&&He&128?os(Y,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):u.kind===170&&He&31&&Nu(u.name)?os(u,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):u.kind===170&&He&31&&u.dotDotDotToken?os(u,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):He&1024?l8s(u,oe):!1}function s8s(u){if(!u.modifiers)return!1;let m=o8s(u);return m&&XC(m,Z.Modifiers_cannot_appear_here)}function Lat(u,m){let v=de(u.modifiers,Ig);return v&&v.kind!==m?v:void 0}function o8s(u){switch(u.kind){case 178:case 179:case 177:case 173:case 172:case 175:case 174:case 182:case 268:case 273:case 272:case 279:case 278:case 219:case 220:case 170:case 169:return;case 176:case 304:case 305:case 271:case 283:return de(u.modifiers,Ig);default:if(u.parent.kind===269||u.parent.kind===308)return;switch(u.kind){case 263:return Lat(u,134);case 264:case 186:return Lat(u,128);case 232:case 265:case 266:return de(u.modifiers,Ig);case 244:return u.declarationList.flags&4?Lat(u,135):de(u.modifiers,Ig);case 267:return Lat(u,87);default:pe.assertNever(u)}}}function a8s(u){let m=c8s(u);return m&&XC(m,Z.Decorators_are_not_valid_here)}function c8s(u){return D$e(u)?de(u.modifiers,So):void 0}function l8s(u,m){switch(u.kind){case 175:case 263:case 219:case 220:return!1}return os(m,Z._0_modifier_cannot_be_used_here,"async")}function Wq(u,m=Z.Trailing_comma_not_allowed){return u&&u.hasTrailingComma?M5(u[0],u.end-1,1,m):!1}function J0n(u,m){if(u&&u.length===0){let v=u.pos-1,D=Yu(m.text,u.end)+1;return M5(m,v,D-v,Z.Type_parameter_list_cannot_be_empty)}return!1}function u8s(u){let m=!1,v=u.length;for(let D=0;D!!m.initializer||Nu(m.name)||EB(m))}function A8s(u){if(Ze>=3){let m=u.body&&$u(u.body)&&w$e(u.body.statements);if(m){let v=g8s(u.parameters);if(B(v)){F(v,P=>{lg(Sr(P,Z.This_parameter_is_not_allowed_with_use_strict_directive),mo(m,Z.use_strict_directive_used_here))});let D=v.map((P,Y)=>Y===0?mo(P,Z.Non_simple_parameter_declared_here):mo(P,Z.and_here));return lg(Sr(m,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function Vat(u){let m=ms(u);return sG(u)||J0n(u.typeParameters,m)||u8s(u.parameters)||p8s(u,m)||kd(u)&&A8s(u)}function d8s(u){let m=ms(u);return C8s(u)||J0n(u.typeParameters,m)}function p8s(u,m){if(!lA(u))return!1;u.typeParameters&&!(B(u.typeParameters)>1||u.typeParameters.hasTrailingComma||u.typeParameters[0].constraint)&&m&&fu(m.fileName,[".mts",".cts"])&&os(u.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:v}=u,D=Ra(m,v.pos).line,P=Ra(m,v.end).line;return D!==P&&os(v,Z.Line_terminator_not_permitted_before_arrow)}function f8s(u){let m=u.parameters[0];if(u.parameters.length!==1)return os(m?m.name:u,Z.An_index_signature_must_have_exactly_one_parameter);if(Wq(u.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),m.dotDotDotToken)return os(m.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(Kye(m))return os(m.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(m.questionToken)return os(m.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(m.initializer)return os(m.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!m.type)return os(m.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let v=nl(m.type);return kv(v,D=>!!(D.flags&8576))||G5(v)?os(m.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):RE(v,qst)?u.type?!1:os(u,Z.An_index_signature_must_have_a_type_annotation):os(m.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function I8s(u){return sG(u)||f8s(u)}function h8s(u,m){if(m&&m.length===0){let v=ms(u),D=m.pos-1,P=Yu(v.text,m.end)+1;return M5(v,D,P-D,Z.Type_argument_list_cannot_be_empty)}return!1}function kOe(u,m){return Wq(m)||h8s(u,m)}function m8s(u){return u.questionDotToken||u.flags&64?os(u.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function U0n(u){let m=u.types;if(Wq(m))return!0;if(m&&m.length===0){let v=Vi(u.token);return M5(u,m.pos,0,Z._0_list_cannot_be_empty,v)}return jt(m,K0n)}function K0n(u){return l_(u)&&an(u.expression)&&u.typeArguments?os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):kOe(u,u.typeArguments)}function C8s(u){let m=!1,v=!1;if(!sG(u)&&u.heritageClauses)for(let D of u.heritageClauses){if(D.token===96){if(m)return XC(D,Z.extends_clause_already_seen);if(v)return XC(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return XC(D.types[1],Z.Classes_can_only_extend_a_single_class);m=!0}else{if(pe.assert(D.token===119),v)return XC(D,Z.implements_clause_already_seen);v=!0}U0n(D)}}function _8s(u){let m=!1;if(u.heritageClauses)for(let v of u.heritageClauses){if(v.token===96){if(m)return XC(v,Z.extends_clause_already_seen);m=!0}else return pe.assert(v.token===119),XC(v,Z.Interface_declaration_cannot_have_implements_clause);U0n(v)}return!1}function Pat(u){if(u.kind!==168)return!1;let m=u;return m.expression.kind===227&&m.expression.operatorToken.kind===28?os(m.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function H8t(u){if(u.asteriskToken){if(pe.assert(u.kind===263||u.kind===219||u.kind===175),u.flags&33554432)return os(u.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!u.body)return os(u.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function Y8t(u,m){return!!u&&os(u,m)}function j0n(u,m){return!!u&&os(u,m)}function y8s(u,m){let v=new Map;for(let D of u.properties){if(D.kind===306){if(m){let oe=QA(D.expression);if(OI(oe)||og(oe))return os(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let P=D.name;if(P.kind===168&&Pat(P),D.kind===305&&!m&&D.objectAssignmentInitializer&&os(D.equalsToken,Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern),P.kind===81&&os(P,Z.Private_identifiers_are_not_allowed_outside_class_bodies),LB(D)&&D.modifiers)for(let oe of D.modifiers)Ig(oe)&&(oe.kind!==134||D.kind!==175)&&os(oe,Z._0_modifier_cannot_be_used_here,xp(oe));else if(tWt(D)&&D.modifiers)for(let oe of D.modifiers)Ig(oe)&&os(oe,Z._0_modifier_cannot_be_used_here,xp(oe));let Y;switch(D.kind){case 305:case 304:j0n(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),Y8t(D.questionToken,Z.An_object_member_cannot_be_declared_optional),P.kind===9&&iyn(P),P.kind===10&&Hx(!0,mo(P,Z.A_bigint_literal_cannot_be_used_as_a_property_name)),Y=4;break;case 175:Y=8;break;case 178:Y=1;break;case 179:Y=2;break;default:pe.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!m){let oe=J8t(P);if(oe===void 0)continue;let Be=v.get(oe);if(!Be)v.set(oe,Y);else if(Y&8&&Be&8)os(P,Z.Duplicate_identifier_0,xp(P));else if(Y&4&&Be&4)os(P,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,xp(P));else if(Y&3&&Be&3)if(Be!==3&&Y!==Be)v.set(oe,Y|Be);else return os(P,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return os(P,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function b8s(u){E8s(u.tagName),kOe(u,u.typeArguments);let m=new Map;for(let v of u.attributes.properties){if(v.kind===294)continue;let{name:D,initializer:P}=v,Y=cz(D);if(!m.get(Y))m.set(Y,!0);else return os(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(P&&P.kind===295&&!P.expression)return os(P,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function E8s(u){if(jo(u)&&eR(u.expression))return os(u.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(eR(u)&&RAe(Te)&&!eU(u.namespace.escapedText))return os(u,Z.React_components_cannot_include_JSX_namespace_names)}function S8s(u){if(u.expression&&Ade(u.expression))return os(u.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function z0n(u){if(fZ(u))return!0;if(u.kind===251&&u.awaitModifier&&!(u.flags&65536)){let m=ms(u);if(Mge(u)){if(!bW(m))switch(g3(m,Te)||PA.add(mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),We){case 100:case 101:case 102:case 199:if(m.impliedNodeFormat===1){PA.add(mo(u.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:PA.add(mo(u.awaitModifier,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!bW(m)){let v=mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=A1(u);if(D&&D.kind!==177){pe.assert((SI(D)&2)===0,"Enclosing function should never be an async function.");let P=mo(D,Z.Did_you_mean_to_mark_this_function_as_async);lg(v,P)}return PA.add(v),!0}}if(iEe(u)&&!(u.flags&65536)&&Ir(u.initializer)&&u.initializer.escapedText==="async")return os(u.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(u.initializer.kind===262){let m=u.initializer;if(!X8t(m)){let v=m.declarations;if(!v.length)return!1;if(v.length>1){let P=u.kind===250?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return XC(m.declarations[1],P)}let D=v[0];if(D.initializer){let P=u.kind===250?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return os(D.name,P)}if(D.type){let P=u.kind===250?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return os(D,P)}}}return!1}function v8s(u){if(!(u.flags&33554432)&&u.parent.kind!==188&&u.parent.kind!==265){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.body===void 0&&!Ga(u,64))return M5(u,u.end-1,1,Z._0_expected,"{")}if(u.body){if(Ga(u,64))return os(u,Z.An_abstract_accessor_cannot_have_an_implementation);if(u.parent.kind===188||u.parent.kind===265)return os(u.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(u.typeParameters)return os(u.name,Z.An_accessor_cannot_have_type_parameters);if(!B8s(u))return os(u.name,u.kind===178?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(u.kind===179){if(u.type)return os(u.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let m=pe.checkDefined(L7(u),"Return value does not match parameter count assertion.");if(m.dotDotDotToken)return os(m.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(m.questionToken)return os(m.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(m.initializer)return os(u.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function B8s(u){return Q8t(u)||u.parameters.length===(u.kind===178?0:1)}function Q8t(u){if(u.parameters.length===(u.kind===178?1:2))return vP(u)}function w8s(u){if(u.operator===158){if(u.type.kind!==155)return os(u.type,Z._0_expected,Vi(155));let m=pne(u.parent);if(wo(m)&&W3(m)){let v=bP(m);v&&(m=m3(v)||v)}switch(m.kind){case 261:let v=m;if(v.name.kind!==80)return os(u,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!h7(v))return os(u,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(v.parent.flags&2))return os(m.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 173:if(!cg(m)||!b3(m))return os(m.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 172:if(!Ga(m,8))return os(m.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return os(u,Z.unique_symbol_types_are_not_allowed_here)}}else if(u.operator===148&&u.type.kind!==189&&u.type.kind!==190)return XC(u,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,Vi(155))}function ife(u,m){if(xfn(u)&&!Od(Yg(u)?QA(u.argumentExpression):u.expression))return os(u,m)}function q0n(u){if(Vat(u))return!0;if(u.kind===175){if(u.parent.kind===211){if(u.modifiers&&!(u.modifiers.length===1&&ma(u.modifiers).kind===134))return XC(u,Z.Modifiers_cannot_appear_here);if(Y8t(u.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(j0n(u.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(u.body===void 0)return M5(u,u.end-1,1,Z._0_expected,"{")}if(H8t(u))return!0}if(xa(u.parent)){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.flags&33554432)return ife(u.name,Z.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.kind===175&&!u.body)return ife(u.name,Z.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(u.parent.kind===265)return ife(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.parent.kind===188)return ife(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function T8s(u){let m=u;for(;m;){if(s3(m))return os(u,Z.Jump_target_cannot_cross_function_boundary);switch(m.kind){case 257:if(u.label&&m.label.escapedText===u.label.escapedText)return u.kind===252&&!VT(m.statement,!0)?os(u,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 256:if(u.kind===253&&!u.label)return!1;break;default:if(VT(m,!1)&&!u.label)return!1;break}m=m.parent}if(u.label){let v=u.kind===253?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return os(u,v)}else{let v=u.kind===253?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return os(u,v)}}function R8s(u){if(u.dotDotDotToken){let m=u.parent.elements;if(u!==Ei(m))return os(u,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(Wq(m,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),u.propertyName)return os(u.name,Z.A_rest_element_cannot_have_a_property_name)}if(u.dotDotDotToken&&u.initializer)return M5(u,u.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function $0n(u){return d1(u)||u.kind===225&&u.operator===41&&u.operand.kind===9}function N8s(u){return u.kind===10||u.kind===225&&u.operator===41&&u.operand.kind===10}function D8s(u){if((jo(u)||Yg(u)&&$0n(u.argumentExpression))&&Od(u.expression))return!!(RI(u).flags&1056)}function eyn(u){let m=u.initializer;if(m){let v=!($0n(m)||D8s(m)||m.kind===112||m.kind===97||N8s(m));if((hf(u)||nc(u)&&cSe(u))&&!u.type){if(v)return os(m,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return os(m,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function k8s(u){let m=jQ(u),v=m&7;if(Nu(u.name))switch(v){case 6:return os(u,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return os(u,Z._0_declarations_may_not_have_binding_patterns,"using")}if(u.parent.parent.kind!==250&&u.parent.parent.kind!==251){if(m&33554432)eyn(u);else if(!u.initializer){if(Nu(u.name)&&!Nu(u.parent))return os(u,Z.A_destructuring_declaration_must_have_an_initializer);switch(v){case 6:return os(u,Z._0_declarations_must_be_initialized,"await using");case 4:return os(u,Z._0_declarations_must_be_initialized,"using");case 2:return os(u,Z._0_declarations_must_be_initialized,"const")}}}if(u.exclamationToken&&(u.parent.parent.kind!==244||!u.type||u.initializer||m&33554432)){let D=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,D)}return s.getEmitModuleFormatOfFile(ms(u))<4&&!(u.parent.parent.flags&33554432)&&Ga(u.parent.parent,32)&&tyn(u.name),!!v&&ryn(u.name)}function tyn(u){if(u.kind===80){if(Vo(u)==="__esModule")return F8s("noEmit",u,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let m=u.elements;for(let v of m)if(!yp(v))return tyn(v.name)}return!1}function ryn(u){if(u.kind===80){if(u.escapedText==="let")return os(u,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let m=u.elements;for(let v of m)yp(v)||ryn(v.name)}return!1}function X8t(u){let m=u.declarations;if(Wq(u.declarations))return!0;if(!u.declarations.length)return M5(u,m.pos,m.end-m.pos,Z.Variable_declaration_list_cannot_be_empty);let v=u.flags&7;if(v===4||v===6){if(KLe(u.parent))return os(u,v===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration);if(u.flags&33554432)return os(u,v===4?Z.using_declarations_are_not_allowed_in_ambient_contexts:Z.await_using_declarations_are_not_allowed_in_ambient_contexts);if(v===6)return C_n(u)}return!1}function Wat(u){switch(u.kind){case 246:case 247:case 248:case 255:case 249:case 250:case 251:return!1;case 257:return Wat(u.parent)}return!0}function x8s(u){if(!Wat(u.parent)){let m=jQ(u.declarationList)&7;if(m){let v=m===1?"let":m===2?"const":m===4?"using":m===6?"await using":pe.fail("Unknown BlockScope flag");Sr(u,Z._0_declarations_can_only_be_declared_inside_a_block,v)}}}function G8s(u){let m=u.name.escapedText;switch(u.keywordToken){case 105:if(m!=="target")return os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"target");break;case 102:if(m!=="meta"){let v=Zl(u.parent)&&u.parent.expression===u;if(m==="defer"){if(!v)return M5(u,u.end,0,Z._0_expected,"(")}else return v?os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer,Bc(u.name.escapedText)):os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"meta")}break}}function bW(u){return u.parseDiagnostics.length>0}function XC(u,m,...v){let D=ms(u);if(!bW(D)){let P=rs(D,u.pos);return PA.add(qh(D,P.start,P.length,m,...v)),!0}return!1}function M5(u,m,v,D,...P){let Y=ms(u);return bW(Y)?!1:(PA.add(qh(Y,m,v,D,...P)),!0)}function F8s(u,m,v,...D){let P=ms(m);return bW(P)?!1:(l9(u,m,v,...D),!0)}function os(u,m,...v){let D=ms(u);return bW(D)?!1:(Sr(u,m,...v),!0)}function Z8s(u){let m=wo(u)?uAe(u):void 0,v=u.typeParameters||m&&Nc(m);if(v){let D=v.pos===v.end?v.pos:Yu(ms(u).text,v.pos);return M5(u,D,v.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function L8s(u){let m=u.type||xb(u);if(m)return os(m,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function V8s(u){if(Un(u.name)&&fo(u.name.expression)&&u.name.expression.operatorToken.kind===103)return os(u.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(xa(u.parent)){if(Zg(u.name)&&u.name.text==="constructor")return os(u.name,Z.Classes_may_not_have_a_field_named_constructor);if(ife(u.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Ze<2&&t0(u)&&!(u.flags&33554432))return os(u.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(t0(u)&&Y8t(u.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(u.parent.kind===265){if(ife(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(mh(u.parent)){if(ife(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(u.flags&33554432&&eyn(u),pi(u)&&u.exclamationToken&&(!xa(u.parent)||!u.type||u.initializer||u.flags&33554432||cg(u)||wP(u))){let m=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,m)}}function P8s(u){return u.kind===265||u.kind===266||u.kind===273||u.kind===272||u.kind===279||u.kind===278||u.kind===271||Ga(u,2208)?!1:XC(u,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function W8s(u){for(let m of u.statements)if((jh(m)||m.kind===244)&&P8s(m))return!0;return!1}function nyn(u){return!!(u.flags&33554432)&&W8s(u)}function fZ(u){if(u.flags&33554432){if(!sa(u).hasReportedStatementInAmbientContext&&(bu(u.parent)||yB(u.parent)))return sa(u).hasReportedStatementInAmbientContext=XC(u,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(u.parent.kind===242||u.parent.kind===269||u.parent.kind===308){let v=sa(u.parent);if(!v.hasReportedStatementInAmbientContext)return v.hasReportedStatementInAmbientContext=XC(u,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function iyn(u){let m=xp(u).includes("."),v=u.numericLiteralFlags&16;m||v||+u.text<=2**53-1||Hx(!1,mo(u,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function O8s(u){return!!(!(EE(u.parent)||T0(u.parent)&&EE(u.parent.parent))&&!(u.flags&33554432)&&Ze<7&&os(u,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function M8s(u,m,...v){let D=ms(u);if(!bW(D)){let P=rs(D,u.pos);return PA.add(qh(D,Rs(P),0,m,...v)),!0}return!1}function H8s(){return m2||(m2=[],Gr.forEach((u,m)=>{hOt.test(m)&&m2.push(u)})),m2}function Y8s(u){var m,v;if(u.phaseModifier===156){if(u.name&&u.namedBindings)return os(u,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);if(((m=u.namedBindings)==null?void 0:m.kind)===276)return syn(u.namedBindings)}else if(u.phaseModifier===166){if(u.name)return os(u,Z.Default_imports_are_not_allowed_in_a_deferred_import);if(((v=u.namedBindings)==null?void 0:v.kind)===276)return os(u,Z.Named_imports_are_not_allowed_in_a_deferred_import);if(We!==99&&We!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}return!1}function syn(u){return!!F(u.elements,m=>{if(m.isTypeOnly)return XC(m,m.kind===277?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function Q8s(u){if(Te.verbatimModuleSyntax&&We===1)return os(u,XU(u));if(u.expression.kind===237){if(We!==99&&We!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}else if(We===5)return os(u,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext);if(u.typeArguments)return os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let m=u.arguments;if(!(100<=We&&We<=199)&&We!==99&&We!==200&&(Wq(m),m.length>1)){let D=m[1];return os(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve)}if(m.length===0||m.length>2)return os(u,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let v=de(m,of);return v?os(v,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function X8s(u,m){let v=la(u);if(v&20&&m.flags&1048576)return de(m.types,D=>{if(D.flags&524288){let P=v&la(D);if(P&4)return u.target===D.target;if(P&16)return!!u.aliasSymbol&&u.aliasSymbol===D.aliasSymbol}return!1})}function J8s(u,m){if(la(u)&128&&kv(m,T9))return de(m.types,v=>!T9(v))}function U8s(u,m){let v=0;if(tg(u,v).length>0||(v=1,tg(u,v).length>0))return de(m.types,P=>tg(P,v).length>0)}function K8s(u,m){let v;if(!(u.flags&406978556)){let D=0;for(let P of m.types)if(!(P.flags&406978556)){let Y=Kg([ON(u),ON(P)]);if(Y.flags&4194304)return P;if(IR(Y)||Y.flags&1048576){let oe=Y.flags&1048576?ct(Y.types,IR):1;oe>=D&&(v=P,D=oe)}}}return v}function j8s(u){if(ah(u,67108864)){let m=nm(u,v=>!(v.flags&402784252));if(!(m.flags&131072))return m}return u}function oyn(u,m,v){if(m.flags&1048576&&u.flags&2621440){let D=amn(m,u);if(D)return D;let P=Gd(u);if(P){let Y=omn(P,m);if(Y){let oe=RUt(m,At(Y,Be=>[()=>Io(Be),Be.escapedName]),v);if(oe!==m)return oe}}}}function J8t(u){let m=_3(u);return m||(Un(u)?tKt(P_(u.expression)):void 0)}function Oat(u){return Zi===u||(Zi=u,Ns=Hc(u)),Ns}function jQ(u){return mn===u||(mn=u,jn=dm(u)),jn}function cSe(u){let m=jQ(u)&7;return m===2||m===4||m===6}function z8s(u,m){let v=Te.importHelpers?1:0,D=u?.imports[v];return D&&pe.assert(sp(D)&&D.text===m,`Expected sourceFile.imports[${v}] to be the synthesized JSX runtime import`),D}function q8s(u){pe.assert(Te.importHelpers,"Expected importHelpers to be enabled");let m=u.imports[0];return pe.assert(m&&sp(m)&&m.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),m}}function Gvs(s){return!yB(s)}function Etn(s){return s.kind!==263&&s.kind!==175||!!s.body}function Stn(s){switch(s.parent.kind){case 277:case 282:return Ir(s)||s.kind===11;default:return HT(s)}}var lS;(s=>{s.JSX="JSX",s.IntrinsicElements="IntrinsicElements",s.ElementClass="ElementClass",s.ElementAttributesPropertyNameContainer="ElementAttributesProperty",s.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",s.Element="Element",s.ElementType="ElementType",s.IntrinsicAttributes="IntrinsicAttributes",s.IntrinsicClassAttributes="IntrinsicClassAttributes",s.LibraryManagedAttributes="LibraryManagedAttributes"})(lS||(lS={}));var Tet;(s=>{s.Fragment="Fragment"})(Tet||(Tet={}));function vtn(s){switch(s){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function D0(s){return!!(s.flags&1)}function Btn(s){return!!(s.flags&2)}function Fvs(s){return{getCommonSourceDirectory:s.getCommonSourceDirectory?()=>s.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>s.getCurrentDirectory(),getSymlinkCache:$i(s,s.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=s.getPackageJsonInfoCache)==null?void 0:c.call(s)},useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames(),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:c=>s.getRedirectFromSourceFile(c),isSourceOfProjectReferenceRedirect:c=>s.isSourceOfProjectReferenceRedirect(c),fileExists:c=>s.fileExists(c),getFileIncludeReasons:()=>s.getFileIncludeReasons(),readFile:s.readFile?c=>s.readFile(c):void 0,getDefaultResolutionModeForFile:c=>s.getDefaultResolutionModeForFile(c),getModeForResolutionAtIndex:(c,g)=>s.getModeForResolutionAtIndex(c,g),getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)}}var _Ot=class YDi{constructor(c,g,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var h;g instanceof YDi;)g=g.inner;this.inner=g,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((h=this.inner)!=null&&h.trackSymbol)}trackSymbol(c,g,d){var h,_;if((h=this.inner)!=null&&h.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,g,d))return this.onDiagnosticReported(),!0;c.flags&262144||((_=this.context).trackedSymbols??(_.trackedSymbols=[])).push([c,g,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var g;(g=this.inner)!=null&&g.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var g;(g=this.inner)!=null&&g.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,g,d){var h;(h=this.inner)!=null&&h.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,g,d))}reportNonSerializableProperty(c){var g;(g=this.inner)!=null&&g.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var g;(g=this.inner)!=null&&g.reportInferenceFallback&&!this.context.suppressReportInferenceFallback&&(this.onDiagnosticReported(),this.inner.reportInferenceFallback(c))}pushErrorFallbackNode(c){var g,d;return(d=(g=this.inner)==null?void 0:g.pushErrorFallbackNode)==null?void 0:d.call(g,c)}popErrorFallbackNode(){var c,g;return(g=(c=this.inner)==null?void 0:c.popErrorFallbackNode)==null?void 0:g.call(c)}};function Mr(s,c,g,d){if(s===void 0)return s;let h=c(s),_;if(h!==void 0)return Ki(h)?_=(d||Ovs)(h):_=h,pe.assertNode(_,g),_}function Ws(s,c,g,d,h){if(s===void 0)return s;let _=s.length;(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d);let S,R=-1,T=-1;d>0||h<_?S=s.hasTrailingComma&&d+h===_:(R=s.pos,T=s.end,S=s.hasTrailingComma);let W=wtn(s,c,g,d,h);if(W!==s){let V=me.createNodeArray(W,S);return TB(V,R,T),V}return s}function Ede(s,c,g,d,h){if(s===void 0)return s;let _=s.length;return(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d),wtn(s,c,g,d,h)}function wtn(s,c,g,d,h){let _,S=s.length;(d>0||h=2&&(h=Zvs(h,g)),g.setLexicalEnvironmentFlags(1,!1)),g.suspendLexicalEnvironment(),h}function Zvs(s,c){let g;for(let d=0;d{let S=dR,addSource:Rt,setSourceContent:Lt,addName:Ke,addMapping:Gt,appendSourceMap:nt,toJSON:dt,toString:()=>JSON.stringify(dt())};function Rt(st){_();let ir=Of(d,st,s.getCurrentDirectory(),s.getCanonicalFileName,!0),zt=W.get(ir);return zt===void 0&&(zt=T.length,T.push(ir),R.push(st),W.set(ir,zt)),S(),zt}function Lt(st,ir){if(_(),ir!==null){for(V||(V=[]);V.lengthir||Tt===ir&&ot>zt)}function Gt(st,ir,zt,Ht,Br,mn){pe.assert(st>=Ue,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),pe.assert(zt===void 0||zt>=0,"sourceIndex cannot be negative"),pe.assert(Ht===void 0||Ht>=0,"sourceLine cannot be negative"),pe.assert(Br===void 0||Br>=0,"sourceCharacter cannot be negative"),_(),(Pt(st,ir)||_r(zt,Ht,Br))&&(ur(),Ue=st,$e=ir,ht=!1,_t=!1,mt=!0),zt!==void 0&&Ht!==void 0&&Br!==void 0&&(Ye=zt,Tt=Ht,ot=Br,ht=!0,mn!==void 0&&(Qe=mn,_t=!0)),S()}function nt(st,ir,zt,Ht,Br,mn){pe.assert(st>=Ue,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),_();let jn=[],Zi,Ns=xet(zt.mappings);for(let An of Ns){if(mn&&(An.generatedLine>mn.line||An.generatedLine===mn.line&&An.generatedCharacter>mn.character))break;if(Br&&(An.generatedLine=1024&&Gr()}function ur(){if(!(!mt||!Dt())){if(_(),Ie0&&(ge+=String.fromCharCode.apply(void 0,re),re.length=0)}function dt(){return ur(),Gr(),{version:3,file:c,sourceRoot:g,sources:T,names:M,mappings:ge,sourcesContent:V}}function pr(st){st<0?st=(-st<<1)+1:st=st<<1;do{let ir=st&31;st=st>>5,st>0&&(ir=ir|32),tr(Yvs(ir))}while(st>0)}}var bOt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,Net=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,Det=/^\s*(\/\/[@#] .*)?$/;function ket(s,c){return{getLineCount:()=>c.length,getLineText:g=>s.substring(c[g],c[g+1])}}function EOt(s){for(let c=s.getLineCount()-1;c>=0;c--){let g=s.getLineText(c),d=Net.exec(g);if(d)return d[1].trimEnd();if(!g.match(Det))break}}function Mvs(s){return typeof s=="string"||s===null}function Hvs(s){return s!==null&&typeof s=="object"&&s.version===3&&typeof s.file=="string"&&typeof s.mappings=="string"&&Ki(s.sources)&&ue(s.sources,Xs)&&(s.sourceRoot===void 0||s.sourceRoot===null||typeof s.sourceRoot=="string")&&(s.sourcesContent===void 0||s.sourcesContent===null||Ki(s.sourcesContent)&&ue(s.sourcesContent,Mvs))&&(s.names===void 0||s.names===null||Ki(s.names)&&ue(s.names,Xs))}function SOt(s){try{let c=JSON.parse(s);if(Hvs(c))return c}catch{}}function xet(s){let c=!1,g=0,d=0,h=0,_=0,S=0,R=0,T=0,W;return{get pos(){return g},get error(){return W},get state(){return V(!0,!0)},next(){for(;!c&&g=s.length)return ee("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Ze=Qvs(s.charCodeAt(g));if(Ze===-1)return ee("Invalid character in VLQ"),-1;Ee=(Ze&32)!==0,Te=Te|(Ze&31)<>1,Te=-Te):Te=Te>>1,Te}}function Ttn(s,c){return s===c||s.generatedLine===c.generatedLine&&s.generatedCharacter===c.generatedCharacter&&s.sourceIndex===c.sourceIndex&&s.sourceLine===c.sourceLine&&s.sourceCharacter===c.sourceCharacter&&s.nameIndex===c.nameIndex}function vOt(s){return s.sourceIndex!==void 0&&s.sourceLine!==void 0&&s.sourceCharacter!==void 0}function Yvs(s){return s>=0&&s<26?65+s:s>=26&&s<52?97+s-26:s>=52&&s<62?48+s-52:s===62?43:s===63?47:pe.fail(`${s}: not a base64 value`)}function Qvs(s){return s>=65&&s<=90?s-65:s>=97&&s<=122?s-97+26:s>=48&&s<=57?s-48+52:s===43?62:s===47?63:-1}function Rtn(s){return s.sourceIndex!==void 0&&s.sourcePosition!==void 0}function Ntn(s,c){return s.generatedPosition===c.generatedPosition&&s.sourceIndex===c.sourceIndex&&s.sourcePosition===c.sourcePosition}function Xvs(s,c){return pe.assert(s.sourceIndex===c.sourceIndex),Zt(s.sourcePosition,c.sourcePosition)}function Jvs(s,c){return Zt(s.generatedPosition,c.generatedPosition)}function Uvs(s){return s.sourcePosition}function Kvs(s){return s.generatedPosition}function BOt(s,c,g){let d=Mo(g),h=c.sourceRoot?Xc(c.sourceRoot,d):d,_=Xc(c.file,d),S=s.getSourceFileLike(_),R=c.sources.map(Ne=>Xc(Ne,h)),T=new Map(R.map((Ne,Te)=>[s.getCanonicalFileName(Ne),Te])),W,V,M;return{getSourcePosition:Ee,getGeneratedPosition:_e};function ee(Ne){let Te=S!==void 0?th(S,Ne.generatedLine,Ne.generatedCharacter,!0):-1,Ze,We;if(vOt(Ne)){let Ue=s.getSourceFileLike(R[Ne.sourceIndex]);Ze=c.sources[Ne.sourceIndex],We=Ue!==void 0?th(Ue,Ne.sourceLine,Ne.sourceCharacter,!0):-1}return{generatedPosition:Te,source:Ze,sourceIndex:Ne.sourceIndex,sourcePosition:We,nameIndex:Ne.nameIndex}}function re(){if(W===void 0){let Ne=xet(c.mappings),Te=Do(Ne,ee);Ne.error!==void 0?(s.log&&s.log(`Encountered error while decoding sourcemap: ${Ne.error}`),W=E):W=Te}return W}function ge(Ne){if(M===void 0){let Te=[];for(let Ze of re()){if(!Rtn(Ze))continue;let We=Te[Ze.sourceIndex];We||(Te[Ze.sourceIndex]=We=[]),We.push(Ze)}M=Te.map(Ze=>cl(Ze,Xvs,Ntn))}return M[Ne]}function Ie(){if(V===void 0){let Ne=[];for(let Te of re())Ne.push(Te);V=cl(Ne,Jvs,Ntn)}return V}function _e(Ne){let Te=T.get(s.getCanonicalFileName(Ne.fileName));if(Te===void 0)return Ne;let Ze=ge(Te);if(!jt(Ze))return Ne;let We=Sg(Ze,Ne.pos,Uvs,Zt);We<0&&(We=~We);let Ue=Ze[We];return Ue===void 0||Ue.sourceIndex!==Te?Ne:{fileName:_,pos:Ue.generatedPosition}}function Ee(Ne){let Te=Ie();if(!jt(Te))return Ne;let Ze=Sg(Te,Ne.pos,Kvs,Zt);Ze<0&&(Ze=~Ze);let We=Te[Ze];return We===void 0||!Rtn(We)?Ne:{fileName:R[We.sourceIndex],pos:We.sourcePosition}}}var Get={getSourcePosition:Fl,getGeneratedPosition:Fl};function Wy(s){return s=Dd(s),s?rd(s):0}function Dtn(s){return!s||!yN(s)&&!mv(s)?!1:jt(s.elements,ktn)}function ktn(s){return lv(s.propertyName||s.name)}function rR(s,c){return g;function g(h){return h.kind===308?c(h):d(h)}function d(h){return s.factory.createBundle(At(h.sourceFiles,c))}}function wOt(s){return!!JJ(s)}function W9e(s){if(JJ(s))return!0;let c=s.importClause&&s.importClause.namedBindings;if(!c||!yN(c))return!1;let g=0;for(let d of c.elements)ktn(d)&&g++;return g>0&&g!==c.elements.length||!!(c.elements.length-g)&&h3(s)}function Fet(s){return!W9e(s)&&(h3(s)||!!s.importClause&&yN(s.importClause.namedBindings)&&Dtn(s.importClause.namedBindings))}function Zet(s,c){let g=s.getEmitResolver(),d=s.getCompilerOptions(),h=[],_=new jvs,S=[],R=new Map,T=new Set,W,V=!1,M,ee=!1,re=!1,ge=!1;for(let Ne of c.statements)switch(Ne.kind){case 273:h.push(Ne),!re&&W9e(Ne)&&(re=!0),!ge&&Fet(Ne)&&(ge=!0);break;case 272:Ne.moduleReference.kind===284&&h.push(Ne);break;case 279:if(Ne.moduleSpecifier)if(!Ne.exportClause)h.push(Ne),ee=!0;else if(h.push(Ne),mv(Ne.exportClause))_e(Ne),ge||(ge=Dtn(Ne.exportClause));else{let Te=Ne.exportClause.name,Ze=HD(Te);R.get(Ze)||(Sde(S,Wy(Ne),Te),R.set(Ze,!0),W=Ft(W,Te)),re=!0}else _e(Ne);break;case 278:Ne.isExportEquals&&!M&&(M=Ne);break;case 244:if(Ga(Ne,32))for(let Te of Ne.declarationList.declarations)W=xtn(Te,R,W,S);break;case 263:Ga(Ne,32)&&Ee(Ne,void 0,Ga(Ne,2048));break;case 264:if(Ga(Ne,32))if(Ga(Ne,2048))V||(Sde(S,Wy(Ne),s.factory.getDeclarationName(Ne)),V=!0);else{let Te=Ne.name;Te&&!R.get(Vo(Te))&&(Sde(S,Wy(Ne),Te),R.set(Vo(Te),!0),W=Ft(W,Te))}break}let Ie=T$e(s.factory,s.getEmitHelperFactory(),c,d,ee,re,ge);return Ie&&h.unshift(Ie),{externalImports:h,exportSpecifiers:_,exportEquals:M,hasExportStarsToExportValues:ee,exportedBindings:S,exportedNames:W,exportedFunctions:T,externalHelpersImportDeclaration:Ie};function _e(Ne){for(let Te of Ma(Ne.exportClause,mv).elements){let Ze=HD(Te.name);if(!R.get(Ze)){let We=Te.propertyName||Te.name;if(We.kind!==11){Ne.moduleSpecifier||_.add(We,Te);let Ue=g.getReferencedImportDeclaration(We)||g.getReferencedValueDeclaration(We);if(Ue){if(Ue.kind===263){Ee(Ue,Te.name,lv(Te.name));continue}Sde(S,Wy(Ue),Te.name)}}R.set(Ze,!0),W=Ft(W,Te.name)}}}function Ee(Ne,Te,Ze){if(T.add(Dd(Ne,ih)),Ze)V||(Sde(S,Wy(Ne),Te??s.factory.getDeclarationName(Ne)),V=!0);else{Te??(Te=Ne.name);let We=HD(Te);R.get(We)||(Sde(S,Wy(Ne),Te),R.set(We,!0))}}}function xtn(s,c,g,d){if(Nu(s.name))for(let h of s.name.elements)yp(h)||(g=xtn(h,c,g,d));else if(!kp(s.name)){let h=Vo(s.name);c.get(h)||(c.set(h,!0),g=Ft(g,s.name),VF(s.name)&&Sde(d,Wy(s),s.name))}return g}function Sde(s,c,g){let d=s[c];return d?d.push(g):s[c]=d=[g],d}var kie=class Gce{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(Gce.toKey(c))}get(c){return this._map.get(Gce.toKey(c))}set(c,g){return this._map.set(Gce.toKey(c),g),this}delete(c){var g;return((g=this._map)==null?void 0:g.delete(Gce.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(TL(c)||kp(c)){let g=c.emitNode.autoGenerate;if((g.flags&7)===4){let d=pEe(c),h=_w(d)&&d!==c?Gce.toKey(d):`(generated@${rd(d)})`;return M3(!1,g.prefix,h,g.suffix,Gce.toKey)}else{let d=`(auto@${g.id})`;return M3(!1,g.prefix,d,g.suffix,Gce.toKey)}}return p(c)?Vo(c).slice(1):Vo(c)}},jvs=class extends kie{add(s,c){let g=this.get(s);return g?g.push(c):this.set(s,g=[c]),g}remove(s,c){let g=this.get(s);g&&(ef(g,c),g.length||this.delete(s))}};function lQ(s){return mA(s)||s.kind===9||v0(s.kind)||Ir(s)}function BN(s){return!Ir(s)&&lQ(s)}function vde(s){return s>=65&&s<=79}function Bde(s){switch(s){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function O9e(s){if(!VC(s))return;let c=QA(s.expression);return Dy(c)?c:void 0}function Gtn(s,c,g){for(let d=c;dqvs(d,c,g))}function zvs(s){return $vs(s)||fl(s)}function H9e(s){return Me(s.members,zvs)}function qvs(s,c,g){return pi(s)&&(!!s.initializer||!c)&&zh(s)===g}function $vs(s){return pi(s)&&zh(s)}function GEe(s){return s.kind===173&&s.initializer!==void 0}function TOt(s){return!cg(s)&&(NL(s)||t0(s))&&p(s.name)}function ROt(s){let c;if(s){let g=s.parameters,d=g.length>0&&SF(g[0]),h=d?1:0,_=d?g.length-1:g.length;for(let S=0;S<_;S++){let R=g[S+h];(c||p1(R))&&(c||(c=new Array(_)),c[S]=Rb(R))}}return c}function Vet(s,c){let g=Rb(s),d=c?ROt(lN(s)):void 0;if(!(!jt(g)&&!jt(d)))return{decorators:g,parameters:d}}function Y9e(s,c,g){switch(s.kind){case 178:case 179:return g?eBs(s,c,!0):Ftn(s,!1);case 175:return Ftn(s,g);case 173:return tBs(s);default:return}}function eBs(s,c,g){if(!s.body)return;let{firstAccessor:d,secondAccessor:h,getAccessor:_,setAccessor:S}=BP(c.members,s),R=p1(d)?d:h&&p1(h)?h:void 0;if(!R||s!==R)return;let T=Rb(R),W=g?ROt(S):void 0;if(!(!jt(T)&&!jt(W)))return{decorators:T,parameters:W,getDecorators:_&&Rb(_),setDecorators:S&&Rb(S)}}function Ftn(s,c){if(!s.body)return;let g=Rb(s),d=c?ROt(s):void 0;if(!(!jt(g)&&!jt(d)))return{decorators:g,parameters:d}}function tBs(s){let c=Rb(s);if(jt(c))return{decorators:c}}function rBs(s,c){for(;s;){let g=c(s);if(g!==void 0)return g;s=s.previous}}function NOt(s){return{data:s}}function Pet(s,c){var g,d;return TL(c)?(g=s?.generatedIdentifiers)==null?void 0:g.get(pEe(c)):(d=s?.identifiers)==null?void 0:d.get(c.escapedText)}function wU(s,c,g){TL(c)?(s.generatedIdentifiers??(s.generatedIdentifiers=new Map),s.generatedIdentifiers.set(pEe(c),g)):(s.identifiers??(s.identifiers=new Map),s.identifiers.set(c.escapedText,g))}function DOt(s,c){return rBs(s,g=>Pet(g.privateEnv,c))}function nBs(s){return!s.initializer&&Ir(s.name)}function FEe(s){return ue(s,nBs)}function Nz(s,c){if(!s||!Zg(s)||!une(s.text,c))return s;let g=fN(s.text,MEe(s.text,c));return g!==s.text?ua(gn(me.createStringLiteral(g,s.singleQuote),s),s):s}var kOt=(s=>(s[s.All=0]="All",s[s.ObjectRest=1]="ObjectRest",s))(kOt||{});function TU(s,c,g,d,h,_){let S=s,R;if(Dx(s))for(R=s.right;HZe(s.left)||rbe(s.left);)if(Dx(R))S=s=R,R=s.right;else return pe.checkDefined(Mr(R,c,un));let T,W={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:V,emitBindingOrAssignment:M,createArrayBindingOrAssignmentPattern:ee=>gBs(g.factory,ee),createObjectBindingOrAssignmentPattern:ee=>dBs(g.factory,ee),createArrayBindingOrAssignmentElement:fBs,visitor:c};if(R&&(R=Mr(R,c,un),pe.assert(R),Ir(R)&&xOt(s,R.escapedText)||GOt(s)?R=Dz(W,R,!1,S):h?R=Dz(W,R,!0,S):sp(s)&&(S=R)),wde(W,s,R,S,Dx(s)),R&&h){if(!jt(T))return R;T.push(R)}return g.factory.inlineExpressions(T)||g.factory.createOmittedExpression();function V(ee){T=Ft(T,ee)}function M(ee,re,ge,Ie){pe.assertNode(ee,_?Ir:un);let _e=_?_(ee,re,ge):gn(g.factory.createAssignment(pe.checkDefined(Mr(ee,c,un)),re),ge);_e.original=Ie,V(_e)}}function xOt(s,c){let g=ZP(s);return yJ(g)?iBs(g,c):Ir(g)?g.escapedText===c:!1}function iBs(s,c){let g=bie(s);for(let d of g)if(xOt(d,c))return!0;return!1}function GOt(s){let c=a9e(s);if(c&&Un(c)&&!wL(c.expression))return!0;let g=ZP(s);return!!g&&yJ(g)&&sBs(g)}function sBs(s){return!!F(bie(s),GOt)}function uQ(s,c,g,d,h,_=!1,S){let R,T=[],W=[],V={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:_,emitExpression:M,emitBindingOrAssignment:ee,createArrayBindingOrAssignmentPattern:re=>uBs(g.factory,re),createObjectBindingOrAssignmentPattern:re=>ABs(g.factory,re),createArrayBindingOrAssignmentElement:re=>pBs(g.factory,re),visitor:c};if(nc(s)){let re=AEe(s);re&&(Ir(re)&&xOt(s,re.escapedText)||GOt(s))&&(re=Dz(V,pe.checkDefined(Mr(re,V.visitor,un)),!1,re),s=g.factory.updateVariableDeclaration(s,s.name,void 0,void 0,re))}if(wde(V,s,h,s,S),R){let re=g.factory.createTempVariable(void 0);if(_){let ge=g.factory.inlineExpressions(R);R=void 0,ee(re,ge,void 0,void 0)}else{g.hoistVariableDeclaration(re);let ge=Ei(T);ge.pendingExpressions=Ft(ge.pendingExpressions,g.factory.createAssignment(re,ge.value)),Or(ge.pendingExpressions,R),ge.value=re}}for(let{pendingExpressions:re,name:ge,value:Ie,location:_e,original:Ee}of T){let Ne=g.factory.createVariableDeclaration(ge,void 0,void 0,re?g.factory.inlineExpressions(Ft(re,Ie)):Ie);Ne.original=Ee,gn(Ne,_e),W.push(Ne)}return W;function M(re){R=Ft(R,re)}function ee(re,ge,Ie,_e){pe.assertNode(re,RL),R&&(ge=g.factory.inlineExpressions(Ft(R,ge)),R=void 0),T.push({pendingExpressions:R,name:re,value:ge,location:Ie,original:_e})}}function wde(s,c,g,d,h){let _=ZP(c);if(!h){let S=Mr(AEe(c),s.visitor,un);S?g?(g=cBs(s,g,S,d),!BN(S)&&yJ(_)&&(g=Dz(s,g,!0,d))):g=S:g||(g=s.context.factory.createVoidZero())}bJ(_)?oBs(s,c,_,g,d):Bre(_)?aBs(s,c,_,g,d):s.emitBindingOrAssignment(_,g,d,c)}function oBs(s,c,g,d,h){let _=bie(g),S=_.length;if(S!==1){let W=!uP(c)||S!==0;d=Dz(s,d,W,h)}let R,T;for(let W=0;W=1&&!(V.transformFlags&98304)&&!(ZP(V).transformFlags&98304)&&!Un(M))R=Ft(R,Mr(V,s.visitor,_J));else{R&&(s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g),R=void 0);let ee=lBs(s,d,M);Un(M)&&(T=Ft(T,ee.argumentExpression)),wde(s,V,ee,V)}}}R&&s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g)}function aBs(s,c,g,d,h){let _=bie(g),S=_.length;if(s.level<1&&s.downlevelIteration)d=Dz(s,gn(s.context.getEmitHelperFactory().createReadHelper(d,S>0&&o9e(_[S-1])?void 0:S),h),!1,h);else if(S!==1&&(s.level<1||S===0)||ue(_,yp)){let W=!uP(c)||S!==0;d=Dz(s,d,W,h)}let R,T;for(let W=0;W=1)if(V.transformFlags&65536||s.hasTransformedPriorElement&&!Ztn(V)){s.hasTransformedPriorElement=!0;let M=s.context.factory.createTempVariable(void 0);s.hoistTempVariables&&s.context.hoistVariableDeclaration(M),T=Ft(T,[M,V]),R=Ft(R,s.createArrayBindingOrAssignmentElement(M))}else R=Ft(R,V);else{if(yp(V))continue;if(o9e(V)){if(W===S-1){let M=s.context.factory.createArraySliceCall(d,W);wde(s,V,M,V)}}else{let M=s.context.factory.createElementAccessExpression(d,W);wde(s,V,M,V)}}}if(R&&s.emitBindingOrAssignment(s.createArrayBindingOrAssignmentPattern(R),d,h,g),T)for(let[W,V]of T)wde(s,V,W,V)}function Ztn(s){let c=ZP(s);if(!c||yp(c))return!0;let g=a9e(s);if(g&&!Tw(g))return!1;let d=AEe(s);return d&&!BN(d)?!1:yJ(c)?ue(bie(c),Ztn):Ir(c)}function cBs(s,c,g,d){return c=Dz(s,c,!0,d),s.context.factory.createConditionalExpression(s.context.factory.createTypeCheck(c,"undefined"),void 0,g,void 0,c)}function lBs(s,c,g){let{factory:d}=s.context;if(Un(g)){let h=Dz(s,pe.checkDefined(Mr(g.expression,s.visitor,un)),!1,g);return s.context.factory.createElementAccessExpression(c,h)}else if(d1(g)||eQ(g)){let h=d.cloneNode(g);return s.context.factory.createElementAccessExpression(c,h)}else{let h=s.context.factory.createIdentifier(Vo(g));return s.context.factory.createPropertyAccessExpression(c,h)}}function Dz(s,c,g,d){if(Ir(c)&&g)return c;{let h=s.context.factory.createTempVariable(void 0);return s.hoistTempVariables?(s.context.hoistVariableDeclaration(h),s.emitExpression(gn(s.context.factory.createAssignment(h,c),d))):s.emitBindingOrAssignment(h,c,d,void 0),h}}function uBs(s,c){return pe.assertEachNode(c,o3),s.createArrayBindingPattern(c)}function gBs(s,c){return pe.assertEachNode(c,EJ),s.createArrayLiteralExpression(At(c,s.converters.convertToArrayAssignmentElement))}function ABs(s,c){return pe.assertEachNode(c,hg),s.createObjectBindingPattern(c)}function dBs(s,c){return pe.assertEachNode(c,gP),s.createObjectLiteralExpression(At(c,s.converters.convertToObjectAssignmentElement))}function pBs(s,c){return s.createBindingElement(void 0,void 0,c)}function fBs(s){return s}function IBs(s,c,g=s.createThis()){let d=s.createAssignment(c,g),h=s.createExpressionStatement(d),_=s.createBlock([h],!1),S=s.createClassStaticBlockDeclaration(_);return c_(S).classThis=c,S}function Tde(s){var c;if(!fl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return VC(g)&&Jm(g.expression,!0)&&Ir(g.expression.left)&&((c=s.emitNode)==null?void 0:c.classThis)===g.expression.left&&g.expression.right.kind===110}function Wet(s){var c;return!!((c=s.emitNode)!=null&&c.classThis)&&jt(s.members,Tde)}function FOt(s,c,g,d){if(Wet(c))return c;let h=IBs(s,g,d);c.name&&Hg(h.body.statements[0],c.name);let _=s.createNodeArray([h,...c.members]);gn(_,c.members);let S=pm(c)?s.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_):s.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_);return c_(S).classThis=g,S}function Q9e(s,c,g){let d=Dd(HI(g));return(pm(d)||ih(d))&&!d.name&&Ga(d,2048)?s.createStringLiteral("default"):s.createStringLiteralFromNode(c)}function Ltn(s,c,g){let{factory:d}=s;if(g!==void 0)return{assignedName:d.createStringLiteral(g),name:c};if(Tw(c)||p(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(Tw(c.expression)&&!Ir(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let h=d.getGeneratedNameForNode(c);s.hoistVariableDeclaration(h);let _=s.getEmitHelperFactory().createPropKeyHelper(c.expression),S=d.createAssignment(h,_),R=d.updateComputedPropertyName(c,S);return{assignedName:h,name:R}}function hBs(s,c,g=s.factory.createThis()){let{factory:d}=s,h=s.getEmitHelperFactory().createSetFunctionNameHelper(g,c),_=d.createExpressionStatement(h),S=d.createBlock([_],!1),R=d.createClassStaticBlockDeclaration(S);return c_(R).assignedName=c,R}function kz(s){var c;if(!fl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return VC(g)&&qD(g.expression,"___setFunctionName")&&g.expression.arguments.length>=2&&g.expression.arguments[1]===((c=s.emitNode)==null?void 0:c.assignedName)}function X9e(s){var c;return!!((c=s.emitNode)!=null&&c.assignedName)&&jt(s.members,kz)}function Oet(s){return!!s.name||X9e(s)}function J9e(s,c,g,d){if(X9e(c))return c;let{factory:h}=s,_=hBs(s,g,d);c.name&&Hg(_.body.statements[0],c.name);let S=Se(c.members,Tde)+1,R=c.members.slice(0,S),T=c.members.slice(S),W=h.createNodeArray([...R,_,...T]);return gn(W,c.members),c=pm(c)?h.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,W):h.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,W),c_(c).assignedName=g,c}function xie(s,c,g,d){if(d&&Zg(g)&&mye(g))return c;let{factory:h}=s,_=HI(c),S=vd(_)?Ma(J9e(s,_,g),vd):s.getEmitHelperFactory().createSetFunctionNameHelper(_,g);return h.restoreOuterExpressions(c,S)}function mBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=Ltn(s,c.name,d),R=xie(s,c.initializer,_,g);return h.updatePropertyAssignment(c,S,R)}function CBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.objectAssignmentInitializer),S=xie(s,c.objectAssignmentInitializer,_,g);return h.updateShorthandPropertyAssignment(c,c.name,S)}function _Bs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.initializer),S=xie(s,c.initializer,_,g);return h.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,S)}function yBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.initializer),S=xie(s,c.initializer,_,g);return h.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,S)}function bBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.initializer),S=xie(s,c.initializer,_,g);return h.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,S)}function EBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=Ltn(s,c.name,d),R=xie(s,c.initializer,_,g);return h.updatePropertyDeclaration(c,c.modifiers,S,c.questionToken??c.exclamationToken,c.type,R)}function SBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.left,c.right),S=xie(s,c.right,_,g);return h.updateBinaryExpression(c,c.left,c.operatorToken,S)}function vBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):h.createStringLiteral(c.isExportEquals?"":"default"),S=xie(s,c.expression,_,g);return h.updateExportAssignment(c,c.modifiers,S)}function m1(s,c,g,d){switch(c.kind){case 304:return mBs(s,c,g,d);case 305:return CBs(s,c,g,d);case 261:return _Bs(s,c,g,d);case 170:return yBs(s,c,g,d);case 209:return bBs(s,c,g,d);case 173:return EBs(s,c,g,d);case 227:return SBs(s,c,g,d);case 278:return vBs(s,c,g,d)}}var ZOt=(s=>(s[s.LiftRestriction=0]="LiftRestriction",s[s.All=1]="All",s))(ZOt||{});function Met(s,c,g,d,h,_){let S=Mr(c.tag,g,un);pe.assert(S);let R=[void 0],T=[],W=[],V=c.template;if(_===0&&!Pye(V))return _s(c,g,s);let{factory:M}=s;if(GP(V))T.push(LOt(M,V)),W.push(VOt(M,V,d));else{T.push(LOt(M,V.head)),W.push(VOt(M,V.head,d));for(let re of V.templateSpans)T.push(LOt(M,re.literal)),W.push(VOt(M,re.literal,d)),R.push(pe.checkDefined(Mr(re.expression,g,un)))}let ee=s.getEmitHelperFactory().createTemplateObjectHelper(M.createArrayLiteralExpression(T),M.createArrayLiteralExpression(W));if(xm(d)){let re=M.createUniqueName("templateObject");h(re),R[0]=M.createLogicalOr(re,M.createAssignment(re,ee))}else R[0]=ee;return M.createCallExpression(S,void 0,R)}function LOt(s,c){return c.templateFlags&26656?s.createVoidZero():s.createStringLiteral(c.text)}function VOt(s,c,g){let d=c.rawText;if(d===void 0){pe.assertIsDefined(g,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=mF(g,c);let h=c.kind===15||c.kind===18;d=d.substring(1,d.length-(h?1:2))}return d=d.replace(/\r\n?/g,` -`),gn(s.createStringLiteral(d),c)}var BBs=!1;function POt(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getEmitResolver(),T=s.getCompilerOptions(),W=Mg(T),V=i0(T),M=!!T.experimentalDecorators,ee=T.emitDecoratorMetadata?OOt(s):void 0,re=s.onEmitNode,ge=s.onSubstituteNode;s.onEmitNode=dS,s.onSubstituteNode=gu,s.enableSubstitution(212),s.enableSubstitution(213);let Ie,_e,Ee,Ne,Te,Ze=0,We;return Ue;function Ue(ve){return ve.kind===309?$e(ve):Ye(ve)}function $e(ve){return c.createBundle(ve.sourceFiles.map(Ye))}function Ye(ve){if(ve.isDeclarationFile)return ve;Ie=ve;let mr=Tt(ve,pr);return hN(mr,s.readEmitHelpers()),Ie=void 0,mr}function Tt(ve,mr){let ln=Ne,ni=Te;ot(ve);let Ls=mr(ve);return Ne!==ln&&(Te=ni),Ne=ln,Ls}function ot(ve){switch(ve.kind){case 308:case 270:case 269:case 242:Ne=ve,Te=void 0;break;case 264:case 263:if(Ga(ve,128))break;ve.name?fr(ve):pe.assert(ve.kind===264||Ga(ve,2048));break}}function Qe(ve){return Tt(ve,mt)}function mt(ve){return ve.transformFlags&1?dt(ve):ve}function ht(ve){return Tt(ve,_t)}function _t(ve){switch(ve.kind){case 273:case 272:case 278:case 279:return Lt(ve);default:return mt(ve)}}function Rt(ve){let mr=$l(ve);if(mr===ve||Cf(ve))return!1;if(!mr||mr.kind!==ve.kind)return!0;switch(ve.kind){case 273:if(pe.assertNode(mr,Mf),ve.importClause!==mr.importClause||ve.attributes!==mr.attributes)return!0;break;case 272:if(pe.assertNode(mr,km),ve.name!==mr.name||ve.isTypeOnly!==mr.isTypeOnly||ve.moduleReference!==mr.moduleReference&&(fC(ve.moduleReference)||fC(mr.moduleReference)))return!0;break;case 279:if(pe.assertNode(mr,Gh),ve.exportClause!==mr.exportClause||ve.attributes!==mr.attributes)return!0;break}return!1}function Lt(ve){if(Rt(ve))return ve.transformFlags&1?_s(ve,Qe,s):ve;switch(ve.kind){case 273:return ao(ve);case 272:return gs(ve);case 278:return wn(ve);case 279:return Mn(ve);default:pe.fail("Unhandled ellided statement")}}function Ke(ve){return Tt(ve,Pt)}function Pt(ve){if(!(ve.kind===279||ve.kind===273||ve.kind===274||ve.kind===272&&ve.moduleReference.kind===284))return ve.transformFlags&1||Ga(ve,32)?dt(ve):ve}function _r(ve){return mr=>Tt(mr,ln=>Gt(ln,ve))}function Gt(ve,mr){switch(ve.kind){case 177:return hn(ve);case 173:return yr(ve,mr);case 178:return Qu(ve,mr);case 179:return Tg(ve,mr);case 175:return Oa(ve,mr);case 176:return _s(ve,Qe,s);case 241:return ve;case 182:return;default:return pe.failBadSyntaxKind(ve)}}function nt(ve){return mr=>Tt(mr,ln=>Dt(ln,ve))}function Dt(ve,mr){switch(ve.kind){case 304:case 305:case 306:return Qe(ve);case 178:return Qu(ve,mr);case 179:return Tg(ve,mr);case 175:return Oa(ve,mr);default:return pe.failBadSyntaxKind(ve)}}function tr(ve){return So(ve)?void 0:Qe(ve)}function ur(ve){return Ig(ve)?void 0:Qe(ve)}function Gr(ve){if(!So(ve)&&!(HY(ve.kind)&28895)&&!(_e&&ve.kind===95))return ve}function dt(ve){if(Lc(ve)&&Ga(ve,128))return c.createNotEmittedStatement(ve);switch(ve.kind){case 95:case 90:return _e?void 0:ve;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 189:case 190:case 191:case 192:case 188:case 183:case 169:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 186:case 185:case 187:case 184:case 193:case 194:case 195:case 197:case 198:case 199:case 200:case 201:case 202:case 182:return;case 266:return c.createNotEmittedStatement(ve);case 271:return;case 265:return c.createNotEmittedStatement(ve);case 264:return Br(ve);case 232:return mn(ve);case 299:return ba(ve);case 234:return Wo(ve);case 211:return st(ve);case 177:case 173:case 175:case 178:case 179:case 176:return pe.fail("Class and object literal elements must be visited with their respective visitors");case 263:return Cs(ve);case 219:return Tu(ve);case 220:return Pr(ve);case 170:return Pn(ve);case 218:return nr(ve);case 217:case 235:return Fr(ve);case 239:return Dn(ve);case 214:return hr(ve);case 215:return En(ve);case 216:return Ni(ve);case 236:return Kr(ve);case 267:return ds(ve);case 244:return pt(ve);case 261:return it(ve);case 268:return Ot(ve);case 272:return gs(ve);case 286:return Gi(ve);case 287:return nn(ve);default:return _s(ve,Qe,s)}}function pr(ve){let mr=a_(T,"alwaysStrict")&&!(xm(ve)&&V>=5)&&!Zu(ve);return c.updateSourceFile(ve,Ret(ve.statements,ht,s,0,mr))}function st(ve){return c.updateObjectLiteralExpression(ve,Ws(ve.properties,nt(ve),yw))}function ir(ve){let mr=0;jt(Let(ve,!0,!0))&&(mr|=1);let ln=BB(ve);return ln&&HI(ln.expression).kind!==106&&(mr|=64),Rx(M,ve)&&(mr|=2),HJ(M,ve)&&(mr|=4),fs(ve)?mr|=8:gg(ve)?mr|=32:mc(ve)&&(mr|=16),mr}function zt(ve){return!!(ve.transformFlags&8192)}function Ht(ve){return p1(ve)||jt(ve.typeParameters)||jt(ve.heritageClauses,zt)||jt(ve.members,zt)}function Br(ve){let mr=ir(ve),ln=W<=1&&!!(mr&7);if(!Ht(ve)&&!Rx(M,ve)&&!fs(ve))return c.updateClassDeclaration(ve,Ws(ve.modifiers,Gr,Ig),ve.name,void 0,Ws(ve.heritageClauses,Qe,h1),Ws(ve.members,_r(ve),PI));ln&&s.startLexicalEnvironment();let ni=ln||mr&8,Ls=ni?Ws(ve.modifiers,ur,dp):Ws(ve.modifiers,Qe,dp);mr&2&&(Ls=Zi(Ls,ve));let Go=ni&&!ve.name||mr&4||mr&1?ve.name??c.getGeneratedNameForNode(ve):ve.name,Ss=c.updateClassDeclaration(ve,Ls,Go,void 0,Ws(ve.heritageClauses,Qe,h1),jn(ve)),Uc=tA(ve);mr&1&&(Uc|=64),ti(Ss,Uc);let rl;if(ln){let xd=[Ss],Lg=QL(Yu(Ie.text,ve.members.end),20),yf=c.getInternalName(ve),rm=c.createPartiallyEmittedExpression(yf);AU(rm,Lg.end),ti(rm,3072);let _h=c.createReturnStatement(rm);iz(_h,Lg.pos),ti(_h,3840),xd.push(_h),Sw(xd,s.endLexicalEnvironment());let Gp=c.createImmediatelyInvokedArrowFunction(xd);sie(Gp,1);let oh=c.createVariableDeclaration(c.getLocalName(ve,!1,!1),void 0,void 0,Gp);ua(oh,ve);let b1=c.createVariableStatement(void 0,c.createVariableDeclarationList([oh],1));ua(b1,ve),hh(b1,ve),Hg(b1,jD(ve)),N0(b1),rl=b1}else rl=Ss;if(ni){if(mr&8)return[rl,Ag(ve)];if(mr&32)return[rl,c.createExportDefault(c.getLocalName(ve,!1,!0))];if(mr&16)return[rl,c.createExternalModuleExport(c.getDeclarationName(ve,!1,!0))]}return rl}function mn(ve){let mr=Ws(ve.modifiers,ur,dp);return Rx(M,ve)&&(mr=Zi(mr,ve)),c.updateClassExpression(ve,mr,ve.name,void 0,Ws(ve.heritageClauses,Qe,h1),jn(ve))}function jn(ve){let mr=Ws(ve.members,_r(ve),PI),ln,ni=lN(ve),Ls=ni&&Me(ni.parameters,Za=>Ve(Za,ni));if(Ls)for(let Za of Ls){let Go=c.createPropertyDeclaration(void 0,Za.name,void 0,void 0,void 0);ua(Go,Za),ln=Ft(ln,Go)}return ln?(ln=Or(ln,mr),gn(c.createNodeArray(ln),ve.members)):mr}function Zi(ve,mr){let ln=An(mr,mr);if(jt(ln)){let ni=[];Or(ni,t_(ve,dEe)),Or(ni,Me(ve,So)),Or(ni,ln),Or(ni,Me(cp(ve,dEe),Ig)),ve=gn(c.createNodeArray(ni),ve)}return ve}function Ns(ve,mr,ln){if(xa(ln)&&hye(M,mr,ln)){let ni=An(mr,ln);if(jt(ni)){let Ls=[];Or(Ls,Me(ve,So)),Or(Ls,ni),Or(Ls,Me(ve,Ig)),ve=gn(c.createNodeArray(Ls),ve)}}return ve}function An(ve,mr){if(M)return BBs?ks(ve,mr):si(ve,mr)}function si(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=g().createMetadataHelper("design:type",ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(Zn(ve)){let ni=g().createMetadataHelper("design:paramtypes",ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(su(ve)){let ni=g().createMetadataHelper("design:returntype",ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve));ln=Ft(ln,c.createDecorator(ni))}return ln}}function ks(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(Zn(ve)){let ni=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(su(ve)){let ni=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve)));ln=Ft(ln,ni)}if(ln){let ni=g().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(ln,!0));return[c.createDecorator(ni)]}}}function Ic(ve){let mr=ve.kind;return mr===175||mr===178||mr===179||mr===173}function su(ve){return ve.kind===175}function Zn(ve){switch(ve.kind){case 264:case 232:return lN(ve)!==void 0;case 175:case 178:case 179:return!0}return!1}function ya(ve,mr){let ln=ve.name;return p(ln)?c.createIdentifier(""):Un(ln)?mr&&!BN(ln.expression)?c.getGeneratedNameForNode(ln):ln.expression:Ir(ln)?c.createStringLiteral(Vo(ln)):c.cloneNode(ln)}function Gl(ve){let mr=ve.name;if(M&&Un(mr)&&p1(ve)){let ln=Mr(mr.expression,Qe,un);pe.assert(ln);let ni=o2(ln);if(!BN(ni)){let Ls=c.getGeneratedNameForNode(mr);return S(Ls),c.updateComputedPropertyName(mr,c.createAssignment(Ls,ln))}}return pe.checkDefined(Mr(mr,Qe,VI))}function ba(ve){if(ve.token!==119)return _s(ve,Qe,s)}function Wo(ve){return c.updateExpressionWithTypeArguments(ve,pe.checkDefined(Mr(ve.expression,Qe,D_)),void 0)}function hc(ve){return!sf(ve.body)}function yr(ve,mr){let ln=ve.flags&33554432||Ga(ve,64);if(ln&&!(M&&p1(ve)))return;let ni=xa(mr)?ln?Ws(ve.modifiers,ur,dp):Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ni=Ns(ni,ve,mr),ln?c.updatePropertyDeclaration(ve,Nn(ni,c.createModifiersFromModifierFlags(128)),pe.checkDefined(Mr(ve.name,Qe,VI)),void 0,void 0,void 0):c.updatePropertyDeclaration(ve,ni,Gl(ve),void 0,void 0,Mr(ve.initializer,Qe,un))}function hn(ve){if(hc(ve))return c.updateConstructorDeclaration(ve,void 0,vI(ve.parameters,Qe,s),lo(ve.body,ve))}function Oi(ve,mr,ln,ni,Ls,Za){let Go=ni[Ls],Ss=mr[Go];if(Or(ve,Ws(mr,Qe,Lc,ln,Go-ln)),mU(Ss)){let Uc=[];Oi(Uc,Ss.tryBlock.statements,0,ni,Ls+1,Za);let rl=c.createNodeArray(Uc);gn(rl,Ss.tryBlock.statements),ve.push(c.updateTryStatement(Ss,c.updateBlock(Ss.tryBlock,Uc),Mr(Ss.catchClause,Qe,iQ),Mr(Ss.finallyBlock,Qe,$u)))}else Or(ve,Ws(mr,Qe,Lc,Go,1)),Or(ve,Za);Or(ve,Ws(mr,Qe,Lc,Go+1))}function lo(ve,mr){let ln=mr&&Me(mr.parameters,Uc=>Ve(Uc,mr));if(!jt(ln))return uS(ve,Qe,s);let ni=[];h();let Ls=c.copyPrologue(ve.statements,ni,!1,Qe),Za=M9e(ve.statements,Ls),Go=Xt(ln,pa);Za.length?Oi(ni,ve.statements,Ls,Za,0,Go):(Or(ni,Go),Or(ni,Ws(ve.statements,Qe,Lc,Ls))),ni=c.mergeLexicalEnvironment(ni,_());let Ss=c.createBlock(gn(c.createNodeArray(ni),ve.statements),!0);return gn(Ss,ve),ua(Ss,ve),Ss}function pa(ve){let mr=ve.name;if(!Ir(mr))return;let ln=XA(gn(c.cloneNode(mr),mr),mr.parent);ti(ln,3168);let ni=XA(gn(c.cloneNode(mr),mr),mr.parent);return ti(ni,3072),N0(pz(gn(ua(c.createExpressionStatement(c.createAssignment(gn(c.createPropertyAccessExpression(c.createThis(),ln),ve.name),ni)),ve),KD(ve,-1))))}function Oa(ve,mr){if(!(ve.transformFlags&1))return ve;if(!hc(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateMethodDeclaration(ve,ln,ve.asteriskToken,Gl(ve),void 0,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s))}function tl(ve){return!(sf(ve.body)&&Ga(ve,64))}function Qu(ve,mr){if(!(ve.transformFlags&1))return ve;if(!tl(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateGetAccessorDeclaration(ve,ln,Gl(ve),vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([]))}function Tg(ve,mr){if(!(ve.transformFlags&1))return ve;if(!tl(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateSetAccessorDeclaration(ve,ln,Gl(ve),vI(ve.parameters,Qe,s),uS(ve.body,Qe,s)||c.createBlock([]))}function Cs(ve){if(!hc(ve))return c.createNotEmittedStatement(ve);let mr=c.updateFunctionDeclaration(ve,Ws(ve.modifiers,Gr,Ig),ve.asteriskToken,ve.name,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([]));if(fs(ve)){let ln=[mr];return _u(ln,ve),ln}return mr}function Tu(ve){return hc(ve)?c.updateFunctionExpression(ve,Ws(ve.modifiers,Gr,Ig),ve.asteriskToken,ve.name,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([])):c.createOmittedExpression()}function Pr(ve){return c.updateArrowFunction(ve,Ws(ve.modifiers,Gr,Ig),void 0,vI(ve.parameters,Qe,s),void 0,ve.equalsGreaterThanToken,uS(ve.body,Qe,s))}function Pn(ve){if(SF(ve))return;let mr=c.updateParameterDeclaration(ve,Ws(ve.modifiers,ln=>So(ln)?Qe(ln):void 0,dp),ve.dotDotDotToken,pe.checkDefined(Mr(ve.name,Qe,RL)),void 0,void 0,Mr(ve.initializer,Qe,un));return mr!==ve&&(hh(mr,ve),gn(mr,Av(ve)),Hg(mr,Av(ve)),ti(mr.name,64)),mr}function pt(ve){if(fs(ve)){let mr=iU(ve.declarationList);return mr.length===0?void 0:gn(c.createExpressionStatement(c.inlineExpressions(At(mr,on))),ve)}else return _s(ve,Qe,s)}function on(ve){let mr=ve.name;return Nu(mr)?TU(ve,Qe,s,0,!1,AI):gn(c.createAssignment(pp(mr),pe.checkDefined(Mr(ve.initializer,Qe,un))),ve)}function it(ve){let mr=c.updateVariableDeclaration(ve,pe.checkDefined(Mr(ve.name,Qe,RL)),void 0,void 0,Mr(ve.initializer,Qe,un));return ve.type&&PLe(mr.name,ve.type),mr}function nr(ve){let mr=HI(ve.expression,-55);if(Ed(mr)||Qg(mr)){let ln=Mr(ve.expression,Qe,un);return pe.assert(ln),c.createPartiallyEmittedExpression(ln,ve)}return _s(ve,Qe,s)}function Fr(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Kr(ve){let mr=Mr(ve.expression,Qe,D_);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Dn(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function hr(ve){return c.updateCallExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Ws(ve.arguments,Qe,un))}function En(ve){return c.updateNewExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Ws(ve.arguments,Qe,un))}function Ni(ve){return c.updateTaggedTemplateExpression(ve,pe.checkDefined(Mr(ve.tag,Qe,un)),void 0,pe.checkDefined(Mr(ve.template,Qe,AP)))}function Gi(ve){return c.updateJsxSelfClosingElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,kL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,nQ)))}function nn(ve){return c.updateJsxOpeningElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,kL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,nQ)))}function bn(ve){return!VA(ve)||Fb(T)}function ds(ve){if(!bn(ve))return c.createNotEmittedStatement(ve);let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=Dl(ve),Za=yu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let rl=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(rl,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,Mt(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(kB(Uc,void 0),x3(Uc,void 0)),gn(Uc,ve),Gw(Uc,ln),mr.push(Uc),mr}function Mt(ve,mr){let ln=Ee;Ee=mr;let ni=[];d();let Ls=At(ve.members,cn);return Sw(ni,_()),Or(ni,Ls),Ee=ln,c.createBlock(gn(c.createNodeArray(ni),ve.members),!0)}function cn(ve){let mr=ya(ve,!1),ln=R.getEnumMemberValue(ve),ni=Bt(ve,ln?.value),Ls=c.createAssignment(c.createElementAccessExpression(Ee,mr),ni),Za=typeof ln?.value=="string"||ln?.isSyntacticallyString?Ls:c.createAssignment(c.createElementAccessExpression(Ee,Ls),mr);return gn(c.createExpressionStatement(gn(Za,ve)),ve)}function Bt(ve,mr){return mr!==void 0?typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr):(tm(),ve.initializer?pe.checkDefined(Mr(ve.initializer,Qe,un)):c.createVoidZero())}function xe(ve){let mr=$l(ve,xh);return mr?wet(mr,Fb(T)):!0}function fr(ve){Te||(Te=new Map);let mr=In(ve);Te.has(mr)||Te.set(mr,ve)}function Je(ve){if(Te){let mr=In(ve);return Te.get(mr)===ve}return!0}function In(ve){return pe.assertNode(ve.name,Ir),ve.name.escapedText}function Hn(ve,mr){let ln=c.createVariableDeclaration(c.getLocalName(mr,!1,!0)),ni=Ne.kind===308?0:1,Ls=c.createVariableStatement(Ws(mr.modifiers,Gr,Ig),c.createVariableDeclarationList([ln],ni));return ua(ln,mr),kB(ln,void 0),x3(ln,void 0),ua(Ls,mr),fr(mr),Je(mr)?(mr.kind===267?Hg(Ls.declarationList,mr):Hg(Ls,mr),hh(Ls,mr),Gw(Ls,2048),ve.push(Ls),!0):!1}function Ot(ve){if(!xe(ve))return c.createNotEmittedStatement(ve);pe.assertNode(ve.name,Ir,"A TypeScript namespace should have an Identifier name."),jp();let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=Dl(ve),Za=yu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let rl=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(rl,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,$r(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(kB(Uc,void 0),x3(Uc,void 0)),gn(Uc,ve),Gw(Uc,ln),mr.push(Uc),mr}function $r(ve,mr){let ln=Ee,ni=_e,Ls=Te;Ee=mr,_e=ve,Te=void 0;let Za=[];d();let Go,Ss;if(ve.body)if(ve.body.kind===269)Tt(ve.body,rl=>Or(Za,Ws(rl.statements,Ke,Lc))),Go=ve.body.statements,Ss=ve.body;else{let rl=Ot(ve.body);rl&&(Ki(rl)?Or(Za,rl):Za.push(rl));let xd=ri(ve).body;Go=KD(xd.statements,-1)}Sw(Za,_()),Ee=ln,_e=ni,Te=Ls;let Uc=c.createBlock(gn(c.createNodeArray(Za),Go),!0);return gn(Uc,Ss),(!ve.body||ve.body.kind!==269)&&ti(Uc,tA(Uc)|3072),Uc}function ri(ve){if(ve.body.kind===268)return ri(ve.body)||ve.body}function ao(ve){if(!ve.importClause)return ve;if(ve.importClause.isTypeOnly)return;let mr=Mr(ve.importClause,Bs,Vw);return mr?c.updateImportDeclaration(ve,void 0,mr,ve.moduleSpecifier,ve.attributes):void 0}function Bs(ve){pe.assert(ve.phaseModifier!==156);let mr=QI(ve)?ve.name:void 0,ln=Mr(ve.namedBindings,Ys,wx);return mr||ln?c.updateImportClause(ve,ve.phaseModifier,mr,ln):void 0}function Ys(ve){if(ve.kind===275)return QI(ve)?ve:void 0;{let mr=T.verbatimModuleSyntax,ln=Ws(ve.elements,tn,uy);return mr||jt(ln)?c.updateNamedImports(ve,ln):void 0}}function tn(ve){return!ve.isTypeOnly&&QI(ve)?ve:void 0}function wn(ve){return T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve)?_s(ve,Qe,s):void 0}function Mn(ve){if(ve.isTypeOnly)return;if(!ve.exportClause||tk(ve.exportClause))return c.updateExportDeclaration(ve,ve.modifiers,ve.isTypeOnly,ve.exportClause,ve.moduleSpecifier,ve.attributes);let mr=!!T.verbatimModuleSyntax,ln=Mr(ve.exportClause,ni=>Wi(ni,mr),yre);return ln?c.updateExportDeclaration(ve,void 0,ve.isTypeOnly,ln,ve.moduleSpecifier,ve.attributes):void 0}function ci(ve,mr){let ln=Ws(ve.elements,Vn,R0);return mr||jt(ln)?c.updateNamedExports(ve,ln):void 0}function es(ve){return c.updateNamespaceExport(ve,pe.checkDefined(Mr(ve.name,Qe,Ir)))}function Wi(ve,mr){return tk(ve)?es(ve):ci(ve,mr)}function Vn(ve){return!ve.isTypeOnly&&(T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve))?ve:void 0}function Ui(ve){return QI(ve)||!xm(Ie)&&R.isTopLevelValueImportEqualsWithEntityName(ve)}function gs(ve){if(ve.isTypeOnly)return;if(LL(ve))return QI(ve)?_s(ve,Qe,s):void 0;if(!Ui(ve))return;let mr=cEe(c,ve.moduleReference);return ti(mr,7168),mc(ve)||!fs(ve)?ua(gn(c.createVariableStatement(Ws(ve.modifiers,Gr,Ig),c.createVariableDeclarationList([ua(c.createVariableDeclaration(ve.name,void 0,void 0,mr),ve)])),ve),ve):ua(wI(ve.name,mr,ve),ve)}function fs(ve){return _e!==void 0&&Ga(ve,32)}function bi(ve){return _e===void 0&&Ga(ve,32)}function mc(ve){return bi(ve)&&!Ga(ve,2048)}function gg(ve){return bi(ve)&&Ga(ve,2048)}function Ag(ve){let mr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0),c.getLocalName(ve));Hg(mr,Gy(ve.name?ve.name.pos:ve.pos,ve.end));let ln=c.createExpressionStatement(mr);return Hg(ln,Gy(-1,ve.end)),ln}function _u(ve,mr){ve.push(Ag(mr))}function wI(ve,mr,ln){return gn(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Ee,ve,!1,!0),mr)),ln)}function AI(ve,mr,ln){return gn(c.createAssignment(pp(ve),mr),ln)}function pp(ve){return c.getNamespaceMemberName(Ee,ve,!1,!0)}function Dl(ve){let mr=c.getGeneratedNameForNode(ve);return Hg(mr,ve.name),mr}function yu(ve){return c.getGeneratedNameForNode(ve)}function tm(){Ze&8||(Ze|=8,s.enableSubstitution(80))}function jp(){Ze&2||(Ze|=2,s.enableSubstitution(80),s.enableSubstitution(305),s.enableEmitNotification(268))}function Xg(ve){return Dd(ve).kind===268}function sh(ve){return Dd(ve).kind===267}function dS(ve,mr,ln){let ni=We,Ls=Ie;ll(mr)&&(Ie=mr),Ze&2&&Xg(mr)&&(We|=2),Ze&8&&sh(mr)&&(We|=8),re(ve,mr,ln),We=ni,Ie=Ls}function gu(ve,mr){return mr=ge(ve,mr),ve===1?KA(mr):a0(mr)?bg(mr):mr}function bg(ve){if(Ze&2){let mr=ve.name,ln=oi(mr);if(ln){if(ve.objectAssignmentInitializer){let ni=c.createAssignment(ln,ve.objectAssignmentInitializer);return gn(c.createPropertyAssignment(mr,ni),ve)}return gn(c.createPropertyAssignment(mr,ln),ve)}}return ve}function KA(ve){switch(ve.kind){case 80:return TA(ve);case 212:return $d(ve);case 213:return YI(ve)}return ve}function TA(ve){return oi(ve)||ve}function oi(ve){if(Ze&We&&!kp(ve)&&!VF(ve)){let mr=R.getReferencedExportContainer(ve,!1);if(mr&&mr.kind!==308&&(We&2&&mr.kind===268||We&8&&mr.kind===267))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(mr),ve),ve)}}function $d(ve){return WC(ve)}function YI(ve){return WC(ve)}function Fh(ve){return ve.replace(/\*\//g,"*_/")}function WC(ve){let mr=_f(ve);if(mr!==void 0){LLe(ve,mr);let ln=typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr);if(!T.removeComments){let ni=Dd(ve,_p);Iz(ln,3,` ${Fh(xp(ni))} `)}return ln}return ve}function _f(ve){if(!sS(T))return jo(ve)||Yg(ve)?R.getConstantValue(ve):void 0}function QI(ve){return T.verbatimModuleSyntax||wo(ve)||R.isReferencedAliasDeclaration(ve)}}function WOt(s){let{factory:c,getEmitHelperFactory:g,hoistVariableDeclaration:d,endLexicalEnvironment:h,startLexicalEnvironment:_,resumeLexicalEnvironment:S,addBlockScopedVariable:R}=s,T=s.getEmitResolver(),W=s.getCompilerOptions(),V=Mg(W),M=Pne(W),ee=!!W.experimentalDecorators,re=!M,ge=M&&V<9,Ie=re||ge,_e=V<9,Ee=V<99?-1:M?0:3,Ne=V<9,Te=Ne&&V>=2,Ze=Ie||_e||Ee===-1,We=s.onSubstituteNode;s.onSubstituteNode=YI;let Ue=s.onEmitNode;s.onEmitNode=$d;let $e=!1,Ye=0,Tt,ot,Qe,mt,ht=new Map,_t=new Set,Rt,Lt,Ke=!1,Pt=!1;return rR(s,_r);function _r(ve){if(ve.isDeclarationFile||(mt=void 0,$e=!!(g1(ve)&32),!Ze&&!$e))return ve;let mr=_s(ve,nt,s);return hN(mr,s.readEmitHelpers()),mr}function Gt(ve){switch(ve.kind){case 129:return hn()?void 0:ve;default:return Gs(ve,Ig)}}function nt(ve){if(!(ve.transformFlags&16777216)&&!(ve.transformFlags&134234112))return ve;switch(ve.kind){case 264:return bn(ve);case 232:return Mt(ve);case 176:case 173:return pe.fail("Use `classElementVisitor` instead.");case 304:return Ht(ve);case 244:return Br(ve);case 261:return mn(ve);case 170:return jn(ve);case 209:return Zi(ve);case 278:return Ns(ve);case 81:return ir(ve);case 212:return Qu(ve);case 213:return Tg(ve);case 225:case 226:return Cs(ve,!1);case 227:return Fr(ve,!1);case 218:return Dn(ve,!1);case 214:return pt(ve);case 245:return Pr(ve);case 216:return on(ve);case 249:return Tu(ve);case 110:return xe(ve);case 263:case 219:return Zn(void 0,Dt,ve);case 177:case 175:case 178:case 179:return Zn(ve,Dt,ve);default:return Dt(ve)}}function Dt(ve){return _s(ve,nt,s)}function tr(ve){switch(ve.kind){case 225:case 226:return Cs(ve,!0);case 227:return Fr(ve,!0);case 357:return Kr(ve,!0);case 218:return Dn(ve,!0);default:return nt(ve)}}function ur(ve){switch(ve.kind){case 299:return _s(ve,ur,s);case 234:return Gi(ve);default:return nt(ve)}}function Gr(ve){switch(ve.kind){case 211:case 210:return oi(ve);default:return nt(ve)}}function dt(ve){switch(ve.kind){case 177:return Zn(ve,ks,ve);case 178:case 179:case 175:return Zn(ve,su,ve);case 173:return Zn(ve,Oi,ve);case 176:return Zn(ve,Bt,ve);case 168:return si(ve);case 241:return ve;default:return dp(ve)?Gt(ve):nt(ve)}}function pr(ve){switch(ve.kind){case 168:return si(ve);default:return nt(ve)}}function st(ve){switch(ve.kind){case 173:return yr(ve);case 178:case 179:return dt(ve);default:pe.assertMissingNode(ve,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function ir(ve){return!_e||Lc(ve.parent)?ve:ua(c.createIdentifier(""),ve)}function zt(ve){let mr=yu(ve.left);if(mr){let ln=Mr(ve.right,nt,un);return ua(g().createClassPrivateFieldInHelper(mr.brandCheckIdentifier,ln),ve)}return _s(ve,nt,s)}function Ht(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Br(ve){let mr=Qe;Qe=[];let ln=_s(ve,nt,s),ni=jt(Qe)?[ln,...Qe]:ln;return Qe=mr,ni}function mn(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function jn(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Zi(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Ns(ve){return kb(ve,nr)&&(ve=m1(s,ve,!0,ve.isExportEquals?"":"default")),_s(ve,nt,s)}function An(ve){return jt(ot)&&(gI(ve)?(ot.push(ve.expression),ve=c.updateParenthesizedExpression(ve,c.inlineExpressions(ot))):(ot.push(ve),ve=c.inlineExpressions(ot)),ot=void 0),ve}function si(ve){let mr=Mr(ve.expression,nt,un);return c.updateComputedPropertyName(ve,An(mr))}function ks(ve){return Rt?In(ve,Rt):Dt(ve)}function Ic(ve){return!!(_e||zh(ve)&&g1(ve)&32)}function su(ve){if(pe.assert(!p1(ve)),!pC(ve)||!Ic(ve))return _s(ve,dt,s);let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;let ln=ya(ve);ln&&fs().push(c.createAssignment(ln,c.createFunctionExpression(Me(ve.modifiers,ni=>Ig(ni)&&!Ge(ni)&&!It(ni)),ve.asteriskToken,ln,void 0,vI(ve.parameters,nt,s),void 0,uS(ve.body,nt,s))))}function Zn(ve,mr,ln){if(ve!==Lt){let ni=Lt;Lt=ve;let Ls=mr(ln);return Lt=ni,Ls}return mr(ln)}function ya(ve){pe.assert(p(ve.name));let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),mr.kind==="m")return mr.methodName;if(mr.kind==="a"){if(bB(ve))return mr.getterName;if(cv(ve))return mr.setterName}}function Gl(){let ve=Ui();return ve.classThis??ve.classConstructor??Rt?.name}function ba(ve){let mr=DB(ve),ln=XT(ve),ni=ve.name,Ls=ni,Za=ni;if(Un(ni)&&!BN(ni.expression)){let yf=l9e(ni);if(yf)Ls=c.updateComputedPropertyName(ni,Mr(ni.expression,nt,un)),Za=c.updateComputedPropertyName(ni,yf.left);else{let rm=c.createTempVariable(d);Hg(rm,ni.expression);let _h=Mr(ni.expression,nt,un),Gp=c.createAssignment(rm,_h);Hg(Gp,ni.expression),Ls=c.updateComputedPropertyName(ni,Gp),Za=c.updateComputedPropertyName(ni,rm)}}let Go=Ws(ve.modifiers,Gt,Ig),Ss=G$e(c,ve,Go,ve.initializer);ua(Ss,ve),ti(Ss,3072),Hg(Ss,ln);let Uc=cg(ve)?Gl()??c.createThis():c.createThis(),rl=lWt(c,ve,Go,Ls,Uc);ua(rl,ve),hh(rl,mr),Hg(rl,ln);let xd=c.createModifiersFromModifierFlags(Dw(Go)),Lg=uWt(c,ve,xd,Za,Uc);return ua(Lg,ve),ti(Lg,3072),Hg(Lg,ln),Ede([Ss,rl,Lg],st,PI)}function Wo(ve){if(Ic(ve)){let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;if(mr.isStatic&&!_e){let ln=ri(ve,c.createThis());if(ln)return c.createClassStaticBlockDeclaration(c.createBlock([ln],!0))}return}return re&&!cg(ve)&&mt?.data&&mt.data.facts&16?c.updatePropertyDeclaration(ve,Ws(ve.modifiers,nt,dp),ve.name,void 0,void 0,void 0):(kb(ve,nr)&&(ve=m1(s,ve)),c.updatePropertyDeclaration(ve,Ws(ve.modifiers,Gt,Ig),Mr(ve.name,pr,VI),void 0,void 0,Mr(ve.initializer,nt,un)))}function hc(ve){if(Ie&&!t0(ve)){let mr=es(ve.name,!!ve.initializer||M);if(mr&&fs().push(...gWt(mr)),cg(ve)&&!_e){let ln=ri(ve,c.createThis());if(ln){let ni=c.createClassStaticBlockDeclaration(c.createBlock([ln]));return ua(ni,ve),hh(ni,ve),hh(ln,{pos:-1,end:-1}),kB(ln,void 0),x3(ln,void 0),ni}}return}return c.updatePropertyDeclaration(ve,Ws(ve.modifiers,Gt,Ig),Mr(ve.name,pr,VI),void 0,void 0,Mr(ve.initializer,nt,un))}function yr(ve){return pe.assert(!p1(ve),"Decorators should already have been transformed and elided."),pC(ve)?Wo(ve):hc(ve)}function hn(){return Ee===-1||Ee===3&&!!mt?.data&&!!(mt.data.facts&16)}function Oi(ve){return t0(ve)&&(hn()||zh(ve)&&g1(ve)&32)?ba(ve):yr(ve)}function lo(){return!!Lt&&zh(Lt)&&yB(Lt)&&t0(Dd(Lt))}function pa(ve){if(lo()){let mr=HI(ve);mr.kind===110&&_t.add(mr)}}function Oa(ve,mr){return mr=Mr(mr,nt,un),pa(mr),tl(ve,mr)}function tl(ve,mr){switch(hh(mr,KD(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.getterName);case"m":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.methodName);case"f":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Qu(ve){if(p(ve.name)){let mr=yu(ve.name);if(mr)return gn(ua(Oa(mr,ve.expression),ve),ve)}if(Te&&Lt&&xy(ve)&&Ir(ve.name)&&Rde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,c.createStringLiteralFromNode(ve.name),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,nt,s)}function Tg(ve){if(Te&&Lt&&xy(ve)&&Rde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,Mr(ve.argumentExpression,nt,un),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,nt,s)}function Cs(ve,mr){if(ve.operator===46||ve.operator===47){let ln=QA(ve.operand);if(cP(ln)){let ni;if(ni=yu(ln.name)){let Ls=Mr(ln.expression,nt,un);pa(Ls);let{readExpression:Za,initializeExpression:Go}=Pn(Ls),Ss=Oa(ni,Za),Uc=T0(ve)||mr?void 0:c.createTempVariable(d);return Ss=n9e(c,ve,Ss,d,Uc),Ss=hr(ni,Go||Za,Ss,64),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}else if(Te&&Lt&&xy(ln)&&Rde(Lt)&&mt?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=mt.data;if(Za&1){let Go=ci(ln);return T0(ve)?c.updatePrefixUnaryExpression(ve,Go):c.updatePostfixUnaryExpression(ve,Go)}if(ni&&Ls){let Go,Ss;if(jo(ln)?Ir(ln.name)&&(Ss=Go=c.createStringLiteralFromNode(ln.name)):BN(ln.argumentExpression)?Ss=Go=ln.argumentExpression:(Ss=c.createTempVariable(d),Go=c.createAssignment(Ss,Mr(ln.argumentExpression,nt,un))),Go&&Ss){let Uc=c.createReflectGetCall(Ls,Ss,ni);gn(Uc,ln);let rl=mr?void 0:c.createTempVariable(d);return Uc=n9e(c,ve,Uc,d,rl),Uc=c.createReflectSetCall(Ls,Go,Uc,ni),ua(Uc,ve),gn(Uc,ve),rl&&(Uc=c.createComma(Uc,rl),gn(Uc,ve)),Uc}}}}return _s(ve,nt,s)}function Tu(ve){return c.updateForStatement(ve,Mr(ve.initializer,tr,hE),Mr(ve.condition,nt,un),Mr(ve.incrementor,tr,un),Py(ve.statement,nt,s))}function Pr(ve){return c.updateExpressionStatement(ve,Mr(ve.expression,tr,un))}function Pn(ve){let mr=sp(ve)?ve:c.cloneNode(ve);if(ve.kind===110&&_t.has(ve)&&_t.add(mr),BN(ve))return{readExpression:mr,initializeExpression:void 0};let ln=c.createTempVariable(d),ni=c.createAssignment(ln,mr);return{readExpression:ln,initializeExpression:ni}}function pt(ve){var mr;if(cP(ve.expression)&&yu(ve.expression.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.expression,d,V);return _B(ve)?c.updateCallChain(ve,c.createPropertyAccessChain(Mr(ni,nt,un),ve.questionDotToken,"call"),void 0,void 0,[Mr(ln,nt,un),...Ws(ve.arguments,nt,un)]):c.updateCallExpression(ve,c.createPropertyAccessExpression(Mr(ni,nt,un),"call"),void 0,[Mr(ln,nt,un),...Ws(ve.arguments,nt,un)])}if(Te&&Lt&&xy(ve.expression)&&Rde(Lt)&&((mr=mt?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionCallCall(Mr(ve.expression,nt,un),mt.data.classConstructor,Ws(ve.arguments,nt,un));return ua(ln,ve),gn(ln,ve),ln}return _s(ve,nt,s)}function on(ve){var mr;if(cP(ve.tag)&&yu(ve.tag.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.tag,d,V);return c.updateTaggedTemplateExpression(ve,c.createCallExpression(c.createPropertyAccessExpression(Mr(ni,nt,un),"bind"),void 0,[Mr(ln,nt,un)]),void 0,Mr(ve.template,nt,AP))}if(Te&&Lt&&xy(ve.tag)&&Rde(Lt)&&((mr=mt?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionBindCall(Mr(ve.tag,nt,un),mt.data.classConstructor,[]);return ua(ln,ve),gn(ln,ve),c.updateTaggedTemplateExpression(ve,ln,void 0,Mr(ve.template,nt,AP))}return _s(ve,nt,s)}function it(ve){if(mt&&ht.set(Dd(ve),mt),_e){if(Tde(ve)){let ni=Mr(ve.body.statements[0].expression,nt,un);return Jm(ni,!0)&&ni.left===ni.right?void 0:ni}if(kz(ve))return Mr(ve.body.statements[0].expression,nt,un);_();let mr=Zn(ve,ni=>Ws(ni,nt,Lc),ve.body.statements);mr=c.mergeLexicalEnvironment(mr,h());let ln=c.createImmediatelyInvokedArrowFunction(mr);return ua(QA(ln.expression),ve),Gw(QA(ln.expression),4),ua(ln,ve),gn(ln,ve),ln}}function nr(ve){if(vd(ve)&&!ve.name){let mr=H9e(ve);return jt(mr,kz)?!1:(_e||!!g1(ve))&&jt(mr,ni=>fl(ni)||pC(ni)||Ie&&GEe(ni))}return!1}function Fr(ve,mr){if(Dx(ve)){let ln=ot;ot=void 0,ve=c.updateBinaryExpression(ve,Mr(ve.left,Gr,un),ve.operatorToken,Mr(ve.right,nt,un));let ni=jt(ot)?c.inlineExpressions(Hr([...ot,ve])):ve;return ot=ln,ni}if(Jm(ve)){kb(ve,nr)&&(ve=m1(s,ve),pe.assertNode(ve,Jm));let ln=HI(ve.left,9);if(cP(ln)){let ni=yu(ln.name);if(ni)return gn(ua(hr(ni,ln.expression,ve.right,ve.operatorToken.kind),ve),ve)}else if(Te&&Lt&&xy(ve.left)&&Rde(Lt)&&mt?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=mt.data;if(Za&1)return c.updateBinaryExpression(ve,ci(ve.left),ve.operatorToken,Mr(ve.right,nt,un));if(ni&&Ls){let Go=Yg(ve.left)?Mr(ve.left.argumentExpression,nt,un):Ir(ve.left.name)?c.createStringLiteralFromNode(ve.left.name):void 0;if(Go){let Ss=Mr(ve.right,nt,un);if(vde(ve.operatorToken.kind)){let rl=Go;BN(Go)||(rl=c.createTempVariable(d),Go=c.createAssignment(rl,Go));let xd=c.createReflectGetCall(Ls,rl,ni);ua(xd,ve.left),gn(xd,ve.left),Ss=c.createBinaryExpression(xd,Bde(ve.operatorToken.kind),Ss),gn(Ss,ve)}let Uc=mr?void 0:c.createTempVariable(d);return Uc&&(Ss=c.createAssignment(Uc,Ss),gn(Uc,ve)),Ss=c.createReflectSetCall(Ls,Go,Ss,ni),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}}}return DBs(ve)?zt(ve):_s(ve,nt,s)}function Kr(ve,mr){let ln=mr?xEe(ve.elements,tr):xEe(ve.elements,nt,tr);return c.updateCommaListExpression(ve,ln)}function Dn(ve,mr){let ln=mr?tr:nt,ni=Mr(ve.expression,ln,un);return c.updateParenthesizedExpression(ve,ni)}function hr(ve,mr,ln,ni){if(mr=Mr(mr,nt,un),ln=Mr(ln,nt,un),pa(mr),vde(ni)){let{readExpression:Ls,initializeExpression:Za}=Pn(mr);mr=Za||Ls,ln=c.createBinaryExpression(tl(ve,Ls),Bde(ni),ln)}switch(hh(mr,KD(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.setterName);case"m":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,void 0);case"f":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function En(ve){return Me(ve.members,TOt)}function Ni(ve){var mr;let ln=0,ni=Dd(ve);xa(ni)&&Rx(ee,ni)&&(ln|=1),_e&&(Wet(ve)||X9e(ve))&&(ln|=2);let Ls=!1,Za=!1,Go=!1,Ss=!1;for(let rl of ve.members)cg(rl)?((rl.name&&(p(rl.name)||t0(rl))&&_e||t0(rl)&&Ee===-1&&!ve.name&&!((mr=ve.emitNode)!=null&&mr.classThis))&&(ln|=2),(pi(rl)||fl(rl))&&(Ne&&rl.transformFlags&16384&&(ln|=8,ln&1||(ln|=2)),Te&&rl.transformFlags&134217728&&(ln&1||(ln|=6)))):wP(Dd(rl))||(t0(rl)?(Ss=!0,Go||(Go=pC(rl))):pC(rl)?(Go=!0,T.hasNodeCheckFlag(rl,262144)&&(ln|=2)):pi(rl)&&(Ls=!0,Za||(Za=!!rl.initializer)));return(ge&&Ls||re&&Za||_e&&Go||_e&&Ss&&Ee===-1)&&(ln|=16),ln}function Gi(ve){var mr;if((((mr=mt?.data)==null?void 0:mr.facts)||0)&4){let ni=c.createTempVariable(d,!0);return Ui().superClassReference=ni,c.updateExpressionWithTypeArguments(ve,c.createAssignment(ni,Mr(ve.expression,nt,un)),void 0)}return _s(ve,nt,s)}function nn(ve,mr){var ln;let ni=Rt,Ls=ot,Za=mt;Rt=ve,ot=void 0,Wi();let Go=g1(ve)&32;if(_e||Go){let rl=Il(ve);if(rl&&Ir(rl))gs().data.className=rl;else if((ln=ve.emitNode)!=null&&ln.assignedName&&Zg(ve.emitNode.assignedName)){if(ve.emitNode.assignedName.textSourceNode&&Ir(ve.emitNode.assignedName.textSourceNode))gs().data.className=ve.emitNode.assignedName.textSourceNode;else if(Uh(ve.emitNode.assignedName.text,V)){let xd=c.createIdentifier(ve.emitNode.assignedName.text);gs().data.className=xd}}}if(_e){let rl=En(ve);jt(rl)&&(gs().data.weakSetName=pp("instances",rl[0].name))}let Ss=Ni(ve);Ss&&(Ui().facts=Ss),Ss&8&&wn();let Uc=mr(ve,Ss);return Vn(),pe.assert(mt===Za),Rt=ni,ot=Ls,Uc}function bn(ve){return nn(ve,ds)}function ds(ve,mr){var ln,ni;let Ls;if(mr&2)if(_e&&((ln=ve.emitNode)!=null&&ln.classThis))Ui().classConstructor=ve.emitNode.classThis,Ls=c.createAssignment(ve.emitNode.classThis,c.getInternalName(ve));else{let Gp=c.createTempVariable(d,!0);Ui().classConstructor=c.cloneNode(Gp),Ls=c.createAssignment(Gp,c.getInternalName(ve))}(ni=ve.emitNode)!=null&&ni.classThis&&(Ui().classThis=ve.emitNode.classThis);let Za=T.hasNodeCheckFlag(ve,262144),Go=Ga(ve,32),Ss=Ga(ve,2048),Uc=Ws(ve.modifiers,Gt,Ig),rl=Ws(ve.heritageClauses,ur,h1),{members:xd,prologue:Lg}=fr(ve),yf=[];if(Ls&&fs().unshift(Ls),jt(ot)&&yf.push(c.createExpressionStatement(c.inlineExpressions(ot))),re||_e||g1(ve)&32){let Gp=H9e(ve);jt(Gp)&&$r(yf,Gp,c.getInternalName(ve))}yf.length>0&&Go&&Ss&&(Uc=Ws(Uc,Gp=>dEe(Gp)?void 0:Gp,Ig),yf.push(c.createExportAssignment(void 0,!1,c.getLocalName(ve,!1,!0))));let rm=Ui().classConstructor;Za&&rm&&(tn(),Tt[Wy(ve)]=rm);let _h=c.updateClassDeclaration(ve,Uc,ve.name,void 0,rl,xd);return yf.unshift(_h),Lg&&yf.unshift(c.createExpressionStatement(Lg)),yf}function Mt(ve){return nn(ve,cn)}function cn(ve,mr){var ln,ni,Ls;let Za=!!(mr&1),Go=H9e(ve),Ss=T.hasNodeCheckFlag(ve,262144),Uc=T.hasNodeCheckFlag(ve,32768),rl;function xd(){var Z_;if(_e&&((Z_=ve.emitNode)!=null&&Z_.classThis))return Ui().classConstructor=ve.emitNode.classThis;let m2=c.createTempVariable(Uc?R:d,!0);return Ui().classConstructor=c.cloneNode(m2),m2}(ln=ve.emitNode)!=null&&ln.classThis&&(Ui().classThis=ve.emitNode.classThis),mr&2&&(rl??(rl=xd()));let Lg=Ws(ve.modifiers,Gt,Ig),yf=Ws(ve.heritageClauses,ur,h1),{members:rm,prologue:_h}=fr(ve),Gp=c.updateClassExpression(ve,Lg,ve.name,void 0,yf,rm),oh=[];if(_h&&oh.push(_h),(_e||g1(ve)&32)&&jt(Go,Z_=>fl(Z_)||pC(Z_)||Ie&&GEe(Z_))||jt(ot))if(Za)pe.assertIsDefined(Qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),jt(ot)&&Or(Qe,At(ot,c.createExpressionStatement)),jt(Go)&&$r(Qe,Go,((ni=ve.emitNode)==null?void 0:ni.classThis)??c.getInternalName(ve)),rl?oh.push(c.createAssignment(rl,Gp)):_e&&((Ls=ve.emitNode)!=null&&Ls.classThis)?oh.push(c.createAssignment(ve.emitNode.classThis,Gp)):oh.push(Gp);else{if(rl??(rl=xd()),Ss){tn();let Z_=c.cloneNode(rl);Z_.emitNode.autoGenerate.flags&=-9,Tt[Wy(ve)]=Z_}oh.push(c.createAssignment(rl,Gp)),Or(oh,ot),Or(oh,ao(Go,rl)),oh.push(c.cloneNode(rl))}else oh.push(Gp);return oh.length>1&&(Gw(Gp,131072),oh.forEach(N0)),c.inlineExpressions(oh)}function Bt(ve){if(!_e)return _s(ve,nt,s)}function xe(ve){if(Ne&&Lt&&fl(Lt)&&mt?.data){let{classThis:mr,classConstructor:ln}=mt.data;return mr??ln??ve}return ve}function fr(ve){let mr=!!(g1(ve)&32);if(_e||$e){for(let Go of ve.members)if(pC(Go))if(Ic(Go))AI(Go,Go.name,bi);else{let Ss=gs();wU(Ss,Go.name,{kind:"untransformed"})}if(_e&&jt(En(ve))&&Je(),hn()){for(let Go of ve.members)if(t0(Go)){let Ss=c.getGeneratedPrivateNameForNode(Go.name,void 0,"_accessor_storage");if(_e||mr&&zh(Go))AI(Go,Ss,mc);else{let Uc=gs();wU(Uc,Ss,{kind:"untransformed"})}}}}let ln=Ws(ve.members,dt,PI),ni;jt(ln,Tc)||(ni=In(void 0,ve));let Ls,Za;if(!_e&&jt(ot)){let Go=c.createExpressionStatement(c.inlineExpressions(ot));if(Go.transformFlags&134234112){let Uc=c.createTempVariable(d),rl=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([Go]));Ls=c.createAssignment(Uc,rl),Go=c.createExpressionStatement(c.createCallExpression(Uc,void 0,[]))}let Ss=c.createBlock([Go]);Za=c.createClassStaticBlockDeclaration(Ss),ot=void 0}if(ni||Za){let Go,Ss=de(ln,Tde),Uc=de(ln,kz);Go=Ft(Go,Ss),Go=Ft(Go,Uc),Go=Ft(Go,ni),Go=Ft(Go,Za);let rl=Ss||Uc?Me(ln,xd=>xd!==Ss&&xd!==Uc):ln;Go=Or(Go,rl),ln=gn(c.createNodeArray(Go),ve.members)}return{members:ln,prologue:Ls}}function Je(){let{weakSetName:ve}=gs().data;pe.assert(ve,"weakSetName should be set in private identifier environment"),fs().push(c.createAssignment(ve,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function In(ve,mr){if(ve=Mr(ve,nt,Tc),!mt?.data||!(mt.data.facts&16))return ve;let ln=BB(mr),ni=!!(ln&&HI(ln.expression).kind!==106),Ls=vI(ve?ve.parameters:void 0,nt,s),Za=Ot(mr,ve,ni);return Za?ve?(pe.assert(Ls),c.updateConstructorDeclaration(ve,void 0,Ls,Za)):N0(ua(gn(c.createConstructorDeclaration(void 0,Ls??[],Za),ve||mr),ve)):ve}function Hn(ve,mr,ln,ni,Ls,Za,Go){let Ss=ni[Ls],Uc=mr[Ss];if(Or(ve,Ws(mr,nt,Lc,ln,Ss-ln)),ln=Ss+1,mU(Uc)){let rl=[];Hn(rl,Uc.tryBlock.statements,0,ni,Ls+1,Za,Go);let xd=c.createNodeArray(rl);gn(xd,Uc.tryBlock.statements),ve.push(c.updateTryStatement(Uc,c.updateBlock(Uc.tryBlock,rl),Mr(Uc.catchClause,nt,iQ),Mr(Uc.finallyBlock,nt,$u)))}else{for(Or(ve,Ws(mr,nt,Lc,Ss,1));ln!!_h.initializer||p(_h.name)||Nw(_h)));let Go=En(ve),Ss=jt(Za)||jt(Go);if(!mr&&!Ss)return uS(void 0,nt,s);S();let Uc=!mr&&ln,rl=0,xd=[],Lg=[],yf=c.createThis();if(Mn(Lg,Go,yf),mr){let _h=Me(Ls,oh=>Ve(Dd(oh),mr)),Gp=Me(Za,oh=>!Ve(Dd(oh),mr));$r(Lg,_h,yf),$r(Lg,Gp,yf)}else $r(Lg,Za,yf);if(mr?.body){rl=c.copyPrologue(mr.body.statements,xd,!1,nt);let _h=M9e(mr.body.statements,rl);if(_h.length)Hn(xd,mr.body.statements,rl,_h,0,Lg,mr);else{for(;rl=xd.length?mr.body.multiLine??xd.length>0:xd.length>0;return gn(c.createBlock(gn(c.createNodeArray(xd),((ni=mr?.body)==null?void 0:ni.statements)??ve.members),rm),mr?.body)}function $r(ve,mr,ln){for(let ni of mr){if(cg(ni)&&!_e)continue;let Ls=ri(ni,ln);Ls&&ve.push(Ls)}}function ri(ve,mr){let ln=fl(ve)?Zn(ve,it,ve):Bs(ve,mr);if(!ln)return;let ni=c.createExpressionStatement(ln);ua(ni,ve),Gw(ni,tA(ve)&3072),hh(ni,ve);let Ls=Dd(ve);return Si(Ls)?(Hg(ni,Ls),pz(ni)):Hg(ni,Av(ve)),kB(ln,void 0),x3(ln,void 0),Nw(Ls)&&Gw(ni,3072),ni}function ao(ve,mr){let ln=[];for(let ni of ve){let Ls=fl(ni)?Zn(ni,it,ni):Zn(ni,()=>Bs(ni,mr),void 0);Ls&&(N0(Ls),ua(Ls,ni),Gw(Ls,tA(ni)&3072),Hg(Ls,Av(ni)),hh(Ls,ni),ln.push(Ls))}return ln}function Bs(ve,mr){var ln;let ni=Lt,Ls=Ys(ve,mr);return Ls&&zh(ve)&&((ln=mt?.data)!=null&&ln.facts)&&(ua(Ls,ve),Gw(Ls,4),Hg(Ls,XT(ve.name)),ht.set(Dd(ve),mt)),Lt=ni,Ls}function Ys(ve,mr){let ln=!M;kb(ve,nr)&&(ve=m1(s,ve));let ni=Nw(ve)?c.getGeneratedPrivateNameForNode(ve.name):Un(ve.name)&&!BN(ve.name.expression)?c.updateComputedPropertyName(ve.name,c.getGeneratedNameForNode(ve.name)):ve.name;if(zh(ve)&&(Lt=ve),p(ni)&&Ic(ve)){let Go=yu(ni);if(Go)return Go.kind==="f"?Go.isStatic?wBs(c,Go.variableName,Mr(ve.initializer,nt,un)):TBs(c,mr,Mr(ve.initializer,nt,un),Go.brandCheckIdentifier):void 0;pe.fail("Undeclared private name for property declaration.")}if((p(ni)||zh(ve))&&!ve.initializer)return;let Ls=Dd(ve);if(Ga(Ls,64))return;let Za=Mr(ve.initializer,nt,un);if(Ve(Ls,Ls.parent)&&Ir(ni)){let Go=c.cloneNode(ni);Za?(gI(Za)&&lEe(Za.expression)&&qD(Za.expression.left,"___runInitializers")&&qT(Za.expression.right)&&mC(Za.expression.right.expression)&&(Za=Za.expression.left),Za=c.inlineExpressions([Za,Go])):Za=Go,ti(ni,3168),Hg(Go,Ls.name),ti(Go,3072)}else Za??(Za=c.createVoidZero());if(ln||p(ni)){let Go=EU(c,mr,ni,ni);return Gw(Go,1024),c.createAssignment(Go,Za)}else{let Go=Un(ni)?ni.expression:Ir(ni)?c.createStringLiteral(Bc(ni.escapedText)):ni,Ss=c.createPropertyDescriptor({value:Za,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(mr,Go,Ss)}}function tn(){Ye&1||(Ye|=1,s.enableSubstitution(80),Tt=[])}function wn(){Ye&2||(Ye|=2,s.enableSubstitution(110),s.enableEmitNotification(263),s.enableEmitNotification(219),s.enableEmitNotification(177),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(175),s.enableEmitNotification(173),s.enableEmitNotification(168))}function Mn(ve,mr,ln){if(!_e||!jt(mr))return;let{weakSetName:ni}=gs().data;pe.assert(ni,"weakSetName should be set in private identifier environment"),ve.push(c.createExpressionStatement(RBs(c,ln,ni)))}function ci(ve){return jo(ve)?c.updatePropertyAccessExpression(ve,c.createVoidZero(),ve.name):c.updateElementAccessExpression(ve,c.createVoidZero(),Mr(ve.argumentExpression,nt,un))}function es(ve,mr){if(Un(ve)){let ln=l9e(ve),ni=Mr(ve.expression,nt,un),Ls=o2(ni),Za=BN(Ls);if(!(!!ln||Jm(Ls)&&kp(Ls.left))&&!Za&&mr){let Ss=c.getGeneratedNameForNode(ve);return T.hasNodeCheckFlag(ve,32768)?R(Ss):d(Ss),c.createAssignment(Ss,ni)}return Za||Ir(Ls)?void 0:ni}}function Wi(){mt={previous:mt,data:void 0}}function Vn(){mt=mt?.previous}function Ui(){return pe.assert(mt),mt.data??(mt.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function gs(){return pe.assert(mt),mt.privateEnv??(mt.privateEnv=NOt({className:void 0,weakSetName:void 0}))}function fs(){return ot??(ot=[])}function bi(ve,mr,ln,ni,Ls,Za,Go){t0(ve)?wI(ve,mr,ln,ni,Ls,Za,Go):pi(ve)?mc(ve,mr,ln,ni,Ls,Za,Go):uu(ve)?gg(ve,mr,ln,ni,Ls,Za,Go):Bg(ve)?Ag(ve,mr,ln,ni,Ls,Za,Go):Dg(ve)&&_u(ve,mr,ln,ni,Ls,Za,Go)}function mc(ve,mr,ln,ni,Ls,Za,Go){if(Ls){let Ss=pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"),Uc=Dl(mr);wU(ni,mr,{kind:"f",isStatic:!0,brandCheckIdentifier:Ss,variableName:Uc,isValid:Za})}else{let Ss=Dl(mr);wU(ni,mr,{kind:"f",isStatic:!1,brandCheckIdentifier:Ss,isValid:Za}),fs().push(c.createAssignment(Ss,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function gg(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");wU(ni,mr,{kind:"m",methodName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function Ag(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_get"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.getterName?Go.getterName=Ss:wU(ni,mr,{kind:"a",getterName:Ss,setterName:void 0,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function _u(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_set"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.setterName?Go.setterName=Ss:wU(ni,mr,{kind:"a",getterName:void 0,setterName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function wI(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_get"),Uc=Dl(mr,"_set"),rl=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");wU(ni,mr,{kind:"a",getterName:Ss,setterName:Uc,brandCheckIdentifier:rl,isStatic:Ls,isValid:Za})}function AI(ve,mr,ln){let ni=Ui(),Ls=gs(),Za=Pet(Ls,mr),Go=zh(ve),Ss=!NBs(mr)&&Za===void 0;ln(ve,mr,ni,Ls,Go,Ss,Za)}function pp(ve,mr,ln){let{className:ni}=gs().data,Ls=ni?{prefix:"_",node:ni,suffix:"_"}:"_",Za=typeof ve=="object"?c.getGeneratedNameForNode(ve,24,Ls,ln):typeof ve=="string"?c.createUniqueName(ve,16,Ls,ln):c.createTempVariable(void 0,!0,Ls,ln);return T.hasNodeCheckFlag(mr,32768)?R(Za):d(Za),Za}function Dl(ve,mr){let ln=xY(ve);return pp(ln?.substring(1)??ve,ve,mr)}function yu(ve){let mr=DOt(mt,ve);return mr?.kind==="untransformed"?void 0:mr}function tm(ve){let mr=c.getGeneratedNameForNode(ve),ln=yu(ve.name);if(!ln)return _s(ve,nt,s);let ni=ve.expression;return($re(ve)||xy(ve)||!lQ(ve.expression))&&(ni=c.createTempVariable(d,!0),fs().push(c.createBinaryExpression(ni,64,Mr(ve.expression,nt,un)))),c.createAssignmentTargetWrapper(mr,hr(ln,ni,mr,64))}function jp(ve){if(og(ve)||OI(ve))return oi(ve);if(cP(ve))return tm(ve);if(Te&&Lt&&xy(ve)&&Rde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=Yg(ve)?Mr(ve.argumentExpression,nt,un):Ir(ve.name)?c.createStringLiteralFromNode(ve.name):void 0;if(Ls){let Za=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Za,c.createReflectSetCall(ln,Ls,Za,mr))}}}return _s(ve,nt,s)}function Xg(ve){if(kb(ve,nr)&&(ve=m1(s,ve)),Jm(ve,!0)){let mr=jp(ve.left),ln=Mr(ve.right,nt,un);return c.updateBinaryExpression(ve,mr,ve.operatorToken,ln)}return jp(ve)}function sh(ve){if(D_(ve.expression)){let mr=jp(ve.expression);return c.updateSpreadElement(ve,mr)}return _s(ve,nt,s)}function dS(ve){if(EJ(ve)){if(of(ve))return sh(ve);if(!yp(ve))return Xg(ve)}return _s(ve,nt,s)}function gu(ve){let mr=Mr(ve.name,nt,VI);if(Jm(ve.initializer,!0)){let ln=Xg(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}if(D_(ve.initializer)){let ln=jp(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}return _s(ve,nt,s)}function bg(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function KA(ve){if(D_(ve.expression)){let mr=jp(ve.expression);return c.updateSpreadAssignment(ve,mr)}return _s(ve,nt,s)}function TA(ve){return pe.assertNode(ve,gP),Lx(ve)?KA(ve):a0(ve)?bg(ve):fm(ve)?gu(ve):_s(ve,nt,s)}function oi(ve){return OI(ve)?c.updateArrayLiteralExpression(ve,Ws(ve.elements,dS,un)):c.updateObjectLiteralExpression(ve,Ws(ve.properties,TA,yw))}function $d(ve,mr,ln){let ni=Dd(mr),Ls=ht.get(ni);if(Ls){let Za=mt,Go=Pt;mt=Ls,Pt=Ke,Ke=!fl(ni)||!(g1(ni)&32),Ue(ve,mr,ln),Ke=Pt,Pt=Go,mt=Za;return}switch(mr.kind){case 219:if(lA(ni)||tA(mr)&524288)break;case 263:case 177:case 178:case 179:case 175:case 173:{let Za=mt,Go=Pt;mt=void 0,Pt=Ke,Ke=!1,Ue(ve,mr,ln),Ke=Pt,Pt=Go,mt=Za;return}case 168:{let Za=mt,Go=Ke;mt=mt?.previous,Ke=Pt,Ue(ve,mr,ln),Ke=Go,mt=Za;return}}Ue(ve,mr,ln)}function YI(ve,mr){return mr=We(ve,mr),ve===1?Fh(mr):mr}function Fh(ve){switch(ve.kind){case 80:return _f(ve);case 110:return WC(ve)}return ve}function WC(ve){if(Ye&2&&mt?.data&&!_t.has(ve)){let{facts:mr,classConstructor:ln,classThis:ni}=mt.data,Ls=Ke?ni??ln:ln;if(Ls)return gn(ua(c.cloneNode(Ls),ve),ve);if(mr&1&&ee)return c.createParenthesizedExpression(c.createVoidZero())}return ve}function _f(ve){return QI(ve)||ve}function QI(ve){if(Ye&1&&T.hasNodeCheckFlag(ve,536870912)){let mr=T.getReferencedValueDeclaration(ve);if(mr){let ln=Tt[mr.id];if(ln){let ni=c.cloneNode(ln);return Hg(ni,ve),hh(ni,ve),ni}}}}}function wBs(s,c,g){return s.createAssignment(c,s.createObjectLiteralExpression([s.createPropertyAssignment("value",g||s.createVoidZero())]))}function TBs(s,c,g,d){return s.createCallExpression(s.createPropertyAccessExpression(d,"set"),void 0,[c,g||s.createVoidZero()])}function RBs(s,c,g){return s.createCallExpression(s.createPropertyAccessExpression(g,"add"),void 0,[c])}function NBs(s){return!TL(s)&&s.escapedText==="#constructor"}function DBs(s){return p(s.left)&&s.operatorToken.kind===103}function kBs(s){return pi(s)&&zh(s)}function Rde(s){return fl(s)||kBs(s)}function OOt(s){let{factory:c,hoistVariableDeclaration:g}=s,d=s.getEmitResolver(),h=s.getCompilerOptions(),_=Mg(h),S=a_(h,"strictNullChecks"),R,T;return{serializeTypeNode:(ot,Qe)=>W(ot,Ie,Qe),serializeTypeOfNode:(ot,Qe,mt)=>W(ot,M,Qe,mt),serializeParameterTypesOfNode:(ot,Qe,mt)=>W(ot,ee,Qe,mt),serializeReturnTypeOfNode:(ot,Qe)=>W(ot,ge,Qe)};function W(ot,Qe,mt,ht){let _t=R,Rt=T;R=ot.currentLexicalScope,T=ot.currentNameScope;let Lt=ht===void 0?Qe(mt):Qe(mt,ht);return R=_t,T=Rt,Lt}function V(ot,Qe){let mt=BP(Qe.members,ot);return mt.setAccessor&&DZe(mt.setAccessor)||mt.getAccessor&&xb(mt.getAccessor)}function M(ot,Qe){switch(ot.kind){case 173:case 170:return Ie(ot.type);case 179:case 178:return Ie(V(ot,Qe));case 264:case 232:case 175:return c.createIdentifier("Function");default:return c.createVoidZero()}}function ee(ot,Qe){let mt=xa(ot)?lN(ot):bu(ot)&&u1(ot.body)?ot:void 0,ht=[];if(mt){let _t=re(mt,Qe),Rt=_t.length;for(let Lt=0;Lt_t.parent&&d2(_t.parent)&&(_t.parent.trueType===_t||_t.parent.falseType===_t)))return c.createIdentifier("Object");let mt=We(ot.typeName),ht=c.createTempVariable(g);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(ht,mt),"function"),void 0,ht,void 0,c.createIdentifier("Object"));case 1:return Ue(ot.typeName);case 2:return c.createVoidZero();case 4:return Tt("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return Tt("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return pe.assertNever(Qe)}}function Ze(ot,Qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(ot),c.createStringLiteral("undefined")),Qe)}function We(ot){if(ot.kind===80){let ht=Ue(ot);return Ze(ht,ht)}if(ot.left.kind===80)return Ze(Ue(ot.left),Ue(ot));let Qe=We(ot.left),mt=c.createTempVariable(g);return c.createLogicalAnd(c.createLogicalAnd(Qe.left,c.createStrictInequality(c.createAssignment(mt,Qe.right),c.createVoidZero())),c.createPropertyAccessExpression(mt,ot.right))}function Ue(ot){switch(ot.kind){case 80:let Qe=XA(gn(H3.cloneNode(ot),ot),ot.parent);return Qe.original=void 0,XA(Qe,$l(R)),Qe;case 167:return $e(ot)}}function $e(ot){return c.createPropertyAccessExpression(Ue(ot.left),ot.right)}function Ye(ot){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(ot),"function"),void 0,c.createIdentifier(ot),void 0,c.createIdentifier("Object"))}function Tt(ot,Qe){return _dEe(hn)||So(hn)?void 0:hn,dp),Ns=Av(Ht),An=ur(Ht),si=S<2?c.getInternalName(Ht,!1,!0):c.getLocalName(Ht,!1,!0),ks=Ws(Ht.heritageClauses,M,h1),Ic=Ws(Ht.members,M,PI),su=[];({members:Ic,decorationStatements:su}=_e(Ht,Ic));let Zn=S>=9&&!!An&&jt(Ic,hn=>pi(hn)&&Ga(hn,256)||fl(hn));Zn&&(Ic=gn(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(An,c.createThis()))])),...Ic]),Ic));let ya=c.createClassExpression(Zi,Br&&kp(Br)?void 0:Br,void 0,ks,Ic);ua(ya,Ht),gn(ya,Ns);let Gl=An&&!Zn?c.createAssignment(An,ya):ya,ba=c.createVariableDeclaration(si,void 0,void 0,Gl);ua(ba,Ht);let Wo=c.createVariableDeclarationList([ba],1),hc=c.createVariableStatement(void 0,Wo);ua(hc,Ht),gn(hc,Ns),hh(hc,Ht);let yr=[hc];if(Or(yr,su),Pt(yr,Ht),mn)if(jn){let hn=c.createExportDefault(si);yr.push(hn)}else{let hn=c.createExternalModuleExport(c.getDeclarationName(Ht));yr.push(hn)}return yr}function Te(Ht){return c.updateClassExpression(Ht,Ws(Ht.modifiers,V,Ig),Ht.name,void 0,Ws(Ht.heritageClauses,M,h1),Ws(Ht.members,M,PI))}function Ze(Ht){return c.updateConstructorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),Ws(Ht.parameters,M,Si),Mr(Ht.body,M,$u))}function We(Ht,Br){return Ht!==Br&&(hh(Ht,Br),Hg(Ht,Av(Br))),Ht}function Ue(Ht){return We(c.updateMethodDeclaration(Ht,Ws(Ht.modifiers,V,Ig),Ht.asteriskToken,pe.checkDefined(Mr(Ht.name,M,VI)),void 0,void 0,Ws(Ht.parameters,M,Si),void 0,Mr(Ht.body,M,$u)),Ht)}function $e(Ht){return We(c.updateGetAccessorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),Ws(Ht.parameters,M,Si),void 0,Mr(Ht.body,M,$u)),Ht)}function Ye(Ht){return We(c.updateSetAccessorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),Ws(Ht.parameters,M,Si),Mr(Ht.body,M,$u)),Ht)}function Tt(Ht){if(!(Ht.flags&33554432||Ga(Ht,128)))return We(c.updatePropertyDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),void 0,void 0,Mr(Ht.initializer,M,un)),Ht)}function ot(Ht){let Br=c.updateParameterDeclaration(Ht,cWt(c,Ht.modifiers),Ht.dotDotDotToken,pe.checkDefined(Mr(Ht.name,M,RL)),void 0,void 0,Mr(Ht.initializer,M,un));return Br!==Ht&&(hh(Br,Ht),gn(Br,Av(Ht)),Hg(Br,Av(Ht)),ti(Br.name,64)),Br}function Qe(Ht){return qD(Ht.expression,"___metadata")}function mt(Ht){if(!Ht)return;let{false:Br,true:mn}=Ko(Ht.decorators,Qe),jn=[];return Or(jn,At(Br,Gt)),Or(jn,er(Ht.parameters,nt)),Or(jn,At(mn,Gt)),jn}function ht(Ht,Br,mn){Or(Ht,At(Lt(Br,mn),jn=>c.createExpressionStatement(jn)))}function _t(Ht,Br,mn){return tne(!0,Ht,mn)&&Br===cg(Ht)}function Rt(Ht,Br){return Me(Ht.members,mn=>_t(mn,Br,Ht))}function Lt(Ht,Br){let mn=Rt(Ht,Br),jn;for(let Zi of mn)jn=Ft(jn,Ke(Ht,Zi));return jn}function Ke(Ht,Br){let mn=Y9e(Br,Ht,!0),jn=mt(mn);if(!jn)return;let Zi=dt(Ht,Br),Ns=Dt(Br,!Ga(Br,128)),An=pi(Br)&&!Nw(Br)?c.createVoidZero():c.createNull(),si=g().createDecorateHelper(jn,Zi,Ns,An);return ti(si,3072),Hg(si,Av(Br)),si}function Pt(Ht,Br){let mn=_r(Br);mn&&Ht.push(ua(c.createExpressionStatement(mn),Br))}function _r(Ht){let Br=Vet(Ht,!0),mn=mt(Br);if(!mn)return;let jn=T&&T[Wy(Ht)],Zi=S<2?c.getInternalName(Ht,!1,!0):c.getDeclarationName(Ht,!1,!0),Ns=g().createDecorateHelper(mn,Zi),An=c.createAssignment(Zi,jn?c.createAssignment(jn,Ns):Ns);return ti(An,3072),Hg(An,Av(Ht)),An}function Gt(Ht){return pe.checkDefined(Mr(Ht.expression,M,un))}function nt(Ht,Br){let mn;if(Ht){mn=[];for(let jn of Ht){let Zi=g().createParamHelper(Gt(jn),Br);gn(Zi,jn.expression),ti(Zi,3072),mn.push(Zi)}}return mn}function Dt(Ht,Br){let mn=Ht.name;return p(mn)?c.createIdentifier(""):Un(mn)?Br&&!BN(mn.expression)?c.getGeneratedNameForNode(mn):mn.expression:Ir(mn)?c.createStringLiteral(Vo(mn)):c.cloneNode(mn)}function tr(){T||(s.enableSubstitution(80),T=[])}function ur(Ht){if(h.hasNodeCheckFlag(Ht,262144)){tr();let Br=c.createUniqueName(Ht.name&&!kp(Ht.name)?Vo(Ht.name):"default");return T[Wy(Ht)]=Br,d(Br),Br}}function Gr(Ht){return c.createPropertyAccessExpression(c.getDeclarationName(Ht),"prototype")}function dt(Ht,Br){return cg(Br)?c.getDeclarationName(Ht):Gr(Ht)}function pr(Ht,Br){return Br=R(Ht,Br),Ht===1?st(Br):Br}function st(Ht){switch(Ht.kind){case 80:return ir(Ht)}return Ht}function ir(Ht){return zt(Ht)??Ht}function zt(Ht){if(T&&h.hasNodeCheckFlag(Ht,536870912)){let Br=h.getReferencedValueDeclaration(Ht);if(Br){let mn=T[Br.id];if(mn){let jn=c.cloneNode(mn);return Hg(jn,Ht),hh(jn,Ht),jn}}}}}function HOt(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=Mg(s.getCompilerOptions()),R,T,W,V,M,ee;return rR(s,re);function re(xe){R=void 0,ee=!1;let fr=_s(xe,Ye,s);return hN(fr,s.readEmitHelpers()),ee&&(N3(fr,32),ee=!1),fr}function ge(){switch(T=void 0,W=void 0,V=void 0,R?.kind){case"class":T=R.classInfo;break;case"class-element":T=R.next.classInfo,W=R.classThis,V=R.classSuper;break;case"name":let xe=R.next.next.next;xe?.kind==="class-element"&&(T=xe.next.classInfo,W=xe.classThis,V=xe.classSuper);break}}function Ie(xe){R={kind:"class",next:R,classInfo:xe,savedPendingExpressions:M},M=void 0,ge()}function _e(){pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),M=R.savedPendingExpressions,R=R.next,ge()}function Ee(xe){var fr,Je;pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},(fl(xe)||pi(xe)&&zh(xe))&&(R.classThis=(fr=R.next.classInfo)==null?void 0:fr.classThis,R.classSuper=(Je=R.next.classInfo)==null?void 0:Je.classSuper),ge()}function Ne(){var xe;pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),pe.assert(((xe=R.next)==null?void 0:xe.kind)==="class","Incorrect value for top.next.kind.",()=>{var fr;return`Expected top.next.kind to be 'class' but got '${(fr=R.next)==null?void 0:fr.kind}' instead.`}),R=R.next,ge()}function Te(){pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ge()}function Ze(){pe.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ge()}function We(){R?.kind==="other"?(pe.assert(!M),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:M},M=void 0,ge())}function Ue(){pe.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(pe.assert(!M),R.depth--):(M=R.savedPendingExpressions,R=R.next,ge())}function $e(xe){return!!(xe.transformFlags&33554432)||!!W&&!!(xe.transformFlags&16384)||!!W&&!!V&&!!(xe.transformFlags&134217728)}function Ye(xe){if(!$e(xe))return xe;switch(xe.kind){case 171:return pe.fail("Use `modifierVisitor` instead.");case 264:return _r(xe);case 232:return Gt(xe);case 177:case 173:case 176:return pe.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 170:return Ns(xe);case 227:return su(xe,!1);case 304:return hc(xe);case 261:return yr(xe);case 209:return hn(xe);case 278:return Pr(xe);case 110:return Ht(xe);case 249:return ks(xe);case 245:return Ic(xe);case 357:return ya(xe,!1);case 218:return Pn(xe,!1);case 356:return pt(xe,!1);case 214:return Br(xe);case 216:return mn(xe);case 225:case 226:return Zn(xe,!1);case 212:return jn(xe);case 213:return Zi(xe);case 168:return Wo(xe);case 175:case 179:case 178:case 219:case 263:{We();let fr=_s(xe,Tt,s);return Ue(),fr}default:return _s(xe,Tt,s)}}function Tt(xe){switch(xe.kind){case 171:return;default:return Ye(xe)}}function ot(xe){switch(xe.kind){case 171:return;default:return xe}}function Qe(xe){switch(xe.kind){case 177:return tr(xe);case 175:return dt(xe);case 178:return pr(xe);case 179:return st(xe);case 173:return zt(xe);case 176:return ir(xe);default:return Ye(xe)}}function mt(xe){switch(xe.kind){case 225:case 226:return Zn(xe,!0);case 227:return su(xe,!0);case 357:return ya(xe,!0);case 218:return Pn(xe,!0);default:return Ye(xe)}}function ht(xe){let fr=xe.name&&Ir(xe.name)&&!kp(xe.name)?Vo(xe.name):xe.name&&p(xe.name)&&!kp(xe.name)?Vo(xe.name).slice(1):xe.name&&Zg(xe.name)&&Uh(xe.name.text,99)?xe.name.text:xa(xe)?"class":"member";return bB(xe)&&(fr=`get_${fr}`),cv(xe)&&(fr=`set_${fr}`),xe.name&&p(xe.name)&&(fr=`private_${fr}`),cg(xe)&&(fr=`static_${fr}`),"_"+fr}function _t(xe,fr){return c.createUniqueName(`${ht(xe)}_${fr}`,24)}function Rt(xe,fr){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(xe,void 0,void 0,fr)],1))}function Lt(xe){let fr=c.createUniqueName("_metadata",48),Je,In,Hn=!1,Ot=!1,$r=!1,ri,ao,Bs;if(MJ(!1,xe)){let Ys=jt(xe.members,tn=>(pC(tn)||t0(tn))&&zh(tn));ri=c.createUniqueName("_classThis",Ys?24:48)}for(let Ys of xe.members){if(NL(Ys)&&tne(!1,Ys,xe))if(zh(Ys)){if(!In){In=c.createUniqueName("_staticExtraInitializers",48);let tn=g().createRunInitializersHelper(ri??c.createThis(),In);Hg(tn,xe.name??jD(xe)),ao??(ao=[]),ao.push(tn)}}else{if(!Je){Je=c.createUniqueName("_instanceExtraInitializers",48);let tn=g().createRunInitializersHelper(c.createThis(),Je);Hg(tn,xe.name??jD(xe)),Bs??(Bs=[]),Bs.push(tn)}Je??(Je=c.createUniqueName("_instanceExtraInitializers",48))}if(fl(Ys)?kz(Ys)||(Hn=!0):pi(Ys)&&(zh(Ys)?Hn||(Hn=!!Ys.initializer||p1(Ys)):Ot||(Ot=!VJ(Ys))),(pC(Ys)||t0(Ys))&&zh(Ys)&&($r=!0),In&&Je&&Hn&&Ot&&$r)break}return{class:xe,classThis:ri,metadataReference:fr,instanceMethodExtraInitializersName:Je,staticMethodExtraInitializersName:In,hasStaticInitializers:Hn,hasNonAmbientInstanceFields:Ot,hasStaticPrivateClassElements:$r,pendingStaticInitializers:ao,pendingInstanceInitializers:Bs}}function Ke(xe){d(),!Oet(xe)&&Rx(!1,xe)&&(xe=J9e(s,xe,c.createStringLiteral("")));let fr=c.getLocalName(xe,!1,!1,!0),Je=Lt(xe),In=[],Hn,Ot,$r,ri,ao=!1,Bs=Fr(Vet(xe,!1));Bs&&(Je.classDecoratorsName=c.createUniqueName("_classDecorators",48),Je.classDescriptorName=c.createUniqueName("_classDescriptor",48),Je.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),pe.assertIsDefined(Je.classThis),In.push(Rt(Je.classDecoratorsName,c.createArrayLiteralExpression(Bs)),Rt(Je.classDescriptorName),Rt(Je.classExtraInitializersName,c.createArrayLiteralExpression()),Rt(Je.classThis)),Je.hasStaticPrivateClassElements&&(ao=!0,ee=!0));let Ys=mne(xe.heritageClauses,96),tn=Ys&&Nc(Ys.types),wn=tn&&Mr(tn.expression,Ye,un);if(wn){Je.classSuper=c.createUniqueName("_classSuper",48);let gs=HI(wn),fs=vd(gs)&&!gs.name||UA(gs)&&!gs.name||lA(gs)?c.createComma(c.createNumericLiteral(0),wn):wn;In.push(Rt(Je.classSuper,fs));let bi=c.updateExpressionWithTypeArguments(tn,Je.classSuper,void 0),mc=c.updateHeritageClause(Ys,[bi]);ri=c.createNodeArray([mc])}let Mn=Je.classThis??c.createThis();Ie(Je),Hn=Ft(Hn,Mt(Je.metadataReference,Je.classSuper));let ci=xe.members;if(ci=Ws(ci,gs=>Tc(gs)?gs:Qe(gs),PI),ci=Ws(ci,gs=>Tc(gs)?Qe(gs):gs,PI),M){let gs;for(let fs of M){fs=Mr(fs,function mc(gg){if(!(gg.transformFlags&16384))return gg;switch(gg.kind){case 110:return gs||(gs=c.createUniqueName("_outerThis",16),In.unshift(Rt(gs,c.createThis()))),gs;default:return _s(gg,mc,s)}},un);let bi=c.createExpressionStatement(fs);Hn=Ft(Hn,bi)}M=void 0}if(_e(),jt(Je.pendingInstanceInitializers)&&!lN(xe)){let gs=nt(xe,Je);if(gs){let fs=BB(xe),bi=!!(fs&&HI(fs.expression).kind!==106),mc=[];if(bi){let Ag=c.createSpreadElement(c.createIdentifier("arguments")),_u=c.createCallExpression(c.createSuper(),void 0,[Ag]);mc.push(c.createExpressionStatement(_u))}Or(mc,gs);let gg=c.createBlock(mc,!0);$r=c.createConstructorDeclaration(void 0,[],gg)}}if(Je.staticMethodExtraInitializersName&&In.push(Rt(Je.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Je.instanceMethodExtraInitializersName&&In.push(Rt(Je.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Je.memberInfos&&Dh(Je.memberInfos,(gs,fs)=>{cg(fs)&&(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Je.memberInfos&&Dh(Je.memberInfos,(gs,fs)=>{cg(fs)||(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Hn=Or(Hn,Je.staticNonFieldDecorationStatements),Hn=Or(Hn,Je.nonStaticNonFieldDecorationStatements),Hn=Or(Hn,Je.staticFieldDecorationStatements),Hn=Or(Hn,Je.nonStaticFieldDecorationStatements),Je.classDescriptorName&&Je.classDecoratorsName&&Je.classExtraInitializersName&&Je.classThis){Hn??(Hn=[]);let gs=c.createPropertyAssignment("value",Mn),fs=c.createObjectLiteralExpression([gs]),bi=c.createAssignment(Je.classDescriptorName,fs),mc=c.createPropertyAccessExpression(Mn,"name"),gg=g().createESDecorateHelper(c.createNull(),bi,Je.classDecoratorsName,{kind:"class",name:mc,metadata:Je.metadataReference},c.createNull(),Je.classExtraInitializersName),Ag=c.createExpressionStatement(gg);Hg(Ag,jD(xe)),Hn.push(Ag);let _u=c.createPropertyAccessExpression(Je.classDescriptorName,"value"),wI=c.createAssignment(Je.classThis,_u),AI=c.createAssignment(fr,wI);Hn.push(c.createExpressionStatement(AI))}if(Hn.push(cn(Mn,Je.metadataReference)),jt(Je.pendingStaticInitializers)){for(let gs of Je.pendingStaticInitializers){let fs=c.createExpressionStatement(gs);Hg(fs,XT(gs)),Ot=Ft(Ot,fs)}Je.pendingStaticInitializers=void 0}if(Je.classExtraInitializersName){let gs=g().createRunInitializersHelper(Mn,Je.classExtraInitializersName),fs=c.createExpressionStatement(gs);Hg(fs,xe.name??jD(xe)),Ot=Ft(Ot,fs)}Hn&&Ot&&!Je.hasStaticInitializers&&(Or(Hn,Ot),Ot=void 0);let es=Hn&&c.createClassStaticBlockDeclaration(c.createBlock(Hn,!0));es&&ao&&sie(es,32);let Wi=Ot&&c.createClassStaticBlockDeclaration(c.createBlock(Ot,!0));if(es||$r||Wi){let gs=[],fs=ci.findIndex(kz);es?(Or(gs,ci,0,fs+1),gs.push(es),Or(gs,ci,fs+1)):Or(gs,ci),$r&&gs.push($r),Wi&&gs.push(Wi),ci=gn(c.createNodeArray(gs),ci)}let Vn=h(),Ui;if(Bs){Ui=c.createClassExpression(void 0,void 0,void 0,ri,ci),Je.classThis&&(Ui=FOt(c,Ui,Je.classThis));let gs=c.createVariableDeclaration(fr,void 0,void 0,Ui),fs=c.createVariableDeclarationList([gs]),bi=Je.classThis?c.createAssignment(fr,Je.classThis):fr;In.push(c.createVariableStatement(void 0,fs),c.createReturnStatement(bi))}else Ui=c.createClassExpression(void 0,xe.name,void 0,ri,ci),In.push(c.createReturnStatement(Ui));if(ao){N3(Ui,32);for(let gs of Ui.members)(pC(gs)||t0(gs))&&zh(gs)&&N3(gs,32)}return ua(Ui,xe),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(In,Vn))}function Pt(xe){return Rx(!1,xe)||HJ(!1,xe)}function _r(xe){if(Pt(xe)){let fr=[],Je=Dd(xe,xa)??xe,In=Je.name?c.createStringLiteralFromNode(Je.name):c.createStringLiteral("default"),Hn=Ga(xe,32),Ot=Ga(xe,2048);if(xe.name||(xe=J9e(s,xe,In)),Hn&&Ot){let $r=Ke(xe);if(xe.name){let ri=c.createVariableDeclaration(c.getLocalName(xe),void 0,void 0,$r);ua(ri,xe);let ao=c.createVariableDeclarationList([ri],1),Bs=c.createVariableStatement(void 0,ao);fr.push(Bs);let Ys=c.createExportDefault(c.getDeclarationName(xe));ua(Ys,xe),hh(Ys,DB(xe)),Hg(Ys,jD(xe)),fr.push(Ys)}else{let ri=c.createExportDefault($r);ua(ri,xe),hh(ri,DB(xe)),Hg(ri,jD(xe)),fr.push(ri)}}else{pe.assertIsDefined(xe.name,"A class declaration that is not a default export must have a name.");let $r=Ke(xe),ri=Hn?Mn=>y(Mn)?void 0:ot(Mn):ot,ao=Ws(xe.modifiers,ri,Ig),Bs=c.getLocalName(xe,!1,!0),Ys=c.createVariableDeclaration(Bs,void 0,void 0,$r);ua(Ys,xe);let tn=c.createVariableDeclarationList([Ys],1),wn=c.createVariableStatement(ao,tn);if(ua(wn,xe),hh(wn,DB(xe)),fr.push(wn),Hn){let Mn=c.createExternalModuleExport(Bs);ua(Mn,xe),fr.push(Mn)}}return ac(fr)}else{let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.heritageClauses,Ye,h1);Ie(void 0);let In=Ws(xe.members,Qe,PI);return _e(),c.updateClassDeclaration(xe,fr,xe.name,void 0,Je,In)}}function Gt(xe){if(Pt(xe)){let fr=Ke(xe);return ua(fr,xe),fr}else{let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.heritageClauses,Ye,h1);Ie(void 0);let In=Ws(xe.members,Qe,PI);return _e(),c.updateClassExpression(xe,fr,xe.name,void 0,Je,In)}}function nt(xe,fr){if(jt(fr.pendingInstanceInitializers)){let Je=[];return Je.push(c.createExpressionStatement(c.inlineExpressions(fr.pendingInstanceInitializers))),fr.pendingInstanceInitializers=void 0,Je}}function Dt(xe,fr,Je,In,Hn,Ot){let $r=In[Hn],ri=fr[$r];if(Or(xe,Ws(fr,Ye,Lc,Je,$r-Je)),mU(ri)){let ao=[];Dt(ao,ri.tryBlock.statements,0,In,Hn+1,Ot);let Bs=c.createNodeArray(ao);gn(Bs,ri.tryBlock.statements),xe.push(c.updateTryStatement(ri,c.updateBlock(ri.tryBlock,ao),Mr(ri.catchClause,Ye,iQ),Mr(ri.finallyBlock,Ye,$u)))}else Or(xe,Ws(fr,Ye,Lc,$r,1)),Or(xe,Ot);Or(xe,Ws(fr,Ye,Lc,$r+1))}function tr(xe){Ee(xe);let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.parameters,Ye,Si),In;if(xe.body&&T){let Hn=nt(T.class,T);if(Hn){let Ot=[],$r=c.copyPrologue(xe.body.statements,Ot,!1,Ye),ri=M9e(xe.body.statements,$r);ri.length>0?Dt(Ot,xe.body.statements,$r,ri,0,Hn):(Or(Ot,Hn),Or(Ot,Ws(xe.body.statements,Ye,Lc))),In=c.createBlock(Ot,!0),ua(In,xe.body),gn(In,xe.body)}}return In??(In=Mr(xe.body,Ye,$u)),Ne(),c.updateConstructorDeclaration(xe,fr,Je,In)}function ur(xe,fr){return xe!==fr&&(hh(xe,fr),Hg(xe,jD(fr))),xe}function Gr(xe,fr,Je){let In,Hn,Ot,$r,ri,ao;if(!fr){let tn=Ws(xe.modifiers,ot,Ig);return Te(),Hn=ba(xe.name),Ze(),{modifiers:tn,referencedName:In,name:Hn,initializersName:Ot,descriptorName:ao,thisArg:ri}}let Bs=Fr(Y9e(xe,fr.class,!1)),Ys=Ws(xe.modifiers,ot,Ig);if(Bs){let tn=_t(xe,"decorators"),wn=c.createArrayLiteralExpression(Bs),Mn=c.createAssignment(tn,wn),ci={memberDecoratorsName:tn};fr.memberInfos??(fr.memberInfos=new Map),fr.memberInfos.set(xe,ci),M??(M=[]),M.push(Mn);let es=NL(xe)||t0(xe)?cg(xe)?fr.staticNonFieldDecorationStatements??(fr.staticNonFieldDecorationStatements=[]):fr.nonStaticNonFieldDecorationStatements??(fr.nonStaticNonFieldDecorationStatements=[]):pi(xe)&&!t0(xe)?cg(xe)?fr.staticFieldDecorationStatements??(fr.staticFieldDecorationStatements=[]):fr.nonStaticFieldDecorationStatements??(fr.nonStaticFieldDecorationStatements=[]):pe.fail(),Wi=Bg(xe)?"getter":Dg(xe)?"setter":uu(xe)?"method":t0(xe)?"accessor":pi(xe)?"field":pe.fail(),Vn;if(Ir(xe.name)||p(xe.name))Vn={computed:!1,name:xe.name};else if(Tw(xe.name))Vn={computed:!0,name:c.createStringLiteralFromNode(xe.name)};else{let gs=xe.name.expression;Tw(gs)&&!Ir(gs)?Vn={computed:!0,name:c.createStringLiteralFromNode(gs)}:(Te(),{referencedName:In,name:Hn}=Gl(xe.name),Vn={computed:!0,name:In},Ze())}let Ui={kind:Wi,name:Vn,static:cg(xe),private:p(xe.name),access:{get:pi(xe)||Bg(xe)||uu(xe),set:pi(xe)||Dg(xe)},metadata:fr.metadataReference};if(NL(xe)){let gs=cg(xe)?fr.staticMethodExtraInitializersName:fr.instanceMethodExtraInitializersName;pe.assertIsDefined(gs);let fs;pC(xe)&&Je&&(fs=Je(xe,Ws(Ys,gg=>Gs(gg,G),Ig)),ci.memberDescriptorName=ao=_t(xe,"descriptor"),fs=c.createAssignment(ao,fs));let bi=g().createESDecorateHelper(c.createThis(),fs??c.createNull(),tn,Ui,c.createNull(),gs),mc=c.createExpressionStatement(bi);Hg(mc,jD(xe)),es.push(mc)}else if(pi(xe)){Ot=ci.memberInitializersName??(ci.memberInitializersName=_t(xe,"initializers")),$r=ci.memberExtraInitializersName??(ci.memberExtraInitializersName=_t(xe,"extraInitializers")),cg(xe)&&(ri=fr.classThis);let gs;pC(xe)&&Nw(xe)&&Je&&(gs=Je(xe,void 0),ci.memberDescriptorName=ao=_t(xe,"descriptor"),gs=c.createAssignment(ao,gs));let fs=g().createESDecorateHelper(t0(xe)?c.createThis():c.createNull(),gs??c.createNull(),tn,Ui,Ot,$r),bi=c.createExpressionStatement(fs);Hg(bi,jD(xe)),es.push(bi)}}return Hn===void 0&&(Te(),Hn=ba(xe.name),Ze()),!jt(Ys)&&(uu(xe)||pi(xe))&&ti(Hn,1024),{modifiers:Ys,referencedName:In,name:Hn,initializersName:Ot,extraInitializersName:$r,descriptorName:ao,thisArg:ri}}function dt(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,hr);if(In)return Ne(),ur(nn(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateMethodDeclaration(xe,fr,xe.asteriskToken,Je,void 0,void 0,Hn,void 0,Ot),xe)}}function pr(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,En);if(In)return Ne(),ur(bn(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateGetAccessorDeclaration(xe,fr,Je,Hn,void 0,Ot),xe)}}function st(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,Ni);if(In)return Ne(),ur(ds(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateSetAccessorDeclaration(xe,fr,Je,Hn,Ot),xe)}}function ir(xe){Ee(xe);let fr;if(kz(xe))fr=_s(xe,Ye,s);else if(Tde(xe)){let Je=W;W=void 0,fr=_s(xe,Ye,s),W=Je}else if(xe=_s(xe,Ye,s),fr=xe,T&&(T.hasStaticInitializers=!0,jt(T.pendingStaticInitializers))){let Je=[];for(let Ot of T.pendingStaticInitializers){let $r=c.createExpressionStatement(Ot);Hg($r,XT(Ot)),Je.push($r)}let In=c.createBlock(Je,!0);fr=[c.createClassStaticBlockDeclaration(In),fr],T.pendingStaticInitializers=void 0}return Ne(),fr}function zt(xe){kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),Ee(xe),pe.assert(!VJ(xe),"Not yet implemented.");let{modifiers:fr,name:Je,initializersName:In,extraInitializersName:Hn,descriptorName:Ot,thisArg:$r}=Gr(xe,T,Nw(xe)?Gi:void 0);d();let ri=Mr(xe.initializer,Ye,un);In&&(ri=g().createRunInitializersHelper($r??c.createThis(),In,ri??c.createVoidZero())),cg(xe)&&T&&ri&&(T.hasStaticInitializers=!0);let ao=h();if(jt(ao)&&(ri=c.createImmediatelyInvokedArrowFunction([...ao,c.createReturnStatement(ri)])),T&&(cg(xe)?(ri=nr(T,!0,ri),Hn&&(T.pendingStaticInitializers??(T.pendingStaticInitializers=[]),T.pendingStaticInitializers.push(g().createRunInitializersHelper(T.classThis??c.createThis(),Hn)))):(ri=nr(T,!1,ri),Hn&&(T.pendingInstanceInitializers??(T.pendingInstanceInitializers=[]),T.pendingInstanceInitializers.push(g().createRunInitializersHelper(c.createThis(),Hn))))),Ne(),Nw(xe)&&Ot){let Bs=DB(xe),Ys=XT(xe),tn=xe.name,wn=tn,Mn=tn;if(Un(tn)&&!BN(tn.expression)){let Ui=l9e(tn);if(Ui)wn=c.updateComputedPropertyName(tn,Mr(tn.expression,Ye,un)),Mn=c.updateComputedPropertyName(tn,Ui.left);else{let gs=c.createTempVariable(_);Hg(gs,tn.expression);let fs=Mr(tn.expression,Ye,un),bi=c.createAssignment(gs,fs);Hg(bi,tn.expression),wn=c.updateComputedPropertyName(tn,bi),Mn=c.updateComputedPropertyName(tn,gs)}}let ci=Ws(fr,Ui=>Ui.kind!==129?Ui:void 0,Ig),es=G$e(c,xe,ci,ri);ua(es,xe),ti(es,3072),Hg(es,Ys),Hg(es.name,xe.name);let Wi=bn(ci,wn,Ot);ua(Wi,xe),hh(Wi,Bs),Hg(Wi,Ys);let Vn=ds(ci,Mn,Ot);return ua(Vn,xe),ti(Vn,3072),Hg(Vn,Ys),[es,Wi,Vn]}return ur(c.updatePropertyDeclaration(xe,fr,Je,void 0,void 0,ri),xe)}function Ht(xe){return W??xe}function Br(xe){if(xy(xe.expression)&&W){let fr=Mr(xe.expression,Ye,un),Je=Ws(xe.arguments,Ye,un),In=c.createFunctionCallCall(fr,W,Je);return ua(In,xe),gn(In,xe),In}return _s(xe,Ye,s)}function mn(xe){if(xy(xe.tag)&&W){let fr=Mr(xe.tag,Ye,un),Je=c.createFunctionBindCall(fr,W,[]);ua(Je,xe),gn(Je,xe);let In=Mr(xe.template,Ye,AP);return c.updateTaggedTemplateExpression(xe,Je,void 0,In)}return _s(xe,Ye,s)}function jn(xe){if(xy(xe)&&Ir(xe.name)&&W&&V){let fr=c.createStringLiteralFromNode(xe.name),Je=c.createReflectGetCall(V,fr,W);return ua(Je,xe.expression),gn(Je,xe.expression),Je}return _s(xe,Ye,s)}function Zi(xe){if(xy(xe)&&W&&V){let fr=Mr(xe.argumentExpression,Ye,un),Je=c.createReflectGetCall(V,fr,W);return ua(Je,xe.expression),gn(Je,xe.expression),Je}return _s(xe,Ye,s)}function Ns(xe){kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer)));let fr=c.updateParameterDeclaration(xe,void 0,xe.dotDotDotToken,Mr(xe.name,Ye,RL),void 0,void 0,Mr(xe.initializer,Ye,un));return fr!==xe&&(hh(fr,xe),gn(fr,Av(xe)),Hg(fr,Av(xe)),ti(fr.name,64)),fr}function An(xe){return vd(xe)&&!xe.name&&Pt(xe)}function si(xe){let fr=HI(xe);return vd(fr)&&!fr.name&&!Rx(!1,fr)}function ks(xe){return c.updateForStatement(xe,Mr(xe.initializer,mt,hE),Mr(xe.condition,Ye,un),Mr(xe.incrementor,mt,un),Py(xe.statement,Ye,s))}function Ic(xe){return _s(xe,mt,s)}function su(xe,fr){if(Dx(xe)){let Je=Tu(xe.left),In=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,Je,xe.operatorToken,In)}if(Jm(xe)){if(kb(xe,An))return xe=m1(s,xe,si(xe.right)),_s(xe,Ye,s);if(xy(xe.left)&&W&&V){let Je=Yg(xe.left)?Mr(xe.left.argumentExpression,Ye,un):Ir(xe.left.name)?c.createStringLiteralFromNode(xe.left.name):void 0;if(Je){let In=Mr(xe.right,Ye,un);if(vde(xe.operatorToken.kind)){let Ot=Je;BN(Je)||(Ot=c.createTempVariable(_),Je=c.createAssignment(Ot,Je));let $r=c.createReflectGetCall(V,Ot,W);ua($r,xe.left),gn($r,xe.left),In=c.createBinaryExpression($r,Bde(xe.operatorToken.kind),In),gn(In,xe)}let Hn=fr?void 0:c.createTempVariable(_);return Hn&&(In=c.createAssignment(Hn,In),gn(Hn,xe)),In=c.createReflectSetCall(V,Je,In,W),ua(In,xe),gn(In,xe),Hn&&(In=c.createComma(In,Hn),gn(In,xe)),In}}}if(xe.operatorToken.kind===28){let Je=Mr(xe.left,mt,un),In=Mr(xe.right,fr?mt:Ye,un);return c.updateBinaryExpression(xe,Je,xe.operatorToken,In)}return _s(xe,Ye,s)}function Zn(xe,fr){if(xe.operator===46||xe.operator===47){let Je=QA(xe.operand);if(xy(Je)&&W&&V){let In=Yg(Je)?Mr(Je.argumentExpression,Ye,un):Ir(Je.name)?c.createStringLiteralFromNode(Je.name):void 0;if(In){let Hn=In;BN(In)||(Hn=c.createTempVariable(_),In=c.createAssignment(Hn,In));let Ot=c.createReflectGetCall(V,Hn,W);ua(Ot,xe),gn(Ot,xe);let $r=fr?void 0:c.createTempVariable(_);return Ot=n9e(c,xe,Ot,_,$r),Ot=c.createReflectSetCall(V,In,Ot,W),ua(Ot,xe),gn(Ot,xe),$r&&(Ot=c.createComma(Ot,$r),gn(Ot,xe)),Ot}}}return _s(xe,Ye,s)}function ya(xe,fr){let Je=fr?xEe(xe.elements,mt):xEe(xe.elements,Ye,mt);return c.updateCommaListExpression(xe,Je)}function Gl(xe){if(Tw(xe)||p(xe)){let Ot=c.createStringLiteralFromNode(xe),$r=Mr(xe,Ye,VI);return{referencedName:Ot,name:$r}}if(Tw(xe.expression)&&!Ir(xe.expression)){let Ot=c.createStringLiteralFromNode(xe.expression),$r=Mr(xe,Ye,VI);return{referencedName:Ot,name:$r}}let fr=c.getGeneratedNameForNode(xe);_(fr);let Je=g().createPropKeyHelper(Mr(xe.expression,Ye,un)),In=c.createAssignment(fr,Je),Hn=c.updateComputedPropertyName(xe,it(In));return{referencedName:fr,name:Hn}}function ba(xe){return Un(xe)?Wo(xe):Mr(xe,Ye,VI)}function Wo(xe){let fr=Mr(xe.expression,Ye,un);return BN(fr)||(fr=it(fr)),c.updateComputedPropertyName(xe,fr)}function hc(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function yr(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function hn(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function Oi(xe){if(og(xe)||OI(xe))return Tu(xe);if(xy(xe)&&W&&V){let fr=Yg(xe)?Mr(xe.argumentExpression,Ye,un):Ir(xe.name)?c.createStringLiteralFromNode(xe.name):void 0;if(fr){let Je=c.createTempVariable(void 0),In=c.createAssignmentTargetWrapper(Je,c.createReflectSetCall(V,fr,Je,W));return ua(In,xe),gn(In,xe),In}}return _s(xe,Ye,s)}function lo(xe){if(Jm(xe,!0)){kb(xe,An)&&(xe=m1(s,xe,si(xe.right)));let fr=Oi(xe.left),Je=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,fr,xe.operatorToken,Je)}else return Oi(xe)}function pa(xe){if(D_(xe.expression)){let fr=Oi(xe.expression);return c.updateSpreadElement(xe,fr)}return _s(xe,Ye,s)}function Oa(xe){return pe.assertNode(xe,EJ),of(xe)?pa(xe):yp(xe)?_s(xe,Ye,s):lo(xe)}function tl(xe){let fr=Mr(xe.name,Ye,VI);if(Jm(xe.initializer,!0)){let Je=lo(xe.initializer);return c.updatePropertyAssignment(xe,fr,Je)}if(D_(xe.initializer)){let Je=Oi(xe.initializer);return c.updatePropertyAssignment(xe,fr,Je)}return _s(xe,Ye,s)}function Qu(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.objectAssignmentInitializer))),_s(xe,Ye,s)}function Tg(xe){if(D_(xe.expression)){let fr=Oi(xe.expression);return c.updateSpreadAssignment(xe,fr)}return _s(xe,Ye,s)}function Cs(xe){return pe.assertNode(xe,gP),Lx(xe)?Tg(xe):a0(xe)?Qu(xe):fm(xe)?tl(xe):_s(xe,Ye,s)}function Tu(xe){if(OI(xe)){let fr=Ws(xe.elements,Oa,un);return c.updateArrayLiteralExpression(xe,fr)}else{let fr=Ws(xe.properties,Cs,yw);return c.updateObjectLiteralExpression(xe,fr)}}function Pr(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.expression))),_s(xe,Ye,s)}function Pn(xe,fr){let Je=fr?mt:Ye,In=Mr(xe.expression,Je,un);return c.updateParenthesizedExpression(xe,In)}function pt(xe,fr){let Je=fr?mt:Ye,In=Mr(xe.expression,Je,un);return c.updatePartiallyEmittedExpression(xe,In)}function on(xe,fr){return jt(xe)&&(fr?gI(fr)?(xe.push(fr.expression),fr=c.updateParenthesizedExpression(fr,c.inlineExpressions(xe))):(xe.push(fr),fr=c.inlineExpressions(xe)):fr=c.inlineExpressions(xe)),fr}function it(xe){let fr=on(M,xe);return pe.assertIsDefined(fr),fr!==xe&&(M=void 0),fr}function nr(xe,fr,Je){let In=on(fr?xe.pendingStaticInitializers:xe.pendingInstanceInitializers,Je);return In!==Je&&(fr?xe.pendingStaticInitializers=void 0:xe.pendingInstanceInitializers=void 0),In}function Fr(xe){if(!xe)return;let fr=[];return Or(fr,At(xe.decorators,Kr)),fr}function Kr(xe){let fr=Mr(xe.expression,Ye,un);ti(fr,3072);let Je=HI(fr);if(_p(Je)){let{target:In,thisArg:Hn}=c.createCallBinding(fr,_,S,!0);return c.restoreOuterExpressions(fr,c.createFunctionBindCall(In,Hn,[]))}return fr}function Dn(xe,fr,Je,In,Hn,Ot,$r){let ri=c.createFunctionExpression(Je,In,void 0,void 0,Ot,void 0,$r??c.createBlock([]));ua(ri,xe),Hg(ri,jD(xe)),ti(ri,3072);let ao=Hn==="get"||Hn==="set"?Hn:void 0,Bs=c.createStringLiteralFromNode(fr,void 0),Ys=g().createSetFunctionNameHelper(ri,Bs,ao),tn=c.createPropertyAssignment(c.createIdentifier(Hn),Ys);return ua(tn,xe),Hg(tn,jD(xe)),ti(tn,3072),tn}function hr(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,xe.asteriskToken,"value",Ws(xe.parameters,Ye,Si),Mr(xe.body,Ye,$u))])}function En(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],Mr(xe.body,Ye,$u))])}function Ni(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"set",Ws(xe.parameters,Ye,Si),Mr(xe.body,Ye,$u))])}function Gi(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)))])),Dn(xe,xe.name,fr,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)),c.createIdentifier("value")))]))])}function nn(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Je,c.createIdentifier("value")))]))}function bn(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Je,c.createIdentifier("get")),c.createThis(),[]))]))}function ds(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createSetAccessorDeclaration(xe,fr,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Je,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Mt(xe,fr){let Je=c.createVariableDeclaration(xe,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[fr?Bt(fr):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Je],2))}function cn(xe,fr){let Je=c.createObjectDefinePropertyCall(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:fr},!0));return ti(c.createIfStatement(fr,c.createExpressionStatement(Je)),1)}function Bt(xe){return c.createBinaryExpression(c.createElementAccessExpression(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function YOt(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Mg(R),W=0,V=0,M,ee,re,ge,Ie=[],_e=0,Ee=s.onEmitNode,Ne=s.onSubstituteNode;return s.onEmitNode=Ic,s.onSubstituteNode=su,rR(s,Te);function Te(yr){if(yr.isDeclarationFile)return yr;Ze(1,!1),Ze(2,!Jre(yr,R));let hn=_s(yr,Qe,s);return hN(hn,s.readEmitHelpers()),hn}function Ze(yr,hn){_e=hn?_e|yr:_e&~yr}function We(yr){return(_e&yr)!==0}function Ue(){return!We(1)}function $e(){return We(2)}function Ye(yr,hn,Oi){let lo=yr&~_e;if(lo){Ze(lo,!0);let pa=hn(Oi);return Ze(lo,!1),pa}return hn(Oi)}function Tt(yr){return _s(yr,Qe,s)}function ot(yr){switch(yr.kind){case 219:case 263:case 175:case 178:case 179:case 177:return yr;case 170:case 209:case 261:break;case 80:if(ge&&S.isArgumentsLocalBinding(yr))return ge;break}return _s(yr,ot,s)}function Qe(yr){if(!(yr.transformFlags&256))return ge?ot(yr):yr;switch(yr.kind){case 134:return;case 224:return Pt(yr);case 175:return Ye(3,Gt,yr);case 263:return Ye(3,tr,yr);case 219:return Ye(3,ur,yr);case 220:return Ye(1,Gr,yr);case 212:return ee&&jo(yr)&&yr.expression.kind===108&&ee.add(yr.name.escapedText),_s(yr,Qe,s);case 213:return ee&&yr.expression.kind===108&&(re=!0),_s(yr,Qe,s);case 178:return Ye(3,nt,yr);case 179:return Ye(3,Dt,yr);case 177:return Ye(3,_r,yr);case 264:case 232:return Ye(3,Tt,yr);default:return _s(yr,Qe,s)}}function mt(yr){if(CZe(yr))switch(yr.kind){case 244:return _t(yr);case 249:return Ke(yr);case 250:return Rt(yr);case 251:return Lt(yr);case 300:return ht(yr);case 242:case 256:case 270:case 297:case 298:case 259:case 247:case 248:case 246:case 255:case 257:return _s(yr,mt,s);default:return pe.assertNever(yr,"Unhandled node.")}return Qe(yr)}function ht(yr){let hn=new Set;dt(yr.variableDeclaration,hn);let Oi;if(hn.forEach((lo,pa)=>{M.has(pa)&&(Oi||(Oi=new Set(M)),Oi.delete(pa))}),Oi){let lo=M;M=Oi;let pa=_s(yr,mt,s);return M=lo,pa}else return _s(yr,mt,s)}function _t(yr){if(pr(yr.declarationList)){let hn=st(yr.declarationList,!1);return hn?c.createExpressionStatement(hn):void 0}return _s(yr,Qe,s)}function Rt(yr){return c.updateForInStatement(yr,pr(yr.initializer)?st(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,hE)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,mt,s))}function Lt(yr){return c.updateForOfStatement(yr,Mr(yr.awaitModifier,Qe,U),pr(yr.initializer)?st(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,hE)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,mt,s))}function Ke(yr){let hn=yr.initializer;return c.updateForStatement(yr,pr(hn)?st(hn,!1):Mr(yr.initializer,Qe,hE),Mr(yr.condition,Qe,un),Mr(yr.incrementor,Qe,un),Py(yr.statement,mt,s))}function Pt(yr){return Ue()?_s(yr,Qe,s):ua(gn(c.createYieldExpression(void 0,Mr(yr.expression,Qe,un)),yr),yr)}function _r(yr){let hn=ge;ge=void 0;let Oi=c.updateConstructorDeclaration(yr,Ws(yr.modifiers,Qe,Ig),vI(yr.parameters,Qe,s),mn(yr));return ge=hn,Oi}function Gt(yr){let hn,Oi=SI(yr),lo=ge;ge=void 0;let pa=c.updateMethodDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.asteriskToken,yr.name,void 0,void 0,hn=Oi&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,Oi&2?Ns(yr,hn):mn(yr));return ge=lo,pa}function nt(yr){let hn=ge;ge=void 0;let Oi=c.updateGetAccessorDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.name,vI(yr.parameters,Qe,s),void 0,mn(yr));return ge=hn,Oi}function Dt(yr){let hn=ge;ge=void 0;let Oi=c.updateSetAccessorDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.name,vI(yr.parameters,Qe,s),mn(yr));return ge=hn,Oi}function tr(yr){let hn,Oi=ge;ge=void 0;let lo=SI(yr),pa=c.updateFunctionDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.asteriskToken,yr.name,void 0,hn=lo&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,lo&2?Ns(yr,hn):uS(yr.body,Qe,s));return ge=Oi,pa}function ur(yr){let hn,Oi=ge;ge=void 0;let lo=SI(yr),pa=c.updateFunctionExpression(yr,Ws(yr.modifiers,Qe,Ig),yr.asteriskToken,yr.name,void 0,hn=lo&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,lo&2?Ns(yr,hn):uS(yr.body,Qe,s));return ge=Oi,pa}function Gr(yr){let hn,Oi=SI(yr);return c.updateArrowFunction(yr,Ws(yr.modifiers,Qe,Ig),void 0,hn=Oi&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,yr.equalsGreaterThanToken,Oi&2?Ns(yr,hn):uS(yr.body,Qe,s))}function dt({name:yr},hn){if(Ir(yr))hn.add(yr.escapedText);else for(let Oi of yr.elements)yp(Oi)||dt(Oi,hn)}function pr(yr){return!!yr&&u_(yr)&&!(yr.flags&7)&&yr.declarations.some(Br)}function st(yr,hn){ir(yr);let Oi=iU(yr);return Oi.length===0?hn?Mr(c.converters.convertToAssignmentElementTarget(yr.declarations[0].name),Qe,un):void 0:c.inlineExpressions(At(Oi,Ht))}function ir(yr){F(yr.declarations,zt)}function zt({name:yr}){if(Ir(yr))_(yr);else for(let hn of yr.elements)yp(hn)||zt(hn)}function Ht(yr){let hn=Hg(c.createAssignment(c.converters.convertToAssignmentElementTarget(yr.name),yr.initializer),yr);return pe.checkDefined(Mr(hn,Qe,un))}function Br({name:yr}){if(Ir(yr))return M.has(yr.escapedText);for(let hn of yr.elements)if(!yp(hn)&&Br(hn))return!0;return!1}function mn(yr){pe.assertIsDefined(yr.body);let hn=ee,Oi=re;ee=new Set,re=!1;let lo=uS(yr.body,Qe,s),pa=Dd(yr,kd);if(T>=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128))&&(SI(pa)&3)!==3){if(ks(),ee.size){let tl=U9e(c,S,yr,ee);Ie[rd(tl)]=!0;let Qu=lo.statements.slice();Sw(Qu,[tl]),lo=c.updateBlock(lo,Qu)}re&&(S.hasNodeCheckFlag(yr,256)?$Y(lo,DF):S.hasNodeCheckFlag(yr,128)&&$Y(lo,lie))}return ee=hn,re=Oi,lo}function jn(){pe.assert(ge);let yr=c.createVariableDeclaration(ge,void 0,void 0,c.createIdentifier("arguments")),hn=c.createVariableStatement(void 0,[yr]);return N0(hn),Gw(hn,2097152),hn}function Zi(yr){if(FEe(yr.parameters))return vI(yr.parameters,Qe,s);let hn=[];for(let lo of yr.parameters){if(lo.initializer||lo.dotDotDotToken){if(yr.kind===220){let Oa=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));hn.push(Oa)}break}let pa=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(lo.name,8));hn.push(pa)}let Oi=c.createNodeArray(hn);return gn(Oi,yr.parameters),Oi}function Ns(yr,hn){let Oi=FEe(yr.parameters)?void 0:vI(yr.parameters,Qe,s);d();let pa=Dd(yr,bu).type,Oa=T<2?si(pa):void 0,tl=yr.kind===220,Qu=ge,Cs=S.hasNodeCheckFlag(yr,512)&&!ge;Cs&&(ge=c.createUniqueName("arguments"));let Tu;if(Oi)if(tl){let Fr=[];pe.assert(hn.length<=yr.parameters.length);for(let Kr=0;Kr=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128));if(Kr&&(ks(),ee.size)){let hr=U9e(c,S,yr,ee);Ie[rd(hr)]=!0,Sw(Fr,[hr])}Cs&&Sw(Fr,[jn()]);let Dn=c.createBlock(Fr,!0);gn(Dn,yr.body),Kr&&re&&(S.hasNodeCheckFlag(yr,256)?$Y(Dn,DF):S.hasNodeCheckFlag(yr,128)&&$Y(Dn,lie)),nr=Dn}return M=Pr,tl||(ee=Pn,re=pt,ge=Qu),nr}function An(yr,hn){return $u(yr)?c.updateBlock(yr,Ws(yr.statements,mt,Lc,hn)):c.converters.convertToFunctionBlock(pe.checkDefined(Mr(yr,mt,r7)))}function si(yr){let hn=yr&&ene(yr);if(hn&&fC(hn)){let Oi=S.getTypeReferenceSerializationKind(hn);if(Oi===1||Oi===0)return hn}}function ks(){W&1||(W|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Ic(yr,hn,Oi){if(W&1&&Wo(hn)){let lo=(S.hasNodeCheckFlag(hn,128)?128:0)|(S.hasNodeCheckFlag(hn,256)?256:0);if(lo!==V){let pa=V;V=lo,Ee(yr,hn,Oi),V=pa;return}}else if(W&&Ie[rd(hn)]){let lo=V;V=0,Ee(yr,hn,Oi),V=lo;return}Ee(yr,hn,Oi)}function su(yr,hn){return hn=Ne(yr,hn),yr===1&&V?Zn(hn):hn}function Zn(yr){switch(yr.kind){case 212:return ya(yr);case 213:return Gl(yr);case 214:return ba(yr)}return yr}function ya(yr){return yr.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),yr.name),yr):yr}function Gl(yr){return yr.expression.kind===108?hc(yr.argumentExpression,yr):yr}function ba(yr){let hn=yr.expression;if(xy(hn)){let Oi=jo(hn)?ya(hn):Gl(hn);return c.createCallExpression(c.createPropertyAccessExpression(Oi,"call"),void 0,[c.createThis(),...yr.arguments])}return yr}function Wo(yr){let hn=yr.kind;return hn===264||hn===177||hn===175||hn===178||hn===179}function hc(yr,hn){return V&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),"value"),hn):gn(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),hn)}}function U9e(s,c,g,d){let h=c.hasNodeCheckFlag(g,256),_=[];return d.forEach((S,R)=>{let T=Bc(R),W=[];W.push(s.createPropertyAssignment("get",s.createArrowFunction(void 0,void 0,[],void 0,void 0,ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8)))),h&&W.push(s.createPropertyAssignment("set",s.createArrowFunction(void 0,void 0,[s.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,s.createAssignment(ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8),s.createIdentifier("v"))))),_.push(s.createPropertyAssignment(T,s.createObjectLiteralExpression(W)))}),s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.createUniqueName("_super",48),void 0,void 0,s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Object"),"create"),void 0,[s.createNull(),s.createObjectLiteralExpression(_,!0)]))],2))}function QOt(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Mg(R),W=s.onEmitNode;s.onEmitNode=Qu;let V=s.onSubstituteNode;s.onSubstituteNode=Tg;let M=!1,ee=0,re,ge,Ie=0,_e=0,Ee,Ne,Te,Ze,We=[];return rR(s,ot);function Ue(it,nr){return _e!==(_e&~it|nr)}function $e(it,nr){let Fr=_e;return _e=(_e&~it|nr)&3,Fr}function Ye(it){_e=it}function Tt(it){Ne=Ft(Ne,c.createVariableDeclaration(it))}function ot(it){if(it.isDeclarationFile)return it;Ee=it;let nr=Gr(it);return hN(nr,s.readEmitHelpers()),Ee=void 0,Ne=void 0,nr}function Qe(it){return Lt(it,!1)}function mt(it){return Lt(it,!0)}function ht(it){if(it.kind!==134)return it}function _t(it,nr,Fr,Kr){if(Ue(Fr,Kr)){let Dn=$e(Fr,Kr),hr=it(nr);return Ye(Dn),hr}return it(nr)}function Rt(it){return _s(it,Qe,s)}function Lt(it,nr){if(!(it.transformFlags&128))return it;switch(it.kind){case 224:return Ke(it);case 230:return Pt(it);case 254:return _r(it);case 257:return Gt(it);case 211:return Dt(it);case 227:return pr(it,nr);case 357:return st(it,nr);case 300:return ir(it);case 244:return zt(it);case 261:return Ht(it);case 247:case 248:case 250:return _t(Rt,it,0,2);case 251:return Zi(it,void 0);case 249:return _t(mn,it,0,2);case 223:return jn(it);case 177:return _t(ya,it,2,1);case 175:return _t(Wo,it,2,1);case 178:return _t(Gl,it,2,1);case 179:return _t(ba,it,2,1);case 263:return _t(hc,it,2,1);case 219:return _t(hn,it,2,1);case 220:return _t(yr,it,2,0);case 170:return su(it);case 245:return tr(it);case 218:return ur(it,nr);case 216:return dt(it);case 212:return Te&&jo(it)&&it.expression.kind===108&&Te.add(it.name.escapedText),_s(it,Qe,s);case 213:return Te&&it.expression.kind===108&&(Ze=!0),_s(it,Qe,s);case 264:case 232:return _t(Rt,it,2,1);default:return _s(it,Qe,s)}}function Ke(it){return re&2&&re&1?ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(Mr(it.expression,Qe,un))),it),it):_s(it,Qe,s)}function Pt(it){if(re&2&&re&1){if(it.asteriskToken){let nr=Mr(pe.checkDefined(it.expression),Qe,un);return ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(c.updateYieldExpression(it,it.asteriskToken,gn(g().createAsyncDelegatorHelper(gn(g().createAsyncValuesHelper(nr),nr)),nr)))),it),it)}return ua(gn(c.createYieldExpression(void 0,si(it.expression?Mr(it.expression,Qe,un):c.createVoidZero())),it),it)}return _s(it,Qe,s)}function _r(it){return re&2&&re&1?c.updateReturnStatement(it,si(it.expression?Mr(it.expression,Qe,un):c.createVoidZero())):_s(it,Qe,s)}function Gt(it){if(re&2){let nr=Iye(it);return nr.kind===251&&nr.awaitModifier?Zi(nr,it):c.restoreEnclosingLabel(Mr(nr,Qe,Lc,c.liftToBlock),it)}return _s(it,Qe,s)}function nt(it){let nr,Fr=[];for(let Kr of it)if(Kr.kind===306){nr&&(Fr.push(c.createObjectLiteralExpression(nr)),nr=void 0);let Dn=Kr.expression;Fr.push(Mr(Dn,Qe,un))}else nr=Ft(nr,Kr.kind===304?c.createPropertyAssignment(Kr.name,Mr(Kr.initializer,Qe,un)):Mr(Kr,Qe,yw));return nr&&Fr.push(c.createObjectLiteralExpression(nr)),Fr}function Dt(it){if(it.transformFlags&65536){let nr=nt(it.properties);nr.length&&nr[0].kind!==211&&nr.unshift(c.createObjectLiteralExpression());let Fr=nr[0];if(nr.length>1){for(let Kr=1;Kr=2&&(S.hasNodeCheckFlag(it,256)||S.hasNodeCheckFlag(it,128));if(Ni){tl();let nn=U9e(c,S,it,Te);We[rd(nn)]=!0,Sw(Dn,[nn])}Dn.push(En);let Gi=c.updateBlock(it.body,Dn);return Ni&&Ze&&(S.hasNodeCheckFlag(it,256)?$Y(Gi,DF):S.hasNodeCheckFlag(it,128)&&$Y(Gi,lie)),Te=Fr,Ze=Kr,Gi}function pa(it){d();let nr=0,Fr=[],Kr=Mr(it.body,Qe,r7)??c.createBlock([]);$u(Kr)&&(nr=c.copyPrologue(Kr.statements,Fr,!1,Qe)),Or(Fr,Oa(void 0,it));let Dn=h();if(nr>0||jt(Fr)||jt(Dn)){let hr=c.converters.convertToFunctionBlock(Kr,!0);return Sw(Fr,Dn),Or(Fr,hr.statements.slice(nr)),c.updateBlock(hr,gn(c.createNodeArray(Fr),hr.statements))}return Kr}function Oa(it,nr){let Fr=!1;for(let Kr of nr.parameters)if(Fr){if(Nu(Kr.name)){if(Kr.name.elements.length>0){let Dn=uQ(Kr,Qe,s,0,c.getGeneratedNameForNode(Kr));if(jt(Dn)){let hr=c.createVariableDeclarationList(Dn),En=c.createVariableStatement(void 0,hr);ti(En,2097152),it=Ft(it,En)}}else if(Kr.initializer){let Dn=c.getGeneratedNameForNode(Kr),hr=Mr(Kr.initializer,Qe,un),En=c.createAssignment(Dn,hr),Ni=c.createExpressionStatement(En);ti(Ni,2097152),it=Ft(it,Ni)}}else if(Kr.initializer){let Dn=c.cloneNode(Kr.name);gn(Dn,Kr.name),ti(Dn,96);let hr=Mr(Kr.initializer,Qe,un);Gw(hr,3168);let En=c.createAssignment(Dn,hr);gn(En,Kr),ti(En,3072);let Ni=c.createBlock([c.createExpressionStatement(En)]);gn(Ni,Kr),ti(Ni,3905);let Gi=c.createTypeCheck(c.cloneNode(Kr.name),"undefined"),nn=c.createIfStatement(Gi,Ni);N0(nn),gn(nn,Kr),ti(nn,2101056),it=Ft(it,nn)}}else if(Kr.transformFlags&65536){Fr=!0;let Dn=uQ(Kr,Qe,s,1,c.getGeneratedNameForNode(Kr),!1,!0);if(jt(Dn)){let hr=c.createVariableDeclarationList(Dn),En=c.createVariableStatement(void 0,hr);ti(En,2097152),it=Ft(it,En)}}return it}function tl(){ee&1||(ee|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Qu(it,nr,Fr){if(ee&1&&pt(nr)){let Kr=(S.hasNodeCheckFlag(nr,128)?128:0)|(S.hasNodeCheckFlag(nr,256)?256:0);if(Kr!==Ie){let Dn=Ie;Ie=Kr,W(it,nr,Fr),Ie=Dn;return}}else if(ee&&We[rd(nr)]){let Kr=Ie;Ie=0,W(it,nr,Fr),Ie=Kr;return}W(it,nr,Fr)}function Tg(it,nr){return nr=V(it,nr),it===1&&Ie?Cs(nr):nr}function Cs(it){switch(it.kind){case 212:return Tu(it);case 213:return Pr(it);case 214:return Pn(it)}return it}function Tu(it){return it.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),it.name),it):it}function Pr(it){return it.expression.kind===108?on(it.argumentExpression,it):it}function Pn(it){let nr=it.expression;if(xy(nr)){let Fr=jo(nr)?Tu(nr):Pr(nr);return c.createCallExpression(c.createPropertyAccessExpression(Fr,"call"),void 0,[c.createThis(),...it.arguments])}return it}function pt(it){let nr=it.kind;return nr===264||nr===177||nr===175||nr===178||nr===179}function on(it,nr){return Ie&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[it]),"value"),nr):gn(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[it]),nr)}}function XOt(s){let c=s.factory;return rR(s,g);function g(_){return _.isDeclarationFile?_:_s(_,d,s)}function d(_){if(!(_.transformFlags&64))return _;switch(_.kind){case 300:return h(_);default:return _s(_,d,s)}}function h(_){return _.variableDeclaration?_s(_,d,s):c.updateCatchClause(_,c.createVariableDeclaration(c.createTempVariable(void 0)),Mr(_.block,d,$u))}}function JOt(s){let{factory:c,hoistVariableDeclaration:g}=s;return rR(s,d);function d(ge){return ge.isDeclarationFile?ge:_s(ge,h,s)}function h(ge){if(!(ge.transformFlags&32))return ge;switch(ge.kind){case 214:{let Ie=T(ge,!1);return pe.assertNotNode(Ie,_z),Ie}case 212:case 213:if(GC(ge)){let Ie=V(ge,!1,!1);return pe.assertNotNode(Ie,_z),Ie}return _s(ge,h,s);case 227:return ge.operatorToken.kind===61?ee(ge):_s(ge,h,s);case 221:return re(ge);default:return _s(ge,h,s)}}function _(ge){pe.assertNotNode(ge,hJ);let Ie=[ge];for(;!ge.questionDotToken&&!MI(ge);)ge=Ma(o2(ge.expression),GC),pe.assertNotNode(ge,hJ),Ie.unshift(ge);return{expression:ge.expression,chain:Ie}}function S(ge,Ie,_e){let Ee=W(ge.expression,Ie,_e);return _z(Ee)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ge,Ee.expression),Ee.thisArg):c.updateParenthesizedExpression(ge,Ee)}function R(ge,Ie,_e){if(GC(ge))return V(ge,Ie,_e);let Ee=Mr(ge.expression,h,un);pe.assertNotNode(Ee,_z);let Ne;return Ie&&(lQ(Ee)?Ne=Ee:(Ne=c.createTempVariable(g),Ee=c.createAssignment(Ne,Ee))),Ee=ge.kind===212?c.updatePropertyAccessExpression(ge,Ee,Mr(ge.name,h,Ir)):c.updateElementAccessExpression(ge,Ee,Mr(ge.argumentExpression,h,un)),Ne?c.createSyntheticReferenceExpression(Ee,Ne):Ee}function T(ge,Ie){if(GC(ge))return V(ge,Ie,!1);if(gI(ge.expression)&&GC(QA(ge.expression))){let _e=S(ge.expression,!0,!1),Ee=Ws(ge.arguments,h,un);return _z(_e)?gn(c.createFunctionCallCall(_e.expression,_e.thisArg,Ee),ge):c.updateCallExpression(ge,_e,void 0,Ee)}return _s(ge,h,s)}function W(ge,Ie,_e){switch(ge.kind){case 218:return S(ge,Ie,_e);case 212:case 213:return R(ge,Ie,_e);case 214:return T(ge,Ie);default:return Mr(ge,h,un)}}function V(ge,Ie,_e){let{expression:Ee,chain:Ne}=_(ge),Te=W(o2(Ee),_B(Ne[0]),!1),Ze=_z(Te)?Te.thisArg:void 0,We=_z(Te)?Te.expression:Te,Ue=c.restoreOuterExpressions(Ee,We,8);lQ(We)||(We=c.createTempVariable(g),Ue=c.createAssignment(We,Ue));let $e=We,Ye;for(let ot=0;otLt&&Or(Ke,Ws(_t.statements,M,Lc,Lt,Pt-Lt));break}Pt++}pe.assert(Pt<_t.statements.length,"Should have encountered at least one 'using' statement.");let _r=mt(),Gt=Ne(_t.statements,Pt,_t.statements.length,_r,Ke);return S.size&&Ft(Ke,c.createExportDeclaration(void 0,!1,c.createNamedExports(Do(S.values())))),Or(Ke,_()),R.length&&Ke.push(c.createVariableStatement(c.createModifiersFromModifierFlags(32),c.createVariableDeclarationList(R,1))),Or(Ke,ht(Gt,_r,Rt===2)),W&&Ke.push(c.createExportAssignment(void 0,!0,W)),c.updateSourceFile(_t,Ke)}return _s(_t,M,s)}function re(_t){let Rt=Het(_t.statements);if(Rt){let Lt=Vtn(_t.statements),Ke=mt();return c.updateBlock(_t,[...Ede(_t.statements,M,Lc,0,Lt),...ht(Ne(_t.statements,Lt,_t.statements.length,Ke,void 0),Ke,Rt===2)])}return _s(_t,M,s)}function ge(_t){return _t.initializer&&Ptn(_t.initializer)?Mr(c.createBlock([c.createVariableStatement(void 0,_t.initializer),c.updateForStatement(_t,void 0,_t.condition,_t.incrementor,_t.statement)]),M,Lc):_s(_t,M,s)}function Ie(_t){if(Ptn(_t.initializer)){let Rt=_t.initializer,Lt=Nc(Rt.declarations)||c.createVariableDeclaration(c.createTempVariable(void 0)),Ke=jOt(Rt)===2,Pt=c.getGeneratedNameForNode(Lt.name),_r=c.updateVariableDeclaration(Lt,Lt.name,void 0,void 0,Pt),Gt=c.createVariableDeclarationList([_r],Ke?6:4),nt=c.createVariableStatement(void 0,Gt);return Mr(c.updateForOfStatement(_t,_t.awaitModifier,c.createVariableDeclarationList([c.createVariableDeclaration(Pt)],2),_t.expression,$u(_t.statement)?c.updateBlock(_t.statement,[nt,..._t.statement.statements]):c.createBlock([nt,_t.statement],!0)),M,Lc)}return _s(_t,M,s)}function _e(_t,Rt){return Het(_t.statements)!==0?fie(_t)?c.updateCaseClause(_t,Mr(_t.expression,M,un),Ne(_t.statements,0,_t.statements.length,Rt,void 0)):c.updateDefaultClause(_t,Ne(_t.statements,0,_t.statements.length,Rt,void 0)):_s(_t,M,s)}function Ee(_t){let Rt=GBs(_t.caseBlock.clauses);if(Rt){let Lt=mt();return ht([c.updateSwitchStatement(_t,Mr(_t.expression,M,un),c.updateCaseBlock(_t.caseBlock,_t.caseBlock.clauses.map(Ke=>_e(Ke,Lt))))],Lt,Rt===2)}return _s(_t,M,s)}function Ne(_t,Rt,Lt,Ke,Pt){let _r=[];for(let Dt=Rt;Dtc&&(c=d)}return c}function GBs(s){let c=0;for(let g of s){let d=Het(g.statements);if(d===2)return 2;d>c&&(c=d)}return c}function qOt(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getCompilerOptions(),h,_;return rR(s,M);function S(){if(_.filenameDeclaration)return _.filenameDeclaration.name;let dt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(h.fileName));return _.filenameDeclaration=dt,_.filenameDeclaration.name}function R(dt){return d.jsx===5?"jsxDEV":dt?"jsxs":"jsx"}function T(dt){let pr=R(dt);return V(pr)}function W(){return V("Fragment")}function V(dt){var pr,st;let ir=dt==="createElement"?_.importSpecifier:Mne(_.importSpecifier,d),zt=(st=(pr=_.utilizedImplicitRuntimeImports)==null?void 0:pr.get(ir))==null?void 0:st.get(dt);if(zt)return zt.name;_.utilizedImplicitRuntimeImports||(_.utilizedImplicitRuntimeImports=new Map);let Ht=_.utilizedImplicitRuntimeImports.get(ir);Ht||(Ht=new Map,_.utilizedImplicitRuntimeImports.set(ir,Ht));let Br=c.createUniqueName(`_${dt}`,112),mn=c.createImportSpecifier(!1,c.createIdentifier(dt),Br);return OLe(Br,mn),Ht.set(dt,mn),Br}function M(dt){if(dt.isDeclarationFile)return dt;h=dt,_={},_.importSpecifier=One(d,dt);let pr=_s(dt,ee,s);hN(pr,s.readEmitHelpers());let st=pr.statements;if(_.filenameDeclaration&&(st=FL(st.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([_.filenameDeclaration],2)))),_.utilizedImplicitRuntimeImports){for(let[ir,zt]of Do(_.utilizedImplicitRuntimeImports.entries()))if(xm(dt)){let Ht=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports(Do(zt.values()))),c.createStringLiteral(ir),void 0);UL(Ht,!1),st=FL(st.slice(),Ht)}else if(vl(dt)){let Ht=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(Do(zt.values(),Br=>c.createBindingElement(void 0,Br.propertyName,Br.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(ir)]))],2));UL(Ht,!1),st=FL(st.slice(),Ht)}}return st!==pr.statements&&(pr=c.updateSourceFile(pr,st)),_=void 0,pr}function ee(dt){return dt.transformFlags&2?re(dt):dt}function re(dt){switch(dt.kind){case 285:return Ne(dt,!1);case 286:return Te(dt,!1);case 289:return Ze(dt,!1);case 295:return Gr(dt);default:return _s(dt,ee,s)}}function ge(dt){switch(dt.kind){case 12:return Pt(dt);case 295:return Gr(dt);case 285:return Ne(dt,!0);case 286:return Te(dt,!0);case 289:return Ze(dt,!0);default:return pe.failBadSyntaxKind(dt)}}function Ie(dt){return dt.properties.some(pr=>fm(pr)&&(Ir(pr.name)&&Vo(pr.name)==="__proto__"||Zg(pr.name)&&pr.name.text==="__proto__"))}function _e(dt){let pr=!1;for(let st of dt.attributes.properties)if(yz(st)&&(!og(st.expression)||st.expression.properties.some(Lx)))pr=!0;else if(pr&&EN(st)&&Ir(st.name)&&st.name.escapedText==="key")return!0;return!1}function Ee(dt){return _.importSpecifier===void 0||_e(dt)}function Ne(dt,pr){return(Ee(dt.openingElement)?Tt:$e)(dt.openingElement,dt.children,pr,dt)}function Te(dt,pr){return(Ee(dt)?Tt:$e)(dt,void 0,pr,dt)}function Ze(dt,pr){return(_.importSpecifier===void 0?Qe:ot)(dt.openingFragment,dt.children,pr,dt)}function We(dt){let pr=Ue(dt);return pr&&c.createObjectLiteralExpression([pr])}function Ue(dt){let pr=$J(dt);if(B(pr)===1&&!pr[0].dotDotDotToken){let ir=ge(pr[0]);return ir&&c.createPropertyAssignment("children",ir)}let st=Xt(dt,ge);return B(st)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(st)):void 0}function $e(dt,pr,st,ir){let zt=tr(dt),Ht=pr&&pr.length?Ue(pr):void 0,Br=de(dt.attributes.properties,Zi=>!!Zi.name&&Ir(Zi.name)&&Zi.name.escapedText==="key"),mn=Br?Me(dt.attributes.properties,Zi=>Zi!==Br):dt.attributes.properties,jn=B(mn)?ht(mn,Ht):c.createObjectLiteralExpression(Ht?[Ht]:E);return Ye(zt,jn,Br,pr||E,st,ir)}function Ye(dt,pr,st,ir,zt,Ht){var Br;let mn=$J(ir),jn=B(mn)>1||!!((Br=mn[0])!=null&&Br.dotDotDotToken),Zi=[dt,pr];if(st&&Zi.push(Ke(st.initializer)),d.jsx===5){let An=Dd(h);if(An&&ll(An)){st===void 0&&Zi.push(c.createVoidZero()),Zi.push(jn?c.createTrue():c.createFalse());let si=Ra(An,Ht.pos);Zi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",S()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(si.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(si.character+1))])),Zi.push(c.createThis())}}let Ns=gn(c.createCallExpression(T(jn),void 0,Zi),Ht);return zt&&N0(Ns),Ns}function Tt(dt,pr,st,ir){let zt=tr(dt),Ht=dt.attributes.properties,Br=B(Ht)?ht(Ht):c.createNull(),mn=_.importSpecifier===void 0?E$e(c,s.getEmitResolver().getJsxFactoryEntity(h),d.reactNamespace,dt):V("createElement"),jn=UPt(c,mn,zt,Br,Xt(pr,ge),ir);return st&&N0(jn),jn}function ot(dt,pr,st,ir){let zt;if(pr&&pr.length){let Ht=We(pr);Ht&&(zt=Ht)}return Ye(W(),zt||c.createObjectLiteralExpression([]),void 0,pr,st,ir)}function Qe(dt,pr,st,ir){let zt=KPt(c,s.getEmitResolver().getJsxFactoryEntity(h),s.getEmitResolver().getJsxFragmentFactoryEntity(h),d.reactNamespace,Xt(pr,ge),dt,ir);return st&&N0(zt),zt}function mt(dt){return og(dt.expression)&&!Ie(dt.expression)?Tr(dt.expression.properties,pr=>pe.checkDefined(Mr(pr,ee,yw))):c.createSpreadAssignment(pe.checkDefined(Mr(dt.expression,ee,un)))}function ht(dt,pr){let st=Mg(d);return st&&st>=5?c.createObjectLiteralExpression(_t(dt,pr)):Rt(dt,pr)}function _t(dt,pr){let st=Nr(_n(dt,yz,(ir,zt)=>Nr(At(ir,Ht=>zt?mt(Ht):Lt(Ht)))));return pr&&st.push(pr),st}function Rt(dt,pr){let st=[],ir=[];for(let Ht of dt){if(yz(Ht)){if(og(Ht.expression)&&!Ie(Ht.expression)){for(let Br of Ht.expression.properties){if(Lx(Br)){zt(),st.push(pe.checkDefined(Mr(Br.expression,ee,un)));continue}ir.push(pe.checkDefined(Mr(Br,ee)))}continue}zt(),st.push(pe.checkDefined(Mr(Ht.expression,ee,un)));continue}ir.push(Lt(Ht))}return pr&&ir.push(pr),zt(),st.length&&!og(st[0])&&st.unshift(c.createObjectLiteralExpression()),Ps(st)||g().createAssignHelper(st);function zt(){ir.length&&(st.push(c.createObjectLiteralExpression(ir)),ir=[])}}function Lt(dt){let pr=ur(dt),st=Ke(dt.initializer);return c.createPropertyAssignment(pr,st)}function Ke(dt){if(dt===void 0)return c.createTrue();if(dt.kind===11){let pr=dt.singleQuote!==void 0?dt.singleQuote:!sne(dt,h),st=c.createStringLiteral(Dt(dt.text)||dt.text,pr);return gn(st,dt)}return dt.kind===295?dt.expression===void 0?c.createTrue():pe.checkDefined(Mr(dt.expression,ee,un)):bN(dt)?Ne(dt,!1):_U(dt)?Te(dt,!1):P3(dt)?Ze(dt,!1):pe.failBadSyntaxKind(dt)}function Pt(dt){let pr=_r(dt.text);return pr===void 0?void 0:c.createStringLiteral(pr)}function _r(dt){let pr,st=0,ir=-1;for(let zt=0;zt{if(Ht)return jR(parseInt(Ht,10));if(Br)return jR(parseInt(Br,16));{let jn=FBs.get(mn);return jn?jR(jn):pr}})}function Dt(dt){let pr=nt(dt);return pr===dt?void 0:pr}function tr(dt){if(dt.kind===285)return tr(dt.openingElement);{let pr=dt.tagName;return Ir(pr)&&eU(pr.escapedText)?c.createStringLiteral(Vo(pr)):eR(pr)?c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name)):cEe(c,pr)}}function ur(dt){let pr=dt.name;if(Ir(pr)){let st=Vo(pr);return/^[A-Z_]\w*$/i.test(st)?pr:c.createStringLiteral(st)}return c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name))}function Gr(dt){let pr=Mr(dt.expression,ee,un);return dt.dotDotDotToken?c.createSpreadElement(pr):pr}}var FBs=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}));function $Ot(s){let{factory:c,hoistVariableDeclaration:g}=s;return rR(s,d);function d(T){return T.isDeclarationFile?T:_s(T,h,s)}function h(T){if(!(T.transformFlags&512))return T;switch(T.kind){case 227:return _(T);default:return _s(T,h,s)}}function _(T){switch(T.operatorToken.kind){case 68:return S(T);case 43:return R(T);default:return _s(T,h,s)}}function S(T){let W,V,M=Mr(T.left,h,un),ee=Mr(T.right,h,un);if(Yg(M)){let re=c.createTempVariable(g),ge=c.createTempVariable(g);W=gn(c.createElementAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),gn(c.createAssignment(ge,M.argumentExpression),M.argumentExpression)),M),V=gn(c.createElementAccessExpression(re,ge),M)}else if(jo(M)){let re=c.createTempVariable(g);W=gn(c.createPropertyAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),M.name),M),V=gn(c.createPropertyAccessExpression(re,M.name),M)}else W=M,V=M;return gn(c.createAssignment(W,gn(c.createGlobalMethodCall("Math","pow",[V,ee]),T)),T)}function R(T){let W=Mr(T.left,h,un),V=Mr(T.right,h,un);return gn(c.createGlobalMethodCall("Math","pow",[W,V]),T)}}function Wtn(s,c){return{kind:s,expression:c}}function e3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=s.getEmitResolver(),W=s.onSubstituteNode,V=s.onEmitNode;s.onEmitNode=OC,s.onSubstituteNode=yv;let M,ee,re,ge;function Ie(at){ge=Ft(ge,c.createVariableDeclaration(at))}let _e,Ee=0;return rR(s,Ne);function Ne(at){if(at.isDeclarationFile)return at;M=at,ee=at.text;let en=ht(at);return hN(en,s.readEmitHelpers()),M=void 0,ee=void 0,ge=void 0,re=0,en}function Te(at,en){let gi=re;return re=(re&~at|en)&32767,gi}function Ze(at,en,gi){re=(re&~en|gi)&-32768|at}function We(at){return(re&8192)!==0&&at.kind===254&&!at.expression}function Ue(at){return at.transformFlags&4194304&&(I2(at)||Z3(at)||kPt(at)||ode(at)||ade(at)||fie(at)||cde(at)||mU(at)||iQ(at)||FP(at)||VT(at,!1)||$u(at))}function $e(at){return(at.transformFlags&1024)!==0||_e!==void 0||re&8192&&Ue(at)||VT(at,!1)&&Dl(at)||(g1(at)&1)!==0}function Ye(at){return $e(at)?mt(at,!1):at}function Tt(at){return $e(at)?mt(at,!0):at}function ot(at){if($e(at)){let en=Dd(at);if(pi(en)&&zh(en)){let gi=Te(32670,16449),_i=mt(at,!1);return Ze(gi,229376,0),_i}return mt(at,!1)}return at}function Qe(at){return at.kind===108?C2(at,!0):Ye(at)}function mt(at,en){switch(at.kind){case 126:return;case 264:return tr(at);case 232:return ur(at);case 170:return Tg(at);case 263:return bn(at);case 220:return Gi(at);case 219:return nn(at);case 261:return Bs(at);case 80:return nt(at);case 262:return Ot(at);case 256:return _t(at);case 270:return Rt(at);case 242:return cn(at,!1);case 253:case 252:return Dt(at);case 257:return wn(at);case 247:case 248:return es(at,void 0);case 249:return Wi(at,void 0);case 250:return Ui(at,void 0);case 251:return gs(at,void 0);case 245:return Bt(at);case 211:return Ag(at);case 300:return Uc(at);case 305:return yf(at);case 168:return rm(at);case 210:return Gp(at);case 214:return oh(at);case 215:return m2(at);case 218:return xe(at,en);case 227:return fr(at,en);case 357:return Je(at,en);case 15:case 16:case 17:case 18:return NA(at);case 11:return uA(at);case 9:return hm(at);case 216:return af(at);case 229:return dI(at);case 230:return _h(at);case 231:return RA(at);case 108:return C2(at,!1);case 110:return _r(at);case 237:return d_(at);case 175:return xd(at);case 178:case 179:return Lg(at);case 244:return Hn(at);case 254:return Pt(at);case 223:return Gt(at);default:return _s(at,Ye,s)}}function ht(at){let en=Te(8064,64),gi=[],_i=[];d();let ys=c.copyPrologue(at.statements,gi,!1,Ye);return Or(_i,Ws(at.statements,Ye,Lc,ys)),ge&&_i.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ge))),c.mergeLexicalEnvironment(gi,_()),it(gi,at),Ze(en,0,0),c.updateSourceFile(at,gn(c.createNodeArray(Nn(gi,_i)),at.statements))}function _t(at){if(_e!==void 0){let en=_e.allowedNonLabeledJumps;_e.allowedNonLabeledJumps|=2;let gi=_s(at,Ye,s);return _e.allowedNonLabeledJumps=en,gi}return _s(at,Ye,s)}function Rt(at){let en=Te(7104,0),gi=_s(at,Ye,s);return Ze(en,0,0),gi}function Lt(at){return ua(c.createReturnStatement(Ke()),at)}function Ke(){return c.createUniqueName("_this",48)}function Pt(at){return _e?(_e.nonLocalJumps|=8,We(at)&&(at=Lt(at)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),at.expression?pe.checkDefined(Mr(at.expression,Ye,un)):c.createVoidZero())]))):We(at)?Lt(at):_s(at,Ye,s)}function _r(at){return re|=65536,re&2&&!(re&16384)&&(re|=131072),_e?re&2?(_e.containsLexicalThis=!0,at):_e.thisName||(_e.thisName=c.createUniqueName("this")):at}function Gt(at){return _s(at,Tt,s)}function nt(at){return _e&&T.isArgumentsLocalBinding(at)?_e.argumentsName||(_e.argumentsName=c.createUniqueName("arguments")):at.flags&256?ua(gn(c.createIdentifier(Bc(at.escapedText)),at),at):at}function Dt(at){if(_e){let en=at.kind===253?2:4;if(!(at.label&&_e.labels&&_e.labels.get(Vo(at.label))||!at.label&&_e.allowedNonLabeledJumps&en)){let _i,ys=at.label;ys?at.kind===253?(_i=`break-${ys.escapedText}`,mr(_e,!0,Vo(ys),_i)):(_i=`continue-${ys.escapedText}`,mr(_e,!1,Vo(ys),_i)):at.kind===253?(_e.nonLocalJumps|=2,_i="break"):(_e.nonLocalJumps|=4,_i="continue");let $s=c.createStringLiteral(_i);if(_e.loopOutParameters.length){let wa=_e.loopOutParameters,pc;for(let ul=0;ulIr(en.name)&&!en.initializer)}function Br(at){if(Dy(at))return!0;if(!(at.transformFlags&134217728))return!1;switch(at.kind){case 220:case 219:case 263:case 177:case 176:return!1;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?!!Lu(en.name,Br):!1}}return!!Lu(at,Br)}function mn(at,en,gi,_i){let ys=!!gi&&HI(gi.expression).kind!==106;if(!at)return zt(en,ys);let $s=[],wa=[];h();let pc=c.copyStandardPrologue(at.body.statements,$s,0);(_i||Br(at.body))&&(re|=8192),Or(wa,Ws(at.body.statements,Ye,Lc,pc));let ul=ys||re&8192;Tu($s,at),on($s,at,_i),Fr($s,at),ul?nr($s,at,tl()):it($s,at),c.mergeLexicalEnvironment($s,_()),ul&&!Oa(at.body)&&wa.push(c.createReturnStatement(Ke()));let Fe=c.createBlock(gn(c.createNodeArray([...$s,...wa]),at.body.statements),!0);return gn(Fe,at.body),pa(Fe,at.body,_i)}function jn(at){return kp(at)&&Vo(at)==="_this"}function Zi(at){return kp(at)&&Vo(at)==="_super"}function Ns(at){return Ch(at)&&at.declarationList.declarations.length===1&&An(at.declarationList.declarations[0])}function An(at){return nc(at)&&jn(at.name)&&!!at.initializer}function si(at){return Jm(at,!0)&&jn(at.left)}function ks(at){return Zl(at)&&jo(at.expression)&&Zi(at.expression.expression)&&Ir(at.expression.name)&&(Vo(at.expression.name)==="call"||Vo(at.expression.name)==="apply")&&at.arguments.length>=1&&at.arguments[0].kind===110}function Ic(at){return fo(at)&&at.operatorToken.kind===57&&at.right.kind===110&&ks(at.left)}function su(at){return fo(at)&&at.operatorToken.kind===56&&fo(at.left)&&at.left.operatorToken.kind===38&&Zi(at.left.left)&&at.left.right.kind===106&&ks(at.right)&&Vo(at.right.expression.name)==="apply"}function Zn(at){return fo(at)&&at.operatorToken.kind===57&&at.right.kind===110&&su(at.left)}function ya(at){return si(at)&&Ic(at.right)}function Gl(at){return si(at)&&Zn(at.right)}function ba(at){return ks(at)||Ic(at)||ya(at)||su(at)||Zn(at)||Gl(at)}function Wo(at){for(let en=0;en0;_i--){let ys=at.statements[_i];if(I2(ys)&&ys.expression&&jn(ys.expression)){let $s=at.statements[_i-1],wa;if(VC($s)&&ya(HI($s.expression)))wa=$s.expression;else if(gi&&Ns($s)){let Fe=$s.declarationList.declarations[0];ba(HI(Fe.initializer))&&(wa=c.createAssignment(Ke(),Fe.initializer))}if(!wa)break;let pc=c.createReturnStatement(wa);ua(pc,$s),gn(pc,$s);let ul=c.createNodeArray([...at.statements.slice(0,_i-1),pc,...at.statements.slice(_i+1)]);return gn(ul,at.statements),c.updateBlock(at,ul)}}return at}function yr(at){if(Ns(at)){if(at.declarationList.declarations[0].initializer.kind===110)return}else if(si(at))return c.createPartiallyEmittedExpression(at.right,at);switch(at.kind){case 220:case 219:case 263:case 177:case 176:return at;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?c.replacePropertyName(en,_s(en.name,yr,void 0)):at}}return _s(at,yr,void 0)}function hn(at,en){if(en.transformFlags&16384||re&65536||re&131072)return at;for(let gi of en.statements)if(gi.transformFlags&134217728&&!O9e(gi))return at;return c.updateBlock(at,Ws(at.statements,yr,Lc))}function Oi(at){if(ks(at)&&at.arguments.length===2&&Ir(at.arguments[1])&&Vo(at.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(XI(),c.createNull()),at);switch(at.kind){case 220:case 219:case 263:case 177:case 176:return at;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?c.replacePropertyName(en,_s(en.name,Oi,void 0)):at}}return _s(at,Oi,void 0)}function lo(at){return c.updateBlock(at,Ws(at.statements,Oi,Lc))}function pa(at,en,gi){let _i=at;return at=Wo(at),at=hc(at,en),at!==_i&&(at=hn(at,en)),gi&&(at=lo(at)),at}function Oa(at){if(at.kind===254)return!0;if(at.kind===246){let en=at;if(en.elseStatement)return Oa(en.thenStatement)&&Oa(en.elseStatement)}else if(at.kind===242){let en=li(at.statements);if(en&&Oa(en))return!0}return!1}function tl(){return ti(c.createThis(),8)}function Qu(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(XI(),c.createNull()),c.createFunctionApplyCall(XI(),tl(),c.createIdentifier("arguments"))),tl())}function Tg(at){if(!at.dotDotDotToken)return Nu(at.name)?ua(gn(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(at),void 0,void 0,void 0),at),at):at.initializer?ua(gn(c.createParameterDeclaration(void 0,void 0,at.name,void 0,void 0,void 0),at),at):at}function Cs(at){return at.initializer!==void 0||Nu(at.name)}function Tu(at,en){if(!jt(en.parameters,Cs))return!1;let gi=!1;for(let _i of en.parameters){let{name:ys,initializer:$s,dotDotDotToken:wa}=_i;wa||(Nu(ys)?gi=Pr(at,_i,ys,$s)||gi:$s&&(Pn(at,_i,ys,$s),gi=!0))}return gi}function Pr(at,en,gi,_i){return gi.elements.length>0?(FL(at,ti(c.createVariableStatement(void 0,c.createVariableDeclarationList(uQ(en,Ye,s,0,c.getGeneratedNameForNode(en)))),2097152)),!0):_i?(FL(at,ti(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(en),pe.checkDefined(Mr(_i,Ye,un)))),2097152)),!0):!1}function Pn(at,en,gi,_i){_i=pe.checkDefined(Mr(_i,Ye,un));let ys=c.createIfStatement(c.createTypeCheck(c.cloneNode(gi),"undefined"),ti(gn(c.createBlock([c.createExpressionStatement(ti(gn(c.createAssignment(ti(XA(gn(c.cloneNode(gi),gi),gi.parent),96),ti(_i,96|tA(_i)|3072)),en),3072))]),en),3905));N0(ys),gn(ys,en),ti(ys,2101056),FL(at,ys)}function pt(at,en){return!!(at&&at.dotDotDotToken&&!en)}function on(at,en,gi){let _i=[],ys=li(en.parameters);if(!pt(ys,gi))return!1;let $s=ys.name.kind===80?XA(gn(c.cloneNode(ys.name),ys.name),ys.name.parent):c.createTempVariable(void 0);ti($s,96);let wa=ys.name.kind===80?c.cloneNode(ys.name):$s,pc=en.parameters.length-1,ul=c.createLoopVariable();_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration($s,void 0,void 0,c.createArrayLiteralExpression([]))])),ys),2097152));let Fe=c.createForStatement(gn(c.createVariableDeclarationList([c.createVariableDeclaration(ul,void 0,void 0,c.createNumericLiteral(pc))]),ys),gn(c.createLessThan(ul,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),ys),gn(c.createPostfixIncrement(ul),ys),c.createBlock([N0(gn(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(wa,pc===0?ul:c.createSubtract(ul,c.createNumericLiteral(pc))),c.createElementAccessExpression(c.createIdentifier("arguments"),ul))),ys))]));return ti(Fe,2097152),N0(Fe),_i.push(Fe),ys.name.kind!==80&&_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList(uQ(ys,Ye,s,0,wa))),ys),2097152)),Wre(at,_i),!0}function it(at,en){return re&131072&&en.kind!==220?(nr(at,en,c.createThis()),!0):!1}function nr(at,en,gi){gy();let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ke(),void 0,void 0,gi)]));ti(_i,2100224),Hg(_i,en),FL(at,_i)}function Fr(at,en){if(re&32768){let gi;switch(en.kind){case 220:return at;case 175:case 178:case 179:gi=c.createVoidZero();break;case 177:gi=c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor");break;case 263:case 219:gi=c.createConditionalExpression(c.createLogicalAnd(ti(c.createThis(),8),c.createBinaryExpression(ti(c.createThis(),8),104,c.getLocalName(en))),void 0,c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return pe.failBadSyntaxKind(en)}let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,gi)]));ti(_i,2100224),FL(at,_i)}return at}function Kr(at,en){for(let gi of en.members)switch(gi.kind){case 241:at.push(Dn(gi));break;case 175:at.push(hr(pS(en,gi),gi,en));break;case 178:case 179:let _i=BP(en.members,gi);gi===_i.firstAccessor&&at.push(En(pS(en,gi),_i,en));break;case 177:case 176:break;default:pe.failBadSyntaxKind(gi,M&&M.fileName);break}}function Dn(at){return gn(c.createEmptyStatement(),at)}function hr(at,en,gi){let _i=DB(en),ys=XT(en),$s=ds(en,en,void 0,gi),wa=Mr(en.name,Ye,VI);pe.assert(wa);let pc;if(!p(wa)&&Pne(s.getCompilerOptions())){let Fe=Un(wa)?wa.expression:Ir(wa)?c.createStringLiteral(Bc(wa.escapedText)):wa;pc=c.createObjectDefinePropertyCall(at,Fe,c.createPropertyDescriptor({value:$s,enumerable:!1,writable:!0,configurable:!0}))}else{let Fe=EU(c,at,wa,en.name);pc=c.createAssignment(Fe,$s)}ti($s,3072),Hg($s,ys);let ul=gn(c.createExpressionStatement(pc),en);return ua(ul,en),hh(ul,_i),ti(ul,96),ul}function En(at,en,gi){let _i=c.createExpressionStatement(Ni(at,en,gi,!1));return ti(_i,3072),Hg(_i,XT(en.firstAccessor)),_i}function Ni(at,{firstAccessor:en,getAccessor:gi,setAccessor:_i},ys,$s){let wa=XA(gn(c.cloneNode(at),at),at.parent);ti(wa,3136),Hg(wa,en.name);let pc=Mr(en.name,Ye,VI);if(pe.assert(pc),p(pc))return pe.failBadSyntaxKind(pc,"Encountered unhandled private identifier while transforming ES2015.");let ul=v$e(c,pc);ti(ul,3104),Hg(ul,en.name);let Fe=[];if(gi){let Ln=ds(gi,void 0,void 0,ys);Hg(Ln,XT(gi)),ti(Ln,1024);let bs=c.createPropertyAssignment("get",Ln);hh(bs,DB(gi)),Fe.push(bs)}if(_i){let Ln=ds(_i,void 0,void 0,ys);Hg(Ln,XT(_i)),ti(Ln,1024);let bs=c.createPropertyAssignment("set",Ln);hh(bs,DB(_i)),Fe.push(bs)}Fe.push(c.createPropertyAssignment("enumerable",gi||_i?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let gr=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[wa,ul,c.createObjectLiteralExpression(Fe,!0)]);return $s&&N0(gr),gr}function Gi(at){at.transformFlags&16384&&!(re&16384)&&(re|=131072);let en=_e;_e=void 0;let gi=Te(15232,66),_i=c.createFunctionExpression(void 0,void 0,void 0,void 0,vI(at.parameters,Ye,s),void 0,Mt(at));return gn(_i,at),ua(_i,at),ti(_i,16),Ze(gi,0,0),_e=en,_i}function nn(at){let en=tA(at)&524288?Te(32662,69):Te(32670,65),gi=_e;_e=void 0;let _i=vI(at.parameters,Ye,s),ys=Mt(at),$s=re&32768?c.getLocalName(at):at.name;return Ze(en,229376,0),_e=gi,c.updateFunctionExpression(at,void 0,at.asteriskToken,$s,void 0,_i,void 0,ys)}function bn(at){let en=_e;_e=void 0;let gi=Te(32670,65),_i=vI(at.parameters,Ye,s),ys=Mt(at),$s=re&32768?c.getLocalName(at):at.name;return Ze(gi,229376,0),_e=en,c.updateFunctionDeclaration(at,Ws(at.modifiers,Ye,Ig),at.asteriskToken,$s,void 0,_i,void 0,ys)}function ds(at,en,gi,_i){let ys=_e;_e=void 0;let $s=_i&&xa(_i)&&!cg(at)?Te(32670,73):Te(32670,65),wa=vI(at.parameters,Ye,s),pc=Mt(at);return re&32768&&!gi&&(at.kind===263||at.kind===219)&&(gi=c.getGeneratedNameForNode(at)),Ze($s,229376,0),_e=ys,ua(gn(c.createFunctionExpression(void 0,at.asteriskToken,gi,void 0,wa,void 0,pc),en),at)}function Mt(at){let en=!1,gi=!1,_i,ys,$s=[],wa=[],pc=at.body,ul;if(h(),$u(pc)&&(ul=c.copyStandardPrologue(pc.statements,$s,0,!1),ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye,xge),ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye,Gge)),en=Tu(wa,at)||en,en=on(wa,at,!1)||en,$u(pc))ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye),_i=pc.statements,Or(wa,Ws(pc.statements,Ye,Lc,ul)),!en&&pc.multiLine&&(en=!0);else{pe.assert(at.kind===220),_i=IAe(pc,-1);let gr=at.equalsGreaterThanToken;!sp(gr)&&!sp(pc)&&(kne(gr,pc,M)?gi=!0:en=!0);let Ln=Mr(pc,Ye,un),bs=c.createReturnStatement(Ln);gn(bs,pc),FLe(bs,pc),ti(bs,2880),wa.push(bs),ys=pc}if(c.mergeLexicalEnvironment($s,_()),Fr($s,at),it($s,at),jt($s)&&(en=!0),wa.unshift(...$s),$u(pc)&&Sc(wa,pc.statements))return pc;let Fe=c.createBlock(gn(c.createNodeArray(wa),_i),en);return gn(Fe,at.body),!en&&gi&&ti(Fe,1),ys&&Kbe(Fe,20,ys),ua(Fe,at.body),Fe}function cn(at,en){if(en)return _s(at,Ye,s);let gi=re&256?Te(7104,512):Te(6976,128),_i=_s(at,Ye,s);return Ze(gi,0,0),_i}function Bt(at){return _s(at,Tt,s)}function xe(at,en){return _s(at,en?Tt:Ye,s)}function fr(at,en){return Dx(at)?TU(at,Ye,s,0,!en):at.operatorToken.kind===28?c.updateBinaryExpression(at,pe.checkDefined(Mr(at.left,Tt,un)),at.operatorToken,pe.checkDefined(Mr(at.right,en?Tt:Ye,un))):_s(at,Ye,s)}function Je(at,en){if(en)return _s(at,Tt,s);let gi;for(let ys=0;ysul.name)),pc=_i?c.createYieldExpression(c.createToken(42),ti(wa,8388608)):wa;if($s)ys.push(c.createExpressionStatement(pc)),_f(en.loopOutParameters,1,0,ys);else{let ul=c.createUniqueName("state"),Fe=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(ul,void 0,void 0,pc)]));if(ys.push(Fe),_f(en.loopOutParameters,1,0,ys),en.nonLocalJumps&8){let gr;gi?(gi.nonLocalJumps|=8,gr=c.createReturnStatement(ul)):gr=c.createReturnStatement(c.createPropertyAccessExpression(ul,"value")),ys.push(c.createIfStatement(c.createTypeCheck(ul,"object"),gr))}if(en.nonLocalJumps&2&&ys.push(c.createIfStatement(c.createStrictEquality(ul,c.createStringLiteral("break")),c.createBreakStatement())),en.labeledNonLocalBreaks||en.labeledNonLocalContinues){let gr=[];ln(en.labeledNonLocalBreaks,!0,ul,gi,gr),ln(en.labeledNonLocalContinues,!1,ul,gi,gr),ys.push(c.createSwitchStatement(ul,c.createCaseBlock(gr)))}}return ys}function mr(at,en,gi,_i){en?(at.labeledNonLocalBreaks||(at.labeledNonLocalBreaks=new Map),at.labeledNonLocalBreaks.set(gi,_i)):(at.labeledNonLocalContinues||(at.labeledNonLocalContinues=new Map),at.labeledNonLocalContinues.set(gi,_i))}function ln(at,en,gi,_i,ys){at&&at.forEach(($s,wa)=>{let pc=[];if(!_i||_i.labels&&_i.labels.get(wa)){let ul=c.createIdentifier(wa);pc.push(en?c.createBreakStatement(ul):c.createContinueStatement(ul))}else mr(_i,en,wa,$s),pc.push(c.createReturnStatement(gi));ys.push(c.createCaseClause(c.createStringLiteral($s),pc))})}function ni(at,en,gi,_i,ys){let $s=en.name;if(Nu($s))for(let wa of $s.elements)yp(wa)||ni(at,wa,gi,_i,ys);else{gi.push(c.createParameterDeclaration(void 0,void 0,$s));let wa=T.hasNodeCheckFlag(en,65536);if(wa||ys){let pc=c.createUniqueName("out_"+Vo($s)),ul=0;wa&&(ul|=1),L3(at)&&(at.initializer&&T.isBindingCapturedByNode(at.initializer,en)&&(ul|=2),(at.condition&&T.isBindingCapturedByNode(at.condition,en)||at.incrementor&&T.isBindingCapturedByNode(at.incrementor,en))&&(ul|=1)),_i.push({flags:ul,originalName:$s,outParamName:pc})}}}function Ls(at,en,gi,_i){let ys=en.properties,$s=ys.length;for(let wa=_i;wa<$s;wa++){let pc=ys[wa];switch(pc.kind){case 178:case 179:let ul=BP(en.properties,pc);pc===ul.firstAccessor&&at.push(Ni(gi,ul,en,!!en.multiLine));break;case 175:at.push(Ss(pc,gi,en,en.multiLine));break;case 304:at.push(Za(pc,gi,en.multiLine));break;case 305:at.push(Go(pc,gi,en.multiLine));break;default:pe.failBadSyntaxKind(en);break}}}function Za(at,en,gi){let _i=c.createAssignment(EU(c,en,pe.checkDefined(Mr(at.name,Ye,VI))),pe.checkDefined(Mr(at.initializer,Ye,un)));return gn(_i,at),gi&&N0(_i),_i}function Go(at,en,gi){let _i=c.createAssignment(EU(c,en,pe.checkDefined(Mr(at.name,Ye,VI))),c.cloneNode(at.name));return gn(_i,at),gi&&N0(_i),_i}function Ss(at,en,gi,_i){let ys=c.createAssignment(EU(c,en,pe.checkDefined(Mr(at.name,Ye,VI))),ds(at,at,void 0,gi));return gn(ys,at),_i&&N0(ys),ys}function Uc(at){let en=Te(7104,0),gi;if(pe.assert(!!at.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),Nu(at.variableDeclaration.name)){let _i=c.createTempVariable(void 0),ys=c.createVariableDeclaration(_i);gn(ys,at.variableDeclaration);let $s=uQ(at.variableDeclaration,Ye,s,0,_i),wa=c.createVariableDeclarationList($s);gn(wa,at.variableDeclaration);let pc=c.createVariableStatement(void 0,wa);gi=c.updateCatchClause(at,ys,rl(at.block,pc))}else gi=_s(at,Ye,s);return Ze(en,0,0),gi}function rl(at,en){let gi=Ws(at.statements,Ye,Lc);return c.updateBlock(at,[en,...gi])}function xd(at){pe.assert(!Un(at.name));let en=ds(at,KD(at,-1),void 0,void 0);return ti(en,1024|tA(en)),gn(c.createPropertyAssignment(at.name,en),at)}function Lg(at){pe.assert(!Un(at.name));let en=_e;_e=void 0;let gi=Te(32670,65),_i,ys=vI(at.parameters,Ye,s),$s=Mt(at);return at.kind===178?_i=c.updateGetAccessorDeclaration(at,at.modifiers,at.name,ys,at.type,$s):_i=c.updateSetAccessorDeclaration(at,at.modifiers,at.name,ys,$s),Ze(gi,229376,0),_e=en,_i}function yf(at){return gn(c.createPropertyAssignment(at.name,nt(c.cloneNode(at.name))),at)}function rm(at){return _s(at,Ye,s)}function _h(at){return _s(at,Ye,s)}function Gp(at){return jt(at.elements,of)?Vb(at.elements,!1,!!at.multiLine,!!at.elements.hasTrailingComma):_s(at,Ye,s)}function oh(at){if(g1(at)&1)return b1(at);let en=HI(at.expression);return en.kind===108||xy(en)||jt(at.arguments,of)?Z_(at,!0):c.updateCallExpression(at,pe.checkDefined(Mr(at.expression,Qe,un)),void 0,Ws(at.arguments,Ye,un))}function b1(at){let en=Ma(Ma(HI(at.expression),lA).body,$u),gi=Jg=>Ch(Jg)&&!!ma(Jg.declarationList.declarations).initializer,_i=_e;_e=void 0;let ys=Ws(en.statements,ot,Lc);_e=_i;let $s=Me(ys,gi),wa=Me(ys,Jg=>!gi(Jg)),ul=Ma(ma($s),Ch).declarationList.declarations[0],Fe=HI(ul.initializer),gr=Gs(Fe,Jm);!gr&&fo(Fe)&&Fe.operatorToken.kind===28&&(gr=Gs(Fe.left,Jm));let Ln=Ma(gr?HI(gr.right):Fe,Zl),bs=Ma(HI(Ln.expression),UA),Xl=bs.body.statements,eg=0,jl=-1,Eu=[];if(gr){let Jg=Gs(Xl[eg],VC);Jg&&(Eu.push(Jg),eg++),Eu.push(Xl[eg]),eg++,Eu.push(c.createExpressionStatement(c.createAssignment(gr.left,Ma(ul.name,Ir))))}for(;!I2(Cg(Xl,jl));)jl--;Or(Eu,Xl,eg,jl),jl<-1&&Or(Eu,Xl,jl+1);let Df=Gs(Cg(Xl,jl),I2);for(let Jg of wa)I2(Jg)&&Df?.expression&&!Ir(Df.expression)?Eu.push(Df):Eu.push(Jg);return Or(Eu,$s,1),c.restoreOuterExpressions(at.expression,c.restoreOuterExpressions(ul.initializer,c.restoreOuterExpressions(gr&&gr.right,c.updateCallExpression(Ln,c.restoreOuterExpressions(Ln.expression,c.updateFunctionExpression(bs,void 0,void 0,void 0,void 0,bs.parameters,void 0,c.updateBlock(bs.body,Eu))),void 0,Ln.arguments))))}function Z_(at,en){if(at.transformFlags&32768||at.expression.kind===108||xy(HI(at.expression))){let{target:gi,thisArg:_i}=c.createCallBinding(at.expression,S);at.expression.kind===108&&ti(_i,8);let ys;if(at.transformFlags&32768?ys=c.createFunctionApplyCall(pe.checkDefined(Mr(gi,Qe,un)),at.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Vb(at.arguments,!0,!1,!1)):ys=gn(c.createFunctionCallCall(pe.checkDefined(Mr(gi,Qe,un)),at.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Ws(at.arguments,Ye,un)),at),at.expression.kind===108){let $s=c.createLogicalOr(ys,tl());ys=en?c.createAssignment(Ke(),$s):$s}return ua(ys,at)}return Dy(at)&&(re|=131072),_s(at,Ye,s)}function m2(at){if(jt(at.arguments,of)){let{target:en,thisArg:gi}=c.createCallBinding(c.createPropertyAccessExpression(at.expression,"bind"),S);return c.createNewExpression(c.createFunctionApplyCall(pe.checkDefined(Mr(en,Ye,un)),gi,Vb(c.createNodeArray([c.createVoidZero(),...at.arguments]),!0,!1,!1)),void 0,[])}return _s(at,Ye,s)}function Vb(at,en,gi,_i){let ys=at.length,$s=Nr(_n(at,or,(Fe,gr,Ln,bs)=>gr(Fe,gi,_i&&bs===ys)));if($s.length===1){let Fe=$s[0];if(en&&!R.downlevelIteration||Gbe(Fe.expression)||qD(Fe.expression,"___spreadArray"))return Fe.expression}let wa=g(),pc=$s[0].kind!==0,ul=pc?c.createArrayLiteralExpression():$s[0].expression;for(let Fe=pc?0:1;Fe<$s.length;Fe++){let gr=$s[Fe];ul=wa.createSpreadArrayHelper(ul,gr.expression,gr.kind===1&&!en)}return ul}function or(at){return of(at)?qn:Hl}function qn(at){return At(at,Js)}function Js(at){pe.assertNode(at,of);let en=Mr(at.expression,Ye,un);pe.assert(en);let gi=qD(en,"___read"),_i=gi||Gbe(en)?2:1;return R.downlevelIteration&&_i===1&&!OI(en)&&!gi&&(en=g().createReadHelper(en,void 0),_i=2),Wtn(_i,en)}function Hl(at,en,gi){let _i=c.createArrayLiteralExpression(Ws(c.createNodeArray(at,gi),Ye,un),en);return Wtn(0,_i)}function RA(at){return Mr(at.expression,Ye,un)}function NA(at){return gn(c.createStringLiteral(at.text),at)}function uA(at){return at.hasExtendedUnicodeEscape?gn(c.createStringLiteral(at.text),at):at}function hm(at){return at.numericLiteralFlags&384?gn(c.createNumericLiteral(at.text),at):at}function af(at){return Met(s,at,Ye,M,Ie,1)}function dI(at){let en=c.createStringLiteral(at.head.text);for(let gi of at.templateSpans){let _i=[pe.checkDefined(Mr(gi.expression,Ye,un))];gi.literal.text.length>0&&_i.push(c.createStringLiteral(gi.literal.text)),en=c.createCallExpression(c.createPropertyAccessExpression(en,"concat"),void 0,_i)}return gn(en,at)}function XI(){return c.createUniqueName("_super",48)}function C2(at,en){let gi=re&8&&!en?c.createPropertyAccessExpression(ua(XI(),at),"prototype"):XI();return ua(gi,at),hh(gi,at),Hg(gi,at),gi}function d_(at){return at.keywordToken===105&&at.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):at}function OC(at,en,gi){if(Ee&1&&bu(en)){let _i=Te(32670,tA(en)&16?81:65);V(at,en,gi),Ze(_i,0,0);return}V(at,en,gi)}function E1(){Ee&2||(Ee|=2,s.enableSubstitution(80))}function gy(){Ee&1||(Ee|=1,s.enableSubstitution(110),s.enableEmitNotification(177),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(220),s.enableEmitNotification(219),s.enableEmitNotification(263))}function yv(at,en){return en=W(at,en),at===1?Ox(en):Ir(en)?ik(en):en}function ik(at){if(Ee&2&&!B$e(at)){let en=$l(at,Ir);if(en&&Wx(en))return gn(c.getGeneratedNameForNode(en),at)}return at}function Wx(at){switch(at.parent.kind){case 209:case 264:case 267:case 261:return at.parent.name===at&&T.isDeclarationWithCollidingName(at.parent)}return!1}function Ox(at){switch(at.kind){case 80:return Pb(at);case 110:return oR(at)}return at}function Pb(at){if(Ee&2&&!B$e(at)){let en=T.getReferencedDeclarationWithCollidingName(at);if(en&&!(xa(en)&&qm(en,at)))return gn(c.getGeneratedNameForNode(Il(en)),at)}return at}function qm(at,en){let gi=$l(en);if(!gi||gi===at||gi.end<=at.pos||gi.pos>=at.end)return!1;let _i=tS(at);for(;gi;){if(gi===_i||gi===at)return!1;if(PI(gi)&&gi.parent===at)return!0;gi=gi.parent}return!1}function oR(at){return Ee&1&&re&16?gn(Ke(),at):at}function pS(at,en){return cg(en)?c.getInternalName(at):c.createPropertyAccessExpression(c.getInternalName(at),"prototype")}function xN(at,en){if(!at||!en||jt(at.parameters))return!1;let gi=Nc(at.body.statements);if(!gi||!sp(gi)||gi.kind!==245)return!1;let _i=gi.expression;if(!sp(_i)||_i.kind!==214)return!1;let ys=_i.expression;if(!sp(ys)||ys.kind!==108)return!1;let $s=Ps(_i.arguments);if(!$s||!sp($s)||$s.kind!==231)return!1;let wa=$s.expression;return Ir(wa)&&wa.escapedText==="arguments"}}function ZBs(s){switch(s){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function t3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistFunctionDeclaration:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=Mg(R),W=s.getEmitResolver(),V=s.onSubstituteNode;s.onSubstituteNode=Bt;let M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We=1,Ue,$e,Ye,Tt,ot=0,Qe=0,mt,ht,_t,Rt,Lt,Ke,Pt,_r;return rR(s,Gt);function Gt(or){if(or.isDeclarationFile||!(or.transformFlags&2048))return or;let qn=_s(or,nt,s);return hN(qn,s.readEmitHelpers()),qn}function nt(or){let qn=or.transformFlags;return ge?Dt(or):re?tr(or):kd(or)&&or.asteriskToken?Gr(or):qn&2048?_s(or,nt,s):or}function Dt(or){switch(or.kind){case 247:return Qu(or);case 248:return Cs(or);case 256:return Ni(or);case 257:return nn(or);default:return tr(or)}}function tr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);case 178:case 179:return st(or);case 244:return zt(or);case 249:return Pr(or);case 250:return pt(or);case 253:return Fr(or);case 252:return it(or);case 254:return Dn(or);default:return or.transformFlags&1048576?ur(or):or.transformFlags&4196352?_s(or,nt,s):or}}function ur(or){switch(or.kind){case 227:return Ht(or);case 357:return Zi(or);case 228:return An(or);case 230:return si(or);case 210:return ks(or);case 211:return su(or);case 213:return Zn(or);case 214:return ya(or);case 215:return Gl(or);default:return _s(or,nt,s)}}function Gr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);default:return pe.failBadSyntaxKind(or)}}function dt(or){if(or.asteriskToken)or=ua(gn(c.createFunctionDeclaration(or.modifiers,void 0,or.name,void 0,vI(or.parameters,nt,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js}if(re){_(or);return}else return or}function pr(or){if(or.asteriskToken)or=ua(gn(c.createFunctionExpression(void 0,void 0,or.name,void 0,vI(or.parameters,nt,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js}return or}function st(or){let qn=re,Js=ge;return re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js,or}function ir(or){let qn=[],Js=re,Hl=ge,RA=Ie,NA=_e,uA=Ee,hm=Ne,af=Te,dI=Ze,XI=We,C2=Ue,d_=$e,OC=Ye,E1=Tt;re=!0,ge=!1,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Ze=void 0,We=1,Ue=void 0,$e=void 0,Ye=void 0,Tt=c.createTempVariable(void 0),d();let gy=c.copyPrologue(or.statements,qn,!1,nt);ba(or.statements,gy);let yv=mr();return Sw(qn,h()),qn.push(c.createReturnStatement(yv)),re=Js,ge=Hl,Ie=RA,_e=NA,Ee=uA,Ne=hm,Te=af,Ze=dI,We=XI,Ue=C2,$e=d_,Ye=OC,Tt=E1,gn(c.createBlock(qn,or.multiLine),or)}function zt(or){if(or.transformFlags&1048576){lo(or.declarationList);return}else{if(tA(or)&2097152)return or;for(let Js of or.declarationList.declarations)S(Js.name);let qn=iU(or.declarationList);return qn.length===0?void 0:Hg(c.createExpressionStatement(c.inlineExpressions(At(qn,pa))),or)}}function Ht(or){let qn=Zye(or);switch(qn){case 0:return mn(or);case 1:return Br(or);default:return pe.assertNever(qn)}}function Br(or){let{left:qn,right:Js}=or;if(Mt(Js)){let Hl;switch(qn.kind){case 212:Hl=c.updatePropertyAccessExpression(qn,Je(pe.checkDefined(Mr(qn.expression,nt,D_))),qn.name);break;case 213:Hl=c.updateElementAccessExpression(qn,Je(pe.checkDefined(Mr(qn.expression,nt,D_))),Je(pe.checkDefined(Mr(qn.argumentExpression,nt,un))));break;default:Hl=pe.checkDefined(Mr(qn,nt,un));break}let RA=or.operatorToken.kind;return vde(RA)?gn(c.createAssignment(Hl,gn(c.createBinaryExpression(Je(Hl),Bde(RA),pe.checkDefined(Mr(Js,nt,un))),or)),or):c.updateBinaryExpression(or,Hl,or.operatorToken,pe.checkDefined(Mr(Js,nt,un)))}return _s(or,nt,s)}function mn(or){return Mt(or.right)?WZe(or.operatorToken.kind)?Ns(or):or.operatorToken.kind===28?jn(or):c.updateBinaryExpression(or,Je(pe.checkDefined(Mr(or.left,nt,un))),or.operatorToken,pe.checkDefined(Mr(or.right,nt,un))):_s(or,nt,s)}function jn(or){let qn=[];return Js(or.left),Js(or.right),c.inlineExpressions(qn);function Js(Hl){fo(Hl)&&Hl.operatorToken.kind===28?(Js(Hl.left),Js(Hl.right)):(Mt(Hl)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Hl,nt,un))))}}function Zi(or){let qn=[];for(let Js of or.elements)fo(Js)&&Js.operatorToken.kind===28?qn.push(jn(Js)):(Mt(Js)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Js,nt,un))));return c.inlineExpressions(qn)}function Ns(or){let qn=Hn(),Js=In();return KA(Js,pe.checkDefined(Mr(or.left,nt,un)),or.left),or.operatorToken.kind===56?$d(qn,Js,or.left):oi(qn,Js,or.left),KA(Js,pe.checkDefined(Mr(or.right,nt,un)),or.right),Ot(qn),Js}function An(or){if(Mt(or.whenTrue)||Mt(or.whenFalse)){let qn=Hn(),Js=Hn(),Hl=In();return $d(qn,pe.checkDefined(Mr(or.condition,nt,un)),or.condition),KA(Hl,pe.checkDefined(Mr(or.whenTrue,nt,un)),or.whenTrue),TA(Js),Ot(qn),KA(Hl,pe.checkDefined(Mr(or.whenFalse,nt,un)),or.whenFalse),Ot(Js),Hl}return _s(or,nt,s)}function si(or){let qn=Hn(),Js=Mr(or.expression,nt,un);if(or.asteriskToken){let Hl=tA(or.expression)&8388608?Js:gn(g().createValuesHelper(Js),or);YI(Hl,or)}else Fh(Js,or);return Ot(qn),dS(or)}function ks(or){return Ic(or.elements,void 0,void 0,or.multiLine)}function Ic(or,qn,Js,Hl){let RA=cn(or),NA;if(RA>0){NA=In();let af=Ws(or,nt,un,0,RA);KA(NA,c.createArrayLiteralExpression(qn?[qn,...af]:af)),qn=void 0}let uA=Ul(or,hm,[],RA);return NA?c.createArrayConcatCall(NA,[c.createArrayLiteralExpression(uA,Hl)]):gn(c.createArrayLiteralExpression(qn?[qn,...uA]:uA,Hl),Js);function hm(af,dI){if(Mt(dI)&&af.length>0){let XI=NA!==void 0;NA||(NA=In()),KA(NA,XI?c.createArrayConcatCall(NA,[c.createArrayLiteralExpression(af,Hl)]):c.createArrayLiteralExpression(qn?[qn,...af]:af,Hl)),qn=void 0,af=[]}return af.push(pe.checkDefined(Mr(dI,nt,un))),af}}function su(or){let qn=or.properties,Js=or.multiLine,Hl=cn(qn),RA=In();KA(RA,c.createObjectLiteralExpression(Ws(qn,nt,yw,0,Hl),Js));let NA=Ul(qn,uA,[],Hl);return NA.push(Js?N0(XA(gn(c.cloneNode(RA),RA),RA.parent)):RA),c.inlineExpressions(NA);function uA(hm,af){Mt(af)&&hm.length>0&&(bg(c.createExpressionStatement(c.inlineExpressions(hm))),hm=[]);let dI=jPt(c,or,af,RA),XI=Mr(dI,nt,un);return XI&&(Js&&N0(XI),hm.push(XI)),hm}}function Zn(or){return Mt(or.argumentExpression)?c.updateElementAccessExpression(or,Je(pe.checkDefined(Mr(or.expression,nt,D_))),pe.checkDefined(Mr(or.argumentExpression,nt,un))):_s(or,nt,s)}function ya(or){if(!Up(or)&&F(or.arguments,Mt)){let{target:qn,thisArg:Js}=c.createCallBinding(or.expression,S,T,!0);return ua(gn(c.createFunctionApplyCall(Je(pe.checkDefined(Mr(qn,nt,D_))),Js,Ic(or.arguments)),or),or)}return _s(or,nt,s)}function Gl(or){if(F(or.arguments,Mt)){let{target:qn,thisArg:Js}=c.createCallBinding(c.createPropertyAccessExpression(or.expression,"bind"),S);return ua(gn(c.createNewExpression(c.createFunctionApplyCall(Je(pe.checkDefined(Mr(qn,nt,un))),Js,Ic(or.arguments,c.createVoidZero())),void 0,[]),or),or)}return _s(or,nt,s)}function ba(or,qn=0){let Js=or.length;for(let Hl=qn;Hl0)break;RA.push(pa(uA))}RA.length&&(bg(c.createExpressionStatement(c.inlineExpressions(RA))),Hl+=RA.length,RA=[])}}function pa(or){return Hg(c.createAssignment(Hg(c.cloneNode(or.name),or.name),pe.checkDefined(Mr(or.initializer,nt,un))),or)}function Oa(or){if(Mt(or))if(Mt(or.thenStatement)||Mt(or.elseStatement)){let qn=Hn(),Js=or.elseStatement?Hn():void 0;$d(or.elseStatement?Js:qn,pe.checkDefined(Mr(or.expression,nt,un)),or.expression),Wo(or.thenStatement),or.elseStatement&&(TA(qn),Ot(Js),Wo(or.elseStatement)),Ot(qn)}else bg(Mr(or,nt,Lc));else bg(Mr(or,nt,Lc))}function tl(or){if(Mt(or)){let qn=Hn(),Js=Hn();Vn(qn),Ot(Js),Wo(or.statement),Ot(qn),oi(Js,pe.checkDefined(Mr(or.expression,nt,un))),Ui()}else bg(Mr(or,nt,Lc))}function Qu(or){return ge?(Wi(),or=_s(or,nt,s),Ui(),or):_s(or,nt,s)}function Tg(or){if(Mt(or)){let qn=Hn(),Js=Vn(qn);Ot(qn),$d(Js,pe.checkDefined(Mr(or.expression,nt,un))),Wo(or.statement),TA(qn),Ui()}else bg(Mr(or,nt,Lc))}function Cs(or){return ge?(Wi(),or=_s(or,nt,s),Ui(),or):_s(or,nt,s)}function Tu(or){if(Mt(or)){let qn=Hn(),Js=Hn(),Hl=Vn(Js);if(or.initializer){let RA=or.initializer;u_(RA)?lo(RA):bg(gn(c.createExpressionStatement(pe.checkDefined(Mr(RA,nt,un))),RA))}Ot(qn),or.condition&&$d(Hl,pe.checkDefined(Mr(or.condition,nt,un))),Wo(or.statement),Ot(Js),or.incrementor&&bg(gn(c.createExpressionStatement(pe.checkDefined(Mr(or.incrementor,nt,un))),or.incrementor)),TA(qn),Ui()}else bg(Mr(or,nt,Lc))}function Pr(or){ge&&Wi();let qn=or.initializer;if(qn&&u_(qn)){for(let Hl of qn.declarations)S(Hl.name);let Js=iU(qn);or=c.updateForStatement(or,Js.length>0?c.inlineExpressions(At(Js,pa)):void 0,Mr(or.condition,nt,un),Mr(or.incrementor,nt,un),Py(or.statement,nt,s))}else or=_s(or,nt,s);return ge&&Ui(),or}function Pn(or){if(Mt(or)){let qn=In(),Js=In(),Hl=In(),RA=c.createLoopVariable(),NA=or.initializer;S(RA),KA(qn,pe.checkDefined(Mr(or.expression,nt,un))),KA(Js,c.createArrayLiteralExpression()),bg(c.createForInStatement(Hl,qn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Js,"push"),void 0,[Hl])))),KA(RA,c.createNumericLiteral(0));let uA=Hn(),hm=Hn(),af=Vn(hm);Ot(uA),$d(af,c.createLessThan(RA,c.createPropertyAccessExpression(Js,"length"))),KA(Hl,c.createElementAccessExpression(Js,RA)),$d(hm,c.createBinaryExpression(Hl,103,qn));let dI;if(u_(NA)){for(let XI of NA.declarations)S(XI.name);dI=c.cloneNode(NA.declarations[0].name)}else dI=pe.checkDefined(Mr(NA,nt,un)),pe.assert(D_(dI));KA(dI,Hl),Wo(or.statement),Ot(hm),bg(c.createExpressionStatement(c.createPostfixIncrement(RA))),TA(uA),Ui()}else bg(Mr(or,nt,Lc))}function pt(or){ge&&Wi();let qn=or.initializer;if(u_(qn)){for(let Js of qn.declarations)S(Js.name);or=c.updateForInStatement(or,qn.declarations[0].name,pe.checkDefined(Mr(or.expression,nt,un)),pe.checkDefined(Mr(or.statement,nt,Lc,c.liftToBlock)))}else or=_s(or,nt,s);return ge&&Ui(),or}function on(or){let qn=yu(or.label?Vo(or.label):void 0);qn>0?TA(qn,or):bg(or)}function it(or){if(ge){let qn=yu(or.label&&Vo(or.label));if(qn>0)return Xg(qn,or)}return _s(or,nt,s)}function nr(or){let qn=Dl(or.label?Vo(or.label):void 0);qn>0?TA(qn,or):bg(or)}function Fr(or){if(ge){let qn=Dl(or.label&&Vo(or.label));if(qn>0)return Xg(qn,or)}return _s(or,nt,s)}function Kr(or){WC(Mr(or.expression,nt,un),or)}function Dn(or){return sh(Mr(or.expression,nt,un),or)}function hr(or){Mt(or)?(Ys(Je(pe.checkDefined(Mr(or.expression,nt,un)))),Wo(or.statement),tn()):bg(Mr(or,nt,Lc))}function En(or){if(Mt(or.caseBlock)){let qn=or.caseBlock,Js=qn.clauses.length,Hl=fs(),RA=Je(pe.checkDefined(Mr(or.expression,nt,un))),NA=[],uA=-1;for(let dI=0;dI0)break;af.push(c.createCaseClause(pe.checkDefined(Mr(C2.expression,nt,un)),[Xg(NA[XI],C2.expression)]))}else dI++}af.length&&(bg(c.createSwitchStatement(RA,c.createCaseBlock(af))),hm+=af.length,af=[]),dI>0&&(hm+=dI,dI=0)}uA>=0?TA(NA[uA]):TA(Hl);for(let dI=0;dI=0;Js--){let Hl=Ne[Js];if(wI(Hl)){if(Hl.labelText===or)return!0}else break}return!1}function Dl(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(wI(Js)&&Js.labelText===or)return Js.breakLabel;if(_u(Js)&&pp(or,qn-1))return Js.breakLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(_u(Js))return Js.breakLabel}return 0}function yu(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(AI(Js)&&pp(or,qn-1))return Js.continueLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(AI(Js))return Js.continueLabel}return 0}function tm(or){if(or!==void 0&&or>0){Ze===void 0&&(Ze=[]);let qn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Ze[or]===void 0?Ze[or]=[qn]:Ze[or].push(qn),qn}return c.createOmittedExpression()}function jp(or){let qn=c.createNumericLiteral(or);return Iz(qn,3,ZBs(or)),qn}function Xg(or,qn){return pe.assertLessThan(0,or,"Invalid label"),gn(c.createReturnStatement(c.createArrayLiteralExpression([jp(3),tm(or)])),qn)}function sh(or,qn){return gn(c.createReturnStatement(c.createArrayLiteralExpression(or?[jp(2),or]:[jp(2)])),qn)}function dS(or){return gn(c.createCallExpression(c.createPropertyAccessExpression(Tt,"sent"),void 0,[]),or)}function gu(){ve(0)}function bg(or){or?ve(1,[or]):gu()}function KA(or,qn,Js){ve(2,[or,qn],Js)}function TA(or,qn){ve(3,[or],qn)}function oi(or,qn,Js){ve(4,[or,qn],Js)}function $d(or,qn,Js){ve(5,[or,qn],Js)}function YI(or,qn){ve(7,[or],qn)}function Fh(or,qn){ve(6,[or],qn)}function WC(or,qn){ve(8,[or],qn)}function _f(or,qn){ve(9,[or],qn)}function QI(){ve(10)}function ve(or,qn,Js){Ue===void 0&&(Ue=[],$e=[],Ye=[]),Te===void 0&&Ot(Hn());let Hl=Ue.length;Ue[Hl]=or,$e[Hl]=qn,Ye[Hl]=Js}function mr(){ot=0,Qe=0,mt=void 0,ht=!1,_t=!1,Rt=void 0,Lt=void 0,Ke=void 0,Pt=void 0,_r=void 0;let or=ln();return g().createGeneratorHelper(ti(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Tt)],void 0,c.createBlock(or,or.length>0)),1048576))}function ln(){if(Ue){for(let or=0;or=0;qn--){let Js=_r[qn];Lt=[c.createWithStatement(Js.expression,c.createBlock(Lt))]}if(Pt){let{startLabel:qn,catchLabel:Js,finallyLabel:Hl,endLabel:RA}=Pt;Lt.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(Tt,"trys"),"push"),void 0,[c.createArrayLiteralExpression([tm(qn),tm(Js),tm(Hl),tm(RA)])]))),Pt=void 0}or&&Lt.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(Tt,"label"),c.createNumericLiteral(Qe+1))))}Rt.push(c.createCaseClause(c.createNumericLiteral(Qe),Lt||[])),Lt=void 0}function Ss(or){if(Te)for(let qn=0;qn{(!mA(Je.arguments[0])||une(Je.arguments[0].text,R))&&(Ee=Ft(Ee,Je))});let fr=c(M)(Bt);return Ie=void 0,_e=void 0,Te=!1,fr}function We(){return pN(Ie.fileName)&&Ie.commonJsModuleIndicator&&(!Ie.externalModuleIndicator||Ie.externalModuleIndicator===!0)?!1:!!(!_e.exportEquals&&xm(Ie))}function Ue(Bt){h();let xe=[],fr=a_(R,"alwaysStrict")||xm(Ie),Je=g.copyPrologue(Bt.statements,xe,fr&&!Zu(Bt),ht);if(We()&&Ft(xe,nr()),jt(_e.exportedNames))for(let Ot=0;Ot<_e.exportedNames.length;Ot+=50)Ft(xe,g.createExpressionStatement(Ul(_e.exportedNames.slice(Ot,Ot+50),($r,ri)=>ri.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(ri.text)),$r):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(ri))),$r),g.createVoidZero())));for(let Hn of _e.exportedFunctions)pt(xe,Hn);Ft(xe,Mr(_e.externalHelpersImportDeclaration,ht,Lc)),Or(xe,Ws(Bt.statements,ht,Lc,Je)),mt(xe,!1),Sw(xe,_());let In=g.updateSourceFile(Bt,gn(g.createNodeArray(xe),Bt.statements));return hN(In,s.readEmitHelpers()),In}function $e(Bt){let xe=g.createIdentifier("define"),fr=gEe(g,Bt,W,R),Je=Zu(Bt)&&Bt,{aliasedModuleNames:In,unaliasedModuleNames:Hn,importAliasNames:Ot}=Tt(Bt,!0),$r=g.updateSourceFile(Bt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(xe,void 0,[...fr?[fr]:[],g.createArrayLiteralExpression(Je?E:[g.createStringLiteral("require"),g.createStringLiteral("exports"),...In,...Hn]),Je?Je.statements.length?Je.statements[0].expression:g.createObjectLiteralExpression():g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Ot],void 0,Qe(Bt))]))]),Bt.statements));return hN($r,s.readEmitHelpers()),$r}function Ye(Bt){let{aliasedModuleNames:xe,unaliasedModuleNames:fr,importAliasNames:Je}=Tt(Bt,!1),In=gEe(g,Bt,W,R),Hn=g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"factory")],void 0,gn(g.createBlock([g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("module"),"object"),g.createTypeCheck(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),"object")),g.createBlock([g.createVariableStatement(void 0,[g.createVariableDeclaration("v",void 0,void 0,g.createCallExpression(g.createIdentifier("factory"),void 0,[g.createIdentifier("require"),g.createIdentifier("exports")]))]),ti(g.createIfStatement(g.createStrictInequality(g.createIdentifier("v"),g.createIdentifier("undefined")),g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),g.createIdentifier("v")))),1)]),g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("define"),"function"),g.createPropertyAccessExpression(g.createIdentifier("define"),"amd")),g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("define"),void 0,[...In?[In]:[],g.createArrayLiteralExpression([g.createStringLiteral("require"),g.createStringLiteral("exports"),...xe,...fr]),g.createIdentifier("factory")]))])))],!0),void 0)),Ot=g.updateSourceFile(Bt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(Hn,void 0,[g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Je],void 0,Qe(Bt))]))]),Bt.statements));return hN(Ot,s.readEmitHelpers()),Ot}function Tt(Bt,xe){let fr=[],Je=[],In=[];for(let Hn of Bt.amdDependencies)Hn.name?(fr.push(g.createStringLiteral(Hn.path)),In.push(g.createParameterDeclaration(void 0,void 0,Hn.name))):Je.push(g.createStringLiteral(Hn.path));for(let Hn of _e.externalImports){let Ot=Ez(g,Hn,Ie,W,T,R),$r=yie(g,Hn,Ie);Ot&&(xe&&$r?(ti($r,8),fr.push(Ot),In.push(g.createParameterDeclaration(void 0,void 0,$r))):Je.push(Ot))}return{aliasedModuleNames:fr,unaliasedModuleNames:Je,importAliasNames:In}}function ot(Bt){if(km(Bt)||Gh(Bt)||!Ez(g,Bt,Ie,W,T,R))return;let xe=yie(g,Bt,Ie),fr=ba(Bt,xe);if(fr!==xe)return g.createExpressionStatement(g.createAssignment(xe,fr))}function Qe(Bt){h();let xe=[],fr=g.copyPrologue(Bt.statements,xe,!0,ht);We()&&Ft(xe,nr()),jt(_e.exportedNames)&&Ft(xe,g.createExpressionStatement(Ul(_e.exportedNames,(In,Hn)=>Hn.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(Hn.text)),In):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(Hn))),In),g.createVoidZero())));for(let In of _e.exportedFunctions)pt(xe,In);Ft(xe,Mr(_e.externalHelpersImportDeclaration,ht,Lc)),M===2&&Or(xe,Xt(_e.externalImports,ot)),Or(xe,Ws(Bt.statements,ht,Lc,fr)),mt(xe,!0),Sw(xe,_());let Je=g.createBlock(xe,!0);return Te&&$Y(Je,LBs),Je}function mt(Bt,xe){if(_e.exportEquals){let fr=Mr(_e.exportEquals.expression,Lt,un);if(fr)if(xe){let Je=g.createReturnStatement(fr);gn(Je,_e.exportEquals),ti(Je,3840),Bt.push(Je)}else{let Je=g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),fr));gn(Je,_e.exportEquals),ti(Je,3072),Bt.push(Je)}}}function ht(Bt){switch(Bt.kind){case 273:return Wo(Bt);case 272:return yr(Bt);case 279:return hn(Bt);case 278:return Oi(Bt);default:return _t(Bt)}}function _t(Bt){switch(Bt.kind){case 244:return Oa(Bt);case 263:return lo(Bt);case 264:return pa(Bt);case 249:return Gt(Bt,!0);case 250:return nt(Bt);case 251:return Dt(Bt);case 247:return tr(Bt);case 248:return ur(Bt);case 257:return Gr(Bt);case 255:return dt(Bt);case 246:return pr(Bt);case 256:return st(Bt);case 270:return ir(Bt);case 297:return zt(Bt);case 298:return Ht(Bt);case 259:return Br(Bt);case 300:return mn(Bt);case 242:return jn(Bt);default:return Lt(Bt)}}function Rt(Bt,xe){if(!(Bt.transformFlags&276828160)&&!Ee?.length)return Bt;switch(Bt.kind){case 249:return Gt(Bt,!1);case 245:return Zi(Bt);case 218:return Ns(Bt,xe);case 356:return An(Bt,xe);case 214:let fr=Bt===Nc(Ee);if(fr&&Ee.shift(),Up(Bt)&&W.shouldTransformImportCall(Ie))return Ic(Bt,fr);if(fr)return ks(Bt);break;case 227:if(Dx(Bt))return _r(Bt,xe);break;case 225:case 226:return si(Bt,xe)}return _s(Bt,Lt,s)}function Lt(Bt){return Rt(Bt,!1)}function Ke(Bt){return Rt(Bt,!0)}function Pt(Bt){if(og(Bt))for(let xe of Bt.properties)switch(xe.kind){case 304:if(Pt(xe.initializer))return!0;break;case 305:if(Pt(xe.name))return!0;break;case 306:if(Pt(xe.expression))return!0;break;case 175:case 178:case 179:return!1;default:pe.assertNever(xe,"Unhandled object member kind")}else if(OI(Bt)){for(let xe of Bt.elements)if(of(xe)){if(Pt(xe.expression))return!0}else if(Pt(xe))return!0}else if(Ir(Bt))return B(cn(Bt))>(i9e(Bt)?1:0);return!1}function _r(Bt,xe){return Pt(Bt.left)?TU(Bt,Lt,s,0,!xe,tl):_s(Bt,Lt,s)}function Gt(Bt,xe){if(xe&&Bt.initializer&&u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let fr=Pr(void 0,Bt.initializer,!1);if(fr){let Je=[],In=Mr(Bt.initializer,Ke,u_),Hn=g.createVariableStatement(void 0,In);Je.push(Hn),Or(Je,fr);let Ot=Mr(Bt.condition,Lt,un),$r=Mr(Bt.incrementor,Ke,un),ri=Py(Bt.statement,xe?_t:Lt,s);return Je.push(g.updateForStatement(Bt,void 0,Ot,$r,ri)),Je}}return g.updateForStatement(Bt,Mr(Bt.initializer,Ke,hE),Mr(Bt.condition,Lt,un),Mr(Bt.incrementor,Ke,un),Py(Bt.statement,xe?_t:Lt,s))}function nt(Bt){if(u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let xe=Pr(void 0,Bt.initializer,!0);if(jt(xe)){let fr=Mr(Bt.initializer,Ke,hE),Je=Mr(Bt.expression,Lt,un),In=Py(Bt.statement,_t,s),Hn=$u(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0);return g.updateForInStatement(Bt,fr,Je,Hn)}}return g.updateForInStatement(Bt,Mr(Bt.initializer,Ke,hE),Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function Dt(Bt){if(u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let xe=Pr(void 0,Bt.initializer,!0),fr=Mr(Bt.initializer,Ke,hE),Je=Mr(Bt.expression,Lt,un),In=Py(Bt.statement,_t,s);return jt(xe)&&(In=$u(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0)),g.updateForOfStatement(Bt,Bt.awaitModifier,fr,Je,In)}return g.updateForOfStatement(Bt,Bt.awaitModifier,Mr(Bt.initializer,Ke,hE),Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function tr(Bt){return g.updateDoStatement(Bt,Py(Bt.statement,_t,s),Mr(Bt.expression,Lt,un))}function ur(Bt){return g.updateWhileStatement(Bt,Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function Gr(Bt){return g.updateLabeledStatement(Bt,Bt.label,Mr(Bt.statement,_t,Lc,g.liftToBlock)??gn(g.createEmptyStatement(),Bt.statement))}function dt(Bt){return g.updateWithStatement(Bt,Mr(Bt.expression,Lt,un),pe.checkDefined(Mr(Bt.statement,_t,Lc,g.liftToBlock)))}function pr(Bt){return g.updateIfStatement(Bt,Mr(Bt.expression,Lt,un),Mr(Bt.thenStatement,_t,Lc,g.liftToBlock)??g.createBlock([]),Mr(Bt.elseStatement,_t,Lc,g.liftToBlock))}function st(Bt){return g.updateSwitchStatement(Bt,Mr(Bt.expression,Lt,un),pe.checkDefined(Mr(Bt.caseBlock,_t,ade)))}function ir(Bt){return g.updateCaseBlock(Bt,Ws(Bt.clauses,_t,RJ))}function zt(Bt){return g.updateCaseClause(Bt,Mr(Bt.expression,Lt,un),Ws(Bt.statements,_t,Lc))}function Ht(Bt){return _s(Bt,_t,s)}function Br(Bt){return _s(Bt,_t,s)}function mn(Bt){return g.updateCatchClause(Bt,Bt.variableDeclaration,pe.checkDefined(Mr(Bt.block,_t,$u)))}function jn(Bt){return Bt=_s(Bt,_t,s),Bt}function Zi(Bt){return g.updateExpressionStatement(Bt,Mr(Bt.expression,Ke,un))}function Ns(Bt,xe){return g.updateParenthesizedExpression(Bt,Mr(Bt.expression,xe?Ke:Lt,un))}function An(Bt,xe){return g.updatePartiallyEmittedExpression(Bt,Mr(Bt.expression,xe?Ke:Lt,un))}function si(Bt,xe){if((Bt.operator===46||Bt.operator===47)&&Ir(Bt.operand)&&!kp(Bt.operand)&&!VF(Bt.operand)&&!abe(Bt.operand)){let fr=cn(Bt.operand);if(fr){let Je,In=Mr(Bt.operand,Lt,un);T0(Bt)?In=g.updatePrefixUnaryExpression(Bt,In):(In=g.updatePostfixUnaryExpression(Bt,In),xe||(Je=g.createTempVariable(S),In=g.createAssignment(Je,In),gn(In,Bt)),In=g.createComma(In,g.cloneNode(Bt.operand)),gn(In,Bt));for(let Hn of fr)Ne[rd(In)]=!0,In=Kr(Hn,In),gn(In,Bt);return Je&&(Ne[rd(In)]=!0,In=g.createComma(In,Je),gn(In,Bt)),In}}return _s(Bt,Lt,s)}function ks(Bt){return g.updateCallExpression(Bt,Bt.expression,void 0,Ws(Bt.arguments,xe=>xe===Bt.arguments[0]?mA(xe)?Nz(xe,R):d().createRewriteRelativeImportExtensionsHelper(xe):Lt(xe),un))}function Ic(Bt,xe){if(M===0&&V>=7)return _s(Bt,Lt,s);let fr=Ez(g,Bt,Ie,W,T,R),Je=Mr(Nc(Bt.arguments),Lt,un),In=fr&&(!Je||!Zg(Je)||Je.text!==fr.text)?fr:Je&&xe?Zg(Je)?Nz(Je,R):d().createRewriteRelativeImportExtensionsHelper(Je):Je,Hn=!!(Bt.transformFlags&16384);switch(R.module){case 2:return Zn(In,Hn);case 3:return su(In??g.createVoidZero(),Hn);case 1:default:return ya(In)}}function su(Bt,xe){if(Te=!0,lQ(Bt)){let fr=kp(Bt)?Bt:Zg(Bt)?g.createStringLiteralFromNode(Bt):ti(gn(g.cloneNode(Bt),Bt),3072);return g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(Bt),void 0,Zn(fr,xe))}else{let fr=g.createTempVariable(S);return g.createComma(g.createAssignment(fr,Bt),g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(fr,!0),void 0,Zn(fr,xe)))}}function Zn(Bt,xe){let fr=g.createUniqueName("resolve"),Je=g.createUniqueName("reject"),In=[g.createParameterDeclaration(void 0,void 0,fr),g.createParameterDeclaration(void 0,void 0,Je)],Hn=g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("require"),void 0,[g.createArrayLiteralExpression([Bt||g.createOmittedExpression()]),fr,Je]))]),Ot;V>=2?Ot=g.createArrowFunction(void 0,void 0,In,void 0,void 0,Hn):(Ot=g.createFunctionExpression(void 0,void 0,void 0,void 0,In,void 0,Hn),xe&&ti(Ot,16));let $r=g.createNewExpression(g.createIdentifier("Promise"),void 0,[Ot]);return kw(R)?g.createCallExpression(g.createPropertyAccessExpression($r,g.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):$r}function ya(Bt,xe){let fr=Bt&&!BN(Bt)&&!xe,Je=g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Promise"),"resolve"),void 0,fr?V>=2?[g.createTemplateExpression(g.createTemplateHead(""),[g.createTemplateSpan(Bt,g.createTemplateTail(""))])]:[g.createCallExpression(g.createPropertyAccessExpression(g.createStringLiteral(""),"concat"),void 0,[Bt])]:[]),In=g.createCallExpression(g.createIdentifier("require"),void 0,fr?[g.createIdentifier("s")]:Bt?[Bt]:[]);kw(R)&&(In=d().createImportStarHelper(In));let Hn=fr?[g.createParameterDeclaration(void 0,void 0,"s")]:[],Ot;return V>=2?Ot=g.createArrowFunction(void 0,void 0,Hn,void 0,void 0,In):Ot=g.createFunctionExpression(void 0,void 0,void 0,void 0,Hn,void 0,g.createBlock([g.createReturnStatement(In)])),g.createCallExpression(g.createPropertyAccessExpression(Je,"then"),void 0,[Ot])}function Gl(Bt,xe){return!kw(R)||g1(Bt)&2?xe:wOt(Bt)?d().createImportStarHelper(xe):xe}function ba(Bt,xe){return!kw(R)||g1(Bt)&2?xe:W9e(Bt)?d().createImportStarHelper(xe):Fet(Bt)?d().createImportDefaultHelper(xe):xe}function Wo(Bt){let xe,fr=JJ(Bt);if(M!==2)if(Bt.importClause){let Je=[];fr&&!h3(Bt)?Je.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,ba(Bt,hc(Bt)))):(Je.push(g.createVariableDeclaration(g.getGeneratedNameForNode(Bt),void 0,void 0,ba(Bt,hc(Bt)))),fr&&h3(Bt)&&Je.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(Bt)))),xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList(Je,V>=2?2:0)),Bt),Bt))}else return ua(gn(g.createExpressionStatement(hc(Bt)),Bt),Bt);else fr&&h3(Bt)&&(xe=Ft(xe,g.createVariableStatement(void 0,g.createVariableDeclarationList([ua(gn(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(Bt)),Bt),Bt)],V>=2?2:0))));return xe=Tg(xe,Bt),ac(xe)}function hc(Bt){let xe=Ez(g,Bt,Ie,W,T,R),fr=[];return xe&&fr.push(Nz(xe,R)),g.createCallExpression(g.createIdentifier("require"),void 0,fr)}function yr(Bt){pe.assert(LL(Bt),"import= for internal module references should be handled in an earlier transformer.");let xe;return M!==2?Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(Bt.name,hc(Bt))),Bt),Bt)):xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(g.cloneNode(Bt.name),void 0,void 0,hc(Bt))],V>=2?2:0)),Bt),Bt)):Ga(Bt,32)&&(xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(g.getExportName(Bt),g.getLocalName(Bt))),Bt),Bt))),xe=Cs(xe,Bt),ac(xe)}function hn(Bt){if(!Bt.moduleSpecifier)return;let xe=g.getGeneratedNameForNode(Bt);if(Bt.exportClause&&mv(Bt.exportClause)){let fr=[];M!==2&&fr.push(ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(xe,void 0,void 0,hc(Bt))])),Bt),Bt));for(let Je of Bt.exportClause.elements){let In=Je.propertyName||Je.name,Ot=!!kw(R)&&!(g1(Bt)&2)&&lv(In)?d().createImportDefaultHelper(xe):xe,$r=In.kind===11?g.createElementAccessExpression(Ot,In):g.createPropertyAccessExpression(Ot,In);fr.push(ua(gn(g.createExpressionStatement(Kr(Je.name.kind===11?g.cloneNode(Je.name):g.getExportName(Je),$r,void 0,!0)),Je),Je))}return ac(fr)}else if(Bt.exportClause){let fr=[];return fr.push(ua(gn(g.createExpressionStatement(Kr(g.cloneNode(Bt.exportClause.name),Gl(Bt,M!==2?hc(Bt):wY(Bt)||Bt.exportClause.name.kind===11?xe:g.createIdentifier(Vo(Bt.exportClause.name))))),Bt),Bt)),ac(fr)}else return ua(gn(g.createExpressionStatement(d().createExportStarHelper(M!==2?hc(Bt):xe)),Bt),Bt)}function Oi(Bt){if(!Bt.isExportEquals)return Fr(g.createIdentifier("default"),Mr(Bt.expression,Lt,un),Bt,!0)}function lo(Bt){let xe;return Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createFunctionDeclaration(Ws(Bt.modifiers,Dn,Ig),Bt.asteriskToken,g.getDeclarationName(Bt,!0,!0),void 0,Ws(Bt.parameters,Lt,Si),void 0,_s(Bt.body,Lt,s)),Bt),Bt)):xe=Ft(xe,_s(Bt,Lt,s)),ac(xe)}function pa(Bt){let xe;return Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createClassDeclaration(Ws(Bt.modifiers,Dn,dp),g.getDeclarationName(Bt,!0,!0),void 0,Ws(Bt.heritageClauses,Lt,h1),Ws(Bt.members,Lt,PI)),Bt),Bt)):xe=Ft(xe,_s(Bt,Lt,s)),xe=pt(xe,Bt),ac(xe)}function Oa(Bt){let xe,fr,Je;if(Ga(Bt,32)){let In,Hn=!1;for(let Ot of Bt.declarationList.declarations)if(Ir(Ot.name)&&VF(Ot.name))if(In||(In=Ws(Bt.modifiers,Dn,Ig)),Ot.initializer){let $r=g.updateVariableDeclaration(Ot,Ot.name,void 0,void 0,Kr(Ot.name,Mr(Ot.initializer,Lt,un)));fr=Ft(fr,$r)}else fr=Ft(fr,Ot);else if(Ot.initializer)if(!Nu(Ot.name)&&(lA(Ot.initializer)||UA(Ot.initializer)||vd(Ot.initializer))){let $r=g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Ot.name),Ot.name),g.createIdentifier(c2(Ot.name))),ri=g.createVariableDeclaration(Ot.name,Ot.exclamationToken,Ot.type,Mr(Ot.initializer,Lt,un));fr=Ft(fr,ri),Je=Ft(Je,$r),Hn=!0}else Je=Ft(Je,Qu(Ot));if(fr&&(xe=Ft(xe,g.updateVariableStatement(Bt,In,g.updateVariableDeclarationList(Bt.declarationList,fr)))),Je){let Ot=ua(gn(g.createExpressionStatement(g.inlineExpressions(Je)),Bt),Bt);Hn&&pz(Ot),xe=Ft(xe,Ot)}}else xe=Ft(xe,_s(Bt,Lt,s));return xe=Tu(xe,Bt),ac(xe)}function tl(Bt,xe,fr){let Je=cn(Bt);if(Je){let In=i9e(Bt)?xe:g.createAssignment(Bt,xe);for(let Hn of Je)ti(In,8),In=Kr(Hn,In,fr);return In}return g.createAssignment(Bt,xe)}function Qu(Bt){return Nu(Bt.name)?TU(Mr(Bt,Lt,xne),Lt,s,0,!1,tl):g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Bt.name),Bt.name),Bt.initializer?Mr(Bt.initializer,Lt,un):g.createVoidZero())}function Tg(Bt,xe){if(_e.exportEquals)return Bt;let fr=xe.importClause;if(!fr)return Bt;let Je=new kie;fr.name&&(Bt=on(Bt,Je,fr));let In=fr.namedBindings;if(In)switch(In.kind){case 275:Bt=on(Bt,Je,In);break;case 276:for(let Hn of In.elements)Bt=on(Bt,Je,Hn,!0);break}return Bt}function Cs(Bt,xe){return _e.exportEquals?Bt:on(Bt,new kie,xe)}function Tu(Bt,xe){return Pr(Bt,xe.declarationList,!1)}function Pr(Bt,xe,fr){if(_e.exportEquals)return Bt;for(let Je of xe.declarations)Bt=Pn(Bt,Je,fr);return Bt}function Pn(Bt,xe,fr){if(_e.exportEquals)return Bt;if(Nu(xe.name))for(let Je of xe.name.elements)yp(Je)||(Bt=Pn(Bt,Je,fr));else!kp(xe.name)&&(!nc(xe)||xe.initializer||fr)&&(Bt=on(Bt,new kie,xe));return Bt}function pt(Bt,xe){if(_e.exportEquals)return Bt;let fr=new kie;if(Ga(xe,32)){let Je=Ga(xe,2048)?g.createIdentifier("default"):g.getDeclarationName(xe);Bt=it(Bt,fr,Je,g.getLocalName(xe),xe)}return xe.name&&(Bt=on(Bt,fr,xe)),Bt}function on(Bt,xe,fr,Je){let In=g.getDeclarationName(fr),Hn=_e.exportSpecifiers.get(In);if(Hn)for(let Ot of Hn)Bt=it(Bt,xe,Ot.name,In,Ot.name,void 0,Je);return Bt}function it(Bt,xe,fr,Je,In,Hn,Ot){if(fr.kind!==11){if(xe.has(fr))return Bt;xe.set(fr,!0)}return Bt=Ft(Bt,Fr(fr,Je,In,Hn,Ot)),Bt}function nr(){let Bt=g.createExpressionStatement(g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteral("__esModule"),g.createObjectLiteralExpression([g.createPropertyAssignment("value",g.createTrue())])]));return ti(Bt,2097152),Bt}function Fr(Bt,xe,fr,Je,In){let Hn=gn(g.createExpressionStatement(Kr(Bt,xe,void 0,In)),fr);return N0(Hn),Je||ti(Hn,3072),Hn}function Kr(Bt,xe,fr,Je){return gn(Je?g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteralFromNode(Bt),g.createObjectLiteralExpression([g.createPropertyAssignment("enumerable",g.createTrue()),g.createPropertyAssignment("get",g.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,g.createBlock([g.createReturnStatement(xe)])))])]):g.createAssignment(Bt.kind===11?g.createElementAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)):g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)),xe),fr)}function Dn(Bt){switch(Bt.kind){case 95:case 90:return}return Bt}function hr(Bt,xe,fr){xe.kind===308?(Ie=xe,_e=ge[Wy(Ie)],re(Bt,xe,fr),Ie=void 0,_e=void 0):re(Bt,xe,fr)}function En(Bt,xe){return xe=ee(Bt,xe),xe.id&&Ne[xe.id]?xe:Bt===1?Gi(xe):a0(xe)?Ni(xe):xe}function Ni(Bt){let xe=Bt.name,fr=ds(xe);if(fr!==xe){if(Bt.objectAssignmentInitializer){let Je=g.createAssignment(fr,Bt.objectAssignmentInitializer);return gn(g.createPropertyAssignment(xe,Je),Bt)}return gn(g.createPropertyAssignment(xe,fr),Bt)}return Bt}function Gi(Bt){switch(Bt.kind){case 80:return ds(Bt);case 214:return nn(Bt);case 216:return bn(Bt);case 227:return Mt(Bt)}return Bt}function nn(Bt){if(Ir(Bt.expression)){let xe=ds(Bt.expression);if(Ne[rd(xe)]=!0,!Ir(xe)&&!(tA(Bt.expression)&8192))return N3(g.updateCallExpression(Bt,xe,void 0,Bt.arguments),16)}return Bt}function bn(Bt){if(Ir(Bt.tag)){let xe=ds(Bt.tag);if(Ne[rd(xe)]=!0,!Ir(xe)&&!(tA(Bt.tag)&8192))return N3(g.updateTaggedTemplateExpression(Bt,xe,void 0,Bt.template),16)}return Bt}function ds(Bt){var xe,fr;if(tA(Bt)&8192){let Je=uEe(Ie);return Je?g.createPropertyAccessExpression(Je,Bt):Bt}else if(!(kp(Bt)&&!(Bt.emitNode.autoGenerate.flags&64))&&!VF(Bt)){let Je=T.getReferencedExportContainer(Bt,i9e(Bt));if(Je&&Je.kind===308)return gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)),Bt);let In=T.getReferencedImportDeclaration(Bt);if(In){if(Vw(In))return gn(g.createPropertyAccessExpression(g.getGeneratedNameForNode(In.parent),g.createIdentifier("default")),Bt);if(uy(In)){let Hn=In.propertyName||In.name,Ot=g.getGeneratedNameForNode(((fr=(xe=In.parent)==null?void 0:xe.parent)==null?void 0:fr.parent)||In);return gn(Hn.kind===11?g.createElementAccessExpression(Ot,g.cloneNode(Hn)):g.createPropertyAccessExpression(Ot,g.cloneNode(Hn)),Bt)}}}return Bt}function Mt(Bt){if(UD(Bt.operatorToken.kind)&&Ir(Bt.left)&&(!kp(Bt.left)||fY(Bt.left))&&!VF(Bt.left)){let xe=cn(Bt.left);if(xe){let fr=Bt;for(let Je of xe)Ne[rd(fr)]=!0,fr=Kr(Je,fr,Bt);return fr}}return Bt}function cn(Bt){if(kp(Bt)){if(fY(Bt)){let xe=_e?.exportSpecifiers.get(Bt);if(xe){let fr=[];for(let Je of xe)fr.push(Je.name);return fr}}}else{let xe=T.getReferencedImportDeclaration(Bt);if(xe)return _e?.exportedBindings[Wy(xe)];let fr=new Set,Je=T.getReferencedValueDeclarations(Bt);if(Je){for(let In of Je){let Hn=_e?.exportedBindings[Wy(In)];if(Hn)for(let Ot of Hn)fr.add(Ot)}if(fr.size)return Do(fr)}}}}var LBs={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` - var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function r3t(s){let{factory:c,startLexicalEnvironment:g,endLexicalEnvironment:d,hoistVariableDeclaration:h}=s,_=s.getCompilerOptions(),S=s.getEmitResolver(),R=s.getEmitHost(),T=s.onSubstituteNode,W=s.onEmitNode;s.onSubstituteNode=nr,s.onEmitNode=it,s.enableSubstitution(80),s.enableSubstitution(305),s.enableSubstitution(227),s.enableSubstitution(237),s.enableEmitNotification(308);let V=[],M=[],ee=[],re=[],ge,Ie,_e,Ee,Ne,Te,Ze;return rR(s,We);function We(Mt){if(Mt.isDeclarationFile||!(g3(Mt,_)||Mt.transformFlags&8388608))return Mt;let cn=Wy(Mt);ge=Mt,Te=Mt,Ie=V[cn]=Zet(s,Mt),_e=c.createUniqueName("exports"),M[cn]=_e,Ee=re[cn]=c.createUniqueName("context");let Bt=Ue(Ie.externalImports),xe=$e(Mt,Bt),fr=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,_e),c.createParameterDeclaration(void 0,void 0,Ee)],void 0,xe),Je=gEe(c,Mt,R,_),In=c.createArrayLiteralExpression(At(Bt,Ot=>Ot.name)),Hn=ti(c.updateSourceFile(Mt,gn(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Je?[Je,In,fr]:[In,fr]))]),Mt.statements)),2048);return _.outFile||VLe(Hn,xe,Ot=>!Ot.scoped),Ze&&(ee[cn]=Ze,Ze=void 0),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Hn}function Ue(Mt){let cn=new Map,Bt=[];for(let xe of Mt){let fr=Ez(c,xe,ge,R,S,_);if(fr){let Je=fr.text,In=cn.get(Je);In!==void 0?Bt[In].externalImports.push(xe):(cn.set(Je,Bt.length),Bt.push({name:fr,externalImports:[xe]}))}}return Bt}function $e(Mt,cn){let Bt=[];g();let xe=a_(_,"alwaysStrict")||xm(ge),fr=c.copyPrologue(Mt.statements,Bt,xe,Qe);Bt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Ee,c.createPropertyAccessExpression(Ee,"id")))]))),Mr(Ie.externalHelpersImportDeclaration,Qe,Lc);let Je=Ws(Mt.statements,Qe,Lc,fr);Or(Bt,Ne),Sw(Bt,d());let In=Ye(Bt),Hn=Mt.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Ot=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",ot(In,cn)),c.createPropertyAssignment("execute",c.createFunctionExpression(Hn,void 0,void 0,void 0,[],void 0,c.createBlock(Je,!0)))],!0);return Bt.push(c.createReturnStatement(Ot)),c.createBlock(Bt,!0)}function Ye(Mt){if(!Ie.hasExportStarsToExportValues)return;if(!jt(Ie.exportedNames)&&Ie.exportedFunctions.size===0&&Ie.exportSpecifiers.size===0){let fr=!1;for(let Je of Ie.externalImports)if(Je.kind===279&&Je.exportClause){fr=!0;break}if(!fr){let Je=Tt(void 0);return Mt.push(Je),Je.name}}let cn=[];if(Ie.exportedNames)for(let fr of Ie.exportedNames)lv(fr)||cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr),c.createTrue()));for(let fr of Ie.exportedFunctions)Ga(fr,2048)||(pe.assert(!!fr.name),cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr.name),c.createTrue())));let Bt=c.createUniqueName("exportedNames");Mt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Bt,void 0,void 0,c.createObjectLiteralExpression(cn,!0))])));let xe=Tt(Bt);return Mt.push(xe),xe.name}function Tt(Mt){let cn=c.createUniqueName("exportStar"),Bt=c.createIdentifier("m"),xe=c.createIdentifier("n"),fr=c.createIdentifier("exports"),Je=c.createStrictInequality(xe,c.createStringLiteral("default"));return Mt&&(Je=c.createLogicalAnd(Je,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Mt,"hasOwnProperty"),void 0,[xe])))),c.createFunctionDeclaration(void 0,void 0,cn,void 0,[c.createParameterDeclaration(void 0,void 0,Bt)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(fr,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(xe)]),Bt,c.createBlock([ti(c.createIfStatement(Je,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(fr,xe),c.createElementAccessExpression(Bt,xe)))),1)])),c.createExpressionStatement(c.createCallExpression(_e,void 0,[fr]))],!0))}function ot(Mt,cn){let Bt=[];for(let xe of cn){let fr=F(xe.externalImports,Hn=>yie(c,Hn,ge)),Je=fr?c.getGeneratedNameForNode(fr):c.createUniqueName(""),In=[];for(let Hn of xe.externalImports){let Ot=yie(c,Hn,ge);switch(Hn.kind){case 273:if(!Hn.importClause)break;case 272:pe.assert(Ot!==void 0),In.push(c.createExpressionStatement(c.createAssignment(Ot,Je))),Ga(Hn,32)&&In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(Vo(Ot)),Je])));break;case 279:if(pe.assert(Ot!==void 0),Hn.exportClause)if(mv(Hn.exportClause)){let $r=[];for(let ri of Hn.exportClause.elements)$r.push(c.createPropertyAssignment(c.createStringLiteral(HD(ri.name)),c.createElementAccessExpression(Je,c.createStringLiteral(HD(ri.propertyName||ri.name)))));In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createObjectLiteralExpression($r,!0)])))}else In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(HD(Hn.exportClause.name)),Je])));else In.push(c.createExpressionStatement(c.createCallExpression(Mt,void 0,[Je])));break}}Bt.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Je)],void 0,c.createBlock(In,!0)))}return c.createArrayLiteralExpression(Bt,!0)}function Qe(Mt){switch(Mt.kind){case 273:return mt(Mt);case 272:return _t(Mt);case 279:return ht(Mt);case 278:return Rt(Mt);default:return jn(Mt)}}function mt(Mt){let cn;return Mt.importClause&&h(yie(c,Mt,ge)),ac(Gr(cn,Mt))}function ht(Mt){pe.assertIsDefined(Mt)}function _t(Mt){pe.assert(LL(Mt),"import= for internal module references should be handled in an earlier transformer.");let cn;return h(yie(c,Mt,ge)),ac(dt(cn,Mt))}function Rt(Mt){if(Mt.isExportEquals)return;let cn=Mr(Mt.expression,Oa,un);return Br(c.createIdentifier("default"),cn,!0)}function Lt(Mt){Ga(Mt,32)?Ne=Ft(Ne,c.updateFunctionDeclaration(Mt,Ws(Mt.modifiers,on,dp),Mt.asteriskToken,c.getDeclarationName(Mt,!0,!0),void 0,Ws(Mt.parameters,Oa,Si),void 0,Mr(Mt.body,Oa,$u))):Ne=Ft(Ne,_s(Mt,Oa,s)),Ne=ir(Ne,Mt)}function Ke(Mt){let cn,Bt=c.getLocalName(Mt);return h(Bt),cn=Ft(cn,gn(c.createExpressionStatement(c.createAssignment(Bt,gn(c.createClassExpression(Ws(Mt.modifiers,on,dp),Mt.name,void 0,Ws(Mt.heritageClauses,Oa,h1),Ws(Mt.members,Oa,PI)),Mt))),Mt)),cn=ir(cn,Mt),ac(cn)}function Pt(Mt){if(!Gt(Mt.declarationList))return Mr(Mt,Oa,Lc);let cn;if(tI(Mt.declarationList)||Sd(Mt.declarationList)){let Bt=Ws(Mt.modifiers,on,dp),xe=[];for(let Je of Mt.declarationList.declarations)xe.push(c.updateVariableDeclaration(Je,c.getGeneratedNameForNode(Je.name),void 0,void 0,nt(Je,!1)));let fr=c.updateVariableDeclarationList(Mt.declarationList,xe);cn=Ft(cn,c.updateVariableStatement(Mt,Bt,fr))}else{let Bt,xe=Ga(Mt,32);for(let fr of Mt.declarationList.declarations)fr.initializer?Bt=Ft(Bt,nt(fr,xe)):_r(fr);Bt&&(cn=Ft(cn,gn(c.createExpressionStatement(c.inlineExpressions(Bt)),Mt)))}return cn=pr(cn,Mt,!1),ac(cn)}function _r(Mt){if(Nu(Mt.name))for(let cn of Mt.name.elements)yp(cn)||_r(cn);else h(c.cloneNode(Mt.name))}function Gt(Mt){return(tA(Mt)&4194304)===0&&(Te.kind===308||(Dd(Mt).flags&7)===0)}function nt(Mt,cn){let Bt=cn?Dt:tr;return Nu(Mt.name)?TU(Mt,Oa,s,0,!1,Bt):Mt.initializer?Bt(Mt.name,Mr(Mt.initializer,Oa,un)):Mt.name}function Dt(Mt,cn,Bt){return ur(Mt,cn,Bt,!0)}function tr(Mt,cn,Bt){return ur(Mt,cn,Bt,!1)}function ur(Mt,cn,Bt,xe){return h(c.cloneNode(Mt)),xe?mn(Mt,bn(gn(c.createAssignment(Mt,cn),Bt))):bn(gn(c.createAssignment(Mt,cn),Bt))}function Gr(Mt,cn){if(Ie.exportEquals)return Mt;let Bt=cn.importClause;if(!Bt)return Mt;Bt.name&&(Mt=zt(Mt,Bt));let xe=Bt.namedBindings;if(xe)switch(xe.kind){case 275:Mt=zt(Mt,xe);break;case 276:for(let fr of xe.elements)Mt=zt(Mt,fr);break}return Mt}function dt(Mt,cn){return Ie.exportEquals?Mt:zt(Mt,cn)}function pr(Mt,cn,Bt){if(Ie.exportEquals)return Mt;for(let xe of cn.declarationList.declarations)(xe.initializer||Bt)&&(Mt=st(Mt,xe,Bt));return Mt}function st(Mt,cn,Bt){if(Ie.exportEquals)return Mt;if(Nu(cn.name))for(let xe of cn.name.elements)yp(xe)||(Mt=st(Mt,xe,Bt));else if(!kp(cn.name)){let xe;Bt&&(Mt=Ht(Mt,cn.name,c.getLocalName(cn)),xe=Vo(cn.name)),Mt=zt(Mt,cn,xe)}return Mt}function ir(Mt,cn){if(Ie.exportEquals)return Mt;let Bt;if(Ga(cn,32)){let xe=Ga(cn,2048)?c.createStringLiteral("default"):cn.name;Mt=Ht(Mt,xe,c.getLocalName(cn)),Bt=c2(xe)}return cn.name&&(Mt=zt(Mt,cn,Bt)),Mt}function zt(Mt,cn,Bt){if(Ie.exportEquals)return Mt;let xe=c.getDeclarationName(cn),fr=Ie.exportSpecifiers.get(xe);if(fr)for(let Je of fr)HD(Je.name)!==Bt&&(Mt=Ht(Mt,Je.name,xe));return Mt}function Ht(Mt,cn,Bt,xe){return Mt=Ft(Mt,Br(cn,Bt,xe)),Mt}function Br(Mt,cn,Bt){let xe=c.createExpressionStatement(mn(Mt,cn));return N0(xe),Bt||ti(xe,3072),xe}function mn(Mt,cn){let Bt=Ir(Mt)?c.createStringLiteralFromNode(Mt):Mt;return ti(cn,tA(cn)|3072),hh(c.createCallExpression(_e,void 0,[Bt,cn]),cn)}function jn(Mt){switch(Mt.kind){case 244:return Pt(Mt);case 263:return Lt(Mt);case 264:return Ke(Mt);case 249:return Zi(Mt,!0);case 250:return Ns(Mt);case 251:return An(Mt);case 247:return Ic(Mt);case 248:return su(Mt);case 257:return Zn(Mt);case 255:return ya(Mt);case 246:return Gl(Mt);case 256:return ba(Mt);case 270:return Wo(Mt);case 297:return hc(Mt);case 298:return yr(Mt);case 259:return hn(Mt);case 300:return Oi(Mt);case 242:return lo(Mt);default:return Oa(Mt)}}function Zi(Mt,cn){let Bt=Te;return Te=Mt,Mt=c.updateForStatement(Mt,Mr(Mt.initializer,cn?ks:tl,hE),Mr(Mt.condition,Oa,un),Mr(Mt.incrementor,tl,un),Py(Mt.statement,cn?jn:Oa,s)),Te=Bt,Mt}function Ns(Mt){let cn=Te;return Te=Mt,Mt=c.updateForInStatement(Mt,ks(Mt.initializer),Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s)),Te=cn,Mt}function An(Mt){let cn=Te;return Te=Mt,Mt=c.updateForOfStatement(Mt,Mt.awaitModifier,ks(Mt.initializer),Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s)),Te=cn,Mt}function si(Mt){return u_(Mt)&&Gt(Mt)}function ks(Mt){if(si(Mt)){let cn;for(let Bt of Mt.declarations)cn=Ft(cn,nt(Bt,!1)),Bt.initializer||_r(Bt);return cn?c.inlineExpressions(cn):c.createOmittedExpression()}else return Mr(Mt,tl,hE)}function Ic(Mt){return c.updateDoStatement(Mt,Py(Mt.statement,jn,s),Mr(Mt.expression,Oa,un))}function su(Mt){return c.updateWhileStatement(Mt,Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s))}function Zn(Mt){return c.updateLabeledStatement(Mt,Mt.label,Mr(Mt.statement,jn,Lc,c.liftToBlock)??c.createExpressionStatement(c.createIdentifier("")))}function ya(Mt){return c.updateWithStatement(Mt,Mr(Mt.expression,Oa,un),pe.checkDefined(Mr(Mt.statement,jn,Lc,c.liftToBlock)))}function Gl(Mt){return c.updateIfStatement(Mt,Mr(Mt.expression,Oa,un),Mr(Mt.thenStatement,jn,Lc,c.liftToBlock)??c.createBlock([]),Mr(Mt.elseStatement,jn,Lc,c.liftToBlock))}function ba(Mt){return c.updateSwitchStatement(Mt,Mr(Mt.expression,Oa,un),pe.checkDefined(Mr(Mt.caseBlock,jn,ade)))}function Wo(Mt){let cn=Te;return Te=Mt,Mt=c.updateCaseBlock(Mt,Ws(Mt.clauses,jn,RJ)),Te=cn,Mt}function hc(Mt){return c.updateCaseClause(Mt,Mr(Mt.expression,Oa,un),Ws(Mt.statements,jn,Lc))}function yr(Mt){return _s(Mt,jn,s)}function hn(Mt){return _s(Mt,jn,s)}function Oi(Mt){let cn=Te;return Te=Mt,Mt=c.updateCatchClause(Mt,Mt.variableDeclaration,pe.checkDefined(Mr(Mt.block,jn,$u))),Te=cn,Mt}function lo(Mt){let cn=Te;return Te=Mt,Mt=_s(Mt,jn,s),Te=cn,Mt}function pa(Mt,cn){if(!(Mt.transformFlags&276828160))return Mt;switch(Mt.kind){case 249:return Zi(Mt,!1);case 245:return Qu(Mt);case 218:return Tg(Mt,cn);case 356:return Cs(Mt,cn);case 227:if(Dx(Mt))return Pr(Mt,cn);break;case 214:if(Up(Mt))return Tu(Mt);break;case 225:case 226:return pt(Mt,cn)}return _s(Mt,Oa,s)}function Oa(Mt){return pa(Mt,!1)}function tl(Mt){return pa(Mt,!0)}function Qu(Mt){return c.updateExpressionStatement(Mt,Mr(Mt.expression,tl,un))}function Tg(Mt,cn){return c.updateParenthesizedExpression(Mt,Mr(Mt.expression,cn?tl:Oa,un))}function Cs(Mt,cn){return c.updatePartiallyEmittedExpression(Mt,Mr(Mt.expression,cn?tl:Oa,un))}function Tu(Mt){let cn=Ez(c,Mt,ge,R,S,_),Bt=Mr(Nc(Mt.arguments),Oa,un),xe=cn&&(!Bt||!Zg(Bt)||Bt.text!==cn.text)?cn:Bt;return c.createCallExpression(c.createPropertyAccessExpression(Ee,c.createIdentifier("import")),void 0,xe?[xe]:[])}function Pr(Mt,cn){return Pn(Mt.left)?TU(Mt,Oa,s,0,!cn):_s(Mt,Oa,s)}function Pn(Mt){if(Jm(Mt,!0))return Pn(Mt.left);if(of(Mt))return Pn(Mt.expression);if(og(Mt))return jt(Mt.properties,Pn);if(OI(Mt))return jt(Mt.elements,Pn);if(a0(Mt))return Pn(Mt.name);if(fm(Mt))return Pn(Mt.initializer);if(Ir(Mt)){let cn=S.getReferencedExportContainer(Mt);return cn!==void 0&&cn.kind===308}else return!1}function pt(Mt,cn){if((Mt.operator===46||Mt.operator===47)&&Ir(Mt.operand)&&!kp(Mt.operand)&&!VF(Mt.operand)&&!abe(Mt.operand)){let Bt=Gi(Mt.operand);if(Bt){let xe,fr=Mr(Mt.operand,Oa,un);T0(Mt)?fr=c.updatePrefixUnaryExpression(Mt,fr):(fr=c.updatePostfixUnaryExpression(Mt,fr),cn||(xe=c.createTempVariable(h),fr=c.createAssignment(xe,fr),gn(fr,Mt)),fr=c.createComma(fr,c.cloneNode(Mt.operand)),gn(fr,Mt));for(let Je of Bt)fr=mn(Je,bn(fr));return xe&&(fr=c.createComma(fr,xe),gn(fr,Mt)),fr}}return _s(Mt,Oa,s)}function on(Mt){switch(Mt.kind){case 95:case 90:return}return Mt}function it(Mt,cn,Bt){if(cn.kind===308){let xe=Wy(cn);ge=cn,Ie=V[xe],_e=M[xe],Ze=ee[xe],Ee=re[xe],Ze&&delete ee[xe],W(Mt,cn,Bt),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ze=void 0}else W(Mt,cn,Bt)}function nr(Mt,cn){return cn=T(Mt,cn),ds(cn)?cn:Mt===1?Dn(cn):Mt===4?Fr(cn):cn}function Fr(Mt){switch(Mt.kind){case 305:return Kr(Mt)}return Mt}function Kr(Mt){var cn,Bt;let xe=Mt.name;if(!kp(xe)&&!VF(xe)){let fr=S.getReferencedImportDeclaration(xe);if(fr){if(Vw(fr))return gn(c.createPropertyAssignment(c.cloneNode(xe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(fr.parent),c.createIdentifier("default"))),Mt);if(uy(fr)){let Je=fr.propertyName||fr.name,In=c.getGeneratedNameForNode(((Bt=(cn=fr.parent)==null?void 0:cn.parent)==null?void 0:Bt.parent)||fr);return gn(c.createPropertyAssignment(c.cloneNode(xe),Je.kind===11?c.createElementAccessExpression(In,c.cloneNode(Je)):c.createPropertyAccessExpression(In,c.cloneNode(Je))),Mt)}}}return Mt}function Dn(Mt){switch(Mt.kind){case 80:return hr(Mt);case 227:return En(Mt);case 237:return Ni(Mt)}return Mt}function hr(Mt){var cn,Bt;if(tA(Mt)&8192){let xe=uEe(ge);return xe?c.createPropertyAccessExpression(xe,Mt):Mt}if(!kp(Mt)&&!VF(Mt)){let xe=S.getReferencedImportDeclaration(Mt);if(xe){if(Vw(xe))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(xe.parent),c.createIdentifier("default")),Mt);if(uy(xe)){let fr=xe.propertyName||xe.name,Je=c.getGeneratedNameForNode(((Bt=(cn=xe.parent)==null?void 0:cn.parent)==null?void 0:Bt.parent)||xe);return gn(fr.kind===11?c.createElementAccessExpression(Je,c.cloneNode(fr)):c.createPropertyAccessExpression(Je,c.cloneNode(fr)),Mt)}}}return Mt}function En(Mt){if(UD(Mt.operatorToken.kind)&&Ir(Mt.left)&&(!kp(Mt.left)||fY(Mt.left))&&!VF(Mt.left)){let cn=Gi(Mt.left);if(cn){let Bt=Mt;for(let xe of cn)Bt=mn(xe,bn(Bt));return Bt}}return Mt}function Ni(Mt){return uv(Mt)?c.createPropertyAccessExpression(Ee,c.createIdentifier("meta")):Mt}function Gi(Mt){let cn,Bt=nn(Mt);if(Bt){let xe=S.getReferencedExportContainer(Mt,!1);xe&&xe.kind===308&&(cn=Ft(cn,c.getDeclarationName(Bt))),cn=Or(cn,Ie?.exportedBindings[Wy(Bt)])}else if(kp(Mt)&&fY(Mt)){let xe=Ie?.exportSpecifiers.get(Mt);if(xe){let fr=[];for(let Je of xe)fr.push(Je.name);return fr}}return cn}function nn(Mt){if(!kp(Mt)){let cn=S.getReferencedImportDeclaration(Mt);if(cn)return cn;let Bt=S.getReferencedValueDeclaration(Mt);if(Bt&&Ie?.exportedBindings[Wy(Bt)])return Bt;let xe=S.getReferencedValueDeclarations(Mt);if(xe){for(let fr of xe)if(fr!==Bt&&Ie?.exportedBindings[Wy(fr)])return fr}return Bt}}function bn(Mt){return Ze===void 0&&(Ze=[]),Ze[rd(Mt)]=!0,Mt}function ds(Mt){return Ze&&Mt.id&&Ze[Mt.id]}}function Qet(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getEmitHost(),h=s.getEmitResolver(),_=s.getCompilerOptions(),S=Mg(_),R=s.onEmitNode,T=s.onSubstituteNode;s.onEmitNode=Ye,s.onSubstituteNode=Tt,s.enableEmitNotification(308),s.enableSubstitution(80);let W=new Set,V,M,ee,re;return rR(s,ge);function ge(Qe){if(Qe.isDeclarationFile)return Qe;if(xm(Qe)||sS(_)){ee=Qe,re=void 0,_.rewriteRelativeImportExtensions&&(ee.flags&4194304||wo(Qe))&&$ne(Qe,!1,!1,ht=>{(!mA(ht.arguments[0])||une(ht.arguments[0].text,_))&&(V=Ft(V,ht))});let mt=Ie(Qe);return hN(mt,s.readEmitHelpers()),ee=void 0,re&&(mt=c.updateSourceFile(mt,gn(c.createNodeArray(Wre(mt.statements.slice(),re)),mt.statements))),!xm(Qe)||i0(_)===200||jt(mt.statements,PT)?mt:c.updateSourceFile(mt,gn(c.createNodeArray([...mt.statements,aEe(c)]),mt.statements))}return Qe}function Ie(Qe){let mt=T$e(c,g(),Qe,_);if(mt){let ht=[],_t=c.copyPrologue(Qe.statements,ht);return Or(ht,Ede([mt],_e,Lc)),Or(ht,Ws(Qe.statements,_e,Lc,_t)),c.updateSourceFile(Qe,gn(c.createNodeArray(ht),Qe.statements))}else return _s(Qe,_e,s)}function _e(Qe){switch(Qe.kind){case 272:return i0(_)>=100?Ze(Qe):void 0;case 278:return Ue(Qe);case 279:return $e(Qe);case 273:return Ee(Qe);case 214:if(Qe===V?.[0])return Ne(V.shift());default:if(V?.length&&cy(Qe,V[0]))return _s(Qe,_e,s)}return Qe}function Ee(Qe){if(!_.rewriteRelativeImportExtensions)return Qe;let mt=Nz(Qe.moduleSpecifier,_);return mt===Qe.moduleSpecifier?Qe:c.updateImportDeclaration(Qe,Qe.modifiers,Qe.importClause,mt,Qe.attributes)}function Ne(Qe){return c.updateCallExpression(Qe,Qe.expression,Qe.typeArguments,[mA(Qe.arguments[0])?Nz(Qe.arguments[0],_):g().createRewriteRelativeImportExtensionsHelper(Qe.arguments[0]),...Qe.arguments.slice(1)])}function Te(Qe){let mt=Ez(c,Qe,pe.checkDefined(ee),d,h,_),ht=[];if(mt&&ht.push(Nz(mt,_)),i0(_)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,ht);if(!re){let Rt=c.createUniqueName("_createRequire",48),Lt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),Rt)])),c.createStringLiteral("module"),void 0),Ke=c.createUniqueName("__require",48),Pt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ke,void 0,void 0,c.createCallExpression(c.cloneNode(Rt),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],S>=2?2:0));re=[Lt,Pt]}let _t=re[1].declarationList.declarations[0].name;return pe.assertNode(_t,Ir),c.createCallExpression(c.cloneNode(_t),void 0,ht)}function Ze(Qe){pe.assert(LL(Qe),"import= for internal module references should be handled in an earlier transformer.");let mt;return mt=Ft(mt,ua(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Qe.name),void 0,void 0,Te(Qe))],S>=2?2:0)),Qe),Qe)),mt=We(mt,Qe),ac(mt)}function We(Qe,mt){return Ga(mt,32)&&(Qe=Ft(Qe,c.createExportDeclaration(void 0,mt.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,Vo(mt.name))])))),Qe}function Ue(Qe){return Qe.isExportEquals?i0(_)===200?ua(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Qe.expression)),Qe):void 0:Qe}function $e(Qe){let mt=Nz(Qe.moduleSpecifier,_);if(_.module!==void 0&&_.module>5||!Qe.exportClause||!tk(Qe.exportClause)||!Qe.moduleSpecifier)return!Qe.moduleSpecifier||mt===Qe.moduleSpecifier?Qe:c.updateExportDeclaration(Qe,Qe.modifiers,Qe.isTypeOnly,Qe.exportClause,mt,Qe.attributes);let ht=Qe.exportClause.name,_t=c.getGeneratedNameForNode(ht),Rt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamespaceImport(_t)),mt,Qe.attributes);ua(Rt,Qe.exportClause);let Lt=wY(Qe)?c.createExportDefault(_t):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,_t,ht)]));return ua(Lt,Qe),[Rt,Lt]}function Ye(Qe,mt,ht){ll(mt)?((xm(mt)||sS(_))&&_.importHelpers&&(M=new Map),ee=mt,R(Qe,mt,ht),ee=void 0,M=void 0):R(Qe,mt,ht)}function Tt(Qe,mt){return mt=T(Qe,mt),mt.id&&W.has(mt.id)?mt:Ir(mt)&&tA(mt)&8192?ot(mt):mt}function ot(Qe){let mt=ee&&uEe(ee);if(mt)return W.add(rd(Qe)),c.createPropertyAccessExpression(mt,Qe);if(M){let ht=Vo(Qe),_t=M.get(ht);return _t||M.set(ht,_t=c.createUniqueName(ht,48)),_t}return Qe}}function n3t(s){let c=s.onSubstituteNode,g=s.onEmitNode,d=Qet(s),h=s.onSubstituteNode,_=s.onEmitNode;s.onSubstituteNode=c,s.onEmitNode=g;let S=Yet(s),R=s.onSubstituteNode,T=s.onEmitNode,W=Ee=>s.getEmitHost().getEmitModuleFormatOfFile(Ee);s.onSubstituteNode=M,s.onEmitNode=ee,s.enableSubstitution(308),s.enableEmitNotification(308);let V;return Ie;function M(Ee,Ne){return ll(Ne)?(V=Ne,c(Ee,Ne)):V?W(V)>=5?h(Ee,Ne):R(Ee,Ne):c(Ee,Ne)}function ee(Ee,Ne,Te){return ll(Ne)&&(V=Ne),V?W(V)>=5?_(Ee,Ne,Te):T(Ee,Ne,Te):g(Ee,Ne,Te)}function re(Ee){return W(Ee)>=5?d:S}function ge(Ee){if(Ee.isDeclarationFile)return Ee;V=Ee;let Ne=re(Ee)(Ee);return V=void 0,pe.assert(ll(Ne)),Ne}function Ie(Ee){return Ee.kind===308?ge(Ee):_e(Ee)}function _e(Ee){return s.factory.createBundle(At(Ee.sourceFiles,ge))}}function ZEe(s){return nc(s)||pi(s)||ss(s)||hg(s)||cv(s)||bB(s)||em(s)||wg(s)||uu(s)||hl(s)||ih(s)||Si(s)||Ds(s)||l_(s)||km(s)||FB(s)||Tc(s)||w0(s)||jo(s)||Yg(s)||fo(s)||iS(s)}function i3t(s){if(cv(s)||bB(s))return c;return hl(s)||uu(s)?d:J3(s);function c(_){let S=g(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function g(_){return cg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(_){let S=h(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function h(_){return cg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function J3(s){if(nc(s)||pi(s)||ss(s)||jo(s)||Yg(s)||fo(s)||hg(s)||Tc(s))return g;return cv(s)||bB(s)?d:em(s)||wg(s)||uu(s)||hl(s)||ih(s)||w0(s)?h:Si(s)?Ve(s,s.parent)&&Ga(s.parent,2)?g:_:Ds(s)?R:l_(s)?T:km(s)?W:FB(s)||iS(s)?V:pe.assertNever(s,`Attempted to set a declaration diagnostic context for unhandled node kind: ${pe.formatSyntaxKind(s.kind)}`);function c(M){if(s.kind===261||s.kind===209)return M.errorModuleName?M.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(s.kind===173||s.kind===212||s.kind===213||s.kind===227||s.kind===172||s.kind===170&&Ga(s.parent,2))return cg(s)?M.errorModuleName?M.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264||s.kind===170?M.errorModuleName?M.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function g(M){let ee=c(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function d(M){let ee;return s.kind===179?cg(s)?ee=M.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:cg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:ee,errorNode:s.name,typeName:s.name}}function h(M){let ee;switch(s.kind){case 181:ee=M.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 180:ee=M.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 182:ee=M.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 175:case 174:cg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:s.parent.kind===264?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:ee=M.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 263:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return pe.fail("This is unknown kind for signature: "+s.kind)}return{diagnosticMessage:ee,errorNode:s.name||s}}function _(M){let ee=S(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function S(M){switch(s.parent.kind){case 177:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 181:case 186:return M.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 180:return M.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 182:return M.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 175:case 174:return cg(s.parent)?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 263:case 185:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 179:case 178:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return pe.fail(`Unknown parent for parameter: ${pe.formatSyntaxKind(s.parent.kind)}`)}}function R(){let M;switch(s.parent.kind){case 264:M=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 265:M=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 201:M=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 186:case 181:M=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 180:M=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 174:cg(s.parent)?M=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 185:case 263:M=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 196:M=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 266:M=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return pe.fail("This is unknown parent for type parameter: "+s.parent.kind)}return{diagnosticMessage:M,errorNode:s,typeName:s.name}}function T(){let M;return pm(s.parent.parent)?M=h1(s.parent)&&s.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:s.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:M=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:M,errorNode:s,typeName:Il(s.parent.parent)}}function W(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:s,typeName:s.name}}function V(M){return{diagnosticMessage:M.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:iS(s)?pe.checkDefined(s.typeExpression):s.type,typeName:iS(s)?Il(s):s.name}}}function s3t(s){let c={220:Z.Add_a_return_type_to_the_function_expression,219:Z.Add_a_return_type_to_the_function_expression,175:Z.Add_a_return_type_to_the_method,178:Z.Add_a_return_type_to_the_get_accessor_declaration,179:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,263:Z.Add_a_return_type_to_the_function_declaration,181:Z.Add_a_return_type_to_the_function_declaration,170:Z.Add_a_type_annotation_to_the_parameter_0,261:Z.Add_a_type_annotation_to_the_variable_0,173:Z.Add_a_type_annotation_to_the_property_0,172:Z.Add_a_type_annotation_to_the_property_0,278:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},g={219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,263:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,220:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,175:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,181:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,179:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,170:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,261:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,173:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,168:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,306:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,210:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,278:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,231:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(_e){if(ji(_e,h1))return mo(_e,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((ww(_e)||Fw(_e.parent))&&(fC(_e)||Od(_e)))return ge(_e);switch(pe.type(_e),_e.kind){case 178:case 179:return _(_e);case 168:case 305:case 306:return R(_e);case 210:case 231:return T(_e);case 175:case 181:case 219:case 220:case 263:return W(_e);case 209:return V(_e);case 173:case 261:return M(_e);case 170:return ee(_e);case 304:return Ie(_e.initializer);case 232:return re(_e);default:return Ie(_e)}}function h(_e){let Ee=ji(_e,Ne=>Cf(Ne)||Lc(Ne)||nc(Ne)||pi(Ne)||Si(Ne));if(Ee)return Cf(Ee)?Ee:I2(Ee)?ji(Ee,Ne=>kd(Ne)&&!Tc(Ne)):Lc(Ee)?void 0:Ee}function _(_e){let{getAccessor:Ee,setAccessor:Ne}=BP(_e.symbol.declarations,_e),Te=(cv(_e)?_e.parameters[0]:_e)??_e,Ze=mo(Te,g[_e.kind]);return Ne&&lg(Ze,mo(Ne,c[Ne.kind])),Ee&&lg(Ze,mo(Ee,c[Ee.kind])),Ze}function S(_e,Ee){let Ne=h(_e);if(Ne){let Te=Cf(Ne)||!Ne.name?"":xp(Ne.name,!1);lg(Ee,mo(Ne,c[Ne.kind],Te))}return Ee}function R(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function T(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function W(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),lg(Ee,mo(_e,c[_e.kind])),Ee}function V(_e){return mo(_e,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function M(_e){let Ee=mo(_e,g[_e.kind]),Ne=xp(_e.name,!1);return lg(Ee,mo(_e,c[_e.kind],Ne)),Ee}function ee(_e){if(cv(_e.parent))return _(_e.parent);let Ee=s.requiresAddingImplicitUndefined(_e,_e.parent);if(!Ee&&_e.initializer)return Ie(_e.initializer);let Ne=Ee?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:g[_e.kind],Te=mo(_e,Ne),Ze=xp(_e.name,!1);return lg(Te,mo(_e,c[_e.kind],Ze)),Te}function re(_e){return Ie(_e,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ge(_e){let Ee=mo(_e,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,xp(_e,!1));return S(_e,Ee),Ee}function Ie(_e,Ee){let Ne=h(_e),Te;if(Ne){let Ze=Cf(Ne)||!Ne.name?"":xp(Ne.name,!1),We=ji(_e.parent,Ue=>Cf(Ue)||(Lc(Ue)?"quit":!gI(Ue)&&!xF(Ue)&&!Yd(Ue)));Ne===We?(Te=mo(_e,Ee??g[Ne.kind]),lg(Te,mo(Ne,c[Ne.kind],Ze))):(Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),lg(Te,mo(Ne,c[Ne.kind],Ze)),lg(Te,mo(_e,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Te}}function o3t(s,c,g){let d=s.getCompilerOptions(),h=Me(aAe(s,g),Jge);return k(h,g)?WEe(c,s,me,d,[g],[Xet],!1).diagnostics:void 0}var LEe=531469,VEe=8;function Xet(s){let c=()=>pe.fail("Diagnostic emitted without context"),g=c,d=!0,h=!1,_=!1,S=!1,R=!1,T,W,V,M,{factory:ee}=s,re=s.getEmitHost(),ge=()=>{},Ie={trackSymbol:_t,reportInaccessibleThisError:_r,reportInaccessibleUniqueSymbolError:Ke,reportCyclicStructureError:Pt,reportPrivateInBaseOfClassExpression:Rt,reportLikelyUnsafeImportRequiredError:Gt,reportTruncationError:nt,moduleResolverHost:re,reportNonlocalAugmentation:Dt,reportNonSerializableProperty:tr,reportInferenceFallback:mt,pushErrorFallbackNode(pt){let on=Ee,it=ge;ge=()=>{ge=it,Ee=on},Ee=pt},popErrorFallbackNode(){ge()}},_e,Ee,Ne,Te,Ze,We,Ue=s.getEmitResolver(),$e=s.getCompilerOptions(),Ye=s3t(Ue),{stripInternal:Tt,isolatedDeclarations:ot}=$e;return Gr;function Qe(pt){Ue.getPropertiesOfContainerFunction(pt).forEach(on=>{if(jY(on.valueDeclaration)){let it=fo(on.valueDeclaration)?on.valueDeclaration.left:on.valueDeclaration;s.addDiagnostic(mo(it,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function mt(pt){!ot||n0(Ne)||ms(pt)===Ne&&(nc(pt)&&Ue.isExpandoFunctionDeclaration(pt)?Qe(pt):s.addDiagnostic(Ye(pt)))}function ht(pt){if(pt.accessibility===0){if(pt.aliasesToMakeVisible)if(!W)W=pt.aliasesToMakeVisible;else for(let on of pt.aliasesToMakeVisible)Qi(W,on)}else if(pt.accessibility!==3){let on=g(pt);if(on)return on.typeName?s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,xp(on.typeName),pt.errorSymbolName,pt.errorModuleName)):s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,pt.errorSymbolName,pt.errorModuleName)),!0}return!1}function _t(pt,on,it){return pt.flags&262144?!1:ht(Ue.isSymbolAccessible(pt,on,it,!0))}function Rt(pt){(_e||Ee)&&s.addDiagnostic(lg(mo(_e||Ee,Z.Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected,pt),...nc((_e||Ee).parent)?[mo(_e||Ee,Z.Add_a_type_annotation_to_the_variable_0,Lt())]:[]))}function Lt(){return _e?Wd(_e):Ee&&Il(Ee)?Wd(Il(Ee)):Ee&&Cf(Ee)?Ee.isExportEquals?"export=":"default":"(Missing)"}function Ke(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"unique symbol"))}function Pt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,Lt()))}function _r(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"this"))}function Gt(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,Lt(),pt))}function nt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function Dt(pt,on,it){var nr;let Fr=(nr=on.declarations)==null?void 0:nr.find(Dn=>ms(Dn)===pt),Kr=Me(it.declarations,Dn=>ms(Dn)!==pt);if(Fr&&Kr)for(let Dn of Kr)s.addDiagnostic(lg(mo(Dn,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),mo(Fr,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function tr(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,pt))}function ur(pt){let on=g;g=nr=>nr.errorNode&&ZEe(nr.errorNode)?J3(nr.errorNode)(nr):{diagnosticMessage:nr.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:nr.errorNode||pt};let it=Ue.getDeclarationStatementsForSourceFile(pt,LEe,VEe,Ie);return g=on,it}function Gr(pt){if(pt.kind===308&&pt.isDeclarationFile)return pt;if(pt.kind===309){h=!0,Te=[],Ze=[],We=[];let En=!1,Ni=ee.createBundle(At(pt.sourceFiles,nn=>{if(nn.isDeclarationFile)return;if(En=En||nn.hasNoDefaultLib,Ne=nn,T=nn,W=void 0,M=!1,V=new Map,g=c,S=!1,R=!1,nr(nn),vl(nn)||Zu(nn)){_=!1,d=!1;let ds=n0(nn)?ee.createNodeArray(ur(nn)):Ws(nn.statements,hc,Lc);return ee.updateSourceFile(nn,[ee.createModuleDeclaration([ee.createModifier(138)],ee.createStringLiteral(F7(s.getEmitHost(),nn)),ee.createModuleBlock(gn(ee.createNodeArray(Gl(ds)),nn.statements)))],!0,[],[],!1,[])}d=!0;let bn=n0(nn)?ee.createNodeArray(ur(nn)):Ws(nn.statements,hc,Lc);return ee.updateSourceFile(nn,Gl(bn),!0,[],[],!1,[])})),Gi=Mo(Dp(Dde(pt,re,!0).declarationFilePath));return Ni.syntheticFileReferences=hr(Gi),Ni.syntheticTypeReferences=Kr(),Ni.syntheticLibReferences=Dn(),Ni.hasNoDefaultLib=En,Ni}d=!0,S=!1,R=!1,T=pt,Ne=pt,g=c,h=!1,_=!1,M=!1,W=void 0,V=new Map,Te=[],Ze=[],We=[],nr(Ne);let on;if(n0(Ne))on=ee.createNodeArray(ur(pt));else{let En=Ws(pt.statements,hc,Lc);on=gn(ee.createNodeArray(Gl(En)),pt.statements),xm(pt)&&(!_||S&&!R)&&(on=gn(ee.createNodeArray([...on,aEe(ee)]),on))}let it=Mo(Dp(Dde(pt,re,!0).declarationFilePath));return ee.updateSourceFile(pt,on,!0,hr(it),Kr(),pt.hasNoDefaultLib,Dn());function nr(En){Te=Nn(Te,At(En.referencedFiles,Ni=>[En,Ni])),Ze=Nn(Ze,En.typeReferenceDirectives),We=Nn(We,En.libReferenceDirectives)}function Fr(En){let Ni={...En};return Ni.pos=-1,Ni.end=-1,Ni}function Kr(){return Xt(Ze,En=>{if(En.preserve)return Fr(En)})}function Dn(){return Xt(We,En=>{if(En.preserve)return Fr(En)})}function hr(En){return Xt(Te,([Ni,Gi])=>{if(!Gi.preserve)return;let nn=re.getSourceFileFromReference(Ni,Gi);if(!nn)return;let bn;if(nn.isDeclarationFile)bn=nn.fileName;else{if(h&&k(pt.sourceFiles,nn))return;let cn=Dde(nn,re,!0);bn=cn.declarationFilePath||cn.jsFilePath||nn.fileName}if(!bn)return;let ds=Of(En,bn,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Mt=Fr(Gi);return Mt.fileName=ds,Mt})}}function dt(pt){if(pt.kind===80)return pt;return pt.kind===208?ee.updateArrayBindingPattern(pt,Ws(pt.elements,on,o3)):ee.updateObjectBindingPattern(pt,Ws(pt.elements,on,hg));function on(it){return it.kind===233?it:(it.propertyName&&Un(it.propertyName)&&Od(it.propertyName.expression)&&si(it.propertyName.expression,T),ee.updateBindingElement(it,it.dotDotDotToken,it.propertyName,dt(it.name),void 0))}}function pr(pt,on){let it;M||(it=g,g=J3(pt));let nr=ee.updateParameterDeclaration(pt,PBs(ee,pt,on),pt.dotDotDotToken,dt(pt.name),Ue.isOptionalParameter(pt)?pt.questionToken||ee.createToken(58):void 0,zt(pt,!0),ir(pt));return M||(g=it),nr}function st(pt){return Mtn(pt)&&!!pt.initializer&&Ue.isLiteralConstDeclaration($l(pt))}function ir(pt){if(st(pt)){let on=UAe(pt.initializer);return uz(on)||mt(pt),Ue.createLiteralConstValue($l(pt,Mtn),Ie)}}function zt(pt,on){if(!on&&Gb(pt,2)||st(pt))return;if(!Cf(pt)&&!hg(pt)&&pt.type&&(!Si(pt)||!Ue.requiresAddingImplicitUndefined(pt,T)))return Mr(pt.type,ba,uc);let it=_e;_e=pt.name;let nr;M||(nr=g,ZEe(pt)&&(g=J3(pt)));let Fr;return KAe(pt)?Fr=Ue.createTypeOfDeclaration(pt,T,LEe,VEe,Ie):bu(pt)?Fr=Ue.createReturnTypeOfSignatureDeclaration(pt,T,LEe,VEe,Ie):pe.assertNever(pt),_e=it,M||(g=nr),Fr??ee.createKeywordTypeNode(133)}function Ht(pt){switch(pt=$l(pt),pt.kind){case 263:case 268:case 265:case 264:case 266:case 267:return!Ue.isDeclarationVisible(pt);case 261:return!mn(pt);case 272:case 273:case 279:case 278:return!1;case 176:return!0}return!1}function Br(pt){var on;if(pt.body)return!0;let it=(on=pt.symbol.declarations)==null?void 0:on.filter(nr=>ih(nr)&&!nr.body);return!it||it.indexOf(pt)===it.length-1}function mn(pt){return yp(pt)?!1:Nu(pt.name)?jt(pt.name.elements,mn):Ue.isDeclarationVisible(pt)}function jn(pt,on,it){if(Gb(pt,2))return ee.createNodeArray();let nr=At(on,Fr=>pr(Fr,it));return nr?ee.createNodeArray(nr,on.hasTrailingComma):ee.createNodeArray()}function Zi(pt,on){let it;if(!on){let nr=vP(pt);nr&&(it=[pr(nr)])}if(Dg(pt)){let nr;if(!on){let Fr=L7(pt);Fr&&(nr=pr(Fr))}nr||(nr=ee.createParameterDeclaration(void 0,void 0,"value")),it=Ft(it,nr)}return ee.createNodeArray(it||E)}function Ns(pt,on){return Gb(pt,2)?void 0:Ws(on,ba,Ds)}function An(pt){return ll(pt)||FB(pt)||xh(pt)||pm(pt)||g_(pt)||bu(pt)||w0(pt)||GB(pt)}function si(pt,on){let it=Ue.isEntityNameVisible(pt,on);ht(it)}function ks(pt,on){return Xm(pt)&&Xm(on)&&(pt.jsDoc=on.jsDoc),hh(pt,DB(on))}function Ic(pt,on){if(on){if(_=_||pt.kind!==268&&pt.kind!==206,mA(on)&&h){let it=wZe(s.getEmitHost(),Ue,pt);if(it)return ee.createStringLiteral(it)}return on}}function su(pt){if(Ue.isDeclarationVisible(pt))if(pt.moduleReference.kind===284){let on=_7(pt);return ee.updateImportEqualsDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.name,ee.updateExternalModuleReference(pt.moduleReference,Ic(pt,on)))}else{let on=g;return g=J3(pt),si(pt.moduleReference,T),g=on,pt}}function Zn(pt){if(!pt.importClause)return ee.updateImportDeclaration(pt,pt.modifiers,pt.importClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));let on=pt.importClause.phaseModifier===166?void 0:pt.importClause.phaseModifier,it=pt.importClause&&pt.importClause.name&&Ue.isDeclarationVisible(pt.importClause)?pt.importClause.name:void 0;if(!pt.importClause.namedBindings)return it&&ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(pt.importClause.namedBindings.kind===275){let Fr=Ue.isDeclarationVisible(pt.importClause.namedBindings)?pt.importClause.namedBindings:void 0;return it||Fr?ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,Fr),Ic(pt,pt.moduleSpecifier),ya(pt.attributes)):void 0}let nr=Xt(pt.importClause.namedBindings.elements,Fr=>Ue.isDeclarationVisible(Fr)?Fr:void 0);if(nr&&nr.length||it)return ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,nr&&nr.length?ee.updateNamedImports(pt.importClause.namedBindings,nr):void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(Ue.isImportRequiredByAugmentation(pt))return ot&&s.addDiagnostic(mo(pt,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),ee.updateImportDeclaration(pt,pt.modifiers,void 0,Ic(pt,pt.moduleSpecifier),ya(pt.attributes))}function ya(pt){let on=Gie(pt);return pt&&on!==void 0?pt:void 0}function Gl(pt){for(;B(W);){let it=W.shift();if(!p7(it))return pe.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${pe.formatSyntaxKind(it.kind)}`);let nr=d;d=it.parent&&ll(it.parent)&&!(xm(it.parent)&&h);let Fr=Oi(it);d=nr,V.set(Wy(it),Fr)}return Ws(pt,on,Lc);function on(it){if(p7(it)){let nr=Wy(it);if(V.has(nr)){let Fr=V.get(nr);return V.delete(nr),Fr&&((Ki(Fr)?jt(Fr,t7):t7(Fr))&&(S=!0),ll(it.parent)&&(Ki(Fr)?jt(Fr,PT):PT(Fr))&&(_=!0)),Fr}}return it}}function ba(pt){if(Qu(pt))return;if(jh(pt)){if(Ht(pt))return;if(XD(pt)){if(ot){if(!Ue.isDefinitelyReferenceToGlobalSymbolObject(pt.name.expression)){if(pm(pt.parent)||og(pt.parent)){s.addDiagnostic(mo(pt,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((g_(pt.parent)||mh(pt.parent))&&!Od(pt.name.expression)){s.addDiagnostic(mo(pt,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!Ue.isLateBound($l(pt))||!Od(pt.name.expression))return}}if(bu(pt)&&Ue.isImplementationOfOverload(pt)||DPt(pt))return;let on;An(pt)&&(on=T,T=pt);let it=g,nr=ZEe(pt),Fr=M,Kr=(pt.kind===188||pt.kind===201)&&pt.parent.kind!==266;if((uu(pt)||hl(pt))&&Gb(pt,2))return pt.symbol&&pt.symbol.declarations&&pt.symbol.declarations[0]!==pt?void 0:Dn(ee.createPropertyDeclaration(Tu(pt),pt.name,void 0,void 0,void 0));if(nr&&!M&&(g=J3(pt)),Fw(pt)&&si(pt.exprName,T),Kr&&(M=!0),OBs(pt))switch(pt.kind){case 234:{(fC(pt.expression)||Od(pt.expression))&&si(pt.expression,T);let hr=_s(pt,ba,s);return Dn(ee.updateExpressionWithTypeArguments(hr,hr.expression,hr.typeArguments))}case 184:{si(pt.typeName,T);let hr=_s(pt,ba,s);return Dn(ee.updateTypeReferenceNode(hr,hr.typeName,hr.typeArguments))}case 181:return Dn(ee.updateConstructSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 177:{let hr=ee.createConstructorDeclaration(Tu(pt),jn(pt,pt.parameters,0),void 0);return Dn(hr)}case 175:{if(p(pt.name))return Dn(void 0);let hr=ee.createMethodDeclaration(Tu(pt),void 0,pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt),void 0);return Dn(hr)}case 178:return p(pt.name)?Dn(void 0):Dn(ee.updateGetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Gb(pt,2)),zt(pt),void 0));case 179:return p(pt.name)?Dn(void 0):Dn(ee.updateSetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Gb(pt,2)),void 0));case 173:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertyDeclaration(pt,Tu(pt),pt.name,pt.questionToken,zt(pt),ir(pt)));case 172:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertySignature(pt,Tu(pt),pt.name,pt.questionToken,zt(pt)));case 174:return p(pt.name)?Dn(void 0):Dn(ee.updateMethodSignature(pt,Tu(pt),pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 180:return Dn(ee.updateCallSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 182:return Dn(ee.updateIndexSignature(pt,Tu(pt),jn(pt,pt.parameters),Mr(pt.type,ba,uc)||ee.createKeywordTypeNode(133)));case 261:return Nu(pt.name)?pa(pt.name):(Kr=!0,M=!0,Dn(ee.updateVariableDeclaration(pt,pt.name,void 0,zt(pt),ir(pt))));case 169:return Wo(pt)&&(pt.default||pt.constraint)?Dn(ee.updateTypeParameterDeclaration(pt,pt.modifiers,pt.name,void 0,void 0)):Dn(_s(pt,ba,s));case 195:{let hr=Mr(pt.checkType,ba,uc),En=Mr(pt.extendsType,ba,uc),Ni=T;T=pt.trueType;let Gi=Mr(pt.trueType,ba,uc);T=Ni;let nn=Mr(pt.falseType,ba,uc);return pe.assert(hr),pe.assert(En),pe.assert(Gi),pe.assert(nn),Dn(ee.updateConditionalTypeNode(pt,hr,En,Gi,nn))}case 185:return Dn(ee.updateFunctionTypeNode(pt,Ws(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 186:return Dn(ee.updateConstructorTypeNode(pt,Tu(pt),Ws(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 206:return ky(pt)?Dn(ee.updateImportTypeNode(pt,ee.updateLiteralTypeNode(pt.argument,Ic(pt,pt.argument.literal)),pt.attributes,pt.qualifier,Ws(pt.typeArguments,ba,uc),pt.isTypeOf)):Dn(pt);default:pe.assertNever(pt,`Attempted to process unhandled node kind: ${pe.formatSyntaxKind(pt.kind)}`)}return Zw(pt)&&Ra(Ne,pt.pos).line===Ra(Ne,pt.end).line&&ti(pt,1),Dn(_s(pt,ba,s));function Dn(hr){return hr&&nr&&XD(pt)&&tl(pt),An(pt)&&(T=on),nr&&!M&&(g=it),Kr&&(M=Fr),hr===pt?hr:hr&&ua(ks(hr,pt),pt)}}function Wo(pt){return pt.parent.kind===175&&Gb(pt.parent,2)}function hc(pt){if(!WBs(pt)||Qu(pt))return;switch(pt.kind){case 279:return ll(pt.parent)&&(_=!0),R=!0,ee.updateExportDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.exportClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));case 278:{if(ll(pt.parent)&&(_=!0),R=!0,pt.expression.kind===80)return pt;{let it=ee.createUniqueName("_default",16);g=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:pt}),Ee=pt;let nr=zt(pt),Fr=ee.createVariableDeclaration(it,void 0,nr,void 0);Ee=void 0;let Kr=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([Fr],2));return ks(Kr,pt),pz(pt),[Kr,ee.updateExportAssignment(pt,pt.modifiers,it)]}}}let on=Oi(pt);return V.set(Wy(pt),on),pt}function yr(pt){if(km(pt)||Gb(pt,2048)||!LB(pt))return pt;let on=ee.createModifiersFromModifierFlags(o_(pt)&131039);return ee.replaceModifiers(pt,on)}function hn(pt,on,it,nr){let Fr=ee.updateModuleDeclaration(pt,on,it,nr);if(s_(Fr)||Fr.flags&32)return Fr;let Kr=ee.createModuleDeclaration(Fr.modifiers,Fr.name,Fr.body,Fr.flags|32);return ua(Kr,Fr),gn(Kr,Fr),Kr}function Oi(pt){if(W)for(;Ql(W,pt););if(Qu(pt))return;switch(pt.kind){case 272:return su(pt);case 273:return Zn(pt)}if(jh(pt)&&Ht(pt)||SN(pt)||bu(pt)&&Ue.isImplementationOfOverload(pt))return;let on;An(pt)&&(on=T,T=pt);let it=ZEe(pt),nr=g;it&&(g=J3(pt));let Fr=d;switch(pt.kind){case 266:{d=!1;let Dn=Kr(ee.updateTypeAliasDeclaration(pt,Tu(pt),pt.name,Ws(pt.typeParameters,ba,Ds),pe.checkDefined(Mr(pt.type,ba,uc))));return d=Fr,Dn}case 265:return Kr(ee.updateInterfaceDeclaration(pt,Tu(pt),pt.name,Ns(pt,pt.typeParameters),Pn(pt.heritageClauses),Ws(pt.members,ba,Bx)));case 263:{let Dn=Kr(ee.updateFunctionDeclaration(pt,Tu(pt),void 0,pt.name,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt),void 0));if(Dn&&Ue.isExpandoFunctionDeclaration(pt)&&Br(pt)){let hr=Ue.getPropertiesOfContainerFunction(pt);ot&&Qe(pt);let En=H3.createModuleDeclaration(void 0,Dn.name||ee.createIdentifier("_default"),ee.createModuleBlock([]),32);XA(En,T),En.locals=qu(hr),En.symbol=hr[0].parent;let Ni=[],Gi=Xt(hr,Bt=>{if(!jY(Bt.valueDeclaration))return;let xe=Bc(Bt.escapedName);if(!Uh(xe,99))return;g=J3(Bt.valueDeclaration);let fr=Ue.createTypeOfDeclaration(Bt.valueDeclaration,En,LEe,VEe|2,Ie);g=nr;let Je=WY(xe),In=Je?ee.getGeneratedNameForNode(Bt.valueDeclaration):ee.createIdentifier(xe);Je&&Ni.push([In,xe]);let Hn=ee.createVariableDeclaration(In,void 0,fr,void 0);return ee.createVariableStatement(Je?void 0:[ee.createToken(95)],ee.createVariableDeclarationList([Hn]))});Ni.length?Gi.push(ee.createExportDeclaration(void 0,!1,ee.createNamedExports(At(Ni,([Bt,xe])=>ee.createExportSpecifier(!1,Bt,xe))))):Gi=Xt(Gi,Bt=>ee.replaceModifiers(Bt,0));let nn=ee.createModuleDeclaration(Tu(pt),pt.name,ee.createModuleBlock(Gi),32);if(!Gb(Dn,2048))return[Dn,nn];let bn=ee.createModifiersFromModifierFlags(o_(Dn)&-2081|128),ds=ee.updateFunctionDeclaration(Dn,bn,void 0,Dn.name,Dn.typeParameters,Dn.parameters,Dn.type,void 0),Mt=ee.updateModuleDeclaration(nn,bn,nn.name,nn.body),cn=ee.createExportAssignment(void 0,!1,nn.name);return ll(pt.parent)&&(_=!0),R=!0,[ds,Mt,cn]}else return Dn}case 268:{d=!1;let Dn=pt.body;if(Dn&&Dn.kind===269){let hr=S,En=R;R=!1,S=!1;let Ni=Ws(Dn.statements,hc,Lc),Gi=Gl(Ni);pt.flags&33554432&&(S=!1),!vB(pt)&&!Cs(Gi)&&!R&&(S?Gi=ee.createNodeArray([...Gi,aEe(ee)]):Gi=Ws(Gi,yr,Lc));let nn=ee.updateModuleBlock(Dn,Gi);d=Fr,S=hr,R=En;let bn=Tu(pt);return Kr(hn(pt,bn,_F(pt)?Ic(pt,pt.name):pt.name,nn))}else{d=Fr;let hr=Tu(pt);d=!1,Mr(Dn,hc);let En=Wy(Dn),Ni=V.get(En);return V.delete(En),Kr(hn(pt,hr,pt.name,Ni))}}case 264:{_e=pt.name,Ee=pt;let Dn=ee.createNodeArray(Tu(pt)),hr=Ns(pt,pt.typeParameters),En=lN(pt),Ni;if(En){let Bt=g;Ni=Hr(er(En.parameters,xe=>{if(!Ga(xe,31)||Qu(xe))return;if(g=J3(xe),xe.name.kind===80)return ks(ee.createPropertyDeclaration(Tu(xe),xe.name,xe.questionToken,zt(xe),ir(xe)),xe);return fr(xe.name);function fr(Je){let In;for(let Hn of Je.elements)yp(Hn)||(Nu(Hn.name)&&(In=Nn(In,fr(Hn.name))),In=In||[],In.push(ee.createPropertyDeclaration(Tu(xe),Hn.name,void 0,zt(Hn),void 0)));return In}})),g=Bt}let nn=jt(pt.members,Bt=>!!Bt.name&&p(Bt.name))?[ee.createPropertyDeclaration(void 0,ee.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,bn=Ue.createLateBoundIndexSignatures(pt,T,LEe,VEe,Ie),ds=Nn(Nn(Nn(nn,bn),Ni),Ws(pt.members,ba,PI)),Mt=ee.createNodeArray(ds),cn=BB(pt);if(cn&&!Od(cn.expression)&&cn.expression.kind!==106){let Bt=pt.name?Bc(pt.name.escapedText):"default",xe=ee.createUniqueName(`${Bt}_base`,16);g=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:cn,typeName:pt.name});let fr=ee.createVariableDeclaration(xe,void 0,Ue.createTypeOfExpression(cn.expression,pt,LEe,VEe,Ie),void 0),Je=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([fr],2)),In=ee.createNodeArray(At(pt.heritageClauses,Hn=>{if(Hn.token===96){let Ot=g;g=J3(Hn.types[0]);let $r=ee.updateHeritageClause(Hn,At(Hn.types,ri=>ee.updateExpressionWithTypeArguments(ri,xe,Ws(ri.typeArguments,ba,uc))));return g=Ot,$r}return ee.updateHeritageClause(Hn,Ws(ee.createNodeArray(Me(Hn.types,Ot=>Od(Ot.expression)||Ot.expression.kind===106)),ba,l_))}));return[Je,Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,In,Mt))]}else{let Bt=Pn(pt.heritageClauses);return Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,Bt,Mt))}}case 244:return Kr(lo(pt));case 267:return Kr(ee.updateEnumDeclaration(pt,ee.createNodeArray(Tu(pt)),pt.name,ee.createNodeArray(Xt(pt.members,Dn=>{if(Qu(Dn))return;let hr=Ue.getEnumMemberValue(Dn),En=hr?.value;ot&&Dn.initializer&&hr?.hasExternalReferences&&!Un(Dn.name)&&s.addDiagnostic(mo(Dn,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let Ni=En===void 0?void 0:typeof En=="string"?ee.createStringLiteral(En):En<0?ee.createPrefixUnaryExpression(41,ee.createNumericLiteral(-En)):ee.createNumericLiteral(En);return ks(ee.updateEnumMember(Dn,Dn.name,Ni),Dn)}))))}return pe.assertNever(pt,`Unhandled top-level node in declaration emit: ${pe.formatSyntaxKind(pt.kind)}`);function Kr(Dn){return An(pt)&&(T=on),it&&(g=nr),pt.kind===268&&(d=Fr),Dn===pt?Dn:(Ee=void 0,_e=void 0,Dn&&ua(ks(Dn,pt),pt))}}function lo(pt){if(!F(pt.declarationList.declarations,mn))return;let on=Ws(pt.declarationList.declarations,ba,nc);if(!B(on))return;let it=ee.createNodeArray(Tu(pt)),nr;return tI(pt.declarationList)||Sd(pt.declarationList)?(nr=ee.createVariableDeclarationList(on,2),ua(nr,pt.declarationList),gn(nr,pt.declarationList),hh(nr,pt.declarationList)):nr=ee.updateVariableDeclarationList(pt.declarationList,on),ee.updateVariableStatement(pt,it,nr)}function pa(pt){return Nr(Xt(pt.elements,on=>Oa(on)))}function Oa(pt){if(pt.kind!==233&&pt.name)return mn(pt)?Nu(pt.name)?pa(pt.name):ee.createVariableDeclaration(pt.name,void 0,zt(pt),void 0):void 0}function tl(pt){let on;M||(on=g,g=i3t(pt)),_e=pt.name,pe.assert(XD(pt));let nr=pt.name.expression;si(nr,T),M||(g=on),_e=void 0}function Qu(pt){return!!Tt&&!!pt&&Fre(pt,Ne)}function Tg(pt){return Cf(pt)||Gh(pt)}function Cs(pt){return jt(pt,Tg)}function Tu(pt){let on=o_(pt),it=Pr(pt);return on===it?Ede(pt.modifiers,nr=>Gs(nr,Ig),Ig):ee.createModifiersFromModifierFlags(it)}function Pr(pt){let on=130030,it=d&&!VBs(pt)?128:0,nr=pt.parent.kind===308;return(!nr||h&&nr&&xm(pt.parent))&&(on^=128,it=0),Otn(pt,on,it)}function Pn(pt){return ee.createNodeArray(Me(At(pt,on=>ee.updateHeritageClause(on,Ws(ee.createNodeArray(Me(on.types,it=>Od(it.expression)||on.token===96&&it.expression.kind===106)),ba,l_))),on=>on.types&&!!on.types.length))}}function VBs(s){return s.kind===265}function PBs(s,c,g,d){return s.createModifiersFromModifierFlags(Otn(c,g,d))}function Otn(s,c=131070,g=0){let d=o_(s)&c|g;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function Mtn(s){switch(s.kind){case 173:case 172:return!Gb(s,2);case 170:case 261:return!0}return!1}function WBs(s){switch(s.kind){case 263:case 268:case 272:case 265:case 264:case 266:case 267:case 244:case 273:case 279:case 278:return!0}return!1}function OBs(s){switch(s.kind){case 181:case 177:case 175:case 178:case 179:case 173:case 172:case 174:case 180:case 182:case 261:case 169:case 234:case 184:case 195:case 185:case 186:case 206:return!0}return!1}function MBs(s){switch(s){case 200:return Qet;case 99:case 7:case 6:case 5:case 100:case 101:case 102:case 199:case 1:return n3t;case 4:return r3t;default:return Yet}}var a3t={scriptTransformers:E,declarationTransformers:E};function c3t(s,c,g){return{scriptTransformers:HBs(s,c,g),declarationTransformers:YBs(c)}}function HBs(s,c,g){if(g)return E;let d=Mg(s),h=i0(s),_=Pne(s),S=[];return Or(S,c&&At(c.before,Ytn)),S.push(POt),s.experimentalDecorators&&S.push(MOt),RAe(s)&&S.push(qOt),d<99&&S.push(KOt),!s.experimentalDecorators&&(d<99||!_)&&S.push(HOt),S.push(WOt),d<8&&S.push(UOt),d<7&&S.push(JOt),d<6&&S.push(XOt),d<5&&S.push(QOt),d<4&&S.push(YOt),d<3&&S.push($Ot),d<2&&(S.push(e3t),S.push(t3t)),S.push(MBs(h)),Or(S,c&&At(c.after,Ytn)),S}function YBs(s){let c=[];return c.push(Xet),Or(c,s&&At(s.afterDeclarations,XBs)),c}function QBs(s){return c=>LPt(c)?s.transformBundle(c):s.transformSourceFile(c)}function Htn(s,c){return g=>{let d=s(g);return typeof d=="function"?c(g,d):QBs(d)}}function Ytn(s){return Htn(s,rR)}function XBs(s){return Htn(s,(c,g)=>g)}function Nde(s,c){return c}function PEe(s,c,g){g(s,c)}function WEe(s,c,g,d,h,_,S){var R,T;let W=new Array(359),V,M,ee,re=0,ge=[],Ie=[],_e=[],Ee=[],Ne=0,Te=!1,Ze=[],We=0,Ue,$e,Ye=Nde,Tt=PEe,ot=0,Qe=[],mt={factory:g,getCompilerOptions:()=>d,getEmitResolver:()=>s,getEmitHost:()=>c,getEmitHelperFactory:FA(()=>YLe(mt)),startLexicalEnvironment:dt,suspendLexicalEnvironment:pr,resumeLexicalEnvironment:st,endLexicalEnvironment:ir,setLexicalEnvironmentFlags:zt,getLexicalEnvironmentFlags:Ht,hoistVariableDeclaration:tr,hoistFunctionDeclaration:ur,addInitializationStatement:Gr,startBlockScope:Br,endBlockScope:mn,addBlockScopedVariable:jn,requestEmitHelper:Zi,readEmitHelpers:Ns,enableSubstitution:Ke,enableEmitNotification:Gt,isSubstitutionEnabled:Pt,isEmitNotificationEnabled:nt,get onSubstituteNode(){return Ye},set onSubstituteNode(si){pe.assert(ot<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Ye=si},get onEmitNode(){return Tt},set onEmitNode(si){pe.assert(ot<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Tt=si},addDiagnostic(si){Qe.push(si)}};for(let si of h)Ku(ms($l(si)));Mc("beforeTransform");let ht=_.map(si=>si(mt)),_t=si=>{for(let ks of ht)si=ks(si);return si};ot=1;let Rt=[];for(let si of h)(R=ki)==null||R.push(ki.Phase.Emit,"transformNodes",si.kind===308?{path:si.path}:{kind:si.kind,pos:si.pos,end:si.end}),Rt.push((S?_t:Lt)(si)),(T=ki)==null||T.pop();return ot=2,Mc("afterTransform"),Pf("transformTime","beforeTransform","afterTransform"),{transformed:Rt,substituteNode:_r,emitNodeWithNotification:Dt,isEmitNotificationEnabled:nt,dispose:An,diagnostics:Qe};function Lt(si){return si&&(!ll(si)||!si.isDeclarationFile)?_t(si):si}function Ke(si){pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),W[si]|=1}function Pt(si){return(W[si.kind]&1)!==0&&(tA(si)&8)===0}function _r(si,ks){return pe.assert(ot<3,"Cannot substitute a node after the result is disposed."),ks&&Pt(ks)&&Ye(si,ks)||ks}function Gt(si){pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),W[si]|=2}function nt(si){return(W[si.kind]&2)!==0||(tA(si)&4)!==0}function Dt(si,ks,Ic){pe.assert(ot<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),ks&&(nt(ks)?Tt(si,ks,Ic):Ic(si,ks))}function tr(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed.");let ks=ti(g.createVariableDeclaration(si),128);V?V.push(ks):V=[ks],re&1&&(re|=2)}function ur(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),M?M.push(si):M=[si]}function Gr(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),ee?ee.push(si):ee=[si]}function dt(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended."),ge[Ne]=V,Ie[Ne]=M,_e[Ne]=ee,Ee[Ne]=re,Ne++,V=void 0,M=void 0,ee=void 0,re=0}function pr(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is already suspended."),Te=!0}function st(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(Te,"Lexical environment is not suspended."),Te=!1}function ir(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended.");let si;if(V||M||ee){if(M&&(si=[...M]),V){let ks=g.createVariableStatement(void 0,g.createVariableDeclarationList(V));ti(ks,2097152),si?si.push(ks):si=[ks]}ee&&(si?si=[...si,...ee]:si=[...ee])}return Ne--,V=ge[Ne],M=Ie[Ne],ee=_e[Ne],re=Ee[Ne],Ne===0&&(ge=[],Ie=[],_e=[],Ee=[]),si}function zt(si,ks){re=ks?re|si:re&~si}function Ht(){return re}function Br(){pe.assert(ot>0,"Cannot start a block scope during initialization."),pe.assert(ot<2,"Cannot start a block scope after transformation has completed."),Ze[We]=Ue,We++,Ue=void 0}function mn(){pe.assert(ot>0,"Cannot end a block scope during initialization."),pe.assert(ot<2,"Cannot end a block scope after transformation has completed.");let si=jt(Ue)?[g.createVariableStatement(void 0,g.createVariableDeclarationList(Ue.map(ks=>g.createVariableDeclaration(ks)),1))]:void 0;return We--,Ue=Ze[We],We===0&&(Ze=[]),si}function jn(si){pe.assert(We>0,"Cannot add a block scoped variable outside of an iteration body."),(Ue||(Ue=[])).push(si)}function Zi(si){if(pe.assert(ot>0,"Cannot modify the transformation context during initialization."),pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),pe.assert(!si.scoped,"Cannot request a scoped emit helper."),si.dependencies)for(let ks of si.dependencies)Zi(ks);$e=Ft($e,si)}function Ns(){pe.assert(ot>0,"Cannot modify the transformation context during initialization."),pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed.");let si=$e;return $e=void 0,si}function An(){if(ot<3){for(let si of h)Ku(ms($l(si)));V=void 0,ge=void 0,M=void 0,Ie=void 0,Ye=void 0,Tt=void 0,$e=void 0,ot=3}}}var OEe={factory:me,getCompilerOptions:()=>({}),getEmitResolver:il,getEmitHost:il,getEmitHelperFactory:il,startLexicalEnvironment:Dc,resumeLexicalEnvironment:Dc,suspendLexicalEnvironment:Dc,endLexicalEnvironment:cm,setLexicalEnvironmentFlags:Dc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:Dc,hoistFunctionDeclaration:Dc,addInitializationStatement:Dc,startBlockScope:Dc,endBlockScope:cm,addBlockScopedVariable:Dc,requestEmitHelper:Dc,readEmitHelpers:il,enableSubstitution:Dc,enableEmitNotification:Dc,isSubstitutionEnabled:il,isEmitNotificationEnabled:il,onSubstituteNode:Nde,onEmitNode:PEe,addDiagnostic:Dc},Qtn=UBs();function l3t(s){return aA(s,".tsbuildinfo")}function Jet(s,c,g,d=!1,h,_){let S=Ki(g)?g:aAe(s,g,d),R=s.getCompilerOptions();if(!h)if(R.outFile){if(S.length){let T=me.createBundle(S),W=c(Dde(T,s,d),T);if(W)return W}}else for(let T of S){let W=c(Dde(T,s,d),T);if(W)return W}if(_){let T=U3(R);if(T)return c({buildInfoPath:T},void 0)}}function U3(s){let c=s.configFilePath;if(!JBs(s))return;if(s.tsBuildInfoFile)return s.tsBuildInfoFile;let g=s.outFile,d;if(g)d=s0(g);else{if(!c)return;let h=s0(c);d=s.outDir?s.rootDir?AE(s.outDir,mp(s.rootDir,h,!0)):Ro(s.outDir,gp(h)):h}return d+".tsbuildinfo"}function JBs(s){return DP(s)||!!s.tscBuild}function u3t(s,c){let g=s.outFile,d=s.emitDeclarationOnly?void 0:g,h=d&&Xtn(d,s),_=c||Ly(s)?s0(g)+".d.ts":void 0,S=_&&BAe(s)?_+".map":void 0;return{jsFilePath:d,sourceMapFilePath:h,declarationFilePath:_,declarationMapPath:S}}function Dde(s,c,g){let d=c.getCompilerOptions();if(s.kind===309)return u3t(d,g);{let h=TZe(s.fileName,c,MEe(s.fileName,d)),_=Zu(s),S=_&&qf(s.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||S?void 0:h,T=!R||Zu(s)?void 0:Xtn(R,d),W=g||Ly(d)&&!_?RZe(s.fileName,c):void 0,V=W&&BAe(d)?W+".map":void 0;return{jsFilePath:R,sourceMapFilePath:T,declarationFilePath:W,declarationMapPath:V}}}function Xtn(s,c){return c.sourceMap&&!c.inlineSourceMap?s+".map":void 0}function MEe(s,c){return aA(s,".json")?".json":c.jsx===1&&fu(s,[".jsx",".tsx"])?".jsx":fu(s,[".mts",".mjs"])?".mjs":fu(s,[".cts",".cjs"])?".cjs":".js"}function Jtn(s,c,g,d){return g?AE(g,mp(d(),s,c)):s}function kde(s,c,g,d=()=>RU(c,g)){return Uet(s,c.options,g,d)}function Uet(s,c,g,d){return fN(Jtn(s,g,c.declarationDir||c.outDir,d),sAe(s))}function Utn(s,c,g,d=()=>RU(c,g)){if(c.options.emitDeclarationOnly)return;let h=aA(s,".json"),_=Ket(s,c.options,g,d);return!h||qf(s,_,pe.checkDefined(c.options.configFilePath),g)!==0?_:void 0}function Ket(s,c,g,d){return fN(Jtn(s,g,c.outDir,d),MEe(s,c))}function Ktn(){let s;return{addOutput:c,getOutputs:g};function c(d){d&&(s||(s=[])).push(d)}function g(){return s||E}}function jtn(s,c){let{jsFilePath:g,sourceMapFilePath:d,declarationFilePath:h,declarationMapPath:_}=u3t(s.options,!1);c(g),c(d),c(h),c(_)}function ztn(s,c,g,d,h){if(PC(c))return;let _=Utn(c,s,g,h);if(d(_),!aA(c,".json")&&(_&&s.options.sourceMap&&d(`${_}.map`),Ly(s.options))){let S=kde(c,s,g,h);d(S),s.options.declarationMap&&d(`${S}.map`)}}function xde(s,c,g,d,h){let _;return s.rootDir?(_=Xc(s.rootDir,g),h?.(s.rootDir)):s.composite&&s.configFilePath?(_=Mo(Dp(s.configFilePath)),h?.(_)):_=m3t(c(),g,d),_&&_[_.length-1]!==ag&&(_+=ag),_}function RU({options:s,fileNames:c},g){return xde(s,()=>Me(c,d=>!(s.noEmitForJsFiles&&fu(d,uU))&&!PC(d)),Mo(Dp(pe.checkDefined(s.configFilePath))),_d(!g))}function K9e(s,c){let{addOutput:g,getOutputs:d}=Ktn();if(s.options.outFile)jtn(s,g);else{let h=FA(()=>RU(s,c));for(let _ of s.fileNames)ztn(s,_,c,g,h)}return g(U3(s.options)),d()}function qtn(s,c,g){c=iu(c),pe.assert(k(s.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:h}=Ktn();return s.options.outFile?jtn(s,d):ztn(s,c,g,d),h()}function jet(s,c){if(s.options.outFile){let{jsFilePath:h,declarationFilePath:_}=u3t(s.options,!1);return pe.checkDefined(h||_,`project ${s.options.configFilePath} expected to have at least one output`)}let g=FA(()=>RU(s,c));for(let h of s.fileNames){if(PC(h))continue;let _=Utn(h,s,c,g);if(_)return _;if(!aA(h,".json")&&Ly(s.options))return kde(h,s,c,g)}let d=U3(s.options);return d||pe.fail(`project ${s.options.configFilePath} expected to have at least one output`)}function zet(s,c){return!!c&&!!s}function qet(s,c,g,{scriptTransformers:d,declarationTransformers:h},_,S,R,T){var W=c.getCompilerOptions(),V=W.sourceMap||W.inlineSourceMap||BAe(W)?[]:void 0,M=W.listEmittedFiles?[]:void 0,ee=EF(),re=uN(W),ge=Bne(re),{enter:Ie,exit:_e}=U_("printTime","beforePrint","afterPrint"),Ee=!1;return Ie(),Jet(c,Ne,aAe(c,g,R),R,S,!g&&!T),_e(),{emitSkipped:Ee,diagnostics:ee.getDiagnostics(),emittedFiles:M,sourceMaps:V};function Ne({jsFilePath:ht,sourceMapFilePath:_t,declarationFilePath:Rt,declarationMapPath:Lt,buildInfoPath:Ke},Pt){var _r,Gt,nt,Dt,tr,ur;(_r=ki)==null||_r.push(ki.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:ht}),Ze(Pt,ht,_t),(Gt=ki)==null||Gt.pop(),(nt=ki)==null||nt.push(ki.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:Rt}),We(Pt,Rt,Lt),(Dt=ki)==null||Dt.pop(),(tr=ki)==null||tr.push(ki.Phase.Emit,"emitBuildInfo",{buildInfoPath:Ke}),Te(Ke),(ur=ki)==null||ur.pop()}function Te(ht){if(!ht||g)return;if(c.isEmitBlocked(ht)){Ee=!0;return}let _t=c.getBuildInfo()||{version:C};lAe(c,ee,ht,g3t(_t),!1,void 0,{buildInfo:_t}),M?.push(ht)}function Ze(ht,_t,Rt){if(!ht||_||!_t)return;if(c.isEmitBlocked(_t)||W.noEmit){Ee=!0;return}(ll(ht)?[ht]:Me(ht.sourceFiles,Jge)).forEach(_r=>{(W.noCheck||!gU(_r,W))&&$e(_r)});let Lt=WEe(s,c,me,W,[ht],d,!1),Ke={removeComments:W.removeComments,newLine:W.newLine,noEmitHelpers:W.noEmitHelpers,module:i0(W),moduleResolution:k_(W),target:Mg(W),sourceMap:W.sourceMap,inlineSourceMap:W.inlineSourceMap,inlineSources:W.inlineSources,extendedDiagnostics:W.extendedDiagnostics},Pt=MP(Ke,{hasGlobalName:s.hasGlobalName,onEmitNode:Lt.emitNodeWithNotification,isEmitNotificationEnabled:Lt.isEmitNotificationEnabled,substituteNode:Lt.substituteNode});pe.assert(Lt.transformed.length===1,"Should only see one output from the transform"),Ye(_t,Rt,Lt,Pt,W),Lt.dispose(),M&&(M.push(_t),Rt&&M.push(Rt))}function We(ht,_t,Rt){if(!ht||_===0)return;if(!_t){(_||W.emitDeclarationOnly)&&(Ee=!0);return}let Lt=ll(ht)?[ht]:ht.sourceFiles,Ke=R?Lt:Me(Lt,Jge),Pt=W.outFile?[me.createBundle(Ke)]:Ke;Ke.forEach(nt=>{(_&&!Ly(W)||W.noCheck||zet(_,R)||!gU(nt,W))&&Ue(nt)});let _r=WEe(s,c,me,W,Pt,h,!1);if(B(_r.diagnostics))for(let nt of _r.diagnostics)ee.add(nt);let Gt=!!_r.diagnostics&&!!_r.diagnostics.length||!!c.isEmitBlocked(_t)||!!W.noEmit;if(Ee=Ee||Gt,!Gt||R){pe.assert(_r.transformed.length===1,"Should only see one output from the decl transform");let nt={removeComments:W.removeComments,newLine:W.newLine,noEmitHelpers:!0,module:W.module,moduleResolution:W.moduleResolution,target:W.target,sourceMap:_!==2&&W.declarationMap,inlineSourceMap:W.inlineSourceMap,extendedDiagnostics:W.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},Dt=MP(nt,{hasGlobalName:s.hasGlobalName,onEmitNode:_r.emitNodeWithNotification,isEmitNotificationEnabled:_r.isEmitNotificationEnabled,substituteNode:_r.substituteNode}),tr=Ye(_t,Rt,_r,Dt,{sourceMap:nt.sourceMap,sourceRoot:W.sourceRoot,mapRoot:W.mapRoot,extendedDiagnostics:W.extendedDiagnostics});M&&(tr&&M.push(_t),Rt&&M.push(Rt))}_r.dispose()}function Ue(ht){if(Cf(ht)){ht.expression.kind===80&&s.collectLinkedAliases(ht.expression,!0);return}else if(R0(ht)){s.collectLinkedAliases(ht.propertyName||ht.name,!0);return}Lu(ht,Ue)}function $e(ht){n0(ht)||Sz(ht,_t=>{if(km(_t)&&!(Nx(_t)&32)||Mf(_t))return"skip";s.markLinkedReferences(_t)})}function Ye(ht,_t,Rt,Lt,Ke){let Pt=Rt.transformed[0],_r=Pt.kind===309?Pt:void 0,Gt=Pt.kind===308?Pt:void 0,nt=_r?_r.sourceFiles:[Gt],Dt;Tt(Ke,Pt)&&(Dt=yOt(c,gp(Dp(ht)),ot(Ke),Qe(Ke,ht,Gt),Ke)),_r?Lt.writeBundle(_r,ge,Dt):Lt.writeFile(Gt,ge,Dt);let tr;if(Dt){V&&V.push({inputSourceFileNames:Dt.getSources(),sourceMap:Dt.toJSON()});let dt=mt(Ke,Dt,ht,_t,Gt);if(dt&&(ge.isAtStartOfLine()||ge.rawWrite(re),tr=ge.getTextPos(),ge.writeComment(`//# sourceMappingURL=${dt}`)),_t){let pr=Dt.toString();lAe(c,ee,_t,pr,!1,nt)}}else ge.writeLine();let ur=ge.getText(),Gr={sourceMapUrlPos:tr,diagnostics:Rt.diagnostics};return lAe(c,ee,ht,ur,!!W.emitBOM,nt,Gr),ge.clear(),!Gr.skippedDtsWrite}function Tt(ht,_t){return(ht.sourceMap||ht.inlineSourceMap)&&(_t.kind!==308||!aA(_t.fileName,".json"))}function ot(ht){let _t=Dp(ht.sourceRoot||"");return _t&&hp(_t)}function Qe(ht,_t,Rt){if(ht.sourceRoot)return c.getCommonSourceDirectory();if(ht.mapRoot){let Lt=Dp(ht.mapRoot);return Rt&&(Lt=Mo(cAe(Rt.fileName,c,Lt))),Wf(Lt)===0&&(Lt=Ro(c.getCommonSourceDirectory(),Lt)),Lt}return Mo(iu(_t))}function mt(ht,_t,Rt,Lt,Ke){if(ht.inlineSourceMap){let _r=_t.toString();return`data:application/json;base64,${ibe(yd,_r)}`}let Pt=gp(Dp(pe.checkDefined(Lt)));if(ht.mapRoot){let _r=Dp(ht.mapRoot);return Ke&&(_r=Mo(cAe(Ke.fileName,c,_r))),Wf(_r)===0?(_r=Ro(c.getCommonSourceDirectory(),_r),encodeURI(Of(Mo(iu(Rt)),Ro(_r,Pt),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(Ro(_r,Pt))}return encodeURI(Pt)}}function g3t(s){return JSON.stringify(s)}function $et(s,c){return sbe(s,c)}var A3t={hasGlobalName:il,getReferencedExportContainer:il,getReferencedImportDeclaration:il,getReferencedDeclarationWithCollidingName:il,isDeclarationWithCollidingName:il,isValueAliasDeclaration:il,isReferencedAliasDeclaration:il,isTopLevelValueImportEqualsWithEntityName:il,hasNodeCheckFlag:il,isDeclarationVisible:il,isLateBound:s=>!1,collectLinkedAliases:il,markLinkedReferences:il,isImplementationOfOverload:il,requiresAddingImplicitUndefined:il,isExpandoFunctionDeclaration:il,getPropertiesOfContainerFunction:il,createTypeOfDeclaration:il,createReturnTypeOfSignatureDeclaration:il,createTypeOfExpression:il,createLiteralConstValue:il,isSymbolAccessible:il,isEntityNameVisible:il,getConstantValue:il,getEnumMemberValue:il,getReferencedValueDeclaration:il,getReferencedValueDeclarations:il,getTypeReferenceSerializationKind:il,isOptionalParameter:il,isArgumentsLocalBinding:il,getExternalModuleFileFromDeclaration:il,isLiteralConstDeclaration:il,getJsxFactoryEntity:il,getJsxFragmentFactoryEntity:il,isBindingCapturedByNode:il,getDeclarationStatementsForSourceFile:il,isImportRequiredByAugmentation:il,isDefinitelyReferenceToGlobalSymbolObject:il,createLateBoundIndexSignatures:il,symbolToDeclarations:il},d3t=FA(()=>MP({})),gQ=FA(()=>MP({removeComments:!0})),p3t=FA(()=>MP({removeComments:!0,neverAsciiEscape:!0})),ett=FA(()=>MP({removeComments:!0,omitTrailingSemicolon:!0}));function MP(s={},c={}){var{hasGlobalName:g,onEmitNode:d=PEe,isEmitNotificationEnabled:h,substituteNode:_=Nde,onBeforeEmitNode:S,onAfterEmitNode:R,onBeforeEmitNodeArray:T,onAfterEmitNodeArray:W,onBeforeEmitToken:V,onAfterEmitToken:M}=c,ee=!!s.extendedDiagnostics,re=!!s.omitBraceSourceMapPositions,ge=uN(s),Ie=i0(s),_e=new Map,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt,ot,Qe,mt,ht,_t,Rt,Lt=s.preserveSourceNewlines,Ke,Pt,_r,Gt=Ise,nt,Dt=!0,tr,ur,Gr=-1,dt,pr=-1,st=-1,ir=-1,zt=-1,Ht,Br,mn=!1,jn=!!s.removeComments,Zi,Ns,{enter:An,exit:si}=Y2(ee,"commentTime","beforeComment","afterComment"),ks=me.parenthesizer,Ic={select:Ae=>Ae===0?ks.parenthesizeLeadingTypeArgument:void 0},su=hm();return Qu(),{printNode:Zn,printList:ya,printFile:ba,printBundle:Gl,writeNode:Wo,writeList:hc,writeFile:hn,writeBundle:yr};function Zn(Ae,Et,fn){switch(Ae){case 0:pe.assert(ll(Et),"Expected a SourceFile node.");break;case 2:pe.assert(Ir(Et),"Expected an Identifier node.");break;case 1:pe.assert(un(Et),"Expected an Expression node.");break}switch(Et.kind){case 308:return ba(Et);case 309:return Gl(Et)}return Wo(Ae,Et,fn,Oi()),lo()}function ya(Ae,Et,fn){return hc(Ae,Et,fn,Oi()),lo()}function Gl(Ae){return yr(Ae,Oi(),void 0),lo()}function ba(Ae){return hn(Ae,Oi(),void 0),lo()}function Wo(Ae,Et,fn,qi){let ic=Pt;tl(qi,void 0),pa(Ae,Et,fn),Qu(),Pt=ic}function hc(Ae,Et,fn,qi){let ic=Pt;tl(qi,void 0),fn&&Oa(fn),fa(void 0,Et,Ae),Qu(),Pt=ic}function yr(Ae,Et,fn){nt=!1;let qi=Pt;tl(Et,fn),u9(Ae),Hw(Ae),bn(Ae),Cpe(Ae);for(let ic of Ae.sourceFiles)pa(0,ic,ic);Qu(),Pt=qi}function hn(Ae,Et,fn){nt=!0;let qi=Pt;tl(Et,fn),u9(Ae),Hw(Ae),pa(0,Ae,Ae),Qu(),Pt=qi}function Oi(){return _r||(_r=Bne(ge))}function lo(){let Ae=_r.getText();return _r.clear(),Ae}function pa(Ae,Et,fn){fn&&Oa(fn),it(Ae,Et,void 0)}function Oa(Ae){Ee=Ae,Ht=void 0,Br=void 0,Ae&&kQ(Ae)}function tl(Ae,Et){Ae&&s.omitTrailingSemicolon&&(Ae=Oye(Ae)),Pt=Ae,tr=Et,Dt=!Pt||!tr}function Qu(){Ne=[],Te=[],Ze=[],We=new Set,Ue=[],$e=new Map,Ye=[],Tt=0,ot=[],Qe=0,mt=[],ht=void 0,_t=[],Rt=void 0,Ee=void 0,Ht=void 0,Br=void 0,tl(void 0,void 0)}function Tg(){return Ht||(Ht=rn(pe.checkDefined(Ee)))}function Cs(Ae,Et){Ae!==void 0&&it(4,Ae,Et)}function Tu(Ae){Ae!==void 0&&it(2,Ae,void 0)}function Pr(Ae,Et){Ae!==void 0&&it(1,Ae,Et)}function Pn(Ae){it(Zg(Ae)?6:4,Ae)}function pt(Ae){Lt&&g1(Ae)&4&&(Lt=!1)}function on(Ae){Lt=Ae}function it(Ae,Et,fn){Ns=fn,Kr(0,Ae,Et)(Ae,Et),Ns=void 0}function nr(Ae){return!jn&&!ll(Ae)}function Fr(Ae){return!Dt&&!ll(Ae)&&!Xge(Ae)}function Kr(Ae,Et,fn){switch(Ae){case 0:if(d!==PEe&&(!h||h(fn)))return hr;case 1:if(_!==Nde&&(Zi=_(Et,fn)||fn)!==fn)return Ns&&(Zi=Ns(Zi)),nn;case 2:if(nr(fn))return NQ;case 3:if(Fr(fn))return sK;case 4:return En;default:return pe.assertNever(Ae)}}function Dn(Ae,Et,fn){return Kr(Ae+1,Et,fn)}function hr(Ae,Et){let fn=Dn(0,Ae,Et);d(Ae,Et,fn)}function En(Ae,Et){if(S?.(Et),Lt){let fn=Lt;pt(Et),Ni(Ae,Et),on(fn)}else Ni(Ae,Et);R?.(Et),Ns=void 0}function Ni(Ae,Et,fn=!0){if(fn){let qi=zbe(Et);if(qi)return Bt(Ae,Et,qi)}if(Ae===0)return d5(Ma(Et,ll));if(Ae===2)return Je(Ma(Et,Ir));if(Ae===6)return cn(Ma(Et,Zg),!0);if(Ae===3)return Gi(Ma(Et,Ds));if(Ae===7)return GN(Ma(Et,CU));if(Ae===5)return pe.assertNode(Et,u$e),oR(!0);if(Ae===4){switch(Et.kind){case 16:case 17:case 18:return cn(Et,!1);case 80:return Je(Et);case 81:return In(Et);case 167:return Hn(Et);case 168:return $r(Et);case 169:return ri(Et);case 170:return ao(Et);case 171:return Bs(Et);case 172:return Ys(Et);case 173:return tn(Et);case 174:return wn(Et);case 175:return Mn(Et);case 176:return ci(Et);case 177:return es(Et);case 178:case 179:return Wi(Et);case 180:return Vn(Et);case 181:return Ui(Et);case 182:return gs(Et);case 183:return mc(Et);case 184:return gg(Et);case 185:return Ag(Et);case 186:return tm(Et);case 187:return jp(Et);case 188:return Xg(Et);case 189:return sh(Et);case 190:return gu(Et);case 191:return KA(Et);case 193:return TA(Et);case 194:return oi(Et);case 195:return $d(Et);case 196:return YI(Et);case 197:return Fh(Et);case 234:return OC(Et);case 198:return WC();case 199:return _f(Et);case 200:return QI(Et);case 201:return ve(Et);case 202:return mr(Et);case 203:return bg(Et);case 204:return ln(Et);case 205:return fs(Et);case 206:return ni(Et);case 207:return Ls(Et);case 208:return Za(Et);case 209:return Go(Et);case 240:return Wx(Et);case 241:return bi();case 242:return Ox(Et);case 244:return qm(Et);case 243:return oR(!1);case 245:return pS(Et);case 246:return xN(Et);case 247:return en(Et);case 248:return gi(Et);case 249:return _i(Et);case 250:return ys(Et);case 251:return $s(Et);case 252:return pc(Et);case 253:return ul(Et);case 254:return eg(Et);case 255:return jl(Et);case 256:return Eu(Et);case 257:return Df(Et);case 258:return Jg(Et);case 259:return MC(Et);case 260:return S1(Et);case 261:return fS(Et);case 262:return bv(Et);case 263:return XF(Et);case 264:return is(Et);case 265:return Oo(Et);case 266:return Os(Et);case 267:return co(Et);case 268:return Yc(Et);case 269:return tu(Et);case 270:return $a(Et);case 271:return ak(Et);case 272:return ru(Et);case 273:return kf(Et);case 274:return Wb(Et);case 275:return OB(Et);case 281:return gse(Et);case 276:return p_(Et);case 277:return MB(Et);case 278:return v1(Et);case 279:return s5(Et);case 280:return hpe(Et);case 282:return Ase(Et);case 301:return ok(Et);case 302:return o5(Et);case 283:return;case 284:return WU(Et);case 12:return MU(Et);case 287:case 290:return mpe(Et);case 288:case 291:return $z(Et);case 292:return dse(Et);case 293:return c5(Et);case 294:return HU(Et);case 295:return tq(Et);case 296:return rq(Et);case 297:return jP(Et);case 298:return c9(Et);case 299:return UF(Et);case 300:return KF(Et);case 304:return zP(Et);case 305:return l5(Et);case 306:return YU(Et);case 307:return u5(Et);case 308:return d5(Et);case 309:return pe.fail("Bundles should be printed using printBundle");case 310:return A5(Et);case 311:return zF(Et);case 313:return qo("*");case 314:return qo("?");case 315:return pp(Et);case 316:return Dl(Et);case 317:return yu(Et);case 318:return AI(Et);case 192:case 319:return dS(Et);case 320:return;case 321:return PA(Et);case 323:return Ay(Et);case 324:return lk(Et);case 328:case 333:case 338:return g5(Et);case 329:case 330:return ck(Et);case 331:case 332:return;case 334:case 335:case 336:case 337:return;case 339:return Ob(Et);case 340:return u0(Et);case 342:case 349:return Hy(Et);case 341:case 343:case 344:case 345:case 350:case 351:return QU(Et);case 346:return bf(Et);case 347:return l0(Et);case 348:return pse(Et);case 352:return jF(Et);case 354:case 355:return}if(un(Et)&&(Ae=1,_!==Nde)){let qi=_(Ae,Et)||Et;qi!==Et&&(Et=qi,Ns&&(Et=Ns(Et)))}}if(Ae===1)switch(Et.kind){case 9:case 10:return Mt(Et);case 11:case 14:case 15:return cn(Et,!1);case 80:return Je(Et);case 81:return In(Et);case 210:return Ss(Et);case 211:return Uc(Et);case 212:return rl(Et);case 213:return Lg(Et);case 214:return yf(Et);case 215:return rm(Et);case 216:return _h(Et);case 217:return Gp(Et);case 218:return oh(Et);case 219:return b1(Et);case 220:return Z_(Et);case 221:return or(Et);case 222:return qn(Et);case 223:return Js(Et);case 224:return Hl(Et);case 225:return RA(Et);case 226:return uA(Et);case 227:return su(Et);case 228:return af(Et);case 229:return dI(Et);case 230:return XI(Et);case 231:return C2(Et);case 232:return d_(Et);case 233:return;case 235:return E1(Et);case 236:return gy(Et);case 234:return OC(Et);case 239:return yv(Et);case 237:return ik(Et);case 238:return pe.fail("SyntheticExpression should never be printed.");case 283:return;case 285:return a9(Et);case 286:return OU(Et);case 289:return qz(Et);case 353:return pe.fail("SyntaxList should not be printed");case 354:return;case 356:return Sr(Et);case 357:return XU(Et);case 358:return pe.fail("SyntheticReferenceExpression should not be printed")}if(v0(Et.kind))return jU(Et,hu);if(q6(Et.kind))return jU(Et,qo);pe.fail(`Unhandled SyntaxKind: ${pe.formatSyntaxKind(Et.kind)}.`)}function Gi(Ae){Cs(Ae.name),Fo(),hu("in"),Fo(),Cs(Ae.constraint)}function nn(Ae,Et){let fn=Dn(1,Ae,Et);pe.assertIsDefined(Zi),Et=Zi,Zi=void 0,fn(Ae,Et)}function bn(Ae){let Et=!1,fn=Ae.kind===309?Ae:void 0;if(fn&&Ie===0)return;let qi=fn?fn.sourceFiles.length:1;for(let ic=0;ic")}function wI(Ae){Fo(),Cs(Ae.type)}function AI(Ae){hu("function"),f5(Ae,Ae.parameters),qo(":"),Cs(Ae.type)}function pp(Ae){qo("?"),Cs(Ae.type)}function Dl(Ae){qo("!"),Cs(Ae.type)}function yu(Ae){Cs(Ae.type),qo("=")}function tm(Ae){cR(Ae,Ae.modifiers),hu("new"),Fo(),My(Ae,_u,wI)}function jp(Ae){hu("typeof"),Fo(),Cs(Ae.exprName),Ev(Ae,Ae.typeArguments)}function Xg(Ae){Qw(Ae),F(Ae.members,RQ),qo("{");let Et=tA(Ae)&1?768:32897;fa(Ae,Ae.members,Et|524288),qo("}"),tZ(Ae)}function sh(Ae){Cs(Ae.elementType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),qo("]")}function dS(Ae){qo("..."),Cs(Ae.type)}function gu(Ae){Fe(23,Ae.pos,qo,Ae);let Et=tA(Ae)&1?528:657;fa(Ae,Ae.elements,Et|524288,ks.parenthesizeElementTypeOfTupleType),Fe(24,Ae.elements.end,qo,Ae)}function bg(Ae){Cs(Ae.dotDotDotToken),Cs(Ae.name),Cs(Ae.questionToken),Fe(59,Ae.name.end,qo,Ae),Fo(),Cs(Ae.type)}function KA(Ae){Cs(Ae.type,ks.parenthesizeTypeOfOptionalType),qo("?")}function TA(Ae){fa(Ae,Ae.types,516,ks.parenthesizeConstituentTypeOfUnionType)}function oi(Ae){fa(Ae,Ae.types,520,ks.parenthesizeConstituentTypeOfIntersectionType)}function $d(Ae){Cs(Ae.checkType,ks.parenthesizeCheckTypeOfConditionalType),Fo(),hu("extends"),Fo(),Cs(Ae.extendsType,ks.parenthesizeExtendsTypeOfConditionalType),Fo(),qo("?"),Fo(),Cs(Ae.trueType),Fo(),qo(":"),Fo(),Cs(Ae.falseType)}function YI(Ae){hu("infer"),Fo(),Cs(Ae.typeParameter)}function Fh(Ae){qo("("),Cs(Ae.type),qo(")")}function WC(){hu("this")}function _f(Ae){tW(Ae.operator,hu),Fo();let Et=Ae.operator===148?ks.parenthesizeOperandOfReadonlyTypeOperator:ks.parenthesizeOperandOfTypeOperator;Cs(Ae.type,Et)}function QI(Ae){Cs(Ae.objectType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),Cs(Ae.indexType),qo("]")}function ve(Ae){let Et=tA(Ae);qo("{"),Et&1?Fo():(G0(),uk()),Ae.readonlyToken&&(Cs(Ae.readonlyToken),Ae.readonlyToken.kind!==148&&hu("readonly"),Fo()),qo("["),it(3,Ae.typeParameter),Ae.nameType&&(Fo(),hu("as"),Fo(),Cs(Ae.nameType)),qo("]"),Ae.questionToken&&(Cs(Ae.questionToken),Ae.questionToken.kind!==58&&qo("?")),qo(":"),Fo(),Cs(Ae.type),py(),Et&1?Fo():(G0(),lR()),fa(Ae,Ae.members,2),qo("}")}function mr(Ae){Pr(Ae.literal)}function ln(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function ni(Ae){Ae.isTypeOf&&(hu("typeof"),Fo()),hu("import"),qo("("),Cs(Ae.argument),Ae.attributes&&(qo(","),Fo(),it(7,Ae.attributes)),qo(")"),Ae.qualifier&&(qo("."),Cs(Ae.qualifier)),Ev(Ae,Ae.typeArguments)}function Ls(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function Za(Ae){qo("["),fa(Ae,Ae.elements,524880),qo("]")}function Go(Ae){Cs(Ae.dotDotDotToken),Ae.propertyName&&(Cs(Ae.propertyName),qo(":"),Fo()),Cs(Ae.name),p5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function Ss(Ae){let Et=Ae.elements,fn=Ae.multiLine?65536:0;sa(Ae,Et,8914|fn,ks.parenthesizeExpressionForDisallowedComma)}function Uc(Ae){Qw(Ae),F(Ae.properties,RQ);let Et=tA(Ae)&131072;Et&&uk();let fn=Ae.multiLine?65536:0,qi=Ee&&Ee.languageVersion>=1&&!Zu(Ee)?64:0;fa(Ae,Ae.properties,526226|qi|fn),Et&&lR(),tZ(Ae)}function rl(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess);let Et=Ae.questionDotToken||TB(me.createToken(25),Ae.expression.end,Ae.name.pos),fn=ZN(Ae,Ae.expression,Et),qi=ZN(Ae,Et,Ae.name);Sv(fn,!1),Et.kind!==29&&xd(Ae.expression)&&!Pt.hasTrailingComment()&&!Pt.hasTrailingWhitespace()&&qo("."),Ae.questionDotToken?Cs(Et):Fe(Et.kind,Ae.expression.end,qo,Ae),Sv(qi,!1),Cs(Ae.name),Mb(fn,qi)}function xd(Ae){if(Ae=o2(Ae),mC(Ae)){let Et=iW(Ae,void 0,!0,!1);return!(Ae.numericLiteralFlags&448)&&!Et.includes(Vi(25))&&!Et.includes("E")&&!Et.includes("e")}else if(_p(Ae)){let Et=ZLe(Ae);return typeof Et=="number"&&isFinite(Et)&&Et>=0&&Math.floor(Et)===Et}}function Lg(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Cs(Ae.questionDotToken),Fe(23,Ae.expression.end,qo,Ae),Pr(Ae.argumentExpression),Fe(24,Ae.argumentExpression.end,qo,Ae)}function yf(Ae){let Et=g1(Ae)&16;Et&&(qo("("),$F("0"),qo(","),Fo()),Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Et&&qo(")"),Cs(Ae.questionDotToken),Ev(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,2576,ks.parenthesizeExpressionForDisallowedComma)}function rm(Ae){Fe(105,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeExpressionOfNew),Ev(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,18960,ks.parenthesizeExpressionForDisallowedComma)}function _h(Ae){let Et=g1(Ae)&16;Et&&(qo("("),$F("0"),qo(","),Fo()),Pr(Ae.tag,ks.parenthesizeLeftSideOfAccess),Et&&qo(")"),Ev(Ae,Ae.typeArguments),Fo(),Pr(Ae.template)}function Gp(Ae){qo("<"),Cs(Ae.type),qo(">"),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function oh(Ae){let Et=Fe(21,Ae.pos,qo,Ae),fn=rW(Ae.expression,Ae);Pr(Ae.expression,void 0),sq(Ae.expression,Ae),Mb(fn),Fe(22,Ae.expression?Ae.expression.end:Et,qo,Ae)}function b1(Ae){Xx(Ae.name),o9(Ae)}function Z_(Ae){cR(Ae,Ae.modifiers),My(Ae,m2,Vb)}function m2(Ae){Yx(Ae,Ae.typeParameters),FN(Ae,Ae.parameters),YB(Ae.type),Fo(),Cs(Ae.equalsGreaterThanToken)}function Vb(Ae){$u(Ae.body)?br(Ae.body):(Fo(),Pr(Ae.body,ks.parenthesizeConciseBodyOfArrowFunction))}function or(Ae){Fe(91,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function qn(Ae){Fe(114,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Js(Ae){Fe(116,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Hl(Ae){Fe(135,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function RA(Ae){tW(Ae.operator,vE),NA(Ae)&&Fo(),Pr(Ae.operand,ks.parenthesizeOperandOfPrefixUnary)}function NA(Ae){let Et=Ae.operand;return Et.kind===225&&(Ae.operator===40&&(Et.operator===40||Et.operator===46)||Ae.operator===41&&(Et.operator===41||Et.operator===47))}function uA(Ae){Pr(Ae.operand,ks.parenthesizeOperandOfPostfixUnary),tW(Ae.operator,vE)}function hm(){return c9e(Ae,Et,fn,qi,ic,void 0);function Ae(zl,Vc){if(Vc){Vc.stackIndex++,Vc.preserveSourceNewlinesStack[Vc.stackIndex]=Lt,Vc.containerPosStack[Vc.stackIndex]=st,Vc.containerEndStack[Vc.stackIndex]=ir,Vc.declarationListContainerEndStack[Vc.stackIndex]=zt;let _A=Vc.shouldEmitCommentsStack[Vc.stackIndex]=nr(zl),Lh=Vc.shouldEmitSourceMapsStack[Vc.stackIndex]=Fr(zl);S?.(zl),_A&&uR(zl),Lh&&jA(zl),pt(zl)}else Vc={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return Vc}function Et(zl,Vc,_A){return Oc(zl,_A,"left")}function fn(zl,Vc,_A){let Lh=zl.kind!==28,g0=ZN(_A,_A.left,zl),Yy=ZN(_A,zl,_A.right);Sv(g0,Lh),Ux(zl.pos),jU(zl,zl.kind===103?hu:vE),Xw(zl.end,!0),Sv(Yy,!0)}function qi(zl,Vc,_A){return Oc(zl,_A,"right")}function ic(zl,Vc){let _A=ZN(zl,zl.left,zl.operatorToken),Lh=ZN(zl,zl.operatorToken,zl.right);if(Mb(_A,Lh),Vc.stackIndex>0){let g0=Vc.preserveSourceNewlinesStack[Vc.stackIndex],Yy=Vc.containerPosStack[Vc.stackIndex],B5=Vc.containerEndStack[Vc.stackIndex],Qy=Vc.declarationListContainerEndStack[Vc.stackIndex],aW=Vc.shouldEmitCommentsStack[Vc.stackIndex],Iq=Vc.shouldEmitSourceMapsStack[Vc.stackIndex];on(g0),Iq&&Uo(zl),aW&&oW(zl,Yy,B5,Qy),R?.(zl),Vc.stackIndex--}}function Oc(zl,Vc,_A){let Lh=_A==="left"?ks.getParenthesizeLeftSideOfBinaryForOperator(Vc.operatorToken.kind):ks.getParenthesizeRightSideOfBinaryForOperator(Vc.operatorToken.kind),g0=Kr(0,1,zl);if(g0===nn&&(pe.assertIsDefined(Zi),zl=Lh(Ma(Zi,un)),g0=Dn(1,1,zl),Zi=void 0),(g0===NQ||g0===sK||g0===En)&&fo(zl))return zl;Ns=Lh,g0(1,zl)}}function af(Ae){let Et=ZN(Ae,Ae.condition,Ae.questionToken),fn=ZN(Ae,Ae.questionToken,Ae.whenTrue),qi=ZN(Ae,Ae.whenTrue,Ae.colonToken),ic=ZN(Ae,Ae.colonToken,Ae.whenFalse);Pr(Ae.condition,ks.parenthesizeConditionOfConditionalExpression),Sv(Et,!0),Cs(Ae.questionToken),Sv(fn,!0),Pr(Ae.whenTrue,ks.parenthesizeBranchOfConditionalExpression),Mb(Et,fn),Sv(qi,!0),Cs(Ae.colonToken),Sv(ic,!0),Pr(Ae.whenFalse,ks.parenthesizeBranchOfConditionalExpression),Mb(qi,ic)}function dI(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function XI(Ae){Fe(127,Ae.pos,hu,Ae),Cs(Ae.asteriskToken),g9(Ae.expression&&bs(Ae.expression),Xl)}function C2(Ae){Fe(26,Ae.pos,qo,Ae),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma)}function d_(Ae){Xx(Ae.name),Qs(Ae)}function OC(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Ev(Ae,Ae.typeArguments)}function E1(Ae){Pr(Ae.expression,void 0),Ae.type&&(Fo(),hu("as"),Fo(),Cs(Ae.type))}function gy(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),vE("!")}function yv(Ae){Pr(Ae.expression,void 0),Ae.type&&(Fo(),hu("satisfies"),Fo(),Cs(Ae.type))}function ik(Ae){eW(Ae.keywordToken,Ae.pos,qo),qo("."),Cs(Ae.name)}function Wx(Ae){Pr(Ae.expression),Cs(Ae.literal)}function Ox(Ae){Pb(Ae,!Ae.multiLine&&nW(Ae))}function Pb(Ae,Et){Fe(19,Ae.pos,qo,Ae);let fn=Et||tA(Ae)&1?768:129;fa(Ae,Ae.statements,fn),Fe(20,Ae.statements.end,qo,Ae,!!(fn&1))}function qm(Ae){dy(Ae,Ae.modifiers,!1),Cs(Ae.declarationList),py()}function oR(Ae){Ae?qo(";"):py()}function pS(Ae){Pr(Ae.expression,ks.parenthesizeExpressionOfExpressionStatement),(!Ee||!Zu(Ee)||sp(Ae.expression))&&py()}function xN(Ae){let Et=Fe(101,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.thenStatement),Ae.elseStatement&&(hS(Ae,Ae.thenStatement,Ae.elseStatement),Fe(93,Ae.thenStatement.end,hu,Ae),Ae.elseStatement.kind===246?(Fo(),Cs(Ae.elseStatement)):qF(Ae,Ae.elseStatement))}function at(Ae,Et){let fn=Fe(117,Et,hu,Ae);Fo(),Fe(21,fn,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae)}function en(Ae){Fe(92,Ae.pos,hu,Ae),qF(Ae,Ae.statement),$u(Ae.statement)&&!Lt?Fo():hS(Ae,Ae.statement,Ae.expression),at(Ae,Ae.statement.end),py()}function gi(Ae){at(Ae,Ae.pos),qF(Ae,Ae.statement)}function _i(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo();let fn=Fe(21,Et,qo,Ae);wa(Ae.initializer),fn=Fe(27,Ae.initializer?Ae.initializer.end:fn,qo,Ae),g9(Ae.condition),fn=Fe(27,Ae.condition?Ae.condition.end:fn,qo,Ae),g9(Ae.incrementor),Fe(22,Ae.incrementor?Ae.incrementor.end:fn,qo,Ae),qF(Ae,Ae.statement)}function ys(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),wa(Ae.initializer),Fo(),Fe(103,Ae.initializer.end,hu,Ae),Fo(),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function $s(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo(),JU(Ae.awaitModifier),Fe(21,Et,qo,Ae),wa(Ae.initializer),Fo(),Fe(165,Ae.initializer.end,hu,Ae),Fo(),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function wa(Ae){Ae!==void 0&&(Ae.kind===262?Cs(Ae):Pr(Ae))}function pc(Ae){Fe(88,Ae.pos,hu,Ae),IS(Ae.label),py()}function ul(Ae){Fe(83,Ae.pos,hu,Ae),IS(Ae.label),py()}function Fe(Ae,Et,fn,qi,ic){let Oc=$l(qi),zl=Oc&&Oc.kind===qi.kind,Vc=Et;if(zl&&Ee&&(Et=Yu(Ee.text,Et)),zl&&qi.pos!==Vc){let _A=ic&&Ee&&!yE(Vc,Et,Ee);_A&&uk(),Ux(Vc),_A&&lR()}if(!re&&(Ae===19||Ae===20)?Et=eW(Ae,Et,fn,qi):Et=tW(Ae,fn,Et),zl&&qi.end!==Et){let _A=qi.kind===295;Xw(Et,!_A,_A)}return Et}function gr(Ae){return Ae.kind===2||!!Ae.hasTrailingNewLine}function Ln(Ae){if(!Ee)return!1;let Et=fE(Ee.text,Ae.pos);if(Et){let fn=$l(Ae);if(fn&&gI(fn.parent))return!0}return jt(Et,gr)||jt(k3(Ae),gr)?!0:ly(Ae)?Ae.pos!==Ae.expression.pos&&jt(n2(Ee.text,Ae.expression.pos),gr)?!0:Ln(Ae.expression):!1}function bs(Ae){if(!jn)switch(Ae.kind){case 356:if(Ln(Ae)){let Et=$l(Ae);if(Et&&gI(Et)){let fn=me.createParenthesizedExpression(Ae.expression);return ua(fn,Ae),gn(fn,Et),fn}return me.createParenthesizedExpression(Ae)}return me.updatePartiallyEmittedExpression(Ae,bs(Ae.expression));case 212:return me.updatePropertyAccessExpression(Ae,bs(Ae.expression),Ae.name);case 213:return me.updateElementAccessExpression(Ae,bs(Ae.expression),Ae.argumentExpression);case 214:return me.updateCallExpression(Ae,bs(Ae.expression),Ae.typeArguments,Ae.arguments);case 216:return me.updateTaggedTemplateExpression(Ae,bs(Ae.tag),Ae.typeArguments,Ae.template);case 226:return me.updatePostfixUnaryExpression(Ae,bs(Ae.operand));case 227:return me.updateBinaryExpression(Ae,bs(Ae.left),Ae.operatorToken,Ae.right);case 228:return me.updateConditionalExpression(Ae,bs(Ae.condition),Ae.questionToken,Ae.whenTrue,Ae.colonToken,Ae.whenFalse);case 235:return me.updateAsExpression(Ae,bs(Ae.expression),Ae.type);case 239:return me.updateSatisfiesExpression(Ae,bs(Ae.expression),Ae.type);case 236:return me.updateNonNullExpression(Ae,bs(Ae.expression))}return Ae}function Xl(Ae){return bs(ks.parenthesizeExpressionForDisallowedComma(Ae))}function eg(Ae){Fe(107,Ae.pos,hu,Ae),g9(Ae.expression&&bs(Ae.expression),bs),py()}function jl(Ae){let Et=Fe(118,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function Eu(Ae){let Et=Fe(109,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),Fo(),Cs(Ae.caseBlock)}function Df(Ae){Cs(Ae.label),Fe(59,Ae.label.end,qo,Ae),Fo(),Cs(Ae.statement)}function Jg(Ae){Fe(111,Ae.pos,hu,Ae),g9(bs(Ae.expression),bs),py()}function MC(Ae){Fe(113,Ae.pos,hu,Ae),Fo(),Cs(Ae.tryBlock),Ae.catchClause&&(hS(Ae,Ae.tryBlock,Ae.catchClause),Cs(Ae.catchClause)),Ae.finallyBlock&&(hS(Ae,Ae.catchClause||Ae.tryBlock,Ae.finallyBlock),Fe(98,(Ae.catchClause||Ae.tryBlock).end,hu,Ae),Fo(),Cs(Ae.finallyBlock))}function S1(Ae){eW(89,Ae.pos,hu),py()}function fS(Ae){var Et,fn,qi;Cs(Ae.name),Cs(Ae.exclamationToken),YB(Ae.type),p5(Ae.initializer,((Et=Ae.type)==null?void 0:Et.end)??((qi=(fn=Ae.name.emitNode)==null?void 0:fn.typeNode)==null?void 0:qi.end)??Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function bv(Ae){if(Sd(Ae))hu("await"),Fo(),hu("using");else{let Et=rS(Ae)?"let":rI(Ae)?"const":tI(Ae)?"using":"var";hu(Et)}Fo(),fa(Ae,Ae.declarations,528)}function XF(Ae){o9(Ae)}function o9(Ae){dy(Ae,Ae.modifiers,!1),hu("function"),Cs(Ae.asteriskToken),Fo(),Tu(Ae.name),My(Ae,WB,sk)}function My(Ae,Et,fn){let qi=tA(Ae)&131072;qi&&uk(),Qw(Ae),F(Ae.parameters,HC),Et(Ae),fn(Ae),tZ(Ae),qi&&lR()}function sk(Ae){let Et=Ae.body;Et?br(Et):py()}function aR(Ae){py()}function WB(Ae){Yx(Ae,Ae.typeParameters),f5(Ae,Ae.parameters),YB(Ae.type)}function UP(Ae){if(tA(Ae)&1)return!0;if(Ae.multiLine||!sp(Ae)&&Ee&&!S3(Ae,Ee)||d9(Ae,Nc(Ae.statements),2)||iq(Ae,li(Ae.statements),2,Ae.statements))return!1;let Et;for(let fn of Ae.statements){if(h5(Et,fn,2)>0)return!1;Et=fn}return!0}function br(Ae){HC(Ae),S?.(Ae),Fo(),qo("{"),uk();let Et=UP(Ae)?sn:ei;DQ(Ae,Ae.statements,Et),lR(),eW(20,Ae.statements.end,qo,Ae),R?.(Ae)}function sn(Ae){ei(Ae,!0)}function ei(Ae,Et){let fn=Hx(Ae.statements),qi=Pt.getTextPos();bn(Ae),fn===0&&qi===Pt.getTextPos()&&Et?(lR(),fa(Ae,Ae.statements,768),uk()):fa(Ae,Ae.statements,1,void 0,fn)}function is(Ae){Qs(Ae)}function Qs(Ae){dy(Ae,Ae.modifiers,!0),Fe(86,Av(Ae).pos,hu,Ae),Ae.name&&(Fo(),Tu(Ae.name));let Et=tA(Ae)&131072;Et&&uk(),Yx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,0),Fo(),qo("{"),Qw(Ae),F(Ae.members,RQ),fa(Ae,Ae.members,129),tZ(Ae),qo("}"),Et&&lR()}function Oo(Ae){dy(Ae,Ae.modifiers,!1),hu("interface"),Fo(),Cs(Ae.name),Yx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,512),Fo(),qo("{"),Qw(Ae),F(Ae.members,RQ),fa(Ae,Ae.members,129),tZ(Ae),qo("}")}function Os(Ae){dy(Ae,Ae.modifiers,!1),hu("type"),Fo(),Cs(Ae.name),Yx(Ae,Ae.typeParameters),Fo(),qo("="),Fo(),Cs(Ae.type),py()}function co(Ae){dy(Ae,Ae.modifiers,!1),hu("enum"),Fo(),Cs(Ae.name),Fo(),qo("{"),fa(Ae,Ae.members,145),qo("}")}function Yc(Ae){dy(Ae,Ae.modifiers,!1),~Ae.flags&2048&&(hu(Ae.flags&32?"namespace":"module"),Fo()),Cs(Ae.name);let Et=Ae.body;if(!Et)return py();for(;Et&&xh(Et);)qo("."),Cs(Et.name),Et=Et.body;Fo(),Cs(Et)}function tu(Ae){Qw(Ae),F(Ae.statements,HC),Pb(Ae,nW(Ae)),tZ(Ae)}function $a(Ae){Fe(19,Ae.pos,qo,Ae),fa(Ae,Ae.clauses,129),Fe(20,Ae.clauses.end,qo,Ae,!0)}function ru(Ae){dy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,hu,Ae),Fo(),Ae.isTypeOnly&&(Fe(156,Ae.pos,hu,Ae),Fo()),Cs(Ae.name),Fo(),Fe(64,Ae.name.end,qo,Ae),Fo(),gl(Ae.moduleReference),py()}function gl(Ae){Ae.kind===80?Pr(Ae):Cs(Ae)}function kf(Ae){dy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,hu,Ae),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,hu,Ae),Fo()),Pr(Ae.moduleSpecifier),Ae.attributes&&IS(Ae.attributes),py()}function Wb(Ae){Ae.phaseModifier!==void 0&&(Fe(Ae.phaseModifier,Ae.pos,hu,Ae),Fo()),Cs(Ae.name),Ae.name&&Ae.namedBindings&&(Fe(28,Ae.name.end,qo,Ae),Fo()),Cs(Ae.namedBindings)}function OB(Ae){let Et=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,Et,hu,Ae),Fo(),Cs(Ae.name)}function p_(Ae){Mx(Ae)}function MB(Ae){a5(Ae)}function v1(Ae){let Et=Fe(95,Ae.pos,hu,Ae);Fo(),Ae.isExportEquals?Fe(64,Et,vE,Ae):Fe(90,Et,hu,Ae),Fo(),Pr(Ae.expression,Ae.isExportEquals?ks.getParenthesizeRightSideOfBinaryForOperator(64):ks.parenthesizeExpressionOfExportDefault),py()}function s5(Ae){dy(Ae,Ae.modifiers,!1);let Et=Fe(95,Ae.pos,hu,Ae);if(Fo(),Ae.isTypeOnly&&(Et=Fe(156,Et,hu,Ae),Fo()),Ae.exportClause?Cs(Ae.exportClause):Et=Fe(42,Et,qo,Ae),Ae.moduleSpecifier){Fo();let fn=Ae.exportClause?Ae.exportClause.end:Et;Fe(161,fn,hu,Ae),Fo(),Pr(Ae.moduleSpecifier)}Ae.attributes&&IS(Ae.attributes),py()}function GN(Ae){qo("{"),Fo(),hu(Ae.token===132?"assert":"with"),qo(":"),Fo();let Et=Ae.elements;fa(Ae,Et,526226),Fo(),qo("}")}function ok(Ae){Fe(Ae.token,Ae.pos,hu,Ae),Fo();let Et=Ae.elements;fa(Ae,Et,526226)}function o5(Ae){Cs(Ae.name),qo(":"),Fo();let Et=Ae.value;if(!(tA(Et)&1024)){let fn=DB(Et);Xw(fn.pos)}Cs(Et)}function ak(Ae){let Et=Fe(95,Ae.pos,hu,Ae);Fo(),Et=Fe(130,Et,hu,Ae),Fo(),Et=Fe(145,Et,hu,Ae),Fo(),Cs(Ae.name),py()}function gse(Ae){let Et=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,Et,hu,Ae),Fo(),Cs(Ae.name)}function hpe(Ae){Mx(Ae)}function Ase(Ae){a5(Ae)}function Mx(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function a5(Ae){Ae.isTypeOnly&&(hu("type"),Fo()),Ae.propertyName&&(Cs(Ae.propertyName),Fo(),Fe(130,Ae.propertyName.end,hu,Ae),Fo()),Cs(Ae.name)}function WU(Ae){hu("require"),qo("("),Pr(Ae.expression),qo(")")}function a9(Ae){Cs(Ae.openingElement),fa(Ae,Ae.children,262144),Cs(Ae.closingElement)}function OU(Ae){qo("<"),SQ(Ae.tagName),Ev(Ae,Ae.typeArguments),Fo(),Cs(Ae.attributes),qo("/>")}function qz(Ae){Cs(Ae.openingFragment),fa(Ae,Ae.children,262144),Cs(Ae.closingFragment)}function mpe(Ae){if(qo("<"),$T(Ae)){let Et=rW(Ae.tagName,Ae);SQ(Ae.tagName),Ev(Ae,Ae.typeArguments),Ae.attributes.properties&&Ae.attributes.properties.length>0&&Fo(),Cs(Ae.attributes),sq(Ae.attributes,Ae),Mb(Et)}qo(">")}function MU(Ae){Pt.writeLiteral(Ae.text)}function $z(Ae){qo("")}function c5(Ae){fa(Ae,Ae.properties,262656)}function dse(Ae){Cs(Ae.name),gA("=",qo,Ae.initializer,Pn)}function HU(Ae){qo("{..."),Pr(Ae.expression),qo("}")}function eq(Ae){let Et=!1;return dF(Ee?.text||"",Ae+1,()=>Et=!0),Et}function EQ(Ae){let Et=!1;return GD(Ee?.text||"",Ae+1,()=>Et=!0),Et}function KP(Ae){return eq(Ae)||EQ(Ae)}function tq(Ae){var Et;if(Ae.expression||!jn&&!sp(Ae)&&KP(Ae.pos)){let fn=Ee&&!sp(Ae)&&Ra(Ee,Ae.pos).line!==Ra(Ee,Ae.end).line;fn&&Pt.increaseIndent();let qi=Fe(19,Ae.pos,qo,Ae);Cs(Ae.dotDotDotToken),Pr(Ae.expression),Fe(20,((Et=Ae.expression)==null?void 0:Et.end)||qi,qo,Ae),fn&&Pt.decreaseIndent()}}function rq(Ae){Tu(Ae.namespace),qo(":"),Tu(Ae.name)}function SQ(Ae){Ae.kind===80?Pr(Ae):Cs(Ae)}function jP(Ae){Fe(84,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma),JF(Ae,Ae.statements,Ae.expression.end)}function c9(Ae){let Et=Fe(90,Ae.pos,hu,Ae);JF(Ae,Ae.statements,Et)}function JF(Ae,Et,fn){let qi=Et.length===1&&(!Ee||sp(Ae)||sp(Et[0])||M7(Ae,Et[0],Ee)),ic=163969;qi?(eW(59,fn,qo,Ae),Fo(),ic&=-130):Fe(59,fn,qo,Ae),fa(Ae,Et,ic)}function UF(Ae){Fo(),tW(Ae.token,hu),Fo(),fa(Ae,Ae.types,528)}function KF(Ae){let Et=Fe(85,Ae.pos,hu,Ae);Fo(),Ae.variableDeclaration&&(Fe(21,Et,qo,Ae),Cs(Ae.variableDeclaration),Fe(22,Ae.variableDeclaration.end,qo,Ae),Fo()),Cs(Ae.block)}function zP(Ae){Cs(Ae.name),qo(":"),Fo();let Et=Ae.initializer;if(!(tA(Et)&1024)){let fn=DB(Et);Xw(fn.pos)}Pr(Et,ks.parenthesizeExpressionForDisallowedComma)}function l5(Ae){Cs(Ae.name),Ae.objectAssignmentInitializer&&(Fo(),qo("="),Fo(),Pr(Ae.objectAssignmentInitializer,ks.parenthesizeExpressionForDisallowedComma))}function YU(Ae){Ae.expression&&(Fe(26,Ae.pos,qo,Ae),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma))}function u5(Ae){Cs(Ae.name),p5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function PA(Ae){if(Gt("/**"),Ae.comment){let Et=pJ(Ae.comment);if(Et){let fn=Et.split(/\r\n?|\n/);for(let qi of fn)G0(),Fo(),qo("*"),Fo(),Gt(qi)}}Ae.tags&&(Ae.tags.length===1&&Ae.tags[0].kind===345&&!Ae.comment?(Fo(),Cs(Ae.tags[0])):fa(Ae,Ae.tags,33)),Fo(),Gt("*/")}function QU(Ae){HB(Ae.tagName),A5(Ae.typeExpression),Mw(Ae.comment)}function pse(Ae){HB(Ae.tagName),Cs(Ae.name),Mw(Ae.comment)}function jF(Ae){HB(Ae.tagName),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,hu,Ae),Fo()),Pr(Ae.moduleSpecifier),Ae.attributes&&IS(Ae.attributes),Mw(Ae.comment)}function zF(Ae){Fo(),qo("{"),Cs(Ae.name),qo("}")}function ck(Ae){HB(Ae.tagName),Fo(),qo("{"),Cs(Ae.class),qo("}"),Mw(Ae.comment)}function bf(Ae){HB(Ae.tagName),A5(Ae.constraint),Fo(),fa(Ae,Ae.typeParameters,528),Mw(Ae.comment)}function l0(Ae){HB(Ae.tagName),Ae.typeExpression&&(Ae.typeExpression.kind===310?A5(Ae.typeExpression):(Fo(),qo("{"),Gt("Object"),Ae.typeExpression.isArrayType&&(qo("["),qo("]")),qo("}"))),Ae.fullName&&(Fo(),Cs(Ae.fullName)),Mw(Ae.comment),Ae.typeExpression&&Ae.typeExpression.kind===323&&Ay(Ae.typeExpression)}function Ob(Ae){HB(Ae.tagName),Ae.name&&(Fo(),Cs(Ae.name)),Mw(Ae.comment),lk(Ae.typeExpression)}function u0(Ae){Mw(Ae.comment),lk(Ae.typeExpression)}function g5(Ae){HB(Ae.tagName),Mw(Ae.comment)}function Ay(Ae){fa(Ae,me.createNodeArray(Ae.jsDocPropertyTags),33)}function lk(Ae){Ae.typeParameters&&fa(Ae,me.createNodeArray(Ae.typeParameters),33),Ae.parameters&&fa(Ae,me.createNodeArray(Ae.parameters),33),Ae.type&&(G0(),Fo(),qo("*"),Fo(),Cs(Ae.type))}function Hy(Ae){HB(Ae.tagName),A5(Ae.typeExpression),Fo(),Ae.isBracketed&&qo("["),Cs(Ae.name),Ae.isBracketed&&qo("]"),Mw(Ae.comment)}function HB(Ae){qo("@"),Cs(Ae)}function Mw(Ae){let Et=pJ(Ae);Et&&(Fo(),Gt(Et))}function A5(Ae){Ae&&(Fo(),qo("{"),Cs(Ae.type),qo("}"))}function d5(Ae){G0();let Et=Ae.statements;if(Et.length===0||!nS(Et[0])||sp(Et[0])){DQ(Ae,Et,vQ);return}vQ(Ae)}function Cpe(Ae){l9(!!Ae.hasNoDefaultLib,Ae.syntheticFileReferences||[],Ae.syntheticTypeReferences||[],Ae.syntheticLibReferences||[])}function fse(Ae){Ae.isDeclarationFile&&l9(Ae.hasNoDefaultLib,Ae.referencedFiles,Ae.typeReferenceDirectives,Ae.libReferenceDirectives)}function l9(Ae,Et,fn,qi){if(Ae&&($P('/// '),G0()),Ee&&Ee.moduleName&&($P(`/// `),G0()),Ee&&Ee.amdDependencies)for(let Oc of Ee.amdDependencies)Oc.name?$P(`/// `):$P(`/// `),G0();function ic(Oc,zl){for(let Vc of zl){let _A=Vc.resolutionMode?`resolution-mode="${Vc.resolutionMode===99?"import":"require"}" `:"",Lh=Vc.preserve?'preserve="true" ':"";$P(`/// `),G0()}}ic("path",Et),ic("types",fn),ic("lib",qi)}function vQ(Ae){let Et=Ae.statements;Qw(Ae),F(Ae.statements,HC),bn(Ae);let fn=Se(Et,qi=>!nS(qi));fse(Ae),fa(Ae,Et,1,void 0,fn===-1?Et.length:fn),tZ(Ae)}function Sr(Ae){let Et=tA(Ae);!(Et&1024)&&Ae.pos!==Ae.expression.pos&&Xw(Ae.expression.pos),Pr(Ae.expression),!(Et&2048)&&Ae.end!==Ae.expression.end&&Ux(Ae.expression.end)}function XU(Ae){sa(Ae,Ae.elements,528,void 0)}function Hx(Ae,Et,fn){let qi=!!Et;for(let ic=0;ic=fn.length||zl===0;if(_A&&qi&32768){T?.(fn),W?.(fn);return}qi&15360&&(qo(KBs(qi)),_A&&fn&&Xw(fn.pos,!0)),T?.(fn),_A?qi&1&&!(Lt&&(!Et||Ee&&S3(Et,Ee)))?G0():qi&256&&!(qi&524288)&&Fo():UU(Ae,Et,fn,qi,ic,Oc,zl,fn.hasTrailingComma,fn),W?.(fn),qi&15360&&(_A&&fn&&Ux(fn.end),qo(jBs(qi)))}function UU(Ae,Et,fn,qi,ic,Oc,zl,Vc,_A){let Lh=(qi&262144)===0,g0=Lh,Yy=d9(Et,fn[Oc],qi);Yy?(G0(Yy),g0=!1):qi&256&&Fo(),qi&128&&uk();let B5=ews(Ae,ic),Qy,aW=!1;for(let h9=0;h90){if(qi&131||(uk(),aW=!0),g0&&qi&60&&!wB(Jw.pos)){let xQ=DB(Jw);Xw(xQ.pos,!!(qi&512),!0)}G0(m9),g0=!1}else Qy&&qi&512&&Fo()}if(g0){let m9=DB(Jw);Xw(m9.pos)}else g0=Lh;Ke=Jw.pos,B5(Jw,Ae,ic,h9),aW&&(lR(),aW=!1),Qy=Jw}let Iq=Qy?tA(Qy):0,QB=jn||!!(Iq&2048),Hf=Vc&&qi&64&&qi&16;Hf&&(Qy&&!QB?Fe(28,Qy.end,qo,Qy):qo(",")),Qy&&(Et?Et.end:-1)!==Qy.end&&qi&60&&!QB&&Ux(Hf&&_A?.end?_A.end:Qy.end),qi&128&&lR();let cK=iq(Et,fn[Oc+zl-1],qi,_A);cK?G0(cK):qi&2097408&&Fo()}function $F(Ae){Pt.writeLiteral(Ae)}function TQ(Ae){Pt.writeStringLiteral(Ae)}function Ise(Ae){Pt.write(Ae)}function _pe(Ae,Et){Pt.writeSymbol(Ae,Et)}function qo(Ae){Pt.writePunctuation(Ae)}function py(){Pt.writeTrailingSemicolon(";")}function hu(Ae){Pt.writeKeyword(Ae)}function vE(Ae){Pt.writeOperator(Ae)}function KU(Ae){Pt.writeParameter(Ae)}function $P(Ae){Pt.writeComment(Ae)}function Fo(){Pt.writeSpace(" ")}function hse(Ae){Pt.writeProperty(Ae)}function nq(Ae){Pt.nonEscapingWrite?Pt.nonEscapingWrite(Ae):Pt.write(Ae)}function G0(Ae=1){for(let Et=0;Et0)}function uk(){Pt.increaseIndent()}function lR(){Pt.decreaseIndent()}function eW(Ae,Et,fn,qi){return Dt?tW(Ae,fn,Et):oK(qi,Ae,fn,Et,tW)}function jU(Ae,Et){V&&V(Ae),Et(Vi(Ae.kind)),M&&M(Ae)}function tW(Ae,Et,fn){let qi=Vi(Ae);return Et(qi),fn<0?fn:fn+qi.length}function hS(Ae,Et,fn){if(tA(Ae)&1)Fo();else if(Lt){let qi=ZN(Ae,Et,fn);qi?G0(qi):Fo()}else G0()}function Yw(Ae){let Et=Ae.split(/\r\n?|\n/),fn=xre(Et);for(let qi of Et){let ic=fn?qi.slice(fn):qi;ic.length&&(G0(),Gt(ic))}}function Sv(Ae,Et){Ae?(uk(),G0(Ae)):Et&&Fo()}function Mb(Ae,Et){Ae&&lR(),Et&&lR()}function d9(Ae,Et,fn){if(fn&2||Lt){if(fn&65536)return 1;if(Et===void 0)return!Ae||Ee&&S3(Ae,Ee)?0:1;if(Et.pos===Ke||Et.kind===12)return 0;if(Ee&&Ae&&!wB(Ae.pos)&&!sp(Et)&&(!Et.parent||Dd(Et.parent)===Dd(Ae)))return Lt?m5(qi=>UZe(Et.pos,Ae.pos,Ee,qi)):M7(Ae,Et,Ee)?0:1;if(eZ(Et,fn))return 1}return fn&1?1:0}function h5(Ae,Et,fn){if(fn&2||Lt){if(Ae===void 0||Et===void 0||Et.kind===12)return 0;if(Ee&&!sp(Ae)&&!sp(Et))return Lt&&F0(Ae,Et)?m5(qi=>v3(Ae,Et,Ee,qi)):!Lt&&gq(Ae,Et)?kne(Ae,Et,Ee)?0:1:fn&65536?1:0;if(eZ(Ae,fn)||eZ(Et,fn))return 1}else if(D3(Et))return 1;return fn&1?1:0}function iq(Ae,Et,fn,qi){if(fn&2||Lt){if(fn&65536)return 1;if(Et===void 0)return!Ae||Ee&&S3(Ae,Ee)?0:1;if(Ee&&Ae&&!wB(Ae.pos)&&!sp(Et)&&(!Et.parent||Et.parent===Ae)){if(Lt){let ic=qi&&!wB(qi.end)?qi.end:Et.end;return m5(Oc=>obe(ic,Ae.end,Ee,Oc))}return QZe(Ae,Et,Ee)?0:1}if(eZ(Et,fn))return 1}return fn&1&&!(fn&131072)?1:0}function m5(Ae){pe.assert(!!Lt);let Et=Ae(!0);return Et===0?Ae(!1):Et}function rW(Ae,Et){let fn=Lt&&d9(Et,Ae,0);return fn&&Sv(fn,!1),!!fn}function sq(Ae,Et){let fn=Lt&&iq(Et,Ae,0,void 0);fn&&G0(fn)}function eZ(Ae,Et){if(sp(Ae)){let fn=D3(Ae);return fn===void 0?(Et&65536)!==0:fn}return(Et&65536)!==0}function ZN(Ae,Et,fn){return tA(Ae)&262144?0:(Ae=C5(Ae),Et=C5(Et),fn=C5(fn),D3(fn)?1:Ee&&!sp(Ae)&&!sp(Et)&&!sp(fn)?Lt?m5(qi=>v3(Et,fn,Ee,qi)):kne(Et,fn,Ee)?0:1:0)}function nW(Ae){return Ae.statements.length===0&&(!Ee||kne(Ae,Ae,Ee))}function C5(Ae){for(;Ae.kind===218&&sp(Ae);)Ae=Ae.expression;return Ae}function p9(Ae,Et){if(kp(Ae)||TL(Ae))return _5(Ae);if(Zg(Ae)&&Ae.textSourceNode)return p9(Ae.textSourceNode,Et);let fn=Ee,qi=!!fn&&!!Ae.parent&&!sp(Ae);if(_w(Ae)){if(!qi||ms(Ae)!==Dd(fn))return Vo(Ae)}else if(eR(Ae)){if(!qi||ms(Ae)!==Dd(fn))return lz(Ae)}else if(pe.assertNode(Ae,wL),!qi)return Ae.text;return mF(fn,Ae,Et)}function iW(Ae,Et=Ee,fn,qi){if(Ae.kind===11&&Ae.textSourceNode){let Oc=Ae.textSourceNode;if(Ir(Oc)||p(Oc)||mC(Oc)||eR(Oc)){let zl=mC(Oc)?Oc.text:p9(Oc);return qi?`"${Wye(zl)}"`:fn||tA(Ae)&16777216?`"${YT(zl)}"`:`"${Ene(zl)}"`}else return iW(Oc,ms(Oc),fn,qi)}let ic=(fn?1:0)|(qi?2:0)|(s.terminateUnterminatedLiterals?4:0)|(s.target&&s.target>=8?8:0);return Sge(Ae,Et,ic)}function Qw(Ae){Ye.push(Tt),Tt=0,_t.push(Rt),!(Ae&&tA(Ae)&1048576)&&(ot.push(Qe),Qe=0,Ue.push($e),$e=void 0,mt.push(ht))}function tZ(Ae){Tt=Ye.pop(),Rt=_t.pop(),!(Ae&&tA(Ae)&1048576)&&(Qe=ot.pop(),$e=Ue.pop(),ht=mt.pop())}function Qx(Ae){(!ht||ht===li(mt))&&(ht=new Set),ht.add(Ae)}function sW(Ae){(!Rt||Rt===li(_t))&&(Rt=new Set),Rt.add(Ae)}function HC(Ae){if(Ae)switch(Ae.kind){case 242:F(Ae.statements,HC);break;case 257:case 255:case 247:case 248:HC(Ae.statement);break;case 246:HC(Ae.thenStatement),HC(Ae.elseStatement);break;case 249:case 251:case 250:HC(Ae.initializer),HC(Ae.statement);break;case 256:HC(Ae.caseBlock);break;case 270:F(Ae.clauses,HC);break;case 297:case 298:F(Ae.statements,HC);break;case 259:HC(Ae.tryBlock),HC(Ae.catchClause),HC(Ae.finallyBlock);break;case 300:HC(Ae.variableDeclaration),HC(Ae.block);break;case 244:HC(Ae.declarationList);break;case 262:F(Ae.declarations,HC);break;case 261:case 170:case 209:case 264:Xx(Ae.name);break;case 263:Xx(Ae.name),tA(Ae)&1048576&&(F(Ae.parameters,HC),HC(Ae.body));break;case 207:case 208:F(Ae.elements,HC);break;case 273:HC(Ae.importClause);break;case 274:Xx(Ae.name),HC(Ae.namedBindings);break;case 275:Xx(Ae.name);break;case 281:Xx(Ae.name);break;case 276:F(Ae.elements,HC);break;case 277:Xx(Ae.propertyName||Ae.name);break}}function RQ(Ae){if(Ae)switch(Ae.kind){case 304:case 305:case 173:case 172:case 175:case 174:case 178:case 179:Xx(Ae.name);break}}function Xx(Ae){Ae&&(kp(Ae)||TL(Ae)?_5(Ae):Nu(Ae)&&HC(Ae))}function _5(Ae){let Et=Ae.emitNode.autoGenerate;if((Et.flags&7)===4)return zU(pEe(Ae),p(Ae),Et.flags,Et.prefix,Et.suffix);{let fn=Et.id;return Ze[fn]||(Ze[fn]=vv(Ae))}}function zU(Ae,Et,fn,qi,ic){let Oc=rd(Ae),zl=Et?Te:Ne;return zl[Oc]||(zl[Oc]=Hb(Ae,Et,fn??0,Eie(qi,_5),Eie(ic)))}function Jx(Ae,Et){return oq(Ae,Et)&&!mse(Ae,Et)&&!We.has(Ae)}function mse(Ae,Et){let fn,qi;if(Et?(fn=Rt,qi=_t):(fn=ht,qi=mt),fn?.has(Ae))return!0;for(let ic=qi.length-1;ic>=0;ic--)if(fn!==qi[ic]&&(fn=qi[ic],fn?.has(Ae)))return!0;return!1}function oq(Ae,Et){return Ee?u7(Ee,Ae,g):!0}function aq(Ae,Et){for(let fn=Et;fn&&EP(fn,Et);fn=fn.nextContainer)if(WI(fn)&&fn.locals){let qi=fn.locals.get(Ap(Ae));if(qi&&qi.flags&3257279)return!1}return!0}function ype(Ae){switch(Ae){case"":return Qe;case"#":return Tt;default:return $e?.get(Ae)??0}}function cq(Ae,Et){switch(Ae){case"":Qe=Et;break;case"#":Tt=Et;break;default:$e??($e=new Map),$e.set(Ae,Et);break}}function y5(Ae,Et,fn,qi,ic){qi.length>0&&qi.charCodeAt(0)===35&&(qi=qi.slice(1));let Oc=M3(fn,qi,"",ic),zl=ype(Oc);if(Ae&&!(zl&Ae)){let _A=M3(fn,qi,Ae===268435456?"_i":"_n",ic);if(Jx(_A,fn))return zl|=Ae,fn?sW(_A):Et&&Qx(_A),cq(Oc,zl),_A}for(;;){let Vc=zl&268435455;if(zl++,Vc!==8&&Vc!==13){let _A=Vc<26?"_"+String.fromCharCode(97+Vc):"_"+(Vc-26),Lh=M3(fn,qi,_A,ic);if(Jx(Lh,fn))return fn?sW(Lh):Et&&Qx(Lh),cq(Oc,zl),Lh}}}function rZ(Ae,Et=Jx,fn,qi,ic,Oc,zl){if(Ae.length>0&&Ae.charCodeAt(0)===35&&(Ae=Ae.slice(1)),Oc.length>0&&Oc.charCodeAt(0)===35&&(Oc=Oc.slice(1)),fn){let _A=M3(ic,Oc,Ae,zl);if(Et(_A,ic))return ic?sW(_A):qi?Qx(_A):We.add(_A),_A}Ae.charCodeAt(Ae.length-1)!==95&&(Ae+="_");let Vc=1;for(;;){let _A=M3(ic,Oc,Ae+Vc,zl);if(Et(_A,ic))return ic?sW(_A):qi?Qx(_A):We.add(_A),_A;Vc++}}function Cse(Ae){return rZ(Ae,oq,!0,!1,!1,"","")}function b5(Ae){let Et=p9(Ae.name);return aq(Et,Gs(Ae,WI))?Et:rZ(Et,Jx,!1,!1,!1,"","")}function qU(Ae){let Et=LY(Ae),fn=Zg(Et)?vw(Et.text):"module";return rZ(fn,Jx,!1,!1,!1,"","")}function Zh(){return rZ("default",Jx,!1,!1,!1,"","")}function YC(){return rZ("class",Jx,!1,!1,!1,"","")}function lq(Ae,Et,fn,qi){return Ir(Ae.name)?zU(Ae.name,Et):y5(0,!1,Et,fn,qi)}function Hb(Ae,Et,fn,qi,ic){switch(Ae.kind){case 80:case 81:return rZ(p9(Ae),Jx,!!(fn&16),!!(fn&8),Et,qi,ic);case 268:case 267:return pe.assert(!qi&&!ic&&!Et),b5(Ae);case 273:case 279:return pe.assert(!qi&&!ic&&!Et),qU(Ae);case 263:case 264:{pe.assert(!qi&&!ic&&!Et);let Oc=Ae.name;return Oc&&!kp(Oc)?Hb(Oc,!1,fn,qi,ic):Zh()}case 278:return pe.assert(!qi&&!ic&&!Et),Zh();case 232:return pe.assert(!qi&&!ic&&!Et),YC();case 175:case 178:case 179:return lq(Ae,Et,qi,ic);case 168:return y5(0,!0,Et,qi,ic);default:return y5(0,!1,Et,qi,ic)}}function vv(Ae){let Et=Ae.emitNode.autoGenerate,fn=Eie(Et.prefix,_5),qi=Eie(Et.suffix);switch(Et.flags&7){case 1:return y5(0,!!(Et.flags&8),p(Ae),fn,qi);case 2:return pe.assertNode(Ae,Ir),y5(268435456,!!(Et.flags&8),!1,fn,qi);case 3:return rZ(Vo(Ae),Et.flags&32?oq:Jx,!!(Et.flags&16),!!(Et.flags&8),p(Ae),fn,qi)}return pe.fail(`Unsupported GeneratedIdentifierKind: ${pe.formatEnum(Et.flags&7,od,!0)}.`)}function NQ(Ae,Et){let fn=Dn(2,Ae,Et),qi=st,ic=ir,Oc=zt;uR(Et),fn(Ae,Et),oW(Et,qi,ic,Oc)}function uR(Ae){let Et=tA(Ae),fn=DB(Ae);f9(Ae,Et,fn.pos,fn.end),Et&4096&&(jn=!0)}function oW(Ae,Et,fn,qi){let ic=tA(Ae),Oc=DB(Ae);ic&4096&&(jn=!1),uq(Ae,ic,Oc.pos,Oc.end,Et,fn,qi);let zl=WLe(Ae);zl&&uq(Ae,ic,zl.pos,zl.end,Et,fn,qi)}function f9(Ae,Et,fn,qi){An(),mn=!1;let ic=fn<0||(Et&1024)!==0||Ae.kind===12,Oc=qi<0||(Et&2048)!==0||Ae.kind===12;(fn>0||qi>0)&&fn!==qi&&(ic||BE(fn,Ae.kind!==354),(!ic||fn>=0&&Et&1024)&&(st=fn),(!Oc||qi>=0&&Et&2048)&&(ir=qi,Ae.kind===262&&(zt=qi))),F(k3(Ae),bpe),si()}function uq(Ae,Et,fn,qi,ic,Oc,zl){An();let Vc=qi<0||(Et&2048)!==0||Ae.kind===12;F(hU(Ae),TI),(fn>0||qi>0)&&fn!==qi&&(st=ic,ir=Oc,zt=zl,!Vc&&Ae.kind!==354&&Aq(qi)),si()}function bpe(Ae){(Ae.hasLeadingNewline||Ae.kind===2)&&Pt.writeLine(),_se(Ae),Ae.hasTrailingNewLine||Ae.kind===2?Pt.writeLine():Pt.writeSpace(" ")}function TI(Ae){Pt.isAtStartOfLine()||Pt.writeSpace(" "),_se(Ae),Ae.hasTrailingNewLine&&Pt.writeLine()}function _se(Ae){let Et=$U(Ae),fn=Ae.kind===3?cA(Et):void 0;rU(Et,fn,Pt,0,Et.length,ge)}function $U(Ae){return Ae.kind===3?`/*${Ae.text}*/`:`//${Ae.text}`}function DQ(Ae,Et,fn){An();let{pos:qi,end:ic}=Et,Oc=tA(Ae),zl=qi<0||(Oc&1024)!==0,Vc=jn||ic<0||(Oc&2048)!==0;zl||B1(Et),si(),Oc&4096&&!jn?(jn=!0,fn(Ae),jn=!1):fn(Ae),An(),Vc||(BE(Et.end,!0),mn&&!Pt.isAtStartOfLine()&&Pt.writeLine()),si()}function gq(Ae,Et){return Ae=Dd(Ae),Ae.parent&&Ae.parent===Dd(Et).parent}function F0(Ae,Et){if(Et.pos-1&&qi.indexOf(Et)===ic+1}function BE(Ae,Et){mn=!1,Et?Ae===0&&Ee?.isDeclarationFile?pq(Ae,E5):pq(Ae,tK):Ae===0&&pq(Ae,eK)}function eK(Ae,Et,fn,qi,ic){iK(Ae,Et)&&tK(Ae,Et,fn,qi,ic)}function E5(Ae,Et,fn,qi,ic){iK(Ae,Et)||tK(Ae,Et,fn,qi,ic)}function wE(Ae,Et){return s.onlyPrintJsDocStyle?F$e(Ae,Et)||g7(Ae,Et):!0}function tK(Ae,Et,fn,qi,ic){!Ee||!wE(Ee.text,Ae)||(mn||(Uye(Tg(),Pt,ic,Ae),mn=!0),$m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi?Pt.writeLine():fn===3&&Pt.writeSpace(" "))}function Ux(Ae){jn||Ae===-1||BE(Ae,!0)}function Aq(Ae){nK(Ae,rK)}function rK(Ae,Et,fn,qi){!Ee||!wE(Ee.text,Ae)||(Pt.isAtStartOfLine()||Pt.writeSpace(" "),$m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi&&Pt.writeLine())}function Xw(Ae,Et,fn){jn||(An(),nK(Ae,Et?rK:fn?dq:yse),si())}function dq(Ae,Et,fn){Ee&&($m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),fn===2&&Pt.writeLine())}function yse(Ae,Et,fn,qi){Ee&&($m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi?Pt.writeLine():Pt.writeSpace(" "))}function pq(Ae,Et){Ee&&(st===-1||Ae!==st)&&(fq(Ae)?I9(Et):GD(Ee.text,Ae,Et,Ae))}function nK(Ae,Et){Ee&&(ir===-1||Ae!==ir&&Ae!==zt)&&dF(Ee.text,Ae,Et)}function fq(Ae){return Br!==void 0&&Ei(Br).nodePos===Ae}function I9(Ae){if(!Ee)return;let Et=Ei(Br).detachedCommentEndPos;Br.length-1?Br.pop():Br=void 0,GD(Ee.text,Et,Ae,Et)}function B1(Ae){let Et=Ee&&xZe(Ee.text,Tg(),Pt,LN,Ae,ge,jn);Et&&(Br?Br.push(Et):Br=[Et])}function LN(Ae,Et,fn,qi,ic,Oc){!Ee||!wE(Ee.text,qi)||($m(qi),rU(Ae,Et,fn,qi,ic,Oc),$m(ic))}function iK(Ae,Et){return!!Ee&&Ore(Ee.text,Ae,Et)}function sK(Ae,Et){let fn=Dn(3,Ae,Et);jA(Et),fn(Ae,Et),Uo(Et)}function jA(Ae){let Et=tA(Ae),fn=XT(Ae),qi=fn.source||ur;Ae.kind!==354&&!(Et&32)&&fn.pos>=0&&S5(fn.source||ur,mS(qi,fn.pos)),Et&128&&(Dt=!0)}function Uo(Ae){let Et=tA(Ae),fn=XT(Ae);Et&128&&(Dt=!1),Ae.kind!==354&&!(Et&64)&&fn.end>=0&&S5(fn.source||ur,fn.end)}function mS(Ae,Et){return Ae.skipTrivia?Ae.skipTrivia(Et):Yu(Ae.text,Et)}function $m(Ae){if(Dt||wB(Ae)||aK(ur))return;let{line:Et,character:fn}=Ra(ur,Ae);tr.addMapping(Pt.getLine(),Pt.getColumn(),Gr,Et,fn,void 0)}function S5(Ae,Et){if(Ae!==ur){let fn=ur,qi=Gr;kQ(Ae),$m(Et),v5(fn,qi)}else $m(Et)}function oK(Ae,Et,fn,qi,ic){if(Dt||Ae&&Xge(Ae))return ic(Et,fn,qi);let Oc=Ae&&Ae.emitNode,zl=Oc&&Oc.flags||0,Vc=Oc&&Oc.tokenSourceMapRanges&&Oc.tokenSourceMapRanges[Et],_A=Vc&&Vc.source||ur;return qi=mS(_A,Vc?Vc.pos:qi),!(zl&256)&&qi>=0&&S5(_A,qi),qi=ic(Et,fn,qi),Vc&&(qi=Vc.end),!(zl&512)&&qi>=0&&S5(_A,qi),qi}function kQ(Ae){if(!Dt){if(ur=Ae,Ae===dt){Gr=pr;return}aK(Ae)||(Gr=tr.addSource(Ae.fileName),s.inlineSources&&tr.setSourceContent(Gr,Ae.text),dt=Ae,pr=Gr)}}function v5(Ae,Et){ur=Ae,Gr=Et}function aK(Ae){return aA(Ae.fileName,".json")}}function UBs(){let s=[];return s[1024]=["{","}"],s[2048]=["(",")"],s[4096]=["<",">"],s[8192]=["[","]"],s}function KBs(s){return Qtn[s&15360][0]}function jBs(s){return Qtn[s&15360][1]}function zBs(s,c,g,d){c(s)}function qBs(s,c,g,d){c(s,g.select(d))}function $Bs(s,c,g,d){c(s,g)}function ews(s,c){return s.length===1?zBs:typeof c=="object"?qBs:$Bs}function j9e(s,c,g){if(!s.getDirectories||!s.readDirectory)return;let d=new Map,h=_d(g);return{useCaseSensitiveFileNames:g,fileExists:re,readFile:(Ye,Tt)=>s.readFile(Ye,Tt),directoryExists:s.directoryExists&&ge,getDirectories:_e,readDirectory:Ee,createDirectory:s.createDirectory&&Ie,writeFile:s.writeFile&&ee,addOrDeleteFileOrDirectory:Ze,addOrDeleteFile:We,clearCache:$e,realpath:s.realpath&&Ne};function _(Ye){return Ou(Ye,c,h)}function S(Ye){return d.get(hp(Ye))}function R(Ye){let Tt=S(Mo(Ye));return Tt&&(Tt.sortedAndCanonicalizedFiles||(Tt.sortedAndCanonicalizedFiles=Tt.files.map(h).sort(),Tt.sortedAndCanonicalizedDirectories=Tt.directories.map(h).sort()),Tt)}function T(Ye){return gp(iu(Ye))}function W(Ye,Tt){var ot;if(!s.realpath||hp(_(s.realpath(Ye)))===Tt){let Qe={files:At(s.readDirectory(Ye,void 0,void 0,["*.*"]),T)||[],directories:s.getDirectories(Ye)||[]};return d.set(hp(Tt),Qe),Qe}if((ot=s.directoryExists)!=null&&ot.call(s,Ye))return d.set(Tt,!1),!1}function V(Ye,Tt){Tt=hp(Tt);let ot=S(Tt);if(ot)return ot;try{return W(Ye,Tt)}catch{pe.assert(!d.has(hp(Tt)));return}}function M(Ye,Tt){return Wc(Ye,Tt,Fl,Ca)>=0}function ee(Ye,Tt,ot){let Qe=_(Ye),mt=R(Qe);return mt&&Ue(mt,T(Ye),!0),s.writeFile(Ye,Tt,ot)}function re(Ye){let Tt=_(Ye),ot=R(Tt);return ot&&M(ot.sortedAndCanonicalizedFiles,h(T(Ye)))||s.fileExists(Ye)}function ge(Ye){let Tt=_(Ye);return d.has(hp(Tt))||s.directoryExists(Ye)}function Ie(Ye){let Tt=_(Ye),ot=R(Tt);if(ot){let Qe=T(Ye),mt=h(Qe),ht=ot.sortedAndCanonicalizedDirectories;Gc(ht,mt,Ca)&&ot.directories.push(Qe)}s.createDirectory(Ye)}function _e(Ye){let Tt=_(Ye),ot=V(Ye,Tt);return ot?ot.directories.slice():s.getDirectories(Ye)}function Ee(Ye,Tt,ot,Qe,mt){let ht=_(Ye),_t=V(Ye,ht),Rt;if(_t!==void 0)return Sbe(Ye,Tt,ot,Qe,g,c,mt,Lt,Ne);return s.readDirectory(Ye,Tt,ot,Qe,mt);function Lt(Pt){let _r=_(Pt);if(_r===ht)return _t||Ke(Pt,_r);let Gt=V(Pt,_r);return Gt!==void 0?Gt||Ke(Pt,_r):wbe}function Ke(Pt,_r){if(Rt&&_r===ht)return Rt;let Gt={files:At(s.readDirectory(Pt,void 0,void 0,["*.*"]),T)||E,directories:s.getDirectories(Pt)||E};return _r===ht&&(Rt=Gt),Gt}}function Ne(Ye){return s.realpath?s.realpath(Ye):Ye}function Te(Ye){pE(Mo(Ye),Tt=>d.delete(hp(Tt))?!0:void 0)}function Ze(Ye,Tt){if(S(Tt)!==void 0){$e();return}let Qe=R(Tt);if(!Qe){Te(Tt);return}if(!s.directoryExists){$e();return}let mt=T(Ye),ht={fileExists:s.fileExists(Ye),directoryExists:s.directoryExists(Ye)};return ht.directoryExists||M(Qe.sortedAndCanonicalizedDirectories,h(mt))?$e():Ue(Qe,mt,ht.fileExists),ht}function We(Ye,Tt,ot){if(ot===1)return;let Qe=R(Tt);Qe?Ue(Qe,T(Ye),ot===0):Te(Tt)}function Ue(Ye,Tt,ot){let Qe=Ye.sortedAndCanonicalizedFiles,mt=h(Tt);if(ot)Gc(Qe,mt,Ca)&&Ye.files.push(Tt);else{let ht=Wc(Qe,mt,Fl,Ca);if(ht>=0){Qe.splice(ht,1);let _t=Ye.files.findIndex(Rt=>h(Rt)===mt);Ye.files.splice(_t,1)}}}function $e(){d.clear()}}var f3t=(s=>(s[s.Update=0]="Update",s[s.RootNamesAndUpdate=1]="RootNamesAndUpdate",s[s.Full=2]="Full",s[s.Resolutions=3]="Resolutions",s))(f3t||{});function z9e(s,c,g,d,h){var _;let S=Ru(((_=c?.configFile)==null?void 0:_.extendedSourceFiles)||E,h);g.forEach((R,T)=>{S.has(T)||(R.projects.delete(s),R.close())}),S.forEach((R,T)=>{let W=g.get(T);W?W.projects.add(s):g.set(T,{projects:new Set([s]),watcher:d(R,T),close:()=>{let V=g.get(T);!V||V.projects.size!==0||(V.watcher.close(),g.delete(T))}})})}function ttt(s,c){c.forEach(g=>{g.projects.delete(s)&&g.close()})}function q9e(s,c,g){s.delete(c)&&s.forEach(({extendedResult:d},h)=>{var _;(_=d.extendedSourceFiles)!=null&&_.some(S=>g(S)===c)&&q9e(s,h,g)})}function rtt(s,c,g){Q7(c,s.getMissingFilePaths(),{createNewValue:g,onDeleteValue:dv})}function HEe(s,c,g){c?Q7(s,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:Cv,onExistingValue:h}):Fy(s,Cv);function d(_,S){return{watcher:g(_,S),flags:S}}function h(_,S,R){_.flags!==S&&(_.watcher.close(),s.set(R,d(R,S)))}}function YEe({watchedDirPath:s,fileOrDirectory:c,fileOrDirectoryPath:g,configFileName:d,options:h,program:_,extraFileExtensions:S,currentDirectory:R,useCaseSensitiveFileNames:T,writeLog:W,toPath:V,getScriptKind:M}){let ee=gVe(g);if(!ee)return W(`Project: ${d} Detected ignored path: ${c}`),!0;if(g=ee,g===s)return!1;if(E0(g)&&!(Bbe(c,h,S)||Ee()))return W(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(ZWt(c,h.configFile.configFileSpecs,Xc(Mo(d),R),T,R))return W(`Project: ${d} Detected excluded file: ${c}`),!0;if(!_||h.outFile||h.outDir)return!1;if(PC(g)){if(h.declarationDir)return!1}else if(!fu(g,uU))return!1;let re=s0(g),ge=Ki(_)?void 0:ktt(_)?_.getProgramOrUndefined():_,Ie=!ge&&!Ki(_)?_:void 0;if(_e(re+".ts")||_e(re+".tsx"))return W(`Project: ${d} Detected output file: ${c}`),!0;return!1;function _e(Ne){return ge?!!ge.getSourceFileByPath(Ne):Ie?Ie.state.fileInfos.has(Ne):!!de(_,Te=>V(Te)===Ne)}function Ee(){if(!M)return!1;switch(M(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return TF(h);case 6:return NP(h);case 0:return!1}}}function I3t(s,c){return s?s.isEmittedFile(c):!1}var h3t=(s=>(s[s.None=0]="None",s[s.TriggerOnly=1]="TriggerOnly",s[s.Verbose=2]="Verbose",s))(h3t||{});function ntt(s,c,g,d){xC(c===2?g:Dc);let h={watchFile:(Ie,_e,Ee,Ne)=>s.watchFile(Ie,_e,Ee,Ne),watchDirectory:(Ie,_e,Ee,Ne)=>s.watchDirectory(Ie,_e,(Ee&1)!==0,Ne)},_=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,S=c===2?{watchFile:M,watchDirectory:ee}:_||h,R=c===2?V:Vde;return{watchFile:T("watchFile"),watchDirectory:T("watchDirectory")};function T(Ie){return(_e,Ee,Ne,Te,Ze,We)=>{var Ue;return v9e(_e,Ie==="watchFile"?Te?.excludeFiles:Te?.excludeDirectories,W(),((Ue=s.getCurrentDirectory)==null?void 0:Ue.call(s))||"")?R(_e,Ne,Te,Ze,We):S[Ie].call(void 0,_e,Ee,Ne,Te,Ze,We)}}function W(){return typeof s.useCaseSensitiveFileNames=="boolean"?s.useCaseSensitiveFileNames:s.useCaseSensitiveFileNames()}function V(Ie,_e,Ee,Ne,Te){return g(`ExcludeWatcher:: Added:: ${ge(Ie,_e,Ee,Ne,Te,d)}`),{close:()=>g(`ExcludeWatcher:: Close:: ${ge(Ie,_e,Ee,Ne,Te,d)}`)}}function M(Ie,_e,Ee,Ne,Te,Ze){g(`FileWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`);let We=_.watchFile(Ie,_e,Ee,Ne,Te,Ze);return{close:()=>{g(`FileWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`),We.close()}}}function ee(Ie,_e,Ee,Ne,Te,Ze){let We=`DirectoryWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(We);let Ue=Fg(),$e=_.watchDirectory(Ie,_e,Ee,Ne,Te,Ze),Ye=Fg()-Ue;return g(`Elapsed:: ${Ye}ms ${We}`),{close:()=>{let Tt=`DirectoryWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Tt);let ot=Fg();$e.close();let Qe=Fg()-ot;g(`Elapsed:: ${Qe}ms ${Tt}`)}}}function re(Ie){return(_e,Ee,Ne,Te,Ze,We)=>h[Ie].call(void 0,_e,(...Ue)=>{let $e=`${Ie==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${Ue[0]} ${Ue[1]!==void 0?Ue[1]:""}:: ${ge(_e,Ne,Te,Ze,We,d)}`;g($e);let Ye=Fg();Ee.call(void 0,...Ue);let Tt=Fg()-Ye;g(`Elapsed:: ${Tt}ms ${$e}`)},Ne,Te,Ze,We)}function ge(Ie,_e,Ee,Ne,Te,Ze){return`WatchInfo: ${Ie} ${_e} ${JSON.stringify(Ee)} ${Ze?Ze(Ne,Te):Te===void 0?Ne:`${Ne} ${Te}`}`}}function QEe(s){let c=s?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function Cv(s){s.watcher.close()}function itt(s,c,g="tsconfig.json"){return pE(s,d=>{let h=Ro(d,g);return c(h)?h:void 0})}function stt(s,c){let g=Mo(c),d=Xp(s)?s:Ro(g,s);return iu(d)}function m3t(s,c,g){let d;return F(s,_=>{let S=AB(_,c);if(S.pop(),!d){d=S;return}let R=Math.min(d.length,S.length);for(let T=0;T{let _;try{Mc("beforeIORead"),_=s(g),Mc("afterIORead"),Pf("I/O Read","beforeIORead","afterIORead")}catch(S){h&&h(S.message),_=""}return _!==void 0?vz(g,_,d,c):void 0}}function att(s,c,g){return(d,h,_,S)=>{try{Mc("beforeIOWrite"),Qye(d,h,_,s,c,g),Mc("afterIOWrite"),Pf("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){S&&S(R.message)}}}function $9e(s,c,g=yd){let d=new Map,h=_d(g.useCaseSensitiveFileNames);function _(V){return d.has(V)?!0:(W.directoryExists||g.directoryExists)(V)?(d.set(V,!0),!0):!1}function S(){return Mo(iu(g.getExecutingFilePath()))}let R=uN(s),T=g.realpath&&(V=>g.realpath(V)),W={getSourceFile:ott(V=>W.readFile(V),c),getDefaultLibLocation:S,getDefaultLibFileName:V=>Ro(S(),Hs(V)),writeFile:att((V,M,ee)=>g.writeFile(V,M,ee),V=>(W.createDirectory||g.createDirectory)(V),V=>_(V)),getCurrentDirectory:FA(()=>g.getCurrentDirectory()),useCaseSensitiveFileNames:()=>g.useCaseSensitiveFileNames,getCanonicalFileName:h,getNewLine:()=>R,fileExists:V=>g.fileExists(V),readFile:V=>g.readFile(V),trace:V=>g.write(V+R),directoryExists:V=>g.directoryExists(V),getEnvironmentVariable:V=>g.getEnvironmentVariable?g.getEnvironmentVariable(V):"",getDirectories:V=>g.getDirectories(V),realpath:T,readDirectory:(V,M,ee,re,ge)=>g.readDirectory(V,M,ee,re,ge),createDirectory:V=>g.createDirectory(V),createHash:$i(g,g.createHash)};return W}function Gde(s,c,g){let d=s.readFile,h=s.fileExists,_=s.directoryExists,S=s.createDirectory,R=s.writeFile,T=new Map,W=new Map,V=new Map,M=new Map,ee=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:re(_e,Ie)},re=(Ie,_e)=>{let Ee=d.call(s,_e);return T.set(Ie,Ee!==void 0?Ee:!1),Ee};s.readFile=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:!aA(Ie,".json")&&!l3t(Ie)?d.call(s,Ie):re(_e,Ie)};let ge=g?(Ie,_e,Ee,Ne)=>{let Te=c(Ie),Ze=typeof _e=="object"?_e.impliedNodeFormat:void 0,We=M.get(Ze),Ue=We?.get(Te);if(Ue)return Ue;let $e=g(Ie,_e,Ee,Ne);return $e&&(PC(Ie)||aA(Ie,".json"))&&M.set(Ze,(We||new Map).set(Te,$e)),$e}:void 0;return s.fileExists=Ie=>{let _e=c(Ie),Ee=W.get(_e);if(Ee!==void 0)return Ee;let Ne=h.call(s,Ie);return W.set(_e,!!Ne),Ne},R&&(s.writeFile=(Ie,_e,...Ee)=>{let Ne=c(Ie);W.delete(Ne);let Te=T.get(Ne);Te!==void 0&&Te!==_e?(T.delete(Ne),M.forEach(Ze=>Ze.delete(Ne))):ge&&M.forEach(Ze=>{let We=Ze.get(Ne);We&&We.text!==_e&&Ze.delete(Ne)}),R.call(s,Ie,_e,...Ee)}),_&&(s.directoryExists=Ie=>{let _e=c(Ie),Ee=V.get(_e);if(Ee!==void 0)return Ee;let Ne=_.call(s,Ie);return V.set(_e,!!Ne),Ne},S&&(s.createDirectory=Ie=>{let _e=c(Ie);V.delete(_e),S.call(s,Ie)})),{originalReadFile:d,originalFileExists:h,originalDirectoryExists:_,originalCreateDirectory:S,originalWriteFile:R,getSourceFileWithCache:ge,readFileWithCache:ee}}function $tn(s,c,g){let d;return d=Or(d,s.getConfigFileParsingDiagnostics()),d=Or(d,s.getOptionsDiagnostics(g)),d=Or(d,s.getSyntacticDiagnostics(c,g)),d=Or(d,s.getGlobalDiagnostics(g)),d=Or(d,s.getSemanticDiagnostics(c,g)),Ly(s.getCompilerOptions())&&(d=Or(d,s.getDeclarationDiagnostics(c,g))),ui(d||E)}function ern(s,c){let g="";for(let d of s)g+=ctt(d,c);return g}function ctt(s,c){let g=`${_b(s)} TS${s.code}: ${wN(s.messageText,c.getNewLine())}${c.getNewLine()}`;if(s.file){let{line:d,character:h}=Ra(s.file,s.start),_=s.file.fileName;return`${r2(_,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${h+1}): `+g}return g}var _3t=(s=>(s.Grey="\x1B[90m",s.Red="\x1B[91m",s.Yellow="\x1B[93m",s.Blue="\x1B[94m",s.Cyan="\x1B[96m",s))(_3t||{}),y3t="\x1B[7m",b3t=" ",trn="\x1B[0m",rrn="...",tws=" ",nrn=" ";function irn(s){switch(s){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return pe.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function AQ(s,c){return c+s+trn}function srn(s,c,g,d,h,_){let{line:S,character:R}=Ra(s,c),{line:T,character:W}=Ra(s,c+g),V=Ra(s,s.text.length).line,M=T-S>=4,ee=(T+1+"").length;M&&(ee=Math.max(rrn.length,ee));let re="";for(let ge=S;ge<=T;ge++){re+=_.getNewLine(),M&&S+1g.getCanonicalFileName(T)):s.fileName,R="";return R+=d(S,"\x1B[96m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R+=":",R+=d(`${_+1}`,"\x1B[93m"),R}function E3t(s,c){let g="";for(let d of s){if(d.file){let{file:h,start:_}=d;g+=ltt(h,_,c),g+=" - "}if(g+=AQ(_b(d),irn(d.category)),g+=AQ(` TS${d.code}: `,"\x1B[90m"),g+=wN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(g+=c.getNewLine(),g+=srn(d.file,d.start,d.length,"",irn(d.category),c)),d.relatedInformation){g+=c.getNewLine();for(let{file:h,start:_,length:S,messageText:R}of d.relatedInformation)h&&(g+=c.getNewLine(),g+=tws+ltt(h,_,c),g+=srn(h,_,S,nrn,"\x1B[96m",c)),g+=c.getNewLine(),g+=nrn+wN(R,c.getNewLine())}g+=c.getNewLine()}return g}function wN(s,c,g=0){if(Xs(s))return s;if(s===void 0)return"";let d="";if(g){d+=c;for(let h=0;hgtt(c,s,g)};function Att(s,c,g,d,h){return{nameAndMode:tVe,resolve:(_,S)=>BU(_,s,g,d,h,c,S)}}function B3t(s){return Xs(s)?s:s.fileName}var lrn={getName:B3t,getMode:(s,c,g)=>S3t(s,c&&sVe(c,g))};function rVe(s,c,g,d,h){return{nameAndMode:lrn,resolve:(_,S)=>QWt(_,s,g,d,c,h,S)}}function XEe(s,c,g,d,h,_,S,R){if(s.length===0)return E;let T=[],W=new Map,V=R(c,g,d,_,S);for(let M of s){let ee=V.nameAndMode.getName(M),re=V.nameAndMode.getMode(M,h,g?.commandLine.options||d),ge=Cde(ee,re),Ie=W.get(ge);Ie||W.set(ge,Ie=V.resolve(ee,re)),T.push(Ie)}return T}var Fde="__inferred type names__.ts";function nVe(s,c,g){let d=s.configFilePath?Mo(s.configFilePath):c;return Ro(d,`__lib_node_modules_lookup_${g}__.ts`)}function dtt(s){let c=s.split("."),g=c[1],d=2;for(;c[d]&&c[d]!=="d";)g+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+g}function K3(s){switch(s?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function Fie(s){return s.pos!==void 0}function Zde(s,c){var g,d,h,_;let S=pe.checkDefined(s.getSourceFileByPath(c.file)),{kind:R,index:T}=c,W,V,M;switch(R){case 3:let ee=KEe(S,T);if(M=(d=(g=s.getResolvedModuleFromModuleSpecifier(ee,S))==null?void 0:g.resolvedModule)==null?void 0:d.packageId,ee.pos===-1)return{file:S,packageId:M,text:ee.text};W=Yu(S.text,ee.pos),V=ee.end;break;case 4:({pos:W,end:V}=S.referencedFiles[T]);break;case 5:({pos:W,end:V}=S.typeReferenceDirectives[T]),M=(_=(h=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S.typeReferenceDirectives[T],S))==null?void 0:h.resolvedTypeReferenceDirective)==null?void 0:_.packageId;break;case 7:({pos:W,end:V}=S.libReferenceDirectives[T]);break;default:return pe.assertNever(R)}return{file:S,pos:W,end:V,packageId:M}}function ptt(s,c,g,d,h,_,S,R,T,W){if(!s||R?.()||!Sc(s.getRootFileNames(),c))return!1;let V;if(!Sc(s.getProjectReferences(),W,Ie)||s.getSourceFiles().some(re))return!1;let M=s.getMissingFilePaths();if(M&&Dh(M,h))return!1;let ee=s.getCompilerOptions();if(!_Ae(ee,g)||s.resolvedLibReferences&&Dh(s.resolvedLibReferences,(Ee,Ne)=>S(Ne)))return!1;if(ee.configFile&&g.configFile)return ee.configFile.text===g.configFile.text;return!0;function re(Ee){return!ge(Ee)||_(Ee.path)}function ge(Ee){return Ee.version===d(Ee.resolvedPath,Ee.fileName)}function Ie(Ee,Ne,Te){return Vre(Ee,Ne)&&_e(s.getResolvedProjectReferences()[Te],Ee)}function _e(Ee,Ne){if(Ee){if(k(V,Ee))return!0;let Ze=xz(Ne),We=T(Ze);return!We||Ee.commandLine.options.configFile!==We.options.configFile||!Sc(Ee.commandLine.fileNames,We.fileNames)?!1:((V||(V=[])).push(Ee),!F(Ee.references,(Ue,$e)=>!_e(Ue,Ee.commandLine.projectReferences[$e])))}let Te=xz(Ne);return!T(Te)}}function dQ(s){return s.options.configFile?[...s.options.configFile.parseDiagnostics,...s.errors]:s.errors}function JEe(s,c,g,d){let h=iVe(s,c,g,d);return typeof h=="object"?h.impliedNodeFormat:h}function iVe(s,c,g,d){let h=k_(d),_=3<=h&&h<=99||WP(s);return fu(s,[".d.mts",".mts",".mjs"])?99:fu(s,[".d.cts",".cts",".cjs"])?1:_&&fu(s,[".d.ts",".ts",".tsx",".js",".jsx"])?S():void 0;function S(){let R=_de(c,g,d),T=[];R.failedLookupLocations=T,R.affectingLocations=T;let W=yde(Mo(s),R);return{impliedNodeFormat:W?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:T,packageJsonScope:W}}}var urn=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode.code,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function rws(s,c){return s?S0(s.getCompilerOptions(),c,H$e):!1}function nws(s,c,g,d,h,_){return{rootNames:s,options:c,host:g,oldProgram:d,configFileParsingDiagnostics:h,typeScriptVersion:_}}function UEe(s,c,g,d,h){var _,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze;let We=Ki(s)?nws(s,c,g,d,h):s,{rootNames:Ue,options:$e,configFileParsingDiagnostics:Ye,projectReferences:Tt,typeScriptVersion:ot,host:Qe}=We,{oldProgram:mt}=We;We=void 0,s=void 0;for(let br of SWt)if(Da($e,br.name)&&typeof $e[br.name]=="string")throw new Error(`${br.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let ht=FA(()=>Ln("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),_t,Rt,Lt,Ke,Pt,_r,Gt,nt,Dt,tr=w3t(jl),ur,Gr,dt,pr,st,ir,zt,Ht,Br,mn=typeof $e.maxNodeModuleJsDepth=="number"?$e.maxNodeModuleJsDepth:0,jn=0,Zi=new Map,Ns=new Map;(_=ki)==null||_.push(ki.Phase.Program,"createProgram",{configFilePath:$e.configFilePath,rootDir:$e.rootDir},!0),Mc("beforeProgram");let An=Qe||C3t($e),si=aVe(An),ks=$e.noLib,Ic=FA(()=>An.getDefaultLibFileName($e)),su=An.getDefaultLibLocation?An.getDefaultLibLocation():Mo(Ic()),Zn=!1,ya=An.getCurrentDirectory(),Gl=z7($e),ba=q7($e,Gl),Wo=new Map,hc,yr,hn,Oi,lo=An.hasInvalidatedResolutions||As;An.resolveModuleNameLiterals?(Oi=An.resolveModuleNameLiterals.bind(An),hn=(S=An.getModuleResolutionCache)==null?void 0:S.call(An)):An.resolveModuleNames?(Oi=(br,sn,ei,is,Qs,Oo)=>An.resolveModuleNames(br.map(v3t),sn,Oo?.map(v3t),ei,is,Qs).map(Os=>Os?Os.extension!==void 0?{resolvedModule:Os}:{resolvedModule:{...Os,extension:tz(Os.resolvedFileName)}}:crn),hn=(R=An.getModuleResolutionCache)==null?void 0:R.call(An)):(hn=Tie(ya,qm,$e),Oi=(br,sn,ei,is,Qs)=>XEe(br,sn,ei,is,Qs,An,hn,Att));let pa;if(An.resolveTypeReferenceDirectiveReferences)pa=An.resolveTypeReferenceDirectiveReferences.bind(An);else if(An.resolveTypeReferenceDirectives)pa=(br,sn,ei,is,Qs)=>An.resolveTypeReferenceDirectives(br.map(B3t),sn,ei,is,Qs?.impliedNodeFormat).map(Oo=>({resolvedTypeReferenceDirective:Oo}));else{let br=D9e(ya,qm,void 0,hn?.getPackageJsonInfoCache(),hn?.optionsToRedirectsKey);pa=(sn,ei,is,Qs,Oo)=>XEe(sn,ei,is,Qs,Oo,An,br,rVe)}let Oa=An.hasInvalidatedLibResolutions||As,tl;if(An.resolveLibrary)tl=An.resolveLibrary.bind(An);else{let br=Tie(ya,qm,$e,hn?.getPackageJsonInfoCache());tl=(sn,ei,is)=>k9e(sn,ei,is,An,br)}let Qu=new Map,Tg=new Map,Cs=dl(),Tu,Pr=new Map,Pn=new Map,pt=An.useCaseSensitiveFileNames()?new Map:void 0,on,it,nr,Fr,Kr=!!((T=An.useSourceOfProjectReferenceRedirect)!=null&&T.call(An))&&!$e.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Dn,fileExists:hr,directoryExists:En}=iws({compilerHost:An,getSymlinkCache:fS,useSourceOfProjectReferenceRedirect:Kr,toPath:Mn,getResolvedProjectReferences:Ag,getRedirectFromOutput:XI,forEachResolvedProjectReference:dI}),Ni=An.readFile.bind(An);(W=ki)==null||W.push(ki.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!mt});let Gi=rws(mt,$e);(V=ki)==null||V.pop();let nn;if((M=ki)==null||M.push(ki.Phase.Program,"tryReuseStructureFromOldProgram",{}),nn=fs(),(ee=ki)==null||ee.pop(),nn!==2){if(_t=[],Rt=[],Tt&&(on||(on=Tt.map(xN)),Ue.length&&on?.forEach((br,sn)=>{if(!br)return;let ei=br.commandLine.options.outFile;if(Kr){if(ei||i0(br.commandLine.options)===0)for(let is of br.commandLine.fileNames)Vb(is,{kind:1,index:sn})}else if(ei)Vb(fN(ei,".d.ts"),{kind:2,index:sn});else if(i0(br.commandLine.options)===0){let is=FA(()=>RU(br.commandLine,!An.useCaseSensitiveFileNames()));for(let Qs of br.commandLine.fileNames)!PC(Qs)&&!aA(Qs,".json")&&Vb(kde(Qs,br.commandLine,!An.useCaseSensitiveFileNames(),is),{kind:2,index:sn})}})),(re=ki)==null||re.push(ki.Phase.Program,"processRootFiles",{count:Ue.length}),F(Ue,(br,sn)=>Lg(br,!1,!1,{kind:0,index:sn})),(ge=ki)==null||ge.pop(),ur??(ur=Ue.length?R9e($e,An):E),Gr=wie(),ur.length){(Ie=ki)==null||Ie.push(ki.Phase.Program,"processTypeReferences",{count:ur.length});let br=$e.configFilePath?Mo($e.configFilePath):ya,sn=Ro(br,Fde),ei=Vn(ur,sn);for(let is=0;is{Lg(Wx(sn),!0,!1,{kind:6,index:ei})})}Lt=bo(_t,tn).concat(Rt),_t=void 0,Rt=void 0,Gt=void 0}if(mt&&An.onReleaseOldSourceFile){let br=mt.getSourceFiles();for(let sn of br){let ei=Xg(sn.resolvedPath);(Gi||!ei||ei.impliedNodeFormat!==sn.impliedNodeFormat||sn.resolvedPath===sn.path&&ei.resolvedPath!==sn.path)&&An.onReleaseOldSourceFile(sn,mt.getCompilerOptions(),!!Xg(sn.path),ei)}An.getParsedCommandLine||mt.forEachResolvedProjectReference(sn=>{d_(sn.sourceFile.path)||An.onReleaseOldSourceFile(sn.sourceFile,mt.getCompilerOptions(),!1,void 0)})}mt&&An.onReleaseParsedCommandLine&&gz(mt.getProjectReferences(),mt.getResolvedProjectReferences(),(br,sn,ei)=>{let is=sn?.commandLine.projectReferences[ei]||mt.getProjectReferences()[ei],Qs=xz(is);it?.has(Mn(Qs))||An.onReleaseParsedCommandLine(Qs,br,mt.getCompilerOptions())}),mt=void 0,pr=void 0,ir=void 0,Ht=void 0;let bn={getRootFileNames:()=>Ue,getSourceFile:jp,getSourceFileByPath:Xg,getSourceFiles:()=>Lt,getMissingFilePaths:()=>Pn,getModuleResolutionCache:()=>hn,getFilesByNameMap:()=>Pr,getCompilerOptions:()=>$e,getSyntacticDiagnostics:dS,getOptionsDiagnostics:Ss,getGlobalDiagnostics:rl,getSemanticDiagnostics:gu,getCachedSemanticDiagnostics:bg,getSuggestionDiagnostics:mr,getDeclarationDiagnostics:oi,getBindAndCheckDiagnostics:KA,getProgramDiagnostics:TA,getTypeChecker:pp,getClassifiableNames:es,getCommonSourceDirectory:ci,emit:Dl,getCurrentDirectory:()=>ya,getNodeCount:()=>pp().getNodeCount(),getIdentifierCount:()=>pp().getIdentifierCount(),getSymbolCount:()=>pp().getSymbolCount(),getTypeCount:()=>pp().getTypeCount(),getInstantiationCount:()=>pp().getInstantiationCount(),getRelationCacheSizes:()=>pp().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>tr.getFileProcessingDiagnostics(),getAutomaticTypeDirectiveNames:()=>ur,getAutomaticTypeDirectiveResolutions:()=>Gr,isSourceFileFromExternalLibrary:wI,isSourceFileDefaultLibrary:AI,getModeForUsageLocation:bv,getEmitSyntaxForUsageLocation:XF,getModeForResolutionAtIndex:o9,getSourceFileFromReference:b1,getLibFileFromReference:oh,sourceFileToPackageName:Tg,redirectTargetsMap:Cs,usesUriStyleNodeCoreModules:Tu,resolvedModules:st,resolvedTypeReferenceDirectiveNames:zt,resolvedLibReferences:dt,getProgramDiagnosticsContainer:()=>tr,getResolvedModule:ds,getResolvedModuleFromModuleSpecifier:Mt,getResolvedTypeReferenceDirective:cn,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:Bt,forEachResolvedModule:xe,forEachResolvedTypeReferenceDirective:fr,getCurrentPackagesMap:()=>Br,typesPackageExists:Hn,packageBundlesTypes:Ot,isEmittedFile:MC,getConfigFileParsingDiagnostics:xd,getProjectReferences:_u,getResolvedProjectReferences:Ag,getRedirectFromSourceFile:af,getResolvedProjectReferenceByPath:d_,forEachResolvedProjectReference:dI,isSourceOfProjectReferenceRedirect:C2,getRedirectFromOutput:XI,getCompilerOptionsForFile:gy,getDefaultResolutionModeForFile:My,getEmitModuleFormatOfFile:aR,getImpliedNodeFormatForEmit:sk,shouldTransformImportCall:WB,emitBuildInfo:gg,fileExists:hr,readFile:Ni,directoryExists:En,getSymlinkCache:fS,realpath:(Te=An.realpath)==null?void 0:Te.bind(An),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getCanonicalFileName:qm,getFileIncludeReasons:()=>tr.getFileReasons(),structureIsReused:nn,writeFile:mc,getGlobalTypingsCacheLocation:$i(An,An.getGlobalTypingsCacheLocation)};return Dn(),Zn||at(),Mc("afterProgram"),Pf("Program","beforeProgram","afterProgram"),(Ze=ki)==null||Ze.pop(),bn;function ds(br,sn,ei){var is;return(is=st?.get(br.path))==null?void 0:is.get(sn,ei)}function Mt(br,sn){return sn??(sn=ms(br)),pe.assertIsDefined(sn,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ds(sn,br.text,bv(sn,br))}function cn(br,sn,ei){var is;return(is=zt?.get(br.path))==null?void 0:is.get(sn,ei)}function Bt(br,sn){return cn(sn,br.fileName,UP(br,sn))}function xe(br,sn){Je(st,br,sn)}function fr(br,sn){Je(zt,br,sn)}function Je(br,sn,ei){var is;ei?(is=br?.get(ei.path))==null||is.forEach((Qs,Oo,Os)=>sn(Qs,Oo,Os,ei.path)):br?.forEach((Qs,Oo)=>Qs.forEach((Os,co,Yc)=>sn(Os,co,Yc,Oo)))}function In(){return Br||(Br=new Map,xe(({resolvedModule:br})=>{br?.packageId&&Br.set(br.packageId.name,br.extension===".d.ts"||!!Br.get(br.packageId.name))}),Br)}function Hn(br){return In().has(G9e(br))}function Ot(br){return!!In().get(br)}function $r(br){var sn;(sn=br.resolutionDiagnostics)!=null&&sn.length&&tr.addFileProcessingDiagnostic({kind:2,diagnostics:br.resolutionDiagnostics})}function ri(br,sn,ei,is){if(An.resolveModuleNameLiterals||!An.resolveModuleNames)return $r(ei);if(!hn||Xr(sn))return;let Qs=Xc(br.originalFileName,ya),Oo=Mo(Qs),Os=Ys(br),co=hn.getFromNonRelativeNameCache(sn,is,Oo,Os);co&&$r(co)}function ao(br,sn,ei){var is,Qs;let Oo=Xc(sn.originalFileName,ya),Os=Ys(sn);(is=ki)==null||is.push(ki.Phase.Program,"resolveModuleNamesWorker",{containingFileName:Oo}),Mc("beforeResolveModule");let co=Oi(br,Oo,Os,$e,sn,ei);return Mc("afterResolveModule"),Pf("ResolveModule","beforeResolveModule","afterResolveModule"),(Qs=ki)==null||Qs.pop(),co}function Bs(br,sn,ei){var is,Qs;let Oo=Xs(sn)?void 0:sn,Os=Xs(sn)?sn:Xc(sn.originalFileName,ya),co=Oo&&Ys(Oo);(is=ki)==null||is.push(ki.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:Os}),Mc("beforeResolveTypeReference");let Yc=pa(br,Os,co,$e,Oo,ei);return Mc("afterResolveTypeReference"),Pf("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Qs=ki)==null||Qs.pop(),Yc}function Ys(br){var sn,ei;let is=af(br.originalFileName);if(is||!PC(br.originalFileName))return is?.resolvedRef;let Qs=(sn=XI(br.path))==null?void 0:sn.resolvedRef;if(Qs)return Qs;if(!An.realpath||!$e.preserveSymlinks||!br.originalFileName.includes(Vx))return;let Oo=Mn(An.realpath(br.originalFileName));return Oo===br.path||(ei=XI(Oo))==null?void 0:ei.resolvedRef}function tn(br,sn){return Zt(wn(br),wn(sn))}function wn(br){if(Jh(su,br.fileName,!1)){let sn=gp(br.fileName);if(sn==="lib.d.ts"||sn==="lib.es6.d.ts")return 0;let ei=aa(Nm(sn,"lib."),".d.ts"),is=A9e.indexOf(ei);if(is!==-1)return is+1}return A9e.length+2}function Mn(br){return Ou(br,ya,qm)}function ci(){let br=tr.getCommonSourceDirectory();if(br!==void 0)return br;let sn=Me(Lt,ei=>SP(ei,bn));return br=xde($e,()=>Xt(sn,ei=>ei.isDeclarationFile?void 0:ei.fileName),ya,qm,ei=>pS(sn,ei)),tr.setCommonSourceDirectory(br),br}function es(){var br;if(!_r){pp(),_r=new Set;for(let sn of Lt)(br=sn.classifiableNames)==null||br.forEach(ei=>_r.add(ei))}return _r}function Wi(br,sn){return Ui({entries:br,containingFile:sn,containingSourceFile:sn,redirectedReference:Ys(sn),nameAndModeGetter:tVe,resolutionWorker:ao,getResolutionFromOldProgram:(ei,is)=>mt?.getResolvedModule(sn,ei,is),getResolved:xL,canReuseResolutionsInFile:()=>sn===mt?.getSourceFile(sn.fileName)&&!lo(sn.path),resolveToOwnAmbientModule:!0})}function Vn(br,sn){let ei=Xs(sn)?void 0:sn;return Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:ei&&Ys(ei),nameAndModeGetter:lrn,resolutionWorker:Bs,getResolutionFromOldProgram:(is,Qs)=>{var Oo;return ei?mt?.getResolvedTypeReferenceDirective(ei,is,Qs):(Oo=mt?.getAutomaticTypeDirectiveResolutions())==null?void 0:Oo.get(is,Qs)},getResolved:c7,canReuseResolutionsInFile:()=>ei?ei===mt?.getSourceFile(ei.fileName)&&!lo(ei.path):!lo(Mn(sn))})}function Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:is,nameAndModeGetter:Qs,resolutionWorker:Oo,getResolutionFromOldProgram:Os,getResolved:co,canReuseResolutionsInFile:Yc,resolveToOwnAmbientModule:tu}){if(!br.length)return E;if(nn===0&&(!tu||!ei.ambientModuleNames.length))return Oo(br,sn,void 0);let $a,ru,gl,kf,Wb=Yc();for(let p_=0;p_gl[ru[MB]]=p_),gl):OB}function gs(){return!gz(mt.getProjectReferences(),mt.getResolvedProjectReferences(),(br,sn,ei)=>{let is=(sn?sn.commandLine.projectReferences:Tt)[ei],Qs=xN(is);return br?!Qs||Qs.sourceFile!==br.sourceFile||!Sc(br.commandLine.fileNames,Qs.commandLine.fileNames):Qs!==void 0},(br,sn)=>{let ei=sn?d_(sn.sourceFile.path).commandLine.projectReferences:Tt;return!Sc(br,ei,Vre)})}function fs(){var br;if(!mt)return 0;let sn=mt.getCompilerOptions();if(NJ(sn,$e))return 0;let ei=mt.getRootFileNames();if(!Sc(ei,Ue)||!gs())return 0;Tt&&(on=Tt.map(xN));let is=[],Qs=[];if(nn=2,Dh(mt.getMissingFilePaths(),$a=>An.fileExists($a)))return 0;let Oo=mt.getSourceFiles(),Os;($a=>{$a[$a.Exists=0]="Exists",$a[$a.Modified=1]="Modified"})(Os||(Os={}));let co=new Map;for(let $a of Oo){let ru=Hl($a.fileName,hn,An,$e),gl=An.getSourceFileByPath?An.getSourceFileByPath($a.fileName,$a.resolvedPath,ru,void 0,Gi):An.getSourceFile($a.fileName,ru,void 0,Gi);if(!gl)return 0;gl.packageJsonLocations=(br=ru.packageJsonLocations)!=null&&br.length?ru.packageJsonLocations:void 0,gl.packageJsonScope=ru.packageJsonScope,pe.assert(!gl.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let kf;if($a.redirectInfo){if(gl!==$a.redirectInfo.unredirected)return 0;kf=!1,gl=$a}else if(mt.redirectTargetsMap.has($a.path)){if(gl!==$a)return 0;kf=!1}else kf=gl!==$a;gl.path=$a.path,gl.originalFileName=$a.originalFileName,gl.resolvedPath=$a.resolvedPath,gl.fileName=$a.fileName;let Wb=mt.sourceFileToPackageName.get($a.path);if(Wb!==void 0){let OB=co.get(Wb),p_=kf?1:0;if(OB!==void 0&&p_===1||OB===1)return 0;co.set(Wb,p_)}kf?($a.impliedNodeFormat!==gl.impliedNodeFormat?nn=1:Sc($a.libReferenceDirectives,gl.libReferenceDirectives,yf)?$a.hasNoDefaultLib!==gl.hasNoDefaultLib?nn=1:Sc($a.referencedFiles,gl.referencedFiles,yf)?(Gp(gl),Sc($a.imports,gl.imports,rm)&&Sc($a.moduleAugmentations,gl.moduleAugmentations,rm)?($a.flags&12582912)!==(gl.flags&12582912)?nn=1:Sc($a.typeReferenceDirectives,gl.typeReferenceDirectives,yf)||(nn=1):nn=1):nn=1:nn=1,Qs.push(gl)):lo($a.path)&&(nn=1,Qs.push(gl)),is.push(gl)}if(nn!==2)return nn;for(let $a of Qs){let ru=Arn($a),gl=Wi(ru,$a);(ir??(ir=new Map)).set($a.path,gl);let kf=gy($a);Pre(ru,gl,v1=>mt.getResolvedModule($a,v1.text,eVe($a,v1,kf)),Ige)&&(nn=1);let OB=$a.typeReferenceDirectives,p_=Vn(OB,$a);(Ht??(Ht=new Map)).set($a.path,p_),Pre(OB,p_,v1=>mt.getResolvedTypeReferenceDirective($a,B3t(v1),UP(v1,$a)),hge)&&(nn=1)}if(nn!==2)return nn;if(fge(sn,$e)||mt.resolvedLibReferences&&Dh(mt.resolvedLibReferences,($a,ru)=>Ox(ru).actual!==$a.actual))return 1;if(An.hasChangedAutomaticTypeDirectiveNames){if(An.hasChangedAutomaticTypeDirectiveNames())return 1}else if(ur=R9e($e,An),!Sc(mt.getAutomaticTypeDirectiveNames(),ur))return 1;Pn=mt.getMissingFilePaths(),pe.assert(is.length===mt.getSourceFiles().length);for(let $a of is)Pr.set($a.path,$a);mt.getFilesByNameMap().forEach(($a,ru)=>{if(!$a){Pr.set(ru,$a);return}if($a.path===ru){mt.isSourceFileFromExternalLibrary($a)&&Ns.set($a.path,!0);return}Pr.set(ru,Pr.get($a.path))});let tu=sn.configFile&&sn.configFile===$e.configFile||!sn.configFile&&!$e.configFile&&!S0(sn,$e,Ww);return tr.reuseStateFromOldProgram(mt.getProgramDiagnosticsContainer(),tu),Zn=tu,Lt=is,ur=mt.getAutomaticTypeDirectiveNames(),Gr=mt.getAutomaticTypeDirectiveResolutions(),Tg=mt.sourceFileToPackageName,Cs=mt.redirectTargetsMap,Tu=mt.usesUriStyleNodeCoreModules,st=mt.resolvedModules,zt=mt.resolvedTypeReferenceDirectiveNames,dt=mt.resolvedLibReferences,Br=mt.getCurrentPackagesMap(),2}function bi(br){return{getCanonicalFileName:qm,getCommonSourceDirectory:bn.getCommonSourceDirectory,getCompilerOptions:bn.getCompilerOptions,getCurrentDirectory:()=>ya,getSourceFile:bn.getSourceFile,getSourceFileByPath:bn.getSourceFileByPath,getSourceFiles:bn.getSourceFiles,isSourceFileFromExternalLibrary:wI,getRedirectFromSourceFile:af,isSourceOfProjectReferenceRedirect:C2,getSymlinkCache:fS,writeFile:br||mc,isEmitBlocked:yu,shouldTransformImportCall:WB,getEmitModuleFormatOfFile:aR,getDefaultResolutionModeForFile:My,getModeForResolutionAtIndex:o9,readFile:sn=>An.readFile(sn),fileExists:sn=>{let ei=Mn(sn);return Xg(ei)?!0:Pn.has(ei)?!1:An.fileExists(sn)},realpath:$i(An,An.realpath),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getBuildInfo:()=>{var sn;return(sn=bn.getBuildInfo)==null?void 0:sn.call(bn)},getSourceFileFromReference:(sn,ei)=>bn.getSourceFileFromReference(sn,ei),redirectTargetsMap:Cs,getFileIncludeReasons:bn.getFileIncludeReasons,createHash:$i(An,An.createHash),getModuleResolutionCache:()=>bn.getModuleResolutionCache(),trace:$i(An,An.trace),getGlobalTypingsCacheLocation:bn.getGlobalTypingsCacheLocation}}function mc(br,sn,ei,is,Qs,Oo){An.writeFile(br,sn,ei,is,Qs,Oo)}function gg(br){var sn,ei;(sn=ki)==null||sn.push(ki.Phase.Emit,"emitBuildInfo",{},!0),Mc("beforeEmit");let is=qet(A3t,bi(br),void 0,a3t,!1,!0);return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),(ei=ki)==null||ei.pop(),is}function Ag(){return on}function _u(){return Tt}function wI(br){return!!Ns.get(br.path)}function AI(br){if(!br.isDeclarationFile)return!1;if(br.hasNoDefaultLib)return!0;if($e.noLib)return!1;let sn=An.useCaseSensitiveFileNames()?MA:Mp;return $e.lib?jt($e.lib,ei=>{let is=dt.get(ei);return!!is&&sn(br.fileName,is.actual)}):sn(br.fileName,Ic())}function pp(){return Pt||(Pt=COt(bn))}function Dl(br,sn,ei,is,Qs,Oo,Os){var co,Yc;(co=ki)==null||co.push(ki.Phase.Emit,"emit",{path:br?.path},!0);let tu=YI(()=>tm(bn,br,sn,ei,is,Qs,Oo,Os));return(Yc=ki)==null||Yc.pop(),tu}function yu(br){return Wo.has(Mn(br))}function tm(br,sn,ei,is,Qs,Oo,Os,co){if(!Os){let ru=Itt(br,sn,ei,is);if(ru)return ru}let Yc=pp(),tu=Yc.getEmitResolver($e.outFile?void 0:sn,is,zet(Qs,Os));Mc("beforeEmit");let $a=Yc.runWithCancellationToken(is,()=>qet(tu,bi(ei),sn,c3t($e,Oo,Qs),Qs,!1,Os,co));return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),$a}function jp(br){return Xg(Mn(br))}function Xg(br){return Pr.get(br)||void 0}function sh(br,sn,ei){return ui(br?sn(br,ei):er(bn.getSourceFiles(),is=>(ei&&ei.throwIfCancellationRequested(),sn(is,ei))))}function dS(br,sn){return sh(br,$d,sn)}function gu(br,sn,ei){return sh(br,(is,Qs)=>Fh(is,Qs,ei),sn)}function bg(br){return nt?.get(br.path)}function KA(br,sn){return WC(br,sn,void 0)}function TA(br){var sn;if(T3(br,$e,bn))return E;let ei=tr.getCombinedDiagnostics(bn).getDiagnostics(br.fileName);return(sn=br.commentDirectives)!=null&&sn.length?ve(br,br.commentDirectives,ei).diagnostics:ei}function oi(br,sn){return sh(br,Go,sn)}function $d(br){return n0(br)?(br.additionalSyntacticDiagnostics||(br.additionalSyntacticDiagnostics=ni(br)),Nn(br.additionalSyntacticDiagnostics,br.parseDiagnostics)):br.parseDiagnostics}function YI(br){try{return br()}catch(sn){throw sn instanceof By&&(Pt=void 0),sn}}function Fh(br,sn,ei){return Nn(oVe(WC(br,sn,ei),$e),TA(br))}function WC(br,sn,ei){if(ei)return _f(br,sn,ei);let is=nt?.get(br.path);return is||(nt??(nt=new Map)).set(br.path,is=_f(br,sn)),is}function _f(br,sn,ei){return YI(()=>{if(T3(br,$e,bn))return E;let is=pp();pe.assert(!!br.bindDiagnostics);let Qs=br.scriptKind===1||br.scriptKind===2,Oo=SY(br,$e.checkJs),Os=Qs&&rz(br,$e),co=br.bindDiagnostics,Yc=is.getDiagnostics(br,sn,ei);return Oo&&(co=Me(co,tu=>urn.has(tu.code)),Yc=Me(Yc,tu=>urn.has(tu.code))),QI(br,!Oo,!!ei,co,Yc,Os?br.jsDocDiagnostics:void 0)})}function QI(br,sn,ei,...is){var Qs;let Oo=Nr(is);if(!sn||!((Qs=br.commentDirectives)!=null&&Qs.length))return Oo;let{diagnostics:Os,directives:co}=ve(br,br.commentDirectives,Oo);if(ei)return Os;for(let Yc of co.getUnusedExpectations())Os.push(kn(br,Yc.range,Z.Unused_ts_expect_error_directive));return Os}function ve(br,sn,ei){let is=bge(br,sn);return{diagnostics:ei.filter(Oo=>ln(Oo,is)===-1),directives:is}}function mr(br,sn){return YI(()=>pp().getSuggestionDiagnostics(br,sn))}function ln(br,sn){let{file:ei,start:is}=br;if(!ei)return-1;let Qs=rn(ei),Oo=Ci(Qs,is).line-1;for(;Oo>=0;){if(sn.markUsed(Oo))return Oo;let Os=ei.text.slice(Qs[Oo],Qs[Oo+1]).trim();if(Os!==""&&!/^\s*\/\/.*$/.test(Os))return-1;Oo--}return-1}function ni(br){return YI(()=>{let sn=[];return ei(br,br),Sz(br,ei,is),sn;function ei(co,Yc){switch(Yc.kind){case 170:case 173:case 175:if(Yc.questionToken===co)return sn.push(Os(co,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 174:case 177:case 178:case 179:case 219:case 263:case 220:case 261:if(Yc.type===co)return sn.push(Os(co,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(co.kind){case 274:if(co.isTypeOnly)return sn.push(Os(Yc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 279:if(co.isTypeOnly)return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 277:case 282:if(co.isTypeOnly)return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,uy(co)?"import...type":"export...type")),"skip";break;case 272:return sn.push(Os(co,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 278:if(co.isExportEquals)return sn.push(Os(co,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 299:if(co.token===119)return sn.push(Os(co,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 265:let $a=Vi(120);return pe.assertIsDefined($a),sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,$a)),"skip";case 268:let ru=co.flags&32?Vi(145):Vi(144);return pe.assertIsDefined(ru),sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,ru)),"skip";case 266:return sn.push(Os(co,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 177:case 175:case 263:return co.body?void 0:(sn.push(Os(co,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 267:let gl=pe.checkDefined(Vi(94));return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,gl)),"skip";case 236:return sn.push(Os(co,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 235:return sn.push(Os(co.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 239:return sn.push(Os(co.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 217:pe.fail()}}function is(co,Yc){if(D$e(Yc)){let tu=de(Yc.modifiers,So);tu&&sn.push(Os(tu,Z.Decorators_are_not_valid_here))}else if(oQ(Yc)&&Yc.modifiers){let tu=Se(Yc.modifiers,So);if(tu>=0){if(Si(Yc)&&!$e.experimentalDecorators)sn.push(Os(Yc.modifiers[tu],Z.Decorators_are_not_valid_here));else if(pm(Yc)){let $a=Se(Yc.modifiers,y);if($a>=0){let ru=Se(Yc.modifiers,w);if(tu>$a&&ru>=0&&tu=0&&tu<$a){let gl=Se(Yc.modifiers,So,$a);gl>=0&&sn.push(lg(Os(Yc.modifiers[gl],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Os(Yc.modifiers[tu],Z.Decorator_used_before_export_here)))}}}}}switch(Yc.kind){case 264:case 232:case 175:case 177:case 178:case 179:case 219:case 263:case 220:if(co===Yc.typeParameters)return sn.push(Oo(co,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 244:if(co===Yc.modifiers)return Qs(Yc.modifiers,Yc.kind===244),"skip";break;case 173:if(co===Yc.modifiers){for(let tu of co)Ig(tu)&&tu.kind!==126&&tu.kind!==129&&sn.push(Os(tu,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(tu.kind)));return"skip"}break;case 170:if(co===Yc.modifiers&&jt(co,Ig))return sn.push(Oo(co,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 214:case 215:case 234:case 286:case 287:case 216:if(co===Yc.typeArguments)return sn.push(Oo(co,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Qs(co,Yc){for(let tu of co)switch(tu.kind){case 87:if(Yc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:sn.push(Os(tu,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(tu.kind)));break;case 126:case 95:case 90:case 129:}}function Oo(co,Yc,...tu){let $a=co.pos;return qh(br,$a,co.end-$a,Yc,...tu)}function Os(co,Yc,...tu){return _E(br,co,Yc,...tu)}})}function Ls(br,sn){let ei=Dt?.get(br.path);return ei||(Dt??(Dt=new Map)).set(br.path,ei=Za(br,sn)),ei}function Za(br,sn){return YI(()=>{let ei=pp().getEmitResolver(br,sn);return o3t(bi(Dc),ei,br)||E})}function Go(br,sn){return br.isDeclarationFile?E:Ls(br,sn)}function Ss(){return ui(Nn(tr.getCombinedDiagnostics(bn).getGlobalDiagnostics(),Uc()))}function Uc(){if(!$e.configFile)return E;let br=tr.getCombinedDiagnostics(bn).getDiagnostics($e.configFile.fileName);return dI(sn=>{br=Nn(br,tr.getCombinedDiagnostics(bn).getDiagnostics(sn.sourceFile.fileName))}),br}function rl(){return Ue.length?ui(pp().getGlobalDiagnostics().slice()):E}function xd(){return Ye||E}function Lg(br,sn,ei,is){m2(iu(br),sn,ei,void 0,is)}function yf(br,sn){return br.fileName===sn.fileName}function rm(br,sn){return br.kind===80?sn.kind===80&&br.escapedText===sn.escapedText:sn.kind===11&&br.text===sn.text}function _h(br,sn){let ei=me.createStringLiteral(br),is=me.createImportDeclaration(void 0,void 0,ei);return N3(is,2),XA(ei,is),XA(is,sn),ei.flags&=-17,is.flags&=-17,ei}function Gp(br){if(br.imports)return;let sn=n0(br),ei=xm(br),is,Qs,Oo;if(sn||!br.isDeclarationFile&&(sS($e)||xm(br))){$e.importHelpers&&(is=[_h(PD,br)]);let co=Mne(One($e,br),$e);co&&(is||(is=[])).push(_h(co,br))}for(let co of br.statements)Os(co,!1);(br.flags&4194304||sn)&&$ne(br,!0,!0,(co,Yc)=>{UL(co,!1),is=Ft(is,Yc)}),br.imports=is||E,br.moduleAugmentations=Qs||E,br.ambientModuleNames=Oo||E;return;function Os(co,Yc){if(DY(co)){let tu=LY(co);tu&&Zg(tu)&&tu.text&&(!Yc||!Xr(tu.text))&&(UL(co,!1),is=Ft(is,tu),!Tu&&jn===0&&!br.isDeclarationFile&&(Ac(tu.text,"node:")&&!jAe.has(tu.text)?Tu=!0:Tu===void 0&&qne.has(tu.text)&&(Tu=!1)))}else if(xh(co)&&s_(co)&&(Yc||Ga(co,128)||br.isDeclarationFile)){co.name.parent=co;let tu=c2(co.name);if(ei||Yc&&!Xr(tu))(Qs||(Qs=[])).push(co.name);else if(!Yc){br.isDeclarationFile&&(Oo||(Oo=[])).push(tu);let $a=co.body;if($a)for(let ru of $a.statements)Os(ru,!0)}}}}function oh(br){var sn;let ei=Obe(br),is=ei&&((sn=dt?.get(ei))==null?void 0:sn.actual);return is!==void 0?jp(is):void 0}function b1(br,sn){return Z_(stt(sn.fileName,br.fileName),jp)}function Z_(br,sn,ei,is){if(E0(br)){let Qs=An.getCanonicalFileName(br);if(!$e.allowNonTsExtensions&&!F(Nr(ba),Os=>aA(Qs,Os))){ei&&(pN(Qs)?ei(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,br):ei(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,br,"'"+Nr(Gl).join("', '")+"'"));return}let Oo=sn(br);if(ei)if(Oo)K3(is)&&Qs===An.getCanonicalFileName(Xg(is.file).fileName)&&ei(Z.A_file_cannot_have_a_reference_to_itself);else{let Os=af(br);Os?.outputDts?ei(Z.Output_file_0_has_not_been_built_from_source_file_1,Os.outputDts,br):ei(Z.File_0_not_found,br)}return Oo}else{let Qs=$e.allowNonTsExtensions&&sn(br);if(Qs)return Qs;if(ei&&$e.allowNonTsExtensions){ei(Z.File_0_not_found,br);return}let Oo=F(Gl[0],Os=>sn(br+Os));return ei&&!Oo&&ei(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,br,"'"+Nr(Gl).join("', '")+"'"),Oo}}function m2(br,sn,ei,is,Qs){Z_(br,Oo=>Js(Oo,sn,ei,Qs,is),(Oo,...Os)=>$s(void 0,Qs,Oo,Os),Qs)}function Vb(br,sn){return m2(br,!1,!1,void 0,sn)}function or(br,sn,ei){!K3(ei)&&jt(tr.getFileReasons().get(sn.path),K3)?$s(sn,ei,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[sn.fileName,br]):$s(sn,ei,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[br,sn.fileName])}function qn(br,sn,ei,is,Qs,Oo,Os){var co;let Yc=H3.createRedirectedSourceFile({redirectTarget:br,unredirected:sn});return Yc.fileName=ei,Yc.path=is,Yc.resolvedPath=Qs,Yc.originalFileName=Oo,Yc.packageJsonLocations=(co=Os.packageJsonLocations)!=null&&co.length?Os.packageJsonLocations:void 0,Yc.packageJsonScope=Os.packageJsonScope,Ns.set(is,jn>0),Yc}function Js(br,sn,ei,is,Qs){var Oo,Os;(Oo=ki)==null||Oo.push(ki.Phase.Program,"findSourceFile",{fileName:br,isDefaultLib:sn||void 0,fileIncludeKind:$0[is.kind]});let co=RA(br,sn,ei,is,Qs);return(Os=ki)==null||Os.pop(),co}function Hl(br,sn,ei,is){let Qs=iVe(Xc(br,ya),sn?.getPackageJsonInfoCache(),ei,is),Oo=Mg(is),Os=Lne(is);return typeof Qs=="object"?{...Qs,languageVersion:Oo,setExternalModuleIndicator:Os,jsDocParsingMode:ei.jsDocParsingMode}:{languageVersion:Oo,impliedNodeFormat:Qs,setExternalModuleIndicator:Os,jsDocParsingMode:ei.jsDocParsingMode}}function RA(br,sn,ei,is,Qs){var Oo,Os;let co=Mn(br);if(Kr){let gl=XI(co);if(!gl&&An.realpath&&$e.preserveSymlinks&&PC(br)&&br.includes(Vx)){let kf=Mn(An.realpath(br));kf!==co&&(gl=XI(kf))}if(gl?.source){let kf=Js(gl.source,sn,ei,is,Qs);return kf&&uA(kf,co,br,void 0),kf}}let Yc=br;if(Pr.has(co)){let gl=Pr.get(co),kf=NA(gl||void 0,is,!0);if(gl&&kf&&$e.forceConsistentCasingInFileNames!==!1){let Wb=gl.fileName;Mn(Wb)!==Mn(br)&&(br=((Oo=af(br))==null?void 0:Oo.outputDts)||br);let p_=KR(Wb,ya),MB=KR(br,ya);p_!==MB&&or(br,gl,is)}return gl&&Ns.get(gl.path)&&jn===0?(Ns.set(gl.path,!1),$e.noResolve||(OC(gl,sn),E1(gl)),$e.noLib||Pb(gl),Zi.set(gl.path,!1),oR(gl)):gl&&Zi.get(gl.path)&&jn$s(void 0,is,Z.Cannot_read_file_0_Colon_1,[br,gl]),Gi);if(Qs){let gl=oN(Qs),kf=Qu.get(gl);if(kf){let Wb=qn(kf,ru,br,co,Mn(br),Yc,$a);return Cs.add(kf.path,br),uA(Wb,co,br,tu),NA(Wb,is,!1),Tg.set(co,xJ(Qs)),Rt.push(Wb),Wb}else ru&&(Qu.set(gl,ru),Tg.set(co,xJ(Qs)))}if(uA(ru,co,br,tu),ru){if(Ns.set(co,jn>0),ru.fileName=br,ru.path=co,ru.resolvedPath=Mn(br),ru.originalFileName=Yc,ru.packageJsonLocations=(Os=$a.packageJsonLocations)!=null&&Os.length?$a.packageJsonLocations:void 0,ru.packageJsonScope=$a.packageJsonScope,NA(ru,is,!1),An.useCaseSensitiveFileNames()){let gl=Om(co),kf=pt.get(gl);kf?or(br,kf,is):pt.set(gl,ru)}ks=ks||ru.hasNoDefaultLib&&!ei,$e.noResolve||(OC(ru,sn),E1(ru)),$e.noLib||Pb(ru),oR(ru),sn?_t.push(ru):Rt.push(ru),(Gt??(Gt=new Set)).add(ru.path)}return ru}function NA(br,sn,ei){return br&&(!ei||!K3(sn)||!Gt?.has(sn.file))?(tr.getFileReasons().add(br.path,sn),!0):!1}function uA(br,sn,ei,is){is?(hm(ei,is,br),hm(ei,sn,br||!1)):hm(ei,sn,br)}function hm(br,sn,ei){Pr.set(sn,ei),ei!==void 0?Pn.delete(sn):Pn.set(sn,br)}function af(br){return nr?.get(Mn(br))}function dI(br){return tie(on,br)}function XI(br){return Fr?.get(br)}function C2(br){return Kr&&!!af(br)}function d_(br){if(it)return it.get(br)||void 0}function OC(br,sn){F(br.referencedFiles,(ei,is)=>{m2(stt(ei.fileName,br.fileName),sn,!1,void 0,{kind:4,file:br.path,index:is})})}function E1(br){let sn=br.typeReferenceDirectives;if(!sn.length)return;let ei=Ht?.get(br.path)||Vn(sn,br),is=wie();(zt??(zt=new Map)).set(br.path,is);for(let Qs=0;Qs{let is=Obe(sn);is?Lg(Wx(is),!0,!0,{kind:7,file:br.path,index:ei}):tr.addFileProcessingDiagnostic({kind:0,reason:{kind:7,file:br.path,index:ei}})})}function qm(br){return An.getCanonicalFileName(br)}function oR(br){if(Gp(br),br.imports.length||br.moduleAugmentations.length){let sn=Arn(br),ei=ir?.get(br.path)||Wi(sn,br);pe.assert(ei.length===sn.length);let is=gy(br),Qs=wie();(st??(st=new Map)).set(br.path,Qs);for(let Oo=0;Oomn,Wb=gl&&!htt(is,Os,br)&&!is.noResolve&&OoRU(Os.commandLine,!An.useCaseSensitiveFileNames()));Qs.fileNames.forEach(tu=>{let $a=Mn(tu),ru;!PC(tu)&&!aA(tu,".json")&&(Qs.options.outFile?ru=co:(ru=kde(tu,Os.commandLine,!An.useCaseSensitiveFileNames(),Yc),Fr.set(Mn(ru),{resolvedRef:Os,source:tu}))),nr.set($a,{resolvedRef:Os,outputDts:ru})})}return Qs.projectReferences&&(Os.references=Qs.projectReferences.map(xN)),Os}function at(){$e.strictPropertyInitialization&&!a_($e,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks"),$e.exactOptionalPropertyTypes&&!a_($e,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks"),($e.isolatedModules||$e.verbatimModuleSyntax)&&$e.outFile&&gr(Z.Option_0_cannot_be_specified_with_option_1,"outFile",$e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules"),$e.isolatedDeclarations&&(TF($e)&&gr(Z.Option_0_cannot_be_specified_with_option_1,"allowJs","isolatedDeclarations"),Ly($e)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"isolatedDeclarations","declaration","composite")),$e.inlineSourceMap&&($e.sourceMap&&gr(Z.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),$e.mapRoot&&gr(Z.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")),$e.composite&&($e.declaration===!1&&gr(Z.Composite_projects_may_not_disable_declaration_emit,"declaration"),$e.incremental===!1&&gr(Z.Composite_projects_may_not_disable_incremental_compilation,"declaration"));let br=$e.outFile;if(!$e.tsBuildInfoFile&&$e.incremental&&!br&&!$e.configFilePath&&tr.addConfigDiagnostic(Nf(Z.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)),_i(),wa(),$e.composite){let Os=new Set(Ue.map(Mn));for(let co of Lt)SP(co,bn)&&!Os.has(co.path)&&tr.addLazyConfigDiagnostic(co,Z.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,co.fileName,$e.configFilePath||"")}if($e.paths){for(let Os in $e.paths)if(Da($e.paths,Os))if(Cbe(Os)||ul(!0,Os,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Os),Ki($e.paths[Os])){let co=$e.paths[Os].length;co===0&&ul(!1,Os,Z.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,Os);for(let Yc=0;Ycxm(Os)&&!Os.isDeclarationFile);if($e.isolatedModules||$e.verbatimModuleSyntax)$e.module===0&&sn<2&&$e.isolatedModules&&gr(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),$e.preserveConstEnums===!1&&gr(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,$e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(ei&&sn<2&&$e.module===0){let Os=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(qh(ei,Os.start,Os.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(br&&!$e.emitDeclarationOnly){if($e.module&&!($e.module===2||$e.module===4))gr(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if($e.module===void 0&&ei){let Os=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(qh(ei,Os.start,Os.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(NP($e)&&(k_($e)===1?gr(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):wAe($e)||gr(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),$e.outDir||$e.rootDir||$e.sourceRoot||$e.mapRoot||Ly($e)&&$e.declarationDir){let Os=ci();$e.outDir&&Os===""&&Lt.some(co=>Wf(co.fileName)>1)&&gr(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}$e.checkJs&&!TF($e)&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),$e.emitDeclarationOnly&&(Ly($e)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite")),$e.emitDecoratorMetadata&&!$e.experimentalDecorators&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),$e.jsxFactory?($e.reactNamespace&&gr(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",mEe.get(""+$e.jsx)),Bz($e.jsxFactory,sn)||Ln("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,$e.jsxFactory)):$e.reactNamespace&&!Uh($e.reactNamespace,sn)&&Ln("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,$e.reactNamespace),$e.jsxFragmentFactory&&($e.jsxFactory||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",mEe.get(""+$e.jsx)),Bz($e.jsxFragmentFactory,sn)||Ln("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,$e.jsxFragmentFactory)),$e.reactNamespace&&($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",mEe.get(""+$e.jsx)),$e.jsxImportSource&&$e.jsx===2&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",mEe.get(""+$e.jsx));let is=i0($e);$e.verbatimModuleSyntax&&(is===2||is===3||is===4)&&gr(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),$e.allowImportingTsExtensions&&!($e.noEmit||$e.emitDeclarationOnly||$e.rewriteRelativeImportExtensions)&&Ln("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Qs=k_($e);if($e.resolvePackageJsonExports&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),$e.resolvePackageJsonImports&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),$e.customConditions&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Qs===100&&!Wne(is)&&is!==200&&Ln("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),jS[is]&&100<=is&&is<=199&&!(3<=Qs&&Qs<=99)){let Os=jS[is],co=z_[Os]?Os:"Node16";Ln("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,co,Os)}else if(z_[Qs]&&3<=Qs&&Qs<=99&&!(100<=is&&is<=199)){let Os=z_[Qs];Ln("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,Os,Os)}if(!$e.noEmit&&!$e.suppressOutputPathCheck){let Os=bi(),co=new Set;Jet(Os,Yc=>{$e.emitDeclarationOnly||Oo(Yc.jsFilePath,co),Oo(Yc.declarationFilePath,co)})}function Oo(Os,co){if(Os){let Yc=Mn(Os);if(Pr.has(Yc)){let $a;$e.configFilePath||($a=wu(void 0,Z.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),$a=wu($a,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,Os),Jg(Os,SAe($a))}let tu=An.useCaseSensitiveFileNames()?Yc:Om(Yc);co.has(tu)?Jg(Os,Nf(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,Os)):co.add(tu)}}}function en(){let br=$e.ignoreDeprecations;if(br){if(br==="5.0")return new O(br);ht()}return O.zero}function gi(br,sn,ei,is){let Qs=new O(br),Oo=new O(sn),Os=new O(ot||I),co=en(),Yc=Oo.compareTo(Os)!==1,tu=!Yc&&co.compareTo(Qs)===-1;(Yc||tu)&&is(($a,ru,gl)=>{Yc?ru===void 0?ei($a,ru,gl,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,$a):ei($a,ru,gl,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,$a,ru):ru===void 0?ei($a,ru,gl,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,$a,sn,br):ei($a,ru,gl,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,$a,ru,sn,br)})}function _i(){function br(sn,ei,is,Qs,...Oo){if(is){let Os=wu(void 0,Z.Use_0_instead,is),co=wu(Os,Qs,...Oo);Xl(!ei,sn,void 0,co)}else Xl(!ei,sn,void 0,Qs,...Oo)}gi("5.0","5.5",br,sn=>{$e.target===0&&sn("target","ES3"),$e.noImplicitUseStrict&&sn("noImplicitUseStrict"),$e.keyofStringsOnly&&sn("keyofStringsOnly"),$e.suppressExcessPropertyErrors&&sn("suppressExcessPropertyErrors"),$e.suppressImplicitAnyIndexErrors&&sn("suppressImplicitAnyIndexErrors"),$e.noStrictGenericChecks&&sn("noStrictGenericChecks"),$e.charset&&sn("charset"),$e.out&&sn("out",void 0,"outFile"),$e.importsNotUsedAsValues&&sn("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),$e.preserveValueImports&&sn("preserveValueImports",void 0,"verbatimModuleSyntax")})}function ys(br,sn,ei){function is(Qs,Oo,Os,co,...Yc){bs(sn,ei,co,...Yc)}gi("5.0","5.5",is,Qs=>{br.prepend&&Qs("prepend")})}function $s(br,sn,ei,is){tr.addFileProcessingDiagnostic({kind:1,file:br&&br.path,fileProcessingReason:sn,diagnostic:ei,args:is})}function wa(){let br=$e.suppressOutputPathCheck?void 0:U3($e);gz(Tt,on,(sn,ei,is)=>{let Qs=(ei?ei.commandLine.projectReferences:Tt)[is],Oo=ei&&ei.sourceFile;if(ys(Qs,Oo,is),!sn){bs(Oo,is,Z.File_0_not_found,Qs.path);return}let Os=sn.commandLine.options;(!Os.composite||Os.noEmit)&&(ei?ei.commandLine.fileNames:Ue).length&&(Os.composite||bs(Oo,is,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Qs.path),Os.noEmit&&bs(Oo,is,Z.Referenced_project_0_may_not_disable_emit,Qs.path)),!ei&&br&&br===U3(Os)&&(bs(Oo,is,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,br,Qs.path),Wo.set(Mn(br),!0))})}function pc(br,sn,ei,...is){let Qs=!0;Fe(Oo=>{og(Oo.initializer)&&WJ(Oo.initializer,br,Os=>{let co=Os.initializer;OI(co)&&co.elements.length>sn&&(tr.addConfigDiagnostic(_E($e.configFile,co.elements[sn],ei,...is)),Qs=!1)})}),Qs&&eg(ei,...is)}function ul(br,sn,ei,...is){let Qs=!0;Fe(Oo=>{og(Oo.initializer)&&Df(Oo.initializer,br,sn,void 0,ei,...is)&&(Qs=!1)}),Qs&&eg(ei,...is)}function Fe(br){return zAe(jl(),"paths",br)}function gr(br,sn,ei,is){Xl(!0,sn,ei,br,sn,ei,is)}function Ln(br,sn,...ei){Xl(!1,br,void 0,sn,...ei)}function bs(br,sn,ei,...is){let Qs=zre(br||$e.configFile,"references",Oo=>OI(Oo.initializer)?Oo.initializer:void 0);Qs&&Qs.elements.length>sn?tr.addConfigDiagnostic(_E(br||$e.configFile,Qs.elements[sn],ei,...is)):tr.addConfigDiagnostic(Nf(ei,...is))}function Xl(br,sn,ei,is,...Qs){let Oo=jl();(!Oo||!Df(Oo,br,sn,ei,is,...Qs))&&eg(is,...Qs)}function eg(br,...sn){let ei=Eu();ei?"messageText"in br?tr.addConfigDiagnostic(Bw($e.configFile,ei.name,br)):tr.addConfigDiagnostic(_E($e.configFile,ei.name,br,...sn)):"messageText"in br?tr.addConfigDiagnostic(SAe(br)):tr.addConfigDiagnostic(Nf(br,...sn))}function jl(){if(hc===void 0){let br=Eu();hc=br&&Gs(br.initializer,og)||!1}return hc||void 0}function Eu(){return yr===void 0&&(yr=WJ(m7($e.configFile),"compilerOptions",Fl)||!1),yr||void 0}function Df(br,sn,ei,is,Qs,...Oo){let Os=!1;return WJ(br,ei,co=>{"messageText"in Qs?tr.addConfigDiagnostic(Bw($e.configFile,sn?co.name:co.initializer,Qs)):tr.addConfigDiagnostic(_E($e.configFile,sn?co.name:co.initializer,Qs,...Oo)),Os=!0},is),Os}function Jg(br,sn){Wo.set(Mn(br),!0),tr.addConfigDiagnostic(sn)}function MC(br){if($e.noEmit)return!1;let sn=Mn(br);if(Xg(sn))return!1;let ei=$e.outFile;if(ei)return S1(sn,ei)||S1(sn,s0(ei)+".d.ts");if($e.declarationDir&&Jh($e.declarationDir,sn,ya,!An.useCaseSensitiveFileNames()))return!0;if($e.outDir)return Jh($e.outDir,sn,ya,!An.useCaseSensitiveFileNames());if(fu(sn,uU)||PC(sn)){let is=s0(sn);return!!Xg(is+".ts")||!!Xg(is+".tsx")}return!1}function S1(br,sn){return qf(br,sn,ya,!An.useCaseSensitiveFileNames())===0}function fS(){return An.getSymlinkCache?An.getSymlinkCache():(Ke||(Ke=_be(ya,qm)),Lt&&!Ke.hasProcessedResolutions()&&Ke.setSymlinksFromResolutions(xe,fr,Gr),Ke)}function bv(br,sn){return eVe(br,sn,gy(br))}function XF(br,sn){return arn(br,sn,gy(br))}function o9(br,sn){return bv(br,KEe(br,sn))}function My(br){return sVe(br,gy(br))}function sk(br){return NU(br,gy(br))}function aR(br){return Lde(br,gy(br))}function WB(br){return grn(br,gy(br))}function UP(br,sn){return br.resolutionMode||My(sn)}}function grn(s,c){let g=i0(c);return 100<=g&&g<=199||g===200?!1:Lde(s,c)<5}function Lde(s,c){return NU(s,c)??i0(c)}function NU(s,c){var g,d;let h=i0(c);if(100<=h&&h<=199)return s.impliedNodeFormat;if(s.impliedNodeFormat===1&&(((g=s.packageJsonScope)==null?void 0:g.contents.packageJsonContent.type)==="commonjs"||fu(s.fileName,[".cjs",".cts"])))return 1;if(s.impliedNodeFormat===99&&(((d=s.packageJsonScope)==null?void 0:d.contents.packageJsonContent.type)==="module"||fu(s.fileName,[".mjs",".mts"])))return 99}function sVe(s,c){return Ibe(c)?NU(s,c):void 0}function iws(s){let c,g=s.compilerHost.fileExists,d=s.compilerHost.directoryExists,h=s.compilerHost.getDirectories,_=s.compilerHost.realpath;if(!s.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:Dc,fileExists:T};s.compilerHost.fileExists=T;let S;return d&&(S=s.compilerHost.directoryExists=re=>d.call(s.compilerHost,re)?(M(re),!0):s.getResolvedProjectReferences()?(c||(c=new Set,s.forEachResolvedProjectReference(ge=>{let Ie=ge.commandLine.options.outFile;if(Ie)c.add(Mo(s.toPath(Ie)));else{let _e=ge.commandLine.options.declarationDir||ge.commandLine.options.outDir;_e&&c.add(s.toPath(_e))}})),ee(re,!1)):!1),h&&(s.compilerHost.getDirectories=re=>!s.getResolvedProjectReferences()||d&&d.call(s.compilerHost,re)?h.call(s.compilerHost,re):[]),_&&(s.compilerHost.realpath=re=>{var ge;return((ge=s.getSymlinkCache().getSymlinkedFiles())==null?void 0:ge.get(s.toPath(re)))||_.call(s.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:T,directoryExists:S};function R(){s.compilerHost.fileExists=g,s.compilerHost.directoryExists=d,s.compilerHost.getDirectories=h}function T(re){return g.call(s.compilerHost,re)?!0:!s.getResolvedProjectReferences()||!PC(re)?!1:ee(re,!0)}function W(re){let ge=s.getRedirectFromOutput(s.toPath(re));return ge!==void 0?Xs(ge.source)?g.call(s.compilerHost,ge.source):!0:void 0}function V(re){let ge=s.toPath(re),Ie=`${ge}${ag}`;return SB(c,_e=>ge===_e||Ac(_e,Ie)||Ac(ge,`${_e}/`))}function M(re){var ge;if(!s.getResolvedProjectReferences()||sz(re)||!_||!re.includes(Vx))return;let Ie=s.getSymlinkCache(),_e=hp(s.toPath(re));if((ge=Ie.getSymlinkedDirectories())!=null&&ge.has(_e))return;let Ee=iu(_.call(s.compilerHost,re)),Ne;if(Ee===re||(Ne=hp(s.toPath(Ee)))===_e){Ie.setSymlinkedDirectory(_e,!1);return}Ie.setSymlinkedDirectory(re,{real:hp(Ee),realPath:Ne})}function ee(re,ge){var Ie;let _e=ge?W:V,Ee=_e(re);if(Ee!==void 0)return Ee;let Ne=s.getSymlinkCache(),Te=Ne.getSymlinkedDirectories();if(!Te)return!1;let Ze=s.toPath(re);return Ze.includes(Vx)?ge&&((Ie=Ne.getSymlinkedFiles())!=null&&Ie.has(Ze))?!0:ae(Te.entries(),([We,Ue])=>{if(!Ue||!Ac(Ze,We))return;let $e=_e(Ze.replace(We,Ue.realPath));if(ge&&$e){let Ye=Xc(re,s.compilerHost.getCurrentDirectory());Ne.setSymlinkedFile(Ze,`${Ue.real}${Ye.replace(new RegExp(We,"i"),"")}`)}return $e})||!1:!1}}var ftt={diagnostics:E,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function Itt(s,c,g,d){let h=s.getCompilerOptions();if(h.noEmit)return c?ftt:s.emitBuildInfo(g,d);if(!h.noEmitOnError)return;let _=[...s.getOptionsDiagnostics(d),...s.getSyntacticDiagnostics(c,d),...s.getGlobalDiagnostics(d),...s.getSemanticDiagnostics(c,d)];if(_.length===0&&Ly(s.getCompilerOptions())&&(_=s.getDeclarationDiagnostics(void 0,d)),!_.length)return;let S;if(!c){let R=s.emitBuildInfo(g,d);R.diagnostics&&(_=[..._,...R.diagnostics]),S=R.emittedFiles}return{diagnostics:_,sourceMaps:void 0,emittedFiles:S,emitSkipped:!0}}function oVe(s,c){return Me(s,g=>!g.skippedOn||!c[g.skippedOn])}function aVe(s,c=s){return{fileExists:g=>c.fileExists(g),readDirectory(g,d,h,_,S){return pe.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(g,d,h,_,S)},readFile:g=>c.readFile(g),directoryExists:$i(c,c.directoryExists),getDirectories:$i(c,c.getDirectories),realpath:$i(c,c.realpath),useCaseSensitiveFileNames:s.useCaseSensitiveFileNames(),getCurrentDirectory:()=>s.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:s.onUnRecoverableConfigFileDiagnostic||cm,trace:s.trace?g=>s.trace(g):void 0}}function xz(s){return Xtt(s.path)}function htt(s,{extension:c},{isDeclarationFile:g}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||h();case".js":case".mjs":case".cjs":return h();case".json":return _();default:return S()}function d(){return s.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function h(){return TF(s)||!a_(s,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function _(){return NP(s)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function S(){return g||s.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function Arn({imports:s,moduleAugmentations:c}){let g=s.map(d=>d);for(let d of c)d.kind===11&&g.push(d);return g}function KEe({imports:s,moduleAugmentations:c},g){if(gc.add(ge)),d?.forEach(ge=>{switch(ge.kind){case 1:return c.add(V(re,ge.file&&re.getSourceFileByPath(ge.file),ge.fileProcessingReason,ge.diagnostic,ge.args||E));case 0:return c.add(W(re,ge));case 2:return ge.diagnostics.forEach(Ie=>c.add(Ie));default:pe.assertNever(ge)}}),S?.forEach(({file:ge,diagnostic:Ie,args:_e})=>c.add(V(re,ge,void 0,Ie,_e))),R=void 0,T=void 0,c)}};function W(re,{reason:ge}){let{file:Ie,pos:_e,end:Ee}=Zde(re,ge),Ne=Ie.libReferenceDirectives[ge.index],Te=qY(Ne),Ze=aa(Nm(Te,"lib."),".d.ts"),We=Dr(Ze,A9e,Fl);return qh(Ie,pe.checkDefined(_e),pe.checkDefined(Ee)-_e,We?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,Te,We)}function V(re,ge,Ie,_e,Ee){let Ne,Te,Ze,We,Ue,$e,Ye=ge&&g.get(ge.path),Tt=K3(Ie)?Ie:void 0,ot=ge&&R?.get(ge.path);ot?(ot.fileIncludeReasonDetails?(Ne=new Set(Ye),Ye?.forEach(_t)):Ye?.forEach(ht),Ue=ot.redirectInfo):(Ye?.forEach(ht),Ue=ge&&Gtt(ge,re.getCompilerOptionsForFile(ge))),Ie&&ht(Ie);let Qe=Ne?.size!==Ye?.length;Tt&&Ne?.size===1&&(Ne=void 0),Ne&&ot&&(ot.details&&!Qe?$e=wu(ot.details,_e,...Ee??E):ot.fileIncludeReasonDetails&&(Qe?Rt()?Te=Ft(ot.fileIncludeReasonDetails.next.slice(0,Ye.length),Te[0]):Te=[...ot.fileIncludeReasonDetails.next,Te[0]]:Rt()?Te=ot.fileIncludeReasonDetails.next.slice(0,Ye.length):We=ot.fileIncludeReasonDetails)),$e||(We||(We=Ne&&wu(Te,Z.The_file_is_in_the_program_because_Colon)),$e=wu(Ue?We?[We,...Ue]:Ue:We,_e,...Ee||E)),ge&&(ot?(!ot.fileIncludeReasonDetails||!Qe&&We)&&(ot.fileIncludeReasonDetails=We):(R??(R=new Map)).set(ge.path,ot={fileIncludeReasonDetails:We,redirectInfo:Ue}),!ot.details&&!Qe&&(ot.details=$e.next));let mt=Tt&&Zde(re,Tt);return mt&&Fie(mt)?ze(mt.file,mt.pos,mt.end-mt.pos,$e,Ze):SAe($e,Ze);function ht(Lt){Ne?.has(Lt)||((Ne??(Ne=new Set)).add(Lt),(Te??(Te=[])).push(Ltt(re,Lt)),_t(Lt))}function _t(Lt){!Tt&&K3(Lt)?Tt=Lt:Tt!==Lt&&(Ze=Ft(Ze,M(re,Lt)))}function Rt(){var Lt;return((Lt=ot.fileIncludeReasonDetails.next)==null?void 0:Lt.length)!==Ye?.length}}function M(re,ge){let Ie=T?.get(ge);return Ie===void 0&&(T??(T=new Map)).set(ge,Ie=ee(re,ge)??!1),Ie||void 0}function ee(re,ge){if(K3(ge)){let Ze=Zde(re,ge),We;switch(ge.kind){case 3:We=Z.File_is_included_via_import_here;break;case 4:We=Z.File_is_included_via_reference_here;break;case 5:We=Z.File_is_included_via_type_library_reference_here;break;case 7:We=Z.File_is_included_via_library_reference_here;break;default:pe.assertNever(ge)}return Fie(Ze)?qh(Ze.file,Ze.pos,Ze.end-Ze.pos,We):void 0}let Ie=re.getCurrentDirectory(),_e=re.getRootFileNames(),Ee=re.getCompilerOptions();if(!Ee.configFile)return;let Ne,Te;switch(ge.kind){case 0:if(!Ee.configFile.configFileSpecs)return;let Ze=Xc(_e[ge.index],Ie),We=Ftt(re,Ze);if(We){Ne=Pge(Ee.configFile,"files",We),Te=Z.File_is_matched_by_files_list_specified_here;break}let Ue=Ztt(re,Ze);if(!Ue||!Xs(Ue))return;Ne=Pge(Ee.configFile,"include",Ue),Te=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let $e=re.getResolvedProjectReferences(),Ye=re.getProjectReferences(),Tt=pe.checkDefined($e?.[ge.index]),ot=gz(Ye,$e,(Rt,Lt,Ke)=>Rt===Tt?{sourceFile:Lt?.sourceFile||Ee.configFile,index:Ke}:void 0);if(!ot)return;let{sourceFile:Qe,index:mt}=ot,ht=zre(Qe,"references",Rt=>OI(Rt.initializer)?Rt.initializer:void 0);return ht&&ht.elements.length>mt?_E(Qe,ht.elements[mt],ge.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Ee.types)return;Ne=Mbe(s(),"types",ge.typeReference),Te=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(ge.index!==void 0){Ne=Mbe(s(),"lib",Ee.lib[ge.index]),Te=Z.File_is_library_specified_here;break}let _t=TAe(Mg(Ee));Ne=_t?DLe(s(),"target",_t):void 0,Te=Z.File_is_default_library_for_target_specified_here;break;default:pe.assertNever(ge)}return Ne&&_E(Ee.configFile,Ne,Te)}}function T3t(s,c,g,d,h,_){let S=[],{emitSkipped:R,diagnostics:T}=s.emit(c,W,d,g,h,_);return{outputFiles:S,emitSkipped:R,diagnostics:T};function W(V,M,ee){S.push({name:V,writeByteOrderMark:ee,text:M})}}var R3t=(s=>(s[s.ComputedDts=0]="ComputedDts",s[s.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",s[s.UsedVersion=2]="UsedVersion",s))(R3t||{}),nR;(s=>{function c(){function ot(Qe,mt,ht){let _t={getKeys:Rt=>mt.get(Rt),getValues:Rt=>Qe.get(Rt),keys:()=>Qe.keys(),size:()=>Qe.size,deleteKey:Rt=>{(ht||(ht=new Set)).add(Rt);let Lt=Qe.get(Rt);return Lt?(Lt.forEach(Ke=>d(mt,Ke,Rt)),Qe.delete(Rt),!0):!1},set:(Rt,Lt)=>{ht?.delete(Rt);let Ke=Qe.get(Rt);return Qe.set(Rt,Lt),Ke?.forEach(Pt=>{Lt.has(Pt)||d(mt,Pt,Rt)}),Lt.forEach(Pt=>{Ke?.has(Pt)||g(mt,Pt,Rt)}),_t}};return _t}return ot(new Map,new Map,void 0)}s.createManyToManyPathMap=c;function g(ot,Qe,mt){let ht=ot.get(Qe);ht||(ht=new Set,ot.set(Qe,ht)),ht.add(mt)}function d(ot,Qe,mt){let ht=ot.get(Qe);return ht?.delete(mt)?(ht.size||ot.delete(Qe),!0):!1}function h(ot){return Xt(ot.declarations,Qe=>{var mt;return(mt=ms(Qe))==null?void 0:mt.resolvedPath})}function _(ot,Qe){let mt=ot.getSymbolAtLocation(Qe);return mt&&h(mt)}function S(ot,Qe,mt,ht){var _t;return Ou(((_t=ot.getRedirectFromSourceFile(Qe))==null?void 0:_t.outputDts)||Qe,mt,ht)}function R(ot,Qe,mt){let ht;if(Qe.imports&&Qe.imports.length>0){let Ke=ot.getTypeChecker();for(let Pt of Qe.imports){let _r=_(Ke,Pt);_r?.forEach(Lt)}}let _t=Mo(Qe.resolvedPath);if(Qe.referencedFiles&&Qe.referencedFiles.length>0)for(let Ke of Qe.referencedFiles){let Pt=S(ot,Ke.fileName,_t,mt);Lt(Pt)}if(ot.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:Ke})=>{if(!Ke)return;let Pt=Ke.resolvedFileName,_r=S(ot,Pt,_t,mt);Lt(_r)},Qe),Qe.moduleAugmentations.length){let Ke=ot.getTypeChecker();for(let Pt of Qe.moduleAugmentations){if(!Zg(Pt))continue;let _r=Ke.getSymbolAtLocation(Pt);_r&&Rt(_r)}}for(let Ke of ot.getTypeChecker().getAmbientModules())Ke.declarations&&Ke.declarations.length>1&&Rt(Ke);return ht;function Rt(Ke){if(Ke.declarations)for(let Pt of Ke.declarations){let _r=ms(Pt);_r&&_r!==Qe&&Lt(_r.resolvedPath)}}function Lt(Ke){(ht||(ht=new Set)).add(Ke)}}function T(ot,Qe){return Qe&&!Qe.referencedMap==!ot}s.canReuseOldState=T;function W(ot){return ot.module!==0&&!ot.outFile?c():void 0}s.createReferencedMap=W;function V(ot,Qe,mt){var ht,_t;let Rt=new Map,Lt=ot.getCompilerOptions(),Ke=W(Lt),Pt=T(Ke,Qe);ot.getTypeChecker();for(let _r of ot.getSourceFiles()){let Gt=pe.checkDefined(_r.version,"Program intended to be used with Builder should have source files with versions set"),nt=Pt?(ht=Qe.oldSignatures)==null?void 0:ht.get(_r.resolvedPath):void 0,Dt=nt===void 0?Pt?(_t=Qe.fileInfos.get(_r.resolvedPath))==null?void 0:_t.signature:void 0:nt||void 0;if(Ke){let tr=R(ot,_r,ot.getCanonicalFileName);tr&&Ke.set(_r.resolvedPath,tr)}Rt.set(_r.resolvedPath,{version:Gt,signature:Dt,affectsGlobalScope:Lt.outFile?void 0:Ue(_r)||void 0,impliedFormat:_r.impliedNodeFormat})}return{fileInfos:Rt,referencedMap:Ke,useFileVersionAsSignature:!mt&&!Pt}}s.create=V;function M(ot){ot.allFilesExcludingDefaultLibraryFile=void 0,ot.allFileNames=void 0}s.releaseCache=M;function ee(ot,Qe,mt,ht,_t){var Rt;let Lt=re(ot,Qe,mt,ht,_t);return(Rt=ot.oldSignatures)==null||Rt.clear(),Lt}s.getFilesAffectedBy=ee;function re(ot,Qe,mt,ht,_t){let Rt=Qe.getSourceFileByPath(mt);return Rt?_e(ot,Qe,Rt,ht,_t)?(ot.referencedMap?Tt:Ye)(ot,Qe,Rt,ht,_t):[Rt]:E}s.getFilesAffectedByWithOldState=re;function ge(ot,Qe,mt){ot.fileInfos.get(mt).signature=Qe,(ot.hasCalledUpdateShapeSignature||(ot.hasCalledUpdateShapeSignature=new Set)).add(mt)}s.updateSignatureOfFile=ge;function Ie(ot,Qe,mt,ht,_t){ot.emit(Qe,(Rt,Lt,Ke,Pt,_r,Gt)=>{pe.assert(PC(Rt),`File extension for signature expected to be dts: Got:: ${Rt}`),_t(_tt(ot,Qe,Lt,ht,Gt),_r)},mt,2,void 0,!0)}s.computeDtsSignature=Ie;function _e(ot,Qe,mt,ht,_t,Rt=ot.useFileVersionAsSignature){var Lt;if((Lt=ot.hasCalledUpdateShapeSignature)!=null&&Lt.has(mt.resolvedPath))return!1;let Ke=ot.fileInfos.get(mt.resolvedPath),Pt=Ke.signature,_r;return!mt.isDeclarationFile&&!Rt&&Ie(Qe,mt,ht,_t,Gt=>{_r=Gt,_t.storeSignatureInfo&&(ot.signatureInfo??(ot.signatureInfo=new Map)).set(mt.resolvedPath,0)}),_r===void 0&&(_r=mt.version,_t.storeSignatureInfo&&(ot.signatureInfo??(ot.signatureInfo=new Map)).set(mt.resolvedPath,2)),(ot.oldSignatures||(ot.oldSignatures=new Map)).set(mt.resolvedPath,Pt||!1),(ot.hasCalledUpdateShapeSignature||(ot.hasCalledUpdateShapeSignature=new Set)).add(mt.resolvedPath),Ke.signature=_r,_r!==Pt}s.updateShapeSignature=_e;function Ee(ot,Qe,mt){if(Qe.getCompilerOptions().outFile||!ot.referencedMap||Ue(mt))return Ne(ot,Qe);let _t=new Set,Rt=[mt.resolvedPath];for(;Rt.length;){let Lt=Rt.pop();if(!_t.has(Lt)){_t.add(Lt);let Ke=ot.referencedMap.getValues(Lt);if(Ke)for(let Pt of Ke.keys())Rt.push(Pt)}}return Do(lr(_t.keys(),Lt=>{var Ke;return((Ke=Qe.getSourceFileByPath(Lt))==null?void 0:Ke.fileName)??Lt}))}s.getAllDependencies=Ee;function Ne(ot,Qe){if(!ot.allFileNames){let mt=Qe.getSourceFiles();ot.allFileNames=mt===E?E:mt.map(ht=>ht.fileName)}return ot.allFileNames}function Te(ot,Qe){let mt=ot.referencedMap.getKeys(Qe);return mt?Do(mt.keys()):[]}s.getReferencedByPaths=Te;function Ze(ot){for(let Qe of ot.statements)if(!RY(Qe))return!1;return!0}function We(ot){return jt(ot.moduleAugmentations,Qe=>vB(Qe.parent))}function Ue(ot){return We(ot)||!vl(ot)&&!Zu(ot)&&!Ze(ot)}function $e(ot,Qe,mt){if(ot.allFilesExcludingDefaultLibraryFile)return ot.allFilesExcludingDefaultLibraryFile;let ht;mt&&_t(mt);for(let Rt of Qe.getSourceFiles())Rt!==mt&&_t(Rt);return ot.allFilesExcludingDefaultLibraryFile=ht||E,ot.allFilesExcludingDefaultLibraryFile;function _t(Rt){Qe.isSourceFileDefaultLibrary(Rt)||(ht||(ht=[])).push(Rt)}}s.getAllFilesExcludingDefaultLibraryFile=$e;function Ye(ot,Qe,mt){let ht=Qe.getCompilerOptions();return ht&&ht.outFile?[mt]:$e(ot,Qe,mt)}function Tt(ot,Qe,mt,ht,_t){if(Ue(mt))return $e(ot,Qe,mt);let Rt=Qe.getCompilerOptions();if(Rt&&(sS(Rt)||Rt.outFile))return[mt];let Lt=new Map;Lt.set(mt.resolvedPath,mt);let Ke=Te(ot,mt.resolvedPath);for(;Ke.length>0;){let Pt=Ke.pop();if(!Lt.has(Pt)){let _r=Qe.getSourceFileByPath(Pt);Lt.set(Pt,_r),_r&&_e(ot,Qe,_r,ht,_t)&&Ke.push(...Te(ot,_r.resolvedPath))}}return Do(lr(Lt.values(),Pt=>Pt))}})(nR||(nR={}));var N3t=(s=>(s[s.None=0]="None",s[s.Js=1]="Js",s[s.JsMap=2]="JsMap",s[s.JsInlineMap=4]="JsInlineMap",s[s.DtsErrors=8]="DtsErrors",s[s.DtsEmit=16]="DtsEmit",s[s.DtsMap=32]="DtsMap",s[s.Dts=24]="Dts",s[s.AllJs=7]="AllJs",s[s.AllDtsEmit=48]="AllDtsEmit",s[s.AllDts=56]="AllDts",s[s.All=63]="All",s))(N3t||{});function Zie(s){return s.program!==void 0}function sws(s){return pe.assert(Zie(s)),s}function HP(s){let c=1;return s.sourceMap&&(c=c|2),s.inlineSourceMap&&(c=c|4),Ly(s)&&(c=c|24),s.declarationMap&&(c=c|32),s.emitDeclarationOnly&&(c=c&56),c}function cVe(s,c){let g=c&&(ws(c)?c:HP(c)),d=ws(s)?s:HP(s);if(g===d)return 0;if(!g||!d)return d;let h=g^d,_=0;return h&7&&(_=d&7),h&8&&(_=_|d&8),h&48&&(_=_|d&48),_}function ows(s,c){return s===c||s!==void 0&&c!==void 0&&s.size===c.size&&!SB(s,g=>!c.has(g))}function aws(s,c){var g,d;let h=nR.create(s,c,!1);h.program=s;let _=s.getCompilerOptions();h.compilerOptions=_;let S=_.outFile;h.semanticDiagnosticsPerFile=new Map,S&&_.composite&&c?.outSignature&&S===c.compilerOptions.outFile&&(h.outSignature=c.outSignature&&drn(_,c.compilerOptions,c.outSignature)),h.changedFilesSet=new Set,h.latestChangedDtsFile=_.composite?c?.latestChangedDtsFile:void 0,h.checkPending=h.compilerOptions.noCheck?!0:void 0;let R=nR.canReuseOldState(h.referencedMap,c),T=R?c.compilerOptions:void 0,W=R&&!mbe(_,T),V=_.composite&&c?.emitSignatures&&!S&&!oLe(_,c.compilerOptions),M=!0;R?((g=c.changedFilesSet)==null||g.forEach(Ee=>h.changedFilesSet.add(Ee)),!S&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(h.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),h.seenAffectedFiles=new Set),h.programEmitPending=c.programEmitPending,S&&h.changedFilesSet.size&&(W=!1,M=!1),h.hasErrorsFromOldState=c.hasErrors):h.buildInfoEmitPending=DP(_);let ee=h.referencedMap,re=R?c.referencedMap:void 0,ge=W&&!_.skipLibCheck==!T.skipLibCheck,Ie=ge&&!_.skipDefaultLibCheck==!T.skipDefaultLibCheck;if(h.fileInfos.forEach((Ee,Ne)=>{var Te;let Ze,We;if(!R||!(Ze=c.fileInfos.get(Ne))||Ze.version!==Ee.version||Ze.impliedFormat!==Ee.impliedFormat||!ows(We=ee&&ee.getValues(Ne),re&&re.getValues(Ne))||We&&SB(We,Ue=>!h.fileInfos.has(Ue)&&c.fileInfos.has(Ue)))_e(Ne);else{let Ue=s.getSourceFileByPath(Ne),$e=M?(Te=c.emitDiagnosticsPerFile)==null?void 0:Te.get(Ne):void 0;if($e&&(h.emitDiagnosticsPerFile??(h.emitDiagnosticsPerFile=new Map)).set(Ne,c.hasReusableDiagnostic?frn($e,Ne,s):prn($e,s)),W){if(Ue.isDeclarationFile&&!ge||Ue.hasNoDefaultLib&&!Ie)return;let Ye=c.semanticDiagnosticsPerFile.get(Ne);Ye&&(h.semanticDiagnosticsPerFile.set(Ne,c.hasReusableDiagnostic?frn(Ye,Ne,s):prn(Ye,s)),(h.semanticDiagnosticsFromOldState??(h.semanticDiagnosticsFromOldState=new Set)).add(Ne))}}if(V){let Ue=c.emitSignatures.get(Ne);Ue&&(h.emitSignatures??(h.emitSignatures=new Map)).set(Ne,drn(_,c.compilerOptions,Ue))}}),R&&Dh(c.fileInfos,(Ee,Ne)=>h.fileInfos.has(Ne)?!1:Ee.affectsGlobalScope?!0:(h.buildInfoEmitPending=!0,!!S)))nR.getAllFilesExcludingDefaultLibraryFile(h,s,void 0).forEach(Ee=>_e(Ee.resolvedPath));else if(T){let Ee=sLe(_,T)?HP(_):cVe(_,T);Ee!==0&&(S?h.changedFilesSet.size||(h.programEmitPending=h.programEmitPending?h.programEmitPending|Ee:Ee):(s.getSourceFiles().forEach(Ne=>{h.changedFilesSet.has(Ne.resolvedPath)||btt(h,Ne.resolvedPath,Ee)}),pe.assert(!h.seenAffectedFiles||!h.seenAffectedFiles.size),h.seenAffectedFiles=h.seenAffectedFiles||new Set),h.buildInfoEmitPending=!0)}return R&&h.semanticDiagnosticsPerFile.size!==h.fileInfos.size&&c.checkPending!==h.checkPending&&(h.buildInfoEmitPending=!0),h;function _e(Ee){h.changedFilesSet.add(Ee),S&&(W=!1,M=!1,h.semanticDiagnosticsFromOldState=void 0,h.semanticDiagnosticsPerFile.clear(),h.emitDiagnosticsPerFile=void 0),h.buildInfoEmitPending=!0,h.programEmitPending=void 0}}function drn(s,c,g){return!!s.declarationMap==!!c.declarationMap?g:Xs(g)?[g]:g[0]}function prn(s,c){return s.length?Tr(s,g=>{if(Xs(g.messageText))return g;let d=D3t(g.messageText,g.file,c,h=>{var _;return(_=h.repopulateInfo)==null?void 0:_.call(h)});return d===g.messageText?g:{...g,messageText:d}}):s}function D3t(s,c,g,d){let h=d(s);if(h===!0)return{...l7(c),next:k3t(s.next,c,g,d)};if(h)return{...kJ(c,g,h.moduleReference,h.mode,h.packageName||h.moduleReference),next:k3t(s.next,c,g,d)};let _=k3t(s.next,c,g,d);return _===s.next?s:{...s,next:_}}function k3t(s,c,g,d){return Tr(s,h=>D3t(h,c,g,d))}function frn(s,c,g){if(!s.length)return E;let d;return s.map(_=>{let S=Irn(_,c,g,h);S.reportsUnnecessary=_.reportsUnnecessary,S.reportsDeprecated=_.reportDeprecated,S.source=_.source,S.skippedOn=_.skippedOn;let{relatedInformation:R}=_;return S.relatedInformation=R?R.length?R.map(T=>Irn(T,c,g,h)):[]:void 0,S});function h(_){return d??(d=Mo(Xc(U3(g.getCompilerOptions()),g.getCurrentDirectory()))),Ou(_,d,g.getCanonicalFileName)}}function Irn(s,c,g,d){let{file:h}=s,_=h!==!1?g.getSourceFileByPath(h?d(h):c):void 0;return{...s,file:_,messageText:Xs(s.messageText)?s.messageText:D3t(s.messageText,_,g,S=>S.info)}}function cws(s){nR.releaseCache(s),s.program=void 0}function x3t(s,c){pe.assert(!c||!s.affectedFiles||s.affectedFiles[s.affectedFilesIndex-1]!==c||!s.semanticDiagnosticsPerFile.has(c.resolvedPath))}function hrn(s,c,g){for(var d;;){let{affectedFiles:h}=s;if(h){let R=s.seenAffectedFiles,T=s.affectedFilesIndex;for(;T{let R=g?_&55:_&7;R?s.affectedFilesPendingEmit.set(S,R):s.affectedFilesPendingEmit.delete(S)}),s.programEmitPending)){let _=g?s.programEmitPending&55:s.programEmitPending&7;_?s.programEmitPending=_:s.programEmitPending=void 0}}function lVe(s,c,g,d){let h=cVe(s,c);return g&&(h=h&56),d&&(h=h&8),h}function mtt(s){return s?8:56}function lws(s,c,g){var d;if((d=s.affectedFilesPendingEmit)!=null&&d.size)return Dh(s.affectedFilesPendingEmit,(h,_)=>{var S;let R=s.program.getSourceFileByPath(_);if(!R||!SP(R,s.program)){s.affectedFilesPendingEmit.delete(_);return}let T=(S=s.seenEmittedFiles)==null?void 0:S.get(R.resolvedPath),W=lVe(h,T,c,g);if(W)return{affectedFile:R,emitKind:W}})}function uws(s,c){var g;if((g=s.emitDiagnosticsPerFile)!=null&&g.size)return Dh(s.emitDiagnosticsPerFile,(d,h)=>{var _;let S=s.program.getSourceFileByPath(h);if(!S||!SP(S,s.program)){s.emitDiagnosticsPerFile.delete(h);return}let R=((_=s.seenEmittedFiles)==null?void 0:_.get(S.resolvedPath))||0;if(!(R&mtt(c)))return{affectedFile:S,diagnostics:d,seenKind:R}})}function Crn(s){if(!s.cleanedDiagnosticsOfLibFiles){s.cleanedDiagnosticsOfLibFiles=!0;let c=s.program.getCompilerOptions();F(s.program.getSourceFiles(),g=>s.program.isSourceFileDefaultLibrary(g)&&!mLe(g,c,s.program)&&F3t(s,g.resolvedPath))}}function gws(s,c,g,d){if(F3t(s,c.resolvedPath),s.allFilesExcludingDefaultLibraryFile===s.affectedFiles){Crn(s),nR.updateShapeSignature(s,s.program,c,g,d);return}s.compilerOptions.assumeChangesOnlyAffectDirectDependencies||Aws(s,c,g,d)}function G3t(s,c,g,d,h){if(F3t(s,c),!s.changedFilesSet.has(c)){let _=s.program.getSourceFileByPath(c);_&&(nR.updateShapeSignature(s,s.program,_,d,h,!0),g?btt(s,c,HP(s.compilerOptions)):Ly(s.compilerOptions)&&btt(s,c,s.compilerOptions.declarationMap?56:24))}}function F3t(s,c){return s.semanticDiagnosticsFromOldState?(s.semanticDiagnosticsFromOldState.delete(c),s.semanticDiagnosticsPerFile.delete(c),!s.semanticDiagnosticsFromOldState.size):!0}function _rn(s,c){let g=pe.checkDefined(s.oldSignatures).get(c)||void 0;return pe.checkDefined(s.fileInfos.get(c)).signature!==g}function Z3t(s,c,g,d,h){var _;return(_=s.fileInfos.get(c))!=null&&_.affectsGlobalScope?(nR.getAllFilesExcludingDefaultLibraryFile(s,s.program,void 0).forEach(S=>G3t(s,S.resolvedPath,g,d,h)),Crn(s),!0):!1}function Aws(s,c,g,d){var h,_;if(!s.referencedMap||!s.changedFilesSet.has(c.resolvedPath)||!_rn(s,c.resolvedPath))return;if(sS(s.compilerOptions)){let T=new Map;T.set(c.resolvedPath,!0);let W=nR.getReferencedByPaths(s,c.resolvedPath);for(;W.length>0;){let V=W.pop();if(!T.has(V)){if(T.set(V,!0),Z3t(s,V,!1,g,d))return;if(G3t(s,V,!1,g,d),_rn(s,V)){let M=s.program.getSourceFileByPath(V);W.push(...nR.getReferencedByPaths(s,M.resolvedPath))}}}}let S=new Set,R=!!((h=c.symbol)!=null&&h.exports)&&!!Dh(c.symbol.exports,T=>{if(T.flags&128)return!0;let W=FC(T,s.program.getTypeChecker());return W===T?!1:(W.flags&128)!==0&&jt(W.declarations,V=>ms(V)===c)});(_=s.referencedMap.getKeys(c.resolvedPath))==null||_.forEach(T=>{if(Z3t(s,T,R,g,d))return!0;let W=s.referencedMap.getKeys(T);return W&&SB(W,V=>yrn(s,V,R,S,g,d))})}function yrn(s,c,g,d,h,_){var S;if(Ar(d,c)){if(Z3t(s,c,g,h,_))return!0;G3t(s,c,g,h,_),(S=s.referencedMap.getKeys(c))==null||S.forEach(R=>yrn(s,R,g,d,h,_))}}function Ctt(s,c,g,d){return s.compilerOptions.noCheck?E:Nn(dws(s,c,g,d),s.program.getProgramDiagnostics(c))}function dws(s,c,g,d){d??(d=s.semanticDiagnosticsPerFile);let h=c.resolvedPath,_=d.get(h);if(_)return oVe(_,s.compilerOptions);let S=s.program.getBindAndCheckDiagnostics(c,g);return d.set(h,S),s.buildInfoEmitPending=!0,oVe(S,s.compilerOptions)}function L3t(s){var c;return!!((c=s.options)!=null&&c.outFile)}function jEe(s){return!!s.fileNames}function pws(s){return!jEe(s)&&!!s.root}function brn(s){s.hasErrors===void 0&&(DP(s.compilerOptions)?s.hasErrors=!jt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return h===void 0||!!h.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})&&(Ern(s)||jt(s.program.getSourceFiles(),c=>!!s.program.getProgramDiagnostics(c).length)):s.hasErrors=jt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return!!h?.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})||Ern(s))}function Ern(s){return!!s.program.getConfigFileParsingDiagnostics().length||!!s.program.getSyntacticDiagnostics().length||!!s.program.getOptionsDiagnostics().length||!!s.program.getGlobalDiagnostics().length}function Srn(s){return brn(s),s.buildInfoEmitPending??(s.buildInfoEmitPending=!!s.hasErrorsFromOldState!=!!s.hasErrors)}function fws(s){var c,g;let d=s.program.getCurrentDirectory(),h=Mo(Xc(U3(s.compilerOptions),d)),_=s.latestChangedDtsFile?Ne(s.latestChangedDtsFile):void 0,S=[],R=new Map,T=new Set(s.program.getRootFileNames().map(Ke=>Ou(Ke,d,s.program.getCanonicalFileName)));if(brn(s),!DP(s.compilerOptions))return{root:Do(T,Pt=>Te(Pt)),errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};let W=[];if(s.compilerOptions.outFile){let Ke=Do(s.fileInfos.entries(),([_r,Gt])=>{let nt=Ze(_r);return Ue(_r,nt),Gt.impliedFormat?{version:Gt.version,impliedFormat:Gt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Gt.version});return{fileNames:S,fileInfos:Ke,root:W,resolvedRoot:$e(),options:Ye(s.compilerOptions),semanticDiagnosticsPerFile:s.changedFilesSet.size?void 0:ot(),emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),outSignature:s.outSignature,latestChangedDtsFile:_,pendingEmit:s.programEmitPending?s.programEmitPending===HP(s.compilerOptions)?!1:s.programEmitPending:void 0,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C}}let V,M,ee,re=Do(s.fileInfos.entries(),([Ke,Pt])=>{var _r,Gt;let nt=Ze(Ke);Ue(Ke,nt),pe.assert(S[nt-1]===Te(Ke));let Dt=(_r=s.oldSignatures)==null?void 0:_r.get(Ke),tr=Dt!==void 0?Dt||void 0:Pt.signature;if(s.compilerOptions.composite){let ur=s.program.getSourceFileByPath(Ke);if(!Zu(ur)&&SP(ur,s.program)){let Gr=(Gt=s.emitSignatures)==null?void 0:Gt.get(Ke);Gr!==tr&&(ee=Ft(ee,Gr===void 0?nt:[nt,!Xs(Gr)&&Gr[0]===tr?E:Gr]))}}return Pt.version===tr?Pt.affectsGlobalScope||Pt.impliedFormat?{version:Pt.version,signature:void 0,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}:Pt.version:tr!==void 0?Dt===void 0?Pt:{version:Pt.version,signature:tr,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}:{version:Pt.version,signature:!1,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}}),ge;(c=s.referencedMap)!=null&&c.size()&&(ge=Do(s.referencedMap.keys()).sort(Ca).map(Ke=>[Ze(Ke),We(s.referencedMap.getValues(Ke))]));let Ie=ot(),_e;if((g=s.affectedFilesPendingEmit)!=null&&g.size){let Ke=HP(s.compilerOptions),Pt=new Set;for(let _r of Do(s.affectedFilesPendingEmit.keys()).sort(Ca))if(Ar(Pt,_r)){let Gt=s.program.getSourceFileByPath(_r);if(!Gt||!SP(Gt,s.program))continue;let nt=Ze(_r),Dt=s.affectedFilesPendingEmit.get(_r);_e=Ft(_e,Dt===Ke?nt:Dt===24?[nt]:[nt,Dt])}}return{fileNames:S,fileIdsList:V,fileInfos:re,root:W,resolvedRoot:$e(),options:Ye(s.compilerOptions),referencedMap:ge,semanticDiagnosticsPerFile:Ie,emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),affectedFilesPendingEmit:_e,emitSignatures:ee,latestChangedDtsFile:_,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};function Ne(Ke){return Te(Xc(Ke,d))}function Te(Ke){return Am(mp(h,Ke,s.program.getCanonicalFileName))}function Ze(Ke){let Pt=R.get(Ke);return Pt===void 0&&(S.push(Te(Ke)),R.set(Ke,Pt=S.length)),Pt}function We(Ke){let Pt=Do(Ke.keys(),Ze).sort(Zt),_r=Pt.join(),Gt=M?.get(_r);return Gt===void 0&&(V=Ft(V,Pt),(M??(M=new Map)).set(_r,Gt=V.length)),Gt}function Ue(Ke,Pt){let _r=s.program.getSourceFile(Ke);if(!s.program.getFileIncludeReasons().get(_r.path).some(tr=>tr.kind===0))return;if(!W.length)return W.push(Pt);let Gt=W[W.length-1],nt=Ki(Gt);if(nt&&Gt[1]===Pt-1)return Gt[1]=Pt;if(nt||W.length===1||Gt!==Pt-1)return W.push(Pt);let Dt=W[W.length-2];return!ws(Dt)||Dt!==Gt-1?W.push(Pt):(W[W.length-2]=[Dt,Pt],W.length=W.length-1)}function $e(){let Ke;return T.forEach(Pt=>{let _r=s.program.getSourceFileByPath(Pt);_r&&Pt!==_r.resolvedPath&&(Ke=Ft(Ke,[Ze(_r.resolvedPath),Ze(Pt)]))}),Ke}function Ye(Ke){let Pt,{optionsNameMap:_r}=vie();for(let Gt of _g(Ke).sort(Ca)){let nt=_r.get(Gt.toLowerCase());nt?.affectsBuildInfo&&((Pt||(Pt={}))[Gt]=Tt(nt,Ke[Gt]))}return Pt}function Tt(Ke,Pt){if(Ke){if(pe.assert(Ke.type!=="listOrElement"),Ke.type==="list"){let _r=Pt;if(Ke.element.isFilePath&&_r.length)return _r.map(Ne)}else if(Ke.isFilePath)return Ne(Pt)}return Pt}function ot(){let Ke;return s.fileInfos.forEach((Pt,_r)=>{let Gt=s.semanticDiagnosticsPerFile.get(_r);Gt?Gt.length&&(Ke=Ft(Ke,[Ze(_r),mt(Gt,_r)])):s.changedFilesSet.has(_r)||(Ke=Ft(Ke,Ze(_r)))}),Ke}function Qe(){var Ke;let Pt;if(!((Ke=s.emitDiagnosticsPerFile)!=null&&Ke.size))return Pt;for(let _r of Do(s.emitDiagnosticsPerFile.keys()).sort(Ca)){let Gt=s.emitDiagnosticsPerFile.get(_r);Pt=Ft(Pt,[Ze(_r),mt(Gt,_r)])}return Pt}function mt(Ke,Pt){return pe.assert(!!Ke.length),Ke.map(_r=>{let Gt=ht(_r,Pt);Gt.reportsUnnecessary=_r.reportsUnnecessary,Gt.reportDeprecated=_r.reportsDeprecated,Gt.source=_r.source,Gt.skippedOn=_r.skippedOn;let{relatedInformation:nt}=_r;return Gt.relatedInformation=nt?nt.length?nt.map(Dt=>ht(Dt,Pt)):[]:void 0,Gt})}function ht(Ke,Pt){let{file:_r}=Ke;return{...Ke,file:_r?_r.resolvedPath===Pt?void 0:Te(_r.resolvedPath):!1,messageText:Xs(Ke.messageText)?Ke.messageText:_t(Ke.messageText)}}function _t(Ke){if(Ke.repopulateInfo)return{info:Ke.repopulateInfo(),next:Rt(Ke.next)};let Pt=Rt(Ke.next);return Pt===Ke.next?Ke:{...Ke,next:Pt}}function Rt(Ke){return Ke&&(F(Ke,(Pt,_r)=>{let Gt=_t(Pt);if(Pt===Gt)return;let nt=_r>0?Ke.slice(0,_r-1):[];nt.push(Gt);for(let Dt=_r+1;Dt(s[s.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",s[s.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",s))(V3t||{});function uVe(s,c,g,d,h,_){let S,R,T;return s===void 0?(pe.assert(c===void 0),S=g,T=d,pe.assert(!!T),R=T.getProgram()):Ki(s)?(T=d,R=UEe({rootNames:s,options:c,host:g,oldProgram:T&&T.getProgramOrUndefined(),configFileParsingDiagnostics:h,projectReferences:_}),S=g):(R=s,S=c,T=g,h=d),{host:S,newProgram:R,oldProgram:T,configFileParsingDiagnostics:h||E}}function vrn(s,c){return c?.sourceMapUrlPos!==void 0?s.substring(0,c.sourceMapUrlPos):s}function _tt(s,c,g,d,h){var _;g=vrn(g,h);let S;return(_=h?.diagnostics)!=null&&_.length&&(g+=h.diagnostics.map(W=>`${T(W)}${KS[W.category]}${W.code}: ${R(W.messageText)}`).join(` + `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Rg(),lt.enclosingDeclaration=_m}function Cm(Bn,go,sc){let yc=yk(Bn,go);lt.approximateLength+=14+yc.length;let Yo=wv(Bn),Vg=Ug(Bn),sA=At(Vg,gf=>UI(gf,lt)),Pu=Kw(Yo),Zc=B(Pu)?Kg(Pu):void 0,Rg=W_(Gd(Yo),!1,Zc),_m=tjt(0,Yo,Zc,180),xf=tjt(1,Yo,Zc,181),f0=hyn(Yo,Zc),KI=B(Pu)?[me.createHeritageClause(96,Xt(Pu,gf=>rjt(gf,111551)))]:void 0;ou(me.createInterfaceDeclaration(void 0,yc,sA,KI,[...f0,...xf,..._m,...Rg]),sc)}function W_(Bn,go,sc,yc){let Yo=[],Vg=0;for(let sA of Bn){if(Vg++,kt(lt)&&Vg+2Use(yc)&&Uh(yc.escapedName,99))}function IZ(Bn){return ue(Uy(Bn),go=>!(Hb(Zh(go))&111551))}function Q5(Bn,go,sc){let yc=Uy(Bn),Yo=Y5(lt),Vg=Ju(yc,Zc=>Zc.parent&&Zc.parent===Bn||Yo?"real":"merged"),sA=Vg.get("real")||E,Pu=Vg.get("merged")||E;if(B(sA)||Yo){let Zc;if(Yo){let Rg=lt.flags;lt.flags|=514,Zc=D(Bn,lt,-1),lt.flags=Rg}else{let Rg=yk(Bn,go);Zc=me.createIdentifier(Rg),lt.approximateLength+=Rg.length}_k(sA,Zc,sc,!!(Bn.flags&67108880))}if(B(Pu)){let Zc=ms(lt.enclosingDeclaration),Rg=yk(Bn,go),_m=me.createModuleBlock([me.createExportDeclaration(void 0,!1,me.createNamedExports(Xt(Me(Pu,xf=>xf.escapedName!=="export="),xf=>{var f0,KI;let gf=Bc(xf.escapedName),pI=yk(xf,gf),NI=xf.declarations&&Mb(xf);if(Zc&&(NI?Zc!==ms(NI):!jt(xf.declarations,Ky=>ms(Ky)===Zc))){(KI=(f0=lt.tracker)==null?void 0:f0.reportNonlocalAugmentation)==null||KI.call(f0,Zc,Bn,xf);return}let SS=NI&&b5(NI,!0);EA(SS||xf);let Ph=SS?yk(SS,Bc(SS.escapedName)):pI;return me.createExportSpecifier(!1,gf===Ph?void 0:Ph,gf)})))]);ou(me.createModuleDeclaration(void 0,me.createIdentifier(Rg),_m,32),0)}}function zQ(Bn,go,sc){let yc=yk(Bn,go);lt.approximateLength+=9+yc.length;let Yo=[],Vg=Me(Gd(Io(Bn)),Pu=>!!(Pu.flags&8)),sA=0;for(let Pu of Vg){if(sA++,kt(lt)&&sA+2!B(NI.declarations)||jt(NI.declarations,SS=>ms(SS)===ms(lt.enclosingDeclaration))||Vg?"local":"remote").get("local")||E,Zc=H3.createModuleDeclaration(void 0,go,me.createModuleBlock([]),Yo);XA(Zc,Cr),Zc.locals=qu(Bn),Zc.symbol=Bn[0].parent;let Rg=jr;jr=[];let _m=Us;Us=!1;let xf={...lt,enclosingDeclaration:Zc},f0=lt;lt=xf,ta(qu(Pu),yc,!0),lt=f0,Us=_m;let KI=jr;jr=Rg;let gf=At(KI,NI=>Cf(NI)&&!NI.isExportEquals&&Ir(NI.expression)?me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,NI.expression,me.createIdentifier("default"))])):NI),pI=ue(gf,NI=>Ga(NI,32))?At(gf,Li):gf;Zc=me.updateModuleDeclaration(Zc,Zc.modifiers,Zc.name,me.createModuleBlock(pI)),ou(Zc,sc)}else Vg&&(lt.approximateLength+=14,ou(me.createModuleDeclaration(void 0,go,me.createModuleBlock([]),Yo),sc))}function Use(Bn){return!!(Bn.flags&2887656)||!(Bn.flags&4194304||Bn.escapedName==="prototype"||Bn.valueDeclaration&&cg(Bn.valueDeclaration)&&xa(Bn.valueDeclaration.parent))}function ZOe(Bn){let go=Xt(Bn,sc=>{let yc=lt.enclosingDeclaration;lt.enclosingDeclaration=sc;let Yo=sc.expression;if(Od(Yo)){if(Ir(Yo)&&Vo(Yo)==="")return Vg(void 0);let sA;if({introducesError:sA,node:Yo}=Sp(Yo,lt),sA)return Vg(void 0)}return Vg(me.createExpressionWithTypeArguments(Yo,At(sc.typeArguments,sA=>tr.tryReuseExistingTypeNode(lt,sA)||ii(m(lt,sA),lt))));function Vg(sA){return lt.enclosingDeclaration=yc,sA}});if(go.length===Bn.length)return go}function q8t(Bn,go,sc){var yc,Yo;lt.approximateLength+=9+go.length;let Vg=(yc=Bn.declarations)==null?void 0:yc.find(xa),sA=lt.enclosingDeclaration;lt.enclosingDeclaration=Vg||sA;let Pu=Ug(Bn),Zc=At(Pu,x9=>UI(x9,lt));F(Pu,x9=>lt.approximateLength+=nf(x9.symbol).length);let Rg=T1(wv(Bn)),_m=Kw(Rg),xf=Vg&&jJ(Vg),f0=xf&&ZOe(xf)||Xt(wse(Rg),Ijs),KI=Io(Bn),gf=!!((Yo=KI.symbol)!=null&&Yo.valueDeclaration)&&xa(KI.symbol.valueDeclaration),pI=gf?nZ(KI):hr;lt.approximateLength+=(B(_m)?8:0)+(B(f0)?11:0);let NI=[...B(_m)?[me.createHeritageClause(96,At(_m,x9=>fjs(x9,pI,go)))]:[],...B(f0)?[me.createHeritageClause(119,f0)]:[]],SS=$Us(Rg,_m,Gd(Rg)),Ph=Me(SS,x9=>!FOe(x9)),Ky=jt(SS,FOe),k9=Ky?Y5(lt)?W_(Me(SS,FOe),!0,_m[0],!1):[me.createPropertyDeclaration(void 0,me.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:E;Ky&&!Y5(lt)&&(lt.approximateLength+=9);let vS=W_(Ph,!0,_m[0],!1),oG=W_(Me(Gd(KI),x9=>!(x9.flags&4194304)&&x9.escapedName!=="prototype"&&!Use(x9)),!0,pI,!0),SW=!gf&&!!Bn.valueDeclaration&&wo(Bn.valueDeclaration)&&!jt(tg(KI,1));SW&&(lt.approximateLength+=21);let vW=SW?[me.createConstructorDeclaration(me.createModifiersFromModifierFlags(2),[],void 0)]:tjt(1,KI,pI,177),hjs=hyn(Rg,_m[0]);lt.enclosingDeclaration=sA,ou(v(lt,me.createClassDeclaration(void 0,go,Zc,NI,[...hjs,...oG,...vW,...vS,...k9]),Bn.declarations&&Me(Bn.declarations,x9=>pm(x9)||vd(x9))[0]),sc)}function $8t(Bn){return X(Bn,go=>{if(uy(go)||R0(go))return HD(go.propertyName||go.name);if(fo(go)||Cf(go)){let sc=Cf(go)?go.expression:go.right;if(jo(sc))return Vo(sc.name)}if(d9(go)){let sc=Il(go);if(sc&&Ir(sc))return Vo(sc)}})}function pyn(Bn,go,sc){var yc,Yo,Vg,sA,Pu;let Zc=Mb(Bn);if(!Zc)return pe.fail();let Rg=jA(b5(Zc,!0));if(!Rg)return;let _m=NY(Rg)&&$8t(Bn.declarations)||Bc(Rg.escapedName);_m==="export="&&Tt&&(_m="default");let xf=yk(Rg,_m);switch(EA(Rg),Zc.kind){case 209:if(((Yo=(yc=Zc.parent)==null?void 0:yc.parent)==null?void 0:Yo.kind)===261){let gf=yh(Rg.parent||Rg,lt),{propertyName:pI}=Zc,NI=pI&&Ir(pI)?Vo(pI):void 0;lt.approximateLength+=24+go.length+gf.length+(NI?.length??0),ou(me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,NI?me.createIdentifier(NI):void 0,me.createIdentifier(go))])),me.createStringLiteral(gf),void 0),0);break}pe.failBadSyntaxKind(((Vg=Zc.parent)==null?void 0:Vg.parent)||Zc,"Unhandled binding element grandparent kind in declaration serialization");break;case 305:((Pu=(sA=Zc.parent)==null?void 0:sA.parent)==null?void 0:Pu.kind)===227&&lfe(Bc(Bn.escapedName),xf);break;case 261:if(jo(Zc.initializer)){let gf=Zc.initializer,pI=me.createUniqueName(go),NI=yh(Rg.parent||Rg,lt);lt.approximateLength+=22+NI.length+Vo(pI).length,ou(me.createImportEqualsDeclaration(void 0,!1,pI,me.createExternalModuleReference(me.createStringLiteral(NI))),0),lt.approximateLength+=12+go.length+Vo(pI).length+Vo(gf.name).length,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(go),me.createQualifiedName(pI,gf.name)),sc);break}case 272:if(Rg.escapedName==="export="&&jt(Rg.declarations,gf=>ll(gf)&&Zu(gf))){LOe(Bn);break}let f0=!(Rg.flags&512)&&!nc(Zc);lt.approximateLength+=11+go.length+Bc(Rg.escapedName).length,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(go),f0?ch(Rg,lt,-1,!1):me.createExternalModuleReference(me.createStringLiteral(yh(Rg,lt)))),f0?sc:0);break;case 271:ou(me.createNamespaceExportDeclaration(Vo(Zc.name)),0);break;case 274:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.moduleSpecifier,NI=Mf(Zc.parent)?Zc.parent.attributes:void 0,SS=SN(Zc.parent);lt.approximateLength+=14+go.length+3+(SS?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(SS?156:void 0,me.createIdentifier(go),void 0),pI,NI),0);break}case 275:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.parent.moduleSpecifier,NI=SN(Zc.parent.parent);lt.approximateLength+=19+go.length+3+(NI?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(NI?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(go))),pI,Zc.parent.attributes),0);break}case 281:lt.approximateLength+=19+go.length+3,ou(me.createExportDeclaration(void 0,!1,me.createNamespaceExport(me.createIdentifier(go)),me.createStringLiteral(yh(Rg,lt))),0);break;case 277:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.parent.parent.moduleSpecifier,NI=SN(Zc.parent.parent.parent);lt.approximateLength+=19+go.length+3+(NI?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(NI?156:void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,go!==_m?me.createIdentifier(_m):void 0,me.createIdentifier(go))])),pI,Zc.parent.parent.parent.attributes),0);break}case 282:let KI=Zc.parent.parent.moduleSpecifier;if(KI){let gf=Zc.propertyName;gf&&lv(gf)&&(_m="default")}lfe(Bc(Bn.escapedName),KI?_m:xf,KI&&mA(KI)?me.createStringLiteral(KI.text):void 0);break;case 278:LOe(Bn);break;case 227:case 212:case 213:Bn.escapedName==="default"||Bn.escapedName==="export="?LOe(Bn):lfe(go,xf);break;default:return pe.failBadSyntaxKind(Zc,"Unhandled alias declaration kind in symbol serializer!")}}function lfe(Bn,go,sc){lt.approximateLength+=16+Bn.length+(Bn!==go?go.length:0),ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Bn!==go?go:void 0,Bn)]),sc),0)}function LOe(Bn){var go;if(Bn.flags&4194304)return!1;let sc=Bc(Bn.escapedName),yc=sc==="export=",Vg=yc||sc==="default",sA=Bn.declarations&&Mb(Bn),Pu=sA&&b5(sA,!0);if(Pu&&B(Pu.declarations)&&jt(Pu.declarations,Zc=>ms(Zc)===ms(Cr))){let Zc=sA&&(Cf(sA)||fo(sA)?mne(sA):EZe(sA)),Rg=Zc&&Od(Zc)?pKs(Zc):void 0,_m=Rg&&TI(Rg,-1,!0,!0,Cr);(_m||Pu)&&EA(_m||Pu);let xf=lt.tracker.disableTrackSymbol;if(lt.tracker.disableTrackSymbol=!0,Vg)lt.approximateLength+=10,jr.push(me.createExportAssignment(void 0,yc,Gv(Pu,lt,-1)));else if(Rg===Zc&&Rg)lfe(sc,Vo(Rg));else if(Zc&&vd(Zc))lfe(sc,yk(Pu,nf(Pu)));else{let f0=POe(sc,Bn);lt.approximateLength+=f0.length+10,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(f0),ch(Pu,lt,-1,!1)),0),lfe(sc,f0)}return lt.tracker.disableTrackSymbol=xf,!0}else{let Zc=POe(sc,Bn),Rg=D1(Io(jA(Bn)));if(ejt(Rg,Bn))EW(Rg,Bn,Zc,Vg?0:32);else{let _m=((go=lt.enclosingDeclaration)==null?void 0:go.kind)===268&&(!(Bn.flags&98304)||Bn.flags&65536)?1:2;lt.approximateLength+=Zc.length+5;let xf=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zc,void 0,ea(lt,void 0,Rg,Bn))],_m));ou(xf,Pu&&Pu.flags&4&&Pu.escapedName==="export="?128:sc===Zc?32:0)}return Vg?(lt.approximateLength+=Zc.length+10,jr.push(me.createExportAssignment(void 0,yc,me.createIdentifier(Zc))),!0):sc!==Zc?(lfe(sc,Zc),!0):!1}}function ejt(Bn,go){var sc;let yc=ms(lt.enclosingDeclaration);return la(Bn)&48&&!jt((sc=Bn.symbol)==null?void 0:sc.declarations,uc)&&!B(A0(Bn))&&!u2e(Bn)&&!!(B(Me(Gd(Bn),Use))||B(tg(Bn,0)))&&!B(tg(Bn,1))&&!zn(go,Cr)&&!(Bn.symbol&&jt(Bn.symbol.declarations,Yo=>ms(Yo)!==yc))&&!jt(Gd(Bn),Yo=>f2e(Yo.escapedName))&&!jt(Gd(Bn),Yo=>jt(Yo.declarations,Vg=>ms(Vg)!==yc))&&ue(Gd(Bn),Yo=>Uh(nf(Yo),Ze)?Yo.flags&98304?AR(Yo)===b9(Yo):!0:!1)}function fyn(Bn,go,sc){return function(Yo,Vg,sA){var Pu,Zc,Rg,_m,xf,f0;let KI=u2(Yo),gf=!!(KI&2)&&!Y5(lt);if(Vg&&Yo.flags&2887656)return[];if(Yo.flags&4194304||Yo.escapedName==="constructor"||sA&&Gg(sA,Yo.escapedName)&&yR(Gg(sA,Yo.escapedName))===yR(Yo)&&(Yo.flags&16777216)===(Gg(sA,Yo.escapedName).flags&16777216)&&rG(Io(Yo),Pi(sA,Yo.escapedName)))return[];let pI=KI&-1025|(Vg?256:0),NI=afe(Yo,lt),SS=(Pu=Yo.declarations)==null?void 0:Pu.find(Hp(pi,yB,nc,ss,fo,jo));if(Yo.flags&98304&&sc){let Ph=[];if(Yo.flags&65536){let Ky=Yo.declarations&&F(Yo.declarations,oG=>{if(oG.kind===179)return oG;if(Zl(oG)&&f3(oG))return F(oG.arguments[2].properties,SW=>{let vW=Il(SW);if(vW&&Ir(vW)&&Vo(vW)==="set")return SW})});pe.assert(!!Ky);let k9=kd(Ky)?yS(Ky).parameters[0]:void 0,vS=(Zc=Yo.declarations)==null?void 0:Zc.find(cv);lt.approximateLength+=VOe(pI)+7+(k9?nf(k9).length:5)+(gf?0:2),Ph.push(v(lt,me.createSetAccessorDeclaration(me.createModifiersFromModifierFlags(pI),NI,[me.createParameterDeclaration(void 0,void 0,k9?qc(k9,xs(k9),lt):"value",void 0,gf?void 0:ea(lt,vS,b9(Yo),Yo))],void 0),vS??SS))}if(Yo.flags&32768){let Ky=(Rg=Yo.declarations)==null?void 0:Rg.find(bB);lt.approximateLength+=VOe(pI)+8+(gf?0:2),Ph.push(v(lt,me.createGetAccessorDeclaration(me.createModifiersFromModifierFlags(pI),NI,[],gf?void 0:ea(lt,Ky,Io(Yo),Yo),void 0),Ky??SS))}return Ph}else if(Yo.flags&98311){let Ph=(yR(Yo)?8:0)|pI;return lt.approximateLength+=2+(gf?0:2)+VOe(Ph),v(lt,Bn(me.createModifiersFromModifierFlags(Ph),NI,Yo.flags&16777216?me.createToken(58):void 0,gf?void 0:ea(lt,(_m=Yo.declarations)==null?void 0:_m.find(Dg),b9(Yo),Yo),void 0),((xf=Yo.declarations)==null?void 0:xf.find(Hp(pi,nc)))||SS)}if(Yo.flags&8208){let Ph=Io(Yo),Ky=tg(Ph,0);if(gf){let vS=(yR(Yo)?8:0)|pI;return lt.approximateLength+=1+VOe(vS),v(lt,Bn(me.createModifiersFromModifierFlags(vS),NI,Yo.flags&16777216?me.createToken(58):void 0,void 0,void 0),((f0=Yo.declarations)==null?void 0:f0.find(kd))||Ky[0]&&Ky[0].declaration||Yo.declarations&&Yo.declarations[0])}let k9=[];for(let vS of Ky){lt.approximateLength+=1;let oG=ka(vS,go,lt,{name:NI,questionToken:Yo.flags&16777216?me.createToken(58):void 0,modifiers:pI?me.createModifiersFromModifierFlags(pI):void 0}),SW=vS.declaration&&une(vS.declaration.parent)?vS.declaration.parent:vS.declaration;k9.push(v(lt,oG,SW))}return k9}return pe.fail(`Unhandled class member kind! ${Yo.__debugFlags||Yo.flags}`)}}function VOe(Bn){let go=0;return Bn&32&&(go+=7),Bn&128&&(go+=8),Bn&2048&&(go+=8),Bn&4096&&(go+=6),Bn&1&&(go+=7),Bn&2&&(go+=8),Bn&4&&(go+=10),Bn&64&&(go+=9),Bn&256&&(go+=7),Bn&16&&(go+=9),Bn&8&&(go+=9),Bn&512&&(go+=9),Bn&1024&&(go+=6),Bn&8192&&(go+=3),Bn&16384&&(go+=4),go}function Iyn(Bn,go){return Qt(Bn,!1,go)}function tjt(Bn,go,sc,yc){let Yo=tg(go,Bn);if(Bn===1){if(!sc&&ue(Yo,Pu=>B(Pu.parameters)===0))return[];if(sc){let Pu=tg(sc,1);if(!B(Pu)&&ue(Yo,Zc=>B(Zc.parameters)===0))return[];if(Pu.length===Yo.length){let Zc=!1;for(let Rg=0;Rgii(Yo,lt)),yc=Gv(Bn.target.symbol,lt,788968)):Bn.symbol&&vpe(Bn.symbol,Cr,go)&&(yc=Gv(Bn.symbol,lt,788968)),yc)return me.createExpressionWithTypeArguments(yc,sc)}function Ijs(Bn){let go=rjt(Bn,788968);if(go)return go;if(Bn.symbol)return me.createExpressionWithTypeArguments(Gv(Bn.symbol,lt,788968),void 0)}function POe(Bn,go){var sc,yc;let Yo=go?kg(go):void 0;if(Yo&<.remappedSymbolNames.has(Yo))return lt.remappedSymbolNames.get(Yo);go&&(Bn=myn(go,Bn));let Vg=0,sA=Bn;for(;(sc=lt.usedSymbolNames)!=null&&sc.has(Bn);)Vg++,Bn=`${sA}_${Vg}`;return(yc=lt.usedSymbolNames)==null||yc.add(Bn),Yo&<.remappedSymbolNames.set(Yo,Bn),Bn}function myn(Bn,go){if(go==="default"||go==="__class"||go==="__function"){let sc=Vt(lt);lt.flags|=16777216;let yc=T5(Bn,lt);sc(),go=yc.length>0&&sne(yc.charCodeAt(0))?l2(yc):yc}return go==="default"?go="_default":go==="export="&&(go="_exports"),go=Uh(go,Ze)&&!WY(go)?go:"_"+go.replace(/[^a-z0-9]/gi,"_"),go}function yk(Bn,go){let sc=kg(Bn);return lt.remappedSymbolNames.has(sc)?lt.remappedSymbolNames.get(sc):(go=myn(Bn,go),lt.remappedSymbolNames.set(sc,go),go)}}function Y5($t){return $t.maxExpansionDepth!==-1}function FOe($t){return!!$t.valueDeclaration&&rh($t.valueDeclaration)&&p($t.valueDeclaration.name)}function Yat($t){if($t.valueDeclaration&&rh($t.valueDeclaration)&&p($t.valueDeclaration.name))return me.cloneNode($t.valueDeclaration.name)}}function vse(u){var m;let v=la(u)&4?u.target.symbol:u.symbol;return yA(u)||!!((m=v?.declarations)!=null&&m.some(D=>s.isSourceFileDefaultLibrary(ms(D))))}function gk(u,m,v=16384,D){return D?P(D).getText():dP(P);function P(Y){let oe=FQ(v)|70221824|512,Be=Dt.typePredicateToTypePredicateNode(u,m,oe),Oe=gQ(),He=m&&ms(m);return Oe.writeNode(4,Be,He,Y),Y}}function g2e(u,m){let v=[],D=0;for(let P=0;PIl(oe)?oe:void 0),Y=P&&Il(P);if(P&&Y){if(Zl(P)&&f3(P))return nf(u);if(Un(Y)&&!(iI(u)&4096)){let oe=fa(u).nameType;if(oe&&oe.flags&384){let Be=Rpe(u,m);if(Be!==void 0)return Be}}return Wd(Y)}if(P||(P=u.declarations[0]),P.parent&&P.parent.kind===261)return Wd(P.parent.name);switch(P.kind){case 232:case 219:case 220:return m&&!m.encounteredError&&!(m.flags&131072)&&(m.encounteredError=!0),P.kind===232?"(Anonymous class)":"(Anonymous function)"}}let D=Rpe(u,m);return D!==void 0?D:nf(u)}function Ak(u){if(u){let v=sa(u);return v.isVisible===void 0&&(v.isVisible=!!m()),v.isVisible}return!1;function m(){switch(u.kind){case 339:case 347:case 341:return!!(u.parent&&u.parent.parent&&u.parent.parent.parent&&ll(u.parent.parent.parent));case 209:return Ak(u.parent.parent);case 261:if(Nu(u.name)&&!u.name.elements.length)return!1;case 268:case 264:case 265:case 266:case 263:case 267:case 272:if(_F(u))return!0;let v=Tn(u);return!(Hat(u)&32)&&!(u.kind!==272&&v.kind!==308&&v.flags&33554432)?fc(v):Ak(v);case 173:case 172:case 178:case 179:case 175:case 174:if(Gb(u,6))return!1;case 177:case 181:case 180:case 182:case 170:case 269:case 185:case 186:case 188:case 184:case 189:case 190:case 193:case 194:case 197:case 203:return Ak(u.parent);case 274:case 275:case 277:return!1;case 169:case 308:case 271:return!0;case 278:return!1;default:return!1}}}function Bse(u,m){let v;u.kind!==11&&u.parent&&u.parent.kind===278?v=An(u,u,2998271,void 0,!1):u.parent.kind===282&&(v=cq(u.parent,2998271));let D,P;return v&&(P=new Set,P.add(kg(v)),Y(v.declarations)),D;function Y(oe){F(oe,Be=>{let Oe=Sv(Be)||Be;if(m?sa(Be).isVisible=!0:(D=D||[],Qi(D,Oe)),d3(Be)){let He=Be.moduleReference,qe=B0(He),Vt=An(Be,qe.escapedText,901119,void 0,!1);Vt&&P&&Ar(P,kg(Vt))&&Y(Vt.declarations)}})}}function VN(u,m){let v=rt(u,m);if(v>=0){let{length:D}=Mx;for(let P=v;P=a9;v--){if(Kt(Mx[v],WU[v]))return-1;if(Mx[v]===u&&WU[v]===m)return v}return-1}function Kt(u,m){switch(m){case 0:return!!fa(u).type;case 2:return!!fa(u).declaredType;case 1:return!!u.resolvedBaseConstructorType;case 3:return!!u.resolvedReturnType;case 4:return!!u.immediateBaseConstraint;case 5:return!!u.resolvedTypeArguments;case 6:return!!u.baseTypesResolved;case 7:return!!fa(u).writeType;case 8:return sa(u).parameterInitializerContainsUndefined!==void 0}return pe.assertNever(m)}function xr(){return Mx.pop(),WU.pop(),a5.pop()}function Tn(u){return ji(Rw(u),m=>{switch(m.kind){case 261:case 262:case 277:case 276:case 275:case 274:return!1;default:return!0}}).parent}function Ai(u){let m=Fp($m(u));return m.typeParameters?iZ(m,At(m.typeParameters,v=>hr)):m}function Pi(u,m){let v=Gg(u,m);return v?Io(v):void 0}function Ba(u,m){var v;let D;return Pi(u,m)||(D=(v=vq(u,m))==null?void 0:v.type)&&Z0(D,!0,!0)}function Xo(u){return u&&(u.flags&1)!==0}function uo(u){return u===nn||!!(u.flags&1&&u.aliasSymbol)}function Cc(u,m){if(m!==0)return _q(u,!1,m);let v=Uo(u);return v&&fa(v).type||_q(u,!1,m)}function Tl(u,m,v){if(u=nm(u,Oe=>!(Oe.flags&98304)),u.flags&131072)return Xg;if(u.flags&1048576)return Yf(u,Oe=>Tl(Oe,m,v));let D=Ha(At(m,sZ)),P=[],Y=[];for(let Oe of Gd(u)){let He=Bq(Oe,8576);!dg(He,D)&&!(u2(Oe)&6)&&got(Oe)?P.push(Oe):Y.push(He)}if(CK(u)||_K(D)){if(Y.length&&(D=Ha([D,...Y])),D.flags&131072)return u;let Oe=r5s();return Oe?xse(Oe,[u,D]):nn}let oe=qu();for(let Oe of P)oe.set(Oe.escapedName,CUt(Oe,!1));let Be=Hf(v,oe,E,E,A0(u));return Be.objectFlags|=4194304,Be}function bp(u){return!!(u.flags&465829888)&&ah(L_(u)||cn,32768)}function ep(u){let m=kv(u,bp)?Yf(u,v=>v.flags&465829888?WN(v):v):u;return Dv(m,524288)}function zA(u,m){let v=Bv(u);return v?dZ(v,m):m}function Bv(u){let m=CS(u);if(m&&UJ(m)&&m.flowNode){let v=C9(u);if(v){let D=gn(H3.createStringLiteral(v),u),P=D_(m)?m:H3.createParenthesizedExpression(m),Y=gn(H3.createElementAccessExpression(P,D),u);return XA(D,Y),XA(Y,u),P!==m&&XA(P,Y),Y.flowNode=m.flowNode,Y}}}function CS(u){let m=u.parent.parent;switch(m.kind){case 209:case 304:return Bv(m);case 210:return Bv(u.parent);case 261:return m.initializer;case 227:return m.right}}function C9(u){let m=u.parent;return u.kind===209&&m.kind===207?_9(u.propertyName||u.name):u.kind===304||u.kind===305?_9(u.name):""+m.elements.indexOf(u)}function _9(u){let m=sZ(u);return m.flags&384?""+m.value:void 0}function Kx(u){let m=u.dotDotDotToken?32:0,v=Cc(u.parent.parent,m);return v&&uW(u,v,!1)}function uW(u,m,v){if(Xo(m))return m;let D=u.parent;ot&&u.flags&33554432&&HL(u)?m=gZ(m):ot&&D.parent.initializer&&!hR(bmn(D.parent.initializer),65536)&&(m=Dv(m,524288));let P=32|(v||Gq(u)?16:0),Y;if(D.kind===207)if(u.dotDotDotToken){if(m=JB(m),m.flags&2||!nOe(m))return Sr(u,Z.Rest_types_may_only_be_created_from_object_types),nn;let oe=[];for(let Be of D.elements)Be.dotDotDotToken||oe.push(Be.propertyName||Be.name);Y=Tl(m,oe,u.symbol)}else{let oe=u.propertyName||u.name,Be=sZ(oe),Oe=R1(m,Be,P,oe);Y=zA(u,Oe)}else{let oe=N9(65|(u.dotDotDotToken?0:128),m,Bt,D),Be=D.elements.indexOf(u);if(u.dotDotDotToken){let Oe=Yf(m,He=>He.flags&58982400?WN(He):He);Y=RE(Oe,yA)?Yf(Oe,He=>Mpe(He,Be)):d0(oe)}else if(T9(m)){let Oe=fR(Be),He=pW(m,Oe,P,u.name)||nn;Y=zA(u,He)}else Y=oe}return u.initializer?kh(ai(u))?ot&&!hR(qpe(u,0),16777216)?ep(Y):Y:p8t(u,Ha([ep(Y),qpe(u,0)],2)):Y}function nd(u){let m=eN(u);if(m)return nl(m)}function Fm(u){let m=QA(u,!0);return m.kind===106||m.kind===80&&L0(m)===dt}function y9(u){let m=QA(u,!0);return m.kind===210&&m.elements.length===0}function Z0(u,m=!1,v=!0){return ot&&v?mW(u,m):u}function _q(u,m,v){if(nc(u)&&u.parent.parent.kind===250){let oe=ON(FKt(Ol(u.parent.parent.expression,v)));return oe.flags&4456448?rhn(oe):$r}if(nc(u)&&u.parent.parent.kind===251){let oe=u.parent.parent;return TOe(oe)||hr}if(Nu(u.parent))return Kx(u);let D=pi(u)&&!Nw(u)||ss(u)||JPt(u),P=m&&RB(u),Y=AW(u);if(Qre(u))return Y?Xo(Y)||Y===cn?Y:nn:Ke?cn:hr;if(Y)return Z0(Y,D,P);if((Rt||wo(u))&&nc(u)&&!Nu(u.name)&&!(Hat(u)&32)&&!(u.flags&33554432)){if(!(jQ(u)&6)&&(!u.initializer||Fm(u.initializer)))return Sn;if(u.initializer&&y9(u.initializer))return OC}if(Si(u)){if(!u.symbol)return;let oe=u.parent;if(oe.kind===179&&Rse(oe)){let He=Cp(Uo(u.parent),178);if(He){let qe=yS(He),Vt=K8t(oe);return Vt&&u===Vt?(pe.assert(!Vt.type),Io(qe.thisParameter)):ud(qe)}}let Be=B3s(oe,u);if(Be)return Be;let Oe=u.symbol.escapedName==="this"?yKt(oe):$mn(u);if(Oe)return Z0(Oe,!1,P)}if(l1(u)&&u.initializer){if(wo(u)&&!Si(u)){let Be=Ii(u,Uo(u),E7(u));if(Be)return Be}let oe=p8t(u,qpe(u,v));return Z0(oe,D,P)}if(pi(u)&&(Rt||wo(u)))if(zh(u)){let oe=Me(u.parent.members,fl),Be=oe.length?Ce(u.symbol,oe):o_(u)&128?bot(u.symbol):void 0;return Be&&Z0(Be,!0,P)}else{let oe=zY(u.parent),Be=oe?Pe(u.symbol,oe):o_(u)&128?bot(u.symbol):void 0;return Be&&Z0(Be,!0,P)}if(EN(u))return tn;if(Nu(u.name))return Npe(u.name,!1,!0)}function jx(u){if(u.valueDeclaration&&fo(u.valueDeclaration)){let m=fa(u);return m.isConstructorDeclaredProperty===void 0&&(m.isConstructorDeclaredProperty=!1,m.isConstructorDeclaredProperty=!!vo(u)&&ue(u.declarations,v=>fo(v)&&Jot(v)&&(v.left.kind!==213||d1(v.left.argumentExpression))&&!Jo(void 0,v,u,v))),m.isConstructorDeclaredProperty}return!1}function dk(u){let m=u.valueDeclaration;return m&&pi(m)&&!kh(m)&&!m.initializer&&(Rt||wo(m))}function vo(u){if(u.declarations)for(let m of u.declarations){let v=r0(m,!1,!1);if(v&&(v.kind===177||YN(v)))return v}}function q(u){let m=ms(u.declarations[0]),v=Bc(u.escapedName),D=u.declarations.every(Y=>wo(Y)&&_p(Y)&&cN(Y.expression)),P=D?me.createPropertyAccessExpression(me.createPropertyAccessExpression(me.createIdentifier("module"),me.createIdentifier("exports")),v):me.createPropertyAccessExpression(me.createIdentifier("exports"),v);return D&&XA(P.expression.expression,P.expression),XA(P.expression,P),XA(P,m),P.flowNode=m.endFlowNode,dZ(P,Sn,Bt)}function Ce(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName);for(let D of m){let P=me.createPropertyAccessExpression(me.createThis(),v);XA(P.expression,P),XA(P,D),P.flowNode=D.returnFlowNode;let Y=yt(P,u);if(Rt&&(Y===Sn||Y===OC)&&Sr(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,kl(u),no(Y)),!RE(Y,oOe))return sSe(Y)}}function Pe(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName),D=me.createPropertyAccessExpression(me.createThis(),v);XA(D.expression,D),XA(D,m),D.flowNode=m.returnFlowNode;let P=yt(D,u);return Rt&&(P===Sn||P===OC)&&Sr(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,kl(u),no(P)),RE(P,oOe)?void 0:sSe(P)}function yt(u,m){let v=m?.valueDeclaration&&(!dk(m)||o_(m.valueDeclaration)&128)&&bot(m)||Bt;return dZ(u,Sn,v)}function Rr(u,m){let v=FY(u.valueDeclaration);if(v){let Be=wo(v)?ov(v):void 0;return Be&&Be.typeExpression?nl(Be.typeExpression):u.valueDeclaration&&Ii(u.valueDeclaration,u,v)||V5(RI(v))}let D,P=!1,Y=!1;if(jx(u)&&(D=Pe(u,vo(u))),!D){let Be;if(u.declarations){let Oe;for(let He of u.declarations){let qe=fo(He)||Zl(He)?He:_p(He)?fo(He.parent)?He.parent:He:void 0;if(!qe)continue;let Vt=_p(qe)?XJ(qe):nI(qe);(Vt===4||fo(qe)&&Jot(qe,Vt))&&(_2(qe)?P=!0:Y=!0),Zl(qe)||(Oe=Jo(Oe,qe,u,He)),Oe||(Be||(Be=[])).push(fo(qe)||Zl(qe)?Au(u,m,qe,Vt):Wi)}D=Oe}if(!D){if(!B(Be))return nn;let Oe=P&&u.declarations?gW(Be,u.declarations):void 0;if(Y){let qe=bot(u);qe&&((Oe||(Oe=[])).push(qe),P=!0)}let He=jt(Oe,qe=>!!(qe.flags&-98305))?Oe:Be;D=Ha(He)}}let oe=D1(Z0(D,!1,Y&&!P));return u.valueDeclaration&&wo(u.valueDeclaration)&&nm(oe,Be=>!!(Be.flags&-98305))===Wi?(P5(u.valueDeclaration,hr),hr):oe}function Ii(u,m,v){var D,P;if(!wo(u)||!v||!og(v)||v.properties.length)return;let Y=qu();for(;fo(u)||jo(u);){let Oe=mS(u);(D=Oe?.exports)!=null&&D.size&&FN(Y,Oe.exports),u=fo(u)?u.parent:u.parent.parent}let oe=mS(u);(P=oe?.exports)!=null&&P.size&&FN(Y,oe.exports);let Be=Hf(m,Y,E,E,E);return Be.objectFlags|=4096,Be}function Jo(u,m,v,D){var P;let Y=kh(m.parent);if(Y){let oe=D1(nl(Y));if(u)!uo(u)&&!uo(oe)&&!rG(u,oe)&&a0n(void 0,u,D,oe);else return oe}if((P=v.parent)!=null&&P.valueDeclaration){let oe=S5(v.parent);if(oe.valueDeclaration){let Be=kh(oe.valueDeclaration);if(Be){let Oe=Gg(nl(Be),v.escapedName);if(Oe)return AR(Oe)}}}return u}function Au(u,m,v,D){if(Zl(v)){if(m)return Io(m);let oe=RI(v.arguments[2]),Be=Pi(oe,"value");if(Be)return Be;let Oe=Pi(oe,"get");if(Oe){let qe=kK(Oe);if(qe)return ud(qe)}let He=Pi(oe,"set");if(He){let qe=kK(He);if(qe)return i8t(qe)}return hr}if(cf(v.left,v.right))return hr;let P=D===1&&(jo(v.left)||Yg(v.left))&&(cN(v.left.expression)||Ir(v.left.expression)&&p3(v.left.expression)),Y=m?Io(m):P?Iy(RI(v.right)):V5(RI(v.right));if(Y.flags&524288&&D===2&&u.escapedName==="export="){let oe=pR(Y),Be=qu();a7(oe.members,Be);let Oe=Be.size;m&&!m.exports&&(m.exports=qu()),(m||u).exports.forEach((qe,Vt)=>{var kt;let vr=Be.get(Vt);if(vr&&vr!==qe&&!(qe.flags&2097152))if(qe.flags&111551&&vr.flags&111551){if(qe.valueDeclaration&&vr.valueDeclaration&&ms(qe.valueDeclaration)!==ms(vr.valueDeclaration)){let vn=Bc(qe.escapedName),ii=((kt=Gs(vr.valueDeclaration,rh))==null?void 0:kt.name)||vr.valueDeclaration;lg(Sr(qe.valueDeclaration,Z.Duplicate_identifier_0,vn),mo(ii,Z._0_was_also_declared_here,vn)),lg(Sr(ii,Z.Duplicate_identifier_0,vn),mo(qe.valueDeclaration,Z._0_was_also_declared_here,vn))}let dn=gA(qe.flags|vr.flags,Vt);dn.links.type=Ha([Io(qe),Io(vr)]),dn.valueDeclaration=vr.valueDeclaration,dn.declarations=Nn(vr.declarations,qe.declarations),Be.set(Vt,dn)}else Be.set(Vt,Ev(qe,vr));else Be.set(Vt,qe)});let He=Hf(Oe!==Be.size?void 0:oe.symbol,Be,oe.callSignatures,oe.constructSignatures,oe.indexInfos);if(Oe===Be.size&&(Y.aliasSymbol&&(He.aliasSymbol=Y.aliasSymbol,He.aliasTypeArguments=Y.aliasTypeArguments),la(Y)&4)){He.aliasSymbol=Y.symbol;let qe=lf(Y);He.aliasTypeArguments=B(qe)?qe:void 0}return He.objectFlags|=EWe([Y])|la(Y)&20608,He.symbol&&He.symbol.flags&32&&Y===wv(He.symbol)&&(He.objectFlags|=16777216),He}return Sot(Y)?(P5(v,d_),d_):Y}function cf(u,m){return jo(u)&&u.expression.kind===110&&Sz(m,v=>h_(u,v))}function _2(u){let m=r0(u,!1,!1);return m.kind===177||m.kind===263||m.kind===219&&!une(m.parent)}function gW(u,m){return pe.assert(u.length===m.length),u.filter((v,D)=>{let P=m[D],Y=fo(P)?P:fo(P.parent)?P.parent:void 0;return Y&&_2(Y)})}function gR(u,m,v){if(u.initializer){let D=Nu(u.name)?Npe(u.name,!0,!1):cn;return Z0(x_n(u,qpe(u,0,D)))}return Nu(u.name)?Npe(u.name,m,v):(v&&!Vst(u)&&P5(u,hr),m?ds:hr)}function yq(u,m,v){let D=qu(),P,Y=131200;F(u.elements,Be=>{let Oe=Be.propertyName||Be.name;if(Be.dotDotDotToken){P=eG($r,hr,!1);return}let He=sZ(Oe);if(!g2(He)){Y|=512;return}let qe=A2(He),Vt=4|(Be.initializer?16777216:0),kt=gA(Vt,qe);kt.links.type=gR(Be,m,v),D.set(kt.escapedName,kt)});let oe=Hf(void 0,D,E,E,P?[P]:E);return oe.objectFlags|=Y,m&&(oe.pattern=u,oe.objectFlags|=131072),oe}function IJt(u,m,v){let D=u.elements,P=li(D),Y=P&&P.kind===209&&P.dotDotDotToken?P:void 0;if(D.length===0||D.length===1&&Y)return Ze>=2?WIn(hr):d_;let oe=At(D,qe=>yp(qe)?hr:gR(qe,m,v)),Be=De(D,qe=>!(qe===Y||yp(qe)||Gq(qe)),D.length-1)+1,Oe=At(D,(qe,Vt)=>qe===Y?4:Vt>=Be?2:1),He=hk(oe,Oe);return m&&(He=mIn(He),He.pattern=u,He.objectFlags|=131072),He}function Npe(u,m=!1,v=!1){m&&MB.push(u);let D=u.kind===207?yq(u,m,v):IJt(u,m,v);return m&&MB.pop(),D}function bq(u,m){return d2e(_q(u,!0,0),u,m)}function hJt(u){let m=sa(u);if(!m.resolvedType){let v=gA(4096,"__importAttributes"),D=qu();F(u.elements,Y=>{let oe=gA(4,JAe(Y));oe.parent=v,oe.links.type=fKs(Y),oe.links.target=oe,D.set(oe.escapedName,oe)});let P=Hf(v,D,E,E,E);P.objectFlags|=262272,m.resolvedType=P}return m.resolvedType}function mJt(u){let m=mS(u),v=M3s(!1);return v&&m&&m===v}function d2e(u,m,v){return u?(u.flags&4096&&mJt(m.parent)&&(u=_Ut(m)),v&&kot(m,u),u.flags&8192&&(hg(m)||!AW(m))&&u.symbol!==Uo(m)&&(u=ci),D1(u)):(u=Si(m)&&m.dotDotDotToken?d_:hr,v&&(Vst(m)||P5(m,u)),u)}function Vst(u){let m=Rw(u),v=m.kind===170?m.parent:m;return bOe(v)}function AW(u){let m=kh(u);if(m)return nl(m)}function CJt(u){let m=u.valueDeclaration;return m?(hg(m)&&(m=ai(m)),Si(m)?fot(m.parent):!1):!1}function _Jt(u){let m=fa(u);if(!m.type){let v=yJt(u);return!m.type&&!CJt(u)&&(m.type=v),v}return m.type}function yJt(u){if(u.flags&4194304)return Ai(u);if(u===ir)return hr;if(u.flags&134217728&&u.valueDeclaration){let D=Uo(ms(u.valueDeclaration)),P=gA(D.flags,"exports");P.declarations=D.declarations?D.declarations.slice():[],P.parent=u,P.links.target=D,D.valueDeclaration&&(P.valueDeclaration=D.valueDeclaration),D.members&&(P.members=new Map(D.members)),D.exports&&(P.exports=new Map(D.exports));let Y=qu();return Y.set("exports",P),Hf(u,Y,E,E,E)}pe.assertIsDefined(u.valueDeclaration);let m=u.valueDeclaration;if(ll(m)&&Zu(m))return m.statements.length?D1(V5(Ol(m.statements[0].expression))):Xg;if(yB(m))return kpe(u);if(!VN(u,0))return u.flags&512&&!(u.flags&67108864)?xpe(u):AK(u);let v;if(m.kind===278)v=d2e(AW(m)||RI(m.expression),m);else if(fo(m)||wo(m)&&(Zl(m)||(jo(m)||jge(m))&&fo(m.parent)))v=Rr(u);else if(jo(m)||Yg(m)||Ir(m)||mA(m)||mC(m)||pm(m)||ih(m)||uu(m)&&!a2(m)||hl(m)||ll(m)){if(u.flags&9136)return xpe(u);v=fo(m.parent)?Rr(u):AW(m)||hr}else if(fm(m))v=AW(m)||G_n(m);else if(EN(m))v=AW(m)||pCn(m);else if(a0(m))v=AW(m)||efe(m.name,0);else if(a2(m))v=AW(m)||F_n(m,0);else if(Si(m)||pi(m)||ss(m)||nc(m)||hg(m)||dY(m))v=bq(m,!0);else if(V3(m))v=xpe(u);else if(LF(m))v=Mst(u);else return pe.fail("Unhandled declaration kind! "+pe.formatSyntaxKind(m.kind)+" for "+pe.formatSymbol(u));return xr()?v:u.flags&512&&!(u.flags&67108864)?xpe(u):AK(u)}function ZQ(u){if(u)switch(u.kind){case 178:return xb(u);case 179:return Uye(u);case 173:return pe.assert(Nw(u)),kh(u)}}function Dpe(u){let m=ZQ(u);return m&&nl(m)}function Eq(u){let m=K8t(u);return m&&m.symbol}function Pst(u){return k5(yS(u))}function kpe(u){let m=fa(u);if(!m.type){if(!VN(u,0))return nn;let v=Cp(u,178),D=Cp(u,179),P=Gs(Cp(u,173),t0),Y=v&&wo(v)&&nd(v)||Dpe(v)||Dpe(D)||Dpe(P)||v&&v.body&&dat(v)||P&&bq(P,!0);Y||(D&&!bOe(D)?Hw(Rt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,kl(u)):v&&!bOe(v)?Hw(Rt,v,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,kl(u)):P&&!bOe(P)&&Hw(Rt,P,Z.Member_0_implicitly_has_an_1_type,kl(u),"any"),Y=hr),xr()||(ZQ(v)?Sr(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)):ZQ(D)||ZQ(P)?Sr(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)):v&&Rt&&Sr(v,Z._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,kl(u)),Y=hr),m.type??(m.type=Y)}return m.type}function Wst(u){let m=fa(u);if(!m.writeType){if(!VN(u,7))return nn;let v=Cp(u,179)??Gs(Cp(u,173),t0),D=Dpe(v);xr()||(ZQ(v)&&Sr(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)),D=hr),m.writeType??(m.writeType=D||kpe(u))}return m.writeType}function p2e(u){let m=nZ(wv(u));return m.flags&8650752?m:m.flags&2097152?de(m.types,v=>!!(v.flags&8650752)):void 0}function xpe(u){let m=fa(u),v=m;if(!m.type){let D=u.valueDeclaration&&gat(u.valueDeclaration,!1);if(D){let P=zKt(u,D);P&&(u=P,m=P.links)}v.type=m.type=Ost(u)}return m.type}function Ost(u){let m=u.valueDeclaration;if(u.flags&1536&&NY(u))return hr;if(m&&(m.kind===227||_p(m)&&m.parent.kind===227))return Rr(u);if(u.flags&512&&m&&ll(m)&&m.commonJsModuleIndicator){let D=wE(u);if(D!==u){if(!VN(u,0))return nn;let P=jA(u.exports.get("export=")),Y=Rr(P,P===D?void 0:D);return xr()?Y:AK(u)}}let v=Lh(16,u);if(u.flags&32){let D=p2e(u);return D?Kg([v,D]):v}else return ot&&u.flags&16777216?mW(v,!0):v}function Mst(u){let m=fa(u);return m.type||(m.type=Dfn(u))}function bJt(u){let m=fa(u);if(!m.type){if(!VN(u,0))return nn;let v=YC(u),D=u.declarations&&b5(Mb(u),!0),P=X(D?.declarations,Y=>Cf(Y)?AW(Y):void 0);if(m.type??(m.type=D?.declarations&&xat(D.declarations)&&u.declarations.length?q(D):xat(u.declarations)?Sn:P||(Hb(v)&111551?Io(v):nn)),!xr())return AK(D??u),m.type??(m.type=nn)}return m.type}function EJt(u){let m=fa(u);return m.type||(m.type=_l(Io(m.target),m.mapper))}function SJt(u){let m=fa(u);return m.writeType||(m.writeType=_l(b9(m.target),m.mapper))}function AK(u){let m=u.valueDeclaration;if(m){if(kh(m))return Sr(u.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)),nn;Rt&&(m.kind!==170||m.initializer)&&Sr(u.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,kl(u))}else if(u.flags&2097152){let v=Mb(u);v&&Sr(v,Z.Circular_definition_of_import_alias_0,kl(u))}return hr}function Hst(u){let m=fa(u);return m.type||(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.type=m.deferralParent.flags&1048576?Ha(m.deferralConstituents):Kg(m.deferralConstituents)),m.type}function vJt(u){let m=fa(u);return!m.writeType&&m.deferralWriteConstituents&&(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.writeType=m.deferralParent.flags&1048576?Ha(m.deferralWriteConstituents):Kg(m.deferralWriteConstituents)),m.writeType}function b9(u){let m=iI(u);return m&2?m&65536?vJt(u)||Hst(u):u.links.writeType||u.links.type:u.flags&4?AZ(Io(u),!!(u.flags&16777216)):u.flags&98304?m&1?SJt(u):Wst(u):Io(u)}function Io(u){let m=iI(u);return m&65536?Hst(u):m&1?EJt(u):m&262144?a3s(u):m&8192?SHs(u):u.flags&7?_Jt(u):u.flags&9136?xpe(u):u.flags&8?Mst(u):u.flags&98304?kpe(u):u.flags&2097152?bJt(u):nn}function AR(u){return AZ(Io(u),!!(u.flags&16777216))}function Yst(u,m){if(u===void 0||!(la(u)&4))return!1;for(let v of m)if(u.target===v)return!0;return!1}function w1(u,m){return u!==void 0&&m!==void 0&&(la(u)&4)!==0&&u.target===m}function vs(u){return la(u)&4?u.target:u}function da(u,m){return v(u);function v(D){if(la(D)&7){let P=vs(D);return P===m||jt(Kw(P),v)}else if(D.flags&2097152)return jt(D.types,v);return!1}}function Sa(u,m){for(let v of m)u=ps(u,R5(Uo(v)));return u}function Fc(u,m){for(;;){if(u=u.parent,u&&fo(u)){let D=nI(u);if(D===6||D===3){let P=Uo(u.left);P&&P.parent&&!ji(P.parent.valueDeclaration,Y=>u===Y)&&(u=P.parent.valueDeclaration)}}if(!u)return;let v=u.kind;switch(v){case 264:case 232:case 265:case 180:case 181:case 174:case 185:case 186:case 318:case 263:case 175:case 219:case 220:case 266:case 346:case 347:case 341:case 339:case 201:case 195:{let P=Fc(u,m);if((v===219||v===220||a2(u))&&bS(u)){let Be=Nc(tg(Io(Uo(u)),0));if(Be&&Be.typeParameters)return[...P||E,...Be.typeParameters]}if(v===201)return Ft(P,R5(Uo(u.typeParameter)));if(v===195)return Nn(P,IUt(u));let Y=Sa(P,ZD(u)),oe=m&&(v===264||v===232||v===265||YN(u))&&wv(Uo(u)).thisType;return oe?Ft(Y,oe):Y}case 342:let D=pne(u);D&&(u=D.valueDeclaration);break;case 321:{let P=Fc(u,m);return u.tags?Sa(P,er(u.tags,Y=>ZB(Y)?Y.typeParameters:void 0)):P}}}}function Qc(u){var m;let v=u.flags&32||u.flags&16?u.valueDeclaration:(m=u.declarations)==null?void 0:m.find(D=>{if(D.kind===265)return!0;if(D.kind!==261)return!1;let P=D.initializer;return!!P&&(P.kind===219||P.kind===220)});return pe.assert(!!v,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Fc(v)}function Ug(u){if(!u.declarations)return;let m;for(let v of u.declarations)(v.kind===265||v.kind===264||v.kind===232||YN(v)||Ane(v))&&(m=Sa(m,ZD(v)));return m}function Ep(u){return Nn(Qc(u),Ug(u))}function I_(u){let m=tg(u,1);if(m.length===1){let v=m[0];if(!v.typeParameters&&v.parameters.length===1&&D0(v)){let D=dOe(v.parameters[0]);return Xo(D)||MWe(D)===hr}}return!1}function dR(u){if(tg(u,1).length>0)return!0;if(u.flags&8650752){let m=L_(u);return!!m&&I_(m)}return!1}function XB(u){let m=AN(u.symbol);return m&&BB(m)}function Uw(u,m,v){let D=B(m),P=wo(v);return Me(tg(u,1),Y=>(P||D>=Ik(Y.typeParameters))&&D<=B(Y.typeParameters))}function zx(u,m,v){let D=Uw(u,m,v),P=At(m,nl);return Tr(D,Y=>jt(Y.typeParameters)?y2e(Y,P,wo(v)):Y)}function nZ(u){if(!u.resolvedBaseConstructorType){let m=AN(u.symbol),v=m&&BB(m),D=XB(u);if(!D)return u.resolvedBaseConstructorType=Bt;if(!VN(u,1))return nn;let P=Ol(D.expression);if(v&&D!==v&&(pe.assert(!v.typeArguments),Ol(v.expression)),P.flags&2621440&&pR(P),!xr())return Sr(u.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,kl(u.symbol)),u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn);if(!(P.flags&1)&&P!==Ot&&!dR(P)){let Y=Sr(D.expression,Z.Type_0_is_not_a_constructor_function_type,no(P));if(P.flags&262144){let oe=Ppe(P),Be=cn;if(oe){let Oe=tg(oe,1);Oe[0]&&(Be=ud(Oe[0]))}P.symbol.declarations&&lg(Y,mo(P.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,kl(P.symbol),no(Be)))}return u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn)}u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=P)}return u.resolvedBaseConstructorType}function wse(u){let m=E;if(u.symbol.declarations)for(let v of u.symbol.declarations){let D=jJ(v);if(D)for(let P of D){let Y=nl(P);uo(Y)||(m===E?m=[Y]:m.push(Y))}}return m}function Gpe(u,m){Sr(u,Z.Type_0_recursively_references_itself_as_a_base_type,no(m,void 0,2))}function Kw(u){if(!u.baseTypesResolved){if(VN(u,6)&&(u.objectFlags&8?u.resolvedBaseTypes=[kOs(u)]:u.symbol.flags&96?(u.symbol.flags&32&&xOs(u),u.symbol.flags&64&&FOs(u)):pe.fail("type must be class or interface"),!xr()&&u.symbol.declarations))for(let m of u.symbol.declarations)(m.kind===264||m.kind===265)&&Gpe(m,u);u.baseTypesResolved=!0}return u.resolvedBaseTypes}function kOs(u){let m=Tr(u.typeParameters,(v,D)=>u.elementFlags[D]&8?R1(v,ri):v);return d0(Ha(m||E),u.readonly)}function xOs(u){u.resolvedBaseTypes=Lre;let m=fy(nZ(u));if(!(m.flags&2621441))return u.resolvedBaseTypes=E;let v=XB(u),D,P=m.symbol?Fp(m.symbol):void 0;if(m.symbol&&m.symbol.flags&32&&GOs(P))D=CIn(v,m.symbol);else if(m.flags&1)D=m;else{let oe=zx(m,v.typeArguments,v);if(!oe.length)return Sr(v.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),u.resolvedBaseTypes=E;D=ud(oe[0])}if(uo(D))return u.resolvedBaseTypes=E;let Y=JB(D);if(!fWe(Y)){let oe=VJt(void 0,D),Be=wu(oe,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,no(Y));return PA.add(Bw(ms(v.expression),v.expression,Be)),u.resolvedBaseTypes=E}return u===Y||da(Y,u)?(Sr(u.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,no(u,void 0,2)),u.resolvedBaseTypes=E):(u.resolvedBaseTypes===Lre&&(u.members=void 0),u.resolvedBaseTypes=[Y])}function GOs(u){let m=u.outerTypeParameters;if(m){let v=m.length-1,D=lf(u);return m[v].symbol!==D[v].symbol}return!0}function fWe(u){if(u.flags&262144){let m=L_(u);if(m)return fWe(m)}return!!(u.flags&67633153&&!Yb(u)||u.flags&2097152&&ue(u.types,fWe))}function FOs(u){if(u.resolvedBaseTypes=u.resolvedBaseTypes||E,u.symbol.declarations){for(let m of u.symbol.declarations)if(m.kind===265&&N7(m))for(let v of N7(m)){let D=JB(nl(v));uo(D)||(fWe(D)?u!==D&&!da(D,u)?u.resolvedBaseTypes===E?u.resolvedBaseTypes=[D]:u.resolvedBaseTypes.push(D):Gpe(m,u):Sr(v,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function ZOs(u){if(!u.declarations)return!0;for(let m of u.declarations)if(m.kind===265){if(m.flags&256)return!1;let v=N7(m);if(v){for(let D of v)if(Od(D.expression)){let P=TI(D.expression,788968,!0);if(!P||!(P.flags&64)||wv(P).thisType)return!1}}}return!0}function wv(u){let m=fa(u),v=m;if(!m.declaredType){let D=u.flags&32?1:2,P=zKt(u,u.valueDeclaration&&ZXs(u.valueDeclaration));P&&(u=P,m=P.links);let Y=v.declaredType=m.declaredType=Lh(D,u),oe=Qc(u),Be=Ug(u);(oe||Be||D===1||!ZOs(u))&&(Y.objectFlags|=4,Y.typeParameters=Nn(oe,Be),Y.outerTypeParameters=oe,Y.localTypeParameters=Be,Y.instantiations=new Map,Y.instantiations.set(UB(Y.typeParameters),Y),Y.target=Y,Y.resolvedTypeArguments=Y.typeParameters,Y.thisType=Yy(u),Y.thisType.isThisType=!0,Y.thisType.constraint=Y)}return m.declaredType}function Tfn(u){var m;let v=fa(u);if(!v.declaredType){if(!VN(u,2))return nn;let D=pe.checkDefined((m=u.declarations)==null?void 0:m.find(Ane),"Type alias symbol with no valid declaration found"),P=iS(D)?D.typeExpression:D.type,Y=P?nl(P):nn;if(xr()){let oe=Ug(u);oe&&(v.typeParameters=oe,v.instantiations=new Map,v.instantiations.set(UB(oe),Y)),Y===Mt&&u.escapedName==="BuiltinIteratorReturn"&&(Y=eUt())}else Y=nn,D.kind===341?Sr(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,kl(u)):Sr(rh(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,kl(u));v.declaredType??(v.declaredType=Y)}return v.declaredType}function Qst(u){return u.flags&1056&&u.symbol.flags&8?Fp($m(u.symbol)):u}function Rfn(u){let m=fa(u);if(!m.declaredType){let v=[];if(u.declarations){for(let P of u.declarations)if(P.kind===267){for(let Y of P.members)if(Rse(Y)){let oe=Uo(Y),Be=GK(Y).value,Oe=Rq(Be!==void 0?iMs(Be,kg(u),oe):Nfn(oe));fa(oe).declaredType=Oe,v.push(Iy(Oe))}}}let D=v.length?Ha(v,1,u,void 0):Nfn(u);D.flags&1048576&&(D.flags|=1024,D.symbol=u),m.declaredType=D}return m.declaredType}function Nfn(u){let m=Oc(32,u),v=Oc(32,u);return m.regularType=m,m.freshType=v,v.regularType=m,v.freshType=v,m}function Dfn(u){let m=fa(u);if(!m.declaredType){let v=Rfn($m(u));m.declaredType||(m.declaredType=v)}return m.declaredType}function R5(u){let m=fa(u);return m.declaredType||(m.declaredType=Yy(u))}function LOs(u){let m=fa(u);return m.declaredType||(m.declaredType=Fp(YC(u)))}function Fp(u){return kfn(u)||nn}function kfn(u){if(u.flags&96)return wv(u);if(u.flags&524288)return Tfn(u);if(u.flags&262144)return R5(u);if(u.flags&384)return Rfn(u);if(u.flags&8)return Dfn(u);if(u.flags&2097152)return LOs(u)}function IWe(u){switch(u.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 202:return!0;case 189:return IWe(u.elementType);case 184:return!u.typeArguments||u.typeArguments.every(IWe)}return!1}function VOs(u){let m=n3(u);return!m||IWe(m)}function xfn(u){let m=kh(u);return m?IWe(m):!WT(u)}function POs(u){let m=xb(u),v=ZD(u);return(u.kind===177||!!m&&IWe(m))&&u.parameters.every(xfn)&&v.every(VOs)}function WOs(u){if(u.declarations&&u.declarations.length===1){let m=u.declarations[0];if(m)switch(m.kind){case 173:case 172:return xfn(m);case 175:case 174:case 177:case 178:case 179:return POs(m)}}return!1}function Gfn(u,m,v){let D=qu();for(let P of u)D.set(P.escapedName,v&&WOs(P)?P:SUt(P,m));return D}function Ffn(u,m){for(let v of m){if(Zfn(v))continue;let D=u.get(v.escapedName);(!D||D.valueDeclaration&&fo(D.valueDeclaration)&&!jx(D)&&!oZe(D.valueDeclaration))&&(u.set(v.escapedName,v),u.set(v.escapedName,v))}}function Zfn(u){return!!u.valueDeclaration&&pC(u.valueDeclaration)&&cg(u.valueDeclaration)}function BJt(u){if(!u.declaredProperties){let m=u.symbol,v=pk(m);u.declaredProperties=Qy(v),u.declaredCallSignatures=E,u.declaredConstructSignatures=E,u.declaredIndexInfos=E,u.declaredCallSignatures=PQ(v.get("__call")),u.declaredConstructSignatures=PQ(v.get("__new")),u.declaredIndexInfos=fIn(m)}return u}function wJt(u){return Vfn(u)&&g2(Un(u)?zw(u):RI(u.argumentExpression))}function Lfn(u){return Vfn(u)&&OOs(Un(u)?zw(u):RI(u.argumentExpression))}function Vfn(u){if(!Un(u)&&!Yg(u))return!1;let m=Un(u)?u.expression:u.argumentExpression;return Od(m)}function OOs(u){return dg(u,mc)}function f2e(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)===64}function Tse(u){let m=Il(u);return!!m&&wJt(m)}function Pfn(u){let m=Il(u);return!!m&&Lfn(m)}function Rse(u){return!XD(u)||Tse(u)}function Wfn(u){return nAe(u)&&!wJt(u)}function MOs(u,m,v){pe.assert(!!(iI(u)&4096),"Expected a late-bound symbol."),u.flags|=v,fa(m.symbol).lateSymbol=u,u.declarations?m.symbol.isReplaceableByMethod||u.declarations.push(m):u.declarations=[m],v&111551&&S7(u,m)}function Ofn(u,m,v,D){pe.assert(!!D.symbol,"The member is expected to have a symbol.");let P=sa(D);if(!P.resolvedSymbol){P.resolvedSymbol=D.symbol;let Y=fo(D)?D.left:D.name,oe=Yg(Y)?RI(Y.argumentExpression):zw(Y);if(g2(oe)){let Be=A2(oe),Oe=D.symbol.flags,He=v.get(Be);He||v.set(Be,He=gA(0,Be,4096));let qe=m&&m.get(Be);if(!(u.flags&32)&&He.flags&JU(Oe)){let Vt=qe?Nn(qe.declarations,He.declarations):He.declarations,kt=!(oe.flags&8192)&&Bc(Be)||Wd(Y);F(Vt,vr=>Sr(Il(vr)||vr,Z.Property_0_was_also_declared_here,kt)),Sr(Y||D,Z.Duplicate_property_0,kt),He=gA(0,Be,4096)}return He.links.nameType=oe,MOs(He,D,Oe),He.parent?pe.assert(He.parent===u,"Existing symbol parent should match new one"):He.parent=u,P.resolvedSymbol=He}}return P.resolvedSymbol}function HOs(u,m,v,D){let P=v.get("__index");if(!P){let Y=m?.get("__index");Y?(P=BQ(Y),P.links.checkFlags|=4096):P=gA(0,"__index",4096),v.set("__index",P)}P.declarations?D.symbol.isReplaceableByMethod||P.declarations.push(D):P.declarations=[D]}function TJt(u,m){let v=fa(u);if(!v[m]){let D=m==="resolvedExports",P=D?u.flags&1536?sK(u).exports:u.exports:u.members;v[m]=P||Ee;let Y=qu();for(let Oe of u.declarations||E){let He=Lge(Oe);if(He)for(let qe of He)D===zh(qe)&&(Tse(qe)?Ofn(u,P,Y,qe):Pfn(qe)&&HOs(u,P,Y,qe))}let oe=S5(u).assignmentDeclarationMembers;if(oe){let Oe=Do(oe.values());for(let He of Oe){let qe=nI(He),Vt=qe===3||fo(He)&&Jot(He,qe)||qe===9||qe===6;D===!Vt&&Tse(He)&&Ofn(u,P,Y,He)}}let Be=A9(P,Y);if(u.flags&33554432&&v.cjsExportMerged&&u.declarations)for(let Oe of u.declarations){let He=fa(Oe.symbol)[m];if(!Be){Be=He;continue}He&&He.forEach((qe,Vt)=>{let kt=Be.get(Vt);if(!kt)Be.set(Vt,qe);else{if(kt===qe)return;Be.set(Vt,Ev(kt,qe))}})}v[m]=Be||Ee}return v[m]}function pk(u){return u.flags&6256?TJt(u,"resolvedMembers"):u.members||Ee}function Xst(u){if(u.flags&106500&&u.escapedName==="__computed"){let m=fa(u);if(!m.lateSymbol&&jt(u.declarations,Tse)){let v=jA(u.parent);jt(u.declarations,zh)?B1(v):pk(v)}return m.lateSymbol||(m.lateSymbol=u)}return u}function T1(u,m,v){if(la(u)&4){let D=u.target,P=lf(u);return B(D.typeParameters)===B(P)?iZ(D,Nn(P,[m||D.thisType])):u}else if(u.flags&2097152){let D=Tr(u.types,P=>T1(P,m,v));return D!==u.types?Kg(D):u}return v?fy(u):u}function Mfn(u,m,v,D){let P,Y,oe,Be,Oe;gc(v,D,0,v.length)?(Y=m.symbol?pk(m.symbol):qu(m.declaredProperties),oe=m.declaredCallSignatures,Be=m.declaredConstructSignatures,Oe=m.declaredIndexInfos):(P=N1(v,D),Y=Gfn(m.declaredProperties,P,v.length===1),oe=dot(m.declaredCallSignatures,P),Be=dot(m.declaredConstructSignatures,P),Oe=Chn(m.declaredIndexInfos,P));let He=Kw(m);if(He.length){if(m.symbol&&Y===pk(m.symbol)){let Vt=qu(m.declaredProperties),kt=zst(m.symbol);kt&&Vt.set("__index",kt),Y=Vt}QB(u,Y,oe,Be,Oe);let qe=li(D);for(let Vt of He){let kt=qe?T1(_l(Vt,P),qe):Vt;Ffn(Y,Gd(kt)),oe=Nn(oe,tg(kt,0)),Be=Nn(Be,tg(kt,1));let vr=kt!==hr?A0(kt):[rl];Oe=Nn(Oe,Me(vr,dn=>!Lpe(Oe,dn.keyType)))}}QB(u,Y,oe,Be,Oe)}function YOs(u){Mfn(u,BJt(u),E,E)}function QOs(u){let m=BJt(u.target),v=Nn(m.typeParameters,[m.thisType]),D=lf(u),P=D.length===v.length?D:Nn(D,[u]);Mfn(u,m,v,P)}function PN(u,m,v,D,P,Y,oe,Be){let Oe=new R(ks,Be);return Oe.declaration=u,Oe.typeParameters=m,Oe.parameters=D,Oe.thisParameter=v,Oe.resolvedReturnType=P,Oe.resolvedTypePredicate=Y,Oe.minArgumentCount=oe,Oe.resolvedMinArgumentCount=void 0,Oe.target=void 0,Oe.mapper=void 0,Oe.compositeSignatures=void 0,Oe.compositeKind=void 0,Oe}function I2e(u){let m=PN(u.declaration,u.typeParameters,u.thisParameter,u.parameters,void 0,void 0,u.minArgumentCount,u.flags&167);return m.target=u.target,m.mapper=u.mapper,m.compositeSignatures=u.compositeSignatures,m.compositeKind=u.compositeKind,m}function Hfn(u,m){let v=I2e(u);return v.compositeSignatures=m,v.compositeKind=1048576,v.target=void 0,v.mapper=void 0,v}function XOs(u,m){if((u.flags&24)===m)return u;u.optionalCallSignatureCache||(u.optionalCallSignatureCache={});let v=m===8?"inner":"outer";return u.optionalCallSignatureCache[v]||(u.optionalCallSignatureCache[v]=JOs(u,m))}function JOs(u,m){pe.assert(m===8||m===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let v=I2e(u);return v.flags|=m,v}function Yfn(u,m){if(D0(u)){let P=u.parameters.length-1,Y=u.parameters[P],oe=Io(Y);if(yA(oe))return[v(oe,P,Y)];if(!m&&oe.flags&1048576&&ue(oe.types,yA))return At(oe.types,Be=>v(Be,P,Y))}return[u.parameters];function v(P,Y,oe){let Be=lf(P),Oe=D(P,oe),He=At(Be,(qe,Vt)=>{let kt=Oe&&Oe[Vt]?Oe[Vt]:zpe(u,Y+Vt,P),vr=P.target.elementFlags[Vt],dn=vr&12?32768:vr&2?16384:0,vn=gA(1,kt,dn);return vn.links.type=vr&4?d0(qe):qe,vn});return Nn(u.parameters.slice(0,Y),He)}function D(P,Y){let oe=At(P.target.labeledElementDeclarations,(Be,Oe)=>n8t(Be,Oe,P.target.elementFlags[Oe],Y));if(oe){let Be=[],Oe=new Set;for(let qe=0;qe=Vt&&Oe<=kt){let vr=kt?jst(qe,v9(Be,qe.typeParameters,Vt,oe)):I2e(qe);vr.typeParameters=u.localTypeParameters,vr.resolvedReturnType=u,vr.flags=P?vr.flags|4:vr.flags&-5,He.push(vr)}}return He}function Jst(u,m,v,D,P){for(let Y of u)if(WWe(Y,m,v,D,P,v?yMs:R2e))return Y}function KOs(u,m,v){if(m.typeParameters){if(v>0)return;for(let P=1;P1&&(v=v===void 0?D:-1);for(let P of u[D])if(!m||!Jst(m,P,!1,!1,!0)){let Y=KOs(u,P,D);if(Y){let oe=P;if(Y.length>1){let Be=P.thisParameter,Oe=F(Y,He=>He.thisParameter);if(Oe){let He=Kg(Xt(Y,qe=>qe.thisParameter&&Io(qe.thisParameter)));Be=SK(Oe,He)}oe=Hfn(P,Y),oe.thisParameter=Be}(m||(m=[])).push(oe)}}}if(!B(m)&&v!==-1){let D=u[v!==void 0?v:0],P=D.slice();for(let Y of u)if(Y!==D){let oe=Y[0];if(pe.assert(!!oe,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),P=oe.typeParameters&&jt(P,Be=>!!Be.typeParameters&&!Qfn(oe.typeParameters,Be.typeParameters))?void 0:At(P,Be=>qOs(Be,oe)),!P)break}m=P}return m||E}function Qfn(u,m){if(B(u)!==B(m))return!1;if(!u||!m)return!0;let v=N1(m,u);for(let D=0;D=P?u:m,oe=Y===u?m:u,Be=Y===u?D:P,Oe=Ck(u)||Ck(m),He=Oe&&!Ck(Y),qe=new Array(Be+(He?1:0));for(let Vt=0;Vt=_R(Y)&&Vt>=_R(oe),Yi=Vt>=D?void 0:zpe(u,Vt),js=Vt>=P?void 0:zpe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=gA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?d0(dn):dn,qe[Vt]=Ji}if(He){let Vt=gA(1,"args",32768);Vt.links.type=d0(CR(oe,Be)),oe===m&&(Vt.links.type=_l(Vt.links.type,v)),qe[Be]=Vt}return qe}function qOs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=N1(m.typeParameters,u.typeParameters));let P=(u.flags|m.flags)&166,Y=u.declaration,oe=zOs(u,m,D),Be=li(oe);Be&&iI(Be)&32768&&(P|=1);let Oe=jOs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),qe=PN(Y,v,Oe,oe,void 0,void 0,He,P);return qe.compositeKind=1048576,qe.compositeSignatures=Nn(u.compositeKind!==2097152&&u.compositeSignatures||[u],[m]),D?qe.mapper=u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures?F5(u.mapper,D):D:u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures&&(qe.mapper=u.mapper),qe}function Xfn(u){let m=A0(u[0]);if(m){let v=[];for(let D of m){let P=D.keyType;ue(u,Y=>!!$x(Y,P))&&v.push(eG(P,Ha(At(u,Y=>D5(Y,P))),jt(u,Y=>$x(Y,P).isReadonly)))}return v}return E}function $Os(u){let m=RJt(At(u.types,P=>P===Js?[Za]:tg(P,0))),v=RJt(At(u.types,P=>tg(P,1))),D=Xfn(u.types);QB(u,Ee,m,v,D)}function hWe(u,m){return u?m?Kg([u,m]):u:m}function Jfn(u){let m=ct(u,D=>tg(D,1).length>0),v=At(u,I_);if(m>0&&m===ct(v,D=>D)){let D=v.indexOf(!0);v[D]=!1}return v}function e3s(u,m,v,D){let P=[];for(let Y=0;YBe);for(let Be=0;Be0&&(He=At(He,qe=>{let Vt=I2e(qe);return Vt.resolvedReturnType=e3s(ud(qe),P,Y,Be),Vt})),v=Ufn(v,He)}m=Ufn(m,tg(Oe,0)),D=Ul(A0(Oe),(He,qe)=>Kfn(He,qe,!1),D)}QB(u,Ee,m||E,v||E,D||E)}function Ufn(u,m){for(let v of m)(!u||ue(u,D=>!WWe(D,v,!1,!1,!1,R2e)))&&(u=Ft(u,v));return u}function Kfn(u,m,v){if(u)for(let D=0;D{var Oe;!(Be.flags&418)&&!(Be.flags&512&&((Oe=Be.declarations)!=null&&Oe.length)&&ue(Be.declarations,s_))&&oe.set(Be.escapedName,Be)}),v=oe}let P;if(QB(u,v,E,E,E),m.flags&32){let oe=wv(m),Be=nZ(oe);Be.flags&11272192?(v=qu(Iq(v)),Ffn(v,Gd(Be))):Be===hr&&(P=rl)}let Y=qst(v);if(Y?D=$st(Y,Do(v.values())):(P&&(D=Ft(D,P)),m.flags&384&&(Fp(m).flags&32||jt(u.properties,oe=>!!(Io(oe).flags&296)))&&(D=Ft(D,Uc))),QB(u,v,E,E,D||E),m.flags&8208&&(u.callSignatures=PQ(m)),m.flags&32){let oe=wv(m),Be=m.members?PQ(m.members.get("__constructor")):E;m.flags&16&&(Be=Or(Be.slice(),Xt(u.callSignatures,Oe=>YN(Oe.declaration)?PN(Oe.declaration,Oe.typeParameters,Oe.thisParameter,Oe.parameters,oe,void 0,Oe.minArgumentCount,Oe.flags&167):void 0))),Be.length||(Be=UOs(oe)),u.constructSignatures=Be}}function n3s(u,m,v){return _l(u,N1([m.indexType,m.objectType],[fR(0),hk([v])]))}function i3s(u){let m=_S(u.mappedType);if(!(m.flags&1048576||m.flags&2097152))return;let v=m.flags&1048576?m.origin:m;if(!v||!(v.flags&2097152))return;let D=Kg(v.types.filter(P=>P!==u.constraintType));return D!==Wi?D:void 0}function s3s(u){let m=$x(u.source,$r),v=fk(u.mappedType),D=!(v&1),P=v&4?0:16777216,Y=m?[eG($r,Got(m.type,u.mappedType,u.constraintType)||cn,D&&m.isReadonly)]:E,oe=qu(),Be=i3s(u);for(let Oe of Gd(u.source)){if(Be){let Vt=Bq(Oe,8576);if(!dg(Vt,Be))continue}let He=8192|(D&&yR(Oe)?8:0),qe=gA(4|Oe.flags&P,Oe.escapedName,He);if(qe.declarations=Oe.declarations,qe.links.nameType=fa(Oe).nameType,qe.links.propertyType=Io(Oe),u.constraintType.type.flags&8388608&&u.constraintType.type.objectType.flags&262144&&u.constraintType.type.indexType.flags&262144){let Vt=u.constraintType.type.objectType,kt=n3s(u.mappedType,u.constraintType.type,Vt);qe.links.mappedType=kt,qe.links.constraintType=ON(Vt)}else qe.links.mappedType=u.mappedType,qe.links.constraintType=u.constraintType;oe.set(Oe.escapedName,qe)}QB(u,oe,E,E,Y)}function mWe(u){if(u.flags&4194304){let m=fy(u.type);return hW(m)?YIn(m):ON(m)}if(u.flags&16777216){if(u.root.isDistributive){let m=u.checkType,v=mWe(m);if(v!==m)return BUt(u,yK(u.root.checkType,v,u.mapper),!1)}return u}if(u.flags&1048576)return Yf(u,mWe,!0);if(u.flags&2097152){let m=u.types;return m.length===2&&m[0].flags&76&&m[1]===bg?u:Kg(Tr(u.types,mWe))}return u}function NJt(u){return iI(u)&4096}function DJt(u,m,v,D){for(let P of Gd(u))D(Bq(P,m));if(u.flags&1)D($r);else for(let P of A0(u))(!v||P.keyType.flags&134217732)&&D(P.keyType)}function o3s(u){let m=qu(),v;QB(u,Ee,E,E,E);let D=jw(u),P=_S(u),Y=u.target||u,oe=E9(Y),Be=h2e(Y)!==2,Oe=qx(Y),He=fy(N5(u)),qe=fk(u);Nse(u)?DJt(He,8576,!1,kt):TK(mWe(P),kt),QB(u,m,E,E,v||E);function kt(dn){let vn=oe?_l(oe,B2e(u.mapper,D,dn)):dn;TK(vn,ii=>vr(dn,ii))}function vr(dn,vn){if(g2(vn)){let ii=A2(vn),Yi=m.get(ii);if(Yi)Yi.links.nameType=Ha([Yi.links.nameType,vn]),Yi.links.keyType=Ha([Yi.links.keyType,dn]);else{let js=g2(dn)?Gg(He,A2(dn)):void 0,Co=!!(qe&4||!(qe&8)&&js&&js.flags&16777216),Ji=!!(qe&1||!(qe&2)&&js&&yR(js)),Mi=ot&&!Co&&js&&js.flags&16777216,To=js?NJt(js):0,Ka=gA(4|(Co?16777216:0),ii,To|262144|(Ji?8:0)|(Mi?524288:0));Ka.links.mappedType=u,Ka.links.nameType=vn,Ka.links.keyType=dn,js&&(Ka.links.syntheticOrigin=js,Ka.declarations=Be?js.declarations:void 0),m.set(ii,Ka)}}else if(eot(vn)||vn.flags&33){let ii=vn.flags&5?$r:vn.flags&40?ri:vn,Yi=_l(Oe,B2e(u.mapper,D,dn)),js=m2e(He,vn),Co=!!(qe&1||!(qe&2)&&js?.isReadonly),Ji=eG(ii,Yi,Co);v=Kfn(v,Ji,!0)}}}function a3s(u){var m;if(!u.links.type){let v=u.links.mappedType;if(!VN(u,0))return v.containsError=!0,nn;let D=qx(v.target||v),P=B2e(v.mapper,jw(v),u.links.keyType),Y=_l(D,P),oe=ot&&u.flags&16777216&&!ah(Y,49152)?mW(Y,!0):u.links.checkFlags&524288?Rot(Y):Y;xr()||(Sr(ge,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,kl(u),no(v)),oe=nn),(m=u.links).type??(m.type=oe)}return u.links.type}function jw(u){return u.typeParameter||(u.typeParameter=R5(Uo(u.declaration.typeParameter)))}function _S(u){return u.constraintType||(u.constraintType=Xy(jw(u))||nn)}function E9(u){return u.declaration.nameType?u.nameType||(u.nameType=_l(nl(u.declaration.nameType),u.mapper)):void 0}function qx(u){return u.templateType||(u.templateType=u.declaration.type?_l(Z0(nl(u.declaration.type),!0,!!(fk(u)&4)),u.mapper):nn)}function jfn(u){return n3(u.declaration.typeParameter)}function Nse(u){let m=jfn(u);return m.kind===199&&m.operator===143}function N5(u){if(!u.modifiersType)if(Nse(u))u.modifiersType=_l(nl(jfn(u).type),u.mapper);else{let m=pUt(u.declaration),v=_S(m),D=v&&v.flags&262144?Xy(v):v;u.modifiersType=D&&D.flags&4194304?_l(D.type,u.mapper):cn}return u.modifiersType}function fk(u){let m=u.declaration;return(m.readonlyToken?m.readonlyToken.kind===41?2:1:0)|(m.questionToken?m.questionToken.kind===41?8:4:0)}function zfn(u){let m=fk(u);return m&8?-1:m&4?1:0}function Fpe(u){if(la(u)&32)return zfn(u)||Fpe(N5(u));if(u.flags&2097152){let m=Fpe(u.types[0]);return ue(u.types,(v,D)=>D===0||Fpe(v)===m)?m:0}return 0}function c3s(u){return!!(la(u)&32&&fk(u)&4)}function Yb(u){if(la(u)&32){let m=_S(u);if(_K(m))return!0;let v=E9(u);if(v&&_K(_l(v,HQ(jw(u),m))))return!0}return!1}function h2e(u){let m=E9(u);return m?dg(m,jw(u))?1:2:0}function pR(u){return u.members||(u.flags&524288?u.objectFlags&4?QOs(u):u.objectFlags&3?YOs(u):u.objectFlags&1024?s3s(u):u.objectFlags&16?r3s(u):u.objectFlags&32?o3s(u):pe.fail("Unhandled object type "+pe.formatObjectFlags(u.objectFlags)):u.flags&1048576?$Os(u):u.flags&2097152?t3s(u):pe.fail("Unhandled type "+pe.formatTypeFlags(u.flags))),u}function S9(u){return u.flags&524288?pR(u).properties:E}function LQ(u,m){if(u.flags&524288){let D=pR(u).members.get(m);if(D&&qi(D))return D}}function CWe(u){if(!u.resolvedProperties){let m=qu();for(let v of u.types){for(let D of Gd(v))if(!m.has(D.escapedName)){let P=yWe(u,D.escapedName,!!(u.flags&2097152));P&&m.set(D.escapedName,P)}if(u.flags&1048576&&A0(v).length===0)break}u.resolvedProperties=Qy(m)}return u.resolvedProperties}function Gd(u){return u=Zpe(u),u.flags&3145728?CWe(u):S9(u)}function l3s(u,m){u=Zpe(u),u.flags&3670016&&pR(u).members.forEach((v,D)=>{aW(v,D)&&m(v,D)})}function u3s(u,m){return m.properties.some(D=>{let P=D.name&&(eR(D.name)?TE(xw(D.name)):sZ(D.name)),Y=P&&g2(P)?A2(P):void 0,oe=Y===void 0?void 0:Pi(u,Y);return!!oe&&k2e(oe)&&!dg(Vq(D),oe)})}function g3s(u){let m=Ha(u);if(!(m.flags&1048576))return W8t(m);let v=qu();for(let D of u)for(let{escapedName:P}of W8t(D))if(!v.has(P)){let Y=iIn(m,P);Y&&v.set(P,Y)}return Do(v.values())}function dK(u){return u.flags&262144?Xy(u):u.flags&8388608?d3s(u):u.flags&16777216?eIn(u):L_(u)}function Xy(u){return _We(u)?Ppe(u):void 0}function A3s(u,m){let v=w2e(u);return!!v&&pK(v,m)}function pK(u,m=0){var v;return m<5&&!!(u&&(u.flags&262144&&jt((v=u.symbol)==null?void 0:v.declarations,D=>Ga(D,4096))||u.flags&3145728&&jt(u.types,D=>pK(D,m))||u.flags&8388608&&pK(u.objectType,m+1)||u.flags&16777216&&pK(eIn(u),m+1)||u.flags&33554432&&pK(u.baseType,m)||la(u)&32&&A3s(u,m)||hW(u)&&Se(WQ(u),(D,P)=>!!(u.target.elementFlags[P]&8)&&pK(D,m))>=0))}function d3s(u){return _We(u)?p3s(u):void 0}function kJt(u){let m=oZ(u,!1);return m!==u?m:dK(u)}function p3s(u){if(ZJt(u))return lot(u.objectType,u.indexType);let m=kJt(u.indexType);if(m&&m!==u.indexType){let D=pW(u.objectType,m,u.accessFlags);if(D)return D}let v=kJt(u.objectType);if(v&&v!==u.objectType)return pW(v,u.indexType,u.accessFlags)}function xJt(u){if(!u.resolvedDefaultConstraint){let m=$5s(u),v=IW(u);u.resolvedDefaultConstraint=Xo(m)?v:Xo(v)?m:Ha([m,v])}return u.resolvedDefaultConstraint}function qfn(u){if(u.resolvedConstraintOfDistributive!==void 0)return u.resolvedConstraintOfDistributive||void 0;if(u.root.isDistributive&&u.restrictiveInstantiation!==u){let m=oZ(u.checkType,!1),v=m===u.checkType?dK(m):m;if(v&&v!==u.checkType){let D=BUt(u,yK(u.root.checkType,v,u.mapper),!0);if(!(D.flags&131072))return u.resolvedConstraintOfDistributive=D,D}}u.resolvedConstraintOfDistributive=!1}function $fn(u){return qfn(u)||xJt(u)}function eIn(u){return _We(u)?$fn(u):void 0}function f3s(u,m){let v,D=!1;for(let P of u)if(P.flags&465829888){let Y=dK(P);for(;Y&&Y.flags&21233664;)Y=dK(Y);Y&&(v=Ft(v,Y),m&&(v=Ft(v,P)))}else(P.flags&469892092||mk(P))&&(D=!0);if(v&&(m||D)){if(D)for(let P of u)(P.flags&469892092||mk(P))&&(v=Ft(v,P));return LWe(Kg(v,2),!1)}}function L_(u){if(u.flags&464781312||hW(u)){let m=GJt(u);return m!==YI&&m!==Fh?m:void 0}return u.flags&4194304?mc:void 0}function WN(u){return L_(u)||u}function _We(u){return GJt(u)!==Fh}function GJt(u){if(u.resolvedBaseConstraint)return u.resolvedBaseConstraint;let m=[];return u.resolvedBaseConstraint=v(u);function v(Y){if(!Y.immediateBaseConstraint){if(!VN(Y,4))return Fh;let oe,Be=Eot(Y);if((m.length<10||m.length<50&&!k(m,Be))&&(m.push(Be),oe=P(oZ(Y,!1)),m.pop()),!xr()){if(Y.flags&262144){let Oe=tot(Y);if(Oe){let He=Sr(Oe,Z.Type_parameter_0_has_a_circular_constraint,no(Y));ge&&!EP(Oe,ge)&&!EP(ge,Oe)&&lg(He,mo(ge,Z.Circularity_originates_in_type_at_this_location))}}oe=Fh}Y.immediateBaseConstraint??(Y.immediateBaseConstraint=oe||YI)}return Y.immediateBaseConstraint}function D(Y){let oe=v(Y);return oe!==YI&&oe!==Fh?oe:void 0}function P(Y){if(Y.flags&262144){let oe=Ppe(Y);return Y.isThisType||!oe?oe:D(oe)}if(Y.flags&3145728){let oe=Y.types,Be=[],Oe=!1;for(let He of oe){let qe=D(He);qe?(qe!==He&&(Oe=!0),Be.push(qe)):Oe=!0}return Oe?Y.flags&1048576&&Be.length===oe.length?Ha(Be):Y.flags&2097152&&Be.length?Kg(Be):void 0:Y}if(Y.flags&4194304)return mc;if(Y.flags&134217728){let oe=Y.types,Be=Xt(oe,D);return Be.length===oe.length?hK(Y.texts,Be):$r}if(Y.flags&268435456){let oe=D(Y.type);return oe&&oe!==Y.type?wq(Y.symbol,oe):$r}if(Y.flags&8388608){if(ZJt(Y))return D(lot(Y.objectType,Y.indexType));let oe=D(Y.objectType),Be=D(Y.indexType),Oe=oe&&Be&&pW(oe,Be,Y.accessFlags);return Oe&&D(Oe)}if(Y.flags&16777216){let oe=$fn(Y);return oe&&D(oe)}if(Y.flags&33554432)return D(KJt(Y));if(hW(Y)){let oe=At(WQ(Y),(Be,Oe)=>{let He=Be.flags&262144&&Y.target.elementFlags[Oe]&8&&D(Be)||Be;return He!==Be&&RE(He,qe=>L5(qe)&&!hW(qe))?He:Be});return hk(oe,Y.target.elementFlags,Y.target.readonly,Y.target.labeledElementDeclarations)}return Y}}function I3s(u,m){if(u===m)return u.resolvedApparentType||(u.resolvedApparentType=T1(u,m,!0));let v=`I${QC(u)},${QC(m)}`;return Hy(v)??HB(v,T1(u,m,!0))}function FJt(u){if(u.default)u.default===WC&&(u.default=Fh);else if(u.target){let m=FJt(u.target);u.default=m?_l(m,u.mapper):YI}else{u.default=WC;let m=u.symbol&&F(u.symbol.declarations,D=>Ds(D)&&D.default),v=m?nl(m):YI;u.default===WC&&(u.default=v)}return u.default}function VQ(u){let m=FJt(u);return m!==YI&&m!==Fh?m:void 0}function h3s(u){return FJt(u)!==Fh}function tIn(u){return!!(u.symbol&&F(u.symbol.declarations,m=>Ds(m)&&m.default))}function rIn(u){return u.resolvedApparentType||(u.resolvedApparentType=m3s(u))}function m3s(u){let m=u.target??u,v=w2e(m);if(v&&!m.declaration.nameType){let D=N5(u),P=Yb(D)?rIn(D):L_(D);if(P&&RE(P,Y=>L5(Y)||nIn(Y)))return _l(m,yK(v,P,u.mapper))}return u}function nIn(u){return!!(u.flags&2097152)&&ue(u.types,L5)}function ZJt(u){let m;return!!(u.flags&8388608&&la(m=u.objectType)&32&&!Yb(m)&&_K(u.indexType)&&!(fk(m)&8)&&!m.declaration.nameType)}function fy(u){let m=u.flags&465829888?L_(u)||cn:u,v=la(m);return v&32?rIn(m):v&4&&m!==u?T1(m,u):m.flags&2097152?I3s(m,u):m.flags&402653316?hm:m.flags&296?af:m.flags&2112?n5s():m.flags&528?dI:m.flags&12288?xIn():m.flags&67108864?Xg:m.flags&4194304?mc:m.flags&2&&!ot?Xg:m}function Zpe(u){return JB(fy(JB(u)))}function iIn(u,m,v){var D,P,Y;let oe=0,Be,Oe,He,qe=u.flags&1048576,Vt,kt=4,vr=qe?0:8,dn=!1;for(let yl of u.types){let ka=fy(yl);if(!(uo(ka)||ka.flags&131072)){let Kc=Gg(ka,m,v),Vu=Kc?u2(Kc):0;if(Kc){if(Kc.flags&106500&&(Vt??(Vt=qe?0:16777216),qe?Vt|=Kc.flags&16777216:Vt&=Kc.flags),!Be)Be=Kc,oe=Kc.flags&98304||4;else if(Kc!==Be){if((Jse(Kc)||Kc)===(Jse(Be)||Be)&&LUt(Be,Kc,(Ll,Ef)=>Ll===Ef?-1:0)===-1)dn=!!Be.parent&&!!B(Ug(Be.parent));else{Oe||(Oe=new Map,Oe.set(kg(Be),Be));let Ll=kg(Kc);Oe.has(Ll)||Oe.set(Ll,Kc)}oe&98304&&(Kc.flags&98304)!==(oe&98304)&&(oe=oe&-98305|4)}qe&&yR(Kc)?vr|=8:!qe&&!yR(Kc)&&(vr&=-9),vr|=(Vu&6?0:256)|(Vu&4?512:0)|(Vu&2?1024:0)|(Vu&256?2048:0),xKt(Kc)||(kt=2)}else if(qe){let gd=!f2e(m)&&vq(ka,m);gd?(oe=oe&-98305|4,vr|=32|(gd.isReadonly?8:0),He=Ft(He,yA(ka)?Bot(ka)||Bt:gd.type)):R9(ka)&&!(la(ka)&2097152)?(vr|=32,He=Ft(He,Bt)):vr|=16}}}if(!Be||qe&&(Oe||vr&48)&&vr&1536&&!(Oe&&C3s(Oe.values())))return;if(!Oe&&!(vr&16)&&!He)if(dn){let yl=(D=Gs(Be,bw))==null?void 0:D.links,ka=SK(Be,yl?.type);return ka.parent=(Y=(P=Be.valueDeclaration)==null?void 0:P.symbol)==null?void 0:Y.parent,ka.links.containingType=u,ka.links.mapper=yl?.mapper,ka.links.writeType=b9(Be),ka}else return Be;let vn=Oe?Do(Oe.values()):[Be],ii,Yi,js,Co=[],Ji,Mi,To=!1;for(let yl of vn){Mi?yl.valueDeclaration&&yl.valueDeclaration!==Mi&&(To=!0):Mi=yl.valueDeclaration,ii=Or(ii,yl.declarations);let ka=Io(yl);Yi||(Yi=ka,js=fa(yl).nameType);let Kc=b9(yl);(Ji||Kc!==ka)&&(Ji=Ft(Ji||Co.slice(),Kc)),ka!==Yi&&(vr|=64),(k2e(ka)||mK(ka))&&(vr|=128),ka.flags&131072&&ka!==pp&&(vr|=131072),Co.push(ka)}Or(Co,He);let Ka=gA(oe|(Vt??0),m,kt|vr);return Ka.links.containingType=u,!To&&Mi&&(Ka.valueDeclaration=Mi,Mi.symbol.parent&&(Ka.parent=Mi.symbol.parent)),Ka.declarations=ii,Ka.links.nameType=js,Co.length>2?(Ka.links.checkFlags|=65536,Ka.links.deferralParent=u,Ka.links.deferralConstituents=Co,Ka.links.deferralWriteConstituents=Ji):(Ka.links.type=qe?Ha(Co):Kg(Co),Ji&&(Ka.links.writeType=qe?Ha(Ji):Kg(Ji))),Ka}function sIn(u,m,v){var D,P,Y;let oe=v?(D=u.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(m):(P=u.propertyCache)==null?void 0:P.get(m);return oe||(oe=iIn(u,m,v),oe&&((v?u.propertyCacheWithoutObjectFunctionPropertyAugment||(u.propertyCacheWithoutObjectFunctionPropertyAugment=qu()):u.propertyCache||(u.propertyCache=qu())).set(m,oe),v&&!(iI(oe)&48)&&!((Y=u.propertyCache)!=null&&Y.get(m))&&(u.propertyCache||(u.propertyCache=qu())).set(m,oe))),oe}function C3s(u){let m;for(let v of u){if(!v.declarations)return;if(!m){m=new Set(v.declarations);continue}if(m.forEach(D=>{k(v.declarations,D)||m.delete(D)}),m.size===0)return}return m}function yWe(u,m,v){let D=sIn(u,m,v);return D&&!(iI(D)&16)?D:void 0}function JB(u){return u.flags&1048576&&u.objectFlags&16777216?u.resolvedReducedType||(u.resolvedReducedType=_3s(u)):u.flags&2097152?(u.objectFlags&16777216||(u.objectFlags|=16777216|(jt(CWe(u),y3s)?33554432:0)),u.objectFlags&33554432?Wi:u):u}function _3s(u){let m=Tr(u.types,JB);if(m===u.types)return u;let v=Ha(m);return v.flags&1048576&&(v.resolvedReducedType=v),v}function y3s(u){return oIn(u)||aIn(u)}function oIn(u){return!(u.flags&16777216)&&(iI(u)&131264)===192&&!!(Io(u).flags&131072)}function aIn(u){return!u.valueDeclaration&&!!(iI(u)&1024)}function LJt(u){return!!(u.flags&1048576&&u.objectFlags&16777216&&jt(u.types,LJt)||u.flags&2097152&&b3s(u))}function b3s(u){let m=u.uniqueLiteralFilledInstantiation||(u.uniqueLiteralFilledInstantiation=_l(u,Dl));return JB(m)!==m}function VJt(u,m){if(m.flags&2097152&&la(m)&33554432){let v=de(CWe(m),oIn);if(v)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,no(m,void 0,536870912),kl(v));let D=de(CWe(m),aIn);if(D)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,no(m,void 0,536870912),kl(D))}return u}function Gg(u,m,v,D){var P,Y;if(u=Zpe(u),u.flags&524288){let oe=pR(u),Be=oe.members.get(m);if(Be&&!D&&((P=u.symbol)==null?void 0:P.flags)&512&&((Y=fa(u.symbol).typeOnlyExportStarMap)!=null&&Y.has(m)))return;if(Be&&qi(Be,D))return Be;if(v)return;let Oe=oe===$d?Js:oe.callSignatures.length?Hl:oe.constructSignatures.length?RA:void 0;if(Oe){let He=LQ(Oe,m);if(He)return He}return LQ(qn,m)}if(u.flags&2097152){let oe=yWe(u,m,!0);return oe||(v?void 0:yWe(u,m,v))}if(u.flags&1048576)return yWe(u,m,v)}function bWe(u,m){if(u.flags&3670016){let v=pR(u);return m===0?v.callSignatures:v.constructSignatures}return E}function tg(u,m){let v=bWe(Zpe(u),m);if(m===0&&!B(v)&&u.flags&1048576){if(u.arrayFallbackSignatures)return u.arrayFallbackSignatures;let D;if(RE(u,P=>{var Y;return!!((Y=P.symbol)!=null&&Y.parent)&&E3s(P.symbol.parent)&&(D?D===P.symbol.escapedName:(D=P.symbol.escapedName,!0))})){let P=Yf(u,oe=>w9((cIn(oe.symbol.parent)?uA:NA).typeParameters[0],oe.mapper)),Y=d0(P,kv(u,oe=>cIn(oe.symbol.parent)));return u.arrayFallbackSignatures=tg(Pi(Y,D),m)}u.arrayFallbackSignatures=v}return v}function E3s(u){return!u||!NA.symbol||!uA.symbol?!1:!!Et(u,NA.symbol)||!!Et(u,uA.symbol)}function cIn(u){return!u||!uA.symbol?!1:!!Et(u,uA.symbol)}function Lpe(u,m){return de(u,v=>v.keyType===m)}function PJt(u,m){let v,D,P;for(let Y of u)Y.keyType===$r?v=Y:Sq(m,Y.keyType)&&(D?(P||(P=[D])).push(Y):D=Y);return P?eG(cn,Kg(At(P,Y=>Y.type)),Ul(P,(Y,oe)=>Y&&oe.isReadonly,!0)):D||(v&&Sq(m,$r)?v:void 0)}function Sq(u,m){return dg(u,m)||m===$r&&dg(u,ri)||m===ri&&(u===_u||!!(u.flags&128)&&IN(u.value))}function WJt(u){return u.flags&3670016?pR(u).indexInfos:E}function A0(u){return WJt(Zpe(u))}function $x(u,m){return Lpe(A0(u),m)}function D5(u,m){var v;return(v=$x(u,m))==null?void 0:v.type}function OJt(u,m){return A0(u).filter(v=>Sq(m,v.keyType))}function m2e(u,m){return PJt(A0(u),m)}function vq(u,m){return m2e(u,f2e(m)?ci:TE(Bc(m)))}function lIn(u){var m;let v;for(let D of ZD(u))v=ps(v,R5(D.symbol));return v?.length?v:ih(u)?(m=Vpe(u))==null?void 0:m.typeParameters:void 0}function MJt(u){let m=[];return u.forEach((v,D)=>{B5(D)||m.push(v)}),m}function uIn(u,m){if(Xr(u))return;let v=f_(Gr,'"'+u+'"',512);return v&&m?jA(v):v}function Ust(u){return VY(u)||zne(u)||Si(u)&&YAe(u)}function C2e(u){if(Ust(u))return!0;if(!Si(u))return!1;if(u.initializer){let v=yS(u.parent),D=u.parent.parameters.indexOf(u);return pe.assert(D>=0),D>=_R(v,3)}let m=ZL(u.parent);return m?!u.type&&!u.dotDotDotToken&&u.parent.parameters.indexOf(u)>=lat(m).length:!1}function S3s(u){return pi(u)&&!Nw(u)&&u.questionToken}function _2e(u,m,v,D){return{kind:u,parameterName:m,parameterIndex:v,type:D}}function Ik(u){let m=0;if(u)for(let v=0;v=v&&Y<=P){let oe=u?u.slice():[];for(let Oe=Y;Oe!!eN(dn))&&!eN(u)&&!zot(u)&&(D|=32);for(let dn=He?1:0;dnOe.arguments.length&&!Yi||(P=v.length)}if((u.kind===178||u.kind===179)&&Rse(u)&&(!Be||!Y)){let dn=u.kind===178?179:178,vn=Cp(Uo(u),dn);vn&&(Y=Eq(vn))}oe&&oe.typeExpression&&(Y=SK(gA(1,"this"),nl(oe.typeExpression)));let Vt=qL(u)?WL(u):u,kt=Vt&&Tc(Vt)?wv(jA(Vt.parent.symbol)):void 0,vr=kt?kt.localTypeParameters:lIn(u);(Fre(u)||wo(u)&&v3s(u,v))&&(D|=1),($D(u)&&Ga(u,64)||Tc(u)&&Ga(u.parent,64))&&(D|=4),m.resolvedSignature=PN(u,vr,Y,v,void 0,void 0,P,D)}return m.resolvedSignature}function v3s(u,m){if(qL(u)||!HJt(u))return!1;let v=li(u.parameters),D=v?vL(v):Sx(u).filter(cS),P=X(D,oe=>oe.typeExpression&&e9e(oe.typeExpression.type)?oe.typeExpression.type:void 0),Y=gA(3,"args",32768);return P?Y.links.type=d0(nl(P.type)):(Y.links.checkFlags|=65536,Y.links.deferralParent=Wi,Y.links.deferralConstituents=[d_],Y.links.deferralWriteConstituents=[d_]),P&&m.pop(),m.push(Y),!0}function Vpe(u){if(!(wo(u)&&kd(u)))return;let m=ov(u);return m?.typeExpression&&kK(nl(m.typeExpression))}function B3s(u,m){let v=Vpe(u);if(!v)return;let D=u.parameters.indexOf(m);return m.dotDotDotToken?pOe(v,D):CR(v,D)}function w3s(u){let m=Vpe(u);return m&&ud(m)}function HJt(u){let m=sa(u);return m.containsArgumentsReference===void 0&&(m.flags&512?m.containsArgumentsReference=!0:m.containsArgumentsReference=v(u.body)),m.containsArgumentsReference;function v(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===st.escapedName&&cSe(D)===st;case 173:case 175:case 178:case 179:return D.name.kind===168&&v(D.name);case 212:case 213:return v(D.expression);case 304:return v(D.initializer);default:return!Zye(D)&&!ww(D)&&!!Lu(D,v)}}}function PQ(u){if(!u||!u.declarations)return E;let m=[];for(let v=0;v0&&D.body){let P=u.declarations[v-1];if(D.parent===P.parent&&D.kind===P.kind&&D.pos===P.end)continue}if(wo(D)&&D.jsDoc){let P=wye(D);if(B(P)){for(let Y of P){let oe=Y.typeExpression;oe.type===void 0&&!Tc(D)&&P5(oe,hr),m.push(yS(oe))}continue}}m.push(!RF(D)&&!a2(D)&&Vpe(D)||yS(D))}}return m}function gIn(u){let m=F0(u,u);if(m){let v=wE(m);if(v)return Io(v)}return hr}function k5(u){if(u.thisParameter)return Io(u.thisParameter)}function Tv(u){if(!u.resolvedTypePredicate){if(u.target){let m=Tv(u.target);u.resolvedTypePredicate=m?Ehn(m,u.mapper):ni}else if(u.compositeSignatures)u.resolvedTypePredicate=T5s(u.compositeSignatures,u.compositeKind)||ni;else{let m=u.declaration&&xb(u.declaration),v;if(!m){let D=Vpe(u.declaration);D&&u!==D&&(v=Tv(D))}if(m||v)u.resolvedTypePredicate=m&&bE(m)?T3s(m,u):v||ni;else if(u.declaration&&kd(u.declaration)&&(!u.resolvedReturnType||u.resolvedReturnType.flags&16)&&NE(u)>0){let{declaration:D}=u;u.resolvedTypePredicate=ni,u.resolvedTypePredicate=p4s(D)||ni}else u.resolvedTypePredicate=ni}pe.assert(!!u.resolvedTypePredicate)}return u.resolvedTypePredicate===ni?void 0:u.resolvedTypePredicate}function T3s(u,m){let v=u.parameterName,D=u.type&&nl(u.type);return v.kind===198?_2e(u.assertsModifier?2:0,void 0,void 0,D):_2e(u.assertsModifier?3:1,v.escapedText,Se(m.parameters,P=>P.escapedName===v.escapedText),D)}function AIn(u,m,v){return m!==2097152?Ha(u,v):Kg(u)}function ud(u){if(!u.resolvedReturnType){if(!VN(u,3))return nn;let m=u.target?_l(ud(u.target),u.mapper):u.compositeSignatures?_l(AIn(At(u.compositeSignatures,ud),u.compositeKind,2),u.mapper):Dse(u.declaration)||(sf(u.declaration.body)?hr:dat(u.declaration));if(u.flags&8?m=qhn(m):u.flags&16&&(m=mW(m)),!xr()){if(u.declaration){let v=xb(u.declaration);if(v)Sr(v,Z.Return_type_annotation_circularly_references_itself);else if(Rt){let D=u.declaration,P=Il(D);P?Sr(P,Z._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Wd(P)):Sr(D,Z.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}m=hr}u.resolvedReturnType??(u.resolvedReturnType=m)}return u.resolvedReturnType}function Dse(u){if(u.kind===177)return wv(jA(u.parent.symbol));let m=xb(u);if(qL(u)){let v=KJ(u);if(v&&Tc(v.parent)&&!m)return wv(jA(v.parent.parent.symbol))}if(PY(u))return nl(u.parameters[0].type);if(m)return nl(m);if(u.kind===178&&Rse(u)){let v=wo(u)&&nd(u);if(v)return v;let D=Cp(Uo(u),179),P=Dpe(D);if(P)return P}return w3s(u)}function Kst(u){return u.compositeSignatures&&jt(u.compositeSignatures,Kst)||!u.resolvedReturnType&&rt(u,3)>=0}function R3s(u){return dIn(u)||hr}function dIn(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]),v=yA(m)?Bot(m):m;return v&&D5(v,ri)}}function y2e(u,m,v,D){let P=YJt(u,v9(m,u.typeParameters,Ik(u.typeParameters),v));if(D){let Y=HCn(ud(P));if(Y){let oe=I2e(Y);oe.typeParameters=D;let Be=fK(oe);Be.mapper=P.mapper;let Oe=I2e(P);return Oe.resolvedReturnType=Be,Oe}}return P}function YJt(u,m){let v=u.instantiations||(u.instantiations=new Map),D=UB(m),P=v.get(D);return P||v.set(D,P=jst(u,m)),P}function jst(u,m){return bK(u,N3s(u,m),!0)}function pIn(u){return Tr(u.typeParameters,m=>m.mapper?_l(m,m.mapper):m)}function N3s(u,m){return N1(pIn(u),m)}function b2e(u){return u.typeParameters?u.erasedSignatureCache||(u.erasedSignatureCache=D3s(u)):u}function D3s(u){return bK(u,yhn(u.typeParameters),!0)}function k3s(u){return u.typeParameters?u.canonicalSignatureCache||(u.canonicalSignatureCache=x3s(u)):u}function x3s(u){return y2e(u,At(u.typeParameters,m=>m.target&&!Xy(m.target)?m.target:m),wo(u.declaration))}function G3s(u){let m=u.typeParameters;if(m){if(u.baseSignatureCache)return u.baseSignatureCache;let v=yhn(m),D=N1(m,At(m,Y=>Xy(Y)||cn)),P=At(m,Y=>_l(Y,D)||cn);for(let Y=0;Y{eot(vr)&&!Lpe(v,vr)&&v.push(eG(vr,Vt.type?nl(Vt.type):hr,Gb(Vt,8),Vt))})}}else if(Pfn(Vt)){let kt=fo(Vt)?Vt.left:Vt.name,vr=Yg(kt)?RI(kt.argumentExpression):zw(kt);if(Lpe(v,vr))continue;dg(vr,mc)&&(dg(vr,ri)?(D=!0,b3(Vt)||(P=!1)):dg(vr,ci)?(Y=!0,b3(Vt)||(oe=!1)):(Be=!0,b3(Vt)||(Oe=!1)),He.push(Vt.symbol))}let qe=Nn(He,Me(m,Vt=>Vt!==u));return Be&&!Lpe(v,$r)&&v.push(H2e(Oe,0,qe,$r)),D&&!Lpe(v,ri)&&v.push(H2e(P,0,qe,ri)),Y&&!Lpe(v,ci)&&v.push(H2e(oe,0,qe,ci)),v}return E}function eot(u){return!!(u.flags&4108)||mK(u)||!!(u.flags&2097152)&&!G5(u)&&jt(u.types,eot)}function tot(u){return Xt(Me(u.symbol&&u.symbol.declarations,Ds),n3)[0]}function IIn(u,m){var v;let D;if((v=u.symbol)!=null&&v.declarations){for(let P of u.symbol.declarations)if(P.parent.kind===196){let[Y=P.parent,oe]=Tye(P.parent.parent);if(oe.kind===184&&!m){let Be=oe,Oe=C8t(Be);if(Oe){let He=Be.typeArguments.indexOf(Y);if(He()=>dJs(Be,Oe,dn))),kt=_l(qe,Vt);kt!==u&&(D=Ft(D,kt))}}}}else if(oe.kind===170&&oe.dotDotDotToken||oe.kind===192||oe.kind===203&&oe.dotDotDotToken)D=Ft(D,d0(cn));else if(oe.kind===205)D=Ft(D,$r);else if(oe.kind===169&&oe.parent.kind===201)D=Ft(D,mc);else if(oe.kind===201&&oe.type&&QA(oe.type)===P.parent&&oe.parent.kind===195&&oe.parent.extendsType===oe&&oe.parent.checkType.kind===201&&oe.parent.checkType.type){let Be=oe.parent.checkType,Oe=nl(Be.type);D=Ft(D,_l(Oe,HQ(R5(Uo(Be.typeParameter)),Be.typeParameter.constraint?nl(Be.typeParameter.constraint):mc)))}}}return D&&Kg(D)}function Ppe(u){if(!u.constraint)if(u.target){let m=Xy(u.target);u.constraint=m?_l(m,u.mapper):YI}else{let m=tot(u);if(!m)u.constraint=IIn(u)||YI;else{let v=nl(m);v.flags&1&&!uo(v)&&(v=m.parent.parent.kind===201?mc:cn),u.constraint=v}}return u.constraint===YI?void 0:u.constraint}function hIn(u){let m=Cp(u.symbol,169),v=ZB(m.parent)?qge(m.parent):m.parent;return v&&mS(v)}function UB(u){let m="";if(u){let v=u.length,D=0;for(;D1&&(m+=":"+Y),D+=Y}}return m}function IK(u,m){return u?`@${kg(u)}`+(m?`:${UB(m)}`:""):""}function EWe(u,m){let v=0;for(let D of u)(m===void 0||!(D.flags&m))&&(v|=la(D));return v&458752}function kse(u,m){return jt(m)&&u===oi?cn:iZ(u,m)}function iZ(u,m){let v=UB(m),D=u.instantiations.get(v);return D||(D=Lh(4,u.symbol),u.instantiations.set(v,D),D.objectFlags|=m?EWe(m):0,D.target=u,D.resolvedTypeArguments=m),D}function mIn(u){let m=Oc(u.flags,u.symbol);return m.objectFlags=u.objectFlags,m.target=u.target,m.resolvedTypeArguments=u.resolvedTypeArguments,m}function QJt(u,m,v,D,P){if(!D){D=Tq(m);let oe=Zse(D);P=v?cZ(oe,v):oe}let Y=Lh(4,u.symbol);return Y.target=u,Y.node=m,Y.mapper=v,Y.aliasSymbol=D,Y.aliasTypeArguments=P,Y}function lf(u){var m,v;if(!u.resolvedTypeArguments){if(!VN(u,5))return Nn(u.target.outerTypeParameters,(m=u.target.localTypeParameters)==null?void 0:m.map(()=>nn))||E;let D=u.node,P=D?D.kind===184?Nn(u.target.outerTypeParameters,Cat(D,u.target.localTypeParameters)):D.kind===189?[nl(D.elementType)]:At(D.elements,nl):E;xr()?u.resolvedTypeArguments??(u.resolvedTypeArguments=u.mapper?cZ(P,u.mapper):P):(u.resolvedTypeArguments??(u.resolvedTypeArguments=Nn(u.target.outerTypeParameters,((v=u.target.localTypeParameters)==null?void 0:v.map(()=>nn))||E)),Sr(u.node||ge,u.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,u.target.symbol&&kl(u.target.symbol)))}return u.resolvedTypeArguments}function B9(u){return B(u.target.typeParameters)}function CIn(u,m){let v=Fp(jA(m)),D=v.localTypeParameters;if(D){let P=B(u.typeArguments),Y=Ik(D),oe=wo(u);if(!(!Rt&&oe)&&(PD.length)){let He=oe&&l_(u)&&!bz(u.parent),qe=Y===D.length?He?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:He?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Vt=no(v,void 0,2);if(Sr(u,qe,Vt,Y,D.length),!oe)return nn}if(u.kind===184&&MIn(u,B(u.typeArguments)!==D.length))return QJt(v,u,void 0);let Oe=Nn(v.outerTypeParameters,v9(SWe(u),D,Y,oe));return iZ(v,Oe)}return x5(u,m)?v:nn}function xse(u,m,v,D){let P=Fp(u);if(P===Mt){let He=Tet.get(u.escapedName);if(He!==void 0&&m&&m.length===1)return He===4?XJt(m[0]):wq(u,m[0])}let Y=fa(u),oe=Y.typeParameters,Be=UB(m)+IK(v,D),Oe=Y.instantiations.get(Be);return Oe||Y.instantiations.set(Be,Oe=Bhn(P,N1(oe,v9(m,oe,Ik(oe),wo(u.valueDeclaration))),v,D)),Oe}function F3s(u,m){if(iI(m)&1048576){let P=SWe(u),Y=IK(m,P),oe=Kr.get(Y);return oe||(oe=Vc(1,"error",void 0,`alias ${Y}`),oe.aliasSymbol=m,oe.aliasTypeArguments=P,Kr.set(Y,oe)),oe}let v=Fp(m),D=fa(m).typeParameters;if(D){let P=B(u.typeArguments),Y=Ik(D);if(PD.length)return Sr(u,Y===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,kl(m),Y,D.length),nn;let oe=Tq(u),Be=oe&&(_In(m)||!_In(oe))?oe:void 0,Oe;if(Be)Oe=Zse(Be);else if(s7(u)){let He=Wpe(u,2097152,!0);if(He&&He!==it){let qe=YC(He);qe&&qe.flags&524288&&(Be=qe,Oe=SWe(u)||(D?[]:void 0))}}return xse(m,SWe(u),Be,Oe)}return x5(u,m)?v:nn}function _In(u){var m;let v=(m=u.declarations)==null?void 0:m.find(Ane);return!!(v&&A1(v))}function Z3s(u){switch(u.kind){case 184:return u.typeName;case 234:let m=u.expression;if(Od(m))return m}}function yIn(u){return u.parent?`${yIn(u.parent)}.${u.escapedName}`:u.escapedName}function rot(u){let v=(u.kind===167?u.right:u.kind===212?u.name:u).escapedText;if(v){let D=u.kind===167?rot(u.left):u.kind===212?rot(u.expression):void 0,P=D?`${yIn(D)}.${v}`:v,Y=Fr.get(P);return Y||(Fr.set(P,Y=gA(524288,v,1048576)),Y.parent=D,Y.links.declaredType=En),Y}return it}function Wpe(u,m,v){let D=Z3s(u);if(!D)return it;let P=TI(D,m,v);return P&&P!==it?P:v?it:rot(D)}function not(u,m){if(m===it)return nn;if(m=gq(m)||m,m.flags&96)return CIn(u,m);if(m.flags&524288)return F3s(u,m);let v=kfn(m);if(v)return x5(u,m)?Iy(v):nn;if(m.flags&111551&&iot(u)){let D=L3s(u,m);return D||(Wpe(u,788968),Io(m))}return nn}function L3s(u,m){let v=sa(u);if(!v.resolvedJSDocType){let D=Io(m),P=D;if(m.valueDeclaration){let Y=u.kind===206&&u.qualifier;D.symbol&&D.symbol!==m&&Y&&(P=not(u,D.symbol))}v.resolvedJSDocType=P}return v.resolvedJSDocType}function XJt(u){return JJt(u)?bIn(u,cn):u}function JJt(u){return!!(u.flags&3145728&&jt(u.types,JJt)||u.flags&33554432&&!Gse(u)&&JJt(u.baseType)||u.flags&524288&&!mk(u)||u.flags&432275456&&!mK(u))}function Gse(u){return!!(u.flags&33554432&&u.constraint.flags&2)}function UJt(u,m){return m.flags&3||m===u||u.flags&1?u:bIn(u,m)}function bIn(u,m){let v=`${QC(u)}>${QC(m)}`,D=Tg.get(v);if(D)return D;let P=ic(33554432);return P.baseType=u,P.constraint=m,Tg.set(v,P),P}function KJt(u){return Gse(u)?u.baseType:Kg([u.constraint,u.baseType])}function EIn(u){return u.kind===190&&u.elements.length===1}function SIn(u,m,v){return EIn(m)&&EIn(v)?SIn(u,m.elements[0],v.elements[0]):aZ(nl(m))===aZ(u)?nl(v):void 0}function V3s(u,m){let v,D=!0;for(;m&&!Lc(m)&&m.kind!==321;){let P=m.parent;if(P.kind===170&&(D=!D),(D||u.flags&8650752)&&P.kind===195&&m===P.trueType){let Y=SIn(u,P.checkType,P.extendsType);Y&&(v=Ft(v,Y))}else if(u.flags&262144&&P.kind===201&&!P.nameType&&m===P.type){let Y=nl(P);if(jw(Y)===aZ(u)){let oe=w2e(Y);if(oe){let Be=Xy(oe);Be&&RE(Be,L5)&&(v=Ft(v,Ha([ri,_u])))}}}m=P}return v?UJt(u,Kg(v)):u}function iot(u){return!!(u.flags&16777216)&&(u.kind===184||u.kind===206)}function x5(u,m){return u.typeArguments?(Sr(u,Z.Type_0_is_not_generic,m?kl(m):u.typeName?Wd(u.typeName):Eet),!1):!0}function vIn(u){if(Ir(u.typeName)){let m=u.typeArguments;switch(u.typeName.escapedText){case"String":return x5(u),$r;case"Number":return x5(u),ri;case"BigInt":return x5(u),ao;case"Boolean":return x5(u),Mn;case"Void":return x5(u),es;case"Undefined":return x5(u),Bt;case"Null":return x5(u),Hn;case"Function":case"function":return x5(u),Js;case"array":return(!m||!m.length)&&!Rt?d_:void 0;case"promise":return(!m||!m.length)&&!Rt?IOe(hr):void 0;case"Object":if(m&&m.length===2){if(Kge(u)){let v=nl(m[0]),D=nl(m[1]),P=v===$r||v===ri?[eG(v,D,!1)]:E;return Hf(void 0,Ee,E,E,P)}return hr}return x5(u),Rt?void 0:hr}}}function P3s(u){let m=nl(u.type);return ot?HWe(m,65536):m}function sot(u){let m=sa(u);if(!m.resolvedType){if(s2(u)&&Ed(u.parent))return m.resolvedSymbol=it,m.resolvedType=RI(u.parent.expression);let v,D,P=788968;iot(u)&&(D=vIn(u),D||(v=Wpe(u,P,!0),v===it?v=Wpe(u,P|111551):Wpe(u,P),D=not(u,v))),D||(v=Wpe(u,P),D=not(u,v)),m.resolvedSymbol=v,m.resolvedType=D}return m.resolvedType}function SWe(u){return At(u.typeArguments,nl)}function BIn(u){let m=sa(u);if(!m.resolvedType){let v=u_n(u);m.resolvedType=Iy(D1(v))}return m.resolvedType}function wIn(u,m){function v(P){let Y=P.declarations;if(Y)for(let oe of Y)switch(oe.kind){case 264:case 265:case 267:return oe}}if(!u)return m?oi:Xg;let D=Fp(u);return D.flags&524288?B(D.typeParameters)!==m?(Sr(v(u),Z.Global_type_0_must_have_1_type_parameter_s,nf(u),m),m?oi:Xg):D:(Sr(v(u),Z.Global_type_0_must_be_a_class_or_interface_type,nf(u)),m?oi:Xg)}function jJt(u,m){return Fse(u,111551,m?Z.Cannot_find_global_value_0:void 0)}function zJt(u,m){return Fse(u,788968,m?Z.Cannot_find_global_type_0:void 0)}function oot(u,m,v){let D=Fse(u,788968,v?Z.Cannot_find_global_type_0:void 0);if(D&&(Fp(D),B(fa(D).typeParameters)!==m)){let P=D.declarations&&de(D.declarations,FB);Sr(P,Z.Global_type_0_must_have_1_type_parameter_s,nf(D),m);return}return D}function Fse(u,m,v){return An(void 0,u,m,v,!1,!1)}function JI(u,m,v){let D=zJt(u,v);return D||v?wIn(D,m):void 0}function TIn(u,m){let v;for(let D of u)v=Ft(v,JI(D,m,!1));return v??E}function W3s(){return Ox||(Ox=JI("TypedPropertyDescriptor",1,!0)||oi)}function O3s(){return Xl||(Xl=JI("TemplateStringsArray",0,!0)||Xg)}function RIn(){return eg||(eg=JI("ImportMeta",0,!0)||Xg)}function NIn(){if(!jl){let u=gA(0,"ImportMetaExpression"),m=RIn(),v=gA(4,"meta",8);v.parent=u,v.links.type=m;let D=qu([v]);u.members=D,jl=Hf(u,D,E,E,E)}return jl}function DIn(u){return Eu||(Eu=JI("ImportCallOptions",0,u))||Xg}function qJt(u){return Df||(Df=JI("ImportAttributes",0,u))||Xg}function kIn(u){return yv||(yv=jJt("Symbol",u))}function M3s(u){return ik||(ik=zJt("SymbolConstructor",u))}function xIn(){return Wx||(Wx=JI("Symbol",0,!1))||Xg}function vWe(u){return Pb||(Pb=JI("Promise",1,u))||oi}function GIn(u){return qm||(qm=JI("PromiseLike",1,u))||oi}function $Jt(u){return oR||(oR=jJt("Promise",u))}function H3s(u){return pS||(pS=JI("PromiseConstructorLike",0,u))||Xg}function BWe(u){return wa||(wa=JI("AsyncIterable",3,u))||oi}function Y3s(u){return pc||(pc=JI("AsyncIterator",3,u))||oi}function FIn(u){return ul||(ul=JI("AsyncIterableIterator",3,u))||oi}function Q3s(){return gr??(gr=TIn(["ReadableStreamAsyncIterator"],1))}function X3s(u){return Ln||(Ln=JI("AsyncIteratorObject",3,u))||oi}function J3s(u){return bs||(bs=JI("AsyncGenerator",3,u))||oi}function aot(u){return xN||(xN=JI("Iterable",3,u))||oi}function U3s(u){return at||(at=JI("Iterator",3,u))||oi}function ZIn(u){return en||(en=JI("IterableIterator",3,u))||oi}function eUt(){return _t?Bt:hr}function K3s(){return Fe??(Fe=TIn(["ArrayIterator","MapIterator","SetIterator","StringIterator"],1))}function j3s(u){return gi||(gi=JI("IteratorObject",3,u))||oi}function z3s(u){return _i||(_i=JI("Generator",3,u))||oi}function q3s(u){return ys||(ys=JI("IteratorYieldResult",1,u))||oi}function $3s(u){return eo||(eo=JI("IteratorReturnResult",1,u))||oi}function LIn(u){return Jg||(Jg=JI("Disposable",0,u))||Xg}function e5s(u){return MC||(MC=JI("AsyncDisposable",0,u))||Xg}function VIn(u,m=0){let v=Fse(u,788968,void 0);return v&&wIn(v,m)}function t5s(){return S1||(S1=oot("Extract",2,!0)||it),S1===it?void 0:S1}function r5s(){return fS||(fS=oot("Omit",2,!0)||it),fS===it?void 0:fS}function tUt(u){return bv||(bv=oot("Awaited",1,u)||(u?it:void 0)),bv===it?void 0:bv}function n5s(){return XF||(XF=JI("BigInt",0,!1))||Xg}function i5s(u){return sk??(sk=JI("ClassDecoratorContext",1,u))??oi}function s5s(u){return aR??(aR=JI("ClassMethodDecoratorContext",2,u))??oi}function o5s(u){return WB??(WB=JI("ClassGetterDecoratorContext",2,u))??oi}function a5s(u){return UP??(UP=JI("ClassSetterDecoratorContext",2,u))??oi}function c5s(u){return br??(br=JI("ClassAccessorDecoratorContext",2,u))??oi}function l5s(u){return sn??(sn=JI("ClassAccessorDecoratorTarget",2,u))??oi}function u5s(u){return ei??(ei=JI("ClassAccessorDecoratorResult",2,u))??oi}function g5s(u){return is??(is=JI("ClassFieldDecoratorContext",2,u))??oi}function A5s(){return o9||(o9=jJt("NaN",!1))}function d5s(){return My||(My=oot("Record",2,!0)||it),My===it?void 0:My}function Ope(u,m){return u!==oi?iZ(u,m):Xg}function PIn(u){return Ope(W3s(),[u])}function WIn(u){return Ope(aot(!0),[u,es,Bt])}function d0(u,m){return Ope(m?uA:NA,[u])}function rUt(u){switch(u.kind){case 191:return 2;case 192:return OIn(u);case 203:return u.questionToken?2:u.dotDotDotToken?OIn(u):1;default:return 1}}function OIn(u){return kWe(u.type)?4:8}function p5s(u){let m=h5s(u.parent);if(kWe(u))return m?uA:NA;let D=At(u.elements,rUt);return nUt(D,m,At(u.elements,f5s))}function f5s(u){return KT(u)||Si(u)?u:void 0}function MIn(u,m){return!!Tq(u)||HIn(u)&&(u.kind===189?dW(u.elementType):u.kind===190?jt(u.elements,dW):m||jt(u.typeArguments,dW))}function HIn(u){let m=u.parent;switch(m.kind){case 197:case 203:case 184:case 193:case 194:case 200:case 195:case 199:case 189:case 190:return HIn(m);case 266:return!0}return!1}function dW(u){switch(u.kind){case 184:return iot(u)||!!(Wpe(u,788968).flags&524288);case 187:return!0;case 199:return u.operator!==158&&dW(u.type);case 197:case 191:case 203:case 317:case 315:case 316:case 310:return dW(u.type);case 192:return u.type.kind!==189||dW(u.type.elementType);case 193:case 194:return jt(u.types,dW);case 200:return dW(u.objectType)||dW(u.indexType);case 195:return dW(u.checkType)||dW(u.extendsType)||dW(u.trueType)||dW(u.falseType)}return!1}function I5s(u){let m=sa(u);if(!m.resolvedType){let v=p5s(u);if(v===oi)m.resolvedType=Xg;else if(!(u.kind===190&&jt(u.elements,D=>!!(rUt(D)&8)))&&MIn(u))m.resolvedType=u.kind===190&&u.elements.length===0?v:QJt(v,u,void 0);else{let D=u.kind===189?[nl(u.elementType)]:At(u.elements,nl);m.resolvedType=iUt(v,D)}}return m.resolvedType}function h5s(u){return xB(u)&&u.operator===148}function hk(u,m,v=!1,D=[]){let P=nUt(m||At(u,Y=>1),v,D);return P===oi?Xg:u.length?iUt(P,u):P}function nUt(u,m,v){if(u.length===1&&u[0]&4)return m?uA:NA;let D=At(u,Y=>Y&1?"#":Y&2?"?":Y&4?".":"*").join()+(m?"R":"")+(jt(v,Y=>!!Y)?","+At(v,Y=>Y?rd(Y):"_").join(","):""),P=ba.get(D);return P||ba.set(D,P=m5s(u,m,v)),P}function m5s(u,m,v){let D=u.length,P=ct(u,Vt=>!!(Vt&9)),Y,oe=[],Be=0;if(D){Y=new Array(D);for(let Vt=0;Vt!!(u.elementFlags[ii]&8&&vn.flags&1179648));if(dn>=0)return TWe(At(m,(vn,ii)=>u.elementFlags[ii]&8?vn:cn))?Yf(m[dn],vn=>sUt(u,Yl(m,dn,vn))):nn}let oe=[],Be=[],Oe=[],He=-1,qe=-1,Vt=-1;for(let dn=0;dn=1e4)return Sr(ge,ww(ge)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),nn;F(Yi,(js,Co)=>{var Ji;return vr(js,vn.target.elementFlags[Co],(Ji=vn.target.labeledElementDeclarations)==null?void 0:Ji[Co])})}else vr(T9(vn)&&D5(vn,ri)||nn,4,(P=u.labeledElementDeclarations)==null?void 0:P[dn]);else vr(vn,ii,(Y=u.labeledElementDeclarations)==null?void 0:Y[dn])}for(let dn=0;dn=0&&qeBe[qe+vn]&8?R1(dn,ri):dn)),oe.splice(qe+1,Vt-qe),Be.splice(qe+1,Vt-qe),Oe.splice(qe+1,Vt-qe));let kt=nUt(Be,u.readonly,Oe);return kt===oi?Xg:Be.length?iZ(kt,oe):kt;function vr(dn,vn,ii){vn&1&&(He=Be.length),vn&4&&qe<0&&(qe=Be.length),vn&6&&(Vt=Be.length),oe.push(vn&2?Z0(dn,!0):dn),Be.push(vn),Oe.push(ii)}}function Mpe(u,m,v=0){let D=u.target,P=B9(u)-v;return m>D.fixedLength?sHs(u)||hk(E):hk(lf(u).slice(m,P),D.elementFlags.slice(m,P),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(m,P))}function YIn(u){return Ha(Ft(Ri(u.target.fixedLength,m=>TE(""+m)),ON(u.target.readonly?uA:NA)))}function C5s(u,m){let v=Se(u.elementFlags,D=>!(D&m));return v>=0?v:u.elementFlags.length}function E2e(u,m){return u.elementFlags.length-De(u.elementFlags,v=>!(v&m))-1}function oUt(u){return u.fixedLength+E2e(u,3)}function WQ(u){let m=lf(u),v=B9(u);return m.length===v?m:m.slice(0,v)}function _5s(u){return Z0(nl(u.type),!0)}function QC(u){return u.id}function tG(u,m){return Wc(u,m,QC,Zt)>=0}function wWe(u,m){let v=Wc(u,m,QC,Zt);return v<0?(u.splice(~v,0,m),!0):!1}function y5s(u,m,v){let D=v.flags;if(!(D&131072))if(m|=D&473694207,D&465829888&&(m|=33554432),D&2097152&&la(v)&67108864&&(m|=536870912),v===Ni&&(m|=8388608),uo(v)&&(m|=1073741824),!ot&&D&98304)la(v)&65536||(m|=4194304);else{let P=u.length,Y=P&&v.id>u[P-1].id?~P:Wc(u,v,QC,Zt);Y<0&&u.splice(~Y,0,v)}return m}function QIn(u,m,v){let D;for(let P of v)P!==D&&(m=P.flags&1048576?QIn(u,m|(w5s(P)?1048576:0),P.types):y5s(u,m,P),D=P);return m}function b5s(u,m){var v;if(u.length<2)return u;let D=UB(u),P=Cs.get(D);if(P)return P;let Y=m&&jt(u,He=>!!(He.flags&524288)&&!Yb(He)&&NUt(pR(He))),oe=u.length,Be=oe,Oe=0;for(;Be>0;){Be--;let He=u[Be];if(Y||He.flags&469499904){if(He.flags&262144&&WN(He).flags&1048576){MN(He,Ha(At(u,kt=>kt===He?Wi:kt)),bf)&&LA(u,Be);continue}let qe=He.flags&61603840?de(Gd(He),kt=>IR(Io(kt))):void 0,Vt=qe&&Iy(Io(qe));for(let kt of u)if(He!==kt){if(Oe===1e5&&Oe/(oe-Be)*oe>1e6){(v=ki)==null||v.instant(ki.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:u.map(dn=>dn.id)}),Sr(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Oe++,qe&&kt.flags&61603840){let vr=Pi(kt,qe.escapedName);if(vr&&IR(vr)&&Iy(vr)!==Vt)continue}if(MN(He,kt,bf)&&(!(la(vs(He))&1)||!(la(vs(kt))&1)||Z5(He,kt))){LA(u,Be);break}}}}return Cs.set(D,u),u}function E5s(u,m,v){let D=u.length;for(;D>0;){D--;let P=u[D],Y=P.flags;(Y&402653312&&m&4||Y&256&&m&8||Y&2048&&m&64||Y&8192&&m&4096||v&&Y&32768&&m&16384||MQ(P)&&tG(u,P.regularType))&&LA(u,D)}}function S5s(u){let m=Me(u,mK);if(m.length){let v=u.length;for(;v>0;){v--;let D=u[v];D.flags&128&&jt(m,P=>v5s(D,P))&&LA(u,v)}}}function v5s(u,m){return m.flags&134217728?Zot(u,m):Fot(u,m)}function B5s(u){let m=[];for(let v of u)if(v.flags&2097152&&la(v)&67108864){let D=v.types[0].flags&8650752?0:1;Qi(m,v.types[D])}for(let v of m){let D=[];for(let Y of u)if(Y.flags&2097152&&la(Y)&67108864){let oe=Y.types[0].flags&8650752?0:1;Y.types[oe]===v&&wWe(D,Y.types[1-oe])}let P=L_(v);if(RE(P,Y=>tG(D,Y))){let Y=u.length;for(;Y>0;){Y--;let oe=u[Y];if(oe.flags&2097152&&la(oe)&67108864){let Be=oe.types[0].flags&8650752?0:1;oe.types[Be]===v&&tG(D,oe.types[1-Be])&&LA(u,Y)}}wWe(u,v)}}}function w5s(u){return!!(u.flags&1048576&&(u.aliasSymbol||u.origin))}function XIn(u,m){for(let v of m)if(v.flags&1048576){let D=v.origin;v.aliasSymbol||D&&!(D.flags&1048576)?Qi(u,v):D&&D.flags&1048576&&XIn(u,D.types)}}function aUt(u,m){let v=zl(u);return v.types=m,v}function Ha(u,m=1,v,D,P){if(u.length===0)return Wi;if(u.length===1)return u[0];if(u.length===2&&!P&&(u[0].flags&1048576||u[1].flags&1048576)){let Y=m===0?"N":m===2?"S":"L",oe=u[0].id=2&&Y[0]===Bt&&Y[1]===fr&&LA(Y,1),(oe&402664352||oe&16384&&oe&32768)&&E5s(Y,oe,!!(m&2)),oe&128&&oe&402653184&&S5s(Y),oe&536870912&&B5s(Y),m===2&&(Y=b5s(Y,!!(oe&524288)),!Y))return nn;if(Y.length===0)return oe&65536?oe&4194304?Hn:Ot:oe&32768?oe&4194304?Bt:xe:Wi}if(!P&&oe&1048576){let Oe=[];XIn(Oe,u);let He=[];for(let Vt of Y)jt(Oe,kt=>tG(kt.types,Vt))||He.push(Vt);if(!v&&Oe.length===1&&He.length===0)return Oe[0];if(Ul(Oe,(Vt,kt)=>Vt+kt.types.length,0)+He.length===Y.length){for(let Vt of Oe)wWe(He,Vt);P=aUt(1048576,He)}}let Be=(oe&36323331?0:32768)|(oe&2097152?16777216:0);return lUt(Y,Be,v,D,P)}function T5s(u,m){let v,D=[];for(let Y of u){let oe=Tv(Y);if(oe){if(oe.kind!==0&&oe.kind!==1||v&&!cUt(v,oe))return;v=oe,D.push(oe.type)}else{let Be=m!==2097152?ud(Y):void 0;if(Be!==Bs&&Be!==Ys)return}}if(!v)return;let P=AIn(D,m);return _2e(v.kind,v.parameterName,v.parameterIndex,P)}function cUt(u,m){return u.kind===m.kind&&u.parameterIndex===m.parameterIndex}function lUt(u,m,v,D,P){if(u.length===0)return Wi;if(u.length===1)return u[0];let oe=(P?P.flags&1048576?`|${UB(P.types)}`:P.flags&2097152?`&${UB(P.types)}`:`#${P.type.id}|${UB(u)}`:UB(u))+IK(v,D),Be=Wo.get(oe);return Be||(Be=ic(1048576),Be.objectFlags=m|EWe(u,98304),Be.types=u,Be.origin=P,Be.aliasSymbol=v,Be.aliasTypeArguments=D,u.length===2&&u[0].flags&512&&u[1].flags&512&&(Be.flags|=16,Be.intrinsicName="boolean"),Wo.set(oe,Be)),Be}function R5s(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u);m.resolvedType=Ha(At(u.types,nl),1,v,Zse(v))}return m.resolvedType}function N5s(u,m,v){let D=v.flags;return D&2097152?UIn(u,m,v.types):(mk(v)?m&16777216||(m|=16777216,u.set(v.id.toString(),v)):(D&3?(v===Ni&&(m|=8388608),uo(v)&&(m|=1073741824)):(ot||!(D&98304))&&(v===fr&&(m|=262144,v=Bt),u.has(v.id.toString())||(v.flags&109472&&m&109472&&(m|=67108864),u.set(v.id.toString(),v))),m|=D&473694207),m)}function UIn(u,m,v){for(let D of v)m=N5s(u,m,Iy(D));return m}function D5s(u,m){let v=u.length;for(;v>0;){v--;let D=u[v];(D.flags&4&&m&402653312||D.flags&8&&m&256||D.flags&64&&m&2048||D.flags&4096&&m&8192||D.flags&16384&&m&32768||mk(D)&&m&470302716)&&LA(u,v)}}function k5s(u,m){for(let v of u)if(!tG(v.types,m)){if(m===fr)return tG(v.types,Bt);if(m===Bt)return tG(v.types,fr);let D=m.flags&128?$r:m.flags&288?ri:m.flags&2048?ao:m.flags&8192?ci:void 0;if(!D||!tG(v.types,D))return!1}return!0}function x5s(u){let m=u.length,v=Me(u,D=>!!(D.flags&128));for(;m>0;){m--;let D=u[m];if(D.flags&402653184){for(let P of v)if(YQ(P,D)){LA(u,m);break}else if(mK(D))return!0}}return!1}function KIn(u,m){for(let v=0;v!(D.flags&m))}function G5s(u){let m,v=Se(u,oe=>!!(la(oe)&32768));if(v<0)return!1;let D=v+1;for(;D!!(dn.flags&469893116)||mk(dn))){if(Hpe(vr,kt))return Vt;if(!(vr.flags&1048576&&kv(vr,dn=>Hpe(dn,kt)))&&!Hpe(kt,vr))return Wi;Be=67108864}}}let Oe=UB(oe)+(m&2?"*":IK(v,D)),He=yr.get(Oe);if(!He){if(Y&1048576)if(G5s(oe))He=Kg(oe,m,v,D);else if(ue(oe,qe=>!!(qe.flags&1048576&&qe.types[0].flags&32768))){let qe=jt(oe,G2e)?fr:Bt;KIn(oe,32768),He=Ha([Kg(oe,m),qe],1,v,D)}else if(ue(oe,qe=>!!(qe.flags&1048576&&(qe.types[0].flags&65536||qe.types[1].flags&65536))))KIn(oe,65536),He=Ha([Kg(oe,m),Hn],1,v,D);else if(oe.length>=3&&u.length>2){let qe=Math.floor(oe.length/2);He=Kg([Kg(oe.slice(0,qe),m),Kg(oe.slice(qe),m)],m,v,D)}else{if(!TWe(oe))return nn;let qe=Z5s(oe,m),Vt=jt(qe,kt=>!!(kt.flags&2097152))&&uUt(qe)>uUt(oe)?aUt(2097152,oe):void 0;He=Ha(qe,1,v,D,Vt)}else He=F5s(oe,Be,v,D);yr.set(Oe,He)}return He}function jIn(u){return Ul(u,(m,v)=>v.flags&1048576?m*v.types.length:v.flags&131072?0:m,1)}function TWe(u){var m;let v=jIn(u);return v>=1e5?((m=ki)==null||m.instant(ki.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:u.map(D=>D.id),size:v}),Sr(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function Z5s(u,m){let v=jIn(u),D=[];for(let P=0;P=0;Oe--)if(u[Oe].flags&1048576){let He=u[Oe].types,qe=He.length;Y[Oe]=He[oe%qe],oe=Math.floor(oe/qe)}let Be=Kg(Y,m);Be.flags&131072||D.push(Be)}return D}function zIn(u){return!(u.flags&3145728)||u.aliasSymbol?1:u.flags&1048576&&u.origin?zIn(u.origin):uUt(u.types)}function uUt(u){return Ul(u,(m,v)=>m+zIn(v),0)}function L5s(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u),D=At(u.types,nl),P=D.length===2?D.indexOf(bg):-1,Y=P>=0?D[1-P]:cn,oe=!!(Y.flags&76||Y.flags&134217728&&mK(Y));m.resolvedType=Kg(D,oe?1:0,v,Zse(v))}return m.resolvedType}function qIn(u,m){let v=ic(4194304);return v.type=u,v.indexFlags=m,v}function V5s(u){let m=zl(4194304);return m.type=u,m}function $In(u,m){return m&1?u.resolvedStringIndexType||(u.resolvedStringIndexType=qIn(u,1)):u.resolvedIndexType||(u.resolvedIndexType=qIn(u,0))}function ehn(u,m){let v=jw(u),D=_S(u),P=E9(u.target||u);if(!P&&!(m&2))return D;let Y=[];if(_K(D)){if(Nse(u))return $In(u,m);TK(D,Be)}else if(Nse(u)){let Oe=fy(N5(u));DJt(Oe,8576,!!(m&1),Be)}else TK(mWe(D),Be);let oe=m&2?nm(Ha(Y),Oe=>!(Oe.flags&5)):Ha(Y);if(oe.flags&1048576&&D.flags&1048576&&UB(oe.types)===UB(D.types))return D;return oe;function Be(Oe){let He=P?_l(P,B2e(u.mapper,v,Oe)):Oe;Y.push(He===$r?bi:He)}}function P5s(u){let m=jw(u);return v(E9(u)||m);function v(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===m:D.flags&137363456?ue(D.types,v):D.flags&8388608?v(D.objectType)&&v(D.indexType):D.flags&33554432?v(D.baseType)&&v(D.constraint):D.flags&268435456?v(D.type):!1}}function sZ(u){if(p(u))return Wi;if(mC(u))return Iy(Ol(u));if(Un(u))return Iy(zw(u));let m=_3(u);return m!==void 0?TE(Bc(m)):un(u)?Iy(Ol(u)):Wi}function Bq(u,m,v){if(v||!(u2(u)&6)){let D=fa(Xst(u)).nameType;if(!D){let P=Il(u.valueDeclaration);D=u.escapedName==="default"?TE("default"):P&&sZ(P)||(k7(u)?void 0:TE(nf(u)))}if(D&&D.flags&m)return D}return Wi}function thn(u,m){return!!(u.flags&m||u.flags&2097152&&jt(u.types,v=>thn(v,m)))}function W5s(u,m,v){let D=v&&(la(u)&7||u.aliasSymbol)?V5s(u):void 0,P=At(Gd(u),oe=>Bq(oe,m)),Y=At(A0(u),oe=>oe!==Uc&&thn(oe.keyType,m)?oe.keyType===$r&&m&8?bi:oe.keyType:Wi);return Ha(Nn(P,Y),1,void 0,void 0,D)}function gUt(u,m=0){return!!(u.flags&58982400||hW(u)||Yb(u)&&(!P5s(u)||h2e(u)===2)||u.flags&1048576&&!(m&4)&&LJt(u)||u.flags&2097152&&ah(u,465829888)&&jt(u.types,mk))}function ON(u,m=0){return u=JB(u),Gse(u)?XJt(ON(u.baseType,m)):gUt(u,m)?$In(u,m):u.flags&1048576?Kg(At(u.types,v=>ON(v,m))):u.flags&2097152?Ha(At(u.types,v=>ON(v,m))):la(u)&32?ehn(u,m):u===Ni?Ni:u.flags&2?Wi:u.flags&131073?mc:W5s(u,(m&2?128:402653316)|(m&1?0:12584),m===0)}function rhn(u){let m=t5s();return m?xse(m,[u,$r]):$r}function O5s(u){let m=rhn(ON(u));return m.flags&131072?$r:m}function M5s(u){let m=sa(u);if(!m.resolvedType)switch(u.operator){case 143:m.resolvedType=ON(nl(u.type));break;case 158:m.resolvedType=u.type.kind===155?_Ut(fne(u.parent)):nn;break;case 148:m.resolvedType=nl(u.type);break;default:pe.assertNever(u.operator)}return m.resolvedType}function H5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=hK([u.head.text,...At(u.templateSpans,v=>v.literal.text)],At(u.templateSpans,v=>nl(v.type)))),m.resolvedType}function hK(u,m){let v=Se(m,He=>!!(He.flags&1179648));if(v>=0)return TWe(m)?Yf(m[v],He=>hK(u,Yl(m,v,He))):nn;if(k(m,Ni))return Ni;let D=[],P=[],Y=u[0];if(!Oe(u,m))return $r;if(D.length===0)return TE(Y);if(P.push(Y),ue(P,He=>He==="")){if(ue(D,He=>!!(He.flags&4)))return $r;if(D.length===1&&mK(D[0]))return D[0]}let oe=`${UB(D)}|${At(P,He=>He.length).join(",")}|${P.join("")}`,Be=tl.get(oe);return Be||tl.set(oe,Be=Q5s(P,D)),Be;function Oe(He,qe){for(let Vt=0;Vtwq(u,v)):m.flags&128?TE(nhn(u,m.value)):m.flags&134217728?hK(...X5s(u,m.texts,m.types)):m.flags&268435456&&u===m.symbol?m:m.flags&268435461||_K(m)?ihn(u,m):RWe(m)?ihn(u,hK(["",""],[m])):m}function nhn(u,m){switch(Tet.get(u.escapedName)){case 0:return m.toUpperCase();case 1:return m.toLowerCase();case 2:return m.charAt(0).toUpperCase()+m.slice(1);case 3:return m.charAt(0).toLowerCase()+m.slice(1)}return m}function X5s(u,m,v){switch(Tet.get(u.escapedName)){case 0:return[m.map(D=>D.toUpperCase()),v.map(D=>wq(u,D))];case 1:return[m.map(D=>D.toLowerCase()),v.map(D=>wq(u,D))];case 2:return[m[0]===""?m:[m[0].charAt(0).toUpperCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[wq(u,v[0]),...v.slice(1)]:v];case 3:return[m[0]===""?m:[m[0].charAt(0).toLowerCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[wq(u,v[0]),...v.slice(1)]:v]}return[m,v]}function ihn(u,m){let v=`${kg(u)},${QC(m)}`,D=Qu.get(v);return D||Qu.set(v,D=J5s(u,m)),D}function J5s(u,m){let v=Oc(268435456,u);return v.type=m,v}function U5s(u,m,v,D,P){let Y=ic(8388608);return Y.objectType=u,Y.indexType=m,Y.accessFlags=v,Y.aliasSymbol=D,Y.aliasTypeArguments=P,Y}function S2e(u){if(Rt)return!1;if(la(u)&4096)return!0;if(u.flags&1048576)return ue(u.types,S2e);if(u.flags&2097152)return jt(u.types,S2e);if(u.flags&465829888){let m=GJt(u);return m!==u&&S2e(m)}return!1}function cot(u,m){return g2(u)?A2(u):m&&VI(m)?_3(m):void 0}function AUt(u,m){if(m.flags&8208){let v=ji(u.parent,D=>!_p(D))||u.parent;return hF(v)?av(v)&&Ir(u)&&Imn(v,u):ue(m.declarations,D=>!bu(D)||cR(D))}return!0}function shn(u,m,v,D,P,Y){let oe=P&&P.kind===213?P:void 0,Be=P&&p(P)?void 0:cot(v,P);if(Be!==void 0){if(Y&256)return W5(m,Be)||hr;let He=Gg(m,Be);if(He){if(Y&64&&P&&He.declarations&&dy(He)&&AUt(P,He)){let Vt=oe?.argumentExpression??(Iv(P)?P.indexType:P);YB(Vt,He.declarations,Be)}if(oe){if(lOe(He,oe,LCn(oe.expression,m.symbol)),v_n(oe,He,QD(oe))){Sr(oe.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,kl(He));return}if(Y&8&&(sa(P).resolvedSymbol=He),RCn(oe,He))return Sn}let qe=Y&4?b9(He):Io(He);return oe&&QD(oe)!==1?dZ(oe,qe):P&&Iv(P)&&G2e(qe)?Ha([qe,Bt]):qe}if(RE(m,yA)&&IN(Be)){let qe=+Be;if(P&&RE(m,Vt=>!(Vt.target.combinedFlags&12))&&!(Y&16)){let Vt=dUt(P);if(yA(m)){if(qe<0)return Sr(Vt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),Bt;Sr(Vt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,no(m),B9(m),Bc(Be))}else Sr(Vt,Z.Property_0_does_not_exist_on_type_1,Bc(Be),no(m))}if(qe>=0)return Oe($x(m,ri)),Khn(m,qe,Y&1?fr:void 0)}}if(!(v.flags&98304)&&V_(v,402665900)){if(m.flags&131073)return m;let He=m2e(m,v)||$x(m,$r);if(He){if(Y&2&&He.keyType!==ri){oe&&(Y&4?Sr(oe,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,no(u)):Sr(oe,Z.Type_0_cannot_be_used_to_index_type_1,no(v),no(u)));return}if(P&&He.keyType===$r&&!V_(v,12)){let qe=dUt(P);return Sr(qe,Z.Type_0_cannot_be_used_as_an_index_type,no(v)),Y&1?Ha([He.type,fr]):He.type}return Oe(He),Y&1&&!(m.symbol&&m.symbol.flags&384&&v.symbol&&v.flags&1024&&$m(v.symbol)===m.symbol)?Ha([He.type,fr]):He.type}if(v.flags&131072)return Wi;if(S2e(m))return hr;if(oe&&!Iat(m)){if(R9(m)){if(Rt&&v.flags&384)return PA.add(mo(oe,Z.Property_0_does_not_exist_on_type_1,v.value,no(m))),Bt;if(v.flags&12){let qe=At(m.properties,Vt=>Io(Vt));return Ha(Ft(qe,Bt))}}if(m.symbol===pr&&Be!==void 0&&pr.exports.has(Be)&&pr.exports.get(Be).flags&418)Sr(oe,Z.Property_0_does_not_exist_on_type_1,Bc(Be),no(m));else if(Rt&&!(Y&128))if(Be!==void 0&&kCn(Be,m)){let qe=no(m);Sr(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Be,qe,qe+"["+xp(oe.argumentExpression)+"]")}else if(D5(m,ri))Sr(oe.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let qe;if(Be!==void 0&&(qe=FCn(Be,m)))qe!==void 0&&Sr(oe.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Be,no(m),qe);else{let Vt=tXs(m,oe,v);if(Vt!==void 0)Sr(oe,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,no(m),Vt);else{let kt;if(v.flags&1024)kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+no(v)+"]",no(m));else if(v.flags&8192){let vr=f9(v.symbol,oe);kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+vr+"]",no(m))}else v.flags&128||v.flags&256?kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,v.value,no(m)):v.flags&12&&(kt=wu(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,no(v),no(m)));kt=wu(kt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,no(D),no(m)),PA.add(Bw(ms(oe),oe,kt))}}}return}}if(Y&16&&R9(m))return Bt;if(S2e(m))return hr;if(P){let He=dUt(P);if(He.kind!==10&&v.flags&384)Sr(He,Z.Property_0_does_not_exist_on_type_1,""+v.value,no(m));else if(v.flags&12)Sr(He,Z.Type_0_has_no_matching_index_signature_for_type_1,no(m),no(v));else{let qe=He.kind===10?"bigint":no(v);Sr(He,Z.Type_0_cannot_be_used_as_an_index_type,qe)}}if(Xo(v))return v;return;function Oe(He){He&&He.isReadonly&&oe&&(bF(oe)||Rye(oe))&&Sr(oe,Z.Index_signature_in_type_0_only_permits_reading,no(m))}}function dUt(u){return u.kind===213?u.argumentExpression:u.kind===200?u.indexType:u.kind===168?u.expression:u}function RWe(u){if(u.flags&2097152){let m=!1;for(let v of u.types)if(v.flags&101248||RWe(v))m=!0;else if(!(v.flags&524288))return!1;return m}return!!(u.flags&77)||mK(u)}function mK(u){return!!(u.flags&134217728)&&ue(u.types,RWe)||!!(u.flags&268435456)&&RWe(u.type)}function ohn(u){return!!(u.flags&402653184)&&!mK(u)}function G5(u){return!!v2e(u)}function CK(u){return!!(v2e(u)&4194304)}function _K(u){return!!(v2e(u)&8388608)}function v2e(u){return u.flags&3145728?(u.objectFlags&2097152||(u.objectFlags|=2097152|Ul(u.types,(m,v)=>m|v2e(v),0)),u.objectFlags&12582912):u.flags&33554432?(u.objectFlags&2097152||(u.objectFlags|=2097152|v2e(u.baseType)|v2e(u.constraint)),u.objectFlags&12582912):(u.flags&58982400||Yb(u)||hW(u)?4194304:0)|(u.flags&63176704||ohn(u)?8388608:0)}function oZ(u,m){return u.flags&8388608?j5s(u,m):u.flags&16777216?z5s(u,m):u}function ahn(u,m,v){if(u.flags&1048576||u.flags&2097152&&!gUt(u)){let D=At(u.types,P=>oZ(R1(P,m),v));return u.flags&2097152||v?Kg(D):Ha(D)}}function K5s(u,m,v){if(m.flags&1048576){let D=At(m.types,P=>oZ(R1(u,P),v));return v?Kg(D):Ha(D)}}function j5s(u,m){let v=m?"simplifiedForWriting":"simplifiedForReading";if(u[v])return u[v]===Fh?u:u[v];u[v]=Fh;let D=oZ(u.objectType,m),P=oZ(u.indexType,m),Y=K5s(D,P,m);if(Y)return u[v]=Y;if(!(P.flags&465829888)){let oe=ahn(D,P,m);if(oe)return u[v]=oe}if(hW(D)&&P.flags&296){let oe=Xpe(D,P.flags&8?0:D.target.fixedLength,0,m);if(oe)return u[v]=oe}return Yb(D)&&h2e(D)!==2?u[v]=Yf(lot(D,u.indexType),oe=>oZ(oe,m)):u[v]=u}function z5s(u,m){let v=u.checkType,D=u.extendsType,P=fW(u),Y=IW(u);if(Y.flags&131072&&aZ(P)===aZ(v)){if(v.flags&1||dg(EK(v),EK(D)))return oZ(P,m);if(chn(v,D))return Wi}else if(P.flags&131072&&aZ(Y)===aZ(v)){if(!(v.flags&1)&&dg(EK(v),EK(D)))return Wi;if(v.flags&1||chn(v,D))return oZ(Y,m)}return u}function chn(u,m){return!!(Ha([hWe(u,m),Wi]).flags&131072)}function lot(u,m){let v=N1([jw(u)],[m]),D=F5(u.mapper,v),P=_l(qx(u.target||u),D),Y=zfn(u)>0||(G5(u)?Fpe(N5(u))>0:q5s(u,m));return Z0(P,!0,Y)}function q5s(u,m){let v=L_(m);return!!v&&jt(Gd(u),D=>!!(D.flags&16777216)&&dg(Bq(D,8576),v))}function R1(u,m,v=0,D,P,Y){return pW(u,m,v,D,P,Y)||(D?nn:cn)}function lhn(u,m){return RE(u,v=>{if(v.flags&384){let D=A2(v);if(IN(D)){let P=+D;return P>=0&&P0&&!jt(u.elements,m=>jL(m)||zL(m)||KT(m)&&!!(m.questionToken||m.dotDotDotToken))}function Ahn(u,m){return G5(u)||m&&yA(u)&&jt(WQ(u),G5)}function fUt(u,m,v,D,P){let Y,oe,Be=0;for(;;){if(Be===1e3)return Sr(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let He=_l(aZ(u.checkType),m),qe=_l(u.extendsType,m);if(He===nn||qe===nn)return nn;if(He===Ni||qe===Ni)return Ni;let Vt=w7(u.node.checkType),kt=w7(u.node.extendsType),vr=ghn(Vt)&&ghn(kt)&&B(Vt.elements)===B(kt.elements),dn=Ahn(He,vr),vn;if(u.inferTypeParameters){let Yi=Z2e(u.inferTypeParameters,void 0,0);m&&(Yi.nonFixingMapper=F5(Yi.nonFixingMapper,m)),dn||nG(Yi.inferences,He,qe,1536),vn=m?F5(Yi.mapper,m):Yi.mapper}let ii=vn?_l(u.extendsType,vn):qe;if(!dn&&!Ahn(ii,vr)){if(!(ii.flags&3)&&(He.flags&1||!dg(T2e(He),T2e(ii)))){(He.flags&1||v&&!(ii.flags&131072)&&kv(T2e(ii),js=>dg(js,T2e(He))))&&(oe||(oe=[])).push(_l(nl(u.node.trueType),vn||m));let Yi=nl(u.node.falseType);if(Yi.flags&16777216){let js=Yi.root;if(js.node.parent===u.node&&(!js.isDistributive||js.checkType===u.checkType)){u=js;continue}if(Oe(Yi,m))continue}Y=_l(Yi,m);break}if(ii.flags&3||dg(EK(He),EK(ii))){let Yi=nl(u.node.trueType),js=vn||m;if(Oe(Yi,js))continue;Y=_l(Yi,js);break}}Y=ic(16777216),Y.root=u,Y.checkType=_l(u.checkType,m),Y.extendsType=_l(u.extendsType,m),Y.mapper=m,Y.combinedMapper=vn,Y.aliasSymbol=D||u.aliasSymbol,Y.aliasTypeArguments=D?P:cZ(u.aliasTypeArguments,m);break}return oe?Ha(Ft(oe,Y)):Y;function Oe(He,qe){if(He.flags&16777216&&qe){let Vt=He.root;if(Vt.outerTypeParameters){let kt=F5(He.mapper,qe),vr=At(Vt.outerTypeParameters,ii=>w9(ii,kt)),dn=N1(Vt.outerTypeParameters,vr),vn=Vt.isDistributive?w9(Vt.checkType,dn):void 0;if(!vn||vn===Vt.checkType||!(vn.flags&1179648))return u=Vt,m=dn,D=void 0,P=void 0,Vt.aliasSymbol&&Be++,!0}}return!1}}function fW(u){return u.resolvedTrueType||(u.resolvedTrueType=_l(nl(u.root.node.trueType),u.mapper))}function IW(u){return u.resolvedFalseType||(u.resolvedFalseType=_l(nl(u.root.node.falseType),u.mapper))}function $5s(u){return u.resolvedInferredTrueType||(u.resolvedInferredTrueType=u.combinedMapper?_l(nl(u.root.node.trueType),u.combinedMapper):fW(u))}function IUt(u){let m;return u.locals&&u.locals.forEach(v=>{v.flags&262144&&(m=Ft(m,Fp(v)))}),m}function eMs(u){return u.isDistributive&&(GWe(u.checkType,u.node.trueType)||GWe(u.checkType,u.node.falseType))}function tMs(u){let m=sa(u);if(!m.resolvedType){let v=nl(u.checkType),D=Tq(u),P=Zse(D),Y=Fc(u,!0),oe=P?Y:Me(Y,Oe=>GWe(Oe,u)),Be={node:u,checkType:v,extendsType:nl(u.extendsType),isDistributive:!!(v.flags&262144),inferTypeParameters:IUt(u),outerTypeParameters:oe,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:P};m.resolvedType=fUt(Be,void 0,!1),oe&&(Be.instantiations=new Map,Be.instantiations.set(UB(oe),m.resolvedType))}return m.resolvedType}function rMs(u){let m=sa(u);return m.resolvedType||(m.resolvedType=R5(Uo(u.typeParameter))),m.resolvedType}function dhn(u){return Ir(u)?[u]:Ft(dhn(u.left),u.right)}function phn(u){var m;let v=sa(u);if(!v.resolvedType){if(!ky(u))return Sr(u.argument,Z.String_literal_expected),v.resolvedSymbol=it,v.resolvedType=nn;let D=u.isTypeOf?111551:u.flags&16777216?900095:788968,P=F0(u,u.argument.literal);if(!P)return v.resolvedSymbol=it,v.resolvedType=nn;let Y=!!((m=P.exports)!=null&&m.get("export=")),oe=wE(P,!1);if(sf(u.qualifier))if(oe.flags&D)v.resolvedType=fhn(u,v,oe,D);else{let Be=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;Sr(u,Be,u.argument.literal.text),v.resolvedSymbol=it,v.resolvedType=nn}else{let Be=dhn(u.qualifier),Oe=oe,He;for(;He=Be.shift();){let qe=Be.length?1920:D,Vt=jA(Zh(Oe)),kt=u.isTypeOf||wo(u)&&Y?Gg(Io(Vt),He.escapedText,!1,!0):void 0,dn=(u.isTypeOf?void 0:f_(B1(Vt),He.escapedText,qe))??kt;if(!dn)return Sr(He,Z.Namespace_0_has_no_exported_member_1,f9(Oe),Wd(He)),v.resolvedType=nn;sa(He).resolvedSymbol=dn,sa(He.parent).resolvedSymbol=dn,Oe=dn}v.resolvedType=fhn(u,v,Oe,D)}}return v.resolvedType}function fhn(u,m,v,D){let P=Zh(v);return m.resolvedSymbol=P,D===111551?g_n(Io(v),u):not(u,P)}function Ihn(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u);if(!u.symbol||pk(u.symbol).size===0&&!v)m.resolvedType=bg;else{let D=Lh(16,u.symbol);D.aliasSymbol=v,D.aliasTypeArguments=Zse(v),yU(u)&&u.isArrayType&&(D=d0(D)),m.resolvedType=D}}return m.resolvedType}function Tq(u){let m=u.parent;for(;fv(m)||W3(m)||xB(m)&&m.operator===148;)m=m.parent;return Ane(m)?Uo(m):void 0}function Zse(u){return u?Ug(u):void 0}function uot(u){return!!(u.flags&524288)&&!Yb(u)}function hUt(u){return lZ(u)||!!(u.flags&474058748)}function mUt(u,m){if(!(u.flags&1048576))return u;if(ue(u.types,hUt))return de(u.types,lZ)||Xg;let v=de(u.types,Y=>!hUt(Y));if(!v||de(u.types,Y=>Y!==v&&!hUt(Y)))return u;return P(v);function P(Y){let oe=qu();for(let Oe of Gd(Y))if(!(u2(Oe)&6)){if(got(Oe)){let He=Oe.flags&65536&&!(Oe.flags&32768),Vt=gA(16777220,Oe.escapedName,NJt(Oe)|(m?8:0));Vt.links.type=He?Bt:Z0(Io(Oe),!0),Vt.declarations=Oe.declarations,Vt.links.nameType=fa(Oe).nameType,Vt.links.syntheticOrigin=Oe,oe.set(Oe.escapedName,Vt)}}let Be=Hf(Y.symbol,oe,E,E,A0(Y));return Be.objectFlags|=131200,Be}}function OQ(u,m,v,D,P){if(u.flags&1||m.flags&1)return hr;if(u.flags&2||m.flags&2)return cn;if(u.flags&131072)return m;if(m.flags&131072)return u;if(u=mUt(u,P),u.flags&1048576)return TWe([u,m])?Yf(u,He=>OQ(He,m,v,D,P)):nn;if(m=mUt(m,P),m.flags&1048576)return TWe([u,m])?Yf(m,He=>OQ(u,He,v,D,P)):nn;if(m.flags&473960444)return u;if(CK(u)||CK(m)){if(lZ(u))return m;if(u.flags&2097152){let He=u.types,qe=He[He.length-1];if(uot(qe)&&uot(m))return Kg(Nn(He.slice(0,He.length-1),[OQ(qe,m,v,D,P)]))}return Kg([u,m])}let Y=qu(),oe=new Set,Be=u===Xg?A0(m):Xfn([u,m]);for(let He of Gd(m))u2(He)&6?oe.add(He.escapedName):got(He)&&Y.set(He.escapedName,CUt(He,P));for(let He of Gd(u))if(!(oe.has(He.escapedName)||!got(He)))if(Y.has(He.escapedName)){let qe=Y.get(He.escapedName),Vt=Io(qe);if(qe.flags&16777216){let kt=Nn(He.declarations,qe.declarations),vr=4|He.flags&16777216,dn=gA(vr,He.escapedName),vn=Io(He),ii=Rot(vn),Yi=Rot(Vt);dn.links.type=ii===Yi?vn:Ha([vn,Yi],2),dn.links.leftSpread=He,dn.links.rightSpread=qe,dn.declarations=kt,dn.links.nameType=fa(He).nameType,Y.set(He.escapedName,dn)}}else Y.set(He.escapedName,CUt(He,P));let Oe=Hf(v,Y,E,E,Tr(Be,He=>nMs(He,P)));return Oe.objectFlags|=2228352|D,Oe}function got(u){var m;return!jt(u.declarations,pC)&&(!(u.flags&106496)||!((m=u.declarations)!=null&&m.some(v=>xa(v.parent))))}function CUt(u,m){let v=u.flags&65536&&!(u.flags&32768);if(!v&&m===yR(u))return u;let D=4|u.flags&16777216,P=gA(D,u.escapedName,NJt(u)|(m?8:0));return P.links.type=v?Bt:Io(u),P.declarations=u.declarations,P.links.nameType=fa(u).nameType,P.links.syntheticOrigin=u,P}function nMs(u,m){return u.isReadonly!==m?eG(u.keyType,u.type,m,u.declaration,u.components):u}function NWe(u,m,v,D){let P=Oc(u,v);return P.value=m,P.regularType=D||P,P}function Rq(u){if(u.flags&2976){if(!u.freshType){let m=NWe(u.flags,u.value,u.symbol,u);m.freshType=m,u.freshType=m}return u.freshType}return u}function Iy(u){return u.flags&2976?u.regularType:u.flags&1048576?u.regularType||(u.regularType=Yf(u,Iy)):u}function MQ(u){return!!(u.flags&2976)&&u.freshType===u}function TE(u){let m;return hn.get(u)||(hn.set(u,m=NWe(128,u)),m)}function fR(u){let m;return Oi.get(u)||(Oi.set(u,m=NWe(256,u)),m)}function DWe(u){let m,v=kP(u);return lo.get(v)||(lo.set(v,m=NWe(2048,u)),m)}function iMs(u,m,v){let D,P=`${m}${typeof u=="string"?"@":"#"}${u}`,Y=1024|(typeof u=="string"?128:256);return pa.get(P)||(pa.set(P,D=NWe(Y,u,v)),D)}function sMs(u){if(u.literal.kind===106)return Hn;let m=sa(u);return m.resolvedType||(m.resolvedType=Iy(Ol(u.literal))),m.resolvedType}function oMs(u){let m=Oc(8192,u);return m.escapedName=`__@${m.symbol.escapedName}@${kg(m.symbol)}`,m}function _Ut(u){if(wo(u)&&W3(u)){let m=bP(u);m&&(u=m3(m)||m)}if(rZe(u)){let m=Vge(u)?mS(u.left):mS(u);if(m){let v=fa(m);return v.uniqueESSymbolType||(v.uniqueESSymbolType=oMs(m))}}return ci}function aMs(u){let m=r0(u,!1,!1),v=m&&m.parent;if(v&&(xa(v)||v.kind===265)&&!cg(m)&&(!Tc(m)||EP(u,m.body)))return wv(Uo(v)).thisType;if(v&&og(v)&&fo(v.parent)&&nI(v.parent)===6)return wv(mS(v.parent.left).parent).thisType;let D=u.flags&16777216?PL(u):void 0;return D&&UA(D)&&fo(D.parent)&&nI(D.parent)===3?wv(mS(D.parent.left).parent).thisType:YN(m)&&EP(u,m.body)?wv(Uo(m)).thisType:(Sr(u,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),nn)}function yUt(u){let m=sa(u);return m.resolvedType||(m.resolvedType=aMs(u)),m.resolvedType}function hhn(u){return nl(kWe(u.type)||u.type)}function kWe(u){switch(u.kind){case 197:return kWe(u.type);case 190:if(u.elements.length===1&&(u=u.elements[0],u.kind===192||u.kind===203&&u.dotDotDotToken))return kWe(u.type);break;case 189:return u.elementType}}function cMs(u){let m=sa(u);return m.resolvedType||(m.resolvedType=u.dotDotDotToken?hhn(u):Z0(nl(u.type),!0,!!u.questionToken))}function nl(u){return V3s(mhn(u),u)}function mhn(u){switch(u.kind){case 133:case 313:case 314:return hr;case 159:return cn;case 154:return $r;case 150:return ri;case 163:return ao;case 136:return Mn;case 155:return ci;case 116:return es;case 157:return Bt;case 106:return Hn;case 146:return Wi;case 151:return u.flags&524288&&!Rt?hr:fs;case 141:return Mt;case 198:case 110:return yUt(u);case 202:return sMs(u);case 184:return sot(u);case 183:return u.assertsModifier?es:Mn;case 234:return sot(u);case 187:return BIn(u);case 189:case 190:return I5s(u);case 191:return _5s(u);case 193:return R5s(u);case 194:return L5s(u);case 315:return P3s(u);case 317:return Z0(nl(u.type));case 203:return cMs(u);case 197:case 316:case 310:return nl(u.type);case 192:return hhn(u);case 319:return BKs(u);case 185:case 186:case 188:case 323:case 318:case 324:return Ihn(u);case 199:return M5s(u);case 200:return uhn(u);case 201:return pUt(u);case 195:return tMs(u);case 196:return rMs(u);case 204:return H5s(u);case 206:return phn(u);case 80:case 167:case 212:let m=xv(u);return m?Fp(m):nn;default:return nn}}function Aot(u,m,v){if(u&&u.length)for(let D=0;DD.typeParameter),At(v,()=>cn))}function uMs(u){return u.outerReturnMapper??(u.outerReturnMapper=bhn(u.returnMapper,tmn(u).mapper))}function F5(u,m){return u?pot(4,u,m):m}function bhn(u,m){return u?pot(5,u,m):m}function yK(u,m,v){return v?pot(5,HQ(u,m),v):HQ(u,m)}function B2e(u,m,v){return u?pot(5,u,HQ(m,v)):HQ(m,v)}function gMs(u){return!u.constraint&&!tot(u)||u.constraint===YI?u:u.restrictiveInstantiation||(u.restrictiveInstantiation=Yy(u.symbol),u.restrictiveInstantiation.constraint=YI,u.restrictiveInstantiation)}function EUt(u){let m=Yy(u.symbol);return m.target=u,m}function Ehn(u,m){return _2e(u.kind,u.parameterName,u.parameterIndex,_l(u.type,m))}function bK(u,m,v){let D;if(u.typeParameters&&!v){D=At(u.typeParameters,EUt),m=F5(N1(u.typeParameters,D),m);for(let Y of D)Y.mapper=m}let P=PN(u.declaration,D,u.thisParameter&&SUt(u.thisParameter,m),Aot(u.parameters,m,SUt),void 0,void 0,u.minArgumentCount,u.flags&167);return P.target=u,P.mapper=m,P}function SUt(u,m){let v=fa(u);if(v.type&&!CW(v.type)&&(!(u.flags&65536)||v.writeType&&!CW(v.writeType)))return u;iI(u)&1&&(u=v.target,m=F5(v.mapper,m));let D=gA(u.flags,u.escapedName,1|iI(u)&53256);return D.declarations=u.declarations,D.parent=u.parent,D.links.target=u,D.links.mapper=m,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),v.nameType&&(D.links.nameType=v.nameType),D}function AMs(u,m,v,D){let P=u.objectFlags&4||u.objectFlags&8388608?u.node:u.symbol.declarations[0],Y=sa(P),oe=u.objectFlags&4?Y.resolvedType:u.objectFlags&64?u.target:u,Be=Y.outerTypeParameters;if(!Be){let Oe=Fc(P,!0);if(YN(P)){let qe=lIn(P);Oe=Or(Oe,qe)}Be=Oe||E;let He=u.objectFlags&8388612?[P]:u.symbol.declarations;Be=(oe.objectFlags&8388612||oe.symbol.flags&8192||oe.symbol.flags&2048)&&!oe.aliasTypeArguments?Me(Be,qe=>jt(He,Vt=>GWe(qe,Vt))):Be,Y.outerTypeParameters=Be}if(Be.length){let Oe=F5(u.mapper,m),He=At(Be,dn=>w9(dn,Oe)),qe=v||u.aliasSymbol,Vt=v?D:cZ(u.aliasTypeArguments,m),kt=UB(He)+IK(qe,Vt);oe.instantiations||(oe.instantiations=new Map,oe.instantiations.set(UB(Be)+IK(oe.aliasSymbol,oe.aliasTypeArguments),oe));let vr=oe.instantiations.get(kt);if(!vr){let dn=N1(Be,He);oe.objectFlags&134217728&&m&&(dn=F5(dn,m)),vr=oe.objectFlags&4?QJt(u.target,u.node,dn,qe,Vt):oe.objectFlags&32?pMs(oe,dn,qe,Vt):vUt(oe,dn,qe,Vt),oe.instantiations.set(kt,vr);let vn=la(vr);if(vr.flags&3899393&&!(vn&524288)){let ii=jt(He,CW);la(vr)&524288||(vn&52?vr.objectFlags|=524288|(ii?1048576:0):vr.objectFlags|=ii?0:524288)}}return vr}return u}function dMs(u){return!(u.parent.kind===184&&u.parent.typeArguments&&u===u.parent.typeName||u.parent.kind===206&&u.parent.typeArguments&&u===u.parent.qualifier)}function GWe(u,m){if(u.symbol&&u.symbol.declarations&&u.symbol.declarations.length===1){let D=u.symbol.declarations[0].parent;for(let P=m;P!==D;P=P.parent)if(!P||P.kind===242||P.kind===195&&Lu(P.extendsType,v))return!0;return v(m)}return!0;function v(D){switch(D.kind){case 198:return!!u.isThisType;case 80:return!u.isThisType&&ww(D)&&dMs(D)&&mhn(D)===u;case 187:let P=D.exprName,Y=B0(P);if(!vF(Y)){let oe=L0(Y),Be=u.symbol.declarations[0],Oe=Be.kind===169?Be.parent:u.isThisType?Be:void 0;if(oe.declarations&&Oe)return jt(oe.declarations,He=>EP(He,Oe))||jt(D.typeArguments,v)}return!0;case 175:case 174:return!D.type&&!!D.body||jt(D.typeParameters,v)||jt(D.parameters,v)||!!D.type&&v(D.type)}return!!Lu(D,v)}}function w2e(u){let m=_S(u);if(m.flags&4194304){let v=aZ(m.type);if(v.flags&262144)return v}}function pMs(u,m,v,D){let P=w2e(u);if(P){let oe=_l(P,m);if(P!==oe)return Bmn(JB(oe),Y,v,D)}return _l(_S(u),m)===Ni?Ni:vUt(u,m,v,D);function Y(oe){if(oe.flags&61603843&&oe!==Ni&&!uo(oe)){if(!u.declaration.nameType){let Be;if(Nv(oe)||oe.flags&1&&rt(P,4)<0&&(Be=Xy(P))&&RE(Be,L5))return IMs(oe,u,yK(P,oe,m));if(yA(oe))return fMs(oe,u,P,m);if(nIn(oe))return Kg(At(oe.types,Y))}return vUt(u,yK(P,oe,m))}return oe}}function Shn(u,m){return m&1?!0:m&2?!1:u}function fMs(u,m,v,D){let P=u.target.elementFlags,Y=u.target.fixedLength,oe=Y?yK(v,u,D):D,Be=At(WQ(u),(Vt,kt)=>{let vr=P[kt];return ktVt&1?2:Vt):Oe&8?At(P,Vt=>Vt&2?1:Vt):P,qe=Shn(u.target.readonly,fk(m));return k(Be,nn)?nn:hk(Be,He,qe,u.target.labeledElementDeclarations)}function IMs(u,m,v){let D=vhn(m,ri,!0,v);return uo(D)?nn:d0(D,Shn(Ype(u),fk(m)))}function vhn(u,m,v,D){let P=B2e(D,jw(u),m),Y=_l(qx(u.target||u),P),oe=fk(u);return ot&&oe&4&&!ah(Y,49152)?mW(Y,!0):ot&&oe&8&&v?Dv(Y,524288):Y}function vUt(u,m,v,D){pe.assert(u.symbol,"anonymous type must have symbol to be instantiated");let P=Lh(u.objectFlags&-1572865|64,u.symbol);if(u.objectFlags&32){P.declaration=u.declaration;let Y=jw(u),oe=EUt(Y);P.typeParameter=oe,m=F5(HQ(Y,oe),m),oe.mapper=m}return u.objectFlags&8388608&&(P.node=u.node),P.target=u,P.mapper=m,P.aliasSymbol=v||u.aliasSymbol,P.aliasTypeArguments=v?D:cZ(u.aliasTypeArguments,m),P.objectFlags|=P.aliasTypeArguments?EWe(P.aliasTypeArguments):0,P}function BUt(u,m,v,D,P){let Y=u.root;if(Y.outerTypeParameters){let oe=At(Y.outerTypeParameters,He=>w9(He,m)),Be=(v?"C":"")+UB(oe)+IK(D,P),Oe=Y.instantiations.get(Be);if(!Oe){let He=N1(Y.outerTypeParameters,oe),qe=Y.checkType,Vt=Y.isDistributive?JB(w9(qe,He)):void 0;Oe=Vt&&qe!==Vt&&Vt.flags&1179648?Bmn(Vt,kt=>fUt(Y,yK(qe,kt,He),v),D,P):fUt(Y,He,v,D,P),Y.instantiations.set(Be,Oe)}return Oe}return u}function _l(u,m){return u&&m?Bhn(u,m,void 0,void 0):u}function Bhn(u,m,v,D){var P;if(!CW(u))return u;if(ee===100||M>=5e6)return(P=ki)==null||P.instant(ki.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:u.id,instantiationDepth:ee,instantiationCount:M}),Sr(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let Y=rQs(m);Y===-1&&eQs(m);let oe=u.id+IK(v,D),Be=o5[Y!==-1?Y:ak-1],Oe=Be.get(oe);if(Oe)return Oe;V++,M++,ee++;let He=hMs(u,m,v,D);return Y===-1?tQs():Be.set(oe,He),ee--,He}function hMs(u,m,v,D){let P=u.flags;if(P&262144)return w9(u,m);if(P&524288){let Y=u.objectFlags;if(Y&52){if(Y&4&&!u.node){let oe=u.resolvedTypeArguments,Be=cZ(oe,m);return Be!==oe?iUt(u.target,Be):u}return Y&1024?mMs(u,m):AMs(u,m,v,D)}return u}if(P&3145728){let Y=u.flags&1048576?u.origin:void 0,oe=Y&&Y.flags&3145728?Y.types:u.types,Be=cZ(oe,m);if(Be===oe&&v===u.aliasSymbol)return u;let Oe=v||u.aliasSymbol,He=v?D:cZ(u.aliasTypeArguments,m);return P&2097152||Y&&Y.flags&2097152?Kg(Be,0,Oe,He):Ha(Be,1,Oe,He)}if(P&4194304)return ON(_l(u.type,m));if(P&134217728)return hK(u.texts,cZ(u.types,m));if(P&268435456)return wq(u.symbol,_l(u.type,m));if(P&8388608){let Y=v||u.aliasSymbol,oe=v?D:cZ(u.aliasTypeArguments,m);return R1(_l(u.objectType,m),_l(u.indexType,m),u.accessFlags,void 0,Y,oe)}if(P&16777216)return BUt(u,F5(u.mapper,m),!1,v,D);if(P&33554432){let Y=_l(u.baseType,m);if(Gse(u))return XJt(Y);let oe=_l(u.constraint,m);return Y.flags&8650752&&G5(oe)?UJt(Y,oe):oe.flags&3||dg(EK(Y),EK(oe))?Y:Y.flags&8650752?UJt(Y,oe):Kg([oe,Y])}return u}function mMs(u,m){let v=_l(u.mappedType,m);if(!(la(v)&32))return u;let D=_l(u.constraintType,m);if(!(D.flags&4194304))return u;let P=imn(_l(u.source,m),v,D);return P||u}function T2e(u){return u.flags&402915327?u:u.permissiveInstantiation||(u.permissiveInstantiation=_l(u,AI))}function EK(u){return u.flags&402915327?u:(u.restrictiveInstantiation||(u.restrictiveInstantiation=_l(u,wI),u.restrictiveInstantiation.restrictiveInstantiation=u.restrictiveInstantiation),u.restrictiveInstantiation)}function CMs(u,m){return eG(u.keyType,_l(u.type,m),u.isReadonly,u.declaration,u.components)}function bS(u){switch(pe.assert(u.kind!==175||a2(u)),u.kind){case 219:case 220:case 175:case 263:return whn(u);case 211:return jt(u.properties,bS);case 210:return jt(u.elements,bS);case 228:return bS(u.whenTrue)||bS(u.whenFalse);case 227:return(u.operatorToken.kind===57||u.operatorToken.kind===61)&&(bS(u.left)||bS(u.right));case 304:return bS(u.initializer);case 218:return bS(u.expression);case 293:return jt(u.properties,bS)||$T(u.parent)&&jt(u.parent.parent.children,bS);case 292:{let{initializer:m}=u;return!!m&&bS(m)}case 295:{let{expression:m}=u;return!!m&&bS(m)}}return!1}function whn(u){return MAe(u)||_Ms(u)}function _Ms(u){return u.typeParameters||xb(u)||!u.body?!1:u.body.kind!==242?bS(u.body):!!yF(u.body,m=>!!m.expression&&bS(m.expression))}function fot(u){return(RF(u)||a2(u))&&whn(u)}function Thn(u){if(u.flags&524288){let m=pR(u);if(m.constructSignatures.length||m.callSignatures.length){let v=Lh(16,u.symbol);return v.members=m.members,v.properties=m.properties,v.callSignatures=E,v.constructSignatures=E,v.indexInfos=E,v}}else if(u.flags&2097152)return Kg(At(u.types,Thn));return u}function rG(u,m){return MN(u,m,u0)}function R2e(u,m){return MN(u,m,u0)?-1:0}function wUt(u,m){return MN(u,m,l0)?-1:0}function yMs(u,m){return MN(u,m,ck)?-1:0}function YQ(u,m){return MN(u,m,ck)}function Hpe(u,m){return MN(u,m,bf)}function dg(u,m){return MN(u,m,l0)}function Z5(u,m){return u.flags&1048576?ue(u.types,v=>Z5(v,m)):m.flags&1048576?jt(m.types,v=>Z5(u,v)):u.flags&2097152?jt(u.types,v=>Z5(v,m)):u.flags&58982400?Z5(L_(u)||cn,m):mk(m)?!!(u.flags&67633152):m===qn?!!(u.flags&67633152)&&!mk(u):m===Js?!!(u.flags&524288)&&aKt(u):da(u,vs(m))||Nv(m)&&!Ype(m)&&Z5(u,uA)}function Iot(u,m){return MN(u,m,Ob)}function FWe(u,m){return Iot(u,m)||Iot(m,u)}function p0(u,m,v,D,P,Y){return Rv(u,m,l0,v,D,P,Y)}function QQ(u,m,v,D,P,Y){return TUt(u,m,l0,v,D,P,Y,void 0)}function TUt(u,m,v,D,P,Y,oe,Be){return MN(u,m,v)?!0:!D||!N2e(P,u,m,v,Y,oe,Be)?Rv(u,m,v,D,Y,oe,Be):!1}function Rhn(u){return!!(u.flags&16777216||u.flags&2097152&&jt(u.types,Rhn))}function N2e(u,m,v,D,P,Y,oe){if(!u||Rhn(v))return!1;if(!Rv(m,v,D,void 0)&&bMs(u,m,v,D,P,Y,oe))return!0;switch(u.kind){case 235:if(!Wbe(u))break;case 295:case 218:return N2e(u.expression,m,v,D,P,Y,oe);case 227:switch(u.operatorToken.kind){case 64:case 28:return N2e(u.right,m,v,D,P,Y,oe)}break;case 211:return NMs(u,m,v,D,Y,oe);case 210:return TMs(u,m,v,D,Y,oe);case 293:return wMs(u,m,v,D,Y,oe);case 220:return EMs(u,m,v,D,Y,oe)}return!1}function bMs(u,m,v,D,P,Y,oe){let Be=tg(m,0),Oe=tg(m,1);for(let He of[Oe,Be])if(jt(He,qe=>{let Vt=ud(qe);return!(Vt.flags&131073)&&Rv(Vt,v,D,void 0)})){let qe=oe||{};p0(m,v,u,P,Y,qe);let Vt=qe.errors[qe.errors.length-1];return lg(Vt,mo(u,He===Oe?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function EMs(u,m,v,D,P,Y){if($u(u.body)||jt(u.parameters,If))return!1;let oe=kK(m);if(!oe)return!1;let Be=tg(v,0);if(!B(Be))return!1;let Oe=u.body,He=ud(oe),qe=Ha(At(Be,ud));if(!Rv(He,qe,D,void 0)){let Vt=Oe&&N2e(Oe,He,qe,D,void 0,P,Y);if(Vt)return Vt;let kt=Y||{};if(Rv(He,qe,D,Oe,void 0,P,kt),kt.errors)return v.symbol&&B(v.symbol.declarations)&&lg(kt.errors[kt.errors.length-1],mo(v.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(SI(u)&2)&&!Pi(He,"then")&&Rv(IOe(He),qe,D,void 0)&&lg(kt.errors[kt.errors.length-1],mo(u,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function Nhn(u,m,v){let D=pW(m,v);if(D)return D;if(m.flags&1048576){let P=Vhn(u,m);if(P)return pW(P,v)}}function Dhn(u,m){rOe(u,m,!1);let v=efe(u,1);return O2e(),v}function ZWe(u,m,v,D,P,Y){let oe=!1;for(let Be of u){let{errorNode:Oe,innerExpression:He,nameType:qe,errorMessage:Vt}=Be,kt=Nhn(m,v,qe);if(!kt||kt.flags&8388608)continue;let vr=pW(m,qe);if(!vr)continue;let dn=cot(qe,void 0);if(!Rv(vr,kt,D,void 0)){let vn=He&&N2e(He,vr,kt,D,void 0,P,Y);if(oe=!0,!vn){let ii=Y||{},Yi=He?Dhn(He,vr):vr;if(Pt&&mot(Yi,kt)){let js=mo(Oe,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,no(Yi),no(kt));PA.add(js),ii.errors=[js]}else{let js=!!(dn&&(Gg(v,dn)||it).flags&16777216),Co=!!(dn&&(Gg(m,dn)||it).flags&16777216);kt=AZ(kt,js),vr=AZ(vr,js&&Co),Rv(Yi,kt,D,Oe,Vt,P,ii)&&Yi!==vr&&Rv(vr,kt,D,Oe,Vt,P,ii)}if(ii.errors){let js=ii.errors[ii.errors.length-1],Co=g2(qe)?A2(qe):void 0,Ji=Co!==void 0?Gg(v,Co):void 0,Mi=!1;if(!Ji){let To=m2e(v,qe);To&&To.declaration&&!ms(To.declaration).hasNoDefaultLib&&(Mi=!0,lg(js,mo(To.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Mi&&(Ji&&B(Ji.declarations)||v.symbol&&B(v.symbol.declarations))){let To=Ji&&B(Ji.declarations)?Ji.declarations[0]:v.symbol.declarations[0];ms(To).hasNoDefaultLib||lg(js,mo(To,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,Co&&!(qe.flags&8192)?Bc(Co):no(qe),no(v)))}}}}}return oe}function SMs(u,m,v,D,P,Y){let oe=nm(v,vot),Be=nm(v,qe=>!vot(qe)),Oe=Be!==Wi?R8t(13,0,Be,void 0):void 0,He=!1;for(let qe=u.next();!qe.done;qe=u.next()){let{errorNode:Vt,innerExpression:kt,nameType:vr,errorMessage:dn}=qe.value,vn=Oe,ii=oe!==Wi?Nhn(m,oe,vr):void 0;if(ii&&!(ii.flags&8388608)&&(vn=Oe?Ha([Oe,ii]):ii),!vn)continue;let Yi=pW(m,vr);if(!Yi)continue;let js=cot(vr,void 0);if(!Rv(Yi,vn,D,void 0)){let Co=kt&&N2e(kt,Yi,vn,D,void 0,P,Y);if(He=!0,!Co){let Ji=Y||{},Mi=kt?Dhn(kt,Yi):Yi;if(Pt&&mot(Mi,vn)){let To=mo(Vt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,no(Mi),no(vn));PA.add(To),Ji.errors=[To]}else{let To=!!(js&&(Gg(oe,js)||it).flags&16777216),Ka=!!(js&&(Gg(m,js)||it).flags&16777216);vn=AZ(vn,To),Yi=AZ(Yi,To&&Ka),Rv(Mi,vn,D,Vt,dn,P,Ji)&&Mi!==Yi&&Rv(Yi,vn,D,Vt,dn,P,Ji)}}}}return He}function*vMs(u){if(B(u.properties))for(let m of u.properties)yz(m)||NKt(xw(m.name))||(yield{errorNode:m.name,innerExpression:m.initializer,nameType:TE(xw(m.name))})}function*BMs(u,m){if(!B(u.children))return;let v=0;for(let D=0;D1,ii,Yi;if(aot(!1)!==oi){let Co=WIn(hr);ii=nm(vr,Ji=>dg(Ji,Co)),Yi=nm(vr,Ji=>!dg(Ji,Co))}else ii=nm(vr,vot),Yi=nm(vr,Co=>!vot(Co));if(vn){if(ii!==Wi){let Co=hk($ot(He,0)),Ji=BMs(He,Oe);oe=SMs(Ji,Co,ii,D,P,Y)||oe}else if(!MN(R1(m,kt),vr,D)){oe=!0;let Co=Sr(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Vt,no(vr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}else if(Yi!==Wi){let Co=dn[0],Ji=khn(Co,kt,Oe);Ji&&(oe=ZWe(function*(){yield Ji}(),m,v,D,P,Y)||oe)}else if(!MN(R1(m,kt),vr,D)){oe=!0;let Co=Sr(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Vt,no(vr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}return oe;function Oe(){if(!Be){let He=xp(u.parent.tagName),qe=iOe(NK(u)),Vt=qe===void 0?"children":Bc(qe),kt=R1(v,TE(Vt)),vr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Be={...vr,key:"!!ALREADY FORMATTED!!",message:XY(vr,He,Vt,no(kt))}}return Be}}function*xhn(u,m){let v=B(u.elements);if(v)for(let D=0;DOe:_R(u)>Oe))return D&&!(v&8)&&P(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,_R(u),Oe),0;u.typeParameters&&u.typeParameters!==m.typeParameters&&(m=k3s(m),u=YCn(u,m,void 0,oe));let qe=NE(u),Vt=K2e(u),kt=K2e(m);(Vt||kt)&&_l(Vt||kt,Be);let vr=m.declaration?m.declaration.kind:0,dn=!(v&3)&&Qe&&vr!==175&&vr!==174&&vr!==177,vn=-1,ii=k5(u);if(ii&&ii!==es){let Co=k5(m);if(Co){let Ji=!dn&&oe(ii,Co,!1)||oe(Co,ii,D);if(!Ji)return D&&P(Z.The_this_types_of_each_signature_are_incompatible),0;vn&=Ji}}let Yi=Vt||kt?Math.min(qe,Oe):Math.max(qe,Oe),js=Vt||kt?Yi-1:-1;for(let Co=0;Co=_R(u)&&Co<_R(m)&&oe(Ji,Mi,!1)&&(ka=0),!ka)return D&&P(Z.Types_of_parameters_0_and_1_are_incompatible,Bc(zpe(u,Co)),Bc(zpe(m,Co))),0;vn&=ka}}if(!(v&4)){let Co=Kst(m)?hr:m.declaration&&YN(m.declaration)?wv(jA(m.declaration.symbol)):ud(m);if(Co===es||Co===hr)return vn;let Ji=Kst(u)?hr:u.declaration&&YN(u.declaration)?wv(jA(u.declaration.symbol)):ud(u),Mi=Tv(m);if(Mi){let To=Tv(u);if(To)vn&=kMs(To,Mi,D,P,oe);else if(iZe(Mi)||sZe(Mi))return D&&P(Z.Signature_0_must_be_a_type_predicate,lW(u)),0}else vn&=v&1&&oe(Co,Ji,!1)||oe(Ji,Co,D),!vn&&D&&Y&&Y(Ji,Co)}return vn}function kMs(u,m,v,D,P){if(u.kind!==m.kind)return v&&(D(Z.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m))),0;if((u.kind===1||u.kind===3)&&u.parameterIndex!==m.parameterIndex)return v&&(D(Z.Parameter_0_is_not_in_the_same_position_as_parameter_1,u.parameterName,m.parameterName),D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m))),0;let Y=u.type===m.type?-1:u.type&&m.type?P(u.type,m.type,v):0;return Y===0&&v&&D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m)),Y}function xMs(u,m){let v=b2e(u),D=b2e(m),P=ud(v),Y=ud(D);return Y===es||MN(Y,P,l0)||MN(P,Y,l0)?DMs(v,D,!0):!1}function NUt(u){return u!==$d&&u.properties.length===0&&u.callSignatures.length===0&&u.constructSignatures.length===0&&u.indexInfos.length===0}function lZ(u){return u.flags&524288?!Yb(u)&&NUt(pR(u)):u.flags&67108864?!0:u.flags&1048576?jt(u.types,lZ):u.flags&2097152?ue(u.types,lZ):!1}function mk(u){return!!(la(u)&16&&(u.members&&NUt(u)||u.symbol&&u.symbol.flags&2048&&pk(u.symbol).size===0))}function GMs(u){if(ot&&u.flags&1048576){if(!(u.objectFlags&33554432)){let m=u.types;u.objectFlags|=33554432|(m.length>=3&&m[0].flags&32768&&m[1].flags&65536&&jt(m,mk)?67108864:0)}return!!(u.objectFlags&67108864)}return!1}function Lse(u){return!!((u.flags&1048576?u.types[0]:u).flags&32768)}function FMs(u){let m=u.flags&1048576?u.types[0]:u;return!!(m.flags&32768)&&m!==fr}function Fhn(u){return u.flags&524288&&!Yb(u)&&Gd(u).length===0&&A0(u).length===1&&!!$x(u,$r)||u.flags&3145728&&ue(u.types,Fhn)||!1}function DUt(u,m,v){let D=u.flags&8?$m(u):u,P=m.flags&8?$m(m):m;if(D===P)return!0;if(D.escapedName!==P.escapedName||!(D.flags&256)||!(P.flags&256))return!1;let Y=kg(D)+","+kg(P),oe=g5.get(Y);if(oe!==void 0&&!(oe&2&&v))return!!(oe&1);let Be=Io(P);for(let Oe of Gd(Io(D)))if(Oe.flags&8){let He=Gg(Be,Oe.escapedName);if(!He||!(He.flags&8))return v&&v(Z.Property_0_is_missing_in_type_1,nf(Oe),no(Fp(P),void 0,64)),g5.set(Y,2),!1;let qe=GK(Cp(Oe,307)).value,Vt=GK(Cp(He,307)).value;if(qe!==Vt){let kt=typeof qe=="string",vr=typeof Vt=="string";if(qe!==void 0&&Vt!==void 0){if(v){let dn=kt?`"${YT(qe)}"`:qe,vn=vr?`"${YT(Vt)}"`:Vt;v(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,nf(P),nf(He),vn,dn)}return g5.set(Y,2),!1}if(kt||vr){if(v){let dn=qe??Vt;pe.assert(typeof dn=="string");let vn=`"${YT(dn)}"`;v(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,nf(P),nf(He),vn)}return g5.set(Y,2),!1}}}return g5.set(Y,1),!0}function D2e(u,m,v,D){let P=u.flags,Y=m.flags;return Y&1||P&131072||u===Ni||Y&2&&!(v===bf&&P&1)?!0:Y&131072?!1:!!(P&402653316&&Y&4||P&128&&P&1024&&Y&128&&!(Y&1024)&&u.value===m.value||P&296&&Y&8||P&256&&P&1024&&Y&256&&!(Y&1024)&&u.value===m.value||P&2112&&Y&64||P&528&&Y&16||P&12288&&Y&4096||P&32&&Y&32&&u.symbol.escapedName===m.symbol.escapedName&&DUt(u.symbol,m.symbol,D)||P&1024&&Y&1024&&(P&1048576&&Y&1048576&&DUt(u.symbol,m.symbol,D)||P&2944&&Y&2944&&u.value===m.value&&DUt(u.symbol,m.symbol,D))||P&32768&&(!ot&&!(Y&3145728)||Y&49152)||P&65536&&(!ot&&!(Y&3145728)||Y&65536)||P&524288&&Y&67108864&&!(v===bf&&mk(u)&&!(la(u)&8192))||(v===l0||v===Ob)&&(P&1||P&8&&(Y&32||Y&256&&Y&1024)||P&256&&!(P&1024)&&(Y&32||Y&256&&Y&1024&&u.value===m.value)||GMs(m)))}function MN(u,m,v){if(MQ(u)&&(u=u.regularType),MQ(m)&&(m=m.regularType),u===m)return!0;if(v!==u0){if(v===Ob&&!(m.flags&131072)&&D2e(m,u,v)||D2e(u,m,v))return!0}else if(!((u.flags|m.flags)&61865984)){if(u.flags!==m.flags)return!1;if(u.flags&67358815)return!0}if(u.flags&524288&&m.flags&524288){let D=v.get(yot(u,m,0,v,!1));if(D!==void 0)return!!(D&1)}return u.flags&469499904||m.flags&469499904?Rv(u,m,v,void 0):!1}function Zhn(u,m){return la(u)&2048&&NKt(m.escapedName)}function LWe(u,m){for(;;){let v=MQ(u)?u.regularType:hW(u)?VMs(u,m):la(u)&4?u.node?iZ(u.target,lf(u)):PUt(u)||u:u.flags&3145728?ZMs(u,m):u.flags&33554432?m?u.baseType:KJt(u):u.flags&25165824?oZ(u,m):u;if(v===u)return v;u=v}}function ZMs(u,m){let v=JB(u);if(v!==u)return v;if(u.flags&2097152&&LMs(u)){let D=Tr(u.types,P=>LWe(P,m));if(D!==u.types)return Kg(D)}return u}function LMs(u){let m=!1,v=!1;for(let D of u.types)if(m||(m=!!(D.flags&465829888)),v||(v=!!(D.flags&98304)||mk(D)),m&&v)return!0;return!1}function VMs(u,m){let v=WQ(u),D=Tr(v,P=>P.flags&25165824?oZ(P,m):P);return v!==D?sUt(u.target,D):u}function Rv(u,m,v,D,P,Y,oe){var Be;let Oe,He,qe,Vt,kt,vr,dn=0,vn=0,ii=0,Yi=0,js=!1,Co=0,Ji=0,Mi,To,Ka=16e6-v.size>>3;pe.assert(v!==u0||!D,"no error reporting in identity checking");let yl=_o(u,m,3,!!D,P);if(To&&gd(),js){let Qt=yot(u,m,0,v,!1);v.set(Qt,2|(Ka<=0?32:64)),(Be=ki)==null||Be.instant(ki.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:u.id,targetId:m.id,depth:vn,targetDepth:ii});let Cr=Ka<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,jr=Sr(D||ge,Cr,no(u),no(m));oe&&(oe.errors||(oe.errors=[])).push(jr)}else if(Oe){if(Y){let jr=Y();jr&&(Zne(jr,Oe),Oe=jr)}let Qt;if(P&&D&&!yl&&u.symbol){let jr=fa(u.symbol);if(jr.originatingImport&&!Up(jr.originatingImport)&&Rv(Io(jr.target),m,v,void 0)){let yi=mo(jr.originatingImport,Z.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);Qt=Ft(Qt,yi)}}let Cr=Bw(ms(D),D,Oe,Qt);He&&lg(Cr,...He),oe&&(oe.errors||(oe.errors=[])).push(Cr),(!oe||!oe.skipLogging)&&PA.add(Cr)}return D&&oe&&oe.skipLogging&&yl===0&&pe.assert(!!oe.errors,"missed opportunity to interact with error."),yl!==0;function ka(Qt){Oe=Qt.errorInfo,Mi=Qt.lastSkippedInfo,To=Qt.incompatibleStack,Co=Qt.overrideNextErrorInfo,Ji=Qt.skipParentCounter,He=Qt.relatedInfo}function Kc(){return{errorInfo:Oe,lastSkippedInfo:Mi,incompatibleStack:To?.slice(),overrideNextErrorInfo:Co,skipParentCounter:Ji,relatedInfo:He?.slice()}}function Vu(Qt,...Cr){Co++,Mi=void 0,(To||(To=[])).push([Qt,...Cr])}function gd(){let Qt=To||[];To=void 0;let Cr=Mi;if(Mi=void 0,Qt.length===1){Ll(...Qt[0]),Cr&&V0(void 0,...Cr);return}let jr="",Qn=[];for(;Qt.length;){let[yi,...Xn]=Qt.pop();switch(yi.code){case Z.Types_of_property_0_are_incompatible.code:{jr.indexOf("new ")===0&&(jr=`(${jr})`);let Ti=""+Xn[0];jr.length===0?jr=`${Ti}`:Uh(Ti,Mg(Te))?jr=`${jr}.${Ti}`:Ti[0]==="["&&Ti[Ti.length-1]==="]"?jr=`${jr}${Ti}`:jr=`${jr}[${Ti}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(jr.length===0){let Ti=yi;yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?Ti=Z.Call_signature_return_types_0_and_1_are_incompatible:yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(Ti=Z.Construct_signature_return_types_0_and_1_are_incompatible),Qn.unshift([Ti,Xn[0],Xn[1]])}else{let Ti=yi.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",Us=yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";jr=`${Ti}${jr}(${Us})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Qn.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Xn[0],Xn[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Qn.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Xn[0],Xn[1],Xn[2]]);break}default:return pe.fail(`Unhandled Diagnostic: ${yi.code}`)}}jr?Ll(jr[jr.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,jr):Qn.shift();for(let[yi,...Xn]of Qn){let Ti=yi.elidedInCompatabilityPyramid;yi.elidedInCompatabilityPyramid=!1,Ll(yi,...Xn),yi.elidedInCompatabilityPyramid=Ti}Cr&&V0(void 0,...Cr)}function Ll(Qt,...Cr){pe.assert(!!D),To&&gd(),!Qt.elidedInCompatabilityPyramid&&(Ji===0?Oe=wu(Oe,Qt,...Cr):Ji--)}function Ef(Qt,...Cr){Ll(Qt,...Cr),Ji++}function UI(Qt){pe.assert(!!Oe),He?He.push(Qt):He=[Qt]}function V0(Qt,Cr,jr){To&&gd();let[Qn,yi]=wpe(Cr,jr),Xn=Cr,Ti=Qn;if(!(jr.flags&131072)&&k2e(Cr)&&!kUt(jr)&&(Xn=uZ(Cr),pe.assert(!dg(Xn,jr),"generalized source shouldn't be assignable"),Ti=Ese(Xn)),(jr.flags&8388608&&!(Cr.flags&8388608)?jr.objectType.flags:jr.flags)&262144&&jr!==mr&&jr!==ln){let No=L_(jr),zo;No&&(dg(Xn,No)||(zo=dg(Cr,No)))?Ll(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,zo?Qn:Ti,yi,no(No)):(Oe=void 0,Ll(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,yi,Ti))}if(Qt)Qt===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&Pt&&Lhn(Cr,jr).length&&(Qt=Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties);else if(v===Ob)Qt=Z.Type_0_is_not_comparable_to_type_1;else if(Qn===yi)Qt=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(Pt&&Lhn(Cr,jr).length)Qt=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(Cr.flags&128&&jr.flags&1048576){let No=rXs(Cr,jr);if(No){Ll(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,Ti,yi,no(No));return}}Qt=Z.Type_0_is_not_assignable_to_type_1}Ll(Qt,Ti,yi)}function xs(Qt,Cr){let jr=Sse(Qt.symbol)?no(Qt,Qt.symbol.valueDeclaration):no(Qt),Qn=Sse(Cr.symbol)?no(Cr,Cr.symbol.valueDeclaration):no(Cr);(hm===Qt&&$r===Cr||af===Qt&&ri===Cr||dI===Qt&&Mn===Cr||xIn()===Qt&&ci===Cr)&&Ll(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Qn,jr)}function to(Qt,Cr,jr){return yA(Qt)?Qt.target.readonly&&OWe(Cr)?(jr&&Ll(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,no(Qt),no(Cr)),!1):L5(Cr):Ype(Qt)&&OWe(Cr)?(jr&&Ll(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,no(Qt),no(Cr)),!1):yA(Cr)?Nv(Qt):!0}function qc(Qt,Cr,jr){return _o(Qt,Cr,3,jr)}function _o(Qt,Cr,jr=3,Qn=!1,yi,Xn=0){if(Qt===Cr)return-1;if(Qt.flags&524288&&Cr.flags&402784252)return v===Ob&&!(Cr.flags&131072)&&D2e(Cr,Qt,v)||D2e(Qt,Cr,v,Qn?Ll:void 0)?-1:(Qn&&du(Qt,Cr,Qt,Cr,yi),0);let Ti=LWe(Qt,!1),Us=LWe(Cr,!0);if(Ti===Us)return-1;if(v===u0)return Ti.flags!==Us.flags?0:Ti.flags&67358815?-1:(Bd(Ti,Us),uSe(Ti,Us,!1,0,jr));if(Ti.flags&262144&&dK(Ti)===Us)return-1;if(Ti.flags&470302716&&Us.flags&1048576){let No=Us.types,zo=No.length===2&&No[0].flags&98304?No[1]:No.length===3&&No[0].flags&98304&&No[1].flags&98304?No[2]:void 0;if(zo&&!(zo.flags&98304)&&(Us=LWe(zo,!0),Ti===Us))return-1}if(v===Ob&&!(Us.flags&131072)&&D2e(Us,Ti,v)||D2e(Ti,Us,v,Qn?Ll:void 0))return-1;if(Ti.flags&469499904||Us.flags&469499904){if(!(Xn&2)&&R9(Ti)&&la(Ti)&8192&&JC(Ti,Us,Qn))return Qn&&V0(yi,Ti,Cr.aliasSymbol?Cr:Us),0;let zo=(v!==Ob||IR(Ti))&&!(Xn&2)&&Ti.flags&405405692&&Ti!==qn&&Us.flags&2621440&&GUt(Us)&&(Gd(Ti).length>0||Zat(Ti)),za=!!(la(Ti)&2048);if(zo&&!WMs(Ti,Us,za)){if(Qn){let _c=no(Qt.aliasSymbol?Qt:Ti),nu=no(Cr.aliasSymbol?Cr:Us),DA=tg(Ti,0),Li=tg(Ti,1);DA.length>0&&_o(ud(DA[0]),Us,1,!1)||Li.length>0&&_o(ud(Li[0]),Us,1,!1)?Ll(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,_c,nu):Ll(Z.Type_0_has_no_properties_in_common_with_type_1,_c,nu)}return 0}Bd(Ti,Us);let ro=Ti.flags&1048576&&Ti.types.length<4&&!(Us.flags&1048576)||Us.flags&1048576&&Us.types.length<4&&!(Ti.flags&469499904)?yh(Ti,Us,Qn,Xn):uSe(Ti,Us,Qn,Xn,jr);if(ro)return ro}return Qn&&du(Qt,Cr,Ti,Us,yi),0}function du(Qt,Cr,jr,Qn,yi){var Xn,Ti;let Us=!!PUt(Qt),No=!!PUt(Cr);jr=Qt.aliasSymbol||Us?Qt:jr,Qn=Cr.aliasSymbol||No?Cr:Qn;let zo=Co>0;if(zo&&Co--,jr.flags&524288&&Qn.flags&524288){let za=Oe;to(jr,Qn,!0),Oe!==za&&(zo=!!Oe)}if(jr.flags&524288&&Qn.flags&402784252)xs(jr,Qn);else if(jr.symbol&&jr.flags&524288&&qn===jr)Ll(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(la(jr)&2048&&Qn.flags&2097152){let za=Qn.types,La=UQ(lS.IntrinsicAttributes,D),ro=UQ(lS.IntrinsicClassAttributes,D);if(!uo(La)&&!uo(ro)&&(k(za,La)||k(za,ro)))return}else Oe=VJt(Oe,Cr);if(!yi&&zo){let za=Kc();V0(yi,jr,Qn);let La;Oe&&Oe!==za.errorInfo&&(La={code:Oe.code,messageText:Oe.messageText}),ka(za),La&&Oe&&(Oe.canonicalHead=La),Mi=[jr,Qn];return}if(V0(yi,jr,Qn),jr.flags&262144&&((Ti=(Xn=jr.symbol)==null?void 0:Xn.declarations)!=null&&Ti[0])&&!dK(jr)){let za=EUt(jr);if(za.constraint=_l(Qn,HQ(jr,za)),_We(za)){let La=no(Qn,jr.symbol.declarations[0]);UI(mo(jr.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,La))}}}function Bd(Qt,Cr){if(ki&&Qt.flags&3145728&&Cr.flags&3145728){let jr=Qt,Qn=Cr;if(jr.objectFlags&Qn.objectFlags&32768)return;let yi=jr.types.length,Xn=Qn.types.length;yi*Xn>1e6&&ki.instant(ki.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Qt.id,sourceSize:yi,targetId:Cr.id,targetSize:Xn,pos:D?.pos,end:D?.end})}}function uf(Qt,Cr){return Ha(Ul(Qt,(Qn,yi)=>{var Xn;yi=fy(yi);let Ti=yi.flags&3145728?yWe(yi,Cr):LQ(yi,Cr),Us=Ti&&Io(Ti)||((Xn=vq(yi,Cr))==null?void 0:Xn.type)||Bt;return Ft(Qn,Us)},void 0)||E)}function JC(Qt,Cr,jr){var Qn;if(!Y2e(Cr)||!Rt&&la(Cr)&4096)return!1;let yi=!!(la(Qt)&2048);if((v===l0||v===Ob)&&(Upe(qn,Cr)||!yi&&lZ(Cr)))return!1;let Xn=Cr,Ti;Cr.flags&1048576&&(Xn=dyn(Qt,Cr,_o)||Ajs(Cr),Ti=Xn.flags&1048576?Xn.types:[Xn]);for(let Us of Gd(Qt))if(bA(Us,Qt.symbol)&&!Zhn(Qt,Us)){if(!rat(Xn,Us.escapedName,yi)){if(jr){let No=nm(Xn,Y2e);if(!D)return pe.fail();if(nQ(D)||eI(D)||eI(D.parent)){Us.valueDeclaration&&EN(Us.valueDeclaration)&&ms(D)===ms(Us.valueDeclaration.name)&&(D=Us.valueDeclaration.name);let zo=kl(Us),za=GCn(zo,No),La=za?kl(za):void 0;La?Ll(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,zo,no(No),La):Ll(Z.Property_0_does_not_exist_on_type_1,zo,no(No))}else{let zo=((Qn=Qt.symbol)==null?void 0:Qn.declarations)&&Nc(Qt.symbol.declarations),za;if(Us.valueDeclaration&&ji(Us.valueDeclaration,La=>La===zo)&&ms(zo)===ms(D)){let La=Us.valueDeclaration;pe.assertNode(La,yw);let ro=La.name;D=ro,Ir(ro)&&(za=FCn(ro,No))}za!==void 0?Ef(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,kl(Us),no(No),za):Ef(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,kl(Us),no(No))}}return!0}if(Ti&&!_o(Io(Us),uf(Ti,Us.escapedName),3,jr))return jr&&Vu(Z.Types_of_property_0_are_incompatible,kl(Us)),!0}return!1}function bA(Qt,Cr){return Qt.valueDeclaration&&Cr.valueDeclaration&&Qt.valueDeclaration.parent===Cr.valueDeclaration}function yh(Qt,Cr,jr,Qn){if(Qt.flags&1048576){if(Cr.flags&1048576){let yi=Qt.origin;if(yi&&yi.flags&2097152&&Cr.aliasSymbol&&k(yi.types,Cr))return-1;let Xn=Cr.origin;if(Xn&&Xn.flags&1048576&&Qt.aliasSymbol&&k(Xn.types,Qt))return-1}return v===Ob?Qf(Qt,Cr,jr&&!(Qt.flags&402784252),Qn):Gv(Qt,Cr,jr&&!(Qt.flags&402784252),Qn)}if(Cr.flags&1048576)return Fd(F2e(Qt),Cr,jr&&!(Qt.flags&402784252)&&!(Cr.flags&402784252),Qn);if(Cr.flags&2097152)return ES(Qt,Cr,jr,2);if(v===Ob&&Cr.flags&402784252){let yi=Tr(Qt.types,Xn=>Xn.flags&465829888?L_(Xn)||cn:Xn);if(yi!==Qt.types){if(Qt=Kg(yi),Qt.flags&131072)return 0;if(!(Qt.flags&2097152))return _o(Qt,Cr,1,!1)||_o(Cr,Qt,1,!1)}}return Qf(Qt,Cr,!1,1)}function Vh(Qt,Cr){let jr=-1,Qn=Qt.types;for(let yi of Qn){let Xn=Fd(yi,Cr,!1,0);if(!Xn)return 0;jr&=Xn}return jr}function Fd(Qt,Cr,jr,Qn){let yi=Cr.types;if(Cr.flags&1048576){if(tG(yi,Qt))return-1;if(v!==Ob&&la(Cr)&32768&&!(Qt.flags&1024)&&(Qt.flags&2688||(v===ck||v===bf)&&Qt.flags&256)){let Ti=Qt===Qt.regularType?Qt.freshType:Qt.regularType,Us=Qt.flags&128?$r:Qt.flags&256?ri:Qt.flags&2048?ao:void 0;return Us&&tG(yi,Us)||Ti&&tG(yi,Ti)?-1:0}let Xn=pmn(Cr,Qt);if(Xn){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}}for(let Xn of yi){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}if(jr){let Xn=Vhn(Qt,Cr,_o);Xn&&_o(Qt,Xn,2,!0,void 0,Qn)}return 0}function ES(Qt,Cr,jr,Qn){let yi=-1,Xn=Cr.types;for(let Ti of Xn){let Us=_o(Qt,Ti,2,jr,void 0,Qn);if(!Us)return 0;yi&=Us}return yi}function Qf(Qt,Cr,jr,Qn){let yi=Qt.types;if(Qt.flags&1048576&&tG(yi,Cr))return-1;let Xn=yi.length;for(let Ti=0;Ti=Ti.types.length&&Xn.length%Ti.types.length===0){let za=_o(No,Ti.types[Us%Ti.types.length],3,!1,void 0,Qn);if(za){yi&=za;continue}}let zo=_o(No,Cr,1,jr,void 0,Qn);if(!zo)return 0;yi&=zo}return yi}function ofe(Qt=E,Cr=E,jr=E,Qn,yi){if(Qt.length!==Cr.length&&v===u0)return 0;let Xn=Qt.length<=Cr.length?Qt.length:Cr.length,Ti=-1;for(let Us=0;Us(_c|=Li?16:8,ro(Li)));let nu;return Yi===3?((Xn=ki)==null||Xn.instant(ki.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Qt.id,sourceIdStack:kt.map(Li=>Li.id),targetId:Cr.id,targetIdStack:vr.map(Li=>Li.id),depth:vn,targetDepth:ii}),nu=3):((Ti=ki)==null||Ti.push(ki.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Qt.id,targetId:Cr.id}),nu=afe(Qt,Cr,jr,Qn),(Us=ki)==null||Us.pop()),yu&&(yu=ro),yi&1&&vn--,yi&2&&ii--,Yi=La,nu?(nu===-1||vn===0&&ii===0)&&DA(nu===-1||nu===3):(v.set(No,2|_c),Ka--,DA(!1)),nu;function DA(Li){for(let ta=za;taUs!==Qt)&&(Xn=_o(Ti,Cr,1,!1,void 0,Qn))}Xn&&!(Qn&2)&&Cr.flags&2097152&&!CK(Cr)&&Qt.flags&2621440?(Xn&=jg(Qt,Cr,jr,void 0,!1,0),Xn&&R9(Qt)&&la(Qt)&8192&&(Xn&=$t(Qt,Cr,!1,jr,0))):Xn&&uot(Cr)&&!L5(Cr)&&Qt.flags&2097152&&fy(Qt).flags&3670016&&!jt(Qt.types,Ti=>Ti===Cr||!!(la(Ti)&262144))&&(Xn&=jg(Qt,Cr,jr,void 0,!0,Qn))}return Xn&&ka(yi),Xn}function y2(Qt,Cr){let jr=fy(N5(Cr)),Qn=[];return DJt(jr,8576,!1,yi=>void Qn.push(_l(Qt,B2e(Cr.mapper,jw(Cr),yi)))),Ha(Qn)}function gSe(Qt,Cr,jr,Qn,yi){let Xn,Ti,Us=!1,No=Qt.flags,zo=Cr.flags;if(v===u0){if(No&3145728){let ro=Vh(Qt,Cr);return ro&&(ro&=Vh(Cr,Qt)),ro}if(No&4194304)return _o(Qt.type,Cr.type,3,!1);if(No&8388608&&(Xn=_o(Qt.objectType,Cr.objectType,3,!1))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,!1))||No&16777216&&Qt.root.isDistributive===Cr.root.isDistributive&&(Xn=_o(Qt.checkType,Cr.checkType,3,!1))&&(Xn&=_o(Qt.extendsType,Cr.extendsType,3,!1))&&(Xn&=_o(fW(Qt),fW(Cr),3,!1))&&(Xn&=_o(IW(Qt),IW(Cr),3,!1))||No&33554432&&(Xn=_o(Qt.baseType,Cr.baseType,3,!1))&&(Xn&=_o(Qt.constraint,Cr.constraint,3,!1)))return Xn;if(No&134217728&&Sc(Qt.texts,Cr.texts)){let ro=Qt.types,_c=Cr.types;Xn=-1;for(let nu=0;nu!!(_c.flags&262144));){if(Xn=_o(ro,Cr,1,!1))return Xn;ro=Xy(ro)}return 0}}else if(zo&4194304){let ro=Cr.type;if(No&4194304&&(Xn=_o(ro,Qt.type,3,!1)))return Xn;if(yA(ro)){if(Xn=_o(Qt,YIn(ro),2,jr))return Xn}else{let _c=kJt(ro);if(_c){if(_o(Qt,ON(_c,Cr.indexFlags|4),2,jr)===-1)return-1}else if(Yb(ro)){let nu=E9(ro),DA=_S(ro),Li;if(nu&&Nse(ro)){let ta=y2(nu,ro);Li=Ha([ta,nu])}else Li=nu||DA;if(_o(Qt,Li,2,jr)===-1)return-1}}}else if(zo&8388608){if(No&8388608){if((Xn=_o(Qt.objectType,Cr.objectType,3,jr))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,jr)),Xn)return Xn;jr&&(Ti=Oe)}if(v===l0||v===Ob){let ro=Cr.objectType,_c=Cr.indexType,nu=L_(ro)||ro,DA=L_(_c)||_c;if(!CK(nu)&&!_K(DA)){let Li=4|(nu!==ro?2:0),ta=pW(nu,DA,Li);if(ta){if(jr&&Ti&&ka(yi),Xn=_o(Qt,ta,2,jr,void 0,Qn))return Xn;jr&&Ti&&Oe&&(Oe=za([Ti])<=za([Oe])?Ti:Oe)}}}jr&&(Ti=void 0)}else if(Yb(Cr)&&v!==u0){let ro=!!Cr.declaration.nameType,_c=qx(Cr),nu=fk(Cr);if(!(nu&8)){if(!ro&&_c.flags&8388608&&_c.objectType===Qt&&_c.indexType===jw(Cr))return-1;if(!Yb(Qt)){let DA=ro?E9(Cr):_S(Cr),Li=ON(Qt,2),ta=nu&4,mu=ta?hWe(DA,Li):void 0;if(ta?!(mu.flags&131072):_o(DA,Li,3)){let Jl=qx(Cr),EA=jw(Cr),Ad=Kpe(Jl,-98305);if(!ro&&Ad.flags&8388608&&Ad.indexType===EA){if(Xn=_o(Qt,Ad.objectType,2,jr))return Xn}else{let ou=ro?mu||DA:mu?Kg([mu,EA]):EA,mm=R1(Qt,ou);if(Xn=_o(mm,Jl,3,jr))return Xn}}Ti=Oe,ka(yi)}}}else if(zo&16777216){if(Dq(Cr,vr,ii,10))return 3;let ro=Cr;if(!ro.root.inferTypeParameters&&!eMs(ro.root)&&!(Qt.flags&16777216&&Qt.root===ro.root)){let _c=!dg(T2e(ro.checkType),T2e(ro.extendsType)),nu=!_c&&dg(EK(ro.checkType),EK(ro.extendsType));if((Xn=_c?-1:_o(Qt,fW(ro),2,!1,void 0,Qn))&&(Xn&=nu?-1:_o(Qt,IW(ro),2,!1,void 0,Qn),Xn))return Xn}}else if(zo&134217728){if(No&134217728){if(v===Ob)return THs(Qt,Cr)?0:-1;_l(Qt,tm)}if(Zot(Qt,Cr))return-1}else if(Cr.flags&268435456&&!(Qt.flags&268435456)&&Fot(Qt,Cr))return-1;if(No&8650752){if(!(No&8388608&&zo&8388608)){let ro=dK(Qt)||cn;if(Xn=_o(ro,Cr,1,!1,void 0,Qn))return Xn;if(Xn=_o(T1(ro,Qt),Cr,1,jr&&ro!==cn&&!(zo&No&262144),void 0,Qn))return Xn;if(ZJt(Qt)){let _c=dK(Qt.indexType);if(_c&&(Xn=_o(R1(Qt.objectType,_c),Cr,1,jr)))return Xn}}}else if(No&4194304){let ro=gUt(Qt.type,Qt.indexFlags)&&la(Qt.type)&32;if(Xn=_o(mc,Cr,1,jr&&!ro))return Xn;if(ro){let _c=Qt.type,nu=E9(_c),DA=nu&&Nse(_c)?y2(nu,_c):nu||_S(_c);if(Xn=_o(DA,Cr,1,jr))return Xn}}else if(No&134217728&&!(zo&524288)){if(!(zo&134217728)){let ro=L_(Qt);if(ro&&ro!==Qt&&(Xn=_o(ro,Cr,1,jr)))return Xn}}else if(No&268435456)if(zo&268435456){if(Qt.symbol!==Cr.symbol)return 0;if(Xn=_o(Qt.type,Cr.type,3,jr))return Xn}else{let ro=L_(Qt);if(ro&&(Xn=_o(ro,Cr,1,jr)))return Xn}else if(No&16777216){if(Dq(Qt,kt,vn,10))return 3;if(zo&16777216){let nu=Qt.root.inferTypeParameters,DA=Qt.extendsType,Li;if(nu){let ta=Z2e(nu,void 0,0,qc);nG(ta.inferences,Cr.extendsType,DA,1536),DA=_l(DA,ta.mapper),Li=ta.mapper}if(rG(DA,Cr.extendsType)&&(_o(Qt.checkType,Cr.checkType,3)||_o(Cr.checkType,Qt.checkType,3))&&((Xn=_o(_l(fW(Qt),Li),fW(Cr),3,jr))&&(Xn&=_o(IW(Qt),IW(Cr),3,jr)),Xn))return Xn}let ro=xJt(Qt);if(ro&&(Xn=_o(ro,Cr,1,jr)))return Xn;let _c=!(zo&16777216)&&_We(Qt)?qfn(Qt):void 0;if(_c&&(ka(yi),Xn=_o(_c,Cr,1,jr)))return Xn}else{if(v!==ck&&v!==bf&&c3s(Cr)&&lZ(Qt))return-1;if(Yb(Cr))return Yb(Qt)&&(Xn=zn(Qt,Cr,jr))?Xn:0;let ro=!!(No&402784252);if(v!==u0)Qt=fy(Qt),No=Qt.flags;else if(Yb(Qt))return 0;if(la(Qt)&4&&la(Cr)&4&&Qt.target===Cr.target&&!yA(Qt)&&!(Cot(Qt)||Cot(Cr))){if(Sot(Qt))return-1;let _c=FUt(Qt.target);if(_c===E)return 1;let nu=La(lf(Qt),lf(Cr),_c,Qn);if(nu!==void 0)return nu}else{if(Ype(Cr)?RE(Qt,L5):Nv(Cr)&&RE(Qt,_c=>yA(_c)&&!_c.target.readonly))return v!==u0?_o(D5(Qt,ri)||hr,D5(Cr,ri)||hr,3,jr):0;if(hW(Qt)&&yA(Cr)&&!hW(Cr)){let _c=WN(Qt);if(_c!==Qt)return _o(_c,Cr,1,jr)}else if((v===ck||v===bf)&&lZ(Cr)&&la(Cr)&8192&&!lZ(Qt))return 0}if(No&2621440&&zo&524288){let _c=jr&&Oe===yi.errorInfo&&!ro;if(Xn=jg(Qt,Cr,_c,void 0,!1,Qn),Xn&&(Xn&=Sp(Qt,Cr,0,_c,Qn),Xn&&(Xn&=Sp(Qt,Cr,1,_c,Qn),Xn&&(Xn&=$t(Qt,Cr,ro,_c,Qn)))),Us&&Xn)Oe=Ti||Oe||yi.errorInfo;else if(Xn)return Xn}if(No&2621440&&zo&1048576){let _c=Kpe(Cr,36175872);if(_c.flags&1048576){let nu=as(Qt,_c);if(nu)return nu}}}return 0;function za(ro){return ro?Ul(ro,(_c,nu)=>_c+1+za(nu.next),0):0}function La(ro,_c,nu,DA){if(Xn=ofe(ro,_c,nu,jr,DA))return Xn;if(jt(nu,ta=>!!(ta&24))){Ti=void 0,ka(yi);return}let Li=_c&&OMs(_c,nu);if(Us=!Li,nu!==E&&!Li){if(Us&&!(jr&&jt(nu,ta=>(ta&7)===0)))return 0;Ti=Oe,ka(yi)}}}function zn(Qt,Cr,jr){if(v===Ob||(v===u0?fk(Qt)===fk(Cr):Fpe(Qt)<=Fpe(Cr))){let yi,Xn=_S(Cr),Ti=_l(_S(Qt),Fpe(Qt)<0?jp:tm);if(yi=_o(Xn,Ti,3,jr)){let Us=N1([jw(Qt)],[jw(Cr)]);if(_l(E9(Qt),Us)===_l(E9(Cr),Us))return yi&_o(_l(qx(Qt),Us),qx(Cr),3,jr)}}return 0}function as(Qt,Cr){var jr;let Qn=Gd(Qt),yi=dmn(Qn,Cr);if(!yi)return 0;let Xn=1;for(let La of yi)if(Xn*=rYs(AR(La)),Xn>25)return(jr=ki)==null||jr.instant(ki.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Qt.id,targetId:Cr.id,numCombinations:Xn}),0;let Ti=new Array(yi.length),Us=new Set;for(let La=0;LaLa[nu],!1,0,ot||v===Ob))continue e}Qi(zo,_c,yg),ro=!0}if(!ro)return 0}let za=-1;for(let La of zo)if(za&=jg(Qt,La,!1,Us,!1,0),za&&(za&=Sp(Qt,La,0,!1,0),za&&(za&=Sp(Qt,La,1,!1,0),za&&!(yA(Qt)&&yA(La))&&(za&=$t(Qt,La,!1,!1,0)))),!za)return za;return za}function Ms(Qt,Cr){if(!Cr||Qt.length===0)return Qt;let jr;for(let Qn=0;Qn5?Ll(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,no(Qt),no(Cr),At(Xn.slice(0,4),Ti=>kl(Ti)).join(", "),Xn.length-4):Ll(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,no(Qt),no(Cr),At(Xn,Ti=>kl(Ti)).join(", ")),yi&&Oe&&Co++)}function jg(Qt,Cr,jr,Qn,yi,Xn){if(v===u0)return nA(Qt,Cr,Qn);let Ti=-1;if(yA(Cr)){if(L5(Qt)){if(!Cr.target.readonly&&(Ype(Qt)||yA(Qt)&&Qt.target.readonly))return 0;let La=B9(Qt),ro=B9(Cr),_c=yA(Qt)?Qt.target.combinedFlags&4:4,nu=!!(Cr.target.combinedFlags&12),DA=yA(Qt)?Qt.target.minLength:0,Li=Cr.target.minLength;if(!_c&&La=Jl?ro-1-Math.min(Cm,EA):ou,W0=Cr.target.elementFlags[W_];if(W0&8&&!(mm&8))return jr&&Ll(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,W_),0;if(mm&8&&!(W0&12))return jr&&Ll(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,ou,W_),0;if(W0&1&&!(mm&1))return jr&&Ll(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,W_),0;if(Ad&&((mm&12||W0&12)&&(Ad=!1),Ad&&Qn?.has(""+ou)))continue;let Uy=AZ(ta[ou],!!(mm&W0&2)),IZ=mu[W_],Q5=mm&8&&W0&4?d0(IZ):AZ(IZ,!!(W0&2)),zQ=_o(Uy,Q5,3,jr,void 0,Xn);if(!zQ)return jr&&(ro>1||La>1)&&(nu&&ou>=Jl&&Cm>=EA&&Jl!==La-EA-1?Vu(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Jl,La-EA-1,W_):Vu(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,ou,W_)),0;Ti&=zQ}return Ti}if(Cr.target.combinedFlags&12)return 0}let Us=(v===ck||v===bf)&&!R9(Qt)&&!Sot(Qt)&&!yA(Qt),No=qUt(Qt,Cr,Us,!1);if(No)return jr&&tC(Qt,Cr)&&tc(Qt,Cr,No,Us),0;if(R9(Cr)){for(let La of Ms(Gd(Qt),Qn))if(!LQ(Cr,La.escapedName)&&!(Io(La).flags&32768))return jr&&Ll(Z.Property_0_does_not_exist_on_type_1,kl(La),no(Cr)),0}let zo=Gd(Cr),za=yA(Qt)&&yA(Cr);for(let La of Ms(zo,Qn)){let ro=La.escapedName;if(!(La.flags&4194304)&&(!za||IN(ro)||ro==="length")&&(!yi||La.flags&16777216)){let _c=Gg(Qt,ro);if(_c&&_c!==La){let nu=ea(Qt,Cr,_c,La,AR,jr,Xn,v===Ob);if(!nu)return 0;Ti&=nu}}}return Ti}function nA(Qt,Cr,jr){if(!(Qt.flags&524288&&Cr.flags&524288))return 0;let Qn=Ms(S9(Qt),jr),yi=Ms(S9(Cr),jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti of Qn){let Us=LQ(Cr,Ti.escapedName);if(!Us)return 0;let No=LUt(Ti,Us,_o);if(!No)return 0;Xn&=No}return Xn}function Sp(Qt,Cr,jr,Qn,yi){var Xn,Ti;if(v===u0)return Y5(Qt,Cr,jr);if(Cr===$d||Qt===$d)return-1;let Us=Qt.symbol&&YN(Qt.symbol.valueDeclaration),No=Cr.symbol&&YN(Cr.symbol.valueDeclaration),zo=tg(Qt,Us&&jr===1?0:jr),za=tg(Cr,No&&jr===1?0:jr);if(jr===1&&zo.length&&za.length){let DA=!!(zo[0].flags&4),Li=!!(za[0].flags&4);if(DA&&!Li)return Qn&&Ll(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!Di(zo[0],za[0],Qn))return 0}let La=-1,ro=jr===1?Qb:P0,_c=la(Qt),nu=la(Cr);if(_c&64&&nu&64&&Qt.symbol===Cr.symbol||_c&4&&nu&4&&Qt.target===Cr.target){pe.assertEqual(zo.length,za.length);for(let DA=0;DAlW(Jl,void 0,262144,jr);return Ll(Z.Type_0_is_not_assignable_to_type_1,mu(Li),mu(ta)),Ll(Z.Types_of_construct_signatures_are_incompatible),La}}else e:for(let DA of za){let Li=Kc(),ta=Qn;for(let mu of zo){let Jl=H5(mu,DA,!0,ta,yi,ro(mu,DA));if(Jl){La&=Jl,ka(Li);continue e}ta=!1}return ta&&Ll(Z.Type_0_provides_no_match_for_the_signature_1,no(Qt),lW(DA,void 0,void 0,jr)),0}return La}function tC(Qt,Cr){let jr=bWe(Qt,0),Qn=bWe(Qt,1),yi=S9(Qt);return(jr.length||Qn.length)&&!yi.length?!!(tg(Cr,0).length&&jr.length||tg(Cr,1).length&&Qn.length):!0}function P0(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,no(jr),no(Qn)):(jr,Qn)=>Vu(Z.Call_signature_return_types_0_and_1_are_incompatible,no(jr),no(Qn))}function Qb(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,no(jr),no(Qn)):(jr,Qn)=>Vu(Z.Construct_signature_return_types_0_and_1_are_incompatible,no(jr),no(Qn))}function H5(Qt,Cr,jr,Qn,yi,Xn){let Ti=v===ck?16:v===bf?24:0;return RUt(jr?b2e(Qt):Qt,jr?b2e(Cr):Cr,Ti,Qn,Ll,Xn,Us,tm);function Us(No,zo,za){return _o(No,zo,3,za,void 0,yi)}}function Y5(Qt,Cr,jr){let Qn=tg(Qt,jr),yi=tg(Cr,jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti=0;TiNo.keyType===$r),Us=-1;for(let No of Xn){let zo=v!==bf&&!jr&&Ti&&No.type.flags&1?-1:Yb(Qt)&&Ti?_o(qx(Qt),No.type,3,Qn):lt(Qt,No,Qn,yi);if(!zo)return 0;Us&=zo}return Us}function lt(Qt,Cr,jr,Qn){let yi=m2e(Qt,Cr.keyType);return yi?Yat(yi,Cr,jr,Qn):!(Qn&1)&&(v!==bf||la(Qt)&8192)&&Not(Qt)?FOe(Qt,Cr,jr,Qn):(jr&&Ll(Z.Index_signature_for_type_0_is_missing_in_type_1,no(Cr.keyType),no(Qt)),0)}function hi(Qt,Cr){let jr=A0(Qt),Qn=A0(Cr);if(jr.length!==Qn.length)return 0;for(let yi of Qn){let Xn=$x(Qt,yi.keyType);if(!(Xn&&_o(Xn.type,yi.type,3)&&Xn.isReadonly===yi.isReadonly))return 0}return-1}function Di(Qt,Cr,jr){if(!Qt.declaration||!Cr.declaration)return!0;let Qn=MY(Qt.declaration,6),yi=MY(Cr.declaration,6);return yi===2||yi===4&&Qn!==2||yi!==4&&!Qn?!0:(jr&&Ll(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,w5(Qn),w5(yi)),!1)}}function kUt(u){if(u.flags&16)return!1;if(u.flags&3145728)return!!F(u.types,kUt);if(u.flags&465829888){let m=dK(u);if(m&&m!==u)return kUt(m)}return IR(u)||!!(u.flags&134217728)||!!(u.flags&268435456)}function Lhn(u,m){return yA(u)&&yA(m)?E:Gd(m).filter(v=>mot(Pi(u,v.escapedName),Io(v)))}function mot(u,m){return!!u&&!!m&&ah(u,32768)&&!!G2e(m)}function PMs(u){return Gd(u).filter(m=>G2e(Io(m)))}function Vhn(u,m,v=wUt){return dyn(u,m,v)||cjs(u,m)||ljs(u,m)||ujs(u,m)||gjs(u,m)}function xUt(u,m,v){let D=u.types,P=D.map(oe=>oe.flags&402784252?0:-1);for(let[oe,Be]of m){let Oe=!1;for(let He=0;He!!v(Vt,qe))?Oe=!0:P[He]=3)}for(let He=0;HeP[Be]),0):u;return Y.flags&131072?u:Y}function GUt(u){if(u.flags&524288){let m=pR(u);return m.callSignatures.length===0&&m.constructSignatures.length===0&&m.indexInfos.length===0&&m.properties.length>0&&ue(m.properties,v=>!!(v.flags&16777216))}return u.flags&33554432?GUt(u.baseType):u.flags&2097152?ue(u.types,GUt):!1}function WMs(u,m,v){for(let D of Gd(u))if(rat(m,D.escapedName,v))return!0;return!1}function FUt(u){return u===NA||u===uA||u.objectFlags&8?Ne:Whn(u.symbol,u.typeParameters)}function Phn(u){return Whn(u,fa(u).typeParameters)}function Whn(u,m=E){var v,D;let P=fa(u);if(!P.variances){(v=ki)==null||v.push(ki.Phase.CheckTypes,"getVariancesWorker",{arity:m.length,id:QC(Fp(u))});let Y=OU,oe=a9;OU||(OU=!0,a9=Mx.length),P.variances=E;let Be=[];for(let Oe of m){let He=ZUt(Oe),qe=He&16384?He&8192?0:1:He&8192?2:void 0;if(qe===void 0){let Vt=!1,kt=!1,vr=yu;yu=ii=>ii?kt=!0:Vt=!0;let dn=VWe(u,Oe,_f),vn=VWe(u,Oe,QI);qe=(dg(vn,dn)?1:0)|(dg(dn,vn)?2:0),qe===3&&dg(VWe(u,Oe,ve),dn)&&(qe=4),yu=vr,(Vt||kt)&&(Vt&&(qe|=8),kt&&(qe|=16))}Be.push(qe)}Y||(OU=!1,a9=oe),P.variances=Be,(D=ki)==null||D.pop({variances:Be.map(pe.formatVariance)})}return P.variances}function VWe(u,m,v){let D=HQ(m,v),P=Fp(u);if(uo(P))return P;let Y=u.flags&524288?xse(u,cZ(fa(u).typeParameters,D)):iZ(P,cZ(P.typeParameters,D));return on.add(QC(Y)),Y}function Cot(u){return on.has(QC(u))}function ZUt(u){var m;return Ul((m=u.symbol)==null?void 0:m.declarations,(v,D)=>v|o_(D),0)&28672}function OMs(u,m){for(let v=0;v!!(m.flags&262144)||_ot(m))}function YMs(u,m,v,D){let P=[],Y="",oe=Oe(u,0),Be=Oe(m,0);return`${Y}${oe},${Be}${v}`;function Oe(He,qe=0){let Vt=""+He.target.id;for(let kt of lf(He)){if(kt.flags&262144){if(D||MMs(kt)){let vr=P.indexOf(kt);vr<0&&(vr=P.length,P.push(kt)),Vt+="="+vr;continue}Y="*"}else if(qe<4&&_ot(kt)){Vt+="<"+Oe(kt,qe+1)+">";continue}Vt+="-"+kt.id}return Vt}}function yot(u,m,v,D,P){if(D===u0&&u.id>m.id){let oe=u;u=m,m=oe}let Y=v?":"+v:"";return _ot(u)&&_ot(m)?YMs(u,m,Y,P):`${u.id},${m.id}${Y}`}function PWe(u,m){if(iI(u)&6){for(let v of u.links.containingType.types){let D=Gg(v,u.escapedName),P=D&&PWe(D,m);if(P)return P}return}return m(u)}function Nq(u){return u.parent&&u.parent.flags&32?Fp($m(u)):void 0}function bot(u){let m=Nq(u),v=m&&Kw(m)[0];return v&&Pi(v,u.escapedName)}function QMs(u,m){return PWe(u,v=>{let D=Nq(v);return D?da(D,m):!1})}function XMs(u,m){return!PWe(m,v=>u2(v)&4?!QMs(u,Nq(v)):!1)}function Ohn(u,m,v){return PWe(m,D=>u2(D,v)&4?!da(u,Nq(D)):!1)?void 0:u}function Dq(u,m,v,D=3){if(v>=D){if((la(u)&96)===96&&(u=Mhn(u)),u.flags&2097152)return jt(u.types,Be=>Dq(Be,m,v,D));let P=Eot(u),Y=0,oe=0;for(let Be=0;Be=oe&&(Y++,Y>=D))return!0;oe=Oe.id}}}return!1}function Mhn(u){let m;for(;(la(u)&96)===96&&(m=N5(u))&&(m.symbol||m.flags&2097152&&jt(m.types,v=>!!v.symbol));)u=m;return u}function Hhn(u,m){return(la(u)&96)===96&&(u=Mhn(u)),u.flags&2097152?jt(u.types,v=>Hhn(v,m)):Eot(u)===m}function Eot(u){if(u.flags&524288&&!eKt(u)){if(la(u)&4&&u.node)return u.node;if(u.symbol&&!(la(u)&16&&u.symbol.flags&32))return u.symbol;if(yA(u))return u.target}if(u.flags&262144)return u.symbol;if(u.flags&8388608){do u=u.objectType;while(u.flags&8388608);return u}return u.flags&16777216?u.root:u}function JMs(u,m){return LUt(u,m,R2e)!==0}function LUt(u,m,v){if(u===m)return-1;let D=u2(u)&6,P=u2(m)&6;if(D!==P)return 0;if(D){if(Jse(u)!==Jse(m))return 0}else if((u.flags&16777216)!==(m.flags&16777216))return 0;return yR(u)!==yR(m)?0:v(Io(u),Io(m))}function UMs(u,m,v){let D=NE(u),P=NE(m),Y=_R(u),oe=_R(m),Be=Ck(u),Oe=Ck(m);return!!(D===P&&Y===oe&&Be===Oe||v&&Y<=oe)}function WWe(u,m,v,D,P,Y){if(u===m)return-1;if(!UMs(u,m,v)||B(u.typeParameters)!==B(m.typeParameters))return 0;if(m.typeParameters){let Oe=N1(u.typeParameters,m.typeParameters);for(let He=0;Hem|(v.flags&1048576?Yhn(v.types):v.flags),0)}function zMs(u){if(u.length===1)return u[0];let m=ot?Tr(u,D=>nm(D,P=>!(P.flags&98304))):u,v=jMs(m)?Ha(m):qMs(m);return m===u?v:HWe(v,Yhn(u)&98304)}function qMs(u){let m=Ul(u,(v,D)=>Hpe(v,D)?D:v);return ue(u,v=>v===m||Hpe(v,m))?m:Ul(u,(v,D)=>YQ(v,D)?D:v)}function $Ms(u){return Ul(u,(m,v)=>YQ(v,m)?v:m)}function Nv(u){return!!(la(u)&4)&&(u.target===NA||u.target===uA)}function Ype(u){return!!(la(u)&4)&&u.target===uA}function L5(u){return Nv(u)||yA(u)}function OWe(u){return Nv(u)&&!Ype(u)||yA(u)&&!u.target.readonly}function MWe(u){return Nv(u)?lf(u)[0]:void 0}function T9(u){return Nv(u)||!(u.flags&98304)&&dg(u,E1)}function VUt(u){return OWe(u)||!(u.flags&98305)&&dg(u,d_)}function PUt(u){if(!(la(u)&4)||!(la(u.target)&3))return;if(la(u)&33554432)return la(u)&67108864?u.cachedEquivalentBaseType:void 0;u.objectFlags|=33554432;let m=u.target;if(la(m)&1){let P=XB(m);if(P&&P.expression.kind!==80&&P.expression.kind!==212)return}let v=Kw(m);if(v.length!==1||pk(u.symbol).size)return;let D=B(m.typeParameters)?_l(v[0],N1(m.typeParameters,lf(u).slice(0,m.typeParameters.length))):v[0];return B(lf(u))>B(m.typeParameters)&&(D=T1(D,Ei(lf(u)))),u.objectFlags|=67108864,u.cachedEquivalentBaseType=D}function Qhn(u){return ot?u===Ui:u===xe}function Sot(u){let m=MWe(u);return!!m&&Qhn(m)}function Qpe(u){let m;return yA(u)||!!Gg(u,"0")||T9(u)&&!!(m=Pi(u,"length"))&&RE(m,v=>!!(v.flags&256))}function vot(u){return T9(u)||Qpe(u)}function eHs(u,m){let v=Pi(u,""+m);if(v)return v;if(RE(u,yA))return Khn(u,m,Te.noUncheckedIndexedAccess?Bt:void 0)}function tHs(u){return!(u.flags&240544)}function IR(u){return!!(u.flags&109472)}function Xhn(u){let m=WN(u);return m.flags&2097152?jt(m.types,IR):IR(m)}function rHs(u){return u.flags&2097152&&de(u.types,IR)||u}function k2e(u){return u.flags&16?!0:u.flags&1048576?u.flags&1024?!0:ue(u.types,IR):IR(u)}function uZ(u){return u.flags&1056?Qst(u):u.flags&402653312?$r:u.flags&256?ri:u.flags&2048?ao:u.flags&512?Mn:u.flags&1048576?nHs(u):u}function nHs(u){let m=`B${QC(u)}`;return Hy(m)??HB(m,Yf(u,uZ))}function WUt(u){return u.flags&402653312?$r:u.flags&288?ri:u.flags&2048?ao:u.flags&512?Mn:u.flags&1048576?Yf(u,WUt):u}function V5(u){return u.flags&1056&&MQ(u)?Qst(u):u.flags&128&&MQ(u)?$r:u.flags&256&&MQ(u)?ri:u.flags&2048&&MQ(u)?ao:u.flags&512&&MQ(u)?Mn:u.flags&1048576?Yf(u,V5):u}function Jhn(u){return u.flags&8192?ci:u.flags&1048576?Yf(u,Jhn):u}function OUt(u,m){return hat(u,m)||(u=Jhn(V5(u))),Iy(u)}function iHs(u,m,v){if(u&&IR(u)){let D=m?v?tSe(m):m:void 0;u=OUt(u,D)}return u}function MUt(u,m,v,D){if(u&&IR(u)){let P=m?D9(v,m,D):void 0;u=OUt(u,P)}return u}function yA(u){return!!(la(u)&4&&u.target.objectFlags&8)}function hW(u){return yA(u)&&!!(u.target.combinedFlags&8)}function Uhn(u){return hW(u)&&u.target.elementFlags.length===1}function Bot(u){return Xpe(u,u.target.fixedLength)}function Khn(u,m,v){return Yf(u,D=>{let P=D,Y=Bot(P);return Y?v&&m>=oUt(P.target)?Ha([Y,v]):Y:Bt})}function sHs(u){let m=Bot(u);return m&&d0(m)}function Xpe(u,m,v=0,D=!1,P=!1){let Y=B9(u)-v;if(m(v&12)===(m.target.elementFlags[D]&12))}function jhn({value:u}){return u.base10Value==="0"}function zhn(u){return nm(u,m=>hR(m,4194304))}function aHs(u){return Yf(u,cHs)}function cHs(u){return u.flags&4?Ase:u.flags&8?mpe:u.flags&64?dse:u===Ys||u===Bs||u.flags&114691||u.flags&128&&u.value===""||u.flags&256&&u.value===0||u.flags&2048&&jhn(u)?u:Wi}function HWe(u,m){let v=m&~u.flags&98304;return v===0?u:Ha(v===32768?[u,Bt]:v===65536?[u,Hn]:[u,Bt,Hn])}function mW(u,m=!1){pe.assert(ot);let v=m?Je:Bt;return u===v||u.flags&1048576&&u.types[0]===v?u:Ha([u,v])}function lHs(u){return gy||(gy=Fse("NonNullable",524288,void 0)||it),gy!==it?xse(gy,[u]):Kg([u,Xg])}function gZ(u){return ot?wK(u,2097152):u}function qhn(u){return ot?Ha([u,In]):u}function wot(u){return ot?Vot(u,In):u}function Tot(u,m,v){return v?i3(m)?mW(u):qhn(u):u}function x2e(u,m){return gY(m)?gZ(u):GC(m)?wot(u):u}function AZ(u,m){return Pt&&m?Vot(u,fr):u}function G2e(u){return u===fr||!!(u.flags&1048576)&&u.types[0]===fr}function Rot(u){return Pt?Vot(u,fr):Dv(u,524288)}function uHs(u,m){return(u.flags&524)!==0&&(m.flags&28)!==0}function Not(u){let m=la(u);return u.flags&2097152?ue(u.types,Not):!!(u.symbol&&u.symbol.flags&7040&&!(u.symbol.flags&32)&&!Zat(u))||!!(m&4194304)||!!(m&1024&&Not(u.source))}function SK(u,m){let v=gA(u.flags,u.escapedName,iI(u)&8);v.declarations=u.declarations,v.parent=u.parent,v.links.type=m,v.links.target=u,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration);let D=fa(u).nameType;return D&&(v.links.nameType=D),v}function gHs(u,m){let v=qu();for(let D of S9(u)){let P=Io(D),Y=m(P);v.set(D.escapedName,Y===P?D:SK(D,Y))}return v}function F2e(u){if(!(R9(u)&&la(u)&8192))return u;let m=u.regularType;if(m)return m;let v=u,D=gHs(u,F2e),P=Hf(v.symbol,D,v.callSignatures,v.constructSignatures,v.indexInfos);return P.flags=v.flags,P.objectFlags|=v.objectFlags&-8193,u.regularType=P,P}function $hn(u,m,v){return{parent:u,propertyName:m,siblings:v,resolvedProperties:void 0}}function emn(u){if(!u.siblings){let m=[];for(let v of emn(u.parent))if(R9(v)){let D=LQ(v,u.propertyName);D&&TK(Io(D),P=>{m.push(P)})}u.siblings=m}return u.siblings}function AHs(u){if(!u.resolvedProperties){let m=new Map;for(let v of emn(u))if(R9(v)&&!(la(v)&2097152))for(let D of Gd(v))m.set(D.escapedName,D);u.resolvedProperties=Do(m.values())}return u.resolvedProperties}function dHs(u,m){if(!(u.flags&4))return u;let v=Io(u),D=m&&$hn(m,u.escapedName,void 0),P=HUt(v,D);return P===v?u:SK(u,P)}function pHs(u){let m=pt.get(u.escapedName);if(m)return m;let v=SK(u,Je);return v.flags|=16777216,pt.set(u.escapedName,v),v}function fHs(u,m){let v=qu();for(let P of S9(u))v.set(P.escapedName,dHs(P,m));if(m)for(let P of AHs(m))v.has(P.escapedName)||v.set(P.escapedName,pHs(P));let D=Hf(u.symbol,v,E,E,Tr(A0(u),P=>eG(P.keyType,D1(P.type),P.isReadonly,P.declaration,P.components)));return D.objectFlags|=la(u)&266240,D}function D1(u){return HUt(u,void 0)}function HUt(u,m){if(la(u)&196608){if(m===void 0&&u.widened)return u.widened;let v;if(u.flags&98305)v=hr;else if(R9(u))v=fHs(u,m);else if(u.flags&1048576){let D=m||$hn(void 0,void 0,u.types),P=Tr(u.types,Y=>Y.flags&98304?Y:HUt(Y,D));v=Ha(P,jt(P,lZ)?2:1)}else u.flags&2097152?v=Kg(Tr(u.types,D1)):L5(u)&&(v=iZ(u.target,Tr(lf(u),D1)));return v&&m===void 0&&(u.widened=v),v||u}return u}function Dot(u){var m;let v=!1;if(la(u)&65536){if(u.flags&1048576)if(jt(u.types,lZ))v=!0;else for(let D of u.types)v||(v=Dot(D));else if(L5(u))for(let D of lf(u))v||(v=Dot(D));else if(R9(u))for(let D of S9(u)){let P=Io(D);if(la(P)&65536&&(v=Dot(P),!v)){let Y=(m=D.declarations)==null?void 0:m.find(oe=>{var Be;return((Be=oe.symbol.valueDeclaration)==null?void 0:Be.parent)===u.symbol.valueDeclaration});Y&&(Sr(Y,Z.Object_literal_s_property_0_implicitly_has_an_1_type,kl(D),no(D1(P))),v=!0)}}}return v}function P5(u,m,v){let D=no(D1(m));if(wo(u)&&!rz(ms(u),Te))return;let P;switch(u.kind){case 227:case 173:case 172:P=Rt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 170:let Y=u;if(Ir(Y.name)){let oe=iv(Y.name);if((wg(Y.parent)||hl(Y.parent)||x_(Y.parent))&&Y.parent.parameters.includes(Y)&&(An(Y,Y.name.escapedText,788968,void 0,!0)||oe&&EAe(oe))){let Be="arg"+Y.parent.parameters.indexOf(Y),Oe=Wd(Y.name)+(Y.dotDotDotToken?"[]":"");Hw(Rt,u,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Be,Oe);return}}P=u.dotDotDotToken?Rt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Rt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 209:if(P=Z.Binding_element_0_implicitly_has_an_1_type,!Rt)return;break;case 318:Sr(u,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 324:Rt&&Cie(u.parent)&&Sr(u.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 263:case 175:case 174:case 178:case 179:case 219:case 220:if(Rt&&!u.name){v===3?Sr(u,Z.Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation,D):Sr(u,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}P=Rt?v===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 201:Rt&&Sr(u,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:P=Rt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}Hw(Rt,u,P,Wd(Il(u)),D)}function IHs(u,m){let v=zot(u);if(!v)return!0;let D=ud(v),P=SI(u);switch(m){case 1:return P&1?D=D9(1,D,!!(P&2))??D:P&2&&(D=pZ(D)??D),G5(D);case 3:let Y=D9(0,D,!!(P&2));return!!Y&&G5(Y);case 2:let oe=D9(2,D,!!(P&2));return!!oe&&G5(oe)}return!1}function kot(u,m,v){g(()=>{Rt&&la(m)&65536&&(!v||kd(u)&&IHs(u,v))&&(Dot(m)||P5(u,m,v))})}function YUt(u,m,v){let D=NE(u),P=NE(m),Y=U2e(u),oe=U2e(m),Be=oe?P-1:P,Oe=Y?Be:Math.min(D,Be),He=k5(u);if(He){let qe=k5(m);qe&&v(He,qe)}for(let qe=0;qem.typeParameter),At(u.inferences,(m,v)=>()=>(m.isFixed||(CHs(u),xot(u.inferences),m.isFixed=!0),tKt(u,v))))}function mHs(u){return bUt(At(u.inferences,m=>m.typeParameter),At(u.inferences,(m,v)=>()=>tKt(u,v)))}function xot(u){for(let m of u)m.isFixed||(m.inferredType=void 0)}function JUt(u,m,v){(u.intraExpressionInferenceSites??(u.intraExpressionInferenceSites=[])).push({node:m,type:v})}function CHs(u){if(u.intraExpressionInferenceSites){for(let{node:m,type:v}of u.intraExpressionInferenceSites){let D=m.kind===175?oCn(m,2):Jy(m,2);D&&nG(u.inferences,v,D)}u.intraExpressionInferenceSites=void 0}}function UUt(u){return{typeParameter:u,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function rmn(u){return{typeParameter:u.typeParameter,candidates:u.candidates&&u.candidates.slice(),contraCandidates:u.contraCandidates&&u.contraCandidates.slice(),inferredType:u.inferredType,priority:u.priority,topLevel:u.topLevel,isFixed:u.isFixed,impliedArity:u.impliedArity}}function _Hs(u){let m=Me(u.inferences,Xse);return m.length?XUt(At(m,rmn),u.signature,u.flags,u.compareTypes):void 0}function KUt(u){return u&&u.mapper}function CW(u){let m=la(u);if(m&524288)return!!(m&1048576);let v=!!(u.flags&465829888||u.flags&524288&&!nmn(u)&&(m&4&&(u.node||jt(lf(u),CW))||m&16&&u.symbol&&u.symbol.flags&14384&&u.symbol.declarations||m&12583968)||u.flags&3145728&&!(u.flags&1024)&&!nmn(u)&&jt(u.types,CW));return u.flags&3899393&&(u.objectFlags|=524288|(v?1048576:0)),v}function nmn(u){if(u.aliasSymbol&&!u.aliasTypeArguments){let m=Cp(u.aliasSymbol,266);return!!(m&&ji(m.parent,v=>v.kind===308?!0:v.kind===268?!1:"quit"))}return!1}function L2e(u,m,v=0){return!!(u===m||u.flags&3145728&&jt(u.types,D=>L2e(D,m,v))||v<3&&u.flags&16777216&&(L2e(fW(u),m,v+1)||L2e(IW(u),m,v+1)))}function yHs(u,m){let v=Tv(u);return v?!!v.type&&L2e(v.type,m):L2e(ud(u),m)}function bHs(u){let m=qu();TK(u,D=>{if(!(D.flags&128))return;let P=Ap(D.value),Y=gA(4,P);Y.links.type=hr,D.symbol&&(Y.declarations=D.symbol.declarations,Y.valueDeclaration=D.symbol.valueDeclaration),m.set(P,Y)});let v=u.flags&4?[eG($r,Xg,!1)]:E;return Hf(void 0,m,E,E,v)}function imn(u,m,v){let D=u.id+","+m.id+","+v.id;if(Z_.has(D))return Z_.get(D);let P=EHs(u,m,v);return Z_.set(D,P),P}function jUt(u){return!(la(u)&262144)||R9(u)&&jt(Gd(u),m=>jUt(Io(m)))||yA(u)&&jt(WQ(u),jUt)}function EHs(u,m,v){if(!($x(u,$r)||Gd(u).length!==0&&jUt(u)))return;if(Nv(u)){let P=Got(lf(u)[0],m,v);return P?d0(P,Ype(u)):void 0}if(yA(u)){let P=At(WQ(u),oe=>Got(oe,m,v));if(!ue(P,oe=>!!oe))return;let Y=fk(m)&4?Tr(u.target.elementFlags,oe=>oe&2?1:oe):u.target.elementFlags;return hk(P,Y,u.target.readonly,u.target.labeledElementDeclarations)}let D=Lh(1040,void 0);return D.source=u,D.mappedType=m,D.constraintType=v,D}function SHs(u){let m=fa(u);return m.type||(m.type=Got(u.links.propertyType,u.links.mappedType,u.links.constraintType)||cn),m.type}function vHs(u,m,v){let D=R1(v.type,jw(m)),P=qx(m),Y=UUt(D);return nG([Y],u,P),smn(Y)||cn}function Got(u,m,v){let D=u.id+","+m.id+","+v.id;if(b1.has(D))return b1.get(D)||cn;l5.push(u),YU.push(m);let P=u5;Dq(u,l5,l5.length,2)&&(u5|=1),Dq(m,YU,YU.length,2)&&(u5|=2);let Y;return u5!==3&&(Y=vHs(u,m,v)),l5.pop(),YU.pop(),u5=P,b1.set(D,Y),Y}function*zUt(u,m,v,D){let P=Gd(m);for(let Y of P)if(!Zfn(Y)&&(v||!(Y.flags&16777216||iI(Y)&48))){let oe=Gg(u,Y.escapedName);if(!oe)yield Y;else if(D){let Be=Io(Y);if(Be.flags&109472){let Oe=Io(oe);Oe.flags&1||Iy(Oe)===Iy(Be)||(yield Y)}}}}function qUt(u,m,v,D){return iA(zUt(u,m,v,D))}function BHs(u,m){return!(m.target.combinedFlags&8)&&m.target.minLength>u.target.minLength||!(m.target.combinedFlags&12)&&(!!(u.target.combinedFlags&12)||m.target.fixedLengthwq(Y,P),u)===u&&Fot(u,m)}return!1}function cmn(u,m){if(m.flags&2097152)return ue(m.types,v=>v===bg||cmn(u,v));if(m.flags&4||dg(u,m))return!0;if(u.flags&128){let v=u.value;return!!(m.flags&8&&amn(v,!1)||m.flags&64&&Une(v,!1)||m.flags&98816&&v===m.intrinsicName||m.flags&268435456&&Fot(u,m)||m.flags&134217728&&Zot(u,m))}if(u.flags&134217728){let v=u.texts;return v.length===2&&v[0]===""&&v[1]===""&&dg(u.types[0],m)}return!1}function lmn(u,m){return u.flags&128?umn([u.value],E,m):u.flags&134217728?Sc(u.texts,m.texts)?At(u.types,(v,D)=>dg(WN(v),WN(m.types[D]))?v:NHs(v)):umn(u.texts,u.types,m):void 0}function Zot(u,m){let v=lmn(u,m);return!!v&&ue(v,(D,P)=>cmn(D,m.types[P]))}function NHs(u){return u.flags&402653317?u:hK(["",""],[u])}function umn(u,m,v){let D=u.length-1,P=u[0],Y=u[D],oe=v.texts,Be=oe.length-1,Oe=oe[0],He=oe[Be];if(D===0&&P.length0){let js=kt,Co=vr;for(;Co=dn(js).indexOf(Yi,Co),!(Co>=0);){if(js++,js===u.length)return;Co=0}vn(js,Co),vr+=Yi.length}else if(vr!k(_o,Bd)):xs,du?Me(to,Bd=>!k(du,Bd)):to]}function js(xs,to,qc){let _o=xs.length!!Mi(du));if(!_o||to&&_o!==to)return;to=_o}return to}function Ka(xs,to,qc){let _o=0;if(qc&1048576){let du,Bd=xs.flags&1048576?xs.types:[xs],uf=new Array(Bd.length),JC=!1;for(let bA of to)if(Mi(bA))du=bA,_o++;else for(let yh=0;yhuf[Vh]?void 0:yh);if(bA.length){kt(Ha(bA),du);return}}}else for(let du of to)Mi(du)?_o++:kt(xs,du);if(qc&2097152?_o===1:_o>0)for(let du of to)Mi(du)&&vr(xs,du,1)}function yl(xs,to,qc){if(qc.flags&1048576||qc.flags&2097152){let _o=!1;for(let du of qc.types)_o=yl(xs,to,du)||_o;return _o}if(qc.flags&4194304){let _o=Mi(qc.type);if(_o&&!_o.isFixed&&!omn(xs)){let du=imn(xs,to,qc);du&&vr(du,_o.typeParameter,la(xs)&262144?16:8)}return!0}if(qc.flags&262144){vr(ON(xs,xs.pattern?2:0),qc,32);let _o=dK(qc);if(_o&&yl(xs,to,_o))return!0;let du=At(Gd(xs),Io),Bd=At(A0(xs),uf=>uf!==Uc?uf.type:Wi);return kt(Ha(Nn(du,Bd)),qx(to)),!0}return!1}function ka(xs,to){if(xs.flags&16777216)kt(xs.checkType,to.checkType),kt(xs.extendsType,to.extendsType),kt(fW(xs),fW(to)),kt(IW(xs),IW(to));else{let qc=[fW(to),IW(to)];vn(xs,qc,to.flags,P?64:0)}}function Kc(xs,to){let qc=lmn(xs,to),_o=to.types;if(qc||ue(to.texts,du=>du.length===0))for(let du=0;du<_o.length;du++){let Bd=qc?qc[du]:Wi,uf=_o[du];if(Bd.flags&128&&uf.flags&8650752){let JC=Mi(uf),bA=JC?L_(JC.typeParameter):void 0;if(bA&&!Xo(bA)){let yh=bA.flags&1048576?bA.types:[bA],Vh=Ul(yh,(Fd,ES)=>Fd|ES.flags,0);if(!(Vh&4)){let Fd=Bd.value;Vh&296&&!amn(Fd,!0)&&(Vh&=-297),Vh&2112&&!Une(Fd,!0)&&(Vh&=-2113);let ES=Ul(yh,(Qf,ch)=>ch.flags&Vh?Qf.flags&4?Qf:ch.flags&4?Bd:Qf.flags&134217728?Qf:ch.flags&134217728&&Zot(Bd,ch)?Bd:Qf.flags&268435456?Qf:ch.flags&268435456&&Fd===nhn(ch.symbol,Fd)?Bd:Qf.flags&128?Qf:ch.flags&128&&ch.value===Fd?ch:Qf.flags&8?Qf:ch.flags&8?fR(+Fd):Qf.flags&32?Qf:ch.flags&32?fR(+Fd):Qf.flags&256?Qf:ch.flags&256&&ch.value===+Fd?ch:Qf.flags&64?Qf:ch.flags&64?RHs(Fd):Qf.flags&2048?Qf:ch.flags&2048&&kP(ch.value)===Fd?ch:Qf.flags&16?Qf:ch.flags&16?Fd==="true"?tn:Fd==="false"?Bs:Mn:Qf.flags&512?Qf:ch.flags&512&&ch.intrinsicName===Fd?ch:Qf.flags&32768?Qf:ch.flags&32768&&ch.intrinsicName===Fd?ch:Qf.flags&65536?Qf:ch.flags&65536&&ch.intrinsicName===Fd?ch:Qf:Qf,Wi);if(!(ES.flags&131072)){kt(ES,uf);continue}}}}kt(Bd,uf)}}function Vu(xs,to){kt(_S(xs),_S(to)),kt(qx(xs),qx(to));let qc=E9(xs),_o=E9(to);qc&&_o&&kt(qc,_o)}function gd(xs,to){var qc,_o;if(la(xs)&4&&la(to)&4&&(xs.target===to.target||Nv(xs)&&Nv(to))){js(lf(xs),lf(to),FUt(xs.target));return}if(Yb(xs)&&Yb(to)&&Vu(xs,to),la(to)&32&&!to.declaration.nameType){let du=_S(to);if(yl(xs,to,du))return}if(!wHs(xs,to)){if(L5(xs)){if(yA(to)){let du=B9(xs),Bd=B9(to),uf=lf(to),JC=to.target.elementFlags;if(yA(xs)&&oHs(xs,to)){for(let Vh=0;Vh0){let Bd=tg(to,qc),uf=Bd.length;for(let JC=0;JC1){let m=Me(u,eKt);if(m.length){let v=Ha(m,2);return Nn(Me(u,D=>!eKt(D)),[v])}}return u}function FHs(u){return u.priority&416?Kg(u.contraCandidates):$Ms(u.contraCandidates)}function ZHs(u,m){let v=GHs(u.candidates),D=xHs(u.typeParameter)||pK(u.typeParameter),P=!D&&u.topLevel&&(u.isFixed||!yHs(m,u.typeParameter)),Y=D?Tr(v,Iy):P?Tr(v,V5):v,oe=u.priority&416?Ha(Y,2):zMs(Y);return D1(oe)}function tKt(u,m){let v=u.inferences[m];if(!v.inferredType){let D,P;if(u.signature){let oe=v.candidates?ZHs(v,u.signature):void 0,Be=v.contraCandidates?FHs(v):void 0;if(oe||Be){let Oe=oe&&(!Be||!(oe.flags&131073)&&jt(v.contraCandidates,He=>dg(oe,He))&&ue(u.inferences,He=>He!==v&&Xy(He.typeParameter)!==v.typeParameter||ue(He.candidates,qe=>dg(qe,oe))));D=Oe?oe:Be,P=Oe?Be:oe}else if(u.flags&1)D=Vn;else{let Oe=VQ(v.typeParameter);Oe&&(D=_l(Oe,bhn(lMs(u,m),u.nonFixingMapper)))}}else D=smn(v);v.inferredType=D||rKt(!!(u.flags&2));let Y=Xy(v.typeParameter);if(Y){let oe=_l(Y,u.nonFixingMapper);(!D||!u.compareTypes(D,T1(oe,D)))&&(v.inferredType=P&&u.compareTypes(P,T1(oe,P))?P:oe)}nQs()}return v.inferredType}function rKt(u){return u?hr:cn}function nKt(u){let m=[];for(let v=0;vg_(m)||FB(m)||mh(m)))}function YWe(u,m,v,D){switch(u.kind){case 80:if(!YL(u)){let oe=L0(u);return oe!==it?`${D?rd(D):"-1"}|${QC(m)}|${QC(v)}|${kg(oe)}`:void 0}case 110:return`0|${D?rd(D):"-1"}|${QC(m)}|${QC(v)}`;case 236:case 218:return YWe(u.expression,m,v,D);case 167:let P=YWe(u.left,m,v,D);return P&&`${P}.${u.right.escapedText}`;case 212:case 213:let Y=vK(u);if(Y!==void 0){let oe=YWe(u.expression,m,v,D);return oe&&`${oe}.${Y}`}if(Yg(u)&&Ir(u.argumentExpression)){let oe=L0(u.argumentExpression);if(kq(oe)||W2e(oe)&&!P2e(oe)){let Be=YWe(u.expression,m,v,D);return Be&&`${Be}.@${kg(oe)}`}}break;case 207:case 208:case 263:case 219:case 220:case 175:return`${rd(u)}#${QC(m)}`}}function h_(u,m){switch(m.kind){case 218:case 236:return h_(u,m.expression);case 227:return Jm(m)&&h_(u,m.left)||fo(m)&&m.operatorToken.kind===28&&h_(u,m.right)}switch(u.kind){case 237:return m.kind===237&&u.keywordToken===m.keywordToken&&u.name.escapedText===m.name.escapedText;case 80:case 81:return YL(u)?m.kind===110:m.kind===80&&L0(u)===L0(m)||(nc(m)||hg(m))&&fn(L0(u))===Uo(m);case 110:return m.kind===110;case 108:return m.kind===108;case 236:case 218:case 239:return h_(u.expression,m);case 212:case 213:let v=vK(u);if(v!==void 0){let D=_p(m)?vK(m):void 0;if(D!==void 0)return D===v&&h_(u.expression,m.expression)}if(Yg(u)&&Yg(m)&&Ir(u.argumentExpression)&&Ir(m.argumentExpression)){let D=L0(u.argumentExpression);if(D===L0(m.argumentExpression)&&(kq(D)||W2e(D)&&!P2e(D)))return h_(u.expression,m.expression)}break;case 167:return _p(m)&&u.right.escapedText===vK(m)&&h_(u.left,m.expression);case 227:return fo(u)&&u.operatorToken.kind===28&&h_(u.right,m)}return!1}function vK(u){if(jo(u))return u.name.escapedText;if(Yg(u))return LHs(u);if(hg(u)){let m=C9(u);return m?Ap(m):void 0}if(Si(u))return""+u.parent.parameters.indexOf(u)}function sKt(u){return u.flags&8192?u.escapedName:u.flags&384?Ap(""+u.value):void 0}function LHs(u){return d1(u.argumentExpression)?Ap(u.argumentExpression.text):Od(u.argumentExpression)?VHs(u.argumentExpression):void 0}function VHs(u){let m=TI(u,111551,!0);if(!m||!(kq(m)||m.flags&8))return;let v=m.valueDeclaration;if(v===void 0)return;let D=AW(v);if(D){let P=sKt(D);if(P!==void 0)return P}if(l1(v)&&$F(v,u)){let P=ane(v);if(P){let Y=Nu(v.parent)?Kx(v):P_(P);return Y&&sKt(Y)}if(LF(v))return hP(v.name)}}function Amn(u,m){for(;_p(u);)if(u=u.expression,h_(u,m))return!0;return!1}function BK(u,m){for(;GC(u);)if(u=u.expression,h_(u,m))return!0;return!1}function Jpe(u,m){if(u&&u.flags&1048576){let v=sIn(u,m);if(v&&iI(v)&2)return v.links.isDiscriminantProperty===void 0&&(v.links.isDiscriminantProperty=(v.links.checkFlags&192)===192&&!G5(Io(v))),!!v.links.isDiscriminantProperty}return!1}function dmn(u,m){let v;for(let D of u)if(Jpe(m,D.escapedName)){if(v){v.push(D);continue}v=[D]}return v}function PHs(u,m){let v=new Map,D=0;for(let P of u)if(P.flags&61603840){let Y=Pi(P,m);if(Y){if(!k2e(Y))return;let oe=!1;TK(Y,Be=>{let Oe=QC(Iy(Be)),He=v.get(Oe);He?He!==cn&&(v.set(Oe,cn),oe=!0):v.set(Oe,P)}),oe||D++}}return D>=10&&D*2>=u.length?v:void 0}function QWe(u){let m=u.types;if(!(m.length<10||la(u)&32768||ct(m,v=>!!(v.flags&59506688))<10)){if(u.keyPropertyName===void 0){let v=F(m,P=>P.flags&59506688?F(Gd(P),Y=>IR(Io(Y))?Y.escapedName:void 0):void 0),D=v&&PHs(m,v);u.keyPropertyName=D?v:"",u.constituentMap=D}return u.keyPropertyName.length?u.keyPropertyName:void 0}}function XWe(u,m){var v;let D=(v=u.constituentMap)==null?void 0:v.get(QC(Iy(m)));return D!==cn?D:void 0}function pmn(u,m){let v=QWe(u),D=v&&Pi(m,v);return D&&XWe(u,D)}function WHs(u,m){let v=QWe(u),D=v&&de(m.properties,Y=>Y.symbol&&Y.kind===304&&Y.symbol.escapedName===v&&tOe(Y.initializer)),P=D&&yOe(D.initializer);return P&&XWe(u,P)}function fmn(u,m){return h_(u,m)||Amn(u,m)}function Imn(u,m){if(u.arguments){for(let v of u.arguments)if(fmn(m,v)||BK(v,m))return!0}return!!(u.expression.kind===212&&fmn(m,u.expression.expression))}function oKt(u){return u.id<=0&&(u.id=Ttn,Ttn++),u.id}function OHs(u,m){if(!(u.flags&1048576))return dg(u,m);for(let v of u.types)if(dg(v,m))return!0;return!1}function MHs(u,m){if(u===m)return u;if(m.flags&131072)return m;let v=`A${QC(u)},${QC(m)}`;return Hy(v)??HB(v,HHs(u,m))}function HHs(u,m){let v=nm(u,P=>OHs(m,P)),D=m.flags&512&&MQ(m)?Yf(v,Rq):v;return dg(m,D)?D:u}function aKt(u){if(la(u)&256)return!1;let m=pR(u);return!!(m.callSignatures.length||m.constructSignatures.length||m.members.get("bind")&&YQ(u,Js))}function Vse(u,m){return cKt(u,m)&m}function hR(u,m){return Vse(u,m)!==0}function cKt(u,m){u.flags&467927040&&(u=L_(u)||cn);let v=u.flags;if(v&268435460)return ot?16317953:16776705;if(v&134217856){let D=v&128&&u.value==="";return ot?D?12123649:7929345:D?12582401:16776705}if(v&40)return ot?16317698:16776450;if(v&256){let D=u.value===0;return ot?D?12123394:7929090:D?12582146:16776450}if(v&64)return ot?16317188:16775940;if(v&2048){let D=jhn(u);return ot?D?12122884:7928580:D?12581636:16775940}return v&16?ot?16316168:16774920:v&528?ot?u===Bs||u===Ys?12121864:7927560:u===Bs||u===Ys?12580616:16774920:v&524288?m&(ot?83427327:83886079)?la(u)&16&&lZ(u)?ot?83427327:83886079:aKt(u)?ot?7880640:16728e3:ot?7888800:16736160:0:v&16384?9830144:v&32768?26607360:v&65536?42917664:v&12288?ot?7925520:16772880:v&67108864?ot?7888800:16736160:v&131072?0:v&1048576?Ul(u.types,(D,P)=>D|cKt(P,m),0):v&2097152?YHs(u,m):83886079}function YHs(u,m){let v=ah(u,402784252),D=0,P=134217727;for(let Y of u.types)if(!(v&&Y.flags&524288)){let oe=cKt(Y,m);D|=oe,P&=oe}return D&8256|P&134209471}function Dv(u,m){return nm(u,v=>hR(v,m))}function wK(u,m){let v=lKt(Dv(ot&&u.flags&2?TA:u,m));if(ot)switch(m){case 524288:return hmn(v,65536,131072,33554432,Hn);case 1048576:return hmn(v,131072,65536,16777216,Bt);case 2097152:case 4194304:return Yf(v,D=>hR(D,262144)?lHs(D):D)}return v}function hmn(u,m,v,D,P){let Y=Vse(u,50528256);if(!(Y&m))return u;let oe=Ha([Xg,P]);return Yf(u,Be=>hR(Be,m)?Kg([Be,!(Y&D)&&hR(Be,v)?oe:Xg]):Be)}function lKt(u){return u===TA?cn:u}function uKt(u,m){return m?Ha([ep(u),P_(m)]):u}function mmn(u,m){var v;let D=sZ(m);if(!g2(D))return nn;let P=A2(D);return Pi(u,P)||V2e((v=vq(u,P))==null?void 0:v.type)||nn}function Cmn(u,m){return RE(u,Qpe)&&eHs(u,m)||V2e(N9(65,u,Bt,void 0))||nn}function V2e(u){return u&&(Te.noUncheckedIndexedAccess?Ha([u,fr]):u)}function _mn(u){return d0(N9(65,u,Bt,void 0)||nn)}function QHs(u){return u.parent.kind===210&&gKt(u.parent)||u.parent.kind===304&&gKt(u.parent.parent)?uKt(JWe(u),u.right):P_(u.right)}function gKt(u){return u.parent.kind===227&&u.parent.left===u||u.parent.kind===251&&u.parent.initializer===u}function XHs(u,m){return Cmn(JWe(u),u.elements.indexOf(m))}function JHs(u){return _mn(JWe(u.parent))}function ymn(u){return mmn(JWe(u.parent),u.name)}function UHs(u){return uKt(ymn(u),u.objectAssignmentInitializer)}function JWe(u){let{parent:m}=u;switch(m.kind){case 250:return $r;case 251:return TOe(m)||nn;case 227:return QHs(m);case 221:return Bt;case 210:return XHs(m,u);case 231:return JHs(m);case 304:return ymn(m);case 305:return UHs(m)}return nn}function KHs(u){let m=u.parent,v=Emn(m.parent),D=m.kind===207?mmn(v,u.propertyName||u.name):u.dotDotDotToken?_mn(v):Cmn(v,m.elements.indexOf(u));return uKt(D,u.initializer)}function bmn(u){return sa(u).resolvedType||P_(u)}function jHs(u){return u.initializer?bmn(u.initializer):u.parent.parent.kind===250?$r:u.parent.parent.kind===251&&TOe(u.parent.parent)||nn}function Emn(u){return u.kind===261?jHs(u):KHs(u)}function zHs(u){return u.kind===261&&u.initializer&&y9(u.initializer)||u.kind!==209&&u.parent.kind===227&&y9(u.parent.right)}function XQ(u){switch(u.kind){case 218:return XQ(u.expression);case 227:switch(u.operatorToken.kind){case 64:case 76:case 77:case 78:return XQ(u.left);case 28:return XQ(u.right)}}return u}function Smn(u){let{parent:m}=u;return m.kind===218||m.kind===227&&m.operatorToken.kind===64&&m.left===u||m.kind===227&&m.operatorToken.kind===28&&m.right===u?Smn(m):u}function qHs(u){return u.kind===297?Iy(P_(u.expression)):Wi}function Lot(u){let m=sa(u);if(!m.switchTypes){m.switchTypes=[];for(let v of u.caseBlock.clauses)m.switchTypes.push(qHs(v))}return m.switchTypes}function vmn(u){if(jt(u.caseBlock.clauses,v=>v.kind===297&&!mA(v.expression)))return;let m=[];for(let v of u.caseBlock.clauses){let D=v.kind===297?v.expression.text:void 0;m.push(D&&!k(m,D)?D:void 0)}return m}function $Hs(u,m){return u.flags&1048576?!F(u.types,v=>!k(m,v)):k(m,u)}function Upe(u,m){return!!(u===m||u.flags&131072||m.flags&1048576&&eYs(u,m))}function eYs(u,m){if(u.flags&1048576){for(let v of u.types)if(!tG(m.types,v))return!1;return!0}return u.flags&1056&&Qst(u)===m?!0:tG(m.types,u)}function TK(u,m){return u.flags&1048576?F(u.types,m):m(u)}function kv(u,m){return u.flags&1048576?jt(u.types,m):m(u)}function RE(u,m){return u.flags&1048576?ue(u.types,m):m(u)}function tYs(u,m){return u.flags&3145728?ue(u.types,m):m(u)}function nm(u,m){if(u.flags&1048576){let v=u.types,D=Me(v,m);if(D===v)return u;let P=u.origin,Y;if(P&&P.flags&1048576){let oe=P.types,Be=Me(oe,Oe=>!!(Oe.flags&1048576)||m(Oe));if(oe.length-Be.length===v.length-D.length){if(Be.length===1)return Be[0];Y=aUt(1048576,Be)}}return lUt(D,u.objectFlags&16809984,void 0,void 0,Y)}return u.flags&131072||m(u)?u:Wi}function Vot(u,m){return nm(u,v=>v!==m)}function rYs(u){return u.flags&1048576?u.types.length:1}function Yf(u,m,v){if(u.flags&131072)return u;if(!(u.flags&1048576))return m(u);let D=u.origin,P=D&&D.flags&1048576?D.types:u.types,Y,oe=!1;for(let Be of P){let Oe=Be.flags&1048576?Yf(Be,m,v):m(Be);oe||(oe=Be!==Oe),Oe&&(Y?Y.push(Oe):Y=[Oe])}return oe?Y&&Ha(Y,v?0:1):u}function Bmn(u,m,v,D){return u.flags&1048576&&v?Ha(At(u.types,m),1,v,D):Yf(u,m)}function Kpe(u,m){return nm(u,v=>(v.flags&m)!==0)}function wmn(u,m){return ah(u,134217804)&&ah(m,402655616)?Yf(u,v=>v.flags&4?Kpe(m,402653316):mK(v)&&!ah(m,402653188)?Kpe(m,128):v.flags&8?Kpe(m,264):v.flags&64?Kpe(m,2112):v):u}function Pse(u){return u.flags===0}function RK(u){return u.flags===0?u.type:u}function Wse(u,m){return m?{flags:0,type:u.flags&131072?Vn:u}:u}function nYs(u){let m=Lh(256);return m.elementType=u,m}function AKt(u){return Pn[u.id]||(Pn[u.id]=nYs(u))}function Tmn(u,m){let v=F2e(uZ(yOe(m)));return Upe(v,u.elementType)?u:AKt(Ha([u.elementType,v]))}function iYs(u){return u.flags&131072?OC:d0(u.flags&1048576?Ha(u.types,2):u)}function sYs(u){return u.finalArrayType||(u.finalArrayType=iYs(u.elementType))}function UWe(u){return la(u)&256?sYs(u):u}function oYs(u){return la(u)&256?u.elementType:Wi}function aYs(u){let m=!1;for(let v of u)if(!(v.flags&131072)){if(!(la(v)&256))return!1;m=!0}return m}function Rmn(u){let m=Smn(u),v=m.parent,D=jo(v)&&(v.name.escapedText==="length"||v.parent.kind===214&&Ir(v.name)&&Fye(v.name)),P=v.kind===213&&v.expression===m&&v.parent.kind===227&&v.parent.operatorToken.kind===64&&v.parent.left===v&&!bF(v.parent)&&V_(P_(v.argumentExpression),296);return D||P}function cYs(u){return(nc(u)||pi(u)||ss(u)||Si(u))&&!!(kh(u)||wo(u)&&WT(u)&&u.initializer&&RF(u.initializer)&&xb(u.initializer))}function Pot(u,m){if(u=Zh(u),u.flags&8752)return Io(u);if(u.flags&7){if(iI(u)&262144){let D=u.links.syntheticOrigin;if(D&&Pot(D))return Io(u)}let v=u.valueDeclaration;if(v){if(cYs(v))return Io(u);if(nc(v)&&v.parent.parent.kind===251){let D=v.parent.parent,P=KWe(D.expression,void 0);if(P){let Y=D.awaitModifier?15:13;return N9(Y,P,Bt,void 0)}}m&&lg(m,mo(v,Z._0_needs_an_explicit_type_annotation,kl(u)))}}}function KWe(u,m){if(!(u.flags&67108864))switch(u.kind){case 80:let v=fn(L0(u));return Pot(v,m);case 110:return RYs(u);case 108:return Qot(u);case 212:{let D=KWe(u.expression,m);if(D){let P=u.name,Y;if(p(P)){if(!D.symbol)return;Y=Gg(D,yne(D.symbol,P.escapedText))}else Y=Gg(D,P.escapedText);return Y&&Pot(Y,m)}return}case 218:return KWe(u.expression,m)}}function jWe(u){let m=sa(u),v=m.effectsSignature;if(v===void 0){let D;if(fo(u)){let oe=Mse(u.right);D=A8t(oe)}else u.parent.kind===245?D=KWe(u.expression,void 0):u.expression.kind!==108&&(GC(u)?D=HN(x2e(Ol(u.expression),u.expression),u.expression):D=Mse(u.expression));let P=tg(D&&fy(D)||cn,0),Y=P.length===1&&!P[0].typeParameters?P[0]:jt(P,Nmn)?Yse(u):void 0;v=m.effectsSignature=Y&&Nmn(Y)?Y:Za}return v===Za?void 0:v}function Nmn(u){return!!(Tv(u)||u.declaration&&(Dse(u.declaration)||cn).flags&131072)}function lYs(u,m){if(u.kind===1||u.kind===3)return m.arguments[u.parameterIndex];let v=QA(m.expression);return _p(v)?QA(v.expression):void 0}function uYs(u){let m=ji(u,CJ),v=ms(u),D=rs(v,m.statements.pos);PA.add(qh(v,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function zWe(u){let m=Wot(u,!1);return $a=u,ru=m,m}function qWe(u){let m=QA(u,!0);return m.kind===97||m.kind===227&&(m.operatorToken.kind===56&&(qWe(m.left)||qWe(m.right))||m.operatorToken.kind===57&&qWe(m.left)&&qWe(m.right))}function Wot(u,m){for(;;){if(u===$a)return ru;let v=u.flags;if(v&4096){if(!m){let D=oKt(u),P=rq[D];return P!==void 0?P:rq[D]=Wot(u,!0)}m=!1}if(v&368)u=u.antecedent;else if(v&512){let D=jWe(u.node);if(D){let P=Tv(D);if(P&&P.kind===3&&!P.type){let Y=u.node.arguments[P.parameterIndex];if(Y&&qWe(Y))return!1}if(ud(D).flags&131072)return!1}u=u.antecedent}else{if(v&4)return jt(u.antecedent,D=>Wot(D,!1));if(v&8){let D=u.antecedent;if(D===void 0||D.length===0)return!1;u=D[0]}else if(v&128){let D=u.node;if(D.clauseStart===D.clauseEnd&&b_n(D.switchStatement))return!1;u=u.antecedent}else if(v&1024){$a=void 0;let D=u.node.target,P=D.antecedent;D.antecedent=u.node.antecedents;let Y=Wot(u.antecedent,!1);return D.antecedent=P,Y}else return!(v&1)}}}function Oot(u,m){for(;;){let v=u.flags;if(v&4096){if(!m){let D=oKt(u),P=SQ[D];return P!==void 0?P:SQ[D]=Oot(u,!0)}m=!1}if(v&496)u=u.antecedent;else if(v&512){if(u.node.expression.kind===108)return!0;u=u.antecedent}else{if(v&4)return ue(u.antecedent,D=>Oot(D,!1));if(v&8)u=u.antecedent[0];else if(v&1024){let D=u.node.target,P=D.antecedent;D.antecedent=u.node.antecedents;let Y=Oot(u.antecedent,!1);return D.antecedent=P,Y}else return!!(v&1)}}}function dKt(u){switch(u.kind){case 110:return!0;case 80:if(!YL(u)){let v=L0(u);return kq(v)||W2e(v)&&!P2e(v)||!!v.valueDeclaration&&UA(v.valueDeclaration)}break;case 212:case 213:return dKt(u.expression)&&yR(sa(u).resolvedSymbol||it);case 207:case 208:let m=Rw(u.parent);return Si(m)||wLe(m)?!pKt(m):nc(m)&&lSe(m)}return!1}function dZ(u,m,v=m,D,P=(Y=>(Y=Gs(u,UJ))==null?void 0:Y.flowNode)()){let Y,oe=!1,Be=0;if(Yc)return nn;if(!P)return m;tu++;let Oe=co,He=RK(kt(P));co=Oe;let qe=la(He)&256&&Rmn(u)?OC:UWe(He);if(qe===gs||u.parent&&u.parent.kind===236&&!(qe.flags&131072)&&Dv(qe,2097152).flags&131072)return m;return qe;function Vt(){return oe?Y:(oe=!0,Y=YWe(u,m,v,D))}function kt(zn){var as;if(Be===2e3)return(as=ki)==null||as.instant(ki.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:zn.id}),Yc=!0,uYs(u),nn;Be++;let Ms;for(;;){let Ao=zn.flags;if(Ao&4096){for(let tc=Oe;tc=0&&Ms.parameterIndex!(tc.flags&163840)):as.kind===222&&BK(as.expression,u)&&(Ao=Bd(Ao,zn.node,tc=>!(tc.flags&131072||tc.flags&128&&tc.value==="undefined"))));let ea=yl(as,Ao);ea&&(Ao=Vu(Ao,ea,zn.node))}return Wse(Ao,Pse(Ms))}function Ji(zn){let as=[],Ms=!1,Ao=!1,ea;for(let tc of zn.antecedent){if(!ea&&tc.flags&128&&tc.node.clauseStart===tc.node.clauseEnd){ea=tc;continue}let jg=kt(tc),nA=RK(jg);if(nA===m&&m===v)return nA;Qi(as,nA),Upe(nA,v)||(Ms=!0),Pse(jg)&&(Ao=!0)}if(ea){let tc=kt(ea),jg=RK(tc);if(!(jg.flags&131072)&&!k(as,jg)&&!b_n(ea.node.switchStatement)){if(jg===m&&m===v)return jg;as.push(jg),Upe(jg,v)||(Ms=!0),Pse(tc)&&(Ao=!0)}}return Wse(To(as,Ms?2:1),Ao)}function Mi(zn){let as=oKt(zn),Ms=pse[as]||(pse[as]=new Map),Ao=Vt();if(!Ao)return m;let ea=Ms.get(Ao);if(ea)return ea;for(let tC=Oo;tC{let tC=Ba(Sp,Ao)||cn;return!(tC.flags&131072)&&!(nA.flags&131072)&&FWe(nA,tC)})}function Kc(zn,as,Ms,Ao,ea){if((Ms===37||Ms===38)&&zn.flags&1048576){let tc=QWe(zn);if(tc&&tc===vK(as)){let jg=XWe(zn,P_(Ao));if(jg)return Ms===(ea?37:38)?jg:IR(Pi(jg,tc)||cn)?Vot(zn,jg):zn}}return ka(zn,as,tc=>qc(tc,Ms,Ao,ea))}function Vu(zn,as,Ms){if(Ms.clauseStartXWe(zn,tc)||cn));if(ea!==cn)return ea}return ka(zn,as,Ao=>uf(Ao,Ms))}function gd(zn,as,Ms){if(h_(u,as))return wK(zn,Ms?4194304:8388608);ot&&Ms&&BK(as,u)&&(zn=wK(zn,2097152));let Ao=yl(as,zn);return Ao?ka(zn,Ao,ea=>Dv(ea,Ms?4194304:8388608)):zn}function Ll(zn,as,Ms){let Ao=Gg(zn,as);return Ao?!!(Ao.flags&16777216||iI(Ao)&48)||Ms:!!vq(zn,as)||!Ms}function Ef(zn,as,Ms){let Ao=A2(as);if(kv(zn,tc=>Ll(tc,Ao,!0)))return nm(zn,tc=>Ll(tc,Ao,Ms));if(Ms){let tc=d5s();if(tc)return Kg([zn,xse(tc,[as,cn])])}return zn}function UI(zn,as,Ms,Ao,ea){return ea=ea!==(Ms.kind===112)!=(Ao!==38&&Ao!==36),y2(zn,as,ea)}function V0(zn,as,Ms){switch(as.operatorToken.kind){case 64:case 76:case 77:case 78:return gd(y2(zn,as.right,Ms),as.left,Ms);case 35:case 36:case 37:case 38:let Ao=as.operatorToken.kind,ea=XQ(as.left),tc=XQ(as.right);if(ea.kind===222&&mA(tc))return _o(zn,ea,Ao,tc,Ms);if(tc.kind===222&&mA(ea))return _o(zn,tc,Ao,ea,Ms);if(h_(u,ea))return qc(zn,Ao,tc,Ms);if(h_(u,tc))return qc(zn,Ao,ea,Ms);ot&&(BK(ea,u)?zn=to(zn,Ao,tc,Ms):BK(tc,u)&&(zn=to(zn,Ao,ea,Ms)));let jg=yl(ea,zn);if(jg)return Kc(zn,jg,Ao,tc,Ms);let nA=yl(tc,zn);if(nA)return Kc(zn,nA,Ao,ea,Ms);if(Fd(ea))return ES(zn,Ao,tc,Ms);if(Fd(tc))return ES(zn,Ao,ea,Ms);if(hY(tc)&&!_p(ea))return UI(zn,ea,tc,Ao,Ms);if(hY(ea)&&!_p(tc))return UI(zn,tc,ea,Ao,Ms);break;case 104:return Qf(zn,as,Ms);case 103:if(p(as.left))return xs(zn,as,Ms);let Sp=XQ(as.right);if(G2e(zn)&&_p(u)&&h_(u.expression,Sp)){let tC=P_(as.left);if(g2(tC)&&vK(u)===A2(tC))return Dv(zn,Ms?524288:65536)}if(h_(u,Sp)){let tC=P_(as.left);if(g2(tC))return Ef(zn,tC,Ms)}break;case 28:return y2(zn,as.right,Ms);case 56:return Ms?y2(y2(zn,as.left,!0),as.right,!0):Ha([y2(zn,as.left,!1),y2(zn,as.right,!1)]);case 57:return Ms?Ha([y2(zn,as.left,!0),y2(zn,as.right,!0)]):y2(y2(zn,as.left,!1),as.right,!1)}return zn}function xs(zn,as,Ms){let Ao=XQ(as.right);if(!h_(u,Ao))return zn;pe.assertNode(as.left,p);let ea=iat(as.left);if(ea===void 0)return zn;let tc=ea.parent,jg=zh(pe.checkDefined(ea.valueDeclaration,"should always have a declaration"))?Io(tc):Fp(tc);return Gv(zn,jg,Ms,!0)}function to(zn,as,Ms,Ao){let ea=as===35||as===37,tc=as===35||as===36?98304:32768,jg=P_(Ms);return ea!==Ao&&RE(jg,Sp=>!!(Sp.flags&tc))||ea===Ao&&RE(jg,Sp=>!(Sp.flags&(3|tc)))?wK(zn,2097152):zn}function qc(zn,as,Ms,Ao){if(zn.flags&1)return zn;(as===36||as===38)&&(Ao=!Ao);let ea=P_(Ms),tc=as===35||as===36;if(ea.flags&98304){if(!ot)return zn;let jg=tc?Ao?262144:2097152:ea.flags&65536?Ao?131072:1048576:Ao?65536:524288;return wK(zn,jg)}if(Ao){if(!tc&&(zn.flags&2||kv(zn,mk))){if(ea.flags&469893116||mk(ea))return ea;if(ea.flags&524288)return fs}let jg=nm(zn,nA=>FWe(nA,ea)||tc&&uHs(nA,ea));return wmn(jg,ea)}return IR(ea)?nm(zn,jg=>!(Xhn(jg)&&FWe(jg,ea))):zn}function _o(zn,as,Ms,Ao,ea){(Ms===36||Ms===38)&&(ea=!ea);let tc=XQ(as.expression);if(!h_(u,tc)){ot&&BK(tc,u)&&ea===(Ao.text!=="undefined")&&(zn=wK(zn,2097152));let jg=yl(tc,zn);return jg?ka(zn,jg,nA=>du(nA,Ao,ea)):zn}return du(zn,Ao,ea)}function du(zn,as,Ms){return Ms?JC(zn,as.text):wK(zn,bOt.get(as.text)||32768)}function Bd(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao},ea){return Ms!==Ao&&ue(Lot(as).slice(Ms,Ao),ea)?Dv(zn,2097152):zn}function uf(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=Lot(as);if(!ea.length)return zn;let tc=ea.slice(Ms,Ao),jg=Ms===Ao||k(tc,Wi);if(zn.flags&2&&!jg){let P0;for(let Qb=0;QbFWe(nA,P0)),nA);if(!jg)return Sp;let tC=nm(zn,P0=>!(Xhn(P0)&&k(ea,P0.flags&32768?Bt:Iy(rHs(P0)))));return Sp.flags&131072?tC:Ha([Sp,tC])}function JC(zn,as){switch(as){case"string":return bA(zn,$r,1);case"number":return bA(zn,ri,2);case"bigint":return bA(zn,ao,4);case"boolean":return bA(zn,Mn,8);case"symbol":return bA(zn,ci,16);case"object":return zn.flags&1?zn:Ha([bA(zn,fs,32),bA(zn,Hn,131072)]);case"function":return zn.flags&1?zn:bA(zn,Js,64);case"undefined":return bA(zn,Bt,65536)}return bA(zn,fs,128)}function bA(zn,as,Ms){return Yf(zn,Ao=>MN(Ao,as,bf)?hR(Ao,Ms)?Ao:Wi:YQ(as,Ao)?as:hR(Ao,Ms)?Kg([Ao,as]):Wi)}function yh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=vmn(as);if(!ea)return zn;let tc=Se(as.caseBlock.clauses,Sp=>Sp.kind===298);if(Ms===Ao||tc>=Ms&&tcVse(tC,Sp)===Sp)}let nA=ea.slice(Ms,Ao);return Ha(At(nA,Sp=>Sp?JC(zn,Sp):Wi))}function Vh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=Se(as.caseBlock.clauses,nA=>nA.kind===298),tc=Ms===Ao||ea>=Ms&&eanA.kind===297?y2(zn,nA.expression,!0):Wi))}function Fd(zn){return(jo(zn)&&Vo(zn.name)==="constructor"||Yg(zn)&&mA(zn.argumentExpression)&&zn.argumentExpression.text==="constructor")&&h_(u,zn.expression)}function ES(zn,as,Ms,Ao){if(Ao?as!==35&&as!==37:as!==36&&as!==38)return zn;let ea=P_(Ms);if(!M8t(ea)&&!dR(ea))return zn;let tc=Gg(ea,"prototype");if(!tc)return zn;let jg=Io(tc),nA=Xo(jg)?void 0:jg;if(!nA||nA===qn||nA===Js)return zn;if(Xo(zn))return nA;return nm(zn,tC=>Sp(tC,nA));function Sp(tC,P0){return tC.flags&524288&&la(tC)&1||P0.flags&524288&&la(P0)&1?tC.symbol===P0.symbol:YQ(tC,P0)}}function Qf(zn,as,Ms){let Ao=XQ(as.left);if(!h_(u,Ao))return Ms&&ot&&BK(Ao,u)?wK(zn,2097152):zn;let ea=as.right,tc=P_(ea);if(!Z5(tc,qn))return zn;let jg=jWe(as),nA=jg&&Tv(jg);if(nA&&nA.kind===1&&nA.parameterIndex===0)return Gv(zn,nA.type,Ms,!0);if(!Z5(tc,Js))return zn;let Sp=Yf(tc,ch);return Xo(zn)&&(Sp===qn||Sp===Js)||!Ms&&!(Sp.flags&524288&&!mk(Sp))?zn:Gv(zn,Sp,Ms,!0)}function ch(zn){let as=Pi(zn,"prototype");if(as&&!Xo(as))return as;let Ms=tg(zn,1);return Ms.length?Ha(At(Ms,Ao=>ud(b2e(Ao)))):Xg}function Gv(zn,as,Ms,Ao){let ea=zn.flags&1048576?`N${QC(zn)},${QC(as)},${(Ms?1:0)|(Ao?2:0)}`:void 0;return Hy(ea)??HB(ea,ofe(zn,as,Ms,Ao))}function ofe(zn,as,Ms,Ao){if(!Ms){if(zn===as)return Wi;if(Ao)return nm(zn,Sp=>!Z5(Sp,as));zn=zn.flags&2?TA:zn;let nA=Gv(zn,as,!0,!1);return lKt(nm(zn,Sp=>!Upe(Sp,nA)))}if(zn.flags&3||zn===as)return as;let ea=Ao?Z5:YQ,tc=zn.flags&1048576?QWe(zn):void 0,jg=Yf(as,nA=>{let Sp=tc&&Pi(nA,tc),tC=Sp&&XWe(zn,Sp),P0=Yf(tC||zn,Ao?Qb=>Z5(Qb,nA)?Qb:Z5(nA,Qb)?nA:Wi:Qb=>Hpe(Qb,nA)?Qb:Hpe(nA,Qb)?nA:YQ(Qb,nA)?Qb:YQ(nA,Qb)?nA:Wi);return P0.flags&131072?Yf(zn,Qb=>ah(Qb,465829888)&&ea(nA,L_(Qb)||cn)?Kg([Qb,nA]):Wi):P0});return jg.flags&131072?YQ(as,zn)?as:dg(zn,as)?zn:dg(as,zn)?as:Kg([zn,as]):jg}function uSe(zn,as,Ms){if(Imn(as,u)){let Ao=Ms||!_B(as)?jWe(as):void 0,ea=Ao&&Tv(Ao);if(ea&&(ea.kind===0||ea.kind===1))return afe(zn,ea,as,Ms)}if(G2e(zn)&&_p(u)&&jo(as.expression)){let Ao=as.expression;if(h_(u.expression,XQ(Ao.expression))&&Ir(Ao.name)&&Ao.name.escapedText==="hasOwnProperty"&&as.arguments.length===1){let ea=as.arguments[0];if(mA(ea)&&vK(u)===Ap(ea.text))return Dv(zn,Ms?524288:65536)}}return zn}function afe(zn,as,Ms,Ao){if(as.type&&!(Xo(zn)&&(as.type===qn||as.type===Js))){let ea=lYs(as,Ms);if(ea){if(h_(u,ea))return Gv(zn,as.type,Ao,!1);ot&&BK(ea,u)&&(Ao&&!hR(as.type,65536)||!Ao&&RE(as.type,oOe))&&(zn=wK(zn,2097152));let tc=yl(ea,zn);if(tc)return ka(zn,tc,jg=>Gv(jg,as.type,Ao,!1))}}return zn}function y2(zn,as,Ms){if(gY(as)||fo(as.parent)&&(as.parent.operatorToken.kind===61||as.parent.operatorToken.kind===78)&&as.parent.left===as)return gSe(zn,as,Ms);switch(as.kind){case 80:if(!h_(u,as)&&re<5){let Ao=L0(as);if(kq(Ao)){let ea=Ao.valueDeclaration;if(ea&&nc(ea)&&!ea.type&&ea.initializer&&dKt(u)){re++;let tc=y2(zn,ea.initializer,Ms);return re--,tc}}}case 110:case 108:case 212:case 213:return gd(zn,as,Ms);case 214:return uSe(zn,as,Ms);case 218:case 236:case 239:return y2(zn,as.expression,Ms);case 227:return V0(zn,as,Ms);case 225:if(as.operator===54)return y2(zn,as.operand,!Ms);break}return zn}function gSe(zn,as,Ms){if(h_(u,as))return wK(zn,Ms?2097152:262144);let Ao=yl(as,zn);return Ao?ka(zn,Ao,ea=>Dv(ea,Ms?2097152:262144)):zn}}function gYs(u,m){if(u=fn(u),(m.kind===80||m.kind===81)&&(P7(m)&&(m=m.parent),MT(m)&&(!bF(m)||B3(m)))){let v=wot(B3(m)&&m.kind===212?nat(m,void 0,!0):P_(m));if(fn(sa(m).resolvedSymbol)===u)return v}return HT(m)&&cv(m.parent)&&ZQ(m.parent)?Wst(m.parent.symbol):rbe(m)&&B3(m.parent)?b9(u):AR(u)}function jpe(u){return ji(u.parent,m=>bu(m)&&!ZL(m)||m.kind===269||m.kind===308||m.kind===173)}function AYs(u){return(u.lastAssignmentPos!==void 0||P2e(u)&&u.lastAssignmentPos!==void 0)&&u.lastAssignmentPos<0}function P2e(u){return!Dmn(u,void 0)}function Dmn(u,m){let v=ji(u.valueDeclaration,Mot);if(!v)return!1;let D=sa(v);return D.flags&131072||(D.flags|=131072,dYs(v)||xmn(v)),!u.lastAssignmentPos||m&&Math.abs(u.lastAssignmentPos)m.kind!==233&&kmn(m.name))}function dYs(u){return!!ji(u.parent,m=>Mot(m)&&!!(sa(m).flags&131072))}function Mot(u){return kd(u)||ll(u)}function xmn(u){switch(u.kind){case 80:let m=QD(u);if(m!==0){let P=L0(u),Y=m===1||P.lastAssignmentPos!==void 0&&P.lastAssignmentPos<0;if(W2e(P)){if(P.lastAssignmentPos===void 0||Math.abs(P.lastAssignmentPos)!==Number.MAX_VALUE){let oe=ji(u,Mot),Be=ji(P.valueDeclaration,Mot);P.lastAssignmentPos=oe===Be?pYs(u,P.valueDeclaration):Number.MAX_VALUE}Y&&P.lastAssignmentPos>0&&(P.lastAssignmentPos*=-1)}}return;case 282:let v=u.parent.parent,D=u.propertyName||u.name;if(!u.isTypeOnly&&!v.isTypeOnly&&!v.moduleSpecifier&&D.kind!==11){let P=TI(D,111551,!0,!0);if(P&&W2e(P)){let Y=P.lastAssignmentPos!==void 0&&P.lastAssignmentPos<0?-1:1;P.lastAssignmentPos=Y*Number.MAX_VALUE}}return;case 265:case 266:case 267:return}uc(u)||Lu(u,xmn)}function pYs(u,m){let v=u.pos;for(;u&&u.pos>m.pos;){switch(u.kind){case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 259:case 264:v=u.end}u=u.parent}return v}function kq(u){return u.flags&3&&(kKt(u)&6)!==0}function W2e(u){let m=u.valueDeclaration&&Rw(u.valueDeclaration);return!!m&&(Si(m)||nc(m)&&(iQ(m.parent)||Gmn(m)))}function Gmn(u){return!!(u.parent.flags&1)&&!(Hc(u)&32||u.parent.parent.kind===244&&fc(u.parent.parent.parent))}function fYs(u){let m=sa(u);if(m.parameterInitializerContainsUndefined===void 0){if(!VN(u,8))return AK(u.symbol),!0;let v=!!hR(qpe(u,0),16777216);if(!xr())return AK(u.symbol),!0;m.parameterInitializerContainsUndefined??(m.parameterInitializerContainsUndefined=v)}return m.parameterInitializerContainsUndefined}function IYs(u,m){return ot&&m.kind===170&&m.initializer&&hR(u,16777216)&&!fYs(m)?Dv(u,524288):u}function hYs(u,m){let v=m.parent;return v.kind===212||v.kind===167||v.kind===214&&v.expression===m||v.kind===215&&v.expression===m||v.kind===213&&v.expression===m&&!(kv(u,Zmn)&&_K(P_(v.argumentExpression)))}function Fmn(u){return u.flags&2097152?jt(u.types,Fmn):!!(u.flags&465829888&&WN(u).flags&1146880)}function Zmn(u){return u.flags&2097152?jt(u.types,Zmn):!!(u.flags&465829888&&!ah(WN(u),98304))}function mYs(u,m){let v=(Ir(u)||jo(u)||Yg(u))&&!(($T(u.parent)||_U(u.parent))&&u.parent.tagName===u)&&(m&&m&32?Jy(u,8):Jy(u,void 0));return v&&!G5(v)}function fKt(u,m,v){return Gse(u)&&(u=u.baseType),!(v&&v&2)&&kv(u,Fmn)&&(hYs(u,m)||mYs(m,v))?Yf(u,WN):u}function Lmn(u){return!!ji(u,m=>{let v=m.parent;return v===void 0?"quit":Cf(v)?v.expression===m&&Od(m):R0(v)?v.name===m||v.propertyName===m:!1})}function xq(u,m,v,D){if(Ht&&!(u.flags&33554432&&!ss(u)&&!pi(u)))switch(m){case 1:return Hot(u);case 2:return Vmn(u,v,D);case 3:return Pmn(u);case 4:return IKt(u);case 5:return Wmn(u);case 6:return Omn(u);case 7:return Mmn(u);case 8:return Hmn(u);case 0:{if(Ir(u)&&(MT(u)||a0(u.parent)||km(u.parent)&&u.parent.moduleReference===u)&&Jmn(u)){if(SJ(u.parent)&&(jo(u.parent)?u.parent.expression:u.parent.left)!==u)return;Hot(u);return}if(SJ(u)){let P=u;for(;SJ(P);){if(ww(P))return;P=P.parent}return Vmn(u)}return Cf(u)?Pmn(u):eI(u)||Pw(u)?IKt(u):km(u)?d3(u)||Rat(u)?Omn(u):void 0:R0(u)?Mmn(u):((kd(u)||hl(u))&&Wmn(u),!Te.emitDecoratorMetadata||!oQ(u)||!p1(u)||!u.modifiers||!OJ(Ue,u,u.parent,u.parent.parent)?void 0:Hmn(u))}default:pe.assertNever(m,`Unhandled reference hint: ${m}`)}}function Hot(u){let m=L0(u);m&&m!==st&&m!==it&&!YL(u)&&$We(m,u)}function Vmn(u,m,v){let D=jo(u)?u.expression:u.left;if(vF(D)||!Ir(D))return;let P=L0(D);if(!P||P===it)return;if(sS(Te)||Fb(Te)&&Lmn(u)){$We(P,u);return}let Y=v||RI(D);if(Xo(Y)||Y===Vn){$We(P,u);return}let oe=m;if(!oe&&!v){let Be=jo(u)?u.name:u.right,Oe=p(Be)&&aOe(Be.escapedText,Be),He=QD(u),qe=fy(He!==0||ZKt(u)?D1(Y):Y);oe=p(Be)?Oe&&sat(qe,Oe)||void 0:Gg(qe,Be.escapedText)}oe&&(aSe(oe)||oe.flags&8&&u.parent.kind===307)||$We(P,u)}function Pmn(u){if(Ir(u.expression)){let m=u.expression,v=fn(TI(m,-1,!0,!0,u));v&&$We(v,m)}}function IKt(u){if(!tat(u)){let m=PA&&Te.jsx===2?Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:void 0,v=Mw(u),D=eI(u)?u.tagName:u,P=Te.jsx!==1&&Te.jsx!==3,Y;if(Pw(u)&&v==="null"||(Y=An(D,v,P?111551:111167,m,!0)),Y&&(Y.isReferenced=-1,Ht&&Y.flags&2097152&&!uR(Y)&&Yot(Y)),Pw(u)){let oe=ms(u),Be=Y8t(oe);if(Be){let Oe=B0(Be).escapedText;An(D,Oe,P?111551:111167,m,!0)}}}}function Wmn(u){if(Ze<2&&SI(u)&2){let m=xb(u);CYs(m)}}function Omn(u){Ga(u,32)&&Ymn(u)}function Mmn(u){if(!u.parent.parent.moduleSpecifier&&!u.isTypeOnly&&!u.parent.parent.isTypeOnly){let m=u.propertyName||u.name;if(m.kind===11)return;let v=An(m,m.escapedText,2998271,void 0,!0);if(!(v&&(v===dt||v===pr||v.declarations&&fc(Tn(v.declarations[0]))))){let D=v&&(v.flags&2097152?YC(v):v);(!D||Hb(D)&111551)&&(Ymn(u),Hot(m))}return}}function Hmn(u){if(Te.emitDecoratorMetadata){let m=de(u.modifiers,So);if(!m)return;switch(eC(m,16),u.kind){case 264:let v=lN(u);if(v)for(let oe of v.parameters)Ose(bat(oe));break;case 178:case 179:let D=u.kind===178?179:178,P=Cp(Uo(u),D);Ose(ZQ(u)||P&&ZQ(P));break;case 175:for(let oe of u.parameters)Ose(bat(oe));Ose(xb(u));break;case 173:Ose(kh(u));break;case 170:Ose(bat(u));let Y=u.parent;for(let oe of Y.parameters)Ose(bat(oe));Ose(xb(Y));break}}}function $We(u,m){if(Ht&&qU(u,111551)&&!OY(m)){let v=YC(u);Hb(u,!0)&1160127&&(sS(Te)||Fb(Te)&&Lmn(m)||!aSe(fn(v)))&&Yot(u)}}function Yot(u){pe.assert(Ht);let m=fa(u);if(!m.referenced){m.referenced=!0;let v=Mb(u);if(!v)return pe.fail();if(d3(v)&&Hb(Zh(u))&111551){let D=B0(v.moduleReference);Hot(D)}}}function Ymn(u){let m=Uo(u),v=YC(m);v&&(v===it||Hb(m,!0)&111551&&!aSe(v))&&Yot(m)}function Qmn(u,m){if(!u)return;let v=B0(u),D=(u.kind===80?788968:1920)|2097152,P=An(v,v.escapedText,D,void 0,!0);if(P&&P.flags&2097152){if(Ht&&qi(P)&&!aSe(YC(P))&&!uR(P))Yot(P);else if(m&&sS(Te)&&i0(Te)>=5&&!qi(P)&&!jt(P.declarations,nN)){let Y=Sr(u,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),oe=de(P.declarations||E,d9);oe&&lg(Y,mo(oe,Z._0_was_imported_here,Vo(v)))}}}function CYs(u){Qmn(u&&tne(u),!1)}function Ose(u){let m=b8t(u);m&&fC(m)&&Qmn(m,!0)}function _Ys(u,m){var v;let D=Io(u),P=u.valueDeclaration;if(P){if(hg(P)&&!P.initializer&&!P.dotDotDotToken&&P.parent.elements.length>=2){let Y=P.parent.parent,oe=Rw(Y);if(oe.kind===261&&jQ(oe)&6||oe.kind===170){let Be=sa(Y);if(!(Be.flags&4194304)){Be.flags|=4194304;let Oe=Cc(Y,0),He=Oe&&Yf(Oe,WN);if(Be.flags&=-4194305,He&&He.flags&1048576&&!(oe.kind===170&&pKt(oe))){let qe=P.parent,Vt=dZ(qe,He,He,void 0,m.flowNode);return Vt.flags&131072?Wi:uW(P,Vt,!0)}}}}if(Si(P)&&!P.type&&!P.initializer&&!P.dotDotDotToken){let Y=P.parent;if(Y.parameters.length>=2&&fot(Y)){let oe=M2e(Y);if(oe&&oe.parameters.length===1&&D0(oe)){let Be=Zpe(_l(Io(oe.parameters[0]),(v=JQ(Y))==null?void 0:v.nonFixingMapper));if(Be.flags&1048576&&RE(Be,yA)&&!jt(Y.parameters,pKt)){let Oe=dZ(Y,Be,Be,void 0,m.flowNode),He=Y.parameters.indexOf(P)-(vP(Y)?1:0);return R1(Oe,fR(He))}}}}}return D}function Xmn(u,m){if(YL(u))return;if(m===st){if(PKt(u,!0)){Sr(u,Z.arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks);return}let Y=A1(u);if(Y)for(Ze<2&&(Y.kind===220?Sr(u,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):Ga(Y,1024)&&Sr(u,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),sa(Y).flags|=512;Y&&lA(Y);)Y=A1(Y),Y&&(sa(Y).flags|=512);return}let v=fn(m),D=F8t(v,u);dy(D)&&AUt(u,D)&&D.declarations&&YB(u,D.declarations,u.escapedText);let P=v.valueDeclaration;if(P&&v.flags&32&&xa(P)&&P.name!==u){let Y=r0(u,!1,!1);for(;Y.kind!==308&&Y.parent!==P;)Y=r0(Y,!1,!1);Y.kind!==308&&(sa(P).flags|=262144,sa(Y).flags|=262144,sa(u).flags|=536870912)}vYs(u,m)}function yYs(u,m){if(YL(u))return eOe(u);let v=L0(u);if(v===it)return nn;if(Xmn(u,v),v===st)return PKt(u)?nn:Io(v);Jmn(u)&&xq(u,1);let D=fn(v),P=D.valueDeclaration,Y=P;if(P&&P.kind===209&&k(MB,P.parent)&&ji(u,Mi=>Mi===P.parent))return ds;let oe=_Ys(D,u),Be=QD(u);if(Be){if(!(D.flags&3)&&!(wo(u)&&D.flags&512)){let Mi=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return Sr(u,Mi,kl(v)),nn}if(yR(D))return D.flags&3?Sr(u,Z.Cannot_assign_to_0_because_it_is_a_constant,kl(v)):Sr(u,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,kl(v)),nn}let Oe=D.flags&2097152;if(D.flags&3){if(Be===1)return $ge(u)?uZ(oe):oe}else if(Oe)P=Mb(v);else return oe;if(!P)return oe;oe=fKt(oe,u,m);let He=Rw(P).kind===170,qe=jpe(P),Vt=jpe(u),kt=Vt!==qe,vr=u.parent&&u.parent.parent&&Lx(u.parent)&&gKt(u.parent.parent),dn=v.flags&134217728,vn=oe===Sn||oe===OC,ii=vn&&u.parent.kind===236;for(;Vt!==qe&&(Vt.kind===219||Vt.kind===220||Pge(Vt))&&(kq(D)&&oe!==OC||W2e(D)&&Dmn(D,u));)Vt=jpe(Vt);let Yi=Y&&nc(Y)&&!Y.initializer&&!Y.exclamationToken&&Gmn(Y)&&!AYs(v),js=He||Oe||kt&&!Yi||vr||dn||bYs(u,P)||oe!==Sn&&oe!==OC&&(!ot||(oe.flags&16387)!==0||OY(u)||iKt(u)||u.parent.kind===282)||u.parent.kind===236||P.kind===261&&P.exclamationToken||P.flags&33554432,Co=ii?Bt:js?He?IYs(oe,P):oe:vn?Bt:mW(oe),Ji=ii?gZ(dZ(u,oe,Co,Vt)):dZ(u,oe,Co,Vt);if(!Rmn(u)&&(oe===Sn||oe===OC)){if(Ji===Sn||Ji===OC)return Rt&&(Sr(Il(P),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,kl(v),no(Ji)),Sr(u,Z.Variable_0_implicitly_has_an_1_type,kl(v),no(Ji))),sSe(Ji)}else if(!js&&!Lse(oe)&&Lse(Ji))return Sr(u,Z.Variable_0_is_used_before_being_assigned,kl(v)),oe;return Be?uZ(Ji):Ji}function bYs(u,m){if(hg(m)){let v=ji(u,hg);return v&&Rw(v)===Rw(m)}}function Jmn(u){var m;let v=u.parent;if(v){if(jo(v)&&v.expression===u||R0(v)&&v.isTypeOnly)return!1;let D=(m=v.parent)==null?void 0:m.parent;if(D&&Gh(D)&&D.isTypeOnly)return!1}return!0}function EYs(u,m){return!!ji(u,v=>v===m?"quit":bu(v)||v.parent&&pi(v.parent)&&!zh(v.parent)&&v.parent.initializer===v)}function SYs(u,m){return ji(u,v=>v===m?"quit":v===m.initializer||v===m.condition||v===m.incrementor||v===m.statement)}function hKt(u){return ji(u,m=>!m||Zye(m)?"quit":VT(m,!1))}function vYs(u,m){if(Ze>=2||!(m.flags&34)||!m.valueDeclaration||ll(m.valueDeclaration)||m.valueDeclaration.parent.kind===300)return;let v=tS(m.valueDeclaration),D=EYs(u,v),P=hKt(v);if(P){if(D){let Y=!0;if(L3(v)){let oe=ML(m.valueDeclaration,262);if(oe&&oe.parent===v){let Be=SYs(u.parent,v);if(Be){let Oe=sa(Be);Oe.flags|=8192;let He=Oe.capturedBlockScopeBindings||(Oe.capturedBlockScopeBindings=[]);Qi(He,m),Be===v.initializer&&(Y=!1)}}}Y&&(sa(P).flags|=4096)}if(L3(v)){let Y=ML(m.valueDeclaration,262);Y&&Y.parent===v&&wYs(u,v)&&(sa(m.valueDeclaration).flags|=65536)}sa(m.valueDeclaration).flags|=32768}D&&(sa(m.valueDeclaration).flags|=16384)}function BYs(u,m){let v=sa(u);return!!v&&k(v.capturedBlockScopeBindings,Uo(m))}function wYs(u,m){let v=u;for(;v.parent.kind===218;)v=v.parent;let D=!1;if(bF(v))D=!0;else if(v.parent.kind===225||v.parent.kind===226){let P=v.parent;D=P.operator===46||P.operator===47}return D?!!ji(v,P=>P===m?"quit":P===m.statement):!1}function mKt(u,m){if(sa(u).flags|=2,m.kind===173||m.kind===177){let v=m.parent;sa(v).flags|=4}else sa(m).flags|=4}function Umn(u){return Dy(u)?u:bu(u)?void 0:Lu(u,Umn)}function CKt(u){let m=Uo(u),v=Fp(m);return nZ(v)===Ot}function Kmn(u,m,v){let D=m.parent;OL(D)&&!CKt(D)&&UJ(u)&&u.flowNode&&!Oot(u.flowNode,!1)&&Sr(u,v)}function TYs(u,m){pi(m)&&zh(m)&&Ue&&m.initializer&&sl(m.initializer,u.pos)&&p1(m.parent)&&Sr(u,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function eOe(u){let m=OY(u),v=r0(u,!0,!0),D=!1,P=!1;for(v.kind===177&&Kmn(u,v,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(v.kind===220&&(v=r0(v,!1,!P),D=!0),v.kind===168){v=r0(v,!D,!1),P=!0;continue}break}if(TYs(u,v),P)Sr(u,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(v.kind){case 268:Sr(u,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 267:Sr(u,Z.this_cannot_be_referenced_in_current_location);break}!m&&D&&Ze<2&&mKt(u,v);let Y=_Kt(u,!0,v);if(Lt){let oe=Io(pr);if(Y===oe&&D)Sr(u,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!Y){let Be=Sr(u,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!ll(v)){let Oe=_Kt(v);Oe&&Oe!==oe&&lg(Be,mo(v,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return Y||hr}function _Kt(u,m=!0,v=r0(u,!1,!1)){let D=wo(u);if(bu(v)&&(!EKt(u)||vP(v))){let P=Pst(v)||D&&DYs(v);if(!P){let Y=NYs(v);if(D&&Y){let oe=Ol(Y).symbol;oe&&oe.members&&oe.flags&16&&(P=Fp(oe).thisType)}else YN(v)&&(P=Fp(jA(v.symbol)).thisType);P||(P=yKt(v))}if(P)return dZ(u,P)}if(xa(v.parent)){let P=Uo(v.parent),Y=cg(v)?Io(P):Fp(P).thisType;return dZ(u,Y)}if(ll(v))if(v.commonJsModuleIndicator){let P=Uo(v);return P&&Io(P)}else{if(v.externalModuleIndicator)return Bt;if(m)return Io(pr)}}function RYs(u){let m=r0(u,!1,!1);if(bu(m)){let v=yS(m);if(v.thisParameter)return Pot(v.thisParameter)}if(xa(m.parent)){let v=Uo(m.parent);return cg(m)?Io(v):Fp(v).thisType}}function NYs(u){if(u.kind===219&&fo(u.parent)&&nI(u.parent)===3)return u.parent.left.expression.expression;if(u.kind===175&&u.parent.kind===211&&fo(u.parent.parent)&&nI(u.parent.parent)===6)return u.parent.parent.left.expression;if(u.kind===219&&u.parent.kind===304&&u.parent.parent.kind===211&&fo(u.parent.parent.parent)&&nI(u.parent.parent.parent)===6)return u.parent.parent.parent.left.expression;if(u.kind===219&&fm(u.parent)&&Ir(u.parent.name)&&(u.parent.name.escapedText==="value"||u.parent.name.escapedText==="get"||u.parent.name.escapedText==="set")&&og(u.parent.parent)&&Zl(u.parent.parent.parent)&&u.parent.parent.parent.arguments[2]===u.parent.parent&&nI(u.parent.parent.parent)===9)return u.parent.parent.parent.arguments[0].expression;if(uu(u)&&Ir(u.name)&&(u.name.escapedText==="value"||u.name.escapedText==="get"||u.name.escapedText==="set")&&og(u.parent)&&Zl(u.parent.parent)&&u.parent.parent.arguments[2]===u.parent&&nI(u.parent.parent)===9)return u.parent.parent.arguments[0].expression}function DYs(u){let m=Nb(u);if(m&&m.typeExpression)return nl(m.typeExpression);let v=Vpe(u);if(v)return k5(v)}function kYs(u,m){return!!ji(u,v=>kd(v)?"quit":v.kind===170&&v.parent===m)}function Qot(u){let m=u.parent.kind===214&&u.parent.expression===u,v=C7(u,!0),D=v,P=!1,Y=!1;if(!m){for(;D&&D.kind===220;)Ga(D,1024)&&(Y=!0),D=C7(D,!0),P=Ze<2;D&&Ga(D,1024)&&(Y=!0)}let oe=0;if(!D||!qe(D)){let Vt=ji(u,kt=>kt===D?"quit":kt.kind===168);return Vt&&Vt.kind===168?Sr(u,Z.super_cannot_be_referenced_in_a_computed_property_name):m?Sr(u,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(xa(D.parent)||D.parent.kind===211)?Sr(u,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):Sr(u,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),nn}if(!m&&v.kind===177&&Kmn(u,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),cg(D)||m?(oe=32,!m&&Ze>=2&&Ze<=8&&(pi(D)||fl(D))&&kge(u.parent,Vt=>{(!ll(Vt)||vl(Vt))&&(sa(Vt).flags|=2097152)})):oe=16,sa(u).flags|=oe,D.kind===175&&Y&&(xy(u.parent)&&bF(u.parent)?sa(D).flags|=256:sa(D).flags|=128),P&&mKt(u.parent,D),D.parent.kind===211)return Ze<2?(Sr(u,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),nn):hr;let Be=D.parent;if(!OL(Be))return Sr(u,Z.super_can_only_be_referenced_in_a_derived_class),nn;if(CKt(Be))return m?nn:Ot;let Oe=Fp(Uo(Be)),He=Oe&&Kw(Oe)[0];if(!He)return nn;if(D.kind===177&&kYs(u,D))return Sr(u,Z.super_cannot_be_referenced_in_constructor_arguments),nn;return oe===32?nZ(Oe):T1(He,Oe.thisType);function qe(Vt){return m?Vt.kind===177:xa(Vt.parent)||Vt.parent.kind===211?cg(Vt)?Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===176:Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===172||Vt.kind===177:!1}}function jmn(u){return(u.kind===175||u.kind===178||u.kind===179)&&u.parent.kind===211?u.parent:u.kind===219&&u.parent.kind===304?u.parent.parent:void 0}function zmn(u){return la(u)&4&&u.target===C2?lf(u)[0]:void 0}function xYs(u){return Yf(u,m=>m.flags&2097152?F(m.types,zmn):zmn(m))}function qmn(u,m){let v=u,D=m;for(;D;){let P=xYs(D);if(P)return P;if(v.parent.kind!==304)break;v=v.parent.parent,D=O5(v,void 0)}}function yKt(u){if(u.kind===220)return;if(fot(u)){let v=M2e(u);if(v){let D=v.thisParameter;if(D)return Io(D)}}let m=wo(u);if(Lt||m){let v=jmn(u);if(v){let P=O5(v,void 0),Y=qmn(v,P);return Y?_l(Y,KUt(JQ(v))):D1(P?gZ(P):RI(v))}let D=gv(u.parent);if(Jm(D)){let P=D.left;if(_p(P)){let{expression:Y}=P;if(m&&Ir(Y)){let oe=ms(D);if(oe.commonJsModuleIndicator&&L0(Y)===oe.symbol)return}return D1(RI(Y))}}}}function $mn(u){let m=u.parent;if(!fot(m))return;let v=ZL(m);if(v&&v.arguments){let P=lat(v),Y=m.parameters.indexOf(u);if(u.dotDotDotToken)return JKt(P,Y,P.length,hr,void 0,0);let oe=sa(v),Be=oe.resolvedSignature;oe.resolvedSignature=Ls;let Oe=Y0)return Npe(v.name,!0,!1)}}function LYs(u,m){let v=A1(u);if(v){let D=Xot(v,m);if(D){let P=SI(v);if(P&1){let Y=(P&2)!==0;D.flags&1048576&&(D=nm(D,Be=>!!D9(1,Be,Y)));let oe=D9(1,D,(P&2)!==0);if(!oe)return;D=oe}if(P&2){let Y=Yf(D,pZ);return Y&&Ha([Y,C_n(Y)])}return D}}}function VYs(u,m){let v=Jy(u,m);if(v){let D=pZ(v);return D&&Ha([D,C_n(D)])}}function PYs(u,m){let v=A1(u);if(v){let D=SI(v),P=Xot(v,m);if(P){let Y=(D&2)!==0;if(!u.asteriskToken&&P.flags&1048576&&(P=nm(P,oe=>!!D9(1,oe,Y))),u.asteriskToken){let oe=x8t(P,Y),Be=oe?.yieldType??Vn,Oe=Jy(u,m)??Vn,He=oe?.nextType??cn,qe=pat(Be,Oe,He,!1);if(Y){let Vt=pat(Be,Oe,He,!0);return Ha([qe,Vt])}return qe}return D9(0,P,Y)}}}function EKt(u){let m=!1;for(;u.parent&&!bu(u.parent);){if(Si(u.parent)&&(m||u.parent.initializer===u))return!0;hg(u.parent)&&u.parent.initializer===u&&(m=!0),u=u.parent}return!1}function eCn(u,m){let v=!!(SI(m)&2),D=Xot(m,void 0);if(D)return D9(u,D,v)||void 0}function Xot(u,m){let v=Dse(u);if(v)return v;let D=zot(u);if(D&&!Kst(D)){let Y=ud(D),oe=SI(u);return oe&1?nm(Y,Be=>!!(Be.flags&58998787)||h8t(Be,oe,void 0)):oe&2?nm(Y,Be=>!!(Be.flags&58998787)||!!tfe(Be)):Y}let P=ZL(u);if(P)return Jy(P,m)}function tCn(u,m){let D=lat(u).indexOf(m);return D===-1?void 0:SKt(u,D)}function SKt(u,m){if(Up(u))return m===0?$r:m===1?DIn(!1):hr;let v=sa(u).resolvedSignature===Go?Go:Yse(u);if(eI(u)&&m===0)return jot(v,u);let D=v.parameters.length-1;return D0(v)&&m>=D?R1(Io(v.parameters[D]),fR(m-D),256):CR(v,m)}function WYs(u){let m=a8t(u);return m?fK(m):void 0}function OYs(u,m){if(u.parent.kind===216)return tCn(u.parent,m)}function MYs(u,m){let v=u.parent,{left:D,operatorToken:P,right:Y}=v;switch(P.kind){case 64:case 77:case 76:case 78:return u===Y?YYs(v):void 0;case 57:case 61:let oe=Jy(v,m);return u===Y&&(oe&&oe.pattern||!oe&&!AZe(v))?P_(D):oe;case 56:case 28:return u===Y?Jy(v,m):void 0;default:return}}function HYs(u){if(mE(u)&&u.symbol)return u.symbol;if(Ir(u))return L0(u);if(jo(u)){let v=P_(u.expression);return p(u.name)?m(v,u.name):Gg(v,u.name.escapedText)}if(Yg(u)){let v=RI(u.argumentExpression);if(!g2(v))return;let D=P_(u.expression);return Gg(D,A2(v))}return;function m(v,D){let P=aOe(D.escapedText,D);return P&&sat(v,P)}}function YYs(u){var m,v;let D=nI(u);switch(D){case 0:case 4:let P=HYs(u.left),Y=P&&P.valueDeclaration;if(Y&&(pi(Y)||ss(Y))){let Oe=kh(Y);return Oe&&_l(nl(Oe),fa(P).mapper)||(pi(Y)?Y.initializer&&P_(u.left):void 0)}return D===0?P_(u.left):rCn(u);case 5:if(Jot(u,D))return rCn(u);if(!mE(u.left)||!u.left.symbol)return P_(u.left);{let Oe=u.left.symbol.valueDeclaration;if(!Oe)return;let He=Ma(u.left,_p),qe=kh(Oe);if(qe)return nl(qe);if(Ir(He.expression)){let Vt=He.expression,kt=An(Vt,Vt.escapedText,111551,void 0,!0);if(kt){let vr=kt.valueDeclaration&&kh(kt.valueDeclaration);if(vr){let dn=YD(He);if(dn!==void 0)return W5(nl(vr),dn)}return}}return wo(Oe)||Oe===u.left?void 0:P_(u.left)}case 1:case 6:case 3:case 2:let oe;D!==2&&(oe=mE(u.left)?(m=u.left.symbol)==null?void 0:m.valueDeclaration:void 0),oe||(oe=(v=u.symbol)==null?void 0:v.valueDeclaration);let Be=oe&&kh(oe);return Be?nl(Be):void 0;case 7:case 8:case 9:return pe.fail("Does not apply");default:return pe.assertNever(D)}}function Jot(u,m=nI(u)){if(m===4)return!0;if(!wo(u)||m!==5||!Ir(u.left.expression))return!1;let v=u.left.expression.escapedText,D=An(u.left,v,111551,void 0,!0,!0);return Yge(D?.valueDeclaration)}function rCn(u){if(!u.symbol)return P_(u.left);if(u.symbol.valueDeclaration){let P=kh(u.symbol.valueDeclaration);if(P){let Y=nl(P);if(Y)return Y}}let m=Ma(u.left,_p);if(!a2(r0(m.expression,!1,!1)))return;let v=eOe(m.expression),D=YD(m);return D!==void 0&&W5(v,D)||void 0}function QYs(u){return!!(iI(u)&262144&&!u.links.type&&rt(u,0)>=0)}function vKt(u,m){if(u.flags&16777216){let v=u;return!!(JB(fW(v)).flags&131072)&&aZ(IW(v))===aZ(v.checkType)&&dg(m,v.extendsType)}return u.flags&2097152?jt(u.types,v=>vKt(v,m)):!1}function W5(u,m,v){return Yf(u,D=>{if(D.flags&2097152){let P,Y,oe=!1;for(let Be of D.types){if(!(Be.flags&524288))continue;if(Yb(Be)&&h2e(Be)!==2){let He=nCn(Be,m,v);P=BKt(P,He);continue}let Oe=iCn(Be,m);if(!Oe){oe||(Y=Ft(Y,Be));continue}oe=!0,Y=void 0,P=BKt(P,Oe)}if(Y)for(let Be of Y){let Oe=sCn(Be,m,v);P=BKt(P,Oe)}return P?P.length===1?P[0]:Kg(P):void 0}if(D.flags&524288)return Yb(D)&&h2e(D)!==2?nCn(D,m,v):iCn(D,m)??sCn(D,m,v)},!0)}function BKt(u,m){return m?Ft(u,m.flags&1?cn:m):u}function nCn(u,m,v){let D=v||TE(Bc(m)),P=_S(u);if(u.nameType&&vKt(u.nameType,D)||vKt(P,D))return;let Y=L_(P)||P;if(dg(D,Y))return lot(u,D)}function iCn(u,m){let v=Gg(u,m);if(!(!v||QYs(v)))return AZ(Io(v),!!(v.flags&16777216))}function sCn(u,m,v){var D;if(yA(u)&&IN(m)&&+m>=0){let P=Xpe(u,u.target.fixedLength,0,!1,!0);if(P)return P}return(D=PJt(WJt(u),v||TE(Bc(m))))==null?void 0:D.type}function oCn(u,m){if(pe.assert(a2(u)),!(u.flags&67108864))return wKt(u,m)}function wKt(u,m){let v=u.parent,D=fm(u)&&bKt(u,m);if(D)return D;let P=O5(v,m);if(P){if(Rse(u)){let Y=Uo(u);return W5(P,Y.escapedName,fa(Y).nameType)}if(XD(u)){let Y=Il(u);if(Y&&Un(Y)){let oe=Ol(Y.expression),Be=g2(oe)&&W5(P,A2(oe));if(Be)return Be}}if(u.name){let Y=sZ(u.name);return Yf(P,oe=>{var Be;return(Be=PJt(WJt(oe),Y))==null?void 0:Be.type},!0)}}}function XYs(u){let m,v;for(let D=0;D{if(yA(Y)){if((D===void 0||mP)?v-m:0,Be=oe>0&&Y.target.combinedFlags&12?E2e(Y.target,3):0;return oe>0&&oe<=Be?lf(Y)[B9(Y)-oe]:Xpe(Y,D===void 0?Y.target.fixedLength:Math.min(Y.target.fixedLength,D),v===void 0||P===void 0?Be:Math.min(Be,v-P),!1,!0)}return(!D||mT9(Oe)?R1(Oe,fR(oe)):Oe,!0))}function KYs(u,m){let v=u.parent;return wJ(v)?Jy(u,m):bN(v)?UYs(v,u,m):void 0}function aCn(u,m){if(EN(u)){let v=O5(u.parent,m);return!v||Xo(v)?void 0:W5(v,cz(u.name))}else return Jy(u.parent,m)}function tOe(u){switch(u.kind){case 11:case 9:case 10:case 15:case 229:case 112:case 97:case 106:case 80:case 157:return!0;case 212:case 218:return tOe(u.expression);case 295:return!u.expression||tOe(u.expression)}return!1}function jYs(u,m){let v=`D${rd(u)},${QC(m)}`;return Hy(v)??HB(v,WHs(m,u)??xUt(m,Nn(At(Me(u.properties,D=>D.symbol?D.kind===304?tOe(D.initializer)&&Jpe(m,D.symbol.escapedName):D.kind===305?Jpe(m,D.symbol.escapedName):!1:!1),D=>[()=>yOe(D.kind===304?D.initializer:D.name),D.symbol.escapedName]),At(Me(Gd(m),D=>{var P;return!!(D.flags&16777216)&&!!((P=u?.symbol)!=null&&P.members)&&!u.symbol.members.has(D.escapedName)&&Jpe(m,D.escapedName)}),D=>[()=>Bt,D.escapedName])),dg))}function zYs(u,m){let v=`D${rd(u)},${QC(m)}`,D=Hy(v);if(D)return D;let P=iOe(NK(u));return HB(v,xUt(m,Nn(At(Me(u.properties,Y=>!!Y.symbol&&Y.kind===292&&Jpe(m,Y.symbol.escapedName)&&(!Y.initializer||tOe(Y.initializer))),Y=>[Y.initializer?()=>yOe(Y.initializer):()=>tn,Y.symbol.escapedName]),At(Me(Gd(m),Y=>{var oe;if(!(Y.flags&16777216)||!((oe=u?.symbol)!=null&&oe.members))return!1;let Be=u.parent.parent;return Y.escapedName===P&&bN(Be)&&$J(Be.children).length?!1:!u.symbol.members.has(Y.escapedName)&&Jpe(m,Y.escapedName)}),Y=>[()=>Bt,Y.escapedName])),dg))}function O5(u,m){let v=a2(u)?oCn(u,m):Jy(u,m),D=Uot(v,u,m);if(D&&!(m&&m&2&&D.flags&8650752)){let P=Yf(D,Y=>la(Y)&32?Y:fy(Y),!0);return P.flags&1048576&&og(u)?jYs(u,P):P.flags&1048576&&nQ(u)?zYs(u,P):P}}function Uot(u,m,v){if(u&&ah(u,465829888)){let D=JQ(m);if(D&&v&1&&jt(D.inferences,J4s))return Kot(u,D.nonFixingMapper);if(D?.returnMapper){let P=Kot(u,D.returnMapper);return P.flags&1048576&&tG(P.types,Ys)&&tG(P.types,wn)?nm(P,Y=>Y!==Ys&&Y!==wn):P}}return u}function Kot(u,m){return u.flags&465829888?_l(u,m):u.flags&1048576?Ha(At(u.types,v=>Kot(v,m)),0):u.flags&2097152?Kg(At(u.types,v=>Kot(v,m))):u}function Jy(u,m){var v;if(u.flags&67108864)return;let D=lCn(u,!m);if(D>=0)return Wb[D];let{parent:P}=u;switch(P.kind){case 261:case 170:case 173:case 172:case 209:return ZYs(u,m);case 220:case 254:return LYs(u,m);case 230:return PYs(P,m);case 224:return VYs(P,m);case 214:case 215:return tCn(P,u);case 171:return WYs(P);case 217:case 235:return s2(P.type)?Jy(P,m):nl(P.type);case 227:return MYs(u,m);case 304:case 305:return wKt(P,m);case 306:return Jy(P.parent,m);case 210:{let Y=P,oe=O5(Y,m),Be=fP(Y.elements,u),Oe=(v=sa(Y)).spreadIndices??(v.spreadIndices=XYs(Y.elements));return TKt(oe,Be,Y.elements.length,Oe.first,Oe.last)}case 228:return JYs(u,m);case 240:return pe.assert(P.parent.kind===229),OYs(P.parent,u);case 218:{if(wo(P)){if(Lbe(P))return nl(Vbe(P));let Y=ov(P);if(Y&&!s2(Y.typeExpression.type))return nl(Y.typeExpression.type)}return Jy(P,m)}case 236:return Jy(P,m);case 239:return nl(P.type);case 278:return AW(P);case 295:return KYs(P,m);case 292:case 294:return aCn(P,m);case 287:case 286:return sQs(P,m);case 302:return iQs(P)}}function cCn(u){rOe(u,Jy(u,void 0),!0)}function rOe(u,m,v){kf[p_]=u,Wb[p_]=m,OB[p_]=v,p_++}function O2e(){p_--,kf[p_]=void 0,Wb[p_]=void 0,OB[p_]=void 0}function lCn(u,m){for(let v=p_-1;v>=0;v--)if(u===kf[v]&&(m||!OB[v]))return v;return-1}function qYs(u,m){v1[GN]=u,s5[GN]=m,GN++}function $Ys(){GN--,v1[GN]=void 0,s5[GN]=void 0}function JQ(u){for(let m=GN-1;m>=0;m--)if(EP(u,v1[m]))return s5[m]}function eQs(u){ok[ak]=u,o5[ak]??(o5[ak]=new Map),ak++}function tQs(){ak--,ok[ak]=void 0,o5[ak].clear()}function rQs(u){for(let m=ak-1;m>=0;m--)if(u===ok[m])return m;return-1}function nQs(){for(let u=ak-1;u>=0;u--)o5[u].clear()}function iQs(u){return W5(qJt(!1),JAe(u))}function sQs(u,m){if($T(u)&&m!==4){let v=lCn(u.parent,!m);if(v>=0)return Wb[v]}return SKt(u,0)}function jot(u,m){return Pw(m)||JCn(m)!==0?oQs(u,m):lQs(u,m)}function oQs(u,m){let v=s8t(u,cn);v=uCn(m,NK(m),v);let D=UQ(lS.IntrinsicAttributes,m);return uo(D)||(v=hWe(D,v)),v}function aQs(u,m){if(u.compositeSignatures){let D=[];for(let P of u.compositeSignatures){let Y=ud(P);if(Xo(Y))return Y;let oe=Pi(Y,m);if(!oe)return;D.push(oe)}return Kg(D)}let v=ud(u);return Xo(v)?v:Pi(v,m)}function cQs(u){if(Pw(u))return n_n(u);if(Fq(u.tagName)){let v=_Cn(u),D=uat(u,v);return fK(D)}let m=RI(u.tagName);if(m.flags&128){let v=CCn(m,u);if(!v)return nn;let D=uat(u,v);return fK(D)}return m}function uCn(u,m,v){let D=kQs(m);if(D){let P=cQs(u),Y=ECn(D,wo(u),P,v);if(Y)return Y}return v}function lQs(u,m){let v=NK(m),D=GQs(v),P=D===void 0?s8t(u,cn):D===""?ud(u):aQs(u,D);if(!P)return D&&B(m.attributes.properties)&&Sr(m,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Bc(D)),cn;if(P=uCn(m,v,P),Xo(P))return P;{let Y=P,oe=UQ(lS.IntrinsicClassAttributes,m);if(!uo(oe)){let Oe=Ug(oe.symbol),He=ud(u),qe;if(Oe){let Vt=v9([He],Oe,Ik(Oe),wo(m));qe=_l(oe,N1(Oe,Vt))}else qe=oe;Y=hWe(qe,Y)}let Be=UQ(lS.IntrinsicAttributes,m);return uo(Be)||(Y=hWe(Be,Y)),Y}}function uQs(u){return a_(Te,"noImplicitAny")?Ul(u,(m,v)=>m===v||!m?m:Qfn(m.typeParameters,v.typeParameters)?dQs(m,v):void 0):void 0}function gQs(u,m,v){if(!u||!m)return u||m;let D=Ha([Io(u),_l(Io(m),v)]);return SK(u,D)}function AQs(u,m,v){let D=NE(u),P=NE(m),Y=D>=P?u:m,oe=Y===u?m:u,Be=Y===u?D:P,Oe=Ck(u)||Ck(m),He=Oe&&!Ck(Y),qe=new Array(Be+(He?1:0));for(let Vt=0;Vt=_R(Y)&&Vt>=_R(oe),Yi=Vt>=D?void 0:zpe(u,Vt),js=Vt>=P?void 0:zpe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=gA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?d0(dn):dn,qe[Vt]=Ji}if(He){let Vt=gA(1,"args",32768);Vt.links.type=d0(CR(oe,Be)),oe===m&&(Vt.links.type=_l(Vt.links.type,v)),qe[Be]=Vt}return qe}function dQs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=N1(m.typeParameters,u.typeParameters));let P=(u.flags|m.flags)&166,Y=u.declaration,oe=AQs(u,m,D),Be=li(oe);Be&&iI(Be)&32768&&(P|=1);let Oe=gQs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),qe=PN(Y,v,Oe,oe,void 0,void 0,He,P);return qe.compositeKind=2097152,qe.compositeSignatures=Nn(u.compositeKind===2097152&&u.compositeSignatures||[u],[m]),D&&(qe.mapper=u.compositeKind===2097152&&u.mapper&&u.compositeSignatures?F5(u.mapper,D):D),qe}function RKt(u,m){let v=tg(u,0),D=Me(v,P=>!pQs(P,m));return D.length===1?D[0]:uQs(D)}function pQs(u,m){let v=0;for(;v{let oe=h.getTokenEnd();if(D.category===3&&v&&oe===v.start&&P===v.length){let Be=QY(m.fileName,m.text,oe,P,D,Y);lg(v,Be)}else(!v||oe!==v.start)&&(v=qh(m,oe,P,D,Y),PA.add(v))}),h.setText(m.text,u.pos,u.end-u.pos);try{return h.scan(),pe.assert(h.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!v}finally{h.setText(""),h.setOnError(void 0)}}return!1}function IQs(u){let m=sa(u);return m.flags&1||(m.flags|=1,g(()=>fQs(u))),XI}function hQs(u,m){ZeQpe(kt)||Yb(kt)&&!kt.nameType&&!!w2e(kt.target||kt)),Vt=!1;for(let kt=0;ktoe[vr]&8?pW(kt,ri)||hr:kt),2):ot?Ui:xe,Oe))}function ACn(u){if(!(la(u)&4))return u;let m=u.literalType;return m||(m=u.literalType=mIn(u),m.objectFlags|=147456),m}function _Qs(u){switch(u.kind){case 168:return yQs(u);case 80:return IN(u.escapedText);case 9:case 11:return IN(u.text);default:return!1}}function yQs(u){return V_(zw(u),296)}function zw(u){let m=sa(u.expression);if(!m.resolvedType){if((mh(u.parent.parent)||xa(u.parent.parent)||g_(u.parent.parent))&&fo(u.expression)&&u.expression.operatorToken.kind===103&&u.parent.kind!==178&&u.parent.kind!==179)return m.resolvedType=nn;if(m.resolvedType=Ol(u.expression),pi(u.parent)&&!zh(u.parent)&&vd(u.parent.parent)){let v=tS(u.parent.parent),D=hKt(v);D&&(sa(D).flags|=4096,sa(u).flags|=32768,sa(u.parent.parent).flags|=32768)}(m.resolvedType.flags&98304||!V_(m.resolvedType,402665900)&&!dg(m.resolvedType,mc))&&Sr(u,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return m.resolvedType}function bQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return IN(u.escapedName)||v&&rh(v)&&_Qs(v.name)}function dCn(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return k7(u)||v&&rh(v)&&Un(v.name)&&V_(zw(v.name),4096)}function EQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return v&&rh(v)&&Un(v.name)}function H2e(u,m,v,D){var P;let Y=[],oe;for(let Oe=m;Oe0&&(oe=OQ(oe,Ji(),u.symbol,dn,He),Y=[],P=qu(),ii=!1,Yi=!1,js=!1);let yl=JB(Ol(Mi.expression,m&2));if(nOe(yl)){let ka=mUt(yl,He);if(D&&ICn(ka,D,Mi),Co=Y.length,uo(oe))continue;oe=OQ(oe,ka,u.symbol,dn,He)}else Sr(Mi,Z.Spread_types_may_only_be_created_from_object_types),oe=nn;continue}else pe.assert(Mi.kind===178||Mi.kind===179),Lq(Mi);Ka&&!(Ka.flags&8576)?dg(Ka,mc)&&(dg(Ka,ri)?Yi=!0:dg(Ka,ci)?js=!0:ii=!0,v&&(vn=!0)):P.set(To.escapedName,To),Y.push(To)}if(O2e(),uo(oe))return nn;if(oe!==Xg)return Y.length>0&&(oe=OQ(oe,Ji(),u.symbol,dn,He),Y=[],P=qu(),ii=!1,Yi=!1),Yf(oe,Mi=>Mi===Xg?Ji():Mi);return Ji();function Ji(){let Mi=[],To=$pe(u);ii&&Mi.push(H2e(To,Co,Y,$r)),Yi&&Mi.push(H2e(To,Co,Y,ri)),js&&Mi.push(H2e(To,Co,Y,ci));let Ka=Hf(u.symbol,P,E,E,Mi);return Ka.objectFlags|=dn|128|131072,vr&&(Ka.objectFlags|=4096),vn&&(Ka.objectFlags|=512),v&&(Ka.pattern=u),Ka}}function nOe(u){let m=zhn(Yf(u,WN));return!!(m.flags&126615553||m.flags&3145728&&ue(m.types,nOe))}function vQs(u){DKt(u)}function BQs(u,m){return Lq(u),sOe(u)||hr}function wQs(u){DKt(u.openingElement),Fq(u.closingElement.tagName)?eat(u.closingElement):Ol(u.closingElement.tagName),$ot(u)}function TQs(u,m){return Lq(u),sOe(u)||hr}function RQs(u){DKt(u.openingFragment);let m=ms(u);NAe(Te)&&(Te.jsxFactory||m.pragmas.has("jsx"))&&!Te.jsxFragmentFactory&&!m.pragmas.has("jsxfrag")&&Sr(u,Te.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),$ot(u);let v=sOe(u);return uo(v)?hr:v}function NKt(u){return u.includes("-")}function Fq(u){return Ir(u)&&eU(u.escapedText)||eR(u)}function pCn(u,m){return u.initializer?efe(u.initializer,m):tn}function fCn(u,m=0){let v=ot?qu():void 0,D=qu(),P=sh,Y=!1,oe,Be=!1,Oe=2048,He=iOe(NK(u)),qe=Pw(u),Vt,kt=u;if(!qe){let vn=u.attributes;Vt=vn.symbol,kt=vn;let ii=Jy(vn,0);for(let Yi of vn.properties){let js=Yi.symbol;if(EN(Yi)){let Co=pCn(Yi,m);Oe|=la(Co)&458752;let Ji=gA(4|js.flags,js.escapedName);if(Ji.declarations=js.declarations,Ji.parent=js.parent,js.valueDeclaration&&(Ji.valueDeclaration=js.valueDeclaration),Ji.links.type=Co,Ji.links.target=js,D.set(Ji.escapedName,Ji),v?.set(Ji.escapedName,Ji),cz(Yi.name)===He&&(Be=!0),ii){let Mi=Gg(ii,js.escapedName);Mi&&Mi.declarations&&dy(Mi)&&Ir(Yi.name)&&YB(Yi.name,Mi.declarations,Yi.name.escapedText)}if(ii&&m&2&&!(m&4)&&bS(Yi)){let Mi=JQ(vn);pe.assert(Mi);let To=Yi.initializer.expression;JUt(Mi,To,Co)}}else{pe.assert(Yi.kind===294),D.size>0&&(P=OQ(P,dn(),vn.symbol,Oe,!1),D=qu());let Co=JB(Ol(Yi.expression,m&2));Xo(Co)&&(Y=!0),nOe(Co)?(P=OQ(P,Co,vn.symbol,Oe,!1),v&&ICn(Co,v,Yi)):(Sr(Yi.expression,Z.Spread_types_may_only_be_created_from_object_types),oe=oe?Kg([oe,Co]):Co)}}Y||D.size>0&&(P=OQ(P,dn(),vn.symbol,Oe,!1))}let vr=u.parent;if((bN(vr)&&vr.openingElement===u||P3(vr)&&vr.openingFragment===u)&&$J(vr.children).length>0){let vn=$ot(vr,m);if(!Y&&He&&He!==""){Be&&Sr(kt,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Bc(He));let ii=$T(u)?O5(u.attributes,void 0):void 0,Yi=ii&&W5(ii,He),js=gA(4,He);js.links.type=vn.length===1?vn[0]:Yi&&kv(Yi,Qpe)?hk(vn):d0(Ha(vn)),js.valueDeclaration=me.createPropertySignature(void 0,Bc(He),void 0,void 0),XA(js.valueDeclaration,kt),js.valueDeclaration.symbol=js;let Co=qu();Co.set(He,js),P=OQ(P,Hf(Vt,Co,E,E,E),Vt,Oe,!1)}}if(Y)return hr;if(oe&&P!==sh)return Kg([oe,P]);return oe||(P===sh?dn():P);function dn(){return Oe|=8192,NQs(Oe,Vt,D)}}function NQs(u,m,v){let D=Hf(m,v,E,E,E);return D.objectFlags|=u|8192|128|131072,D}function $ot(u,m){let v=[];for(let D of u.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||v.push($r);else{if(D.kind===295&&!D.expression)continue;v.push(efe(D,m))}return v}function ICn(u,m,v){for(let D of Gd(u))if(!(D.flags&16777216)){let P=m.get(D.escapedName);if(P){let Y=Sr(P.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Bc(P.escapedName));lg(Y,mo(v,Z.This_spread_always_overwrites_this_property))}}}function DQs(u,m){return fCn(u.parent,m)}function UQ(u,m){let v=NK(m),D=v&&B1(v),P=D&&f_(D,u,788968);return P?Fp(P):nn}function eat(u){let m=sa(u);if(!m.resolvedSymbol){let v=UQ(lS.IntrinsicElements,u);if(uo(v))return Rt&&Sr(u,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Bc(lS.IntrinsicElements)),m.resolvedSymbol=it;{if(!Ir(u.tagName)&&!eR(u.tagName))return pe.fail();let D=eR(u.tagName)?oS(u.tagName):u.tagName.escapedText,P=Gg(v,D);if(P)return m.jsxFlags|=1,m.resolvedSymbol=P;let Y=M0n(v,TE(Bc(D)));return Y?(m.jsxFlags|=2,m.resolvedSymbol=Y):Ba(v,D)?(m.jsxFlags|=2,m.resolvedSymbol=v.symbol):(Sr(u,Z.Property_0_does_not_exist_on_type_1,Pbe(u.tagName),"JSX."+lS.IntrinsicElements),m.resolvedSymbol=it)}}return m.resolvedSymbol}function tat(u){let m=u&&ms(u),v=m&&sa(m);if(v&&v.jsxImplicitImportContainer===!1)return;if(v&&v.jsxImplicitImportContainer)return v.jsxImplicitImportContainer;let D=Hne(Mne(Te,m),Te);if(!D)return;let Y=k_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed,oe=djs(m,D),Be=eK(oe||u,D,Y,u),Oe=Be&&Be!==it?jA(Zh(Be)):void 0;return v&&(v.jsxImplicitImportContainer=Oe||!1),Oe}function NK(u){let m=u&&sa(u);if(m&&m.jsxNamespace)return m.jsxNamespace;if(!m||m.jsxNamespace!==!1){let D=tat(u);if(!D||D===it){let P=Mw(u);D=An(u,P,1920,void 0,!1)}if(D){let P=Zh(f_(B1(Zh(D)),lS.JSX,1920));if(P&&P!==it)return m&&(m.jsxNamespace=P),P}m&&(m.jsxNamespace=!1)}let v=Zh(Fse(lS.JSX,1920,void 0));if(v!==it)return v}function hCn(u,m){let v=m&&f_(m.exports,u,788968),D=v&&Fp(v),P=D&&Gd(D);if(P){if(P.length===0)return"";if(P.length===1)return P[0].escapedName;P.length>1&&v.declarations&&Sr(v.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,Bc(u))}}function kQs(u){return u&&f_(u.exports,lS.LibraryManagedAttributes,788968)}function xQs(u){return u&&f_(u.exports,lS.ElementType,788968)}function GQs(u){return hCn(lS.ElementAttributesPropertyNameContainer,u)}function iOe(u){return Te.jsx===4||Te.jsx===5?"children":hCn(lS.ElementChildrenAttributeNameContainer,u)}function mCn(u,m){if(u.flags&4)return[Ls];if(u.flags&128){let P=CCn(u,m);return P?[uat(m,P)]:(Sr(m,Z.Property_0_does_not_exist_on_type_1,u.value,"JSX."+lS.IntrinsicElements),E)}let v=fy(u),D=tg(v,1);return D.length===0&&(D=tg(v,0)),D.length===0&&v.flags&1048576&&(D=RJt(At(v.types,P=>mCn(P,m)))),D}function CCn(u,m){let v=UQ(lS.IntrinsicElements,m);if(!uo(v)){let D=u.value,P=Gg(v,Ap(D));if(P)return Io(P);let Y=D5(v,$r);return Y||void 0}return hr}function FQs(u,m,v){if(u===1){let P=bCn(v);P&&Rv(m,P,l0,v.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(u===0){let P=yCn(v);P&&Rv(m,P,l0,v.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let P=bCn(v),Y=yCn(v);if(!P||!Y)return;let oe=Ha([P,Y]);Rv(m,oe,l0,v.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let P=xp(v.tagName);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,P)}}function _Cn(u){var m;pe.assert(Fq(u.tagName));let v=sa(u);if(!v.resolvedJsxElementAttributesType){let D=eat(u);if(v.jsxFlags&1)return v.resolvedJsxElementAttributesType=Io(D)||nn;if(v.jsxFlags&2){let P=eR(u.tagName)?oS(u.tagName):u.tagName.escapedText;return v.resolvedJsxElementAttributesType=((m=vq(UQ(lS.IntrinsicElements,u),P))==null?void 0:m.type)||nn}else return v.resolvedJsxElementAttributesType=nn}return v.resolvedJsxElementAttributesType}function yCn(u){let m=UQ(lS.ElementClass,u);if(!uo(m))return m}function sOe(u){return UQ(lS.Element,u)}function bCn(u){let m=sOe(u);if(m)return Ha([m,Hn])}function ZQs(u){let m=NK(u);if(!m)return;let v=xQs(m);if(!v)return;let D=ECn(v,wo(u));if(!(!D||uo(D)))return D}function ECn(u,m,...v){let D=Fp(u);if(u.flags&524288){let P=fa(u).typeParameters;if(B(P)>=v.length){let Y=v9(v,P,v.length,m);return B(Y)===0?D:xse(u,Y)}}if(B(D.typeParameters)>=v.length){let P=v9(v,D.typeParameters,v.length,m);return iZ(D,P)}}function LQs(u){let m=UQ(lS.IntrinsicElements,u);return m?Gd(m):E}function VQs(u){(Te.jsx||0)===0&&Sr(u,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),sOe(u)===void 0&&Rt&&Sr(u,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function DKt(u){let m=eI(u);m&&V8s(u),VQs(u),IKt(u);let v=Yse(u);if(Aat(v,u),m){let D=u,P=ZQs(D);if(P!==void 0){let Y=D.tagName,oe=Fq(Y)?TE(Pbe(Y)):Ol(Y);Rv(oe,P,l0,Y,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Be=xp(Y);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,Be)})}else FQs(JCn(D),ud(v),D)}}function rat(u,m,v){if(u.flags&524288&&(LQ(u,m)||vq(u,m)||f2e(m)&&$x(u,$r)||v&&NKt(m)))return!0;if(u.flags&33554432)return rat(u.baseType,m,v);if(u.flags&3145728&&Y2e(u)){for(let D of u.types)if(rat(D,m,v))return!0}return!1}function Y2e(u){return!!(u.flags&524288&&!(la(u)&512)||u.flags&67108864||u.flags&33554432&&Y2e(u.baseType)||u.flags&1048576&&jt(u.types,Y2e)||u.flags&2097152&&ue(u.types,Y2e))}function PQs(u,m){if(W8s(u),u.expression){let v=Ol(u.expression,m);return u.dotDotDotToken&&v!==hr&&!Nv(v)&&Sr(u,Z.JSX_spread_child_must_be_an_array_type),v}else return nn}function kKt(u){return u.valueDeclaration?jQ(u.valueDeclaration):0}function xKt(u){if(u.flags&8192||iI(u)&4)return!0;if(wo(u.valueDeclaration)){let m=u.valueDeclaration.parent;return m&&fo(m)&&nI(m)===3}}function GKt(u,m,v,D,P,Y=!0){let oe=Y?u.kind===167?u.right:u.kind===206?u:u.kind===209&&u.propertyName?u.propertyName:u.name:void 0;return SCn(u,m,v,D,P,oe)}function SCn(u,m,v,D,P,Y){var oe;let Be=u2(P,v);if(m){if(Ze<2&&vCn(P))return Y&&Sr(Y,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Be&64)return Y&&Sr(Y,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,kl(P),no(Nq(P))),!1;if(!(Be&256)&&((oe=P.declarations)!=null&&oe.some(Bre)))return Y&&Sr(Y,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,kl(P)),!1}if(Be&64&&vCn(P)&&(ene(u)||lZe(u)||Km(u.parent)&&Yge(u.parent.parent))){let He=AN($m(P));if(He&&ZKs(u))return Y&&Sr(Y,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,kl(P),c2(He.name)),!1}if(!(Be&6))return!0;if(Be&2){let He=AN($m(P));return P8t(u,He)?!0:(Y&&Sr(Y,Z.Property_0_is_private_and_only_accessible_within_class_1,kl(P),no(Nq(P))),!1)}if(m)return!0;let Oe=W0n(u,He=>{let qe=Fp(Uo(He));return Ohn(qe,P,v)});return!Oe&&(Oe=WQs(u),Oe=Oe&&Ohn(Oe,P,v),Be&256||!Oe)?(Y&&Sr(Y,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,kl(P),no(Nq(P)||D)),!1):Be&256?!0:(D.flags&262144&&(D=D.isThisType?Xy(D):L_(D)),!D||!da(D,Oe)?(Y&&Sr(Y,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,kl(P),no(Oe),no(D)),!1):!0)}function WQs(u){let m=OQs(u),v=m?.type&&nl(m.type);if(v)v.flags&262144&&(v=Xy(v));else{let D=r0(u,!1,!1);bu(D)&&(v=yKt(D))}if(v&&la(v)&7)return vs(v)}function OQs(u){let m=r0(u,!1,!1);return m&&bu(m)?vP(m):void 0}function vCn(u){return!!PWe(u,m=>!(m.flags&8192))}function Mse(u){return HN(Ol(u),u)}function oOe(u){return hR(u,50331648)}function FKt(u){return oOe(u)?gZ(u):u}function MQs(u,m){let v=Od(u)?oy(u):void 0;if(u.kind===106){Sr(u,Z.The_value_0_cannot_be_used_here,"null");return}if(v!==void 0&&v.length<100){if(Ir(u)&&v==="undefined"){Sr(u,Z.The_value_0_cannot_be_used_here,"undefined");return}Sr(u,m&16777216?m&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,v)}else Sr(u,m&16777216?m&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function HQs(u,m){Sr(u,m&16777216?m&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function BCn(u,m,v){if(ot&&u.flags&2){if(Od(m)){let P=oy(m);if(P.length<100)return Sr(m,Z._0_is_of_type_unknown,P),nn}return Sr(m,Z.Object_is_of_type_unknown),nn}let D=Vse(u,50331648);if(D&50331648){v(m,D);let P=gZ(u);return P.flags&229376?nn:P}return u}function HN(u,m){return BCn(u,m,MQs)}function wCn(u,m){let v=HN(u,m);if(v.flags&16384){if(Od(m)){let D=oy(m);if(Ir(m)&&D==="undefined")return Sr(m,Z.The_value_0_cannot_be_used_here,D),v;if(D.length<100)return Sr(m,Z._0_is_possibly_undefined,D),v}Sr(m,Z.Object_is_possibly_undefined)}return v}function nat(u,m,v){return u.flags&64?YQs(u,m):LKt(u,u.expression,Mse(u.expression),u.name,m,v)}function YQs(u,m){let v=Ol(u.expression),D=x2e(v,u.expression);return Tot(LKt(u,u.expression,HN(D,u.expression),u.name,m),u,D!==v)}function TCn(u,m){let v=Xge(u)&&vF(u.left)?HN(eOe(u.left),u.left):Mse(u.left);return LKt(u,u.left,v,u.right,m)}function ZKt(u){for(;u.parent.kind===218;)u=u.parent;return av(u.parent)&&u.parent.expression===u}function aOe(u,m){for(let v=Mge(m);v;v=hC(v)){let{symbol:D}=v,P=yne(D,u),Y=D.members&&D.members.get(P)||D.exports&&D.exports.get(P);if(Y)return Y}}function QQs(u){if(!hC(u))return os(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!zLe(u.parent)){if(!MT(u))return os(u,Z.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression);let m=fo(u.parent)&&u.parent.operatorToken.kind===103;if(!iat(u)&&!m)return os(u,Z.Cannot_find_name_0,Vo(u))}return!1}function XQs(u){QQs(u);let m=iat(u);return m&&lOe(m,void 0,!1),hr}function iat(u){if(!MT(u))return;let m=sa(u);return m.resolvedSymbol===void 0&&(m.resolvedSymbol=aOe(u.escapedText,u)),m.resolvedSymbol}function sat(u,m){return Gg(u,m.escapedName)}function JQs(u,m,v){let D,P=Gd(u);P&&F(P,oe=>{let Be=oe.valueDeclaration;if(Be&&rh(Be)&&p(Be.name)&&Be.name.escapedText===m.escapedText)return D=oe,!0});let Y=vE(m);if(D){let oe=pe.checkDefined(D.valueDeclaration),Be=pe.checkDefined(hC(oe));if(v?.valueDeclaration){let Oe=v.valueDeclaration,He=hC(Oe);if(pe.assert(!!He),ji(He,qe=>Be===qe)){let qe=Sr(m,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,Y,no(u));return lg(qe,mo(Oe,Z.The_shadowing_declaration_of_0_is_defined_here,Y),mo(oe,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,Y)),!0}}return Sr(m,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,Y,vE(Be.name||Eet)),!0}return!1}function RCn(u,m){return(jx(m)||ene(u)&&dk(m))&&r0(u,!0,!1)===vo(m)}function LKt(u,m,v,D,P,Y){let oe=sa(m).resolvedSymbol,Be=QD(u),Oe=fy(Be!==0||ZKt(u)?D1(v):v),He=Xo(Oe)||Oe===Vn,qe;if(p(D)){(Ze{switch(v.kind){case 173:case 176:return!0;case 187:case 288:return"quit";case 220:return m?!1:"quit";case 242:return kd(v.parent)&&v.parent.kind!==220?"quit":!1;default:return!1}})}function KQs(u){if(!(u.parent.flags&32))return!1;let m=Io(u.parent);for(;;){if(m=m.symbol&&jQs(m),!m)return!1;let v=Gg(m,u.escapedName);if(v&&v.valueDeclaration)return!0}}function jQs(u){let m=Kw(u);if(m.length!==0)return Kg(m)}function DCn(u,m,v){let D=sa(u),P=D.nonExistentPropCheckCache||(D.nonExistentPropCheckCache=new Set),Y=`${QC(m)}|${v}`;if(P.has(Y))return;P.add(Y);let oe,Be;if(!p(u)&&m.flags&1048576&&!(m.flags&402784252)){for(let He of m.types)if(!Gg(He,u.escapedText)&&!vq(He,u.escapedText)){oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Wd(u),no(He));break}}if(kCn(u.escapedText,m)){let He=Wd(u),qe=no(m);oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,He,qe,qe+"."+He)}else{let He=tSe(m);if(He&&Gg(He,u.escapedText))oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Wd(u),no(m)),Be=mo(u,Z.Did_you_forget_to_use_await);else{let qe=Wd(u),Vt=no(m),kt=$Qs(qe,m);if(kt!==void 0)oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,qe,Vt,kt);else{let vr=WKt(u,m);if(vr!==void 0){let dn=nf(vr),vn=v?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;oe=wu(oe,vn,qe,Vt,dn),Be=vr.valueDeclaration&&mo(vr.valueDeclaration,Z._0_is_declared_here,dn)}else{let dn=zQs(m)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;oe=wu(VJt(oe,m),dn,qe,Vt)}}}}let Oe=Bw(ms(u),u,oe);Be&&lg(Oe,Be),Hx(!v||oe.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Oe)}function zQs(u){return Te.lib&&!Te.lib.includes("lib.dom.d.ts")&&tYs(u,m=>m.symbol&&/^(?:EventTarget|Node|(?:HTML[a-zA-Z]*)?Element)$/.test(Bc(m.symbol.escapedName)))&&lZ(u)}function kCn(u,m){let v=m.symbol&&Gg(Io(m.symbol),u);return v!==void 0&&!!v.valueDeclaration&&cg(v.valueDeclaration)}function qQs(u){let m=vE(u),D=Yre().get(m);return D&&vu(D.keys())}function $Qs(u,m){let v=fy(m).symbol;if(!v)return;let D=nf(v),Y=Yre().get(D);if(Y){for(let[oe,Be]of Y)if(k(Be,u))return oe}}function xCn(u,m){return cOe(u,Gd(m),106500)}function WKt(u,m){let v=Gd(m);if(typeof u!="string"){let D=u.parent;jo(D)&&(v=Me(v,P=>VCn(D,m,P))),u=Vo(u)}return cOe(u,v,111551)}function GCn(u,m){let v=Xs(u)?u:Vo(u),D=Gd(m);return(v==="for"?de(D,Y=>nf(Y)==="htmlFor"):v==="class"?de(D,Y=>nf(Y)==="className"):void 0)??cOe(v,D,111551)}function FCn(u,m){let v=WKt(u,m);return v&&nf(v)}function eXs(u,m,v){let D=f_(u,m,v);if(D)return D;let P;return u===Gr?P=Xt(["string","number","boolean","object","bigint","symbol"],oe=>u.has(oe.charAt(0).toUpperCase()+oe.slice(1))?gA(524288,oe):void 0).concat(Do(u.values())):P=Do(u.values()),cOe(Bc(m),P,v)}function ZCn(u,m,v){return pe.assert(m!==void 0,"outername should always be defined"),si(u,m,v,void 0,!1,!1)}function OKt(u,m){return m.exports&&cOe(Vo(u),dq(m),2623475)}function tXs(u,m,v){function D(oe){let Be=LQ(u,oe);if(Be){let Oe=kK(Io(Be));return!!Oe&&_R(Oe)>=1&&dg(v,CR(Oe,0))}return!1}let P=bF(m)?"set":"get";if(!D(P))return;let Y=TP(m.expression);return Y===void 0?Y=P:Y+="."+P,Y}function rXs(u,m){let v=m.types.filter(D=>!!(D.flags&128));return Dr(u.value,v,D=>D.value)}function cOe(u,m,v){return Dr(u,m,D);function D(P){let Y=nf(P);if(!Ac(Y,'"')){if(P.flags&v)return Y;if(P.flags&2097152){let oe=lq(P);if(oe&&oe.flags&v)return Y}}}}function lOe(u,m,v){let D=u&&u.flags&106500&&u.valueDeclaration;if(!D)return;let P=Gb(D,2),Y=u.valueDeclaration&&rh(u.valueDeclaration)&&p(u.valueDeclaration.name);if(!(!P&&!Y)&&!(m&&_Ae(m)&&!(u.flags&65536))){if(v){let oe=ji(m,kd);if(oe&&oe.symbol===u)return}(iI(u)&1?fa(u).target:u).isReferenced=-1}}function LCn(u,m){return u.kind===110||!!m&&Od(u)&&m===L0(B0(u))}function nXs(u,m){switch(u.kind){case 212:return MKt(u,u.expression.kind===108,m,D1(Ol(u.expression)));case 167:return MKt(u,!1,m,D1(Ol(u.left)));case 206:return MKt(u,!1,m,nl(u))}}function VCn(u,m,v){return HKt(u,u.kind===212&&u.expression.kind===108,!1,m,v)}function MKt(u,m,v,D){if(Xo(D))return!0;let P=Gg(D,v);return!!P&&HKt(u,m,!1,D,P)}function HKt(u,m,v,D,P){if(Xo(D))return!0;if(P.valueDeclaration&&pC(P.valueDeclaration)){let Y=hC(P.valueDeclaration);return!GC(u)&&!!ji(u,oe=>oe===Y)}return SCn(u,m,v,D,P)}function iXs(u){let m=u.initializer;if(m.kind===262){let v=m.declarations[0];if(v&&!Nu(v.name))return Uo(v)}else if(m.kind===80)return L0(m)}function sXs(u){return A0(u).length===1&&!!$x(u,ri)}function oXs(u){let m=QA(u);if(m.kind===80){let v=L0(m);if(v.flags&3){let D=u,P=u.parent;for(;P;){if(P.kind===250&&D===P.statement&&iXs(P)===v&&sXs(P_(P.expression)))return!0;D=P,P=P.parent}}}return!1}function aXs(u,m){return u.flags&64?cXs(u,m):PCn(u,Mse(u.expression),m)}function cXs(u,m){let v=Ol(u.expression),D=x2e(v,u.expression);return Tot(PCn(u,HN(D,u.expression),m),u,D!==v)}function PCn(u,m,v){let D=QD(u)!==0||ZKt(u)?D1(m):m,P=u.argumentExpression,Y=Ol(P);if(uo(D)||D===Vn)return D;if(Iat(D)&&!mA(P))return Sr(P,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),nn;let oe=oXs(P)?ri:Y,Be=QD(u),Oe;Be===0?Oe=32:(Oe=4|(CK(D)&&!az(D)?2:0),Be===2&&(Oe|=32));let He=pW(D,oe,Oe,u)||nn;return U_n(NCn(u,sa(u).resolvedSymbol,He,P,v),u)}function WCn(u){return av(u)||MI(u)||eI(u)}function DK(u){return WCn(u)&&F(u.typeArguments,rA),u.kind===216?Ol(u.template):eI(u)?Ol(u.attributes):fo(u)?Ol(u.left):av(u)&&F(u.arguments,m=>{Ol(m)}),Ls}function mR(u){return DK(u),Za}function lXs(u,m,v){let D,P,Y=0,oe,Be=-1,Oe;pe.assert(!m.length);for(let He of u){let qe=He.declaration&&Uo(He.declaration),Vt=He.declaration&&He.declaration.parent;!P||qe===P?D&&Vt===D?oe=oe+1:(D=Vt,oe=Y):(oe=Y=m.length,D=Vt),P=qe,xtn(He)?(Be++,Oe=Be,Y++):Oe=oe,m.splice(Oe,0,v?XOs(He,v):He)}}function oat(u){return!!u&&(u.kind===231||u.kind===238&&u.isSpread)}function YKt(u){return Se(u,oat)}function OCn(u){return!!(u.flags&16384)}function uXs(u){return!!(u.flags&49155)}function aat(u,m,v,D=!1){if(Pw(u))return!0;let P,Y=!1,oe=NE(v),Be=_R(v);if(u.kind===216)if(P=m.length,u.template.kind===229){let Oe=Ei(u.template.templateSpans);Y=sf(Oe.literal)||!!Oe.literal.isUnterminated}else{let Oe=u.template;pe.assert(Oe.kind===15),Y=!!Oe.isUnterminated}else if(u.kind===171)P=KCn(u,v);else if(u.kind===227)P=1;else if(eI(u)){if(Y=u.attributes.end===u.end,Y)return!0;P=Be===0?m.length:1,oe=m.length===0?oe:1,Be=Math.min(Be,1)}else if(u.arguments){P=D?m.length+1:m.length,Y=u.arguments.end===u.end;let Oe=YKt(m);if(Oe>=0)return Oe>=_R(v)&&(Ck(v)||Oeoe)return!1;if(Y||P>=Be)return!0;for(let Oe=P;Oe=D&&m.length<=v}function MCn(u,m){let v;return!!(u.target&&(v=KQ(u.target,m))&&G5(v))}function kK(u){return Q2e(u,0,!1)}function HCn(u){return Q2e(u,0,!1)||Q2e(u,1,!1)}function Q2e(u,m,v){if(u.flags&524288){let D=pR(u);if(v||D.properties.length===0&&D.indexInfos.length===0){if(m===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(m===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function YCn(u,m,v,D){let P=Z2e(pIn(u),u,0,D),Y=U2e(m),oe=v&&(Y&&Y.flags&262144?v.nonFixingMapper:v.mapper),Be=oe?bK(m,oe):m;return YUt(Be,u,(Oe,He)=>{nG(P.inferences,Oe,He)}),v||QUt(m,u,(Oe,He)=>{nG(P.inferences,Oe,He,128)}),y2e(u,nKt(P),wo(m.declaration))}function gXs(u,m,v,D){let P=jot(m,u),Y=Qse(u.attributes,P,D,v);return nG(D.inferences,Y,P),nKt(D)}function QCn(u){if(!u)return es;let m=Ol(u);return YZe(u)?m:aP(u.parent)?gZ(m):GC(u.parent)?wot(m):m}function XKt(u,m,v,D,P){if(eI(u))return gXs(u,m,D,P);if(u.kind!==171&&u.kind!==227){let Oe=ue(m.typeParameters,qe=>!!VQ(qe)),He=Jy(u,Oe?8:0);if(He){let qe=ud(m);if(CW(qe)){let Vt=JQ(u);if(!(!Oe&&Jy(u,8)!==He)){let vn=KUt(tmn(Vt,1)),ii=_l(He,vn),Yi=kK(ii),js=Yi&&Yi.typeParameters?fK(YJt(Yi,Yi.typeParameters)):ii;nG(P.inferences,js,qe,128)}let vr=Z2e(m.typeParameters,m,P.flags),dn=_l(He,Vt&&uMs(Vt));nG(vr.inferences,dn,qe),P.returnMapper=jt(vr.inferences,Xse)?KUt(_Hs(vr)):void 0}}}let Y=K2e(m),oe=Y?Math.min(NE(m)-1,v.length):v.length;if(Y&&Y.flags&262144){let Oe=de(P.inferences,He=>He.typeParameter===Y);Oe&&(Oe.impliedArity=Se(v,oat,oe)<0?v.length-oe:void 0)}let Be=k5(m);if(Be&&CW(Be)){let Oe=UCn(u);nG(P.inferences,QCn(Oe),Be)}for(let Oe=0;Oe=v-1){let qe=u[v-1];if(oat(qe)){let Vt=qe.kind===238?qe.type:Qse(qe.expression,D,P,Y);return T9(Vt)?XCn(Vt):d0(N9(33,Vt,Bt,qe.kind===231?qe.expression:qe),oe)}}let Be=[],Oe=[],He=[];for(let qe=m;qewu(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Vt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Be||(Be=N1(Y,oe));let kt=oe[Oe];if(!p0(kt,T1(_l(He,Be),kt),v?m[Oe]:void 0,Vt,qe))return}}return oe}function JCn(u){if(Fq(u.tagName))return 2;let m=fy(Ol(u.tagName));return B(tg(m,1))?0:B(tg(m,0))?1:2}function AXs(u,m,v,D,P,Y,oe){let Be=jot(m,u),Oe=Pw(u)?fCn(u):Qse(u.attributes,Be,void 0,D),He=D&4?F2e(Oe):Oe;return qe()&&TUt(He,Be,v,P?Pw(u)?u:u.tagName:void 0,Pw(u)?void 0:u.attributes,void 0,Y,oe);function qe(){var Vt;if(tat(u))return!0;let kt=($T(u)||_U(u))&&!(Fq(u.tagName)||eR(u.tagName))?Ol(u.tagName):void 0;if(!kt)return!0;let vr=tg(kt,0);if(!B(vr))return!0;let dn=Y8t(u);if(!dn)return!0;let vn=TI(dn,111551,!0,!1,u);if(!vn)return!0;let ii=Io(vn),Yi=tg(ii,0);if(!B(Yi))return!0;let js=!1,Co=0;for(let Mi of Yi){let To=CR(Mi,0),Ka=tg(To,0);if(B(Ka))for(let yl of Ka){if(js=!0,Ck(yl))return!0;let ka=NE(yl);ka>Co&&(Co=ka)}}if(!js)return!0;let Ji=1/0;for(let Mi of vr){let To=_R(Mi);To{P.push(Y.expression)}),P}if(u.kind===171)return dXs(u);if(u.kind===227)return[u.left];if(eI(u))return u.attributes.properties.length>0||$T(u)&&u.parent.children.length>0?[u.attributes]:E;let m=u.arguments||E,v=YKt(m);if(v>=0){let D=m.slice(0,v);for(let P=v;P{var He;let qe=oe.target.elementFlags[Oe],Vt=X2e(Y,qe&4?d0(Be):Be,!!(qe&12),(He=oe.target.labeledElementDeclarations)==null?void 0:He[Oe]);D.push(Vt)}):D.push(Y)}return D}return m}function dXs(u){let m=u.expression,v=a8t(u);if(v){let D=[];for(let P of v.parameters){let Y=Io(P);D.push(X2e(m,Y))}return D}return pe.fail()}function KCn(u,m){return Te.experimentalDecorators?pXs(u,m):Math.min(Math.max(NE(m),1),2)}function pXs(u,m){switch(u.parent.kind){case 264:case 232:return 1;case 173:return Nw(u.parent)?3:2;case 175:case 178:case 179:return m.parameters.length<=2?2:3;case 170:return 3;default:return pe.fail()}}function jCn(u){let m=ms(u),{start:v,length:D}=qa(m,jo(u.expression)?u.expression.name:u.expression);return{start:v,length:D,sourceFile:m}}function J2e(u,m,...v){if(Zl(u)){let{sourceFile:D,start:P,length:Y}=jCn(u);return"message"in m?qh(D,P,Y,m,...v):Ut(D,m)}else return"message"in m?mo(u,m,...v):Bw(ms(u),u,m)}function fXs(u){return av(u)?jo(u.expression)?u.expression.name:u.expression:MI(u)?jo(u.tag)?u.tag.name:u.tag:eI(u)?u.tagName:u}function IXs(u){if(!Zl(u)||!Ir(u.expression))return!1;let m=An(u.expression,u.expression.escapedText,111551,void 0,!1),v=m?.valueDeclaration;if(!v||!Si(v)||!RF(v.parent)||!f2(v.parent.parent)||!Ir(v.parent.parent.expression))return!1;let D=$Jt(!1);return D?xv(v.parent.parent.expression,!0)===D:!1}function zCn(u,m,v,D){var P;let Y=YKt(v);if(Y>-1)return mo(v[Y],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let oe=Number.POSITIVE_INFINITY,Be=Number.NEGATIVE_INFINITY,Oe=Number.NEGATIVE_INFINITY,He=Number.POSITIVE_INFINITY,qe;for(let vn of m){let ii=_R(vn),Yi=NE(vn);iiOe&&(Oe=ii),v.lengthP?oe=Math.min(oe,Oe):He1&&(vn=yl(Yi,ck,Ji,Mi)),vn||(vn=yl(Yi,l0,Ji,Mi));let To=sa(u);if(To.resolvedSignature!==Go&&!v)return pe.assert(To.resolvedSignature),To.resolvedSignature;if(vn)return vn;if(vn=mXs(u,Yi,Co,!!v,D),To.resolvedSignature=vn,Vt){if(!Y&&qe&&(Y=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),kt)if(kt.length===1||kt.length>3){let ka=kt[kt.length-1],Kc;kt.length>3&&(Kc=wu(Kc,Z.The_last_overload_gave_the_following_error),Kc=wu(Kc,Z.No_overload_matches_this_call)),Y&&(Kc=wu(Kc,Y));let Vu=uOe(u,Co,ka,l0,0,!0,()=>Kc);if(Vu)for(let gd of Vu)ka.declaration&&kt.length>3&&lg(gd,mo(ka.declaration,Z.The_last_overload_is_declared_here)),Ka(ka,gd),PA.add(gd);else pe.fail("No error for last overload signature")}else{let ka=[],Kc=0,Vu=Number.MAX_VALUE,gd=0,Ll=0;for(let to of kt){let _o=uOe(u,Co,to,l0,0,!0,()=>wu(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Ll+1,Yi.length,lW(to)));_o?(_o.length<=Vu&&(Vu=_o.length,gd=Ll),Kc=Math.max(Kc,_o.length),ka.push(_o)):pe.fail("No error for 3 or fewer overload signatures"),Ll++}let Ef=Kc>1?ka[gd]:Nr(ka);pe.assert(Ef.length>0,"No errors reported for 3 or fewer overload signatures");let UI=wu(At(Ef,Qr),Z.No_overload_matches_this_call);Y&&(UI=wu(UI,Y));let V0=[...er(Ef,to=>to.relatedInformation)],xs;if(ue(Ef,to=>to.start===Ef[0].start&&to.length===Ef[0].length&&to.file===Ef[0].file)){let{file:to,start:qc,length:_o}=Ef[0];xs={file:to,start:qc,length:_o,code:UI.code,category:UI.category,messageText:UI,relatedInformation:V0}}else xs=Bw(ms(u),fXs(u),UI,V0);Ka(kt[0],xs),PA.add(xs)}else if(vr)PA.add(zCn(u,[vr],Co,Y));else if(dn)UKt(dn,u.typeArguments,!0,Y);else if(!He){let ka=Me(m,Kc=>QKt(Kc,js));ka.length===0?PA.add(hXs(u,m,js,Y)):PA.add(zCn(u,ka,Co,Y))}}return vn;function Ka(ka,Kc){var Vu,gd;let Ll=kt,Ef=vr,UI=dn,V0=((gd=(Vu=ka.declaration)==null?void 0:Vu.symbol)==null?void 0:gd.declarations)||E,to=V0.length>1?de(V0,qc=>kd(qc)&&u1(qc.body)):void 0;if(to){let qc=yS(to),_o=!qc.typeParameters;yl([qc],l0,_o)&&lg(Kc,mo(to,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}kt=Ll,vr=Ef,dn=UI}function yl(ka,Kc,Vu,gd=!1){if(kt=void 0,vr=void 0,dn=void 0,Vu){let Ll=ka[0];if(jt(js)||!aat(u,Co,Ll,gd))return;if(uOe(u,Co,Ll,Kc,0,!1,void 0)){kt=[Ll];return}return Ll}for(let Ll=0;Ll0),Lq(u),D||m.length===1||m.some(Y=>!!Y.typeParameters)?yXs(u,m,v,P):CXs(m)}function CXs(u){let m=Xt(u,Oe=>Oe.thisParameter),v;m.length&&(v=qCn(m,m.map(dOe)));let{min:D,max:P}=CLe(u,_Xs),Y=[];for(let Oe=0;OeD0(qe)?OeKQ(qe,Oe))))}let oe=Xt(u,Oe=>D0(Oe)?Ei(Oe.parameters):void 0),Be=128;if(oe.length!==0){let Oe=d0(Ha(Xt(u,dIn),2));Y.push($Cn(oe,Oe)),Be|=1}return u.some(xtn)&&(Be|=2),PN(u[0].declaration,void 0,v,Y,Kg(u.map(ud)),void 0,D,Be)}function _Xs(u){let m=u.parameters.length;return D0(u)?m-1:m}function qCn(u,m){return $Cn(u,Ha(m,2))}function $Cn(u,m){return SK(ma(u),m)}function yXs(u,m,v,D){let P=SXs(m,Br===void 0?v.length:Br),Y=m[P],{typeParameters:oe}=Y;if(!oe)return Y;let Be=WCn(u)?u.typeArguments:void 0,Oe=Be?jst(Y,bXs(Be,oe,wo(u))):EXs(u,oe,Y,v,D);return m[P]=Oe,Oe}function bXs(u,m,v){let D=u.map(Vq);for(;D.length>m.length;)D.pop();for(;D.length=m)return P;oe>D&&(D=oe,v=P)}return v}function vXs(u,m,v){if(u.expression.kind===108){let Oe=Qot(u.expression);if(Xo(Oe)){for(let He of u.arguments)Ol(He);return Ls}if(!uo(Oe)){let He=BB(hC(u));if(He){let qe=zx(Oe,He.typeArguments,He);return Hse(u,qe,m,v,0)}}return DK(u)}let D,P=Ol(u.expression);if(_B(u)){let Oe=x2e(P,u.expression);D=Oe===P?0:i3(u)?16:8,P=Oe}else D=0;if(P=BCn(P,u.expression,HQs),P===Vn)return Ss;let Y=fy(P);if(uo(Y))return mR(u);let oe=tg(Y,0),Be=tg(Y,1).length;if(gOe(P,Y,oe.length,Be))return!uo(P)&&u.typeArguments&&Sr(u,Z.Untyped_function_calls_may_not_accept_type_arguments),DK(u);if(!oe.length){if(Be)Sr(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,no(P));else{let Oe;if(u.arguments.length===1){let He=ms(u).text;Cl(He.charCodeAt(Yu(He,u.expression.end,!0)-1))&&(Oe=mo(u.expression,Z.Are_you_missing_a_semicolon))}jKt(u.expression,Y,0,Oe)}return mR(u)}return v&8&&!u.typeArguments&&oe.some(BXs)?(L_n(u,v),Go):oe.some(Oe=>wo(Oe.declaration)&&!!bx(Oe.declaration))?(Sr(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,no(P)),mR(u)):Hse(u,oe,m,v,D)}function BXs(u){return!!(u.typeParameters&&M8t(ud(u)))}function gOe(u,m,v,D){return Xo(u)||Xo(m)&&!!(u.flags&262144)||!v&&!D&&!(m.flags&1048576)&&!(JB(m).flags&131072)&&dg(u,Js)}function wXs(u,m,v){let D=Mse(u.expression);if(D===Vn)return Ss;if(D=fy(D),uo(D))return mR(u);if(Xo(D))return u.typeArguments&&Sr(u,Z.Untyped_function_calls_may_not_accept_type_arguments),DK(u);let P=tg(D,1);if(P.length){if(!TXs(u,P[0]))return mR(u);if(e_n(P,Be=>!!(Be.flags&4)))return Sr(u,Z.Cannot_create_an_instance_of_an_abstract_class),mR(u);let oe=D.symbol&&AN(D.symbol);return oe&&Ga(oe,64)?(Sr(u,Z.Cannot_create_an_instance_of_an_abstract_class),mR(u)):Hse(u,P,m,v,0)}let Y=tg(D,0);if(Y.length){let oe=Hse(u,Y,m,v,0);return Rt||(oe.declaration&&!YN(oe.declaration)&&ud(oe)!==es&&Sr(u,Z.Only_a_void_function_can_be_called_with_the_new_keyword),k5(oe)===es&&Sr(u,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),oe}return jKt(u.expression,D,1),mR(u)}function e_n(u,m){return Ki(u)?jt(u,v=>e_n(v,m)):u.compositeKind===1048576?jt(u.compositeSignatures,m):m(u)}function KKt(u,m){let v=Kw(m);if(!B(v))return!1;let D=v[0];if(D.flags&2097152){let P=D.types,Y=Jfn(P),oe=0;for(let Be of D.types){if(!Y[oe]&&la(Be)&3&&(Be.symbol===u||KKt(u,Be)))return!0;oe++}return!1}return D.symbol===u?!0:KKt(u,D)}function TXs(u,m){if(!m||!m.declaration)return!0;let v=m.declaration,D=MY(v,6);if(!D||v.kind!==177)return!0;let P=AN(v.parent.symbol),Y=Fp(v.parent.symbol);if(!P8t(u,P)){let oe=hC(u);if(oe&&D&4){let Be=Vq(oe);if(KKt(v.parent.symbol,Be))return!0}return D&2&&Sr(u,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,no(Y)),D&4&&Sr(u,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,no(Y)),!1}return!0}function t_n(u,m,v){let D,P=v===0,Y=Zq(m),oe=Y&&tg(Y,v).length>0;if(m.flags&1048576){let Oe=m.types,He=!1;for(let qe of Oe)if(tg(qe,v).length!==0){if(He=!0,D)break}else if(D||(D=wu(D,P?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,no(qe)),D=wu(D,P?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,no(m))),He)break;He||(D=wu(void 0,P?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,no(m))),D||(D=wu(D,P?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,no(m)))}else D=wu(D,P?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,no(m));let Be=P?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(Zl(u.parent)&&u.parent.arguments.length===0){let{resolvedSymbol:Oe}=sa(u);Oe&&Oe.flags&32768&&(Be=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:wu(D,Be),relatedMessage:oe?Z.Did_you_forget_to_use_await:void 0}}function jKt(u,m,v,D){let{messageChain:P,relatedMessage:Y}=t_n(u,m,v),oe=Bw(ms(u),u,P);if(Y&&lg(oe,mo(u,Y)),Zl(u.parent)){let{start:Be,length:Oe}=jCn(u.parent);oe.start=Be,oe.length=Oe}PA.add(oe),r_n(m,v,D?lg(oe,D):oe)}function r_n(u,m,v){if(!u.symbol)return;let D=fa(u.symbol).originatingImport;if(D&&!Up(D)){let P=tg(Io(fa(u.symbol).target),m);if(!P||!P.length)return;lg(v,mo(D,Z.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}function RXs(u,m,v){let D=Ol(u.tag),P=fy(D);if(uo(P))return mR(u);let Y=tg(P,0),oe=tg(P,1).length;if(gOe(D,P,Y.length,oe))return DK(u);if(!Y.length){if(OI(u.parent)){let Be=mo(u.tag,Z.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return PA.add(Be),mR(u)}return jKt(u.tag,P,0),mR(u)}return Hse(u,Y,m,v,0)}function NXs(u){switch(u.parent.kind){case 264:case 232:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 170:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 173:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 175:case 178:case 179:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return pe.fail()}}function DXs(u,m,v){let D=Ol(u.expression),P=fy(D);if(uo(P))return mR(u);let Y=tg(P,0),oe=tg(P,1).length;if(gOe(D,P,Y.length,oe))return DK(u);if(GXs(u,Y)&&!gI(u.expression)){let Oe=xp(u.expression,!1);return Sr(u,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Oe),mR(u)}let Be=NXs(u);if(!Y.length){let Oe=t_n(u.expression,P,0),He=wu(Oe.messageChain,Be),qe=Bw(ms(u.expression),u.expression,He);return Oe.relatedMessage&&lg(qe,mo(u.expression,Oe.relatedMessage)),PA.add(qe),r_n(P,0,qe),mR(u)}return Hse(u,Y,m,v,0,Be)}function uat(u,m){let v=NK(u),D=v&&B1(v),P=D&&f_(D,lS.Element,788968),Y=P&&Dt.symbolToEntityName(P,788968,u),oe=me.createFunctionTypeNode(void 0,[me.createParameterDeclaration(void 0,void 0,"props",void 0,Dt.typeToTypeNode(m,u))],Y?me.createTypeReferenceNode(Y,void 0):me.createKeywordTypeNode(133)),Be=gA(1,"props");return Be.links.type=m,PN(oe,void 0,void 0,[Be],P?Fp(P):nn,void 0,1,0)}function n_n(u){let m=sa(ms(u));if(m.jsxFragmentType!==void 0)return m.jsxFragmentType;let v=Mw(u);if(!((Te.jsx===2||Te.jsxFragmentFactory!==void 0)&&v!=="null"))return m.jsxFragmentType=hr;let P=Te.jsx!==1&&Te.jsx!==3,Y=PA?Z.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:void 0,oe=tat(u)??An(u,v,P?111551:111167,Y,!0);if(oe===void 0)return m.jsxFragmentType=nn;if(oe.escapedName===Net.Fragment)return m.jsxFragmentType=Io(oe);let Be=oe.flags&2097152?YC(oe):oe,Oe=oe&&B1(Be),He=Oe&&f_(Oe,Net.Fragment,2),qe=He&&Io(He);return m.jsxFragmentType=qe===void 0?nn:qe}function kXs(u,m,v){let D=Pw(u),P;if(D)P=n_n(u);else{if(Fq(u.tagName)){let Be=_Cn(u),Oe=uat(u,Be);return QQ(Qse(u.attributes,jot(Oe,u),void 0,0),Be,u.tagName,u.attributes),B(u.typeArguments)&&(F(u.typeArguments,rA),PA.add(A3(ms(u),u.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,B(u.typeArguments)))),Oe}P=Ol(u.tagName)}let Y=fy(P);if(uo(Y))return mR(u);let oe=mCn(P,u);return gOe(P,Y,oe.length,0)?DK(u):oe.length===0?(D?Sr(u,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,xp(u)):Sr(u.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,xp(u.tagName)),mR(u)):Hse(u,oe,m,v,0)}function xXs(u,m,v){let D=Ol(u.right);if(!Xo(D)){let P=A8t(D);if(P){let Y=fy(P);if(uo(Y))return mR(u);let oe=tg(Y,0),Be=tg(Y,1);if(gOe(P,Y,oe.length,Be.length))return DK(u);if(oe.length)return Hse(u,oe,m,v,0)}else if(!(Zat(D)||YQ(D,Js)))return Sr(u.right,Z.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),mR(u)}return Ls}function GXs(u,m){return m.length&&ue(m,v=>v.minArgumentCount===0&&!D0(v)&&v.parameters.length1?RI(u.arguments[1]):void 0;for(let Y=2;Y{let oe=D1(P);Iot(Y,oe)||Ghn(P,Y,v,Z.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)})}function HXs(u){let m=Ol(u.expression),v=x2e(m,u.expression);return Tot(gZ(v),u,v!==m)}function YXs(u){return u.flags&64?HXs(u):gZ(Ol(u.expression))}function u_n(u){if(ryn(u),F(u.typeArguments,rA),u.kind===234){let v=gv(u.parent);v.kind===227&&v.operatorToken.kind===104&&EP(u,v.right)&&Sr(u,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let m=u.kind===234?Ol(u.expression):vF(u.exprName)?eOe(u.exprName):Ol(u.exprName);return g_n(m,u)}function g_n(u,m){let v=m.typeArguments;if(u===Vn||uo(u)||!jt(v))return u;let D=sa(m);if(D.instantiationExpressionTypes||(D.instantiationExpressionTypes=new Map),D.instantiationExpressionTypes.has(u.id))return D.instantiationExpressionTypes.get(u.id);let P=!1,Y,oe=Oe(u);D.instantiationExpressionTypes.set(u.id,oe);let Be=P?Y:u;return Be&&PA.add(A3(ms(m),v,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,no(Be))),oe;function Oe(qe){let Vt=!1,kt=!1,vr=dn(qe);return P||(P=kt),Vt&&!kt&&(Y??(Y=qe)),vr;function dn(vn){if(vn.flags&524288){let ii=pR(vn),Yi=He(ii.callSignatures),js=He(ii.constructSignatures);if(Vt||(Vt=ii.callSignatures.length!==0||ii.constructSignatures.length!==0),kt||(kt=Yi.length!==0||js.length!==0),Yi!==ii.callSignatures||js!==ii.constructSignatures){let Co=Hf(gA(0,"__instantiationExpression"),ii.members,Yi,js,ii.indexInfos);return Co.objectFlags|=8388608,Co.node=m,Co}}else if(vn.flags&58982400){let ii=L_(vn);if(ii){let Yi=dn(ii);if(Yi!==ii)return Yi}}else{if(vn.flags&1048576)return Yf(vn,Oe);if(vn.flags&2097152)return Kg(Tr(vn.types,dn))}return vn}}function He(qe){let Vt=Me(qe,kt=>!!kt.typeParameters&&QKt(kt,v));return Tr(Vt,kt=>{let vr=UKt(kt,v,!0);return vr?y2e(kt,vr,wo(kt.declaration)):kt})}}function QXs(u){return rA(u.type),e8t(u.expression,u.type)}function e8t(u,m,v){let D=Ol(u,v),P=nl(m);if(uo(P))return P;let Y=ji(m.parent,oe=>oe.kind===239||oe.kind===351);return QQ(D,P,Y,u,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function XXs(u){return j8s(u),u.keywordToken===105?t8t(u):u.keywordToken===102?u.name.escapedText==="defer"?(pe.assert(!Zl(u.parent)||u.parent.expression!==u,"Trying to get the type of `import.defer` in `import.defer(...)`"),nn):JXs(u):pe.assertNever(u.keywordToken)}function A_n(u){switch(u.keywordToken){case 102:return NIn();case 105:let m=t8t(u);return uo(m)?nn:u4s(m);default:pe.assertNever(u.keywordToken)}}function t8t(u){let m=cZe(u);if(m)if(m.kind===177){let v=Uo(m.parent);return Io(v)}else{let v=Uo(m);return Io(v)}else return Sr(u,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),nn}function JXs(u){100<=We&&We<=199?ms(u).impliedNodeFormat!==99&&Sr(u,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):We<6&&We!==4&&Sr(u,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext);let m=ms(u);return pe.assert(!!(m.flags&8388608),"Containing file is missing import meta node flag."),u.name.escapedText==="meta"?RIn():nn}function dOe(u){let m=u.valueDeclaration;return Z0(Io(u),!1,!!m&&(WT(m)||RB(m)))}function r8t(u,m,v){switch(u.name.kind){case 80:{let D=u.name.escapedText;return u.dotDotDotToken?v&12?D:`${D}_${m}`:v&3?D:`${D}_n`}case 208:{if(u.dotDotDotToken){let D=u.name.elements,P=Gs(li(D),hg),Y=D.length-(P?.dotDotDotToken?1:0);if(m=D-1)return m===D-1?Y:d0(R1(Y,ri));let oe=[],Be=[],Oe=[];for(let He=m;He!(Oe&1)),Be=oe<0?Y.target.fixedLength:oe;Be>0&&(P=u.parameters.length-1+Be)}}if(P===void 0){if(!v&&u.flags&32)return 0;P=u.minArgumentCount}if(D)return P;for(let Y=P-1;Y>=0;Y--){let oe=CR(u,Y);if(nm(oe,OCn).flags&131072)break;P=Y}u.resolvedMinArgumentCount=P}return u.resolvedMinArgumentCount}function Ck(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]);return!yA(m)||!!(m.target.combinedFlags&12)}return!1}function U2e(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]);if(!yA(m))return Xo(m)?d_:m;if(m.target.combinedFlags&12)return Mpe(m,m.target.fixedLength)}}function K2e(u){let m=U2e(u);return m&&!Nv(m)&&!Xo(m)?m:void 0}function i8t(u){return s8t(u,Wi)}function s8t(u,m){return u.parameters.length>0?CR(u,0):m}function I_n(u,m,v){let D=u.parameters.length-(D0(u)?1:0);for(let Y=0;Y=0);let Y=Tc(D.parent)?Io(Uo(D.parent.parent)):Y0n(D.parent),oe=Tc(D.parent)?Bt:Q0n(D.parent),Be=fR(P),Oe=IS("target",Y),He=IS("propertyKey",oe),qe=IS("parameterIndex",Be);v.decoratorSignature=rSe(void 0,void 0,[Oe,He,qe],es);break}case 175:case 178:case 179:case 173:{let D=m;if(!xa(D.parent))break;let P=Y0n(D),Y=IS("target",P),oe=Q0n(D),Be=IS("propertyKey",oe),Oe=pi(D)?es:PIn(Vq(D));if(!pi(m)||Nw(m)){let qe=PIn(Vq(D)),Vt=IS("descriptor",qe);v.decoratorSignature=rSe(void 0,void 0,[Y,Be,Vt],Ha([Oe,es]))}else v.decoratorSignature=rSe(void 0,void 0,[Y,Be],Ha([Oe,es]));break}}return v.decoratorSignature===Ls?void 0:v.decoratorSignature}function a8t(u){return Ue?l4s(u):c4s(u)}function IOe(u){let m=vWe(!0);return m!==oi?(u=pZ(rfe(u))||cn,iZ(m,[u])):cn}function C_n(u){let m=GIn(!0);return m!==oi?(u=pZ(rfe(u))||cn,iZ(m,[u])):cn}function hOe(u,m){let v=IOe(m);return v===cn?(Sr(u,Up(u)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),nn):($Jt(!0)||Sr(u,Up(u)?Z.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),v)}function u4s(u){let m=gA(0,"NewTargetExpression"),v=gA(4,"target",8);v.parent=m,v.links.type=u;let D=qu([v]);return m.members=D,Hf(m,D,E,E,E)}function dat(u,m){if(!u.body)return nn;let v=SI(u),D=(v&2)!==0,P=(v&1)!==0,Y,oe,Be,Oe=es;if(u.body.kind!==242)Y=RI(u.body,m&&m&-9),D&&(Y=rfe(EOe(Y,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(P){let He=E_n(u,m);He?He.length>0&&(Y=Ha(He,2)):Oe=Wi;let{yieldTypes:qe,nextTypes:Vt}=g4s(u,m);oe=jt(qe)?Ha(qe,2):void 0,Be=jt(Vt)?Kg(Vt):void 0}else{let He=E_n(u,m);if(!He)return v&2?hOe(u,Wi):Wi;if(He.length===0){let qe=Xot(u,void 0),Vt=qe&&(ROe(qe,v)||es).flags&32768?Bt:es;return v&2?hOe(u,Vt):Vt}Y=Ha(He,2)}if(Y||oe||Be){if(oe&&kot(u,oe,3),Y&&kot(u,Y,1),Be&&kot(u,Be,2),Y&&IR(Y)||oe&&IR(oe)||Be&&IR(Be)){let He=zot(u),qe=He?He===yS(u)?P?void 0:Y:Uot(ud(He),u,void 0):void 0;P?(oe=MUt(oe,qe,0,D),Y=MUt(Y,qe,1,D),Be=MUt(Be,qe,2,D)):Y=iHs(Y,qe,D)}oe&&(oe=D1(oe)),Y&&(Y=D1(Y)),Be&&(Be=D1(Be))}return P?pat(oe||Wi,Y||Oe,Be||eCn(2,u)||cn,D):D?IOe(Y||Oe):Y||Oe}function pat(u,m,v,D){let P=D?_h:Gp,Y=P.getGlobalGeneratorType(!1);if(u=P.resolveIterationType(u,void 0)||cn,m=P.resolveIterationType(m,void 0)||cn,Y===oi){let oe=P.getGlobalIterableIteratorType(!1);return oe!==oi?Ope(oe,[u,m,v]):(P.getGlobalIterableIteratorType(!0),Xg)}return Ope(Y,[u,m,v])}function g4s(u,m){let v=[],D=[],P=(SI(u)&2)!==0;return tZe(u.body,Y=>{let oe=Y.expression?Ol(Y.expression,m):xe;Qi(v,__n(Y,oe,hr,P));let Be;if(Y.asteriskToken){let Oe=Bat(oe,P?19:17,Y.expression);Be=Oe&&Oe.nextType}else Be=Jy(Y,void 0);Be&&Qi(D,Be)}),{yieldTypes:v,nextTypes:D}}function __n(u,m,v,D){if(m===Vn)return Vn;let P=u.expression||u,Y=u.asteriskToken?N9(D?19:17,m,v,P):m;return D?Zq(Y,P,u.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Y}function y_n(u,m,v){let D=0;for(let P=0;P=m?v[P]:void 0;D|=Y!==void 0?bOt.get(Y)||32768:0}return D}function b_n(u){let m=sa(u);if(m.isExhaustive===void 0){m.isExhaustive=0;let v=A4s(u);m.isExhaustive===0&&(m.isExhaustive=v)}else m.isExhaustive===0&&(m.isExhaustive=!1);return m.isExhaustive}function A4s(u){if(u.expression.kind===222){let D=vmn(u);if(!D)return!1;let P=WN(RI(u.expression.expression)),Y=y_n(0,0,D);return P.flags&3?(556800&Y)===556800:!kv(P,oe=>Vse(oe,Y)===Y)}let m=WN(RI(u.expression));if(!k2e(m))return!1;let v=Lot(u);return!v.length||jt(v,tHs)?!1:$Hs(Yf(m,Iy),v)}function c8t(u){return u.endFlowNode&&zWe(u.endFlowNode)}function E_n(u,m){let v=SI(u),D=[],P=c8t(u),Y=!1;if(yF(u.body,oe=>{let Be=oe.expression;if(Be){if(Be=QA(Be,!0),v&2&&Be.kind===224&&(Be=QA(Be.expression,!0)),Be.kind===214&&Be.expression.kind===80&&RI(Be.expression).symbol===jA(u.symbol)&&(!RF(u.symbol.valueDeclaration)||dKt(Be.expression))){Y=!0;return}let Oe=RI(Be,m&&m&-9);v&2&&(Oe=rfe(EOe(Oe,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Oe.flags&131072&&(Y=!0),Qi(D,Oe)}else P=!0}),!(D.length===0&&!P&&(Y||d4s(u))))return ot&&D.length&&P&&!(YN(u)&&D.some(oe=>oe.symbol===u.symbol))&&Qi(D,Bt),D}function d4s(u){switch(u.kind){case 219:case 220:return!0;case 175:return u.parent.kind===211;default:return!1}}function p4s(u){switch(u.kind){case 177:case 178:case 179:return}if(SI(u)!==0)return;let v;if(u.body&&u.body.kind!==242)v=u.body;else if(yF(u.body,P=>{if(v||!P.expression)return!0;v=P.expression})||!v||c8t(u))return;return f4s(u,v)}function f4s(u,m){if(m=QA(m,!0),!!(RI(m).flags&16))return F(u.parameters,(D,P)=>{let Y=Io(D.symbol);if(!Y||Y.flags&16||!Ir(D.name)||P2e(D.symbol)||EB(D))return;let oe=I4s(u,m,D,Y);if(oe)return _2e(1,Bc(D.name.escapedText),P,oe)})}function I4s(u,m,v,D){let P=UJ(m)&&m.flowNode||m.parent.kind===254&&m.parent.flowNode||rk(2,void 0,void 0),Y=rk(32,m,P),oe=dZ(v.name,D,D,u,Y);if(oe===D)return;let Be=rk(64,m,P);return JB(dZ(v.name,D,oe,u,Be)).flags&131072?oe:void 0}function l8t(u,m){g(v);return;function v(){let D=SI(u),P=m&&ROe(m,D);if(P&&(ah(P,16384)||P.flags&32769)||u.kind===174||sf(u.body)||u.body.kind!==242||!c8t(u))return;let Y=u.flags&1024,oe=xb(u)||u;if(P&&P.flags&131072)Sr(oe,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(P&&!Y)Sr(oe,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(P&&ot&&!dg(Bt,P))Sr(oe,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Te.noImplicitReturns){if(!P){if(!Y)return;let Be=ud(yS(u));if(h0n(u,Be))return}Sr(oe,Z.Not_all_code_paths_return_a_value)}}}function S_n(u,m){if(pe.assert(u.kind!==175||a2(u)),Lq(u),UA(u)&&nfe(u,u.name),m&&m&4&&bS(u)){if(!xb(u)&&!MAe(u)){let D=M2e(u);if(D&&CW(ud(D))){let P=sa(u);if(P.contextFreeType)return P.contextFreeType;let Y=dat(u,m),oe=PN(void 0,void 0,void 0,E,Y,void 0,0,64),Be=Hf(u.symbol,Ee,[oe],E,E);return Be.objectFlags|=262144,P.contextFreeType=Be}}return $d}return!Wat(u)&&u.kind===219&&J8t(u),h4s(u,m),Io(Uo(u))}function h4s(u,m){let v=sa(u);if(!(v.flags&64)){let D=M2e(u);if(!(v.flags&64)){v.flags|=64;let P=Nc(tg(Io(Uo(u)),0));if(!P)return;if(bS(u))if(D){let Y=JQ(u),oe;if(m&&m&2){I_n(P,D,Y);let Be=U2e(D);Be&&Be.flags&262144&&(oe=bK(D,Y.nonFixingMapper))}oe||(oe=Y?bK(D,Y.mapper):D),jXs(P,oe)}else zXs(P);else if(D&&!u.typeParameters&&D.parameters.length>u.parameters.length){let Y=JQ(u);m&&m&2&&I_n(P,D,Y)}if(D&&!Dse(u)&&!P.resolvedReturnType){let Y=dat(u,m);P.resolvedReturnType||(P.resolvedReturnType=Y)}q2e(u)}}}function m4s(u){pe.assert(u.kind!==175||a2(u));let m=SI(u),v=Dse(u);if(l8t(u,v),u.body)if(xb(u)||ud(yS(u)),u.body.kind===242)rA(u.body);else{let D=Ol(u.body),P=v&&ROe(v,m);P&&wat(u,P,u.body,u.body,D)}}function fat(u,m,v,D=!1){if(!dg(m,gg)){let P=D&&tfe(m);return u9(u,!!P&&dg(P,gg),v),!1}return!0}function C4s(u){if(!Zl(u)||!f3(u))return!1;let m=RI(u.arguments[2]);if(Pi(m,"value")){let P=Gg(m,"writable"),Y=P&&Io(P);if(!Y||Y===Bs||Y===Ys)return!0;if(P&&P.valueDeclaration&&fm(P.valueDeclaration)){let oe=P.valueDeclaration.initializer,Be=Ol(oe);if(Be===Bs||Be===Ys)return!0}return!1}return!Gg(m,"set")}function yR(u){return!!(iI(u)&8||u.flags&4&&u2(u)&8||u.flags&3&&kKt(u)&6||u.flags&98304&&!(u.flags&65536)||u.flags&8||jt(u.declarations,C4s))}function v_n(u,m,v){var D,P;if(v===0)return!1;if(yR(m)){if(m.flags&4&&_p(u)&&u.expression.kind===110){let Y=jpe(u);if(!(Y&&(Y.kind===177||YN(Y))))return!0;if(m.valueDeclaration){let oe=fo(m.valueDeclaration),Be=Y.parent===m.valueDeclaration.parent,Oe=Y===m.valueDeclaration.parent,He=oe&&((D=m.parent)==null?void 0:D.valueDeclaration)===Y.parent,qe=oe&&((P=m.parent)==null?void 0:P.valueDeclaration)===Y;return!(Be||Oe||He||qe)}}return!0}if(_p(u)){let Y=QA(u.expression);if(Y.kind===80){let oe=sa(Y).resolvedSymbol;if(oe.flags&2097152){let Be=Mb(oe);return!!Be&&Be.kind===275}}}return!1}function j2e(u,m,v){let D=HI(u,39);return D.kind!==80&&!_p(D)?(Sr(u,m),!1):D.flags&64?(Sr(u,v),!1):!0}function _4s(u){Ol(u.expression);let m=QA(u.expression);if(!_p(m))return Sr(m,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),Mn;jo(m)&&p(m.name)&&Sr(m,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let v=sa(m),D=fn(v.resolvedSymbol);return D&&(yR(D)?Sr(m,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):y4s(m,D)),Mn}function y4s(u,m){let v=Io(m);ot&&!(v.flags&131075)&&!(Pt?m.flags&16777216:hR(v,16777216))&&Sr(u,Z.The_operand_of_a_delete_operator_must_be_optional)}function b4s(u){return Ol(u.expression),fse}function E4s(u){return Lq(u),xe}function B_n(u){let m=!1,v=$re(u);if(v&&fl(v)){let D=I1(u)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;Sr(u,D),m=!0}else if(!(u.flags&65536))if(Hge(u)){let D=ms(u);if(!bW(D)){let P;if(!g3(D,Te)){P??(P=rs(D,u.pos));let Y=I1(u)?Z.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:Z.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module,oe=qh(D,P.start,P.length,Y);PA.add(oe),m=!0}switch(We){case 100:case 101:case 102:case 199:if(D.impliedNodeFormat===1){P??(P=rs(D,u.pos)),PA.add(qh(D,P.start,P.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),m=!0;break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:P??(P=rs(D,u.pos));let Y=I1(u)?Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;PA.add(qh(D,P.start,P.length,Y)),m=!0;break}}}else{let D=ms(u);if(!bW(D)){let P=rs(D,u.pos),Y=I1(u)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,oe=qh(D,P.start,P.length,Y);if(v&&v.kind!==177&&!(SI(v)&2)){let Be=mo(v,Z.Did_you_mean_to_mark_this_function_as_async);lg(oe,Be)}PA.add(oe),m=!0}}return I1(u)&&EKt(u)&&(Sr(u,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),m=!0),m}function S4s(u){g(()=>B_n(u));let m=Ol(u.expression),v=EOe(m,!0,u,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return v===m&&!uo(v)&&!(m.flags&3)&&Hx(!1,mo(u,Z.await_has_no_effect_on_the_type_of_this_expression)),v}function v4s(u){let m=Ol(u.operand);if(m===Vn)return Vn;switch(u.operand.kind){case 9:switch(u.operator){case 41:return Rq(fR(-u.operand.text));case 40:return Rq(fR(+u.operand.text))}break;case 10:if(u.operator===41)return Rq(DWe({negative:!0,base10Value:nz(u.operand.text)}))}switch(u.operator){case 40:case 41:case 55:return HN(m,u.operand),mOe(m,12288)&&Sr(u.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(u.operator)),u.operator===40?(mOe(m,2112)&&Sr(u.operand,Z.Operator_0_cannot_be_applied_to_type_1,Vi(u.operator),no(uZ(m))),ri):u8t(m);case 54:B8t(m,u.operand);let v=Vse(m,12582912);return v===4194304?Bs:v===8388608?tn:Mn;case 46:case 47:return fat(u.operand,HN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&j2e(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),u8t(m)}return nn}function B4s(u){let m=Ol(u.operand);return m===Vn?Vn:(fat(u.operand,HN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&j2e(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),u8t(m))}function u8t(u){return ah(u,2112)?V_(u,3)||ah(u,296)?gg:ao:ri}function mOe(u,m){if(ah(u,m))return!0;let v=WN(u);return!!v&&ah(v,m)}function ah(u,m){if(u.flags&m)return!0;if(u.flags&3145728){let v=u.types;for(let D of v)if(ah(D,m))return!0}return!1}function V_(u,m,v){return u.flags&m?!0:v&&u.flags&114691?!1:!!(m&296)&&dg(u,ri)||!!(m&2112)&&dg(u,ao)||!!(m&402653316)&&dg(u,$r)||!!(m&528)&&dg(u,Mn)||!!(m&16384)&&dg(u,es)||!!(m&131072)&&dg(u,Wi)||!!(m&65536)&&dg(u,Hn)||!!(m&32768)&&dg(u,Bt)||!!(m&4096)&&dg(u,ci)||!!(m&67108864)&&dg(u,fs)}function z2e(u,m,v){return u.flags&1048576?ue(u.types,D=>z2e(D,m,v)):V_(u,m,v)}function Iat(u){return!!(la(u)&16)&&!!u.symbol&&g8t(u.symbol)}function g8t(u){return(u.flags&128)!==0}function A8t(u){let m=d0n("hasInstance");if(z2e(u,67108864)){let v=Gg(u,m);if(v){let D=Io(v);if(D&&tg(D,0).length!==0)return D}}}function w4s(u,m,v,D,P){if(v===Vn||D===Vn)return Vn;!Xo(v)&&z2e(v,402784252)&&Sr(u,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),pe.assert(fAe(u.parent));let Y=Yse(u.parent,void 0,P);if(Y===Go)return Vn;let oe=ud(Y);return p0(oe,Mn,m,Z.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Mn}function T4s(u){return kv(u,m=>m===KA||!!(m.flags&2097152)&&mk(WN(m)))}function R4s(u,m,v,D){if(v===Vn||D===Vn)return Vn;if(p(u)){if((ZeMpe(He,v)):d0(D);return xK(Be,Oe,P)}}}}function xK(u,m,v,D){let P;if(u.kind===305){let Y=u;Y.objectAssignmentInitializer&&(ot&&!hR(Ol(Y.objectAssignmentInitializer),16777216)&&(m=Dv(m,524288)),V4s(Y.name,Y.equalsToken,Y.objectAssignmentInitializer,v)),P=u.name}else P=u;return P.kind===227&&P.operatorToken.kind===64&&(Gt(P,v),P=P.left,ot&&(m=Dv(m,524288))),P.kind===211?N4s(P,m,D):P.kind===210?D4s(P,m,v):k4s(P,m,v)}function k4s(u,m,v){let D=Ol(u,v),P=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Y=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return j2e(u,P,Y)&&QQ(m,D,u,u),cP(u)&&eC(u.parent,1048576),m}function COe(u){switch(u=QA(u),u.kind){case 80:case 11:case 14:case 216:case 229:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 219:case 232:case 220:case 210:case 211:case 222:case 236:case 286:case 285:return!0;case 228:return COe(u.whenTrue)&&COe(u.whenFalse);case 227:return UD(u.operatorToken.kind)?!1:COe(u.left)&&COe(u.right);case 225:case 226:switch(u.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 223:case 217:case 235:default:return!1}}function d8t(u,m){return(m.flags&98304)!==0||Iot(u,m)}function x4s(){let u=u9e(m,v,D,P,Y,oe);return(kt,vr)=>{let dn=u(kt,vr);return pe.assertIsDefined(dn),dn};function m(kt,vr,dn){return vr?(vr.stackIndex++,vr.skip=!1,He(vr,void 0),Vt(vr,void 0)):vr={checkMode:dn,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},wo(kt)&&FY(kt)?(vr.skip=!0,Vt(vr,Ol(kt.right,dn)),vr):(G4s(kt),kt.operatorToken.kind===64&&(kt.left.kind===211||kt.left.kind===210)&&(vr.skip=!0,Vt(vr,xK(kt.left,Ol(kt.right,dn),dn,kt.right.kind===110))),vr)}function v(kt,vr,dn){if(!vr.skip)return Be(vr,kt)}function D(kt,vr,dn){if(!vr.skip){let vn=qe(vr);pe.assertIsDefined(vn),He(vr,vn),Vt(vr,void 0);let ii=kt.kind;if(dAe(ii)){let Yi=dn.parent;for(;Yi.kind===218||Dne(Yi);)Yi=Yi.parent;(ii===56||Z3(Yi))&&v8t(dn.left,vn,Z3(Yi)?Yi.thenStatement:void 0),Nne(ii)&&B8t(vn,dn.left)}}}function P(kt,vr,dn){if(!vr.skip)return Be(vr,kt)}function Y(kt,vr){let dn;if(vr.skip)dn=qe(vr);else{let vn=Oe(vr);pe.assertIsDefined(vn);let ii=qe(vr);pe.assertIsDefined(ii),dn=R_n(kt.left,kt.operatorToken,kt.right,vn,ii,vr.checkMode,kt)}return vr.skip=!1,He(vr,void 0),Vt(vr,void 0),vr.stackIndex--,dn}function oe(kt,vr,dn){return Vt(kt,vr),kt}function Be(kt,vr){if(fo(vr))return vr;Vt(kt,Ol(vr,kt.checkMode))}function Oe(kt){return kt.typeStack[kt.stackIndex]}function He(kt,vr){kt.typeStack[kt.stackIndex]=vr}function qe(kt){return kt.typeStack[kt.stackIndex+1]}function Vt(kt,vr){kt.typeStack[kt.stackIndex+1]=vr}}function G4s(u){if(u.operatorToken.kind===61){if(fo(u.parent)){let{left:m,operatorToken:v}=u.parent;fo(m)&&v.kind===57&&os(m,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(v.kind))}else if(fo(u.left)){let{operatorToken:m}=u.left;(m.kind===57||m.kind===56)&&os(u.left,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(m.kind),Vi(61))}else if(fo(u.right)){let{operatorToken:m}=u.right;m.kind===56&&os(u.right,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(m.kind))}F4s(u),Z4s(u)}}function F4s(u){let m=HI(u.left,63),v=_Oe(m);v!==3&&(v===1?Sr(m,Z.This_expression_is_always_nullish):Sr(m,Z.Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish))}function Z4s(u){let m=HI(u.right,63),v=_Oe(m);L4s(u)||(v===1?Sr(m,Z.This_expression_is_always_nullish):v===2&&Sr(m,Z.This_expression_is_never_nullish))}function L4s(u){return!fo(u.parent)||u.parent.operatorToken.kind!==61}function _Oe(u){switch(u=HI(u),u.kind){case 224:case 214:case 216:case 213:case 237:case 215:case 212:case 230:case 110:return 3;case 227:switch(u.operatorToken.kind){case 64:case 61:case 78:case 57:case 76:case 56:case 77:return 3;case 28:return _Oe(u.right)}return 2;case 228:return _Oe(u.whenTrue)|_Oe(u.whenFalse);case 106:return 1;case 80:return L0(u)===dt?1:3}return 2}function V4s(u,m,v,D,P){let Y=m.kind;if(Y===64&&(u.kind===211||u.kind===210))return xK(u,Ol(v,D),D,v.kind===110);let oe;Nne(Y)?oe=oSe(u,D):oe=Ol(u,D);let Be=Ol(v,D);return R_n(u,m,v,oe,Be,D,P)}function R_n(u,m,v,D,P,Y,oe){let Be=m.kind;switch(Be){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(D===Vn||P===Vn)return Vn;D=HN(D,u),P=HN(P,v);let Ji;if(D.flags&528&&P.flags&528&&(Ji=kt(m.kind))!==void 0)return Sr(oe||m,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,Vi(m.kind),Vi(Ji)),ri;{let Ka=fat(u,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),yl=fat(v,P,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ka;if(V_(D,3)&&V_(P,3)||!(ah(D,2112)||ah(P,2112)))ka=ri;else if(Oe(D,P)){switch(Be){case 50:case 73:ii();break;case 43:case 68:Ze<3&&Sr(oe,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ka=ao}else ii(Oe),ka=nn;if(Ka&&yl)switch(vr(ka),Be){case 48:case 71:case 49:case 72:case 50:case 73:let Kc=ur(v);typeof Kc.value=="number"&&Math.abs(Kc.value)>=32&&Hw(LF(gv(v.parent.parent)),oe||m,Z.This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2,xp(u),Vi(Be),Kc.value%32);break;default:break}return ka}case 40:case 65:if(D===Vn||P===Vn)return Vn;!V_(D,402653316)&&!V_(P,402653316)&&(D=HN(D,u),P=HN(P,v));let Mi;return V_(D,296,!0)&&V_(P,296,!0)?Mi=ri:V_(D,2112,!0)&&V_(P,2112,!0)?Mi=ao:V_(D,402653316,!0)||V_(P,402653316,!0)?Mi=$r:(Xo(D)||Xo(P))&&(Mi=uo(D)||uo(P)?nn:hr),Mi&&!Vt(Be)?Mi:Mi?(Be===65&&vr(Mi),Mi):(ii((yl,ka)=>V_(yl,402655727)&&V_(ka,402655727)),hr);case 30:case 32:case 33:case 34:return Vt(Be)&&(D=WUt(HN(D,u)),P=WUt(HN(P,v)),vn((Ka,yl)=>{if(Xo(Ka)||Xo(yl))return!0;let ka=dg(Ka,gg),Kc=dg(yl,gg);return ka&&Kc||!ka&&!Kc&&FWe(Ka,yl)})),Mn;case 35:case 36:case 37:case 38:if(!(Y&&Y&64)){if((Ere(u)||Ere(v))&&(!wo(u)||Be===37||Be===38)){let Ka=Be===35||Be===37;Sr(oe,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,Ka?"false":"true")}js(oe,Be,u,v),vn((Ka,yl)=>d8t(Ka,yl)||d8t(yl,Ka))}return Mn;case 104:return w4s(u,v,D,P,Y);case 103:return R4s(u,v,D,P);case 56:case 77:{let Ka=hR(D,4194304)?Ha([aHs(ot?D:uZ(P)),P]):D;return Be===77&&vr(P),Ka}case 57:case 76:{let Ka=hR(D,8388608)?Ha([gZ(zhn(D)),P],2):D;return Be===76&&vr(P),Ka}case 61:case 78:{let Ka=hR(D,262144)?Ha([gZ(D),P],2):D;return Be===78&&vr(P),Ka}case 64:let To=fo(u.parent)?nI(u.parent):0;return He(To,P),dn(To)?((!(P.flags&524288)||To!==2&&To!==6&&!lZ(P)&&!aKt(P)&&!(la(P)&1))&&vr(P),D):(vr(P),P);case 28:if(!Te.allowUnreachableCode&&COe(u)&&!qe(u.parent)){let Ka=ms(u),yl=Ka.text,ka=Yu(yl,u.pos);Ka.parseDiagnostics.some(Vu=>Vu.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:ho(Vu,ka))||Sr(u,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return P;default:return pe.fail()}function Oe(Ji,Mi){return V_(Ji,2112)&&V_(Mi,2112)}function He(Ji,Mi){if(Ji===2)for(let To of S9(Mi)){let Ka=Io(To);if(Ka.symbol&&Ka.symbol.flags&32){let yl=To.escapedName,ka=An(To.valueDeclaration,yl,788968,void 0,!1);ka?.declarations&&ka.declarations.some(bU)&&(Yx(ka,Z.Duplicate_identifier_0,Bc(yl),To),Yx(To,Z.Duplicate_identifier_0,Bc(yl),ka))}}}function qe(Ji){return Ji.parent.kind===218&&mC(Ji.left)&&Ji.left.text==="0"&&(Zl(Ji.parent.parent)&&Ji.parent.parent.expression===Ji.parent||Ji.parent.parent.kind===216)&&(_p(Ji.right)||Ir(Ji.right)&&Ji.right.escapedText==="eval")}function Vt(Ji){let Mi=mOe(D,12288)?u:mOe(P,12288)?v:void 0;return Mi?(Sr(Mi,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(Ji)),!1):!0}function kt(Ji){switch(Ji){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function vr(Ji){UD(Be)&&g(Mi);function Mi(){let To=D;if(Bde(m.kind)&&u.kind===212&&(To=nat(u,void 0,!0)),j2e(u,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let Ka;if(Pt&&jo(u)&&ah(Ji,32768)){let yl=Pi(P_(u.expression),u.name.escapedText);mot(Ji,yl)&&(Ka=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}QQ(Ji,To,u,v,Ka)}}}function dn(Ji){var Mi;switch(Ji){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let To=mS(u),Ka=FY(v);return!!Ka&&og(Ka)&&!!((Mi=To?.exports)!=null&&Mi.size);default:return!1}}function vn(Ji){return Ji(D,P)?!1:(ii(Ji),!0)}function ii(Ji){let Mi=!1,To=oe||m;if(Ji){let Vu=pZ(D),gd=pZ(P);Mi=!(Vu===D&&gd===P)&&!!(Vu&&gd)&&Ji(Vu,gd)}let Ka=D,yl=P;!Mi&&Ji&&([Ka,yl]=P4s(D,P,Ji));let[ka,Kc]=wpe(Ka,yl);Yi(To,Mi,ka,Kc)||u9(To,Mi,Z.Operator_0_cannot_be_applied_to_types_1_and_2,Vi(m.kind),ka,Kc)}function Yi(Ji,Mi,To,Ka){switch(m.kind){case 37:case 35:case 38:case 36:return u9(Ji,Mi,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,To,Ka);default:return}}function js(Ji,Mi,To,Ka){let yl=Co(QA(To)),ka=Co(QA(Ka));if(yl||ka){let Kc=Sr(Ji,Z.This_condition_will_always_return_0,Vi(Mi===37||Mi===35?97:112));if(yl&&ka)return;let Vu=Mi===38||Mi===36?Vi(54):"",gd=yl?Ka:To,Ll=QA(gd);lg(Kc,mo(gd,Z.Did_you_mean_0,`${Vu}Number.isNaN(${Od(Ll)?oy(Ll):"..."})`))}}function Co(Ji){if(Ir(Ji)&&Ji.escapedText==="NaN"){let Mi=A5s();return!!Mi&&Mi===L0(Ji)}return!1}}function P4s(u,m,v){let D=u,P=m,Y=uZ(u),oe=uZ(m);return v(Y,oe)||(D=Y,P=oe),[D,P]}function W4s(u){g(Vt);let m=A1(u);if(!m)return hr;let v=SI(m);if(!(v&1))return hr;let D=(v&2)!==0;u.asteriskToken&&(D&&Zeh8t(kt,v,void 0)));let Y=P&&x8t(P,D),oe=Y&&Y.yieldType||hr,Be=Y&&Y.nextType||hr,Oe=u.expression?Ol(u.expression):xe,He=__n(u,Oe,Be,D);if(P&&He&&QQ(He,oe,u.expression||u,u.expression),u.asteriskToken)return R8t(D?19:17,1,Oe,u.expression)||hr;if(P)return D9(2,P,D)||hr;let qe=eCn(2,m);return qe||(qe=hr,g(()=>{if(Rt&&!vLe(u)){let kt=Jy(u,void 0);(!kt||Xo(kt))&&Sr(u,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),qe;function Vt(){u.flags&16384||XC(u,Z.A_yield_expression_is_only_allowed_in_a_generator_body),EKt(u)&&Sr(u,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function O4s(u,m){let v=oSe(u.condition,m);v8t(u.condition,v,u.whenTrue);let D=Ol(u.whenTrue,m),P=Ol(u.whenFalse,m);return Ha([D,P],2)}function N_n(u){let m=u.parent;return gI(m)&&N_n(m)||Yg(m)&&m.argumentExpression===u}function M4s(u){let m=[u.head.text],v=[];for(let P of u.templateSpans){let Y=Ol(P.expression);mOe(Y,12288)&&Sr(P.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),m.push(P.literal.text),v.push(dg(Y,Ag)?Y:$r)}let D=u.parent.kind!==216&&ur(u).value;return D?Rq(TE(D)):$pe(u)||N_n(u)||kv(Jy(u,void 0)||cn,H4s)?hK(m,v):$r}function H4s(u){return!!(u.flags&134217856||u.flags&58982400&&ah(L_(u)||cn,402653316))}function Y4s(u){return nQ(u)&&!_U(u.parent)?u.parent.parent:u}function Qse(u,m,v,D){let P=Y4s(u);rOe(P,m,!1),qYs(P,v);let Y=Ol(u,D|1|(v?2:0));v&&v.intraExpressionInferenceSites&&(v.intraExpressionInferenceSites=void 0);let oe=ah(Y,2944)&&hat(Y,Uot(m,u,void 0))?Iy(Y):Y;return $Ys(),O2e(),oe}function RI(u,m){if(m)return Ol(u,m);let v=sa(u);if(!v.resolvedType){let D=Oo,P=gl;Oo=Os,gl=void 0,v.resolvedType=Ol(u,m),gl=P,Oo=D}return v.resolvedType}function D_n(u){return u=QA(u,!0),u.kind===217||u.kind===235||sQ(u)}function qpe(u,m,v){let D=ane(u);if(wo(u)){let Y=XAe(u);if(Y)return e8t(D,Y,m)}let P=I8t(D)||(v?Qse(D,v,void 0,m||0):RI(D,m));if(Si(hg(u)?ai(u):u)){if(u.name.kind===207&&R9(P))return Q4s(P,u.name);if(u.name.kind===208&&yA(P))return X4s(P,u.name)}return P}function Q4s(u,m){let v;for(let Y of m.elements)if(Y.initializer){let oe=k_n(Y);oe&&!Gg(u,oe)&&(v=Ft(v,Y))}if(!v)return u;let D=qu();for(let Y of S9(u))D.set(Y.escapedName,Y);for(let Y of v){let oe=gA(16777220,k_n(Y));oe.links.type=gR(Y,!1,!1),D.set(oe.escapedName,oe)}let P=Hf(u.symbol,D,E,E,A0(u));return P.objectFlags=u.objectFlags,P}function k_n(u){let m=sZ(u.propertyName||u.name);return g2(m)?A2(m):void 0}function X4s(u,m){if(u.target.combinedFlags&12||B9(u)>=m.elements.length)return u;let v=m.elements,D=WQ(u).slice(),P=u.target.elementFlags.slice();for(let Y=B9(u);Yhat(u,D))}if(m.flags&58982400){let v=L_(m)||cn;return ah(v,4)&&ah(u,128)||ah(v,8)&&ah(u,256)||ah(v,64)&&ah(u,2048)||ah(v,4096)&&ah(u,8192)||hat(u,v)}return!!(m.flags&406847616&&ah(u,128)||m.flags&256&&ah(u,256)||m.flags&2048&&ah(u,2048)||m.flags&512&&ah(u,512)||m.flags&8192&&ah(u,8192))}return!1}function $pe(u){let m=u.parent;return Ed(m)&&s2(m.type)||sQ(m)&&s2(yie(m))||$Kt(u)&&pK(Jy(u,0))||(gI(m)||OI(m)||of(m))&&$pe(m)||(fm(m)||a0(m)||pie(m))&&$pe(m.parent)}function efe(u,m,v){let D=Ol(u,m,v);return $pe(u)||Iye(u)?Iy(D):D_n(u)?D:OUt(D,Uot(Jy(u,void 0),u,void 0))}function G_n(u,m){return u.name.kind===168&&zw(u.name),efe(u.initializer,m)}function F_n(u,m){syn(u),u.name.kind===168&&zw(u.name);let v=S_n(u,m);return Z_n(u,v,m)}function Z_n(u,m,v){if(v&&v&10){let D=Q2e(m,0,!0),P=Q2e(m,1,!0),Y=D||P;if(Y&&Y.typeParameters){let oe=O5(u,2);if(oe){let Be=Q2e(gZ(oe),D?0:1,!1);if(Be&&!Be.typeParameters){if(v&8)return L_n(u,v),$d;let Oe=JQ(u),He=Oe.signature&&ud(Oe.signature),qe=He&&HCn(He);if(qe&&!qe.typeParameters&&!ue(Oe.inferences,Xse)){let Vt=j4s(Oe,Y.typeParameters),kt=YJt(Y,Vt),vr=At(Oe.inferences,dn=>UUt(dn.typeParameter));if(YUt(kt,Be,(dn,vn)=>{nG(vr,dn,vn,0,!0)}),jt(vr,Xse)&&(QUt(kt,Be,(dn,vn)=>{nG(vr,dn,vn)}),!U4s(Oe.inferences,vr)))return K4s(Oe.inferences,vr),Oe.inferredTypeParameters=Nn(Oe.inferredTypeParameters,Vt),fK(kt)}return fK(YCn(Y,Be,Oe))}}}}return m}function L_n(u,m){if(m&2){let v=JQ(u);v.flags|=4}}function Xse(u){return!!(u.candidates||u.contraCandidates)}function J4s(u){return!!(u.candidates||u.contraCandidates||tIn(u.typeParameter))}function U4s(u,m){for(let v=0;vv.symbol.escapedName===m)}function z4s(u,m){let v=m.length;for(;v>1&&m.charCodeAt(v-1)>=48&&m.charCodeAt(v-1)<=57;)v--;let D=m.slice(0,v);for(let P=1;;P++){let Y=D+P;if(!f8t(u,Y))return Y}}function V_n(u){let m=kK(u);if(m&&!m.typeParameters)return ud(m)}function q4s(u){let m=Ol(u.expression),v=x2e(m,u.expression),D=V_n(m);return D&&Tot(D,u,v!==m)}function P_(u){let m=I8t(u);if(m)return m;if(u.flags&268435456&&gl){let P=gl[rd(u)];if(P)return P}let v=tu,D=Ol(u,64);if(tu!==v){let P=gl||(gl=[]);P[rd(u)]=D,SLe(u,u.flags|268435456)}return D}function I8t(u){let m=QA(u,!0);if(sQ(m)){let v=yie(m);if(!s2(v))return nl(v)}if(m=QA(u),I1(m)){let v=I8t(m.expression);return v?Zq(v):void 0}if(Zl(m)&&m.expression.kind!==108&&!ay(m,!0)&&!i_n(m)&&!Up(m))return _B(m)?q4s(m):V_n(Mse(m.expression));if(Ed(m)&&!s2(m.type))return nl(m.type);if(wL(u)||hY(u))return Ol(u)}function yOe(u){let m=sa(u);if(m.contextFreeType)return m.contextFreeType;rOe(u,hr,!1);let v=m.contextFreeType=Ol(u,4);return O2e(),v}function Ol(u,m,v){var D,P;(D=ki)==null||D.push(ki.Phase.Check,"checkExpression",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let Y=ge;ge=u,M=0;let oe=tJs(u,m,v),Be=Z_n(u,oe,m);return Iat(Be)&&$4s(u,Be),ge=Y,(P=ki)==null||P.pop(),Be}function $4s(u,m){var v;let D=u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u||(u.kind===80||u.kind===167)&&Gat(u)||u.parent.kind===187&&u.parent.exprName===u||u.parent.kind===282;if(D||Sr(u,Z.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query),Te.isolatedModules||Te.verbatimModuleSyntax&&D&&!An(u,B0(u),2097152,void 0,!1,!0)){pe.assert(!!(m.symbol.flags&128));let P=m.symbol.valueDeclaration,Y=(v=s.getRedirectFromOutput(ms(P).resolvedPath))==null?void 0:v.resolvedRef;P.flags&33554432&&!JL(u)&&(!Y||!Fb(Y.commandLine.options))&&Sr(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,zt)}}function eJs(u,m){if(Xm(u)){if(Lbe(u))return e8t(u.expression,Vbe(u),m);if(sQ(u))return c_n(u,m)}return Ol(u.expression,m)}function tJs(u,m,v){let D=u.kind;if(d)switch(D){case 232:case 219:case 220:d.throwIfCancellationRequested()}switch(D){case 80:return yYs(u,m);case 81:return XQs(u);case 110:return eOe(u);case 108:return Qot(u);case 106:return Ot;case 15:case 11:return $Ut(u)?Gi:Rq(TE(u.text));case 9:return gyn(u),Rq(fR(+u.text));case 10:return njs(u),Rq(DWe({negative:!1,base10Value:nz(u.text)}));case 112:return tn;case 97:return Bs;case 229:return M4s(u);case 14:return IQs(u);case 210:return gCn(u,m,v);case 211:return SQs(u,m);case 212:return nat(u,m);case 167:return TCn(u,m);case 213:return aXs(u,m);case 214:if(Up(u))return PXs(u);case 215:return VXs(u,m);case 216:return WXs(u);case 218:return eJs(u,m);case 232:return QUs(u);case 219:case 220:return S_n(u,m);case 222:return b4s(u);case 217:case 235:return OXs(u,m);case 236:return YXs(u);case 234:return u_n(u);case 239:return QXs(u);case 237:return XXs(u);case 221:return _4s(u);case 223:return E4s(u);case 224:return S4s(u);case 225:return v4s(u);case 226:return B4s(u);case 227:return Gt(u,m);case 228:return O4s(u,m);case 231:return hQs(u,m);case 233:return xe;case 230:return W4s(u);case 238:return mQs(u);case 295:return PQs(u,m);case 285:return TQs(u,m);case 286:return BQs(u,m);case 289:return RQs(u);case 293:return DQs(u,m);case 287:pe.fail("Shouldn't ever directly check a JsxOpeningElement")}return nn}function P_n(u){sG(u),u.expression&&XC(u.expression,Z.Type_expected),rA(u.constraint),rA(u.default);let m=R5(Uo(u));L_(m),h3s(m)||Sr(u.default,Z.Type_parameter_0_has_a_circular_default,no(m));let v=Xy(m),D=VQ(m);v&&D&&p0(D,T1(_l(v,HQ(m,D)),D),u.default,Z.Type_0_does_not_satisfy_the_constraint_1),Lq(u),g(()=>ife(u.name,Z.Type_parameter_name_cannot_be_0))}function rJs(u){var m,v;if(g_(u.parent)||xa(u.parent)||FB(u.parent)){let D=R5(Uo(u)),P=ZUt(D)&24576;if(P){let Y=Uo(u.parent);if(FB(u.parent)&&!(la(Fp(Y))&48))Sr(u,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(P===8192||P===16384){(m=ki)==null||m.push(ki.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:QC(Fp(Y)),id:QC(D)});let oe=VWe(Y,D,P===16384?ln:mr),Be=VWe(Y,D,P===16384?mr:ln),Oe=D;Ie=D,p0(oe,Be,u,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ie=Oe,(v=ki)==null||v.pop()}}}}function W_n(u){sG(u),wOe(u);let m=A1(u);Ga(u,31)&&(Te.erasableSyntaxOnly&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),m.kind===177&&u1(m.body)||Sr(u,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),m.kind===177&&Ir(u.name)&&u.name.escapedText==="constructor"&&Sr(u.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!u.initializer&&RB(u)&&Nu(u.name)&&m.body&&Sr(u,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),u.name&&Ir(u.name)&&(u.name.escapedText==="this"||u.name.escapedText==="new")&&(m.parameters.indexOf(u)!==0&&Sr(u,Z.A_0_parameter_must_be_the_first_parameter,u.name.escapedText),(m.kind===177||m.kind===181||m.kind===186)&&Sr(u,Z.A_constructor_cannot_have_a_this_parameter),m.kind===220&&Sr(u,Z.An_arrow_function_cannot_have_a_this_parameter),(m.kind===178||m.kind===179)&&Sr(u,Z.get_and_set_accessors_cannot_declare_this_parameters)),u.dotDotDotToken&&!Nu(u.name)&&!dg(JB(Io(u.symbol)),E1)&&Sr(u,Z.A_rest_parameter_must_be_of_an_array_type)}function nJs(u){let m=iJs(u);if(!m){Sr(u,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let v=yS(m),D=Tv(v);if(!D)return;rA(u.type);let{parameterName:P}=u;if(D.kind!==0&&D.kind!==2){if(D.parameterIndex>=0){if(D0(v)&&D.parameterIndex===v.parameters.length-1)Sr(P,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let Y=()=>wu(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);p0(D.type,Io(v.parameters[D.parameterIndex]),u.type,void 0,Y)}}else if(P){let Y=!1;for(let{name:oe}of m.parameters)if(Nu(oe)&&O_n(oe,P,D.parameterName)){Y=!0;break}Y||Sr(u.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}}function iJs(u){switch(u.parent.kind){case 220:case 180:case 263:case 219:case 185:case 175:case 174:let m=u.parent;if(u===m.type)return m}}function O_n(u,m,v){for(let D of u.elements){if(yp(D))continue;let P=D.name;if(P.kind===80&&P.escapedText===v)return Sr(m,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,v),!0;if((P.kind===208||P.kind===207)&&O_n(P,m,v))return!0}}function q2e(u){u.kind===182?k8s(u):(u.kind===185||u.kind===263||u.kind===186||u.kind===180||u.kind===177||u.kind===181)&&Wat(u);let m=SI(u);m&4||((m&3)===3&&Ze0&&v.declarations[0]!==u)return}let m=zst(Uo(u));if(m?.declarations){let v=new Map;for(let D of m.declarations)w0(D)&&D.parameters.length===1&&D.parameters[0].type&&TK(nl(D.parameters[0].type),P=>{let Y=v.get(QC(P));Y?Y.declarations.push(D):v.set(QC(P),{type:P,declarations:[D]})});v.forEach(D=>{if(D.declarations.length>1)for(let P of D.declarations)Sr(P,Z.Duplicate_index_signature_for_type_0,no(D.type))})}}function H_n(u){!sG(u)&&!ejs(u)&&Oat(u.name),wOe(u),mat(u),Ga(u,64)&&u.kind===173&&u.initializer&&Sr(u,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Wd(u.name))}function aJs(u){return p(u.name)&&Sr(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),H_n(u)}function cJs(u){syn(u)||Oat(u.name),uu(u)&&u.asteriskToken&&Ir(u.name)&&Vo(u.name)==="constructor"&&Sr(u.name,Z.Class_constructor_may_not_be_a_generator),t0n(u),Ga(u,64)&&u.kind===175&&u.body&&Sr(u,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Wd(u.name)),p(u.name)&&!hC(u)&&Sr(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),mat(u)}function mat(u){if(p(u.name)&&(ZeGa(He,31))))if(!gJs(Be,u.body))Sr(Be,Z.A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers);else{let He;for(let qe of u.body.statements){if(VC(qe)&&Dy(HI(qe.expression))){He=qe;break}if(Y_n(qe))break}He===void 0&&Sr(u,Z.A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else oe||Sr(u,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function gJs(u,m){let v=gv(u.parent);return VC(v)&&v.parent===m}function Y_n(u){return u.kind===108||u.kind===110?!0:aZe(u)?!1:!!Lu(u,Y_n)}function Q_n(u){Ir(u.name)&&Vo(u.name)==="constructor"&&xa(u.parent)&&Sr(u.name,Z.Class_constructor_may_not_be_an_accessor),g(m),rA(u.body),mat(u);function m(){if(!Wat(u)&&!O8s(u)&&Oat(u.name),SOe(u),q2e(u),u.kind===178&&!(u.flags&33554432)&&u1(u.body)&&u.flags&512&&(u.flags&1024||Sr(u.name,Z.A_get_accessor_must_return_a_value)),u.name.kind===168&&zw(u.name),Rse(u)){let D=Uo(u),P=Cp(D,178),Y=Cp(D,179);if(P&&Y&&!(Pq(P)&1)){sa(P).flags|=1;let oe=o_(P),Be=o_(Y);(oe&64)!==(Be&64)&&(Sr(P.name,Z.Accessors_must_both_be_abstract_or_non_abstract),Sr(Y.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(oe&4&&!(Be&6)||oe&2&&!(Be&2))&&(Sr(P.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),Sr(Y.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let v=kpe(Uo(u));u.kind===178&&l8t(u,v)}}function AJs(u){SOe(u)}function dJs(u,m,v){return u.typeArguments&&v{let D=C8t(u);D&&X_n(u,D)});let v=sa(u).resolvedSymbol;v&&jt(v.declarations,D=>KY(D)&&!!(D.flags&536870912))&&YB(AOe(u),v.declarations,v.escapedName)}}function fJs(u){let m=Gs(u.parent,s7);if(!m)return;let v=C8t(m);if(!v)return;let D=Xy(v[m.typeArguments.indexOf(u)]);return D&&_l(D,N1(v,Cat(m,v)))}function IJs(u){BIn(u)}function hJs(u){F(u.members,rA),g(m);function m(){let v=Ihn(u);Tat(v,v.symbol),m8t(u),M_n(u)}}function mJs(u){rA(u.elementType)}function CJs(u){let m=!1,v=!1;for(let D of u.elements){let P=rUt(D);if(P&8){let Y=nl(D.type);if(!T9(Y)){Sr(D,Z.A_rest_element_type_must_be_an_array_type);break}(Nv(Y)||yA(Y)&&Y.target.combinedFlags&4)&&(P|=4)}if(P&4){if(v){os(D,Z.A_rest_element_cannot_follow_another_rest_element);break}v=!0}else if(P&2){if(v){os(D,Z.An_optional_element_cannot_follow_a_rest_element);break}m=!0}else if(P&1&&m){os(D,Z.A_required_element_cannot_follow_an_optional_element);break}}F(u.elements,rA),nl(u)}function _Js(u){F(u.types,rA),nl(u)}function U_n(u,m){if(!(u.flags&8388608))return u;let v=u.objectType,D=u.indexType,P=Yb(v)&&h2e(v)===2?ehn(v,0):ON(v,0),Y=!!$x(v,ri);if(RE(D,oe=>dg(oe,P)||Y&&Sq(oe,ri)))return m.kind===213&&bF(m)&&la(v)&32&&fk(v)&1&&Sr(m,Z.Index_signature_in_type_0_only_permits_reading,no(v)),u;if(CK(v)){let oe=cot(D,m);if(oe){let Be=TK(fy(v),Oe=>Gg(Oe,oe));if(Be&&u2(Be)&6)return Sr(m,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Bc(oe)),nn}}return Sr(m,Z.Type_0_cannot_be_used_to_index_type_1,no(D),no(v)),nn}function yJs(u){rA(u.objectType),rA(u.indexType),U_n(uhn(u),u)}function bJs(u){EJs(u),rA(u.typeParameter),rA(u.nameType),rA(u.type),u.type||P5(u,hr);let m=pUt(u),v=E9(m);if(v)p0(v,mc,u.nameType);else{let D=_S(m);p0(D,mc,n3(u.typeParameter))}}function EJs(u){var m;if((m=u.members)!=null&&m.length)return os(u.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function SJs(u){yUt(u)}function vJs(u){H8s(u),rA(u.type)}function BJs(u){Lu(u,rA)}function wJs(u){ji(u,v=>v.parent&&v.parent.kind===195&&v.parent.extendsType===v)||os(u,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),rA(u.typeParameter);let m=Uo(u.typeParameter);if(m.declarations&&m.declarations.length>1){let v=fa(m);if(!v.typeParametersChecked){v.typeParametersChecked=!0;let D=R5(m),P=pge(m,169);if(!_0n(P,[D],Y=>[Y])){let Y=kl(m);for(let oe of P)Sr(oe.name,Z.All_declarations_of_0_must_have_identical_constraints,Y)}}}_W(u)}function TJs(u){for(let m of u.templateSpans){rA(m.type);let v=nl(m.type);p0(v,Ag,m.type)}nl(u)}function RJs(u){rA(u.argument),u.attributes&&Fie(u.attributes,os),J_n(u)}function NJs(u){u.dotDotDotToken&&u.questionToken&&os(u,Z.A_tuple_member_cannot_be_both_optional_and_rest),u.type.kind===191&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),u.type.kind===192&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),rA(u.type),nl(u)}function bOe(u){return(Gb(u,2)||pC(u))&&!!(u.flags&33554432)}function $2e(u,m){let v=Hat(u);if(u.parent.kind!==265&&u.parent.kind!==264&&u.parent.kind!==232&&u.flags&33554432){let D=f7(u);D&&D.flags&128&&!(v&128)&&!(_N(u.parent)&&xh(u.parent.parent)&&vB(u.parent.parent))&&(v|=32),v|=128}return v&m}function _at(u){g(()=>DJs(u))}function DJs(u){function m(Ji,Mi){return Mi!==void 0&&Mi.parent===Ji[0].parent?Mi:Ji[0]}function v(Ji,Mi,To,Ka,yl){if((Ka^yl)!==0){let Kc=$2e(m(Ji,Mi),To);Yn(Ji,Vu=>ms(Vu).fileName).forEach(Vu=>{let gd=$2e(m(Vu,Mi),To);for(let Ll of Vu){let Ef=$2e(Ll,To)^Kc,UI=$2e(Ll,To)^gd;UI&32?Sr(Il(Ll),Z.Overload_signatures_must_all_be_exported_or_non_exported):UI&128?Sr(Il(Ll),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):Ef&6?Sr(Il(Ll)||Ll,Z.Overload_signatures_must_all_be_public_private_or_protected):Ef&64&&Sr(Il(Ll),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)}})}}function D(Ji,Mi,To,Ka){if(To!==Ka){let yl=VY(m(Ji,Mi));F(Ji,ka=>{VY(ka)!==yl&&Sr(Il(ka),Z.Overload_signatures_must_all_be_optional_or_required)})}}let P=230,Y=0,oe=P,Be=!1,Oe=!0,He=!1,qe,Vt,kt,vr=u.declarations,dn=(u.flags&16384)!==0;function vn(Ji){if(Ji.name&&sf(Ji.name))return;let Mi=!1,To=Lu(Ji.parent,yl=>{if(Mi)return yl;Mi=yl===Ji});if(To&&To.pos===Ji.end&&To.kind===Ji.kind){let yl=To.name||To,ka=To.name;if(Ji.name&&ka&&(p(Ji.name)&&p(ka)&&Ji.name.escapedText===ka.escapedText||Un(Ji.name)&&Un(ka)&&rG(zw(Ji.name),zw(ka))||Tw(Ji.name)&&Tw(ka)&&qJ(Ji.name)===qJ(ka))){if((Ji.kind===175||Ji.kind===174)&&cg(Ji)!==cg(To)){let Vu=cg(Ji)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;Sr(yl,Vu)}return}if(u1(To.body)){Sr(yl,Z.Function_implementation_name_must_be_0,Wd(Ji.name));return}}let Ka=Ji.name||Ji;dn?Sr(Ka,Z.Constructor_implementation_is_missing):Ga(Ji,64)?Sr(Ka,Z.All_declarations_of_an_abstract_method_must_be_consecutive):Sr(Ka,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let ii=!1,Yi=!1,js=!1,Co=[];if(vr)for(let Ji of vr){let Mi=Ji,To=Mi.flags&33554432,Ka=Mi.parent&&(Mi.parent.kind===265||Mi.parent.kind===188)||To;if(Ka&&(kt=void 0),(Mi.kind===264||Mi.kind===232)&&!To&&(js=!0),Mi.kind===263||Mi.kind===175||Mi.kind===174||Mi.kind===177){Co.push(Mi);let yl=$2e(Mi,P);Y|=yl,oe&=yl,Be=Be||VY(Mi),Oe=Oe&&VY(Mi);let ka=u1(Mi.body);ka&&qe?dn?Yi=!0:ii=!0:kt?.parent===Mi.parent&&kt.end!==Mi.pos&&vn(kt),ka?qe||(qe=Mi):He=!0,kt=Mi,Ka||(Vt=Mi)}wo(Ji)&&bu(Ji)&&Ji.jsDoc&&(He=B(wye(Ji))>0)}if(Yi&&F(Co,Ji=>{Sr(Ji,Z.Multiple_constructor_implementations_are_not_allowed)}),ii&&F(Co,Ji=>{Sr(Il(Ji)||Ji,Z.Duplicate_function_implementation)}),js&&!dn&&u.flags&16&&vr){let Ji=Me(vr,Mi=>Mi.kind===264).map(Mi=>mo(Mi,Z.Consider_adding_a_declare_modifier_to_this_class));F(vr,Mi=>{let To=Mi.kind===264?Z.Class_declaration_cannot_implement_overload_list_for_0:Mi.kind===263?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;To&&lg(Sr(Il(Mi)||Mi,To,nf(u)),...Ji)})}if(Vt&&!Vt.body&&!Ga(Vt,64)&&!Vt.questionToken&&vn(Vt),He&&(vr&&(v(vr,qe,P,Y,oe),D(vr,qe,Be,Oe)),qe)){let Ji=PQ(u),Mi=yS(qe);for(let To of Ji)if(!xMs(Mi,To)){let Ka=To.declaration&&qL(To.declaration)?To.declaration.parent.tagName:To.declaration;lg(Sr(Ka,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),mo(qe,Z.The_implementation_signature_is_declared_here));break}}}function eSe(u){g(()=>kJs(u))}function kJs(u){let m=u.localSymbol;if(!m&&(m=Uo(u),!m.exportSymbol)||Cp(m,u.kind)!==u)return;let v=0,D=0,P=0;for(let He of m.declarations){let qe=Oe(He),Vt=$2e(He,2080);Vt&32?Vt&2048?P|=qe:v|=qe:D|=qe}let Y=v|D,oe=v&D,Be=P&Y;if(oe||Be)for(let He of m.declarations){let qe=Oe(He),Vt=Il(He);qe&Be?Sr(Vt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Wd(Vt)):qe&oe&&Sr(Vt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Wd(Vt))}function Oe(He){let qe=He;switch(qe.kind){case 265:case 266:case 347:case 339:case 341:return 2;case 268:return s_(qe)||PF(qe)!==0?5:4;case 264:case 267:case 307:return 3;case 308:return 7;case 278:case 227:let Vt=qe,kt=Cf(Vt)?Vt.expression:Vt.right;if(!Od(kt))return 1;qe=kt;case 272:case 275:case 274:let vr=0,dn=YC(Uo(qe));return F(dn.declarations,vn=>{vr|=Oe(vn)}),vr;case 261:case 209:case 263:case 277:case 80:return 1;case 174:case 172:return 2;default:return pe.failBadSyntaxKind(qe)}}}function tfe(u,m,v,...D){let P=tSe(u,m);return P&&Zq(P,m,v,...D)}function tSe(u,m,v){if(Xo(u))return;let D=u;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(w1(u,vWe(!1)))return D.promisedTypeOfPromise=lf(u)[0];if(z2e(WN(u),402915324))return;let P=Pi(u,"then");if(Xo(P))return;let Y=P?tg(P,0):E;if(Y.length===0){m&&Sr(m,Z.A_promise_must_have_a_then_method);return}let oe,Be;for(let qe of Y){let Vt=k5(qe);Vt&&Vt!==es&&!MN(u,Vt,ck)?oe=Vt:Be=Ft(Be,qe)}if(!Be){pe.assertIsDefined(oe),v&&(v.value=oe),m&&Sr(m,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,no(u),no(oe));return}let Oe=Dv(Ha(At(Be,i8t)),2097152);if(Xo(Oe))return;let He=tg(Oe,0);if(He.length===0){m&&Sr(m,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=Ha(At(He,i8t),2)}function EOe(u,m,v,D,...P){return(m?Zq(u,v,D,...P):pZ(u,v,D,...P))||nn}function K_n(u){if(z2e(WN(u),402915324))return!1;let m=Pi(u,"then");return!!m&&tg(Dv(m,2097152),0).length>0}function yat(u){var m;if(u.flags&16777216){let v=tUt(!1);return!!v&&u.aliasSymbol===v&&((m=u.aliasTypeArguments)==null?void 0:m.length)===1}return!1}function rfe(u){return u.flags&1048576?Yf(u,rfe):yat(u)?u.aliasTypeArguments[0]:u}function j_n(u){if(Xo(u)||yat(u))return!1;if(CK(u)){let m=L_(u);if(m?m.flags&3||lZ(m)||kv(m,K_n):ah(u,8650752))return!0}return!1}function xJs(u){let m=tUt(!0);if(m)return xse(m,[rfe(u)])}function GJs(u){return j_n(u)?xJs(u)??u:(pe.assert(yat(u)||tSe(u)===void 0,"type provided should not be a non-generic 'promise'-like."),u)}function Zq(u,m,v,...D){let P=pZ(u,m,v,...D);return P&&GJs(P)}function pZ(u,m,v,...D){if(Xo(u)||yat(u))return u;let P=u;if(P.awaitedTypeOfType)return P.awaitedTypeOfType;if(u.flags&1048576){if(zP.lastIndexOf(u.id)>=0){m&&Sr(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Be=m?He=>pZ(He,m,v,...D):pZ;zP.push(u.id);let Oe=Yf(u,Be);return zP.pop(),P.awaitedTypeOfType=Oe}if(j_n(u))return P.awaitedTypeOfType=u;let Y={value:void 0},oe=tSe(u,void 0,Y);if(oe){if(u.id===oe.id||zP.lastIndexOf(oe.id)>=0){m&&Sr(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}zP.push(u.id);let Be=pZ(oe,m,v,...D);return zP.pop(),Be?P.awaitedTypeOfType=Be:void 0}if(K_n(u)){if(m){pe.assertIsDefined(v);let Be;Y.value&&(Be=wu(Be,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,no(u),no(Y.value))),Be=wu(Be,v,...D),PA.add(Bw(ms(m),m,Be))}return}return P.awaitedTypeOfType=u}function FJs(u,m,v){let D=nl(m);if(Ze>=2){if(uo(D))return;let Y=vWe(!0);if(Y!==oi&&!w1(D,Y)){P(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,m,v,no(pZ(D)||es));return}}else{if(xq(u,5),uo(D))return;let Y=tne(m);if(Y===void 0){P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,no(D));return}let oe=TI(Y,111551,!0),Be=oe?Io(oe):nn;if(uo(Be)){Y.kind===80&&Y.escapedText==="Promise"&&vs(D)===vWe(!1)?Sr(v,Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,oy(Y));return}let Oe=H3s(!0);if(Oe===Xg){P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,oy(Y));return}let He=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!p0(Be,Oe,v,He,()=>m===v?void 0:wu(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Vt=Y&&B0(Y),kt=f_(u.locals,Vt.escapedText,111551);if(kt){Sr(kt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,Vo(Vt),oy(Y));return}}EOe(D,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function P(Y,oe,Be,Oe){if(oe===Be)Sr(Be,Y,Oe);else{let He=Sr(Be,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);lg(He,mo(oe,Y,Oe))}}}function ZJs(u){let m=ms(u);if(!bW(m)){let v=u.expression;if(gI(v))return!1;let D=!0,P;for(;;){if(l_(v)||hv(v)){v=v.expression;continue}if(Zl(v)){D||(P=v),v.questionDotToken&&(P=v.questionDotToken),v=v.expression,D=!1;continue}if(jo(v)){v.questionDotToken&&(P=v.questionDotToken),v=v.expression,D=!1;continue}Ir(v)||(P=v);break}if(P)return lg(Sr(u.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),mo(P,Z.Invalid_syntax_in_decorator)),!0}return!1}function LJs(u){ZJs(u);let m=Yse(u);Aat(m,u);let v=ud(m);if(v.flags&1)return;let D=a8t(u);if(!D?.resolvedReturnType)return;let P,Y=D.resolvedReturnType;switch(u.parent.kind){case 264:case 232:P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 173:if(!Ue){P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 170:P=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 175:case 178:case 179:P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return pe.failBadSyntaxKind(u.parent)}p0(v,Y,u.expression,P)}function rSe(u,m,v,D,P,Y=v.length,oe=0){let Be=me.createFunctionTypeNode(void 0,E,me.createKeywordTypeNode(133));return PN(Be,u,m,v,D,P,Y,oe)}function y8t(u,m,v,D,P,Y,oe){let Be=rSe(u,m,v,D,P,Y,oe);return fK(Be)}function z_n(u){return y8t(void 0,void 0,E,u)}function q_n(u){let m=IS("value",u);return y8t(void 0,void 0,[m],es)}function b8t(u){if(u)switch(u.kind){case 194:case 193:return $_n(u.types);case 195:return $_n([u.trueType,u.falseType]);case 197:case 203:return b8t(u.type);case 184:return u.typeName}}function $_n(u){let m;for(let v of u){for(;v.kind===197||v.kind===203;)v=v.type;if(v.kind===146||!ot&&(v.kind===202&&v.literal.kind===106||v.kind===157))continue;let D=b8t(v);if(!D)return;if(m){if(!Ir(m)||!Ir(D)||m.escapedText!==D.escapedText)return}else m=D}return m}function bat(u){let m=kh(u);return EB(u)?fye(m):m}function SOe(u){if(!oQ(u)||!p1(u)||!u.modifiers||!OJ(Ue,u,u.parent,u.parent.parent))return;let m=de(u.modifiers,So);if(m){Ue?(eC(m,8),u.kind===170&&eC(m,32)):Ze1)for(let D=1;D0),v.length>1&&Sr(v[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=e0n(u.class.expression),P=OL(m);if(P){let Y=e0n(P.expression);Y&&D.escapedText!==Y.escapedText&&Sr(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,Vo(u.tagName),Vo(D),Vo(Y))}}function zJs(u){let m=bP(u);m&&pC(m)&&Sr(u,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function e0n(u){switch(u.kind){case 80:return u;case 212:return u.name;default:return}}function t0n(u){var m;SOe(u),q2e(u);let v=SI(u);if(u.name&&u.name.kind===168&&zw(u.name),Rse(u)){let Y=Uo(u),oe=u.localSymbol||Y,Be=(m=oe.declarations)==null?void 0:m.find(Oe=>Oe.kind===u.kind&&!(Oe.flags&524288));u===Be&&_at(oe),Y.parent&&_at(Y)}let D=u.kind===174?void 0:u.body;if(rA(D),l8t(u,Dse(u)),g(P),wo(u)){let Y=ov(u);Y&&Y.typeExpression&&!RKt(nl(Y.typeExpression),u)&&Sr(Y.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function P(){xb(u)||(sf(D)&&!bOe(u)&&P5(u,hr),v&1&&u1(D)&&ud(yS(u)))}}function _W(u){g(m);function m(){let v=ms(u),D=Qs.get(v.path);D||(D=[],Qs.set(v.path,D)),D.push(u)}}function r0n(u,m){for(let v of u)switch(v.kind){case 264:case 232:qJs(v,m),E8t(v,m);break;case 308:case 268:case 242:case 270:case 249:case 250:case 251:s0n(v,m);break;case 177:case 219:case 263:case 220:case 175:case 178:case 179:v.body&&s0n(v,m),E8t(v,m);break;case 174:case 180:case 181:case 185:case 186:case 266:case 265:E8t(v,m);break;case 196:$Js(v,m);break;default:pe.assertNever(v,"Node should not have been registered for unused identifiers check")}}function n0n(u,m,v){let D=Il(u)||u,P=KY(u)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;v(u,0,mo(D,P,m))}function nSe(u){return Ir(u)&&Vo(u).charCodeAt(0)===95}function qJs(u,m){for(let v of u.members)switch(v.kind){case 175:case 173:case 178:case 179:if(v.kind===179&&v.symbol.flags&32768)break;let D=Uo(v);!D.isReferenced&&(Gb(v,2)||rh(v)&&p(v.name))&&!(v.flags&33554432)&&m(v,0,mo(v.name,Z._0_is_declared_but_its_value_is_never_read,kl(D)));break;case 177:for(let P of v.parameters)!P.symbol.isReferenced&&Ga(P,2)&&m(P,0,mo(P.name,Z.Property_0_is_declared_but_its_value_is_never_read,nf(P.symbol)));break;case 182:case 241:case 176:break;default:pe.fail("Unexpected class member")}}function $Js(u,m){let{typeParameter:v}=u;S8t(v)&&m(u,1,mo(u,Z._0_is_declared_but_its_value_is_never_read,Vo(v.name)))}function E8t(u,m){let v=Uo(u).declarations;if(!v||Ei(v)!==u)return;let D=ZD(u),P=new Set;for(let Y of D){if(!S8t(Y))continue;let oe=Vo(Y.name),{parent:Be}=Y;if(Be.kind!==196&&Be.typeParameters.every(S8t)){if(Ar(P,Be)){let Oe=ms(Be),He=ZB(Be)?Dbe(Be):kbe(Oe,Be.typeParameters),Vt=Be.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,oe]:[Z.All_type_parameters_are_unused];m(Y,1,qh(Oe,He.pos,He.end-He.pos,...Vt))}}else m(Y,1,mo(Y,Z._0_is_declared_but_its_value_is_never_read,oe))}}function S8t(u){return!(jA(u.symbol).isReferenced&262144)&&!nSe(u.name)}function vOe(u,m,v,D){let P=String(D(m)),Y=u.get(P);Y?Y[1].push(v):u.set(P,[m,[v]])}function i0n(u){return Gs(Rw(u),Si)}function eUs(u){return hg(u)?Km(u.parent)?!!(u.propertyName&&nSe(u.name)):nSe(u.name):s_(u)||(nc(u)&&DL(u.parent.parent)||o0n(u))&&nSe(u.name)}function s0n(u,m){let v=new Map,D=new Map,P=new Map;u.locals.forEach(Y=>{if(!(Y.flags&262144?!(Y.flags&3&&!(Y.isReferenced&3)):Y.isReferenced||Y.exportSymbol)&&Y.declarations){for(let oe of Y.declarations)if(!eUs(oe))if(o0n(oe))vOe(v,rUs(oe),oe,rd);else if(hg(oe)&&Km(oe.parent)){let Be=Ei(oe.parent.elements);(oe===Be||!Ei(oe.parent.elements).dotDotDotToken)&&vOe(D,oe.parent,oe,rd)}else if(nc(oe)){let Be=jQ(oe)&7,Oe=Il(oe);(Be!==4&&Be!==6||!Oe||!nSe(Oe))&&vOe(P,oe.parent,oe,rd)}else{let Be=Y.valueDeclaration&&i0n(Y.valueDeclaration),Oe=Y.valueDeclaration&&Il(Y.valueDeclaration);Be&&Oe?!Ve(Be,Be.parent)&&!SF(Be)&&!nSe(Oe)&&(hg(oe)&&p2(oe.parent)?vOe(D,oe.parent,oe,rd):m(Be,1,mo(Oe,Z._0_is_declared_but_its_value_is_never_read,nf(Y)))):n0n(oe,nf(Y),m)}}}),v.forEach(([Y,oe])=>{let Be=Y.parent;if((Y.name?1:0)+(Y.namedBindings?Y.namedBindings.kind===275?1:Y.namedBindings.elements.length:0)===oe.length)m(Be,0,oe.length===1?mo(Be,Z._0_is_declared_but_its_value_is_never_read,Vo(ma(oe).name)):mo(Be,Z.All_imports_in_import_declaration_are_unused));else for(let He of oe)n0n(He,Vo(He.name),m)}),D.forEach(([Y,oe])=>{let Be=i0n(Y.parent)?1:0;if(Y.elements.length===oe.length)oe.length===1&&Y.parent.kind===261&&Y.parent.parent.kind===262?vOe(P,Y.parent.parent,Y.parent,rd):m(Y,Be,oe.length===1?mo(Y,Z._0_is_declared_but_its_value_is_never_read,BOe(ma(oe).name)):mo(Y,Z.All_destructured_elements_are_unused));else for(let Oe of oe)m(Oe,Be,mo(Oe,Z._0_is_declared_but_its_value_is_never_read,BOe(Oe.name)))}),P.forEach(([Y,oe])=>{if(Y.declarations.length===oe.length)m(Y,0,oe.length===1?mo(ma(oe).name,Z._0_is_declared_but_its_value_is_never_read,BOe(ma(oe).name)):mo(Y.parent.kind===244?Y.parent:Y,Z.All_variables_are_unused));else for(let Be of oe)m(Be,0,mo(Be,Z._0_is_declared_but_its_value_is_never_read,BOe(Be.name)))})}function tUs(){var u;for(let m of KF)if(!((u=Uo(m))!=null&&u.isReferenced)){let v=ai(m);pe.assert(HL(v),"Only parameter declaration should be checked here");let D=mo(m.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Wd(m.name),Wd(m.propertyName));v.type||lg(D,qh(ms(v),v.end,0,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Wd(m.propertyName))),PA.add(D)}}function BOe(u){switch(u.kind){case 80:return Vo(u);case 208:case 207:return BOe(Ma(ma(u.elements),hg).name);default:return pe.assertNever(u)}}function o0n(u){return u.kind===274||u.kind===277||u.kind===275}function rUs(u){return u.kind===274?u:u.kind===275?u.parent:u.parent.parent}function Eat(u){if(u.kind===242&&fZ(u),CJ(u)){let m=Yc;F(u.statements,rA),Yc=m}else F(u.statements,rA);u.locals&&_W(u)}function nUs(u){Ze>=2||!Fre(u)||u.flags&33554432||sf(u.body)||F(u.parameters,m=>{m.name&&!Nu(m.name)&&m.name.escapedText===st.escapedName&&l9("noEmit",m,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function iSe(u,m,v){if(m?.escapedText!==v||u.kind===173||u.kind===172||u.kind===175||u.kind===174||u.kind===178||u.kind===179||u.kind===304||u.flags&33554432||(Vw(u)||km(u)||uy(u))&&nN(u))return!1;let D=Rw(u);return!(Si(D)&&sf(D.parent.body))}function iUs(u){ji(u,m=>Pq(m)&4?(u.kind!==80?Sr(Il(u),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):Sr(u,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function sUs(u){ji(u,m=>Pq(m)&8?(u.kind!==80?Sr(Il(u),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):Sr(u,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function oUs(u,m){if(s.getEmitModuleFormatOfFile(ms(u))>=5||!m||!iSe(u,m,"require")&&!iSe(u,m,"exports")||xh(u)&&PF(u)!==1)return;let v=Tn(u);v.kind===308&&vl(v)&&l9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Wd(m),Wd(m))}function aUs(u,m){if(!m||Ze>=4||!iSe(u,m,"Promise")||xh(u)&&PF(u)!==1)return;let v=Tn(u);v.kind===308&&vl(v)&&v.flags&4096&&l9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Wd(m),Wd(m))}function cUs(u,m){Ze<=8&&(iSe(u,m,"WeakMap")||iSe(u,m,"WeakSet"))&&JF.push(u)}function lUs(u){let m=tS(u);Pq(m)&1048576&&(pe.assert(rh(u)&&Ir(u.name)&&typeof u.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),l9("noEmit",u,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,u.name.escapedText))}function uUs(u,m){m&&Ze>=2&&Ze<=8&&iSe(u,m,"Reflect")&&UF.push(u)}function gUs(u){let m=!1;if(vd(u)){for(let v of u.members)if(Pq(v)&2097152){m=!0;break}}else if(UA(u))Pq(u)&2097152&&(m=!0);else{let v=tS(u);v&&Pq(v)&2097152&&(m=!0)}m&&(pe.assert(rh(u)&&Ir(u.name),"The target of a Reflect collision check should be an identifier"),l9("noEmit",u,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Wd(u.name),"Reflect"))}function nfe(u,m){m&&(oUs(u,m),aUs(u,m),cUs(u,m),uUs(u,m),xa(u)?(ife(m,Z.Class_name_cannot_be_0),u.flags&33554432||OUs(m)):V3(u)&&ife(m,Z.Enum_name_cannot_be_0))}function AUs(u){if(jQ(u)&7||HL(u))return;let m=Uo(u);if(m.flags&1){if(!Ir(u.name))return pe.fail();let v=An(u,u.name.escapedText,3,void 0,!1);if(v&&v!==m&&v.flags&2&&kKt(v)&7){let D=ML(v.valueDeclaration,262),P=D.parent.kind===244&&D.parent.parent?D.parent.parent:void 0;if(!(P&&(P.kind===242&&bu(P.parent)||P.kind===269||P.kind===268||P.kind===308))){let oe=kl(v);Sr(u,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,oe,oe)}}}}function sSe(u){return u===Sn?hr:u===OC?d_:u}function wOe(u){var m;if(SOe(u),hg(u)||rA(u.type),!u.name)return;if(u.name.kind===168&&(zw(u.name),l1(u)&&u.initializer&&RI(u.initializer)),hg(u)){if(u.propertyName&&Ir(u.name)&&HL(u)&&sf(A1(u).body)){KF.push(u);return}Km(u.parent)&&u.dotDotDotToken&&Ze1&&jt(v.declarations,Y=>Y!==u&&I7(Y)&&!c0n(Y,u))&&Sr(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Wd(u.name))}else{let P=sSe(bq(u));!uo(D)&&!uo(P)&&!rG(D,P)&&!(v.flags&67108864)&&a0n(v.valueDeclaration,D,u,P),l1(u)&&u.initializer&&QQ(RI(u.initializer),P,u,u.initializer,void 0),v.valueDeclaration&&!c0n(u,v.valueDeclaration)&&Sr(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Wd(u.name))}u.kind!==173&&u.kind!==172&&(eSe(u),(u.kind===261||u.kind===209)&&AUs(u),nfe(u,u.name))}function a0n(u,m,v,D){let P=Il(v),Y=v.kind===173||v.kind===172?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,oe=Wd(P),Be=Sr(P,Y,oe,no(m),no(D));u&&lg(Be,mo(u,Z._0_was_also_declared_here,oe))}function c0n(u,m){if(u.kind===170&&m.kind===261||u.kind===261&&m.kind===170)return!0;if(VY(u)!==VY(m))return!1;let v=1358;return MY(u,v)===MY(m,v)}function dUs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkVariableDeclaration",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath}),U8s(u),wOe(u),(v=ki)==null||v.pop()}function pUs(u){return Q8s(u),wOe(u)}function Sat(u){let m=dm(u)&7;(m===4||m===6)&&Ze=2,Be=!oe&&Te.downlevelIteration,Oe=Te.noUncheckedIndexedAccess&&!!(u&128);if(oe||Be||Y){let vr=Bat(m,u,oe?D:void 0);if(P&&vr){let dn=u&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:u&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:u&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:u&16?Z.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;dn&&p0(v,vr.nextType,D,dn)}if(vr||oe)return Oe?V2e(vr&&vr.yieldType):vr&&vr.yieldType}let He=m,qe=!1;if(u&4){if(He.flags&1048576){let vr=m.types,dn=Me(vr,vn=>!(vn.flags&402653316));dn!==vr&&(He=Ha(dn,2))}else He.flags&402653316&&(He=Wi);if(qe=He!==m,qe&&He.flags&131072)return Oe?V2e($r):$r}if(!T9(He)){if(D){let vr=!!(u&4)&&!qe,[dn,vn]=kt(vr,Be);u9(D,vn&&!!tfe(He),dn,no(He))}return qe?Oe?V2e($r):$r:void 0}let Vt=D5(He,ri);if(qe&&Vt)return Vt.flags&402653316&&!Te.noUncheckedIndexedAccess?$r:Ha(Oe?[Vt,$r,Bt]:[Vt,$r],2);return u&128?V2e(Vt):Vt;function kt(vr,dn){var vn;return dn?vr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:R8t(u,0,m,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:vUs((vn=m.symbol)==null?void 0:vn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:vr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function vUs(u){switch(u){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function R8t(u,m,v,D){if(Xo(v))return;let P=Bat(v,u,D);return P&&P[ktn(m)]}function yW(u=Wi,m=Wi,v=cn){if(u.flags&67359327&&m.flags&180227&&v.flags&180227){let D=UB([u,m,v]),P=xd.get(D);return P||(P={yieldType:u,returnType:m,nextType:v},xd.set(D,P)),P}return{yieldType:u,returnType:m,nextType:v}}function l0n(u){let m,v,D;for(let P of u)if(!(P===void 0||P===Lg)){if(P===yf)return yf;m=Ft(m,P.yieldType),v=Ft(v,P.returnType),D=Ft(D,P.nextType)}return m||v||D?yW(m&&Ha(m),v&&Ha(v),D&&Kg(D)):Lg}function vat(u,m){return u[m]}function iG(u,m,v){return u[m]=v}function Bat(u,m,v){var D,P;if(u===Vn)return rm;if(Xo(u))return yf;if(!(u.flags&1048576)){let He=v?{errors:void 0,skipLogging:!0}:void 0,qe=u0n(u,m,v,He);if(qe===Lg){if(v){let Vt=D8t(v,u,!!(m&2));He?.errors&&lg(Vt,...He.errors)}return}else if((D=He?.errors)!=null&&D.length)for(let Vt of He.errors)PA.add(Vt);return qe}let Y=m&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",oe=vat(u,Y);if(oe)return oe===Lg?void 0:oe;let Be;for(let He of u.types){let qe=v?{errors:void 0}:void 0,Vt=u0n(He,m,v,qe);if(Vt===Lg){if(v){let kt=D8t(v,u,!!(m&2));qe?.errors&&lg(kt,...qe.errors)}iG(u,Y,Lg);return}else if((P=qe?.errors)!=null&&P.length)for(let kt of qe.errors)PA.add(kt);Be=Ft(Be,Vt)}let Oe=Be?l0n(Be):Lg;return iG(u,Y,Oe),Oe===Lg?void 0:Oe}function N8t(u,m){if(u===Lg)return Lg;if(u===yf)return yf;let{yieldType:v,returnType:D,nextType:P}=u;return m&&tUt(!0),yW(Zq(v,m)||hr,Zq(D,m)||hr,P)}function u0n(u,m,v,D){if(Xo(u))return yf;let P=!1;if(m&2){let Y=g0n(u,_h)||A0n(u,_h);if(Y)if(Y===Lg&&v)P=!0;else return m&8?N8t(Y,v):Y}if(m&1){let Y=g0n(u,Gp)||A0n(u,Gp);if(Y)if(Y===Lg&&v)P=!0;else if(m&2){if(Y!==Lg)return Y=N8t(Y,v),P?Y:iG(u,"iterationTypesOfAsyncIterable",Y)}else return Y}if(m&2){let Y=p0n(u,_h,v,D,P);if(Y!==Lg)return Y}if(m&1){let Y=p0n(u,Gp,v,D,P);if(Y!==Lg)return m&2?(Y=N8t(Y,v),P?Y:iG(u,"iterationTypesOfAsyncIterable",Y)):Y}return Lg}function g0n(u,m){return vat(u,m.iterableCacheKey)}function A0n(u,m){if(w1(u,m.getGlobalIterableType(!1))||w1(u,m.getGlobalIteratorObjectType(!1))||w1(u,m.getGlobalIterableIteratorType(!1))||w1(u,m.getGlobalGeneratorType(!1))){let[v,D,P]=lf(u);return iG(u,m.iterableCacheKey,yW(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,P))}if(Yst(u,m.getGlobalBuiltinIteratorTypes())){let[v]=lf(u),D=eUt(),P=cn;return iG(u,m.iterableCacheKey,yW(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,P))}}function d0n(u){let m=kIn(!1),v=m&&Pi(Io(m),Ap(u));return v&&g2(v)?A2(v):`__@${u}`}function p0n(u,m,v,D,P){let Y=Gg(u,d0n(m.iteratorSymbolName)),oe=Y&&!(Y.flags&16777216)?Io(Y):void 0;if(Xo(oe))return P?yf:iG(u,m.iterableCacheKey,yf);let Be=oe?tg(oe,0):void 0,Oe=Me(Be,Vt=>_R(Vt)===0);if(!jt(Oe))return v&&jt(Be)&&p0(u,m.getGlobalIterableType(!0),v,void 0,void 0,D),P?Lg:iG(u,m.iterableCacheKey,Lg);let He=Kg(At(Oe,ud)),qe=f0n(He,m,v,D,P)??Lg;return P?qe:iG(u,m.iterableCacheKey,qe)}function D8t(u,m,v){let D=v?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,P=!!tfe(m)||!v&&sEe(u.parent)&&u.parent.expression===u&&BWe(!1)!==oi&&dg(m,Ope(BWe(!1),[hr,hr,hr]));return u9(u,P,D,no(m))}function BUs(u,m,v,D){return f0n(u,m,v,D,!1)}function f0n(u,m,v,D,P){if(Xo(u))return yf;let Y=wUs(u,m)||TUs(u,m);return Y===Lg&&v&&(Y=void 0,P=!0),Y??(Y=kUs(u,m,v,D,P)),Y===Lg?void 0:Y}function wUs(u,m){return vat(u,m.iteratorCacheKey)}function TUs(u,m){if(w1(u,m.getGlobalIterableIteratorType(!1))||w1(u,m.getGlobalIteratorType(!1))||w1(u,m.getGlobalIteratorObjectType(!1))||w1(u,m.getGlobalGeneratorType(!1))){let[v,D,P]=lf(u);return iG(u,m.iteratorCacheKey,yW(v,D,P))}if(Yst(u,m.getGlobalBuiltinIteratorTypes())){let[v]=lf(u),D=eUt(),P=cn;return iG(u,m.iteratorCacheKey,yW(v,D,P))}}function I0n(u,m){let v=Pi(u,"done")||Bs;return dg(m===0?Bs:tn,v)}function RUs(u){return I0n(u,0)}function NUs(u){return I0n(u,1)}function DUs(u){if(Xo(u))return yf;let m=vat(u,"iterationTypesOfIteratorResult");if(m)return m;if(w1(u,q3s(!1))){let oe=lf(u)[0];return iG(u,"iterationTypesOfIteratorResult",yW(oe,void 0,void 0))}if(w1(u,$3s(!1))){let oe=lf(u)[0];return iG(u,"iterationTypesOfIteratorResult",yW(void 0,oe,void 0))}let v=nm(u,RUs),D=v!==Wi?Pi(v,"value"):void 0,P=nm(u,NUs),Y=P!==Wi?Pi(P,"value"):void 0;return!D&&!Y?iG(u,"iterationTypesOfIteratorResult",Lg):iG(u,"iterationTypesOfIteratorResult",yW(D,Y||es,void 0))}function k8t(u,m,v,D,P){var Y,oe,Be,Oe;let He=Gg(u,v);if(!He&&v!=="next")return;let qe=He&&!(v==="next"&&He.flags&16777216)?v==="next"?Io(He):Dv(Io(He),2097152):void 0;if(Xo(qe))return yf;let Vt=qe?tg(qe,0):E;if(Vt.length===0){if(D){let Ji=v==="next"?m.mustHaveANextMethodDiagnostic:m.mustBeAMethodDiagnostic;P?(P.errors??(P.errors=[]),P.errors.push(mo(D,Ji,v))):Sr(D,Ji,v)}return v==="next"?Lg:void 0}if(qe?.symbol&&Vt.length===1){let Ji=m.getGlobalGeneratorType(!1),Mi=m.getGlobalIteratorType(!1),To=((oe=(Y=Ji.symbol)==null?void 0:Y.members)==null?void 0:oe.get(v))===qe.symbol,Ka=!To&&((Oe=(Be=Mi.symbol)==null?void 0:Be.members)==null?void 0:Oe.get(v))===qe.symbol;if(To||Ka){let yl=To?Ji:Mi,{mapper:ka}=qe;return yW(w9(yl.typeParameters[0],ka),w9(yl.typeParameters[1],ka),v==="next"?w9(yl.typeParameters[2],ka):void 0)}}let kt,vr;for(let Ji of Vt)v!=="throw"&&jt(Ji.parameters)&&(kt=Ft(kt,CR(Ji,0))),vr=Ft(vr,ud(Ji));let dn,vn;if(v!=="throw"){let Ji=kt?Ha(kt):cn;if(v==="next")vn=Ji;else if(v==="return"){let Mi=m.resolveIterationType(Ji,D)||hr;dn=Ft(dn,Mi)}}let ii,Yi=vr?Kg(vr):Wi,js=m.resolveIterationType(Yi,D)||hr,Co=DUs(js);return Co===Lg?(D&&(P?(P.errors??(P.errors=[]),P.errors.push(mo(D,m.mustHaveAValueDiagnostic,v))):Sr(D,m.mustHaveAValueDiagnostic,v)),ii=hr,dn=Ft(dn,hr)):(ii=Co.yieldType,dn=Ft(dn,Co.returnType)),yW(ii,Ha(dn),vn)}function kUs(u,m,v,D,P){let Y=l0n([k8t(u,m,"next",v,D),k8t(u,m,"return",v,D),k8t(u,m,"throw",v,D)]);return P?Y:iG(u,m.iteratorCacheKey,Y)}function D9(u,m,v){if(Xo(m))return;let D=x8t(m,v);return D&&D[ktn(u)]}function x8t(u,m){if(Xo(u))return yf;let v=m?2:1,D=m?_h:Gp;return Bat(u,v,void 0)||BUs(u,D,void 0,void 0)}function xUs(u){fZ(u)||Y8s(u)}function ROe(u,m){let v=!!(m&1),D=!!(m&2);if(v){let P=D9(1,u,D);return P?D?pZ(rfe(P)):P:nn}return D?pZ(u)||nn:u}function h0n(u,m){let v=ROe(m,SI(u));return!!(v&&(ah(v,16384)||v.flags&32769))}function GUs(u){if(fZ(u))return;let m=$re(u);if(m&&fl(m)){XC(u,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!m){XC(u,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let v=yS(m),D=ud(v);if(ot||u.expression||D.flags&131072){let P=u.expression?RI(u.expression):Bt;if(m.kind===179)u.expression&&Sr(u,Z.Setters_cannot_return_a_value);else if(m.kind===177){let Y=u.expression?RI(u.expression):Bt;u.expression&&!QQ(Y,D,u,u.expression)&&Sr(u,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class)}else if(Dse(m)){let Y=ROe(D,SI(m))??D;wat(m,Y,u,u.expression,P)}}else m.kind!==177&&Te.noImplicitReturns&&!h0n(m,D)&&Sr(u,Z.Not_all_code_paths_return_a_value)}function wat(u,m,v,D,P,Y=!1){let oe=wo(v),Be=SI(u);if(D){let kt=QA(D,oe);if(Lw(kt)){wat(u,m,v,kt.whenTrue,Ol(kt.whenTrue),!0),wat(u,m,v,kt.whenFalse,Ol(kt.whenFalse),!0);return}}let Oe=v.kind===254,He=Be&2?EOe(P,!1,v,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):P,qe=D&&cat(D);QQ(He,m,Oe&&!Y?v:qe,qe)}function FUs(u){fZ(u)||u.flags&65536&&XC(u,Z.with_statements_are_not_allowed_in_an_async_function_block),Ol(u.expression);let m=ms(u);if(!bW(m)){let v=rs(m,u.pos).start,D=u.statement.pos;M5(m,v,D-v,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function ZUs(u){fZ(u);let m,v=!1,D=Ol(u.expression);F(u.caseBlock.clauses,P=>{P.kind===298&&!v&&(m===void 0?m=P:(os(P,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),v=!0)),P.kind===297&&g(Y(P)),F(P.statements,rA),Te.noFallthroughCasesInSwitch&&P.fallthroughFlowNode&&zWe(P.fallthroughFlowNode)&&Sr(P,Z.Fallthrough_case_in_switch);function Y(oe){return()=>{let Be=Ol(oe.expression);d8t(D,Be)||Ghn(Be,D,oe.expression,void 0)}}}),u.caseBlock.locals&&_W(u.caseBlock)}function LUs(u){fZ(u)||ji(u.parent,m=>bu(m)?"quit":m.kind===257&&m.label.escapedText===u.label.escapedText?(os(u.label,Z.Duplicate_label_0,xp(u.label)),!0):!1),rA(u.statement)}function VUs(u){fZ(u)||Ir(u.expression)&&!u.expression.escapedText&&ijs(u,Z.Line_break_not_permitted_here),u.expression&&Ol(u.expression)}function PUs(u){fZ(u),Eat(u.tryBlock);let m=u.catchClause;if(m){if(m.variableDeclaration){let v=m.variableDeclaration;wOe(v);let D=kh(v);if(D){let P=nl(D);P&&!(P.flags&3)&&XC(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(v.initializer)XC(v.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let P=m.block.locals;P&&SB(m.locals,Y=>{let oe=P.get(Y);oe?.valueDeclaration&&oe.flags&2&&os(oe.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,Bc(Y))})}}Eat(m.block)}u.finallyBlock&&Eat(u.finallyBlock)}function Tat(u,m,v){let D=A0(u);if(D.length===0)return;for(let Y of S9(u))v&&Y.flags&4194304||m0n(u,Y,Bq(Y,8576,!0),AR(Y));let P=m.valueDeclaration;if(P&&xa(P)){for(let Y of P.members)if((!v&&!cg(Y)||v&&cg(Y))&&!Rse(Y)){let oe=Uo(Y);m0n(u,oe,P_(Y.name.expression),AR(oe))}}if(D.length>1)for(let Y of D)WUs(u,Y)}function m0n(u,m,v,D){let P=m.valueDeclaration,Y=Il(P);if(Y&&p(Y))return;let oe=OJt(u,v),Be=la(u)&2?Cp(u.symbol,265):void 0,Oe=P&&P.kind===227||Y&&Y.kind===168?P:void 0,He=$m(m)===u.symbol?P:void 0;for(let qe of oe){let Vt=qe.declaration&&$m(Uo(qe.declaration))===u.symbol?qe.declaration:void 0,kt=He||Vt||(Be&&!jt(Kw(u),vr=>!!LQ(vr,m.escapedName)&&!!D5(vr,qe.keyType))?Be:void 0);if(kt&&!dg(D,qe.type)){let vr=vQ(kt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,kl(m),no(D),no(qe.keyType),no(qe.type));Oe&&kt!==Oe&&lg(vr,mo(Oe,Z._0_is_declared_here,kl(m))),PA.add(vr)}}}function WUs(u,m){let v=m.declaration,D=OJt(u,m.keyType),P=la(u)&2?Cp(u.symbol,265):void 0,Y=v&&$m(Uo(v))===u.symbol?v:void 0;for(let oe of D){if(oe===m)continue;let Be=oe.declaration&&$m(Uo(oe.declaration))===u.symbol?oe.declaration:void 0,Oe=Y||Be||(P&&!jt(Kw(u),He=>!!$x(He,m.keyType)&&!!D5(He,oe.keyType))?P:void 0);Oe&&!dg(m.type,oe.type)&&Sr(Oe,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,no(m.keyType),no(m.type),no(oe.keyType),no(oe.type))}}function ife(u,m){switch(u.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":Sr(u,m,u.escapedText)}}function OUs(u){Ze>=1&&u.escapedText==="Object"&&s.getEmitModuleFormatOfFile(ms(u))<5&&Sr(u,Z.Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0,jS[We])}function MUs(u){let m=Me(Sx(u),cS);if(!B(m))return;let v=wo(u),D=new Set,P=new Set;if(F(u.parameters,({name:oe},Be)=>{Ir(oe)&&D.add(oe.escapedText),Nu(oe)&&P.add(Be)}),HJt(u)){let oe=m.length-1,Be=m[oe];v&&Be&&Ir(Be.name)&&Be.typeExpression&&Be.typeExpression.type&&!D.has(Be.name.escapedText)&&!P.has(oe)&&!Nv(nl(Be.typeExpression.type))&&Sr(Be.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Vo(Be.name))}else F(m,({name:oe,isNameFirst:Be},Oe)=>{P.has(Oe)||Ir(oe)&&D.has(oe.escapedText)||(zi(oe)?v&&Sr(oe,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,oy(oe),oy(oe.left)):Be||Hw(v,oe,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Vo(oe)))})}function NOe(u){let m=!1;if(u)for(let D=0;D{D.default?(m=!0,HUs(D.default,u,P)):m&&Sr(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let Y=0;YD)return!1;for(let Oe=0;Oezh(v)&&pC(v))&&os(m,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!u.name&&!Ga(u,2048)&&XC(u,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),b0n(u),F(u.members,rA),_W(u)}function b0n(u){R8s(u),SOe(u),nfe(u,u.name),NOe(ZD(u)),eSe(u);let m=Uo(u),v=Fp(m),D=T1(v),P=Io(m);C0n(m),_at(m),sJs(u),!!(u.flags&33554432)||oJs(u);let oe=BB(u);if(oe){F(oe.typeArguments,rA),Ze{let Vt=qe[0],kt=nZ(v),vr=fy(kt);if(KUs(vr,oe),rA(oe.expression),jt(oe.typeArguments)){F(oe.typeArguments,rA);for(let vn of Uw(vr,oe.typeArguments,oe))if(!X_n(oe,vn.typeParameters))break}let dn=T1(Vt,v.thisType);if(p0(D,dn,void 0)?p0(P,Thn(vr),u.name||u,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):v0n(u,D,dn,Z.Class_0_incorrectly_extends_base_class_1),kt.flags&8650752&&(I_(P)?tg(kt,1).some(ii=>ii.flags&4)&&!Ga(u,64)&&Sr(u.name||u,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):Sr(u.name||u,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(vr.symbol&&vr.symbol.flags&32)&&!(kt.flags&8650752)){let vn=zx(vr,oe.typeArguments,oe);F(vn,ii=>!YN(ii.declaration)&&!rG(ud(ii),Vt))&&Sr(oe.expression,Z.Base_constructors_must_all_have_the_same_return_type)}qUs(v,Vt)})}UUs(u,v,D,P);let Be=jJ(u);if(Be)for(let He of Be)(!Od(He.expression)||GC(He.expression))&&Sr(He.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),_8t(He),g(Oe(He));g(()=>{Tat(v,m),Tat(P,m,!0),m8t(u),tKs(u)});function Oe(He){return()=>{let qe=JB(nl(He));if(!uo(qe))if(fWe(qe)){let Vt=qe.symbol&&qe.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,kt=T1(qe,v.thisType);p0(D,kt,void 0)||v0n(u,D,kt,Vt)}else Sr(He,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function UUs(u,m,v,D){let Y=BB(u)&&Kw(m),oe=Y?.length?T1(ma(Y),m.thisType):void 0,Be=nZ(m);for(let Oe of u.members)zye(Oe)||(Tc(Oe)&&F(Oe.parameters,He=>{Ve(He,Oe)&&E0n(u,D,Be,oe,m,v,He,!0)}),E0n(u,D,Be,oe,m,v,Oe,!1))}function E0n(u,m,v,D,P,Y,oe,Be,Oe=!0){let He=oe.name&&xv(oe.name)||xv(oe);return He?S0n(u,m,v,D,P,Y,Rne(oe),wP(oe),cg(oe),Be,He,Oe?oe:void 0):0}function S0n(u,m,v,D,P,Y,oe,Be,Oe,He,qe,Vt){let kt=wo(u),vr=!!(u.flags&33554432);if(oe&&qe?.valueDeclaration&&PI(qe.valueDeclaration)&&qe.valueDeclaration.name&&Wfn(qe.valueDeclaration.name))return Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:Z.This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic),2;if(D&&(oe||Te.noImplicitOverride)){let dn=Oe?m:Y,vn=Oe?v:D,ii=Gg(dn,qe.escapedName),Yi=Gg(vn,qe.escapedName),js=no(D);if(ii&&!Yi&&oe){if(Vt){let Co=xCn(nf(qe),vn);Co?Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,js,kl(Co)):Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,js)}return 2}else if(ii&&Yi?.declarations&&Te.noImplicitOverride&&!vr){let Co=jt(Yi.declarations,wP);if(oe)return 0;if(Co){if(Be&&Co)return Vt&&Sr(Vt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,js),1}else{if(Vt){let Ji=He?kt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:kt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;Sr(Vt,Ji,js)}return 1}}}else if(oe){if(Vt){let dn=no(P);Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,dn)}return 2}return 0}function v0n(u,m,v,D){let P=!1;for(let Y of u.members){if(cg(Y))continue;let oe=Y.name&&xv(Y.name)||xv(Y);if(oe){let Be=Gg(m,oe.escapedName),Oe=Gg(v,oe.escapedName);if(Be&&Oe){let He=()=>wu(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,kl(oe),no(m),no(v));p0(Io(Be),Io(Oe),Y.name||Y,void 0,He)||(P=!0)}}}P||p0(m,v,u.name||u,D)}function KUs(u,m){let v=tg(u,1);if(v.length){let D=v[0].declaration;if(D&&Gb(D,2)){let P=AN(u.symbol);P8t(m,P)||Sr(m,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,f9(u.symbol))}}}function jUs(u,m,v){if(!m.name)return 0;let D=Uo(u),P=Fp(D),Y=T1(P),oe=Io(D),Oe=BB(u)&&Kw(P),He=Oe?.length?T1(ma(Oe),P.thisType):void 0,qe=nZ(P),Vt=m.parent?Rne(m):Ga(m,16);return S0n(u,oe,qe,He,P,Y,Vt,wP(m),cg(m),!1,v)}function Jse(u){return iI(u)&1?u.links.target:u}function zUs(u){return Me(u.declarations,m=>m.kind===264||m.kind===265)}function qUs(u,m){var v,D,P,Y,oe;let Be=Gd(m),Oe=new Map;e:for(let He of Be){let qe=Jse(He);if(qe.flags&4194304)continue;let Vt=LQ(u,qe.escapedName);if(!Vt)continue;let kt=Jse(Vt),vr=u2(qe);if(pe.assert(!!kt,"derived should point to something, even if it is the base class' declaration."),kt===qe){let dn=AN(u.symbol);if(vr&64&&(!dn||!Ga(dn,64))){for(let Co of Kw(u)){if(Co===m)continue;let Ji=LQ(Co,qe.escapedName),Mi=Ji&&Jse(Ji);if(Mi&&Mi!==qe)continue e}let vn=no(m),ii=no(u),Yi=kl(He),js=Ft((v=Oe.get(dn))==null?void 0:v.missedProperties,Yi);Oe.set(dn,{baseTypeName:vn,typeName:ii,missedProperties:js})}}else{let dn=u2(kt);if(vr&2||dn&2)continue;let vn,ii=qe.flags&98308,Yi=kt.flags&98308;if(ii&&Yi){if((iI(qe)&6?(D=qe.declarations)!=null&&D.some(Ji=>B0n(Ji,vr)):(P=qe.declarations)!=null&&P.every(Ji=>B0n(Ji,vr)))||iI(qe)&262144||kt.valueDeclaration&&fo(kt.valueDeclaration))continue;let js=ii!==4&&Yi===4;if(js||ii===4&&Yi!==4){let Ji=js?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,Ji,kl(qe),no(m),no(u))}else if($e){let Ji=(Y=kt.declarations)==null?void 0:Y.find(Mi=>Mi.kind===173&&!Mi.initializer);if(Ji&&!(kt.flags&33554432)&&!(vr&64)&&!(dn&64)&&!((oe=kt.declarations)!=null&&oe.some(Mi=>!!(Mi.flags&33554432)))){let Mi=zY(AN(u.symbol)),To=Ji.name;if(Ji.exclamationToken||!Mi||!Ir(To)||!ot||!T0n(To,u,Mi)){let Ka=Z.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,Ka,kl(qe),no(m))}}}continue}else if(xKt(qe)){if(xKt(kt)||kt.flags&4)continue;pe.assert(!!(kt.flags&98304)),vn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else qe.flags&98304?vn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:vn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,vn,no(m),kl(qe),no(u))}}for(let[He,qe]of Oe)if(B(qe.missedProperties)===1)vd(He)?Sr(He,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,ma(qe.missedProperties),qe.baseTypeName):Sr(He,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,qe.typeName,ma(qe.missedProperties),qe.baseTypeName);else if(B(qe.missedProperties)>5){let Vt=At(qe.missedProperties.slice(0,4),vr=>`'${vr}'`).join(", "),kt=B(qe.missedProperties)-4;vd(He)?Sr(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,qe.baseTypeName,Vt,kt):Sr(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,qe.typeName,qe.baseTypeName,Vt,kt)}else{let Vt=At(qe.missedProperties,kt=>`'${kt}'`).join(", ");vd(He)?Sr(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,qe.baseTypeName,Vt):Sr(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,qe.typeName,qe.baseTypeName,Vt)}}function B0n(u,m){return m&64&&(!pi(u)||!u.initializer)||g_(u.parent)}function $Us(u,m,v){if(!B(m))return v;let D=new Map;F(v,P=>{D.set(P.escapedName,P)});for(let P of m){let Y=Gd(T1(P,u.thisType));for(let oe of Y){let Be=D.get(oe.escapedName);Be&&oe.parent===Be.parent&&D.delete(oe.escapedName)}}return Do(D.values())}function eKs(u,m){let v=Kw(u);if(v.length<2)return!0;let D=new Map;F(BJt(u).declaredProperties,Y=>{D.set(Y.escapedName,{prop:Y,containingType:u})});let P=!0;for(let Y of v){let oe=Gd(T1(Y,u.thisType));for(let Be of oe){let Oe=D.get(Be.escapedName);if(!Oe)D.set(Be.escapedName,{prop:Be,containingType:Y});else if(Oe.containingType!==u&&!JMs(Oe.prop,Be)){P=!1;let qe=no(Oe.containingType),Vt=no(Y),kt=wu(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,kl(Be),qe,Vt);kt=wu(kt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,no(u),qe,Vt),PA.add(Bw(ms(m),m,kt))}}}return P}function tKs(u){if(!ot||!ht||u.flags&33554432)return;let m=zY(u);for(let v of u.members)if(!(o_(v)&128)&&!cg(v)&&w0n(v)){let D=v.name;if(Ir(D)||p(D)||Un(D)){let P=Io(Uo(v));P.flags&3||Lse(P)||(!m||!T0n(D,P,m))&&Sr(v.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Wd(D))}}}function w0n(u){return u.kind===173&&!wP(u)&&!u.exclamationToken&&!u.initializer}function rKs(u,m,v,D,P){for(let Y of v)if(Y.pos>=D&&Y.pos<=P){let oe=me.createPropertyAccessExpression(me.createThis(),u);XA(oe.expression,oe),XA(oe,Y),oe.flowNode=Y.returnFlowNode;let Be=dZ(oe,m,mW(m));if(!Lse(Be))return!0}return!1}function T0n(u,m,v){let D=Un(u)?me.createElementAccessExpression(me.createThis(),u.expression):me.createPropertyAccessExpression(me.createThis(),u);XA(D.expression,D),XA(D,v),D.flowNode=v.returnFlowNode;let P=dZ(D,m,mW(m));return!Lse(P)}function nKs(u){sG(u)||Z8s(u),Mat(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"interface"),NOe(u.typeParameters),g(()=>{ife(u.name,Z.Interface_name_cannot_be_0),eSe(u);let m=Uo(u);C0n(m);let v=Cp(m,265);if(u===v){let D=Fp(m),P=T1(D);if(eKs(D,u.name)){for(let Y of Kw(D))p0(P,T1(Y,D.thisType),u.name,Z.Interface_0_incorrectly_extends_interface_1);Tat(D,m)}}M_n(u)}),F(N7(u),m=>{(!Od(m.expression)||GC(m.expression))&&Sr(m.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),_8t(m)}),F(u.members,rA),g(()=>{m8t(u),_W(u)})}function iKs(u){if(sG(u),ife(u.name,Z.Type_alias_name_cannot_be_0),Mat(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"type"),eSe(u),NOe(u.typeParameters),u.type.kind===141){let m=B(u.typeParameters);(m===0?u.name.escapedText==="BuiltinIteratorReturn":m===1&&Tet.has(u.name.escapedText))||Sr(u.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types)}else rA(u.type),_W(u)}function R0n(u){let m=sa(u);if(!(m.flags&1024)){m.flags|=1024;let v=0,D;for(let P of u.members){let Y=sKs(P,v,D);sa(P).enumMemberValue=Y,v=typeof Y.value=="number"?Y.value+1:void 0,D=P}}}function sKs(u,m,v){if(kY(u.name))Sr(u.name,Z.Computed_property_names_are_not_allowed_in_enums);else if(eQ(u.name))Sr(u.name,Z.An_enum_member_cannot_have_a_numeric_name);else{let D=hP(u.name);IN(D)&&!oz(D)&&Sr(u.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(u.initializer)return oKs(u);if(u.parent.flags&33554432&&!VA(u.parent))return $h(void 0);if(m===void 0)return Sr(u.name,Z.Enum_member_must_have_initializer),$h(void 0);if(sS(Te)&&v?.initializer){let D=GK(v);typeof D.value=="number"&&!D.resolvedOtherFiles||Sr(u.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return $h(m)}function oKs(u){let m=VA(u.parent),v=u.initializer,D=ur(v,u);return D.value!==void 0?m&&typeof D.value=="number"&&!isFinite(D.value)?Sr(v,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):sS(Te)&&typeof D.value=="string"&&!D.isSyntacticallyString&&Sr(v,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${Vo(u.parent.name)}.${hP(u.name)}`):m?Sr(v,Z.const_enum_member_initializers_must_be_constant_expressions):u.parent.flags&33554432?Sr(v,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):p0(Ol(v),ri,v,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function N0n(u,m){let v=TI(u,111551,!0);if(!v)return $h(void 0);if(u.kind===80){let D=u;if(oz(D.escapedText)&&v===Fse(D.escapedText,111551,void 0))return $h(+D.escapedText,!1)}if(v.flags&8)return m?D0n(u,v,m):GK(v.valueDeclaration);if(kq(v)){let D=v.valueDeclaration;if(D&&nc(D)&&!D.type&&D.initializer&&(!m||D!==m&&$F(D,m))){let P=ur(D.initializer,D);return m&&ms(m)!==ms(D)?$h(P.value,!1,!0,!0):$h(P.value,P.isSyntacticallyString,P.resolvedOtherFiles,!0)}}return $h(void 0)}function aKs(u,m){let v=u.expression;if(Od(v)&&mA(u.argumentExpression)){let D=TI(v,111551,!0);if(D&&D.flags&384){let P=Ap(u.argumentExpression.text),Y=D.exports.get(P);if(Y)return pe.assert(ms(Y.valueDeclaration)===ms(D.valueDeclaration)),m?D0n(u,Y,m):GK(Y.valueDeclaration)}}return $h(void 0)}function D0n(u,m,v){let D=m.valueDeclaration;if(!D||D===v)return Sr(u,Z.Property_0_is_used_before_being_assigned,kl(m)),$h(void 0);if(!$F(D,v))return Sr(u,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),$h(0);let P=GK(D);return v.parent!==D.parent?$h(P.value,P.isSyntacticallyString,P.resolvedOtherFiles,!0):P}function cKs(u){g(()=>lKs(u))}function lKs(u){sG(u),nfe(u,u.name),eSe(u),u.members.forEach(rA),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),R0n(u);let m=Uo(u),v=Cp(m,u.kind);if(u===v){if(m.declarations&&m.declarations.length>1){let P=VA(u);F(m.declarations,Y=>{V3(Y)&&VA(Y)!==P&&Sr(Il(Y),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;F(m.declarations,P=>{if(P.kind!==267)return!1;let Y=P;if(!Y.members.length)return!1;let oe=Y.members[0];oe.initializer||(D?Sr(oe.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function uKs(u){p(u.name)&&Sr(u,Z.An_enum_member_cannot_be_named_with_a_private_identifier),u.initializer&&Ol(u.initializer)}function gKs(u){let m=u.declarations;if(m){for(let v of m)if((v.kind===264||v.kind===263&&u1(v.body))&&!(v.flags&33554432))return v}}function AKs(u,m){let v=tS(u),D=tS(m);return fc(v)?fc(D):fc(D)?!1:v===D}function dKs(u){u.body&&(rA(u.body),vB(u)||_W(u)),g(m);function m(){var v,D;let P=vB(u),Y=u.flags&33554432;P&&!Y&&Sr(u.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let oe=s_(u),Be=oe?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(DOe(u,Be))return;if(sG(u)||!Y&&u.name.kind===11&&os(u.name,Z.Only_ambient_modules_can_use_quoted_names),Ir(u.name)&&(nfe(u,u.name),!(u.flags&2080))){let He=ms(u),qe=Sge(u),Vt=rs(He,qe);QU.add(qh(He,Vt.start,Vt.length,Z.A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead))}eSe(u);let Oe=Uo(u);if(Oe.flags&512&&!Y&&Ret(u,Fb(Te))){if(Te.erasableSyntaxOnly&&Sr(u.name,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),sS(Te)&&!ms(u).externalModuleIndicator&&Sr(u.name,Z.Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement,zt),((v=Oe.declarations)==null?void 0:v.length)>1){let He=gKs(Oe);He&&(ms(u)!==ms(He)?Sr(u.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):u.posqe.kind===95);He&&Sr(He,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(oe)if(_F(u)){if((P||Uo(u).flags&33554432)&&u.body)for(let qe of u.body.statements)G8t(qe,P)}else fc(u.parent)?P?Sr(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Xr(c2(u.name))&&Sr(u.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):P?Sr(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Sr(u.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function G8t(u,m){switch(u.kind){case 244:for(let D of u.declarationList.declarations)G8t(D,m);break;case 278:case 279:XC(u,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 272:if(d3(u))break;case 273:XC(u,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 209:case 261:let v=u.name;if(Nu(v)){for(let D of v.elements)G8t(D,m);break}case 264:case 267:case 263:case 265:case 268:case 266:if(m)return;break}}function pKs(u){switch(u.kind){case 80:return u;case 167:do u=u.left;while(u.kind!==80);return u;case 212:do{if(cN(u.expression)&&!p(u.name))return u.name;u=u.expression}while(u.kind!==80);return u}}function Rat(u){let m=LY(u);if(!m||sf(m))return!1;if(!Zg(m))return Sr(m,Z.String_literal_expected),!1;let v=u.parent.kind===269&&s_(u.parent.parent);if(u.parent.kind!==308&&!v)return Sr(m,u.kind===279?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(v&&Xr(m.text)&&!Tpe(u))return Sr(u,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!km(u)&&u.attributes){let D=u.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,P=!1;for(let Y of u.attributes.elements)Zg(Y.value)||(P=!0,Sr(Y.value,D));return!P}return!0}function Nat(u,m=!0){u===void 0||u.kind!==11||(m?(We===5||We===6)&&os(u,Z.String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020):os(u,Z.Identifier_expected))}function Dat(u){var m,v,D,P,Y;let oe=Uo(u),Be=YC(oe);if(Be!==it){if(oe=jA(oe.exportSymbol||oe),wo(u)&&!(Be.flags&111551)&&!nN(u)){let qe=eS(u)?u.propertyName||u.name:rh(u)?u.name:u;if(pe.assert(u.kind!==281),u.kind===282){let Vt=Sr(qe,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),kt=(v=(m=ms(u).symbol)==null?void 0:m.exports)==null?void 0:v.get(CF(u.propertyName||u.name));if(kt===Be){let vr=(D=kt.declarations)==null?void 0:D.find(l3);vr&&lg(Vt,mo(vr,Z._0_is_automatically_exported_here,Bc(kt.escapedName)))}}else{pe.assert(u.kind!==261);let Vt=ji(u,Hp(Mf,km)),kt=(Vt&&((P=ZY(Vt))==null?void 0:P.text))??"...",vr=Bc(Ir(qe)?qe.escapedText:oe.escapedName);Sr(qe,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,vr,`import("${kt}").${vr}`)}return}let Oe=Hb(Be),He=(oe.flags&1160127?111551:0)|(oe.flags&788968?788968:0)|(oe.flags&1920?1920:0);if(Oe&He){let qe=u.kind===282?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;Sr(u,qe,kl(oe))}else u.kind!==282&&Te.isolatedModules&&!ji(u,nN)&&oe.flags&1160127&&Sr(u,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,kl(oe),zt);if(sS(Te)&&!nN(u)&&!(u.flags&33554432)){let qe=uR(oe),Vt=!(Oe&111551);if(Vt||qe)switch(u.kind){case 274:case 277:case 272:{if(Te.verbatimModuleSyntax){pe.assertIsDefined(u.name,"An ImportClause with a symbol should have a name");let kt=Te.verbatimModuleSyntax&&d3(u)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:Vt?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,vr=HD(u.kind===277&&u.propertyName||u.name);hu(Sr(u,kt,vr),Vt?void 0:qe,vr)}Vt&&u.kind===272&&Gb(u,32)&&Sr(u,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,zt);break}case 282:if(Te.verbatimModuleSyntax||ms(qe)!==ms(u)){let kt=HD(u.propertyName||u.name),vr=Vt?Sr(u,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,zt):Sr(u,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,kt,zt);hu(vr,Vt?void 0:qe,kt);break}}if(Te.verbatimModuleSyntax&&u.kind!==272&&!wo(u)&&s.getEmitModuleFormatOfFile(ms(u))===1?Sr(u,XU(u)):We===200&&u.kind!==272&&u.kind!==261&&s.getEmitModuleFormatOfFile(ms(u))===1&&Sr(u,Z.ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve),Te.verbatimModuleSyntax&&!nN(u)&&!(u.flags&33554432)&&Oe&128){let kt=Be.valueDeclaration,vr=(Y=s.getRedirectFromOutput(ms(kt).resolvedPath))==null?void 0:Y.resolvedRef;kt.flags&33554432&&(!vr||!Fb(vr.commandLine.options))&&Sr(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,zt)}}if(uy(u)){let qe=F8t(oe,u);dy(qe)&&qe.declarations&&YB(u,qe.declarations,qe.escapedName)}}}function F8t(u,m){if(!(u.flags&2097152)||dy(u)||!Mb(u))return u;let v=YC(u);if(v===it)return v;for(;u.flags&2097152;){let D=qot(u);if(D){if(D===v)break;if(D.declarations&&B(D.declarations))if(dy(D)){YB(m,D.declarations,D.escapedName);break}else{if(u===v)break;u=D}}else break}return v}function kat(u){nfe(u,u.name),Dat(u),u.kind===277&&(Nat(u.propertyName),lv(u.propertyName||u.name)&&kw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&eC(u,131072))}function Z8t(u){var m;let v=u.attributes;if(v){let D=qJt(!0);D!==Xg&&p0(hJt(v),HWe(D,32768),v);let P=Att(u),Y=Fie(v,P?os:void 0),oe=u.attributes.token===118;if(P&&Y)return;if(!oLe(We))return os(v,oe?Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve);if(102<=We&&We<=199&&!oe)return XC(v,Z.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);if(u.moduleSpecifier&&eZ(u.moduleSpecifier)===1)return os(v,oe?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls);if(SN(u)||(Mf(u)?(m=u.importClause)==null?void 0:m.isTypeOnly:u.isTypeOnly))return os(v,oe?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(Y)return os(v,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function fKs(u){return Iy(RI(u.value))}function IKs(u){if(!DOe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!sG(u)&&u.modifiers&&XC(u,Z.An_import_declaration_cannot_have_modifiers),Rat(u)){let m,v=u.importClause;v&&!ojs(v)?(v.name&&kat(v),v.namedBindings&&(v.namedBindings.kind===275?(kat(v.namedBindings),s.getEmitModuleFormatOfFile(ms(u))<4&&kw(Te)&&eC(u,65536)):(m=F0(u,u.moduleSpecifier),m&&F(v.namedBindings.elements,kat))),!v.isTypeOnly&&101<=We&&We<=199&&nW(u.moduleSpecifier,m)&&!hKs(u)&&Sr(u.moduleSpecifier,Z.Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0,jS[We])):_r&&!v&&F0(u,u.moduleSpecifier)}Z8t(u)}}function hKs(u){return!!u.attributes&&u.attributes.elements.some(m=>{var v;return c2(m.name)==="type"&&((v=Gs(m.value,mA))==null?void 0:v.text)==="json"})}function mKs(u){if(!DOe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(sG(u),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),d3(u)||Rat(u)))if(kat(u),xq(u,6),u.moduleReference.kind!==284){let m=YC(Uo(u));if(m!==it){let v=Hb(m);if(v&111551){let D=B0(u.moduleReference);TI(D,112575).flags&1920||Sr(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Wd(D))}v&788968&&ife(u.name,Z.Import_name_cannot_be_0)}u.isTypeOnly&&os(u,Z.An_import_alias_cannot_use_import_type)}else 5<=We&&We<=99&&!u.isTypeOnly&&!(u.flags&33554432)&&os(u,Z.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}function CKs(u){if(!DOe(u,wo(u)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!sG(u)&&LZe(u)&&XC(u,Z.An_export_declaration_cannot_have_modifiers),_Ks(u),!u.moduleSpecifier||Rat(u))if(u.exportClause&&!tk(u.exportClause)){F(u.exportClause.elements,yKs);let m=u.parent.kind===269&&s_(u.parent.parent),v=!m&&u.parent.kind===269&&!u.moduleSpecifier&&u.flags&33554432;u.parent.kind!==308&&!m&&!v&&Sr(u,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let m=F0(u,u.moduleSpecifier);m&&Xw(m)?Sr(u.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,kl(m)):u.exportClause&&(Dat(u.exportClause),Nat(u.exportClause.name)),s.getEmitModuleFormatOfFile(ms(u))<4&&(u.exportClause?kw(Te)&&eC(u,65536):eC(u,32768))}Z8t(u)}}function _Ks(u){var m;return u.isTypeOnly&&((m=u.exportClause)==null?void 0:m.kind)===280?Ayn(u.exportClause):!1}function DOe(u,m){let v=u.parent.kind===308||u.parent.kind===269||u.parent.kind===268;return v||XC(u,m),!v}function yKs(u){Dat(u);let m=u.parent.parent.moduleSpecifier!==void 0;if(Nat(u.propertyName,m),Nat(u.name),Ly(Te)&&Bse(u.propertyName||u.name,!0),m)kw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&lv(u.propertyName||u.name)&&eC(u,131072);else{let v=u.propertyName||u.name;if(v.kind===11)return;let D=An(v,v.escapedText,2998271,void 0,!0);D&&(D===dt||D===pr||D.declarations&&fc(Tn(D.declarations[0])))?Sr(v,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,Vo(v)):xq(u,7)}}function bKs(u){let m=u.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(DOe(u,m))return;Te.erasableSyntaxOnly&&u.isExportEquals&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled);let v=u.parent.kind===308?u.parent:u.parent.parent;if(v.kind===268&&!s_(v)){u.isExportEquals?Sr(u,Z.An_export_assignment_cannot_be_used_in_a_namespace):Sr(u,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!sG(u)&&jye(u)&&XC(u,Z.An_export_assignment_cannot_have_modifiers);let D=kh(u);D&&p0(RI(u.expression),nl(D),u.expression);let P=!u.isExportEquals&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&s.getEmitModuleFormatOfFile(ms(u))===1;if(u.expression.kind===80){let Y=u.expression,oe=fn(TI(Y,-1,!0,!0,u));if(oe){xq(u,3);let Be=uR(oe,111551);if(Hb(oe)&111551?(RI(Y),!P&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Be&&Sr(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,Vo(Y))):!P&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Sr(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,Vo(Y)),!P&&!(u.flags&33554432)&&sS(Te)&&!(oe.flags&111551)){let Oe=Hb(oe,!1,!0);oe.flags&2097152&&Oe&788968&&!(Oe&111551)&&(!Be||ms(Be)!==ms(u))?Sr(Y,u.isExportEquals?Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),zt):Be&&ms(Be)!==ms(u)&&hu(Sr(Y,u.isExportEquals?Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),zt),Be,Vo(Y))}}else RI(Y);Ly(Te)&&Bse(Y,!0)}else RI(u.expression);P&&Sr(u,XU(u)),k0n(v),u.flags&33554432&&!Od(u.expression)&&os(u.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),u.isExportEquals&&(We>=5&&We!==200&&(u.flags&33554432&&s.getImpliedNodeFormatForEmit(ms(u))===99||!(u.flags&33554432)&&s.getImpliedNodeFormatForEmit(ms(u))!==1)?os(u,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):We===4&&!(u.flags&33554432)&&os(u,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function EKs(u){return Dh(u.exports,(m,v)=>v!=="export=")}function k0n(u){let m=Uo(u),v=fa(m);if(!v.exportsChecked){let D=m.exports.get("export=");if(D&&EKs(m)){let Y=Mb(D)||D.valueDeclaration;Y&&!Tpe(Y)&&!wo(Y)&&Sr(Y,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let P=LN(m);P&&P.forEach(({declarations:Y,flags:oe},Be)=>{if(Be==="__export"||oe&1920)return;let Oe=ct(Y,dh(Uvs,uC(g_)));if(!(oe&524288&&Oe<=2)&&Oe>1&&!xat(Y))for(let He of Y)Ntn(He)&&PA.add(mo(He,Z.Cannot_redeclare_exported_variable_0,Bc(Be)))}),v.exportsChecked=!0}}function xat(u){return u&&u.length>1&&u.every(m=>wo(m)&&_p(m)&&(p3(m.expression)||cN(m.expression)))}function rA(u){if(u){let m=ge;ge=u,M=0,SKs(u),ge=m}}function SKs(u){if(Pq(u)&8388608)return;dne(u)&&F(u.jsDoc,({comment:v,tags:D})=>{x0n(v),F(D,P=>{x0n(P.comment),wo(u)&&rA(P)})});let m=u.kind;if(d)switch(m){case 268:case 264:case 265:case 263:d.throwIfCancellationRequested()}switch(m>=244&&m<=260&&UJ(u)&&u.flowNode&&!zWe(u.flowNode)&&Hw(Te.allowUnreachableCode===!1,u,Z.Unreachable_code_detected),m){case 169:return P_n(u);case 170:return W_n(u);case 173:return H_n(u);case 172:return aJs(u);case 186:case 185:case 180:case 181:case 182:return q2e(u);case 175:case 174:return cJs(u);case 176:return lJs(u);case 177:return uJs(u);case 178:case 179:return Q_n(u);case 184:return _8t(u);case 183:return nJs(u);case 187:return IJs(u);case 188:return hJs(u);case 189:return mJs(u);case 190:return CJs(u);case 193:case 194:return _Js(u);case 197:case 191:case 192:return rA(u.type);case 198:return SJs(u);case 199:return vJs(u);case 195:return BJs(u);case 196:return wJs(u);case 204:return TJs(u);case 206:return RJs(u);case 203:return NJs(u);case 329:return jJs(u);case 330:return KJs(u);case 347:case 339:case 341:return PJs(u);case 346:return WJs(u);case 345:return OJs(u);case 325:case 326:case 327:return HJs(u);case 342:return YJs(u);case 349:return QJs(u);case 318:XJs(u);case 316:case 315:case 313:case 314:case 323:G0n(u),Lu(u,rA);return;case 319:vKs(u);return;case 310:return rA(u.type);case 334:case 336:case 335:return zJs(u);case 351:return MJs(u);case 344:return JJs(u);case 352:return UJs(u);case 200:return yJs(u);case 201:return bJs(u);case 263:return VJs(u);case 242:case 269:return Eat(u);case 244:return fUs(u);case 245:return IUs(u);case 246:return hUs(u);case 247:return _Us(u);case 248:return yUs(u);case 249:return bUs(u);case 250:return SUs(u);case 251:return EUs(u);case 252:case 253:return xUs(u);case 254:return GUs(u);case 255:return FUs(u);case 256:return ZUs(u);case 257:return LUs(u);case 258:return VUs(u);case 259:return PUs(u);case 261:return dUs(u);case 209:return pUs(u);case 264:return JUs(u);case 265:return nKs(u);case 266:return iKs(u);case 267:return cKs(u);case 307:return uKs(u);case 268:return dKs(u);case 273:return IKs(u);case 272:return mKs(u);case 279:return CKs(u);case 278:return bKs(u);case 243:case 260:fZ(u);return;case 283:return AJs(u)}}function x0n(u){Ki(u)&&F(u,m=>{Tx(m)&&rA(m)})}function G0n(u){if(!wo(u))if($Le(u)||hie(u)){let m=Vi($Le(u)?54:58),v=u.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=u.type,P=nl(D);os(u,v,m,no(hie(u)&&!(P===Wi||P===es)?Ha(Ft([P,Bt],u.postfix?void 0:Hn)):P))}else os(u,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function vKs(u){G0n(u),rA(u.type);let{parent:m}=u;if(Si(m)&&mie(m.parent)){Ei(m.parent.parameters)!==m&&Sr(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}W3(m)||Sr(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let v=u.parent.parent;if(!cS(v)){Sr(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=pne(v);if(!D)return;let P=PL(v);(!P||Ei(P.parameters).symbol!==D)&&Sr(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function BKs(u){let m=nl(u.type),{parent:v}=u,D=u.parent.parent;if(W3(u.parent)&&cS(D)){let P=PL(D),Y=I$e(D.parent.parent);if(P||Y){let oe=li(Y?D.parent.parent.typeExpression.parameters:P.parameters),Be=pne(D);if(!oe||Be&&oe.symbol===Be&&EB(oe))return d0(m)}}return Si(v)&&mie(v.parent)?d0(m):Z0(m)}function Lq(u){let m=ms(u),v=sa(m);v.flags&1?pe.assert(!v.deferredNodes,"A type-checked file should have no deferred nodes."):(v.deferredNodes||(v.deferredNodes=new Set),v.deferredNodes.add(u))}function F0n(u){let m=sa(u);m.deferredNodes&&m.deferredNodes.forEach(wKs),m.deferredNodes=void 0}function wKs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkDeferredNode",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let D=ge;switch(ge=u,M=0,u.kind){case 214:case 215:case 216:case 171:case 287:DK(u);break;case 219:case 220:case 175:case 174:m4s(u);break;case 178:case 179:Q_n(u);break;case 232:XUs(u);break;case 169:rJs(u);break;case 286:vQs(u);break;case 285:wQs(u);break;case 217:case 235:case 218:MXs(u);break;case 223:Ol(u.expression);break;case 227:fAe(u)&&DK(u);break}ge=D,(v=ki)==null||v.pop()}function TKs(u,m){var v,D;(v=ki)==null||v.push(ki.Phase.Check,m?"checkSourceFileNodes":"checkSourceFile",{path:u.path},!0);let P=m?"beforeCheckNodes":"beforeCheck",Y=m?"afterCheckNodes":"afterCheck";Mc(P),m?NKs(u,m):RKs(u),Mc(Y),Pf("Check",P,Y),(D=ki)==null||D.pop()}function Z0n(u,m){if(m)return!1;switch(u){case 0:return!!Te.noUnusedLocals;case 1:return!!Te.noUnusedParameters;default:return pe.assertNever(u)}}function L0n(u){return Qs.get(u.path)||E}function RKs(u){let m=sa(u);if(!(m.flags&1)){if(T3(u,Te,s))return;uyn(u),St(jP),St(c9),St(JF),St(UF),St(KF),m.flags&8388608&&(jP=m.potentialThisCollisions,c9=m.potentialNewTargetCollisions,JF=m.potentialWeakMapSetCollisions,UF=m.potentialReflectCollisions,KF=m.potentialUnusedRenamedBindingElementsInTypes),F(u.statements,rA),rA(u.endOfFileToken),F0n(u),vl(u)&&_W(u),g(()=>{!u.isDeclarationFile&&(Te.noUnusedLocals||Te.noUnusedParameters)&&r0n(L0n(u),(v,D,P)=>{!pP(v)&&Z0n(D,!!(v.flags&33554432))&&PA.add(P)}),u.isDeclarationFile||tUs()}),vl(u)&&k0n(u),jP.length&&(F(jP,iUs),St(jP)),c9.length&&(F(c9,sUs),St(c9)),JF.length&&(F(JF,lUs),St(JF)),UF.length&&(F(UF,gUs),St(UF)),m.flags|=1}}function NKs(u,m){let v=sa(u);if(!(v.flags&1)){if(T3(u,Te,s))return;uyn(u),St(jP),St(c9),St(JF),St(UF),St(KF),F(m,rA),F0n(u),(v.potentialThisCollisions||(v.potentialThisCollisions=[])).push(...jP),(v.potentialNewTargetCollisions||(v.potentialNewTargetCollisions=[])).push(...c9),(v.potentialWeakMapSetCollisions||(v.potentialWeakMapSetCollisions=[])).push(...JF),(v.potentialReflectCollisions||(v.potentialReflectCollisions=[])).push(...UF),(v.potentialUnusedRenamedBindingElementsInTypes||(v.potentialUnusedRenamedBindingElementsInTypes=[])).push(...KF),v.flags|=8388608;for(let D of m){let P=sa(D);P.flags|=8388608}}}function V0n(u,m,v){try{return d=m,DKs(u,v)}finally{d=void 0}}function L8t(){for(let u of c)u();c=[]}function V8t(u,m){L8t();let v=g;g=D=>D(),TKs(u,m),g=v}function DKs(u,m){if(u){L8t();let v=PA.getGlobalDiagnostics(),D=v.length;V8t(u,m);let P=PA.getDiagnostics(u.fileName);if(m)return P;let Y=PA.getGlobalDiagnostics();if(Y!==v){let oe=Wr(v,Y,X7);return Nn(oe,P)}else if(D===0&&Y.length>0)return Nn(Y,P);return P}return F(s.getSourceFiles(),v=>V8t(v)),PA.getDiagnostics()}function kKs(){return L8t(),PA.getGlobalDiagnostics()}function xKs(u,m){if(u.flags&67108864)return[];let v=qu(),D=!1;return P(),v.delete("this"),MJt(v);function P(){for(;u;){switch(WI(u)&&u.locals&&!fc(u)&&oe(u.locals,m),u.kind){case 308:if(!xm(u))break;case 268:Be(Uo(u).exports,m&2623475);break;case 267:oe(Uo(u).exports,m&8);break;case 232:u.name&&Y(u.symbol,m);case 264:case 265:D||oe(pk(Uo(u)),m&788968);break;case 219:u.name&&Y(u.symbol,m);break}nZe(u)&&Y(st,m),D=cg(u),u=u.parent}oe(Gr,m)}function Y(Oe,He){if(sU(Oe)&He){let qe=Oe.escapedName;v.has(qe)||v.set(qe,Oe)}}function oe(Oe,He){He&&Oe.forEach(qe=>{Y(qe,He)})}function Be(Oe,He){He&&Oe.forEach(qe=>{!Cp(qe,282)&&!Cp(qe,281)&&qe.escapedName!=="default"&&Y(qe,He)})}}function GKs(u){return u.kind===80&&KY(u.parent)&&Il(u.parent)===u}function P0n(u){for(;u.parent.kind===167;)u=u.parent;return u.parent.kind===184}function FKs(u){for(;u.parent.kind===212;)u=u.parent;return u.parent.kind===234}function W0n(u,m){let v,D=hC(u);for(;D&&!(v=m(D));)D=hC(D);return v}function ZKs(u){return!!ji(u,m=>Tc(m)&&u1(m.body)||pi(m)?!0:xa(m)||kd(m)?"quit":!1)}function P8t(u,m){return!!W0n(u,v=>v===m)}function LKs(u){for(;u.parent.kind===167;)u=u.parent;if(u.parent.kind===272)return u.parent.moduleReference===u?u.parent:void 0;if(u.parent.kind===278)return u.parent.expression===u?u.parent:void 0}function Gat(u){return LKs(u)!==void 0}function VKs(u){switch(nI(u.parent.parent)){case 1:case 3:return mS(u.parent);case 5:if(jo(u.parent)&&oU(u.parent)===u)return;case 4:case 2:return Uo(u.parent.parent)}}function PKs(u){let m=u.parent;for(;zi(m);)u=m,m=m.parent;if(m&&m.kind===206&&m.qualifier===u)return m}function WKs(u){if(u.expression.kind===110){let m=r0(u,!1,!1);if(bu(m)){let v=jmn(m);if(v){let D=O5(v,void 0),P=qmn(v,D);return P&&!Xo(P)}}}}function O0n(u){if(HT(u))return mS(u.parent);if(wo(u)&&u.parent.kind===212&&u.parent===u.parent.parent.left&&!p(u)&&!O3(u)&&!WKs(u.parent)){let m=VKs(u);if(m)return m}if(u.parent.kind===278&&Od(u)){let m=TI(u,2998271,!0);if(m&&m!==it)return m}else if(fC(u)&&Gat(u)){let m=ML(u,272);return pe.assert(m!==void 0),oW(u,!0)}if(fC(u)){let m=PKs(u);if(m){nl(m);let v=sa(u).resolvedSymbol;return v===it?void 0:v}}for(;HZe(u);)u=u.parent;if(FKs(u)){let m=0;u.parent.kind===234?(m=ww(u)?788968:111551,pAe(u.parent)&&(m|=111551)):m=1920,m|=2097152;let v=Od(u)?TI(u,m,!0):void 0;if(v)return v}if(u.parent.kind===342)return pne(u.parent);if(u.parent.kind===169&&u.parent.parent.kind===346){pe.assert(!wo(u));let m=mZe(u.parent);return m&&m.symbol}if(MT(u)){if(sf(u))return;let m=ji(u,Hp(Tx,ude,O3)),v=m?901119:111551;if(u.kind===80){if(YJ(u)&&Fq(u)){let P=eat(u.parent);return P===it?void 0:P}let D=TI(u,v,!0,!0,PL(u));if(!D&&m){let P=ji(u,Hp(xa,g_));if(P)return kOe(u,!0,Uo(P))}if(D&&m){let P=bP(u);if(P&&LF(P)&&P===D.valueDeclaration)return TI(u,v,!0,!0,ms(P))||D}return D}else{if(p(u))return iat(u);if(u.kind===212||u.kind===167){let D=sa(u);return D.resolvedSymbol?D.resolvedSymbol:(u.kind===212?(nat(u,0),D.resolvedSymbol||(D.resolvedSymbol=M0n(RI(u.expression),sZ(u.name)))):TCn(u,0),!D.resolvedSymbol&&m&&zi(u)?kOe(u):D.resolvedSymbol)}else if(O3(u))return kOe(u)}}else if(fC(u)&&P0n(u)){let m=u.parent.kind===184?788968:1920,v=TI(u,m,!0,!0);return v&&v!==it?v:rot(u)}if(u.parent.kind===183)return TI(u,1,!0)}function M0n(u,m){let v=OJt(u,m);if(v.length&&u.members){let D=qst(pR(u).members);if(v===A0(u))return D;if(D){let P=fa(D),Y=Xt(v,Be=>Be.declaration),oe=At(Y,rd).join(",");if(P.filteredIndexSymbolCache||(P.filteredIndexSymbolCache=new Map),P.filteredIndexSymbolCache.has(oe))return P.filteredIndexSymbolCache.get(oe);{let Be=gA(131072,"__index");return Be.declarations=Xt(v,Oe=>Oe.declaration),Be.parent=u.aliasSymbol?u.aliasSymbol:u.symbol?u.symbol:xv(Be.declarations[0].parent),P.filteredIndexSymbolCache.set(oe,Be),Be}}}}function kOe(u,m,v){if(fC(u)){let oe=TI(u,901119,m,!0,PL(u));if(!oe&&Ir(u)&&v&&(oe=jA(f_(B1(v),u.escapedText,901119))),oe)return oe}let D=Ir(u)?v:kOe(u.left,m,v),P=Ir(u)?u.escapedText:u.right.escapedText;if(D){let Y=D.flags&111551&&Gg(Io(D),"prototype"),oe=Y?Io(Y):Fp(D);return Gg(oe,P)}}function xv(u,m){if(ll(u))return xm(u)?jA(u.symbol):void 0;let{parent:v}=u,D=v.parent;if(!(u.flags&67108864)){if(Dtn(u)){let P=Uo(v);return eS(u.parent)&&u.parent.propertyName===u?qot(P):P}else if(Ine(u))return Uo(v.parent);if(u.kind===80){if(Gat(u))return O0n(u);if(v.kind===209&&D.kind===207&&u===v.propertyName){let P=Vq(D),Y=Gg(P,u.escapedText);if(Y)return Y}else if(Du(v)&&v.name===u)return v.keywordToken===105&&Vo(u)==="target"?t8t(v).symbol:v.keywordToken===102&&Vo(u)==="meta"?NIn().members.get("meta"):void 0}switch(u.kind){case 80:case 81:case 212:case 167:if(!YL(u))return O0n(u);case 110:let P=r0(u,!1,!1);if(bu(P)){let Be=yS(P);if(Be.thisParameter)return Be.thisParameter}if(nne(u))return Ol(u).symbol;case 198:return yUt(u).symbol;case 108:return Ol(u).symbol;case 137:let Y=u.parent;return Y&&Y.kind===177?Y.parent.symbol:void 0;case 11:case 15:if(LL(u.parent.parent)&&_7(u.parent.parent)===u||(u.parent.kind===273||u.parent.kind===279)&&u.parent.moduleSpecifier===u||wo(u)&&SN(u.parent)&&u.parent.moduleSpecifier===u||wo(u)&&ay(u.parent,!1)||Up(u.parent)||EE(u.parent)&&ky(u.parent.parent)&&u.parent.parent.argument===u.parent)return F0(u,u,m);if(Zl(v)&&f3(v)&&v.arguments[1]===u)return Uo(v);case 9:let oe=Yg(v)?v.argumentExpression===u?P_(v.expression):void 0:EE(v)&&Iv(D)?nl(D.objectType):void 0;return oe&&Gg(oe,Ap(u.text));case 90:case 100:case 39:case 86:return mS(u.parent);case 206:return ky(u)?xv(u.argument.literal,m):void 0;case 95:return Cf(u.parent)?pe.checkDefined(u.parent.symbol):void 0;case 102:if(Du(u.parent)&&u.parent.name.escapedText==="defer")return;case 105:return Du(u.parent)?A_n(u.parent).symbol:void 0;case 104:if(fo(u.parent)){let Be=P_(u.parent.right),Oe=A8t(Be);return Oe?.symbol??Be.symbol}return;case 237:return Ol(u).symbol;case 296:if(YJ(u)&&Fq(u)){let Be=eat(u.parent);return Be===it?void 0:Be}default:return}}}function OKs(u){if(Ir(u)&&jo(u.parent)&&u.parent.name===u){let m=sZ(u),v=P_(u.parent.expression),D=v.flags&1048576?v.types:[v];return er(D,P=>Me(A0(P),Y=>Sq(m,Y.keyType)))}}function MKs(u){if(u&&u.kind===305)return TI(u.name,2208703,!0)}function HKs(u){if(R0(u)){let m=u.propertyName||u.name;return u.parent.parent.moduleSpecifier?_5(u.parent.parent,u):m.kind===11?void 0:TI(m,2998271,!0)}else return TI(u,2998271,!0)}function Vq(u){if(ll(u)&&!xm(u)||u.flags&67108864)return nn;let m=tbe(u),v=m&&wv(Uo(m.class));if(ww(u)){let D=nl(u);return v?T1(D,v.thisType):D}if(MT(u))return H0n(u);if(v&&!m.isImplements){let D=Nc(Kw(v));return D?T1(D,v.thisType):nn}if(KY(u)){let D=Uo(u);return Fp(D)}if(GKs(u)){let D=xv(u);return D?Fp(D):nn}if(hg(u))return _q(u,!0,0)||nn;if(jh(u)){let D=Uo(u);return D?Io(D):nn}if(Dtn(u)){let D=xv(u);return D?Io(D):nn}if(Nu(u))return _q(u.parent,!0,0)||nn;if(Gat(u)){let D=xv(u);if(D){let P=Fp(D);return uo(P)?Io(D):P}}return Du(u.parent)&&u.parent.keywordToken===u.kind?A_n(u.parent):CU(u)?qJt(!1):nn}function Fat(u){if(pe.assert(u.kind===211||u.kind===210),u.parent.kind===251){let P=TOe(u.parent);return xK(u,P||nn)}if(u.parent.kind===227){let P=P_(u.parent.right);return xK(u,P||nn)}if(u.parent.kind===304){let P=Ma(u.parent.parent,og),Y=Fat(P)||nn,oe=fP(P.properties,u.parent);return w_n(P,Y,oe)}let m=Ma(u.parent,OI),v=Fat(m)||nn,D=N9(65,v,Bt,u.parent)||nn;return T_n(m,v,m.elements.indexOf(u),D)}function YKs(u){let m=Fat(Ma(u.parent.parent,CY));return m&&Gg(m,u.escapedText)}function H0n(u){return P7(u)&&(u=u.parent),Iy(P_(u))}function Y0n(u){let m=mS(u.parent);return cg(u)?Io(m):Fp(m)}function Q0n(u){let m=u.name;switch(m.kind){case 80:return TE(Vo(m));case 9:case 11:return TE(m.text);case 168:let v=zw(m);return V_(v,12288)?v:$r;default:return pe.fail("Unsupported property name.")}}function W8t(u){u=fy(u);let m=qu(Gd(u)),v=tg(u,0).length?Hl:tg(u,1).length?RA:void 0;return v&&F(Gd(v),D=>{m.has(D.escapedName)||m.set(D.escapedName,D)}),Qy(m)}function Zat(u){return tg(u,0).length!==0||tg(u,1).length!==0}function X0n(u){let m=QKs(u);return m?er(m,X0n):[u]}function QKs(u){if(iI(u)&6)return Xt(fa(u).containingType.types,m=>Gg(m,u.escapedName));if(u.flags&33554432){let{links:{leftSpread:m,rightSpread:v,syntheticOrigin:D}}=u;return m?[m,v]:D?[D]:J_(XKs(u))}}function XKs(u){let m,v=u;for(;v=fa(v).target;)m=v;return m}function JKs(u){if(kp(u))return!1;let m=$l(u,Ir);if(!m)return!1;let v=m.parent;return v?!((jo(v)||fm(v))&&v.name===m)&&cSe(m)===st:!1}function UKs(u){return a3(u.parent)&&u===u.parent.name}function KKs(u,m){var v;let D=$l(u,Ir);if(D){let P=cSe(D,UKs(D));if(P){if(P.flags&1048576){let oe=jA(P.exportSymbol);if(!m&&oe.flags&944&&!(oe.flags&3))return;P=oe}let Y=$m(P);if(Y){if(Y.flags&512&&((v=Y.valueDeclaration)==null?void 0:v.kind)===308){let oe=Y.valueDeclaration,Be=ms(D);return oe!==Be?void 0:oe}return ji(D.parent,oe=>a3(oe)&&Uo(oe)===Y)}}}}function jKs(u){let m=YLe(u);if(m)return m;let v=$l(u,Ir);if(v){let D=g8s(v);if(qU(D,111551)&&!uR(D,111551))return Mb(D)}}function zKs(u){return u.valueDeclaration&&hg(u.valueDeclaration)&&ai(u.valueDeclaration).parent.kind===300}function J0n(u){if(u.flags&418&&u.valueDeclaration&&!ll(u.valueDeclaration)){let m=fa(u);if(m.isDeclarationWithCollidingName===void 0){let v=tS(u.valueDeclaration);if(Cge(v)||zKs(u))if(An(v.parent,u.escapedName,111551,void 0,!1))m.isDeclarationWithCollidingName=!0;else if(O8t(u.valueDeclaration,16384)){let D=O8t(u.valueDeclaration,32768),P=VT(v,!1),Y=v.kind===242&&VT(v.parent,!1);m.isDeclarationWithCollidingName=!Rge(v)&&(!D||!P&&!Y)}else m.isDeclarationWithCollidingName=!1}return m.isDeclarationWithCollidingName}return!1}function qKs(u){if(!kp(u)){let m=$l(u,Ir);if(m){let v=cSe(m);if(v&&J0n(v))return v.valueDeclaration}}}function $Ks(u){let m=$l(u,jh);if(m){let v=Uo(m);if(v)return J0n(v)}return!1}function U0n(u){switch(pe.assert(Ht),u.kind){case 272:return Lat(Uo(u));case 274:case 275:case 277:case 282:let m=Uo(u);return!!m&&Lat(m,!0);case 279:let v=u.exportClause;return!!v&&(tk(v)||jt(v.elements,U0n));case 278:return u.expression&&u.expression.kind===80?Lat(Uo(u),!0):!0}return!1}function e8s(u){let m=$l(u,km);return m===void 0||m.parent.kind!==308||!d3(m)?!1:Lat(Uo(m))&&m.moduleReference&&!sf(m.moduleReference)}function Lat(u,m){if(!u)return!1;let v=ms(u.valueDeclaration),D=v&&Uo(v);wE(D);let P=fn(YC(u));return P===it?!m||!uR(u):!!(Hb(u,m,!0)&111551)&&(Fb(Te)||!aSe(P))}function aSe(u){return g8t(u)||!!u.constEnumOnlyModule}function K0n(u,m){if(pe.assert(Ht),d9(u)){let v=Uo(u),D=v&&fa(v);if(D?.referenced)return!0;let P=fa(v).aliasTarget;if(P&&o_(u)&32&&Hb(P)&111551&&(Fb(Te)||!aSe(P)))return!0}return m?!!Lu(u,v=>K0n(v,m)):!1}function j0n(u){if(u1(u.body)){if(bB(u)||cv(u))return!1;let m=Uo(u),v=PQ(m);return v.length>1||v.length===1&&v[0].declaration!==u}return!1}function t8s(u){let m=$0n(u);if(!m)return!1;let v=nl(m);return uo(v)||Lse(v)}function xOe(u,m){return(r8s(u,m)||n8s(u))&&!t8s(u)}function r8s(u,m){return!ot||C2e(u)||cS(u)||!u.initializer?!1:Ga(u,31)?!!m&&kd(m):!0}function n8s(u){return ot&&C2e(u)&&(cS(u)||!u.initializer)&&Ga(u,31)}function z0n(u){let m=$l(u,D=>ih(D)||nc(D));if(!m)return!1;let v;if(nc(m)){if(m.type||!wo(m)&&!lSe(m))return!1;let D=E7(m);if(!D||!mE(D))return!1;v=Uo(D)}else v=Uo(m);return!v||!(v.flags&16|3)?!1:!!Dh(B1(v),D=>D.flags&111551&&jY(D.valueDeclaration))}function i8s(u){let m=$l(u,ih);if(!m)return E;let v=Uo(m);return v&&Gd(Io(v))||E}function Pq(u){var m;let v=u.id||0;return v<0||v>=c5.length?0:((m=c5[v])==null?void 0:m.flags)||0}function O8t(u,m){return s8s(u,m),!!(Pq(u)&m)}function s8s(u,m){if(!Te.noCheck&&gU(ms(u),Te)||sa(u).calculatedFlags&m)return;switch(m){case 16:case 32:return oe(u);case 128:case 256:case 2097152:return Y(u);case 512:case 8192:case 65536:case 262144:return Oe(u);case 536870912:return qe(u);case 4096:case 32768:case 16384:return kt(u);default:return pe.assertNever(m,`Unhandled node check flag calculation: ${pe.formatNodeCheckFlags(m)}`)}function D(dn,vn){let ii=vn(dn,dn.parent);if(ii!=="skip")return ii||Sz(dn,vn)}function P(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=2097536,oe(dn)}function Y(dn){D(dn,P)}function oe(dn){let vn=sa(dn);vn.calculatedFlags|=48,dn.kind===108&&Qot(dn)}function Be(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=336384,qe(dn)}function Oe(dn){D(dn,Be)}function He(dn){return MT(dn)||a0(dn.parent)&&(dn.parent.objectAssignmentInitializer??dn.parent.name)===dn}function qe(dn){let vn=sa(dn);if(vn.calculatedFlags|=536870912,Ir(dn)&&(vn.calculatedFlags|=49152,He(dn)&&!(jo(dn.parent)&&dn.parent.name===dn))){let ii=L0(dn);ii&&ii!==it&&Xmn(dn,ii)}}function Vt(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=53248,vr(dn)}function kt(dn){let vn=tS(HT(dn)?dn.parent:dn);D(vn,Vt)}function vr(dn){qe(dn),Un(dn)&&zw(dn),p(dn)&&PI(dn.parent)&&mat(dn.parent)}}function GK(u){return R0n(u.parent),sa(u).enumMemberValue??$h(void 0)}function q0n(u){switch(u.kind){case 307:case 212:case 213:return!0}return!1}function Vat(u){if(u.kind===307)return GK(u).value;sa(u).resolvedSymbol||RI(u);let m=sa(u).resolvedSymbol||(Od(u)?TI(u,111551,!0):void 0);if(m&&m.flags&8){let v=m.valueDeclaration;if(VA(v.parent))return GK(v).value}}function M8t(u){return!!(u.flags&524288)&&tg(u,0).length>0}function o8s(u,m){var v;let D=$l(u,fC);if(!D||m&&(m=$l(m),!m))return 0;let P=!1;if(zi(D)){let qe=TI(B0(D),111551,!0,!0,m);P=!!((v=qe?.declarations)!=null&&v.every(nN))}let Y=TI(D,111551,!0,!0,m),oe=Y&&Y.flags&2097152?YC(Y):Y;P||(P=!!(Y&&uR(Y,111551)));let Be=TI(D,788968,!0,!0,m),Oe=Be&&Be.flags&2097152?YC(Be):Be;if(Y||P||(P=!!(Be&&uR(Be,788968))),oe&&oe===Oe){let qe=$Jt(!1);if(qe&&oe===qe)return 9;let Vt=Io(oe);if(Vt&&dR(Vt))return P?10:1}if(!Oe)return P?11:0;let He=Fp(Oe);return uo(He)?P?11:0:He.flags&3?11:V_(He,245760)?2:V_(He,528)?6:V_(He,296)?3:V_(He,2112)?4:V_(He,402653316)?5:yA(He)?7:V_(He,12288)?8:M8t(He)?10:Nv(He)?7:11}function a8s(u,m,v,D,P){let Y=$l(u,jAe);if(!Y)return me.createToken(133);let oe=Uo(Y);return Dt.serializeTypeForDeclaration(Y,oe,m,v|1024,D,P)}function H8t(u){u=$l(u,fJ);let m=u.kind===179?178:179,v=Cp(Uo(u),m),D=v&&v.pos{switch(D.kind){case 261:case 170:case 209:case 173:case 304:case 305:case 307:case 211:case 263:case 219:case 220:case 264:case 232:case 267:case 175:case 178:case 179:case 268:return!0}return!1})}}}function p8s(u){return hf(u)||nc(u)&&lSe(u)?MQ(Io(Uo(u))):!1}function f8s(u,m,v){let D=u.flags&1056?Dt.symbolToExpression(u.symbol,111551,m,void 0,void 0,v):u===tn?me.createTrue():u===Bs&&me.createFalse();if(D)return D;let P=u.value;return typeof P=="object"?me.createBigIntLiteral(P):typeof P=="string"?me.createStringLiteral(P):P<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-P)):me.createNumericLiteral(P)}function I8s(u,m){let v=Io(Uo(u));return f8s(v,u,m)}function Y8t(u){return u?(Mw(u),ms(u).localJsxFactory||zF):zF}function Q8t(u){if(u){let m=ms(u);if(m){if(m.localJsxFragmentFactory)return m.localJsxFragmentFactory;let v=m.pragmas.get("jsxfrag"),D=Ki(v)?v[0]:v;if(D)return m.localJsxFragmentFactory=Bz(D.arguments.factory,Ze),m.localJsxFragmentFactory}}if(Te.jsxFragmentFactory)return Bz(Te.jsxFragmentFactory,Ze)}function $0n(u){let m=kh(u);if(m)return m;if(u.kind===170&&u.parent.kind===179){let v=H8t(u.parent).getAccessor;if(v)return xb(v)}}function h8s(){return{getReferencedExportContainer:KKs,getReferencedImportDeclaration:jKs,getReferencedDeclarationWithCollidingName:qKs,isDeclarationWithCollidingName:$Ks,isValueAliasDeclaration:m=>{let v=$l(m);return v&&Ht?U0n(v):!0},hasGlobalName:u8s,isReferencedAliasDeclaration:(m,v)=>{let D=$l(m);return D&&Ht?K0n(D,v):!0},hasNodeCheckFlag:(m,v)=>{let D=$l(m);return D?O8t(D,v):!1},isTopLevelValueImportEqualsWithEntityName:e8s,isDeclarationVisible:Ak,isImplementationOfOverload:j0n,requiresAddingImplicitUndefined:xOe,isExpandoFunctionDeclaration:z0n,getPropertiesOfContainerFunction:i8s,createTypeOfDeclaration:a8s,createReturnTypeOfSignatureDeclaration:c8s,createTypeOfExpression:l8s,createLiteralConstValue:I8s,isSymbolAccessible:cW,isEntityNameVisible:Cq,getConstantValue:m=>{let v=$l(m,q0n);return v?Vat(v):void 0},getEnumMemberValue:m=>{let v=$l(m,LF);return v?GK(v):void 0},collectLinkedAliases:Bse,markLinkedReferences:m=>{let v=$l(m);return v&&xq(v,0)},getReferencedValueDeclaration:A8s,getReferencedValueDeclarations:d8s,getTypeReferenceSerializationKind:o8s,isOptionalParameter:C2e,isArgumentsLocalBinding:JKs,getExternalModuleFileFromDeclaration:m=>{let v=$l(m,Dge);return v&&X8t(v)},isLiteralConstDeclaration:p8s,isLateBound:m=>{let v=$l(m,jh),D=v&&Uo(v);return!!(D&&iI(D)&4096)},getJsxFactoryEntity:Y8t,getJsxFragmentFactoryEntity:Q8t,isBindingCapturedByNode:(m,v)=>{let D=$l(m),P=$l(v);return!!D&&!!P&&(nc(P)||hg(P))&&BYs(D,P)},getDeclarationStatementsForSourceFile:(m,v,D,P)=>{let Y=$l(m);pe.assert(Y&&Y.kind===308,"Non-sourcefile node passed into getDeclarationsForSourceFile");let oe=Uo(m);return oe?(wE(oe),oe.exports?Dt.symbolTableToDeclarationStatements(oe.exports,m,v,D,P):[]):m.locals?Dt.symbolTableToDeclarationStatements(m.locals,m,v,D,P):[]},isImportRequiredByAugmentation:u,isDefinitelyReferenceToGlobalSymbolObject:lk,createLateBoundIndexSignatures:(m,v,D,P,Y)=>{let oe=m.symbol,Be=A0(Io(oe)),Oe=zst(oe),He=Oe&&$st(Oe,Do(pk(oe).values())),qe;for(let kt of[Be,He])if(B(kt)){qe||(qe=[]);for(let vr of kt){if(vr.declaration||vr===rl)continue;if(vr.components&&ue(vr.components,ii=>{var Yi;return!!(ii.name&&Un(ii.name)&&Od(ii.name.expression)&&v&&((Yi=Cq(ii.name.expression,v,!1))==null?void 0:Yi.accessibility)===0)})){let ii=Me(vr.components,Yi=>!Tse(Yi));qe.push(...At(ii,Yi=>{Vt(Yi.name.expression);let js=kt===Be?[me.createModifier(126)]:void 0;return me.createPropertyDeclaration(Ft(js,vr.isReadonly?me.createModifier(148):void 0),Yi.name,(ss(Yi)||pi(Yi)||hl(Yi)||uu(Yi)||bB(Yi)||cv(Yi))&&Yi.questionToken?me.createToken(58):void 0,Dt.typeToTypeNode(Io(Yi.symbol),v,D,P,Y),void 0)}));continue}let dn=Dt.indexInfoToIndexSignatureDeclaration(vr,v,D,P,Y);dn&&kt===Be&&(dn.modifiers||(dn.modifiers=me.createNodeArray())).unshift(me.createModifier(126)),dn&&qe.push(dn)}}return qe;function Vt(kt){if(!Y.trackSymbol)return;let vr=B0(kt),dn=An(vr,vr.escapedText,1160127,void 0,!0);dn&&Y.trackSymbol(dn,v,111551)}},symbolToDeclarations:(m,v,D,P,Y,oe)=>Dt.symbolToDeclarations(m,v,D,P,Y,oe)};function u(m){let v=ms(m);if(!v.symbol)return!1;let D=X8t(m);if(!D||D===v)return!1;let P=LN(v.symbol);for(let Y of Do(P.values()))if(Y.mergeId){let oe=jA(Y);if(oe.declarations){for(let Be of oe.declarations)if(ms(Be)===D)return!0}}return!1}}function X8t(u){let m=u.kind===268?Gs(u.name,Zg):LY(u),v=BE(m,m,void 0);if(v)return Cp(v,308)}function m8s(){for(let m of s.getSourceFiles())fOt(m,Te);oh=new Map;let u;for(let m of s.getSourceFiles())if(!m.redirectInfo){if(!vl(m)){let v=m.locals.get("globalThis");if(v?.declarations)for(let D of v.declarations)PA.add(mo(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));FN(Gr,m.locals)}m.jsGlobalAugmentations&&FN(Gr,m.jsGlobalAugmentations),m.patternAmbientModules&&m.patternAmbientModules.length&&(Vb=Nn(Vb,m.patternAmbientModules)),m.moduleAugmentations.length&&(u||(u=[])).push(m.moduleAugmentations),m.symbol&&m.symbol.globalExports&&m.symbol.globalExports.forEach((D,P)=>{Gr.has(P)||Gr.set(P,D)})}if(u)for(let m of u)for(let v of m)vB(v.parent)&&wQ(v);if(I5(),fa(dt).type=xe,fa(st).type=JI("IArguments",0,!0),fa(it).type=nn,fa(pr).type=Lh(16,pr),NA=JI("Array",1,!0),qn=JI("Object",0,!0),Js=JI("Function",0,!0),Hl=mt&&JI("CallableFunction",0,!0)||Js,RA=mt&&JI("NewableFunction",0,!0)||Js,hm=JI("String",0,!0),af=JI("Number",0,!0),dI=JI("Boolean",0,!0),XI=JI("RegExp",0,!0),d_=d0(hr),OC=d0(Sn),OC===Xg&&(OC=Hf(void 0,Ee,E,E,E)),uA=VIn("ReadonlyArray",1)||NA,E1=uA?Ope(uA,[hr]):d_,C2=VIn("ThisType",1),u)for(let m of u)for(let v of m)vB(v.parent)||wQ(v);oh.forEach(({firstFile:m,secondFile:v,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:P,firstFileLocations:Y,secondFileLocations:oe},Be)=>{let Oe=P?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let He of Y)f5(He,Oe,Be,oe);for(let He of oe)f5(He,Oe,Be,Y)});else{let P=Do(D.keys()).join(", ");PA.add(lg(mo(m,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,P),mo(v,Z.Conflicts_are_in_this_file))),PA.add(lg(mo(v,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,P),mo(m,Z.Conflicts_are_in_this_file)))}}),oh=void 0}function eC(u,m){if(Te.importHelpers){let v=ms(u);if(g3(v,Te)&&!(u.flags&33554432)){let D=_8s(v,u);if(D!==it){let P=fa(D);if(P.requestedExternalEmitHelpers??(P.requestedExternalEmitHelpers=0),(P.requestedExternalEmitHelpers&m)!==m){let Y=m&~P.requestedExternalEmitHelpers;for(let oe=1;oe<=16777216;oe<<=1)if(Y&oe)for(let Be of C8s(oe)){let Oe=Zh(f_(LN(D),Ap(Be),111551));Oe?oe&524288?jt(PQ(Oe),He=>NE(He)>3)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,4):oe&1048576?jt(PQ(Oe),He=>NE(He)>4)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,5):oe&1024&&(jt(PQ(Oe),He=>NE(He)>2)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,3)):Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,PD,Be)}}P.requestedExternalEmitHelpers|=m}}}}function C8s(u){switch(u){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return Ue?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__setFunctionName"];case 8388608:return["__propKey"];case 16777216:return["__addDisposableResource","__disposeResources"];case 33554432:return["__rewriteRelativeImportExtension"];default:return pe.fail("Unrecognized helper")}}function _8s(u,m){let v=sa(u);return v.externalHelpersModule||(v.externalHelpersModule=eK(pjs(u),PD,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,m)||it),v.externalHelpersModule}function sG(u){var m;let v=E8s(u)||y8s(u);if(v!==void 0)return v;if(Si(u)&&SF(u))return XC(u,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Ch(u)?u.declarationList.flags&7:0,P,Y,oe,Be,Oe,He=0,qe=!1,Vt=!1;for(let kt of u.modifiers)if(So(kt)){if(OJ(Ue,u,u.parent,u.parent.parent)){if(Ue&&(u.kind===178||u.kind===179)){let vr=H8t(u);if(p1(vr.firstAccessor)&&u===vr.secondAccessor)return XC(u,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return u.kind===175&&!u1(u.body)?XC(u,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):XC(u,Z.Decorators_are_not_valid_here);if(He&-34849)return os(kt,Z.Decorators_are_not_valid_here);if(Vt&&He&98303){pe.assertIsDefined(Oe);let vr=ms(kt);return bW(vr)?!1:(lg(Sr(kt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),mo(Oe,Z.Decorator_used_before_export_here)),!0)}He|=32768,He&98303?He&32&&(qe=!0):Vt=!0,Oe??(Oe=kt)}else{if(kt.kind!==148){if(u.kind===172||u.kind===174)return os(kt,Z._0_modifier_cannot_appear_on_a_type_member,Vi(kt.kind));if(u.kind===182&&(kt.kind!==126||!xa(u.parent)))return os(kt,Z._0_modifier_cannot_appear_on_an_index_signature,Vi(kt.kind))}if(kt.kind!==103&&kt.kind!==147&&kt.kind!==87&&u.kind===169)return os(kt,Z._0_modifier_cannot_appear_on_a_type_parameter,Vi(kt.kind));switch(kt.kind){case 87:{if(u.kind!==267&&u.kind!==169)return os(u,Z.A_class_member_cannot_have_the_0_keyword,Vi(87));let vn=ZB(u.parent)&&WL(u.parent)||u.parent;if(u.kind===169&&!(kd(vn)||xa(vn)||x_(vn)||$D(vn)||wg(vn)||em(vn)||hl(vn)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,Vi(kt.kind));break}case 164:if(He&16)return os(kt,Z._0_modifier_already_seen,"override");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","async");He|=16,Be=kt;break;case 125:case 124:case 123:let vr=w5(HY(kt.kind));if(He&7)return os(kt,Z.Accessibility_modifier_already_seen);if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"override");if(He&256)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"static");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"accessor");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"async");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,vr);if(He&64)return kt.kind===123?os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,vr,"abstract"):os(kt,Z._0_modifier_must_precede_1_modifier,vr,"abstract");if(pC(u))return os(kt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);He|=HY(kt.kind);break;case 126:if(He&256)return os(kt,Z._0_modifier_already_seen,"static");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","async");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","override");He|=256,P=kt;break;case 129:if(He&512)return os(kt,Z._0_modifier_already_seen,"accessor");if(He&8)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(u.kind!==173)return os(kt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);He|=512;break;case 148:if(He&8)return os(kt,Z._0_modifier_already_seen,"readonly");if(u.kind!==173&&u.kind!==172&&u.kind!==182&&u.kind!==170)return os(kt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");He|=8;break;case 95:if(Te.verbatimModuleSyntax&&!(u.flags&33554432)&&u.kind!==266&&u.kind!==265&&u.kind!==268&&u.parent.kind===308&&s.getEmitModuleFormatOfFile(ms(u))===1)return os(kt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(He&32)return os(kt,Z._0_modifier_already_seen,"export");if(He&128)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(He&64)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","async");if(xa(u.parent))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");He|=32;break;case 90:let dn=u.parent.kind===308?u.parent:u.parent.parent;if(dn.kind===268&&!s_(dn))return os(kt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(He&32){if(qe)return os(Oe,Z.Decorators_are_not_valid_here)}else return os(kt,Z._0_modifier_must_precede_1_modifier,"export","default");He|=2048;break;case 138:if(He&128)return os(kt,Z._0_modifier_already_seen,"declare");if(He&1024)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(He&16)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(xa(u.parent)&&!pi(u))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(u.parent.flags&33554432&&u.parent.kind===269)return os(kt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(pC(u))return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");He|=128,Y=kt;break;case 128:if(He&64)return os(kt,Z._0_modifier_already_seen,"abstract");if(u.kind!==264&&u.kind!==186){if(u.kind!==175&&u.kind!==173&&u.kind!==178&&u.kind!==179)return os(kt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(u.parent.kind===264&&Ga(u.parent,64))){let vn=u.kind===173?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return os(kt,vn)}if(He&256)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&2)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(He&1024&&oe)return os(oe,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(rh(u)&&u.name.kind===81)return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");He|=64;break;case 134:if(He&1024)return os(kt,Z._0_modifier_already_seen,"async");if(He&128||u.parent.flags&33554432)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");He|=1024,oe=kt;break;case 103:case 147:{let vn=kt.kind===103?8192:16384,ii=kt.kind===103?"in":"out",Yi=ZB(u.parent)&&(WL(u.parent)||de((m=KJ(u.parent))==null?void 0:m.tags,bU))||u.parent;if(u.kind!==169||Yi&&!(g_(Yi)||xa(Yi)||FB(Yi)||bU(Yi)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,ii);if(He&vn)return os(kt,Z._0_modifier_already_seen,ii);if(vn&8192&&He&16384)return os(kt,Z._0_modifier_must_precede_1_modifier,"in","out");He|=vn;break}}}return u.kind===177?He&256?os(P,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):He&16?os(Be,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):He&1024?os(oe,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(u.kind===273||u.kind===272)&&He&128?os(Y,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):u.kind===170&&He&31&&Nu(u.name)?os(u,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):u.kind===170&&He&31&&u.dotDotDotToken?os(u,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):He&1024?v8s(u,oe):!1}function y8s(u){if(!u.modifiers)return!1;let m=b8s(u);return m&&XC(m,Z.Modifiers_cannot_appear_here)}function Pat(u,m){let v=de(u.modifiers,Ig);return v&&v.kind!==m?v:void 0}function b8s(u){switch(u.kind){case 178:case 179:case 177:case 173:case 172:case 175:case 174:case 182:case 268:case 273:case 272:case 279:case 278:case 219:case 220:case 170:case 169:return;case 176:case 304:case 305:case 271:case 283:return de(u.modifiers,Ig);default:if(u.parent.kind===269||u.parent.kind===308)return;switch(u.kind){case 263:return Pat(u,134);case 264:case 186:return Pat(u,128);case 232:case 265:case 266:return de(u.modifiers,Ig);case 244:return u.declarationList.flags&4?Pat(u,135):de(u.modifiers,Ig);case 267:return Pat(u,87);default:pe.assertNever(u)}}}function E8s(u){let m=S8s(u);return m&&XC(m,Z.Decorators_are_not_valid_here)}function S8s(u){return x$e(u)?de(u.modifiers,So):void 0}function v8s(u,m){switch(u.kind){case 175:case 263:case 219:case 220:return!1}return os(m,Z._0_modifier_cannot_be_used_here,"async")}function Wq(u,m=Z.Trailing_comma_not_allowed){return u&&u.hasTrailingComma?M5(u[0],u.end-1,1,m):!1}function eyn(u,m){if(u&&u.length===0){let v=u.pos-1,D=Yu(m.text,u.end)+1;return M5(m,v,D-v,Z.Type_parameter_list_cannot_be_empty)}return!1}function B8s(u){let m=!1,v=u.length;for(let D=0;D!!m.initializer||Nu(m.name)||EB(m))}function T8s(u){if(Ze>=3){let m=u.body&&$u(u.body)&&R$e(u.body.statements);if(m){let v=w8s(u.parameters);if(B(v)){F(v,P=>{lg(Sr(P,Z.This_parameter_is_not_allowed_with_use_strict_directive),mo(m,Z.use_strict_directive_used_here))});let D=v.map((P,Y)=>Y===0?mo(P,Z.Non_simple_parameter_declared_here):mo(P,Z.and_here));return lg(Sr(m,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function Wat(u){let m=ms(u);return sG(u)||eyn(u.typeParameters,m)||B8s(u.parameters)||N8s(u,m)||kd(u)&&T8s(u)}function R8s(u){let m=ms(u);return F8s(u)||eyn(u.typeParameters,m)}function N8s(u,m){if(!lA(u))return!1;u.typeParameters&&!(B(u.typeParameters)>1||u.typeParameters.hasTrailingComma||u.typeParameters[0].constraint)&&m&&fu(m.fileName,[".mts",".cts"])&&os(u.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:v}=u,D=Ra(m,v.pos).line,P=Ra(m,v.end).line;return D!==P&&os(v,Z.Line_terminator_not_permitted_before_arrow)}function D8s(u){let m=u.parameters[0];if(u.parameters.length!==1)return os(m?m.name:u,Z.An_index_signature_must_have_exactly_one_parameter);if(Wq(u.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),m.dotDotDotToken)return os(m.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(jye(m))return os(m.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(m.questionToken)return os(m.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(m.initializer)return os(m.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!m.type)return os(m.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let v=nl(m.type);return kv(v,D=>!!(D.flags&8576))||G5(v)?os(m.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):RE(v,eot)?u.type?!1:os(u,Z.An_index_signature_must_have_a_type_annotation):os(m.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function k8s(u){return sG(u)||D8s(u)}function x8s(u,m){if(m&&m.length===0){let v=ms(u),D=m.pos-1,P=Yu(v.text,m.end)+1;return M5(v,D,P-D,Z.Type_argument_list_cannot_be_empty)}return!1}function GOe(u,m){return Wq(m)||x8s(u,m)}function G8s(u){return u.questionDotToken||u.flags&64?os(u.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function tyn(u){let m=u.types;if(Wq(m))return!0;if(m&&m.length===0){let v=Vi(u.token);return M5(u,m.pos,0,Z._0_list_cannot_be_empty,v)}return jt(m,ryn)}function ryn(u){return l_(u)&&an(u.expression)&&u.typeArguments?os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):GOe(u,u.typeArguments)}function F8s(u){let m=!1,v=!1;if(!sG(u)&&u.heritageClauses)for(let D of u.heritageClauses){if(D.token===96){if(m)return XC(D,Z.extends_clause_already_seen);if(v)return XC(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return XC(D.types[1],Z.Classes_can_only_extend_a_single_class);m=!0}else{if(pe.assert(D.token===119),v)return XC(D,Z.implements_clause_already_seen);v=!0}tyn(D)}}function Z8s(u){let m=!1;if(u.heritageClauses)for(let v of u.heritageClauses){if(v.token===96){if(m)return XC(v,Z.extends_clause_already_seen);m=!0}else return pe.assert(v.token===119),XC(v,Z.Interface_declaration_cannot_have_implements_clause);tyn(v)}return!1}function Oat(u){if(u.kind!==168)return!1;let m=u;return m.expression.kind===227&&m.expression.operatorToken.kind===28?os(m.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function J8t(u){if(u.asteriskToken){if(pe.assert(u.kind===263||u.kind===219||u.kind===175),u.flags&33554432)return os(u.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!u.body)return os(u.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function U8t(u,m){return!!u&&os(u,m)}function nyn(u,m){return!!u&&os(u,m)}function L8s(u,m){let v=new Map;for(let D of u.properties){if(D.kind===306){if(m){let oe=QA(D.expression);if(OI(oe)||og(oe))return os(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let P=D.name;if(P.kind===168&&Oat(P),D.kind===305&&!m&&D.objectAssignmentInitializer&&os(D.equalsToken,Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern),P.kind===81&&os(P,Z.Private_identifiers_are_not_allowed_outside_class_bodies),LB(D)&&D.modifiers)for(let oe of D.modifiers)Ig(oe)&&(oe.kind!==134||D.kind!==175)&&os(oe,Z._0_modifier_cannot_be_used_here,xp(oe));else if(sWt(D)&&D.modifiers)for(let oe of D.modifiers)Ig(oe)&&os(oe,Z._0_modifier_cannot_be_used_here,xp(oe));let Y;switch(D.kind){case 305:case 304:nyn(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),U8t(D.questionToken,Z.An_object_member_cannot_be_declared_optional),P.kind===9&&gyn(P),P.kind===10&&Hx(!0,mo(P,Z.A_bigint_literal_cannot_be_used_as_a_property_name)),Y=4;break;case 175:Y=8;break;case 178:Y=1;break;case 179:Y=2;break;default:pe.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!m){let oe=z8t(P);if(oe===void 0)continue;let Be=v.get(oe);if(!Be)v.set(oe,Y);else if(Y&8&&Be&8)os(P,Z.Duplicate_identifier_0,xp(P));else if(Y&4&&Be&4)os(P,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,xp(P));else if(Y&3&&Be&3)if(Be!==3&&Y!==Be)v.set(oe,Y|Be);else return os(P,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return os(P,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function V8s(u){P8s(u.tagName),GOe(u,u.typeArguments);let m=new Map;for(let v of u.attributes.properties){if(v.kind===294)continue;let{name:D,initializer:P}=v,Y=cz(D);if(!m.get(Y))m.set(Y,!0);else return os(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(P&&P.kind===295&&!P.expression)return os(P,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function P8s(u){if(jo(u)&&eR(u.expression))return os(u.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(eR(u)&&NAe(Te)&&!eU(u.namespace.escapedText))return os(u,Z.React_components_cannot_include_JSX_namespace_names)}function W8s(u){if(u.expression&&dde(u.expression))return os(u.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function iyn(u){if(fZ(u))return!0;if(u.kind===251&&u.awaitModifier&&!(u.flags&65536)){let m=ms(u);if(Hge(u)){if(!bW(m))switch(g3(m,Te)||PA.add(mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),We){case 100:case 101:case 102:case 199:if(m.impliedNodeFormat===1){PA.add(mo(u.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:PA.add(mo(u.awaitModifier,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!bW(m)){let v=mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=A1(u);if(D&&D.kind!==177){pe.assert((SI(D)&2)===0,"Enclosing function should never be an async function.");let P=mo(D,Z.Did_you_mean_to_mark_this_function_as_async);lg(v,P)}return PA.add(v),!0}}if(sEe(u)&&!(u.flags&65536)&&Ir(u.initializer)&&u.initializer.escapedText==="async")return os(u.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(u.initializer.kind===262){let m=u.initializer;if(!j8t(m)){let v=m.declarations;if(!v.length)return!1;if(v.length>1){let P=u.kind===250?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return XC(m.declarations[1],P)}let D=v[0];if(D.initializer){let P=u.kind===250?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return os(D.name,P)}if(D.type){let P=u.kind===250?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return os(D,P)}}}return!1}function O8s(u){if(!(u.flags&33554432)&&u.parent.kind!==188&&u.parent.kind!==265){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.body===void 0&&!Ga(u,64))return M5(u,u.end-1,1,Z._0_expected,"{")}if(u.body){if(Ga(u,64))return os(u,Z.An_abstract_accessor_cannot_have_an_implementation);if(u.parent.kind===188||u.parent.kind===265)return os(u.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(u.typeParameters)return os(u.name,Z.An_accessor_cannot_have_type_parameters);if(!M8s(u))return os(u.name,u.kind===178?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(u.kind===179){if(u.type)return os(u.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let m=pe.checkDefined(L7(u),"Return value does not match parameter count assertion.");if(m.dotDotDotToken)return os(m.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(m.questionToken)return os(m.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(m.initializer)return os(u.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function M8s(u){return K8t(u)||u.parameters.length===(u.kind===178?0:1)}function K8t(u){if(u.parameters.length===(u.kind===178?1:2))return vP(u)}function H8s(u){if(u.operator===158){if(u.type.kind!==155)return os(u.type,Z._0_expected,Vi(155));let m=fne(u.parent);if(wo(m)&&W3(m)){let v=bP(m);v&&(m=m3(v)||v)}switch(m.kind){case 261:let v=m;if(v.name.kind!==80)return os(u,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!h7(v))return os(u,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(v.parent.flags&2))return os(m.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 173:if(!cg(m)||!b3(m))return os(m.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 172:if(!Ga(m,8))return os(m.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return os(u,Z.unique_symbol_types_are_not_allowed_here)}}else if(u.operator===148&&u.type.kind!==189&&u.type.kind!==190)return XC(u,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,Vi(155))}function sfe(u,m){if(Wfn(u)&&!Od(Yg(u)?QA(u.argumentExpression):u.expression))return os(u,m)}function syn(u){if(Wat(u))return!0;if(u.kind===175){if(u.parent.kind===211){if(u.modifiers&&!(u.modifiers.length===1&&ma(u.modifiers).kind===134))return XC(u,Z.Modifiers_cannot_appear_here);if(U8t(u.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(nyn(u.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(u.body===void 0)return M5(u,u.end-1,1,Z._0_expected,"{")}if(J8t(u))return!0}if(xa(u.parent)){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.flags&33554432)return sfe(u.name,Z.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.kind===175&&!u.body)return sfe(u.name,Z.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(u.parent.kind===265)return sfe(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.parent.kind===188)return sfe(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function Y8s(u){let m=u;for(;m;){if(s3(m))return os(u,Z.Jump_target_cannot_cross_function_boundary);switch(m.kind){case 257:if(u.label&&m.label.escapedText===u.label.escapedText)return u.kind===252&&!VT(m.statement,!0)?os(u,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 256:if(u.kind===253&&!u.label)return!1;break;default:if(VT(m,!1)&&!u.label)return!1;break}m=m.parent}if(u.label){let v=u.kind===253?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return os(u,v)}else{let v=u.kind===253?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return os(u,v)}}function Q8s(u){if(u.dotDotDotToken){let m=u.parent.elements;if(u!==Ei(m))return os(u,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(Wq(m,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),u.propertyName)return os(u.name,Z.A_rest_element_cannot_have_a_property_name)}if(u.dotDotDotToken&&u.initializer)return M5(u,u.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function oyn(u){return d1(u)||u.kind===225&&u.operator===41&&u.operand.kind===9}function X8s(u){return u.kind===10||u.kind===225&&u.operator===41&&u.operand.kind===10}function J8s(u){if((jo(u)||Yg(u)&&oyn(u.argumentExpression))&&Od(u.expression))return!!(RI(u).flags&1056)}function ayn(u){let m=u.initializer;if(m){let v=!(oyn(m)||J8s(m)||m.kind===112||m.kind===97||X8s(m));if((hf(u)||nc(u)&&lSe(u))&&!u.type){if(v)return os(m,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return os(m,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function U8s(u){let m=jQ(u),v=m&7;if(Nu(u.name))switch(v){case 6:return os(u,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return os(u,Z._0_declarations_may_not_have_binding_patterns,"using")}if(u.parent.parent.kind!==250&&u.parent.parent.kind!==251){if(m&33554432)ayn(u);else if(!u.initializer){if(Nu(u.name)&&!Nu(u.parent))return os(u,Z.A_destructuring_declaration_must_have_an_initializer);switch(v){case 6:return os(u,Z._0_declarations_must_be_initialized,"await using");case 4:return os(u,Z._0_declarations_must_be_initialized,"using");case 2:return os(u,Z._0_declarations_must_be_initialized,"const")}}}if(u.exclamationToken&&(u.parent.parent.kind!==244||!u.type||u.initializer||m&33554432)){let D=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,D)}return s.getEmitModuleFormatOfFile(ms(u))<4&&!(u.parent.parent.flags&33554432)&&Ga(u.parent.parent,32)&&cyn(u.name),!!v&&lyn(u.name)}function cyn(u){if(u.kind===80){if(Vo(u)==="__esModule")return z8s("noEmit",u,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let m=u.elements;for(let v of m)if(!yp(v))return cyn(v.name)}return!1}function lyn(u){if(u.kind===80){if(u.escapedText==="let")return os(u,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let m=u.elements;for(let v of m)yp(v)||lyn(v.name)}return!1}function j8t(u){let m=u.declarations;if(Wq(u.declarations))return!0;if(!u.declarations.length)return M5(u,m.pos,m.end-m.pos,Z.Variable_declaration_list_cannot_be_empty);let v=u.flags&7;if(v===4||v===6){if(zLe(u.parent))return os(u,v===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration);if(u.flags&33554432)return os(u,v===4?Z.using_declarations_are_not_allowed_in_ambient_contexts:Z.await_using_declarations_are_not_allowed_in_ambient_contexts);if(v===6)return B_n(u)}return!1}function Mat(u){switch(u.kind){case 246:case 247:case 248:case 255:case 249:case 250:case 251:return!1;case 257:return Mat(u.parent)}return!0}function K8s(u){if(!Mat(u.parent)){let m=jQ(u.declarationList)&7;if(m){let v=m===1?"let":m===2?"const":m===4?"using":m===6?"await using":pe.fail("Unknown BlockScope flag");Sr(u,Z._0_declarations_can_only_be_declared_inside_a_block,v)}}}function j8s(u){let m=u.name.escapedText;switch(u.keywordToken){case 105:if(m!=="target")return os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"target");break;case 102:if(m!=="meta"){let v=Zl(u.parent)&&u.parent.expression===u;if(m==="defer"){if(!v)return M5(u,u.end,0,Z._0_expected,"(")}else return v?os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer,Bc(u.name.escapedText)):os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"meta")}break}}function bW(u){return u.parseDiagnostics.length>0}function XC(u,m,...v){let D=ms(u);if(!bW(D)){let P=rs(D,u.pos);return PA.add(qh(D,P.start,P.length,m,...v)),!0}return!1}function M5(u,m,v,D,...P){let Y=ms(u);return bW(Y)?!1:(PA.add(qh(Y,m,v,D,...P)),!0)}function z8s(u,m,v,...D){let P=ms(m);return bW(P)?!1:(l9(u,m,v,...D),!0)}function os(u,m,...v){let D=ms(u);return bW(D)?!1:(Sr(u,m,...v),!0)}function q8s(u){let m=wo(u)?gAe(u):void 0,v=u.typeParameters||m&&Nc(m);if(v){let D=v.pos===v.end?v.pos:Yu(ms(u).text,v.pos);return M5(u,D,v.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function $8s(u){let m=u.type||xb(u);if(m)return os(m,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function ejs(u){if(Un(u.name)&&fo(u.name.expression)&&u.name.expression.operatorToken.kind===103)return os(u.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(xa(u.parent)){if(Zg(u.name)&&u.name.text==="constructor")return os(u.name,Z.Classes_may_not_have_a_field_named_constructor);if(sfe(u.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Ze<2&&t0(u)&&!(u.flags&33554432))return os(u.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(t0(u)&&U8t(u.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(u.parent.kind===265){if(sfe(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(mh(u.parent)){if(sfe(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(u.flags&33554432&&ayn(u),pi(u)&&u.exclamationToken&&(!xa(u.parent)||!u.type||u.initializer||u.flags&33554432||cg(u)||wP(u))){let m=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,m)}}function tjs(u){return u.kind===265||u.kind===266||u.kind===273||u.kind===272||u.kind===279||u.kind===278||u.kind===271||Ga(u,2208)?!1:XC(u,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function rjs(u){for(let m of u.statements)if((jh(m)||m.kind===244)&&tjs(m))return!0;return!1}function uyn(u){return!!(u.flags&33554432)&&rjs(u)}function fZ(u){if(u.flags&33554432){if(!sa(u).hasReportedStatementInAmbientContext&&(bu(u.parent)||yB(u.parent)))return sa(u).hasReportedStatementInAmbientContext=XC(u,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(u.parent.kind===242||u.parent.kind===269||u.parent.kind===308){let v=sa(u.parent);if(!v.hasReportedStatementInAmbientContext)return v.hasReportedStatementInAmbientContext=XC(u,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function gyn(u){let m=xp(u).includes("."),v=u.numericLiteralFlags&16;m||v||+u.text<=2**53-1||Hx(!1,mo(u,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function njs(u){return!!(!(EE(u.parent)||T0(u.parent)&&EE(u.parent.parent))&&!(u.flags&33554432)&&Ze<7&&os(u,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function ijs(u,m,...v){let D=ms(u);if(!bW(D)){let P=rs(D,u.pos);return PA.add(qh(D,Rs(P),0,m,...v)),!0}return!1}function sjs(){return m2||(m2=[],Gr.forEach((u,m)=>{yOt.test(m)&&m2.push(u)})),m2}function ojs(u){var m,v;if(u.phaseModifier===156){if(u.name&&u.namedBindings)return os(u,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);if(((m=u.namedBindings)==null?void 0:m.kind)===276)return Ayn(u.namedBindings)}else if(u.phaseModifier===166){if(u.name)return os(u,Z.Default_imports_are_not_allowed_in_a_deferred_import);if(((v=u.namedBindings)==null?void 0:v.kind)===276)return os(u,Z.Named_imports_are_not_allowed_in_a_deferred_import);if(We!==99&&We!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}return!1}function Ayn(u){return!!F(u.elements,m=>{if(m.isTypeOnly)return XC(m,m.kind===277?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function ajs(u){if(Te.verbatimModuleSyntax&&We===1)return os(u,XU(u));if(u.expression.kind===237){if(We!==99&&We!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}else if(We===5)return os(u,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext);if(u.typeArguments)return os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let m=u.arguments;if(!(100<=We&&We<=199)&&We!==99&&We!==200&&(Wq(m),m.length>1)){let D=m[1];return os(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve)}if(m.length===0||m.length>2)return os(u,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let v=de(m,of);return v?os(v,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function cjs(u,m){let v=la(u);if(v&20&&m.flags&1048576)return de(m.types,D=>{if(D.flags&524288){let P=v&la(D);if(P&4)return u.target===D.target;if(P&16)return!!u.aliasSymbol&&u.aliasSymbol===D.aliasSymbol}return!1})}function ljs(u,m){if(la(u)&128&&kv(m,T9))return de(m.types,v=>!T9(v))}function ujs(u,m){let v=0;if(tg(u,v).length>0||(v=1,tg(u,v).length>0))return de(m.types,P=>tg(P,v).length>0)}function gjs(u,m){let v;if(!(u.flags&406978556)){let D=0;for(let P of m.types)if(!(P.flags&406978556)){let Y=Kg([ON(u),ON(P)]);if(Y.flags&4194304)return P;if(IR(Y)||Y.flags&1048576){let oe=Y.flags&1048576?ct(Y.types,IR):1;oe>=D&&(v=P,D=oe)}}}return v}function Ajs(u){if(ah(u,67108864)){let m=nm(u,v=>!(v.flags&402784252));if(!(m.flags&131072))return m}return u}function dyn(u,m,v){if(m.flags&1048576&&u.flags&2621440){let D=pmn(m,u);if(D)return D;let P=Gd(u);if(P){let Y=dmn(P,m);if(Y){let oe=xUt(m,At(Y,Be=>[()=>Io(Be),Be.escapedName]),v);if(oe!==m)return oe}}}}function z8t(u){let m=_3(u);return m||(Un(u)?sKt(P_(u.expression)):void 0)}function Hat(u){return Zi===u||(Zi=u,Ns=Hc(u)),Ns}function jQ(u){return mn===u||(mn=u,jn=dm(u)),jn}function lSe(u){let m=jQ(u)&7;return m===2||m===4||m===6}function djs(u,m){let v=Te.importHelpers?1:0,D=u?.imports[v];return D&&pe.assert(sp(D)&&D.text===m,`Expected sourceFile.imports[${v}] to be the synthesized JSX runtime import`),D}function pjs(u){pe.assert(Te.importHelpers,"Expected importHelpers to be enabled");let m=u.imports[0];return pe.assert(m&&sp(m)&&m.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),m}}function jvs(s){return!yB(s)}function Ntn(s){return s.kind!==263&&s.kind!==175||!!s.body}function Dtn(s){switch(s.parent.kind){case 277:case 282:return Ir(s)||s.kind===11;default:return HT(s)}}var lS;(s=>{s.JSX="JSX",s.IntrinsicElements="IntrinsicElements",s.ElementClass="ElementClass",s.ElementAttributesPropertyNameContainer="ElementAttributesProperty",s.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",s.Element="Element",s.ElementType="ElementType",s.IntrinsicAttributes="IntrinsicAttributes",s.IntrinsicClassAttributes="IntrinsicClassAttributes",s.LibraryManagedAttributes="LibraryManagedAttributes"})(lS||(lS={}));var Net;(s=>{s.Fragment="Fragment"})(Net||(Net={}));function ktn(s){switch(s){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function D0(s){return!!(s.flags&1)}function xtn(s){return!!(s.flags&2)}function zvs(s){return{getCommonSourceDirectory:s.getCommonSourceDirectory?()=>s.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>s.getCurrentDirectory(),getSymlinkCache:$i(s,s.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=s.getPackageJsonInfoCache)==null?void 0:c.call(s)},useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames(),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:c=>s.getRedirectFromSourceFile(c),isSourceOfProjectReferenceRedirect:c=>s.isSourceOfProjectReferenceRedirect(c),fileExists:c=>s.fileExists(c),getFileIncludeReasons:()=>s.getFileIncludeReasons(),readFile:s.readFile?c=>s.readFile(c):void 0,getDefaultResolutionModeForFile:c=>s.getDefaultResolutionModeForFile(c),getModeForResolutionAtIndex:(c,g)=>s.getModeForResolutionAtIndex(c,g),getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)}}var SOt=class ski{constructor(c,g,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var h;g instanceof ski;)g=g.inner;this.inner=g,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((h=this.inner)!=null&&h.trackSymbol)}trackSymbol(c,g,d){var h,_;if((h=this.inner)!=null&&h.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,g,d))return this.onDiagnosticReported(),!0;c.flags&262144||((_=this.context).trackedSymbols??(_.trackedSymbols=[])).push([c,g,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var g;(g=this.inner)!=null&&g.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var g;(g=this.inner)!=null&&g.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,g,d){var h;(h=this.inner)!=null&&h.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,g,d))}reportNonSerializableProperty(c){var g;(g=this.inner)!=null&&g.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var g;(g=this.inner)!=null&&g.reportInferenceFallback&&!this.context.suppressReportInferenceFallback&&(this.onDiagnosticReported(),this.inner.reportInferenceFallback(c))}pushErrorFallbackNode(c){var g,d;return(d=(g=this.inner)==null?void 0:g.pushErrorFallbackNode)==null?void 0:d.call(g,c)}popErrorFallbackNode(){var c,g;return(g=(c=this.inner)==null?void 0:c.popErrorFallbackNode)==null?void 0:g.call(c)}};function Mr(s,c,g,d){if(s===void 0)return s;let h=c(s),_;if(h!==void 0)return Ki(h)?_=(d||nBs)(h):_=h,pe.assertNode(_,g),_}function Ws(s,c,g,d,h){if(s===void 0)return s;let _=s.length;(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d);let S,R=-1,T=-1;d>0||h<_?S=s.hasTrailingComma&&d+h===_:(R=s.pos,T=s.end,S=s.hasTrailingComma);let W=Gtn(s,c,g,d,h);if(W!==s){let V=me.createNodeArray(W,S);return TB(V,R,T),V}return s}function Sde(s,c,g,d,h){if(s===void 0)return s;let _=s.length;return(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d),Gtn(s,c,g,d,h)}function Gtn(s,c,g,d,h){let _,S=s.length;(d>0||h=2&&(h=qvs(h,g)),g.setLexicalEnvironmentFlags(1,!1)),g.suspendLexicalEnvironment(),h}function qvs(s,c){let g;for(let d=0;d{let S=dR,addSource:Rt,setSourceContent:Lt,addName:Ke,addMapping:Gt,appendSourceMap:nt,toJSON:dt,toString:()=>JSON.stringify(dt())};function Rt(st){_();let ir=Of(d,st,s.getCurrentDirectory(),s.getCanonicalFileName,!0),zt=W.get(ir);return zt===void 0&&(zt=T.length,T.push(ir),R.push(st),W.set(ir,zt)),S(),zt}function Lt(st,ir){if(_(),ir!==null){for(V||(V=[]);V.lengthir||Tt===ir&&ot>zt)}function Gt(st,ir,zt,Ht,Br,mn){pe.assert(st>=Ue,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),pe.assert(zt===void 0||zt>=0,"sourceIndex cannot be negative"),pe.assert(Ht===void 0||Ht>=0,"sourceLine cannot be negative"),pe.assert(Br===void 0||Br>=0,"sourceCharacter cannot be negative"),_(),(Pt(st,ir)||_r(zt,Ht,Br))&&(ur(),Ue=st,$e=ir,ht=!1,_t=!1,mt=!0),zt!==void 0&&Ht!==void 0&&Br!==void 0&&(Ye=zt,Tt=Ht,ot=Br,ht=!0,mn!==void 0&&(Qe=mn,_t=!0)),S()}function nt(st,ir,zt,Ht,Br,mn){pe.assert(st>=Ue,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),_();let jn=[],Zi,Ns=Fet(zt.mappings);for(let An of Ns){if(mn&&(An.generatedLine>mn.line||An.generatedLine===mn.line&&An.generatedCharacter>mn.character))break;if(Br&&(An.generatedLine=1024&&Gr()}function ur(){if(!(!mt||!Dt())){if(_(),Ie0&&(ge+=String.fromCharCode.apply(void 0,re),re.length=0)}function dt(){return ur(),Gr(),{version:3,file:c,sourceRoot:g,sources:T,names:M,mappings:ge,sourcesContent:V}}function pr(st){st<0?st=(-st<<1)+1:st=st<<1;do{let ir=st&31;st=st>>5,st>0&&(ir=ir|32),tr(oBs(ir))}while(st>0)}}var BOt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,ket=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,xet=/^\s*(\/\/[@#] .*)?$/;function Get(s,c){return{getLineCount:()=>c.length,getLineText:g=>s.substring(c[g],c[g+1])}}function wOt(s){for(let c=s.getLineCount()-1;c>=0;c--){let g=s.getLineText(c),d=ket.exec(g);if(d)return d[1].trimEnd();if(!g.match(xet))break}}function iBs(s){return typeof s=="string"||s===null}function sBs(s){return s!==null&&typeof s=="object"&&s.version===3&&typeof s.file=="string"&&typeof s.mappings=="string"&&Ki(s.sources)&&ue(s.sources,Xs)&&(s.sourceRoot===void 0||s.sourceRoot===null||typeof s.sourceRoot=="string")&&(s.sourcesContent===void 0||s.sourcesContent===null||Ki(s.sourcesContent)&&ue(s.sourcesContent,iBs))&&(s.names===void 0||s.names===null||Ki(s.names)&&ue(s.names,Xs))}function TOt(s){try{let c=JSON.parse(s);if(sBs(c))return c}catch{}}function Fet(s){let c=!1,g=0,d=0,h=0,_=0,S=0,R=0,T=0,W;return{get pos(){return g},get error(){return W},get state(){return V(!0,!0)},next(){for(;!c&&g=s.length)return ee("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Ze=aBs(s.charCodeAt(g));if(Ze===-1)return ee("Invalid character in VLQ"),-1;Ee=(Ze&32)!==0,Te=Te|(Ze&31)<>1,Te=-Te):Te=Te>>1,Te}}function Ftn(s,c){return s===c||s.generatedLine===c.generatedLine&&s.generatedCharacter===c.generatedCharacter&&s.sourceIndex===c.sourceIndex&&s.sourceLine===c.sourceLine&&s.sourceCharacter===c.sourceCharacter&&s.nameIndex===c.nameIndex}function ROt(s){return s.sourceIndex!==void 0&&s.sourceLine!==void 0&&s.sourceCharacter!==void 0}function oBs(s){return s>=0&&s<26?65+s:s>=26&&s<52?97+s-26:s>=52&&s<62?48+s-52:s===62?43:s===63?47:pe.fail(`${s}: not a base64 value`)}function aBs(s){return s>=65&&s<=90?s-65:s>=97&&s<=122?s-97+26:s>=48&&s<=57?s-48+52:s===43?62:s===47?63:-1}function Ztn(s){return s.sourceIndex!==void 0&&s.sourcePosition!==void 0}function Ltn(s,c){return s.generatedPosition===c.generatedPosition&&s.sourceIndex===c.sourceIndex&&s.sourcePosition===c.sourcePosition}function cBs(s,c){return pe.assert(s.sourceIndex===c.sourceIndex),Zt(s.sourcePosition,c.sourcePosition)}function lBs(s,c){return Zt(s.generatedPosition,c.generatedPosition)}function uBs(s){return s.sourcePosition}function gBs(s){return s.generatedPosition}function NOt(s,c,g){let d=Mo(g),h=c.sourceRoot?Xc(c.sourceRoot,d):d,_=Xc(c.file,d),S=s.getSourceFileLike(_),R=c.sources.map(Ne=>Xc(Ne,h)),T=new Map(R.map((Ne,Te)=>[s.getCanonicalFileName(Ne),Te])),W,V,M;return{getSourcePosition:Ee,getGeneratedPosition:_e};function ee(Ne){let Te=S!==void 0?th(S,Ne.generatedLine,Ne.generatedCharacter,!0):-1,Ze,We;if(ROt(Ne)){let Ue=s.getSourceFileLike(R[Ne.sourceIndex]);Ze=c.sources[Ne.sourceIndex],We=Ue!==void 0?th(Ue,Ne.sourceLine,Ne.sourceCharacter,!0):-1}return{generatedPosition:Te,source:Ze,sourceIndex:Ne.sourceIndex,sourcePosition:We,nameIndex:Ne.nameIndex}}function re(){if(W===void 0){let Ne=Fet(c.mappings),Te=Do(Ne,ee);Ne.error!==void 0?(s.log&&s.log(`Encountered error while decoding sourcemap: ${Ne.error}`),W=E):W=Te}return W}function ge(Ne){if(M===void 0){let Te=[];for(let Ze of re()){if(!Ztn(Ze))continue;let We=Te[Ze.sourceIndex];We||(Te[Ze.sourceIndex]=We=[]),We.push(Ze)}M=Te.map(Ze=>cl(Ze,cBs,Ltn))}return M[Ne]}function Ie(){if(V===void 0){let Ne=[];for(let Te of re())Ne.push(Te);V=cl(Ne,lBs,Ltn)}return V}function _e(Ne){let Te=T.get(s.getCanonicalFileName(Ne.fileName));if(Te===void 0)return Ne;let Ze=ge(Te);if(!jt(Ze))return Ne;let We=Sg(Ze,Ne.pos,uBs,Zt);We<0&&(We=~We);let Ue=Ze[We];return Ue===void 0||Ue.sourceIndex!==Te?Ne:{fileName:_,pos:Ue.generatedPosition}}function Ee(Ne){let Te=Ie();if(!jt(Te))return Ne;let Ze=Sg(Te,Ne.pos,gBs,Zt);Ze<0&&(Ze=~Ze);let We=Te[Ze];return We===void 0||!Ztn(We)?Ne:{fileName:R[We.sourceIndex],pos:We.sourcePosition}}}var Zet={getSourcePosition:Fl,getGeneratedPosition:Fl};function Wy(s){return s=Dd(s),s?rd(s):0}function Vtn(s){return!s||!yN(s)&&!mv(s)?!1:jt(s.elements,Ptn)}function Ptn(s){return lv(s.propertyName||s.name)}function rR(s,c){return g;function g(h){return h.kind===308?c(h):d(h)}function d(h){return s.factory.createBundle(At(h.sourceFiles,c))}}function DOt(s){return!!JJ(s)}function M9e(s){if(JJ(s))return!0;let c=s.importClause&&s.importClause.namedBindings;if(!c||!yN(c))return!1;let g=0;for(let d of c.elements)Ptn(d)&&g++;return g>0&&g!==c.elements.length||!!(c.elements.length-g)&&h3(s)}function Let(s){return!M9e(s)&&(h3(s)||!!s.importClause&&yN(s.importClause.namedBindings)&&Vtn(s.importClause.namedBindings))}function Vet(s,c){let g=s.getEmitResolver(),d=s.getCompilerOptions(),h=[],_=new ABs,S=[],R=new Map,T=new Set,W,V=!1,M,ee=!1,re=!1,ge=!1;for(let Ne of c.statements)switch(Ne.kind){case 273:h.push(Ne),!re&&M9e(Ne)&&(re=!0),!ge&&Let(Ne)&&(ge=!0);break;case 272:Ne.moduleReference.kind===284&&h.push(Ne);break;case 279:if(Ne.moduleSpecifier)if(!Ne.exportClause)h.push(Ne),ee=!0;else if(h.push(Ne),mv(Ne.exportClause))_e(Ne),ge||(ge=Vtn(Ne.exportClause));else{let Te=Ne.exportClause.name,Ze=HD(Te);R.get(Ze)||(vde(S,Wy(Ne),Te),R.set(Ze,!0),W=Ft(W,Te)),re=!0}else _e(Ne);break;case 278:Ne.isExportEquals&&!M&&(M=Ne);break;case 244:if(Ga(Ne,32))for(let Te of Ne.declarationList.declarations)W=Wtn(Te,R,W,S);break;case 263:Ga(Ne,32)&&Ee(Ne,void 0,Ga(Ne,2048));break;case 264:if(Ga(Ne,32))if(Ga(Ne,2048))V||(vde(S,Wy(Ne),s.factory.getDeclarationName(Ne)),V=!0);else{let Te=Ne.name;Te&&!R.get(Vo(Te))&&(vde(S,Wy(Ne),Te),R.set(Vo(Te),!0),W=Ft(W,Te))}break}let Ie=N$e(s.factory,s.getEmitHelperFactory(),c,d,ee,re,ge);return Ie&&h.unshift(Ie),{externalImports:h,exportSpecifiers:_,exportEquals:M,hasExportStarsToExportValues:ee,exportedBindings:S,exportedNames:W,exportedFunctions:T,externalHelpersImportDeclaration:Ie};function _e(Ne){for(let Te of Ma(Ne.exportClause,mv).elements){let Ze=HD(Te.name);if(!R.get(Ze)){let We=Te.propertyName||Te.name;if(We.kind!==11){Ne.moduleSpecifier||_.add(We,Te);let Ue=g.getReferencedImportDeclaration(We)||g.getReferencedValueDeclaration(We);if(Ue){if(Ue.kind===263){Ee(Ue,Te.name,lv(Te.name));continue}vde(S,Wy(Ue),Te.name)}}R.set(Ze,!0),W=Ft(W,Te.name)}}}function Ee(Ne,Te,Ze){if(T.add(Dd(Ne,ih)),Ze)V||(vde(S,Wy(Ne),Te??s.factory.getDeclarationName(Ne)),V=!0);else{Te??(Te=Ne.name);let We=HD(Te);R.get(We)||(vde(S,Wy(Ne),Te),R.set(We,!0))}}}function Wtn(s,c,g,d){if(Nu(s.name))for(let h of s.name.elements)yp(h)||(g=Wtn(h,c,g,d));else if(!kp(s.name)){let h=Vo(s.name);c.get(h)||(c.set(h,!0),g=Ft(g,s.name),VF(s.name)&&vde(d,Wy(s),s.name))}return g}function vde(s,c,g){let d=s[c];return d?d.push(g):s[c]=d=[g],d}var xie=class Fce{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(Fce.toKey(c))}get(c){return this._map.get(Fce.toKey(c))}set(c,g){return this._map.set(Fce.toKey(c),g),this}delete(c){var g;return((g=this._map)==null?void 0:g.delete(Fce.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(TL(c)||kp(c)){let g=c.emitNode.autoGenerate;if((g.flags&7)===4){let d=fEe(c),h=_w(d)&&d!==c?Fce.toKey(d):`(generated@${rd(d)})`;return M3(!1,g.prefix,h,g.suffix,Fce.toKey)}else{let d=`(auto@${g.id})`;return M3(!1,g.prefix,d,g.suffix,Fce.toKey)}}return p(c)?Vo(c).slice(1):Vo(c)}},ABs=class extends xie{add(s,c){let g=this.get(s);return g?g.push(c):this.set(s,g=[c]),g}remove(s,c){let g=this.get(s);g&&(ef(g,c),g.length||this.delete(s))}};function lQ(s){return mA(s)||s.kind===9||v0(s.kind)||Ir(s)}function BN(s){return!Ir(s)&&lQ(s)}function Bde(s){return s>=65&&s<=79}function wde(s){switch(s){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function H9e(s){if(!VC(s))return;let c=QA(s.expression);return Dy(c)?c:void 0}function Otn(s,c,g){for(let d=c;dpBs(d,c,g))}function dBs(s){return fBs(s)||fl(s)}function Q9e(s){return Me(s.members,dBs)}function pBs(s,c,g){return pi(s)&&(!!s.initializer||!c)&&zh(s)===g}function fBs(s){return pi(s)&&zh(s)}function FEe(s){return s.kind===173&&s.initializer!==void 0}function kOt(s){return!cg(s)&&(NL(s)||t0(s))&&p(s.name)}function xOt(s){let c;if(s){let g=s.parameters,d=g.length>0&&SF(g[0]),h=d?1:0,_=d?g.length-1:g.length;for(let S=0;S<_;S++){let R=g[S+h];(c||p1(R))&&(c||(c=new Array(_)),c[S]=Rb(R))}}return c}function Wet(s,c){let g=Rb(s),d=c?xOt(lN(s)):void 0;if(!(!jt(g)&&!jt(d)))return{decorators:g,parameters:d}}function X9e(s,c,g){switch(s.kind){case 178:case 179:return g?IBs(s,c,!0):Mtn(s,!1);case 175:return Mtn(s,g);case 173:return hBs(s);default:return}}function IBs(s,c,g){if(!s.body)return;let{firstAccessor:d,secondAccessor:h,getAccessor:_,setAccessor:S}=BP(c.members,s),R=p1(d)?d:h&&p1(h)?h:void 0;if(!R||s!==R)return;let T=Rb(R),W=g?xOt(S):void 0;if(!(!jt(T)&&!jt(W)))return{decorators:T,parameters:W,getDecorators:_&&Rb(_),setDecorators:S&&Rb(S)}}function Mtn(s,c){if(!s.body)return;let g=Rb(s),d=c?xOt(s):void 0;if(!(!jt(g)&&!jt(d)))return{decorators:g,parameters:d}}function hBs(s){let c=Rb(s);if(jt(c))return{decorators:c}}function mBs(s,c){for(;s;){let g=c(s);if(g!==void 0)return g;s=s.previous}}function GOt(s){return{data:s}}function Oet(s,c){var g,d;return TL(c)?(g=s?.generatedIdentifiers)==null?void 0:g.get(fEe(c)):(d=s?.identifiers)==null?void 0:d.get(c.escapedText)}function wU(s,c,g){TL(c)?(s.generatedIdentifiers??(s.generatedIdentifiers=new Map),s.generatedIdentifiers.set(fEe(c),g)):(s.identifiers??(s.identifiers=new Map),s.identifiers.set(c.escapedText,g))}function FOt(s,c){return mBs(s,g=>Oet(g.privateEnv,c))}function CBs(s){return!s.initializer&&Ir(s.name)}function ZEe(s){return ue(s,CBs)}function Nz(s,c){if(!s||!Zg(s)||!gne(s.text,c))return s;let g=fN(s.text,HEe(s.text,c));return g!==s.text?ua(gn(me.createStringLiteral(g,s.singleQuote),s),s):s}var ZOt=(s=>(s[s.All=0]="All",s[s.ObjectRest=1]="ObjectRest",s))(ZOt||{});function TU(s,c,g,d,h,_){let S=s,R;if(Dx(s))for(R=s.right;QZe(s.left)||nbe(s.left);)if(Dx(R))S=s=R,R=s.right;else return pe.checkDefined(Mr(R,c,un));let T,W={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:V,emitBindingOrAssignment:M,createArrayBindingOrAssignmentPattern:ee=>wBs(g.factory,ee),createObjectBindingOrAssignmentPattern:ee=>RBs(g.factory,ee),createArrayBindingOrAssignmentElement:DBs,visitor:c};if(R&&(R=Mr(R,c,un),pe.assert(R),Ir(R)&&LOt(s,R.escapedText)||VOt(s)?R=Dz(W,R,!1,S):h?R=Dz(W,R,!0,S):sp(s)&&(S=R)),Tde(W,s,R,S,Dx(s)),R&&h){if(!jt(T))return R;T.push(R)}return g.factory.inlineExpressions(T)||g.factory.createOmittedExpression();function V(ee){T=Ft(T,ee)}function M(ee,re,ge,Ie){pe.assertNode(ee,_?Ir:un);let _e=_?_(ee,re,ge):gn(g.factory.createAssignment(pe.checkDefined(Mr(ee,c,un)),re),ge);_e.original=Ie,V(_e)}}function LOt(s,c){let g=ZP(s);return yJ(g)?_Bs(g,c):Ir(g)?g.escapedText===c:!1}function _Bs(s,c){let g=Eie(s);for(let d of g)if(LOt(d,c))return!0;return!1}function VOt(s){let c=l9e(s);if(c&&Un(c)&&!wL(c.expression))return!0;let g=ZP(s);return!!g&&yJ(g)&&yBs(g)}function yBs(s){return!!F(Eie(s),VOt)}function uQ(s,c,g,d,h,_=!1,S){let R,T=[],W=[],V={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:_,emitExpression:M,emitBindingOrAssignment:ee,createArrayBindingOrAssignmentPattern:re=>BBs(g.factory,re),createObjectBindingOrAssignmentPattern:re=>TBs(g.factory,re),createArrayBindingOrAssignmentElement:re=>NBs(g.factory,re),visitor:c};if(nc(s)){let re=dEe(s);re&&(Ir(re)&&LOt(s,re.escapedText)||VOt(s))&&(re=Dz(V,pe.checkDefined(Mr(re,V.visitor,un)),!1,re),s=g.factory.updateVariableDeclaration(s,s.name,void 0,void 0,re))}if(Tde(V,s,h,s,S),R){let re=g.factory.createTempVariable(void 0);if(_){let ge=g.factory.inlineExpressions(R);R=void 0,ee(re,ge,void 0,void 0)}else{g.hoistVariableDeclaration(re);let ge=Ei(T);ge.pendingExpressions=Ft(ge.pendingExpressions,g.factory.createAssignment(re,ge.value)),Or(ge.pendingExpressions,R),ge.value=re}}for(let{pendingExpressions:re,name:ge,value:Ie,location:_e,original:Ee}of T){let Ne=g.factory.createVariableDeclaration(ge,void 0,void 0,re?g.factory.inlineExpressions(Ft(re,Ie)):Ie);Ne.original=Ee,gn(Ne,_e),W.push(Ne)}return W;function M(re){R=Ft(R,re)}function ee(re,ge,Ie,_e){pe.assertNode(re,RL),R&&(ge=g.factory.inlineExpressions(Ft(R,ge)),R=void 0),T.push({pendingExpressions:R,name:re,value:ge,location:Ie,original:_e})}}function Tde(s,c,g,d,h){let _=ZP(c);if(!h){let S=Mr(dEe(c),s.visitor,un);S?g?(g=SBs(s,g,S,d),!BN(S)&&yJ(_)&&(g=Dz(s,g,!0,d))):g=S:g||(g=s.context.factory.createVoidZero())}bJ(_)?bBs(s,c,_,g,d):wre(_)?EBs(s,c,_,g,d):s.emitBindingOrAssignment(_,g,d,c)}function bBs(s,c,g,d,h){let _=Eie(g),S=_.length;if(S!==1){let W=!uP(c)||S!==0;d=Dz(s,d,W,h)}let R,T;for(let W=0;W=1&&!(V.transformFlags&98304)&&!(ZP(V).transformFlags&98304)&&!Un(M))R=Ft(R,Mr(V,s.visitor,_J));else{R&&(s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g),R=void 0);let ee=vBs(s,d,M);Un(M)&&(T=Ft(T,ee.argumentExpression)),Tde(s,V,ee,V)}}}R&&s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g)}function EBs(s,c,g,d,h){let _=Eie(g),S=_.length;if(s.level<1&&s.downlevelIteration)d=Dz(s,gn(s.context.getEmitHelperFactory().createReadHelper(d,S>0&&c9e(_[S-1])?void 0:S),h),!1,h);else if(S!==1&&(s.level<1||S===0)||ue(_,yp)){let W=!uP(c)||S!==0;d=Dz(s,d,W,h)}let R,T;for(let W=0;W=1)if(V.transformFlags&65536||s.hasTransformedPriorElement&&!Htn(V)){s.hasTransformedPriorElement=!0;let M=s.context.factory.createTempVariable(void 0);s.hoistTempVariables&&s.context.hoistVariableDeclaration(M),T=Ft(T,[M,V]),R=Ft(R,s.createArrayBindingOrAssignmentElement(M))}else R=Ft(R,V);else{if(yp(V))continue;if(c9e(V)){if(W===S-1){let M=s.context.factory.createArraySliceCall(d,W);Tde(s,V,M,V)}}else{let M=s.context.factory.createElementAccessExpression(d,W);Tde(s,V,M,V)}}}if(R&&s.emitBindingOrAssignment(s.createArrayBindingOrAssignmentPattern(R),d,h,g),T)for(let[W,V]of T)Tde(s,V,W,V)}function Htn(s){let c=ZP(s);if(!c||yp(c))return!0;let g=l9e(s);if(g&&!Tw(g))return!1;let d=dEe(s);return d&&!BN(d)?!1:yJ(c)?ue(Eie(c),Htn):Ir(c)}function SBs(s,c,g,d){return c=Dz(s,c,!0,d),s.context.factory.createConditionalExpression(s.context.factory.createTypeCheck(c,"undefined"),void 0,g,void 0,c)}function vBs(s,c,g){let{factory:d}=s.context;if(Un(g)){let h=Dz(s,pe.checkDefined(Mr(g.expression,s.visitor,un)),!1,g);return s.context.factory.createElementAccessExpression(c,h)}else if(d1(g)||eQ(g)){let h=d.cloneNode(g);return s.context.factory.createElementAccessExpression(c,h)}else{let h=s.context.factory.createIdentifier(Vo(g));return s.context.factory.createPropertyAccessExpression(c,h)}}function Dz(s,c,g,d){if(Ir(c)&&g)return c;{let h=s.context.factory.createTempVariable(void 0);return s.hoistTempVariables?(s.context.hoistVariableDeclaration(h),s.emitExpression(gn(s.context.factory.createAssignment(h,c),d))):s.emitBindingOrAssignment(h,c,d,void 0),h}}function BBs(s,c){return pe.assertEachNode(c,o3),s.createArrayBindingPattern(c)}function wBs(s,c){return pe.assertEachNode(c,EJ),s.createArrayLiteralExpression(At(c,s.converters.convertToArrayAssignmentElement))}function TBs(s,c){return pe.assertEachNode(c,hg),s.createObjectBindingPattern(c)}function RBs(s,c){return pe.assertEachNode(c,gP),s.createObjectLiteralExpression(At(c,s.converters.convertToObjectAssignmentElement))}function NBs(s,c){return s.createBindingElement(void 0,void 0,c)}function DBs(s){return s}function kBs(s,c,g=s.createThis()){let d=s.createAssignment(c,g),h=s.createExpressionStatement(d),_=s.createBlock([h],!1),S=s.createClassStaticBlockDeclaration(_);return c_(S).classThis=c,S}function Rde(s){var c;if(!fl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return VC(g)&&Jm(g.expression,!0)&&Ir(g.expression.left)&&((c=s.emitNode)==null?void 0:c.classThis)===g.expression.left&&g.expression.right.kind===110}function Met(s){var c;return!!((c=s.emitNode)!=null&&c.classThis)&&jt(s.members,Rde)}function POt(s,c,g,d){if(Met(c))return c;let h=kBs(s,g,d);c.name&&Hg(h.body.statements[0],c.name);let _=s.createNodeArray([h,...c.members]);gn(_,c.members);let S=pm(c)?s.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_):s.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_);return c_(S).classThis=g,S}function J9e(s,c,g){let d=Dd(HI(g));return(pm(d)||ih(d))&&!d.name&&Ga(d,2048)?s.createStringLiteral("default"):s.createStringLiteralFromNode(c)}function Ytn(s,c,g){let{factory:d}=s;if(g!==void 0)return{assignedName:d.createStringLiteral(g),name:c};if(Tw(c)||p(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(Tw(c.expression)&&!Ir(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let h=d.getGeneratedNameForNode(c);s.hoistVariableDeclaration(h);let _=s.getEmitHelperFactory().createPropKeyHelper(c.expression),S=d.createAssignment(h,_),R=d.updateComputedPropertyName(c,S);return{assignedName:h,name:R}}function xBs(s,c,g=s.factory.createThis()){let{factory:d}=s,h=s.getEmitHelperFactory().createSetFunctionNameHelper(g,c),_=d.createExpressionStatement(h),S=d.createBlock([_],!1),R=d.createClassStaticBlockDeclaration(S);return c_(R).assignedName=c,R}function kz(s){var c;if(!fl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return VC(g)&&qD(g.expression,"___setFunctionName")&&g.expression.arguments.length>=2&&g.expression.arguments[1]===((c=s.emitNode)==null?void 0:c.assignedName)}function U9e(s){var c;return!!((c=s.emitNode)!=null&&c.assignedName)&&jt(s.members,kz)}function Het(s){return!!s.name||U9e(s)}function K9e(s,c,g,d){if(U9e(c))return c;let{factory:h}=s,_=xBs(s,g,d);c.name&&Hg(_.body.statements[0],c.name);let S=Se(c.members,Rde)+1,R=c.members.slice(0,S),T=c.members.slice(S),W=h.createNodeArray([...R,_,...T]);return gn(W,c.members),c=pm(c)?h.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,W):h.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,W),c_(c).assignedName=g,c}function Gie(s,c,g,d){if(d&&Zg(g)&&Cye(g))return c;let{factory:h}=s,_=HI(c),S=vd(_)?Ma(K9e(s,_,g),vd):s.getEmitHelperFactory().createSetFunctionNameHelper(_,g);return h.restoreOuterExpressions(c,S)}function GBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=Ytn(s,c.name,d),R=Gie(s,c.initializer,_,g);return h.updatePropertyAssignment(c,S,R)}function FBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):J9e(h,c.name,c.objectAssignmentInitializer),S=Gie(s,c.objectAssignmentInitializer,_,g);return h.updateShorthandPropertyAssignment(c,c.name,S)}function ZBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):J9e(h,c.name,c.initializer),S=Gie(s,c.initializer,_,g);return h.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,S)}function LBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):J9e(h,c.name,c.initializer),S=Gie(s,c.initializer,_,g);return h.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,S)}function VBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):J9e(h,c.name,c.initializer),S=Gie(s,c.initializer,_,g);return h.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,S)}function PBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=Ytn(s,c.name,d),R=Gie(s,c.initializer,_,g);return h.updatePropertyDeclaration(c,c.modifiers,S,c.questionToken??c.exclamationToken,c.type,R)}function WBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):J9e(h,c.left,c.right),S=Gie(s,c.right,_,g);return h.updateBinaryExpression(c,c.left,c.operatorToken,S)}function OBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):h.createStringLiteral(c.isExportEquals?"":"default"),S=Gie(s,c.expression,_,g);return h.updateExportAssignment(c,c.modifiers,S)}function m1(s,c,g,d){switch(c.kind){case 304:return GBs(s,c,g,d);case 305:return FBs(s,c,g,d);case 261:return ZBs(s,c,g,d);case 170:return LBs(s,c,g,d);case 209:return VBs(s,c,g,d);case 173:return PBs(s,c,g,d);case 227:return WBs(s,c,g,d);case 278:return OBs(s,c,g,d)}}var WOt=(s=>(s[s.LiftRestriction=0]="LiftRestriction",s[s.All=1]="All",s))(WOt||{});function Yet(s,c,g,d,h,_){let S=Mr(c.tag,g,un);pe.assert(S);let R=[void 0],T=[],W=[],V=c.template;if(_===0&&!Wye(V))return _s(c,g,s);let{factory:M}=s;if(GP(V))T.push(OOt(M,V)),W.push(MOt(M,V,d));else{T.push(OOt(M,V.head)),W.push(MOt(M,V.head,d));for(let re of V.templateSpans)T.push(OOt(M,re.literal)),W.push(MOt(M,re.literal,d)),R.push(pe.checkDefined(Mr(re.expression,g,un)))}let ee=s.getEmitHelperFactory().createTemplateObjectHelper(M.createArrayLiteralExpression(T),M.createArrayLiteralExpression(W));if(xm(d)){let re=M.createUniqueName("templateObject");h(re),R[0]=M.createLogicalOr(re,M.createAssignment(re,ee))}else R[0]=ee;return M.createCallExpression(S,void 0,R)}function OOt(s,c){return c.templateFlags&26656?s.createVoidZero():s.createStringLiteral(c.text)}function MOt(s,c,g){let d=c.rawText;if(d===void 0){pe.assertIsDefined(g,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=mF(g,c);let h=c.kind===15||c.kind===18;d=d.substring(1,d.length-(h?1:2))}return d=d.replace(/\r\n?/g,` +`),gn(s.createStringLiteral(d),c)}var MBs=!1;function HOt(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getEmitResolver(),T=s.getCompilerOptions(),W=Mg(T),V=i0(T),M=!!T.experimentalDecorators,ee=T.emitDecoratorMetadata?QOt(s):void 0,re=s.onEmitNode,ge=s.onSubstituteNode;s.onEmitNode=dS,s.onSubstituteNode=gu,s.enableSubstitution(212),s.enableSubstitution(213);let Ie,_e,Ee,Ne,Te,Ze=0,We;return Ue;function Ue(ve){return ve.kind===309?$e(ve):Ye(ve)}function $e(ve){return c.createBundle(ve.sourceFiles.map(Ye))}function Ye(ve){if(ve.isDeclarationFile)return ve;Ie=ve;let mr=Tt(ve,pr);return hN(mr,s.readEmitHelpers()),Ie=void 0,mr}function Tt(ve,mr){let ln=Ne,ni=Te;ot(ve);let Ls=mr(ve);return Ne!==ln&&(Te=ni),Ne=ln,Ls}function ot(ve){switch(ve.kind){case 308:case 270:case 269:case 242:Ne=ve,Te=void 0;break;case 264:case 263:if(Ga(ve,128))break;ve.name?fr(ve):pe.assert(ve.kind===264||Ga(ve,2048));break}}function Qe(ve){return Tt(ve,mt)}function mt(ve){return ve.transformFlags&1?dt(ve):ve}function ht(ve){return Tt(ve,_t)}function _t(ve){switch(ve.kind){case 273:case 272:case 278:case 279:return Lt(ve);default:return mt(ve)}}function Rt(ve){let mr=$l(ve);if(mr===ve||Cf(ve))return!1;if(!mr||mr.kind!==ve.kind)return!0;switch(ve.kind){case 273:if(pe.assertNode(mr,Mf),ve.importClause!==mr.importClause||ve.attributes!==mr.attributes)return!0;break;case 272:if(pe.assertNode(mr,km),ve.name!==mr.name||ve.isTypeOnly!==mr.isTypeOnly||ve.moduleReference!==mr.moduleReference&&(fC(ve.moduleReference)||fC(mr.moduleReference)))return!0;break;case 279:if(pe.assertNode(mr,Gh),ve.exportClause!==mr.exportClause||ve.attributes!==mr.attributes)return!0;break}return!1}function Lt(ve){if(Rt(ve))return ve.transformFlags&1?_s(ve,Qe,s):ve;switch(ve.kind){case 273:return ao(ve);case 272:return gs(ve);case 278:return wn(ve);case 279:return Mn(ve);default:pe.fail("Unhandled ellided statement")}}function Ke(ve){return Tt(ve,Pt)}function Pt(ve){if(!(ve.kind===279||ve.kind===273||ve.kind===274||ve.kind===272&&ve.moduleReference.kind===284))return ve.transformFlags&1||Ga(ve,32)?dt(ve):ve}function _r(ve){return mr=>Tt(mr,ln=>Gt(ln,ve))}function Gt(ve,mr){switch(ve.kind){case 177:return hn(ve);case 173:return yr(ve,mr);case 178:return Qu(ve,mr);case 179:return Tg(ve,mr);case 175:return Oa(ve,mr);case 176:return _s(ve,Qe,s);case 241:return ve;case 182:return;default:return pe.failBadSyntaxKind(ve)}}function nt(ve){return mr=>Tt(mr,ln=>Dt(ln,ve))}function Dt(ve,mr){switch(ve.kind){case 304:case 305:case 306:return Qe(ve);case 178:return Qu(ve,mr);case 179:return Tg(ve,mr);case 175:return Oa(ve,mr);default:return pe.failBadSyntaxKind(ve)}}function tr(ve){return So(ve)?void 0:Qe(ve)}function ur(ve){return Ig(ve)?void 0:Qe(ve)}function Gr(ve){if(!So(ve)&&!(HY(ve.kind)&28895)&&!(_e&&ve.kind===95))return ve}function dt(ve){if(Lc(ve)&&Ga(ve,128))return c.createNotEmittedStatement(ve);switch(ve.kind){case 95:case 90:return _e?void 0:ve;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 189:case 190:case 191:case 192:case 188:case 183:case 169:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 186:case 185:case 187:case 184:case 193:case 194:case 195:case 197:case 198:case 199:case 200:case 201:case 202:case 182:return;case 266:return c.createNotEmittedStatement(ve);case 271:return;case 265:return c.createNotEmittedStatement(ve);case 264:return Br(ve);case 232:return mn(ve);case 299:return ba(ve);case 234:return Wo(ve);case 211:return st(ve);case 177:case 173:case 175:case 178:case 179:case 176:return pe.fail("Class and object literal elements must be visited with their respective visitors");case 263:return Cs(ve);case 219:return Tu(ve);case 220:return Pr(ve);case 170:return Pn(ve);case 218:return nr(ve);case 217:case 235:return Fr(ve);case 239:return Dn(ve);case 214:return hr(ve);case 215:return Sn(ve);case 216:return Ni(ve);case 236:return Kr(ve);case 267:return ds(ve);case 244:return pt(ve);case 261:return it(ve);case 268:return Ot(ve);case 272:return gs(ve);case 286:return Gi(ve);case 287:return nn(ve);default:return _s(ve,Qe,s)}}function pr(ve){let mr=a_(T,"alwaysStrict")&&!(xm(ve)&&V>=5)&&!Zu(ve);return c.updateSourceFile(ve,Det(ve.statements,ht,s,0,mr))}function st(ve){return c.updateObjectLiteralExpression(ve,Ws(ve.properties,nt(ve),yw))}function ir(ve){let mr=0;jt(Pet(ve,!0,!0))&&(mr|=1);let ln=BB(ve);return ln&&HI(ln.expression).kind!==106&&(mr|=64),Rx(M,ve)&&(mr|=2),HJ(M,ve)&&(mr|=4),fs(ve)?mr|=8:gg(ve)?mr|=32:mc(ve)&&(mr|=16),mr}function zt(ve){return!!(ve.transformFlags&8192)}function Ht(ve){return p1(ve)||jt(ve.typeParameters)||jt(ve.heritageClauses,zt)||jt(ve.members,zt)}function Br(ve){let mr=ir(ve),ln=W<=1&&!!(mr&7);if(!Ht(ve)&&!Rx(M,ve)&&!fs(ve))return c.updateClassDeclaration(ve,Ws(ve.modifiers,Gr,Ig),ve.name,void 0,Ws(ve.heritageClauses,Qe,h1),Ws(ve.members,_r(ve),PI));ln&&s.startLexicalEnvironment();let ni=ln||mr&8,Ls=ni?Ws(ve.modifiers,ur,dp):Ws(ve.modifiers,Qe,dp);mr&2&&(Ls=Zi(Ls,ve));let Go=ni&&!ve.name||mr&4||mr&1?ve.name??c.getGeneratedNameForNode(ve):ve.name,Ss=c.updateClassDeclaration(ve,Ls,Go,void 0,Ws(ve.heritageClauses,Qe,h1),jn(ve)),Uc=tA(ve);mr&1&&(Uc|=64),ti(Ss,Uc);let rl;if(ln){let xd=[Ss],Lg=QL(Yu(Ie.text,ve.members.end),20),yf=c.getInternalName(ve),rm=c.createPartiallyEmittedExpression(yf);AU(rm,Lg.end),ti(rm,3072);let _h=c.createReturnStatement(rm);iz(_h,Lg.pos),ti(_h,3840),xd.push(_h),Sw(xd,s.endLexicalEnvironment());let Gp=c.createImmediatelyInvokedArrowFunction(xd);oie(Gp,1);let oh=c.createVariableDeclaration(c.getLocalName(ve,!1,!1),void 0,void 0,Gp);ua(oh,ve);let b1=c.createVariableStatement(void 0,c.createVariableDeclarationList([oh],1));ua(b1,ve),hh(b1,ve),Hg(b1,jD(ve)),N0(b1),rl=b1}else rl=Ss;if(ni){if(mr&8)return[rl,Ag(ve)];if(mr&32)return[rl,c.createExportDefault(c.getLocalName(ve,!1,!0))];if(mr&16)return[rl,c.createExternalModuleExport(c.getDeclarationName(ve,!1,!0))]}return rl}function mn(ve){let mr=Ws(ve.modifiers,ur,dp);return Rx(M,ve)&&(mr=Zi(mr,ve)),c.updateClassExpression(ve,mr,ve.name,void 0,Ws(ve.heritageClauses,Qe,h1),jn(ve))}function jn(ve){let mr=Ws(ve.members,_r(ve),PI),ln,ni=lN(ve),Ls=ni&&Me(ni.parameters,Za=>Ve(Za,ni));if(Ls)for(let Za of Ls){let Go=c.createPropertyDeclaration(void 0,Za.name,void 0,void 0,void 0);ua(Go,Za),ln=Ft(ln,Go)}return ln?(ln=Or(ln,mr),gn(c.createNodeArray(ln),ve.members)):mr}function Zi(ve,mr){let ln=An(mr,mr);if(jt(ln)){let ni=[];Or(ni,t_(ve,pEe)),Or(ni,Me(ve,So)),Or(ni,ln),Or(ni,Me(cp(ve,pEe),Ig)),ve=gn(c.createNodeArray(ni),ve)}return ve}function Ns(ve,mr,ln){if(xa(ln)&&mye(M,mr,ln)){let ni=An(mr,ln);if(jt(ni)){let Ls=[];Or(Ls,Me(ve,So)),Or(Ls,ni),Or(Ls,Me(ve,Ig)),ve=gn(c.createNodeArray(Ls),ve)}}return ve}function An(ve,mr){if(M)return MBs?ks(ve,mr):si(ve,mr)}function si(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=g().createMetadataHelper("design:type",ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(Zn(ve)){let ni=g().createMetadataHelper("design:paramtypes",ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(su(ve)){let ni=g().createMetadataHelper("design:returntype",ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve));ln=Ft(ln,c.createDecorator(ni))}return ln}}function ks(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(Zn(ve)){let ni=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(su(ve)){let ni=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve)));ln=Ft(ln,ni)}if(ln){let ni=g().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(ln,!0));return[c.createDecorator(ni)]}}}function Ic(ve){let mr=ve.kind;return mr===175||mr===178||mr===179||mr===173}function su(ve){return ve.kind===175}function Zn(ve){switch(ve.kind){case 264:case 232:return lN(ve)!==void 0;case 175:case 178:case 179:return!0}return!1}function ya(ve,mr){let ln=ve.name;return p(ln)?c.createIdentifier(""):Un(ln)?mr&&!BN(ln.expression)?c.getGeneratedNameForNode(ln):ln.expression:Ir(ln)?c.createStringLiteral(Vo(ln)):c.cloneNode(ln)}function Gl(ve){let mr=ve.name;if(M&&Un(mr)&&p1(ve)){let ln=Mr(mr.expression,Qe,un);pe.assert(ln);let ni=o2(ln);if(!BN(ni)){let Ls=c.getGeneratedNameForNode(mr);return S(Ls),c.updateComputedPropertyName(mr,c.createAssignment(Ls,ln))}}return pe.checkDefined(Mr(mr,Qe,VI))}function ba(ve){if(ve.token!==119)return _s(ve,Qe,s)}function Wo(ve){return c.updateExpressionWithTypeArguments(ve,pe.checkDefined(Mr(ve.expression,Qe,D_)),void 0)}function hc(ve){return!sf(ve.body)}function yr(ve,mr){let ln=ve.flags&33554432||Ga(ve,64);if(ln&&!(M&&p1(ve)))return;let ni=xa(mr)?ln?Ws(ve.modifiers,ur,dp):Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ni=Ns(ni,ve,mr),ln?c.updatePropertyDeclaration(ve,Nn(ni,c.createModifiersFromModifierFlags(128)),pe.checkDefined(Mr(ve.name,Qe,VI)),void 0,void 0,void 0):c.updatePropertyDeclaration(ve,ni,Gl(ve),void 0,void 0,Mr(ve.initializer,Qe,un))}function hn(ve){if(hc(ve))return c.updateConstructorDeclaration(ve,void 0,vI(ve.parameters,Qe,s),lo(ve.body,ve))}function Oi(ve,mr,ln,ni,Ls,Za){let Go=ni[Ls],Ss=mr[Go];if(Or(ve,Ws(mr,Qe,Lc,ln,Go-ln)),mU(Ss)){let Uc=[];Oi(Uc,Ss.tryBlock.statements,0,ni,Ls+1,Za);let rl=c.createNodeArray(Uc);gn(rl,Ss.tryBlock.statements),ve.push(c.updateTryStatement(Ss,c.updateBlock(Ss.tryBlock,Uc),Mr(Ss.catchClause,Qe,iQ),Mr(Ss.finallyBlock,Qe,$u)))}else Or(ve,Ws(mr,Qe,Lc,Go,1)),Or(ve,Za);Or(ve,Ws(mr,Qe,Lc,Go+1))}function lo(ve,mr){let ln=mr&&Me(mr.parameters,Uc=>Ve(Uc,mr));if(!jt(ln))return uS(ve,Qe,s);let ni=[];h();let Ls=c.copyPrologue(ve.statements,ni,!1,Qe),Za=Y9e(ve.statements,Ls),Go=Xt(ln,pa);Za.length?Oi(ni,ve.statements,Ls,Za,0,Go):(Or(ni,Go),Or(ni,Ws(ve.statements,Qe,Lc,Ls))),ni=c.mergeLexicalEnvironment(ni,_());let Ss=c.createBlock(gn(c.createNodeArray(ni),ve.statements),!0);return gn(Ss,ve),ua(Ss,ve),Ss}function pa(ve){let mr=ve.name;if(!Ir(mr))return;let ln=XA(gn(c.cloneNode(mr),mr),mr.parent);ti(ln,3168);let ni=XA(gn(c.cloneNode(mr),mr),mr.parent);return ti(ni,3072),N0(pz(gn(ua(c.createExpressionStatement(c.createAssignment(gn(c.createPropertyAccessExpression(c.createThis(),ln),ve.name),ni)),ve),KD(ve,-1))))}function Oa(ve,mr){if(!(ve.transformFlags&1))return ve;if(!hc(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateMethodDeclaration(ve,ln,ve.asteriskToken,Gl(ve),void 0,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s))}function tl(ve){return!(sf(ve.body)&&Ga(ve,64))}function Qu(ve,mr){if(!(ve.transformFlags&1))return ve;if(!tl(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateGetAccessorDeclaration(ve,ln,Gl(ve),vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([]))}function Tg(ve,mr){if(!(ve.transformFlags&1))return ve;if(!tl(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateSetAccessorDeclaration(ve,ln,Gl(ve),vI(ve.parameters,Qe,s),uS(ve.body,Qe,s)||c.createBlock([]))}function Cs(ve){if(!hc(ve))return c.createNotEmittedStatement(ve);let mr=c.updateFunctionDeclaration(ve,Ws(ve.modifiers,Gr,Ig),ve.asteriskToken,ve.name,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([]));if(fs(ve)){let ln=[mr];return _u(ln,ve),ln}return mr}function Tu(ve){return hc(ve)?c.updateFunctionExpression(ve,Ws(ve.modifiers,Gr,Ig),ve.asteriskToken,ve.name,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([])):c.createOmittedExpression()}function Pr(ve){return c.updateArrowFunction(ve,Ws(ve.modifiers,Gr,Ig),void 0,vI(ve.parameters,Qe,s),void 0,ve.equalsGreaterThanToken,uS(ve.body,Qe,s))}function Pn(ve){if(SF(ve))return;let mr=c.updateParameterDeclaration(ve,Ws(ve.modifiers,ln=>So(ln)?Qe(ln):void 0,dp),ve.dotDotDotToken,pe.checkDefined(Mr(ve.name,Qe,RL)),void 0,void 0,Mr(ve.initializer,Qe,un));return mr!==ve&&(hh(mr,ve),gn(mr,Av(ve)),Hg(mr,Av(ve)),ti(mr.name,64)),mr}function pt(ve){if(fs(ve)){let mr=iU(ve.declarationList);return mr.length===0?void 0:gn(c.createExpressionStatement(c.inlineExpressions(At(mr,on))),ve)}else return _s(ve,Qe,s)}function on(ve){let mr=ve.name;return Nu(mr)?TU(ve,Qe,s,0,!1,AI):gn(c.createAssignment(pp(mr),pe.checkDefined(Mr(ve.initializer,Qe,un))),ve)}function it(ve){let mr=c.updateVariableDeclaration(ve,pe.checkDefined(Mr(ve.name,Qe,RL)),void 0,void 0,Mr(ve.initializer,Qe,un));return ve.type&&OLe(mr.name,ve.type),mr}function nr(ve){let mr=HI(ve.expression,-55);if(Ed(mr)||Qg(mr)){let ln=Mr(ve.expression,Qe,un);return pe.assert(ln),c.createPartiallyEmittedExpression(ln,ve)}return _s(ve,Qe,s)}function Fr(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Kr(ve){let mr=Mr(ve.expression,Qe,D_);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Dn(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function hr(ve){return c.updateCallExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Ws(ve.arguments,Qe,un))}function Sn(ve){return c.updateNewExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Ws(ve.arguments,Qe,un))}function Ni(ve){return c.updateTaggedTemplateExpression(ve,pe.checkDefined(Mr(ve.tag,Qe,un)),void 0,pe.checkDefined(Mr(ve.template,Qe,AP)))}function Gi(ve){return c.updateJsxSelfClosingElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,kL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,nQ)))}function nn(ve){return c.updateJsxOpeningElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,kL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,nQ)))}function En(ve){return!VA(ve)||Fb(T)}function ds(ve){if(!En(ve))return c.createNotEmittedStatement(ve);let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=Dl(ve),Za=yu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let rl=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(rl,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,Mt(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(kB(Uc,void 0),x3(Uc,void 0)),gn(Uc,ve),Gw(Uc,ln),mr.push(Uc),mr}function Mt(ve,mr){let ln=Ee;Ee=mr;let ni=[];d();let Ls=At(ve.members,cn);return Sw(ni,_()),Or(ni,Ls),Ee=ln,c.createBlock(gn(c.createNodeArray(ni),ve.members),!0)}function cn(ve){let mr=ya(ve,!1),ln=R.getEnumMemberValue(ve),ni=Bt(ve,ln?.value),Ls=c.createAssignment(c.createElementAccessExpression(Ee,mr),ni),Za=typeof ln?.value=="string"||ln?.isSyntacticallyString?Ls:c.createAssignment(c.createElementAccessExpression(Ee,Ls),mr);return gn(c.createExpressionStatement(gn(Za,ve)),ve)}function Bt(ve,mr){return mr!==void 0?typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr):(tm(),ve.initializer?pe.checkDefined(Mr(ve.initializer,Qe,un)):c.createVoidZero())}function xe(ve){let mr=$l(ve,xh);return mr?Ret(mr,Fb(T)):!0}function fr(ve){Te||(Te=new Map);let mr=In(ve);Te.has(mr)||Te.set(mr,ve)}function Je(ve){if(Te){let mr=In(ve);return Te.get(mr)===ve}return!0}function In(ve){return pe.assertNode(ve.name,Ir),ve.name.escapedText}function Hn(ve,mr){let ln=c.createVariableDeclaration(c.getLocalName(mr,!1,!0)),ni=Ne.kind===308?0:1,Ls=c.createVariableStatement(Ws(mr.modifiers,Gr,Ig),c.createVariableDeclarationList([ln],ni));return ua(ln,mr),kB(ln,void 0),x3(ln,void 0),ua(Ls,mr),fr(mr),Je(mr)?(mr.kind===267?Hg(Ls.declarationList,mr):Hg(Ls,mr),hh(Ls,mr),Gw(Ls,2048),ve.push(Ls),!0):!1}function Ot(ve){if(!xe(ve))return c.createNotEmittedStatement(ve);pe.assertNode(ve.name,Ir,"A TypeScript namespace should have an Identifier name."),jp();let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=Dl(ve),Za=yu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let rl=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(rl,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,$r(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(kB(Uc,void 0),x3(Uc,void 0)),gn(Uc,ve),Gw(Uc,ln),mr.push(Uc),mr}function $r(ve,mr){let ln=Ee,ni=_e,Ls=Te;Ee=mr,_e=ve,Te=void 0;let Za=[];d();let Go,Ss;if(ve.body)if(ve.body.kind===269)Tt(ve.body,rl=>Or(Za,Ws(rl.statements,Ke,Lc))),Go=ve.body.statements,Ss=ve.body;else{let rl=Ot(ve.body);rl&&(Ki(rl)?Or(Za,rl):Za.push(rl));let xd=ri(ve).body;Go=KD(xd.statements,-1)}Sw(Za,_()),Ee=ln,_e=ni,Te=Ls;let Uc=c.createBlock(gn(c.createNodeArray(Za),Go),!0);return gn(Uc,Ss),(!ve.body||ve.body.kind!==269)&&ti(Uc,tA(Uc)|3072),Uc}function ri(ve){if(ve.body.kind===268)return ri(ve.body)||ve.body}function ao(ve){if(!ve.importClause)return ve;if(ve.importClause.isTypeOnly)return;let mr=Mr(ve.importClause,Bs,Vw);return mr?c.updateImportDeclaration(ve,void 0,mr,ve.moduleSpecifier,ve.attributes):void 0}function Bs(ve){pe.assert(ve.phaseModifier!==156);let mr=QI(ve)?ve.name:void 0,ln=Mr(ve.namedBindings,Ys,wx);return mr||ln?c.updateImportClause(ve,ve.phaseModifier,mr,ln):void 0}function Ys(ve){if(ve.kind===275)return QI(ve)?ve:void 0;{let mr=T.verbatimModuleSyntax,ln=Ws(ve.elements,tn,uy);return mr||jt(ln)?c.updateNamedImports(ve,ln):void 0}}function tn(ve){return!ve.isTypeOnly&&QI(ve)?ve:void 0}function wn(ve){return T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve)?_s(ve,Qe,s):void 0}function Mn(ve){if(ve.isTypeOnly)return;if(!ve.exportClause||tk(ve.exportClause))return c.updateExportDeclaration(ve,ve.modifiers,ve.isTypeOnly,ve.exportClause,ve.moduleSpecifier,ve.attributes);let mr=!!T.verbatimModuleSyntax,ln=Mr(ve.exportClause,ni=>Wi(ni,mr),bre);return ln?c.updateExportDeclaration(ve,void 0,ve.isTypeOnly,ln,ve.moduleSpecifier,ve.attributes):void 0}function ci(ve,mr){let ln=Ws(ve.elements,Vn,R0);return mr||jt(ln)?c.updateNamedExports(ve,ln):void 0}function es(ve){return c.updateNamespaceExport(ve,pe.checkDefined(Mr(ve.name,Qe,Ir)))}function Wi(ve,mr){return tk(ve)?es(ve):ci(ve,mr)}function Vn(ve){return!ve.isTypeOnly&&(T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve))?ve:void 0}function Ui(ve){return QI(ve)||!xm(Ie)&&R.isTopLevelValueImportEqualsWithEntityName(ve)}function gs(ve){if(ve.isTypeOnly)return;if(LL(ve))return QI(ve)?_s(ve,Qe,s):void 0;if(!Ui(ve))return;let mr=lEe(c,ve.moduleReference);return ti(mr,7168),mc(ve)||!fs(ve)?ua(gn(c.createVariableStatement(Ws(ve.modifiers,Gr,Ig),c.createVariableDeclarationList([ua(c.createVariableDeclaration(ve.name,void 0,void 0,mr),ve)])),ve),ve):ua(wI(ve.name,mr,ve),ve)}function fs(ve){return _e!==void 0&&Ga(ve,32)}function bi(ve){return _e===void 0&&Ga(ve,32)}function mc(ve){return bi(ve)&&!Ga(ve,2048)}function gg(ve){return bi(ve)&&Ga(ve,2048)}function Ag(ve){let mr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0),c.getLocalName(ve));Hg(mr,Gy(ve.name?ve.name.pos:ve.pos,ve.end));let ln=c.createExpressionStatement(mr);return Hg(ln,Gy(-1,ve.end)),ln}function _u(ve,mr){ve.push(Ag(mr))}function wI(ve,mr,ln){return gn(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Ee,ve,!1,!0),mr)),ln)}function AI(ve,mr,ln){return gn(c.createAssignment(pp(ve),mr),ln)}function pp(ve){return c.getNamespaceMemberName(Ee,ve,!1,!0)}function Dl(ve){let mr=c.getGeneratedNameForNode(ve);return Hg(mr,ve.name),mr}function yu(ve){return c.getGeneratedNameForNode(ve)}function tm(){Ze&8||(Ze|=8,s.enableSubstitution(80))}function jp(){Ze&2||(Ze|=2,s.enableSubstitution(80),s.enableSubstitution(305),s.enableEmitNotification(268))}function Xg(ve){return Dd(ve).kind===268}function sh(ve){return Dd(ve).kind===267}function dS(ve,mr,ln){let ni=We,Ls=Ie;ll(mr)&&(Ie=mr),Ze&2&&Xg(mr)&&(We|=2),Ze&8&&sh(mr)&&(We|=8),re(ve,mr,ln),We=ni,Ie=Ls}function gu(ve,mr){return mr=ge(ve,mr),ve===1?KA(mr):a0(mr)?bg(mr):mr}function bg(ve){if(Ze&2){let mr=ve.name,ln=oi(mr);if(ln){if(ve.objectAssignmentInitializer){let ni=c.createAssignment(ln,ve.objectAssignmentInitializer);return gn(c.createPropertyAssignment(mr,ni),ve)}return gn(c.createPropertyAssignment(mr,ln),ve)}}return ve}function KA(ve){switch(ve.kind){case 80:return TA(ve);case 212:return $d(ve);case 213:return YI(ve)}return ve}function TA(ve){return oi(ve)||ve}function oi(ve){if(Ze&We&&!kp(ve)&&!VF(ve)){let mr=R.getReferencedExportContainer(ve,!1);if(mr&&mr.kind!==308&&(We&2&&mr.kind===268||We&8&&mr.kind===267))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(mr),ve),ve)}}function $d(ve){return WC(ve)}function YI(ve){return WC(ve)}function Fh(ve){return ve.replace(/\*\//g,"*_/")}function WC(ve){let mr=_f(ve);if(mr!==void 0){PLe(ve,mr);let ln=typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr);if(!T.removeComments){let ni=Dd(ve,_p);Iz(ln,3,` ${Fh(xp(ni))} `)}return ln}return ve}function _f(ve){if(!sS(T))return jo(ve)||Yg(ve)?R.getConstantValue(ve):void 0}function QI(ve){return T.verbatimModuleSyntax||wo(ve)||R.isReferencedAliasDeclaration(ve)}}function YOt(s){let{factory:c,getEmitHelperFactory:g,hoistVariableDeclaration:d,endLexicalEnvironment:h,startLexicalEnvironment:_,resumeLexicalEnvironment:S,addBlockScopedVariable:R}=s,T=s.getEmitResolver(),W=s.getCompilerOptions(),V=Mg(W),M=Wne(W),ee=!!W.experimentalDecorators,re=!M,ge=M&&V<9,Ie=re||ge,_e=V<9,Ee=V<99?-1:M?0:3,Ne=V<9,Te=Ne&&V>=2,Ze=Ie||_e||Ee===-1,We=s.onSubstituteNode;s.onSubstituteNode=YI;let Ue=s.onEmitNode;s.onEmitNode=$d;let $e=!1,Ye=0,Tt,ot,Qe,mt,ht=new Map,_t=new Set,Rt,Lt,Ke=!1,Pt=!1;return rR(s,_r);function _r(ve){if(ve.isDeclarationFile||(mt=void 0,$e=!!(g1(ve)&32),!Ze&&!$e))return ve;let mr=_s(ve,nt,s);return hN(mr,s.readEmitHelpers()),mr}function Gt(ve){switch(ve.kind){case 129:return hn()?void 0:ve;default:return Gs(ve,Ig)}}function nt(ve){if(!(ve.transformFlags&16777216)&&!(ve.transformFlags&134234112))return ve;switch(ve.kind){case 264:return En(ve);case 232:return Mt(ve);case 176:case 173:return pe.fail("Use `classElementVisitor` instead.");case 304:return Ht(ve);case 244:return Br(ve);case 261:return mn(ve);case 170:return jn(ve);case 209:return Zi(ve);case 278:return Ns(ve);case 81:return ir(ve);case 212:return Qu(ve);case 213:return Tg(ve);case 225:case 226:return Cs(ve,!1);case 227:return Fr(ve,!1);case 218:return Dn(ve,!1);case 214:return pt(ve);case 245:return Pr(ve);case 216:return on(ve);case 249:return Tu(ve);case 110:return xe(ve);case 263:case 219:return Zn(void 0,Dt,ve);case 177:case 175:case 178:case 179:return Zn(ve,Dt,ve);default:return Dt(ve)}}function Dt(ve){return _s(ve,nt,s)}function tr(ve){switch(ve.kind){case 225:case 226:return Cs(ve,!0);case 227:return Fr(ve,!0);case 357:return Kr(ve,!0);case 218:return Dn(ve,!0);default:return nt(ve)}}function ur(ve){switch(ve.kind){case 299:return _s(ve,ur,s);case 234:return Gi(ve);default:return nt(ve)}}function Gr(ve){switch(ve.kind){case 211:case 210:return oi(ve);default:return nt(ve)}}function dt(ve){switch(ve.kind){case 177:return Zn(ve,ks,ve);case 178:case 179:case 175:return Zn(ve,su,ve);case 173:return Zn(ve,Oi,ve);case 176:return Zn(ve,Bt,ve);case 168:return si(ve);case 241:return ve;default:return dp(ve)?Gt(ve):nt(ve)}}function pr(ve){switch(ve.kind){case 168:return si(ve);default:return nt(ve)}}function st(ve){switch(ve.kind){case 173:return yr(ve);case 178:case 179:return dt(ve);default:pe.assertMissingNode(ve,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function ir(ve){return!_e||Lc(ve.parent)?ve:ua(c.createIdentifier(""),ve)}function zt(ve){let mr=yu(ve.left);if(mr){let ln=Mr(ve.right,nt,un);return ua(g().createClassPrivateFieldInHelper(mr.brandCheckIdentifier,ln),ve)}return _s(ve,nt,s)}function Ht(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Br(ve){let mr=Qe;Qe=[];let ln=_s(ve,nt,s),ni=jt(Qe)?[ln,...Qe]:ln;return Qe=mr,ni}function mn(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function jn(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Zi(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Ns(ve){return kb(ve,nr)&&(ve=m1(s,ve,!0,ve.isExportEquals?"":"default")),_s(ve,nt,s)}function An(ve){return jt(ot)&&(gI(ve)?(ot.push(ve.expression),ve=c.updateParenthesizedExpression(ve,c.inlineExpressions(ot))):(ot.push(ve),ve=c.inlineExpressions(ot)),ot=void 0),ve}function si(ve){let mr=Mr(ve.expression,nt,un);return c.updateComputedPropertyName(ve,An(mr))}function ks(ve){return Rt?In(ve,Rt):Dt(ve)}function Ic(ve){return!!(_e||zh(ve)&&g1(ve)&32)}function su(ve){if(pe.assert(!p1(ve)),!pC(ve)||!Ic(ve))return _s(ve,dt,s);let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;let ln=ya(ve);ln&&fs().push(c.createAssignment(ln,c.createFunctionExpression(Me(ve.modifiers,ni=>Ig(ni)&&!Ge(ni)&&!It(ni)),ve.asteriskToken,ln,void 0,vI(ve.parameters,nt,s),void 0,uS(ve.body,nt,s))))}function Zn(ve,mr,ln){if(ve!==Lt){let ni=Lt;Lt=ve;let Ls=mr(ln);return Lt=ni,Ls}return mr(ln)}function ya(ve){pe.assert(p(ve.name));let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),mr.kind==="m")return mr.methodName;if(mr.kind==="a"){if(bB(ve))return mr.getterName;if(cv(ve))return mr.setterName}}function Gl(){let ve=Ui();return ve.classThis??ve.classConstructor??Rt?.name}function ba(ve){let mr=DB(ve),ln=XT(ve),ni=ve.name,Ls=ni,Za=ni;if(Un(ni)&&!BN(ni.expression)){let yf=g9e(ni);if(yf)Ls=c.updateComputedPropertyName(ni,Mr(ni.expression,nt,un)),Za=c.updateComputedPropertyName(ni,yf.left);else{let rm=c.createTempVariable(d);Hg(rm,ni.expression);let _h=Mr(ni.expression,nt,un),Gp=c.createAssignment(rm,_h);Hg(Gp,ni.expression),Ls=c.updateComputedPropertyName(ni,Gp),Za=c.updateComputedPropertyName(ni,rm)}}let Go=Ws(ve.modifiers,Gt,Ig),Ss=Z$e(c,ve,Go,ve.initializer);ua(Ss,ve),ti(Ss,3072),Hg(Ss,ln);let Uc=cg(ve)?Gl()??c.createThis():c.createThis(),rl=dWt(c,ve,Go,Ls,Uc);ua(rl,ve),hh(rl,mr),Hg(rl,ln);let xd=c.createModifiersFromModifierFlags(Dw(Go)),Lg=pWt(c,ve,xd,Za,Uc);return ua(Lg,ve),ti(Lg,3072),Hg(Lg,ln),Sde([Ss,rl,Lg],st,PI)}function Wo(ve){if(Ic(ve)){let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;if(mr.isStatic&&!_e){let ln=ri(ve,c.createThis());if(ln)return c.createClassStaticBlockDeclaration(c.createBlock([ln],!0))}return}return re&&!cg(ve)&&mt?.data&&mt.data.facts&16?c.updatePropertyDeclaration(ve,Ws(ve.modifiers,nt,dp),ve.name,void 0,void 0,void 0):(kb(ve,nr)&&(ve=m1(s,ve)),c.updatePropertyDeclaration(ve,Ws(ve.modifiers,Gt,Ig),Mr(ve.name,pr,VI),void 0,void 0,Mr(ve.initializer,nt,un)))}function hc(ve){if(Ie&&!t0(ve)){let mr=es(ve.name,!!ve.initializer||M);if(mr&&fs().push(...fWt(mr)),cg(ve)&&!_e){let ln=ri(ve,c.createThis());if(ln){let ni=c.createClassStaticBlockDeclaration(c.createBlock([ln]));return ua(ni,ve),hh(ni,ve),hh(ln,{pos:-1,end:-1}),kB(ln,void 0),x3(ln,void 0),ni}}return}return c.updatePropertyDeclaration(ve,Ws(ve.modifiers,Gt,Ig),Mr(ve.name,pr,VI),void 0,void 0,Mr(ve.initializer,nt,un))}function yr(ve){return pe.assert(!p1(ve),"Decorators should already have been transformed and elided."),pC(ve)?Wo(ve):hc(ve)}function hn(){return Ee===-1||Ee===3&&!!mt?.data&&!!(mt.data.facts&16)}function Oi(ve){return t0(ve)&&(hn()||zh(ve)&&g1(ve)&32)?ba(ve):yr(ve)}function lo(){return!!Lt&&zh(Lt)&&yB(Lt)&&t0(Dd(Lt))}function pa(ve){if(lo()){let mr=HI(ve);mr.kind===110&&_t.add(mr)}}function Oa(ve,mr){return mr=Mr(mr,nt,un),pa(mr),tl(ve,mr)}function tl(ve,mr){switch(hh(mr,KD(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.getterName);case"m":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.methodName);case"f":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Qu(ve){if(p(ve.name)){let mr=yu(ve.name);if(mr)return gn(ua(Oa(mr,ve.expression),ve),ve)}if(Te&&Lt&&xy(ve)&&Ir(ve.name)&&Nde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,c.createStringLiteralFromNode(ve.name),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,nt,s)}function Tg(ve){if(Te&&Lt&&xy(ve)&&Nde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,Mr(ve.argumentExpression,nt,un),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,nt,s)}function Cs(ve,mr){if(ve.operator===46||ve.operator===47){let ln=QA(ve.operand);if(cP(ln)){let ni;if(ni=yu(ln.name)){let Ls=Mr(ln.expression,nt,un);pa(Ls);let{readExpression:Za,initializeExpression:Go}=Pn(Ls),Ss=Oa(ni,Za),Uc=T0(ve)||mr?void 0:c.createTempVariable(d);return Ss=s9e(c,ve,Ss,d,Uc),Ss=hr(ni,Go||Za,Ss,64),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}else if(Te&&Lt&&xy(ln)&&Nde(Lt)&&mt?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=mt.data;if(Za&1){let Go=ci(ln);return T0(ve)?c.updatePrefixUnaryExpression(ve,Go):c.updatePostfixUnaryExpression(ve,Go)}if(ni&&Ls){let Go,Ss;if(jo(ln)?Ir(ln.name)&&(Ss=Go=c.createStringLiteralFromNode(ln.name)):BN(ln.argumentExpression)?Ss=Go=ln.argumentExpression:(Ss=c.createTempVariable(d),Go=c.createAssignment(Ss,Mr(ln.argumentExpression,nt,un))),Go&&Ss){let Uc=c.createReflectGetCall(Ls,Ss,ni);gn(Uc,ln);let rl=mr?void 0:c.createTempVariable(d);return Uc=s9e(c,ve,Uc,d,rl),Uc=c.createReflectSetCall(Ls,Go,Uc,ni),ua(Uc,ve),gn(Uc,ve),rl&&(Uc=c.createComma(Uc,rl),gn(Uc,ve)),Uc}}}}return _s(ve,nt,s)}function Tu(ve){return c.updateForStatement(ve,Mr(ve.initializer,tr,hE),Mr(ve.condition,nt,un),Mr(ve.incrementor,tr,un),Py(ve.statement,nt,s))}function Pr(ve){return c.updateExpressionStatement(ve,Mr(ve.expression,tr,un))}function Pn(ve){let mr=sp(ve)?ve:c.cloneNode(ve);if(ve.kind===110&&_t.has(ve)&&_t.add(mr),BN(ve))return{readExpression:mr,initializeExpression:void 0};let ln=c.createTempVariable(d),ni=c.createAssignment(ln,mr);return{readExpression:ln,initializeExpression:ni}}function pt(ve){var mr;if(cP(ve.expression)&&yu(ve.expression.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.expression,d,V);return _B(ve)?c.updateCallChain(ve,c.createPropertyAccessChain(Mr(ni,nt,un),ve.questionDotToken,"call"),void 0,void 0,[Mr(ln,nt,un),...Ws(ve.arguments,nt,un)]):c.updateCallExpression(ve,c.createPropertyAccessExpression(Mr(ni,nt,un),"call"),void 0,[Mr(ln,nt,un),...Ws(ve.arguments,nt,un)])}if(Te&&Lt&&xy(ve.expression)&&Nde(Lt)&&((mr=mt?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionCallCall(Mr(ve.expression,nt,un),mt.data.classConstructor,Ws(ve.arguments,nt,un));return ua(ln,ve),gn(ln,ve),ln}return _s(ve,nt,s)}function on(ve){var mr;if(cP(ve.tag)&&yu(ve.tag.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.tag,d,V);return c.updateTaggedTemplateExpression(ve,c.createCallExpression(c.createPropertyAccessExpression(Mr(ni,nt,un),"bind"),void 0,[Mr(ln,nt,un)]),void 0,Mr(ve.template,nt,AP))}if(Te&&Lt&&xy(ve.tag)&&Nde(Lt)&&((mr=mt?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionBindCall(Mr(ve.tag,nt,un),mt.data.classConstructor,[]);return ua(ln,ve),gn(ln,ve),c.updateTaggedTemplateExpression(ve,ln,void 0,Mr(ve.template,nt,AP))}return _s(ve,nt,s)}function it(ve){if(mt&&ht.set(Dd(ve),mt),_e){if(Rde(ve)){let ni=Mr(ve.body.statements[0].expression,nt,un);return Jm(ni,!0)&&ni.left===ni.right?void 0:ni}if(kz(ve))return Mr(ve.body.statements[0].expression,nt,un);_();let mr=Zn(ve,ni=>Ws(ni,nt,Lc),ve.body.statements);mr=c.mergeLexicalEnvironment(mr,h());let ln=c.createImmediatelyInvokedArrowFunction(mr);return ua(QA(ln.expression),ve),Gw(QA(ln.expression),4),ua(ln,ve),gn(ln,ve),ln}}function nr(ve){if(vd(ve)&&!ve.name){let mr=Q9e(ve);return jt(mr,kz)?!1:(_e||!!g1(ve))&&jt(mr,ni=>fl(ni)||pC(ni)||Ie&&FEe(ni))}return!1}function Fr(ve,mr){if(Dx(ve)){let ln=ot;ot=void 0,ve=c.updateBinaryExpression(ve,Mr(ve.left,Gr,un),ve.operatorToken,Mr(ve.right,nt,un));let ni=jt(ot)?c.inlineExpressions(Hr([...ot,ve])):ve;return ot=ln,ni}if(Jm(ve)){kb(ve,nr)&&(ve=m1(s,ve),pe.assertNode(ve,Jm));let ln=HI(ve.left,9);if(cP(ln)){let ni=yu(ln.name);if(ni)return gn(ua(hr(ni,ln.expression,ve.right,ve.operatorToken.kind),ve),ve)}else if(Te&&Lt&&xy(ve.left)&&Nde(Lt)&&mt?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=mt.data;if(Za&1)return c.updateBinaryExpression(ve,ci(ve.left),ve.operatorToken,Mr(ve.right,nt,un));if(ni&&Ls){let Go=Yg(ve.left)?Mr(ve.left.argumentExpression,nt,un):Ir(ve.left.name)?c.createStringLiteralFromNode(ve.left.name):void 0;if(Go){let Ss=Mr(ve.right,nt,un);if(Bde(ve.operatorToken.kind)){let rl=Go;BN(Go)||(rl=c.createTempVariable(d),Go=c.createAssignment(rl,Go));let xd=c.createReflectGetCall(Ls,rl,ni);ua(xd,ve.left),gn(xd,ve.left),Ss=c.createBinaryExpression(xd,wde(ve.operatorToken.kind),Ss),gn(Ss,ve)}let Uc=mr?void 0:c.createTempVariable(d);return Uc&&(Ss=c.createAssignment(Uc,Ss),gn(Uc,ve)),Ss=c.createReflectSetCall(Ls,Go,Ss,ni),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}}}return JBs(ve)?zt(ve):_s(ve,nt,s)}function Kr(ve,mr){let ln=mr?GEe(ve.elements,tr):GEe(ve.elements,nt,tr);return c.updateCommaListExpression(ve,ln)}function Dn(ve,mr){let ln=mr?tr:nt,ni=Mr(ve.expression,ln,un);return c.updateParenthesizedExpression(ve,ni)}function hr(ve,mr,ln,ni){if(mr=Mr(mr,nt,un),ln=Mr(ln,nt,un),pa(mr),Bde(ni)){let{readExpression:Ls,initializeExpression:Za}=Pn(mr);mr=Za||Ls,ln=c.createBinaryExpression(tl(ve,Ls),wde(ni),ln)}switch(hh(mr,KD(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.setterName);case"m":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,void 0);case"f":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Sn(ve){return Me(ve.members,kOt)}function Ni(ve){var mr;let ln=0,ni=Dd(ve);xa(ni)&&Rx(ee,ni)&&(ln|=1),_e&&(Met(ve)||U9e(ve))&&(ln|=2);let Ls=!1,Za=!1,Go=!1,Ss=!1;for(let rl of ve.members)cg(rl)?((rl.name&&(p(rl.name)||t0(rl))&&_e||t0(rl)&&Ee===-1&&!ve.name&&!((mr=ve.emitNode)!=null&&mr.classThis))&&(ln|=2),(pi(rl)||fl(rl))&&(Ne&&rl.transformFlags&16384&&(ln|=8,ln&1||(ln|=2)),Te&&rl.transformFlags&134217728&&(ln&1||(ln|=6)))):wP(Dd(rl))||(t0(rl)?(Ss=!0,Go||(Go=pC(rl))):pC(rl)?(Go=!0,T.hasNodeCheckFlag(rl,262144)&&(ln|=2)):pi(rl)&&(Ls=!0,Za||(Za=!!rl.initializer)));return(ge&&Ls||re&&Za||_e&&Go||_e&&Ss&&Ee===-1)&&(ln|=16),ln}function Gi(ve){var mr;if((((mr=mt?.data)==null?void 0:mr.facts)||0)&4){let ni=c.createTempVariable(d,!0);return Ui().superClassReference=ni,c.updateExpressionWithTypeArguments(ve,c.createAssignment(ni,Mr(ve.expression,nt,un)),void 0)}return _s(ve,nt,s)}function nn(ve,mr){var ln;let ni=Rt,Ls=ot,Za=mt;Rt=ve,ot=void 0,Wi();let Go=g1(ve)&32;if(_e||Go){let rl=Il(ve);if(rl&&Ir(rl))gs().data.className=rl;else if((ln=ve.emitNode)!=null&&ln.assignedName&&Zg(ve.emitNode.assignedName)){if(ve.emitNode.assignedName.textSourceNode&&Ir(ve.emitNode.assignedName.textSourceNode))gs().data.className=ve.emitNode.assignedName.textSourceNode;else if(Uh(ve.emitNode.assignedName.text,V)){let xd=c.createIdentifier(ve.emitNode.assignedName.text);gs().data.className=xd}}}if(_e){let rl=Sn(ve);jt(rl)&&(gs().data.weakSetName=pp("instances",rl[0].name))}let Ss=Ni(ve);Ss&&(Ui().facts=Ss),Ss&8&&wn();let Uc=mr(ve,Ss);return Vn(),pe.assert(mt===Za),Rt=ni,ot=Ls,Uc}function En(ve){return nn(ve,ds)}function ds(ve,mr){var ln,ni;let Ls;if(mr&2)if(_e&&((ln=ve.emitNode)!=null&&ln.classThis))Ui().classConstructor=ve.emitNode.classThis,Ls=c.createAssignment(ve.emitNode.classThis,c.getInternalName(ve));else{let Gp=c.createTempVariable(d,!0);Ui().classConstructor=c.cloneNode(Gp),Ls=c.createAssignment(Gp,c.getInternalName(ve))}(ni=ve.emitNode)!=null&&ni.classThis&&(Ui().classThis=ve.emitNode.classThis);let Za=T.hasNodeCheckFlag(ve,262144),Go=Ga(ve,32),Ss=Ga(ve,2048),Uc=Ws(ve.modifiers,Gt,Ig),rl=Ws(ve.heritageClauses,ur,h1),{members:xd,prologue:Lg}=fr(ve),yf=[];if(Ls&&fs().unshift(Ls),jt(ot)&&yf.push(c.createExpressionStatement(c.inlineExpressions(ot))),re||_e||g1(ve)&32){let Gp=Q9e(ve);jt(Gp)&&$r(yf,Gp,c.getInternalName(ve))}yf.length>0&&Go&&Ss&&(Uc=Ws(Uc,Gp=>pEe(Gp)?void 0:Gp,Ig),yf.push(c.createExportAssignment(void 0,!1,c.getLocalName(ve,!1,!0))));let rm=Ui().classConstructor;Za&&rm&&(tn(),Tt[Wy(ve)]=rm);let _h=c.updateClassDeclaration(ve,Uc,ve.name,void 0,rl,xd);return yf.unshift(_h),Lg&&yf.unshift(c.createExpressionStatement(Lg)),yf}function Mt(ve){return nn(ve,cn)}function cn(ve,mr){var ln,ni,Ls;let Za=!!(mr&1),Go=Q9e(ve),Ss=T.hasNodeCheckFlag(ve,262144),Uc=T.hasNodeCheckFlag(ve,32768),rl;function xd(){var Z_;if(_e&&((Z_=ve.emitNode)!=null&&Z_.classThis))return Ui().classConstructor=ve.emitNode.classThis;let m2=c.createTempVariable(Uc?R:d,!0);return Ui().classConstructor=c.cloneNode(m2),m2}(ln=ve.emitNode)!=null&&ln.classThis&&(Ui().classThis=ve.emitNode.classThis),mr&2&&(rl??(rl=xd()));let Lg=Ws(ve.modifiers,Gt,Ig),yf=Ws(ve.heritageClauses,ur,h1),{members:rm,prologue:_h}=fr(ve),Gp=c.updateClassExpression(ve,Lg,ve.name,void 0,yf,rm),oh=[];if(_h&&oh.push(_h),(_e||g1(ve)&32)&&jt(Go,Z_=>fl(Z_)||pC(Z_)||Ie&&FEe(Z_))||jt(ot))if(Za)pe.assertIsDefined(Qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),jt(ot)&&Or(Qe,At(ot,c.createExpressionStatement)),jt(Go)&&$r(Qe,Go,((ni=ve.emitNode)==null?void 0:ni.classThis)??c.getInternalName(ve)),rl?oh.push(c.createAssignment(rl,Gp)):_e&&((Ls=ve.emitNode)!=null&&Ls.classThis)?oh.push(c.createAssignment(ve.emitNode.classThis,Gp)):oh.push(Gp);else{if(rl??(rl=xd()),Ss){tn();let Z_=c.cloneNode(rl);Z_.emitNode.autoGenerate.flags&=-9,Tt[Wy(ve)]=Z_}oh.push(c.createAssignment(rl,Gp)),Or(oh,ot),Or(oh,ao(Go,rl)),oh.push(c.cloneNode(rl))}else oh.push(Gp);return oh.length>1&&(Gw(Gp,131072),oh.forEach(N0)),c.inlineExpressions(oh)}function Bt(ve){if(!_e)return _s(ve,nt,s)}function xe(ve){if(Ne&&Lt&&fl(Lt)&&mt?.data){let{classThis:mr,classConstructor:ln}=mt.data;return mr??ln??ve}return ve}function fr(ve){let mr=!!(g1(ve)&32);if(_e||$e){for(let Go of ve.members)if(pC(Go))if(Ic(Go))AI(Go,Go.name,bi);else{let Ss=gs();wU(Ss,Go.name,{kind:"untransformed"})}if(_e&&jt(Sn(ve))&&Je(),hn()){for(let Go of ve.members)if(t0(Go)){let Ss=c.getGeneratedPrivateNameForNode(Go.name,void 0,"_accessor_storage");if(_e||mr&&zh(Go))AI(Go,Ss,mc);else{let Uc=gs();wU(Uc,Ss,{kind:"untransformed"})}}}}let ln=Ws(ve.members,dt,PI),ni;jt(ln,Tc)||(ni=In(void 0,ve));let Ls,Za;if(!_e&&jt(ot)){let Go=c.createExpressionStatement(c.inlineExpressions(ot));if(Go.transformFlags&134234112){let Uc=c.createTempVariable(d),rl=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([Go]));Ls=c.createAssignment(Uc,rl),Go=c.createExpressionStatement(c.createCallExpression(Uc,void 0,[]))}let Ss=c.createBlock([Go]);Za=c.createClassStaticBlockDeclaration(Ss),ot=void 0}if(ni||Za){let Go,Ss=de(ln,Rde),Uc=de(ln,kz);Go=Ft(Go,Ss),Go=Ft(Go,Uc),Go=Ft(Go,ni),Go=Ft(Go,Za);let rl=Ss||Uc?Me(ln,xd=>xd!==Ss&&xd!==Uc):ln;Go=Or(Go,rl),ln=gn(c.createNodeArray(Go),ve.members)}return{members:ln,prologue:Ls}}function Je(){let{weakSetName:ve}=gs().data;pe.assert(ve,"weakSetName should be set in private identifier environment"),fs().push(c.createAssignment(ve,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function In(ve,mr){if(ve=Mr(ve,nt,Tc),!mt?.data||!(mt.data.facts&16))return ve;let ln=BB(mr),ni=!!(ln&&HI(ln.expression).kind!==106),Ls=vI(ve?ve.parameters:void 0,nt,s),Za=Ot(mr,ve,ni);return Za?ve?(pe.assert(Ls),c.updateConstructorDeclaration(ve,void 0,Ls,Za)):N0(ua(gn(c.createConstructorDeclaration(void 0,Ls??[],Za),ve||mr),ve)):ve}function Hn(ve,mr,ln,ni,Ls,Za,Go){let Ss=ni[Ls],Uc=mr[Ss];if(Or(ve,Ws(mr,nt,Lc,ln,Ss-ln)),ln=Ss+1,mU(Uc)){let rl=[];Hn(rl,Uc.tryBlock.statements,0,ni,Ls+1,Za,Go);let xd=c.createNodeArray(rl);gn(xd,Uc.tryBlock.statements),ve.push(c.updateTryStatement(Uc,c.updateBlock(Uc.tryBlock,rl),Mr(Uc.catchClause,nt,iQ),Mr(Uc.finallyBlock,nt,$u)))}else{for(Or(ve,Ws(mr,nt,Lc,Ss,1));ln!!_h.initializer||p(_h.name)||Nw(_h)));let Go=Sn(ve),Ss=jt(Za)||jt(Go);if(!mr&&!Ss)return uS(void 0,nt,s);S();let Uc=!mr&&ln,rl=0,xd=[],Lg=[],yf=c.createThis();if(Mn(Lg,Go,yf),mr){let _h=Me(Ls,oh=>Ve(Dd(oh),mr)),Gp=Me(Za,oh=>!Ve(Dd(oh),mr));$r(Lg,_h,yf),$r(Lg,Gp,yf)}else $r(Lg,Za,yf);if(mr?.body){rl=c.copyPrologue(mr.body.statements,xd,!1,nt);let _h=Y9e(mr.body.statements,rl);if(_h.length)Hn(xd,mr.body.statements,rl,_h,0,Lg,mr);else{for(;rl=xd.length?mr.body.multiLine??xd.length>0:xd.length>0;return gn(c.createBlock(gn(c.createNodeArray(xd),((ni=mr?.body)==null?void 0:ni.statements)??ve.members),rm),mr?.body)}function $r(ve,mr,ln){for(let ni of mr){if(cg(ni)&&!_e)continue;let Ls=ri(ni,ln);Ls&&ve.push(Ls)}}function ri(ve,mr){let ln=fl(ve)?Zn(ve,it,ve):Bs(ve,mr);if(!ln)return;let ni=c.createExpressionStatement(ln);ua(ni,ve),Gw(ni,tA(ve)&3072),hh(ni,ve);let Ls=Dd(ve);return Si(Ls)?(Hg(ni,Ls),pz(ni)):Hg(ni,Av(ve)),kB(ln,void 0),x3(ln,void 0),Nw(Ls)&&Gw(ni,3072),ni}function ao(ve,mr){let ln=[];for(let ni of ve){let Ls=fl(ni)?Zn(ni,it,ni):Zn(ni,()=>Bs(ni,mr),void 0);Ls&&(N0(Ls),ua(Ls,ni),Gw(Ls,tA(ni)&3072),Hg(Ls,Av(ni)),hh(Ls,ni),ln.push(Ls))}return ln}function Bs(ve,mr){var ln;let ni=Lt,Ls=Ys(ve,mr);return Ls&&zh(ve)&&((ln=mt?.data)!=null&&ln.facts)&&(ua(Ls,ve),Gw(Ls,4),Hg(Ls,XT(ve.name)),ht.set(Dd(ve),mt)),Lt=ni,Ls}function Ys(ve,mr){let ln=!M;kb(ve,nr)&&(ve=m1(s,ve));let ni=Nw(ve)?c.getGeneratedPrivateNameForNode(ve.name):Un(ve.name)&&!BN(ve.name.expression)?c.updateComputedPropertyName(ve.name,c.getGeneratedNameForNode(ve.name)):ve.name;if(zh(ve)&&(Lt=ve),p(ni)&&Ic(ve)){let Go=yu(ni);if(Go)return Go.kind==="f"?Go.isStatic?HBs(c,Go.variableName,Mr(ve.initializer,nt,un)):YBs(c,mr,Mr(ve.initializer,nt,un),Go.brandCheckIdentifier):void 0;pe.fail("Undeclared private name for property declaration.")}if((p(ni)||zh(ve))&&!ve.initializer)return;let Ls=Dd(ve);if(Ga(Ls,64))return;let Za=Mr(ve.initializer,nt,un);if(Ve(Ls,Ls.parent)&&Ir(ni)){let Go=c.cloneNode(ni);Za?(gI(Za)&&uEe(Za.expression)&&qD(Za.expression.left,"___runInitializers")&&qT(Za.expression.right)&&mC(Za.expression.right.expression)&&(Za=Za.expression.left),Za=c.inlineExpressions([Za,Go])):Za=Go,ti(ni,3168),Hg(Go,Ls.name),ti(Go,3072)}else Za??(Za=c.createVoidZero());if(ln||p(ni)){let Go=EU(c,mr,ni,ni);return Gw(Go,1024),c.createAssignment(Go,Za)}else{let Go=Un(ni)?ni.expression:Ir(ni)?c.createStringLiteral(Bc(ni.escapedText)):ni,Ss=c.createPropertyDescriptor({value:Za,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(mr,Go,Ss)}}function tn(){Ye&1||(Ye|=1,s.enableSubstitution(80),Tt=[])}function wn(){Ye&2||(Ye|=2,s.enableSubstitution(110),s.enableEmitNotification(263),s.enableEmitNotification(219),s.enableEmitNotification(177),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(175),s.enableEmitNotification(173),s.enableEmitNotification(168))}function Mn(ve,mr,ln){if(!_e||!jt(mr))return;let{weakSetName:ni}=gs().data;pe.assert(ni,"weakSetName should be set in private identifier environment"),ve.push(c.createExpressionStatement(QBs(c,ln,ni)))}function ci(ve){return jo(ve)?c.updatePropertyAccessExpression(ve,c.createVoidZero(),ve.name):c.updateElementAccessExpression(ve,c.createVoidZero(),Mr(ve.argumentExpression,nt,un))}function es(ve,mr){if(Un(ve)){let ln=g9e(ve),ni=Mr(ve.expression,nt,un),Ls=o2(ni),Za=BN(Ls);if(!(!!ln||Jm(Ls)&&kp(Ls.left))&&!Za&&mr){let Ss=c.getGeneratedNameForNode(ve);return T.hasNodeCheckFlag(ve,32768)?R(Ss):d(Ss),c.createAssignment(Ss,ni)}return Za||Ir(Ls)?void 0:ni}}function Wi(){mt={previous:mt,data:void 0}}function Vn(){mt=mt?.previous}function Ui(){return pe.assert(mt),mt.data??(mt.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function gs(){return pe.assert(mt),mt.privateEnv??(mt.privateEnv=GOt({className:void 0,weakSetName:void 0}))}function fs(){return ot??(ot=[])}function bi(ve,mr,ln,ni,Ls,Za,Go){t0(ve)?wI(ve,mr,ln,ni,Ls,Za,Go):pi(ve)?mc(ve,mr,ln,ni,Ls,Za,Go):uu(ve)?gg(ve,mr,ln,ni,Ls,Za,Go):Bg(ve)?Ag(ve,mr,ln,ni,Ls,Za,Go):Dg(ve)&&_u(ve,mr,ln,ni,Ls,Za,Go)}function mc(ve,mr,ln,ni,Ls,Za,Go){if(Ls){let Ss=pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"),Uc=Dl(mr);wU(ni,mr,{kind:"f",isStatic:!0,brandCheckIdentifier:Ss,variableName:Uc,isValid:Za})}else{let Ss=Dl(mr);wU(ni,mr,{kind:"f",isStatic:!1,brandCheckIdentifier:Ss,isValid:Za}),fs().push(c.createAssignment(Ss,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function gg(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");wU(ni,mr,{kind:"m",methodName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function Ag(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_get"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.getterName?Go.getterName=Ss:wU(ni,mr,{kind:"a",getterName:Ss,setterName:void 0,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function _u(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_set"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.setterName?Go.setterName=Ss:wU(ni,mr,{kind:"a",getterName:void 0,setterName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function wI(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_get"),Uc=Dl(mr,"_set"),rl=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");wU(ni,mr,{kind:"a",getterName:Ss,setterName:Uc,brandCheckIdentifier:rl,isStatic:Ls,isValid:Za})}function AI(ve,mr,ln){let ni=Ui(),Ls=gs(),Za=Oet(Ls,mr),Go=zh(ve),Ss=!XBs(mr)&&Za===void 0;ln(ve,mr,ni,Ls,Go,Ss,Za)}function pp(ve,mr,ln){let{className:ni}=gs().data,Ls=ni?{prefix:"_",node:ni,suffix:"_"}:"_",Za=typeof ve=="object"?c.getGeneratedNameForNode(ve,24,Ls,ln):typeof ve=="string"?c.createUniqueName(ve,16,Ls,ln):c.createTempVariable(void 0,!0,Ls,ln);return T.hasNodeCheckFlag(mr,32768)?R(Za):d(Za),Za}function Dl(ve,mr){let ln=xY(ve);return pp(ln?.substring(1)??ve,ve,mr)}function yu(ve){let mr=FOt(mt,ve);return mr?.kind==="untransformed"?void 0:mr}function tm(ve){let mr=c.getGeneratedNameForNode(ve),ln=yu(ve.name);if(!ln)return _s(ve,nt,s);let ni=ve.expression;return(ene(ve)||xy(ve)||!lQ(ve.expression))&&(ni=c.createTempVariable(d,!0),fs().push(c.createBinaryExpression(ni,64,Mr(ve.expression,nt,un)))),c.createAssignmentTargetWrapper(mr,hr(ln,ni,mr,64))}function jp(ve){if(og(ve)||OI(ve))return oi(ve);if(cP(ve))return tm(ve);if(Te&&Lt&&xy(ve)&&Nde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=Yg(ve)?Mr(ve.argumentExpression,nt,un):Ir(ve.name)?c.createStringLiteralFromNode(ve.name):void 0;if(Ls){let Za=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Za,c.createReflectSetCall(ln,Ls,Za,mr))}}}return _s(ve,nt,s)}function Xg(ve){if(kb(ve,nr)&&(ve=m1(s,ve)),Jm(ve,!0)){let mr=jp(ve.left),ln=Mr(ve.right,nt,un);return c.updateBinaryExpression(ve,mr,ve.operatorToken,ln)}return jp(ve)}function sh(ve){if(D_(ve.expression)){let mr=jp(ve.expression);return c.updateSpreadElement(ve,mr)}return _s(ve,nt,s)}function dS(ve){if(EJ(ve)){if(of(ve))return sh(ve);if(!yp(ve))return Xg(ve)}return _s(ve,nt,s)}function gu(ve){let mr=Mr(ve.name,nt,VI);if(Jm(ve.initializer,!0)){let ln=Xg(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}if(D_(ve.initializer)){let ln=jp(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}return _s(ve,nt,s)}function bg(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function KA(ve){if(D_(ve.expression)){let mr=jp(ve.expression);return c.updateSpreadAssignment(ve,mr)}return _s(ve,nt,s)}function TA(ve){return pe.assertNode(ve,gP),Lx(ve)?KA(ve):a0(ve)?bg(ve):fm(ve)?gu(ve):_s(ve,nt,s)}function oi(ve){return OI(ve)?c.updateArrayLiteralExpression(ve,Ws(ve.elements,dS,un)):c.updateObjectLiteralExpression(ve,Ws(ve.properties,TA,yw))}function $d(ve,mr,ln){let ni=Dd(mr),Ls=ht.get(ni);if(Ls){let Za=mt,Go=Pt;mt=Ls,Pt=Ke,Ke=!fl(ni)||!(g1(ni)&32),Ue(ve,mr,ln),Ke=Pt,Pt=Go,mt=Za;return}switch(mr.kind){case 219:if(lA(ni)||tA(mr)&524288)break;case 263:case 177:case 178:case 179:case 175:case 173:{let Za=mt,Go=Pt;mt=void 0,Pt=Ke,Ke=!1,Ue(ve,mr,ln),Ke=Pt,Pt=Go,mt=Za;return}case 168:{let Za=mt,Go=Ke;mt=mt?.previous,Ke=Pt,Ue(ve,mr,ln),Ke=Go,mt=Za;return}}Ue(ve,mr,ln)}function YI(ve,mr){return mr=We(ve,mr),ve===1?Fh(mr):mr}function Fh(ve){switch(ve.kind){case 80:return _f(ve);case 110:return WC(ve)}return ve}function WC(ve){if(Ye&2&&mt?.data&&!_t.has(ve)){let{facts:mr,classConstructor:ln,classThis:ni}=mt.data,Ls=Ke?ni??ln:ln;if(Ls)return gn(ua(c.cloneNode(Ls),ve),ve);if(mr&1&&ee)return c.createParenthesizedExpression(c.createVoidZero())}return ve}function _f(ve){return QI(ve)||ve}function QI(ve){if(Ye&1&&T.hasNodeCheckFlag(ve,536870912)){let mr=T.getReferencedValueDeclaration(ve);if(mr){let ln=Tt[mr.id];if(ln){let ni=c.cloneNode(ln);return Hg(ni,ve),hh(ni,ve),ni}}}}}function HBs(s,c,g){return s.createAssignment(c,s.createObjectLiteralExpression([s.createPropertyAssignment("value",g||s.createVoidZero())]))}function YBs(s,c,g,d){return s.createCallExpression(s.createPropertyAccessExpression(d,"set"),void 0,[c,g||s.createVoidZero()])}function QBs(s,c,g){return s.createCallExpression(s.createPropertyAccessExpression(g,"add"),void 0,[c])}function XBs(s){return!TL(s)&&s.escapedText==="#constructor"}function JBs(s){return p(s.left)&&s.operatorToken.kind===103}function UBs(s){return pi(s)&&zh(s)}function Nde(s){return fl(s)||UBs(s)}function QOt(s){let{factory:c,hoistVariableDeclaration:g}=s,d=s.getEmitResolver(),h=s.getCompilerOptions(),_=Mg(h),S=a_(h,"strictNullChecks"),R,T;return{serializeTypeNode:(ot,Qe)=>W(ot,Ie,Qe),serializeTypeOfNode:(ot,Qe,mt)=>W(ot,M,Qe,mt),serializeParameterTypesOfNode:(ot,Qe,mt)=>W(ot,ee,Qe,mt),serializeReturnTypeOfNode:(ot,Qe)=>W(ot,ge,Qe)};function W(ot,Qe,mt,ht){let _t=R,Rt=T;R=ot.currentLexicalScope,T=ot.currentNameScope;let Lt=ht===void 0?Qe(mt):Qe(mt,ht);return R=_t,T=Rt,Lt}function V(ot,Qe){let mt=BP(Qe.members,ot);return mt.setAccessor&&xZe(mt.setAccessor)||mt.getAccessor&&xb(mt.getAccessor)}function M(ot,Qe){switch(ot.kind){case 173:case 170:return Ie(ot.type);case 179:case 178:return Ie(V(ot,Qe));case 264:case 232:case 175:return c.createIdentifier("Function");default:return c.createVoidZero()}}function ee(ot,Qe){let mt=xa(ot)?lN(ot):bu(ot)&&u1(ot.body)?ot:void 0,ht=[];if(mt){let _t=re(mt,Qe),Rt=_t.length;for(let Lt=0;Lt_t.parent&&d2(_t.parent)&&(_t.parent.trueType===_t||_t.parent.falseType===_t)))return c.createIdentifier("Object");let mt=We(ot.typeName),ht=c.createTempVariable(g);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(ht,mt),"function"),void 0,ht,void 0,c.createIdentifier("Object"));case 1:return Ue(ot.typeName);case 2:return c.createVoidZero();case 4:return Tt("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return Tt("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return pe.assertNever(Qe)}}function Ze(ot,Qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(ot),c.createStringLiteral("undefined")),Qe)}function We(ot){if(ot.kind===80){let ht=Ue(ot);return Ze(ht,ht)}if(ot.left.kind===80)return Ze(Ue(ot.left),Ue(ot));let Qe=We(ot.left),mt=c.createTempVariable(g);return c.createLogicalAnd(c.createLogicalAnd(Qe.left,c.createStrictInequality(c.createAssignment(mt,Qe.right),c.createVoidZero())),c.createPropertyAccessExpression(mt,ot.right))}function Ue(ot){switch(ot.kind){case 80:let Qe=XA(gn(H3.cloneNode(ot),ot),ot.parent);return Qe.original=void 0,XA(Qe,$l(R)),Qe;case 167:return $e(ot)}}function $e(ot){return c.createPropertyAccessExpression(Ue(ot.left),ot.right)}function Ye(ot){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(ot),"function"),void 0,c.createIdentifier(ot),void 0,c.createIdentifier("Object"))}function Tt(ot,Qe){return _pEe(hn)||So(hn)?void 0:hn,dp),Ns=Av(Ht),An=ur(Ht),si=S<2?c.getInternalName(Ht,!1,!0):c.getLocalName(Ht,!1,!0),ks=Ws(Ht.heritageClauses,M,h1),Ic=Ws(Ht.members,M,PI),su=[];({members:Ic,decorationStatements:su}=_e(Ht,Ic));let Zn=S>=9&&!!An&&jt(Ic,hn=>pi(hn)&&Ga(hn,256)||fl(hn));Zn&&(Ic=gn(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(An,c.createThis()))])),...Ic]),Ic));let ya=c.createClassExpression(Zi,Br&&kp(Br)?void 0:Br,void 0,ks,Ic);ua(ya,Ht),gn(ya,Ns);let Gl=An&&!Zn?c.createAssignment(An,ya):ya,ba=c.createVariableDeclaration(si,void 0,void 0,Gl);ua(ba,Ht);let Wo=c.createVariableDeclarationList([ba],1),hc=c.createVariableStatement(void 0,Wo);ua(hc,Ht),gn(hc,Ns),hh(hc,Ht);let yr=[hc];if(Or(yr,su),Pt(yr,Ht),mn)if(jn){let hn=c.createExportDefault(si);yr.push(hn)}else{let hn=c.createExternalModuleExport(c.getDeclarationName(Ht));yr.push(hn)}return yr}function Te(Ht){return c.updateClassExpression(Ht,Ws(Ht.modifiers,V,Ig),Ht.name,void 0,Ws(Ht.heritageClauses,M,h1),Ws(Ht.members,M,PI))}function Ze(Ht){return c.updateConstructorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),Ws(Ht.parameters,M,Si),Mr(Ht.body,M,$u))}function We(Ht,Br){return Ht!==Br&&(hh(Ht,Br),Hg(Ht,Av(Br))),Ht}function Ue(Ht){return We(c.updateMethodDeclaration(Ht,Ws(Ht.modifiers,V,Ig),Ht.asteriskToken,pe.checkDefined(Mr(Ht.name,M,VI)),void 0,void 0,Ws(Ht.parameters,M,Si),void 0,Mr(Ht.body,M,$u)),Ht)}function $e(Ht){return We(c.updateGetAccessorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),Ws(Ht.parameters,M,Si),void 0,Mr(Ht.body,M,$u)),Ht)}function Ye(Ht){return We(c.updateSetAccessorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),Ws(Ht.parameters,M,Si),Mr(Ht.body,M,$u)),Ht)}function Tt(Ht){if(!(Ht.flags&33554432||Ga(Ht,128)))return We(c.updatePropertyDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),void 0,void 0,Mr(Ht.initializer,M,un)),Ht)}function ot(Ht){let Br=c.updateParameterDeclaration(Ht,AWt(c,Ht.modifiers),Ht.dotDotDotToken,pe.checkDefined(Mr(Ht.name,M,RL)),void 0,void 0,Mr(Ht.initializer,M,un));return Br!==Ht&&(hh(Br,Ht),gn(Br,Av(Ht)),Hg(Br,Av(Ht)),ti(Br.name,64)),Br}function Qe(Ht){return qD(Ht.expression,"___metadata")}function mt(Ht){if(!Ht)return;let{false:Br,true:mn}=Ko(Ht.decorators,Qe),jn=[];return Or(jn,At(Br,Gt)),Or(jn,er(Ht.parameters,nt)),Or(jn,At(mn,Gt)),jn}function ht(Ht,Br,mn){Or(Ht,At(Lt(Br,mn),jn=>c.createExpressionStatement(jn)))}function _t(Ht,Br,mn){return rne(!0,Ht,mn)&&Br===cg(Ht)}function Rt(Ht,Br){return Me(Ht.members,mn=>_t(mn,Br,Ht))}function Lt(Ht,Br){let mn=Rt(Ht,Br),jn;for(let Zi of mn)jn=Ft(jn,Ke(Ht,Zi));return jn}function Ke(Ht,Br){let mn=X9e(Br,Ht,!0),jn=mt(mn);if(!jn)return;let Zi=dt(Ht,Br),Ns=Dt(Br,!Ga(Br,128)),An=pi(Br)&&!Nw(Br)?c.createVoidZero():c.createNull(),si=g().createDecorateHelper(jn,Zi,Ns,An);return ti(si,3072),Hg(si,Av(Br)),si}function Pt(Ht,Br){let mn=_r(Br);mn&&Ht.push(ua(c.createExpressionStatement(mn),Br))}function _r(Ht){let Br=Wet(Ht,!0),mn=mt(Br);if(!mn)return;let jn=T&&T[Wy(Ht)],Zi=S<2?c.getInternalName(Ht,!1,!0):c.getDeclarationName(Ht,!1,!0),Ns=g().createDecorateHelper(mn,Zi),An=c.createAssignment(Zi,jn?c.createAssignment(jn,Ns):Ns);return ti(An,3072),Hg(An,Av(Ht)),An}function Gt(Ht){return pe.checkDefined(Mr(Ht.expression,M,un))}function nt(Ht,Br){let mn;if(Ht){mn=[];for(let jn of Ht){let Zi=g().createParamHelper(Gt(jn),Br);gn(Zi,jn.expression),ti(Zi,3072),mn.push(Zi)}}return mn}function Dt(Ht,Br){let mn=Ht.name;return p(mn)?c.createIdentifier(""):Un(mn)?Br&&!BN(mn.expression)?c.getGeneratedNameForNode(mn):mn.expression:Ir(mn)?c.createStringLiteral(Vo(mn)):c.cloneNode(mn)}function tr(){T||(s.enableSubstitution(80),T=[])}function ur(Ht){if(h.hasNodeCheckFlag(Ht,262144)){tr();let Br=c.createUniqueName(Ht.name&&!kp(Ht.name)?Vo(Ht.name):"default");return T[Wy(Ht)]=Br,d(Br),Br}}function Gr(Ht){return c.createPropertyAccessExpression(c.getDeclarationName(Ht),"prototype")}function dt(Ht,Br){return cg(Br)?c.getDeclarationName(Ht):Gr(Ht)}function pr(Ht,Br){return Br=R(Ht,Br),Ht===1?st(Br):Br}function st(Ht){switch(Ht.kind){case 80:return ir(Ht)}return Ht}function ir(Ht){return zt(Ht)??Ht}function zt(Ht){if(T&&h.hasNodeCheckFlag(Ht,536870912)){let Br=h.getReferencedValueDeclaration(Ht);if(Br){let mn=T[Br.id];if(mn){let jn=c.cloneNode(mn);return Hg(jn,Ht),hh(jn,Ht),jn}}}}}function JOt(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=Mg(s.getCompilerOptions()),R,T,W,V,M,ee;return rR(s,re);function re(xe){R=void 0,ee=!1;let fr=_s(xe,Ye,s);return hN(fr,s.readEmitHelpers()),ee&&(N3(fr,32),ee=!1),fr}function ge(){switch(T=void 0,W=void 0,V=void 0,R?.kind){case"class":T=R.classInfo;break;case"class-element":T=R.next.classInfo,W=R.classThis,V=R.classSuper;break;case"name":let xe=R.next.next.next;xe?.kind==="class-element"&&(T=xe.next.classInfo,W=xe.classThis,V=xe.classSuper);break}}function Ie(xe){R={kind:"class",next:R,classInfo:xe,savedPendingExpressions:M},M=void 0,ge()}function _e(){pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),M=R.savedPendingExpressions,R=R.next,ge()}function Ee(xe){var fr,Je;pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},(fl(xe)||pi(xe)&&zh(xe))&&(R.classThis=(fr=R.next.classInfo)==null?void 0:fr.classThis,R.classSuper=(Je=R.next.classInfo)==null?void 0:Je.classSuper),ge()}function Ne(){var xe;pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),pe.assert(((xe=R.next)==null?void 0:xe.kind)==="class","Incorrect value for top.next.kind.",()=>{var fr;return`Expected top.next.kind to be 'class' but got '${(fr=R.next)==null?void 0:fr.kind}' instead.`}),R=R.next,ge()}function Te(){pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ge()}function Ze(){pe.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ge()}function We(){R?.kind==="other"?(pe.assert(!M),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:M},M=void 0,ge())}function Ue(){pe.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(pe.assert(!M),R.depth--):(M=R.savedPendingExpressions,R=R.next,ge())}function $e(xe){return!!(xe.transformFlags&33554432)||!!W&&!!(xe.transformFlags&16384)||!!W&&!!V&&!!(xe.transformFlags&134217728)}function Ye(xe){if(!$e(xe))return xe;switch(xe.kind){case 171:return pe.fail("Use `modifierVisitor` instead.");case 264:return _r(xe);case 232:return Gt(xe);case 177:case 173:case 176:return pe.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 170:return Ns(xe);case 227:return su(xe,!1);case 304:return hc(xe);case 261:return yr(xe);case 209:return hn(xe);case 278:return Pr(xe);case 110:return Ht(xe);case 249:return ks(xe);case 245:return Ic(xe);case 357:return ya(xe,!1);case 218:return Pn(xe,!1);case 356:return pt(xe,!1);case 214:return Br(xe);case 216:return mn(xe);case 225:case 226:return Zn(xe,!1);case 212:return jn(xe);case 213:return Zi(xe);case 168:return Wo(xe);case 175:case 179:case 178:case 219:case 263:{We();let fr=_s(xe,Tt,s);return Ue(),fr}default:return _s(xe,Tt,s)}}function Tt(xe){switch(xe.kind){case 171:return;default:return Ye(xe)}}function ot(xe){switch(xe.kind){case 171:return;default:return xe}}function Qe(xe){switch(xe.kind){case 177:return tr(xe);case 175:return dt(xe);case 178:return pr(xe);case 179:return st(xe);case 173:return zt(xe);case 176:return ir(xe);default:return Ye(xe)}}function mt(xe){switch(xe.kind){case 225:case 226:return Zn(xe,!0);case 227:return su(xe,!0);case 357:return ya(xe,!0);case 218:return Pn(xe,!0);default:return Ye(xe)}}function ht(xe){let fr=xe.name&&Ir(xe.name)&&!kp(xe.name)?Vo(xe.name):xe.name&&p(xe.name)&&!kp(xe.name)?Vo(xe.name).slice(1):xe.name&&Zg(xe.name)&&Uh(xe.name.text,99)?xe.name.text:xa(xe)?"class":"member";return bB(xe)&&(fr=`get_${fr}`),cv(xe)&&(fr=`set_${fr}`),xe.name&&p(xe.name)&&(fr=`private_${fr}`),cg(xe)&&(fr=`static_${fr}`),"_"+fr}function _t(xe,fr){return c.createUniqueName(`${ht(xe)}_${fr}`,24)}function Rt(xe,fr){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(xe,void 0,void 0,fr)],1))}function Lt(xe){let fr=c.createUniqueName("_metadata",48),Je,In,Hn=!1,Ot=!1,$r=!1,ri,ao,Bs;if(MJ(!1,xe)){let Ys=jt(xe.members,tn=>(pC(tn)||t0(tn))&&zh(tn));ri=c.createUniqueName("_classThis",Ys?24:48)}for(let Ys of xe.members){if(NL(Ys)&&rne(!1,Ys,xe))if(zh(Ys)){if(!In){In=c.createUniqueName("_staticExtraInitializers",48);let tn=g().createRunInitializersHelper(ri??c.createThis(),In);Hg(tn,xe.name??jD(xe)),ao??(ao=[]),ao.push(tn)}}else{if(!Je){Je=c.createUniqueName("_instanceExtraInitializers",48);let tn=g().createRunInitializersHelper(c.createThis(),Je);Hg(tn,xe.name??jD(xe)),Bs??(Bs=[]),Bs.push(tn)}Je??(Je=c.createUniqueName("_instanceExtraInitializers",48))}if(fl(Ys)?kz(Ys)||(Hn=!0):pi(Ys)&&(zh(Ys)?Hn||(Hn=!!Ys.initializer||p1(Ys)):Ot||(Ot=!VJ(Ys))),(pC(Ys)||t0(Ys))&&zh(Ys)&&($r=!0),In&&Je&&Hn&&Ot&&$r)break}return{class:xe,classThis:ri,metadataReference:fr,instanceMethodExtraInitializersName:Je,staticMethodExtraInitializersName:In,hasStaticInitializers:Hn,hasNonAmbientInstanceFields:Ot,hasStaticPrivateClassElements:$r,pendingStaticInitializers:ao,pendingInstanceInitializers:Bs}}function Ke(xe){d(),!Het(xe)&&Rx(!1,xe)&&(xe=K9e(s,xe,c.createStringLiteral("")));let fr=c.getLocalName(xe,!1,!1,!0),Je=Lt(xe),In=[],Hn,Ot,$r,ri,ao=!1,Bs=Fr(Wet(xe,!1));Bs&&(Je.classDecoratorsName=c.createUniqueName("_classDecorators",48),Je.classDescriptorName=c.createUniqueName("_classDescriptor",48),Je.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),pe.assertIsDefined(Je.classThis),In.push(Rt(Je.classDecoratorsName,c.createArrayLiteralExpression(Bs)),Rt(Je.classDescriptorName),Rt(Je.classExtraInitializersName,c.createArrayLiteralExpression()),Rt(Je.classThis)),Je.hasStaticPrivateClassElements&&(ao=!0,ee=!0));let Ys=Cne(xe.heritageClauses,96),tn=Ys&&Nc(Ys.types),wn=tn&&Mr(tn.expression,Ye,un);if(wn){Je.classSuper=c.createUniqueName("_classSuper",48);let gs=HI(wn),fs=vd(gs)&&!gs.name||UA(gs)&&!gs.name||lA(gs)?c.createComma(c.createNumericLiteral(0),wn):wn;In.push(Rt(Je.classSuper,fs));let bi=c.updateExpressionWithTypeArguments(tn,Je.classSuper,void 0),mc=c.updateHeritageClause(Ys,[bi]);ri=c.createNodeArray([mc])}let Mn=Je.classThis??c.createThis();Ie(Je),Hn=Ft(Hn,Mt(Je.metadataReference,Je.classSuper));let ci=xe.members;if(ci=Ws(ci,gs=>Tc(gs)?gs:Qe(gs),PI),ci=Ws(ci,gs=>Tc(gs)?Qe(gs):gs,PI),M){let gs;for(let fs of M){fs=Mr(fs,function mc(gg){if(!(gg.transformFlags&16384))return gg;switch(gg.kind){case 110:return gs||(gs=c.createUniqueName("_outerThis",16),In.unshift(Rt(gs,c.createThis()))),gs;default:return _s(gg,mc,s)}},un);let bi=c.createExpressionStatement(fs);Hn=Ft(Hn,bi)}M=void 0}if(_e(),jt(Je.pendingInstanceInitializers)&&!lN(xe)){let gs=nt(xe,Je);if(gs){let fs=BB(xe),bi=!!(fs&&HI(fs.expression).kind!==106),mc=[];if(bi){let Ag=c.createSpreadElement(c.createIdentifier("arguments")),_u=c.createCallExpression(c.createSuper(),void 0,[Ag]);mc.push(c.createExpressionStatement(_u))}Or(mc,gs);let gg=c.createBlock(mc,!0);$r=c.createConstructorDeclaration(void 0,[],gg)}}if(Je.staticMethodExtraInitializersName&&In.push(Rt(Je.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Je.instanceMethodExtraInitializersName&&In.push(Rt(Je.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Je.memberInfos&&Dh(Je.memberInfos,(gs,fs)=>{cg(fs)&&(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Je.memberInfos&&Dh(Je.memberInfos,(gs,fs)=>{cg(fs)||(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Hn=Or(Hn,Je.staticNonFieldDecorationStatements),Hn=Or(Hn,Je.nonStaticNonFieldDecorationStatements),Hn=Or(Hn,Je.staticFieldDecorationStatements),Hn=Or(Hn,Je.nonStaticFieldDecorationStatements),Je.classDescriptorName&&Je.classDecoratorsName&&Je.classExtraInitializersName&&Je.classThis){Hn??(Hn=[]);let gs=c.createPropertyAssignment("value",Mn),fs=c.createObjectLiteralExpression([gs]),bi=c.createAssignment(Je.classDescriptorName,fs),mc=c.createPropertyAccessExpression(Mn,"name"),gg=g().createESDecorateHelper(c.createNull(),bi,Je.classDecoratorsName,{kind:"class",name:mc,metadata:Je.metadataReference},c.createNull(),Je.classExtraInitializersName),Ag=c.createExpressionStatement(gg);Hg(Ag,jD(xe)),Hn.push(Ag);let _u=c.createPropertyAccessExpression(Je.classDescriptorName,"value"),wI=c.createAssignment(Je.classThis,_u),AI=c.createAssignment(fr,wI);Hn.push(c.createExpressionStatement(AI))}if(Hn.push(cn(Mn,Je.metadataReference)),jt(Je.pendingStaticInitializers)){for(let gs of Je.pendingStaticInitializers){let fs=c.createExpressionStatement(gs);Hg(fs,XT(gs)),Ot=Ft(Ot,fs)}Je.pendingStaticInitializers=void 0}if(Je.classExtraInitializersName){let gs=g().createRunInitializersHelper(Mn,Je.classExtraInitializersName),fs=c.createExpressionStatement(gs);Hg(fs,xe.name??jD(xe)),Ot=Ft(Ot,fs)}Hn&&Ot&&!Je.hasStaticInitializers&&(Or(Hn,Ot),Ot=void 0);let es=Hn&&c.createClassStaticBlockDeclaration(c.createBlock(Hn,!0));es&&ao&&oie(es,32);let Wi=Ot&&c.createClassStaticBlockDeclaration(c.createBlock(Ot,!0));if(es||$r||Wi){let gs=[],fs=ci.findIndex(kz);es?(Or(gs,ci,0,fs+1),gs.push(es),Or(gs,ci,fs+1)):Or(gs,ci),$r&&gs.push($r),Wi&&gs.push(Wi),ci=gn(c.createNodeArray(gs),ci)}let Vn=h(),Ui;if(Bs){Ui=c.createClassExpression(void 0,void 0,void 0,ri,ci),Je.classThis&&(Ui=POt(c,Ui,Je.classThis));let gs=c.createVariableDeclaration(fr,void 0,void 0,Ui),fs=c.createVariableDeclarationList([gs]),bi=Je.classThis?c.createAssignment(fr,Je.classThis):fr;In.push(c.createVariableStatement(void 0,fs),c.createReturnStatement(bi))}else Ui=c.createClassExpression(void 0,xe.name,void 0,ri,ci),In.push(c.createReturnStatement(Ui));if(ao){N3(Ui,32);for(let gs of Ui.members)(pC(gs)||t0(gs))&&zh(gs)&&N3(gs,32)}return ua(Ui,xe),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(In,Vn))}function Pt(xe){return Rx(!1,xe)||HJ(!1,xe)}function _r(xe){if(Pt(xe)){let fr=[],Je=Dd(xe,xa)??xe,In=Je.name?c.createStringLiteralFromNode(Je.name):c.createStringLiteral("default"),Hn=Ga(xe,32),Ot=Ga(xe,2048);if(xe.name||(xe=K9e(s,xe,In)),Hn&&Ot){let $r=Ke(xe);if(xe.name){let ri=c.createVariableDeclaration(c.getLocalName(xe),void 0,void 0,$r);ua(ri,xe);let ao=c.createVariableDeclarationList([ri],1),Bs=c.createVariableStatement(void 0,ao);fr.push(Bs);let Ys=c.createExportDefault(c.getDeclarationName(xe));ua(Ys,xe),hh(Ys,DB(xe)),Hg(Ys,jD(xe)),fr.push(Ys)}else{let ri=c.createExportDefault($r);ua(ri,xe),hh(ri,DB(xe)),Hg(ri,jD(xe)),fr.push(ri)}}else{pe.assertIsDefined(xe.name,"A class declaration that is not a default export must have a name.");let $r=Ke(xe),ri=Hn?Mn=>y(Mn)?void 0:ot(Mn):ot,ao=Ws(xe.modifiers,ri,Ig),Bs=c.getLocalName(xe,!1,!0),Ys=c.createVariableDeclaration(Bs,void 0,void 0,$r);ua(Ys,xe);let tn=c.createVariableDeclarationList([Ys],1),wn=c.createVariableStatement(ao,tn);if(ua(wn,xe),hh(wn,DB(xe)),fr.push(wn),Hn){let Mn=c.createExternalModuleExport(Bs);ua(Mn,xe),fr.push(Mn)}}return ac(fr)}else{let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.heritageClauses,Ye,h1);Ie(void 0);let In=Ws(xe.members,Qe,PI);return _e(),c.updateClassDeclaration(xe,fr,xe.name,void 0,Je,In)}}function Gt(xe){if(Pt(xe)){let fr=Ke(xe);return ua(fr,xe),fr}else{let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.heritageClauses,Ye,h1);Ie(void 0);let In=Ws(xe.members,Qe,PI);return _e(),c.updateClassExpression(xe,fr,xe.name,void 0,Je,In)}}function nt(xe,fr){if(jt(fr.pendingInstanceInitializers)){let Je=[];return Je.push(c.createExpressionStatement(c.inlineExpressions(fr.pendingInstanceInitializers))),fr.pendingInstanceInitializers=void 0,Je}}function Dt(xe,fr,Je,In,Hn,Ot){let $r=In[Hn],ri=fr[$r];if(Or(xe,Ws(fr,Ye,Lc,Je,$r-Je)),mU(ri)){let ao=[];Dt(ao,ri.tryBlock.statements,0,In,Hn+1,Ot);let Bs=c.createNodeArray(ao);gn(Bs,ri.tryBlock.statements),xe.push(c.updateTryStatement(ri,c.updateBlock(ri.tryBlock,ao),Mr(ri.catchClause,Ye,iQ),Mr(ri.finallyBlock,Ye,$u)))}else Or(xe,Ws(fr,Ye,Lc,$r,1)),Or(xe,Ot);Or(xe,Ws(fr,Ye,Lc,$r+1))}function tr(xe){Ee(xe);let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.parameters,Ye,Si),In;if(xe.body&&T){let Hn=nt(T.class,T);if(Hn){let Ot=[],$r=c.copyPrologue(xe.body.statements,Ot,!1,Ye),ri=Y9e(xe.body.statements,$r);ri.length>0?Dt(Ot,xe.body.statements,$r,ri,0,Hn):(Or(Ot,Hn),Or(Ot,Ws(xe.body.statements,Ye,Lc))),In=c.createBlock(Ot,!0),ua(In,xe.body),gn(In,xe.body)}}return In??(In=Mr(xe.body,Ye,$u)),Ne(),c.updateConstructorDeclaration(xe,fr,Je,In)}function ur(xe,fr){return xe!==fr&&(hh(xe,fr),Hg(xe,jD(fr))),xe}function Gr(xe,fr,Je){let In,Hn,Ot,$r,ri,ao;if(!fr){let tn=Ws(xe.modifiers,ot,Ig);return Te(),Hn=ba(xe.name),Ze(),{modifiers:tn,referencedName:In,name:Hn,initializersName:Ot,descriptorName:ao,thisArg:ri}}let Bs=Fr(X9e(xe,fr.class,!1)),Ys=Ws(xe.modifiers,ot,Ig);if(Bs){let tn=_t(xe,"decorators"),wn=c.createArrayLiteralExpression(Bs),Mn=c.createAssignment(tn,wn),ci={memberDecoratorsName:tn};fr.memberInfos??(fr.memberInfos=new Map),fr.memberInfos.set(xe,ci),M??(M=[]),M.push(Mn);let es=NL(xe)||t0(xe)?cg(xe)?fr.staticNonFieldDecorationStatements??(fr.staticNonFieldDecorationStatements=[]):fr.nonStaticNonFieldDecorationStatements??(fr.nonStaticNonFieldDecorationStatements=[]):pi(xe)&&!t0(xe)?cg(xe)?fr.staticFieldDecorationStatements??(fr.staticFieldDecorationStatements=[]):fr.nonStaticFieldDecorationStatements??(fr.nonStaticFieldDecorationStatements=[]):pe.fail(),Wi=Bg(xe)?"getter":Dg(xe)?"setter":uu(xe)?"method":t0(xe)?"accessor":pi(xe)?"field":pe.fail(),Vn;if(Ir(xe.name)||p(xe.name))Vn={computed:!1,name:xe.name};else if(Tw(xe.name))Vn={computed:!0,name:c.createStringLiteralFromNode(xe.name)};else{let gs=xe.name.expression;Tw(gs)&&!Ir(gs)?Vn={computed:!0,name:c.createStringLiteralFromNode(gs)}:(Te(),{referencedName:In,name:Hn}=Gl(xe.name),Vn={computed:!0,name:In},Ze())}let Ui={kind:Wi,name:Vn,static:cg(xe),private:p(xe.name),access:{get:pi(xe)||Bg(xe)||uu(xe),set:pi(xe)||Dg(xe)},metadata:fr.metadataReference};if(NL(xe)){let gs=cg(xe)?fr.staticMethodExtraInitializersName:fr.instanceMethodExtraInitializersName;pe.assertIsDefined(gs);let fs;pC(xe)&&Je&&(fs=Je(xe,Ws(Ys,gg=>Gs(gg,G),Ig)),ci.memberDescriptorName=ao=_t(xe,"descriptor"),fs=c.createAssignment(ao,fs));let bi=g().createESDecorateHelper(c.createThis(),fs??c.createNull(),tn,Ui,c.createNull(),gs),mc=c.createExpressionStatement(bi);Hg(mc,jD(xe)),es.push(mc)}else if(pi(xe)){Ot=ci.memberInitializersName??(ci.memberInitializersName=_t(xe,"initializers")),$r=ci.memberExtraInitializersName??(ci.memberExtraInitializersName=_t(xe,"extraInitializers")),cg(xe)&&(ri=fr.classThis);let gs;pC(xe)&&Nw(xe)&&Je&&(gs=Je(xe,void 0),ci.memberDescriptorName=ao=_t(xe,"descriptor"),gs=c.createAssignment(ao,gs));let fs=g().createESDecorateHelper(t0(xe)?c.createThis():c.createNull(),gs??c.createNull(),tn,Ui,Ot,$r),bi=c.createExpressionStatement(fs);Hg(bi,jD(xe)),es.push(bi)}}return Hn===void 0&&(Te(),Hn=ba(xe.name),Ze()),!jt(Ys)&&(uu(xe)||pi(xe))&&ti(Hn,1024),{modifiers:Ys,referencedName:In,name:Hn,initializersName:Ot,extraInitializersName:$r,descriptorName:ao,thisArg:ri}}function dt(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,hr);if(In)return Ne(),ur(nn(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateMethodDeclaration(xe,fr,xe.asteriskToken,Je,void 0,void 0,Hn,void 0,Ot),xe)}}function pr(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,Sn);if(In)return Ne(),ur(En(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateGetAccessorDeclaration(xe,fr,Je,Hn,void 0,Ot),xe)}}function st(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,Ni);if(In)return Ne(),ur(ds(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateSetAccessorDeclaration(xe,fr,Je,Hn,Ot),xe)}}function ir(xe){Ee(xe);let fr;if(kz(xe))fr=_s(xe,Ye,s);else if(Rde(xe)){let Je=W;W=void 0,fr=_s(xe,Ye,s),W=Je}else if(xe=_s(xe,Ye,s),fr=xe,T&&(T.hasStaticInitializers=!0,jt(T.pendingStaticInitializers))){let Je=[];for(let Ot of T.pendingStaticInitializers){let $r=c.createExpressionStatement(Ot);Hg($r,XT(Ot)),Je.push($r)}let In=c.createBlock(Je,!0);fr=[c.createClassStaticBlockDeclaration(In),fr],T.pendingStaticInitializers=void 0}return Ne(),fr}function zt(xe){kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),Ee(xe),pe.assert(!VJ(xe),"Not yet implemented.");let{modifiers:fr,name:Je,initializersName:In,extraInitializersName:Hn,descriptorName:Ot,thisArg:$r}=Gr(xe,T,Nw(xe)?Gi:void 0);d();let ri=Mr(xe.initializer,Ye,un);In&&(ri=g().createRunInitializersHelper($r??c.createThis(),In,ri??c.createVoidZero())),cg(xe)&&T&&ri&&(T.hasStaticInitializers=!0);let ao=h();if(jt(ao)&&(ri=c.createImmediatelyInvokedArrowFunction([...ao,c.createReturnStatement(ri)])),T&&(cg(xe)?(ri=nr(T,!0,ri),Hn&&(T.pendingStaticInitializers??(T.pendingStaticInitializers=[]),T.pendingStaticInitializers.push(g().createRunInitializersHelper(T.classThis??c.createThis(),Hn)))):(ri=nr(T,!1,ri),Hn&&(T.pendingInstanceInitializers??(T.pendingInstanceInitializers=[]),T.pendingInstanceInitializers.push(g().createRunInitializersHelper(c.createThis(),Hn))))),Ne(),Nw(xe)&&Ot){let Bs=DB(xe),Ys=XT(xe),tn=xe.name,wn=tn,Mn=tn;if(Un(tn)&&!BN(tn.expression)){let Ui=g9e(tn);if(Ui)wn=c.updateComputedPropertyName(tn,Mr(tn.expression,Ye,un)),Mn=c.updateComputedPropertyName(tn,Ui.left);else{let gs=c.createTempVariable(_);Hg(gs,tn.expression);let fs=Mr(tn.expression,Ye,un),bi=c.createAssignment(gs,fs);Hg(bi,tn.expression),wn=c.updateComputedPropertyName(tn,bi),Mn=c.updateComputedPropertyName(tn,gs)}}let ci=Ws(fr,Ui=>Ui.kind!==129?Ui:void 0,Ig),es=Z$e(c,xe,ci,ri);ua(es,xe),ti(es,3072),Hg(es,Ys),Hg(es.name,xe.name);let Wi=En(ci,wn,Ot);ua(Wi,xe),hh(Wi,Bs),Hg(Wi,Ys);let Vn=ds(ci,Mn,Ot);return ua(Vn,xe),ti(Vn,3072),Hg(Vn,Ys),[es,Wi,Vn]}return ur(c.updatePropertyDeclaration(xe,fr,Je,void 0,void 0,ri),xe)}function Ht(xe){return W??xe}function Br(xe){if(xy(xe.expression)&&W){let fr=Mr(xe.expression,Ye,un),Je=Ws(xe.arguments,Ye,un),In=c.createFunctionCallCall(fr,W,Je);return ua(In,xe),gn(In,xe),In}return _s(xe,Ye,s)}function mn(xe){if(xy(xe.tag)&&W){let fr=Mr(xe.tag,Ye,un),Je=c.createFunctionBindCall(fr,W,[]);ua(Je,xe),gn(Je,xe);let In=Mr(xe.template,Ye,AP);return c.updateTaggedTemplateExpression(xe,Je,void 0,In)}return _s(xe,Ye,s)}function jn(xe){if(xy(xe)&&Ir(xe.name)&&W&&V){let fr=c.createStringLiteralFromNode(xe.name),Je=c.createReflectGetCall(V,fr,W);return ua(Je,xe.expression),gn(Je,xe.expression),Je}return _s(xe,Ye,s)}function Zi(xe){if(xy(xe)&&W&&V){let fr=Mr(xe.argumentExpression,Ye,un),Je=c.createReflectGetCall(V,fr,W);return ua(Je,xe.expression),gn(Je,xe.expression),Je}return _s(xe,Ye,s)}function Ns(xe){kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer)));let fr=c.updateParameterDeclaration(xe,void 0,xe.dotDotDotToken,Mr(xe.name,Ye,RL),void 0,void 0,Mr(xe.initializer,Ye,un));return fr!==xe&&(hh(fr,xe),gn(fr,Av(xe)),Hg(fr,Av(xe)),ti(fr.name,64)),fr}function An(xe){return vd(xe)&&!xe.name&&Pt(xe)}function si(xe){let fr=HI(xe);return vd(fr)&&!fr.name&&!Rx(!1,fr)}function ks(xe){return c.updateForStatement(xe,Mr(xe.initializer,mt,hE),Mr(xe.condition,Ye,un),Mr(xe.incrementor,mt,un),Py(xe.statement,Ye,s))}function Ic(xe){return _s(xe,mt,s)}function su(xe,fr){if(Dx(xe)){let Je=Tu(xe.left),In=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,Je,xe.operatorToken,In)}if(Jm(xe)){if(kb(xe,An))return xe=m1(s,xe,si(xe.right)),_s(xe,Ye,s);if(xy(xe.left)&&W&&V){let Je=Yg(xe.left)?Mr(xe.left.argumentExpression,Ye,un):Ir(xe.left.name)?c.createStringLiteralFromNode(xe.left.name):void 0;if(Je){let In=Mr(xe.right,Ye,un);if(Bde(xe.operatorToken.kind)){let Ot=Je;BN(Je)||(Ot=c.createTempVariable(_),Je=c.createAssignment(Ot,Je));let $r=c.createReflectGetCall(V,Ot,W);ua($r,xe.left),gn($r,xe.left),In=c.createBinaryExpression($r,wde(xe.operatorToken.kind),In),gn(In,xe)}let Hn=fr?void 0:c.createTempVariable(_);return Hn&&(In=c.createAssignment(Hn,In),gn(Hn,xe)),In=c.createReflectSetCall(V,Je,In,W),ua(In,xe),gn(In,xe),Hn&&(In=c.createComma(In,Hn),gn(In,xe)),In}}}if(xe.operatorToken.kind===28){let Je=Mr(xe.left,mt,un),In=Mr(xe.right,fr?mt:Ye,un);return c.updateBinaryExpression(xe,Je,xe.operatorToken,In)}return _s(xe,Ye,s)}function Zn(xe,fr){if(xe.operator===46||xe.operator===47){let Je=QA(xe.operand);if(xy(Je)&&W&&V){let In=Yg(Je)?Mr(Je.argumentExpression,Ye,un):Ir(Je.name)?c.createStringLiteralFromNode(Je.name):void 0;if(In){let Hn=In;BN(In)||(Hn=c.createTempVariable(_),In=c.createAssignment(Hn,In));let Ot=c.createReflectGetCall(V,Hn,W);ua(Ot,xe),gn(Ot,xe);let $r=fr?void 0:c.createTempVariable(_);return Ot=s9e(c,xe,Ot,_,$r),Ot=c.createReflectSetCall(V,In,Ot,W),ua(Ot,xe),gn(Ot,xe),$r&&(Ot=c.createComma(Ot,$r),gn(Ot,xe)),Ot}}}return _s(xe,Ye,s)}function ya(xe,fr){let Je=fr?GEe(xe.elements,mt):GEe(xe.elements,Ye,mt);return c.updateCommaListExpression(xe,Je)}function Gl(xe){if(Tw(xe)||p(xe)){let Ot=c.createStringLiteralFromNode(xe),$r=Mr(xe,Ye,VI);return{referencedName:Ot,name:$r}}if(Tw(xe.expression)&&!Ir(xe.expression)){let Ot=c.createStringLiteralFromNode(xe.expression),$r=Mr(xe,Ye,VI);return{referencedName:Ot,name:$r}}let fr=c.getGeneratedNameForNode(xe);_(fr);let Je=g().createPropKeyHelper(Mr(xe.expression,Ye,un)),In=c.createAssignment(fr,Je),Hn=c.updateComputedPropertyName(xe,it(In));return{referencedName:fr,name:Hn}}function ba(xe){return Un(xe)?Wo(xe):Mr(xe,Ye,VI)}function Wo(xe){let fr=Mr(xe.expression,Ye,un);return BN(fr)||(fr=it(fr)),c.updateComputedPropertyName(xe,fr)}function hc(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function yr(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function hn(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function Oi(xe){if(og(xe)||OI(xe))return Tu(xe);if(xy(xe)&&W&&V){let fr=Yg(xe)?Mr(xe.argumentExpression,Ye,un):Ir(xe.name)?c.createStringLiteralFromNode(xe.name):void 0;if(fr){let Je=c.createTempVariable(void 0),In=c.createAssignmentTargetWrapper(Je,c.createReflectSetCall(V,fr,Je,W));return ua(In,xe),gn(In,xe),In}}return _s(xe,Ye,s)}function lo(xe){if(Jm(xe,!0)){kb(xe,An)&&(xe=m1(s,xe,si(xe.right)));let fr=Oi(xe.left),Je=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,fr,xe.operatorToken,Je)}else return Oi(xe)}function pa(xe){if(D_(xe.expression)){let fr=Oi(xe.expression);return c.updateSpreadElement(xe,fr)}return _s(xe,Ye,s)}function Oa(xe){return pe.assertNode(xe,EJ),of(xe)?pa(xe):yp(xe)?_s(xe,Ye,s):lo(xe)}function tl(xe){let fr=Mr(xe.name,Ye,VI);if(Jm(xe.initializer,!0)){let Je=lo(xe.initializer);return c.updatePropertyAssignment(xe,fr,Je)}if(D_(xe.initializer)){let Je=Oi(xe.initializer);return c.updatePropertyAssignment(xe,fr,Je)}return _s(xe,Ye,s)}function Qu(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.objectAssignmentInitializer))),_s(xe,Ye,s)}function Tg(xe){if(D_(xe.expression)){let fr=Oi(xe.expression);return c.updateSpreadAssignment(xe,fr)}return _s(xe,Ye,s)}function Cs(xe){return pe.assertNode(xe,gP),Lx(xe)?Tg(xe):a0(xe)?Qu(xe):fm(xe)?tl(xe):_s(xe,Ye,s)}function Tu(xe){if(OI(xe)){let fr=Ws(xe.elements,Oa,un);return c.updateArrayLiteralExpression(xe,fr)}else{let fr=Ws(xe.properties,Cs,yw);return c.updateObjectLiteralExpression(xe,fr)}}function Pr(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.expression))),_s(xe,Ye,s)}function Pn(xe,fr){let Je=fr?mt:Ye,In=Mr(xe.expression,Je,un);return c.updateParenthesizedExpression(xe,In)}function pt(xe,fr){let Je=fr?mt:Ye,In=Mr(xe.expression,Je,un);return c.updatePartiallyEmittedExpression(xe,In)}function on(xe,fr){return jt(xe)&&(fr?gI(fr)?(xe.push(fr.expression),fr=c.updateParenthesizedExpression(fr,c.inlineExpressions(xe))):(xe.push(fr),fr=c.inlineExpressions(xe)):fr=c.inlineExpressions(xe)),fr}function it(xe){let fr=on(M,xe);return pe.assertIsDefined(fr),fr!==xe&&(M=void 0),fr}function nr(xe,fr,Je){let In=on(fr?xe.pendingStaticInitializers:xe.pendingInstanceInitializers,Je);return In!==Je&&(fr?xe.pendingStaticInitializers=void 0:xe.pendingInstanceInitializers=void 0),In}function Fr(xe){if(!xe)return;let fr=[];return Or(fr,At(xe.decorators,Kr)),fr}function Kr(xe){let fr=Mr(xe.expression,Ye,un);ti(fr,3072);let Je=HI(fr);if(_p(Je)){let{target:In,thisArg:Hn}=c.createCallBinding(fr,_,S,!0);return c.restoreOuterExpressions(fr,c.createFunctionBindCall(In,Hn,[]))}return fr}function Dn(xe,fr,Je,In,Hn,Ot,$r){let ri=c.createFunctionExpression(Je,In,void 0,void 0,Ot,void 0,$r??c.createBlock([]));ua(ri,xe),Hg(ri,jD(xe)),ti(ri,3072);let ao=Hn==="get"||Hn==="set"?Hn:void 0,Bs=c.createStringLiteralFromNode(fr,void 0),Ys=g().createSetFunctionNameHelper(ri,Bs,ao),tn=c.createPropertyAssignment(c.createIdentifier(Hn),Ys);return ua(tn,xe),Hg(tn,jD(xe)),ti(tn,3072),tn}function hr(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,xe.asteriskToken,"value",Ws(xe.parameters,Ye,Si),Mr(xe.body,Ye,$u))])}function Sn(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],Mr(xe.body,Ye,$u))])}function Ni(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"set",Ws(xe.parameters,Ye,Si),Mr(xe.body,Ye,$u))])}function Gi(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)))])),Dn(xe,xe.name,fr,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)),c.createIdentifier("value")))]))])}function nn(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Je,c.createIdentifier("value")))]))}function En(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Je,c.createIdentifier("get")),c.createThis(),[]))]))}function ds(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createSetAccessorDeclaration(xe,fr,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Je,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Mt(xe,fr){let Je=c.createVariableDeclaration(xe,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[fr?Bt(fr):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Je],2))}function cn(xe,fr){let Je=c.createObjectDefinePropertyCall(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:fr},!0));return ti(c.createIfStatement(fr,c.createExpressionStatement(Je)),1)}function Bt(xe){return c.createBinaryExpression(c.createElementAccessExpression(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function UOt(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Mg(R),W=0,V=0,M,ee,re,ge,Ie=[],_e=0,Ee=s.onEmitNode,Ne=s.onSubstituteNode;return s.onEmitNode=Ic,s.onSubstituteNode=su,rR(s,Te);function Te(yr){if(yr.isDeclarationFile)return yr;Ze(1,!1),Ze(2,!Ure(yr,R));let hn=_s(yr,Qe,s);return hN(hn,s.readEmitHelpers()),hn}function Ze(yr,hn){_e=hn?_e|yr:_e&~yr}function We(yr){return(_e&yr)!==0}function Ue(){return!We(1)}function $e(){return We(2)}function Ye(yr,hn,Oi){let lo=yr&~_e;if(lo){Ze(lo,!0);let pa=hn(Oi);return Ze(lo,!1),pa}return hn(Oi)}function Tt(yr){return _s(yr,Qe,s)}function ot(yr){switch(yr.kind){case 219:case 263:case 175:case 178:case 179:case 177:return yr;case 170:case 209:case 261:break;case 80:if(ge&&S.isArgumentsLocalBinding(yr))return ge;break}return _s(yr,ot,s)}function Qe(yr){if(!(yr.transformFlags&256))return ge?ot(yr):yr;switch(yr.kind){case 134:return;case 224:return Pt(yr);case 175:return Ye(3,Gt,yr);case 263:return Ye(3,tr,yr);case 219:return Ye(3,ur,yr);case 220:return Ye(1,Gr,yr);case 212:return ee&&jo(yr)&&yr.expression.kind===108&&ee.add(yr.name.escapedText),_s(yr,Qe,s);case 213:return ee&&yr.expression.kind===108&&(re=!0),_s(yr,Qe,s);case 178:return Ye(3,nt,yr);case 179:return Ye(3,Dt,yr);case 177:return Ye(3,_r,yr);case 264:case 232:return Ye(3,Tt,yr);default:return _s(yr,Qe,s)}}function mt(yr){if(yZe(yr))switch(yr.kind){case 244:return _t(yr);case 249:return Ke(yr);case 250:return Rt(yr);case 251:return Lt(yr);case 300:return ht(yr);case 242:case 256:case 270:case 297:case 298:case 259:case 247:case 248:case 246:case 255:case 257:return _s(yr,mt,s);default:return pe.assertNever(yr,"Unhandled node.")}return Qe(yr)}function ht(yr){let hn=new Set;dt(yr.variableDeclaration,hn);let Oi;if(hn.forEach((lo,pa)=>{M.has(pa)&&(Oi||(Oi=new Set(M)),Oi.delete(pa))}),Oi){let lo=M;M=Oi;let pa=_s(yr,mt,s);return M=lo,pa}else return _s(yr,mt,s)}function _t(yr){if(pr(yr.declarationList)){let hn=st(yr.declarationList,!1);return hn?c.createExpressionStatement(hn):void 0}return _s(yr,Qe,s)}function Rt(yr){return c.updateForInStatement(yr,pr(yr.initializer)?st(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,hE)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,mt,s))}function Lt(yr){return c.updateForOfStatement(yr,Mr(yr.awaitModifier,Qe,U),pr(yr.initializer)?st(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,hE)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,mt,s))}function Ke(yr){let hn=yr.initializer;return c.updateForStatement(yr,pr(hn)?st(hn,!1):Mr(yr.initializer,Qe,hE),Mr(yr.condition,Qe,un),Mr(yr.incrementor,Qe,un),Py(yr.statement,mt,s))}function Pt(yr){return Ue()?_s(yr,Qe,s):ua(gn(c.createYieldExpression(void 0,Mr(yr.expression,Qe,un)),yr),yr)}function _r(yr){let hn=ge;ge=void 0;let Oi=c.updateConstructorDeclaration(yr,Ws(yr.modifiers,Qe,Ig),vI(yr.parameters,Qe,s),mn(yr));return ge=hn,Oi}function Gt(yr){let hn,Oi=SI(yr),lo=ge;ge=void 0;let pa=c.updateMethodDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.asteriskToken,yr.name,void 0,void 0,hn=Oi&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,Oi&2?Ns(yr,hn):mn(yr));return ge=lo,pa}function nt(yr){let hn=ge;ge=void 0;let Oi=c.updateGetAccessorDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.name,vI(yr.parameters,Qe,s),void 0,mn(yr));return ge=hn,Oi}function Dt(yr){let hn=ge;ge=void 0;let Oi=c.updateSetAccessorDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.name,vI(yr.parameters,Qe,s),mn(yr));return ge=hn,Oi}function tr(yr){let hn,Oi=ge;ge=void 0;let lo=SI(yr),pa=c.updateFunctionDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.asteriskToken,yr.name,void 0,hn=lo&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,lo&2?Ns(yr,hn):uS(yr.body,Qe,s));return ge=Oi,pa}function ur(yr){let hn,Oi=ge;ge=void 0;let lo=SI(yr),pa=c.updateFunctionExpression(yr,Ws(yr.modifiers,Qe,Ig),yr.asteriskToken,yr.name,void 0,hn=lo&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,lo&2?Ns(yr,hn):uS(yr.body,Qe,s));return ge=Oi,pa}function Gr(yr){let hn,Oi=SI(yr);return c.updateArrowFunction(yr,Ws(yr.modifiers,Qe,Ig),void 0,hn=Oi&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,yr.equalsGreaterThanToken,Oi&2?Ns(yr,hn):uS(yr.body,Qe,s))}function dt({name:yr},hn){if(Ir(yr))hn.add(yr.escapedText);else for(let Oi of yr.elements)yp(Oi)||dt(Oi,hn)}function pr(yr){return!!yr&&u_(yr)&&!(yr.flags&7)&&yr.declarations.some(Br)}function st(yr,hn){ir(yr);let Oi=iU(yr);return Oi.length===0?hn?Mr(c.converters.convertToAssignmentElementTarget(yr.declarations[0].name),Qe,un):void 0:c.inlineExpressions(At(Oi,Ht))}function ir(yr){F(yr.declarations,zt)}function zt({name:yr}){if(Ir(yr))_(yr);else for(let hn of yr.elements)yp(hn)||zt(hn)}function Ht(yr){let hn=Hg(c.createAssignment(c.converters.convertToAssignmentElementTarget(yr.name),yr.initializer),yr);return pe.checkDefined(Mr(hn,Qe,un))}function Br({name:yr}){if(Ir(yr))return M.has(yr.escapedText);for(let hn of yr.elements)if(!yp(hn)&&Br(hn))return!0;return!1}function mn(yr){pe.assertIsDefined(yr.body);let hn=ee,Oi=re;ee=new Set,re=!1;let lo=uS(yr.body,Qe,s),pa=Dd(yr,kd);if(T>=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128))&&(SI(pa)&3)!==3){if(ks(),ee.size){let tl=j9e(c,S,yr,ee);Ie[rd(tl)]=!0;let Qu=lo.statements.slice();Sw(Qu,[tl]),lo=c.updateBlock(lo,Qu)}re&&(S.hasNodeCheckFlag(yr,256)?$Y(lo,DF):S.hasNodeCheckFlag(yr,128)&&$Y(lo,uie))}return ee=hn,re=Oi,lo}function jn(){pe.assert(ge);let yr=c.createVariableDeclaration(ge,void 0,void 0,c.createIdentifier("arguments")),hn=c.createVariableStatement(void 0,[yr]);return N0(hn),Gw(hn,2097152),hn}function Zi(yr){if(ZEe(yr.parameters))return vI(yr.parameters,Qe,s);let hn=[];for(let lo of yr.parameters){if(lo.initializer||lo.dotDotDotToken){if(yr.kind===220){let Oa=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));hn.push(Oa)}break}let pa=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(lo.name,8));hn.push(pa)}let Oi=c.createNodeArray(hn);return gn(Oi,yr.parameters),Oi}function Ns(yr,hn){let Oi=ZEe(yr.parameters)?void 0:vI(yr.parameters,Qe,s);d();let pa=Dd(yr,bu).type,Oa=T<2?si(pa):void 0,tl=yr.kind===220,Qu=ge,Cs=S.hasNodeCheckFlag(yr,512)&&!ge;Cs&&(ge=c.createUniqueName("arguments"));let Tu;if(Oi)if(tl){let Fr=[];pe.assert(hn.length<=yr.parameters.length);for(let Kr=0;Kr=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128));if(Kr&&(ks(),ee.size)){let hr=j9e(c,S,yr,ee);Ie[rd(hr)]=!0,Sw(Fr,[hr])}Cs&&Sw(Fr,[jn()]);let Dn=c.createBlock(Fr,!0);gn(Dn,yr.body),Kr&&re&&(S.hasNodeCheckFlag(yr,256)?$Y(Dn,DF):S.hasNodeCheckFlag(yr,128)&&$Y(Dn,uie)),nr=Dn}return M=Pr,tl||(ee=Pn,re=pt,ge=Qu),nr}function An(yr,hn){return $u(yr)?c.updateBlock(yr,Ws(yr.statements,mt,Lc,hn)):c.converters.convertToFunctionBlock(pe.checkDefined(Mr(yr,mt,r7)))}function si(yr){let hn=yr&&tne(yr);if(hn&&fC(hn)){let Oi=S.getTypeReferenceSerializationKind(hn);if(Oi===1||Oi===0)return hn}}function ks(){W&1||(W|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Ic(yr,hn,Oi){if(W&1&&Wo(hn)){let lo=(S.hasNodeCheckFlag(hn,128)?128:0)|(S.hasNodeCheckFlag(hn,256)?256:0);if(lo!==V){let pa=V;V=lo,Ee(yr,hn,Oi),V=pa;return}}else if(W&&Ie[rd(hn)]){let lo=V;V=0,Ee(yr,hn,Oi),V=lo;return}Ee(yr,hn,Oi)}function su(yr,hn){return hn=Ne(yr,hn),yr===1&&V?Zn(hn):hn}function Zn(yr){switch(yr.kind){case 212:return ya(yr);case 213:return Gl(yr);case 214:return ba(yr)}return yr}function ya(yr){return yr.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),yr.name),yr):yr}function Gl(yr){return yr.expression.kind===108?hc(yr.argumentExpression,yr):yr}function ba(yr){let hn=yr.expression;if(xy(hn)){let Oi=jo(hn)?ya(hn):Gl(hn);return c.createCallExpression(c.createPropertyAccessExpression(Oi,"call"),void 0,[c.createThis(),...yr.arguments])}return yr}function Wo(yr){let hn=yr.kind;return hn===264||hn===177||hn===175||hn===178||hn===179}function hc(yr,hn){return V&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),"value"),hn):gn(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),hn)}}function j9e(s,c,g,d){let h=c.hasNodeCheckFlag(g,256),_=[];return d.forEach((S,R)=>{let T=Bc(R),W=[];W.push(s.createPropertyAssignment("get",s.createArrowFunction(void 0,void 0,[],void 0,void 0,ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8)))),h&&W.push(s.createPropertyAssignment("set",s.createArrowFunction(void 0,void 0,[s.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,s.createAssignment(ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8),s.createIdentifier("v"))))),_.push(s.createPropertyAssignment(T,s.createObjectLiteralExpression(W)))}),s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.createUniqueName("_super",48),void 0,void 0,s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Object"),"create"),void 0,[s.createNull(),s.createObjectLiteralExpression(_,!0)]))],2))}function KOt(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Mg(R),W=s.onEmitNode;s.onEmitNode=Qu;let V=s.onSubstituteNode;s.onSubstituteNode=Tg;let M=!1,ee=0,re,ge,Ie=0,_e=0,Ee,Ne,Te,Ze,We=[];return rR(s,ot);function Ue(it,nr){return _e!==(_e&~it|nr)}function $e(it,nr){let Fr=_e;return _e=(_e&~it|nr)&3,Fr}function Ye(it){_e=it}function Tt(it){Ne=Ft(Ne,c.createVariableDeclaration(it))}function ot(it){if(it.isDeclarationFile)return it;Ee=it;let nr=Gr(it);return hN(nr,s.readEmitHelpers()),Ee=void 0,Ne=void 0,nr}function Qe(it){return Lt(it,!1)}function mt(it){return Lt(it,!0)}function ht(it){if(it.kind!==134)return it}function _t(it,nr,Fr,Kr){if(Ue(Fr,Kr)){let Dn=$e(Fr,Kr),hr=it(nr);return Ye(Dn),hr}return it(nr)}function Rt(it){return _s(it,Qe,s)}function Lt(it,nr){if(!(it.transformFlags&128))return it;switch(it.kind){case 224:return Ke(it);case 230:return Pt(it);case 254:return _r(it);case 257:return Gt(it);case 211:return Dt(it);case 227:return pr(it,nr);case 357:return st(it,nr);case 300:return ir(it);case 244:return zt(it);case 261:return Ht(it);case 247:case 248:case 250:return _t(Rt,it,0,2);case 251:return Zi(it,void 0);case 249:return _t(mn,it,0,2);case 223:return jn(it);case 177:return _t(ya,it,2,1);case 175:return _t(Wo,it,2,1);case 178:return _t(Gl,it,2,1);case 179:return _t(ba,it,2,1);case 263:return _t(hc,it,2,1);case 219:return _t(hn,it,2,1);case 220:return _t(yr,it,2,0);case 170:return su(it);case 245:return tr(it);case 218:return ur(it,nr);case 216:return dt(it);case 212:return Te&&jo(it)&&it.expression.kind===108&&Te.add(it.name.escapedText),_s(it,Qe,s);case 213:return Te&&it.expression.kind===108&&(Ze=!0),_s(it,Qe,s);case 264:case 232:return _t(Rt,it,2,1);default:return _s(it,Qe,s)}}function Ke(it){return re&2&&re&1?ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(Mr(it.expression,Qe,un))),it),it):_s(it,Qe,s)}function Pt(it){if(re&2&&re&1){if(it.asteriskToken){let nr=Mr(pe.checkDefined(it.expression),Qe,un);return ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(c.updateYieldExpression(it,it.asteriskToken,gn(g().createAsyncDelegatorHelper(gn(g().createAsyncValuesHelper(nr),nr)),nr)))),it),it)}return ua(gn(c.createYieldExpression(void 0,si(it.expression?Mr(it.expression,Qe,un):c.createVoidZero())),it),it)}return _s(it,Qe,s)}function _r(it){return re&2&&re&1?c.updateReturnStatement(it,si(it.expression?Mr(it.expression,Qe,un):c.createVoidZero())):_s(it,Qe,s)}function Gt(it){if(re&2){let nr=hye(it);return nr.kind===251&&nr.awaitModifier?Zi(nr,it):c.restoreEnclosingLabel(Mr(nr,Qe,Lc,c.liftToBlock),it)}return _s(it,Qe,s)}function nt(it){let nr,Fr=[];for(let Kr of it)if(Kr.kind===306){nr&&(Fr.push(c.createObjectLiteralExpression(nr)),nr=void 0);let Dn=Kr.expression;Fr.push(Mr(Dn,Qe,un))}else nr=Ft(nr,Kr.kind===304?c.createPropertyAssignment(Kr.name,Mr(Kr.initializer,Qe,un)):Mr(Kr,Qe,yw));return nr&&Fr.push(c.createObjectLiteralExpression(nr)),Fr}function Dt(it){if(it.transformFlags&65536){let nr=nt(it.properties);nr.length&&nr[0].kind!==211&&nr.unshift(c.createObjectLiteralExpression());let Fr=nr[0];if(nr.length>1){for(let Kr=1;Kr=2&&(S.hasNodeCheckFlag(it,256)||S.hasNodeCheckFlag(it,128));if(Ni){tl();let nn=j9e(c,S,it,Te);We[rd(nn)]=!0,Sw(Dn,[nn])}Dn.push(Sn);let Gi=c.updateBlock(it.body,Dn);return Ni&&Ze&&(S.hasNodeCheckFlag(it,256)?$Y(Gi,DF):S.hasNodeCheckFlag(it,128)&&$Y(Gi,uie)),Te=Fr,Ze=Kr,Gi}function pa(it){d();let nr=0,Fr=[],Kr=Mr(it.body,Qe,r7)??c.createBlock([]);$u(Kr)&&(nr=c.copyPrologue(Kr.statements,Fr,!1,Qe)),Or(Fr,Oa(void 0,it));let Dn=h();if(nr>0||jt(Fr)||jt(Dn)){let hr=c.converters.convertToFunctionBlock(Kr,!0);return Sw(Fr,Dn),Or(Fr,hr.statements.slice(nr)),c.updateBlock(hr,gn(c.createNodeArray(Fr),hr.statements))}return Kr}function Oa(it,nr){let Fr=!1;for(let Kr of nr.parameters)if(Fr){if(Nu(Kr.name)){if(Kr.name.elements.length>0){let Dn=uQ(Kr,Qe,s,0,c.getGeneratedNameForNode(Kr));if(jt(Dn)){let hr=c.createVariableDeclarationList(Dn),Sn=c.createVariableStatement(void 0,hr);ti(Sn,2097152),it=Ft(it,Sn)}}else if(Kr.initializer){let Dn=c.getGeneratedNameForNode(Kr),hr=Mr(Kr.initializer,Qe,un),Sn=c.createAssignment(Dn,hr),Ni=c.createExpressionStatement(Sn);ti(Ni,2097152),it=Ft(it,Ni)}}else if(Kr.initializer){let Dn=c.cloneNode(Kr.name);gn(Dn,Kr.name),ti(Dn,96);let hr=Mr(Kr.initializer,Qe,un);Gw(hr,3168);let Sn=c.createAssignment(Dn,hr);gn(Sn,Kr),ti(Sn,3072);let Ni=c.createBlock([c.createExpressionStatement(Sn)]);gn(Ni,Kr),ti(Ni,3905);let Gi=c.createTypeCheck(c.cloneNode(Kr.name),"undefined"),nn=c.createIfStatement(Gi,Ni);N0(nn),gn(nn,Kr),ti(nn,2101056),it=Ft(it,nn)}}else if(Kr.transformFlags&65536){Fr=!0;let Dn=uQ(Kr,Qe,s,1,c.getGeneratedNameForNode(Kr),!1,!0);if(jt(Dn)){let hr=c.createVariableDeclarationList(Dn),Sn=c.createVariableStatement(void 0,hr);ti(Sn,2097152),it=Ft(it,Sn)}}return it}function tl(){ee&1||(ee|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Qu(it,nr,Fr){if(ee&1&&pt(nr)){let Kr=(S.hasNodeCheckFlag(nr,128)?128:0)|(S.hasNodeCheckFlag(nr,256)?256:0);if(Kr!==Ie){let Dn=Ie;Ie=Kr,W(it,nr,Fr),Ie=Dn;return}}else if(ee&&We[rd(nr)]){let Kr=Ie;Ie=0,W(it,nr,Fr),Ie=Kr;return}W(it,nr,Fr)}function Tg(it,nr){return nr=V(it,nr),it===1&&Ie?Cs(nr):nr}function Cs(it){switch(it.kind){case 212:return Tu(it);case 213:return Pr(it);case 214:return Pn(it)}return it}function Tu(it){return it.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),it.name),it):it}function Pr(it){return it.expression.kind===108?on(it.argumentExpression,it):it}function Pn(it){let nr=it.expression;if(xy(nr)){let Fr=jo(nr)?Tu(nr):Pr(nr);return c.createCallExpression(c.createPropertyAccessExpression(Fr,"call"),void 0,[c.createThis(),...it.arguments])}return it}function pt(it){let nr=it.kind;return nr===264||nr===177||nr===175||nr===178||nr===179}function on(it,nr){return Ie&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[it]),"value"),nr):gn(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[it]),nr)}}function jOt(s){let c=s.factory;return rR(s,g);function g(_){return _.isDeclarationFile?_:_s(_,d,s)}function d(_){if(!(_.transformFlags&64))return _;switch(_.kind){case 300:return h(_);default:return _s(_,d,s)}}function h(_){return _.variableDeclaration?_s(_,d,s):c.updateCatchClause(_,c.createVariableDeclaration(c.createTempVariable(void 0)),Mr(_.block,d,$u))}}function zOt(s){let{factory:c,hoistVariableDeclaration:g}=s;return rR(s,d);function d(ge){return ge.isDeclarationFile?ge:_s(ge,h,s)}function h(ge){if(!(ge.transformFlags&32))return ge;switch(ge.kind){case 214:{let Ie=T(ge,!1);return pe.assertNotNode(Ie,_z),Ie}case 212:case 213:if(GC(ge)){let Ie=V(ge,!1,!1);return pe.assertNotNode(Ie,_z),Ie}return _s(ge,h,s);case 227:return ge.operatorToken.kind===61?ee(ge):_s(ge,h,s);case 221:return re(ge);default:return _s(ge,h,s)}}function _(ge){pe.assertNotNode(ge,hJ);let Ie=[ge];for(;!ge.questionDotToken&&!MI(ge);)ge=Ma(o2(ge.expression),GC),pe.assertNotNode(ge,hJ),Ie.unshift(ge);return{expression:ge.expression,chain:Ie}}function S(ge,Ie,_e){let Ee=W(ge.expression,Ie,_e);return _z(Ee)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ge,Ee.expression),Ee.thisArg):c.updateParenthesizedExpression(ge,Ee)}function R(ge,Ie,_e){if(GC(ge))return V(ge,Ie,_e);let Ee=Mr(ge.expression,h,un);pe.assertNotNode(Ee,_z);let Ne;return Ie&&(lQ(Ee)?Ne=Ee:(Ne=c.createTempVariable(g),Ee=c.createAssignment(Ne,Ee))),Ee=ge.kind===212?c.updatePropertyAccessExpression(ge,Ee,Mr(ge.name,h,Ir)):c.updateElementAccessExpression(ge,Ee,Mr(ge.argumentExpression,h,un)),Ne?c.createSyntheticReferenceExpression(Ee,Ne):Ee}function T(ge,Ie){if(GC(ge))return V(ge,Ie,!1);if(gI(ge.expression)&&GC(QA(ge.expression))){let _e=S(ge.expression,!0,!1),Ee=Ws(ge.arguments,h,un);return _z(_e)?gn(c.createFunctionCallCall(_e.expression,_e.thisArg,Ee),ge):c.updateCallExpression(ge,_e,void 0,Ee)}return _s(ge,h,s)}function W(ge,Ie,_e){switch(ge.kind){case 218:return S(ge,Ie,_e);case 212:case 213:return R(ge,Ie,_e);case 214:return T(ge,Ie);default:return Mr(ge,h,un)}}function V(ge,Ie,_e){let{expression:Ee,chain:Ne}=_(ge),Te=W(o2(Ee),_B(Ne[0]),!1),Ze=_z(Te)?Te.thisArg:void 0,We=_z(Te)?Te.expression:Te,Ue=c.restoreOuterExpressions(Ee,We,8);lQ(We)||(We=c.createTempVariable(g),Ue=c.createAssignment(We,Ue));let $e=We,Ye;for(let ot=0;otLt&&Or(Ke,Ws(_t.statements,M,Lc,Lt,Pt-Lt));break}Pt++}pe.assert(Pt<_t.statements.length,"Should have encountered at least one 'using' statement.");let _r=mt(),Gt=Ne(_t.statements,Pt,_t.statements.length,_r,Ke);return S.size&&Ft(Ke,c.createExportDeclaration(void 0,!1,c.createNamedExports(Do(S.values())))),Or(Ke,_()),R.length&&Ke.push(c.createVariableStatement(c.createModifiersFromModifierFlags(32),c.createVariableDeclarationList(R,1))),Or(Ke,ht(Gt,_r,Rt===2)),W&&Ke.push(c.createExportAssignment(void 0,!0,W)),c.updateSourceFile(_t,Ke)}return _s(_t,M,s)}function re(_t){let Rt=Qet(_t.statements);if(Rt){let Lt=Qtn(_t.statements),Ke=mt();return c.updateBlock(_t,[...Sde(_t.statements,M,Lc,0,Lt),...ht(Ne(_t.statements,Lt,_t.statements.length,Ke,void 0),Ke,Rt===2)])}return _s(_t,M,s)}function ge(_t){return _t.initializer&&Xtn(_t.initializer)?Mr(c.createBlock([c.createVariableStatement(void 0,_t.initializer),c.updateForStatement(_t,void 0,_t.condition,_t.incrementor,_t.statement)]),M,Lc):_s(_t,M,s)}function Ie(_t){if(Xtn(_t.initializer)){let Rt=_t.initializer,Lt=Nc(Rt.declarations)||c.createVariableDeclaration(c.createTempVariable(void 0)),Ke=e3t(Rt)===2,Pt=c.getGeneratedNameForNode(Lt.name),_r=c.updateVariableDeclaration(Lt,Lt.name,void 0,void 0,Pt),Gt=c.createVariableDeclarationList([_r],Ke?6:4),nt=c.createVariableStatement(void 0,Gt);return Mr(c.updateForOfStatement(_t,_t.awaitModifier,c.createVariableDeclarationList([c.createVariableDeclaration(Pt)],2),_t.expression,$u(_t.statement)?c.updateBlock(_t.statement,[nt,..._t.statement.statements]):c.createBlock([nt,_t.statement],!0)),M,Lc)}return _s(_t,M,s)}function _e(_t,Rt){return Qet(_t.statements)!==0?Iie(_t)?c.updateCaseClause(_t,Mr(_t.expression,M,un),Ne(_t.statements,0,_t.statements.length,Rt,void 0)):c.updateDefaultClause(_t,Ne(_t.statements,0,_t.statements.length,Rt,void 0)):_s(_t,M,s)}function Ee(_t){let Rt=jBs(_t.caseBlock.clauses);if(Rt){let Lt=mt();return ht([c.updateSwitchStatement(_t,Mr(_t.expression,M,un),c.updateCaseBlock(_t.caseBlock,_t.caseBlock.clauses.map(Ke=>_e(Ke,Lt))))],Lt,Rt===2)}return _s(_t,M,s)}function Ne(_t,Rt,Lt,Ke,Pt){let _r=[];for(let Dt=Rt;Dtc&&(c=d)}return c}function jBs(s){let c=0;for(let g of s){let d=Qet(g.statements);if(d===2)return 2;d>c&&(c=d)}return c}function r3t(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getCompilerOptions(),h,_;return rR(s,M);function S(){if(_.filenameDeclaration)return _.filenameDeclaration.name;let dt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(h.fileName));return _.filenameDeclaration=dt,_.filenameDeclaration.name}function R(dt){return d.jsx===5?"jsxDEV":dt?"jsxs":"jsx"}function T(dt){let pr=R(dt);return V(pr)}function W(){return V("Fragment")}function V(dt){var pr,st;let ir=dt==="createElement"?_.importSpecifier:Hne(_.importSpecifier,d),zt=(st=(pr=_.utilizedImplicitRuntimeImports)==null?void 0:pr.get(ir))==null?void 0:st.get(dt);if(zt)return zt.name;_.utilizedImplicitRuntimeImports||(_.utilizedImplicitRuntimeImports=new Map);let Ht=_.utilizedImplicitRuntimeImports.get(ir);Ht||(Ht=new Map,_.utilizedImplicitRuntimeImports.set(ir,Ht));let Br=c.createUniqueName(`_${dt}`,112),mn=c.createImportSpecifier(!1,c.createIdentifier(dt),Br);return HLe(Br,mn),Ht.set(dt,mn),Br}function M(dt){if(dt.isDeclarationFile)return dt;h=dt,_={},_.importSpecifier=Mne(d,dt);let pr=_s(dt,ee,s);hN(pr,s.readEmitHelpers());let st=pr.statements;if(_.filenameDeclaration&&(st=FL(st.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([_.filenameDeclaration],2)))),_.utilizedImplicitRuntimeImports){for(let[ir,zt]of Do(_.utilizedImplicitRuntimeImports.entries()))if(xm(dt)){let Ht=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports(Do(zt.values()))),c.createStringLiteral(ir),void 0);UL(Ht,!1),st=FL(st.slice(),Ht)}else if(vl(dt)){let Ht=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(Do(zt.values(),Br=>c.createBindingElement(void 0,Br.propertyName,Br.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(ir)]))],2));UL(Ht,!1),st=FL(st.slice(),Ht)}}return st!==pr.statements&&(pr=c.updateSourceFile(pr,st)),_=void 0,pr}function ee(dt){return dt.transformFlags&2?re(dt):dt}function re(dt){switch(dt.kind){case 285:return Ne(dt,!1);case 286:return Te(dt,!1);case 289:return Ze(dt,!1);case 295:return Gr(dt);default:return _s(dt,ee,s)}}function ge(dt){switch(dt.kind){case 12:return Pt(dt);case 295:return Gr(dt);case 285:return Ne(dt,!0);case 286:return Te(dt,!0);case 289:return Ze(dt,!0);default:return pe.failBadSyntaxKind(dt)}}function Ie(dt){return dt.properties.some(pr=>fm(pr)&&(Ir(pr.name)&&Vo(pr.name)==="__proto__"||Zg(pr.name)&&pr.name.text==="__proto__"))}function _e(dt){let pr=!1;for(let st of dt.attributes.properties)if(yz(st)&&(!og(st.expression)||st.expression.properties.some(Lx)))pr=!0;else if(pr&&EN(st)&&Ir(st.name)&&st.name.escapedText==="key")return!0;return!1}function Ee(dt){return _.importSpecifier===void 0||_e(dt)}function Ne(dt,pr){return(Ee(dt.openingElement)?Tt:$e)(dt.openingElement,dt.children,pr,dt)}function Te(dt,pr){return(Ee(dt)?Tt:$e)(dt,void 0,pr,dt)}function Ze(dt,pr){return(_.importSpecifier===void 0?Qe:ot)(dt.openingFragment,dt.children,pr,dt)}function We(dt){let pr=Ue(dt);return pr&&c.createObjectLiteralExpression([pr])}function Ue(dt){let pr=$J(dt);if(B(pr)===1&&!pr[0].dotDotDotToken){let ir=ge(pr[0]);return ir&&c.createPropertyAssignment("children",ir)}let st=Xt(dt,ge);return B(st)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(st)):void 0}function $e(dt,pr,st,ir){let zt=tr(dt),Ht=pr&&pr.length?Ue(pr):void 0,Br=de(dt.attributes.properties,Zi=>!!Zi.name&&Ir(Zi.name)&&Zi.name.escapedText==="key"),mn=Br?Me(dt.attributes.properties,Zi=>Zi!==Br):dt.attributes.properties,jn=B(mn)?ht(mn,Ht):c.createObjectLiteralExpression(Ht?[Ht]:E);return Ye(zt,jn,Br,pr||E,st,ir)}function Ye(dt,pr,st,ir,zt,Ht){var Br;let mn=$J(ir),jn=B(mn)>1||!!((Br=mn[0])!=null&&Br.dotDotDotToken),Zi=[dt,pr];if(st&&Zi.push(Ke(st.initializer)),d.jsx===5){let An=Dd(h);if(An&&ll(An)){st===void 0&&Zi.push(c.createVoidZero()),Zi.push(jn?c.createTrue():c.createFalse());let si=Ra(An,Ht.pos);Zi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",S()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(si.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(si.character+1))])),Zi.push(c.createThis())}}let Ns=gn(c.createCallExpression(T(jn),void 0,Zi),Ht);return zt&&N0(Ns),Ns}function Tt(dt,pr,st,ir){let zt=tr(dt),Ht=dt.attributes.properties,Br=B(Ht)?ht(Ht):c.createNull(),mn=_.importSpecifier===void 0?v$e(c,s.getEmitResolver().getJsxFactoryEntity(h),d.reactNamespace,dt):V("createElement"),jn=qPt(c,mn,zt,Br,Xt(pr,ge),ir);return st&&N0(jn),jn}function ot(dt,pr,st,ir){let zt;if(pr&&pr.length){let Ht=We(pr);Ht&&(zt=Ht)}return Ye(W(),zt||c.createObjectLiteralExpression([]),void 0,pr,st,ir)}function Qe(dt,pr,st,ir){let zt=$Pt(c,s.getEmitResolver().getJsxFactoryEntity(h),s.getEmitResolver().getJsxFragmentFactoryEntity(h),d.reactNamespace,Xt(pr,ge),dt,ir);return st&&N0(zt),zt}function mt(dt){return og(dt.expression)&&!Ie(dt.expression)?Tr(dt.expression.properties,pr=>pe.checkDefined(Mr(pr,ee,yw))):c.createSpreadAssignment(pe.checkDefined(Mr(dt.expression,ee,un)))}function ht(dt,pr){let st=Mg(d);return st&&st>=5?c.createObjectLiteralExpression(_t(dt,pr)):Rt(dt,pr)}function _t(dt,pr){let st=Nr(_n(dt,yz,(ir,zt)=>Nr(At(ir,Ht=>zt?mt(Ht):Lt(Ht)))));return pr&&st.push(pr),st}function Rt(dt,pr){let st=[],ir=[];for(let Ht of dt){if(yz(Ht)){if(og(Ht.expression)&&!Ie(Ht.expression)){for(let Br of Ht.expression.properties){if(Lx(Br)){zt(),st.push(pe.checkDefined(Mr(Br.expression,ee,un)));continue}ir.push(pe.checkDefined(Mr(Br,ee)))}continue}zt(),st.push(pe.checkDefined(Mr(Ht.expression,ee,un)));continue}ir.push(Lt(Ht))}return pr&&ir.push(pr),zt(),st.length&&!og(st[0])&&st.unshift(c.createObjectLiteralExpression()),Ps(st)||g().createAssignHelper(st);function zt(){ir.length&&(st.push(c.createObjectLiteralExpression(ir)),ir=[])}}function Lt(dt){let pr=ur(dt),st=Ke(dt.initializer);return c.createPropertyAssignment(pr,st)}function Ke(dt){if(dt===void 0)return c.createTrue();if(dt.kind===11){let pr=dt.singleQuote!==void 0?dt.singleQuote:!one(dt,h),st=c.createStringLiteral(Dt(dt.text)||dt.text,pr);return gn(st,dt)}return dt.kind===295?dt.expression===void 0?c.createTrue():pe.checkDefined(Mr(dt.expression,ee,un)):bN(dt)?Ne(dt,!1):_U(dt)?Te(dt,!1):P3(dt)?Ze(dt,!1):pe.failBadSyntaxKind(dt)}function Pt(dt){let pr=_r(dt.text);return pr===void 0?void 0:c.createStringLiteral(pr)}function _r(dt){let pr,st=0,ir=-1;for(let zt=0;zt{if(Ht)return jR(parseInt(Ht,10));if(Br)return jR(parseInt(Br,16));{let jn=zBs.get(mn);return jn?jR(jn):pr}})}function Dt(dt){let pr=nt(dt);return pr===dt?void 0:pr}function tr(dt){if(dt.kind===285)return tr(dt.openingElement);{let pr=dt.tagName;return Ir(pr)&&eU(pr.escapedText)?c.createStringLiteral(Vo(pr)):eR(pr)?c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name)):lEe(c,pr)}}function ur(dt){let pr=dt.name;if(Ir(pr)){let st=Vo(pr);return/^[A-Z_]\w*$/i.test(st)?pr:c.createStringLiteral(st)}return c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name))}function Gr(dt){let pr=Mr(dt.expression,ee,un);return dt.dotDotDotToken?c.createSpreadElement(pr):pr}}var zBs=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}));function n3t(s){let{factory:c,hoistVariableDeclaration:g}=s;return rR(s,d);function d(T){return T.isDeclarationFile?T:_s(T,h,s)}function h(T){if(!(T.transformFlags&512))return T;switch(T.kind){case 227:return _(T);default:return _s(T,h,s)}}function _(T){switch(T.operatorToken.kind){case 68:return S(T);case 43:return R(T);default:return _s(T,h,s)}}function S(T){let W,V,M=Mr(T.left,h,un),ee=Mr(T.right,h,un);if(Yg(M)){let re=c.createTempVariable(g),ge=c.createTempVariable(g);W=gn(c.createElementAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),gn(c.createAssignment(ge,M.argumentExpression),M.argumentExpression)),M),V=gn(c.createElementAccessExpression(re,ge),M)}else if(jo(M)){let re=c.createTempVariable(g);W=gn(c.createPropertyAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),M.name),M),V=gn(c.createPropertyAccessExpression(re,M.name),M)}else W=M,V=M;return gn(c.createAssignment(W,gn(c.createGlobalMethodCall("Math","pow",[V,ee]),T)),T)}function R(T){let W=Mr(T.left,h,un),V=Mr(T.right,h,un);return gn(c.createGlobalMethodCall("Math","pow",[W,V]),T)}}function Jtn(s,c){return{kind:s,expression:c}}function i3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=s.getEmitResolver(),W=s.onSubstituteNode,V=s.onEmitNode;s.onEmitNode=OC,s.onSubstituteNode=yv;let M,ee,re,ge;function Ie(at){ge=Ft(ge,c.createVariableDeclaration(at))}let _e,Ee=0;return rR(s,Ne);function Ne(at){if(at.isDeclarationFile)return at;M=at,ee=at.text;let en=ht(at);return hN(en,s.readEmitHelpers()),M=void 0,ee=void 0,ge=void 0,re=0,en}function Te(at,en){let gi=re;return re=(re&~at|en)&32767,gi}function Ze(at,en,gi){re=(re&~en|gi)&-32768|at}function We(at){return(re&8192)!==0&&at.kind===254&&!at.expression}function Ue(at){return at.transformFlags&4194304&&(I2(at)||Z3(at)||ZPt(at)||ade(at)||cde(at)||Iie(at)||lde(at)||mU(at)||iQ(at)||FP(at)||VT(at,!1)||$u(at))}function $e(at){return(at.transformFlags&1024)!==0||_e!==void 0||re&8192&&Ue(at)||VT(at,!1)&&Dl(at)||(g1(at)&1)!==0}function Ye(at){return $e(at)?mt(at,!1):at}function Tt(at){return $e(at)?mt(at,!0):at}function ot(at){if($e(at)){let en=Dd(at);if(pi(en)&&zh(en)){let gi=Te(32670,16449),_i=mt(at,!1);return Ze(gi,229376,0),_i}return mt(at,!1)}return at}function Qe(at){return at.kind===108?C2(at,!0):Ye(at)}function mt(at,en){switch(at.kind){case 126:return;case 264:return tr(at);case 232:return ur(at);case 170:return Tg(at);case 263:return En(at);case 220:return Gi(at);case 219:return nn(at);case 261:return Bs(at);case 80:return nt(at);case 262:return Ot(at);case 256:return _t(at);case 270:return Rt(at);case 242:return cn(at,!1);case 253:case 252:return Dt(at);case 257:return wn(at);case 247:case 248:return es(at,void 0);case 249:return Wi(at,void 0);case 250:return Ui(at,void 0);case 251:return gs(at,void 0);case 245:return Bt(at);case 211:return Ag(at);case 300:return Uc(at);case 305:return yf(at);case 168:return rm(at);case 210:return Gp(at);case 214:return oh(at);case 215:return m2(at);case 218:return xe(at,en);case 227:return fr(at,en);case 357:return Je(at,en);case 15:case 16:case 17:case 18:return NA(at);case 11:return uA(at);case 9:return hm(at);case 216:return af(at);case 229:return dI(at);case 230:return _h(at);case 231:return RA(at);case 108:return C2(at,!1);case 110:return _r(at);case 237:return d_(at);case 175:return xd(at);case 178:case 179:return Lg(at);case 244:return Hn(at);case 254:return Pt(at);case 223:return Gt(at);default:return _s(at,Ye,s)}}function ht(at){let en=Te(8064,64),gi=[],_i=[];d();let ys=c.copyPrologue(at.statements,gi,!1,Ye);return Or(_i,Ws(at.statements,Ye,Lc,ys)),ge&&_i.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ge))),c.mergeLexicalEnvironment(gi,_()),it(gi,at),Ze(en,0,0),c.updateSourceFile(at,gn(c.createNodeArray(Nn(gi,_i)),at.statements))}function _t(at){if(_e!==void 0){let en=_e.allowedNonLabeledJumps;_e.allowedNonLabeledJumps|=2;let gi=_s(at,Ye,s);return _e.allowedNonLabeledJumps=en,gi}return _s(at,Ye,s)}function Rt(at){let en=Te(7104,0),gi=_s(at,Ye,s);return Ze(en,0,0),gi}function Lt(at){return ua(c.createReturnStatement(Ke()),at)}function Ke(){return c.createUniqueName("_this",48)}function Pt(at){return _e?(_e.nonLocalJumps|=8,We(at)&&(at=Lt(at)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),at.expression?pe.checkDefined(Mr(at.expression,Ye,un)):c.createVoidZero())]))):We(at)?Lt(at):_s(at,Ye,s)}function _r(at){return re|=65536,re&2&&!(re&16384)&&(re|=131072),_e?re&2?(_e.containsLexicalThis=!0,at):_e.thisName||(_e.thisName=c.createUniqueName("this")):at}function Gt(at){return _s(at,Tt,s)}function nt(at){return _e&&T.isArgumentsLocalBinding(at)?_e.argumentsName||(_e.argumentsName=c.createUniqueName("arguments")):at.flags&256?ua(gn(c.createIdentifier(Bc(at.escapedText)),at),at):at}function Dt(at){if(_e){let en=at.kind===253?2:4;if(!(at.label&&_e.labels&&_e.labels.get(Vo(at.label))||!at.label&&_e.allowedNonLabeledJumps&en)){let _i,ys=at.label;ys?at.kind===253?(_i=`break-${ys.escapedText}`,mr(_e,!0,Vo(ys),_i)):(_i=`continue-${ys.escapedText}`,mr(_e,!1,Vo(ys),_i)):at.kind===253?(_e.nonLocalJumps|=2,_i="break"):(_e.nonLocalJumps|=4,_i="continue");let eo=c.createStringLiteral(_i);if(_e.loopOutParameters.length){let wa=_e.loopOutParameters,pc;for(let ul=0;ulIr(en.name)&&!en.initializer)}function Br(at){if(Dy(at))return!0;if(!(at.transformFlags&134217728))return!1;switch(at.kind){case 220:case 219:case 263:case 177:case 176:return!1;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?!!Lu(en.name,Br):!1}}return!!Lu(at,Br)}function mn(at,en,gi,_i){let ys=!!gi&&HI(gi.expression).kind!==106;if(!at)return zt(en,ys);let eo=[],wa=[];h();let pc=c.copyStandardPrologue(at.body.statements,eo,0);(_i||Br(at.body))&&(re|=8192),Or(wa,Ws(at.body.statements,Ye,Lc,pc));let ul=ys||re&8192;Tu(eo,at),on(eo,at,_i),Fr(eo,at),ul?nr(eo,at,tl()):it(eo,at),c.mergeLexicalEnvironment(eo,_()),ul&&!Oa(at.body)&&wa.push(c.createReturnStatement(Ke()));let Fe=c.createBlock(gn(c.createNodeArray([...eo,...wa]),at.body.statements),!0);return gn(Fe,at.body),pa(Fe,at.body,_i)}function jn(at){return kp(at)&&Vo(at)==="_this"}function Zi(at){return kp(at)&&Vo(at)==="_super"}function Ns(at){return Ch(at)&&at.declarationList.declarations.length===1&&An(at.declarationList.declarations[0])}function An(at){return nc(at)&&jn(at.name)&&!!at.initializer}function si(at){return Jm(at,!0)&&jn(at.left)}function ks(at){return Zl(at)&&jo(at.expression)&&Zi(at.expression.expression)&&Ir(at.expression.name)&&(Vo(at.expression.name)==="call"||Vo(at.expression.name)==="apply")&&at.arguments.length>=1&&at.arguments[0].kind===110}function Ic(at){return fo(at)&&at.operatorToken.kind===57&&at.right.kind===110&&ks(at.left)}function su(at){return fo(at)&&at.operatorToken.kind===56&&fo(at.left)&&at.left.operatorToken.kind===38&&Zi(at.left.left)&&at.left.right.kind===106&&ks(at.right)&&Vo(at.right.expression.name)==="apply"}function Zn(at){return fo(at)&&at.operatorToken.kind===57&&at.right.kind===110&&su(at.left)}function ya(at){return si(at)&&Ic(at.right)}function Gl(at){return si(at)&&Zn(at.right)}function ba(at){return ks(at)||Ic(at)||ya(at)||su(at)||Zn(at)||Gl(at)}function Wo(at){for(let en=0;en0;_i--){let ys=at.statements[_i];if(I2(ys)&&ys.expression&&jn(ys.expression)){let eo=at.statements[_i-1],wa;if(VC(eo)&&ya(HI(eo.expression)))wa=eo.expression;else if(gi&&Ns(eo)){let Fe=eo.declarationList.declarations[0];ba(HI(Fe.initializer))&&(wa=c.createAssignment(Ke(),Fe.initializer))}if(!wa)break;let pc=c.createReturnStatement(wa);ua(pc,eo),gn(pc,eo);let ul=c.createNodeArray([...at.statements.slice(0,_i-1),pc,...at.statements.slice(_i+1)]);return gn(ul,at.statements),c.updateBlock(at,ul)}}return at}function yr(at){if(Ns(at)){if(at.declarationList.declarations[0].initializer.kind===110)return}else if(si(at))return c.createPartiallyEmittedExpression(at.right,at);switch(at.kind){case 220:case 219:case 263:case 177:case 176:return at;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?c.replacePropertyName(en,_s(en.name,yr,void 0)):at}}return _s(at,yr,void 0)}function hn(at,en){if(en.transformFlags&16384||re&65536||re&131072)return at;for(let gi of en.statements)if(gi.transformFlags&134217728&&!H9e(gi))return at;return c.updateBlock(at,Ws(at.statements,yr,Lc))}function Oi(at){if(ks(at)&&at.arguments.length===2&&Ir(at.arguments[1])&&Vo(at.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(XI(),c.createNull()),at);switch(at.kind){case 220:case 219:case 263:case 177:case 176:return at;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?c.replacePropertyName(en,_s(en.name,Oi,void 0)):at}}return _s(at,Oi,void 0)}function lo(at){return c.updateBlock(at,Ws(at.statements,Oi,Lc))}function pa(at,en,gi){let _i=at;return at=Wo(at),at=hc(at,en),at!==_i&&(at=hn(at,en)),gi&&(at=lo(at)),at}function Oa(at){if(at.kind===254)return!0;if(at.kind===246){let en=at;if(en.elseStatement)return Oa(en.thenStatement)&&Oa(en.elseStatement)}else if(at.kind===242){let en=li(at.statements);if(en&&Oa(en))return!0}return!1}function tl(){return ti(c.createThis(),8)}function Qu(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(XI(),c.createNull()),c.createFunctionApplyCall(XI(),tl(),c.createIdentifier("arguments"))),tl())}function Tg(at){if(!at.dotDotDotToken)return Nu(at.name)?ua(gn(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(at),void 0,void 0,void 0),at),at):at.initializer?ua(gn(c.createParameterDeclaration(void 0,void 0,at.name,void 0,void 0,void 0),at),at):at}function Cs(at){return at.initializer!==void 0||Nu(at.name)}function Tu(at,en){if(!jt(en.parameters,Cs))return!1;let gi=!1;for(let _i of en.parameters){let{name:ys,initializer:eo,dotDotDotToken:wa}=_i;wa||(Nu(ys)?gi=Pr(at,_i,ys,eo)||gi:eo&&(Pn(at,_i,ys,eo),gi=!0))}return gi}function Pr(at,en,gi,_i){return gi.elements.length>0?(FL(at,ti(c.createVariableStatement(void 0,c.createVariableDeclarationList(uQ(en,Ye,s,0,c.getGeneratedNameForNode(en)))),2097152)),!0):_i?(FL(at,ti(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(en),pe.checkDefined(Mr(_i,Ye,un)))),2097152)),!0):!1}function Pn(at,en,gi,_i){_i=pe.checkDefined(Mr(_i,Ye,un));let ys=c.createIfStatement(c.createTypeCheck(c.cloneNode(gi),"undefined"),ti(gn(c.createBlock([c.createExpressionStatement(ti(gn(c.createAssignment(ti(XA(gn(c.cloneNode(gi),gi),gi.parent),96),ti(_i,96|tA(_i)|3072)),en),3072))]),en),3905));N0(ys),gn(ys,en),ti(ys,2101056),FL(at,ys)}function pt(at,en){return!!(at&&at.dotDotDotToken&&!en)}function on(at,en,gi){let _i=[],ys=li(en.parameters);if(!pt(ys,gi))return!1;let eo=ys.name.kind===80?XA(gn(c.cloneNode(ys.name),ys.name),ys.name.parent):c.createTempVariable(void 0);ti(eo,96);let wa=ys.name.kind===80?c.cloneNode(ys.name):eo,pc=en.parameters.length-1,ul=c.createLoopVariable();_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(eo,void 0,void 0,c.createArrayLiteralExpression([]))])),ys),2097152));let Fe=c.createForStatement(gn(c.createVariableDeclarationList([c.createVariableDeclaration(ul,void 0,void 0,c.createNumericLiteral(pc))]),ys),gn(c.createLessThan(ul,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),ys),gn(c.createPostfixIncrement(ul),ys),c.createBlock([N0(gn(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(wa,pc===0?ul:c.createSubtract(ul,c.createNumericLiteral(pc))),c.createElementAccessExpression(c.createIdentifier("arguments"),ul))),ys))]));return ti(Fe,2097152),N0(Fe),_i.push(Fe),ys.name.kind!==80&&_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList(uQ(ys,Ye,s,0,wa))),ys),2097152)),Ore(at,_i),!0}function it(at,en){return re&131072&&en.kind!==220?(nr(at,en,c.createThis()),!0):!1}function nr(at,en,gi){gy();let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ke(),void 0,void 0,gi)]));ti(_i,2100224),Hg(_i,en),FL(at,_i)}function Fr(at,en){if(re&32768){let gi;switch(en.kind){case 220:return at;case 175:case 178:case 179:gi=c.createVoidZero();break;case 177:gi=c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor");break;case 263:case 219:gi=c.createConditionalExpression(c.createLogicalAnd(ti(c.createThis(),8),c.createBinaryExpression(ti(c.createThis(),8),104,c.getLocalName(en))),void 0,c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return pe.failBadSyntaxKind(en)}let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,gi)]));ti(_i,2100224),FL(at,_i)}return at}function Kr(at,en){for(let gi of en.members)switch(gi.kind){case 241:at.push(Dn(gi));break;case 175:at.push(hr(pS(en,gi),gi,en));break;case 178:case 179:let _i=BP(en.members,gi);gi===_i.firstAccessor&&at.push(Sn(pS(en,gi),_i,en));break;case 177:case 176:break;default:pe.failBadSyntaxKind(gi,M&&M.fileName);break}}function Dn(at){return gn(c.createEmptyStatement(),at)}function hr(at,en,gi){let _i=DB(en),ys=XT(en),eo=ds(en,en,void 0,gi),wa=Mr(en.name,Ye,VI);pe.assert(wa);let pc;if(!p(wa)&&Wne(s.getCompilerOptions())){let Fe=Un(wa)?wa.expression:Ir(wa)?c.createStringLiteral(Bc(wa.escapedText)):wa;pc=c.createObjectDefinePropertyCall(at,Fe,c.createPropertyDescriptor({value:eo,enumerable:!1,writable:!0,configurable:!0}))}else{let Fe=EU(c,at,wa,en.name);pc=c.createAssignment(Fe,eo)}ti(eo,3072),Hg(eo,ys);let ul=gn(c.createExpressionStatement(pc),en);return ua(ul,en),hh(ul,_i),ti(ul,96),ul}function Sn(at,en,gi){let _i=c.createExpressionStatement(Ni(at,en,gi,!1));return ti(_i,3072),Hg(_i,XT(en.firstAccessor)),_i}function Ni(at,{firstAccessor:en,getAccessor:gi,setAccessor:_i},ys,eo){let wa=XA(gn(c.cloneNode(at),at),at.parent);ti(wa,3136),Hg(wa,en.name);let pc=Mr(en.name,Ye,VI);if(pe.assert(pc),p(pc))return pe.failBadSyntaxKind(pc,"Encountered unhandled private identifier while transforming ES2015.");let ul=w$e(c,pc);ti(ul,3104),Hg(ul,en.name);let Fe=[];if(gi){let Ln=ds(gi,void 0,void 0,ys);Hg(Ln,XT(gi)),ti(Ln,1024);let bs=c.createPropertyAssignment("get",Ln);hh(bs,DB(gi)),Fe.push(bs)}if(_i){let Ln=ds(_i,void 0,void 0,ys);Hg(Ln,XT(_i)),ti(Ln,1024);let bs=c.createPropertyAssignment("set",Ln);hh(bs,DB(_i)),Fe.push(bs)}Fe.push(c.createPropertyAssignment("enumerable",gi||_i?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let gr=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[wa,ul,c.createObjectLiteralExpression(Fe,!0)]);return eo&&N0(gr),gr}function Gi(at){at.transformFlags&16384&&!(re&16384)&&(re|=131072);let en=_e;_e=void 0;let gi=Te(15232,66),_i=c.createFunctionExpression(void 0,void 0,void 0,void 0,vI(at.parameters,Ye,s),void 0,Mt(at));return gn(_i,at),ua(_i,at),ti(_i,16),Ze(gi,0,0),_e=en,_i}function nn(at){let en=tA(at)&524288?Te(32662,69):Te(32670,65),gi=_e;_e=void 0;let _i=vI(at.parameters,Ye,s),ys=Mt(at),eo=re&32768?c.getLocalName(at):at.name;return Ze(en,229376,0),_e=gi,c.updateFunctionExpression(at,void 0,at.asteriskToken,eo,void 0,_i,void 0,ys)}function En(at){let en=_e;_e=void 0;let gi=Te(32670,65),_i=vI(at.parameters,Ye,s),ys=Mt(at),eo=re&32768?c.getLocalName(at):at.name;return Ze(gi,229376,0),_e=en,c.updateFunctionDeclaration(at,Ws(at.modifiers,Ye,Ig),at.asteriskToken,eo,void 0,_i,void 0,ys)}function ds(at,en,gi,_i){let ys=_e;_e=void 0;let eo=_i&&xa(_i)&&!cg(at)?Te(32670,73):Te(32670,65),wa=vI(at.parameters,Ye,s),pc=Mt(at);return re&32768&&!gi&&(at.kind===263||at.kind===219)&&(gi=c.getGeneratedNameForNode(at)),Ze(eo,229376,0),_e=ys,ua(gn(c.createFunctionExpression(void 0,at.asteriskToken,gi,void 0,wa,void 0,pc),en),at)}function Mt(at){let en=!1,gi=!1,_i,ys,eo=[],wa=[],pc=at.body,ul;if(h(),$u(pc)&&(ul=c.copyStandardPrologue(pc.statements,eo,0,!1),ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye,Gge),ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye,Fge)),en=Tu(wa,at)||en,en=on(wa,at,!1)||en,$u(pc))ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye),_i=pc.statements,Or(wa,Ws(pc.statements,Ye,Lc,ul)),!en&&pc.multiLine&&(en=!0);else{pe.assert(at.kind===220),_i=hAe(pc,-1);let gr=at.equalsGreaterThanToken;!sp(gr)&&!sp(pc)&&(xne(gr,pc,M)?gi=!0:en=!0);let Ln=Mr(pc,Ye,un),bs=c.createReturnStatement(Ln);gn(bs,pc),LLe(bs,pc),ti(bs,2880),wa.push(bs),ys=pc}if(c.mergeLexicalEnvironment(eo,_()),Fr(eo,at),it(eo,at),jt(eo)&&(en=!0),wa.unshift(...eo),$u(pc)&&Sc(wa,pc.statements))return pc;let Fe=c.createBlock(gn(c.createNodeArray(wa),_i),en);return gn(Fe,at.body),!en&&gi&&ti(Fe,1),ys&&jbe(Fe,20,ys),ua(Fe,at.body),Fe}function cn(at,en){if(en)return _s(at,Ye,s);let gi=re&256?Te(7104,512):Te(6976,128),_i=_s(at,Ye,s);return Ze(gi,0,0),_i}function Bt(at){return _s(at,Tt,s)}function xe(at,en){return _s(at,en?Tt:Ye,s)}function fr(at,en){return Dx(at)?TU(at,Ye,s,0,!en):at.operatorToken.kind===28?c.updateBinaryExpression(at,pe.checkDefined(Mr(at.left,Tt,un)),at.operatorToken,pe.checkDefined(Mr(at.right,en?Tt:Ye,un))):_s(at,Ye,s)}function Je(at,en){if(en)return _s(at,Tt,s);let gi;for(let ys=0;ysul.name)),pc=_i?c.createYieldExpression(c.createToken(42),ti(wa,8388608)):wa;if(eo)ys.push(c.createExpressionStatement(pc)),_f(en.loopOutParameters,1,0,ys);else{let ul=c.createUniqueName("state"),Fe=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(ul,void 0,void 0,pc)]));if(ys.push(Fe),_f(en.loopOutParameters,1,0,ys),en.nonLocalJumps&8){let gr;gi?(gi.nonLocalJumps|=8,gr=c.createReturnStatement(ul)):gr=c.createReturnStatement(c.createPropertyAccessExpression(ul,"value")),ys.push(c.createIfStatement(c.createTypeCheck(ul,"object"),gr))}if(en.nonLocalJumps&2&&ys.push(c.createIfStatement(c.createStrictEquality(ul,c.createStringLiteral("break")),c.createBreakStatement())),en.labeledNonLocalBreaks||en.labeledNonLocalContinues){let gr=[];ln(en.labeledNonLocalBreaks,!0,ul,gi,gr),ln(en.labeledNonLocalContinues,!1,ul,gi,gr),ys.push(c.createSwitchStatement(ul,c.createCaseBlock(gr)))}}return ys}function mr(at,en,gi,_i){en?(at.labeledNonLocalBreaks||(at.labeledNonLocalBreaks=new Map),at.labeledNonLocalBreaks.set(gi,_i)):(at.labeledNonLocalContinues||(at.labeledNonLocalContinues=new Map),at.labeledNonLocalContinues.set(gi,_i))}function ln(at,en,gi,_i,ys){at&&at.forEach((eo,wa)=>{let pc=[];if(!_i||_i.labels&&_i.labels.get(wa)){let ul=c.createIdentifier(wa);pc.push(en?c.createBreakStatement(ul):c.createContinueStatement(ul))}else mr(_i,en,wa,eo),pc.push(c.createReturnStatement(gi));ys.push(c.createCaseClause(c.createStringLiteral(eo),pc))})}function ni(at,en,gi,_i,ys){let eo=en.name;if(Nu(eo))for(let wa of eo.elements)yp(wa)||ni(at,wa,gi,_i,ys);else{gi.push(c.createParameterDeclaration(void 0,void 0,eo));let wa=T.hasNodeCheckFlag(en,65536);if(wa||ys){let pc=c.createUniqueName("out_"+Vo(eo)),ul=0;wa&&(ul|=1),L3(at)&&(at.initializer&&T.isBindingCapturedByNode(at.initializer,en)&&(ul|=2),(at.condition&&T.isBindingCapturedByNode(at.condition,en)||at.incrementor&&T.isBindingCapturedByNode(at.incrementor,en))&&(ul|=1)),_i.push({flags:ul,originalName:eo,outParamName:pc})}}}function Ls(at,en,gi,_i){let ys=en.properties,eo=ys.length;for(let wa=_i;waCh(Jg)&&!!ma(Jg.declarationList.declarations).initializer,_i=_e;_e=void 0;let ys=Ws(en.statements,ot,Lc);_e=_i;let eo=Me(ys,gi),wa=Me(ys,Jg=>!gi(Jg)),ul=Ma(ma(eo),Ch).declarationList.declarations[0],Fe=HI(ul.initializer),gr=Gs(Fe,Jm);!gr&&fo(Fe)&&Fe.operatorToken.kind===28&&(gr=Gs(Fe.left,Jm));let Ln=Ma(gr?HI(gr.right):Fe,Zl),bs=Ma(HI(Ln.expression),UA),Xl=bs.body.statements,eg=0,jl=-1,Eu=[];if(gr){let Jg=Gs(Xl[eg],VC);Jg&&(Eu.push(Jg),eg++),Eu.push(Xl[eg]),eg++,Eu.push(c.createExpressionStatement(c.createAssignment(gr.left,Ma(ul.name,Ir))))}for(;!I2(Cg(Xl,jl));)jl--;Or(Eu,Xl,eg,jl),jl<-1&&Or(Eu,Xl,jl+1);let Df=Gs(Cg(Xl,jl),I2);for(let Jg of wa)I2(Jg)&&Df?.expression&&!Ir(Df.expression)?Eu.push(Df):Eu.push(Jg);return Or(Eu,eo,1),c.restoreOuterExpressions(at.expression,c.restoreOuterExpressions(ul.initializer,c.restoreOuterExpressions(gr&&gr.right,c.updateCallExpression(Ln,c.restoreOuterExpressions(Ln.expression,c.updateFunctionExpression(bs,void 0,void 0,void 0,void 0,bs.parameters,void 0,c.updateBlock(bs.body,Eu))),void 0,Ln.arguments))))}function Z_(at,en){if(at.transformFlags&32768||at.expression.kind===108||xy(HI(at.expression))){let{target:gi,thisArg:_i}=c.createCallBinding(at.expression,S);at.expression.kind===108&&ti(_i,8);let ys;if(at.transformFlags&32768?ys=c.createFunctionApplyCall(pe.checkDefined(Mr(gi,Qe,un)),at.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Vb(at.arguments,!0,!1,!1)):ys=gn(c.createFunctionCallCall(pe.checkDefined(Mr(gi,Qe,un)),at.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Ws(at.arguments,Ye,un)),at),at.expression.kind===108){let eo=c.createLogicalOr(ys,tl());ys=en?c.createAssignment(Ke(),eo):eo}return ua(ys,at)}return Dy(at)&&(re|=131072),_s(at,Ye,s)}function m2(at){if(jt(at.arguments,of)){let{target:en,thisArg:gi}=c.createCallBinding(c.createPropertyAccessExpression(at.expression,"bind"),S);return c.createNewExpression(c.createFunctionApplyCall(pe.checkDefined(Mr(en,Ye,un)),gi,Vb(c.createNodeArray([c.createVoidZero(),...at.arguments]),!0,!1,!1)),void 0,[])}return _s(at,Ye,s)}function Vb(at,en,gi,_i){let ys=at.length,eo=Nr(_n(at,or,(Fe,gr,Ln,bs)=>gr(Fe,gi,_i&&bs===ys)));if(eo.length===1){let Fe=eo[0];if(en&&!R.downlevelIteration||Fbe(Fe.expression)||qD(Fe.expression,"___spreadArray"))return Fe.expression}let wa=g(),pc=eo[0].kind!==0,ul=pc?c.createArrayLiteralExpression():eo[0].expression;for(let Fe=pc?0:1;Fe0&&_i.push(c.createStringLiteral(gi.literal.text)),en=c.createCallExpression(c.createPropertyAccessExpression(en,"concat"),void 0,_i)}return gn(en,at)}function XI(){return c.createUniqueName("_super",48)}function C2(at,en){let gi=re&8&&!en?c.createPropertyAccessExpression(ua(XI(),at),"prototype"):XI();return ua(gi,at),hh(gi,at),Hg(gi,at),gi}function d_(at){return at.keywordToken===105&&at.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):at}function OC(at,en,gi){if(Ee&1&&bu(en)){let _i=Te(32670,tA(en)&16?81:65);V(at,en,gi),Ze(_i,0,0);return}V(at,en,gi)}function E1(){Ee&2||(Ee|=2,s.enableSubstitution(80))}function gy(){Ee&1||(Ee|=1,s.enableSubstitution(110),s.enableEmitNotification(177),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(220),s.enableEmitNotification(219),s.enableEmitNotification(263))}function yv(at,en){return en=W(at,en),at===1?Ox(en):Ir(en)?ik(en):en}function ik(at){if(Ee&2&&!T$e(at)){let en=$l(at,Ir);if(en&&Wx(en))return gn(c.getGeneratedNameForNode(en),at)}return at}function Wx(at){switch(at.parent.kind){case 209:case 264:case 267:case 261:return at.parent.name===at&&T.isDeclarationWithCollidingName(at.parent)}return!1}function Ox(at){switch(at.kind){case 80:return Pb(at);case 110:return oR(at)}return at}function Pb(at){if(Ee&2&&!T$e(at)){let en=T.getReferencedDeclarationWithCollidingName(at);if(en&&!(xa(en)&&qm(en,at)))return gn(c.getGeneratedNameForNode(Il(en)),at)}return at}function qm(at,en){let gi=$l(en);if(!gi||gi===at||gi.end<=at.pos||gi.pos>=at.end)return!1;let _i=tS(at);for(;gi;){if(gi===_i||gi===at)return!1;if(PI(gi)&&gi.parent===at)return!0;gi=gi.parent}return!1}function oR(at){return Ee&1&&re&16?gn(Ke(),at):at}function pS(at,en){return cg(en)?c.getInternalName(at):c.createPropertyAccessExpression(c.getInternalName(at),"prototype")}function xN(at,en){if(!at||!en||jt(at.parameters))return!1;let gi=Nc(at.body.statements);if(!gi||!sp(gi)||gi.kind!==245)return!1;let _i=gi.expression;if(!sp(_i)||_i.kind!==214)return!1;let ys=_i.expression;if(!sp(ys)||ys.kind!==108)return!1;let eo=Ps(_i.arguments);if(!eo||!sp(eo)||eo.kind!==231)return!1;let wa=eo.expression;return Ir(wa)&&wa.escapedText==="arguments"}}function qBs(s){switch(s){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function s3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistFunctionDeclaration:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=Mg(R),W=s.getEmitResolver(),V=s.onSubstituteNode;s.onSubstituteNode=Bt;let M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We=1,Ue,$e,Ye,Tt,ot=0,Qe=0,mt,ht,_t,Rt,Lt,Ke,Pt,_r;return rR(s,Gt);function Gt(or){if(or.isDeclarationFile||!(or.transformFlags&2048))return or;let qn=_s(or,nt,s);return hN(qn,s.readEmitHelpers()),qn}function nt(or){let qn=or.transformFlags;return ge?Dt(or):re?tr(or):kd(or)&&or.asteriskToken?Gr(or):qn&2048?_s(or,nt,s):or}function Dt(or){switch(or.kind){case 247:return Qu(or);case 248:return Cs(or);case 256:return Ni(or);case 257:return nn(or);default:return tr(or)}}function tr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);case 178:case 179:return st(or);case 244:return zt(or);case 249:return Pr(or);case 250:return pt(or);case 253:return Fr(or);case 252:return it(or);case 254:return Dn(or);default:return or.transformFlags&1048576?ur(or):or.transformFlags&4196352?_s(or,nt,s):or}}function ur(or){switch(or.kind){case 227:return Ht(or);case 357:return Zi(or);case 228:return An(or);case 230:return si(or);case 210:return ks(or);case 211:return su(or);case 213:return Zn(or);case 214:return ya(or);case 215:return Gl(or);default:return _s(or,nt,s)}}function Gr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);default:return pe.failBadSyntaxKind(or)}}function dt(or){if(or.asteriskToken)or=ua(gn(c.createFunctionDeclaration(or.modifiers,void 0,or.name,void 0,vI(or.parameters,nt,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js}if(re){_(or);return}else return or}function pr(or){if(or.asteriskToken)or=ua(gn(c.createFunctionExpression(void 0,void 0,or.name,void 0,vI(or.parameters,nt,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js}return or}function st(or){let qn=re,Js=ge;return re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js,or}function ir(or){let qn=[],Js=re,Hl=ge,RA=Ie,NA=_e,uA=Ee,hm=Ne,af=Te,dI=Ze,XI=We,C2=Ue,d_=$e,OC=Ye,E1=Tt;re=!0,ge=!1,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Ze=void 0,We=1,Ue=void 0,$e=void 0,Ye=void 0,Tt=c.createTempVariable(void 0),d();let gy=c.copyPrologue(or.statements,qn,!1,nt);ba(or.statements,gy);let yv=mr();return Sw(qn,h()),qn.push(c.createReturnStatement(yv)),re=Js,ge=Hl,Ie=RA,_e=NA,Ee=uA,Ne=hm,Te=af,Ze=dI,We=XI,Ue=C2,$e=d_,Ye=OC,Tt=E1,gn(c.createBlock(qn,or.multiLine),or)}function zt(or){if(or.transformFlags&1048576){lo(or.declarationList);return}else{if(tA(or)&2097152)return or;for(let Js of or.declarationList.declarations)S(Js.name);let qn=iU(or.declarationList);return qn.length===0?void 0:Hg(c.createExpressionStatement(c.inlineExpressions(At(qn,pa))),or)}}function Ht(or){let qn=Lye(or);switch(qn){case 0:return mn(or);case 1:return Br(or);default:return pe.assertNever(qn)}}function Br(or){let{left:qn,right:Js}=or;if(Mt(Js)){let Hl;switch(qn.kind){case 212:Hl=c.updatePropertyAccessExpression(qn,Je(pe.checkDefined(Mr(qn.expression,nt,D_))),qn.name);break;case 213:Hl=c.updateElementAccessExpression(qn,Je(pe.checkDefined(Mr(qn.expression,nt,D_))),Je(pe.checkDefined(Mr(qn.argumentExpression,nt,un))));break;default:Hl=pe.checkDefined(Mr(qn,nt,un));break}let RA=or.operatorToken.kind;return Bde(RA)?gn(c.createAssignment(Hl,gn(c.createBinaryExpression(Je(Hl),wde(RA),pe.checkDefined(Mr(Js,nt,un))),or)),or):c.updateBinaryExpression(or,Hl,or.operatorToken,pe.checkDefined(Mr(Js,nt,un)))}return _s(or,nt,s)}function mn(or){return Mt(or.right)?MZe(or.operatorToken.kind)?Ns(or):or.operatorToken.kind===28?jn(or):c.updateBinaryExpression(or,Je(pe.checkDefined(Mr(or.left,nt,un))),or.operatorToken,pe.checkDefined(Mr(or.right,nt,un))):_s(or,nt,s)}function jn(or){let qn=[];return Js(or.left),Js(or.right),c.inlineExpressions(qn);function Js(Hl){fo(Hl)&&Hl.operatorToken.kind===28?(Js(Hl.left),Js(Hl.right)):(Mt(Hl)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Hl,nt,un))))}}function Zi(or){let qn=[];for(let Js of or.elements)fo(Js)&&Js.operatorToken.kind===28?qn.push(jn(Js)):(Mt(Js)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Js,nt,un))));return c.inlineExpressions(qn)}function Ns(or){let qn=Hn(),Js=In();return KA(Js,pe.checkDefined(Mr(or.left,nt,un)),or.left),or.operatorToken.kind===56?$d(qn,Js,or.left):oi(qn,Js,or.left),KA(Js,pe.checkDefined(Mr(or.right,nt,un)),or.right),Ot(qn),Js}function An(or){if(Mt(or.whenTrue)||Mt(or.whenFalse)){let qn=Hn(),Js=Hn(),Hl=In();return $d(qn,pe.checkDefined(Mr(or.condition,nt,un)),or.condition),KA(Hl,pe.checkDefined(Mr(or.whenTrue,nt,un)),or.whenTrue),TA(Js),Ot(qn),KA(Hl,pe.checkDefined(Mr(or.whenFalse,nt,un)),or.whenFalse),Ot(Js),Hl}return _s(or,nt,s)}function si(or){let qn=Hn(),Js=Mr(or.expression,nt,un);if(or.asteriskToken){let Hl=tA(or.expression)&8388608?Js:gn(g().createValuesHelper(Js),or);YI(Hl,or)}else Fh(Js,or);return Ot(qn),dS(or)}function ks(or){return Ic(or.elements,void 0,void 0,or.multiLine)}function Ic(or,qn,Js,Hl){let RA=cn(or),NA;if(RA>0){NA=In();let af=Ws(or,nt,un,0,RA);KA(NA,c.createArrayLiteralExpression(qn?[qn,...af]:af)),qn=void 0}let uA=Ul(or,hm,[],RA);return NA?c.createArrayConcatCall(NA,[c.createArrayLiteralExpression(uA,Hl)]):gn(c.createArrayLiteralExpression(qn?[qn,...uA]:uA,Hl),Js);function hm(af,dI){if(Mt(dI)&&af.length>0){let XI=NA!==void 0;NA||(NA=In()),KA(NA,XI?c.createArrayConcatCall(NA,[c.createArrayLiteralExpression(af,Hl)]):c.createArrayLiteralExpression(qn?[qn,...af]:af,Hl)),qn=void 0,af=[]}return af.push(pe.checkDefined(Mr(dI,nt,un))),af}}function su(or){let qn=or.properties,Js=or.multiLine,Hl=cn(qn),RA=In();KA(RA,c.createObjectLiteralExpression(Ws(qn,nt,yw,0,Hl),Js));let NA=Ul(qn,uA,[],Hl);return NA.push(Js?N0(XA(gn(c.cloneNode(RA),RA),RA.parent)):RA),c.inlineExpressions(NA);function uA(hm,af){Mt(af)&&hm.length>0&&(bg(c.createExpressionStatement(c.inlineExpressions(hm))),hm=[]);let dI=eWt(c,or,af,RA),XI=Mr(dI,nt,un);return XI&&(Js&&N0(XI),hm.push(XI)),hm}}function Zn(or){return Mt(or.argumentExpression)?c.updateElementAccessExpression(or,Je(pe.checkDefined(Mr(or.expression,nt,D_))),pe.checkDefined(Mr(or.argumentExpression,nt,un))):_s(or,nt,s)}function ya(or){if(!Up(or)&&F(or.arguments,Mt)){let{target:qn,thisArg:Js}=c.createCallBinding(or.expression,S,T,!0);return ua(gn(c.createFunctionApplyCall(Je(pe.checkDefined(Mr(qn,nt,D_))),Js,Ic(or.arguments)),or),or)}return _s(or,nt,s)}function Gl(or){if(F(or.arguments,Mt)){let{target:qn,thisArg:Js}=c.createCallBinding(c.createPropertyAccessExpression(or.expression,"bind"),S);return ua(gn(c.createNewExpression(c.createFunctionApplyCall(Je(pe.checkDefined(Mr(qn,nt,un))),Js,Ic(or.arguments,c.createVoidZero())),void 0,[]),or),or)}return _s(or,nt,s)}function ba(or,qn=0){let Js=or.length;for(let Hl=qn;Hl0)break;RA.push(pa(uA))}RA.length&&(bg(c.createExpressionStatement(c.inlineExpressions(RA))),Hl+=RA.length,RA=[])}}function pa(or){return Hg(c.createAssignment(Hg(c.cloneNode(or.name),or.name),pe.checkDefined(Mr(or.initializer,nt,un))),or)}function Oa(or){if(Mt(or))if(Mt(or.thenStatement)||Mt(or.elseStatement)){let qn=Hn(),Js=or.elseStatement?Hn():void 0;$d(or.elseStatement?Js:qn,pe.checkDefined(Mr(or.expression,nt,un)),or.expression),Wo(or.thenStatement),or.elseStatement&&(TA(qn),Ot(Js),Wo(or.elseStatement)),Ot(qn)}else bg(Mr(or,nt,Lc));else bg(Mr(or,nt,Lc))}function tl(or){if(Mt(or)){let qn=Hn(),Js=Hn();Vn(qn),Ot(Js),Wo(or.statement),Ot(qn),oi(Js,pe.checkDefined(Mr(or.expression,nt,un))),Ui()}else bg(Mr(or,nt,Lc))}function Qu(or){return ge?(Wi(),or=_s(or,nt,s),Ui(),or):_s(or,nt,s)}function Tg(or){if(Mt(or)){let qn=Hn(),Js=Vn(qn);Ot(qn),$d(Js,pe.checkDefined(Mr(or.expression,nt,un))),Wo(or.statement),TA(qn),Ui()}else bg(Mr(or,nt,Lc))}function Cs(or){return ge?(Wi(),or=_s(or,nt,s),Ui(),or):_s(or,nt,s)}function Tu(or){if(Mt(or)){let qn=Hn(),Js=Hn(),Hl=Vn(Js);if(or.initializer){let RA=or.initializer;u_(RA)?lo(RA):bg(gn(c.createExpressionStatement(pe.checkDefined(Mr(RA,nt,un))),RA))}Ot(qn),or.condition&&$d(Hl,pe.checkDefined(Mr(or.condition,nt,un))),Wo(or.statement),Ot(Js),or.incrementor&&bg(gn(c.createExpressionStatement(pe.checkDefined(Mr(or.incrementor,nt,un))),or.incrementor)),TA(qn),Ui()}else bg(Mr(or,nt,Lc))}function Pr(or){ge&&Wi();let qn=or.initializer;if(qn&&u_(qn)){for(let Hl of qn.declarations)S(Hl.name);let Js=iU(qn);or=c.updateForStatement(or,Js.length>0?c.inlineExpressions(At(Js,pa)):void 0,Mr(or.condition,nt,un),Mr(or.incrementor,nt,un),Py(or.statement,nt,s))}else or=_s(or,nt,s);return ge&&Ui(),or}function Pn(or){if(Mt(or)){let qn=In(),Js=In(),Hl=In(),RA=c.createLoopVariable(),NA=or.initializer;S(RA),KA(qn,pe.checkDefined(Mr(or.expression,nt,un))),KA(Js,c.createArrayLiteralExpression()),bg(c.createForInStatement(Hl,qn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Js,"push"),void 0,[Hl])))),KA(RA,c.createNumericLiteral(0));let uA=Hn(),hm=Hn(),af=Vn(hm);Ot(uA),$d(af,c.createLessThan(RA,c.createPropertyAccessExpression(Js,"length"))),KA(Hl,c.createElementAccessExpression(Js,RA)),$d(hm,c.createBinaryExpression(Hl,103,qn));let dI;if(u_(NA)){for(let XI of NA.declarations)S(XI.name);dI=c.cloneNode(NA.declarations[0].name)}else dI=pe.checkDefined(Mr(NA,nt,un)),pe.assert(D_(dI));KA(dI,Hl),Wo(or.statement),Ot(hm),bg(c.createExpressionStatement(c.createPostfixIncrement(RA))),TA(uA),Ui()}else bg(Mr(or,nt,Lc))}function pt(or){ge&&Wi();let qn=or.initializer;if(u_(qn)){for(let Js of qn.declarations)S(Js.name);or=c.updateForInStatement(or,qn.declarations[0].name,pe.checkDefined(Mr(or.expression,nt,un)),pe.checkDefined(Mr(or.statement,nt,Lc,c.liftToBlock)))}else or=_s(or,nt,s);return ge&&Ui(),or}function on(or){let qn=yu(or.label?Vo(or.label):void 0);qn>0?TA(qn,or):bg(or)}function it(or){if(ge){let qn=yu(or.label&&Vo(or.label));if(qn>0)return Xg(qn,or)}return _s(or,nt,s)}function nr(or){let qn=Dl(or.label?Vo(or.label):void 0);qn>0?TA(qn,or):bg(or)}function Fr(or){if(ge){let qn=Dl(or.label&&Vo(or.label));if(qn>0)return Xg(qn,or)}return _s(or,nt,s)}function Kr(or){WC(Mr(or.expression,nt,un),or)}function Dn(or){return sh(Mr(or.expression,nt,un),or)}function hr(or){Mt(or)?(Ys(Je(pe.checkDefined(Mr(or.expression,nt,un)))),Wo(or.statement),tn()):bg(Mr(or,nt,Lc))}function Sn(or){if(Mt(or.caseBlock)){let qn=or.caseBlock,Js=qn.clauses.length,Hl=fs(),RA=Je(pe.checkDefined(Mr(or.expression,nt,un))),NA=[],uA=-1;for(let dI=0;dI0)break;af.push(c.createCaseClause(pe.checkDefined(Mr(C2.expression,nt,un)),[Xg(NA[XI],C2.expression)]))}else dI++}af.length&&(bg(c.createSwitchStatement(RA,c.createCaseBlock(af))),hm+=af.length,af=[]),dI>0&&(hm+=dI,dI=0)}uA>=0?TA(NA[uA]):TA(Hl);for(let dI=0;dI=0;Js--){let Hl=Ne[Js];if(wI(Hl)){if(Hl.labelText===or)return!0}else break}return!1}function Dl(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(wI(Js)&&Js.labelText===or)return Js.breakLabel;if(_u(Js)&&pp(or,qn-1))return Js.breakLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(_u(Js))return Js.breakLabel}return 0}function yu(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(AI(Js)&&pp(or,qn-1))return Js.continueLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(AI(Js))return Js.continueLabel}return 0}function tm(or){if(or!==void 0&&or>0){Ze===void 0&&(Ze=[]);let qn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Ze[or]===void 0?Ze[or]=[qn]:Ze[or].push(qn),qn}return c.createOmittedExpression()}function jp(or){let qn=c.createNumericLiteral(or);return Iz(qn,3,qBs(or)),qn}function Xg(or,qn){return pe.assertLessThan(0,or,"Invalid label"),gn(c.createReturnStatement(c.createArrayLiteralExpression([jp(3),tm(or)])),qn)}function sh(or,qn){return gn(c.createReturnStatement(c.createArrayLiteralExpression(or?[jp(2),or]:[jp(2)])),qn)}function dS(or){return gn(c.createCallExpression(c.createPropertyAccessExpression(Tt,"sent"),void 0,[]),or)}function gu(){ve(0)}function bg(or){or?ve(1,[or]):gu()}function KA(or,qn,Js){ve(2,[or,qn],Js)}function TA(or,qn){ve(3,[or],qn)}function oi(or,qn,Js){ve(4,[or,qn],Js)}function $d(or,qn,Js){ve(5,[or,qn],Js)}function YI(or,qn){ve(7,[or],qn)}function Fh(or,qn){ve(6,[or],qn)}function WC(or,qn){ve(8,[or],qn)}function _f(or,qn){ve(9,[or],qn)}function QI(){ve(10)}function ve(or,qn,Js){Ue===void 0&&(Ue=[],$e=[],Ye=[]),Te===void 0&&Ot(Hn());let Hl=Ue.length;Ue[Hl]=or,$e[Hl]=qn,Ye[Hl]=Js}function mr(){ot=0,Qe=0,mt=void 0,ht=!1,_t=!1,Rt=void 0,Lt=void 0,Ke=void 0,Pt=void 0,_r=void 0;let or=ln();return g().createGeneratorHelper(ti(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Tt)],void 0,c.createBlock(or,or.length>0)),1048576))}function ln(){if(Ue){for(let or=0;or=0;qn--){let Js=_r[qn];Lt=[c.createWithStatement(Js.expression,c.createBlock(Lt))]}if(Pt){let{startLabel:qn,catchLabel:Js,finallyLabel:Hl,endLabel:RA}=Pt;Lt.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(Tt,"trys"),"push"),void 0,[c.createArrayLiteralExpression([tm(qn),tm(Js),tm(Hl),tm(RA)])]))),Pt=void 0}or&&Lt.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(Tt,"label"),c.createNumericLiteral(Qe+1))))}Rt.push(c.createCaseClause(c.createNumericLiteral(Qe),Lt||[])),Lt=void 0}function Ss(or){if(Te)for(let qn=0;qn{(!mA(Je.arguments[0])||gne(Je.arguments[0].text,R))&&(Ee=Ft(Ee,Je))});let fr=c(M)(Bt);return Ie=void 0,_e=void 0,Te=!1,fr}function We(){return pN(Ie.fileName)&&Ie.commonJsModuleIndicator&&(!Ie.externalModuleIndicator||Ie.externalModuleIndicator===!0)?!1:!!(!_e.exportEquals&&xm(Ie))}function Ue(Bt){h();let xe=[],fr=a_(R,"alwaysStrict")||xm(Ie),Je=g.copyPrologue(Bt.statements,xe,fr&&!Zu(Bt),ht);if(We()&&Ft(xe,nr()),jt(_e.exportedNames))for(let Ot=0;Ot<_e.exportedNames.length;Ot+=50)Ft(xe,g.createExpressionStatement(Ul(_e.exportedNames.slice(Ot,Ot+50),($r,ri)=>ri.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(ri.text)),$r):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(ri))),$r),g.createVoidZero())));for(let Hn of _e.exportedFunctions)pt(xe,Hn);Ft(xe,Mr(_e.externalHelpersImportDeclaration,ht,Lc)),Or(xe,Ws(Bt.statements,ht,Lc,Je)),mt(xe,!1),Sw(xe,_());let In=g.updateSourceFile(Bt,gn(g.createNodeArray(xe),Bt.statements));return hN(In,s.readEmitHelpers()),In}function $e(Bt){let xe=g.createIdentifier("define"),fr=AEe(g,Bt,W,R),Je=Zu(Bt)&&Bt,{aliasedModuleNames:In,unaliasedModuleNames:Hn,importAliasNames:Ot}=Tt(Bt,!0),$r=g.updateSourceFile(Bt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(xe,void 0,[...fr?[fr]:[],g.createArrayLiteralExpression(Je?E:[g.createStringLiteral("require"),g.createStringLiteral("exports"),...In,...Hn]),Je?Je.statements.length?Je.statements[0].expression:g.createObjectLiteralExpression():g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Ot],void 0,Qe(Bt))]))]),Bt.statements));return hN($r,s.readEmitHelpers()),$r}function Ye(Bt){let{aliasedModuleNames:xe,unaliasedModuleNames:fr,importAliasNames:Je}=Tt(Bt,!1),In=AEe(g,Bt,W,R),Hn=g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"factory")],void 0,gn(g.createBlock([g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("module"),"object"),g.createTypeCheck(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),"object")),g.createBlock([g.createVariableStatement(void 0,[g.createVariableDeclaration("v",void 0,void 0,g.createCallExpression(g.createIdentifier("factory"),void 0,[g.createIdentifier("require"),g.createIdentifier("exports")]))]),ti(g.createIfStatement(g.createStrictInequality(g.createIdentifier("v"),g.createIdentifier("undefined")),g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),g.createIdentifier("v")))),1)]),g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("define"),"function"),g.createPropertyAccessExpression(g.createIdentifier("define"),"amd")),g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("define"),void 0,[...In?[In]:[],g.createArrayLiteralExpression([g.createStringLiteral("require"),g.createStringLiteral("exports"),...xe,...fr]),g.createIdentifier("factory")]))])))],!0),void 0)),Ot=g.updateSourceFile(Bt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(Hn,void 0,[g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Je],void 0,Qe(Bt))]))]),Bt.statements));return hN(Ot,s.readEmitHelpers()),Ot}function Tt(Bt,xe){let fr=[],Je=[],In=[];for(let Hn of Bt.amdDependencies)Hn.name?(fr.push(g.createStringLiteral(Hn.path)),In.push(g.createParameterDeclaration(void 0,void 0,Hn.name))):Je.push(g.createStringLiteral(Hn.path));for(let Hn of _e.externalImports){let Ot=Ez(g,Hn,Ie,W,T,R),$r=bie(g,Hn,Ie);Ot&&(xe&&$r?(ti($r,8),fr.push(Ot),In.push(g.createParameterDeclaration(void 0,void 0,$r))):Je.push(Ot))}return{aliasedModuleNames:fr,unaliasedModuleNames:Je,importAliasNames:In}}function ot(Bt){if(km(Bt)||Gh(Bt)||!Ez(g,Bt,Ie,W,T,R))return;let xe=bie(g,Bt,Ie),fr=ba(Bt,xe);if(fr!==xe)return g.createExpressionStatement(g.createAssignment(xe,fr))}function Qe(Bt){h();let xe=[],fr=g.copyPrologue(Bt.statements,xe,!0,ht);We()&&Ft(xe,nr()),jt(_e.exportedNames)&&Ft(xe,g.createExpressionStatement(Ul(_e.exportedNames,(In,Hn)=>Hn.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(Hn.text)),In):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(Hn))),In),g.createVoidZero())));for(let In of _e.exportedFunctions)pt(xe,In);Ft(xe,Mr(_e.externalHelpersImportDeclaration,ht,Lc)),M===2&&Or(xe,Xt(_e.externalImports,ot)),Or(xe,Ws(Bt.statements,ht,Lc,fr)),mt(xe,!0),Sw(xe,_());let Je=g.createBlock(xe,!0);return Te&&$Y(Je,$Bs),Je}function mt(Bt,xe){if(_e.exportEquals){let fr=Mr(_e.exportEquals.expression,Lt,un);if(fr)if(xe){let Je=g.createReturnStatement(fr);gn(Je,_e.exportEquals),ti(Je,3840),Bt.push(Je)}else{let Je=g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),fr));gn(Je,_e.exportEquals),ti(Je,3072),Bt.push(Je)}}}function ht(Bt){switch(Bt.kind){case 273:return Wo(Bt);case 272:return yr(Bt);case 279:return hn(Bt);case 278:return Oi(Bt);default:return _t(Bt)}}function _t(Bt){switch(Bt.kind){case 244:return Oa(Bt);case 263:return lo(Bt);case 264:return pa(Bt);case 249:return Gt(Bt,!0);case 250:return nt(Bt);case 251:return Dt(Bt);case 247:return tr(Bt);case 248:return ur(Bt);case 257:return Gr(Bt);case 255:return dt(Bt);case 246:return pr(Bt);case 256:return st(Bt);case 270:return ir(Bt);case 297:return zt(Bt);case 298:return Ht(Bt);case 259:return Br(Bt);case 300:return mn(Bt);case 242:return jn(Bt);default:return Lt(Bt)}}function Rt(Bt,xe){if(!(Bt.transformFlags&276828160)&&!Ee?.length)return Bt;switch(Bt.kind){case 249:return Gt(Bt,!1);case 245:return Zi(Bt);case 218:return Ns(Bt,xe);case 356:return An(Bt,xe);case 214:let fr=Bt===Nc(Ee);if(fr&&Ee.shift(),Up(Bt)&&W.shouldTransformImportCall(Ie))return Ic(Bt,fr);if(fr)return ks(Bt);break;case 227:if(Dx(Bt))return _r(Bt,xe);break;case 225:case 226:return si(Bt,xe)}return _s(Bt,Lt,s)}function Lt(Bt){return Rt(Bt,!1)}function Ke(Bt){return Rt(Bt,!0)}function Pt(Bt){if(og(Bt))for(let xe of Bt.properties)switch(xe.kind){case 304:if(Pt(xe.initializer))return!0;break;case 305:if(Pt(xe.name))return!0;break;case 306:if(Pt(xe.expression))return!0;break;case 175:case 178:case 179:return!1;default:pe.assertNever(xe,"Unhandled object member kind")}else if(OI(Bt)){for(let xe of Bt.elements)if(of(xe)){if(Pt(xe.expression))return!0}else if(Pt(xe))return!0}else if(Ir(Bt))return B(cn(Bt))>(o9e(Bt)?1:0);return!1}function _r(Bt,xe){return Pt(Bt.left)?TU(Bt,Lt,s,0,!xe,tl):_s(Bt,Lt,s)}function Gt(Bt,xe){if(xe&&Bt.initializer&&u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let fr=Pr(void 0,Bt.initializer,!1);if(fr){let Je=[],In=Mr(Bt.initializer,Ke,u_),Hn=g.createVariableStatement(void 0,In);Je.push(Hn),Or(Je,fr);let Ot=Mr(Bt.condition,Lt,un),$r=Mr(Bt.incrementor,Ke,un),ri=Py(Bt.statement,xe?_t:Lt,s);return Je.push(g.updateForStatement(Bt,void 0,Ot,$r,ri)),Je}}return g.updateForStatement(Bt,Mr(Bt.initializer,Ke,hE),Mr(Bt.condition,Lt,un),Mr(Bt.incrementor,Ke,un),Py(Bt.statement,xe?_t:Lt,s))}function nt(Bt){if(u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let xe=Pr(void 0,Bt.initializer,!0);if(jt(xe)){let fr=Mr(Bt.initializer,Ke,hE),Je=Mr(Bt.expression,Lt,un),In=Py(Bt.statement,_t,s),Hn=$u(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0);return g.updateForInStatement(Bt,fr,Je,Hn)}}return g.updateForInStatement(Bt,Mr(Bt.initializer,Ke,hE),Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function Dt(Bt){if(u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let xe=Pr(void 0,Bt.initializer,!0),fr=Mr(Bt.initializer,Ke,hE),Je=Mr(Bt.expression,Lt,un),In=Py(Bt.statement,_t,s);return jt(xe)&&(In=$u(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0)),g.updateForOfStatement(Bt,Bt.awaitModifier,fr,Je,In)}return g.updateForOfStatement(Bt,Bt.awaitModifier,Mr(Bt.initializer,Ke,hE),Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function tr(Bt){return g.updateDoStatement(Bt,Py(Bt.statement,_t,s),Mr(Bt.expression,Lt,un))}function ur(Bt){return g.updateWhileStatement(Bt,Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function Gr(Bt){return g.updateLabeledStatement(Bt,Bt.label,Mr(Bt.statement,_t,Lc,g.liftToBlock)??gn(g.createEmptyStatement(),Bt.statement))}function dt(Bt){return g.updateWithStatement(Bt,Mr(Bt.expression,Lt,un),pe.checkDefined(Mr(Bt.statement,_t,Lc,g.liftToBlock)))}function pr(Bt){return g.updateIfStatement(Bt,Mr(Bt.expression,Lt,un),Mr(Bt.thenStatement,_t,Lc,g.liftToBlock)??g.createBlock([]),Mr(Bt.elseStatement,_t,Lc,g.liftToBlock))}function st(Bt){return g.updateSwitchStatement(Bt,Mr(Bt.expression,Lt,un),pe.checkDefined(Mr(Bt.caseBlock,_t,cde)))}function ir(Bt){return g.updateCaseBlock(Bt,Ws(Bt.clauses,_t,RJ))}function zt(Bt){return g.updateCaseClause(Bt,Mr(Bt.expression,Lt,un),Ws(Bt.statements,_t,Lc))}function Ht(Bt){return _s(Bt,_t,s)}function Br(Bt){return _s(Bt,_t,s)}function mn(Bt){return g.updateCatchClause(Bt,Bt.variableDeclaration,pe.checkDefined(Mr(Bt.block,_t,$u)))}function jn(Bt){return Bt=_s(Bt,_t,s),Bt}function Zi(Bt){return g.updateExpressionStatement(Bt,Mr(Bt.expression,Ke,un))}function Ns(Bt,xe){return g.updateParenthesizedExpression(Bt,Mr(Bt.expression,xe?Ke:Lt,un))}function An(Bt,xe){return g.updatePartiallyEmittedExpression(Bt,Mr(Bt.expression,xe?Ke:Lt,un))}function si(Bt,xe){if((Bt.operator===46||Bt.operator===47)&&Ir(Bt.operand)&&!kp(Bt.operand)&&!VF(Bt.operand)&&!cbe(Bt.operand)){let fr=cn(Bt.operand);if(fr){let Je,In=Mr(Bt.operand,Lt,un);T0(Bt)?In=g.updatePrefixUnaryExpression(Bt,In):(In=g.updatePostfixUnaryExpression(Bt,In),xe||(Je=g.createTempVariable(S),In=g.createAssignment(Je,In),gn(In,Bt)),In=g.createComma(In,g.cloneNode(Bt.operand)),gn(In,Bt));for(let Hn of fr)Ne[rd(In)]=!0,In=Kr(Hn,In),gn(In,Bt);return Je&&(Ne[rd(In)]=!0,In=g.createComma(In,Je),gn(In,Bt)),In}}return _s(Bt,Lt,s)}function ks(Bt){return g.updateCallExpression(Bt,Bt.expression,void 0,Ws(Bt.arguments,xe=>xe===Bt.arguments[0]?mA(xe)?Nz(xe,R):d().createRewriteRelativeImportExtensionsHelper(xe):Lt(xe),un))}function Ic(Bt,xe){if(M===0&&V>=7)return _s(Bt,Lt,s);let fr=Ez(g,Bt,Ie,W,T,R),Je=Mr(Nc(Bt.arguments),Lt,un),In=fr&&(!Je||!Zg(Je)||Je.text!==fr.text)?fr:Je&&xe?Zg(Je)?Nz(Je,R):d().createRewriteRelativeImportExtensionsHelper(Je):Je,Hn=!!(Bt.transformFlags&16384);switch(R.module){case 2:return Zn(In,Hn);case 3:return su(In??g.createVoidZero(),Hn);case 1:default:return ya(In)}}function su(Bt,xe){if(Te=!0,lQ(Bt)){let fr=kp(Bt)?Bt:Zg(Bt)?g.createStringLiteralFromNode(Bt):ti(gn(g.cloneNode(Bt),Bt),3072);return g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(Bt),void 0,Zn(fr,xe))}else{let fr=g.createTempVariable(S);return g.createComma(g.createAssignment(fr,Bt),g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(fr,!0),void 0,Zn(fr,xe)))}}function Zn(Bt,xe){let fr=g.createUniqueName("resolve"),Je=g.createUniqueName("reject"),In=[g.createParameterDeclaration(void 0,void 0,fr),g.createParameterDeclaration(void 0,void 0,Je)],Hn=g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("require"),void 0,[g.createArrayLiteralExpression([Bt||g.createOmittedExpression()]),fr,Je]))]),Ot;V>=2?Ot=g.createArrowFunction(void 0,void 0,In,void 0,void 0,Hn):(Ot=g.createFunctionExpression(void 0,void 0,void 0,void 0,In,void 0,Hn),xe&&ti(Ot,16));let $r=g.createNewExpression(g.createIdentifier("Promise"),void 0,[Ot]);return kw(R)?g.createCallExpression(g.createPropertyAccessExpression($r,g.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):$r}function ya(Bt,xe){let fr=Bt&&!BN(Bt)&&!xe,Je=g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Promise"),"resolve"),void 0,fr?V>=2?[g.createTemplateExpression(g.createTemplateHead(""),[g.createTemplateSpan(Bt,g.createTemplateTail(""))])]:[g.createCallExpression(g.createPropertyAccessExpression(g.createStringLiteral(""),"concat"),void 0,[Bt])]:[]),In=g.createCallExpression(g.createIdentifier("require"),void 0,fr?[g.createIdentifier("s")]:Bt?[Bt]:[]);kw(R)&&(In=d().createImportStarHelper(In));let Hn=fr?[g.createParameterDeclaration(void 0,void 0,"s")]:[],Ot;return V>=2?Ot=g.createArrowFunction(void 0,void 0,Hn,void 0,void 0,In):Ot=g.createFunctionExpression(void 0,void 0,void 0,void 0,Hn,void 0,g.createBlock([g.createReturnStatement(In)])),g.createCallExpression(g.createPropertyAccessExpression(Je,"then"),void 0,[Ot])}function Gl(Bt,xe){return!kw(R)||g1(Bt)&2?xe:DOt(Bt)?d().createImportStarHelper(xe):xe}function ba(Bt,xe){return!kw(R)||g1(Bt)&2?xe:M9e(Bt)?d().createImportStarHelper(xe):Let(Bt)?d().createImportDefaultHelper(xe):xe}function Wo(Bt){let xe,fr=JJ(Bt);if(M!==2)if(Bt.importClause){let Je=[];fr&&!h3(Bt)?Je.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,ba(Bt,hc(Bt)))):(Je.push(g.createVariableDeclaration(g.getGeneratedNameForNode(Bt),void 0,void 0,ba(Bt,hc(Bt)))),fr&&h3(Bt)&&Je.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(Bt)))),xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList(Je,V>=2?2:0)),Bt),Bt))}else return ua(gn(g.createExpressionStatement(hc(Bt)),Bt),Bt);else fr&&h3(Bt)&&(xe=Ft(xe,g.createVariableStatement(void 0,g.createVariableDeclarationList([ua(gn(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(Bt)),Bt),Bt)],V>=2?2:0))));return xe=Tg(xe,Bt),ac(xe)}function hc(Bt){let xe=Ez(g,Bt,Ie,W,T,R),fr=[];return xe&&fr.push(Nz(xe,R)),g.createCallExpression(g.createIdentifier("require"),void 0,fr)}function yr(Bt){pe.assert(LL(Bt),"import= for internal module references should be handled in an earlier transformer.");let xe;return M!==2?Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(Bt.name,hc(Bt))),Bt),Bt)):xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(g.cloneNode(Bt.name),void 0,void 0,hc(Bt))],V>=2?2:0)),Bt),Bt)):Ga(Bt,32)&&(xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(g.getExportName(Bt),g.getLocalName(Bt))),Bt),Bt))),xe=Cs(xe,Bt),ac(xe)}function hn(Bt){if(!Bt.moduleSpecifier)return;let xe=g.getGeneratedNameForNode(Bt);if(Bt.exportClause&&mv(Bt.exportClause)){let fr=[];M!==2&&fr.push(ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(xe,void 0,void 0,hc(Bt))])),Bt),Bt));for(let Je of Bt.exportClause.elements){let In=Je.propertyName||Je.name,Ot=!!kw(R)&&!(g1(Bt)&2)&&lv(In)?d().createImportDefaultHelper(xe):xe,$r=In.kind===11?g.createElementAccessExpression(Ot,In):g.createPropertyAccessExpression(Ot,In);fr.push(ua(gn(g.createExpressionStatement(Kr(Je.name.kind===11?g.cloneNode(Je.name):g.getExportName(Je),$r,void 0,!0)),Je),Je))}return ac(fr)}else if(Bt.exportClause){let fr=[];return fr.push(ua(gn(g.createExpressionStatement(Kr(g.cloneNode(Bt.exportClause.name),Gl(Bt,M!==2?hc(Bt):wY(Bt)||Bt.exportClause.name.kind===11?xe:g.createIdentifier(Vo(Bt.exportClause.name))))),Bt),Bt)),ac(fr)}else return ua(gn(g.createExpressionStatement(d().createExportStarHelper(M!==2?hc(Bt):xe)),Bt),Bt)}function Oi(Bt){if(!Bt.isExportEquals)return Fr(g.createIdentifier("default"),Mr(Bt.expression,Lt,un),Bt,!0)}function lo(Bt){let xe;return Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createFunctionDeclaration(Ws(Bt.modifiers,Dn,Ig),Bt.asteriskToken,g.getDeclarationName(Bt,!0,!0),void 0,Ws(Bt.parameters,Lt,Si),void 0,_s(Bt.body,Lt,s)),Bt),Bt)):xe=Ft(xe,_s(Bt,Lt,s)),ac(xe)}function pa(Bt){let xe;return Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createClassDeclaration(Ws(Bt.modifiers,Dn,dp),g.getDeclarationName(Bt,!0,!0),void 0,Ws(Bt.heritageClauses,Lt,h1),Ws(Bt.members,Lt,PI)),Bt),Bt)):xe=Ft(xe,_s(Bt,Lt,s)),xe=pt(xe,Bt),ac(xe)}function Oa(Bt){let xe,fr,Je;if(Ga(Bt,32)){let In,Hn=!1;for(let Ot of Bt.declarationList.declarations)if(Ir(Ot.name)&&VF(Ot.name))if(In||(In=Ws(Bt.modifiers,Dn,Ig)),Ot.initializer){let $r=g.updateVariableDeclaration(Ot,Ot.name,void 0,void 0,Kr(Ot.name,Mr(Ot.initializer,Lt,un)));fr=Ft(fr,$r)}else fr=Ft(fr,Ot);else if(Ot.initializer)if(!Nu(Ot.name)&&(lA(Ot.initializer)||UA(Ot.initializer)||vd(Ot.initializer))){let $r=g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Ot.name),Ot.name),g.createIdentifier(c2(Ot.name))),ri=g.createVariableDeclaration(Ot.name,Ot.exclamationToken,Ot.type,Mr(Ot.initializer,Lt,un));fr=Ft(fr,ri),Je=Ft(Je,$r),Hn=!0}else Je=Ft(Je,Qu(Ot));if(fr&&(xe=Ft(xe,g.updateVariableStatement(Bt,In,g.updateVariableDeclarationList(Bt.declarationList,fr)))),Je){let Ot=ua(gn(g.createExpressionStatement(g.inlineExpressions(Je)),Bt),Bt);Hn&&pz(Ot),xe=Ft(xe,Ot)}}else xe=Ft(xe,_s(Bt,Lt,s));return xe=Tu(xe,Bt),ac(xe)}function tl(Bt,xe,fr){let Je=cn(Bt);if(Je){let In=o9e(Bt)?xe:g.createAssignment(Bt,xe);for(let Hn of Je)ti(In,8),In=Kr(Hn,In,fr);return In}return g.createAssignment(Bt,xe)}function Qu(Bt){return Nu(Bt.name)?TU(Mr(Bt,Lt,Gne),Lt,s,0,!1,tl):g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Bt.name),Bt.name),Bt.initializer?Mr(Bt.initializer,Lt,un):g.createVoidZero())}function Tg(Bt,xe){if(_e.exportEquals)return Bt;let fr=xe.importClause;if(!fr)return Bt;let Je=new xie;fr.name&&(Bt=on(Bt,Je,fr));let In=fr.namedBindings;if(In)switch(In.kind){case 275:Bt=on(Bt,Je,In);break;case 276:for(let Hn of In.elements)Bt=on(Bt,Je,Hn,!0);break}return Bt}function Cs(Bt,xe){return _e.exportEquals?Bt:on(Bt,new xie,xe)}function Tu(Bt,xe){return Pr(Bt,xe.declarationList,!1)}function Pr(Bt,xe,fr){if(_e.exportEquals)return Bt;for(let Je of xe.declarations)Bt=Pn(Bt,Je,fr);return Bt}function Pn(Bt,xe,fr){if(_e.exportEquals)return Bt;if(Nu(xe.name))for(let Je of xe.name.elements)yp(Je)||(Bt=Pn(Bt,Je,fr));else!kp(xe.name)&&(!nc(xe)||xe.initializer||fr)&&(Bt=on(Bt,new xie,xe));return Bt}function pt(Bt,xe){if(_e.exportEquals)return Bt;let fr=new xie;if(Ga(xe,32)){let Je=Ga(xe,2048)?g.createIdentifier("default"):g.getDeclarationName(xe);Bt=it(Bt,fr,Je,g.getLocalName(xe),xe)}return xe.name&&(Bt=on(Bt,fr,xe)),Bt}function on(Bt,xe,fr,Je){let In=g.getDeclarationName(fr),Hn=_e.exportSpecifiers.get(In);if(Hn)for(let Ot of Hn)Bt=it(Bt,xe,Ot.name,In,Ot.name,void 0,Je);return Bt}function it(Bt,xe,fr,Je,In,Hn,Ot){if(fr.kind!==11){if(xe.has(fr))return Bt;xe.set(fr,!0)}return Bt=Ft(Bt,Fr(fr,Je,In,Hn,Ot)),Bt}function nr(){let Bt=g.createExpressionStatement(g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteral("__esModule"),g.createObjectLiteralExpression([g.createPropertyAssignment("value",g.createTrue())])]));return ti(Bt,2097152),Bt}function Fr(Bt,xe,fr,Je,In){let Hn=gn(g.createExpressionStatement(Kr(Bt,xe,void 0,In)),fr);return N0(Hn),Je||ti(Hn,3072),Hn}function Kr(Bt,xe,fr,Je){return gn(Je?g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteralFromNode(Bt),g.createObjectLiteralExpression([g.createPropertyAssignment("enumerable",g.createTrue()),g.createPropertyAssignment("get",g.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,g.createBlock([g.createReturnStatement(xe)])))])]):g.createAssignment(Bt.kind===11?g.createElementAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)):g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)),xe),fr)}function Dn(Bt){switch(Bt.kind){case 95:case 90:return}return Bt}function hr(Bt,xe,fr){xe.kind===308?(Ie=xe,_e=ge[Wy(Ie)],re(Bt,xe,fr),Ie=void 0,_e=void 0):re(Bt,xe,fr)}function Sn(Bt,xe){return xe=ee(Bt,xe),xe.id&&Ne[xe.id]?xe:Bt===1?Gi(xe):a0(xe)?Ni(xe):xe}function Ni(Bt){let xe=Bt.name,fr=ds(xe);if(fr!==xe){if(Bt.objectAssignmentInitializer){let Je=g.createAssignment(fr,Bt.objectAssignmentInitializer);return gn(g.createPropertyAssignment(xe,Je),Bt)}return gn(g.createPropertyAssignment(xe,fr),Bt)}return Bt}function Gi(Bt){switch(Bt.kind){case 80:return ds(Bt);case 214:return nn(Bt);case 216:return En(Bt);case 227:return Mt(Bt)}return Bt}function nn(Bt){if(Ir(Bt.expression)){let xe=ds(Bt.expression);if(Ne[rd(xe)]=!0,!Ir(xe)&&!(tA(Bt.expression)&8192))return N3(g.updateCallExpression(Bt,xe,void 0,Bt.arguments),16)}return Bt}function En(Bt){if(Ir(Bt.tag)){let xe=ds(Bt.tag);if(Ne[rd(xe)]=!0,!Ir(xe)&&!(tA(Bt.tag)&8192))return N3(g.updateTaggedTemplateExpression(Bt,xe,void 0,Bt.template),16)}return Bt}function ds(Bt){var xe,fr;if(tA(Bt)&8192){let Je=gEe(Ie);return Je?g.createPropertyAccessExpression(Je,Bt):Bt}else if(!(kp(Bt)&&!(Bt.emitNode.autoGenerate.flags&64))&&!VF(Bt)){let Je=T.getReferencedExportContainer(Bt,o9e(Bt));if(Je&&Je.kind===308)return gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)),Bt);let In=T.getReferencedImportDeclaration(Bt);if(In){if(Vw(In))return gn(g.createPropertyAccessExpression(g.getGeneratedNameForNode(In.parent),g.createIdentifier("default")),Bt);if(uy(In)){let Hn=In.propertyName||In.name,Ot=g.getGeneratedNameForNode(((fr=(xe=In.parent)==null?void 0:xe.parent)==null?void 0:fr.parent)||In);return gn(Hn.kind===11?g.createElementAccessExpression(Ot,g.cloneNode(Hn)):g.createPropertyAccessExpression(Ot,g.cloneNode(Hn)),Bt)}}}return Bt}function Mt(Bt){if(UD(Bt.operatorToken.kind)&&Ir(Bt.left)&&(!kp(Bt.left)||fY(Bt.left))&&!VF(Bt.left)){let xe=cn(Bt.left);if(xe){let fr=Bt;for(let Je of xe)Ne[rd(fr)]=!0,fr=Kr(Je,fr,Bt);return fr}}return Bt}function cn(Bt){if(kp(Bt)){if(fY(Bt)){let xe=_e?.exportSpecifiers.get(Bt);if(xe){let fr=[];for(let Je of xe)fr.push(Je.name);return fr}}}else{let xe=T.getReferencedImportDeclaration(Bt);if(xe)return _e?.exportedBindings[Wy(xe)];let fr=new Set,Je=T.getReferencedValueDeclarations(Bt);if(Je){for(let In of Je){let Hn=_e?.exportedBindings[Wy(In)];if(Hn)for(let Ot of Hn)fr.add(Ot)}if(fr.size)return Do(fr)}}}}var $Bs={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` + var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function o3t(s){let{factory:c,startLexicalEnvironment:g,endLexicalEnvironment:d,hoistVariableDeclaration:h}=s,_=s.getCompilerOptions(),S=s.getEmitResolver(),R=s.getEmitHost(),T=s.onSubstituteNode,W=s.onEmitNode;s.onSubstituteNode=nr,s.onEmitNode=it,s.enableSubstitution(80),s.enableSubstitution(305),s.enableSubstitution(227),s.enableSubstitution(237),s.enableEmitNotification(308);let V=[],M=[],ee=[],re=[],ge,Ie,_e,Ee,Ne,Te,Ze;return rR(s,We);function We(Mt){if(Mt.isDeclarationFile||!(g3(Mt,_)||Mt.transformFlags&8388608))return Mt;let cn=Wy(Mt);ge=Mt,Te=Mt,Ie=V[cn]=Vet(s,Mt),_e=c.createUniqueName("exports"),M[cn]=_e,Ee=re[cn]=c.createUniqueName("context");let Bt=Ue(Ie.externalImports),xe=$e(Mt,Bt),fr=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,_e),c.createParameterDeclaration(void 0,void 0,Ee)],void 0,xe),Je=AEe(c,Mt,R,_),In=c.createArrayLiteralExpression(At(Bt,Ot=>Ot.name)),Hn=ti(c.updateSourceFile(Mt,gn(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Je?[Je,In,fr]:[In,fr]))]),Mt.statements)),2048);return _.outFile||WLe(Hn,xe,Ot=>!Ot.scoped),Ze&&(ee[cn]=Ze,Ze=void 0),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Hn}function Ue(Mt){let cn=new Map,Bt=[];for(let xe of Mt){let fr=Ez(c,xe,ge,R,S,_);if(fr){let Je=fr.text,In=cn.get(Je);In!==void 0?Bt[In].externalImports.push(xe):(cn.set(Je,Bt.length),Bt.push({name:fr,externalImports:[xe]}))}}return Bt}function $e(Mt,cn){let Bt=[];g();let xe=a_(_,"alwaysStrict")||xm(ge),fr=c.copyPrologue(Mt.statements,Bt,xe,Qe);Bt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Ee,c.createPropertyAccessExpression(Ee,"id")))]))),Mr(Ie.externalHelpersImportDeclaration,Qe,Lc);let Je=Ws(Mt.statements,Qe,Lc,fr);Or(Bt,Ne),Sw(Bt,d());let In=Ye(Bt),Hn=Mt.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Ot=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",ot(In,cn)),c.createPropertyAssignment("execute",c.createFunctionExpression(Hn,void 0,void 0,void 0,[],void 0,c.createBlock(Je,!0)))],!0);return Bt.push(c.createReturnStatement(Ot)),c.createBlock(Bt,!0)}function Ye(Mt){if(!Ie.hasExportStarsToExportValues)return;if(!jt(Ie.exportedNames)&&Ie.exportedFunctions.size===0&&Ie.exportSpecifiers.size===0){let fr=!1;for(let Je of Ie.externalImports)if(Je.kind===279&&Je.exportClause){fr=!0;break}if(!fr){let Je=Tt(void 0);return Mt.push(Je),Je.name}}let cn=[];if(Ie.exportedNames)for(let fr of Ie.exportedNames)lv(fr)||cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr),c.createTrue()));for(let fr of Ie.exportedFunctions)Ga(fr,2048)||(pe.assert(!!fr.name),cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr.name),c.createTrue())));let Bt=c.createUniqueName("exportedNames");Mt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Bt,void 0,void 0,c.createObjectLiteralExpression(cn,!0))])));let xe=Tt(Bt);return Mt.push(xe),xe.name}function Tt(Mt){let cn=c.createUniqueName("exportStar"),Bt=c.createIdentifier("m"),xe=c.createIdentifier("n"),fr=c.createIdentifier("exports"),Je=c.createStrictInequality(xe,c.createStringLiteral("default"));return Mt&&(Je=c.createLogicalAnd(Je,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Mt,"hasOwnProperty"),void 0,[xe])))),c.createFunctionDeclaration(void 0,void 0,cn,void 0,[c.createParameterDeclaration(void 0,void 0,Bt)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(fr,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(xe)]),Bt,c.createBlock([ti(c.createIfStatement(Je,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(fr,xe),c.createElementAccessExpression(Bt,xe)))),1)])),c.createExpressionStatement(c.createCallExpression(_e,void 0,[fr]))],!0))}function ot(Mt,cn){let Bt=[];for(let xe of cn){let fr=F(xe.externalImports,Hn=>bie(c,Hn,ge)),Je=fr?c.getGeneratedNameForNode(fr):c.createUniqueName(""),In=[];for(let Hn of xe.externalImports){let Ot=bie(c,Hn,ge);switch(Hn.kind){case 273:if(!Hn.importClause)break;case 272:pe.assert(Ot!==void 0),In.push(c.createExpressionStatement(c.createAssignment(Ot,Je))),Ga(Hn,32)&&In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(Vo(Ot)),Je])));break;case 279:if(pe.assert(Ot!==void 0),Hn.exportClause)if(mv(Hn.exportClause)){let $r=[];for(let ri of Hn.exportClause.elements)$r.push(c.createPropertyAssignment(c.createStringLiteral(HD(ri.name)),c.createElementAccessExpression(Je,c.createStringLiteral(HD(ri.propertyName||ri.name)))));In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createObjectLiteralExpression($r,!0)])))}else In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(HD(Hn.exportClause.name)),Je])));else In.push(c.createExpressionStatement(c.createCallExpression(Mt,void 0,[Je])));break}}Bt.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Je)],void 0,c.createBlock(In,!0)))}return c.createArrayLiteralExpression(Bt,!0)}function Qe(Mt){switch(Mt.kind){case 273:return mt(Mt);case 272:return _t(Mt);case 279:return ht(Mt);case 278:return Rt(Mt);default:return jn(Mt)}}function mt(Mt){let cn;return Mt.importClause&&h(bie(c,Mt,ge)),ac(Gr(cn,Mt))}function ht(Mt){pe.assertIsDefined(Mt)}function _t(Mt){pe.assert(LL(Mt),"import= for internal module references should be handled in an earlier transformer.");let cn;return h(bie(c,Mt,ge)),ac(dt(cn,Mt))}function Rt(Mt){if(Mt.isExportEquals)return;let cn=Mr(Mt.expression,Oa,un);return Br(c.createIdentifier("default"),cn,!0)}function Lt(Mt){Ga(Mt,32)?Ne=Ft(Ne,c.updateFunctionDeclaration(Mt,Ws(Mt.modifiers,on,dp),Mt.asteriskToken,c.getDeclarationName(Mt,!0,!0),void 0,Ws(Mt.parameters,Oa,Si),void 0,Mr(Mt.body,Oa,$u))):Ne=Ft(Ne,_s(Mt,Oa,s)),Ne=ir(Ne,Mt)}function Ke(Mt){let cn,Bt=c.getLocalName(Mt);return h(Bt),cn=Ft(cn,gn(c.createExpressionStatement(c.createAssignment(Bt,gn(c.createClassExpression(Ws(Mt.modifiers,on,dp),Mt.name,void 0,Ws(Mt.heritageClauses,Oa,h1),Ws(Mt.members,Oa,PI)),Mt))),Mt)),cn=ir(cn,Mt),ac(cn)}function Pt(Mt){if(!Gt(Mt.declarationList))return Mr(Mt,Oa,Lc);let cn;if(tI(Mt.declarationList)||Sd(Mt.declarationList)){let Bt=Ws(Mt.modifiers,on,dp),xe=[];for(let Je of Mt.declarationList.declarations)xe.push(c.updateVariableDeclaration(Je,c.getGeneratedNameForNode(Je.name),void 0,void 0,nt(Je,!1)));let fr=c.updateVariableDeclarationList(Mt.declarationList,xe);cn=Ft(cn,c.updateVariableStatement(Mt,Bt,fr))}else{let Bt,xe=Ga(Mt,32);for(let fr of Mt.declarationList.declarations)fr.initializer?Bt=Ft(Bt,nt(fr,xe)):_r(fr);Bt&&(cn=Ft(cn,gn(c.createExpressionStatement(c.inlineExpressions(Bt)),Mt)))}return cn=pr(cn,Mt,!1),ac(cn)}function _r(Mt){if(Nu(Mt.name))for(let cn of Mt.name.elements)yp(cn)||_r(cn);else h(c.cloneNode(Mt.name))}function Gt(Mt){return(tA(Mt)&4194304)===0&&(Te.kind===308||(Dd(Mt).flags&7)===0)}function nt(Mt,cn){let Bt=cn?Dt:tr;return Nu(Mt.name)?TU(Mt,Oa,s,0,!1,Bt):Mt.initializer?Bt(Mt.name,Mr(Mt.initializer,Oa,un)):Mt.name}function Dt(Mt,cn,Bt){return ur(Mt,cn,Bt,!0)}function tr(Mt,cn,Bt){return ur(Mt,cn,Bt,!1)}function ur(Mt,cn,Bt,xe){return h(c.cloneNode(Mt)),xe?mn(Mt,En(gn(c.createAssignment(Mt,cn),Bt))):En(gn(c.createAssignment(Mt,cn),Bt))}function Gr(Mt,cn){if(Ie.exportEquals)return Mt;let Bt=cn.importClause;if(!Bt)return Mt;Bt.name&&(Mt=zt(Mt,Bt));let xe=Bt.namedBindings;if(xe)switch(xe.kind){case 275:Mt=zt(Mt,xe);break;case 276:for(let fr of xe.elements)Mt=zt(Mt,fr);break}return Mt}function dt(Mt,cn){return Ie.exportEquals?Mt:zt(Mt,cn)}function pr(Mt,cn,Bt){if(Ie.exportEquals)return Mt;for(let xe of cn.declarationList.declarations)(xe.initializer||Bt)&&(Mt=st(Mt,xe,Bt));return Mt}function st(Mt,cn,Bt){if(Ie.exportEquals)return Mt;if(Nu(cn.name))for(let xe of cn.name.elements)yp(xe)||(Mt=st(Mt,xe,Bt));else if(!kp(cn.name)){let xe;Bt&&(Mt=Ht(Mt,cn.name,c.getLocalName(cn)),xe=Vo(cn.name)),Mt=zt(Mt,cn,xe)}return Mt}function ir(Mt,cn){if(Ie.exportEquals)return Mt;let Bt;if(Ga(cn,32)){let xe=Ga(cn,2048)?c.createStringLiteral("default"):cn.name;Mt=Ht(Mt,xe,c.getLocalName(cn)),Bt=c2(xe)}return cn.name&&(Mt=zt(Mt,cn,Bt)),Mt}function zt(Mt,cn,Bt){if(Ie.exportEquals)return Mt;let xe=c.getDeclarationName(cn),fr=Ie.exportSpecifiers.get(xe);if(fr)for(let Je of fr)HD(Je.name)!==Bt&&(Mt=Ht(Mt,Je.name,xe));return Mt}function Ht(Mt,cn,Bt,xe){return Mt=Ft(Mt,Br(cn,Bt,xe)),Mt}function Br(Mt,cn,Bt){let xe=c.createExpressionStatement(mn(Mt,cn));return N0(xe),Bt||ti(xe,3072),xe}function mn(Mt,cn){let Bt=Ir(Mt)?c.createStringLiteralFromNode(Mt):Mt;return ti(cn,tA(cn)|3072),hh(c.createCallExpression(_e,void 0,[Bt,cn]),cn)}function jn(Mt){switch(Mt.kind){case 244:return Pt(Mt);case 263:return Lt(Mt);case 264:return Ke(Mt);case 249:return Zi(Mt,!0);case 250:return Ns(Mt);case 251:return An(Mt);case 247:return Ic(Mt);case 248:return su(Mt);case 257:return Zn(Mt);case 255:return ya(Mt);case 246:return Gl(Mt);case 256:return ba(Mt);case 270:return Wo(Mt);case 297:return hc(Mt);case 298:return yr(Mt);case 259:return hn(Mt);case 300:return Oi(Mt);case 242:return lo(Mt);default:return Oa(Mt)}}function Zi(Mt,cn){let Bt=Te;return Te=Mt,Mt=c.updateForStatement(Mt,Mr(Mt.initializer,cn?ks:tl,hE),Mr(Mt.condition,Oa,un),Mr(Mt.incrementor,tl,un),Py(Mt.statement,cn?jn:Oa,s)),Te=Bt,Mt}function Ns(Mt){let cn=Te;return Te=Mt,Mt=c.updateForInStatement(Mt,ks(Mt.initializer),Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s)),Te=cn,Mt}function An(Mt){let cn=Te;return Te=Mt,Mt=c.updateForOfStatement(Mt,Mt.awaitModifier,ks(Mt.initializer),Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s)),Te=cn,Mt}function si(Mt){return u_(Mt)&&Gt(Mt)}function ks(Mt){if(si(Mt)){let cn;for(let Bt of Mt.declarations)cn=Ft(cn,nt(Bt,!1)),Bt.initializer||_r(Bt);return cn?c.inlineExpressions(cn):c.createOmittedExpression()}else return Mr(Mt,tl,hE)}function Ic(Mt){return c.updateDoStatement(Mt,Py(Mt.statement,jn,s),Mr(Mt.expression,Oa,un))}function su(Mt){return c.updateWhileStatement(Mt,Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s))}function Zn(Mt){return c.updateLabeledStatement(Mt,Mt.label,Mr(Mt.statement,jn,Lc,c.liftToBlock)??c.createExpressionStatement(c.createIdentifier("")))}function ya(Mt){return c.updateWithStatement(Mt,Mr(Mt.expression,Oa,un),pe.checkDefined(Mr(Mt.statement,jn,Lc,c.liftToBlock)))}function Gl(Mt){return c.updateIfStatement(Mt,Mr(Mt.expression,Oa,un),Mr(Mt.thenStatement,jn,Lc,c.liftToBlock)??c.createBlock([]),Mr(Mt.elseStatement,jn,Lc,c.liftToBlock))}function ba(Mt){return c.updateSwitchStatement(Mt,Mr(Mt.expression,Oa,un),pe.checkDefined(Mr(Mt.caseBlock,jn,cde)))}function Wo(Mt){let cn=Te;return Te=Mt,Mt=c.updateCaseBlock(Mt,Ws(Mt.clauses,jn,RJ)),Te=cn,Mt}function hc(Mt){return c.updateCaseClause(Mt,Mr(Mt.expression,Oa,un),Ws(Mt.statements,jn,Lc))}function yr(Mt){return _s(Mt,jn,s)}function hn(Mt){return _s(Mt,jn,s)}function Oi(Mt){let cn=Te;return Te=Mt,Mt=c.updateCatchClause(Mt,Mt.variableDeclaration,pe.checkDefined(Mr(Mt.block,jn,$u))),Te=cn,Mt}function lo(Mt){let cn=Te;return Te=Mt,Mt=_s(Mt,jn,s),Te=cn,Mt}function pa(Mt,cn){if(!(Mt.transformFlags&276828160))return Mt;switch(Mt.kind){case 249:return Zi(Mt,!1);case 245:return Qu(Mt);case 218:return Tg(Mt,cn);case 356:return Cs(Mt,cn);case 227:if(Dx(Mt))return Pr(Mt,cn);break;case 214:if(Up(Mt))return Tu(Mt);break;case 225:case 226:return pt(Mt,cn)}return _s(Mt,Oa,s)}function Oa(Mt){return pa(Mt,!1)}function tl(Mt){return pa(Mt,!0)}function Qu(Mt){return c.updateExpressionStatement(Mt,Mr(Mt.expression,tl,un))}function Tg(Mt,cn){return c.updateParenthesizedExpression(Mt,Mr(Mt.expression,cn?tl:Oa,un))}function Cs(Mt,cn){return c.updatePartiallyEmittedExpression(Mt,Mr(Mt.expression,cn?tl:Oa,un))}function Tu(Mt){let cn=Ez(c,Mt,ge,R,S,_),Bt=Mr(Nc(Mt.arguments),Oa,un),xe=cn&&(!Bt||!Zg(Bt)||Bt.text!==cn.text)?cn:Bt;return c.createCallExpression(c.createPropertyAccessExpression(Ee,c.createIdentifier("import")),void 0,xe?[xe]:[])}function Pr(Mt,cn){return Pn(Mt.left)?TU(Mt,Oa,s,0,!cn):_s(Mt,Oa,s)}function Pn(Mt){if(Jm(Mt,!0))return Pn(Mt.left);if(of(Mt))return Pn(Mt.expression);if(og(Mt))return jt(Mt.properties,Pn);if(OI(Mt))return jt(Mt.elements,Pn);if(a0(Mt))return Pn(Mt.name);if(fm(Mt))return Pn(Mt.initializer);if(Ir(Mt)){let cn=S.getReferencedExportContainer(Mt);return cn!==void 0&&cn.kind===308}else return!1}function pt(Mt,cn){if((Mt.operator===46||Mt.operator===47)&&Ir(Mt.operand)&&!kp(Mt.operand)&&!VF(Mt.operand)&&!cbe(Mt.operand)){let Bt=Gi(Mt.operand);if(Bt){let xe,fr=Mr(Mt.operand,Oa,un);T0(Mt)?fr=c.updatePrefixUnaryExpression(Mt,fr):(fr=c.updatePostfixUnaryExpression(Mt,fr),cn||(xe=c.createTempVariable(h),fr=c.createAssignment(xe,fr),gn(fr,Mt)),fr=c.createComma(fr,c.cloneNode(Mt.operand)),gn(fr,Mt));for(let Je of Bt)fr=mn(Je,En(fr));return xe&&(fr=c.createComma(fr,xe),gn(fr,Mt)),fr}}return _s(Mt,Oa,s)}function on(Mt){switch(Mt.kind){case 95:case 90:return}return Mt}function it(Mt,cn,Bt){if(cn.kind===308){let xe=Wy(cn);ge=cn,Ie=V[xe],_e=M[xe],Ze=ee[xe],Ee=re[xe],Ze&&delete ee[xe],W(Mt,cn,Bt),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ze=void 0}else W(Mt,cn,Bt)}function nr(Mt,cn){return cn=T(Mt,cn),ds(cn)?cn:Mt===1?Dn(cn):Mt===4?Fr(cn):cn}function Fr(Mt){switch(Mt.kind){case 305:return Kr(Mt)}return Mt}function Kr(Mt){var cn,Bt;let xe=Mt.name;if(!kp(xe)&&!VF(xe)){let fr=S.getReferencedImportDeclaration(xe);if(fr){if(Vw(fr))return gn(c.createPropertyAssignment(c.cloneNode(xe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(fr.parent),c.createIdentifier("default"))),Mt);if(uy(fr)){let Je=fr.propertyName||fr.name,In=c.getGeneratedNameForNode(((Bt=(cn=fr.parent)==null?void 0:cn.parent)==null?void 0:Bt.parent)||fr);return gn(c.createPropertyAssignment(c.cloneNode(xe),Je.kind===11?c.createElementAccessExpression(In,c.cloneNode(Je)):c.createPropertyAccessExpression(In,c.cloneNode(Je))),Mt)}}}return Mt}function Dn(Mt){switch(Mt.kind){case 80:return hr(Mt);case 227:return Sn(Mt);case 237:return Ni(Mt)}return Mt}function hr(Mt){var cn,Bt;if(tA(Mt)&8192){let xe=gEe(ge);return xe?c.createPropertyAccessExpression(xe,Mt):Mt}if(!kp(Mt)&&!VF(Mt)){let xe=S.getReferencedImportDeclaration(Mt);if(xe){if(Vw(xe))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(xe.parent),c.createIdentifier("default")),Mt);if(uy(xe)){let fr=xe.propertyName||xe.name,Je=c.getGeneratedNameForNode(((Bt=(cn=xe.parent)==null?void 0:cn.parent)==null?void 0:Bt.parent)||xe);return gn(fr.kind===11?c.createElementAccessExpression(Je,c.cloneNode(fr)):c.createPropertyAccessExpression(Je,c.cloneNode(fr)),Mt)}}}return Mt}function Sn(Mt){if(UD(Mt.operatorToken.kind)&&Ir(Mt.left)&&(!kp(Mt.left)||fY(Mt.left))&&!VF(Mt.left)){let cn=Gi(Mt.left);if(cn){let Bt=Mt;for(let xe of cn)Bt=mn(xe,En(Bt));return Bt}}return Mt}function Ni(Mt){return uv(Mt)?c.createPropertyAccessExpression(Ee,c.createIdentifier("meta")):Mt}function Gi(Mt){let cn,Bt=nn(Mt);if(Bt){let xe=S.getReferencedExportContainer(Mt,!1);xe&&xe.kind===308&&(cn=Ft(cn,c.getDeclarationName(Bt))),cn=Or(cn,Ie?.exportedBindings[Wy(Bt)])}else if(kp(Mt)&&fY(Mt)){let xe=Ie?.exportSpecifiers.get(Mt);if(xe){let fr=[];for(let Je of xe)fr.push(Je.name);return fr}}return cn}function nn(Mt){if(!kp(Mt)){let cn=S.getReferencedImportDeclaration(Mt);if(cn)return cn;let Bt=S.getReferencedValueDeclaration(Mt);if(Bt&&Ie?.exportedBindings[Wy(Bt)])return Bt;let xe=S.getReferencedValueDeclarations(Mt);if(xe){for(let fr of xe)if(fr!==Bt&&Ie?.exportedBindings[Wy(fr)])return fr}return Bt}}function En(Mt){return Ze===void 0&&(Ze=[]),Ze[rd(Mt)]=!0,Mt}function ds(Mt){return Ze&&Mt.id&&Ze[Mt.id]}}function Jet(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getEmitHost(),h=s.getEmitResolver(),_=s.getCompilerOptions(),S=Mg(_),R=s.onEmitNode,T=s.onSubstituteNode;s.onEmitNode=Ye,s.onSubstituteNode=Tt,s.enableEmitNotification(308),s.enableSubstitution(80);let W=new Set,V,M,ee,re;return rR(s,ge);function ge(Qe){if(Qe.isDeclarationFile)return Qe;if(xm(Qe)||sS(_)){ee=Qe,re=void 0,_.rewriteRelativeImportExtensions&&(ee.flags&4194304||wo(Qe))&&eie(Qe,!1,!1,ht=>{(!mA(ht.arguments[0])||gne(ht.arguments[0].text,_))&&(V=Ft(V,ht))});let mt=Ie(Qe);return hN(mt,s.readEmitHelpers()),ee=void 0,re&&(mt=c.updateSourceFile(mt,gn(c.createNodeArray(Ore(mt.statements.slice(),re)),mt.statements))),!xm(Qe)||i0(_)===200||jt(mt.statements,PT)?mt:c.updateSourceFile(mt,gn(c.createNodeArray([...mt.statements,cEe(c)]),mt.statements))}return Qe}function Ie(Qe){let mt=N$e(c,g(),Qe,_);if(mt){let ht=[],_t=c.copyPrologue(Qe.statements,ht);return Or(ht,Sde([mt],_e,Lc)),Or(ht,Ws(Qe.statements,_e,Lc,_t)),c.updateSourceFile(Qe,gn(c.createNodeArray(ht),Qe.statements))}else return _s(Qe,_e,s)}function _e(Qe){switch(Qe.kind){case 272:return i0(_)>=100?Ze(Qe):void 0;case 278:return Ue(Qe);case 279:return $e(Qe);case 273:return Ee(Qe);case 214:if(Qe===V?.[0])return Ne(V.shift());default:if(V?.length&&cy(Qe,V[0]))return _s(Qe,_e,s)}return Qe}function Ee(Qe){if(!_.rewriteRelativeImportExtensions)return Qe;let mt=Nz(Qe.moduleSpecifier,_);return mt===Qe.moduleSpecifier?Qe:c.updateImportDeclaration(Qe,Qe.modifiers,Qe.importClause,mt,Qe.attributes)}function Ne(Qe){return c.updateCallExpression(Qe,Qe.expression,Qe.typeArguments,[mA(Qe.arguments[0])?Nz(Qe.arguments[0],_):g().createRewriteRelativeImportExtensionsHelper(Qe.arguments[0]),...Qe.arguments.slice(1)])}function Te(Qe){let mt=Ez(c,Qe,pe.checkDefined(ee),d,h,_),ht=[];if(mt&&ht.push(Nz(mt,_)),i0(_)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,ht);if(!re){let Rt=c.createUniqueName("_createRequire",48),Lt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),Rt)])),c.createStringLiteral("module"),void 0),Ke=c.createUniqueName("__require",48),Pt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ke,void 0,void 0,c.createCallExpression(c.cloneNode(Rt),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],S>=2?2:0));re=[Lt,Pt]}let _t=re[1].declarationList.declarations[0].name;return pe.assertNode(_t,Ir),c.createCallExpression(c.cloneNode(_t),void 0,ht)}function Ze(Qe){pe.assert(LL(Qe),"import= for internal module references should be handled in an earlier transformer.");let mt;return mt=Ft(mt,ua(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Qe.name),void 0,void 0,Te(Qe))],S>=2?2:0)),Qe),Qe)),mt=We(mt,Qe),ac(mt)}function We(Qe,mt){return Ga(mt,32)&&(Qe=Ft(Qe,c.createExportDeclaration(void 0,mt.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,Vo(mt.name))])))),Qe}function Ue(Qe){return Qe.isExportEquals?i0(_)===200?ua(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Qe.expression)),Qe):void 0:Qe}function $e(Qe){let mt=Nz(Qe.moduleSpecifier,_);if(_.module!==void 0&&_.module>5||!Qe.exportClause||!tk(Qe.exportClause)||!Qe.moduleSpecifier)return!Qe.moduleSpecifier||mt===Qe.moduleSpecifier?Qe:c.updateExportDeclaration(Qe,Qe.modifiers,Qe.isTypeOnly,Qe.exportClause,mt,Qe.attributes);let ht=Qe.exportClause.name,_t=c.getGeneratedNameForNode(ht),Rt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamespaceImport(_t)),mt,Qe.attributes);ua(Rt,Qe.exportClause);let Lt=wY(Qe)?c.createExportDefault(_t):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,_t,ht)]));return ua(Lt,Qe),[Rt,Lt]}function Ye(Qe,mt,ht){ll(mt)?((xm(mt)||sS(_))&&_.importHelpers&&(M=new Map),ee=mt,R(Qe,mt,ht),ee=void 0,M=void 0):R(Qe,mt,ht)}function Tt(Qe,mt){return mt=T(Qe,mt),mt.id&&W.has(mt.id)?mt:Ir(mt)&&tA(mt)&8192?ot(mt):mt}function ot(Qe){let mt=ee&&gEe(ee);if(mt)return W.add(rd(Qe)),c.createPropertyAccessExpression(mt,Qe);if(M){let ht=Vo(Qe),_t=M.get(ht);return _t||M.set(ht,_t=c.createUniqueName(ht,48)),_t}return Qe}}function a3t(s){let c=s.onSubstituteNode,g=s.onEmitNode,d=Jet(s),h=s.onSubstituteNode,_=s.onEmitNode;s.onSubstituteNode=c,s.onEmitNode=g;let S=Xet(s),R=s.onSubstituteNode,T=s.onEmitNode,W=Ee=>s.getEmitHost().getEmitModuleFormatOfFile(Ee);s.onSubstituteNode=M,s.onEmitNode=ee,s.enableSubstitution(308),s.enableEmitNotification(308);let V;return Ie;function M(Ee,Ne){return ll(Ne)?(V=Ne,c(Ee,Ne)):V?W(V)>=5?h(Ee,Ne):R(Ee,Ne):c(Ee,Ne)}function ee(Ee,Ne,Te){return ll(Ne)&&(V=Ne),V?W(V)>=5?_(Ee,Ne,Te):T(Ee,Ne,Te):g(Ee,Ne,Te)}function re(Ee){return W(Ee)>=5?d:S}function ge(Ee){if(Ee.isDeclarationFile)return Ee;V=Ee;let Ne=re(Ee)(Ee);return V=void 0,pe.assert(ll(Ne)),Ne}function Ie(Ee){return Ee.kind===308?ge(Ee):_e(Ee)}function _e(Ee){return s.factory.createBundle(At(Ee.sourceFiles,ge))}}function LEe(s){return nc(s)||pi(s)||ss(s)||hg(s)||cv(s)||bB(s)||em(s)||wg(s)||uu(s)||hl(s)||ih(s)||Si(s)||Ds(s)||l_(s)||km(s)||FB(s)||Tc(s)||w0(s)||jo(s)||Yg(s)||fo(s)||iS(s)}function c3t(s){if(cv(s)||bB(s))return c;return hl(s)||uu(s)?d:J3(s);function c(_){let S=g(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function g(_){return cg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(_){let S=h(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function h(_){return cg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function J3(s){if(nc(s)||pi(s)||ss(s)||jo(s)||Yg(s)||fo(s)||hg(s)||Tc(s))return g;return cv(s)||bB(s)?d:em(s)||wg(s)||uu(s)||hl(s)||ih(s)||w0(s)?h:Si(s)?Ve(s,s.parent)&&Ga(s.parent,2)?g:_:Ds(s)?R:l_(s)?T:km(s)?W:FB(s)||iS(s)?V:pe.assertNever(s,`Attempted to set a declaration diagnostic context for unhandled node kind: ${pe.formatSyntaxKind(s.kind)}`);function c(M){if(s.kind===261||s.kind===209)return M.errorModuleName?M.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(s.kind===173||s.kind===212||s.kind===213||s.kind===227||s.kind===172||s.kind===170&&Ga(s.parent,2))return cg(s)?M.errorModuleName?M.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264||s.kind===170?M.errorModuleName?M.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function g(M){let ee=c(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function d(M){let ee;return s.kind===179?cg(s)?ee=M.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:cg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:ee,errorNode:s.name,typeName:s.name}}function h(M){let ee;switch(s.kind){case 181:ee=M.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 180:ee=M.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 182:ee=M.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 175:case 174:cg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:s.parent.kind===264?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:ee=M.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 263:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return pe.fail("This is unknown kind for signature: "+s.kind)}return{diagnosticMessage:ee,errorNode:s.name||s}}function _(M){let ee=S(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function S(M){switch(s.parent.kind){case 177:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 181:case 186:return M.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 180:return M.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 182:return M.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 175:case 174:return cg(s.parent)?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 263:case 185:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 179:case 178:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return pe.fail(`Unknown parent for parameter: ${pe.formatSyntaxKind(s.parent.kind)}`)}}function R(){let M;switch(s.parent.kind){case 264:M=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 265:M=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 201:M=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 186:case 181:M=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 180:M=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 174:cg(s.parent)?M=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 185:case 263:M=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 196:M=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 266:M=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return pe.fail("This is unknown parent for type parameter: "+s.parent.kind)}return{diagnosticMessage:M,errorNode:s,typeName:s.name}}function T(){let M;return pm(s.parent.parent)?M=h1(s.parent)&&s.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:s.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:M=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:M,errorNode:s,typeName:Il(s.parent.parent)}}function W(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:s,typeName:s.name}}function V(M){return{diagnosticMessage:M.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:iS(s)?pe.checkDefined(s.typeExpression):s.type,typeName:iS(s)?Il(s):s.name}}}function l3t(s){let c={220:Z.Add_a_return_type_to_the_function_expression,219:Z.Add_a_return_type_to_the_function_expression,175:Z.Add_a_return_type_to_the_method,178:Z.Add_a_return_type_to_the_get_accessor_declaration,179:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,263:Z.Add_a_return_type_to_the_function_declaration,181:Z.Add_a_return_type_to_the_function_declaration,170:Z.Add_a_type_annotation_to_the_parameter_0,261:Z.Add_a_type_annotation_to_the_variable_0,173:Z.Add_a_type_annotation_to_the_property_0,172:Z.Add_a_type_annotation_to_the_property_0,278:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},g={219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,263:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,220:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,175:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,181:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,179:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,170:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,261:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,173:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,168:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,306:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,210:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,278:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,231:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(_e){if(ji(_e,h1))return mo(_e,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((ww(_e)||Fw(_e.parent))&&(fC(_e)||Od(_e)))return ge(_e);switch(pe.type(_e),_e.kind){case 178:case 179:return _(_e);case 168:case 305:case 306:return R(_e);case 210:case 231:return T(_e);case 175:case 181:case 219:case 220:case 263:return W(_e);case 209:return V(_e);case 173:case 261:return M(_e);case 170:return ee(_e);case 304:return Ie(_e.initializer);case 232:return re(_e);default:return Ie(_e)}}function h(_e){let Ee=ji(_e,Ne=>Cf(Ne)||Lc(Ne)||nc(Ne)||pi(Ne)||Si(Ne));if(Ee)return Cf(Ee)?Ee:I2(Ee)?ji(Ee,Ne=>kd(Ne)&&!Tc(Ne)):Lc(Ee)?void 0:Ee}function _(_e){let{getAccessor:Ee,setAccessor:Ne}=BP(_e.symbol.declarations,_e),Te=(cv(_e)?_e.parameters[0]:_e)??_e,Ze=mo(Te,g[_e.kind]);return Ne&&lg(Ze,mo(Ne,c[Ne.kind])),Ee&&lg(Ze,mo(Ee,c[Ee.kind])),Ze}function S(_e,Ee){let Ne=h(_e);if(Ne){let Te=Cf(Ne)||!Ne.name?"":xp(Ne.name,!1);lg(Ee,mo(Ne,c[Ne.kind],Te))}return Ee}function R(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function T(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function W(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),lg(Ee,mo(_e,c[_e.kind])),Ee}function V(_e){return mo(_e,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function M(_e){let Ee=mo(_e,g[_e.kind]),Ne=xp(_e.name,!1);return lg(Ee,mo(_e,c[_e.kind],Ne)),Ee}function ee(_e){if(cv(_e.parent))return _(_e.parent);let Ee=s.requiresAddingImplicitUndefined(_e,_e.parent);if(!Ee&&_e.initializer)return Ie(_e.initializer);let Ne=Ee?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:g[_e.kind],Te=mo(_e,Ne),Ze=xp(_e.name,!1);return lg(Te,mo(_e,c[_e.kind],Ze)),Te}function re(_e){return Ie(_e,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ge(_e){let Ee=mo(_e,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,xp(_e,!1));return S(_e,Ee),Ee}function Ie(_e,Ee){let Ne=h(_e),Te;if(Ne){let Ze=Cf(Ne)||!Ne.name?"":xp(Ne.name,!1),We=ji(_e.parent,Ue=>Cf(Ue)||(Lc(Ue)?"quit":!gI(Ue)&&!xF(Ue)&&!Yd(Ue)));Ne===We?(Te=mo(_e,Ee??g[Ne.kind]),lg(Te,mo(Ne,c[Ne.kind],Ze))):(Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),lg(Te,mo(Ne,c[Ne.kind],Ze)),lg(Te,mo(_e,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Te}}function u3t(s,c,g){let d=s.getCompilerOptions(),h=Me(cAe(s,g),Uge);return k(h,g)?OEe(c,s,me,d,[g],[Uet],!1).diagnostics:void 0}var VEe=531469,PEe=8;function Uet(s){let c=()=>pe.fail("Diagnostic emitted without context"),g=c,d=!0,h=!1,_=!1,S=!1,R=!1,T,W,V,M,{factory:ee}=s,re=s.getEmitHost(),ge=()=>{},Ie={trackSymbol:_t,reportInaccessibleThisError:_r,reportInaccessibleUniqueSymbolError:Ke,reportCyclicStructureError:Pt,reportPrivateInBaseOfClassExpression:Rt,reportLikelyUnsafeImportRequiredError:Gt,reportTruncationError:nt,moduleResolverHost:re,reportNonlocalAugmentation:Dt,reportNonSerializableProperty:tr,reportInferenceFallback:mt,pushErrorFallbackNode(pt){let on=Ee,it=ge;ge=()=>{ge=it,Ee=on},Ee=pt},popErrorFallbackNode(){ge()}},_e,Ee,Ne,Te,Ze,We,Ue=s.getEmitResolver(),$e=s.getCompilerOptions(),Ye=l3t(Ue),{stripInternal:Tt,isolatedDeclarations:ot}=$e;return Gr;function Qe(pt){Ue.getPropertiesOfContainerFunction(pt).forEach(on=>{if(jY(on.valueDeclaration)){let it=fo(on.valueDeclaration)?on.valueDeclaration.left:on.valueDeclaration;s.addDiagnostic(mo(it,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function mt(pt){!ot||n0(Ne)||ms(pt)===Ne&&(nc(pt)&&Ue.isExpandoFunctionDeclaration(pt)?Qe(pt):s.addDiagnostic(Ye(pt)))}function ht(pt){if(pt.accessibility===0){if(pt.aliasesToMakeVisible)if(!W)W=pt.aliasesToMakeVisible;else for(let on of pt.aliasesToMakeVisible)Qi(W,on)}else if(pt.accessibility!==3){let on=g(pt);if(on)return on.typeName?s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,xp(on.typeName),pt.errorSymbolName,pt.errorModuleName)):s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,pt.errorSymbolName,pt.errorModuleName)),!0}return!1}function _t(pt,on,it){return pt.flags&262144?!1:ht(Ue.isSymbolAccessible(pt,on,it,!0))}function Rt(pt){(_e||Ee)&&s.addDiagnostic(lg(mo(_e||Ee,Z.Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected,pt),...nc((_e||Ee).parent)?[mo(_e||Ee,Z.Add_a_type_annotation_to_the_variable_0,Lt())]:[]))}function Lt(){return _e?Wd(_e):Ee&&Il(Ee)?Wd(Il(Ee)):Ee&&Cf(Ee)?Ee.isExportEquals?"export=":"default":"(Missing)"}function Ke(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"unique symbol"))}function Pt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,Lt()))}function _r(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"this"))}function Gt(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,Lt(),pt))}function nt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function Dt(pt,on,it){var nr;let Fr=(nr=on.declarations)==null?void 0:nr.find(Dn=>ms(Dn)===pt),Kr=Me(it.declarations,Dn=>ms(Dn)!==pt);if(Fr&&Kr)for(let Dn of Kr)s.addDiagnostic(lg(mo(Dn,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),mo(Fr,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function tr(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,pt))}function ur(pt){let on=g;g=nr=>nr.errorNode&&LEe(nr.errorNode)?J3(nr.errorNode)(nr):{diagnosticMessage:nr.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:nr.errorNode||pt};let it=Ue.getDeclarationStatementsForSourceFile(pt,VEe,PEe,Ie);return g=on,it}function Gr(pt){if(pt.kind===308&&pt.isDeclarationFile)return pt;if(pt.kind===309){h=!0,Te=[],Ze=[],We=[];let Sn=!1,Ni=ee.createBundle(At(pt.sourceFiles,nn=>{if(nn.isDeclarationFile)return;if(Sn=Sn||nn.hasNoDefaultLib,Ne=nn,T=nn,W=void 0,M=!1,V=new Map,g=c,S=!1,R=!1,nr(nn),vl(nn)||Zu(nn)){_=!1,d=!1;let ds=n0(nn)?ee.createNodeArray(ur(nn)):Ws(nn.statements,hc,Lc);return ee.updateSourceFile(nn,[ee.createModuleDeclaration([ee.createModifier(138)],ee.createStringLiteral(F7(s.getEmitHost(),nn)),ee.createModuleBlock(gn(ee.createNodeArray(Gl(ds)),nn.statements)))],!0,[],[],!1,[])}d=!0;let En=n0(nn)?ee.createNodeArray(ur(nn)):Ws(nn.statements,hc,Lc);return ee.updateSourceFile(nn,Gl(En),!0,[],[],!1,[])})),Gi=Mo(Dp(kde(pt,re,!0).declarationFilePath));return Ni.syntheticFileReferences=hr(Gi),Ni.syntheticTypeReferences=Kr(),Ni.syntheticLibReferences=Dn(),Ni.hasNoDefaultLib=Sn,Ni}d=!0,S=!1,R=!1,T=pt,Ne=pt,g=c,h=!1,_=!1,M=!1,W=void 0,V=new Map,Te=[],Ze=[],We=[],nr(Ne);let on;if(n0(Ne))on=ee.createNodeArray(ur(pt));else{let Sn=Ws(pt.statements,hc,Lc);on=gn(ee.createNodeArray(Gl(Sn)),pt.statements),xm(pt)&&(!_||S&&!R)&&(on=gn(ee.createNodeArray([...on,cEe(ee)]),on))}let it=Mo(Dp(kde(pt,re,!0).declarationFilePath));return ee.updateSourceFile(pt,on,!0,hr(it),Kr(),pt.hasNoDefaultLib,Dn());function nr(Sn){Te=Nn(Te,At(Sn.referencedFiles,Ni=>[Sn,Ni])),Ze=Nn(Ze,Sn.typeReferenceDirectives),We=Nn(We,Sn.libReferenceDirectives)}function Fr(Sn){let Ni={...Sn};return Ni.pos=-1,Ni.end=-1,Ni}function Kr(){return Xt(Ze,Sn=>{if(Sn.preserve)return Fr(Sn)})}function Dn(){return Xt(We,Sn=>{if(Sn.preserve)return Fr(Sn)})}function hr(Sn){return Xt(Te,([Ni,Gi])=>{if(!Gi.preserve)return;let nn=re.getSourceFileFromReference(Ni,Gi);if(!nn)return;let En;if(nn.isDeclarationFile)En=nn.fileName;else{if(h&&k(pt.sourceFiles,nn))return;let cn=kde(nn,re,!0);En=cn.declarationFilePath||cn.jsFilePath||nn.fileName}if(!En)return;let ds=Of(Sn,En,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Mt=Fr(Gi);return Mt.fileName=ds,Mt})}}function dt(pt){if(pt.kind===80)return pt;return pt.kind===208?ee.updateArrayBindingPattern(pt,Ws(pt.elements,on,o3)):ee.updateObjectBindingPattern(pt,Ws(pt.elements,on,hg));function on(it){return it.kind===233?it:(it.propertyName&&Un(it.propertyName)&&Od(it.propertyName.expression)&&si(it.propertyName.expression,T),ee.updateBindingElement(it,it.dotDotDotToken,it.propertyName,dt(it.name),void 0))}}function pr(pt,on){let it;M||(it=g,g=J3(pt));let nr=ee.updateParameterDeclaration(pt,tws(ee,pt,on),pt.dotDotDotToken,dt(pt.name),Ue.isOptionalParameter(pt)?pt.questionToken||ee.createToken(58):void 0,zt(pt,!0),ir(pt));return M||(g=it),nr}function st(pt){return Ktn(pt)&&!!pt.initializer&&Ue.isLiteralConstDeclaration($l(pt))}function ir(pt){if(st(pt)){let on=KAe(pt.initializer);return uz(on)||mt(pt),Ue.createLiteralConstValue($l(pt,Ktn),Ie)}}function zt(pt,on){if(!on&&Gb(pt,2)||st(pt))return;if(!Cf(pt)&&!hg(pt)&&pt.type&&(!Si(pt)||!Ue.requiresAddingImplicitUndefined(pt,T)))return Mr(pt.type,ba,uc);let it=_e;_e=pt.name;let nr;M||(nr=g,LEe(pt)&&(g=J3(pt)));let Fr;return jAe(pt)?Fr=Ue.createTypeOfDeclaration(pt,T,VEe,PEe,Ie):bu(pt)?Fr=Ue.createReturnTypeOfSignatureDeclaration(pt,T,VEe,PEe,Ie):pe.assertNever(pt),_e=it,M||(g=nr),Fr??ee.createKeywordTypeNode(133)}function Ht(pt){switch(pt=$l(pt),pt.kind){case 263:case 268:case 265:case 264:case 266:case 267:return!Ue.isDeclarationVisible(pt);case 261:return!mn(pt);case 272:case 273:case 279:case 278:return!1;case 176:return!0}return!1}function Br(pt){var on;if(pt.body)return!0;let it=(on=pt.symbol.declarations)==null?void 0:on.filter(nr=>ih(nr)&&!nr.body);return!it||it.indexOf(pt)===it.length-1}function mn(pt){return yp(pt)?!1:Nu(pt.name)?jt(pt.name.elements,mn):Ue.isDeclarationVisible(pt)}function jn(pt,on,it){if(Gb(pt,2))return ee.createNodeArray();let nr=At(on,Fr=>pr(Fr,it));return nr?ee.createNodeArray(nr,on.hasTrailingComma):ee.createNodeArray()}function Zi(pt,on){let it;if(!on){let nr=vP(pt);nr&&(it=[pr(nr)])}if(Dg(pt)){let nr;if(!on){let Fr=L7(pt);Fr&&(nr=pr(Fr))}nr||(nr=ee.createParameterDeclaration(void 0,void 0,"value")),it=Ft(it,nr)}return ee.createNodeArray(it||E)}function Ns(pt,on){return Gb(pt,2)?void 0:Ws(on,ba,Ds)}function An(pt){return ll(pt)||FB(pt)||xh(pt)||pm(pt)||g_(pt)||bu(pt)||w0(pt)||GB(pt)}function si(pt,on){let it=Ue.isEntityNameVisible(pt,on);ht(it)}function ks(pt,on){return Xm(pt)&&Xm(on)&&(pt.jsDoc=on.jsDoc),hh(pt,DB(on))}function Ic(pt,on){if(on){if(_=_||pt.kind!==268&&pt.kind!==206,mA(on)&&h){let it=RZe(s.getEmitHost(),Ue,pt);if(it)return ee.createStringLiteral(it)}return on}}function su(pt){if(Ue.isDeclarationVisible(pt))if(pt.moduleReference.kind===284){let on=_7(pt);return ee.updateImportEqualsDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.name,ee.updateExternalModuleReference(pt.moduleReference,Ic(pt,on)))}else{let on=g;return g=J3(pt),si(pt.moduleReference,T),g=on,pt}}function Zn(pt){if(!pt.importClause)return ee.updateImportDeclaration(pt,pt.modifiers,pt.importClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));let on=pt.importClause.phaseModifier===166?void 0:pt.importClause.phaseModifier,it=pt.importClause&&pt.importClause.name&&Ue.isDeclarationVisible(pt.importClause)?pt.importClause.name:void 0;if(!pt.importClause.namedBindings)return it&&ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(pt.importClause.namedBindings.kind===275){let Fr=Ue.isDeclarationVisible(pt.importClause.namedBindings)?pt.importClause.namedBindings:void 0;return it||Fr?ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,Fr),Ic(pt,pt.moduleSpecifier),ya(pt.attributes)):void 0}let nr=Xt(pt.importClause.namedBindings.elements,Fr=>Ue.isDeclarationVisible(Fr)?Fr:void 0);if(nr&&nr.length||it)return ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,nr&&nr.length?ee.updateNamedImports(pt.importClause.namedBindings,nr):void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(Ue.isImportRequiredByAugmentation(pt))return ot&&s.addDiagnostic(mo(pt,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),ee.updateImportDeclaration(pt,pt.modifiers,void 0,Ic(pt,pt.moduleSpecifier),ya(pt.attributes))}function ya(pt){let on=Fie(pt);return pt&&on!==void 0?pt:void 0}function Gl(pt){for(;B(W);){let it=W.shift();if(!p7(it))return pe.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${pe.formatSyntaxKind(it.kind)}`);let nr=d;d=it.parent&&ll(it.parent)&&!(xm(it.parent)&&h);let Fr=Oi(it);d=nr,V.set(Wy(it),Fr)}return Ws(pt,on,Lc);function on(it){if(p7(it)){let nr=Wy(it);if(V.has(nr)){let Fr=V.get(nr);return V.delete(nr),Fr&&((Ki(Fr)?jt(Fr,t7):t7(Fr))&&(S=!0),ll(it.parent)&&(Ki(Fr)?jt(Fr,PT):PT(Fr))&&(_=!0)),Fr}}return it}}function ba(pt){if(Qu(pt))return;if(jh(pt)){if(Ht(pt))return;if(XD(pt)){if(ot){if(!Ue.isDefinitelyReferenceToGlobalSymbolObject(pt.name.expression)){if(pm(pt.parent)||og(pt.parent)){s.addDiagnostic(mo(pt,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((g_(pt.parent)||mh(pt.parent))&&!Od(pt.name.expression)){s.addDiagnostic(mo(pt,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!Ue.isLateBound($l(pt))||!Od(pt.name.expression))return}}if(bu(pt)&&Ue.isImplementationOfOverload(pt)||FPt(pt))return;let on;An(pt)&&(on=T,T=pt);let it=g,nr=LEe(pt),Fr=M,Kr=(pt.kind===188||pt.kind===201)&&pt.parent.kind!==266;if((uu(pt)||hl(pt))&&Gb(pt,2))return pt.symbol&&pt.symbol.declarations&&pt.symbol.declarations[0]!==pt?void 0:Dn(ee.createPropertyDeclaration(Tu(pt),pt.name,void 0,void 0,void 0));if(nr&&!M&&(g=J3(pt)),Fw(pt)&&si(pt.exprName,T),Kr&&(M=!0),nws(pt))switch(pt.kind){case 234:{(fC(pt.expression)||Od(pt.expression))&&si(pt.expression,T);let hr=_s(pt,ba,s);return Dn(ee.updateExpressionWithTypeArguments(hr,hr.expression,hr.typeArguments))}case 184:{si(pt.typeName,T);let hr=_s(pt,ba,s);return Dn(ee.updateTypeReferenceNode(hr,hr.typeName,hr.typeArguments))}case 181:return Dn(ee.updateConstructSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 177:{let hr=ee.createConstructorDeclaration(Tu(pt),jn(pt,pt.parameters,0),void 0);return Dn(hr)}case 175:{if(p(pt.name))return Dn(void 0);let hr=ee.createMethodDeclaration(Tu(pt),void 0,pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt),void 0);return Dn(hr)}case 178:return p(pt.name)?Dn(void 0):Dn(ee.updateGetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Gb(pt,2)),zt(pt),void 0));case 179:return p(pt.name)?Dn(void 0):Dn(ee.updateSetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Gb(pt,2)),void 0));case 173:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertyDeclaration(pt,Tu(pt),pt.name,pt.questionToken,zt(pt),ir(pt)));case 172:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertySignature(pt,Tu(pt),pt.name,pt.questionToken,zt(pt)));case 174:return p(pt.name)?Dn(void 0):Dn(ee.updateMethodSignature(pt,Tu(pt),pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 180:return Dn(ee.updateCallSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 182:return Dn(ee.updateIndexSignature(pt,Tu(pt),jn(pt,pt.parameters),Mr(pt.type,ba,uc)||ee.createKeywordTypeNode(133)));case 261:return Nu(pt.name)?pa(pt.name):(Kr=!0,M=!0,Dn(ee.updateVariableDeclaration(pt,pt.name,void 0,zt(pt),ir(pt))));case 169:return Wo(pt)&&(pt.default||pt.constraint)?Dn(ee.updateTypeParameterDeclaration(pt,pt.modifiers,pt.name,void 0,void 0)):Dn(_s(pt,ba,s));case 195:{let hr=Mr(pt.checkType,ba,uc),Sn=Mr(pt.extendsType,ba,uc),Ni=T;T=pt.trueType;let Gi=Mr(pt.trueType,ba,uc);T=Ni;let nn=Mr(pt.falseType,ba,uc);return pe.assert(hr),pe.assert(Sn),pe.assert(Gi),pe.assert(nn),Dn(ee.updateConditionalTypeNode(pt,hr,Sn,Gi,nn))}case 185:return Dn(ee.updateFunctionTypeNode(pt,Ws(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 186:return Dn(ee.updateConstructorTypeNode(pt,Tu(pt),Ws(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 206:return ky(pt)?Dn(ee.updateImportTypeNode(pt,ee.updateLiteralTypeNode(pt.argument,Ic(pt,pt.argument.literal)),pt.attributes,pt.qualifier,Ws(pt.typeArguments,ba,uc),pt.isTypeOf)):Dn(pt);default:pe.assertNever(pt,`Attempted to process unhandled node kind: ${pe.formatSyntaxKind(pt.kind)}`)}return Zw(pt)&&Ra(Ne,pt.pos).line===Ra(Ne,pt.end).line&&ti(pt,1),Dn(_s(pt,ba,s));function Dn(hr){return hr&&nr&&XD(pt)&&tl(pt),An(pt)&&(T=on),nr&&!M&&(g=it),Kr&&(M=Fr),hr===pt?hr:hr&&ua(ks(hr,pt),pt)}}function Wo(pt){return pt.parent.kind===175&&Gb(pt.parent,2)}function hc(pt){if(!rws(pt)||Qu(pt))return;switch(pt.kind){case 279:return ll(pt.parent)&&(_=!0),R=!0,ee.updateExportDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.exportClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));case 278:{if(ll(pt.parent)&&(_=!0),R=!0,pt.expression.kind===80)return pt;{let it=ee.createUniqueName("_default",16);g=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:pt}),Ee=pt;let nr=zt(pt),Fr=ee.createVariableDeclaration(it,void 0,nr,void 0);Ee=void 0;let Kr=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([Fr],2));return ks(Kr,pt),pz(pt),[Kr,ee.updateExportAssignment(pt,pt.modifiers,it)]}}}let on=Oi(pt);return V.set(Wy(pt),on),pt}function yr(pt){if(km(pt)||Gb(pt,2048)||!LB(pt))return pt;let on=ee.createModifiersFromModifierFlags(o_(pt)&131039);return ee.replaceModifiers(pt,on)}function hn(pt,on,it,nr){let Fr=ee.updateModuleDeclaration(pt,on,it,nr);if(s_(Fr)||Fr.flags&32)return Fr;let Kr=ee.createModuleDeclaration(Fr.modifiers,Fr.name,Fr.body,Fr.flags|32);return ua(Kr,Fr),gn(Kr,Fr),Kr}function Oi(pt){if(W)for(;Ql(W,pt););if(Qu(pt))return;switch(pt.kind){case 272:return su(pt);case 273:return Zn(pt)}if(jh(pt)&&Ht(pt)||SN(pt)||bu(pt)&&Ue.isImplementationOfOverload(pt))return;let on;An(pt)&&(on=T,T=pt);let it=LEe(pt),nr=g;it&&(g=J3(pt));let Fr=d;switch(pt.kind){case 266:{d=!1;let Dn=Kr(ee.updateTypeAliasDeclaration(pt,Tu(pt),pt.name,Ws(pt.typeParameters,ba,Ds),pe.checkDefined(Mr(pt.type,ba,uc))));return d=Fr,Dn}case 265:return Kr(ee.updateInterfaceDeclaration(pt,Tu(pt),pt.name,Ns(pt,pt.typeParameters),Pn(pt.heritageClauses),Ws(pt.members,ba,Bx)));case 263:{let Dn=Kr(ee.updateFunctionDeclaration(pt,Tu(pt),void 0,pt.name,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt),void 0));if(Dn&&Ue.isExpandoFunctionDeclaration(pt)&&Br(pt)){let hr=Ue.getPropertiesOfContainerFunction(pt);ot&&Qe(pt);let Sn=H3.createModuleDeclaration(void 0,Dn.name||ee.createIdentifier("_default"),ee.createModuleBlock([]),32);XA(Sn,T),Sn.locals=qu(hr),Sn.symbol=hr[0].parent;let Ni=[],Gi=Xt(hr,Bt=>{if(!jY(Bt.valueDeclaration))return;let xe=Bc(Bt.escapedName);if(!Uh(xe,99))return;g=J3(Bt.valueDeclaration);let fr=Ue.createTypeOfDeclaration(Bt.valueDeclaration,Sn,VEe,PEe|2,Ie);g=nr;let Je=WY(xe),In=Je?ee.getGeneratedNameForNode(Bt.valueDeclaration):ee.createIdentifier(xe);Je&&Ni.push([In,xe]);let Hn=ee.createVariableDeclaration(In,void 0,fr,void 0);return ee.createVariableStatement(Je?void 0:[ee.createToken(95)],ee.createVariableDeclarationList([Hn]))});Ni.length?Gi.push(ee.createExportDeclaration(void 0,!1,ee.createNamedExports(At(Ni,([Bt,xe])=>ee.createExportSpecifier(!1,Bt,xe))))):Gi=Xt(Gi,Bt=>ee.replaceModifiers(Bt,0));let nn=ee.createModuleDeclaration(Tu(pt),pt.name,ee.createModuleBlock(Gi),32);if(!Gb(Dn,2048))return[Dn,nn];let En=ee.createModifiersFromModifierFlags(o_(Dn)&-2081|128),ds=ee.updateFunctionDeclaration(Dn,En,void 0,Dn.name,Dn.typeParameters,Dn.parameters,Dn.type,void 0),Mt=ee.updateModuleDeclaration(nn,En,nn.name,nn.body),cn=ee.createExportAssignment(void 0,!1,nn.name);return ll(pt.parent)&&(_=!0),R=!0,[ds,Mt,cn]}else return Dn}case 268:{d=!1;let Dn=pt.body;if(Dn&&Dn.kind===269){let hr=S,Sn=R;R=!1,S=!1;let Ni=Ws(Dn.statements,hc,Lc),Gi=Gl(Ni);pt.flags&33554432&&(S=!1),!vB(pt)&&!Cs(Gi)&&!R&&(S?Gi=ee.createNodeArray([...Gi,cEe(ee)]):Gi=Ws(Gi,yr,Lc));let nn=ee.updateModuleBlock(Dn,Gi);d=Fr,S=hr,R=Sn;let En=Tu(pt);return Kr(hn(pt,En,_F(pt)?Ic(pt,pt.name):pt.name,nn))}else{d=Fr;let hr=Tu(pt);d=!1,Mr(Dn,hc);let Sn=Wy(Dn),Ni=V.get(Sn);return V.delete(Sn),Kr(hn(pt,hr,pt.name,Ni))}}case 264:{_e=pt.name,Ee=pt;let Dn=ee.createNodeArray(Tu(pt)),hr=Ns(pt,pt.typeParameters),Sn=lN(pt),Ni;if(Sn){let Bt=g;Ni=Hr(er(Sn.parameters,xe=>{if(!Ga(xe,31)||Qu(xe))return;if(g=J3(xe),xe.name.kind===80)return ks(ee.createPropertyDeclaration(Tu(xe),xe.name,xe.questionToken,zt(xe),ir(xe)),xe);return fr(xe.name);function fr(Je){let In;for(let Hn of Je.elements)yp(Hn)||(Nu(Hn.name)&&(In=Nn(In,fr(Hn.name))),In=In||[],In.push(ee.createPropertyDeclaration(Tu(xe),Hn.name,void 0,zt(Hn),void 0)));return In}})),g=Bt}let nn=jt(pt.members,Bt=>!!Bt.name&&p(Bt.name))?[ee.createPropertyDeclaration(void 0,ee.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,En=Ue.createLateBoundIndexSignatures(pt,T,VEe,PEe,Ie),ds=Nn(Nn(Nn(nn,En),Ni),Ws(pt.members,ba,PI)),Mt=ee.createNodeArray(ds),cn=BB(pt);if(cn&&!Od(cn.expression)&&cn.expression.kind!==106){let Bt=pt.name?Bc(pt.name.escapedText):"default",xe=ee.createUniqueName(`${Bt}_base`,16);g=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:cn,typeName:pt.name});let fr=ee.createVariableDeclaration(xe,void 0,Ue.createTypeOfExpression(cn.expression,pt,VEe,PEe,Ie),void 0),Je=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([fr],2)),In=ee.createNodeArray(At(pt.heritageClauses,Hn=>{if(Hn.token===96){let Ot=g;g=J3(Hn.types[0]);let $r=ee.updateHeritageClause(Hn,At(Hn.types,ri=>ee.updateExpressionWithTypeArguments(ri,xe,Ws(ri.typeArguments,ba,uc))));return g=Ot,$r}return ee.updateHeritageClause(Hn,Ws(ee.createNodeArray(Me(Hn.types,Ot=>Od(Ot.expression)||Ot.expression.kind===106)),ba,l_))}));return[Je,Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,In,Mt))]}else{let Bt=Pn(pt.heritageClauses);return Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,Bt,Mt))}}case 244:return Kr(lo(pt));case 267:return Kr(ee.updateEnumDeclaration(pt,ee.createNodeArray(Tu(pt)),pt.name,ee.createNodeArray(Xt(pt.members,Dn=>{if(Qu(Dn))return;let hr=Ue.getEnumMemberValue(Dn),Sn=hr?.value;ot&&Dn.initializer&&hr?.hasExternalReferences&&!Un(Dn.name)&&s.addDiagnostic(mo(Dn,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let Ni=Sn===void 0?void 0:typeof Sn=="string"?ee.createStringLiteral(Sn):Sn<0?ee.createPrefixUnaryExpression(41,ee.createNumericLiteral(-Sn)):ee.createNumericLiteral(Sn);return ks(ee.updateEnumMember(Dn,Dn.name,Ni),Dn)}))))}return pe.assertNever(pt,`Unhandled top-level node in declaration emit: ${pe.formatSyntaxKind(pt.kind)}`);function Kr(Dn){return An(pt)&&(T=on),it&&(g=nr),pt.kind===268&&(d=Fr),Dn===pt?Dn:(Ee=void 0,_e=void 0,Dn&&ua(ks(Dn,pt),pt))}}function lo(pt){if(!F(pt.declarationList.declarations,mn))return;let on=Ws(pt.declarationList.declarations,ba,nc);if(!B(on))return;let it=ee.createNodeArray(Tu(pt)),nr;return tI(pt.declarationList)||Sd(pt.declarationList)?(nr=ee.createVariableDeclarationList(on,2),ua(nr,pt.declarationList),gn(nr,pt.declarationList),hh(nr,pt.declarationList)):nr=ee.updateVariableDeclarationList(pt.declarationList,on),ee.updateVariableStatement(pt,it,nr)}function pa(pt){return Nr(Xt(pt.elements,on=>Oa(on)))}function Oa(pt){if(pt.kind!==233&&pt.name)return mn(pt)?Nu(pt.name)?pa(pt.name):ee.createVariableDeclaration(pt.name,void 0,zt(pt),void 0):void 0}function tl(pt){let on;M||(on=g,g=c3t(pt)),_e=pt.name,pe.assert(XD(pt));let nr=pt.name.expression;si(nr,T),M||(g=on),_e=void 0}function Qu(pt){return!!Tt&&!!pt&&Zre(pt,Ne)}function Tg(pt){return Cf(pt)||Gh(pt)}function Cs(pt){return jt(pt,Tg)}function Tu(pt){let on=o_(pt),it=Pr(pt);return on===it?Sde(pt.modifiers,nr=>Gs(nr,Ig),Ig):ee.createModifiersFromModifierFlags(it)}function Pr(pt){let on=130030,it=d&&!ews(pt)?128:0,nr=pt.parent.kind===308;return(!nr||h&&nr&&xm(pt.parent))&&(on^=128,it=0),Utn(pt,on,it)}function Pn(pt){return ee.createNodeArray(Me(At(pt,on=>ee.updateHeritageClause(on,Ws(ee.createNodeArray(Me(on.types,it=>Od(it.expression)||on.token===96&&it.expression.kind===106)),ba,l_))),on=>on.types&&!!on.types.length))}}function ews(s){return s.kind===265}function tws(s,c,g,d){return s.createModifiersFromModifierFlags(Utn(c,g,d))}function Utn(s,c=131070,g=0){let d=o_(s)&c|g;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function Ktn(s){switch(s.kind){case 173:case 172:return!Gb(s,2);case 170:case 261:return!0}return!1}function rws(s){switch(s.kind){case 263:case 268:case 272:case 265:case 264:case 266:case 267:case 244:case 273:case 279:case 278:return!0}return!1}function nws(s){switch(s.kind){case 181:case 177:case 175:case 178:case 179:case 173:case 172:case 174:case 180:case 182:case 261:case 169:case 234:case 184:case 195:case 185:case 186:case 206:return!0}return!1}function iws(s){switch(s){case 200:return Jet;case 99:case 7:case 6:case 5:case 100:case 101:case 102:case 199:case 1:return a3t;case 4:return o3t;default:return Xet}}var g3t={scriptTransformers:E,declarationTransformers:E};function A3t(s,c,g){return{scriptTransformers:sws(s,c,g),declarationTransformers:ows(c)}}function sws(s,c,g){if(g)return E;let d=Mg(s),h=i0(s),_=Wne(s),S=[];return Or(S,c&&At(c.before,ztn)),S.push(HOt),s.experimentalDecorators&&S.push(XOt),NAe(s)&&S.push(r3t),d<99&&S.push($Ot),!s.experimentalDecorators&&(d<99||!_)&&S.push(JOt),S.push(YOt),d<8&&S.push(qOt),d<7&&S.push(zOt),d<6&&S.push(jOt),d<5&&S.push(KOt),d<4&&S.push(UOt),d<3&&S.push(n3t),d<2&&(S.push(i3t),S.push(s3t)),S.push(iws(h)),Or(S,c&&At(c.after,ztn)),S}function ows(s){let c=[];return c.push(Uet),Or(c,s&&At(s.afterDeclarations,cws)),c}function aws(s){return c=>OPt(c)?s.transformBundle(c):s.transformSourceFile(c)}function jtn(s,c){return g=>{let d=s(g);return typeof d=="function"?c(g,d):aws(d)}}function ztn(s){return jtn(s,rR)}function cws(s){return jtn(s,(c,g)=>g)}function Dde(s,c){return c}function WEe(s,c,g){g(s,c)}function OEe(s,c,g,d,h,_,S){var R,T;let W=new Array(359),V,M,ee,re=0,ge=[],Ie=[],_e=[],Ee=[],Ne=0,Te=!1,Ze=[],We=0,Ue,$e,Ye=Dde,Tt=WEe,ot=0,Qe=[],mt={factory:g,getCompilerOptions:()=>d,getEmitResolver:()=>s,getEmitHost:()=>c,getEmitHelperFactory:FA(()=>XLe(mt)),startLexicalEnvironment:dt,suspendLexicalEnvironment:pr,resumeLexicalEnvironment:st,endLexicalEnvironment:ir,setLexicalEnvironmentFlags:zt,getLexicalEnvironmentFlags:Ht,hoistVariableDeclaration:tr,hoistFunctionDeclaration:ur,addInitializationStatement:Gr,startBlockScope:Br,endBlockScope:mn,addBlockScopedVariable:jn,requestEmitHelper:Zi,readEmitHelpers:Ns,enableSubstitution:Ke,enableEmitNotification:Gt,isSubstitutionEnabled:Pt,isEmitNotificationEnabled:nt,get onSubstituteNode(){return Ye},set onSubstituteNode(si){pe.assert(ot<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Ye=si},get onEmitNode(){return Tt},set onEmitNode(si){pe.assert(ot<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Tt=si},addDiagnostic(si){Qe.push(si)}};for(let si of h)Ku(ms($l(si)));Mc("beforeTransform");let ht=_.map(si=>si(mt)),_t=si=>{for(let ks of ht)si=ks(si);return si};ot=1;let Rt=[];for(let si of h)(R=ki)==null||R.push(ki.Phase.Emit,"transformNodes",si.kind===308?{path:si.path}:{kind:si.kind,pos:si.pos,end:si.end}),Rt.push((S?_t:Lt)(si)),(T=ki)==null||T.pop();return ot=2,Mc("afterTransform"),Pf("transformTime","beforeTransform","afterTransform"),{transformed:Rt,substituteNode:_r,emitNodeWithNotification:Dt,isEmitNotificationEnabled:nt,dispose:An,diagnostics:Qe};function Lt(si){return si&&(!ll(si)||!si.isDeclarationFile)?_t(si):si}function Ke(si){pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),W[si]|=1}function Pt(si){return(W[si.kind]&1)!==0&&(tA(si)&8)===0}function _r(si,ks){return pe.assert(ot<3,"Cannot substitute a node after the result is disposed."),ks&&Pt(ks)&&Ye(si,ks)||ks}function Gt(si){pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),W[si]|=2}function nt(si){return(W[si.kind]&2)!==0||(tA(si)&4)!==0}function Dt(si,ks,Ic){pe.assert(ot<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),ks&&(nt(ks)?Tt(si,ks,Ic):Ic(si,ks))}function tr(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed.");let ks=ti(g.createVariableDeclaration(si),128);V?V.push(ks):V=[ks],re&1&&(re|=2)}function ur(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),M?M.push(si):M=[si]}function Gr(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),ee?ee.push(si):ee=[si]}function dt(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended."),ge[Ne]=V,Ie[Ne]=M,_e[Ne]=ee,Ee[Ne]=re,Ne++,V=void 0,M=void 0,ee=void 0,re=0}function pr(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is already suspended."),Te=!0}function st(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(Te,"Lexical environment is not suspended."),Te=!1}function ir(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended.");let si;if(V||M||ee){if(M&&(si=[...M]),V){let ks=g.createVariableStatement(void 0,g.createVariableDeclarationList(V));ti(ks,2097152),si?si.push(ks):si=[ks]}ee&&(si?si=[...si,...ee]:si=[...ee])}return Ne--,V=ge[Ne],M=Ie[Ne],ee=_e[Ne],re=Ee[Ne],Ne===0&&(ge=[],Ie=[],_e=[],Ee=[]),si}function zt(si,ks){re=ks?re|si:re&~si}function Ht(){return re}function Br(){pe.assert(ot>0,"Cannot start a block scope during initialization."),pe.assert(ot<2,"Cannot start a block scope after transformation has completed."),Ze[We]=Ue,We++,Ue=void 0}function mn(){pe.assert(ot>0,"Cannot end a block scope during initialization."),pe.assert(ot<2,"Cannot end a block scope after transformation has completed.");let si=jt(Ue)?[g.createVariableStatement(void 0,g.createVariableDeclarationList(Ue.map(ks=>g.createVariableDeclaration(ks)),1))]:void 0;return We--,Ue=Ze[We],We===0&&(Ze=[]),si}function jn(si){pe.assert(We>0,"Cannot add a block scoped variable outside of an iteration body."),(Ue||(Ue=[])).push(si)}function Zi(si){if(pe.assert(ot>0,"Cannot modify the transformation context during initialization."),pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),pe.assert(!si.scoped,"Cannot request a scoped emit helper."),si.dependencies)for(let ks of si.dependencies)Zi(ks);$e=Ft($e,si)}function Ns(){pe.assert(ot>0,"Cannot modify the transformation context during initialization."),pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed.");let si=$e;return $e=void 0,si}function An(){if(ot<3){for(let si of h)Ku(ms($l(si)));V=void 0,ge=void 0,M=void 0,Ie=void 0,Ye=void 0,Tt=void 0,$e=void 0,ot=3}}}var MEe={factory:me,getCompilerOptions:()=>({}),getEmitResolver:il,getEmitHost:il,getEmitHelperFactory:il,startLexicalEnvironment:Dc,resumeLexicalEnvironment:Dc,suspendLexicalEnvironment:Dc,endLexicalEnvironment:cm,setLexicalEnvironmentFlags:Dc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:Dc,hoistFunctionDeclaration:Dc,addInitializationStatement:Dc,startBlockScope:Dc,endBlockScope:cm,addBlockScopedVariable:Dc,requestEmitHelper:Dc,readEmitHelpers:il,enableSubstitution:Dc,enableEmitNotification:Dc,isSubstitutionEnabled:il,isEmitNotificationEnabled:il,onSubstituteNode:Dde,onEmitNode:WEe,addDiagnostic:Dc},qtn=uws();function d3t(s){return aA(s,".tsbuildinfo")}function Ket(s,c,g,d=!1,h,_){let S=Ki(g)?g:cAe(s,g,d),R=s.getCompilerOptions();if(!h)if(R.outFile){if(S.length){let T=me.createBundle(S),W=c(kde(T,s,d),T);if(W)return W}}else for(let T of S){let W=c(kde(T,s,d),T);if(W)return W}if(_){let T=U3(R);if(T)return c({buildInfoPath:T},void 0)}}function U3(s){let c=s.configFilePath;if(!lws(s))return;if(s.tsBuildInfoFile)return s.tsBuildInfoFile;let g=s.outFile,d;if(g)d=s0(g);else{if(!c)return;let h=s0(c);d=s.outDir?s.rootDir?AE(s.outDir,mp(s.rootDir,h,!0)):Ro(s.outDir,gp(h)):h}return d+".tsbuildinfo"}function lws(s){return DP(s)||!!s.tscBuild}function p3t(s,c){let g=s.outFile,d=s.emitDeclarationOnly?void 0:g,h=d&&$tn(d,s),_=c||Ly(s)?s0(g)+".d.ts":void 0,S=_&&wAe(s)?_+".map":void 0;return{jsFilePath:d,sourceMapFilePath:h,declarationFilePath:_,declarationMapPath:S}}function kde(s,c,g){let d=c.getCompilerOptions();if(s.kind===309)return p3t(d,g);{let h=NZe(s.fileName,c,HEe(s.fileName,d)),_=Zu(s),S=_&&qf(s.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||S?void 0:h,T=!R||Zu(s)?void 0:$tn(R,d),W=g||Ly(d)&&!_?DZe(s.fileName,c):void 0,V=W&&wAe(d)?W+".map":void 0;return{jsFilePath:R,sourceMapFilePath:T,declarationFilePath:W,declarationMapPath:V}}}function $tn(s,c){return c.sourceMap&&!c.inlineSourceMap?s+".map":void 0}function HEe(s,c){return aA(s,".json")?".json":c.jsx===1&&fu(s,[".jsx",".tsx"])?".jsx":fu(s,[".mts",".mjs"])?".mjs":fu(s,[".cts",".cjs"])?".cjs":".js"}function ern(s,c,g,d){return g?AE(g,mp(d(),s,c)):s}function xde(s,c,g,d=()=>RU(c,g)){return jet(s,c.options,g,d)}function jet(s,c,g,d){return fN(ern(s,g,c.declarationDir||c.outDir,d),oAe(s))}function trn(s,c,g,d=()=>RU(c,g)){if(c.options.emitDeclarationOnly)return;let h=aA(s,".json"),_=zet(s,c.options,g,d);return!h||qf(s,_,pe.checkDefined(c.options.configFilePath),g)!==0?_:void 0}function zet(s,c,g,d){return fN(ern(s,g,c.outDir,d),HEe(s,c))}function rrn(){let s;return{addOutput:c,getOutputs:g};function c(d){d&&(s||(s=[])).push(d)}function g(){return s||E}}function nrn(s,c){let{jsFilePath:g,sourceMapFilePath:d,declarationFilePath:h,declarationMapPath:_}=p3t(s.options,!1);c(g),c(d),c(h),c(_)}function irn(s,c,g,d,h){if(PC(c))return;let _=trn(c,s,g,h);if(d(_),!aA(c,".json")&&(_&&s.options.sourceMap&&d(`${_}.map`),Ly(s.options))){let S=xde(c,s,g,h);d(S),s.options.declarationMap&&d(`${S}.map`)}}function Gde(s,c,g,d,h){let _;return s.rootDir?(_=Xc(s.rootDir,g),h?.(s.rootDir)):s.composite&&s.configFilePath?(_=Mo(Dp(s.configFilePath)),h?.(_)):_=b3t(c(),g,d),_&&_[_.length-1]!==ag&&(_+=ag),_}function RU({options:s,fileNames:c},g){return Gde(s,()=>Me(c,d=>!(s.noEmitForJsFiles&&fu(d,uU))&&!PC(d)),Mo(Dp(pe.checkDefined(s.configFilePath))),_d(!g))}function z9e(s,c){let{addOutput:g,getOutputs:d}=rrn();if(s.options.outFile)nrn(s,g);else{let h=FA(()=>RU(s,c));for(let _ of s.fileNames)irn(s,_,c,g,h)}return g(U3(s.options)),d()}function srn(s,c,g){c=iu(c),pe.assert(k(s.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:h}=rrn();return s.options.outFile?nrn(s,d):irn(s,c,g,d),h()}function qet(s,c){if(s.options.outFile){let{jsFilePath:h,declarationFilePath:_}=p3t(s.options,!1);return pe.checkDefined(h||_,`project ${s.options.configFilePath} expected to have at least one output`)}let g=FA(()=>RU(s,c));for(let h of s.fileNames){if(PC(h))continue;let _=trn(h,s,c,g);if(_)return _;if(!aA(h,".json")&&Ly(s.options))return xde(h,s,c,g)}let d=U3(s.options);return d||pe.fail(`project ${s.options.configFilePath} expected to have at least one output`)}function $et(s,c){return!!c&&!!s}function ett(s,c,g,{scriptTransformers:d,declarationTransformers:h},_,S,R,T){var W=c.getCompilerOptions(),V=W.sourceMap||W.inlineSourceMap||wAe(W)?[]:void 0,M=W.listEmittedFiles?[]:void 0,ee=EF(),re=uN(W),ge=wne(re),{enter:Ie,exit:_e}=U_("printTime","beforePrint","afterPrint"),Ee=!1;return Ie(),Ket(c,Ne,cAe(c,g,R),R,S,!g&&!T),_e(),{emitSkipped:Ee,diagnostics:ee.getDiagnostics(),emittedFiles:M,sourceMaps:V};function Ne({jsFilePath:ht,sourceMapFilePath:_t,declarationFilePath:Rt,declarationMapPath:Lt,buildInfoPath:Ke},Pt){var _r,Gt,nt,Dt,tr,ur;(_r=ki)==null||_r.push(ki.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:ht}),Ze(Pt,ht,_t),(Gt=ki)==null||Gt.pop(),(nt=ki)==null||nt.push(ki.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:Rt}),We(Pt,Rt,Lt),(Dt=ki)==null||Dt.pop(),(tr=ki)==null||tr.push(ki.Phase.Emit,"emitBuildInfo",{buildInfoPath:Ke}),Te(Ke),(ur=ki)==null||ur.pop()}function Te(ht){if(!ht||g)return;if(c.isEmitBlocked(ht)){Ee=!0;return}let _t=c.getBuildInfo()||{version:C};uAe(c,ee,ht,f3t(_t),!1,void 0,{buildInfo:_t}),M?.push(ht)}function Ze(ht,_t,Rt){if(!ht||_||!_t)return;if(c.isEmitBlocked(_t)||W.noEmit){Ee=!0;return}(ll(ht)?[ht]:Me(ht.sourceFiles,Uge)).forEach(_r=>{(W.noCheck||!gU(_r,W))&&$e(_r)});let Lt=OEe(s,c,me,W,[ht],d,!1),Ke={removeComments:W.removeComments,newLine:W.newLine,noEmitHelpers:W.noEmitHelpers,module:i0(W),moduleResolution:k_(W),target:Mg(W),sourceMap:W.sourceMap,inlineSourceMap:W.inlineSourceMap,inlineSources:W.inlineSources,extendedDiagnostics:W.extendedDiagnostics},Pt=MP(Ke,{hasGlobalName:s.hasGlobalName,onEmitNode:Lt.emitNodeWithNotification,isEmitNotificationEnabled:Lt.isEmitNotificationEnabled,substituteNode:Lt.substituteNode});pe.assert(Lt.transformed.length===1,"Should only see one output from the transform"),Ye(_t,Rt,Lt,Pt,W),Lt.dispose(),M&&(M.push(_t),Rt&&M.push(Rt))}function We(ht,_t,Rt){if(!ht||_===0)return;if(!_t){(_||W.emitDeclarationOnly)&&(Ee=!0);return}let Lt=ll(ht)?[ht]:ht.sourceFiles,Ke=R?Lt:Me(Lt,Uge),Pt=W.outFile?[me.createBundle(Ke)]:Ke;Ke.forEach(nt=>{(_&&!Ly(W)||W.noCheck||$et(_,R)||!gU(nt,W))&&Ue(nt)});let _r=OEe(s,c,me,W,Pt,h,!1);if(B(_r.diagnostics))for(let nt of _r.diagnostics)ee.add(nt);let Gt=!!_r.diagnostics&&!!_r.diagnostics.length||!!c.isEmitBlocked(_t)||!!W.noEmit;if(Ee=Ee||Gt,!Gt||R){pe.assert(_r.transformed.length===1,"Should only see one output from the decl transform");let nt={removeComments:W.removeComments,newLine:W.newLine,noEmitHelpers:!0,module:W.module,moduleResolution:W.moduleResolution,target:W.target,sourceMap:_!==2&&W.declarationMap,inlineSourceMap:W.inlineSourceMap,extendedDiagnostics:W.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},Dt=MP(nt,{hasGlobalName:s.hasGlobalName,onEmitNode:_r.emitNodeWithNotification,isEmitNotificationEnabled:_r.isEmitNotificationEnabled,substituteNode:_r.substituteNode}),tr=Ye(_t,Rt,_r,Dt,{sourceMap:nt.sourceMap,sourceRoot:W.sourceRoot,mapRoot:W.mapRoot,extendedDiagnostics:W.extendedDiagnostics});M&&(tr&&M.push(_t),Rt&&M.push(Rt))}_r.dispose()}function Ue(ht){if(Cf(ht)){ht.expression.kind===80&&s.collectLinkedAliases(ht.expression,!0);return}else if(R0(ht)){s.collectLinkedAliases(ht.propertyName||ht.name,!0);return}Lu(ht,Ue)}function $e(ht){n0(ht)||Sz(ht,_t=>{if(km(_t)&&!(Nx(_t)&32)||Mf(_t))return"skip";s.markLinkedReferences(_t)})}function Ye(ht,_t,Rt,Lt,Ke){let Pt=Rt.transformed[0],_r=Pt.kind===309?Pt:void 0,Gt=Pt.kind===308?Pt:void 0,nt=_r?_r.sourceFiles:[Gt],Dt;Tt(Ke,Pt)&&(Dt=vOt(c,gp(Dp(ht)),ot(Ke),Qe(Ke,ht,Gt),Ke)),_r?Lt.writeBundle(_r,ge,Dt):Lt.writeFile(Gt,ge,Dt);let tr;if(Dt){V&&V.push({inputSourceFileNames:Dt.getSources(),sourceMap:Dt.toJSON()});let dt=mt(Ke,Dt,ht,_t,Gt);if(dt&&(ge.isAtStartOfLine()||ge.rawWrite(re),tr=ge.getTextPos(),ge.writeComment(`//# sourceMappingURL=${dt}`)),_t){let pr=Dt.toString();uAe(c,ee,_t,pr,!1,nt)}}else ge.writeLine();let ur=ge.getText(),Gr={sourceMapUrlPos:tr,diagnostics:Rt.diagnostics};return uAe(c,ee,ht,ur,!!W.emitBOM,nt,Gr),ge.clear(),!Gr.skippedDtsWrite}function Tt(ht,_t){return(ht.sourceMap||ht.inlineSourceMap)&&(_t.kind!==308||!aA(_t.fileName,".json"))}function ot(ht){let _t=Dp(ht.sourceRoot||"");return _t&&hp(_t)}function Qe(ht,_t,Rt){if(ht.sourceRoot)return c.getCommonSourceDirectory();if(ht.mapRoot){let Lt=Dp(ht.mapRoot);return Rt&&(Lt=Mo(lAe(Rt.fileName,c,Lt))),Wf(Lt)===0&&(Lt=Ro(c.getCommonSourceDirectory(),Lt)),Lt}return Mo(iu(_t))}function mt(ht,_t,Rt,Lt,Ke){if(ht.inlineSourceMap){let _r=_t.toString();return`data:application/json;base64,${sbe(yd,_r)}`}let Pt=gp(Dp(pe.checkDefined(Lt)));if(ht.mapRoot){let _r=Dp(ht.mapRoot);return Ke&&(_r=Mo(lAe(Ke.fileName,c,_r))),Wf(_r)===0?(_r=Ro(c.getCommonSourceDirectory(),_r),encodeURI(Of(Mo(iu(Rt)),Ro(_r,Pt),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(Ro(_r,Pt))}return encodeURI(Pt)}}function f3t(s){return JSON.stringify(s)}function ttt(s,c){return obe(s,c)}var I3t={hasGlobalName:il,getReferencedExportContainer:il,getReferencedImportDeclaration:il,getReferencedDeclarationWithCollidingName:il,isDeclarationWithCollidingName:il,isValueAliasDeclaration:il,isReferencedAliasDeclaration:il,isTopLevelValueImportEqualsWithEntityName:il,hasNodeCheckFlag:il,isDeclarationVisible:il,isLateBound:s=>!1,collectLinkedAliases:il,markLinkedReferences:il,isImplementationOfOverload:il,requiresAddingImplicitUndefined:il,isExpandoFunctionDeclaration:il,getPropertiesOfContainerFunction:il,createTypeOfDeclaration:il,createReturnTypeOfSignatureDeclaration:il,createTypeOfExpression:il,createLiteralConstValue:il,isSymbolAccessible:il,isEntityNameVisible:il,getConstantValue:il,getEnumMemberValue:il,getReferencedValueDeclaration:il,getReferencedValueDeclarations:il,getTypeReferenceSerializationKind:il,isOptionalParameter:il,isArgumentsLocalBinding:il,getExternalModuleFileFromDeclaration:il,isLiteralConstDeclaration:il,getJsxFactoryEntity:il,getJsxFragmentFactoryEntity:il,isBindingCapturedByNode:il,getDeclarationStatementsForSourceFile:il,isImportRequiredByAugmentation:il,isDefinitelyReferenceToGlobalSymbolObject:il,createLateBoundIndexSignatures:il,symbolToDeclarations:il},h3t=FA(()=>MP({})),gQ=FA(()=>MP({removeComments:!0})),m3t=FA(()=>MP({removeComments:!0,neverAsciiEscape:!0})),rtt=FA(()=>MP({removeComments:!0,omitTrailingSemicolon:!0}));function MP(s={},c={}){var{hasGlobalName:g,onEmitNode:d=WEe,isEmitNotificationEnabled:h,substituteNode:_=Dde,onBeforeEmitNode:S,onAfterEmitNode:R,onBeforeEmitNodeArray:T,onAfterEmitNodeArray:W,onBeforeEmitToken:V,onAfterEmitToken:M}=c,ee=!!s.extendedDiagnostics,re=!!s.omitBraceSourceMapPositions,ge=uN(s),Ie=i0(s),_e=new Map,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt,ot,Qe,mt,ht,_t,Rt,Lt=s.preserveSourceNewlines,Ke,Pt,_r,Gt=hse,nt,Dt=!0,tr,ur,Gr=-1,dt,pr=-1,st=-1,ir=-1,zt=-1,Ht,Br,mn=!1,jn=!!s.removeComments,Zi,Ns,{enter:An,exit:si}=Y2(ee,"commentTime","beforeComment","afterComment"),ks=me.parenthesizer,Ic={select:Ae=>Ae===0?ks.parenthesizeLeadingTypeArgument:void 0},su=hm();return Qu(),{printNode:Zn,printList:ya,printFile:ba,printBundle:Gl,writeNode:Wo,writeList:hc,writeFile:hn,writeBundle:yr};function Zn(Ae,Et,fn){switch(Ae){case 0:pe.assert(ll(Et),"Expected a SourceFile node.");break;case 2:pe.assert(Ir(Et),"Expected an Identifier node.");break;case 1:pe.assert(un(Et),"Expected an Expression node.");break}switch(Et.kind){case 308:return ba(Et);case 309:return Gl(Et)}return Wo(Ae,Et,fn,Oi()),lo()}function ya(Ae,Et,fn){return hc(Ae,Et,fn,Oi()),lo()}function Gl(Ae){return yr(Ae,Oi(),void 0),lo()}function ba(Ae){return hn(Ae,Oi(),void 0),lo()}function Wo(Ae,Et,fn,qi){let ic=Pt;tl(qi,void 0),pa(Ae,Et,fn),Qu(),Pt=ic}function hc(Ae,Et,fn,qi){let ic=Pt;tl(qi,void 0),fn&&Oa(fn),fa(void 0,Et,Ae),Qu(),Pt=ic}function yr(Ae,Et,fn){nt=!1;let qi=Pt;tl(Et,fn),u9(Ae),Hw(Ae),En(Ae),_pe(Ae);for(let ic of Ae.sourceFiles)pa(0,ic,ic);Qu(),Pt=qi}function hn(Ae,Et,fn){nt=!0;let qi=Pt;tl(Et,fn),u9(Ae),Hw(Ae),pa(0,Ae,Ae),Qu(),Pt=qi}function Oi(){return _r||(_r=wne(ge))}function lo(){let Ae=_r.getText();return _r.clear(),Ae}function pa(Ae,Et,fn){fn&&Oa(fn),it(Ae,Et,void 0)}function Oa(Ae){Ee=Ae,Ht=void 0,Br=void 0,Ae&&kQ(Ae)}function tl(Ae,Et){Ae&&s.omitTrailingSemicolon&&(Ae=Mye(Ae)),Pt=Ae,tr=Et,Dt=!Pt||!tr}function Qu(){Ne=[],Te=[],Ze=[],We=new Set,Ue=[],$e=new Map,Ye=[],Tt=0,ot=[],Qe=0,mt=[],ht=void 0,_t=[],Rt=void 0,Ee=void 0,Ht=void 0,Br=void 0,tl(void 0,void 0)}function Tg(){return Ht||(Ht=rn(pe.checkDefined(Ee)))}function Cs(Ae,Et){Ae!==void 0&&it(4,Ae,Et)}function Tu(Ae){Ae!==void 0&&it(2,Ae,void 0)}function Pr(Ae,Et){Ae!==void 0&&it(1,Ae,Et)}function Pn(Ae){it(Zg(Ae)?6:4,Ae)}function pt(Ae){Lt&&g1(Ae)&4&&(Lt=!1)}function on(Ae){Lt=Ae}function it(Ae,Et,fn){Ns=fn,Kr(0,Ae,Et)(Ae,Et),Ns=void 0}function nr(Ae){return!jn&&!ll(Ae)}function Fr(Ae){return!Dt&&!ll(Ae)&&!Jge(Ae)}function Kr(Ae,Et,fn){switch(Ae){case 0:if(d!==WEe&&(!h||h(fn)))return hr;case 1:if(_!==Dde&&(Zi=_(Et,fn)||fn)!==fn)return Ns&&(Zi=Ns(Zi)),nn;case 2:if(nr(fn))return NQ;case 3:if(Fr(fn))return sK;case 4:return Sn;default:return pe.assertNever(Ae)}}function Dn(Ae,Et,fn){return Kr(Ae+1,Et,fn)}function hr(Ae,Et){let fn=Dn(0,Ae,Et);d(Ae,Et,fn)}function Sn(Ae,Et){if(S?.(Et),Lt){let fn=Lt;pt(Et),Ni(Ae,Et),on(fn)}else Ni(Ae,Et);R?.(Et),Ns=void 0}function Ni(Ae,Et,fn=!0){if(fn){let qi=qbe(Et);if(qi)return Bt(Ae,Et,qi)}if(Ae===0)return d5(Ma(Et,ll));if(Ae===2)return Je(Ma(Et,Ir));if(Ae===6)return cn(Ma(Et,Zg),!0);if(Ae===3)return Gi(Ma(Et,Ds));if(Ae===7)return GN(Ma(Et,CU));if(Ae===5)return pe.assertNode(Et,A$e),oR(!0);if(Ae===4){switch(Et.kind){case 16:case 17:case 18:return cn(Et,!1);case 80:return Je(Et);case 81:return In(Et);case 167:return Hn(Et);case 168:return $r(Et);case 169:return ri(Et);case 170:return ao(Et);case 171:return Bs(Et);case 172:return Ys(Et);case 173:return tn(Et);case 174:return wn(Et);case 175:return Mn(Et);case 176:return ci(Et);case 177:return es(Et);case 178:case 179:return Wi(Et);case 180:return Vn(Et);case 181:return Ui(Et);case 182:return gs(Et);case 183:return mc(Et);case 184:return gg(Et);case 185:return Ag(Et);case 186:return tm(Et);case 187:return jp(Et);case 188:return Xg(Et);case 189:return sh(Et);case 190:return gu(Et);case 191:return KA(Et);case 193:return TA(Et);case 194:return oi(Et);case 195:return $d(Et);case 196:return YI(Et);case 197:return Fh(Et);case 234:return OC(Et);case 198:return WC();case 199:return _f(Et);case 200:return QI(Et);case 201:return ve(Et);case 202:return mr(Et);case 203:return bg(Et);case 204:return ln(Et);case 205:return fs(Et);case 206:return ni(Et);case 207:return Ls(Et);case 208:return Za(Et);case 209:return Go(Et);case 240:return Wx(Et);case 241:return bi();case 242:return Ox(Et);case 244:return qm(Et);case 243:return oR(!1);case 245:return pS(Et);case 246:return xN(Et);case 247:return en(Et);case 248:return gi(Et);case 249:return _i(Et);case 250:return ys(Et);case 251:return eo(Et);case 252:return pc(Et);case 253:return ul(Et);case 254:return eg(Et);case 255:return jl(Et);case 256:return Eu(Et);case 257:return Df(Et);case 258:return Jg(Et);case 259:return MC(Et);case 260:return S1(Et);case 261:return fS(Et);case 262:return bv(Et);case 263:return XF(Et);case 264:return is(Et);case 265:return Oo(Et);case 266:return Os(Et);case 267:return co(Et);case 268:return Yc(Et);case 269:return tu(Et);case 270:return $a(Et);case 271:return ak(Et);case 272:return ru(Et);case 273:return kf(Et);case 274:return Wb(Et);case 275:return OB(Et);case 281:return Ase(Et);case 276:return p_(Et);case 277:return MB(Et);case 278:return v1(Et);case 279:return s5(Et);case 280:return mpe(Et);case 282:return dse(Et);case 301:return ok(Et);case 302:return o5(Et);case 283:return;case 284:return WU(Et);case 12:return MU(Et);case 287:case 290:return Cpe(Et);case 288:case 291:return $z(Et);case 292:return pse(Et);case 293:return c5(Et);case 294:return HU(Et);case 295:return tq(Et);case 296:return rq(Et);case 297:return jP(Et);case 298:return c9(Et);case 299:return UF(Et);case 300:return KF(Et);case 304:return zP(Et);case 305:return l5(Et);case 306:return YU(Et);case 307:return u5(Et);case 308:return d5(Et);case 309:return pe.fail("Bundles should be printed using printBundle");case 310:return A5(Et);case 311:return zF(Et);case 313:return qo("*");case 314:return qo("?");case 315:return pp(Et);case 316:return Dl(Et);case 317:return yu(Et);case 318:return AI(Et);case 192:case 319:return dS(Et);case 320:return;case 321:return PA(Et);case 323:return Ay(Et);case 324:return lk(Et);case 328:case 333:case 338:return g5(Et);case 329:case 330:return ck(Et);case 331:case 332:return;case 334:case 335:case 336:case 337:return;case 339:return Ob(Et);case 340:return u0(Et);case 342:case 349:return Hy(Et);case 341:case 343:case 344:case 345:case 350:case 351:return QU(Et);case 346:return bf(Et);case 347:return l0(Et);case 348:return fse(Et);case 352:return jF(Et);case 354:case 355:return}if(un(Et)&&(Ae=1,_!==Dde)){let qi=_(Ae,Et)||Et;qi!==Et&&(Et=qi,Ns&&(Et=Ns(Et)))}}if(Ae===1)switch(Et.kind){case 9:case 10:return Mt(Et);case 11:case 14:case 15:return cn(Et,!1);case 80:return Je(Et);case 81:return In(Et);case 210:return Ss(Et);case 211:return Uc(Et);case 212:return rl(Et);case 213:return Lg(Et);case 214:return yf(Et);case 215:return rm(Et);case 216:return _h(Et);case 217:return Gp(Et);case 218:return oh(Et);case 219:return b1(Et);case 220:return Z_(Et);case 221:return or(Et);case 222:return qn(Et);case 223:return Js(Et);case 224:return Hl(Et);case 225:return RA(Et);case 226:return uA(Et);case 227:return su(Et);case 228:return af(Et);case 229:return dI(Et);case 230:return XI(Et);case 231:return C2(Et);case 232:return d_(Et);case 233:return;case 235:return E1(Et);case 236:return gy(Et);case 234:return OC(Et);case 239:return yv(Et);case 237:return ik(Et);case 238:return pe.fail("SyntheticExpression should never be printed.");case 283:return;case 285:return a9(Et);case 286:return OU(Et);case 289:return qz(Et);case 353:return pe.fail("SyntaxList should not be printed");case 354:return;case 356:return Sr(Et);case 357:return XU(Et);case 358:return pe.fail("SyntheticReferenceExpression should not be printed")}if(v0(Et.kind))return jU(Et,hu);if(q6(Et.kind))return jU(Et,qo);pe.fail(`Unhandled SyntaxKind: ${pe.formatSyntaxKind(Et.kind)}.`)}function Gi(Ae){Cs(Ae.name),Fo(),hu("in"),Fo(),Cs(Ae.constraint)}function nn(Ae,Et){let fn=Dn(1,Ae,Et);pe.assertIsDefined(Zi),Et=Zi,Zi=void 0,fn(Ae,Et)}function En(Ae){let Et=!1,fn=Ae.kind===309?Ae:void 0;if(fn&&Ie===0)return;let qi=fn?fn.sourceFiles.length:1;for(let ic=0;ic")}function wI(Ae){Fo(),Cs(Ae.type)}function AI(Ae){hu("function"),f5(Ae,Ae.parameters),qo(":"),Cs(Ae.type)}function pp(Ae){qo("?"),Cs(Ae.type)}function Dl(Ae){qo("!"),Cs(Ae.type)}function yu(Ae){Cs(Ae.type),qo("=")}function tm(Ae){cR(Ae,Ae.modifiers),hu("new"),Fo(),My(Ae,_u,wI)}function jp(Ae){hu("typeof"),Fo(),Cs(Ae.exprName),Ev(Ae,Ae.typeArguments)}function Xg(Ae){Qw(Ae),F(Ae.members,RQ),qo("{");let Et=tA(Ae)&1?768:32897;fa(Ae,Ae.members,Et|524288),qo("}"),tZ(Ae)}function sh(Ae){Cs(Ae.elementType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),qo("]")}function dS(Ae){qo("..."),Cs(Ae.type)}function gu(Ae){Fe(23,Ae.pos,qo,Ae);let Et=tA(Ae)&1?528:657;fa(Ae,Ae.elements,Et|524288,ks.parenthesizeElementTypeOfTupleType),Fe(24,Ae.elements.end,qo,Ae)}function bg(Ae){Cs(Ae.dotDotDotToken),Cs(Ae.name),Cs(Ae.questionToken),Fe(59,Ae.name.end,qo,Ae),Fo(),Cs(Ae.type)}function KA(Ae){Cs(Ae.type,ks.parenthesizeTypeOfOptionalType),qo("?")}function TA(Ae){fa(Ae,Ae.types,516,ks.parenthesizeConstituentTypeOfUnionType)}function oi(Ae){fa(Ae,Ae.types,520,ks.parenthesizeConstituentTypeOfIntersectionType)}function $d(Ae){Cs(Ae.checkType,ks.parenthesizeCheckTypeOfConditionalType),Fo(),hu("extends"),Fo(),Cs(Ae.extendsType,ks.parenthesizeExtendsTypeOfConditionalType),Fo(),qo("?"),Fo(),Cs(Ae.trueType),Fo(),qo(":"),Fo(),Cs(Ae.falseType)}function YI(Ae){hu("infer"),Fo(),Cs(Ae.typeParameter)}function Fh(Ae){qo("("),Cs(Ae.type),qo(")")}function WC(){hu("this")}function _f(Ae){tW(Ae.operator,hu),Fo();let Et=Ae.operator===148?ks.parenthesizeOperandOfReadonlyTypeOperator:ks.parenthesizeOperandOfTypeOperator;Cs(Ae.type,Et)}function QI(Ae){Cs(Ae.objectType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),Cs(Ae.indexType),qo("]")}function ve(Ae){let Et=tA(Ae);qo("{"),Et&1?Fo():(G0(),uk()),Ae.readonlyToken&&(Cs(Ae.readonlyToken),Ae.readonlyToken.kind!==148&&hu("readonly"),Fo()),qo("["),it(3,Ae.typeParameter),Ae.nameType&&(Fo(),hu("as"),Fo(),Cs(Ae.nameType)),qo("]"),Ae.questionToken&&(Cs(Ae.questionToken),Ae.questionToken.kind!==58&&qo("?")),qo(":"),Fo(),Cs(Ae.type),py(),Et&1?Fo():(G0(),lR()),fa(Ae,Ae.members,2),qo("}")}function mr(Ae){Pr(Ae.literal)}function ln(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function ni(Ae){Ae.isTypeOf&&(hu("typeof"),Fo()),hu("import"),qo("("),Cs(Ae.argument),Ae.attributes&&(qo(","),Fo(),it(7,Ae.attributes)),qo(")"),Ae.qualifier&&(qo("."),Cs(Ae.qualifier)),Ev(Ae,Ae.typeArguments)}function Ls(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function Za(Ae){qo("["),fa(Ae,Ae.elements,524880),qo("]")}function Go(Ae){Cs(Ae.dotDotDotToken),Ae.propertyName&&(Cs(Ae.propertyName),qo(":"),Fo()),Cs(Ae.name),p5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function Ss(Ae){let Et=Ae.elements,fn=Ae.multiLine?65536:0;sa(Ae,Et,8914|fn,ks.parenthesizeExpressionForDisallowedComma)}function Uc(Ae){Qw(Ae),F(Ae.properties,RQ);let Et=tA(Ae)&131072;Et&&uk();let fn=Ae.multiLine?65536:0,qi=Ee&&Ee.languageVersion>=1&&!Zu(Ee)?64:0;fa(Ae,Ae.properties,526226|qi|fn),Et&&lR(),tZ(Ae)}function rl(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess);let Et=Ae.questionDotToken||TB(me.createToken(25),Ae.expression.end,Ae.name.pos),fn=ZN(Ae,Ae.expression,Et),qi=ZN(Ae,Et,Ae.name);Sv(fn,!1),Et.kind!==29&&xd(Ae.expression)&&!Pt.hasTrailingComment()&&!Pt.hasTrailingWhitespace()&&qo("."),Ae.questionDotToken?Cs(Et):Fe(Et.kind,Ae.expression.end,qo,Ae),Sv(qi,!1),Cs(Ae.name),Mb(fn,qi)}function xd(Ae){if(Ae=o2(Ae),mC(Ae)){let Et=iW(Ae,void 0,!0,!1);return!(Ae.numericLiteralFlags&448)&&!Et.includes(Vi(25))&&!Et.includes("E")&&!Et.includes("e")}else if(_p(Ae)){let Et=VLe(Ae);return typeof Et=="number"&&isFinite(Et)&&Et>=0&&Math.floor(Et)===Et}}function Lg(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Cs(Ae.questionDotToken),Fe(23,Ae.expression.end,qo,Ae),Pr(Ae.argumentExpression),Fe(24,Ae.argumentExpression.end,qo,Ae)}function yf(Ae){let Et=g1(Ae)&16;Et&&(qo("("),$F("0"),qo(","),Fo()),Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Et&&qo(")"),Cs(Ae.questionDotToken),Ev(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,2576,ks.parenthesizeExpressionForDisallowedComma)}function rm(Ae){Fe(105,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeExpressionOfNew),Ev(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,18960,ks.parenthesizeExpressionForDisallowedComma)}function _h(Ae){let Et=g1(Ae)&16;Et&&(qo("("),$F("0"),qo(","),Fo()),Pr(Ae.tag,ks.parenthesizeLeftSideOfAccess),Et&&qo(")"),Ev(Ae,Ae.typeArguments),Fo(),Pr(Ae.template)}function Gp(Ae){qo("<"),Cs(Ae.type),qo(">"),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function oh(Ae){let Et=Fe(21,Ae.pos,qo,Ae),fn=rW(Ae.expression,Ae);Pr(Ae.expression,void 0),sq(Ae.expression,Ae),Mb(fn),Fe(22,Ae.expression?Ae.expression.end:Et,qo,Ae)}function b1(Ae){Xx(Ae.name),o9(Ae)}function Z_(Ae){cR(Ae,Ae.modifiers),My(Ae,m2,Vb)}function m2(Ae){Yx(Ae,Ae.typeParameters),FN(Ae,Ae.parameters),YB(Ae.type),Fo(),Cs(Ae.equalsGreaterThanToken)}function Vb(Ae){$u(Ae.body)?br(Ae.body):(Fo(),Pr(Ae.body,ks.parenthesizeConciseBodyOfArrowFunction))}function or(Ae){Fe(91,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function qn(Ae){Fe(114,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Js(Ae){Fe(116,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Hl(Ae){Fe(135,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function RA(Ae){tW(Ae.operator,vE),NA(Ae)&&Fo(),Pr(Ae.operand,ks.parenthesizeOperandOfPrefixUnary)}function NA(Ae){let Et=Ae.operand;return Et.kind===225&&(Ae.operator===40&&(Et.operator===40||Et.operator===46)||Ae.operator===41&&(Et.operator===41||Et.operator===47))}function uA(Ae){Pr(Ae.operand,ks.parenthesizeOperandOfPostfixUnary),tW(Ae.operator,vE)}function hm(){return u9e(Ae,Et,fn,qi,ic,void 0);function Ae(zl,Vc){if(Vc){Vc.stackIndex++,Vc.preserveSourceNewlinesStack[Vc.stackIndex]=Lt,Vc.containerPosStack[Vc.stackIndex]=st,Vc.containerEndStack[Vc.stackIndex]=ir,Vc.declarationListContainerEndStack[Vc.stackIndex]=zt;let _A=Vc.shouldEmitCommentsStack[Vc.stackIndex]=nr(zl),Lh=Vc.shouldEmitSourceMapsStack[Vc.stackIndex]=Fr(zl);S?.(zl),_A&&uR(zl),Lh&&jA(zl),pt(zl)}else Vc={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return Vc}function Et(zl,Vc,_A){return Oc(zl,_A,"left")}function fn(zl,Vc,_A){let Lh=zl.kind!==28,g0=ZN(_A,_A.left,zl),Yy=ZN(_A,zl,_A.right);Sv(g0,Lh),Ux(zl.pos),jU(zl,zl.kind===103?hu:vE),Xw(zl.end,!0),Sv(Yy,!0)}function qi(zl,Vc,_A){return Oc(zl,_A,"right")}function ic(zl,Vc){let _A=ZN(zl,zl.left,zl.operatorToken),Lh=ZN(zl,zl.operatorToken,zl.right);if(Mb(_A,Lh),Vc.stackIndex>0){let g0=Vc.preserveSourceNewlinesStack[Vc.stackIndex],Yy=Vc.containerPosStack[Vc.stackIndex],B5=Vc.containerEndStack[Vc.stackIndex],Qy=Vc.declarationListContainerEndStack[Vc.stackIndex],aW=Vc.shouldEmitCommentsStack[Vc.stackIndex],Iq=Vc.shouldEmitSourceMapsStack[Vc.stackIndex];on(g0),Iq&&Uo(zl),aW&&oW(zl,Yy,B5,Qy),R?.(zl),Vc.stackIndex--}}function Oc(zl,Vc,_A){let Lh=_A==="left"?ks.getParenthesizeLeftSideOfBinaryForOperator(Vc.operatorToken.kind):ks.getParenthesizeRightSideOfBinaryForOperator(Vc.operatorToken.kind),g0=Kr(0,1,zl);if(g0===nn&&(pe.assertIsDefined(Zi),zl=Lh(Ma(Zi,un)),g0=Dn(1,1,zl),Zi=void 0),(g0===NQ||g0===sK||g0===Sn)&&fo(zl))return zl;Ns=Lh,g0(1,zl)}}function af(Ae){let Et=ZN(Ae,Ae.condition,Ae.questionToken),fn=ZN(Ae,Ae.questionToken,Ae.whenTrue),qi=ZN(Ae,Ae.whenTrue,Ae.colonToken),ic=ZN(Ae,Ae.colonToken,Ae.whenFalse);Pr(Ae.condition,ks.parenthesizeConditionOfConditionalExpression),Sv(Et,!0),Cs(Ae.questionToken),Sv(fn,!0),Pr(Ae.whenTrue,ks.parenthesizeBranchOfConditionalExpression),Mb(Et,fn),Sv(qi,!0),Cs(Ae.colonToken),Sv(ic,!0),Pr(Ae.whenFalse,ks.parenthesizeBranchOfConditionalExpression),Mb(qi,ic)}function dI(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function XI(Ae){Fe(127,Ae.pos,hu,Ae),Cs(Ae.asteriskToken),g9(Ae.expression&&bs(Ae.expression),Xl)}function C2(Ae){Fe(26,Ae.pos,qo,Ae),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma)}function d_(Ae){Xx(Ae.name),Qs(Ae)}function OC(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Ev(Ae,Ae.typeArguments)}function E1(Ae){Pr(Ae.expression,void 0),Ae.type&&(Fo(),hu("as"),Fo(),Cs(Ae.type))}function gy(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),vE("!")}function yv(Ae){Pr(Ae.expression,void 0),Ae.type&&(Fo(),hu("satisfies"),Fo(),Cs(Ae.type))}function ik(Ae){eW(Ae.keywordToken,Ae.pos,qo),qo("."),Cs(Ae.name)}function Wx(Ae){Pr(Ae.expression),Cs(Ae.literal)}function Ox(Ae){Pb(Ae,!Ae.multiLine&&nW(Ae))}function Pb(Ae,Et){Fe(19,Ae.pos,qo,Ae);let fn=Et||tA(Ae)&1?768:129;fa(Ae,Ae.statements,fn),Fe(20,Ae.statements.end,qo,Ae,!!(fn&1))}function qm(Ae){dy(Ae,Ae.modifiers,!1),Cs(Ae.declarationList),py()}function oR(Ae){Ae?qo(";"):py()}function pS(Ae){Pr(Ae.expression,ks.parenthesizeExpressionOfExpressionStatement),(!Ee||!Zu(Ee)||sp(Ae.expression))&&py()}function xN(Ae){let Et=Fe(101,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.thenStatement),Ae.elseStatement&&(hS(Ae,Ae.thenStatement,Ae.elseStatement),Fe(93,Ae.thenStatement.end,hu,Ae),Ae.elseStatement.kind===246?(Fo(),Cs(Ae.elseStatement)):qF(Ae,Ae.elseStatement))}function at(Ae,Et){let fn=Fe(117,Et,hu,Ae);Fo(),Fe(21,fn,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae)}function en(Ae){Fe(92,Ae.pos,hu,Ae),qF(Ae,Ae.statement),$u(Ae.statement)&&!Lt?Fo():hS(Ae,Ae.statement,Ae.expression),at(Ae,Ae.statement.end),py()}function gi(Ae){at(Ae,Ae.pos),qF(Ae,Ae.statement)}function _i(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo();let fn=Fe(21,Et,qo,Ae);wa(Ae.initializer),fn=Fe(27,Ae.initializer?Ae.initializer.end:fn,qo,Ae),g9(Ae.condition),fn=Fe(27,Ae.condition?Ae.condition.end:fn,qo,Ae),g9(Ae.incrementor),Fe(22,Ae.incrementor?Ae.incrementor.end:fn,qo,Ae),qF(Ae,Ae.statement)}function ys(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),wa(Ae.initializer),Fo(),Fe(103,Ae.initializer.end,hu,Ae),Fo(),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function eo(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo(),JU(Ae.awaitModifier),Fe(21,Et,qo,Ae),wa(Ae.initializer),Fo(),Fe(165,Ae.initializer.end,hu,Ae),Fo(),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function wa(Ae){Ae!==void 0&&(Ae.kind===262?Cs(Ae):Pr(Ae))}function pc(Ae){Fe(88,Ae.pos,hu,Ae),IS(Ae.label),py()}function ul(Ae){Fe(83,Ae.pos,hu,Ae),IS(Ae.label),py()}function Fe(Ae,Et,fn,qi,ic){let Oc=$l(qi),zl=Oc&&Oc.kind===qi.kind,Vc=Et;if(zl&&Ee&&(Et=Yu(Ee.text,Et)),zl&&qi.pos!==Vc){let _A=ic&&Ee&&!yE(Vc,Et,Ee);_A&&uk(),Ux(Vc),_A&&lR()}if(!re&&(Ae===19||Ae===20)?Et=eW(Ae,Et,fn,qi):Et=tW(Ae,fn,Et),zl&&qi.end!==Et){let _A=qi.kind===295;Xw(Et,!_A,_A)}return Et}function gr(Ae){return Ae.kind===2||!!Ae.hasTrailingNewLine}function Ln(Ae){if(!Ee)return!1;let Et=fE(Ee.text,Ae.pos);if(Et){let fn=$l(Ae);if(fn&&gI(fn.parent))return!0}return jt(Et,gr)||jt(k3(Ae),gr)?!0:ly(Ae)?Ae.pos!==Ae.expression.pos&&jt(n2(Ee.text,Ae.expression.pos),gr)?!0:Ln(Ae.expression):!1}function bs(Ae){if(!jn)switch(Ae.kind){case 356:if(Ln(Ae)){let Et=$l(Ae);if(Et&&gI(Et)){let fn=me.createParenthesizedExpression(Ae.expression);return ua(fn,Ae),gn(fn,Et),fn}return me.createParenthesizedExpression(Ae)}return me.updatePartiallyEmittedExpression(Ae,bs(Ae.expression));case 212:return me.updatePropertyAccessExpression(Ae,bs(Ae.expression),Ae.name);case 213:return me.updateElementAccessExpression(Ae,bs(Ae.expression),Ae.argumentExpression);case 214:return me.updateCallExpression(Ae,bs(Ae.expression),Ae.typeArguments,Ae.arguments);case 216:return me.updateTaggedTemplateExpression(Ae,bs(Ae.tag),Ae.typeArguments,Ae.template);case 226:return me.updatePostfixUnaryExpression(Ae,bs(Ae.operand));case 227:return me.updateBinaryExpression(Ae,bs(Ae.left),Ae.operatorToken,Ae.right);case 228:return me.updateConditionalExpression(Ae,bs(Ae.condition),Ae.questionToken,Ae.whenTrue,Ae.colonToken,Ae.whenFalse);case 235:return me.updateAsExpression(Ae,bs(Ae.expression),Ae.type);case 239:return me.updateSatisfiesExpression(Ae,bs(Ae.expression),Ae.type);case 236:return me.updateNonNullExpression(Ae,bs(Ae.expression))}return Ae}function Xl(Ae){return bs(ks.parenthesizeExpressionForDisallowedComma(Ae))}function eg(Ae){Fe(107,Ae.pos,hu,Ae),g9(Ae.expression&&bs(Ae.expression),bs),py()}function jl(Ae){let Et=Fe(118,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function Eu(Ae){let Et=Fe(109,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),Fo(),Cs(Ae.caseBlock)}function Df(Ae){Cs(Ae.label),Fe(59,Ae.label.end,qo,Ae),Fo(),Cs(Ae.statement)}function Jg(Ae){Fe(111,Ae.pos,hu,Ae),g9(bs(Ae.expression),bs),py()}function MC(Ae){Fe(113,Ae.pos,hu,Ae),Fo(),Cs(Ae.tryBlock),Ae.catchClause&&(hS(Ae,Ae.tryBlock,Ae.catchClause),Cs(Ae.catchClause)),Ae.finallyBlock&&(hS(Ae,Ae.catchClause||Ae.tryBlock,Ae.finallyBlock),Fe(98,(Ae.catchClause||Ae.tryBlock).end,hu,Ae),Fo(),Cs(Ae.finallyBlock))}function S1(Ae){eW(89,Ae.pos,hu),py()}function fS(Ae){var Et,fn,qi;Cs(Ae.name),Cs(Ae.exclamationToken),YB(Ae.type),p5(Ae.initializer,((Et=Ae.type)==null?void 0:Et.end)??((qi=(fn=Ae.name.emitNode)==null?void 0:fn.typeNode)==null?void 0:qi.end)??Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function bv(Ae){if(Sd(Ae))hu("await"),Fo(),hu("using");else{let Et=rS(Ae)?"let":rI(Ae)?"const":tI(Ae)?"using":"var";hu(Et)}Fo(),fa(Ae,Ae.declarations,528)}function XF(Ae){o9(Ae)}function o9(Ae){dy(Ae,Ae.modifiers,!1),hu("function"),Cs(Ae.asteriskToken),Fo(),Tu(Ae.name),My(Ae,WB,sk)}function My(Ae,Et,fn){let qi=tA(Ae)&131072;qi&&uk(),Qw(Ae),F(Ae.parameters,HC),Et(Ae),fn(Ae),tZ(Ae),qi&&lR()}function sk(Ae){let Et=Ae.body;Et?br(Et):py()}function aR(Ae){py()}function WB(Ae){Yx(Ae,Ae.typeParameters),f5(Ae,Ae.parameters),YB(Ae.type)}function UP(Ae){if(tA(Ae)&1)return!0;if(Ae.multiLine||!sp(Ae)&&Ee&&!S3(Ae,Ee)||d9(Ae,Nc(Ae.statements),2)||iq(Ae,li(Ae.statements),2,Ae.statements))return!1;let Et;for(let fn of Ae.statements){if(h5(Et,fn,2)>0)return!1;Et=fn}return!0}function br(Ae){HC(Ae),S?.(Ae),Fo(),qo("{"),uk();let Et=UP(Ae)?sn:ei;DQ(Ae,Ae.statements,Et),lR(),eW(20,Ae.statements.end,qo,Ae),R?.(Ae)}function sn(Ae){ei(Ae,!0)}function ei(Ae,Et){let fn=Hx(Ae.statements),qi=Pt.getTextPos();En(Ae),fn===0&&qi===Pt.getTextPos()&&Et?(lR(),fa(Ae,Ae.statements,768),uk()):fa(Ae,Ae.statements,1,void 0,fn)}function is(Ae){Qs(Ae)}function Qs(Ae){dy(Ae,Ae.modifiers,!0),Fe(86,Av(Ae).pos,hu,Ae),Ae.name&&(Fo(),Tu(Ae.name));let Et=tA(Ae)&131072;Et&&uk(),Yx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,0),Fo(),qo("{"),Qw(Ae),F(Ae.members,RQ),fa(Ae,Ae.members,129),tZ(Ae),qo("}"),Et&&lR()}function Oo(Ae){dy(Ae,Ae.modifiers,!1),hu("interface"),Fo(),Cs(Ae.name),Yx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,512),Fo(),qo("{"),Qw(Ae),F(Ae.members,RQ),fa(Ae,Ae.members,129),tZ(Ae),qo("}")}function Os(Ae){dy(Ae,Ae.modifiers,!1),hu("type"),Fo(),Cs(Ae.name),Yx(Ae,Ae.typeParameters),Fo(),qo("="),Fo(),Cs(Ae.type),py()}function co(Ae){dy(Ae,Ae.modifiers,!1),hu("enum"),Fo(),Cs(Ae.name),Fo(),qo("{"),fa(Ae,Ae.members,145),qo("}")}function Yc(Ae){dy(Ae,Ae.modifiers,!1),~Ae.flags&2048&&(hu(Ae.flags&32?"namespace":"module"),Fo()),Cs(Ae.name);let Et=Ae.body;if(!Et)return py();for(;Et&&xh(Et);)qo("."),Cs(Et.name),Et=Et.body;Fo(),Cs(Et)}function tu(Ae){Qw(Ae),F(Ae.statements,HC),Pb(Ae,nW(Ae)),tZ(Ae)}function $a(Ae){Fe(19,Ae.pos,qo,Ae),fa(Ae,Ae.clauses,129),Fe(20,Ae.clauses.end,qo,Ae,!0)}function ru(Ae){dy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,hu,Ae),Fo(),Ae.isTypeOnly&&(Fe(156,Ae.pos,hu,Ae),Fo()),Cs(Ae.name),Fo(),Fe(64,Ae.name.end,qo,Ae),Fo(),gl(Ae.moduleReference),py()}function gl(Ae){Ae.kind===80?Pr(Ae):Cs(Ae)}function kf(Ae){dy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,hu,Ae),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,hu,Ae),Fo()),Pr(Ae.moduleSpecifier),Ae.attributes&&IS(Ae.attributes),py()}function Wb(Ae){Ae.phaseModifier!==void 0&&(Fe(Ae.phaseModifier,Ae.pos,hu,Ae),Fo()),Cs(Ae.name),Ae.name&&Ae.namedBindings&&(Fe(28,Ae.name.end,qo,Ae),Fo()),Cs(Ae.namedBindings)}function OB(Ae){let Et=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,Et,hu,Ae),Fo(),Cs(Ae.name)}function p_(Ae){Mx(Ae)}function MB(Ae){a5(Ae)}function v1(Ae){let Et=Fe(95,Ae.pos,hu,Ae);Fo(),Ae.isExportEquals?Fe(64,Et,vE,Ae):Fe(90,Et,hu,Ae),Fo(),Pr(Ae.expression,Ae.isExportEquals?ks.getParenthesizeRightSideOfBinaryForOperator(64):ks.parenthesizeExpressionOfExportDefault),py()}function s5(Ae){dy(Ae,Ae.modifiers,!1);let Et=Fe(95,Ae.pos,hu,Ae);if(Fo(),Ae.isTypeOnly&&(Et=Fe(156,Et,hu,Ae),Fo()),Ae.exportClause?Cs(Ae.exportClause):Et=Fe(42,Et,qo,Ae),Ae.moduleSpecifier){Fo();let fn=Ae.exportClause?Ae.exportClause.end:Et;Fe(161,fn,hu,Ae),Fo(),Pr(Ae.moduleSpecifier)}Ae.attributes&&IS(Ae.attributes),py()}function GN(Ae){qo("{"),Fo(),hu(Ae.token===132?"assert":"with"),qo(":"),Fo();let Et=Ae.elements;fa(Ae,Et,526226),Fo(),qo("}")}function ok(Ae){Fe(Ae.token,Ae.pos,hu,Ae),Fo();let Et=Ae.elements;fa(Ae,Et,526226)}function o5(Ae){Cs(Ae.name),qo(":"),Fo();let Et=Ae.value;if(!(tA(Et)&1024)){let fn=DB(Et);Xw(fn.pos)}Cs(Et)}function ak(Ae){let Et=Fe(95,Ae.pos,hu,Ae);Fo(),Et=Fe(130,Et,hu,Ae),Fo(),Et=Fe(145,Et,hu,Ae),Fo(),Cs(Ae.name),py()}function Ase(Ae){let Et=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,Et,hu,Ae),Fo(),Cs(Ae.name)}function mpe(Ae){Mx(Ae)}function dse(Ae){a5(Ae)}function Mx(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function a5(Ae){Ae.isTypeOnly&&(hu("type"),Fo()),Ae.propertyName&&(Cs(Ae.propertyName),Fo(),Fe(130,Ae.propertyName.end,hu,Ae),Fo()),Cs(Ae.name)}function WU(Ae){hu("require"),qo("("),Pr(Ae.expression),qo(")")}function a9(Ae){Cs(Ae.openingElement),fa(Ae,Ae.children,262144),Cs(Ae.closingElement)}function OU(Ae){qo("<"),SQ(Ae.tagName),Ev(Ae,Ae.typeArguments),Fo(),Cs(Ae.attributes),qo("/>")}function qz(Ae){Cs(Ae.openingFragment),fa(Ae,Ae.children,262144),Cs(Ae.closingFragment)}function Cpe(Ae){if(qo("<"),$T(Ae)){let Et=rW(Ae.tagName,Ae);SQ(Ae.tagName),Ev(Ae,Ae.typeArguments),Ae.attributes.properties&&Ae.attributes.properties.length>0&&Fo(),Cs(Ae.attributes),sq(Ae.attributes,Ae),Mb(Et)}qo(">")}function MU(Ae){Pt.writeLiteral(Ae.text)}function $z(Ae){qo("")}function c5(Ae){fa(Ae,Ae.properties,262656)}function pse(Ae){Cs(Ae.name),gA("=",qo,Ae.initializer,Pn)}function HU(Ae){qo("{..."),Pr(Ae.expression),qo("}")}function eq(Ae){let Et=!1;return dF(Ee?.text||"",Ae+1,()=>Et=!0),Et}function EQ(Ae){let Et=!1;return GD(Ee?.text||"",Ae+1,()=>Et=!0),Et}function KP(Ae){return eq(Ae)||EQ(Ae)}function tq(Ae){var Et;if(Ae.expression||!jn&&!sp(Ae)&&KP(Ae.pos)){let fn=Ee&&!sp(Ae)&&Ra(Ee,Ae.pos).line!==Ra(Ee,Ae.end).line;fn&&Pt.increaseIndent();let qi=Fe(19,Ae.pos,qo,Ae);Cs(Ae.dotDotDotToken),Pr(Ae.expression),Fe(20,((Et=Ae.expression)==null?void 0:Et.end)||qi,qo,Ae),fn&&Pt.decreaseIndent()}}function rq(Ae){Tu(Ae.namespace),qo(":"),Tu(Ae.name)}function SQ(Ae){Ae.kind===80?Pr(Ae):Cs(Ae)}function jP(Ae){Fe(84,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma),JF(Ae,Ae.statements,Ae.expression.end)}function c9(Ae){let Et=Fe(90,Ae.pos,hu,Ae);JF(Ae,Ae.statements,Et)}function JF(Ae,Et,fn){let qi=Et.length===1&&(!Ee||sp(Ae)||sp(Et[0])||M7(Ae,Et[0],Ee)),ic=163969;qi?(eW(59,fn,qo,Ae),Fo(),ic&=-130):Fe(59,fn,qo,Ae),fa(Ae,Et,ic)}function UF(Ae){Fo(),tW(Ae.token,hu),Fo(),fa(Ae,Ae.types,528)}function KF(Ae){let Et=Fe(85,Ae.pos,hu,Ae);Fo(),Ae.variableDeclaration&&(Fe(21,Et,qo,Ae),Cs(Ae.variableDeclaration),Fe(22,Ae.variableDeclaration.end,qo,Ae),Fo()),Cs(Ae.block)}function zP(Ae){Cs(Ae.name),qo(":"),Fo();let Et=Ae.initializer;if(!(tA(Et)&1024)){let fn=DB(Et);Xw(fn.pos)}Pr(Et,ks.parenthesizeExpressionForDisallowedComma)}function l5(Ae){Cs(Ae.name),Ae.objectAssignmentInitializer&&(Fo(),qo("="),Fo(),Pr(Ae.objectAssignmentInitializer,ks.parenthesizeExpressionForDisallowedComma))}function YU(Ae){Ae.expression&&(Fe(26,Ae.pos,qo,Ae),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma))}function u5(Ae){Cs(Ae.name),p5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function PA(Ae){if(Gt("/**"),Ae.comment){let Et=pJ(Ae.comment);if(Et){let fn=Et.split(/\r\n?|\n/);for(let qi of fn)G0(),Fo(),qo("*"),Fo(),Gt(qi)}}Ae.tags&&(Ae.tags.length===1&&Ae.tags[0].kind===345&&!Ae.comment?(Fo(),Cs(Ae.tags[0])):fa(Ae,Ae.tags,33)),Fo(),Gt("*/")}function QU(Ae){HB(Ae.tagName),A5(Ae.typeExpression),Mw(Ae.comment)}function fse(Ae){HB(Ae.tagName),Cs(Ae.name),Mw(Ae.comment)}function jF(Ae){HB(Ae.tagName),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,hu,Ae),Fo()),Pr(Ae.moduleSpecifier),Ae.attributes&&IS(Ae.attributes),Mw(Ae.comment)}function zF(Ae){Fo(),qo("{"),Cs(Ae.name),qo("}")}function ck(Ae){HB(Ae.tagName),Fo(),qo("{"),Cs(Ae.class),qo("}"),Mw(Ae.comment)}function bf(Ae){HB(Ae.tagName),A5(Ae.constraint),Fo(),fa(Ae,Ae.typeParameters,528),Mw(Ae.comment)}function l0(Ae){HB(Ae.tagName),Ae.typeExpression&&(Ae.typeExpression.kind===310?A5(Ae.typeExpression):(Fo(),qo("{"),Gt("Object"),Ae.typeExpression.isArrayType&&(qo("["),qo("]")),qo("}"))),Ae.fullName&&(Fo(),Cs(Ae.fullName)),Mw(Ae.comment),Ae.typeExpression&&Ae.typeExpression.kind===323&&Ay(Ae.typeExpression)}function Ob(Ae){HB(Ae.tagName),Ae.name&&(Fo(),Cs(Ae.name)),Mw(Ae.comment),lk(Ae.typeExpression)}function u0(Ae){Mw(Ae.comment),lk(Ae.typeExpression)}function g5(Ae){HB(Ae.tagName),Mw(Ae.comment)}function Ay(Ae){fa(Ae,me.createNodeArray(Ae.jsDocPropertyTags),33)}function lk(Ae){Ae.typeParameters&&fa(Ae,me.createNodeArray(Ae.typeParameters),33),Ae.parameters&&fa(Ae,me.createNodeArray(Ae.parameters),33),Ae.type&&(G0(),Fo(),qo("*"),Fo(),Cs(Ae.type))}function Hy(Ae){HB(Ae.tagName),A5(Ae.typeExpression),Fo(),Ae.isBracketed&&qo("["),Cs(Ae.name),Ae.isBracketed&&qo("]"),Mw(Ae.comment)}function HB(Ae){qo("@"),Cs(Ae)}function Mw(Ae){let Et=pJ(Ae);Et&&(Fo(),Gt(Et))}function A5(Ae){Ae&&(Fo(),qo("{"),Cs(Ae.type),qo("}"))}function d5(Ae){G0();let Et=Ae.statements;if(Et.length===0||!nS(Et[0])||sp(Et[0])){DQ(Ae,Et,vQ);return}vQ(Ae)}function _pe(Ae){l9(!!Ae.hasNoDefaultLib,Ae.syntheticFileReferences||[],Ae.syntheticTypeReferences||[],Ae.syntheticLibReferences||[])}function Ise(Ae){Ae.isDeclarationFile&&l9(Ae.hasNoDefaultLib,Ae.referencedFiles,Ae.typeReferenceDirectives,Ae.libReferenceDirectives)}function l9(Ae,Et,fn,qi){if(Ae&&($P('/// '),G0()),Ee&&Ee.moduleName&&($P(`/// `),G0()),Ee&&Ee.amdDependencies)for(let Oc of Ee.amdDependencies)Oc.name?$P(`/// `):$P(`/// `),G0();function ic(Oc,zl){for(let Vc of zl){let _A=Vc.resolutionMode?`resolution-mode="${Vc.resolutionMode===99?"import":"require"}" `:"",Lh=Vc.preserve?'preserve="true" ':"";$P(`/// `),G0()}}ic("path",Et),ic("types",fn),ic("lib",qi)}function vQ(Ae){let Et=Ae.statements;Qw(Ae),F(Ae.statements,HC),En(Ae);let fn=Se(Et,qi=>!nS(qi));Ise(Ae),fa(Ae,Et,1,void 0,fn===-1?Et.length:fn),tZ(Ae)}function Sr(Ae){let Et=tA(Ae);!(Et&1024)&&Ae.pos!==Ae.expression.pos&&Xw(Ae.expression.pos),Pr(Ae.expression),!(Et&2048)&&Ae.end!==Ae.expression.end&&Ux(Ae.expression.end)}function XU(Ae){sa(Ae,Ae.elements,528,void 0)}function Hx(Ae,Et,fn){let qi=!!Et;for(let ic=0;ic=fn.length||zl===0;if(_A&&qi&32768){T?.(fn),W?.(fn);return}qi&15360&&(qo(gws(qi)),_A&&fn&&Xw(fn.pos,!0)),T?.(fn),_A?qi&1&&!(Lt&&(!Et||Ee&&S3(Et,Ee)))?G0():qi&256&&!(qi&524288)&&Fo():UU(Ae,Et,fn,qi,ic,Oc,zl,fn.hasTrailingComma,fn),W?.(fn),qi&15360&&(_A&&fn&&Ux(fn.end),qo(Aws(qi)))}function UU(Ae,Et,fn,qi,ic,Oc,zl,Vc,_A){let Lh=(qi&262144)===0,g0=Lh,Yy=d9(Et,fn[Oc],qi);Yy?(G0(Yy),g0=!1):qi&256&&Fo(),qi&128&&uk();let B5=Iws(Ae,ic),Qy,aW=!1;for(let h9=0;h90){if(qi&131||(uk(),aW=!0),g0&&qi&60&&!wB(Jw.pos)){let xQ=DB(Jw);Xw(xQ.pos,!!(qi&512),!0)}G0(m9),g0=!1}else Qy&&qi&512&&Fo()}if(g0){let m9=DB(Jw);Xw(m9.pos)}else g0=Lh;Ke=Jw.pos,B5(Jw,Ae,ic,h9),aW&&(lR(),aW=!1),Qy=Jw}let Iq=Qy?tA(Qy):0,QB=jn||!!(Iq&2048),Hf=Vc&&qi&64&&qi&16;Hf&&(Qy&&!QB?Fe(28,Qy.end,qo,Qy):qo(",")),Qy&&(Et?Et.end:-1)!==Qy.end&&qi&60&&!QB&&Ux(Hf&&_A?.end?_A.end:Qy.end),qi&128&&lR();let cK=iq(Et,fn[Oc+zl-1],qi,_A);cK?G0(cK):qi&2097408&&Fo()}function $F(Ae){Pt.writeLiteral(Ae)}function TQ(Ae){Pt.writeStringLiteral(Ae)}function hse(Ae){Pt.write(Ae)}function ype(Ae,Et){Pt.writeSymbol(Ae,Et)}function qo(Ae){Pt.writePunctuation(Ae)}function py(){Pt.writeTrailingSemicolon(";")}function hu(Ae){Pt.writeKeyword(Ae)}function vE(Ae){Pt.writeOperator(Ae)}function KU(Ae){Pt.writeParameter(Ae)}function $P(Ae){Pt.writeComment(Ae)}function Fo(){Pt.writeSpace(" ")}function mse(Ae){Pt.writeProperty(Ae)}function nq(Ae){Pt.nonEscapingWrite?Pt.nonEscapingWrite(Ae):Pt.write(Ae)}function G0(Ae=1){for(let Et=0;Et0)}function uk(){Pt.increaseIndent()}function lR(){Pt.decreaseIndent()}function eW(Ae,Et,fn,qi){return Dt?tW(Ae,fn,Et):oK(qi,Ae,fn,Et,tW)}function jU(Ae,Et){V&&V(Ae),Et(Vi(Ae.kind)),M&&M(Ae)}function tW(Ae,Et,fn){let qi=Vi(Ae);return Et(qi),fn<0?fn:fn+qi.length}function hS(Ae,Et,fn){if(tA(Ae)&1)Fo();else if(Lt){let qi=ZN(Ae,Et,fn);qi?G0(qi):Fo()}else G0()}function Yw(Ae){let Et=Ae.split(/\r\n?|\n/),fn=Gre(Et);for(let qi of Et){let ic=fn?qi.slice(fn):qi;ic.length&&(G0(),Gt(ic))}}function Sv(Ae,Et){Ae?(uk(),G0(Ae)):Et&&Fo()}function Mb(Ae,Et){Ae&&lR(),Et&&lR()}function d9(Ae,Et,fn){if(fn&2||Lt){if(fn&65536)return 1;if(Et===void 0)return!Ae||Ee&&S3(Ae,Ee)?0:1;if(Et.pos===Ke||Et.kind===12)return 0;if(Ee&&Ae&&!wB(Ae.pos)&&!sp(Et)&&(!Et.parent||Dd(Et.parent)===Dd(Ae)))return Lt?m5(qi=>jZe(Et.pos,Ae.pos,Ee,qi)):M7(Ae,Et,Ee)?0:1;if(eZ(Et,fn))return 1}return fn&1?1:0}function h5(Ae,Et,fn){if(fn&2||Lt){if(Ae===void 0||Et===void 0||Et.kind===12)return 0;if(Ee&&!sp(Ae)&&!sp(Et))return Lt&&F0(Ae,Et)?m5(qi=>v3(Ae,Et,Ee,qi)):!Lt&&gq(Ae,Et)?xne(Ae,Et,Ee)?0:1:fn&65536?1:0;if(eZ(Ae,fn)||eZ(Et,fn))return 1}else if(D3(Et))return 1;return fn&1?1:0}function iq(Ae,Et,fn,qi){if(fn&2||Lt){if(fn&65536)return 1;if(Et===void 0)return!Ae||Ee&&S3(Ae,Ee)?0:1;if(Ee&&Ae&&!wB(Ae.pos)&&!sp(Et)&&(!Et.parent||Et.parent===Ae)){if(Lt){let ic=qi&&!wB(qi.end)?qi.end:Et.end;return m5(Oc=>abe(ic,Ae.end,Ee,Oc))}return JZe(Ae,Et,Ee)?0:1}if(eZ(Et,fn))return 1}return fn&1&&!(fn&131072)?1:0}function m5(Ae){pe.assert(!!Lt);let Et=Ae(!0);return Et===0?Ae(!1):Et}function rW(Ae,Et){let fn=Lt&&d9(Et,Ae,0);return fn&&Sv(fn,!1),!!fn}function sq(Ae,Et){let fn=Lt&&iq(Et,Ae,0,void 0);fn&&G0(fn)}function eZ(Ae,Et){if(sp(Ae)){let fn=D3(Ae);return fn===void 0?(Et&65536)!==0:fn}return(Et&65536)!==0}function ZN(Ae,Et,fn){return tA(Ae)&262144?0:(Ae=C5(Ae),Et=C5(Et),fn=C5(fn),D3(fn)?1:Ee&&!sp(Ae)&&!sp(Et)&&!sp(fn)?Lt?m5(qi=>v3(Et,fn,Ee,qi)):xne(Et,fn,Ee)?0:1:0)}function nW(Ae){return Ae.statements.length===0&&(!Ee||xne(Ae,Ae,Ee))}function C5(Ae){for(;Ae.kind===218&&sp(Ae);)Ae=Ae.expression;return Ae}function p9(Ae,Et){if(kp(Ae)||TL(Ae))return _5(Ae);if(Zg(Ae)&&Ae.textSourceNode)return p9(Ae.textSourceNode,Et);let fn=Ee,qi=!!fn&&!!Ae.parent&&!sp(Ae);if(_w(Ae)){if(!qi||ms(Ae)!==Dd(fn))return Vo(Ae)}else if(eR(Ae)){if(!qi||ms(Ae)!==Dd(fn))return lz(Ae)}else if(pe.assertNode(Ae,wL),!qi)return Ae.text;return mF(fn,Ae,Et)}function iW(Ae,Et=Ee,fn,qi){if(Ae.kind===11&&Ae.textSourceNode){let Oc=Ae.textSourceNode;if(Ir(Oc)||p(Oc)||mC(Oc)||eR(Oc)){let zl=mC(Oc)?Oc.text:p9(Oc);return qi?`"${Oye(zl)}"`:fn||tA(Ae)&16777216?`"${YT(zl)}"`:`"${Sne(zl)}"`}else return iW(Oc,ms(Oc),fn,qi)}let ic=(fn?1:0)|(qi?2:0)|(s.terminateUnterminatedLiterals?4:0)|(s.target&&s.target>=8?8:0);return vge(Ae,Et,ic)}function Qw(Ae){Ye.push(Tt),Tt=0,_t.push(Rt),!(Ae&&tA(Ae)&1048576)&&(ot.push(Qe),Qe=0,Ue.push($e),$e=void 0,mt.push(ht))}function tZ(Ae){Tt=Ye.pop(),Rt=_t.pop(),!(Ae&&tA(Ae)&1048576)&&(Qe=ot.pop(),$e=Ue.pop(),ht=mt.pop())}function Qx(Ae){(!ht||ht===li(mt))&&(ht=new Set),ht.add(Ae)}function sW(Ae){(!Rt||Rt===li(_t))&&(Rt=new Set),Rt.add(Ae)}function HC(Ae){if(Ae)switch(Ae.kind){case 242:F(Ae.statements,HC);break;case 257:case 255:case 247:case 248:HC(Ae.statement);break;case 246:HC(Ae.thenStatement),HC(Ae.elseStatement);break;case 249:case 251:case 250:HC(Ae.initializer),HC(Ae.statement);break;case 256:HC(Ae.caseBlock);break;case 270:F(Ae.clauses,HC);break;case 297:case 298:F(Ae.statements,HC);break;case 259:HC(Ae.tryBlock),HC(Ae.catchClause),HC(Ae.finallyBlock);break;case 300:HC(Ae.variableDeclaration),HC(Ae.block);break;case 244:HC(Ae.declarationList);break;case 262:F(Ae.declarations,HC);break;case 261:case 170:case 209:case 264:Xx(Ae.name);break;case 263:Xx(Ae.name),tA(Ae)&1048576&&(F(Ae.parameters,HC),HC(Ae.body));break;case 207:case 208:F(Ae.elements,HC);break;case 273:HC(Ae.importClause);break;case 274:Xx(Ae.name),HC(Ae.namedBindings);break;case 275:Xx(Ae.name);break;case 281:Xx(Ae.name);break;case 276:F(Ae.elements,HC);break;case 277:Xx(Ae.propertyName||Ae.name);break}}function RQ(Ae){if(Ae)switch(Ae.kind){case 304:case 305:case 173:case 172:case 175:case 174:case 178:case 179:Xx(Ae.name);break}}function Xx(Ae){Ae&&(kp(Ae)||TL(Ae)?_5(Ae):Nu(Ae)&&HC(Ae))}function _5(Ae){let Et=Ae.emitNode.autoGenerate;if((Et.flags&7)===4)return zU(fEe(Ae),p(Ae),Et.flags,Et.prefix,Et.suffix);{let fn=Et.id;return Ze[fn]||(Ze[fn]=vv(Ae))}}function zU(Ae,Et,fn,qi,ic){let Oc=rd(Ae),zl=Et?Te:Ne;return zl[Oc]||(zl[Oc]=Hb(Ae,Et,fn??0,Sie(qi,_5),Sie(ic)))}function Jx(Ae,Et){return oq(Ae,Et)&&!Cse(Ae,Et)&&!We.has(Ae)}function Cse(Ae,Et){let fn,qi;if(Et?(fn=Rt,qi=_t):(fn=ht,qi=mt),fn?.has(Ae))return!0;for(let ic=qi.length-1;ic>=0;ic--)if(fn!==qi[ic]&&(fn=qi[ic],fn?.has(Ae)))return!0;return!1}function oq(Ae,Et){return Ee?u7(Ee,Ae,g):!0}function aq(Ae,Et){for(let fn=Et;fn&&EP(fn,Et);fn=fn.nextContainer)if(WI(fn)&&fn.locals){let qi=fn.locals.get(Ap(Ae));if(qi&&qi.flags&3257279)return!1}return!0}function bpe(Ae){switch(Ae){case"":return Qe;case"#":return Tt;default:return $e?.get(Ae)??0}}function cq(Ae,Et){switch(Ae){case"":Qe=Et;break;case"#":Tt=Et;break;default:$e??($e=new Map),$e.set(Ae,Et);break}}function y5(Ae,Et,fn,qi,ic){qi.length>0&&qi.charCodeAt(0)===35&&(qi=qi.slice(1));let Oc=M3(fn,qi,"",ic),zl=bpe(Oc);if(Ae&&!(zl&Ae)){let _A=M3(fn,qi,Ae===268435456?"_i":"_n",ic);if(Jx(_A,fn))return zl|=Ae,fn?sW(_A):Et&&Qx(_A),cq(Oc,zl),_A}for(;;){let Vc=zl&268435455;if(zl++,Vc!==8&&Vc!==13){let _A=Vc<26?"_"+String.fromCharCode(97+Vc):"_"+(Vc-26),Lh=M3(fn,qi,_A,ic);if(Jx(Lh,fn))return fn?sW(Lh):Et&&Qx(Lh),cq(Oc,zl),Lh}}}function rZ(Ae,Et=Jx,fn,qi,ic,Oc,zl){if(Ae.length>0&&Ae.charCodeAt(0)===35&&(Ae=Ae.slice(1)),Oc.length>0&&Oc.charCodeAt(0)===35&&(Oc=Oc.slice(1)),fn){let _A=M3(ic,Oc,Ae,zl);if(Et(_A,ic))return ic?sW(_A):qi?Qx(_A):We.add(_A),_A}Ae.charCodeAt(Ae.length-1)!==95&&(Ae+="_");let Vc=1;for(;;){let _A=M3(ic,Oc,Ae+Vc,zl);if(Et(_A,ic))return ic?sW(_A):qi?Qx(_A):We.add(_A),_A;Vc++}}function _se(Ae){return rZ(Ae,oq,!0,!1,!1,"","")}function b5(Ae){let Et=p9(Ae.name);return aq(Et,Gs(Ae,WI))?Et:rZ(Et,Jx,!1,!1,!1,"","")}function qU(Ae){let Et=LY(Ae),fn=Zg(Et)?vw(Et.text):"module";return rZ(fn,Jx,!1,!1,!1,"","")}function Zh(){return rZ("default",Jx,!1,!1,!1,"","")}function YC(){return rZ("class",Jx,!1,!1,!1,"","")}function lq(Ae,Et,fn,qi){return Ir(Ae.name)?zU(Ae.name,Et):y5(0,!1,Et,fn,qi)}function Hb(Ae,Et,fn,qi,ic){switch(Ae.kind){case 80:case 81:return rZ(p9(Ae),Jx,!!(fn&16),!!(fn&8),Et,qi,ic);case 268:case 267:return pe.assert(!qi&&!ic&&!Et),b5(Ae);case 273:case 279:return pe.assert(!qi&&!ic&&!Et),qU(Ae);case 263:case 264:{pe.assert(!qi&&!ic&&!Et);let Oc=Ae.name;return Oc&&!kp(Oc)?Hb(Oc,!1,fn,qi,ic):Zh()}case 278:return pe.assert(!qi&&!ic&&!Et),Zh();case 232:return pe.assert(!qi&&!ic&&!Et),YC();case 175:case 178:case 179:return lq(Ae,Et,qi,ic);case 168:return y5(0,!0,Et,qi,ic);default:return y5(0,!1,Et,qi,ic)}}function vv(Ae){let Et=Ae.emitNode.autoGenerate,fn=Sie(Et.prefix,_5),qi=Sie(Et.suffix);switch(Et.flags&7){case 1:return y5(0,!!(Et.flags&8),p(Ae),fn,qi);case 2:return pe.assertNode(Ae,Ir),y5(268435456,!!(Et.flags&8),!1,fn,qi);case 3:return rZ(Vo(Ae),Et.flags&32?oq:Jx,!!(Et.flags&16),!!(Et.flags&8),p(Ae),fn,qi)}return pe.fail(`Unsupported GeneratedIdentifierKind: ${pe.formatEnum(Et.flags&7,od,!0)}.`)}function NQ(Ae,Et){let fn=Dn(2,Ae,Et),qi=st,ic=ir,Oc=zt;uR(Et),fn(Ae,Et),oW(Et,qi,ic,Oc)}function uR(Ae){let Et=tA(Ae),fn=DB(Ae);f9(Ae,Et,fn.pos,fn.end),Et&4096&&(jn=!0)}function oW(Ae,Et,fn,qi){let ic=tA(Ae),Oc=DB(Ae);ic&4096&&(jn=!1),uq(Ae,ic,Oc.pos,Oc.end,Et,fn,qi);let zl=MLe(Ae);zl&&uq(Ae,ic,zl.pos,zl.end,Et,fn,qi)}function f9(Ae,Et,fn,qi){An(),mn=!1;let ic=fn<0||(Et&1024)!==0||Ae.kind===12,Oc=qi<0||(Et&2048)!==0||Ae.kind===12;(fn>0||qi>0)&&fn!==qi&&(ic||BE(fn,Ae.kind!==354),(!ic||fn>=0&&Et&1024)&&(st=fn),(!Oc||qi>=0&&Et&2048)&&(ir=qi,Ae.kind===262&&(zt=qi))),F(k3(Ae),Epe),si()}function uq(Ae,Et,fn,qi,ic,Oc,zl){An();let Vc=qi<0||(Et&2048)!==0||Ae.kind===12;F(hU(Ae),TI),(fn>0||qi>0)&&fn!==qi&&(st=ic,ir=Oc,zt=zl,!Vc&&Ae.kind!==354&&Aq(qi)),si()}function Epe(Ae){(Ae.hasLeadingNewline||Ae.kind===2)&&Pt.writeLine(),yse(Ae),Ae.hasTrailingNewLine||Ae.kind===2?Pt.writeLine():Pt.writeSpace(" ")}function TI(Ae){Pt.isAtStartOfLine()||Pt.writeSpace(" "),yse(Ae),Ae.hasTrailingNewLine&&Pt.writeLine()}function yse(Ae){let Et=$U(Ae),fn=Ae.kind===3?cA(Et):void 0;rU(Et,fn,Pt,0,Et.length,ge)}function $U(Ae){return Ae.kind===3?`/*${Ae.text}*/`:`//${Ae.text}`}function DQ(Ae,Et,fn){An();let{pos:qi,end:ic}=Et,Oc=tA(Ae),zl=qi<0||(Oc&1024)!==0,Vc=jn||ic<0||(Oc&2048)!==0;zl||B1(Et),si(),Oc&4096&&!jn?(jn=!0,fn(Ae),jn=!1):fn(Ae),An(),Vc||(BE(Et.end,!0),mn&&!Pt.isAtStartOfLine()&&Pt.writeLine()),si()}function gq(Ae,Et){return Ae=Dd(Ae),Ae.parent&&Ae.parent===Dd(Et).parent}function F0(Ae,Et){if(Et.pos-1&&qi.indexOf(Et)===ic+1}function BE(Ae,Et){mn=!1,Et?Ae===0&&Ee?.isDeclarationFile?pq(Ae,E5):pq(Ae,tK):Ae===0&&pq(Ae,eK)}function eK(Ae,Et,fn,qi,ic){iK(Ae,Et)&&tK(Ae,Et,fn,qi,ic)}function E5(Ae,Et,fn,qi,ic){iK(Ae,Et)||tK(Ae,Et,fn,qi,ic)}function wE(Ae,Et){return s.onlyPrintJsDocStyle?L$e(Ae,Et)||g7(Ae,Et):!0}function tK(Ae,Et,fn,qi,ic){!Ee||!wE(Ee.text,Ae)||(mn||(Kye(Tg(),Pt,ic,Ae),mn=!0),$m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi?Pt.writeLine():fn===3&&Pt.writeSpace(" "))}function Ux(Ae){jn||Ae===-1||BE(Ae,!0)}function Aq(Ae){nK(Ae,rK)}function rK(Ae,Et,fn,qi){!Ee||!wE(Ee.text,Ae)||(Pt.isAtStartOfLine()||Pt.writeSpace(" "),$m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi&&Pt.writeLine())}function Xw(Ae,Et,fn){jn||(An(),nK(Ae,Et?rK:fn?dq:bse),si())}function dq(Ae,Et,fn){Ee&&($m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),fn===2&&Pt.writeLine())}function bse(Ae,Et,fn,qi){Ee&&($m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi?Pt.writeLine():Pt.writeSpace(" "))}function pq(Ae,Et){Ee&&(st===-1||Ae!==st)&&(fq(Ae)?I9(Et):GD(Ee.text,Ae,Et,Ae))}function nK(Ae,Et){Ee&&(ir===-1||Ae!==ir&&Ae!==zt)&&dF(Ee.text,Ae,Et)}function fq(Ae){return Br!==void 0&&Ei(Br).nodePos===Ae}function I9(Ae){if(!Ee)return;let Et=Ei(Br).detachedCommentEndPos;Br.length-1?Br.pop():Br=void 0,GD(Ee.text,Et,Ae,Et)}function B1(Ae){let Et=Ee&&FZe(Ee.text,Tg(),Pt,LN,Ae,ge,jn);Et&&(Br?Br.push(Et):Br=[Et])}function LN(Ae,Et,fn,qi,ic,Oc){!Ee||!wE(Ee.text,qi)||($m(qi),rU(Ae,Et,fn,qi,ic,Oc),$m(ic))}function iK(Ae,Et){return!!Ee&&Mre(Ee.text,Ae,Et)}function sK(Ae,Et){let fn=Dn(3,Ae,Et);jA(Et),fn(Ae,Et),Uo(Et)}function jA(Ae){let Et=tA(Ae),fn=XT(Ae),qi=fn.source||ur;Ae.kind!==354&&!(Et&32)&&fn.pos>=0&&S5(fn.source||ur,mS(qi,fn.pos)),Et&128&&(Dt=!0)}function Uo(Ae){let Et=tA(Ae),fn=XT(Ae);Et&128&&(Dt=!1),Ae.kind!==354&&!(Et&64)&&fn.end>=0&&S5(fn.source||ur,fn.end)}function mS(Ae,Et){return Ae.skipTrivia?Ae.skipTrivia(Et):Yu(Ae.text,Et)}function $m(Ae){if(Dt||wB(Ae)||aK(ur))return;let{line:Et,character:fn}=Ra(ur,Ae);tr.addMapping(Pt.getLine(),Pt.getColumn(),Gr,Et,fn,void 0)}function S5(Ae,Et){if(Ae!==ur){let fn=ur,qi=Gr;kQ(Ae),$m(Et),v5(fn,qi)}else $m(Et)}function oK(Ae,Et,fn,qi,ic){if(Dt||Ae&&Jge(Ae))return ic(Et,fn,qi);let Oc=Ae&&Ae.emitNode,zl=Oc&&Oc.flags||0,Vc=Oc&&Oc.tokenSourceMapRanges&&Oc.tokenSourceMapRanges[Et],_A=Vc&&Vc.source||ur;return qi=mS(_A,Vc?Vc.pos:qi),!(zl&256)&&qi>=0&&S5(_A,qi),qi=ic(Et,fn,qi),Vc&&(qi=Vc.end),!(zl&512)&&qi>=0&&S5(_A,qi),qi}function kQ(Ae){if(!Dt){if(ur=Ae,Ae===dt){Gr=pr;return}aK(Ae)||(Gr=tr.addSource(Ae.fileName),s.inlineSources&&tr.setSourceContent(Gr,Ae.text),dt=Ae,pr=Gr)}}function v5(Ae,Et){ur=Ae,Gr=Et}function aK(Ae){return aA(Ae.fileName,".json")}}function uws(){let s=[];return s[1024]=["{","}"],s[2048]=["(",")"],s[4096]=["<",">"],s[8192]=["[","]"],s}function gws(s){return qtn[s&15360][0]}function Aws(s){return qtn[s&15360][1]}function dws(s,c,g,d){c(s)}function pws(s,c,g,d){c(s,g.select(d))}function fws(s,c,g,d){c(s,g)}function Iws(s,c){return s.length===1?dws:typeof c=="object"?pws:fws}function q9e(s,c,g){if(!s.getDirectories||!s.readDirectory)return;let d=new Map,h=_d(g);return{useCaseSensitiveFileNames:g,fileExists:re,readFile:(Ye,Tt)=>s.readFile(Ye,Tt),directoryExists:s.directoryExists&&ge,getDirectories:_e,readDirectory:Ee,createDirectory:s.createDirectory&&Ie,writeFile:s.writeFile&&ee,addOrDeleteFileOrDirectory:Ze,addOrDeleteFile:We,clearCache:$e,realpath:s.realpath&&Ne};function _(Ye){return Ou(Ye,c,h)}function S(Ye){return d.get(hp(Ye))}function R(Ye){let Tt=S(Mo(Ye));return Tt&&(Tt.sortedAndCanonicalizedFiles||(Tt.sortedAndCanonicalizedFiles=Tt.files.map(h).sort(),Tt.sortedAndCanonicalizedDirectories=Tt.directories.map(h).sort()),Tt)}function T(Ye){return gp(iu(Ye))}function W(Ye,Tt){var ot;if(!s.realpath||hp(_(s.realpath(Ye)))===Tt){let Qe={files:At(s.readDirectory(Ye,void 0,void 0,["*.*"]),T)||[],directories:s.getDirectories(Ye)||[]};return d.set(hp(Tt),Qe),Qe}if((ot=s.directoryExists)!=null&&ot.call(s,Ye))return d.set(Tt,!1),!1}function V(Ye,Tt){Tt=hp(Tt);let ot=S(Tt);if(ot)return ot;try{return W(Ye,Tt)}catch{pe.assert(!d.has(hp(Tt)));return}}function M(Ye,Tt){return Wc(Ye,Tt,Fl,Ca)>=0}function ee(Ye,Tt,ot){let Qe=_(Ye),mt=R(Qe);return mt&&Ue(mt,T(Ye),!0),s.writeFile(Ye,Tt,ot)}function re(Ye){let Tt=_(Ye),ot=R(Tt);return ot&&M(ot.sortedAndCanonicalizedFiles,h(T(Ye)))||s.fileExists(Ye)}function ge(Ye){let Tt=_(Ye);return d.has(hp(Tt))||s.directoryExists(Ye)}function Ie(Ye){let Tt=_(Ye),ot=R(Tt);if(ot){let Qe=T(Ye),mt=h(Qe),ht=ot.sortedAndCanonicalizedDirectories;Gc(ht,mt,Ca)&&ot.directories.push(Qe)}s.createDirectory(Ye)}function _e(Ye){let Tt=_(Ye),ot=V(Ye,Tt);return ot?ot.directories.slice():s.getDirectories(Ye)}function Ee(Ye,Tt,ot,Qe,mt){let ht=_(Ye),_t=V(Ye,ht),Rt;if(_t!==void 0)return vbe(Ye,Tt,ot,Qe,g,c,mt,Lt,Ne);return s.readDirectory(Ye,Tt,ot,Qe,mt);function Lt(Pt){let _r=_(Pt);if(_r===ht)return _t||Ke(Pt,_r);let Gt=V(Pt,_r);return Gt!==void 0?Gt||Ke(Pt,_r):Tbe}function Ke(Pt,_r){if(Rt&&_r===ht)return Rt;let Gt={files:At(s.readDirectory(Pt,void 0,void 0,["*.*"]),T)||E,directories:s.getDirectories(Pt)||E};return _r===ht&&(Rt=Gt),Gt}}function Ne(Ye){return s.realpath?s.realpath(Ye):Ye}function Te(Ye){pE(Mo(Ye),Tt=>d.delete(hp(Tt))?!0:void 0)}function Ze(Ye,Tt){if(S(Tt)!==void 0){$e();return}let Qe=R(Tt);if(!Qe){Te(Tt);return}if(!s.directoryExists){$e();return}let mt=T(Ye),ht={fileExists:s.fileExists(Ye),directoryExists:s.directoryExists(Ye)};return ht.directoryExists||M(Qe.sortedAndCanonicalizedDirectories,h(mt))?$e():Ue(Qe,mt,ht.fileExists),ht}function We(Ye,Tt,ot){if(ot===1)return;let Qe=R(Tt);Qe?Ue(Qe,T(Ye),ot===0):Te(Tt)}function Ue(Ye,Tt,ot){let Qe=Ye.sortedAndCanonicalizedFiles,mt=h(Tt);if(ot)Gc(Qe,mt,Ca)&&Ye.files.push(Tt);else{let ht=Wc(Qe,mt,Fl,Ca);if(ht>=0){Qe.splice(ht,1);let _t=Ye.files.findIndex(Rt=>h(Rt)===mt);Ye.files.splice(_t,1)}}}function $e(){d.clear()}}var C3t=(s=>(s[s.Update=0]="Update",s[s.RootNamesAndUpdate=1]="RootNamesAndUpdate",s[s.Full=2]="Full",s[s.Resolutions=3]="Resolutions",s))(C3t||{});function $9e(s,c,g,d,h){var _;let S=Ru(((_=c?.configFile)==null?void 0:_.extendedSourceFiles)||E,h);g.forEach((R,T)=>{S.has(T)||(R.projects.delete(s),R.close())}),S.forEach((R,T)=>{let W=g.get(T);W?W.projects.add(s):g.set(T,{projects:new Set([s]),watcher:d(R,T),close:()=>{let V=g.get(T);!V||V.projects.size!==0||(V.watcher.close(),g.delete(T))}})})}function ntt(s,c){c.forEach(g=>{g.projects.delete(s)&&g.close()})}function eVe(s,c,g){s.delete(c)&&s.forEach(({extendedResult:d},h)=>{var _;(_=d.extendedSourceFiles)!=null&&_.some(S=>g(S)===c)&&eVe(s,h,g)})}function itt(s,c,g){Q7(c,s.getMissingFilePaths(),{createNewValue:g,onDeleteValue:dv})}function YEe(s,c,g){c?Q7(s,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:Cv,onExistingValue:h}):Fy(s,Cv);function d(_,S){return{watcher:g(_,S),flags:S}}function h(_,S,R){_.flags!==S&&(_.watcher.close(),s.set(R,d(R,S)))}}function QEe({watchedDirPath:s,fileOrDirectory:c,fileOrDirectoryPath:g,configFileName:d,options:h,program:_,extraFileExtensions:S,currentDirectory:R,useCaseSensitiveFileNames:T,writeLog:W,toPath:V,getScriptKind:M}){let ee=dVe(g);if(!ee)return W(`Project: ${d} Detected ignored path: ${c}`),!0;if(g=ee,g===s)return!1;if(E0(g)&&!(wbe(c,h,S)||Ee()))return W(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(WWt(c,h.configFile.configFileSpecs,Xc(Mo(d),R),T,R))return W(`Project: ${d} Detected excluded file: ${c}`),!0;if(!_||h.outFile||h.outDir)return!1;if(PC(g)){if(h.declarationDir)return!1}else if(!fu(g,uU))return!1;let re=s0(g),ge=Ki(_)?void 0:Gtt(_)?_.getProgramOrUndefined():_,Ie=!ge&&!Ki(_)?_:void 0;if(_e(re+".ts")||_e(re+".tsx"))return W(`Project: ${d} Detected output file: ${c}`),!0;return!1;function _e(Ne){return ge?!!ge.getSourceFileByPath(Ne):Ie?Ie.state.fileInfos.has(Ne):!!de(_,Te=>V(Te)===Ne)}function Ee(){if(!M)return!1;switch(M(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return TF(h);case 6:return NP(h);case 0:return!1}}}function _3t(s,c){return s?s.isEmittedFile(c):!1}var y3t=(s=>(s[s.None=0]="None",s[s.TriggerOnly=1]="TriggerOnly",s[s.Verbose=2]="Verbose",s))(y3t||{});function stt(s,c,g,d){xC(c===2?g:Dc);let h={watchFile:(Ie,_e,Ee,Ne)=>s.watchFile(Ie,_e,Ee,Ne),watchDirectory:(Ie,_e,Ee,Ne)=>s.watchDirectory(Ie,_e,(Ee&1)!==0,Ne)},_=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,S=c===2?{watchFile:M,watchDirectory:ee}:_||h,R=c===2?V:Pde;return{watchFile:T("watchFile"),watchDirectory:T("watchDirectory")};function T(Ie){return(_e,Ee,Ne,Te,Ze,We)=>{var Ue;return w9e(_e,Ie==="watchFile"?Te?.excludeFiles:Te?.excludeDirectories,W(),((Ue=s.getCurrentDirectory)==null?void 0:Ue.call(s))||"")?R(_e,Ne,Te,Ze,We):S[Ie].call(void 0,_e,Ee,Ne,Te,Ze,We)}}function W(){return typeof s.useCaseSensitiveFileNames=="boolean"?s.useCaseSensitiveFileNames:s.useCaseSensitiveFileNames()}function V(Ie,_e,Ee,Ne,Te){return g(`ExcludeWatcher:: Added:: ${ge(Ie,_e,Ee,Ne,Te,d)}`),{close:()=>g(`ExcludeWatcher:: Close:: ${ge(Ie,_e,Ee,Ne,Te,d)}`)}}function M(Ie,_e,Ee,Ne,Te,Ze){g(`FileWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`);let We=_.watchFile(Ie,_e,Ee,Ne,Te,Ze);return{close:()=>{g(`FileWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`),We.close()}}}function ee(Ie,_e,Ee,Ne,Te,Ze){let We=`DirectoryWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(We);let Ue=Fg(),$e=_.watchDirectory(Ie,_e,Ee,Ne,Te,Ze),Ye=Fg()-Ue;return g(`Elapsed:: ${Ye}ms ${We}`),{close:()=>{let Tt=`DirectoryWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Tt);let ot=Fg();$e.close();let Qe=Fg()-ot;g(`Elapsed:: ${Qe}ms ${Tt}`)}}}function re(Ie){return(_e,Ee,Ne,Te,Ze,We)=>h[Ie].call(void 0,_e,(...Ue)=>{let $e=`${Ie==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${Ue[0]} ${Ue[1]!==void 0?Ue[1]:""}:: ${ge(_e,Ne,Te,Ze,We,d)}`;g($e);let Ye=Fg();Ee.call(void 0,...Ue);let Tt=Fg()-Ye;g(`Elapsed:: ${Tt}ms ${$e}`)},Ne,Te,Ze,We)}function ge(Ie,_e,Ee,Ne,Te,Ze){return`WatchInfo: ${Ie} ${_e} ${JSON.stringify(Ee)} ${Ze?Ze(Ne,Te):Te===void 0?Ne:`${Ne} ${Te}`}`}}function XEe(s){let c=s?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function Cv(s){s.watcher.close()}function ott(s,c,g="tsconfig.json"){return pE(s,d=>{let h=Ro(d,g);return c(h)?h:void 0})}function att(s,c){let g=Mo(c),d=Xp(s)?s:Ro(g,s);return iu(d)}function b3t(s,c,g){let d;return F(s,_=>{let S=AB(_,c);if(S.pop(),!d){d=S;return}let R=Math.min(d.length,S.length);for(let T=0;T{let _;try{Mc("beforeIORead"),_=s(g),Mc("afterIORead"),Pf("I/O Read","beforeIORead","afterIORead")}catch(S){h&&h(S.message),_=""}return _!==void 0?vz(g,_,d,c):void 0}}function ltt(s,c,g){return(d,h,_,S)=>{try{Mc("beforeIOWrite"),Xye(d,h,_,s,c,g),Mc("afterIOWrite"),Pf("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){S&&S(R.message)}}}function tVe(s,c,g=yd){let d=new Map,h=_d(g.useCaseSensitiveFileNames);function _(V){return d.has(V)?!0:(W.directoryExists||g.directoryExists)(V)?(d.set(V,!0),!0):!1}function S(){return Mo(iu(g.getExecutingFilePath()))}let R=uN(s),T=g.realpath&&(V=>g.realpath(V)),W={getSourceFile:ctt(V=>W.readFile(V),c),getDefaultLibLocation:S,getDefaultLibFileName:V=>Ro(S(),Hs(V)),writeFile:ltt((V,M,ee)=>g.writeFile(V,M,ee),V=>(W.createDirectory||g.createDirectory)(V),V=>_(V)),getCurrentDirectory:FA(()=>g.getCurrentDirectory()),useCaseSensitiveFileNames:()=>g.useCaseSensitiveFileNames,getCanonicalFileName:h,getNewLine:()=>R,fileExists:V=>g.fileExists(V),readFile:V=>g.readFile(V),trace:V=>g.write(V+R),directoryExists:V=>g.directoryExists(V),getEnvironmentVariable:V=>g.getEnvironmentVariable?g.getEnvironmentVariable(V):"",getDirectories:V=>g.getDirectories(V),realpath:T,readDirectory:(V,M,ee,re,ge)=>g.readDirectory(V,M,ee,re,ge),createDirectory:V=>g.createDirectory(V),createHash:$i(g,g.createHash)};return W}function Fde(s,c,g){let d=s.readFile,h=s.fileExists,_=s.directoryExists,S=s.createDirectory,R=s.writeFile,T=new Map,W=new Map,V=new Map,M=new Map,ee=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:re(_e,Ie)},re=(Ie,_e)=>{let Ee=d.call(s,_e);return T.set(Ie,Ee!==void 0?Ee:!1),Ee};s.readFile=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:!aA(Ie,".json")&&!d3t(Ie)?d.call(s,Ie):re(_e,Ie)};let ge=g?(Ie,_e,Ee,Ne)=>{let Te=c(Ie),Ze=typeof _e=="object"?_e.impliedNodeFormat:void 0,We=M.get(Ze),Ue=We?.get(Te);if(Ue)return Ue;let $e=g(Ie,_e,Ee,Ne);return $e&&(PC(Ie)||aA(Ie,".json"))&&M.set(Ze,(We||new Map).set(Te,$e)),$e}:void 0;return s.fileExists=Ie=>{let _e=c(Ie),Ee=W.get(_e);if(Ee!==void 0)return Ee;let Ne=h.call(s,Ie);return W.set(_e,!!Ne),Ne},R&&(s.writeFile=(Ie,_e,...Ee)=>{let Ne=c(Ie);W.delete(Ne);let Te=T.get(Ne);Te!==void 0&&Te!==_e?(T.delete(Ne),M.forEach(Ze=>Ze.delete(Ne))):ge&&M.forEach(Ze=>{let We=Ze.get(Ne);We&&We.text!==_e&&Ze.delete(Ne)}),R.call(s,Ie,_e,...Ee)}),_&&(s.directoryExists=Ie=>{let _e=c(Ie),Ee=V.get(_e);if(Ee!==void 0)return Ee;let Ne=_.call(s,Ie);return V.set(_e,!!Ne),Ne},S&&(s.createDirectory=Ie=>{let _e=c(Ie);V.delete(_e),S.call(s,Ie)})),{originalReadFile:d,originalFileExists:h,originalDirectoryExists:_,originalCreateDirectory:S,originalWriteFile:R,getSourceFileWithCache:ge,readFileWithCache:ee}}function orn(s,c,g){let d;return d=Or(d,s.getConfigFileParsingDiagnostics()),d=Or(d,s.getOptionsDiagnostics(g)),d=Or(d,s.getSyntacticDiagnostics(c,g)),d=Or(d,s.getGlobalDiagnostics(g)),d=Or(d,s.getSemanticDiagnostics(c,g)),Ly(s.getCompilerOptions())&&(d=Or(d,s.getDeclarationDiagnostics(c,g))),ui(d||E)}function arn(s,c){let g="";for(let d of s)g+=utt(d,c);return g}function utt(s,c){let g=`${_b(s)} TS${s.code}: ${wN(s.messageText,c.getNewLine())}${c.getNewLine()}`;if(s.file){let{line:d,character:h}=Ra(s.file,s.start),_=s.file.fileName;return`${r2(_,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${h+1}): `+g}return g}var S3t=(s=>(s.Grey="\x1B[90m",s.Red="\x1B[91m",s.Yellow="\x1B[93m",s.Blue="\x1B[94m",s.Cyan="\x1B[96m",s))(S3t||{}),v3t="\x1B[7m",B3t=" ",crn="\x1B[0m",lrn="...",hws=" ",urn=" ";function grn(s){switch(s){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return pe.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function AQ(s,c){return c+s+crn}function Arn(s,c,g,d,h,_){let{line:S,character:R}=Ra(s,c),{line:T,character:W}=Ra(s,c+g),V=Ra(s,s.text.length).line,M=T-S>=4,ee=(T+1+"").length;M&&(ee=Math.max(lrn.length,ee));let re="";for(let ge=S;ge<=T;ge++){re+=_.getNewLine(),M&&S+1g.getCanonicalFileName(T)):s.fileName,R="";return R+=d(S,"\x1B[96m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R+=":",R+=d(`${_+1}`,"\x1B[93m"),R}function w3t(s,c){let g="";for(let d of s){if(d.file){let{file:h,start:_}=d;g+=gtt(h,_,c),g+=" - "}if(g+=AQ(_b(d),grn(d.category)),g+=AQ(` TS${d.code}: `,"\x1B[90m"),g+=wN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(g+=c.getNewLine(),g+=Arn(d.file,d.start,d.length,"",grn(d.category),c)),d.relatedInformation){g+=c.getNewLine();for(let{file:h,start:_,length:S,messageText:R}of d.relatedInformation)h&&(g+=c.getNewLine(),g+=hws+gtt(h,_,c),g+=Arn(h,_,S,urn,"\x1B[96m",c)),g+=c.getNewLine(),g+=urn+wN(R,c.getNewLine())}g+=c.getNewLine()}return g}function wN(s,c,g=0){if(Xs(s))return s;if(s===void 0)return"";let d="";if(g){d+=c;for(let h=0;hdtt(c,s,g)};function ptt(s,c,g,d,h){return{nameAndMode:nVe,resolve:(_,S)=>BU(_,s,g,d,h,c,S)}}function N3t(s){return Xs(s)?s:s.fileName}var Irn={getName:N3t,getMode:(s,c,g)=>T3t(s,c&&aVe(c,g))};function iVe(s,c,g,d,h){return{nameAndMode:Irn,resolve:(_,S)=>KWt(_,s,g,d,c,h,S)}}function JEe(s,c,g,d,h,_,S,R){if(s.length===0)return E;let T=[],W=new Map,V=R(c,g,d,_,S);for(let M of s){let ee=V.nameAndMode.getName(M),re=V.nameAndMode.getMode(M,h,g?.commandLine.options||d),ge=_de(ee,re),Ie=W.get(ge);Ie||W.set(ge,Ie=V.resolve(ee,re)),T.push(Ie)}return T}var Zde="__inferred type names__.ts";function sVe(s,c,g){let d=s.configFilePath?Mo(s.configFilePath):c;return Ro(d,`__lib_node_modules_lookup_${g}__.ts`)}function ftt(s){let c=s.split("."),g=c[1],d=2;for(;c[d]&&c[d]!=="d";)g+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+g}function K3(s){switch(s?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function Zie(s){return s.pos!==void 0}function Lde(s,c){var g,d,h,_;let S=pe.checkDefined(s.getSourceFileByPath(c.file)),{kind:R,index:T}=c,W,V,M;switch(R){case 3:let ee=jEe(S,T);if(M=(d=(g=s.getResolvedModuleFromModuleSpecifier(ee,S))==null?void 0:g.resolvedModule)==null?void 0:d.packageId,ee.pos===-1)return{file:S,packageId:M,text:ee.text};W=Yu(S.text,ee.pos),V=ee.end;break;case 4:({pos:W,end:V}=S.referencedFiles[T]);break;case 5:({pos:W,end:V}=S.typeReferenceDirectives[T]),M=(_=(h=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S.typeReferenceDirectives[T],S))==null?void 0:h.resolvedTypeReferenceDirective)==null?void 0:_.packageId;break;case 7:({pos:W,end:V}=S.libReferenceDirectives[T]);break;default:return pe.assertNever(R)}return{file:S,pos:W,end:V,packageId:M}}function Itt(s,c,g,d,h,_,S,R,T,W){if(!s||R?.()||!Sc(s.getRootFileNames(),c))return!1;let V;if(!Sc(s.getProjectReferences(),W,Ie)||s.getSourceFiles().some(re))return!1;let M=s.getMissingFilePaths();if(M&&Dh(M,h))return!1;let ee=s.getCompilerOptions();if(!yAe(ee,g)||s.resolvedLibReferences&&Dh(s.resolvedLibReferences,(Ee,Ne)=>S(Ne)))return!1;if(ee.configFile&&g.configFile)return ee.configFile.text===g.configFile.text;return!0;function re(Ee){return!ge(Ee)||_(Ee.path)}function ge(Ee){return Ee.version===d(Ee.resolvedPath,Ee.fileName)}function Ie(Ee,Ne,Te){return Pre(Ee,Ne)&&_e(s.getResolvedProjectReferences()[Te],Ee)}function _e(Ee,Ne){if(Ee){if(k(V,Ee))return!0;let Ze=xz(Ne),We=T(Ze);return!We||Ee.commandLine.options.configFile!==We.options.configFile||!Sc(Ee.commandLine.fileNames,We.fileNames)?!1:((V||(V=[])).push(Ee),!F(Ee.references,(Ue,$e)=>!_e(Ue,Ee.commandLine.projectReferences[$e])))}let Te=xz(Ne);return!T(Te)}}function dQ(s){return s.options.configFile?[...s.options.configFile.parseDiagnostics,...s.errors]:s.errors}function UEe(s,c,g,d){let h=oVe(s,c,g,d);return typeof h=="object"?h.impliedNodeFormat:h}function oVe(s,c,g,d){let h=k_(d),_=3<=h&&h<=99||WP(s);return fu(s,[".d.mts",".mts",".mjs"])?99:fu(s,[".d.cts",".cts",".cjs"])?1:_&&fu(s,[".d.ts",".ts",".tsx",".js",".jsx"])?S():void 0;function S(){let R=yde(c,g,d),T=[];R.failedLookupLocations=T,R.affectingLocations=T;let W=bde(Mo(s),R);return{impliedNodeFormat:W?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:T,packageJsonScope:W}}}var hrn=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode.code,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function mws(s,c){return s?S0(s.getCompilerOptions(),c,Q$e):!1}function Cws(s,c,g,d,h,_){return{rootNames:s,options:c,host:g,oldProgram:d,configFileParsingDiagnostics:h,typeScriptVersion:_}}function KEe(s,c,g,d,h){var _,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze;let We=Ki(s)?Cws(s,c,g,d,h):s,{rootNames:Ue,options:$e,configFileParsingDiagnostics:Ye,projectReferences:Tt,typeScriptVersion:ot,host:Qe}=We,{oldProgram:mt}=We;We=void 0,s=void 0;for(let br of TWt)if(Da($e,br.name)&&typeof $e[br.name]=="string")throw new Error(`${br.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let ht=FA(()=>Ln("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),_t,Rt,Lt,Ke,Pt,_r,Gt,nt,Dt,tr=D3t(jl),ur,Gr,dt,pr,st,ir,zt,Ht,Br,mn=typeof $e.maxNodeModuleJsDepth=="number"?$e.maxNodeModuleJsDepth:0,jn=0,Zi=new Map,Ns=new Map;(_=ki)==null||_.push(ki.Phase.Program,"createProgram",{configFilePath:$e.configFilePath,rootDir:$e.rootDir},!0),Mc("beforeProgram");let An=Qe||E3t($e),si=lVe(An),ks=$e.noLib,Ic=FA(()=>An.getDefaultLibFileName($e)),su=An.getDefaultLibLocation?An.getDefaultLibLocation():Mo(Ic()),Zn=!1,ya=An.getCurrentDirectory(),Gl=z7($e),ba=q7($e,Gl),Wo=new Map,hc,yr,hn,Oi,lo=An.hasInvalidatedResolutions||As;An.resolveModuleNameLiterals?(Oi=An.resolveModuleNameLiterals.bind(An),hn=(S=An.getModuleResolutionCache)==null?void 0:S.call(An)):An.resolveModuleNames?(Oi=(br,sn,ei,is,Qs,Oo)=>An.resolveModuleNames(br.map(R3t),sn,Oo?.map(R3t),ei,is,Qs).map(Os=>Os?Os.extension!==void 0?{resolvedModule:Os}:{resolvedModule:{...Os,extension:tz(Os.resolvedFileName)}}:frn),hn=(R=An.getModuleResolutionCache)==null?void 0:R.call(An)):(hn=Rie(ya,qm,$e),Oi=(br,sn,ei,is,Qs)=>JEe(br,sn,ei,is,Qs,An,hn,ptt));let pa;if(An.resolveTypeReferenceDirectiveReferences)pa=An.resolveTypeReferenceDirectiveReferences.bind(An);else if(An.resolveTypeReferenceDirectives)pa=(br,sn,ei,is,Qs)=>An.resolveTypeReferenceDirectives(br.map(N3t),sn,ei,is,Qs?.impliedNodeFormat).map(Oo=>({resolvedTypeReferenceDirective:Oo}));else{let br=x9e(ya,qm,void 0,hn?.getPackageJsonInfoCache(),hn?.optionsToRedirectsKey);pa=(sn,ei,is,Qs,Oo)=>JEe(sn,ei,is,Qs,Oo,An,br,iVe)}let Oa=An.hasInvalidatedLibResolutions||As,tl;if(An.resolveLibrary)tl=An.resolveLibrary.bind(An);else{let br=Rie(ya,qm,$e,hn?.getPackageJsonInfoCache());tl=(sn,ei,is)=>G9e(sn,ei,is,An,br)}let Qu=new Map,Tg=new Map,Cs=dl(),Tu,Pr=new Map,Pn=new Map,pt=An.useCaseSensitiveFileNames()?new Map:void 0,on,it,nr,Fr,Kr=!!((T=An.useSourceOfProjectReferenceRedirect)!=null&&T.call(An))&&!$e.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Dn,fileExists:hr,directoryExists:Sn}=_ws({compilerHost:An,getSymlinkCache:fS,useSourceOfProjectReferenceRedirect:Kr,toPath:Mn,getResolvedProjectReferences:Ag,getRedirectFromOutput:XI,forEachResolvedProjectReference:dI}),Ni=An.readFile.bind(An);(W=ki)==null||W.push(ki.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!mt});let Gi=mws(mt,$e);(V=ki)==null||V.pop();let nn;if((M=ki)==null||M.push(ki.Phase.Program,"tryReuseStructureFromOldProgram",{}),nn=fs(),(ee=ki)==null||ee.pop(),nn!==2){if(_t=[],Rt=[],Tt&&(on||(on=Tt.map(xN)),Ue.length&&on?.forEach((br,sn)=>{if(!br)return;let ei=br.commandLine.options.outFile;if(Kr){if(ei||i0(br.commandLine.options)===0)for(let is of br.commandLine.fileNames)Vb(is,{kind:1,index:sn})}else if(ei)Vb(fN(ei,".d.ts"),{kind:2,index:sn});else if(i0(br.commandLine.options)===0){let is=FA(()=>RU(br.commandLine,!An.useCaseSensitiveFileNames()));for(let Qs of br.commandLine.fileNames)!PC(Qs)&&!aA(Qs,".json")&&Vb(xde(Qs,br.commandLine,!An.useCaseSensitiveFileNames(),is),{kind:2,index:sn})}})),(re=ki)==null||re.push(ki.Phase.Program,"processRootFiles",{count:Ue.length}),F(Ue,(br,sn)=>Lg(br,!1,!1,{kind:0,index:sn})),(ge=ki)==null||ge.pop(),ur??(ur=Ue.length?D9e($e,An):E),Gr=Tie(),ur.length){(Ie=ki)==null||Ie.push(ki.Phase.Program,"processTypeReferences",{count:ur.length});let br=$e.configFilePath?Mo($e.configFilePath):ya,sn=Ro(br,Zde),ei=Vn(ur,sn);for(let is=0;is{Lg(Wx(sn),!0,!1,{kind:6,index:ei})})}Lt=bo(_t,tn).concat(Rt),_t=void 0,Rt=void 0,Gt=void 0}if(mt&&An.onReleaseOldSourceFile){let br=mt.getSourceFiles();for(let sn of br){let ei=Xg(sn.resolvedPath);(Gi||!ei||ei.impliedNodeFormat!==sn.impliedNodeFormat||sn.resolvedPath===sn.path&&ei.resolvedPath!==sn.path)&&An.onReleaseOldSourceFile(sn,mt.getCompilerOptions(),!!Xg(sn.path),ei)}An.getParsedCommandLine||mt.forEachResolvedProjectReference(sn=>{d_(sn.sourceFile.path)||An.onReleaseOldSourceFile(sn.sourceFile,mt.getCompilerOptions(),!1,void 0)})}mt&&An.onReleaseParsedCommandLine&&gz(mt.getProjectReferences(),mt.getResolvedProjectReferences(),(br,sn,ei)=>{let is=sn?.commandLine.projectReferences[ei]||mt.getProjectReferences()[ei],Qs=xz(is);it?.has(Mn(Qs))||An.onReleaseParsedCommandLine(Qs,br,mt.getCompilerOptions())}),mt=void 0,pr=void 0,ir=void 0,Ht=void 0;let En={getRootFileNames:()=>Ue,getSourceFile:jp,getSourceFileByPath:Xg,getSourceFiles:()=>Lt,getMissingFilePaths:()=>Pn,getModuleResolutionCache:()=>hn,getFilesByNameMap:()=>Pr,getCompilerOptions:()=>$e,getSyntacticDiagnostics:dS,getOptionsDiagnostics:Ss,getGlobalDiagnostics:rl,getSemanticDiagnostics:gu,getCachedSemanticDiagnostics:bg,getSuggestionDiagnostics:mr,getDeclarationDiagnostics:oi,getBindAndCheckDiagnostics:KA,getProgramDiagnostics:TA,getTypeChecker:pp,getClassifiableNames:es,getCommonSourceDirectory:ci,emit:Dl,getCurrentDirectory:()=>ya,getNodeCount:()=>pp().getNodeCount(),getIdentifierCount:()=>pp().getIdentifierCount(),getSymbolCount:()=>pp().getSymbolCount(),getTypeCount:()=>pp().getTypeCount(),getInstantiationCount:()=>pp().getInstantiationCount(),getRelationCacheSizes:()=>pp().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>tr.getFileProcessingDiagnostics(),getAutomaticTypeDirectiveNames:()=>ur,getAutomaticTypeDirectiveResolutions:()=>Gr,isSourceFileFromExternalLibrary:wI,isSourceFileDefaultLibrary:AI,getModeForUsageLocation:bv,getEmitSyntaxForUsageLocation:XF,getModeForResolutionAtIndex:o9,getSourceFileFromReference:b1,getLibFileFromReference:oh,sourceFileToPackageName:Tg,redirectTargetsMap:Cs,usesUriStyleNodeCoreModules:Tu,resolvedModules:st,resolvedTypeReferenceDirectiveNames:zt,resolvedLibReferences:dt,getProgramDiagnosticsContainer:()=>tr,getResolvedModule:ds,getResolvedModuleFromModuleSpecifier:Mt,getResolvedTypeReferenceDirective:cn,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:Bt,forEachResolvedModule:xe,forEachResolvedTypeReferenceDirective:fr,getCurrentPackagesMap:()=>Br,typesPackageExists:Hn,packageBundlesTypes:Ot,isEmittedFile:MC,getConfigFileParsingDiagnostics:xd,getProjectReferences:_u,getResolvedProjectReferences:Ag,getRedirectFromSourceFile:af,getResolvedProjectReferenceByPath:d_,forEachResolvedProjectReference:dI,isSourceOfProjectReferenceRedirect:C2,getRedirectFromOutput:XI,getCompilerOptionsForFile:gy,getDefaultResolutionModeForFile:My,getEmitModuleFormatOfFile:aR,getImpliedNodeFormatForEmit:sk,shouldTransformImportCall:WB,emitBuildInfo:gg,fileExists:hr,readFile:Ni,directoryExists:Sn,getSymlinkCache:fS,realpath:(Te=An.realpath)==null?void 0:Te.bind(An),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getCanonicalFileName:qm,getFileIncludeReasons:()=>tr.getFileReasons(),structureIsReused:nn,writeFile:mc,getGlobalTypingsCacheLocation:$i(An,An.getGlobalTypingsCacheLocation)};return Dn(),Zn||at(),Mc("afterProgram"),Pf("Program","beforeProgram","afterProgram"),(Ze=ki)==null||Ze.pop(),En;function ds(br,sn,ei){var is;return(is=st?.get(br.path))==null?void 0:is.get(sn,ei)}function Mt(br,sn){return sn??(sn=ms(br)),pe.assertIsDefined(sn,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ds(sn,br.text,bv(sn,br))}function cn(br,sn,ei){var is;return(is=zt?.get(br.path))==null?void 0:is.get(sn,ei)}function Bt(br,sn){return cn(sn,br.fileName,UP(br,sn))}function xe(br,sn){Je(st,br,sn)}function fr(br,sn){Je(zt,br,sn)}function Je(br,sn,ei){var is;ei?(is=br?.get(ei.path))==null||is.forEach((Qs,Oo,Os)=>sn(Qs,Oo,Os,ei.path)):br?.forEach((Qs,Oo)=>Qs.forEach((Os,co,Yc)=>sn(Os,co,Yc,Oo)))}function In(){return Br||(Br=new Map,xe(({resolvedModule:br})=>{br?.packageId&&Br.set(br.packageId.name,br.extension===".d.ts"||!!Br.get(br.packageId.name))}),Br)}function Hn(br){return In().has(Z9e(br))}function Ot(br){return!!In().get(br)}function $r(br){var sn;(sn=br.resolutionDiagnostics)!=null&&sn.length&&tr.addFileProcessingDiagnostic({kind:2,diagnostics:br.resolutionDiagnostics})}function ri(br,sn,ei,is){if(An.resolveModuleNameLiterals||!An.resolveModuleNames)return $r(ei);if(!hn||Xr(sn))return;let Qs=Xc(br.originalFileName,ya),Oo=Mo(Qs),Os=Ys(br),co=hn.getFromNonRelativeNameCache(sn,is,Oo,Os);co&&$r(co)}function ao(br,sn,ei){var is,Qs;let Oo=Xc(sn.originalFileName,ya),Os=Ys(sn);(is=ki)==null||is.push(ki.Phase.Program,"resolveModuleNamesWorker",{containingFileName:Oo}),Mc("beforeResolveModule");let co=Oi(br,Oo,Os,$e,sn,ei);return Mc("afterResolveModule"),Pf("ResolveModule","beforeResolveModule","afterResolveModule"),(Qs=ki)==null||Qs.pop(),co}function Bs(br,sn,ei){var is,Qs;let Oo=Xs(sn)?void 0:sn,Os=Xs(sn)?sn:Xc(sn.originalFileName,ya),co=Oo&&Ys(Oo);(is=ki)==null||is.push(ki.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:Os}),Mc("beforeResolveTypeReference");let Yc=pa(br,Os,co,$e,Oo,ei);return Mc("afterResolveTypeReference"),Pf("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Qs=ki)==null||Qs.pop(),Yc}function Ys(br){var sn,ei;let is=af(br.originalFileName);if(is||!PC(br.originalFileName))return is?.resolvedRef;let Qs=(sn=XI(br.path))==null?void 0:sn.resolvedRef;if(Qs)return Qs;if(!An.realpath||!$e.preserveSymlinks||!br.originalFileName.includes(Vx))return;let Oo=Mn(An.realpath(br.originalFileName));return Oo===br.path||(ei=XI(Oo))==null?void 0:ei.resolvedRef}function tn(br,sn){return Zt(wn(br),wn(sn))}function wn(br){if(Jh(su,br.fileName,!1)){let sn=gp(br.fileName);if(sn==="lib.d.ts"||sn==="lib.es6.d.ts")return 0;let ei=aa(Nm(sn,"lib."),".d.ts"),is=p9e.indexOf(ei);if(is!==-1)return is+1}return p9e.length+2}function Mn(br){return Ou(br,ya,qm)}function ci(){let br=tr.getCommonSourceDirectory();if(br!==void 0)return br;let sn=Me(Lt,ei=>SP(ei,En));return br=Gde($e,()=>Xt(sn,ei=>ei.isDeclarationFile?void 0:ei.fileName),ya,qm,ei=>pS(sn,ei)),tr.setCommonSourceDirectory(br),br}function es(){var br;if(!_r){pp(),_r=new Set;for(let sn of Lt)(br=sn.classifiableNames)==null||br.forEach(ei=>_r.add(ei))}return _r}function Wi(br,sn){return Ui({entries:br,containingFile:sn,containingSourceFile:sn,redirectedReference:Ys(sn),nameAndModeGetter:nVe,resolutionWorker:ao,getResolutionFromOldProgram:(ei,is)=>mt?.getResolvedModule(sn,ei,is),getResolved:xL,canReuseResolutionsInFile:()=>sn===mt?.getSourceFile(sn.fileName)&&!lo(sn.path),resolveToOwnAmbientModule:!0})}function Vn(br,sn){let ei=Xs(sn)?void 0:sn;return Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:ei&&Ys(ei),nameAndModeGetter:Irn,resolutionWorker:Bs,getResolutionFromOldProgram:(is,Qs)=>{var Oo;return ei?mt?.getResolvedTypeReferenceDirective(ei,is,Qs):(Oo=mt?.getAutomaticTypeDirectiveResolutions())==null?void 0:Oo.get(is,Qs)},getResolved:c7,canReuseResolutionsInFile:()=>ei?ei===mt?.getSourceFile(ei.fileName)&&!lo(ei.path):!lo(Mn(sn))})}function Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:is,nameAndModeGetter:Qs,resolutionWorker:Oo,getResolutionFromOldProgram:Os,getResolved:co,canReuseResolutionsInFile:Yc,resolveToOwnAmbientModule:tu}){if(!br.length)return E;if(nn===0&&(!tu||!ei.ambientModuleNames.length))return Oo(br,sn,void 0);let $a,ru,gl,kf,Wb=Yc();for(let p_=0;p_gl[ru[MB]]=p_),gl):OB}function gs(){return!gz(mt.getProjectReferences(),mt.getResolvedProjectReferences(),(br,sn,ei)=>{let is=(sn?sn.commandLine.projectReferences:Tt)[ei],Qs=xN(is);return br?!Qs||Qs.sourceFile!==br.sourceFile||!Sc(br.commandLine.fileNames,Qs.commandLine.fileNames):Qs!==void 0},(br,sn)=>{let ei=sn?d_(sn.sourceFile.path).commandLine.projectReferences:Tt;return!Sc(br,ei,Pre)})}function fs(){var br;if(!mt)return 0;let sn=mt.getCompilerOptions();if(NJ(sn,$e))return 0;let ei=mt.getRootFileNames();if(!Sc(ei,Ue)||!gs())return 0;Tt&&(on=Tt.map(xN));let is=[],Qs=[];if(nn=2,Dh(mt.getMissingFilePaths(),$a=>An.fileExists($a)))return 0;let Oo=mt.getSourceFiles(),Os;($a=>{$a[$a.Exists=0]="Exists",$a[$a.Modified=1]="Modified"})(Os||(Os={}));let co=new Map;for(let $a of Oo){let ru=Hl($a.fileName,hn,An,$e),gl=An.getSourceFileByPath?An.getSourceFileByPath($a.fileName,$a.resolvedPath,ru,void 0,Gi):An.getSourceFile($a.fileName,ru,void 0,Gi);if(!gl)return 0;gl.packageJsonLocations=(br=ru.packageJsonLocations)!=null&&br.length?ru.packageJsonLocations:void 0,gl.packageJsonScope=ru.packageJsonScope,pe.assert(!gl.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let kf;if($a.redirectInfo){if(gl!==$a.redirectInfo.unredirected)return 0;kf=!1,gl=$a}else if(mt.redirectTargetsMap.has($a.path)){if(gl!==$a)return 0;kf=!1}else kf=gl!==$a;gl.path=$a.path,gl.originalFileName=$a.originalFileName,gl.resolvedPath=$a.resolvedPath,gl.fileName=$a.fileName;let Wb=mt.sourceFileToPackageName.get($a.path);if(Wb!==void 0){let OB=co.get(Wb),p_=kf?1:0;if(OB!==void 0&&p_===1||OB===1)return 0;co.set(Wb,p_)}kf?($a.impliedNodeFormat!==gl.impliedNodeFormat?nn=1:Sc($a.libReferenceDirectives,gl.libReferenceDirectives,yf)?$a.hasNoDefaultLib!==gl.hasNoDefaultLib?nn=1:Sc($a.referencedFiles,gl.referencedFiles,yf)?(Gp(gl),Sc($a.imports,gl.imports,rm)&&Sc($a.moduleAugmentations,gl.moduleAugmentations,rm)?($a.flags&12582912)!==(gl.flags&12582912)?nn=1:Sc($a.typeReferenceDirectives,gl.typeReferenceDirectives,yf)||(nn=1):nn=1):nn=1:nn=1,Qs.push(gl)):lo($a.path)&&(nn=1,Qs.push(gl)),is.push(gl)}if(nn!==2)return nn;for(let $a of Qs){let ru=Crn($a),gl=Wi(ru,$a);(ir??(ir=new Map)).set($a.path,gl);let kf=gy($a);Wre(ru,gl,v1=>mt.getResolvedModule($a,v1.text,rVe($a,v1,kf)),hge)&&(nn=1);let OB=$a.typeReferenceDirectives,p_=Vn(OB,$a);(Ht??(Ht=new Map)).set($a.path,p_),Wre(OB,p_,v1=>mt.getResolvedTypeReferenceDirective($a,N3t(v1),UP(v1,$a)),mge)&&(nn=1)}if(nn!==2)return nn;if(Ige(sn,$e)||mt.resolvedLibReferences&&Dh(mt.resolvedLibReferences,($a,ru)=>Ox(ru).actual!==$a.actual))return 1;if(An.hasChangedAutomaticTypeDirectiveNames){if(An.hasChangedAutomaticTypeDirectiveNames())return 1}else if(ur=D9e($e,An),!Sc(mt.getAutomaticTypeDirectiveNames(),ur))return 1;Pn=mt.getMissingFilePaths(),pe.assert(is.length===mt.getSourceFiles().length);for(let $a of is)Pr.set($a.path,$a);mt.getFilesByNameMap().forEach(($a,ru)=>{if(!$a){Pr.set(ru,$a);return}if($a.path===ru){mt.isSourceFileFromExternalLibrary($a)&&Ns.set($a.path,!0);return}Pr.set(ru,Pr.get($a.path))});let tu=sn.configFile&&sn.configFile===$e.configFile||!sn.configFile&&!$e.configFile&&!S0(sn,$e,Ww);return tr.reuseStateFromOldProgram(mt.getProgramDiagnosticsContainer(),tu),Zn=tu,Lt=is,ur=mt.getAutomaticTypeDirectiveNames(),Gr=mt.getAutomaticTypeDirectiveResolutions(),Tg=mt.sourceFileToPackageName,Cs=mt.redirectTargetsMap,Tu=mt.usesUriStyleNodeCoreModules,st=mt.resolvedModules,zt=mt.resolvedTypeReferenceDirectiveNames,dt=mt.resolvedLibReferences,Br=mt.getCurrentPackagesMap(),2}function bi(br){return{getCanonicalFileName:qm,getCommonSourceDirectory:En.getCommonSourceDirectory,getCompilerOptions:En.getCompilerOptions,getCurrentDirectory:()=>ya,getSourceFile:En.getSourceFile,getSourceFileByPath:En.getSourceFileByPath,getSourceFiles:En.getSourceFiles,isSourceFileFromExternalLibrary:wI,getRedirectFromSourceFile:af,isSourceOfProjectReferenceRedirect:C2,getSymlinkCache:fS,writeFile:br||mc,isEmitBlocked:yu,shouldTransformImportCall:WB,getEmitModuleFormatOfFile:aR,getDefaultResolutionModeForFile:My,getModeForResolutionAtIndex:o9,readFile:sn=>An.readFile(sn),fileExists:sn=>{let ei=Mn(sn);return Xg(ei)?!0:Pn.has(ei)?!1:An.fileExists(sn)},realpath:$i(An,An.realpath),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getBuildInfo:()=>{var sn;return(sn=En.getBuildInfo)==null?void 0:sn.call(En)},getSourceFileFromReference:(sn,ei)=>En.getSourceFileFromReference(sn,ei),redirectTargetsMap:Cs,getFileIncludeReasons:En.getFileIncludeReasons,createHash:$i(An,An.createHash),getModuleResolutionCache:()=>En.getModuleResolutionCache(),trace:$i(An,An.trace),getGlobalTypingsCacheLocation:En.getGlobalTypingsCacheLocation}}function mc(br,sn,ei,is,Qs,Oo){An.writeFile(br,sn,ei,is,Qs,Oo)}function gg(br){var sn,ei;(sn=ki)==null||sn.push(ki.Phase.Emit,"emitBuildInfo",{},!0),Mc("beforeEmit");let is=ett(I3t,bi(br),void 0,g3t,!1,!0);return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),(ei=ki)==null||ei.pop(),is}function Ag(){return on}function _u(){return Tt}function wI(br){return!!Ns.get(br.path)}function AI(br){if(!br.isDeclarationFile)return!1;if(br.hasNoDefaultLib)return!0;if($e.noLib)return!1;let sn=An.useCaseSensitiveFileNames()?MA:Mp;return $e.lib?jt($e.lib,ei=>{let is=dt.get(ei);return!!is&&sn(br.fileName,is.actual)}):sn(br.fileName,Ic())}function pp(){return Pt||(Pt=EOt(En))}function Dl(br,sn,ei,is,Qs,Oo,Os){var co,Yc;(co=ki)==null||co.push(ki.Phase.Emit,"emit",{path:br?.path},!0);let tu=YI(()=>tm(En,br,sn,ei,is,Qs,Oo,Os));return(Yc=ki)==null||Yc.pop(),tu}function yu(br){return Wo.has(Mn(br))}function tm(br,sn,ei,is,Qs,Oo,Os,co){if(!Os){let ru=mtt(br,sn,ei,is);if(ru)return ru}let Yc=pp(),tu=Yc.getEmitResolver($e.outFile?void 0:sn,is,$et(Qs,Os));Mc("beforeEmit");let $a=Yc.runWithCancellationToken(is,()=>ett(tu,bi(ei),sn,A3t($e,Oo,Qs),Qs,!1,Os,co));return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),$a}function jp(br){return Xg(Mn(br))}function Xg(br){return Pr.get(br)||void 0}function sh(br,sn,ei){return ui(br?sn(br,ei):er(En.getSourceFiles(),is=>(ei&&ei.throwIfCancellationRequested(),sn(is,ei))))}function dS(br,sn){return sh(br,$d,sn)}function gu(br,sn,ei){return sh(br,(is,Qs)=>Fh(is,Qs,ei),sn)}function bg(br){return nt?.get(br.path)}function KA(br,sn){return WC(br,sn,void 0)}function TA(br){var sn;if(T3(br,$e,En))return E;let ei=tr.getCombinedDiagnostics(En).getDiagnostics(br.fileName);return(sn=br.commentDirectives)!=null&&sn.length?ve(br,br.commentDirectives,ei).diagnostics:ei}function oi(br,sn){return sh(br,Go,sn)}function $d(br){return n0(br)?(br.additionalSyntacticDiagnostics||(br.additionalSyntacticDiagnostics=ni(br)),Nn(br.additionalSyntacticDiagnostics,br.parseDiagnostics)):br.parseDiagnostics}function YI(br){try{return br()}catch(sn){throw sn instanceof By&&(Pt=void 0),sn}}function Fh(br,sn,ei){return Nn(cVe(WC(br,sn,ei),$e),TA(br))}function WC(br,sn,ei){if(ei)return _f(br,sn,ei);let is=nt?.get(br.path);return is||(nt??(nt=new Map)).set(br.path,is=_f(br,sn)),is}function _f(br,sn,ei){return YI(()=>{if(T3(br,$e,En))return E;let is=pp();pe.assert(!!br.bindDiagnostics);let Qs=br.scriptKind===1||br.scriptKind===2,Oo=SY(br,$e.checkJs),Os=Qs&&rz(br,$e),co=br.bindDiagnostics,Yc=is.getDiagnostics(br,sn,ei);return Oo&&(co=Me(co,tu=>hrn.has(tu.code)),Yc=Me(Yc,tu=>hrn.has(tu.code))),QI(br,!Oo,!!ei,co,Yc,Os?br.jsDocDiagnostics:void 0)})}function QI(br,sn,ei,...is){var Qs;let Oo=Nr(is);if(!sn||!((Qs=br.commentDirectives)!=null&&Qs.length))return Oo;let{diagnostics:Os,directives:co}=ve(br,br.commentDirectives,Oo);if(ei)return Os;for(let Yc of co.getUnusedExpectations())Os.push(kn(br,Yc.range,Z.Unused_ts_expect_error_directive));return Os}function ve(br,sn,ei){let is=Ege(br,sn);return{diagnostics:ei.filter(Oo=>ln(Oo,is)===-1),directives:is}}function mr(br,sn){return YI(()=>pp().getSuggestionDiagnostics(br,sn))}function ln(br,sn){let{file:ei,start:is}=br;if(!ei)return-1;let Qs=rn(ei),Oo=Ci(Qs,is).line-1;for(;Oo>=0;){if(sn.markUsed(Oo))return Oo;let Os=ei.text.slice(Qs[Oo],Qs[Oo+1]).trim();if(Os!==""&&!/^\s*\/\/.*$/.test(Os))return-1;Oo--}return-1}function ni(br){return YI(()=>{let sn=[];return ei(br,br),Sz(br,ei,is),sn;function ei(co,Yc){switch(Yc.kind){case 170:case 173:case 175:if(Yc.questionToken===co)return sn.push(Os(co,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 174:case 177:case 178:case 179:case 219:case 263:case 220:case 261:if(Yc.type===co)return sn.push(Os(co,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(co.kind){case 274:if(co.isTypeOnly)return sn.push(Os(Yc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 279:if(co.isTypeOnly)return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 277:case 282:if(co.isTypeOnly)return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,uy(co)?"import...type":"export...type")),"skip";break;case 272:return sn.push(Os(co,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 278:if(co.isExportEquals)return sn.push(Os(co,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 299:if(co.token===119)return sn.push(Os(co,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 265:let $a=Vi(120);return pe.assertIsDefined($a),sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,$a)),"skip";case 268:let ru=co.flags&32?Vi(145):Vi(144);return pe.assertIsDefined(ru),sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,ru)),"skip";case 266:return sn.push(Os(co,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 177:case 175:case 263:return co.body?void 0:(sn.push(Os(co,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 267:let gl=pe.checkDefined(Vi(94));return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,gl)),"skip";case 236:return sn.push(Os(co,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 235:return sn.push(Os(co.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 239:return sn.push(Os(co.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 217:pe.fail()}}function is(co,Yc){if(x$e(Yc)){let tu=de(Yc.modifiers,So);tu&&sn.push(Os(tu,Z.Decorators_are_not_valid_here))}else if(oQ(Yc)&&Yc.modifiers){let tu=Se(Yc.modifiers,So);if(tu>=0){if(Si(Yc)&&!$e.experimentalDecorators)sn.push(Os(Yc.modifiers[tu],Z.Decorators_are_not_valid_here));else if(pm(Yc)){let $a=Se(Yc.modifiers,y);if($a>=0){let ru=Se(Yc.modifiers,w);if(tu>$a&&ru>=0&&tu=0&&tu<$a){let gl=Se(Yc.modifiers,So,$a);gl>=0&&sn.push(lg(Os(Yc.modifiers[gl],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Os(Yc.modifiers[tu],Z.Decorator_used_before_export_here)))}}}}}switch(Yc.kind){case 264:case 232:case 175:case 177:case 178:case 179:case 219:case 263:case 220:if(co===Yc.typeParameters)return sn.push(Oo(co,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 244:if(co===Yc.modifiers)return Qs(Yc.modifiers,Yc.kind===244),"skip";break;case 173:if(co===Yc.modifiers){for(let tu of co)Ig(tu)&&tu.kind!==126&&tu.kind!==129&&sn.push(Os(tu,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(tu.kind)));return"skip"}break;case 170:if(co===Yc.modifiers&&jt(co,Ig))return sn.push(Oo(co,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 214:case 215:case 234:case 286:case 287:case 216:if(co===Yc.typeArguments)return sn.push(Oo(co,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Qs(co,Yc){for(let tu of co)switch(tu.kind){case 87:if(Yc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:sn.push(Os(tu,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(tu.kind)));break;case 126:case 95:case 90:case 129:}}function Oo(co,Yc,...tu){let $a=co.pos;return qh(br,$a,co.end-$a,Yc,...tu)}function Os(co,Yc,...tu){return _E(br,co,Yc,...tu)}})}function Ls(br,sn){let ei=Dt?.get(br.path);return ei||(Dt??(Dt=new Map)).set(br.path,ei=Za(br,sn)),ei}function Za(br,sn){return YI(()=>{let ei=pp().getEmitResolver(br,sn);return u3t(bi(Dc),ei,br)||E})}function Go(br,sn){return br.isDeclarationFile?E:Ls(br,sn)}function Ss(){return ui(Nn(tr.getCombinedDiagnostics(En).getGlobalDiagnostics(),Uc()))}function Uc(){if(!$e.configFile)return E;let br=tr.getCombinedDiagnostics(En).getDiagnostics($e.configFile.fileName);return dI(sn=>{br=Nn(br,tr.getCombinedDiagnostics(En).getDiagnostics(sn.sourceFile.fileName))}),br}function rl(){return Ue.length?ui(pp().getGlobalDiagnostics().slice()):E}function xd(){return Ye||E}function Lg(br,sn,ei,is){m2(iu(br),sn,ei,void 0,is)}function yf(br,sn){return br.fileName===sn.fileName}function rm(br,sn){return br.kind===80?sn.kind===80&&br.escapedText===sn.escapedText:sn.kind===11&&br.text===sn.text}function _h(br,sn){let ei=me.createStringLiteral(br),is=me.createImportDeclaration(void 0,void 0,ei);return N3(is,2),XA(ei,is),XA(is,sn),ei.flags&=-17,is.flags&=-17,ei}function Gp(br){if(br.imports)return;let sn=n0(br),ei=xm(br),is,Qs,Oo;if(sn||!br.isDeclarationFile&&(sS($e)||xm(br))){$e.importHelpers&&(is=[_h(PD,br)]);let co=Hne(Mne($e,br),$e);co&&(is||(is=[])).push(_h(co,br))}for(let co of br.statements)Os(co,!1);(br.flags&4194304||sn)&&eie(br,!0,!0,(co,Yc)=>{UL(co,!1),is=Ft(is,Yc)}),br.imports=is||E,br.moduleAugmentations=Qs||E,br.ambientModuleNames=Oo||E;return;function Os(co,Yc){if(DY(co)){let tu=LY(co);tu&&Zg(tu)&&tu.text&&(!Yc||!Xr(tu.text))&&(UL(co,!1),is=Ft(is,tu),!Tu&&jn===0&&!br.isDeclarationFile&&(Ac(tu.text,"node:")&&!zAe.has(tu.text)?Tu=!0:Tu===void 0&&$ne.has(tu.text)&&(Tu=!1)))}else if(xh(co)&&s_(co)&&(Yc||Ga(co,128)||br.isDeclarationFile)){co.name.parent=co;let tu=c2(co.name);if(ei||Yc&&!Xr(tu))(Qs||(Qs=[])).push(co.name);else if(!Yc){br.isDeclarationFile&&(Oo||(Oo=[])).push(tu);let $a=co.body;if($a)for(let ru of $a.statements)Os(ru,!0)}}}}function oh(br){var sn;let ei=Mbe(br),is=ei&&((sn=dt?.get(ei))==null?void 0:sn.actual);return is!==void 0?jp(is):void 0}function b1(br,sn){return Z_(att(sn.fileName,br.fileName),jp)}function Z_(br,sn,ei,is){if(E0(br)){let Qs=An.getCanonicalFileName(br);if(!$e.allowNonTsExtensions&&!F(Nr(ba),Os=>aA(Qs,Os))){ei&&(pN(Qs)?ei(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,br):ei(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,br,"'"+Nr(Gl).join("', '")+"'"));return}let Oo=sn(br);if(ei)if(Oo)K3(is)&&Qs===An.getCanonicalFileName(Xg(is.file).fileName)&&ei(Z.A_file_cannot_have_a_reference_to_itself);else{let Os=af(br);Os?.outputDts?ei(Z.Output_file_0_has_not_been_built_from_source_file_1,Os.outputDts,br):ei(Z.File_0_not_found,br)}return Oo}else{let Qs=$e.allowNonTsExtensions&&sn(br);if(Qs)return Qs;if(ei&&$e.allowNonTsExtensions){ei(Z.File_0_not_found,br);return}let Oo=F(Gl[0],Os=>sn(br+Os));return ei&&!Oo&&ei(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,br,"'"+Nr(Gl).join("', '")+"'"),Oo}}function m2(br,sn,ei,is,Qs){Z_(br,Oo=>Js(Oo,sn,ei,Qs,is),(Oo,...Os)=>eo(void 0,Qs,Oo,Os),Qs)}function Vb(br,sn){return m2(br,!1,!1,void 0,sn)}function or(br,sn,ei){!K3(ei)&&jt(tr.getFileReasons().get(sn.path),K3)?eo(sn,ei,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[sn.fileName,br]):eo(sn,ei,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[br,sn.fileName])}function qn(br,sn,ei,is,Qs,Oo,Os){var co;let Yc=H3.createRedirectedSourceFile({redirectTarget:br,unredirected:sn});return Yc.fileName=ei,Yc.path=is,Yc.resolvedPath=Qs,Yc.originalFileName=Oo,Yc.packageJsonLocations=(co=Os.packageJsonLocations)!=null&&co.length?Os.packageJsonLocations:void 0,Yc.packageJsonScope=Os.packageJsonScope,Ns.set(is,jn>0),Yc}function Js(br,sn,ei,is,Qs){var Oo,Os;(Oo=ki)==null||Oo.push(ki.Phase.Program,"findSourceFile",{fileName:br,isDefaultLib:sn||void 0,fileIncludeKind:$0[is.kind]});let co=RA(br,sn,ei,is,Qs);return(Os=ki)==null||Os.pop(),co}function Hl(br,sn,ei,is){let Qs=oVe(Xc(br,ya),sn?.getPackageJsonInfoCache(),ei,is),Oo=Mg(is),Os=Vne(is);return typeof Qs=="object"?{...Qs,languageVersion:Oo,setExternalModuleIndicator:Os,jsDocParsingMode:ei.jsDocParsingMode}:{languageVersion:Oo,impliedNodeFormat:Qs,setExternalModuleIndicator:Os,jsDocParsingMode:ei.jsDocParsingMode}}function RA(br,sn,ei,is,Qs){var Oo,Os;let co=Mn(br);if(Kr){let gl=XI(co);if(!gl&&An.realpath&&$e.preserveSymlinks&&PC(br)&&br.includes(Vx)){let kf=Mn(An.realpath(br));kf!==co&&(gl=XI(kf))}if(gl?.source){let kf=Js(gl.source,sn,ei,is,Qs);return kf&&uA(kf,co,br,void 0),kf}}let Yc=br;if(Pr.has(co)){let gl=Pr.get(co),kf=NA(gl||void 0,is,!0);if(gl&&kf&&$e.forceConsistentCasingInFileNames!==!1){let Wb=gl.fileName;Mn(Wb)!==Mn(br)&&(br=((Oo=af(br))==null?void 0:Oo.outputDts)||br);let p_=KR(Wb,ya),MB=KR(br,ya);p_!==MB&&or(br,gl,is)}return gl&&Ns.get(gl.path)&&jn===0?(Ns.set(gl.path,!1),$e.noResolve||(OC(gl,sn),E1(gl)),$e.noLib||Pb(gl),Zi.set(gl.path,!1),oR(gl)):gl&&Zi.get(gl.path)&&jneo(void 0,is,Z.Cannot_read_file_0_Colon_1,[br,gl]),Gi);if(Qs){let gl=oN(Qs),kf=Qu.get(gl);if(kf){let Wb=qn(kf,ru,br,co,Mn(br),Yc,$a);return Cs.add(kf.path,br),uA(Wb,co,br,tu),NA(Wb,is,!1),Tg.set(co,xJ(Qs)),Rt.push(Wb),Wb}else ru&&(Qu.set(gl,ru),Tg.set(co,xJ(Qs)))}if(uA(ru,co,br,tu),ru){if(Ns.set(co,jn>0),ru.fileName=br,ru.path=co,ru.resolvedPath=Mn(br),ru.originalFileName=Yc,ru.packageJsonLocations=(Os=$a.packageJsonLocations)!=null&&Os.length?$a.packageJsonLocations:void 0,ru.packageJsonScope=$a.packageJsonScope,NA(ru,is,!1),An.useCaseSensitiveFileNames()){let gl=Om(co),kf=pt.get(gl);kf?or(br,kf,is):pt.set(gl,ru)}ks=ks||ru.hasNoDefaultLib&&!ei,$e.noResolve||(OC(ru,sn),E1(ru)),$e.noLib||Pb(ru),oR(ru),sn?_t.push(ru):Rt.push(ru),(Gt??(Gt=new Set)).add(ru.path)}return ru}function NA(br,sn,ei){return br&&(!ei||!K3(sn)||!Gt?.has(sn.file))?(tr.getFileReasons().add(br.path,sn),!0):!1}function uA(br,sn,ei,is){is?(hm(ei,is,br),hm(ei,sn,br||!1)):hm(ei,sn,br)}function hm(br,sn,ei){Pr.set(sn,ei),ei!==void 0?Pn.delete(sn):Pn.set(sn,br)}function af(br){return nr?.get(Mn(br))}function dI(br){return rie(on,br)}function XI(br){return Fr?.get(br)}function C2(br){return Kr&&!!af(br)}function d_(br){if(it)return it.get(br)||void 0}function OC(br,sn){F(br.referencedFiles,(ei,is)=>{m2(att(ei.fileName,br.fileName),sn,!1,void 0,{kind:4,file:br.path,index:is})})}function E1(br){let sn=br.typeReferenceDirectives;if(!sn.length)return;let ei=Ht?.get(br.path)||Vn(sn,br),is=Tie();(zt??(zt=new Map)).set(br.path,is);for(let Qs=0;Qs{let is=Mbe(sn);is?Lg(Wx(is),!0,!0,{kind:7,file:br.path,index:ei}):tr.addFileProcessingDiagnostic({kind:0,reason:{kind:7,file:br.path,index:ei}})})}function qm(br){return An.getCanonicalFileName(br)}function oR(br){if(Gp(br),br.imports.length||br.moduleAugmentations.length){let sn=Crn(br),ei=ir?.get(br.path)||Wi(sn,br);pe.assert(ei.length===sn.length);let is=gy(br),Qs=Tie();(st??(st=new Map)).set(br.path,Qs);for(let Oo=0;Oomn,Wb=gl&&!Ctt(is,Os,br)&&!is.noResolve&&OoRU(Os.commandLine,!An.useCaseSensitiveFileNames()));Qs.fileNames.forEach(tu=>{let $a=Mn(tu),ru;!PC(tu)&&!aA(tu,".json")&&(Qs.options.outFile?ru=co:(ru=xde(tu,Os.commandLine,!An.useCaseSensitiveFileNames(),Yc),Fr.set(Mn(ru),{resolvedRef:Os,source:tu}))),nr.set($a,{resolvedRef:Os,outputDts:ru})})}return Qs.projectReferences&&(Os.references=Qs.projectReferences.map(xN)),Os}function at(){$e.strictPropertyInitialization&&!a_($e,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks"),$e.exactOptionalPropertyTypes&&!a_($e,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks"),($e.isolatedModules||$e.verbatimModuleSyntax)&&$e.outFile&&gr(Z.Option_0_cannot_be_specified_with_option_1,"outFile",$e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules"),$e.isolatedDeclarations&&(TF($e)&&gr(Z.Option_0_cannot_be_specified_with_option_1,"allowJs","isolatedDeclarations"),Ly($e)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"isolatedDeclarations","declaration","composite")),$e.inlineSourceMap&&($e.sourceMap&&gr(Z.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),$e.mapRoot&&gr(Z.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")),$e.composite&&($e.declaration===!1&&gr(Z.Composite_projects_may_not_disable_declaration_emit,"declaration"),$e.incremental===!1&&gr(Z.Composite_projects_may_not_disable_incremental_compilation,"declaration"));let br=$e.outFile;if(!$e.tsBuildInfoFile&&$e.incremental&&!br&&!$e.configFilePath&&tr.addConfigDiagnostic(Nf(Z.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)),_i(),wa(),$e.composite){let Os=new Set(Ue.map(Mn));for(let co of Lt)SP(co,En)&&!Os.has(co.path)&&tr.addLazyConfigDiagnostic(co,Z.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,co.fileName,$e.configFilePath||"")}if($e.paths){for(let Os in $e.paths)if(Da($e.paths,Os))if(_be(Os)||ul(!0,Os,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Os),Ki($e.paths[Os])){let co=$e.paths[Os].length;co===0&&ul(!1,Os,Z.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,Os);for(let Yc=0;Ycxm(Os)&&!Os.isDeclarationFile);if($e.isolatedModules||$e.verbatimModuleSyntax)$e.module===0&&sn<2&&$e.isolatedModules&&gr(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),$e.preserveConstEnums===!1&&gr(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,$e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(ei&&sn<2&&$e.module===0){let Os=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(qh(ei,Os.start,Os.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(br&&!$e.emitDeclarationOnly){if($e.module&&!($e.module===2||$e.module===4))gr(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if($e.module===void 0&&ei){let Os=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(qh(ei,Os.start,Os.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(NP($e)&&(k_($e)===1?gr(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):TAe($e)||gr(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),$e.outDir||$e.rootDir||$e.sourceRoot||$e.mapRoot||Ly($e)&&$e.declarationDir){let Os=ci();$e.outDir&&Os===""&&Lt.some(co=>Wf(co.fileName)>1)&&gr(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}$e.checkJs&&!TF($e)&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),$e.emitDeclarationOnly&&(Ly($e)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite")),$e.emitDecoratorMetadata&&!$e.experimentalDecorators&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),$e.jsxFactory?($e.reactNamespace&&gr(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",CEe.get(""+$e.jsx)),Bz($e.jsxFactory,sn)||Ln("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,$e.jsxFactory)):$e.reactNamespace&&!Uh($e.reactNamespace,sn)&&Ln("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,$e.reactNamespace),$e.jsxFragmentFactory&&($e.jsxFactory||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",CEe.get(""+$e.jsx)),Bz($e.jsxFragmentFactory,sn)||Ln("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,$e.jsxFragmentFactory)),$e.reactNamespace&&($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",CEe.get(""+$e.jsx)),$e.jsxImportSource&&$e.jsx===2&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",CEe.get(""+$e.jsx));let is=i0($e);$e.verbatimModuleSyntax&&(is===2||is===3||is===4)&&gr(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),$e.allowImportingTsExtensions&&!($e.noEmit||$e.emitDeclarationOnly||$e.rewriteRelativeImportExtensions)&&Ln("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Qs=k_($e);if($e.resolvePackageJsonExports&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),$e.resolvePackageJsonImports&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),$e.customConditions&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Qs===100&&!One(is)&&is!==200&&Ln("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),jS[is]&&100<=is&&is<=199&&!(3<=Qs&&Qs<=99)){let Os=jS[is],co=z_[Os]?Os:"Node16";Ln("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,co,Os)}else if(z_[Qs]&&3<=Qs&&Qs<=99&&!(100<=is&&is<=199)){let Os=z_[Qs];Ln("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,Os,Os)}if(!$e.noEmit&&!$e.suppressOutputPathCheck){let Os=bi(),co=new Set;Ket(Os,Yc=>{$e.emitDeclarationOnly||Oo(Yc.jsFilePath,co),Oo(Yc.declarationFilePath,co)})}function Oo(Os,co){if(Os){let Yc=Mn(Os);if(Pr.has(Yc)){let $a;$e.configFilePath||($a=wu(void 0,Z.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),$a=wu($a,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,Os),Jg(Os,vAe($a))}let tu=An.useCaseSensitiveFileNames()?Yc:Om(Yc);co.has(tu)?Jg(Os,Nf(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,Os)):co.add(tu)}}}function en(){let br=$e.ignoreDeprecations;if(br){if(br==="5.0")return new O(br);ht()}return O.zero}function gi(br,sn,ei,is){let Qs=new O(br),Oo=new O(sn),Os=new O(ot||I),co=en(),Yc=Oo.compareTo(Os)!==1,tu=!Yc&&co.compareTo(Qs)===-1;(Yc||tu)&&is(($a,ru,gl)=>{Yc?ru===void 0?ei($a,ru,gl,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,$a):ei($a,ru,gl,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,$a,ru):ru===void 0?ei($a,ru,gl,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,$a,sn,br):ei($a,ru,gl,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,$a,ru,sn,br)})}function _i(){function br(sn,ei,is,Qs,...Oo){if(is){let Os=wu(void 0,Z.Use_0_instead,is),co=wu(Os,Qs,...Oo);Xl(!ei,sn,void 0,co)}else Xl(!ei,sn,void 0,Qs,...Oo)}gi("5.0","5.5",br,sn=>{$e.target===0&&sn("target","ES3"),$e.noImplicitUseStrict&&sn("noImplicitUseStrict"),$e.keyofStringsOnly&&sn("keyofStringsOnly"),$e.suppressExcessPropertyErrors&&sn("suppressExcessPropertyErrors"),$e.suppressImplicitAnyIndexErrors&&sn("suppressImplicitAnyIndexErrors"),$e.noStrictGenericChecks&&sn("noStrictGenericChecks"),$e.charset&&sn("charset"),$e.out&&sn("out",void 0,"outFile"),$e.importsNotUsedAsValues&&sn("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),$e.preserveValueImports&&sn("preserveValueImports",void 0,"verbatimModuleSyntax")})}function ys(br,sn,ei){function is(Qs,Oo,Os,co,...Yc){bs(sn,ei,co,...Yc)}gi("5.0","5.5",is,Qs=>{br.prepend&&Qs("prepend")})}function eo(br,sn,ei,is){tr.addFileProcessingDiagnostic({kind:1,file:br&&br.path,fileProcessingReason:sn,diagnostic:ei,args:is})}function wa(){let br=$e.suppressOutputPathCheck?void 0:U3($e);gz(Tt,on,(sn,ei,is)=>{let Qs=(ei?ei.commandLine.projectReferences:Tt)[is],Oo=ei&&ei.sourceFile;if(ys(Qs,Oo,is),!sn){bs(Oo,is,Z.File_0_not_found,Qs.path);return}let Os=sn.commandLine.options;(!Os.composite||Os.noEmit)&&(ei?ei.commandLine.fileNames:Ue).length&&(Os.composite||bs(Oo,is,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Qs.path),Os.noEmit&&bs(Oo,is,Z.Referenced_project_0_may_not_disable_emit,Qs.path)),!ei&&br&&br===U3(Os)&&(bs(Oo,is,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,br,Qs.path),Wo.set(Mn(br),!0))})}function pc(br,sn,ei,...is){let Qs=!0;Fe(Oo=>{og(Oo.initializer)&&WJ(Oo.initializer,br,Os=>{let co=Os.initializer;OI(co)&&co.elements.length>sn&&(tr.addConfigDiagnostic(_E($e.configFile,co.elements[sn],ei,...is)),Qs=!1)})}),Qs&&eg(ei,...is)}function ul(br,sn,ei,...is){let Qs=!0;Fe(Oo=>{og(Oo.initializer)&&Df(Oo.initializer,br,sn,void 0,ei,...is)&&(Qs=!1)}),Qs&&eg(ei,...is)}function Fe(br){return qAe(jl(),"paths",br)}function gr(br,sn,ei,is){Xl(!0,sn,ei,br,sn,ei,is)}function Ln(br,sn,...ei){Xl(!1,br,void 0,sn,...ei)}function bs(br,sn,ei,...is){let Qs=qre(br||$e.configFile,"references",Oo=>OI(Oo.initializer)?Oo.initializer:void 0);Qs&&Qs.elements.length>sn?tr.addConfigDiagnostic(_E(br||$e.configFile,Qs.elements[sn],ei,...is)):tr.addConfigDiagnostic(Nf(ei,...is))}function Xl(br,sn,ei,is,...Qs){let Oo=jl();(!Oo||!Df(Oo,br,sn,ei,is,...Qs))&&eg(is,...Qs)}function eg(br,...sn){let ei=Eu();ei?"messageText"in br?tr.addConfigDiagnostic(Bw($e.configFile,ei.name,br)):tr.addConfigDiagnostic(_E($e.configFile,ei.name,br,...sn)):"messageText"in br?tr.addConfigDiagnostic(vAe(br)):tr.addConfigDiagnostic(Nf(br,...sn))}function jl(){if(hc===void 0){let br=Eu();hc=br&&Gs(br.initializer,og)||!1}return hc||void 0}function Eu(){return yr===void 0&&(yr=WJ(m7($e.configFile),"compilerOptions",Fl)||!1),yr||void 0}function Df(br,sn,ei,is,Qs,...Oo){let Os=!1;return WJ(br,ei,co=>{"messageText"in Qs?tr.addConfigDiagnostic(Bw($e.configFile,sn?co.name:co.initializer,Qs)):tr.addConfigDiagnostic(_E($e.configFile,sn?co.name:co.initializer,Qs,...Oo)),Os=!0},is),Os}function Jg(br,sn){Wo.set(Mn(br),!0),tr.addConfigDiagnostic(sn)}function MC(br){if($e.noEmit)return!1;let sn=Mn(br);if(Xg(sn))return!1;let ei=$e.outFile;if(ei)return S1(sn,ei)||S1(sn,s0(ei)+".d.ts");if($e.declarationDir&&Jh($e.declarationDir,sn,ya,!An.useCaseSensitiveFileNames()))return!0;if($e.outDir)return Jh($e.outDir,sn,ya,!An.useCaseSensitiveFileNames());if(fu(sn,uU)||PC(sn)){let is=s0(sn);return!!Xg(is+".ts")||!!Xg(is+".tsx")}return!1}function S1(br,sn){return qf(br,sn,ya,!An.useCaseSensitiveFileNames())===0}function fS(){return An.getSymlinkCache?An.getSymlinkCache():(Ke||(Ke=ybe(ya,qm)),Lt&&!Ke.hasProcessedResolutions()&&Ke.setSymlinksFromResolutions(xe,fr,Gr),Ke)}function bv(br,sn){return rVe(br,sn,gy(br))}function XF(br,sn){return prn(br,sn,gy(br))}function o9(br,sn){return bv(br,jEe(br,sn))}function My(br){return aVe(br,gy(br))}function sk(br){return NU(br,gy(br))}function aR(br){return Vde(br,gy(br))}function WB(br){return mrn(br,gy(br))}function UP(br,sn){return br.resolutionMode||My(sn)}}function mrn(s,c){let g=i0(c);return 100<=g&&g<=199||g===200?!1:Vde(s,c)<5}function Vde(s,c){return NU(s,c)??i0(c)}function NU(s,c){var g,d;let h=i0(c);if(100<=h&&h<=199)return s.impliedNodeFormat;if(s.impliedNodeFormat===1&&(((g=s.packageJsonScope)==null?void 0:g.contents.packageJsonContent.type)==="commonjs"||fu(s.fileName,[".cjs",".cts"])))return 1;if(s.impliedNodeFormat===99&&(((d=s.packageJsonScope)==null?void 0:d.contents.packageJsonContent.type)==="module"||fu(s.fileName,[".mjs",".mts"])))return 99}function aVe(s,c){return hbe(c)?NU(s,c):void 0}function _ws(s){let c,g=s.compilerHost.fileExists,d=s.compilerHost.directoryExists,h=s.compilerHost.getDirectories,_=s.compilerHost.realpath;if(!s.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:Dc,fileExists:T};s.compilerHost.fileExists=T;let S;return d&&(S=s.compilerHost.directoryExists=re=>d.call(s.compilerHost,re)?(M(re),!0):s.getResolvedProjectReferences()?(c||(c=new Set,s.forEachResolvedProjectReference(ge=>{let Ie=ge.commandLine.options.outFile;if(Ie)c.add(Mo(s.toPath(Ie)));else{let _e=ge.commandLine.options.declarationDir||ge.commandLine.options.outDir;_e&&c.add(s.toPath(_e))}})),ee(re,!1)):!1),h&&(s.compilerHost.getDirectories=re=>!s.getResolvedProjectReferences()||d&&d.call(s.compilerHost,re)?h.call(s.compilerHost,re):[]),_&&(s.compilerHost.realpath=re=>{var ge;return((ge=s.getSymlinkCache().getSymlinkedFiles())==null?void 0:ge.get(s.toPath(re)))||_.call(s.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:T,directoryExists:S};function R(){s.compilerHost.fileExists=g,s.compilerHost.directoryExists=d,s.compilerHost.getDirectories=h}function T(re){return g.call(s.compilerHost,re)?!0:!s.getResolvedProjectReferences()||!PC(re)?!1:ee(re,!0)}function W(re){let ge=s.getRedirectFromOutput(s.toPath(re));return ge!==void 0?Xs(ge.source)?g.call(s.compilerHost,ge.source):!0:void 0}function V(re){let ge=s.toPath(re),Ie=`${ge}${ag}`;return SB(c,_e=>ge===_e||Ac(_e,Ie)||Ac(ge,`${_e}/`))}function M(re){var ge;if(!s.getResolvedProjectReferences()||sz(re)||!_||!re.includes(Vx))return;let Ie=s.getSymlinkCache(),_e=hp(s.toPath(re));if((ge=Ie.getSymlinkedDirectories())!=null&&ge.has(_e))return;let Ee=iu(_.call(s.compilerHost,re)),Ne;if(Ee===re||(Ne=hp(s.toPath(Ee)))===_e){Ie.setSymlinkedDirectory(_e,!1);return}Ie.setSymlinkedDirectory(re,{real:hp(Ee),realPath:Ne})}function ee(re,ge){var Ie;let _e=ge?W:V,Ee=_e(re);if(Ee!==void 0)return Ee;let Ne=s.getSymlinkCache(),Te=Ne.getSymlinkedDirectories();if(!Te)return!1;let Ze=s.toPath(re);return Ze.includes(Vx)?ge&&((Ie=Ne.getSymlinkedFiles())!=null&&Ie.has(Ze))?!0:ae(Te.entries(),([We,Ue])=>{if(!Ue||!Ac(Ze,We))return;let $e=_e(Ze.replace(We,Ue.realPath));if(ge&&$e){let Ye=Xc(re,s.compilerHost.getCurrentDirectory());Ne.setSymlinkedFile(Ze,`${Ue.real}${Ye.replace(new RegExp(We,"i"),"")}`)}return $e})||!1:!1}}var htt={diagnostics:E,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function mtt(s,c,g,d){let h=s.getCompilerOptions();if(h.noEmit)return c?htt:s.emitBuildInfo(g,d);if(!h.noEmitOnError)return;let _=[...s.getOptionsDiagnostics(d),...s.getSyntacticDiagnostics(c,d),...s.getGlobalDiagnostics(d),...s.getSemanticDiagnostics(c,d)];if(_.length===0&&Ly(s.getCompilerOptions())&&(_=s.getDeclarationDiagnostics(void 0,d)),!_.length)return;let S;if(!c){let R=s.emitBuildInfo(g,d);R.diagnostics&&(_=[..._,...R.diagnostics]),S=R.emittedFiles}return{diagnostics:_,sourceMaps:void 0,emittedFiles:S,emitSkipped:!0}}function cVe(s,c){return Me(s,g=>!g.skippedOn||!c[g.skippedOn])}function lVe(s,c=s){return{fileExists:g=>c.fileExists(g),readDirectory(g,d,h,_,S){return pe.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(g,d,h,_,S)},readFile:g=>c.readFile(g),directoryExists:$i(c,c.directoryExists),getDirectories:$i(c,c.getDirectories),realpath:$i(c,c.realpath),useCaseSensitiveFileNames:s.useCaseSensitiveFileNames(),getCurrentDirectory:()=>s.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:s.onUnRecoverableConfigFileDiagnostic||cm,trace:s.trace?g=>s.trace(g):void 0}}function xz(s){return Utt(s.path)}function Ctt(s,{extension:c},{isDeclarationFile:g}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||h();case".js":case".mjs":case".cjs":return h();case".json":return _();default:return S()}function d(){return s.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function h(){return TF(s)||!a_(s,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function _(){return NP(s)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function S(){return g||s.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function Crn({imports:s,moduleAugmentations:c}){let g=s.map(d=>d);for(let d of c)d.kind===11&&g.push(d);return g}function jEe({imports:s,moduleAugmentations:c},g){if(gc.add(ge)),d?.forEach(ge=>{switch(ge.kind){case 1:return c.add(V(re,ge.file&&re.getSourceFileByPath(ge.file),ge.fileProcessingReason,ge.diagnostic,ge.args||E));case 0:return c.add(W(re,ge));case 2:return ge.diagnostics.forEach(Ie=>c.add(Ie));default:pe.assertNever(ge)}}),S?.forEach(({file:ge,diagnostic:Ie,args:_e})=>c.add(V(re,ge,void 0,Ie,_e))),R=void 0,T=void 0,c)}};function W(re,{reason:ge}){let{file:Ie,pos:_e,end:Ee}=Lde(re,ge),Ne=Ie.libReferenceDirectives[ge.index],Te=qY(Ne),Ze=aa(Nm(Te,"lib."),".d.ts"),We=Dr(Ze,p9e,Fl);return qh(Ie,pe.checkDefined(_e),pe.checkDefined(Ee)-_e,We?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,Te,We)}function V(re,ge,Ie,_e,Ee){let Ne,Te,Ze,We,Ue,$e,Ye=ge&&g.get(ge.path),Tt=K3(Ie)?Ie:void 0,ot=ge&&R?.get(ge.path);ot?(ot.fileIncludeReasonDetails?(Ne=new Set(Ye),Ye?.forEach(_t)):Ye?.forEach(ht),Ue=ot.redirectInfo):(Ye?.forEach(ht),Ue=ge&&Ztt(ge,re.getCompilerOptionsForFile(ge))),Ie&&ht(Ie);let Qe=Ne?.size!==Ye?.length;Tt&&Ne?.size===1&&(Ne=void 0),Ne&&ot&&(ot.details&&!Qe?$e=wu(ot.details,_e,...Ee??E):ot.fileIncludeReasonDetails&&(Qe?Rt()?Te=Ft(ot.fileIncludeReasonDetails.next.slice(0,Ye.length),Te[0]):Te=[...ot.fileIncludeReasonDetails.next,Te[0]]:Rt()?Te=ot.fileIncludeReasonDetails.next.slice(0,Ye.length):We=ot.fileIncludeReasonDetails)),$e||(We||(We=Ne&&wu(Te,Z.The_file_is_in_the_program_because_Colon)),$e=wu(Ue?We?[We,...Ue]:Ue:We,_e,...Ee||E)),ge&&(ot?(!ot.fileIncludeReasonDetails||!Qe&&We)&&(ot.fileIncludeReasonDetails=We):(R??(R=new Map)).set(ge.path,ot={fileIncludeReasonDetails:We,redirectInfo:Ue}),!ot.details&&!Qe&&(ot.details=$e.next));let mt=Tt&&Lde(re,Tt);return mt&&Zie(mt)?ze(mt.file,mt.pos,mt.end-mt.pos,$e,Ze):vAe($e,Ze);function ht(Lt){Ne?.has(Lt)||((Ne??(Ne=new Set)).add(Lt),(Te??(Te=[])).push(Ptt(re,Lt)),_t(Lt))}function _t(Lt){!Tt&&K3(Lt)?Tt=Lt:Tt!==Lt&&(Ze=Ft(Ze,M(re,Lt)))}function Rt(){var Lt;return((Lt=ot.fileIncludeReasonDetails.next)==null?void 0:Lt.length)!==Ye?.length}}function M(re,ge){let Ie=T?.get(ge);return Ie===void 0&&(T??(T=new Map)).set(ge,Ie=ee(re,ge)??!1),Ie||void 0}function ee(re,ge){if(K3(ge)){let Ze=Lde(re,ge),We;switch(ge.kind){case 3:We=Z.File_is_included_via_import_here;break;case 4:We=Z.File_is_included_via_reference_here;break;case 5:We=Z.File_is_included_via_type_library_reference_here;break;case 7:We=Z.File_is_included_via_library_reference_here;break;default:pe.assertNever(ge)}return Zie(Ze)?qh(Ze.file,Ze.pos,Ze.end-Ze.pos,We):void 0}let Ie=re.getCurrentDirectory(),_e=re.getRootFileNames(),Ee=re.getCompilerOptions();if(!Ee.configFile)return;let Ne,Te;switch(ge.kind){case 0:if(!Ee.configFile.configFileSpecs)return;let Ze=Xc(_e[ge.index],Ie),We=Ltt(re,Ze);if(We){Ne=Wge(Ee.configFile,"files",We),Te=Z.File_is_matched_by_files_list_specified_here;break}let Ue=Vtt(re,Ze);if(!Ue||!Xs(Ue))return;Ne=Wge(Ee.configFile,"include",Ue),Te=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let $e=re.getResolvedProjectReferences(),Ye=re.getProjectReferences(),Tt=pe.checkDefined($e?.[ge.index]),ot=gz(Ye,$e,(Rt,Lt,Ke)=>Rt===Tt?{sourceFile:Lt?.sourceFile||Ee.configFile,index:Ke}:void 0);if(!ot)return;let{sourceFile:Qe,index:mt}=ot,ht=qre(Qe,"references",Rt=>OI(Rt.initializer)?Rt.initializer:void 0);return ht&&ht.elements.length>mt?_E(Qe,ht.elements[mt],ge.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Ee.types)return;Ne=Hbe(s(),"types",ge.typeReference),Te=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(ge.index!==void 0){Ne=Hbe(s(),"lib",Ee.lib[ge.index]),Te=Z.File_is_library_specified_here;break}let _t=RAe(Mg(Ee));Ne=_t?xLe(s(),"target",_t):void 0,Te=Z.File_is_default_library_for_target_specified_here;break;default:pe.assertNever(ge)}return Ne&&_E(Ee.configFile,Ne,Te)}}function k3t(s,c,g,d,h,_){let S=[],{emitSkipped:R,diagnostics:T}=s.emit(c,W,d,g,h,_);return{outputFiles:S,emitSkipped:R,diagnostics:T};function W(V,M,ee){S.push({name:V,writeByteOrderMark:ee,text:M})}}var x3t=(s=>(s[s.ComputedDts=0]="ComputedDts",s[s.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",s[s.UsedVersion=2]="UsedVersion",s))(x3t||{}),nR;(s=>{function c(){function ot(Qe,mt,ht){let _t={getKeys:Rt=>mt.get(Rt),getValues:Rt=>Qe.get(Rt),keys:()=>Qe.keys(),size:()=>Qe.size,deleteKey:Rt=>{(ht||(ht=new Set)).add(Rt);let Lt=Qe.get(Rt);return Lt?(Lt.forEach(Ke=>d(mt,Ke,Rt)),Qe.delete(Rt),!0):!1},set:(Rt,Lt)=>{ht?.delete(Rt);let Ke=Qe.get(Rt);return Qe.set(Rt,Lt),Ke?.forEach(Pt=>{Lt.has(Pt)||d(mt,Pt,Rt)}),Lt.forEach(Pt=>{Ke?.has(Pt)||g(mt,Pt,Rt)}),_t}};return _t}return ot(new Map,new Map,void 0)}s.createManyToManyPathMap=c;function g(ot,Qe,mt){let ht=ot.get(Qe);ht||(ht=new Set,ot.set(Qe,ht)),ht.add(mt)}function d(ot,Qe,mt){let ht=ot.get(Qe);return ht?.delete(mt)?(ht.size||ot.delete(Qe),!0):!1}function h(ot){return Xt(ot.declarations,Qe=>{var mt;return(mt=ms(Qe))==null?void 0:mt.resolvedPath})}function _(ot,Qe){let mt=ot.getSymbolAtLocation(Qe);return mt&&h(mt)}function S(ot,Qe,mt,ht){var _t;return Ou(((_t=ot.getRedirectFromSourceFile(Qe))==null?void 0:_t.outputDts)||Qe,mt,ht)}function R(ot,Qe,mt){let ht;if(Qe.imports&&Qe.imports.length>0){let Ke=ot.getTypeChecker();for(let Pt of Qe.imports){let _r=_(Ke,Pt);_r?.forEach(Lt)}}let _t=Mo(Qe.resolvedPath);if(Qe.referencedFiles&&Qe.referencedFiles.length>0)for(let Ke of Qe.referencedFiles){let Pt=S(ot,Ke.fileName,_t,mt);Lt(Pt)}if(ot.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:Ke})=>{if(!Ke)return;let Pt=Ke.resolvedFileName,_r=S(ot,Pt,_t,mt);Lt(_r)},Qe),Qe.moduleAugmentations.length){let Ke=ot.getTypeChecker();for(let Pt of Qe.moduleAugmentations){if(!Zg(Pt))continue;let _r=Ke.getSymbolAtLocation(Pt);_r&&Rt(_r)}}for(let Ke of ot.getTypeChecker().getAmbientModules())Ke.declarations&&Ke.declarations.length>1&&Rt(Ke);return ht;function Rt(Ke){if(Ke.declarations)for(let Pt of Ke.declarations){let _r=ms(Pt);_r&&_r!==Qe&&Lt(_r.resolvedPath)}}function Lt(Ke){(ht||(ht=new Set)).add(Ke)}}function T(ot,Qe){return Qe&&!Qe.referencedMap==!ot}s.canReuseOldState=T;function W(ot){return ot.module!==0&&!ot.outFile?c():void 0}s.createReferencedMap=W;function V(ot,Qe,mt){var ht,_t;let Rt=new Map,Lt=ot.getCompilerOptions(),Ke=W(Lt),Pt=T(Ke,Qe);ot.getTypeChecker();for(let _r of ot.getSourceFiles()){let Gt=pe.checkDefined(_r.version,"Program intended to be used with Builder should have source files with versions set"),nt=Pt?(ht=Qe.oldSignatures)==null?void 0:ht.get(_r.resolvedPath):void 0,Dt=nt===void 0?Pt?(_t=Qe.fileInfos.get(_r.resolvedPath))==null?void 0:_t.signature:void 0:nt||void 0;if(Ke){let tr=R(ot,_r,ot.getCanonicalFileName);tr&&Ke.set(_r.resolvedPath,tr)}Rt.set(_r.resolvedPath,{version:Gt,signature:Dt,affectsGlobalScope:Lt.outFile?void 0:Ue(_r)||void 0,impliedFormat:_r.impliedNodeFormat})}return{fileInfos:Rt,referencedMap:Ke,useFileVersionAsSignature:!mt&&!Pt}}s.create=V;function M(ot){ot.allFilesExcludingDefaultLibraryFile=void 0,ot.allFileNames=void 0}s.releaseCache=M;function ee(ot,Qe,mt,ht,_t){var Rt;let Lt=re(ot,Qe,mt,ht,_t);return(Rt=ot.oldSignatures)==null||Rt.clear(),Lt}s.getFilesAffectedBy=ee;function re(ot,Qe,mt,ht,_t){let Rt=Qe.getSourceFileByPath(mt);return Rt?_e(ot,Qe,Rt,ht,_t)?(ot.referencedMap?Tt:Ye)(ot,Qe,Rt,ht,_t):[Rt]:E}s.getFilesAffectedByWithOldState=re;function ge(ot,Qe,mt){ot.fileInfos.get(mt).signature=Qe,(ot.hasCalledUpdateShapeSignature||(ot.hasCalledUpdateShapeSignature=new Set)).add(mt)}s.updateSignatureOfFile=ge;function Ie(ot,Qe,mt,ht,_t){ot.emit(Qe,(Rt,Lt,Ke,Pt,_r,Gt)=>{pe.assert(PC(Rt),`File extension for signature expected to be dts: Got:: ${Rt}`),_t(btt(ot,Qe,Lt,ht,Gt),_r)},mt,2,void 0,!0)}s.computeDtsSignature=Ie;function _e(ot,Qe,mt,ht,_t,Rt=ot.useFileVersionAsSignature){var Lt;if((Lt=ot.hasCalledUpdateShapeSignature)!=null&&Lt.has(mt.resolvedPath))return!1;let Ke=ot.fileInfos.get(mt.resolvedPath),Pt=Ke.signature,_r;return!mt.isDeclarationFile&&!Rt&&Ie(Qe,mt,ht,_t,Gt=>{_r=Gt,_t.storeSignatureInfo&&(ot.signatureInfo??(ot.signatureInfo=new Map)).set(mt.resolvedPath,0)}),_r===void 0&&(_r=mt.version,_t.storeSignatureInfo&&(ot.signatureInfo??(ot.signatureInfo=new Map)).set(mt.resolvedPath,2)),(ot.oldSignatures||(ot.oldSignatures=new Map)).set(mt.resolvedPath,Pt||!1),(ot.hasCalledUpdateShapeSignature||(ot.hasCalledUpdateShapeSignature=new Set)).add(mt.resolvedPath),Ke.signature=_r,_r!==Pt}s.updateShapeSignature=_e;function Ee(ot,Qe,mt){if(Qe.getCompilerOptions().outFile||!ot.referencedMap||Ue(mt))return Ne(ot,Qe);let _t=new Set,Rt=[mt.resolvedPath];for(;Rt.length;){let Lt=Rt.pop();if(!_t.has(Lt)){_t.add(Lt);let Ke=ot.referencedMap.getValues(Lt);if(Ke)for(let Pt of Ke.keys())Rt.push(Pt)}}return Do(lr(_t.keys(),Lt=>{var Ke;return((Ke=Qe.getSourceFileByPath(Lt))==null?void 0:Ke.fileName)??Lt}))}s.getAllDependencies=Ee;function Ne(ot,Qe){if(!ot.allFileNames){let mt=Qe.getSourceFiles();ot.allFileNames=mt===E?E:mt.map(ht=>ht.fileName)}return ot.allFileNames}function Te(ot,Qe){let mt=ot.referencedMap.getKeys(Qe);return mt?Do(mt.keys()):[]}s.getReferencedByPaths=Te;function Ze(ot){for(let Qe of ot.statements)if(!RY(Qe))return!1;return!0}function We(ot){return jt(ot.moduleAugmentations,Qe=>vB(Qe.parent))}function Ue(ot){return We(ot)||!vl(ot)&&!Zu(ot)&&!Ze(ot)}function $e(ot,Qe,mt){if(ot.allFilesExcludingDefaultLibraryFile)return ot.allFilesExcludingDefaultLibraryFile;let ht;mt&&_t(mt);for(let Rt of Qe.getSourceFiles())Rt!==mt&&_t(Rt);return ot.allFilesExcludingDefaultLibraryFile=ht||E,ot.allFilesExcludingDefaultLibraryFile;function _t(Rt){Qe.isSourceFileDefaultLibrary(Rt)||(ht||(ht=[])).push(Rt)}}s.getAllFilesExcludingDefaultLibraryFile=$e;function Ye(ot,Qe,mt){let ht=Qe.getCompilerOptions();return ht&&ht.outFile?[mt]:$e(ot,Qe,mt)}function Tt(ot,Qe,mt,ht,_t){if(Ue(mt))return $e(ot,Qe,mt);let Rt=Qe.getCompilerOptions();if(Rt&&(sS(Rt)||Rt.outFile))return[mt];let Lt=new Map;Lt.set(mt.resolvedPath,mt);let Ke=Te(ot,mt.resolvedPath);for(;Ke.length>0;){let Pt=Ke.pop();if(!Lt.has(Pt)){let _r=Qe.getSourceFileByPath(Pt);Lt.set(Pt,_r),_r&&_e(ot,Qe,_r,ht,_t)&&Ke.push(...Te(ot,_r.resolvedPath))}}return Do(lr(Lt.values(),Pt=>Pt))}})(nR||(nR={}));var G3t=(s=>(s[s.None=0]="None",s[s.Js=1]="Js",s[s.JsMap=2]="JsMap",s[s.JsInlineMap=4]="JsInlineMap",s[s.DtsErrors=8]="DtsErrors",s[s.DtsEmit=16]="DtsEmit",s[s.DtsMap=32]="DtsMap",s[s.Dts=24]="Dts",s[s.AllJs=7]="AllJs",s[s.AllDtsEmit=48]="AllDtsEmit",s[s.AllDts=56]="AllDts",s[s.All=63]="All",s))(G3t||{});function Lie(s){return s.program!==void 0}function yws(s){return pe.assert(Lie(s)),s}function HP(s){let c=1;return s.sourceMap&&(c=c|2),s.inlineSourceMap&&(c=c|4),Ly(s)&&(c=c|24),s.declarationMap&&(c=c|32),s.emitDeclarationOnly&&(c=c&56),c}function uVe(s,c){let g=c&&(ws(c)?c:HP(c)),d=ws(s)?s:HP(s);if(g===d)return 0;if(!g||!d)return d;let h=g^d,_=0;return h&7&&(_=d&7),h&8&&(_=_|d&8),h&48&&(_=_|d&48),_}function bws(s,c){return s===c||s!==void 0&&c!==void 0&&s.size===c.size&&!SB(s,g=>!c.has(g))}function Ews(s,c){var g,d;let h=nR.create(s,c,!1);h.program=s;let _=s.getCompilerOptions();h.compilerOptions=_;let S=_.outFile;h.semanticDiagnosticsPerFile=new Map,S&&_.composite&&c?.outSignature&&S===c.compilerOptions.outFile&&(h.outSignature=c.outSignature&&_rn(_,c.compilerOptions,c.outSignature)),h.changedFilesSet=new Set,h.latestChangedDtsFile=_.composite?c?.latestChangedDtsFile:void 0,h.checkPending=h.compilerOptions.noCheck?!0:void 0;let R=nR.canReuseOldState(h.referencedMap,c),T=R?c.compilerOptions:void 0,W=R&&!Cbe(_,T),V=_.composite&&c?.emitSignatures&&!S&&!cLe(_,c.compilerOptions),M=!0;R?((g=c.changedFilesSet)==null||g.forEach(Ee=>h.changedFilesSet.add(Ee)),!S&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(h.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),h.seenAffectedFiles=new Set),h.programEmitPending=c.programEmitPending,S&&h.changedFilesSet.size&&(W=!1,M=!1),h.hasErrorsFromOldState=c.hasErrors):h.buildInfoEmitPending=DP(_);let ee=h.referencedMap,re=R?c.referencedMap:void 0,ge=W&&!_.skipLibCheck==!T.skipLibCheck,Ie=ge&&!_.skipDefaultLibCheck==!T.skipDefaultLibCheck;if(h.fileInfos.forEach((Ee,Ne)=>{var Te;let Ze,We;if(!R||!(Ze=c.fileInfos.get(Ne))||Ze.version!==Ee.version||Ze.impliedFormat!==Ee.impliedFormat||!bws(We=ee&&ee.getValues(Ne),re&&re.getValues(Ne))||We&&SB(We,Ue=>!h.fileInfos.has(Ue)&&c.fileInfos.has(Ue)))_e(Ne);else{let Ue=s.getSourceFileByPath(Ne),$e=M?(Te=c.emitDiagnosticsPerFile)==null?void 0:Te.get(Ne):void 0;if($e&&(h.emitDiagnosticsPerFile??(h.emitDiagnosticsPerFile=new Map)).set(Ne,c.hasReusableDiagnostic?brn($e,Ne,s):yrn($e,s)),W){if(Ue.isDeclarationFile&&!ge||Ue.hasNoDefaultLib&&!Ie)return;let Ye=c.semanticDiagnosticsPerFile.get(Ne);Ye&&(h.semanticDiagnosticsPerFile.set(Ne,c.hasReusableDiagnostic?brn(Ye,Ne,s):yrn(Ye,s)),(h.semanticDiagnosticsFromOldState??(h.semanticDiagnosticsFromOldState=new Set)).add(Ne))}}if(V){let Ue=c.emitSignatures.get(Ne);Ue&&(h.emitSignatures??(h.emitSignatures=new Map)).set(Ne,_rn(_,c.compilerOptions,Ue))}}),R&&Dh(c.fileInfos,(Ee,Ne)=>h.fileInfos.has(Ne)?!1:Ee.affectsGlobalScope?!0:(h.buildInfoEmitPending=!0,!!S)))nR.getAllFilesExcludingDefaultLibraryFile(h,s,void 0).forEach(Ee=>_e(Ee.resolvedPath));else if(T){let Ee=aLe(_,T)?HP(_):uVe(_,T);Ee!==0&&(S?h.changedFilesSet.size||(h.programEmitPending=h.programEmitPending?h.programEmitPending|Ee:Ee):(s.getSourceFiles().forEach(Ne=>{h.changedFilesSet.has(Ne.resolvedPath)||Stt(h,Ne.resolvedPath,Ee)}),pe.assert(!h.seenAffectedFiles||!h.seenAffectedFiles.size),h.seenAffectedFiles=h.seenAffectedFiles||new Set),h.buildInfoEmitPending=!0)}return R&&h.semanticDiagnosticsPerFile.size!==h.fileInfos.size&&c.checkPending!==h.checkPending&&(h.buildInfoEmitPending=!0),h;function _e(Ee){h.changedFilesSet.add(Ee),S&&(W=!1,M=!1,h.semanticDiagnosticsFromOldState=void 0,h.semanticDiagnosticsPerFile.clear(),h.emitDiagnosticsPerFile=void 0),h.buildInfoEmitPending=!0,h.programEmitPending=void 0}}function _rn(s,c,g){return!!s.declarationMap==!!c.declarationMap?g:Xs(g)?[g]:g[0]}function yrn(s,c){return s.length?Tr(s,g=>{if(Xs(g.messageText))return g;let d=F3t(g.messageText,g.file,c,h=>{var _;return(_=h.repopulateInfo)==null?void 0:_.call(h)});return d===g.messageText?g:{...g,messageText:d}}):s}function F3t(s,c,g,d){let h=d(s);if(h===!0)return{...l7(c),next:Z3t(s.next,c,g,d)};if(h)return{...kJ(c,g,h.moduleReference,h.mode,h.packageName||h.moduleReference),next:Z3t(s.next,c,g,d)};let _=Z3t(s.next,c,g,d);return _===s.next?s:{...s,next:_}}function Z3t(s,c,g,d){return Tr(s,h=>F3t(h,c,g,d))}function brn(s,c,g){if(!s.length)return E;let d;return s.map(_=>{let S=Ern(_,c,g,h);S.reportsUnnecessary=_.reportsUnnecessary,S.reportsDeprecated=_.reportDeprecated,S.source=_.source,S.skippedOn=_.skippedOn;let{relatedInformation:R}=_;return S.relatedInformation=R?R.length?R.map(T=>Ern(T,c,g,h)):[]:void 0,S});function h(_){return d??(d=Mo(Xc(U3(g.getCompilerOptions()),g.getCurrentDirectory()))),Ou(_,d,g.getCanonicalFileName)}}function Ern(s,c,g,d){let{file:h}=s,_=h!==!1?g.getSourceFileByPath(h?d(h):c):void 0;return{...s,file:_,messageText:Xs(s.messageText)?s.messageText:F3t(s.messageText,_,g,S=>S.info)}}function Sws(s){nR.releaseCache(s),s.program=void 0}function L3t(s,c){pe.assert(!c||!s.affectedFiles||s.affectedFiles[s.affectedFilesIndex-1]!==c||!s.semanticDiagnosticsPerFile.has(c.resolvedPath))}function Srn(s,c,g){for(var d;;){let{affectedFiles:h}=s;if(h){let R=s.seenAffectedFiles,T=s.affectedFilesIndex;for(;T{let R=g?_&55:_&7;R?s.affectedFilesPendingEmit.set(S,R):s.affectedFilesPendingEmit.delete(S)}),s.programEmitPending)){let _=g?s.programEmitPending&55:s.programEmitPending&7;_?s.programEmitPending=_:s.programEmitPending=void 0}}function gVe(s,c,g,d){let h=uVe(s,c);return g&&(h=h&56),d&&(h=h&8),h}function _tt(s){return s?8:56}function vws(s,c,g){var d;if((d=s.affectedFilesPendingEmit)!=null&&d.size)return Dh(s.affectedFilesPendingEmit,(h,_)=>{var S;let R=s.program.getSourceFileByPath(_);if(!R||!SP(R,s.program)){s.affectedFilesPendingEmit.delete(_);return}let T=(S=s.seenEmittedFiles)==null?void 0:S.get(R.resolvedPath),W=gVe(h,T,c,g);if(W)return{affectedFile:R,emitKind:W}})}function Bws(s,c){var g;if((g=s.emitDiagnosticsPerFile)!=null&&g.size)return Dh(s.emitDiagnosticsPerFile,(d,h)=>{var _;let S=s.program.getSourceFileByPath(h);if(!S||!SP(S,s.program)){s.emitDiagnosticsPerFile.delete(h);return}let R=((_=s.seenEmittedFiles)==null?void 0:_.get(S.resolvedPath))||0;if(!(R&_tt(c)))return{affectedFile:S,diagnostics:d,seenKind:R}})}function Brn(s){if(!s.cleanedDiagnosticsOfLibFiles){s.cleanedDiagnosticsOfLibFiles=!0;let c=s.program.getCompilerOptions();F(s.program.getSourceFiles(),g=>s.program.isSourceFileDefaultLibrary(g)&&!_Le(g,c,s.program)&&P3t(s,g.resolvedPath))}}function wws(s,c,g,d){if(P3t(s,c.resolvedPath),s.allFilesExcludingDefaultLibraryFile===s.affectedFiles){Brn(s),nR.updateShapeSignature(s,s.program,c,g,d);return}s.compilerOptions.assumeChangesOnlyAffectDirectDependencies||Tws(s,c,g,d)}function V3t(s,c,g,d,h){if(P3t(s,c),!s.changedFilesSet.has(c)){let _=s.program.getSourceFileByPath(c);_&&(nR.updateShapeSignature(s,s.program,_,d,h,!0),g?Stt(s,c,HP(s.compilerOptions)):Ly(s.compilerOptions)&&Stt(s,c,s.compilerOptions.declarationMap?56:24))}}function P3t(s,c){return s.semanticDiagnosticsFromOldState?(s.semanticDiagnosticsFromOldState.delete(c),s.semanticDiagnosticsPerFile.delete(c),!s.semanticDiagnosticsFromOldState.size):!0}function wrn(s,c){let g=pe.checkDefined(s.oldSignatures).get(c)||void 0;return pe.checkDefined(s.fileInfos.get(c)).signature!==g}function W3t(s,c,g,d,h){var _;return(_=s.fileInfos.get(c))!=null&&_.affectsGlobalScope?(nR.getAllFilesExcludingDefaultLibraryFile(s,s.program,void 0).forEach(S=>V3t(s,S.resolvedPath,g,d,h)),Brn(s),!0):!1}function Tws(s,c,g,d){var h,_;if(!s.referencedMap||!s.changedFilesSet.has(c.resolvedPath)||!wrn(s,c.resolvedPath))return;if(sS(s.compilerOptions)){let T=new Map;T.set(c.resolvedPath,!0);let W=nR.getReferencedByPaths(s,c.resolvedPath);for(;W.length>0;){let V=W.pop();if(!T.has(V)){if(T.set(V,!0),W3t(s,V,!1,g,d))return;if(V3t(s,V,!1,g,d),wrn(s,V)){let M=s.program.getSourceFileByPath(V);W.push(...nR.getReferencedByPaths(s,M.resolvedPath))}}}}let S=new Set,R=!!((h=c.symbol)!=null&&h.exports)&&!!Dh(c.symbol.exports,T=>{if(T.flags&128)return!0;let W=FC(T,s.program.getTypeChecker());return W===T?!1:(W.flags&128)!==0&&jt(W.declarations,V=>ms(V)===c)});(_=s.referencedMap.getKeys(c.resolvedPath))==null||_.forEach(T=>{if(W3t(s,T,R,g,d))return!0;let W=s.referencedMap.getKeys(T);return W&&SB(W,V=>Trn(s,V,R,S,g,d))})}function Trn(s,c,g,d,h,_){var S;if(Ar(d,c)){if(W3t(s,c,g,h,_))return!0;V3t(s,c,g,h,_),(S=s.referencedMap.getKeys(c))==null||S.forEach(R=>Trn(s,R,g,d,h,_))}}function ytt(s,c,g,d){return s.compilerOptions.noCheck?E:Nn(Rws(s,c,g,d),s.program.getProgramDiagnostics(c))}function Rws(s,c,g,d){d??(d=s.semanticDiagnosticsPerFile);let h=c.resolvedPath,_=d.get(h);if(_)return cVe(_,s.compilerOptions);let S=s.program.getBindAndCheckDiagnostics(c,g);return d.set(h,S),s.buildInfoEmitPending=!0,cVe(S,s.compilerOptions)}function O3t(s){var c;return!!((c=s.options)!=null&&c.outFile)}function zEe(s){return!!s.fileNames}function Nws(s){return!zEe(s)&&!!s.root}function Rrn(s){s.hasErrors===void 0&&(DP(s.compilerOptions)?s.hasErrors=!jt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return h===void 0||!!h.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})&&(Nrn(s)||jt(s.program.getSourceFiles(),c=>!!s.program.getProgramDiagnostics(c).length)):s.hasErrors=jt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return!!h?.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})||Nrn(s))}function Nrn(s){return!!s.program.getConfigFileParsingDiagnostics().length||!!s.program.getSyntacticDiagnostics().length||!!s.program.getOptionsDiagnostics().length||!!s.program.getGlobalDiagnostics().length}function Drn(s){return Rrn(s),s.buildInfoEmitPending??(s.buildInfoEmitPending=!!s.hasErrorsFromOldState!=!!s.hasErrors)}function Dws(s){var c,g;let d=s.program.getCurrentDirectory(),h=Mo(Xc(U3(s.compilerOptions),d)),_=s.latestChangedDtsFile?Ne(s.latestChangedDtsFile):void 0,S=[],R=new Map,T=new Set(s.program.getRootFileNames().map(Ke=>Ou(Ke,d,s.program.getCanonicalFileName)));if(Rrn(s),!DP(s.compilerOptions))return{root:Do(T,Pt=>Te(Pt)),errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};let W=[];if(s.compilerOptions.outFile){let Ke=Do(s.fileInfos.entries(),([_r,Gt])=>{let nt=Ze(_r);return Ue(_r,nt),Gt.impliedFormat?{version:Gt.version,impliedFormat:Gt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Gt.version});return{fileNames:S,fileInfos:Ke,root:W,resolvedRoot:$e(),options:Ye(s.compilerOptions),semanticDiagnosticsPerFile:s.changedFilesSet.size?void 0:ot(),emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),outSignature:s.outSignature,latestChangedDtsFile:_,pendingEmit:s.programEmitPending?s.programEmitPending===HP(s.compilerOptions)?!1:s.programEmitPending:void 0,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C}}let V,M,ee,re=Do(s.fileInfos.entries(),([Ke,Pt])=>{var _r,Gt;let nt=Ze(Ke);Ue(Ke,nt),pe.assert(S[nt-1]===Te(Ke));let Dt=(_r=s.oldSignatures)==null?void 0:_r.get(Ke),tr=Dt!==void 0?Dt||void 0:Pt.signature;if(s.compilerOptions.composite){let ur=s.program.getSourceFileByPath(Ke);if(!Zu(ur)&&SP(ur,s.program)){let Gr=(Gt=s.emitSignatures)==null?void 0:Gt.get(Ke);Gr!==tr&&(ee=Ft(ee,Gr===void 0?nt:[nt,!Xs(Gr)&&Gr[0]===tr?E:Gr]))}}return Pt.version===tr?Pt.affectsGlobalScope||Pt.impliedFormat?{version:Pt.version,signature:void 0,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}:Pt.version:tr!==void 0?Dt===void 0?Pt:{version:Pt.version,signature:tr,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}:{version:Pt.version,signature:!1,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}}),ge;(c=s.referencedMap)!=null&&c.size()&&(ge=Do(s.referencedMap.keys()).sort(Ca).map(Ke=>[Ze(Ke),We(s.referencedMap.getValues(Ke))]));let Ie=ot(),_e;if((g=s.affectedFilesPendingEmit)!=null&&g.size){let Ke=HP(s.compilerOptions),Pt=new Set;for(let _r of Do(s.affectedFilesPendingEmit.keys()).sort(Ca))if(Ar(Pt,_r)){let Gt=s.program.getSourceFileByPath(_r);if(!Gt||!SP(Gt,s.program))continue;let nt=Ze(_r),Dt=s.affectedFilesPendingEmit.get(_r);_e=Ft(_e,Dt===Ke?nt:Dt===24?[nt]:[nt,Dt])}}return{fileNames:S,fileIdsList:V,fileInfos:re,root:W,resolvedRoot:$e(),options:Ye(s.compilerOptions),referencedMap:ge,semanticDiagnosticsPerFile:Ie,emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),affectedFilesPendingEmit:_e,emitSignatures:ee,latestChangedDtsFile:_,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};function Ne(Ke){return Te(Xc(Ke,d))}function Te(Ke){return Am(mp(h,Ke,s.program.getCanonicalFileName))}function Ze(Ke){let Pt=R.get(Ke);return Pt===void 0&&(S.push(Te(Ke)),R.set(Ke,Pt=S.length)),Pt}function We(Ke){let Pt=Do(Ke.keys(),Ze).sort(Zt),_r=Pt.join(),Gt=M?.get(_r);return Gt===void 0&&(V=Ft(V,Pt),(M??(M=new Map)).set(_r,Gt=V.length)),Gt}function Ue(Ke,Pt){let _r=s.program.getSourceFile(Ke);if(!s.program.getFileIncludeReasons().get(_r.path).some(tr=>tr.kind===0))return;if(!W.length)return W.push(Pt);let Gt=W[W.length-1],nt=Ki(Gt);if(nt&&Gt[1]===Pt-1)return Gt[1]=Pt;if(nt||W.length===1||Gt!==Pt-1)return W.push(Pt);let Dt=W[W.length-2];return!ws(Dt)||Dt!==Gt-1?W.push(Pt):(W[W.length-2]=[Dt,Pt],W.length=W.length-1)}function $e(){let Ke;return T.forEach(Pt=>{let _r=s.program.getSourceFileByPath(Pt);_r&&Pt!==_r.resolvedPath&&(Ke=Ft(Ke,[Ze(_r.resolvedPath),Ze(Pt)]))}),Ke}function Ye(Ke){let Pt,{optionsNameMap:_r}=Bie();for(let Gt of _g(Ke).sort(Ca)){let nt=_r.get(Gt.toLowerCase());nt?.affectsBuildInfo&&((Pt||(Pt={}))[Gt]=Tt(nt,Ke[Gt]))}return Pt}function Tt(Ke,Pt){if(Ke){if(pe.assert(Ke.type!=="listOrElement"),Ke.type==="list"){let _r=Pt;if(Ke.element.isFilePath&&_r.length)return _r.map(Ne)}else if(Ke.isFilePath)return Ne(Pt)}return Pt}function ot(){let Ke;return s.fileInfos.forEach((Pt,_r)=>{let Gt=s.semanticDiagnosticsPerFile.get(_r);Gt?Gt.length&&(Ke=Ft(Ke,[Ze(_r),mt(Gt,_r)])):s.changedFilesSet.has(_r)||(Ke=Ft(Ke,Ze(_r)))}),Ke}function Qe(){var Ke;let Pt;if(!((Ke=s.emitDiagnosticsPerFile)!=null&&Ke.size))return Pt;for(let _r of Do(s.emitDiagnosticsPerFile.keys()).sort(Ca)){let Gt=s.emitDiagnosticsPerFile.get(_r);Pt=Ft(Pt,[Ze(_r),mt(Gt,_r)])}return Pt}function mt(Ke,Pt){return pe.assert(!!Ke.length),Ke.map(_r=>{let Gt=ht(_r,Pt);Gt.reportsUnnecessary=_r.reportsUnnecessary,Gt.reportDeprecated=_r.reportsDeprecated,Gt.source=_r.source,Gt.skippedOn=_r.skippedOn;let{relatedInformation:nt}=_r;return Gt.relatedInformation=nt?nt.length?nt.map(Dt=>ht(Dt,Pt)):[]:void 0,Gt})}function ht(Ke,Pt){let{file:_r}=Ke;return{...Ke,file:_r?_r.resolvedPath===Pt?void 0:Te(_r.resolvedPath):!1,messageText:Xs(Ke.messageText)?Ke.messageText:_t(Ke.messageText)}}function _t(Ke){if(Ke.repopulateInfo)return{info:Ke.repopulateInfo(),next:Rt(Ke.next)};let Pt=Rt(Ke.next);return Pt===Ke.next?Ke:{...Ke,next:Pt}}function Rt(Ke){return Ke&&(F(Ke,(Pt,_r)=>{let Gt=_t(Pt);if(Pt===Gt)return;let nt=_r>0?Ke.slice(0,_r-1):[];nt.push(Gt);for(let Dt=_r+1;Dt(s[s.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",s[s.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",s))(M3t||{});function AVe(s,c,g,d,h,_){let S,R,T;return s===void 0?(pe.assert(c===void 0),S=g,T=d,pe.assert(!!T),R=T.getProgram()):Ki(s)?(T=d,R=KEe({rootNames:s,options:c,host:g,oldProgram:T&&T.getProgramOrUndefined(),configFileParsingDiagnostics:h,projectReferences:_}),S=g):(R=s,S=c,T=g,h=d),{host:S,newProgram:R,oldProgram:T,configFileParsingDiagnostics:h||E}}function krn(s,c){return c?.sourceMapUrlPos!==void 0?s.substring(0,c.sourceMapUrlPos):s}function btt(s,c,g,d,h){var _;g=krn(g,h);let S;return(_=h?.diagnostics)!=null&&_.length&&(g+=h.diagnostics.map(W=>`${T(W)}${KS[W.category]}${W.code}: ${R(W.messageText)}`).join(` `)),(d.createHash??ry)(g);function R(W){return Xs(W)?W:W===void 0?"":W.next?W.messageText+W.next.map(R).join(` -`):W.messageText}function T(W){return W.file.resolvedPath===c.resolvedPath?`(${W.start},${W.length})`:(S===void 0&&(S=Mo(c.resolvedPath)),`${Am(mp(S,W.file.resolvedPath,s.getCanonicalFileName))}(${W.start},${W.length})`)}}function Iws(s,c,g){return(c.createHash??ry)(vrn(s,g))}function ytt(s,{newProgram:c,host:g,oldProgram:d,configFileParsingDiagnostics:h}){let _=d&&d.state;if(_&&c===_.program&&h===c.getConfigFileParsingDiagnostics())return c=void 0,_=void 0,d;let S=aws(c,_);c.getBuildInfo=()=>fws(sws(S)),c=void 0,d=void 0,_=void 0;let R=Stt(S,h);return R.state=S,R.hasChangedEmitSignature=()=>!!S.hasChangedEmitSignature,R.getAllDependencies=Ne=>nR.getAllDependencies(S,pe.checkDefined(S.program),Ne),R.getSemanticDiagnostics=Ee,R.getDeclarationDiagnostics=Ie,R.emit=re,R.releaseProgram=()=>cws(S),s===0?R.getSemanticDiagnosticsOfNextAffectedFile=_e:s===1?(R.getSemanticDiagnosticsOfNextAffectedFile=_e,R.emitNextAffectedFile=M,R.emitBuildInfo=T):il(),R;function T(Ne,Te){if(pe.assert(Zie(S)),Srn(S)){let Ze=S.program.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,Ze}return ftt}function W(Ne,Te,Ze,We,Ue){var $e,Ye,Tt,ot;pe.assert(Zie(S));let Qe=hrn(S,Te,g),mt=HP(S.compilerOptions),ht=Ue?8:Ze?mt&56:mt;if(!Qe){if(S.compilerOptions.outFile){if(S.programEmitPending&&(ht=lVe(S.programEmitPending,S.seenProgramEmit,Ze,Ue),ht&&(Qe=S.program)),!Qe&&(($e=S.emitDiagnosticsPerFile)!=null&&$e.size)){let Lt=S.seenProgramEmit||0;if(!(Lt&mtt(Ue))){S.seenProgramEmit=mtt(Ue)|Lt;let Ke=[];return S.emitDiagnosticsPerFile.forEach(Pt=>Or(Ke,Pt)),{result:{emitSkipped:!0,diagnostics:Ke},affected:S.program}}}}else{let Lt=lws(S,Ze,Ue);if(Lt)({affectedFile:Qe,emitKind:ht}=Lt);else{let Ke=uws(S,Ue);if(Ke)return(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Ke.affectedFile.resolvedPath,Ke.seenKind|mtt(Ue)),{result:{emitSkipped:!0,diagnostics:Ke.diagnostics},affected:Ke.affectedFile}}}if(!Qe){if(Ue||!Srn(S))return;let Lt=S.program,Ke=Lt.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,{result:Ke,affected:Lt}}}let _t;ht&7&&(_t=0),ht&56&&(_t=_t===void 0?1:void 0);let Rt=Ue?{emitSkipped:!0,diagnostics:S.program.getDeclarationDiagnostics(Qe===S.program?void 0:Qe,Te)}:S.program.emit(Qe===S.program?void 0:Qe,ee(Ne,We),Te,_t,We,void 0,!0);if(Qe!==S.program){let Lt=Qe;S.seenAffectedFiles.add(Lt.resolvedPath),S.affectedFilesIndex!==void 0&&S.affectedFilesIndex++,S.buildInfoEmitPending=!0;let Ke=((Ye=S.seenEmittedFiles)==null?void 0:Ye.get(Lt.resolvedPath))||0;(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Lt.resolvedPath,ht|Ke);let Pt=((Tt=S.affectedFilesPendingEmit)==null?void 0:Tt.get(Lt.resolvedPath))||mt,_r=cVe(Pt,ht|Ke);_r?(S.affectedFilesPendingEmit??(S.affectedFilesPendingEmit=new Map)).set(Lt.resolvedPath,_r):(ot=S.affectedFilesPendingEmit)==null||ot.delete(Lt.resolvedPath),Rt.diagnostics.length&&(S.emitDiagnosticsPerFile??(S.emitDiagnosticsPerFile=new Map)).set(Lt.resolvedPath,Rt.diagnostics)}else S.changedFilesSet.clear(),S.programEmitPending=S.changedFilesSet.size?cVe(mt,ht):S.programEmitPending?cVe(S.programEmitPending,ht):void 0,S.seenProgramEmit=ht|(S.seenProgramEmit||0),V(Rt.diagnostics),S.buildInfoEmitPending=!0;return{result:Rt,affected:Qe}}function V(Ne){let Te;Ne.forEach(Ze=>{if(!Ze.file)return;let We=Te?.get(Ze.file.resolvedPath);We||(Te??(Te=new Map)).set(Ze.file.resolvedPath,We=[]),We.push(Ze)}),Te&&(S.emitDiagnosticsPerFile=Te)}function M(Ne,Te,Ze,We){return W(Ne,Te,Ze,We,!1)}function ee(Ne,Te){return pe.assert(Zie(S)),Ly(S.compilerOptions)?(Ze,We,Ue,$e,Ye,Tt)=>{var ot,Qe,mt;if(PC(Ze))if(S.compilerOptions.outFile){if(S.compilerOptions.composite){let _t=ht(S.outSignature,void 0);if(!_t)return Tt.skippedDtsWrite=!0;S.outSignature=_t}}else{pe.assert(Ye?.length===1);let _t;if(!Te){let Rt=Ye[0],Lt=S.fileInfos.get(Rt.resolvedPath);if(Lt.signature===Rt.version){let Ke=_tt(S.program,Rt,We,g,Tt);(ot=Tt?.diagnostics)!=null&&ot.length||(_t=Ke),Ke!==Rt.version&&(g.storeSignatureInfo&&(S.signatureInfo??(S.signatureInfo=new Map)).set(Rt.resolvedPath,1),S.affectedFiles&&((Qe=S.oldSignatures)==null?void 0:Qe.get(Rt.resolvedPath))===void 0&&(S.oldSignatures??(S.oldSignatures=new Map)).set(Rt.resolvedPath,Lt.signature||!1),Lt.signature=Ke)}}if(S.compilerOptions.composite){let Rt=Ye[0].resolvedPath;if(_t=ht((mt=S.emitSignatures)==null?void 0:mt.get(Rt),_t),!_t)return Tt.skippedDtsWrite=!0;(S.emitSignatures??(S.emitSignatures=new Map)).set(Rt,_t)}}Ne?Ne(Ze,We,Ue,$e,Ye,Tt):g.writeFile?g.writeFile(Ze,We,Ue,$e,Ye,Tt):S.program.writeFile(Ze,We,Ue,$e,Ye,Tt);function ht(_t,Rt){let Lt=!_t||Xs(_t)?_t:_t[0];if(Rt??(Rt=Iws(We,g,Tt)),Rt===Lt){if(_t===Lt)return;Tt?Tt.differsOnlyInMap=!0:Tt={differsOnlyInMap:!0}}else S.hasChangedEmitSignature=!0,S.latestChangedDtsFile=Ze;return Rt}}:Ne||$i(g,g.writeFile)}function re(Ne,Te,Ze,We,Ue){pe.assert(Zie(S)),s===1&&x3t(S,Ne);let $e=Itt(R,Ne,Te,Ze);if($e)return $e;if(!Ne)if(s===1){let Tt=[],ot=!1,Qe,mt=[],ht;for(;ht=M(Te,Ze,We,Ue);)ot=ot||ht.result.emitSkipped,Qe=Or(Qe,ht.result.diagnostics),mt=Or(mt,ht.result.emittedFiles),Tt=Or(Tt,ht.result.sourceMaps);return{emitSkipped:ot,diagnostics:Qe||E,emittedFiles:mt,sourceMaps:Tt}}else mrn(S,We,!1);let Ye=S.program.emit(Ne,ee(Te,Ue),Ze,We,Ue);return ge(Ne,We,!1,Ye.diagnostics),Ye}function ge(Ne,Te,Ze,We){!Ne&&s!==1&&(mrn(S,Te,Ze),V(We))}function Ie(Ne,Te){var Ze;if(pe.assert(Zie(S)),s===1){x3t(S,Ne);let We,Ue;for(;We=W(void 0,Te,void 0,void 0,!0);)Ne||(Ue=Or(Ue,We.result.diagnostics));return(Ne?(Ze=S.emitDiagnosticsPerFile)==null?void 0:Ze.get(Ne.resolvedPath):Ue)||E}else{let We=S.program.getDeclarationDiagnostics(Ne,Te);return ge(Ne,void 0,!0,We),We}}function _e(Ne,Te){for(pe.assert(Zie(S));;){let Ze=hrn(S,Ne,g),We;if(Ze)if(Ze!==S.program){let Ue=Ze;if((!Te||!Te(Ue))&&(We=Ctt(S,Ue,Ne)),S.seenAffectedFiles.add(Ue.resolvedPath),S.affectedFilesIndex++,S.buildInfoEmitPending=!0,!We)continue}else{let Ue,$e=new Map;S.program.getSourceFiles().forEach(Ye=>Ue=Or(Ue,Ctt(S,Ye,Ne,$e))),S.semanticDiagnosticsPerFile=$e,We=Ue||E,S.changedFilesSet.clear(),S.programEmitPending=HP(S.compilerOptions),S.compilerOptions.noCheck||(S.checkPending=void 0),S.buildInfoEmitPending=!0}else{S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0);return}return{result:We,affected:Ze}}}function Ee(Ne,Te){if(pe.assert(Zie(S)),x3t(S,Ne),Ne)return Ctt(S,Ne,Te);for(;;){let We=_e(Te);if(!We)break;if(We.affected===S.program)return We.result}let Ze;for(let We of S.program.getSourceFiles())Ze=Or(Ze,Ctt(S,We,Te));return S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0),Ze||E}}function btt(s,c,g){var d,h;let _=((d=s.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(s.affectedFilesPendingEmit??(s.affectedFilesPendingEmit=new Map)).set(c,_|g),(h=s.emitDiagnosticsPerFile)==null||h.delete(c)}function P3t(s){return Xs(s)?{version:s,signature:s,affectsGlobalScope:void 0,impliedFormat:void 0}:Xs(s.signature)?s:{version:s.version,signature:s.signature===!1?void 0:s.version,affectsGlobalScope:s.affectsGlobalScope,impliedFormat:s.impliedFormat}}function W3t(s,c){return ws(s)?c:s[1]||24}function O3t(s,c){return s||HP(c||{})}function M3t(s,c,g){var d,h,_,S;let R=Mo(Xc(c,g.getCurrentDirectory())),T=_d(g.useCaseSensitiveFileNames()),W,V=(d=s.fileNames)==null?void 0:d.map(Ie),M,ee=s.latestChangedDtsFile?_e(s.latestChangedDtsFile):void 0,re=new Map,ge=new Set(At(s.changeFileSet,Ee));if(L3t(s))s.fileInfos.forEach((Ue,$e)=>{let Ye=Ee($e+1);re.set(Ye,Xs(Ue)?{version:Ue,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:Ue)}),W={fileInfos:re,compilerOptions:s.options?y9e(s.options,_e):{},semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:We(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,latestChangedDtsFile:ee,outSignature:s.outSignature,programEmitPending:s.pendingEmit===void 0?void 0:O3t(s.pendingEmit,s.options),hasErrors:s.errors,checkPending:s.checkPending};else{M=(h=s.fileIdsList)==null?void 0:h.map(Ye=>new Set(Ye.map(Ee)));let Ue=(_=s.options)!=null&&_.composite&&!s.options.outFile?new Map:void 0;s.fileInfos.forEach((Ye,Tt)=>{let ot=Ee(Tt+1),Qe=P3t(Ye);re.set(ot,Qe),Ue&&Qe.signature&&Ue.set(ot,Qe.signature)}),(S=s.emitSignatures)==null||S.forEach(Ye=>{if(ws(Ye))Ue.delete(Ee(Ye));else{let Tt=Ee(Ye[0]);Ue.set(Tt,!Xs(Ye[1])&&!Ye[1].length?[Ue.get(Tt)]:Ye[1])}});let $e=s.affectedFilesPendingEmit?HP(s.options||{}):void 0;W={fileInfos:re,compilerOptions:s.options?y9e(s.options,_e):{},referencedMap:Te(s.referencedMap,s.options??{}),semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:We(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,affectedFilesPendingEmit:s.affectedFilesPendingEmit&&Ru(s.affectedFilesPendingEmit,Ye=>Ee(ws(Ye)?Ye:Ye[0]),Ye=>W3t(Ye,$e)),latestChangedDtsFile:ee,emitSignatures:Ue?.size?Ue:void 0,hasErrors:s.errors,checkPending:s.checkPending}}return{state:W,getProgram:il,getProgramOrUndefined:cm,releaseProgram:Dc,getCompilerOptions:()=>W.compilerOptions,getSourceFile:il,getSourceFiles:il,getOptionsDiagnostics:il,getGlobalDiagnostics:il,getConfigFileParsingDiagnostics:il,getSyntacticDiagnostics:il,getDeclarationDiagnostics:il,getSemanticDiagnostics:il,emit:il,getAllDependencies:il,getCurrentDirectory:il,emitNextAffectedFile:il,getSemanticDiagnosticsOfNextAffectedFile:il,emitBuildInfo:il,close:Dc,hasChangedEmitSignature:As};function Ie(Ue){return Ou(Ue,R,T)}function _e(Ue){return Xc(Ue,R)}function Ee(Ue){return V[Ue-1]}function Ne(Ue){return M[Ue-1]}function Te(Ue,$e){let Ye=nR.createReferencedMap($e);return!Ye||!Ue||Ue.forEach(([Tt,ot])=>Ye.set(Ee(Tt),Ne(ot))),Ye}function Ze(Ue){let $e=new Map(lr(re.keys(),Ye=>ge.has(Ye)?void 0:[Ye,E]));return Ue?.forEach(Ye=>{ws(Ye)?$e.delete(Ee(Ye)):$e.set(Ee(Ye[0]),Ye[1])}),$e}function We(Ue){return Ue&&Ru(Ue,$e=>Ee($e[0]),$e=>$e[1])}}function Ett(s,c,g){let d=Mo(Xc(c,g.getCurrentDirectory())),h=_d(g.useCaseSensitiveFileNames()),_=new Map,S=0,R=new Map,T=new Map(s.resolvedRoot);return s.fileInfos.forEach((V,M)=>{let ee=Ou(s.fileNames[M],d,h),re=Xs(V)?V:V.version;if(_.set(ee,re),SOu(_,d,h))}function Stt(s,c){return{state:void 0,getProgram:g,getProgramOrUndefined:()=>s.program,releaseProgram:()=>s.program=void 0,getCompilerOptions:()=>s.compilerOptions,getSourceFile:d=>g().getSourceFile(d),getSourceFiles:()=>g().getSourceFiles(),getOptionsDiagnostics:d=>g().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>g().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,h)=>g().getSyntacticDiagnostics(d,h),getDeclarationDiagnostics:(d,h)=>g().getDeclarationDiagnostics(d,h),getSemanticDiagnostics:(d,h)=>g().getSemanticDiagnostics(d,h),emit:(d,h,_,S,R)=>g().emit(d,h,_,S,R),emitBuildInfo:(d,h)=>g().emitBuildInfo(d,h),getAllDependencies:il,getCurrentDirectory:()=>g().getCurrentDirectory(),close:Dc};function g(){return pe.checkDefined(s.program)}}function Brn(s,c,g,d,h,_){return ytt(0,uVe(s,c,g,d,h,_))}function vtt(s,c,g,d,h,_){return ytt(1,uVe(s,c,g,d,h,_))}function wrn(s,c,g,d,h,_){let{newProgram:S,configFileParsingDiagnostics:R}=uVe(s,c,g,d,h,_);return Stt({program:S,compilerOptions:S.getCompilerOptions()},R)}function gVe(s){return di(s,"/node_modules/.staging")?aa(s,"/.staging"):jt(Qp,c=>s.includes(c))?void 0:s}function Y3t(s,c){if(c<=1)return 1;let g=1,d=s[0].search(/[a-z]:/i)===0;if(s[0]!==ag&&!d&&s[1].search(/[a-z]\$$/i)===0){if(c===2)return 2;g=2,d=!0}return d&&!s[g].match(/^users$/i)?g:s[g].match(/^workspaces$/i)?g+1:g+2}function Btt(s,c){if(c===void 0&&(c=s.length),c<=2)return!1;let g=Y3t(s,c);return c>g+1}function zEe(s){return Btt(Np(s))}function Q3t(s){return Rrn(Mo(s))}function Trn(s,c){if(c.lengthh.length+1?J3t(W,T,Math.max(h.length+1,V+1),ee):{dir:g,dirPath:d,nonRecursive:!0}:Nrn(W,T,T.length-1,V,M,h,ee,R)}function Nrn(s,c,g,d,h,_,S,R){if(h!==-1)return J3t(s,c,h+1,S);let T=!0,W=g;if(!R){for(let V=0;V=g&&d+2hws(d,h,_,s,g,c,S)}}function hws(s,c,g,d,h,_,S){let R=AVe(s),T=BU(g,d,h,R,c,_,S);if(!s.getGlobalTypingsCacheLocation)return T;let W=s.getGlobalTypingsCacheLocation();if(W!==void 0&&!Xr(g)&&!(T.resolvedModule&&PAe(T.resolvedModule.extension))){let{resolvedModule:V,failedLookupLocations:M,affectingLocations:ee,resolutionDiagnostics:re}=aOt(pe.checkDefined(s.globalCacheResolutionModuleName)(g),s.projectName,h,R,W,c);if(V)return T.resolvedModule=V,T.failedLookupLocations=Bie(T.failedLookupLocations,M),T.affectingLocations=Bie(T.affectingLocations,ee),T.resolutionDiagnostics=Bie(T.resolutionDiagnostics,re),T}return T}function Ttt(s,c,g){let d,h,_,S=new Set,R=new Set,T=new Set,W=new Map,V=new Map,M=!1,ee,re,ge,Ie,_e,Ee=!1,Ne=FA(()=>s.getCurrentDirectory()),Te=s.getCachedDirectoryStructureHost(),Ze=new Map,We=Tie(Ne(),s.getCanonicalFileName,s.getCompilationSettings()),Ue=new Map,$e=D9e(Ne(),s.getCanonicalFileName,s.getCompilationSettings(),We.getPackageJsonInfoCache(),We.optionsToRedirectsKey),Ye=new Map,Tt=Tie(Ne(),s.getCanonicalFileName,aet(s.getCompilationSettings()),We.getPackageJsonInfoCache()),ot=new Map,Qe=new Map,mt=K3t(c,Ne),ht=s.toPath(mt),_t=Np(ht),Rt=Btt(_t),Lt=new Map,Ke=new Map,Pt=new Map,_r=new Map;return{rootDirForResolution:c,resolvedModuleNames:Ze,resolvedTypeReferenceDirectives:Ue,resolvedLibraries:Ye,resolvedFileToResolution:W,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:T,directoryWatchesOfFailedLookups:ot,fileWatchesOfAffectingLocations:Qe,packageDirWatchers:Ke,dirPathToSymlinkPackageRefCount:Pt,watchFailedLookupLocationsOfExternalModuleResolutions:si,getModuleResolutionCache:()=>We,startRecordingFilesWithChangedResolutions:Dt,finishRecordingFilesWithChangedResolutions:tr,startCachingPerDirectoryResolution:dt,finishCachingPerDirectoryResolution:st,resolveModuleNameLiterals:jn,resolveTypeReferenceDirectiveReferences:mn,resolveLibrary:Zi,resolveSingleModuleNameWithoutWatching:Ns,removeResolutionsFromProjectReferenceRedirects:Oa,removeResolutionsOfFile:tl,hasChangedAutomaticTypeDirectiveNames:()=>M,invalidateResolutionOfFile:Tg,invalidateResolutionsOfFailedLookupLocations:Pn,setFilesWithInvalidatedNonRelativeUnresolvedImports:Cs,createHasInvalidatedResolutions:Gr,isFileWithInvalidatedNonRelativeUnresolvedImports:ur,updateTypeRootsWatch:Kr,closeTypeRootsWatch:nr,clear:Gt,onChangesAffectModuleResolution:nt};function Gt(){Fy(ot,Cv),Fy(Qe,Cv),Lt.clear(),Ke.clear(),Pt.clear(),S.clear(),nr(),Ze.clear(),Ue.clear(),W.clear(),R.clear(),T.clear(),ge=void 0,Ie=void 0,_e=void 0,re=void 0,ee=void 0,Ee=!1,We.clear(),$e.clear(),We.update(s.getCompilationSettings()),$e.update(s.getCompilationSettings()),Tt.clear(),V.clear(),Ye.clear(),M=!1}function nt(){Ee=!0,We.clearAllExceptPackageJsonInfoCache(),$e.clearAllExceptPackageJsonInfoCache(),We.update(s.getCompilationSettings()),$e.update(s.getCompilationSettings())}function Dt(){d=[]}function tr(){let hr=d;return d=void 0,hr}function ur(hr){if(!_)return!1;let En=_.get(hr);return!!En&&!!En.length}function Gr(hr,En){Pn();let Ni=h;return h=void 0,{hasInvalidatedResolutions:Gi=>hr(Gi)||Ee||!!Ni?.has(Gi)||ur(Gi),hasInvalidatedLibResolutions:Gi=>{var nn;return En(Gi)||!!((nn=Ye?.get(Gi))!=null&&nn.isInvalidated)}}}function dt(){We.isReadonly=void 0,$e.isReadonly=void 0,Tt.isReadonly=void 0,We.getPackageJsonInfoCache().isReadonly=void 0,We.clearAllExceptPackageJsonInfoCache(),$e.clearAllExceptPackageJsonInfoCache(),Tt.clearAllExceptPackageJsonInfoCache(),Gl(),Lt.clear()}function pr(hr){Ye.forEach((En,Ni)=>{var Gi;(Gi=hr?.resolvedLibReferences)!=null&&Gi.has(Ni)||(hn(En,s.toPath(nVe(s.getCompilationSettings(),Ne(),Ni)),xL),Ye.delete(Ni))})}function st(hr,En){_=void 0,Ee=!1,Gl(),hr!==En&&(pr(hr),hr?.getSourceFiles().forEach(Ni=>{var Gi;let nn=((Gi=Ni.packageJsonLocations)==null?void 0:Gi.length)??0,bn=V.get(Ni.resolvedPath)??E;for(let ds=bn.length;dsnn)for(let ds=nn;ds{let nn=hr?.getSourceFileByPath(Gi);(!nn||nn.resolvedPath!==Gi)&&(Ni.forEach(bn=>Qe.get(bn).files--),V.delete(Gi))})),ot.forEach(zt),Qe.forEach(Ht),Ke.forEach(ir),M=!1,We.isReadonly=!0,$e.isReadonly=!0,Tt.isReadonly=!0,We.getPackageJsonInfoCache().isReadonly=!0,Lt.clear()}function ir(hr,En){hr.dirPathToWatcher.size===0&&Ke.delete(En)}function zt(hr,En){hr.refCount===0&&(ot.delete(En),hr.watcher.close())}function Ht(hr,En){var Ni;hr.files===0&&hr.resolutions===0&&!((Ni=hr.symlinks)!=null&&Ni.size)&&(Qe.delete(En),hr.watcher.close())}function Br({entries:hr,containingFile:En,containingSourceFile:Ni,redirectedReference:Gi,options:nn,perFileCache:bn,reusedNames:ds,loader:Mt,getResolutionWithResolvedFileName:cn,deferWatchingNonRelativeResolution:Bt,shouldRetryResolution:xe,logChanges:fr}){var Je;let In=s.toPath(En),Hn=bn.get(In)||bn.set(In,wie()).get(In),Ot=[],$r=fr&&ur(In),ri=s.getCurrentProgram(),ao=ri&&((Je=ri.getRedirectFromSourceFile(En))==null?void 0:Je.resolvedRef),Bs=ao?!Gi||Gi.sourceFile.path!==ao.sourceFile.path:!!Gi,Ys=wie();for(let wn of hr){let Mn=Mt.nameAndMode.getName(wn),ci=Mt.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),es=Hn.get(Mn,ci);if(!Ys.has(Mn,ci)&&(Ee||Bs||!es||es.isInvalidated||$r&&!Xr(Mn)&&xe(es))){let Wi=es;es=Mt.resolve(Mn,ci),s.onDiscoveredSymlink&&mws(es)&&s.onDiscoveredSymlink(),Hn.set(Mn,ci,es),es!==Wi&&(si(Mn,es,In,cn,Bt),Wi&&hn(Wi,In,cn)),fr&&d&&!tn(Wi,es)&&(d.push(In),fr=!1)}else{let Wi=AVe(s);if(VP(nn,Wi)&&!Ys.has(Mn,ci)){let Vn=cn(es);eu(Wi,bn===Ze?Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Mn,En,Vn?.resolvedFileName,Vn?.packageId&&oN(Vn.packageId))}}pe.assert(es!==void 0&&!es.isInvalidated),Ys.set(Mn,ci,!0),Ot.push(es)}return ds?.forEach(wn=>Ys.set(Mt.nameAndMode.getName(wn),Mt.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),!0)),Hn.size()!==Ys.size()&&Hn.forEach((wn,Mn,ci)=>{Ys.has(Mn,ci)||(hn(wn,In,cn),Hn.delete(Mn,ci))}),Ot;function tn(wn,Mn){if(wn===Mn)return!0;if(!wn||!Mn)return!1;let ci=cn(wn),es=cn(Mn);return ci===es?!0:!ci||!es?!1:ci.resolvedFileName===es.resolvedFileName}}function mn(hr,En,Ni,Gi,nn,bn){return Br({entries:hr,containingFile:En,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:bn,perFileCache:Ue,loader:rVe(En,Ni,Gi,AVe(s),$e),getResolutionWithResolvedFileName:c7,shouldRetryResolution:ds=>ds.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function jn(hr,En,Ni,Gi,nn,bn){return Br({entries:hr,containingFile:En,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:bn,perFileCache:Ze,loader:j3t(En,Ni,Gi,s,We),getResolutionWithResolvedFileName:xL,shouldRetryResolution:ds=>!ds.resolvedModule||!ez(ds.resolvedModule.extension),logChanges:g,deferWatchingNonRelativeResolution:!0})}function Zi(hr,En,Ni,Gi){let nn=AVe(s),bn=Ye?.get(Gi);if(!bn||bn.isInvalidated){let ds=bn;bn=k9e(hr,En,Ni,nn,Tt);let Mt=s.toPath(En);si(hr,bn,Mt,xL,!1),Ye.set(Gi,bn),ds&&hn(ds,Mt,xL)}else if(VP(Ni,nn)){let ds=xL(bn);eu(nn,ds?.resolvedFileName?ds.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,hr,En,ds?.resolvedFileName,ds?.packageId&&oN(ds.packageId))}return bn}function Ns(hr,En){var Ni,Gi;let nn=s.toPath(En),bn=Ze.get(nn),ds=bn?.get(hr,void 0);if(ds&&!ds.isInvalidated)return ds;let Mt=(Ni=s.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Ni.call(s,We),cn=AVe(s),Bt=BU(hr,En,s.getCompilationSettings(),cn,We);return(Gi=s.afterResolveSingleModuleNameWithoutWatching)==null||Gi.call(s,We,hr,En,Bt,Mt),Bt}function An(hr){return di(hr,"/node_modules/@types")}function si(hr,En,Ni,Gi,nn){if((En.files??(En.files=new Set)).add(Ni),En.files.size!==1)return;!nn||Xr(hr)?Ic(En):S.add(En);let bn=Gi(En);if(bn&&bn.resolvedFileName){let ds=s.toPath(bn.resolvedFileName),Mt=W.get(ds);Mt||W.set(ds,Mt=new Set),Mt.add(En)}}function ks(hr,En){let Ni=s.toPath(hr),Gi=wtt(hr,Ni,mt,ht,_t,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dir:nn,dirPath:bn,nonRecursive:ds,packageDir:Mt,packageDirPath:cn}=Gi;bn===ht?(pe.assert(ds),pe.assert(!Mt),En=!0):Wo(nn,bn,Mt,cn,ds)}return En}function Ic(hr){var En;pe.assert(!!((En=hr.files)!=null&&En.size));let{failedLookupLocations:Ni,affectingLocations:Gi,alternateResult:nn}=hr;if(!Ni?.length&&!Gi?.length&&!nn)return;(Ni?.length||nn)&&R.add(hr);let bn=!1;if(Ni)for(let ds of Ni)bn=ks(ds,bn);nn&&(bn=ks(nn,bn)),bn&&Wo(mt,ht,void 0,void 0,!0),su(hr,!Ni?.length&&!nn)}function su(hr,En){var Ni;pe.assert(!!((Ni=hr.files)!=null&&Ni.size));let{affectingLocations:Gi}=hr;if(Gi?.length){En&&T.add(hr);for(let nn of Gi)Zn(nn,!0)}}function Zn(hr,En){let Ni=Qe.get(hr);if(Ni){En?Ni.resolutions++:Ni.files++;return}let Gi=hr,nn=!1,bn;s.realpath&&(Gi=s.realpath(hr),hr!==Gi&&(nn=!0,bn=Qe.get(Gi)));let ds=En?1:0,Mt=En?0:1;if(!nn||!bn){let cn={watcher:X3t(s.toPath(Gi))?s.watchAffectingFileLocation(Gi,(Bt,xe)=>{Te?.addOrDeleteFile(Bt,s.toPath(Gi),xe),ya(Gi,We.getPackageJsonInfoCache().getInternalMap()),s.scheduleInvalidateResolutionsOfFailedLookupLocations()}):Vie,resolutions:nn?0:ds,files:nn?0:Mt,symlinks:void 0};Qe.set(Gi,cn),nn&&(bn=cn)}if(nn){pe.assert(!!bn);let cn={watcher:{close:()=>{var Bt;let xe=Qe.get(Gi);(Bt=xe?.symlinks)!=null&&Bt.delete(hr)&&!xe.symlinks.size&&!xe.resolutions&&!xe.files&&(Qe.delete(Gi),xe.watcher.close())}},resolutions:ds,files:Mt,symlinks:void 0};Qe.set(hr,cn),(bn.symlinks??(bn.symlinks=new Set)).add(hr)}}function ya(hr,En){var Ni;let Gi=Qe.get(hr);Gi?.resolutions&&(re??(re=new Set)).add(hr),Gi?.files&&(ee??(ee=new Set)).add(hr),(Ni=Gi?.symlinks)==null||Ni.forEach(nn=>ya(nn,En)),En?.delete(s.toPath(hr))}function Gl(){S.forEach(Ic),S.clear()}function ba(hr,En,Ni,Gi,nn){pe.assert(!nn);let bn=Lt.get(Gi),ds=Ke.get(Gi);if(bn===void 0){let Bt=s.realpath(Ni);bn=Bt!==Ni&&s.toPath(Bt)!==Gi,Lt.set(Gi,bn),ds?ds.isSymlink!==bn&&(ds.dirPathToWatcher.forEach(xe=>{Oi(ds.isSymlink?Gi:En),xe.watcher=cn()}),ds.isSymlink=bn):Ke.set(Gi,ds={dirPathToWatcher:new Map,isSymlink:bn})}else pe.assertIsDefined(ds),pe.assert(bn===ds.isSymlink);let Mt=ds.dirPathToWatcher.get(En);Mt?Mt.refCount++:(ds.dirPathToWatcher.set(En,{watcher:cn(),refCount:1}),bn&&Pt.set(En,(Pt.get(En)??0)+1));function cn(){return bn?hc(Ni,Gi,nn):hc(hr,En,nn)}}function Wo(hr,En,Ni,Gi,nn){!Gi||!s.realpath?hc(hr,En,nn):ba(hr,En,Ni,Gi,nn)}function hc(hr,En,Ni){let Gi=ot.get(En);return Gi?(pe.assert(!!Ni==!!Gi.nonRecursive),Gi.refCount++):ot.set(En,Gi={watcher:lo(hr,En,Ni),refCount:1,nonRecursive:Ni}),Gi}function yr(hr,En){let Ni=s.toPath(hr),Gi=wtt(hr,Ni,mt,ht,_t,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dirPath:nn,packageDirPath:bn}=Gi;if(nn===ht)En=!0;else if(bn&&s.realpath){let ds=Ke.get(bn),Mt=ds.dirPathToWatcher.get(nn);if(Mt.refCount--,Mt.refCount===0&&(Oi(ds.isSymlink?bn:nn),ds.dirPathToWatcher.delete(nn),ds.isSymlink)){let cn=Pt.get(nn)-1;cn===0?Pt.delete(nn):Pt.set(nn,cn)}}else Oi(nn)}return En}function hn(hr,En,Ni){if(pe.checkDefined(hr.files).delete(En),hr.files.size)return;hr.files=void 0;let Gi=Ni(hr);if(Gi&&Gi.resolvedFileName){let Mt=s.toPath(Gi.resolvedFileName),cn=W.get(Mt);cn?.delete(hr)&&!cn.size&&W.delete(Mt)}let{failedLookupLocations:nn,affectingLocations:bn,alternateResult:ds}=hr;if(R.delete(hr)){let Mt=!1;if(nn)for(let cn of nn)Mt=yr(cn,Mt);ds&&(Mt=yr(ds,Mt)),Mt&&Oi(ht)}else bn?.length&&T.delete(hr);if(bn)for(let Mt of bn){let cn=Qe.get(Mt);cn.resolutions--}}function Oi(hr){let En=ot.get(hr);En.refCount--}function lo(hr,En,Ni){return s.watchDirectoryOfFailedLookupLocation(hr,Gi=>{let nn=s.toPath(Gi);Te&&Te.addOrDeleteFileOrDirectory(Gi,nn),Tu(nn,En===nn)},Ni?0:1)}function pa(hr,En,Ni){let Gi=hr.get(En);Gi&&(Gi.forEach(nn=>hn(nn,En,Ni)),hr.delete(En))}function Oa(hr){if(!aA(hr,".json"))return;let En=s.getCurrentProgram();if(!En)return;let Ni=En.getResolvedProjectReferenceByPath(hr);Ni&&Ni.commandLine.fileNames.forEach(Gi=>tl(s.toPath(Gi)))}function tl(hr){pa(Ze,hr,xL),pa(Ue,hr,c7)}function Qu(hr,En){if(!hr)return!1;let Ni=!1;return hr.forEach(Gi=>{if(!(Gi.isInvalidated||!En(Gi))){Gi.isInvalidated=Ni=!0;for(let nn of pe.checkDefined(Gi.files))(h??(h=new Set)).add(nn),M=M||di(nn,Fde)}}),Ni}function Tg(hr){tl(hr);let En=M;Qu(W.get(hr),Tf)&&M&&!En&&s.onChangedAutomaticTypeDirectiveNames()}function Cs(hr){pe.assert(_===hr||_===void 0),_=hr}function Tu(hr,En){if(En)(_e||(_e=new Set)).add(hr);else{let Ni=gVe(hr);if(!Ni||(hr=Ni,s.fileIsOpen(hr)))return!1;let Gi=Mo(hr);if(An(hr)||Vd(hr)||An(Gi)||Vd(Gi))(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);else{if(I3t(s.getCurrentProgram(),hr)||aA(hr,".map"))return!1;(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);let nn=wEe(hr,!0);nn&&(Ie||(Ie=new Set)).add(nn)}}s.scheduleInvalidateResolutionsOfFailedLookupLocations()}function Pr(){let hr=We.getPackageJsonInfoCache().getInternalMap();hr&&(ge||Ie||_e)&&hr.forEach((En,Ni)=>on(Ni)?hr.delete(Ni):void 0)}function Pn(){var hr;if(Ee)return ee=void 0,Pr(),(ge||Ie||_e||re)&&Qu(Ye,pt),ge=void 0,Ie=void 0,_e=void 0,re=void 0,!0;let En=!1;return ee&&((hr=s.getCurrentProgram())==null||hr.getSourceFiles().forEach(Ni=>{jt(Ni.packageJsonLocations,Gi=>ee.has(Gi))&&((h??(h=new Set)).add(Ni.path),En=!0)}),ee=void 0),!ge&&!Ie&&!_e&&!re||(En=Qu(R,pt)||En,Pr(),ge=void 0,Ie=void 0,_e=void 0,En=Qu(T,it)||En,re=void 0),En}function pt(hr){var En;return it(hr)?!0:!ge&&!Ie&&!_e?!1:((En=hr.failedLookupLocations)==null?void 0:En.some(Ni=>on(s.toPath(Ni))))||!!hr.alternateResult&&on(s.toPath(hr.alternateResult))}function on(hr){return ge?.has(hr)||ae(Ie?.keys()||[],En=>Ac(hr,En)?!0:void 0)||ae(_e?.keys()||[],En=>hr.length>En.length&&Ac(hr,En)&&(cE(En)||hr[En.length]===ag)?!0:void 0)}function it(hr){var En;return!!re&&((En=hr.affectingLocations)==null?void 0:En.some(Ni=>re.has(Ni)))}function nr(){Fy(_r,dv)}function Fr(hr){return Dn(hr)?s.watchTypeRootsDirectory(hr,En=>{let Ni=s.toPath(En);Te&&Te.addOrDeleteFileOrDirectory(En,Ni),M=!0,s.onChangedAutomaticTypeDirectiveNames();let Gi=U3t(hr,s.toPath(hr),ht,_t,Rt,Ne,s.preferNonRecursiveWatch,nn=>ot.has(nn)||Pt.has(nn));Gi&&Tu(Ni,Gi===Ni)},1):Vie}function Kr(){let hr=s.getCompilationSettings();if(hr.types){nr();return}let En=mde(hr,{getCurrentDirectory:Ne});En?Q7(_r,new Set(En),{createNewValue:Fr,onDeleteValue:dv}):nr()}function Dn(hr){return s.getCompilationSettings().typeRoots?!0:Q3t(s.toPath(hr))}}function mws(s){var c,g;return!!((c=s.resolvedModule)!=null&&c.originalPath||(g=s.resolvedTypeReferenceDirective)!=null&&g.originalPath)}var Drn=yd?{getCurrentDirectory:()=>yd.getCurrentDirectory(),getNewLine:()=>yd.newLine,getCanonicalFileName:_d(yd.useCaseSensitiveFileNames)}:void 0;function Gz(s,c){let g=s===yd&&Drn?Drn:{getCurrentDirectory:()=>s.getCurrentDirectory(),getNewLine:()=>s.newLine,getCanonicalFileName:_d(s.useCaseSensitiveFileNames)};if(!c)return h=>s.write(ctt(h,g));let d=new Array(1);return h=>{d[0]=h,s.write(E3t(d,g)+g.getNewLine()),d[0]=void 0}}function krn(s,c,g){return s.clearScreen&&!g.preserveWatchOutput&&!g.extendedDiagnostics&&!g.diagnostics&&k(xrn,c.code)?(s.clearScreen(),!0):!1}var xrn=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function Cws(s,c){return k(xrn,s.code)?c+c:c}function qEe(s){return s.now?s.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function Rtt(s,c){return c?(g,d,h)=>{krn(s,g,h);let _=`[${AQ(qEe(s),"\x1B[90m")}] `;_+=`${wN(g.messageText,s.newLine)}${d+d}`,s.write(_)}:(g,d,h)=>{let _="";krn(s,g,h)||(_+=d),_+=`${qEe(s)} - `,_+=`${wN(g.messageText,s.newLine)}${Cws(g,d)}`,s.write(_)}}function z3t(s,c,g,d,h,_){let S=h;S.onUnRecoverableConfigFileDiagnostic=T=>Zrn(h,_,T);let R=_Ee(s,c,S,g,d);return S.onUnRecoverableConfigFileDiagnostic=void 0,R}function dVe(s){return ct(s,c=>c.category===1)}function pVe(s){return Me(s,g=>g.category===1).map(g=>{if(g.file!==void 0)return`${g.file.fileName}`}).map(g=>{if(g===void 0)return;let d=de(s,h=>h.file!==void 0&&h.file.fileName===g);if(d!==void 0){let{line:h}=Ra(d.file,d.start);return{fileName:g,line:h+1}}})}function Ntt(s){return s===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function Grn(s,c){let g=AQ(":"+s.line,"\x1B[90m");return lE(s.fileName)&&lE(c)?mp(c,s.fileName,!1)+g:s.fileName+g}function Dtt(s,c,g,d){if(s===0)return"";let h=c.filter(V=>V!==void 0),_=h.map(V=>`${V.fileName}:${V.line}`).filter((V,M,ee)=>ee.indexOf(V)===M),S=h[0]&&Grn(h[0],d.getCurrentDirectory()),R;s===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,S]:[Z.Found_1_error]:R=_.length===0?[Z.Found_0_errors,s]:_.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,s,S]:[Z.Found_0_errors_in_1_files,s,_.length];let T=Nf(...R),W=_.length>1?_ws(h,d):"";return`${g}${wN(T.messageText,g)}${g}${g}${W}`}function _ws(s,c){let g=s.filter((M,ee,re)=>ee===re.findIndex(ge=>ge?.fileName===M?.fileName));if(g.length===0)return"";let d=M=>Math.log(M)*Math.LOG10E+1,h=g.map(M=>[M,ct(s,ee=>ee.fileName===M.fileName)]),_=ls(h,0,M=>M[1]),S=Z.Errors_Files.message,R=S.split(" ")[0].length,T=Math.max(R,d(_)),W=Math.max(d(_)-R,0),V="";return V+=" ".repeat(W)+S+` -`,h.forEach(M=>{let[ee,re]=M,ge=Math.log(re)*Math.LOG10E+1|0,Ie=ge{c(d.fileName)})}function xtt(s,c){var g,d;let h=s.getFileIncludeReasons(),_=S=>r2(S,s.getCurrentDirectory(),s.getCanonicalFileName);for(let S of s.getSourceFiles())c(`${Lie(S,_)}`),(g=h.get(S.path))==null||g.forEach(R=>c(` ${Ltt(s,R,_).messageText}`)),(d=Gtt(S,s.getCompilerOptionsForFile(S),_))==null||d.forEach(R=>c(` ${R.messageText}`))}function Gtt(s,c,g){var d;let h;if(s.path!==s.resolvedPath&&(h??(h=[])).push(wu(void 0,Z.File_is_output_of_project_reference_source_0,Lie(s.originalFileName,g))),s.redirectInfo&&(h??(h=[])).push(wu(void 0,Z.File_redirects_to_file_0,Lie(s.redirectInfo.redirectTarget,g))),vl(s))switch(NU(s,c)){case 99:s.packageJsonScope&&(h??(h=[])).push(wu(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,Lie(Ei(s.packageJsonLocations),g)));break;case 1:s.packageJsonScope?(h??(h=[])).push(wu(void 0,s.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,Lie(Ei(s.packageJsonLocations),g))):(d=s.packageJsonLocations)!=null&&d.length&&(h??(h=[])).push(wu(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return h}function Ftt(s,c){var g;let d=s.getCompilerOptions().configFile;if(!((g=d?.configFileSpecs)!=null&&g.validatedFilesSpec))return;let h=s.getCanonicalFileName(c),_=Mo(Xc(d.fileName,s.getCurrentDirectory())),S=Se(d.configFileSpecs.validatedFilesSpec,R=>s.getCanonicalFileName(Xc(R,_))===h);return S!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[S]:void 0}function Ztt(s,c){var g,d;let h=s.getCompilerOptions().configFile;if(!((g=h?.configFileSpecs)!=null&&g.validatedIncludeSpecs))return;if(h.configFileSpecs.isDefaultIncludeSpec)return!0;let _=aA(c,".json"),S=Mo(Xc(h.fileName,s.getCurrentDirectory())),R=s.useCaseSensitiveFileNames(),T=Se((d=h?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,W=>{if(_&&!di(W,".json"))return!1;let V=Ebe(W,S,"files");return!!V&&zD(`(?:${V})$`,R).test(c)});return T!==-1?h.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[T]:void 0}function Ltt(s,c,g){var d,h;let _=s.getCompilerOptions();if(K3(c)){let S=Zde(s,c),R=Fie(S)?S.file.text.substring(S.pos,S.end):`"${S.text}"`,T;switch(pe.assert(Fie(S)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:Fie(S)?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:S.text===PD?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:pe.assert(!S.packageId),T=Z.Referenced_via_0_from_file_1;break;case 5:T=S.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:pe.assert(!S.packageId),T=Z.Library_referenced_via_0_from_file_1;break;default:pe.assertNever(c)}return wu(void 0,T,R,Lie(S.file,g),S.packageId&&oN(S.packageId))}switch(c.kind){case 0:if(!((d=_.configFile)!=null&&d.configFileSpecs))return wu(void 0,Z.Root_file_specified_for_compilation);let S=Xc(s.getRootFileNames()[c.index],s.getCurrentDirectory());if(Ftt(s,S))return wu(void 0,Z.Part_of_files_list_in_tsconfig_json);let T=Ztt(s,S);return Xs(T)?wu(void 0,Z.Matched_by_include_pattern_0_in_1,T,Lie(_.configFile,g)):wu(void 0,T?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let W=c.kind===2,V=pe.checkDefined((h=s.getResolvedProjectReferences())==null?void 0:h[c.index]);return wu(void 0,_.outFile?W?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:W?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,Lie(V.sourceFile.fileName,g),_.outFile?"--outFile":"--out");case 8:{let M=_.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,oN(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,oN(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return wu(void 0,...M)}case 6:{if(c.index!==void 0)return wu(void 0,Z.Library_0_specified_in_compilerOptions,_.lib[c.index]);let M=TAe(Mg(_)),ee=M?[Z.Default_library_for_target_0,M]:[Z.Default_library];return wu(void 0,...ee)}default:pe.assertNever(c)}}function Lie(s,c){let g=Xs(s)?s:s.fileName;return c?c(g):g}function fVe(s,c,g,d,h,_,S,R){let T=s.getCompilerOptions(),W=s.getConfigFileParsingDiagnostics().slice(),V=W.length;Or(W,s.getSyntacticDiagnostics(void 0,_)),W.length===V&&(Or(W,s.getOptionsDiagnostics(_)),T.listFilesOnly||(Or(W,s.getGlobalDiagnostics(_)),W.length===V&&Or(W,s.getSemanticDiagnostics(void 0,_)),T.noEmit&&Ly(T)&&W.length===V&&Or(W,s.getDeclarationDiagnostics(void 0,_))));let M=T.listFilesOnly?{emitSkipped:!0,diagnostics:E}:s.emit(void 0,h,_,S,R);Or(W,M.diagnostics);let ee=ui(W);if(ee.forEach(c),g){let re=s.getCurrentDirectory();F(M.emittedFiles,ge=>{let Ie=Xc(ge,re);g(`TSFILE: ${Ie}`)}),yws(s,g)}return d&&d(dVe(ee),pVe(ee)),{emitResult:M,diagnostics:ee}}function Vtt(s,c,g,d,h,_,S,R){let{emitResult:T,diagnostics:W}=fVe(s,c,g,d,h,_,S,R);return T.emitSkipped&&W.length>0?1:W.length>0?2:0}var Vie={close:Dc},Vde=()=>Vie;function Ptt(s=yd,c){return{onWatchStatusChange:c||Rtt(s),watchFile:$i(s,s.watchFile)||Vde,watchDirectory:$i(s,s.watchDirectory)||Vde,setTimeout:$i(s,s.setTimeout)||Dc,clearTimeout:$i(s,s.clearTimeout)||Dc,preferNonRecursiveWatch:s.preferNonRecursiveWatch}}var jm={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"};function Wtt(s,c){let g=s.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=g!==0?_=>s.trace(_):Dc,h=ntt(s,g,d);return h.writeLog=d,h}function Ott(s,c,g=s){let d=s.useCaseSensitiveFileNames(),h={getSourceFile:ott((_,S)=>S?s.readFile(_,S):h.readFile(_),void 0),getDefaultLibLocation:$i(s,s.getDefaultLibLocation),getDefaultLibFileName:_=>s.getDefaultLibFileName(_),writeFile:att((_,S,R)=>s.writeFile(_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_)),getCurrentDirectory:FA(()=>s.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:_d(d),getNewLine:()=>uN(c()),fileExists:_=>s.fileExists(_),readFile:_=>s.readFile(_),trace:$i(s,s.trace),directoryExists:$i(g,g.directoryExists),getDirectories:$i(g,g.getDirectories),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable)||(()=>""),createHash:$i(s,s.createHash),readDirectory:$i(s,s.readDirectory),storeSignatureInfo:s.storeSignatureInfo,jsDocParsingMode:s.jsDocParsingMode};return h}function IVe(s,c){if(c.match(bOt)){let g=c.length,d=g;for(let h=g-1;h>=0;h--){let _=c.charCodeAt(h);switch(_){case 10:h&&c.charCodeAt(h-1)===13&&h--;case 13:break;default:if(_<127||!Cl(_)){d=h;continue}break}let S=c.substring(d,g);if(S.match(Net)){c=c.substring(0,d);break}else if(!S.match(Det))break;g=d}}return(s.createHash||ry)(c)}function hVe(s){let c=s.getSourceFile;s.getSourceFile=(...g)=>{let d=c.call(s,...g);return d&&(d.version=IVe(s,d.text)),d}}function Mtt(s,c){let g=FA(()=>Mo(iu(s.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames,getNewLine:()=>s.newLine,getCurrentDirectory:FA(()=>s.getCurrentDirectory()),getDefaultLibLocation:g,getDefaultLibFileName:d=>Ro(g(),Hs(d)),fileExists:d=>s.fileExists(d),readFile:(d,h)=>s.readFile(d,h),directoryExists:d=>s.directoryExists(d),getDirectories:d=>s.getDirectories(d),readDirectory:(d,h,_,S,R)=>s.readDirectory(d,h,_,S,R),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable),trace:d=>s.write(d+s.newLine),createDirectory:d=>s.createDirectory(d),writeFile:(d,h,_)=>s.writeFile(d,h,_),createHash:$i(s,s.createHash),createProgram:c||vtt,storeSignatureInfo:s.storeSignatureInfo,now:$i(s,s.now)}}function Frn(s=yd,c,g,d){let h=S=>s.write(S+s.newLine),_=Mtt(s,c);return GA(_,Ptt(s,d)),_.afterProgramCreate=S=>{let R=S.getCompilerOptions(),T=uN(R);fVe(S,g,h,W=>_.onWatchStatusChange(Nf(Ntt(W),W),T,R,W))},_}function Zrn(s,c,g){c(g),s.exit(1)}function Htt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:g,extraFileExtensions:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=S||Gz(h),W=Frn(h,_,T,R);return W.onUnRecoverableConfigFileDiagnostic=V=>Zrn(h,T,V),W.configFileName=s,W.optionsToExtend=c,W.watchOptionsToExtend=g,W.extraFileExtensions=d,W}function Ytt({rootFiles:s,options:c,watchOptions:g,projectReferences:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=Frn(h,_,S||Gz(h),R);return T.rootFiles=s,T.options=c,T.watchOptions=g,T.projectReferences=d,T}function q3t(s){let c=s.system||yd,g=s.host||(s.host=CVe(s.options,c)),d=$3t(s),h=Vtt(d,s.reportDiagnostic||Gz(c),_=>g.trace&&g.trace(_),s.reportErrorSummary||s.options.pretty?(_,S)=>c.write(Dtt(_,S,c.newLine,g)):void 0);return s.afterProgramEmitAndDiagnostics&&s.afterProgramEmitAndDiagnostics(d),h}function mVe(s,c){let g=U3(s);if(!g)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(g,s.configFilePath);else{let h=c.readFile(g);if(!h)return;d=$et(g,h)}if(!(!d||d.version!==C||!jEe(d)))return M3t(d,g,c)}function CVe(s,c=yd){let g=$9e(s,void 0,c);return g.createHash=$i(c,c.createHash),g.storeSignatureInfo=c.storeSignatureInfo,hVe(g),Gde(g,d=>Ou(d,g.getCurrentDirectory(),g.getCanonicalFileName)),g}function $3t({rootNames:s,options:c,configFileParsingDiagnostics:g,projectReferences:d,host:h,createProgram:_}){h=h||CVe(c),_=_||vtt;let S=mVe(c,h);return _(s,c,h,S,g,d)}function Lrn(s,c,g,d,h,_,S,R){return Ki(s)?Ytt({rootFiles:s,options:c,watchOptions:R,projectReferences:S,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_}):Htt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:S,extraFileExtensions:R,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_})}function Qtt(s){let c,g,d,h,_=new Map([[void 0,void 0]]),S,R,T,W,V=s.extendedConfigCache,M=!1,ee=new Map,re,ge=!1,Ie=s.useCaseSensitiveFileNames(),_e=s.getCurrentDirectory(),{configFileName:Ee,optionsToExtend:Ne={},watchOptionsToExtend:Te,extraFileExtensions:Ze,createProgram:We}=s,{rootFiles:Ue,options:$e,watchOptions:Ye,projectReferences:Tt}=s,ot,Qe,mt=!1,ht=!1,_t=Ee===void 0?void 0:j9e(s,_e,Ie),Rt=_t||s,Lt=aVe(s,Rt),Ke=si();Ee&&s.configFileParsingResult&&(Pn(s.configFileParsingResult),Ke=si()),hc(Z.Starting_compilation_in_watch_mode),Ee&&!s.configFileParsingResult&&(Ke=uN(Ne),pe.assert(!Ue),Pr(),Ke=si()),pe.assert($e),pe.assert(Ue);let{watchFile:Pt,watchDirectory:_r,writeLog:Gt}=Wtt(s,$e),nt=_d(Ie);Gt(`Current directory: ${_e} CaseSensitiveFileNames: ${Ie}`);let Dt;Ee&&(Dt=Pt(Ee,Oa,2e3,Ye,jm.ConfigFile));let tr,ur=wen(__filename);ur&&(tr=Pt(ur,tl,2e3,Ye,jm.ConfigFile));let Gr=Ott(s,()=>$e,Rt);hVe(Gr);let dt=Gr.getSourceFile;Gr.getSourceFile=(bn,...ds)=>ya(bn,ks(bn),...ds),Gr.getSourceFileByPath=ya,Gr.getNewLine=()=>Ke,Gr.fileExists=Zn,Gr.onReleaseOldSourceFile=Wo,Gr.onReleaseParsedCommandLine=it,Gr.toPath=ks,Gr.getCompilationSettings=()=>$e,Gr.useSourceOfProjectReferenceRedirect=$i(s,s.useSourceOfProjectReferenceRedirect),Gr.preferNonRecursiveWatch=s.preferNonRecursiveWatch,Gr.watchDirectoryOfFailedLookupLocation=(bn,ds,Mt)=>_r(bn,ds,Mt,Ye,jm.FailedLookupLocations),Gr.watchAffectingFileLocation=(bn,ds)=>Pt(bn,ds,2e3,Ye,jm.AffectingFileLocation),Gr.watchTypeRootsDirectory=(bn,ds,Mt)=>_r(bn,ds,Mt,Ye,jm.TypeRoots),Gr.getCachedDirectoryStructureHost=()=>_t,Gr.scheduleInvalidateResolutionsOfFailedLookupLocations=Oi,Gr.onInvalidatedResolution=pa,Gr.onChangedAutomaticTypeDirectiveNames=pa,Gr.fileIsOpen=As,Gr.getCurrentProgram=jn,Gr.writeLog=Gt,Gr.getParsedCommandLine=pt;let pr=Ttt(Gr,Ee?Mo(Xc(Ee,_e)):_e,!1);Gr.resolveModuleNameLiterals=$i(s,s.resolveModuleNameLiterals),Gr.resolveModuleNames=$i(s,s.resolveModuleNames),!Gr.resolveModuleNameLiterals&&!Gr.resolveModuleNames&&(Gr.resolveModuleNameLiterals=pr.resolveModuleNameLiterals.bind(pr)),Gr.resolveTypeReferenceDirectiveReferences=$i(s,s.resolveTypeReferenceDirectiveReferences),Gr.resolveTypeReferenceDirectives=$i(s,s.resolveTypeReferenceDirectives),!Gr.resolveTypeReferenceDirectiveReferences&&!Gr.resolveTypeReferenceDirectives&&(Gr.resolveTypeReferenceDirectiveReferences=pr.resolveTypeReferenceDirectiveReferences.bind(pr)),Gr.resolveLibrary=s.resolveLibrary?s.resolveLibrary.bind(s):pr.resolveLibrary.bind(pr),Gr.getModuleResolutionCache=s.resolveModuleNameLiterals||s.resolveModuleNames?$i(s,s.getModuleResolutionCache):()=>pr.getModuleResolutionCache();let ir=!!s.resolveModuleNameLiterals||!!s.resolveTypeReferenceDirectiveReferences||!!s.resolveModuleNames||!!s.resolveTypeReferenceDirectives?$i(s,s.hasInvalidatedResolutions)||Tf:As,zt=s.resolveLibrary?$i(s,s.hasInvalidatedLibResolutions)||Tf:As;return c=mVe($e,Gr),Zi(),Ee?{getCurrentProgram:mn,getProgram:Tg,close:Ht,getResolutionCache:Br}:{getCurrentProgram:mn,getProgram:Tg,updateRootFileNames:An,close:Ht,getResolutionCache:Br};function Ht(){hn(),pr.clear(),Fy(ee,bn=>{bn&&bn.fileWatcher&&(bn.fileWatcher.close(),bn.fileWatcher=void 0)}),Dt&&(Dt.close(),Dt=void 0),tr&&(tr.close(),tr=void 0),V?.clear(),V=void 0,W&&(Fy(W,Cv),W=void 0),h&&(Fy(h,Cv),h=void 0),d&&(Fy(d,dv),d=void 0),T&&(Fy(T,bn=>{var ds;(ds=bn.watcher)==null||ds.close(),bn.watcher=void 0,bn.watchedDirectories&&Fy(bn.watchedDirectories,Cv),bn.watchedDirectories=void 0}),T=void 0),c=void 0}function Br(){return pr}function mn(){return c}function jn(){return c&&c.getProgramOrUndefined()}function Zi(bn=!1){Gt("Synchronizing program"),pe.assert($e),pe.assert(Ue),hn();let ds=mn();ge&&(Ke=si(),ds&&NJ(ds.getCompilerOptions(),$e)&&pr.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:Mt,hasInvalidatedLibResolutions:cn}=pr.createHasInvalidatedResolutions(bn?Tf:ir,zt),{originalReadFile:Bt,originalFileExists:xe,originalDirectoryExists:fr,originalCreateDirectory:Je,originalWriteFile:In,readFileWithCache:Hn}=Gde(Gr,ks);return ptt(jn(),Ue,$e,Ot=>ba(Ot,Hn),Ot=>Gr.fileExists(Ot),Mt,cn,yr,pt,Tt)?ht&&(M&&hc(Z.File_change_detected_Starting_incremental_compilation),c=We(void 0,void 0,Gr,c,Qe,Tt),ht=!1):(M&&hc(Z.File_change_detected_Starting_incremental_compilation),Ns(Mt,cn)),M=!1,s.afterProgramCreate&&ds!==c&&s.afterProgramCreate(c),Gr.readFile=Bt,Gr.fileExists=xe,Gr.directoryExists=fr,Gr.createDirectory=Je,Gr.writeFile=In,_?.forEach((Ot,$r)=>{if(!$r)En(),Ee&&Gi(ks(Ee),$e,Ye,jm.ExtendedConfigFile);else{let ri=T?.get($r);ri&&nn(Ot,$r,ri)}}),_=void 0,c}function Ns(bn,ds){Gt("CreatingProgramWith::"),Gt(` roots: ${JSON.stringify(Ue)}`),Gt(` options: ${JSON.stringify($e)}`),Tt&&Gt(` projectReferences: ${JSON.stringify(Tt)}`);let Mt=ge||!jn();ge=!1,ht=!1,pr.startCachingPerDirectoryResolution(),Gr.hasInvalidatedResolutions=bn,Gr.hasInvalidatedLibResolutions=ds,Gr.hasChangedAutomaticTypeDirectiveNames=yr;let cn=jn();if(c=We(Ue,$e,Gr,c,Qe,Tt),pr.finishCachingPerDirectoryResolution(c.getProgram(),cn),rtt(c.getProgram(),d||(d=new Map),Dn),Mt&&pr.updateTypeRootsWatch(),re){for(let Bt of re)d.has(Bt)||ee.delete(Bt);re=void 0}}function An(bn){pe.assert(!Ee,"Cannot update root file names with config file watch mode"),Ue=bn,pa()}function si(){return uN($e||Ne)}function ks(bn){return Ou(bn,_e,nt)}function Ic(bn){return typeof bn=="boolean"}function su(bn){return typeof bn.version=="boolean"}function Zn(bn){let ds=ks(bn);return Ic(ee.get(ds))?!1:Rt.fileExists(bn)}function ya(bn,ds,Mt,cn,Bt){let xe=ee.get(ds);if(Ic(xe))return;let fr=typeof Mt=="object"?Mt.impliedNodeFormat:void 0;if(xe===void 0||Bt||su(xe)||xe.sourceFile.impliedNodeFormat!==fr){let Je=dt(bn,Mt,cn);if(xe)Je?(xe.sourceFile=Je,xe.version=Je.version,xe.fileWatcher||(xe.fileWatcher=nr(ds,bn,Fr,250,Ye,jm.SourceFile))):(xe.fileWatcher&&xe.fileWatcher.close(),ee.set(ds,!1));else if(Je){let In=nr(ds,bn,Fr,250,Ye,jm.SourceFile);ee.set(ds,{sourceFile:Je,version:Je.version,fileWatcher:In})}else ee.set(ds,!1);return Je}return xe.sourceFile}function Gl(bn){let ds=ee.get(bn);ds!==void 0&&(Ic(ds)?ee.set(bn,{version:!1}):ds.version=!1)}function ba(bn,ds){let Mt=ee.get(bn);if(!Mt)return;if(Mt.version)return Mt.version;let cn=ds(bn);return cn!==void 0?IVe(Gr,cn):void 0}function Wo(bn,ds,Mt){let cn=ee.get(bn.resolvedPath);cn!==void 0&&(Ic(cn)?(re||(re=[])).push(bn.path):cn.sourceFile===bn&&(cn.fileWatcher&&cn.fileWatcher.close(),ee.delete(bn.resolvedPath),Mt||pr.removeResolutionsOfFile(bn.path)))}function hc(bn){s.onWatchStatusChange&&s.onWatchStatusChange(Nf(bn),Ke,$e||Ne)}function yr(){return pr.hasChangedAutomaticTypeDirectiveNames()}function hn(){return R?(s.clearTimeout(R),R=void 0,!0):!1}function Oi(){if(!s.setTimeout||!s.clearTimeout)return pr.invalidateResolutionsOfFailedLookupLocations();let bn=hn();Gt(`Scheduling invalidateFailedLookup${bn?", Cancelled earlier one":""}`),R=s.setTimeout(lo,250,"timerToInvalidateFailedLookupResolutions")}function lo(){R=void 0,pr.invalidateResolutionsOfFailedLookupLocations()&&pa()}function pa(){!s.setTimeout||!s.clearTimeout||(S&&s.clearTimeout(S),Gt("Scheduling update"),S=s.setTimeout(Qu,250,"timerToUpdateProgram"))}function Oa(){pe.assert(!!Ee),g=2,pa()}function tl(){Gt("Clearing resolutions"),pr.clear(),g=3,pa()}function Qu(){S=void 0,M=!0,Tg()}function Tg(){switch(g){case 1:Cs();break;case 2:Tu();break;case 3:Zi(!0);break;default:Zi();break}return mn()}function Cs(){Gt("Reloading new file names and options"),pe.assert($e),pe.assert(Ee),g=0,Ue=Ide($e.configFile.configFileSpecs,Xc(Mo(Ee),_e),$e,Lt,Ze),S9e(Ue,Xc(Ee,_e),$e.configFile.configFileSpecs,Qe,mt)&&(ht=!0),Zi()}function Tu(){pe.assert(Ee),Gt(`Reloading config file: ${Ee}`),g=0,_t&&_t.clearCache(),Pr(),ge=!0,(_??(_=new Map)).set(void 0,void 0),Zi()}function Pr(){pe.assert(Ee),Pn(_Ee(Ee,Ne,Lt,V||(V=new Map),Te,Ze))}function Pn(bn){Ue=bn.fileNames,$e=bn.options,Ye=bn.watchOptions,Tt=bn.projectReferences,ot=bn.wildcardDirectories,Qe=dQ(bn).slice(),mt=vEe(bn.raw),ht=!0}function pt(bn){let ds=ks(bn),Mt=T?.get(ds);if(Mt){if(!Mt.updateLevel)return Mt.parsedCommandLine;if(Mt.parsedCommandLine&&Mt.updateLevel===1&&!s.getParsedCommandLine){Gt("Reloading new file names and options"),pe.assert($e);let Bt=Ide(Mt.parsedCommandLine.options.configFile.configFileSpecs,Xc(Mo(bn),_e),$e,Lt);return Mt.parsedCommandLine={...Mt.parsedCommandLine,fileNames:Bt},Mt.updateLevel=void 0,Mt.parsedCommandLine}}Gt(`Loading config file: ${bn}`);let cn=s.getParsedCommandLine?s.getParsedCommandLine(bn):on(bn);return Mt?(Mt.parsedCommandLine=cn,Mt.updateLevel=void 0):(T||(T=new Map)).set(ds,Mt={parsedCommandLine:cn}),(_??(_=new Map)).set(ds,bn),cn}function on(bn){let ds=Lt.onUnRecoverableConfigFileDiagnostic;Lt.onUnRecoverableConfigFileDiagnostic=Dc;let Mt=_Ee(bn,void 0,Lt,V||(V=new Map),Te);return Lt.onUnRecoverableConfigFileDiagnostic=ds,Mt}function it(bn){var ds;let Mt=ks(bn),cn=T?.get(Mt);cn&&(T.delete(Mt),cn.watchedDirectories&&Fy(cn.watchedDirectories,Cv),(ds=cn.watcher)==null||ds.close(),ttt(Mt,W))}function nr(bn,ds,Mt,cn,Bt,xe){return Pt(ds,(fr,Je)=>Mt(fr,Je,bn),cn,Bt,xe)}function Fr(bn,ds,Mt){Kr(bn,Mt,ds),ds===2&&ee.has(Mt)&&pr.invalidateResolutionOfFile(Mt),Gl(Mt),pa()}function Kr(bn,ds,Mt){_t&&_t.addOrDeleteFile(bn,ds,Mt)}function Dn(bn,ds){return T?.has(bn)?Vie:nr(bn,ds,hr,500,Ye,jm.MissingFile)}function hr(bn,ds,Mt){Kr(bn,Mt,ds),ds===0&&d.has(Mt)&&(d.get(Mt).close(),d.delete(Mt),Gl(Mt),pa())}function En(){HEe(h||(h=new Map),ot,Ni)}function Ni(bn,ds){return _r(bn,Mt=>{pe.assert(Ee),pe.assert($e);let cn=ks(Mt);_t&&_t.addOrDeleteFileOrDirectory(Mt,cn),Gl(cn),!YEe({watchedDirPath:ks(bn),fileOrDirectory:Mt,fileOrDirectoryPath:cn,configFileName:Ee,extraFileExtensions:Ze,options:$e,program:mn()||Ue,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})&&g!==2&&(g=1,pa())},ds,Ye,jm.WildcardDirectory)}function Gi(bn,ds,Mt,cn){z9e(bn,ds,W||(W=new Map),(Bt,xe)=>Pt(Bt,(fr,Je)=>{var In;Kr(Bt,xe,Je),V&&q9e(V,xe,ks);let Hn=(In=W.get(xe))==null?void 0:In.projects;Hn?.size&&Hn.forEach(Ot=>{if(Ee&&ks(Ee)===Ot)g=2;else{let $r=T?.get(Ot);$r&&($r.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(Ot)}pa()})},2e3,Mt,cn),ks)}function nn(bn,ds,Mt){var cn,Bt,xe,fr;Mt.watcher||(Mt.watcher=Pt(bn,(Je,In)=>{Kr(bn,ds,In);let Hn=T?.get(ds);Hn&&(Hn.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(ds),pa()},2e3,((cn=Mt.parsedCommandLine)==null?void 0:cn.watchOptions)||Ye,jm.ConfigFileOfReferencedProject)),HEe(Mt.watchedDirectories||(Mt.watchedDirectories=new Map),(Bt=Mt.parsedCommandLine)==null?void 0:Bt.wildcardDirectories,(Je,In)=>{var Hn;return _r(Je,Ot=>{let $r=ks(Ot);_t&&_t.addOrDeleteFileOrDirectory(Ot,$r),Gl($r);let ri=T?.get(ds);ri?.parsedCommandLine&&(YEe({watchedDirPath:ks(Je),fileOrDirectory:Ot,fileOrDirectoryPath:$r,configFileName:bn,options:ri.parsedCommandLine.options,program:ri.parsedCommandLine.fileNames,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})||ri.updateLevel!==2&&(ri.updateLevel=1,pa()))},In,((Hn=Mt.parsedCommandLine)==null?void 0:Hn.watchOptions)||Ye,jm.WildcardDirectoryOfReferencedProject)}),Gi(ds,(xe=Mt.parsedCommandLine)==null?void 0:xe.options,((fr=Mt.parsedCommandLine)==null?void 0:fr.watchOptions)||Ye,jm.ExtendedConfigOfReferencedProject)}}var e5t=(s=>(s[s.Unbuildable=0]="Unbuildable",s[s.UpToDate=1]="UpToDate",s[s.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",s[s.OutputMissing=3]="OutputMissing",s[s.ErrorReadingFile=4]="ErrorReadingFile",s[s.OutOfDateWithSelf=5]="OutOfDateWithSelf",s[s.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",s[s.OutOfDateBuildInfoWithPendingEmit=7]="OutOfDateBuildInfoWithPendingEmit",s[s.OutOfDateBuildInfoWithErrors=8]="OutOfDateBuildInfoWithErrors",s[s.OutOfDateOptions=9]="OutOfDateOptions",s[s.OutOfDateRoots=10]="OutOfDateRoots",s[s.UpstreamOutOfDate=11]="UpstreamOutOfDate",s[s.UpstreamBlocked=12]="UpstreamBlocked",s[s.ComputingUpstream=13]="ComputingUpstream",s[s.TsVersionOutputOfDate=14]="TsVersionOutputOfDate",s[s.UpToDateWithInputFileText=15]="UpToDateWithInputFileText",s[s.ContainerOnly=16]="ContainerOnly",s[s.ForceBuild=17]="ForceBuild",s))(e5t||{});function Xtt(s){return aA(s,".json")?s:Ro(s,"tsconfig.json")}var bws=new Date(-864e13);function Ews(s,c,g){let d=s.get(c),h;return d||(h=g(),s.set(c,h)),d||h}function t5t(s,c){return Ews(s,c,()=>new Map)}function Jtt(s){return s.now?s.now():new Date}function Fz(s){return!!s&&!!s.buildOrder}function $Ee(s){return Fz(s)?s.buildOrder:s}function _Ve(s,c){return g=>{let d=c?`[${AQ(qEe(s),"\x1B[90m")}] `:`${qEe(s)} - `;d+=`${wN(g.messageText,s.newLine)}${s.newLine+s.newLine}`,s.write(d)}}function Vrn(s,c,g,d){let h=Mtt(s,c);return h.getModifiedTime=s.getModifiedTime?_=>s.getModifiedTime(_):cm,h.setModifiedTime=s.setModifiedTime?(_,S)=>s.setModifiedTime(_,S):Dc,h.deleteFile=s.deleteFile?_=>s.deleteFile(_):Dc,h.reportDiagnostic=g||Gz(s),h.reportSolutionBuilderStatus=d||_Ve(s),h.now=$i(s,s.now),h}function r5t(s=yd,c,g,d,h){let _=Vrn(s,c,g,d);return _.reportErrorSummary=h,_}function n5t(s=yd,c,g,d,h){let _=Vrn(s,c,g,d),S=Ptt(s,h);return GA(_,S),_}function Sws(s){let c={};return d9e.forEach(g=>{Da(s,g.name)&&(c[g.name]=s[g.name])}),c.tscBuild=!0,c}function i5t(s,c,g){return snn(!1,s,c,g)}function s5t(s,c,g,d){return snn(!0,s,c,g,d)}function vws(s,c,g,d,h){let _=c,S=c,R=Sws(d),T=Ott(_,()=>Ie.projectCompilerOptions);hVe(T),T.getParsedCommandLine=_e=>Pie(Ie,_e,nk(Ie,_e)),T.resolveModuleNameLiterals=$i(_,_.resolveModuleNameLiterals),T.resolveTypeReferenceDirectiveReferences=$i(_,_.resolveTypeReferenceDirectiveReferences),T.resolveLibrary=$i(_,_.resolveLibrary),T.resolveModuleNames=$i(_,_.resolveModuleNames),T.resolveTypeReferenceDirectives=$i(_,_.resolveTypeReferenceDirectives),T.getModuleResolutionCache=$i(_,_.getModuleResolutionCache);let W,V;!T.resolveModuleNameLiterals&&!T.resolveModuleNames&&(W=Tie(T.getCurrentDirectory(),T.getCanonicalFileName),T.resolveModuleNameLiterals=(_e,Ee,Ne,Te,Ze)=>XEe(_e,Ee,Ne,Te,Ze,_,W,Att),T.getModuleResolutionCache=()=>W),!T.resolveTypeReferenceDirectiveReferences&&!T.resolveTypeReferenceDirectives&&(V=D9e(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,W?.getPackageJsonInfoCache(),W?.optionsToRedirectsKey),T.resolveTypeReferenceDirectiveReferences=(_e,Ee,Ne,Te,Ze)=>XEe(_e,Ee,Ne,Te,Ze,_,V,rVe));let M;T.resolveLibrary||(M=Tie(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,W?.getPackageJsonInfoCache()),T.resolveLibrary=(_e,Ee,Ne)=>k9e(_e,Ee,Ne,_,M)),T.getBuildInfo=(_e,Ee)=>jrn(Ie,_e,nk(Ie,Ee),void 0);let{watchFile:ee,watchDirectory:re,writeLog:ge}=Wtt(S,d),Ie={host:_,hostWithWatch:S,parseConfigFileHost:aVe(_),write:$i(_,_.trace),options:d,baseCompilerOptions:R,rootNames:g,baseWatchOptions:h,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:T,moduleResolutionCache:W,typeReferenceDirectiveResolutionCache:V,libraryResolutionCache:M,buildOrder:void 0,readFileWithCache:_e=>_.readFile(_e),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:s,watch:s,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:ee,watchDirectory:re,writeLog:ge};return Ie}function Ow(s,c){return Ou(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function nk(s,c){let{resolvedConfigFilePaths:g}=s,d=g.get(c);if(d!==void 0)return d;let h=Ow(s,c);return g.set(c,h),h}function Prn(s){return!!s.options}function Bws(s,c){let g=s.configFileCache.get(c);return g&&Prn(g)?g:void 0}function Pie(s,c,g){let{configFileCache:d}=s,h=d.get(g);if(h)return Prn(h)?h:void 0;Mc("SolutionBuilder::beforeConfigFileParsing");let _,{parseConfigFileHost:S,baseCompilerOptions:R,baseWatchOptions:T,extendedConfigCache:W,host:V}=s,M;return V.getParsedCommandLine?(M=V.getParsedCommandLine(c),M||(_=Nf(Z.File_0_not_found,c))):(S.onUnRecoverableConfigFileDiagnostic=ee=>_=ee,M=_Ee(c,R,S,W,T),S.onUnRecoverableConfigFileDiagnostic=Dc),d.set(g,M||_),Mc("SolutionBuilder::afterConfigFileParsing"),Pf("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),M}function e1e(s,c){return Xtt(AE(s.compilerHost.getCurrentDirectory(),c))}function Wrn(s,c){let g=new Map,d=new Map,h=[],_,S;for(let T of c)R(T);return S?{buildOrder:_||E,circularDiagnostics:S}:_||E;function R(T,W){let V=nk(s,T);if(d.has(V))return;if(g.has(V)){W||(S||(S=[])).push(Nf(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,h.join(`\r -`)));return}g.set(V,!0),h.push(T);let M=Pie(s,T,V);if(M&&M.projectReferences)for(let ee of M.projectReferences){let re=e1e(s,ee.path);R(re,W||ee.circular)}h.pop(),d.set(V,!0),(_||(_=[])).push(T)}}function yVe(s){return s.buildOrder||wws(s)}function wws(s){let c=Wrn(s,s.rootNames.map(h=>e1e(s,h)));s.resolvedConfigFilePaths.clear();let g=new Set($Ee(c).map(h=>nk(s,h))),d={onDeleteValue:Dc};return gN(s.configFileCache,g,d),gN(s.projectStatus,g,d),gN(s.builderPrograms,g,d),gN(s.diagnostics,g,d),gN(s.projectPendingBuild,g,d),gN(s.projectErrorsReported,g,d),gN(s.buildInfoCache,g,d),gN(s.outputTimeStamps,g,d),gN(s.lastCachedPackageJsonLookups,g,d),s.watch&&(gN(s.allWatchedConfigFiles,g,{onDeleteValue:dv}),s.allWatchedExtendedConfigFiles.forEach(h=>{h.projects.forEach(_=>{g.has(_)||h.projects.delete(_)}),h.close()}),gN(s.allWatchedWildcardDirectories,g,{onDeleteValue:h=>h.forEach(Cv)}),gN(s.allWatchedInputFiles,g,{onDeleteValue:h=>h.forEach(dv)}),gN(s.allWatchedPackageJsonFiles,g,{onDeleteValue:h=>h.forEach(dv)})),s.buildOrder=c}function Orn(s,c,g){let d=c&&e1e(s,c),h=yVe(s);if(Fz(h))return h;if(d){let S=nk(s,d);if(Se(h,T=>nk(s,T)===S)===-1)return}let _=d?Wrn(s,[d]):h;return pe.assert(!Fz(_)),pe.assert(!g||d!==void 0),pe.assert(!g||_[_.length-1]===d),g?_.slice(0,_.length-1):_}function Mrn(s){s.cache&&o5t(s);let{compilerHost:c,host:g}=s,d=s.readFileWithCache,h=c.getSourceFile,{originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:W,getSourceFileWithCache:V,readFileWithCache:M}=Gde(g,ee=>Ow(s,ee),(...ee)=>h.call(c,...ee));s.readFileWithCache=M,c.getSourceFile=V,s.cache={originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:W,originalReadFileWithCache:d,originalGetSourceFile:h}}function o5t(s){if(!s.cache)return;let{cache:c,host:g,compilerHost:d,extendedConfigCache:h,moduleResolutionCache:_,typeReferenceDirectiveResolutionCache:S,libraryResolutionCache:R}=s;g.readFile=c.originalReadFile,g.fileExists=c.originalFileExists,g.directoryExists=c.originalDirectoryExists,g.createDirectory=c.originalCreateDirectory,g.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,s.readFileWithCache=c.originalReadFileWithCache,h.clear(),_?.clear(),S?.clear(),R?.clear(),s.cache=void 0}function Hrn(s,c){s.projectStatus.delete(c),s.diagnostics.delete(c)}function Yrn({projectPendingBuild:s},c,g){let d=s.get(c);(d===void 0||ds.projectPendingBuild.set(nk(s,d),0)),c&&c.throwIfCancellationRequested()}var a5t=(s=>(s[s.Build=0]="Build",s[s.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",s))(a5t||{});function Xrn(s,c){return s.projectPendingBuild.delete(c),s.diagnostics.has(c)?1:0}function Tws(s,c,g,d,h){let _=!0;return{kind:1,project:c,projectPath:g,buildOrder:h,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{qrn(s,d,g),_=!1},done:()=>(_&&qrn(s,d,g),Mc("SolutionBuilder::Timestamps only updates"),Xrn(s,g))}}function Rws(s,c,g,d,h,_,S){let R=0,T,W;return{kind:0,project:c,projectPath:g,buildOrder:S,getCompilerOptions:()=>h.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>M(Fl),getProgram:()=>M(_e=>_e.getProgramOrUndefined()),getSourceFile:_e=>M(Ee=>Ee.getSourceFile(_e)),getSourceFiles:()=>ee(_e=>_e.getSourceFiles()),getOptionsDiagnostics:_e=>ee(Ee=>Ee.getOptionsDiagnostics(_e)),getGlobalDiagnostics:_e=>ee(Ee=>Ee.getGlobalDiagnostics(_e)),getConfigFileParsingDiagnostics:()=>ee(_e=>_e.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSyntacticDiagnostics(_e,Ee)),getAllDependencies:_e=>ee(Ee=>Ee.getAllDependencies(_e)),getSemanticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSemanticDiagnostics(_e,Ee)),getSemanticDiagnosticsOfNextAffectedFile:(_e,Ee)=>M(Ne=>Ne.getSemanticDiagnosticsOfNextAffectedFile&&Ne.getSemanticDiagnosticsOfNextAffectedFile(_e,Ee)),emit:(_e,Ee,Ne,Te,Ze)=>_e||Te?M(We=>{var Ue,$e;return We.emit(_e,Ee,Ne,Te,Ze||(($e=(Ue=s.host).getCustomTransformers)==null?void 0:$e.call(Ue,c)))}):(Ie(0,Ne),ge(Ee,Ne,Ze)),done:V};function V(_e,Ee,Ne){return Ie(3,_e,Ee,Ne),Mc("SolutionBuilder::Projects built"),Xrn(s,g)}function M(_e){return Ie(0),T&&_e(T)}function ee(_e){return M(_e)||E}function re(){var _e,Ee,Ne;if(pe.assert(T===void 0),s.options.dry){C1(s,Z.A_non_dry_build_would_build_project_0,c),W=1,R=2;return}if(s.options.verbose&&C1(s,Z.Building_project_0,c),h.fileNames.length===0){t1e(s,g,dQ(h)),W=0,R=2;return}let{host:Te,compilerHost:Ze}=s;if(s.projectCompilerOptions=h.options,(_e=s.moduleResolutionCache)==null||_e.update(h.options),(Ee=s.typeReferenceDirectiveResolutionCache)==null||Ee.update(h.options),T=Te.createProgram(h.fileNames,h.options,Ze,Nws(s,g,h),dQ(h),h.projectReferences),s.watch){let We=(Ne=s.moduleResolutionCache)==null?void 0:Ne.getPackageJsonInfoCache().getInternalMap();s.lastCachedPackageJsonLookups.set(g,We&&new Set(Do(We.values(),Ue=>s.host.realpath&&(N9e(Ue)||Ue.directoryExists)?s.host.realpath(Ro(Ue.packageDirectory,"package.json")):Ro(Ue.packageDirectory,"package.json")))),s.builderPrograms.set(g,T)}R++}function ge(_e,Ee,Ne){var Te,Ze,We;pe.assertIsDefined(T),pe.assert(R===1);let{host:Ue,compilerHost:$e}=s,Ye=new Map,Tt=T.getCompilerOptions(),ot=DP(Tt),Qe,mt,{emitResult:ht,diagnostics:_t}=fVe(T,Rt=>Ue.reportDiagnostic(Rt),s.write,void 0,(Rt,Lt,Ke,Pt,_r,Gt)=>{var nt;let Dt=Ow(s,Rt);if(Ye.set(Ow(s,Rt),Rt),Gt?.buildInfo){mt||(mt=Jtt(s.host));let ur=(nt=T.hasChangedEmitSignature)==null?void 0:nt.call(T),Gr=jtt(s,Rt,g);Gr?(Gr.buildInfo=Gt.buildInfo,Gr.modifiedTime=mt,ur&&(Gr.latestChangedDtsTime=mt)):s.buildInfoCache.set(g,{path:Ow(s,Rt),buildInfo:Gt.buildInfo,modifiedTime:mt,latestChangedDtsTime:ur?mt:void 0})}let tr=Gt?.differsOnlyInMap?bb(s.host,Rt):void 0;(_e||$e.writeFile)(Rt,Lt,Ke,Pt,_r,Gt),Gt?.differsOnlyInMap?s.host.setModifiedTime(Rt,tr):!ot&&s.watch&&(Qe||(Qe=l5t(s,g))).set(Dt,mt||(mt=Jtt(s.host)))},Ee,void 0,Ne||((Ze=(Te=s.host).getCustomTransformers)==null?void 0:Ze.call(Te,c)));return(!Tt.noEmitOnError||!_t.length)&&(Ye.size||_.type!==8)&&zrn(s,h,g,Z.Updating_unchanged_output_timestamps_of_project_0,Ye),s.projectErrorsReported.set(g,!0),W=(We=T.hasChangedEmitSignature)!=null&&We.call(T)?0:2,_t.length?(s.diagnostics.set(g,_t),s.projectStatus.set(g,{type:0,reason:"it had errors"}),W|=4):(s.diagnostics.delete(g),s.projectStatus.set(g,{type:1,oldestOutputFileName:iA(Ye.values())??jet(h,!Ue.useCaseSensitiveFileNames())})),Dws(s,T),R=2,ht}function Ie(_e,Ee,Ne,Te){for(;R<=_e&&R<3;){let Ze=R;switch(R){case 0:re();break;case 1:ge(Ne,Ee,Te);break;case 2:Fws(s,c,g,d,h,S,pe.checkDefined(W)),R++;break;case 3:default:}pe.assert(R>Ze)}}}function Jrn(s,c,g){if(!s.projectPendingBuild.size||Fz(c))return;let{options:d,projectPendingBuild:h}=s;for(let _=0;_{let re=pe.checkDefined(s.filesWatched.get(R));pe.assert(Utt(re)),re.modifiedTime=ee,re.callbacks.forEach(ge=>ge(V,M,ee))},d,h,_,S);s.filesWatched.set(R,{callbacks:[g],watcher:W,modifiedTime:T})}return{close:()=>{let W=pe.checkDefined(s.filesWatched.get(R));pe.assert(Utt(W)),W.callbacks.length===1?(s.filesWatched.delete(R),Cv(W)):ef(W.callbacks,g)}}}function l5t(s,c){if(!s.watch)return;let g=s.outputTimeStamps.get(c);return g||s.outputTimeStamps.set(c,g=new Map),g}function jtt(s,c,g){let d=Ow(s,c),h=s.buildInfoCache.get(g);return h?.path===d?h:void 0}function jrn(s,c,g,d){let h=Ow(s,c),_=s.buildInfoCache.get(g);if(_!==void 0&&_.path===h)return _.buildInfo||void 0;let S=s.readFileWithCache(c),R=S?$et(c,S):void 0;return s.buildInfoCache.set(g,{path:h,buildInfo:R||!1,modifiedTime:d||Rh}),R}function u5t(s,c,g,d){let h=Krn(s,c);if(gZe&&(Te=_t,Ze=Rt),Ue.add(Lt)}let Ye;if(_e?($e||($e=Ett(_e,M,V)),Ye=Dh($e.roots,(_t,Rt)=>Ue.has(Rt)?void 0:Rt)):Ye=F(H3t(Ie,M,V),_t=>Ue.has(_t)?void 0:_t),Ye)return{type:10,buildInfoFile:M,inputFile:Ye};if(!ee){let _t=K9e(c,!V.useCaseSensitiveFileNames()),Rt=l5t(s,g);for(let Lt of _t){if(Lt===M)continue;let Ke=Ow(s,Lt),Pt=Rt?.get(Ke);if(Pt||(Pt=bb(s.host,Lt),Rt?.set(Ke,Pt)),Pt===Rh)return{type:3,missingOutputFileName:Lt};if(Ptu5t(s,_t,Ee,Ne));if(Qe)return Qe;let mt=s.lastCachedPackageJsonLookups.get(g),ht=mt&&SB(mt,_t=>u5t(s,_t,Ee,Ne));return ht||{type:Tt?2:We?15:1,newestInputFileTime:Ze,newestInputFileName:Te,oldestOutputFileName:Ne}}function xws(s,c,g){return s.buildInfoCache.get(g).path===c.path}function g5t(s,c,g){if(c===void 0)return{type:0,reason:"config file deleted mid-build"};let d=s.projectStatus.get(g);if(d!==void 0)return d;Mc("SolutionBuilder::beforeUpToDateCheck");let h=kws(s,c,g);return Mc("SolutionBuilder::afterUpToDateCheck"),Pf("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),s.projectStatus.set(g,h),h}function zrn(s,c,g,d,h){if(c.options.noEmit)return;let _,S=U3(c.options),R=DP(c.options);if(S&&R){h?.has(Ow(s,S))||(s.options.verbose&&C1(s,d,c.options.configFilePath),s.host.setModifiedTime(S,_=Jtt(s.host)),jtt(s,S,g).modifiedTime=_),s.outputTimeStamps.delete(g);return}let{host:T}=s,W=K9e(c,!T.useCaseSensitiveFileNames()),V=l5t(s,g),M=V?new Set:void 0;if(!h||W.length!==h.size){let ee=!!s.options.verbose;for(let re of W){let ge=Ow(s,re);h?.has(ge)||(ee&&(ee=!1,C1(s,d,c.options.configFilePath)),T.setModifiedTime(re,_||(_=Jtt(s.host))),re===S?jtt(s,S,g).modifiedTime=_:V&&(V.set(ge,_),M.add(ge)))}}V?.forEach((ee,re)=>{!h?.has(re)&&!M.has(re)&&V.delete(re)})}function Gws(s,c,g){if(!c.composite)return;let d=pe.checkDefined(s.buildInfoCache.get(g));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let h=d.buildInfo&&jEe(d.buildInfo)&&d.buildInfo.latestChangedDtsFile?s.host.getModifiedTime(Xc(d.buildInfo.latestChangedDtsFile,Mo(d.path))):void 0;return d.latestChangedDtsTime=h||!1,h}function qrn(s,c,g){if(s.options.dry)return C1(s,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);zrn(s,c,g,Z.Updating_output_timestamps_of_project_0),s.projectStatus.set(g,{type:1,oldestOutputFileName:jet(c,!s.host.useCaseSensitiveFileNames())})}function Fws(s,c,g,d,h,_,S){if(!(s.options.stopBuildOnErrors&&S&4)&&h.options.composite)for(let R=d+1;R<_.length;R++){let T=_[R],W=nk(s,T);if(s.projectPendingBuild.has(W))continue;let V=Pie(s,T,W);if(!(!V||!V.projectReferences))for(let M of V.projectReferences){let ee=e1e(s,M.path);if(nk(s,ee)!==g)continue;let re=s.projectStatus.get(W);if(re)switch(re.type){case 1:if(S&2){re.type=2;break}case 15:case 2:S&2||s.projectStatus.set(W,{type:6,outOfDateOutputFileName:re.oldestOutputFileName,newerProjectName:c});break;case 12:nk(s,e1e(s,re.upstreamProjectName))===g&&Hrn(s,W);break}Yrn(s,W,0);break}}}function $rn(s,c,g,d,h,_){Mc("SolutionBuilder::beforeBuild");let S=Zws(s,c,g,d,h,_);return Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),S}function Zws(s,c,g,d,h,_){let S=Orn(s,c,_);if(!S)return 3;Qrn(s,g);let R=!0,T=0;for(;;){let W=c5t(s,S,R);if(!W)break;R=!1,W.done(g,d,h?.(W.project)),s.diagnostics.has(W.projectPath)||T++}return o5t(s),ann(s,S),Wws(s,S),Fz(S)?4:S.some(W=>s.diagnostics.has(nk(s,W)))?T?2:1:0}function enn(s,c,g){Mc("SolutionBuilder::beforeClean");let d=Lws(s,c,g);return Mc("SolutionBuilder::afterClean"),Pf("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function Lws(s,c,g){let d=Orn(s,c,g);if(!d)return 3;if(Fz(d))return ztt(s,d.circularDiagnostics),4;let{options:h,host:_}=s,S=h.dry?[]:void 0;for(let R of d){let T=nk(s,R),W=Pie(s,R,T);if(W===void 0){onn(s,T);continue}let V=K9e(W,!_.useCaseSensitiveFileNames());if(!V.length)continue;let M=new Set(W.fileNames.map(ee=>Ow(s,ee)));for(let ee of V)M.has(Ow(s,ee))||_.fileExists(ee)&&(S?S.push(ee):(_.deleteFile(ee),A5t(s,T,0)))}return S&&C1(s,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,S.map(R=>`\r - * ${R}`).join("")),0}function A5t(s,c,g){s.host.getParsedCommandLine&&g===1&&(g=2),g===2&&(s.configFileCache.delete(c),s.buildOrder=void 0),s.needsSummary=!0,Hrn(s,c),Yrn(s,c,g),Mrn(s)}function bVe(s,c,g){s.reportFileChangeDetected=!0,A5t(s,c,g),tnn(s,250,!0)}function tnn(s,c,g){let{hostWithWatch:d}=s;!d.setTimeout||!d.clearTimeout||(s.timerToBuildInvalidatedProject&&d.clearTimeout(s.timerToBuildInvalidatedProject),s.timerToBuildInvalidatedProject=d.setTimeout(Vws,c,"timerToBuildInvalidatedProject",s,g))}function Vws(s,c,g){Mc("SolutionBuilder::beforeBuild");let d=Pws(c,g);Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&ann(c,d)}function Pws(s,c){s.timerToBuildInvalidatedProject=void 0,s.reportFileChangeDetected&&(s.reportFileChangeDetected=!1,s.projectErrorsReported.clear(),f5t(s,Z.File_change_detected_Starting_incremental_compilation));let g=0,d=yVe(s),h=c5t(s,d,!1);if(h)for(h.done(),g++;s.projectPendingBuild.size;){if(s.timerToBuildInvalidatedProject)return;let _=Jrn(s,d,!1);if(!_)break;if(_.kind!==1&&(c||g===5)){tnn(s,100,!1);return}Urn(s,_,d).done(),_.kind!==1&&g++}return o5t(s),d}function rnn(s,c,g,d){!s.watch||s.allWatchedConfigFiles.has(g)||s.allWatchedConfigFiles.set(g,Ktt(s,c,()=>bVe(s,g,2),2e3,d?.watchOptions,jm.ConfigFile,c))}function nnn(s,c,g){z9e(c,g?.options,s.allWatchedExtendedConfigFiles,(d,h)=>Ktt(s,d,()=>{var _;return(_=s.allWatchedExtendedConfigFiles.get(h))==null?void 0:_.projects.forEach(S=>bVe(s,S,2))},2e3,g?.watchOptions,jm.ExtendedConfigFile),d=>Ow(s,d))}function inn(s,c,g,d){s.watch&&HEe(t5t(s.allWatchedWildcardDirectories,g),d.wildcardDirectories,(h,_)=>s.watchDirectory(h,S=>{var R;YEe({watchedDirPath:Ow(s,h),fileOrDirectory:S,fileOrDirectoryPath:Ow(s,S),configFileName:c,currentDirectory:s.compilerHost.getCurrentDirectory(),options:d.options,program:s.builderPrograms.get(g)||((R=Bws(s,g))==null?void 0:R.fileNames),useCaseSensitiveFileNames:s.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:T=>s.writeLog(T),toPath:T=>Ow(s,T)})||bVe(s,g,1)},_,d?.watchOptions,jm.WildcardDirectory,c))}function d5t(s,c,g,d){s.watch&&Q7(t5t(s.allWatchedInputFiles,g),new Set(d.fileNames),{createNewValue:h=>Ktt(s,h,()=>bVe(s,g,0),250,d?.watchOptions,jm.SourceFile,c),onDeleteValue:dv})}function p5t(s,c,g,d){!s.watch||!s.lastCachedPackageJsonLookups||Q7(t5t(s.allWatchedPackageJsonFiles,g),s.lastCachedPackageJsonLookups.get(g),{createNewValue:h=>Ktt(s,h,()=>bVe(s,g,0),2e3,d?.watchOptions,jm.PackageJson,c),onDeleteValue:dv})}function Wws(s,c){if(s.watchAllProjectsPending){Mc("SolutionBuilder::beforeWatcherCreation"),s.watchAllProjectsPending=!1;for(let g of $Ee(c)){let d=nk(s,g),h=Pie(s,g,d);rnn(s,g,d,h),nnn(s,d,h),h&&(inn(s,g,d,h),d5t(s,g,d,h),p5t(s,g,d,h))}Mc("SolutionBuilder::afterWatcherCreation"),Pf("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function Ows(s){Fy(s.allWatchedConfigFiles,dv),Fy(s.allWatchedExtendedConfigFiles,Cv),Fy(s.allWatchedWildcardDirectories,c=>Fy(c,Cv)),Fy(s.allWatchedInputFiles,c=>Fy(c,dv)),Fy(s.allWatchedPackageJsonFiles,c=>Fy(c,dv))}function snn(s,c,g,d,h){let _=vws(s,c,g,d,h);return{build:(S,R,T,W)=>$rn(_,S,R,T,W),clean:S=>enn(_,S),buildReferences:(S,R,T,W)=>$rn(_,S,R,T,W,!0),cleanReferences:S=>enn(_,S,!0),getNextInvalidatedProject:S=>(Qrn(_,S),c5t(_,yVe(_),!1)),getBuildOrder:()=>yVe(_),getUpToDateStatusOfProject:S=>{let R=e1e(_,S),T=nk(_,R);return g5t(_,Pie(_,R,T),T)},invalidateProject:(S,R)=>A5t(_,S,R||0),close:()=>Ows(_)}}function G_(s,c){return r2(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function C1(s,c,...g){s.host.reportSolutionBuilderStatus(Nf(c,...g))}function f5t(s,c,...g){var d,h;(h=(d=s.hostWithWatch).onWatchStatusChange)==null||h.call(d,Nf(c,...g),s.host.getNewLine(),s.baseCompilerOptions)}function ztt({host:s},c){c.forEach(g=>s.reportDiagnostic(g))}function t1e(s,c,g){ztt(s,g),s.projectErrorsReported.set(c,!0),g.length&&s.diagnostics.set(c,g)}function onn(s,c){t1e(s,c,[s.configFileCache.get(c)])}function ann(s,c){if(!s.needsSummary)return;s.needsSummary=!1;let g=s.watch||!!s.host.reportErrorSummary,{diagnostics:d}=s,h=0,_=[];Fz(c)?(cnn(s,c.buildOrder),ztt(s,c.circularDiagnostics),g&&(h+=dVe(c.circularDiagnostics)),g&&(_=[..._,...pVe(c.circularDiagnostics)])):(c.forEach(S=>{let R=nk(s,S);s.projectErrorsReported.has(R)||ztt(s,d.get(R)||E)}),g&&d.forEach(S=>h+=dVe(S)),g&&d.forEach(S=>[..._,...pVe(S)])),s.watch?f5t(s,Ntt(h),h):s.host.reportErrorSummary&&s.host.reportErrorSummary(h,_)}function cnn(s,c){s.options.verbose&&C1(s,Z.Projects_in_this_build_Colon_0,c.map(g=>`\r - * `+G_(s,g)).join(""))}function Mws(s,c,g){switch(g.type){case 5:return C1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,G_(s,c),G_(s,g.outOfDateOutputFileName),G_(s,g.newerInputFileName));case 6:return C1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,G_(s,c),G_(s,g.outOfDateOutputFileName),G_(s,g.newerProjectName));case 3:return C1(s,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,G_(s,c),G_(s,g.missingOutputFileName));case 4:return C1(s,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,G_(s,c),G_(s,g.fileName));case 7:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,G_(s,c),G_(s,g.buildInfoFile));case 8:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors,G_(s,c),G_(s,g.buildInfoFile));case 9:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,G_(s,c),G_(s,g.buildInfoFile));case 10:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,G_(s,c),G_(s,g.buildInfoFile),G_(s,g.inputFile));case 1:if(g.newestInputFileTime!==void 0)return C1(s,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,G_(s,c),G_(s,g.newestInputFileName||""),G_(s,g.oldestOutputFileName||""));break;case 2:return C1(s,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,G_(s,c));case 15:return C1(s,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,G_(s,c));case 11:return C1(s,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,G_(s,c),G_(s,g.upstreamProjectName));case 12:return C1(s,g.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,G_(s,c),G_(s,g.upstreamProjectName));case 0:return C1(s,Z.Project_0_is_out_of_date_because_1,G_(s,c),g.reason);case 14:return C1(s,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,G_(s,c),g.version,C);case 17:return C1(s,Z.Project_0_is_being_forcibly_rebuilt,G_(s,c));case 16:case 13:break;default:}}function qtt(s,c,g){s.options.verbose&&Mws(s,c,g)}var I5t=(s=>(s[s.time=0]="time",s[s.count=1]="count",s[s.memory=2]="memory",s))(I5t||{});function Hws(s){let c=Yws();return F(s.getSourceFiles(),g=>{let d=Qws(s,g),h=rn(g).length;c.set(d,c.get(d)+h)}),c}function Yws(){let s=new Map;return s.set("Library",0),s.set("Definitions",0),s.set("TypeScript",0),s.set("JavaScript",0),s.set("JSON",0),s.set("Other",0),s}function Qws(s,c){if(s.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let g=c.path;return fu(g,vbe)?"TypeScript":fu(g,uU)?"JavaScript":aA(g,".json")?"JSON":"Other"}function $tt(s,c,g){return EVe(s,g)?Gz(s,!0):c}function lnn(s){return!!s.writeOutputIsTTY&&s.writeOutputIsTTY()&&!s.getEnvironmentVariable("NO_COLOR")}function EVe(s,c){return!c||typeof c.pretty>"u"?lnn(s):c.pretty}function unn(s){return s.options.all?bo(Ww.concat(SU),(c,g)=>Fs(c.name,g.name)):Me(Ww.concat(SU),c=>!!c.showInSimplifiedHelpView)}function ert(s){s.write(Zb(Z.Version_0,C)+s.newLine)}function trt(s){if(!lnn(s))return{bold:V=>V,blue:V=>V,blueBackground:V=>V,brightWhite:V=>V};function g(V){return`\x1B[1m${V}\x1B[22m`}let d=s.getEnvironmentVariable("OS")&&s.getEnvironmentVariable("OS").toLowerCase().includes("windows"),h=s.getEnvironmentVariable("WT_SESSION"),_=s.getEnvironmentVariable("TERM_PROGRAM")&&s.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function S(V){return d&&!h&&!_?W(V):`\x1B[94m${V}\x1B[39m`}let R=s.getEnvironmentVariable("COLORTERM")==="truecolor"||s.getEnvironmentVariable("TERM")==="xterm-256color";function T(V){return R?`\x1B[48;5;68m${V}\x1B[39;49m`:`\x1B[44m${V}\x1B[39;49m`}function W(V){return`\x1B[97m${V}\x1B[39m`}return{bold:g,blue:S,brightWhite:W,blueBackground:T}}function gnn(s){return`--${s.name}${s.shortName?`, -${s.shortName}`:""}`}function Xws(s,c,g,d){var h;let _=[],S=trt(s),R=gnn(c),T=ge(c),W=typeof c.defaultValueDescription=="object"?Zb(c.defaultValueDescription):M(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),V=((h=s.getWidthOfTerminal)==null?void 0:h.call(s))??0;if(V>=80){let Ie="";c.description&&(Ie=Zb(c.description)),_.push(...re(R,Ie,g,d,V,!0),s.newLine),ee(T,c)&&(T&&_.push(...re(T.valueType,T.possibleValues,g,d,V,!1),s.newLine),W&&_.push(...re(Zb(Z.default_Colon),W,g,d,V,!1),s.newLine)),_.push(s.newLine)}else{if(_.push(S.blue(R),s.newLine),c.description){let Ie=Zb(c.description);_.push(Ie)}if(_.push(s.newLine),ee(T,c)){if(T&&_.push(`${T.valueType} ${T.possibleValues}`),W){T&&_.push(s.newLine);let Ie=Zb(Z.default_Colon);_.push(`${Ie} ${W}`)}_.push(s.newLine)}_.push(s.newLine)}return _;function M(Ie,_e){return Ie!==void 0&&typeof _e=="object"?Do(_e.entries()).filter(([,Ee])=>Ee===Ie).map(([Ee])=>Ee).join("/"):String(Ie)}function ee(Ie,_e){let Ee=["string"],Ne=[void 0,"false","n/a"],Te=_e.defaultValueDescription;return!(_e.category===Z.Command_line_Options||k(Ee,Ie?.possibleValues)&&k(Ne,Te))}function re(Ie,_e,Ee,Ne,Te,Ze){let We=[],Ue=!0,$e=_e,Ye=Te-Ne;for(;$e.length>0;){let Tt="";Ue?(Tt=Ie.padStart(Ee),Tt=Tt.padEnd(Ne),Tt=Ze?S.blue(Tt):Tt):Tt="".padStart(Ne);let ot=$e.substr(0,Ye);$e=$e.slice(Ye),We.push(`${Tt}${ot}`),Ue=!1}return We}function ge(Ie){if(Ie.type==="object")return;return{valueType:_e(Ie),possibleValues:Ee(Ie)};function _e(Ne){switch(pe.assert(Ne.type!=="listOrElement"),Ne.type){case"string":case"number":case"boolean":return Zb(Z.type_Colon);case"list":return Zb(Z.one_or_more_Colon);default:return Zb(Z.one_of_Colon)}}function Ee(Ne){let Te;switch(Ne.type){case"string":case"number":case"boolean":Te=Ne.type;break;case"list":case"listOrElement":Te=Ee(Ne.element);break;case"object":Te="";break;default:let Ze={};return Ne.type.forEach((We,Ue)=>{var $e;($e=Ne.deprecatedKeys)!=null&&$e.has(Ue)||(Ze[We]||(Ze[We]=[])).push(Ue)}),Object.entries(Ze).map(([,We])=>We.join("/")).join(", ")}return Te}}}function Ann(s,c){let g=0;for(let S of c){let R=gnn(S).length;g=g>R?g:R}let d=g+2,h=d+2,_=[];for(let S of c){let R=Xws(s,S,d,h);_=[..._,...R]}return _[_.length-2]!==s.newLine&&_.push(s.newLine),_}function r1e(s,c,g,d,h,_){let S=[];if(S.push(trt(s).bold(c)+s.newLine+s.newLine),h&&S.push(h+s.newLine+s.newLine),!d)return S=[...S,...Ann(s,g)],_&&S.push(_+s.newLine+s.newLine),S;let R=new Map;for(let T of g){if(!T.category)continue;let W=Zb(T.category),V=R.get(W)??[];V.push(T),R.set(W,V)}return R.forEach((T,W)=>{S.push(`### ${W}${s.newLine}${s.newLine}`),S=[...S,...Ann(s,T)]}),_&&S.push(_+s.newLine+s.newLine),S}function Jws(s,c){let g=trt(s),d=[...rrt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];d.push(g.bold(Zb(Z.COMMON_COMMANDS))+s.newLine+s.newLine),S("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),S("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),S("tsc -b",Z.Build_a_composite_project_in_the_working_directory),S("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),S("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),S("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),S(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let h=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),_=c.filter(R=>!k(h,R));d=[...d,...r1e(s,Zb(Z.COMMAND_LINE_FLAGS),h,!1,void 0,void 0),...r1e(s,Zb(Z.COMMON_COMPILER_OPTIONS),_,!1,void 0,XY(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)s.write(R);function S(R,T){let W=typeof R=="string"?[R]:R;for(let V of W)d.push(" "+g.blue(V)+s.newLine);d.push(" "+Zb(T)+s.newLine+s.newLine)}}function Uws(s,c,g,d){let h=[...rrt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];h=[...h,...r1e(s,Zb(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,XY(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],h=[...h,...r1e(s,Zb(Z.WATCH_OPTIONS),d,!1,Zb(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],h=[...h,...r1e(s,Zb(Z.BUILD_OPTIONS),Me(g,_=>_!==SU),!1,XY(Z.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(let _ of h)s.write(_)}function dnn(s,c){let g=[...rrt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];g=[...g,...r1e(s,Zb(Z.BUILD_OPTIONS),Me(c,d=>d!==SU),!1,XY(Z.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(let d of g)s.write(d)}function rrt(s,c){var g;let d=trt(s),h=[],_=((g=s.getWidthOfTerminal)==null?void 0:g.call(s))??0,S=5,R=d.blueBackground("".padStart(S)),T=d.blueBackground(d.brightWhite("TS ".padStart(S)));if(_>=c.length+S){let V=(_>120?120:_)-S;h.push(c.padEnd(V)+R+s.newLine),h.push("".padStart(V)+T+s.newLine)}else h.push(c+s.newLine),h.push(s.newLine);return h}function pnn(s,c){c.options.all?Uws(s,unn(c),Y$e,wz):Jws(s,unn(c))}function fnn(s,c,g){let d=Gz(s),h;if(g.options.locale&&yx(g.options.locale,s,g.errors),g.errors.length>0)return g.errors.forEach(d),s.exit(1);if(g.options.init)return qws(s,d,g.options),s.exit(0);if(g.options.version)return ert(s),s.exit(0);if(g.options.help||g.options.all)return pnn(s,g),s.exit(0);if(g.options.watch&&g.options.listFilesOnly)return d(Nf(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),s.exit(1);if(g.options.project){if(g.fileNames.length!==0)return d(Nf(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),s.exit(1);let R=iu(g.options.project);if(!R||s.directoryExists(R)){if(h=Ro(R,"tsconfig.json"),!s.fileExists(h))return d(Nf(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,g.options.project)),s.exit(1)}else if(h=R,!s.fileExists(h))return d(Nf(Z.The_specified_path_does_not_exist_Colon_0,g.options.project)),s.exit(1)}else if(g.fileNames.length===0){let R=iu(s.getCurrentDirectory());h=itt(R,T=>s.fileExists(T))}if(g.fileNames.length===0&&!h)return g.options.showConfig?d(Nf(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,iu(s.getCurrentDirectory()))):(ert(s),pnn(s,g)),s.exit(1);let _=s.getCurrentDirectory(),S=y9e(g.options,R=>Xc(R,_));if(h){let R=new Map,T=z3t(h,S,R,g.watchOptions,s,d);if(S.showConfig)return T.errors.length!==0?(d=$tt(s,d,T.options),T.errors.forEach(d),s.exit(1)):(s.write(JSON.stringify(z$e(T,h,s),null,4)+s.newLine),s.exit(0));if(d=$tt(s,d,T.options),cbe(T.options))return m5t(s,d)?void 0:Kws(s,c,d,T,S,g.watchOptions,R);DP(T.options)?Cnn(s,c,d,T):mnn(s,c,d,T)}else{if(S.showConfig)return s.write(JSON.stringify(z$e(g,Ro(_,"tsconfig.json"),s),null,4)+s.newLine),s.exit(0);if(d=$tt(s,d,S),cbe(S))return m5t(s,d)?void 0:jws(s,c,d,g.fileNames,S,g.watchOptions);DP(S)?Cnn(s,c,d,{...g,options:S}):mnn(s,c,d,{...g,options:S})}}function h5t(s){if(s.length>0&&s[0].charCodeAt(0)===45){let c=s[0].slice(s[0].charCodeAt(1)===45?2:1).toLowerCase();return c===SU.name||c===SU.shortName}return!1}function Inn(s,c,g){if(h5t(g)){let{buildOptions:h,watchOptions:_,projects:S,errors:R}=NWt(g);if(h.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(h.generateCpuProfile,()=>hnn(s,c,h,_,S,R));else return hnn(s,c,h,_,S,R)}let d=TWt(g,h=>s.readFile(h));if(d.options.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(d.options.generateCpuProfile,()=>fnn(s,c,d));else return fnn(s,c,d)}function m5t(s,c){return!s.watchFile||!s.watchDirectory?(c(Nf(Z.The_current_host_does_not_support_the_0_option,"--watch")),s.exit(1),!0):!1}var SVe=2;function hnn(s,c,g,d,h,_){let S=$tt(s,Gz(s),g);if(g.locale&&yx(g.locale,s,_),_.length>0)return _.forEach(S),s.exit(1);if(g.help||h.length===0)return ert(s),dnn(s,CEe),s.exit(0);if(!s.getModifiedTime||!s.setModifiedTime||g.clean&&!s.deleteFile)return S(Nf(Z.The_current_host_does_not_support_the_0_option,"--build")),s.exit(1);if(g.watch){if(m5t(s,S))return;let M=n5t(s,void 0,S,_Ve(s,EVe(s,g)),_5t(s,g));M.jsDocParsingMode=SVe;let ee=Enn(s,g);_nn(s,c,M,ee);let re=M.onWatchStatusChange,ge=!1;M.onWatchStatusChange=(_e,Ee,Ne,Te)=>{re?.(_e,Ee,Ne,Te),ge&&(_e.code===Z.Found_0_errors_Watching_for_file_changes.code||_e.code===Z.Found_1_error_Watching_for_file_changes.code)&&y5t(Ie,ee)};let Ie=s5t(M,h,g,d);return Ie.build(),y5t(Ie,ee),ge=!0,Ie}let R=r5t(s,void 0,S,_Ve(s,EVe(s,g)),C5t(s,g));R.jsDocParsingMode=SVe;let T=Enn(s,g);_nn(s,c,R,T);let W=i5t(R,h,g),V=g.clean?W.clean():W.build();return y5t(W,T),jf(),s.exit(V)}function C5t(s,c){return EVe(s,c)?(g,d)=>s.write(Dtt(g,d,s.newLine,s)):void 0}function mnn(s,c,g,d){let{fileNames:h,options:_,projectReferences:S}=d,R=$9e(_,void 0,s);R.jsDocParsingMode=SVe;let T=R.getCurrentDirectory(),W=_d(R.useCaseSensitiveFileNames());Gde(R,re=>Ou(re,T,W)),b5t(s,_,!1);let V={rootNames:h,options:_,projectReferences:S,host:R,configFileParsingDiagnostics:dQ(d)},M=UEe(V),ee=Vtt(M,g,re=>s.write(re+s.newLine),C5t(s,_));return irt(s,M,void 0),c(M),s.exit(ee)}function Cnn(s,c,g,d){let{options:h,fileNames:_,projectReferences:S}=d;b5t(s,h,!1);let R=CVe(h,s);R.jsDocParsingMode=SVe;let T=q3t({host:R,system:s,rootNames:_,options:h,configFileParsingDiagnostics:dQ(d),projectReferences:S,reportDiagnostic:g,reportErrorSummary:C5t(s,h),afterProgramEmitAndDiagnostics:W=>{irt(s,W.getProgram(),void 0),c(W)}});return s.exit(T)}function _nn(s,c,g,d){ynn(s,g,!0),g.afterProgramEmitAndDiagnostics=h=>{irt(s,h.getProgram(),d),c(h)}}function ynn(s,c,g){let d=c.createProgram;c.createProgram=(h,_,S,R,T,W)=>(pe.assert(h!==void 0||_===void 0&&!!R),_!==void 0&&b5t(s,_,g),d(h,_,S,R,T,W))}function bnn(s,c,g){g.jsDocParsingMode=SVe,ynn(s,g,!1);let d=g.afterProgramCreate;g.afterProgramCreate=h=>{d(h),irt(s,h.getProgram(),void 0),c(h)}}function _5t(s,c){return Rtt(s,EVe(s,c))}function Kws(s,c,g,d,h,_,S){let R=Htt({configFileName:d.options.configFilePath,optionsToExtend:h,watchOptionsToExtend:_,system:s,reportDiagnostic:g,reportWatchStatus:_5t(s,d.options)});return bnn(s,c,R),R.configFileParsingResult=d,R.extendedConfigCache=S,Qtt(R)}function jws(s,c,g,d,h,_){let S=Ytt({rootFiles:d,options:h,watchOptions:_,system:s,reportDiagnostic:g,reportWatchStatus:_5t(s,h)});return bnn(s,c,S),Qtt(S)}function Enn(s,c){if(s===yd&&c.extendedDiagnostics)return na(),zws()}function zws(){let s;return{addAggregateStatistic:c,forEachAggregateStatistics:g,clear:d};function c(h){let _=s?.get(h.name);_?_.type===2?_.value=Math.max(_.value,h.value):_.value+=h.value:(s??(s=new Map)).set(h.name,h)}function g(h){s?.forEach(h)}function d(){s=void 0}}function y5t(s,c){if(!c)return;if(!cs()){yd.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` -`);return}let g=[];g.push({name:"Projects in scope",value:$Ee(s.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(_=>{_.name=`Aggregate ${_.name}`,g.push(_)}),QS((_,S)=>{nrt(_)&&g.push({name:`${h(_)} time`,value:S,type:0})}),ko(),na(),c.clear(),Bnn(yd,g);function d(_){let S=sE(_);S&&g.push({name:h(_),value:S,type:1})}function h(_){return _.replace("SolutionBuilder::","")}}function Snn(s,c){return s===yd&&(c.diagnostics||c.extendedDiagnostics)}function vnn(s,c){return s===yd&&c.generateTrace}function b5t(s,c,g){Snn(s,c)&&na(s),vnn(s,c)&&fd(g?"build":"project",c.generateTrace,c.configFilePath)}function nrt(s){return Ac(s,"SolutionBuilder::")}function irt(s,c,g){var d;let h=c.getCompilerOptions();vnn(s,h)&&((d=ki)==null||d.stopTracing());let _;if(Snn(s,h)){_=[];let W=s.getMemoryUsage?s.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let V=Hws(c);if(h.extendedDiagnostics)for(let[_e,Ee]of V.entries())R("Lines of "+_e,Ee);else R("Lines",ne(V.values(),(_e,Ee)=>_e+Ee,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),W>=0&&S({name:"Memory used",value:W,type:2},!0);let M=cs(),ee=M?eA("Program"):0,re=M?eA("Bind"):0,ge=M?eA("Check"):0,Ie=M?eA("Emit"):0;if(h.extendedDiagnostics){let _e=c.getRelationCacheSizes();R("Assignability cache size",_e.assignable),R("Identity cache size",_e.identity),R("Subtype cache size",_e.subtype),R("Strict subtype cache size",_e.strictSubtype),M&&QS((Ee,Ne)=>{nrt(Ee)||T(`${Ee} time`,Ne,!0)})}else M&&(T("I/O read",eA("I/O Read"),!0),T("I/O write",eA("I/O Write"),!0),T("Parse time",ee,!0),T("Bind time",re,!0),T("Check time",ge,!0),T("Emit time",Ie,!0));M&&T("Total time",ee+re+ge+Ie,!1),Bnn(s,_),M?g?(QS(_e=>{nrt(_e)||um(_e)}),XS(_e=>{nrt(_e)||gm(_e)})):ko():s.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` -`)}function S(W,V){_.push(W),V&&g?.addAggregateStatistic(W)}function R(W,V){S({name:W,value:V,type:1},!0)}function T(W,V,M){S({name:W,value:V,type:0},M)}}function Bnn(s,c){let g=0,d=0;for(let h of c){h.name.length>g&&(g=h.name.length);let _=wnn(h);_.length>d&&(d=_.length)}for(let h of c)s.write(`${h.name}:`.padEnd(g+2)+wnn(h).toString().padStart(d)+s.newLine)}function wnn(s){switch(s.type){case 1:return""+s.value;case 0:return(s.value/1e3).toFixed(2)+"s";case 2:return Math.round(s.value/1e3)+"K";default:pe.assertNever(s.type)}}function qws(s,c,g){let d=s.getCurrentDirectory(),h=iu(Ro(d,"tsconfig.json"));if(s.fileExists(h))c(Nf(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{s.writeFile(h,GWt(g,s.newLine));let _=[s.newLine,...rrt(s,"Created a new tsconfig.json")];_.push("You can learn more at https://aka.ms/tsconfig"+s.newLine);for(let S of _)s.write(S)}}function TN(s,c=!0){return{type:s,reportFallback:c}}var Tnn=TN(void 0,!1),Rnn=TN(void 0,!1),Pde=TN(void 0,!0);function E5t(s,c){let g=a_(s,"strictNullChecks");return{serializeTypeOfDeclaration:V,serializeReturnTypeForSignature:ee,serializeTypeOfExpression:W,serializeTypeOfAccessor:T,tryReuseExistingTypeNode(st,ir){if(c.canReuseTypeNode(st,ir))return h(st,ir)}};function d(st,ir,zt=ir){return ir===void 0?void 0:c.markNodeReuse(st,ir.flags&16?ir:me.cloneNode(ir),zt??ir)}function h(st,ir){let{finalizeBoundary:zt,startRecoveryScope:Ht,hadError:Br,markError:mn}=c.createRecoveryBoundary(st),jn=Mr(ir,Zi,uc);if(!zt())return;return st.approximateLength+=ir.end-ir.pos,jn;function Zi(Zn){if(Br())return Zn;let ya=Ht(),Gl=eie(Zn)?c.enterNewScope(st,Zn):void 0,ba=su(Zn);return Gl?.(),Br()?uc(Zn)&&!bE(Zn)?(ya(),c.serializeExistingTypeNode(st,Zn)):Zn:ba?c.markNodeReuse(st,ba,Zn):void 0}function Ns(Zn){let ya=w7(Zn);switch(ya.kind){case 184:return Ic(ya);case 187:return ks(ya);case 200:return An(ya);case 199:let Gl=ya;if(Gl.operator===143)return si(Gl)}return Mr(Zn,Zi,uc)}function An(Zn){let ya=Ns(Zn.objectType);if(ya!==void 0)return me.updateIndexedAccessTypeNode(Zn,ya,Mr(Zn.indexType,Zi,uc))}function si(Zn){pe.assertEqual(Zn.operator,143);let ya=Ns(Zn.type);if(ya!==void 0)return me.updateTypeOperatorNode(Zn,ya)}function ks(Zn){let{introducesError:ya,node:Gl}=c.trackExistingEntityName(st,Zn.exprName);if(!ya)return me.updateTypeQueryNode(Zn,Gl,Ws(Zn.typeArguments,Zi,uc));let ba=c.serializeTypeName(st,Zn.exprName,!0);if(ba)return c.markNodeReuse(st,ba,Zn.exprName)}function Ic(Zn){if(c.canReuseTypeNode(st,Zn)){let{introducesError:ya,node:Gl}=c.trackExistingEntityName(st,Zn.typeName),ba=Ws(Zn.typeArguments,Zi,uc);if(ya){let Wo=c.serializeTypeName(st,Zn.typeName,!1,ba);if(Wo)return c.markNodeReuse(st,Wo,Zn.typeName)}else{let Wo=me.updateTypeReferenceNode(Zn,Gl,ba);return c.markNodeReuse(st,Wo,Zn)}}}function su(Zn){var ya;if(W3(Zn))return Mr(Zn.type,Zi,uc);if(WPt(Zn)||Zn.kind===320)return me.createKeywordTypeNode(133);if(OPt(Zn))return me.createKeywordTypeNode(159);if(Iie(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createLiteralTypeNode(me.createNull())]);if(d$e(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createKeywordTypeNode(157)]);if(zLe(Zn))return Mr(Zn.type,Zi);if(qLe(Zn))return me.createArrayTypeNode(Mr(Zn.type,Zi,uc));if(yU(Zn))return me.createTypeLiteralNode(At(Zn.jsDocPropertyTags,hn=>{let Oi=Mr(Ir(hn.name)?hn.name:hn.name.right,Zi,Ir),lo=c.getJsDocPropertyOverride(st,Zn,hn);return me.createPropertySignature(void 0,Oi,hn.isBracketed||hn.typeExpression&&d$e(hn.typeExpression.type)?me.createToken(58):void 0,lo||hn.typeExpression&&Mr(hn.typeExpression.type,Zi,uc)||me.createKeywordTypeNode(133))}));if(nh(Zn)&&Ir(Zn.typeName)&&Zn.typeName.escapedText==="")return ua(me.createKeywordTypeNode(133),Zn);if((l_(Zn)||nh(Zn))&&Uge(Zn))return me.createTypeLiteralNode([me.createIndexSignature(void 0,[me.createParameterDeclaration(void 0,void 0,"x",void 0,Mr(Zn.typeArguments[0],Zi,uc))],Mr(Zn.typeArguments[1],Zi,uc))]);if(hie(Zn))if(PY(Zn)){let hn;return me.createConstructorTypeNode(void 0,Ws(Zn.typeParameters,Zi,Ds),Xt(Zn.parameters,(Oi,lo)=>Oi.name&&Ir(Oi.name)&&Oi.name.escapedText==="new"?(hn=Oi.type,void 0):me.createParameterDeclaration(void 0,Wo(Oi),c.markNodeReuse(st,me.createIdentifier(hc(Oi,lo)),Oi),me.cloneNode(Oi.questionToken),Mr(Oi.type,Zi,uc),void 0)),Mr(hn||Zn.type,Zi,uc)||me.createKeywordTypeNode(133))}else return me.createFunctionTypeNode(Ws(Zn.typeParameters,Zi,Ds),At(Zn.parameters,(hn,Oi)=>me.createParameterDeclaration(void 0,Wo(hn),c.markNodeReuse(st,me.createIdentifier(hc(hn,Oi)),hn),me.cloneNode(hn.questionToken),Mr(hn.type,Zi,uc),void 0)),Mr(Zn.type,Zi,uc)||me.createKeywordTypeNode(133));if(Fx(Zn))return c.canReuseTypeNode(st,Zn)||mn(),Zn;if(Ds(Zn)){let{node:hn}=c.trackExistingEntityName(st,Zn.name);return me.updateTypeParameterDeclaration(Zn,Ws(Zn.modifiers,Zi,Ig),hn,Mr(Zn.constraint,Zi,uc),Mr(Zn.default,Zi,uc))}if(Iv(Zn)){let hn=An(Zn);return hn||(mn(),Zn)}if(nh(Zn)){let hn=Ic(Zn);return hn||(mn(),Zn)}if(ky(Zn)){if(((ya=Zn.attributes)==null?void 0:ya.token)===132)return mn(),Zn;if(!c.canReuseTypeNode(st,Zn))return c.serializeExistingTypeNode(st,Zn);let hn=yr(Zn,Zn.argument.literal),Oi=hn===Zn.argument.literal?d(st,Zn.argument.literal):hn;return me.updateImportTypeNode(Zn,Oi===Zn.argument.literal?d(st,Zn.argument):me.createLiteralTypeNode(Oi),Mr(Zn.attributes,Zi,CU),Mr(Zn.qualifier,Zi,fC),Ws(Zn.typeArguments,Zi,uc),Zn.isTypeOf)}if(rh(Zn)&&Zn.name.kind===168&&!c.hasLateBindableName(Zn)){if(!XD(Zn))return Gl(Zn,Zi);if(c.shouldRemoveDeclaration(st,Zn))return}if(bu(Zn)&&!Zn.type||pi(Zn)&&!Zn.type&&!Zn.initializer||ss(Zn)&&!Zn.type&&!Zn.initializer||Si(Zn)&&!Zn.type&&!Zn.initializer){let hn=Gl(Zn,Zi);return hn===Zn&&(hn=c.markNodeReuse(st,me.cloneNode(Zn),Zn)),hn.type=me.createKeywordTypeNode(133),Si(Zn)&&(hn.modifiers=void 0),hn}if(Fw(Zn)){let hn=ks(Zn);return hn||(mn(),Zn)}if(Un(Zn)&&Od(Zn.expression)){let{node:hn,introducesError:Oi}=c.trackExistingEntityName(st,Zn.expression);if(Oi){let lo=c.serializeTypeOfExpression(st,Zn.expression),pa;if(EE(lo))pa=lo.literal;else{let Oa=c.evaluateEntityNameExpression(Zn.expression),tl=typeof Oa.value=="string"?me.createStringLiteral(Oa.value,void 0):typeof Oa.value=="number"?me.createNumericLiteral(Oa.value,0):void 0;if(!tl)return Um(lo)&&c.trackComputedName(st,Zn.expression),Zn;pa=tl}return pa.kind===11&&Uh(pa.text,Mg(s))?me.createIdentifier(pa.text):pa.kind===9&&!pa.text.startsWith("-")?pa:me.updateComputedPropertyName(Zn,pa)}else return me.updateComputedPropertyName(Zn,hn)}if(bE(Zn)){let hn;if(Ir(Zn.parameterName)){let{node:Oi,introducesError:lo}=c.trackExistingEntityName(st,Zn.parameterName);lo&&mn(),hn=Oi}else hn=me.cloneNode(Zn.parameterName);return me.updateTypePredicateNode(Zn,me.cloneNode(Zn.assertsModifier),hn,Mr(Zn.type,Zi,uc))}if(Zw(Zn)||mh(Zn)||GB(Zn)){let hn=Gl(Zn,Zi),Oi=c.markNodeReuse(st,hn===Zn?me.cloneNode(Zn):hn,Zn),lo=tA(Oi);return ti(Oi,lo|(st.flags&1024&&mh(Zn)?0:1)),Oi}if(Zg(Zn)&&st.flags&268435456&&!Zn.singleQuote){let hn=me.cloneNode(Zn);return hn.singleQuote=!0,hn}if(d2(Zn)){let hn=Mr(Zn.checkType,Zi,uc),Oi=c.enterNewScope(st,Zn),lo=Mr(Zn.extendsType,Zi,uc),pa=Mr(Zn.trueType,Zi,uc);Oi();let Oa=Mr(Zn.falseType,Zi,uc);return me.updateConditionalTypeNode(Zn,hn,lo,pa,Oa)}if(xB(Zn)){if(Zn.operator===158&&Zn.type.kind===155){if(!c.canReuseTypeNode(st,Zn))return mn(),Zn}else if(Zn.operator===143){let hn=si(Zn);return hn||(mn(),Zn)}}return Gl(Zn,Zi);function Gl(hn,Oi){let lo=!st.enclosingFile||st.enclosingFile!==ms(hn);return _s(hn,Oi,void 0,lo?ba:void 0)}function ba(hn,Oi,lo,pa,Oa){let tl=Ws(hn,Oi,lo,pa,Oa);return tl&&(tl.pos!==-1||tl.end!==-1)&&(tl===hn&&(tl=me.createNodeArray(hn.slice(),hn.hasTrailingComma)),TB(tl,-1,-1)),tl}function Wo(hn){return hn.dotDotDotToken||(hn.type&&qLe(hn.type)?me.createToken(26):void 0)}function hc(hn,Oi){return hn.name&&Ir(hn.name)&&hn.name.escapedText==="this"?"this":Wo(hn)?"args":`arg${Oi}`}function yr(hn,Oi){let lo=c.getModuleSpecifierOverride(st,hn,Oi);return lo?ua(me.createStringLiteral(lo),Oi):Oi}}}function _(st,ir,zt){if(!st)return;let Ht;return(!zt||ur(st))&&c.canReuseTypeNode(ir,st)&&(Ht=h(ir,st),Ht!==void 0&&(Ht=tr(Ht,zt,void 0,ir))),Ht}function S(st,ir,zt,Ht,Br,mn=Br!==void 0){if(!st||!c.canReuseTypeNodeAnnotation(ir,zt,st,Ht,Br)&&(!Br||!c.canReuseTypeNodeAnnotation(ir,zt,st,Ht,!1)))return;let jn;return(!Br||ur(st))&&(jn=_(st,ir,Br)),jn!==void 0||!mn?jn:(ir.tracker.reportInferenceFallback(zt),c.serializeExistingTypeNode(ir,st,Br)??me.createKeywordTypeNode(133))}function R(st,ir,zt,Ht){if(!st)return;let Br=_(st,ir,zt);return Br!==void 0?Br:(ir.tracker.reportInferenceFallback(Ht??st),c.serializeExistingTypeNode(ir,st,zt)??me.createKeywordTypeNode(133))}function T(st,ir,zt){return Ie(st,ir,zt)??$e(st,c.getAllAccessorDeclarations(st),zt,ir)}function W(st,ir,zt,Ht){let Br=ot(st,ir,!1,zt,Ht);return Br.type!==void 0?Br.type:We(st,ir,Br.reportFallback)}function V(st,ir,zt){switch(st.kind){case 170:case 342:return Ee(st,ir,zt);case 261:return _e(st,ir,zt);case 172:case 349:case 173:return Te(st,ir,zt);case 209:return Ze(st,ir,zt);case 278:return W(st.expression,zt,void 0,!0);case 212:case 213:case 227:return Ne(st,ir,zt);case 304:case 305:return M(st,ir,zt);default:pe.assertNever(st,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(st.kind)}`)}}function M(st,ir,zt){let Ht=kh(st),Br;if(Ht&&c.canReuseTypeNodeAnnotation(zt,st,Ht,ir)&&(Br=_(Ht,zt)),!Br&&st.kind===304){let mn=st.initializer,jn=sQ(mn)?_ie(mn):mn.kind===235||mn.kind===217?mn.type:void 0;jn&&!s2(jn)&&c.canReuseTypeNodeAnnotation(zt,st,jn,ir)&&(Br=_(jn,zt))}return Br??Ze(st,ir,zt,!1)}function ee(st,ir,zt){switch(st.kind){case 178:return T(st,ir,zt);case 175:case 263:case 181:case 174:case 180:case 177:case 179:case 182:case 185:case 186:case 219:case 220:case 318:case 324:return Gr(st,ir,zt);default:pe.assertNever(st,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(st.kind)}`)}}function re(st){if(st)return st.kind===178?wo(st)&&eN(st)||xb(st):Jye(st)}function ge(st,ir){let zt=re(st);return!zt&&st!==ir.firstAccessor&&(zt=re(ir.firstAccessor)),!zt&&ir.secondAccessor&&st!==ir.secondAccessor&&(zt=re(ir.secondAccessor)),zt}function Ie(st,ir,zt){let Ht=c.getAllAccessorDeclarations(st),Br=ge(st,Ht);if(Br&&!bE(Br))return Ye(zt,st,()=>S(Br,zt,st,ir)??Ze(st,ir,zt));if(Ht.getAccessor)return Ye(zt,Ht.getAccessor,()=>Gr(Ht.getAccessor,ir,zt))}function _e(st,ir,zt){var Ht;let Br=kh(st),mn=Pde;return Br?mn=TN(S(Br,zt,st,ir)):st.initializer&&(((Ht=ir.declarations)==null?void 0:Ht.length)===1||ct(ir.declarations,nc)===1)&&!c.isExpandoFunctionDeclaration(st)&&!pr(st)&&(mn=ot(st.initializer,zt,void 0,void 0,OT(st))),mn.type!==void 0?mn.type:Ze(st,ir,zt,mn.reportFallback)}function Ee(st,ir,zt){let Ht=st.parent;if(Ht.kind===179)return T(Ht,void 0,zt);let Br=kh(st),mn=c.requiresAddingImplicitUndefined(st,ir,zt.enclosingDeclaration),jn=Pde;return Br?jn=TN(S(Br,zt,st,ir,mn)):Si(st)&&st.initializer&&Ir(st.name)&&!pr(st)&&(jn=ot(st.initializer,zt,void 0,mn)),jn.type!==void 0?jn.type:Ze(st,ir,zt,jn.reportFallback)}function Ne(st,ir,zt){let Ht=kh(st),Br;Ht&&(Br=S(Ht,zt,st,ir));let mn=zt.suppressReportInferenceFallback;zt.suppressReportInferenceFallback=!0;let jn=Br??Ze(st,ir,zt,!1);return zt.suppressReportInferenceFallback=mn,jn}function Te(st,ir,zt){let Ht=kh(st),Br=c.requiresAddingImplicitUndefined(st,ir,zt.enclosingDeclaration),mn=Pde;if(Ht)mn=TN(S(Ht,zt,st,ir,Br));else{let jn=pi(st)?st.initializer:void 0;if(jn&&!pr(st)){let Zi=hf(st);mn=ot(jn,zt,void 0,Br,Zi)}}return mn.type!==void 0?mn.type:Ze(st,ir,zt,mn.reportFallback)}function Ze(st,ir,zt,Ht=!0){return Ht&&zt.tracker.reportInferenceFallback(st),zt.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfDeclaration(zt,st,ir)}function We(st,ir,zt=!0,Ht){return pe.assert(!Ht),zt&&ir.tracker.reportInferenceFallback(st),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfExpression(ir,st)??me.createKeywordTypeNode(133)}function Ue(st,ir,zt,Ht){return Ht&&ir.tracker.reportInferenceFallback(st),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeReturnTypeForSignature(ir,st,zt)??me.createKeywordTypeNode(133)}function $e(st,ir,zt,Ht,Br=!0){return st.kind===178?Gr(st,Ht,zt,Br):(Br&&zt.tracker.reportInferenceFallback(st),(ir.getAccessor&&Gr(ir.getAccessor,Ht,zt,Br))??c.serializeTypeOfDeclaration(zt,st,Ht)??me.createKeywordTypeNode(133))}function Ye(st,ir,zt){let Ht=c.enterNewScope(st,ir),Br=zt();return Ht(),Br}function Tt(st,ir,zt,Ht){return s2(ir)?ot(st,zt,!0,Ht):TN(R(ir,zt,Ht))}function ot(st,ir,zt=!1,Ht=!1,Br=!1){switch(st.kind){case 218:return sQ(st)?Tt(st.expression,_ie(st),ir,Ht):ot(st.expression,ir,zt,Ht);case 80:if(c.isUndefinedIdentifierExpression(st))return TN(nt());break;case 106:return TN(g?tr(me.createLiteralTypeNode(me.createNull()),Ht,st,ir):me.createKeywordTypeNode(133));case 220:case 219:return pe.type(st),Ye(ir,st,()=>Qe(st,ir));case 217:case 235:let mn=st;return Tt(mn.expression,mn.type,ir,Ht);case 225:let jn=st;if(uz(jn))return Dt(jn.operator===40?jn.operand:jn,jn.operand.kind===10?163:150,ir,zt||Br,Ht);break;case 210:return ht(st,ir,zt,Ht);case 211:return Rt(st,ir,zt,Ht);case 232:return TN(We(st,ir,!0,Ht));case 229:if(!zt&&!Br)return TN(me.createKeywordTypeNode(154));break;default:let Zi,Ns=st;switch(st.kind){case 9:Zi=150;break;case 15:Ns=me.createStringLiteral(st.text),Zi=154;break;case 11:Zi=154;break;case 10:Zi=163;break;case 112:case 97:Zi=136;break}if(Zi)return Dt(Ns,Zi,ir,zt||Br,Ht)}return Pde}function Qe(st,ir){let zt=Gr(st,void 0,ir),Ht=Pt(st.typeParameters,ir),Br=st.parameters.map(mn=>Ke(mn,ir));return TN(me.createFunctionTypeNode(Ht,Br,zt))}function mt(st,ir,zt){if(!zt)return ir.tracker.reportInferenceFallback(st),!1;for(let Ht of st.elements)if(Ht.kind===231)return ir.tracker.reportInferenceFallback(Ht),!1;return!0}function ht(st,ir,zt,Ht){if(!mt(st,ir,zt))return Ht||jh(gv(st).parent)?Rnn:TN(We(st,ir,!1,Ht));let Br=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[];for(let Zi of st.elements)if(pe.assert(Zi.kind!==231),Zi.kind===233)mn.push(nt());else{let Ns=ot(Zi,ir,zt),An=Ns.type!==void 0?Ns.type:We(Zi,ir,Ns.reportFallback);mn.push(An)}let jn=me.createTupleTypeNode(mn);return jn.emitNode={flags:1,autoGenerate:void 0,internalFlags:0},ir.noInferenceFallback=Br,Tnn}function _t(st,ir){let zt=!0;for(let Ht of st.properties){if(Ht.flags&262144){zt=!1;break}if(Ht.kind===305||Ht.kind===306)ir.tracker.reportInferenceFallback(Ht),zt=!1;else if(Ht.name.flags&262144){zt=!1;break}else if(Ht.name.kind===81)zt=!1;else if(Ht.name.kind===168){let Br=Ht.name.expression;!uz(Br,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Br)&&(ir.tracker.reportInferenceFallback(Ht.name),zt=!1)}}return zt}function Rt(st,ir,zt,Ht){if(!_t(st,ir))return Ht||jh(gv(st).parent)?Rnn:TN(We(st,ir,!1,Ht));let Br=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[],jn=ir.flags;ir.flags|=4194304;for(let Ns of st.properties){pe.assert(!a0(Ns)&&!Lx(Ns));let An=Ns.name,si;switch(Ns.kind){case 175:si=Ye(ir,Ns,()=>_r(Ns,An,ir,zt));break;case 304:si=Lt(Ns,An,ir,zt);break;case 179:case 178:si=Gt(Ns,An,ir);break}si&&(hh(si,Ns),mn.push(si))}ir.flags=jn;let Zi=me.createTypeLiteralNode(mn);return ir.flags&1024||ti(Zi,1),ir.noInferenceFallback=Br,Tnn}function Lt(st,ir,zt,Ht){let Br=Ht?[me.createModifier(148)]:[],mn=ot(st.initializer,zt,Ht),jn=mn.type!==void 0?mn.type:Ze(st,void 0,zt,mn.reportFallback);return me.createPropertySignature(Br,d(zt,ir),void 0,jn)}function Ke(st,ir){return me.updateParameterDeclaration(st,void 0,d(ir,st.dotDotDotToken),c.serializeNameOfParameter(ir,st),c.isOptionalParameter(st)?me.createToken(58):void 0,Ee(st,void 0,ir),void 0)}function Pt(st,ir){return st?.map(zt=>{var Ht;let{node:Br}=c.trackExistingEntityName(ir,zt.name);return me.updateTypeParameterDeclaration(zt,(Ht=zt.modifiers)==null?void 0:Ht.map(mn=>d(ir,mn)),Br,R(zt.constraint,ir),R(zt.default,ir))})}function _r(st,ir,zt,Ht){let Br=Gr(st,void 0,zt),mn=Pt(st.typeParameters,zt),jn=st.parameters.map(Zi=>Ke(Zi,zt));return Ht?me.createPropertySignature([me.createModifier(148)],d(zt,ir),d(zt,st.questionToken),me.createFunctionTypeNode(mn,jn,Br)):(Ir(ir)&&ir.escapedText==="new"&&(ir=me.createStringLiteral("new")),me.createMethodSignature([],d(zt,ir),d(zt,st.questionToken),mn,jn,Br))}function Gt(st,ir,zt){let Ht=c.getAllAccessorDeclarations(st),Br=Ht.getAccessor&&re(Ht.getAccessor),mn=Ht.setAccessor&&re(Ht.setAccessor);if(Br!==void 0&&mn!==void 0)return Ye(zt,st,()=>{let jn=st.parameters.map(Zi=>Ke(Zi,zt));return bB(st)?me.updateGetAccessorDeclaration(st,[],d(zt,ir),jn,R(Br,zt),void 0):me.updateSetAccessorDeclaration(st,[],d(zt,ir),jn,void 0)});if(Ht.firstAccessor===st){let Zi=(Br?Ye(zt,Ht.getAccessor,()=>R(Br,zt)):mn?Ye(zt,Ht.setAccessor,()=>R(mn,zt)):void 0)??$e(st,Ht,zt,void 0);return me.createPropertySignature(Ht.setAccessor===void 0?[me.createModifier(148)]:[],d(zt,ir),void 0,Zi)}}function nt(){return g?me.createKeywordTypeNode(157):me.createKeywordTypeNode(133)}function Dt(st,ir,zt,Ht,Br){let mn;return Ht?(st.kind===225&&st.operator===40&&(mn=me.createLiteralTypeNode(d(zt,st.operand))),mn=me.createLiteralTypeNode(d(zt,st))):mn=me.createKeywordTypeNode(ir),TN(tr(mn,Br,st,zt))}function tr(st,ir,zt,Ht){let Br=zt&&gv(zt).parent,mn=Br&&jh(Br)&&RB(Br);return!g||!(ir||mn)?st:(ur(st)||Ht.tracker.reportInferenceFallback(st),aS(st)?me.createUnionTypeNode([...st.types,me.createKeywordTypeNode(157)]):me.createUnionTypeNode([st,me.createKeywordTypeNode(157)]))}function ur(st){return!g||v0(st.kind)||st.kind===202||st.kind===185||st.kind===186||st.kind===189||st.kind===190||st.kind===188||st.kind===204||st.kind===198?!0:st.kind===197?ur(st.type):st.kind===193||st.kind===194?st.types.every(ur):!1}function Gr(st,ir,zt,Ht=!0){let Br=Pde,mn=PY(st)?kh(st.parameters[0]):xb(st);return mn?Br=TN(S(mn,zt,st,ir)):C3(st)&&(Br=dt(st,zt)),Br.type!==void 0?Br.type:Ue(st,zt,ir,Ht&&Br.reportFallback&&!mn)}function dt(st,ir){let zt;if(st&&!sf(st.body)){if(SI(st)&3)return Pde;let Br=st.body;Br&&$u(Br)?yF(Br,mn=>{if(mn.parent!==Br)return zt=void 0,!0;if(!zt)zt=mn.expression;else return zt=void 0,!0}):zt=Br}if(zt)if(pr(zt)){let Ht=sQ(zt)?_ie(zt):Yd(zt)||xF(zt)?zt.type:void 0;if(Ht&&!s2(Ht))return TN(_(Ht,ir))}else return ot(zt,ir);return Pde}function pr(st){return ji(st.parent,ir=>Zl(ir)||!kd(ir)&&!!kh(ir)||bN(ir)||pie(ir))}}var YP={};o(YP,{NameValidationResult:()=>Znn,discoverTypings:()=>tTs,isTypingUpToDate:()=>Gnn,loadSafeList:()=>$ws,loadTypesMap:()=>eTs,nonRelativeModuleNameForTypingCache:()=>Fnn,renderPackageNameValidationFailure:()=>nTs,validatePackageName:()=>rTs});var vVe="action::set",BVe="action::invalidate",wVe="action::packageInstalled",srt="event::typesRegistry",ort="event::beginInstallTypes",art="event::endInstallTypes",S5t="event::initializationFailed",n1e="action::watchTypingLocations",crt;(s=>{s.GlobalCacheLocation="--globalTypingsCacheLocation",s.LogFile="--logFile",s.EnableTelemetry="--enableTelemetry",s.TypingSafeListLocation="--typingSafeListLocation",s.TypesMapLocation="--typesMapLocation",s.NpmLocation="--npmLocation",s.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(crt||(crt={}));function Nnn(s){return yd.args.includes(s)}function Dnn(s){let c=yd.args.indexOf(s);return c>=0&&cs.readFile(d));return new Map(Object.entries(g.config))}function eTs(s,c){var g;let d=yEe(c,h=>s.readFile(h));if((g=d.config)!=null&&g.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function tTs(s,c,g,d,h,_,S,R,T,W){if(!S||!S.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let V=new Map;g=Xt(g,Ze=>{let We=iu(Ze);if(pN(We))return We});let M=[];S.include&&Ee(S.include,"Explicitly included types");let ee=S.exclude||[];if(!W.types){let Ze=new Set(g.map(Mo));Ze.add(d),Ze.forEach(We=>{Ne(We,"bower.json","bower_components",M),Ne(We,"package.json","node_modules",M)})}if(S.disableFilenameBasedTypeAcquisition||Te(g),R){let Ze=io(R.map(Fnn),MA,Ca);Ee(Ze,"Inferred typings from unresolved imports")}for(let Ze of ee)V.delete(Ze)&&c&&c(`Typing for ${Ze} is in exclude list, will be ignored.`);_.forEach((Ze,We)=>{let Ue=T.get(We);V.get(We)===!1&&Ue!==void 0&&Gnn(Ze,Ue)&&V.set(We,Ze.typingLocation)});let re=[],ge=[];V.forEach((Ze,We)=>{Ze?ge.push(Ze):re.push(We)});let Ie={cachedTypingPaths:ge,newTypingNames:re,filesToWatch:M};return c&&c(`Finished typings discovery:${j3(Ie)}`),Ie;function _e(Ze){V.has(Ze)||V.set(Ze,!1)}function Ee(Ze,We){c&&c(`${We}: ${JSON.stringify(Ze)}`),F(Ze,_e)}function Ne(Ze,We,Ue,$e){let Ye=Ro(Ze,We),Tt,ot;s.fileExists(Ye)&&($e.push(Ye),Tt=yEe(Ye,_t=>s.readFile(_t)).config,ot=er([Tt.dependencies,Tt.devDependencies,Tt.optionalDependencies,Tt.peerDependencies],_g),Ee(ot,`Typing names in '${Ye}' dependencies`));let Qe=Ro(Ze,Ue);if($e.push(Qe),!s.directoryExists(Qe))return;let mt=[],ht=ot?ot.map(_t=>Ro(Qe,_t,We)):s.readDirectory(Qe,[".json"],void 0,void 0,3).filter(_t=>{if(gp(_t)!==We)return!1;let Rt=Np(iu(_t)),Lt=Rt[Rt.length-3][0]==="@";return Lt&&Om(Rt[Rt.length-4])===Ue||!Lt&&Om(Rt[Rt.length-3])===Ue});c&&c(`Searching for typing names in ${Qe}; all files: ${JSON.stringify(ht)}`);for(let _t of ht){let Rt=iu(_t),Ke=yEe(Rt,_r=>s.readFile(_r)).config;if(!Ke.name)continue;let Pt=Ke.types||Ke.typings;if(Pt){let _r=Xc(Pt,Mo(Rt));s.fileExists(_r)?(c&&c(` Package '${Ke.name}' provides its own types.`),V.set(Ke.name,_r)):c&&c(` Package '${Ke.name}' provides its own types but they are missing.`)}else mt.push(Ke.name)}Ee(mt," Found package names")}function Te(Ze){let We=Xt(Ze,$e=>{if(!pN($e))return;let Ye=s0(Om(gp($e))),Tt=us(Ye);return h.get(Tt)});We.length&&Ee(We,"Inferred typings from file names"),jt(Ze,$e=>aA($e,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),_e("react"))}}var Znn=(s=>(s[s.Ok=0]="Ok",s[s.EmptyName=1]="EmptyName",s[s.NameTooLong=2]="NameTooLong",s[s.NameStartsWithDot=3]="NameStartsWithDot",s[s.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",s[s.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",s))(Znn||{}),Lnn=214;function rTs(s){return v5t(s,!0)}function v5t(s,c){if(!s)return 1;if(s.length>Lnn)return 2;if(s.charCodeAt(0)===46)return 3;if(s.charCodeAt(0)===95)return 4;if(c){let g=/^@([^/]+)\/([^/]+)$/.exec(s);if(g){let d=v5t(g[1],!1);if(d!==0)return{name:g[1],isScopeName:!0,result:d};let h=v5t(g[2],!1);return h!==0?{name:g[2],isScopeName:!1,result:h}:0}}return encodeURIComponent(s)!==s?5:0}function nTs(s,c){return typeof s=="object"?Vnn(c,s.result,s.name,s.isScopeName):Vnn(c,s,c,!1)}function Vnn(s,c,g,d){let h=d?"Scope":"Package";switch(c){case 1:return`'${s}':: ${h} name '${g}' cannot be empty`;case 2:return`'${s}':: ${h} name '${g}' should be less than ${Lnn} characters`;case 3:return`'${s}':: ${h} name '${g}' cannot start with '.'`;case 4:return`'${s}':: ${h} name '${g}' cannot start with '_'`;case 5:return`'${s}':: ${h} name '${g}' contains non URI safe characters`;case 0:return pe.fail();default:pe.assertNever(c)}}var TVe;(s=>{class c{constructor(h){this.text=h}getText(h,_){return h===0&&_===this.text.length?this.text:this.text.substring(h,_)}getLength(){return this.text.length}getChangeRange(){}}function g(d){return new c(d)}s.fromString=g})(TVe||(TVe={}));var B5t=(s=>(s[s.Dependencies=1]="Dependencies",s[s.DevDependencies=2]="DevDependencies",s[s.PeerDependencies=4]="PeerDependencies",s[s.OptionalDependencies=8]="OptionalDependencies",s[s.All=15]="All",s))(B5t||{}),w5t=(s=>(s[s.Off=0]="Off",s[s.On=1]="On",s[s.Auto=2]="Auto",s))(w5t||{}),T5t=(s=>(s[s.Semantic=0]="Semantic",s[s.PartialSemantic=1]="PartialSemantic",s[s.Syntactic=2]="Syntactic",s))(T5t||{}),VB={},R5t=(s=>(s.Original="original",s.TwentyTwenty="2020",s))(R5t||{}),lrt=(s=>(s.All="All",s.SortAndCombine="SortAndCombine",s.RemoveUnused="RemoveUnused",s))(lrt||{}),urt=(s=>(s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",s))(urt||{}),N5t=(s=>(s.Type="Type",s.Parameter="Parameter",s.Enum="Enum",s))(N5t||{}),D5t=(s=>(s.none="none",s.definition="definition",s.reference="reference",s.writtenReference="writtenReference",s))(D5t||{}),k5t=(s=>(s[s.None=0]="None",s[s.Block=1]="Block",s[s.Smart=2]="Smart",s))(k5t||{}),grt=(s=>(s.Ignore="ignore",s.Insert="insert",s.Remove="remove",s))(grt||{});function RVe(s){return{indentSize:4,tabSize:4,newLineCharacter:s||` -`,convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var Pnn=RVe(` -`),NVe=(s=>(s[s.aliasName=0]="aliasName",s[s.className=1]="className",s[s.enumName=2]="enumName",s[s.fieldName=3]="fieldName",s[s.interfaceName=4]="interfaceName",s[s.keyword=5]="keyword",s[s.lineBreak=6]="lineBreak",s[s.numericLiteral=7]="numericLiteral",s[s.stringLiteral=8]="stringLiteral",s[s.localName=9]="localName",s[s.methodName=10]="methodName",s[s.moduleName=11]="moduleName",s[s.operator=12]="operator",s[s.parameterName=13]="parameterName",s[s.propertyName=14]="propertyName",s[s.punctuation=15]="punctuation",s[s.space=16]="space",s[s.text=17]="text",s[s.typeParameterName=18]="typeParameterName",s[s.enumMemberName=19]="enumMemberName",s[s.functionName=20]="functionName",s[s.regularExpressionLiteral=21]="regularExpressionLiteral",s[s.link=22]="link",s[s.linkName=23]="linkName",s[s.linkText=24]="linkText",s))(NVe||{}),x5t=(s=>(s[s.None=0]="None",s[s.MayIncludeAutoImports=1]="MayIncludeAutoImports",s[s.IsImportStatementCompletion=2]="IsImportStatementCompletion",s[s.IsContinuation=4]="IsContinuation",s[s.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",s[s.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",s[s.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",s))(x5t||{}),G5t=(s=>(s.Comment="comment",s.Region="region",s.Code="code",s.Imports="imports",s))(G5t||{}),F5t=(s=>(s[s.JavaScript=0]="JavaScript",s[s.SourceMap=1]="SourceMap",s[s.Declaration=2]="Declaration",s))(F5t||{}),Z5t=(s=>(s[s.None=0]="None",s[s.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",s[s.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",s[s.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",s[s.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",s[s.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",s[s.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",s))(Z5t||{}),L5t=(s=>(s[s.Punctuation=0]="Punctuation",s[s.Keyword=1]="Keyword",s[s.Operator=2]="Operator",s[s.Comment=3]="Comment",s[s.Whitespace=4]="Whitespace",s[s.Identifier=5]="Identifier",s[s.NumberLiteral=6]="NumberLiteral",s[s.BigIntLiteral=7]="BigIntLiteral",s[s.StringLiteral=8]="StringLiteral",s[s.RegExpLiteral=9]="RegExpLiteral",s))(L5t||{}),V5t=(s=>(s.unknown="",s.warning="warning",s.keyword="keyword",s.scriptElement="script",s.moduleElement="module",s.classElement="class",s.localClassElement="local class",s.interfaceElement="interface",s.typeElement="type",s.enumElement="enum",s.enumMemberElement="enum member",s.variableElement="var",s.localVariableElement="local var",s.variableUsingElement="using",s.variableAwaitUsingElement="await using",s.functionElement="function",s.localFunctionElement="local function",s.memberFunctionElement="method",s.memberGetAccessorElement="getter",s.memberSetAccessorElement="setter",s.memberVariableElement="property",s.memberAccessorVariableElement="accessor",s.constructorImplementationElement="constructor",s.callSignatureElement="call",s.indexSignatureElement="index",s.constructSignatureElement="construct",s.parameterElement="parameter",s.typeParameterElement="type parameter",s.primitiveType="primitive type",s.label="label",s.alias="alias",s.constElement="const",s.letElement="let",s.directory="directory",s.externalModuleName="external module name",s.jsxAttribute="JSX attribute",s.string="string",s.link="link",s.linkName="link name",s.linkText="link text",s))(V5t||{}),P5t=(s=>(s.none="",s.publicMemberModifier="public",s.privateMemberModifier="private",s.protectedMemberModifier="protected",s.exportedModifier="export",s.ambientModifier="declare",s.staticModifier="static",s.abstractModifier="abstract",s.optionalModifier="optional",s.deprecatedModifier="deprecated",s.dtsModifier=".d.ts",s.tsModifier=".ts",s.tsxModifier=".tsx",s.jsModifier=".js",s.jsxModifier=".jsx",s.jsonModifier=".json",s.dmtsModifier=".d.mts",s.mtsModifier=".mts",s.mjsModifier=".mjs",s.dctsModifier=".d.cts",s.ctsModifier=".cts",s.cjsModifier=".cjs",s))(P5t||{}),W5t=(s=>(s.comment="comment",s.identifier="identifier",s.keyword="keyword",s.numericLiteral="number",s.bigintLiteral="bigint",s.operator="operator",s.stringLiteral="string",s.whiteSpace="whitespace",s.text="text",s.punctuation="punctuation",s.className="class name",s.enumName="enum name",s.interfaceName="interface name",s.moduleName="module name",s.typeParameterName="type parameter name",s.typeAliasName="type alias name",s.parameterName="parameter name",s.docCommentTagName="doc comment tag name",s.jsxOpenTagName="jsx open tag name",s.jsxCloseTagName="jsx close tag name",s.jsxSelfClosingTagName="jsx self closing tag name",s.jsxAttribute="jsx attribute",s.jsxText="jsx text",s.jsxAttributeStringLiteralValue="jsx attribute string literal value",s))(W5t||{}),Art=(s=>(s[s.comment=1]="comment",s[s.identifier=2]="identifier",s[s.keyword=3]="keyword",s[s.numericLiteral=4]="numericLiteral",s[s.operator=5]="operator",s[s.stringLiteral=6]="stringLiteral",s[s.regularExpressionLiteral=7]="regularExpressionLiteral",s[s.whiteSpace=8]="whiteSpace",s[s.text=9]="text",s[s.punctuation=10]="punctuation",s[s.className=11]="className",s[s.enumName=12]="enumName",s[s.interfaceName=13]="interfaceName",s[s.moduleName=14]="moduleName",s[s.typeParameterName=15]="typeParameterName",s[s.typeAliasName=16]="typeAliasName",s[s.parameterName=17]="parameterName",s[s.docCommentTagName=18]="docCommentTagName",s[s.jsxOpenTagName=19]="jsxOpenTagName",s[s.jsxCloseTagName=20]="jsxCloseTagName",s[s.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",s[s.jsxAttribute=22]="jsxAttribute",s[s.jsxText=23]="jsxText",s[s.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",s[s.bigintLiteral=25]="bigintLiteral",s))(Art||{}),A_=wb(99,!0),O5t=(s=>(s[s.None=0]="None",s[s.Value=1]="Value",s[s.Type=2]="Type",s[s.Namespace=4]="Namespace",s[s.All=7]="All",s))(O5t||{});function DVe(s){switch(s.kind){case 261:return wo(s)&&a1(s)?7:1;case 170:case 209:case 173:case 172:case 304:case 305:case 175:case 174:case 177:case 178:case 179:case 263:case 219:case 220:case 300:case 292:return 1;case 169:case 265:case 266:case 188:return 2;case 347:return s.name===void 0?3:2;case 307:case 264:return 3;case 268:return s_(s)||PF(s)===1?5:4;case 267:case 276:case 277:case 272:case 273:case 278:case 279:return 7;case 308:return 5}return 7}function DU(s){s=vrt(s);let c=s.parent;return s.kind===308?1:Cf(c)||R0(c)||ZF(c)||uy(c)||Vw(c)||km(c)&&s===c.name?7:kVe(s)?iTs(s):HT(s)?DVe(c):fC(s)&&ji(s,Hp(lde,Tx,O3))?7:cTs(s)?2:sTs(s)?4:Ds(c)?(pe.assert(ZB(c.parent)),2):EE(c)?3:1}function iTs(s){let c=s.kind===167?s:zi(s.parent)&&s.parent.right===s?s.parent:void 0;return c&&c.parent.kind===272?7:4}function kVe(s){if(!s.parent)return!1;for(;s.parent.kind===167;)s=s.parent;return d3(s.parent)&&s.parent.moduleReference===s}function sTs(s){return oTs(s)||aTs(s)}function oTs(s){let c=s,g=!0;if(c.parent.kind===167){for(;c.parent&&c.parent.kind===167;)c=c.parent;g=c.right===s}return c.parent.kind===184&&!g}function aTs(s){let c=s,g=!0;if(c.parent.kind===212){for(;c.parent&&c.parent.kind===212;)c=c.parent;g=c.name===s}if(!g&&c.parent.kind===234&&c.parent.parent.kind===299){let d=c.parent.parent.parent;return d.kind===264&&c.parent.parent.token===119||d.kind===265&&c.parent.parent.token===96}return!1}function cTs(s){switch(P7(s)&&(s=s.parent),s.kind){case 110:return!MT(s);case 198:return!0}switch(s.parent.kind){case 184:return!0;case 206:return!s.parent.isTypeOf;case 234:return ww(s.parent)}return!1}function drt(s,c=!1,g=!1){return i1e(s,Zl,frt,c,g)}function Ode(s,c=!1,g=!1){return i1e(s,f2,frt,c,g)}function prt(s,c=!1,g=!1){return i1e(s,av,frt,c,g)}function M5t(s,c=!1,g=!1){return i1e(s,MI,lTs,c,g)}function H5t(s,c=!1,g=!1){return i1e(s,So,frt,c,g)}function Y5t(s,c=!1,g=!1){return i1e(s,eI,uTs,c,g)}function frt(s){return s.expression}function lTs(s){return s.tag}function uTs(s){return s.tagName}function i1e(s,c,g,d,h){let _=d?gTs(s):xVe(s);return h&&(_=HI(_)),!!_&&!!_.parent&&c(_.parent)&&g(_.parent)===_}function xVe(s){return Wie(s)?s.parent:s}function gTs(s){return Wie(s)||Crt(s)?s.parent:s}function GVe(s,c){for(;s;){if(s.kind===257&&s.label.escapedText===c)return s.label;s=s.parent}}function s1e(s,c){return jo(s.expression)?s.expression.name.text===c:!1}function o1e(s){var c;return Ir(s)&&((c=Gs(s.parent,AY))==null?void 0:c.label)===s}function Irt(s){var c;return Ir(s)&&((c=Gs(s.parent,FP))==null?void 0:c.label)===s}function hrt(s){return Irt(s)||o1e(s)}function mrt(s){var c;return((c=Gs(s.parent,u3))==null?void 0:c.tagName)===s}function Q5t(s){var c;return((c=Gs(s.parent,zi))==null?void 0:c.right)===s}function Wie(s){var c;return((c=Gs(s.parent,jo))==null?void 0:c.name)===s}function Crt(s){var c;return((c=Gs(s.parent,Yg))==null?void 0:c.argumentExpression)===s}function _rt(s){var c;return((c=Gs(s.parent,xh))==null?void 0:c.name)===s}function yrt(s){var c;return Ir(s)&&((c=Gs(s.parent,bu))==null?void 0:c.name)===s}function FVe(s){switch(s.parent.kind){case 173:case 172:case 304:case 307:case 175:case 174:case 178:case 179:case 268:return Il(s.parent)===s;case 213:return s.parent.argumentExpression===s;case 168:return!0;case 202:return s.parent.parent.kind===200;default:return!1}}function X5t(s){return LL(s.parent.parent)&&_7(s.parent.parent)===s}function kU(s){for(iS(s)&&(s=s.parent.parent);;){if(s=s.parent,!s)return;switch(s.kind){case 308:case 175:case 174:case 263:case 219:case 178:case 179:case 264:case 265:case 267:case 268:return s}}}function pQ(s){switch(s.kind){case 308:return xm(s)?"module":"script";case 268:return"module";case 264:case 232:return"class";case 265:return"interface";case 266:case 339:case 347:return"type";case 267:return"enum";case 261:return c(s);case 209:return c(Rw(s));case 220:case 263:case 219:return"function";case 178:return"getter";case 179:return"setter";case 175:case 174:return"method";case 304:let{initializer:g}=s;return bu(g)?"method":"property";case 173:case 172:case 305:case 306:return"property";case 182:return"index";case 181:return"construct";case 180:return"call";case 177:case 176:return"constructor";case 169:return"type parameter";case 307:return"enum member";case 170:return Ga(s,31)?"property":"parameter";case 272:case 277:case 282:case 275:case 281:return"alias";case 227:let d=nI(s),{right:h}=s;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let S=pQ(h);return S===""?"const":S;case 3:return UA(h)?"method":"property";case 4:return"property";case 5:return UA(h)?"method":"property";case 6:return"local class";default:return""}case 80:return Vw(s.parent)?"alias":"";case 278:let _=pQ(s.expression);return _===""?"const":_;default:return""}function c(g){return rI(g)?"const":rS(g)?"let":"var"}}function Oie(s){switch(s.kind){case 110:return!0;case 80:return Xye(s)&&s.parent.kind===170;default:return!1}}var ATs=/^\/\/\/\s*=g}function Mde(s,c,g){return LVe(s.pos,s.end,c,g)}function ZVe(s,c,g,d){return LVe(s.getStart(c),s.end,g,d)}function LVe(s,c,g,d){let h=Math.max(s,g),_=Math.min(c,d);return h<_}function brt(s,c,g){return pe.assert(s.pos<=c),cd.kind===c)}function VVe(s){let c=de(s.parent.getChildren(),g=>Cie(g)&&cy(g,s));return pe.assert(!c||k(c.getChildren(),s)),c}function Wnn(s){return s.kind===90}function dTs(s){return s.kind===86}function pTs(s){return s.kind===100}function fTs(s){if(rh(s))return s.name;if(pm(s)){let c=s.modifiers&&de(s.modifiers,Wnn);if(c)return c}if(vd(s)){let c=de(s.getChildren(),dTs);if(c)return c}}function ITs(s){if(rh(s))return s.name;if(ih(s)){let c=de(s.modifiers,Wnn);if(c)return c}if(UA(s)){let c=de(s.getChildren(),pTs);if(c)return c}}function hTs(s){let c;return ji(s,g=>(uc(g)&&(c=g),!zi(g.parent)&&!uc(g.parent)&&!Bx(g.parent))),c}function PVe(s,c){if(s.flags&16777216)return;let g=tPe(s,c);if(g)return g;let d=hTs(s);return d&&c.getTypeAtLocation(d)}function mTs(s,c){if(!c)switch(s.kind){case 264:case 232:return fTs(s);case 263:case 219:return ITs(s);case 177:return s}if(rh(s))return s.name}function Onn(s,c){if(s.importClause){if(s.importClause.name&&s.importClause.namedBindings)return;if(s.importClause.name)return s.importClause.name;if(s.importClause.namedBindings){if(yN(s.importClause.namedBindings)){let g=Ps(s.importClause.namedBindings.elements);return g?g.name:void 0}else if(Zx(s.importClause.namedBindings))return s.importClause.namedBindings.name}}if(!c)return s.moduleSpecifier}function Mnn(s,c){if(s.exportClause){if(mv(s.exportClause))return Ps(s.exportClause.elements)?s.exportClause.elements[0].name:void 0;if(tk(s.exportClause))return s.exportClause.name}if(!c)return s.moduleSpecifier}function CTs(s){if(s.types.length===1)return s.types[0].expression}function Hnn(s,c){let{parent:g}=s;if(Ig(s)&&(c||s.kind!==90)?LB(g)&&k(g.modifiers,s):s.kind===86?pm(g)||vd(s):s.kind===100?ih(g)||UA(s):s.kind===120?g_(g):s.kind===94?V3(g):s.kind===156?FB(g):s.kind===145||s.kind===144?xh(g):s.kind===102?km(g):s.kind===139?Bg(g):s.kind===153&&Dg(g)){let d=mTs(g,c);if(d)return d}if((s.kind===115||s.kind===87||s.kind===121)&&u_(g)&&g.declarations.length===1){let d=g.declarations[0];if(Ir(d.name))return d.name}if(s.kind===156){if(Vw(g)&&g.isTypeOnly){let d=Onn(g.parent,c);if(d)return d}if(Gh(g)&&g.isTypeOnly){let d=Mnn(g,c);if(d)return d}}if(s.kind===130){if(uy(g)&&g.propertyName||R0(g)&&g.propertyName||Zx(g)||tk(g))return g.name;if(Gh(g)&&g.exportClause&&tk(g.exportClause))return g.exportClause.name}if(s.kind===102&&Mf(g)){let d=Onn(g,c);if(d)return d}if(s.kind===95){if(Gh(g)){let d=Mnn(g,c);if(d)return d}if(Cf(g))return HI(g.expression)}if(s.kind===149&&ZF(g))return g.expression;if(s.kind===161&&(Mf(g)||Gh(g))&&g.moduleSpecifier)return g.moduleSpecifier;if((s.kind===96||s.kind===119)&&h1(g)&&g.token===s.kind){let d=CTs(g);if(d)return d}if(s.kind===96){if(Ds(g)&&g.constraint&&nh(g.constraint))return g.constraint.typeName;if(d2(g)&&nh(g.extendsType))return g.extendsType.typeName}if(s.kind===140&&jT(g))return g.typeParameter.name;if(s.kind===103&&Ds(g)&&GB(g.parent))return g.name;if(s.kind===143&&xB(g)&&g.operator===143&&nh(g.type))return g.type.typeName;if(s.kind===148&&xB(g)&&g.operator===148&&kF(g.type)&&nh(g.type.elementType))return g.type.elementType.typeName;if(!c){if((s.kind===105&&f2(g)||s.kind===116&&qT(g)||s.kind===114&&CN(g)||s.kind===135&&I1(g)||s.kind===127&&Hd(g)||s.kind===91&&GF(g))&&g.expression)return HI(g.expression);if((s.kind===103||s.kind===104)&&fo(g)&&g.operatorToken===s)return HI(g.right);if(s.kind===130&&Yd(g)&&nh(g.type))return g.type.typeName;if(s.kind===103&&KLe(g)||s.kind===165&&iEe(g))return HI(g.expression)}return s}function vrt(s){return Hnn(s,!1)}function WVe(s){return Hnn(s,!0)}function Lb(s,c){return Hie(s,c,g=>Tw(g)||v0(g.kind)||p(g))}function Hie(s,c,g){return Ynn(s,c,!1,g,!1)}function Jc(s,c){return Ynn(s,c,!0,void 0,!1)}function Ynn(s,c,g,d,h){let _=s,S;e:for(;;){let T=_.getChildren(s),W=Sg(T,c,(V,M)=>M,(V,M)=>{let ee=T[V].getEnd();if(eec?1:R(T[V],re,ee)?T[V-1]&&R(T[V-1])?1:0:d&&re===c&&T[V-1]&&T[V-1].getEnd()===c&&R(T[V-1])?1:-1});if(S)return S;if(W>=0&&T[W]){_=T[W];continue e}return _}function R(T,W,V){if(V??(V=T.getEnd()),Vc))return!1;if(cg.getStart(s)&&c(_.pos<=s.pos&&_.end>s.end||_.pos===s.end)&&tMt(_,g)?d(_):void 0)}}function Gm(s,c,g,d){let h=_(g||c);return pe.assert(!(h&&OVe(h))),h;function _(S){if(Qnn(S)&&S.kind!==1)return S;let R=S.getChildren(c),T=Sg(R,s,(V,M)=>M,(V,M)=>s=R[V-1].end?0:1:-1);if(T>=0&&R[T]){let V=R[T];if(s=s||!tMt(V,c)||OVe(V)){let re=z5t(R,T,c,S.kind);return re?!d&&i7(re)&&re.getChildren(c).length?_(re):j5t(re,c):void 0}else return _(V)}pe.assert(g!==void 0||S.kind===308||S.kind===1||i7(S));let W=z5t(R,R.length,c,S.kind);return W&&j5t(W,c)}}function Qnn(s){return BL(s)&&!OVe(s)}function j5t(s,c){if(Qnn(s))return s;let g=s.getChildren(c);if(g.length===0)return s;let d=z5t(g,g.length,c,s.kind);return d&&j5t(d,c)}function z5t(s,c,g,d){for(let h=c-1;h>=0;h--){let _=s[h];if(OVe(_))h===0&&(d===12||d===286)&&pe.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(tMt(s[h],g))return s[h]}}function Zz(s,c,g=Gm(c,s)){if(g&&Ere(g)){let d=g.getStart(s),h=g.getEnd();if(dg.getStart(s)}function $5t(s,c){let g=Jc(s,c);return!!(KL(g)||g.kind===19&&pie(g.parent)&&bN(g.parent.parent)||g.kind===30&&eI(g.parent)&&bN(g.parent.parent))}function MVe(s,c){function g(d){for(;d;)if(d.kind>=286&&d.kind<=295||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===285){if(c>d.getStart(s))return!0;d=d.parent}else return!1;return!1}return g(Jc(s,c))}function HVe(s,c,g){let d=Vi(s.kind),h=Vi(c),_=s.getFullStart(),S=g.text.lastIndexOf(h,_);if(S===-1)return;if(g.text.lastIndexOf(d,_-1)!!_.typeParameters&&_.typeParameters.length>=c)}function Trt(s,c){if(c.text.lastIndexOf("<",s?s.pos:c.text.length)===-1)return;let g=s,d=0,h=0;for(;g;){switch(g.kind){case 30:if(g=Gm(g.getFullStart(),c),g&&g.kind===29&&(g=Gm(g.getFullStart(),c)),!g||!Ir(g))return;if(!d)return HT(g)?void 0:{called:g,nTypeArguments:h};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(g=HVe(g,19,c),!g)return;break;case 22:if(g=HVe(g,21,c),!g)return;break;case 24:if(g=HVe(g,23,c),!g)return;break;case 28:h++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(uc(g))break;return}g=Gm(g.getFullStart(),c)}}function $L(s,c,g){return Im.getRangeOfEnclosingComment(s,c,void 0,g)}function eMt(s,c){let g=Jc(s,c);return!!ji(g,tR)}function tMt(s,c){return s.kind===1?!!s.jsDoc:s.getWidth(c)!==0}function Yde(s,c=0){let g=[],d=jh(s)?ad(s)&~c:0;return d&2&&g.push("private"),d&4&&g.push("protected"),d&1&&g.push("public"),(d&256||fl(s))&&g.push("static"),d&64&&g.push("abstract"),d&32&&g.push("export"),d&65536&&g.push("deprecated"),s.flags&33554432&&g.push("declare"),s.kind===278&&g.push("export"),g.length>0?g.join(","):""}function rMt(s){if(s.kind===184||s.kind===214)return s.typeArguments;if(bu(s)||s.kind===264||s.kind===265)return s.typeParameters}function YVe(s){return s===2||s===3}function Rrt(s){return!!(s===11||s===14||LD(s))}function Xnn(s,c,g){return!!(c.flags&4)&&s.isEmptyAnonymousObjectType(g)}function nMt(s){if(!s.isIntersection())return!1;let{types:c,checker:g}=s;return c.length===2&&(Xnn(g,c[0],c[1])||Xnn(g,c[1],c[0]))}function u1e(s,c,g){return LD(s.kind)&&s.getStart(g){let g=rd(c);return!s[g]&&(s[g]=!0)}}function Lz(s){return s.getText(0,s.getLength())}function A1e(s,c){let g="";for(let d=0;d!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function aMt(s){return s.getSourceFiles().some(c=>!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function Lrt(s){return!!s.module||Mg(s)>=2||!!s.noEmit}function z3(s,c){return{fileExists:g=>s.fileExists(g),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:$i(c,c.readFile),useCaseSensitiveFileNames:$i(c,c.useCaseSensitiveFileNames)||s.useCaseSensitiveFileNames,getSymlinkCache:$i(c,c.getSymlinkCache)||s.getSymlinkCache,getModuleSpecifierCache:$i(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var g;return(g=s.getModuleResolutionCache())==null?void 0:g.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:$i(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:g=>s.getRedirectFromSourceFile(g),isSourceOfProjectReferenceRedirect:g=>s.isSourceOfProjectReferenceRedirect(g),getNearestAncestorDirectoryWithPackageJson:$i(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>s.getFileIncludeReasons(),getCommonSourceDirectory:()=>s.getCommonSourceDirectory(),getDefaultResolutionModeForFile:g=>s.getDefaultResolutionModeForFile(g),getModeForResolutionAtIndex:(g,d)=>s.getModeForResolutionAtIndex(g,d)}}function Vrt(s,c){return{...z3(s,c),getCommonSourceDirectory:()=>s.getCommonSourceDirectory()}}function UVe(s){return s===2||s>=3&&s<=99||s===100}function QP(s,c,g,d,h){return me.createImportDeclaration(void 0,s||c?me.createImportClause(h?156:void 0,s,c&&c.length?me.createNamedImports(c):void 0):void 0,typeof g=="string"?Xde(g,d):g,void 0)}function Xde(s,c){return me.createStringLiteral(s,c===0)}var cMt=(s=>(s[s.Single=0]="Single",s[s.Double=1]="Double",s))(cMt||{});function Prt(s,c){return sne(s,c)?1:0}function _1(s,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let g=aN(s)&&s.imports&&de(s.imports,d=>Zg(d)&&!sp(d.parent));return g?Prt(g,s):1}}function Wrt(s){switch(s){case 0:return"'";case 1:return'"';default:return pe.assertNever(s)}}function Ort(s){let c=KVe(s);return c===void 0?void 0:Bc(c)}function KVe(s){return s.escapedName!=="default"?s.escapedName:X(s.declarations,c=>{let g=Il(c);return g&&g.kind===80?g.escapedText:void 0})}function jVe(s){return mA(s)&&(ZF(s.parent)||Mf(s.parent)||SN(s.parent)||ay(s.parent,!1)&&s.parent.arguments[0]===s||Up(s.parent)&&s.parent.arguments[0]===s)}function p1e(s){return hg(s)&&Km(s.parent)&&Ir(s.name)&&!s.propertyName}function zVe(s,c){let g=s.getTypeAtLocation(c.parent);return g&&s.getPropertyOfType(g,c.name.text)}function f1e(s,c,g){if(s)for(;s.parent;){if(ll(s.parent)||!yTs(g,s.parent,c))return s;s=s.parent}}function yTs(s,c,g){return ho(s,c.getStart(g))&&c.getEnd()<=Rs(s)}function Qie(s,c){return LB(s)?de(s.modifiers,g=>g.kind===c):void 0}function Mrt(s,c,g,d,h){var _;let R=(Ki(g)?g[0]:g).kind===244?nne:IP,T=Me(c.statements,R),{comparer:W,isSorted:V}=i5.getOrganizeImportsStringComparerWithDetection(T,h),M=Ki(g)?bo(g,(ee,re)=>i5.compareImportsOrRequireStatements(ee,re,W)):[g];if(!T?.length){if(aN(c))s.insertNodesAtTopOfFile(c,M,d);else for(let ee of M)s.insertStatementsInNewFile(c.fileName,[ee],(_=Dd(ee))==null?void 0:_.getSourceFile());return}if(pe.assert(aN(c)),T&&V)for(let ee of M){let re=i5.getImportDeclarationInsertionIndex(T,ee,W);if(re===0){let ge=T[0]===c.statements[0]?{leadingTriviaOption:xo.LeadingTriviaOption.Exclude}:{};s.insertNodeBefore(c,T[0],ee,!1,ge)}else{let ge=T[re-1];s.insertNodeAfter(c,ge,ee)}}else{let ee=li(T);ee?s.insertNodesAfter(c,ee,M):s.insertNodesAtTopOfFile(c,M,d)}}function Hrt(s,c){return pe.assert(s.isTypeOnly),Ma(s.getChildAt(0,c),Unn)}function Xie(s,c){return!!s&&!!c&&s.start===c.start&&s.length===c.length}function Yrt(s,c,g){return(g?MA:Mp)(s.fileName,c.fileName)&&Xie(s.textSpan,c.textSpan)}function Qrt(s){return(c,g)=>Yrt(c,g,s)}function Xrt(s,c){if(s){for(let g=0;gSi(g)?!0:hg(g)||Km(g)||p2(g)?!1:"quit")}var uMt=new Map;function bTs(s){return s=s||EY,uMt.has(s)||uMt.set(s,ETs(s)),uMt.get(s)}function ETs(s){let c=s*10,g,d,h,_;M();let S=ee=>T(ee,17);return{displayParts:()=>{let ee=g.length&&g[g.length-1].text;return _>c&&ee&&ee!=="..."&&(dc(ee.charCodeAt(ee.length-1))||g.push(SE(" ",16)),g.push(SE("...",15))),g},writeKeyword:ee=>T(ee,5),writeOperator:ee=>T(ee,12),writePunctuation:ee=>T(ee,15),writeTrailingSemicolon:ee=>T(ee,15),writeSpace:ee=>T(ee,16),writeStringLiteral:ee=>T(ee,8),writeParameter:ee=>T(ee,13),writeProperty:ee=>T(ee,14),writeLiteral:ee=>T(ee,8),writeSymbol:W,writeLine:V,write:S,writeComment:S,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:il,getIndent:()=>h,increaseIndent:()=>{h++},decreaseIndent:()=>{h--},clear:M};function R(){if(!(_>c)&&d){let ee=iAe(h);ee&&(_+=ee.length,g.push(SE(ee,16))),d=!1}}function T(ee,re){_>c||(R(),_+=ee.length,g.push(SE(ee,re)))}function W(ee,re){_>c||(R(),_+=ee.length,g.push(STs(ee,re)))}function V(){_>c||(_+=1,g.push(Jie()),d=!0)}function M(){g=[],d=!0,h=0,_=0}}function STs(s,c){return SE(s,g(c));function g(d){let h=d.flags;return h&3?Urt(d)?13:9:h&4||h&32768||h&65536?14:h&8?19:h&16?20:h&32?1:h&64?4:h&384?2:h&1536?11:h&8192?10:h&262144?18:h&524288||h&2097152?0:17}}function SE(s,c){return{text:s,kind:NVe[c]}}function BI(){return SE(" ",16)}function y1(s){return SE(Vi(s),5)}function k0(s){return SE(Vi(s),15)}function Ude(s){return SE(Vi(s),12)}function gMt(s){return SE(s,13)}function AMt(s){return SE(s,14)}function Krt(s){let c=Ta(s);return c===void 0?gS(s):y1(c)}function gS(s){return SE(s,17)}function dMt(s){return SE(s,0)}function pMt(s){return SE(s,18)}function fMt(s){return SE(s,24)}function vTs(s,c){return{text:s,kind:NVe[23],target:{fileName:ms(c).fileName,textSpan:Oy(c)}}}function Knn(s){return SE(s,22)}function IMt(s,c){var g;let d=VPt(s)?"link":PPt(s)?"linkcode":"linkplain",h=[Knn(`{@${d} `)];if(!s.name)s.text&&h.push(fMt(s.text));else{let _=c?.getSymbolAtLocation(s.name),S=_&&c?qrt(_,c):void 0,R=wTs(s.text),T=xp(s.name)+s.text.slice(0,R),W=BTs(s.text.slice(R)),V=S?.valueDeclaration||((g=S?.declarations)==null?void 0:g[0]);if(V)h.push(vTs(T,V)),W&&h.push(fMt(W));else{let M=R===0||s.text.charCodeAt(R)===124&&T.charCodeAt(T.length-1)!==32?" ":"";h.push(fMt(T+M+W))}}return h.push(Knn("}")),h}function BTs(s){let c=0;if(s.charCodeAt(c++)===124){for(;c"&&g--,d++,!g)return d}return 0}var TTs=` -`;function OF(s,c){var g;return c?.newLineCharacter||((g=s.getNewLine)==null?void 0:g.call(s))||TTs}function Jie(){return SE(` -`,6)}function XP(s,c){let g=bTs(c);try{return s(g),g.displayParts()}finally{g.clear()}}function I1e(s,c,g,d=0,h,_,S){return XP(R=>{s.writeType(c,g,d|1024|16384,R,h,_,S)},h)}function Kde(s,c,g,d,h=0){return XP(_=>{s.writeSymbol(c,g,d,h|8,_)})}function jrt(s,c,g,d=0,h,_,S){return d|=25632,XP(R=>{s.writeSignature(c,g,d,void 0,R,h,_,S)},h)}function hMt(s){return!!s.parent&&eS(s.parent)&&s.parent.propertyName===s}function zrt(s,c){return xAe(s,c.getScriptKind&&c.getScriptKind(s))}function qrt(s,c){let g=s;for(;RTs(g)||bw(g)&&g.links.target;)bw(g)&&g.links.target?g=g.links.target:g=FC(g,c);return g}function RTs(s){return(s.flags&2097152)!==0}function mMt(s,c){return kg(FC(s,c))}function CMt(s,c){for(;dc(s.charCodeAt(c));)c+=1;return c}function $Ve(s,c){for(;c>-1&&Iu(s.charCodeAt(c));)c-=1;return c+1}function xU(s,c){let g=s.getSourceFile(),d=g.text;NTs(s,d)?Uie(s,c,g):m1e(s,c,g),jde(s,c,g)}function NTs(s,c){let g=s.getFullStart(),d=s.getStart();for(let h=g;h=0),_}function Uie(s,c,g,d,h){GD(g.text,s.pos,_Mt(c,g,d,h,JT))}function jde(s,c,g,d,h){dF(g.text,s.end,_Mt(c,g,d,h,Iz))}function m1e(s,c,g,d,h){dF(g.text,s.pos,_Mt(c,g,d,h,JT))}function _Mt(s,c,g,d,h){return(_,S,R,T)=>{R===3?(_+=2,S-=2):_+=2,h(s,g||R,c.text.slice(_,S),d!==void 0?d:T)}}function DTs(s,c){if(Ac(s,c))return 0;let g=s.indexOf(" "+c);return g===-1&&(g=s.indexOf("."+c)),g===-1&&(g=s.indexOf('"'+c)),g===-1?-1:g+1}function ePe(s){return fo(s)&&s.operatorToken.kind===28||og(s)||(Yd(s)||Qg(s))&&og(s.expression)}function tPe(s,c,g){let d=gv(s.parent);switch(d.kind){case 215:return c.getContextualType(d,g);case 227:{let{left:h,operatorToken:_,right:S}=d;return rPe(_.kind)?c.getTypeAtLocation(s===S?h:S):c.getContextualType(s,g)}case 297:return ent(d,c);default:return c.getContextualType(s,g)}}function zde(s,c,g){let d=_1(s,c),h=JSON.stringify(g);return d===0?`'${l2(h).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:h}function rPe(s){switch(s){case 37:case 35:case 38:case 36:return!0;default:return!1}}function yMt(s){switch(s.kind){case 11:case 15:case 229:case 216:return!0;default:return!1}}function $rt(s){return!!s.getStringIndexType()||!!s.getNumberIndexType()}function ent(s,c){return c.getTypeAtLocation(s.parent.parent.expression)}var tnt="anonymous function";function qde(s,c,g,d){let h=g.getTypeChecker(),_=!0,S=()=>_=!1,R=h.typeToTypeNode(s,c,1,8,{trackSymbol:(T,W,V)=>(_=_&&h.isSymbolAccessible(T,W,V,!1).accessibility===0,!_),reportInaccessibleThisError:S,reportPrivateInBaseOfClassExpression:S,reportInaccessibleUniqueSymbolError:S,moduleResolverHost:Vrt(g,d)});return _?R:void 0}function bMt(s){return s===180||s===181||s===182||s===172||s===174}function jnn(s){return s===263||s===177||s===175||s===178||s===179}function znn(s){return s===268}function EMt(s){return s===244||s===245||s===247||s===252||s===253||s===254||s===258||s===260||s===173||s===266||s===273||s===272||s===279||s===271||s===278}var kTs=Hp(bMt,jnn,znn,EMt);function xTs(s,c){let g=s.getLastToken(c);if(g&&g.kind===27)return!1;if(bMt(s.kind)){if(g&&g.kind===28)return!1}else if(znn(s.kind)){let R=Ei(s.getChildren(c));if(R&&_N(R))return!1}else if(jnn(s.kind)){let R=Ei(s.getChildren(c));if(R&&mP(R))return!1}else if(!EMt(s.kind))return!1;if(s.kind===247)return!0;let d=ji(s,R=>!R.parent),h=fQ(s,d,c);if(!h||h.kind===20)return!0;let _=c.getLineAndCharacterOfPosition(s.getEnd()).line,S=c.getLineAndCharacterOfPosition(h.getStart(c)).line;return _!==S}function nPe(s,c,g){let d=ji(c,h=>h.end!==s?"quit":kTs(h.kind));return!!d&&xTs(d,g)}function C1e(s){let c=0,g=0,d=5;return Lu(s,function h(_){if(EMt(_.kind)){let S=_.getLastToken(s);S?.kind===27?c++:g++}else if(bMt(_.kind)){let S=_.getLastToken(s);if(S?.kind===27)c++;else if(S&&S.kind!==28){let R=Ra(s,S.getStart(s)).line,T=Ra(s,rs(s,S.end).start).line;R!==T&&g++}}return c+g>=d?!0:Lu(_,h)}),c===0&&g<=1?!0:c/g>1/d}function iPe(s,c){return SMt(s,s.getDirectories,c)||[]}function rnt(s,c,g,d,h){return SMt(s,s.readDirectory,c,g,d,h)||E}function Kie(s,c){return SMt(s,s.fileExists,c)}function sPe(s,c){return oPe(()=>f1(c,s))||!1}function oPe(s){try{return s()}catch{return}}function SMt(s,c,...g){return oPe(()=>c&&c.apply(s,g))}function nnt(s,c){let g=[];return vN(c,s,d=>{let h=Ro(d,"package.json");Kie(c,h)&&g.push(h)}),g}function vMt(s,c){let g;return vN(c,s,d=>{if(d==="node_modules"||(g=itt(d,h=>Kie(c,h),"package.json"),g))return!0}),g}function GTs(s,c){if(!c.fileExists)return[];let g=[];return vN(c,Mo(s),d=>{let h=Ro(d,"package.json");if(c.fileExists(h)){let _=int(h,c);_&&g.push(_)}}),g}function int(s,c){if(!c.readFile)return;let g=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(s)||"",h=nU(d),_={};if(h)for(let T of g){let W=h[T];if(!W)continue;let V=new Map;for(let M in W)V.set(M,W[M]);_[T]=V}let S=[[1,_.dependencies],[2,_.devDependencies],[8,_.optionalDependencies],[4,_.peerDependencies]];return{..._,parseable:!!h,fileName:s,get:R,has(T,W){return!!R(T,W)}};function R(T,W=15){for(let[V,M]of S)if(M&&W&V){let ee=M.get(T);if(ee!==void 0)return ee}}}function jie(s,c,g){let d=(g.getPackageJsonsVisibleToFile&&g.getPackageJsonsVisibleToFile(s.fileName)||GTs(s.fileName,g)).filter(ge=>ge.parseable),h,_,S;return{allowsImportingAmbientModule:T,getSourceFileInfo:W,allowsImportingSpecifier:V};function R(ge){let Ie=re(ge);for(let _e of d)if(_e.has(Ie)||_e.has(G9e(Ie)))return!0;return!1}function T(ge,Ie){if(!d.length||!ge.valueDeclaration)return!0;if(!_)_=new Map;else{let Ze=_.get(ge);if(Ze!==void 0)return Ze}let _e=l2(ge.getName());if(M(_e))return _.set(ge,!0),!0;let Ee=ge.valueDeclaration.getSourceFile(),Ne=ee(Ee.fileName,Ie);if(typeof Ne>"u")return _.set(ge,!0),!0;let Te=R(Ne)||R(_e);return _.set(ge,Te),Te}function W(ge,Ie){if(!d.length)return{importable:!0,packageName:void 0};if(!S)S=new Map;else{let Te=S.get(ge);if(Te!==void 0)return Te}let _e=ee(ge.fileName,Ie);if(!_e){let Te={importable:!0,packageName:_e};return S.set(ge,Te),Te}let Ne={importable:R(_e),packageName:_e};return S.set(ge,Ne),Ne}function V(ge){return!d.length||M(ge)||Ip(ge)||Xp(ge)?!0:R(ge)}function M(ge){return!!(aN(s)&&n0(s)&&dU.has(ge)&&(h===void 0&&(h=aPe(s)),h))}function ee(ge,Ie){let _e=LP(ge);if(_e){let Ne=_e.findPackageLocator(s.fileName),Te=_e.findPackageLocator(ge);if(!(Ne&&Te))return}else if(!ge.includes("node_modules"))return;let Ee=WF.getNodeModulesPackageName(g.getCompilationSettings(),s,ge,Ie,c);if(Ee&&!Ip(Ee)&&!Xp(Ee))return re(Ee)}function re(ge){let Ie=Np(bde(ge)).slice(1);return Ac(Ie[0],"@")?`${Ie[0]}/${Ie[1]}`:Ie[0]}}function aPe(s){return jt(s.imports,({text:c})=>dU.has(c))}function _1e(s){return k(Np(s),"node_modules")}function qnn(s){return s.file!==void 0&&s.start!==void 0&&s.length!==void 0}function BMt(s,c){let g=Oy(s),d=Sg(c,g,Fl,yn);if(d>=0){let h=c[d];return pe.assertEqual(h.file,s.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),Ma(h,qnn)}}function wMt(s,c){var g;let d=Sg(c,s.start,S=>S.start,Zt);for(d<0&&(d=~d);((g=c[d-1])==null?void 0:g.start)===s.start;)d--;let h=[],_=Rs(s);for(;;){let S=Gs(c[d],qnn);if(!S||S.start>_)break;Nd(s,S)&&h.push(S),d++}return h}function Vz({startPosition:s,endPosition:c}){return wA(s,c===void 0?s:c)}function snt(s,c){let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":un(h)&&Xie(c,Oy(h,s)))}function ont(s,c,g=Fl){return s?Ki(s)?g(At(s,c)):c(s,0):void 0}function ant(s){return Ki(s)?ma(s):s}function cPe(s,c,g){return s.escapedName==="export="||s.escapedName==="default"?cnt(s)||y1e(FTs(s),c,!!g):s.name}function cnt(s){return X(s.declarations,c=>{var g,d,h;if(Cf(c))return(g=Gs(HI(c.expression),Ir))==null?void 0:g.text;if(R0(c)&&c.symbol.flags===2097152)return(d=Gs(c.propertyName,Ir))==null?void 0:d.text;let _=(h=Gs(Il(c),Ir))==null?void 0:h.text;if(_)return _;if(s.parent&&!WD(s.parent))return s.parent.getName()})}function FTs(s){var c;return pe.checkDefined(s.parent,`Symbol parent was undefined. Flags: ${pe.formatSymbolFlags(s.flags)}. Declarations: ${(c=s.declarations)==null?void 0:c.map(g=>{let d=pe.formatSyntaxKind(g.kind),h=wo(g),{expression:_}=g;return(h?"[JS]":"")+d+(_?` (expression: ${pe.formatSyntaxKind(_.kind)})`:"")}).join(", ")}.`)}function y1e(s,c,g){return b1e(s0(l2(s.name)),c,g)}function b1e(s,c,g){let d=gp(aa(s0(s),"/index")),h="",_=!0,S=d.charCodeAt(0);bd(S,c)?(h+=String.fromCharCode(S),g&&(h=h.toUpperCase())):_=!1;for(let R=1;Rs.length)return!1;for(let h=0;h(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.Namespace=2]="Namespace",s[s.CommonJS=3]="CommonJS",s))(RMt||{}),NMt=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s[s.UMD=3]="UMD",s[s.Module=4]="Module",s))(NMt||{});function Ant(s){let c=1,g=dl(),d=new Map,h=new Map,_,S={isUsableByFile:re=>re===_,isEmpty:()=>!g.size,clear:()=>{g.clear(),d.clear(),_=void 0},add:(re,ge,Ie,_e,Ee,Ne,Te,Ze)=>{re!==_&&(S.clear(),_=re);let We;if(Ee){let Lt=MAe(Ee.fileName);if(Lt){let{topLevelNodeModulesIndex:Ke,topLevelPackageNameIndex:Pt,packageRootIndex:_r}=Lt;if(We=NEe(bde(Ee.fileName.substring(Pt+1,_r))),Ac(re,Ee.path.substring(0,Ke))){let Gt=h.get(We),nt=Ee.fileName.substring(0,Pt+1);if(Gt){let Dt=Gt.indexOf(Vx);Ke>Dt&&h.set(We,nt)}else h.set(We,nt)}}}let $e=Ne===1&&W7(ge)||ge,Ye=Ne===0||WD($e)?Bc(Ie):LTs($e,Ze,void 0),Tt=typeof Ye=="string"?Ye:Ye[0],ot=typeof Ye=="string"?void 0:Ye[1],Qe=l2(_e.name),mt=c++,ht=FC(ge,Ze),_t=ge.flags&33554432?void 0:ge,Rt=_e.flags&33554432?void 0:_e;(!_t||!Rt)&&d.set(mt,[ge,_e]),g.add(T(Tt,ge,Xr(Qe)?void 0:Qe,Ze),{id:mt,symbolTableKey:Ie,symbolName:Tt,capitalizedSymbolName:ot,moduleName:Qe,moduleFile:Ee,moduleFileName:Ee?.fileName,packageName:We,exportKind:Ne,targetFlags:ht.flags,isFromPackageJson:Te,symbol:_t,moduleSymbol:Rt})},get:(re,ge)=>{if(re!==_)return;let Ie=g.get(ge);return Ie?.map(R)},search:(re,ge,Ie,_e)=>{if(re===_)return Dh(g,(Ee,Ne)=>{let{symbolName:Te,ambientModuleName:Ze}=W(Ne),We=ge&&Ee[0].capitalizedSymbolName||Te;if(Ie(We,Ee[0].targetFlags)){let $e=Ee.map(R).filter((Ye,Tt)=>ee(Ye,Ee[Tt].packageName));if($e.length){let Ye=_e($e,We,!!Ze,Ne);if(Ye!==void 0)return Ye}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ge,Ie)=>V(re)&&V(ge)?!1:_&&_!==ge.path||Ie&&aPe(re)!==aPe(ge)||!Sc(re.moduleAugmentations,ge.moduleAugmentations)||!M(re,ge)?(S.clear(),!0):(_=ge.path,!1)};return pe.isDebugging&&Object.defineProperty(S,"__cache",{value:g}),S;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ge,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee,moduleFileName:Ne}=re,[Te,Ze]=d.get(ge)||E;if(Te&&Ze)return{symbol:Te,moduleSymbol:Ze,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee};let We=(Ee?s.getPackageJsonAutoImportProvider():s.getCurrentProgram()).getTypeChecker(),Ue=re.moduleSymbol||Ze||pe.checkDefined(re.moduleFile?We.getMergedSymbol(re.moduleFile.symbol):We.tryFindAmbientModule(re.moduleName)),$e=re.symbol||Te||pe.checkDefined(Ie===2?We.resolveExternalModuleSymbol(Ue):We.tryGetMemberInModuleExportsAndProperties(Bc(re.symbolTableKey),Ue),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${Ue.name}`);return d.set(ge,[$e,Ue]),{symbol:$e,moduleSymbol:Ue,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee}}function T(re,ge,Ie,_e){let Ee=Ie||"";return`${re.length} ${kg(FC(ge,_e))} ${re} ${Ee}`}function W(re){let ge=re.indexOf(" "),Ie=re.indexOf(" ",ge+1),_e=parseInt(re.substring(0,ge),10),Ee=re.substring(Ie+1),Ne=Ee.substring(0,_e),Te=Ee.substring(_e+1);return{symbolName:Ne,ambientModuleName:Te===""?void 0:Te}}function V(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function M(re,ge){if(!Sc(re.ambientModuleNames,ge.ambientModuleNames))return!1;let Ie=-1,_e=-1;for(let Ee of ge.ambientModuleNames){let Ne=Te=>Qre(Te)&&Te.name.text===Ee;if(Ie=Se(re.statements,Ne,Ie+1),_e=Se(ge.statements,Ne,_e+1),re.statements[Ie]!==ge.statements[_e])return!1}return!0}function ee(re,ge){if(!ge||!re.moduleFileName)return!0;let Ie=s.getGlobalTypingsCacheLocation();if(Ie&&Ac(re.moduleFileName,Ie))return!0;let _e=h.get(ge);return!_e||Ac(re.moduleFileName,_e)}}function dnt(s,c,g,d,h,_,S,R){var T;if(!g){let re,ge=l2(d.name);return dU.has(ge)&&(re=uPe(c,s))!==void 0?re===Ac(ge,"node:"):!_||_.allowsImportingAmbientModule(d,S)||DMt(c,ge)}if(pe.assertIsDefined(g),c===g)return!1;let W=R?.get(c.path,g.path,h,{});if(W?.isBlockedByPackageJsonDependencies!==void 0)return!W.isBlockedByPackageJsonDependencies||!!W.packageName&&DMt(c,W.packageName);let V=JD(S),M=(T=S.getGlobalTypingsCacheLocation)==null?void 0:T.call(S),ee=!!WF.forEachFileNameOfModule(c.fileName,g.fileName,S,!1,re=>{let ge=s.getSourceFile(re);return(ge===g||!ge)&&ZTs(c.fileName,re,V,M,S)});if(_){let re=ee?_.getSourceFileInfo(g,S):void 0;return R?.setBlockedByPackageJsonDependencies(c.path,g.path,h,{},re?.packageName,!re?.importable),!!re?.importable||ee&&!!re?.packageName&&DMt(c,re.packageName)}return ee}function DMt(s,c){return s.imports&&s.imports.some(g=>g.text===c||g.text.startsWith(c+"/"))}function ZTs(s,c,g,d,h){if(LP(s))return xSs(s,c);let _=vN(h,c,R=>gp(R)==="node_modules"?R:void 0),S=_&&Mo(g(_));return S===void 0||Ac(g(s),S)||!!d&&Ac(g(d),S)}function pnt(s,c,g,d,h){var _,S;let R=y3(c),T=g.autoImportFileExcludePatterns&&$nn(g,R);ein(s.getTypeChecker(),s.getSourceFiles(),T,c,(V,M)=>h(V,M,s,!1));let W=d&&((_=c.getPackageJsonAutoImportProvider)==null?void 0:_.call(c));if(W){let V=Fg(),M=s.getTypeChecker();ein(W.getTypeChecker(),W.getSourceFiles(),T,c,(ee,re)=>{(re&&!s.getSourceFile(re.fileName)||!re&&!M.resolveName(ee.name,void 0,1536,!1))&&h(ee,re,W,!0)}),(S=c.log)==null||S.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${Fg()-V}`)}}function $nn(s,c){return Xt(s.autoImportFileExcludePatterns,g=>{let d=DAe(g,"","exclude");return d?zD(d,c):void 0})}function ein(s,c,g,d,h){var _;let S=g&&tin(g,d);for(let R of s.getAmbientModules())!R.name.includes("*")&&!(g&&((_=R.declarations)!=null&&_.every(T=>S(T.getSourceFile()))))&&h(R,void 0);for(let R of c)vl(R)&&!S?.(R)&&h(s.getMergedSymbol(R.symbol),R)}function tin(s,c){var g;let d=(g=c.getSymlinkCache)==null?void 0:g.call(c).getSymlinkedDirectoriesByRealpath();return({fileName:h,path:_})=>{if(s.some(S=>S.test(h)))return!0;if(d?.size&&WP(h)){let S=Mo(h);return vN(c,Mo(_),R=>{let T=d.get(hp(R));if(T)return T.some(W=>s.some(V=>V.test(h.replace(S,W))));S=Mo(S)})??!1}return!1}}function kMt(s,c){return c.autoImportFileExcludePatterns?tin($nn(c,y3(s)),s):()=>!1}function S1e(s,c,g,d,h){var _,S,R,T,W;let V=Fg();(_=c.getPackageJsonAutoImportProvider)==null||_.call(c);let M=((S=c.getCachedExportInfoMap)==null?void 0:S.call(c))||Ant({getCurrentProgram:()=>g,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(M.isUsableByFile(s.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),M;(T=c.log)==null||T.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let ee=0;try{pnt(g,c,d,!0,(re,ge,Ie,_e)=>{++ee%100===0&&h?.throwIfCancellationRequested();let Ee=new Set,Ne=Ie.getTypeChecker(),Te=pPe(re,Ne);Te&&rin(Te.symbol,Ne)&&M.add(s.path,Te.symbol,Te.exportKind===1?"default":"export=",re,ge,Te.exportKind,_e,Ne),Ne.forEachExportAndPropertyOfModule(re,(Ze,We)=>{Ze!==Te?.symbol&&rin(Ze,Ne)&&Zy(Ee,We)&&M.add(s.path,Ze,We,re,ge,0,_e,Ne)})})}catch(re){throw M.clear(),re}return(W=c.log)==null||W.call(c,`getExportInfoMap: done in ${Fg()-V} ms`),M}function pPe(s,c){let g=c.resolveExternalModuleSymbol(s);if(g!==s){let h=c.tryGetMemberInModuleExports("default",g);return h?{symbol:h,exportKind:1}:{symbol:g,exportKind:2}}let d=c.tryGetMemberInModuleExports("default",s);if(d)return{symbol:d,exportKind:1}}function rin(s,c){return!c.isUndefinedSymbol(s)&&!c.isUnknownSymbol(s)&&!k7(s)&&!EZe(s)}function LTs(s,c,g){let d;return fPe(s,c,g,(h,_)=>(d=_?[h,_]:h,!0)),pe.checkDefined(d)}function fPe(s,c,g,d){let h,_=s,S=new Set;for(;_;){let R=cnt(_);if(R){let T=d(R);if(T)return T}if(_.escapedName!=="default"&&_.escapedName!=="export="){let T=d(_.name);if(T)return T}if(h=Ft(h,_),!Zy(S,_))break;_=_.flags&2097152?c.getImmediateAliasedSymbol(_):void 0}for(let R of h??E)if(R.parent&&WD(R.parent)){let T=d(y1e(R.parent,g,!1),y1e(R.parent,g,!0));if(T)return T}}function nin(){let s=wb(99,!1);function c(d,h,_){return OTs(g(d,h,_),d)}function g(d,h,_){let S=0,R=0,T=[],{prefix:W,pushTemplate:V}=YTs(h);d=W+d;let M=W.length;V&&T.push(16),s.setText(d);let ee=0,re=[],ge=0;do{S=s.scan(),zJ(S)||(Ie(),R=S);let _e=s.getTokenEnd();if(WTs(s.getTokenStart(),_e,M,JTs(S),re),_e>=d.length){let Ee=PTs(s,S,li(T));Ee!==void 0&&(ee=Ee)}}while(S!==1);function Ie(){switch(S){case 44:case 69:!VTs[R]&&s.reScanSlashToken()===14&&(S=14);break;case 30:R===80&&ge++;break;case 32:ge>0&&ge--;break;case 133:case 154:case 150:case 136:case 155:ge>0&&!_&&(S=80);break;case 16:T.push(S);break;case 19:T.length>0&&T.push(S);break;case 20:if(T.length>0){let _e=li(T);_e===16?(S=s.reScanTemplateToken(!1),S===18?T.pop():pe.assertEqual(S,17,"Should have been a template middle.")):(pe.assertEqual(_e,19,"Should have been an open brace"),T.pop())}break;default:if(!v0(S))break;(R===25||v0(R)&&v0(S)&&!HTs(R,S))&&(S=80)}}return{endOfLineState:ee,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:g}}var VTs=Vs([80,11,9,10,14,110,46,47,22,24,20,112,97],s=>s,()=>!0);function PTs(s,c,g){switch(c){case 11:{if(!s.isUnterminated())return;let d=s.getTokenText(),h=d.length-1,_=0;for(;d.charCodeAt(h-_)===92;)_++;return _&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return s.isUnterminated()?1:void 0;default:if(LD(c)){if(!s.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return pe.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return g===16?6:void 0}}function WTs(s,c,g,d,h){if(d===8)return;s===0&&g>0&&(s+=g);let _=c-s;_>0&&h.push(s-g,_,d)}function OTs(s,c){let g=[],d=s.spans,h=0;for(let S=0;S=0){let V=R-h;V>0&&g.push({length:V,classification:4})}g.push({length:T,classification:MTs(W)}),h=R+T}let _=c.length-h;return _>0&&g.push({length:_,classification:4}),{entries:g,finalLexState:s.endOfLineState}}function MTs(s){switch(s){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function HTs(s,c){if(!Nrt(s))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function YTs(s){switch(s){case 3:return{prefix:`"\\ +`):W.messageText}function T(W){return W.file.resolvedPath===c.resolvedPath?`(${W.start},${W.length})`:(S===void 0&&(S=Mo(c.resolvedPath)),`${Am(mp(S,W.file.resolvedPath,s.getCanonicalFileName))}(${W.start},${W.length})`)}}function kws(s,c,g){return(c.createHash??ry)(krn(s,g))}function Ett(s,{newProgram:c,host:g,oldProgram:d,configFileParsingDiagnostics:h}){let _=d&&d.state;if(_&&c===_.program&&h===c.getConfigFileParsingDiagnostics())return c=void 0,_=void 0,d;let S=Ews(c,_);c.getBuildInfo=()=>Dws(yws(S)),c=void 0,d=void 0,_=void 0;let R=Btt(S,h);return R.state=S,R.hasChangedEmitSignature=()=>!!S.hasChangedEmitSignature,R.getAllDependencies=Ne=>nR.getAllDependencies(S,pe.checkDefined(S.program),Ne),R.getSemanticDiagnostics=Ee,R.getDeclarationDiagnostics=Ie,R.emit=re,R.releaseProgram=()=>Sws(S),s===0?R.getSemanticDiagnosticsOfNextAffectedFile=_e:s===1?(R.getSemanticDiagnosticsOfNextAffectedFile=_e,R.emitNextAffectedFile=M,R.emitBuildInfo=T):il(),R;function T(Ne,Te){if(pe.assert(Lie(S)),Drn(S)){let Ze=S.program.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,Ze}return htt}function W(Ne,Te,Ze,We,Ue){var $e,Ye,Tt,ot;pe.assert(Lie(S));let Qe=Srn(S,Te,g),mt=HP(S.compilerOptions),ht=Ue?8:Ze?mt&56:mt;if(!Qe){if(S.compilerOptions.outFile){if(S.programEmitPending&&(ht=gVe(S.programEmitPending,S.seenProgramEmit,Ze,Ue),ht&&(Qe=S.program)),!Qe&&(($e=S.emitDiagnosticsPerFile)!=null&&$e.size)){let Lt=S.seenProgramEmit||0;if(!(Lt&_tt(Ue))){S.seenProgramEmit=_tt(Ue)|Lt;let Ke=[];return S.emitDiagnosticsPerFile.forEach(Pt=>Or(Ke,Pt)),{result:{emitSkipped:!0,diagnostics:Ke},affected:S.program}}}}else{let Lt=vws(S,Ze,Ue);if(Lt)({affectedFile:Qe,emitKind:ht}=Lt);else{let Ke=Bws(S,Ue);if(Ke)return(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Ke.affectedFile.resolvedPath,Ke.seenKind|_tt(Ue)),{result:{emitSkipped:!0,diagnostics:Ke.diagnostics},affected:Ke.affectedFile}}}if(!Qe){if(Ue||!Drn(S))return;let Lt=S.program,Ke=Lt.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,{result:Ke,affected:Lt}}}let _t;ht&7&&(_t=0),ht&56&&(_t=_t===void 0?1:void 0);let Rt=Ue?{emitSkipped:!0,diagnostics:S.program.getDeclarationDiagnostics(Qe===S.program?void 0:Qe,Te)}:S.program.emit(Qe===S.program?void 0:Qe,ee(Ne,We),Te,_t,We,void 0,!0);if(Qe!==S.program){let Lt=Qe;S.seenAffectedFiles.add(Lt.resolvedPath),S.affectedFilesIndex!==void 0&&S.affectedFilesIndex++,S.buildInfoEmitPending=!0;let Ke=((Ye=S.seenEmittedFiles)==null?void 0:Ye.get(Lt.resolvedPath))||0;(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Lt.resolvedPath,ht|Ke);let Pt=((Tt=S.affectedFilesPendingEmit)==null?void 0:Tt.get(Lt.resolvedPath))||mt,_r=uVe(Pt,ht|Ke);_r?(S.affectedFilesPendingEmit??(S.affectedFilesPendingEmit=new Map)).set(Lt.resolvedPath,_r):(ot=S.affectedFilesPendingEmit)==null||ot.delete(Lt.resolvedPath),Rt.diagnostics.length&&(S.emitDiagnosticsPerFile??(S.emitDiagnosticsPerFile=new Map)).set(Lt.resolvedPath,Rt.diagnostics)}else S.changedFilesSet.clear(),S.programEmitPending=S.changedFilesSet.size?uVe(mt,ht):S.programEmitPending?uVe(S.programEmitPending,ht):void 0,S.seenProgramEmit=ht|(S.seenProgramEmit||0),V(Rt.diagnostics),S.buildInfoEmitPending=!0;return{result:Rt,affected:Qe}}function V(Ne){let Te;Ne.forEach(Ze=>{if(!Ze.file)return;let We=Te?.get(Ze.file.resolvedPath);We||(Te??(Te=new Map)).set(Ze.file.resolvedPath,We=[]),We.push(Ze)}),Te&&(S.emitDiagnosticsPerFile=Te)}function M(Ne,Te,Ze,We){return W(Ne,Te,Ze,We,!1)}function ee(Ne,Te){return pe.assert(Lie(S)),Ly(S.compilerOptions)?(Ze,We,Ue,$e,Ye,Tt)=>{var ot,Qe,mt;if(PC(Ze))if(S.compilerOptions.outFile){if(S.compilerOptions.composite){let _t=ht(S.outSignature,void 0);if(!_t)return Tt.skippedDtsWrite=!0;S.outSignature=_t}}else{pe.assert(Ye?.length===1);let _t;if(!Te){let Rt=Ye[0],Lt=S.fileInfos.get(Rt.resolvedPath);if(Lt.signature===Rt.version){let Ke=btt(S.program,Rt,We,g,Tt);(ot=Tt?.diagnostics)!=null&&ot.length||(_t=Ke),Ke!==Rt.version&&(g.storeSignatureInfo&&(S.signatureInfo??(S.signatureInfo=new Map)).set(Rt.resolvedPath,1),S.affectedFiles&&((Qe=S.oldSignatures)==null?void 0:Qe.get(Rt.resolvedPath))===void 0&&(S.oldSignatures??(S.oldSignatures=new Map)).set(Rt.resolvedPath,Lt.signature||!1),Lt.signature=Ke)}}if(S.compilerOptions.composite){let Rt=Ye[0].resolvedPath;if(_t=ht((mt=S.emitSignatures)==null?void 0:mt.get(Rt),_t),!_t)return Tt.skippedDtsWrite=!0;(S.emitSignatures??(S.emitSignatures=new Map)).set(Rt,_t)}}Ne?Ne(Ze,We,Ue,$e,Ye,Tt):g.writeFile?g.writeFile(Ze,We,Ue,$e,Ye,Tt):S.program.writeFile(Ze,We,Ue,$e,Ye,Tt);function ht(_t,Rt){let Lt=!_t||Xs(_t)?_t:_t[0];if(Rt??(Rt=kws(We,g,Tt)),Rt===Lt){if(_t===Lt)return;Tt?Tt.differsOnlyInMap=!0:Tt={differsOnlyInMap:!0}}else S.hasChangedEmitSignature=!0,S.latestChangedDtsFile=Ze;return Rt}}:Ne||$i(g,g.writeFile)}function re(Ne,Te,Ze,We,Ue){pe.assert(Lie(S)),s===1&&L3t(S,Ne);let $e=mtt(R,Ne,Te,Ze);if($e)return $e;if(!Ne)if(s===1){let Tt=[],ot=!1,Qe,mt=[],ht;for(;ht=M(Te,Ze,We,Ue);)ot=ot||ht.result.emitSkipped,Qe=Or(Qe,ht.result.diagnostics),mt=Or(mt,ht.result.emittedFiles),Tt=Or(Tt,ht.result.sourceMaps);return{emitSkipped:ot,diagnostics:Qe||E,emittedFiles:mt,sourceMaps:Tt}}else vrn(S,We,!1);let Ye=S.program.emit(Ne,ee(Te,Ue),Ze,We,Ue);return ge(Ne,We,!1,Ye.diagnostics),Ye}function ge(Ne,Te,Ze,We){!Ne&&s!==1&&(vrn(S,Te,Ze),V(We))}function Ie(Ne,Te){var Ze;if(pe.assert(Lie(S)),s===1){L3t(S,Ne);let We,Ue;for(;We=W(void 0,Te,void 0,void 0,!0);)Ne||(Ue=Or(Ue,We.result.diagnostics));return(Ne?(Ze=S.emitDiagnosticsPerFile)==null?void 0:Ze.get(Ne.resolvedPath):Ue)||E}else{let We=S.program.getDeclarationDiagnostics(Ne,Te);return ge(Ne,void 0,!0,We),We}}function _e(Ne,Te){for(pe.assert(Lie(S));;){let Ze=Srn(S,Ne,g),We;if(Ze)if(Ze!==S.program){let Ue=Ze;if((!Te||!Te(Ue))&&(We=ytt(S,Ue,Ne)),S.seenAffectedFiles.add(Ue.resolvedPath),S.affectedFilesIndex++,S.buildInfoEmitPending=!0,!We)continue}else{let Ue,$e=new Map;S.program.getSourceFiles().forEach(Ye=>Ue=Or(Ue,ytt(S,Ye,Ne,$e))),S.semanticDiagnosticsPerFile=$e,We=Ue||E,S.changedFilesSet.clear(),S.programEmitPending=HP(S.compilerOptions),S.compilerOptions.noCheck||(S.checkPending=void 0),S.buildInfoEmitPending=!0}else{S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0);return}return{result:We,affected:Ze}}}function Ee(Ne,Te){if(pe.assert(Lie(S)),L3t(S,Ne),Ne)return ytt(S,Ne,Te);for(;;){let We=_e(Te);if(!We)break;if(We.affected===S.program)return We.result}let Ze;for(let We of S.program.getSourceFiles())Ze=Or(Ze,ytt(S,We,Te));return S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0),Ze||E}}function Stt(s,c,g){var d,h;let _=((d=s.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(s.affectedFilesPendingEmit??(s.affectedFilesPendingEmit=new Map)).set(c,_|g),(h=s.emitDiagnosticsPerFile)==null||h.delete(c)}function H3t(s){return Xs(s)?{version:s,signature:s,affectsGlobalScope:void 0,impliedFormat:void 0}:Xs(s.signature)?s:{version:s.version,signature:s.signature===!1?void 0:s.version,affectsGlobalScope:s.affectsGlobalScope,impliedFormat:s.impliedFormat}}function Y3t(s,c){return ws(s)?c:s[1]||24}function Q3t(s,c){return s||HP(c||{})}function X3t(s,c,g){var d,h,_,S;let R=Mo(Xc(c,g.getCurrentDirectory())),T=_d(g.useCaseSensitiveFileNames()),W,V=(d=s.fileNames)==null?void 0:d.map(Ie),M,ee=s.latestChangedDtsFile?_e(s.latestChangedDtsFile):void 0,re=new Map,ge=new Set(At(s.changeFileSet,Ee));if(O3t(s))s.fileInfos.forEach((Ue,$e)=>{let Ye=Ee($e+1);re.set(Ye,Xs(Ue)?{version:Ue,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:Ue)}),W={fileInfos:re,compilerOptions:s.options?E9e(s.options,_e):{},semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:We(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,latestChangedDtsFile:ee,outSignature:s.outSignature,programEmitPending:s.pendingEmit===void 0?void 0:Q3t(s.pendingEmit,s.options),hasErrors:s.errors,checkPending:s.checkPending};else{M=(h=s.fileIdsList)==null?void 0:h.map(Ye=>new Set(Ye.map(Ee)));let Ue=(_=s.options)!=null&&_.composite&&!s.options.outFile?new Map:void 0;s.fileInfos.forEach((Ye,Tt)=>{let ot=Ee(Tt+1),Qe=H3t(Ye);re.set(ot,Qe),Ue&&Qe.signature&&Ue.set(ot,Qe.signature)}),(S=s.emitSignatures)==null||S.forEach(Ye=>{if(ws(Ye))Ue.delete(Ee(Ye));else{let Tt=Ee(Ye[0]);Ue.set(Tt,!Xs(Ye[1])&&!Ye[1].length?[Ue.get(Tt)]:Ye[1])}});let $e=s.affectedFilesPendingEmit?HP(s.options||{}):void 0;W={fileInfos:re,compilerOptions:s.options?E9e(s.options,_e):{},referencedMap:Te(s.referencedMap,s.options??{}),semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:We(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,affectedFilesPendingEmit:s.affectedFilesPendingEmit&&Ru(s.affectedFilesPendingEmit,Ye=>Ee(ws(Ye)?Ye:Ye[0]),Ye=>Y3t(Ye,$e)),latestChangedDtsFile:ee,emitSignatures:Ue?.size?Ue:void 0,hasErrors:s.errors,checkPending:s.checkPending}}return{state:W,getProgram:il,getProgramOrUndefined:cm,releaseProgram:Dc,getCompilerOptions:()=>W.compilerOptions,getSourceFile:il,getSourceFiles:il,getOptionsDiagnostics:il,getGlobalDiagnostics:il,getConfigFileParsingDiagnostics:il,getSyntacticDiagnostics:il,getDeclarationDiagnostics:il,getSemanticDiagnostics:il,emit:il,getAllDependencies:il,getCurrentDirectory:il,emitNextAffectedFile:il,getSemanticDiagnosticsOfNextAffectedFile:il,emitBuildInfo:il,close:Dc,hasChangedEmitSignature:As};function Ie(Ue){return Ou(Ue,R,T)}function _e(Ue){return Xc(Ue,R)}function Ee(Ue){return V[Ue-1]}function Ne(Ue){return M[Ue-1]}function Te(Ue,$e){let Ye=nR.createReferencedMap($e);return!Ye||!Ue||Ue.forEach(([Tt,ot])=>Ye.set(Ee(Tt),Ne(ot))),Ye}function Ze(Ue){let $e=new Map(lr(re.keys(),Ye=>ge.has(Ye)?void 0:[Ye,E]));return Ue?.forEach(Ye=>{ws(Ye)?$e.delete(Ee(Ye)):$e.set(Ee(Ye[0]),Ye[1])}),$e}function We(Ue){return Ue&&Ru(Ue,$e=>Ee($e[0]),$e=>$e[1])}}function vtt(s,c,g){let d=Mo(Xc(c,g.getCurrentDirectory())),h=_d(g.useCaseSensitiveFileNames()),_=new Map,S=0,R=new Map,T=new Map(s.resolvedRoot);return s.fileInfos.forEach((V,M)=>{let ee=Ou(s.fileNames[M],d,h),re=Xs(V)?V:V.version;if(_.set(ee,re),SOu(_,d,h))}function Btt(s,c){return{state:void 0,getProgram:g,getProgramOrUndefined:()=>s.program,releaseProgram:()=>s.program=void 0,getCompilerOptions:()=>s.compilerOptions,getSourceFile:d=>g().getSourceFile(d),getSourceFiles:()=>g().getSourceFiles(),getOptionsDiagnostics:d=>g().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>g().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,h)=>g().getSyntacticDiagnostics(d,h),getDeclarationDiagnostics:(d,h)=>g().getDeclarationDiagnostics(d,h),getSemanticDiagnostics:(d,h)=>g().getSemanticDiagnostics(d,h),emit:(d,h,_,S,R)=>g().emit(d,h,_,S,R),emitBuildInfo:(d,h)=>g().emitBuildInfo(d,h),getAllDependencies:il,getCurrentDirectory:()=>g().getCurrentDirectory(),close:Dc};function g(){return pe.checkDefined(s.program)}}function xrn(s,c,g,d,h,_){return Ett(0,AVe(s,c,g,d,h,_))}function wtt(s,c,g,d,h,_){return Ett(1,AVe(s,c,g,d,h,_))}function Grn(s,c,g,d,h,_){let{newProgram:S,configFileParsingDiagnostics:R}=AVe(s,c,g,d,h,_);return Btt({program:S,compilerOptions:S.getCompilerOptions()},R)}function dVe(s){return di(s,"/node_modules/.staging")?aa(s,"/.staging"):jt(Qp,c=>s.includes(c))?void 0:s}function U3t(s,c){if(c<=1)return 1;let g=1,d=s[0].search(/[a-z]:/i)===0;if(s[0]!==ag&&!d&&s[1].search(/[a-z]\$$/i)===0){if(c===2)return 2;g=2,d=!0}return d&&!s[g].match(/^users$/i)?g:s[g].match(/^workspaces$/i)?g+1:g+2}function Ttt(s,c){if(c===void 0&&(c=s.length),c<=2)return!1;let g=U3t(s,c);return c>g+1}function qEe(s){return Ttt(Np(s))}function K3t(s){return Zrn(Mo(s))}function Frn(s,c){if(c.lengthh.length+1?z3t(W,T,Math.max(h.length+1,V+1),ee):{dir:g,dirPath:d,nonRecursive:!0}:Lrn(W,T,T.length-1,V,M,h,ee,R)}function Lrn(s,c,g,d,h,_,S,R){if(h!==-1)return z3t(s,c,h+1,S);let T=!0,W=g;if(!R){for(let V=0;V=g&&d+2xws(d,h,_,s,g,c,S)}}function xws(s,c,g,d,h,_,S){let R=pVe(s),T=BU(g,d,h,R,c,_,S);if(!s.getGlobalTypingsCacheLocation)return T;let W=s.getGlobalTypingsCacheLocation();if(W!==void 0&&!Xr(g)&&!(T.resolvedModule&&WAe(T.resolvedModule.extension))){let{resolvedModule:V,failedLookupLocations:M,affectingLocations:ee,resolutionDiagnostics:re}=gOt(pe.checkDefined(s.globalCacheResolutionModuleName)(g),s.projectName,h,R,W,c);if(V)return T.resolvedModule=V,T.failedLookupLocations=wie(T.failedLookupLocations,M),T.affectingLocations=wie(T.affectingLocations,ee),T.resolutionDiagnostics=wie(T.resolutionDiagnostics,re),T}return T}function Ntt(s,c,g){let d,h,_,S=new Set,R=new Set,T=new Set,W=new Map,V=new Map,M=!1,ee,re,ge,Ie,_e,Ee=!1,Ne=FA(()=>s.getCurrentDirectory()),Te=s.getCachedDirectoryStructureHost(),Ze=new Map,We=Rie(Ne(),s.getCanonicalFileName,s.getCompilationSettings()),Ue=new Map,$e=x9e(Ne(),s.getCanonicalFileName,s.getCompilationSettings(),We.getPackageJsonInfoCache(),We.optionsToRedirectsKey),Ye=new Map,Tt=Rie(Ne(),s.getCanonicalFileName,uet(s.getCompilationSettings()),We.getPackageJsonInfoCache()),ot=new Map,Qe=new Map,mt=$3t(c,Ne),ht=s.toPath(mt),_t=Np(ht),Rt=Ttt(_t),Lt=new Map,Ke=new Map,Pt=new Map,_r=new Map;return{rootDirForResolution:c,resolvedModuleNames:Ze,resolvedTypeReferenceDirectives:Ue,resolvedLibraries:Ye,resolvedFileToResolution:W,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:T,directoryWatchesOfFailedLookups:ot,fileWatchesOfAffectingLocations:Qe,packageDirWatchers:Ke,dirPathToSymlinkPackageRefCount:Pt,watchFailedLookupLocationsOfExternalModuleResolutions:si,getModuleResolutionCache:()=>We,startRecordingFilesWithChangedResolutions:Dt,finishRecordingFilesWithChangedResolutions:tr,startCachingPerDirectoryResolution:dt,finishCachingPerDirectoryResolution:st,resolveModuleNameLiterals:jn,resolveTypeReferenceDirectiveReferences:mn,resolveLibrary:Zi,resolveSingleModuleNameWithoutWatching:Ns,removeResolutionsFromProjectReferenceRedirects:Oa,removeResolutionsOfFile:tl,hasChangedAutomaticTypeDirectiveNames:()=>M,invalidateResolutionOfFile:Tg,invalidateResolutionsOfFailedLookupLocations:Pn,setFilesWithInvalidatedNonRelativeUnresolvedImports:Cs,createHasInvalidatedResolutions:Gr,isFileWithInvalidatedNonRelativeUnresolvedImports:ur,updateTypeRootsWatch:Kr,closeTypeRootsWatch:nr,clear:Gt,onChangesAffectModuleResolution:nt};function Gt(){Fy(ot,Cv),Fy(Qe,Cv),Lt.clear(),Ke.clear(),Pt.clear(),S.clear(),nr(),Ze.clear(),Ue.clear(),W.clear(),R.clear(),T.clear(),ge=void 0,Ie=void 0,_e=void 0,re=void 0,ee=void 0,Ee=!1,We.clear(),$e.clear(),We.update(s.getCompilationSettings()),$e.update(s.getCompilationSettings()),Tt.clear(),V.clear(),Ye.clear(),M=!1}function nt(){Ee=!0,We.clearAllExceptPackageJsonInfoCache(),$e.clearAllExceptPackageJsonInfoCache(),We.update(s.getCompilationSettings()),$e.update(s.getCompilationSettings())}function Dt(){d=[]}function tr(){let hr=d;return d=void 0,hr}function ur(hr){if(!_)return!1;let Sn=_.get(hr);return!!Sn&&!!Sn.length}function Gr(hr,Sn){Pn();let Ni=h;return h=void 0,{hasInvalidatedResolutions:Gi=>hr(Gi)||Ee||!!Ni?.has(Gi)||ur(Gi),hasInvalidatedLibResolutions:Gi=>{var nn;return Sn(Gi)||!!((nn=Ye?.get(Gi))!=null&&nn.isInvalidated)}}}function dt(){We.isReadonly=void 0,$e.isReadonly=void 0,Tt.isReadonly=void 0,We.getPackageJsonInfoCache().isReadonly=void 0,We.clearAllExceptPackageJsonInfoCache(),$e.clearAllExceptPackageJsonInfoCache(),Tt.clearAllExceptPackageJsonInfoCache(),Gl(),Lt.clear()}function pr(hr){Ye.forEach((Sn,Ni)=>{var Gi;(Gi=hr?.resolvedLibReferences)!=null&&Gi.has(Ni)||(hn(Sn,s.toPath(sVe(s.getCompilationSettings(),Ne(),Ni)),xL),Ye.delete(Ni))})}function st(hr,Sn){_=void 0,Ee=!1,Gl(),hr!==Sn&&(pr(hr),hr?.getSourceFiles().forEach(Ni=>{var Gi;let nn=((Gi=Ni.packageJsonLocations)==null?void 0:Gi.length)??0,En=V.get(Ni.resolvedPath)??E;for(let ds=En.length;dsnn)for(let ds=nn;ds{let nn=hr?.getSourceFileByPath(Gi);(!nn||nn.resolvedPath!==Gi)&&(Ni.forEach(En=>Qe.get(En).files--),V.delete(Gi))})),ot.forEach(zt),Qe.forEach(Ht),Ke.forEach(ir),M=!1,We.isReadonly=!0,$e.isReadonly=!0,Tt.isReadonly=!0,We.getPackageJsonInfoCache().isReadonly=!0,Lt.clear()}function ir(hr,Sn){hr.dirPathToWatcher.size===0&&Ke.delete(Sn)}function zt(hr,Sn){hr.refCount===0&&(ot.delete(Sn),hr.watcher.close())}function Ht(hr,Sn){var Ni;hr.files===0&&hr.resolutions===0&&!((Ni=hr.symlinks)!=null&&Ni.size)&&(Qe.delete(Sn),hr.watcher.close())}function Br({entries:hr,containingFile:Sn,containingSourceFile:Ni,redirectedReference:Gi,options:nn,perFileCache:En,reusedNames:ds,loader:Mt,getResolutionWithResolvedFileName:cn,deferWatchingNonRelativeResolution:Bt,shouldRetryResolution:xe,logChanges:fr}){var Je;let In=s.toPath(Sn),Hn=En.get(In)||En.set(In,Tie()).get(In),Ot=[],$r=fr&&ur(In),ri=s.getCurrentProgram(),ao=ri&&((Je=ri.getRedirectFromSourceFile(Sn))==null?void 0:Je.resolvedRef),Bs=ao?!Gi||Gi.sourceFile.path!==ao.sourceFile.path:!!Gi,Ys=Tie();for(let wn of hr){let Mn=Mt.nameAndMode.getName(wn),ci=Mt.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),es=Hn.get(Mn,ci);if(!Ys.has(Mn,ci)&&(Ee||Bs||!es||es.isInvalidated||$r&&!Xr(Mn)&&xe(es))){let Wi=es;es=Mt.resolve(Mn,ci),s.onDiscoveredSymlink&&Gws(es)&&s.onDiscoveredSymlink(),Hn.set(Mn,ci,es),es!==Wi&&(si(Mn,es,In,cn,Bt),Wi&&hn(Wi,In,cn)),fr&&d&&!tn(Wi,es)&&(d.push(In),fr=!1)}else{let Wi=pVe(s);if(VP(nn,Wi)&&!Ys.has(Mn,ci)){let Vn=cn(es);eu(Wi,En===Ze?Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Mn,Sn,Vn?.resolvedFileName,Vn?.packageId&&oN(Vn.packageId))}}pe.assert(es!==void 0&&!es.isInvalidated),Ys.set(Mn,ci,!0),Ot.push(es)}return ds?.forEach(wn=>Ys.set(Mt.nameAndMode.getName(wn),Mt.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),!0)),Hn.size()!==Ys.size()&&Hn.forEach((wn,Mn,ci)=>{Ys.has(Mn,ci)||(hn(wn,In,cn),Hn.delete(Mn,ci))}),Ot;function tn(wn,Mn){if(wn===Mn)return!0;if(!wn||!Mn)return!1;let ci=cn(wn),es=cn(Mn);return ci===es?!0:!ci||!es?!1:ci.resolvedFileName===es.resolvedFileName}}function mn(hr,Sn,Ni,Gi,nn,En){return Br({entries:hr,containingFile:Sn,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:En,perFileCache:Ue,loader:iVe(Sn,Ni,Gi,pVe(s),$e),getResolutionWithResolvedFileName:c7,shouldRetryResolution:ds=>ds.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function jn(hr,Sn,Ni,Gi,nn,En){return Br({entries:hr,containingFile:Sn,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:En,perFileCache:Ze,loader:e5t(Sn,Ni,Gi,s,We),getResolutionWithResolvedFileName:xL,shouldRetryResolution:ds=>!ds.resolvedModule||!ez(ds.resolvedModule.extension),logChanges:g,deferWatchingNonRelativeResolution:!0})}function Zi(hr,Sn,Ni,Gi){let nn=pVe(s),En=Ye?.get(Gi);if(!En||En.isInvalidated){let ds=En;En=G9e(hr,Sn,Ni,nn,Tt);let Mt=s.toPath(Sn);si(hr,En,Mt,xL,!1),Ye.set(Gi,En),ds&&hn(ds,Mt,xL)}else if(VP(Ni,nn)){let ds=xL(En);eu(nn,ds?.resolvedFileName?ds.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,hr,Sn,ds?.resolvedFileName,ds?.packageId&&oN(ds.packageId))}return En}function Ns(hr,Sn){var Ni,Gi;let nn=s.toPath(Sn),En=Ze.get(nn),ds=En?.get(hr,void 0);if(ds&&!ds.isInvalidated)return ds;let Mt=(Ni=s.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Ni.call(s,We),cn=pVe(s),Bt=BU(hr,Sn,s.getCompilationSettings(),cn,We);return(Gi=s.afterResolveSingleModuleNameWithoutWatching)==null||Gi.call(s,We,hr,Sn,Bt,Mt),Bt}function An(hr){return di(hr,"/node_modules/@types")}function si(hr,Sn,Ni,Gi,nn){if((Sn.files??(Sn.files=new Set)).add(Ni),Sn.files.size!==1)return;!nn||Xr(hr)?Ic(Sn):S.add(Sn);let En=Gi(Sn);if(En&&En.resolvedFileName){let ds=s.toPath(En.resolvedFileName),Mt=W.get(ds);Mt||W.set(ds,Mt=new Set),Mt.add(Sn)}}function ks(hr,Sn){let Ni=s.toPath(hr),Gi=Rtt(hr,Ni,mt,ht,_t,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dir:nn,dirPath:En,nonRecursive:ds,packageDir:Mt,packageDirPath:cn}=Gi;En===ht?(pe.assert(ds),pe.assert(!Mt),Sn=!0):Wo(nn,En,Mt,cn,ds)}return Sn}function Ic(hr){var Sn;pe.assert(!!((Sn=hr.files)!=null&&Sn.size));let{failedLookupLocations:Ni,affectingLocations:Gi,alternateResult:nn}=hr;if(!Ni?.length&&!Gi?.length&&!nn)return;(Ni?.length||nn)&&R.add(hr);let En=!1;if(Ni)for(let ds of Ni)En=ks(ds,En);nn&&(En=ks(nn,En)),En&&Wo(mt,ht,void 0,void 0,!0),su(hr,!Ni?.length&&!nn)}function su(hr,Sn){var Ni;pe.assert(!!((Ni=hr.files)!=null&&Ni.size));let{affectingLocations:Gi}=hr;if(Gi?.length){Sn&&T.add(hr);for(let nn of Gi)Zn(nn,!0)}}function Zn(hr,Sn){let Ni=Qe.get(hr);if(Ni){Sn?Ni.resolutions++:Ni.files++;return}let Gi=hr,nn=!1,En;s.realpath&&(Gi=s.realpath(hr),hr!==Gi&&(nn=!0,En=Qe.get(Gi)));let ds=Sn?1:0,Mt=Sn?0:1;if(!nn||!En){let cn={watcher:j3t(s.toPath(Gi))?s.watchAffectingFileLocation(Gi,(Bt,xe)=>{Te?.addOrDeleteFile(Bt,s.toPath(Gi),xe),ya(Gi,We.getPackageJsonInfoCache().getInternalMap()),s.scheduleInvalidateResolutionsOfFailedLookupLocations()}):Pie,resolutions:nn?0:ds,files:nn?0:Mt,symlinks:void 0};Qe.set(Gi,cn),nn&&(En=cn)}if(nn){pe.assert(!!En);let cn={watcher:{close:()=>{var Bt;let xe=Qe.get(Gi);(Bt=xe?.symlinks)!=null&&Bt.delete(hr)&&!xe.symlinks.size&&!xe.resolutions&&!xe.files&&(Qe.delete(Gi),xe.watcher.close())}},resolutions:ds,files:Mt,symlinks:void 0};Qe.set(hr,cn),(En.symlinks??(En.symlinks=new Set)).add(hr)}}function ya(hr,Sn){var Ni;let Gi=Qe.get(hr);Gi?.resolutions&&(re??(re=new Set)).add(hr),Gi?.files&&(ee??(ee=new Set)).add(hr),(Ni=Gi?.symlinks)==null||Ni.forEach(nn=>ya(nn,Sn)),Sn?.delete(s.toPath(hr))}function Gl(){S.forEach(Ic),S.clear()}function ba(hr,Sn,Ni,Gi,nn){pe.assert(!nn);let En=Lt.get(Gi),ds=Ke.get(Gi);if(En===void 0){let Bt=s.realpath(Ni);En=Bt!==Ni&&s.toPath(Bt)!==Gi,Lt.set(Gi,En),ds?ds.isSymlink!==En&&(ds.dirPathToWatcher.forEach(xe=>{Oi(ds.isSymlink?Gi:Sn),xe.watcher=cn()}),ds.isSymlink=En):Ke.set(Gi,ds={dirPathToWatcher:new Map,isSymlink:En})}else pe.assertIsDefined(ds),pe.assert(En===ds.isSymlink);let Mt=ds.dirPathToWatcher.get(Sn);Mt?Mt.refCount++:(ds.dirPathToWatcher.set(Sn,{watcher:cn(),refCount:1}),En&&Pt.set(Sn,(Pt.get(Sn)??0)+1));function cn(){return En?hc(Ni,Gi,nn):hc(hr,Sn,nn)}}function Wo(hr,Sn,Ni,Gi,nn){!Gi||!s.realpath?hc(hr,Sn,nn):ba(hr,Sn,Ni,Gi,nn)}function hc(hr,Sn,Ni){let Gi=ot.get(Sn);return Gi?(pe.assert(!!Ni==!!Gi.nonRecursive),Gi.refCount++):ot.set(Sn,Gi={watcher:lo(hr,Sn,Ni),refCount:1,nonRecursive:Ni}),Gi}function yr(hr,Sn){let Ni=s.toPath(hr),Gi=Rtt(hr,Ni,mt,ht,_t,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dirPath:nn,packageDirPath:En}=Gi;if(nn===ht)Sn=!0;else if(En&&s.realpath){let ds=Ke.get(En),Mt=ds.dirPathToWatcher.get(nn);if(Mt.refCount--,Mt.refCount===0&&(Oi(ds.isSymlink?En:nn),ds.dirPathToWatcher.delete(nn),ds.isSymlink)){let cn=Pt.get(nn)-1;cn===0?Pt.delete(nn):Pt.set(nn,cn)}}else Oi(nn)}return Sn}function hn(hr,Sn,Ni){if(pe.checkDefined(hr.files).delete(Sn),hr.files.size)return;hr.files=void 0;let Gi=Ni(hr);if(Gi&&Gi.resolvedFileName){let Mt=s.toPath(Gi.resolvedFileName),cn=W.get(Mt);cn?.delete(hr)&&!cn.size&&W.delete(Mt)}let{failedLookupLocations:nn,affectingLocations:En,alternateResult:ds}=hr;if(R.delete(hr)){let Mt=!1;if(nn)for(let cn of nn)Mt=yr(cn,Mt);ds&&(Mt=yr(ds,Mt)),Mt&&Oi(ht)}else En?.length&&T.delete(hr);if(En)for(let Mt of En){let cn=Qe.get(Mt);cn.resolutions--}}function Oi(hr){let Sn=ot.get(hr);Sn.refCount--}function lo(hr,Sn,Ni){return s.watchDirectoryOfFailedLookupLocation(hr,Gi=>{let nn=s.toPath(Gi);Te&&Te.addOrDeleteFileOrDirectory(Gi,nn),Tu(nn,Sn===nn)},Ni?0:1)}function pa(hr,Sn,Ni){let Gi=hr.get(Sn);Gi&&(Gi.forEach(nn=>hn(nn,Sn,Ni)),hr.delete(Sn))}function Oa(hr){if(!aA(hr,".json"))return;let Sn=s.getCurrentProgram();if(!Sn)return;let Ni=Sn.getResolvedProjectReferenceByPath(hr);Ni&&Ni.commandLine.fileNames.forEach(Gi=>tl(s.toPath(Gi)))}function tl(hr){pa(Ze,hr,xL),pa(Ue,hr,c7)}function Qu(hr,Sn){if(!hr)return!1;let Ni=!1;return hr.forEach(Gi=>{if(!(Gi.isInvalidated||!Sn(Gi))){Gi.isInvalidated=Ni=!0;for(let nn of pe.checkDefined(Gi.files))(h??(h=new Set)).add(nn),M=M||di(nn,Zde)}}),Ni}function Tg(hr){tl(hr);let Sn=M;Qu(W.get(hr),Tf)&&M&&!Sn&&s.onChangedAutomaticTypeDirectiveNames()}function Cs(hr){pe.assert(_===hr||_===void 0),_=hr}function Tu(hr,Sn){if(Sn)(_e||(_e=new Set)).add(hr);else{let Ni=dVe(hr);if(!Ni||(hr=Ni,s.fileIsOpen(hr)))return!1;let Gi=Mo(hr);if(An(hr)||Vd(hr)||An(Gi)||Vd(Gi))(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);else{if(_3t(s.getCurrentProgram(),hr)||aA(hr,".map"))return!1;(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);let nn=TEe(hr,!0);nn&&(Ie||(Ie=new Set)).add(nn)}}s.scheduleInvalidateResolutionsOfFailedLookupLocations()}function Pr(){let hr=We.getPackageJsonInfoCache().getInternalMap();hr&&(ge||Ie||_e)&&hr.forEach((Sn,Ni)=>on(Ni)?hr.delete(Ni):void 0)}function Pn(){var hr;if(Ee)return ee=void 0,Pr(),(ge||Ie||_e||re)&&Qu(Ye,pt),ge=void 0,Ie=void 0,_e=void 0,re=void 0,!0;let Sn=!1;return ee&&((hr=s.getCurrentProgram())==null||hr.getSourceFiles().forEach(Ni=>{jt(Ni.packageJsonLocations,Gi=>ee.has(Gi))&&((h??(h=new Set)).add(Ni.path),Sn=!0)}),ee=void 0),!ge&&!Ie&&!_e&&!re||(Sn=Qu(R,pt)||Sn,Pr(),ge=void 0,Ie=void 0,_e=void 0,Sn=Qu(T,it)||Sn,re=void 0),Sn}function pt(hr){var Sn;return it(hr)?!0:!ge&&!Ie&&!_e?!1:((Sn=hr.failedLookupLocations)==null?void 0:Sn.some(Ni=>on(s.toPath(Ni))))||!!hr.alternateResult&&on(s.toPath(hr.alternateResult))}function on(hr){return ge?.has(hr)||ae(Ie?.keys()||[],Sn=>Ac(hr,Sn)?!0:void 0)||ae(_e?.keys()||[],Sn=>hr.length>Sn.length&&Ac(hr,Sn)&&(cE(Sn)||hr[Sn.length]===ag)?!0:void 0)}function it(hr){var Sn;return!!re&&((Sn=hr.affectingLocations)==null?void 0:Sn.some(Ni=>re.has(Ni)))}function nr(){Fy(_r,dv)}function Fr(hr){return Dn(hr)?s.watchTypeRootsDirectory(hr,Sn=>{let Ni=s.toPath(Sn);Te&&Te.addOrDeleteFileOrDirectory(Sn,Ni),M=!0,s.onChangedAutomaticTypeDirectiveNames();let Gi=q3t(hr,s.toPath(hr),ht,_t,Rt,Ne,s.preferNonRecursiveWatch,nn=>ot.has(nn)||Pt.has(nn));Gi&&Tu(Ni,Gi===Ni)},1):Pie}function Kr(){let hr=s.getCompilationSettings();if(hr.types){nr();return}let Sn=Cde(hr,{getCurrentDirectory:Ne});Sn?Q7(_r,new Set(Sn),{createNewValue:Fr,onDeleteValue:dv}):nr()}function Dn(hr){return s.getCompilationSettings().typeRoots?!0:K3t(s.toPath(hr))}}function Gws(s){var c,g;return!!((c=s.resolvedModule)!=null&&c.originalPath||(g=s.resolvedTypeReferenceDirective)!=null&&g.originalPath)}var Vrn=yd?{getCurrentDirectory:()=>yd.getCurrentDirectory(),getNewLine:()=>yd.newLine,getCanonicalFileName:_d(yd.useCaseSensitiveFileNames)}:void 0;function Gz(s,c){let g=s===yd&&Vrn?Vrn:{getCurrentDirectory:()=>s.getCurrentDirectory(),getNewLine:()=>s.newLine,getCanonicalFileName:_d(s.useCaseSensitiveFileNames)};if(!c)return h=>s.write(utt(h,g));let d=new Array(1);return h=>{d[0]=h,s.write(w3t(d,g)+g.getNewLine()),d[0]=void 0}}function Prn(s,c,g){return s.clearScreen&&!g.preserveWatchOutput&&!g.extendedDiagnostics&&!g.diagnostics&&k(Wrn,c.code)?(s.clearScreen(),!0):!1}var Wrn=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function Fws(s,c){return k(Wrn,s.code)?c+c:c}function $Ee(s){return s.now?s.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function Dtt(s,c){return c?(g,d,h)=>{Prn(s,g,h);let _=`[${AQ($Ee(s),"\x1B[90m")}] `;_+=`${wN(g.messageText,s.newLine)}${d+d}`,s.write(_)}:(g,d,h)=>{let _="";Prn(s,g,h)||(_+=d),_+=`${$Ee(s)} - `,_+=`${wN(g.messageText,s.newLine)}${Fws(g,d)}`,s.write(_)}}function t5t(s,c,g,d,h,_){let S=h;S.onUnRecoverableConfigFileDiagnostic=T=>Hrn(h,_,T);let R=yEe(s,c,S,g,d);return S.onUnRecoverableConfigFileDiagnostic=void 0,R}function fVe(s){return ct(s,c=>c.category===1)}function IVe(s){return Me(s,g=>g.category===1).map(g=>{if(g.file!==void 0)return`${g.file.fileName}`}).map(g=>{if(g===void 0)return;let d=de(s,h=>h.file!==void 0&&h.file.fileName===g);if(d!==void 0){let{line:h}=Ra(d.file,d.start);return{fileName:g,line:h+1}}})}function ktt(s){return s===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function Orn(s,c){let g=AQ(":"+s.line,"\x1B[90m");return lE(s.fileName)&&lE(c)?mp(c,s.fileName,!1)+g:s.fileName+g}function xtt(s,c,g,d){if(s===0)return"";let h=c.filter(V=>V!==void 0),_=h.map(V=>`${V.fileName}:${V.line}`).filter((V,M,ee)=>ee.indexOf(V)===M),S=h[0]&&Orn(h[0],d.getCurrentDirectory()),R;s===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,S]:[Z.Found_1_error]:R=_.length===0?[Z.Found_0_errors,s]:_.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,s,S]:[Z.Found_0_errors_in_1_files,s,_.length];let T=Nf(...R),W=_.length>1?Zws(h,d):"";return`${g}${wN(T.messageText,g)}${g}${g}${W}`}function Zws(s,c){let g=s.filter((M,ee,re)=>ee===re.findIndex(ge=>ge?.fileName===M?.fileName));if(g.length===0)return"";let d=M=>Math.log(M)*Math.LOG10E+1,h=g.map(M=>[M,ct(s,ee=>ee.fileName===M.fileName)]),_=ls(h,0,M=>M[1]),S=Z.Errors_Files.message,R=S.split(" ")[0].length,T=Math.max(R,d(_)),W=Math.max(d(_)-R,0),V="";return V+=" ".repeat(W)+S+` +`,h.forEach(M=>{let[ee,re]=M,ge=Math.log(re)*Math.LOG10E+1|0,Ie=ge{c(d.fileName)})}function Ftt(s,c){var g,d;let h=s.getFileIncludeReasons(),_=S=>r2(S,s.getCurrentDirectory(),s.getCanonicalFileName);for(let S of s.getSourceFiles())c(`${Vie(S,_)}`),(g=h.get(S.path))==null||g.forEach(R=>c(` ${Ptt(s,R,_).messageText}`)),(d=Ztt(S,s.getCompilerOptionsForFile(S),_))==null||d.forEach(R=>c(` ${R.messageText}`))}function Ztt(s,c,g){var d;let h;if(s.path!==s.resolvedPath&&(h??(h=[])).push(wu(void 0,Z.File_is_output_of_project_reference_source_0,Vie(s.originalFileName,g))),s.redirectInfo&&(h??(h=[])).push(wu(void 0,Z.File_redirects_to_file_0,Vie(s.redirectInfo.redirectTarget,g))),vl(s))switch(NU(s,c)){case 99:s.packageJsonScope&&(h??(h=[])).push(wu(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,Vie(Ei(s.packageJsonLocations),g)));break;case 1:s.packageJsonScope?(h??(h=[])).push(wu(void 0,s.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,Vie(Ei(s.packageJsonLocations),g))):(d=s.packageJsonLocations)!=null&&d.length&&(h??(h=[])).push(wu(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return h}function Ltt(s,c){var g;let d=s.getCompilerOptions().configFile;if(!((g=d?.configFileSpecs)!=null&&g.validatedFilesSpec))return;let h=s.getCanonicalFileName(c),_=Mo(Xc(d.fileName,s.getCurrentDirectory())),S=Se(d.configFileSpecs.validatedFilesSpec,R=>s.getCanonicalFileName(Xc(R,_))===h);return S!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[S]:void 0}function Vtt(s,c){var g,d;let h=s.getCompilerOptions().configFile;if(!((g=h?.configFileSpecs)!=null&&g.validatedIncludeSpecs))return;if(h.configFileSpecs.isDefaultIncludeSpec)return!0;let _=aA(c,".json"),S=Mo(Xc(h.fileName,s.getCurrentDirectory())),R=s.useCaseSensitiveFileNames(),T=Se((d=h?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,W=>{if(_&&!di(W,".json"))return!1;let V=Sbe(W,S,"files");return!!V&&zD(`(?:${V})$`,R).test(c)});return T!==-1?h.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[T]:void 0}function Ptt(s,c,g){var d,h;let _=s.getCompilerOptions();if(K3(c)){let S=Lde(s,c),R=Zie(S)?S.file.text.substring(S.pos,S.end):`"${S.text}"`,T;switch(pe.assert(Zie(S)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:Zie(S)?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:S.text===PD?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:pe.assert(!S.packageId),T=Z.Referenced_via_0_from_file_1;break;case 5:T=S.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:pe.assert(!S.packageId),T=Z.Library_referenced_via_0_from_file_1;break;default:pe.assertNever(c)}return wu(void 0,T,R,Vie(S.file,g),S.packageId&&oN(S.packageId))}switch(c.kind){case 0:if(!((d=_.configFile)!=null&&d.configFileSpecs))return wu(void 0,Z.Root_file_specified_for_compilation);let S=Xc(s.getRootFileNames()[c.index],s.getCurrentDirectory());if(Ltt(s,S))return wu(void 0,Z.Part_of_files_list_in_tsconfig_json);let T=Vtt(s,S);return Xs(T)?wu(void 0,Z.Matched_by_include_pattern_0_in_1,T,Vie(_.configFile,g)):wu(void 0,T?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let W=c.kind===2,V=pe.checkDefined((h=s.getResolvedProjectReferences())==null?void 0:h[c.index]);return wu(void 0,_.outFile?W?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:W?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,Vie(V.sourceFile.fileName,g),_.outFile?"--outFile":"--out");case 8:{let M=_.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,oN(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,oN(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return wu(void 0,...M)}case 6:{if(c.index!==void 0)return wu(void 0,Z.Library_0_specified_in_compilerOptions,_.lib[c.index]);let M=RAe(Mg(_)),ee=M?[Z.Default_library_for_target_0,M]:[Z.Default_library];return wu(void 0,...ee)}default:pe.assertNever(c)}}function Vie(s,c){let g=Xs(s)?s:s.fileName;return c?c(g):g}function hVe(s,c,g,d,h,_,S,R){let T=s.getCompilerOptions(),W=s.getConfigFileParsingDiagnostics().slice(),V=W.length;Or(W,s.getSyntacticDiagnostics(void 0,_)),W.length===V&&(Or(W,s.getOptionsDiagnostics(_)),T.listFilesOnly||(Or(W,s.getGlobalDiagnostics(_)),W.length===V&&Or(W,s.getSemanticDiagnostics(void 0,_)),T.noEmit&&Ly(T)&&W.length===V&&Or(W,s.getDeclarationDiagnostics(void 0,_))));let M=T.listFilesOnly?{emitSkipped:!0,diagnostics:E}:s.emit(void 0,h,_,S,R);Or(W,M.diagnostics);let ee=ui(W);if(ee.forEach(c),g){let re=s.getCurrentDirectory();F(M.emittedFiles,ge=>{let Ie=Xc(ge,re);g(`TSFILE: ${Ie}`)}),Lws(s,g)}return d&&d(fVe(ee),IVe(ee)),{emitResult:M,diagnostics:ee}}function Wtt(s,c,g,d,h,_,S,R){let{emitResult:T,diagnostics:W}=hVe(s,c,g,d,h,_,S,R);return T.emitSkipped&&W.length>0?1:W.length>0?2:0}var Pie={close:Dc},Pde=()=>Pie;function Ott(s=yd,c){return{onWatchStatusChange:c||Dtt(s),watchFile:$i(s,s.watchFile)||Pde,watchDirectory:$i(s,s.watchDirectory)||Pde,setTimeout:$i(s,s.setTimeout)||Dc,clearTimeout:$i(s,s.clearTimeout)||Dc,preferNonRecursiveWatch:s.preferNonRecursiveWatch}}var jm={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"};function Mtt(s,c){let g=s.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=g!==0?_=>s.trace(_):Dc,h=stt(s,g,d);return h.writeLog=d,h}function Htt(s,c,g=s){let d=s.useCaseSensitiveFileNames(),h={getSourceFile:ctt((_,S)=>S?s.readFile(_,S):h.readFile(_),void 0),getDefaultLibLocation:$i(s,s.getDefaultLibLocation),getDefaultLibFileName:_=>s.getDefaultLibFileName(_),writeFile:ltt((_,S,R)=>s.writeFile(_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_)),getCurrentDirectory:FA(()=>s.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:_d(d),getNewLine:()=>uN(c()),fileExists:_=>s.fileExists(_),readFile:_=>s.readFile(_),trace:$i(s,s.trace),directoryExists:$i(g,g.directoryExists),getDirectories:$i(g,g.getDirectories),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable)||(()=>""),createHash:$i(s,s.createHash),readDirectory:$i(s,s.readDirectory),storeSignatureInfo:s.storeSignatureInfo,jsDocParsingMode:s.jsDocParsingMode};return h}function mVe(s,c){if(c.match(BOt)){let g=c.length,d=g;for(let h=g-1;h>=0;h--){let _=c.charCodeAt(h);switch(_){case 10:h&&c.charCodeAt(h-1)===13&&h--;case 13:break;default:if(_<127||!Cl(_)){d=h;continue}break}let S=c.substring(d,g);if(S.match(ket)){c=c.substring(0,d);break}else if(!S.match(xet))break;g=d}}return(s.createHash||ry)(c)}function CVe(s){let c=s.getSourceFile;s.getSourceFile=(...g)=>{let d=c.call(s,...g);return d&&(d.version=mVe(s,d.text)),d}}function Ytt(s,c){let g=FA(()=>Mo(iu(s.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames,getNewLine:()=>s.newLine,getCurrentDirectory:FA(()=>s.getCurrentDirectory()),getDefaultLibLocation:g,getDefaultLibFileName:d=>Ro(g(),Hs(d)),fileExists:d=>s.fileExists(d),readFile:(d,h)=>s.readFile(d,h),directoryExists:d=>s.directoryExists(d),getDirectories:d=>s.getDirectories(d),readDirectory:(d,h,_,S,R)=>s.readDirectory(d,h,_,S,R),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable),trace:d=>s.write(d+s.newLine),createDirectory:d=>s.createDirectory(d),writeFile:(d,h,_)=>s.writeFile(d,h,_),createHash:$i(s,s.createHash),createProgram:c||wtt,storeSignatureInfo:s.storeSignatureInfo,now:$i(s,s.now)}}function Mrn(s=yd,c,g,d){let h=S=>s.write(S+s.newLine),_=Ytt(s,c);return GA(_,Ott(s,d)),_.afterProgramCreate=S=>{let R=S.getCompilerOptions(),T=uN(R);hVe(S,g,h,W=>_.onWatchStatusChange(Nf(ktt(W),W),T,R,W))},_}function Hrn(s,c,g){c(g),s.exit(1)}function Qtt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:g,extraFileExtensions:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=S||Gz(h),W=Mrn(h,_,T,R);return W.onUnRecoverableConfigFileDiagnostic=V=>Hrn(h,T,V),W.configFileName=s,W.optionsToExtend=c,W.watchOptionsToExtend=g,W.extraFileExtensions=d,W}function Xtt({rootFiles:s,options:c,watchOptions:g,projectReferences:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=Mrn(h,_,S||Gz(h),R);return T.rootFiles=s,T.options=c,T.watchOptions=g,T.projectReferences=d,T}function r5t(s){let c=s.system||yd,g=s.host||(s.host=yVe(s.options,c)),d=n5t(s),h=Wtt(d,s.reportDiagnostic||Gz(c),_=>g.trace&&g.trace(_),s.reportErrorSummary||s.options.pretty?(_,S)=>c.write(xtt(_,S,c.newLine,g)):void 0);return s.afterProgramEmitAndDiagnostics&&s.afterProgramEmitAndDiagnostics(d),h}function _Ve(s,c){let g=U3(s);if(!g)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(g,s.configFilePath);else{let h=c.readFile(g);if(!h)return;d=ttt(g,h)}if(!(!d||d.version!==C||!zEe(d)))return X3t(d,g,c)}function yVe(s,c=yd){let g=tVe(s,void 0,c);return g.createHash=$i(c,c.createHash),g.storeSignatureInfo=c.storeSignatureInfo,CVe(g),Fde(g,d=>Ou(d,g.getCurrentDirectory(),g.getCanonicalFileName)),g}function n5t({rootNames:s,options:c,configFileParsingDiagnostics:g,projectReferences:d,host:h,createProgram:_}){h=h||yVe(c),_=_||wtt;let S=_Ve(c,h);return _(s,c,h,S,g,d)}function Yrn(s,c,g,d,h,_,S,R){return Ki(s)?Xtt({rootFiles:s,options:c,watchOptions:R,projectReferences:S,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_}):Qtt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:S,extraFileExtensions:R,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_})}function Jtt(s){let c,g,d,h,_=new Map([[void 0,void 0]]),S,R,T,W,V=s.extendedConfigCache,M=!1,ee=new Map,re,ge=!1,Ie=s.useCaseSensitiveFileNames(),_e=s.getCurrentDirectory(),{configFileName:Ee,optionsToExtend:Ne={},watchOptionsToExtend:Te,extraFileExtensions:Ze,createProgram:We}=s,{rootFiles:Ue,options:$e,watchOptions:Ye,projectReferences:Tt}=s,ot,Qe,mt=!1,ht=!1,_t=Ee===void 0?void 0:q9e(s,_e,Ie),Rt=_t||s,Lt=lVe(s,Rt),Ke=si();Ee&&s.configFileParsingResult&&(Pn(s.configFileParsingResult),Ke=si()),hc(Z.Starting_compilation_in_watch_mode),Ee&&!s.configFileParsingResult&&(Ke=uN(Ne),pe.assert(!Ue),Pr(),Ke=si()),pe.assert($e),pe.assert(Ue);let{watchFile:Pt,watchDirectory:_r,writeLog:Gt}=Mtt(s,$e),nt=_d(Ie);Gt(`Current directory: ${_e} CaseSensitiveFileNames: ${Ie}`);let Dt;Ee&&(Dt=Pt(Ee,Oa,2e3,Ye,jm.ConfigFile));let tr,ur=Gen(__filename);ur&&(tr=Pt(ur,tl,2e3,Ye,jm.ConfigFile));let Gr=Htt(s,()=>$e,Rt);CVe(Gr);let dt=Gr.getSourceFile;Gr.getSourceFile=(En,...ds)=>ya(En,ks(En),...ds),Gr.getSourceFileByPath=ya,Gr.getNewLine=()=>Ke,Gr.fileExists=Zn,Gr.onReleaseOldSourceFile=Wo,Gr.onReleaseParsedCommandLine=it,Gr.toPath=ks,Gr.getCompilationSettings=()=>$e,Gr.useSourceOfProjectReferenceRedirect=$i(s,s.useSourceOfProjectReferenceRedirect),Gr.preferNonRecursiveWatch=s.preferNonRecursiveWatch,Gr.watchDirectoryOfFailedLookupLocation=(En,ds,Mt)=>_r(En,ds,Mt,Ye,jm.FailedLookupLocations),Gr.watchAffectingFileLocation=(En,ds)=>Pt(En,ds,2e3,Ye,jm.AffectingFileLocation),Gr.watchTypeRootsDirectory=(En,ds,Mt)=>_r(En,ds,Mt,Ye,jm.TypeRoots),Gr.getCachedDirectoryStructureHost=()=>_t,Gr.scheduleInvalidateResolutionsOfFailedLookupLocations=Oi,Gr.onInvalidatedResolution=pa,Gr.onChangedAutomaticTypeDirectiveNames=pa,Gr.fileIsOpen=As,Gr.getCurrentProgram=jn,Gr.writeLog=Gt,Gr.getParsedCommandLine=pt;let pr=Ntt(Gr,Ee?Mo(Xc(Ee,_e)):_e,!1);Gr.resolveModuleNameLiterals=$i(s,s.resolveModuleNameLiterals),Gr.resolveModuleNames=$i(s,s.resolveModuleNames),!Gr.resolveModuleNameLiterals&&!Gr.resolveModuleNames&&(Gr.resolveModuleNameLiterals=pr.resolveModuleNameLiterals.bind(pr)),Gr.resolveTypeReferenceDirectiveReferences=$i(s,s.resolveTypeReferenceDirectiveReferences),Gr.resolveTypeReferenceDirectives=$i(s,s.resolveTypeReferenceDirectives),!Gr.resolveTypeReferenceDirectiveReferences&&!Gr.resolveTypeReferenceDirectives&&(Gr.resolveTypeReferenceDirectiveReferences=pr.resolveTypeReferenceDirectiveReferences.bind(pr)),Gr.resolveLibrary=s.resolveLibrary?s.resolveLibrary.bind(s):pr.resolveLibrary.bind(pr),Gr.getModuleResolutionCache=s.resolveModuleNameLiterals||s.resolveModuleNames?$i(s,s.getModuleResolutionCache):()=>pr.getModuleResolutionCache();let ir=!!s.resolveModuleNameLiterals||!!s.resolveTypeReferenceDirectiveReferences||!!s.resolveModuleNames||!!s.resolveTypeReferenceDirectives?$i(s,s.hasInvalidatedResolutions)||Tf:As,zt=s.resolveLibrary?$i(s,s.hasInvalidatedLibResolutions)||Tf:As;return c=_Ve($e,Gr),Zi(),Ee?{getCurrentProgram:mn,getProgram:Tg,close:Ht,getResolutionCache:Br}:{getCurrentProgram:mn,getProgram:Tg,updateRootFileNames:An,close:Ht,getResolutionCache:Br};function Ht(){hn(),pr.clear(),Fy(ee,En=>{En&&En.fileWatcher&&(En.fileWatcher.close(),En.fileWatcher=void 0)}),Dt&&(Dt.close(),Dt=void 0),tr&&(tr.close(),tr=void 0),V?.clear(),V=void 0,W&&(Fy(W,Cv),W=void 0),h&&(Fy(h,Cv),h=void 0),d&&(Fy(d,dv),d=void 0),T&&(Fy(T,En=>{var ds;(ds=En.watcher)==null||ds.close(),En.watcher=void 0,En.watchedDirectories&&Fy(En.watchedDirectories,Cv),En.watchedDirectories=void 0}),T=void 0),c=void 0}function Br(){return pr}function mn(){return c}function jn(){return c&&c.getProgramOrUndefined()}function Zi(En=!1){Gt("Synchronizing program"),pe.assert($e),pe.assert(Ue),hn();let ds=mn();ge&&(Ke=si(),ds&&NJ(ds.getCompilerOptions(),$e)&&pr.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:Mt,hasInvalidatedLibResolutions:cn}=pr.createHasInvalidatedResolutions(En?Tf:ir,zt),{originalReadFile:Bt,originalFileExists:xe,originalDirectoryExists:fr,originalCreateDirectory:Je,originalWriteFile:In,readFileWithCache:Hn}=Fde(Gr,ks);return Itt(jn(),Ue,$e,Ot=>ba(Ot,Hn),Ot=>Gr.fileExists(Ot),Mt,cn,yr,pt,Tt)?ht&&(M&&hc(Z.File_change_detected_Starting_incremental_compilation),c=We(void 0,void 0,Gr,c,Qe,Tt),ht=!1):(M&&hc(Z.File_change_detected_Starting_incremental_compilation),Ns(Mt,cn)),M=!1,s.afterProgramCreate&&ds!==c&&s.afterProgramCreate(c),Gr.readFile=Bt,Gr.fileExists=xe,Gr.directoryExists=fr,Gr.createDirectory=Je,Gr.writeFile=In,_?.forEach((Ot,$r)=>{if(!$r)Sn(),Ee&&Gi(ks(Ee),$e,Ye,jm.ExtendedConfigFile);else{let ri=T?.get($r);ri&&nn(Ot,$r,ri)}}),_=void 0,c}function Ns(En,ds){Gt("CreatingProgramWith::"),Gt(` roots: ${JSON.stringify(Ue)}`),Gt(` options: ${JSON.stringify($e)}`),Tt&&Gt(` projectReferences: ${JSON.stringify(Tt)}`);let Mt=ge||!jn();ge=!1,ht=!1,pr.startCachingPerDirectoryResolution(),Gr.hasInvalidatedResolutions=En,Gr.hasInvalidatedLibResolutions=ds,Gr.hasChangedAutomaticTypeDirectiveNames=yr;let cn=jn();if(c=We(Ue,$e,Gr,c,Qe,Tt),pr.finishCachingPerDirectoryResolution(c.getProgram(),cn),itt(c.getProgram(),d||(d=new Map),Dn),Mt&&pr.updateTypeRootsWatch(),re){for(let Bt of re)d.has(Bt)||ee.delete(Bt);re=void 0}}function An(En){pe.assert(!Ee,"Cannot update root file names with config file watch mode"),Ue=En,pa()}function si(){return uN($e||Ne)}function ks(En){return Ou(En,_e,nt)}function Ic(En){return typeof En=="boolean"}function su(En){return typeof En.version=="boolean"}function Zn(En){let ds=ks(En);return Ic(ee.get(ds))?!1:Rt.fileExists(En)}function ya(En,ds,Mt,cn,Bt){let xe=ee.get(ds);if(Ic(xe))return;let fr=typeof Mt=="object"?Mt.impliedNodeFormat:void 0;if(xe===void 0||Bt||su(xe)||xe.sourceFile.impliedNodeFormat!==fr){let Je=dt(En,Mt,cn);if(xe)Je?(xe.sourceFile=Je,xe.version=Je.version,xe.fileWatcher||(xe.fileWatcher=nr(ds,En,Fr,250,Ye,jm.SourceFile))):(xe.fileWatcher&&xe.fileWatcher.close(),ee.set(ds,!1));else if(Je){let In=nr(ds,En,Fr,250,Ye,jm.SourceFile);ee.set(ds,{sourceFile:Je,version:Je.version,fileWatcher:In})}else ee.set(ds,!1);return Je}return xe.sourceFile}function Gl(En){let ds=ee.get(En);ds!==void 0&&(Ic(ds)?ee.set(En,{version:!1}):ds.version=!1)}function ba(En,ds){let Mt=ee.get(En);if(!Mt)return;if(Mt.version)return Mt.version;let cn=ds(En);return cn!==void 0?mVe(Gr,cn):void 0}function Wo(En,ds,Mt){let cn=ee.get(En.resolvedPath);cn!==void 0&&(Ic(cn)?(re||(re=[])).push(En.path):cn.sourceFile===En&&(cn.fileWatcher&&cn.fileWatcher.close(),ee.delete(En.resolvedPath),Mt||pr.removeResolutionsOfFile(En.path)))}function hc(En){s.onWatchStatusChange&&s.onWatchStatusChange(Nf(En),Ke,$e||Ne)}function yr(){return pr.hasChangedAutomaticTypeDirectiveNames()}function hn(){return R?(s.clearTimeout(R),R=void 0,!0):!1}function Oi(){if(!s.setTimeout||!s.clearTimeout)return pr.invalidateResolutionsOfFailedLookupLocations();let En=hn();Gt(`Scheduling invalidateFailedLookup${En?", Cancelled earlier one":""}`),R=s.setTimeout(lo,250,"timerToInvalidateFailedLookupResolutions")}function lo(){R=void 0,pr.invalidateResolutionsOfFailedLookupLocations()&&pa()}function pa(){!s.setTimeout||!s.clearTimeout||(S&&s.clearTimeout(S),Gt("Scheduling update"),S=s.setTimeout(Qu,250,"timerToUpdateProgram"))}function Oa(){pe.assert(!!Ee),g=2,pa()}function tl(){Gt("Clearing resolutions"),pr.clear(),g=3,pa()}function Qu(){S=void 0,M=!0,Tg()}function Tg(){switch(g){case 1:Cs();break;case 2:Tu();break;case 3:Zi(!0);break;default:Zi();break}return mn()}function Cs(){Gt("Reloading new file names and options"),pe.assert($e),pe.assert(Ee),g=0,Ue=hde($e.configFile.configFileSpecs,Xc(Mo(Ee),_e),$e,Lt,Ze),B9e(Ue,Xc(Ee,_e),$e.configFile.configFileSpecs,Qe,mt)&&(ht=!0),Zi()}function Tu(){pe.assert(Ee),Gt(`Reloading config file: ${Ee}`),g=0,_t&&_t.clearCache(),Pr(),ge=!0,(_??(_=new Map)).set(void 0,void 0),Zi()}function Pr(){pe.assert(Ee),Pn(yEe(Ee,Ne,Lt,V||(V=new Map),Te,Ze))}function Pn(En){Ue=En.fileNames,$e=En.options,Ye=En.watchOptions,Tt=En.projectReferences,ot=En.wildcardDirectories,Qe=dQ(En).slice(),mt=BEe(En.raw),ht=!0}function pt(En){let ds=ks(En),Mt=T?.get(ds);if(Mt){if(!Mt.updateLevel)return Mt.parsedCommandLine;if(Mt.parsedCommandLine&&Mt.updateLevel===1&&!s.getParsedCommandLine){Gt("Reloading new file names and options"),pe.assert($e);let Bt=hde(Mt.parsedCommandLine.options.configFile.configFileSpecs,Xc(Mo(En),_e),$e,Lt);return Mt.parsedCommandLine={...Mt.parsedCommandLine,fileNames:Bt},Mt.updateLevel=void 0,Mt.parsedCommandLine}}Gt(`Loading config file: ${En}`);let cn=s.getParsedCommandLine?s.getParsedCommandLine(En):on(En);return Mt?(Mt.parsedCommandLine=cn,Mt.updateLevel=void 0):(T||(T=new Map)).set(ds,Mt={parsedCommandLine:cn}),(_??(_=new Map)).set(ds,En),cn}function on(En){let ds=Lt.onUnRecoverableConfigFileDiagnostic;Lt.onUnRecoverableConfigFileDiagnostic=Dc;let Mt=yEe(En,void 0,Lt,V||(V=new Map),Te);return Lt.onUnRecoverableConfigFileDiagnostic=ds,Mt}function it(En){var ds;let Mt=ks(En),cn=T?.get(Mt);cn&&(T.delete(Mt),cn.watchedDirectories&&Fy(cn.watchedDirectories,Cv),(ds=cn.watcher)==null||ds.close(),ntt(Mt,W))}function nr(En,ds,Mt,cn,Bt,xe){return Pt(ds,(fr,Je)=>Mt(fr,Je,En),cn,Bt,xe)}function Fr(En,ds,Mt){Kr(En,Mt,ds),ds===2&&ee.has(Mt)&&pr.invalidateResolutionOfFile(Mt),Gl(Mt),pa()}function Kr(En,ds,Mt){_t&&_t.addOrDeleteFile(En,ds,Mt)}function Dn(En,ds){return T?.has(En)?Pie:nr(En,ds,hr,500,Ye,jm.MissingFile)}function hr(En,ds,Mt){Kr(En,Mt,ds),ds===0&&d.has(Mt)&&(d.get(Mt).close(),d.delete(Mt),Gl(Mt),pa())}function Sn(){YEe(h||(h=new Map),ot,Ni)}function Ni(En,ds){return _r(En,Mt=>{pe.assert(Ee),pe.assert($e);let cn=ks(Mt);_t&&_t.addOrDeleteFileOrDirectory(Mt,cn),Gl(cn),!QEe({watchedDirPath:ks(En),fileOrDirectory:Mt,fileOrDirectoryPath:cn,configFileName:Ee,extraFileExtensions:Ze,options:$e,program:mn()||Ue,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})&&g!==2&&(g=1,pa())},ds,Ye,jm.WildcardDirectory)}function Gi(En,ds,Mt,cn){$9e(En,ds,W||(W=new Map),(Bt,xe)=>Pt(Bt,(fr,Je)=>{var In;Kr(Bt,xe,Je),V&&eVe(V,xe,ks);let Hn=(In=W.get(xe))==null?void 0:In.projects;Hn?.size&&Hn.forEach(Ot=>{if(Ee&&ks(Ee)===Ot)g=2;else{let $r=T?.get(Ot);$r&&($r.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(Ot)}pa()})},2e3,Mt,cn),ks)}function nn(En,ds,Mt){var cn,Bt,xe,fr;Mt.watcher||(Mt.watcher=Pt(En,(Je,In)=>{Kr(En,ds,In);let Hn=T?.get(ds);Hn&&(Hn.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(ds),pa()},2e3,((cn=Mt.parsedCommandLine)==null?void 0:cn.watchOptions)||Ye,jm.ConfigFileOfReferencedProject)),YEe(Mt.watchedDirectories||(Mt.watchedDirectories=new Map),(Bt=Mt.parsedCommandLine)==null?void 0:Bt.wildcardDirectories,(Je,In)=>{var Hn;return _r(Je,Ot=>{let $r=ks(Ot);_t&&_t.addOrDeleteFileOrDirectory(Ot,$r),Gl($r);let ri=T?.get(ds);ri?.parsedCommandLine&&(QEe({watchedDirPath:ks(Je),fileOrDirectory:Ot,fileOrDirectoryPath:$r,configFileName:En,options:ri.parsedCommandLine.options,program:ri.parsedCommandLine.fileNames,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})||ri.updateLevel!==2&&(ri.updateLevel=1,pa()))},In,((Hn=Mt.parsedCommandLine)==null?void 0:Hn.watchOptions)||Ye,jm.WildcardDirectoryOfReferencedProject)}),Gi(ds,(xe=Mt.parsedCommandLine)==null?void 0:xe.options,((fr=Mt.parsedCommandLine)==null?void 0:fr.watchOptions)||Ye,jm.ExtendedConfigOfReferencedProject)}}var i5t=(s=>(s[s.Unbuildable=0]="Unbuildable",s[s.UpToDate=1]="UpToDate",s[s.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",s[s.OutputMissing=3]="OutputMissing",s[s.ErrorReadingFile=4]="ErrorReadingFile",s[s.OutOfDateWithSelf=5]="OutOfDateWithSelf",s[s.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",s[s.OutOfDateBuildInfoWithPendingEmit=7]="OutOfDateBuildInfoWithPendingEmit",s[s.OutOfDateBuildInfoWithErrors=8]="OutOfDateBuildInfoWithErrors",s[s.OutOfDateOptions=9]="OutOfDateOptions",s[s.OutOfDateRoots=10]="OutOfDateRoots",s[s.UpstreamOutOfDate=11]="UpstreamOutOfDate",s[s.UpstreamBlocked=12]="UpstreamBlocked",s[s.ComputingUpstream=13]="ComputingUpstream",s[s.TsVersionOutputOfDate=14]="TsVersionOutputOfDate",s[s.UpToDateWithInputFileText=15]="UpToDateWithInputFileText",s[s.ContainerOnly=16]="ContainerOnly",s[s.ForceBuild=17]="ForceBuild",s))(i5t||{});function Utt(s){return aA(s,".json")?s:Ro(s,"tsconfig.json")}var Vws=new Date(-864e13);function Pws(s,c,g){let d=s.get(c),h;return d||(h=g(),s.set(c,h)),d||h}function s5t(s,c){return Pws(s,c,()=>new Map)}function Ktt(s){return s.now?s.now():new Date}function Fz(s){return!!s&&!!s.buildOrder}function e1e(s){return Fz(s)?s.buildOrder:s}function bVe(s,c){return g=>{let d=c?`[${AQ($Ee(s),"\x1B[90m")}] `:`${$Ee(s)} - `;d+=`${wN(g.messageText,s.newLine)}${s.newLine+s.newLine}`,s.write(d)}}function Qrn(s,c,g,d){let h=Ytt(s,c);return h.getModifiedTime=s.getModifiedTime?_=>s.getModifiedTime(_):cm,h.setModifiedTime=s.setModifiedTime?(_,S)=>s.setModifiedTime(_,S):Dc,h.deleteFile=s.deleteFile?_=>s.deleteFile(_):Dc,h.reportDiagnostic=g||Gz(s),h.reportSolutionBuilderStatus=d||bVe(s),h.now=$i(s,s.now),h}function o5t(s=yd,c,g,d,h){let _=Qrn(s,c,g,d);return _.reportErrorSummary=h,_}function a5t(s=yd,c,g,d,h){let _=Qrn(s,c,g,d),S=Ott(s,h);return GA(_,S),_}function Wws(s){let c={};return f9e.forEach(g=>{Da(s,g.name)&&(c[g.name]=s[g.name])}),c.tscBuild=!0,c}function c5t(s,c,g){return Ann(!1,s,c,g)}function l5t(s,c,g,d){return Ann(!0,s,c,g,d)}function Ows(s,c,g,d,h){let _=c,S=c,R=Wws(d),T=Htt(_,()=>Ie.projectCompilerOptions);CVe(T),T.getParsedCommandLine=_e=>Wie(Ie,_e,nk(Ie,_e)),T.resolveModuleNameLiterals=$i(_,_.resolveModuleNameLiterals),T.resolveTypeReferenceDirectiveReferences=$i(_,_.resolveTypeReferenceDirectiveReferences),T.resolveLibrary=$i(_,_.resolveLibrary),T.resolveModuleNames=$i(_,_.resolveModuleNames),T.resolveTypeReferenceDirectives=$i(_,_.resolveTypeReferenceDirectives),T.getModuleResolutionCache=$i(_,_.getModuleResolutionCache);let W,V;!T.resolveModuleNameLiterals&&!T.resolveModuleNames&&(W=Rie(T.getCurrentDirectory(),T.getCanonicalFileName),T.resolveModuleNameLiterals=(_e,Ee,Ne,Te,Ze)=>JEe(_e,Ee,Ne,Te,Ze,_,W,ptt),T.getModuleResolutionCache=()=>W),!T.resolveTypeReferenceDirectiveReferences&&!T.resolveTypeReferenceDirectives&&(V=x9e(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,W?.getPackageJsonInfoCache(),W?.optionsToRedirectsKey),T.resolveTypeReferenceDirectiveReferences=(_e,Ee,Ne,Te,Ze)=>JEe(_e,Ee,Ne,Te,Ze,_,V,iVe));let M;T.resolveLibrary||(M=Rie(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,W?.getPackageJsonInfoCache()),T.resolveLibrary=(_e,Ee,Ne)=>G9e(_e,Ee,Ne,_,M)),T.getBuildInfo=(_e,Ee)=>nnn(Ie,_e,nk(Ie,Ee),void 0);let{watchFile:ee,watchDirectory:re,writeLog:ge}=Mtt(S,d),Ie={host:_,hostWithWatch:S,parseConfigFileHost:lVe(_),write:$i(_,_.trace),options:d,baseCompilerOptions:R,rootNames:g,baseWatchOptions:h,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:T,moduleResolutionCache:W,typeReferenceDirectiveResolutionCache:V,libraryResolutionCache:M,buildOrder:void 0,readFileWithCache:_e=>_.readFile(_e),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:s,watch:s,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:ee,watchDirectory:re,writeLog:ge};return Ie}function Ow(s,c){return Ou(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function nk(s,c){let{resolvedConfigFilePaths:g}=s,d=g.get(c);if(d!==void 0)return d;let h=Ow(s,c);return g.set(c,h),h}function Xrn(s){return!!s.options}function Mws(s,c){let g=s.configFileCache.get(c);return g&&Xrn(g)?g:void 0}function Wie(s,c,g){let{configFileCache:d}=s,h=d.get(g);if(h)return Xrn(h)?h:void 0;Mc("SolutionBuilder::beforeConfigFileParsing");let _,{parseConfigFileHost:S,baseCompilerOptions:R,baseWatchOptions:T,extendedConfigCache:W,host:V}=s,M;return V.getParsedCommandLine?(M=V.getParsedCommandLine(c),M||(_=Nf(Z.File_0_not_found,c))):(S.onUnRecoverableConfigFileDiagnostic=ee=>_=ee,M=yEe(c,R,S,W,T),S.onUnRecoverableConfigFileDiagnostic=Dc),d.set(g,M||_),Mc("SolutionBuilder::afterConfigFileParsing"),Pf("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),M}function t1e(s,c){return Utt(AE(s.compilerHost.getCurrentDirectory(),c))}function Jrn(s,c){let g=new Map,d=new Map,h=[],_,S;for(let T of c)R(T);return S?{buildOrder:_||E,circularDiagnostics:S}:_||E;function R(T,W){let V=nk(s,T);if(d.has(V))return;if(g.has(V)){W||(S||(S=[])).push(Nf(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,h.join(`\r +`)));return}g.set(V,!0),h.push(T);let M=Wie(s,T,V);if(M&&M.projectReferences)for(let ee of M.projectReferences){let re=t1e(s,ee.path);R(re,W||ee.circular)}h.pop(),d.set(V,!0),(_||(_=[])).push(T)}}function EVe(s){return s.buildOrder||Hws(s)}function Hws(s){let c=Jrn(s,s.rootNames.map(h=>t1e(s,h)));s.resolvedConfigFilePaths.clear();let g=new Set(e1e(c).map(h=>nk(s,h))),d={onDeleteValue:Dc};return gN(s.configFileCache,g,d),gN(s.projectStatus,g,d),gN(s.builderPrograms,g,d),gN(s.diagnostics,g,d),gN(s.projectPendingBuild,g,d),gN(s.projectErrorsReported,g,d),gN(s.buildInfoCache,g,d),gN(s.outputTimeStamps,g,d),gN(s.lastCachedPackageJsonLookups,g,d),s.watch&&(gN(s.allWatchedConfigFiles,g,{onDeleteValue:dv}),s.allWatchedExtendedConfigFiles.forEach(h=>{h.projects.forEach(_=>{g.has(_)||h.projects.delete(_)}),h.close()}),gN(s.allWatchedWildcardDirectories,g,{onDeleteValue:h=>h.forEach(Cv)}),gN(s.allWatchedInputFiles,g,{onDeleteValue:h=>h.forEach(dv)}),gN(s.allWatchedPackageJsonFiles,g,{onDeleteValue:h=>h.forEach(dv)})),s.buildOrder=c}function Urn(s,c,g){let d=c&&t1e(s,c),h=EVe(s);if(Fz(h))return h;if(d){let S=nk(s,d);if(Se(h,T=>nk(s,T)===S)===-1)return}let _=d?Jrn(s,[d]):h;return pe.assert(!Fz(_)),pe.assert(!g||d!==void 0),pe.assert(!g||_[_.length-1]===d),g?_.slice(0,_.length-1):_}function Krn(s){s.cache&&u5t(s);let{compilerHost:c,host:g}=s,d=s.readFileWithCache,h=c.getSourceFile,{originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:W,getSourceFileWithCache:V,readFileWithCache:M}=Fde(g,ee=>Ow(s,ee),(...ee)=>h.call(c,...ee));s.readFileWithCache=M,c.getSourceFile=V,s.cache={originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:W,originalReadFileWithCache:d,originalGetSourceFile:h}}function u5t(s){if(!s.cache)return;let{cache:c,host:g,compilerHost:d,extendedConfigCache:h,moduleResolutionCache:_,typeReferenceDirectiveResolutionCache:S,libraryResolutionCache:R}=s;g.readFile=c.originalReadFile,g.fileExists=c.originalFileExists,g.directoryExists=c.originalDirectoryExists,g.createDirectory=c.originalCreateDirectory,g.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,s.readFileWithCache=c.originalReadFileWithCache,h.clear(),_?.clear(),S?.clear(),R?.clear(),s.cache=void 0}function jrn(s,c){s.projectStatus.delete(c),s.diagnostics.delete(c)}function zrn({projectPendingBuild:s},c,g){let d=s.get(c);(d===void 0||ds.projectPendingBuild.set(nk(s,d),0)),c&&c.throwIfCancellationRequested()}var g5t=(s=>(s[s.Build=0]="Build",s[s.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",s))(g5t||{});function $rn(s,c){return s.projectPendingBuild.delete(c),s.diagnostics.has(c)?1:0}function Yws(s,c,g,d,h){let _=!0;return{kind:1,project:c,projectPath:g,buildOrder:h,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{snn(s,d,g),_=!1},done:()=>(_&&snn(s,d,g),Mc("SolutionBuilder::Timestamps only updates"),$rn(s,g))}}function Qws(s,c,g,d,h,_,S){let R=0,T,W;return{kind:0,project:c,projectPath:g,buildOrder:S,getCompilerOptions:()=>h.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>M(Fl),getProgram:()=>M(_e=>_e.getProgramOrUndefined()),getSourceFile:_e=>M(Ee=>Ee.getSourceFile(_e)),getSourceFiles:()=>ee(_e=>_e.getSourceFiles()),getOptionsDiagnostics:_e=>ee(Ee=>Ee.getOptionsDiagnostics(_e)),getGlobalDiagnostics:_e=>ee(Ee=>Ee.getGlobalDiagnostics(_e)),getConfigFileParsingDiagnostics:()=>ee(_e=>_e.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSyntacticDiagnostics(_e,Ee)),getAllDependencies:_e=>ee(Ee=>Ee.getAllDependencies(_e)),getSemanticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSemanticDiagnostics(_e,Ee)),getSemanticDiagnosticsOfNextAffectedFile:(_e,Ee)=>M(Ne=>Ne.getSemanticDiagnosticsOfNextAffectedFile&&Ne.getSemanticDiagnosticsOfNextAffectedFile(_e,Ee)),emit:(_e,Ee,Ne,Te,Ze)=>_e||Te?M(We=>{var Ue,$e;return We.emit(_e,Ee,Ne,Te,Ze||(($e=(Ue=s.host).getCustomTransformers)==null?void 0:$e.call(Ue,c)))}):(Ie(0,Ne),ge(Ee,Ne,Ze)),done:V};function V(_e,Ee,Ne){return Ie(3,_e,Ee,Ne),Mc("SolutionBuilder::Projects built"),$rn(s,g)}function M(_e){return Ie(0),T&&_e(T)}function ee(_e){return M(_e)||E}function re(){var _e,Ee,Ne;if(pe.assert(T===void 0),s.options.dry){C1(s,Z.A_non_dry_build_would_build_project_0,c),W=1,R=2;return}if(s.options.verbose&&C1(s,Z.Building_project_0,c),h.fileNames.length===0){r1e(s,g,dQ(h)),W=0,R=2;return}let{host:Te,compilerHost:Ze}=s;if(s.projectCompilerOptions=h.options,(_e=s.moduleResolutionCache)==null||_e.update(h.options),(Ee=s.typeReferenceDirectiveResolutionCache)==null||Ee.update(h.options),T=Te.createProgram(h.fileNames,h.options,Ze,Xws(s,g,h),dQ(h),h.projectReferences),s.watch){let We=(Ne=s.moduleResolutionCache)==null?void 0:Ne.getPackageJsonInfoCache().getInternalMap();s.lastCachedPackageJsonLookups.set(g,We&&new Set(Do(We.values(),Ue=>s.host.realpath&&(k9e(Ue)||Ue.directoryExists)?s.host.realpath(Ro(Ue.packageDirectory,"package.json")):Ro(Ue.packageDirectory,"package.json")))),s.builderPrograms.set(g,T)}R++}function ge(_e,Ee,Ne){var Te,Ze,We;pe.assertIsDefined(T),pe.assert(R===1);let{host:Ue,compilerHost:$e}=s,Ye=new Map,Tt=T.getCompilerOptions(),ot=DP(Tt),Qe,mt,{emitResult:ht,diagnostics:_t}=hVe(T,Rt=>Ue.reportDiagnostic(Rt),s.write,void 0,(Rt,Lt,Ke,Pt,_r,Gt)=>{var nt;let Dt=Ow(s,Rt);if(Ye.set(Ow(s,Rt),Rt),Gt?.buildInfo){mt||(mt=Ktt(s.host));let ur=(nt=T.hasChangedEmitSignature)==null?void 0:nt.call(T),Gr=qtt(s,Rt,g);Gr?(Gr.buildInfo=Gt.buildInfo,Gr.modifiedTime=mt,ur&&(Gr.latestChangedDtsTime=mt)):s.buildInfoCache.set(g,{path:Ow(s,Rt),buildInfo:Gt.buildInfo,modifiedTime:mt,latestChangedDtsTime:ur?mt:void 0})}let tr=Gt?.differsOnlyInMap?bb(s.host,Rt):void 0;(_e||$e.writeFile)(Rt,Lt,Ke,Pt,_r,Gt),Gt?.differsOnlyInMap?s.host.setModifiedTime(Rt,tr):!ot&&s.watch&&(Qe||(Qe=d5t(s,g))).set(Dt,mt||(mt=Ktt(s.host)))},Ee,void 0,Ne||((Ze=(Te=s.host).getCustomTransformers)==null?void 0:Ze.call(Te,c)));return(!Tt.noEmitOnError||!_t.length)&&(Ye.size||_.type!==8)&&inn(s,h,g,Z.Updating_unchanged_output_timestamps_of_project_0,Ye),s.projectErrorsReported.set(g,!0),W=(We=T.hasChangedEmitSignature)!=null&&We.call(T)?0:2,_t.length?(s.diagnostics.set(g,_t),s.projectStatus.set(g,{type:0,reason:"it had errors"}),W|=4):(s.diagnostics.delete(g),s.projectStatus.set(g,{type:1,oldestOutputFileName:iA(Ye.values())??qet(h,!Ue.useCaseSensitiveFileNames())})),Jws(s,T),R=2,ht}function Ie(_e,Ee,Ne,Te){for(;R<=_e&&R<3;){let Ze=R;switch(R){case 0:re();break;case 1:ge(Ne,Ee,Te);break;case 2:zws(s,c,g,d,h,S,pe.checkDefined(W)),R++;break;case 3:default:}pe.assert(R>Ze)}}}function enn(s,c,g){if(!s.projectPendingBuild.size||Fz(c))return;let{options:d,projectPendingBuild:h}=s;for(let _=0;_{let re=pe.checkDefined(s.filesWatched.get(R));pe.assert(jtt(re)),re.modifiedTime=ee,re.callbacks.forEach(ge=>ge(V,M,ee))},d,h,_,S);s.filesWatched.set(R,{callbacks:[g],watcher:W,modifiedTime:T})}return{close:()=>{let W=pe.checkDefined(s.filesWatched.get(R));pe.assert(jtt(W)),W.callbacks.length===1?(s.filesWatched.delete(R),Cv(W)):ef(W.callbacks,g)}}}function d5t(s,c){if(!s.watch)return;let g=s.outputTimeStamps.get(c);return g||s.outputTimeStamps.set(c,g=new Map),g}function qtt(s,c,g){let d=Ow(s,c),h=s.buildInfoCache.get(g);return h?.path===d?h:void 0}function nnn(s,c,g,d){let h=Ow(s,c),_=s.buildInfoCache.get(g);if(_!==void 0&&_.path===h)return _.buildInfo||void 0;let S=s.readFileWithCache(c),R=S?ttt(c,S):void 0;return s.buildInfoCache.set(g,{path:h,buildInfo:R||!1,modifiedTime:d||Rh}),R}function p5t(s,c,g,d){let h=rnn(s,c);if(gZe&&(Te=_t,Ze=Rt),Ue.add(Lt)}let Ye;if(_e?($e||($e=vtt(_e,M,V)),Ye=Dh($e.roots,(_t,Rt)=>Ue.has(Rt)?void 0:Rt)):Ye=F(J3t(Ie,M,V),_t=>Ue.has(_t)?void 0:_t),Ye)return{type:10,buildInfoFile:M,inputFile:Ye};if(!ee){let _t=z9e(c,!V.useCaseSensitiveFileNames()),Rt=d5t(s,g);for(let Lt of _t){if(Lt===M)continue;let Ke=Ow(s,Lt),Pt=Rt?.get(Ke);if(Pt||(Pt=bb(s.host,Lt),Rt?.set(Ke,Pt)),Pt===Rh)return{type:3,missingOutputFileName:Lt};if(Ptp5t(s,_t,Ee,Ne));if(Qe)return Qe;let mt=s.lastCachedPackageJsonLookups.get(g),ht=mt&&SB(mt,_t=>p5t(s,_t,Ee,Ne));return ht||{type:Tt?2:We?15:1,newestInputFileTime:Ze,newestInputFileName:Te,oldestOutputFileName:Ne}}function Kws(s,c,g){return s.buildInfoCache.get(g).path===c.path}function f5t(s,c,g){if(c===void 0)return{type:0,reason:"config file deleted mid-build"};let d=s.projectStatus.get(g);if(d!==void 0)return d;Mc("SolutionBuilder::beforeUpToDateCheck");let h=Uws(s,c,g);return Mc("SolutionBuilder::afterUpToDateCheck"),Pf("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),s.projectStatus.set(g,h),h}function inn(s,c,g,d,h){if(c.options.noEmit)return;let _,S=U3(c.options),R=DP(c.options);if(S&&R){h?.has(Ow(s,S))||(s.options.verbose&&C1(s,d,c.options.configFilePath),s.host.setModifiedTime(S,_=Ktt(s.host)),qtt(s,S,g).modifiedTime=_),s.outputTimeStamps.delete(g);return}let{host:T}=s,W=z9e(c,!T.useCaseSensitiveFileNames()),V=d5t(s,g),M=V?new Set:void 0;if(!h||W.length!==h.size){let ee=!!s.options.verbose;for(let re of W){let ge=Ow(s,re);h?.has(ge)||(ee&&(ee=!1,C1(s,d,c.options.configFilePath)),T.setModifiedTime(re,_||(_=Ktt(s.host))),re===S?qtt(s,S,g).modifiedTime=_:V&&(V.set(ge,_),M.add(ge)))}}V?.forEach((ee,re)=>{!h?.has(re)&&!M.has(re)&&V.delete(re)})}function jws(s,c,g){if(!c.composite)return;let d=pe.checkDefined(s.buildInfoCache.get(g));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let h=d.buildInfo&&zEe(d.buildInfo)&&d.buildInfo.latestChangedDtsFile?s.host.getModifiedTime(Xc(d.buildInfo.latestChangedDtsFile,Mo(d.path))):void 0;return d.latestChangedDtsTime=h||!1,h}function snn(s,c,g){if(s.options.dry)return C1(s,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);inn(s,c,g,Z.Updating_output_timestamps_of_project_0),s.projectStatus.set(g,{type:1,oldestOutputFileName:qet(c,!s.host.useCaseSensitiveFileNames())})}function zws(s,c,g,d,h,_,S){if(!(s.options.stopBuildOnErrors&&S&4)&&h.options.composite)for(let R=d+1;R<_.length;R++){let T=_[R],W=nk(s,T);if(s.projectPendingBuild.has(W))continue;let V=Wie(s,T,W);if(!(!V||!V.projectReferences))for(let M of V.projectReferences){let ee=t1e(s,M.path);if(nk(s,ee)!==g)continue;let re=s.projectStatus.get(W);if(re)switch(re.type){case 1:if(S&2){re.type=2;break}case 15:case 2:S&2||s.projectStatus.set(W,{type:6,outOfDateOutputFileName:re.oldestOutputFileName,newerProjectName:c});break;case 12:nk(s,t1e(s,re.upstreamProjectName))===g&&jrn(s,W);break}zrn(s,W,0);break}}}function onn(s,c,g,d,h,_){Mc("SolutionBuilder::beforeBuild");let S=qws(s,c,g,d,h,_);return Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),S}function qws(s,c,g,d,h,_){let S=Urn(s,c,_);if(!S)return 3;qrn(s,g);let R=!0,T=0;for(;;){let W=A5t(s,S,R);if(!W)break;R=!1,W.done(g,d,h?.(W.project)),s.diagnostics.has(W.projectPath)||T++}return u5t(s),pnn(s,S),rTs(s,S),Fz(S)?4:S.some(W=>s.diagnostics.has(nk(s,W)))?T?2:1:0}function ann(s,c,g){Mc("SolutionBuilder::beforeClean");let d=$ws(s,c,g);return Mc("SolutionBuilder::afterClean"),Pf("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function $ws(s,c,g){let d=Urn(s,c,g);if(!d)return 3;if(Fz(d))return $tt(s,d.circularDiagnostics),4;let{options:h,host:_}=s,S=h.dry?[]:void 0;for(let R of d){let T=nk(s,R),W=Wie(s,R,T);if(W===void 0){dnn(s,T);continue}let V=z9e(W,!_.useCaseSensitiveFileNames());if(!V.length)continue;let M=new Set(W.fileNames.map(ee=>Ow(s,ee)));for(let ee of V)M.has(Ow(s,ee))||_.fileExists(ee)&&(S?S.push(ee):(_.deleteFile(ee),I5t(s,T,0)))}return S&&C1(s,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,S.map(R=>`\r + * ${R}`).join("")),0}function I5t(s,c,g){s.host.getParsedCommandLine&&g===1&&(g=2),g===2&&(s.configFileCache.delete(c),s.buildOrder=void 0),s.needsSummary=!0,jrn(s,c),zrn(s,c,g),Krn(s)}function SVe(s,c,g){s.reportFileChangeDetected=!0,I5t(s,c,g),cnn(s,250,!0)}function cnn(s,c,g){let{hostWithWatch:d}=s;!d.setTimeout||!d.clearTimeout||(s.timerToBuildInvalidatedProject&&d.clearTimeout(s.timerToBuildInvalidatedProject),s.timerToBuildInvalidatedProject=d.setTimeout(eTs,c,"timerToBuildInvalidatedProject",s,g))}function eTs(s,c,g){Mc("SolutionBuilder::beforeBuild");let d=tTs(c,g);Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&pnn(c,d)}function tTs(s,c){s.timerToBuildInvalidatedProject=void 0,s.reportFileChangeDetected&&(s.reportFileChangeDetected=!1,s.projectErrorsReported.clear(),C5t(s,Z.File_change_detected_Starting_incremental_compilation));let g=0,d=EVe(s),h=A5t(s,d,!1);if(h)for(h.done(),g++;s.projectPendingBuild.size;){if(s.timerToBuildInvalidatedProject)return;let _=enn(s,d,!1);if(!_)break;if(_.kind!==1&&(c||g===5)){cnn(s,100,!1);return}tnn(s,_,d).done(),_.kind!==1&&g++}return u5t(s),d}function lnn(s,c,g,d){!s.watch||s.allWatchedConfigFiles.has(g)||s.allWatchedConfigFiles.set(g,ztt(s,c,()=>SVe(s,g,2),2e3,d?.watchOptions,jm.ConfigFile,c))}function unn(s,c,g){$9e(c,g?.options,s.allWatchedExtendedConfigFiles,(d,h)=>ztt(s,d,()=>{var _;return(_=s.allWatchedExtendedConfigFiles.get(h))==null?void 0:_.projects.forEach(S=>SVe(s,S,2))},2e3,g?.watchOptions,jm.ExtendedConfigFile),d=>Ow(s,d))}function gnn(s,c,g,d){s.watch&&YEe(s5t(s.allWatchedWildcardDirectories,g),d.wildcardDirectories,(h,_)=>s.watchDirectory(h,S=>{var R;QEe({watchedDirPath:Ow(s,h),fileOrDirectory:S,fileOrDirectoryPath:Ow(s,S),configFileName:c,currentDirectory:s.compilerHost.getCurrentDirectory(),options:d.options,program:s.builderPrograms.get(g)||((R=Mws(s,g))==null?void 0:R.fileNames),useCaseSensitiveFileNames:s.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:T=>s.writeLog(T),toPath:T=>Ow(s,T)})||SVe(s,g,1)},_,d?.watchOptions,jm.WildcardDirectory,c))}function h5t(s,c,g,d){s.watch&&Q7(s5t(s.allWatchedInputFiles,g),new Set(d.fileNames),{createNewValue:h=>ztt(s,h,()=>SVe(s,g,0),250,d?.watchOptions,jm.SourceFile,c),onDeleteValue:dv})}function m5t(s,c,g,d){!s.watch||!s.lastCachedPackageJsonLookups||Q7(s5t(s.allWatchedPackageJsonFiles,g),s.lastCachedPackageJsonLookups.get(g),{createNewValue:h=>ztt(s,h,()=>SVe(s,g,0),2e3,d?.watchOptions,jm.PackageJson,c),onDeleteValue:dv})}function rTs(s,c){if(s.watchAllProjectsPending){Mc("SolutionBuilder::beforeWatcherCreation"),s.watchAllProjectsPending=!1;for(let g of e1e(c)){let d=nk(s,g),h=Wie(s,g,d);lnn(s,g,d,h),unn(s,d,h),h&&(gnn(s,g,d,h),h5t(s,g,d,h),m5t(s,g,d,h))}Mc("SolutionBuilder::afterWatcherCreation"),Pf("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function nTs(s){Fy(s.allWatchedConfigFiles,dv),Fy(s.allWatchedExtendedConfigFiles,Cv),Fy(s.allWatchedWildcardDirectories,c=>Fy(c,Cv)),Fy(s.allWatchedInputFiles,c=>Fy(c,dv)),Fy(s.allWatchedPackageJsonFiles,c=>Fy(c,dv))}function Ann(s,c,g,d,h){let _=Ows(s,c,g,d,h);return{build:(S,R,T,W)=>onn(_,S,R,T,W),clean:S=>ann(_,S),buildReferences:(S,R,T,W)=>onn(_,S,R,T,W,!0),cleanReferences:S=>ann(_,S,!0),getNextInvalidatedProject:S=>(qrn(_,S),A5t(_,EVe(_),!1)),getBuildOrder:()=>EVe(_),getUpToDateStatusOfProject:S=>{let R=t1e(_,S),T=nk(_,R);return f5t(_,Wie(_,R,T),T)},invalidateProject:(S,R)=>I5t(_,S,R||0),close:()=>nTs(_)}}function G_(s,c){return r2(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function C1(s,c,...g){s.host.reportSolutionBuilderStatus(Nf(c,...g))}function C5t(s,c,...g){var d,h;(h=(d=s.hostWithWatch).onWatchStatusChange)==null||h.call(d,Nf(c,...g),s.host.getNewLine(),s.baseCompilerOptions)}function $tt({host:s},c){c.forEach(g=>s.reportDiagnostic(g))}function r1e(s,c,g){$tt(s,g),s.projectErrorsReported.set(c,!0),g.length&&s.diagnostics.set(c,g)}function dnn(s,c){r1e(s,c,[s.configFileCache.get(c)])}function pnn(s,c){if(!s.needsSummary)return;s.needsSummary=!1;let g=s.watch||!!s.host.reportErrorSummary,{diagnostics:d}=s,h=0,_=[];Fz(c)?(fnn(s,c.buildOrder),$tt(s,c.circularDiagnostics),g&&(h+=fVe(c.circularDiagnostics)),g&&(_=[..._,...IVe(c.circularDiagnostics)])):(c.forEach(S=>{let R=nk(s,S);s.projectErrorsReported.has(R)||$tt(s,d.get(R)||E)}),g&&d.forEach(S=>h+=fVe(S)),g&&d.forEach(S=>[..._,...IVe(S)])),s.watch?C5t(s,ktt(h),h):s.host.reportErrorSummary&&s.host.reportErrorSummary(h,_)}function fnn(s,c){s.options.verbose&&C1(s,Z.Projects_in_this_build_Colon_0,c.map(g=>`\r + * `+G_(s,g)).join(""))}function iTs(s,c,g){switch(g.type){case 5:return C1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,G_(s,c),G_(s,g.outOfDateOutputFileName),G_(s,g.newerInputFileName));case 6:return C1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,G_(s,c),G_(s,g.outOfDateOutputFileName),G_(s,g.newerProjectName));case 3:return C1(s,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,G_(s,c),G_(s,g.missingOutputFileName));case 4:return C1(s,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,G_(s,c),G_(s,g.fileName));case 7:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,G_(s,c),G_(s,g.buildInfoFile));case 8:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors,G_(s,c),G_(s,g.buildInfoFile));case 9:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,G_(s,c),G_(s,g.buildInfoFile));case 10:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,G_(s,c),G_(s,g.buildInfoFile),G_(s,g.inputFile));case 1:if(g.newestInputFileTime!==void 0)return C1(s,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,G_(s,c),G_(s,g.newestInputFileName||""),G_(s,g.oldestOutputFileName||""));break;case 2:return C1(s,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,G_(s,c));case 15:return C1(s,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,G_(s,c));case 11:return C1(s,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,G_(s,c),G_(s,g.upstreamProjectName));case 12:return C1(s,g.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,G_(s,c),G_(s,g.upstreamProjectName));case 0:return C1(s,Z.Project_0_is_out_of_date_because_1,G_(s,c),g.reason);case 14:return C1(s,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,G_(s,c),g.version,C);case 17:return C1(s,Z.Project_0_is_being_forcibly_rebuilt,G_(s,c));case 16:case 13:break;default:}}function ert(s,c,g){s.options.verbose&&iTs(s,c,g)}var _5t=(s=>(s[s.time=0]="time",s[s.count=1]="count",s[s.memory=2]="memory",s))(_5t||{});function sTs(s){let c=oTs();return F(s.getSourceFiles(),g=>{let d=aTs(s,g),h=rn(g).length;c.set(d,c.get(d)+h)}),c}function oTs(){let s=new Map;return s.set("Library",0),s.set("Definitions",0),s.set("TypeScript",0),s.set("JavaScript",0),s.set("JSON",0),s.set("Other",0),s}function aTs(s,c){if(s.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let g=c.path;return fu(g,Bbe)?"TypeScript":fu(g,uU)?"JavaScript":aA(g,".json")?"JSON":"Other"}function trt(s,c,g){return vVe(s,g)?Gz(s,!0):c}function Inn(s){return!!s.writeOutputIsTTY&&s.writeOutputIsTTY()&&!s.getEnvironmentVariable("NO_COLOR")}function vVe(s,c){return!c||typeof c.pretty>"u"?Inn(s):c.pretty}function hnn(s){return s.options.all?bo(Ww.concat(SU),(c,g)=>Fs(c.name,g.name)):Me(Ww.concat(SU),c=>!!c.showInSimplifiedHelpView)}function rrt(s){s.write(Zb(Z.Version_0,C)+s.newLine)}function nrt(s){if(!Inn(s))return{bold:V=>V,blue:V=>V,blueBackground:V=>V,brightWhite:V=>V};function g(V){return`\x1B[1m${V}\x1B[22m`}let d=s.getEnvironmentVariable("OS")&&s.getEnvironmentVariable("OS").toLowerCase().includes("windows"),h=s.getEnvironmentVariable("WT_SESSION"),_=s.getEnvironmentVariable("TERM_PROGRAM")&&s.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function S(V){return d&&!h&&!_?W(V):`\x1B[94m${V}\x1B[39m`}let R=s.getEnvironmentVariable("COLORTERM")==="truecolor"||s.getEnvironmentVariable("TERM")==="xterm-256color";function T(V){return R?`\x1B[48;5;68m${V}\x1B[39;49m`:`\x1B[44m${V}\x1B[39;49m`}function W(V){return`\x1B[97m${V}\x1B[39m`}return{bold:g,blue:S,brightWhite:W,blueBackground:T}}function mnn(s){return`--${s.name}${s.shortName?`, -${s.shortName}`:""}`}function cTs(s,c,g,d){var h;let _=[],S=nrt(s),R=mnn(c),T=ge(c),W=typeof c.defaultValueDescription=="object"?Zb(c.defaultValueDescription):M(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),V=((h=s.getWidthOfTerminal)==null?void 0:h.call(s))??0;if(V>=80){let Ie="";c.description&&(Ie=Zb(c.description)),_.push(...re(R,Ie,g,d,V,!0),s.newLine),ee(T,c)&&(T&&_.push(...re(T.valueType,T.possibleValues,g,d,V,!1),s.newLine),W&&_.push(...re(Zb(Z.default_Colon),W,g,d,V,!1),s.newLine)),_.push(s.newLine)}else{if(_.push(S.blue(R),s.newLine),c.description){let Ie=Zb(c.description);_.push(Ie)}if(_.push(s.newLine),ee(T,c)){if(T&&_.push(`${T.valueType} ${T.possibleValues}`),W){T&&_.push(s.newLine);let Ie=Zb(Z.default_Colon);_.push(`${Ie} ${W}`)}_.push(s.newLine)}_.push(s.newLine)}return _;function M(Ie,_e){return Ie!==void 0&&typeof _e=="object"?Do(_e.entries()).filter(([,Ee])=>Ee===Ie).map(([Ee])=>Ee).join("/"):String(Ie)}function ee(Ie,_e){let Ee=["string"],Ne=[void 0,"false","n/a"],Te=_e.defaultValueDescription;return!(_e.category===Z.Command_line_Options||k(Ee,Ie?.possibleValues)&&k(Ne,Te))}function re(Ie,_e,Ee,Ne,Te,Ze){let We=[],Ue=!0,$e=_e,Ye=Te-Ne;for(;$e.length>0;){let Tt="";Ue?(Tt=Ie.padStart(Ee),Tt=Tt.padEnd(Ne),Tt=Ze?S.blue(Tt):Tt):Tt="".padStart(Ne);let ot=$e.substr(0,Ye);$e=$e.slice(Ye),We.push(`${Tt}${ot}`),Ue=!1}return We}function ge(Ie){if(Ie.type==="object")return;return{valueType:_e(Ie),possibleValues:Ee(Ie)};function _e(Ne){switch(pe.assert(Ne.type!=="listOrElement"),Ne.type){case"string":case"number":case"boolean":return Zb(Z.type_Colon);case"list":return Zb(Z.one_or_more_Colon);default:return Zb(Z.one_of_Colon)}}function Ee(Ne){let Te;switch(Ne.type){case"string":case"number":case"boolean":Te=Ne.type;break;case"list":case"listOrElement":Te=Ee(Ne.element);break;case"object":Te="";break;default:let Ze={};return Ne.type.forEach((We,Ue)=>{var $e;($e=Ne.deprecatedKeys)!=null&&$e.has(Ue)||(Ze[We]||(Ze[We]=[])).push(Ue)}),Object.entries(Ze).map(([,We])=>We.join("/")).join(", ")}return Te}}}function Cnn(s,c){let g=0;for(let S of c){let R=mnn(S).length;g=g>R?g:R}let d=g+2,h=d+2,_=[];for(let S of c){let R=cTs(s,S,d,h);_=[..._,...R]}return _[_.length-2]!==s.newLine&&_.push(s.newLine),_}function n1e(s,c,g,d,h,_){let S=[];if(S.push(nrt(s).bold(c)+s.newLine+s.newLine),h&&S.push(h+s.newLine+s.newLine),!d)return S=[...S,...Cnn(s,g)],_&&S.push(_+s.newLine+s.newLine),S;let R=new Map;for(let T of g){if(!T.category)continue;let W=Zb(T.category),V=R.get(W)??[];V.push(T),R.set(W,V)}return R.forEach((T,W)=>{S.push(`### ${W}${s.newLine}${s.newLine}`),S=[...S,...Cnn(s,T)]}),_&&S.push(_+s.newLine+s.newLine),S}function lTs(s,c){let g=nrt(s),d=[...irt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];d.push(g.bold(Zb(Z.COMMON_COMMANDS))+s.newLine+s.newLine),S("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),S("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),S("tsc -b",Z.Build_a_composite_project_in_the_working_directory),S("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),S("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),S("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),S(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let h=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),_=c.filter(R=>!k(h,R));d=[...d,...n1e(s,Zb(Z.COMMAND_LINE_FLAGS),h,!1,void 0,void 0),...n1e(s,Zb(Z.COMMON_COMPILER_OPTIONS),_,!1,void 0,XY(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)s.write(R);function S(R,T){let W=typeof R=="string"?[R]:R;for(let V of W)d.push(" "+g.blue(V)+s.newLine);d.push(" "+Zb(T)+s.newLine+s.newLine)}}function uTs(s,c,g,d){let h=[...irt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];h=[...h,...n1e(s,Zb(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,XY(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],h=[...h,...n1e(s,Zb(Z.WATCH_OPTIONS),d,!1,Zb(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],h=[...h,...n1e(s,Zb(Z.BUILD_OPTIONS),Me(g,_=>_!==SU),!1,XY(Z.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(let _ of h)s.write(_)}function _nn(s,c){let g=[...irt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];g=[...g,...n1e(s,Zb(Z.BUILD_OPTIONS),Me(c,d=>d!==SU),!1,XY(Z.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(let d of g)s.write(d)}function irt(s,c){var g;let d=nrt(s),h=[],_=((g=s.getWidthOfTerminal)==null?void 0:g.call(s))??0,S=5,R=d.blueBackground("".padStart(S)),T=d.blueBackground(d.brightWhite("TS ".padStart(S)));if(_>=c.length+S){let V=(_>120?120:_)-S;h.push(c.padEnd(V)+R+s.newLine),h.push("".padStart(V)+T+s.newLine)}else h.push(c+s.newLine),h.push(s.newLine);return h}function ynn(s,c){c.options.all?uTs(s,hnn(c),X$e,wz):lTs(s,hnn(c))}function bnn(s,c,g){let d=Gz(s),h;if(g.options.locale&&yx(g.options.locale,s,g.errors),g.errors.length>0)return g.errors.forEach(d),s.exit(1);if(g.options.init)return pTs(s,d,g.options),s.exit(0);if(g.options.version)return rrt(s),s.exit(0);if(g.options.help||g.options.all)return ynn(s,g),s.exit(0);if(g.options.watch&&g.options.listFilesOnly)return d(Nf(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),s.exit(1);if(g.options.project){if(g.fileNames.length!==0)return d(Nf(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),s.exit(1);let R=iu(g.options.project);if(!R||s.directoryExists(R)){if(h=Ro(R,"tsconfig.json"),!s.fileExists(h))return d(Nf(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,g.options.project)),s.exit(1)}else if(h=R,!s.fileExists(h))return d(Nf(Z.The_specified_path_does_not_exist_Colon_0,g.options.project)),s.exit(1)}else if(g.fileNames.length===0){let R=iu(s.getCurrentDirectory());h=ott(R,T=>s.fileExists(T))}if(g.fileNames.length===0&&!h)return g.options.showConfig?d(Nf(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,iu(s.getCurrentDirectory()))):(rrt(s),ynn(s,g)),s.exit(1);let _=s.getCurrentDirectory(),S=E9e(g.options,R=>Xc(R,_));if(h){let R=new Map,T=t5t(h,S,R,g.watchOptions,s,d);if(S.showConfig)return T.errors.length!==0?(d=trt(s,d,T.options),T.errors.forEach(d),s.exit(1)):(s.write(JSON.stringify($$e(T,h,s),null,4)+s.newLine),s.exit(0));if(d=trt(s,d,T.options),lbe(T.options))return b5t(s,d)?void 0:gTs(s,c,d,T,S,g.watchOptions,R);DP(T.options)?Bnn(s,c,d,T):vnn(s,c,d,T)}else{if(S.showConfig)return s.write(JSON.stringify($$e(g,Ro(_,"tsconfig.json"),s),null,4)+s.newLine),s.exit(0);if(d=trt(s,d,S),lbe(S))return b5t(s,d)?void 0:ATs(s,c,d,g.fileNames,S,g.watchOptions);DP(S)?Bnn(s,c,d,{...g,options:S}):vnn(s,c,d,{...g,options:S})}}function y5t(s){if(s.length>0&&s[0].charCodeAt(0)===45){let c=s[0].slice(s[0].charCodeAt(1)===45?2:1).toLowerCase();return c===SU.name||c===SU.shortName}return!1}function Enn(s,c,g){if(y5t(g)){let{buildOptions:h,watchOptions:_,projects:S,errors:R}=GWt(g);if(h.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(h.generateCpuProfile,()=>Snn(s,c,h,_,S,R));else return Snn(s,c,h,_,S,R)}let d=kWt(g,h=>s.readFile(h));if(d.options.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(d.options.generateCpuProfile,()=>bnn(s,c,d));else return bnn(s,c,d)}function b5t(s,c){return!s.watchFile||!s.watchDirectory?(c(Nf(Z.The_current_host_does_not_support_the_0_option,"--watch")),s.exit(1),!0):!1}var BVe=2;function Snn(s,c,g,d,h,_){let S=trt(s,Gz(s),g);if(g.locale&&yx(g.locale,s,_),_.length>0)return _.forEach(S),s.exit(1);if(g.help||h.length===0)return rrt(s),_nn(s,_Ee),s.exit(0);if(!s.getModifiedTime||!s.setModifiedTime||g.clean&&!s.deleteFile)return S(Nf(Z.The_current_host_does_not_support_the_0_option,"--build")),s.exit(1);if(g.watch){if(b5t(s,S))return;let M=a5t(s,void 0,S,bVe(s,vVe(s,g)),S5t(s,g));M.jsDocParsingMode=BVe;let ee=Nnn(s,g);wnn(s,c,M,ee);let re=M.onWatchStatusChange,ge=!1;M.onWatchStatusChange=(_e,Ee,Ne,Te)=>{re?.(_e,Ee,Ne,Te),ge&&(_e.code===Z.Found_0_errors_Watching_for_file_changes.code||_e.code===Z.Found_1_error_Watching_for_file_changes.code)&&v5t(Ie,ee)};let Ie=l5t(M,h,g,d);return Ie.build(),v5t(Ie,ee),ge=!0,Ie}let R=o5t(s,void 0,S,bVe(s,vVe(s,g)),E5t(s,g));R.jsDocParsingMode=BVe;let T=Nnn(s,g);wnn(s,c,R,T);let W=c5t(R,h,g),V=g.clean?W.clean():W.build();return v5t(W,T),jf(),s.exit(V)}function E5t(s,c){return vVe(s,c)?(g,d)=>s.write(xtt(g,d,s.newLine,s)):void 0}function vnn(s,c,g,d){let{fileNames:h,options:_,projectReferences:S}=d,R=tVe(_,void 0,s);R.jsDocParsingMode=BVe;let T=R.getCurrentDirectory(),W=_d(R.useCaseSensitiveFileNames());Fde(R,re=>Ou(re,T,W)),B5t(s,_,!1);let V={rootNames:h,options:_,projectReferences:S,host:R,configFileParsingDiagnostics:dQ(d)},M=KEe(V),ee=Wtt(M,g,re=>s.write(re+s.newLine),E5t(s,_));return ort(s,M,void 0),c(M),s.exit(ee)}function Bnn(s,c,g,d){let{options:h,fileNames:_,projectReferences:S}=d;B5t(s,h,!1);let R=yVe(h,s);R.jsDocParsingMode=BVe;let T=r5t({host:R,system:s,rootNames:_,options:h,configFileParsingDiagnostics:dQ(d),projectReferences:S,reportDiagnostic:g,reportErrorSummary:E5t(s,h),afterProgramEmitAndDiagnostics:W=>{ort(s,W.getProgram(),void 0),c(W)}});return s.exit(T)}function wnn(s,c,g,d){Tnn(s,g,!0),g.afterProgramEmitAndDiagnostics=h=>{ort(s,h.getProgram(),d),c(h)}}function Tnn(s,c,g){let d=c.createProgram;c.createProgram=(h,_,S,R,T,W)=>(pe.assert(h!==void 0||_===void 0&&!!R),_!==void 0&&B5t(s,_,g),d(h,_,S,R,T,W))}function Rnn(s,c,g){g.jsDocParsingMode=BVe,Tnn(s,g,!1);let d=g.afterProgramCreate;g.afterProgramCreate=h=>{d(h),ort(s,h.getProgram(),void 0),c(h)}}function S5t(s,c){return Dtt(s,vVe(s,c))}function gTs(s,c,g,d,h,_,S){let R=Qtt({configFileName:d.options.configFilePath,optionsToExtend:h,watchOptionsToExtend:_,system:s,reportDiagnostic:g,reportWatchStatus:S5t(s,d.options)});return Rnn(s,c,R),R.configFileParsingResult=d,R.extendedConfigCache=S,Jtt(R)}function ATs(s,c,g,d,h,_){let S=Xtt({rootFiles:d,options:h,watchOptions:_,system:s,reportDiagnostic:g,reportWatchStatus:S5t(s,h)});return Rnn(s,c,S),Jtt(S)}function Nnn(s,c){if(s===yd&&c.extendedDiagnostics)return na(),dTs()}function dTs(){let s;return{addAggregateStatistic:c,forEachAggregateStatistics:g,clear:d};function c(h){let _=s?.get(h.name);_?_.type===2?_.value=Math.max(_.value,h.value):_.value+=h.value:(s??(s=new Map)).set(h.name,h)}function g(h){s?.forEach(h)}function d(){s=void 0}}function v5t(s,c){if(!c)return;if(!cs()){yd.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` +`);return}let g=[];g.push({name:"Projects in scope",value:e1e(s.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(_=>{_.name=`Aggregate ${_.name}`,g.push(_)}),QS((_,S)=>{srt(_)&&g.push({name:`${h(_)} time`,value:S,type:0})}),ko(),na(),c.clear(),xnn(yd,g);function d(_){let S=sE(_);S&&g.push({name:h(_),value:S,type:1})}function h(_){return _.replace("SolutionBuilder::","")}}function Dnn(s,c){return s===yd&&(c.diagnostics||c.extendedDiagnostics)}function knn(s,c){return s===yd&&c.generateTrace}function B5t(s,c,g){Dnn(s,c)&&na(s),knn(s,c)&&fd(g?"build":"project",c.generateTrace,c.configFilePath)}function srt(s){return Ac(s,"SolutionBuilder::")}function ort(s,c,g){var d;let h=c.getCompilerOptions();knn(s,h)&&((d=ki)==null||d.stopTracing());let _;if(Dnn(s,h)){_=[];let W=s.getMemoryUsage?s.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let V=sTs(c);if(h.extendedDiagnostics)for(let[_e,Ee]of V.entries())R("Lines of "+_e,Ee);else R("Lines",ne(V.values(),(_e,Ee)=>_e+Ee,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),W>=0&&S({name:"Memory used",value:W,type:2},!0);let M=cs(),ee=M?eA("Program"):0,re=M?eA("Bind"):0,ge=M?eA("Check"):0,Ie=M?eA("Emit"):0;if(h.extendedDiagnostics){let _e=c.getRelationCacheSizes();R("Assignability cache size",_e.assignable),R("Identity cache size",_e.identity),R("Subtype cache size",_e.subtype),R("Strict subtype cache size",_e.strictSubtype),M&&QS((Ee,Ne)=>{srt(Ee)||T(`${Ee} time`,Ne,!0)})}else M&&(T("I/O read",eA("I/O Read"),!0),T("I/O write",eA("I/O Write"),!0),T("Parse time",ee,!0),T("Bind time",re,!0),T("Check time",ge,!0),T("Emit time",Ie,!0));M&&T("Total time",ee+re+ge+Ie,!1),xnn(s,_),M?g?(QS(_e=>{srt(_e)||um(_e)}),XS(_e=>{srt(_e)||gm(_e)})):ko():s.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` +`)}function S(W,V){_.push(W),V&&g?.addAggregateStatistic(W)}function R(W,V){S({name:W,value:V,type:1},!0)}function T(W,V,M){S({name:W,value:V,type:0},M)}}function xnn(s,c){let g=0,d=0;for(let h of c){h.name.length>g&&(g=h.name.length);let _=Gnn(h);_.length>d&&(d=_.length)}for(let h of c)s.write(`${h.name}:`.padEnd(g+2)+Gnn(h).toString().padStart(d)+s.newLine)}function Gnn(s){switch(s.type){case 1:return""+s.value;case 0:return(s.value/1e3).toFixed(2)+"s";case 2:return Math.round(s.value/1e3)+"K";default:pe.assertNever(s.type)}}function pTs(s,c,g){let d=s.getCurrentDirectory(),h=iu(Ro(d,"tsconfig.json"));if(s.fileExists(h))c(Nf(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{s.writeFile(h,VWt(g,s.newLine));let _=[s.newLine,...irt(s,"Created a new tsconfig.json")];_.push("You can learn more at https://aka.ms/tsconfig"+s.newLine);for(let S of _)s.write(S)}}function TN(s,c=!0){return{type:s,reportFallback:c}}var Fnn=TN(void 0,!1),Znn=TN(void 0,!1),Wde=TN(void 0,!0);function w5t(s,c){let g=a_(s,"strictNullChecks");return{serializeTypeOfDeclaration:V,serializeReturnTypeForSignature:ee,serializeTypeOfExpression:W,serializeTypeOfAccessor:T,tryReuseExistingTypeNode(st,ir){if(c.canReuseTypeNode(st,ir))return h(st,ir)}};function d(st,ir,zt=ir){return ir===void 0?void 0:c.markNodeReuse(st,ir.flags&16?ir:me.cloneNode(ir),zt??ir)}function h(st,ir){let{finalizeBoundary:zt,startRecoveryScope:Ht,hadError:Br,markError:mn}=c.createRecoveryBoundary(st),jn=Mr(ir,Zi,uc);if(!zt())return;return st.approximateLength+=ir.end-ir.pos,jn;function Zi(Zn){if(Br())return Zn;let ya=Ht(),Gl=tie(Zn)?c.enterNewScope(st,Zn):void 0,ba=su(Zn);return Gl?.(),Br()?uc(Zn)&&!bE(Zn)?(ya(),c.serializeExistingTypeNode(st,Zn)):Zn:ba?c.markNodeReuse(st,ba,Zn):void 0}function Ns(Zn){let ya=w7(Zn);switch(ya.kind){case 184:return Ic(ya);case 187:return ks(ya);case 200:return An(ya);case 199:let Gl=ya;if(Gl.operator===143)return si(Gl)}return Mr(Zn,Zi,uc)}function An(Zn){let ya=Ns(Zn.objectType);if(ya!==void 0)return me.updateIndexedAccessTypeNode(Zn,ya,Mr(Zn.indexType,Zi,uc))}function si(Zn){pe.assertEqual(Zn.operator,143);let ya=Ns(Zn.type);if(ya!==void 0)return me.updateTypeOperatorNode(Zn,ya)}function ks(Zn){let{introducesError:ya,node:Gl}=c.trackExistingEntityName(st,Zn.exprName);if(!ya)return me.updateTypeQueryNode(Zn,Gl,Ws(Zn.typeArguments,Zi,uc));let ba=c.serializeTypeName(st,Zn.exprName,!0);if(ba)return c.markNodeReuse(st,ba,Zn.exprName)}function Ic(Zn){if(c.canReuseTypeNode(st,Zn)){let{introducesError:ya,node:Gl}=c.trackExistingEntityName(st,Zn.typeName),ba=Ws(Zn.typeArguments,Zi,uc);if(ya){let Wo=c.serializeTypeName(st,Zn.typeName,!1,ba);if(Wo)return c.markNodeReuse(st,Wo,Zn.typeName)}else{let Wo=me.updateTypeReferenceNode(Zn,Gl,ba);return c.markNodeReuse(st,Wo,Zn)}}}function su(Zn){var ya;if(W3(Zn))return Mr(Zn.type,Zi,uc);if(YPt(Zn)||Zn.kind===320)return me.createKeywordTypeNode(133);if(QPt(Zn))return me.createKeywordTypeNode(159);if(hie(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createLiteralTypeNode(me.createNull())]);if(f$e(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createKeywordTypeNode(157)]);if($Le(Zn))return Mr(Zn.type,Zi);if(e9e(Zn))return me.createArrayTypeNode(Mr(Zn.type,Zi,uc));if(yU(Zn))return me.createTypeLiteralNode(At(Zn.jsDocPropertyTags,hn=>{let Oi=Mr(Ir(hn.name)?hn.name:hn.name.right,Zi,Ir),lo=c.getJsDocPropertyOverride(st,Zn,hn);return me.createPropertySignature(void 0,Oi,hn.isBracketed||hn.typeExpression&&f$e(hn.typeExpression.type)?me.createToken(58):void 0,lo||hn.typeExpression&&Mr(hn.typeExpression.type,Zi,uc)||me.createKeywordTypeNode(133))}));if(nh(Zn)&&Ir(Zn.typeName)&&Zn.typeName.escapedText==="")return ua(me.createKeywordTypeNode(133),Zn);if((l_(Zn)||nh(Zn))&&Kge(Zn))return me.createTypeLiteralNode([me.createIndexSignature(void 0,[me.createParameterDeclaration(void 0,void 0,"x",void 0,Mr(Zn.typeArguments[0],Zi,uc))],Mr(Zn.typeArguments[1],Zi,uc))]);if(mie(Zn))if(PY(Zn)){let hn;return me.createConstructorTypeNode(void 0,Ws(Zn.typeParameters,Zi,Ds),Xt(Zn.parameters,(Oi,lo)=>Oi.name&&Ir(Oi.name)&&Oi.name.escapedText==="new"?(hn=Oi.type,void 0):me.createParameterDeclaration(void 0,Wo(Oi),c.markNodeReuse(st,me.createIdentifier(hc(Oi,lo)),Oi),me.cloneNode(Oi.questionToken),Mr(Oi.type,Zi,uc),void 0)),Mr(hn||Zn.type,Zi,uc)||me.createKeywordTypeNode(133))}else return me.createFunctionTypeNode(Ws(Zn.typeParameters,Zi,Ds),At(Zn.parameters,(hn,Oi)=>me.createParameterDeclaration(void 0,Wo(hn),c.markNodeReuse(st,me.createIdentifier(hc(hn,Oi)),hn),me.cloneNode(hn.questionToken),Mr(hn.type,Zi,uc),void 0)),Mr(Zn.type,Zi,uc)||me.createKeywordTypeNode(133));if(Fx(Zn))return c.canReuseTypeNode(st,Zn)||mn(),Zn;if(Ds(Zn)){let{node:hn}=c.trackExistingEntityName(st,Zn.name);return me.updateTypeParameterDeclaration(Zn,Ws(Zn.modifiers,Zi,Ig),hn,Mr(Zn.constraint,Zi,uc),Mr(Zn.default,Zi,uc))}if(Iv(Zn)){let hn=An(Zn);return hn||(mn(),Zn)}if(nh(Zn)){let hn=Ic(Zn);return hn||(mn(),Zn)}if(ky(Zn)){if(((ya=Zn.attributes)==null?void 0:ya.token)===132)return mn(),Zn;if(!c.canReuseTypeNode(st,Zn))return c.serializeExistingTypeNode(st,Zn);let hn=yr(Zn,Zn.argument.literal),Oi=hn===Zn.argument.literal?d(st,Zn.argument.literal):hn;return me.updateImportTypeNode(Zn,Oi===Zn.argument.literal?d(st,Zn.argument):me.createLiteralTypeNode(Oi),Mr(Zn.attributes,Zi,CU),Mr(Zn.qualifier,Zi,fC),Ws(Zn.typeArguments,Zi,uc),Zn.isTypeOf)}if(rh(Zn)&&Zn.name.kind===168&&!c.hasLateBindableName(Zn)){if(!XD(Zn))return Gl(Zn,Zi);if(c.shouldRemoveDeclaration(st,Zn))return}if(bu(Zn)&&!Zn.type||pi(Zn)&&!Zn.type&&!Zn.initializer||ss(Zn)&&!Zn.type&&!Zn.initializer||Si(Zn)&&!Zn.type&&!Zn.initializer){let hn=Gl(Zn,Zi);return hn===Zn&&(hn=c.markNodeReuse(st,me.cloneNode(Zn),Zn)),hn.type=me.createKeywordTypeNode(133),Si(Zn)&&(hn.modifiers=void 0),hn}if(Fw(Zn)){let hn=ks(Zn);return hn||(mn(),Zn)}if(Un(Zn)&&Od(Zn.expression)){let{node:hn,introducesError:Oi}=c.trackExistingEntityName(st,Zn.expression);if(Oi){let lo=c.serializeTypeOfExpression(st,Zn.expression),pa;if(EE(lo))pa=lo.literal;else{let Oa=c.evaluateEntityNameExpression(Zn.expression),tl=typeof Oa.value=="string"?me.createStringLiteral(Oa.value,void 0):typeof Oa.value=="number"?me.createNumericLiteral(Oa.value,0):void 0;if(!tl)return Um(lo)&&c.trackComputedName(st,Zn.expression),Zn;pa=tl}return pa.kind===11&&Uh(pa.text,Mg(s))?me.createIdentifier(pa.text):pa.kind===9&&!pa.text.startsWith("-")?pa:me.updateComputedPropertyName(Zn,pa)}else return me.updateComputedPropertyName(Zn,hn)}if(bE(Zn)){let hn;if(Ir(Zn.parameterName)){let{node:Oi,introducesError:lo}=c.trackExistingEntityName(st,Zn.parameterName);lo&&mn(),hn=Oi}else hn=me.cloneNode(Zn.parameterName);return me.updateTypePredicateNode(Zn,me.cloneNode(Zn.assertsModifier),hn,Mr(Zn.type,Zi,uc))}if(Zw(Zn)||mh(Zn)||GB(Zn)){let hn=Gl(Zn,Zi),Oi=c.markNodeReuse(st,hn===Zn?me.cloneNode(Zn):hn,Zn),lo=tA(Oi);return ti(Oi,lo|(st.flags&1024&&mh(Zn)?0:1)),Oi}if(Zg(Zn)&&st.flags&268435456&&!Zn.singleQuote){let hn=me.cloneNode(Zn);return hn.singleQuote=!0,hn}if(d2(Zn)){let hn=Mr(Zn.checkType,Zi,uc),Oi=c.enterNewScope(st,Zn),lo=Mr(Zn.extendsType,Zi,uc),pa=Mr(Zn.trueType,Zi,uc);Oi();let Oa=Mr(Zn.falseType,Zi,uc);return me.updateConditionalTypeNode(Zn,hn,lo,pa,Oa)}if(xB(Zn)){if(Zn.operator===158&&Zn.type.kind===155){if(!c.canReuseTypeNode(st,Zn))return mn(),Zn}else if(Zn.operator===143){let hn=si(Zn);return hn||(mn(),Zn)}}return Gl(Zn,Zi);function Gl(hn,Oi){let lo=!st.enclosingFile||st.enclosingFile!==ms(hn);return _s(hn,Oi,void 0,lo?ba:void 0)}function ba(hn,Oi,lo,pa,Oa){let tl=Ws(hn,Oi,lo,pa,Oa);return tl&&(tl.pos!==-1||tl.end!==-1)&&(tl===hn&&(tl=me.createNodeArray(hn.slice(),hn.hasTrailingComma)),TB(tl,-1,-1)),tl}function Wo(hn){return hn.dotDotDotToken||(hn.type&&e9e(hn.type)?me.createToken(26):void 0)}function hc(hn,Oi){return hn.name&&Ir(hn.name)&&hn.name.escapedText==="this"?"this":Wo(hn)?"args":`arg${Oi}`}function yr(hn,Oi){let lo=c.getModuleSpecifierOverride(st,hn,Oi);return lo?ua(me.createStringLiteral(lo),Oi):Oi}}}function _(st,ir,zt){if(!st)return;let Ht;return(!zt||ur(st))&&c.canReuseTypeNode(ir,st)&&(Ht=h(ir,st),Ht!==void 0&&(Ht=tr(Ht,zt,void 0,ir))),Ht}function S(st,ir,zt,Ht,Br,mn=Br!==void 0){if(!st||!c.canReuseTypeNodeAnnotation(ir,zt,st,Ht,Br)&&(!Br||!c.canReuseTypeNodeAnnotation(ir,zt,st,Ht,!1)))return;let jn;return(!Br||ur(st))&&(jn=_(st,ir,Br)),jn!==void 0||!mn?jn:(ir.tracker.reportInferenceFallback(zt),c.serializeExistingTypeNode(ir,st,Br)??me.createKeywordTypeNode(133))}function R(st,ir,zt,Ht){if(!st)return;let Br=_(st,ir,zt);return Br!==void 0?Br:(ir.tracker.reportInferenceFallback(Ht??st),c.serializeExistingTypeNode(ir,st,zt)??me.createKeywordTypeNode(133))}function T(st,ir,zt){return Ie(st,ir,zt)??$e(st,c.getAllAccessorDeclarations(st),zt,ir)}function W(st,ir,zt,Ht){let Br=ot(st,ir,!1,zt,Ht);return Br.type!==void 0?Br.type:We(st,ir,Br.reportFallback)}function V(st,ir,zt){switch(st.kind){case 170:case 342:return Ee(st,ir,zt);case 261:return _e(st,ir,zt);case 172:case 349:case 173:return Te(st,ir,zt);case 209:return Ze(st,ir,zt);case 278:return W(st.expression,zt,void 0,!0);case 212:case 213:case 227:return Ne(st,ir,zt);case 304:case 305:return M(st,ir,zt);default:pe.assertNever(st,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(st.kind)}`)}}function M(st,ir,zt){let Ht=kh(st),Br;if(Ht&&c.canReuseTypeNodeAnnotation(zt,st,Ht,ir)&&(Br=_(Ht,zt)),!Br&&st.kind===304){let mn=st.initializer,jn=sQ(mn)?yie(mn):mn.kind===235||mn.kind===217?mn.type:void 0;jn&&!s2(jn)&&c.canReuseTypeNodeAnnotation(zt,st,jn,ir)&&(Br=_(jn,zt))}return Br??Ze(st,ir,zt,!1)}function ee(st,ir,zt){switch(st.kind){case 178:return T(st,ir,zt);case 175:case 263:case 181:case 174:case 180:case 177:case 179:case 182:case 185:case 186:case 219:case 220:case 318:case 324:return Gr(st,ir,zt);default:pe.assertNever(st,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(st.kind)}`)}}function re(st){if(st)return st.kind===178?wo(st)&&eN(st)||xb(st):Uye(st)}function ge(st,ir){let zt=re(st);return!zt&&st!==ir.firstAccessor&&(zt=re(ir.firstAccessor)),!zt&&ir.secondAccessor&&st!==ir.secondAccessor&&(zt=re(ir.secondAccessor)),zt}function Ie(st,ir,zt){let Ht=c.getAllAccessorDeclarations(st),Br=ge(st,Ht);if(Br&&!bE(Br))return Ye(zt,st,()=>S(Br,zt,st,ir)??Ze(st,ir,zt));if(Ht.getAccessor)return Ye(zt,Ht.getAccessor,()=>Gr(Ht.getAccessor,ir,zt))}function _e(st,ir,zt){var Ht;let Br=kh(st),mn=Wde;return Br?mn=TN(S(Br,zt,st,ir)):st.initializer&&(((Ht=ir.declarations)==null?void 0:Ht.length)===1||ct(ir.declarations,nc)===1)&&!c.isExpandoFunctionDeclaration(st)&&!pr(st)&&(mn=ot(st.initializer,zt,void 0,void 0,OT(st))),mn.type!==void 0?mn.type:Ze(st,ir,zt,mn.reportFallback)}function Ee(st,ir,zt){let Ht=st.parent;if(Ht.kind===179)return T(Ht,void 0,zt);let Br=kh(st),mn=c.requiresAddingImplicitUndefined(st,ir,zt.enclosingDeclaration),jn=Wde;return Br?jn=TN(S(Br,zt,st,ir,mn)):Si(st)&&st.initializer&&Ir(st.name)&&!pr(st)&&(jn=ot(st.initializer,zt,void 0,mn)),jn.type!==void 0?jn.type:Ze(st,ir,zt,jn.reportFallback)}function Ne(st,ir,zt){let Ht=kh(st),Br;Ht&&(Br=S(Ht,zt,st,ir));let mn=zt.suppressReportInferenceFallback;zt.suppressReportInferenceFallback=!0;let jn=Br??Ze(st,ir,zt,!1);return zt.suppressReportInferenceFallback=mn,jn}function Te(st,ir,zt){let Ht=kh(st),Br=c.requiresAddingImplicitUndefined(st,ir,zt.enclosingDeclaration),mn=Wde;if(Ht)mn=TN(S(Ht,zt,st,ir,Br));else{let jn=pi(st)?st.initializer:void 0;if(jn&&!pr(st)){let Zi=hf(st);mn=ot(jn,zt,void 0,Br,Zi)}}return mn.type!==void 0?mn.type:Ze(st,ir,zt,mn.reportFallback)}function Ze(st,ir,zt,Ht=!0){return Ht&&zt.tracker.reportInferenceFallback(st),zt.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfDeclaration(zt,st,ir)}function We(st,ir,zt=!0,Ht){return pe.assert(!Ht),zt&&ir.tracker.reportInferenceFallback(st),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfExpression(ir,st)??me.createKeywordTypeNode(133)}function Ue(st,ir,zt,Ht){return Ht&&ir.tracker.reportInferenceFallback(st),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeReturnTypeForSignature(ir,st,zt)??me.createKeywordTypeNode(133)}function $e(st,ir,zt,Ht,Br=!0){return st.kind===178?Gr(st,Ht,zt,Br):(Br&&zt.tracker.reportInferenceFallback(st),(ir.getAccessor&&Gr(ir.getAccessor,Ht,zt,Br))??c.serializeTypeOfDeclaration(zt,st,Ht)??me.createKeywordTypeNode(133))}function Ye(st,ir,zt){let Ht=c.enterNewScope(st,ir),Br=zt();return Ht(),Br}function Tt(st,ir,zt,Ht){return s2(ir)?ot(st,zt,!0,Ht):TN(R(ir,zt,Ht))}function ot(st,ir,zt=!1,Ht=!1,Br=!1){switch(st.kind){case 218:return sQ(st)?Tt(st.expression,yie(st),ir,Ht):ot(st.expression,ir,zt,Ht);case 80:if(c.isUndefinedIdentifierExpression(st))return TN(nt());break;case 106:return TN(g?tr(me.createLiteralTypeNode(me.createNull()),Ht,st,ir):me.createKeywordTypeNode(133));case 220:case 219:return pe.type(st),Ye(ir,st,()=>Qe(st,ir));case 217:case 235:let mn=st;return Tt(mn.expression,mn.type,ir,Ht);case 225:let jn=st;if(uz(jn))return Dt(jn.operator===40?jn.operand:jn,jn.operand.kind===10?163:150,ir,zt||Br,Ht);break;case 210:return ht(st,ir,zt,Ht);case 211:return Rt(st,ir,zt,Ht);case 232:return TN(We(st,ir,!0,Ht));case 229:if(!zt&&!Br)return TN(me.createKeywordTypeNode(154));break;default:let Zi,Ns=st;switch(st.kind){case 9:Zi=150;break;case 15:Ns=me.createStringLiteral(st.text),Zi=154;break;case 11:Zi=154;break;case 10:Zi=163;break;case 112:case 97:Zi=136;break}if(Zi)return Dt(Ns,Zi,ir,zt||Br,Ht)}return Wde}function Qe(st,ir){let zt=Gr(st,void 0,ir),Ht=Pt(st.typeParameters,ir),Br=st.parameters.map(mn=>Ke(mn,ir));return TN(me.createFunctionTypeNode(Ht,Br,zt))}function mt(st,ir,zt){if(!zt)return ir.tracker.reportInferenceFallback(st),!1;for(let Ht of st.elements)if(Ht.kind===231)return ir.tracker.reportInferenceFallback(Ht),!1;return!0}function ht(st,ir,zt,Ht){if(!mt(st,ir,zt))return Ht||jh(gv(st).parent)?Znn:TN(We(st,ir,!1,Ht));let Br=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[];for(let Zi of st.elements)if(pe.assert(Zi.kind!==231),Zi.kind===233)mn.push(nt());else{let Ns=ot(Zi,ir,zt),An=Ns.type!==void 0?Ns.type:We(Zi,ir,Ns.reportFallback);mn.push(An)}let jn=me.createTupleTypeNode(mn);return jn.emitNode={flags:1,autoGenerate:void 0,internalFlags:0},ir.noInferenceFallback=Br,Fnn}function _t(st,ir){let zt=!0;for(let Ht of st.properties){if(Ht.flags&262144){zt=!1;break}if(Ht.kind===305||Ht.kind===306)ir.tracker.reportInferenceFallback(Ht),zt=!1;else if(Ht.name.flags&262144){zt=!1;break}else if(Ht.name.kind===81)zt=!1;else if(Ht.name.kind===168){let Br=Ht.name.expression;!uz(Br,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Br)&&(ir.tracker.reportInferenceFallback(Ht.name),zt=!1)}}return zt}function Rt(st,ir,zt,Ht){if(!_t(st,ir))return Ht||jh(gv(st).parent)?Znn:TN(We(st,ir,!1,Ht));let Br=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[],jn=ir.flags;ir.flags|=4194304;for(let Ns of st.properties){pe.assert(!a0(Ns)&&!Lx(Ns));let An=Ns.name,si;switch(Ns.kind){case 175:si=Ye(ir,Ns,()=>_r(Ns,An,ir,zt));break;case 304:si=Lt(Ns,An,ir,zt);break;case 179:case 178:si=Gt(Ns,An,ir);break}si&&(hh(si,Ns),mn.push(si))}ir.flags=jn;let Zi=me.createTypeLiteralNode(mn);return ir.flags&1024||ti(Zi,1),ir.noInferenceFallback=Br,Fnn}function Lt(st,ir,zt,Ht){let Br=Ht?[me.createModifier(148)]:[],mn=ot(st.initializer,zt,Ht),jn=mn.type!==void 0?mn.type:Ze(st,void 0,zt,mn.reportFallback);return me.createPropertySignature(Br,d(zt,ir),void 0,jn)}function Ke(st,ir){return me.updateParameterDeclaration(st,void 0,d(ir,st.dotDotDotToken),c.serializeNameOfParameter(ir,st),c.isOptionalParameter(st)?me.createToken(58):void 0,Ee(st,void 0,ir),void 0)}function Pt(st,ir){return st?.map(zt=>{var Ht;let{node:Br}=c.trackExistingEntityName(ir,zt.name);return me.updateTypeParameterDeclaration(zt,(Ht=zt.modifiers)==null?void 0:Ht.map(mn=>d(ir,mn)),Br,R(zt.constraint,ir),R(zt.default,ir))})}function _r(st,ir,zt,Ht){let Br=Gr(st,void 0,zt),mn=Pt(st.typeParameters,zt),jn=st.parameters.map(Zi=>Ke(Zi,zt));return Ht?me.createPropertySignature([me.createModifier(148)],d(zt,ir),d(zt,st.questionToken),me.createFunctionTypeNode(mn,jn,Br)):(Ir(ir)&&ir.escapedText==="new"&&(ir=me.createStringLiteral("new")),me.createMethodSignature([],d(zt,ir),d(zt,st.questionToken),mn,jn,Br))}function Gt(st,ir,zt){let Ht=c.getAllAccessorDeclarations(st),Br=Ht.getAccessor&&re(Ht.getAccessor),mn=Ht.setAccessor&&re(Ht.setAccessor);if(Br!==void 0&&mn!==void 0)return Ye(zt,st,()=>{let jn=st.parameters.map(Zi=>Ke(Zi,zt));return bB(st)?me.updateGetAccessorDeclaration(st,[],d(zt,ir),jn,R(Br,zt),void 0):me.updateSetAccessorDeclaration(st,[],d(zt,ir),jn,void 0)});if(Ht.firstAccessor===st){let Zi=(Br?Ye(zt,Ht.getAccessor,()=>R(Br,zt)):mn?Ye(zt,Ht.setAccessor,()=>R(mn,zt)):void 0)??$e(st,Ht,zt,void 0);return me.createPropertySignature(Ht.setAccessor===void 0?[me.createModifier(148)]:[],d(zt,ir),void 0,Zi)}}function nt(){return g?me.createKeywordTypeNode(157):me.createKeywordTypeNode(133)}function Dt(st,ir,zt,Ht,Br){let mn;return Ht?(st.kind===225&&st.operator===40&&(mn=me.createLiteralTypeNode(d(zt,st.operand))),mn=me.createLiteralTypeNode(d(zt,st))):mn=me.createKeywordTypeNode(ir),TN(tr(mn,Br,st,zt))}function tr(st,ir,zt,Ht){let Br=zt&&gv(zt).parent,mn=Br&&jh(Br)&&RB(Br);return!g||!(ir||mn)?st:(ur(st)||Ht.tracker.reportInferenceFallback(st),aS(st)?me.createUnionTypeNode([...st.types,me.createKeywordTypeNode(157)]):me.createUnionTypeNode([st,me.createKeywordTypeNode(157)]))}function ur(st){return!g||v0(st.kind)||st.kind===202||st.kind===185||st.kind===186||st.kind===189||st.kind===190||st.kind===188||st.kind===204||st.kind===198?!0:st.kind===197?ur(st.type):st.kind===193||st.kind===194?st.types.every(ur):!1}function Gr(st,ir,zt,Ht=!0){let Br=Wde,mn=PY(st)?kh(st.parameters[0]):xb(st);return mn?Br=TN(S(mn,zt,st,ir)):C3(st)&&(Br=dt(st,zt)),Br.type!==void 0?Br.type:Ue(st,zt,ir,Ht&&Br.reportFallback&&!mn)}function dt(st,ir){let zt;if(st&&!sf(st.body)){if(SI(st)&3)return Wde;let Br=st.body;Br&&$u(Br)?yF(Br,mn=>{if(mn.parent!==Br)return zt=void 0,!0;if(!zt)zt=mn.expression;else return zt=void 0,!0}):zt=Br}if(zt)if(pr(zt)){let Ht=sQ(zt)?yie(zt):Yd(zt)||xF(zt)?zt.type:void 0;if(Ht&&!s2(Ht))return TN(_(Ht,ir))}else return ot(zt,ir);return Wde}function pr(st){return ji(st.parent,ir=>Zl(ir)||!kd(ir)&&!!kh(ir)||bN(ir)||fie(ir))}}var YP={};o(YP,{NameValidationResult:()=>Hnn,discoverTypings:()=>hTs,isTypingUpToDate:()=>Onn,loadSafeList:()=>fTs,loadTypesMap:()=>ITs,nonRelativeModuleNameForTypingCache:()=>Mnn,renderPackageNameValidationFailure:()=>CTs,validatePackageName:()=>mTs});var wVe="action::set",TVe="action::invalidate",RVe="action::packageInstalled",art="event::typesRegistry",crt="event::beginInstallTypes",lrt="event::endInstallTypes",T5t="event::initializationFailed",i1e="action::watchTypingLocations",urt;(s=>{s.GlobalCacheLocation="--globalTypingsCacheLocation",s.LogFile="--logFile",s.EnableTelemetry="--enableTelemetry",s.TypingSafeListLocation="--typingSafeListLocation",s.TypesMapLocation="--typesMapLocation",s.NpmLocation="--npmLocation",s.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(urt||(urt={}));function Lnn(s){return yd.args.includes(s)}function Vnn(s){let c=yd.args.indexOf(s);return c>=0&&cs.readFile(d));return new Map(Object.entries(g.config))}function ITs(s,c){var g;let d=bEe(c,h=>s.readFile(h));if((g=d.config)!=null&&g.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function hTs(s,c,g,d,h,_,S,R,T,W){if(!S||!S.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let V=new Map;g=Xt(g,Ze=>{let We=iu(Ze);if(pN(We))return We});let M=[];S.include&&Ee(S.include,"Explicitly included types");let ee=S.exclude||[];if(!W.types){let Ze=new Set(g.map(Mo));Ze.add(d),Ze.forEach(We=>{Ne(We,"bower.json","bower_components",M),Ne(We,"package.json","node_modules",M)})}if(S.disableFilenameBasedTypeAcquisition||Te(g),R){let Ze=io(R.map(Mnn),MA,Ca);Ee(Ze,"Inferred typings from unresolved imports")}for(let Ze of ee)V.delete(Ze)&&c&&c(`Typing for ${Ze} is in exclude list, will be ignored.`);_.forEach((Ze,We)=>{let Ue=T.get(We);V.get(We)===!1&&Ue!==void 0&&Onn(Ze,Ue)&&V.set(We,Ze.typingLocation)});let re=[],ge=[];V.forEach((Ze,We)=>{Ze?ge.push(Ze):re.push(We)});let Ie={cachedTypingPaths:ge,newTypingNames:re,filesToWatch:M};return c&&c(`Finished typings discovery:${j3(Ie)}`),Ie;function _e(Ze){V.has(Ze)||V.set(Ze,!1)}function Ee(Ze,We){c&&c(`${We}: ${JSON.stringify(Ze)}`),F(Ze,_e)}function Ne(Ze,We,Ue,$e){let Ye=Ro(Ze,We),Tt,ot;s.fileExists(Ye)&&($e.push(Ye),Tt=bEe(Ye,_t=>s.readFile(_t)).config,ot=er([Tt.dependencies,Tt.devDependencies,Tt.optionalDependencies,Tt.peerDependencies],_g),Ee(ot,`Typing names in '${Ye}' dependencies`));let Qe=Ro(Ze,Ue);if($e.push(Qe),!s.directoryExists(Qe))return;let mt=[],ht=ot?ot.map(_t=>Ro(Qe,_t,We)):s.readDirectory(Qe,[".json"],void 0,void 0,3).filter(_t=>{if(gp(_t)!==We)return!1;let Rt=Np(iu(_t)),Lt=Rt[Rt.length-3][0]==="@";return Lt&&Om(Rt[Rt.length-4])===Ue||!Lt&&Om(Rt[Rt.length-3])===Ue});c&&c(`Searching for typing names in ${Qe}; all files: ${JSON.stringify(ht)}`);for(let _t of ht){let Rt=iu(_t),Ke=bEe(Rt,_r=>s.readFile(_r)).config;if(!Ke.name)continue;let Pt=Ke.types||Ke.typings;if(Pt){let _r=Xc(Pt,Mo(Rt));s.fileExists(_r)?(c&&c(` Package '${Ke.name}' provides its own types.`),V.set(Ke.name,_r)):c&&c(` Package '${Ke.name}' provides its own types but they are missing.`)}else mt.push(Ke.name)}Ee(mt," Found package names")}function Te(Ze){let We=Xt(Ze,$e=>{if(!pN($e))return;let Ye=s0(Om(gp($e))),Tt=us(Ye);return h.get(Tt)});We.length&&Ee(We,"Inferred typings from file names"),jt(Ze,$e=>aA($e,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),_e("react"))}}var Hnn=(s=>(s[s.Ok=0]="Ok",s[s.EmptyName=1]="EmptyName",s[s.NameTooLong=2]="NameTooLong",s[s.NameStartsWithDot=3]="NameStartsWithDot",s[s.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",s[s.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",s))(Hnn||{}),Ynn=214;function mTs(s){return R5t(s,!0)}function R5t(s,c){if(!s)return 1;if(s.length>Ynn)return 2;if(s.charCodeAt(0)===46)return 3;if(s.charCodeAt(0)===95)return 4;if(c){let g=/^@([^/]+)\/([^/]+)$/.exec(s);if(g){let d=R5t(g[1],!1);if(d!==0)return{name:g[1],isScopeName:!0,result:d};let h=R5t(g[2],!1);return h!==0?{name:g[2],isScopeName:!1,result:h}:0}}return encodeURIComponent(s)!==s?5:0}function CTs(s,c){return typeof s=="object"?Qnn(c,s.result,s.name,s.isScopeName):Qnn(c,s,c,!1)}function Qnn(s,c,g,d){let h=d?"Scope":"Package";switch(c){case 1:return`'${s}':: ${h} name '${g}' cannot be empty`;case 2:return`'${s}':: ${h} name '${g}' should be less than ${Ynn} characters`;case 3:return`'${s}':: ${h} name '${g}' cannot start with '.'`;case 4:return`'${s}':: ${h} name '${g}' cannot start with '_'`;case 5:return`'${s}':: ${h} name '${g}' contains non URI safe characters`;case 0:return pe.fail();default:pe.assertNever(c)}}var NVe;(s=>{class c{constructor(h){this.text=h}getText(h,_){return h===0&&_===this.text.length?this.text:this.text.substring(h,_)}getLength(){return this.text.length}getChangeRange(){}}function g(d){return new c(d)}s.fromString=g})(NVe||(NVe={}));var N5t=(s=>(s[s.Dependencies=1]="Dependencies",s[s.DevDependencies=2]="DevDependencies",s[s.PeerDependencies=4]="PeerDependencies",s[s.OptionalDependencies=8]="OptionalDependencies",s[s.All=15]="All",s))(N5t||{}),D5t=(s=>(s[s.Off=0]="Off",s[s.On=1]="On",s[s.Auto=2]="Auto",s))(D5t||{}),k5t=(s=>(s[s.Semantic=0]="Semantic",s[s.PartialSemantic=1]="PartialSemantic",s[s.Syntactic=2]="Syntactic",s))(k5t||{}),VB={},x5t=(s=>(s.Original="original",s.TwentyTwenty="2020",s))(x5t||{}),grt=(s=>(s.All="All",s.SortAndCombine="SortAndCombine",s.RemoveUnused="RemoveUnused",s))(grt||{}),Art=(s=>(s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",s))(Art||{}),G5t=(s=>(s.Type="Type",s.Parameter="Parameter",s.Enum="Enum",s))(G5t||{}),F5t=(s=>(s.none="none",s.definition="definition",s.reference="reference",s.writtenReference="writtenReference",s))(F5t||{}),Z5t=(s=>(s[s.None=0]="None",s[s.Block=1]="Block",s[s.Smart=2]="Smart",s))(Z5t||{}),drt=(s=>(s.Ignore="ignore",s.Insert="insert",s.Remove="remove",s))(drt||{});function DVe(s){return{indentSize:4,tabSize:4,newLineCharacter:s||` +`,convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var Xnn=DVe(` +`),kVe=(s=>(s[s.aliasName=0]="aliasName",s[s.className=1]="className",s[s.enumName=2]="enumName",s[s.fieldName=3]="fieldName",s[s.interfaceName=4]="interfaceName",s[s.keyword=5]="keyword",s[s.lineBreak=6]="lineBreak",s[s.numericLiteral=7]="numericLiteral",s[s.stringLiteral=8]="stringLiteral",s[s.localName=9]="localName",s[s.methodName=10]="methodName",s[s.moduleName=11]="moduleName",s[s.operator=12]="operator",s[s.parameterName=13]="parameterName",s[s.propertyName=14]="propertyName",s[s.punctuation=15]="punctuation",s[s.space=16]="space",s[s.text=17]="text",s[s.typeParameterName=18]="typeParameterName",s[s.enumMemberName=19]="enumMemberName",s[s.functionName=20]="functionName",s[s.regularExpressionLiteral=21]="regularExpressionLiteral",s[s.link=22]="link",s[s.linkName=23]="linkName",s[s.linkText=24]="linkText",s))(kVe||{}),L5t=(s=>(s[s.None=0]="None",s[s.MayIncludeAutoImports=1]="MayIncludeAutoImports",s[s.IsImportStatementCompletion=2]="IsImportStatementCompletion",s[s.IsContinuation=4]="IsContinuation",s[s.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",s[s.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",s[s.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",s))(L5t||{}),V5t=(s=>(s.Comment="comment",s.Region="region",s.Code="code",s.Imports="imports",s))(V5t||{}),P5t=(s=>(s[s.JavaScript=0]="JavaScript",s[s.SourceMap=1]="SourceMap",s[s.Declaration=2]="Declaration",s))(P5t||{}),W5t=(s=>(s[s.None=0]="None",s[s.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",s[s.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",s[s.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",s[s.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",s[s.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",s[s.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",s))(W5t||{}),O5t=(s=>(s[s.Punctuation=0]="Punctuation",s[s.Keyword=1]="Keyword",s[s.Operator=2]="Operator",s[s.Comment=3]="Comment",s[s.Whitespace=4]="Whitespace",s[s.Identifier=5]="Identifier",s[s.NumberLiteral=6]="NumberLiteral",s[s.BigIntLiteral=7]="BigIntLiteral",s[s.StringLiteral=8]="StringLiteral",s[s.RegExpLiteral=9]="RegExpLiteral",s))(O5t||{}),M5t=(s=>(s.unknown="",s.warning="warning",s.keyword="keyword",s.scriptElement="script",s.moduleElement="module",s.classElement="class",s.localClassElement="local class",s.interfaceElement="interface",s.typeElement="type",s.enumElement="enum",s.enumMemberElement="enum member",s.variableElement="var",s.localVariableElement="local var",s.variableUsingElement="using",s.variableAwaitUsingElement="await using",s.functionElement="function",s.localFunctionElement="local function",s.memberFunctionElement="method",s.memberGetAccessorElement="getter",s.memberSetAccessorElement="setter",s.memberVariableElement="property",s.memberAccessorVariableElement="accessor",s.constructorImplementationElement="constructor",s.callSignatureElement="call",s.indexSignatureElement="index",s.constructSignatureElement="construct",s.parameterElement="parameter",s.typeParameterElement="type parameter",s.primitiveType="primitive type",s.label="label",s.alias="alias",s.constElement="const",s.letElement="let",s.directory="directory",s.externalModuleName="external module name",s.jsxAttribute="JSX attribute",s.string="string",s.link="link",s.linkName="link name",s.linkText="link text",s))(M5t||{}),H5t=(s=>(s.none="",s.publicMemberModifier="public",s.privateMemberModifier="private",s.protectedMemberModifier="protected",s.exportedModifier="export",s.ambientModifier="declare",s.staticModifier="static",s.abstractModifier="abstract",s.optionalModifier="optional",s.deprecatedModifier="deprecated",s.dtsModifier=".d.ts",s.tsModifier=".ts",s.tsxModifier=".tsx",s.jsModifier=".js",s.jsxModifier=".jsx",s.jsonModifier=".json",s.dmtsModifier=".d.mts",s.mtsModifier=".mts",s.mjsModifier=".mjs",s.dctsModifier=".d.cts",s.ctsModifier=".cts",s.cjsModifier=".cjs",s))(H5t||{}),Y5t=(s=>(s.comment="comment",s.identifier="identifier",s.keyword="keyword",s.numericLiteral="number",s.bigintLiteral="bigint",s.operator="operator",s.stringLiteral="string",s.whiteSpace="whitespace",s.text="text",s.punctuation="punctuation",s.className="class name",s.enumName="enum name",s.interfaceName="interface name",s.moduleName="module name",s.typeParameterName="type parameter name",s.typeAliasName="type alias name",s.parameterName="parameter name",s.docCommentTagName="doc comment tag name",s.jsxOpenTagName="jsx open tag name",s.jsxCloseTagName="jsx close tag name",s.jsxSelfClosingTagName="jsx self closing tag name",s.jsxAttribute="jsx attribute",s.jsxText="jsx text",s.jsxAttributeStringLiteralValue="jsx attribute string literal value",s))(Y5t||{}),prt=(s=>(s[s.comment=1]="comment",s[s.identifier=2]="identifier",s[s.keyword=3]="keyword",s[s.numericLiteral=4]="numericLiteral",s[s.operator=5]="operator",s[s.stringLiteral=6]="stringLiteral",s[s.regularExpressionLiteral=7]="regularExpressionLiteral",s[s.whiteSpace=8]="whiteSpace",s[s.text=9]="text",s[s.punctuation=10]="punctuation",s[s.className=11]="className",s[s.enumName=12]="enumName",s[s.interfaceName=13]="interfaceName",s[s.moduleName=14]="moduleName",s[s.typeParameterName=15]="typeParameterName",s[s.typeAliasName=16]="typeAliasName",s[s.parameterName=17]="parameterName",s[s.docCommentTagName=18]="docCommentTagName",s[s.jsxOpenTagName=19]="jsxOpenTagName",s[s.jsxCloseTagName=20]="jsxCloseTagName",s[s.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",s[s.jsxAttribute=22]="jsxAttribute",s[s.jsxText=23]="jsxText",s[s.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",s[s.bigintLiteral=25]="bigintLiteral",s))(prt||{}),A_=wb(99,!0),Q5t=(s=>(s[s.None=0]="None",s[s.Value=1]="Value",s[s.Type=2]="Type",s[s.Namespace=4]="Namespace",s[s.All=7]="All",s))(Q5t||{});function xVe(s){switch(s.kind){case 261:return wo(s)&&a1(s)?7:1;case 170:case 209:case 173:case 172:case 304:case 305:case 175:case 174:case 177:case 178:case 179:case 263:case 219:case 220:case 300:case 292:return 1;case 169:case 265:case 266:case 188:return 2;case 347:return s.name===void 0?3:2;case 307:case 264:return 3;case 268:return s_(s)||PF(s)===1?5:4;case 267:case 276:case 277:case 272:case 273:case 278:case 279:return 7;case 308:return 5}return 7}function DU(s){s=wrt(s);let c=s.parent;return s.kind===308?1:Cf(c)||R0(c)||ZF(c)||uy(c)||Vw(c)||km(c)&&s===c.name?7:GVe(s)?_Ts(s):HT(s)?xVe(c):fC(s)&&ji(s,Hp(ude,Tx,O3))?7:STs(s)?2:yTs(s)?4:Ds(c)?(pe.assert(ZB(c.parent)),2):EE(c)?3:1}function _Ts(s){let c=s.kind===167?s:zi(s.parent)&&s.parent.right===s?s.parent:void 0;return c&&c.parent.kind===272?7:4}function GVe(s){if(!s.parent)return!1;for(;s.parent.kind===167;)s=s.parent;return d3(s.parent)&&s.parent.moduleReference===s}function yTs(s){return bTs(s)||ETs(s)}function bTs(s){let c=s,g=!0;if(c.parent.kind===167){for(;c.parent&&c.parent.kind===167;)c=c.parent;g=c.right===s}return c.parent.kind===184&&!g}function ETs(s){let c=s,g=!0;if(c.parent.kind===212){for(;c.parent&&c.parent.kind===212;)c=c.parent;g=c.name===s}if(!g&&c.parent.kind===234&&c.parent.parent.kind===299){let d=c.parent.parent.parent;return d.kind===264&&c.parent.parent.token===119||d.kind===265&&c.parent.parent.token===96}return!1}function STs(s){switch(P7(s)&&(s=s.parent),s.kind){case 110:return!MT(s);case 198:return!0}switch(s.parent.kind){case 184:return!0;case 206:return!s.parent.isTypeOf;case 234:return ww(s.parent)}return!1}function frt(s,c=!1,g=!1){return s1e(s,Zl,hrt,c,g)}function Mde(s,c=!1,g=!1){return s1e(s,f2,hrt,c,g)}function Irt(s,c=!1,g=!1){return s1e(s,av,hrt,c,g)}function X5t(s,c=!1,g=!1){return s1e(s,MI,vTs,c,g)}function J5t(s,c=!1,g=!1){return s1e(s,So,hrt,c,g)}function U5t(s,c=!1,g=!1){return s1e(s,eI,BTs,c,g)}function hrt(s){return s.expression}function vTs(s){return s.tag}function BTs(s){return s.tagName}function s1e(s,c,g,d,h){let _=d?wTs(s):FVe(s);return h&&(_=HI(_)),!!_&&!!_.parent&&c(_.parent)&&g(_.parent)===_}function FVe(s){return Oie(s)?s.parent:s}function wTs(s){return Oie(s)||yrt(s)?s.parent:s}function ZVe(s,c){for(;s;){if(s.kind===257&&s.label.escapedText===c)return s.label;s=s.parent}}function o1e(s,c){return jo(s.expression)?s.expression.name.text===c:!1}function a1e(s){var c;return Ir(s)&&((c=Gs(s.parent,AY))==null?void 0:c.label)===s}function mrt(s){var c;return Ir(s)&&((c=Gs(s.parent,FP))==null?void 0:c.label)===s}function Crt(s){return mrt(s)||a1e(s)}function _rt(s){var c;return((c=Gs(s.parent,u3))==null?void 0:c.tagName)===s}function K5t(s){var c;return((c=Gs(s.parent,zi))==null?void 0:c.right)===s}function Oie(s){var c;return((c=Gs(s.parent,jo))==null?void 0:c.name)===s}function yrt(s){var c;return((c=Gs(s.parent,Yg))==null?void 0:c.argumentExpression)===s}function brt(s){var c;return((c=Gs(s.parent,xh))==null?void 0:c.name)===s}function Ert(s){var c;return Ir(s)&&((c=Gs(s.parent,bu))==null?void 0:c.name)===s}function LVe(s){switch(s.parent.kind){case 173:case 172:case 304:case 307:case 175:case 174:case 178:case 179:case 268:return Il(s.parent)===s;case 213:return s.parent.argumentExpression===s;case 168:return!0;case 202:return s.parent.parent.kind===200;default:return!1}}function j5t(s){return LL(s.parent.parent)&&_7(s.parent.parent)===s}function kU(s){for(iS(s)&&(s=s.parent.parent);;){if(s=s.parent,!s)return;switch(s.kind){case 308:case 175:case 174:case 263:case 219:case 178:case 179:case 264:case 265:case 267:case 268:return s}}}function pQ(s){switch(s.kind){case 308:return xm(s)?"module":"script";case 268:return"module";case 264:case 232:return"class";case 265:return"interface";case 266:case 339:case 347:return"type";case 267:return"enum";case 261:return c(s);case 209:return c(Rw(s));case 220:case 263:case 219:return"function";case 178:return"getter";case 179:return"setter";case 175:case 174:return"method";case 304:let{initializer:g}=s;return bu(g)?"method":"property";case 173:case 172:case 305:case 306:return"property";case 182:return"index";case 181:return"construct";case 180:return"call";case 177:case 176:return"constructor";case 169:return"type parameter";case 307:return"enum member";case 170:return Ga(s,31)?"property":"parameter";case 272:case 277:case 282:case 275:case 281:return"alias";case 227:let d=nI(s),{right:h}=s;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let S=pQ(h);return S===""?"const":S;case 3:return UA(h)?"method":"property";case 4:return"property";case 5:return UA(h)?"method":"property";case 6:return"local class";default:return""}case 80:return Vw(s.parent)?"alias":"";case 278:let _=pQ(s.expression);return _===""?"const":_;default:return""}function c(g){return rI(g)?"const":rS(g)?"let":"var"}}function Mie(s){switch(s.kind){case 110:return!0;case 80:return Jye(s)&&s.parent.kind===170;default:return!1}}var TTs=/^\/\/\/\s*=g}function Hde(s,c,g){return PVe(s.pos,s.end,c,g)}function VVe(s,c,g,d){return PVe(s.getStart(c),s.end,g,d)}function PVe(s,c,g,d){let h=Math.max(s,g),_=Math.min(c,d);return h<_}function Srt(s,c,g){return pe.assert(s.pos<=c),cd.kind===c)}function WVe(s){let c=de(s.parent.getChildren(),g=>_ie(g)&&cy(g,s));return pe.assert(!c||k(c.getChildren(),s)),c}function Jnn(s){return s.kind===90}function RTs(s){return s.kind===86}function NTs(s){return s.kind===100}function DTs(s){if(rh(s))return s.name;if(pm(s)){let c=s.modifiers&&de(s.modifiers,Jnn);if(c)return c}if(vd(s)){let c=de(s.getChildren(),RTs);if(c)return c}}function kTs(s){if(rh(s))return s.name;if(ih(s)){let c=de(s.modifiers,Jnn);if(c)return c}if(UA(s)){let c=de(s.getChildren(),NTs);if(c)return c}}function xTs(s){let c;return ji(s,g=>(uc(g)&&(c=g),!zi(g.parent)&&!uc(g.parent)&&!Bx(g.parent))),c}function OVe(s,c){if(s.flags&16777216)return;let g=nPe(s,c);if(g)return g;let d=xTs(s);return d&&c.getTypeAtLocation(d)}function GTs(s,c){if(!c)switch(s.kind){case 264:case 232:return DTs(s);case 263:case 219:return kTs(s);case 177:return s}if(rh(s))return s.name}function Unn(s,c){if(s.importClause){if(s.importClause.name&&s.importClause.namedBindings)return;if(s.importClause.name)return s.importClause.name;if(s.importClause.namedBindings){if(yN(s.importClause.namedBindings)){let g=Ps(s.importClause.namedBindings.elements);return g?g.name:void 0}else if(Zx(s.importClause.namedBindings))return s.importClause.namedBindings.name}}if(!c)return s.moduleSpecifier}function Knn(s,c){if(s.exportClause){if(mv(s.exportClause))return Ps(s.exportClause.elements)?s.exportClause.elements[0].name:void 0;if(tk(s.exportClause))return s.exportClause.name}if(!c)return s.moduleSpecifier}function FTs(s){if(s.types.length===1)return s.types[0].expression}function jnn(s,c){let{parent:g}=s;if(Ig(s)&&(c||s.kind!==90)?LB(g)&&k(g.modifiers,s):s.kind===86?pm(g)||vd(s):s.kind===100?ih(g)||UA(s):s.kind===120?g_(g):s.kind===94?V3(g):s.kind===156?FB(g):s.kind===145||s.kind===144?xh(g):s.kind===102?km(g):s.kind===139?Bg(g):s.kind===153&&Dg(g)){let d=GTs(g,c);if(d)return d}if((s.kind===115||s.kind===87||s.kind===121)&&u_(g)&&g.declarations.length===1){let d=g.declarations[0];if(Ir(d.name))return d.name}if(s.kind===156){if(Vw(g)&&g.isTypeOnly){let d=Unn(g.parent,c);if(d)return d}if(Gh(g)&&g.isTypeOnly){let d=Knn(g,c);if(d)return d}}if(s.kind===130){if(uy(g)&&g.propertyName||R0(g)&&g.propertyName||Zx(g)||tk(g))return g.name;if(Gh(g)&&g.exportClause&&tk(g.exportClause))return g.exportClause.name}if(s.kind===102&&Mf(g)){let d=Unn(g,c);if(d)return d}if(s.kind===95){if(Gh(g)){let d=Knn(g,c);if(d)return d}if(Cf(g))return HI(g.expression)}if(s.kind===149&&ZF(g))return g.expression;if(s.kind===161&&(Mf(g)||Gh(g))&&g.moduleSpecifier)return g.moduleSpecifier;if((s.kind===96||s.kind===119)&&h1(g)&&g.token===s.kind){let d=FTs(g);if(d)return d}if(s.kind===96){if(Ds(g)&&g.constraint&&nh(g.constraint))return g.constraint.typeName;if(d2(g)&&nh(g.extendsType))return g.extendsType.typeName}if(s.kind===140&&jT(g))return g.typeParameter.name;if(s.kind===103&&Ds(g)&&GB(g.parent))return g.name;if(s.kind===143&&xB(g)&&g.operator===143&&nh(g.type))return g.type.typeName;if(s.kind===148&&xB(g)&&g.operator===148&&kF(g.type)&&nh(g.type.elementType))return g.type.elementType.typeName;if(!c){if((s.kind===105&&f2(g)||s.kind===116&&qT(g)||s.kind===114&&CN(g)||s.kind===135&&I1(g)||s.kind===127&&Hd(g)||s.kind===91&&GF(g))&&g.expression)return HI(g.expression);if((s.kind===103||s.kind===104)&&fo(g)&&g.operatorToken===s)return HI(g.right);if(s.kind===130&&Yd(g)&&nh(g.type))return g.type.typeName;if(s.kind===103&&zLe(g)||s.kind===165&&sEe(g))return HI(g.expression)}return s}function wrt(s){return jnn(s,!1)}function MVe(s){return jnn(s,!0)}function Lb(s,c){return Yie(s,c,g=>Tw(g)||v0(g.kind)||p(g))}function Yie(s,c,g){return znn(s,c,!1,g,!1)}function Jc(s,c){return znn(s,c,!0,void 0,!1)}function znn(s,c,g,d,h){let _=s,S;e:for(;;){let T=_.getChildren(s),W=Sg(T,c,(V,M)=>M,(V,M)=>{let ee=T[V].getEnd();if(eec?1:R(T[V],re,ee)?T[V-1]&&R(T[V-1])?1:0:d&&re===c&&T[V-1]&&T[V-1].getEnd()===c&&R(T[V-1])?1:-1});if(S)return S;if(W>=0&&T[W]){_=T[W];continue e}return _}function R(T,W,V){if(V??(V=T.getEnd()),Vc))return!1;if(cg.getStart(s)&&c(_.pos<=s.pos&&_.end>s.end||_.pos===s.end)&&sMt(_,g)?d(_):void 0)}}function Gm(s,c,g,d){let h=_(g||c);return pe.assert(!(h&&HVe(h))),h;function _(S){if(qnn(S)&&S.kind!==1)return S;let R=S.getChildren(c),T=Sg(R,s,(V,M)=>M,(V,M)=>s=R[V-1].end?0:1:-1);if(T>=0&&R[T]){let V=R[T];if(s=s||!sMt(V,c)||HVe(V)){let re=tMt(R,T,c,S.kind);return re?!d&&i7(re)&&re.getChildren(c).length?_(re):eMt(re,c):void 0}else return _(V)}pe.assert(g!==void 0||S.kind===308||S.kind===1||i7(S));let W=tMt(R,R.length,c,S.kind);return W&&eMt(W,c)}}function qnn(s){return BL(s)&&!HVe(s)}function eMt(s,c){if(qnn(s))return s;let g=s.getChildren(c);if(g.length===0)return s;let d=tMt(g,g.length,c,s.kind);return d&&eMt(d,c)}function tMt(s,c,g,d){for(let h=c-1;h>=0;h--){let _=s[h];if(HVe(_))h===0&&(d===12||d===286)&&pe.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(sMt(s[h],g))return s[h]}}function Zz(s,c,g=Gm(c,s)){if(g&&Sre(g)){let d=g.getStart(s),h=g.getEnd();if(dg.getStart(s)}function nMt(s,c){let g=Jc(s,c);return!!(KL(g)||g.kind===19&&fie(g.parent)&&bN(g.parent.parent)||g.kind===30&&eI(g.parent)&&bN(g.parent.parent))}function YVe(s,c){function g(d){for(;d;)if(d.kind>=286&&d.kind<=295||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===285){if(c>d.getStart(s))return!0;d=d.parent}else return!1;return!1}return g(Jc(s,c))}function QVe(s,c,g){let d=Vi(s.kind),h=Vi(c),_=s.getFullStart(),S=g.text.lastIndexOf(h,_);if(S===-1)return;if(g.text.lastIndexOf(d,_-1)!!_.typeParameters&&_.typeParameters.length>=c)}function Nrt(s,c){if(c.text.lastIndexOf("<",s?s.pos:c.text.length)===-1)return;let g=s,d=0,h=0;for(;g;){switch(g.kind){case 30:if(g=Gm(g.getFullStart(),c),g&&g.kind===29&&(g=Gm(g.getFullStart(),c)),!g||!Ir(g))return;if(!d)return HT(g)?void 0:{called:g,nTypeArguments:h};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(g=QVe(g,19,c),!g)return;break;case 22:if(g=QVe(g,21,c),!g)return;break;case 24:if(g=QVe(g,23,c),!g)return;break;case 28:h++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(uc(g))break;return}g=Gm(g.getFullStart(),c)}}function $L(s,c,g){return Im.getRangeOfEnclosingComment(s,c,void 0,g)}function iMt(s,c){let g=Jc(s,c);return!!ji(g,tR)}function sMt(s,c){return s.kind===1?!!s.jsDoc:s.getWidth(c)!==0}function Qde(s,c=0){let g=[],d=jh(s)?ad(s)&~c:0;return d&2&&g.push("private"),d&4&&g.push("protected"),d&1&&g.push("public"),(d&256||fl(s))&&g.push("static"),d&64&&g.push("abstract"),d&32&&g.push("export"),d&65536&&g.push("deprecated"),s.flags&33554432&&g.push("declare"),s.kind===278&&g.push("export"),g.length>0?g.join(","):""}function oMt(s){if(s.kind===184||s.kind===214)return s.typeArguments;if(bu(s)||s.kind===264||s.kind===265)return s.typeParameters}function XVe(s){return s===2||s===3}function Drt(s){return!!(s===11||s===14||LD(s))}function $nn(s,c,g){return!!(c.flags&4)&&s.isEmptyAnonymousObjectType(g)}function aMt(s){if(!s.isIntersection())return!1;let{types:c,checker:g}=s;return c.length===2&&($nn(g,c[0],c[1])||$nn(g,c[1],c[0]))}function g1e(s,c,g){return LD(s.kind)&&s.getStart(g){let g=rd(c);return!s[g]&&(s[g]=!0)}}function Lz(s){return s.getText(0,s.getLength())}function d1e(s,c){let g="";for(let d=0;d!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function gMt(s){return s.getSourceFiles().some(c=>!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function Prt(s){return!!s.module||Mg(s)>=2||!!s.noEmit}function z3(s,c){return{fileExists:g=>s.fileExists(g),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:$i(c,c.readFile),useCaseSensitiveFileNames:$i(c,c.useCaseSensitiveFileNames)||s.useCaseSensitiveFileNames,getSymlinkCache:$i(c,c.getSymlinkCache)||s.getSymlinkCache,getModuleSpecifierCache:$i(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var g;return(g=s.getModuleResolutionCache())==null?void 0:g.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:$i(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:g=>s.getRedirectFromSourceFile(g),isSourceOfProjectReferenceRedirect:g=>s.isSourceOfProjectReferenceRedirect(g),getNearestAncestorDirectoryWithPackageJson:$i(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>s.getFileIncludeReasons(),getCommonSourceDirectory:()=>s.getCommonSourceDirectory(),getDefaultResolutionModeForFile:g=>s.getDefaultResolutionModeForFile(g),getModeForResolutionAtIndex:(g,d)=>s.getModeForResolutionAtIndex(g,d)}}function Wrt(s,c){return{...z3(s,c),getCommonSourceDirectory:()=>s.getCommonSourceDirectory()}}function jVe(s){return s===2||s>=3&&s<=99||s===100}function QP(s,c,g,d,h){return me.createImportDeclaration(void 0,s||c?me.createImportClause(h?156:void 0,s,c&&c.length?me.createNamedImports(c):void 0):void 0,typeof g=="string"?Jde(g,d):g,void 0)}function Jde(s,c){return me.createStringLiteral(s,c===0)}var AMt=(s=>(s[s.Single=0]="Single",s[s.Double=1]="Double",s))(AMt||{});function Ort(s,c){return one(s,c)?1:0}function _1(s,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let g=aN(s)&&s.imports&&de(s.imports,d=>Zg(d)&&!sp(d.parent));return g?Ort(g,s):1}}function Mrt(s){switch(s){case 0:return"'";case 1:return'"';default:return pe.assertNever(s)}}function Hrt(s){let c=zVe(s);return c===void 0?void 0:Bc(c)}function zVe(s){return s.escapedName!=="default"?s.escapedName:X(s.declarations,c=>{let g=Il(c);return g&&g.kind===80?g.escapedText:void 0})}function qVe(s){return mA(s)&&(ZF(s.parent)||Mf(s.parent)||SN(s.parent)||ay(s.parent,!1)&&s.parent.arguments[0]===s||Up(s.parent)&&s.parent.arguments[0]===s)}function f1e(s){return hg(s)&&Km(s.parent)&&Ir(s.name)&&!s.propertyName}function $Ve(s,c){let g=s.getTypeAtLocation(c.parent);return g&&s.getPropertyOfType(g,c.name.text)}function I1e(s,c,g){if(s)for(;s.parent;){if(ll(s.parent)||!LTs(g,s.parent,c))return s;s=s.parent}}function LTs(s,c,g){return ho(s,c.getStart(g))&&c.getEnd()<=Rs(s)}function Xie(s,c){return LB(s)?de(s.modifiers,g=>g.kind===c):void 0}function Yrt(s,c,g,d,h){var _;let R=(Ki(g)?g[0]:g).kind===244?ine:IP,T=Me(c.statements,R),{comparer:W,isSorted:V}=i5.getOrganizeImportsStringComparerWithDetection(T,h),M=Ki(g)?bo(g,(ee,re)=>i5.compareImportsOrRequireStatements(ee,re,W)):[g];if(!T?.length){if(aN(c))s.insertNodesAtTopOfFile(c,M,d);else for(let ee of M)s.insertStatementsInNewFile(c.fileName,[ee],(_=Dd(ee))==null?void 0:_.getSourceFile());return}if(pe.assert(aN(c)),T&&V)for(let ee of M){let re=i5.getImportDeclarationInsertionIndex(T,ee,W);if(re===0){let ge=T[0]===c.statements[0]?{leadingTriviaOption:xo.LeadingTriviaOption.Exclude}:{};s.insertNodeBefore(c,T[0],ee,!1,ge)}else{let ge=T[re-1];s.insertNodeAfter(c,ge,ee)}}else{let ee=li(T);ee?s.insertNodesAfter(c,ee,M):s.insertNodesAtTopOfFile(c,M,d)}}function Qrt(s,c){return pe.assert(s.isTypeOnly),Ma(s.getChildAt(0,c),tin)}function Jie(s,c){return!!s&&!!c&&s.start===c.start&&s.length===c.length}function Xrt(s,c,g){return(g?MA:Mp)(s.fileName,c.fileName)&&Jie(s.textSpan,c.textSpan)}function Jrt(s){return(c,g)=>Xrt(c,g,s)}function Urt(s,c){if(s){for(let g=0;gSi(g)?!0:hg(g)||Km(g)||p2(g)?!1:"quit")}var pMt=new Map;function VTs(s){return s=s||EY,pMt.has(s)||pMt.set(s,PTs(s)),pMt.get(s)}function PTs(s){let c=s*10,g,d,h,_;M();let S=ee=>T(ee,17);return{displayParts:()=>{let ee=g.length&&g[g.length-1].text;return _>c&&ee&&ee!=="..."&&(dc(ee.charCodeAt(ee.length-1))||g.push(SE(" ",16)),g.push(SE("...",15))),g},writeKeyword:ee=>T(ee,5),writeOperator:ee=>T(ee,12),writePunctuation:ee=>T(ee,15),writeTrailingSemicolon:ee=>T(ee,15),writeSpace:ee=>T(ee,16),writeStringLiteral:ee=>T(ee,8),writeParameter:ee=>T(ee,13),writeProperty:ee=>T(ee,14),writeLiteral:ee=>T(ee,8),writeSymbol:W,writeLine:V,write:S,writeComment:S,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:il,getIndent:()=>h,increaseIndent:()=>{h++},decreaseIndent:()=>{h--},clear:M};function R(){if(!(_>c)&&d){let ee=sAe(h);ee&&(_+=ee.length,g.push(SE(ee,16))),d=!1}}function T(ee,re){_>c||(R(),_+=ee.length,g.push(SE(ee,re)))}function W(ee,re){_>c||(R(),_+=ee.length,g.push(WTs(ee,re)))}function V(){_>c||(_+=1,g.push(Uie()),d=!0)}function M(){g=[],d=!0,h=0,_=0}}function WTs(s,c){return SE(s,g(c));function g(d){let h=d.flags;return h&3?jrt(d)?13:9:h&4||h&32768||h&65536?14:h&8?19:h&16?20:h&32?1:h&64?4:h&384?2:h&1536?11:h&8192?10:h&262144?18:h&524288||h&2097152?0:17}}function SE(s,c){return{text:s,kind:kVe[c]}}function BI(){return SE(" ",16)}function y1(s){return SE(Vi(s),5)}function k0(s){return SE(Vi(s),15)}function Kde(s){return SE(Vi(s),12)}function fMt(s){return SE(s,13)}function IMt(s){return SE(s,14)}function zrt(s){let c=Ta(s);return c===void 0?gS(s):y1(c)}function gS(s){return SE(s,17)}function hMt(s){return SE(s,0)}function mMt(s){return SE(s,18)}function CMt(s){return SE(s,24)}function OTs(s,c){return{text:s,kind:kVe[23],target:{fileName:ms(c).fileName,textSpan:Oy(c)}}}function rin(s){return SE(s,22)}function _Mt(s,c){var g;let d=MPt(s)?"link":HPt(s)?"linkcode":"linkplain",h=[rin(`{@${d} `)];if(!s.name)s.text&&h.push(CMt(s.text));else{let _=c?.getSymbolAtLocation(s.name),S=_&&c?ent(_,c):void 0,R=HTs(s.text),T=xp(s.name)+s.text.slice(0,R),W=MTs(s.text.slice(R)),V=S?.valueDeclaration||((g=S?.declarations)==null?void 0:g[0]);if(V)h.push(OTs(T,V)),W&&h.push(CMt(W));else{let M=R===0||s.text.charCodeAt(R)===124&&T.charCodeAt(T.length-1)!==32?" ":"";h.push(CMt(T+M+W))}}return h.push(rin("}")),h}function MTs(s){let c=0;if(s.charCodeAt(c++)===124){for(;c"&&g--,d++,!g)return d}return 0}var YTs=` +`;function OF(s,c){var g;return c?.newLineCharacter||((g=s.getNewLine)==null?void 0:g.call(s))||YTs}function Uie(){return SE(` +`,6)}function XP(s,c){let g=VTs(c);try{return s(g),g.displayParts()}finally{g.clear()}}function h1e(s,c,g,d=0,h,_,S){return XP(R=>{s.writeType(c,g,d|1024|16384,R,h,_,S)},h)}function jde(s,c,g,d,h=0){return XP(_=>{s.writeSymbol(c,g,d,h|8,_)})}function qrt(s,c,g,d=0,h,_,S){return d|=25632,XP(R=>{s.writeSignature(c,g,d,void 0,R,h,_,S)},h)}function yMt(s){return!!s.parent&&eS(s.parent)&&s.parent.propertyName===s}function $rt(s,c){return GAe(s,c.getScriptKind&&c.getScriptKind(s))}function ent(s,c){let g=s;for(;QTs(g)||bw(g)&&g.links.target;)bw(g)&&g.links.target?g=g.links.target:g=FC(g,c);return g}function QTs(s){return(s.flags&2097152)!==0}function bMt(s,c){return kg(FC(s,c))}function EMt(s,c){for(;dc(s.charCodeAt(c));)c+=1;return c}function tPe(s,c){for(;c>-1&&Iu(s.charCodeAt(c));)c-=1;return c+1}function xU(s,c){let g=s.getSourceFile(),d=g.text;XTs(s,d)?Kie(s,c,g):C1e(s,c,g),zde(s,c,g)}function XTs(s,c){let g=s.getFullStart(),d=s.getStart();for(let h=g;h=0),_}function Kie(s,c,g,d,h){GD(g.text,s.pos,SMt(c,g,d,h,JT))}function zde(s,c,g,d,h){dF(g.text,s.end,SMt(c,g,d,h,Iz))}function C1e(s,c,g,d,h){dF(g.text,s.pos,SMt(c,g,d,h,JT))}function SMt(s,c,g,d,h){return(_,S,R,T)=>{R===3?(_+=2,S-=2):_+=2,h(s,g||R,c.text.slice(_,S),d!==void 0?d:T)}}function JTs(s,c){if(Ac(s,c))return 0;let g=s.indexOf(" "+c);return g===-1&&(g=s.indexOf("."+c)),g===-1&&(g=s.indexOf('"'+c)),g===-1?-1:g+1}function rPe(s){return fo(s)&&s.operatorToken.kind===28||og(s)||(Yd(s)||Qg(s))&&og(s.expression)}function nPe(s,c,g){let d=gv(s.parent);switch(d.kind){case 215:return c.getContextualType(d,g);case 227:{let{left:h,operatorToken:_,right:S}=d;return iPe(_.kind)?c.getTypeAtLocation(s===S?h:S):c.getContextualType(s,g)}case 297:return rnt(d,c);default:return c.getContextualType(s,g)}}function qde(s,c,g){let d=_1(s,c),h=JSON.stringify(g);return d===0?`'${l2(h).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:h}function iPe(s){switch(s){case 37:case 35:case 38:case 36:return!0;default:return!1}}function vMt(s){switch(s.kind){case 11:case 15:case 229:case 216:return!0;default:return!1}}function tnt(s){return!!s.getStringIndexType()||!!s.getNumberIndexType()}function rnt(s,c){return c.getTypeAtLocation(s.parent.parent.expression)}var nnt="anonymous function";function $de(s,c,g,d){let h=g.getTypeChecker(),_=!0,S=()=>_=!1,R=h.typeToTypeNode(s,c,1,8,{trackSymbol:(T,W,V)=>(_=_&&h.isSymbolAccessible(T,W,V,!1).accessibility===0,!_),reportInaccessibleThisError:S,reportPrivateInBaseOfClassExpression:S,reportInaccessibleUniqueSymbolError:S,moduleResolverHost:Wrt(g,d)});return _?R:void 0}function BMt(s){return s===180||s===181||s===182||s===172||s===174}function nin(s){return s===263||s===177||s===175||s===178||s===179}function iin(s){return s===268}function wMt(s){return s===244||s===245||s===247||s===252||s===253||s===254||s===258||s===260||s===173||s===266||s===273||s===272||s===279||s===271||s===278}var UTs=Hp(BMt,nin,iin,wMt);function KTs(s,c){let g=s.getLastToken(c);if(g&&g.kind===27)return!1;if(BMt(s.kind)){if(g&&g.kind===28)return!1}else if(iin(s.kind)){let R=Ei(s.getChildren(c));if(R&&_N(R))return!1}else if(nin(s.kind)){let R=Ei(s.getChildren(c));if(R&&mP(R))return!1}else if(!wMt(s.kind))return!1;if(s.kind===247)return!0;let d=ji(s,R=>!R.parent),h=fQ(s,d,c);if(!h||h.kind===20)return!0;let _=c.getLineAndCharacterOfPosition(s.getEnd()).line,S=c.getLineAndCharacterOfPosition(h.getStart(c)).line;return _!==S}function sPe(s,c,g){let d=ji(c,h=>h.end!==s?"quit":UTs(h.kind));return!!d&&KTs(d,g)}function _1e(s){let c=0,g=0,d=5;return Lu(s,function h(_){if(wMt(_.kind)){let S=_.getLastToken(s);S?.kind===27?c++:g++}else if(BMt(_.kind)){let S=_.getLastToken(s);if(S?.kind===27)c++;else if(S&&S.kind!==28){let R=Ra(s,S.getStart(s)).line,T=Ra(s,rs(s,S.end).start).line;R!==T&&g++}}return c+g>=d?!0:Lu(_,h)}),c===0&&g<=1?!0:c/g>1/d}function oPe(s,c){return TMt(s,s.getDirectories,c)||[]}function int(s,c,g,d,h){return TMt(s,s.readDirectory,c,g,d,h)||E}function jie(s,c){return TMt(s,s.fileExists,c)}function aPe(s,c){return cPe(()=>f1(c,s))||!1}function cPe(s){try{return s()}catch{return}}function TMt(s,c,...g){return cPe(()=>c&&c.apply(s,g))}function snt(s,c){let g=[];return vN(c,s,d=>{let h=Ro(d,"package.json");jie(c,h)&&g.push(h)}),g}function RMt(s,c){let g;return vN(c,s,d=>{if(d==="node_modules"||(g=ott(d,h=>jie(c,h),"package.json"),g))return!0}),g}function jTs(s,c){if(!c.fileExists)return[];let g=[];return vN(c,Mo(s),d=>{let h=Ro(d,"package.json");if(c.fileExists(h)){let _=ont(h,c);_&&g.push(_)}}),g}function ont(s,c){if(!c.readFile)return;let g=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(s)||"",h=nU(d),_={};if(h)for(let T of g){let W=h[T];if(!W)continue;let V=new Map;for(let M in W)V.set(M,W[M]);_[T]=V}let S=[[1,_.dependencies],[2,_.devDependencies],[8,_.optionalDependencies],[4,_.peerDependencies]];return{..._,parseable:!!h,fileName:s,get:R,has(T,W){return!!R(T,W)}};function R(T,W=15){for(let[V,M]of S)if(M&&W&V){let ee=M.get(T);if(ee!==void 0)return ee}}}function zie(s,c,g){let d=(g.getPackageJsonsVisibleToFile&&g.getPackageJsonsVisibleToFile(s.fileName)||jTs(s.fileName,g)).filter(ge=>ge.parseable),h,_,S;return{allowsImportingAmbientModule:T,getSourceFileInfo:W,allowsImportingSpecifier:V};function R(ge){let Ie=re(ge);for(let _e of d)if(_e.has(Ie)||_e.has(Z9e(Ie)))return!0;return!1}function T(ge,Ie){if(!d.length||!ge.valueDeclaration)return!0;if(!_)_=new Map;else{let Ze=_.get(ge);if(Ze!==void 0)return Ze}let _e=l2(ge.getName());if(M(_e))return _.set(ge,!0),!0;let Ee=ge.valueDeclaration.getSourceFile(),Ne=ee(Ee.fileName,Ie);if(typeof Ne>"u")return _.set(ge,!0),!0;let Te=R(Ne)||R(_e);return _.set(ge,Te),Te}function W(ge,Ie){if(!d.length)return{importable:!0,packageName:void 0};if(!S)S=new Map;else{let Te=S.get(ge);if(Te!==void 0)return Te}let _e=ee(ge.fileName,Ie);if(!_e){let Te={importable:!0,packageName:_e};return S.set(ge,Te),Te}let Ne={importable:R(_e),packageName:_e};return S.set(ge,Ne),Ne}function V(ge){return!d.length||M(ge)||Ip(ge)||Xp(ge)?!0:R(ge)}function M(ge){return!!(aN(s)&&n0(s)&&dU.has(ge)&&(h===void 0&&(h=lPe(s)),h))}function ee(ge,Ie){let _e=LP(ge);if(_e){let Ne=_e.findPackageLocator(s.fileName),Te=_e.findPackageLocator(ge);if(!(Ne&&Te))return}else if(!ge.includes("node_modules"))return;let Ee=WF.getNodeModulesPackageName(g.getCompilationSettings(),s,ge,Ie,c);if(Ee&&!Ip(Ee)&&!Xp(Ee))return re(Ee)}function re(ge){let Ie=Np(Ede(ge)).slice(1);return Ac(Ie[0],"@")?`${Ie[0]}/${Ie[1]}`:Ie[0]}}function lPe(s){return jt(s.imports,({text:c})=>dU.has(c))}function y1e(s){return k(Np(s),"node_modules")}function sin(s){return s.file!==void 0&&s.start!==void 0&&s.length!==void 0}function NMt(s,c){let g=Oy(s),d=Sg(c,g,Fl,bn);if(d>=0){let h=c[d];return pe.assertEqual(h.file,s.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),Ma(h,sin)}}function DMt(s,c){var g;let d=Sg(c,s.start,S=>S.start,Zt);for(d<0&&(d=~d);((g=c[d-1])==null?void 0:g.start)===s.start;)d--;let h=[],_=Rs(s);for(;;){let S=Gs(c[d],sin);if(!S||S.start>_)break;Nd(s,S)&&h.push(S),d++}return h}function Vz({startPosition:s,endPosition:c}){return wA(s,c===void 0?s:c)}function ant(s,c){let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":un(h)&&Jie(c,Oy(h,s)))}function cnt(s,c,g=Fl){return s?Ki(s)?g(At(s,c)):c(s,0):void 0}function lnt(s){return Ki(s)?ma(s):s}function uPe(s,c,g){return s.escapedName==="export="||s.escapedName==="default"?unt(s)||b1e(zTs(s),c,!!g):s.name}function unt(s){return X(s.declarations,c=>{var g,d,h;if(Cf(c))return(g=Gs(HI(c.expression),Ir))==null?void 0:g.text;if(R0(c)&&c.symbol.flags===2097152)return(d=Gs(c.propertyName,Ir))==null?void 0:d.text;let _=(h=Gs(Il(c),Ir))==null?void 0:h.text;if(_)return _;if(s.parent&&!WD(s.parent))return s.parent.getName()})}function zTs(s){var c;return pe.checkDefined(s.parent,`Symbol parent was undefined. Flags: ${pe.formatSymbolFlags(s.flags)}. Declarations: ${(c=s.declarations)==null?void 0:c.map(g=>{let d=pe.formatSyntaxKind(g.kind),h=wo(g),{expression:_}=g;return(h?"[JS]":"")+d+(_?` (expression: ${pe.formatSyntaxKind(_.kind)})`:"")}).join(", ")}.`)}function b1e(s,c,g){return E1e(s0(l2(s.name)),c,g)}function E1e(s,c,g){let d=gp(aa(s0(s),"/index")),h="",_=!0,S=d.charCodeAt(0);bd(S,c)?(h+=String.fromCharCode(S),g&&(h=h.toUpperCase())):_=!1;for(let R=1;Rs.length)return!1;for(let h=0;h(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.Namespace=2]="Namespace",s[s.CommonJS=3]="CommonJS",s))(xMt||{}),GMt=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s[s.UMD=3]="UMD",s[s.Module=4]="Module",s))(GMt||{});function pnt(s){let c=1,g=dl(),d=new Map,h=new Map,_,S={isUsableByFile:re=>re===_,isEmpty:()=>!g.size,clear:()=>{g.clear(),d.clear(),_=void 0},add:(re,ge,Ie,_e,Ee,Ne,Te,Ze)=>{re!==_&&(S.clear(),_=re);let We;if(Ee){let Lt=HAe(Ee.fileName);if(Lt){let{topLevelNodeModulesIndex:Ke,topLevelPackageNameIndex:Pt,packageRootIndex:_r}=Lt;if(We=DEe(Ede(Ee.fileName.substring(Pt+1,_r))),Ac(re,Ee.path.substring(0,Ke))){let Gt=h.get(We),nt=Ee.fileName.substring(0,Pt+1);if(Gt){let Dt=Gt.indexOf(Vx);Ke>Dt&&h.set(We,nt)}else h.set(We,nt)}}}let $e=Ne===1&&W7(ge)||ge,Ye=Ne===0||WD($e)?Bc(Ie):$Ts($e,Ze,void 0),Tt=typeof Ye=="string"?Ye:Ye[0],ot=typeof Ye=="string"?void 0:Ye[1],Qe=l2(_e.name),mt=c++,ht=FC(ge,Ze),_t=ge.flags&33554432?void 0:ge,Rt=_e.flags&33554432?void 0:_e;(!_t||!Rt)&&d.set(mt,[ge,_e]),g.add(T(Tt,ge,Xr(Qe)?void 0:Qe,Ze),{id:mt,symbolTableKey:Ie,symbolName:Tt,capitalizedSymbolName:ot,moduleName:Qe,moduleFile:Ee,moduleFileName:Ee?.fileName,packageName:We,exportKind:Ne,targetFlags:ht.flags,isFromPackageJson:Te,symbol:_t,moduleSymbol:Rt})},get:(re,ge)=>{if(re!==_)return;let Ie=g.get(ge);return Ie?.map(R)},search:(re,ge,Ie,_e)=>{if(re===_)return Dh(g,(Ee,Ne)=>{let{symbolName:Te,ambientModuleName:Ze}=W(Ne),We=ge&&Ee[0].capitalizedSymbolName||Te;if(Ie(We,Ee[0].targetFlags)){let $e=Ee.map(R).filter((Ye,Tt)=>ee(Ye,Ee[Tt].packageName));if($e.length){let Ye=_e($e,We,!!Ze,Ne);if(Ye!==void 0)return Ye}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ge,Ie)=>V(re)&&V(ge)?!1:_&&_!==ge.path||Ie&&lPe(re)!==lPe(ge)||!Sc(re.moduleAugmentations,ge.moduleAugmentations)||!M(re,ge)?(S.clear(),!0):(_=ge.path,!1)};return pe.isDebugging&&Object.defineProperty(S,"__cache",{value:g}),S;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ge,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee,moduleFileName:Ne}=re,[Te,Ze]=d.get(ge)||E;if(Te&&Ze)return{symbol:Te,moduleSymbol:Ze,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee};let We=(Ee?s.getPackageJsonAutoImportProvider():s.getCurrentProgram()).getTypeChecker(),Ue=re.moduleSymbol||Ze||pe.checkDefined(re.moduleFile?We.getMergedSymbol(re.moduleFile.symbol):We.tryFindAmbientModule(re.moduleName)),$e=re.symbol||Te||pe.checkDefined(Ie===2?We.resolveExternalModuleSymbol(Ue):We.tryGetMemberInModuleExportsAndProperties(Bc(re.symbolTableKey),Ue),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${Ue.name}`);return d.set(ge,[$e,Ue]),{symbol:$e,moduleSymbol:Ue,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee}}function T(re,ge,Ie,_e){let Ee=Ie||"";return`${re.length} ${kg(FC(ge,_e))} ${re} ${Ee}`}function W(re){let ge=re.indexOf(" "),Ie=re.indexOf(" ",ge+1),_e=parseInt(re.substring(0,ge),10),Ee=re.substring(Ie+1),Ne=Ee.substring(0,_e),Te=Ee.substring(_e+1);return{symbolName:Ne,ambientModuleName:Te===""?void 0:Te}}function V(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function M(re,ge){if(!Sc(re.ambientModuleNames,ge.ambientModuleNames))return!1;let Ie=-1,_e=-1;for(let Ee of ge.ambientModuleNames){let Ne=Te=>Xre(Te)&&Te.name.text===Ee;if(Ie=Se(re.statements,Ne,Ie+1),_e=Se(ge.statements,Ne,_e+1),re.statements[Ie]!==ge.statements[_e])return!1}return!0}function ee(re,ge){if(!ge||!re.moduleFileName)return!0;let Ie=s.getGlobalTypingsCacheLocation();if(Ie&&Ac(re.moduleFileName,Ie))return!0;let _e=h.get(ge);return!_e||Ac(re.moduleFileName,_e)}}function fnt(s,c,g,d,h,_,S,R){var T;if(!g){let re,ge=l2(d.name);return dU.has(ge)&&(re=APe(c,s))!==void 0?re===Ac(ge,"node:"):!_||_.allowsImportingAmbientModule(d,S)||FMt(c,ge)}if(pe.assertIsDefined(g),c===g)return!1;let W=R?.get(c.path,g.path,h,{});if(W?.isBlockedByPackageJsonDependencies!==void 0)return!W.isBlockedByPackageJsonDependencies||!!W.packageName&&FMt(c,W.packageName);let V=JD(S),M=(T=S.getGlobalTypingsCacheLocation)==null?void 0:T.call(S),ee=!!WF.forEachFileNameOfModule(c.fileName,g.fileName,S,!1,re=>{let ge=s.getSourceFile(re);return(ge===g||!ge)&&qTs(c.fileName,re,V,M,S)});if(_){let re=ee?_.getSourceFileInfo(g,S):void 0;return R?.setBlockedByPackageJsonDependencies(c.path,g.path,h,{},re?.packageName,!re?.importable),!!re?.importable||ee&&!!re?.packageName&&FMt(c,re.packageName)}return ee}function FMt(s,c){return s.imports&&s.imports.some(g=>g.text===c||g.text.startsWith(c+"/"))}function qTs(s,c,g,d,h){if(LP(s))return KSs(s,c);let _=vN(h,c,R=>gp(R)==="node_modules"?R:void 0),S=_&&Mo(g(_));return S===void 0||Ac(g(s),S)||!!d&&Ac(g(d),S)}function Int(s,c,g,d,h){var _,S;let R=y3(c),T=g.autoImportFileExcludePatterns&&oin(g,R);ain(s.getTypeChecker(),s.getSourceFiles(),T,c,(V,M)=>h(V,M,s,!1));let W=d&&((_=c.getPackageJsonAutoImportProvider)==null?void 0:_.call(c));if(W){let V=Fg(),M=s.getTypeChecker();ain(W.getTypeChecker(),W.getSourceFiles(),T,c,(ee,re)=>{(re&&!s.getSourceFile(re.fileName)||!re&&!M.resolveName(ee.name,void 0,1536,!1))&&h(ee,re,W,!0)}),(S=c.log)==null||S.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${Fg()-V}`)}}function oin(s,c){return Xt(s.autoImportFileExcludePatterns,g=>{let d=kAe(g,"","exclude");return d?zD(d,c):void 0})}function ain(s,c,g,d,h){var _;let S=g&&cin(g,d);for(let R of s.getAmbientModules())!R.name.includes("*")&&!(g&&((_=R.declarations)!=null&&_.every(T=>S(T.getSourceFile()))))&&h(R,void 0);for(let R of c)vl(R)&&!S?.(R)&&h(s.getMergedSymbol(R.symbol),R)}function cin(s,c){var g;let d=(g=c.getSymlinkCache)==null?void 0:g.call(c).getSymlinkedDirectoriesByRealpath();return({fileName:h,path:_})=>{if(s.some(S=>S.test(h)))return!0;if(d?.size&&WP(h)){let S=Mo(h);return vN(c,Mo(_),R=>{let T=d.get(hp(R));if(T)return T.some(W=>s.some(V=>V.test(h.replace(S,W))));S=Mo(S)})??!1}return!1}}function ZMt(s,c){return c.autoImportFileExcludePatterns?cin(oin(c,y3(s)),s):()=>!1}function v1e(s,c,g,d,h){var _,S,R,T,W;let V=Fg();(_=c.getPackageJsonAutoImportProvider)==null||_.call(c);let M=((S=c.getCachedExportInfoMap)==null?void 0:S.call(c))||pnt({getCurrentProgram:()=>g,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(M.isUsableByFile(s.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),M;(T=c.log)==null||T.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let ee=0;try{Int(g,c,d,!0,(re,ge,Ie,_e)=>{++ee%100===0&&h?.throwIfCancellationRequested();let Ee=new Set,Ne=Ie.getTypeChecker(),Te=IPe(re,Ne);Te&&lin(Te.symbol,Ne)&&M.add(s.path,Te.symbol,Te.exportKind===1?"default":"export=",re,ge,Te.exportKind,_e,Ne),Ne.forEachExportAndPropertyOfModule(re,(Ze,We)=>{Ze!==Te?.symbol&&lin(Ze,Ne)&&Zy(Ee,We)&&M.add(s.path,Ze,We,re,ge,0,_e,Ne)})})}catch(re){throw M.clear(),re}return(W=c.log)==null||W.call(c,`getExportInfoMap: done in ${Fg()-V} ms`),M}function IPe(s,c){let g=c.resolveExternalModuleSymbol(s);if(g!==s){let h=c.tryGetMemberInModuleExports("default",g);return h?{symbol:h,exportKind:1}:{symbol:g,exportKind:2}}let d=c.tryGetMemberInModuleExports("default",s);if(d)return{symbol:d,exportKind:1}}function lin(s,c){return!c.isUndefinedSymbol(s)&&!c.isUnknownSymbol(s)&&!k7(s)&&!vZe(s)}function $Ts(s,c,g){let d;return hPe(s,c,g,(h,_)=>(d=_?[h,_]:h,!0)),pe.checkDefined(d)}function hPe(s,c,g,d){let h,_=s,S=new Set;for(;_;){let R=unt(_);if(R){let T=d(R);if(T)return T}if(_.escapedName!=="default"&&_.escapedName!=="export="){let T=d(_.name);if(T)return T}if(h=Ft(h,_),!Zy(S,_))break;_=_.flags&2097152?c.getImmediateAliasedSymbol(_):void 0}for(let R of h??E)if(R.parent&&WD(R.parent)){let T=d(b1e(R.parent,g,!1),b1e(R.parent,g,!0));if(T)return T}}function uin(){let s=wb(99,!1);function c(d,h,_){return nRs(g(d,h,_),d)}function g(d,h,_){let S=0,R=0,T=[],{prefix:W,pushTemplate:V}=oRs(h);d=W+d;let M=W.length;V&&T.push(16),s.setText(d);let ee=0,re=[],ge=0;do{S=s.scan(),zJ(S)||(Ie(),R=S);let _e=s.getTokenEnd();if(rRs(s.getTokenStart(),_e,M,lRs(S),re),_e>=d.length){let Ee=tRs(s,S,li(T));Ee!==void 0&&(ee=Ee)}}while(S!==1);function Ie(){switch(S){case 44:case 69:!eRs[R]&&s.reScanSlashToken()===14&&(S=14);break;case 30:R===80&&ge++;break;case 32:ge>0&&ge--;break;case 133:case 154:case 150:case 136:case 155:ge>0&&!_&&(S=80);break;case 16:T.push(S);break;case 19:T.length>0&&T.push(S);break;case 20:if(T.length>0){let _e=li(T);_e===16?(S=s.reScanTemplateToken(!1),S===18?T.pop():pe.assertEqual(S,17,"Should have been a template middle.")):(pe.assertEqual(_e,19,"Should have been an open brace"),T.pop())}break;default:if(!v0(S))break;(R===25||v0(R)&&v0(S)&&!sRs(R,S))&&(S=80)}}return{endOfLineState:ee,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:g}}var eRs=Vs([80,11,9,10,14,110,46,47,22,24,20,112,97],s=>s,()=>!0);function tRs(s,c,g){switch(c){case 11:{if(!s.isUnterminated())return;let d=s.getTokenText(),h=d.length-1,_=0;for(;d.charCodeAt(h-_)===92;)_++;return _&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return s.isUnterminated()?1:void 0;default:if(LD(c)){if(!s.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return pe.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return g===16?6:void 0}}function rRs(s,c,g,d,h){if(d===8)return;s===0&&g>0&&(s+=g);let _=c-s;_>0&&h.push(s-g,_,d)}function nRs(s,c){let g=[],d=s.spans,h=0;for(let S=0;S=0){let V=R-h;V>0&&g.push({length:V,classification:4})}g.push({length:T,classification:iRs(W)}),h=R+T}let _=c.length-h;return _>0&&g.push({length:_,classification:4}),{entries:g,finalLexState:s.endOfLineState}}function iRs(s){switch(s){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function sRs(s,c){if(!krt(s))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function oRs(s){switch(s){case 3:return{prefix:`"\\ `};case 2:return{prefix:`'\\ `};case 1:return{prefix:`/* `};case 4:return{prefix:"`\n"};case 5:return{prefix:`} -`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return pe.assertNever(s)}}function QTs(s){switch(s){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}function XTs(s){switch(s){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function JTs(s){if(v0(s))return 3;if(QTs(s)||XTs(s))return 5;if(s>=19&&s<=79)return 10;switch(s){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 80:default:return LD(s)?6:2}}function xMt(s,c,g,d,h){return oin(fnt(s,c,g,d,h))}function iin(s,c){switch(c){case 268:case 264:case 265:case 263:case 232:case 219:case 220:s.throwIfCancellationRequested()}}function fnt(s,c,g,d,h){let _=[];return g.forEachChild(function R(T){if(!(!T||!q2(h,T.pos,T.getFullWidth()))){if(iin(c,T.kind),Ir(T)&&!sf(T)&&d.has(T.escapedText)){let W=s.getSymbolAtLocation(T),V=W&&sin(W,DU(T),s);V&&S(T.getStart(g),T.getEnd(),V)}T.forEachChild(R)}}),{spans:_,endOfLineState:0};function S(R,T,W){let V=T-R;pe.assert(V>0,`Classification had non-positive length of ${V}`),_.push(R),_.push(V),_.push(W)}}function sin(s,c,g){let d=s.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&UTs(s)?14:void 0:d&2097152?sin(g.getAliasedSymbol(s),c,g):c&2?d&64?13:d&262144?15:void 0:void 0}function UTs(s){return jt(s.declarations,c=>xh(c)&&PF(c)===1)}function KTs(s){switch(s){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function oin(s){pe.assert(s.spans.length%3===0);let c=s.spans,g=[];for(let d=0;d])*)(\/>)?)?/m,Ye=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/g,Tt=c.text.substr(We,Ue),ot=$e.exec(Tt);if(!ot||!ot[3]||!(ot[3]in e1))return!1;let Qe=We;M(Qe,ot[1].length),Qe+=ot[1].length,T(Qe,ot[2].length,10),Qe+=ot[2].length,T(Qe,ot[3].length,21),Qe+=ot[3].length;let mt=ot[4],ht=Qe;for(;;){let Rt=Ye.exec(mt);if(!Rt)break;let Lt=Qe+Rt.index+Rt[1].length;Lt>ht&&(M(ht,Lt-ht),ht=Lt),T(ht,Rt[2].length,22),ht+=Rt[2].length,Rt[3].length&&(M(ht,Rt[3].length),ht+=Rt[3].length),T(ht,Rt[4].length,5),ht+=Rt[4].length,Rt[5].length&&(M(ht,Rt[5].length),ht+=Rt[5].length),T(ht,Rt[6].length,24),ht+=Rt[6].length}Qe+=ot[4].length,Qe>ht&&M(ht,Qe-ht),ot[5]&&(T(Qe,ot[5].length,10),Qe+=ot[5].length);let _t=We+Ue;return Qe<_t&&M(Qe,_t-Qe),!0}function ge(We){for(let Ue of We.getChildren())Ze(Ue)}function Ie(We,Ue,$e){let Ye;for(Ye=Ue;Ye<$e&&!Cl(We.charCodeAt(Ye));Ye++);for(T(Ue,Ye-Ue,1),S.resetTokenState(Ye);S.getTokenEnd()<$e;)_e()}function _e(){let We=S.getTokenEnd(),Ue=S.scan(),$e=S.getTokenEnd(),Ye=Te(Ue);Ye&&T(We,$e-We,Ye)}function Ee(We){if(tR(We)||sf(We))return!0;let Ue=Ne(We);if(!BL(We)&&We.kind!==12&&Ue===void 0)return!1;let $e=We.kind===12?We.pos:W(We),Ye=We.end-$e;if(pe.assert(Ye>=0),Ye>0){let Tt=Ue||Te(We.kind,We);Tt&&T($e,Ye,Tt)}return!0}function Ne(We){switch(We.parent&&We.parent.kind){case 287:if(We.parent.tagName===We)return 19;break;case 288:if(We.parent.tagName===We)return 20;break;case 286:if(We.parent.tagName===We)return 21;break;case 292:if(We.parent.name===We)return 22;break}}function Te(We,Ue){if(v0(We))return 3;if((We===30||We===32)&&Ue&&rMt(Ue.parent))return 10;if(Nye(We)){if(Ue){let $e=Ue.parent;if(We===64&&($e.kind===261||$e.kind===173||$e.kind===170||$e.kind===292)||$e.kind===227||$e.kind===225||$e.kind===226||$e.kind===228)return 5}return 10}else{if(We===9)return 4;if(We===10)return 25;if(We===11)return Ue&&Ue.parent.kind===292?24:6;if(We===14)return 6;if(LD(We))return 6;if(We===12)return 23;if(We===80){if(Ue){switch(Ue.parent.kind){case 264:return Ue.parent.name===Ue?11:void 0;case 169:return Ue.parent.name===Ue?15:void 0;case 265:return Ue.parent.name===Ue?13:void 0;case 267:return Ue.parent.name===Ue?12:void 0;case 268:return Ue.parent.name===Ue?14:void 0;case 170:return Ue.parent.name===Ue?vF(Ue)?3:17:void 0}if(s2(Ue.parent))return 3}return 2}}}function Ze(We){if(We&&IE(d,h,We.pos,We.getFullWidth())){iin(s,We.kind);for(let Ue of We.getChildren(c))Ee(Ue)||Ze(Ue)}}}var IPe;(s=>{function c(Qe,mt,ht,_t,Rt){let Lt=Lb(ht,_t);if(Lt.parent&&($T(Lt.parent)&&Lt.parent.tagName===Lt||rQ(Lt.parent))){let{openingElement:Ke,closingElement:Pt}=Lt.parent.parent,_r=[Ke,Pt].map(({tagName:Gt})=>g(Gt,ht));return[{fileName:ht.fileName,highlightSpans:_r}]}return d(_t,Lt,Qe,mt,Rt)||h(Lt,ht)}s.getDocumentHighlights=c;function g(Qe,mt){return{fileName:mt.fileName,textSpan:Oy(Qe,mt),kind:"none"}}function d(Qe,mt,ht,_t,Rt){let Lt=new Set(Rt.map(Gt=>Gt.fileName)),Ke=Kp.getReferenceEntriesForNode(Qe,mt,ht,Rt,_t,void 0,Lt);if(!Ke)return;let Pt=Ju(Ke.map(Kp.toHighlightSpan),Gt=>Gt.fileName,Gt=>Gt.span),_r=_d(ht.useCaseSensitiveFileNames());return Do(lr(Pt.entries(),([Gt,nt])=>{if(!Lt.has(Gt)){if(!ht.redirectTargetsMap.has(Ou(Gt,ht.getCurrentDirectory(),_r)))return;let Dt=ht.getSourceFile(Gt);Gt=de(Rt,ur=>!!ur.redirectInfo&&ur.redirectInfo.redirectTarget===Dt).fileName,pe.assert(Lt.has(Gt))}return{fileName:Gt,highlightSpans:nt}}))}function h(Qe,mt){let ht=_(Qe,mt);return ht&&[{fileName:mt.fileName,highlightSpans:ht}]}function _(Qe,mt){switch(Qe.kind){case 101:case 93:return Z3(Qe.parent)?Ye(Qe.parent,mt):void 0;case 107:return _t(Qe.parent,I2,Ze);case 111:return _t(Qe.parent,A$e,Te);case 113:case 85:case 98:let Lt=Qe.kind===85?Qe.parent.parent:Qe.parent;return _t(Lt,mU,Ne);case 109:return _t(Qe.parent,ode,Ee);case 84:case 90:return cde(Qe.parent)||fie(Qe.parent)?_t(Qe.parent.parent.parent,ode,Ee):void 0;case 83:case 88:return _t(Qe.parent,AY,_e);case 99:case 117:case 92:return _t(Qe.parent,Ke=>VT(Ke,!0),Ie);case 137:return ht(Tc,[137]);case 139:case 153:return ht(yB,[139,153]);case 135:return _t(Qe.parent,I1,We);case 134:return Rt(We(Qe));case 127:return Rt(Ue(Qe));case 103:case 147:return;default:return VD(Qe.kind)&&(jh(Qe.parent)||Ch(Qe.parent))?Rt(ee(Qe.kind,Qe.parent)):void 0}function ht(Lt,Ke){return _t(Qe.parent,Lt,Pt=>{var _r;return Xt((_r=Gs(Pt,mE))==null?void 0:_r.symbol.declarations,Gt=>Lt(Gt)?de(Gt.getChildren(mt),nt=>k(Ke,nt.kind)):void 0)})}function _t(Lt,Ke,Pt){return Ke(Lt)?Rt(Pt(Lt,mt)):void 0}function Rt(Lt){return Lt&&Lt.map(Ke=>g(Ke,mt))}}function S(Qe){return A$e(Qe)?[Qe]:mU(Qe)?Nn(Qe.catchClause?S(Qe.catchClause):Qe.tryBlock&&S(Qe.tryBlock),Qe.finallyBlock&&S(Qe.finallyBlock)):bu(Qe)?void 0:W(Qe,S)}function R(Qe){let mt=Qe;for(;mt.parent;){let ht=mt.parent;if(mP(ht)||ht.kind===308)return ht;if(mU(ht)&&ht.tryBlock===mt&&ht.catchClause)return mt;mt=ht}}function T(Qe){return AY(Qe)?[Qe]:bu(Qe)?void 0:W(Qe,T)}function W(Qe,mt){let ht=[];return Qe.forEachChild(_t=>{let Rt=mt(_t);Rt!==void 0&&ht.push(...cc(Rt))}),ht}function V(Qe,mt){let ht=M(mt);return!!ht&&ht===Qe}function M(Qe){return ji(Qe,mt=>{switch(mt.kind){case 256:if(Qe.kind===252)return!1;case 249:case 250:case 251:case 248:case 247:return!Qe.label||ot(mt,Qe.label.escapedText);default:return bu(mt)&&"quit"}})}function ee(Qe,mt){return Xt(re(mt,HY(Qe)),ht=>Qie(ht,Qe))}function re(Qe,mt){let ht=Qe.parent;switch(ht.kind){case 269:case 308:case 242:case 297:case 298:return mt&64&&pm(Qe)?[...Qe.members,Qe]:ht.statements;case 177:case 175:case 263:return[...ht.parameters,...xa(ht.parent)?ht.parent.members:[]];case 264:case 232:case 265:case 188:let _t=ht.members;if(mt&15){let Rt=de(ht.members,Tc);if(Rt)return[..._t,...Rt.parameters]}else if(mt&64)return[..._t,ht];return _t;default:return}}function ge(Qe,mt,...ht){return mt&&k(ht,mt.kind)?(Qe.push(mt),!0):!1}function Ie(Qe){let mt=[];if(ge(mt,Qe.getFirstToken(),99,117,92)&&Qe.kind===247){let ht=Qe.getChildren();for(let _t=ht.length-1;_t>=0&&!ge(mt,ht[_t],117);_t--);}return F(T(Qe.statement),ht=>{V(Qe,ht)&&ge(mt,ht.getFirstToken(),83,88)}),mt}function _e(Qe){let mt=M(Qe);if(mt)switch(mt.kind){case 249:case 250:case 251:case 247:case 248:return Ie(mt);case 256:return Ee(mt)}}function Ee(Qe){let mt=[];return ge(mt,Qe.getFirstToken(),109),F(Qe.caseBlock.clauses,ht=>{ge(mt,ht.getFirstToken(),84,90),F(T(ht),_t=>{V(Qe,_t)&&ge(mt,_t.getFirstToken(),83)})}),mt}function Ne(Qe,mt){let ht=[];if(ge(ht,Qe.getFirstToken(),113),Qe.catchClause&&ge(ht,Qe.catchClause.getFirstToken(),85),Qe.finallyBlock){let _t=qd(Qe,98,mt);ge(ht,_t,98)}return ht}function Te(Qe,mt){let ht=R(Qe);if(!ht)return;let _t=[];return F(S(ht),Rt=>{_t.push(qd(Rt,111,mt))}),mP(ht)&&yF(ht,Rt=>{_t.push(qd(Rt,107,mt))}),_t}function Ze(Qe,mt){let ht=A1(Qe);if(!ht)return;let _t=[];return yF(Ma(ht.body,$u),Rt=>{_t.push(qd(Rt,107,mt))}),F(S(ht.body),Rt=>{_t.push(qd(Rt,111,mt))}),_t}function We(Qe){let mt=A1(Qe);if(!mt)return;let ht=[];return mt.modifiers&&mt.modifiers.forEach(_t=>{ge(ht,_t,134)}),Lu(mt,_t=>{$e(_t,Rt=>{I1(Rt)&&ge(ht,Rt.getFirstToken(),135)})}),ht}function Ue(Qe){let mt=A1(Qe);if(!mt)return;let ht=[];return Lu(mt,_t=>{$e(_t,Rt=>{Hd(Rt)&&ge(ht,Rt.getFirstToken(),127)})}),ht}function $e(Qe,mt){mt(Qe),!bu(Qe)&&!xa(Qe)&&!g_(Qe)&&!xh(Qe)&&!FB(Qe)&&!uc(Qe)&&Lu(Qe,ht=>$e(ht,mt))}function Ye(Qe,mt){let ht=Tt(Qe,mt),_t=[];for(let Rt=0;Rt=Lt.end;_r--)if(!Iu(mt.text.charCodeAt(_r))){Pt=!1;break}if(Pt){_t.push({fileName:mt.fileName,textSpan:wA(Lt.getStart(),Ke.end),kind:"reference"}),Rt++;continue}}_t.push(g(ht[Rt],mt))}return _t}function Tt(Qe,mt){let ht=[];for(;Z3(Qe.parent)&&Qe.parent.elseStatement===Qe;)Qe=Qe.parent;for(;;){let _t=Qe.getChildren(mt);ge(ht,_t[0],101);for(let Rt=_t.length-1;Rt>=0&&!ge(ht,_t[Rt],93);Rt--);if(!Qe.elseStatement||!Z3(Qe.elseStatement))break;Qe=Qe.elseStatement}return ht}function ot(Qe,mt){return!!ji(Qe.parent,ht=>FP(ht)?ht.label.escapedText===mt:"quit")}})(IPe||(IPe={}));function v1e(s){return!!s.sourceFile}function FMt(s,c,g){return hnt(s,c,g)}function hnt(s,c="",g,d){let h=new Map,_=_d(!!s);function S(){let _e=Do(h.keys()).filter(Ee=>Ee&&Ee.charAt(0)==="_").map(Ee=>{let Ne=h.get(Ee),Te=[];return Ne.forEach((Ze,We)=>{v1e(Ze)?Te.push({name:We,scriptKind:Ze.sourceFile.scriptKind,refCount:Ze.languageServiceRefCount}):Ze.forEach((Ue,$e)=>Te.push({name:We,scriptKind:$e,refCount:Ue.languageServiceRefCount}))}),Te.sort((Ze,We)=>We.refCount-Ze.refCount),{bucket:Ee,sourceFiles:Te}});return JSON.stringify(_e,void 0,2)}function R(_e){return typeof _e.getCompilationSettings=="function"?_e.getCompilationSettings():_e}function T(_e,Ee,Ne,Te,Ze,We){let Ue=Ou(_e,c,_),$e=mnt(R(Ee));return W(_e,Ue,Ee,$e,Ne,Te,Ze,We)}function W(_e,Ee,Ne,Te,Ze,We,Ue,$e){return re(_e,Ee,Ne,Te,Ze,We,!0,Ue,$e)}function V(_e,Ee,Ne,Te,Ze,We){let Ue=Ou(_e,c,_),$e=mnt(R(Ee));return M(_e,Ue,Ee,$e,Ne,Te,Ze,We)}function M(_e,Ee,Ne,Te,Ze,We,Ue,$e){return re(_e,Ee,R(Ne),Te,Ze,We,!1,Ue,$e)}function ee(_e,Ee){let Ne=v1e(_e)?_e:_e.get(pe.checkDefined(Ee,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return pe.assert(Ee===void 0||!Ne||Ne.sourceFile.scriptKind===Ee,`Script kind should match provided ScriptKind:${Ee} and sourceFile.scriptKind: ${Ne?.sourceFile.scriptKind}, !entry: ${!Ne}`),Ne}function re(_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye){var Tt,ot,Qe,mt;$e=xAe(_e,$e);let ht=R(Ne),_t=Ne===ht?void 0:Ne,Rt=$e===6?100:Mg(ht),Lt=typeof Ye=="object"?Ye:{languageVersion:Rt,impliedNodeFormat:_t&&JEe(Ee,(mt=(Qe=(ot=(Tt=_t.getCompilerHost)==null?void 0:Tt.call(_t))==null?void 0:ot.getModuleResolutionCache)==null?void 0:Qe.call(ot))==null?void 0:mt.getPackageJsonInfoCache(),_t,ht),setExternalModuleIndicator:Lne(ht),jsDocParsingMode:g};Lt.languageVersion=Rt,pe.assertEqual(g,Lt.jsDocParsingMode);let Ke=h.size,Pt=ZMt(Te,Lt.impliedNodeFormat),_r=cr(h,Pt,()=>new Map);if(ki){h.size>Ke&&ki.instant(ki.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:ht.configFilePath,key:Pt});let tr=!PC(Ee)&&Dh(h,(ur,Gr)=>Gr!==Pt&&ur.has(Ee)&&Gr);tr&&ki.instant(ki.Phase.Session,"documentRegistryBucketOverlap",{path:Ee,key1:tr,key2:Pt})}let Gt=_r.get(Ee),nt=Gt&&ee(Gt,$e);if(!nt&&d){let tr=d.getDocument(Pt,Ee);tr&&tr.scriptKind===$e&&tr.text===Lz(Ze)&&(pe.assert(Ue),nt={sourceFile:tr,languageServiceRefCount:0},Dt())}if(nt)nt.sourceFile.version!==We&&(nt.sourceFile=znt(nt.sourceFile,Ze,We,Ze.getChangeRange(nt.sourceFile.scriptSnapshot)),d&&d.setDocument(Pt,Ee,nt.sourceFile)),Ue&&nt.languageServiceRefCount++;else{let tr=kPe(_e,Ze,Lt,We,!1,$e);d&&d.setDocument(Pt,Ee,tr),nt={sourceFile:tr,languageServiceRefCount:1},Dt()}return pe.assert(nt.languageServiceRefCount!==0),nt.sourceFile;function Dt(){if(!Gt)_r.set(Ee,nt);else if(v1e(Gt)){let tr=new Map;tr.set(Gt.sourceFile.scriptKind,Gt),tr.set($e,nt),_r.set(Ee,tr)}else Gt.set($e,nt)}}function ge(_e,Ee,Ne,Te){let Ze=Ou(_e,c,_),We=mnt(Ee);return Ie(Ze,We,Ne,Te)}function Ie(_e,Ee,Ne,Te){let Ze=pe.checkDefined(h.get(ZMt(Ee,Te))),We=Ze.get(_e),Ue=ee(We,Ne);Ue.languageServiceRefCount--,pe.assert(Ue.languageServiceRefCount>=0),Ue.languageServiceRefCount===0&&(v1e(We)?Ze.delete(_e):(We.delete(Ne),We.size===1&&Ze.set(_e,ae(We.values(),Fl))))}return{acquireDocument:T,acquireDocumentWithKey:W,updateDocument:V,updateDocumentWithKey:M,releaseDocument:ge,releaseDocumentWithKey:Ie,getKeyForCompilationSettings:mnt,getDocumentRegistryBucketKeyWithMode:ZMt,reportStats:S,getBuckets:()=>h}}function mnt(s){return oet(s,H$e)}function ZMt(s,c){return c?`${s}|${c}`:s}function LMt(s,c,g,d,h,_,S){let R=y3(d),T=_d(R),W=Cnt(c,g,T,S),V=Cnt(g,c,T,S);return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},M=>{zTs(s,M,W,c,g,d.getCurrentDirectory(),R),qTs(s,M,W,V,d,T)})}function Cnt(s,c,g,d){let h=g(s);return S=>{let R=d&&d.tryGetSourcePosition({fileName:S,pos:0}),T=_(R?R.fileName:S);return R?T===void 0?void 0:jTs(R.fileName,T,S,g):T};function _(S){if(g(S)===h)return c;let R=NAe(S,h,g);return R===void 0?void 0:c+"/"+R}}function jTs(s,c,g,d){let h=i1(s,c,d);return VMt(Mo(g),h)}function zTs(s,c,g,d,h,_,S){let{configFile:R}=s.getCompilerOptions();if(!R)return;let T=Mo(R.fileName),W=m7(R);if(!W)return;PMt(W,(re,ge)=>{switch(ge){case"files":case"include":case"exclude":{if(V(re)||ge!=="include"||!OI(re.initializer))return;let _e=Xt(re.initializer.elements,Ne=>Zg(Ne)?Ne.text:void 0);if(_e.length===0)return;let Ee=kAe(T,[],_e,S,_);zD(pe.checkDefined(Ee.includeFilePattern),S).test(d)&&!zD(pe.checkDefined(Ee.includeFilePattern),S).test(h)&&c.insertNodeAfter(R,Ei(re.initializer.elements),me.createStringLiteral(ee(h)));return}case"compilerOptions":PMt(re.initializer,(Ie,_e)=>{let Ee=X$e(_e);pe.assert(Ee?.type!=="listOrElement"),Ee&&(Ee.isFilePath||Ee.type==="list"&&Ee.element.isFilePath)?V(Ie):_e==="paths"&&PMt(Ie.initializer,Ne=>{if(OI(Ne.initializer))for(let Te of Ne.initializer.elements)M(Te)})});return}});function V(re){let ge=OI(re.initializer)?re.initializer.elements:[re.initializer],Ie=!1;for(let _e of ge)Ie=M(_e)||Ie;return Ie}function M(re){if(!Zg(re))return!1;let ge=VMt(T,re.text),Ie=g(ge);return Ie!==void 0?(c.replaceRangeWithText(R,cin(re,R),ee(Ie)),!0):!1}function ee(re){return mp(T,re,!S)}}function qTs(s,c,g,d,h,_){let S=s.getSourceFiles();for(let R of S){let T=g(R.fileName),W=T??R.fileName,V=Mo(W),M=d(R.fileName),ee=M||R.fileName,re=Mo(ee),ge=T!==void 0||M!==void 0;tRs(R,c,Ie=>{if(!Ip(Ie))return;let _e=VMt(re,Ie),Ee=g(_e);return Ee===void 0?void 0:Am(mp(V,Ee,_))},Ie=>{let _e=s.getTypeChecker().getSymbolAtLocation(Ie);if(_e?.declarations&&_e.declarations.some(Ne=>s_(Ne)))return;let Ee=M!==void 0?ain(Ie,BU(Ie.text,ee,s.getCompilerOptions(),h),g,S):eRs(_e,Ie,R,s,h,g);return Ee!==void 0&&(Ee.updated||ge&&Ip(Ie.text))?WF.updateModuleSpecifier(s.getCompilerOptions(),R,W,Ee.newFileName,z3(s,h),Ie.text):void 0})}}function $Ts(s,c){return iu(Ro(s,c))}function VMt(s,c){return Am($Ts(s,c))}function eRs(s,c,g,d,h,_){if(s){let S=de(s.declarations,ll).fileName,R=_(S);return R===void 0?{newFileName:S,updated:!1}:{newFileName:R,updated:!0}}else{let S=d.getModeForUsageLocation(g,c),R=h.resolveModuleNameLiterals||!h.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,g):h.getResolvedModuleWithFailedLookupLocationsFromCache&&h.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,g.fileName,S);return ain(c,R,_,d.getSourceFiles())}}function ain(s,c,g,d){if(!c)return;if(c.resolvedModule){let T=R(c.resolvedModule.resolvedFileName);if(T)return T}let h=F(c.failedLookupLocations,_)||Ip(s.text)&&F(c.failedLookupLocations,S);if(h)return h;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function _(T){let W=g(T);return W&&de(d,V=>V.fileName===W)?S(T):void 0}function S(T){return di(T,"/package.json")?void 0:R(T)}function R(T){let W=g(T);return W&&{newFileName:W,updated:!0}}}function tRs(s,c,g,d){for(let h of s.referencedFiles||E){let _=g(h.fileName);_!==void 0&&_!==s.text.slice(h.pos,h.end)&&c.replaceRangeWithText(s,h,_)}for(let h of s.imports){let _=d(h);_!==void 0&&_!==h.text&&c.replaceRangeWithText(s,cin(h,s),_)}}function cin(s,c){return Gy(s.getStart(c)+1,s.end-1)}function PMt(s,c){if(og(s))for(let g of s.properties)fm(g)&&Zg(g.name)&&c(g,g.name.text)}var _nt=(s=>(s[s.exact=0]="exact",s[s.prefix=1]="prefix",s[s.substring=2]="substring",s[s.camelCase=3]="camelCase",s))(_nt||{});function $de(s,c){return{kind:s,isCaseSensitive:c}}function WMt(s){let c=new Map,g=s.trim().split(".").map(d=>sRs(d.trim()));if(g.length===1&&g[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>$de(2,!0),getFullMatch:()=>$de(2,!0),patternContainsDots:!1};if(!g.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,h)=>rRs(d,h,g,c),getMatchForLastSegmentOfPattern:d=>OMt(d,Ei(g),c),patternContainsDots:g.length>1}}function rRs(s,c,g,d){if(!OMt(c,Ei(g),d)||g.length-1>s.length)return;let _;for(let S=g.length-2,R=s.length-1;S>=0;S-=1,R-=1)_=gin(_,OMt(s[R],g[S],d));return _}function lin(s,c){let g=c.get(s);return g||c.set(s,g=JMt(s)),g}function uin(s,c,g){let d=oRs(s,c.textLowerCase);if(d===0)return $de(c.text.length===s.length?0:1,Ac(s,c.text));if(c.isLowerCase){if(d===-1)return;let h=lin(s,g);for(let _ of h)if(MMt(s,_,c.text,!0))return $de(2,MMt(s,_,c.text,!1));if(c.text.length0)return $de(2,!0);if(c.characterSpans.length>0){let h=lin(s,g),_=Ain(s,h,c,!1)?!0:Ain(s,h,c,!0)?!1:void 0;if(_!==void 0)return $de(3,_)}}}function OMt(s,c,g){if(ynt(c.totalTextChunk.text,_=>_!==32&&_!==42)){let _=uin(s,c.totalTextChunk,g);if(_)return _}let d=c.subWordTextChunks,h;for(let _ of d)h=gin(h,uin(s,_,g));return h}function gin(s,c){return oa([s,c],nRs)}function nRs(s,c){return s===void 0?1:c===void 0?-1:Zt(s.kind,c.kind)||Ml(!s.isCaseSensitive,!c.isCaseSensitive)}function MMt(s,c,g,d,h={start:0,length:g.length}){return h.length<=c.length&&Iin(0,h.length,_=>iRs(g.charCodeAt(h.start+_),s.charCodeAt(c.start+_),d))}function iRs(s,c,g){return g?HMt(s)===HMt(c):s===c}function Ain(s,c,g,d){let h=g.characterSpans,_=0,S=0,R,T;for(;;){if(S===h.length)return!0;if(_===c.length)return!1;let W=c[_],V=!1;for(;S=65&&s<=90)return!0;if(s<127||!ft(s,99))return!1;let c=String.fromCharCode(s);return c===c.toUpperCase()}function din(s){if(s>=97&&s<=122)return!0;if(s<127||!ft(s,99))return!1;let c=String.fromCharCode(s);return c===c.toLowerCase()}function oRs(s,c){let g=s.length-c.length;for(let d=0;d<=g;d++)if(ynt(c,(h,_)=>HMt(s.charCodeAt(_+d))===h))return d;return-1}function HMt(s){return s>=65&&s<=90?97+(s-65):s<127?s:String.fromCharCode(s).toLowerCase().charCodeAt(0)}function YMt(s){return s>=48&&s<=57}function aRs(s){return qie(s)||din(s)||YMt(s)||s===95||s===36}function cRs(s){let c=[],g=0,d=0;for(let h=0;h0&&(c.push(QMt(s.substr(g,d))),d=0)}return d>0&&c.push(QMt(s.substr(g,d))),c}function QMt(s){let c=s.toLowerCase();return{text:s,textLowerCase:c,isLowerCase:s===c,characterSpans:XMt(s)}}function XMt(s){return pin(s,!1)}function JMt(s){return pin(s,!0)}function pin(s,c){let g=[],d=0;for(let h=1;hUMt(d)&&d!==95,c,g)}function lRs(s,c,g){return c!==g&&c+1c(s.charCodeAt(h),h))}function hin(s,c=!0,g=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},h=[],_,S,R,T=0,W=!1;function V(){return S=R,R=A_.scan(),R===19?T++:R===20&&T--,R}function M(){let We=A_.getTokenValue(),Ue=A_.getTokenStart();return{fileName:We,pos:Ue,end:Ue+We.length}}function ee(){_||(_=[]),_.push({ref:M(),depth:T})}function re(){h.push(M()),ge()}function ge(){T===0&&(W=!0)}function Ie(){let We=A_.getToken();return We===138?(We=V(),We===144&&(We=V(),We===11&&ee()),!0):!1}function _e(){if(S===25)return!1;let We=A_.getToken();if(We===102){if(We=V(),We===21){if(We=V(),We===11||We===15)return re(),!0}else{if(We===11)return re(),!0;if(We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e!==161&&($e===42||$e===19||$e===80||v0($e))})&&(We=V()),We===80||v0(We))if(We=V(),We===161){if(We=V(),We===11)return re(),!0}else if(We===64){if(Ne(!0))return!0}else if(We===28)We=V();else return!0;if(We===19){for(We=V();We!==20&&We!==1;)We=V();We===20&&(We=V(),We===161&&(We=V(),We===11&&re()))}else We===42&&(We=V(),We===130&&(We=V(),(We===80||v0(We))&&(We=V(),We===161&&(We=V(),We===11&&re()))))}return!0}return!1}function Ee(){let We=A_.getToken();if(We===95){if(ge(),We=V(),We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e===42||$e===19})&&(We=V()),We===19){for(We=V();We!==20&&We!==1;)We=V();We===20&&(We=V(),We===161&&(We=V(),We===11&&re()))}else if(We===42)We=V(),We===161&&(We=V(),We===11&&re());else if(We===102&&(We=V(),We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e===80||v0($e)})&&(We=V()),(We===80||v0(We))&&(We=V(),We===64&&Ne(!0))))return!0;return!0}return!1}function Ne(We,Ue=!1){let $e=We?V():A_.getToken();return $e===149?($e=V(),$e===21&&($e=V(),($e===11||Ue&&$e===15)&&re()),!0):!1}function Te(){let We=A_.getToken();if(We===80&&A_.getTokenValue()==="define"){if(We=V(),We!==21)return!0;if(We=V(),We===11||We===15)if(We=V(),We===28)We=V();else return!0;if(We!==23)return!0;for(We=V();We!==24&&We!==1;)(We===11||We===15)&&re(),We=V();return!0}return!1}function Ze(){for(A_.setText(s),V();A_.getToken()!==1;){if(A_.getToken()===16){let We=[A_.getToken()];e:for(;B(We);){let Ue=A_.scan();switch(Ue){case 1:break e;case 102:_e();break;case 16:We.push(Ue);break;case 19:B(We)&&We.push(Ue);break;case 20:B(We)&&(li(We)===16?A_.reScanTemplateToken(!1)===18&&We.pop():We.pop());break}}V()}Ie()||_e()||Ee()||g&&(Ne(!1,!0)||Te())||V()}A_.setText(void 0)}if(c&&Ze(),V$e(d,s),P$e(d,Dc),W){if(_)for(let We of _)h.push(We.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let We;if(_)for(let Ue of _)Ue.depth===0?(We||(We=[]),We.push(Ue.ref.fileName)):h.push(Ue.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:We}}}var gRs=/^data:(?:application\/json;charset=[uU][tT][fF]-8;base64,([A-Za-z0-9+/=]+)$)?/;function KMt(s){let c=_d(s.useCaseSensitiveFileNames()),g=s.getCurrentDirectory(),d=new Map,h=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:T,toLineColumnOffset:ee,clearCache:re,documentPositionMappers:h};function _(ge){return Ou(ge,g,c)}function S(ge,Ie){let _e=_(ge),Ee=h.get(_e);if(Ee)return Ee;let Ne;if(s.getDocumentPositionMapper)Ne=s.getDocumentPositionMapper(ge,Ie);else if(s.readFile){let Te=M(ge);Ne=Te&&bnt({getSourceFileLike:M,getCanonicalFileName:c,log:Ze=>s.log(Ze)},ge,ket(Te.text,rn(Te)),Ze=>!s.fileExists||s.fileExists(Ze)?s.readFile(Ze):void 0)}return h.set(_e,Ne||Get),Ne||Get}function R(ge){if(!PC(ge.fileName)||!W(ge.fileName))return;let _e=S(ge.fileName).getSourcePosition(ge);return!_e||_e===ge?void 0:R(_e)||_e}function T(ge){if(PC(ge.fileName))return;let Ie=W(ge.fileName);if(!Ie)return;let _e=s.getProgram();if(_e.isSourceOfProjectReferenceRedirect(Ie.fileName))return;let Ne=_e.getCompilerOptions().outFile,Te=Ne?s0(Ne)+".d.ts":wne(ge.fileName,_e.getCompilerOptions(),_e);if(Te===void 0)return;let Ze=S(Te,ge.fileName).getGeneratedPosition(ge);return Ze===ge?void 0:Ze}function W(ge){let Ie=s.getProgram();if(!Ie)return;let _e=_(ge),Ee=Ie.getSourceFileByPath(_e);return Ee&&Ee.resolvedPath===_e?Ee:void 0}function V(ge){let Ie=_(ge),_e=d.get(Ie);if(_e!==void 0)return _e||void 0;if(!s.readFile||s.fileExists&&!s.fileExists(ge)){d.set(Ie,!1);return}let Ee=s.readFile(ge),Ne=Ee?ARs(Ee):!1;return d.set(Ie,Ne),Ne||void 0}function M(ge){return s.getSourceFileLike?s.getSourceFileLike(ge):W(ge)||V(ge)}function ee(ge,Ie){return M(ge).getLineAndCharacterOfPosition(Ie)}function re(){d.clear(),h.clear()}}function bnt(s,c,g,d){let h=EOt(g);if(h){let R=gRs.exec(h);if(R){if(R[1]){let T=R[1];return min(s,YZe(yd,T),c)}h=void 0}}let _=[];h&&_.push(h),_.push(c+".map");let S=h&&Xc(h,Mo(c));for(let R of _){let T=Xc(R,Mo(c)),W=d(T,S);if(Xs(W))return min(s,W,T);if(W!==void 0)return W||void 0}}function min(s,c,g){let d=SOt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Xs)))return BOt(s,d,g)}function ARs(s,c){return{text:s,lineMap:c,getLineAndCharacterOfPosition(g){return Ci(rn(this),g)}}}var jMt=new Map;function Ent(s,c,g){var d;c.getSemanticDiagnostics(s,g);let h=[],_=c.getTypeChecker();!(c.getImpliedNodeFormatForEmit(s)===1||fu(s.fileName,[".cts",".cjs"]))&&s.commonJsModuleIndicator&&(aMt(c)||Lrt(c.getCompilerOptions()))&&dRs(s)&&h.push(mo(hRs(s.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=n0(s);if(jMt.clear(),T(s),JY(c.getCompilerOptions()))for(let W of s.imports){let V=v7(W);if(km(V)&&Ga(V,32))continue;let M=pRs(V);if(!M)continue;let ee=(d=c.getResolvedModuleFromModuleSpecifier(W,s))==null?void 0:d.resolvedModule,re=ee&&c.getSourceFile(ee.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&Cf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&h.push(mo(M,Z.Import_may_be_converted_to_a_default_import))}return Or(h,s.bindSuggestionDiagnostics),Or(h,c.getSuggestionDiagnostics(s,g)),h.sort((W,V)=>W.start-V.start),h;function T(W){if(R)CRs(W,_)&&h.push(mo(nc(W.parent)?W.parent.name:W,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Ch(W)&&W.parent===s&&W.declarationList.flags&2&&W.declarationList.declarations.length===1){let M=W.declarationList.declarations[0].initializer;M&&ay(M,!0)&&h.push(mo(M,Z.require_call_may_be_converted_to_an_import))}let V=x0.getJSDocTypedefNodes(W);for(let M of V)h.push(mo(M,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));x0.parameterShouldGetTypeFromJSDoc(W)&&h.push(mo(W.name||W,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}Bnt(W)&&fRs(W,_,h),W.forEachChild(T)}}function dRs(s){return s.statements.some(c=>{switch(c.kind){case 244:return c.declarationList.declarations.some(g=>!!g.initializer&&ay(Cin(g.initializer),!0));case 245:{let{expression:g}=c;if(!fo(g))return ay(g,!0);let d=nI(g);return d===1||d===2}default:return!1}})}function Cin(s){return jo(s)?Cin(s.expression):s}function pRs(s){switch(s.kind){case 273:let{importClause:c,moduleSpecifier:g}=s;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===275&&Zg(g)?c.namedBindings.name:void 0;case 272:return s.name;default:return}}function fRs(s,c,g){IRs(s,c)&&!jMt.has(Ein(s))&&g.push(mo(!s.name&&nc(s.parent)&&Ir(s.parent.name)?s.parent.name:s,Z.This_may_be_converted_to_an_async_function))}function IRs(s,c){return!D7(s)&&s.body&&$u(s.body)&&mRs(s.body,c)&&Snt(s,c)}function Snt(s,c){let g=c.getSignatureFromDeclaration(s),d=g?c.getReturnTypeOfSignature(g):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function hRs(s){return fo(s)?s.left:s}function mRs(s,c){return!!yF(s,g=>hPe(g,c))}function hPe(s,c){return I2(s)&&!!s.expression&&vnt(s.expression,c)}function vnt(s,c){if(!_in(s)||!yin(s)||!s.arguments.every(d=>bin(d,c)))return!1;let g=s.expression.expression;for(;_in(g)||jo(g);)if(Zl(g)){if(!yin(g)||!g.arguments.every(d=>bin(d,c)))return!1;g=g.expression.expression}else g=g.expression;return!0}function _in(s){return Zl(s)&&(s1e(s,"then")||s1e(s,"catch")||s1e(s,"finally"))}function yin(s){let c=s.expression.name.text,g=c==="then"?2:c==="catch"||c==="finally"?1:0;return s.arguments.length>g?!1:s.arguments.lengthd.kind===106||Ir(d)&&d.text==="undefined")}function bin(s,c){switch(s.kind){case 263:case 219:if(SI(s)&1)return!1;case 220:jMt.set(Ein(s),!0);case 106:return!0;case 80:case 212:{let d=c.getSymbolAtLocation(s);return d?c.isUndefinedSymbol(d)||jt(FC(d,c).declarations,h=>bu(h)||WT(h)&&!!h.initializer&&bu(h.initializer)):!1}default:return!1}}function Ein(s){return`${s.pos.toString()}:${s.end.toString()}`}function CRs(s,c){var g,d,h,_;if(UA(s)){if(nc(s.parent)&&((g=s.symbol.members)!=null&&g.size))return!0;let S=c.getSymbolOfExpando(s,!1);return!!(S&&((d=S.exports)!=null&&d.size||(h=S.members)!=null&&h.size))}return ih(s)?!!((_=s.symbol.members)!=null&&_.size):!1}function Bnt(s){switch(s.kind){case 263:case 175:case 219:case 220:return!0;default:return!1}}var _Rs=new Set(["isolatedModules"]);function zMt(s,c){return vin(s,c,!1)}function Sin(s,c){return vin(s,c,!0)}var yRs=`/// +`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return pe.assertNever(s)}}function aRs(s){switch(s){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}function cRs(s){switch(s){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function lRs(s){if(v0(s))return 3;if(aRs(s)||cRs(s))return 5;if(s>=19&&s<=79)return 10;switch(s){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 80:default:return LD(s)?6:2}}function LMt(s,c,g,d,h){return din(hnt(s,c,g,d,h))}function gin(s,c){switch(c){case 268:case 264:case 265:case 263:case 232:case 219:case 220:s.throwIfCancellationRequested()}}function hnt(s,c,g,d,h){let _=[];return g.forEachChild(function R(T){if(!(!T||!q2(h,T.pos,T.getFullWidth()))){if(gin(c,T.kind),Ir(T)&&!sf(T)&&d.has(T.escapedText)){let W=s.getSymbolAtLocation(T),V=W&&Ain(W,DU(T),s);V&&S(T.getStart(g),T.getEnd(),V)}T.forEachChild(R)}}),{spans:_,endOfLineState:0};function S(R,T,W){let V=T-R;pe.assert(V>0,`Classification had non-positive length of ${V}`),_.push(R),_.push(V),_.push(W)}}function Ain(s,c,g){let d=s.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&uRs(s)?14:void 0:d&2097152?Ain(g.getAliasedSymbol(s),c,g):c&2?d&64?13:d&262144?15:void 0:void 0}function uRs(s){return jt(s.declarations,c=>xh(c)&&PF(c)===1)}function gRs(s){switch(s){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function din(s){pe.assert(s.spans.length%3===0);let c=s.spans,g=[];for(let d=0;d])*)(\/>)?)?/m,Ye=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/g,Tt=c.text.substr(We,Ue),ot=$e.exec(Tt);if(!ot||!ot[3]||!(ot[3]in e1))return!1;let Qe=We;M(Qe,ot[1].length),Qe+=ot[1].length,T(Qe,ot[2].length,10),Qe+=ot[2].length,T(Qe,ot[3].length,21),Qe+=ot[3].length;let mt=ot[4],ht=Qe;for(;;){let Rt=Ye.exec(mt);if(!Rt)break;let Lt=Qe+Rt.index+Rt[1].length;Lt>ht&&(M(ht,Lt-ht),ht=Lt),T(ht,Rt[2].length,22),ht+=Rt[2].length,Rt[3].length&&(M(ht,Rt[3].length),ht+=Rt[3].length),T(ht,Rt[4].length,5),ht+=Rt[4].length,Rt[5].length&&(M(ht,Rt[5].length),ht+=Rt[5].length),T(ht,Rt[6].length,24),ht+=Rt[6].length}Qe+=ot[4].length,Qe>ht&&M(ht,Qe-ht),ot[5]&&(T(Qe,ot[5].length,10),Qe+=ot[5].length);let _t=We+Ue;return Qe<_t&&M(Qe,_t-Qe),!0}function ge(We){for(let Ue of We.getChildren())Ze(Ue)}function Ie(We,Ue,$e){let Ye;for(Ye=Ue;Ye<$e&&!Cl(We.charCodeAt(Ye));Ye++);for(T(Ue,Ye-Ue,1),S.resetTokenState(Ye);S.getTokenEnd()<$e;)_e()}function _e(){let We=S.getTokenEnd(),Ue=S.scan(),$e=S.getTokenEnd(),Ye=Te(Ue);Ye&&T(We,$e-We,Ye)}function Ee(We){if(tR(We)||sf(We))return!0;let Ue=Ne(We);if(!BL(We)&&We.kind!==12&&Ue===void 0)return!1;let $e=We.kind===12?We.pos:W(We),Ye=We.end-$e;if(pe.assert(Ye>=0),Ye>0){let Tt=Ue||Te(We.kind,We);Tt&&T($e,Ye,Tt)}return!0}function Ne(We){switch(We.parent&&We.parent.kind){case 287:if(We.parent.tagName===We)return 19;break;case 288:if(We.parent.tagName===We)return 20;break;case 286:if(We.parent.tagName===We)return 21;break;case 292:if(We.parent.name===We)return 22;break}}function Te(We,Ue){if(v0(We))return 3;if((We===30||We===32)&&Ue&&oMt(Ue.parent))return 10;if(Dye(We)){if(Ue){let $e=Ue.parent;if(We===64&&($e.kind===261||$e.kind===173||$e.kind===170||$e.kind===292)||$e.kind===227||$e.kind===225||$e.kind===226||$e.kind===228)return 5}return 10}else{if(We===9)return 4;if(We===10)return 25;if(We===11)return Ue&&Ue.parent.kind===292?24:6;if(We===14)return 6;if(LD(We))return 6;if(We===12)return 23;if(We===80){if(Ue){switch(Ue.parent.kind){case 264:return Ue.parent.name===Ue?11:void 0;case 169:return Ue.parent.name===Ue?15:void 0;case 265:return Ue.parent.name===Ue?13:void 0;case 267:return Ue.parent.name===Ue?12:void 0;case 268:return Ue.parent.name===Ue?14:void 0;case 170:return Ue.parent.name===Ue?vF(Ue)?3:17:void 0}if(s2(Ue.parent))return 3}return 2}}}function Ze(We){if(We&&IE(d,h,We.pos,We.getFullWidth())){gin(s,We.kind);for(let Ue of We.getChildren(c))Ee(Ue)||Ze(Ue)}}}var mPe;(s=>{function c(Qe,mt,ht,_t,Rt){let Lt=Lb(ht,_t);if(Lt.parent&&($T(Lt.parent)&&Lt.parent.tagName===Lt||rQ(Lt.parent))){let{openingElement:Ke,closingElement:Pt}=Lt.parent.parent,_r=[Ke,Pt].map(({tagName:Gt})=>g(Gt,ht));return[{fileName:ht.fileName,highlightSpans:_r}]}return d(_t,Lt,Qe,mt,Rt)||h(Lt,ht)}s.getDocumentHighlights=c;function g(Qe,mt){return{fileName:mt.fileName,textSpan:Oy(Qe,mt),kind:"none"}}function d(Qe,mt,ht,_t,Rt){let Lt=new Set(Rt.map(Gt=>Gt.fileName)),Ke=Kp.getReferenceEntriesForNode(Qe,mt,ht,Rt,_t,void 0,Lt);if(!Ke)return;let Pt=Ju(Ke.map(Kp.toHighlightSpan),Gt=>Gt.fileName,Gt=>Gt.span),_r=_d(ht.useCaseSensitiveFileNames());return Do(lr(Pt.entries(),([Gt,nt])=>{if(!Lt.has(Gt)){if(!ht.redirectTargetsMap.has(Ou(Gt,ht.getCurrentDirectory(),_r)))return;let Dt=ht.getSourceFile(Gt);Gt=de(Rt,ur=>!!ur.redirectInfo&&ur.redirectInfo.redirectTarget===Dt).fileName,pe.assert(Lt.has(Gt))}return{fileName:Gt,highlightSpans:nt}}))}function h(Qe,mt){let ht=_(Qe,mt);return ht&&[{fileName:mt.fileName,highlightSpans:ht}]}function _(Qe,mt){switch(Qe.kind){case 101:case 93:return Z3(Qe.parent)?Ye(Qe.parent,mt):void 0;case 107:return _t(Qe.parent,I2,Ze);case 111:return _t(Qe.parent,p$e,Te);case 113:case 85:case 98:let Lt=Qe.kind===85?Qe.parent.parent:Qe.parent;return _t(Lt,mU,Ne);case 109:return _t(Qe.parent,ade,Ee);case 84:case 90:return lde(Qe.parent)||Iie(Qe.parent)?_t(Qe.parent.parent.parent,ade,Ee):void 0;case 83:case 88:return _t(Qe.parent,AY,_e);case 99:case 117:case 92:return _t(Qe.parent,Ke=>VT(Ke,!0),Ie);case 137:return ht(Tc,[137]);case 139:case 153:return ht(yB,[139,153]);case 135:return _t(Qe.parent,I1,We);case 134:return Rt(We(Qe));case 127:return Rt(Ue(Qe));case 103:case 147:return;default:return VD(Qe.kind)&&(jh(Qe.parent)||Ch(Qe.parent))?Rt(ee(Qe.kind,Qe.parent)):void 0}function ht(Lt,Ke){return _t(Qe.parent,Lt,Pt=>{var _r;return Xt((_r=Gs(Pt,mE))==null?void 0:_r.symbol.declarations,Gt=>Lt(Gt)?de(Gt.getChildren(mt),nt=>k(Ke,nt.kind)):void 0)})}function _t(Lt,Ke,Pt){return Ke(Lt)?Rt(Pt(Lt,mt)):void 0}function Rt(Lt){return Lt&&Lt.map(Ke=>g(Ke,mt))}}function S(Qe){return p$e(Qe)?[Qe]:mU(Qe)?Nn(Qe.catchClause?S(Qe.catchClause):Qe.tryBlock&&S(Qe.tryBlock),Qe.finallyBlock&&S(Qe.finallyBlock)):bu(Qe)?void 0:W(Qe,S)}function R(Qe){let mt=Qe;for(;mt.parent;){let ht=mt.parent;if(mP(ht)||ht.kind===308)return ht;if(mU(ht)&&ht.tryBlock===mt&&ht.catchClause)return mt;mt=ht}}function T(Qe){return AY(Qe)?[Qe]:bu(Qe)?void 0:W(Qe,T)}function W(Qe,mt){let ht=[];return Qe.forEachChild(_t=>{let Rt=mt(_t);Rt!==void 0&&ht.push(...cc(Rt))}),ht}function V(Qe,mt){let ht=M(mt);return!!ht&&ht===Qe}function M(Qe){return ji(Qe,mt=>{switch(mt.kind){case 256:if(Qe.kind===252)return!1;case 249:case 250:case 251:case 248:case 247:return!Qe.label||ot(mt,Qe.label.escapedText);default:return bu(mt)&&"quit"}})}function ee(Qe,mt){return Xt(re(mt,HY(Qe)),ht=>Xie(ht,Qe))}function re(Qe,mt){let ht=Qe.parent;switch(ht.kind){case 269:case 308:case 242:case 297:case 298:return mt&64&&pm(Qe)?[...Qe.members,Qe]:ht.statements;case 177:case 175:case 263:return[...ht.parameters,...xa(ht.parent)?ht.parent.members:[]];case 264:case 232:case 265:case 188:let _t=ht.members;if(mt&15){let Rt=de(ht.members,Tc);if(Rt)return[..._t,...Rt.parameters]}else if(mt&64)return[..._t,ht];return _t;default:return}}function ge(Qe,mt,...ht){return mt&&k(ht,mt.kind)?(Qe.push(mt),!0):!1}function Ie(Qe){let mt=[];if(ge(mt,Qe.getFirstToken(),99,117,92)&&Qe.kind===247){let ht=Qe.getChildren();for(let _t=ht.length-1;_t>=0&&!ge(mt,ht[_t],117);_t--);}return F(T(Qe.statement),ht=>{V(Qe,ht)&&ge(mt,ht.getFirstToken(),83,88)}),mt}function _e(Qe){let mt=M(Qe);if(mt)switch(mt.kind){case 249:case 250:case 251:case 247:case 248:return Ie(mt);case 256:return Ee(mt)}}function Ee(Qe){let mt=[];return ge(mt,Qe.getFirstToken(),109),F(Qe.caseBlock.clauses,ht=>{ge(mt,ht.getFirstToken(),84,90),F(T(ht),_t=>{V(Qe,_t)&&ge(mt,_t.getFirstToken(),83)})}),mt}function Ne(Qe,mt){let ht=[];if(ge(ht,Qe.getFirstToken(),113),Qe.catchClause&&ge(ht,Qe.catchClause.getFirstToken(),85),Qe.finallyBlock){let _t=qd(Qe,98,mt);ge(ht,_t,98)}return ht}function Te(Qe,mt){let ht=R(Qe);if(!ht)return;let _t=[];return F(S(ht),Rt=>{_t.push(qd(Rt,111,mt))}),mP(ht)&&yF(ht,Rt=>{_t.push(qd(Rt,107,mt))}),_t}function Ze(Qe,mt){let ht=A1(Qe);if(!ht)return;let _t=[];return yF(Ma(ht.body,$u),Rt=>{_t.push(qd(Rt,107,mt))}),F(S(ht.body),Rt=>{_t.push(qd(Rt,111,mt))}),_t}function We(Qe){let mt=A1(Qe);if(!mt)return;let ht=[];return mt.modifiers&&mt.modifiers.forEach(_t=>{ge(ht,_t,134)}),Lu(mt,_t=>{$e(_t,Rt=>{I1(Rt)&&ge(ht,Rt.getFirstToken(),135)})}),ht}function Ue(Qe){let mt=A1(Qe);if(!mt)return;let ht=[];return Lu(mt,_t=>{$e(_t,Rt=>{Hd(Rt)&&ge(ht,Rt.getFirstToken(),127)})}),ht}function $e(Qe,mt){mt(Qe),!bu(Qe)&&!xa(Qe)&&!g_(Qe)&&!xh(Qe)&&!FB(Qe)&&!uc(Qe)&&Lu(Qe,ht=>$e(ht,mt))}function Ye(Qe,mt){let ht=Tt(Qe,mt),_t=[];for(let Rt=0;Rt=Lt.end;_r--)if(!Iu(mt.text.charCodeAt(_r))){Pt=!1;break}if(Pt){_t.push({fileName:mt.fileName,textSpan:wA(Lt.getStart(),Ke.end),kind:"reference"}),Rt++;continue}}_t.push(g(ht[Rt],mt))}return _t}function Tt(Qe,mt){let ht=[];for(;Z3(Qe.parent)&&Qe.parent.elseStatement===Qe;)Qe=Qe.parent;for(;;){let _t=Qe.getChildren(mt);ge(ht,_t[0],101);for(let Rt=_t.length-1;Rt>=0&&!ge(ht,_t[Rt],93);Rt--);if(!Qe.elseStatement||!Z3(Qe.elseStatement))break;Qe=Qe.elseStatement}return ht}function ot(Qe,mt){return!!ji(Qe.parent,ht=>FP(ht)?ht.label.escapedText===mt:"quit")}})(mPe||(mPe={}));function B1e(s){return!!s.sourceFile}function PMt(s,c,g){return Cnt(s,c,g)}function Cnt(s,c="",g,d){let h=new Map,_=_d(!!s);function S(){let _e=Do(h.keys()).filter(Ee=>Ee&&Ee.charAt(0)==="_").map(Ee=>{let Ne=h.get(Ee),Te=[];return Ne.forEach((Ze,We)=>{B1e(Ze)?Te.push({name:We,scriptKind:Ze.sourceFile.scriptKind,refCount:Ze.languageServiceRefCount}):Ze.forEach((Ue,$e)=>Te.push({name:We,scriptKind:$e,refCount:Ue.languageServiceRefCount}))}),Te.sort((Ze,We)=>We.refCount-Ze.refCount),{bucket:Ee,sourceFiles:Te}});return JSON.stringify(_e,void 0,2)}function R(_e){return typeof _e.getCompilationSettings=="function"?_e.getCompilationSettings():_e}function T(_e,Ee,Ne,Te,Ze,We){let Ue=Ou(_e,c,_),$e=_nt(R(Ee));return W(_e,Ue,Ee,$e,Ne,Te,Ze,We)}function W(_e,Ee,Ne,Te,Ze,We,Ue,$e){return re(_e,Ee,Ne,Te,Ze,We,!0,Ue,$e)}function V(_e,Ee,Ne,Te,Ze,We){let Ue=Ou(_e,c,_),$e=_nt(R(Ee));return M(_e,Ue,Ee,$e,Ne,Te,Ze,We)}function M(_e,Ee,Ne,Te,Ze,We,Ue,$e){return re(_e,Ee,R(Ne),Te,Ze,We,!1,Ue,$e)}function ee(_e,Ee){let Ne=B1e(_e)?_e:_e.get(pe.checkDefined(Ee,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return pe.assert(Ee===void 0||!Ne||Ne.sourceFile.scriptKind===Ee,`Script kind should match provided ScriptKind:${Ee} and sourceFile.scriptKind: ${Ne?.sourceFile.scriptKind}, !entry: ${!Ne}`),Ne}function re(_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye){var Tt,ot,Qe,mt;$e=GAe(_e,$e);let ht=R(Ne),_t=Ne===ht?void 0:Ne,Rt=$e===6?100:Mg(ht),Lt=typeof Ye=="object"?Ye:{languageVersion:Rt,impliedNodeFormat:_t&&UEe(Ee,(mt=(Qe=(ot=(Tt=_t.getCompilerHost)==null?void 0:Tt.call(_t))==null?void 0:ot.getModuleResolutionCache)==null?void 0:Qe.call(ot))==null?void 0:mt.getPackageJsonInfoCache(),_t,ht),setExternalModuleIndicator:Vne(ht),jsDocParsingMode:g};Lt.languageVersion=Rt,pe.assertEqual(g,Lt.jsDocParsingMode);let Ke=h.size,Pt=WMt(Te,Lt.impliedNodeFormat),_r=cr(h,Pt,()=>new Map);if(ki){h.size>Ke&&ki.instant(ki.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:ht.configFilePath,key:Pt});let tr=!PC(Ee)&&Dh(h,(ur,Gr)=>Gr!==Pt&&ur.has(Ee)&&Gr);tr&&ki.instant(ki.Phase.Session,"documentRegistryBucketOverlap",{path:Ee,key1:tr,key2:Pt})}let Gt=_r.get(Ee),nt=Gt&&ee(Gt,$e);if(!nt&&d){let tr=d.getDocument(Pt,Ee);tr&&tr.scriptKind===$e&&tr.text===Lz(Ze)&&(pe.assert(Ue),nt={sourceFile:tr,languageServiceRefCount:0},Dt())}if(nt)nt.sourceFile.version!==We&&(nt.sourceFile=$nt(nt.sourceFile,Ze,We,Ze.getChangeRange(nt.sourceFile.scriptSnapshot)),d&&d.setDocument(Pt,Ee,nt.sourceFile)),Ue&&nt.languageServiceRefCount++;else{let tr=GPe(_e,Ze,Lt,We,!1,$e);d&&d.setDocument(Pt,Ee,tr),nt={sourceFile:tr,languageServiceRefCount:1},Dt()}return pe.assert(nt.languageServiceRefCount!==0),nt.sourceFile;function Dt(){if(!Gt)_r.set(Ee,nt);else if(B1e(Gt)){let tr=new Map;tr.set(Gt.sourceFile.scriptKind,Gt),tr.set($e,nt),_r.set(Ee,tr)}else Gt.set($e,nt)}}function ge(_e,Ee,Ne,Te){let Ze=Ou(_e,c,_),We=_nt(Ee);return Ie(Ze,We,Ne,Te)}function Ie(_e,Ee,Ne,Te){let Ze=pe.checkDefined(h.get(WMt(Ee,Te))),We=Ze.get(_e),Ue=ee(We,Ne);Ue.languageServiceRefCount--,pe.assert(Ue.languageServiceRefCount>=0),Ue.languageServiceRefCount===0&&(B1e(We)?Ze.delete(_e):(We.delete(Ne),We.size===1&&Ze.set(_e,ae(We.values(),Fl))))}return{acquireDocument:T,acquireDocumentWithKey:W,updateDocument:V,updateDocumentWithKey:M,releaseDocument:ge,releaseDocumentWithKey:Ie,getKeyForCompilationSettings:_nt,getDocumentRegistryBucketKeyWithMode:WMt,reportStats:S,getBuckets:()=>h}}function _nt(s){return cet(s,Q$e)}function WMt(s,c){return c?`${s}|${c}`:s}function OMt(s,c,g,d,h,_,S){let R=y3(d),T=_d(R),W=ynt(c,g,T,S),V=ynt(g,c,T,S);return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},M=>{dRs(s,M,W,c,g,d.getCurrentDirectory(),R),pRs(s,M,W,V,d,T)})}function ynt(s,c,g,d){let h=g(s);return S=>{let R=d&&d.tryGetSourcePosition({fileName:S,pos:0}),T=_(R?R.fileName:S);return R?T===void 0?void 0:ARs(R.fileName,T,S,g):T};function _(S){if(g(S)===h)return c;let R=DAe(S,h,g);return R===void 0?void 0:c+"/"+R}}function ARs(s,c,g,d){let h=i1(s,c,d);return MMt(Mo(g),h)}function dRs(s,c,g,d,h,_,S){let{configFile:R}=s.getCompilerOptions();if(!R)return;let T=Mo(R.fileName),W=m7(R);if(!W)return;HMt(W,(re,ge)=>{switch(ge){case"files":case"include":case"exclude":{if(V(re)||ge!=="include"||!OI(re.initializer))return;let _e=Xt(re.initializer.elements,Ne=>Zg(Ne)?Ne.text:void 0);if(_e.length===0)return;let Ee=xAe(T,[],_e,S,_);zD(pe.checkDefined(Ee.includeFilePattern),S).test(d)&&!zD(pe.checkDefined(Ee.includeFilePattern),S).test(h)&&c.insertNodeAfter(R,Ei(re.initializer.elements),me.createStringLiteral(ee(h)));return}case"compilerOptions":HMt(re.initializer,(Ie,_e)=>{let Ee=U$e(_e);pe.assert(Ee?.type!=="listOrElement"),Ee&&(Ee.isFilePath||Ee.type==="list"&&Ee.element.isFilePath)?V(Ie):_e==="paths"&&HMt(Ie.initializer,Ne=>{if(OI(Ne.initializer))for(let Te of Ne.initializer.elements)M(Te)})});return}});function V(re){let ge=OI(re.initializer)?re.initializer.elements:[re.initializer],Ie=!1;for(let _e of ge)Ie=M(_e)||Ie;return Ie}function M(re){if(!Zg(re))return!1;let ge=MMt(T,re.text),Ie=g(ge);return Ie!==void 0?(c.replaceRangeWithText(R,fin(re,R),ee(Ie)),!0):!1}function ee(re){return mp(T,re,!S)}}function pRs(s,c,g,d,h,_){let S=s.getSourceFiles();for(let R of S){let T=g(R.fileName),W=T??R.fileName,V=Mo(W),M=d(R.fileName),ee=M||R.fileName,re=Mo(ee),ge=T!==void 0||M!==void 0;hRs(R,c,Ie=>{if(!Ip(Ie))return;let _e=MMt(re,Ie),Ee=g(_e);return Ee===void 0?void 0:Am(mp(V,Ee,_))},Ie=>{let _e=s.getTypeChecker().getSymbolAtLocation(Ie);if(_e?.declarations&&_e.declarations.some(Ne=>s_(Ne)))return;let Ee=M!==void 0?pin(Ie,BU(Ie.text,ee,s.getCompilerOptions(),h),g,S):IRs(_e,Ie,R,s,h,g);return Ee!==void 0&&(Ee.updated||ge&&Ip(Ie.text))?WF.updateModuleSpecifier(s.getCompilerOptions(),R,W,Ee.newFileName,z3(s,h),Ie.text):void 0})}}function fRs(s,c){return iu(Ro(s,c))}function MMt(s,c){return Am(fRs(s,c))}function IRs(s,c,g,d,h,_){if(s){let S=de(s.declarations,ll).fileName,R=_(S);return R===void 0?{newFileName:S,updated:!1}:{newFileName:R,updated:!0}}else{let S=d.getModeForUsageLocation(g,c),R=h.resolveModuleNameLiterals||!h.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,g):h.getResolvedModuleWithFailedLookupLocationsFromCache&&h.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,g.fileName,S);return pin(c,R,_,d.getSourceFiles())}}function pin(s,c,g,d){if(!c)return;if(c.resolvedModule){let T=R(c.resolvedModule.resolvedFileName);if(T)return T}let h=F(c.failedLookupLocations,_)||Ip(s.text)&&F(c.failedLookupLocations,S);if(h)return h;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function _(T){let W=g(T);return W&&de(d,V=>V.fileName===W)?S(T):void 0}function S(T){return di(T,"/package.json")?void 0:R(T)}function R(T){let W=g(T);return W&&{newFileName:W,updated:!0}}}function hRs(s,c,g,d){for(let h of s.referencedFiles||E){let _=g(h.fileName);_!==void 0&&_!==s.text.slice(h.pos,h.end)&&c.replaceRangeWithText(s,h,_)}for(let h of s.imports){let _=d(h);_!==void 0&&_!==h.text&&c.replaceRangeWithText(s,fin(h,s),_)}}function fin(s,c){return Gy(s.getStart(c)+1,s.end-1)}function HMt(s,c){if(og(s))for(let g of s.properties)fm(g)&&Zg(g.name)&&c(g,g.name.text)}var bnt=(s=>(s[s.exact=0]="exact",s[s.prefix=1]="prefix",s[s.substring=2]="substring",s[s.camelCase=3]="camelCase",s))(bnt||{});function epe(s,c){return{kind:s,isCaseSensitive:c}}function YMt(s){let c=new Map,g=s.trim().split(".").map(d=>yRs(d.trim()));if(g.length===1&&g[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>epe(2,!0),getFullMatch:()=>epe(2,!0),patternContainsDots:!1};if(!g.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,h)=>mRs(d,h,g,c),getMatchForLastSegmentOfPattern:d=>QMt(d,Ei(g),c),patternContainsDots:g.length>1}}function mRs(s,c,g,d){if(!QMt(c,Ei(g),d)||g.length-1>s.length)return;let _;for(let S=g.length-2,R=s.length-1;S>=0;S-=1,R-=1)_=min(_,QMt(s[R],g[S],d));return _}function Iin(s,c){let g=c.get(s);return g||c.set(s,g=zMt(s)),g}function hin(s,c,g){let d=bRs(s,c.textLowerCase);if(d===0)return epe(c.text.length===s.length?0:1,Ac(s,c.text));if(c.isLowerCase){if(d===-1)return;let h=Iin(s,g);for(let _ of h)if(XMt(s,_,c.text,!0))return epe(2,XMt(s,_,c.text,!1));if(c.text.length0)return epe(2,!0);if(c.characterSpans.length>0){let h=Iin(s,g),_=Cin(s,h,c,!1)?!0:Cin(s,h,c,!0)?!1:void 0;if(_!==void 0)return epe(3,_)}}}function QMt(s,c,g){if(Ent(c.totalTextChunk.text,_=>_!==32&&_!==42)){let _=hin(s,c.totalTextChunk,g);if(_)return _}let d=c.subWordTextChunks,h;for(let _ of d)h=min(h,hin(s,_,g));return h}function min(s,c){return oa([s,c],CRs)}function CRs(s,c){return s===void 0?1:c===void 0?-1:Zt(s.kind,c.kind)||Ml(!s.isCaseSensitive,!c.isCaseSensitive)}function XMt(s,c,g,d,h={start:0,length:g.length}){return h.length<=c.length&&Ein(0,h.length,_=>_Rs(g.charCodeAt(h.start+_),s.charCodeAt(c.start+_),d))}function _Rs(s,c,g){return g?JMt(s)===JMt(c):s===c}function Cin(s,c,g,d){let h=g.characterSpans,_=0,S=0,R,T;for(;;){if(S===h.length)return!0;if(_===c.length)return!1;let W=c[_],V=!1;for(;S=65&&s<=90)return!0;if(s<127||!ft(s,99))return!1;let c=String.fromCharCode(s);return c===c.toUpperCase()}function _in(s){if(s>=97&&s<=122)return!0;if(s<127||!ft(s,99))return!1;let c=String.fromCharCode(s);return c===c.toLowerCase()}function bRs(s,c){let g=s.length-c.length;for(let d=0;d<=g;d++)if(Ent(c,(h,_)=>JMt(s.charCodeAt(_+d))===h))return d;return-1}function JMt(s){return s>=65&&s<=90?97+(s-65):s<127?s:String.fromCharCode(s).toLowerCase().charCodeAt(0)}function UMt(s){return s>=48&&s<=57}function ERs(s){return $ie(s)||_in(s)||UMt(s)||s===95||s===36}function SRs(s){let c=[],g=0,d=0;for(let h=0;h0&&(c.push(KMt(s.substr(g,d))),d=0)}return d>0&&c.push(KMt(s.substr(g,d))),c}function KMt(s){let c=s.toLowerCase();return{text:s,textLowerCase:c,isLowerCase:s===c,characterSpans:jMt(s)}}function jMt(s){return yin(s,!1)}function zMt(s){return yin(s,!0)}function yin(s,c){let g=[],d=0;for(let h=1;hqMt(d)&&d!==95,c,g)}function vRs(s,c,g){return c!==g&&c+1c(s.charCodeAt(h),h))}function Sin(s,c=!0,g=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},h=[],_,S,R,T=0,W=!1;function V(){return S=R,R=A_.scan(),R===19?T++:R===20&&T--,R}function M(){let We=A_.getTokenValue(),Ue=A_.getTokenStart();return{fileName:We,pos:Ue,end:Ue+We.length}}function ee(){_||(_=[]),_.push({ref:M(),depth:T})}function re(){h.push(M()),ge()}function ge(){T===0&&(W=!0)}function Ie(){let We=A_.getToken();return We===138?(We=V(),We===144&&(We=V(),We===11&&ee()),!0):!1}function _e(){if(S===25)return!1;let We=A_.getToken();if(We===102){if(We=V(),We===21){if(We=V(),We===11||We===15)return re(),!0}else{if(We===11)return re(),!0;if(We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e!==161&&($e===42||$e===19||$e===80||v0($e))})&&(We=V()),We===80||v0(We))if(We=V(),We===161){if(We=V(),We===11)return re(),!0}else if(We===64){if(Ne(!0))return!0}else if(We===28)We=V();else return!0;if(We===19){for(We=V();We!==20&&We!==1;)We=V();We===20&&(We=V(),We===161&&(We=V(),We===11&&re()))}else We===42&&(We=V(),We===130&&(We=V(),(We===80||v0(We))&&(We=V(),We===161&&(We=V(),We===11&&re()))))}return!0}return!1}function Ee(){let We=A_.getToken();if(We===95){if(ge(),We=V(),We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e===42||$e===19})&&(We=V()),We===19){for(We=V();We!==20&&We!==1;)We=V();We===20&&(We=V(),We===161&&(We=V(),We===11&&re()))}else if(We===42)We=V(),We===161&&(We=V(),We===11&&re());else if(We===102&&(We=V(),We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e===80||v0($e)})&&(We=V()),(We===80||v0(We))&&(We=V(),We===64&&Ne(!0))))return!0;return!0}return!1}function Ne(We,Ue=!1){let $e=We?V():A_.getToken();return $e===149?($e=V(),$e===21&&($e=V(),($e===11||Ue&&$e===15)&&re()),!0):!1}function Te(){let We=A_.getToken();if(We===80&&A_.getTokenValue()==="define"){if(We=V(),We!==21)return!0;if(We=V(),We===11||We===15)if(We=V(),We===28)We=V();else return!0;if(We!==23)return!0;for(We=V();We!==24&&We!==1;)(We===11||We===15)&&re(),We=V();return!0}return!1}function Ze(){for(A_.setText(s),V();A_.getToken()!==1;){if(A_.getToken()===16){let We=[A_.getToken()];e:for(;B(We);){let Ue=A_.scan();switch(Ue){case 1:break e;case 102:_e();break;case 16:We.push(Ue);break;case 19:B(We)&&We.push(Ue);break;case 20:B(We)&&(li(We)===16?A_.reScanTemplateToken(!1)===18&&We.pop():We.pop());break}}V()}Ie()||_e()||Ee()||g&&(Ne(!1,!0)||Te())||V()}A_.setText(void 0)}if(c&&Ze(),W$e(d,s),O$e(d,Dc),W){if(_)for(let We of _)h.push(We.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let We;if(_)for(let Ue of _)Ue.depth===0?(We||(We=[]),We.push(Ue.ref.fileName)):h.push(Ue.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:We}}}var wRs=/^data:(?:application\/json;charset=[uU][tT][fF]-8;base64,([A-Za-z0-9+/=]+)$)?/;function $Mt(s){let c=_d(s.useCaseSensitiveFileNames()),g=s.getCurrentDirectory(),d=new Map,h=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:T,toLineColumnOffset:ee,clearCache:re,documentPositionMappers:h};function _(ge){return Ou(ge,g,c)}function S(ge,Ie){let _e=_(ge),Ee=h.get(_e);if(Ee)return Ee;let Ne;if(s.getDocumentPositionMapper)Ne=s.getDocumentPositionMapper(ge,Ie);else if(s.readFile){let Te=M(ge);Ne=Te&&Snt({getSourceFileLike:M,getCanonicalFileName:c,log:Ze=>s.log(Ze)},ge,Get(Te.text,rn(Te)),Ze=>!s.fileExists||s.fileExists(Ze)?s.readFile(Ze):void 0)}return h.set(_e,Ne||Zet),Ne||Zet}function R(ge){if(!PC(ge.fileName)||!W(ge.fileName))return;let _e=S(ge.fileName).getSourcePosition(ge);return!_e||_e===ge?void 0:R(_e)||_e}function T(ge){if(PC(ge.fileName))return;let Ie=W(ge.fileName);if(!Ie)return;let _e=s.getProgram();if(_e.isSourceOfProjectReferenceRedirect(Ie.fileName))return;let Ne=_e.getCompilerOptions().outFile,Te=Ne?s0(Ne)+".d.ts":Tne(ge.fileName,_e.getCompilerOptions(),_e);if(Te===void 0)return;let Ze=S(Te,ge.fileName).getGeneratedPosition(ge);return Ze===ge?void 0:Ze}function W(ge){let Ie=s.getProgram();if(!Ie)return;let _e=_(ge),Ee=Ie.getSourceFileByPath(_e);return Ee&&Ee.resolvedPath===_e?Ee:void 0}function V(ge){let Ie=_(ge),_e=d.get(Ie);if(_e!==void 0)return _e||void 0;if(!s.readFile||s.fileExists&&!s.fileExists(ge)){d.set(Ie,!1);return}let Ee=s.readFile(ge),Ne=Ee?TRs(Ee):!1;return d.set(Ie,Ne),Ne||void 0}function M(ge){return s.getSourceFileLike?s.getSourceFileLike(ge):W(ge)||V(ge)}function ee(ge,Ie){return M(ge).getLineAndCharacterOfPosition(Ie)}function re(){d.clear(),h.clear()}}function Snt(s,c,g,d){let h=wOt(g);if(h){let R=wRs.exec(h);if(R){if(R[1]){let T=R[1];return vin(s,XZe(yd,T),c)}h=void 0}}let _=[];h&&_.push(h),_.push(c+".map");let S=h&&Xc(h,Mo(c));for(let R of _){let T=Xc(R,Mo(c)),W=d(T,S);if(Xs(W))return vin(s,W,T);if(W!==void 0)return W||void 0}}function vin(s,c,g){let d=TOt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Xs)))return NOt(s,d,g)}function TRs(s,c){return{text:s,lineMap:c,getLineAndCharacterOfPosition(g){return Ci(rn(this),g)}}}var eHt=new Map;function vnt(s,c,g){var d;c.getSemanticDiagnostics(s,g);let h=[],_=c.getTypeChecker();!(c.getImpliedNodeFormatForEmit(s)===1||fu(s.fileName,[".cts",".cjs"]))&&s.commonJsModuleIndicator&&(gMt(c)||Prt(c.getCompilerOptions()))&&RRs(s)&&h.push(mo(xRs(s.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=n0(s);if(eHt.clear(),T(s),JY(c.getCompilerOptions()))for(let W of s.imports){let V=v7(W);if(km(V)&&Ga(V,32))continue;let M=NRs(V);if(!M)continue;let ee=(d=c.getResolvedModuleFromModuleSpecifier(W,s))==null?void 0:d.resolvedModule,re=ee&&c.getSourceFile(ee.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&Cf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&h.push(mo(M,Z.Import_may_be_converted_to_a_default_import))}return Or(h,s.bindSuggestionDiagnostics),Or(h,c.getSuggestionDiagnostics(s,g)),h.sort((W,V)=>W.start-V.start),h;function T(W){if(R)FRs(W,_)&&h.push(mo(nc(W.parent)?W.parent.name:W,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Ch(W)&&W.parent===s&&W.declarationList.flags&2&&W.declarationList.declarations.length===1){let M=W.declarationList.declarations[0].initializer;M&&ay(M,!0)&&h.push(mo(M,Z.require_call_may_be_converted_to_an_import))}let V=x0.getJSDocTypedefNodes(W);for(let M of V)h.push(mo(M,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));x0.parameterShouldGetTypeFromJSDoc(W)&&h.push(mo(W.name||W,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}Tnt(W)&&DRs(W,_,h),W.forEachChild(T)}}function RRs(s){return s.statements.some(c=>{switch(c.kind){case 244:return c.declarationList.declarations.some(g=>!!g.initializer&&ay(Bin(g.initializer),!0));case 245:{let{expression:g}=c;if(!fo(g))return ay(g,!0);let d=nI(g);return d===1||d===2}default:return!1}})}function Bin(s){return jo(s)?Bin(s.expression):s}function NRs(s){switch(s.kind){case 273:let{importClause:c,moduleSpecifier:g}=s;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===275&&Zg(g)?c.namedBindings.name:void 0;case 272:return s.name;default:return}}function DRs(s,c,g){kRs(s,c)&&!eHt.has(Nin(s))&&g.push(mo(!s.name&&nc(s.parent)&&Ir(s.parent.name)?s.parent.name:s,Z.This_may_be_converted_to_an_async_function))}function kRs(s,c){return!D7(s)&&s.body&&$u(s.body)&&GRs(s.body,c)&&Bnt(s,c)}function Bnt(s,c){let g=c.getSignatureFromDeclaration(s),d=g?c.getReturnTypeOfSignature(g):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function xRs(s){return fo(s)?s.left:s}function GRs(s,c){return!!yF(s,g=>CPe(g,c))}function CPe(s,c){return I2(s)&&!!s.expression&&wnt(s.expression,c)}function wnt(s,c){if(!win(s)||!Tin(s)||!s.arguments.every(d=>Rin(d,c)))return!1;let g=s.expression.expression;for(;win(g)||jo(g);)if(Zl(g)){if(!Tin(g)||!g.arguments.every(d=>Rin(d,c)))return!1;g=g.expression.expression}else g=g.expression;return!0}function win(s){return Zl(s)&&(o1e(s,"then")||o1e(s,"catch")||o1e(s,"finally"))}function Tin(s){let c=s.expression.name.text,g=c==="then"?2:c==="catch"||c==="finally"?1:0;return s.arguments.length>g?!1:s.arguments.lengthd.kind===106||Ir(d)&&d.text==="undefined")}function Rin(s,c){switch(s.kind){case 263:case 219:if(SI(s)&1)return!1;case 220:eHt.set(Nin(s),!0);case 106:return!0;case 80:case 212:{let d=c.getSymbolAtLocation(s);return d?c.isUndefinedSymbol(d)||jt(FC(d,c).declarations,h=>bu(h)||WT(h)&&!!h.initializer&&bu(h.initializer)):!1}default:return!1}}function Nin(s){return`${s.pos.toString()}:${s.end.toString()}`}function FRs(s,c){var g,d,h,_;if(UA(s)){if(nc(s.parent)&&((g=s.symbol.members)!=null&&g.size))return!0;let S=c.getSymbolOfExpando(s,!1);return!!(S&&((d=S.exports)!=null&&d.size||(h=S.members)!=null&&h.size))}return ih(s)?!!((_=s.symbol.members)!=null&&_.size):!1}function Tnt(s){switch(s.kind){case 263:case 175:case 219:case 220:return!0;default:return!1}}var ZRs=new Set(["isolatedModules"]);function tHt(s,c){return kin(s,c,!1)}function Din(s,c){return kin(s,c,!0)}var LRs=`/// interface Boolean {} interface Function {} interface CallableFunction {} @@ -1021,42 +1021,42 @@ interface SymbolConstructor { declare var Symbol: SymbolConstructor; interface Symbol { readonly [Symbol.toStringTag]: string; -}`,mPe="lib.d.ts",qMt;function vin(s,c,g){qMt??(qMt=vz(mPe,yRs,{languageVersion:99}));let d=[],h=c.compilerOptions?wnt(c.compilerOptions,d):{},_=DPe();for(let Ie in _)Da(_,Ie)&&h[Ie]===void 0&&(h[Ie]=_[Ie]);for(let Ie of EWt)h.verbatimModuleSyntax&&_Rs.has(Ie.name)||(h[Ie.name]=Ie.transpileOptionValue);h.suppressOutputPathCheck=!0,h.allowNonTsExtensions=!0,g?(h.declaration=!0,h.emitDeclarationOnly=!0,h.isolatedDeclarations=!0):(h.declaration=!1,h.declarationMap=!1);let S=uN(h),R={getSourceFile:Ie=>Ie===iu(T)?W:Ie===iu(mPe)?qMt:void 0,writeFile:(Ie,_e)=>{aA(Ie,".map")?(pe.assertEqual(M,void 0,"Unexpected multiple source map outputs, file:",Ie),M=_e):(pe.assertEqual(V,void 0,"Unexpected multiple outputs, file:",Ie),V=_e)},getDefaultLibFileName:()=>mPe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ie=>Ie,getCurrentDirectory:()=>"",getNewLine:()=>S,fileExists:Ie=>Ie===T||!!g&&Ie===mPe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},T=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),W=vz(T,s,{languageVersion:Mg(h),impliedNodeFormat:JEe(Ou(T,"",R.getCanonicalFileName),void 0,R,h),setExternalModuleIndicator:Lne(h),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(W.moduleName=c.moduleName),c.renamedDependencies&&(W.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let V,M,re=UEe(g?[T,mPe]:[T],h,R);c.reportDiagnostics&&(Or(d,re.getSyntacticDiagnostics(W)),Or(d,re.getOptionsDiagnostics()));let ge=re.emit(void 0,void 0,void 0,g,c.transformers,g);return Or(d,ge.diagnostics),V===void 0?pe.fail("Output generation failed"):{outputText:V,diagnostics:d,sourceMapText:M}}function Bin(s,c,g,d,h){let _=zMt(s,{compilerOptions:c,fileName:g,reportDiagnostics:!!d,moduleName:h});return Or(d,_.diagnostics),_.outputText}var $Mt;function wnt(s,c){$Mt=$Mt||Me(Ww,g=>typeof g.type=="object"&&!Dh(g.type,d=>typeof d!="number")),s=Drt(s);for(let g of $Mt){if(!Da(s,g.name))continue;let d=s[g.name];Xs(d)?s[g.name]=I9e(g,d,c):Dh(g.type,h=>h===d)||c.push(vWt(g))}return s}var eHt={};o(eHt,{getNavigateToItems:()=>win});function win(s,c,g,d,h,_,S){let R=WMt(d);if(!R)return E;let T=[],W=s.length===1?s[0]:void 0;for(let V of s)g.throwIfCancellationRequested(),!(_&&V.isDeclarationFile)&&(Tin(V,!!S,W)||V.getNamedDeclarations().forEach((M,ee)=>{bRs(R,ee,M,c,V.fileName,!!S,W,T)}));return T.sort(BRs),(h===void 0?T:T.slice(0,h)).map(wRs)}function Tin(s,c,g){return s!==g&&c&&(_1e(s.path)||s.hasNoDefaultLib)}function bRs(s,c,g,d,h,_,S,R){let T=s.getMatchForLastSegmentOfPattern(c);if(T){for(let W of g)if(ERs(W,d,_,S))if(s.patternContainsDots){let V=s.getFullMatch(vRs(W),c);V&&R.push({name:c,fileName:h,matchKind:V.kind,isCaseSensitive:V.isCaseSensitive,declaration:W})}else R.push({name:c,fileName:h,matchKind:T.kind,isCaseSensitive:T.isCaseSensitive,declaration:W})}}function ERs(s,c,g,d){var h;switch(s.kind){case 274:case 277:case 272:let _=c.getSymbolAtLocation(s.name),S=c.getAliasedSymbol(_);return _.escapedName!==S.escapedName&&!((h=S.declarations)!=null&&h.every(R=>Tin(R.getSourceFile(),g,d)));default:return!0}}function SRs(s,c){let g=Il(s);return!!g&&(Rin(g,c)||g.kind===168&&tHt(g.expression,c))}function tHt(s,c){return Rin(s,c)||jo(s)&&(c.push(s.name.text),!0)&&tHt(s.expression,c)}function Rin(s,c){return Tw(s)&&(c.push(c2(s)),!0)}function vRs(s){let c=[],g=Il(s);if(g&&g.kind===168&&!tHt(g.expression,c))return E;c.shift();let d=kU(s);for(;d;){if(!SRs(d,c))return E;d=kU(d)}return c.reverse(),c}function BRs(s,c){return Zt(s.matchKind,c.matchKind)||so(s.name,c.name)}function wRs(s){let c=s.declaration,g=kU(c),d=g&&Il(g);return{name:s.name,kind:pQ(c),kindModifiers:Yde(c),matchKind:_nt[s.matchKind],isCaseSensitive:s.isCaseSensitive,fileName:s.fileName,textSpan:Oy(c),containerName:d?d.text:"",containerKind:d?pQ(g):""}}var rHt={};o(rHt,{getNavigationBarItems:()=>Din,getNavigationTree:()=>kin});var TRs=/\s+/g,nHt=150,Tnt,B1e,CPe=[],r9,Nin=[],$ie,iHt=[];function Din(s,c){Tnt=c,B1e=s;try{return At(xRs(Fin(s)),GRs)}finally{xin()}}function kin(s,c){Tnt=c,B1e=s;try{return Yin(Fin(s))}finally{xin()}}function xin(){B1e=void 0,Tnt=void 0,CPe=[],r9=void 0,iHt=[]}function _Pe(s){return epe(s.getText(B1e))}function Rnt(s){return s.node.kind}function Gin(s,c){s.children?s.children.push(c):s.children=[c]}function Fin(s){pe.assert(!CPe.length);let c={node:s,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};r9=c;for(let g of s.statements)Wz(g);return q3(),pe.assert(!r9&&!CPe.length),c}function hQ(s,c){Gin(r9,sHt(s,c))}function sHt(s,c){return{node:s,name:c||(jh(s)||un(s)?Il(s):void 0),additionalNodes:void 0,parent:r9,children:void 0,indent:r9.indent+1}}function Zin(s){$ie||($ie=new Map),$ie.set(s,!0)}function Lin(s){for(let c=0;c0;d--){let h=g[d];mQ(s,h)}return[g.length-1,g[0]]}function mQ(s,c){let g=sHt(s,c);Gin(r9,g),CPe.push(r9),Nin.push($ie),$ie=void 0,r9=g}function q3(){r9.children&&(Nnt(r9.children,r9),cHt(r9.children)),r9=CPe.pop(),$ie=Nin.pop()}function $3(s,c,g){mQ(s,g),Wz(c),q3()}function Pin(s){s.initializer&&ZRs(s.initializer)?(mQ(s),Lu(s.initializer,Wz),q3()):$3(s,s.initializer)}function oHt(s){let c=Il(s);if(c===void 0)return!1;if(Un(c)){let g=c.expression;return Od(g)||mC(g)||d1(g)}return!!c}function Wz(s){if(Tnt.throwIfCancellationRequested(),!(!s||BL(s)))switch(s.kind){case 177:let c=s;$3(c,c.body);for(let S of c.parameters)Ve(S,c)&&hQ(S);break;case 175:case 178:case 179:case 174:oHt(s)&&$3(s,s.body);break;case 173:oHt(s)&&Pin(s);break;case 172:oHt(s)&&hQ(s);break;case 274:let g=s;g.name&&hQ(g.name);let{namedBindings:d}=g;if(d)if(d.kind===275)hQ(d);else for(let S of d.elements)hQ(S);break;case 305:$3(s,s.name);break;case 306:let{expression:h}=s;Ir(h)?hQ(s,h):hQ(s);break;case 209:case 304:case 261:{let S=s;Nu(S.name)?Wz(S.name):Pin(S);break}case 263:let _=s.name;_&&Ir(_)&&Zin(_.text),$3(s,s.body);break;case 220:case 219:$3(s,s.body);break;case 267:mQ(s);for(let S of s.members)FRs(S)||hQ(S);q3();break;case 264:case 232:case 265:mQ(s);for(let S of s.members)Wz(S);q3();break;case 268:$3(s,Xin(s).body);break;case 278:{let S=s.expression,R=og(S)||Zl(S)?S:lA(S)||UA(S)?S.body:void 0;R?(mQ(s),Wz(R),q3()):hQ(s);break}case 282:case 272:case 182:case 180:case 181:case 266:hQ(s);break;case 214:case 227:{let S=nI(s);switch(S){case 1:case 2:$3(s,s.right);return;case 6:case 3:{let R=s,T=R.left,W=S===3?T.expression:T,V=0,M;Ir(W.expression)?(Zin(W.expression.text),M=W.expression):[V,M]=Vin(R,W.expression),S===6?og(R.right)&&R.right.properties.length>0&&(mQ(R,M),Lu(R.right,Wz),q3()):UA(R.right)||lA(R.right)?$3(s,R.right,M):(mQ(R,M),$3(s,R.right,T.name),q3()),Lin(V);return}case 7:case 9:{let R=s,T=S===7?R.arguments[0]:R.arguments[0].expression,W=R.arguments[1],[V,M]=Vin(s,T);mQ(s,M),mQ(s,gn(me.createIdentifier(W.text),W)),Wz(s.arguments[2]),q3(),q3(),Lin(V);return}case 5:{let R=s,T=R.left,W=T.expression;if(Ir(W)&&YD(T)!=="prototype"&&$ie&&$ie.has(W.text)){UA(R.right)||lA(R.right)?$3(s,R.right,W):yP(T)&&(mQ(R,W),$3(R.left,R.right,cne(T)),q3());return}break}case 4:case 0:case 8:break;default:pe.assertNever(S)}}default:Xm(s)&&F(s.jsDoc,S=>{F(S.tags,R=>{iS(R)&&hQ(R)})}),Lu(s,Wz)}}function Nnt(s,c){let g=new Map;je(s,(d,h)=>{let _=d.name||Il(d.node),S=_&&_Pe(_);if(!S)return!0;let R=g.get(S);if(!R)return g.set(S,d),!0;if(R instanceof Array){for(let T of R)if(Win(T,d,h,c))return!1;return R.push(d),!0}else{let T=R;return Win(T,d,h,c)?!1:(g.set(S,[T,d]),!0)}})}var w1e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function RRs(s,c,g,d){function h(R){return UA(R)||ih(R)||nc(R)}let _=fo(c.node)||Zl(c.node)?nI(c.node):0,S=fo(s.node)||Zl(s.node)?nI(s.node):0;if(w1e[_]&&w1e[S]||h(s.node)&&w1e[_]||h(c.node)&&w1e[S]||pm(s.node)&&aHt(s.node)&&w1e[_]||pm(c.node)&&w1e[S]||pm(s.node)&&aHt(s.node)&&h(c.node)||pm(c.node)&&h(s.node)&&aHt(s.node)){let R=s.additionalNodes&&li(s.additionalNodes)||s.node;if(!pm(s.node)&&!pm(c.node)||h(s.node)||h(c.node)){let W=h(s.node)?s.node:h(c.node)?c.node:void 0;if(W!==void 0){let V=gn(me.createConstructorDeclaration(void 0,[],void 0),W),M=sHt(V);M.indent=s.indent+1,M.children=s.node===W?s.children:c.children,s.children=s.node===W?Nn([M],c.children||[c]):Nn(s.children||[{...s}],[M])}else(s.children||c.children)&&(s.children=Nn(s.children||[{...s}],c.children||[c]),s.children&&(Nnt(s.children,s),cHt(s.children)));R=s.node=gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),s.node)}else s.children=Nn(s.children,c.children),s.children&&Nnt(s.children,s);let T=c.node;return d.children[g-1].node.end===R.end?gn(R,{pos:R.pos,end:T.end}):(s.additionalNodes||(s.additionalNodes=[]),s.additionalNodes.push(gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return _!==0}function Win(s,c,g,d){return RRs(s,c,g,d)?!0:NRs(s.node,c.node,d)?(DRs(s,c),!0):!1}function NRs(s,c,g){if(s.kind!==c.kind||s.parent!==c.parent&&!(Oin(s,g)&&Oin(c,g)))return!1;switch(s.kind){case 173:case 175:case 178:case 179:return cg(s)===cg(c);case 268:return Min(s,c)&&gHt(s)===gHt(c);default:return!0}}function aHt(s){return!!(s.flags&16)}function Oin(s,c){if(s.parent===void 0)return!1;let g=_N(s.parent)?s.parent.parent:s.parent;return g===c.node||k(c.additionalNodes,g)}function Min(s,c){return!s.body||!c.body?s.body===c.body:s.body.kind===c.body.kind&&(s.body.kind!==268||Min(s.body,c.body))}function DRs(s,c){s.additionalNodes=s.additionalNodes||[],s.additionalNodes.push(c.node),c.additionalNodes&&s.additionalNodes.push(...c.additionalNodes),s.children=Nn(s.children,c.children),s.children&&(Nnt(s.children,s),cHt(s.children))}function cHt(s){s.sort(kRs)}function kRs(s,c){return so(Hin(s.node),Hin(c.node))||Zt(Rnt(s),Rnt(c))}function Hin(s){if(s.kind===268)return Qin(s);let c=Il(s);if(c&&VI(c)){let g=_3(c);return g&&Bc(g)}switch(s.kind){case 219:case 220:case 232:return Uin(s);default:return}}function lHt(s,c){if(s.kind===268)return epe(Qin(s));if(c){let g=Ir(c)?c.text:Yg(c)?`[${_Pe(c.argumentExpression)}]`:_Pe(c);if(g.length>0)return epe(g)}switch(s.kind){case 308:let g=s;return xm(g)?`"${YT(gp(s0(iu(g.fileName))))}"`:"";case 278:return Cf(s)&&s.isExportEquals?"export=":"default";case 220:case 263:case 219:case 264:case 232:return Nx(s)&2048?"default":Uin(s);case 177:return"constructor";case 181:return"new()";case 180:return"()";case 182:return"[]";default:return""}}function xRs(s){let c=[];function g(h){if(d(h)&&(c.push(h),h.children))for(let _ of h.children)g(_)}return g(s),c;function d(h){if(h.children)return!0;switch(Rnt(h)){case 264:case 232:case 267:case 265:case 268:case 308:case 266:case 347:case 339:return!0;case 220:case 263:case 219:return _(h);default:return!1}function _(S){if(!S.node.body)return!1;switch(Rnt(S.parent)){case 269:case 308:case 175:case 177:return!0;default:return!1}}}}function Yin(s){return{text:lHt(s.node,s.name),kind:pQ(s.node),kindModifiers:Jin(s.node),spans:uHt(s),nameSpan:s.name&&AHt(s.name),childItems:At(s.children,Yin)}}function GRs(s){return{text:lHt(s.node,s.name),kind:pQ(s.node),kindModifiers:Jin(s.node),spans:uHt(s),childItems:At(s.children,c)||iHt,indent:s.indent,bolded:!1,grayed:!1};function c(g){return{text:lHt(g.node,g.name),kind:pQ(g.node),kindModifiers:Yde(g.node),spans:uHt(g),childItems:iHt,indent:0,bolded:!1,grayed:!1}}}function uHt(s){let c=[AHt(s.node)];if(s.additionalNodes)for(let g of s.additionalNodes)c.push(AHt(g));return c}function Qin(s){return s_(s)?xp(s.name):gHt(s)}function gHt(s){let c=[c2(s.name)];for(;s.body&&s.body.kind===268;)s=s.body,c.push(c2(s.name));return c.join(".")}function Xin(s){return s.body&&xh(s.body)?Xin(s.body):s}function FRs(s){return!s.name||s.name.kind===168}function AHt(s){return s.kind===308?t9(s):Oy(s,B1e)}function Jin(s){return s.parent&&s.parent.kind===261&&(s=s.parent),Yde(s)}function Uin(s){let{parent:c}=s;if(s.name&&DJ(s.name)>0)return epe(Wd(s.name));if(nc(c))return epe(Wd(c.name));if(fo(c)&&c.operatorToken.kind===64)return _Pe(c.left).replace(TRs,"");if(fm(c))return _Pe(c.name);if(Nx(s)&2048)return"default";if(xa(s))return"";if(Zl(c)){let g=Kin(c.expression);if(g!==void 0){if(g=epe(g),g.length>nHt)return`${g} callback`;let d=epe(Xt(c.arguments,h=>mA(h)||AP(h)?h.getText(B1e):void 0).join(", "));return`${g}(${d}) callback`}}return""}function Kin(s){if(Ir(s))return s.text;if(jo(s)){let c=Kin(s.expression),g=s.name.text;return c===void 0?g:`${c}.${g}`}else return}function ZRs(s){switch(s.kind){case 220:case 219:case 232:return!0;default:return!1}}function epe(s){return s=s.length>nHt?s.substring(0,nHt)+"...":s,s.replace(/\\?(?:\r?\n|[\r\u2028\u2029])/g,"")}var Oz={};o(Oz,{addExportsInOldFile:()=>EHt,addImportsForMovedSymbols:()=>SHt,addNewFileToTsconfig:()=>bHt,addOrRemoveBracesToArrowFunction:()=>DNs,addTargetFileImports:()=>xHt,containsJsx:()=>wHt,convertArrowFunctionOrFunctionExpression:()=>ZNs,convertParamsToDestructuredObject:()=>JNs,convertStringOrTemplateLiteral:()=>gDs,convertToOptionalChainExpression:()=>yDs,createNewFileName:()=>BHt,doChangeNamedToNamespaceOrDefault:()=>tsn,extractSymbol:()=>Jsn,generateGetAccessorAndSetAccessor:()=>iks,getApplicableRefactors:()=>LRs,getEditsForRefactor:()=>VRs,getExistingLocals:()=>DHt,getIdentifierForNode:()=>kHt,getNewStatementsAndRemoveFromOldFile:()=>yHt,getStatementsToMove:()=>T1e,getUsageInfo:()=>yPe,inferFunctionReturnType:()=>sks,isInImport:()=>Pnt,isRefactorErrorInfo:()=>MF,refactorKindBeginsWith:()=>e5,registerRefactor:()=>Px});var dHt=new Map;function Px(s,c){dHt.set(s,c)}function LRs(s,c){return Do(xt(dHt.values(),g=>{var d;return s.cancellationToken&&s.cancellationToken.isCancellationRequested()||!((d=g.kinds)!=null&&d.some(h=>e5(h,s.kind)))?void 0:g.getAvailableActions(s,c)}))}function VRs(s,c,g,d){let h=dHt.get(c);return h&&h.getEditsForAction(s,g,d)}var pHt="Convert export",Dnt={name:"Convert default export to named export",description:Bu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},knt={name:"Convert named export to default export",description:Bu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};Px(pHt,{kinds:[Dnt.kind,knt.kind],getAvailableActions:function(c){let g=jin(c,c.triggerReason==="invoked");if(!g)return E;if(!MF(g)){let d=g.wasDefault?Dnt:knt;return[{name:pHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:pHt,description:Bu(Z.Convert_default_export_to_named_export),actions:[{...Dnt,notApplicableReason:g.error},{...knt,notApplicableReason:g.error}]}]:E},getEditsForAction:function(c,g){pe.assert(g===Dnt.name||g===knt.name,"Unexpected action name");let d=jin(c);return pe.assert(d&&!MF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>PRs(c.file,c.program,d,_,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function jin(s,c=!0){let{file:g,program:d}=s,h=Vz(s),_=Jc(g,h.start),S=_.parent&&Nx(_.parent)&32&&c?_.parent:f1e(_,g,h);if(!S||!ll(S.parent)&&!(_N(S.parent)&&s_(S.parent.parent)))return{error:Bu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),T=YRs(S.parent,R),W=Nx(S)||(Cf(S)&&!S.isExportEquals?2080:0),V=!!(W&2048);if(!(W&32)||!V&&T.exports.has("default"))return{error:Bu(Z.This_file_already_has_a_default_export)};let M=ee=>Ir(ee)&&R.getSymbolAtLocation(ee)?void 0:{error:Bu(Z.Can_only_convert_named_export)};switch(S.kind){case 263:case 264:case 265:case 267:case 266:case 268:{let ee=S;return ee.name?M(ee.name)||{exportNode:ee,exportName:ee.name,wasDefault:V,exportingModuleSymbol:T}:void 0}case 244:{let ee=S;if(!(ee.declarationList.flags&2)||ee.declarationList.declarations.length!==1)return;let re=ma(ee.declarationList.declarations);return re.initializer?(pe.assert(!V,"Can't have a default flag here"),M(re.name)||{exportNode:ee,exportName:re.name,wasDefault:V,exportingModuleSymbol:T}):void 0}case 278:{let ee=S;return ee.isExportEquals?void 0:M(ee.expression)||{exportNode:ee,exportName:ee.expression,wasDefault:V,exportingModuleSymbol:T}}default:return}}function PRs(s,c,g,d,h){WRs(s,g,d,c.getTypeChecker()),ORs(c,g,d,h)}function WRs(s,{wasDefault:c,exportNode:g,exportName:d},h,_){if(c)if(Cf(g)&&!g.isExportEquals){let S=g.expression,R=zin(S.text,S.text);h.replaceNode(s,g,me.createExportDeclaration(void 0,!1,me.createNamedExports([R])))}else h.delete(s,pe.checkDefined(Qie(g,90),"Should find a default keyword in modifier list"));else{let S=pe.checkDefined(Qie(g,95),"Should find an export keyword in modifier list");switch(g.kind){case 263:case 264:case 265:h.insertNodeAfter(s,S,me.createToken(90));break;case 244:let R=ma(g.declarationList.declarations);if(!Kp.Core.isSymbolReferencedInFile(d,_,s)&&!R.type){h.replaceNode(s,g,me.createExportDefault(pe.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 267:case 266:case 268:h.deleteModifier(s,S),h.insertNodeAfter(s,g,me.createExportDefault(me.createIdentifier(d.text)));break;default:pe.fail(`Unexpected exportNode kind ${g.kind}`)}}}function ORs(s,{wasDefault:c,exportName:g,exportingModuleSymbol:d},h,_){let S=s.getTypeChecker(),R=pe.checkDefined(S.getSymbolAtLocation(g),"Export name should resolve to a symbol");Kp.Core.eachExportReference(s.getSourceFiles(),S,_,R,d,g.text,c,T=>{if(g===T)return;let W=T.getSourceFile();c?MRs(W,T,h,g.text):HRs(W,T,h)})}function MRs(s,c,g,d){let{parent:h}=c;switch(h.kind){case 212:g.replaceNode(s,c,me.createIdentifier(d));break;case 277:case 282:{let S=h;g.replaceNode(s,S,fHt(d,S.name.text));break}case 274:{let S=h;pe.assert(S.name===c,"Import clause name should match provided ref");let R=fHt(d,c.text),{namedBindings:T}=S;if(!T)g.replaceNode(s,c,me.createNamedImports([R]));else if(T.kind===275){g.deleteRange(s,{pos:c.getStart(s),end:T.getStart(s)});let W=Zg(S.parent.moduleSpecifier)?Prt(S.parent.moduleSpecifier,s):1,V=QP(void 0,[fHt(d,c.text)],S.parent.moduleSpecifier,W);g.insertNodeAfter(s,S.parent,V)}else g.delete(s,c),g.insertNodeAtEndOfList(s,T.elements,R);break}case 206:let _=h;g.replaceNode(s,h,me.createImportTypeNode(_.argument,_.attributes,me.createIdentifier(d),_.typeArguments,_.isTypeOf));break;default:pe.failBadSyntaxKind(h)}}function HRs(s,c,g){let d=c.parent;switch(d.kind){case 212:g.replaceNode(s,c,me.createIdentifier("default"));break;case 277:{let h=me.createIdentifier(d.name.text);d.parent.elements.length===1?g.replaceNode(s,d.parent,h):(g.delete(s,d),g.insertNodeBefore(s,d.parent,h));break}case 282:{g.replaceNode(s,d,zin("default",d.name.text));break}default:pe.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function fHt(s,c){return me.createImportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function zin(s,c){return me.createExportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function YRs(s,c){if(ll(s))return s.symbol;let g=s.parent.symbol;return g.valueDeclaration&&_F(g.valueDeclaration)?c.getMergedSymbol(g):g}var IHt="Convert import",xnt={0:{name:"Convert namespace import to named imports",description:Bu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:Bu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:Bu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};Px(IHt,{kinds:Qh(xnt).map(s=>s.kind),getAvailableActions:function(c){let g=qin(c,c.triggerReason==="invoked");if(!g)return E;if(!MF(g)){let d=xnt[g.convertTo];return[{name:IHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?Qh(xnt).map(d=>({name:IHt,description:d.description,actions:[{...d,notApplicableReason:g.error}]})):E},getEditsForAction:function(c,g){pe.assert(jt(Qh(xnt),_=>_.name===g),"Unexpected action name");let d=qin(c);return pe.assert(d&&!MF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>QRs(c.file,c.program,_,d)),renameFilename:void 0,renameLocation:void 0}}});function qin(s,c=!0){let{file:g}=s,d=Vz(s),h=Jc(g,d.start),_=c?ji(h,Hp(Mf,SN)):f1e(h,g,d);if(_===void 0||!(Mf(_)||SN(_)))return{error:"Selection is not an import declaration."};let S=d.start+d.length,R=fQ(_,_.parent,g);if(R&&S>R.getStart())return;let{importClause:T}=_;return T?T.namedBindings?T.namedBindings.kind===275?{convertTo:0,import:T.namedBindings}:$in(s.program,T)?{convertTo:1,import:T.namedBindings}:{convertTo:2,import:T.namedBindings}:{error:Bu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:Bu(Z.Could_not_find_import_clause)}}function $in(s,c){return JY(s.getCompilerOptions())&&URs(c.parent.moduleSpecifier,s.getTypeChecker())}function QRs(s,c,g,d){let h=c.getTypeChecker();d.convertTo===0?XRs(s,h,g,d.import,JY(c.getCompilerOptions())):tsn(s,c,g,d.import,d.convertTo===1)}function XRs(s,c,g,d,h){let _=!1,S=[],R=new Map;Kp.Core.eachSymbolReferenceInFile(d.name,c,s,M=>{if(!SJ(M.parent))_=!0;else{let ee=esn(M.parent).text;c.resolveName(ee,M,-1,!0)&&R.set(ee,!0),pe.assert(JRs(M.parent)===M,"Parent expression should match id"),S.push(M.parent)}});let T=new Map;for(let M of S){let ee=esn(M).text,re=T.get(ee);re===void 0&&T.set(ee,re=R.has(ee)?GU(ee,s):ee),g.replaceNode(s,M,me.createIdentifier(re))}let W=[];T.forEach((M,ee)=>{W.push(me.createImportSpecifier(!1,M===ee?void 0:me.createIdentifier(ee),me.createIdentifier(M)))});let V=d.parent.parent;if(_&&!h&&Mf(V))g.insertNodeAfter(s,V,rsn(V,void 0,W));else{let M=_?me.createIdentifier(d.name.text):void 0;g.replaceNode(s,d.parent,nsn(M,W))}}function esn(s){return jo(s)?s.name:s.right}function JRs(s){return jo(s)?s.expression:s.left}function tsn(s,c,g,d,h=$in(c,d.parent)){let _=c.getTypeChecker(),S=d.parent.parent,{moduleSpecifier:R}=S,T=new Set;d.elements.forEach(ge=>{let Ie=_.getSymbolAtLocation(ge.name);Ie&&T.add(Ie)});let W=R&&Zg(R)?b1e(R.text,99):"module";function V(ge){return!!Kp.Core.eachSymbolReferenceInFile(ge.name,_,s,Ie=>{let _e=_.resolveName(W,Ie,-1,!0);return _e?T.has(_e)?R0(Ie.parent):!0:!1})}let ee=d.elements.some(V)?GU(W,s):W,re=new Set;for(let ge of d.elements){let Ie=ge.propertyName||ge.name;Kp.Core.eachSymbolReferenceInFile(ge.name,_,s,_e=>{let Ee=Ie.kind===11?me.createElementAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie)):me.createPropertyAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie));a0(_e.parent)?g.replaceNode(s,_e.parent,me.createPropertyAssignment(_e.text,Ee)):R0(_e.parent)?re.add(ge):g.replaceNode(s,_e,Ee)})}if(g.replaceNode(s,d,h?me.createIdentifier(ee):me.createNamespaceImport(me.createIdentifier(ee))),re.size&&Mf(S)){let ge=Do(re.values(),Ie=>me.createImportSpecifier(Ie.isTypeOnly,Ie.propertyName&&me.cloneNode(Ie.propertyName),me.cloneNode(Ie.name)));g.insertNodeAfter(s,d.parent.parent,rsn(S,void 0,ge))}}function URs(s,c){let g=c.resolveExternalModuleName(s);if(!g)return!1;let d=c.resolveExternalModuleSymbol(g);return g!==d}function rsn(s,c,g){return me.createImportDeclaration(void 0,nsn(c,g),s.moduleSpecifier,void 0)}function nsn(s,c){return me.createImportClause(void 0,s,c&&c.length?me.createNamedImports(c):void 0)}var hHt="Extract type",Gnt={name:"Extract to type alias",description:Bu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},Fnt={name:"Extract to interface",description:Bu(Z.Extract_to_interface),kind:"refactor.extract.interface"},Znt={name:"Extract to typedef",description:Bu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};Px(hHt,{kinds:[Gnt.kind,Fnt.kind,Znt.kind],getAvailableActions:function(c){let{info:g,affectedTextRange:d}=isn(c,c.triggerReason==="invoked");return g?MF(g)?c.preferences.provideRefactorNotApplicableReason?[{name:hHt,description:Bu(Z.Extract_type),actions:[{...Znt,notApplicableReason:g.error},{...Gnt,notApplicableReason:g.error},{...Fnt,notApplicableReason:g.error}]}]:E:[{name:hHt,description:Bu(Z.Extract_type),actions:g.isJS?[Znt]:Ft([Gnt],g.typeElements&&Fnt)}].map(_=>({..._,actions:_.actions.map(S=>({...S,range:d?{start:{line:Ra(c.file,d.pos).line,offset:Ra(c.file,d.pos).character},end:{line:Ra(c.file,d.end).line,offset:Ra(c.file,d.end).character}}:void 0}))})):E},getEditsForAction:function(c,g){let{file:d}=c,{info:h}=isn(c);pe.assert(h&&!MF(h),"Expected to find a range to extract");let _=GU("NewType",d),S=xo.ChangeTracker.with(c,W=>{switch(g){case Gnt.name:return pe.assert(!h.isJS,"Invalid actionName/JS combo"),zRs(W,d,_,h);case Znt.name:return pe.assert(h.isJS,"Invalid actionName/JS combo"),$Rs(W,c,d,_,h);case Fnt.name:return pe.assert(!h.isJS&&!!h.typeElements,"Invalid actionName/JS combo"),qRs(W,d,_,h);default:pe.fail("Unexpected action name")}}),R=d.fileName,T=h1e(S,R,_,!1);return{edits:S,renameFilename:R,renameLocation:T}}});function isn(s,c=!0){let{file:g,startPosition:d}=s,h=n0(g),_=QVe(Vz(s)),S=_.pos===_.end&&c,R=KRs(g,d,_,S);if(!R||!uc(R))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let T=s.program.getTypeChecker(),W=eNs(R,h);if(W===void 0)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let V=tNs(R,W);if(!uc(V))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let M=[];(aS(V.parent)||mf(V.parent))&&_.end>R.end&&Or(M,V.parent.types.filter(_e=>ZVe(_e,g,_.pos,_.end)));let ee=M.length>1?M:V,{typeParameters:re,affectedTextRange:ge}=jRs(T,ee,W,g);if(!re)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ie=Lnt(T,ee);return{info:{isJS:h,selection:ee,enclosingNode:W,typeParameters:re,typeElements:Ie},affectedTextRange:ge}}function KRs(s,c,g,d){let h=[()=>Jc(s,c),()=>Hie(s,c,()=>!0)];for(let _ of h){let S=_(),R=ZVe(S,s,g.pos,g.end),T=ji(S,W=>W.parent&&uc(W)&&!CQ(g,W.parent,s)&&(d||R));if(T)return T}}function Lnt(s,c){if(c){if(Ki(c)){let g=[];for(let d of c){let h=Lnt(s,d);if(!h)return;Or(g,h)}return g}if(mf(c)){let g=[],d=new Set;for(let h of c.types){let _=Lnt(s,h);if(!_||!_.every(S=>S.name&&Zy(d,d1e(S.name))))return;Or(g,_)}return g}else{if(fv(c))return Lnt(s,c.type);if(mh(c))return c.members}}}function CQ(s,c,g){return c1e(s,Yu(g.text,c.pos),c.end)}function jRs(s,c,g,d){let h=[],_=cc(c),S={pos:_[0].getStart(d),end:_[_.length-1].end};for(let T of _)if(R(T))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:h,affectedTextRange:S};function R(T){if(nh(T)){if(Ir(T.typeName)){let W=T.typeName,V=s.resolveName(W.text,W,262144,!0);for(let M of V?.declarations||E)if(Ds(M)&&M.getSourceFile()===d){if(M.name.escapedText===W.escapedText&&CQ(M,S,d))return!0;if(CQ(g,M,d)&&!CQ(S,M,d)){Qi(h,M);break}}}}else if(jT(T)){let W=ji(T,V=>d2(V)&&CQ(V.extendsType,T,d));if(!W||!CQ(S,W,d))return!0}else if(bE(T)||Fx(T)){let W=ji(T.parent,bu);if(W&&W.type&&CQ(W.type,T,d)&&!CQ(S,W,d))return!0}else if(Fw(T)){if(Ir(T.exprName)){let W=s.resolveName(T.exprName.text,T.exprName,111551,!1);if(W?.valueDeclaration&&CQ(g,W.valueDeclaration,d)&&!CQ(S,W.valueDeclaration,d))return!0}else if(vF(T.exprName.left)&&!CQ(S,T.parent,d))return!0}return d&&Zw(T)&&Ra(d,T.pos).line===Ra(d,T.end).line&&ti(T,1),Lu(T,R)}}function zRs(s,c,g,d){let{enclosingNode:h,typeParameters:_}=d,{firstTypeNode:S,lastTypeNode:R,newTypeNode:T}=mHt(d),W=me.createTypeAliasDeclaration(void 0,g,_.map(V=>me.updateTypeParameterDeclaration(V,V.modifiers,V.name,V.constraint,void 0)),T);s.insertNodeBefore(c,h,$be(W),!0),s.replaceNodeRange(c,S,R,me.createTypeReferenceNode(g,_.map(V=>me.createTypeReferenceNode(V.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function qRs(s,c,g,d){var h;let{enclosingNode:_,typeParameters:S,typeElements:R}=d,T=me.createInterfaceDeclaration(void 0,g,S,void 0,R);gn(T,(h=R[0])==null?void 0:h.parent),s.insertNodeBefore(c,_,$be(T),!0);let{firstTypeNode:W,lastTypeNode:V}=mHt(d);s.replaceNodeRange(c,W,V,me.createTypeReferenceNode(g,S.map(M=>me.createTypeReferenceNode(M.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function $Rs(s,c,g,d,h){var _;cc(h.selection).forEach(ge=>{ti(ge,7168)});let{enclosingNode:S,typeParameters:R}=h,{firstTypeNode:T,lastTypeNode:W,newTypeNode:V}=mHt(h),M=me.createJSDocTypedefTag(me.createIdentifier("typedef"),me.createJSDocTypeExpression(V),me.createIdentifier(d)),ee=[];F(R,ge=>{let Ie=n3(ge),_e=me.createTypeParameterDeclaration(void 0,ge.name),Ee=me.createJSDocTemplateTag(me.createIdentifier("template"),Ie&&Ma(Ie,W3),[_e]);ee.push(Ee)});let re=me.createJSDocComment(void 0,me.createNodeArray(Nn(ee,[M])));if(tR(S)){let ge=S.getStart(g),Ie=OF(c.host,(_=c.formatContext)==null?void 0:_.options);s.insertNodeAt(g,S.getStart(g),re,{suffix:Ie+Ie+g.text.slice($Ve(g.text,ge-1),ge)})}else s.insertNodeBefore(g,S,re,!0);s.replaceNodeRange(g,T,W,me.createTypeReferenceNode(d,R.map(ge=>me.createTypeReferenceNode(ge.name,void 0))))}function mHt(s){return Ki(s.selection)?{firstTypeNode:s.selection[0],lastTypeNode:s.selection[s.selection.length-1],newTypeNode:aS(s.selection[0].parent)?me.createUnionTypeNode(s.selection):me.createIntersectionTypeNode(s.selection)}:{firstTypeNode:s.selection,lastTypeNode:s.selection,newTypeNode:s.selection}}function eNs(s,c){return ji(s,Lc)||(c?ji(s,tR):void 0)}function tNs(s,c){return ji(s,g=>g===c?"quit":!!(aS(g.parent)||mf(g.parent)))??s}var Vnt="Move to file",CHt=Bu(Z.Move_to_file),_Ht={name:"Move to file",description:CHt,kind:"refactor.move.file"};Px(Vnt,{kinds:[_Ht.kind],getAvailableActions:function(c,g){let d=c.file,h=T1e(c);if(!g)return E;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let _=ji(Jc(d,c.startPosition),Pz),S=ji(Jc(d,c.endPosition),Pz);if(_&&!ll(_)&&S&&!ll(S))return E}if(c.preferences.allowTextChangesInNewFiles&&h){let _={start:{line:Ra(d,h.all[0].getStart(d)).line,offset:Ra(d,h.all[0].getStart(d)).character},end:{line:Ra(d,Ei(h.all).end).line,offset:Ra(d,Ei(h.all).end).character}};return[{name:Vnt,description:CHt,actions:[{..._Ht,range:_}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:Vnt,description:CHt,actions:[{..._Ht,notApplicableReason:Bu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:E},getEditsForAction:function(c,g,d){pe.assert(g===Vnt,"Wrong refactor invoked");let h=pe.checkDefined(T1e(c)),{host:_,program:S}=c;pe.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return pN(R)||w3(R)?_.fileExists(R)&&S.getSourceFile(R)===void 0?ssn(Bu(Z.Cannot_move_statements_to_the_selected_file)):{edits:xo.ChangeTracker.with(c,W=>rNs(c,c.file,d.targetFile,c.program,h,W,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:ssn(Bu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function ssn(s){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:s}}function rNs(s,c,g,d,h,_,S,R){let T=d.getTypeChecker(),W=!S.fileExists(g),V=W?dPe(g,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,S):pe.checkDefined(d.getSourceFile(g)),M=x0.createImportAdder(c,s.program,s.preferences,s.host),ee=x0.createImportAdder(V,s.program,s.preferences,s.host);yHt(c,V,yPe(c,h.all,T,W?void 0:DHt(V,h.all,T)),_,h,d,S,R,ee,M),W&&bHt(d,_,c.fileName,g,JD(S))}function yHt(s,c,g,d,h,_,S,R,T,W){let V=_.getTypeChecker(),M=t_(s.statements,nS),ee=!gnt(c.fileName,_,S,!!s.commonJsModuleIndicator),re=_1(s,R);SHt(g.oldFileImportsFromTargetFile,c.fileName,W,_),iNs(s,h.all,g.unusedImportsFromOldFile,W),W.writeFixes(d,re),nNs(s,h.ranges,d),sNs(d,_,S,s,g.movedSymbols,c.fileName,re),EHt(s,g.targetFileImportsFromOldFile,d,ee),xHt(s,g.oldImportsNeededByTargetFile,g.targetFileImportsFromOldFile,V,_,T),!aN(c)&&M.length&&d.insertStatementsInNewFile(c.fileName,M,s),T.writeFixes(d,re);let ge=gNs(s,h.all,Do(g.oldFileImportsFromTargetFile.keys()),ee);aN(c)&&c.statements.length>0?wNs(d,_,ge,c,h):aN(c)?d.insertNodesAtEndOfFile(c,ge,!1):d.insertStatementsInNewFile(c.fileName,T.hasFixes()?[4,...ge]:ge,s)}function bHt(s,c,g,d,h){let _=s.getCompilerOptions().configFile;if(!_)return;let S=iu(Ro(g,"..",d)),R=i1(_.fileName,S,h),T=_.statements[0]&&Gs(_.statements[0].expression,og),W=T&&de(T.properties,V=>fm(V)&&Zg(V.name)&&V.name.text==="files");W&&OI(W.initializer)&&c.insertNodeInListAfter(_,Ei(W.initializer.elements),me.createStringLiteral(R),W.initializer.elements)}function nNs(s,c,g){for(let{first:d,afterLast:h}of c)g.deleteNodeRangeExcludingEnd(s,d,h)}function iNs(s,c,g,d){for(let h of s.statements)k(c,h)||asn(h,_=>{csn(_,S=>{g.has(S.symbol)&&d.removeExistingImport(S)})})}function EHt(s,c,g,d){let h=Yie();c.forEach((_,S)=>{if(S.declarations)for(let R of S.declarations){if(!NHt(R))continue;let T=CNs(R);if(!T)continue;let W=Asn(R);h(W)&&_Ns(s,W,T,g,d)}})}function sNs(s,c,g,d,h,_,S){let R=c.getTypeChecker();for(let T of c.getSourceFiles())if(T!==d)for(let W of T.statements)asn(W,V=>{if(R.getSymbolAtLocation(lNs(V))!==d.symbol)return;let M=_e=>{let Ee=hg(_e.parent)?zVe(R,_e.parent):FC(R.getSymbolAtLocation(_e),R);return!!Ee&&h.has(Ee)};ANs(T,V,s,M);let ee=AE(Mo(Xc(d.fileName,c.getCurrentDirectory())),_);if(ld(!c.useCaseSensitiveFileNames())(ee,T.fileName)===0)return;let re=WF.getModuleSpecifier(c.getCompilerOptions(),T,T.fileName,ee,z3(c,g)),ge=INs(V,Xde(re,S),M);ge&&s.insertNodeAfter(T,W,ge);let Ie=oNs(V);Ie&&aNs(s,T,R,h,re,Ie,V,S)})}function oNs(s){switch(s.kind){case 273:return s.importClause&&s.importClause.namedBindings&&s.importClause.namedBindings.kind===275?s.importClause.namedBindings.name:void 0;case 272:return s.name;case 261:return Gs(s.name,Ir);default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function aNs(s,c,g,d,h,_,S,R){let T=b1e(h,99),W=!1,V=[];if(Kp.Core.eachSymbolReferenceInFile(_,g,c,M=>{jo(M.parent)&&(W=W||!!g.resolveName(T,M,-1,!0),d.has(g.getSymbolAtLocation(M.parent.name))&&V.push(M))}),V.length){let M=W?GU(T,c):T;for(let ee of V)s.replaceNode(c,ee,me.createIdentifier(M));s.insertNodeAfter(c,S,cNs(S,T,h,R))}}function cNs(s,c,g,d){let h=me.createIdentifier(c),_=Xde(g,d);switch(s.kind){case 273:return me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamespaceImport(h)),_,void 0);case 272:return me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(_));case 261:return me.createVariableDeclaration(h,void 0,void 0,osn(_));default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function osn(s){return me.createCallExpression(me.createIdentifier("require"),void 0,[s])}function lNs(s){return s.kind===273?s.moduleSpecifier:s.kind===272?s.moduleReference.expression:s.initializer.arguments[0]}function asn(s,c){if(Mf(s))Zg(s.moduleSpecifier)&&c(s);else if(km(s))ZF(s.moduleReference)&&mA(s.moduleReference.expression)&&c(s);else if(Ch(s))for(let g of s.declarationList.declarations)g.initializer&&ay(g.initializer,!0)&&c(g)}function csn(s,c){var g,d,h,_,S;if(s.kind===273){if((g=s.importClause)!=null&&g.name&&c(s.importClause),((h=(d=s.importClause)==null?void 0:d.namedBindings)==null?void 0:h.kind)===275&&c(s.importClause.namedBindings),((S=(_=s.importClause)==null?void 0:_.namedBindings)==null?void 0:S.kind)===276)for(let R of s.importClause.namedBindings.elements)c(R)}else if(s.kind===272)c(s);else if(s.kind===261){if(s.name.kind===80)c(s);else if(s.name.kind===207)for(let R of s.name.elements)Ir(R.name)&&c(R)}}function SHt(s,c,g,d){for(let[h,_]of s){let S=cPe(h,Mg(d.getCompilerOptions())),R=h.name==="default"&&h.parent?1:0;g.addImportForNonExistentExport(S,c,R,h.flags,_)}}function uNs(s,c,g,d=2){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(s,void 0,c,g)],d))}function gNs(s,c,g,d){return er(c,h=>{if(usn(h)&&!lsn(s,h,d)&&RHt(h,_=>{var S;return g.includes(pe.checkDefined((S=Gs(_,mE))==null?void 0:S.symbol))})){let _=dNs(JA(h),d);if(_)return _}return JA(h)})}function lsn(s,c,g,d){var h;return g?!VC(c)&&Ga(c,32)||!!(d&&s.symbol&&((h=s.symbol.exports)!=null&&h.has(d.escapedText))):!!s.symbol&&!!s.symbol.exports&&vHt(c).some(_=>s.symbol.exports.has(Ap(_)))}function ANs(s,c,g,d){if(c.kind===273&&c.importClause){let{name:h,namedBindings:_}=c.importClause;if((!h||d(h))&&(!_||_.kind===276&&_.elements.length!==0&&_.elements.every(S=>d(S.name))))return g.delete(s,c)}csn(c,h=>{h.name&&Ir(h.name)&&d(h.name)&&g.delete(s,h)})}function usn(s){return pe.assert(ll(s.parent),"Node parent should be a SourceFile"),fsn(s)||Ch(s)}function dNs(s,c){return c?[pNs(s)]:fNs(s)}function pNs(s){let c=LB(s)?Nn([me.createModifier(95)],$R(s)):void 0;switch(s.kind){case 263:return me.updateFunctionDeclaration(s,c,s.asteriskToken,s.name,s.typeParameters,s.parameters,s.type,s.body);case 264:let g=oQ(s)?Rb(s):void 0;return me.updateClassDeclaration(s,Nn(g,c),s.name,s.typeParameters,s.heritageClauses,s.members);case 244:return me.updateVariableStatement(s,c,s.declarationList);case 268:return me.updateModuleDeclaration(s,c,s.name,s.body);case 267:return me.updateEnumDeclaration(s,c,s.name,s.members);case 266:return me.updateTypeAliasDeclaration(s,c,s.name,s.typeParameters,s.type);case 265:return me.updateInterfaceDeclaration(s,c,s.name,s.typeParameters,s.heritageClauses,s.members);case 272:return me.updateImportEqualsDeclaration(s,c,s.isTypeOnly,s.name,s.moduleReference);case 245:return pe.fail();default:return pe.assertNever(s,`Unexpected declaration kind ${s.kind}`)}}function fNs(s){return[s,...vHt(s).map(gsn)]}function gsn(s){return me.createExpressionStatement(me.createBinaryExpression(me.createPropertyAccessExpression(me.createIdentifier("exports"),me.createIdentifier(s)),64,me.createIdentifier(s)))}function vHt(s){switch(s.kind){case 263:case 264:return[s.name.text];case 244:return Xt(s.declarationList.declarations,c=>Ir(c.name)?c.name.text:void 0);case 268:case 267:case 266:case 265:case 272:return E;case 245:return pe.fail("Can't export an ExpressionStatement");default:return pe.assertNever(s,`Unexpected decl kind ${s.kind}`)}}function INs(s,c,g){switch(s.kind){case 273:{let d=s.importClause;if(!d)return;let h=d.name&&g(d.name)?d.name:void 0,_=d.namedBindings&&hNs(d.namedBindings,g);return h||_?me.createImportDeclaration(void 0,me.createImportClause(d.phaseModifier,h,_),JA(c),void 0):void 0}case 272:return g(s.name)?s:void 0;case 261:{let d=mNs(s.name,g);return d?uNs(d,s.type,osn(c),s.parent.flags):void 0}default:return pe.assertNever(s,`Unexpected import kind ${s.kind}`)}}function hNs(s,c){if(s.kind===275)return c(s.name)?s:void 0;{let g=s.elements.filter(d=>c(d.name));return g.length?me.createNamedImports(g):void 0}}function mNs(s,c){switch(s.kind){case 80:return c(s)?s:void 0;case 208:return s;case 207:{let g=s.elements.filter(d=>d.propertyName||!Ir(d.name)||c(d.name));return g.length?me.createObjectBindingPattern(g):void 0}}}function CNs(s){return VC(s)?Gs(s.expression.left.name,Ir):Gs(s.name,Ir)}function Asn(s){switch(s.kind){case 261:return s.parent.parent;case 209:return Asn(Ma(s.parent.parent,c=>nc(c)||hg(c)));default:return s}}function _Ns(s,c,g,d,h){if(!lsn(s,c,h,g))if(h)VC(c)||d.insertExportModifier(s,c);else{let _=vHt(c);_.length!==0&&d.insertNodesAfter(s,c,_.map(gsn))}}function BHt(s,c,g,d){let h=c.getTypeChecker();if(d){let _=yPe(s,d.all,h),S=Mo(s.fileName),R=tz(s.fileName);return Ro(S,SNs(vNs(_.oldFileImportsFromTargetFile,_.movedSymbols),R,S,g))+R}return""}function yNs(s){let{file:c}=s,g=QVe(Vz(s)),{statements:d}=c,h=Se(d,W=>W.end>g.pos);if(h===-1)return;let _=d[h],S=Isn(c,_);S&&(h=S.start);let R=Se(d,W=>W.end>=g.end,h);R!==-1&&g.end<=d[R].getStart()&&R--;let T=Isn(c,d[R]);return T&&(R=T.end),{toMove:d.slice(h,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function T1e(s){let c=yNs(s);if(c===void 0)return;let g=[],d=[],{toMove:h,afterLast:_}=c;return Fn(h,bNs,(S,R)=>{for(let T=S;T!!(c.transformFlags&2))}function bNs(s){return!ENs(s)&&!nS(s)}function ENs(s){switch(s.kind){case 273:return!0;case 272:return!Ga(s,32);case 244:return s.declarationList.declarations.every(c=>!!c.initializer&&ay(c.initializer,!0));default:return!1}}function yPe(s,c,g,d=new Set,h){var _;let S=new Set,R=new Map,T=new Map,W=ee(wHt(c));W&&R.set(W,[!1,Gs((_=W.declarations)==null?void 0:_[0],re=>uy(re)||Vw(re)||Zx(re)||km(re)||hg(re)||nc(re))]);for(let re of c)RHt(re,ge=>{S.add(pe.checkDefined(VC(ge)?g.getSymbolAtLocation(ge.expression.left):ge.symbol,"Need a symbol here"))});let V=new Set;for(let re of c)THt(re,g,h,(ge,Ie)=>{if(!jt(ge.declarations))return;if(d.has(FC(ge,g))){V.add(ge);return}let _e=de(ge.declarations,Pnt);if(_e){let Ee=R.get(ge);R.set(ge,[(Ee===void 0||Ee)&&Ie,Gs(_e,Ne=>uy(Ne)||Vw(Ne)||Zx(Ne)||km(Ne)||hg(Ne)||nc(Ne))])}else!S.has(ge)&&ue(ge.declarations,Ee=>NHt(Ee)&&BNs(Ee)===s)&&T.set(ge,Ie)});for(let re of R.keys())V.add(re);let M=new Map;for(let re of s.statements)k(c,re)||(W&&re.transformFlags&2&&V.delete(W),THt(re,g,h,(ge,Ie)=>{S.has(ge)&&M.set(ge,Ie),V.delete(ge)}));return{movedSymbols:S,targetFileImportsFromOldFile:T,oldFileImportsFromTargetFile:M,oldImportsNeededByTargetFile:R,unusedImportsFromOldFile:V};function ee(re){if(re===void 0)return;let ge=g.getJsxNamespace(re),Ie=g.resolveName(ge,re,1920,!0);return Ie&&jt(Ie.declarations,Pnt)?Ie:void 0}}function SNs(s,c,g,d){let h=s;for(let _=1;;_++){let S=Ro(g,h+c);if(!d.fileExists(S))return h;h=`${s}.${_}`}}function vNs(s,c){return SB(s,Ort)||SB(c,Ort)||"newFile"}function THt(s,c,g,d){s.forEachChild(function h(_){if(Ir(_)&&!HT(_)){if(g&&!cy(g,_))return;let S=c.getSymbolAtLocation(_);S&&d(S,JL(_))}else _.forEachChild(h)})}function RHt(s,c){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return c(s);case 244:return X(s.declarationList.declarations,g=>psn(g.name,c));case 245:{let{expression:g}=s;return fo(g)&&nI(g)===1?c(s):void 0}}}function Pnt(s){switch(s.kind){case 272:case 277:case 274:case 275:return!0;case 261:return dsn(s);case 209:return nc(s.parent.parent)&&dsn(s.parent.parent);default:return!1}}function dsn(s){return ll(s.parent.parent.parent)&&!!s.initializer&&ay(s.initializer,!0)}function NHt(s){return fsn(s)&&ll(s.parent)||nc(s)&&ll(s.parent.parent.parent)}function BNs(s){return nc(s)?s.parent.parent.parent:s.parent}function psn(s,c){switch(s.kind){case 80:return c(Ma(s.parent,g=>nc(g)||hg(g)));case 208:case 207:return X(s.elements,g=>yp(g)?void 0:psn(g.name,c));default:return pe.assertNever(s,`Unexpected name kind ${s.kind}`)}}function fsn(s){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return!0;default:return!1}}function wNs(s,c,g,d,h){var _;let S=new Set,R=(_=d.symbol)==null?void 0:_.exports;if(R){let W=c.getTypeChecker(),V=new Map;for(let M of h.all)usn(M)&&Ga(M,32)&&RHt(M,ee=>{var re;let ge=mE(ee)?(re=R.get(ee.symbol.escapedName))==null?void 0:re.declarations:void 0,Ie=X(ge,_e=>Gh(_e)?_e:R0(_e)?Gs(_e.parent.parent,Gh):void 0);Ie&&Ie.moduleSpecifier&&V.set(Ie,(V.get(Ie)||new Set).add(ee))});for(let[M,ee]of Do(V))if(M.exportClause&&mv(M.exportClause)&&B(M.exportClause.elements)){let re=M.exportClause.elements,ge=Me(re,Ie=>de(FC(Ie.symbol,W).declarations,_e=>NHt(_e)&&ee.has(_e))===void 0);if(B(ge)===0){s.deleteNode(d,M),S.add(M);continue}B(ge)Gh(W)&&!!W.moduleSpecifier&&!S.has(W));T?s.insertNodesBefore(d,T,g,!0):s.insertNodesAfter(d,d.statements[d.statements.length-1],g)}function Isn(s,c){if(kd(c)){let g=c.symbol.declarations;if(g===void 0||B(g)<=1||!k(g,c))return;let d=g[0],h=g[B(g)-1],_=Xt(g,T=>ms(T)===s&&Lc(T)?T:void 0),S=Se(s.statements,T=>T.end>=h.end),R=Se(s.statements,T=>T.end>=d.end);return{toMove:_,start:R,end:S}}}function DHt(s,c,g){let d=new Set;for(let h of s.imports){let _=v7(h);if(Mf(_)&&_.importClause&&_.importClause.namedBindings&&yN(_.importClause.namedBindings))for(let S of _.importClause.namedBindings.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(FC(R,g))}if(y7(_.parent)&&Km(_.parent.name))for(let S of _.parent.name.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(FC(R,g))}}for(let h of c)THt(h,g,void 0,_=>{let S=FC(_,g);S.valueDeclaration&&ms(S.valueDeclaration).path===s.path&&d.add(S)});return d}function MF(s){return s.error!==void 0}function e5(s,c){return c?s.substr(0,c.length)===c:!0}function kHt(s,c,g,d){return jo(s)&&!xa(c)&&!g.resolveName(s.name.text,s,111551,!1)&&!p(s.name)&&!iv(s.name)?s.name.text:GU(xa(c)?"newProperty":"newLocal",d)}function xHt(s,c,g,d,h,_){c.forEach(([S,R],T)=>{var W;let V=FC(T,d);d.isUnknownSymbol(V)?_.addVerbatimImport(pe.checkDefined(R??ji((W=T.declarations)==null?void 0:W[0],d7))):V.parent===void 0?(pe.assert(R!==void 0,"expected module symbol to have a declaration"),_.addImportForModuleSymbol(T,S,R)):_.addImportFromExportedSymbol(V,S,R)}),SHt(g,s.fileName,_,h)}var bPe="Inline variable",GHt=Bu(Z.Inline_variable),FHt={name:bPe,description:GHt,kind:"refactor.inline.variable"};Px(bPe,{kinds:[FHt.kind],getAvailableActions(s){let{file:c,program:g,preferences:d,startPosition:h,triggerReason:_}=s,S=hsn(c,h,_==="invoked",g);return S?Oz.isRefactorErrorInfo(S)?d.provideRefactorNotApplicableReason?[{name:bPe,description:GHt,actions:[{...FHt,notApplicableReason:S.error}]}]:E:[{name:bPe,description:GHt,actions:[FHt]}]:E},getEditsForAction(s,c){pe.assert(c===bPe,"Unexpected refactor invoked");let{file:g,program:d,startPosition:h}=s,_=hsn(g,h,!0,d);if(!_||Oz.isRefactorErrorInfo(_))return;let{references:S,declaration:R,replacement:T}=_;return{edits:xo.ChangeTracker.with(s,V=>{for(let M of S){let ee=Zg(T)&&Ir(M)&&gv(M.parent);ee&&die(ee)&&!MI(ee.parent.parent)?RNs(V,g,ee,T):V.replaceNode(g,M,TNs(M,T))}V.delete(g,R)})}}});function hsn(s,c,g,d){var h,_;let S=d.getTypeChecker(),R=Lb(s,c),T=R.parent;if(Ir(R)){if(xne(T)&&h7(T)&&Ir(T.name)){if(((h=S.getMergedSymbol(T.symbol).declarations)==null?void 0:h.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(msn(T))return;let W=Csn(T,S,s);return W&&{references:W,declaration:T,replacement:T.initializer}}if(g){let W=S.resolveName(R.text,R,111551,!1);if(W=W&&S.getMergedSymbol(W),((_=W?.declarations)==null?void 0:_.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let V=W.declarations[0];if(!xne(V)||!h7(V)||!Ir(V.name)||msn(V))return;let M=Csn(V,S,s);return M&&{references:M,declaration:V,replacement:V.initializer}}return{error:Bu(Z.Could_not_find_variable_to_inline)}}}function msn(s){let c=Ma(s.parent.parent,Ch);return jt(c.modifiers,y)}function Csn(s,c,g){let d=[],h=Kp.Core.eachSymbolReferenceInFile(s.name,c,g,_=>{if(Kp.isWriteAccessForReference(_)&&!a0(_.parent)||R0(_.parent)||Cf(_.parent)||Fw(_.parent)||sl(s,_.pos))return!0;d.push(_)});return d.length===0||h?void 0:d}function TNs(s,c){c=JA(c);let{parent:g}=s;return un(g)&&(x7(c)NNs(c.file,c.program,d,_,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function NNs(s,c,g,d,h,_,S){let R=c.getTypeChecker(),T=yPe(s,g.all,R),W=BHt(s,c,h,g),V=dPe(W,s.externalModuleIndicator?99:s.commonJsModuleIndicator?1:void 0,c,h),M=x0.createImportAdder(s,_.program,_.preferences,_.host),ee=x0.createImportAdder(V,_.program,_.preferences,_.host);yHt(s,V,T,d,g,c,h,S,ee,M),bHt(c,d,s.fileName,W,JD(h))}var DNs={},VHt="Convert overload list to single signature",_sn=Bu(Z.Convert_overload_list_to_single_signature),ysn={name:VHt,description:_sn,kind:"refactor.rewrite.function.overloadList"};Px(VHt,{kinds:[ysn.kind],getEditsForAction:xNs,getAvailableActions:kNs});function kNs(s){let{file:c,startPosition:g,program:d}=s;return Esn(c,g,d)?[{name:VHt,description:_sn,actions:[ysn]}]:E}function xNs(s){let{file:c,startPosition:g,program:d}=s,h=Esn(c,g,d);if(!h)return;let _=d.getTypeChecker(),S=h[h.length-1],R=S;switch(S.kind){case 174:{R=me.updateMethodSignature(S,S.modifiers,S.name,S.questionToken,S.typeParameters,W(h),S.type);break}case 175:{R=me.updateMethodDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.questionToken,S.typeParameters,W(h),S.type,S.body);break}case 180:{R=me.updateCallSignature(S,S.typeParameters,W(h),S.type);break}case 177:{R=me.updateConstructorDeclaration(S,S.modifiers,W(h),S.body);break}case 181:{R=me.updateConstructSignature(S,S.typeParameters,W(h),S.type);break}case 263:{R=me.updateFunctionDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.typeParameters,W(h),S.type,S.body);break}default:return pe.failBadSyntaxKind(S,"Unhandled signature kind in overload list conversion refactoring")}if(R===S)return;return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,ee=>{ee.replaceNodeRange(c,h[0],h[h.length-1],R)})};function W(ee){let re=ee[ee.length-1];return kd(re)&&re.body&&(ee=ee.slice(0,ee.length-1)),me.createNodeArray([me.createParameterDeclaration(void 0,me.createToken(26),"args",void 0,me.createUnionTypeNode(At(ee,V)))])}function V(ee){let re=At(ee.parameters,M);return ti(me.createTupleTypeNode(re),jt(re,ge=>!!B(k3(ge)))?0:1)}function M(ee){pe.assert(Ir(ee.name));let re=gn(me.createNamedTupleMember(ee.dotDotDotToken,ee.name,ee.questionToken,ee.type||me.createKeywordTypeNode(133)),ee),ge=ee.symbol&&ee.symbol.getDocumentationComment(_);if(ge){let Ie=D1e(ge);Ie.length&&kB(re,[{text:`* +}`,_Pe="lib.d.ts",rHt;function kin(s,c,g){rHt??(rHt=vz(_Pe,LRs,{languageVersion:99}));let d=[],h=c.compilerOptions?Rnt(c.compilerOptions,d):{},_=xPe();for(let Ie in _)Da(_,Ie)&&h[Ie]===void 0&&(h[Ie]=_[Ie]);for(let Ie of wWt)h.verbatimModuleSyntax&&ZRs.has(Ie.name)||(h[Ie.name]=Ie.transpileOptionValue);h.suppressOutputPathCheck=!0,h.allowNonTsExtensions=!0,g?(h.declaration=!0,h.emitDeclarationOnly=!0,h.isolatedDeclarations=!0):(h.declaration=!1,h.declarationMap=!1);let S=uN(h),R={getSourceFile:Ie=>Ie===iu(T)?W:Ie===iu(_Pe)?rHt:void 0,writeFile:(Ie,_e)=>{aA(Ie,".map")?(pe.assertEqual(M,void 0,"Unexpected multiple source map outputs, file:",Ie),M=_e):(pe.assertEqual(V,void 0,"Unexpected multiple outputs, file:",Ie),V=_e)},getDefaultLibFileName:()=>_Pe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ie=>Ie,getCurrentDirectory:()=>"",getNewLine:()=>S,fileExists:Ie=>Ie===T||!!g&&Ie===_Pe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},T=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),W=vz(T,s,{languageVersion:Mg(h),impliedNodeFormat:UEe(Ou(T,"",R.getCanonicalFileName),void 0,R,h),setExternalModuleIndicator:Vne(h),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(W.moduleName=c.moduleName),c.renamedDependencies&&(W.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let V,M,re=KEe(g?[T,_Pe]:[T],h,R);c.reportDiagnostics&&(Or(d,re.getSyntacticDiagnostics(W)),Or(d,re.getOptionsDiagnostics()));let ge=re.emit(void 0,void 0,void 0,g,c.transformers,g);return Or(d,ge.diagnostics),V===void 0?pe.fail("Output generation failed"):{outputText:V,diagnostics:d,sourceMapText:M}}function xin(s,c,g,d,h){let _=tHt(s,{compilerOptions:c,fileName:g,reportDiagnostics:!!d,moduleName:h});return Or(d,_.diagnostics),_.outputText}var nHt;function Rnt(s,c){nHt=nHt||Me(Ww,g=>typeof g.type=="object"&&!Dh(g.type,d=>typeof d!="number")),s=xrt(s);for(let g of nHt){if(!Da(s,g.name))continue;let d=s[g.name];Xs(d)?s[g.name]=m9e(g,d,c):Dh(g.type,h=>h===d)||c.push(RWt(g))}return s}var iHt={};o(iHt,{getNavigateToItems:()=>Gin});function Gin(s,c,g,d,h,_,S){let R=YMt(d);if(!R)return E;let T=[],W=s.length===1?s[0]:void 0;for(let V of s)g.throwIfCancellationRequested(),!(_&&V.isDeclarationFile)&&(Fin(V,!!S,W)||V.getNamedDeclarations().forEach((M,ee)=>{VRs(R,ee,M,c,V.fileName,!!S,W,T)}));return T.sort(MRs),(h===void 0?T:T.slice(0,h)).map(HRs)}function Fin(s,c,g){return s!==g&&c&&(y1e(s.path)||s.hasNoDefaultLib)}function VRs(s,c,g,d,h,_,S,R){let T=s.getMatchForLastSegmentOfPattern(c);if(T){for(let W of g)if(PRs(W,d,_,S))if(s.patternContainsDots){let V=s.getFullMatch(ORs(W),c);V&&R.push({name:c,fileName:h,matchKind:V.kind,isCaseSensitive:V.isCaseSensitive,declaration:W})}else R.push({name:c,fileName:h,matchKind:T.kind,isCaseSensitive:T.isCaseSensitive,declaration:W})}}function PRs(s,c,g,d){var h;switch(s.kind){case 274:case 277:case 272:let _=c.getSymbolAtLocation(s.name),S=c.getAliasedSymbol(_);return _.escapedName!==S.escapedName&&!((h=S.declarations)!=null&&h.every(R=>Fin(R.getSourceFile(),g,d)));default:return!0}}function WRs(s,c){let g=Il(s);return!!g&&(Zin(g,c)||g.kind===168&&sHt(g.expression,c))}function sHt(s,c){return Zin(s,c)||jo(s)&&(c.push(s.name.text),!0)&&sHt(s.expression,c)}function Zin(s,c){return Tw(s)&&(c.push(c2(s)),!0)}function ORs(s){let c=[],g=Il(s);if(g&&g.kind===168&&!sHt(g.expression,c))return E;c.shift();let d=kU(s);for(;d;){if(!WRs(d,c))return E;d=kU(d)}return c.reverse(),c}function MRs(s,c){return Zt(s.matchKind,c.matchKind)||so(s.name,c.name)}function HRs(s){let c=s.declaration,g=kU(c),d=g&&Il(g);return{name:s.name,kind:pQ(c),kindModifiers:Qde(c),matchKind:bnt[s.matchKind],isCaseSensitive:s.isCaseSensitive,fileName:s.fileName,textSpan:Oy(c),containerName:d?d.text:"",containerKind:d?pQ(g):""}}var oHt={};o(oHt,{getNavigationBarItems:()=>Vin,getNavigationTree:()=>Pin});var YRs=/\s+/g,aHt=150,Nnt,w1e,yPe=[],r9,Lin=[],ese,cHt=[];function Vin(s,c){Nnt=c,w1e=s;try{return At(KRs(Min(s)),jRs)}finally{Win()}}function Pin(s,c){Nnt=c,w1e=s;try{return zin(Min(s))}finally{Win()}}function Win(){w1e=void 0,Nnt=void 0,yPe=[],r9=void 0,cHt=[]}function bPe(s){return tpe(s.getText(w1e))}function Dnt(s){return s.node.kind}function Oin(s,c){s.children?s.children.push(c):s.children=[c]}function Min(s){pe.assert(!yPe.length);let c={node:s,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};r9=c;for(let g of s.statements)Wz(g);return q3(),pe.assert(!r9&&!yPe.length),c}function hQ(s,c){Oin(r9,lHt(s,c))}function lHt(s,c){return{node:s,name:c||(jh(s)||un(s)?Il(s):void 0),additionalNodes:void 0,parent:r9,children:void 0,indent:r9.indent+1}}function Hin(s){ese||(ese=new Map),ese.set(s,!0)}function Yin(s){for(let c=0;c0;d--){let h=g[d];mQ(s,h)}return[g.length-1,g[0]]}function mQ(s,c){let g=lHt(s,c);Oin(r9,g),yPe.push(r9),Lin.push(ese),ese=void 0,r9=g}function q3(){r9.children&&(knt(r9.children,r9),AHt(r9.children)),r9=yPe.pop(),ese=Lin.pop()}function $3(s,c,g){mQ(s,g),Wz(c),q3()}function Xin(s){s.initializer&&qRs(s.initializer)?(mQ(s),Lu(s.initializer,Wz),q3()):$3(s,s.initializer)}function uHt(s){let c=Il(s);if(c===void 0)return!1;if(Un(c)){let g=c.expression;return Od(g)||mC(g)||d1(g)}return!!c}function Wz(s){if(Nnt.throwIfCancellationRequested(),!(!s||BL(s)))switch(s.kind){case 177:let c=s;$3(c,c.body);for(let S of c.parameters)Ve(S,c)&&hQ(S);break;case 175:case 178:case 179:case 174:uHt(s)&&$3(s,s.body);break;case 173:uHt(s)&&Xin(s);break;case 172:uHt(s)&&hQ(s);break;case 274:let g=s;g.name&&hQ(g.name);let{namedBindings:d}=g;if(d)if(d.kind===275)hQ(d);else for(let S of d.elements)hQ(S);break;case 305:$3(s,s.name);break;case 306:let{expression:h}=s;Ir(h)?hQ(s,h):hQ(s);break;case 209:case 304:case 261:{let S=s;Nu(S.name)?Wz(S.name):Xin(S);break}case 263:let _=s.name;_&&Ir(_)&&Hin(_.text),$3(s,s.body);break;case 220:case 219:$3(s,s.body);break;case 267:mQ(s);for(let S of s.members)zRs(S)||hQ(S);q3();break;case 264:case 232:case 265:mQ(s);for(let S of s.members)Wz(S);q3();break;case 268:$3(s,$in(s).body);break;case 278:{let S=s.expression,R=og(S)||Zl(S)?S:lA(S)||UA(S)?S.body:void 0;R?(mQ(s),Wz(R),q3()):hQ(s);break}case 282:case 272:case 182:case 180:case 181:case 266:hQ(s);break;case 214:case 227:{let S=nI(s);switch(S){case 1:case 2:$3(s,s.right);return;case 6:case 3:{let R=s,T=R.left,W=S===3?T.expression:T,V=0,M;Ir(W.expression)?(Hin(W.expression.text),M=W.expression):[V,M]=Qin(R,W.expression),S===6?og(R.right)&&R.right.properties.length>0&&(mQ(R,M),Lu(R.right,Wz),q3()):UA(R.right)||lA(R.right)?$3(s,R.right,M):(mQ(R,M),$3(s,R.right,T.name),q3()),Yin(V);return}case 7:case 9:{let R=s,T=S===7?R.arguments[0]:R.arguments[0].expression,W=R.arguments[1],[V,M]=Qin(s,T);mQ(s,M),mQ(s,gn(me.createIdentifier(W.text),W)),Wz(s.arguments[2]),q3(),q3(),Yin(V);return}case 5:{let R=s,T=R.left,W=T.expression;if(Ir(W)&&YD(T)!=="prototype"&&ese&&ese.has(W.text)){UA(R.right)||lA(R.right)?$3(s,R.right,W):yP(T)&&(mQ(R,W),$3(R.left,R.right,lne(T)),q3());return}break}case 4:case 0:case 8:break;default:pe.assertNever(S)}}default:Xm(s)&&F(s.jsDoc,S=>{F(S.tags,R=>{iS(R)&&hQ(R)})}),Lu(s,Wz)}}function knt(s,c){let g=new Map;je(s,(d,h)=>{let _=d.name||Il(d.node),S=_&&bPe(_);if(!S)return!0;let R=g.get(S);if(!R)return g.set(S,d),!0;if(R instanceof Array){for(let T of R)if(Jin(T,d,h,c))return!1;return R.push(d),!0}else{let T=R;return Jin(T,d,h,c)?!1:(g.set(S,[T,d]),!0)}})}var T1e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function QRs(s,c,g,d){function h(R){return UA(R)||ih(R)||nc(R)}let _=fo(c.node)||Zl(c.node)?nI(c.node):0,S=fo(s.node)||Zl(s.node)?nI(s.node):0;if(T1e[_]&&T1e[S]||h(s.node)&&T1e[_]||h(c.node)&&T1e[S]||pm(s.node)&&gHt(s.node)&&T1e[_]||pm(c.node)&&T1e[S]||pm(s.node)&&gHt(s.node)&&h(c.node)||pm(c.node)&&h(s.node)&&gHt(s.node)){let R=s.additionalNodes&&li(s.additionalNodes)||s.node;if(!pm(s.node)&&!pm(c.node)||h(s.node)||h(c.node)){let W=h(s.node)?s.node:h(c.node)?c.node:void 0;if(W!==void 0){let V=gn(me.createConstructorDeclaration(void 0,[],void 0),W),M=lHt(V);M.indent=s.indent+1,M.children=s.node===W?s.children:c.children,s.children=s.node===W?Nn([M],c.children||[c]):Nn(s.children||[{...s}],[M])}else(s.children||c.children)&&(s.children=Nn(s.children||[{...s}],c.children||[c]),s.children&&(knt(s.children,s),AHt(s.children)));R=s.node=gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),s.node)}else s.children=Nn(s.children,c.children),s.children&&knt(s.children,s);let T=c.node;return d.children[g-1].node.end===R.end?gn(R,{pos:R.pos,end:T.end}):(s.additionalNodes||(s.additionalNodes=[]),s.additionalNodes.push(gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return _!==0}function Jin(s,c,g,d){return QRs(s,c,g,d)?!0:XRs(s.node,c.node,d)?(JRs(s,c),!0):!1}function XRs(s,c,g){if(s.kind!==c.kind||s.parent!==c.parent&&!(Uin(s,g)&&Uin(c,g)))return!1;switch(s.kind){case 173:case 175:case 178:case 179:return cg(s)===cg(c);case 268:return Kin(s,c)&&fHt(s)===fHt(c);default:return!0}}function gHt(s){return!!(s.flags&16)}function Uin(s,c){if(s.parent===void 0)return!1;let g=_N(s.parent)?s.parent.parent:s.parent;return g===c.node||k(c.additionalNodes,g)}function Kin(s,c){return!s.body||!c.body?s.body===c.body:s.body.kind===c.body.kind&&(s.body.kind!==268||Kin(s.body,c.body))}function JRs(s,c){s.additionalNodes=s.additionalNodes||[],s.additionalNodes.push(c.node),c.additionalNodes&&s.additionalNodes.push(...c.additionalNodes),s.children=Nn(s.children,c.children),s.children&&(knt(s.children,s),AHt(s.children))}function AHt(s){s.sort(URs)}function URs(s,c){return so(jin(s.node),jin(c.node))||Zt(Dnt(s),Dnt(c))}function jin(s){if(s.kind===268)return qin(s);let c=Il(s);if(c&&VI(c)){let g=_3(c);return g&&Bc(g)}switch(s.kind){case 219:case 220:case 232:return tsn(s);default:return}}function dHt(s,c){if(s.kind===268)return tpe(qin(s));if(c){let g=Ir(c)?c.text:Yg(c)?`[${bPe(c.argumentExpression)}]`:bPe(c);if(g.length>0)return tpe(g)}switch(s.kind){case 308:let g=s;return xm(g)?`"${YT(gp(s0(iu(g.fileName))))}"`:"";case 278:return Cf(s)&&s.isExportEquals?"export=":"default";case 220:case 263:case 219:case 264:case 232:return Nx(s)&2048?"default":tsn(s);case 177:return"constructor";case 181:return"new()";case 180:return"()";case 182:return"[]";default:return""}}function KRs(s){let c=[];function g(h){if(d(h)&&(c.push(h),h.children))for(let _ of h.children)g(_)}return g(s),c;function d(h){if(h.children)return!0;switch(Dnt(h)){case 264:case 232:case 267:case 265:case 268:case 308:case 266:case 347:case 339:return!0;case 220:case 263:case 219:return _(h);default:return!1}function _(S){if(!S.node.body)return!1;switch(Dnt(S.parent)){case 269:case 308:case 175:case 177:return!0;default:return!1}}}}function zin(s){return{text:dHt(s.node,s.name),kind:pQ(s.node),kindModifiers:esn(s.node),spans:pHt(s),nameSpan:s.name&&IHt(s.name),childItems:At(s.children,zin)}}function jRs(s){return{text:dHt(s.node,s.name),kind:pQ(s.node),kindModifiers:esn(s.node),spans:pHt(s),childItems:At(s.children,c)||cHt,indent:s.indent,bolded:!1,grayed:!1};function c(g){return{text:dHt(g.node,g.name),kind:pQ(g.node),kindModifiers:Qde(g.node),spans:pHt(g),childItems:cHt,indent:0,bolded:!1,grayed:!1}}}function pHt(s){let c=[IHt(s.node)];if(s.additionalNodes)for(let g of s.additionalNodes)c.push(IHt(g));return c}function qin(s){return s_(s)?xp(s.name):fHt(s)}function fHt(s){let c=[c2(s.name)];for(;s.body&&s.body.kind===268;)s=s.body,c.push(c2(s.name));return c.join(".")}function $in(s){return s.body&&xh(s.body)?$in(s.body):s}function zRs(s){return!s.name||s.name.kind===168}function IHt(s){return s.kind===308?t9(s):Oy(s,w1e)}function esn(s){return s.parent&&s.parent.kind===261&&(s=s.parent),Qde(s)}function tsn(s){let{parent:c}=s;if(s.name&&DJ(s.name)>0)return tpe(Wd(s.name));if(nc(c))return tpe(Wd(c.name));if(fo(c)&&c.operatorToken.kind===64)return bPe(c.left).replace(YRs,"");if(fm(c))return bPe(c.name);if(Nx(s)&2048)return"default";if(xa(s))return"";if(Zl(c)){let g=rsn(c.expression);if(g!==void 0){if(g=tpe(g),g.length>aHt)return`${g} callback`;let d=tpe(Xt(c.arguments,h=>mA(h)||AP(h)?h.getText(w1e):void 0).join(", "));return`${g}(${d}) callback`}}return""}function rsn(s){if(Ir(s))return s.text;if(jo(s)){let c=rsn(s.expression),g=s.name.text;return c===void 0?g:`${c}.${g}`}else return}function qRs(s){switch(s.kind){case 220:case 219:case 232:return!0;default:return!1}}function tpe(s){return s=s.length>aHt?s.substring(0,aHt)+"...":s,s.replace(/\\?(?:\r?\n|[\r\u2028\u2029])/g,"")}var Oz={};o(Oz,{addExportsInOldFile:()=>wHt,addImportsForMovedSymbols:()=>THt,addNewFileToTsconfig:()=>BHt,addOrRemoveBracesToArrowFunction:()=>JNs,addTargetFileImports:()=>LHt,containsJsx:()=>DHt,convertArrowFunctionOrFunctionExpression:()=>qNs,convertParamsToDestructuredObject:()=>lDs,convertStringOrTemplateLiteral:()=>wDs,convertToOptionalChainExpression:()=>LDs,createNewFileName:()=>NHt,doChangeNamedToNamespaceOrDefault:()=>csn,extractSymbol:()=>eon,generateGetAccessorAndSetAccessor:()=>_ks,getApplicableRefactors:()=>$Rs,getEditsForRefactor:()=>eNs,getExistingLocals:()=>FHt,getIdentifierForNode:()=>ZHt,getNewStatementsAndRemoveFromOldFile:()=>vHt,getStatementsToMove:()=>R1e,getUsageInfo:()=>EPe,inferFunctionReturnType:()=>yks,isInImport:()=>Ont,isRefactorErrorInfo:()=>MF,refactorKindBeginsWith:()=>e5,registerRefactor:()=>Px});var hHt=new Map;function Px(s,c){hHt.set(s,c)}function $Rs(s,c){return Do(xt(hHt.values(),g=>{var d;return s.cancellationToken&&s.cancellationToken.isCancellationRequested()||!((d=g.kinds)!=null&&d.some(h=>e5(h,s.kind)))?void 0:g.getAvailableActions(s,c)}))}function eNs(s,c,g,d){let h=hHt.get(c);return h&&h.getEditsForAction(s,g,d)}var mHt="Convert export",xnt={name:"Convert default export to named export",description:Bu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},Gnt={name:"Convert named export to default export",description:Bu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};Px(mHt,{kinds:[xnt.kind,Gnt.kind],getAvailableActions:function(c){let g=nsn(c,c.triggerReason==="invoked");if(!g)return E;if(!MF(g)){let d=g.wasDefault?xnt:Gnt;return[{name:mHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:mHt,description:Bu(Z.Convert_default_export_to_named_export),actions:[{...xnt,notApplicableReason:g.error},{...Gnt,notApplicableReason:g.error}]}]:E},getEditsForAction:function(c,g){pe.assert(g===xnt.name||g===Gnt.name,"Unexpected action name");let d=nsn(c);return pe.assert(d&&!MF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>tNs(c.file,c.program,d,_,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function nsn(s,c=!0){let{file:g,program:d}=s,h=Vz(s),_=Jc(g,h.start),S=_.parent&&Nx(_.parent)&32&&c?_.parent:I1e(_,g,h);if(!S||!ll(S.parent)&&!(_N(S.parent)&&s_(S.parent.parent)))return{error:Bu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),T=oNs(S.parent,R),W=Nx(S)||(Cf(S)&&!S.isExportEquals?2080:0),V=!!(W&2048);if(!(W&32)||!V&&T.exports.has("default"))return{error:Bu(Z.This_file_already_has_a_default_export)};let M=ee=>Ir(ee)&&R.getSymbolAtLocation(ee)?void 0:{error:Bu(Z.Can_only_convert_named_export)};switch(S.kind){case 263:case 264:case 265:case 267:case 266:case 268:{let ee=S;return ee.name?M(ee.name)||{exportNode:ee,exportName:ee.name,wasDefault:V,exportingModuleSymbol:T}:void 0}case 244:{let ee=S;if(!(ee.declarationList.flags&2)||ee.declarationList.declarations.length!==1)return;let re=ma(ee.declarationList.declarations);return re.initializer?(pe.assert(!V,"Can't have a default flag here"),M(re.name)||{exportNode:ee,exportName:re.name,wasDefault:V,exportingModuleSymbol:T}):void 0}case 278:{let ee=S;return ee.isExportEquals?void 0:M(ee.expression)||{exportNode:ee,exportName:ee.expression,wasDefault:V,exportingModuleSymbol:T}}default:return}}function tNs(s,c,g,d,h){rNs(s,g,d,c.getTypeChecker()),nNs(c,g,d,h)}function rNs(s,{wasDefault:c,exportNode:g,exportName:d},h,_){if(c)if(Cf(g)&&!g.isExportEquals){let S=g.expression,R=isn(S.text,S.text);h.replaceNode(s,g,me.createExportDeclaration(void 0,!1,me.createNamedExports([R])))}else h.delete(s,pe.checkDefined(Xie(g,90),"Should find a default keyword in modifier list"));else{let S=pe.checkDefined(Xie(g,95),"Should find an export keyword in modifier list");switch(g.kind){case 263:case 264:case 265:h.insertNodeAfter(s,S,me.createToken(90));break;case 244:let R=ma(g.declarationList.declarations);if(!Kp.Core.isSymbolReferencedInFile(d,_,s)&&!R.type){h.replaceNode(s,g,me.createExportDefault(pe.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 267:case 266:case 268:h.deleteModifier(s,S),h.insertNodeAfter(s,g,me.createExportDefault(me.createIdentifier(d.text)));break;default:pe.fail(`Unexpected exportNode kind ${g.kind}`)}}}function nNs(s,{wasDefault:c,exportName:g,exportingModuleSymbol:d},h,_){let S=s.getTypeChecker(),R=pe.checkDefined(S.getSymbolAtLocation(g),"Export name should resolve to a symbol");Kp.Core.eachExportReference(s.getSourceFiles(),S,_,R,d,g.text,c,T=>{if(g===T)return;let W=T.getSourceFile();c?iNs(W,T,h,g.text):sNs(W,T,h)})}function iNs(s,c,g,d){let{parent:h}=c;switch(h.kind){case 212:g.replaceNode(s,c,me.createIdentifier(d));break;case 277:case 282:{let S=h;g.replaceNode(s,S,CHt(d,S.name.text));break}case 274:{let S=h;pe.assert(S.name===c,"Import clause name should match provided ref");let R=CHt(d,c.text),{namedBindings:T}=S;if(!T)g.replaceNode(s,c,me.createNamedImports([R]));else if(T.kind===275){g.deleteRange(s,{pos:c.getStart(s),end:T.getStart(s)});let W=Zg(S.parent.moduleSpecifier)?Ort(S.parent.moduleSpecifier,s):1,V=QP(void 0,[CHt(d,c.text)],S.parent.moduleSpecifier,W);g.insertNodeAfter(s,S.parent,V)}else g.delete(s,c),g.insertNodeAtEndOfList(s,T.elements,R);break}case 206:let _=h;g.replaceNode(s,h,me.createImportTypeNode(_.argument,_.attributes,me.createIdentifier(d),_.typeArguments,_.isTypeOf));break;default:pe.failBadSyntaxKind(h)}}function sNs(s,c,g){let d=c.parent;switch(d.kind){case 212:g.replaceNode(s,c,me.createIdentifier("default"));break;case 277:{let h=me.createIdentifier(d.name.text);d.parent.elements.length===1?g.replaceNode(s,d.parent,h):(g.delete(s,d),g.insertNodeBefore(s,d.parent,h));break}case 282:{g.replaceNode(s,d,isn("default",d.name.text));break}default:pe.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function CHt(s,c){return me.createImportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function isn(s,c){return me.createExportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function oNs(s,c){if(ll(s))return s.symbol;let g=s.parent.symbol;return g.valueDeclaration&&_F(g.valueDeclaration)?c.getMergedSymbol(g):g}var _Ht="Convert import",Fnt={0:{name:"Convert namespace import to named imports",description:Bu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:Bu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:Bu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};Px(_Ht,{kinds:Qh(Fnt).map(s=>s.kind),getAvailableActions:function(c){let g=ssn(c,c.triggerReason==="invoked");if(!g)return E;if(!MF(g)){let d=Fnt[g.convertTo];return[{name:_Ht,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?Qh(Fnt).map(d=>({name:_Ht,description:d.description,actions:[{...d,notApplicableReason:g.error}]})):E},getEditsForAction:function(c,g){pe.assert(jt(Qh(Fnt),_=>_.name===g),"Unexpected action name");let d=ssn(c);return pe.assert(d&&!MF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>aNs(c.file,c.program,_,d)),renameFilename:void 0,renameLocation:void 0}}});function ssn(s,c=!0){let{file:g}=s,d=Vz(s),h=Jc(g,d.start),_=c?ji(h,Hp(Mf,SN)):I1e(h,g,d);if(_===void 0||!(Mf(_)||SN(_)))return{error:"Selection is not an import declaration."};let S=d.start+d.length,R=fQ(_,_.parent,g);if(R&&S>R.getStart())return;let{importClause:T}=_;return T?T.namedBindings?T.namedBindings.kind===275?{convertTo:0,import:T.namedBindings}:osn(s.program,T)?{convertTo:1,import:T.namedBindings}:{convertTo:2,import:T.namedBindings}:{error:Bu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:Bu(Z.Could_not_find_import_clause)}}function osn(s,c){return JY(s.getCompilerOptions())&&uNs(c.parent.moduleSpecifier,s.getTypeChecker())}function aNs(s,c,g,d){let h=c.getTypeChecker();d.convertTo===0?cNs(s,h,g,d.import,JY(c.getCompilerOptions())):csn(s,c,g,d.import,d.convertTo===1)}function cNs(s,c,g,d,h){let _=!1,S=[],R=new Map;Kp.Core.eachSymbolReferenceInFile(d.name,c,s,M=>{if(!SJ(M.parent))_=!0;else{let ee=asn(M.parent).text;c.resolveName(ee,M,-1,!0)&&R.set(ee,!0),pe.assert(lNs(M.parent)===M,"Parent expression should match id"),S.push(M.parent)}});let T=new Map;for(let M of S){let ee=asn(M).text,re=T.get(ee);re===void 0&&T.set(ee,re=R.has(ee)?GU(ee,s):ee),g.replaceNode(s,M,me.createIdentifier(re))}let W=[];T.forEach((M,ee)=>{W.push(me.createImportSpecifier(!1,M===ee?void 0:me.createIdentifier(ee),me.createIdentifier(M)))});let V=d.parent.parent;if(_&&!h&&Mf(V))g.insertNodeAfter(s,V,lsn(V,void 0,W));else{let M=_?me.createIdentifier(d.name.text):void 0;g.replaceNode(s,d.parent,usn(M,W))}}function asn(s){return jo(s)?s.name:s.right}function lNs(s){return jo(s)?s.expression:s.left}function csn(s,c,g,d,h=osn(c,d.parent)){let _=c.getTypeChecker(),S=d.parent.parent,{moduleSpecifier:R}=S,T=new Set;d.elements.forEach(ge=>{let Ie=_.getSymbolAtLocation(ge.name);Ie&&T.add(Ie)});let W=R&&Zg(R)?E1e(R.text,99):"module";function V(ge){return!!Kp.Core.eachSymbolReferenceInFile(ge.name,_,s,Ie=>{let _e=_.resolveName(W,Ie,-1,!0);return _e?T.has(_e)?R0(Ie.parent):!0:!1})}let ee=d.elements.some(V)?GU(W,s):W,re=new Set;for(let ge of d.elements){let Ie=ge.propertyName||ge.name;Kp.Core.eachSymbolReferenceInFile(ge.name,_,s,_e=>{let Ee=Ie.kind===11?me.createElementAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie)):me.createPropertyAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie));a0(_e.parent)?g.replaceNode(s,_e.parent,me.createPropertyAssignment(_e.text,Ee)):R0(_e.parent)?re.add(ge):g.replaceNode(s,_e,Ee)})}if(g.replaceNode(s,d,h?me.createIdentifier(ee):me.createNamespaceImport(me.createIdentifier(ee))),re.size&&Mf(S)){let ge=Do(re.values(),Ie=>me.createImportSpecifier(Ie.isTypeOnly,Ie.propertyName&&me.cloneNode(Ie.propertyName),me.cloneNode(Ie.name)));g.insertNodeAfter(s,d.parent.parent,lsn(S,void 0,ge))}}function uNs(s,c){let g=c.resolveExternalModuleName(s);if(!g)return!1;let d=c.resolveExternalModuleSymbol(g);return g!==d}function lsn(s,c,g){return me.createImportDeclaration(void 0,usn(c,g),s.moduleSpecifier,void 0)}function usn(s,c){return me.createImportClause(void 0,s,c&&c.length?me.createNamedImports(c):void 0)}var yHt="Extract type",Znt={name:"Extract to type alias",description:Bu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},Lnt={name:"Extract to interface",description:Bu(Z.Extract_to_interface),kind:"refactor.extract.interface"},Vnt={name:"Extract to typedef",description:Bu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};Px(yHt,{kinds:[Znt.kind,Lnt.kind,Vnt.kind],getAvailableActions:function(c){let{info:g,affectedTextRange:d}=gsn(c,c.triggerReason==="invoked");return g?MF(g)?c.preferences.provideRefactorNotApplicableReason?[{name:yHt,description:Bu(Z.Extract_type),actions:[{...Vnt,notApplicableReason:g.error},{...Znt,notApplicableReason:g.error},{...Lnt,notApplicableReason:g.error}]}]:E:[{name:yHt,description:Bu(Z.Extract_type),actions:g.isJS?[Vnt]:Ft([Znt],g.typeElements&&Lnt)}].map(_=>({..._,actions:_.actions.map(S=>({...S,range:d?{start:{line:Ra(c.file,d.pos).line,offset:Ra(c.file,d.pos).character},end:{line:Ra(c.file,d.end).line,offset:Ra(c.file,d.end).character}}:void 0}))})):E},getEditsForAction:function(c,g){let{file:d}=c,{info:h}=gsn(c);pe.assert(h&&!MF(h),"Expected to find a range to extract");let _=GU("NewType",d),S=xo.ChangeTracker.with(c,W=>{switch(g){case Znt.name:return pe.assert(!h.isJS,"Invalid actionName/JS combo"),dNs(W,d,_,h);case Vnt.name:return pe.assert(h.isJS,"Invalid actionName/JS combo"),fNs(W,c,d,_,h);case Lnt.name:return pe.assert(!h.isJS&&!!h.typeElements,"Invalid actionName/JS combo"),pNs(W,d,_,h);default:pe.fail("Unexpected action name")}}),R=d.fileName,T=m1e(S,R,_,!1);return{edits:S,renameFilename:R,renameLocation:T}}});function gsn(s,c=!0){let{file:g,startPosition:d}=s,h=n0(g),_=JVe(Vz(s)),S=_.pos===_.end&&c,R=gNs(g,d,_,S);if(!R||!uc(R))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let T=s.program.getTypeChecker(),W=INs(R,h);if(W===void 0)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let V=hNs(R,W);if(!uc(V))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let M=[];(aS(V.parent)||mf(V.parent))&&_.end>R.end&&Or(M,V.parent.types.filter(_e=>VVe(_e,g,_.pos,_.end)));let ee=M.length>1?M:V,{typeParameters:re,affectedTextRange:ge}=ANs(T,ee,W,g);if(!re)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ie=Pnt(T,ee);return{info:{isJS:h,selection:ee,enclosingNode:W,typeParameters:re,typeElements:Ie},affectedTextRange:ge}}function gNs(s,c,g,d){let h=[()=>Jc(s,c),()=>Yie(s,c,()=>!0)];for(let _ of h){let S=_(),R=VVe(S,s,g.pos,g.end),T=ji(S,W=>W.parent&&uc(W)&&!CQ(g,W.parent,s)&&(d||R));if(T)return T}}function Pnt(s,c){if(c){if(Ki(c)){let g=[];for(let d of c){let h=Pnt(s,d);if(!h)return;Or(g,h)}return g}if(mf(c)){let g=[],d=new Set;for(let h of c.types){let _=Pnt(s,h);if(!_||!_.every(S=>S.name&&Zy(d,p1e(S.name))))return;Or(g,_)}return g}else{if(fv(c))return Pnt(s,c.type);if(mh(c))return c.members}}}function CQ(s,c,g){return l1e(s,Yu(g.text,c.pos),c.end)}function ANs(s,c,g,d){let h=[],_=cc(c),S={pos:_[0].getStart(d),end:_[_.length-1].end};for(let T of _)if(R(T))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:h,affectedTextRange:S};function R(T){if(nh(T)){if(Ir(T.typeName)){let W=T.typeName,V=s.resolveName(W.text,W,262144,!0);for(let M of V?.declarations||E)if(Ds(M)&&M.getSourceFile()===d){if(M.name.escapedText===W.escapedText&&CQ(M,S,d))return!0;if(CQ(g,M,d)&&!CQ(S,M,d)){Qi(h,M);break}}}}else if(jT(T)){let W=ji(T,V=>d2(V)&&CQ(V.extendsType,T,d));if(!W||!CQ(S,W,d))return!0}else if(bE(T)||Fx(T)){let W=ji(T.parent,bu);if(W&&W.type&&CQ(W.type,T,d)&&!CQ(S,W,d))return!0}else if(Fw(T)){if(Ir(T.exprName)){let W=s.resolveName(T.exprName.text,T.exprName,111551,!1);if(W?.valueDeclaration&&CQ(g,W.valueDeclaration,d)&&!CQ(S,W.valueDeclaration,d))return!0}else if(vF(T.exprName.left)&&!CQ(S,T.parent,d))return!0}return d&&Zw(T)&&Ra(d,T.pos).line===Ra(d,T.end).line&&ti(T,1),Lu(T,R)}}function dNs(s,c,g,d){let{enclosingNode:h,typeParameters:_}=d,{firstTypeNode:S,lastTypeNode:R,newTypeNode:T}=bHt(d),W=me.createTypeAliasDeclaration(void 0,g,_.map(V=>me.updateTypeParameterDeclaration(V,V.modifiers,V.name,V.constraint,void 0)),T);s.insertNodeBefore(c,h,eEe(W),!0),s.replaceNodeRange(c,S,R,me.createTypeReferenceNode(g,_.map(V=>me.createTypeReferenceNode(V.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function pNs(s,c,g,d){var h;let{enclosingNode:_,typeParameters:S,typeElements:R}=d,T=me.createInterfaceDeclaration(void 0,g,S,void 0,R);gn(T,(h=R[0])==null?void 0:h.parent),s.insertNodeBefore(c,_,eEe(T),!0);let{firstTypeNode:W,lastTypeNode:V}=bHt(d);s.replaceNodeRange(c,W,V,me.createTypeReferenceNode(g,S.map(M=>me.createTypeReferenceNode(M.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function fNs(s,c,g,d,h){var _;cc(h.selection).forEach(ge=>{ti(ge,7168)});let{enclosingNode:S,typeParameters:R}=h,{firstTypeNode:T,lastTypeNode:W,newTypeNode:V}=bHt(h),M=me.createJSDocTypedefTag(me.createIdentifier("typedef"),me.createJSDocTypeExpression(V),me.createIdentifier(d)),ee=[];F(R,ge=>{let Ie=n3(ge),_e=me.createTypeParameterDeclaration(void 0,ge.name),Ee=me.createJSDocTemplateTag(me.createIdentifier("template"),Ie&&Ma(Ie,W3),[_e]);ee.push(Ee)});let re=me.createJSDocComment(void 0,me.createNodeArray(Nn(ee,[M])));if(tR(S)){let ge=S.getStart(g),Ie=OF(c.host,(_=c.formatContext)==null?void 0:_.options);s.insertNodeAt(g,S.getStart(g),re,{suffix:Ie+Ie+g.text.slice(tPe(g.text,ge-1),ge)})}else s.insertNodeBefore(g,S,re,!0);s.replaceNodeRange(g,T,W,me.createTypeReferenceNode(d,R.map(ge=>me.createTypeReferenceNode(ge.name,void 0))))}function bHt(s){return Ki(s.selection)?{firstTypeNode:s.selection[0],lastTypeNode:s.selection[s.selection.length-1],newTypeNode:aS(s.selection[0].parent)?me.createUnionTypeNode(s.selection):me.createIntersectionTypeNode(s.selection)}:{firstTypeNode:s.selection,lastTypeNode:s.selection,newTypeNode:s.selection}}function INs(s,c){return ji(s,Lc)||(c?ji(s,tR):void 0)}function hNs(s,c){return ji(s,g=>g===c?"quit":!!(aS(g.parent)||mf(g.parent)))??s}var Wnt="Move to file",EHt=Bu(Z.Move_to_file),SHt={name:"Move to file",description:EHt,kind:"refactor.move.file"};Px(Wnt,{kinds:[SHt.kind],getAvailableActions:function(c,g){let d=c.file,h=R1e(c);if(!g)return E;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let _=ji(Jc(d,c.startPosition),Pz),S=ji(Jc(d,c.endPosition),Pz);if(_&&!ll(_)&&S&&!ll(S))return E}if(c.preferences.allowTextChangesInNewFiles&&h){let _={start:{line:Ra(d,h.all[0].getStart(d)).line,offset:Ra(d,h.all[0].getStart(d)).character},end:{line:Ra(d,Ei(h.all).end).line,offset:Ra(d,Ei(h.all).end).character}};return[{name:Wnt,description:EHt,actions:[{...SHt,range:_}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:Wnt,description:EHt,actions:[{...SHt,notApplicableReason:Bu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:E},getEditsForAction:function(c,g,d){pe.assert(g===Wnt,"Wrong refactor invoked");let h=pe.checkDefined(R1e(c)),{host:_,program:S}=c;pe.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return pN(R)||w3(R)?_.fileExists(R)&&S.getSourceFile(R)===void 0?Asn(Bu(Z.Cannot_move_statements_to_the_selected_file)):{edits:xo.ChangeTracker.with(c,W=>mNs(c,c.file,d.targetFile,c.program,h,W,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:Asn(Bu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function Asn(s){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:s}}function mNs(s,c,g,d,h,_,S,R){let T=d.getTypeChecker(),W=!S.fileExists(g),V=W?fPe(g,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,S):pe.checkDefined(d.getSourceFile(g)),M=x0.createImportAdder(c,s.program,s.preferences,s.host),ee=x0.createImportAdder(V,s.program,s.preferences,s.host);vHt(c,V,EPe(c,h.all,T,W?void 0:FHt(V,h.all,T)),_,h,d,S,R,ee,M),W&&BHt(d,_,c.fileName,g,JD(S))}function vHt(s,c,g,d,h,_,S,R,T,W){let V=_.getTypeChecker(),M=t_(s.statements,nS),ee=!dnt(c.fileName,_,S,!!s.commonJsModuleIndicator),re=_1(s,R);THt(g.oldFileImportsFromTargetFile,c.fileName,W,_),_Ns(s,h.all,g.unusedImportsFromOldFile,W),W.writeFixes(d,re),CNs(s,h.ranges,d),yNs(d,_,S,s,g.movedSymbols,c.fileName,re),wHt(s,g.targetFileImportsFromOldFile,d,ee),LHt(s,g.oldImportsNeededByTargetFile,g.targetFileImportsFromOldFile,V,_,T),!aN(c)&&M.length&&d.insertStatementsInNewFile(c.fileName,M,s),T.writeFixes(d,re);let ge=wNs(s,h.all,Do(g.oldFileImportsFromTargetFile.keys()),ee);aN(c)&&c.statements.length>0?HNs(d,_,ge,c,h):aN(c)?d.insertNodesAtEndOfFile(c,ge,!1):d.insertStatementsInNewFile(c.fileName,T.hasFixes()?[4,...ge]:ge,s)}function BHt(s,c,g,d,h){let _=s.getCompilerOptions().configFile;if(!_)return;let S=iu(Ro(g,"..",d)),R=i1(_.fileName,S,h),T=_.statements[0]&&Gs(_.statements[0].expression,og),W=T&&de(T.properties,V=>fm(V)&&Zg(V.name)&&V.name.text==="files");W&&OI(W.initializer)&&c.insertNodeInListAfter(_,Ei(W.initializer.elements),me.createStringLiteral(R),W.initializer.elements)}function CNs(s,c,g){for(let{first:d,afterLast:h}of c)g.deleteNodeRangeExcludingEnd(s,d,h)}function _Ns(s,c,g,d){for(let h of s.statements)k(c,h)||psn(h,_=>{fsn(_,S=>{g.has(S.symbol)&&d.removeExistingImport(S)})})}function wHt(s,c,g,d){let h=Qie();c.forEach((_,S)=>{if(S.declarations)for(let R of S.declarations){if(!GHt(R))continue;let T=FNs(R);if(!T)continue;let W=Csn(R);h(W)&&ZNs(s,W,T,g,d)}})}function yNs(s,c,g,d,h,_,S){let R=c.getTypeChecker();for(let T of c.getSourceFiles())if(T!==d)for(let W of T.statements)psn(W,V=>{if(R.getSymbolAtLocation(vNs(V))!==d.symbol)return;let M=_e=>{let Ee=hg(_e.parent)?$Ve(R,_e.parent):FC(R.getSymbolAtLocation(_e),R);return!!Ee&&h.has(Ee)};TNs(T,V,s,M);let ee=AE(Mo(Xc(d.fileName,c.getCurrentDirectory())),_);if(ld(!c.useCaseSensitiveFileNames())(ee,T.fileName)===0)return;let re=WF.getModuleSpecifier(c.getCompilerOptions(),T,T.fileName,ee,z3(c,g)),ge=kNs(V,Jde(re,S),M);ge&&s.insertNodeAfter(T,W,ge);let Ie=bNs(V);Ie&&ENs(s,T,R,h,re,Ie,V,S)})}function bNs(s){switch(s.kind){case 273:return s.importClause&&s.importClause.namedBindings&&s.importClause.namedBindings.kind===275?s.importClause.namedBindings.name:void 0;case 272:return s.name;case 261:return Gs(s.name,Ir);default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function ENs(s,c,g,d,h,_,S,R){let T=E1e(h,99),W=!1,V=[];if(Kp.Core.eachSymbolReferenceInFile(_,g,c,M=>{jo(M.parent)&&(W=W||!!g.resolveName(T,M,-1,!0),d.has(g.getSymbolAtLocation(M.parent.name))&&V.push(M))}),V.length){let M=W?GU(T,c):T;for(let ee of V)s.replaceNode(c,ee,me.createIdentifier(M));s.insertNodeAfter(c,S,SNs(S,T,h,R))}}function SNs(s,c,g,d){let h=me.createIdentifier(c),_=Jde(g,d);switch(s.kind){case 273:return me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamespaceImport(h)),_,void 0);case 272:return me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(_));case 261:return me.createVariableDeclaration(h,void 0,void 0,dsn(_));default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function dsn(s){return me.createCallExpression(me.createIdentifier("require"),void 0,[s])}function vNs(s){return s.kind===273?s.moduleSpecifier:s.kind===272?s.moduleReference.expression:s.initializer.arguments[0]}function psn(s,c){if(Mf(s))Zg(s.moduleSpecifier)&&c(s);else if(km(s))ZF(s.moduleReference)&&mA(s.moduleReference.expression)&&c(s);else if(Ch(s))for(let g of s.declarationList.declarations)g.initializer&&ay(g.initializer,!0)&&c(g)}function fsn(s,c){var g,d,h,_,S;if(s.kind===273){if((g=s.importClause)!=null&&g.name&&c(s.importClause),((h=(d=s.importClause)==null?void 0:d.namedBindings)==null?void 0:h.kind)===275&&c(s.importClause.namedBindings),((S=(_=s.importClause)==null?void 0:_.namedBindings)==null?void 0:S.kind)===276)for(let R of s.importClause.namedBindings.elements)c(R)}else if(s.kind===272)c(s);else if(s.kind===261){if(s.name.kind===80)c(s);else if(s.name.kind===207)for(let R of s.name.elements)Ir(R.name)&&c(R)}}function THt(s,c,g,d){for(let[h,_]of s){let S=uPe(h,Mg(d.getCompilerOptions())),R=h.name==="default"&&h.parent?1:0;g.addImportForNonExistentExport(S,c,R,h.flags,_)}}function BNs(s,c,g,d=2){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(s,void 0,c,g)],d))}function wNs(s,c,g,d){return er(c,h=>{if(hsn(h)&&!Isn(s,h,d)&&xHt(h,_=>{var S;return g.includes(pe.checkDefined((S=Gs(_,mE))==null?void 0:S.symbol))})){let _=RNs(JA(h),d);if(_)return _}return JA(h)})}function Isn(s,c,g,d){var h;return g?!VC(c)&&Ga(c,32)||!!(d&&s.symbol&&((h=s.symbol.exports)!=null&&h.has(d.escapedText))):!!s.symbol&&!!s.symbol.exports&&RHt(c).some(_=>s.symbol.exports.has(Ap(_)))}function TNs(s,c,g,d){if(c.kind===273&&c.importClause){let{name:h,namedBindings:_}=c.importClause;if((!h||d(h))&&(!_||_.kind===276&&_.elements.length!==0&&_.elements.every(S=>d(S.name))))return g.delete(s,c)}fsn(c,h=>{h.name&&Ir(h.name)&&d(h.name)&&g.delete(s,h)})}function hsn(s){return pe.assert(ll(s.parent),"Node parent should be a SourceFile"),bsn(s)||Ch(s)}function RNs(s,c){return c?[NNs(s)]:DNs(s)}function NNs(s){let c=LB(s)?Nn([me.createModifier(95)],$R(s)):void 0;switch(s.kind){case 263:return me.updateFunctionDeclaration(s,c,s.asteriskToken,s.name,s.typeParameters,s.parameters,s.type,s.body);case 264:let g=oQ(s)?Rb(s):void 0;return me.updateClassDeclaration(s,Nn(g,c),s.name,s.typeParameters,s.heritageClauses,s.members);case 244:return me.updateVariableStatement(s,c,s.declarationList);case 268:return me.updateModuleDeclaration(s,c,s.name,s.body);case 267:return me.updateEnumDeclaration(s,c,s.name,s.members);case 266:return me.updateTypeAliasDeclaration(s,c,s.name,s.typeParameters,s.type);case 265:return me.updateInterfaceDeclaration(s,c,s.name,s.typeParameters,s.heritageClauses,s.members);case 272:return me.updateImportEqualsDeclaration(s,c,s.isTypeOnly,s.name,s.moduleReference);case 245:return pe.fail();default:return pe.assertNever(s,`Unexpected declaration kind ${s.kind}`)}}function DNs(s){return[s,...RHt(s).map(msn)]}function msn(s){return me.createExpressionStatement(me.createBinaryExpression(me.createPropertyAccessExpression(me.createIdentifier("exports"),me.createIdentifier(s)),64,me.createIdentifier(s)))}function RHt(s){switch(s.kind){case 263:case 264:return[s.name.text];case 244:return Xt(s.declarationList.declarations,c=>Ir(c.name)?c.name.text:void 0);case 268:case 267:case 266:case 265:case 272:return E;case 245:return pe.fail("Can't export an ExpressionStatement");default:return pe.assertNever(s,`Unexpected decl kind ${s.kind}`)}}function kNs(s,c,g){switch(s.kind){case 273:{let d=s.importClause;if(!d)return;let h=d.name&&g(d.name)?d.name:void 0,_=d.namedBindings&&xNs(d.namedBindings,g);return h||_?me.createImportDeclaration(void 0,me.createImportClause(d.phaseModifier,h,_),JA(c),void 0):void 0}case 272:return g(s.name)?s:void 0;case 261:{let d=GNs(s.name,g);return d?BNs(d,s.type,dsn(c),s.parent.flags):void 0}default:return pe.assertNever(s,`Unexpected import kind ${s.kind}`)}}function xNs(s,c){if(s.kind===275)return c(s.name)?s:void 0;{let g=s.elements.filter(d=>c(d.name));return g.length?me.createNamedImports(g):void 0}}function GNs(s,c){switch(s.kind){case 80:return c(s)?s:void 0;case 208:return s;case 207:{let g=s.elements.filter(d=>d.propertyName||!Ir(d.name)||c(d.name));return g.length?me.createObjectBindingPattern(g):void 0}}}function FNs(s){return VC(s)?Gs(s.expression.left.name,Ir):Gs(s.name,Ir)}function Csn(s){switch(s.kind){case 261:return s.parent.parent;case 209:return Csn(Ma(s.parent.parent,c=>nc(c)||hg(c)));default:return s}}function ZNs(s,c,g,d,h){if(!Isn(s,c,h,g))if(h)VC(c)||d.insertExportModifier(s,c);else{let _=RHt(c);_.length!==0&&d.insertNodesAfter(s,c,_.map(msn))}}function NHt(s,c,g,d){let h=c.getTypeChecker();if(d){let _=EPe(s,d.all,h),S=Mo(s.fileName),R=tz(s.fileName);return Ro(S,WNs(ONs(_.oldFileImportsFromTargetFile,_.movedSymbols),R,S,g))+R}return""}function LNs(s){let{file:c}=s,g=JVe(Vz(s)),{statements:d}=c,h=Se(d,W=>W.end>g.pos);if(h===-1)return;let _=d[h],S=Esn(c,_);S&&(h=S.start);let R=Se(d,W=>W.end>=g.end,h);R!==-1&&g.end<=d[R].getStart()&&R--;let T=Esn(c,d[R]);return T&&(R=T.end),{toMove:d.slice(h,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function R1e(s){let c=LNs(s);if(c===void 0)return;let g=[],d=[],{toMove:h,afterLast:_}=c;return Fn(h,VNs,(S,R)=>{for(let T=S;T!!(c.transformFlags&2))}function VNs(s){return!PNs(s)&&!nS(s)}function PNs(s){switch(s.kind){case 273:return!0;case 272:return!Ga(s,32);case 244:return s.declarationList.declarations.every(c=>!!c.initializer&&ay(c.initializer,!0));default:return!1}}function EPe(s,c,g,d=new Set,h){var _;let S=new Set,R=new Map,T=new Map,W=ee(DHt(c));W&&R.set(W,[!1,Gs((_=W.declarations)==null?void 0:_[0],re=>uy(re)||Vw(re)||Zx(re)||km(re)||hg(re)||nc(re))]);for(let re of c)xHt(re,ge=>{S.add(pe.checkDefined(VC(ge)?g.getSymbolAtLocation(ge.expression.left):ge.symbol,"Need a symbol here"))});let V=new Set;for(let re of c)kHt(re,g,h,(ge,Ie)=>{if(!jt(ge.declarations))return;if(d.has(FC(ge,g))){V.add(ge);return}let _e=de(ge.declarations,Ont);if(_e){let Ee=R.get(ge);R.set(ge,[(Ee===void 0||Ee)&&Ie,Gs(_e,Ne=>uy(Ne)||Vw(Ne)||Zx(Ne)||km(Ne)||hg(Ne)||nc(Ne))])}else!S.has(ge)&&ue(ge.declarations,Ee=>GHt(Ee)&&MNs(Ee)===s)&&T.set(ge,Ie)});for(let re of R.keys())V.add(re);let M=new Map;for(let re of s.statements)k(c,re)||(W&&re.transformFlags&2&&V.delete(W),kHt(re,g,h,(ge,Ie)=>{S.has(ge)&&M.set(ge,Ie),V.delete(ge)}));return{movedSymbols:S,targetFileImportsFromOldFile:T,oldFileImportsFromTargetFile:M,oldImportsNeededByTargetFile:R,unusedImportsFromOldFile:V};function ee(re){if(re===void 0)return;let ge=g.getJsxNamespace(re),Ie=g.resolveName(ge,re,1920,!0);return Ie&&jt(Ie.declarations,Ont)?Ie:void 0}}function WNs(s,c,g,d){let h=s;for(let _=1;;_++){let S=Ro(g,h+c);if(!d.fileExists(S))return h;h=`${s}.${_}`}}function ONs(s,c){return SB(s,Hrt)||SB(c,Hrt)||"newFile"}function kHt(s,c,g,d){s.forEachChild(function h(_){if(Ir(_)&&!HT(_)){if(g&&!cy(g,_))return;let S=c.getSymbolAtLocation(_);S&&d(S,JL(_))}else _.forEachChild(h)})}function xHt(s,c){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return c(s);case 244:return X(s.declarationList.declarations,g=>ysn(g.name,c));case 245:{let{expression:g}=s;return fo(g)&&nI(g)===1?c(s):void 0}}}function Ont(s){switch(s.kind){case 272:case 277:case 274:case 275:return!0;case 261:return _sn(s);case 209:return nc(s.parent.parent)&&_sn(s.parent.parent);default:return!1}}function _sn(s){return ll(s.parent.parent.parent)&&!!s.initializer&&ay(s.initializer,!0)}function GHt(s){return bsn(s)&&ll(s.parent)||nc(s)&&ll(s.parent.parent.parent)}function MNs(s){return nc(s)?s.parent.parent.parent:s.parent}function ysn(s,c){switch(s.kind){case 80:return c(Ma(s.parent,g=>nc(g)||hg(g)));case 208:case 207:return X(s.elements,g=>yp(g)?void 0:ysn(g.name,c));default:return pe.assertNever(s,`Unexpected name kind ${s.kind}`)}}function bsn(s){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return!0;default:return!1}}function HNs(s,c,g,d,h){var _;let S=new Set,R=(_=d.symbol)==null?void 0:_.exports;if(R){let W=c.getTypeChecker(),V=new Map;for(let M of h.all)hsn(M)&&Ga(M,32)&&xHt(M,ee=>{var re;let ge=mE(ee)?(re=R.get(ee.symbol.escapedName))==null?void 0:re.declarations:void 0,Ie=X(ge,_e=>Gh(_e)?_e:R0(_e)?Gs(_e.parent.parent,Gh):void 0);Ie&&Ie.moduleSpecifier&&V.set(Ie,(V.get(Ie)||new Set).add(ee))});for(let[M,ee]of Do(V))if(M.exportClause&&mv(M.exportClause)&&B(M.exportClause.elements)){let re=M.exportClause.elements,ge=Me(re,Ie=>de(FC(Ie.symbol,W).declarations,_e=>GHt(_e)&&ee.has(_e))===void 0);if(B(ge)===0){s.deleteNode(d,M),S.add(M);continue}B(ge)Gh(W)&&!!W.moduleSpecifier&&!S.has(W));T?s.insertNodesBefore(d,T,g,!0):s.insertNodesAfter(d,d.statements[d.statements.length-1],g)}function Esn(s,c){if(kd(c)){let g=c.symbol.declarations;if(g===void 0||B(g)<=1||!k(g,c))return;let d=g[0],h=g[B(g)-1],_=Xt(g,T=>ms(T)===s&&Lc(T)?T:void 0),S=Se(s.statements,T=>T.end>=h.end),R=Se(s.statements,T=>T.end>=d.end);return{toMove:_,start:R,end:S}}}function FHt(s,c,g){let d=new Set;for(let h of s.imports){let _=v7(h);if(Mf(_)&&_.importClause&&_.importClause.namedBindings&&yN(_.importClause.namedBindings))for(let S of _.importClause.namedBindings.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(FC(R,g))}if(y7(_.parent)&&Km(_.parent.name))for(let S of _.parent.name.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(FC(R,g))}}for(let h of c)kHt(h,g,void 0,_=>{let S=FC(_,g);S.valueDeclaration&&ms(S.valueDeclaration).path===s.path&&d.add(S)});return d}function MF(s){return s.error!==void 0}function e5(s,c){return c?s.substr(0,c.length)===c:!0}function ZHt(s,c,g,d){return jo(s)&&!xa(c)&&!g.resolveName(s.name.text,s,111551,!1)&&!p(s.name)&&!iv(s.name)?s.name.text:GU(xa(c)?"newProperty":"newLocal",d)}function LHt(s,c,g,d,h,_){c.forEach(([S,R],T)=>{var W;let V=FC(T,d);d.isUnknownSymbol(V)?_.addVerbatimImport(pe.checkDefined(R??ji((W=T.declarations)==null?void 0:W[0],d7))):V.parent===void 0?(pe.assert(R!==void 0,"expected module symbol to have a declaration"),_.addImportForModuleSymbol(T,S,R)):_.addImportFromExportedSymbol(V,S,R)}),THt(g,s.fileName,_,h)}var SPe="Inline variable",VHt=Bu(Z.Inline_variable),PHt={name:SPe,description:VHt,kind:"refactor.inline.variable"};Px(SPe,{kinds:[PHt.kind],getAvailableActions(s){let{file:c,program:g,preferences:d,startPosition:h,triggerReason:_}=s,S=Ssn(c,h,_==="invoked",g);return S?Oz.isRefactorErrorInfo(S)?d.provideRefactorNotApplicableReason?[{name:SPe,description:VHt,actions:[{...PHt,notApplicableReason:S.error}]}]:E:[{name:SPe,description:VHt,actions:[PHt]}]:E},getEditsForAction(s,c){pe.assert(c===SPe,"Unexpected refactor invoked");let{file:g,program:d,startPosition:h}=s,_=Ssn(g,h,!0,d);if(!_||Oz.isRefactorErrorInfo(_))return;let{references:S,declaration:R,replacement:T}=_;return{edits:xo.ChangeTracker.with(s,V=>{for(let M of S){let ee=Zg(T)&&Ir(M)&&gv(M.parent);ee&&pie(ee)&&!MI(ee.parent.parent)?QNs(V,g,ee,T):V.replaceNode(g,M,YNs(M,T))}V.delete(g,R)})}}});function Ssn(s,c,g,d){var h,_;let S=d.getTypeChecker(),R=Lb(s,c),T=R.parent;if(Ir(R)){if(Gne(T)&&h7(T)&&Ir(T.name)){if(((h=S.getMergedSymbol(T.symbol).declarations)==null?void 0:h.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(vsn(T))return;let W=Bsn(T,S,s);return W&&{references:W,declaration:T,replacement:T.initializer}}if(g){let W=S.resolveName(R.text,R,111551,!1);if(W=W&&S.getMergedSymbol(W),((_=W?.declarations)==null?void 0:_.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let V=W.declarations[0];if(!Gne(V)||!h7(V)||!Ir(V.name)||vsn(V))return;let M=Bsn(V,S,s);return M&&{references:M,declaration:V,replacement:V.initializer}}return{error:Bu(Z.Could_not_find_variable_to_inline)}}}function vsn(s){let c=Ma(s.parent.parent,Ch);return jt(c.modifiers,y)}function Bsn(s,c,g){let d=[],h=Kp.Core.eachSymbolReferenceInFile(s.name,c,g,_=>{if(Kp.isWriteAccessForReference(_)&&!a0(_.parent)||R0(_.parent)||Cf(_.parent)||Fw(_.parent)||sl(s,_.pos))return!0;d.push(_)});return d.length===0||h?void 0:d}function YNs(s,c){c=JA(c);let{parent:g}=s;return un(g)&&(x7(c)XNs(c.file,c.program,d,_,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function XNs(s,c,g,d,h,_,S){let R=c.getTypeChecker(),T=EPe(s,g.all,R),W=NHt(s,c,h,g),V=fPe(W,s.externalModuleIndicator?99:s.commonJsModuleIndicator?1:void 0,c,h),M=x0.createImportAdder(s,_.program,_.preferences,_.host),ee=x0.createImportAdder(V,_.program,_.preferences,_.host);vHt(s,V,T,d,g,c,h,S,ee,M),BHt(c,d,s.fileName,W,JD(h))}var JNs={},MHt="Convert overload list to single signature",wsn=Bu(Z.Convert_overload_list_to_single_signature),Tsn={name:MHt,description:wsn,kind:"refactor.rewrite.function.overloadList"};Px(MHt,{kinds:[Tsn.kind],getEditsForAction:KNs,getAvailableActions:UNs});function UNs(s){let{file:c,startPosition:g,program:d}=s;return Nsn(c,g,d)?[{name:MHt,description:wsn,actions:[Tsn]}]:E}function KNs(s){let{file:c,startPosition:g,program:d}=s,h=Nsn(c,g,d);if(!h)return;let _=d.getTypeChecker(),S=h[h.length-1],R=S;switch(S.kind){case 174:{R=me.updateMethodSignature(S,S.modifiers,S.name,S.questionToken,S.typeParameters,W(h),S.type);break}case 175:{R=me.updateMethodDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.questionToken,S.typeParameters,W(h),S.type,S.body);break}case 180:{R=me.updateCallSignature(S,S.typeParameters,W(h),S.type);break}case 177:{R=me.updateConstructorDeclaration(S,S.modifiers,W(h),S.body);break}case 181:{R=me.updateConstructSignature(S,S.typeParameters,W(h),S.type);break}case 263:{R=me.updateFunctionDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.typeParameters,W(h),S.type,S.body);break}default:return pe.failBadSyntaxKind(S,"Unhandled signature kind in overload list conversion refactoring")}if(R===S)return;return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,ee=>{ee.replaceNodeRange(c,h[0],h[h.length-1],R)})};function W(ee){let re=ee[ee.length-1];return kd(re)&&re.body&&(ee=ee.slice(0,ee.length-1)),me.createNodeArray([me.createParameterDeclaration(void 0,me.createToken(26),"args",void 0,me.createUnionTypeNode(At(ee,V)))])}function V(ee){let re=At(ee.parameters,M);return ti(me.createTupleTypeNode(re),jt(re,ge=>!!B(k3(ge)))?0:1)}function M(ee){pe.assert(Ir(ee.name));let re=gn(me.createNamedTupleMember(ee.dotDotDotToken,ee.name,ee.questionToken,ee.type||me.createKeywordTypeNode(133)),ee),ge=ee.symbol&&ee.symbol.getDocumentationComment(_);if(ge){let Ie=k1e(ge);Ie.length&&kB(re,[{text:`* ${Ie.split(` `).map(_e=>` * ${_e}`).join(` `)} - `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function bsn(s){switch(s.kind){case 174:case 175:case 180:case 177:case 181:case 263:return!0}return!1}function Esn(s,c,g){let d=Jc(s,c),h=ji(d,bsn);if(!h||kd(h)&&h.body&&Mie(h.body,c))return;let _=g.getTypeChecker(),S=h.symbol;if(!S)return;let R=S.declarations;if(B(R)<=1||!ue(R,ee=>ms(ee)===s)||!bsn(R[0]))return;let T=R[0].kind;if(!ue(R,ee=>ee.kind===T))return;let W=R;if(jt(W,ee=>!!ee.typeParameters||jt(ee.parameters,re=>!!re.modifiers||!Ir(re.name))))return;let V=Xt(W,ee=>_.getSignatureFromDeclaration(ee));if(B(V)!==B(R))return;let M=_.getReturnTypeOfSignature(V[0]);if(ue(V,ee=>_.getReturnTypeOfSignature(ee)===M))return W}var PHt="Add or remove braces in an arrow function",Ssn=Bu(Z.Add_or_remove_braces_in_an_arrow_function),Wnt={name:"Add braces to arrow function",description:Bu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},SPe={name:"Remove braces from arrow function",description:Bu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};Px(PHt,{kinds:[SPe.kind],getEditsForAction:FNs,getAvailableActions:GNs});function GNs(s){let{file:c,startPosition:g,triggerReason:d}=s,h=vsn(c,g,d==="invoked");return h?MF(h)?s.preferences.provideRefactorNotApplicableReason?[{name:PHt,description:Ssn,actions:[{...Wnt,notApplicableReason:h.error},{...SPe,notApplicableReason:h.error}]}]:E:[{name:PHt,description:Ssn,actions:[h.addBraces?Wnt:SPe]}]:E}function FNs(s,c){let{file:g,startPosition:d}=s,h=vsn(g,d);pe.assert(h&&!MF(h),"Expected applicable refactor info");let{expression:_,returnStatement:S,func:R}=h,T;if(c===Wnt.name){let V=me.createReturnStatement(_);T=me.createBlock([V],!0),Uie(_,V,g,3,!0)}else if(c===SPe.name&&S){let V=_||me.createVoidZero();T=ePe(V)?me.createParenthesizedExpression(V):V,m1e(S,T,g,3,!1),Uie(S,T,g,3,!1),jde(S,T,g,3,!1)}else pe.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>{V.replaceNode(g,R.body,T)})}}function vsn(s,c,g=!0,d){let h=Jc(s,c),_=A1(h);if(!_)return{error:Bu(Z.Could_not_find_a_containing_arrow_function)};if(!lA(_))return{error:Bu(Z.Containing_function_is_not_an_arrow_function)};if(!(!cy(_,h)||cy(_.body,h)&&!g)){if(e5(Wnt.kind,d)&&un(_.body))return{func:_,addBraces:!0,expression:_.body};if(e5(SPe.kind,d)&&$u(_.body)&&_.body.statements.length===1){let S=ma(_.body.statements);if(I2(S)){let R=S.expression&&og(aU(S.expression,!1))?me.createParenthesizedExpression(S.expression):S.expression;return{func:_,addBraces:!1,expression:R,returnStatement:S}}}}}var ZNs={},Bsn="Convert arrow function or function expression",LNs=Bu(Z.Convert_arrow_function_or_function_expression),vPe={name:"Convert to anonymous function",description:Bu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},BPe={name:"Convert to named function",description:Bu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},wPe={name:"Convert to arrow function",description:Bu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};Px(Bsn,{kinds:[vPe.kind,BPe.kind,wPe.kind],getEditsForAction:PNs,getAvailableActions:VNs});function VNs(s){let{file:c,startPosition:g,program:d,kind:h}=s,_=Tsn(c,g,d);if(!_)return E;let{selectedVariableDeclaration:S,func:R}=_,T=[],W=[];if(e5(BPe.kind,h)){let V=S||lA(R)&&nc(R.parent)?void 0:Bu(Z.Could_not_convert_to_named_function);V?W.push({...BPe,notApplicableReason:V}):T.push(BPe)}if(e5(vPe.kind,h)){let V=!S&&lA(R)?void 0:Bu(Z.Could_not_convert_to_anonymous_function);V?W.push({...vPe,notApplicableReason:V}):T.push(vPe)}if(e5(wPe.kind,h)){let V=UA(R)?void 0:Bu(Z.Could_not_convert_to_arrow_function);V?W.push({...wPe,notApplicableReason:V}):T.push(wPe)}return[{name:Bsn,description:LNs,actions:T.length===0&&s.preferences.provideRefactorNotApplicableReason?W:T}]}function PNs(s,c){let{file:g,startPosition:d,program:h}=s,_=Tsn(g,d,h);if(!_)return;let{func:S}=_,R=[];switch(c){case vPe.name:R.push(...HNs(s,S));break;case BPe.name:let T=MNs(S);if(!T)return;R.push(...YNs(s,S,T));break;case wPe.name:if(!UA(S))return;R.push(...QNs(s,S));break;default:return pe.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function wsn(s){let c=!1;return s.forEachChild(function g(d){if(Oie(d)){c=!0;return}!xa(d)&&!ih(d)&&!UA(d)&&Lu(d,g)}),c}function Tsn(s,c,g){let d=Jc(s,c),h=g.getTypeChecker(),_=ONs(s,h,d.parent);if(_&&!wsn(_.body)&&!h.containsArgumentsReference(_))return{selectedVariableDeclaration:!0,func:_};let S=A1(d);if(S&&(UA(S)||lA(S))&&!cy(S.body,d)&&!wsn(S.body)&&!h.containsArgumentsReference(S))return UA(S)&&Nsn(s,h,S)?void 0:{selectedVariableDeclaration:!1,func:S}}function WNs(s){return nc(s)||u_(s)&&s.declarations.length===1}function ONs(s,c,g){if(!WNs(g))return;let h=(nc(g)?g:ma(g.declarations)).initializer;if(h&&(lA(h)||UA(h)&&!Nsn(s,c,h)))return h}function Rsn(s){if(un(s)){let c=me.createReturnStatement(s),g=s.getSourceFile();return gn(c,s),Vy(c),m1e(s,c,g,void 0,!0),me.createBlock([c],!0)}else return s}function MNs(s){let c=s.parent;if(!nc(c)||!h7(c))return;let g=c.parent,d=g.parent;if(!(!u_(g)||!Ch(d)||!Ir(c.name)))return{variableDeclaration:c,variableDeclarationList:g,statement:d,name:c.name}}function HNs(s,c){let{file:g}=s,d=Rsn(c.body),h=me.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return xo.ChangeTracker.with(s,_=>_.replaceNode(g,c,h))}function YNs(s,c,g){let{file:d}=s,h=Rsn(c.body),{variableDeclaration:_,variableDeclarationList:S,statement:R,name:T}=g;Hbe(R);let W=Hc(_)&32|o_(c),V=me.createModifiersFromModifierFlags(W),M=me.createFunctionDeclaration(B(V)?V:void 0,c.asteriskToken,T,c.typeParameters,c.parameters,c.type,h);return S.declarations.length===1?xo.ChangeTracker.with(s,ee=>ee.replaceNode(d,R,M)):xo.ChangeTracker.with(s,ee=>{ee.delete(d,_),ee.insertNodeAfter(d,R,M)})}function QNs(s,c){let{file:g}=s,h=c.body.statements[0],_;XNs(c.body,h)?(_=h.expression,Vy(_),xU(h,_)):_=c.body;let S=me.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,me.createToken(39),_);return xo.ChangeTracker.with(s,R=>R.replaceNode(g,c,S))}function XNs(s,c){return s.statements.length===1&&I2(c)&&!!c.expression}function Nsn(s,c,g){return!!g.name&&Kp.Core.isSymbolReferencedInFile(g.name,c,s)}var JNs={},Ont="Convert parameters to destructured object",UNs=1,Dsn=Bu(Z.Convert_parameters_to_destructured_object),ksn={name:Ont,description:Dsn,kind:"refactor.rewrite.parameters.toDestructured"};Px(Ont,{kinds:[ksn.kind],getEditsForAction:jNs,getAvailableActions:KNs});function KNs(s){let{file:c,startPosition:g}=s;return n0(c)||!Fsn(c,g,s.program.getTypeChecker())?E:[{name:Ont,description:Dsn,actions:[ksn]}]}function jNs(s,c){pe.assert(c===Ont,"Unexpected action name");let{file:g,startPosition:d,program:h,cancellationToken:_,host:S}=s,R=Fsn(g,d,h.getTypeChecker());if(!R||!_)return;let T=qNs(R,h,_);return T.valid?{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>zNs(g,h,S,V,R,T))}:{edits:[]}}function zNs(s,c,g,d,h,_){let S=_.signature,R=At(Psn(h,c,g),V=>JA(V));if(S){let V=At(Psn(S,c,g),M=>JA(M));W(S,V)}W(h,R);let T=cl(_.functionCalls,(V,M)=>Zt(V.pos,M.pos));for(let V of T)if(V.arguments&&V.arguments.length){let M=JA(cDs(h,V.arguments),!0);d.replaceNodeRange(ms(V),ma(V.arguments),Ei(V.arguments),M,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}function W(V,M){d.replaceNodeRangeWithNodes(s,ma(V.parameters),Ei(V.parameters),M,{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}}function qNs(s,c,g){let d=uDs(s),h=Tc(s)?lDs(s):[],_=io([...d,...h],yg),S=c.getTypeChecker(),R=er(_,M=>Kp.getReferenceEntriesForNode(-1,M,c,c.getSourceFiles(),g)),T=W(R);return ue(T.declarations,M=>k(_,M))||(T.valid=!1),T;function W(M){let ee={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:ee,valid:!0},ge=At(d,V),Ie=At(h,V),_e=Tc(s),Ee=At(d,Ne=>WHt(Ne,S));for(let Ne of M){if(Ne.kind===Kp.EntryKind.Span){re.valid=!1;continue}if(k(Ee,V(Ne.node))){if(rDs(Ne.node.parent)){re.signature=Ne.node.parent;continue}let Ze=Gsn(Ne);if(Ze){re.functionCalls.push(Ze);continue}}let Te=WHt(Ne.node,S);if(Te&&k(Ee,Te)){let Ze=OHt(Ne);if(Ze){re.declarations.push(Ze);continue}}if(k(ge,V(Ne.node))||Ode(Ne.node)){if(xsn(Ne))continue;let We=OHt(Ne);if(We){re.declarations.push(We);continue}let Ue=Gsn(Ne);if(Ue){re.functionCalls.push(Ue);continue}}if(_e&&k(Ie,V(Ne.node))){if(xsn(Ne))continue;let We=OHt(Ne);if(We){re.declarations.push(We);continue}let Ue=$Ns(Ne);if(Ue){ee.accessExpressions.push(Ue);continue}if(pm(s.parent)){let $e=eDs(Ne);if($e){ee.typeUsages.push($e);continue}}}re.valid=!1}return re}function V(M){let ee=S.getSymbolAtLocation(M);return ee&&qrt(ee,S)}}function WHt(s,c){let g=k1e(s);if(g){let d=c.getContextualTypeForObjectLiteralElement(g),h=d?.getSymbol();if(h&&!(iI(h)&6))return h}}function xsn(s){let c=s.node;if(uy(c.parent)||Vw(c.parent)||km(c.parent)||Zx(c.parent)||R0(c.parent)||Cf(c.parent))return c}function OHt(s){if(jh(s.node.parent))return s.node}function Gsn(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 214:case 215:let d=Gs(g,av);if(d&&d.expression===c)return d;break;case 212:let h=Gs(g,jo);if(h&&h.parent&&h.name===c){let S=Gs(h.parent,av);if(S&&S.expression===h)return S}break;case 213:let _=Gs(g,Yg);if(_&&_.parent&&_.argumentExpression===c){let S=Gs(_.parent,av);if(S&&S.expression===_)return S}break}}}function $Ns(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 212:let d=Gs(g,jo);if(d&&d.expression===c)return d;break;case 213:let h=Gs(g,Yg);if(h&&h.expression===c)return h;break}}}function eDs(s){let c=s.node;if(DU(c)===2||dAe(c.parent))return c}function Fsn(s,c,g){let d=Hie(s,c),h=Wge(d);if(!tDs(d)&&h&&nDs(h,g)&&cy(h,d)&&!(h.body&&cy(h.body,d)))return h}function tDs(s){let c=ji(s,l3);if(c){let g=ji(c,d=>!l3(d));return!!g&&kd(g)}return!1}function rDs(s){return hl(s)&&(g_(s.parent)||mh(s.parent))}function nDs(s,c){var g;if(!iDs(s.parameters,c))return!1;switch(s.kind){case 263:return Zsn(s)&&TPe(s,c);case 175:if(og(s.parent)){let d=WHt(s.name,c);return((g=d?.declarations)==null?void 0:g.length)===1&&TPe(s,c)}return TPe(s,c);case 177:return pm(s.parent)?Zsn(s.parent)&&TPe(s,c):Lsn(s.parent.parent)&&TPe(s,c);case 219:case 220:return Lsn(s.parent)}return!1}function TPe(s,c){return!!s.body&&!c.isImplementationOfOverload(s)}function Zsn(s){return s.name?!0:!!Qie(s,90)}function iDs(s,c){return oDs(s)>=UNs&&ue(s,g=>sDs(g,c))}function sDs(s,c){if(EB(s)){let g=c.getTypeAtLocation(s);if(!c.isArrayType(g)&&!c.isTupleType(g))return!1}return!s.modifiers&&Ir(s.name)}function Lsn(s){return nc(s)&&rI(s)&&Ir(s.name)&&!s.type}function MHt(s){return s.length>0&&Oie(s[0].name)}function oDs(s){return MHt(s)?s.length-1:s.length}function Vsn(s){return MHt(s)&&(s=me.createNodeArray(s.slice(1),s.hasTrailingComma)),s}function aDs(s,c){return Ir(c)&&c2(c)===s?me.createShorthandPropertyAssignment(s):me.createPropertyAssignment(s,c)}function cDs(s,c){let g=Vsn(s.parameters),d=EB(Ei(g)),h=d?c.slice(0,g.length-1):c,_=At(h,(R,T)=>{let W=Mnt(g[T]),V=aDs(W,R);return Vy(V.name),fm(V)&&Vy(V.initializer),xU(R,V),V});if(d&&c.length>=g.length){let R=c.slice(g.length-1),T=me.createPropertyAssignment(Mnt(Ei(g)),me.createArrayLiteralExpression(R));_.push(T)}return me.createObjectLiteralExpression(_,!1)}function Psn(s,c,g){let d=c.getTypeChecker(),h=Vsn(s.parameters),_=At(h,V),S=me.createObjectBindingPattern(_),R=M(h),T;ue(h,ge)&&(T=me.createObjectLiteralExpression());let W=me.createParameterDeclaration(void 0,void 0,S,void 0,R,T);if(MHt(s.parameters)){let Ie=s.parameters[0],_e=me.createParameterDeclaration(void 0,void 0,Ie.name,void 0,Ie.type);return Vy(_e.name),xU(Ie.name,_e.name),Ie.type&&(Vy(_e.type),xU(Ie.type,_e.type)),me.createNodeArray([_e,W])}return me.createNodeArray([W]);function V(Ie){let _e=me.createBindingElement(void 0,void 0,Mnt(Ie),EB(Ie)&&ge(Ie)?me.createArrayLiteralExpression():Ie.initializer);return Vy(_e),Ie.initializer&&_e.initializer&&xU(Ie.initializer,_e.initializer),_e}function M(Ie){let _e=At(Ie,ee);return Gw(me.createTypeLiteralNode(_e),1)}function ee(Ie){let _e=Ie.type;!_e&&(Ie.initializer||EB(Ie))&&(_e=re(Ie));let Ee=me.createPropertySignature(void 0,Mnt(Ie),ge(Ie)?me.createToken(58):Ie.questionToken,_e);return Vy(Ee),xU(Ie.name,Ee.name),Ie.type&&Ee.type&&xU(Ie.type,Ee.type),Ee}function re(Ie){let _e=d.getTypeAtLocation(Ie);return qde(_e,Ie,c,g)}function ge(Ie){if(EB(Ie)){let _e=d.getTypeAtLocation(Ie);return!d.isTupleType(_e)}return d.isOptionalParameter(Ie)}}function Mnt(s){return c2(s.name)}function lDs(s){switch(s.parent.kind){case 264:let c=s.parent;return c.name?[c.name]:[pe.checkDefined(Qie(c,90),"Nameless class declaration should be a default export")];case 232:let d=s.parent,h=s.parent.parent,_=d.name;return _?[_,h.name]:[h.name]}}function uDs(s){switch(s.kind){case 263:return s.name?[s.name]:[pe.checkDefined(Qie(s,90),"Nameless function declaration should be a default export")];case 175:return[s.name];case 177:let g=pe.checkDefined(qd(s,137,s.getSourceFile()),"Constructor declaration should have constructor keyword");return s.parent.kind===232?[s.parent.parent.name,g]:[g];case 220:return[s.parent.name];case 219:return s.name?[s.name,s.parent.name]:[s.parent.name];default:return pe.assertNever(s,`Unexpected function declaration kind ${s.kind}`)}}var gDs={},HHt="Convert to template string",YHt=Bu(Z.Convert_to_template_string),QHt={name:HHt,description:YHt,kind:"refactor.rewrite.string"};Px(HHt,{kinds:[QHt.kind],getEditsForAction:dDs,getAvailableActions:ADs});function ADs(s){let{file:c,startPosition:g}=s,d=Wsn(c,g),h=XHt(d),_=Zg(h),S={name:HHt,description:YHt,actions:[]};return _&&s.triggerReason!=="invoked"?E:MT(h)&&(_||fo(h)&&JHt(h).isValidConcatenation)?(S.actions.push(QHt),[S]):s.preferences.provideRefactorNotApplicableReason?(S.actions.push({...QHt,notApplicableReason:Bu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[S]):E}function Wsn(s,c){let g=Jc(s,c),d=XHt(g);return!JHt(d).isValidConcatenation&&gI(d.parent)&&fo(d.parent.parent)?d.parent.parent:g}function dDs(s,c){let{file:g,startPosition:d}=s,h=Wsn(g,d);switch(c){case YHt:return{edits:pDs(s,h)};default:return pe.fail("invalid action")}}function pDs(s,c){let g=XHt(c),d=s.file,h=CDs(JHt(g),d),_=n2(d.text,g.end);if(_){let S=_[_.length-1],R={pos:_[0].pos,end:S.end};return xo.ChangeTracker.with(s,T=>{T.deleteRange(d,R),T.replaceNode(d,g,h)})}else return xo.ChangeTracker.with(s,S=>S.replaceNode(d,g,h))}function fDs(s){return!(s.operatorToken.kind===64||s.operatorToken.kind===65)}function XHt(s){return ji(s.parent,g=>{switch(g.kind){case 212:case 213:return!1;case 229:case 227:return!(fo(g.parent)&&fDs(g.parent));default:return"quit"}})||s}function JHt(s){let c=S=>{if(!fo(S))return{nodes:[S],operators:[],validOperators:!0,hasString:Zg(S)||GP(S)};let{nodes:R,operators:T,hasString:W,validOperators:V}=c(S.left);if(!(W||Zg(S.right)||FF(S.right)))return{nodes:[S],operators:[],hasString:!1,validOperators:!0};let M=S.operatorToken.kind===40,ee=V&&M;return R.push(S.right),T.push(S.operatorToken),{nodes:R,operators:T,hasString:!0,validOperators:ee}},{nodes:g,operators:d,validOperators:h,hasString:_}=c(s);return{nodes:g,operators:d,isValidConcatenation:h&&_}}var IDs=(s,c)=>(g,d)=>{g(d,h)=>{for(;d.length>0;){let _=d.shift();jde(s[_],h,c,3,!1),g(_,h)}};function mDs(s){return s.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function Osn(s){let c=tQ(s)||uie(s)?-2:-1;return xp(s).slice(1,c)}function Msn(s,c){let g=[],d="",h="";for(;s{Hsn(Te);let We=Ze===ee.templateSpans.length-1,Ue=Te.literal.text+(We?ge:""),$e=Osn(Te.literal)+(We?Ie:"");return me.createTemplateSpan(Te.expression,Ee&&We?me.createTemplateTail(Ue,$e):me.createTemplateMiddle(Ue,$e))});W.push(...Ne)}else{let Ne=Ee?me.createTemplateTail(ge,Ie):me.createTemplateMiddle(ge,Ie);h(_e,Ne),W.push(me.createTemplateSpan(ee,Ne))}}return me.createTemplateExpression(V,W)}function Hsn(s){let c=s.getSourceFile();jde(s,s.expression,c,3,!1),m1e(s.expression,s.expression,c,3,!1)}function _Ds(s){return gI(s)&&(Hsn(s),s=s.expression),s}var yDs={},Hnt="Convert to optional chain expression",UHt=Bu(Z.Convert_to_optional_chain_expression),KHt={name:Hnt,description:UHt,kind:"refactor.rewrite.expression.optionalChain"};Px(Hnt,{kinds:[KHt.kind],getEditsForAction:EDs,getAvailableActions:bDs});function bDs(s){let c=Ysn(s,s.triggerReason==="invoked");return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Hnt,description:UHt,actions:[{...KHt,notApplicableReason:c.error}]}]:E:[{name:Hnt,description:UHt,actions:[KHt]}]:E}function EDs(s,c){let g=Ysn(s);return pe.assert(g&&!MF(g),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(s,h=>DDs(s.file,s.program.getTypeChecker(),h,g,c)),renameFilename:void 0,renameLocation:void 0}}function Ynt(s){return fo(s)||Lw(s)}function SDs(s){return VC(s)||I2(s)||Ch(s)}function Qnt(s){return Ynt(s)||SDs(s)}function Ysn(s,c=!0){let{file:g,program:d}=s,h=Vz(s),_=h.length===0;if(_&&!c)return;let S=Jc(g,h.start),R=Hde(g,h.start+h.length),T=wA(S.pos,R&&R.end>=S.pos?R.getEnd():S.getEnd()),W=_?RDs(S):TDs(S,T),V=W&&Qnt(W)?NDs(W):void 0;if(!V)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let M=d.getTypeChecker();return Lw(V)?vDs(V,M):BDs(V)}function vDs(s,c){let g=s.condition,d=zHt(s.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:Bu(Z.Could_not_find_convertible_access_expression)};if((jo(g)||Ir(g))&&jHt(g,d.expression))return{finalExpression:d,occurrences:[g],expression:s};if(fo(g)){let h=Qsn(d.expression,g);return h?{finalExpression:d,occurrences:h,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}}function BDs(s){if(s.operatorToken.kind!==56)return{error:Bu(Z.Can_only_convert_logical_AND_access_chains)};let c=zHt(s.right);if(!c)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let g=Qsn(c.expression,s.left);return g?{finalExpression:c,occurrences:g,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}function Qsn(s,c){let g=[];for(;fo(c)&&c.operatorToken.kind===56;){let h=jHt(QA(s),QA(c.right));if(!h)break;g.push(h),s=h,c=c.left}let d=jHt(s,c);return d&&g.push(d),g.length>0?g:void 0}function jHt(s,c){if(!(!Ir(c)&&!jo(c)&&!Yg(c)))return wDs(s,c)?c:void 0}function wDs(s,c){for(;(Zl(s)||jo(s)||Yg(s))&&R1e(s)!==R1e(c);)s=s.expression;for(;jo(s)&&jo(c)||Yg(s)&&Yg(c);){if(R1e(s)!==R1e(c))return!1;s=s.expression,c=c.expression}return Ir(s)&&Ir(c)&&s.getText()===c.getText()}function R1e(s){if(Ir(s)||d1(s))return s.getText();if(jo(s))return R1e(s.name);if(Yg(s))return R1e(s.argumentExpression)}function TDs(s,c){for(;s.parent;){if(Qnt(s)&&c.length!==0&&s.end>=c.start+c.length)return s;s=s.parent}}function RDs(s){for(;s.parent;){if(Qnt(s)&&!Qnt(s.parent))return s;s=s.parent}}function NDs(s){if(Ynt(s))return s;if(Ch(s)){let c=m3(s),g=c?.initializer;return g&&Ynt(g)?g:void 0}return s.expression&&Ynt(s.expression)?s.expression:void 0}function zHt(s){if(s=QA(s),fo(s))return zHt(s.left);if((jo(s)||Yg(s)||Zl(s))&&!GC(s))return s}function Xsn(s,c,g){if(jo(c)||Yg(c)||Zl(c)){let d=Xsn(s,c.expression,g),h=g.length>0?g[g.length-1]:void 0,_=h?.getText()===c.expression.getText();if(_&&g.pop(),Zl(c))return _?me.createCallChain(d,me.createToken(29),c.typeArguments,c.arguments):me.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(jo(c))return _?me.createPropertyAccessChain(d,me.createToken(29),c.name):me.createPropertyAccessChain(d,c.questionDotToken,c.name);if(Yg(c))return _?me.createElementAccessChain(d,me.createToken(29),c.argumentExpression):me.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function DDs(s,c,g,d,h){let{finalExpression:_,occurrences:S,expression:R}=d,T=S[S.length-1],W=Xsn(c,_,S);W&&(jo(W)||Yg(W)||Zl(W))&&(fo(R)?g.replaceNodeRange(s,T,_,W):Lw(R)&&g.replaceNode(s,R,me.createBinaryExpression(W,me.createToken(61),R.whenFalse)))}var Jsn={};o(Jsn,{Messages:()=>F_,RangeFacts:()=>jsn,getRangeToExtract:()=>qHt,getRefactorActionsToExtractSymbol:()=>Usn,getRefactorEditsToExtractSymbol:()=>Ksn});var tpe="Extract Symbol",rpe={name:"Extract Constant",description:Bu(Z.Extract_constant),kind:"refactor.extract.constant"},npe={name:"Extract Function",description:Bu(Z.Extract_function),kind:"refactor.extract.function"};Px(tpe,{kinds:[rpe.kind,npe.kind],getEditsForAction:Ksn,getAvailableActions:Usn});function Usn(s){let c=s.kind,g=qHt(s.file,Vz(s),s.triggerReason==="invoked"),d=g.targetRange;if(d===void 0){if(!g.errors||g.errors.length===0||!s.preferences.provideRefactorNotApplicableReason)return E;let Ie=[];return e5(npe.kind,c)&&Ie.push({name:tpe,description:npe.description,actions:[{...npe,notApplicableReason:ge(g.errors)}]}),e5(rpe.kind,c)&&Ie.push({name:tpe,description:rpe.description,actions:[{...rpe,notApplicableReason:ge(g.errors)}]}),Ie}let{affectedTextRange:h,extractions:_}=LDs(d,s);if(_===void 0)return E;let S=[],R=new Map,T,W=[],V=new Map,M,ee=0;for(let{functionExtraction:Ie,constantExtraction:_e}of _){if(e5(npe.kind,c)){let Ee=Ie.description;Ie.errors.length===0?R.has(Ee)||(R.set(Ee,!0),S.push({description:Ee,name:`function_scope_${ee}`,kind:npe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):T||(T={description:Ee,name:`function_scope_${ee}`,notApplicableReason:ge(Ie.errors),kind:npe.kind})}if(e5(rpe.kind,c)){let Ee=_e.description;_e.errors.length===0?V.has(Ee)||(V.set(Ee,!0),W.push({description:Ee,name:`constant_scope_${ee}`,kind:rpe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):M||(M={description:Ee,name:`constant_scope_${ee}`,notApplicableReason:ge(_e.errors),kind:rpe.kind})}ee++}let re=[];return S.length?re.push({name:tpe,description:Bu(Z.Extract_function),actions:S}):s.preferences.provideRefactorNotApplicableReason&&T&&re.push({name:tpe,description:Bu(Z.Extract_function),actions:[T]}),W.length?re.push({name:tpe,description:Bu(Z.Extract_constant),actions:W}):s.preferences.provideRefactorNotApplicableReason&&M&&re.push({name:tpe,description:Bu(Z.Extract_constant),actions:[M]}),re.length?re:E;function ge(Ie){let _e=Ie[0].messageText;return typeof _e!="string"&&(_e=_e.messageText),_e}}function Ksn(s,c){let d=qHt(s.file,Vz(s)).targetRange,h=/^function_scope_(\d+)$/.exec(c);if(h){let S=+h[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the function scope index"),FDs(d,s,S)}let _=/^constant_scope_(\d+)$/.exec(c);if(_){let S=+_[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the constant scope index"),ZDs(d,s,S)}pe.fail("Unrecognized action name")}var F_;(s=>{function c(g){return{message:g,code:0,category:3,key:g}}s.cannotExtractRange=c("Cannot extract range."),s.cannotExtractImport=c("Cannot extract import statement."),s.cannotExtractSuper=c("Cannot extract super call."),s.cannotExtractJSDoc=c("Cannot extract JSDoc."),s.cannotExtractEmpty=c("Cannot extract empty range."),s.expressionExpected=c("expression expected."),s.uselessConstantType=c("No reason to extract constant of type."),s.statementOrExpressionExpected=c("Statement or expression expected."),s.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),s.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),s.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),s.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),s.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),s.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),s.cannotExtractIdentifier=c("Select more than a single identifier."),s.cannotExtractExportedEntity=c("Cannot extract exported declaration"),s.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),s.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),s.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),s.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),s.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),s.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),s.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(F_||(F_={}));var jsn=(s=>(s[s.None=0]="None",s[s.HasReturn=1]="HasReturn",s[s.IsGenerator=2]="IsGenerator",s[s.IsAsyncFunction=4]="IsAsyncFunction",s[s.UsesThis=8]="UsesThis",s[s.UsesThisInFunction=16]="UsesThisInFunction",s[s.InStaticRegion=32]="InStaticRegion",s))(jsn||{});function qHt(s,c,g=!0){let{length:d}=c;if(d===0&&!g)return{errors:[qh(s,c.start,d,F_.cannotExtractEmpty)]};let h=d===0&&g,_=K5t(s,c.start),S=Hde(s,Rs(c)),R=_&&S&&g?kDs(_,S,s):c,T=h?nks(_):f1e(_,s,R),W=h?T:f1e(S,s,R),V=0,M;if(!T||!W)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};if(T.flags&16777216)return{errors:[qh(s,c.start,d,F_.cannotExtractJSDoc)]};if(T.parent!==W.parent)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};if(T!==W){if(!Pz(T.parent))return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};let Ne=[];for(let Te of T.parent.statements){if(Te===T||Ne.length){let Ze=Ee(Te);if(Ze)return{errors:Ze};Ne.push(Te)}if(Te===W)break}return Ne.length?{targetRange:{range:Ne,facts:V,thisNode:M}}:{errors:[qh(s,c.start,d,F_.cannotExtractRange)]}}if(I2(T)&&!T.expression)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};let ee=ge(T),re=Ie(ee)||Ee(ee);if(re)return{errors:re};return{targetRange:{range:xDs(ee),facts:V,thisNode:M}};function ge(Ne){if(I2(Ne)){if(Ne.expression)return Ne.expression}else if(Ch(Ne)||u_(Ne)){let Te=Ch(Ne)?Ne.declarationList.declarations:Ne.declarations,Ze=0,We;for(let Ue of Te)Ue.initializer&&(Ze++,We=Ue.initializer);if(Ze===1)return We}else if(nc(Ne)&&Ne.initializer)return Ne.initializer;return Ne}function Ie(Ne){if(Ir(VC(Ne)?Ne.expression:Ne))return[mo(Ne,F_.cannotExtractIdentifier)]}function _e(Ne,Te){let Ze=Ne;for(;Ze!==Te;){if(Ze.kind===173){cg(Ze)&&(V|=32);break}else if(Ze.kind===170){A1(Ze).kind===177&&(V|=32);break}else Ze.kind===175&&cg(Ze)&&(V|=32);Ze=Ze.parent}}function Ee(Ne){let Te;if((Tt=>{Tt[Tt.None=0]="None",Tt[Tt.Break=1]="Break",Tt[Tt.Continue=2]="Continue",Tt[Tt.Return=4]="Return"})(Te||(Te={})),pe.assert(Ne.pos<=Ne.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),pe.assert(!wB(Ne.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Lc(Ne)&&!(MT(Ne)&&zsn(Ne))&&!nYt(Ne))return[mo(Ne,F_.statementOrExpressionExpected)];if(Ne.flags&33554432)return[mo(Ne,F_.cannotExtractAmbientBlock)];let Ze=hC(Ne);Ze&&_e(Ne,Ze);let We,Ue=4,$e;if(Ye(Ne),V&8){let Tt=r0(Ne,!1,!1);(Tt.kind===263||Tt.kind===175&&Tt.parent.kind===211||Tt.kind===219)&&(V|=16)}return We;function Ye(Tt){if(We)return!0;if(jh(Tt)){let Qe=Tt.kind===261?Tt.parent.parent:Tt;if(Ga(Qe,32))return(We||(We=[])).push(mo(Tt,F_.cannotExtractExportedEntity)),!0}switch(Tt.kind){case 273:return(We||(We=[])).push(mo(Tt,F_.cannotExtractImport)),!0;case 278:return(We||(We=[])).push(mo(Tt,F_.cannotExtractExportedEntity)),!0;case 108:if(Tt.parent.kind===214){let Qe=hC(Tt);if(Qe===void 0||Qe.pos=c.start+c.length)return(We||(We=[])).push(mo(Tt,F_.cannotExtractSuper)),!0}else V|=8,M=Tt;break;case 220:Lu(Tt,function Qe(mt){if(Oie(mt))V|=8,M=Tt;else{if(xa(mt)||bu(mt)&&!lA(mt))return!1;Lu(mt,Qe)}});case 264:case 263:ll(Tt.parent)&&Tt.parent.externalModuleIndicator===void 0&&(We||(We=[])).push(mo(Tt,F_.functionWillNotBeVisibleInTheNewScope));case 232:case 219:case 175:case 177:case 178:case 179:return!1}let ot=Ue;switch(Tt.kind){case 246:Ue&=-5;break;case 259:Ue=0;break;case 242:Tt.parent&&Tt.parent.kind===259&&Tt.parent.finallyBlock===Tt&&(Ue=4);break;case 298:case 297:Ue|=1;break;default:VT(Tt,!1)&&(Ue|=3);break}switch(Tt.kind){case 198:case 110:V|=8,M=Tt;break;case 257:{let Qe=Tt.label;($e||($e=[])).push(Qe.escapedText),Lu(Tt,Ye),$e.pop();break}case 253:case 252:{let Qe=Tt.label;Qe?k($e,Qe.escapedText)||(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):Ue&(Tt.kind===253?1:2)||(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 224:V|=4;break;case 230:V|=2;break;case 254:Ue&4?V|=1:(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingConditionalReturnStatement));break;default:Lu(Tt,Ye);break}Ue=ot}}}function kDs(s,c,g){let d=s.getStart(g),h=c.getEnd();return g.text.charCodeAt(h)===59&&h++,{start:d,length:h-d}}function xDs(s){if(Lc(s))return[s];if(MT(s))return VC(s.parent)?[s.parent]:s;if(nYt(s))return s}function $Ht(s){return lA(s)?n7(s.body):kd(s)||ll(s)||_N(s)||xa(s)}function GDs(s){let c=n9(s.range)?ma(s.range):s.range;if(s.facts&8&&!(s.facts&16)){let d=hC(c);if(d){let h=ji(c,kd);return h?[h,d]:[d]}}let g=[];for(;;)if(c=c.parent,c.kind===170&&(c=ji(c,d=>kd(d)).parent),$Ht(c)&&(g.push(c),c.kind===308))return g}function FDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,functionErrorsPerScope:S,exposedVariableDeclarations:R}}=eYt(s,c);return pe.assert(!S[g].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),HDs(h,d[g],_[g],R,s,c)}function ZDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,constantErrorsPerScope:S,exposedVariableDeclarations:R}}=eYt(s,c);pe.assert(!S[g].length,"The extraction went missing? How?"),pe.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let T=un(h)?h:h.statements[0].expression;return YDs(T,d[g],_[g],s.facts,c)}function LDs(s,c){let{scopes:g,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:h,constantErrorsPerScope:_}}=eYt(s,c),S=g.map((R,T)=>{let W=VDs(R),V=PDs(R),M=kd(R)?WDs(R):xa(R)?ODs(R):MDs(R),ee,re;return M===1?(ee=dN(Bu(Z.Extract_to_0_in_1_scope),[W,"global"]),re=dN(Bu(Z.Extract_to_0_in_1_scope),[V,"global"])):M===0?(ee=dN(Bu(Z.Extract_to_0_in_1_scope),[W,"module"]),re=dN(Bu(Z.Extract_to_0_in_1_scope),[V,"module"])):(ee=dN(Bu(Z.Extract_to_0_in_1),[W,M]),re=dN(Bu(Z.Extract_to_0_in_1),[V,M])),T===0&&!xa(R)&&(re=dN(Bu(Z.Extract_to_0_in_enclosing_scope),[V])),{functionExtraction:{description:ee,errors:h[T]},constantExtraction:{description:re,errors:_[T]}}});return{affectedTextRange:d,extractions:S}}function eYt(s,c){let{file:g}=c,d=GDs(s),h=tks(s,g),_=rks(s,d,h,g,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:h,readsAndWrites:_}}function VDs(s){return kd(s)?"inner function":xa(s)?"method":"function"}function PDs(s){return xa(s)?"readonly field":"constant"}function WDs(s){switch(s.kind){case 177:return"constructor";case 219:case 263:return s.name?`function '${s.name.text}'`:tnt;case 220:return"arrow function";case 175:return`method '${s.name.getText()}'`;case 178:return`'get ${s.name.getText()}'`;case 179:return`'set ${s.name.getText()}'`;default:pe.assertNever(s,`Unexpected scope kind ${s.kind}`)}}function ODs(s){return s.kind===264?s.name?`class '${s.name.text}'`:"anonymous class declaration":s.name?`class expression '${s.name.text}'`:"anonymous class expression"}function MDs(s){return s.kind===269?`namespace '${s.parent.name.getText()}'`:s.externalModuleIndicator?0:1}function HDs(s,c,{usages:g,typeParameterUsages:d,substitutions:h},_,S,R){let T=R.program.getTypeChecker(),W=Mg(R.program.getCompilerOptions()),V=x0.createImportAdder(R.file,R.program,R.preferences,R.host),M=c.getSourceFile(),ee=GU(xa(c)?"newMethod":"newFunction",M),re=wo(c),ge=me.createIdentifier(ee),Ie,_e=[],Ee=[],Ne;g.forEach((nt,Dt)=>{let tr;if(!re){let Gr=T.getTypeOfSymbolAtLocation(nt.symbol,nt.node);Gr=T.getBaseTypeOfLiteralType(Gr),tr=x0.typeToAutoImportableTypeNode(T,V,Gr,c,W,1,8)}let ur=me.createParameterDeclaration(void 0,void 0,Dt,void 0,tr);_e.push(ur),nt.usage===2&&(Ne||(Ne=[])).push(nt),Ee.push(me.createIdentifier(Dt))});let Te=Do(d.values(),nt=>({type:nt,declaration:XDs(nt,R.startPosition)}));Te.sort(JDs);let Ze=Te.length===0?void 0:Xt(Te,({declaration:nt})=>nt),We=Ze!==void 0?Ze.map(nt=>me.createTypeReferenceNode(nt.name,void 0)):void 0;if(un(s)&&!re){let nt=T.getContextualType(s);Ie=T.typeToTypeNode(nt,c,1,8)}let{body:Ue,returnValueProperty:$e}=KDs(s,_,Ne,h,!!(S.facts&1));Vy(Ue);let Ye,Tt=!!(S.facts&16);if(xa(c)){let nt=re?[]:[me.createModifier(123)];S.facts&32&&nt.push(me.createModifier(126)),S.facts&4&&nt.push(me.createModifier(134)),Ye=me.createMethodDeclaration(nt.length?nt:void 0,S.facts&2?me.createToken(42):void 0,ge,void 0,Ze,_e,Ie,Ue)}else Tt&&_e.unshift(me.createParameterDeclaration(void 0,void 0,"this",void 0,T.typeToTypeNode(T.getTypeAtLocation(S.thisNode),c,1,8),void 0)),Ye=me.createFunctionDeclaration(S.facts&4?[me.createToken(134)]:void 0,S.facts&2?me.createToken(42):void 0,ge,Ze,_e,Ie,Ue);let ot=xo.ChangeTracker.fromContext(R),Qe=(n9(S.range)?Ei(S.range):S.range).end,mt=qDs(Qe,c);mt?ot.insertNodeBefore(R.file,mt,Ye,!0):ot.insertNodeAtEndOfScope(R.file,c,Ye),V.writeFixes(ot);let ht=[],_t=UDs(c,S,ee);Tt&&Ee.unshift(me.createIdentifier("this"));let Rt=me.createCallExpression(Tt?me.createPropertyAccessExpression(_t,"call"):_t,We,Ee);if(S.facts&2&&(Rt=me.createYieldExpression(me.createToken(42),Rt)),S.facts&4&&(Rt=me.createAwaitExpression(Rt)),rYt(s)&&(Rt=me.createJsxExpression(void 0,Rt)),_.length&&!Ne)if(pe.assert(!$e,"Expected no returnValueProperty"),pe.assert(!(S.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),_.length===1){let nt=_[0];ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(nt.name),void 0,JA(nt.type),Rt)],nt.parent.flags)))}else{let nt=[],Dt=[],tr=_[0].parent.flags,ur=!1;for(let dt of _){nt.push(me.createBindingElement(void 0,void 0,JA(dt.name)));let pr=T.typeToTypeNode(T.getBaseTypeOfLiteralType(T.getTypeAtLocation(dt)),c,1,8);Dt.push(me.createPropertySignature(void 0,dt.symbol.name,void 0,pr)),ur=ur||dt.type!==void 0,tr=tr&dt.parent.flags}let Gr=ur?me.createTypeLiteralNode(Dt):void 0;Gr&&ti(Gr,1),ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(me.createObjectBindingPattern(nt),void 0,Gr,Rt)],tr)))}else if(_.length||Ne){if(_.length)for(let Dt of _){let tr=Dt.parent.flags;tr&2&&(tr=tr&-3|1),ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Dt.symbol.name,void 0,Gt(Dt.type))],tr)))}$e&&ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration($e,void 0,Gt(Ie))],1)));let nt=tYt(_,Ne);$e&&nt.unshift(me.createShorthandPropertyAssignment($e)),nt.length===1?(pe.assert(!$e,"Shouldn't have returnValueProperty here"),ht.push(me.createExpressionStatement(me.createAssignment(nt[0].name,Rt))),S.facts&1&&ht.push(me.createReturnStatement())):(ht.push(me.createExpressionStatement(me.createAssignment(me.createObjectLiteralExpression(nt),Rt))),$e&&ht.push(me.createReturnStatement(me.createIdentifier($e))))}else S.facts&1?ht.push(me.createReturnStatement(Rt)):n9(S.range)?ht.push(me.createExpressionStatement(Rt)):ht.push(Rt);n9(S.range)?ot.replaceNodeRangeWithNodes(R.file,ma(S.range),Ei(S.range),ht):ot.replaceNodeWithNodes(R.file,S.range,ht);let Lt=ot.getChanges(),Pt=(n9(S.range)?ma(S.range):S.range).getSourceFile().fileName,_r=h1e(Lt,Pt,ee,!1);return{renameFilename:Pt,renameLocation:_r,edits:Lt};function Gt(nt){if(nt===void 0)return;let Dt=JA(nt),tr=Dt;for(;fv(tr);)tr=tr.type;return aS(tr)&&de(tr.types,ur=>ur.kind===157)?Dt:me.createUnionTypeNode([Dt,me.createKeywordTypeNode(157)])}}function YDs(s,c,{substitutions:g},d,h){let _=h.program.getTypeChecker(),S=c.getSourceFile(),R=kHt(s,c,_,S),T=wo(c),W=T||!_.isContextSensitive(s)?void 0:_.typeToTypeNode(_.getContextualType(s),c,1,8),V=jDs(QA(s),g);({variableType:W,initializer:V}=Ie(W,V)),Vy(V);let M=xo.ChangeTracker.fromContext(h);if(xa(c)){pe.assert(!T,"Cannot extract to a JS class");let _e=[];_e.push(me.createModifier(123)),d&32&&_e.push(me.createModifier(126)),_e.push(me.createModifier(148));let Ee=me.createPropertyDeclaration(_e,R,void 0,W,V),Ne=me.createPropertyAccessExpression(d&32?me.createIdentifier(c.name.getText()):me.createThis(),me.createIdentifier(R));rYt(s)&&(Ne=me.createJsxExpression(void 0,Ne));let Te=s.pos,Ze=$Ds(Te,c);M.insertNodeBefore(h.file,Ze,Ee,!0),M.replaceNode(h.file,s,Ne)}else{let _e=me.createVariableDeclaration(R,void 0,W,V),Ee=QDs(s,c);if(Ee){M.insertNodeBefore(h.file,Ee,_e);let Ne=me.createIdentifier(R);M.replaceNode(h.file,s,Ne)}else if(s.parent.kind===245&&c===ji(s,$Ht)){let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2));M.replaceNode(h.file,s.parent,Ne)}else{let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2)),Te=eks(s,c);if(Te.pos===0?M.insertNodeAtTopOfFile(h.file,Ne,!1):M.insertNodeBefore(h.file,Te,Ne,!1),s.parent.kind===245)M.delete(h.file,s.parent);else{let Ze=me.createIdentifier(R);rYt(s)&&(Ze=me.createJsxExpression(void 0,Ze)),M.replaceNode(h.file,s,Ze)}}}let ee=M.getChanges(),re=s.getSourceFile().fileName,ge=h1e(ee,re,R,!0);return{renameFilename:re,renameLocation:ge,edits:ee};function Ie(_e,Ee){if(_e===void 0)return{variableType:_e,initializer:Ee};if(!UA(Ee)&&!lA(Ee)||Ee.typeParameters)return{variableType:_e,initializer:Ee};let Ne=_.getTypeAtLocation(s),Te=Ps(_.getSignaturesOfType(Ne,0));if(!Te)return{variableType:_e,initializer:Ee};if(Te.getTypeParameters())return{variableType:_e,initializer:Ee};let Ze=[],We=!1;for(let Ue of Ee.parameters)if(Ue.type)Ze.push(Ue);else{let $e=_.getTypeAtLocation(Ue);$e===_.getAnyType()&&(We=!0),Ze.push(me.updateParameterDeclaration(Ue,Ue.modifiers,Ue.dotDotDotToken,Ue.name,Ue.questionToken,Ue.type||_.typeToTypeNode($e,c,1,8),Ue.initializer))}if(We)return{variableType:_e,initializer:Ee};if(_e=void 0,lA(Ee))Ee=me.updateArrowFunction(Ee,LB(s)?$R(s):void 0,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1,8),Ee.equalsGreaterThanToken,Ee.body);else{if(Te&&Te.thisParameter){let Ue=Nc(Ze);if(!Ue||Ir(Ue.name)&&Ue.name.escapedText!=="this"){let $e=_.getTypeOfSymbolAtLocation(Te.thisParameter,s);Ze.splice(0,0,me.createParameterDeclaration(void 0,void 0,"this",void 0,_.typeToTypeNode($e,c,1,8)))}}Ee=me.updateFunctionExpression(Ee,LB(s)?$R(s):void 0,Ee.asteriskToken,Ee.name,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1),Ee.body)}return{variableType:_e,initializer:Ee}}}function QDs(s,c){let g;for(;s!==void 0&&s!==c;){if(nc(s)&&s.initializer===g&&u_(s.parent)&&s.parent.declarations.length>1)return s;g=s,s=s.parent}}function XDs(s,c){let g,d=s.symbol;if(d&&d.declarations)for(let h of d.declarations)(g===void 0||h.pos0;if($u(s)&&!_&&d.size===0)return{body:me.createBlock(s.statements,!0),returnValueProperty:void 0};let S,R=!1,T=me.createNodeArray($u(s)?s.statements.slice(0):[Lc(s)?s:me.createReturnStatement(QA(s))]);if(_||d.size){let V=Ws(T,W,Lc).slice();if(_&&!h&&Lc(s)){let M=tYt(c,g);M.length===1?V.push(me.createReturnStatement(M[0].name)):V.push(me.createReturnStatement(me.createObjectLiteralExpression(M)))}return{body:me.createBlock(V,!0),returnValueProperty:S}}else return{body:me.createBlock(T,!0),returnValueProperty:void 0};function W(V){if(!R&&I2(V)&&_){let M=tYt(c,g);return V.expression&&(S||(S="__return"),M.unshift(me.createPropertyAssignment(S,Mr(V.expression,W,un)))),M.length===1?me.createReturnStatement(M[0].name):me.createReturnStatement(me.createObjectLiteralExpression(M))}else{let M=R;R=R||kd(V)||xa(V);let ee=d.get(rd(V).toString()),re=ee?JA(ee):_s(V,W,void 0);return R=M,re}}}function jDs(s,c){return c.size?g(s):s;function g(d){let h=c.get(rd(d).toString());return h?JA(h):_s(d,g,void 0)}}function zDs(s){if(kd(s)){let c=s.body;if($u(c))return c.statements}else{if(_N(s)||ll(s))return s.statements;if(xa(s))return s.members;}return E}function qDs(s,c){return de(zDs(c),g=>g.pos>=s&&kd(g)&&!Tc(g))}function $Ds(s,c){let g=c.members;pe.assert(g.length>0,"Found no members");let d,h=!0;for(let _ of g){if(_.pos>s)return d||g[0];if(h&&!pi(_)){if(d!==void 0)return _;h=!1}d=_}return d===void 0?pe.fail():d}function eks(s,c){pe.assert(!xa(c));let g;for(let d=s;d!==c;d=d.parent)$Ht(d)&&(g=d);for(let d=(g||s).parent;;d=d.parent){if(Pz(d)){let h;for(let _ of d.statements){if(_.pos>s.pos)break;h=_}return!h&&fie(d)?(pe.assert(ode(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):pe.checkDefined(h,"prevStatement failed to get set")}pe.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function tYt(s,c){let g=At(s,h=>me.createShorthandPropertyAssignment(h.symbol.name)),d=At(c,h=>me.createShorthandPropertyAssignment(h.symbol.name));return g===void 0?d:d===void 0?g:g.concat(d)}function n9(s){return Ki(s)}function tks(s,c){return n9(s.range)?{pos:ma(s.range).getStart(c),end:Ei(s.range).getEnd()}:s.range}function rks(s,c,g,d,h,_){let S=new Map,R=[],T=[],W=[],V=[],M=[],ee=new Map,re=[],ge,Ie=n9(s.range)?s.range.length===1&&VC(s.range[0])?s.range[0].expression:void 0:s.range,_e;if(Ie===void 0){let ht=s.range,_t=ma(ht).getStart(),Rt=Ei(ht).end;_e=qh(d,_t,Rt-_t,F_.expressionExpected)}else h.getTypeAtLocation(Ie).flags&147456&&(_e=mo(Ie,F_.uselessConstantType));for(let ht of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),T.push(new Map),W.push([]);let _t=[];_e&&_t.push(_e),xa(ht)&&wo(ht)&&_t.push(mo(ht,F_.cannotExtractToJSClass)),lA(ht)&&!$u(ht.body)&&_t.push(mo(ht,F_.cannotExtractToExpressionArrowFunction)),V.push(_t)}let Ee=new Map,Ne=n9(s.range)?me.createBlock(s.range):s.range,Te=n9(s.range)?ma(s.range):s.range,Ze=We(Te);if($e(Ne),Ze&&!n9(s.range)&&!EN(s.range)){let ht=h.getContextualType(s.range);Ue(ht)}if(S.size>0){let ht=new Map,_t=0;for(let Rt=Te;Rt!==void 0&&_t{R[_t].typeParameterUsages.set(Ke,Lt)}),_t++),Ure(Rt))for(let Lt of ZD(Rt)){let Ke=h.getTypeAtLocation(Lt);S.has(Ke.id.toString())&&ht.set(Ke.id.toString(),Ke)}pe.assert(_t===c.length,"Should have iterated all scopes")}if(M.length){let ht=PJ(c[0],c[0].parent)?c[0]:tS(c[0]);Lu(ht,ot)}for(let ht=0;ht0&&(_t.usages.size>0||_t.typeParameterUsages.size>0)){let Ke=n9(s.range)?s.range[0]:s.range;V[ht].push(mo(Ke,F_.cannotAccessVariablesFromNestedScopes))}s.facts&16&&xa(c[ht])&&W[ht].push(mo(s.thisNode,F_.cannotExtractFunctionsContainingThisToMethod));let Rt=!1,Lt;if(R[ht].usages.forEach(Ke=>{Ke.usage===2&&(Rt=!0,Ke.symbol.flags&106500&&Ke.symbol.valueDeclaration&&Gb(Ke.symbol.valueDeclaration,8)&&(Lt=Ke.symbol.valueDeclaration))}),pe.assert(n9(s.range)||re.length===0,"No variable declarations expected if something was extracted"),Rt&&!n9(s.range)){let Ke=mo(s.range,F_.cannotWriteInExpression);W[ht].push(Ke),V[ht].push(Ke)}else if(Lt&&ht>0){let Ke=mo(Lt,F_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);W[ht].push(Ke),V[ht].push(Ke)}else if(ge){let Ke=mo(ge,F_.cannotExtractExportedEntity);W[ht].push(Ke),V[ht].push(Ke)}}return{target:Ne,usagesPerScope:R,functionErrorsPerScope:W,constantErrorsPerScope:V,exposedVariableDeclarations:re};function We(ht){return!!ji(ht,_t=>Ure(_t)&&ZD(_t).length!==0)}function Ue(ht){let _t=h.getSymbolWalker(()=>(_.throwIfCancellationRequested(),!0)),{visitedTypes:Rt}=_t.walkType(ht);for(let Lt of Rt)Lt.isTypeParameter()&&S.set(Lt.id.toString(),Lt)}function $e(ht,_t=1){if(Ze){let Rt=h.getTypeAtLocation(ht);Ue(Rt)}if(jh(ht)&&ht.symbol&&M.push(ht),Jm(ht))$e(ht.left,2),$e(ht.right);else if(iN(ht))$e(ht.operand,2);else if(jo(ht)||Yg(ht))Lu(ht,$e);else if(Ir(ht)){if(!ht.parent||zi(ht.parent)&&ht!==ht.parent.left||jo(ht.parent)&&ht!==ht.parent.expression)return;Ye(ht,_t,ww(ht))}else Lu(ht,$e)}function Ye(ht,_t,Rt){let Lt=Tt(ht,_t,Rt);if(Lt)for(let Ke=0;Ke=_t)return Ke;if(Ee.set(Ke,_t),Pt){for(let nt of R)nt.usages.get(ht.text)&&nt.usages.set(ht.text,{usage:_t,symbol:Lt,node:ht});return Ke}let _r=Lt.getDeclarations(),Gt=_r&&de(_r,nt=>nt.getSourceFile()===d);if(Gt&&!c1e(g,Gt.getStart(),Gt.end)){if(s.facts&2&&_t===2){let nt=mo(ht,F_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let Dt of W)Dt.push(nt);for(let Dt of V)Dt.push(nt)}for(let nt=0;ntLt.symbol===_t);if(Rt)if(nc(Rt)){let Lt=Rt.symbol.id.toString();ee.has(Lt)||(re.push(Rt),ee.set(Lt,!0))}else ge=ge||Rt}Lu(ht,ot)}function Qe(ht){return ht.parent&&a0(ht.parent)&&ht.parent.name===ht?h.getShorthandAssignmentValueSymbol(ht.parent):h.getSymbolAtLocation(ht)}function mt(ht,_t,Rt){if(!ht)return;let Lt=ht.getDeclarations();if(Lt&&Lt.some(Pt=>Pt.parent===_t))return me.createIdentifier(ht.name);let Ke=mt(ht.parent,_t,Rt);if(Ke!==void 0)return Rt?me.createQualifiedName(Ke,me.createIdentifier(ht.name)):me.createPropertyAccessExpression(Ke,ht.name)}}function nks(s){return ji(s,c=>c.parent&&zsn(c)&&!fo(c.parent))}function zsn(s){let{parent:c}=s;switch(c.kind){case 307:return!1}switch(s.kind){case 11:return c.kind!==273&&c.kind!==277;case 231:case 207:case 209:return!1;case 80:return c.kind!==209&&c.kind!==277&&c.kind!==282}return!0}function rYt(s){return nYt(s)||(bN(s)||_U(s)||P3(s))&&(bN(s.parent)||P3(s.parent))}function nYt(s){return Zg(s)&&s.parent&&EN(s.parent)}var iks={},Xnt="Generate 'get' and 'set' accessors",iYt=Bu(Z.Generate_get_and_set_accessors),sYt={name:Xnt,description:iYt,kind:"refactor.rewrite.property.generateAccessors"};Px(Xnt,{kinds:[sYt.kind],getEditsForAction:function(c,g){if(!c.endPosition)return;let d=x0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);pe.assert(d&&!MF(d),"Expected applicable refactor info");let h=x0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,g);if(!h)return;let _=c.file.fileName,S=d.renameAccessor?d.accessorName:d.fieldName,T=(Ir(S)?0:-1)+h1e(h,_,S.text,Si(d.declaration));return{renameFilename:_,renameLocation:T,edits:h}},getAvailableActions(s){if(!s.endPosition)return E;let c=x0.getAccessorConvertiblePropertyAtPosition(s.file,s.program,s.startPosition,s.endPosition,s.triggerReason==="invoked");return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Xnt,description:iYt,actions:[{...sYt,notApplicableReason:c.error}]}]:E:[{name:Xnt,description:iYt,actions:[sYt]}]:E}});var sks={},Jnt="Infer function return type",oYt=Bu(Z.Infer_function_return_type),Unt={name:Jnt,description:oYt,kind:"refactor.rewrite.function.returnType"};Px(Jnt,{kinds:[Unt.kind],getEditsForAction:oks,getAvailableActions:aks});function oks(s){let c=qsn(s);if(c&&!MF(c))return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,d=>cks(s.file,d,c.declaration,c.returnTypeNode))}}function aks(s){let c=qsn(s);return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Jnt,description:oYt,actions:[{...Unt,notApplicableReason:c.error}]}]:E:[{name:Jnt,description:oYt,actions:[Unt]}]:E}function cks(s,c,g,d){let h=qd(g,22,s),_=lA(g)&&h===void 0,S=_?ma(g.parameters):h;S&&(_&&(c.insertNodeBefore(s,S,me.createToken(21)),c.insertNodeAfter(s,S,me.createToken(22))),c.insertNodeAt(s,S.end,d,{prefix:": "}))}function qsn(s){if(wo(s.file)||!e5(Unt.kind,s.kind))return;let c=Lb(s.file,s.startPosition),g=ji(c,S=>$u(S)||S.parent&&lA(S.parent)&&(S.kind===39||S.parent.body===S)?"quit":lks(S));if(!g||!g.body||g.type)return{error:Bu(Z.Return_type_must_be_inferred_from_a_function)};let d=s.program.getTypeChecker(),h;if(d.isImplementationOfOverload(g)){let S=d.getTypeAtLocation(g).getCallSignatures();S.length>1&&(h=d.getUnionType(Xt(S,R=>R.getReturnType())))}if(!h){let S=d.getSignatureFromDeclaration(g);if(S){let R=d.getTypePredicateOfSignature(S);if(R&&R.type){let T=d.typePredicateToTypePredicateNode(R,g,1,8);if(T)return{declaration:g,returnTypeNode:T}}else h=d.getReturnTypeOfSignature(S)}}if(!h)return{error:Bu(Z.Could_not_determine_function_return_type)};let _=d.typeToTypeNode(h,g,1,8);if(_)return{declaration:g,returnTypeNode:_}}function lks(s){switch(s.kind){case 263:case 219:case 220:case 175:return!0;default:return!1}}var $sn=(s=>(s[s.typeOffset=8]="typeOffset",s[s.modifierMask=255]="modifierMask",s))($sn||{}),eon=(s=>(s[s.class=0]="class",s[s.enum=1]="enum",s[s.interface=2]="interface",s[s.namespace=3]="namespace",s[s.typeParameter=4]="typeParameter",s[s.type=5]="type",s[s.parameter=6]="parameter",s[s.variable=7]="variable",s[s.enumMember=8]="enumMember",s[s.property=9]="property",s[s.function=10]="function",s[s.member=11]="member",s))(eon||{}),ton=(s=>(s[s.declaration=0]="declaration",s[s.static=1]="static",s[s.async=2]="async",s[s.readonly=3]="readonly",s[s.defaultLibrary=4]="defaultLibrary",s[s.local=5]="local",s))(ton||{});function ron(s,c,g,d){let h=aYt(s,c,g,d);pe.assert(h.spans.length%3===0);let _=h.spans,S=[];for(let R=0;R<_.length;R+=3)S.push({textSpan:zd(_[R],_[R+1]),classificationType:_[R+2]});return S}function aYt(s,c,g,d){return{spans:uks(s,g,d,c),endOfLineState:0}}function uks(s,c,g,d){let h=[];return s&&c&&gks(s,c,g,(S,R,T)=>{h.push(S.getStart(c),S.getWidth(c),(R+1<<8)+T)},d),h}function gks(s,c,g,d,h){let _=s.getTypeChecker(),S=!1;function R(T){switch(T.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 220:h.throwIfCancellationRequested()}if(!T||!q2(g,T.pos,T.getFullWidth())||T.getFullWidth()===0)return;let W=S;if((bN(T)||_U(T))&&(S=!0),pie(T)&&(S=!1),Ir(T)&&!S&&!fks(T)&&!oz(T.escapedText)){let V=_.getSymbolAtLocation(T);if(V){V.flags&2097152&&(V=_.getAliasedSymbol(V));let M=Aks(V,DU(T));if(M!==void 0){let ee=0;T.parent&&(hg(T.parent)||son.get(T.parent.kind)===M)&&T.parent.name===T&&(ee=1),M===6&&ion(T)&&(M=9),M=dks(_,T,M);let re=V.valueDeclaration;if(re){let ge=Hc(re),Ie=dm(re);ge&256&&(ee|=2),ge&1024&&(ee|=4),M!==0&&M!==2&&(ge&8||Ie&2||V.getFlags()&8)&&(ee|=8),(M===7||M===10)&&pks(re,c)&&(ee|=32),s.isSourceFileDefaultLibrary(re.getSourceFile())&&(ee|=16)}else V.declarations&&V.declarations.some(ge=>s.isSourceFileDefaultLibrary(ge.getSourceFile()))&&(ee|=16);d(T,M,ee)}}}Lu(T,R),S=W}R(c)}function Aks(s,c){let g=s.getFlags();if(g&32)return 0;if(g&384)return 1;if(g&524288)return 5;if(g&64){if(c&2)return 2}else if(g&262144)return 4;let d=s.valueDeclaration||s.declarations&&s.declarations[0];return d&&hg(d)&&(d=non(d)),d&&son.get(d.kind)}function dks(s,c,g){if(g===7||g===9||g===6){let d=s.getTypeAtLocation(c);if(d){let h=_=>_(d)||d.isUnion()&&d.types.some(_);if(g!==6&&h(_=>_.getConstructSignatures().length>0))return 0;if(h(_=>_.getCallSignatures().length>0)&&!h(_=>_.getProperties().length>0)||Iks(c))return g===9?11:10}}return g}function pks(s,c){return hg(s)&&(s=non(s)),nc(s)?(!ll(s.parent.parent.parent)||iQ(s.parent))&&s.getSourceFile()===c:ih(s)?!ll(s.parent)&&s.getSourceFile()===c:!1}function non(s){for(;;)if(hg(s.parent.parent))s=s.parent.parent;else return s.parent.parent}function fks(s){let c=s.parent;return c&&(Vw(c)||uy(c)||Zx(c))}function Iks(s){for(;ion(s);)s=s.parent;return Zl(s.parent)&&s.parent.expression===s}function ion(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s}var son=new Map([[261,7],[170,6],[173,9],[268,3],[267,1],[307,8],[264,0],[175,11],[263,10],[219,10],[174,11],[178,9],[179,9],[172,9],[265,2],[266,5],[169,4],[304,9],[305,9]]),oon="0.8";function aon(s,c,g,d){let h=z6(s)?new cYt(s,c,g):s===80?new lon(80,c,g):s===81?new uon(81,c,g):new con(s,c,g);return h.parent=d,h.flags=d.flags&101441536,h}var cYt=class{constructor(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(s){pe.assert(!wB(this.pos)&&!wB(this.end),s||"Node must have a real position for this operation")}getSourceFile(){return ms(this)}getStart(s,c){return this.assertHasRealPosition(),MD(this,s,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(s){return this.assertHasRealPosition(),this.getEnd()-this.getStart(s)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(s){return this.assertHasRealPosition(),this.getStart(s)-this.pos}getFullText(s){return this.assertHasRealPosition(),(s||this.getSourceFile()).text.substring(this.pos,this.end)}getText(s){return this.assertHasRealPosition(),s||(s=this.getSourceFile()),s.text.substring(this.getStart(s),this.getEnd())}getChildCount(s){return this.getChildren(s).length}getChildAt(s,c){return this.getChildren(c)[s]}getChildren(s=ms(this)){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),y$e(this,s)??YPt(this,s,hks(this,s))}getFirstToken(s){this.assertHasRealPosition();let c=this.getChildren(s);if(!c.length)return;let g=de(c,d=>d.kind<310||d.kind>352);return g.kind<167?g:g.getFirstToken(s)}getLastToken(s){this.assertHasRealPosition();let c=this.getChildren(s),g=li(c);if(g)return g.kind<167?g:g.getLastToken(s)}forEachChild(s,c){return Lu(this,s,c)}};function hks(s,c){let g=[];if(i7(s))return s.forEachChild(S=>{g.push(S)}),g;A_.setText((c||s.getSourceFile()).text);let d=s.pos,h=S=>{RPe(g,d,S.pos,s),g.push(S),d=S.end},_=S=>{RPe(g,d,S.pos,s),g.push(mks(S,s)),d=S.end};return F(s.jsDoc,h),d=s.pos,s.forEachChild(h,_),RPe(g,d,s.end,s),A_.setText(void 0),g}function RPe(s,c,g,d){for(A_.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function Knt(s,c){if(!s)return E;let g=n5.getJsDocTagsFromDeclarations(s,c);if(c&&(g.length===0||s.some(gon))){let d=new Set;for(let h of s){let _=Aon(c,h,S=>{var R;if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualJsDocTags(h,c):((R=S.declarations)==null?void 0:R.length)===1?S.getJsDocTags(c):void 0});_&&(g=[..._,...g])}}return g}function NPe(s,c){if(!s)return E;let g=n5.getJsDocCommentsFromDeclarations(s,c);if(c&&(g.length===0||s.some(gon))){let d=new Set;for(let h of s){let _=Aon(c,h,S=>{if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualDocumentationComment(h,c):S.getDocumentationComment(c)});_&&(g=g.length===0?_.slice():_.concat(Jie(),g))}}return g}function Aon(s,c,g){var d;let h=((d=c.parent)==null?void 0:d.kind)===177?c.parent.parent:c.parent;if(!h)return;let _=zh(c);return X(R7(h),S=>{let R=s.getTypeAtLocation(S),T=_&&R.symbol?s.getTypeOfSymbol(R.symbol):R,W=s.getPropertyOfType(T,c.symbol.name);return W?g(W):void 0})}var bks=class extends cYt{constructor(s,c,g){super(s,c,g)}update(s,c){return Z$e(this,s,c)}getLineAndCharacterOfPosition(s){return Ra(this,s)}getLineStarts(){return rn(this)}getPositionOfLineAndCharacter(s,c,g){return xn(rn(this),s,c,this.text,g)}getLineEndOfPosition(s){let{line:c}=this.getLineAndCharacterOfPosition(s),g=this.getLineStarts(),d;c+1>=g.length&&(d=this.getEnd()),d||(d=g[c+1]-1);let h=this.getFullText();return h[d]===` -`&&h[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let s=dl();return this.forEachChild(h),s;function c(_){let S=d(_);S&&s.add(S,_)}function g(_){let S=s.get(_);return S||s.set(_,S=[]),S}function d(_){let S=Cw(_);return S&&(Un(S)&&jo(S.expression)?S.expression.name.text:VI(S)?d1e(S):void 0)}function h(_){switch(_.kind){case 263:case 219:case 175:case 174:let S=_,R=d(S);if(R){let V=g(R),M=li(V);M&&S.parent===M.parent&&S.symbol===M.symbol?S.body&&!M.body&&(V[V.length-1]=S):V.push(S)}Lu(_,h);break;case 264:case 232:case 265:case 266:case 267:case 268:case 272:case 282:case 277:case 274:case 275:case 178:case 179:case 188:c(_),Lu(_,h);break;case 170:if(!Ga(_,31))break;case 261:case 209:{let V=_;if(Nu(V.name)){Lu(V.name,h);break}V.initializer&&h(V.initializer)}case 307:case 173:case 172:c(_);break;case 279:let T=_;T.exportClause&&(mv(T.exportClause)?F(T.exportClause.elements,h):h(T.exportClause.name));break;case 273:let W=_.importClause;W&&(W.name&&c(W.name),W.namedBindings&&(W.namedBindings.kind===275?c(W.namedBindings):F(W.namedBindings.elements,h)));break;case 227:nI(_)!==0&&c(_);default:Lu(_,h)}}}},Eks=class{constructor(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}getLineAndCharacterOfPosition(s){return Ra(this,s)}};function Sks(){return{getNodeConstructor:()=>cYt,getTokenConstructor:()=>con,getIdentifierConstructor:()=>lon,getPrivateIdentifierConstructor:()=>uon,getSourceFileConstructor:()=>bks,getSymbolConstructor:()=>Cks,getTypeConstructor:()=>_ks,getSignatureConstructor:()=>yks,getSourceMapSourceConstructor:()=>Eks}}function N1e(s){let c=!0;for(let d in s)if(Da(s,d)&&!don(d)){c=!1;break}if(c)return s;let g={};for(let d in s)if(Da(s,d)){let h=don(d)?d:d.charAt(0).toLowerCase()+d.substr(1);g[h]=s[d]}return g}function don(s){return!s.length||s.charAt(0)===s.charAt(0).toLowerCase()}function D1e(s){return s?At(s,c=>c.text).join(""):""}function DPe(){return{target:1,jsx:1}}function jnt(){return x0.getSupportedErrorCodes()}var vks=class{constructor(s){this.host=s}getCurrentSourceFile(s){var c,g,d,h,_,S,R,T;let W=this.host.getScriptSnapshot(s);if(!W)throw new Error("Could not find file: '"+s+"'.");let V=zrt(s,this.host),M=this.host.getScriptVersion(s),ee;if(this.currentFileName!==s){let re={languageVersion:99,impliedNodeFormat:JEe(Ou(s,this.host.getCurrentDirectory(),((d=(g=(c=this.host).getCompilerHost)==null?void 0:g.call(c))==null?void 0:d.getCanonicalFileName)||JD(this.host)),(T=(R=(S=(_=(h=this.host).getCompilerHost)==null?void 0:_.call(h))==null?void 0:S.getModuleResolutionCache)==null?void 0:R.call(S))==null?void 0:T.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:Lne(this.host.getCompilationSettings()),jsDocParsingMode:0};ee=kPe(s,W,re,M,!0,V)}else if(this.currentFileVersion!==M){let re=W.getChangeRange(this.currentFileScriptSnapshot);ee=znt(this.currentSourceFile,W,M,re)}return ee&&(this.currentFileVersion=M,this.currentFileName=s,this.currentFileScriptSnapshot=W,this.currentSourceFile=ee),this.currentSourceFile}};function pon(s,c,g){s.version=g,s.scriptSnapshot=c}function kPe(s,c,g,d,h,_){let S=vz(s,Lz(c),g,h,_);return pon(S,c,d),S}function znt(s,c,g,d,h){if(d&&g!==s.version){let S,R=d.span.start!==0?s.text.substr(0,d.span.start):"",T=Rs(d.span)!==s.text.length?s.text.substr(Rs(d.span)):"";if(d.newLength===0)S=R&&T?R+T:R||T;else{let V=c.getText(d.span.start,d.span.start+d.newLength);S=R&&T?R+V+T:R?R+V:V+T}let W=Z$e(s,S,d,h);return pon(W,c,g),W.nameTable=void 0,s!==W&&s.scriptSnapshot&&(s.scriptSnapshot.dispose&&s.scriptSnapshot.dispose(),s.scriptSnapshot=void 0),W}let _={languageVersion:s.languageVersion,impliedNodeFormat:s.impliedNodeFormat,setExternalModuleIndicator:s.setExternalModuleIndicator,jsDocParsingMode:s.jsDocParsingMode};return kPe(s.fileName,c,_,g,!0,s.scriptKind)}var Bks={isCancellationRequested:As,throwIfCancellationRequested:Dc},wks=class{constructor(s){this.cancellationToken=s}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new By}},uYt=class{constructor(s,c=20){this.hostCancellationToken=s,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let s=Fg();return Math.abs(s-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=s,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new By}},fon=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],Tks=[...fon,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];function gYt(s,c=FMt(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames(),s.getCurrentDirectory(),s.jsDocParsingMode),g){var d;let h;g===void 0?h=0:typeof g=="boolean"?h=g?2:0:h=g;let _=new vks(s),S,R,T=0,W=s.getCancellationToken?new wks(s.getCancellationToken()):Bks,V=s.getCurrentDirectory();qZe((d=s.getLocalizedDiagnosticMessages)==null?void 0:d.bind(s));function M(tn){s.log&&s.log(tn)}let ee=y3(s),re=_d(ee),ge=KMt({useCaseSensitiveFileNames:()=>ee,getCurrentDirectory:()=>V,getProgram:Ne,fileExists:$i(s,s.fileExists),readFile:$i(s,s.readFile),getDocumentPositionMapper:$i(s,s.getDocumentPositionMapper),getSourceFileLike:$i(s,s.getSourceFileLike),log:M});function Ie(tn){let wn=S.getSourceFile(tn);if(!wn){let Mn=new Error(`Could not find source file: '${tn}'.`);throw Mn.ProgramFiles=S.getSourceFiles().map(ci=>ci.fileName),Mn}return wn}function _e(){s.updateFromProject&&!s.updateFromProjectInProgress?s.updateFromProject():Ee()}function Ee(){var tn,wn,Mn;if(pe.assert(h!==2),s.getProjectVersion){let gu=s.getProjectVersion();if(gu){if(R===gu&&!((tn=s.hasChangedAutomaticTypeDirectiveNames)!=null&&tn.call(s)))return;R=gu}}let ci=s.getTypeRootsVersion?s.getTypeRootsVersion():0;T!==ci&&(M("TypeRoots version has changed; provide new program"),S=void 0,T=ci);let es=s.getScriptFileNames().slice(),Wi=s.getCompilationSettings()||DPe(),Vn=s.hasInvalidatedResolutions||As,Ui=$i(s,s.hasInvalidatedLibResolutions)||As,gs=$i(s,s.hasChangedAutomaticTypeDirectiveNames),fs=(wn=s.getProjectReferences)==null?void 0:wn.call(s),bi,mc={getSourceFile:sh,getSourceFileByPath:dS,getCancellationToken:()=>W,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>ee,getNewLine:()=>uN(Wi),getDefaultLibFileName:gu=>s.getDefaultLibFileName(gu),writeFile:Dc,getCurrentDirectory:()=>V,fileExists:gu=>s.fileExists(gu),readFile:gu=>s.readFile&&s.readFile(gu),getSymlinkCache:$i(s,s.getSymlinkCache),realpath:$i(s,s.realpath),directoryExists:gu=>f1(gu,s),getDirectories:gu=>s.getDirectories?s.getDirectories(gu):[],readDirectory:(gu,bg,KA,TA,oi)=>(pe.checkDefined(s.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),s.readDirectory(gu,bg,KA,TA,oi)),onReleaseOldSourceFile:Xg,onReleaseParsedCommandLine:tm,hasInvalidatedResolutions:Vn,hasInvalidatedLibResolutions:Ui,hasChangedAutomaticTypeDirectiveNames:gs,trace:$i(s,s.trace),resolveModuleNames:$i(s,s.resolveModuleNames),getModuleResolutionCache:$i(s,s.getModuleResolutionCache),createHash:$i(s,s.createHash),resolveTypeReferenceDirectives:$i(s,s.resolveTypeReferenceDirectives),resolveModuleNameLiterals:$i(s,s.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:$i(s,s.resolveTypeReferenceDirectiveReferences),resolveLibrary:$i(s,s.resolveLibrary),useSourceOfProjectReferenceRedirect:$i(s,s.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Dl,jsDocParsingMode:s.jsDocParsingMode,getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)},gg=mc.getSourceFile,{getSourceFileWithCache:Ag}=Gde(mc,gu=>Ou(gu,V,re),(...gu)=>gg.call(mc,...gu));mc.getSourceFile=Ag,(Mn=s.setCompilerHost)==null||Mn.call(s,mc);let _u={useCaseSensitiveFileNames:ee,fileExists:gu=>mc.fileExists(gu),readFile:gu=>mc.readFile(gu),directoryExists:gu=>mc.directoryExists(gu),getDirectories:gu=>mc.getDirectories(gu),realpath:mc.realpath,readDirectory:(...gu)=>mc.readDirectory(...gu),trace:mc.trace,getCurrentDirectory:mc.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:Dc},wI=c.getKeyForCompilationSettings(Wi),AI=new Set;if(ptt(S,es,Wi,(gu,bg)=>s.getScriptVersion(bg),gu=>mc.fileExists(gu),Vn,Ui,gs,Dl,fs)){mc=void 0,bi=void 0,AI=void 0;return}S=UEe({rootNames:es,options:Wi,host:mc,oldProgram:S,projectReferences:fs}),mc=void 0,bi=void 0,AI=void 0,ge.clearCache(),S.getTypeChecker();return;function Dl(gu){let bg=Ou(gu,V,re),KA=bi?.get(bg);if(KA!==void 0)return KA||void 0;let TA=s.getParsedCommandLine?s.getParsedCommandLine(gu):yu(gu);return(bi||(bi=new Map)).set(bg,TA||!1),TA}function yu(gu){let bg=sh(gu,100);if(bg)return bg.path=Ou(gu,V,re),bg.resolvedPath=bg.path,bg.originalFileName=bg.fileName,EEe(bg,_u,Xc(Mo(gu),V),void 0,Xc(gu,V))}function tm(gu,bg,KA){var TA;s.getParsedCommandLine?(TA=s.onReleaseParsedCommandLine)==null||TA.call(s,gu,bg,KA):bg&&jp(bg.sourceFile,KA)}function jp(gu,bg){let KA=c.getKeyForCompilationSettings(bg);c.releaseDocumentWithKey(gu.resolvedPath,KA,gu.scriptKind,gu.impliedNodeFormat)}function Xg(gu,bg,KA,TA){var oi;jp(gu,bg),(oi=s.onReleaseOldSourceFile)==null||oi.call(s,gu,bg,KA,TA)}function sh(gu,bg,KA,TA){return dS(gu,Ou(gu,V,re),bg,KA,TA)}function dS(gu,bg,KA,TA,oi){pe.assert(mc,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let $d=s.getScriptSnapshot(gu);if(!$d)return;let YI=zrt(gu,s),Fh=s.getScriptVersion(gu);if(!oi){let WC=S&&S.getSourceFileByPath(bg);if(WC){if(YI===WC.scriptKind||AI.has(WC.resolvedPath))return c.updateDocumentWithKey(gu,bg,s,wI,$d,Fh,YI,KA);c.releaseDocumentWithKey(WC.resolvedPath,c.getKeyForCompilationSettings(S.getCompilerOptions()),WC.scriptKind,WC.impliedNodeFormat),AI.add(WC.resolvedPath)}}return c.acquireDocumentWithKey(gu,bg,s,wI,$d,Fh,YI,KA)}}function Ne(){if(h===2){pe.assert(S===void 0);return}return _e(),S}function Te(){var tn;return(tn=s.getPackageJsonAutoImportProvider)==null?void 0:tn.call(s)}function Ze(tn,wn){let Mn=S.getTypeChecker(),ci=es();if(!ci)return!1;for(let Vn of tn)for(let Ui of Vn.references){let gs=Wi(Ui);if(pe.assertIsDefined(gs),wn.has(Ui)||Kp.isDeclarationOfSymbol(gs,ci)){wn.add(Ui),Ui.isDefinition=!0;let fs=qVe(Ui,ge,$i(s,s.fileExists));fs&&wn.add(fs)}else Ui.isDefinition=!1}return!0;function es(){for(let Vn of tn)for(let Ui of Vn.references){if(wn.has(Ui)){let fs=Wi(Ui);return pe.assertIsDefined(fs),Mn.getSymbolAtLocation(fs)}let gs=qVe(Ui,ge,$i(s,s.fileExists));if(gs&&wn.has(gs)){let fs=Wi(gs);if(fs)return Mn.getSymbolAtLocation(fs)}}}function Wi(Vn){let Ui=S.getSourceFile(Vn.fileName);if(!Ui)return;let gs=Lb(Ui,Vn.textSpan.start);return Kp.Core.getAdjustedNode(gs,{use:Kp.FindReferencesUse.References})}}function We(){if(S){let tn=c.getKeyForCompilationSettings(S.getCompilerOptions());F(S.getSourceFiles(),wn=>c.releaseDocumentWithKey(wn.resolvedPath,tn,wn.scriptKind,wn.impliedNodeFormat)),S=void 0}}function Ue(){We(),s=void 0}function $e(tn){return _e(),S.getSyntacticDiagnostics(Ie(tn),W).slice()}function Ye(tn){_e();let wn=Ie(tn),Mn=S.getSemanticDiagnostics(wn,W);if(!Ly(S.getCompilerOptions()))return Mn.slice();let ci=S.getDeclarationDiagnostics(wn,W);return[...Mn,...ci]}function Tt(tn,wn){_e();let Mn=Ie(tn),ci=S.getCompilerOptions();if(T3(Mn,ci,S)||!gU(Mn,ci)||S.getCachedSemanticDiagnostics(Mn))return;let es=ot(Mn,wn);if(!es)return;let Wi=EI(es.map(Ui=>wA(Ui.getFullStart(),Ui.getEnd())));return{diagnostics:S.getSemanticDiagnostics(Mn,W,es).slice(),spans:Wi}}function ot(tn,wn){let Mn=[],ci=EI(wn.map(es=>t9(es)));for(let es of ci){let Wi=Qe(tn,es);if(!Wi)return;Mn.push(...Wi)}if(Mn.length)return Mn}function Qe(tn,wn){if(ed(wn,tn))return;let Mn=Hde(tn,Rs(wn))||tn,ci=ji(Mn,Wi=>Og(Wi,wn)),es=[];if(mt(wn,ci,es),tn.end===wn.start+wn.length&&es.push(tn.endOfFileToken),!jt(es,ll))return es}function mt(tn,wn,Mn){return ht(wn,tn)?ed(tn,wn)?(_t(wn,Mn),!0):Pz(wn)?Rt(tn,wn,Mn):xa(wn)?Lt(tn,wn,Mn):(_t(wn,Mn),!0):!1}function ht(tn,wn){let Mn=wn.start+wn.length;return tn.poswn.start}function _t(tn,wn){for(;tn.parent&&!RLe(tn);)tn=tn.parent;wn.push(tn)}function Rt(tn,wn,Mn){let ci=[];return wn.statements.filter(Wi=>mt(tn,Wi,ci)).length===wn.statements.length?(_t(wn,Mn),!0):(Mn.push(...ci),!1)}function Lt(tn,wn,Mn){var ci,es,Wi;let Vn=fs=>e3(fs,tn);if((ci=wn.modifiers)!=null&&ci.some(Vn)||wn.name&&Vn(wn.name)||(es=wn.typeParameters)!=null&&es.some(Vn)||(Wi=wn.heritageClauses)!=null&&Wi.some(Vn))return _t(wn,Mn),!0;let Ui=[];return wn.members.filter(fs=>mt(tn,fs,Ui)).length===wn.members.length?(_t(wn,Mn),!0):(Mn.push(...Ui),!1)}function Ke(tn){return _e(),Ent(Ie(tn),S,W)}function Pt(){return _e(),[...S.getOptionsDiagnostics(W),...S.getGlobalDiagnostics(W)]}function _r(tn,wn,Mn=VB,ci){let es={...Mn,includeCompletionsForModuleExports:Mn.includeCompletionsForModuleExports||Mn.includeExternalModuleExports,includeCompletionsWithInsertText:Mn.includeCompletionsWithInsertText||Mn.includeInsertTextCompletions};return _e(),Jz.getCompletionsAtPosition(s,S,M,Ie(tn),wn,es,Mn.triggerCharacter,Mn.triggerKind,W,ci&&Im.getFormatContext(ci,s),Mn.includeSymbol)}function Gt(tn,wn,Mn,ci,es,Wi=VB,Vn){return _e(),Jz.getCompletionEntryDetails(S,M,Ie(tn),wn,{name:Mn,source:es,data:Vn},s,ci&&Im.getFormatContext(ci,s),Wi,W)}function nt(tn,wn,Mn,ci,es=VB){return _e(),Jz.getCompletionEntrySymbol(S,M,Ie(tn),wn,{name:Mn,source:ci},s,es)}function Dt(tn,wn,Mn,ci){_e();let es=Ie(tn),Wi=Lb(es,wn);if(Wi===es)return;let Vn=S.getTypeChecker(),Ui=Gr(Wi),gs=kks(Ui,Vn);if(!gs||Vn.isUnknownSymbol(gs)){let _u=dt(es,Ui,wn)?Vn.getTypeAtLocation(Ui):void 0;return _u&&{kind:"",kindModifiers:"",textSpan:Oy(Ui,es),displayParts:Vn.runWithCancellationToken(W,wI=>I1e(wI,_u,kU(Ui),void 0,ci)),documentation:_u.symbol?_u.symbol.getDocumentationComment(Vn):void 0,tags:_u.symbol?_u.symbol.getJsDocTags(Vn):void 0}}let{symbolKind:fs,displayParts:bi,documentation:mc,tags:gg,canIncreaseVerbosityLevel:Ag}=Vn.runWithCancellationToken(W,_u=>i9.getSymbolDisplayPartsDocumentationAndSymbolKind(_u,gs,es,kU(Ui),Ui,void 0,void 0,Mn??Age,ci));return{kind:fs,kindModifiers:i9.getSymbolModifiers(Vn,gs),textSpan:Oy(Ui,es),displayParts:bi,documentation:mc,tags:gg,canIncreaseVerbosityLevel:Ag}}function tr(tn,wn){return _e(),cst.preparePasteEdits(Ie(tn),wn,S.getTypeChecker())}function ur(tn,wn){return _e(),lst.pasteEditsProvider(Ie(tn.targetFile),tn.pastedText,tn.pasteLocations,tn.copiedFrom?{file:Ie(tn.copiedFrom.file),range:tn.copiedFrom.range}:void 0,s,tn.preferences,Im.getFormatContext(wn,s),W)}function Gr(tn){return f2(tn.parent)&&tn.pos===tn.parent.pos?tn.parent.expression:KT(tn.parent)&&tn.pos===tn.parent.pos||uv(tn.parent)&&tn.parent.name===tn||eR(tn.parent)?tn.parent:tn}function dt(tn,wn,Mn){switch(wn.kind){case 80:return wn.flags&16777216&&!wo(wn)&&(wn.parent.kind===172&&wn.parent.name===wn||ji(wn,ci=>ci.kind===170))?!1:!hrt(wn)&&!mrt(wn)&&!s2(wn.parent);case 212:case 167:return!$L(tn,Mn);case 110:case 198:case 108:case 203:return!0;case 237:return uv(wn);default:return!1}}function pr(tn,wn,Mn,ci){return _e(),nse.getDefinitionAtPosition(S,Ie(tn),wn,Mn,ci)}function st(tn,wn){return _e(),nse.getDefinitionAndBoundSpan(S,Ie(tn),wn)}function ir(tn,wn){return _e(),nse.getTypeDefinitionAtPosition(S.getTypeChecker(),Ie(tn),wn)}function zt(tn,wn){return _e(),Kp.getImplementationsAtPosition(S,W,S.getSourceFiles(),Ie(tn),wn)}function Ht(tn,wn,Mn){let ci=iu(tn);pe.assert(Mn.some(Vn=>iu(Vn)===ci)),_e();let es=Xt(Mn,Vn=>S.getSourceFile(Vn)),Wi=Ie(tn);return IPe.getDocumentHighlights(S,W,Wi,wn,es)}function Br(tn,wn,Mn,ci,es){_e();let Wi=Ie(tn),Vn=WVe(Lb(Wi,wn));if($Pe.nodeIsEligibleForRename(Vn))if(Ir(Vn)&&($T(Vn.parent)||rQ(Vn.parent))&&eU(Vn.escapedText)){let{openingElement:Ui,closingElement:gs}=Vn.parent.parent;return[Ui,gs].map(fs=>{let bi=Oy(fs.tagName,Wi);return{fileName:Wi.fileName,textSpan:bi,...Kp.toContextSpan(bi,Wi,fs.parent)}})}else{let Ui=_1(Wi,es??VB),gs=typeof es=="boolean"?es:es?.providePrefixAndSuffixTextForRename;return jn(Vn,wn,{findInStrings:Mn,findInComments:ci,providePrefixAndSuffixTextForRename:gs,use:Kp.FindReferencesUse.Rename},(fs,bi,mc)=>Kp.toRenameLocation(fs,bi,mc,gs||!1,Ui))}}function mn(tn,wn){return _e(),jn(Lb(Ie(tn),wn),wn,{use:Kp.FindReferencesUse.References},Kp.toReferenceEntry)}function jn(tn,wn,Mn,ci){_e();let es=Mn&&Mn.use===Kp.FindReferencesUse.Rename?S.getSourceFiles().filter(Wi=>!S.isSourceFileDefaultLibrary(Wi)):S.getSourceFiles();return Kp.findReferenceOrRenameEntries(S,W,es,tn,wn,Mn,ci)}function Zi(tn,wn){return _e(),Kp.findReferencedSymbols(S,W,S.getSourceFiles(),Ie(tn),wn)}function Ns(tn){return _e(),Kp.Core.getReferencesForFileName(tn,S,S.getSourceFiles()).map(Kp.toReferenceEntry)}function An(tn,wn,Mn,ci=!1,es=!1){_e();let Wi=Mn?[Ie(Mn)]:S.getSourceFiles();return win(Wi,S.getTypeChecker(),W,tn,wn,ci,es)}function si(tn,wn,Mn){_e();let ci=Ie(tn),es=s.getCustomTransformers&&s.getCustomTransformers();return T3t(S,ci,!!wn,W,es,Mn)}function ks(tn,wn,{triggerReason:Mn}=VB){_e();let ci=Ie(tn);return X1e.getSignatureHelpItems(S,ci,wn,Mn,W)}function Ic(tn){return _.getCurrentSourceFile(tn)}function su(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Lb(ci,wn);if(es===ci)return;switch(es.kind){case 212:case 167:case 11:case 97:case 112:case 106:case 108:case 110:case 198:case 80:break;default:return}let Wi=es;for(;;)if(Wie(Wi)||Q5t(Wi))Wi=Wi.parent;else if(_rt(Wi))if(Wi.parent.parent.kind===268&&Wi.parent.parent.body===Wi.parent)Wi=Wi.parent.parent.name;else break;else break;return wA(Wi.getStart(),es.getEnd())}function Zn(tn,wn){let Mn=_.getCurrentSourceFile(tn);return $nt.spanInSourceFileAtLocation(Mn,wn)}function ya(tn){return Din(_.getCurrentSourceFile(tn),W)}function Gl(tn){return kin(_.getCurrentSourceFile(tn),W)}function ba(tn,wn,Mn){return _e(),(Mn||"original")==="2020"?ron(S,W,Ie(tn),wn):xMt(S.getTypeChecker(),W,Ie(tn),S.getClassifiableNames(),wn)}function Wo(tn,wn,Mn){return _e(),(Mn||"original")==="original"?fnt(S.getTypeChecker(),W,Ie(tn),S.getClassifiableNames(),wn):aYt(S,W,Ie(tn),wn)}function hc(tn,wn){return GMt(W,_.getCurrentSourceFile(tn),wn)}function yr(tn,wn){return Int(W,_.getCurrentSourceFile(tn),wn)}function hn(tn){let wn=_.getCurrentSourceFile(tn);return Jit.collectElements(wn,W)}let Oi=new Map(Object.entries({19:20,21:22,23:24,32:30}));Oi.forEach((tn,wn)=>Oi.set(tn.toString(),Number(wn)));function lo(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Hie(Mn,wn),es=ci.getStart(Mn)===wn?Oi.get(ci.kind.toString()):void 0,Wi=es&&qd(ci.parent,es,Mn);return Wi?[Oy(ci,Mn),Oy(Wi,Mn)].sort((Vn,Ui)=>Vn.start-Ui.start):E}function pa(tn,wn,Mn){let ci=Fg(),es=N1e(Mn),Wi=_.getCurrentSourceFile(tn);M("getIndentationAtPosition: getCurrentSourceFile: "+(Fg()-ci)),ci=Fg();let Vn=Im.SmartIndenter.getIndentation(wn,Wi,es);return M("getIndentationAtPosition: computeIndentation : "+(Fg()-ci)),Vn}function Oa(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn);return Im.formatSelection(wn,Mn,es,Im.getFormatContext(N1e(ci),s))}function tl(tn,wn){return Im.formatDocument(_.getCurrentSourceFile(tn),Im.getFormatContext(N1e(wn),s))}function Qu(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn),Wi=Im.getFormatContext(N1e(ci),s);if(!$L(es,wn))switch(Mn){case"{":return Im.formatOnOpeningCurly(wn,es,Wi);case"}":return Im.formatOnClosingCurly(wn,es,Wi);case";":return Im.formatOnSemicolon(wn,es,Wi);case` -`:return Im.formatOnEnter(wn,es,Wi)}return[]}function Tg(tn,wn,Mn,ci,es,Wi=VB){_e();let Vn=Ie(tn),Ui=wA(wn,Mn),gs=Im.getFormatContext(es,s);return er(io(ci,yg,Zt),fs=>(W.throwIfCancellationRequested(),x0.getFixes({errorCode:fs,sourceFile:Vn,span:Ui,program:S,host:s,cancellationToken:W,formatContext:gs,preferences:Wi})))}function Cs(tn,wn,Mn,ci=VB){_e(),pe.assert(tn.type==="file");let es=Ie(tn.fileName),Wi=Im.getFormatContext(Mn,s);return x0.getAllFixes({fixId:wn,sourceFile:es,program:S,host:s,cancellationToken:W,formatContext:Wi,preferences:ci})}function Tu(tn,wn,Mn=VB){_e(),pe.assert(tn.type==="file");let ci=Ie(tn.fileName);if(pP(ci))return E;let es=Im.getFormatContext(wn,s),Wi=tn.mode??(tn.skipDestructiveCodeActions?"SortAndCombine":"All");return i5.organizeImports(ci,es,s,S,Mn,Wi)}function Pr(tn,wn,Mn,ci=VB){return LMt(Ne(),tn,wn,s,Im.getFormatContext(Mn,s),ci,ge)}function Pn(tn,wn){let Mn=typeof tn=="string"?wn:tn;return Ki(Mn)?Promise.all(Mn.map(ci=>pt(ci))):pt(Mn)}function pt(tn){let wn=Mn=>Ou(Mn,V,re);return pe.assertEqual(tn.type,"install package"),s.installPackage?s.installPackage({fileName:wn(tn.file),packageName:tn.packageName}):Promise.reject("Host does not implement `installPackage`")}function on(tn,wn,Mn,ci){let es=ci?Im.getFormatContext(ci,s).options:void 0;return n5.getDocCommentTemplateAtPosition(OF(s,es),_.getCurrentSourceFile(tn),wn,Mn)}function it(tn,wn,Mn){if(Mn===60)return!1;let ci=_.getCurrentSourceFile(tn);if(Zz(ci,wn))return!1;if(q5t(ci,wn))return Mn===123;if(Brt(ci,wn))return!1;switch(Mn){case 39:case 34:case 96:return!$L(ci,wn)}return!0}function nr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Gm(wn,Mn);if(!ci)return;let es=ci.kind===32&&$T(ci.parent)?ci.parent.parent:KL(ci)&&bN(ci.parent)?ci.parent:void 0;if(es&&Gi(es))return{newText:``};let Wi=ci.kind===32&&Pw(ci.parent)?ci.parent.parent:KL(ci)&&P3(ci.parent)?ci.parent:void 0;if(Wi&&nn(Wi))return{newText:""}}function Fr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Gm(wn,Mn);if(!ci||ci.parent.kind===308)return;let es="[a-zA-Z0-9:\\-\\._$]*";if(P3(ci.parent.parent)){let Wi=ci.parent.parent.openingFragment,Vn=ci.parent.parent.closingFragment;if(pP(Wi)||pP(Vn))return;let Ui=Wi.getStart(Mn)+1,gs=Vn.getStart(Mn)+2;return wn!==Ui&&wn!==gs?void 0:{ranges:[{start:Ui,length:0},{start:gs,length:0}],wordPattern:es}}else{let Wi=ji(ci.parent,Ag=>!!($T(Ag)||rQ(Ag)));if(!Wi)return;pe.assert($T(Wi)||rQ(Wi),"tag should be opening or closing element");let Vn=Wi.parent.openingElement,Ui=Wi.parent.closingElement,gs=Vn.tagName.getStart(Mn),fs=Vn.tagName.end,bi=Ui.tagName.getStart(Mn),mc=Ui.tagName.end;return gs===Vn.getStart(Mn)||bi===Ui.getStart(Mn)||fs===Vn.getEnd()||mc===Ui.getEnd()||!(gs<=wn&&wn<=fs||bi<=wn&&wn<=mc)||Vn.tagName.getText(Mn)!==Ui.tagName.getText(Mn)?void 0:{ranges:[{start:gs,length:fs-gs},{start:bi,length:mc-bi}],wordPattern:es}}}function Kr(tn,wn){return{lineStarts:tn.getLineStarts(),firstLine:tn.getLineAndCharacterOfPosition(wn.pos).line,lastLine:tn.getLineAndCharacterOfPosition(wn.end).line}}function Dn(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=[],{lineStarts:Wi,firstLine:Vn,lastLine:Ui}=Kr(ci,wn),gs=Mn||!1,fs=Number.MAX_VALUE,bi=new Map,mc=new RegExp(/\S/),gg=MVe(ci,Wi[Vn]),Ag=gg?"{/*":"//";for(let _u=Vn;_u<=Ui;_u++){let wI=ci.text.substring(Wi[_u],ci.getLineEndOfPosition(Wi[_u])),AI=mc.exec(wI);AI&&(fs=Math.min(fs,AI.index),bi.set(_u.toString(),AI.index),wI.substr(AI.index,Ag.length)!==Ag&&(gs=Mn===void 0||Mn))}for(let _u=Vn;_u<=Ui;_u++){if(Vn!==Ui&&Wi[_u]===wn.end)continue;let wI=bi.get(_u.toString());wI!==void 0&&(gg?es.push(...hr(tn,{pos:Wi[_u]+fs,end:ci.getLineEndOfPosition(Wi[_u])},gs,gg)):gs?es.push({newText:Ag,span:{length:0,start:Wi[_u]+fs}}):ci.text.substr(Wi[_u]+wI,Ag.length)===Ag&&es.push({newText:"",span:{length:Ag.length,start:Wi[_u]+wI}}))}return es}function hr(tn,wn,Mn,ci){var es;let Wi=_.getCurrentSourceFile(tn),Vn=[],{text:Ui}=Wi,gs=!1,fs=Mn||!1,bi=[],{pos:mc}=wn,gg=ci!==void 0?ci:MVe(Wi,mc),Ag=gg?"{/*":"/*",_u=gg?"*/}":"*/",wI=gg?"\\{\\/\\*":"\\/\\*",AI=gg?"\\*\\/\\}":"\\*\\/";for(;mc<=wn.end;){let pp=Ui.substr(mc,Ag.length)===Ag?Ag.length:0,Dl=$L(Wi,mc+pp);if(Dl)gg&&(Dl.pos--,Dl.end++),bi.push(Dl.pos),Dl.kind===3&&bi.push(Dl.end),gs=!0,mc=Dl.end+1;else{let yu=Ui.substring(mc,wn.end).search(`(${wI})|(${AI})`);fs=Mn!==void 0?Mn:fs||!lMt(Ui,mc,yu===-1?wn.end:mc+yu),mc=yu===-1?wn.end+1:mc+yu+_u.length}}if(fs||!gs){((es=$L(Wi,wn.pos))==null?void 0:es.kind)!==2&&Gc(bi,wn.pos,Zt),Gc(bi,wn.end,Zt);let pp=bi[0];Ui.substr(pp,Ag.length)!==Ag&&Vn.push({newText:Ag,span:{length:0,start:pp}});for(let Dl=1;Dl0?pp-_u.length:0,yu=Ui.substr(Dl,_u.length)===_u?_u.length:0;Vn.push({newText:"",span:{length:Ag.length,start:pp-yu}})}return Vn}function En(tn,wn){let Mn=_.getCurrentSourceFile(tn),{firstLine:ci,lastLine:es}=Kr(Mn,wn);return ci===es&&wn.pos!==wn.end?hr(tn,wn,!0):Dn(tn,wn,!0)}function Ni(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=[],{pos:es}=wn,{end:Wi}=wn;es===Wi&&(Wi+=MVe(Mn,es)?2:1);for(let Vn=es;Vn<=Wi;Vn++){let Ui=$L(Mn,Vn);if(Ui){switch(Ui.kind){case 2:ci.push(...Dn(tn,{end:Ui.end,pos:Ui.pos+1},!1));break;case 3:ci.push(...hr(tn,{end:Ui.end,pos:Ui.pos+1},!1))}Vn=Ui.end+1}}return ci}function Gi({openingElement:tn,closingElement:wn,parent:Mn}){return!Q3(tn.tagName,wn.tagName)||bN(Mn)&&Q3(tn.tagName,Mn.openingElement.tagName)&&Gi(Mn)}function nn({closingFragment:tn,parent:wn}){return!!(tn.flags&262144)||P3(wn)&&nn(wn)}function bn(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Im.getRangeOfEnclosingComment(ci,wn);return es&&(!Mn||es.kind===3)?t9(es):void 0}function ds(tn,wn){_e();let Mn=Ie(tn);W.throwIfCancellationRequested();let ci=Mn.text,es=[];if(wn.length>0&&!gs(Mn.fileName)){let fs=Vn(),bi;for(;bi=fs.exec(ci);){W.throwIfCancellationRequested();let mc=3;pe.assert(bi.length===wn.length+mc);let gg=bi[1],Ag=bi.index+gg.length;if(!$L(Mn,Ag))continue;let _u;for(let AI=0;AI"("+Wi(Dl.text)+")").join("|")+")",_u=/(?:$|\*\/)/.source,wI=/(?:.*?)/.source,AI="("+Ag+wI+")",pp=gg+AI+_u;return new RegExp(pp,"gim")}function Ui(fs){return fs>=97&&fs<=122||fs>=65&&fs<=90||fs>=48&&fs<=57}function gs(fs){return fs.includes("/node_modules/")}}function Mt(tn,wn,Mn){return _e(),$Pe.getRenameInfo(S,Ie(tn),wn,Mn||{})}function cn(tn,wn,Mn,ci,es,Wi){let[Vn,Ui]=typeof wn=="number"?[wn,void 0]:[wn.pos,wn.end];return{file:tn,startPosition:Vn,endPosition:Ui,program:Ne(),host:s,formatContext:Im.getFormatContext(ci,s),cancellationToken:W,preferences:Mn,triggerReason:es,kind:Wi}}function Bt(tn,wn,Mn){return{file:tn,program:Ne(),host:s,span:wn,preferences:Mn,cancellationToken:W}}function xe(tn,wn){return jit.getSmartSelectionRange(wn,_.getCurrentSourceFile(tn))}function fr(tn,wn,Mn=VB,ci,es,Wi){_e();let Vn=Ie(tn);return Oz.getApplicableRefactors(cn(Vn,wn,Mn,VB,ci,es),Wi)}function Je(tn,wn,Mn=VB){_e();let ci=Ie(tn),es=pe.checkDefined(S.getSourceFiles()),Wi=tz(tn),Vn=T1e(cn(ci,wn,Mn,VB)),Ui=wHt(Vn?.all),gs=Xt(es,fs=>{let bi=tz(fs.fileName);return!S?.isSourceFileFromExternalLibrary(ci)&&!(ci===Ie(fs.fileName)||Wi===".ts"&&bi===".d.ts"||Wi===".d.ts"&&Ac(gp(fs.fileName),"lib.")&&bi===".d.ts")&&(Wi===bi||(Wi===".tsx"&&bi===".ts"||Wi===".jsx"&&bi===".js")&&!Ui)?fs.fileName:void 0});return{newFileName:BHt(ci,S,s,Vn),files:gs}}function In(tn,wn,Mn,ci,es,Wi=VB,Vn){_e();let Ui=Ie(tn);return Oz.getEditsForRefactor(cn(Ui,Mn,Wi,wn),ci,es,Vn)}function Hn(tn,wn){return wn===0?{line:0,character:0}:ge.toLineColumnOffset(tn,wn)}function Ot(tn,wn){_e();let Mn=Mz.resolveCallHierarchyDeclaration(S,Lb(Ie(tn),wn));return Mn&&ont(Mn,ci=>Mz.createCallHierarchyItem(S,ci))}function $r(tn,wn){_e();let Mn=Ie(tn),ci=ant(Mz.resolveCallHierarchyDeclaration(S,wn===0?Mn:Lb(Mn,wn)));return ci?Mz.getIncomingCalls(S,ci,W):[]}function ri(tn,wn){_e();let Mn=Ie(tn),ci=ant(Mz.resolveCallHierarchyDeclaration(S,wn===0?Mn:Lb(Mn,wn)));return ci?Mz.getOutgoingCalls(S,ci):[]}function ao(tn,wn,Mn=VB){_e();let ci=Ie(tn);return Yit.provideInlayHints(Bt(ci,wn,Mn))}function Bs(tn,wn,Mn,ci,es){return Qit.mapCode(_.getCurrentSourceFile(tn),wn,Mn,s,Im.getFormatContext(ci,s),es)}let Ys={dispose:Ue,cleanupSemanticCache:We,getSyntacticDiagnostics:$e,getSemanticDiagnostics:Ye,getRegionSemanticDiagnostics:Tt,getSuggestionDiagnostics:Ke,getCompilerOptionsDiagnostics:Pt,getSyntacticClassifications:hc,getSemanticClassifications:ba,getEncodedSyntacticClassifications:yr,getEncodedSemanticClassifications:Wo,getCompletionsAtPosition:_r,getCompletionEntryDetails:Gt,getCompletionEntrySymbol:nt,getSignatureHelpItems:ks,getQuickInfoAtPosition:Dt,getDefinitionAtPosition:pr,getDefinitionAndBoundSpan:st,getImplementationAtPosition:zt,getTypeDefinitionAtPosition:ir,getReferencesAtPosition:mn,findReferences:Zi,getFileReferences:Ns,getDocumentHighlights:Ht,getNameOrDottedNameSpan:su,getBreakpointStatementAtPosition:Zn,getNavigateToItems:An,getRenameInfo:Mt,getSmartSelectionRange:xe,findRenameLocations:Br,getNavigationBarItems:ya,getNavigationTree:Gl,getOutliningSpans:hn,getTodoComments:ds,getBraceMatchingAtPosition:lo,getIndentationAtPosition:pa,getFormattingEditsForRange:Oa,getFormattingEditsForDocument:tl,getFormattingEditsAfterKeystroke:Qu,getDocCommentTemplateAtPosition:on,isValidBraceCompletionAtPosition:it,getJsxClosingTagAtPosition:nr,getLinkedEditingRangeAtPosition:Fr,getSpanOfEnclosingComment:bn,getCodeFixesAtPosition:Tg,getCombinedCodeFix:Cs,applyCodeActionCommand:Pn,organizeImports:Tu,getEditsForFileRename:Pr,getEmitOutput:si,getNonBoundSourceFile:Ic,getProgram:Ne,getCurrentProgram:()=>S,getAutoImportProvider:Te,updateIsDefinitionOfReferencedSymbols:Ze,getApplicableRefactors:fr,getEditsForRefactor:In,getMoveToRefactoringFileSuggestions:Je,toLineColumnOffset:Hn,getSourceMapper:()=>ge,clearSourceMapperCache:()=>ge.clearCache(),prepareCallHierarchy:Ot,provideCallHierarchyIncomingCalls:$r,provideCallHierarchyOutgoingCalls:ri,toggleLineComment:Dn,toggleMultilineComment:hr,commentSelection:En,uncommentSelection:Ni,provideInlayHints:ao,getSupportedCodeFixes:jnt,preparePasteEditsForFile:tr,getPasteEdits:ur,mapCode:Bs};switch(h){case 0:break;case 1:fon.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:Tks.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.Syntactic`)});break;default:pe.assertNever(h)}return Ys}function qnt(s){return s.nameTable||Rks(s),s.nameTable}function Rks(s){let c=s.nameTable=new Map;s.forEachChild(function g(d){if(Ir(d)&&!mrt(d)&&d.escapedText||d1(d)&&Nks(d)){let h=qJ(d);c.set(h,c.get(h)===void 0?d.pos:-1)}else if(p(d)){let h=d.escapedText;c.set(h,c.get(h)===void 0?d.pos:-1)}if(Lu(d,g),Xm(d))for(let h of d.jsDoc)Lu(h,g)})}function Nks(s){return HT(s)||s.parent.kind===284||xks(s)||fne(s)}function k1e(s){let c=Dks(s);return c&&(og(c.parent)||nQ(c.parent))?c:void 0}function Dks(s){switch(s.kind){case 11:case 15:case 9:if(s.parent.kind===168)return bY(s.parent.parent)?s.parent.parent:void 0;case 80:case 296:return bY(s.parent)&&(s.parent.parent.kind===211||s.parent.parent.kind===293)&&s.parent.name===s?s.parent:void 0}}function kks(s,c){let g=k1e(s);if(g){let d=c.getContextualType(g.parent),h=d&&xPe(g,c,d,!1);if(h&&h.length===1)return ma(h)}return c.getSymbolAtLocation(s)}function xPe(s,c,g,d){let h=d1e(s.name);if(!h)return E;if(!g.isUnion()){let R=g.getProperty(h);return R?[R]:E}let _=og(s.parent)||nQ(s.parent)?Me(g.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,s.parent)):g.types,S=Xt(_,R=>R.getProperty(h));if(d&&(S.length===0||S.length===g.types.length)){let R=g.getProperty(h);if(R)return[R]}return!_.length&&!S.length?Xt(g.types,R=>R.getProperty(h)):io(S,yg)}function xks(s){return s&&s.parent&&s.parent.kind===213&&s.parent.argumentExpression===s}function AYt(s){if(yd)return Ro(Mo(iu(yd.getExecutingFilePath())),Hs(s));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}zZe(Sks());function Ion(s,c,g){let d=[];g=wnt(g,d);let h=Ki(s)?s:[s],_=WEe(void 0,void 0,me,g,h,c,!0);return _.diagnostics=Nn(_.diagnostics,d),_}var $nt={};o($nt,{spanInSourceFileAtLocation:()=>Gks});function Gks(s,c){if(s.isDeclarationFile)return;let g=Jc(s,c),d=s.getLineAndCharacterOfPosition(c).line;if(s.getLineAndCharacterOfPosition(g.getStart(s)).line>d){let M=Gm(g.pos,s);if(!M||s.getLineAndCharacterOfPosition(M.getEnd()).line!==d)return;g=M}if(g.flags&33554432)return;return V(g);function h(M,ee){let re=oQ(M)?be(M.modifiers,So):void 0,ge=re?Yu(s.text,re.end):M.getStart(s);return wA(ge,(ee||M).getEnd())}function _(M,ee){return h(M,fQ(ee,ee.parent,s))}function S(M,ee){return M&&d===s.getLineAndCharacterOfPosition(M.getStart(s)).line?V(M):V(ee)}function R(M,ee,re){if(M){let ge=M.indexOf(ee);if(ge>=0){let Ie=ge,_e=ge+1;for(;Ie>0&&re(M[Ie-1]);)Ie--;for(;_e0)return V(Pt.declarations[0])}else return V(Ke.initializer)}function We(Ke){if(Ke.initializer)return Ze(Ke);if(Ke.condition)return h(Ke.condition);if(Ke.incrementor)return h(Ke.incrementor)}function Ue(Ke){let Pt=F(Ke.elements,_r=>_r.kind!==233?_r:void 0);return Pt?V(Pt):Ke.parent.kind===209?h(Ke.parent):ee(Ke.parent)}function $e(Ke){pe.assert(Ke.kind!==208&&Ke.kind!==207);let Pt=Ke.kind===210?Ke.elements:Ke.properties,_r=F(Pt,Gt=>Gt.kind!==233?Gt:void 0);return _r?V(_r):h(Ke.parent.kind===227?Ke.parent:Ke)}function Ye(Ke){switch(Ke.parent.kind){case 267:let Pt=Ke.parent;return S(Gm(Ke.pos,s,Ke.parent),Pt.members.length?Pt.members[0]:Pt.getLastToken(s));case 264:let _r=Ke.parent;return S(Gm(Ke.pos,s,Ke.parent),_r.members.length?_r.members[0]:_r.getLastToken(s));case 270:return S(Ke.parent.parent,Ke.parent.clauses[0])}return V(Ke.parent)}function Tt(Ke){switch(Ke.parent.kind){case 269:if(PF(Ke.parent.parent)!==1)return;case 267:case 264:return h(Ke);case 242:if(mP(Ke.parent))return h(Ke);case 300:return V(li(Ke.parent.statements));case 270:let Pt=Ke.parent,_r=li(Pt.clauses);return _r?V(li(_r.statements)):void 0;case 207:let Gt=Ke.parent;return V(li(Gt.elements)||Gt);default:if(e9(Ke.parent)){let nt=Ke.parent;return h(li(nt.properties)||nt)}return V(Ke.parent)}}function ot(Ke){switch(Ke.parent.kind){case 208:let Pt=Ke.parent;return h(li(Pt.elements)||Pt);default:if(e9(Ke.parent)){let _r=Ke.parent;return h(li(_r.elements)||_r)}return V(Ke.parent)}}function Qe(Ke){return Ke.parent.kind===247||Ke.parent.kind===214||Ke.parent.kind===215?T(Ke):Ke.parent.kind===218?W(Ke):V(Ke.parent)}function mt(Ke){switch(Ke.parent.kind){case 219:case 263:case 220:case 175:case 174:case 178:case 179:case 177:case 248:case 247:case 249:case 251:case 214:case 215:case 218:return T(Ke);default:return V(Ke.parent)}}function ht(Ke){return bu(Ke.parent)||Ke.parent.kind===304||Ke.parent.kind===170?T(Ke):V(Ke.parent)}function _t(Ke){return Ke.parent.kind===217?W(Ke):V(Ke.parent)}function Rt(Ke){return Ke.parent.kind===247?_(Ke,Ke.parent.expression):V(Ke.parent)}function Lt(Ke){return Ke.parent.kind===251?W(Ke):V(Ke.parent)}}}var Mz={};o(Mz,{createCallHierarchyItem:()=>dYt,getIncomingCalls:()=>Mks,getOutgoingCalls:()=>qks,resolveCallHierarchyDeclaration:()=>Son});function Fks(s){return(UA(s)||vd(s))&&rh(s)}function hon(s){return pi(s)||nc(s)}function x1e(s){return(UA(s)||lA(s)||vd(s))&&hon(s.parent)&&s===s.parent.initializer&&Ir(s.parent.name)&&(!!(dm(s.parent)&2)||pi(s.parent))}function mon(s){return ll(s)||xh(s)||ih(s)||UA(s)||pm(s)||vd(s)||fl(s)||uu(s)||hl(s)||Bg(s)||Dg(s)}function ese(s){return ll(s)||xh(s)&&Ir(s.name)||ih(s)||pm(s)||fl(s)||uu(s)||hl(s)||Bg(s)||Dg(s)||Fks(s)||x1e(s)}function Con(s){return ll(s)?s:rh(s)?s.name:x1e(s)?s.parent.name:pe.checkDefined(s.modifiers&&de(s.modifiers,_on))}function _on(s){return s.kind===90}function yon(s,c){let g=Con(c);return g&&s.getSymbolAtLocation(g)}function Zks(s,c){if(ll(c))return{text:c.fileName,pos:0,end:0};if((ih(c)||pm(c))&&!rh(c)){let h=c.modifiers&&de(c.modifiers,_on);if(h)return{text:"default",pos:h.getStart(),end:h.getEnd()}}if(fl(c)){let h=c.getSourceFile(),_=Yu(h.text,Av(c).pos),S=_+6,R=s.getTypeChecker(),T=R.getSymbolAtLocation(c.parent);return{text:`${T?`${R.symbolToString(T,c.parent)} `:""}static {}`,pos:_,end:S}}let g=x1e(c)?c.parent.name:pe.checkDefined(Il(c),"Expected call hierarchy item to have a name"),d=Ir(g)?Vo(g):d1(g)?g.text:Un(g)&&d1(g.expression)?g.expression.text:void 0;if(d===void 0){let h=s.getTypeChecker(),_=h.getSymbolAtLocation(g);_&&(d=h.symbolToString(_,c))}if(d===void 0){let h=ett();d=dP(_=>h.writeNode(4,c,c.getSourceFile(),_))}return{text:d,pos:g.getStart(),end:g.getEnd()}}function Lks(s){var c,g,d,h;if(x1e(s))return pi(s.parent)&&xa(s.parent.parent)?vd(s.parent.parent)?(c=CB(s.parent.parent))==null?void 0:c.getText():(g=s.parent.parent.name)==null?void 0:g.getText():_N(s.parent.parent.parent.parent)&&Ir(s.parent.parent.parent.parent.parent.name)?s.parent.parent.parent.parent.parent.name.getText():void 0;switch(s.kind){case 178:case 179:case 175:return s.parent.kind===211?(d=CB(s.parent))==null?void 0:d.getText():(h=Il(s.parent))==null?void 0:h.getText();case 263:case 264:case 268:if(_N(s.parent)&&Ir(s.parent.parent.name))return s.parent.parent.name.getText()}}function bon(s,c){if(c.body)return c;if(Tc(c))return lN(c.parent);if(ih(c)||uu(c)){let g=yon(s,c);return g&&g.valueDeclaration&&kd(g.valueDeclaration)&&g.valueDeclaration.body?g.valueDeclaration:void 0}return c}function Eon(s,c){let g=yon(s,c),d;if(g&&g.declarations){let h=po(g.declarations),_=At(g.declarations,T=>({file:T.getSourceFile().fileName,pos:T.pos}));h.sort((T,W)=>Ca(_[T].file,_[W].file)||_[T].pos-_[W].pos);let S=At(h,T=>g.declarations[T]),R;for(let T of S)ese(T)&&((!R||R.parent!==T.parent||R.end!==T.pos)&&(d=Ft(d,T)),R=T)}return d}function eit(s,c){return fl(c)?c:kd(c)?bon(s,c)??Eon(s,c)??c:Eon(s,c)??c}function Son(s,c){let g=s.getTypeChecker(),d=!1;for(;;){if(ese(c))return eit(g,c);if(mon(c)){let h=ji(c,ese);return h&&eit(g,h)}if(HT(c)){if(ese(c.parent))return eit(g,c.parent);if(mon(c.parent)){let h=ji(c.parent,ese);return h&&eit(g,h)}return hon(c.parent)&&c.parent.initializer&&x1e(c.parent.initializer)?c.parent.initializer:void 0}if(Tc(c))return ese(c.parent)?c.parent:void 0;if(c.kind===126&&fl(c.parent)){c=c.parent;continue}if(nc(c)&&c.initializer&&x1e(c.initializer))return c.initializer;if(!d){let h=g.getSymbolAtLocation(c);if(h&&(h.flags&2097152&&(h=g.getAliasedSymbol(h)),h.valueDeclaration)){d=!0,c=h.valueDeclaration;continue}}return}}function dYt(s,c){let g=c.getSourceFile(),d=Zks(s,c),h=Lks(c),_=pQ(c),S=Yde(c),R=wA(Yu(g.text,c.getFullStart(),!1,!0),c.getEnd()),T=wA(d.pos,d.end);return{file:g.fileName,kind:_,kindModifiers:S,name:d.text,containerName:h,span:R,selectionSpan:T}}function Vks(s){return s!==void 0}function Pks(s){if(s.kind===Kp.EntryKind.Node){let{node:c}=s;if(prt(c,!0,!0)||M5t(c,!0,!0)||H5t(c,!0,!0)||Y5t(c,!0,!0)||Wie(c)||Crt(c)){let g=c.getSourceFile();return{declaration:ji(c,ese)||g,range:Grt(c,g)}}}}function von(s){return rd(s.declaration)}function Wks(s,c){return{from:s,fromSpans:c}}function Oks(s,c){return Wks(dYt(s,c[0].declaration),At(c,g=>t9(g.range)))}function Mks(s,c,g){if(ll(c)||xh(c)||fl(c))return[];let d=Con(c),h=Me(Kp.findReferenceOrRenameEntries(s,g,s.getSourceFiles(),d,0,{use:Kp.FindReferencesUse.References},Pks),Vks);return h?Yn(h,von,_=>Oks(s,_)):[]}function Hks(s,c){function g(h){let _=MI(h)?h.tag:eI(h)?h.tagName:_p(h)||fl(h)?h:h.expression,S=Son(s,_);if(S){let R=Grt(_,h.getSourceFile());if(Ki(S))for(let T of S)c.push({declaration:T,range:R});else c.push({declaration:S,range:R})}}function d(h){if(h&&!(h.flags&33554432)){if(ese(h)){if(xa(h))for(let _ of h.members)_.name&&Un(_.name)&&d(_.name.expression);return}switch(h.kind){case 80:case 272:case 273:case 279:case 265:case 266:return;case 176:g(h);return;case 217:case 235:d(h.expression);return;case 261:case 170:d(h.name),d(h.initializer);return;case 214:g(h),d(h.expression),F(h.arguments,d);return;case 215:g(h),d(h.expression),F(h.arguments,d);return;case 216:g(h),d(h.tag),d(h.template);return;case 287:case 286:g(h),d(h.tagName),d(h.attributes);return;case 171:g(h),d(h.expression);return;case 212:case 213:g(h),Lu(h,d);break;case 239:d(h.expression);return}ww(h)||Lu(h,d)}}return d}function Yks(s,c){F(s.statements,c)}function Qks(s,c){!Ga(s,128)&&s.body&&_N(s.body)&&F(s.body.statements,c)}function Xks(s,c,g){let d=bon(s,c);d&&(F(d.parameters,g),g(d.body))}function Jks(s,c){c(s.body)}function Uks(s,c){F(s.modifiers,c);let g=OL(s);g&&c(g.expression);for(let d of s.members)LB(d)&&F(d.modifiers,c),pi(d)?c(d.initializer):Tc(d)&&d.body?(F(d.parameters,c),c(d.body)):fl(d)&&c(d)}function Kks(s,c){let g=[],d=Hks(s,g);switch(c.kind){case 308:Yks(c,d);break;case 268:Qks(c,d);break;case 263:case 219:case 220:case 175:case 178:case 179:Xks(s.getTypeChecker(),c,d);break;case 264:case 232:Uks(c,d);break;case 176:Jks(c,d);break;default:pe.assertNever(c)}return g}function jks(s,c){return{to:s,fromSpans:c}}function zks(s,c){return jks(dYt(s,c[0].declaration),At(c,g=>t9(g.range)))}function qks(s,c){return c.flags&33554432||hl(c)?[]:Yn(Kks(s,c),von,g=>zks(s,g))}var pYt={};o(pYt,{v2020:()=>Bon});var Bon={};o(Bon,{TokenEncodingConsts:()=>$sn,TokenModifier:()=>ton,TokenType:()=>eon,getEncodedSemanticClassifications:()=>aYt,getSemanticClassifications:()=>ron});var x0={};o(x0,{PreserveOptionalFlags:()=>Oun,addNewNodeForMemberSymbol:()=>Mun,codeFixAll:()=>Qd,createCodeFixAction:()=>ug,createCodeFixActionMaybeFixAll:()=>hYt,createCodeFixActionWithoutFixAll:()=>sR,createCombinedCodeActions:()=>Hz,createFileTextChanges:()=>won,createImportAdder:()=>yQ,createImportSpecifierResolver:()=>aGs,createMissingMemberNodes:()=>VQt,createSignatureDeclarationFromCallExpression:()=>PQt,createSignatureDeclarationFromSignature:()=>Bit,createStubbedBody:()=>WPe,eachDiagnostic:()=>Yz,findAncestorMatchingSpan:()=>XQt,generateAccessorFromProperty:()=>jun,getAccessorConvertiblePropertyAtPosition:()=>$un,getAllFixes:()=>rxs,getFixes:()=>txs,getImportCompletionAction:()=>cGs,getImportKind:()=>git,getJSDocTypedefNodes:()=>sGs,getNoopSymbolTrackerWithResolver:()=>rse,getPromoteTypeOnlyCompletionAction:()=>lGs,getSupportedErrorCodes:()=>$ks,importFixName:()=>Kan,importSymbols:()=>FU,parameterShouldGetTypeFromJSDoc:()=>ian,registerCodeFix:()=>xg,setJsonCompilerOptionValue:()=>YQt,setJsonCompilerOptionValues:()=>HQt,tryGetAutoImportableReferenceFromTypeNode:()=>bQ,typeNodeToAutoImportableTypeNode:()=>WQt,typePredicateToAutoImportableTypeNode:()=>Qun,typeToAutoImportableTypeNode:()=>wit,typeToMinimizedReferenceType:()=>Yun});var fYt=dl(),IYt=new Map;function sR(s,c,g){return mYt(s,IQ(g),c,void 0,void 0)}function ug(s,c,g,d,h,_){return mYt(s,IQ(g),c,d,IQ(h),_)}function hYt(s,c,g,d,h,_){return mYt(s,IQ(g),c,d,h&&IQ(h),_)}function mYt(s,c,g,d,h,_){return{fixName:s,description:c,changes:g,fixId:d,fixAllDescription:h,commands:_?[_]:void 0}}function xg(s){for(let c of s.errorCodes)CYt=void 0,fYt.add(String(c),s);if(s.fixIds)for(let c of s.fixIds)pe.assert(!IYt.has(c)),IYt.set(c,s)}var CYt;function $ks(){return CYt??(CYt=Do(fYt.keys()))}function exs(s,c){let{errorCodes:g}=s,d=0;for(let _ of c)if(k(g,_.code)&&d++,d>1)break;let h=d<2;return({fixId:_,fixAllDescription:S,...R})=>h?R:{...R,fixId:_,fixAllDescription:S}}function txs(s){let c=Ton(s),g=fYt.get(String(s.errorCode));return er(g,d=>At(d.getCodeActions(s),exs(d,c)))}function rxs(s){return IYt.get(Ma(s.fixId,Xs)).getAllCodeActions(s)}function Hz(s,c){return{changes:s,commands:c}}function won(s,c){return{fileName:s,textChanges:c}}function Qd(s,c,g){let d=[],h=xo.ChangeTracker.with(s,_=>Yz(s,c,S=>g(_,S,d)));return Hz(h,d.length===0?void 0:d)}function Yz(s,c,g){for(let d of Ton(s))k(c,d.code)&&g(d)}function Ton({program:s,sourceFile:c,cancellationToken:g}){let d=[...s.getSemanticDiagnostics(c,g),...s.getSyntacticDiagnostics(c,g),...Ent(c,s,g)];return Ly(s.getCompilerOptions())&&d.push(...s.getDeclarationDiagnostics(c,g)),d}var _Yt="addConvertToUnknownForNonOverlappingTypes",Ron=[Z.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];xg({errorCodes:Ron,getCodeActions:function(c){let g=Don(c.sourceFile,c.span.start);if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>Non(h,c.sourceFile,g));return[ug(_Yt,d,Z.Add_unknown_conversion_for_non_overlapping_types,_Yt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[_Yt],getAllCodeActions:s=>Qd(s,Ron,(c,g)=>{let d=Don(g.file,g.start);d&&Non(c,g.file,d)})});function Non(s,c,g){let d=Yd(g)?me.createAsExpression(g.expression,me.createKeywordTypeNode(159)):me.createTypeAssertion(me.createKeywordTypeNode(159),g.expression);s.replaceNode(c,g.expression,d)}function Don(s,c){if(!wo(s))return ji(Jc(s,c),g=>Yd(g)||xF(g))}xg({errorCodes:[Z.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,Z.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,Z.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(c){let{sourceFile:g}=c,d=xo.ChangeTracker.with(c,h=>{let _=me.createExportDeclaration(void 0,!1,me.createNamedExports([]),void 0);h.insertNodeAtEndOfScope(g,g,_)});return[sR("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var yYt="addMissingAsync",kon=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];xg({fixIds:[yYt],errorCodes:kon,getCodeActions:function(c){let{sourceFile:g,errorCode:d,cancellationToken:h,program:_,span:S}=c,R=de(_.getTypeChecker().getDiagnostics(g,h),ixs(S,d)),T=R&&R.relatedInformation&&de(R.relatedInformation,M=>M.code===Z.Did_you_mean_to_mark_this_function_as_async.code),W=Gon(g,T);return W?[xon(c,W,M=>xo.ChangeTracker.with(c,M))]:void 0},getAllCodeActions:s=>{let{sourceFile:c}=s,g=new Set;return Qd(s,kon,(d,h)=>{let _=h.relatedInformation&&de(h.relatedInformation,T=>T.code===Z.Did_you_mean_to_mark_this_function_as_async.code),S=Gon(c,_);return S?xon(s,S,T=>(T(d),[]),g):void 0})}});function xon(s,c,g,d){let h=g(_=>nxs(_,s.sourceFile,c,d));return ug(yYt,h,Z.Add_async_modifier_to_containing_function,yYt,Z.Add_all_missing_async_modifiers)}function nxs(s,c,g,d){if(d&&d.has(rd(g)))return;d?.add(rd(g));let h=me.replaceModifiers(JA(g,!0),me.createNodeArray(me.createModifiersFromModifierFlags(Nx(g)|1024)));s.replaceNode(c,g,h)}function Gon(s,c){if(!c)return;let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":(lA(h)||uu(h)||UA(h)||ih(h))&&Xie(c,Oy(h,s)))}function ixs(s,c){return({start:g,length:d,relatedInformation:h,code:_})=>ws(g)&&ws(d)&&Xie({start:g,length:d},s)&&_===c&&!!h&&jt(h,S=>S.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var bYt="addMissingAwait",Fon=Z.Property_0_does_not_exist_on_type_1.code,Zon=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],EYt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Fon,...Zon];xg({fixIds:[bYt],errorCodes:EYt,getCodeActions:function(c){let{sourceFile:g,errorCode:d,span:h,cancellationToken:_,program:S}=c,R=Lon(g,d,h,_,S);if(!R)return;let T=c.program.getTypeChecker(),W=V=>xo.ChangeTracker.with(c,V);return Hr([Von(c,R,d,T,W),Pon(c,R,d,T,W)])},getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=s.program.getTypeChecker(),_=new Set;return Qd(s,EYt,(S,R)=>{let T=Lon(c,R.code,R,d,g);if(!T)return;let W=V=>(V(S),[]);return Von(s,T,R.code,h,W,_)||Pon(s,T,R.code,h,W,_)})}});function Lon(s,c,g,d,h){let _=snt(s,g);return _&&sxs(s,c,g,d,h)&&Won(_)?_:void 0}function Von(s,c,g,d,h,_){let{sourceFile:S,program:R,cancellationToken:T}=s,W=oxs(c,S,T,R,d);if(W){let V=h(M=>{F(W.initializers,({expression:ee})=>SYt(M,g,S,d,ee,_)),_&&W.needsSecondPassForFixAll&&SYt(M,g,S,d,c,_)});return sR("addMissingAwaitToInitializer",V,W.initializers.length===1?[Z.Add_await_to_initializer_for_0,W.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function Pon(s,c,g,d,h,_){let S=h(R=>SYt(R,g,s.sourceFile,d,c,_));return ug(bYt,S,Z.Add_await,bYt,Z.Fix_all_expressions_possibly_missing_await)}function sxs(s,c,g,d,h){let S=h.getTypeChecker().getDiagnostics(s,d);return jt(S,({start:R,length:T,relatedInformation:W,code:V})=>ws(R)&&ws(T)&&Xie({start:R,length:T},g)&&V===c&&!!W&&jt(W,M=>M.code===Z.Did_you_forget_to_use_await.code))}function oxs(s,c,g,d,h){let _=axs(s,h);if(!_)return;let S=_.isCompleteFix,R;for(let T of _.identifiers){let W=h.getSymbolAtLocation(T);if(!W)continue;let V=Gs(W.valueDeclaration,nc),M=V&&Gs(V.name,Ir),ee=ML(V,244);if(!V||!ee||V.type||!V.initializer||ee.getSourceFile()!==c||Ga(ee,32)||!M||!Won(V.initializer)){S=!1;continue}let re=d.getSemanticDiagnostics(c,g);if(Kp.Core.eachSymbolReferenceInFile(M,h,c,Ie=>T!==Ie&&!cxs(Ie,re,c,h))){S=!1;continue}(R||(R=[])).push({expression:V.initializer,declarationSymbol:W})}return R&&{initializers:R,needsSecondPassForFixAll:!S}}function axs(s,c){if(jo(s.parent)&&Ir(s.parent.expression))return{identifiers:[s.parent.expression],isCompleteFix:!0};if(Ir(s))return{identifiers:[s],isCompleteFix:!0};if(fo(s)){let g,d=!0;for(let h of[s.left,s.right]){let _=c.getTypeAtLocation(h);if(c.getPromisedTypeOfPromise(_)){if(!Ir(h)){d=!1;continue}(g||(g=[])).push(h)}}return g&&{identifiers:g,isCompleteFix:d}}}function cxs(s,c,g,d){let h=jo(s.parent)?s.parent.name:fo(s.parent)?s.parent:s,_=de(c,S=>S.start===h.getStart(g)&&S.start+S.length===h.getEnd());return _&&k(EYt,_.code)||d.getTypeAtLocation(h).flags&1}function Won(s){return s.flags&65536||!!ji(s,c=>c.parent&&lA(c.parent)&&c.parent.body===c||$u(c)&&(c.parent.kind===263||c.parent.kind===219||c.parent.kind===220||c.parent.kind===175))}function SYt(s,c,g,d,h,_){if(iEe(h.parent)&&!h.parent.awaitModifier){let S=d.getTypeAtLocation(h),R=d.getAnyAsyncIterableType();if(R&&d.isTypeAssignableTo(S,R)){let T=h.parent;s.replaceNode(g,T,me.updateForOfStatement(T,me.createToken(135),T.initializer,T.expression,T.statement));return}}if(fo(h))for(let S of[h.left,h.right]){if(_&&Ir(S)){let W=d.getSymbolAtLocation(S);if(W&&_.has(kg(W)))continue}let R=d.getTypeAtLocation(S),T=d.getPromisedTypeOfPromise(R)?me.createAwaitExpression(S):S;s.replaceNode(g,S,T)}else if(c===Fon&&jo(h.parent)){if(_&&Ir(h.parent.expression)){let S=d.getSymbolAtLocation(h.parent.expression);if(S&&_.has(kg(S)))return}s.replaceNode(g,h.parent.expression,me.createParenthesizedExpression(me.createAwaitExpression(h.parent.expression))),Oon(s,h.parent.expression,g)}else if(k(Zon,c)&&av(h.parent)){if(_&&Ir(h)){let S=d.getSymbolAtLocation(h);if(S&&_.has(kg(S)))return}s.replaceNode(g,h,me.createParenthesizedExpression(me.createAwaitExpression(h))),Oon(s,h,g)}else{if(_&&nc(h.parent)&&Ir(h.parent.name)){let S=d.getSymbolAtLocation(h.parent.name);if(S&&!Ar(_,kg(S)))return}s.replaceNode(g,h,me.createAwaitExpression(h))}}function Oon(s,c,g){let d=Gm(c.pos,g);d&&nPe(d.end,d.parent,g)&&s.insertText(g,c.getStart(g),";")}var vYt="addMissingConst",Mon=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];xg({errorCodes:Mon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Hon(d,c.sourceFile,c.span.start,c.program));if(g.length>0)return[ug(vYt,g,Z.Add_const_to_unresolved_variable,vYt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[vYt],getAllCodeActions:s=>{let c=new Set;return Qd(s,Mon,(g,d)=>Hon(g,d.file,d.start,s.program,c))}});function Hon(s,c,g,d,h){let _=Jc(c,g),S=ji(_,W=>DL(W.parent)?W.parent.initializer===W:lxs(W)?!1:"quit");if(S)return tit(s,S,c,h);let R=_.parent;if(fo(R)&&R.operatorToken.kind===64&&VC(R.parent))return tit(s,_,c,h);if(OI(R)){let W=d.getTypeChecker();return ue(R.elements,V=>uxs(V,W))?tit(s,R,c,h):void 0}let T=ji(_,W=>VC(W.parent)?!0:gxs(W)?!1:"quit");if(T){let W=d.getTypeChecker();return Yon(T,W)?tit(s,T,c,h):void 0}}function tit(s,c,g,d){(!d||Ar(d,c))&&s.insertModifierBefore(g,87,c)}function lxs(s){switch(s.kind){case 80:case 210:case 211:case 304:case 305:return!0;default:return!1}}function uxs(s,c){let g=Ir(s)?s:Jm(s,!0)&&Ir(s.left)?s.left:void 0;return!!g&&!c.getSymbolAtLocation(g)}function gxs(s){switch(s.kind){case 80:case 227:case 28:return!0;default:return!1}}function Yon(s,c){return fo(s)?s.operatorToken.kind===28?ue([s.left,s.right],g=>Yon(g,c)):s.operatorToken.kind===64&&Ir(s.left)&&!c.getSymbolAtLocation(s.left):!1}var BYt="addMissingDeclareProperty",Qon=[Z.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];xg({errorCodes:Qon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Xon(d,c.sourceFile,c.span.start));if(g.length>0)return[ug(BYt,g,Z.Prefix_with_declare,BYt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[BYt],getAllCodeActions:s=>{let c=new Set;return Qd(s,Qon,(g,d)=>Xon(g,d.file,d.start,c))}});function Xon(s,c,g,d){let h=Jc(c,g);if(!Ir(h))return;let _=h.parent;_.kind===173&&(!d||Ar(d,_))&&s.insertModifierBefore(c,138,_)}var wYt="addMissingInvocationForDecorator",Jon=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];xg({errorCodes:Jon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Uon(d,c.sourceFile,c.span.start));return[ug(wYt,g,Z.Call_decorator_expression,wYt,Z.Add_to_all_uncalled_decorators)]},fixIds:[wYt],getAllCodeActions:s=>Qd(s,Jon,(c,g)=>Uon(c,g.file,g.start))});function Uon(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createCallExpression(h.expression,void 0,void 0);s.replaceNode(c,h.expression,_)}var TYt="addMissingResolutionModeImportAttribute",Kon=[Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code,Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code];xg({errorCodes:Kon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>jon(d,c.sourceFile,c.span.start,c.program,c.host,c.preferences));return[ug(TYt,g,Z.Add_resolution_mode_import_attribute,TYt,Z.Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it)]},fixIds:[TYt],getAllCodeActions:s=>Qd(s,Kon,(c,g)=>jon(c,g.file,g.start,s.program,s.host,s.preferences))});function jon(s,c,g,d,h,_){var S,R,T;let W=Jc(c,g),V=ji(W,Hp(Mf,Um));pe.assert(!!V,"Expected position to be owned by an ImportDeclaration or ImportType.");let M=_1(c,_)===0,ee=ZY(V),re=!ee||((S=BU(ee.text,c.fileName,d.getCompilerOptions(),h,d.getModuleResolutionCache(),void 0,99).resolvedModule)==null?void 0:S.resolvedFileName)===((T=(R=d.getResolvedModuleFromModuleSpecifier(ee,c))==null?void 0:R.resolvedModule)==null?void 0:T.resolvedFileName),ge=V.attributes?me.updateImportAttributes(V.attributes,me.createNodeArray([...V.attributes.elements,me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))],V.attributes.elements.hasTrailingComma),V.attributes.multiLine):me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))]));V.kind===273?s.replaceNode(c,V,me.updateImportDeclaration(V,V.modifiers,V.importClause,V.moduleSpecifier,ge)):s.replaceNode(c,V,me.updateImportTypeNode(V,V.argument,ge,V.qualifier,V.typeArguments))}var RYt="addNameToNamelessParameter",zon=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];xg({errorCodes:zon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>qon(d,c.sourceFile,c.span.start));return[ug(RYt,g,Z.Add_parameter_name,RYt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[RYt],getAllCodeActions:s=>Qd(s,zon,(c,g)=>qon(c,g.file,g.start))});function qon(s,c,g){let d=Jc(c,g),h=d.parent;if(!Si(h))return pe.fail("Tried to add a parameter name to a non-parameter: "+pe.formatSyntaxKind(d.kind));let _=h.parent.parameters.indexOf(h);pe.assert(!h.type,"Tried to add a parameter name to a parameter that already had one."),pe.assert(_>-1,"Parameter not found in parent parameter list.");let S=h.name.getEnd(),R=me.createTypeReferenceNode(h.name,void 0),T=$on(c,h);for(;T;)R=me.createArrayTypeNode(R),S=T.getEnd(),T=$on(c,T);let W=me.createParameterDeclaration(h.modifiers,h.dotDotDotToken,"arg"+_,h.questionToken,h.dotDotDotToken&&!kF(R)?me.createArrayTypeNode(R):R,h.initializer);s.replaceRange(c,Gy(h.getStart(c),S),W)}function $on(s,c){let g=fQ(c.name,c.parent,s);if(g&&g.kind===23&&p2(g.parent)&&Si(g.parent.parent))return g.parent.parent}var ean="addOptionalPropertyUndefined",Axs=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code];xg({errorCodes:Axs,getCodeActions(s){let c=s.program.getTypeChecker(),g=dxs(s.sourceFile,s.span,c);if(!g.length)return;let d=xo.ChangeTracker.with(s,h=>fxs(h,g));return[sR(ean,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[ean]});function dxs(s,c,g){var d,h;let _=tan(snt(s,c),g);if(!_)return E;let{source:S,target:R}=_,T=pxs(S,R,g)?g.getTypeAtLocation(R.expression):g.getTypeAtLocation(R);return(h=(d=T.symbol)==null?void 0:d.declarations)!=null&&h.some(W=>ms(W).fileName.match(/\.d\.ts$/))?E:g.getExactOptionalProperties(T)}function pxs(s,c,g){return jo(c)&&!!g.getExactOptionalProperties(g.getTypeAtLocation(c.expression)).length&&g.getTypeAtLocation(s)===g.getUndefinedType()}function tan(s,c){var g;if(s){if(fo(s.parent)&&s.parent.operatorToken.kind===64)return{source:s.parent.right,target:s.parent.left};if(nc(s.parent)&&s.parent.initializer)return{source:s.parent.initializer,target:s.parent.name};if(Zl(s.parent)){let d=c.getSymbolAtLocation(s.parent.expression);if(!d?.valueDeclaration||!lP(d.valueDeclaration.kind)||!un(s))return;let h=s.parent.arguments.indexOf(s);if(h===-1)return;let _=d.valueDeclaration.parameters[h].name;if(Ir(_))return{source:s,target:_}}else if(fm(s.parent)&&Ir(s.parent.name)||a0(s.parent)){let d=tan(s.parent.parent,c);if(!d)return;let h=c.getPropertyOfType(c.getTypeAtLocation(d.target),s.parent.name.text),_=(g=h?.declarations)==null?void 0:g[0];return _?{source:fm(s.parent)?s.parent.initializer:s.parent.name,target:_}:void 0}}else return}function fxs(s,c){for(let g of c){let d=g.valueDeclaration;if(d&&(ss(d)||pi(d))&&d.type){let h=me.createUnionTypeNode([...d.type.kind===193?d.type.types:[d.type],me.createTypeReferenceNode("undefined")]);s.replaceNode(d.getSourceFile(),d.type,h)}}}var NYt="annotateWithTypeFromJSDoc",ran=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];xg({errorCodes:ran,getCodeActions(s){let c=nan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,d=>oan(d,s.sourceFile,c));return[ug(NYt,g,Z.Annotate_with_type_from_JSDoc,NYt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[NYt],getAllCodeActions:s=>Qd(s,ran,(c,g)=>{let d=nan(g.file,g.start);d&&oan(c,g.file,d)})});function nan(s,c){let g=Jc(s,c);return Gs(Si(g.parent)?g.parent.parent:g.parent,ian)}function ian(s){return Ixs(s)&&san(s)}function san(s){return kd(s)?s.parameters.some(san)||!s.type&&!!AJ(s):!s.type&&!!eN(s)}function oan(s,c,g){if(kd(g)&&(AJ(g)||g.parameters.some(d=>!!eN(d)))){if(!g.typeParameters){let h=uAe(g);h.length&&s.insertTypeParameters(c,g,h)}let d=lA(g)&&!qd(g,21,c);d&&s.insertNodeBefore(c,ma(g.parameters),me.createToken(21));for(let h of g.parameters)if(!h.type){let _=eN(h);_&&s.tryInsertTypeAnnotation(c,h,Mr(_,_Q,uc))}if(d&&s.insertNodeAfter(c,Ei(g.parameters),me.createToken(22)),!g.type){let h=AJ(g);h&&s.tryInsertTypeAnnotation(c,g,Mr(h,_Q,uc))}}else{let d=pe.checkDefined(eN(g),"A JSDocType for this declaration should exist");pe.assert(!g.type,"The JSDocType decl should have a type"),s.tryInsertTypeAnnotation(c,g,Mr(d,_Q,uc))}}function Ixs(s){return kd(s)||s.kind===261||s.kind===172||s.kind===173}function _Q(s){switch(s.kind){case 313:case 314:return me.createTypeReferenceNode("any",E);case 317:return mxs(s);case 316:return _Q(s.type);case 315:return Cxs(s);case 319:return _xs(s);case 318:return yxs(s);case 184:return Exs(s);case 323:return hxs(s);default:let c=_s(s,_Q,void 0);return ti(c,1),c}}function hxs(s){let c=me.createTypeLiteralNode(At(s.jsDocPropertyTags,g=>me.createPropertySignature(void 0,Ir(g.name)?g.name:g.name.right,jne(g)?me.createToken(58):void 0,g.typeExpression&&Mr(g.typeExpression.type,_Q,uc)||me.createKeywordTypeNode(133))));return ti(c,1),c}function mxs(s){return me.createUnionTypeNode([Mr(s.type,_Q,uc),me.createTypeReferenceNode("undefined",E)])}function Cxs(s){return me.createUnionTypeNode([Mr(s.type,_Q,uc),me.createTypeReferenceNode("null",E)])}function _xs(s){return me.createArrayTypeNode(Mr(s.type,_Q,uc))}function yxs(s){return me.createFunctionTypeNode(E,s.parameters.map(bxs),s.type??me.createKeywordTypeNode(133))}function bxs(s){let c=s.parent.parameters.indexOf(s),g=s.type.kind===319&&c===s.parent.parameters.length-1,d=s.name||(g?"rest":"arg"+c),h=g?me.createToken(26):s.dotDotDotToken;return me.createParameterDeclaration(s.modifiers,h,d,s.questionToken,Mr(s.type,_Q,uc),s.initializer)}function Exs(s){let c=s.typeName,g=s.typeArguments;if(Ir(s.typeName)){if(Uge(s))return Sxs(s);let d=s.typeName.text;switch(s.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=me.createIdentifier(d),(d==="Array"||d==="Promise")&&!s.typeArguments?g=me.createNodeArray([me.createTypeReferenceNode("any",E)]):g=Ws(s.typeArguments,_Q,uc)}return me.createTypeReferenceNode(c,g)}function Sxs(s){let c=me.createParameterDeclaration(void 0,void 0,s.typeArguments[0].kind===150?"n":"s",void 0,me.createTypeReferenceNode(s.typeArguments[0].kind===150?"number":"string",[]),void 0),g=me.createTypeLiteralNode([me.createIndexSignature(void 0,[c],s.typeArguments[1])]);return ti(g,1),g}var DYt="convertFunctionToEs6Class",aan=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];xg({errorCodes:aan,getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>can(g,s.sourceFile,s.span.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()));return[ug(DYt,c,Z.Convert_function_to_an_ES2015_class,DYt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[DYt],getAllCodeActions:s=>Qd(s,aan,(c,g)=>can(c,g.file,g.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()))});function can(s,c,g,d,h,_){let S=d.getSymbolAtLocation(Jc(c,g));if(!S||!S.valueDeclaration||!(S.flags&19))return;let R=S.valueDeclaration;if(ih(R)||UA(R))s.replaceNode(c,R,V(R));else if(nc(R)){let M=W(R);if(!M)return;let ee=R.parent.parent;u_(R.parent)&&R.parent.declarations.length>1?(s.delete(c,R),s.insertNodeAfter(c,ee,M)):s.replaceNode(c,ee,M)}function T(M){let ee=[];return M.exports&&M.exports.forEach(Ie=>{if(Ie.name==="prototype"&&Ie.declarations){let _e=Ie.declarations[0];if(Ie.declarations.length===1&&jo(_e)&&fo(_e.parent)&&_e.parent.operatorToken.kind===64&&og(_e.parent.right)){let Ee=_e.parent.right;ge(Ee.symbol,void 0,ee)}}else ge(Ie,[me.createToken(126)],ee)}),M.members&&M.members.forEach((Ie,_e)=>{var Ee,Ne,Te,Ze;if(_e==="constructor"&&Ie.valueDeclaration){let We=(Ze=(Te=(Ne=(Ee=M.exports)==null?void 0:Ee.get("prototype"))==null?void 0:Ne.declarations)==null?void 0:Te[0])==null?void 0:Ze.parent;We&&fo(We)&&og(We.right)&&jt(We.right.properties,nit)||s.delete(c,Ie.valueDeclaration.parent);return}ge(Ie,void 0,ee)}),ee;function re(Ie,_e){return _p(Ie)?jo(Ie)&&nit(Ie)?!0:bu(_e):ue(Ie.properties,Ee=>!!(uu(Ee)||fJ(Ee)||fm(Ee)&&UA(Ee.initializer)&&Ee.name||nit(Ee)))}function ge(Ie,_e,Ee){if(!(Ie.flags&8192)&&!(Ie.flags&4096))return;let Ne=Ie.valueDeclaration,Te=Ne.parent,Ze=Te.right;if(!re(Ne,Ze)||jt(Ee,Tt=>{let ot=Il(Tt);return!!(ot&&Ir(ot)&&Vo(ot)===nf(Ie))}))return;let We=Te.parent&&Te.parent.kind===245?Te.parent:Te;if(s.delete(c,We),!Ze){Ee.push(me.createPropertyDeclaration(_e,Ie.name,void 0,void 0,void 0));return}if(_p(Ne)&&(UA(Ze)||lA(Ze))){let Tt=_1(c,h),ot=vxs(Ne,_,Tt);ot&&Ue(Ee,Ze,ot);return}else if(og(Ze)){F(Ze.properties,Tt=>{(uu(Tt)||fJ(Tt))&&Ee.push(Tt),fm(Tt)&&UA(Tt.initializer)&&Ue(Ee,Tt.initializer,Tt.name),nit(Tt)});return}else{if(n0(c)||!jo(Ne))return;let Tt=me.createPropertyDeclaration(_e,Ne.name,void 0,void 0,Ze);Uie(Te.parent,Tt,c),Ee.push(Tt);return}function Ue(Tt,ot,Qe){return UA(ot)?$e(Tt,ot,Qe):Ye(Tt,ot,Qe)}function $e(Tt,ot,Qe){let mt=Nn(_e,rit(ot,134)),ht=me.createMethodDeclaration(mt,void 0,Qe,void 0,void 0,ot.parameters,void 0,ot.body);Uie(Te,ht,c),Tt.push(ht)}function Ye(Tt,ot,Qe){let mt=ot.body,ht;mt.kind===242?ht=mt:ht=me.createBlock([me.createReturnStatement(mt)]);let _t=Nn(_e,rit(ot,134)),Rt=me.createMethodDeclaration(_t,void 0,Qe,void 0,void 0,ot.parameters,void 0,ht);Uie(Te,Rt,c),Tt.push(Rt)}}}function W(M){let ee=M.initializer;if(!ee||!UA(ee)||!Ir(M.name))return;let re=T(M.symbol);ee.body&&re.unshift(me.createConstructorDeclaration(void 0,ee.parameters,ee.body));let ge=rit(M.parent.parent,95);return me.createClassDeclaration(ge,M.name,void 0,void 0,re)}function V(M){let ee=T(S);M.body&&ee.unshift(me.createConstructorDeclaration(void 0,M.parameters,M.body));let re=rit(M,95);return me.createClassDeclaration(re,M.name,void 0,void 0,ee)}}function rit(s,c){return LB(s)?Me(s.modifiers,g=>g.kind===c):void 0}function nit(s){return s.name?!!(Ir(s.name)&&s.name.text==="constructor"):!1}function vxs(s,c,g){if(jo(s))return s.name;let d=s.argumentExpression;if(mC(d))return d;if(mA(d))return Uh(d.text,Mg(c))?me.createIdentifier(d.text):GP(d)?me.createStringLiteral(d.text,g===0):d}var kYt="convertToAsyncFunction",lan=[Z.This_may_be_converted_to_an_async_function.code],iit=!0;xg({errorCodes:lan,getCodeActions(s){iit=!0;let c=xo.ChangeTracker.with(s,g=>uan(g,s.sourceFile,s.span.start,s.program.getTypeChecker()));return iit?[ug(kYt,c,Z.Convert_to_async_function,kYt,Z.Convert_all_to_async_functions)]:[]},fixIds:[kYt],getAllCodeActions:s=>Qd(s,lan,(c,g)=>uan(c,g.file,g.start,s.program.getTypeChecker()))});function uan(s,c,g,d){let h=Jc(c,g),_;if(Ir(h)&&nc(h.parent)&&h.parent.initializer&&kd(h.parent.initializer)?_=h.parent.initializer:_=Gs(A1(Jc(c,g)),Bnt),!_)return;let S=new Map,R=wo(_),T=wxs(_,d),W=Txs(_,d,S);if(!Snt(W,d))return;let V=W.body&&$u(W.body)?Bxs(W.body,d):E,M={checker:d,synthNamesMap:S,setOfExpressionsToReturn:T,isInJSFile:R};if(!V.length)return;let ee=Yu(c.text,Av(_).pos);s.insertModifierAt(c,ee,134,{suffix:" "});for(let re of V)if(Lu(re,function ge(Ie){if(Zl(Ie)){let _e=tse(Ie,Ie,M,!1);if(Qz())return!0;s.replaceNodeWithNodes(c,re,_e)}else if(!bu(Ie)&&(Lu(Ie,ge),Qz()))return!0}),Qz())return}function Bxs(s,c){let g=[];return yF(s,d=>{hPe(d,c)&&g.push(d)}),g}function wxs(s,c){if(!s.body)return new Set;let g=new Set;return Lu(s.body,function d(h){G1e(h,c,"then")?(g.add(rd(h)),F(h.arguments,d)):G1e(h,c,"catch")||G1e(h,c,"finally")?(g.add(rd(h)),Lu(h,d)):Aan(h,c)?g.add(rd(h)):Lu(h,d)}),g}function G1e(s,c,g){if(!Zl(s))return!1;let h=s1e(s,g)&&c.getTypeAtLocation(s);return!!(h&&c.getPromisedTypeOfPromise(h))}function gan(s,c){return(la(s)&4)!==0&&s.target===c}function sit(s,c,g){if(s.expression.name.escapedText==="finally")return;let d=g.getTypeAtLocation(s.expression.expression);if(gan(d,g.getPromiseType())||gan(d,g.getPromiseLikeType()))if(s.expression.name.escapedText==="then"){if(c===Cg(s.arguments,0))return Cg(s.typeArguments,0);if(c===Cg(s.arguments,1))return Cg(s.typeArguments,1)}else return Cg(s.typeArguments,0)}function Aan(s,c){return un(s)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(s)):!1}function Txs(s,c,g){let d=new Map,h=dl();return Lu(s,function _(S){if(!Ir(S)){Lu(S,_);return}let R=c.getSymbolAtLocation(S);if(R){let T=c.getTypeAtLocation(S),W=man(T,c),V=kg(R).toString();if(W&&!Si(S.parent)&&!kd(S.parent)&&!g.has(V)){let M=Nc(W.parameters),ee=M?.valueDeclaration&&Si(M.valueDeclaration)&&Gs(M.valueDeclaration.name,Ir)||me.createUniqueName("result",16),re=dan(ee,h);g.set(V,re),h.add(ee.text,R)}else if(S.parent&&(Si(S.parent)||nc(S.parent)||hg(S.parent))){let M=S.text,ee=h.get(M);if(ee&&ee.some(re=>re!==R)){let re=dan(S,h);d.set(V,re.identifier),g.set(V,re),h.add(M,R)}else{let re=JA(S);g.set(V,ipe(re)),h.add(M,R)}}}}),rie(s,!0,_=>{if(hg(_)&&Ir(_.name)&&Km(_.parent)){let S=c.getSymbolAtLocation(_.name),R=S&&d.get(String(kg(S)));if(R&&R.text!==(_.name||_.propertyName).getText())return me.createBindingElement(_.dotDotDotToken,_.propertyName||_.name,R,_.initializer)}else if(Ir(_)){let S=c.getSymbolAtLocation(_),R=S&&d.get(String(kg(S)));if(R)return me.createIdentifier(R.text)}})}function dan(s,c){let g=(c.get(s.text)||E).length,d=g===0?s:me.createIdentifier(s.text+"_"+g);return ipe(d)}function Qz(){return!iit}function t5(){return iit=!1,E}function tse(s,c,g,d,h){if(G1e(c,g.checker,"then"))return Dxs(c,Cg(c.arguments,0),Cg(c.arguments,1),g,d,h);if(G1e(c,g.checker,"catch"))return Ian(c,Cg(c.arguments,0),g,d,h);if(G1e(c,g.checker,"finally"))return Nxs(c,Cg(c.arguments,0),g,d,h);if(jo(c))return tse(s,c.expression,g,d,h);let _=g.checker.getTypeAtLocation(c);return _&&g.checker.getPromisedTypeOfPromise(_)?(pe.assertNode(Dd(c).parent,jo),kxs(s,c,g,d,h)):t5()}function oit({checker:s},c){if(c.kind===106)return!0;if(Ir(c)&&!kp(c)&&Vo(c)==="undefined"){let g=s.getSymbolAtLocation(c);return!g||s.isUndefinedSymbol(g)}return!1}function Rxs(s){let c=me.createUniqueName(s.identifier.text,16);return ipe(c)}function pan(s,c,g){let d;return g&&!Z1e(s,c)&&(F1e(g)?(d=g,c.synthNamesMap.forEach((h,_)=>{if(h.identifier.text===g.identifier.text){let S=Rxs(g);c.synthNamesMap.set(_,S)}})):d=ipe(me.createUniqueName("result",16),g.types),ZYt(d)),d}function fan(s,c,g,d,h){let _=[],S;if(d&&!Z1e(s,c)){S=JA(ZYt(d));let R=d.types,T=c.checker.getUnionType(R,2),W=c.isInJSFile?void 0:c.checker.typeToTypeNode(T,void 0,void 0),V=[me.createVariableDeclaration(S,void 0,W)],M=me.createVariableStatement(void 0,me.createVariableDeclarationList(V,1));_.push(M)}return _.push(g),h&&S&&Fxs(h)&&_.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(ban(h)),void 0,void 0,S)],2))),_}function Nxs(s,c,g,d,h){if(!c||oit(g,c))return tse(s,s.expression.expression,g,d,h);let _=pan(s,g,h),S=tse(s,s.expression.expression,g,!0,_);if(Qz())return t5();let R=GYt(c,d,void 0,void 0,s,g);if(Qz())return t5();let T=me.createBlock(S),W=me.createBlock(R),V=me.createTryStatement(T,void 0,W);return fan(s,g,V,_,h)}function Ian(s,c,g,d,h){if(!c||oit(g,c))return tse(s,s.expression.expression,g,d,h);let _=_an(c,g),S=pan(s,g,h),R=tse(s,s.expression.expression,g,!0,S);if(Qz())return t5();let T=GYt(c,d,S,_,s,g);if(Qz())return t5();let W=me.createBlock(R),V=me.createCatchClause(_&&JA(GPe(_)),me.createBlock(T)),M=me.createTryStatement(W,V,void 0);return fan(s,g,M,S,h)}function Dxs(s,c,g,d,h,_){if(!c||oit(d,c))return Ian(s,g,d,h,_);if(g&&!oit(d,g))return t5();let S=_an(c,d),R=tse(s.expression.expression,s.expression.expression,d,!0,S);if(Qz())return t5();let T=GYt(c,h,_,S,s,d);return Qz()?t5():Nn(R,T)}function kxs(s,c,g,d,h){if(Z1e(s,g)){let _=JA(c);return d&&(_=me.createAwaitExpression(_)),[me.createReturnStatement(_)]}return ait(h,me.createAwaitExpression(c),void 0)}function ait(s,c,g){return!s||yan(s)?[me.createExpressionStatement(c)]:F1e(s)&&s.hasBeenDeclared?[me.createExpressionStatement(me.createAssignment(JA(FYt(s)),c))]:[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(GPe(s)),void 0,g,c)],2))]}function xYt(s,c){if(c&&s){let g=me.createUniqueName("result",16);return[...ait(ipe(g),s,c),me.createReturnStatement(g)]}return[me.createReturnStatement(s)]}function GYt(s,c,g,d,h,_){var S;switch(s.kind){case 106:break;case 212:case 80:if(!d)break;let R=me.createCallExpression(JA(s),void 0,F1e(d)?[FYt(d)]:[]);if(Z1e(h,_))return xYt(R,sit(h,s,_.checker));let T=_.checker.getTypeAtLocation(s),W=_.checker.getSignaturesOfType(T,0);if(!W.length)return t5();let V=W[0].getReturnType(),M=ait(g,me.createAwaitExpression(R),sit(h,s,_.checker));return g&&g.types.push(_.checker.getAwaitedType(V)||V),M;case 219:case 220:{let ee=s.body,re=(S=man(_.checker.getTypeAtLocation(s),_.checker))==null?void 0:S.getReturnType();if($u(ee)){let ge=[],Ie=!1;for(let _e of ee.statements)if(I2(_e))if(Ie=!0,hPe(_e,_.checker))ge=ge.concat(Can(_,_e,c,g));else{let Ee=re&&_e.expression?han(_.checker,re,_e.expression):_e.expression;ge.push(...xYt(Ee,sit(h,s,_.checker)))}else{if(c&&yF(_e,Tf))return t5();ge.push(_e)}return Z1e(h,_)?ge.map(_e=>JA(_e)):xxs(ge,g,_,Ie)}else{let ge=vnt(ee,_.checker)?Can(_,me.createReturnStatement(ee),c,g):E;if(ge.length>0)return ge;if(re){let Ie=han(_.checker,re,ee);if(Z1e(h,_))return xYt(Ie,sit(h,s,_.checker));{let _e=ait(g,Ie,void 0);return g&&g.types.push(_.checker.getAwaitedType(re)||re),_e}}else return t5()}}default:return t5()}return E}function han(s,c,g){let d=JA(g);return s.getPromisedTypeOfPromise(c)?me.createAwaitExpression(d):d}function man(s,c){let g=c.getSignaturesOfType(s,0);return li(g)}function xxs(s,c,g,d){let h=[];for(let _ of s)if(I2(_)){if(_.expression){let S=Aan(_.expression,g.checker)?me.createAwaitExpression(_.expression):_.expression;c===void 0?h.push(me.createExpressionStatement(S)):F1e(c)&&c.hasBeenDeclared?h.push(me.createExpressionStatement(me.createAssignment(FYt(c),S))):h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(GPe(c),void 0,void 0,S)],2)))}}else h.push(JA(_));return!d&&c!==void 0&&h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(GPe(c),void 0,void 0,me.createIdentifier("undefined"))],2))),h}function Can(s,c,g,d){let h=[];return Lu(c,function _(S){if(Zl(S)){let R=tse(S,S,s,g,d);if(h=h.concat(R),h.length>0)return}else bu(S)||Lu(S,_)}),h}function _an(s,c){let g=[],d;if(kd(s)){if(s.parameters.length>0){let T=s.parameters[0].name;d=h(T)}}else Ir(s)?d=_(s):jo(s)&&Ir(s.name)&&(d=_(s.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function h(T){if(Ir(T))return _(T);let W=er(T.elements,V=>yp(V)?[]:[h(V.name)]);return Gxs(T,W)}function _(T){let W=R(T),V=S(W);return V&&c.synthNamesMap.get(kg(V).toString())||ipe(T,g)}function S(T){var W;return((W=Gs(T,mE))==null?void 0:W.symbol)??c.checker.getSymbolAtLocation(T)}function R(T){return T.original?T.original:T}}function yan(s){return s?F1e(s)?!s.identifier.text:ue(s.elements,yan):!0}function ipe(s,c=[]){return{kind:0,identifier:s,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function Gxs(s,c=E,g=[]){return{kind:1,bindingPattern:s,elements:c,types:g}}function FYt(s){return s.hasBeenReferenced=!0,s.identifier}function GPe(s){return F1e(s)?ZYt(s):ban(s)}function ban(s){for(let c of s.elements)GPe(c);return s.bindingPattern}function ZYt(s){return s.hasBeenDeclared=!0,s.identifier}function F1e(s){return s.kind===0}function Fxs(s){return s.kind===1}function Z1e(s,c){return!!s.original&&c.setOfExpressionsToReturn.has(rd(s.original))}xg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(s){let{sourceFile:c,program:g,preferences:d}=s,h=xo.ChangeTracker.with(s,_=>{if(Lxs(c,g.getTypeChecker(),_,Mg(g.getCompilerOptions()),_1(c,d)))for(let R of g.getSourceFiles())Zxs(R,c,g,_,_1(R,d))});return[sR("convertToEsModule",h,Z.Convert_to_ES_module)]}});function Zxs(s,c,g,d,h){var _;for(let S of s.imports){let R=(_=g.getResolvedModuleFromModuleSpecifier(S,s))==null?void 0:_.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let T=v7(S);switch(T.kind){case 272:d.replaceNode(s,T,QP(T.name,void 0,S,h));break;case 214:ay(T,!1)&&d.replaceNode(s,T,me.createPropertyAccessExpression(JA(T),"default"));break}}}function Lxs(s,c,g,d,h){let _={original:jxs(s),additional:new Set},S=Vxs(s,c,_);Pxs(s,S,g);let R=!1,T;for(let W of Me(s.statements,Ch)){let V=San(s,W,g,c,_,d,h);V&&a7(V,T??(T=new Map))}for(let W of Me(s.statements,V=>!Ch(V))){let V=Wxs(s,W,c,g,_,d,S,T,h);R=R||V}return T?.forEach((W,V)=>{g.replaceNode(s,V,W)}),R}function Vxs(s,c,g){let d=new Map;return Ean(s,h=>{let{text:_}=h.name;!d.has(_)&&(kye(h.name)||c.resolveName(_,h,111551,!0))&&d.set(_,cit(`_${_}`,g))}),d}function Pxs(s,c,g){Ean(s,(d,h)=>{if(h)return;let{text:_}=d.name;g.replaceNode(s,d,me.createIdentifier(c.get(_)||_))})}function Ean(s,c){s.forEachChild(function g(d){if(jo(d)&&cQ(s,d.expression)&&Ir(d.name)){let{parent:h}=d;c(d,fo(h)&&h.left===d&&h.operatorToken.kind===64)}d.forEachChild(g)})}function Wxs(s,c,g,d,h,_,S,R,T){switch(c.kind){case 244:return San(s,c,d,g,h,_,T),!1;case 245:{let{expression:W}=c;switch(W.kind){case 214:return ay(W,!0)&&d.replaceNode(s,c,QP(void 0,void 0,W.arguments[0],T)),!1;case 227:{let{operatorToken:V}=W;return V.kind===64&&Mxs(s,g,W,d,S,R)}}}default:return!1}}function San(s,c,g,d,h,_,S){let{declarationList:R}=c,T=!1,W=At(R.declarations,V=>{let{name:M,initializer:ee}=V;if(ee){if(cQ(s,ee))return T=!0,spe([]);if(ay(ee,!0))return T=!0,Uxs(M,ee.arguments[0],d,h,_,S);if(jo(ee)&&ay(ee.expression,!0))return T=!0,Oxs(M,ee.name.text,ee.expression.arguments[0],h,S)}return spe([me.createVariableStatement(void 0,me.createVariableDeclarationList([V],R.flags))])});if(T){g.replaceNodeWithNodes(s,c,er(W,M=>M.newImports));let V;return F(W,M=>{M.useSitesToUnqualify&&a7(M.useSitesToUnqualify,V??(V=new Map))}),V}}function Oxs(s,c,g,d,h){switch(s.kind){case 207:case 208:{let _=cit(c,d);return spe([Tan(_,c,g,h),lit(void 0,s,me.createIdentifier(_))])}case 80:return spe([Tan(s.text,c,g,h)]);default:return pe.assertNever(s,`Convert to ES module got invalid syntax form ${s.kind}`)}}function Mxs(s,c,g,d,h,_){let{left:S,right:R}=g;if(!jo(S))return!1;if(cQ(s,S))if(cQ(s,R))d.delete(s,g.parent);else{let T=og(R)?Hxs(R,_):ay(R,!0)?Qxs(R.arguments[0],c):void 0;return T?(d.replaceNodeWithNodes(s,g.parent,T[0]),T[1]):(d.replaceRangeWithText(s,Gy(S.getStart(s),R.pos),"export default"),!0)}else cQ(s,S.expression)&&Yxs(s,g,d,h);return!1}function Hxs(s,c){let g=qt(s.properties,d=>{switch(d.kind){case 178:case 179:case 305:case 306:return;case 304:return Ir(d.name)?Jxs(d.name.text,d.initializer,c):void 0;case 175:return Ir(d.name)?wan(d.name.text,[me.createToken(95)],d,c):void 0;default:pe.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return g&&[g,!1]}function Yxs(s,c,g,d){let{text:h}=c.left.name,_=d.get(h);if(_!==void 0){let S=[lit(void 0,_,c.right),PYt([me.createExportSpecifier(!1,_,h)])];g.replaceNodeWithNodes(s,c.parent,S)}else Xxs(c,s,g)}function Qxs(s,c){let g=s.text,d=c.getSymbolAtLocation(s),h=d?d.exports:N;return h.has("export=")?[[LYt(g)],!0]:h.has("default")?h.size>1?[[van(g),LYt(g)],!0]:[[LYt(g)],!0]:[[van(g)],!1]}function van(s){return PYt(void 0,s)}function LYt(s){return PYt([me.createExportSpecifier(!1,void 0,"default")],s)}function Xxs({left:s,right:c,parent:g},d,h){let _=s.name.text;if((UA(c)||lA(c)||vd(c))&&(!c.name||c.name.text===_)){h.replaceRange(d,{pos:s.getStart(d),end:c.getStart(d)},me.createToken(95),{suffix:" "}),c.name||h.insertName(d,c,_);let S=qd(g,27,d);S&&h.delete(d,S)}else h.replaceNodeRangeWithNodes(d,s.expression,qd(s,25,d),[me.createToken(95),me.createToken(87)],{joiner:" ",suffix:" "})}function Jxs(s,c,g){let d=[me.createToken(95)];switch(c.kind){case 219:{let{name:_}=c;if(_&&_.text!==s)return h()}case 220:return wan(s,d,c,g);case 232:return qxs(s,d,c,g);default:return h()}function h(){return lit(d,me.createIdentifier(s),VYt(c,g))}}function VYt(s,c){if(!c||!jt(Do(c.keys()),d=>cy(s,d)))return s;return Ki(s)?qAe(s,!0,g):rie(s,!0,g);function g(d){if(d.kind===212){let h=c.get(d);return c.delete(d),h}}}function Uxs(s,c,g,d,h,_){switch(s.kind){case 207:{let S=qt(s.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!Ir(R.propertyName)||!Ir(R.name)?void 0:Ran(R.propertyName&&R.propertyName.text,R.name.text));if(S)return spe([QP(void 0,S,c,_)])}case 208:{let S=cit(b1e(c.text,h),d);return spe([QP(me.createIdentifier(S),void 0,c,_),lit(void 0,JA(s),me.createIdentifier(S))])}case 80:return Kxs(s,c,g,d,_);default:return pe.assertNever(s,`Convert to ES module got invalid name kind ${s.kind}`)}}function Kxs(s,c,g,d,h){let _=g.getSymbolAtLocation(s),S=new Map,R=!1,T;for(let V of d.original.get(s.text)){if(g.getSymbolAtLocation(V)!==_||V===s)continue;let{parent:M}=V;if(jo(M)){let{name:{text:ee}}=M;if(ee==="default"){R=!0;let re=V.getText();(T??(T=new Map)).set(M,me.createIdentifier(re))}else{pe.assert(M.expression===V,"Didn't expect expression === use");let re=S.get(ee);re===void 0&&(re=cit(ee,d),S.set(ee,re)),(T??(T=new Map)).set(M,me.createIdentifier(re))}}else R=!0}let W=S.size===0?void 0:Do(Yt(S.entries(),([V,M])=>me.createImportSpecifier(!1,V===M?void 0:me.createIdentifier(V),me.createIdentifier(M))));return W||(R=!0),spe([QP(R?JA(s):void 0,W,c,h)],T)}function cit(s,c){for(;c.original.has(s)||c.additional.has(s);)s=`_${s}`;return c.additional.add(s),s}function jxs(s){let c=dl();return Ban(s,g=>c.add(g.text,g)),c}function Ban(s,c){Ir(s)&&zxs(s)&&c(s),s.forEachChild(g=>Ban(g,c))}function zxs(s){let{parent:c}=s;switch(c.kind){case 212:return c.name!==s;case 209:return c.propertyName!==s;case 277:return c.propertyName!==s;default:return!0}}function wan(s,c,g,d){return me.createFunctionDeclaration(Nn(c,o0(g.modifiers)),JA(g.asteriskToken),s,o0(g.typeParameters),o0(g.parameters),JA(g.type),me.converters.convertToFunctionBlock(VYt(g.body,d)))}function qxs(s,c,g,d){return me.createClassDeclaration(Nn(c,o0(g.modifiers)),s,o0(g.typeParameters),o0(g.heritageClauses),VYt(g.members,d))}function Tan(s,c,g,d){return c==="default"?QP(me.createIdentifier(s),void 0,g,d):QP(void 0,[Ran(c,s)],g,d)}function Ran(s,c){return me.createImportSpecifier(!1,s!==void 0&&s!==c?me.createIdentifier(s):void 0,me.createIdentifier(c))}function lit(s,c,g){return me.createVariableStatement(s,me.createVariableDeclarationList([me.createVariableDeclaration(c,void 0,void 0,g)],2))}function PYt(s,c){return me.createExportDeclaration(void 0,!1,s&&me.createNamedExports(s),c===void 0?void 0:me.createStringLiteral(c))}function spe(s,c){return{newImports:s,useSitesToUnqualify:c}}var WYt="correctQualifiedNameToIndexedAccessType",Nan=[Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];xg({errorCodes:Nan,getCodeActions(s){let c=Dan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,h=>kan(h,s.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[ug(WYt,g,[Z.Rewrite_as_the_indexed_access_type_0,d],WYt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[WYt],getAllCodeActions:s=>Qd(s,Nan,(c,g)=>{let d=Dan(g.file,g.start);d&&kan(c,g.file,d)})});function Dan(s,c){let g=ji(Jc(s,c),zi);return pe.assert(!!g,"Expected position to be owned by a qualified name."),Ir(g.left)?g:void 0}function kan(s,c,g){let d=g.right.text,h=me.createIndexedAccessTypeNode(me.createTypeReferenceNode(g.left,void 0),me.createLiteralTypeNode(me.createStringLiteral(d)));s.replaceNode(c,g,h)}var OYt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],MYt="convertToTypeOnlyExport";xg({errorCodes:OYt,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Gan(d,xan(c.span,c.sourceFile),c));if(g.length)return[ug(MYt,g,Z.Convert_to_type_only_export,MYt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[MYt],getAllCodeActions:function(c){let g=new Set;return Qd(c,OYt,(d,h)=>{let _=xan(h,c.sourceFile);_&&Zy(g,rd(_.parent.parent))&&Gan(d,_,c)})}});function xan(s,c){return Gs(Jc(c,s.start).parent,R0)}function Gan(s,c,g){if(!c)return;let d=c.parent,h=d.parent,_=$xs(c,g);if(_.length===d.elements.length)s.insertModifierBefore(g.sourceFile,156,d);else{let S=me.updateExportDeclaration(h,h.modifiers,!1,me.updateNamedExports(d,Me(d.elements,T=>!k(_,T))),h.moduleSpecifier,void 0),R=me.createExportDeclaration(void 0,!0,me.createNamedExports(_),h.moduleSpecifier,void 0);s.replaceNode(g.sourceFile,h,S,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Exclude}),s.insertNodeAfter(g.sourceFile,h,R)}}function $xs(s,c){let g=s.parent;if(g.elements.length===1)return g.elements;let d=wMt(Oy(g),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Me(g.elements,h=>{var _;return h===s||((_=BMt(h,d))==null?void 0:_.code)===OYt[0]})}var Fan=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],uit="convertToTypeOnlyImport";xg({errorCodes:Fan,getCodeActions:function(c){var g;let d=Zan(c.sourceFile,c.span.start);if(d){let h=xo.ChangeTracker.with(c,R=>FPe(R,c.sourceFile,d)),_=d.kind===277&&Mf(d.parent.parent.parent)&&Lan(d,c.sourceFile,c.program)?xo.ChangeTracker.with(c,R=>FPe(R,c.sourceFile,d.parent.parent.parent)):void 0,S=ug(uit,h,d.kind===277?[Z.Use_type_0,((g=d.propertyName)==null?void 0:g.text)??d.name.text]:Z.Use_import_type,uit,Z.Fix_all_with_type_only_imports);return jt(_)?[sR(uit,_,Z.Use_import_type),S]:[S]}},fixIds:[uit],getAllCodeActions:function(c){let g=new Set;return Qd(c,Fan,(d,h)=>{let _=Zan(h.file,h.start);_?.kind===273&&!g.has(_)?(FPe(d,h.file,_),g.add(_)):_?.kind===277&&Mf(_.parent.parent.parent)&&!g.has(_.parent.parent.parent)&&Lan(_,h.file,c.program)?(FPe(d,h.file,_.parent.parent.parent),g.add(_.parent.parent.parent)):_?.kind===277&&FPe(d,h.file,_)})}});function Zan(s,c){let{parent:g}=Jc(s,c);return uy(g)||Mf(g)&&g.importClause?g:void 0}function Lan(s,c,g){if(s.parent.parent.name)return!1;let d=s.parent.elements.filter(_=>!_.isTypeOnly);if(d.length===1)return!0;let h=g.getTypeChecker();for(let _ of d)if(Kp.Core.eachSymbolReferenceInFile(_.name,h,c,R=>{let T=h.getSymbolAtLocation(R);return!!T&&h.symbolIsValue(T)||!JL(R)}))return!1;return!0}function FPe(s,c,g){var d;if(uy(g))s.replaceNode(c,g,me.updateImportSpecifier(g,!0,g.propertyName,g.name));else{let h=g.importClause;if(h.name&&h.namedBindings)s.replaceNodeWithNodes(c,g,[me.createImportDeclaration(o0(g.modifiers,!0),me.createImportClause(156,JA(h.name,!0),void 0),JA(g.moduleSpecifier,!0),JA(g.attributes,!0)),me.createImportDeclaration(o0(g.modifiers,!0),me.createImportClause(156,void 0,JA(h.namedBindings,!0)),JA(g.moduleSpecifier,!0),JA(g.attributes,!0))]);else{let _=((d=h.namedBindings)==null?void 0:d.kind)===276?me.updateNamedImports(h.namedBindings,Tr(h.namedBindings.elements,R=>me.updateImportSpecifier(R,!1,R.propertyName,R.name))):h.namedBindings,S=me.updateImportDeclaration(g,g.modifiers,me.updateImportClause(h,156,h.name,_),g.moduleSpecifier,g.attributes);s.replaceNode(c,g,S)}}}var HYt="convertTypedefToType",Van=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];xg({fixIds:[HYt],errorCodes:Van,getCodeActions(s){let c=OF(s.host,s.formatContext.options),g=Jc(s.sourceFile,s.span.start);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Pan(h,g,s.sourceFile,c));if(d.length>0)return[ug(HYt,d,Z.Convert_typedef_to_TypeScript_type,HYt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:s=>Qd(s,Van,(c,g)=>{let d=OF(s.host,s.formatContext.options),h=Jc(g.file,g.start);h&&Pan(c,h,g.file,d,!0)})});function Pan(s,c,g,d,h=!1){if(!bU(c))return;let _=tGs(c);if(!_)return;let S=c.parent,{leftSibling:R,rightSibling:T}=eGs(c),W=S.getStart(),V="";!R&&S.comment&&(W=Wan(S,S.getStart(),c.getStart()),V=`${d} */${d}`),R&&(h&&bU(R)?(W=c.getStart(),V=""):(W=Wan(S,R.getStart(),c.getStart()),V=`${d} */${d}`));let M=S.getEnd(),ee="";T&&(h&&bU(T)?(M=T.getStart(),ee=`${d}${d}`):(M=T.getStart(),ee=`${d}/**${d} * `)),s.replaceRange(g,{pos:W,end:M},_,{prefix:V,suffix:ee})}function eGs(s){let c=s.parent,g=c.getChildCount()-1,d=c.getChildren().findIndex(S=>S.getStart()===s.getStart()&&S.getEnd()===s.getEnd()),h=d>0?c.getChildAt(d-1):void 0,_=d0;h--)if(!/[*/\s]/.test(d.substring(h-1,h)))return c+h;return g}function tGs(s){var c;let{typeExpression:g}=s;if(!g)return;let d=(c=s.name)==null?void 0:c.getText();if(d){if(g.kind===323)return rGs(d,g);if(g.kind===310)return nGs(d,g)}}function rGs(s,c){let g=Oan(c);if(jt(g))return me.createInterfaceDeclaration(void 0,s,void 0,void 0,g)}function nGs(s,c){let g=JA(c.type);if(g)return me.createTypeAliasDeclaration(void 0,me.createIdentifier(s),void 0,g)}function Oan(s){let c=s.jsDocPropertyTags;return jt(c)?Xt(c,d=>{var h;let _=iGs(d),S=(h=d.typeExpression)==null?void 0:h.type,R=d.isBracketed,T;if(S&&yU(S)){let W=Oan(S);T=me.createTypeLiteralNode(W)}else S&&(T=JA(S));if(T&&_){let W=R?me.createToken(58):void 0;return me.createPropertySignature(void 0,_,W,T)}}):void 0}function iGs(s){return s.name.kind===80?s.name.text:s.name.right.text}function sGs(s){return Xm(s)?er(s.jsDoc,c=>{var g;return(g=c.tags)==null?void 0:g.filter(d=>bU(d))}):[]}var YYt="convertLiteralTypeToMappedType",Man=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];xg({errorCodes:Man,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Han(g,d.start);if(!h)return;let{name:_,constraint:S}=h,R=xo.ChangeTracker.with(c,T=>Yan(T,g,h));return[ug(YYt,R,[Z.Convert_0_to_1_in_0,S,_],YYt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[YYt],getAllCodeActions:s=>Qd(s,Man,(c,g)=>{let d=Han(g.file,g.start);d&&Yan(c,g.file,d)})});function Han(s,c){let g=Jc(s,c);if(Ir(g)){let d=Ma(g.parent.parent,ss),h=g.getText(s);return{container:Ma(d.parent,mh),typeNode:d.type,constraint:h,name:h==="K"?"P":"K"}}}function Yan(s,c,{container:g,typeNode:d,constraint:h,name:_}){s.replaceNode(c,g,me.createMappedTypeNode(void 0,me.createTypeParameterDeclaration(void 0,_,me.createTypeReferenceNode(h)),void 0,void 0,d,void 0))}var Qan=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],QYt="fixClassIncorrectlyImplementsInterface";xg({errorCodes:Qan,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Xan(c,g.start);return Xt(jJ(d),h=>{let _=xo.ChangeTracker.with(s,S=>Uan(s,h,c,d,S,s.preferences));return _.length===0?void 0:ug(QYt,_,[Z.Implement_interface_0,h.getText(c)],QYt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[QYt],getAllCodeActions(s){let c=new Set;return Qd(s,Qan,(g,d)=>{let h=Xan(d.file,d.start);if(Zy(c,rd(h)))for(let _ of jJ(h))Uan(s,_,d.file,h,g,s.preferences)})}});function Xan(s,c){return pe.checkDefined(hC(Jc(s,c)),"There should be a containing class")}function Jan(s){return!s.valueDeclaration||!(o_(s.valueDeclaration)&2)}function Uan(s,c,g,d,h,_){let S=s.program.getTypeChecker(),R=oGs(d,S),T=S.getTypeAtLocation(c),V=S.getPropertiesOfType(T).filter(dh(Jan,_e=>!R.has(_e.escapedName))),M=S.getTypeAtLocation(d),ee=de(d.members,_e=>Tc(_e));M.getNumberIndexType()||ge(T,1),M.getStringIndexType()||ge(T,0);let re=yQ(g,s.program,_,s.host);VQt(d,V,g,s,_,re,_e=>Ie(g,d,_e)),re.writeFixes(h);function ge(_e,Ee){let Ne=S.getIndexInfoOfType(_e,Ee);Ne&&Ie(g,d,S.indexInfoToIndexSignatureDeclaration(Ne,d,void 0,void 0,rse(s)))}function Ie(_e,Ee,Ne){ee?h.insertNodeAfter(_e,ee,Ne):h.insertMemberAtStart(_e,Ee,Ne)}}function oGs(s,c){let g=BB(s);if(!g)return qu();let d=c.getTypeAtLocation(g),h=c.getPropertiesOfType(d);return qu(h.filter(Jan))}var Kan="import",jan="fixMissingImport",zan=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code,Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found.code];xg({errorCodes:zan,getCodeActions(s){let{errorCode:c,preferences:g,sourceFile:d,span:h,program:_}=s,S=ncn(s,c,h.start,!0);if(S)return S.map(({fix:R,symbolName:T,errorIdentifierText:W})=>UYt(s,d,T,R,T!==W,_,g))},fixIds:[jan],getAllCodeActions:s=>{let{sourceFile:c,program:g,preferences:d,host:h,cancellationToken:_}=s,S=qan(c,g,!0,d,h,_);return Yz(s,zan,R=>S.addImportFromDiagnostic(R,s)),Hz(xo.ChangeTracker.with(s,S.writeFixes))}});function yQ(s,c,g,d,h){return qan(s,c,!1,g,d,h)}function qan(s,c,g,d,h,_){let S=c.getCompilerOptions(),R=[],T=[],W=new Map,V=new Set,M=new Set,ee=new Map;return{addImportFromDiagnostic:Ie,addImportFromExportedSymbol:_e,addImportForModuleSymbol:Ee,writeFixes:We,hasFixes:$e,addImportForUnresolvedIdentifier:ge,addImportForNonExistentExport:Ne,removeExistingImport:Te,addVerbatimImport:re};function re(Ye){M.add(Ye)}function ge(Ye,Tt,ot){let Qe=hGs(Ye,Tt,ot);!Qe||!Qe.length||Ze(ma(Qe))}function Ie(Ye,Tt){let ot=ncn(Tt,Ye.code,Ye.start,g);!ot||!ot.length||Ze(ma(ot))}function _e(Ye,Tt,ot){var Qe,mt;let ht=pe.checkDefined(Ye.parent,"Expected exported symbol to have module symbol as parent"),_t=cPe(Ye,Mg(S)),Rt=c.getTypeChecker(),Lt=Rt.getMergedSymbol(FC(Ye,Rt)),Ke=ecn(s,Lt,_t,ht,!1,c,h,d,_);if(!Ke){pe.assert((Qe=d.autoImportFileExcludePatterns)==null?void 0:Qe.length);return}let Pt=L1e(s,c),_r=XYt(s,Ke,c,void 0,!!Tt,Pt,h,d);if(_r){let Gt=((mt=Gs(ot?.name,Ir))==null?void 0:mt.text)??_t,nt,Dt;ot&&rN(ot)&&(_r.kind===3||_r.kind===2)&&_r.addAsTypeOnly===1&&(nt=2),Ye.name!==Gt&&(Dt=Ye.name),_r={..._r,...nt===void 0?{}:{addAsTypeOnly:nt},...Dt===void 0?{}:{propertyName:Dt}},Ze({fix:_r,symbolName:Gt??_t,errorIdentifierText:void 0})}}function Ee(Ye,Tt,ot){var Qe,mt,ht;let _t=c.getTypeChecker(),Rt=_t.getAliasedSymbol(Ye);pe.assert(Rt.flags&1536,"Expected symbol to be a module");let Lt=z3(c,h),Ke=WF.getModuleSpecifiersWithCacheInfo(Rt,_t,S,s,Lt,d,void 0,!0),Pt=L1e(s,c),_r=LPe(Tt,!0,void 0,Ye.flags,c.getTypeChecker(),S);_r=_r===1&&rN(ot)?2:1;let Gt=Mf(ot)?h3(ot)?1:2:uy(ot)?0:Vw(ot)&&ot.name?1:2,nt=[{symbol:Ye,moduleSymbol:Rt,moduleFileName:(ht=(mt=(Qe=Rt.declarations)==null?void 0:Qe[0])==null?void 0:mt.getSourceFile())==null?void 0:ht.fileName,exportKind:4,targetFlags:Ye.flags,isFromPackageJson:!1}],Dt=XYt(s,nt,c,void 0,!!Tt,Pt,h,d),tr;Dt&&Gt!==2&&Dt.kind!==0&&Dt.kind!==1?tr={...Dt,addAsTypeOnly:_r,importKind:Gt}:tr={kind:3,moduleSpecifierKind:Dt!==void 0?Dt.moduleSpecifierKind:Ke.kind,moduleSpecifier:Dt!==void 0?Dt.moduleSpecifier:ma(Ke.moduleSpecifiers),importKind:Gt,addAsTypeOnly:_r,useRequire:Pt},Ze({fix:tr,symbolName:Ye.name,errorIdentifierText:void 0})}function Ne(Ye,Tt,ot,Qe,mt){let ht=c.getSourceFile(Tt),_t=L1e(s,c);if(ht&&ht.symbol){let{fixes:Rt}=ZPe([{exportKind:ot,isFromPackageJson:!1,moduleFileName:Tt,moduleSymbol:ht.symbol,targetFlags:Qe}],void 0,mt,_t,c,s,h,d);Rt.length&&Ze({fix:Rt[0],symbolName:Ye,errorIdentifierText:Ye})}else{let Rt=dPe(Tt,99,c,h),Lt=WF.getLocalModuleSpecifierBetweenFileNames(s,Tt,S,z3(c,h),d),Ke=git(Rt,ot,c),Pt=LPe(mt,!0,void 0,Qe,c.getTypeChecker(),S);Ze({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:Lt,importKind:Ke,addAsTypeOnly:Pt,useRequire:_t},symbolName:Ye,errorIdentifierText:Ye})}}function Te(Ye){Ye.kind===274&&pe.assertIsDefined(Ye.name,"ImportClause should have a name if it's being removed"),V.add(Ye)}function Ze(Ye){var Tt,ot,Qe;let{fix:mt,symbolName:ht}=Ye;switch(mt.kind){case 0:R.push(mt);break;case 1:T.push(mt);break;case 2:{let{importClauseOrBindingPattern:Ke,importKind:Pt,addAsTypeOnly:_r,propertyName:Gt}=mt,nt=W.get(Ke);if(nt||W.set(Ke,nt={importClauseOrBindingPattern:Ke,defaultImport:void 0,namedImports:new Map}),Pt===0){let Dt=(Tt=nt?.namedImports.get(ht))==null?void 0:Tt.addAsTypeOnly;nt.namedImports.set(ht,{addAsTypeOnly:_t(Dt,_r),propertyName:Gt})}else pe.assert(nt.defaultImport===void 0||nt.defaultImport.name===ht,"(Add to Existing) Default import should be missing or match symbolName"),nt.defaultImport={name:ht,addAsTypeOnly:_t((ot=nt.defaultImport)==null?void 0:ot.addAsTypeOnly,_r)};break}case 3:{let{moduleSpecifier:Ke,importKind:Pt,useRequire:_r,addAsTypeOnly:Gt,propertyName:nt}=mt,Dt=Rt(Ke,Pt,_r,Gt);switch(pe.assert(Dt.useRequire===_r,"(Add new) Tried to add an `import` and a `require` for the same module"),Pt){case 1:pe.assert(Dt.defaultImport===void 0||Dt.defaultImport.name===ht,"(Add new) Default import should be missing or match symbolName"),Dt.defaultImport={name:ht,addAsTypeOnly:_t((Qe=Dt.defaultImport)==null?void 0:Qe.addAsTypeOnly,Gt)};break;case 0:let tr=(Dt.namedImports||(Dt.namedImports=new Map)).get(ht);Dt.namedImports.set(ht,[_t(tr,Gt),nt]);break;case 3:if(S.verbatimModuleSyntax){let ur=(Dt.namedImports||(Dt.namedImports=new Map)).get(ht);Dt.namedImports.set(ht,[_t(ur,Gt),nt])}else pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===ht,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Pt,name:ht,addAsTypeOnly:Gt};break;case 2:pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===ht,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Pt,name:ht,addAsTypeOnly:Gt};break}break}case 4:break;default:pe.assertNever(mt,`fix wasn't never - got kind ${mt.kind}`)}function _t(Ke,Pt){return Math.max(Ke??0,Pt)}function Rt(Ke,Pt,_r,Gt){let nt=Lt(Ke,!0),Dt=Lt(Ke,!1),tr=ee.get(nt),ur=ee.get(Dt),Gr={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:_r};return Pt===1&&Gt===2?tr||(ee.set(nt,Gr),Gr):Gt===1&&(tr||ur)?tr||ur:ur||(ee.set(Dt,Gr),Gr)}function Lt(Ke,Pt){return`${Pt?1:0}|${Ke}`}}function We(Ye,Tt){var ot,Qe;let mt;s.imports!==void 0&&s.imports.length===0&&Tt!==void 0?mt=Tt:mt=_1(s,d);for(let Rt of R)KYt(Ye,s,Rt);for(let Rt of T)Acn(Ye,s,Rt,mt);let ht;if(V.size){pe.assert(aN(s),"Cannot remove imports from a future source file");let Rt=new Set(Xt([...V],Gt=>ji(Gt,Mf))),Lt=new Set(Xt([...V],Gt=>ji(Gt,y7))),Ke=[...Rt].filter(Gt=>{var nt,Dt,tr;return!W.has(Gt.importClause)&&(!((nt=Gt.importClause)!=null&&nt.name)||V.has(Gt.importClause))&&(!Gs((Dt=Gt.importClause)==null?void 0:Dt.namedBindings,Zx)||V.has(Gt.importClause.namedBindings))&&(!Gs((tr=Gt.importClause)==null?void 0:tr.namedBindings,yN)||ue(Gt.importClause.namedBindings.elements,ur=>V.has(ur)))}),Pt=[...Lt].filter(Gt=>(Gt.name.kind!==207||!W.has(Gt.name))&&(Gt.name.kind!==207||ue(Gt.name.elements,nt=>V.has(nt)))),_r=[...Rt].filter(Gt=>{var nt,Dt;return((nt=Gt.importClause)==null?void 0:nt.namedBindings)&&Ke.indexOf(Gt)===-1&&!((Dt=W.get(Gt.importClause))!=null&&Dt.namedImports)&&(Gt.importClause.namedBindings.kind===275||ue(Gt.importClause.namedBindings.elements,tr=>V.has(tr)))});for(let Gt of[...Ke,...Pt])Ye.delete(s,Gt);for(let Gt of _r)Ye.replaceNode(s,Gt.importClause,me.updateImportClause(Gt.importClause,Gt.importClause.phaseModifier,Gt.importClause.name,void 0));for(let Gt of V){let nt=ji(Gt,Mf);nt&&Ke.indexOf(nt)===-1&&_r.indexOf(nt)===-1?Gt.kind===274?Ye.delete(s,Gt.name):(pe.assert(Gt.kind===277,"NamespaceImport should have been handled earlier"),(ot=W.get(nt.importClause))!=null&&ot.namedImports?(ht??(ht=new Set)).add(Gt):Ye.delete(s,Gt)):Gt.kind===209?(Qe=W.get(Gt.parent))!=null&&Qe.namedImports?(ht??(ht=new Set)).add(Gt):Ye.delete(s,Gt):Gt.kind===272&&Ye.delete(s,Gt)}}W.forEach(({importClauseOrBindingPattern:Rt,defaultImport:Lt,namedImports:Ke})=>{gcn(Ye,s,Rt,Lt,Do(Ke.entries(),([Pt,{addAsTypeOnly:_r,propertyName:Gt}])=>({addAsTypeOnly:_r,propertyName:Gt,name:Pt})),ht,d)});let _t;ee.forEach(({useRequire:Rt,defaultImport:Lt,namedImports:Ke,namespaceLikeImport:Pt},_r)=>{let Gt=_r.slice(2),Dt=(Rt?fcn:pcn)(Gt,mt,Lt,Ke&&Do(Ke.entries(),([tr,[ur,Gr]])=>({addAsTypeOnly:ur,propertyName:Gr,name:tr})),Pt,S,d);_t=zr(_t,Dt)}),_t=zr(_t,Ue()),_t&&Mrt(Ye,s,_t,!0,d)}function Ue(){if(!M.size)return;let Ye=new Set(Xt([...M],ot=>ji(ot,Mf))),Tt=new Set(Xt([...M],ot=>ji(ot,nne)));return[...Xt([...M],ot=>ot.kind===272?JA(ot,!0):void 0),...[...Ye].map(ot=>{var Qe;return M.has(ot)?JA(ot,!0):JA(me.updateImportDeclaration(ot,ot.modifiers,ot.importClause&&me.updateImportClause(ot.importClause,ot.importClause.phaseModifier,M.has(ot.importClause)?ot.importClause.name:void 0,M.has(ot.importClause.namedBindings)?ot.importClause.namedBindings:(Qe=Gs(ot.importClause.namedBindings,yN))!=null&&Qe.elements.some(mt=>M.has(mt))?me.updateNamedImports(ot.importClause.namedBindings,ot.importClause.namedBindings.elements.filter(mt=>M.has(mt))):void 0),ot.moduleSpecifier,ot.attributes),!0)}),...[...Tt].map(ot=>M.has(ot)?JA(ot,!0):JA(me.updateVariableStatement(ot,ot.modifiers,me.updateVariableDeclarationList(ot.declarationList,Xt(ot.declarationList.declarations,Qe=>M.has(Qe)?Qe:me.updateVariableDeclaration(Qe,Qe.name.kind===207?me.updateObjectBindingPattern(Qe.name,Qe.name.elements.filter(mt=>M.has(mt))):Qe.name,Qe.exclamationToken,Qe.type,Qe.initializer)))),!0))]}function $e(){return R.length>0||T.length>0||W.size>0||ee.size>0||M.size>0||V.size>0}}function aGs(s,c,g,d){let h=jie(s,d,g),_=tcn(s,c);return{getModuleSpecifierForBestExportInfo:S};function S(R,T,W,V){let{fixes:M,computedWithoutCacheCount:ee}=ZPe(R,T,W,!1,c,s,g,d,_,V),re=scn(M,s,c,h,g,d);return re&&{...re,computedWithoutCacheCount:ee}}}function cGs(s,c,g,d,h,_,S,R,T,W,V,M){let ee;g?(ee=S1e(d,S,R,V,M).get(d.path,g),pe.assertIsDefined(ee,"Some exportInfo should match the specified exportMapKey")):(ee=Xh(l2(c.name))?[uGs(s,h,c,R,S)]:ecn(d,s,h,c,_,R,S,V,M),pe.assertIsDefined(ee,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=L1e(d,R),ge=JL(Jc(d,W)),Ie=pe.checkDefined(XYt(d,ee,R,W,ge,re,S,V));return{moduleSpecifier:Ie.moduleSpecifier,codeAction:$an(UYt({host:S,formatContext:T,preferences:V},d,h,Ie,!1,R,V))}}function lGs(s,c,g,d,h,_){let S=g.getCompilerOptions(),R=Xa(JYt(s,g.getTypeChecker(),c,S)),T=lcn(s,c,R,g),W=R!==c.text;return T&&$an(UYt({host:d,formatContext:h,preferences:_},s,R,T,W,g,_))}function XYt(s,c,g,d,h,_,S,R){let T=jie(s,R,S);return scn(ZPe(c,d,h,_,g,s,S,R).fixes,s,g,T,S,R)}function $an({description:s,changes:c,commands:g}){return{description:s,changes:c,commands:g}}function ecn(s,c,g,d,h,_,S,R,T){let W=rcn(_,S),V=R.autoImportFileExcludePatterns&&kMt(S,R),M=_.getTypeChecker().getMergedSymbol(d),ee=V&&M.declarations&&Cp(M,308),re=ee&&V(ee);return S1e(s,S,_,R,T).search(s.path,h,ge=>ge===g,ge=>{let Ie=W(ge[0].isFromPackageJson);if(Ie.getMergedSymbol(FC(ge[0].symbol,Ie))===c&&(re||ge.some(_e=>Ie.getMergedSymbol(_e.moduleSymbol)===d||_e.symbol.parent===d)))return ge})}function uGs(s,c,g,d,h){var _,S;let R=W(d.getTypeChecker(),!1);if(R)return R;let T=(S=(_=h.getPackageJsonAutoImportProvider)==null?void 0:_.call(h))==null?void 0:S.getTypeChecker();return pe.checkDefined(T&&W(T,!0),"Could not find symbol in specified module for code actions");function W(V,M){let ee=pPe(g,V);if(ee&&FC(ee.symbol,V)===s)return{symbol:ee.symbol,moduleSymbol:g,moduleFileName:void 0,exportKind:ee.exportKind,targetFlags:FC(s,V).flags,isFromPackageJson:M};let re=V.tryGetMemberInModuleExportsAndProperties(c,g);if(re&&FC(re,V)===s)return{symbol:re,moduleSymbol:g,moduleFileName:void 0,exportKind:0,targetFlags:FC(s,V).flags,isFromPackageJson:M}}}function ZPe(s,c,g,d,h,_,S,R,T=aN(_)?tcn(_,h):void 0,W){let V=h.getTypeChecker(),M=T?er(s,T.getImportsForExportInfo):E,ee=c!==void 0&&gGs(M,c),re=dGs(M,g,V,h.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...ee?[ee]:E,re]};let{fixes:ge,computedWithoutCacheCount:Ie=0}=fGs(s,M,h,_,c,g,d,S,R,W);return{computedWithoutCacheCount:Ie,fixes:[...ee?[ee]:E,...ge]}}function gGs(s,c){return X(s,({declaration:g,importKind:d})=>{var h;if(d!==0)return;let _=AGs(g),S=_&&((h=ZY(g))==null?void 0:h.text);if(S)return{kind:0,namespacePrefix:_,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:S}})}function AGs(s){var c,g,d;switch(s.kind){case 261:return(c=Gs(s.name,Ir))==null?void 0:c.text;case 272:return s.name.text;case 352:case 273:return(d=Gs((g=s.importClause)==null?void 0:g.namedBindings,Zx))==null?void 0:d.name.text;default:return pe.assertNever(s)}}function LPe(s,c,g,d,h,_){return s?g&&_.verbatimModuleSyntax&&(!(d&111551)||h.getTypeOnlyAliasDeclaration(g))?2:1:4}function dGs(s,c,g,d){let h;for(let S of s){let R=_(S);if(!R)continue;let T=rN(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&T||R.addAsTypeOnly===4&&!T)return R;h??(h=R)}return h;function _({declaration:S,importKind:R,symbol:T,targetFlags:W}){if(R===3||R===2||S.kind===272)return;if(S.kind===261)return(R===0||R===1)&&S.name.kind===207?{kind:2,importClauseOrBindingPattern:S.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:V}=S;if(!V||!mA(S.moduleSpecifier))return;let{name:M,namedBindings:ee}=V;if(V.isTypeOnly&&!(R===0&&ee))return;let re=LPe(c,!1,T,W,g,d);if(!(R===1&&(M||re===2&&ee))&&!(R===0&&ee?.kind===275))return{kind:2,importClauseOrBindingPattern:V,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.moduleSpecifier.text,addAsTypeOnly:re}}}function tcn(s,c){let g=c.getTypeChecker(),d;for(let h of s.imports){let _=v7(h);if(y7(_.parent)){let S=g.resolveExternalModuleName(h);S&&(d||(d=dl())).add(kg(S),_.parent)}else if(_.kind===273||_.kind===272||_.kind===352){let S=g.getSymbolAtLocation(h);S&&(d||(d=dl())).add(kg(S),_)}}return{getImportsForExportInfo:({moduleSymbol:h,exportKind:_,targetFlags:S,symbol:R})=>{let T=d?.get(kg(h));if(!T||n0(s)&&!(S&111551)&&!ue(T,SN))return E;let W=git(s,_,c);return T.map(V=>({declaration:V,importKind:W,symbol:R,targetFlags:S}))}}}function L1e(s,c){if(!pN(s.fileName))return!1;if(s.commonJsModuleIndicator&&!s.externalModuleIndicator)return!0;if(s.externalModuleIndicator&&!s.commonJsModuleIndicator)return!1;let g=c.getCompilerOptions();if(g.configFile)return i0(g)<5;if(zYt(s,c)===1)return!0;if(zYt(s,c)===99)return!1;for(let d of c.getSourceFiles())if(!(d===s||!n0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function rcn(s,c){return ZA(g=>g?c.getPackageJsonAutoImportProvider().getTypeChecker():s.getTypeChecker())}function pGs(s,c,g,d,h,_,S,R,T){let W=pN(c.fileName),V=s.getCompilerOptions(),M=z3(s,S),ee=rcn(s,S),re=k_(V),ge=UVe(re),Ie=T?Ne=>WF.tryGetModuleSpecifiersFromCache(Ne.moduleSymbol,c,M,R):(Ne,Te)=>WF.getModuleSpecifiersWithCacheInfo(Ne.moduleSymbol,Te,V,c,M,R,void 0,!0),_e=0,Ee=er(_,(Ne,Te)=>{let Ze=ee(Ne.isFromPackageJson),{computedWithoutCache:We,moduleSpecifiers:Ue,kind:$e}=Ie(Ne,Ze)??{},Ye=!!(Ne.targetFlags&111551),Tt=LPe(d,!0,Ne.symbol,Ne.targetFlags,Ze,V);return _e+=We?1:0,Xt(Ue,ot=>{if(ge&&WP(ot))return;if(!Ye&&W&&g!==void 0)return{kind:1,moduleSpecifierKind:$e,moduleSpecifier:ot,usagePosition:g,exportInfo:Ne,isReExport:Te>0};let Qe=git(c,Ne.exportKind,s),mt;if(g!==void 0&&Qe===3&&Ne.exportKind===0){let ht=Ze.resolveExternalModuleSymbol(Ne.moduleSymbol),_t;ht!==Ne.moduleSymbol&&(_t=fPe(ht,Ze,Mg(V),Fl)),_t||(_t=y1e(Ne.moduleSymbol,Mg(V),!1)),mt={namespacePrefix:_t,usagePosition:g}}return{kind:3,moduleSpecifierKind:$e,moduleSpecifier:ot,importKind:Qe,useRequire:h,addAsTypeOnly:Tt,exportInfo:Ne,isReExport:Te>0,qualification:mt}})});return{computedWithoutCacheCount:_e,fixes:Ee}}function fGs(s,c,g,d,h,_,S,R,T,W){let V=X(c,M=>IGs(M,_,S,g.getTypeChecker(),g.getCompilerOptions()));return V?{fixes:[V]}:pGs(g,d,h,_,S,s,R,T,W)}function IGs({declaration:s,importKind:c,symbol:g,targetFlags:d},h,_,S,R){var T;let W=(T=ZY(s))==null?void 0:T.text;if(W){let V=_?4:LPe(h,!0,g,d,S,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:W,importKind:c,addAsTypeOnly:V,useRequire:_}}}function ncn(s,c,g,d){let h=Jc(s.sourceFile,g),_;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)_=yGs(s,h);else if(Ir(h))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=Xa(JYt(s.sourceFile,s.program.getTypeChecker(),h,s.program.getCompilerOptions())),T=lcn(s.sourceFile,h,R,s.program);return T&&[{fix:T,symbolName:R,errorIdentifierText:h.text}]}else _=ccn(s,h,d);else return;let S=jie(s.sourceFile,s.preferences,s.host);return _&&icn(_,s.sourceFile,s.program,S,s.host,s.preferences)}function icn(s,c,g,d,h,_){let S=R=>Ou(R,h.getCurrentDirectory(),JD(h));return bo(s,(R,T)=>Ml(!!R.isJsxNamespaceFix,!!T.isJsxNamespaceFix)||Zt(R.fix.kind,T.fix.kind)||ocn(R.fix,T.fix,c,g,_,d.allowsImportingSpecifier,S))}function hGs(s,c,g){let d=ccn(s,c,g),h=jie(s.sourceFile,s.preferences,s.host);return d&&icn(d,s.sourceFile,s.program,h,s.host,s.preferences)}function scn(s,c,g,d,h,_){if(jt(s))return s[0].kind===0||s[0].kind===2?s[0]:s.reduce((S,R)=>ocn(R,S,c,g,_,d.allowsImportingSpecifier,T=>Ou(T,h.getCurrentDirectory(),JD(h)))===-1?R:S)}function ocn(s,c,g,d,h,_,S){return s.kind!==0&&c.kind!==0?Ml(c.moduleSpecifierKind!=="node_modules"||_(c.moduleSpecifier),s.moduleSpecifierKind!=="node_modules"||_(s.moduleSpecifier))||mGs(s,c,h)||_Gs(s.moduleSpecifier,c.moduleSpecifier,g,d)||Ml(acn(s,g.path,S),acn(c,g.path,S))||Qne(s.moduleSpecifier,c.moduleSpecifier):0}function mGs(s,c,g){return g.importModuleSpecifierPreference==="non-relative"||g.importModuleSpecifierPreference==="project-relative"?Ml(s.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function acn(s,c,g){var d;if(s.isReExport&&((d=s.exportInfo)!=null&&d.moduleFileName)&&CGs(s.exportInfo.moduleFileName)){let h=g(Mo(s.exportInfo.moduleFileName));return Ac(c,h)}return!1}function CGs(s){return gp(s,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function _Gs(s,c,g,d){return Ac(s,"node:")&&!Ac(c,"node:")?uPe(g,d)?-1:1:Ac(c,"node:")&&!Ac(s,"node:")?uPe(g,d)?1:-1:0}function yGs({sourceFile:s,program:c,host:g,preferences:d},h){let _=c.getTypeChecker(),S=bGs(h,_);if(!S)return;let R=_.getAliasedSymbol(S),T=S.name,W=[{symbol:S,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],V=L1e(s,c);return ZPe(W,void 0,!1,V,c,s,g,d).fixes.map(ee=>{var re;return{fix:ee,symbolName:T,errorIdentifierText:(re=Gs(h,Ir))==null?void 0:re.text}})}function bGs(s,c){let g=Ir(s)?c.getSymbolAtLocation(s):void 0;if(yAe(g))return g;let{parent:d}=s;if(eI(d)&&d.tagName===s||Pw(d)){let h=c.resolveName(c.getJsxNamespace(d),eI(d)?s:d,111551,!1);if(yAe(h))return h}}function git(s,c,g,d){if(g.getCompilerOptions().verbatimModuleSyntax&&RGs(s,g)===1)return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return BGs(s,g.getCompilerOptions(),!!d);case 3:return EGs(s,g,!!d);case 4:return 2;default:return pe.assertNever(c)}}function EGs(s,c,g){if(JY(c.getCompilerOptions()))return 1;let d=i0(c.getCompilerOptions());switch(d){case 2:case 1:case 3:return pN(s.fileName)&&(s.externalModuleIndicator||g)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 101:case 102:case 199:return zYt(s,c)===99?2:3;default:return pe.assertNever(d,`Unexpected moduleKind ${d}`)}}function ccn({sourceFile:s,program:c,cancellationToken:g,host:d,preferences:h},_,S){let R=c.getTypeChecker(),T=c.getCompilerOptions();return er(JYt(s,R,_,T),W=>{if(W==="default")return;let V=JL(_),M=L1e(s,c),ee=vGs(W,YJ(_),DU(_),g,s,c,S,d,h);return Do(xt(ee.values(),re=>ZPe(re,_.getStart(s),V,M,c,s,d,h).fixes),re=>({fix:re,symbolName:W,errorIdentifierText:_.text,isJsxNamespaceFix:W!==_.text}))})}function lcn(s,c,g,d){let h=d.getTypeChecker(),_=h.resolveName(g,c,111551,!0);if(!_)return;let S=h.getTypeOnlyAliasDeclaration(_);if(!(!S||ms(S)!==s))return{kind:4,typeOnlyAliasDeclaration:S}}function JYt(s,c,g,d){let h=g.parent;if((eI(h)||rQ(h))&&h.tagName===g&&unt(d.jsx)){let _=c.getJsxNamespace(s);if(SGs(_,g,c))return!eU(g.text)&&!c.resolveName(g.text,g,111551,!1)?[g.text,_]:[_]}return[g.text]}function SGs(s,c,g){if(eU(c.text))return!0;let d=g.resolveName(s,c,111551,!0);return!d||jt(d.declarations,nN)&&!(d.flags&111551)}function vGs(s,c,g,d,h,_,S,R,T){var W;let V=dl(),M=jie(h,T,R),ee=(W=R.getModuleSpecifierCache)==null?void 0:W.call(R),re=ZA(Ie=>z3(Ie?R.getPackageJsonAutoImportProvider():_,R));function ge(Ie,_e,Ee,Ne,Te,Ze){let We=re(Ze);if(dnt(Te,h,_e,Ie,T,M,We,ee)){let Ue=Te.getTypeChecker();V.add(mMt(Ee,Ue).toString(),{symbol:Ee,moduleSymbol:Ie,moduleFileName:_e?.fileName,exportKind:Ne,targetFlags:FC(Ee,Ue).flags,isFromPackageJson:Ze})}}return pnt(_,R,T,S,(Ie,_e,Ee,Ne)=>{let Te=Ee.getTypeChecker();d.throwIfCancellationRequested();let Ze=Ee.getCompilerOptions(),We=pPe(Ie,Te);We&&hcn(Te.getSymbolFlags(We.symbol),g)&&fPe(We.symbol,Te,Mg(Ze),($e,Ye)=>(c?Ye??$e:$e)===s)&&ge(Ie,_e,We.symbol,We.exportKind,Ee,Ne);let Ue=Te.tryGetMemberInModuleExportsAndProperties(s,Ie);Ue&&hcn(Te.getSymbolFlags(Ue),g)&&ge(Ie,_e,Ue,0,Ee,Ne)}),V}function BGs(s,c,g){let d=JY(c),h=pN(s.fileName);if(!h&&i0(c)>=5)return d?1:2;if(h)return s.externalModuleIndicator||g?d?1:2:3;for(let _ of s.statements??E)if(km(_)&&!sf(_.moduleReference))return 3;return d?1:3}function UYt(s,c,g,d,h,_,S){let R,T=xo.ChangeTracker.with(s,W=>{R=wGs(W,c,g,d,h,_,S)});return ug(Kan,T,R,jan,Z.Add_all_missing_imports)}function wGs(s,c,g,d,h,_,S){let R=_1(c,S);switch(d.kind){case 0:return KYt(s,c,d),[Z.Change_0_to_1,g,`${d.namespacePrefix}.${g}`];case 1:return Acn(s,c,d,R),[Z.Change_0_to_1,g,dcn(d.moduleSpecifier,R)+g];case 2:{let{importClauseOrBindingPattern:T,importKind:W,addAsTypeOnly:V,moduleSpecifier:M}=d;gcn(s,c,T,W===1?{name:g,addAsTypeOnly:V}:void 0,W===0?[{name:g,addAsTypeOnly:V}]:E,void 0,S);let ee=l2(M);return h?[Z.Import_0_from_1,g,ee]:[Z.Update_import_from_0,ee]}case 3:{let{importKind:T,moduleSpecifier:W,addAsTypeOnly:V,useRequire:M,qualification:ee}=d,re=M?fcn:pcn,ge=T===1?{name:g,addAsTypeOnly:V}:void 0,Ie=T===0?[{name:g,addAsTypeOnly:V}]:void 0,_e=T===2||T===3?{importKind:T,name:ee?.namespacePrefix||g,addAsTypeOnly:V}:void 0;return Mrt(s,c,re(W,R,ge,Ie,_e,_.getCompilerOptions(),S),!0,S),ee&&KYt(s,c,ee),h?[Z.Import_0_from_1,g,W]:[Z.Add_import_from_0,W]}case 4:{let{typeOnlyAliasDeclaration:T}=d,W=TGs(s,T,_,c,S);return W.kind===277?[Z.Remove_type_from_import_of_0_from_1,g,ucn(W.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,ucn(W)]}default:return pe.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function ucn(s){var c,g;return s.kind===272?((g=Gs((c=Gs(s.moduleReference,ZF))==null?void 0:c.expression,mA))==null?void 0:g.text)||s.moduleReference.getText():Ma(s.parent.moduleSpecifier,Zg).text}function TGs(s,c,g,d,h){let _=g.getCompilerOptions(),S=_.verbatimModuleSyntax;switch(c.kind){case 277:if(c.isTypeOnly){if(c.parent.elements.length>1){let T=me.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:W}=i5.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,h,d),V=i5.getImportSpecifierInsertionIndex(c.parent.elements,T,W);if(V!==c.parent.elements.indexOf(c))return s.delete(d,c),s.insertImportSpecifierAtIndex(d,T,c.parent,V),c}return s.deleteRange(d,{pos:MD(c.getFirstToken()),end:MD(c.propertyName??c.name)}),c}else return pe.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 274:return R(c),c;case 275:return R(c.parent),c.parent;case 272:return s.deleteRange(d,c.getChildAt(1)),c;default:pe.failBadSyntaxKind(c)}function R(T){var W;if(s.delete(d,Hrt(T,d)),!_.allowImportingTsExtensions){let V=ZY(T.parent),M=V&&((W=g.getResolvedModuleFromModuleSpecifier(V,d))==null?void 0:W.resolvedModule);if(M?.resolvedUsingTsExtension){let ee=K2(V.text,MEe(V.text,_));s.replaceNode(d,V,me.createStringLiteral(ee))}}if(S){let V=Gs(T.namedBindings,yN);if(V&&V.elements.length>1){i5.getNamedImportSpecifierComparerWithDetection(T.parent,h,d).isSorted!==!1&&c.kind===277&&V.elements.indexOf(c)!==0&&(s.delete(d,c),s.insertImportSpecifierAtIndex(d,c,V,0));for(let ee of V.elements)ee!==c&&!ee.isTypeOnly&&s.insertModifierBefore(d,156,ee)}}}}function gcn(s,c,g,d,h,_,S){var R;if(g.kind===207){if(_&&g.elements.some(M=>_.has(M))){s.replaceNode(c,g,me.createObjectBindingPattern([...g.elements.filter(M=>!_.has(M)),...d?[me.createBindingElement(void 0,"default",d.name)]:E,...h.map(M=>me.createBindingElement(void 0,M.propertyName,M.name))]));return}d&&V(g,d.name,"default");for(let M of h)V(g,M.name,M.propertyName);return}let T=g.isTypeOnly&&jt([d,...h],M=>M?.addAsTypeOnly===4),W=g.namedBindings&&((R=Gs(g.namedBindings,yN))==null?void 0:R.elements);if(d&&(pe.assert(!g.name,"Cannot add a default import to an import clause that already has one"),s.insertNodeAt(c,g.getStart(c),me.createIdentifier(d.name),{suffix:", "})),h.length){let{specifierComparer:M,isSorted:ee}=i5.getNamedImportSpecifierComparerWithDetection(g.parent,S,c),re=bo(h.map(ge=>me.createImportSpecifier((!g.isTypeOnly||T)&&Ait(ge,S),ge.propertyName===void 0?void 0:me.createIdentifier(ge.propertyName),me.createIdentifier(ge.name))),M);if(_)s.replaceNode(c,g.namedBindings,me.updateNamedImports(g.namedBindings,bo([...W.filter(ge=>!_.has(ge)),...re],M)));else if(W?.length&&ee!==!1){let ge=T&&W?me.updateNamedImports(g.namedBindings,Tr(W,Ie=>me.updateImportSpecifier(Ie,!0,Ie.propertyName,Ie.name))).elements:W;for(let Ie of re){let _e=i5.getImportSpecifierInsertionIndex(ge,Ie,M);s.insertImportSpecifierAtIndex(c,Ie,g.namedBindings,_e)}}else if(W?.length)for(let ge of re)s.insertNodeInListAfter(c,Ei(W),ge,W);else if(re.length){let ge=me.createNamedImports(re);g.namedBindings?s.replaceNode(c,g.namedBindings,ge):s.insertNodeAfter(c,pe.checkDefined(g.name,"Import clause must have either named imports or a default import"),ge)}}if(T&&(s.delete(c,Hrt(g,c)),W))for(let M of W)s.insertModifierBefore(c,156,M);function V(M,ee,re){let ge=me.createBindingElement(void 0,re,ee);M.elements.length?s.insertNodeInListAfter(c,Ei(M.elements),ge):s.replaceNode(c,M,me.createObjectBindingPattern([ge]))}}function KYt(s,c,{namespacePrefix:g,usagePosition:d}){s.insertText(c,d,g+".")}function Acn(s,c,{moduleSpecifier:g,usagePosition:d},h){s.insertText(c,d,dcn(g,h))}function dcn(s,c){let g=Wrt(c);return`import(${g}${s}${g}).`}function jYt({addAsTypeOnly:s}){return s===2}function Ait(s,c){return jYt(s)||!!c.preferTypeOnlyAutoImports&&s.addAsTypeOnly!==4}function pcn(s,c,g,d,h,_,S){let R=Xde(s,c),T;if(g!==void 0||d?.length){let W=(!g||jYt(g))&&ue(d,jYt)||(_.verbatimModuleSyntax||S.preferTypeOnlyAutoImports)&&g?.addAsTypeOnly!==4&&!jt(d,V=>V.addAsTypeOnly===4);T=zr(T,QP(g&&me.createIdentifier(g.name),d?.map(V=>me.createImportSpecifier(!W&&Ait(V,S),V.propertyName===void 0?void 0:me.createIdentifier(V.propertyName),me.createIdentifier(V.name))),s,c,W))}if(h){let W=h.importKind===3?me.createImportEqualsDeclaration(void 0,Ait(h,S),me.createIdentifier(h.name),me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(Ait(h,S)?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(h.name))),R,void 0);T=zr(T,W)}return pe.checkDefined(T)}function fcn(s,c,g,d,h){let _=Xde(s,c),S;if(g||d?.length){let R=d?.map(({name:W,propertyName:V})=>me.createBindingElement(void 0,V,W))||[];g&&R.unshift(me.createBindingElement(void 0,"default",g.name));let T=Icn(me.createObjectBindingPattern(R),_);S=zr(S,T)}if(h){let R=Icn(h.name,_);S=zr(S,R)}return pe.checkDefined(S)}function Icn(s,c){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(typeof s=="string"?me.createIdentifier(s):s,void 0,void 0,me.createCallExpression(me.createIdentifier("require"),void 0,[c]))],2))}function hcn(s,c){return c===7?!0:c&1?!!(s&111551):c&2?!!(s&788968):c&4?!!(s&1920):!1}function zYt(s,c){return aN(s)?c.getImpliedNodeFormatForEmit(s):NU(s,c.getCompilerOptions())}function RGs(s,c){return aN(s)?c.getEmitModuleFormatOfFile(s):Lde(s,c.getCompilerOptions())}var qYt="addMissingConstraint",mcn=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];xg({errorCodes:mcn,getCodeActions(s){let{sourceFile:c,span:g,program:d,preferences:h,host:_}=s,S=Ccn(d,c,g);if(S===void 0)return;let R=xo.ChangeTracker.with(s,T=>_cn(T,d,h,_,c,S));return[ug(qYt,R,Z.Add_extends_constraint,qYt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[qYt],getAllCodeActions:s=>{let{program:c,preferences:g,host:d}=s,h=new Set;return Hz(xo.ChangeTracker.with(s,_=>{Yz(s,mcn,S=>{let R=Ccn(c,S.file,zd(S.start,S.length));if(R&&Zy(h,rd(R.declaration)))return _cn(_,c,g,d,S.file,R)})}))}});function Ccn(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=XQt(h.file,zd(h.start,h.length));if(_!==void 0&&(Ir(_)&&Ds(_.parent)&&(_=_.parent),Ds(_))){if(GB(_.parent))return;let S=Jc(c,g.start),R=s.getTypeChecker();return{constraint:DGs(R,S)||NGs(h.messageText),declaration:_,token:S}}}function _cn(s,c,g,d,h,_){let{declaration:S,constraint:R}=_,T=c.getTypeChecker();if(Xs(R))s.insertText(h,S.name.end,` extends ${R}`);else{let W=Mg(c.getCompilerOptions()),V=rse({program:c,host:d}),M=yQ(h,c,g,d),ee=wit(T,M,R,void 0,W,void 0,void 0,V);ee&&(s.replaceNode(h,S,me.updateTypeParameterDeclaration(S,void 0,S.name,ee,S.default)),M.writeFixes(s))}}function NGs(s){let[,c]=wN(s,` -`,0).match(/`extends (.*)`/)||[];return c}function DGs(s,c){return uc(c.parent)?s.getTypeArgumentConstraint(c.parent):(un(c)?s.getContextualType(c):void 0)||s.getTypeAtLocation(c)}var ycn="fixOverrideModifier",V1e="fixAddOverrideModifier",VPe="fixRemoveOverrideModifier",bcn=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],Ecn={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};xg({errorCodes:bcn,getCodeActions:function(c){let{errorCode:g,span:d}=c,h=Ecn[g];if(!h)return E;let{descriptions:_,fixId:S,fixAllDescriptions:R}=h,T=xo.ChangeTracker.with(c,W=>Scn(W,c,g,d.start));return[hYt(ycn,T,_,S,R)]},fixIds:[ycn,V1e,VPe],getAllCodeActions:s=>Qd(s,bcn,(c,g)=>{let{code:d,start:h}=g,_=Ecn[d];!_||_.fixId!==s.fixId||Scn(c,s,d,h)})});function Scn(s,c,g,d){switch(g){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return kGs(s,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return xGs(s,c.sourceFile,d);default:pe.fail("Unexpected error code: "+g)}}function kGs(s,c,g){let d=Bcn(c,g);if(n0(c)){s.addJSDocTags(c,d,[me.createJSDocOverrideTag(me.createIdentifier("override"))]);return}let h=d.modifiers||E,_=de(h,Ge),S=de(h,Xe),R=de(h,M=>Nrt(M.kind)),T=be(h,So),W=S?S.end:_?_.end:R?R.end:T?Yu(c.text,T.end):d.getStart(c),V=R||_||S?{prefix:" "}:{suffix:" "};s.insertModifierAt(c,W,164,V)}function xGs(s,c,g){let d=Bcn(c,g);if(n0(c)){s.filterJSDocTags(c,d,uC($Le));return}let h=de(d.modifiers,bt);pe.assertIsDefined(h),s.deleteModifier(c,h)}function vcn(s){switch(s.kind){case 177:case 173:case 175:case 178:case 179:return!0;case 170:return Ve(s,s.parent);default:return!1}}function Bcn(s,c){let g=Jc(s,c),d=ji(g,h=>xa(h)?"quit":vcn(h));return pe.assert(d&&vcn(d)),d}var $Yt="fixNoPropertyAccessFromIndexSignature",wcn=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];xg({errorCodes:wcn,fixIds:[$Yt],getCodeActions(s){let{sourceFile:c,span:g,preferences:d}=s,h=Rcn(c,g.start),_=xo.ChangeTracker.with(s,S=>Tcn(S,s.sourceFile,h,d));return[ug($Yt,_,[Z.Use_element_access_for_0,h.name.text],$Yt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:s=>Qd(s,wcn,(c,g)=>Tcn(c,g.file,Rcn(g.file,g.start),s.preferences))});function Tcn(s,c,g,d){let h=_1(c,d),_=me.createStringLiteral(g.name.text,h===0);s.replaceNode(c,g,vx(g)?me.createElementAccessChain(g.expression,g.questionDotToken,_):me.createElementAccessExpression(g.expression,_))}function Rcn(s,c){return Ma(Jc(s,c).parent,jo)}var eQt="fixImplicitThis",Ncn=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];xg({errorCodes:Ncn,getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_,S=xo.ChangeTracker.with(c,R=>{_=Dcn(R,g,h.start,d.getTypeChecker())});return _?[ug(eQt,S,_,eQt,Z.Fix_all_implicit_this_errors)]:E},fixIds:[eQt],getAllCodeActions:s=>Qd(s,Ncn,(c,g)=>{Dcn(c,g.file,g.start,s.program.getTypeChecker())})});function Dcn(s,c,g,d){let h=Jc(c,g);if(!Oie(h))return;let _=r0(h,!1,!1);if(!(!ih(_)&&!UA(_))&&!ll(r0(_,!1,!1))){let S=pe.checkDefined(qd(_,100,c)),{name:R}=_,T=pe.checkDefined(_.body);return UA(_)?R&&Kp.Core.isSymbolReferencedInFile(R,d,c,T)?void 0:(s.delete(c,S),R&&s.delete(c,R),s.insertText(c,T.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:tnt]):(s.replaceNode(c,S,me.createToken(87)),s.insertText(c,R.end," = "),s.insertText(c,T.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var tQt="fixImportNonExportedMember",kcn=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];xg({errorCodes:kcn,fixIds:[tQt],getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=xcn(c,g.start,d);if(h===void 0)return;let _=xo.ChangeTracker.with(s,S=>GGs(S,d,h));return[ug(tQt,_,[Z.Export_0_from_module_1,h.exportName.node.text,h.moduleSpecifier],tQt,Z.Export_all_referenced_locals)]},getAllCodeActions(s){let{program:c}=s;return Hz(xo.ChangeTracker.with(s,g=>{let d=new Map;Yz(s,kcn,h=>{let _=xcn(h.file,h.start,c);if(_===void 0)return;let{exportName:S,node:R,moduleSourceFile:T}=_;if(dit(T,S.isTypeOnly)===void 0&&Kne(R))g.insertExportModifier(T,R);else{let W=d.get(T)||{typeOnlyExports:[],exports:[]};S.isTypeOnly?W.typeOnlyExports.push(S):W.exports.push(S),d.set(T,W)}}),d.forEach((h,_)=>{let S=dit(_,!0);S&&S.isTypeOnly?(rQt(g,c,_,h.typeOnlyExports,S),rQt(g,c,_,h.exports,dit(_,!1))):rQt(g,c,_,[...h.exports,...h.typeOnlyExports],S)})}))}});function xcn(s,c,g){var d,h;let _=Jc(s,c);if(Ir(_)){let S=ji(_,Mf);if(S===void 0)return;let R=Zg(S.moduleSpecifier)?S.moduleSpecifier:void 0;if(R===void 0)return;let T=(d=g.getResolvedModuleFromModuleSpecifier(R,s))==null?void 0:d.resolvedModule;if(T===void 0)return;let W=g.getSourceFile(T.resolvedFileName);if(W===void 0||zie(g,W))return;let V=W.symbol,M=(h=Gs(V.valueDeclaration,WI))==null?void 0:h.locals;if(M===void 0)return;let ee=M.get(_.escapedText);if(ee===void 0)return;let re=FGs(ee);return re===void 0?void 0:{exportName:{node:_,isTypeOnly:KY(re)},node:re,moduleSourceFile:W,moduleSpecifier:R.text}}}function GGs(s,c,{exportName:g,node:d,moduleSourceFile:h}){let _=dit(h,g.isTypeOnly);_?Gcn(s,c,h,_,[g]):Kne(d)?s.insertExportModifier(h,d):Fcn(s,c,h,[g])}function rQt(s,c,g,d,h){B(d)&&(h?Gcn(s,c,g,h,d):Fcn(s,c,g,d))}function dit(s,c){let g=d=>Gh(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return be(s.statements,g)}function Gcn(s,c,g,d,h){let _=d.exportClause&&mv(d.exportClause)?d.exportClause.elements:me.createNodeArray([]),S=!d.isTypeOnly&&!!(sS(c.getCompilerOptions())||de(_,R=>R.isTypeOnly));s.replaceNode(g,d,me.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,me.createNamedExports(me.createNodeArray([..._,...Zcn(h,S)],_.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function Fcn(s,c,g,d){s.insertNodeAtEndOfScope(g,g,me.createExportDeclaration(void 0,!1,me.createNamedExports(Zcn(d,sS(c.getCompilerOptions()))),void 0,void 0))}function Zcn(s,c){return me.createNodeArray(At(s,g=>me.createExportSpecifier(c&&g.isTypeOnly,void 0,g.node)))}function FGs(s){if(s.valueDeclaration===void 0)return Nc(s.declarations);let c=s.valueDeclaration,g=nc(c)?Gs(c.parent.parent,Ch):void 0;return g&&B(g.declarationList.declarations)===1?g:c}var nQt="fixIncorrectNamedTupleSyntax",ZGs=[Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];xg({errorCodes:ZGs,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=LGs(g,d.start),_=xo.ChangeTracker.with(c,S=>VGs(S,g,h));return[ug(nQt,_,Z.Move_labeled_tuple_element_modifiers_to_labels,nQt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[nQt]});function LGs(s,c){let g=Jc(s,c);return ji(g,d=>d.kind===203)}function VGs(s,c,g){if(!g)return;let d=g.type,h=!1,_=!1;for(;d.kind===191||d.kind===192||d.kind===197;)d.kind===191?h=!0:d.kind===192&&(_=!0),d=d.type;let S=me.updateNamedTupleMember(g,g.dotDotDotToken||(_?me.createToken(26):void 0),g.name,g.questionToken||(h?me.createToken(58):void 0),d);S!==g&&s.replaceNode(c,g,S)}var Lcn="fixSpelling",Vcn=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];xg({errorCodes:Vcn,getCodeActions(s){let{sourceFile:c,errorCode:g}=s,d=Pcn(c,s.span.start,s,g);if(!d)return;let{node:h,suggestedSymbol:_}=d,S=Mg(s.host.getCompilationSettings()),R=xo.ChangeTracker.with(s,T=>Wcn(T,c,h,_,S));return[ug("spelling",R,[Z.Change_spelling_to_0,nf(_)],Lcn,Z.Fix_all_detected_spelling_errors)]},fixIds:[Lcn],getAllCodeActions:s=>Qd(s,Vcn,(c,g)=>{let d=Pcn(g.file,g.start,s,g.code),h=Mg(s.host.getCompilationSettings());d&&Wcn(c,s.sourceFile,d.node,d.suggestedSymbol,h)})});function Pcn(s,c,g,d){let h=Jc(s,c),_=h.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!EN(_))return;let S=g.program.getTypeChecker(),R;if(jo(_)&&_.name===h){pe.assert(_w(h),"Expected an identifier for spelling (property access)");let T=S.getTypeAtLocation(_.expression);_.flags&64&&(T=S.getNonNullableType(T)),R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(fo(_)&&_.operatorToken.kind===103&&_.left===h&&p(h)){let T=S.getTypeAtLocation(_.right);R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(zi(_)&&_.right===h){let T=S.getSymbolAtLocation(_.left);T&&T.flags&1536&&(R=S.getSuggestedSymbolForNonexistentModule(_.right,T))}else if(uy(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for spelling (import)");let T=ji(h,Mf),W=WGs(g,T,s);W&&W.symbol&&(R=S.getSuggestedSymbolForNonexistentModule(h,W.symbol))}else if(EN(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for JSX attribute");let T=ji(h,eI),W=S.getContextualTypeForArgumentAtIndex(T,0);R=S.getSuggestedSymbolForNonexistentJSXAttribute(h,W)}else if(Tne(_)&&PI(_)&&_.name===h){let T=ji(h,xa),W=T?BB(T):void 0,V=W?S.getTypeAtLocation(W):void 0;V&&(R=S.getSuggestedSymbolForNonexistentClassMember(xp(h),V))}else{let T=DU(h),W=xp(h);pe.assert(W!==void 0,"name should be defined"),R=S.getSuggestedSymbolForNonexistentSymbol(h,W,PGs(T))}return R===void 0?void 0:{node:h,suggestedSymbol:R}}function Wcn(s,c,g,d,h){let _=nf(d);if(!Uh(_,h)&&jo(g.parent)){let S=d.valueDeclaration;S&&rh(S)&&p(S.name)?s.replaceNode(c,g,me.createIdentifier(_)):s.replaceNode(c,g.parent,me.createElementAccessExpression(g.parent.expression,me.createStringLiteral(_)))}else s.replaceNode(c,g,me.createIdentifier(_))}function PGs(s){let c=0;return s&4&&(c|=1920),s&2&&(c|=788968),s&1&&(c|=111551),c}function WGs(s,c,g){var d;if(!c||!mA(c.moduleSpecifier))return;let h=(d=s.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,g))==null?void 0:d.resolvedModule;if(h)return s.program.getSourceFile(h.resolvedFileName)}var iQt="returnValueCorrect",sQt="fixAddReturnStatement",oQt="fixRemoveBracesFromArrowFunctionBody",aQt="fixWrapTheBlockWithParen",Ocn=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];xg({errorCodes:Ocn,fixIds:[sQt,oQt,aQt],getCodeActions:function(c){let{program:g,sourceFile:d,span:{start:h},errorCode:_}=c,S=Hcn(g.getTypeChecker(),d,h,_);if(S)return S.kind===0?Ft([MGs(c,S.expression,S.statement)],lA(S.declaration)?HGs(c,S.declaration,S.expression,S.commentSource):void 0):[YGs(c,S.declaration,S.expression)]},getAllCodeActions:s=>Qd(s,Ocn,(c,g)=>{let d=Hcn(s.program.getTypeChecker(),g.file,g.start,g.code);if(d)switch(s.fixId){case sQt:Ycn(c,g.file,d.expression,d.statement);break;case oQt:if(!lA(d.declaration))return;Qcn(c,g.file,d.declaration,d.expression,d.commentSource,!1);break;case aQt:if(!lA(d.declaration))return;Xcn(c,g.file,d.declaration,d.expression);break;default:pe.fail(JSON.stringify(s.fixId))}})});function Mcn(s,c,g){let d=s.createSymbol(4,c.escapedText);d.links.type=s.getTypeAtLocation(g);let h=qu([d]);return s.createAnonymousType(void 0,h,[],[],[])}function cQt(s,c,g,d){if(!c.body||!$u(c.body)||B(c.body.statements)!==1)return;let h=ma(c.body.statements);if(VC(h)&&lQt(s,c,s.getTypeAtLocation(h.expression),g,d))return{declaration:c,kind:0,expression:h.expression,statement:h,commentSource:h.expression};if(FP(h)&&VC(h.statement)){let _=me.createObjectLiteralExpression([me.createPropertyAssignment(h.label,h.statement.expression)]),S=Mcn(s,h.label,h.statement.expression);if(lQt(s,c,S,g,d))return lA(c)?{declaration:c,kind:1,expression:_,statement:h,commentSource:h.statement.expression}:{declaration:c,kind:0,expression:_,statement:h,commentSource:h.statement.expression}}else if($u(h)&&B(h.statements)===1){let _=ma(h.statements);if(FP(_)&&VC(_.statement)){let S=me.createObjectLiteralExpression([me.createPropertyAssignment(_.label,_.statement.expression)]),R=Mcn(s,_.label,_.statement.expression);if(lQt(s,c,R,g,d))return{declaration:c,kind:0,expression:S,statement:h,commentSource:_}}}}function lQt(s,c,g,d,h){if(h){let _=s.getSignatureFromDeclaration(c);if(_){Ga(c,1024)&&(g=s.createPromiseType(g));let S=s.createSignature(c,_.typeParameters,_.thisParameter,_.parameters,g,void 0,_.minArgumentCount,_.flags);g=s.createAnonymousType(void 0,qu(),[S],[],[])}else g=s.getAnyType()}return s.isTypeAssignableTo(g,d)}function Hcn(s,c,g,d){let h=Jc(c,g);if(!h.parent)return;let _=ji(h.parent,kd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!_||!_.body||!_.type||!cy(_.type,h)?void 0:cQt(s,_,s.getTypeFromTypeNode(_.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!_||!Zl(_.parent)||!_.body)return;let S=_.parent.arguments.indexOf(_);if(S===-1)return;let R=s.getContextualTypeForArgumentAtIndex(_.parent,S);return R?cQt(s,_,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!HT(h)||!I7(h.parent)&&!EN(h.parent))return;let T=OGs(h.parent);return!T||!kd(T)||!T.body?void 0:cQt(s,T,s.getTypeAtLocation(h.parent),!0)}}function OGs(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:return s.initializer;case 292:return s.initializer&&(pie(s.initializer)?s.initializer.expression:void 0);case 305:case 172:case 307:case 349:case 342:return}}function Ycn(s,c,g,d){Vy(g);let h=C1e(c);s.replaceNode(c,d,me.createReturnStatement(g),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,suffix:h?";":void 0})}function Qcn(s,c,g,d,h,_){let S=_||ePe(d)?me.createParenthesizedExpression(d):d;Vy(h),xU(h,S),s.replaceNode(c,g.body,S)}function Xcn(s,c,g,d){s.replaceNode(c,g.body,me.createParenthesizedExpression(d))}function MGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>Ycn(h,s.sourceFile,c,g));return ug(iQt,d,Z.Add_a_return_statement,sQt,Z.Add_all_missing_return_statement)}function HGs(s,c,g,d){let h=xo.ChangeTracker.with(s,_=>Qcn(_,s.sourceFile,c,g,d,!1));return ug(iQt,h,Z.Remove_braces_from_arrow_function_body,oQt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function YGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>Xcn(h,s.sourceFile,c,g));return ug(iQt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,aQt,Z.Wrap_all_object_literal_with_parentheses)}var r5="fixMissingMember",pit="fixMissingProperties",fit="fixMissingAttributes",Iit="fixMissingFunctionDeclaration",Jcn=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code,Z.Type_0_does_not_satisfy_the_expected_type_1.code];xg({errorCodes:Jcn,getCodeActions(s){let c=s.program.getTypeChecker(),g=Ucn(s.sourceFile,s.span.start,s.errorCode,c,s.program);if(g){if(g.kind===3){let d=xo.ChangeTracker.with(s,h=>iln(h,s,g));return[ug(pit,d,Z.Add_missing_properties,pit,Z.Add_all_missing_properties)]}if(g.kind===4){let d=xo.ChangeTracker.with(s,h=>nln(h,s,g));return[ug(fit,d,Z.Add_missing_attributes,fit,Z.Add_all_missing_attributes)]}if(g.kind===2||g.kind===5){let d=xo.ChangeTracker.with(s,h=>rln(h,s,g));return[ug(Iit,d,[Z.Add_missing_function_declaration_0,g.token.text],Iit,Z.Add_all_missing_function_declarations)]}if(g.kind===1){let d=xo.ChangeTracker.with(s,h=>tln(h,s.program.getTypeChecker(),g));return[ug(r5,d,[Z.Add_missing_enum_member_0,g.token.text],r5,Z.Add_all_missing_members)]}return Nn(KGs(s,g),QGs(s,g))}},fixIds:[r5,Iit,pit,fit],getAllCodeActions:s=>{let{program:c,fixId:g}=s,d=c.getTypeChecker(),h=new Set,_=new Map;return Hz(xo.ChangeTracker.with(s,S=>{Yz(s,Jcn,R=>{let T=Ucn(R.file,R.start,R.code,d,s.program);if(T===void 0)return;let W=rd(T.parentDeclaration)+"#"+(T.kind===3?T.identifier||rd(T.token):T.token.text);if(Zy(h,W)){if(g===Iit&&(T.kind===2||T.kind===5))rln(S,s,T);else if(g===pit&&T.kind===3)iln(S,s,T);else if(g===fit&&T.kind===4)nln(S,s,T);else if(T.kind===1&&tln(S,d,T),T.kind===0){let{parentDeclaration:V,token:M}=T,ee=cr(_,V,()=>[]);ee.some(re=>re.token.text===M.text)||ee.push(T)}}}),_.forEach((R,T)=>{let W=mh(T)?void 0:eFs(T,d);for(let V of R){if(W?.some(Ee=>{let Ne=_.get(Ee);return!!Ne&&Ne.some(({token:Te})=>Te.text===V.token.text)}))continue;let{parentDeclaration:M,declSourceFile:ee,modifierFlags:re,token:ge,call:Ie,isJSFile:_e}=V;if(Ie&&!p(ge))eln(s,S,Ie,ge,re&256,M,ee);else if(_e&&!g_(M)&&!mh(M))Kcn(S,ee,M,ge,!!(re&256));else{let Ee=zcn(d,M,ge);qcn(S,ee,M,ge.text,Ee,re&256)}}})}))}});function Ucn(s,c,g,d,h){var _,S;let R=Jc(s,c),T=R.parent;if(g===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(R.kind===19&&og(T)&&Zl(T.parent)))return;let ge=Se(T.parent.arguments,Ne=>Ne===T);if(ge<0)return;let Ie=d.getResolvedSignature(T.parent);if(!(Ie&&Ie.declaration&&Ie.parameters[ge]))return;let _e=Ie.parameters[ge].valueDeclaration;if(!(_e&&Si(_e)&&Ir(_e.name)))return;let Ee=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),d.getParameterType(Ie,ge).getNonNullableType(),!1,!1));return B(Ee)?{kind:3,token:_e.name,identifier:_e.name.text,properties:Ee,parentDeclaration:T}:void 0}if(R.kind===19||Qg(T)||I2(T)){let ge=(Qg(T)||I2(T))&&T.expression?T.expression:T;if(og(ge)){let Ie=Qg(T)?d.getTypeFromTypeNode(T.type):d.getContextualType(ge)||d.getTypeAtLocation(ge),_e=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),Ie.getNonNullableType(),!1,!1));return B(_e)?{kind:3,token:T,identifier:void 0,properties:_e,parentDeclaration:ge,indentation:I2(ge.parent)||Hd(ge.parent)?0:void 0}:void 0}}if(!_w(R))return;if(Ir(R)&&WT(T)&&T.initializer&&og(T.initializer)){let ge=(_=d.getContextualType(R)||d.getTypeAtLocation(R))==null?void 0:_.getNonNullableType(),Ie=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T.initializer),ge,!1,!1));return B(Ie)?{kind:3,token:R,identifier:R.text,properties:Ie,parentDeclaration:T.initializer}:void 0}if(Ir(R)&&eI(R.parent)){let ge=Mg(h.getCompilerOptions()),Ie=zGs(d,ge,R.parent);return B(Ie)?{kind:4,token:R,attributes:Ie,parentDeclaration:R.parent}:void 0}if(Ir(R)){let ge=(S=d.getContextualType(R))==null?void 0:S.getNonNullableType();if(ge&&la(ge)&16){let Ie=Nc(d.getSignaturesOfType(ge,0));return Ie===void 0?void 0:{kind:5,token:R,signature:Ie,sourceFile:s,parentDeclaration:sln(R)}}if(Zl(T)&&T.expression===R)return{kind:2,token:R,call:T,sourceFile:s,modifierFlags:0,parentDeclaration:sln(R)}}if(!jo(T))return;let W=Zrt(d.getTypeAtLocation(T.expression)),V=W.symbol;if(!V||!V.declarations)return;if(Ir(R)&&Zl(T.parent)){let ge=de(V.declarations,xh),Ie=ge?.getSourceFile();if(ge&&Ie&&!zie(h,Ie))return{kind:2,token:R,call:T.parent,sourceFile:Ie,modifierFlags:32,parentDeclaration:ge};let _e=de(V.declarations,ll);if(s.commonJsModuleIndicator)return;if(_e&&!zie(h,_e))return{kind:2,token:R,call:T.parent,sourceFile:_e,modifierFlags:32,parentDeclaration:_e}}let M=de(V.declarations,xa);if(!M&&p(R))return;let ee=M||de(V.declarations,ge=>g_(ge)||mh(ge));if(ee&&!zie(h,ee.getSourceFile())){let ge=!mh(ee)&&(W.target||W)!==d.getDeclaredTypeOfSymbol(V);if(ge&&(p(R)||g_(ee)))return;let Ie=ee.getSourceFile(),_e=mh(ee)?0:(ge?256:0)|(lnt(R.text)?2:0),Ee=n0(Ie),Ne=Gs(T.parent,Zl);return{kind:0,token:R,call:Ne,modifierFlags:_e,parentDeclaration:ee,declSourceFile:Ie,isJSFile:Ee}}let re=de(V.declarations,V3);if(re&&!(W.flags&1056)&&!p(R)&&!zie(h,re.getSourceFile()))return{kind:1,token:R,parentDeclaration:re}}function QGs(s,c){return c.isJSFile?J_(XGs(s,c)):JGs(s,c)}function XGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){if(g_(c)||mh(c))return;let _=xo.ChangeTracker.with(s,R=>Kcn(R,g,c,h,!!(d&256)));if(_.length===0)return;let S=d&256?Z.Initialize_static_property_0:p(h)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return ug(r5,_,[S,h.text],r5,Z.Add_all_missing_members)}function Kcn(s,c,g,d,h){let _=d.text;if(h){if(g.kind===232)return;let S=g.name.getText(),R=jcn(me.createIdentifier(S),_);s.insertNodeAfter(c,g,R)}else if(p(d)){let S=me.createPropertyDeclaration(void 0,_,void 0,void 0,void 0),R=$cn(g);R?s.insertNodeAfter(c,R,S):s.insertMemberAtStart(c,g,S)}else{let S=lN(g);if(!S)return;let R=jcn(me.createThis(),_);s.insertNodeAtConstructorEnd(c,S,R)}}function jcn(s,c){return me.createExpressionStatement(me.createAssignment(me.createPropertyAccessExpression(s,c),Xz()))}function JGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){let _=h.text,S=d&256,R=zcn(s.program.getTypeChecker(),c,h),T=V=>xo.ChangeTracker.with(s,M=>qcn(M,g,c,_,R,V)),W=[ug(r5,T(d&256),[S?Z.Declare_static_property_0:Z.Declare_property_0,_],r5,Z.Add_all_missing_members)];return S||p(h)||(d&2&&W.unshift(sR(r5,T(2),[Z.Declare_private_property_0,_])),W.push(UGs(s,g,c,h.text,R))),W}function zcn(s,c,g){let d;if(g.parent.parent.kind===227){let h=g.parent.parent,_=g.parent===h.left?h.right:h.left,S=s.getWidenedType(s.getBaseTypeOfLiteralType(s.getTypeAtLocation(_)));d=s.typeToTypeNode(S,c,1,8)}else{let h=s.getContextualType(g.parent);d=h?s.typeToTypeNode(h,void 0,1,8):void 0}return d||me.createKeywordTypeNode(133)}function qcn(s,c,g,d,h,_){let S=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,R=xa(g)?me.createPropertyDeclaration(S,d,void 0,h,void 0):me.createPropertySignature(void 0,d,void 0,h),T=$cn(g);T?s.insertNodeAfter(c,T,R):s.insertMemberAtStart(c,g,R)}function $cn(s){let c;for(let g of s.members){if(!pi(g))break;c=g}return c}function UGs(s,c,g,d,h){let _=me.createKeywordTypeNode(154),S=me.createParameterDeclaration(void 0,void 0,"x",void 0,_,void 0),R=me.createIndexSignature(void 0,[S],h),T=xo.ChangeTracker.with(s,W=>W.insertMemberAtStart(c,g,R));return sR(r5,T,[Z.Add_index_signature_for_property_0,d])}function KGs(s,c){let{parentDeclaration:g,declSourceFile:d,modifierFlags:h,token:_,call:S}=c;if(S===void 0)return;let R=_.text,T=V=>xo.ChangeTracker.with(s,M=>eln(s,M,S,_,V,g,d)),W=[ug(r5,T(h&256),[h&256?Z.Declare_static_method_0:Z.Declare_method_0,R],r5,Z.Add_all_missing_members)];return h&2&&W.unshift(sR(r5,T(2),[Z.Declare_private_method_0,R])),W}function eln(s,c,g,d,h,_,S){let R=yQ(S,s.program,s.preferences,s.host),T=xa(_)?175:174,W=PQt(T,s,R,g,d,h,_),V=qGs(_,g);V?c.insertNodeAfter(S,V,W):c.insertMemberAtStart(S,_,W),R.writeFixes(c)}function tln(s,c,{token:g,parentDeclaration:d}){let h=jt(d.members,T=>{let W=c.getTypeAtLocation(T);return!!(W&&W.flags&402653316)}),_=d.getSourceFile(),S=me.createEnumMember(g,h?me.createStringLiteral(g.text):void 0),R=li(d.members);R?s.insertNodeInListAfter(_,R,S,d.members):s.insertMemberAtStart(_,d,S)}function rln(s,c,g){let d=_1(c.sourceFile,c.preferences),h=yQ(c.sourceFile,c.program,c.preferences,c.host),_=g.kind===2?PQt(263,c,h,g.call,Vo(g.token),g.modifierFlags,g.parentDeclaration):Bit(263,c,d,g.signature,WPe(Z.Function_not_implemented.message,d),g.token,void 0,void 0,void 0,h);_===void 0&&pe.fail("fixMissingFunctionDeclaration codefix got unexpected error."),I2(g.parentDeclaration)?s.insertNodeBefore(g.sourceFile,g.parentDeclaration,_,!0):s.insertNodeAtEndOfScope(g.sourceFile,g.parentDeclaration,_),h.writeFixes(s)}function nln(s,c,g){let d=yQ(c.sourceFile,c.program,c.preferences,c.host),h=_1(c.sourceFile,c.preferences),_=c.program.getTypeChecker(),S=g.parentDeclaration.attributes,R=jt(S.properties,yz),T=At(g.attributes,M=>{let ee=hit(c,_,d,h,_.getTypeOfSymbol(M),g.parentDeclaration),re=me.createIdentifier(M.name),ge=me.createJsxAttribute(re,me.createJsxExpression(void 0,ee));return XA(re,ge),ge}),W=me.createJsxAttributes(R?[...T,...S.properties]:[...S.properties,...T]),V={prefix:S.pos===S.end?" ":void 0};s.replaceNode(c.sourceFile,S,W,V),d.writeFixes(s)}function iln(s,c,g){let d=yQ(c.sourceFile,c.program,c.preferences,c.host),h=_1(c.sourceFile,c.preferences),_=Mg(c.program.getCompilerOptions()),S=c.program.getTypeChecker(),R=At(g.properties,W=>{let V=hit(c,S,d,h,S.getTypeOfSymbol(W),g.parentDeclaration);return me.createPropertyAssignment($Gs(W,_,h,S),V)}),T={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,indentation:g.indentation};s.replaceNode(c.sourceFile,g.parentDeclaration,me.createObjectLiteralExpression([...g.parentDeclaration.properties,...R],!0),T),d.writeFixes(s)}function hit(s,c,g,d,h,_){if(h.flags&3)return Xz();if(h.flags&134217732)return me.createStringLiteral("",d===0);if(h.flags&8)return me.createNumericLiteral(0);if(h.flags&64)return me.createBigIntLiteral("0n");if(h.flags&16)return me.createFalse();if(h.flags&1056){let S=h.symbol.exports?iA(h.symbol.exports.values()):h.symbol,R=h.symbol.parent&&h.symbol.parent.flags&256?h.symbol.parent:h.symbol,T=c.symbolToExpression(R,111551,void 0,64);return S===void 0||T===void 0?me.createNumericLiteral(0):me.createPropertyAccessExpression(T,c.symbolToString(S))}if(h.flags&256)return me.createNumericLiteral(h.value);if(h.flags&2048)return me.createBigIntLiteral(h.value);if(h.flags&128)return me.createStringLiteral(h.value,d===0);if(h.flags&512)return h===c.getFalseType()||h===c.getFalseType(!0)?me.createFalse():me.createTrue();if(h.flags&65536)return me.createNull();if(h.flags&1048576)return X(h.types,R=>hit(s,c,g,d,R,_))??Xz();if(c.isArrayLikeType(h))return me.createArrayLiteralExpression();if(jGs(h)){let S=At(c.getPropertiesOfType(h),R=>{let T=hit(s,c,g,d,c.getTypeOfSymbol(R),_);return me.createPropertyAssignment(R.name,T)});return me.createObjectLiteralExpression(S,!0)}if(la(h)&16){if(de(h.symbol.declarations||E,Hp(x_,hl,uu))===void 0)return Xz();let R=c.getSignaturesOfType(h,0);return R===void 0?Xz():Bit(219,s,d,R[0],WPe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,_,g)??Xz()}if(la(h)&1){let S=AN(h.symbol);if(S===void 0||wP(S))return Xz();let R=lN(S);return R&&B(R.parameters)?Xz():me.createNewExpression(me.createIdentifier(h.symbol.name),void 0,void 0)}return Xz()}function Xz(){return me.createIdentifier("undefined")}function jGs(s){return s.flags&524288&&(la(s)&128||s.symbol&&Gs(Ps(s.symbol.declarations),mh))}function zGs(s,c,g){let d=s.getContextualType(g.attributes);if(d===void 0)return E;let h=d.getProperties();if(!B(h))return E;let _=new Set;for(let S of g.attributes.properties)if(EN(S)&&_.add(cz(S.name)),yz(S)){let R=s.getTypeAtLocation(S.expression);for(let T of R.getProperties())_.add(T.escapedName)}return Me(h,S=>Uh(S.name,c,1)&&!(S.flags&16777216||iI(S)&48||_.has(S.escapedName)))}function qGs(s,c){if(mh(s))return;let g=ji(c,d=>uu(d)||Tc(d));return g&&g.parent===s?g:void 0}function $Gs(s,c,g,d){if(bw(s)){let h=d.symbolToNode(s,111551,void 0,void 0,1);if(h&&Un(h))return h}return Une(s.name,c,g===0,!1,!1)}function sln(s){if(ji(s,pie)){let c=ji(s.parent,I2);if(c)return c}return ms(s)}function eFs(s,c){let g=[];for(;s;){let d=OL(s),h=d&&c.getSymbolAtLocation(d.expression);if(!h)break;let _=h.flags&2097152?c.getAliasedSymbol(h):h,S=_.declarations&&de(_.declarations,xa);if(!S)break;g.push(S),s=S}return g}var uQt="addMissingNewOperator",oln=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];xg({errorCodes:oln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=xo.ChangeTracker.with(s,h=>aln(h,c,g));return[ug(uQt,d,Z.Add_missing_new_operator_to_call,uQt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[uQt],getAllCodeActions:s=>Qd(s,oln,(c,g)=>aln(c,s.sourceFile,g))});function aln(s,c,g){let d=Ma(tFs(c,g),Zl),h=me.createNewExpression(d.expression,d.typeArguments,d.arguments);s.replaceNode(c,d,h)}function tFs(s,c){let g=Jc(s,c.start),d=Rs(c);for(;g.end_it(R,s.program,s.preferences,s.host,d,h)),[B(h)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,g],mit,Z.Add_all_missing_parameters)),B(_)&&Ft(S,ug(Cit,xo.ChangeTracker.with(s,R=>_it(R,s.program,s.preferences,s.host,d,_)),[B(_)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,g],Cit,Z.Add_all_optional_parameters)),S},getAllCodeActions:s=>Qd(s,cln,(c,g)=>{let d=lln(s.sourceFile,s.program,g.start);if(d){let{declarations:h,newParameters:_,newOptionalParameters:S}=d;s.fixId===mit&&_it(c,s.program,s.preferences,s.host,h,_),s.fixId===Cit&&_it(c,s.program,s.preferences,s.host,h,S)}})});function lln(s,c,g){let d=Jc(s,g),h=ji(d,Zl);if(h===void 0||B(h.arguments)===0)return;let _=c.getTypeChecker(),S=_.getTypeAtLocation(h.expression),R=Me(S.symbol.declarations,uln);if(R===void 0)return;let T=li(R);if(T===void 0||T.body===void 0||zie(c,T.getSourceFile()))return;let W=rFs(T);if(W===void 0)return;let V=[],M=[],ee=B(T.parameters),re=B(h.arguments);if(ee>re)return;let ge=[T,...iFs(T,R)];for(let Ie=0,_e=0,Ee=0;Ie{let T=ms(R),W=yQ(T,c,g,d);B(R.parameters)?s.replaceNodeRangeWithNodes(T,ma(R.parameters),Ei(R.parameters),gln(W,S,R,_),{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include}):F(gln(W,S,R,_),(V,M)=>{B(R.parameters)===0&&M===0?s.insertNodeAt(T,R.parameters.end,V):s.insertNodeAtEndOfList(T,R.parameters,V)}),W.writeFixes(s)})}function uln(s){switch(s.kind){case 263:case 219:case 175:case 220:return!0;default:return!1}}function gln(s,c,g,d){let h=At(g.parameters,_=>me.createParameterDeclaration(_.modifiers,_.dotDotDotToken,_.name,_.questionToken,_.type,_.initializer));for(let{pos:_,declaration:S}of d){let R=_>0?h[_-1]:void 0;h.splice(_,0,me.updateParameterDeclaration(S,S.modifiers,S.dotDotDotToken,S.name,R&&R.questionToken?me.createToken(58):S.questionToken,aFs(s,S.type,c),S.initializer))}return h}function iFs(s,c){let g=[];for(let d of c)if(sFs(d)){if(B(d.parameters)===B(s.parameters)){g.push(d);continue}if(B(d.parameters)>B(s.parameters))return[]}return g}function sFs(s){return uln(s)&&s.body===void 0}function Aln(s,c,g){return me.createParameterDeclaration(void 0,void 0,s,g,c,void 0)}function oFs(s,c){return B(s)&&jt(s,g=>cQd(s,fln,(c,g,d)=>{let h=hln(g.file,g.start);if(h!==void 0)switch(s.fixId){case gQt:{let _=mln(h,s.host,g.code);_&&d.push(Iln(g.file.fileName,_));break}default:pe.fail(`Bad fixId: ${s.fixId}`)}})});function Iln(s,c){return{type:"install package",file:s,packageName:c}}function hln(s,c){let g=Gs(Jc(s,c),Zg);if(!g)return;let d=g.text,{packageName:h}=TEe(d);return Xr(h)?void 0:h}function mln(s,c,g){var d;return g===dln?dU.has(s)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,s)?G9e(s):void 0}var Cln=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],AQt="fixClassDoesntImplementInheritedAbstractMember";xg({errorCodes:Cln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=xo.ChangeTracker.with(c,_=>yln(_ln(g,d.start),g,c,_,c.preferences));return h.length===0?void 0:[ug(AQt,h,Z.Implement_inherited_abstract_class,AQt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[AQt],getAllCodeActions:function(c){let g=new Set;return Qd(c,Cln,(d,h)=>{let _=_ln(h.file,h.start);Zy(g,rd(_))&&yln(_,c.sourceFile,c,d,c.preferences)})}});function _ln(s,c){let g=Jc(s,c);return Ma(g.parent,xa)}function yln(s,c,g,d,h){let _=BB(s),S=g.program.getTypeChecker(),R=S.getTypeAtLocation(_),T=S.getPropertiesOfType(R).filter(lFs),W=yQ(c,g.program,h,g.host);VQt(s,T,c,g,h,W,V=>d.insertMemberAtStart(c,s,V)),W.writeFixes(d)}function lFs(s){let c=Nx(ma(s.getDeclarations()));return!(c&2)&&!!(c&64)}var dQt="classSuperMustPrecedeThisAccess",bln=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];xg({errorCodes:bln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Sln(c,g.start);if(!d)return;let{constructor:h,superCall:_}=d,S=xo.ChangeTracker.with(s,R=>Eln(R,c,h,_));return[ug(dQt,S,Z.Make_super_call_the_first_statement_in_the_constructor,dQt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[dQt],getAllCodeActions(s){let{sourceFile:c}=s,g=new Set;return Qd(s,bln,(d,h)=>{let _=Sln(h.file,h.start);if(!_)return;let{constructor:S,superCall:R}=_;Zy(g,rd(S.parent))&&Eln(d,c,S,R)})}});function Eln(s,c,g,d){s.insertNodeAtConstructorStart(c,g,d),s.delete(c,d)}function Sln(s,c){let g=Jc(s,c);if(g.kind!==110)return;let d=A1(g),h=vln(d.body);return h&&!h.expression.arguments.some(_=>jo(_)&&_.expression===g)?{constructor:d,superCall:h}:void 0}function vln(s){return VC(s)&&Dy(s.expression)?s:bu(s)?void 0:Lu(s,vln)}var pQt="constructorForDerivedNeedSuperCall",Bln=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];xg({errorCodes:Bln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=wln(c,g.start),h=xo.ChangeTracker.with(s,_=>Tln(_,c,d));return[ug(pQt,h,Z.Add_missing_super_call,pQt,Z.Add_all_missing_super_calls)]},fixIds:[pQt],getAllCodeActions:s=>Qd(s,Bln,(c,g)=>Tln(c,s.sourceFile,wln(g.file,g.start)))});function wln(s,c){let g=Jc(s,c);return pe.assert(Tc(g.parent),"token should be at the constructor declaration"),g.parent}function Tln(s,c,g){let d=me.createExpressionStatement(me.createCallExpression(me.createSuper(),void 0,E));s.insertNodeAtConstructorStart(c,g,d)}var Rln="fixEnableJsxFlag",Nln=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];xg({errorCodes:Nln,getCodeActions:function(c){let{configFile:g}=c.program.getCompilerOptions();if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>Dln(h,g));return[sR(Rln,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[Rln],getAllCodeActions:s=>Qd(s,Nln,c=>{let{configFile:g}=s.program.getCompilerOptions();g!==void 0&&Dln(c,g)})});function Dln(s,c){YQt(s,c,"jsx",me.createStringLiteral("react"))}var fQt="fixNaNEquality",kln=[Z.This_condition_will_always_return_0.code];xg({errorCodes:kln,getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=xln(d,c,g);if(h===void 0)return;let{suggestion:_,expression:S,arg:R}=h,T=xo.ChangeTracker.with(s,W=>Gln(W,c,R,S));return[ug(fQt,T,[Z.Use_0,_],fQt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[fQt],getAllCodeActions:s=>Qd(s,kln,(c,g)=>{let d=xln(s.program,g.file,zd(g.start,g.length));d&&Gln(c,g.file,d.arg,d.expression)})});function xln(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.Did_you_mean_0.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=XQt(h.file,zd(h.start,h.length));if(_!==void 0&&un(_)&&fo(_.parent))return{suggestion:uFs(h.messageText),expression:_.parent,arg:_}}function Gln(s,c,g,d){let h=me.createCallExpression(me.createPropertyAccessExpression(me.createIdentifier("Number"),me.createIdentifier("isNaN")),void 0,[g]),_=d.operatorToken.kind;s.replaceNode(c,d,_===38||_===36?me.createPrefixUnaryExpression(54,h):h)}function uFs(s){let[,c]=wN(s,` -`,0).match(/'(.*)'/)||[];return c}xg({errorCodes:[Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(c){let g=c.program.getCompilerOptions(),{configFile:d}=g;if(d===void 0)return;let h=[],_=i0(g);if(_>=5&&_<99){let W=xo.ChangeTracker.with(c,V=>{YQt(V,d,"module",me.createStringLiteral("esnext"))});h.push(sR("fixModuleOption",W,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=Mg(g);if(R<4||R>99){let W=xo.ChangeTracker.with(c,V=>{if(!m7(d))return;let ee=[["target",me.createStringLiteral("es2017")]];_===1&&ee.push(["module",me.createStringLiteral("commonjs")]),HQt(V,d,ee)});h.push(sR("fixTargetOption",W,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return h.length?h:void 0}});var IQt="fixPropertyAssignment",Fln=[Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];xg({errorCodes:Fln,fixIds:[IQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=Lln(c,g.start),h=xo.ChangeTracker.with(s,_=>Zln(_,s.sourceFile,d));return[ug(IQt,h,[Z.Change_0_to_1,"=",":"],IQt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:s=>Qd(s,Fln,(c,g)=>Zln(c,g.file,Lln(g.file,g.start)))});function Zln(s,c,g){s.replaceNode(c,g,me.createPropertyAssignment(g.name,g.objectAssignmentInitializer))}function Lln(s,c){return Ma(Jc(s,c).parent,a0)}var hQt="extendsInterfaceBecomesImplements",Vln=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];xg({errorCodes:Vln,getCodeActions(s){let{sourceFile:c}=s,g=Pln(c,s.span.start);if(!g)return;let{extendsToken:d,heritageClauses:h}=g,_=xo.ChangeTracker.with(s,S=>Wln(S,c,d,h));return[ug(hQt,_,Z.Change_extends_to_implements,hQt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[hQt],getAllCodeActions:s=>Qd(s,Vln,(c,g)=>{let d=Pln(g.file,g.start);d&&Wln(c,g.file,d.extendsToken,d.heritageClauses)})});function Pln(s,c){let g=Jc(s,c),d=hC(g).heritageClauses,h=d[0].getFirstToken();return h.kind===96?{extendsToken:h,heritageClauses:d}:void 0}function Wln(s,c,g,d){if(s.replaceNode(c,g,me.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let h=d[1].getFirstToken(),_=h.getFullStart();s.replaceRange(c,{pos:_,end:_},me.createToken(28));let S=c.text,R=h.end;for(;RYln(h,c,g));return[ug(mQt,d,[Z.Add_0_to_unresolved_variable,g.className||"this"],mQt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[mQt],getAllCodeActions:s=>Qd(s,Mln,(c,g)=>{let d=Hln(g.file,g.start,g.code);d&&Yln(c,s.sourceFile,d)})});function Hln(s,c,g){let d=Jc(s,c);if(Ir(d)||p(d))return{node:d,className:g===Oln?hC(d).name.text:void 0}}function Yln(s,c,{node:g,className:d}){Vy(g),s.replaceNode(c,g,me.createPropertyAccessExpression(d?me.createIdentifier(d):me.createThis(),g))}var CQt="fixInvalidJsxCharacters_expression",yit="fixInvalidJsxCharacters_htmlEntity",Qln=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];xg({errorCodes:Qln,fixIds:[CQt,yit],getCodeActions(s){let{sourceFile:c,preferences:g,span:d}=s,h=xo.ChangeTracker.with(s,S=>_Qt(S,g,c,d.start,!1)),_=xo.ChangeTracker.with(s,S=>_Qt(S,g,c,d.start,!0));return[ug(CQt,h,Z.Wrap_invalid_character_in_an_expression_container,CQt,Z.Wrap_all_invalid_characters_in_an_expression_container),ug(yit,_,Z.Convert_invalid_character_to_its_html_entity_code,yit,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(s){return Qd(s,Qln,(c,g)=>_Qt(c,s.preferences,g.file,g.start,s.fixId===yit))}});var Xln={">":">","}":"}"};function gFs(s){return Da(Xln,s)}function _Qt(s,c,g,d,h){let _=g.getText()[d];if(!gFs(_))return;let S=h?Xln[_]:`{${zde(g,c,_)}}`;s.replaceRangeWithText(g,{pos:d,end:d+1},S)}var bit="deleteUnmatchedParameter",Jln="renameUnmatchedParameter",Uln=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];xg({fixIds:[bit,Jln],errorCodes:Uln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=[],_=Kln(g,d.start);if(_)return Ft(h,AFs(c,_)),Ft(h,dFs(c,_)),h},getAllCodeActions:function(c){let g=new Map;return Hz(xo.ChangeTracker.with(c,d=>{Yz(c,Uln,({file:h,start:_})=>{let S=Kln(h,_);S&&g.set(S.signature,Ft(g.get(S.signature),S.jsDocParameterTag))}),g.forEach((h,_)=>{if(c.fixId===bit){let S=new Set(h);d.filterJSDocTags(_.getSourceFile(),_,R=>!S.has(R))}})}))}});function AFs(s,{name:c,jsDocHost:g,jsDocParameterTag:d}){let h=xo.ChangeTracker.with(s,_=>_.filterJSDocTags(s.sourceFile,g,S=>S!==d));return ug(bit,h,[Z.Delete_unused_param_tag_0,c.getText(s.sourceFile)],bit,Z.Delete_all_unused_param_tags)}function dFs(s,{name:c,jsDocHost:g,signature:d,jsDocParameterTag:h}){if(!B(d.parameters))return;let _=s.sourceFile,S=Sx(d),R=new Set;for(let M of S)cS(M)&&Ir(M.name)&&R.add(M.name.escapedText);let T=X(d.parameters,M=>Ir(M.name)&&!R.has(M.name.escapedText)?M.name.getText(_):void 0);if(T===void 0)return;let W=me.updateJSDocParameterTag(h,h.tagName,me.createIdentifier(T),h.isBracketed,h.typeExpression,h.isNameFirst,h.comment),V=xo.ChangeTracker.with(s,M=>M.replaceJSDocComment(_,g,At(S,ee=>ee===h?W:ee)));return sR(Jln,V,[Z.Rename_param_tag_name_0_to_1,c.getText(_),T])}function Kln(s,c){let g=Jc(s,c);if(g.parent&&cS(g.parent)&&Ir(g.parent.name)){let d=g.parent,h=bP(d),_=PL(d);if(h&&_)return{jsDocHost:h,signature:_,name:g.parent.name,jsDocParameterTag:d}}}var yQt="fixUnreferenceableDecoratorMetadata",pFs=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];xg({errorCodes:pFs,getCodeActions:s=>{let c=fFs(s.sourceFile,s.program,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,_=>c.kind===277&&hFs(_,s.sourceFile,c,s.program)),d=xo.ChangeTracker.with(s,_=>IFs(_,s.sourceFile,c,s.program)),h;return g.length&&(h=Ft(h,sR(yQt,g,Z.Convert_named_imports_to_namespace_import))),d.length&&(h=Ft(h,sR(yQt,d,Z.Use_import_type))),h},fixIds:[yQt]});function fFs(s,c,g){let d=Gs(Jc(s,g),Ir);if(!d||d.parent.kind!==184)return;let _=c.getTypeChecker().getSymbolAtLocation(d);return de(_?.declarations||E,Hp(Vw,uy,km))}function IFs(s,c,g,d){if(g.kind===272){s.insertModifierBefore(c,156,g.name);return}let h=g.kind===274?g:g.parent.parent;if(h.name&&h.namedBindings)return;let _=d.getTypeChecker();pZe(h,R=>{if(FC(R.symbol,_).flags&111551)return!0})||s.insertModifierBefore(c,156,h)}function hFs(s,c,g,d){Oz.doChangeNamedToNamespaceOrDefault(c,d,s,g.parent)}var PPe="unusedIdentifier",bQt="unusedIdentifier_prefix",EQt="unusedIdentifier_delete",Eit="unusedIdentifier_deleteImports",SQt="unusedIdentifier_infer",jln=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];xg({errorCodes:jln,getCodeActions(s){let{errorCode:c,sourceFile:g,program:d,cancellationToken:h}=s,_=d.getTypeChecker(),S=d.getSourceFiles(),R=Jc(g,s.span.start);if(ZB(R))return[ope(xo.ChangeTracker.with(s,M=>M.delete(g,R)),Z.Remove_template_tag)];if(R.kind===30){let M=xo.ChangeTracker.with(s,ee=>qln(ee,g,R));return[ope(M,Z.Remove_type_parameters)]}let T=$ln(R);if(T){let M=xo.ChangeTracker.with(s,ee=>ee.delete(g,T));return[ug(PPe,M,[Z.Remove_import_from_0,KZe(T)],Eit,Z.Delete_all_unused_imports)]}else if(vQt(R)){let M=xo.ChangeTracker.with(s,ee=>Sit(g,R,ee,_,S,d,h,!1));if(M.length)return[ug(PPe,M,[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)],Eit,Z.Delete_all_unused_imports)]}if(Km(R.parent)||p2(R.parent)){if(Si(R.parent.parent)){let M=R.parent.elements,ee=[M.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,At(M,re=>re.getText(g)).join(", ")];return[ope(xo.ChangeTracker.with(s,re=>mFs(re,g,R.parent)),ee)]}return[ope(xo.ChangeTracker.with(s,M=>CFs(s,M,g,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(eun(g,R))return[ope(xo.ChangeTracker.with(s,M=>tun(M,g,R.parent)),Z.Remove_variable_statement)];if(Ir(R)&&ih(R.parent))return[ope(xo.ChangeTracker.with(s,M=>oun(M,g,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)])];let W=[];if(R.kind===140){let M=xo.ChangeTracker.with(s,re=>zln(re,g,R)),ee=Ma(R.parent,jT).typeParameter.name.text;W.push(ug(PPe,M,[Z.Replace_infer_0_with_unknown,ee],SQt,Z.Replace_all_unused_infer_with_unknown))}else{let M=xo.ChangeTracker.with(s,ee=>Sit(g,R,ee,_,S,d,h,!1));if(M.length){let ee=Un(R.parent)?R.parent:R;W.push(ope(M,[Z.Remove_unused_declaration_for_Colon_0,ee.getText(g)]))}}let V=xo.ChangeTracker.with(s,M=>nun(M,c,g,R));return V.length&&W.push(ug(PPe,V,[Z.Prefix_0_with_an_underscore,R.getText(g)],bQt,Z.Prefix_all_unused_declarations_with_where_possible)),W},fixIds:[bQt,EQt,Eit,SQt],getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=g.getTypeChecker(),_=g.getSourceFiles();return Qd(s,jln,(S,R)=>{let T=Jc(c,R.start);switch(s.fixId){case bQt:nun(S,R.code,c,T);break;case Eit:{let W=$ln(T);W?S.delete(c,W):vQt(T)&&Sit(c,T,S,h,_,g,d,!0);break}case EQt:{if(T.kind===140||vQt(T))break;if(ZB(T))S.delete(c,T);else if(T.kind===30)qln(S,c,T);else if(Km(T.parent)){if(T.parent.parent.initializer)break;(!Si(T.parent.parent)||iun(T.parent.parent,h,_))&&S.delete(c,T.parent.parent)}else{if(p2(T.parent.parent)&&T.parent.parent.parent.initializer)break;eun(c,T)?tun(S,c,T.parent):Ir(T)&&ih(T.parent)?oun(S,c,T.parent):Sit(c,T,S,h,_,g,d,!0)}break}case SQt:T.kind===140&&zln(S,c,T);break;default:pe.fail(JSON.stringify(s.fixId))}})}});function zln(s,c,g){s.replaceNode(c,g.parent,me.createKeywordTypeNode(159))}function ope(s,c){return ug(PPe,s,c,EQt,Z.Delete_all_unused_declarations)}function qln(s,c,g){s.delete(c,pe.checkDefined(Ma(g.parent,Kre).typeParameters,"The type parameter to delete should exist"))}function vQt(s){return s.kind===102||s.kind===80&&(s.parent.kind===277||s.parent.kind===274)}function $ln(s){return s.kind===102?Gs(s.parent,Mf):void 0}function eun(s,c){return u_(c.parent)&&ma(c.parent.getChildren(s))===c}function tun(s,c,g){s.delete(c,g.parent.kind===244?g.parent:g)}function mFs(s,c,g){F(g.elements,d=>s.delete(c,d))}function CFs(s,c,g,{parent:d}){if(nc(d)&&d.initializer&&hF(d.initializer))if(u_(d.parent)&&B(d.parent.declarations)>1){let h=d.parent.parent,_=h.getStart(g),S=h.end;c.delete(g,d),c.insertNodeAt(g,S,d.initializer,{prefix:OF(s.host,s.formatContext.options)+g.text.slice($Ve(g.text,_-1),_),suffix:C1e(g)?";":""})}else c.replaceNode(g,d.parent,d.initializer);else c.delete(g,d)}function nun(s,c,g,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=Ma(d.parent,jT).typeParameter.name),Ir(d)&&_Fs(d)&&(s.replaceNode(g,d,me.createIdentifier(`_${d.text}`)),Si(d.parent)&&vL(d.parent).forEach(h=>{Ir(h.name)&&s.replaceNode(g,h.name,me.createIdentifier(`_${h.name.text}`))})))}function _Fs(s){switch(s.parent.kind){case 170:case 169:return!0;case 261:switch(s.parent.parent.parent.kind){case 251:case 250:return!0}}return!1}function Sit(s,c,g,d,h,_,S,R){yFs(c,g,s,d,h,_,S,R),Ir(c)&&Kp.Core.eachSymbolReferenceInFile(c,d,s,T=>{jo(T.parent)&&T.parent.name===T&&(T=T.parent),!R&&vFs(T)&&g.delete(s,T.parent.parent)})}function yFs(s,c,g,d,h,_,S,R){let{parent:T}=s;if(Si(T))bFs(c,g,T,d,h,_,S,R);else if(!(R&&Ir(s)&&Kp.Core.isSymbolReferencedInFile(s,d,g))){let W=Vw(T)?s:Un(T)?T.parent:T;pe.assert(W!==g,"should not delete whole source file"),c.delete(g,W)}}function bFs(s,c,g,d,h,_,S,R=!1){if(EFs(d,c,g,h,_,S,R))if(g.modifiers&&g.modifiers.length>0&&(!Ir(g.name)||Kp.Core.isSymbolReferencedInFile(g.name,d,c)))for(let T of g.modifiers)Ig(T)&&s.deleteModifier(c,T);else!g.initializer&&iun(g,d,h)&&s.delete(c,g)}function iun(s,c,g){let d=s.parent.parameters.indexOf(s);return!Kp.Core.someSignatureUsage(s.parent,g,c,(h,_)=>!_||_.arguments.length>d)}function EFs(s,c,g,d,h,_,S){let{parent:R}=g;switch(R.kind){case 175:case 177:let T=R.parameters.indexOf(g),W=uu(R)?R.name:R,V=Kp.Core.getReferencedSymbolsForNode(R.pos,W,h,d,_);if(V){for(let M of V)for(let ee of M.references)if(ee.kind===Kp.EntryKind.Node){let re=rr(ee.node)&&Zl(ee.node.parent)&&ee.node.parent.arguments.length>T,ge=jo(ee.node.parent)&&rr(ee.node.parent.expression)&&Zl(ee.node.parent.parent)&&ee.node.parent.parent.arguments.length>T,Ie=(uu(ee.node.parent)||hl(ee.node.parent))&&ee.node.parent!==g.parent&&ee.node.parent.parameters.length>T;if(re||ge||Ie)return!1}}return!0;case 263:return R.name&&SFs(s,c,R.name)?sun(R,g,S):!0;case 219:case 220:return sun(R,g,S);case 179:return!1;case 178:return!0;default:return pe.failBadSyntaxKind(R)}}function SFs(s,c,g){return!!Kp.Core.eachSymbolReferenceInFile(g,s,c,d=>Ir(d)&&Zl(d.parent)&&d.parent.arguments.includes(d))}function sun(s,c,g){let d=s.parameters,h=d.indexOf(c);return pe.assert(h!==-1,"The parameter should already be in the list"),g?d.slice(h+1).every(_=>Ir(_.name)&&!_.symbol.isReferenced):h===d.length-1}function vFs(s){return(fo(s.parent)&&s.parent.left===s||(ek(s.parent)||T0(s.parent))&&s.parent.operand===s)&&VC(s.parent.parent)}function oun(s,c,g){let d=g.symbol.declarations;if(d)for(let h of d)s.delete(c,h)}var BQt="fixUnreachableCode",aun=[Z.Unreachable_code_detected.code];xg({errorCodes:aun,getCodeActions(s){if(s.program.getSyntacticDiagnostics(s.sourceFile,s.cancellationToken).length)return;let g=xo.ChangeTracker.with(s,d=>cun(d,s.sourceFile,s.span.start,s.span.length,s.errorCode));return[ug(BQt,g,Z.Remove_unreachable_code,BQt,Z.Remove_all_unreachable_code)]},fixIds:[BQt],getAllCodeActions:s=>Qd(s,aun,(c,g)=>cun(c,g.file,g.start,g.length,g.code))});function cun(s,c,g,d,h){let _=Jc(c,g),S=ji(_,Lc);if(S.getStart(c)!==_.getStart(c)){let T=JSON.stringify({statementKind:pe.formatSyntaxKind(S.kind),tokenKind:pe.formatSyntaxKind(_.kind),errorCode:h,start:g,length:d});pe.fail("Token and statement should start at the same point. "+T)}let R=($u(S.parent)?S.parent:S).parent;if(!$u(S.parent)||S===ma(S.parent.statements))switch(R.kind){case 246:if(R.elseStatement){if($u(S.parent))break;s.replaceNode(c,S,me.createBlock(E));return}case 248:case 249:s.delete(c,R);return}if($u(S.parent)){let T=g+d,W=pe.checkDefined(BFs(Rbe(S.parent.statements,S),V=>V.posuun(g,s.sourceFile,s.span.start));return[ug(wQt,c,Z.Remove_unused_label,wQt,Z.Remove_all_unused_labels)]},fixIds:[wQt],getAllCodeActions:s=>Qd(s,lun,(c,g)=>uun(c,g.file,g.start))});function uun(s,c,g){let d=Jc(c,g),h=Ma(d.parent,FP),_=d.getStart(c),S=h.statement.getStart(c),R=yE(_,S,c)?S:Yu(c.text,qd(h,59,c).end,!0);s.deleteRange(c,{pos:_,end:R})}var gun="fixJSDocTypes_plain",TQt="fixJSDocTypes_nullable",Aun=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];xg({errorCodes:Aun,getCodeActions(s){let{sourceFile:c}=s,g=s.program.getTypeChecker(),d=pun(c,s.span.start,g);if(!d)return;let{typeNode:h,type:_}=d,S=h.getText(c),R=[T(_,gun,Z.Change_all_jsdoc_style_types_to_TypeScript)];return h.kind===315&&R.push(T(_,TQt,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function T(W,V,M){let ee=xo.ChangeTracker.with(s,re=>dun(re,c,h,W,g));return ug("jdocTypes",ee,[Z.Change_0_to_1,S,g.typeToString(W)],V,M)}},fixIds:[gun,TQt],getAllCodeActions(s){let{fixId:c,program:g,sourceFile:d}=s,h=g.getTypeChecker();return Qd(s,Aun,(_,S)=>{let R=pun(S.file,S.start,h);if(!R)return;let{typeNode:T,type:W}=R,V=T.kind===315&&c===TQt?h.getNullableType(W,32768):W;dun(_,d,T,V,h)})}});function dun(s,c,g,d,h){s.replaceNode(c,g,h.typeToTypeNode(d,g,void 0))}function pun(s,c,g){let d=ji(Jc(s,c),wFs),h=d&&d.type;return h&&{typeNode:h,type:TFs(g,h)}}function wFs(s){switch(s.kind){case 235:case 180:case 181:case 263:case 178:case 182:case 201:case 175:case 174:case 170:case 173:case 172:case 179:case 266:case 217:case 261:return!0;default:return!1}}function TFs(s,c){if(Iie(c)){let g=s.getTypeFromTypeNode(c.type);return g===s.getNeverType()||g===s.getVoidType()?g:s.getUnionType(Ft([g,s.getUndefinedType()],c.postfix?void 0:s.getNullType()))}return s.getTypeFromTypeNode(c)}var RQt="fixMissingCallParentheses",fun=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];xg({errorCodes:fun,fixIds:[RQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=hun(c,g.start);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Iun(_,s.sourceFile,d));return[ug(RQt,h,Z.Add_missing_call_parentheses,RQt,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:s=>Qd(s,fun,(c,g)=>{let d=hun(g.file,g.start);d&&Iun(c,g.file,d)})});function Iun(s,c,g){s.replaceNodeWithText(c,g,`${g.text}()`)}function hun(s,c){let g=Jc(s,c);if(jo(g.parent)){let d=g.parent;for(;jo(d.parent);)d=d.parent;return d.name}if(Ir(g))return g}var mun="fixMissingTypeAnnotationOnExports",NQt="add-annotation",DQt="add-type-assertion",RFs="extract-expression",Cun=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],NFs=new Set([178,175,173,263,219,220,261,170,278,264,207,208]),_un=531469,yun=1;xg({errorCodes:Cun,fixIds:[mun],getCodeActions(s){let c=[];return ape(NQt,c,s,0,g=>g.addTypeAnnotation(s.span)),ape(NQt,c,s,1,g=>g.addTypeAnnotation(s.span)),ape(NQt,c,s,2,g=>g.addTypeAnnotation(s.span)),ape(DQt,c,s,0,g=>g.addInlineAssertion(s.span)),ape(DQt,c,s,1,g=>g.addInlineAssertion(s.span)),ape(DQt,c,s,2,g=>g.addInlineAssertion(s.span)),ape(RFs,c,s,0,g=>g.extractAsVariable(s.span)),c},getAllCodeActions:s=>{let c=bun(s,0,g=>{Yz(s,Cun,d=>{g.addTypeAnnotation(d)})});return Hz(c.textChanges)}});function ape(s,c,g,d,h){let _=bun(g,d,h);_.result&&_.textChanges.length&&c.push(ug(s,_.textChanges,_.result,mun,Z.Add_all_missing_type_annotations))}function bun(s,c,g){let d={typeNode:void 0,mutatedTarget:!1},h=xo.ChangeTracker.fromContext(s),_=s.sourceFile,S=s.program,R=S.getTypeChecker(),T=Mg(S.getCompilerOptions()),W=yQ(s.sourceFile,s.program,s.preferences,s.host),V=new Set,M=new Set,ee=MP({preserveSourceNewlines:!1}),re=g({addTypeAnnotation:ge,addInlineAssertion:Te,extractAsVariable:Ze});return W.writeFixes(h),{result:re,textChanges:h.getChanges()};function ge(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start),zt=We(ir);if(zt)return ih(zt)?Ie(zt):Ue(zt);let Ht=dt(ir);if(Ht)return Ue(Ht)}function Ie(st){var ir;if(M?.has(st))return;M?.add(st);let zt=R.getTypeAtLocation(st),Ht=R.getPropertiesOfType(zt);if(!st.name||Ht.length===0)return;let Br=[];for(let Zi of Ht)Uh(Zi.name,Mg(S.getCompilerOptions()))&&(Zi.valueDeclaration&&nc(Zi.valueDeclaration)||Br.push(me.createVariableStatement([me.createModifier(95)],me.createVariableDeclarationList([me.createVariableDeclaration(Zi.name,void 0,Dt(R.getTypeOfSymbol(Zi),st),void 0)]))));if(Br.length===0)return;let mn=[];(ir=st.modifiers)!=null&&ir.some(Zi=>Zi.kind===95)&&mn.push(me.createModifier(95)),mn.push(me.createModifier(138));let jn=me.createModuleDeclaration(mn,st.name,me.createModuleBlock(Br),101441696);return h.insertNodeAfter(_,st,jn),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function _e(st){return!Od(st)&&!Zl(st)&&!og(st)&&!OI(st)}function Ee(st,ir){return _e(st)&&(st=me.createParenthesizedExpression(st)),me.createAsExpression(st,ir)}function Ne(st,ir){return _e(st)&&(st=me.createParenthesizedExpression(st)),me.createAsExpression(me.createSatisfiesExpression(st,JA(ir)),ir)}function Te(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start);if(We(ir))return;let Ht=pr(ir,st);if(!Ht||C3(Ht)||C3(Ht.parent))return;let Br=un(Ht),mn=a0(Ht);if(!mn&&jh(Ht)||ji(Ht,Nu)||ji(Ht,LF)||Br&&(ji(Ht,h1)||ji(Ht,uc))||of(Ht))return;let jn=ji(Ht,nc),Zi=jn&&R.getTypeAtLocation(jn);if(Zi&&Zi.flags&8192||!(Br||mn))return;let{typeNode:Ns,mutatedTarget:An}=Rt(Ht,Zi);if(!(!Ns||An))return mn?h.insertNodeAt(_,Ht.end,Ee(JA(Ht.name),Ns),{prefix:": "}):Br?h.replaceNode(_,Ht,Ne(JA(Ht),Ns)):pe.assertNever(Ht),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Gr(Ns)]}function Ze(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start),zt=pr(ir,st);if(!zt||C3(zt)||C3(zt.parent)||!un(zt))return;if(OI(zt))return h.replaceNode(_,zt,Ee(zt,me.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let Br=ji(zt,fm);if(Br){if(Br===zt.parent&&Od(zt))return;let mn=me.createUniqueName(kHt(zt,_,R,_),16),jn=zt,Zi=zt;if(of(jn)&&(jn=gv(jn.parent),Gt(jn.parent)?Zi=jn=jn.parent:Zi=Ee(jn,me.createTypeReferenceNode("const"))),Od(jn))return;let Ns=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(mn,void 0,void 0,Zi)],2)),An=ji(zt,Lc);return h.insertNodeBefore(_,An,Ns),h.replaceNode(_,jn,me.createAsExpression(me.cloneNode(mn),me.createTypeQueryNode(me.cloneNode(mn)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Gr(mn)]}}function We(st){let ir=ji(st,zt=>Lc(zt)?"quit":jY(zt));if(ir&&jY(ir)){let zt=ir;if(fo(zt)&&(zt=zt.left,!jY(zt)))return;let Ht=R.getTypeAtLocation(zt.expression);if(!Ht)return;let Br=R.getPropertiesOfType(Ht);if(jt(Br,mn=>mn.valueDeclaration===ir||mn.valueDeclaration===ir.parent)){let mn=Ht.symbol.valueDeclaration;if(mn){if(RF(mn)&&nc(mn.parent))return mn.parent;if(ih(mn))return mn}}}}function Ue(st){if(!V?.has(st))switch(V?.add(st),st.kind){case 170:case 173:case 261:return ur(st);case 220:case 219:case 263:case 175:case 178:return $e(st,_);case 278:return Ye(st);case 264:return Tt(st);case 207:case 208:return Qe(st);default:throw new Error(`Cannot find a fix for the given node ${st.kind}`)}}function $e(st,ir){if(st.type)return;let{typeNode:zt}=Rt(st);if(zt)return h.tryInsertTypeAnnotation(ir,st,zt),[Z.Add_return_type_0,Gr(zt)]}function Ye(st){if(st.isExportEquals)return;let{typeNode:ir}=Rt(st.expression);if(!ir)return;let zt=me.createUniqueName("_default");return h.replaceNodeWithNodes(_,st,[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(zt,void 0,ir,st.expression)],2)),me.updateExportAssignment(st,st?.modifiers,zt)]),[Z.Extract_default_export_to_variable]}function Tt(st){var ir,zt;let Ht=(ir=st.heritageClauses)==null?void 0:ir.find(si=>si.token===96),Br=Ht?.types[0];if(!Br)return;let{typeNode:mn}=Rt(Br.expression);if(!mn)return;let jn=me.createUniqueName(st.name?st.name.text+"Base":"Anonymous",16),Zi=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(jn,void 0,mn,Br.expression)],2));h.insertNodeBefore(_,st,Zi);let Ns=n2(_.text,Br.end),An=((zt=Ns?.[Ns.length-1])==null?void 0:zt.end)??Br.end;return h.replaceRange(_,{pos:Br.getFullStart(),end:An},jn,{prefix:" "}),[Z.Extract_base_class_to_variable]}let ot;(st=>{st[st.Text=0]="Text",st[st.Computed=1]="Computed",st[st.ArrayAccess=2]="ArrayAccess",st[st.Identifier=3]="Identifier"})(ot||(ot={}));function Qe(st){var ir;let zt=st.parent,Ht=st.parent.parent.parent;if(!zt.initializer)return;let Br,mn=[];if(Ir(zt.initializer))Br={expression:{kind:3,identifier:zt.initializer}};else{let Ns=me.createUniqueName("dest",16);Br={expression:{kind:3,identifier:Ns}},mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Ns,void 0,void 0,zt.initializer)],2)))}let jn=[];p2(st)?mt(st,jn,Br):ht(st,jn,Br);let Zi=new Map;for(let Ns of jn){if(Ns.element.propertyName&&Un(Ns.element.propertyName)){let si=Ns.element.propertyName.expression,ks=me.getGeneratedNameForNode(si),Ic=me.createVariableDeclaration(ks,void 0,void 0,si),su=me.createVariableDeclarationList([Ic],2),Zn=me.createVariableStatement(void 0,su);mn.push(Zn),Zi.set(si,ks)}let An=Ns.element.name;if(p2(An))mt(An,jn,Ns);else if(Km(An))ht(An,jn,Ns);else{let{typeNode:si}=Rt(An),ks=_t(Ns,Zi);if(Ns.element.initializer){let su=(ir=Ns.element)==null?void 0:ir.propertyName,Zn=me.createUniqueName(su&&Ir(su)?su.text:"temp",16);mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zn,void 0,void 0,ks)],2))),ks=me.createConditionalExpression(me.createBinaryExpression(Zn,me.createToken(37),me.createIdentifier("undefined")),me.createToken(58),Ns.element.initializer,me.createToken(59),ks)}let Ic=Ga(Ht,32)?[me.createToken(95)]:void 0;mn.push(me.createVariableStatement(Ic,me.createVariableDeclarationList([me.createVariableDeclaration(An,void 0,si,ks)],2)))}}return Ht.declarationList.declarations.length>1&&mn.push(me.updateVariableStatement(Ht,Ht.modifiers,me.updateVariableDeclarationList(Ht.declarationList,Ht.declarationList.declarations.filter(Ns=>Ns!==st.parent)))),h.replaceNodeWithNodes(_,Ht,mn),[Z.Extract_binding_expressions_to_variable]}function mt(st,ir,zt){for(let Ht=0;Ht=0;--Br){let mn=zt[Br].expression;mn.kind===0?Ht=me.createPropertyAccessChain(Ht,void 0,me.createIdentifier(mn.text)):mn.kind===1?Ht=me.createElementAccessExpression(Ht,ir.get(mn.computed)):mn.kind===2&&(Ht=me.createElementAccessExpression(Ht,mn.arrayIndex))}return Ht}function Rt(st,ir){if(c===1)return nt(st);let zt;if(C3(st)){let mn=R.getSignatureFromDeclaration(st);if(mn){let jn=R.getTypePredicateOfSignature(mn);if(jn)return jn.type?{typeNode:tr(jn,ji(st,jh)??_,Br(jn.type)),mutatedTarget:!1}:d;zt=R.getReturnTypeOfSignature(mn)}}else zt=R.getTypeAtLocation(st);if(!zt)return d;if(c===2){ir&&(zt=ir);let mn=R.getWidenedLiteralType(zt);if(R.isTypeAssignableTo(mn,zt))return d;zt=mn}let Ht=ji(st,jh)??_;return Si(st)&&R.requiresAddingImplicitUndefined(st,Ht)&&(zt=R.getUnionType([R.getUndefinedType(),zt],0)),{typeNode:Dt(zt,Ht,Br(zt)),mutatedTarget:!1};function Br(mn){return(nc(st)||pi(st)&&Ga(st,264))&&mn.flags&8192?1048576:0}}function Lt(st){return me.createTypeQueryNode(JA(st))}function Ke(st,ir="temp"){let zt=!!ji(st,Gt);return zt?_r(st,ir,zt,Ht=>Ht.elements,of,me.createSpreadElement,Ht=>me.createArrayLiteralExpression(Ht,!0),Ht=>me.createTupleTypeNode(Ht.map(me.createRestTypeNode))):d}function Pt(st,ir="temp"){let zt=!!ji(st,Gt);return _r(st,ir,zt,Ht=>Ht.properties,Lx,me.createSpreadAssignment,Ht=>me.createObjectLiteralExpression(Ht,!0),me.createIntersectionTypeNode)}function _r(st,ir,zt,Ht,Br,mn,jn,Zi){let Ns=[],An=[],si,ks=ji(st,Lc);for(let Zn of Ht(st))Br(Zn)?(su(),Od(Zn.expression)?(Ns.push(Lt(Zn.expression)),An.push(Zn)):Ic(Zn.expression)):(si??(si=[])).push(Zn);if(An.length===0)return d;return su(),h.replaceNode(_,st,jn(An)),{typeNode:Zi(Ns),mutatedTarget:!0};function Ic(Zn){let ya=me.createUniqueName(ir+"_Part"+(An.length+1),16),Gl=zt?me.createAsExpression(Zn,me.createTypeReferenceNode("const")):Zn,ba=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ya,void 0,void 0,Gl)],2));h.insertNodeBefore(_,ks,ba),Ns.push(Lt(ya)),An.push(mn(ya))}function su(){si&&(Ic(jn(si)),si=void 0)}}function Gt(st){return Ed(st)&&s2(st.type)}function nt(st){if(Si(st))return d;if(a0(st))return{typeNode:Lt(st.name),mutatedTarget:!1};if(Od(st))return{typeNode:Lt(st),mutatedTarget:!1};if(Gt(st))return nt(st.expression);if(OI(st)){let ir=ji(st,nc),zt=ir&&Ir(ir.name)?ir.name.text:void 0;return Ke(st,zt)}if(og(st)){let ir=ji(st,nc),zt=ir&&Ir(ir.name)?ir.name.text:void 0;return Pt(st,zt)}if(nc(st)&&st.initializer)return nt(st.initializer);if(Lw(st)){let{typeNode:ir,mutatedTarget:zt}=nt(st.whenTrue);if(!ir)return d;let{typeNode:Ht,mutatedTarget:Br}=nt(st.whenFalse);return Ht?{typeNode:me.createUnionTypeNode([ir,Ht]),mutatedTarget:zt||Br}:d}return d}function Dt(st,ir,zt=0){let Ht=!1,Br=Yun(R,st,ir,_un|zt,yun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Ht=!0}});if(!Br)return;let mn=WQt(Br,W,T);return Ht?me.createKeywordTypeNode(133):mn}function tr(st,ir,zt=0){let Ht=!1,Br=Qun(R,W,st,ir,T,_un|zt,yun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Ht=!0}});return Ht?me.createKeywordTypeNode(133):Br}function ur(st){let{typeNode:ir}=Rt(st);if(ir)return st.type?h.replaceNode(ms(st),st.type,ir):h.tryInsertTypeAnnotation(ms(st),st,ir),[Z.Add_annotation_of_type_0,Gr(ir)]}function Gr(st){ti(st,1);let ir=ee.printNode(4,st,_);return ir.length>EY?ir.substring(0,EY-3)+"...":(ti(st,0),ir)}function dt(st){return ji(st,ir=>NFs.has(ir.kind)&&(!Km(ir)&&!p2(ir)||nc(ir.parent)))}function pr(st,ir){for(;st&&st.endvun(_,c,d));return[ug(kQt,h,Z.Add_async_modifier_to_containing_function,kQt,Z.Add_all_missing_async_modifiers)]},fixIds:[kQt],getAllCodeActions:function(c){let g=new Set;return Qd(c,Eun,(d,h)=>{let _=Sun(h.file,h.start);!_||!Zy(g,rd(_.insertBefore))||vun(d,c.sourceFile,_)})}});function DFs(s){if(s.type)return s.type;if(nc(s.parent)&&s.parent.type&&x_(s.parent.type))return s.parent.type.type}function Sun(s,c){let g=Jc(s,c),d=A1(g);if(!d)return;let h;switch(d.kind){case 175:h=d.name;break;case 263:case 219:h=qd(d,100,s);break;case 220:let _=d.typeParameters?30:21;h=qd(d,_,s)||ma(d.parameters);break;default:return}return h&&{insertBefore:h,returnType:DFs(d)}}function vun(s,c,{insertBefore:g,returnType:d}){if(d){let h=ene(d);(!h||h.kind!==80||h.text!=="Promise")&&s.replaceNode(c,d,me.createTypeReferenceNode("Promise",me.createNodeArray([d])))}s.insertModifierBefore(c,134,g)}var Bun=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],xQt="fixPropertyOverrideAccessor";xg({errorCodes:Bun,getCodeActions(s){let c=wun(s.sourceFile,s.span.start,s.span.length,s.errorCode,s);if(c)return[ug(xQt,c,Z.Generate_get_and_set_accessors,xQt,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[xQt],getAllCodeActions:s=>Qd(s,Bun,(c,g)=>{let d=wun(g.file,g.start,g.length,g.code,s);if(d)for(let h of d)c.pushRaw(s.sourceFile,h)})});function wun(s,c,g,d,h){let _,S;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)_=c,S=c+g;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=h.program.getTypeChecker(),T=Jc(s,c).parent;if(Un(T))return;pe.assert(yB(T),"error span of fixPropertyOverrideAccessor should only be on an accessor");let W=T.parent;pe.assert(xa(W),"erroneous accessors should only be inside classes");let V=BB(W);if(!V)return;let M=QA(V.expression),ee=vd(M)?M.symbol:R.getSymbolAtLocation(M);if(!ee)return;let re=R.getDeclaredTypeOfSymbol(ee),ge=R.getPropertyOfType(re,Bc(hP(T.name)));if(!ge||!ge.valueDeclaration)return;_=ge.valueDeclaration.pos,S=ge.valueDeclaration.end,s=ms(ge.valueDeclaration)}else pe.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return jun(s,h.program,_,S,h,Z.Generate_get_and_set_accessors.message)}var GQt="inferFromUsage",Tun=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];xg({errorCodes:Tun,getCodeActions(s){let{sourceFile:c,program:g,span:{start:d},errorCode:h,cancellationToken:_,host:S,preferences:R}=s,T=Jc(c,d),W,V=xo.ChangeTracker.with(s,ee=>{W=Run(ee,c,T,h,g,_,Tf,S,R)}),M=W&&Il(W);return!M||V.length===0?void 0:[ug(GQt,V,[kFs(h,T),xp(M)],GQt,Z.Infer_all_types_from_usage)]},fixIds:[GQt],getAllCodeActions(s){let{sourceFile:c,program:g,cancellationToken:d,host:h,preferences:_}=s,S=Yie();return Qd(s,Tun,(R,T)=>{Run(R,c,Jc(T.file,T.start),T.code,g,d,S,h,_)})}});function kFs(s,c){switch(s){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Dg(A1(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function xFs(s){switch(s){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return s}function Run(s,c,g,d,h,_,S,R,T){if(!IY(g.kind)&&g.kind!==80&&g.kind!==26&&g.kind!==110)return;let{parent:W}=g,V=yQ(c,h,T,R);switch(d=xFs(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(nc(W)&&S(W)||pi(W)||ss(W))return Nun(s,V,c,W,h,R,_),V.writeFixes(s),W;if(jo(W)){let re=P1e(W.name,h,_),ge=qde(re,W,h,R);if(ge){let Ie=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(ge),void 0);s.addJSDocTags(c,Ma(W.parent.parent,VC),[Ie])}return V.writeFixes(s),W}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=h.getTypeChecker().getSymbolAtLocation(g);return re&&re.valueDeclaration&&nc(re.valueDeclaration)&&S(re.valueDeclaration)?(Nun(s,V,ms(re.valueDeclaration),re.valueDeclaration,h,R,_),V.writeFixes(s),re.valueDeclaration):void 0}}let M=A1(g);if(M===void 0)return;let ee;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(Dg(M)){Dun(s,V,c,M,h,R,_),ee=M;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(S(M)){let re=Ma(W,Si);GFs(s,V,c,re,M,h,R,_),ee=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:Bg(M)&&Ir(M.name)&&(vit(s,V,c,M,P1e(M.name,h,_),h,R),ee=M);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:Dg(M)&&(Dun(s,V,c,M,h,R,_),ee=M);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:xo.isThisTypeAnnotatable(M)&&S(M)&&(FFs(s,c,M,h,R,_),ee=M);break;default:return pe.fail(String(d))}return V.writeFixes(s),ee}function Nun(s,c,g,d,h,_,S){Ir(d.name)&&vit(s,c,g,d,P1e(d.name,h,S),h,_)}function GFs(s,c,g,d,h,_,S,R){if(!Ir(d.name))return;let T=VFs(h,g,_,R);if(pe.assert(h.parameters.length===T.length,"Parameter count and inference count should match"),wo(h))kun(s,g,T,_,S);else{let W=lA(h)&&!qd(h,21,g);W&&s.insertNodeBefore(g,ma(h.parameters),me.createToken(21));for(let{declaration:V,type:M}of T)V&&!V.type&&!V.initializer&&vit(s,c,g,V,M,_,S);W&&s.insertNodeAfter(g,Ei(h.parameters),me.createToken(22))}}function FFs(s,c,g,d,h,_){let S=xun(g,c,d,_);if(!S||!S.length)return;let R=ZQt(d,S,_).thisParameter(),T=qde(R,g,d,h);T&&(wo(g)?ZFs(s,c,g,T):s.tryInsertThisTypeAnnotation(c,g,T))}function ZFs(s,c,g,d){s.addJSDocTags(c,g,[me.createJSDocThisTag(void 0,me.createJSDocTypeExpression(d))])}function Dun(s,c,g,d,h,_,S){let R=Nc(d.parameters);if(R&&Ir(d.name)&&Ir(R.name)){let T=P1e(d.name,h,S);T===h.getTypeChecker().getAnyType()&&(T=P1e(R.name,h,S)),wo(d)?kun(s,g,[{declaration:R,type:T}],h,_):vit(s,c,g,R,T,h,_)}}function vit(s,c,g,d,h,_,S){let R=qde(h,d,_,S);if(R)if(wo(g)&&d.kind!==172){let T=nc(d)?Gs(d.parent.parent,Ch):d;if(!T)return;let W=me.createJSDocTypeExpression(R),V=Bg(d)?me.createJSDocReturnTag(void 0,W,void 0):me.createJSDocTypeTag(void 0,W,void 0);s.addJSDocTags(g,T,[V])}else LFs(R,d,g,s,c,Mg(_.getCompilerOptions()))||s.tryInsertTypeAnnotation(g,d,R)}function LFs(s,c,g,d,h,_){let S=bQ(s,_);return S&&d.tryInsertTypeAnnotation(g,c,S.typeNode)?(F(S.symbols,R=>h.addImportFromExportedSymbol(R,!0)),!0):!1}function kun(s,c,g,d,h){let _=g.length&&g[0].declaration.parent;if(!_)return;let S=Xt(g,R=>{let T=R.declaration;if(T.initializer||eN(T)||!Ir(T.name))return;let W=R.type&&qde(R.type,T,d,h);if(W){let V=me.cloneNode(T.name);return ti(V,7168),{name:me.cloneNode(T.name),param:T,isOptional:!!R.isOptional,typeNode:W}}});if(S.length)if(lA(_)||UA(_)){let R=lA(_)&&!qd(_,21,c);R&&s.insertNodeBefore(c,ma(_.parameters),me.createToken(21)),F(S,({typeNode:T,param:W})=>{let V=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(T)),M=me.createJSDocComment(void 0,[V]);s.insertNodeAt(c,W.getStart(c),M,{suffix:" "})}),R&&s.insertNodeAfter(c,Ei(_.parameters),me.createToken(22))}else{let R=At(S,({name:T,typeNode:W,isOptional:V})=>me.createJSDocParameterTag(void 0,T,!!V,me.createJSDocTypeExpression(W),!1,void 0));s.addJSDocTags(c,_,R)}}function FQt(s,c,g){return Xt(Kp.getReferenceEntriesForNode(-1,s,c,c.getSourceFiles(),g),d=>d.kind!==Kp.EntryKind.Span?Gs(d.node,Ir):void 0)}function P1e(s,c,g){let d=FQt(s,c,g);return ZQt(c,d,g).single()}function VFs(s,c,g,d){let h=xun(s,c,g,d);return h&&ZQt(g,h,d).parameters(s)||s.parameters.map(_=>({declaration:_,type:Ir(_.name)?P1e(_.name,g,d):g.getTypeChecker().getAnyType()}))}function xun(s,c,g,d){let h;switch(s.kind){case 177:h=qd(s,137,c);break;case 220:case 219:let _=s.parent;h=(nc(_)||pi(_))&&Ir(_.name)?_.name:s.name;break;case 263:case 175:case 174:h=s.name;break}if(h)return FQt(h,g,d)}function ZQt(s,c,g){let d=s.getTypeChecker(),h={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:Dt=>d.createArrayType(Dt),Promise:Dt=>d.createPromiseType(Dt)},_=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:T,parameters:W,thisParameter:V};function S(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function R(Dt){let tr=new Map;for(let Gr of Dt)Gr.properties&&Gr.properties.forEach((dt,pr)=>{tr.has(pr)||tr.set(pr,[]),tr.get(pr).push(dt)});let ur=new Map;return tr.forEach((Gr,dt)=>{ur.set(dt,R(Gr))}),{isNumber:Dt.some(Gr=>Gr.isNumber),isString:Dt.some(Gr=>Gr.isString),isNumberOrString:Dt.some(Gr=>Gr.isNumberOrString),candidateTypes:er(Dt,Gr=>Gr.candidateTypes),properties:ur,calls:er(Dt,Gr=>Gr.calls),constructs:er(Dt,Gr=>Gr.constructs),numberIndex:F(Dt,Gr=>Gr.numberIndex),stringIndex:F(Dt,Gr=>Gr.stringIndex),candidateThisTypes:er(Dt,Gr=>Gr.candidateThisTypes),inferredTypes:void 0}}function T(){return Tt(M(c))}function W(Dt){if(c.length===0||!Dt.parameters)return;let tr=S();for(let Gr of c)g.throwIfCancellationRequested(),ee(Gr,tr);let ur=[...tr.constructs||[],...tr.calls||[]];return Dt.parameters.map((Gr,dt)=>{let pr=[],st=EB(Gr),ir=!1;for(let Ht of ur)if(Ht.argumentTypes.length<=dt)ir=wo(Dt),pr.push(d.getUndefinedType());else if(st)for(let Br=dt;Brur.every(dt=>!dt(Gr)))}function Ye(Dt){return Tt(Qe(Dt))}function Tt(Dt){if(!Dt.length)return d.getAnyType();let tr=d.getUnionType([d.getStringType(),d.getNumberType()]),Gr=$e(Dt,[{high:pr=>pr===d.getStringType()||pr===d.getNumberType(),low:pr=>pr===tr},{high:pr=>!(pr.flags&16385),low:pr=>!!(pr.flags&16385)},{high:pr=>!(pr.flags&114689)&&!(la(pr)&16),low:pr=>!!(la(pr)&16)}]),dt=Gr.filter(pr=>la(pr)&16);return dt.length&&(Gr=Gr.filter(pr=>!(la(pr)&16)),Gr.push(ot(dt))),d.getWidenedType(d.getUnionType(Gr.map(d.getBaseTypeOfLiteralType),2))}function ot(Dt){if(Dt.length===1)return Dt[0];let tr=[],ur=[],Gr=[],dt=[],pr=!1,st=!1,ir=dl();for(let Br of Dt){for(let Zi of d.getPropertiesOfType(Br))ir.add(Zi.escapedName,Zi.valueDeclaration?d.getTypeOfSymbolAtLocation(Zi,Zi.valueDeclaration):d.getAnyType());tr.push(...d.getSignaturesOfType(Br,0)),ur.push(...d.getSignaturesOfType(Br,1));let mn=d.getIndexInfoOfType(Br,0);mn&&(Gr.push(mn.type),pr=pr||mn.isReadonly);let jn=d.getIndexInfoOfType(Br,1);jn&&(dt.push(jn.type),st=st||jn.isReadonly)}let zt=ke(ir,(Br,mn)=>{let jn=mn.lengthd.getBaseTypeOfLiteralType(ir)),st=(Gr=Dt.calls)!=null&&Gr.length?mt(Dt):void 0;return st&&pr?dt.push(d.getUnionType([st,...pr],2)):(st&&dt.push(st),B(pr)&&dt.push(...pr)),dt.push(...ht(Dt)),dt}function mt(Dt){let tr=new Map;Dt.properties&&Dt.properties.forEach((pr,st)=>{let ir=d.createSymbol(4,st);ir.links.type=Ye(pr),tr.set(st,ir)});let ur=Dt.calls?[_r(Dt.calls)]:[],Gr=Dt.constructs?[_r(Dt.constructs)]:[],dt=Dt.stringIndex?[d.createIndexInfo(d.getStringType(),Ye(Dt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,tr,ur,Gr,dt)}function ht(Dt){if(!Dt.properties||!Dt.properties.size)return[];let tr=_.filter(ur=>_t(ur,Dt));return 0Rt(ur,Dt)):[]}function _t(Dt,tr){return tr.properties?!Dh(tr.properties,(ur,Gr)=>{let dt=d.getTypeOfPropertyOfType(Dt,Gr);return dt?ur.calls?!d.getSignaturesOfType(dt,0).length||!d.isTypeAssignableTo(dt,Pt(ur.calls)):!d.isTypeAssignableTo(dt,Ye(ur)):!0}):!1}function Rt(Dt,tr){if(!(la(Dt)&4)||!tr.properties)return Dt;let ur=Dt.target,Gr=Ps(ur.typeParameters);if(!Gr)return Dt;let dt=[];return tr.properties.forEach((pr,st)=>{let ir=d.getTypeOfPropertyOfType(ur,st);pe.assert(!!ir,"generic should have all the properties of its reference."),dt.push(...Lt(ir,Ye(pr),Gr))}),h[Dt.symbol.escapedName](Tt(dt))}function Lt(Dt,tr,ur){if(Dt===ur)return[tr];if(Dt.flags&3145728)return er(Dt.types,pr=>Lt(pr,tr,ur));if(la(Dt)&4&&la(tr)&4){let pr=d.getTypeArguments(Dt),st=d.getTypeArguments(tr),ir=[];if(pr&&st)for(let zt=0;ztdt.argumentTypes.length));for(let dt=0;dtst.argumentTypes[dt]||d.getUndefinedType())),Dt.some(st=>st.argumentTypes[dt]===void 0)&&(pr.flags|=16777216),tr.push(pr)}let Gr=Ye(R(Dt.map(dt=>dt.return_)));return d.createSignature(void 0,void 0,void 0,tr,Gr,void 0,ur,0)}function Gt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateTypes||(Dt.candidateTypes=[])).push(tr)}function nt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateThisTypes||(Dt.candidateThisTypes=[])).push(tr)}}var LQt="fixReturnTypeInAsyncFunction",Gun=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];xg({errorCodes:Gun,fixIds:[LQt],getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_=d.getTypeChecker(),S=Fun(g,d.getTypeChecker(),h.start);if(!S)return;let{returnTypeNode:R,returnType:T,promisedTypeNode:W,promisedType:V}=S,M=xo.ChangeTracker.with(c,ee=>Zun(ee,g,R,W));return[ug(LQt,M,[Z.Replace_0_with_Promise_1,_.typeToString(T),_.typeToString(V)],LQt,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:s=>Qd(s,Gun,(c,g)=>{let d=Fun(g.file,s.program.getTypeChecker(),g.start);d&&Zun(c,g.file,d.returnTypeNode,d.promisedTypeNode)})});function Fun(s,c,g){if(wo(s))return;let d=Jc(s,g),h=ji(d,kd),_=h?.type;if(!_)return;let S=c.getTypeFromTypeNode(_),R=c.getAwaitedType(S)||c.getVoidType(),T=c.typeToTypeNode(R,_,void 0);if(T)return{returnTypeNode:_,returnType:S,promisedTypeNode:T,promisedType:R}}function Zun(s,c,g,d){s.replaceNode(c,g,me.createTypeReferenceNode("Promise",[d]))}var Lun="disableJsDiagnostics",Vun="disableJsDiagnostics",Pun=Xt(Object.keys(Z),s=>{let c=Z[s];return c.category===1?c.code:void 0});xg({errorCodes:Pun,getCodeActions:function(c){let{sourceFile:g,program:d,span:h,host:_,formatContext:S}=c;if(!wo(g)||!rz(g,d.getCompilerOptions()))return;let R=g.checkJsDirective?"":OF(_,S.options),T=[sR(Lun,[won(g.fileName,[g1e(g.checkJsDirective?wA(g.checkJsDirective.pos,g.checkJsDirective.end):zd(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return xo.isValidLocationToAddComment(g,h.start)&&T.unshift(ug(Lun,xo.ChangeTracker.with(c,W=>Wun(W,g,h.start)),Z.Ignore_this_error_message,Vun,Z.Add_ts_ignore_to_all_error_messages)),T},fixIds:[Vun],getAllCodeActions:s=>{let c=new Set;return Qd(s,Pun,(g,d)=>{xo.isValidLocationToAddComment(d.file,d.start)&&Wun(g,d.file,d.start,c)})}});function Wun(s,c,g,d){let{line:h}=Ra(c,g);(!d||Ar(d,h))&&s.insertCommentBeforeLine(c,h,g," @ts-ignore")}function VQt(s,c,g,d,h,_,S){let R=s.symbol.members;for(let T of c)R.has(T.escapedName)||Mun(T,s,g,d,h,_,S,void 0)}function rse(s){return{trackSymbol:()=>!1,moduleResolverHost:Vrt(s.program,s.host)}}var Oun=(s=>(s[s.Method=1]="Method",s[s.Property=2]="Property",s[s.All=3]="All",s))(Oun||{});function Mun(s,c,g,d,h,_,S,R,T=3,W=!1){let V=s.getDeclarations(),M=Nc(V),ee=d.program.getTypeChecker(),re=Mg(d.program.getCompilerOptions()),ge=M?.kind??172,Ie=_t(s,M),_e=M?o_(M):0,Ee=_e&256;Ee|=_e&1?1:_e&4?4:0,M&&t0(M)&&(Ee|=512);let Ne=Tt(),Te=ee.getWidenedType(ee.getTypeOfSymbolAtLocation(s,c)),Ze=!!(s.flags&16777216),We=!!(c.flags&33554432)||W,Ue=_1(g,h),$e=1|(Ue===0?268435456:0);switch(ge){case 172:case 173:let Rt=ee.typeToTypeNode(Te,c,$e,8,rse(d));if(_){let Ke=bQ(Rt,re);Ke&&(Rt=Ke.typeNode,FU(_,Ke.symbols))}S(me.createPropertyDeclaration(Ne,M?Qe(Ie):s.getName(),Ze&&T&2?me.createToken(58):void 0,Rt,void 0));break;case 178:case 179:{pe.assertIsDefined(V);let Ke=ee.typeToTypeNode(Te,c,$e,void 0,rse(d)),Pt=BP(V,M),_r=Pt.secondAccessor?[Pt.firstAccessor,Pt.secondAccessor]:[Pt.firstAccessor];if(_){let Gt=bQ(Ke,re);Gt&&(Ke=Gt.typeNode,FU(_,Gt.symbols))}for(let Gt of _r)if(Bg(Gt))S(me.createGetAccessorDeclaration(Ne,Qe(Ie),E,ht(Ke),mt(R,Ue,We)));else{pe.assertNode(Gt,Dg,"The counterpart to a getter should be a setter");let nt=L7(Gt),Dt=nt&&Ir(nt.name)?Vo(nt.name):void 0;S(me.createSetAccessorDeclaration(Ne,Qe(Ie),OQt(1,[Dt],[ht(Ke)],1,!1),mt(R,Ue,We)))}break}case 174:case 175:pe.assertIsDefined(V);let Lt=Te.isUnion()?er(Te.types,Ke=>Ke.getCallSignatures()):Te.getCallSignatures();if(!jt(Lt))break;if(V.length===1){pe.assert(Lt.length===1,"One declaration implies one signature");let Ke=Lt[0];Ye(Ue,Ke,Ne,Qe(Ie),mt(R,Ue,We));break}for(let Ke of Lt)Ke.declaration&&Ke.declaration.flags&33554432||Ye(Ue,Ke,Ne,Qe(Ie));if(!We)if(V.length>Lt.length){let Ke=ee.getSignatureFromDeclaration(V[V.length-1]);Ye(Ue,Ke,Ne,Qe(Ie),mt(R,Ue))}else pe.assert(V.length===Lt.length,"Declarations and signatures should match count"),S(HFs(ee,d,c,Lt,Qe(Ie),Ze&&!!(T&1),Ne,Ue,R));break}function Ye(Rt,Lt,Ke,Pt,_r){let Gt=Bit(175,d,Rt,Lt,_r,Pt,Ke,Ze&&!!(T&1),c,_);Gt&&S(Gt)}function Tt(){let Rt;return Ee&&(Rt=zr(Rt,me.createModifiersFromModifierFlags(Ee))),ot()&&(Rt=Ft(Rt,me.createToken(164))),Rt&&me.createNodeArray(Rt)}function ot(){return!!(d.program.getCompilerOptions().noImplicitOverride&&M&&wP(M))}function Qe(Rt){return Ir(Rt)&&Rt.escapedText==="constructor"?me.createComputedPropertyName(me.createStringLiteral(Vo(Rt),Ue===0)):JA(Rt,!1)}function mt(Rt,Lt,Ke){return Ke?void 0:JA(Rt,!1)||MQt(Lt)}function ht(Rt){return JA(Rt,!1)}function _t(Rt,Lt){if(iI(Rt)&262144){let Ke=Rt.links.nameType;if(Ke&&g2(Ke))return me.createIdentifier(Bc(A2(Ke)))}return JA(Il(Lt),!1)}}function Bit(s,c,g,d,h,_,S,R,T,W){let V=c.program,M=V.getTypeChecker(),ee=Mg(V.getCompilerOptions()),re=wo(T),ge=524545|(g===0?268435456:0),Ie=M.signatureToSignatureDeclaration(d,s,T,ge,8,rse(c));if(!Ie)return;let _e=re?void 0:Ie.typeParameters,Ee=Ie.parameters,Ne=re?void 0:JA(Ie.type);if(W){if(_e){let Ue=Tr(_e,$e=>{let Ye=$e.constraint,Tt=$e.default;if(Ye){let ot=bQ(Ye,ee);ot&&(Ye=ot.typeNode,FU(W,ot.symbols))}if(Tt){let ot=bQ(Tt,ee);ot&&(Tt=ot.typeNode,FU(W,ot.symbols))}return me.updateTypeParameterDeclaration($e,$e.modifiers,$e.name,Ye,Tt)});_e!==Ue&&(_e=gn(me.createNodeArray(Ue,_e.hasTrailingComma),_e))}let We=Tr(Ee,Ue=>{let $e=re?void 0:Ue.type;if($e){let Ye=bQ($e,ee);Ye&&($e=Ye.typeNode,FU(W,Ye.symbols))}return me.updateParameterDeclaration(Ue,Ue.modifiers,Ue.dotDotDotToken,Ue.name,re?void 0:Ue.questionToken,$e,Ue.initializer)});if(Ee!==We&&(Ee=gn(me.createNodeArray(We,Ee.hasTrailingComma),Ee)),Ne){let Ue=bQ(Ne,ee);Ue&&(Ne=Ue.typeNode,FU(W,Ue.symbols))}}let Te=R?me.createToken(58):void 0,Ze=Ie.asteriskToken;if(UA(Ie))return me.updateFunctionExpression(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body);if(lA(Ie))return me.updateArrowFunction(Ie,S,_e,Ee,Ne,Ie.equalsGreaterThanToken,h??Ie.body);if(uu(Ie))return me.updateMethodDeclaration(Ie,S,Ze,_??me.createIdentifier(""),Te,_e,Ee,Ne,h);if(ih(Ie))return me.updateFunctionDeclaration(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body)}function PQt(s,c,g,d,h,_,S){let R=_1(c.sourceFile,c.preferences),T=Mg(c.program.getCompilerOptions()),W=rse(c),V=c.program.getTypeChecker(),M=wo(S),{typeArguments:ee,arguments:re,parent:ge}=d,Ie=M?void 0:V.getContextualType(d),_e=At(re,Tt=>Ir(Tt)?Tt.text:jo(Tt)&&Ir(Tt.name)?Tt.name.text:void 0),Ee=M?[]:At(re,Tt=>V.getTypeAtLocation(Tt)),{argumentTypeNodes:Ne,argumentTypeParameters:Te}=OFs(V,g,Ee,S,T,1,8,W),Ze=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,We=Hd(ge)?me.createToken(42):void 0,Ue=M?void 0:PFs(V,Te,ee),$e=OQt(re.length,_e,Ne,void 0,M),Ye=M||Ie===void 0?void 0:V.typeToTypeNode(Ie,S,void 0,void 0,W);switch(s){case 175:return me.createMethodDeclaration(Ze,We,h,void 0,Ue,$e,Ye,MQt(R));case 174:return me.createMethodSignature(Ze,h,void 0,Ue,$e,Ye===void 0?me.createKeywordTypeNode(159):Ye);case 263:return pe.assert(typeof h=="string"||Ir(h),"Unexpected name"),me.createFunctionDeclaration(Ze,We,h,Ue,$e,Ye,WPe(Z.Function_not_implemented.message,R));default:pe.fail("Unexpected kind")}}function PFs(s,c,g){let d=new Set(c.map(_=>_[0])),h=new Map(c);if(g){let _=g.filter(R=>!c.some(T=>{var W;return s.getTypeAtLocation(R)===((W=T[1])==null?void 0:W.argumentType)})),S=d.size+_.length;for(let R=0;d.size{var S;return me.createTypeParameterDeclaration(void 0,_,(S=h.get(_))==null?void 0:S.constraint)})}function Hun(s){return 84+s<=90?String.fromCharCode(84+s):`T${s}`}function wit(s,c,g,d,h,_,S,R){let T=s.typeToTypeNode(g,d,_,S,R);if(T)return WQt(T,c,h)}function WQt(s,c,g){let d=bQ(s,g);return d&&(FU(c,d.symbols),s=d.typeNode),JA(s)}function WFs(s,c){var g;pe.assert(c.typeArguments);let d=c.typeArguments,h=c.target;for(let _=0;_T===d[W]))return _}return d.length}function Yun(s,c,g,d,h,_){let S=s.typeToTypeNode(c,g,d,h,_);if(S){if(nh(S)){let R=c;if(R.typeArguments&&S.typeArguments){let T=WFs(s,R);if(T=d?me.createToken(58):void 0,h?void 0:g?.[R]||me.createKeywordTypeNode(159),void 0);_.push(V)}return _}function HFs(s,c,g,d,h,_,S,R,T){let W=d[0],V=d[0].minArgumentCount,M=!1;for(let Ie of d)V=Math.min(Ie.minArgumentCount,V),D0(Ie)&&(M=!0),Ie.parameters.length>=W.parameters.length&&(!D0(Ie)||D0(W))&&(W=Ie);let ee=W.parameters.length-(D0(W)?1:0),re=W.parameters.map(Ie=>Ie.name),ge=OQt(ee,re,void 0,V,!1);if(M){let Ie=me.createParameterDeclaration(void 0,me.createToken(26),re[ee]||"rest",ee>=V?me.createToken(58):void 0,me.createArrayTypeNode(me.createKeywordTypeNode(159)),void 0);ge.push(Ie)}return QFs(S,h,_,void 0,ge,YFs(d,s,c,g),R,T)}function YFs(s,c,g,d){if(B(s)){let h=c.getUnionType(At(s,c.getReturnTypeOfSignature));return c.typeToTypeNode(h,d,1,8,rse(g))}}function QFs(s,c,g,d,h,_,S,R){return me.createMethodDeclaration(s,void 0,c,g?me.createToken(58):void 0,d,h,_,R||MQt(S))}function MQt(s){return WPe(Z.Method_not_implemented.message,s)}function WPe(s,c){return me.createBlock([me.createThrowStatement(me.createNewExpression(me.createIdentifier("Error"),void 0,[me.createStringLiteral(s,c===0)]))],!0)}function HQt(s,c,g){let d=m7(c);if(!d)return;let h=Uun(d,"compilerOptions");if(h===void 0){s.insertNodeAtObjectStart(c,d,QQt("compilerOptions",me.createObjectLiteralExpression(g.map(([S,R])=>QQt(S,R)),!0)));return}let _=h.initializer;if(og(_))for(let[S,R]of g){let T=Uun(_,S);T===void 0?s.insertNodeAtObjectStart(c,_,QQt(S,R)):s.replaceNode(c,T.initializer,R)}}function YQt(s,c,g,d){HQt(s,c,[[g,d]])}function QQt(s,c){return me.createPropertyAssignment(me.createStringLiteral(s),c)}function Uun(s,c){return de(s.properties,g=>fm(g)&&!!g.name&&Zg(g.name)&&g.name.text===c)}function bQ(s,c){let g,d=Mr(s,h,uc);if(g&&d)return{typeNode:d,symbols:g};function h(_){if(ky(_)&&_.qualifier){let S=B0(_.qualifier);if(!S.symbol)return _s(_,h,void 0);let R=cPe(S.symbol,c),T=R!==S.text?Kun(_.qualifier,me.createIdentifier(R)):_.qualifier;g=Ft(g,S.symbol);let W=Ws(_.typeArguments,h,uc);return me.createTypeReferenceNode(T,W)}return _s(_,h,void 0)}}function Kun(s,c){return s.kind===80?c:me.createQualifiedName(Kun(s.left,c),s.right)}function FU(s,c){c.forEach(g=>s.addImportFromExportedSymbol(g,!0))}function XQt(s,c){let g=Rs(c),d=Jc(s,c.start);for(;d.end_.replaceNode(c,g,d));return sR(tgn,h,[Z.Replace_import_with_0,h[0].textChanges[0].newText])}xg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:iZs});function iZs(s){let c=s.sourceFile,g=Z.This_expression_is_not_callable.code===s.errorCode?214:215,d=ji(Jc(c,s.span.start),_=>_.kind===g);if(!d)return[];let h=d.expression;return ngn(s,h)}xg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:sZs});function sZs(s){let c=s.sourceFile,g=ji(Jc(c,s.span.start),d=>d.getStart()===s.span.start&&d.getEnd()===s.span.start+s.span.length);return g?ngn(s,g):[]}function ngn(s,c){let g=s.program.getTypeChecker().getTypeAtLocation(c);if(!(g.symbol&&bw(g.symbol)&&g.symbol.links.originatingImport))return[];let d=[],h=g.symbol.links.originatingImport;if(Up(h)||Or(d,nZs(s,h)),un(c)&&!(rh(c.parent)&&c.parent.name===c)){let _=s.sourceFile,S=xo.ChangeTracker.with(s,R=>R.replaceNode(_,c,me.createPropertyAccessExpression(c,"default"),{}));d.push(sR(tgn,S,Z.Use_synthetic_default_member))}return d}var JQt="strictClassInitialization",UQt="addMissingPropertyDefiniteAssignmentAssertions",KQt="addMissingPropertyUndefinedType",jQt="addMissingPropertyInitializer",ign=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];xg({errorCodes:ign,getCodeActions:function(c){let g=sgn(c.sourceFile,c.span.start);if(!g)return;let d=[];return Ft(d,aZs(c,g)),Ft(d,oZs(c,g)),Ft(d,cZs(c,g)),d},fixIds:[UQt,KQt,jQt],getAllCodeActions:s=>Qd(s,ign,(c,g)=>{let d=sgn(g.file,g.start);if(d)switch(s.fixId){case UQt:ogn(c,g.file,d.prop);break;case KQt:agn(c,g.file,d);break;case jQt:let h=s.program.getTypeChecker(),_=lgn(h,d.prop);if(!_)return;cgn(c,g.file,d.prop,_);break;default:pe.fail(JSON.stringify(s.fixId))}})});function sgn(s,c){let g=Jc(s,c);if(Ir(g)&&pi(g.parent)){let d=kh(g.parent);if(d)return{type:d,prop:g.parent,isJs:wo(g.parent)}}}function oZs(s,c){if(c.isJs)return;let g=xo.ChangeTracker.with(s,d=>ogn(d,s.sourceFile,c.prop));return ug(JQt,g,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],UQt,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function ogn(s,c,g){Vy(g);let d=me.updatePropertyDeclaration(g,g.modifiers,g.name,me.createToken(54),g.type,g.initializer);s.replaceNode(c,g,d)}function aZs(s,c){let g=xo.ChangeTracker.with(s,d=>agn(d,s.sourceFile,c));return ug(JQt,g,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],KQt,Z.Add_undefined_type_to_all_uninitialized_properties)}function agn(s,c,g){let d=me.createKeywordTypeNode(157),h=aS(g.type)?g.type.types.concat(d):[g.type,d],_=me.createUnionTypeNode(h);g.isJs?s.addJSDocTags(c,g.prop,[me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(_))]):s.replaceNode(c,g.type,_)}function cZs(s,c){if(c.isJs)return;let g=s.program.getTypeChecker(),d=lgn(g,c.prop);if(!d)return;let h=xo.ChangeTracker.with(s,_=>cgn(_,s.sourceFile,c.prop,d));return ug(JQt,h,[Z.Add_initializer_to_property_0,c.prop.name.getText()],jQt,Z.Add_initializers_to_all_uninitialized_properties)}function cgn(s,c,g,d){Vy(g);let h=me.updatePropertyDeclaration(g,g.modifiers,g.name,g.questionToken,g.type,d);s.replaceNode(c,g,h)}function lgn(s,c){return ugn(s,s.getTypeFromTypeNode(c.type))}function ugn(s,c){if(c.flags&512)return c===s.getFalseType()||c===s.getFalseType(!0)?me.createFalse():me.createTrue();if(c.isStringLiteral())return me.createStringLiteral(c.value);if(c.isNumberLiteral())return me.createNumericLiteral(c.value);if(c.flags&2048)return me.createBigIntLiteral(c.value);if(c.isUnion())return X(c.types,g=>ugn(s,g));if(c.isClass()){let g=AN(c.symbol);if(!g||Ga(g,64))return;let d=lN(g);return d&&d.parameters.length?void 0:me.createNewExpression(me.createIdentifier(c.symbol.name),void 0,void 0)}else if(s.isArrayLikeType(c))return me.createArrayLiteralExpression()}var zQt="requireInTs",ggn=[Z.require_call_may_be_converted_to_an_import.code];xg({errorCodes:ggn,getCodeActions(s){let c=dgn(s.sourceFile,s.program,s.span.start,s.preferences);if(!c)return;let g=xo.ChangeTracker.with(s,d=>Agn(d,s.sourceFile,c));return[ug(zQt,g,Z.Convert_require_to_import,zQt,Z.Convert_all_require_to_import)]},fixIds:[zQt],getAllCodeActions:s=>Qd(s,ggn,(c,g)=>{let d=dgn(g.file,s.program,g.start,s.preferences);d&&Agn(c,s.sourceFile,d)})});function Agn(s,c,g){let{allowSyntheticDefaults:d,defaultImportName:h,namedImports:_,statement:S,moduleSpecifier:R}=g;s.replaceNode(c,S,h&&!d?me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(void 0,h,_),R,void 0))}function dgn(s,c,g,d){let{parent:h}=Jc(s,g);ay(h,!0)||pe.failBadSyntaxKind(h);let _=Ma(h.parent,nc),S=_1(s,d),R=Gs(_.name,Ir),T=Km(_.name)?lZs(_.name):void 0;if(R||T){let W=ma(h.arguments);return{allowSyntheticDefaults:JY(c.getCompilerOptions()),defaultImportName:R,namedImports:T,statement:Ma(_.parent.parent,Ch),moduleSpecifier:GP(W)?me.createStringLiteral(W.text,S===0):W}}}function lZs(s){let c=[];for(let g of s.elements){if(!Ir(g.name)||g.initializer)return;c.push(me.createImportSpecifier(!1,Gs(g.propertyName,Ir),g.name))}if(c.length)return me.createNamedImports(c)}var qQt="useDefaultImport",pgn=[Z.Import_may_be_converted_to_a_default_import.code];xg({errorCodes:pgn,getCodeActions(s){let{sourceFile:c,span:{start:g}}=s,d=fgn(c,g);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Ign(_,c,d,s.preferences));return[ug(qQt,h,Z.Convert_to_default_import,qQt,Z.Convert_all_to_default_imports)]},fixIds:[qQt],getAllCodeActions:s=>Qd(s,pgn,(c,g)=>{let d=fgn(g.file,g.start);d&&Ign(c,g.file,d,s.preferences)})});function fgn(s,c){let g=Jc(s,c);if(!Ir(g))return;let{parent:d}=g;if(km(d)&&ZF(d.moduleReference))return{importNode:d,name:g,moduleSpecifier:d.moduleReference.expression};if(Zx(d)&&Mf(d.parent.parent)){let h=d.parent.parent;return{importNode:h,name:g,moduleSpecifier:h.moduleSpecifier}}}function Ign(s,c,g,d){s.replaceNode(c,g.importNode,QP(g.name,void 0,g.moduleSpecifier,_1(c,d)))}var $Qt="useBigintLiteral",hgn=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];xg({errorCodes:hgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>mgn(d,c.sourceFile,c.span));if(g.length>0)return[ug($Qt,g,Z.Convert_to_a_bigint_numeric_literal,$Qt,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[$Qt],getAllCodeActions:s=>Qd(s,hgn,(c,g)=>mgn(c,g.file,g))});function mgn(s,c,g){let d=Gs(Jc(c,g.start),mC);if(!d)return;let h=d.getText(c)+"n";s.replaceNode(c,d,me.createBigIntLiteral(h))}var uZs="fixAddModuleReferTypeMissingTypeof",eXt=uZs,Cgn=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];xg({errorCodes:Cgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=_gn(g,d.start),_=xo.ChangeTracker.with(c,S=>ygn(S,g,h));return[ug(eXt,_,Z.Add_missing_typeof,eXt,Z.Add_missing_typeof)]},fixIds:[eXt],getAllCodeActions:s=>Qd(s,Cgn,(c,g)=>ygn(c,s.sourceFile,_gn(g.file,g.start)))});function _gn(s,c){let g=Jc(s,c);return pe.assert(g.kind===102,"This token should be an ImportKeyword"),pe.assert(g.parent.kind===206,"Token parent should be an ImportType"),g.parent}function ygn(s,c,g){let d=me.updateImportTypeNode(g,g.argument,g.attributes,g.qualifier,g.typeArguments,!0);s.replaceNode(c,g,d)}var tXt="wrapJsxInFragment",bgn=[Z.JSX_expressions_must_have_one_parent_element.code];xg({errorCodes:bgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Egn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,S=>Sgn(S,g,h));return[ug(tXt,_,Z.Wrap_in_JSX_fragment,tXt,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[tXt],getAllCodeActions:s=>Qd(s,bgn,(c,g)=>{let d=Egn(s.sourceFile,g.start);d&&Sgn(c,s.sourceFile,d)})});function Egn(s,c){let h=Jc(s,c).parent.parent;if(!(!fo(h)&&(h=h.parent,!fo(h)))&&sf(h.operatorToken))return h}function Sgn(s,c,g){let d=gZs(g);d&&s.replaceNode(c,g,me.createJsxFragment(me.createJsxOpeningFragment(),d,me.createJsxJsxClosingFragment()))}function gZs(s){let c=[],g=s;for(;;)if(fo(g)&&sf(g.operatorToken)&&g.operatorToken.kind===28){if(c.push(g.left),BJ(g.right))return c.push(g.right),c;if(fo(g.right)){g=g.right;continue}else return}else return}var rXt="wrapDecoratorInParentheses",vgn=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];xg({errorCodes:vgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Bgn(d,c.sourceFile,c.span.start));return[ug(rXt,g,Z.Wrap_in_parentheses,rXt,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[rXt],getAllCodeActions:s=>Qd(s,vgn,(c,g)=>Bgn(c,g.file,g.start))});function Bgn(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createParenthesizedExpression(h.expression);s.replaceNode(c,h.expression,_)}var nXt="fixConvertToMappedObjectType",wgn=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];xg({errorCodes:wgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Tgn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,R=>Rgn(R,g,h)),S=Vo(h.container.name);return[ug(nXt,_,[Z.Convert_0_to_mapped_object_type,S],nXt,[Z.Convert_0_to_mapped_object_type,S])]},fixIds:[nXt],getAllCodeActions:s=>Qd(s,wgn,(c,g)=>{let d=Tgn(g.file,g.start);d&&Rgn(c,g.file,d)})});function Tgn(s,c){let g=Jc(s,c),d=Gs(g.parent.parent,w0);if(!d)return;let h=g_(d.parent)?d.parent:Gs(d.parent.parent,FB);if(h)return{indexSignature:d,container:h}}function AZs(s,c){return me.createTypeAliasDeclaration(s.modifiers,s.name,s.typeParameters,c)}function Rgn(s,c,{indexSignature:g,container:d}){let _=(g_(d)?d.members:d.type.members).filter(V=>!w0(V)),S=ma(g.parameters),R=me.createTypeParameterDeclaration(void 0,Ma(S.name,Ir),S.type),T=me.createMappedTypeNode(b3(g)?me.createModifier(148):void 0,R,void 0,g.questionToken,g.type,void 0),W=me.createIntersectionTypeNode([...R7(d),T,..._.length?[me.createTypeLiteralNode(_)]:E]);s.replaceNode(c,d,AZs(d,W))}var Ngn="removeAccidentalCallParentheses",dZs=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];xg({errorCodes:dZs,getCodeActions(s){let c=ji(Jc(s.sourceFile,s.span.start),Zl);if(!c)return;let g=xo.ChangeTracker.with(s,d=>{d.deleteRange(s.sourceFile,{pos:c.expression.end,end:c.end})});return[sR(Ngn,g,Z.Remove_parentheses)]},fixIds:[Ngn]});var iXt="removeUnnecessaryAwait",Dgn=[Z.await_has_no_effect_on_the_type_of_this_expression.code];xg({errorCodes:Dgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>kgn(d,c.sourceFile,c.span));if(g.length>0)return[ug(iXt,g,Z.Remove_unnecessary_await,iXt,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[iXt],getAllCodeActions:s=>Qd(s,Dgn,(c,g)=>kgn(c,g.file,g))});function kgn(s,c,g){let d=Gs(Jc(c,g.start),R=>R.kind===135),h=d&&Gs(d.parent,I1);if(!h)return;let _=h;if(gI(h.parent)){let R=aU(h.expression,!1);if(Ir(R)){let T=Gm(h.parent.pos,c);T&&T.kind!==105&&(_=h.parent)}}s.replaceNode(c,_,h.expression)}var xgn=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],sXt="splitTypeOnlyImport";xg({errorCodes:xgn,fixIds:[sXt],getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Fgn(d,Ggn(c.sourceFile,c.span),c));if(g.length)return[ug(sXt,g,Z.Split_into_two_separate_import_declarations,sXt,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:s=>Qd(s,xgn,(c,g)=>{Fgn(c,Ggn(s.sourceFile,g),s)})});function Ggn(s,c){return ji(Jc(s,c.start),Mf)}function Fgn(s,c,g){if(!c)return;let d=pe.checkDefined(c.importClause);s.replaceNode(g.sourceFile,c,me.updateImportDeclaration(c,c.modifiers,me.updateImportClause(d,d.phaseModifier,d.name,void 0),c.moduleSpecifier,c.attributes)),s.insertNodeAfter(g.sourceFile,c,me.createImportDeclaration(void 0,me.updateImportClause(d,d.phaseModifier,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var oXt="fixConvertConstToLet",Zgn=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];xg({errorCodes:Zgn,getCodeActions:function(c){let{sourceFile:g,span:d,program:h}=c,_=Lgn(g,d.start,h);if(_===void 0)return;let S=xo.ChangeTracker.with(c,R=>Vgn(R,g,_.token));return[hYt(oXt,S,Z.Convert_const_to_let,oXt,Z.Convert_all_const_to_let)]},getAllCodeActions:s=>{let{program:c}=s,g=new Set;return Hz(xo.ChangeTracker.with(s,d=>{Yz(s,Zgn,h=>{let _=Lgn(h.file,h.start,c);if(_&&Zy(g,kg(_.symbol)))return Vgn(d,h.file,_.token)})}))},fixIds:[oXt]});function Lgn(s,c,g){var d;let _=g.getTypeChecker().getSymbolAtLocation(Jc(s,c));if(_===void 0)return;let S=Gs((d=_?.valueDeclaration)==null?void 0:d.parent,u_);if(S===void 0)return;let R=qd(S,87,s);if(R!==void 0)return{symbol:_,token:R}}function Vgn(s,c,g){s.replaceNode(c,g,me.createToken(121))}var aXt="fixExpectedComma",pZs=Z._0_expected.code,Pgn=[pZs];xg({errorCodes:Pgn,getCodeActions(s){let{sourceFile:c}=s,g=Wgn(c,s.span.start,s.errorCode);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Ogn(h,c,g));return[ug(aXt,d,[Z.Change_0_to_1,";",","],aXt,[Z.Change_0_to_1,";",","])]},fixIds:[aXt],getAllCodeActions:s=>Qd(s,Pgn,(c,g)=>{let d=Wgn(g.file,g.start,g.code);d&&Ogn(c,s.sourceFile,d)})});function Wgn(s,c,g){let d=Jc(s,c);return d.kind===27&&d.parent&&(og(d.parent)||OI(d.parent))?{node:d}:void 0}function Ogn(s,c,{node:g}){let d=me.createToken(28);s.replaceNode(c,g,d)}var fZs="addVoidToPromise",Mgn="addVoidToPromise",Hgn=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];xg({errorCodes:Hgn,fixIds:[Mgn],getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>Ygn(g,s.sourceFile,s.span,s.program));if(c.length>0)return[ug(fZs,c,Z.Add_void_to_Promise_resolved_without_a_value,Mgn,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(s){return Qd(s,Hgn,(c,g)=>Ygn(c,g.file,g,s.program,new Set))}});function Ygn(s,c,g,d,h){let _=Jc(c,g.start);if(!Ir(_)||!Zl(_.parent)||_.parent.expression!==_||_.parent.arguments.length!==0)return;let S=d.getTypeChecker(),R=S.getSymbolAtLocation(_),T=R?.valueDeclaration;if(!T||!Si(T)||!f2(T.parent.parent)||h?.has(T))return;h?.add(T);let W=IZs(T.parent.parent);if(jt(W)){let V=W[0],M=!aS(V)&&!fv(V)&&fv(me.createUnionTypeNode([V,me.createKeywordTypeNode(116)]).types[0]);M&&s.insertText(c,V.pos,"("),s.insertText(c,V.end,M?") | void":" | void")}else{let V=S.getResolvedSignature(_.parent),M=V?.parameters[0],ee=M&&S.getTypeOfSymbolAtLocation(M,T.parent.parent);wo(T)?(!ee||ee.flags&3)&&(s.insertText(c,T.parent.parent.end,")"),s.insertText(c,Yu(c.text,T.parent.parent.pos),"/** @type {Promise} */(")):(!ee||ee.flags&2)&&s.insertText(c,T.parent.parent.expression.end,"")}}function IZs(s){var c;if(wo(s)){if(gI(s.parent)){let g=(c=ov(s.parent))==null?void 0:c.typeExpression.type;if(g&&nh(g)&&Ir(g.typeName)&&Vo(g.typeName)==="Promise")return g.typeArguments}}else return s.typeArguments}var Jz={};o(Jz,{CompletionKind:()=>aAn,CompletionSource:()=>Xgn,SortText:()=>c0,StringCompletions:()=>Pit,SymbolOriginInfoKind:()=>Jgn,createCompletionDetails:()=>HPe,createCompletionDetailsForSymbol:()=>IXt,getCompletionEntriesFromSymbols:()=>pXt,getCompletionEntryDetails:()=>JZs,getCompletionEntrySymbol:()=>KZs,getCompletionsAtPosition:()=>SZs,getDefaultCommitCharacters:()=>ZU,getPropertiesForObjectExpression:()=>Zit,moduleSpecifierResolutionCacheAttemptLimit:()=>Qgn,moduleSpecifierResolutionLimit:()=>cXt});var cXt=100,Qgn=1e3,c0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(s){return"z"+s},ObjectLiteralProperty(s,c){return`${s}\0${c}\0`},SortBelow(s){return s+"1"}},RN=[".",",",";"],Tit=[".",";"],Xgn=(s=>(s.ThisProperty="ThisProperty/",s.ClassMemberSnippet="ClassMemberSnippet/",s.TypeOnlyAlias="TypeOnlyAlias/",s.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",s.SwitchCases="SwitchCases/",s.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",s))(Xgn||{}),Jgn=(s=>(s[s.ThisType=1]="ThisType",s[s.SymbolMember=2]="SymbolMember",s[s.Export=4]="Export",s[s.Promise=8]="Promise",s[s.Nullable=16]="Nullable",s[s.ResolvedExport=32]="ResolvedExport",s[s.TypeOnlyAlias=64]="TypeOnlyAlias",s[s.ObjectLiteralMethod=128]="ObjectLiteralMethod",s[s.Ignore=256]="Ignore",s[s.ComputedPropertyName=512]="ComputedPropertyName",s[s.SymbolMemberNoExport=2]="SymbolMemberNoExport",s[s.SymbolMemberExport=6]="SymbolMemberExport",s))(Jgn||{});function hZs(s){return!!(s.kind&1)}function mZs(s){return!!(s.kind&2)}function OPe(s){return!!(s&&s.kind&4)}function cpe(s){return!!(s&&s.kind===32)}function CZs(s){return OPe(s)||cpe(s)||lXt(s)}function _Zs(s){return(OPe(s)||cpe(s))&&!!s.isFromPackageJson}function yZs(s){return!!(s.kind&8)}function bZs(s){return!!(s.kind&16)}function Ugn(s){return!!(s&&s.kind&64)}function Kgn(s){return!!(s&&s.kind&128)}function EZs(s){return!!(s&&s.kind&256)}function lXt(s){return!!(s&&s.kind&512)}function jgn(s,c,g,d,h,_,S,R,T){var W,V,M,ee;let re=Fg(),ge=S||U7(d.getCompilerOptions())||((W=_.autoImportSpecifierExcludeRegexes)==null?void 0:W.length),Ie=!1,_e=0,Ee=0,Ne=0,Te=0,Ze=T({tryResolve:Ue,skippedAny:()=>Ie,resolvedAny:()=>Ee>0,resolvedBeyondLimit:()=>Ee>cXt}),We=Te?` (${(Ne/Te*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${s}: resolved ${Ee} module specifiers, plus ${_e} ambient and ${Ne} from cache${We}`),(M=c.log)==null||M.call(c,`${s}: response is ${Ie?"incomplete":"complete"}`),(ee=c.log)==null||ee.call(c,`${s}: ${Fg()-re}`),Ze;function Ue($e,Ye){if(Ye){let mt=g.getModuleSpecifierForBestExportInfo($e,h,R);return mt&&_e++,mt||"failed"}let Tt=ge||_.allowIncompleteCompletions&&Ee{let ge=Xt(T.entries,Ie=>{var _e;if(!Ie.hasAction||!Ie.source||!Ie.data||zgn(Ie.data))return Ie;if(!EAn(Ie.name,V))return;let{origin:Ee}=pe.checkDefined(lAn(Ie.name,Ie.data,d,h)),Ne=M.get(c.path,Ie.data.exportMapKey),Te=Ne&&re.tryResolve(Ne,!Xr(l2(Ee.moduleSymbol.name)));if(Te==="skipped")return Ie;if(!Te||Te==="failed"){(_e=h.log)==null||_e.call(h,`Unexpected failure resolving auto import for '${Ie.name}' from '${Ie.source}'`);return}let Ze={...Ee,kind:32,moduleSpecifier:Te.moduleSpecifier};return Ie.data=sAn(Ze),Ie.source=dXt(Ze),Ie.sourceDisplay=[gS(Ze.moduleSpecifier)],Ie});return re.skippedAny()||(T.isIncomplete=void 0),ge});return T.entries=ee,T.flags=(T.flags||0)|4,T.optionalReplacementSpan=tAn(W),T}function uXt(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:s,defaultCommitCharacters:ZU(!1)}}function qgn(s,c,g,d,h,_){let S=Jc(s,c);if(!u3(S)&&!tR(S))return[];let R=tR(S)?S:S.parent;if(!tR(R))return[];let T=R.parent;if(!bu(T))return[];let W=n0(s),V=h.includeCompletionsWithSnippetText||void 0,M=ct(R.tags,ee=>cS(ee)&&ee.getEnd()<=c);return Xt(T.parameters,ee=>{if(!vL(ee).length){if(Ir(ee.name)){let re={tabstop:1},ge=ee.name.text,Ie=W1e(ge,ee.initializer,ee.dotDotDotToken,W,!1,!1,g,d,h),_e=V?W1e(ge,ee.initializer,ee.dotDotDotToken,W,!1,!0,g,d,h,re):void 0;return _&&(Ie=Ie.slice(1),_e&&(_e=_e.slice(1))),{name:Ie,kind:"parameter",sortText:c0.LocationPriority,insertText:V?_e:void 0,isSnippet:V}}else if(ee.parent.parameters.indexOf(ee)===M){let re=`param${M}`,ge=$gn(re,ee.name,ee.initializer,ee.dotDotDotToken,W,!1,g,d,h),Ie=V?$gn(re,ee.name,ee.initializer,ee.dotDotDotToken,W,!0,g,d,h):void 0,_e=ge.join(uN(d)+"* "),Ee=Ie?.join(uN(d)+"* ");return _&&(_e=_e.slice(1),Ee&&(Ee=Ee.slice(1))),{name:_e,kind:"parameter",sortText:c0.LocationPriority,insertText:V?Ee:void 0,isSnippet:V}}}})}function $gn(s,c,g,d,h,_,S,R,T){if(!h)return[W1e(s,g,d,h,!1,_,S,R,T,{tabstop:1})];return W(s,c,g,d,{tabstop:1});function W(M,ee,re,ge,Ie){if(Km(ee)&&!ge){let Ee={tabstop:Ie.tabstop},Ne=W1e(M,re,ge,h,!0,_,S,R,T,Ee),Te=[];for(let Ze of ee.elements){let We=V(M,Ze,Ee);if(We)Te.push(...We);else{Te=void 0;break}}if(Te)return Ie.tabstop=Ee.tabstop,[Ne,...Te]}return[W1e(M,re,ge,h,!1,_,S,R,T,Ie)]}function V(M,ee,re){if(!ee.propertyName&&Ir(ee.name)||Ir(ee.name)){let ge=ee.propertyName?xY(ee.propertyName):ee.name.text;if(!ge)return;let Ie=`${M}.${ge}`;return[W1e(Ie,ee.initializer,ee.dotDotDotToken,h,!1,_,S,R,T,re)]}else if(ee.propertyName){let ge=xY(ee.propertyName);return ge&&W(`${M}.${ge}`,ee.name,ee.initializer,ee.dotDotDotToken,re)}}}function W1e(s,c,g,d,h,_,S,R,T,W){if(_&&pe.assertIsDefined(W),c&&(s=BZs(s,c)),_&&(s=xP(s)),d){let V="*";if(h)pe.assert(!g,"Cannot annotate a rest parameter with type 'Object'."),V="Object";else{if(c){let re=S.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ge=c.getSourceFile(),_e=_1(ge,T)===0?268435456:0,Ee=S.typeToTypeNode(re,ji(c,bu),_e);if(Ee){let Ne=_?Dit({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target}):MP({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target});ti(Ee,1),V=Ne.printNode(4,Ee,ge)}}}_&&V==="*"&&(V=`\${${W.tabstop++}:${V}}`)}let M=!h&&g?"...":"",ee=_?`\${${W.tabstop++}}`:"";return`@param {${M}${V}} ${s} ${ee}`}else{let V=_?`\${${W.tabstop++}}`:"";return`@param ${s} ${V}`}}function BZs(s,c){let g=c.getText().trim();return g.includes(` -`)||g.length>80?`[${s}]`:`[${s}=${g}]`}function wZs(s){return{name:Vi(s),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords}}function TZs(s,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:s.slice(),defaultCommitCharacters:ZU(c)}}function eAn(s,c,g){return{kind:4,keywordCompletions:gAn(s,c),isNewIdentifierLocation:g}}function RZs(s){switch(s){case 156:return 8;default:pe.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function tAn(s){return s?.kind===80?Oy(s):void 0}function NZs(s,c,g,d,h,_,S,R,T,W){let{symbols:V,contextToken:M,completionKind:ee,isInSnippetScope:re,isNewIdentifierLocation:ge,location:Ie,propertyAccessToConvert:_e,keywordFilters:Ee,symbolToOriginInfoMap:Ne,recommendedCompletion:Te,isJsxInitializer:Ze,isTypeOnlyLocation:We,isJsxIdentifierExpected:Ue,isRightOfOpenTag:$e,isRightOfDotOrQuestionDot:Ye,importStatementCompletion:Tt,insideJsDocTagTypeExpression:ot,symbolToSortTextMap:Qe,hasUnresolvedAutoImports:mt,defaultCommitCharacters:ht}=_,_t=_.literals,Rt=g.getTypeChecker();if(Zne(s.scriptKind)===1){let nt=kZs(Ie,s);if(nt)return nt}let Lt=ji(M,fie);if(Lt&&(Ks(M)||EP(M,Lt.expression))){let nt=APe(Rt,Lt.parent.clauses);_t=_t.filter(Dt=>!nt.hasValue(Dt)),V.forEach((Dt,tr)=>{if(Dt.valueDeclaration&&LF(Dt.valueDeclaration)){let ur=Rt.getConstantValue(Dt.valueDeclaration);ur!==void 0&&nt.hasValue(ur)&&(Ne[tr]={kind:256})}})}let Ke=Ya(),Pt=rAn(s,d);if(Pt&&!ge&&(!V||V.length===0)&&Ee===0)return;let _r=pXt(V,Ke,void 0,M,Ie,T,s,c,g,Mg(d),h,ee,S,d,R,We,_e,Ue,Ze,Tt,Te,Ne,Qe,Ue,$e,W);if(Ee!==0)for(let nt of gAn(Ee,!ot&&n0(s)))(We&&Qde(Ta(nt.name))||!We&&fLs(nt.name)||!_r.has(nt.name))&&(_r.add(nt.name),Gc(Ke,nt,MPe,void 0,!0));for(let nt of tLs(M,T))_r.has(nt.name)||(_r.add(nt.name),Gc(Ke,nt,MPe,void 0,!0));for(let nt of _t){let Dt=GZs(s,S,nt);_r.add(Dt.name),Gc(Ke,Dt,MPe,void 0,!0)}Pt||xZs(s,Ie.pos,_r,Mg(d),Ke);let Gt;if(S.includeCompletionsWithInsertText&&M&&!$e&&!Ye&&(Gt=ji(M,ade))){let nt=nAn(Gt,s,S,d,c,g,R);nt&&Ke.push(nt.entry)}return{flags:_.flags,isGlobalCompletion:re,isIncomplete:S.allowIncompleteCompletions&&mt?!0:void 0,isMemberCompletion:DZs(ee),isNewIdentifierLocation:ge,optionalReplacementSpan:tAn(Ie),entries:Ke,defaultCommitCharacters:ht??ZU(ge)}}function rAn(s,c){return!n0(s)||!!rz(s,c)}function nAn(s,c,g,d,h,_,S){let R=s.clauses,T=_.getTypeChecker(),W=T.getTypeAtLocation(s.parent.expression);if(W&&W.isUnion()&&ue(W.types,V=>V.isLiteral())){let V=APe(T,R),M=Mg(d),ee=_1(c,g),re=x0.createImportAdder(c,_,g,h),ge=[];for(let We of W.types)if(We.flags&1024){pe.assert(We.symbol,"An enum member type should have a symbol"),pe.assert(We.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let Ue=We.symbol.valueDeclaration&&T.getConstantValue(We.symbol.valueDeclaration);if(Ue!==void 0){if(V.hasValue(Ue))continue;V.addValue(Ue)}let $e=x0.typeToAutoImportableTypeNode(T,re,We,s,M);if(!$e)return;let Ye=Rit($e,M,ee);if(!Ye)return;ge.push(Ye)}else if(!V.hasValue(We.value))switch(typeof We.value){case"object":ge.push(We.value.negative?me.createPrefixUnaryExpression(41,me.createBigIntLiteral({negative:!1,base10Value:We.value.base10Value})):me.createBigIntLiteral(We.value));break;case"number":ge.push(We.value<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-We.value)):me.createNumericLiteral(We.value));break;case"string":ge.push(me.createStringLiteral(We.value,ee===0));break}if(ge.length===0)return;let Ie=At(ge,We=>me.createCaseClause(We,[])),_e=OF(h,S?.options),Ee=Dit({removeComments:!0,module:d.module,moduleResolution:d.moduleResolution,target:d.target,newLine:E1e(_e)}),Ne=S?We=>Ee.printAndFormatNode(4,We,c,S):We=>Ee.printNode(4,We,c),Te=At(Ie,(We,Ue)=>g.includeCompletionsWithSnippetText?`${Ne(We)}$${Ue+1}`:`${Ne(We)}`).join(_e);return{entry:{name:`${Ee.printNode(4,Ie[0],c)} ...`,kind:"",sortText:c0.GlobalsOrKeywords,insertText:Te,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:g.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function Rit(s,c,g){switch(s.kind){case 184:let d=s.typeName;return Nit(d,c,g);case 200:let h=Rit(s.objectType,c,g),_=Rit(s.indexType,c,g);return h&&_&&me.createElementAccessExpression(h,_);case 202:let S=s.literal;switch(S.kind){case 11:return me.createStringLiteral(S.text,g===0);case 9:return me.createNumericLiteral(S.text,S.numericLiteralFlags)}return;case 197:let R=Rit(s.type,c,g);return R&&(Ir(R)?R:me.createParenthesizedExpression(R));case 187:return Nit(s.exprName,c,g);case 206:pe.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function Nit(s,c,g){if(Ir(s))return s;let d=Bc(s.right.escapedText);return Fbe(d,c)?me.createPropertyAccessExpression(Nit(s.left,c,g),d):me.createElementAccessExpression(Nit(s.left,c,g),me.createStringLiteral(d,g===0))}function DZs(s){switch(s){case 0:case 3:case 2:return!0;default:return!1}}function kZs(s,c){let g=ji(s,d=>{switch(d.kind){case 288:return!0;case 44:case 32:case 80:case 212:return!1;default:return"quit"}});if(g){let d=!!qd(g,32,c),S=g.parent.openingElement.tagName.getText(c)+(d?"":">"),R=Oy(g.tagName),T={name:S,kind:"class",kindModifiers:void 0,sortText:c0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[T],defaultCommitCharacters:ZU(!1)}}}function xZs(s,c,g,d,h){qnt(s).forEach((_,S)=>{if(_===c)return;let R=Bc(S);!g.has(R)&&Uh(R,d)&&(g.add(R),Gc(h,{name:R,kind:"warning",kindModifiers:"",sortText:c0.JavascriptIdentifiers,isFromUncheckedFile:!0,commitCharacters:[]},MPe))})}function gXt(s,c,g){return typeof g=="object"?kP(g)+"n":Xs(g)?zde(s,c,g):JSON.stringify(g)}function GZs(s,c,g){return{name:gXt(s,c,g),kind:"string",kindModifiers:"",sortText:c0.LocationPriority,commitCharacters:[]}}function FZs(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e){var Ye,Tt;let ot,Qe,mt=krt(g,_),ht,_t,Rt=dXt(M),Lt,Ke,Pt,_r=T.getTypeChecker(),Gt=M&&bZs(M),nt=M&&mZs(M)||V;if(M&&hZs(M))ot=V?`this${Gt?"?.":""}[${AXt(S,Ne,W)}]`:`this${Gt?"?.":"."}${W}`;else if((nt||Gt)&&re){ot=nt?V?`[${AXt(S,Ne,W)}]`:`[${W}]`:W,(Gt||re.questionDotToken)&&(ot=`?.${ot}`);let Gr=qd(re,25,S)||qd(re,29,S);if(!Gr)return;let dt=Ac(W,re.name.text)?re.name.end:Gr.end;mt=wA(Gr.getStart(S),dt)}if(ge&&(ot===void 0&&(ot=W),ot=`{${ot}}`,typeof ge!="boolean"&&(mt=Oy(ge,S))),M&&yZs(M)&&re){ot===void 0&&(ot=W);let Gr=Gm(re.pos,S),dt="";Gr&&nPe(Gr.end,Gr.parent,S)&&(dt=";"),dt+=`(await ${re.expression.getText()})`,ot=V?`${dt}${ot}`:`${dt}${Gt?"?.":"."}${ot}`;let st=Gs(re.parent,I1)?re.parent:re.expression;mt=wA(st.getStart(S),re.end)}if(cpe(M)&&(Lt=[gS(M.moduleSpecifier)],Ie&&({insertText:ot,replacementSpan:mt}=HZs(W,Ie,M,_e,S,T,Ne),_t=Ne.includeCompletionsWithSnippetText?!0:void 0)),M?.kind===64&&(Ke=!0),Te===0&&d&&((Ye=Gm(d.pos,S,d))==null?void 0:Ye.kind)!==28&&(uu(d.parent.parent)||Bg(d.parent.parent)||Dg(d.parent.parent)||Lx(d.parent)||((Tt=ji(d.parent,fm))==null?void 0:Tt.getLastToken(S))===d||a0(d.parent)&&Ra(S,d.getEnd()).line!==Ra(S,_).line)&&(Rt="ObjectLiteralMemberWithComma/",Ke=!0),Ne.includeCompletionsWithClassMemberSnippets&&Ne.includeCompletionsWithInsertText&&Te===3&&LZs(s,h,S)){let Gr,dt=iAn(R,T,Ee,Ne,W,s,h,_,d,Ze);if(dt)({insertText:ot,filterText:Qe,isSnippet:_t,importAdder:Gr}=dt),(Gr?.hasFixes()||dt.eraseRange)&&(Ke=!0,Rt="ClassMemberSnippet/");else return}if(M&&Kgn(M)&&({insertText:ot,isSnippet:_t,labelDetails:Pt}=M,Ne.useLabelDetailsInCompletionEntries||(W=W+Pt.detail,Pt=void 0),Rt="ObjectLiteralMethodSnippet/",c=c0.SortBelow(c)),We&&!Ue&&Ne.includeCompletionsWithSnippetText&&Ne.jsxAttributeCompletionStyle&&Ne.jsxAttributeCompletionStyle!=="none"&&!(EN(h.parent)&&h.parent.initializer)){let Gr=Ne.jsxAttributeCompletionStyle==="braces",dt=_r.getTypeOfSymbolAtLocation(s,h);Ne.jsxAttributeCompletionStyle==="auto"&&!(dt.flags&528)&&!(dt.flags&1048576&&de(dt.types,pr=>!!(pr.flags&528)))&&(dt.flags&402653316||dt.flags&1048576&&ue(dt.types,pr=>!!(pr.flags&402686084||nMt(pr)))?(ot=`${xP(W)}=${zde(S,Ne,"$1")}`,_t=!0):Gr=!0),Gr&&(ot=`${xP(W)}={$1}`,_t=!0)}if(ot!==void 0&&!Ne.includeCompletionsWithInsertText)return;(OPe(M)||cpe(M))&&(ht=sAn(M),Ke=!Ie);let Dt=ji(h,Gne);if(Dt){let Gr=Mg(R.getCompilationSettings());if(!Uh(W,Gr))ot=AXt(S,Ne,W),Dt.kind===276&&(A_.setText(S.text),A_.resetTokenState(_),A_.scan()===130&&A_.scan()===80||(ot+=" as "+ZZs(W,Gr)));else if(Dt.kind===276){let dt=Ta(W);dt&&(dt===135||Dye(dt))&&(ot=`${W} as ${W}_`)}}let tr=i9.getSymbolKind(_r,s,h),ur=tr==="warning"||tr==="string"?[]:void 0;return{name:W,kind:tr,kindModifiers:i9.getSymbolModifiers(_r,s),sortText:c,source:Rt,hasAction:Ke?!0:void 0,isRecommended:YZs(s,ee,_r)||void 0,insertText:ot,filterText:Qe,replacementSpan:mt,sourceDisplay:Lt,labelDetails:Pt,isSnippet:_t,isPackageJsonImport:_Zs(M)||void 0,isImportStatementCompletion:!!Ie||void 0,data:ht,commitCharacters:ur,...$e?{symbol:s}:void 0}}function ZZs(s,c){let g=!1,d="",h;for(let _=0;_=65536?2:1)h=s.codePointAt(_),h!==void 0&&(_===0?bd(h,c):s1(h,c))?(g&&(d+="_"),d+=String.fromCodePoint(h),g=!1):g=!0;return g&&(d+="_"),d||"_"}function LZs(s,c,g){return wo(c)?!1:!!(s.flags&106500)&&(xa(c)||c.parent&&c.parent.parent&&PI(c.parent)&&c===c.parent.name&&c.parent.getLastToken(g)===c.parent.name&&xa(c.parent.parent)||c.parent&&Cie(c)&&xa(c.parent))}function iAn(s,c,g,d,h,_,S,R,T,W){let V=ji(S,xa);if(!V)return;let M,ee=h,re=h,ge=c.getTypeChecker(),Ie=S.getSourceFile(),_e=Dit({removeComments:!0,module:g.module,moduleResolution:g.moduleResolution,target:g.target,omitTrailingSemicolon:!1,newLine:E1e(OF(s,W?.options))}),Ee=x0.createImportAdder(Ie,c,d,s),Ne;if(d.includeCompletionsWithSnippetText){M=!0;let Tt=me.createEmptyStatement();Ne=me.createBlock([Tt],!0),qbe(Tt,{kind:0,order:0})}else Ne=me.createBlock([],!0);let Te=0,{modifiers:Ze,range:We,decorators:Ue}=VZs(T,Ie,R),$e=Ze&64&&V.modifierFlagsCache&64,Ye=[];if(x0.addNewNodeForMemberSymbol(_,V,Ie,{program:c,host:s},d,Ee,Tt=>{let ot=0;$e&&(ot|=64),PI(Tt)&&ge.getMemberOverrideModifierStatus(V,Tt,_)===1&&(ot|=16),Ye.length||(Te=Tt.modifierFlagsCache|ot),Tt=me.replaceModifiers(Tt,Te),Ye.push(Tt)},Ne,x0.PreserveOptionalFlags.Property,!!$e),Ye.length){let Tt=_.flags&8192,ot=Te|16|1;Tt?ot|=1024:ot|=136;let Qe=Ze&ot;if(Ze&~ot)return;if(Te&4&&Qe&1&&(Te&=-5),Qe!==0&&!(Qe&1)&&(Te&=-2),Te|=Qe,Ye=Ye.map(ht=>me.replaceModifiers(ht,Te)),Ue?.length){let ht=Ye[Ye.length-1];oQ(ht)&&(Ye[Ye.length-1]=me.replaceDecoratorsAndModifiers(ht,Ue.concat($R(ht)||[])))}let mt=131073;W?ee=_e.printAndFormatSnippetList(mt,me.createNodeArray(Ye),Ie,W):ee=_e.printSnippetList(mt,me.createNodeArray(Ye),Ie)}return{insertText:ee,filterText:re,isSnippet:M,importAdder:Ee,eraseRange:We}}function VZs(s,c,g){if(!s||Ra(c,g).line>Ra(c,s.getEnd()).line)return{modifiers:0};let d=0,h,_,S={pos:g,end:g};if(pi(s.parent)&&(_=PZs(s))){s.parent.modifiers&&(d|=Dw(s.parent.modifiers)&98303,h=s.parent.modifiers.filter(So)||[],S.pos=Math.min(...s.parent.modifiers.map(T=>T.getStart(c))));let R=HY(_);d&R||(d|=R,S.pos=Math.min(S.pos,s.getStart(c))),s.parent.name!==s&&(S.end=s.parent.name.getStart(c))}return{modifiers:d,decorators:h,range:S.posR.getSignaturesOfType(Te,0).length>0);if(Ne.length===1)re=Ne[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ie=R.typeToTypeNode(re,c,ee,void 0,x0.getNoopSymbolTrackerWithResolver({program:d,host:h}));if(!Ie||!x_(Ie))return;let _e;if(_.includeCompletionsWithSnippetText){let Ne=me.createEmptyStatement();_e=me.createBlock([Ne],!0),qbe(Ne,{kind:0,order:0})}else _e=me.createBlock([],!0);let Ee=Ie.parameters.map(Ne=>me.createParameterDeclaration(void 0,Ne.dotDotDotToken,Ne.name,void 0,void 0,Ne.initializer));return me.createMethodDeclaration(void 0,void 0,W,void 0,void 0,Ee,void 0,_e)}default:return}}function Dit(s){let c,g=xo.createWriter(uN(s)),d=MP(s,g),h={...g,write:ee=>_(ee,()=>g.write(ee)),nonEscapingWrite:g.write,writeLiteral:ee=>_(ee,()=>g.writeLiteral(ee)),writeStringLiteral:ee=>_(ee,()=>g.writeStringLiteral(ee)),writeSymbol:(ee,re)=>_(ee,()=>g.writeSymbol(ee,re)),writeParameter:ee=>_(ee,()=>g.writeParameter(ee)),writeComment:ee=>_(ee,()=>g.writeComment(ee)),writeProperty:ee=>_(ee,()=>g.writeProperty(ee))};return{printSnippetList:S,printAndFormatSnippetList:T,printNode:W,printAndFormatNode:M};function _(ee,re){let ge=xP(ee);if(ge!==ee){let Ie=g.getTextPos();re();let _e=g.getTextPos();c=Ft(c||(c=[]),{newText:ge,span:{start:Ie,length:_e-Ie}})}else re()}function S(ee,re,ge){let Ie=R(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function R(ee,re,ge){return c=void 0,h.clear(),d.writeList(ee,re,ge,h),h.getText()}function T(ee,re,ge,Ie){let _e={text:R(ee,re,ge),getLineAndCharacterOfPosition(Ze){return Ra(this,Ze)}},Ee=gPe(Ie,ge),Ne=er(re,Ze=>{let We=xo.assignPositionsToNode(Ze);return Im.formatNodeGivenIndentation(We,_e,ge.languageVariant,0,0,{...Ie,options:Ee})}),Te=c?bo(Nn(Ne,c),(Ze,We)=>yn(Ze.span,We.span)):Ne;return xo.applyChanges(_e.text,Te)}function W(ee,re,ge){let Ie=V(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function V(ee,re,ge){return c=void 0,h.clear(),d.writeNode(ee,re,ge,h),h.getText()}function M(ee,re,ge,Ie){let _e={text:V(ee,re,ge),getLineAndCharacterOfPosition(We){return Ra(this,We)}},Ee=gPe(Ie,ge),Ne=xo.assignPositionsToNode(re),Te=Im.formatNodeGivenIndentation(Ne,_e,ge.languageVariant,0,0,{...Ie,options:Ee}),Ze=c?bo(Nn(Te,c),(We,Ue)=>yn(We.span,Ue.span)):Te;return xo.applyChanges(_e.text,Ze)}}function sAn(s){let c=s.fileName?void 0:l2(s.moduleSymbol.name),g=s.isFromPackageJson?!0:void 0;return cpe(s)?{exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,ambientModuleName:c,fileName:s.fileName,isPackageJsonImport:g}:{exportName:s.exportName,exportMapKey:s.exportMapKey,fileName:s.fileName,ambientModuleName:s.fileName?void 0:l2(s.moduleSymbol.name),isPackageJsonImport:s.isFromPackageJson?!0:void 0}}function MZs(s,c,g){let d=s.exportName==="default",h=!!s.isPackageJsonImport;return zgn(s)?{kind:32,exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}:{kind:4,exportName:s.exportName,exportMapKey:s.exportMapKey,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}}function HZs(s,c,g,d,h,_,S){let R=c.replacementSpan,T=xP(zde(h,S,g.moduleSpecifier)),W=g.isDefaultExport?1:g.exportName==="export="?2:0,V=S.includeCompletionsWithSnippetText?"$1":"",M=x0.getImportKind(h,W,_,!0),ee=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${Vi(156)} `:" ",ge=ee?`${Vi(156)} `:"",Ie=d?";":"";switch(M){case 3:return{replacementSpan:R,insertText:`import${re}${xP(s)}${V} = require(${T})${Ie}`};case 1:return{replacementSpan:R,insertText:`import${re}${xP(s)}${V} from ${T}${Ie}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${xP(s)} from ${T}${Ie}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ge}${xP(s)}${V} } from ${T}${Ie}`}}}function AXt(s,c,g){return/^\d+$/.test(g)?g:zde(s,c,g)}function YZs(s,c,g){return s===c||!!(s.flags&1048576)&&g.getExportSymbolOfSymbol(s)===c}function dXt(s){if(OPe(s))return l2(s.moduleSymbol.name);if(cpe(s))return s.moduleSpecifier;if(s?.kind===1)return"ThisProperty/";if(s?.kind===64)return"TypeOnlyAlias/"}function pXt(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt=!1){let ot=Fg(),Qe=gLs(d,h),mt=C1e(S),ht=T.getTypeChecker(),_t=new Map;for(let Ke=0;Kepr.getSourceFile()===h.getSourceFile()));_t.set(nt,dt),Gc(c,Gr,MPe,void 0,!0)}return V("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(Fg()-ot)),{has:Ke=>_t.has(Ke),add:Ke=>_t.set(Ke,!0)};function Rt(Ke,Pt){var _r;let Gt=Ke.flags;if(h.parent&&Cf(h.parent))return!0;if(Qe&&Gs(Qe,nc)&&(Ke.valueDeclaration===Qe||Nu(Qe.name)&&Qe.name.elements.some(tr=>tr===Ke.valueDeclaration)))return!1;let nt=Ke.valueDeclaration??((_r=Ke.declarations)==null?void 0:_r[0]);if(Qe&&nt){if(Si(Qe)&&Si(nt)){let tr=Qe.parent.parameters;if(nt.pos>=Qe.pos&&nt.pos=Qe.pos&&nt.posgXt(g,S,Te)===h.name);return Ne!==void 0?{type:"literal",literal:Ne}:X(W,(Te,Ze)=>{let We=re[Ze],Ue=xit(Te,Mg(R),We,ee,T.isJsxIdentifierExpected);return Ue&&Ue.name===h.name&&(h.source==="ClassMemberSnippet/"&&Te.flags&106500||h.source==="ObjectLiteralMethodSnippet/"&&Te.flags&8196||dXt(We)===h.source||h.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Te,location:M,origin:We,contextToken:ge,previousToken:Ie,isJsxInitializer:_e,isTypeOnlyLocation:Ee}:void 0})||{type:"none"}}function JZs(s,c,g,d,h,_,S,R,T){let W=s.getTypeChecker(),V=s.getCompilerOptions(),{name:M,source:ee,data:re}=h,{previousToken:ge,contextToken:Ie}=kit(d,g);if(Zz(g,d,ge))return Pit.getStringLiteralCompletionDetails(M,g,d,ge,s,_,T,R);let _e=oAn(s,c,g,d,h,_,R);switch(_e.type){case"request":{let{request:Ee}=_e;switch(Ee.kind){case 1:return n5.getJSDocTagNameCompletionDetails(M);case 2:return n5.getJSDocTagCompletionDetails(M);case 3:return n5.getJSDocParameterNameCompletionDetails(M);case 4:return jt(Ee.keywordCompletions,Ne=>Ne.name===M)?fXt(M,"keyword",5):void 0;default:return pe.assertNever(Ee)}}case"symbol":{let{symbol:Ee,location:Ne,contextToken:Te,origin:Ze,previousToken:We}=_e,{codeActions:Ue,sourceDisplay:$e}=UZs(M,Ne,Te,Ze,Ee,s,_,V,g,d,We,S,R,re,ee,T),Ye=lXt(Ze)?Ze.symbolName:Ee.name;return IXt(Ee,Ye,W,g,Ne,T,Ue,$e)}case"literal":{let{literal:Ee}=_e;return fXt(gXt(g,R,Ee),"string",typeof Ee=="string"?8:7)}case"cases":{let Ee=nAn(Ie.parent,g,R,s.getCompilerOptions(),_,s,void 0);if(Ee?.importAdder.hasFixes()){let{entry:Ne,importAdder:Te}=Ee,Ze=xo.ChangeTracker.with({host:_,formatContext:S,preferences:R},Te.writeFixes);return{name:Ne.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Ze,description:IQ([Z.Includes_imports_of_types_referenced_by_0,M])}]}}return{name:M,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return uAn().some(Ee=>Ee.name===M)?fXt(M,"keyword",5):void 0;default:pe.assertNever(_e)}}function fXt(s,c,g){return HPe(s,"",c,[SE(s,g)])}function IXt(s,c,g,d,h,_,S,R){let{displayParts:T,documentation:W,symbolKind:V,tags:M}=g.runWithCancellationToken(_,ee=>i9.getSymbolDisplayPartsDocumentationAndSymbolKind(ee,s,d,h,h,7));return HPe(c,i9.getSymbolModifiers(g,s),V,T,W,M,S,R)}function HPe(s,c,g,d,h,_,S,R){return{name:s,kindModifiers:c,kind:g,displayParts:d,documentation:h,tags:_,codeActions:S,source:R,sourceDisplay:R}}function UZs(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie){if(re?.moduleSpecifier&&V&&mAn(g||V,T).replacementSpan)return{codeActions:void 0,sourceDisplay:[gS(re.moduleSpecifier)]};if(ge==="ClassMemberSnippet/"){let{importAdder:Ue,eraseRange:$e}=iAn(S,_,R,ee,s,h,c,W,g,M);if(Ue?.hasFixes()||$e)return{sourceDisplay:void 0,codeActions:[{changes:xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},Tt=>{Ue&&Ue.writeFixes(Tt),$e&&Tt.deleteRange(T,$e)}),description:Ue?.hasFixes()?IQ([Z.Includes_imports_of_types_referenced_by_0,s]):IQ([Z.Update_modifiers_of_0,s])}]}}if(Ugn(d)){let Ue=x0.getPromoteTypeOnlyCompletionAction(T,d.declaration.name,_,S,M,ee);return pe.assertIsDefined(Ue,"Expected to have a code action for promoting type-only alias"),{codeActions:[Ue],sourceDisplay:void 0}}if(ge==="ObjectLiteralMemberWithComma/"&&g){let Ue=xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},$e=>$e.insertText(T,g.end,","));if(Ue)return{sourceDisplay:void 0,codeActions:[{changes:Ue,description:IQ([Z.Add_missing_comma_for_object_member_completion_0,s])}]}}if(!d||!(OPe(d)||cpe(d)))return{codeActions:void 0,sourceDisplay:void 0};let _e=d.isFromPackageJson?S.getPackageJsonAutoImportProvider().getTypeChecker():_.getTypeChecker(),{moduleSymbol:Ee}=d,Ne=_e.getMergedSymbol(FC(h.exportSymbol||h,_e)),Te=g?.kind===30&&eI(g.parent),{moduleSpecifier:Ze,codeAction:We}=x0.getImportCompletionAction(Ne,Ee,re?.exportMapKey,T,s,Te,S,_,M,V&&Ir(V)?V.getStart(T):W,ee,Ie);return pe.assert(!re?.moduleSpecifier||Ze===re.moduleSpecifier),{sourceDisplay:[gS(Ze)],codeActions:[We]}}function KZs(s,c,g,d,h,_,S){let R=oAn(s,c,g,d,h,_,S);return R.type==="symbol"?R.symbol:void 0}var aAn=(s=>(s[s.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",s[s.Global=1]="Global",s[s.PropertyAccess=2]="PropertyAccess",s[s.MemberLike=3]="MemberLike",s[s.String=4]="String",s[s.None=5]="None",s))(aAn||{});function jZs(s,c,g){return X(c&&(c.isUnion()?c.types:[c]),d=>{let h=d&&d.symbol;return h&&h.flags&424&&!lbe(h)?hXt(h,s,g):void 0})}function zZs(s,c,g,d){let{parent:h}=s;switch(s.kind){case 80:return tPe(s,d);case 64:switch(h.kind){case 261:return d.getContextualType(h.initializer);case 227:return d.getTypeAtLocation(h.left);case 292:return d.getContextualTypeForJsxAttribute(h);default:return}case 105:return d.getContextualType(h);case 84:let _=Gs(h,fie);return _?ent(_,d):void 0;case 19:return pie(h)&&!bN(h.parent)&&!P3(h.parent)?d.getContextualTypeForJsxAttribute(h.parent):void 0;default:let S=X1e.getArgumentInfoForCompletions(s,c,g,d);return S?d.getContextualTypeForArgumentAtIndex(S.invocation,S.argumentIndex):rPe(s.kind)&&fo(h)&&rPe(h.operatorToken.kind)?d.getTypeAtLocation(h.left):d.getContextualType(s,4)||d.getContextualType(s)}}function hXt(s,c,g){let d=g.getAccessibleSymbolChain(s,c,-1,!1);return d?ma(d):s.parent&&(qZs(s.parent)?s:hXt(s.parent,c,g))}function qZs(s){var c;return!!((c=s.declarations)!=null&&c.some(g=>g.kind===308))}function cAn(s,c,g,d,h,_,S,R,T,W){let V=s.getTypeChecker(),M=rAn(g,d),ee=Fg(),re=Jc(g,h);c("getCompletionData: Get current token: "+(Fg()-ee)),ee=Fg();let ge=$L(g,h,re);c("getCompletionData: Is inside comment: "+(Fg()-ee));let Ie=!1,_e=!1,Ee=!1;if(ge){if(eMt(g,h)){if(g.text.charCodeAt(h-1)===64)return{kind:1};{let $r=PB(h,g);if(!/[^*|\s(/)]/.test(g.text.substring($r,h)))return{kind:2}}}let Ot=rLs(re,h);if(Ot){if(Ot.tagName.pos<=h&&h<=Ot.tagName.end)return{kind:1};if(SN(Ot))_e=!0;else{let $r=Zi(Ot);if($r&&(re=Jc(g,h),(!re||!HT(re)&&(re.parent.kind!==349||re.parent.name!==re))&&(Ie=Hn($r))),!Ie&&cS(Ot)&&(sf(Ot.name)||Ot.name.pos<=h&&h<=Ot.name.end))return{kind:3,tag:Ot}}}if(!Ie&&!_e){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}ee=Fg();let Ne=!Ie&&!_e&&n0(g),Te=kit(h,g),Ze=Te.previousToken,We=Te.contextToken;c("getCompletionData: Get previous token: "+(Fg()-ee));let Ue=re,$e,Ye=!1,Tt=!1,ot=!1,Qe=!1,mt=!1,ht=!1,_t,Rt=Lb(g,h),Lt=0,Ke=!1,Pt=0,_r;if(We){let Ot=mAn(We,g);if(Ot.keywordCompletion){if(Ot.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[wZs(Ot.keywordCompletion)],isNewIdentifierLocation:Ot.isNewIdentifierLocation};Lt=RZs(Ot.keywordCompletion)}if(Ot.replacementSpan&&_.includeCompletionsForImportStatements&&_.includeCompletionsWithInsertText&&(Pt|=2,_t=Ot,Ke=Ot.isNewIdentifierLocation),!Ot.replacementSpan&&Qu(We))return c("Returning an empty list because completion was requested in an invalid position."),Lt?eAn(Lt,Ne,Cs().isNewIdentifierLocation):void 0;let $r=We.parent;if(We.kind===25||We.kind===29)switch(Ye=We.kind===25,Tt=We.kind===29,$r.kind){case 212:$e=$r,Ue=$e.expression;let ri=oU($e);if(sf(ri)||(Zl(Ue)||bu(Ue))&&Ue.end===We.pos&&Ue.getChildCount(g)&&Ei(Ue.getChildren(g)).kind!==22)return;break;case 167:Ue=$r.left;break;case 268:Ue=$r.name;break;case 206:Ue=$r;break;case 237:Ue=$r.getFirstToken(g),pe.assert(Ue.kind===102||Ue.kind===105);break;default:return}else if(!_t){if($r&&$r.kind===212&&(We=$r,$r=$r.parent),re.parent===Rt)switch(re.kind){case 32:(re.parent.kind===285||re.parent.kind===287)&&(Rt=re);break;case 44:re.parent.kind===286&&(Rt=re);break}switch($r.kind){case 288:We.kind===44&&(Qe=!0,Rt=We);break;case 227:if(!hAn($r))break;case 286:case 285:case 287:ht=!0,We.kind===30&&(ot=!0,Rt=We);break;case 295:case 294:(Ze.kind===20||Ze.kind===80&&Ze.parent.kind===292)&&(ht=!0);break;case 292:if($r.initializer===Ze&&Ze.endz3(Ot?R.getPackageJsonAutoImportProvider():s,R));if(Ye||Tt)Ns();else if(ot)tr=V.getJsxIntrinsicTagNamesAt(Rt),pe.assertEachIsDefined(tr,"getJsxIntrinsicTagNames() should all be defined"),Ic(),nt=1,Lt=0;else if(Qe){let Ot=We.parent.parent.openingElement.tagName,$r=V.getSymbolAtLocation(Ot);$r&&(tr=[$r]),nt=1,Lt=0}else if(!Ic())return Lt?eAn(Lt,Ne,Ke):void 0;c("getCompletionData: Semantic work: "+(Fg()-Gt));let zt=Ze&&zZs(Ze,h,g,V),Br=!Gs(Ze,mA)&&!ht?Xt(zt&&(zt.isUnion()?zt.types:[zt]),Ot=>Ot.isLiteral()&&!(Ot.flags&1024)?Ot.value:void 0):[],mn=Ze&&zt&&jZs(Ze,zt,V);return{kind:0,symbols:tr,completionKind:nt,isInSnippetScope:Ee,propertyAccessToConvert:$e,isNewIdentifierLocation:Ke,location:Rt,keywordFilters:Lt,literals:Br,symbolToOriginInfoMap:Gr,recommendedCompletion:mn,previousToken:Ze,contextToken:We,isJsxInitializer:mt,insideJsDocTagTypeExpression:Ie,symbolToSortTextMap:dt,isTypeOnlyLocation:st,isJsxIdentifierExpected:ht,isRightOfOpenTag:ot,isRightOfDotOrQuestionDot:Ye||Tt,importStatementCompletion:_t,hasUnresolvedAutoImports:Dt,flags:Pt,defaultCommitCharacters:_r};function jn(Ot){switch(Ot.kind){case 342:case 349:case 343:case 345:case 347:case 350:case 351:return!0;case 346:return!!Ot.constraint;default:return!1}}function Zi(Ot){if(jn(Ot)){let $r=ZB(Ot)?Ot.constraint:Ot.typeExpression;return $r&&$r.kind===310?$r:void 0}if(bz(Ot)||t9e(Ot))return Ot.class}function Ns(){nt=2;let Ot=ky(Ue),$r=Ot&&!Ue.isTypeOf||ww(Ue.parent)||l1e(We,g,V),ri=kVe(Ue);if(fC(Ue)||Ot||jo(Ue)){let ao=xh(Ue.parent);ao&&(Ke=!0,_r=[]);let Bs=V.getSymbolAtLocation(Ue);if(Bs&&(Bs=FC(Bs,V),Bs.flags&1920)){let Ys=V.getExportsOfModule(Bs);pe.assertEachIsDefined(Ys,"getExportsOfModule() should all be defined");let tn=ci=>V.isValidPropertyAccess(Ot?Ue:Ue.parent,ci.name),wn=ci=>CXt(ci,V),Mn=ao?ci=>{var es;return!!(ci.flags&1920)&&!((es=ci.declarations)!=null&&es.every(Wi=>Wi.parent===Ue.parent))}:ri?ci=>wn(ci)||tn(ci):$r||Ie?wn:tn;for(let ci of Ys)Mn(ci)&&tr.push(ci);if(!$r&&!Ie&&Bs.declarations&&Bs.declarations.some(ci=>ci.kind!==308&&ci.kind!==268&&ci.kind!==267)){let ci=V.getTypeOfSymbolAtLocation(Bs,Ue).getNonOptionalType(),es=!1;if(ci.isNullableType()){let Wi=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Wi||Tt)&&(ci=ci.getNonNullableType(),Wi&&(es=!0))}An(ci,!!(Ue.flags&65536),es)}return}}if(!$r||OY(Ue)){V.tryGetThisTypeAt(Ue,!1);let ao=V.getTypeAtLocation(Ue).getNonOptionalType();if($r)An(ao.getNonNullableType(),!1,!1);else{let Bs=!1;if(ao.isNullableType()){let Ys=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Ys||Tt)&&(ao=ao.getNonNullableType(),Ys&&(Bs=!0))}An(ao,!!(Ue.flags&65536),Bs)}}}function An(Ot,$r,ri){Ot.getStringIndexType()&&(Ke=!0,_r=[]),Tt&&jt(Ot.getCallSignatures())&&(Ke=!0,_r??(_r=RN));let ao=Ue.kind===206?Ue:Ue.parent;if(M)for(let Bs of Ot.getApparentProperties())V.isValidPropertyAccessForCompletions(ao,Ot,Bs)&&si(Bs,!1,ri);else tr.push(...Me(Lit(Ot,V),Bs=>V.isValidPropertyAccessForCompletions(ao,Ot,Bs)));if($r&&_.includeCompletionsWithInsertText){let Bs=V.getPromisedTypeOfPromise(Ot);if(Bs)for(let Ys of Bs.getApparentProperties())V.isValidPropertyAccessForCompletions(ao,Bs,Ys)&&si(Ys,!0,ri)}}function si(Ot,$r,ri){var ao;let Bs=X(Ot.declarations,Mn=>Gs(Il(Mn),Un));if(Bs){let Mn=ks(Bs.expression),ci=Mn&&V.getSymbolAtLocation(Mn),es=ci&&hXt(ci,We,V),Wi=es&&kg(es);if(Wi&&Zy(pr,Wi)){let Vn=tr.length;tr.push(es),dt[kg(es)]=c0.GlobalsOrKeywords;let Ui=es.parent;if(!Ui||!WD(Ui)||V.tryGetMemberInModuleExportsAndProperties(es.name,Ui)!==es)Gr[Vn]={kind:wn(2)};else{let gs=Xr(l2(Ui.name))?(ao=FJ(Ui))==null?void 0:ao.fileName:void 0,{moduleSpecifier:fs}=(ur||(ur=x0.createImportSpecifierResolver(g,s,R,_))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:gs,isFromPackageJson:!1,moduleSymbol:Ui,symbol:es,targetFlags:FC(es,V).flags}],h,JL(Rt))||{};if(fs){let bi={kind:wn(6),moduleSymbol:Ui,isDefaultExport:!1,symbolName:es.name,exportName:es.name,fileName:gs,moduleSpecifier:fs};Gr[Vn]=bi}}}else if(_.includeCompletionsWithInsertText){if(Wi&&pr.has(Wi))return;tn(Ot),Ys(Ot),tr.push(Ot)}}else tn(Ot),Ys(Ot),tr.push(Ot);function Ys(Mn){cLs(Mn)&&(dt[kg(Mn)]=c0.LocalDeclarationPriority)}function tn(Mn){_.includeCompletionsWithInsertText&&($r&&Zy(pr,kg(Mn))?Gr[tr.length]={kind:wn(8)}:ri&&(Gr[tr.length]={kind:16}))}function wn(Mn){return ri?Mn|16:Mn}}function ks(Ot){return Ir(Ot)?Ot:jo(Ot)?ks(Ot.expression):void 0}function Ic(){return(Pr()||Pn()||ya()||pt()||on()||it()||su()||nr()||Zn()||(Gl(),1))===1}function su(){return Kr(We)?(nt=5,Ke=!0,Lt=4,1):0}function Zn(){let Ot=hr(We),$r=Ot&&V.getContextualType(Ot.attributes);if(!$r)return 0;let ri=Ot&&V.getContextualType(Ot.attributes,4);return tr=Nn(tr,In(Zit($r,ri,Ot.attributes,V),Ot.attributes.properties)),Bt(),nt=3,Ke=!1,1}function ya(){return _t?(Ke=!0,Oi(),1):0}function Gl(){Lt=Dn(We)?5:1,nt=1,{isNewIdentifierLocation:Ke,defaultCommitCharacters:_r}=Cs(),Ze!==We&&pe.assert(!!Ze,"Expected 'contextToken' to be defined when different from 'previousToken'.");let Ot=Ze!==We?Ze.getStart():h,$r=tl(We,Ot,g)||g;Ee=Wo($r);let ri=(st?0:111551)|788968|1920|2097152,ao=Ze&&!JL(Ze);tr=Nn(tr,V.getSymbolsInScope($r,ri)),pe.assertEachIsDefined(tr,"getSymbolsInScope() should all be defined");for(let Bs=0;Bstn.getSourceFile()===g)&&(dt[kg(Ys)]=c0.GlobalsOrKeywords),ao&&!(Ys.flags&111551)){let tn=Ys.declarations&&de(Ys.declarations,rN);if(tn){let wn={kind:64,declaration:tn};Gr[Bs]=wn}}}if(_.includeCompletionsWithInsertText&&$r.kind!==308){let Bs=V.tryGetThisTypeAt($r,!1,xa($r.parent)?$r:void 0);if(Bs&&!aLs(Bs,g,V))for(let Ys of Lit(Bs,V))Gr[tr.length]={kind:1},tr.push(Ys),dt[kg(Ys)]=c0.SuggestedClassMembers}Oi(),st&&(Lt=We&&Ed(We.parent)?6:7)}function ba(){var Ot;return _t?!0:_.includeCompletionsForModuleExports?g.externalModuleIndicator||g.commonJsModuleIndicator||Lrt(s.getCompilerOptions())?!0:((Ot=s.getSymlinkCache)==null?void 0:Ot.call(s).hasAnySymlinks())||!!s.getCompilerOptions().paths||oMt(s):!1}function Wo(Ot){switch(Ot.kind){case 308:case 229:case 295:case 242:return!0;default:return Lc(Ot)}}function hc(){return Ie||_e||!!_t&&nN(Rt.parent)||!yr(We)&&(l1e(We,g,V)||ww(Rt)||hn(We))}function yr(Ot){return Ot&&(Ot.kind===114&&(Ot.parent.kind===187||CN(Ot.parent))||Ot.kind===131&&Ot.parent.kind===183)}function hn(Ot){if(Ot){let $r=Ot.parent.kind;switch(Ot.kind){case 59:return $r===173||$r===172||$r===170||$r===261||lP($r);case 64:return $r===266||$r===169;case 130:return $r===235;case 30:return $r===184||$r===217;case 96:return $r===169;case 152:return $r===239}}return!1}function Oi(){var Ot,$r;if(!ba()||(pe.assert(!S?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),S&&!S.source))return;Pt|=1;let ao=Ze===We&&_t?"":Ze&&Ir(Ze)?Ze.text.toLowerCase():"",Bs=(Ot=R.getModuleSpecifierCache)==null?void 0:Ot.call(R),Ys=S1e(g,R,s,_,W),tn=($r=R.getPackageJsonAutoImportProvider)==null?void 0:$r.call(R),wn=S?void 0:jie(g,_,R);jgn("collectAutoImports",R,ur||(ur=x0.createImportSpecifierResolver(g,s,R,_)),s,h,_,!!_t,JL(Rt),ci=>{Ys.search(g.path,ot,(es,Wi)=>{if(!Uh(es,Mg(R.getCompilationSettings()))||!S&&WY(es)||!st&&!_t&&!(Wi&111551)||st&&!(Wi&790504))return!1;let Vn=es.charCodeAt(0);return ot&&(Vn<65||Vn>90)?!1:S?!0:EAn(es,ao)},(es,Wi,Vn,Ui)=>{if(S&&!jt(es,Ag=>S.source===l2(Ag.moduleSymbol.name))||(es=Me(es,Mn),!es.length))return;let gs=ci.tryResolve(es,Vn)||{};if(gs==="failed")return;let fs=es[0],bi;gs!=="skipped"&&({exportInfo:fs=es[0],moduleSpecifier:bi}=gs);let mc=fs.exportKind===1,gg=mc&&W7(pe.checkDefined(fs.symbol))||pe.checkDefined(fs.symbol);lo(gg,{kind:bi?32:4,moduleSpecifier:bi,symbolName:Wi,exportMapKey:Ui,exportName:fs.exportKind===2?"export=":pe.checkDefined(fs.symbol).name,fileName:fs.moduleFileName,isDefaultExport:mc,moduleSymbol:fs.moduleSymbol,isFromPackageJson:fs.isFromPackageJson})}),Dt=ci.skippedAny(),Pt|=ci.resolvedAny()?8:0,Pt|=ci.resolvedBeyondLimit()?16:0});function Mn(ci){return dnt(ci.isFromPackageJson?tn:s,g,Gs(ci.moduleSymbol.valueDeclaration,ll),ci.moduleSymbol,_,wn,ir(ci.isFromPackageJson),Bs)}}function lo(Ot,$r){let ri=kg(Ot);dt[ri]!==c0.GlobalsOrKeywords&&(Gr[tr.length]=$r,dt[ri]=_t?c0.LocationPriority:c0.AutoImportSuggestions,tr.push(Ot))}function pa(Ot,$r){wo(Rt)||Ot.forEach(ri=>{if(!Oa(ri))return;let ao=xit(ri,Mg(d),void 0,0,!1);if(!ao)return;let{name:Bs}=ao,Ys=WZs(ri,Bs,$r,s,R,d,_,T);if(!Ys)return;let tn={kind:128,...Ys};Pt|=32,Gr[tr.length]=tn,tr.push(ri)})}function Oa(Ot){return!!(Ot.flags&8196)}function tl(Ot,$r,ri){let ao=Ot;for(;ao&&!brt(ao,$r,ri);)ao=ao.parent;return ao}function Qu(Ot){let $r=Fg(),ri=Tu(Ot)||Ni(Ot)||bn(Ot)||Tg(Ot)||eQ(Ot);return c("getCompletionsAtPosition: isCompletionListBlocker: "+(Fg()-$r)),ri}function Tg(Ot){if(Ot.kind===12)return!0;if(Ot.kind===32&&Ot.parent){if(Rt===Ot.parent&&(Rt.kind===287||Rt.kind===286))return!1;if(Ot.parent.kind===287)return Rt.parent.kind!==287;if(Ot.parent.kind===288||Ot.parent.kind===286)return!!Ot.parent.parent&&Ot.parent.parent.kind===285}return!1}function Cs(){if(We){let Ot=We.parent.kind,$r=Fit(We);switch($r){case 28:switch(Ot){case 214:case 215:{let ri=We.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!0}}case 227:return{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0};case 177:case 185:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 210:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 21:switch(Ot){case 214:case 215:{let ri=We.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!0}}case 218:return{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0};case 177:case 197:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 23:switch(Ot){case 210:case 182:case 190:case 168:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 144:case 145:case 102:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 25:switch(Ot){case 268:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 19:switch(Ot){case 264:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 64:switch(Ot){case 261:case 227:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 16:return{defaultCommitCharacters:RN,isNewIdentifierLocation:Ot===229};case 17:return{defaultCommitCharacters:RN,isNewIdentifierLocation:Ot===240};case 134:return Ot===175||Ot===305?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!1};case 42:return Ot===175?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}if(YPe($r))return{defaultCommitCharacters:[],isNewIdentifierLocation:!0}}return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}function Tu(Ot){return(tEe(Ot)||Ere(Ot))&&(a1e(Ot,h)||h===Ot.end&&(!!Ot.isUnterminated||tEe(Ot)))}function Pr(){let Ot=sLs(We);if(!Ot)return 0;let ri=(mf(Ot.parent)?Ot.parent:void 0)||Ot,ao=IAn(ri,V);if(!ao)return 0;let Bs=V.getTypeFromTypeNode(ri),Ys=Lit(ao,V),tn=Lit(Bs,V),wn=new Set;return tn.forEach(Mn=>wn.add(Mn.escapedName)),tr=Nn(tr,Me(Ys,Mn=>!wn.has(Mn.escapedName))),nt=0,Ke=!0,1}function Pn(){if(We?.kind===26)return 0;let Ot=tr.length,$r=$Zs(We,h,g);if(!$r)return 0;nt=0;let ri,ao;if($r.kind===211){let Bs=lLs($r,V);if(Bs===void 0)return $r.flags&67108864?2:0;let Ys=V.getContextualType($r,4),tn=(Ys||Bs).getStringIndexType(),wn=(Ys||Bs).getNumberIndexType();if(Ke=!!tn||!!wn,ri=Zit(Bs,Ys,$r,V),ao=$r.properties,ri.length===0&&!wn)return 0}else{pe.assert($r.kind===207),Ke=!1;let Bs=Rw($r.parent);if(!I7(Bs))return pe.fail("Root declaration is not variable-like.");let Ys=WT(Bs)||!!kh(Bs)||Bs.parent.parent.kind===251;if(!Ys&&Bs.kind===170&&(un(Bs.parent)?Ys=!!V.getContextualType(Bs.parent):(Bs.parent.kind===175||Bs.parent.kind===179)&&(Ys=un(Bs.parent.parent)&&!!V.getContextualType(Bs.parent.parent))),Ys){let tn=V.getTypeAtLocation($r);if(!tn)return 2;ri=V.getPropertiesOfType(tn).filter(wn=>V.isPropertyAccessible($r,!1,!1,tn,wn)),ao=$r.elements}}if(ri&&ri.length>0){let Bs=Mt(ri,pe.checkDefined(ao));tr=Nn(tr,Bs),Bt(),$r.kind===211&&_.includeCompletionsWithObjectLiteralMethodSnippets&&_.includeCompletionsWithInsertText&&(fr(Ot),pa(Bs,$r))}return 1}function pt(){if(!We)return 0;let Ot=We.kind===19||We.kind===28?Gs(We.parent,Gne):JVe(We)?Gs(We.parent.parent,Gne):void 0;if(!Ot)return 0;JVe(We)||(Lt=8);let{moduleSpecifier:$r}=Ot.kind===276?Ot.parent.parent:Ot.parent;if(!$r)return Ke=!0,Ot.kind===276?2:0;let ri=V.getSymbolAtLocation($r);if(!ri)return Ke=!0,2;nt=3,Ke=!1;let ao=V.getExportsAndPropertiesOfModule(ri),Bs=new Set(Ot.elements.filter(tn=>!Hn(tn)).map(tn=>CF(tn.propertyName||tn.name))),Ys=ao.filter(tn=>tn.escapedName!=="default"&&!Bs.has(tn.escapedName));return tr=Nn(tr,Ys),Ys.length||(Lt=0),1}function on(){if(We===void 0)return 0;let Ot=We.kind===19||We.kind===28?Gs(We.parent,CU):We.kind===59?Gs(We.parent.parent,CU):void 0;if(Ot===void 0)return 0;let $r=new Set(Ot.elements.map(XAe));return tr=Me(V.getTypeAtLocation(Ot).getApparentProperties(),ri=>!$r.has(ri.escapedName)),1}function it(){var Ot;let $r=We&&(We.kind===19||We.kind===28)?Gs(We.parent,mv):void 0;if(!$r)return 0;let ri=ji($r,Hp(ll,xh));return nt=5,Ke=!1,(Ot=ri.locals)==null||Ot.forEach((ao,Bs)=>{var Ys,tn;tr.push(ao),(tn=(Ys=ri.symbol)==null?void 0:Ys.exports)!=null&&tn.has(Bs)&&(dt[kg(ao)]=c0.OptionalMember)}),1}function nr(){let Ot=iLs(g,We,Rt,h);if(!Ot)return 0;if(nt=3,Ke=!0,Lt=We.kind===42?0:xa(Ot)?2:3,!xa(Ot))return 1;let $r=We.kind===27?We.parent.parent:We.parent,ri=PI($r)?o_($r):0;if(We.kind===80&&!Hn(We))switch(We.getText()){case"private":ri=ri|2;break;case"static":ri=ri|256;break;case"override":ri=ri|16;break}if(fl($r)&&(ri|=256),!(ri&2)){let ao=xa(Ot)&&ri&16?J_(BB(Ot)):R7(Ot),Bs=er(ao,Ys=>{let tn=V.getTypeAtLocation(Ys);return ri&256?tn?.symbol&&V.getPropertiesOfType(V.getTypeOfSymbolAtLocation(tn.symbol,Ot)):tn&&V.getPropertiesOfType(tn)});tr=Nn(tr,Je(Bs,Ot.members,ri)),F(tr,(Ys,tn)=>{let wn=Ys?.valueDeclaration;if(wn&&PI(wn)&&wn.name&&Un(wn.name)){let Mn={kind:512,symbolName:V.symbolToString(Ys)};Gr[tn]=Mn}})}return 1}function Fr(Ot){return!!Ot.parent&&Si(Ot.parent)&&Tc(Ot.parent.parent)&&(IY(Ot.kind)||HT(Ot))}function Kr(Ot){if(Ot){let $r=Ot.parent;switch(Ot.kind){case 21:case 28:return Tc(Ot.parent)?Ot.parent:void 0;default:if(Fr(Ot))return $r.parent}}}function Dn(Ot){if(Ot){let $r,ri=ji(Ot.parent,ao=>xa(ao)?"quit":kd(ao)&&$r===ao.body?!0:($r=ao,!1));return ri&&ri}}function hr(Ot){if(Ot){let $r=Ot.parent;switch(Ot.kind){case 32:case 31:case 44:case 80:case 212:case 293:case 292:case 294:if($r&&($r.kind===286||$r.kind===287)){if(Ot.kind===32){let ri=Gm(Ot.pos,g,void 0);if(!$r.typeArguments||ri&&ri.kind===44)break}return $r}else if($r.kind===292)return $r.parent.parent;break;case 11:if($r&&($r.kind===292||$r.kind===294))return $r.parent.parent;break;case 20:if($r&&$r.kind===295&&$r.parent&&$r.parent.kind===292)return $r.parent.parent.parent;if($r&&$r.kind===294)return $r.parent.parent;break}}}function En(Ot,$r){return g.getLineEndOfPosition(Ot.getEnd())<$r}function Ni(Ot){let $r=Ot.parent,ri=$r.kind;switch(Ot.kind){case 28:return ri===261||ds(Ot)||ri===244||ri===267||nn(ri)||ri===265||ri===208||ri===266||xa($r)&&!!$r.typeParameters&&$r.typeParameters.end>=Ot.pos;case 25:return ri===208;case 59:return ri===209;case 23:return ri===208;case 21:return ri===300||nn(ri);case 19:return ri===267;case 30:return ri===264||ri===232||ri===265||ri===266||lP(ri);case 126:return ri===173&&!xa($r.parent);case 26:return ri===170||!!$r.parent&&$r.parent.kind===208;case 125:case 123:case 124:return ri===170&&!Tc($r.parent);case 130:return ri===277||ri===282||ri===275;case 139:case 153:return!Vit(Ot);case 80:{if((ri===277||ri===282)&&Ot===$r.name&&Ot.text==="type"||ji(Ot.parent,nc)&&En(Ot,h))return!1;break}case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return ri!==277;case 42:return bu(Ot.parent)&&!uu(Ot.parent)}if(YPe(Fit(Ot))&&Vit(Ot)||Fr(Ot)&&(!Ir(Ot)||IY(Fit(Ot))||Hn(Ot)))return!1;switch(Fit(Ot)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return pi(Ot.parent)}if(ji(Ot.parent,xa)&&Ot===Ze&&Gi(Ot,h))return!1;let Bs=ML(Ot.parent,173);if(Bs&&Ot!==Ze&&xa(Ze.parent.parent)&&h<=Ze.end){if(Gi(Ot,Ze.end))return!1;if(Ot.kind!==64&&(GEe(Bs)||If(Bs)))return!0}return HT(Ot)&&!a0(Ot.parent)&&!EN(Ot.parent)&&!((xa(Ot.parent)||g_(Ot.parent)||Ds(Ot.parent))&&(Ot!==Ze||h>Ze.end))}function Gi(Ot,$r){return Ot.kind!==64&&(Ot.kind===27||!yE(Ot.end,$r,g))}function nn(Ot){return lP(Ot)&&Ot!==177}function bn(Ot){if(Ot.kind===9){let $r=Ot.getFullText();return $r.charAt($r.length-1)==="."}return!1}function ds(Ot){return Ot.parent.kind===262&&!l1e(Ot,g,V)}function Mt(Ot,$r){if($r.length===0)return Ot;let ri=new Set,ao=new Set;for(let Ys of $r){if(Ys.kind!==304&&Ys.kind!==305&&Ys.kind!==209&&Ys.kind!==175&&Ys.kind!==178&&Ys.kind!==179&&Ys.kind!==306||Hn(Ys))continue;let tn;if(Lx(Ys))cn(Ys,ri);else if(hg(Ys)&&Ys.propertyName)Ys.propertyName.kind===80&&(tn=Ys.propertyName.escapedText);else{let wn=Il(Ys);tn=wn&&Tw(wn)?qJ(wn):void 0}tn!==void 0&&ao.add(tn)}let Bs=Ot.filter(Ys=>!ao.has(Ys.escapedName));return xe(ri,Bs),Bs}function cn(Ot,$r){let ri=Ot.expression,ao=V.getSymbolAtLocation(ri),Bs=ao&&V.getTypeOfSymbolAtLocation(ao,ri),Ys=Bs&&Bs.properties;Ys&&Ys.forEach(tn=>{$r.add(tn.name)})}function Bt(){tr.forEach(Ot=>{if(Ot.flags&16777216){let $r=kg(Ot);dt[$r]=dt[$r]??c0.OptionalMember}})}function xe(Ot,$r){if(Ot.size!==0)for(let ri of $r)Ot.has(ri.name)&&(dt[kg(ri)]=c0.MemberDeclaredBySpreadAssignment)}function fr(Ot){for(let $r=Ot;$r!ao.has(Bs.escapedName)&&!!Bs.declarations&&!(u2(Bs)&2)&&!(Bs.valueDeclaration&&pC(Bs.valueDeclaration)))}function In(Ot,$r){let ri=new Set,ao=new Set;for(let Ys of $r)Hn(Ys)||(Ys.kind===292?ri.add(cz(Ys.name)):yz(Ys)&&cn(Ys,ao));let Bs=Ot.filter(Ys=>!ri.has(Ys.escapedName));return xe(ao,Bs),Bs}function Hn(Ot){return Ot.getStart(g)<=h&&h<=Ot.getEnd()}}function $Zs(s,c,g){var d;if(s){let{parent:h}=s;switch(s.kind){case 19:case 28:if(og(h)||Km(h))return h;break;case 42:return uu(h)?Gs(h.parent,og):void 0;case 134:return Gs(h.parent,og);case 80:if(s.text==="async"&&a0(s.parent))return s.parent.parent;{if(og(s.parent.parent)&&(Lx(s.parent)||a0(s.parent)&&Ra(g,s.getEnd()).line!==Ra(g,c).line))return s.parent.parent;let S=ji(h,fm);if(S?.getLastToken(g)===s&&og(S.parent))return S.parent}break;default:if((d=h.parent)!=null&&d.parent&&(uu(h.parent)||Bg(h.parent)||Dg(h.parent))&&og(h.parent.parent))return h.parent.parent;if(Lx(h)&&og(h.parent))return h.parent;let _=ji(h,fm);if(s.kind!==59&&_?.getLastToken(g)===s&&og(_.parent))return _.parent}}}function kit(s,c){let g=Gm(s,c);return g&&s<=g.end&&(_w(g)||v0(g.kind))?{contextToken:Gm(g.getFullStart(),c,void 0),previousToken:g}:{contextToken:g,previousToken:g}}function lAn(s,c,g,d){let h=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():g,_=h.getTypeChecker(),S=c.ambientModuleName?_.tryFindAmbientModule(c.ambientModuleName):c.fileName?_.getMergedSymbol(pe.checkDefined(h.getSourceFile(c.fileName)).symbol):void 0;if(!S)return;let R=c.exportName==="export="?_.resolveExternalModuleSymbol(S):_.tryGetMemberInModuleExportsAndProperties(c.exportName,S);return R?(R=c.exportName==="default"&&W7(R)||R,{symbol:R,origin:MZs(c,s,S)}):void 0}function xit(s,c,g,d,h){if(EZs(g))return;let _=CZs(g)?g.symbolName:s.name;if(_===void 0||s.flags&1536&&ine(_.charCodeAt(0))||k7(s))return;let S={name:_,needsConvertPropertyAccess:!1};if(Uh(_,c,h?1:0)||s.valueDeclaration&&pC(s.valueDeclaration))return S;if(s.flags&2097152)return{name:_,needsConvertPropertyAccess:!0};switch(d){case 3:return lXt(g)?{name:g.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(_),needsConvertPropertyAccess:!1};case 2:case 1:return _.charCodeAt(0)===32?void 0:{name:_,needsConvertPropertyAccess:!0};case 5:case 4:return S;default:pe.assertNever(d)}}var Git=[],uAn=FA(()=>{let s=[];for(let c=83;c<=166;c++)s.push({name:Vi(c),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords});return s});function gAn(s,c){if(!c)return AAn(s);let g=s+8+1;return Git[g]||(Git[g]=AAn(s).filter(d=>!eLs(Ta(d.name))))}function AAn(s){return Git[s]||(Git[s]=uAn().filter(c=>{let g=Ta(c.name);switch(s){case 0:return!1;case 1:return pAn(g)||g===138||g===144||g===156||g===145||g===128||Qde(g)&&g!==157;case 5:return pAn(g);case 2:return YPe(g);case 3:return dAn(g);case 4:return IY(g);case 6:return Qde(g)||g===87;case 7:return Qde(g);case 8:return g===156;default:return pe.assertNever(s)}}))}function eLs(s){switch(s){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}function dAn(s){return s===148}function YPe(s){switch(s){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return Sre(s)}}function pAn(s){return s===134||s===135||s===160||s===130||s===152||s===156||!tAe(s)&&!YPe(s)}function Fit(s){return Ir(s)?iv(s)??0:s.kind}function tLs(s,c){let g=[];if(s){let d=s.getSourceFile(),h=s.parent,_=d.getLineAndCharacterOfPosition(s.end).line,S=d.getLineAndCharacterOfPosition(c).line;(Mf(h)||Gh(h)&&h.moduleSpecifier)&&s===h.moduleSpecifier&&_===S&&g.push({name:Vi(132),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords})}return g}function rLs(s,c){return ji(s,g=>u3(g)&&Mie(g,c)?!0:tR(g)?"quit":!1)}function Zit(s,c,g,d){let h=c&&c!==s,_=d.getUnionType(Me(s.flags&1048576?s.types:[s],W=>!d.getPromisedTypeOfPromise(W))),S=h&&!(c.flags&3)?d.getUnionType([_,c]):_,R=nLs(S,g,d);return S.isClass()&&fAn(R)?[]:h?Me(R,T):R;function T(W){return B(W.declarations)?jt(W.declarations,V=>V.parent!==g):!0}}function nLs(s,c,g){return s.isUnion()?g.getAllPossiblePropertiesOfTypes(Me(s.types,d=>!(d.flags&402784252||g.isArrayLikeType(d)||g.isTypeInvalidDueToUnionDiscriminant(d,c)||g.typeHasCallOrConstructSignatures(d)||d.isClass()&&fAn(d.getApparentProperties())))):s.getApparentProperties()}function fAn(s){return jt(s,c=>!!(u2(c)&6))}function Lit(s,c){return s.isUnion()?pe.checkEachDefined(c.getAllPossiblePropertiesOfTypes(s.types),"getAllPossiblePropertiesOfTypes() should all be defined"):pe.checkEachDefined(s.getApparentProperties(),"getApparentProperties() should all be defined")}function iLs(s,c,g,d){switch(g.kind){case 353:return Gs(g.parent,YY);case 1:let h=Gs(li(Ma(g.parent,ll).statements),YY);if(h&&!qd(h,20,s))return h;break;case 81:if(Gs(g.parent,pi))return ji(g,xa);break;case 80:{if(iv(g)||pi(g.parent)&&g.parent.initializer===g)return;if(Vit(g))return ji(g,YY)}}if(c){if(g.kind===137||Ir(c)&&pi(c.parent)&&xa(g))return ji(c,xa);switch(c.kind){case 64:return;case 27:case 20:return Vit(g)&&g.parent.name===g?g.parent.parent:Gs(g,YY);case 19:case 28:return Gs(c.parent,YY);default:if(YY(g)){if(Ra(s,c.getEnd()).line!==Ra(s,d).line)return g;let h=xa(c.parent.parent)?YPe:dAn;return h(c.kind)||c.kind===42||Ir(c)&&h(iv(c)??0)?c.parent.parent:void 0}return}}}function sLs(s){if(!s)return;let c=s.parent;switch(s.kind){case 19:if(mh(c))return c;break;case 27:case 28:case 80:if(c.kind===172&&mh(c.parent))return c.parent;break}}function IAn(s,c){if(!s)return;if(uc(s)&&s7(s.parent))return c.getTypeArgumentConstraint(s);let g=IAn(s.parent,c);if(g)switch(s.kind){case 172:return c.getTypeOfPropertyOfContextualType(g,s.symbol.escapedName);case 194:case 188:case 193:return g}}function Vit(s){return s.parent&&mY(s.parent)&&YY(s.parent.parent)}function oLs(s,c,g,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!g&&yMt(g)&&d===g.getStart(s)+1;case"#":return!!g&&p(g)&&!!hC(g);case"<":return!!g&&g.kind===30&&(!fo(g.parent)||hAn(g.parent));case"/":return!!g&&(mA(g)?!!B7(g):g.kind===44&&rQ(g.parent));case" ":return!!g&&an(g)&&g.parent.kind===308;default:return pe.assertNever(c)}}function hAn({left:s}){return sf(s)}function aLs(s,c,g){let d=g.resolveName("self",void 0,111551,!1);if(d&&g.getTypeOfSymbolAtLocation(d,c)===s)return!0;let h=g.resolveName("global",void 0,111551,!1);if(h&&g.getTypeOfSymbolAtLocation(h,c)===s)return!0;let _=g.resolveName("globalThis",void 0,111551,!1);return!!(_&&g.getTypeOfSymbolAtLocation(_,c)===s)}function cLs(s){return!!(s.valueDeclaration&&o_(s.valueDeclaration)&256&&xa(s.valueDeclaration.parent))}function lLs(s,c){let g=c.getContextualType(s);if(g)return g;let d=gv(s.parent);if(fo(d)&&d.operatorToken.kind===64&&s===d.left)return c.getTypeAtLocation(d);if(un(d))return c.getContextualType(d)}function mAn(s,c){var g,d,h;let _,S=!1,R=T();return{isKeywordOnlyCompletion:S,keywordCompletion:_,isNewIdentifierLocation:!!(R||_===156),isTopLevelTypeOnly:!!((d=(g=Gs(R,Mf))==null?void 0:g.importClause)!=null&&d.isTypeOnly)||!!((h=Gs(R,km))!=null&&h.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&_An(R,s),replacementSpan:uLs(R)};function T(){let W=s.parent;if(km(W)){let V=W.getLastToken(c);if(Ir(s)&&V!==s){_=161,S=!0;return}return _=s.kind===156?void 0:156,mXt(W.moduleReference)?W:void 0}if(_An(W,s)&&yAn(W.parent))return W;if(yN(W)||Zx(W)){if(!W.parent.isTypeOnly&&(s.kind===19||s.kind===102||s.kind===28)&&(_=156),yAn(W))if(s.kind===20||s.kind===80)S=!0,_=161;else return W.parent.parent;return}if(Gh(W)&&s.kind===42||mv(W)&&s.kind===20){S=!0,_=161;return}if(an(s)&&ll(W))return _=156,s;if(an(s)&&Mf(W))return _=156,mXt(W.moduleSpecifier)?W:void 0}}function uLs(s){var c;if(!s)return;let g=ji(s,Hp(Mf,km,SN))??s,d=g.getSourceFile();if(S3(g,d))return Oy(g,d);pe.assert(g.kind!==102&&g.kind!==277);let h=g.kind===273||g.kind===352?CAn((c=g.importClause)==null?void 0:c.namedBindings)??g.moduleSpecifier:g.moduleReference,_={pos:g.getFirstToken().getStart(),end:h.pos};if(S3(_,d))return t9(_)}function CAn(s){var c;return de((c=Gs(s,yN))==null?void 0:c.elements,g=>{var d;return!g.propertyName&&WY(g.name.text)&&((d=Gm(g.name.pos,s.getSourceFile(),s))==null?void 0:d.kind)!==28})}function _An(s,c){return uy(s)&&(s.isTypeOnly||c===s.name&&JVe(c))}function yAn(s){if(!mXt(s.parent.parent.moduleSpecifier)||s.parent.name)return!1;if(yN(s)){let c=CAn(s);return(c?s.elements.indexOf(c):s.elements.length)<2}return!0}function mXt(s){var c;return sf(s)?!0:!((c=Gs(ZF(s)?s.expression:s,mA))!=null&&c.text)}function gLs(s,c){if(!s)return;let g=ji(s,d=>mP(d)||bAn(d)||Nu(d)?"quit":(Si(d)||Ds(d))&&!w0(d.parent));return g||(g=ji(c,d=>mP(d)||bAn(d)||Nu(d)?"quit":nc(d))),g}function ALs(s){if(!s)return!1;let c=s,g=s.parent;for(;g;){if(Ds(g))return g.default===c||c.kind===64;c=g,g=g.parent}return!1}function bAn(s){return s.parent&&lA(s.parent)&&(s.parent.body===s||s.kind===39)}function CXt(s,c,g=new Set){return d(s)||d(FC(s.exportSymbol||s,c));function d(h){return!!(h.flags&788968)||c.isUnknownSymbol(h)||!!(h.flags&1536)&&Zy(g,h)&&c.getExportsOfModule(h).some(_=>CXt(_,c,g))}}function dLs(s,c){let g=FC(s,c).declarations;return!!B(g)&&ue(g,lPe)}function EAn(s,c){if(c.length===0)return!0;let g=!1,d,h=0,_=s.length;for(let S=0;S<_;S++){let R=s.charCodeAt(S),T=c.charCodeAt(h);if((R===T||R===pLs(T))&&(g||(g=d===void 0||97<=d&&d<=122&&65<=R&&R<=90||d===95&&R!==95),g&&h++,h===c.length))return!0;d=R}return!1}function pLs(s){return 97<=s&&s<=122?s-32:s}function fLs(s){return s==="abstract"||s==="async"||s==="await"||s==="declare"||s==="module"||s==="namespace"||s==="type"||s==="satisfies"||s==="as"}var Pit={};o(Pit,{getStringLiteralCompletionDetails:()=>mLs,getStringLiteralCompletions:()=>ILs});var SAn={directory:0,script:1,"external module name":2};function _Xt(){let s=new Map;function c(g){let d=s.get(g.name);(!d||SAn[d.kind]({name:YT(re.value,M),kindModifiers:"",kind:"string",sortText:c0.LocationPriority,replacementSpan:krt(c,T),commitCharacters:[]}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:s.isNewIdentifier,optionalReplacementSpan:V,entries:ee,defaultCommitCharacters:ZU(s.isNewIdentifier)}}default:return pe.assertNever(s)}}function mLs(s,c,g,d,h,_,S,R){if(!d||!mA(d))return;let T=wAn(c,d,g,h,_,R);return T&&CLs(s,d,T,c,h.getTypeChecker(),S)}function CLs(s,c,g,d,h,_){switch(g.kind){case 0:{let S=de(g.paths,R=>R.name===s);return S&&HPe(s,BAn(S.extension),S.kind,[gS(s)])}case 1:{let S=de(g.symbols,R=>R.name===s);return S&&IXt(S,S.name,h,d,c,_)}case 2:return de(g.types,S=>S.value===s)?HPe(s,"","string",[gS(s)]):void 0;default:return pe.assertNever(g)}}function vAn(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:s.map(({name:h,kind:_,span:S,extension:R})=>({name:h,kind:_,kindModifiers:BAn(R),sortText:c0.LocationPriority,replacementSpan:S})),defaultCommitCharacters:ZU(!0)}}function BAn(s){switch(s){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return pe.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return pe.assertNever(s)}}function wAn(s,c,g,d,h,_){let S=d.getTypeChecker(),R=yXt(c.parent);switch(R.kind){case 202:{let Ze=yXt(R.parent);return Ze.kind===206?{kind:0,paths:NAn(s,c,d,h,_)}:T(Ze)}case 304:return og(R.parent)&&R.name===c?bLs(S,R.parent):W()||W(0);case 213:{let{expression:Ze,argumentExpression:We}=R;return c===QA(We)?TAn(S.getTypeAtLocation(Ze)):void 0}case 214:case 215:case 292:if(!VLs(c)&&!Up(R)){let Ze=X1e.getArgumentInfoForCompletions(R.kind===292?R.parent:c,g,s,S);return Ze&&yLs(Ze.invocation,c,Ze,S)||W(0)}case 273:case 279:case 284:case 352:return{kind:0,paths:NAn(s,c,d,h,_)};case 297:let V=APe(S,R.parent.clauses),M=W();return M?{kind:2,types:M.types.filter(Ze=>!V.hasValue(Ze.value)),isNewIdentifier:!1}:void 0;case 277:case 282:let re=R;if(re.propertyName&&c!==re.propertyName)return;let ge=re.parent,{moduleSpecifier:Ie}=ge.kind===276?ge.parent.parent:ge.parent;if(!Ie)return;let _e=S.getSymbolAtLocation(Ie);if(!_e)return;let Ee=S.getExportsAndPropertiesOfModule(_e),Ne=new Set(ge.elements.map(Ze=>CF(Ze.propertyName||Ze.name)));return{kind:1,symbols:Ee.filter(Ze=>Ze.escapedName!=="default"&&!Ne.has(Ze.escapedName)),hasIndexSignature:!1};case 227:if(R.operatorToken.kind===103){let Ze=S.getTypeAtLocation(R.right);return{kind:1,symbols:(Ze.isUnion()?S.getAllPossiblePropertiesOfTypes(Ze.types):Ze.getApparentProperties()).filter(Ue=>!Ue.valueDeclaration||!pC(Ue.valueDeclaration)),hasIndexSignature:!1}}return W(0);default:return W()||W(0)}function T(V){switch(V.kind){case 234:case 184:{let re=ji(R,ge=>ge.parent===V);return re?{kind:2,types:Wit(S.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 200:let{indexType:M,objectType:ee}=V;return Mie(M,g)?TAn(S.getTypeFromTypeNode(ee)):void 0;case 193:{let re=T(yXt(V.parent));if(!re)return;let ge=_Ls(V,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ie=>!k(ge,Ie.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ie=>!k(ge,Ie.value)),isNewIdentifier:!1}}default:return}}function W(V=4){let M=Wit(tPe(c,S,V));if(M.length)return{kind:2,types:M,isNewIdentifier:!1}}}function yXt(s){switch(s.kind){case 197:return pne(s);case 218:return gv(s);default:return s}}function _Ls(s,c){return Xt(s.types,g=>g!==c&&EE(g)&&Zg(g.literal)?g.literal.text:void 0)}function yLs(s,c,g,d){let h=!1,_=new Set,S=eI(s)?pe.checkDefined(ji(c.parent,EN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(s,S),T=er(R,W=>{if(!D0(W)&&g.argumentCount>W.parameters.length)return;let V=W.getTypeParameterAtPosition(g.argumentIndex);if(eI(s)){let M=d.getTypeOfPropertyOfType(V,xw(S.name));M&&(V=M)}return h=h||!!(V.flags&4),Wit(V,_)});return B(T)?{kind:2,types:T,isNewIdentifier:h}:void 0}function TAn(s){return s&&{kind:1,symbols:Me(s.getApparentProperties(),c=>!(c.valueDeclaration&&pC(c.valueDeclaration))),hasIndexSignature:$rt(s)}}function bLs(s,c){let g=s.getContextualType(c);if(!g)return;let d=s.getContextualType(c,4);return{kind:1,symbols:Zit(g,d,c,s),hasIndexSignature:$rt(g)}}function Wit(s,c=new Set){return s?(s=Zrt(s),s.isUnion()?er(s.types,g=>Wit(g,c)):s.isStringLiteral()&&!(s.flags&1024)&&Zy(c,s.value)?[s]:E):E}function lpe(s,c,g){return{name:s,kind:c,extension:g}}function bXt(s){return lpe(s,"directory",void 0)}function RAn(s,c,g){let d=GLs(s,c),h=s.length===0?void 0:zd(c,s.length);return g.map(({name:_,kind:S,extension:R})=>_.includes(ag)||_.includes(Eb)?{name:_,kind:S,extension:R,span:h}:{name:_,kind:S,extension:R,span:d})}function NAn(s,c,g,d,h){return RAn(c.text,c.getStart(s)+1,ELs(s,c,g,d,h))}function ELs(s,c,g,d,h){let _=Dp(c.text),S=mA(c)?g.getModeForUsageLocation(s,c):void 0,R=s.path,T=Mo(R),W=g.getCompilerOptions(),V=g.getTypeChecker(),M=z3(g,d),ee=EXt(W,1,s,V,h,S);return FLs(_)||!W.baseUrl&&!W.paths&&(Xp(_)||n_(_))?SLs(_,T,g,d,M,R,ee):TLs(_,T,S,g,d,M,ee)}function EXt(s,c,g,d,h,_){return{extensionsToSearch:Nr(vLs(s,d)),referenceKind:c,importingSourceFile:g,endingPreference:h?.importModuleSpecifierEnding,resolutionMode:_}}function SLs(s,c,g,d,h,_,S){let R=g.getCompilerOptions();return R.rootDirs?wLs(R.rootDirs,s,c,S,g,d,h,_):Do(upe(s,c,S,g,d,h,!0,_).values())}function vLs(s,c){let g=c?Xt(c.getAmbientModules(),_=>{let S=_.name.slice(1,-1);if(!(!S.startsWith("*.")||S.includes("/")))return S.slice(1)}):[],d=[...z7(s),g],h=k_(s);return UVe(h)?q7(s,d):d}function BLs(s,c,g,d){s=s.map(_=>hp(iu(Xp(_)?_:Ro(c,_))));let h=X(s,_=>Jh(_,g,c,d)?g.substr(_.length):void 0);return io([...s.map(_=>Ro(_,h)),g].map(_=>ny(_)),MA,Ca)}function wLs(s,c,g,d,h,_,S,R){let W=h.getCompilerOptions().project||_.getCurrentDirectory(),V=!(_.useCaseSensitiveFileNames&&_.useCaseSensitiveFileNames()),M=BLs(s,W,g,V);return io(er(M,ee=>Do(upe(c,ee,d,h,_,S,!0,R).values())),(ee,re)=>ee.name===re.name&&ee.kind===re.kind&&ee.extension===re.extension)}function upe(s,c,g,d,h,_,S,R,T=_Xt()){var W;s===void 0&&(s=""),s=Dp(s),Jp(s)||(s=Mo(s)),s===""&&(s="."+ag),s=hp(s);let V=AE(c,s),M=Jp(V)?V:Mo(V);if(!S){let Ie=vMt(M,h);if(Ie){let Ee=E3(Ie,h).typesVersions;if(typeof Ee=="object"){let Ne=(W=T9e(Ee))==null?void 0:W.paths;if(Ne){let Te=Mo(Ie),Ze=V.slice(hp(Te).length);if(kAn(T,Ze,Te,g,d,h,_,Ne))return T}}}}let ee=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames());if(!sPe(h,M))return T;let re=rnt(h,M,g.extensionsToSearch,void 0,["./*"]);if(re)for(let Ie of re){if(Ie=iu(Ie),R&&qf(Ie,R,c,ee)===0)continue;let{name:_e,extension:Ee}=DAn(gp(Ie),d,g,!1);T.add(lpe(_e,"script",Ee))}let ge=iPe(h,M);if(ge)for(let Ie of ge){let _e=gp(iu(Ie));_e!=="@types"&&T.add(bXt(_e))}return T}function DAn(s,c,g,d){let h=WF.tryGetRealFileNameForNonJsDeclarationFileName(s);if(h)return{name:h,extension:QT(h)};if(g.referenceKind===0)return{name:s,extension:QT(s)};let _=WF.getModuleSpecifierPreferences({importModuleSpecifierEnding:g.endingPreference},c,c.getCompilerOptions(),g.importingSourceFile).getAllowedEndingsInPreferredOrder(g.resolutionMode);if(d&&(_=_.filter(R=>R!==0&&R!==1)),_[0]===3){if(fu(s,Yne))return{name:s,extension:QT(s)};let R=WF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return R?{name:fN(s,R),extension:R}:{name:s,extension:QT(s)}}if(!d&&(_[0]===0||_[0]===1)&&fu(s,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:s0(s),extension:QT(s)};let S=WF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return S?{name:fN(s,S),extension:S}:{name:s,extension:QT(s)}}function kAn(s,c,g,d,h,_,S,R){let T=V=>R[V],W=(V,M)=>{let ee=UY(V),re=UY(M),ge=typeof ee=="object"?ee.prefix.length:V.length,Ie=typeof re=="object"?re.prefix.length:M.length;return Zt(Ie,ge)};return xAn(s,!1,!1,c,g,d,h,_,S,_g(R),T,W)}function xAn(s,c,g,d,h,_,S,R,T,W,V,M){let ee=[],re;for(let ge of W){if(ge===".")continue;let Ie=ge.replace(/^\.\//,"")+((c||g)&&di(ge,"/")?"*":""),_e=V(ge);if(_e){let Ee=UY(Ie);if(!Ee)continue;let Ne=typeof Ee=="object"&&jd(Ee,d);Ne&&(re===void 0||M(Ie,re)===-1)&&(re=Ie,ee=ee.filter(Ze=>!Ze.matchedPattern)),(typeof Ee=="string"||re===void 0||M(Ie,re)!==1)&&ee.push({matchedPattern:Ne,results:RLs(Ie,_e,d,h,_,c,g,S,R,T).map(({name:Ze,kind:We,extension:Ue})=>lpe(Ze,We,Ue))})}}return ee.forEach(ge=>ge.results.forEach(Ie=>s.add(Ie))),re!==void 0}function TLs(s,c,g,d,h,_,S){let R=d.getTypeChecker(),T=d.getCompilerOptions(),{baseUrl:W,paths:V}=T,M=_Xt(),ee=k_(T);if(W){let Ie=iu(Ro(h.getCurrentDirectory(),W));upe(s,Ie,S,d,h,_,!1,void 0,M)}if(V){let Ie=oAe(T,h);kAn(M,s,Ie,S,d,h,_,V)}let re=FAn(s);for(let Ie of DLs(s,re,R))M.add(lpe(Ie,"external module name",void 0));if(VAn(d,h,_,c,re,S,M),UVe(ee)){let Ie=!1;if(re===void 0)for(let _e of xLs(h,c)){let Ee=lpe(_e,"external module name",void 0);M.has(Ee.name)||(Ie=!0,M.add(Ee))}if(!Ie){let _e=U7(T),Ee=Vne(T),Ne=!1,Te=Ue=>{if(Ee&&!Ne){let $e=Ro(Ue,"package.json");if(Ne=Kie(h,$e)){let Ye=E3($e,h);ge(Ye.imports,s,Ue,!1,!0)}}},Ze=Ue=>{let $e=Ro(Ue,"node_modules");sPe(h,$e)&&upe(s,$e,S,d,h,_,!1,void 0,M),Te(Ue)};if(re&&_e){let Ue=Ze;Ze=$e=>{let Ye=Np(s);Ye.shift();let Tt=Ye.shift();if(!Tt)return Ue($e);if(Ac(Tt,"@")){let mt=Ye.shift();if(!mt)return Ue($e);Tt=Ro(Tt,mt)}if(Ee&&Ac(Tt,"#"))return Te($e);let ot=Ro($e,"node_modules",Tt),Qe=Ro(ot,"package.json");if(Kie(h,Qe)){let mt=E3(Qe,h),ht=Ye.join("/")+(Ye.length&&Jp(s)?"/":"");ge(mt.exports,ht,ot,!0,!1);return}return Ue($e)}}let We=LP(c);if(We){let Ue=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,$e=s.match(Ue);if($e){let[,Ye,Tt]=$e;if(Ac(Ye,"#"))vN(h,c,Ze);else{let ot;try{ot=We.resolveToUnqualified(Ye,c,{considerBuiltins:!1})}catch{}if(ot){let Qe=iu(ot),mt=!0;if(re&&_e){let ht=Ro(Qe,"package.json");if(Kie(h,ht)){let _t=E3(ht,h);ge(_t.exports,Tt,Qe,!0,!1),mt=!1}}mt&&upe(Tt,Qe,S,d,h,_,!1,void 0,M)}}}}else vN(h,c,Ze)}}return Do(M.values());function ge(Ie,_e,Ee,Ne,Te){if(typeof Ie!="object"||Ie===null)return;let Ze=_g(Ie),We=PP(T,g);xAn(M,Ne,Te,_e,Ee,S,d,h,_,Ze,Ue=>{let $e=GAn(Ie[Ue],We);if($e!==void 0)return J_(di(Ue,"/")&&di($e,"/")?$e+"*":$e)},fet)}}function GAn(s,c){if(typeof s=="string")return s;if(s&&typeof s=="object"&&!Ki(s)){for(let g in s)if(g==="default"||c.includes(g)||REe(c,g)){let d=s[g];return GAn(d,c)}}}function FAn(s){return SXt(s)?Jp(s)?s:Mo(s):void 0}function RLs(s,c,g,d,h,_,S,R,T,W){let V=UY(s);if(!V)return E;if(typeof V=="string")return ee(s,"script");let M=HS(g,V.prefix);if(M===void 0)return di(s,"/*")?ee(V.prefix,"directory"):er(c,ge=>{var Ie;return(Ie=ZAn("",d,ge,h,_,S,R,T,W))==null?void 0:Ie.map(({name:_e,...Ee})=>({name:V.prefix+_e+V.suffix,...Ee}))});return er(c,re=>ZAn(M,d,re,h,_,S,R,T,W));function ee(re,ge){return Ac(re,g)?[{name:ny(re),kind:ge,extension:void 0}]:E}}function ZAn(s,c,g,d,h,_,S,R,T){if(!R.readDirectory)return;let W=UY(g);if(W===void 0||Xs(W))return;let V=AE(W.prefix),M=Jp(W.prefix)?V:Mo(V),ee=Jp(W.prefix)?"":gp(V),re=SXt(s),ge=re?Jp(s)?s:Mo(s):void 0,Ie=()=>T.getCommonSourceDirectory(),_e=!y3(T),Ee=S.getCompilerOptions().outDir,Ne=S.getCompilerOptions().declarationDir,Te=re?Ro(M,ee+ge):M,Ze=iu(Ro(c,Te)),We=_&&Ee&&Yye(Ze,_e,Ee,Ie),Ue=_&&Ne&&Yye(Ze,_e,Ne,Ie),$e=iu(W.suffix),Ye=$e&&sAe("_"+$e),Tt=$e?Hye("_"+$e):void 0,ot=[Ye&&fN($e,Ye),...Tt?Tt.map(Ke=>fN($e,Ke)):[],$e].filter(Xs),Qe=$e?ot.map(Ke=>"**/*"+Ke):["./*"],mt=(h||_)&&di(g,"/*"),ht=_t(Ze);return We&&(ht=Nn(ht,_t(We))),Ue&&(ht=Nn(ht,_t(Ue))),$e||(ht=Nn(ht,Rt(Ze)),We&&(ht=Nn(ht,Rt(We))),Ue&&(ht=Nn(ht,Rt(Ue)))),ht;function _t(Ke){let Pt=re?Ke:hp(Ke)+ee;return Xt(rnt(R,Ke,d.extensionsToSearch,void 0,Qe),_r=>{let Gt=Lt(_r,Pt);if(Gt){if(SXt(Gt))return bXt(Np(LAn(Gt))[1]);let{name:nt,extension:Dt}=DAn(Gt,S,d,mt);return lpe(nt,"script",Dt)}})}function Rt(Ke){return Xt(iPe(R,Ke),Pt=>Pt==="node_modules"?void 0:bXt(Pt))}function Lt(Ke,Pt){return X(ot,_r=>{let Gt=NLs(iu(Ke),Pt,_r);return Gt===void 0?void 0:LAn(Gt)})}}function NLs(s,c,g){return Ac(s,c)&&di(s,g)?s.slice(c.length,s.length-g.length):void 0}function LAn(s){return s[0]===ag?s.slice(1):s}function DLs(s,c,g){let h=g.getAmbientModules().map(_=>l2(_.name)).filter(_=>Ac(_,s)&&!_.includes("*"));if(c!==void 0){let _=hp(c);return h.map(S=>Nm(S,_))}return h}function kLs(s,c,g,d,h){let _=g.getCompilerOptions(),S=Jc(s,c),R=fE(s.text,S.pos),T=R&&de(R,_e=>c>=_e.pos&&c<=_e.end);if(!T)return;let W=s.text.slice(T.pos,c),V=ZLs.exec(W);if(!V)return;let[,M,ee,re]=V,ge=Mo(s.path),Ie=ee==="path"?upe(re,ge,EXt(_,0,s),g,d,h,!0,s.path):ee==="types"?VAn(g,d,h,ge,FAn(re),EXt(_,1,s)):pe.fail();return RAn(re,T.pos+M.length,Do(Ie.values()))}function VAn(s,c,g,d,h,_,S=_Xt()){let R=s.getCompilerOptions(),T=new Map,W=oPe(()=>mde(R,c))||E;for(let M of W)V(M);if(LP(d))for(let M of Ten(d))V(M);else for(let M of nnt(d,c)){let ee=Ro(Mo(M),"node_modules/@types");V(ee)}return S;function V(M){if(sPe(c,M))for(let ee of iPe(c,M)){let re=NEe(ee);if(!(R.types&&!k(R.types,re)))if(h===void 0)T.has(re)||(S.add(lpe(re,"external module name",void 0)),T.set(re,!0));else{let ge=Ro(M,ee),Ie=NAe(h,re,JD(c));Ie!==void 0&&upe(Ie,ge,_,s,c,g,!1,void 0,S)}}}}function xLs(s,c){if(!s.readFile||!s.fileExists)return E;let g=[];for(let d of nnt(c,s)){let h=E3(d,s);for(let _ of LLs){let S=h[_];if(S)for(let R in S)Da(S,R)&&!Ac(R,"@types/")&&g.push(R)}}return g}function GLs(s,c){let g=Math.max(s.lastIndexOf(ag),s.lastIndexOf(Eb)),d=g!==-1?g+1:0,h=s.length-d;return h===0||Uh(s.substr(d,h),99)?void 0:zd(c+d,h)}function FLs(s){if(s&&s.length>=2&&s.charCodeAt(0)===46){let c=s.length>=3&&s.charCodeAt(1)===46?2:1,g=s.charCodeAt(c);return g===47||g===92}return!1}var ZLs=/^(\/\/\/\s*Uz,DefinitionKind:()=>QAn,EntryKind:()=>XAn,ExportKind:()=>PAn,FindReferencesUse:()=>JAn,ImportExport:()=>WAn,createImportTracker:()=>vXt,findModuleReferences:()=>OAn,findReferenceOrRenameEntries:()=>qLs,findReferencedSymbols:()=>KLs,getContextNode:()=>LU,getExportInfo:()=>BXt,getImplementationsAtPosition:()=>zLs,getImportOrExportSymbol:()=>YAn,getReferenceEntriesForNode:()=>KAn,isContextWithStartAndEndNode:()=>TXt,isDeclarationOfSymbol:()=>edn,isWriteAccessForReference:()=>NXt,toContextSpan:()=>RXt,toHighlightSpan:()=>s9s,toReferenceEntry:()=>qAn,toRenameLocation:()=>e9s});function vXt(s,c,g,d){let h=MLs(s,g,d);return(_,S,R)=>{let{directImports:T,indirectUsers:W}=PLs(s,c,h,S,g,d);return{indirectUsers:W,...WLs(T,_,S.exportKind,g,R)}}}var PAn=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s))(PAn||{}),WAn=(s=>(s[s.Import=0]="Import",s[s.Export=1]="Export",s))(WAn||{});function PLs(s,c,g,{exportingModuleSymbol:d,exportKind:h},_,S){let R=Yie(),T=Yie(),W=[],V=!!d.globalExports,M=V?void 0:[];return re(d),{directImports:W,indirectUsers:ee()};function ee(){if(V)return s;if(d.declarations)for(let Te of d.declarations)_F(Te)&&c.has(Te.getSourceFile().fileName)&&Ee(Te);return M.map(ms)}function re(Te){let Ze=Ne(Te);if(Ze){for(let We of Ze)if(R(We))switch(S&&S.throwIfCancellationRequested(),We.kind){case 214:if(Up(We)){ge(We);break}if(!V){let $e=We.parent;if(h===2&&$e.kind===261){let{name:Ye}=$e;if(Ye.kind===80){W.push(Ye);break}}}break;case 80:break;case 272:_e(We,We.name,Ga(We,32),!1);break;case 273:case 352:W.push(We);let Ue=We.importClause&&We.importClause.namedBindings;Ue&&Ue.kind===275?_e(We,Ue.name,!1,!0):!V&&h3(We)&&Ee(QPe(We));break;case 279:We.exportClause?We.exportClause.kind===281?Ee(QPe(We),!0):W.push(We):re(JLs(We,_));break;case 206:!V&&We.isTypeOf&&!We.qualifier&&Ie(We)&&Ee(We.getSourceFile(),!0),W.push(We);break;default:pe.failBadSyntaxKind(We,"Unexpected import kind.")}}}function ge(Te){let Ze=ji(Te,Oit)||Te.getSourceFile();Ee(Ze,!!Ie(Te,!0))}function Ie(Te,Ze=!1){return ji(Te,We=>Ze&&Oit(We)?"quit":LB(We)&&jt(We.modifiers,y))}function _e(Te,Ze,We,Ue){if(h===2)Ue||W.push(Te);else if(!V){let $e=QPe(Te);pe.assert($e.kind===308||$e.kind===268),We||OLs($e,Ze,_)?Ee($e,!0):Ee($e)}}function Ee(Te,Ze=!1){if(pe.assert(!V),!T(Te)||(M.push(Te),!Ze))return;let Ue=_.getMergedSymbol(Te.symbol);if(!Ue)return;pe.assert(!!(Ue.flags&1536));let $e=Ne(Ue);if($e)for(let Ye of $e)Um(Ye)||Ee(QPe(Ye),!0)}function Ne(Te){return g.get(kg(Te).toString())}}function WLs(s,c,g,d,h){let _=[],S=[];function R(ee,re){_.push([ee,re])}if(s)for(let ee of s)T(ee);return{importSearches:_,singleReferences:S};function T(ee){if(ee.kind===272){wXt(ee)&&W(ee.name);return}if(ee.kind===80){W(ee);return}if(ee.kind===206){if(ee.qualifier){let Ie=B0(ee.qualifier);Ie.escapedText===nf(c)&&S.push(Ie)}else g===2&&S.push(ee.argument.literal);return}if(ee.moduleSpecifier.kind!==11)return;if(ee.kind===279){ee.exportClause&&mv(ee.exportClause)&&V(ee.exportClause);return}let{name:re,namedBindings:ge}=ee.importClause||{name:void 0,namedBindings:void 0};if(ge)switch(ge.kind){case 275:W(ge.name);break;case 276:(g===0||g===1)&&V(ge);break;default:pe.assertNever(ge)}if(re&&(g===1||g===2)&&(!h||re.escapedText===KVe(c))){let Ie=d.getSymbolAtLocation(re);R(re,Ie)}}function W(ee){g===2&&(!h||M(ee.escapedText))&&R(ee,d.getSymbolAtLocation(ee))}function V(ee){if(ee)for(let re of ee.elements){let{name:ge,propertyName:Ie}=re;if(M(CF(Ie||ge)))if(Ie)S.push(Ie),(!h||CF(ge)===c.escapedName)&&R(ge,d.getSymbolAtLocation(ge));else{let _e=re.kind===282&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ge);R(ge,_e)}}}function M(ee){return ee===c.escapedName||g!==0&&ee==="default"}}function OLs(s,c,g){let d=g.getSymbolAtLocation(c);return!!MAn(s,h=>{if(!Gh(h))return;let{exportClause:_,moduleSpecifier:S}=h;return!S&&_&&mv(_)&&_.elements.some(R=>g.getExportSpecifierLocalTargetSymbol(R)===d)})}function OAn(s,c,g){var d;let h=[],_=s.getTypeChecker();for(let S of c){let R=g.valueDeclaration;if(R?.kind===308){for(let T of S.referencedFiles)s.getSourceFileFromReference(S,T)===R&&h.push({kind:"reference",referencingFile:S,ref:T});for(let T of S.typeReferenceDirectives){let W=(d=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(T,S))==null?void 0:d.resolvedTypeReferenceDirective;W!==void 0&&W.resolvedFileName===R.fileName&&h.push({kind:"reference",referencingFile:S,ref:T})}}HAn(S,(T,W)=>{_.getSymbolAtLocation(W)===g&&h.push(sp(T)?{kind:"implicit",literal:W,referencingFile:S}:{kind:"import",literal:W})})}return h}function MLs(s,c,g){let d=new Map;for(let h of s)g&&g.throwIfCancellationRequested(),HAn(h,(_,S)=>{let R=c.getSymbolAtLocation(S);if(R){let T=kg(R).toString(),W=d.get(T);W||d.set(T,W=[]),W.push(_)}});return d}function MAn(s,c){return F(s.kind===308?s.statements:s.body.statements,g=>c(g)||Oit(g)&&F(g.body&&g.body.statements,c))}function HAn(s,c){if(s.externalModuleIndicator||s.imports!==void 0)for(let g of s.imports)c(v7(g),g);else MAn(s,g=>{switch(g.kind){case 279:case 273:{let d=g;d.moduleSpecifier&&Zg(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 272:{let d=g;wXt(d)&&c(d,d.moduleReference.expression);break}}})}function YAn(s,c,g,d){return d?h():h()||_();function h(){var T;let{parent:W}=s,V=W.parent;if(c.exportSymbol)return W.kind===212?(T=c.declarations)!=null&&T.some(re=>re===W)&&fo(V)?ee(V,!1):void 0:S(c.exportSymbol,R(W));{let re=YLs(W,s);if(re&&Ga(re,32))return km(re)&&re.moduleReference===s?d?void 0:{kind:0,symbol:g.getSymbolAtLocation(re.name)}:S(c,R(re));if(tk(W))return S(c,0);if(Cf(W))return M(W);if(Cf(V))return M(V);if(fo(W))return ee(W,!0);if(fo(V))return ee(V,!0);if(bU(W)||p$e(W))return S(c,0)}function M(re){if(!re.symbol.parent)return;let ge=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ge}}}function ee(re,ge){let Ie;switch(nI(re)){case 1:Ie=0;break;case 2:Ie=2;break;default:return}let _e=ge?g.getSymbolAtLocation(gbe(Ma(re.left,_p))):c;return _e&&S(_e,Ie)}}function _(){if(!QLs(s))return;let W=g.getImmediateAliasedSymbol(c);if(!W||(W=XLs(W,g),W.escapedName==="export="&&(W=HLs(W,g),W===void 0)))return;let V=KVe(W);if(V===void 0||V==="default"||V===c.escapedName)return{kind:0,symbol:W}}function S(T,W){let V=BXt(T,W,g);return V&&{kind:1,symbol:T,exportInfo:V}}function R(T){return Ga(T,2048)?1:0}}function HLs(s,c){var g,d;if(s.flags&2097152)return c.getImmediateAliasedSymbol(s);let h=pe.checkDefined(s.valueDeclaration);if(Cf(h))return(g=Gs(h.expression,mE))==null?void 0:g.symbol;if(fo(h))return(d=Gs(h.right,mE))==null?void 0:d.symbol;if(ll(h))return h.symbol}function YLs(s,c){let g=nc(s)?s:hg(s)?ai(s):void 0;return g?s.name!==c||iQ(g.parent)?void 0:Ch(g.parent.parent)?g.parent.parent:void 0:s}function QLs(s){let{parent:c}=s;switch(c.kind){case 272:return c.name===s&&wXt(c);case 277:return!c.propertyName;case 274:case 275:return pe.assert(c.name===s),!0;case 209:return wo(s)&&CP(c.parent.parent);default:return!1}}function BXt(s,c,g){let d=s.parent;if(!d)return;let h=g.getMergedSymbol(d);return WD(h)?{exportingModuleSymbol:h,exportKind:c}:void 0}function XLs(s,c){if(s.declarations)for(let g of s.declarations){if(R0(g)&&!g.propertyName&&!g.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(g)||s;if(jo(g)&&cN(g.expression)&&!p(g.name))return c.getSymbolAtLocation(g);if(a0(g)&&fo(g.parent.parent)&&nI(g.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(g.name)}return s}function JLs(s,c){return c.getMergedSymbol(QPe(s).symbol)}function QPe(s){if(s.kind===214||s.kind===352)return s.getSourceFile();let{parent:c}=s;return c.kind===308?c:(pe.assert(c.kind===269),Ma(c.parent,Oit))}function Oit(s){return s.kind===268&&s.name.kind===11}function wXt(s){return s.moduleReference.kind===284&&s.moduleReference.expression.kind===11}var QAn=(s=>(s[s.Symbol=0]="Symbol",s[s.Label=1]="Label",s[s.Keyword=2]="Keyword",s[s.This=3]="This",s[s.String=4]="String",s[s.TripleSlashReference=5]="TripleSlashReference",s))(QAn||{}),XAn=(s=>(s[s.Span=0]="Span",s[s.Node=1]="Node",s[s.StringLiteral=2]="StringLiteral",s[s.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",s[s.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",s))(XAn||{});function HF(s,c=1){return{kind:c,node:s.name||s,context:ULs(s)}}function TXt(s){return s&&s.kind===void 0}function ULs(s){if(jh(s))return LU(s);if(s.parent){if(!jh(s.parent)&&!Cf(s.parent)){if(wo(s)){let g=fo(s.parent)?s.parent:_p(s.parent)&&fo(s.parent.parent)&&s.parent.parent.left===s.parent?s.parent.parent:void 0;if(g&&nI(g)!==0)return LU(g)}if($T(s.parent)||rQ(s.parent))return s.parent.parent;if(_U(s.parent)||FP(s.parent)||AY(s.parent))return s.parent;if(mA(s)){let g=B7(s);if(g){let d=ji(g,h=>jh(h)||Lc(h)||u3(h));return jh(d)?LU(d):d}}let c=ji(s,Un);return c?LU(c.parent):void 0}if(s.parent.name===s||Tc(s.parent)||Cf(s.parent)||(eS(s.parent)||hg(s.parent))&&s.parent.propertyName===s||s.kind===90&&Ga(s.parent,2080))return LU(s.parent)}}function LU(s){if(s)switch(s.kind){case 261:return!u_(s.parent)||s.parent.declarations.length!==1?s:Ch(s.parent.parent)?s.parent.parent:DL(s.parent.parent)?LU(s.parent.parent):s.parent;case 209:return LU(s.parent.parent);case 277:return s.parent.parent.parent;case 282:case 275:return s.parent.parent;case 274:case 281:return s.parent;case 227:return VC(s.parent)?s.parent:s;case 251:case 250:return{start:s.initializer,end:s.expression};case 304:case 305:return e9(s.parent)?LU(ji(s.parent,c=>fo(c)||DL(c))):s;case 256:return{start:de(s.getChildren(s.getSourceFile()),c=>c.kind===109),end:s.caseBlock};default:return s}}function RXt(s,c,g){if(!g)return;let d=TXt(g)?JPe(g.start,c,g.end):JPe(g,c);return d.start!==s.start||d.length!==s.length?{contextSpan:d}:void 0}var JAn=(s=>(s[s.Other=0]="Other",s[s.References=1]="References",s[s.Rename=2]="Rename",s))(JAn||{});function KLs(s,c,g,d,h){let _=Lb(d,h),S={use:1},R=Uz.getReferencedSymbolsForNode(h,_,s,g,c,S),T=s.getTypeChecker(),W=Uz.getAdjustedNode(_,S),V=jLs(W)?T.getSymbolAtLocation(W):void 0;return!R||!R.length?void 0:Xt(R,({definition:M,references:ee})=>M&&{definition:T.runWithCancellationToken(c,re=>$Ls(M,re,_)),references:ee.map(re=>t9s(re,V))})}function jLs(s){return s.kind===90||!!T7(s)||fne(s)||s.kind===137&&Tc(s.parent)}function zLs(s,c,g,d,h){let _=Lb(d,h),S,R=UAn(s,c,g,_,h);if(_.parent.kind===212||_.parent.kind===209||_.parent.kind===213||_.kind===108)S=R&&[...R];else if(R){let W=oA(R),V=new Set;for(;!W.isEmpty();){let M=W.dequeue();if(!Zy(V,rd(M.node)))continue;S=Ft(S,M);let ee=UAn(s,c,g,M.node,M.node.pos);ee&&W.enqueue(...ee)}}let T=s.getTypeChecker();return At(S,W=>n9s(W,T))}function UAn(s,c,g,d,h){if(d.kind===308)return;let _=s.getTypeChecker();if(d.parent.kind===305){let S=[];return Uz.getReferenceEntriesForShorthandPropertyAssignment(d,_,R=>S.push(HF(R))),S}else if(d.kind===108||xy(d.parent)){let S=_.getSymbolAtLocation(d);return S.valueDeclaration&&[HF(S.valueDeclaration)]}else return KAn(h,d,s,g,c,{implementations:!0,use:1})}function qLs(s,c,g,d,h,_,S){return At(jAn(Uz.getReferencedSymbolsForNode(h,d,s,g,c,_)),R=>S(R,d,s.getTypeChecker()))}function KAn(s,c,g,d,h,_={},S=new Set(d.map(R=>R.fileName))){return jAn(Uz.getReferencedSymbolsForNode(s,c,g,d,h,_,S))}function jAn(s){return s&&er(s,c=>c.references)}function $Ls(s,c,g){let d=(()=>{switch(s.type){case 0:{let{symbol:V}=s,{displayParts:M,kind:ee}=zAn(V,c,g),re=M.map(_e=>_e.text).join(""),ge=V.declarations&&Nc(V.declarations),Ie=ge?Il(ge)||ge:g;return{...XPe(Ie),name:re,kind:ee,displayParts:M,context:LU(ge)}}case 1:{let{node:V}=s;return{...XPe(V),name:V.text,kind:"label",displayParts:[SE(V.text,17)]}}case 2:{let{node:V}=s,M=Vi(V.kind);return{...XPe(V),name:M,kind:"keyword",displayParts:[{text:M,kind:"keyword"}]}}case 3:{let{node:V}=s,M=c.getSymbolAtLocation(V),ee=M&&i9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,M,V.getSourceFile(),kU(V),V).displayParts||[gS("this")];return{...XPe(V),name:"this",kind:"var",displayParts:ee}}case 4:{let{node:V}=s;return{...XPe(V),name:V.text,kind:"var",displayParts:[SE(xp(V),8)]}}case 5:return{textSpan:t9(s.reference),sourceFile:s.file,name:s.reference.fileName,kind:"string",displayParts:[SE(`"${s.reference.fileName}"`,8)]};default:return pe.assertNever(s)}})(),{sourceFile:h,textSpan:_,name:S,kind:R,displayParts:T,context:W}=d;return{containerKind:"",containerName:"",fileName:h.fileName,kind:R,name:S,textSpan:_,displayParts:T,...RXt(_,h,W)}}function XPe(s){let c=s.getSourceFile();return{sourceFile:c,textSpan:JPe(Un(s)?s.expression:s,c)}}function zAn(s,c,g){let d=Uz.getIntersectingMeaningFromDeclarations(g,s),h=s.declarations&&Nc(s.declarations)||g,{displayParts:_,symbolKind:S}=i9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,s,h.getSourceFile(),h,h,d);return{displayParts:_,kind:S}}function e9s(s,c,g,d,h){return{...Mit(s),...d&&r9s(s,c,g,h)}}function t9s(s,c){let g=qAn(s);return c?{...g,isDefinition:s.kind!==0&&edn(s.node,c)}:g}function qAn(s){let c=Mit(s);if(s.kind===0)return{...c,isWriteAccess:!1};let{kind:g,node:d}=s;return{...c,isWriteAccess:NXt(d),isInString:g===2?!0:void 0}}function Mit(s){if(s.kind===0)return{textSpan:s.textSpan,fileName:s.fileName};{let c=s.node.getSourceFile(),g=JPe(s.node,c);return{textSpan:g,fileName:c.fileName,...RXt(g,c,s.context)}}}function r9s(s,c,g,d){if(s.kind!==0&&(Ir(c)||mA(c))){let{node:h,kind:_}=s,S=h.parent,R=c.text,T=a0(S);if(T||p1e(S)&&S.name===h&&S.dotDotDotToken===void 0){let W={prefixText:R+": "},V={suffixText:": "+R};if(_===3)return W;if(_===4)return V;if(T){let M=S.parent;return og(M)&&fo(M.parent)&&cN(M.parent.left)?W:V}else return W}else if(uy(S)&&!S.propertyName){let W=R0(c.parent)?g.getExportSpecifierLocalTargetSymbol(c.parent):g.getSymbolAtLocation(c);return k(W.declarations,S)?{prefixText:R+" as "}:VB}else if(R0(S)&&!S.propertyName)return c===s.node||g.getSymbolAtLocation(c)===g.getSymbolAtLocation(s.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(s.kind!==0&&mC(s.node)&&_p(s.node.parent)){let h=Wrt(d);return{prefixText:h,suffixText:h}}return VB}function n9s(s,c){let g=Mit(s);if(s.kind!==0){let{node:d}=s;return{...g,...i9s(d,c)}}else return{...g,kind:"",displayParts:[]}}function i9s(s,c){let g=c.getSymbolAtLocation(jh(s)&&s.name?s.name:s);return g?zAn(g,c,s):s.kind===211?{kind:"interface",displayParts:[k0(21),gS("object literal"),k0(22)]}:s.kind===232?{kind:"local class",displayParts:[k0(21),gS("anonymous local class"),k0(22)]}:{kind:pQ(s),displayParts:[]}}function s9s(s){let c=Mit(s);if(s.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let g=NXt(s.node),d={textSpan:c.textSpan,kind:g?"writtenReference":"reference",isInString:s.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function JPe(s,c,g){let d=s.getStart(c),h=(g||s).getEnd();return mA(s)&&h-d>2&&(pe.assert(g===void 0),d+=1,h-=1),g?.kind===270&&(h=g.getFullStart()),wA(d,h)}function $An(s){return s.kind===0?s.textSpan:JPe(s.node,s.node.getSourceFile())}function NXt(s){let c=T7(s);return!!c&&o9s(c)||s.kind===90||B3(s)}function edn(s,c){var g;if(!c)return!1;let d=T7(s)||(s.kind===90?s.parent:fne(s)||s.kind===137&&Tc(s.parent)?s.parent.parent:void 0),h=d&&fo(d)?d.left:void 0;return!!(d&&((g=c.declarations)!=null&&g.some(_=>_===d||_===h)))}function o9s(s){if(s.flags&33554432)return!0;switch(s.kind){case 227:case 209:case 264:case 232:case 90:case 267:case 307:case 282:case 274:case 272:case 277:case 265:case 339:case 347:case 292:case 268:case 271:case 275:case 281:case 170:case 305:case 266:case 169:return!0;case 304:return!e9(s.parent);case 263:case 219:case 177:case 175:case 178:case 179:return!!s.body;case 261:case 173:return!!s.initializer||iQ(s.parent);case 174:case 172:case 349:case 342:return!1;default:return pe.failBadSyntaxKind(s)}}var Uz;(s=>{function c(Pr,Pn,pt,on,it,nr={},Fr=new Set(on.map(Kr=>Kr.fileName))){var Kr,Dn;if(Pn=g(Pn,nr),ll(Pn)){let ds=nse.getReferenceAtPosition(Pn,Pr,pt);if(!ds?.file)return;let Mt=pt.getTypeChecker().getMergedSymbol(ds.file.symbol);if(Mt)return W(pt,Mt,!1,on,Fr);let cn=pt.getFileIncludeReasons();return cn?[{definition:{type:5,reference:ds.reference,file:Pn},references:h(ds.file,cn,pt)||E}]:void 0}if(!nr.implementations){let ds=M(Pn,on,it);if(ds)return ds}let hr=pt.getTypeChecker(),En=hr.getSymbolAtLocation(Tc(Pn)&&Pn.parent.name||Pn);if(!En){if(!nr.implementations&&mA(Pn)){if(jVe(Pn)){let ds=pt.getFileIncludeReasons(),Mt=(Dn=(Kr=pt.getResolvedModuleFromModuleSpecifier(Pn))==null?void 0:Kr.resolvedModule)==null?void 0:Dn.resolvedFileName,cn=Mt?pt.getSourceFile(Mt):void 0;if(cn)return[{definition:{type:4,node:Pn},references:h(cn,ds,pt)||E}]}return ba(Pn,on,hr,it)}return}if(En.escapedName==="export=")return W(pt,En.parent,!1,on,Fr);let Ni=S(En,pt,on,it,nr,Fr);if(Ni&&!(En.flags&33554432))return Ni;let Gi=_(Pn,En,hr),nn=Gi&&S(Gi,pt,on,it,nr,Fr),bn=ee(En,Pn,on,Fr,hr,it,nr);return R(pt,Ni,bn,nn)}s.getReferencedSymbolsForNode=c;function g(Pr,Pn){return Pn.use===1?Pr=vrt(Pr):Pn.use===2&&(Pr=WVe(Pr)),Pr}s.getAdjustedNode=g;function d(Pr,Pn,pt,on=new Set(pt.map(it=>it.fileName))){var it,nr;let Fr=(it=Pn.getSourceFile(Pr))==null?void 0:it.symbol;if(Fr)return((nr=W(Pn,Fr,!1,pt,on)[0])==null?void 0:nr.references)||E;let Kr=Pn.getFileIncludeReasons(),Dn=Pn.getSourceFile(Pr);return Dn&&Kr&&h(Dn,Kr,Pn)||E}s.getReferencesForFileName=d;function h(Pr,Pn,pt){let on,it=Pn.get(Pr.path)||E;for(let nr of it)if(K3(nr)){let Fr=pt.getSourceFileByPath(nr.file),Kr=Zde(pt,nr);Fie(Kr)&&(on=Ft(on,{kind:0,fileName:Fr.fileName,textSpan:t9(Kr)}))}return on}function _(Pr,Pn,pt){if(Pr.parent&&sEe(Pr.parent)){let on=pt.getAliasedSymbol(Pn),it=pt.getMergedSymbol(on);if(on!==it)return it}}function S(Pr,Pn,pt,on,it,nr){let Fr=Pr.flags&1536&&Pr.declarations&&de(Pr.declarations,ll);if(!Fr)return;let Kr=Pr.exports.get("export="),Dn=W(Pn,Pr,!!Kr,pt,nr);if(!Kr||!nr.has(Fr.fileName))return Dn;let hr=Pn.getTypeChecker();return Pr=FC(Kr,hr),R(Pn,Dn,ee(Pr,void 0,pt,nr,hr,on,it))}function R(Pr,...Pn){let pt;for(let on of Pn)if(!(!on||!on.length)){if(!pt){pt=on;continue}for(let it of on){if(!it.definition||it.definition.type!==0){pt.push(it);continue}let nr=it.definition.symbol,Fr=Se(pt,Dn=>!!Dn.definition&&Dn.definition.type===0&&Dn.definition.symbol===nr);if(Fr===-1){pt.push(it);continue}let Kr=pt[Fr];pt[Fr]={definition:Kr.definition,references:Kr.references.concat(it.references).sort((Dn,hr)=>{let En=T(Pr,Dn),Ni=T(Pr,hr);if(En!==Ni)return Zt(En,Ni);let Gi=$An(Dn),nn=$An(hr);return Gi.start!==nn.start?Zt(Gi.start,nn.start):Zt(Gi.length,nn.length)})}}}return pt}function T(Pr,Pn){let pt=Pn.kind===0?Pr.getSourceFile(Pn.fileName):Pn.node.getSourceFile();return Pr.getSourceFiles().indexOf(pt)}function W(Pr,Pn,pt,on,it){pe.assert(!!Pn.valueDeclaration);let nr=Xt(OAn(Pr,on,Pn),Kr=>{if(Kr.kind==="import"){let Dn=Kr.literal.parent;if(EE(Dn)){let hr=Ma(Dn.parent,Um);if(pt&&!hr.qualifier)return}return HF(Kr.literal)}else if(Kr.kind==="implicit"){let Dn=Kr.literal.text!==PD&&Sz(Kr.referencingFile,hr=>hr.transformFlags&2?bN(hr)||_U(hr)||P3(hr)?hr:void 0:"skip")||Kr.referencingFile.statements[0]||Kr.referencingFile;return HF(Dn)}else return{kind:0,fileName:Kr.referencingFile.fileName,textSpan:t9(Kr.ref)}});if(Pn.declarations)for(let Kr of Pn.declarations)switch(Kr.kind){case 308:break;case 268:it.has(Kr.getSourceFile().fileName)&&nr.push(HF(Kr.name));break;default:pe.assert(!!(Pn.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Fr=Pn.exports.get("export=");if(Fr?.declarations)for(let Kr of Fr.declarations){let Dn=Kr.getSourceFile();if(it.has(Dn.fileName)){let hr=fo(Kr)&&jo(Kr.left)?Kr.left.expression:Cf(Kr)?pe.checkDefined(qd(Kr,95,Dn)):Il(Kr)||Kr;nr.push(HF(hr))}}return nr.length?[{definition:{type:0,symbol:Pn},references:nr}]:E}function V(Pr){return Pr.kind===148&&xB(Pr.parent)&&Pr.parent.operator===148}function M(Pr,Pn,pt){if(Qde(Pr.kind))return Pr.kind===116&&qT(Pr.parent)||Pr.kind===148&&!V(Pr)?void 0:_r(Pn,Pr.kind,pt,Pr.kind===148?V:void 0);if(uv(Pr.parent)&&Pr.parent.name===Pr)return Pt(Pn,pt);if(Ge(Pr)&&fl(Pr.parent))return[{definition:{type:2,node:Pr},references:[HF(Pr)]}];if(o1e(Pr)){let on=GVe(Pr.parent,Pr.text);return on&&Lt(on.parent,on)}else if(Irt(Pr))return Lt(Pr.parent,Pr);if(Oie(Pr))return Gl(Pr,Pn,pt);if(Pr.kind===108)return Zn(Pr)}function ee(Pr,Pn,pt,on,it,nr,Fr){let Kr=Pn&&Ie(Pr,Pn,it,!Tu(Fr))||Pr,Dn=Pn&&Fr.use!==2?pa(Pn,Kr):7,hr=[],En=new Ne(pt,on,Pn?ge(Pn):0,it,nr,Dn,Fr,hr),Ni=!Tu(Fr)||!Kr.declarations?void 0:de(Kr.declarations,R0);if(Ni)Gr(Ni.name,Kr,Ni,En.createSearch(Pn,Pr,void 0),En,!0,!0);else if(Pn&&Pn.kind===90&&Kr.escapedName==="default"&&Kr.parent)zt(Pn,Kr,En),Te(Pn,Kr,{exportingModuleSymbol:Kr.parent,exportKind:1},En);else{let Gi=En.createSearch(Pn,Kr,void 0,{allSearchSymbols:Pn?hc(Kr,Pn,it,Fr.use===2,!!Fr.providePrefixAndSuffixTextForRename,!!Fr.implementations):[Kr]});re(Kr,En,Gi)}return hr}function re(Pr,Pn,pt){let on=Tt(Pr);if(on)nt(on,on.getSourceFile(),pt,Pn,!(ll(on)&&!k(Pn.sourceFiles,on)));else for(let it of Pn.sourceFiles)Pn.cancellationToken.throwIfCancellationRequested(),$e(it,pt,Pn)}function ge(Pr){switch(Pr.kind){case 177:case 137:return 1;case 80:if(xa(Pr.parent))return pe.assert(Pr.parent.name===Pr),2;default:return 0}}function Ie(Pr,Pn,pt,on){let{parent:it}=Pn;return R0(it)&&on?dt(Pn,Pr,it,pt):X(Pr.declarations,nr=>{if(!nr.parent){if(Pr.flags&33554432)return;pe.fail(`Unexpected symbol at ${pe.formatSyntaxKind(Pn.kind)}: ${pe.formatSymbol(Pr)}`)}return mh(nr.parent)&&aS(nr.parent.parent)?pt.getPropertyOfType(pt.getTypeFromTypeNode(nr.parent.parent),Pr.name):void 0})}let _e;(Pr=>{Pr[Pr.None=0]="None",Pr[Pr.Constructor=1]="Constructor",Pr[Pr.Class=2]="Class"})(_e||(_e={}));function Ee(Pr){if(!(Pr.flags&33555968))return;let Pn=Pr.declarations&&de(Pr.declarations,pt=>!ll(pt)&&!xh(pt));return Pn&&Pn.symbol}class Ne{constructor(Pn,pt,on,it,nr,Fr,Kr,Dn){this.sourceFiles=Pn,this.sourceFilesSet=pt,this.specialSearchKind=on,this.checker=it,this.cancellationToken=nr,this.searchMeaning=Fr,this.options=Kr,this.result=Dn,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=Yie(),this.markSeenReExportRHS=Yie(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(Pn){return this.sourceFilesSet.has(Pn.fileName)}getImportSearches(Pn,pt){return this.importTracker||(this.importTracker=vXt(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(Pn,pt,this.options.use===2)}createSearch(Pn,pt,on,it={}){let{text:nr=l2(nf(W7(pt)||Ee(pt)||pt)),allSearchSymbols:Fr=[pt]}=it,Kr=Ap(nr),Dn=this.options.implementations&&Pn?Cs(Pn,pt,this.checker):void 0;return{symbol:pt,comingFrom:on,text:nr,escapedText:Kr,parents:Dn,allSearchSymbols:Fr,includes:hr=>k(Fr,hr)}}referenceAdder(Pn){let pt=kg(Pn),on=this.symbolIdToReferences[pt];return on||(on=this.symbolIdToReferences[pt]=[],this.result.push({definition:{type:0,symbol:Pn},references:on})),(it,nr)=>on.push(HF(it,nr))}addStringOrCommentReference(Pn,pt){this.result.push({definition:void 0,references:[{kind:0,fileName:Pn,textSpan:pt}]})}markSearchedSymbols(Pn,pt){let on=rd(Pn),it=this.sourceFileToSeenSymbols[on]||(this.sourceFileToSeenSymbols[on]=new Set),nr=!1;for(let Fr of pt)nr=Ar(it,kg(Fr))||nr;return nr}}function Te(Pr,Pn,pt,on){let{importSearches:it,singleReferences:nr,indirectUsers:Fr}=on.getImportSearches(Pn,pt);if(nr.length){let Kr=on.referenceAdder(Pn);for(let Dn of nr)We(Dn,on)&&Kr(Dn)}for(let[Kr,Dn]of it)Gt(Kr.getSourceFile(),on.createSearch(Kr,Dn,1),on);if(Fr.length){let Kr;switch(pt.exportKind){case 0:Kr=on.createSearch(Pr,Pn,1);break;case 1:Kr=on.options.use===2?void 0:on.createSearch(Pr,Pn,1,{text:"default"});break;case 2:break}if(Kr)for(let Dn of Fr)$e(Dn,Kr,on)}}function Ze(Pr,Pn,pt,on,it,nr,Fr,Kr){let Dn=vXt(Pr,new Set(Pr.map(Gi=>Gi.fileName)),Pn,pt),{importSearches:hr,indirectUsers:En,singleReferences:Ni}=Dn(on,{exportKind:Fr?1:0,exportingModuleSymbol:it},!1);for(let[Gi]of hr)Kr(Gi);for(let Gi of Ni)Ir(Gi)&&Um(Gi.parent)&&Kr(Gi);for(let Gi of En)for(let nn of _t(Gi,Fr?"default":nr)){let bn=Pn.getSymbolAtLocation(nn),ds=jt(bn?.declarations,Mt=>!!Gs(Mt,Cf));Ir(nn)&&!eS(nn.parent)&&(bn===on||ds)&&Kr(nn)}}s.eachExportReference=Ze;function We(Pr,Pn){return Dt(Pr,Pn)?Pn.options.use!==2?!0:!Ir(Pr)&&!eS(Pr.parent)?!1:!(eS(Pr.parent)&&lv(Pr)):!1}function Ue(Pr,Pn){if(Pr.declarations)for(let pt of Pr.declarations){let on=pt.getSourceFile();Gt(on,Pn.createSearch(pt,Pr,0),Pn,Pn.includesSourceFile(on))}}function $e(Pr,Pn,pt){qnt(Pr).get(Pn.escapedText)!==void 0&&Gt(Pr,Pn,pt)}function Ye(Pr,Pn){return e9(Pr.parent.parent)?Pn.getPropertySymbolOfDestructuringAssignment(Pr):void 0}function Tt(Pr){let{declarations:Pn,flags:pt,parent:on,valueDeclaration:it}=Pr;if(it&&(it.kind===219||it.kind===232))return it;if(!Pn)return;if(pt&8196){let Kr=de(Pn,Dn=>Gb(Dn,2)||pC(Dn));return Kr?ML(Kr,264):void 0}if(Pn.some(p1e))return;let nr=on&&!(Pr.flags&262144);if(nr&&!(WD(on)&&!on.globalExports))return;let Fr;for(let Kr of Pn){let Dn=kU(Kr);if(Fr&&Fr!==Dn||!Dn||Dn.kind===308&&!vl(Dn))return;if(Fr=Dn,UA(Fr)){let hr;for(;hr=vye(Fr);)Fr=hr}}return nr?Fr.getSourceFile():Fr}function ot(Pr,Pn,pt,on=pt){return Qe(Pr,Pn,pt,()=>!0,on)||!1}s.isSymbolReferencedInFile=ot;function Qe(Pr,Pn,pt,on,it=pt){let nr=Ve(Pr.parent,Pr.parent.parent)?ma(Pn.getSymbolsOfParameterPropertyDeclaration(Pr.parent,Pr.text)):Pn.getSymbolAtLocation(Pr);if(nr)for(let Fr of _t(pt,nr.name,it)){if(!Ir(Fr)||Fr===Pr||Fr.escapedText!==Pr.escapedText)continue;let Kr=Pn.getSymbolAtLocation(Fr);if(Kr===nr||Pn.getShorthandAssignmentValueSymbol(Fr.parent)===nr||R0(Fr.parent)&&dt(Fr,Kr,Fr.parent,Pn)===nr){let Dn=on(Fr);if(Dn)return Dn}}}s.eachSymbolReferenceInFile=Qe;function mt(Pr,Pn){return Me(_t(Pn,Pr),it=>!!T7(it)).reduce((it,nr)=>{let Fr=on(nr);return!jt(it.declarationNames)||Fr===it.depth?(it.declarationNames.push(nr),it.depth=Fr):FrEn===it)&&on(Fr,Dn))return!0}return!1}s.someSignatureUsage=ht;function _t(Pr,Pn,pt=Pr){return Xt(Rt(Pr,Pn,pt),on=>{let it=Lb(Pr,on);return it===Pr?void 0:it})}function Rt(Pr,Pn,pt=Pr){let on=[];if(!Pn||!Pn.length)return on;let it=Pr.text,nr=it.length,Fr=Pn.length,Kr=it.indexOf(Pn,pt.pos);for(;Kr>=0&&!(Kr>pt.end);){let Dn=Kr+Fr;(Kr===0||!s1(it.charCodeAt(Kr-1),99))&&(Dn===nr||!s1(it.charCodeAt(Dn),99))&&on.push(Kr),Kr=it.indexOf(Pn,Kr+Fr+1)}return on}function Lt(Pr,Pn){let pt=Pr.getSourceFile(),on=Pn.text,it=Xt(_t(pt,on,Pr),nr=>nr===Pn||o1e(nr)&&GVe(nr,on)===Pn?HF(nr):void 0);return[{definition:{type:1,node:Pn},references:it}]}function Ke(Pr,Pn){switch(Pr.kind){case 81:if(O3(Pr.parent))return!0;case 80:return Pr.text.length===Pn.length;case 15:case 11:{let pt=Pr;return pt.text.length===Pn.length&&(FVe(pt)||_rt(Pr)||X5t(Pr)||Zl(Pr.parent)&&f3(Pr.parent)&&Pr.parent.arguments[1]===Pr||eS(Pr.parent))}case 9:return FVe(Pr)&&Pr.text.length===Pn.length;case 90:return Pn.length===7;default:return!1}}function Pt(Pr,Pn){let pt=er(Pr,on=>(Pn.throwIfCancellationRequested(),Xt(_t(on,"meta",on),it=>{let nr=it.parent;if(uv(nr))return HF(nr)})));return pt.length?[{definition:{type:2,node:pt[0].node},references:pt}]:void 0}function _r(Pr,Pn,pt,on){let it=er(Pr,nr=>(pt.throwIfCancellationRequested(),Xt(_t(nr,Vi(Pn),nr),Fr=>{if(Fr.kind===Pn&&(!on||on(Fr)))return HF(Fr)})));return it.length?[{definition:{type:2,node:it[0].node},references:it}]:void 0}function Gt(Pr,Pn,pt,on=!0){return pt.cancellationToken.throwIfCancellationRequested(),nt(Pr,Pr,Pn,pt,on)}function nt(Pr,Pn,pt,on,it){if(on.markSearchedSymbols(Pn,pt.allSearchSymbols))for(let nr of Rt(Pn,pt.text,Pr))tr(Pn,nr,pt,on,it)}function Dt(Pr,Pn){return!!(DU(Pr)&Pn.searchMeaning)}function tr(Pr,Pn,pt,on,it){let nr=Lb(Pr,Pn);if(!Ke(nr,pt.text)){!on.options.implementations&&(on.options.findInStrings&&Zz(Pr,Pn)||on.options.findInComments&&sMt(Pr,Pn))&&on.addStringOrCommentReference(Pr.fileName,zd(Pn,pt.text.length));return}if(!Dt(nr,on))return;let Fr=on.checker.getSymbolAtLocation(nr);if(!Fr)return;let Kr=nr.parent;if(uy(Kr)&&Kr.propertyName===nr)return;if(R0(Kr)){pe.assert(nr.kind===80||nr.kind===11),Gr(nr,Fr,Kr,pt,on,it);return}if(dY(Kr)&&Kr.isNameFirst&&Kr.typeExpression&&yU(Kr.typeExpression.type)&&Kr.typeExpression.type.jsDocPropertyTags&&B(Kr.typeExpression.type.jsDocPropertyTags)){ur(Kr.typeExpression.type.jsDocPropertyTags,nr,pt,on);return}let Dn=lo(pt,Fr,nr,on);if(!Dn){ir(Fr,pt,on);return}switch(on.specialSearchKind){case 0:it&&zt(nr,Dn,on);break;case 1:Ht(nr,Pr,pt,on);break;case 2:Br(nr,pt,on);break;default:pe.assertNever(on.specialSearchKind)}wo(nr)&&hg(nr.parent)&&CP(nr.parent.parent.parent)&&(Fr=nr.parent.symbol,!Fr)||st(nr,Fr,pt,on)}function ur(Pr,Pn,pt,on){let it=on.referenceAdder(pt.symbol);zt(Pn,pt.symbol,on),F(Pr,nr=>{zi(nr.name)&&it(nr.name.left)})}function Gr(Pr,Pn,pt,on,it,nr,Fr){pe.assert(!Fr||!!it.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:Kr,propertyName:Dn,name:hr}=pt,En=Kr.parent,Ni=dt(Pr,Pn,pt,it.checker);if(!Fr&&!on.includes(Ni))return;if(Dn?Pr===Dn?(En.moduleSpecifier||Gi(),nr&&it.options.use!==2&&it.markSeenReExportRHS(hr)&&zt(hr,pe.checkDefined(pt.symbol),it)):it.markSeenReExportRHS(Pr)&&Gi():it.options.use===2&&lv(hr)||Gi(),!Tu(it.options)||Fr){let bn=lv(Pr)||lv(pt.name)?1:0,ds=pe.checkDefined(pt.symbol),Mt=BXt(ds,bn,it.checker);Mt&&Te(Pr,ds,Mt,it)}if(on.comingFrom!==1&&En.moduleSpecifier&&!Dn&&!Tu(it.options)){let nn=it.checker.getExportSpecifierLocalTargetSymbol(pt);nn&&Ue(nn,it)}function Gi(){nr&&zt(Pr,Ni,it)}}function dt(Pr,Pn,pt,on){return pr(Pr,pt)&&on.getExportSpecifierLocalTargetSymbol(pt)||Pn}function pr(Pr,Pn){let{parent:pt,propertyName:on,name:it}=Pn;return pe.assert(on===Pr||it===Pr),on?on===Pr:!pt.parent.moduleSpecifier}function st(Pr,Pn,pt,on){let it=YAn(Pr,Pn,on.checker,pt.comingFrom===1);if(!it)return;let{symbol:nr}=it;it.kind===0?Tu(on.options)||Ue(nr,on):Te(Pr,nr,it.exportInfo,on)}function ir({flags:Pr,valueDeclaration:Pn},pt,on){let it=on.checker.getShorthandAssignmentValueSymbol(Pn),nr=Pn&&Il(Pn);!(Pr&33554432)&&nr&&pt.includes(it)&&zt(nr,it,on)}function zt(Pr,Pn,pt){let{kind:on,symbol:it}="kind"in Pn?Pn:{kind:void 0,symbol:Pn};if(pt.options.use===2&&Pr.kind===90)return;let nr=pt.referenceAdder(it);pt.options.implementations?si(Pr,nr,pt):nr(Pr,on)}function Ht(Pr,Pn,pt,on){Ode(Pr)&&zt(Pr,pt.symbol,on);let it=()=>on.referenceAdder(pt.symbol);if(xa(Pr.parent))pe.assert(Pr.kind===90||Pr.parent.name===Pr),mn(pt.symbol,Pn,it());else{let nr=Tg(Pr);nr&&(Zi(nr,it()),An(nr,on))}}function Br(Pr,Pn,pt){zt(Pr,Pn.symbol,pt);let on=Pr.parent;if(pt.options.use===2||!xa(on))return;pe.assert(on.name===Pr);let it=pt.referenceAdder(Pn.symbol);for(let nr of on.members)NL(nr)&&cg(nr)&&nr.body&&nr.body.forEachChild(function Fr(Kr){Kr.kind===110?it(Kr):!bu(Kr)&&!xa(Kr)&&Kr.forEachChild(Fr)})}function mn(Pr,Pn,pt){let on=jn(Pr);if(on&&on.declarations)for(let it of on.declarations){let nr=qd(it,137,Pn);pe.assert(it.kind===177&&!!nr),pt(nr)}Pr.exports&&Pr.exports.forEach(it=>{let nr=it.valueDeclaration;if(nr&&nr.kind===175){let Fr=nr.body;Fr&&Qu(Fr,110,Kr=>{Ode(Kr)&&pt(Kr)})}})}function jn(Pr){return Pr.members&&Pr.members.get("__constructor")}function Zi(Pr,Pn){let pt=jn(Pr.symbol);if(pt&&pt.declarations)for(let on of pt.declarations){pe.assert(on.kind===177);let it=on.body;it&&Qu(it,108,nr=>{drt(nr)&&Pn(nr)})}}function Ns(Pr){return!!jn(Pr.symbol)}function An(Pr,Pn){if(Ns(Pr))return;let pt=Pr.symbol,on=Pn.createSearch(void 0,pt,void 0);re(pt,Pn,on)}function si(Pr,Pn,pt){if(HT(Pr)&&Oa(Pr.parent)){Pn(Pr);return}if(Pr.kind!==80)return;Pr.parent.kind===305&&tl(Pr,pt.checker,Pn);let on=ks(Pr);if(on){Pn(on);return}let it=ji(Pr,Kr=>!zi(Kr.parent)&&!uc(Kr.parent)&&!Bx(Kr.parent)),nr=it.parent;if(If(nr)&&nr.type===it&&pt.markSeenContainingTypeReference(nr))if(WT(nr))Fr(nr.initializer);else if(bu(nr)&&nr.body){let Kr=nr.body;Kr.kind===242?yF(Kr,Dn=>{Dn.expression&&Fr(Dn.expression)}):Fr(Kr)}else(Ed(nr)||Qg(nr))&&Fr(nr.expression);function Fr(Kr){Ic(Kr)&&Pn(Kr)}}function ks(Pr){return Ir(Pr)||jo(Pr)?ks(Pr.parent):l_(Pr)?Gs(Pr.parent.parent,Hp(xa,g_)):void 0}function Ic(Pr){switch(Pr.kind){case 218:return Ic(Pr.expression);case 220:case 219:case 211:case 232:case 210:return!0;default:return!1}}function su(Pr,Pn,pt,on){if(Pr===Pn)return!0;let it=kg(Pr)+","+kg(Pn),nr=pt.get(it);if(nr!==void 0)return nr;pt.set(it,!1);let Fr=!!Pr.declarations&&Pr.declarations.some(Kr=>R7(Kr).some(Dn=>{let hr=on.getTypeAtLocation(Dn);return!!hr&&!!hr.symbol&&su(hr.symbol,Pn,pt,on)}));return pt.set(it,Fr),Fr}function Zn(Pr){let Pn=C7(Pr,!1);if(!Pn)return;let pt=256;switch(Pn.kind){case 173:case 172:case 175:case 174:case 177:case 178:case 179:pt&=Nx(Pn),Pn=Pn.parent;break;default:return}let on=Pn.getSourceFile(),it=Xt(_t(on,"super",Pn),nr=>{if(nr.kind!==108)return;let Fr=C7(nr,!1);return Fr&&cg(Fr)===!!pt&&Fr.parent.symbol===Pn.symbol?HF(nr):void 0});return[{definition:{type:0,symbol:Pn.symbol},references:it}]}function ya(Pr){return Pr.kind===80&&Pr.parent.kind===170&&Pr.parent.name===Pr}function Gl(Pr,Pn,pt){let on=r0(Pr,!1,!1),it=256;switch(on.kind){case 175:case 174:if(a2(on)){it&=Nx(on),on=on.parent;break}case 173:case 172:case 177:case 178:case 179:it&=Nx(on),on=on.parent;break;case 308:if(xm(on)||ya(Pr))return;case 263:case 219:break;default:return}let nr=er(on.kind===308?Pn:[on.getSourceFile()],Kr=>(pt.throwIfCancellationRequested(),_t(Kr,"this",ll(on)?Kr:on).filter(Dn=>{if(!Oie(Dn))return!1;let hr=r0(Dn,!1,!1);if(!mE(hr))return!1;switch(on.kind){case 219:case 263:return on.symbol===hr.symbol;case 175:case 174:return a2(on)&&on.symbol===hr.symbol;case 232:case 264:case 211:return hr.parent&&mE(hr.parent)&&on.symbol===hr.parent.symbol&&cg(hr)===!!it;case 308:return hr.kind===308&&!xm(hr)&&!ya(Dn)}}))).map(Kr=>HF(Kr));return[{definition:{type:3,node:X(nr,Kr=>Si(Kr.node.parent)?Kr.node:void 0)||Pr},references:nr}]}function ba(Pr,Pn,pt,on){let it=PVe(Pr,pt),nr=er(Pn,Fr=>(on.throwIfCancellationRequested(),Xt(_t(Fr,Pr.text),Kr=>{if(mA(Kr)&&Kr.text===Pr.text)if(it){let Dn=PVe(Kr,pt);if(it!==pt.getStringType()&&(it===Dn||Wo(Kr,pt)))return HF(Kr,2)}else return GP(Kr)&&!S3(Kr,Fr)?void 0:HF(Kr,2)})));return[{definition:{type:4,node:Pr},references:nr}]}function Wo(Pr,Pn){if(ss(Pr.parent))return Pn.getPropertyOfType(Pn.getTypeAtLocation(Pr.parent.parent),Pr.text)}function hc(Pr,Pn,pt,on,it,nr){let Fr=[];return yr(Pr,Pn,pt,on,!(on&&it),(Kr,Dn,hr)=>{hr&&Oi(Pr)!==Oi(hr)&&(hr=void 0),Fr.push(hr||Dn||Kr)},()=>!nr),Fr}function yr(Pr,Pn,pt,on,it,nr,Fr){let Kr=k1e(Pn);if(Kr){let bn=pt.getShorthandAssignmentValueSymbol(Pn.parent);if(bn&&on)return nr(bn,void 0,void 0,3);let ds=pt.getContextualType(Kr.parent),Mt=ds&&X(xPe(Kr,pt,ds,!0),fr=>Gi(fr,4));if(Mt)return Mt;let cn=Ye(Pn,pt),Bt=cn&&nr(cn,void 0,void 0,4);if(Bt)return Bt;let xe=bn&&nr(bn,void 0,void 0,3);if(xe)return xe}let Dn=_(Pn,Pr,pt);if(Dn){let bn=nr(Dn,void 0,void 0,1);if(bn)return bn}let hr=Gi(Pr);if(hr)return hr;if(Pr.valueDeclaration&&Ve(Pr.valueDeclaration,Pr.valueDeclaration.parent)){let bn=pt.getSymbolsOfParameterPropertyDeclaration(Ma(Pr.valueDeclaration,Si),Pr.name);return pe.assert(bn.length===2&&!!(bn[0].flags&1)&&!!(bn[1].flags&4)),Gi(Pr.flags&1?bn[1]:bn[0])}let En=Cp(Pr,282);if(!on||En&&!En.propertyName){let bn=En&&pt.getExportSpecifierLocalTargetSymbol(En);if(bn){let ds=nr(bn,void 0,void 0,1);if(ds)return ds}}if(!on){let bn;return it?bn=p1e(Pn.parent)?zVe(pt,Pn.parent):void 0:bn=nn(Pr,pt),bn&&Gi(bn,4)}if(pe.assert(on),it){let bn=nn(Pr,pt);return bn&&Gi(bn,4)}function Gi(bn,ds){return X(pt.getRootSymbols(bn),Mt=>nr(bn,Mt,void 0,ds)||(Mt.parent&&Mt.parent.flags&96&&Fr(Mt)?hn(Mt.parent,Mt.name,pt,cn=>nr(bn,Mt,cn,ds)):void 0))}function nn(bn,ds){let Mt=Cp(bn,209);if(Mt&&p1e(Mt))return zVe(ds,Mt)}}function hn(Pr,Pn,pt,on){let it=new Set;return nr(Pr);function nr(Fr){if(!(!(Fr.flags&96)||!Zy(it,Fr)))return X(Fr.declarations,Kr=>X(R7(Kr),Dn=>{let hr=pt.getTypeAtLocation(Dn),En=hr.symbol&&pt.getPropertyOfType(hr,Pn);return En&&X(pt.getRootSymbols(En),on)||hr.symbol&&nr(hr.symbol)}))}}function Oi(Pr){return Pr.valueDeclaration?!!(o_(Pr.valueDeclaration)&256):!1}function lo(Pr,Pn,pt,on){let{checker:it}=on;return yr(Pn,pt,it,!1,on.options.use!==2||!!on.options.providePrefixAndSuffixTextForRename,(nr,Fr,Kr,Dn)=>(Kr&&Oi(Pn)!==Oi(Kr)&&(Kr=void 0),Pr.includes(Kr||Fr||nr)?{symbol:Fr&&!(iI(nr)&6)?Fr:nr,kind:Dn}:void 0),nr=>!(Pr.parents&&!Pr.parents.some(Fr=>su(nr.parent,Fr,on.inheritsFromCache,it))))}function pa(Pr,Pn){let pt=DU(Pr),{declarations:on}=Pn;if(on){let it;do{it=pt;for(let nr of on){let Fr=DVe(nr);Fr&pt&&(pt|=Fr)}}while(pt!==it)}return pt}s.getIntersectingMeaningFromDeclarations=pa;function Oa(Pr){return Pr.flags&33554432?!(g_(Pr)||FB(Pr)):I7(Pr)?WT(Pr):kd(Pr)?!!Pr.body:xa(Pr)||a3(Pr)}function tl(Pr,Pn,pt){let on=Pn.getSymbolAtLocation(Pr),it=Pn.getShorthandAssignmentValueSymbol(on.valueDeclaration);if(it)for(let nr of it.getDeclarations())DVe(nr)&1&&pt(nr)}s.getReferenceEntriesForShorthandPropertyAssignment=tl;function Qu(Pr,Pn,pt){Lu(Pr,on=>{on.kind===Pn&&pt(on),Qu(on,Pn,pt)})}function Tg(Pr){return $ye(xVe(Pr).parent)}function Cs(Pr,Pn,pt){let on=Wie(Pr)?Pr.parent:void 0,it=on&&pt.getTypeAtLocation(on.expression),nr=Xt(it&&(it.isUnionOrIntersection()?it.types:it.symbol===Pn.parent?void 0:[it]),Fr=>Fr.symbol&&Fr.symbol.flags&96?Fr.symbol:void 0);return nr.length===0?void 0:nr}function Tu(Pr){return Pr.use===2&&Pr.providePrefixAndSuffixTextForRename}})(Uz||(Uz={}));var nse={};o(nse,{createDefinitionInfo:()=>M1e,getDefinitionAndBoundSpan:()=>d9s,getDefinitionAtPosition:()=>tdn,getReferenceAtPosition:()=>ndn,getTypeDefinitionAtPosition:()=>g9s});function tdn(s,c,g,d,h){var _;let S=ndn(c,g,s),R=S&&[m9s(S.reference.fileName,S.fileName,S.unverified)]||E;if(S?.file)return R;let T=Lb(c,g);if(T===c)return;let{parent:W}=T,V=s.getTypeChecker();if(T.kind===164||Ir(T)&&$Le(W)&&W.tagName===T){let Ee=c9s(V,T);if(Ee!==void 0||T.kind!==164)return Ee||E}if(o1e(T)){let Ee=GVe(T.parent,T.text);return Ee?[DXt(V,Ee,"label",T.text,void 0)]:void 0}switch(T.kind){case 90:if(!cde(T.parent))break;case 84:let Ee=ji(T.parent,ode);if(Ee)return[h9s(Ee,c)];break}let M;switch(T.kind){case 107:case 135:case 127:M=kd;let Ee=ji(T,M);return Ee?[xXt(V,Ee)]:void 0}if(Ge(T)&&fl(T.parent)){let Ee=T.parent.parent,{symbol:Ne,failedAliasResolution:Te}=Hit(Ee,V,h),Ze=Me(Ee.members,fl),We=Ne?V.symbolToString(Ne,Ee):"",Ue=T.getSourceFile();return At(Ze,$e=>{let{pos:Ye}=Av($e);return Ye=Yu(Ue.text,Ye),DXt(V,$e,"constructor","static {}",We,!1,Te,{start:Ye,length:6})})}let{symbol:ee,failedAliasResolution:re}=Hit(T,V,h),ge=T;if(d&&re){let Ee=F([T,...ee?.declarations||E],Te=>ji(Te,Rge)),Ne=Ee&&ZY(Ee);Ne&&({symbol:ee,failedAliasResolution:re}=Hit(Ne,V,h),ge=Ne)}if(!ee&&jVe(ge)){let Ee=(_=s.getResolvedModuleFromModuleSpecifier(ge,c))==null?void 0:_.resolvedModule;if(Ee)return[{name:ge.text,fileName:Ee.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:zd(0,0),failedAliasResolution:re,isAmbient:PC(Ee.resolvedFileName),unverified:ge!==T}]}if(Ig(T)&&(PI(W)||rh(W))&&(ee=W.symbol),!ee)return Nn(R,p9s(T,V));if(d&&ue(ee.declarations,Ee=>Ee.getSourceFile().fileName===c.fileName))return;let Ie=_9s(V,T);if(Ie&&!(eI(T.parent)&&y9s(Ie))){let Ee=xXt(V,Ie,re),Ne=Ze=>Ze!==Ie;if(V.getRootSymbols(ee).some(Ze=>a9s(Ze,Ie))){if(!Tc(Ie))return[Ee];Ne=Ze=>Ze!==Ie&&(pm(Ze)||vd(Ze))}let Te=gpe(V,ee,T,re,Ne)||E;return T.kind===108?[Ee,...Te]:[...Te,Ee]}if(T.parent.kind===305){let Ee=V.getShorthandAssignmentValueSymbol(ee.valueDeclaration),Ne=Ee?.declarations?Ee.declarations.map(Te=>M1e(Te,V,Ee,T,!1,re)):E;return Nn(Ne,rdn(V,T))}if(VI(T)&&hg(W)&&Km(W.parent)&&T===(W.propertyName||W.name)){let Ee=d1e(T),Ne=V.getTypeAtLocation(W.parent);return Ee===void 0?E:er(Ne.isUnion()?Ne.types:[Ne],Te=>{let Ze=Te.getProperty(Ee);return Ze&&gpe(V,Ze,T)})}let _e=rdn(V,T);return Nn(R,_e.length?_e:gpe(V,ee,T,re))}function a9s(s,c){var g;return s===c.symbol||s===c.symbol.parent||Jm(c.parent)||!hF(c.parent)&&s===((g=Gs(c.parent,mE))==null?void 0:g.symbol)}function rdn(s,c){let g=k1e(c);if(g){let d=g&&s.getContextualType(g.parent);if(d)return er(xPe(g,s,d,!1),h=>gpe(s,h,c))}return E}function c9s(s,c){let g=ji(c,PI);if(!(g&&g.name))return;let d=ji(g,xa);if(!d)return;let h=BB(d);if(!h)return;let _=QA(h.expression),S=vd(_)?_.symbol:s.getSymbolAtLocation(_);if(!S)return;let R=zh(g)?s.getTypeOfSymbol(S):s.getDeclaredTypeOfSymbol(S),T;if(Un(g.name)){let W=s.getSymbolAtLocation(g.name);if(!W)return;k7(W)?T=de(s.getPropertiesOfType(R),V=>V.escapedName===W.escapedName):T=s.getPropertyOfType(R,Bc(W.escapedName))}else T=s.getPropertyOfType(R,Bc(hP(g.name)));if(T)return gpe(s,T,c)}function ndn(s,c,g){var d,h;let _=H1e(s.referencedFiles,c);if(_){let T=g.getSourceFileFromReference(s,_);return T&&{reference:_,fileName:T.fileName,file:T,unverified:!1}}let S=H1e(s.typeReferenceDirectives,c);if(S){let T=(d=g.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S,s))==null?void 0:d.resolvedTypeReferenceDirective,W=T&&g.getSourceFile(T.resolvedFileName);return W&&{reference:S,fileName:W.fileName,file:W,unverified:!1}}let R=H1e(s.libReferenceDirectives,c);if(R){let T=g.getLibFileFromReference(R);return T&&{reference:R,fileName:T.fileName,file:T,unverified:!1}}if(s.imports.length||s.moduleAugmentations.length){let T=Hie(s,c),W;if(jVe(T)&&Xr(T.text)&&(W=g.getResolvedModuleFromModuleSpecifier(T,s))){let V=(h=W.resolvedModule)==null?void 0:h.resolvedFileName,M=V||AE(Mo(s.fileName),T.text);return{file:g.getSourceFile(M),fileName:M,reference:{pos:T.getStart(),end:T.getEnd(),fileName:T.text},unverified:!V}}}}var idn=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function l9s(s,c){let g=c.symbol.name;if(!idn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.target.symbol}function sdn(s,c){if(!c.aliasSymbol)return!1;let g=c.aliasSymbol.name;if(!idn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function u9s(s,c,g,d){var h,_;if(la(c)&4&&l9s(s,c))return O1e(s.getTypeArguments(c)[0],s,g,d);if(sdn(s,c)&&c.aliasTypeArguments)return O1e(c.aliasTypeArguments[0],s,g,d);if(la(c)&32&&c.target&&sdn(s,c.target)){let S=(_=(h=c.aliasSymbol)==null?void 0:h.declarations)==null?void 0:_[0];if(S&&FB(S)&&nh(S.type)&&S.type.typeArguments)return O1e(s.getTypeAtLocation(S.type.typeArguments[0]),s,g,d)}return[]}function g9s(s,c,g){let d=Lb(c,g);if(d===c)return;if(uv(d.parent)&&d.parent.name===d)return O1e(s.getTypeAtLocation(d.parent),s,d.parent,!1);let{symbol:h,failedAliasResolution:_}=Hit(d,s,!1);if(Ig(d)&&(PI(d.parent)||rh(d.parent))&&(h=d.parent.symbol,_=!1),!h)return;let S=s.getTypeOfSymbolAtLocation(h,d),R=A9s(h,S,s),T=R&&O1e(R,s,d,_),[W,V]=T&&T.length!==0?[R,T]:[S,O1e(S,s,d,_)];return V.length?[...u9s(s,W,d,_),...V]:!(h.flags&111551)&&h.flags&788968?gpe(s,FC(h,s),d,_):void 0}function O1e(s,c,g,d){return er(s.isUnion()&&!(s.flags&32)?s.types:[s],h=>h.symbol&&gpe(c,h.symbol,g,d))}function A9s(s,c,g){if(c.symbol===s||s.valueDeclaration&&c.symbol&&nc(s.valueDeclaration)&&s.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return g.getReturnTypeOfSignature(ma(d))}}function d9s(s,c,g){let d=tdn(s,c,g);if(!d||d.length===0)return;let h=H1e(c.referencedFiles,g)||H1e(c.typeReferenceDirectives,g)||H1e(c.libReferenceDirectives,g);if(h)return{definitions:d,textSpan:t9(h)};let _=Lb(c,g),S=zd(_.getStart(),_.getWidth());return{definitions:d,textSpan:S}}function p9s(s,c){return Xt(c.getIndexInfosAtLocation(s),g=>g.declaration&&xXt(c,g.declaration))}function Hit(s,c,g){let d=c.getSymbolAtLocation(s),h=!1;if(d?.declarations&&d.flags&2097152&&!g&&f9s(s,d.declarations[0])){let _=c.getAliasedSymbol(d);if(_.declarations)return{symbol:_};h=!0}return{symbol:d,failedAliasResolution:h}}function f9s(s,c){return s.kind!==80&&(s.kind!==11||!eS(s.parent))?!1:s.parent===c?!0:c.kind!==275}function I9s(s){if(!b7(s))return!1;let c=ji(s,g=>Jm(g)?!0:b7(g)?!1:"quit");return!!c&&nI(c)===5}function gpe(s,c,g,d,h){let _=h!==void 0?Me(c.declarations,h):c.declarations,S=!h&&(W()||V());if(S)return S;let R=Me(_,ee=>!I9s(ee)),T=jt(R)?R:_;return At(T,ee=>M1e(ee,s,c,g,!1,d));function W(){if(c.flags&32&&!(c.flags&19)&&(Ode(g)||g.kind===137)){let ee=de(_,xa);return ee&&M(ee.members,!0)}}function V(){return prt(g)||yrt(g)?M(_,!1):void 0}function M(ee,re){if(!ee)return;let ge=ee.filter(re?Tc:bu),Ie=ge.filter(_e=>!!_e.body);return ge.length?Ie.length!==0?Ie.map(_e=>M1e(_e,s,c,g)):[M1e(Ei(ge),s,c,g,!1,d)]:void 0}}function M1e(s,c,g,d,h,_){let S=c.symbolToString(g),R=i9.getSymbolKind(c,g,d),T=g.parent?c.symbolToString(g.parent,d):"";return DXt(c,s,R,S,T,h,_)}function DXt(s,c,g,d,h,_,S,R){let T=c.getSourceFile();if(!R){let W=Il(c)||c;R=Oy(W,T)}return{fileName:T.fileName,textSpan:R,kind:g,name:d,containerKind:void 0,containerName:h,...Kp.toContextSpan(R,T,Kp.getContextNode(c)),isLocal:!kXt(s,c),isAmbient:!!(c.flags&33554432),unverified:_,failedAliasResolution:S}}function h9s(s,c){let g=Kp.getContextNode(s),d=Oy(TXt(g)?g.start:g,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Kp.toContextSpan(d,c,g),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function kXt(s,c){if(s.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if(WT(c.parent)&&c.parent.initializer===c)return kXt(s,c.parent);switch(c.kind){case 173:case 178:case 179:case 175:if(Gb(c,2))return!1;case 177:case 304:case 305:case 211:case 232:case 220:case 219:return kXt(s,c.parent);default:return!1}}function xXt(s,c,g){return M1e(c,s,c.symbol,c,!1,g)}function H1e(s,c){return de(s,g=>sl(g,c))}function m9s(s,c,g){return{fileName:c,textSpan:wA(0,0),kind:"script",name:s,containerName:void 0,containerKind:void 0,unverified:g}}function C9s(s){let c=ji(s,d=>!Wie(d)),g=c?.parent;return g&&hF(g)&&Yge(g)===c?g:void 0}function _9s(s,c){let g=C9s(c),d=g&&s.getResolvedSignature(g);return Gs(d&&d.declaration,h=>bu(h)&&!x_(h))}function y9s(s){switch(s.kind){case 177:case 186:case 180:case 181:return!0;default:return!1}}var Yit={};o(Yit,{provideInlayHints:()=>v9s});var b9s=s=>new RegExp(`^\\s?/\\*\\*?\\s?${s}\\s?\\*\\/\\s?$`);function E9s(s){return s.includeInlayParameterNameHints==="literals"||s.includeInlayParameterNameHints==="all"}function S9s(s){return s.includeInlayParameterNameHints==="literals"}function GXt(s){return s.interactiveInlayHints===!0}function v9s(s){let{file:c,program:g,span:d,cancellationToken:h,preferences:_}=s,S=c.text,R=g.getCompilerOptions(),T=_1(c,_),W=g.getTypeChecker(),V=[];return M(c),V;function M(Gt){if(!(!Gt||Gt.getFullWidth()===0)){switch(Gt.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 175:case 220:h.throwIfCancellationRequested()}if(q2(d,Gt.pos,Gt.getFullWidth())&&!(uc(Gt)&&!l_(Gt)))return _.includeInlayVariableTypeHints&&nc(Gt)||_.includeInlayPropertyDeclarationTypeHints&&pi(Gt)?Ne(Gt):_.includeInlayEnumMemberValueHints&&LF(Gt)?_e(Gt):E9s(_)&&(Zl(Gt)||f2(Gt))?Te(Gt):(_.includeInlayFunctionParameterTypeHints&&kd(Gt)&&OAe(Gt)&&Tt(Gt),_.includeInlayFunctionLikeReturnTypeHints&&ee(Gt)&&$e(Gt)),Lu(Gt,M)}}function ee(Gt){return lA(Gt)||UA(Gt)||ih(Gt)||uu(Gt)||Bg(Gt)}function re(Gt,nt,Dt,tr){let ur=`${tr?"...":""}${Gt}`,Gr;GXt(_)?(Gr=[_r(ur,nt),{text:":"}],ur=""):ur+=":",V.push({text:ur,position:Dt,kind:"Parameter",whitespaceAfter:!0,displayParts:Gr})}function ge(Gt,nt){V.push({text:typeof Gt=="string"?`: ${Gt}`:"",displayParts:typeof Gt=="string"?void 0:[{text:": "},...Gt],position:nt,kind:"Type",whitespaceBefore:!0})}function Ie(Gt,nt){V.push({text:`= ${Gt}`,position:nt,kind:"Enum",whitespaceBefore:!0})}function _e(Gt){if(Gt.initializer)return;let nt=W.getConstantValue(Gt);nt!==void 0&&Ie(nt.toString(),Gt.end)}function Ee(Gt){return Gt.symbol&&Gt.symbol.flags&1536}function Ne(Gt){if(Gt.initializer===void 0&&!(pi(Gt)&&!(W.getTypeAtLocation(Gt).flags&1))||Nu(Gt.name)||nc(Gt)&&!Pt(Gt)||kh(Gt))return;let Dt=W.getTypeAtLocation(Gt);if(Ee(Dt))return;let tr=_t(Dt);if(tr){let ur=typeof tr=="string"?tr:tr.map(dt=>dt.text).join("");if(_.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&Mp(Gt.name.getText(),ur))return;ge(tr,Gt.name.end)}}function Te(Gt){let nt=Gt.arguments;if(!nt||!nt.length)return;let Dt=W.getResolvedSignature(Gt);if(Dt===void 0)return;let tr=0;for(let ur of nt){let Gr=QA(ur);if(S9s(_)&&!Ue(Gr)){tr++;continue}let dt=0;if(of(Gr)){let st=W.getTypeAtLocation(Gr.expression);if(W.isTupleType(st)){let{elementFlags:ir,fixedLength:zt}=st.target;if(zt===0)continue;let Ht=Se(ir,mn=>!(mn&1));(Ht<0?zt:Ht)>0&&(dt=Ht<0?zt:Ht)}}let pr=W.getParameterIdentifierInfoAtPosition(Dt,tr);if(tr=tr+(dt||1),pr){let{parameter:st,parameterName:ir,isRestParameter:zt}=pr;if(!(_.includeInlayParameterNameHintsWhenArgumentMatchesName||!Ze(Gr,ir))&&!zt)continue;let Br=Bc(ir);if(We(Gr,Br))continue;re(Br,st,ur.getStart(),zt)}}}function Ze(Gt,nt){return Ir(Gt)?Gt.text===nt:jo(Gt)?Gt.name.text===nt:!1}function We(Gt,nt){if(!Uh(nt,Mg(R),Zne(c.scriptKind)))return!1;let Dt=fE(S,Gt.pos);if(!Dt?.length)return!1;let tr=b9s(nt);return jt(Dt,ur=>tr.test(S.substring(ur.pos,ur.end)))}function Ue(Gt){switch(Gt.kind){case 225:{let nt=Gt.operand;return wL(nt)||Ir(nt)&&oz(nt.escapedText)}case 112:case 97:case 106:case 15:case 229:return!0;case 80:{let nt=Gt.escapedText;return Ke(nt)||oz(nt)}}return wL(Gt)}function $e(Gt){if(lA(Gt)&&!qd(Gt,21,c)||xb(Gt)||!Gt.body)return;let Dt=W.getSignatureFromDeclaration(Gt);if(!Dt)return;let tr=W.getTypePredicateOfSignature(Dt);if(tr?.type){let dt=Rt(tr);if(dt){ge(dt,Ye(Gt));return}}let ur=W.getReturnTypeOfSignature(Dt);if(Ee(ur))return;let Gr=_t(ur);Gr&&ge(Gr,Ye(Gt))}function Ye(Gt){let nt=qd(Gt,22,c);return nt?nt.end:Gt.parameters.end}function Tt(Gt){let nt=W.getSignatureFromDeclaration(Gt);if(!nt)return;let Dt=0;for(let tr of Gt.parameters)Pt(tr)&&ot(tr,SF(tr)?nt.thisParameter:nt.parameters[Dt]),!SF(tr)&&Dt++}function ot(Gt,nt){if(kh(Gt)||nt===void 0)return;let tr=Qe(nt);tr!==void 0&&ge(tr,Gt.questionToken?Gt.questionToken.end:Gt.name.end)}function Qe(Gt){let nt=Gt.valueDeclaration;if(!nt||!Si(nt))return;let Dt=W.getTypeOfSymbolAtLocation(Gt,nt);if(!Ee(Dt))return _t(Dt)}function mt(Gt){let Dt=gQ();return dP(tr=>{let ur=W.typeToTypeNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typenode"),Dt.writeNode(4,ur,c,tr)})}function ht(Gt){let Dt=gQ();return dP(tr=>{let ur=W.typePredicateToTypePredicateNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typePredicateNode"),Dt.writeNode(4,ur,c,tr)})}function _t(Gt){if(!GXt(_))return mt(Gt);let Dt=W.typeToTypeNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typeNode"),Lt(Dt)}function Rt(Gt){if(!GXt(_))return ht(Gt);let Dt=W.typePredicateToTypePredicateNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typenode"),Lt(Dt)}function Lt(Gt){let nt=[];return Dt(Gt),nt;function Dt(dt){var pr,st;if(!dt)return;let ir=Vi(dt.kind);if(ir){nt.push({text:ir});return}if(wL(dt)){nt.push({text:Gr(dt)});return}switch(dt.kind){case 80:pe.assertNode(dt,Ir);let zt=Vo(dt),Ht=dt.symbol&&dt.symbol.declarations&&dt.symbol.declarations.length&&Il(dt.symbol.declarations[0]);Ht?nt.push(_r(zt,Ht)):nt.push({text:zt});break;case 167:pe.assertNode(dt,zi),Dt(dt.left),nt.push({text:"."}),Dt(dt.right);break;case 183:pe.assertNode(dt,bE),dt.assertsModifier&&nt.push({text:"asserts "}),Dt(dt.parameterName),dt.type&&(nt.push({text:" is "}),Dt(dt.type));break;case 184:pe.assertNode(dt,nh),Dt(dt.typeName),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 169:pe.assertNode(dt,Ds),dt.modifiers&&ur(dt.modifiers," "),Dt(dt.name),dt.constraint&&(nt.push({text:" extends "}),Dt(dt.constraint)),dt.default&&(nt.push({text:" = "}),Dt(dt.default));break;case 170:pe.assertNode(dt,Si),dt.modifiers&&ur(dt.modifiers," "),dt.dotDotDotToken&&nt.push({text:"..."}),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 186:pe.assertNode(dt,$D),nt.push({text:"new "}),tr(dt),nt.push({text:" => "}),Dt(dt.type);break;case 187:pe.assertNode(dt,Fw),nt.push({text:"typeof "}),Dt(dt.exprName),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 188:pe.assertNode(dt,mh),nt.push({text:"{"}),dt.members.length&&(nt.push({text:" "}),ur(dt.members,"; "),nt.push({text:" "})),nt.push({text:"}"});break;case 189:pe.assertNode(dt,kF),Dt(dt.elementType),nt.push({text:"[]"});break;case 190:pe.assertNode(dt,Zw),nt.push({text:"["}),ur(dt.elements,", "),nt.push({text:"]"});break;case 203:pe.assertNode(dt,KT),dt.dotDotDotToken&&nt.push({text:"..."}),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),nt.push({text:": "}),Dt(dt.type);break;case 191:pe.assertNode(dt,jL),Dt(dt.type),nt.push({text:"?"});break;case 192:pe.assertNode(dt,zL),nt.push({text:"..."}),Dt(dt.type);break;case 193:pe.assertNode(dt,aS),ur(dt.types," | ");break;case 194:pe.assertNode(dt,mf),ur(dt.types," & ");break;case 195:pe.assertNode(dt,d2),Dt(dt.checkType),nt.push({text:" extends "}),Dt(dt.extendsType),nt.push({text:" ? "}),Dt(dt.trueType),nt.push({text:" : "}),Dt(dt.falseType);break;case 196:pe.assertNode(dt,jT),nt.push({text:"infer "}),Dt(dt.typeParameter);break;case 197:pe.assertNode(dt,fv),nt.push({text:"("}),Dt(dt.type),nt.push({text:")"});break;case 199:pe.assertNode(dt,xB),nt.push({text:`${Vi(dt.operator)} `}),Dt(dt.type);break;case 200:pe.assertNode(dt,Iv),Dt(dt.objectType),nt.push({text:"["}),Dt(dt.indexType),nt.push({text:"]"});break;case 201:pe.assertNode(dt,GB),nt.push({text:"{ "}),dt.readonlyToken&&(dt.readonlyToken.kind===40?nt.push({text:"+"}):dt.readonlyToken.kind===41&&nt.push({text:"-"}),nt.push({text:"readonly "})),nt.push({text:"["}),Dt(dt.typeParameter),dt.nameType&&(nt.push({text:" as "}),Dt(dt.nameType)),nt.push({text:"]"}),dt.questionToken&&(dt.questionToken.kind===40?nt.push({text:"+"}):dt.questionToken.kind===41&&nt.push({text:"-"}),nt.push({text:"?"})),nt.push({text:": "}),dt.type&&Dt(dt.type),nt.push({text:"; }"});break;case 202:pe.assertNode(dt,EE),Dt(dt.literal);break;case 185:pe.assertNode(dt,x_),tr(dt),nt.push({text:" => "}),Dt(dt.type);break;case 206:pe.assertNode(dt,Um),dt.isTypeOf&&nt.push({text:"typeof "}),nt.push({text:"import("}),Dt(dt.argument),dt.assertions&&(nt.push({text:", { assert: "}),ur(dt.assertions.assertClause.elements,", "),nt.push({text:" }"})),nt.push({text:")"}),dt.qualifier&&(nt.push({text:"."}),Dt(dt.qualifier)),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 172:pe.assertNode(dt,ss),(pr=dt.modifiers)!=null&&pr.length&&(ur(dt.modifiers," "),nt.push({text:" "})),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 182:pe.assertNode(dt,w0),nt.push({text:"["}),ur(dt.parameters,", "),nt.push({text:"]"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 174:pe.assertNode(dt,hl),(st=dt.modifiers)!=null&&st.length&&(ur(dt.modifiers," "),nt.push({text:" "})),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 180:pe.assertNode(dt,wg),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 181:pe.assertNode(dt,em),nt.push({text:"new "}),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 208:pe.assertNode(dt,p2),nt.push({text:"["}),ur(dt.elements,", "),nt.push({text:"]"});break;case 207:pe.assertNode(dt,Km),nt.push({text:"{"}),dt.elements.length&&(nt.push({text:" "}),ur(dt.elements,", "),nt.push({text:" "})),nt.push({text:"}"});break;case 209:pe.assertNode(dt,hg),Dt(dt.name);break;case 225:pe.assertNode(dt,T0),nt.push({text:Vi(dt.operator)}),Dt(dt.operand);break;case 204:pe.assertNode(dt,zT),Dt(dt.head),dt.templateSpans.forEach(Dt);break;case 16:pe.assertNode(dt,tQ),nt.push({text:Gr(dt)});break;case 205:pe.assertNode(dt,mN),Dt(dt.type),Dt(dt.literal);break;case 17:pe.assertNode(dt,uie),nt.push({text:Gr(dt)});break;case 18:pe.assertNode(dt,rde),nt.push({text:Gr(dt)});break;case 198:pe.assertNode(dt,Fx),nt.push({text:"this"});break;case 168:pe.assertNode(dt,Un),nt.push({text:"["}),Dt(dt.expression),nt.push({text:"]"});break;default:pe.failBadSyntaxKind(dt)}}function tr(dt){dt.typeParameters&&(nt.push({text:"<"}),ur(dt.typeParameters,", "),nt.push({text:">"})),nt.push({text:"("}),ur(dt.parameters,", "),nt.push({text:")"})}function ur(dt,pr){dt.forEach((st,ir)=>{ir>0&&nt.push({text:pr}),Dt(st)})}function Gr(dt){switch(dt.kind){case 11:return T===0?`'${YT(dt.text,39)}'`:`"${YT(dt.text,34)}"`;case 16:case 17:case 18:{let pr=dt.rawText??Vye(YT(dt.text,96));switch(dt.kind){case 16:return"`"+pr+"${";case 17:return"}"+pr+"${";case 18:return"}"+pr+"`"}}}return dt.text}}function Ke(Gt){return Gt==="undefined"}function Pt(Gt){if((HL(Gt)||nc(Gt)&&rI(Gt))&&Gt.initializer){let nt=QA(Gt.initializer);return!(Ue(nt)||f2(nt)||og(nt)||Ed(nt))}return!0}function _r(Gt,nt){let Dt=nt.getSourceFile();return{text:Gt,span:Oy(nt,Dt),file:Dt.fileName}}}var n5={};o(n5,{getDocCommentTemplateAtPosition:()=>Z9s,getJSDocParameterNameCompletionDetails:()=>F9s,getJSDocParameterNameCompletions:()=>G9s,getJSDocTagCompletionDetails:()=>Adn,getJSDocTagCompletions:()=>x9s,getJSDocTagNameCompletionDetails:()=>k9s,getJSDocTagNameCompletions:()=>D9s,getJsDocCommentsFromDeclarations:()=>B9s,getJsDocTagsFromDeclarations:()=>R9s});var odn=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],adn,cdn;function B9s(s,c){let g=[];return Xrt(s,d=>{for(let h of T9s(d)){let _=tR(h)&&h.tags&&de(h.tags,R=>R.kind===328&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(h.comment===void 0&&!_||tR(h)&&d.kind!==347&&d.kind!==339&&h.tags&&h.tags.some(R=>R.kind===347||R.kind===339)&&!h.tags.some(R=>R.kind===342||R.kind===343))continue;let S=h.comment?ise(h.comment,c):[];_&&_.comment&&(S=S.concat(ise(_.comment,c))),k(g,S,w9s)||g.push(S)}}),Nr(fe(g,[Jie()]))}function w9s(s,c){return Sc(s,c,(g,d)=>g.kind===d.kind&&g.text===d.text)}function T9s(s){switch(s.kind){case 342:case 349:return[s];case 339:case 347:return[s,s.parent];case 324:if(mie(s.parent))return[s.parent.parent];default:return Sye(s)}}function R9s(s,c){let g=[];return Xrt(s,d=>{let h=Sx(d);if(!(h.some(_=>_.kind===347||_.kind===339)&&!h.some(_=>_.kind===342||_.kind===343)))for(let _ of h)g.push({name:_.tagName.text,text:gdn(_,c)}),g.push(...ldn(udn(_),c))}),g}function ldn(s,c){return er(s,g=>Nn([{name:g.tagName.text,text:gdn(g,c)}],ldn(udn(g),c)))}function udn(s){return dY(s)&&s.isNameFirst&&s.typeExpression&&yU(s.typeExpression.type)?s.typeExpression.type.jsDocPropertyTags:void 0}function ise(s,c){return typeof s=="string"?[gS(s)]:er(s,g=>g.kind===322?[gS(g.text)]:IMt(g,c))}function gdn(s,c){let{comment:g,kind:d}=s,h=N9s(d);switch(d){case 350:let R=s.typeExpression;return R?_(R):g===void 0?void 0:ise(g,c);case 330:return _(s.class);case 329:return _(s.class);case 346:let T=s,W=[];if(T.constraint&&W.push(gS(T.constraint.getText())),B(T.typeParameters)){B(W)&&W.push(BI());let M=T.typeParameters[T.typeParameters.length-1];F(T.typeParameters,ee=>{W.push(h(ee.getText())),M!==ee&&W.push(k0(28),BI())})}return g&&W.push(BI(),...ise(g,c)),W;case 345:case 351:return _(s.typeExpression);case 347:case 339:case 349:case 342:case 348:let{name:V}=s;return V?_(V):g===void 0?void 0:ise(g,c);default:return g===void 0?void 0:ise(g,c)}function _(R){return S(R.getText())}function S(R){return g?R.match(/^https?$/)?[gS(R),...ise(g,c)]:[h(R),BI(),...ise(g,c)]:[gS(R)]}}function N9s(s){switch(s){case 342:return gMt;case 349:return AMt;case 346:return pMt;case 347:case 339:return dMt;default:return gS}}function D9s(){return adn||(adn=At(odn,s=>({name:s,kind:"keyword",kindModifiers:"",sortText:Jz.SortText.LocationPriority})))}var k9s=Adn;function x9s(){return cdn||(cdn=At(odn,s=>({name:`@${s}`,kind:"keyword",kindModifiers:"",sortText:Jz.SortText.LocationPriority})))}function Adn(s){return{name:s,kind:"",kindModifiers:"",displayParts:[gS(s)],documentation:E,tags:void 0,codeActions:void 0}}function G9s(s){if(!Ir(s.name))return E;let c=s.name.text,g=s.parent,d=g.parent;return bu(d)?Xt(d.parameters,h=>{if(!Ir(h.name))return;let _=h.name.text;if(!(g.tags.some(S=>S!==s&&cS(S)&&Ir(S.name)&&S.name.escapedText===_)||c!==void 0&&!Ac(_,c)))return{name:_,kind:"parameter",kindModifiers:"",sortText:Jz.SortText.LocationPriority}}):[]}function F9s(s){return{name:s,kind:"parameter",kindModifiers:"",displayParts:[gS(s)],documentation:E,tags:void 0,codeActions:void 0}}function Z9s(s,c,g,d){let h=Jc(c,g),_=ji(h,tR);if(_&&(_.comment!==void 0||B(_.tags)))return;let S=h.getStart(c);if(!_&&S0;if(Ie&&!Ne){let Te=_e+s+re+" * ",Ze=S===g?s+re:"";return{newText:Te+s+Ie+re+Ee+Ze,caretOffset:Te.length}}return{newText:_e+Ee,caretOffset:3}}function L9s(s,c){let{text:g}=s,d=PB(c,s),h=d;for(;h<=c&&Iu(g.charCodeAt(h));h++);return g.slice(d,h)}function V9s(s,c,g,d){return s.map(({name:h,dotDotDotToken:_},S)=>{let R=h.kind===80?h.text:"param"+S;return`${g} * @param ${c?_?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function P9s(s,c){return`${s} * @returns${c}`}function W9s(s,c){return Ew(s,g=>FXt(g,c))}function FXt(s,c){switch(s.kind){case 263:case 219:case 175:case 177:case 174:case 220:let g=s;return{commentOwner:s,parameters:g.parameters,hasReturn:UPe(g,c)};case 304:return FXt(s.initializer,c);case 264:case 265:case 267:case 307:case 266:return{commentOwner:s};case 172:{let h=s;return h.type&&x_(h.type)?{commentOwner:s,parameters:h.type.parameters,hasReturn:UPe(h.type,c)}:{commentOwner:s}}case 244:{let _=s.declarationList.declarations,S=_.length===1&&_[0].initializer?O9s(_[0].initializer):void 0;return S?{commentOwner:s,parameters:S.parameters,hasReturn:UPe(S,c)}:{commentOwner:s}}case 308:return"quit";case 268:return s.parent.kind===268?void 0:{commentOwner:s};case 245:return FXt(s.expression,c);case 227:{let h=s;return nI(h)===0?"quit":bu(h.right)?{commentOwner:s,parameters:h.right.parameters,hasReturn:UPe(h.right,c)}:{commentOwner:s}}case 173:let d=s.initializer;if(d&&(UA(d)||lA(d)))return{commentOwner:s,parameters:d.parameters,hasReturn:UPe(d,c)}}}function UPe(s,c){return!!c?.generateReturnInDocTemplate&&(x_(s)||lA(s)&&un(s.body)||kd(s)&&s.body&&$u(s.body)&&!!yF(s.body,g=>g))}function O9s(s){for(;s.kind===218;)s=s.expression;switch(s.kind){case 219:case 220:return s;case 232:return de(s.members,Tc)}}var Qit={};o(Qit,{mapCode:()=>M9s});function M9s(s,c,g,d,h,_){return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},S=>{let R=c.map(W=>H9s(s,W)),T=g&&Nr(g);for(let W of R)Y9s(s,S,W,T)})}function H9s(s,c){let g=[{parse:()=>vz("__mapcode_content_nodes.ts",c,s.languageVersion,!0,s.scriptKind),body:_=>_.statements},{parse:()=>vz("__mapcode_class_content_nodes.ts",`class __class { + `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function Rsn(s){switch(s.kind){case 174:case 175:case 180:case 177:case 181:case 263:return!0}return!1}function Nsn(s,c,g){let d=Jc(s,c),h=ji(d,Rsn);if(!h||kd(h)&&h.body&&Hie(h.body,c))return;let _=g.getTypeChecker(),S=h.symbol;if(!S)return;let R=S.declarations;if(B(R)<=1||!ue(R,ee=>ms(ee)===s)||!Rsn(R[0]))return;let T=R[0].kind;if(!ue(R,ee=>ee.kind===T))return;let W=R;if(jt(W,ee=>!!ee.typeParameters||jt(ee.parameters,re=>!!re.modifiers||!Ir(re.name))))return;let V=Xt(W,ee=>_.getSignatureFromDeclaration(ee));if(B(V)!==B(R))return;let M=_.getReturnTypeOfSignature(V[0]);if(ue(V,ee=>_.getReturnTypeOfSignature(ee)===M))return W}var HHt="Add or remove braces in an arrow function",Dsn=Bu(Z.Add_or_remove_braces_in_an_arrow_function),Mnt={name:"Add braces to arrow function",description:Bu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},BPe={name:"Remove braces from arrow function",description:Bu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};Px(HHt,{kinds:[BPe.kind],getEditsForAction:zNs,getAvailableActions:jNs});function jNs(s){let{file:c,startPosition:g,triggerReason:d}=s,h=ksn(c,g,d==="invoked");return h?MF(h)?s.preferences.provideRefactorNotApplicableReason?[{name:HHt,description:Dsn,actions:[{...Mnt,notApplicableReason:h.error},{...BPe,notApplicableReason:h.error}]}]:E:[{name:HHt,description:Dsn,actions:[h.addBraces?Mnt:BPe]}]:E}function zNs(s,c){let{file:g,startPosition:d}=s,h=ksn(g,d);pe.assert(h&&!MF(h),"Expected applicable refactor info");let{expression:_,returnStatement:S,func:R}=h,T;if(c===Mnt.name){let V=me.createReturnStatement(_);T=me.createBlock([V],!0),Kie(_,V,g,3,!0)}else if(c===BPe.name&&S){let V=_||me.createVoidZero();T=rPe(V)?me.createParenthesizedExpression(V):V,C1e(S,T,g,3,!1),Kie(S,T,g,3,!1),zde(S,T,g,3,!1)}else pe.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>{V.replaceNode(g,R.body,T)})}}function ksn(s,c,g=!0,d){let h=Jc(s,c),_=A1(h);if(!_)return{error:Bu(Z.Could_not_find_a_containing_arrow_function)};if(!lA(_))return{error:Bu(Z.Containing_function_is_not_an_arrow_function)};if(!(!cy(_,h)||cy(_.body,h)&&!g)){if(e5(Mnt.kind,d)&&un(_.body))return{func:_,addBraces:!0,expression:_.body};if(e5(BPe.kind,d)&&$u(_.body)&&_.body.statements.length===1){let S=ma(_.body.statements);if(I2(S)){let R=S.expression&&og(aU(S.expression,!1))?me.createParenthesizedExpression(S.expression):S.expression;return{func:_,addBraces:!1,expression:R,returnStatement:S}}}}}var qNs={},xsn="Convert arrow function or function expression",$Ns=Bu(Z.Convert_arrow_function_or_function_expression),wPe={name:"Convert to anonymous function",description:Bu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},TPe={name:"Convert to named function",description:Bu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},RPe={name:"Convert to arrow function",description:Bu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};Px(xsn,{kinds:[wPe.kind,TPe.kind,RPe.kind],getEditsForAction:tDs,getAvailableActions:eDs});function eDs(s){let{file:c,startPosition:g,program:d,kind:h}=s,_=Fsn(c,g,d);if(!_)return E;let{selectedVariableDeclaration:S,func:R}=_,T=[],W=[];if(e5(TPe.kind,h)){let V=S||lA(R)&&nc(R.parent)?void 0:Bu(Z.Could_not_convert_to_named_function);V?W.push({...TPe,notApplicableReason:V}):T.push(TPe)}if(e5(wPe.kind,h)){let V=!S&&lA(R)?void 0:Bu(Z.Could_not_convert_to_anonymous_function);V?W.push({...wPe,notApplicableReason:V}):T.push(wPe)}if(e5(RPe.kind,h)){let V=UA(R)?void 0:Bu(Z.Could_not_convert_to_arrow_function);V?W.push({...RPe,notApplicableReason:V}):T.push(RPe)}return[{name:xsn,description:$Ns,actions:T.length===0&&s.preferences.provideRefactorNotApplicableReason?W:T}]}function tDs(s,c){let{file:g,startPosition:d,program:h}=s,_=Fsn(g,d,h);if(!_)return;let{func:S}=_,R=[];switch(c){case wPe.name:R.push(...sDs(s,S));break;case TPe.name:let T=iDs(S);if(!T)return;R.push(...oDs(s,S,T));break;case RPe.name:if(!UA(S))return;R.push(...aDs(s,S));break;default:return pe.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function Gsn(s){let c=!1;return s.forEachChild(function g(d){if(Mie(d)){c=!0;return}!xa(d)&&!ih(d)&&!UA(d)&&Lu(d,g)}),c}function Fsn(s,c,g){let d=Jc(s,c),h=g.getTypeChecker(),_=nDs(s,h,d.parent);if(_&&!Gsn(_.body)&&!h.containsArgumentsReference(_))return{selectedVariableDeclaration:!0,func:_};let S=A1(d);if(S&&(UA(S)||lA(S))&&!cy(S.body,d)&&!Gsn(S.body)&&!h.containsArgumentsReference(S))return UA(S)&&Lsn(s,h,S)?void 0:{selectedVariableDeclaration:!1,func:S}}function rDs(s){return nc(s)||u_(s)&&s.declarations.length===1}function nDs(s,c,g){if(!rDs(g))return;let h=(nc(g)?g:ma(g.declarations)).initializer;if(h&&(lA(h)||UA(h)&&!Lsn(s,c,h)))return h}function Zsn(s){if(un(s)){let c=me.createReturnStatement(s),g=s.getSourceFile();return gn(c,s),Vy(c),C1e(s,c,g,void 0,!0),me.createBlock([c],!0)}else return s}function iDs(s){let c=s.parent;if(!nc(c)||!h7(c))return;let g=c.parent,d=g.parent;if(!(!u_(g)||!Ch(d)||!Ir(c.name)))return{variableDeclaration:c,variableDeclarationList:g,statement:d,name:c.name}}function sDs(s,c){let{file:g}=s,d=Zsn(c.body),h=me.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return xo.ChangeTracker.with(s,_=>_.replaceNode(g,c,h))}function oDs(s,c,g){let{file:d}=s,h=Zsn(c.body),{variableDeclaration:_,variableDeclarationList:S,statement:R,name:T}=g;Ybe(R);let W=Hc(_)&32|o_(c),V=me.createModifiersFromModifierFlags(W),M=me.createFunctionDeclaration(B(V)?V:void 0,c.asteriskToken,T,c.typeParameters,c.parameters,c.type,h);return S.declarations.length===1?xo.ChangeTracker.with(s,ee=>ee.replaceNode(d,R,M)):xo.ChangeTracker.with(s,ee=>{ee.delete(d,_),ee.insertNodeAfter(d,R,M)})}function aDs(s,c){let{file:g}=s,h=c.body.statements[0],_;cDs(c.body,h)?(_=h.expression,Vy(_),xU(h,_)):_=c.body;let S=me.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,me.createToken(39),_);return xo.ChangeTracker.with(s,R=>R.replaceNode(g,c,S))}function cDs(s,c){return s.statements.length===1&&I2(c)&&!!c.expression}function Lsn(s,c,g){return!!g.name&&Kp.Core.isSymbolReferencedInFile(g.name,c,s)}var lDs={},Hnt="Convert parameters to destructured object",uDs=1,Vsn=Bu(Z.Convert_parameters_to_destructured_object),Psn={name:Hnt,description:Vsn,kind:"refactor.rewrite.parameters.toDestructured"};Px(Hnt,{kinds:[Psn.kind],getEditsForAction:ADs,getAvailableActions:gDs});function gDs(s){let{file:c,startPosition:g}=s;return n0(c)||!Msn(c,g,s.program.getTypeChecker())?E:[{name:Hnt,description:Vsn,actions:[Psn]}]}function ADs(s,c){pe.assert(c===Hnt,"Unexpected action name");let{file:g,startPosition:d,program:h,cancellationToken:_,host:S}=s,R=Msn(g,d,h.getTypeChecker());if(!R||!_)return;let T=pDs(R,h,_);return T.valid?{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>dDs(g,h,S,V,R,T))}:{edits:[]}}function dDs(s,c,g,d,h,_){let S=_.signature,R=At(Xsn(h,c,g),V=>JA(V));if(S){let V=At(Xsn(S,c,g),M=>JA(M));W(S,V)}W(h,R);let T=cl(_.functionCalls,(V,M)=>Zt(V.pos,M.pos));for(let V of T)if(V.arguments&&V.arguments.length){let M=JA(SDs(h,V.arguments),!0);d.replaceNodeRange(ms(V),ma(V.arguments),Ei(V.arguments),M,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}function W(V,M){d.replaceNodeRangeWithNodes(s,ma(V.parameters),Ei(V.parameters),M,{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}}function pDs(s,c,g){let d=BDs(s),h=Tc(s)?vDs(s):[],_=io([...d,...h],yg),S=c.getTypeChecker(),R=er(_,M=>Kp.getReferenceEntriesForNode(-1,M,c,c.getSourceFiles(),g)),T=W(R);return ue(T.declarations,M=>k(_,M))||(T.valid=!1),T;function W(M){let ee={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:ee,valid:!0},ge=At(d,V),Ie=At(h,V),_e=Tc(s),Ee=At(d,Ne=>YHt(Ne,S));for(let Ne of M){if(Ne.kind===Kp.EntryKind.Span){re.valid=!1;continue}if(k(Ee,V(Ne.node))){if(mDs(Ne.node.parent)){re.signature=Ne.node.parent;continue}let Ze=Osn(Ne);if(Ze){re.functionCalls.push(Ze);continue}}let Te=YHt(Ne.node,S);if(Te&&k(Ee,Te)){let Ze=QHt(Ne);if(Ze){re.declarations.push(Ze);continue}}if(k(ge,V(Ne.node))||Mde(Ne.node)){if(Wsn(Ne))continue;let We=QHt(Ne);if(We){re.declarations.push(We);continue}let Ue=Osn(Ne);if(Ue){re.functionCalls.push(Ue);continue}}if(_e&&k(Ie,V(Ne.node))){if(Wsn(Ne))continue;let We=QHt(Ne);if(We){re.declarations.push(We);continue}let Ue=fDs(Ne);if(Ue){ee.accessExpressions.push(Ue);continue}if(pm(s.parent)){let $e=IDs(Ne);if($e){ee.typeUsages.push($e);continue}}}re.valid=!1}return re}function V(M){let ee=S.getSymbolAtLocation(M);return ee&&ent(ee,S)}}function YHt(s,c){let g=x1e(s);if(g){let d=c.getContextualTypeForObjectLiteralElement(g),h=d?.getSymbol();if(h&&!(iI(h)&6))return h}}function Wsn(s){let c=s.node;if(uy(c.parent)||Vw(c.parent)||km(c.parent)||Zx(c.parent)||R0(c.parent)||Cf(c.parent))return c}function QHt(s){if(jh(s.node.parent))return s.node}function Osn(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 214:case 215:let d=Gs(g,av);if(d&&d.expression===c)return d;break;case 212:let h=Gs(g,jo);if(h&&h.parent&&h.name===c){let S=Gs(h.parent,av);if(S&&S.expression===h)return S}break;case 213:let _=Gs(g,Yg);if(_&&_.parent&&_.argumentExpression===c){let S=Gs(_.parent,av);if(S&&S.expression===_)return S}break}}}function fDs(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 212:let d=Gs(g,jo);if(d&&d.expression===c)return d;break;case 213:let h=Gs(g,Yg);if(h&&h.expression===c)return h;break}}}function IDs(s){let c=s.node;if(DU(c)===2||pAe(c.parent))return c}function Msn(s,c,g){let d=Yie(s,c),h=Oge(d);if(!hDs(d)&&h&&CDs(h,g)&&cy(h,d)&&!(h.body&&cy(h.body,d)))return h}function hDs(s){let c=ji(s,l3);if(c){let g=ji(c,d=>!l3(d));return!!g&&kd(g)}return!1}function mDs(s){return hl(s)&&(g_(s.parent)||mh(s.parent))}function CDs(s,c){var g;if(!_Ds(s.parameters,c))return!1;switch(s.kind){case 263:return Hsn(s)&&NPe(s,c);case 175:if(og(s.parent)){let d=YHt(s.name,c);return((g=d?.declarations)==null?void 0:g.length)===1&&NPe(s,c)}return NPe(s,c);case 177:return pm(s.parent)?Hsn(s.parent)&&NPe(s,c):Ysn(s.parent.parent)&&NPe(s,c);case 219:case 220:return Ysn(s.parent)}return!1}function NPe(s,c){return!!s.body&&!c.isImplementationOfOverload(s)}function Hsn(s){return s.name?!0:!!Xie(s,90)}function _Ds(s,c){return bDs(s)>=uDs&&ue(s,g=>yDs(g,c))}function yDs(s,c){if(EB(s)){let g=c.getTypeAtLocation(s);if(!c.isArrayType(g)&&!c.isTupleType(g))return!1}return!s.modifiers&&Ir(s.name)}function Ysn(s){return nc(s)&&rI(s)&&Ir(s.name)&&!s.type}function XHt(s){return s.length>0&&Mie(s[0].name)}function bDs(s){return XHt(s)?s.length-1:s.length}function Qsn(s){return XHt(s)&&(s=me.createNodeArray(s.slice(1),s.hasTrailingComma)),s}function EDs(s,c){return Ir(c)&&c2(c)===s?me.createShorthandPropertyAssignment(s):me.createPropertyAssignment(s,c)}function SDs(s,c){let g=Qsn(s.parameters),d=EB(Ei(g)),h=d?c.slice(0,g.length-1):c,_=At(h,(R,T)=>{let W=Ynt(g[T]),V=EDs(W,R);return Vy(V.name),fm(V)&&Vy(V.initializer),xU(R,V),V});if(d&&c.length>=g.length){let R=c.slice(g.length-1),T=me.createPropertyAssignment(Ynt(Ei(g)),me.createArrayLiteralExpression(R));_.push(T)}return me.createObjectLiteralExpression(_,!1)}function Xsn(s,c,g){let d=c.getTypeChecker(),h=Qsn(s.parameters),_=At(h,V),S=me.createObjectBindingPattern(_),R=M(h),T;ue(h,ge)&&(T=me.createObjectLiteralExpression());let W=me.createParameterDeclaration(void 0,void 0,S,void 0,R,T);if(XHt(s.parameters)){let Ie=s.parameters[0],_e=me.createParameterDeclaration(void 0,void 0,Ie.name,void 0,Ie.type);return Vy(_e.name),xU(Ie.name,_e.name),Ie.type&&(Vy(_e.type),xU(Ie.type,_e.type)),me.createNodeArray([_e,W])}return me.createNodeArray([W]);function V(Ie){let _e=me.createBindingElement(void 0,void 0,Ynt(Ie),EB(Ie)&&ge(Ie)?me.createArrayLiteralExpression():Ie.initializer);return Vy(_e),Ie.initializer&&_e.initializer&&xU(Ie.initializer,_e.initializer),_e}function M(Ie){let _e=At(Ie,ee);return Gw(me.createTypeLiteralNode(_e),1)}function ee(Ie){let _e=Ie.type;!_e&&(Ie.initializer||EB(Ie))&&(_e=re(Ie));let Ee=me.createPropertySignature(void 0,Ynt(Ie),ge(Ie)?me.createToken(58):Ie.questionToken,_e);return Vy(Ee),xU(Ie.name,Ee.name),Ie.type&&Ee.type&&xU(Ie.type,Ee.type),Ee}function re(Ie){let _e=d.getTypeAtLocation(Ie);return $de(_e,Ie,c,g)}function ge(Ie){if(EB(Ie)){let _e=d.getTypeAtLocation(Ie);return!d.isTupleType(_e)}return d.isOptionalParameter(Ie)}}function Ynt(s){return c2(s.name)}function vDs(s){switch(s.parent.kind){case 264:let c=s.parent;return c.name?[c.name]:[pe.checkDefined(Xie(c,90),"Nameless class declaration should be a default export")];case 232:let d=s.parent,h=s.parent.parent,_=d.name;return _?[_,h.name]:[h.name]}}function BDs(s){switch(s.kind){case 263:return s.name?[s.name]:[pe.checkDefined(Xie(s,90),"Nameless function declaration should be a default export")];case 175:return[s.name];case 177:let g=pe.checkDefined(qd(s,137,s.getSourceFile()),"Constructor declaration should have constructor keyword");return s.parent.kind===232?[s.parent.parent.name,g]:[g];case 220:return[s.parent.name];case 219:return s.name?[s.name,s.parent.name]:[s.parent.name];default:return pe.assertNever(s,`Unexpected function declaration kind ${s.kind}`)}}var wDs={},JHt="Convert to template string",UHt=Bu(Z.Convert_to_template_string),KHt={name:JHt,description:UHt,kind:"refactor.rewrite.string"};Px(JHt,{kinds:[KHt.kind],getEditsForAction:RDs,getAvailableActions:TDs});function TDs(s){let{file:c,startPosition:g}=s,d=Jsn(c,g),h=jHt(d),_=Zg(h),S={name:JHt,description:UHt,actions:[]};return _&&s.triggerReason!=="invoked"?E:MT(h)&&(_||fo(h)&&zHt(h).isValidConcatenation)?(S.actions.push(KHt),[S]):s.preferences.provideRefactorNotApplicableReason?(S.actions.push({...KHt,notApplicableReason:Bu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[S]):E}function Jsn(s,c){let g=Jc(s,c),d=jHt(g);return!zHt(d).isValidConcatenation&&gI(d.parent)&&fo(d.parent.parent)?d.parent.parent:g}function RDs(s,c){let{file:g,startPosition:d}=s,h=Jsn(g,d);switch(c){case UHt:return{edits:NDs(s,h)};default:return pe.fail("invalid action")}}function NDs(s,c){let g=jHt(c),d=s.file,h=FDs(zHt(g),d),_=n2(d.text,g.end);if(_){let S=_[_.length-1],R={pos:_[0].pos,end:S.end};return xo.ChangeTracker.with(s,T=>{T.deleteRange(d,R),T.replaceNode(d,g,h)})}else return xo.ChangeTracker.with(s,S=>S.replaceNode(d,g,h))}function DDs(s){return!(s.operatorToken.kind===64||s.operatorToken.kind===65)}function jHt(s){return ji(s.parent,g=>{switch(g.kind){case 212:case 213:return!1;case 229:case 227:return!(fo(g.parent)&&DDs(g.parent));default:return"quit"}})||s}function zHt(s){let c=S=>{if(!fo(S))return{nodes:[S],operators:[],validOperators:!0,hasString:Zg(S)||GP(S)};let{nodes:R,operators:T,hasString:W,validOperators:V}=c(S.left);if(!(W||Zg(S.right)||FF(S.right)))return{nodes:[S],operators:[],hasString:!1,validOperators:!0};let M=S.operatorToken.kind===40,ee=V&&M;return R.push(S.right),T.push(S.operatorToken),{nodes:R,operators:T,hasString:!0,validOperators:ee}},{nodes:g,operators:d,validOperators:h,hasString:_}=c(s);return{nodes:g,operators:d,isValidConcatenation:h&&_}}var kDs=(s,c)=>(g,d)=>{g(d,h)=>{for(;d.length>0;){let _=d.shift();zde(s[_],h,c,3,!1),g(_,h)}};function GDs(s){return s.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function Usn(s){let c=tQ(s)||gie(s)?-2:-1;return xp(s).slice(1,c)}function Ksn(s,c){let g=[],d="",h="";for(;s{jsn(Te);let We=Ze===ee.templateSpans.length-1,Ue=Te.literal.text+(We?ge:""),$e=Usn(Te.literal)+(We?Ie:"");return me.createTemplateSpan(Te.expression,Ee&&We?me.createTemplateTail(Ue,$e):me.createTemplateMiddle(Ue,$e))});W.push(...Ne)}else{let Ne=Ee?me.createTemplateTail(ge,Ie):me.createTemplateMiddle(ge,Ie);h(_e,Ne),W.push(me.createTemplateSpan(ee,Ne))}}return me.createTemplateExpression(V,W)}function jsn(s){let c=s.getSourceFile();zde(s,s.expression,c,3,!1),C1e(s.expression,s.expression,c,3,!1)}function ZDs(s){return gI(s)&&(jsn(s),s=s.expression),s}var LDs={},Qnt="Convert to optional chain expression",qHt=Bu(Z.Convert_to_optional_chain_expression),$Ht={name:Qnt,description:qHt,kind:"refactor.rewrite.expression.optionalChain"};Px(Qnt,{kinds:[$Ht.kind],getEditsForAction:PDs,getAvailableActions:VDs});function VDs(s){let c=zsn(s,s.triggerReason==="invoked");return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Qnt,description:qHt,actions:[{...$Ht,notApplicableReason:c.error}]}]:E:[{name:Qnt,description:qHt,actions:[$Ht]}]:E}function PDs(s,c){let g=zsn(s);return pe.assert(g&&!MF(g),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(s,h=>JDs(s.file,s.program.getTypeChecker(),h,g,c)),renameFilename:void 0,renameLocation:void 0}}function Xnt(s){return fo(s)||Lw(s)}function WDs(s){return VC(s)||I2(s)||Ch(s)}function Jnt(s){return Xnt(s)||WDs(s)}function zsn(s,c=!0){let{file:g,program:d}=s,h=Vz(s),_=h.length===0;if(_&&!c)return;let S=Jc(g,h.start),R=Yde(g,h.start+h.length),T=wA(S.pos,R&&R.end>=S.pos?R.getEnd():S.getEnd()),W=_?QDs(S):YDs(S,T),V=W&&Jnt(W)?XDs(W):void 0;if(!V)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let M=d.getTypeChecker();return Lw(V)?ODs(V,M):MDs(V)}function ODs(s,c){let g=s.condition,d=tYt(s.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:Bu(Z.Could_not_find_convertible_access_expression)};if((jo(g)||Ir(g))&&eYt(g,d.expression))return{finalExpression:d,occurrences:[g],expression:s};if(fo(g)){let h=qsn(d.expression,g);return h?{finalExpression:d,occurrences:h,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}}function MDs(s){if(s.operatorToken.kind!==56)return{error:Bu(Z.Can_only_convert_logical_AND_access_chains)};let c=tYt(s.right);if(!c)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let g=qsn(c.expression,s.left);return g?{finalExpression:c,occurrences:g,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}function qsn(s,c){let g=[];for(;fo(c)&&c.operatorToken.kind===56;){let h=eYt(QA(s),QA(c.right));if(!h)break;g.push(h),s=h,c=c.left}let d=eYt(s,c);return d&&g.push(d),g.length>0?g:void 0}function eYt(s,c){if(!(!Ir(c)&&!jo(c)&&!Yg(c)))return HDs(s,c)?c:void 0}function HDs(s,c){for(;(Zl(s)||jo(s)||Yg(s))&&N1e(s)!==N1e(c);)s=s.expression;for(;jo(s)&&jo(c)||Yg(s)&&Yg(c);){if(N1e(s)!==N1e(c))return!1;s=s.expression,c=c.expression}return Ir(s)&&Ir(c)&&s.getText()===c.getText()}function N1e(s){if(Ir(s)||d1(s))return s.getText();if(jo(s))return N1e(s.name);if(Yg(s))return N1e(s.argumentExpression)}function YDs(s,c){for(;s.parent;){if(Jnt(s)&&c.length!==0&&s.end>=c.start+c.length)return s;s=s.parent}}function QDs(s){for(;s.parent;){if(Jnt(s)&&!Jnt(s.parent))return s;s=s.parent}}function XDs(s){if(Xnt(s))return s;if(Ch(s)){let c=m3(s),g=c?.initializer;return g&&Xnt(g)?g:void 0}return s.expression&&Xnt(s.expression)?s.expression:void 0}function tYt(s){if(s=QA(s),fo(s))return tYt(s.left);if((jo(s)||Yg(s)||Zl(s))&&!GC(s))return s}function $sn(s,c,g){if(jo(c)||Yg(c)||Zl(c)){let d=$sn(s,c.expression,g),h=g.length>0?g[g.length-1]:void 0,_=h?.getText()===c.expression.getText();if(_&&g.pop(),Zl(c))return _?me.createCallChain(d,me.createToken(29),c.typeArguments,c.arguments):me.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(jo(c))return _?me.createPropertyAccessChain(d,me.createToken(29),c.name):me.createPropertyAccessChain(d,c.questionDotToken,c.name);if(Yg(c))return _?me.createElementAccessChain(d,me.createToken(29),c.argumentExpression):me.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function JDs(s,c,g,d,h){let{finalExpression:_,occurrences:S,expression:R}=d,T=S[S.length-1],W=$sn(c,_,S);W&&(jo(W)||Yg(W)||Zl(W))&&(fo(R)?g.replaceNodeRange(s,T,_,W):Lw(R)&&g.replaceNode(s,R,me.createBinaryExpression(W,me.createToken(61),R.whenFalse)))}var eon={};o(eon,{Messages:()=>F_,RangeFacts:()=>non,getRangeToExtract:()=>rYt,getRefactorActionsToExtractSymbol:()=>ton,getRefactorEditsToExtractSymbol:()=>ron});var rpe="Extract Symbol",npe={name:"Extract Constant",description:Bu(Z.Extract_constant),kind:"refactor.extract.constant"},ipe={name:"Extract Function",description:Bu(Z.Extract_function),kind:"refactor.extract.function"};Px(rpe,{kinds:[npe.kind,ipe.kind],getEditsForAction:ron,getAvailableActions:ton});function ton(s){let c=s.kind,g=rYt(s.file,Vz(s),s.triggerReason==="invoked"),d=g.targetRange;if(d===void 0){if(!g.errors||g.errors.length===0||!s.preferences.provideRefactorNotApplicableReason)return E;let Ie=[];return e5(ipe.kind,c)&&Ie.push({name:rpe,description:ipe.description,actions:[{...ipe,notApplicableReason:ge(g.errors)}]}),e5(npe.kind,c)&&Ie.push({name:rpe,description:npe.description,actions:[{...npe,notApplicableReason:ge(g.errors)}]}),Ie}let{affectedTextRange:h,extractions:_}=$Ds(d,s);if(_===void 0)return E;let S=[],R=new Map,T,W=[],V=new Map,M,ee=0;for(let{functionExtraction:Ie,constantExtraction:_e}of _){if(e5(ipe.kind,c)){let Ee=Ie.description;Ie.errors.length===0?R.has(Ee)||(R.set(Ee,!0),S.push({description:Ee,name:`function_scope_${ee}`,kind:ipe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):T||(T={description:Ee,name:`function_scope_${ee}`,notApplicableReason:ge(Ie.errors),kind:ipe.kind})}if(e5(npe.kind,c)){let Ee=_e.description;_e.errors.length===0?V.has(Ee)||(V.set(Ee,!0),W.push({description:Ee,name:`constant_scope_${ee}`,kind:npe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):M||(M={description:Ee,name:`constant_scope_${ee}`,notApplicableReason:ge(_e.errors),kind:npe.kind})}ee++}let re=[];return S.length?re.push({name:rpe,description:Bu(Z.Extract_function),actions:S}):s.preferences.provideRefactorNotApplicableReason&&T&&re.push({name:rpe,description:Bu(Z.Extract_function),actions:[T]}),W.length?re.push({name:rpe,description:Bu(Z.Extract_constant),actions:W}):s.preferences.provideRefactorNotApplicableReason&&M&&re.push({name:rpe,description:Bu(Z.Extract_constant),actions:[M]}),re.length?re:E;function ge(Ie){let _e=Ie[0].messageText;return typeof _e!="string"&&(_e=_e.messageText),_e}}function ron(s,c){let d=rYt(s.file,Vz(s)).targetRange,h=/^function_scope_(\d+)$/.exec(c);if(h){let S=+h[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the function scope index"),zDs(d,s,S)}let _=/^constant_scope_(\d+)$/.exec(c);if(_){let S=+_[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the constant scope index"),qDs(d,s,S)}pe.fail("Unrecognized action name")}var F_;(s=>{function c(g){return{message:g,code:0,category:3,key:g}}s.cannotExtractRange=c("Cannot extract range."),s.cannotExtractImport=c("Cannot extract import statement."),s.cannotExtractSuper=c("Cannot extract super call."),s.cannotExtractJSDoc=c("Cannot extract JSDoc."),s.cannotExtractEmpty=c("Cannot extract empty range."),s.expressionExpected=c("expression expected."),s.uselessConstantType=c("No reason to extract constant of type."),s.statementOrExpressionExpected=c("Statement or expression expected."),s.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),s.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),s.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),s.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),s.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),s.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),s.cannotExtractIdentifier=c("Select more than a single identifier."),s.cannotExtractExportedEntity=c("Cannot extract exported declaration"),s.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),s.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),s.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),s.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),s.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),s.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),s.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(F_||(F_={}));var non=(s=>(s[s.None=0]="None",s[s.HasReturn=1]="HasReturn",s[s.IsGenerator=2]="IsGenerator",s[s.IsAsyncFunction=4]="IsAsyncFunction",s[s.UsesThis=8]="UsesThis",s[s.UsesThisInFunction=16]="UsesThisInFunction",s[s.InStaticRegion=32]="InStaticRegion",s))(non||{});function rYt(s,c,g=!0){let{length:d}=c;if(d===0&&!g)return{errors:[qh(s,c.start,d,F_.cannotExtractEmpty)]};let h=d===0&&g,_=$5t(s,c.start),S=Yde(s,Rs(c)),R=_&&S&&g?UDs(_,S,s):c,T=h?Cks(_):I1e(_,s,R),W=h?T:I1e(S,s,R),V=0,M;if(!T||!W)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};if(T.flags&16777216)return{errors:[qh(s,c.start,d,F_.cannotExtractJSDoc)]};if(T.parent!==W.parent)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};if(T!==W){if(!Pz(T.parent))return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};let Ne=[];for(let Te of T.parent.statements){if(Te===T||Ne.length){let Ze=Ee(Te);if(Ze)return{errors:Ze};Ne.push(Te)}if(Te===W)break}return Ne.length?{targetRange:{range:Ne,facts:V,thisNode:M}}:{errors:[qh(s,c.start,d,F_.cannotExtractRange)]}}if(I2(T)&&!T.expression)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};let ee=ge(T),re=Ie(ee)||Ee(ee);if(re)return{errors:re};return{targetRange:{range:KDs(ee),facts:V,thisNode:M}};function ge(Ne){if(I2(Ne)){if(Ne.expression)return Ne.expression}else if(Ch(Ne)||u_(Ne)){let Te=Ch(Ne)?Ne.declarationList.declarations:Ne.declarations,Ze=0,We;for(let Ue of Te)Ue.initializer&&(Ze++,We=Ue.initializer);if(Ze===1)return We}else if(nc(Ne)&&Ne.initializer)return Ne.initializer;return Ne}function Ie(Ne){if(Ir(VC(Ne)?Ne.expression:Ne))return[mo(Ne,F_.cannotExtractIdentifier)]}function _e(Ne,Te){let Ze=Ne;for(;Ze!==Te;){if(Ze.kind===173){cg(Ze)&&(V|=32);break}else if(Ze.kind===170){A1(Ze).kind===177&&(V|=32);break}else Ze.kind===175&&cg(Ze)&&(V|=32);Ze=Ze.parent}}function Ee(Ne){let Te;if((Tt=>{Tt[Tt.None=0]="None",Tt[Tt.Break=1]="Break",Tt[Tt.Continue=2]="Continue",Tt[Tt.Return=4]="Return"})(Te||(Te={})),pe.assert(Ne.pos<=Ne.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),pe.assert(!wB(Ne.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Lc(Ne)&&!(MT(Ne)&&ion(Ne))&&!aYt(Ne))return[mo(Ne,F_.statementOrExpressionExpected)];if(Ne.flags&33554432)return[mo(Ne,F_.cannotExtractAmbientBlock)];let Ze=hC(Ne);Ze&&_e(Ne,Ze);let We,Ue=4,$e;if(Ye(Ne),V&8){let Tt=r0(Ne,!1,!1);(Tt.kind===263||Tt.kind===175&&Tt.parent.kind===211||Tt.kind===219)&&(V|=16)}return We;function Ye(Tt){if(We)return!0;if(jh(Tt)){let Qe=Tt.kind===261?Tt.parent.parent:Tt;if(Ga(Qe,32))return(We||(We=[])).push(mo(Tt,F_.cannotExtractExportedEntity)),!0}switch(Tt.kind){case 273:return(We||(We=[])).push(mo(Tt,F_.cannotExtractImport)),!0;case 278:return(We||(We=[])).push(mo(Tt,F_.cannotExtractExportedEntity)),!0;case 108:if(Tt.parent.kind===214){let Qe=hC(Tt);if(Qe===void 0||Qe.pos=c.start+c.length)return(We||(We=[])).push(mo(Tt,F_.cannotExtractSuper)),!0}else V|=8,M=Tt;break;case 220:Lu(Tt,function Qe(mt){if(Mie(mt))V|=8,M=Tt;else{if(xa(mt)||bu(mt)&&!lA(mt))return!1;Lu(mt,Qe)}});case 264:case 263:ll(Tt.parent)&&Tt.parent.externalModuleIndicator===void 0&&(We||(We=[])).push(mo(Tt,F_.functionWillNotBeVisibleInTheNewScope));case 232:case 219:case 175:case 177:case 178:case 179:return!1}let ot=Ue;switch(Tt.kind){case 246:Ue&=-5;break;case 259:Ue=0;break;case 242:Tt.parent&&Tt.parent.kind===259&&Tt.parent.finallyBlock===Tt&&(Ue=4);break;case 298:case 297:Ue|=1;break;default:VT(Tt,!1)&&(Ue|=3);break}switch(Tt.kind){case 198:case 110:V|=8,M=Tt;break;case 257:{let Qe=Tt.label;($e||($e=[])).push(Qe.escapedText),Lu(Tt,Ye),$e.pop();break}case 253:case 252:{let Qe=Tt.label;Qe?k($e,Qe.escapedText)||(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):Ue&(Tt.kind===253?1:2)||(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 224:V|=4;break;case 230:V|=2;break;case 254:Ue&4?V|=1:(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingConditionalReturnStatement));break;default:Lu(Tt,Ye);break}Ue=ot}}}function UDs(s,c,g){let d=s.getStart(g),h=c.getEnd();return g.text.charCodeAt(h)===59&&h++,{start:d,length:h-d}}function KDs(s){if(Lc(s))return[s];if(MT(s))return VC(s.parent)?[s.parent]:s;if(aYt(s))return s}function nYt(s){return lA(s)?n7(s.body):kd(s)||ll(s)||_N(s)||xa(s)}function jDs(s){let c=n9(s.range)?ma(s.range):s.range;if(s.facts&8&&!(s.facts&16)){let d=hC(c);if(d){let h=ji(c,kd);return h?[h,d]:[d]}}let g=[];for(;;)if(c=c.parent,c.kind===170&&(c=ji(c,d=>kd(d)).parent),nYt(c)&&(g.push(c),c.kind===308))return g}function zDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,functionErrorsPerScope:S,exposedVariableDeclarations:R}}=iYt(s,c);return pe.assert(!S[g].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),sks(h,d[g],_[g],R,s,c)}function qDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,constantErrorsPerScope:S,exposedVariableDeclarations:R}}=iYt(s,c);pe.assert(!S[g].length,"The extraction went missing? How?"),pe.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let T=un(h)?h:h.statements[0].expression;return oks(T,d[g],_[g],s.facts,c)}function $Ds(s,c){let{scopes:g,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:h,constantErrorsPerScope:_}}=iYt(s,c),S=g.map((R,T)=>{let W=eks(R),V=tks(R),M=kd(R)?rks(R):xa(R)?nks(R):iks(R),ee,re;return M===1?(ee=dN(Bu(Z.Extract_to_0_in_1_scope),[W,"global"]),re=dN(Bu(Z.Extract_to_0_in_1_scope),[V,"global"])):M===0?(ee=dN(Bu(Z.Extract_to_0_in_1_scope),[W,"module"]),re=dN(Bu(Z.Extract_to_0_in_1_scope),[V,"module"])):(ee=dN(Bu(Z.Extract_to_0_in_1),[W,M]),re=dN(Bu(Z.Extract_to_0_in_1),[V,M])),T===0&&!xa(R)&&(re=dN(Bu(Z.Extract_to_0_in_enclosing_scope),[V])),{functionExtraction:{description:ee,errors:h[T]},constantExtraction:{description:re,errors:_[T]}}});return{affectedTextRange:d,extractions:S}}function iYt(s,c){let{file:g}=c,d=jDs(s),h=hks(s,g),_=mks(s,d,h,g,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:h,readsAndWrites:_}}function eks(s){return kd(s)?"inner function":xa(s)?"method":"function"}function tks(s){return xa(s)?"readonly field":"constant"}function rks(s){switch(s.kind){case 177:return"constructor";case 219:case 263:return s.name?`function '${s.name.text}'`:nnt;case 220:return"arrow function";case 175:return`method '${s.name.getText()}'`;case 178:return`'get ${s.name.getText()}'`;case 179:return`'set ${s.name.getText()}'`;default:pe.assertNever(s,`Unexpected scope kind ${s.kind}`)}}function nks(s){return s.kind===264?s.name?`class '${s.name.text}'`:"anonymous class declaration":s.name?`class expression '${s.name.text}'`:"anonymous class expression"}function iks(s){return s.kind===269?`namespace '${s.parent.name.getText()}'`:s.externalModuleIndicator?0:1}function sks(s,c,{usages:g,typeParameterUsages:d,substitutions:h},_,S,R){let T=R.program.getTypeChecker(),W=Mg(R.program.getCompilerOptions()),V=x0.createImportAdder(R.file,R.program,R.preferences,R.host),M=c.getSourceFile(),ee=GU(xa(c)?"newMethod":"newFunction",M),re=wo(c),ge=me.createIdentifier(ee),Ie,_e=[],Ee=[],Ne;g.forEach((nt,Dt)=>{let tr;if(!re){let Gr=T.getTypeOfSymbolAtLocation(nt.symbol,nt.node);Gr=T.getBaseTypeOfLiteralType(Gr),tr=x0.typeToAutoImportableTypeNode(T,V,Gr,c,W,1,8)}let ur=me.createParameterDeclaration(void 0,void 0,Dt,void 0,tr);_e.push(ur),nt.usage===2&&(Ne||(Ne=[])).push(nt),Ee.push(me.createIdentifier(Dt))});let Te=Do(d.values(),nt=>({type:nt,declaration:cks(nt,R.startPosition)}));Te.sort(lks);let Ze=Te.length===0?void 0:Xt(Te,({declaration:nt})=>nt),We=Ze!==void 0?Ze.map(nt=>me.createTypeReferenceNode(nt.name,void 0)):void 0;if(un(s)&&!re){let nt=T.getContextualType(s);Ie=T.typeToTypeNode(nt,c,1,8)}let{body:Ue,returnValueProperty:$e}=gks(s,_,Ne,h,!!(S.facts&1));Vy(Ue);let Ye,Tt=!!(S.facts&16);if(xa(c)){let nt=re?[]:[me.createModifier(123)];S.facts&32&&nt.push(me.createModifier(126)),S.facts&4&&nt.push(me.createModifier(134)),Ye=me.createMethodDeclaration(nt.length?nt:void 0,S.facts&2?me.createToken(42):void 0,ge,void 0,Ze,_e,Ie,Ue)}else Tt&&_e.unshift(me.createParameterDeclaration(void 0,void 0,"this",void 0,T.typeToTypeNode(T.getTypeAtLocation(S.thisNode),c,1,8),void 0)),Ye=me.createFunctionDeclaration(S.facts&4?[me.createToken(134)]:void 0,S.facts&2?me.createToken(42):void 0,ge,Ze,_e,Ie,Ue);let ot=xo.ChangeTracker.fromContext(R),Qe=(n9(S.range)?Ei(S.range):S.range).end,mt=pks(Qe,c);mt?ot.insertNodeBefore(R.file,mt,Ye,!0):ot.insertNodeAtEndOfScope(R.file,c,Ye),V.writeFixes(ot);let ht=[],_t=uks(c,S,ee);Tt&&Ee.unshift(me.createIdentifier("this"));let Rt=me.createCallExpression(Tt?me.createPropertyAccessExpression(_t,"call"):_t,We,Ee);if(S.facts&2&&(Rt=me.createYieldExpression(me.createToken(42),Rt)),S.facts&4&&(Rt=me.createAwaitExpression(Rt)),oYt(s)&&(Rt=me.createJsxExpression(void 0,Rt)),_.length&&!Ne)if(pe.assert(!$e,"Expected no returnValueProperty"),pe.assert(!(S.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),_.length===1){let nt=_[0];ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(nt.name),void 0,JA(nt.type),Rt)],nt.parent.flags)))}else{let nt=[],Dt=[],tr=_[0].parent.flags,ur=!1;for(let dt of _){nt.push(me.createBindingElement(void 0,void 0,JA(dt.name)));let pr=T.typeToTypeNode(T.getBaseTypeOfLiteralType(T.getTypeAtLocation(dt)),c,1,8);Dt.push(me.createPropertySignature(void 0,dt.symbol.name,void 0,pr)),ur=ur||dt.type!==void 0,tr=tr&dt.parent.flags}let Gr=ur?me.createTypeLiteralNode(Dt):void 0;Gr&&ti(Gr,1),ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(me.createObjectBindingPattern(nt),void 0,Gr,Rt)],tr)))}else if(_.length||Ne){if(_.length)for(let Dt of _){let tr=Dt.parent.flags;tr&2&&(tr=tr&-3|1),ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Dt.symbol.name,void 0,Gt(Dt.type))],tr)))}$e&&ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration($e,void 0,Gt(Ie))],1)));let nt=sYt(_,Ne);$e&&nt.unshift(me.createShorthandPropertyAssignment($e)),nt.length===1?(pe.assert(!$e,"Shouldn't have returnValueProperty here"),ht.push(me.createExpressionStatement(me.createAssignment(nt[0].name,Rt))),S.facts&1&&ht.push(me.createReturnStatement())):(ht.push(me.createExpressionStatement(me.createAssignment(me.createObjectLiteralExpression(nt),Rt))),$e&&ht.push(me.createReturnStatement(me.createIdentifier($e))))}else S.facts&1?ht.push(me.createReturnStatement(Rt)):n9(S.range)?ht.push(me.createExpressionStatement(Rt)):ht.push(Rt);n9(S.range)?ot.replaceNodeRangeWithNodes(R.file,ma(S.range),Ei(S.range),ht):ot.replaceNodeWithNodes(R.file,S.range,ht);let Lt=ot.getChanges(),Pt=(n9(S.range)?ma(S.range):S.range).getSourceFile().fileName,_r=m1e(Lt,Pt,ee,!1);return{renameFilename:Pt,renameLocation:_r,edits:Lt};function Gt(nt){if(nt===void 0)return;let Dt=JA(nt),tr=Dt;for(;fv(tr);)tr=tr.type;return aS(tr)&&de(tr.types,ur=>ur.kind===157)?Dt:me.createUnionTypeNode([Dt,me.createKeywordTypeNode(157)])}}function oks(s,c,{substitutions:g},d,h){let _=h.program.getTypeChecker(),S=c.getSourceFile(),R=ZHt(s,c,_,S),T=wo(c),W=T||!_.isContextSensitive(s)?void 0:_.typeToTypeNode(_.getContextualType(s),c,1,8),V=Aks(QA(s),g);({variableType:W,initializer:V}=Ie(W,V)),Vy(V);let M=xo.ChangeTracker.fromContext(h);if(xa(c)){pe.assert(!T,"Cannot extract to a JS class");let _e=[];_e.push(me.createModifier(123)),d&32&&_e.push(me.createModifier(126)),_e.push(me.createModifier(148));let Ee=me.createPropertyDeclaration(_e,R,void 0,W,V),Ne=me.createPropertyAccessExpression(d&32?me.createIdentifier(c.name.getText()):me.createThis(),me.createIdentifier(R));oYt(s)&&(Ne=me.createJsxExpression(void 0,Ne));let Te=s.pos,Ze=fks(Te,c);M.insertNodeBefore(h.file,Ze,Ee,!0),M.replaceNode(h.file,s,Ne)}else{let _e=me.createVariableDeclaration(R,void 0,W,V),Ee=aks(s,c);if(Ee){M.insertNodeBefore(h.file,Ee,_e);let Ne=me.createIdentifier(R);M.replaceNode(h.file,s,Ne)}else if(s.parent.kind===245&&c===ji(s,nYt)){let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2));M.replaceNode(h.file,s.parent,Ne)}else{let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2)),Te=Iks(s,c);if(Te.pos===0?M.insertNodeAtTopOfFile(h.file,Ne,!1):M.insertNodeBefore(h.file,Te,Ne,!1),s.parent.kind===245)M.delete(h.file,s.parent);else{let Ze=me.createIdentifier(R);oYt(s)&&(Ze=me.createJsxExpression(void 0,Ze)),M.replaceNode(h.file,s,Ze)}}}let ee=M.getChanges(),re=s.getSourceFile().fileName,ge=m1e(ee,re,R,!0);return{renameFilename:re,renameLocation:ge,edits:ee};function Ie(_e,Ee){if(_e===void 0)return{variableType:_e,initializer:Ee};if(!UA(Ee)&&!lA(Ee)||Ee.typeParameters)return{variableType:_e,initializer:Ee};let Ne=_.getTypeAtLocation(s),Te=Ps(_.getSignaturesOfType(Ne,0));if(!Te)return{variableType:_e,initializer:Ee};if(Te.getTypeParameters())return{variableType:_e,initializer:Ee};let Ze=[],We=!1;for(let Ue of Ee.parameters)if(Ue.type)Ze.push(Ue);else{let $e=_.getTypeAtLocation(Ue);$e===_.getAnyType()&&(We=!0),Ze.push(me.updateParameterDeclaration(Ue,Ue.modifiers,Ue.dotDotDotToken,Ue.name,Ue.questionToken,Ue.type||_.typeToTypeNode($e,c,1,8),Ue.initializer))}if(We)return{variableType:_e,initializer:Ee};if(_e=void 0,lA(Ee))Ee=me.updateArrowFunction(Ee,LB(s)?$R(s):void 0,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1,8),Ee.equalsGreaterThanToken,Ee.body);else{if(Te&&Te.thisParameter){let Ue=Nc(Ze);if(!Ue||Ir(Ue.name)&&Ue.name.escapedText!=="this"){let $e=_.getTypeOfSymbolAtLocation(Te.thisParameter,s);Ze.splice(0,0,me.createParameterDeclaration(void 0,void 0,"this",void 0,_.typeToTypeNode($e,c,1,8)))}}Ee=me.updateFunctionExpression(Ee,LB(s)?$R(s):void 0,Ee.asteriskToken,Ee.name,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1),Ee.body)}return{variableType:_e,initializer:Ee}}}function aks(s,c){let g;for(;s!==void 0&&s!==c;){if(nc(s)&&s.initializer===g&&u_(s.parent)&&s.parent.declarations.length>1)return s;g=s,s=s.parent}}function cks(s,c){let g,d=s.symbol;if(d&&d.declarations)for(let h of d.declarations)(g===void 0||h.pos0;if($u(s)&&!_&&d.size===0)return{body:me.createBlock(s.statements,!0),returnValueProperty:void 0};let S,R=!1,T=me.createNodeArray($u(s)?s.statements.slice(0):[Lc(s)?s:me.createReturnStatement(QA(s))]);if(_||d.size){let V=Ws(T,W,Lc).slice();if(_&&!h&&Lc(s)){let M=sYt(c,g);M.length===1?V.push(me.createReturnStatement(M[0].name)):V.push(me.createReturnStatement(me.createObjectLiteralExpression(M)))}return{body:me.createBlock(V,!0),returnValueProperty:S}}else return{body:me.createBlock(T,!0),returnValueProperty:void 0};function W(V){if(!R&&I2(V)&&_){let M=sYt(c,g);return V.expression&&(S||(S="__return"),M.unshift(me.createPropertyAssignment(S,Mr(V.expression,W,un)))),M.length===1?me.createReturnStatement(M[0].name):me.createReturnStatement(me.createObjectLiteralExpression(M))}else{let M=R;R=R||kd(V)||xa(V);let ee=d.get(rd(V).toString()),re=ee?JA(ee):_s(V,W,void 0);return R=M,re}}}function Aks(s,c){return c.size?g(s):s;function g(d){let h=c.get(rd(d).toString());return h?JA(h):_s(d,g,void 0)}}function dks(s){if(kd(s)){let c=s.body;if($u(c))return c.statements}else{if(_N(s)||ll(s))return s.statements;if(xa(s))return s.members;}return E}function pks(s,c){return de(dks(c),g=>g.pos>=s&&kd(g)&&!Tc(g))}function fks(s,c){let g=c.members;pe.assert(g.length>0,"Found no members");let d,h=!0;for(let _ of g){if(_.pos>s)return d||g[0];if(h&&!pi(_)){if(d!==void 0)return _;h=!1}d=_}return d===void 0?pe.fail():d}function Iks(s,c){pe.assert(!xa(c));let g;for(let d=s;d!==c;d=d.parent)nYt(d)&&(g=d);for(let d=(g||s).parent;;d=d.parent){if(Pz(d)){let h;for(let _ of d.statements){if(_.pos>s.pos)break;h=_}return!h&&Iie(d)?(pe.assert(ade(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):pe.checkDefined(h,"prevStatement failed to get set")}pe.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function sYt(s,c){let g=At(s,h=>me.createShorthandPropertyAssignment(h.symbol.name)),d=At(c,h=>me.createShorthandPropertyAssignment(h.symbol.name));return g===void 0?d:d===void 0?g:g.concat(d)}function n9(s){return Ki(s)}function hks(s,c){return n9(s.range)?{pos:ma(s.range).getStart(c),end:Ei(s.range).getEnd()}:s.range}function mks(s,c,g,d,h,_){let S=new Map,R=[],T=[],W=[],V=[],M=[],ee=new Map,re=[],ge,Ie=n9(s.range)?s.range.length===1&&VC(s.range[0])?s.range[0].expression:void 0:s.range,_e;if(Ie===void 0){let ht=s.range,_t=ma(ht).getStart(),Rt=Ei(ht).end;_e=qh(d,_t,Rt-_t,F_.expressionExpected)}else h.getTypeAtLocation(Ie).flags&147456&&(_e=mo(Ie,F_.uselessConstantType));for(let ht of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),T.push(new Map),W.push([]);let _t=[];_e&&_t.push(_e),xa(ht)&&wo(ht)&&_t.push(mo(ht,F_.cannotExtractToJSClass)),lA(ht)&&!$u(ht.body)&&_t.push(mo(ht,F_.cannotExtractToExpressionArrowFunction)),V.push(_t)}let Ee=new Map,Ne=n9(s.range)?me.createBlock(s.range):s.range,Te=n9(s.range)?ma(s.range):s.range,Ze=We(Te);if($e(Ne),Ze&&!n9(s.range)&&!EN(s.range)){let ht=h.getContextualType(s.range);Ue(ht)}if(S.size>0){let ht=new Map,_t=0;for(let Rt=Te;Rt!==void 0&&_t{R[_t].typeParameterUsages.set(Ke,Lt)}),_t++),Kre(Rt))for(let Lt of ZD(Rt)){let Ke=h.getTypeAtLocation(Lt);S.has(Ke.id.toString())&&ht.set(Ke.id.toString(),Ke)}pe.assert(_t===c.length,"Should have iterated all scopes")}if(M.length){let ht=PJ(c[0],c[0].parent)?c[0]:tS(c[0]);Lu(ht,ot)}for(let ht=0;ht0&&(_t.usages.size>0||_t.typeParameterUsages.size>0)){let Ke=n9(s.range)?s.range[0]:s.range;V[ht].push(mo(Ke,F_.cannotAccessVariablesFromNestedScopes))}s.facts&16&&xa(c[ht])&&W[ht].push(mo(s.thisNode,F_.cannotExtractFunctionsContainingThisToMethod));let Rt=!1,Lt;if(R[ht].usages.forEach(Ke=>{Ke.usage===2&&(Rt=!0,Ke.symbol.flags&106500&&Ke.symbol.valueDeclaration&&Gb(Ke.symbol.valueDeclaration,8)&&(Lt=Ke.symbol.valueDeclaration))}),pe.assert(n9(s.range)||re.length===0,"No variable declarations expected if something was extracted"),Rt&&!n9(s.range)){let Ke=mo(s.range,F_.cannotWriteInExpression);W[ht].push(Ke),V[ht].push(Ke)}else if(Lt&&ht>0){let Ke=mo(Lt,F_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);W[ht].push(Ke),V[ht].push(Ke)}else if(ge){let Ke=mo(ge,F_.cannotExtractExportedEntity);W[ht].push(Ke),V[ht].push(Ke)}}return{target:Ne,usagesPerScope:R,functionErrorsPerScope:W,constantErrorsPerScope:V,exposedVariableDeclarations:re};function We(ht){return!!ji(ht,_t=>Kre(_t)&&ZD(_t).length!==0)}function Ue(ht){let _t=h.getSymbolWalker(()=>(_.throwIfCancellationRequested(),!0)),{visitedTypes:Rt}=_t.walkType(ht);for(let Lt of Rt)Lt.isTypeParameter()&&S.set(Lt.id.toString(),Lt)}function $e(ht,_t=1){if(Ze){let Rt=h.getTypeAtLocation(ht);Ue(Rt)}if(jh(ht)&&ht.symbol&&M.push(ht),Jm(ht))$e(ht.left,2),$e(ht.right);else if(iN(ht))$e(ht.operand,2);else if(jo(ht)||Yg(ht))Lu(ht,$e);else if(Ir(ht)){if(!ht.parent||zi(ht.parent)&&ht!==ht.parent.left||jo(ht.parent)&&ht!==ht.parent.expression)return;Ye(ht,_t,ww(ht))}else Lu(ht,$e)}function Ye(ht,_t,Rt){let Lt=Tt(ht,_t,Rt);if(Lt)for(let Ke=0;Ke=_t)return Ke;if(Ee.set(Ke,_t),Pt){for(let nt of R)nt.usages.get(ht.text)&&nt.usages.set(ht.text,{usage:_t,symbol:Lt,node:ht});return Ke}let _r=Lt.getDeclarations(),Gt=_r&&de(_r,nt=>nt.getSourceFile()===d);if(Gt&&!l1e(g,Gt.getStart(),Gt.end)){if(s.facts&2&&_t===2){let nt=mo(ht,F_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let Dt of W)Dt.push(nt);for(let Dt of V)Dt.push(nt)}for(let nt=0;ntLt.symbol===_t);if(Rt)if(nc(Rt)){let Lt=Rt.symbol.id.toString();ee.has(Lt)||(re.push(Rt),ee.set(Lt,!0))}else ge=ge||Rt}Lu(ht,ot)}function Qe(ht){return ht.parent&&a0(ht.parent)&&ht.parent.name===ht?h.getShorthandAssignmentValueSymbol(ht.parent):h.getSymbolAtLocation(ht)}function mt(ht,_t,Rt){if(!ht)return;let Lt=ht.getDeclarations();if(Lt&&Lt.some(Pt=>Pt.parent===_t))return me.createIdentifier(ht.name);let Ke=mt(ht.parent,_t,Rt);if(Ke!==void 0)return Rt?me.createQualifiedName(Ke,me.createIdentifier(ht.name)):me.createPropertyAccessExpression(Ke,ht.name)}}function Cks(s){return ji(s,c=>c.parent&&ion(c)&&!fo(c.parent))}function ion(s){let{parent:c}=s;switch(c.kind){case 307:return!1}switch(s.kind){case 11:return c.kind!==273&&c.kind!==277;case 231:case 207:case 209:return!1;case 80:return c.kind!==209&&c.kind!==277&&c.kind!==282}return!0}function oYt(s){return aYt(s)||(bN(s)||_U(s)||P3(s))&&(bN(s.parent)||P3(s.parent))}function aYt(s){return Zg(s)&&s.parent&&EN(s.parent)}var _ks={},Unt="Generate 'get' and 'set' accessors",cYt=Bu(Z.Generate_get_and_set_accessors),lYt={name:Unt,description:cYt,kind:"refactor.rewrite.property.generateAccessors"};Px(Unt,{kinds:[lYt.kind],getEditsForAction:function(c,g){if(!c.endPosition)return;let d=x0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);pe.assert(d&&!MF(d),"Expected applicable refactor info");let h=x0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,g);if(!h)return;let _=c.file.fileName,S=d.renameAccessor?d.accessorName:d.fieldName,T=(Ir(S)?0:-1)+m1e(h,_,S.text,Si(d.declaration));return{renameFilename:_,renameLocation:T,edits:h}},getAvailableActions(s){if(!s.endPosition)return E;let c=x0.getAccessorConvertiblePropertyAtPosition(s.file,s.program,s.startPosition,s.endPosition,s.triggerReason==="invoked");return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Unt,description:cYt,actions:[{...lYt,notApplicableReason:c.error}]}]:E:[{name:Unt,description:cYt,actions:[lYt]}]:E}});var yks={},Knt="Infer function return type",uYt=Bu(Z.Infer_function_return_type),jnt={name:Knt,description:uYt,kind:"refactor.rewrite.function.returnType"};Px(Knt,{kinds:[jnt.kind],getEditsForAction:bks,getAvailableActions:Eks});function bks(s){let c=son(s);if(c&&!MF(c))return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,d=>Sks(s.file,d,c.declaration,c.returnTypeNode))}}function Eks(s){let c=son(s);return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Knt,description:uYt,actions:[{...jnt,notApplicableReason:c.error}]}]:E:[{name:Knt,description:uYt,actions:[jnt]}]:E}function Sks(s,c,g,d){let h=qd(g,22,s),_=lA(g)&&h===void 0,S=_?ma(g.parameters):h;S&&(_&&(c.insertNodeBefore(s,S,me.createToken(21)),c.insertNodeAfter(s,S,me.createToken(22))),c.insertNodeAt(s,S.end,d,{prefix:": "}))}function son(s){if(wo(s.file)||!e5(jnt.kind,s.kind))return;let c=Lb(s.file,s.startPosition),g=ji(c,S=>$u(S)||S.parent&&lA(S.parent)&&(S.kind===39||S.parent.body===S)?"quit":vks(S));if(!g||!g.body||g.type)return{error:Bu(Z.Return_type_must_be_inferred_from_a_function)};let d=s.program.getTypeChecker(),h;if(d.isImplementationOfOverload(g)){let S=d.getTypeAtLocation(g).getCallSignatures();S.length>1&&(h=d.getUnionType(Xt(S,R=>R.getReturnType())))}if(!h){let S=d.getSignatureFromDeclaration(g);if(S){let R=d.getTypePredicateOfSignature(S);if(R&&R.type){let T=d.typePredicateToTypePredicateNode(R,g,1,8);if(T)return{declaration:g,returnTypeNode:T}}else h=d.getReturnTypeOfSignature(S)}}if(!h)return{error:Bu(Z.Could_not_determine_function_return_type)};let _=d.typeToTypeNode(h,g,1,8);if(_)return{declaration:g,returnTypeNode:_}}function vks(s){switch(s.kind){case 263:case 219:case 220:case 175:return!0;default:return!1}}var oon=(s=>(s[s.typeOffset=8]="typeOffset",s[s.modifierMask=255]="modifierMask",s))(oon||{}),aon=(s=>(s[s.class=0]="class",s[s.enum=1]="enum",s[s.interface=2]="interface",s[s.namespace=3]="namespace",s[s.typeParameter=4]="typeParameter",s[s.type=5]="type",s[s.parameter=6]="parameter",s[s.variable=7]="variable",s[s.enumMember=8]="enumMember",s[s.property=9]="property",s[s.function=10]="function",s[s.member=11]="member",s))(aon||{}),con=(s=>(s[s.declaration=0]="declaration",s[s.static=1]="static",s[s.async=2]="async",s[s.readonly=3]="readonly",s[s.defaultLibrary=4]="defaultLibrary",s[s.local=5]="local",s))(con||{});function lon(s,c,g,d){let h=gYt(s,c,g,d);pe.assert(h.spans.length%3===0);let _=h.spans,S=[];for(let R=0;R<_.length;R+=3)S.push({textSpan:zd(_[R],_[R+1]),classificationType:_[R+2]});return S}function gYt(s,c,g,d){return{spans:Bks(s,g,d,c),endOfLineState:0}}function Bks(s,c,g,d){let h=[];return s&&c&&wks(s,c,g,(S,R,T)=>{h.push(S.getStart(c),S.getWidth(c),(R+1<<8)+T)},d),h}function wks(s,c,g,d,h){let _=s.getTypeChecker(),S=!1;function R(T){switch(T.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 220:h.throwIfCancellationRequested()}if(!T||!q2(g,T.pos,T.getFullWidth())||T.getFullWidth()===0)return;let W=S;if((bN(T)||_U(T))&&(S=!0),fie(T)&&(S=!1),Ir(T)&&!S&&!Dks(T)&&!oz(T.escapedText)){let V=_.getSymbolAtLocation(T);if(V){V.flags&2097152&&(V=_.getAliasedSymbol(V));let M=Tks(V,DU(T));if(M!==void 0){let ee=0;T.parent&&(hg(T.parent)||Aon.get(T.parent.kind)===M)&&T.parent.name===T&&(ee=1),M===6&&gon(T)&&(M=9),M=Rks(_,T,M);let re=V.valueDeclaration;if(re){let ge=Hc(re),Ie=dm(re);ge&256&&(ee|=2),ge&1024&&(ee|=4),M!==0&&M!==2&&(ge&8||Ie&2||V.getFlags()&8)&&(ee|=8),(M===7||M===10)&&Nks(re,c)&&(ee|=32),s.isSourceFileDefaultLibrary(re.getSourceFile())&&(ee|=16)}else V.declarations&&V.declarations.some(ge=>s.isSourceFileDefaultLibrary(ge.getSourceFile()))&&(ee|=16);d(T,M,ee)}}}Lu(T,R),S=W}R(c)}function Tks(s,c){let g=s.getFlags();if(g&32)return 0;if(g&384)return 1;if(g&524288)return 5;if(g&64){if(c&2)return 2}else if(g&262144)return 4;let d=s.valueDeclaration||s.declarations&&s.declarations[0];return d&&hg(d)&&(d=uon(d)),d&&Aon.get(d.kind)}function Rks(s,c,g){if(g===7||g===9||g===6){let d=s.getTypeAtLocation(c);if(d){let h=_=>_(d)||d.isUnion()&&d.types.some(_);if(g!==6&&h(_=>_.getConstructSignatures().length>0))return 0;if(h(_=>_.getCallSignatures().length>0)&&!h(_=>_.getProperties().length>0)||kks(c))return g===9?11:10}}return g}function Nks(s,c){return hg(s)&&(s=uon(s)),nc(s)?(!ll(s.parent.parent.parent)||iQ(s.parent))&&s.getSourceFile()===c:ih(s)?!ll(s.parent)&&s.getSourceFile()===c:!1}function uon(s){for(;;)if(hg(s.parent.parent))s=s.parent.parent;else return s.parent.parent}function Dks(s){let c=s.parent;return c&&(Vw(c)||uy(c)||Zx(c))}function kks(s){for(;gon(s);)s=s.parent;return Zl(s.parent)&&s.parent.expression===s}function gon(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s}var Aon=new Map([[261,7],[170,6],[173,9],[268,3],[267,1],[307,8],[264,0],[175,11],[263,10],[219,10],[174,11],[178,9],[179,9],[172,9],[265,2],[266,5],[169,4],[304,9],[305,9]]),don="0.8";function pon(s,c,g,d){let h=z6(s)?new AYt(s,c,g):s===80?new Ion(80,c,g):s===81?new hon(81,c,g):new fon(s,c,g);return h.parent=d,h.flags=d.flags&101441536,h}var AYt=class{constructor(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(s){pe.assert(!wB(this.pos)&&!wB(this.end),s||"Node must have a real position for this operation")}getSourceFile(){return ms(this)}getStart(s,c){return this.assertHasRealPosition(),MD(this,s,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(s){return this.assertHasRealPosition(),this.getEnd()-this.getStart(s)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(s){return this.assertHasRealPosition(),this.getStart(s)-this.pos}getFullText(s){return this.assertHasRealPosition(),(s||this.getSourceFile()).text.substring(this.pos,this.end)}getText(s){return this.assertHasRealPosition(),s||(s=this.getSourceFile()),s.text.substring(this.getStart(s),this.getEnd())}getChildCount(s){return this.getChildren(s).length}getChildAt(s,c){return this.getChildren(c)[s]}getChildren(s=ms(this)){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),E$e(this,s)??UPt(this,s,xks(this,s))}getFirstToken(s){this.assertHasRealPosition();let c=this.getChildren(s);if(!c.length)return;let g=de(c,d=>d.kind<310||d.kind>352);return g.kind<167?g:g.getFirstToken(s)}getLastToken(s){this.assertHasRealPosition();let c=this.getChildren(s),g=li(c);if(g)return g.kind<167?g:g.getLastToken(s)}forEachChild(s,c){return Lu(this,s,c)}};function xks(s,c){let g=[];if(i7(s))return s.forEachChild(S=>{g.push(S)}),g;A_.setText((c||s.getSourceFile()).text);let d=s.pos,h=S=>{DPe(g,d,S.pos,s),g.push(S),d=S.end},_=S=>{DPe(g,d,S.pos,s),g.push(Gks(S,s)),d=S.end};return F(s.jsDoc,h),d=s.pos,s.forEachChild(h,_),DPe(g,d,s.end,s),A_.setText(void 0),g}function DPe(s,c,g,d){for(A_.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function znt(s,c){if(!s)return E;let g=n5.getJsDocTagsFromDeclarations(s,c);if(c&&(g.length===0||s.some(mon))){let d=new Set;for(let h of s){let _=Con(c,h,S=>{var R;if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualJsDocTags(h,c):((R=S.declarations)==null?void 0:R.length)===1?S.getJsDocTags(c):void 0});_&&(g=[..._,...g])}}return g}function kPe(s,c){if(!s)return E;let g=n5.getJsDocCommentsFromDeclarations(s,c);if(c&&(g.length===0||s.some(mon))){let d=new Set;for(let h of s){let _=Con(c,h,S=>{if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualDocumentationComment(h,c):S.getDocumentationComment(c)});_&&(g=g.length===0?_.slice():_.concat(Uie(),g))}}return g}function Con(s,c,g){var d;let h=((d=c.parent)==null?void 0:d.kind)===177?c.parent.parent:c.parent;if(!h)return;let _=zh(c);return X(R7(h),S=>{let R=s.getTypeAtLocation(S),T=_&&R.symbol?s.getTypeOfSymbol(R.symbol):R,W=s.getPropertyOfType(T,c.symbol.name);return W?g(W):void 0})}var Vks=class extends AYt{constructor(s,c,g){super(s,c,g)}update(s,c){return V$e(this,s,c)}getLineAndCharacterOfPosition(s){return Ra(this,s)}getLineStarts(){return rn(this)}getPositionOfLineAndCharacter(s,c,g){return xn(rn(this),s,c,this.text,g)}getLineEndOfPosition(s){let{line:c}=this.getLineAndCharacterOfPosition(s),g=this.getLineStarts(),d;c+1>=g.length&&(d=this.getEnd()),d||(d=g[c+1]-1);let h=this.getFullText();return h[d]===` +`&&h[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let s=dl();return this.forEachChild(h),s;function c(_){let S=d(_);S&&s.add(S,_)}function g(_){let S=s.get(_);return S||s.set(_,S=[]),S}function d(_){let S=Cw(_);return S&&(Un(S)&&jo(S.expression)?S.expression.name.text:VI(S)?p1e(S):void 0)}function h(_){switch(_.kind){case 263:case 219:case 175:case 174:let S=_,R=d(S);if(R){let V=g(R),M=li(V);M&&S.parent===M.parent&&S.symbol===M.symbol?S.body&&!M.body&&(V[V.length-1]=S):V.push(S)}Lu(_,h);break;case 264:case 232:case 265:case 266:case 267:case 268:case 272:case 282:case 277:case 274:case 275:case 178:case 179:case 188:c(_),Lu(_,h);break;case 170:if(!Ga(_,31))break;case 261:case 209:{let V=_;if(Nu(V.name)){Lu(V.name,h);break}V.initializer&&h(V.initializer)}case 307:case 173:case 172:c(_);break;case 279:let T=_;T.exportClause&&(mv(T.exportClause)?F(T.exportClause.elements,h):h(T.exportClause.name));break;case 273:let W=_.importClause;W&&(W.name&&c(W.name),W.namedBindings&&(W.namedBindings.kind===275?c(W.namedBindings):F(W.namedBindings.elements,h)));break;case 227:nI(_)!==0&&c(_);default:Lu(_,h)}}}},Pks=class{constructor(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}getLineAndCharacterOfPosition(s){return Ra(this,s)}};function Wks(){return{getNodeConstructor:()=>AYt,getTokenConstructor:()=>fon,getIdentifierConstructor:()=>Ion,getPrivateIdentifierConstructor:()=>hon,getSourceFileConstructor:()=>Vks,getSymbolConstructor:()=>Fks,getTypeConstructor:()=>Zks,getSignatureConstructor:()=>Lks,getSourceMapSourceConstructor:()=>Pks}}function D1e(s){let c=!0;for(let d in s)if(Da(s,d)&&!_on(d)){c=!1;break}if(c)return s;let g={};for(let d in s)if(Da(s,d)){let h=_on(d)?d:d.charAt(0).toLowerCase()+d.substr(1);g[h]=s[d]}return g}function _on(s){return!s.length||s.charAt(0)===s.charAt(0).toLowerCase()}function k1e(s){return s?At(s,c=>c.text).join(""):""}function xPe(){return{target:1,jsx:1}}function qnt(){return x0.getSupportedErrorCodes()}var Oks=class{constructor(s){this.host=s}getCurrentSourceFile(s){var c,g,d,h,_,S,R,T;let W=this.host.getScriptSnapshot(s);if(!W)throw new Error("Could not find file: '"+s+"'.");let V=$rt(s,this.host),M=this.host.getScriptVersion(s),ee;if(this.currentFileName!==s){let re={languageVersion:99,impliedNodeFormat:UEe(Ou(s,this.host.getCurrentDirectory(),((d=(g=(c=this.host).getCompilerHost)==null?void 0:g.call(c))==null?void 0:d.getCanonicalFileName)||JD(this.host)),(T=(R=(S=(_=(h=this.host).getCompilerHost)==null?void 0:_.call(h))==null?void 0:S.getModuleResolutionCache)==null?void 0:R.call(S))==null?void 0:T.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:Vne(this.host.getCompilationSettings()),jsDocParsingMode:0};ee=GPe(s,W,re,M,!0,V)}else if(this.currentFileVersion!==M){let re=W.getChangeRange(this.currentFileScriptSnapshot);ee=$nt(this.currentSourceFile,W,M,re)}return ee&&(this.currentFileVersion=M,this.currentFileName=s,this.currentFileScriptSnapshot=W,this.currentSourceFile=ee),this.currentSourceFile}};function yon(s,c,g){s.version=g,s.scriptSnapshot=c}function GPe(s,c,g,d,h,_){let S=vz(s,Lz(c),g,h,_);return yon(S,c,d),S}function $nt(s,c,g,d,h){if(d&&g!==s.version){let S,R=d.span.start!==0?s.text.substr(0,d.span.start):"",T=Rs(d.span)!==s.text.length?s.text.substr(Rs(d.span)):"";if(d.newLength===0)S=R&&T?R+T:R||T;else{let V=c.getText(d.span.start,d.span.start+d.newLength);S=R&&T?R+V+T:R?R+V:V+T}let W=V$e(s,S,d,h);return yon(W,c,g),W.nameTable=void 0,s!==W&&s.scriptSnapshot&&(s.scriptSnapshot.dispose&&s.scriptSnapshot.dispose(),s.scriptSnapshot=void 0),W}let _={languageVersion:s.languageVersion,impliedNodeFormat:s.impliedNodeFormat,setExternalModuleIndicator:s.setExternalModuleIndicator,jsDocParsingMode:s.jsDocParsingMode};return GPe(s.fileName,c,_,g,!0,s.scriptKind)}var Mks={isCancellationRequested:As,throwIfCancellationRequested:Dc},Hks=class{constructor(s){this.cancellationToken=s}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new By}},pYt=class{constructor(s,c=20){this.hostCancellationToken=s,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let s=Fg();return Math.abs(s-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=s,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new By}},bon=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],Yks=[...bon,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];function fYt(s,c=PMt(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames(),s.getCurrentDirectory(),s.jsDocParsingMode),g){var d;let h;g===void 0?h=0:typeof g=="boolean"?h=g?2:0:h=g;let _=new Oks(s),S,R,T=0,W=s.getCancellationToken?new Hks(s.getCancellationToken()):Mks,V=s.getCurrentDirectory();eLe((d=s.getLocalizedDiagnosticMessages)==null?void 0:d.bind(s));function M(tn){s.log&&s.log(tn)}let ee=y3(s),re=_d(ee),ge=$Mt({useCaseSensitiveFileNames:()=>ee,getCurrentDirectory:()=>V,getProgram:Ne,fileExists:$i(s,s.fileExists),readFile:$i(s,s.readFile),getDocumentPositionMapper:$i(s,s.getDocumentPositionMapper),getSourceFileLike:$i(s,s.getSourceFileLike),log:M});function Ie(tn){let wn=S.getSourceFile(tn);if(!wn){let Mn=new Error(`Could not find source file: '${tn}'.`);throw Mn.ProgramFiles=S.getSourceFiles().map(ci=>ci.fileName),Mn}return wn}function _e(){s.updateFromProject&&!s.updateFromProjectInProgress?s.updateFromProject():Ee()}function Ee(){var tn,wn,Mn;if(pe.assert(h!==2),s.getProjectVersion){let gu=s.getProjectVersion();if(gu){if(R===gu&&!((tn=s.hasChangedAutomaticTypeDirectiveNames)!=null&&tn.call(s)))return;R=gu}}let ci=s.getTypeRootsVersion?s.getTypeRootsVersion():0;T!==ci&&(M("TypeRoots version has changed; provide new program"),S=void 0,T=ci);let es=s.getScriptFileNames().slice(),Wi=s.getCompilationSettings()||xPe(),Vn=s.hasInvalidatedResolutions||As,Ui=$i(s,s.hasInvalidatedLibResolutions)||As,gs=$i(s,s.hasChangedAutomaticTypeDirectiveNames),fs=(wn=s.getProjectReferences)==null?void 0:wn.call(s),bi,mc={getSourceFile:sh,getSourceFileByPath:dS,getCancellationToken:()=>W,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>ee,getNewLine:()=>uN(Wi),getDefaultLibFileName:gu=>s.getDefaultLibFileName(gu),writeFile:Dc,getCurrentDirectory:()=>V,fileExists:gu=>s.fileExists(gu),readFile:gu=>s.readFile&&s.readFile(gu),getSymlinkCache:$i(s,s.getSymlinkCache),realpath:$i(s,s.realpath),directoryExists:gu=>f1(gu,s),getDirectories:gu=>s.getDirectories?s.getDirectories(gu):[],readDirectory:(gu,bg,KA,TA,oi)=>(pe.checkDefined(s.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),s.readDirectory(gu,bg,KA,TA,oi)),onReleaseOldSourceFile:Xg,onReleaseParsedCommandLine:tm,hasInvalidatedResolutions:Vn,hasInvalidatedLibResolutions:Ui,hasChangedAutomaticTypeDirectiveNames:gs,trace:$i(s,s.trace),resolveModuleNames:$i(s,s.resolveModuleNames),getModuleResolutionCache:$i(s,s.getModuleResolutionCache),createHash:$i(s,s.createHash),resolveTypeReferenceDirectives:$i(s,s.resolveTypeReferenceDirectives),resolveModuleNameLiterals:$i(s,s.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:$i(s,s.resolveTypeReferenceDirectiveReferences),resolveLibrary:$i(s,s.resolveLibrary),useSourceOfProjectReferenceRedirect:$i(s,s.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Dl,jsDocParsingMode:s.jsDocParsingMode,getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)},gg=mc.getSourceFile,{getSourceFileWithCache:Ag}=Fde(mc,gu=>Ou(gu,V,re),(...gu)=>gg.call(mc,...gu));mc.getSourceFile=Ag,(Mn=s.setCompilerHost)==null||Mn.call(s,mc);let _u={useCaseSensitiveFileNames:ee,fileExists:gu=>mc.fileExists(gu),readFile:gu=>mc.readFile(gu),directoryExists:gu=>mc.directoryExists(gu),getDirectories:gu=>mc.getDirectories(gu),realpath:mc.realpath,readDirectory:(...gu)=>mc.readDirectory(...gu),trace:mc.trace,getCurrentDirectory:mc.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:Dc},wI=c.getKeyForCompilationSettings(Wi),AI=new Set;if(Itt(S,es,Wi,(gu,bg)=>s.getScriptVersion(bg),gu=>mc.fileExists(gu),Vn,Ui,gs,Dl,fs)){mc=void 0,bi=void 0,AI=void 0;return}S=KEe({rootNames:es,options:Wi,host:mc,oldProgram:S,projectReferences:fs}),mc=void 0,bi=void 0,AI=void 0,ge.clearCache(),S.getTypeChecker();return;function Dl(gu){let bg=Ou(gu,V,re),KA=bi?.get(bg);if(KA!==void 0)return KA||void 0;let TA=s.getParsedCommandLine?s.getParsedCommandLine(gu):yu(gu);return(bi||(bi=new Map)).set(bg,TA||!1),TA}function yu(gu){let bg=sh(gu,100);if(bg)return bg.path=Ou(gu,V,re),bg.resolvedPath=bg.path,bg.originalFileName=bg.fileName,SEe(bg,_u,Xc(Mo(gu),V),void 0,Xc(gu,V))}function tm(gu,bg,KA){var TA;s.getParsedCommandLine?(TA=s.onReleaseParsedCommandLine)==null||TA.call(s,gu,bg,KA):bg&&jp(bg.sourceFile,KA)}function jp(gu,bg){let KA=c.getKeyForCompilationSettings(bg);c.releaseDocumentWithKey(gu.resolvedPath,KA,gu.scriptKind,gu.impliedNodeFormat)}function Xg(gu,bg,KA,TA){var oi;jp(gu,bg),(oi=s.onReleaseOldSourceFile)==null||oi.call(s,gu,bg,KA,TA)}function sh(gu,bg,KA,TA){return dS(gu,Ou(gu,V,re),bg,KA,TA)}function dS(gu,bg,KA,TA,oi){pe.assert(mc,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let $d=s.getScriptSnapshot(gu);if(!$d)return;let YI=$rt(gu,s),Fh=s.getScriptVersion(gu);if(!oi){let WC=S&&S.getSourceFileByPath(bg);if(WC){if(YI===WC.scriptKind||AI.has(WC.resolvedPath))return c.updateDocumentWithKey(gu,bg,s,wI,$d,Fh,YI,KA);c.releaseDocumentWithKey(WC.resolvedPath,c.getKeyForCompilationSettings(S.getCompilerOptions()),WC.scriptKind,WC.impliedNodeFormat),AI.add(WC.resolvedPath)}}return c.acquireDocumentWithKey(gu,bg,s,wI,$d,Fh,YI,KA)}}function Ne(){if(h===2){pe.assert(S===void 0);return}return _e(),S}function Te(){var tn;return(tn=s.getPackageJsonAutoImportProvider)==null?void 0:tn.call(s)}function Ze(tn,wn){let Mn=S.getTypeChecker(),ci=es();if(!ci)return!1;for(let Vn of tn)for(let Ui of Vn.references){let gs=Wi(Ui);if(pe.assertIsDefined(gs),wn.has(Ui)||Kp.isDeclarationOfSymbol(gs,ci)){wn.add(Ui),Ui.isDefinition=!0;let fs=ePe(Ui,ge,$i(s,s.fileExists));fs&&wn.add(fs)}else Ui.isDefinition=!1}return!0;function es(){for(let Vn of tn)for(let Ui of Vn.references){if(wn.has(Ui)){let fs=Wi(Ui);return pe.assertIsDefined(fs),Mn.getSymbolAtLocation(fs)}let gs=ePe(Ui,ge,$i(s,s.fileExists));if(gs&&wn.has(gs)){let fs=Wi(gs);if(fs)return Mn.getSymbolAtLocation(fs)}}}function Wi(Vn){let Ui=S.getSourceFile(Vn.fileName);if(!Ui)return;let gs=Lb(Ui,Vn.textSpan.start);return Kp.Core.getAdjustedNode(gs,{use:Kp.FindReferencesUse.References})}}function We(){if(S){let tn=c.getKeyForCompilationSettings(S.getCompilerOptions());F(S.getSourceFiles(),wn=>c.releaseDocumentWithKey(wn.resolvedPath,tn,wn.scriptKind,wn.impliedNodeFormat)),S=void 0}}function Ue(){We(),s=void 0}function $e(tn){return _e(),S.getSyntacticDiagnostics(Ie(tn),W).slice()}function Ye(tn){_e();let wn=Ie(tn),Mn=S.getSemanticDiagnostics(wn,W);if(!Ly(S.getCompilerOptions()))return Mn.slice();let ci=S.getDeclarationDiagnostics(wn,W);return[...Mn,...ci]}function Tt(tn,wn){_e();let Mn=Ie(tn),ci=S.getCompilerOptions();if(T3(Mn,ci,S)||!gU(Mn,ci)||S.getCachedSemanticDiagnostics(Mn))return;let es=ot(Mn,wn);if(!es)return;let Wi=EI(es.map(Ui=>wA(Ui.getFullStart(),Ui.getEnd())));return{diagnostics:S.getSemanticDiagnostics(Mn,W,es).slice(),spans:Wi}}function ot(tn,wn){let Mn=[],ci=EI(wn.map(es=>t9(es)));for(let es of ci){let Wi=Qe(tn,es);if(!Wi)return;Mn.push(...Wi)}if(Mn.length)return Mn}function Qe(tn,wn){if(ed(wn,tn))return;let Mn=Yde(tn,Rs(wn))||tn,ci=ji(Mn,Wi=>Og(Wi,wn)),es=[];if(mt(wn,ci,es),tn.end===wn.start+wn.length&&es.push(tn.endOfFileToken),!jt(es,ll))return es}function mt(tn,wn,Mn){return ht(wn,tn)?ed(tn,wn)?(_t(wn,Mn),!0):Pz(wn)?Rt(tn,wn,Mn):xa(wn)?Lt(tn,wn,Mn):(_t(wn,Mn),!0):!1}function ht(tn,wn){let Mn=wn.start+wn.length;return tn.poswn.start}function _t(tn,wn){for(;tn.parent&&!DLe(tn);)tn=tn.parent;wn.push(tn)}function Rt(tn,wn,Mn){let ci=[];return wn.statements.filter(Wi=>mt(tn,Wi,ci)).length===wn.statements.length?(_t(wn,Mn),!0):(Mn.push(...ci),!1)}function Lt(tn,wn,Mn){var ci,es,Wi;let Vn=fs=>e3(fs,tn);if((ci=wn.modifiers)!=null&&ci.some(Vn)||wn.name&&Vn(wn.name)||(es=wn.typeParameters)!=null&&es.some(Vn)||(Wi=wn.heritageClauses)!=null&&Wi.some(Vn))return _t(wn,Mn),!0;let Ui=[];return wn.members.filter(fs=>mt(tn,fs,Ui)).length===wn.members.length?(_t(wn,Mn),!0):(Mn.push(...Ui),!1)}function Ke(tn){return _e(),vnt(Ie(tn),S,W)}function Pt(){return _e(),[...S.getOptionsDiagnostics(W),...S.getGlobalDiagnostics(W)]}function _r(tn,wn,Mn=VB,ci){let es={...Mn,includeCompletionsForModuleExports:Mn.includeCompletionsForModuleExports||Mn.includeExternalModuleExports,includeCompletionsWithInsertText:Mn.includeCompletionsWithInsertText||Mn.includeInsertTextCompletions};return _e(),Jz.getCompletionsAtPosition(s,S,M,Ie(tn),wn,es,Mn.triggerCharacter,Mn.triggerKind,W,ci&&Im.getFormatContext(ci,s),Mn.includeSymbol)}function Gt(tn,wn,Mn,ci,es,Wi=VB,Vn){return _e(),Jz.getCompletionEntryDetails(S,M,Ie(tn),wn,{name:Mn,source:es,data:Vn},s,ci&&Im.getFormatContext(ci,s),Wi,W)}function nt(tn,wn,Mn,ci,es=VB){return _e(),Jz.getCompletionEntrySymbol(S,M,Ie(tn),wn,{name:Mn,source:ci},s,es)}function Dt(tn,wn,Mn,ci){_e();let es=Ie(tn),Wi=Lb(es,wn);if(Wi===es)return;let Vn=S.getTypeChecker(),Ui=Gr(Wi),gs=Uks(Ui,Vn);if(!gs||Vn.isUnknownSymbol(gs)){let _u=dt(es,Ui,wn)?Vn.getTypeAtLocation(Ui):void 0;return _u&&{kind:"",kindModifiers:"",textSpan:Oy(Ui,es),displayParts:Vn.runWithCancellationToken(W,wI=>h1e(wI,_u,kU(Ui),void 0,ci)),documentation:_u.symbol?_u.symbol.getDocumentationComment(Vn):void 0,tags:_u.symbol?_u.symbol.getJsDocTags(Vn):void 0}}let{symbolKind:fs,displayParts:bi,documentation:mc,tags:gg,canIncreaseVerbosityLevel:Ag}=Vn.runWithCancellationToken(W,_u=>i9.getSymbolDisplayPartsDocumentationAndSymbolKind(_u,gs,es,kU(Ui),Ui,void 0,void 0,Mn??dge,ci));return{kind:fs,kindModifiers:i9.getSymbolModifiers(Vn,gs),textSpan:Oy(Ui,es),displayParts:bi,documentation:mc,tags:gg,canIncreaseVerbosityLevel:Ag}}function tr(tn,wn){return _e(),ust.preparePasteEdits(Ie(tn),wn,S.getTypeChecker())}function ur(tn,wn){return _e(),gst.pasteEditsProvider(Ie(tn.targetFile),tn.pastedText,tn.pasteLocations,tn.copiedFrom?{file:Ie(tn.copiedFrom.file),range:tn.copiedFrom.range}:void 0,s,tn.preferences,Im.getFormatContext(wn,s),W)}function Gr(tn){return f2(tn.parent)&&tn.pos===tn.parent.pos?tn.parent.expression:KT(tn.parent)&&tn.pos===tn.parent.pos||uv(tn.parent)&&tn.parent.name===tn||eR(tn.parent)?tn.parent:tn}function dt(tn,wn,Mn){switch(wn.kind){case 80:return wn.flags&16777216&&!wo(wn)&&(wn.parent.kind===172&&wn.parent.name===wn||ji(wn,ci=>ci.kind===170))?!1:!Crt(wn)&&!_rt(wn)&&!s2(wn.parent);case 212:case 167:return!$L(tn,Mn);case 110:case 198:case 108:case 203:return!0;case 237:return uv(wn);default:return!1}}function pr(tn,wn,Mn,ci){return _e(),ise.getDefinitionAtPosition(S,Ie(tn),wn,Mn,ci)}function st(tn,wn){return _e(),ise.getDefinitionAndBoundSpan(S,Ie(tn),wn)}function ir(tn,wn){return _e(),ise.getTypeDefinitionAtPosition(S.getTypeChecker(),Ie(tn),wn)}function zt(tn,wn){return _e(),Kp.getImplementationsAtPosition(S,W,S.getSourceFiles(),Ie(tn),wn)}function Ht(tn,wn,Mn){let ci=iu(tn);pe.assert(Mn.some(Vn=>iu(Vn)===ci)),_e();let es=Xt(Mn,Vn=>S.getSourceFile(Vn)),Wi=Ie(tn);return mPe.getDocumentHighlights(S,W,Wi,wn,es)}function Br(tn,wn,Mn,ci,es){_e();let Wi=Ie(tn),Vn=MVe(Lb(Wi,wn));if(tWe.nodeIsEligibleForRename(Vn))if(Ir(Vn)&&($T(Vn.parent)||rQ(Vn.parent))&&eU(Vn.escapedText)){let{openingElement:Ui,closingElement:gs}=Vn.parent.parent;return[Ui,gs].map(fs=>{let bi=Oy(fs.tagName,Wi);return{fileName:Wi.fileName,textSpan:bi,...Kp.toContextSpan(bi,Wi,fs.parent)}})}else{let Ui=_1(Wi,es??VB),gs=typeof es=="boolean"?es:es?.providePrefixAndSuffixTextForRename;return jn(Vn,wn,{findInStrings:Mn,findInComments:ci,providePrefixAndSuffixTextForRename:gs,use:Kp.FindReferencesUse.Rename},(fs,bi,mc)=>Kp.toRenameLocation(fs,bi,mc,gs||!1,Ui))}}function mn(tn,wn){return _e(),jn(Lb(Ie(tn),wn),wn,{use:Kp.FindReferencesUse.References},Kp.toReferenceEntry)}function jn(tn,wn,Mn,ci){_e();let es=Mn&&Mn.use===Kp.FindReferencesUse.Rename?S.getSourceFiles().filter(Wi=>!S.isSourceFileDefaultLibrary(Wi)):S.getSourceFiles();return Kp.findReferenceOrRenameEntries(S,W,es,tn,wn,Mn,ci)}function Zi(tn,wn){return _e(),Kp.findReferencedSymbols(S,W,S.getSourceFiles(),Ie(tn),wn)}function Ns(tn){return _e(),Kp.Core.getReferencesForFileName(tn,S,S.getSourceFiles()).map(Kp.toReferenceEntry)}function An(tn,wn,Mn,ci=!1,es=!1){_e();let Wi=Mn?[Ie(Mn)]:S.getSourceFiles();return Gin(Wi,S.getTypeChecker(),W,tn,wn,ci,es)}function si(tn,wn,Mn){_e();let ci=Ie(tn),es=s.getCustomTransformers&&s.getCustomTransformers();return k3t(S,ci,!!wn,W,es,Mn)}function ks(tn,wn,{triggerReason:Mn}=VB){_e();let ci=Ie(tn);return J1e.getSignatureHelpItems(S,ci,wn,Mn,W)}function Ic(tn){return _.getCurrentSourceFile(tn)}function su(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Lb(ci,wn);if(es===ci)return;switch(es.kind){case 212:case 167:case 11:case 97:case 112:case 106:case 108:case 110:case 198:case 80:break;default:return}let Wi=es;for(;;)if(Oie(Wi)||K5t(Wi))Wi=Wi.parent;else if(brt(Wi))if(Wi.parent.parent.kind===268&&Wi.parent.parent.body===Wi.parent)Wi=Wi.parent.parent.name;else break;else break;return wA(Wi.getStart(),es.getEnd())}function Zn(tn,wn){let Mn=_.getCurrentSourceFile(tn);return tit.spanInSourceFileAtLocation(Mn,wn)}function ya(tn){return Vin(_.getCurrentSourceFile(tn),W)}function Gl(tn){return Pin(_.getCurrentSourceFile(tn),W)}function ba(tn,wn,Mn){return _e(),(Mn||"original")==="2020"?lon(S,W,Ie(tn),wn):LMt(S.getTypeChecker(),W,Ie(tn),S.getClassifiableNames(),wn)}function Wo(tn,wn,Mn){return _e(),(Mn||"original")==="original"?hnt(S.getTypeChecker(),W,Ie(tn),S.getClassifiableNames(),wn):gYt(S,W,Ie(tn),wn)}function hc(tn,wn){return VMt(W,_.getCurrentSourceFile(tn),wn)}function yr(tn,wn){return mnt(W,_.getCurrentSourceFile(tn),wn)}function hn(tn){let wn=_.getCurrentSourceFile(tn);return Kit.collectElements(wn,W)}let Oi=new Map(Object.entries({19:20,21:22,23:24,32:30}));Oi.forEach((tn,wn)=>Oi.set(tn.toString(),Number(wn)));function lo(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Yie(Mn,wn),es=ci.getStart(Mn)===wn?Oi.get(ci.kind.toString()):void 0,Wi=es&&qd(ci.parent,es,Mn);return Wi?[Oy(ci,Mn),Oy(Wi,Mn)].sort((Vn,Ui)=>Vn.start-Ui.start):E}function pa(tn,wn,Mn){let ci=Fg(),es=D1e(Mn),Wi=_.getCurrentSourceFile(tn);M("getIndentationAtPosition: getCurrentSourceFile: "+(Fg()-ci)),ci=Fg();let Vn=Im.SmartIndenter.getIndentation(wn,Wi,es);return M("getIndentationAtPosition: computeIndentation : "+(Fg()-ci)),Vn}function Oa(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn);return Im.formatSelection(wn,Mn,es,Im.getFormatContext(D1e(ci),s))}function tl(tn,wn){return Im.formatDocument(_.getCurrentSourceFile(tn),Im.getFormatContext(D1e(wn),s))}function Qu(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn),Wi=Im.getFormatContext(D1e(ci),s);if(!$L(es,wn))switch(Mn){case"{":return Im.formatOnOpeningCurly(wn,es,Wi);case"}":return Im.formatOnClosingCurly(wn,es,Wi);case";":return Im.formatOnSemicolon(wn,es,Wi);case` +`:return Im.formatOnEnter(wn,es,Wi)}return[]}function Tg(tn,wn,Mn,ci,es,Wi=VB){_e();let Vn=Ie(tn),Ui=wA(wn,Mn),gs=Im.getFormatContext(es,s);return er(io(ci,yg,Zt),fs=>(W.throwIfCancellationRequested(),x0.getFixes({errorCode:fs,sourceFile:Vn,span:Ui,program:S,host:s,cancellationToken:W,formatContext:gs,preferences:Wi})))}function Cs(tn,wn,Mn,ci=VB){_e(),pe.assert(tn.type==="file");let es=Ie(tn.fileName),Wi=Im.getFormatContext(Mn,s);return x0.getAllFixes({fixId:wn,sourceFile:es,program:S,host:s,cancellationToken:W,formatContext:Wi,preferences:ci})}function Tu(tn,wn,Mn=VB){_e(),pe.assert(tn.type==="file");let ci=Ie(tn.fileName);if(pP(ci))return E;let es=Im.getFormatContext(wn,s),Wi=tn.mode??(tn.skipDestructiveCodeActions?"SortAndCombine":"All");return i5.organizeImports(ci,es,s,S,Mn,Wi)}function Pr(tn,wn,Mn,ci=VB){return OMt(Ne(),tn,wn,s,Im.getFormatContext(Mn,s),ci,ge)}function Pn(tn,wn){let Mn=typeof tn=="string"?wn:tn;return Ki(Mn)?Promise.all(Mn.map(ci=>pt(ci))):pt(Mn)}function pt(tn){let wn=Mn=>Ou(Mn,V,re);return pe.assertEqual(tn.type,"install package"),s.installPackage?s.installPackage({fileName:wn(tn.file),packageName:tn.packageName}):Promise.reject("Host does not implement `installPackage`")}function on(tn,wn,Mn,ci){let es=ci?Im.getFormatContext(ci,s).options:void 0;return n5.getDocCommentTemplateAtPosition(OF(s,es),_.getCurrentSourceFile(tn),wn,Mn)}function it(tn,wn,Mn){if(Mn===60)return!1;let ci=_.getCurrentSourceFile(tn);if(Zz(ci,wn))return!1;if(rMt(ci,wn))return Mn===123;if(Trt(ci,wn))return!1;switch(Mn){case 39:case 34:case 96:return!$L(ci,wn)}return!0}function nr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Gm(wn,Mn);if(!ci)return;let es=ci.kind===32&&$T(ci.parent)?ci.parent.parent:KL(ci)&&bN(ci.parent)?ci.parent:void 0;if(es&&Gi(es))return{newText:``};let Wi=ci.kind===32&&Pw(ci.parent)?ci.parent.parent:KL(ci)&&P3(ci.parent)?ci.parent:void 0;if(Wi&&nn(Wi))return{newText:""}}function Fr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Gm(wn,Mn);if(!ci||ci.parent.kind===308)return;let es="[a-zA-Z0-9:\\-\\._$]*";if(P3(ci.parent.parent)){let Wi=ci.parent.parent.openingFragment,Vn=ci.parent.parent.closingFragment;if(pP(Wi)||pP(Vn))return;let Ui=Wi.getStart(Mn)+1,gs=Vn.getStart(Mn)+2;return wn!==Ui&&wn!==gs?void 0:{ranges:[{start:Ui,length:0},{start:gs,length:0}],wordPattern:es}}else{let Wi=ji(ci.parent,Ag=>!!($T(Ag)||rQ(Ag)));if(!Wi)return;pe.assert($T(Wi)||rQ(Wi),"tag should be opening or closing element");let Vn=Wi.parent.openingElement,Ui=Wi.parent.closingElement,gs=Vn.tagName.getStart(Mn),fs=Vn.tagName.end,bi=Ui.tagName.getStart(Mn),mc=Ui.tagName.end;return gs===Vn.getStart(Mn)||bi===Ui.getStart(Mn)||fs===Vn.getEnd()||mc===Ui.getEnd()||!(gs<=wn&&wn<=fs||bi<=wn&&wn<=mc)||Vn.tagName.getText(Mn)!==Ui.tagName.getText(Mn)?void 0:{ranges:[{start:gs,length:fs-gs},{start:bi,length:mc-bi}],wordPattern:es}}}function Kr(tn,wn){return{lineStarts:tn.getLineStarts(),firstLine:tn.getLineAndCharacterOfPosition(wn.pos).line,lastLine:tn.getLineAndCharacterOfPosition(wn.end).line}}function Dn(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=[],{lineStarts:Wi,firstLine:Vn,lastLine:Ui}=Kr(ci,wn),gs=Mn||!1,fs=Number.MAX_VALUE,bi=new Map,mc=new RegExp(/\S/),gg=YVe(ci,Wi[Vn]),Ag=gg?"{/*":"//";for(let _u=Vn;_u<=Ui;_u++){let wI=ci.text.substring(Wi[_u],ci.getLineEndOfPosition(Wi[_u])),AI=mc.exec(wI);AI&&(fs=Math.min(fs,AI.index),bi.set(_u.toString(),AI.index),wI.substr(AI.index,Ag.length)!==Ag&&(gs=Mn===void 0||Mn))}for(let _u=Vn;_u<=Ui;_u++){if(Vn!==Ui&&Wi[_u]===wn.end)continue;let wI=bi.get(_u.toString());wI!==void 0&&(gg?es.push(...hr(tn,{pos:Wi[_u]+fs,end:ci.getLineEndOfPosition(Wi[_u])},gs,gg)):gs?es.push({newText:Ag,span:{length:0,start:Wi[_u]+fs}}):ci.text.substr(Wi[_u]+wI,Ag.length)===Ag&&es.push({newText:"",span:{length:Ag.length,start:Wi[_u]+wI}}))}return es}function hr(tn,wn,Mn,ci){var es;let Wi=_.getCurrentSourceFile(tn),Vn=[],{text:Ui}=Wi,gs=!1,fs=Mn||!1,bi=[],{pos:mc}=wn,gg=ci!==void 0?ci:YVe(Wi,mc),Ag=gg?"{/*":"/*",_u=gg?"*/}":"*/",wI=gg?"\\{\\/\\*":"\\/\\*",AI=gg?"\\*\\/\\}":"\\*\\/";for(;mc<=wn.end;){let pp=Ui.substr(mc,Ag.length)===Ag?Ag.length:0,Dl=$L(Wi,mc+pp);if(Dl)gg&&(Dl.pos--,Dl.end++),bi.push(Dl.pos),Dl.kind===3&&bi.push(Dl.end),gs=!0,mc=Dl.end+1;else{let yu=Ui.substring(mc,wn.end).search(`(${wI})|(${AI})`);fs=Mn!==void 0?Mn:fs||!dMt(Ui,mc,yu===-1?wn.end:mc+yu),mc=yu===-1?wn.end+1:mc+yu+_u.length}}if(fs||!gs){((es=$L(Wi,wn.pos))==null?void 0:es.kind)!==2&&Gc(bi,wn.pos,Zt),Gc(bi,wn.end,Zt);let pp=bi[0];Ui.substr(pp,Ag.length)!==Ag&&Vn.push({newText:Ag,span:{length:0,start:pp}});for(let Dl=1;Dl0?pp-_u.length:0,yu=Ui.substr(Dl,_u.length)===_u?_u.length:0;Vn.push({newText:"",span:{length:Ag.length,start:pp-yu}})}return Vn}function Sn(tn,wn){let Mn=_.getCurrentSourceFile(tn),{firstLine:ci,lastLine:es}=Kr(Mn,wn);return ci===es&&wn.pos!==wn.end?hr(tn,wn,!0):Dn(tn,wn,!0)}function Ni(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=[],{pos:es}=wn,{end:Wi}=wn;es===Wi&&(Wi+=YVe(Mn,es)?2:1);for(let Vn=es;Vn<=Wi;Vn++){let Ui=$L(Mn,Vn);if(Ui){switch(Ui.kind){case 2:ci.push(...Dn(tn,{end:Ui.end,pos:Ui.pos+1},!1));break;case 3:ci.push(...hr(tn,{end:Ui.end,pos:Ui.pos+1},!1))}Vn=Ui.end+1}}return ci}function Gi({openingElement:tn,closingElement:wn,parent:Mn}){return!Q3(tn.tagName,wn.tagName)||bN(Mn)&&Q3(tn.tagName,Mn.openingElement.tagName)&&Gi(Mn)}function nn({closingFragment:tn,parent:wn}){return!!(tn.flags&262144)||P3(wn)&&nn(wn)}function En(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Im.getRangeOfEnclosingComment(ci,wn);return es&&(!Mn||es.kind===3)?t9(es):void 0}function ds(tn,wn){_e();let Mn=Ie(tn);W.throwIfCancellationRequested();let ci=Mn.text,es=[];if(wn.length>0&&!gs(Mn.fileName)){let fs=Vn(),bi;for(;bi=fs.exec(ci);){W.throwIfCancellationRequested();let mc=3;pe.assert(bi.length===wn.length+mc);let gg=bi[1],Ag=bi.index+gg.length;if(!$L(Mn,Ag))continue;let _u;for(let AI=0;AI"("+Wi(Dl.text)+")").join("|")+")",_u=/(?:$|\*\/)/.source,wI=/(?:.*?)/.source,AI="("+Ag+wI+")",pp=gg+AI+_u;return new RegExp(pp,"gim")}function Ui(fs){return fs>=97&&fs<=122||fs>=65&&fs<=90||fs>=48&&fs<=57}function gs(fs){return fs.includes("/node_modules/")}}function Mt(tn,wn,Mn){return _e(),tWe.getRenameInfo(S,Ie(tn),wn,Mn||{})}function cn(tn,wn,Mn,ci,es,Wi){let[Vn,Ui]=typeof wn=="number"?[wn,void 0]:[wn.pos,wn.end];return{file:tn,startPosition:Vn,endPosition:Ui,program:Ne(),host:s,formatContext:Im.getFormatContext(ci,s),cancellationToken:W,preferences:Mn,triggerReason:es,kind:Wi}}function Bt(tn,wn,Mn){return{file:tn,program:Ne(),host:s,span:wn,preferences:Mn,cancellationToken:W}}function xe(tn,wn){return qit.getSmartSelectionRange(wn,_.getCurrentSourceFile(tn))}function fr(tn,wn,Mn=VB,ci,es,Wi){_e();let Vn=Ie(tn);return Oz.getApplicableRefactors(cn(Vn,wn,Mn,VB,ci,es),Wi)}function Je(tn,wn,Mn=VB){_e();let ci=Ie(tn),es=pe.checkDefined(S.getSourceFiles()),Wi=tz(tn),Vn=R1e(cn(ci,wn,Mn,VB)),Ui=DHt(Vn?.all),gs=Xt(es,fs=>{let bi=tz(fs.fileName);return!S?.isSourceFileFromExternalLibrary(ci)&&!(ci===Ie(fs.fileName)||Wi===".ts"&&bi===".d.ts"||Wi===".d.ts"&&Ac(gp(fs.fileName),"lib.")&&bi===".d.ts")&&(Wi===bi||(Wi===".tsx"&&bi===".ts"||Wi===".jsx"&&bi===".js")&&!Ui)?fs.fileName:void 0});return{newFileName:NHt(ci,S,s,Vn),files:gs}}function In(tn,wn,Mn,ci,es,Wi=VB,Vn){_e();let Ui=Ie(tn);return Oz.getEditsForRefactor(cn(Ui,Mn,Wi,wn),ci,es,Vn)}function Hn(tn,wn){return wn===0?{line:0,character:0}:ge.toLineColumnOffset(tn,wn)}function Ot(tn,wn){_e();let Mn=Mz.resolveCallHierarchyDeclaration(S,Lb(Ie(tn),wn));return Mn&&cnt(Mn,ci=>Mz.createCallHierarchyItem(S,ci))}function $r(tn,wn){_e();let Mn=Ie(tn),ci=lnt(Mz.resolveCallHierarchyDeclaration(S,wn===0?Mn:Lb(Mn,wn)));return ci?Mz.getIncomingCalls(S,ci,W):[]}function ri(tn,wn){_e();let Mn=Ie(tn),ci=lnt(Mz.resolveCallHierarchyDeclaration(S,wn===0?Mn:Lb(Mn,wn)));return ci?Mz.getOutgoingCalls(S,ci):[]}function ao(tn,wn,Mn=VB){_e();let ci=Ie(tn);return Xit.provideInlayHints(Bt(ci,wn,Mn))}function Bs(tn,wn,Mn,ci,es){return Jit.mapCode(_.getCurrentSourceFile(tn),wn,Mn,s,Im.getFormatContext(ci,s),es)}let Ys={dispose:Ue,cleanupSemanticCache:We,getSyntacticDiagnostics:$e,getSemanticDiagnostics:Ye,getRegionSemanticDiagnostics:Tt,getSuggestionDiagnostics:Ke,getCompilerOptionsDiagnostics:Pt,getSyntacticClassifications:hc,getSemanticClassifications:ba,getEncodedSyntacticClassifications:yr,getEncodedSemanticClassifications:Wo,getCompletionsAtPosition:_r,getCompletionEntryDetails:Gt,getCompletionEntrySymbol:nt,getSignatureHelpItems:ks,getQuickInfoAtPosition:Dt,getDefinitionAtPosition:pr,getDefinitionAndBoundSpan:st,getImplementationAtPosition:zt,getTypeDefinitionAtPosition:ir,getReferencesAtPosition:mn,findReferences:Zi,getFileReferences:Ns,getDocumentHighlights:Ht,getNameOrDottedNameSpan:su,getBreakpointStatementAtPosition:Zn,getNavigateToItems:An,getRenameInfo:Mt,getSmartSelectionRange:xe,findRenameLocations:Br,getNavigationBarItems:ya,getNavigationTree:Gl,getOutliningSpans:hn,getTodoComments:ds,getBraceMatchingAtPosition:lo,getIndentationAtPosition:pa,getFormattingEditsForRange:Oa,getFormattingEditsForDocument:tl,getFormattingEditsAfterKeystroke:Qu,getDocCommentTemplateAtPosition:on,isValidBraceCompletionAtPosition:it,getJsxClosingTagAtPosition:nr,getLinkedEditingRangeAtPosition:Fr,getSpanOfEnclosingComment:En,getCodeFixesAtPosition:Tg,getCombinedCodeFix:Cs,applyCodeActionCommand:Pn,organizeImports:Tu,getEditsForFileRename:Pr,getEmitOutput:si,getNonBoundSourceFile:Ic,getProgram:Ne,getCurrentProgram:()=>S,getAutoImportProvider:Te,updateIsDefinitionOfReferencedSymbols:Ze,getApplicableRefactors:fr,getEditsForRefactor:In,getMoveToRefactoringFileSuggestions:Je,toLineColumnOffset:Hn,getSourceMapper:()=>ge,clearSourceMapperCache:()=>ge.clearCache(),prepareCallHierarchy:Ot,provideCallHierarchyIncomingCalls:$r,provideCallHierarchyOutgoingCalls:ri,toggleLineComment:Dn,toggleMultilineComment:hr,commentSelection:Sn,uncommentSelection:Ni,provideInlayHints:ao,getSupportedCodeFixes:qnt,preparePasteEditsForFile:tr,getPasteEdits:ur,mapCode:Bs};switch(h){case 0:break;case 1:bon.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:Yks.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.Syntactic`)});break;default:pe.assertNever(h)}return Ys}function eit(s){return s.nameTable||Qks(s),s.nameTable}function Qks(s){let c=s.nameTable=new Map;s.forEachChild(function g(d){if(Ir(d)&&!_rt(d)&&d.escapedText||d1(d)&&Xks(d)){let h=qJ(d);c.set(h,c.get(h)===void 0?d.pos:-1)}else if(p(d)){let h=d.escapedText;c.set(h,c.get(h)===void 0?d.pos:-1)}if(Lu(d,g),Xm(d))for(let h of d.jsDoc)Lu(h,g)})}function Xks(s){return HT(s)||s.parent.kind===284||Kks(s)||Ine(s)}function x1e(s){let c=Jks(s);return c&&(og(c.parent)||nQ(c.parent))?c:void 0}function Jks(s){switch(s.kind){case 11:case 15:case 9:if(s.parent.kind===168)return bY(s.parent.parent)?s.parent.parent:void 0;case 80:case 296:return bY(s.parent)&&(s.parent.parent.kind===211||s.parent.parent.kind===293)&&s.parent.name===s?s.parent:void 0}}function Uks(s,c){let g=x1e(s);if(g){let d=c.getContextualType(g.parent),h=d&&FPe(g,c,d,!1);if(h&&h.length===1)return ma(h)}return c.getSymbolAtLocation(s)}function FPe(s,c,g,d){let h=p1e(s.name);if(!h)return E;if(!g.isUnion()){let R=g.getProperty(h);return R?[R]:E}let _=og(s.parent)||nQ(s.parent)?Me(g.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,s.parent)):g.types,S=Xt(_,R=>R.getProperty(h));if(d&&(S.length===0||S.length===g.types.length)){let R=g.getProperty(h);if(R)return[R]}return!_.length&&!S.length?Xt(g.types,R=>R.getProperty(h)):io(S,yg)}function Kks(s){return s&&s.parent&&s.parent.kind===213&&s.parent.argumentExpression===s}function IYt(s){if(yd)return Ro(Mo(iu(yd.getExecutingFilePath())),Hs(s));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}$Ze(Wks());function Eon(s,c,g){let d=[];g=Rnt(g,d);let h=Ki(s)?s:[s],_=OEe(void 0,void 0,me,g,h,c,!0);return _.diagnostics=Nn(_.diagnostics,d),_}var tit={};o(tit,{spanInSourceFileAtLocation:()=>jks});function jks(s,c){if(s.isDeclarationFile)return;let g=Jc(s,c),d=s.getLineAndCharacterOfPosition(c).line;if(s.getLineAndCharacterOfPosition(g.getStart(s)).line>d){let M=Gm(g.pos,s);if(!M||s.getLineAndCharacterOfPosition(M.getEnd()).line!==d)return;g=M}if(g.flags&33554432)return;return V(g);function h(M,ee){let re=oQ(M)?be(M.modifiers,So):void 0,ge=re?Yu(s.text,re.end):M.getStart(s);return wA(ge,(ee||M).getEnd())}function _(M,ee){return h(M,fQ(ee,ee.parent,s))}function S(M,ee){return M&&d===s.getLineAndCharacterOfPosition(M.getStart(s)).line?V(M):V(ee)}function R(M,ee,re){if(M){let ge=M.indexOf(ee);if(ge>=0){let Ie=ge,_e=ge+1;for(;Ie>0&&re(M[Ie-1]);)Ie--;for(;_e0)return V(Pt.declarations[0])}else return V(Ke.initializer)}function We(Ke){if(Ke.initializer)return Ze(Ke);if(Ke.condition)return h(Ke.condition);if(Ke.incrementor)return h(Ke.incrementor)}function Ue(Ke){let Pt=F(Ke.elements,_r=>_r.kind!==233?_r:void 0);return Pt?V(Pt):Ke.parent.kind===209?h(Ke.parent):ee(Ke.parent)}function $e(Ke){pe.assert(Ke.kind!==208&&Ke.kind!==207);let Pt=Ke.kind===210?Ke.elements:Ke.properties,_r=F(Pt,Gt=>Gt.kind!==233?Gt:void 0);return _r?V(_r):h(Ke.parent.kind===227?Ke.parent:Ke)}function Ye(Ke){switch(Ke.parent.kind){case 267:let Pt=Ke.parent;return S(Gm(Ke.pos,s,Ke.parent),Pt.members.length?Pt.members[0]:Pt.getLastToken(s));case 264:let _r=Ke.parent;return S(Gm(Ke.pos,s,Ke.parent),_r.members.length?_r.members[0]:_r.getLastToken(s));case 270:return S(Ke.parent.parent,Ke.parent.clauses[0])}return V(Ke.parent)}function Tt(Ke){switch(Ke.parent.kind){case 269:if(PF(Ke.parent.parent)!==1)return;case 267:case 264:return h(Ke);case 242:if(mP(Ke.parent))return h(Ke);case 300:return V(li(Ke.parent.statements));case 270:let Pt=Ke.parent,_r=li(Pt.clauses);return _r?V(li(_r.statements)):void 0;case 207:let Gt=Ke.parent;return V(li(Gt.elements)||Gt);default:if(e9(Ke.parent)){let nt=Ke.parent;return h(li(nt.properties)||nt)}return V(Ke.parent)}}function ot(Ke){switch(Ke.parent.kind){case 208:let Pt=Ke.parent;return h(li(Pt.elements)||Pt);default:if(e9(Ke.parent)){let _r=Ke.parent;return h(li(_r.elements)||_r)}return V(Ke.parent)}}function Qe(Ke){return Ke.parent.kind===247||Ke.parent.kind===214||Ke.parent.kind===215?T(Ke):Ke.parent.kind===218?W(Ke):V(Ke.parent)}function mt(Ke){switch(Ke.parent.kind){case 219:case 263:case 220:case 175:case 174:case 178:case 179:case 177:case 248:case 247:case 249:case 251:case 214:case 215:case 218:return T(Ke);default:return V(Ke.parent)}}function ht(Ke){return bu(Ke.parent)||Ke.parent.kind===304||Ke.parent.kind===170?T(Ke):V(Ke.parent)}function _t(Ke){return Ke.parent.kind===217?W(Ke):V(Ke.parent)}function Rt(Ke){return Ke.parent.kind===247?_(Ke,Ke.parent.expression):V(Ke.parent)}function Lt(Ke){return Ke.parent.kind===251?W(Ke):V(Ke.parent)}}}var Mz={};o(Mz,{createCallHierarchyItem:()=>hYt,getIncomingCalls:()=>ixs,getOutgoingCalls:()=>pxs,resolveCallHierarchyDeclaration:()=>Don});function zks(s){return(UA(s)||vd(s))&&rh(s)}function Son(s){return pi(s)||nc(s)}function G1e(s){return(UA(s)||lA(s)||vd(s))&&Son(s.parent)&&s===s.parent.initializer&&Ir(s.parent.name)&&(!!(dm(s.parent)&2)||pi(s.parent))}function von(s){return ll(s)||xh(s)||ih(s)||UA(s)||pm(s)||vd(s)||fl(s)||uu(s)||hl(s)||Bg(s)||Dg(s)}function tse(s){return ll(s)||xh(s)&&Ir(s.name)||ih(s)||pm(s)||fl(s)||uu(s)||hl(s)||Bg(s)||Dg(s)||zks(s)||G1e(s)}function Bon(s){return ll(s)?s:rh(s)?s.name:G1e(s)?s.parent.name:pe.checkDefined(s.modifiers&&de(s.modifiers,won))}function won(s){return s.kind===90}function Ton(s,c){let g=Bon(c);return g&&s.getSymbolAtLocation(g)}function qks(s,c){if(ll(c))return{text:c.fileName,pos:0,end:0};if((ih(c)||pm(c))&&!rh(c)){let h=c.modifiers&&de(c.modifiers,won);if(h)return{text:"default",pos:h.getStart(),end:h.getEnd()}}if(fl(c)){let h=c.getSourceFile(),_=Yu(h.text,Av(c).pos),S=_+6,R=s.getTypeChecker(),T=R.getSymbolAtLocation(c.parent);return{text:`${T?`${R.symbolToString(T,c.parent)} `:""}static {}`,pos:_,end:S}}let g=G1e(c)?c.parent.name:pe.checkDefined(Il(c),"Expected call hierarchy item to have a name"),d=Ir(g)?Vo(g):d1(g)?g.text:Un(g)&&d1(g.expression)?g.expression.text:void 0;if(d===void 0){let h=s.getTypeChecker(),_=h.getSymbolAtLocation(g);_&&(d=h.symbolToString(_,c))}if(d===void 0){let h=rtt();d=dP(_=>h.writeNode(4,c,c.getSourceFile(),_))}return{text:d,pos:g.getStart(),end:g.getEnd()}}function $ks(s){var c,g,d,h;if(G1e(s))return pi(s.parent)&&xa(s.parent.parent)?vd(s.parent.parent)?(c=CB(s.parent.parent))==null?void 0:c.getText():(g=s.parent.parent.name)==null?void 0:g.getText():_N(s.parent.parent.parent.parent)&&Ir(s.parent.parent.parent.parent.parent.name)?s.parent.parent.parent.parent.parent.name.getText():void 0;switch(s.kind){case 178:case 179:case 175:return s.parent.kind===211?(d=CB(s.parent))==null?void 0:d.getText():(h=Il(s.parent))==null?void 0:h.getText();case 263:case 264:case 268:if(_N(s.parent)&&Ir(s.parent.parent.name))return s.parent.parent.name.getText()}}function Ron(s,c){if(c.body)return c;if(Tc(c))return lN(c.parent);if(ih(c)||uu(c)){let g=Ton(s,c);return g&&g.valueDeclaration&&kd(g.valueDeclaration)&&g.valueDeclaration.body?g.valueDeclaration:void 0}return c}function Non(s,c){let g=Ton(s,c),d;if(g&&g.declarations){let h=po(g.declarations),_=At(g.declarations,T=>({file:T.getSourceFile().fileName,pos:T.pos}));h.sort((T,W)=>Ca(_[T].file,_[W].file)||_[T].pos-_[W].pos);let S=At(h,T=>g.declarations[T]),R;for(let T of S)tse(T)&&((!R||R.parent!==T.parent||R.end!==T.pos)&&(d=Ft(d,T)),R=T)}return d}function rit(s,c){return fl(c)?c:kd(c)?Ron(s,c)??Non(s,c)??c:Non(s,c)??c}function Don(s,c){let g=s.getTypeChecker(),d=!1;for(;;){if(tse(c))return rit(g,c);if(von(c)){let h=ji(c,tse);return h&&rit(g,h)}if(HT(c)){if(tse(c.parent))return rit(g,c.parent);if(von(c.parent)){let h=ji(c.parent,tse);return h&&rit(g,h)}return Son(c.parent)&&c.parent.initializer&&G1e(c.parent.initializer)?c.parent.initializer:void 0}if(Tc(c))return tse(c.parent)?c.parent:void 0;if(c.kind===126&&fl(c.parent)){c=c.parent;continue}if(nc(c)&&c.initializer&&G1e(c.initializer))return c.initializer;if(!d){let h=g.getSymbolAtLocation(c);if(h&&(h.flags&2097152&&(h=g.getAliasedSymbol(h)),h.valueDeclaration)){d=!0,c=h.valueDeclaration;continue}}return}}function hYt(s,c){let g=c.getSourceFile(),d=qks(s,c),h=$ks(c),_=pQ(c),S=Qde(c),R=wA(Yu(g.text,c.getFullStart(),!1,!0),c.getEnd()),T=wA(d.pos,d.end);return{file:g.fileName,kind:_,kindModifiers:S,name:d.text,containerName:h,span:R,selectionSpan:T}}function exs(s){return s!==void 0}function txs(s){if(s.kind===Kp.EntryKind.Node){let{node:c}=s;if(Irt(c,!0,!0)||X5t(c,!0,!0)||J5t(c,!0,!0)||U5t(c,!0,!0)||Oie(c)||yrt(c)){let g=c.getSourceFile();return{declaration:ji(c,tse)||g,range:Zrt(c,g)}}}}function kon(s){return rd(s.declaration)}function rxs(s,c){return{from:s,fromSpans:c}}function nxs(s,c){return rxs(hYt(s,c[0].declaration),At(c,g=>t9(g.range)))}function ixs(s,c,g){if(ll(c)||xh(c)||fl(c))return[];let d=Bon(c),h=Me(Kp.findReferenceOrRenameEntries(s,g,s.getSourceFiles(),d,0,{use:Kp.FindReferencesUse.References},txs),exs);return h?Yn(h,kon,_=>nxs(s,_)):[]}function sxs(s,c){function g(h){let _=MI(h)?h.tag:eI(h)?h.tagName:_p(h)||fl(h)?h:h.expression,S=Don(s,_);if(S){let R=Zrt(_,h.getSourceFile());if(Ki(S))for(let T of S)c.push({declaration:T,range:R});else c.push({declaration:S,range:R})}}function d(h){if(h&&!(h.flags&33554432)){if(tse(h)){if(xa(h))for(let _ of h.members)_.name&&Un(_.name)&&d(_.name.expression);return}switch(h.kind){case 80:case 272:case 273:case 279:case 265:case 266:return;case 176:g(h);return;case 217:case 235:d(h.expression);return;case 261:case 170:d(h.name),d(h.initializer);return;case 214:g(h),d(h.expression),F(h.arguments,d);return;case 215:g(h),d(h.expression),F(h.arguments,d);return;case 216:g(h),d(h.tag),d(h.template);return;case 287:case 286:g(h),d(h.tagName),d(h.attributes);return;case 171:g(h),d(h.expression);return;case 212:case 213:g(h),Lu(h,d);break;case 239:d(h.expression);return}ww(h)||Lu(h,d)}}return d}function oxs(s,c){F(s.statements,c)}function axs(s,c){!Ga(s,128)&&s.body&&_N(s.body)&&F(s.body.statements,c)}function cxs(s,c,g){let d=Ron(s,c);d&&(F(d.parameters,g),g(d.body))}function lxs(s,c){c(s.body)}function uxs(s,c){F(s.modifiers,c);let g=OL(s);g&&c(g.expression);for(let d of s.members)LB(d)&&F(d.modifiers,c),pi(d)?c(d.initializer):Tc(d)&&d.body?(F(d.parameters,c),c(d.body)):fl(d)&&c(d)}function gxs(s,c){let g=[],d=sxs(s,g);switch(c.kind){case 308:oxs(c,d);break;case 268:axs(c,d);break;case 263:case 219:case 220:case 175:case 178:case 179:cxs(s.getTypeChecker(),c,d);break;case 264:case 232:uxs(c,d);break;case 176:lxs(c,d);break;default:pe.assertNever(c)}return g}function Axs(s,c){return{to:s,fromSpans:c}}function dxs(s,c){return Axs(hYt(s,c[0].declaration),At(c,g=>t9(g.range)))}function pxs(s,c){return c.flags&33554432||hl(c)?[]:Yn(gxs(s,c),kon,g=>dxs(s,g))}var mYt={};o(mYt,{v2020:()=>xon});var xon={};o(xon,{TokenEncodingConsts:()=>oon,TokenModifier:()=>con,TokenType:()=>aon,getEncodedSemanticClassifications:()=>gYt,getSemanticClassifications:()=>lon});var x0={};o(x0,{PreserveOptionalFlags:()=>Uun,addNewNodeForMemberSymbol:()=>Kun,codeFixAll:()=>Qd,createCodeFixAction:()=>ug,createCodeFixActionMaybeFixAll:()=>yYt,createCodeFixActionWithoutFixAll:()=>sR,createCombinedCodeActions:()=>Hz,createFileTextChanges:()=>Gon,createImportAdder:()=>yQ,createImportSpecifierResolver:()=>EGs,createMissingMemberNodes:()=>MQt,createSignatureDeclarationFromCallExpression:()=>HQt,createSignatureDeclarationFromSignature:()=>Tit,createStubbedBody:()=>MPe,eachDiagnostic:()=>Yz,findAncestorMatchingSpan:()=>jQt,generateAccessorFromProperty:()=>ngn,getAccessorConvertiblePropertyAtPosition:()=>ogn,getAllFixes:()=>mxs,getFixes:()=>hxs,getImportCompletionAction:()=>SGs,getImportKind:()=>dit,getJSDocTypedefNodes:()=>yGs,getNoopSymbolTrackerWithResolver:()=>nse,getPromoteTypeOnlyCompletionAction:()=>vGs,getSupportedErrorCodes:()=>fxs,importFixName:()=>rcn,importSymbols:()=>FU,parameterShouldGetTypeFromJSDoc:()=>gan,registerCodeFix:()=>xg,setJsonCompilerOptionValue:()=>UQt,setJsonCompilerOptionValues:()=>JQt,tryGetAutoImportableReferenceFromTypeNode:()=>bQ,typeNodeToAutoImportableTypeNode:()=>YQt,typePredicateToAutoImportableTypeNode:()=>qun,typeToAutoImportableTypeNode:()=>Rit,typeToMinimizedReferenceType:()=>zun});var CYt=dl(),_Yt=new Map;function sR(s,c,g){return bYt(s,IQ(g),c,void 0,void 0)}function ug(s,c,g,d,h,_){return bYt(s,IQ(g),c,d,IQ(h),_)}function yYt(s,c,g,d,h,_){return bYt(s,IQ(g),c,d,h&&IQ(h),_)}function bYt(s,c,g,d,h,_){return{fixName:s,description:c,changes:g,fixId:d,fixAllDescription:h,commands:_?[_]:void 0}}function xg(s){for(let c of s.errorCodes)EYt=void 0,CYt.add(String(c),s);if(s.fixIds)for(let c of s.fixIds)pe.assert(!_Yt.has(c)),_Yt.set(c,s)}var EYt;function fxs(){return EYt??(EYt=Do(CYt.keys()))}function Ixs(s,c){let{errorCodes:g}=s,d=0;for(let _ of c)if(k(g,_.code)&&d++,d>1)break;let h=d<2;return({fixId:_,fixAllDescription:S,...R})=>h?R:{...R,fixId:_,fixAllDescription:S}}function hxs(s){let c=Fon(s),g=CYt.get(String(s.errorCode));return er(g,d=>At(d.getCodeActions(s),Ixs(d,c)))}function mxs(s){return _Yt.get(Ma(s.fixId,Xs)).getAllCodeActions(s)}function Hz(s,c){return{changes:s,commands:c}}function Gon(s,c){return{fileName:s,textChanges:c}}function Qd(s,c,g){let d=[],h=xo.ChangeTracker.with(s,_=>Yz(s,c,S=>g(_,S,d)));return Hz(h,d.length===0?void 0:d)}function Yz(s,c,g){for(let d of Fon(s))k(c,d.code)&&g(d)}function Fon({program:s,sourceFile:c,cancellationToken:g}){let d=[...s.getSemanticDiagnostics(c,g),...s.getSyntacticDiagnostics(c,g),...vnt(c,s,g)];return Ly(s.getCompilerOptions())&&d.push(...s.getDeclarationDiagnostics(c,g)),d}var SYt="addConvertToUnknownForNonOverlappingTypes",Zon=[Z.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];xg({errorCodes:Zon,getCodeActions:function(c){let g=Von(c.sourceFile,c.span.start);if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>Lon(h,c.sourceFile,g));return[ug(SYt,d,Z.Add_unknown_conversion_for_non_overlapping_types,SYt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[SYt],getAllCodeActions:s=>Qd(s,Zon,(c,g)=>{let d=Von(g.file,g.start);d&&Lon(c,g.file,d)})});function Lon(s,c,g){let d=Yd(g)?me.createAsExpression(g.expression,me.createKeywordTypeNode(159)):me.createTypeAssertion(me.createKeywordTypeNode(159),g.expression);s.replaceNode(c,g.expression,d)}function Von(s,c){if(!wo(s))return ji(Jc(s,c),g=>Yd(g)||xF(g))}xg({errorCodes:[Z.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,Z.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,Z.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(c){let{sourceFile:g}=c,d=xo.ChangeTracker.with(c,h=>{let _=me.createExportDeclaration(void 0,!1,me.createNamedExports([]),void 0);h.insertNodeAtEndOfScope(g,g,_)});return[sR("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var vYt="addMissingAsync",Pon=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];xg({fixIds:[vYt],errorCodes:Pon,getCodeActions:function(c){let{sourceFile:g,errorCode:d,cancellationToken:h,program:_,span:S}=c,R=de(_.getTypeChecker().getDiagnostics(g,h),_xs(S,d)),T=R&&R.relatedInformation&&de(R.relatedInformation,M=>M.code===Z.Did_you_mean_to_mark_this_function_as_async.code),W=Oon(g,T);return W?[Won(c,W,M=>xo.ChangeTracker.with(c,M))]:void 0},getAllCodeActions:s=>{let{sourceFile:c}=s,g=new Set;return Qd(s,Pon,(d,h)=>{let _=h.relatedInformation&&de(h.relatedInformation,T=>T.code===Z.Did_you_mean_to_mark_this_function_as_async.code),S=Oon(c,_);return S?Won(s,S,T=>(T(d),[]),g):void 0})}});function Won(s,c,g,d){let h=g(_=>Cxs(_,s.sourceFile,c,d));return ug(vYt,h,Z.Add_async_modifier_to_containing_function,vYt,Z.Add_all_missing_async_modifiers)}function Cxs(s,c,g,d){if(d&&d.has(rd(g)))return;d?.add(rd(g));let h=me.replaceModifiers(JA(g,!0),me.createNodeArray(me.createModifiersFromModifierFlags(Nx(g)|1024)));s.replaceNode(c,g,h)}function Oon(s,c){if(!c)return;let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":(lA(h)||uu(h)||UA(h)||ih(h))&&Jie(c,Oy(h,s)))}function _xs(s,c){return({start:g,length:d,relatedInformation:h,code:_})=>ws(g)&&ws(d)&&Jie({start:g,length:d},s)&&_===c&&!!h&&jt(h,S=>S.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var BYt="addMissingAwait",Mon=Z.Property_0_does_not_exist_on_type_1.code,Hon=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],wYt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Mon,...Hon];xg({fixIds:[BYt],errorCodes:wYt,getCodeActions:function(c){let{sourceFile:g,errorCode:d,span:h,cancellationToken:_,program:S}=c,R=Yon(g,d,h,_,S);if(!R)return;let T=c.program.getTypeChecker(),W=V=>xo.ChangeTracker.with(c,V);return Hr([Qon(c,R,d,T,W),Xon(c,R,d,T,W)])},getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=s.program.getTypeChecker(),_=new Set;return Qd(s,wYt,(S,R)=>{let T=Yon(c,R.code,R,d,g);if(!T)return;let W=V=>(V(S),[]);return Qon(s,T,R.code,h,W,_)||Xon(s,T,R.code,h,W,_)})}});function Yon(s,c,g,d,h){let _=ant(s,g);return _&&yxs(s,c,g,d,h)&&Jon(_)?_:void 0}function Qon(s,c,g,d,h,_){let{sourceFile:S,program:R,cancellationToken:T}=s,W=bxs(c,S,T,R,d);if(W){let V=h(M=>{F(W.initializers,({expression:ee})=>TYt(M,g,S,d,ee,_)),_&&W.needsSecondPassForFixAll&&TYt(M,g,S,d,c,_)});return sR("addMissingAwaitToInitializer",V,W.initializers.length===1?[Z.Add_await_to_initializer_for_0,W.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function Xon(s,c,g,d,h,_){let S=h(R=>TYt(R,g,s.sourceFile,d,c,_));return ug(BYt,S,Z.Add_await,BYt,Z.Fix_all_expressions_possibly_missing_await)}function yxs(s,c,g,d,h){let S=h.getTypeChecker().getDiagnostics(s,d);return jt(S,({start:R,length:T,relatedInformation:W,code:V})=>ws(R)&&ws(T)&&Jie({start:R,length:T},g)&&V===c&&!!W&&jt(W,M=>M.code===Z.Did_you_forget_to_use_await.code))}function bxs(s,c,g,d,h){let _=Exs(s,h);if(!_)return;let S=_.isCompleteFix,R;for(let T of _.identifiers){let W=h.getSymbolAtLocation(T);if(!W)continue;let V=Gs(W.valueDeclaration,nc),M=V&&Gs(V.name,Ir),ee=ML(V,244);if(!V||!ee||V.type||!V.initializer||ee.getSourceFile()!==c||Ga(ee,32)||!M||!Jon(V.initializer)){S=!1;continue}let re=d.getSemanticDiagnostics(c,g);if(Kp.Core.eachSymbolReferenceInFile(M,h,c,Ie=>T!==Ie&&!Sxs(Ie,re,c,h))){S=!1;continue}(R||(R=[])).push({expression:V.initializer,declarationSymbol:W})}return R&&{initializers:R,needsSecondPassForFixAll:!S}}function Exs(s,c){if(jo(s.parent)&&Ir(s.parent.expression))return{identifiers:[s.parent.expression],isCompleteFix:!0};if(Ir(s))return{identifiers:[s],isCompleteFix:!0};if(fo(s)){let g,d=!0;for(let h of[s.left,s.right]){let _=c.getTypeAtLocation(h);if(c.getPromisedTypeOfPromise(_)){if(!Ir(h)){d=!1;continue}(g||(g=[])).push(h)}}return g&&{identifiers:g,isCompleteFix:d}}}function Sxs(s,c,g,d){let h=jo(s.parent)?s.parent.name:fo(s.parent)?s.parent:s,_=de(c,S=>S.start===h.getStart(g)&&S.start+S.length===h.getEnd());return _&&k(wYt,_.code)||d.getTypeAtLocation(h).flags&1}function Jon(s){return s.flags&65536||!!ji(s,c=>c.parent&&lA(c.parent)&&c.parent.body===c||$u(c)&&(c.parent.kind===263||c.parent.kind===219||c.parent.kind===220||c.parent.kind===175))}function TYt(s,c,g,d,h,_){if(sEe(h.parent)&&!h.parent.awaitModifier){let S=d.getTypeAtLocation(h),R=d.getAnyAsyncIterableType();if(R&&d.isTypeAssignableTo(S,R)){let T=h.parent;s.replaceNode(g,T,me.updateForOfStatement(T,me.createToken(135),T.initializer,T.expression,T.statement));return}}if(fo(h))for(let S of[h.left,h.right]){if(_&&Ir(S)){let W=d.getSymbolAtLocation(S);if(W&&_.has(kg(W)))continue}let R=d.getTypeAtLocation(S),T=d.getPromisedTypeOfPromise(R)?me.createAwaitExpression(S):S;s.replaceNode(g,S,T)}else if(c===Mon&&jo(h.parent)){if(_&&Ir(h.parent.expression)){let S=d.getSymbolAtLocation(h.parent.expression);if(S&&_.has(kg(S)))return}s.replaceNode(g,h.parent.expression,me.createParenthesizedExpression(me.createAwaitExpression(h.parent.expression))),Uon(s,h.parent.expression,g)}else if(k(Hon,c)&&av(h.parent)){if(_&&Ir(h)){let S=d.getSymbolAtLocation(h);if(S&&_.has(kg(S)))return}s.replaceNode(g,h,me.createParenthesizedExpression(me.createAwaitExpression(h))),Uon(s,h,g)}else{if(_&&nc(h.parent)&&Ir(h.parent.name)){let S=d.getSymbolAtLocation(h.parent.name);if(S&&!Ar(_,kg(S)))return}s.replaceNode(g,h,me.createAwaitExpression(h))}}function Uon(s,c,g){let d=Gm(c.pos,g);d&&sPe(d.end,d.parent,g)&&s.insertText(g,c.getStart(g),";")}var RYt="addMissingConst",Kon=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];xg({errorCodes:Kon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>jon(d,c.sourceFile,c.span.start,c.program));if(g.length>0)return[ug(RYt,g,Z.Add_const_to_unresolved_variable,RYt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[RYt],getAllCodeActions:s=>{let c=new Set;return Qd(s,Kon,(g,d)=>jon(g,d.file,d.start,s.program,c))}});function jon(s,c,g,d,h){let _=Jc(c,g),S=ji(_,W=>DL(W.parent)?W.parent.initializer===W:vxs(W)?!1:"quit");if(S)return nit(s,S,c,h);let R=_.parent;if(fo(R)&&R.operatorToken.kind===64&&VC(R.parent))return nit(s,_,c,h);if(OI(R)){let W=d.getTypeChecker();return ue(R.elements,V=>Bxs(V,W))?nit(s,R,c,h):void 0}let T=ji(_,W=>VC(W.parent)?!0:wxs(W)?!1:"quit");if(T){let W=d.getTypeChecker();return zon(T,W)?nit(s,T,c,h):void 0}}function nit(s,c,g,d){(!d||Ar(d,c))&&s.insertModifierBefore(g,87,c)}function vxs(s){switch(s.kind){case 80:case 210:case 211:case 304:case 305:return!0;default:return!1}}function Bxs(s,c){let g=Ir(s)?s:Jm(s,!0)&&Ir(s.left)?s.left:void 0;return!!g&&!c.getSymbolAtLocation(g)}function wxs(s){switch(s.kind){case 80:case 227:case 28:return!0;default:return!1}}function zon(s,c){return fo(s)?s.operatorToken.kind===28?ue([s.left,s.right],g=>zon(g,c)):s.operatorToken.kind===64&&Ir(s.left)&&!c.getSymbolAtLocation(s.left):!1}var NYt="addMissingDeclareProperty",qon=[Z.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];xg({errorCodes:qon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>$on(d,c.sourceFile,c.span.start));if(g.length>0)return[ug(NYt,g,Z.Prefix_with_declare,NYt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[NYt],getAllCodeActions:s=>{let c=new Set;return Qd(s,qon,(g,d)=>$on(g,d.file,d.start,c))}});function $on(s,c,g,d){let h=Jc(c,g);if(!Ir(h))return;let _=h.parent;_.kind===173&&(!d||Ar(d,_))&&s.insertModifierBefore(c,138,_)}var DYt="addMissingInvocationForDecorator",ean=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];xg({errorCodes:ean,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>tan(d,c.sourceFile,c.span.start));return[ug(DYt,g,Z.Call_decorator_expression,DYt,Z.Add_to_all_uncalled_decorators)]},fixIds:[DYt],getAllCodeActions:s=>Qd(s,ean,(c,g)=>tan(c,g.file,g.start))});function tan(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createCallExpression(h.expression,void 0,void 0);s.replaceNode(c,h.expression,_)}var kYt="addMissingResolutionModeImportAttribute",ran=[Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code,Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code];xg({errorCodes:ran,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>nan(d,c.sourceFile,c.span.start,c.program,c.host,c.preferences));return[ug(kYt,g,Z.Add_resolution_mode_import_attribute,kYt,Z.Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it)]},fixIds:[kYt],getAllCodeActions:s=>Qd(s,ran,(c,g)=>nan(c,g.file,g.start,s.program,s.host,s.preferences))});function nan(s,c,g,d,h,_){var S,R,T;let W=Jc(c,g),V=ji(W,Hp(Mf,Um));pe.assert(!!V,"Expected position to be owned by an ImportDeclaration or ImportType.");let M=_1(c,_)===0,ee=ZY(V),re=!ee||((S=BU(ee.text,c.fileName,d.getCompilerOptions(),h,d.getModuleResolutionCache(),void 0,99).resolvedModule)==null?void 0:S.resolvedFileName)===((T=(R=d.getResolvedModuleFromModuleSpecifier(ee,c))==null?void 0:R.resolvedModule)==null?void 0:T.resolvedFileName),ge=V.attributes?me.updateImportAttributes(V.attributes,me.createNodeArray([...V.attributes.elements,me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))],V.attributes.elements.hasTrailingComma),V.attributes.multiLine):me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))]));V.kind===273?s.replaceNode(c,V,me.updateImportDeclaration(V,V.modifiers,V.importClause,V.moduleSpecifier,ge)):s.replaceNode(c,V,me.updateImportTypeNode(V,V.argument,ge,V.qualifier,V.typeArguments))}var xYt="addNameToNamelessParameter",ian=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];xg({errorCodes:ian,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>san(d,c.sourceFile,c.span.start));return[ug(xYt,g,Z.Add_parameter_name,xYt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[xYt],getAllCodeActions:s=>Qd(s,ian,(c,g)=>san(c,g.file,g.start))});function san(s,c,g){let d=Jc(c,g),h=d.parent;if(!Si(h))return pe.fail("Tried to add a parameter name to a non-parameter: "+pe.formatSyntaxKind(d.kind));let _=h.parent.parameters.indexOf(h);pe.assert(!h.type,"Tried to add a parameter name to a parameter that already had one."),pe.assert(_>-1,"Parameter not found in parent parameter list.");let S=h.name.getEnd(),R=me.createTypeReferenceNode(h.name,void 0),T=oan(c,h);for(;T;)R=me.createArrayTypeNode(R),S=T.getEnd(),T=oan(c,T);let W=me.createParameterDeclaration(h.modifiers,h.dotDotDotToken,"arg"+_,h.questionToken,h.dotDotDotToken&&!kF(R)?me.createArrayTypeNode(R):R,h.initializer);s.replaceRange(c,Gy(h.getStart(c),S),W)}function oan(s,c){let g=fQ(c.name,c.parent,s);if(g&&g.kind===23&&p2(g.parent)&&Si(g.parent.parent))return g.parent.parent}var aan="addOptionalPropertyUndefined",Txs=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code];xg({errorCodes:Txs,getCodeActions(s){let c=s.program.getTypeChecker(),g=Rxs(s.sourceFile,s.span,c);if(!g.length)return;let d=xo.ChangeTracker.with(s,h=>Dxs(h,g));return[sR(aan,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[aan]});function Rxs(s,c,g){var d,h;let _=can(ant(s,c),g);if(!_)return E;let{source:S,target:R}=_,T=Nxs(S,R,g)?g.getTypeAtLocation(R.expression):g.getTypeAtLocation(R);return(h=(d=T.symbol)==null?void 0:d.declarations)!=null&&h.some(W=>ms(W).fileName.match(/\.d\.ts$/))?E:g.getExactOptionalProperties(T)}function Nxs(s,c,g){return jo(c)&&!!g.getExactOptionalProperties(g.getTypeAtLocation(c.expression)).length&&g.getTypeAtLocation(s)===g.getUndefinedType()}function can(s,c){var g;if(s){if(fo(s.parent)&&s.parent.operatorToken.kind===64)return{source:s.parent.right,target:s.parent.left};if(nc(s.parent)&&s.parent.initializer)return{source:s.parent.initializer,target:s.parent.name};if(Zl(s.parent)){let d=c.getSymbolAtLocation(s.parent.expression);if(!d?.valueDeclaration||!lP(d.valueDeclaration.kind)||!un(s))return;let h=s.parent.arguments.indexOf(s);if(h===-1)return;let _=d.valueDeclaration.parameters[h].name;if(Ir(_))return{source:s,target:_}}else if(fm(s.parent)&&Ir(s.parent.name)||a0(s.parent)){let d=can(s.parent.parent,c);if(!d)return;let h=c.getPropertyOfType(c.getTypeAtLocation(d.target),s.parent.name.text),_=(g=h?.declarations)==null?void 0:g[0];return _?{source:fm(s.parent)?s.parent.initializer:s.parent.name,target:_}:void 0}}else return}function Dxs(s,c){for(let g of c){let d=g.valueDeclaration;if(d&&(ss(d)||pi(d))&&d.type){let h=me.createUnionTypeNode([...d.type.kind===193?d.type.types:[d.type],me.createTypeReferenceNode("undefined")]);s.replaceNode(d.getSourceFile(),d.type,h)}}}var GYt="annotateWithTypeFromJSDoc",lan=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];xg({errorCodes:lan,getCodeActions(s){let c=uan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,d=>dan(d,s.sourceFile,c));return[ug(GYt,g,Z.Annotate_with_type_from_JSDoc,GYt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[GYt],getAllCodeActions:s=>Qd(s,lan,(c,g)=>{let d=uan(g.file,g.start);d&&dan(c,g.file,d)})});function uan(s,c){let g=Jc(s,c);return Gs(Si(g.parent)?g.parent.parent:g.parent,gan)}function gan(s){return kxs(s)&&Aan(s)}function Aan(s){return kd(s)?s.parameters.some(Aan)||!s.type&&!!AJ(s):!s.type&&!!eN(s)}function dan(s,c,g){if(kd(g)&&(AJ(g)||g.parameters.some(d=>!!eN(d)))){if(!g.typeParameters){let h=gAe(g);h.length&&s.insertTypeParameters(c,g,h)}let d=lA(g)&&!qd(g,21,c);d&&s.insertNodeBefore(c,ma(g.parameters),me.createToken(21));for(let h of g.parameters)if(!h.type){let _=eN(h);_&&s.tryInsertTypeAnnotation(c,h,Mr(_,_Q,uc))}if(d&&s.insertNodeAfter(c,Ei(g.parameters),me.createToken(22)),!g.type){let h=AJ(g);h&&s.tryInsertTypeAnnotation(c,g,Mr(h,_Q,uc))}}else{let d=pe.checkDefined(eN(g),"A JSDocType for this declaration should exist");pe.assert(!g.type,"The JSDocType decl should have a type"),s.tryInsertTypeAnnotation(c,g,Mr(d,_Q,uc))}}function kxs(s){return kd(s)||s.kind===261||s.kind===172||s.kind===173}function _Q(s){switch(s.kind){case 313:case 314:return me.createTypeReferenceNode("any",E);case 317:return Gxs(s);case 316:return _Q(s.type);case 315:return Fxs(s);case 319:return Zxs(s);case 318:return Lxs(s);case 184:return Pxs(s);case 323:return xxs(s);default:let c=_s(s,_Q,void 0);return ti(c,1),c}}function xxs(s){let c=me.createTypeLiteralNode(At(s.jsDocPropertyTags,g=>me.createPropertySignature(void 0,Ir(g.name)?g.name:g.name.right,zne(g)?me.createToken(58):void 0,g.typeExpression&&Mr(g.typeExpression.type,_Q,uc)||me.createKeywordTypeNode(133))));return ti(c,1),c}function Gxs(s){return me.createUnionTypeNode([Mr(s.type,_Q,uc),me.createTypeReferenceNode("undefined",E)])}function Fxs(s){return me.createUnionTypeNode([Mr(s.type,_Q,uc),me.createTypeReferenceNode("null",E)])}function Zxs(s){return me.createArrayTypeNode(Mr(s.type,_Q,uc))}function Lxs(s){return me.createFunctionTypeNode(E,s.parameters.map(Vxs),s.type??me.createKeywordTypeNode(133))}function Vxs(s){let c=s.parent.parameters.indexOf(s),g=s.type.kind===319&&c===s.parent.parameters.length-1,d=s.name||(g?"rest":"arg"+c),h=g?me.createToken(26):s.dotDotDotToken;return me.createParameterDeclaration(s.modifiers,h,d,s.questionToken,Mr(s.type,_Q,uc),s.initializer)}function Pxs(s){let c=s.typeName,g=s.typeArguments;if(Ir(s.typeName)){if(Kge(s))return Wxs(s);let d=s.typeName.text;switch(s.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=me.createIdentifier(d),(d==="Array"||d==="Promise")&&!s.typeArguments?g=me.createNodeArray([me.createTypeReferenceNode("any",E)]):g=Ws(s.typeArguments,_Q,uc)}return me.createTypeReferenceNode(c,g)}function Wxs(s){let c=me.createParameterDeclaration(void 0,void 0,s.typeArguments[0].kind===150?"n":"s",void 0,me.createTypeReferenceNode(s.typeArguments[0].kind===150?"number":"string",[]),void 0),g=me.createTypeLiteralNode([me.createIndexSignature(void 0,[c],s.typeArguments[1])]);return ti(g,1),g}var FYt="convertFunctionToEs6Class",pan=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];xg({errorCodes:pan,getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>fan(g,s.sourceFile,s.span.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()));return[ug(FYt,c,Z.Convert_function_to_an_ES2015_class,FYt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[FYt],getAllCodeActions:s=>Qd(s,pan,(c,g)=>fan(c,g.file,g.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()))});function fan(s,c,g,d,h,_){let S=d.getSymbolAtLocation(Jc(c,g));if(!S||!S.valueDeclaration||!(S.flags&19))return;let R=S.valueDeclaration;if(ih(R)||UA(R))s.replaceNode(c,R,V(R));else if(nc(R)){let M=W(R);if(!M)return;let ee=R.parent.parent;u_(R.parent)&&R.parent.declarations.length>1?(s.delete(c,R),s.insertNodeAfter(c,ee,M)):s.replaceNode(c,ee,M)}function T(M){let ee=[];return M.exports&&M.exports.forEach(Ie=>{if(Ie.name==="prototype"&&Ie.declarations){let _e=Ie.declarations[0];if(Ie.declarations.length===1&&jo(_e)&&fo(_e.parent)&&_e.parent.operatorToken.kind===64&&og(_e.parent.right)){let Ee=_e.parent.right;ge(Ee.symbol,void 0,ee)}}else ge(Ie,[me.createToken(126)],ee)}),M.members&&M.members.forEach((Ie,_e)=>{var Ee,Ne,Te,Ze;if(_e==="constructor"&&Ie.valueDeclaration){let We=(Ze=(Te=(Ne=(Ee=M.exports)==null?void 0:Ee.get("prototype"))==null?void 0:Ne.declarations)==null?void 0:Te[0])==null?void 0:Ze.parent;We&&fo(We)&&og(We.right)&&jt(We.right.properties,sit)||s.delete(c,Ie.valueDeclaration.parent);return}ge(Ie,void 0,ee)}),ee;function re(Ie,_e){return _p(Ie)?jo(Ie)&&sit(Ie)?!0:bu(_e):ue(Ie.properties,Ee=>!!(uu(Ee)||fJ(Ee)||fm(Ee)&&UA(Ee.initializer)&&Ee.name||sit(Ee)))}function ge(Ie,_e,Ee){if(!(Ie.flags&8192)&&!(Ie.flags&4096))return;let Ne=Ie.valueDeclaration,Te=Ne.parent,Ze=Te.right;if(!re(Ne,Ze)||jt(Ee,Tt=>{let ot=Il(Tt);return!!(ot&&Ir(ot)&&Vo(ot)===nf(Ie))}))return;let We=Te.parent&&Te.parent.kind===245?Te.parent:Te;if(s.delete(c,We),!Ze){Ee.push(me.createPropertyDeclaration(_e,Ie.name,void 0,void 0,void 0));return}if(_p(Ne)&&(UA(Ze)||lA(Ze))){let Tt=_1(c,h),ot=Oxs(Ne,_,Tt);ot&&Ue(Ee,Ze,ot);return}else if(og(Ze)){F(Ze.properties,Tt=>{(uu(Tt)||fJ(Tt))&&Ee.push(Tt),fm(Tt)&&UA(Tt.initializer)&&Ue(Ee,Tt.initializer,Tt.name),sit(Tt)});return}else{if(n0(c)||!jo(Ne))return;let Tt=me.createPropertyDeclaration(_e,Ne.name,void 0,void 0,Ze);Kie(Te.parent,Tt,c),Ee.push(Tt);return}function Ue(Tt,ot,Qe){return UA(ot)?$e(Tt,ot,Qe):Ye(Tt,ot,Qe)}function $e(Tt,ot,Qe){let mt=Nn(_e,iit(ot,134)),ht=me.createMethodDeclaration(mt,void 0,Qe,void 0,void 0,ot.parameters,void 0,ot.body);Kie(Te,ht,c),Tt.push(ht)}function Ye(Tt,ot,Qe){let mt=ot.body,ht;mt.kind===242?ht=mt:ht=me.createBlock([me.createReturnStatement(mt)]);let _t=Nn(_e,iit(ot,134)),Rt=me.createMethodDeclaration(_t,void 0,Qe,void 0,void 0,ot.parameters,void 0,ht);Kie(Te,Rt,c),Tt.push(Rt)}}}function W(M){let ee=M.initializer;if(!ee||!UA(ee)||!Ir(M.name))return;let re=T(M.symbol);ee.body&&re.unshift(me.createConstructorDeclaration(void 0,ee.parameters,ee.body));let ge=iit(M.parent.parent,95);return me.createClassDeclaration(ge,M.name,void 0,void 0,re)}function V(M){let ee=T(S);M.body&&ee.unshift(me.createConstructorDeclaration(void 0,M.parameters,M.body));let re=iit(M,95);return me.createClassDeclaration(re,M.name,void 0,void 0,ee)}}function iit(s,c){return LB(s)?Me(s.modifiers,g=>g.kind===c):void 0}function sit(s){return s.name?!!(Ir(s.name)&&s.name.text==="constructor"):!1}function Oxs(s,c,g){if(jo(s))return s.name;let d=s.argumentExpression;if(mC(d))return d;if(mA(d))return Uh(d.text,Mg(c))?me.createIdentifier(d.text):GP(d)?me.createStringLiteral(d.text,g===0):d}var ZYt="convertToAsyncFunction",Ian=[Z.This_may_be_converted_to_an_async_function.code],oit=!0;xg({errorCodes:Ian,getCodeActions(s){oit=!0;let c=xo.ChangeTracker.with(s,g=>han(g,s.sourceFile,s.span.start,s.program.getTypeChecker()));return oit?[ug(ZYt,c,Z.Convert_to_async_function,ZYt,Z.Convert_all_to_async_functions)]:[]},fixIds:[ZYt],getAllCodeActions:s=>Qd(s,Ian,(c,g)=>han(c,g.file,g.start,s.program.getTypeChecker()))});function han(s,c,g,d){let h=Jc(c,g),_;if(Ir(h)&&nc(h.parent)&&h.parent.initializer&&kd(h.parent.initializer)?_=h.parent.initializer:_=Gs(A1(Jc(c,g)),Tnt),!_)return;let S=new Map,R=wo(_),T=Hxs(_,d),W=Yxs(_,d,S);if(!Bnt(W,d))return;let V=W.body&&$u(W.body)?Mxs(W.body,d):E,M={checker:d,synthNamesMap:S,setOfExpressionsToReturn:T,isInJSFile:R};if(!V.length)return;let ee=Yu(c.text,Av(_).pos);s.insertModifierAt(c,ee,134,{suffix:" "});for(let re of V)if(Lu(re,function ge(Ie){if(Zl(Ie)){let _e=rse(Ie,Ie,M,!1);if(Qz())return!0;s.replaceNodeWithNodes(c,re,_e)}else if(!bu(Ie)&&(Lu(Ie,ge),Qz()))return!0}),Qz())return}function Mxs(s,c){let g=[];return yF(s,d=>{CPe(d,c)&&g.push(d)}),g}function Hxs(s,c){if(!s.body)return new Set;let g=new Set;return Lu(s.body,function d(h){F1e(h,c,"then")?(g.add(rd(h)),F(h.arguments,d)):F1e(h,c,"catch")||F1e(h,c,"finally")?(g.add(rd(h)),Lu(h,d)):Can(h,c)?g.add(rd(h)):Lu(h,d)}),g}function F1e(s,c,g){if(!Zl(s))return!1;let h=o1e(s,g)&&c.getTypeAtLocation(s);return!!(h&&c.getPromisedTypeOfPromise(h))}function man(s,c){return(la(s)&4)!==0&&s.target===c}function ait(s,c,g){if(s.expression.name.escapedText==="finally")return;let d=g.getTypeAtLocation(s.expression.expression);if(man(d,g.getPromiseType())||man(d,g.getPromiseLikeType()))if(s.expression.name.escapedText==="then"){if(c===Cg(s.arguments,0))return Cg(s.typeArguments,0);if(c===Cg(s.arguments,1))return Cg(s.typeArguments,1)}else return Cg(s.typeArguments,0)}function Can(s,c){return un(s)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(s)):!1}function Yxs(s,c,g){let d=new Map,h=dl();return Lu(s,function _(S){if(!Ir(S)){Lu(S,_);return}let R=c.getSymbolAtLocation(S);if(R){let T=c.getTypeAtLocation(S),W=van(T,c),V=kg(R).toString();if(W&&!Si(S.parent)&&!kd(S.parent)&&!g.has(V)){let M=Nc(W.parameters),ee=M?.valueDeclaration&&Si(M.valueDeclaration)&&Gs(M.valueDeclaration.name,Ir)||me.createUniqueName("result",16),re=_an(ee,h);g.set(V,re),h.add(ee.text,R)}else if(S.parent&&(Si(S.parent)||nc(S.parent)||hg(S.parent))){let M=S.text,ee=h.get(M);if(ee&&ee.some(re=>re!==R)){let re=_an(S,h);d.set(V,re.identifier),g.set(V,re),h.add(M,R)}else{let re=JA(S);g.set(V,spe(re)),h.add(M,R)}}}}),nie(s,!0,_=>{if(hg(_)&&Ir(_.name)&&Km(_.parent)){let S=c.getSymbolAtLocation(_.name),R=S&&d.get(String(kg(S)));if(R&&R.text!==(_.name||_.propertyName).getText())return me.createBindingElement(_.dotDotDotToken,_.propertyName||_.name,R,_.initializer)}else if(Ir(_)){let S=c.getSymbolAtLocation(_),R=S&&d.get(String(kg(S)));if(R)return me.createIdentifier(R.text)}})}function _an(s,c){let g=(c.get(s.text)||E).length,d=g===0?s:me.createIdentifier(s.text+"_"+g);return spe(d)}function Qz(){return!oit}function t5(){return oit=!1,E}function rse(s,c,g,d,h){if(F1e(c,g.checker,"then"))return Jxs(c,Cg(c.arguments,0),Cg(c.arguments,1),g,d,h);if(F1e(c,g.checker,"catch"))return Ean(c,Cg(c.arguments,0),g,d,h);if(F1e(c,g.checker,"finally"))return Xxs(c,Cg(c.arguments,0),g,d,h);if(jo(c))return rse(s,c.expression,g,d,h);let _=g.checker.getTypeAtLocation(c);return _&&g.checker.getPromisedTypeOfPromise(_)?(pe.assertNode(Dd(c).parent,jo),Uxs(s,c,g,d,h)):t5()}function cit({checker:s},c){if(c.kind===106)return!0;if(Ir(c)&&!kp(c)&&Vo(c)==="undefined"){let g=s.getSymbolAtLocation(c);return!g||s.isUndefinedSymbol(g)}return!1}function Qxs(s){let c=me.createUniqueName(s.identifier.text,16);return spe(c)}function yan(s,c,g){let d;return g&&!L1e(s,c)&&(Z1e(g)?(d=g,c.synthNamesMap.forEach((h,_)=>{if(h.identifier.text===g.identifier.text){let S=Qxs(g);c.synthNamesMap.set(_,S)}})):d=spe(me.createUniqueName("result",16),g.types),WYt(d)),d}function ban(s,c,g,d,h){let _=[],S;if(d&&!L1e(s,c)){S=JA(WYt(d));let R=d.types,T=c.checker.getUnionType(R,2),W=c.isInJSFile?void 0:c.checker.typeToTypeNode(T,void 0,void 0),V=[me.createVariableDeclaration(S,void 0,W)],M=me.createVariableStatement(void 0,me.createVariableDeclarationList(V,1));_.push(M)}return _.push(g),h&&S&&zxs(h)&&_.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(Ran(h)),void 0,void 0,S)],2))),_}function Xxs(s,c,g,d,h){if(!c||cit(g,c))return rse(s,s.expression.expression,g,d,h);let _=yan(s,g,h),S=rse(s,s.expression.expression,g,!0,_);if(Qz())return t5();let R=VYt(c,d,void 0,void 0,s,g);if(Qz())return t5();let T=me.createBlock(S),W=me.createBlock(R),V=me.createTryStatement(T,void 0,W);return ban(s,g,V,_,h)}function Ean(s,c,g,d,h){if(!c||cit(g,c))return rse(s,s.expression.expression,g,d,h);let _=wan(c,g),S=yan(s,g,h),R=rse(s,s.expression.expression,g,!0,S);if(Qz())return t5();let T=VYt(c,d,S,_,s,g);if(Qz())return t5();let W=me.createBlock(R),V=me.createCatchClause(_&&JA(ZPe(_)),me.createBlock(T)),M=me.createTryStatement(W,V,void 0);return ban(s,g,M,S,h)}function Jxs(s,c,g,d,h,_){if(!c||cit(d,c))return Ean(s,g,d,h,_);if(g&&!cit(d,g))return t5();let S=wan(c,d),R=rse(s.expression.expression,s.expression.expression,d,!0,S);if(Qz())return t5();let T=VYt(c,h,_,S,s,d);return Qz()?t5():Nn(R,T)}function Uxs(s,c,g,d,h){if(L1e(s,g)){let _=JA(c);return d&&(_=me.createAwaitExpression(_)),[me.createReturnStatement(_)]}return lit(h,me.createAwaitExpression(c),void 0)}function lit(s,c,g){return!s||Tan(s)?[me.createExpressionStatement(c)]:Z1e(s)&&s.hasBeenDeclared?[me.createExpressionStatement(me.createAssignment(JA(PYt(s)),c))]:[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(ZPe(s)),void 0,g,c)],2))]}function LYt(s,c){if(c&&s){let g=me.createUniqueName("result",16);return[...lit(spe(g),s,c),me.createReturnStatement(g)]}return[me.createReturnStatement(s)]}function VYt(s,c,g,d,h,_){var S;switch(s.kind){case 106:break;case 212:case 80:if(!d)break;let R=me.createCallExpression(JA(s),void 0,Z1e(d)?[PYt(d)]:[]);if(L1e(h,_))return LYt(R,ait(h,s,_.checker));let T=_.checker.getTypeAtLocation(s),W=_.checker.getSignaturesOfType(T,0);if(!W.length)return t5();let V=W[0].getReturnType(),M=lit(g,me.createAwaitExpression(R),ait(h,s,_.checker));return g&&g.types.push(_.checker.getAwaitedType(V)||V),M;case 219:case 220:{let ee=s.body,re=(S=van(_.checker.getTypeAtLocation(s),_.checker))==null?void 0:S.getReturnType();if($u(ee)){let ge=[],Ie=!1;for(let _e of ee.statements)if(I2(_e))if(Ie=!0,CPe(_e,_.checker))ge=ge.concat(Ban(_,_e,c,g));else{let Ee=re&&_e.expression?San(_.checker,re,_e.expression):_e.expression;ge.push(...LYt(Ee,ait(h,s,_.checker)))}else{if(c&&yF(_e,Tf))return t5();ge.push(_e)}return L1e(h,_)?ge.map(_e=>JA(_e)):Kxs(ge,g,_,Ie)}else{let ge=wnt(ee,_.checker)?Ban(_,me.createReturnStatement(ee),c,g):E;if(ge.length>0)return ge;if(re){let Ie=San(_.checker,re,ee);if(L1e(h,_))return LYt(Ie,ait(h,s,_.checker));{let _e=lit(g,Ie,void 0);return g&&g.types.push(_.checker.getAwaitedType(re)||re),_e}}else return t5()}}default:return t5()}return E}function San(s,c,g){let d=JA(g);return s.getPromisedTypeOfPromise(c)?me.createAwaitExpression(d):d}function van(s,c){let g=c.getSignaturesOfType(s,0);return li(g)}function Kxs(s,c,g,d){let h=[];for(let _ of s)if(I2(_)){if(_.expression){let S=Can(_.expression,g.checker)?me.createAwaitExpression(_.expression):_.expression;c===void 0?h.push(me.createExpressionStatement(S)):Z1e(c)&&c.hasBeenDeclared?h.push(me.createExpressionStatement(me.createAssignment(PYt(c),S))):h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ZPe(c),void 0,void 0,S)],2)))}}else h.push(JA(_));return!d&&c!==void 0&&h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ZPe(c),void 0,void 0,me.createIdentifier("undefined"))],2))),h}function Ban(s,c,g,d){let h=[];return Lu(c,function _(S){if(Zl(S)){let R=rse(S,S,s,g,d);if(h=h.concat(R),h.length>0)return}else bu(S)||Lu(S,_)}),h}function wan(s,c){let g=[],d;if(kd(s)){if(s.parameters.length>0){let T=s.parameters[0].name;d=h(T)}}else Ir(s)?d=_(s):jo(s)&&Ir(s.name)&&(d=_(s.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function h(T){if(Ir(T))return _(T);let W=er(T.elements,V=>yp(V)?[]:[h(V.name)]);return jxs(T,W)}function _(T){let W=R(T),V=S(W);return V&&c.synthNamesMap.get(kg(V).toString())||spe(T,g)}function S(T){var W;return((W=Gs(T,mE))==null?void 0:W.symbol)??c.checker.getSymbolAtLocation(T)}function R(T){return T.original?T.original:T}}function Tan(s){return s?Z1e(s)?!s.identifier.text:ue(s.elements,Tan):!0}function spe(s,c=[]){return{kind:0,identifier:s,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function jxs(s,c=E,g=[]){return{kind:1,bindingPattern:s,elements:c,types:g}}function PYt(s){return s.hasBeenReferenced=!0,s.identifier}function ZPe(s){return Z1e(s)?WYt(s):Ran(s)}function Ran(s){for(let c of s.elements)ZPe(c);return s.bindingPattern}function WYt(s){return s.hasBeenDeclared=!0,s.identifier}function Z1e(s){return s.kind===0}function zxs(s){return s.kind===1}function L1e(s,c){return!!s.original&&c.setOfExpressionsToReturn.has(rd(s.original))}xg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(s){let{sourceFile:c,program:g,preferences:d}=s,h=xo.ChangeTracker.with(s,_=>{if($xs(c,g.getTypeChecker(),_,Mg(g.getCompilerOptions()),_1(c,d)))for(let R of g.getSourceFiles())qxs(R,c,g,_,_1(R,d))});return[sR("convertToEsModule",h,Z.Convert_to_ES_module)]}});function qxs(s,c,g,d,h){var _;for(let S of s.imports){let R=(_=g.getResolvedModuleFromModuleSpecifier(S,s))==null?void 0:_.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let T=v7(S);switch(T.kind){case 272:d.replaceNode(s,T,QP(T.name,void 0,S,h));break;case 214:ay(T,!1)&&d.replaceNode(s,T,me.createPropertyAccessExpression(JA(T),"default"));break}}}function $xs(s,c,g,d,h){let _={original:AGs(s),additional:new Set},S=eGs(s,c,_);tGs(s,S,g);let R=!1,T;for(let W of Me(s.statements,Ch)){let V=Dan(s,W,g,c,_,d,h);V&&a7(V,T??(T=new Map))}for(let W of Me(s.statements,V=>!Ch(V))){let V=rGs(s,W,c,g,_,d,S,T,h);R=R||V}return T?.forEach((W,V)=>{g.replaceNode(s,V,W)}),R}function eGs(s,c,g){let d=new Map;return Nan(s,h=>{let{text:_}=h.name;!d.has(_)&&(xye(h.name)||c.resolveName(_,h,111551,!0))&&d.set(_,uit(`_${_}`,g))}),d}function tGs(s,c,g){Nan(s,(d,h)=>{if(h)return;let{text:_}=d.name;g.replaceNode(s,d,me.createIdentifier(c.get(_)||_))})}function Nan(s,c){s.forEachChild(function g(d){if(jo(d)&&cQ(s,d.expression)&&Ir(d.name)){let{parent:h}=d;c(d,fo(h)&&h.left===d&&h.operatorToken.kind===64)}d.forEachChild(g)})}function rGs(s,c,g,d,h,_,S,R,T){switch(c.kind){case 244:return Dan(s,c,d,g,h,_,T),!1;case 245:{let{expression:W}=c;switch(W.kind){case 214:return ay(W,!0)&&d.replaceNode(s,c,QP(void 0,void 0,W.arguments[0],T)),!1;case 227:{let{operatorToken:V}=W;return V.kind===64&&iGs(s,g,W,d,S,R)}}}default:return!1}}function Dan(s,c,g,d,h,_,S){let{declarationList:R}=c,T=!1,W=At(R.declarations,V=>{let{name:M,initializer:ee}=V;if(ee){if(cQ(s,ee))return T=!0,ope([]);if(ay(ee,!0))return T=!0,uGs(M,ee.arguments[0],d,h,_,S);if(jo(ee)&&ay(ee.expression,!0))return T=!0,nGs(M,ee.name.text,ee.expression.arguments[0],h,S)}return ope([me.createVariableStatement(void 0,me.createVariableDeclarationList([V],R.flags))])});if(T){g.replaceNodeWithNodes(s,c,er(W,M=>M.newImports));let V;return F(W,M=>{M.useSitesToUnqualify&&a7(M.useSitesToUnqualify,V??(V=new Map))}),V}}function nGs(s,c,g,d,h){switch(s.kind){case 207:case 208:{let _=uit(c,d);return ope([Fan(_,c,g,h),git(void 0,s,me.createIdentifier(_))])}case 80:return ope([Fan(s.text,c,g,h)]);default:return pe.assertNever(s,`Convert to ES module got invalid syntax form ${s.kind}`)}}function iGs(s,c,g,d,h,_){let{left:S,right:R}=g;if(!jo(S))return!1;if(cQ(s,S))if(cQ(s,R))d.delete(s,g.parent);else{let T=og(R)?sGs(R,_):ay(R,!0)?aGs(R.arguments[0],c):void 0;return T?(d.replaceNodeWithNodes(s,g.parent,T[0]),T[1]):(d.replaceRangeWithText(s,Gy(S.getStart(s),R.pos),"export default"),!0)}else cQ(s,S.expression)&&oGs(s,g,d,h);return!1}function sGs(s,c){let g=qt(s.properties,d=>{switch(d.kind){case 178:case 179:case 305:case 306:return;case 304:return Ir(d.name)?lGs(d.name.text,d.initializer,c):void 0;case 175:return Ir(d.name)?Gan(d.name.text,[me.createToken(95)],d,c):void 0;default:pe.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return g&&[g,!1]}function oGs(s,c,g,d){let{text:h}=c.left.name,_=d.get(h);if(_!==void 0){let S=[git(void 0,_,c.right),HYt([me.createExportSpecifier(!1,_,h)])];g.replaceNodeWithNodes(s,c.parent,S)}else cGs(c,s,g)}function aGs(s,c){let g=s.text,d=c.getSymbolAtLocation(s),h=d?d.exports:N;return h.has("export=")?[[OYt(g)],!0]:h.has("default")?h.size>1?[[kan(g),OYt(g)],!0]:[[OYt(g)],!0]:[[kan(g)],!1]}function kan(s){return HYt(void 0,s)}function OYt(s){return HYt([me.createExportSpecifier(!1,void 0,"default")],s)}function cGs({left:s,right:c,parent:g},d,h){let _=s.name.text;if((UA(c)||lA(c)||vd(c))&&(!c.name||c.name.text===_)){h.replaceRange(d,{pos:s.getStart(d),end:c.getStart(d)},me.createToken(95),{suffix:" "}),c.name||h.insertName(d,c,_);let S=qd(g,27,d);S&&h.delete(d,S)}else h.replaceNodeRangeWithNodes(d,s.expression,qd(s,25,d),[me.createToken(95),me.createToken(87)],{joiner:" ",suffix:" "})}function lGs(s,c,g){let d=[me.createToken(95)];switch(c.kind){case 219:{let{name:_}=c;if(_&&_.text!==s)return h()}case 220:return Gan(s,d,c,g);case 232:return pGs(s,d,c,g);default:return h()}function h(){return git(d,me.createIdentifier(s),MYt(c,g))}}function MYt(s,c){if(!c||!jt(Do(c.keys()),d=>cy(s,d)))return s;return Ki(s)?$Ae(s,!0,g):nie(s,!0,g);function g(d){if(d.kind===212){let h=c.get(d);return c.delete(d),h}}}function uGs(s,c,g,d,h,_){switch(s.kind){case 207:{let S=qt(s.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!Ir(R.propertyName)||!Ir(R.name)?void 0:Zan(R.propertyName&&R.propertyName.text,R.name.text));if(S)return ope([QP(void 0,S,c,_)])}case 208:{let S=uit(E1e(c.text,h),d);return ope([QP(me.createIdentifier(S),void 0,c,_),git(void 0,JA(s),me.createIdentifier(S))])}case 80:return gGs(s,c,g,d,_);default:return pe.assertNever(s,`Convert to ES module got invalid name kind ${s.kind}`)}}function gGs(s,c,g,d,h){let _=g.getSymbolAtLocation(s),S=new Map,R=!1,T;for(let V of d.original.get(s.text)){if(g.getSymbolAtLocation(V)!==_||V===s)continue;let{parent:M}=V;if(jo(M)){let{name:{text:ee}}=M;if(ee==="default"){R=!0;let re=V.getText();(T??(T=new Map)).set(M,me.createIdentifier(re))}else{pe.assert(M.expression===V,"Didn't expect expression === use");let re=S.get(ee);re===void 0&&(re=uit(ee,d),S.set(ee,re)),(T??(T=new Map)).set(M,me.createIdentifier(re))}}else R=!0}let W=S.size===0?void 0:Do(Yt(S.entries(),([V,M])=>me.createImportSpecifier(!1,V===M?void 0:me.createIdentifier(V),me.createIdentifier(M))));return W||(R=!0),ope([QP(R?JA(s):void 0,W,c,h)],T)}function uit(s,c){for(;c.original.has(s)||c.additional.has(s);)s=`_${s}`;return c.additional.add(s),s}function AGs(s){let c=dl();return xan(s,g=>c.add(g.text,g)),c}function xan(s,c){Ir(s)&&dGs(s)&&c(s),s.forEachChild(g=>xan(g,c))}function dGs(s){let{parent:c}=s;switch(c.kind){case 212:return c.name!==s;case 209:return c.propertyName!==s;case 277:return c.propertyName!==s;default:return!0}}function Gan(s,c,g,d){return me.createFunctionDeclaration(Nn(c,o0(g.modifiers)),JA(g.asteriskToken),s,o0(g.typeParameters),o0(g.parameters),JA(g.type),me.converters.convertToFunctionBlock(MYt(g.body,d)))}function pGs(s,c,g,d){return me.createClassDeclaration(Nn(c,o0(g.modifiers)),s,o0(g.typeParameters),o0(g.heritageClauses),MYt(g.members,d))}function Fan(s,c,g,d){return c==="default"?QP(me.createIdentifier(s),void 0,g,d):QP(void 0,[Zan(c,s)],g,d)}function Zan(s,c){return me.createImportSpecifier(!1,s!==void 0&&s!==c?me.createIdentifier(s):void 0,me.createIdentifier(c))}function git(s,c,g){return me.createVariableStatement(s,me.createVariableDeclarationList([me.createVariableDeclaration(c,void 0,void 0,g)],2))}function HYt(s,c){return me.createExportDeclaration(void 0,!1,s&&me.createNamedExports(s),c===void 0?void 0:me.createStringLiteral(c))}function ope(s,c){return{newImports:s,useSitesToUnqualify:c}}var YYt="correctQualifiedNameToIndexedAccessType",Lan=[Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];xg({errorCodes:Lan,getCodeActions(s){let c=Van(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,h=>Pan(h,s.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[ug(YYt,g,[Z.Rewrite_as_the_indexed_access_type_0,d],YYt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[YYt],getAllCodeActions:s=>Qd(s,Lan,(c,g)=>{let d=Van(g.file,g.start);d&&Pan(c,g.file,d)})});function Van(s,c){let g=ji(Jc(s,c),zi);return pe.assert(!!g,"Expected position to be owned by a qualified name."),Ir(g.left)?g:void 0}function Pan(s,c,g){let d=g.right.text,h=me.createIndexedAccessTypeNode(me.createTypeReferenceNode(g.left,void 0),me.createLiteralTypeNode(me.createStringLiteral(d)));s.replaceNode(c,g,h)}var QYt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],XYt="convertToTypeOnlyExport";xg({errorCodes:QYt,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Oan(d,Wan(c.span,c.sourceFile),c));if(g.length)return[ug(XYt,g,Z.Convert_to_type_only_export,XYt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[XYt],getAllCodeActions:function(c){let g=new Set;return Qd(c,QYt,(d,h)=>{let _=Wan(h,c.sourceFile);_&&Zy(g,rd(_.parent.parent))&&Oan(d,_,c)})}});function Wan(s,c){return Gs(Jc(c,s.start).parent,R0)}function Oan(s,c,g){if(!c)return;let d=c.parent,h=d.parent,_=fGs(c,g);if(_.length===d.elements.length)s.insertModifierBefore(g.sourceFile,156,d);else{let S=me.updateExportDeclaration(h,h.modifiers,!1,me.updateNamedExports(d,Me(d.elements,T=>!k(_,T))),h.moduleSpecifier,void 0),R=me.createExportDeclaration(void 0,!0,me.createNamedExports(_),h.moduleSpecifier,void 0);s.replaceNode(g.sourceFile,h,S,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Exclude}),s.insertNodeAfter(g.sourceFile,h,R)}}function fGs(s,c){let g=s.parent;if(g.elements.length===1)return g.elements;let d=DMt(Oy(g),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Me(g.elements,h=>{var _;return h===s||((_=NMt(h,d))==null?void 0:_.code)===QYt[0]})}var Man=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],Ait="convertToTypeOnlyImport";xg({errorCodes:Man,getCodeActions:function(c){var g;let d=Han(c.sourceFile,c.span.start);if(d){let h=xo.ChangeTracker.with(c,R=>LPe(R,c.sourceFile,d)),_=d.kind===277&&Mf(d.parent.parent.parent)&&Yan(d,c.sourceFile,c.program)?xo.ChangeTracker.with(c,R=>LPe(R,c.sourceFile,d.parent.parent.parent)):void 0,S=ug(Ait,h,d.kind===277?[Z.Use_type_0,((g=d.propertyName)==null?void 0:g.text)??d.name.text]:Z.Use_import_type,Ait,Z.Fix_all_with_type_only_imports);return jt(_)?[sR(Ait,_,Z.Use_import_type),S]:[S]}},fixIds:[Ait],getAllCodeActions:function(c){let g=new Set;return Qd(c,Man,(d,h)=>{let _=Han(h.file,h.start);_?.kind===273&&!g.has(_)?(LPe(d,h.file,_),g.add(_)):_?.kind===277&&Mf(_.parent.parent.parent)&&!g.has(_.parent.parent.parent)&&Yan(_,h.file,c.program)?(LPe(d,h.file,_.parent.parent.parent),g.add(_.parent.parent.parent)):_?.kind===277&&LPe(d,h.file,_)})}});function Han(s,c){let{parent:g}=Jc(s,c);return uy(g)||Mf(g)&&g.importClause?g:void 0}function Yan(s,c,g){if(s.parent.parent.name)return!1;let d=s.parent.elements.filter(_=>!_.isTypeOnly);if(d.length===1)return!0;let h=g.getTypeChecker();for(let _ of d)if(Kp.Core.eachSymbolReferenceInFile(_.name,h,c,R=>{let T=h.getSymbolAtLocation(R);return!!T&&h.symbolIsValue(T)||!JL(R)}))return!1;return!0}function LPe(s,c,g){var d;if(uy(g))s.replaceNode(c,g,me.updateImportSpecifier(g,!0,g.propertyName,g.name));else{let h=g.importClause;if(h.name&&h.namedBindings)s.replaceNodeWithNodes(c,g,[me.createImportDeclaration(o0(g.modifiers,!0),me.createImportClause(156,JA(h.name,!0),void 0),JA(g.moduleSpecifier,!0),JA(g.attributes,!0)),me.createImportDeclaration(o0(g.modifiers,!0),me.createImportClause(156,void 0,JA(h.namedBindings,!0)),JA(g.moduleSpecifier,!0),JA(g.attributes,!0))]);else{let _=((d=h.namedBindings)==null?void 0:d.kind)===276?me.updateNamedImports(h.namedBindings,Tr(h.namedBindings.elements,R=>me.updateImportSpecifier(R,!1,R.propertyName,R.name))):h.namedBindings,S=me.updateImportDeclaration(g,g.modifiers,me.updateImportClause(h,156,h.name,_),g.moduleSpecifier,g.attributes);s.replaceNode(c,g,S)}}}var JYt="convertTypedefToType",Qan=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];xg({fixIds:[JYt],errorCodes:Qan,getCodeActions(s){let c=OF(s.host,s.formatContext.options),g=Jc(s.sourceFile,s.span.start);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Xan(h,g,s.sourceFile,c));if(d.length>0)return[ug(JYt,d,Z.Convert_typedef_to_TypeScript_type,JYt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:s=>Qd(s,Qan,(c,g)=>{let d=OF(s.host,s.formatContext.options),h=Jc(g.file,g.start);h&&Xan(c,h,g.file,d,!0)})});function Xan(s,c,g,d,h=!1){if(!bU(c))return;let _=hGs(c);if(!_)return;let S=c.parent,{leftSibling:R,rightSibling:T}=IGs(c),W=S.getStart(),V="";!R&&S.comment&&(W=Jan(S,S.getStart(),c.getStart()),V=`${d} */${d}`),R&&(h&&bU(R)?(W=c.getStart(),V=""):(W=Jan(S,R.getStart(),c.getStart()),V=`${d} */${d}`));let M=S.getEnd(),ee="";T&&(h&&bU(T)?(M=T.getStart(),ee=`${d}${d}`):(M=T.getStart(),ee=`${d}/**${d} * `)),s.replaceRange(g,{pos:W,end:M},_,{prefix:V,suffix:ee})}function IGs(s){let c=s.parent,g=c.getChildCount()-1,d=c.getChildren().findIndex(S=>S.getStart()===s.getStart()&&S.getEnd()===s.getEnd()),h=d>0?c.getChildAt(d-1):void 0,_=d0;h--)if(!/[*/\s]/.test(d.substring(h-1,h)))return c+h;return g}function hGs(s){var c;let{typeExpression:g}=s;if(!g)return;let d=(c=s.name)==null?void 0:c.getText();if(d){if(g.kind===323)return mGs(d,g);if(g.kind===310)return CGs(d,g)}}function mGs(s,c){let g=Uan(c);if(jt(g))return me.createInterfaceDeclaration(void 0,s,void 0,void 0,g)}function CGs(s,c){let g=JA(c.type);if(g)return me.createTypeAliasDeclaration(void 0,me.createIdentifier(s),void 0,g)}function Uan(s){let c=s.jsDocPropertyTags;return jt(c)?Xt(c,d=>{var h;let _=_Gs(d),S=(h=d.typeExpression)==null?void 0:h.type,R=d.isBracketed,T;if(S&&yU(S)){let W=Uan(S);T=me.createTypeLiteralNode(W)}else S&&(T=JA(S));if(T&&_){let W=R?me.createToken(58):void 0;return me.createPropertySignature(void 0,_,W,T)}}):void 0}function _Gs(s){return s.name.kind===80?s.name.text:s.name.right.text}function yGs(s){return Xm(s)?er(s.jsDoc,c=>{var g;return(g=c.tags)==null?void 0:g.filter(d=>bU(d))}):[]}var UYt="convertLiteralTypeToMappedType",Kan=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];xg({errorCodes:Kan,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=jan(g,d.start);if(!h)return;let{name:_,constraint:S}=h,R=xo.ChangeTracker.with(c,T=>zan(T,g,h));return[ug(UYt,R,[Z.Convert_0_to_1_in_0,S,_],UYt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[UYt],getAllCodeActions:s=>Qd(s,Kan,(c,g)=>{let d=jan(g.file,g.start);d&&zan(c,g.file,d)})});function jan(s,c){let g=Jc(s,c);if(Ir(g)){let d=Ma(g.parent.parent,ss),h=g.getText(s);return{container:Ma(d.parent,mh),typeNode:d.type,constraint:h,name:h==="K"?"P":"K"}}}function zan(s,c,{container:g,typeNode:d,constraint:h,name:_}){s.replaceNode(c,g,me.createMappedTypeNode(void 0,me.createTypeParameterDeclaration(void 0,_,me.createTypeReferenceNode(h)),void 0,void 0,d,void 0))}var qan=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],KYt="fixClassIncorrectlyImplementsInterface";xg({errorCodes:qan,getCodeActions(s){let{sourceFile:c,span:g}=s,d=$an(c,g.start);return Xt(jJ(d),h=>{let _=xo.ChangeTracker.with(s,S=>tcn(s,h,c,d,S,s.preferences));return _.length===0?void 0:ug(KYt,_,[Z.Implement_interface_0,h.getText(c)],KYt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[KYt],getAllCodeActions(s){let c=new Set;return Qd(s,qan,(g,d)=>{let h=$an(d.file,d.start);if(Zy(c,rd(h)))for(let _ of jJ(h))tcn(s,_,d.file,h,g,s.preferences)})}});function $an(s,c){return pe.checkDefined(hC(Jc(s,c)),"There should be a containing class")}function ecn(s){return!s.valueDeclaration||!(o_(s.valueDeclaration)&2)}function tcn(s,c,g,d,h,_){let S=s.program.getTypeChecker(),R=bGs(d,S),T=S.getTypeAtLocation(c),V=S.getPropertiesOfType(T).filter(dh(ecn,_e=>!R.has(_e.escapedName))),M=S.getTypeAtLocation(d),ee=de(d.members,_e=>Tc(_e));M.getNumberIndexType()||ge(T,1),M.getStringIndexType()||ge(T,0);let re=yQ(g,s.program,_,s.host);MQt(d,V,g,s,_,re,_e=>Ie(g,d,_e)),re.writeFixes(h);function ge(_e,Ee){let Ne=S.getIndexInfoOfType(_e,Ee);Ne&&Ie(g,d,S.indexInfoToIndexSignatureDeclaration(Ne,d,void 0,void 0,nse(s)))}function Ie(_e,Ee,Ne){ee?h.insertNodeAfter(_e,ee,Ne):h.insertMemberAtStart(_e,Ee,Ne)}}function bGs(s,c){let g=BB(s);if(!g)return qu();let d=c.getTypeAtLocation(g),h=c.getPropertiesOfType(d);return qu(h.filter(ecn))}var rcn="import",ncn="fixMissingImport",icn=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code,Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found.code];xg({errorCodes:icn,getCodeActions(s){let{errorCode:c,preferences:g,sourceFile:d,span:h,program:_}=s,S=ucn(s,c,h.start,!0);if(S)return S.map(({fix:R,symbolName:T,errorIdentifierText:W})=>qYt(s,d,T,R,T!==W,_,g))},fixIds:[ncn],getAllCodeActions:s=>{let{sourceFile:c,program:g,preferences:d,host:h,cancellationToken:_}=s,S=scn(c,g,!0,d,h,_);return Yz(s,icn,R=>S.addImportFromDiagnostic(R,s)),Hz(xo.ChangeTracker.with(s,S.writeFixes))}});function yQ(s,c,g,d,h){return scn(s,c,!1,g,d,h)}function scn(s,c,g,d,h,_){let S=c.getCompilerOptions(),R=[],T=[],W=new Map,V=new Set,M=new Set,ee=new Map;return{addImportFromDiagnostic:Ie,addImportFromExportedSymbol:_e,addImportForModuleSymbol:Ee,writeFixes:We,hasFixes:$e,addImportForUnresolvedIdentifier:ge,addImportForNonExistentExport:Ne,removeExistingImport:Te,addVerbatimImport:re};function re(Ye){M.add(Ye)}function ge(Ye,Tt,ot){let Qe=xGs(Ye,Tt,ot);!Qe||!Qe.length||Ze(ma(Qe))}function Ie(Ye,Tt){let ot=ucn(Tt,Ye.code,Ye.start,g);!ot||!ot.length||Ze(ma(ot))}function _e(Ye,Tt,ot){var Qe,mt;let ht=pe.checkDefined(Ye.parent,"Expected exported symbol to have module symbol as parent"),_t=uPe(Ye,Mg(S)),Rt=c.getTypeChecker(),Lt=Rt.getMergedSymbol(FC(Ye,Rt)),Ke=acn(s,Lt,_t,ht,!1,c,h,d,_);if(!Ke){pe.assert((Qe=d.autoImportFileExcludePatterns)==null?void 0:Qe.length);return}let Pt=V1e(s,c),_r=jYt(s,Ke,c,void 0,!!Tt,Pt,h,d);if(_r){let Gt=((mt=Gs(ot?.name,Ir))==null?void 0:mt.text)??_t,nt,Dt;ot&&rN(ot)&&(_r.kind===3||_r.kind===2)&&_r.addAsTypeOnly===1&&(nt=2),Ye.name!==Gt&&(Dt=Ye.name),_r={..._r,...nt===void 0?{}:{addAsTypeOnly:nt},...Dt===void 0?{}:{propertyName:Dt}},Ze({fix:_r,symbolName:Gt??_t,errorIdentifierText:void 0})}}function Ee(Ye,Tt,ot){var Qe,mt,ht;let _t=c.getTypeChecker(),Rt=_t.getAliasedSymbol(Ye);pe.assert(Rt.flags&1536,"Expected symbol to be a module");let Lt=z3(c,h),Ke=WF.getModuleSpecifiersWithCacheInfo(Rt,_t,S,s,Lt,d,void 0,!0),Pt=V1e(s,c),_r=PPe(Tt,!0,void 0,Ye.flags,c.getTypeChecker(),S);_r=_r===1&&rN(ot)?2:1;let Gt=Mf(ot)?h3(ot)?1:2:uy(ot)?0:Vw(ot)&&ot.name?1:2,nt=[{symbol:Ye,moduleSymbol:Rt,moduleFileName:(ht=(mt=(Qe=Rt.declarations)==null?void 0:Qe[0])==null?void 0:mt.getSourceFile())==null?void 0:ht.fileName,exportKind:4,targetFlags:Ye.flags,isFromPackageJson:!1}],Dt=jYt(s,nt,c,void 0,!!Tt,Pt,h,d),tr;Dt&&Gt!==2&&Dt.kind!==0&&Dt.kind!==1?tr={...Dt,addAsTypeOnly:_r,importKind:Gt}:tr={kind:3,moduleSpecifierKind:Dt!==void 0?Dt.moduleSpecifierKind:Ke.kind,moduleSpecifier:Dt!==void 0?Dt.moduleSpecifier:ma(Ke.moduleSpecifiers),importKind:Gt,addAsTypeOnly:_r,useRequire:Pt},Ze({fix:tr,symbolName:Ye.name,errorIdentifierText:void 0})}function Ne(Ye,Tt,ot,Qe,mt){let ht=c.getSourceFile(Tt),_t=V1e(s,c);if(ht&&ht.symbol){let{fixes:Rt}=VPe([{exportKind:ot,isFromPackageJson:!1,moduleFileName:Tt,moduleSymbol:ht.symbol,targetFlags:Qe}],void 0,mt,_t,c,s,h,d);Rt.length&&Ze({fix:Rt[0],symbolName:Ye,errorIdentifierText:Ye})}else{let Rt=fPe(Tt,99,c,h),Lt=WF.getLocalModuleSpecifierBetweenFileNames(s,Tt,S,z3(c,h),d),Ke=dit(Rt,ot,c),Pt=PPe(mt,!0,void 0,Qe,c.getTypeChecker(),S);Ze({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:Lt,importKind:Ke,addAsTypeOnly:Pt,useRequire:_t},symbolName:Ye,errorIdentifierText:Ye})}}function Te(Ye){Ye.kind===274&&pe.assertIsDefined(Ye.name,"ImportClause should have a name if it's being removed"),V.add(Ye)}function Ze(Ye){var Tt,ot,Qe;let{fix:mt,symbolName:ht}=Ye;switch(mt.kind){case 0:R.push(mt);break;case 1:T.push(mt);break;case 2:{let{importClauseOrBindingPattern:Ke,importKind:Pt,addAsTypeOnly:_r,propertyName:Gt}=mt,nt=W.get(Ke);if(nt||W.set(Ke,nt={importClauseOrBindingPattern:Ke,defaultImport:void 0,namedImports:new Map}),Pt===0){let Dt=(Tt=nt?.namedImports.get(ht))==null?void 0:Tt.addAsTypeOnly;nt.namedImports.set(ht,{addAsTypeOnly:_t(Dt,_r),propertyName:Gt})}else pe.assert(nt.defaultImport===void 0||nt.defaultImport.name===ht,"(Add to Existing) Default import should be missing or match symbolName"),nt.defaultImport={name:ht,addAsTypeOnly:_t((ot=nt.defaultImport)==null?void 0:ot.addAsTypeOnly,_r)};break}case 3:{let{moduleSpecifier:Ke,importKind:Pt,useRequire:_r,addAsTypeOnly:Gt,propertyName:nt}=mt,Dt=Rt(Ke,Pt,_r,Gt);switch(pe.assert(Dt.useRequire===_r,"(Add new) Tried to add an `import` and a `require` for the same module"),Pt){case 1:pe.assert(Dt.defaultImport===void 0||Dt.defaultImport.name===ht,"(Add new) Default import should be missing or match symbolName"),Dt.defaultImport={name:ht,addAsTypeOnly:_t((Qe=Dt.defaultImport)==null?void 0:Qe.addAsTypeOnly,Gt)};break;case 0:let tr=(Dt.namedImports||(Dt.namedImports=new Map)).get(ht);Dt.namedImports.set(ht,[_t(tr,Gt),nt]);break;case 3:if(S.verbatimModuleSyntax){let ur=(Dt.namedImports||(Dt.namedImports=new Map)).get(ht);Dt.namedImports.set(ht,[_t(ur,Gt),nt])}else pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===ht,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Pt,name:ht,addAsTypeOnly:Gt};break;case 2:pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===ht,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Pt,name:ht,addAsTypeOnly:Gt};break}break}case 4:break;default:pe.assertNever(mt,`fix wasn't never - got kind ${mt.kind}`)}function _t(Ke,Pt){return Math.max(Ke??0,Pt)}function Rt(Ke,Pt,_r,Gt){let nt=Lt(Ke,!0),Dt=Lt(Ke,!1),tr=ee.get(nt),ur=ee.get(Dt),Gr={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:_r};return Pt===1&&Gt===2?tr||(ee.set(nt,Gr),Gr):Gt===1&&(tr||ur)?tr||ur:ur||(ee.set(Dt,Gr),Gr)}function Lt(Ke,Pt){return`${Pt?1:0}|${Ke}`}}function We(Ye,Tt){var ot,Qe;let mt;s.imports!==void 0&&s.imports.length===0&&Tt!==void 0?mt=Tt:mt=_1(s,d);for(let Rt of R)$Yt(Ye,s,Rt);for(let Rt of T)Ccn(Ye,s,Rt,mt);let ht;if(V.size){pe.assert(aN(s),"Cannot remove imports from a future source file");let Rt=new Set(Xt([...V],Gt=>ji(Gt,Mf))),Lt=new Set(Xt([...V],Gt=>ji(Gt,y7))),Ke=[...Rt].filter(Gt=>{var nt,Dt,tr;return!W.has(Gt.importClause)&&(!((nt=Gt.importClause)!=null&&nt.name)||V.has(Gt.importClause))&&(!Gs((Dt=Gt.importClause)==null?void 0:Dt.namedBindings,Zx)||V.has(Gt.importClause.namedBindings))&&(!Gs((tr=Gt.importClause)==null?void 0:tr.namedBindings,yN)||ue(Gt.importClause.namedBindings.elements,ur=>V.has(ur)))}),Pt=[...Lt].filter(Gt=>(Gt.name.kind!==207||!W.has(Gt.name))&&(Gt.name.kind!==207||ue(Gt.name.elements,nt=>V.has(nt)))),_r=[...Rt].filter(Gt=>{var nt,Dt;return((nt=Gt.importClause)==null?void 0:nt.namedBindings)&&Ke.indexOf(Gt)===-1&&!((Dt=W.get(Gt.importClause))!=null&&Dt.namedImports)&&(Gt.importClause.namedBindings.kind===275||ue(Gt.importClause.namedBindings.elements,tr=>V.has(tr)))});for(let Gt of[...Ke,...Pt])Ye.delete(s,Gt);for(let Gt of _r)Ye.replaceNode(s,Gt.importClause,me.updateImportClause(Gt.importClause,Gt.importClause.phaseModifier,Gt.importClause.name,void 0));for(let Gt of V){let nt=ji(Gt,Mf);nt&&Ke.indexOf(nt)===-1&&_r.indexOf(nt)===-1?Gt.kind===274?Ye.delete(s,Gt.name):(pe.assert(Gt.kind===277,"NamespaceImport should have been handled earlier"),(ot=W.get(nt.importClause))!=null&&ot.namedImports?(ht??(ht=new Set)).add(Gt):Ye.delete(s,Gt)):Gt.kind===209?(Qe=W.get(Gt.parent))!=null&&Qe.namedImports?(ht??(ht=new Set)).add(Gt):Ye.delete(s,Gt):Gt.kind===272&&Ye.delete(s,Gt)}}W.forEach(({importClauseOrBindingPattern:Rt,defaultImport:Lt,namedImports:Ke})=>{mcn(Ye,s,Rt,Lt,Do(Ke.entries(),([Pt,{addAsTypeOnly:_r,propertyName:Gt}])=>({addAsTypeOnly:_r,propertyName:Gt,name:Pt})),ht,d)});let _t;ee.forEach(({useRequire:Rt,defaultImport:Lt,namedImports:Ke,namespaceLikeImport:Pt},_r)=>{let Gt=_r.slice(2),Dt=(Rt?bcn:ycn)(Gt,mt,Lt,Ke&&Do(Ke.entries(),([tr,[ur,Gr]])=>({addAsTypeOnly:ur,propertyName:Gr,name:tr})),Pt,S,d);_t=zr(_t,Dt)}),_t=zr(_t,Ue()),_t&&Yrt(Ye,s,_t,!0,d)}function Ue(){if(!M.size)return;let Ye=new Set(Xt([...M],ot=>ji(ot,Mf))),Tt=new Set(Xt([...M],ot=>ji(ot,ine)));return[...Xt([...M],ot=>ot.kind===272?JA(ot,!0):void 0),...[...Ye].map(ot=>{var Qe;return M.has(ot)?JA(ot,!0):JA(me.updateImportDeclaration(ot,ot.modifiers,ot.importClause&&me.updateImportClause(ot.importClause,ot.importClause.phaseModifier,M.has(ot.importClause)?ot.importClause.name:void 0,M.has(ot.importClause.namedBindings)?ot.importClause.namedBindings:(Qe=Gs(ot.importClause.namedBindings,yN))!=null&&Qe.elements.some(mt=>M.has(mt))?me.updateNamedImports(ot.importClause.namedBindings,ot.importClause.namedBindings.elements.filter(mt=>M.has(mt))):void 0),ot.moduleSpecifier,ot.attributes),!0)}),...[...Tt].map(ot=>M.has(ot)?JA(ot,!0):JA(me.updateVariableStatement(ot,ot.modifiers,me.updateVariableDeclarationList(ot.declarationList,Xt(ot.declarationList.declarations,Qe=>M.has(Qe)?Qe:me.updateVariableDeclaration(Qe,Qe.name.kind===207?me.updateObjectBindingPattern(Qe.name,Qe.name.elements.filter(mt=>M.has(mt))):Qe.name,Qe.exclamationToken,Qe.type,Qe.initializer)))),!0))]}function $e(){return R.length>0||T.length>0||W.size>0||ee.size>0||M.size>0||V.size>0}}function EGs(s,c,g,d){let h=zie(s,d,g),_=ccn(s,c);return{getModuleSpecifierForBestExportInfo:S};function S(R,T,W,V){let{fixes:M,computedWithoutCacheCount:ee}=VPe(R,T,W,!1,c,s,g,d,_,V),re=Acn(M,s,c,h,g,d);return re&&{...re,computedWithoutCacheCount:ee}}}function SGs(s,c,g,d,h,_,S,R,T,W,V,M){let ee;g?(ee=v1e(d,S,R,V,M).get(d.path,g),pe.assertIsDefined(ee,"Some exportInfo should match the specified exportMapKey")):(ee=Xh(l2(c.name))?[BGs(s,h,c,R,S)]:acn(d,s,h,c,_,R,S,V,M),pe.assertIsDefined(ee,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=V1e(d,R),ge=JL(Jc(d,W)),Ie=pe.checkDefined(jYt(d,ee,R,W,ge,re,S,V));return{moduleSpecifier:Ie.moduleSpecifier,codeAction:ocn(qYt({host:S,formatContext:T,preferences:V},d,h,Ie,!1,R,V))}}function vGs(s,c,g,d,h,_){let S=g.getCompilerOptions(),R=Xa(zYt(s,g.getTypeChecker(),c,S)),T=Icn(s,c,R,g),W=R!==c.text;return T&&ocn(qYt({host:d,formatContext:h,preferences:_},s,R,T,W,g,_))}function jYt(s,c,g,d,h,_,S,R){let T=zie(s,R,S);return Acn(VPe(c,d,h,_,g,s,S,R).fixes,s,g,T,S,R)}function ocn({description:s,changes:c,commands:g}){return{description:s,changes:c,commands:g}}function acn(s,c,g,d,h,_,S,R,T){let W=lcn(_,S),V=R.autoImportFileExcludePatterns&&ZMt(S,R),M=_.getTypeChecker().getMergedSymbol(d),ee=V&&M.declarations&&Cp(M,308),re=ee&&V(ee);return v1e(s,S,_,R,T).search(s.path,h,ge=>ge===g,ge=>{let Ie=W(ge[0].isFromPackageJson);if(Ie.getMergedSymbol(FC(ge[0].symbol,Ie))===c&&(re||ge.some(_e=>Ie.getMergedSymbol(_e.moduleSymbol)===d||_e.symbol.parent===d)))return ge})}function BGs(s,c,g,d,h){var _,S;let R=W(d.getTypeChecker(),!1);if(R)return R;let T=(S=(_=h.getPackageJsonAutoImportProvider)==null?void 0:_.call(h))==null?void 0:S.getTypeChecker();return pe.checkDefined(T&&W(T,!0),"Could not find symbol in specified module for code actions");function W(V,M){let ee=IPe(g,V);if(ee&&FC(ee.symbol,V)===s)return{symbol:ee.symbol,moduleSymbol:g,moduleFileName:void 0,exportKind:ee.exportKind,targetFlags:FC(s,V).flags,isFromPackageJson:M};let re=V.tryGetMemberInModuleExportsAndProperties(c,g);if(re&&FC(re,V)===s)return{symbol:re,moduleSymbol:g,moduleFileName:void 0,exportKind:0,targetFlags:FC(s,V).flags,isFromPackageJson:M}}}function VPe(s,c,g,d,h,_,S,R,T=aN(_)?ccn(_,h):void 0,W){let V=h.getTypeChecker(),M=T?er(s,T.getImportsForExportInfo):E,ee=c!==void 0&&wGs(M,c),re=RGs(M,g,V,h.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...ee?[ee]:E,re]};let{fixes:ge,computedWithoutCacheCount:Ie=0}=DGs(s,M,h,_,c,g,d,S,R,W);return{computedWithoutCacheCount:Ie,fixes:[...ee?[ee]:E,...ge]}}function wGs(s,c){return X(s,({declaration:g,importKind:d})=>{var h;if(d!==0)return;let _=TGs(g),S=_&&((h=ZY(g))==null?void 0:h.text);if(S)return{kind:0,namespacePrefix:_,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:S}})}function TGs(s){var c,g,d;switch(s.kind){case 261:return(c=Gs(s.name,Ir))==null?void 0:c.text;case 272:return s.name.text;case 352:case 273:return(d=Gs((g=s.importClause)==null?void 0:g.namedBindings,Zx))==null?void 0:d.name.text;default:return pe.assertNever(s)}}function PPe(s,c,g,d,h,_){return s?g&&_.verbatimModuleSyntax&&(!(d&111551)||h.getTypeOnlyAliasDeclaration(g))?2:1:4}function RGs(s,c,g,d){let h;for(let S of s){let R=_(S);if(!R)continue;let T=rN(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&T||R.addAsTypeOnly===4&&!T)return R;h??(h=R)}return h;function _({declaration:S,importKind:R,symbol:T,targetFlags:W}){if(R===3||R===2||S.kind===272)return;if(S.kind===261)return(R===0||R===1)&&S.name.kind===207?{kind:2,importClauseOrBindingPattern:S.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:V}=S;if(!V||!mA(S.moduleSpecifier))return;let{name:M,namedBindings:ee}=V;if(V.isTypeOnly&&!(R===0&&ee))return;let re=PPe(c,!1,T,W,g,d);if(!(R===1&&(M||re===2&&ee))&&!(R===0&&ee?.kind===275))return{kind:2,importClauseOrBindingPattern:V,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.moduleSpecifier.text,addAsTypeOnly:re}}}function ccn(s,c){let g=c.getTypeChecker(),d;for(let h of s.imports){let _=v7(h);if(y7(_.parent)){let S=g.resolveExternalModuleName(h);S&&(d||(d=dl())).add(kg(S),_.parent)}else if(_.kind===273||_.kind===272||_.kind===352){let S=g.getSymbolAtLocation(h);S&&(d||(d=dl())).add(kg(S),_)}}return{getImportsForExportInfo:({moduleSymbol:h,exportKind:_,targetFlags:S,symbol:R})=>{let T=d?.get(kg(h));if(!T||n0(s)&&!(S&111551)&&!ue(T,SN))return E;let W=dit(s,_,c);return T.map(V=>({declaration:V,importKind:W,symbol:R,targetFlags:S}))}}}function V1e(s,c){if(!pN(s.fileName))return!1;if(s.commonJsModuleIndicator&&!s.externalModuleIndicator)return!0;if(s.externalModuleIndicator&&!s.commonJsModuleIndicator)return!1;let g=c.getCompilerOptions();if(g.configFile)return i0(g)<5;if(tQt(s,c)===1)return!0;if(tQt(s,c)===99)return!1;for(let d of c.getSourceFiles())if(!(d===s||!n0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function lcn(s,c){return ZA(g=>g?c.getPackageJsonAutoImportProvider().getTypeChecker():s.getTypeChecker())}function NGs(s,c,g,d,h,_,S,R,T){let W=pN(c.fileName),V=s.getCompilerOptions(),M=z3(s,S),ee=lcn(s,S),re=k_(V),ge=jVe(re),Ie=T?Ne=>WF.tryGetModuleSpecifiersFromCache(Ne.moduleSymbol,c,M,R):(Ne,Te)=>WF.getModuleSpecifiersWithCacheInfo(Ne.moduleSymbol,Te,V,c,M,R,void 0,!0),_e=0,Ee=er(_,(Ne,Te)=>{let Ze=ee(Ne.isFromPackageJson),{computedWithoutCache:We,moduleSpecifiers:Ue,kind:$e}=Ie(Ne,Ze)??{},Ye=!!(Ne.targetFlags&111551),Tt=PPe(d,!0,Ne.symbol,Ne.targetFlags,Ze,V);return _e+=We?1:0,Xt(Ue,ot=>{if(ge&&WP(ot))return;if(!Ye&&W&&g!==void 0)return{kind:1,moduleSpecifierKind:$e,moduleSpecifier:ot,usagePosition:g,exportInfo:Ne,isReExport:Te>0};let Qe=dit(c,Ne.exportKind,s),mt;if(g!==void 0&&Qe===3&&Ne.exportKind===0){let ht=Ze.resolveExternalModuleSymbol(Ne.moduleSymbol),_t;ht!==Ne.moduleSymbol&&(_t=hPe(ht,Ze,Mg(V),Fl)),_t||(_t=b1e(Ne.moduleSymbol,Mg(V),!1)),mt={namespacePrefix:_t,usagePosition:g}}return{kind:3,moduleSpecifierKind:$e,moduleSpecifier:ot,importKind:Qe,useRequire:h,addAsTypeOnly:Tt,exportInfo:Ne,isReExport:Te>0,qualification:mt}})});return{computedWithoutCacheCount:_e,fixes:Ee}}function DGs(s,c,g,d,h,_,S,R,T,W){let V=X(c,M=>kGs(M,_,S,g.getTypeChecker(),g.getCompilerOptions()));return V?{fixes:[V]}:NGs(g,d,h,_,S,s,R,T,W)}function kGs({declaration:s,importKind:c,symbol:g,targetFlags:d},h,_,S,R){var T;let W=(T=ZY(s))==null?void 0:T.text;if(W){let V=_?4:PPe(h,!0,g,d,S,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:W,importKind:c,addAsTypeOnly:V,useRequire:_}}}function ucn(s,c,g,d){let h=Jc(s.sourceFile,g),_;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)_=LGs(s,h);else if(Ir(h))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=Xa(zYt(s.sourceFile,s.program.getTypeChecker(),h,s.program.getCompilerOptions())),T=Icn(s.sourceFile,h,R,s.program);return T&&[{fix:T,symbolName:R,errorIdentifierText:h.text}]}else _=fcn(s,h,d);else return;let S=zie(s.sourceFile,s.preferences,s.host);return _&&gcn(_,s.sourceFile,s.program,S,s.host,s.preferences)}function gcn(s,c,g,d,h,_){let S=R=>Ou(R,h.getCurrentDirectory(),JD(h));return bo(s,(R,T)=>Ml(!!R.isJsxNamespaceFix,!!T.isJsxNamespaceFix)||Zt(R.fix.kind,T.fix.kind)||dcn(R.fix,T.fix,c,g,_,d.allowsImportingSpecifier,S))}function xGs(s,c,g){let d=fcn(s,c,g),h=zie(s.sourceFile,s.preferences,s.host);return d&&gcn(d,s.sourceFile,s.program,h,s.host,s.preferences)}function Acn(s,c,g,d,h,_){if(jt(s))return s[0].kind===0||s[0].kind===2?s[0]:s.reduce((S,R)=>dcn(R,S,c,g,_,d.allowsImportingSpecifier,T=>Ou(T,h.getCurrentDirectory(),JD(h)))===-1?R:S)}function dcn(s,c,g,d,h,_,S){return s.kind!==0&&c.kind!==0?Ml(c.moduleSpecifierKind!=="node_modules"||_(c.moduleSpecifier),s.moduleSpecifierKind!=="node_modules"||_(s.moduleSpecifier))||GGs(s,c,h)||ZGs(s.moduleSpecifier,c.moduleSpecifier,g,d)||Ml(pcn(s,g.path,S),pcn(c,g.path,S))||Xne(s.moduleSpecifier,c.moduleSpecifier):0}function GGs(s,c,g){return g.importModuleSpecifierPreference==="non-relative"||g.importModuleSpecifierPreference==="project-relative"?Ml(s.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function pcn(s,c,g){var d;if(s.isReExport&&((d=s.exportInfo)!=null&&d.moduleFileName)&&FGs(s.exportInfo.moduleFileName)){let h=g(Mo(s.exportInfo.moduleFileName));return Ac(c,h)}return!1}function FGs(s){return gp(s,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function ZGs(s,c,g,d){return Ac(s,"node:")&&!Ac(c,"node:")?APe(g,d)?-1:1:Ac(c,"node:")&&!Ac(s,"node:")?APe(g,d)?1:-1:0}function LGs({sourceFile:s,program:c,host:g,preferences:d},h){let _=c.getTypeChecker(),S=VGs(h,_);if(!S)return;let R=_.getAliasedSymbol(S),T=S.name,W=[{symbol:S,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],V=V1e(s,c);return VPe(W,void 0,!1,V,c,s,g,d).fixes.map(ee=>{var re;return{fix:ee,symbolName:T,errorIdentifierText:(re=Gs(h,Ir))==null?void 0:re.text}})}function VGs(s,c){let g=Ir(s)?c.getSymbolAtLocation(s):void 0;if(bAe(g))return g;let{parent:d}=s;if(eI(d)&&d.tagName===s||Pw(d)){let h=c.resolveName(c.getJsxNamespace(d),eI(d)?s:d,111551,!1);if(bAe(h))return h}}function dit(s,c,g,d){if(g.getCompilerOptions().verbatimModuleSyntax&&QGs(s,g)===1)return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return MGs(s,g.getCompilerOptions(),!!d);case 3:return PGs(s,g,!!d);case 4:return 2;default:return pe.assertNever(c)}}function PGs(s,c,g){if(JY(c.getCompilerOptions()))return 1;let d=i0(c.getCompilerOptions());switch(d){case 2:case 1:case 3:return pN(s.fileName)&&(s.externalModuleIndicator||g)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 101:case 102:case 199:return tQt(s,c)===99?2:3;default:return pe.assertNever(d,`Unexpected moduleKind ${d}`)}}function fcn({sourceFile:s,program:c,cancellationToken:g,host:d,preferences:h},_,S){let R=c.getTypeChecker(),T=c.getCompilerOptions();return er(zYt(s,R,_,T),W=>{if(W==="default")return;let V=JL(_),M=V1e(s,c),ee=OGs(W,YJ(_),DU(_),g,s,c,S,d,h);return Do(xt(ee.values(),re=>VPe(re,_.getStart(s),V,M,c,s,d,h).fixes),re=>({fix:re,symbolName:W,errorIdentifierText:_.text,isJsxNamespaceFix:W!==_.text}))})}function Icn(s,c,g,d){let h=d.getTypeChecker(),_=h.resolveName(g,c,111551,!0);if(!_)return;let S=h.getTypeOnlyAliasDeclaration(_);if(!(!S||ms(S)!==s))return{kind:4,typeOnlyAliasDeclaration:S}}function zYt(s,c,g,d){let h=g.parent;if((eI(h)||rQ(h))&&h.tagName===g&&Ant(d.jsx)){let _=c.getJsxNamespace(s);if(WGs(_,g,c))return!eU(g.text)&&!c.resolveName(g.text,g,111551,!1)?[g.text,_]:[_]}return[g.text]}function WGs(s,c,g){if(eU(c.text))return!0;let d=g.resolveName(s,c,111551,!0);return!d||jt(d.declarations,nN)&&!(d.flags&111551)}function OGs(s,c,g,d,h,_,S,R,T){var W;let V=dl(),M=zie(h,T,R),ee=(W=R.getModuleSpecifierCache)==null?void 0:W.call(R),re=ZA(Ie=>z3(Ie?R.getPackageJsonAutoImportProvider():_,R));function ge(Ie,_e,Ee,Ne,Te,Ze){let We=re(Ze);if(fnt(Te,h,_e,Ie,T,M,We,ee)){let Ue=Te.getTypeChecker();V.add(bMt(Ee,Ue).toString(),{symbol:Ee,moduleSymbol:Ie,moduleFileName:_e?.fileName,exportKind:Ne,targetFlags:FC(Ee,Ue).flags,isFromPackageJson:Ze})}}return Int(_,R,T,S,(Ie,_e,Ee,Ne)=>{let Te=Ee.getTypeChecker();d.throwIfCancellationRequested();let Ze=Ee.getCompilerOptions(),We=IPe(Ie,Te);We&&Scn(Te.getSymbolFlags(We.symbol),g)&&hPe(We.symbol,Te,Mg(Ze),($e,Ye)=>(c?Ye??$e:$e)===s)&&ge(Ie,_e,We.symbol,We.exportKind,Ee,Ne);let Ue=Te.tryGetMemberInModuleExportsAndProperties(s,Ie);Ue&&Scn(Te.getSymbolFlags(Ue),g)&&ge(Ie,_e,Ue,0,Ee,Ne)}),V}function MGs(s,c,g){let d=JY(c),h=pN(s.fileName);if(!h&&i0(c)>=5)return d?1:2;if(h)return s.externalModuleIndicator||g?d?1:2:3;for(let _ of s.statements??E)if(km(_)&&!sf(_.moduleReference))return 3;return d?1:3}function qYt(s,c,g,d,h,_,S){let R,T=xo.ChangeTracker.with(s,W=>{R=HGs(W,c,g,d,h,_,S)});return ug(rcn,T,R,ncn,Z.Add_all_missing_imports)}function HGs(s,c,g,d,h,_,S){let R=_1(c,S);switch(d.kind){case 0:return $Yt(s,c,d),[Z.Change_0_to_1,g,`${d.namespacePrefix}.${g}`];case 1:return Ccn(s,c,d,R),[Z.Change_0_to_1,g,_cn(d.moduleSpecifier,R)+g];case 2:{let{importClauseOrBindingPattern:T,importKind:W,addAsTypeOnly:V,moduleSpecifier:M}=d;mcn(s,c,T,W===1?{name:g,addAsTypeOnly:V}:void 0,W===0?[{name:g,addAsTypeOnly:V}]:E,void 0,S);let ee=l2(M);return h?[Z.Import_0_from_1,g,ee]:[Z.Update_import_from_0,ee]}case 3:{let{importKind:T,moduleSpecifier:W,addAsTypeOnly:V,useRequire:M,qualification:ee}=d,re=M?bcn:ycn,ge=T===1?{name:g,addAsTypeOnly:V}:void 0,Ie=T===0?[{name:g,addAsTypeOnly:V}]:void 0,_e=T===2||T===3?{importKind:T,name:ee?.namespacePrefix||g,addAsTypeOnly:V}:void 0;return Yrt(s,c,re(W,R,ge,Ie,_e,_.getCompilerOptions(),S),!0,S),ee&&$Yt(s,c,ee),h?[Z.Import_0_from_1,g,W]:[Z.Add_import_from_0,W]}case 4:{let{typeOnlyAliasDeclaration:T}=d,W=YGs(s,T,_,c,S);return W.kind===277?[Z.Remove_type_from_import_of_0_from_1,g,hcn(W.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,hcn(W)]}default:return pe.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function hcn(s){var c,g;return s.kind===272?((g=Gs((c=Gs(s.moduleReference,ZF))==null?void 0:c.expression,mA))==null?void 0:g.text)||s.moduleReference.getText():Ma(s.parent.moduleSpecifier,Zg).text}function YGs(s,c,g,d,h){let _=g.getCompilerOptions(),S=_.verbatimModuleSyntax;switch(c.kind){case 277:if(c.isTypeOnly){if(c.parent.elements.length>1){let T=me.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:W}=i5.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,h,d),V=i5.getImportSpecifierInsertionIndex(c.parent.elements,T,W);if(V!==c.parent.elements.indexOf(c))return s.delete(d,c),s.insertImportSpecifierAtIndex(d,T,c.parent,V),c}return s.deleteRange(d,{pos:MD(c.getFirstToken()),end:MD(c.propertyName??c.name)}),c}else return pe.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 274:return R(c),c;case 275:return R(c.parent),c.parent;case 272:return s.deleteRange(d,c.getChildAt(1)),c;default:pe.failBadSyntaxKind(c)}function R(T){var W;if(s.delete(d,Qrt(T,d)),!_.allowImportingTsExtensions){let V=ZY(T.parent),M=V&&((W=g.getResolvedModuleFromModuleSpecifier(V,d))==null?void 0:W.resolvedModule);if(M?.resolvedUsingTsExtension){let ee=K2(V.text,HEe(V.text,_));s.replaceNode(d,V,me.createStringLiteral(ee))}}if(S){let V=Gs(T.namedBindings,yN);if(V&&V.elements.length>1){i5.getNamedImportSpecifierComparerWithDetection(T.parent,h,d).isSorted!==!1&&c.kind===277&&V.elements.indexOf(c)!==0&&(s.delete(d,c),s.insertImportSpecifierAtIndex(d,c,V,0));for(let ee of V.elements)ee!==c&&!ee.isTypeOnly&&s.insertModifierBefore(d,156,ee)}}}}function mcn(s,c,g,d,h,_,S){var R;if(g.kind===207){if(_&&g.elements.some(M=>_.has(M))){s.replaceNode(c,g,me.createObjectBindingPattern([...g.elements.filter(M=>!_.has(M)),...d?[me.createBindingElement(void 0,"default",d.name)]:E,...h.map(M=>me.createBindingElement(void 0,M.propertyName,M.name))]));return}d&&V(g,d.name,"default");for(let M of h)V(g,M.name,M.propertyName);return}let T=g.isTypeOnly&&jt([d,...h],M=>M?.addAsTypeOnly===4),W=g.namedBindings&&((R=Gs(g.namedBindings,yN))==null?void 0:R.elements);if(d&&(pe.assert(!g.name,"Cannot add a default import to an import clause that already has one"),s.insertNodeAt(c,g.getStart(c),me.createIdentifier(d.name),{suffix:", "})),h.length){let{specifierComparer:M,isSorted:ee}=i5.getNamedImportSpecifierComparerWithDetection(g.parent,S,c),re=bo(h.map(ge=>me.createImportSpecifier((!g.isTypeOnly||T)&&pit(ge,S),ge.propertyName===void 0?void 0:me.createIdentifier(ge.propertyName),me.createIdentifier(ge.name))),M);if(_)s.replaceNode(c,g.namedBindings,me.updateNamedImports(g.namedBindings,bo([...W.filter(ge=>!_.has(ge)),...re],M)));else if(W?.length&&ee!==!1){let ge=T&&W?me.updateNamedImports(g.namedBindings,Tr(W,Ie=>me.updateImportSpecifier(Ie,!0,Ie.propertyName,Ie.name))).elements:W;for(let Ie of re){let _e=i5.getImportSpecifierInsertionIndex(ge,Ie,M);s.insertImportSpecifierAtIndex(c,Ie,g.namedBindings,_e)}}else if(W?.length)for(let ge of re)s.insertNodeInListAfter(c,Ei(W),ge,W);else if(re.length){let ge=me.createNamedImports(re);g.namedBindings?s.replaceNode(c,g.namedBindings,ge):s.insertNodeAfter(c,pe.checkDefined(g.name,"Import clause must have either named imports or a default import"),ge)}}if(T&&(s.delete(c,Qrt(g,c)),W))for(let M of W)s.insertModifierBefore(c,156,M);function V(M,ee,re){let ge=me.createBindingElement(void 0,re,ee);M.elements.length?s.insertNodeInListAfter(c,Ei(M.elements),ge):s.replaceNode(c,M,me.createObjectBindingPattern([ge]))}}function $Yt(s,c,{namespacePrefix:g,usagePosition:d}){s.insertText(c,d,g+".")}function Ccn(s,c,{moduleSpecifier:g,usagePosition:d},h){s.insertText(c,d,_cn(g,h))}function _cn(s,c){let g=Mrt(c);return`import(${g}${s}${g}).`}function eQt({addAsTypeOnly:s}){return s===2}function pit(s,c){return eQt(s)||!!c.preferTypeOnlyAutoImports&&s.addAsTypeOnly!==4}function ycn(s,c,g,d,h,_,S){let R=Jde(s,c),T;if(g!==void 0||d?.length){let W=(!g||eQt(g))&&ue(d,eQt)||(_.verbatimModuleSyntax||S.preferTypeOnlyAutoImports)&&g?.addAsTypeOnly!==4&&!jt(d,V=>V.addAsTypeOnly===4);T=zr(T,QP(g&&me.createIdentifier(g.name),d?.map(V=>me.createImportSpecifier(!W&&pit(V,S),V.propertyName===void 0?void 0:me.createIdentifier(V.propertyName),me.createIdentifier(V.name))),s,c,W))}if(h){let W=h.importKind===3?me.createImportEqualsDeclaration(void 0,pit(h,S),me.createIdentifier(h.name),me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(pit(h,S)?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(h.name))),R,void 0);T=zr(T,W)}return pe.checkDefined(T)}function bcn(s,c,g,d,h){let _=Jde(s,c),S;if(g||d?.length){let R=d?.map(({name:W,propertyName:V})=>me.createBindingElement(void 0,V,W))||[];g&&R.unshift(me.createBindingElement(void 0,"default",g.name));let T=Ecn(me.createObjectBindingPattern(R),_);S=zr(S,T)}if(h){let R=Ecn(h.name,_);S=zr(S,R)}return pe.checkDefined(S)}function Ecn(s,c){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(typeof s=="string"?me.createIdentifier(s):s,void 0,void 0,me.createCallExpression(me.createIdentifier("require"),void 0,[c]))],2))}function Scn(s,c){return c===7?!0:c&1?!!(s&111551):c&2?!!(s&788968):c&4?!!(s&1920):!1}function tQt(s,c){return aN(s)?c.getImpliedNodeFormatForEmit(s):NU(s,c.getCompilerOptions())}function QGs(s,c){return aN(s)?c.getEmitModuleFormatOfFile(s):Vde(s,c.getCompilerOptions())}var rQt="addMissingConstraint",vcn=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];xg({errorCodes:vcn,getCodeActions(s){let{sourceFile:c,span:g,program:d,preferences:h,host:_}=s,S=Bcn(d,c,g);if(S===void 0)return;let R=xo.ChangeTracker.with(s,T=>wcn(T,d,h,_,c,S));return[ug(rQt,R,Z.Add_extends_constraint,rQt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[rQt],getAllCodeActions:s=>{let{program:c,preferences:g,host:d}=s,h=new Set;return Hz(xo.ChangeTracker.with(s,_=>{Yz(s,vcn,S=>{let R=Bcn(c,S.file,zd(S.start,S.length));if(R&&Zy(h,rd(R.declaration)))return wcn(_,c,g,d,S.file,R)})}))}});function Bcn(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=jQt(h.file,zd(h.start,h.length));if(_!==void 0&&(Ir(_)&&Ds(_.parent)&&(_=_.parent),Ds(_))){if(GB(_.parent))return;let S=Jc(c,g.start),R=s.getTypeChecker();return{constraint:JGs(R,S)||XGs(h.messageText),declaration:_,token:S}}}function wcn(s,c,g,d,h,_){let{declaration:S,constraint:R}=_,T=c.getTypeChecker();if(Xs(R))s.insertText(h,S.name.end,` extends ${R}`);else{let W=Mg(c.getCompilerOptions()),V=nse({program:c,host:d}),M=yQ(h,c,g,d),ee=Rit(T,M,R,void 0,W,void 0,void 0,V);ee&&(s.replaceNode(h,S,me.updateTypeParameterDeclaration(S,void 0,S.name,ee,S.default)),M.writeFixes(s))}}function XGs(s){let[,c]=wN(s,` +`,0).match(/`extends (.*)`/)||[];return c}function JGs(s,c){return uc(c.parent)?s.getTypeArgumentConstraint(c.parent):(un(c)?s.getContextualType(c):void 0)||s.getTypeAtLocation(c)}var Tcn="fixOverrideModifier",P1e="fixAddOverrideModifier",WPe="fixRemoveOverrideModifier",Rcn=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],Ncn={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:P1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:P1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:WPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:WPe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:P1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:P1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:P1e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:WPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:WPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};xg({errorCodes:Rcn,getCodeActions:function(c){let{errorCode:g,span:d}=c,h=Ncn[g];if(!h)return E;let{descriptions:_,fixId:S,fixAllDescriptions:R}=h,T=xo.ChangeTracker.with(c,W=>Dcn(W,c,g,d.start));return[yYt(Tcn,T,_,S,R)]},fixIds:[Tcn,P1e,WPe],getAllCodeActions:s=>Qd(s,Rcn,(c,g)=>{let{code:d,start:h}=g,_=Ncn[d];!_||_.fixId!==s.fixId||Dcn(c,s,d,h)})});function Dcn(s,c,g,d){switch(g){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return UGs(s,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return KGs(s,c.sourceFile,d);default:pe.fail("Unexpected error code: "+g)}}function UGs(s,c,g){let d=xcn(c,g);if(n0(c)){s.addJSDocTags(c,d,[me.createJSDocOverrideTag(me.createIdentifier("override"))]);return}let h=d.modifiers||E,_=de(h,Ge),S=de(h,Xe),R=de(h,M=>krt(M.kind)),T=be(h,So),W=S?S.end:_?_.end:R?R.end:T?Yu(c.text,T.end):d.getStart(c),V=R||_||S?{prefix:" "}:{suffix:" "};s.insertModifierAt(c,W,164,V)}function KGs(s,c,g){let d=xcn(c,g);if(n0(c)){s.filterJSDocTags(c,d,uC(t9e));return}let h=de(d.modifiers,bt);pe.assertIsDefined(h),s.deleteModifier(c,h)}function kcn(s){switch(s.kind){case 177:case 173:case 175:case 178:case 179:return!0;case 170:return Ve(s,s.parent);default:return!1}}function xcn(s,c){let g=Jc(s,c),d=ji(g,h=>xa(h)?"quit":kcn(h));return pe.assert(d&&kcn(d)),d}var nQt="fixNoPropertyAccessFromIndexSignature",Gcn=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];xg({errorCodes:Gcn,fixIds:[nQt],getCodeActions(s){let{sourceFile:c,span:g,preferences:d}=s,h=Zcn(c,g.start),_=xo.ChangeTracker.with(s,S=>Fcn(S,s.sourceFile,h,d));return[ug(nQt,_,[Z.Use_element_access_for_0,h.name.text],nQt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:s=>Qd(s,Gcn,(c,g)=>Fcn(c,g.file,Zcn(g.file,g.start),s.preferences))});function Fcn(s,c,g,d){let h=_1(c,d),_=me.createStringLiteral(g.name.text,h===0);s.replaceNode(c,g,vx(g)?me.createElementAccessChain(g.expression,g.questionDotToken,_):me.createElementAccessExpression(g.expression,_))}function Zcn(s,c){return Ma(Jc(s,c).parent,jo)}var iQt="fixImplicitThis",Lcn=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];xg({errorCodes:Lcn,getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_,S=xo.ChangeTracker.with(c,R=>{_=Vcn(R,g,h.start,d.getTypeChecker())});return _?[ug(iQt,S,_,iQt,Z.Fix_all_implicit_this_errors)]:E},fixIds:[iQt],getAllCodeActions:s=>Qd(s,Lcn,(c,g)=>{Vcn(c,g.file,g.start,s.program.getTypeChecker())})});function Vcn(s,c,g,d){let h=Jc(c,g);if(!Mie(h))return;let _=r0(h,!1,!1);if(!(!ih(_)&&!UA(_))&&!ll(r0(_,!1,!1))){let S=pe.checkDefined(qd(_,100,c)),{name:R}=_,T=pe.checkDefined(_.body);return UA(_)?R&&Kp.Core.isSymbolReferencedInFile(R,d,c,T)?void 0:(s.delete(c,S),R&&s.delete(c,R),s.insertText(c,T.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:nnt]):(s.replaceNode(c,S,me.createToken(87)),s.insertText(c,R.end," = "),s.insertText(c,T.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var sQt="fixImportNonExportedMember",Pcn=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];xg({errorCodes:Pcn,fixIds:[sQt],getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=Wcn(c,g.start,d);if(h===void 0)return;let _=xo.ChangeTracker.with(s,S=>jGs(S,d,h));return[ug(sQt,_,[Z.Export_0_from_module_1,h.exportName.node.text,h.moduleSpecifier],sQt,Z.Export_all_referenced_locals)]},getAllCodeActions(s){let{program:c}=s;return Hz(xo.ChangeTracker.with(s,g=>{let d=new Map;Yz(s,Pcn,h=>{let _=Wcn(h.file,h.start,c);if(_===void 0)return;let{exportName:S,node:R,moduleSourceFile:T}=_;if(fit(T,S.isTypeOnly)===void 0&&jne(R))g.insertExportModifier(T,R);else{let W=d.get(T)||{typeOnlyExports:[],exports:[]};S.isTypeOnly?W.typeOnlyExports.push(S):W.exports.push(S),d.set(T,W)}}),d.forEach((h,_)=>{let S=fit(_,!0);S&&S.isTypeOnly?(oQt(g,c,_,h.typeOnlyExports,S),oQt(g,c,_,h.exports,fit(_,!1))):oQt(g,c,_,[...h.exports,...h.typeOnlyExports],S)})}))}});function Wcn(s,c,g){var d,h;let _=Jc(s,c);if(Ir(_)){let S=ji(_,Mf);if(S===void 0)return;let R=Zg(S.moduleSpecifier)?S.moduleSpecifier:void 0;if(R===void 0)return;let T=(d=g.getResolvedModuleFromModuleSpecifier(R,s))==null?void 0:d.resolvedModule;if(T===void 0)return;let W=g.getSourceFile(T.resolvedFileName);if(W===void 0||qie(g,W))return;let V=W.symbol,M=(h=Gs(V.valueDeclaration,WI))==null?void 0:h.locals;if(M===void 0)return;let ee=M.get(_.escapedText);if(ee===void 0)return;let re=zGs(ee);return re===void 0?void 0:{exportName:{node:_,isTypeOnly:KY(re)},node:re,moduleSourceFile:W,moduleSpecifier:R.text}}}function jGs(s,c,{exportName:g,node:d,moduleSourceFile:h}){let _=fit(h,g.isTypeOnly);_?Ocn(s,c,h,_,[g]):jne(d)?s.insertExportModifier(h,d):Mcn(s,c,h,[g])}function oQt(s,c,g,d,h){B(d)&&(h?Ocn(s,c,g,h,d):Mcn(s,c,g,d))}function fit(s,c){let g=d=>Gh(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return be(s.statements,g)}function Ocn(s,c,g,d,h){let _=d.exportClause&&mv(d.exportClause)?d.exportClause.elements:me.createNodeArray([]),S=!d.isTypeOnly&&!!(sS(c.getCompilerOptions())||de(_,R=>R.isTypeOnly));s.replaceNode(g,d,me.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,me.createNamedExports(me.createNodeArray([..._,...Hcn(h,S)],_.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function Mcn(s,c,g,d){s.insertNodeAtEndOfScope(g,g,me.createExportDeclaration(void 0,!1,me.createNamedExports(Hcn(d,sS(c.getCompilerOptions()))),void 0,void 0))}function Hcn(s,c){return me.createNodeArray(At(s,g=>me.createExportSpecifier(c&&g.isTypeOnly,void 0,g.node)))}function zGs(s){if(s.valueDeclaration===void 0)return Nc(s.declarations);let c=s.valueDeclaration,g=nc(c)?Gs(c.parent.parent,Ch):void 0;return g&&B(g.declarationList.declarations)===1?g:c}var aQt="fixIncorrectNamedTupleSyntax",qGs=[Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];xg({errorCodes:qGs,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=$Gs(g,d.start),_=xo.ChangeTracker.with(c,S=>eFs(S,g,h));return[ug(aQt,_,Z.Move_labeled_tuple_element_modifiers_to_labels,aQt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[aQt]});function $Gs(s,c){let g=Jc(s,c);return ji(g,d=>d.kind===203)}function eFs(s,c,g){if(!g)return;let d=g.type,h=!1,_=!1;for(;d.kind===191||d.kind===192||d.kind===197;)d.kind===191?h=!0:d.kind===192&&(_=!0),d=d.type;let S=me.updateNamedTupleMember(g,g.dotDotDotToken||(_?me.createToken(26):void 0),g.name,g.questionToken||(h?me.createToken(58):void 0),d);S!==g&&s.replaceNode(c,g,S)}var Ycn="fixSpelling",Qcn=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];xg({errorCodes:Qcn,getCodeActions(s){let{sourceFile:c,errorCode:g}=s,d=Xcn(c,s.span.start,s,g);if(!d)return;let{node:h,suggestedSymbol:_}=d,S=Mg(s.host.getCompilationSettings()),R=xo.ChangeTracker.with(s,T=>Jcn(T,c,h,_,S));return[ug("spelling",R,[Z.Change_spelling_to_0,nf(_)],Ycn,Z.Fix_all_detected_spelling_errors)]},fixIds:[Ycn],getAllCodeActions:s=>Qd(s,Qcn,(c,g)=>{let d=Xcn(g.file,g.start,s,g.code),h=Mg(s.host.getCompilationSettings());d&&Jcn(c,s.sourceFile,d.node,d.suggestedSymbol,h)})});function Xcn(s,c,g,d){let h=Jc(s,c),_=h.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!EN(_))return;let S=g.program.getTypeChecker(),R;if(jo(_)&&_.name===h){pe.assert(_w(h),"Expected an identifier for spelling (property access)");let T=S.getTypeAtLocation(_.expression);_.flags&64&&(T=S.getNonNullableType(T)),R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(fo(_)&&_.operatorToken.kind===103&&_.left===h&&p(h)){let T=S.getTypeAtLocation(_.right);R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(zi(_)&&_.right===h){let T=S.getSymbolAtLocation(_.left);T&&T.flags&1536&&(R=S.getSuggestedSymbolForNonexistentModule(_.right,T))}else if(uy(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for spelling (import)");let T=ji(h,Mf),W=rFs(g,T,s);W&&W.symbol&&(R=S.getSuggestedSymbolForNonexistentModule(h,W.symbol))}else if(EN(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for JSX attribute");let T=ji(h,eI),W=S.getContextualTypeForArgumentAtIndex(T,0);R=S.getSuggestedSymbolForNonexistentJSXAttribute(h,W)}else if(Rne(_)&&PI(_)&&_.name===h){let T=ji(h,xa),W=T?BB(T):void 0,V=W?S.getTypeAtLocation(W):void 0;V&&(R=S.getSuggestedSymbolForNonexistentClassMember(xp(h),V))}else{let T=DU(h),W=xp(h);pe.assert(W!==void 0,"name should be defined"),R=S.getSuggestedSymbolForNonexistentSymbol(h,W,tFs(T))}return R===void 0?void 0:{node:h,suggestedSymbol:R}}function Jcn(s,c,g,d,h){let _=nf(d);if(!Uh(_,h)&&jo(g.parent)){let S=d.valueDeclaration;S&&rh(S)&&p(S.name)?s.replaceNode(c,g,me.createIdentifier(_)):s.replaceNode(c,g.parent,me.createElementAccessExpression(g.parent.expression,me.createStringLiteral(_)))}else s.replaceNode(c,g,me.createIdentifier(_))}function tFs(s){let c=0;return s&4&&(c|=1920),s&2&&(c|=788968),s&1&&(c|=111551),c}function rFs(s,c,g){var d;if(!c||!mA(c.moduleSpecifier))return;let h=(d=s.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,g))==null?void 0:d.resolvedModule;if(h)return s.program.getSourceFile(h.resolvedFileName)}var cQt="returnValueCorrect",lQt="fixAddReturnStatement",uQt="fixRemoveBracesFromArrowFunctionBody",gQt="fixWrapTheBlockWithParen",Ucn=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];xg({errorCodes:Ucn,fixIds:[lQt,uQt,gQt],getCodeActions:function(c){let{program:g,sourceFile:d,span:{start:h},errorCode:_}=c,S=jcn(g.getTypeChecker(),d,h,_);if(S)return S.kind===0?Ft([iFs(c,S.expression,S.statement)],lA(S.declaration)?sFs(c,S.declaration,S.expression,S.commentSource):void 0):[oFs(c,S.declaration,S.expression)]},getAllCodeActions:s=>Qd(s,Ucn,(c,g)=>{let d=jcn(s.program.getTypeChecker(),g.file,g.start,g.code);if(d)switch(s.fixId){case lQt:zcn(c,g.file,d.expression,d.statement);break;case uQt:if(!lA(d.declaration))return;qcn(c,g.file,d.declaration,d.expression,d.commentSource,!1);break;case gQt:if(!lA(d.declaration))return;$cn(c,g.file,d.declaration,d.expression);break;default:pe.fail(JSON.stringify(s.fixId))}})});function Kcn(s,c,g){let d=s.createSymbol(4,c.escapedText);d.links.type=s.getTypeAtLocation(g);let h=qu([d]);return s.createAnonymousType(void 0,h,[],[],[])}function AQt(s,c,g,d){if(!c.body||!$u(c.body)||B(c.body.statements)!==1)return;let h=ma(c.body.statements);if(VC(h)&&dQt(s,c,s.getTypeAtLocation(h.expression),g,d))return{declaration:c,kind:0,expression:h.expression,statement:h,commentSource:h.expression};if(FP(h)&&VC(h.statement)){let _=me.createObjectLiteralExpression([me.createPropertyAssignment(h.label,h.statement.expression)]),S=Kcn(s,h.label,h.statement.expression);if(dQt(s,c,S,g,d))return lA(c)?{declaration:c,kind:1,expression:_,statement:h,commentSource:h.statement.expression}:{declaration:c,kind:0,expression:_,statement:h,commentSource:h.statement.expression}}else if($u(h)&&B(h.statements)===1){let _=ma(h.statements);if(FP(_)&&VC(_.statement)){let S=me.createObjectLiteralExpression([me.createPropertyAssignment(_.label,_.statement.expression)]),R=Kcn(s,_.label,_.statement.expression);if(dQt(s,c,R,g,d))return{declaration:c,kind:0,expression:S,statement:h,commentSource:_}}}}function dQt(s,c,g,d,h){if(h){let _=s.getSignatureFromDeclaration(c);if(_){Ga(c,1024)&&(g=s.createPromiseType(g));let S=s.createSignature(c,_.typeParameters,_.thisParameter,_.parameters,g,void 0,_.minArgumentCount,_.flags);g=s.createAnonymousType(void 0,qu(),[S],[],[])}else g=s.getAnyType()}return s.isTypeAssignableTo(g,d)}function jcn(s,c,g,d){let h=Jc(c,g);if(!h.parent)return;let _=ji(h.parent,kd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!_||!_.body||!_.type||!cy(_.type,h)?void 0:AQt(s,_,s.getTypeFromTypeNode(_.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!_||!Zl(_.parent)||!_.body)return;let S=_.parent.arguments.indexOf(_);if(S===-1)return;let R=s.getContextualTypeForArgumentAtIndex(_.parent,S);return R?AQt(s,_,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!HT(h)||!I7(h.parent)&&!EN(h.parent))return;let T=nFs(h.parent);return!T||!kd(T)||!T.body?void 0:AQt(s,T,s.getTypeAtLocation(h.parent),!0)}}function nFs(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:return s.initializer;case 292:return s.initializer&&(fie(s.initializer)?s.initializer.expression:void 0);case 305:case 172:case 307:case 349:case 342:return}}function zcn(s,c,g,d){Vy(g);let h=_1e(c);s.replaceNode(c,d,me.createReturnStatement(g),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,suffix:h?";":void 0})}function qcn(s,c,g,d,h,_){let S=_||rPe(d)?me.createParenthesizedExpression(d):d;Vy(h),xU(h,S),s.replaceNode(c,g.body,S)}function $cn(s,c,g,d){s.replaceNode(c,g.body,me.createParenthesizedExpression(d))}function iFs(s,c,g){let d=xo.ChangeTracker.with(s,h=>zcn(h,s.sourceFile,c,g));return ug(cQt,d,Z.Add_a_return_statement,lQt,Z.Add_all_missing_return_statement)}function sFs(s,c,g,d){let h=xo.ChangeTracker.with(s,_=>qcn(_,s.sourceFile,c,g,d,!1));return ug(cQt,h,Z.Remove_braces_from_arrow_function_body,uQt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function oFs(s,c,g){let d=xo.ChangeTracker.with(s,h=>$cn(h,s.sourceFile,c,g));return ug(cQt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,gQt,Z.Wrap_all_object_literal_with_parentheses)}var r5="fixMissingMember",Iit="fixMissingProperties",hit="fixMissingAttributes",mit="fixMissingFunctionDeclaration",eln=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code,Z.Type_0_does_not_satisfy_the_expected_type_1.code];xg({errorCodes:eln,getCodeActions(s){let c=s.program.getTypeChecker(),g=tln(s.sourceFile,s.span.start,s.errorCode,c,s.program);if(g){if(g.kind===3){let d=xo.ChangeTracker.with(s,h=>gln(h,s,g));return[ug(Iit,d,Z.Add_missing_properties,Iit,Z.Add_all_missing_properties)]}if(g.kind===4){let d=xo.ChangeTracker.with(s,h=>uln(h,s,g));return[ug(hit,d,Z.Add_missing_attributes,hit,Z.Add_all_missing_attributes)]}if(g.kind===2||g.kind===5){let d=xo.ChangeTracker.with(s,h=>lln(h,s,g));return[ug(mit,d,[Z.Add_missing_function_declaration_0,g.token.text],mit,Z.Add_all_missing_function_declarations)]}if(g.kind===1){let d=xo.ChangeTracker.with(s,h=>cln(h,s.program.getTypeChecker(),g));return[ug(r5,d,[Z.Add_missing_enum_member_0,g.token.text],r5,Z.Add_all_missing_members)]}return Nn(gFs(s,g),aFs(s,g))}},fixIds:[r5,mit,Iit,hit],getAllCodeActions:s=>{let{program:c,fixId:g}=s,d=c.getTypeChecker(),h=new Set,_=new Map;return Hz(xo.ChangeTracker.with(s,S=>{Yz(s,eln,R=>{let T=tln(R.file,R.start,R.code,d,s.program);if(T===void 0)return;let W=rd(T.parentDeclaration)+"#"+(T.kind===3?T.identifier||rd(T.token):T.token.text);if(Zy(h,W)){if(g===mit&&(T.kind===2||T.kind===5))lln(S,s,T);else if(g===Iit&&T.kind===3)gln(S,s,T);else if(g===hit&&T.kind===4)uln(S,s,T);else if(T.kind===1&&cln(S,d,T),T.kind===0){let{parentDeclaration:V,token:M}=T,ee=cr(_,V,()=>[]);ee.some(re=>re.token.text===M.text)||ee.push(T)}}}),_.forEach((R,T)=>{let W=mh(T)?void 0:IFs(T,d);for(let V of R){if(W?.some(Ee=>{let Ne=_.get(Ee);return!!Ne&&Ne.some(({token:Te})=>Te.text===V.token.text)}))continue;let{parentDeclaration:M,declSourceFile:ee,modifierFlags:re,token:ge,call:Ie,isJSFile:_e}=V;if(Ie&&!p(ge))aln(s,S,Ie,ge,re&256,M,ee);else if(_e&&!g_(M)&&!mh(M))rln(S,ee,M,ge,!!(re&256));else{let Ee=iln(d,M,ge);sln(S,ee,M,ge.text,Ee,re&256)}}})}))}});function tln(s,c,g,d,h){var _,S;let R=Jc(s,c),T=R.parent;if(g===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(R.kind===19&&og(T)&&Zl(T.parent)))return;let ge=Se(T.parent.arguments,Ne=>Ne===T);if(ge<0)return;let Ie=d.getResolvedSignature(T.parent);if(!(Ie&&Ie.declaration&&Ie.parameters[ge]))return;let _e=Ie.parameters[ge].valueDeclaration;if(!(_e&&Si(_e)&&Ir(_e.name)))return;let Ee=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),d.getParameterType(Ie,ge).getNonNullableType(),!1,!1));return B(Ee)?{kind:3,token:_e.name,identifier:_e.name.text,properties:Ee,parentDeclaration:T}:void 0}if(R.kind===19||Qg(T)||I2(T)){let ge=(Qg(T)||I2(T))&&T.expression?T.expression:T;if(og(ge)){let Ie=Qg(T)?d.getTypeFromTypeNode(T.type):d.getContextualType(ge)||d.getTypeAtLocation(ge),_e=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),Ie.getNonNullableType(),!1,!1));return B(_e)?{kind:3,token:T,identifier:void 0,properties:_e,parentDeclaration:ge,indentation:I2(ge.parent)||Hd(ge.parent)?0:void 0}:void 0}}if(!_w(R))return;if(Ir(R)&&WT(T)&&T.initializer&&og(T.initializer)){let ge=(_=d.getContextualType(R)||d.getTypeAtLocation(R))==null?void 0:_.getNonNullableType(),Ie=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T.initializer),ge,!1,!1));return B(Ie)?{kind:3,token:R,identifier:R.text,properties:Ie,parentDeclaration:T.initializer}:void 0}if(Ir(R)&&eI(R.parent)){let ge=Mg(h.getCompilerOptions()),Ie=dFs(d,ge,R.parent);return B(Ie)?{kind:4,token:R,attributes:Ie,parentDeclaration:R.parent}:void 0}if(Ir(R)){let ge=(S=d.getContextualType(R))==null?void 0:S.getNonNullableType();if(ge&&la(ge)&16){let Ie=Nc(d.getSignaturesOfType(ge,0));return Ie===void 0?void 0:{kind:5,token:R,signature:Ie,sourceFile:s,parentDeclaration:Aln(R)}}if(Zl(T)&&T.expression===R)return{kind:2,token:R,call:T,sourceFile:s,modifierFlags:0,parentDeclaration:Aln(R)}}if(!jo(T))return;let W=Vrt(d.getTypeAtLocation(T.expression)),V=W.symbol;if(!V||!V.declarations)return;if(Ir(R)&&Zl(T.parent)){let ge=de(V.declarations,xh),Ie=ge?.getSourceFile();if(ge&&Ie&&!qie(h,Ie))return{kind:2,token:R,call:T.parent,sourceFile:Ie,modifierFlags:32,parentDeclaration:ge};let _e=de(V.declarations,ll);if(s.commonJsModuleIndicator)return;if(_e&&!qie(h,_e))return{kind:2,token:R,call:T.parent,sourceFile:_e,modifierFlags:32,parentDeclaration:_e}}let M=de(V.declarations,xa);if(!M&&p(R))return;let ee=M||de(V.declarations,ge=>g_(ge)||mh(ge));if(ee&&!qie(h,ee.getSourceFile())){let ge=!mh(ee)&&(W.target||W)!==d.getDeclaredTypeOfSymbol(V);if(ge&&(p(R)||g_(ee)))return;let Ie=ee.getSourceFile(),_e=mh(ee)?0:(ge?256:0)|(gnt(R.text)?2:0),Ee=n0(Ie),Ne=Gs(T.parent,Zl);return{kind:0,token:R,call:Ne,modifierFlags:_e,parentDeclaration:ee,declSourceFile:Ie,isJSFile:Ee}}let re=de(V.declarations,V3);if(re&&!(W.flags&1056)&&!p(R)&&!qie(h,re.getSourceFile()))return{kind:1,token:R,parentDeclaration:re}}function aFs(s,c){return c.isJSFile?J_(cFs(s,c)):lFs(s,c)}function cFs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){if(g_(c)||mh(c))return;let _=xo.ChangeTracker.with(s,R=>rln(R,g,c,h,!!(d&256)));if(_.length===0)return;let S=d&256?Z.Initialize_static_property_0:p(h)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return ug(r5,_,[S,h.text],r5,Z.Add_all_missing_members)}function rln(s,c,g,d,h){let _=d.text;if(h){if(g.kind===232)return;let S=g.name.getText(),R=nln(me.createIdentifier(S),_);s.insertNodeAfter(c,g,R)}else if(p(d)){let S=me.createPropertyDeclaration(void 0,_,void 0,void 0,void 0),R=oln(g);R?s.insertNodeAfter(c,R,S):s.insertMemberAtStart(c,g,S)}else{let S=lN(g);if(!S)return;let R=nln(me.createThis(),_);s.insertNodeAtConstructorEnd(c,S,R)}}function nln(s,c){return me.createExpressionStatement(me.createAssignment(me.createPropertyAccessExpression(s,c),Xz()))}function lFs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){let _=h.text,S=d&256,R=iln(s.program.getTypeChecker(),c,h),T=V=>xo.ChangeTracker.with(s,M=>sln(M,g,c,_,R,V)),W=[ug(r5,T(d&256),[S?Z.Declare_static_property_0:Z.Declare_property_0,_],r5,Z.Add_all_missing_members)];return S||p(h)||(d&2&&W.unshift(sR(r5,T(2),[Z.Declare_private_property_0,_])),W.push(uFs(s,g,c,h.text,R))),W}function iln(s,c,g){let d;if(g.parent.parent.kind===227){let h=g.parent.parent,_=g.parent===h.left?h.right:h.left,S=s.getWidenedType(s.getBaseTypeOfLiteralType(s.getTypeAtLocation(_)));d=s.typeToTypeNode(S,c,1,8)}else{let h=s.getContextualType(g.parent);d=h?s.typeToTypeNode(h,void 0,1,8):void 0}return d||me.createKeywordTypeNode(133)}function sln(s,c,g,d,h,_){let S=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,R=xa(g)?me.createPropertyDeclaration(S,d,void 0,h,void 0):me.createPropertySignature(void 0,d,void 0,h),T=oln(g);T?s.insertNodeAfter(c,T,R):s.insertMemberAtStart(c,g,R)}function oln(s){let c;for(let g of s.members){if(!pi(g))break;c=g}return c}function uFs(s,c,g,d,h){let _=me.createKeywordTypeNode(154),S=me.createParameterDeclaration(void 0,void 0,"x",void 0,_,void 0),R=me.createIndexSignature(void 0,[S],h),T=xo.ChangeTracker.with(s,W=>W.insertMemberAtStart(c,g,R));return sR(r5,T,[Z.Add_index_signature_for_property_0,d])}function gFs(s,c){let{parentDeclaration:g,declSourceFile:d,modifierFlags:h,token:_,call:S}=c;if(S===void 0)return;let R=_.text,T=V=>xo.ChangeTracker.with(s,M=>aln(s,M,S,_,V,g,d)),W=[ug(r5,T(h&256),[h&256?Z.Declare_static_method_0:Z.Declare_method_0,R],r5,Z.Add_all_missing_members)];return h&2&&W.unshift(sR(r5,T(2),[Z.Declare_private_method_0,R])),W}function aln(s,c,g,d,h,_,S){let R=yQ(S,s.program,s.preferences,s.host),T=xa(_)?175:174,W=HQt(T,s,R,g,d,h,_),V=pFs(_,g);V?c.insertNodeAfter(S,V,W):c.insertMemberAtStart(S,_,W),R.writeFixes(c)}function cln(s,c,{token:g,parentDeclaration:d}){let h=jt(d.members,T=>{let W=c.getTypeAtLocation(T);return!!(W&&W.flags&402653316)}),_=d.getSourceFile(),S=me.createEnumMember(g,h?me.createStringLiteral(g.text):void 0),R=li(d.members);R?s.insertNodeInListAfter(_,R,S,d.members):s.insertMemberAtStart(_,d,S)}function lln(s,c,g){let d=_1(c.sourceFile,c.preferences),h=yQ(c.sourceFile,c.program,c.preferences,c.host),_=g.kind===2?HQt(263,c,h,g.call,Vo(g.token),g.modifierFlags,g.parentDeclaration):Tit(263,c,d,g.signature,MPe(Z.Function_not_implemented.message,d),g.token,void 0,void 0,void 0,h);_===void 0&&pe.fail("fixMissingFunctionDeclaration codefix got unexpected error."),I2(g.parentDeclaration)?s.insertNodeBefore(g.sourceFile,g.parentDeclaration,_,!0):s.insertNodeAtEndOfScope(g.sourceFile,g.parentDeclaration,_),h.writeFixes(s)}function uln(s,c,g){let d=yQ(c.sourceFile,c.program,c.preferences,c.host),h=_1(c.sourceFile,c.preferences),_=c.program.getTypeChecker(),S=g.parentDeclaration.attributes,R=jt(S.properties,yz),T=At(g.attributes,M=>{let ee=Cit(c,_,d,h,_.getTypeOfSymbol(M),g.parentDeclaration),re=me.createIdentifier(M.name),ge=me.createJsxAttribute(re,me.createJsxExpression(void 0,ee));return XA(re,ge),ge}),W=me.createJsxAttributes(R?[...T,...S.properties]:[...S.properties,...T]),V={prefix:S.pos===S.end?" ":void 0};s.replaceNode(c.sourceFile,S,W,V),d.writeFixes(s)}function gln(s,c,g){let d=yQ(c.sourceFile,c.program,c.preferences,c.host),h=_1(c.sourceFile,c.preferences),_=Mg(c.program.getCompilerOptions()),S=c.program.getTypeChecker(),R=At(g.properties,W=>{let V=Cit(c,S,d,h,S.getTypeOfSymbol(W),g.parentDeclaration);return me.createPropertyAssignment(fFs(W,_,h,S),V)}),T={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,indentation:g.indentation};s.replaceNode(c.sourceFile,g.parentDeclaration,me.createObjectLiteralExpression([...g.parentDeclaration.properties,...R],!0),T),d.writeFixes(s)}function Cit(s,c,g,d,h,_){if(h.flags&3)return Xz();if(h.flags&134217732)return me.createStringLiteral("",d===0);if(h.flags&8)return me.createNumericLiteral(0);if(h.flags&64)return me.createBigIntLiteral("0n");if(h.flags&16)return me.createFalse();if(h.flags&1056){let S=h.symbol.exports?iA(h.symbol.exports.values()):h.symbol,R=h.symbol.parent&&h.symbol.parent.flags&256?h.symbol.parent:h.symbol,T=c.symbolToExpression(R,111551,void 0,64);return S===void 0||T===void 0?me.createNumericLiteral(0):me.createPropertyAccessExpression(T,c.symbolToString(S))}if(h.flags&256)return me.createNumericLiteral(h.value);if(h.flags&2048)return me.createBigIntLiteral(h.value);if(h.flags&128)return me.createStringLiteral(h.value,d===0);if(h.flags&512)return h===c.getFalseType()||h===c.getFalseType(!0)?me.createFalse():me.createTrue();if(h.flags&65536)return me.createNull();if(h.flags&1048576)return X(h.types,R=>Cit(s,c,g,d,R,_))??Xz();if(c.isArrayLikeType(h))return me.createArrayLiteralExpression();if(AFs(h)){let S=At(c.getPropertiesOfType(h),R=>{let T=Cit(s,c,g,d,c.getTypeOfSymbol(R),_);return me.createPropertyAssignment(R.name,T)});return me.createObjectLiteralExpression(S,!0)}if(la(h)&16){if(de(h.symbol.declarations||E,Hp(x_,hl,uu))===void 0)return Xz();let R=c.getSignaturesOfType(h,0);return R===void 0?Xz():Tit(219,s,d,R[0],MPe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,_,g)??Xz()}if(la(h)&1){let S=AN(h.symbol);if(S===void 0||wP(S))return Xz();let R=lN(S);return R&&B(R.parameters)?Xz():me.createNewExpression(me.createIdentifier(h.symbol.name),void 0,void 0)}return Xz()}function Xz(){return me.createIdentifier("undefined")}function AFs(s){return s.flags&524288&&(la(s)&128||s.symbol&&Gs(Ps(s.symbol.declarations),mh))}function dFs(s,c,g){let d=s.getContextualType(g.attributes);if(d===void 0)return E;let h=d.getProperties();if(!B(h))return E;let _=new Set;for(let S of g.attributes.properties)if(EN(S)&&_.add(cz(S.name)),yz(S)){let R=s.getTypeAtLocation(S.expression);for(let T of R.getProperties())_.add(T.escapedName)}return Me(h,S=>Uh(S.name,c,1)&&!(S.flags&16777216||iI(S)&48||_.has(S.escapedName)))}function pFs(s,c){if(mh(s))return;let g=ji(c,d=>uu(d)||Tc(d));return g&&g.parent===s?g:void 0}function fFs(s,c,g,d){if(bw(s)){let h=d.symbolToNode(s,111551,void 0,void 0,1);if(h&&Un(h))return h}return Kne(s.name,c,g===0,!1,!1)}function Aln(s){if(ji(s,fie)){let c=ji(s.parent,I2);if(c)return c}return ms(s)}function IFs(s,c){let g=[];for(;s;){let d=OL(s),h=d&&c.getSymbolAtLocation(d.expression);if(!h)break;let _=h.flags&2097152?c.getAliasedSymbol(h):h,S=_.declarations&&de(_.declarations,xa);if(!S)break;g.push(S),s=S}return g}var pQt="addMissingNewOperator",dln=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];xg({errorCodes:dln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=xo.ChangeTracker.with(s,h=>pln(h,c,g));return[ug(pQt,d,Z.Add_missing_new_operator_to_call,pQt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[pQt],getAllCodeActions:s=>Qd(s,dln,(c,g)=>pln(c,s.sourceFile,g))});function pln(s,c,g){let d=Ma(hFs(c,g),Zl),h=me.createNewExpression(d.expression,d.typeArguments,d.arguments);s.replaceNode(c,d,h)}function hFs(s,c){let g=Jc(s,c.start),d=Rs(c);for(;g.endbit(R,s.program,s.preferences,s.host,d,h)),[B(h)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,g],_it,Z.Add_all_missing_parameters)),B(_)&&Ft(S,ug(yit,xo.ChangeTracker.with(s,R=>bit(R,s.program,s.preferences,s.host,d,_)),[B(_)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,g],yit,Z.Add_all_optional_parameters)),S},getAllCodeActions:s=>Qd(s,fln,(c,g)=>{let d=Iln(s.sourceFile,s.program,g.start);if(d){let{declarations:h,newParameters:_,newOptionalParameters:S}=d;s.fixId===_it&&bit(c,s.program,s.preferences,s.host,h,_),s.fixId===yit&&bit(c,s.program,s.preferences,s.host,h,S)}})});function Iln(s,c,g){let d=Jc(s,g),h=ji(d,Zl);if(h===void 0||B(h.arguments)===0)return;let _=c.getTypeChecker(),S=_.getTypeAtLocation(h.expression),R=Me(S.symbol.declarations,hln);if(R===void 0)return;let T=li(R);if(T===void 0||T.body===void 0||qie(c,T.getSourceFile()))return;let W=mFs(T);if(W===void 0)return;let V=[],M=[],ee=B(T.parameters),re=B(h.arguments);if(ee>re)return;let ge=[T,..._Fs(T,R)];for(let Ie=0,_e=0,Ee=0;Ie{let T=ms(R),W=yQ(T,c,g,d);B(R.parameters)?s.replaceNodeRangeWithNodes(T,ma(R.parameters),Ei(R.parameters),mln(W,S,R,_),{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include}):F(mln(W,S,R,_),(V,M)=>{B(R.parameters)===0&&M===0?s.insertNodeAt(T,R.parameters.end,V):s.insertNodeAtEndOfList(T,R.parameters,V)}),W.writeFixes(s)})}function hln(s){switch(s.kind){case 263:case 219:case 175:case 220:return!0;default:return!1}}function mln(s,c,g,d){let h=At(g.parameters,_=>me.createParameterDeclaration(_.modifiers,_.dotDotDotToken,_.name,_.questionToken,_.type,_.initializer));for(let{pos:_,declaration:S}of d){let R=_>0?h[_-1]:void 0;h.splice(_,0,me.updateParameterDeclaration(S,S.modifiers,S.dotDotDotToken,S.name,R&&R.questionToken?me.createToken(58):S.questionToken,EFs(s,S.type,c),S.initializer))}return h}function _Fs(s,c){let g=[];for(let d of c)if(yFs(d)){if(B(d.parameters)===B(s.parameters)){g.push(d);continue}if(B(d.parameters)>B(s.parameters))return[]}return g}function yFs(s){return hln(s)&&s.body===void 0}function Cln(s,c,g){return me.createParameterDeclaration(void 0,void 0,s,g,c,void 0)}function bFs(s,c){return B(s)&&jt(s,g=>cQd(s,bln,(c,g,d)=>{let h=Sln(g.file,g.start);if(h!==void 0)switch(s.fixId){case fQt:{let _=vln(h,s.host,g.code);_&&d.push(Eln(g.file.fileName,_));break}default:pe.fail(`Bad fixId: ${s.fixId}`)}})});function Eln(s,c){return{type:"install package",file:s,packageName:c}}function Sln(s,c){let g=Gs(Jc(s,c),Zg);if(!g)return;let d=g.text,{packageName:h}=REe(d);return Xr(h)?void 0:h}function vln(s,c,g){var d;return g===_ln?dU.has(s)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,s)?Z9e(s):void 0}var Bln=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],IQt="fixClassDoesntImplementInheritedAbstractMember";xg({errorCodes:Bln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=xo.ChangeTracker.with(c,_=>Tln(wln(g,d.start),g,c,_,c.preferences));return h.length===0?void 0:[ug(IQt,h,Z.Implement_inherited_abstract_class,IQt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[IQt],getAllCodeActions:function(c){let g=new Set;return Qd(c,Bln,(d,h)=>{let _=wln(h.file,h.start);Zy(g,rd(_))&&Tln(_,c.sourceFile,c,d,c.preferences)})}});function wln(s,c){let g=Jc(s,c);return Ma(g.parent,xa)}function Tln(s,c,g,d,h){let _=BB(s),S=g.program.getTypeChecker(),R=S.getTypeAtLocation(_),T=S.getPropertiesOfType(R).filter(vFs),W=yQ(c,g.program,h,g.host);MQt(s,T,c,g,h,W,V=>d.insertMemberAtStart(c,s,V)),W.writeFixes(d)}function vFs(s){let c=Nx(ma(s.getDeclarations()));return!(c&2)&&!!(c&64)}var hQt="classSuperMustPrecedeThisAccess",Rln=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];xg({errorCodes:Rln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Dln(c,g.start);if(!d)return;let{constructor:h,superCall:_}=d,S=xo.ChangeTracker.with(s,R=>Nln(R,c,h,_));return[ug(hQt,S,Z.Make_super_call_the_first_statement_in_the_constructor,hQt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[hQt],getAllCodeActions(s){let{sourceFile:c}=s,g=new Set;return Qd(s,Rln,(d,h)=>{let _=Dln(h.file,h.start);if(!_)return;let{constructor:S,superCall:R}=_;Zy(g,rd(S.parent))&&Nln(d,c,S,R)})}});function Nln(s,c,g,d){s.insertNodeAtConstructorStart(c,g,d),s.delete(c,d)}function Dln(s,c){let g=Jc(s,c);if(g.kind!==110)return;let d=A1(g),h=kln(d.body);return h&&!h.expression.arguments.some(_=>jo(_)&&_.expression===g)?{constructor:d,superCall:h}:void 0}function kln(s){return VC(s)&&Dy(s.expression)?s:bu(s)?void 0:Lu(s,kln)}var mQt="constructorForDerivedNeedSuperCall",xln=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];xg({errorCodes:xln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Gln(c,g.start),h=xo.ChangeTracker.with(s,_=>Fln(_,c,d));return[ug(mQt,h,Z.Add_missing_super_call,mQt,Z.Add_all_missing_super_calls)]},fixIds:[mQt],getAllCodeActions:s=>Qd(s,xln,(c,g)=>Fln(c,s.sourceFile,Gln(g.file,g.start)))});function Gln(s,c){let g=Jc(s,c);return pe.assert(Tc(g.parent),"token should be at the constructor declaration"),g.parent}function Fln(s,c,g){let d=me.createExpressionStatement(me.createCallExpression(me.createSuper(),void 0,E));s.insertNodeAtConstructorStart(c,g,d)}var Zln="fixEnableJsxFlag",Lln=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];xg({errorCodes:Lln,getCodeActions:function(c){let{configFile:g}=c.program.getCompilerOptions();if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>Vln(h,g));return[sR(Zln,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[Zln],getAllCodeActions:s=>Qd(s,Lln,c=>{let{configFile:g}=s.program.getCompilerOptions();g!==void 0&&Vln(c,g)})});function Vln(s,c){UQt(s,c,"jsx",me.createStringLiteral("react"))}var CQt="fixNaNEquality",Pln=[Z.This_condition_will_always_return_0.code];xg({errorCodes:Pln,getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=Wln(d,c,g);if(h===void 0)return;let{suggestion:_,expression:S,arg:R}=h,T=xo.ChangeTracker.with(s,W=>Oln(W,c,R,S));return[ug(CQt,T,[Z.Use_0,_],CQt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[CQt],getAllCodeActions:s=>Qd(s,Pln,(c,g)=>{let d=Wln(s.program,g.file,zd(g.start,g.length));d&&Oln(c,g.file,d.arg,d.expression)})});function Wln(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.Did_you_mean_0.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=jQt(h.file,zd(h.start,h.length));if(_!==void 0&&un(_)&&fo(_.parent))return{suggestion:BFs(h.messageText),expression:_.parent,arg:_}}function Oln(s,c,g,d){let h=me.createCallExpression(me.createPropertyAccessExpression(me.createIdentifier("Number"),me.createIdentifier("isNaN")),void 0,[g]),_=d.operatorToken.kind;s.replaceNode(c,d,_===38||_===36?me.createPrefixUnaryExpression(54,h):h)}function BFs(s){let[,c]=wN(s,` +`,0).match(/'(.*)'/)||[];return c}xg({errorCodes:[Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(c){let g=c.program.getCompilerOptions(),{configFile:d}=g;if(d===void 0)return;let h=[],_=i0(g);if(_>=5&&_<99){let W=xo.ChangeTracker.with(c,V=>{UQt(V,d,"module",me.createStringLiteral("esnext"))});h.push(sR("fixModuleOption",W,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=Mg(g);if(R<4||R>99){let W=xo.ChangeTracker.with(c,V=>{if(!m7(d))return;let ee=[["target",me.createStringLiteral("es2017")]];_===1&&ee.push(["module",me.createStringLiteral("commonjs")]),JQt(V,d,ee)});h.push(sR("fixTargetOption",W,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return h.length?h:void 0}});var _Qt="fixPropertyAssignment",Mln=[Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];xg({errorCodes:Mln,fixIds:[_Qt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=Yln(c,g.start),h=xo.ChangeTracker.with(s,_=>Hln(_,s.sourceFile,d));return[ug(_Qt,h,[Z.Change_0_to_1,"=",":"],_Qt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:s=>Qd(s,Mln,(c,g)=>Hln(c,g.file,Yln(g.file,g.start)))});function Hln(s,c,g){s.replaceNode(c,g,me.createPropertyAssignment(g.name,g.objectAssignmentInitializer))}function Yln(s,c){return Ma(Jc(s,c).parent,a0)}var yQt="extendsInterfaceBecomesImplements",Qln=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];xg({errorCodes:Qln,getCodeActions(s){let{sourceFile:c}=s,g=Xln(c,s.span.start);if(!g)return;let{extendsToken:d,heritageClauses:h}=g,_=xo.ChangeTracker.with(s,S=>Jln(S,c,d,h));return[ug(yQt,_,Z.Change_extends_to_implements,yQt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[yQt],getAllCodeActions:s=>Qd(s,Qln,(c,g)=>{let d=Xln(g.file,g.start);d&&Jln(c,g.file,d.extendsToken,d.heritageClauses)})});function Xln(s,c){let g=Jc(s,c),d=hC(g).heritageClauses,h=d[0].getFirstToken();return h.kind===96?{extendsToken:h,heritageClauses:d}:void 0}function Jln(s,c,g,d){if(s.replaceNode(c,g,me.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let h=d[1].getFirstToken(),_=h.getFullStart();s.replaceRange(c,{pos:_,end:_},me.createToken(28));let S=c.text,R=h.end;for(;Rzln(h,c,g));return[ug(bQt,d,[Z.Add_0_to_unresolved_variable,g.className||"this"],bQt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[bQt],getAllCodeActions:s=>Qd(s,Kln,(c,g)=>{let d=jln(g.file,g.start,g.code);d&&zln(c,s.sourceFile,d)})});function jln(s,c,g){let d=Jc(s,c);if(Ir(d)||p(d))return{node:d,className:g===Uln?hC(d).name.text:void 0}}function zln(s,c,{node:g,className:d}){Vy(g),s.replaceNode(c,g,me.createPropertyAccessExpression(d?me.createIdentifier(d):me.createThis(),g))}var EQt="fixInvalidJsxCharacters_expression",Eit="fixInvalidJsxCharacters_htmlEntity",qln=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];xg({errorCodes:qln,fixIds:[EQt,Eit],getCodeActions(s){let{sourceFile:c,preferences:g,span:d}=s,h=xo.ChangeTracker.with(s,S=>SQt(S,g,c,d.start,!1)),_=xo.ChangeTracker.with(s,S=>SQt(S,g,c,d.start,!0));return[ug(EQt,h,Z.Wrap_invalid_character_in_an_expression_container,EQt,Z.Wrap_all_invalid_characters_in_an_expression_container),ug(Eit,_,Z.Convert_invalid_character_to_its_html_entity_code,Eit,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(s){return Qd(s,qln,(c,g)=>SQt(c,s.preferences,g.file,g.start,s.fixId===Eit))}});var $ln={">":">","}":"}"};function wFs(s){return Da($ln,s)}function SQt(s,c,g,d,h){let _=g.getText()[d];if(!wFs(_))return;let S=h?$ln[_]:`{${qde(g,c,_)}}`;s.replaceRangeWithText(g,{pos:d,end:d+1},S)}var Sit="deleteUnmatchedParameter",eun="renameUnmatchedParameter",tun=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];xg({fixIds:[Sit,eun],errorCodes:tun,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=[],_=nun(g,d.start);if(_)return Ft(h,TFs(c,_)),Ft(h,RFs(c,_)),h},getAllCodeActions:function(c){let g=new Map;return Hz(xo.ChangeTracker.with(c,d=>{Yz(c,tun,({file:h,start:_})=>{let S=nun(h,_);S&&g.set(S.signature,Ft(g.get(S.signature),S.jsDocParameterTag))}),g.forEach((h,_)=>{if(c.fixId===Sit){let S=new Set(h);d.filterJSDocTags(_.getSourceFile(),_,R=>!S.has(R))}})}))}});function TFs(s,{name:c,jsDocHost:g,jsDocParameterTag:d}){let h=xo.ChangeTracker.with(s,_=>_.filterJSDocTags(s.sourceFile,g,S=>S!==d));return ug(Sit,h,[Z.Delete_unused_param_tag_0,c.getText(s.sourceFile)],Sit,Z.Delete_all_unused_param_tags)}function RFs(s,{name:c,jsDocHost:g,signature:d,jsDocParameterTag:h}){if(!B(d.parameters))return;let _=s.sourceFile,S=Sx(d),R=new Set;for(let M of S)cS(M)&&Ir(M.name)&&R.add(M.name.escapedText);let T=X(d.parameters,M=>Ir(M.name)&&!R.has(M.name.escapedText)?M.name.getText(_):void 0);if(T===void 0)return;let W=me.updateJSDocParameterTag(h,h.tagName,me.createIdentifier(T),h.isBracketed,h.typeExpression,h.isNameFirst,h.comment),V=xo.ChangeTracker.with(s,M=>M.replaceJSDocComment(_,g,At(S,ee=>ee===h?W:ee)));return sR(eun,V,[Z.Rename_param_tag_name_0_to_1,c.getText(_),T])}function nun(s,c){let g=Jc(s,c);if(g.parent&&cS(g.parent)&&Ir(g.parent.name)){let d=g.parent,h=bP(d),_=PL(d);if(h&&_)return{jsDocHost:h,signature:_,name:g.parent.name,jsDocParameterTag:d}}}var vQt="fixUnreferenceableDecoratorMetadata",NFs=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];xg({errorCodes:NFs,getCodeActions:s=>{let c=DFs(s.sourceFile,s.program,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,_=>c.kind===277&&xFs(_,s.sourceFile,c,s.program)),d=xo.ChangeTracker.with(s,_=>kFs(_,s.sourceFile,c,s.program)),h;return g.length&&(h=Ft(h,sR(vQt,g,Z.Convert_named_imports_to_namespace_import))),d.length&&(h=Ft(h,sR(vQt,d,Z.Use_import_type))),h},fixIds:[vQt]});function DFs(s,c,g){let d=Gs(Jc(s,g),Ir);if(!d||d.parent.kind!==184)return;let _=c.getTypeChecker().getSymbolAtLocation(d);return de(_?.declarations||E,Hp(Vw,uy,km))}function kFs(s,c,g,d){if(g.kind===272){s.insertModifierBefore(c,156,g.name);return}let h=g.kind===274?g:g.parent.parent;if(h.name&&h.namedBindings)return;let _=d.getTypeChecker();IZe(h,R=>{if(FC(R.symbol,_).flags&111551)return!0})||s.insertModifierBefore(c,156,h)}function xFs(s,c,g,d){Oz.doChangeNamedToNamespaceOrDefault(c,d,s,g.parent)}var OPe="unusedIdentifier",BQt="unusedIdentifier_prefix",wQt="unusedIdentifier_delete",vit="unusedIdentifier_deleteImports",TQt="unusedIdentifier_infer",iun=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];xg({errorCodes:iun,getCodeActions(s){let{errorCode:c,sourceFile:g,program:d,cancellationToken:h}=s,_=d.getTypeChecker(),S=d.getSourceFiles(),R=Jc(g,s.span.start);if(ZB(R))return[ape(xo.ChangeTracker.with(s,M=>M.delete(g,R)),Z.Remove_template_tag)];if(R.kind===30){let M=xo.ChangeTracker.with(s,ee=>oun(ee,g,R));return[ape(M,Z.Remove_type_parameters)]}let T=aun(R);if(T){let M=xo.ChangeTracker.with(s,ee=>ee.delete(g,T));return[ug(OPe,M,[Z.Remove_import_from_0,zZe(T)],vit,Z.Delete_all_unused_imports)]}else if(RQt(R)){let M=xo.ChangeTracker.with(s,ee=>Bit(g,R,ee,_,S,d,h,!1));if(M.length)return[ug(OPe,M,[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)],vit,Z.Delete_all_unused_imports)]}if(Km(R.parent)||p2(R.parent)){if(Si(R.parent.parent)){let M=R.parent.elements,ee=[M.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,At(M,re=>re.getText(g)).join(", ")];return[ape(xo.ChangeTracker.with(s,re=>GFs(re,g,R.parent)),ee)]}return[ape(xo.ChangeTracker.with(s,M=>FFs(s,M,g,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(cun(g,R))return[ape(xo.ChangeTracker.with(s,M=>lun(M,g,R.parent)),Z.Remove_variable_statement)];if(Ir(R)&&ih(R.parent))return[ape(xo.ChangeTracker.with(s,M=>dun(M,g,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)])];let W=[];if(R.kind===140){let M=xo.ChangeTracker.with(s,re=>sun(re,g,R)),ee=Ma(R.parent,jT).typeParameter.name.text;W.push(ug(OPe,M,[Z.Replace_infer_0_with_unknown,ee],TQt,Z.Replace_all_unused_infer_with_unknown))}else{let M=xo.ChangeTracker.with(s,ee=>Bit(g,R,ee,_,S,d,h,!1));if(M.length){let ee=Un(R.parent)?R.parent:R;W.push(ape(M,[Z.Remove_unused_declaration_for_Colon_0,ee.getText(g)]))}}let V=xo.ChangeTracker.with(s,M=>uun(M,c,g,R));return V.length&&W.push(ug(OPe,V,[Z.Prefix_0_with_an_underscore,R.getText(g)],BQt,Z.Prefix_all_unused_declarations_with_where_possible)),W},fixIds:[BQt,wQt,vit,TQt],getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=g.getTypeChecker(),_=g.getSourceFiles();return Qd(s,iun,(S,R)=>{let T=Jc(c,R.start);switch(s.fixId){case BQt:uun(S,R.code,c,T);break;case vit:{let W=aun(T);W?S.delete(c,W):RQt(T)&&Bit(c,T,S,h,_,g,d,!0);break}case wQt:{if(T.kind===140||RQt(T))break;if(ZB(T))S.delete(c,T);else if(T.kind===30)oun(S,c,T);else if(Km(T.parent)){if(T.parent.parent.initializer)break;(!Si(T.parent.parent)||gun(T.parent.parent,h,_))&&S.delete(c,T.parent.parent)}else{if(p2(T.parent.parent)&&T.parent.parent.parent.initializer)break;cun(c,T)?lun(S,c,T.parent):Ir(T)&&ih(T.parent)?dun(S,c,T.parent):Bit(c,T,S,h,_,g,d,!0)}break}case TQt:T.kind===140&&sun(S,c,T);break;default:pe.fail(JSON.stringify(s.fixId))}})}});function sun(s,c,g){s.replaceNode(c,g.parent,me.createKeywordTypeNode(159))}function ape(s,c){return ug(OPe,s,c,wQt,Z.Delete_all_unused_declarations)}function oun(s,c,g){s.delete(c,pe.checkDefined(Ma(g.parent,jre).typeParameters,"The type parameter to delete should exist"))}function RQt(s){return s.kind===102||s.kind===80&&(s.parent.kind===277||s.parent.kind===274)}function aun(s){return s.kind===102?Gs(s.parent,Mf):void 0}function cun(s,c){return u_(c.parent)&&ma(c.parent.getChildren(s))===c}function lun(s,c,g){s.delete(c,g.parent.kind===244?g.parent:g)}function GFs(s,c,g){F(g.elements,d=>s.delete(c,d))}function FFs(s,c,g,{parent:d}){if(nc(d)&&d.initializer&&hF(d.initializer))if(u_(d.parent)&&B(d.parent.declarations)>1){let h=d.parent.parent,_=h.getStart(g),S=h.end;c.delete(g,d),c.insertNodeAt(g,S,d.initializer,{prefix:OF(s.host,s.formatContext.options)+g.text.slice(tPe(g.text,_-1),_),suffix:_1e(g)?";":""})}else c.replaceNode(g,d.parent,d.initializer);else c.delete(g,d)}function uun(s,c,g,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=Ma(d.parent,jT).typeParameter.name),Ir(d)&&ZFs(d)&&(s.replaceNode(g,d,me.createIdentifier(`_${d.text}`)),Si(d.parent)&&vL(d.parent).forEach(h=>{Ir(h.name)&&s.replaceNode(g,h.name,me.createIdentifier(`_${h.name.text}`))})))}function ZFs(s){switch(s.parent.kind){case 170:case 169:return!0;case 261:switch(s.parent.parent.parent.kind){case 251:case 250:return!0}}return!1}function Bit(s,c,g,d,h,_,S,R){LFs(c,g,s,d,h,_,S,R),Ir(c)&&Kp.Core.eachSymbolReferenceInFile(c,d,s,T=>{jo(T.parent)&&T.parent.name===T&&(T=T.parent),!R&&OFs(T)&&g.delete(s,T.parent.parent)})}function LFs(s,c,g,d,h,_,S,R){let{parent:T}=s;if(Si(T))VFs(c,g,T,d,h,_,S,R);else if(!(R&&Ir(s)&&Kp.Core.isSymbolReferencedInFile(s,d,g))){let W=Vw(T)?s:Un(T)?T.parent:T;pe.assert(W!==g,"should not delete whole source file"),c.delete(g,W)}}function VFs(s,c,g,d,h,_,S,R=!1){if(PFs(d,c,g,h,_,S,R))if(g.modifiers&&g.modifiers.length>0&&(!Ir(g.name)||Kp.Core.isSymbolReferencedInFile(g.name,d,c)))for(let T of g.modifiers)Ig(T)&&s.deleteModifier(c,T);else!g.initializer&&gun(g,d,h)&&s.delete(c,g)}function gun(s,c,g){let d=s.parent.parameters.indexOf(s);return!Kp.Core.someSignatureUsage(s.parent,g,c,(h,_)=>!_||_.arguments.length>d)}function PFs(s,c,g,d,h,_,S){let{parent:R}=g;switch(R.kind){case 175:case 177:let T=R.parameters.indexOf(g),W=uu(R)?R.name:R,V=Kp.Core.getReferencedSymbolsForNode(R.pos,W,h,d,_);if(V){for(let M of V)for(let ee of M.references)if(ee.kind===Kp.EntryKind.Node){let re=rr(ee.node)&&Zl(ee.node.parent)&&ee.node.parent.arguments.length>T,ge=jo(ee.node.parent)&&rr(ee.node.parent.expression)&&Zl(ee.node.parent.parent)&&ee.node.parent.parent.arguments.length>T,Ie=(uu(ee.node.parent)||hl(ee.node.parent))&&ee.node.parent!==g.parent&&ee.node.parent.parameters.length>T;if(re||ge||Ie)return!1}}return!0;case 263:return R.name&&WFs(s,c,R.name)?Aun(R,g,S):!0;case 219:case 220:return Aun(R,g,S);case 179:return!1;case 178:return!0;default:return pe.failBadSyntaxKind(R)}}function WFs(s,c,g){return!!Kp.Core.eachSymbolReferenceInFile(g,s,c,d=>Ir(d)&&Zl(d.parent)&&d.parent.arguments.includes(d))}function Aun(s,c,g){let d=s.parameters,h=d.indexOf(c);return pe.assert(h!==-1,"The parameter should already be in the list"),g?d.slice(h+1).every(_=>Ir(_.name)&&!_.symbol.isReferenced):h===d.length-1}function OFs(s){return(fo(s.parent)&&s.parent.left===s||(ek(s.parent)||T0(s.parent))&&s.parent.operand===s)&&VC(s.parent.parent)}function dun(s,c,g){let d=g.symbol.declarations;if(d)for(let h of d)s.delete(c,h)}var NQt="fixUnreachableCode",pun=[Z.Unreachable_code_detected.code];xg({errorCodes:pun,getCodeActions(s){if(s.program.getSyntacticDiagnostics(s.sourceFile,s.cancellationToken).length)return;let g=xo.ChangeTracker.with(s,d=>fun(d,s.sourceFile,s.span.start,s.span.length,s.errorCode));return[ug(NQt,g,Z.Remove_unreachable_code,NQt,Z.Remove_all_unreachable_code)]},fixIds:[NQt],getAllCodeActions:s=>Qd(s,pun,(c,g)=>fun(c,g.file,g.start,g.length,g.code))});function fun(s,c,g,d,h){let _=Jc(c,g),S=ji(_,Lc);if(S.getStart(c)!==_.getStart(c)){let T=JSON.stringify({statementKind:pe.formatSyntaxKind(S.kind),tokenKind:pe.formatSyntaxKind(_.kind),errorCode:h,start:g,length:d});pe.fail("Token and statement should start at the same point. "+T)}let R=($u(S.parent)?S.parent:S).parent;if(!$u(S.parent)||S===ma(S.parent.statements))switch(R.kind){case 246:if(R.elseStatement){if($u(S.parent))break;s.replaceNode(c,S,me.createBlock(E));return}case 248:case 249:s.delete(c,R);return}if($u(S.parent)){let T=g+d,W=pe.checkDefined(MFs(Nbe(S.parent.statements,S),V=>V.poshun(g,s.sourceFile,s.span.start));return[ug(DQt,c,Z.Remove_unused_label,DQt,Z.Remove_all_unused_labels)]},fixIds:[DQt],getAllCodeActions:s=>Qd(s,Iun,(c,g)=>hun(c,g.file,g.start))});function hun(s,c,g){let d=Jc(c,g),h=Ma(d.parent,FP),_=d.getStart(c),S=h.statement.getStart(c),R=yE(_,S,c)?S:Yu(c.text,qd(h,59,c).end,!0);s.deleteRange(c,{pos:_,end:R})}var mun="fixJSDocTypes_plain",kQt="fixJSDocTypes_nullable",Cun=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];xg({errorCodes:Cun,getCodeActions(s){let{sourceFile:c}=s,g=s.program.getTypeChecker(),d=yun(c,s.span.start,g);if(!d)return;let{typeNode:h,type:_}=d,S=h.getText(c),R=[T(_,mun,Z.Change_all_jsdoc_style_types_to_TypeScript)];return h.kind===315&&R.push(T(_,kQt,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function T(W,V,M){let ee=xo.ChangeTracker.with(s,re=>_un(re,c,h,W,g));return ug("jdocTypes",ee,[Z.Change_0_to_1,S,g.typeToString(W)],V,M)}},fixIds:[mun,kQt],getAllCodeActions(s){let{fixId:c,program:g,sourceFile:d}=s,h=g.getTypeChecker();return Qd(s,Cun,(_,S)=>{let R=yun(S.file,S.start,h);if(!R)return;let{typeNode:T,type:W}=R,V=T.kind===315&&c===kQt?h.getNullableType(W,32768):W;_un(_,d,T,V,h)})}});function _un(s,c,g,d,h){s.replaceNode(c,g,h.typeToTypeNode(d,g,void 0))}function yun(s,c,g){let d=ji(Jc(s,c),HFs),h=d&&d.type;return h&&{typeNode:h,type:YFs(g,h)}}function HFs(s){switch(s.kind){case 235:case 180:case 181:case 263:case 178:case 182:case 201:case 175:case 174:case 170:case 173:case 172:case 179:case 266:case 217:case 261:return!0;default:return!1}}function YFs(s,c){if(hie(c)){let g=s.getTypeFromTypeNode(c.type);return g===s.getNeverType()||g===s.getVoidType()?g:s.getUnionType(Ft([g,s.getUndefinedType()],c.postfix?void 0:s.getNullType()))}return s.getTypeFromTypeNode(c)}var xQt="fixMissingCallParentheses",bun=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];xg({errorCodes:bun,fixIds:[xQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=Sun(c,g.start);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Eun(_,s.sourceFile,d));return[ug(xQt,h,Z.Add_missing_call_parentheses,xQt,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:s=>Qd(s,bun,(c,g)=>{let d=Sun(g.file,g.start);d&&Eun(c,g.file,d)})});function Eun(s,c,g){s.replaceNodeWithText(c,g,`${g.text}()`)}function Sun(s,c){let g=Jc(s,c);if(jo(g.parent)){let d=g.parent;for(;jo(d.parent);)d=d.parent;return d.name}if(Ir(g))return g}var vun="fixMissingTypeAnnotationOnExports",GQt="add-annotation",FQt="add-type-assertion",QFs="extract-expression",Bun=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],XFs=new Set([178,175,173,263,219,220,261,170,278,264,207,208]),wun=531469,Tun=1;xg({errorCodes:Bun,fixIds:[vun],getCodeActions(s){let c=[];return cpe(GQt,c,s,0,g=>g.addTypeAnnotation(s.span)),cpe(GQt,c,s,1,g=>g.addTypeAnnotation(s.span)),cpe(GQt,c,s,2,g=>g.addTypeAnnotation(s.span)),cpe(FQt,c,s,0,g=>g.addInlineAssertion(s.span)),cpe(FQt,c,s,1,g=>g.addInlineAssertion(s.span)),cpe(FQt,c,s,2,g=>g.addInlineAssertion(s.span)),cpe(QFs,c,s,0,g=>g.extractAsVariable(s.span)),c},getAllCodeActions:s=>{let c=Run(s,0,g=>{Yz(s,Bun,d=>{g.addTypeAnnotation(d)})});return Hz(c.textChanges)}});function cpe(s,c,g,d,h){let _=Run(g,d,h);_.result&&_.textChanges.length&&c.push(ug(s,_.textChanges,_.result,vun,Z.Add_all_missing_type_annotations))}function Run(s,c,g){let d={typeNode:void 0,mutatedTarget:!1},h=xo.ChangeTracker.fromContext(s),_=s.sourceFile,S=s.program,R=S.getTypeChecker(),T=Mg(S.getCompilerOptions()),W=yQ(s.sourceFile,s.program,s.preferences,s.host),V=new Set,M=new Set,ee=MP({preserveSourceNewlines:!1}),re=g({addTypeAnnotation:ge,addInlineAssertion:Te,extractAsVariable:Ze});return W.writeFixes(h),{result:re,textChanges:h.getChanges()};function ge(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start),zt=We(ir);if(zt)return ih(zt)?Ie(zt):Ue(zt);let Ht=dt(ir);if(Ht)return Ue(Ht)}function Ie(st){var ir;if(M?.has(st))return;M?.add(st);let zt=R.getTypeAtLocation(st),Ht=R.getPropertiesOfType(zt);if(!st.name||Ht.length===0)return;let Br=[];for(let Zi of Ht)Uh(Zi.name,Mg(S.getCompilerOptions()))&&(Zi.valueDeclaration&&nc(Zi.valueDeclaration)||Br.push(me.createVariableStatement([me.createModifier(95)],me.createVariableDeclarationList([me.createVariableDeclaration(Zi.name,void 0,Dt(R.getTypeOfSymbol(Zi),st),void 0)]))));if(Br.length===0)return;let mn=[];(ir=st.modifiers)!=null&&ir.some(Zi=>Zi.kind===95)&&mn.push(me.createModifier(95)),mn.push(me.createModifier(138));let jn=me.createModuleDeclaration(mn,st.name,me.createModuleBlock(Br),101441696);return h.insertNodeAfter(_,st,jn),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function _e(st){return!Od(st)&&!Zl(st)&&!og(st)&&!OI(st)}function Ee(st,ir){return _e(st)&&(st=me.createParenthesizedExpression(st)),me.createAsExpression(st,ir)}function Ne(st,ir){return _e(st)&&(st=me.createParenthesizedExpression(st)),me.createAsExpression(me.createSatisfiesExpression(st,JA(ir)),ir)}function Te(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start);if(We(ir))return;let Ht=pr(ir,st);if(!Ht||C3(Ht)||C3(Ht.parent))return;let Br=un(Ht),mn=a0(Ht);if(!mn&&jh(Ht)||ji(Ht,Nu)||ji(Ht,LF)||Br&&(ji(Ht,h1)||ji(Ht,uc))||of(Ht))return;let jn=ji(Ht,nc),Zi=jn&&R.getTypeAtLocation(jn);if(Zi&&Zi.flags&8192||!(Br||mn))return;let{typeNode:Ns,mutatedTarget:An}=Rt(Ht,Zi);if(!(!Ns||An))return mn?h.insertNodeAt(_,Ht.end,Ee(JA(Ht.name),Ns),{prefix:": "}):Br?h.replaceNode(_,Ht,Ne(JA(Ht),Ns)):pe.assertNever(Ht),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Gr(Ns)]}function Ze(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start),zt=pr(ir,st);if(!zt||C3(zt)||C3(zt.parent)||!un(zt))return;if(OI(zt))return h.replaceNode(_,zt,Ee(zt,me.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let Br=ji(zt,fm);if(Br){if(Br===zt.parent&&Od(zt))return;let mn=me.createUniqueName(ZHt(zt,_,R,_),16),jn=zt,Zi=zt;if(of(jn)&&(jn=gv(jn.parent),Gt(jn.parent)?Zi=jn=jn.parent:Zi=Ee(jn,me.createTypeReferenceNode("const"))),Od(jn))return;let Ns=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(mn,void 0,void 0,Zi)],2)),An=ji(zt,Lc);return h.insertNodeBefore(_,An,Ns),h.replaceNode(_,jn,me.createAsExpression(me.cloneNode(mn),me.createTypeQueryNode(me.cloneNode(mn)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Gr(mn)]}}function We(st){let ir=ji(st,zt=>Lc(zt)?"quit":jY(zt));if(ir&&jY(ir)){let zt=ir;if(fo(zt)&&(zt=zt.left,!jY(zt)))return;let Ht=R.getTypeAtLocation(zt.expression);if(!Ht)return;let Br=R.getPropertiesOfType(Ht);if(jt(Br,mn=>mn.valueDeclaration===ir||mn.valueDeclaration===ir.parent)){let mn=Ht.symbol.valueDeclaration;if(mn){if(RF(mn)&&nc(mn.parent))return mn.parent;if(ih(mn))return mn}}}}function Ue(st){if(!V?.has(st))switch(V?.add(st),st.kind){case 170:case 173:case 261:return ur(st);case 220:case 219:case 263:case 175:case 178:return $e(st,_);case 278:return Ye(st);case 264:return Tt(st);case 207:case 208:return Qe(st);default:throw new Error(`Cannot find a fix for the given node ${st.kind}`)}}function $e(st,ir){if(st.type)return;let{typeNode:zt}=Rt(st);if(zt)return h.tryInsertTypeAnnotation(ir,st,zt),[Z.Add_return_type_0,Gr(zt)]}function Ye(st){if(st.isExportEquals)return;let{typeNode:ir}=Rt(st.expression);if(!ir)return;let zt=me.createUniqueName("_default");return h.replaceNodeWithNodes(_,st,[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(zt,void 0,ir,st.expression)],2)),me.updateExportAssignment(st,st?.modifiers,zt)]),[Z.Extract_default_export_to_variable]}function Tt(st){var ir,zt;let Ht=(ir=st.heritageClauses)==null?void 0:ir.find(si=>si.token===96),Br=Ht?.types[0];if(!Br)return;let{typeNode:mn}=Rt(Br.expression);if(!mn)return;let jn=me.createUniqueName(st.name?st.name.text+"Base":"Anonymous",16),Zi=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(jn,void 0,mn,Br.expression)],2));h.insertNodeBefore(_,st,Zi);let Ns=n2(_.text,Br.end),An=((zt=Ns?.[Ns.length-1])==null?void 0:zt.end)??Br.end;return h.replaceRange(_,{pos:Br.getFullStart(),end:An},jn,{prefix:" "}),[Z.Extract_base_class_to_variable]}let ot;(st=>{st[st.Text=0]="Text",st[st.Computed=1]="Computed",st[st.ArrayAccess=2]="ArrayAccess",st[st.Identifier=3]="Identifier"})(ot||(ot={}));function Qe(st){var ir;let zt=st.parent,Ht=st.parent.parent.parent;if(!zt.initializer)return;let Br,mn=[];if(Ir(zt.initializer))Br={expression:{kind:3,identifier:zt.initializer}};else{let Ns=me.createUniqueName("dest",16);Br={expression:{kind:3,identifier:Ns}},mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Ns,void 0,void 0,zt.initializer)],2)))}let jn=[];p2(st)?mt(st,jn,Br):ht(st,jn,Br);let Zi=new Map;for(let Ns of jn){if(Ns.element.propertyName&&Un(Ns.element.propertyName)){let si=Ns.element.propertyName.expression,ks=me.getGeneratedNameForNode(si),Ic=me.createVariableDeclaration(ks,void 0,void 0,si),su=me.createVariableDeclarationList([Ic],2),Zn=me.createVariableStatement(void 0,su);mn.push(Zn),Zi.set(si,ks)}let An=Ns.element.name;if(p2(An))mt(An,jn,Ns);else if(Km(An))ht(An,jn,Ns);else{let{typeNode:si}=Rt(An),ks=_t(Ns,Zi);if(Ns.element.initializer){let su=(ir=Ns.element)==null?void 0:ir.propertyName,Zn=me.createUniqueName(su&&Ir(su)?su.text:"temp",16);mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zn,void 0,void 0,ks)],2))),ks=me.createConditionalExpression(me.createBinaryExpression(Zn,me.createToken(37),me.createIdentifier("undefined")),me.createToken(58),Ns.element.initializer,me.createToken(59),ks)}let Ic=Ga(Ht,32)?[me.createToken(95)]:void 0;mn.push(me.createVariableStatement(Ic,me.createVariableDeclarationList([me.createVariableDeclaration(An,void 0,si,ks)],2)))}}return Ht.declarationList.declarations.length>1&&mn.push(me.updateVariableStatement(Ht,Ht.modifiers,me.updateVariableDeclarationList(Ht.declarationList,Ht.declarationList.declarations.filter(Ns=>Ns!==st.parent)))),h.replaceNodeWithNodes(_,Ht,mn),[Z.Extract_binding_expressions_to_variable]}function mt(st,ir,zt){for(let Ht=0;Ht=0;--Br){let mn=zt[Br].expression;mn.kind===0?Ht=me.createPropertyAccessChain(Ht,void 0,me.createIdentifier(mn.text)):mn.kind===1?Ht=me.createElementAccessExpression(Ht,ir.get(mn.computed)):mn.kind===2&&(Ht=me.createElementAccessExpression(Ht,mn.arrayIndex))}return Ht}function Rt(st,ir){if(c===1)return nt(st);let zt;if(C3(st)){let mn=R.getSignatureFromDeclaration(st);if(mn){let jn=R.getTypePredicateOfSignature(mn);if(jn)return jn.type?{typeNode:tr(jn,ji(st,jh)??_,Br(jn.type)),mutatedTarget:!1}:d;zt=R.getReturnTypeOfSignature(mn)}}else zt=R.getTypeAtLocation(st);if(!zt)return d;if(c===2){ir&&(zt=ir);let mn=R.getWidenedLiteralType(zt);if(R.isTypeAssignableTo(mn,zt))return d;zt=mn}let Ht=ji(st,jh)??_;return Si(st)&&R.requiresAddingImplicitUndefined(st,Ht)&&(zt=R.getUnionType([R.getUndefinedType(),zt],0)),{typeNode:Dt(zt,Ht,Br(zt)),mutatedTarget:!1};function Br(mn){return(nc(st)||pi(st)&&Ga(st,264))&&mn.flags&8192?1048576:0}}function Lt(st){return me.createTypeQueryNode(JA(st))}function Ke(st,ir="temp"){let zt=!!ji(st,Gt);return zt?_r(st,ir,zt,Ht=>Ht.elements,of,me.createSpreadElement,Ht=>me.createArrayLiteralExpression(Ht,!0),Ht=>me.createTupleTypeNode(Ht.map(me.createRestTypeNode))):d}function Pt(st,ir="temp"){let zt=!!ji(st,Gt);return _r(st,ir,zt,Ht=>Ht.properties,Lx,me.createSpreadAssignment,Ht=>me.createObjectLiteralExpression(Ht,!0),me.createIntersectionTypeNode)}function _r(st,ir,zt,Ht,Br,mn,jn,Zi){let Ns=[],An=[],si,ks=ji(st,Lc);for(let Zn of Ht(st))Br(Zn)?(su(),Od(Zn.expression)?(Ns.push(Lt(Zn.expression)),An.push(Zn)):Ic(Zn.expression)):(si??(si=[])).push(Zn);if(An.length===0)return d;return su(),h.replaceNode(_,st,jn(An)),{typeNode:Zi(Ns),mutatedTarget:!0};function Ic(Zn){let ya=me.createUniqueName(ir+"_Part"+(An.length+1),16),Gl=zt?me.createAsExpression(Zn,me.createTypeReferenceNode("const")):Zn,ba=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ya,void 0,void 0,Gl)],2));h.insertNodeBefore(_,ks,ba),Ns.push(Lt(ya)),An.push(mn(ya))}function su(){si&&(Ic(jn(si)),si=void 0)}}function Gt(st){return Ed(st)&&s2(st.type)}function nt(st){if(Si(st))return d;if(a0(st))return{typeNode:Lt(st.name),mutatedTarget:!1};if(Od(st))return{typeNode:Lt(st),mutatedTarget:!1};if(Gt(st))return nt(st.expression);if(OI(st)){let ir=ji(st,nc),zt=ir&&Ir(ir.name)?ir.name.text:void 0;return Ke(st,zt)}if(og(st)){let ir=ji(st,nc),zt=ir&&Ir(ir.name)?ir.name.text:void 0;return Pt(st,zt)}if(nc(st)&&st.initializer)return nt(st.initializer);if(Lw(st)){let{typeNode:ir,mutatedTarget:zt}=nt(st.whenTrue);if(!ir)return d;let{typeNode:Ht,mutatedTarget:Br}=nt(st.whenFalse);return Ht?{typeNode:me.createUnionTypeNode([ir,Ht]),mutatedTarget:zt||Br}:d}return d}function Dt(st,ir,zt=0){let Ht=!1,Br=zun(R,st,ir,wun|zt,Tun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Ht=!0}});if(!Br)return;let mn=YQt(Br,W,T);return Ht?me.createKeywordTypeNode(133):mn}function tr(st,ir,zt=0){let Ht=!1,Br=qun(R,W,st,ir,T,wun|zt,Tun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Ht=!0}});return Ht?me.createKeywordTypeNode(133):Br}function ur(st){let{typeNode:ir}=Rt(st);if(ir)return st.type?h.replaceNode(ms(st),st.type,ir):h.tryInsertTypeAnnotation(ms(st),st,ir),[Z.Add_annotation_of_type_0,Gr(ir)]}function Gr(st){ti(st,1);let ir=ee.printNode(4,st,_);return ir.length>EY?ir.substring(0,EY-3)+"...":(ti(st,0),ir)}function dt(st){return ji(st,ir=>XFs.has(ir.kind)&&(!Km(ir)&&!p2(ir)||nc(ir.parent)))}function pr(st,ir){for(;st&&st.endkun(_,c,d));return[ug(ZQt,h,Z.Add_async_modifier_to_containing_function,ZQt,Z.Add_all_missing_async_modifiers)]},fixIds:[ZQt],getAllCodeActions:function(c){let g=new Set;return Qd(c,Nun,(d,h)=>{let _=Dun(h.file,h.start);!_||!Zy(g,rd(_.insertBefore))||kun(d,c.sourceFile,_)})}});function JFs(s){if(s.type)return s.type;if(nc(s.parent)&&s.parent.type&&x_(s.parent.type))return s.parent.type.type}function Dun(s,c){let g=Jc(s,c),d=A1(g);if(!d)return;let h;switch(d.kind){case 175:h=d.name;break;case 263:case 219:h=qd(d,100,s);break;case 220:let _=d.typeParameters?30:21;h=qd(d,_,s)||ma(d.parameters);break;default:return}return h&&{insertBefore:h,returnType:JFs(d)}}function kun(s,c,{insertBefore:g,returnType:d}){if(d){let h=tne(d);(!h||h.kind!==80||h.text!=="Promise")&&s.replaceNode(c,d,me.createTypeReferenceNode("Promise",me.createNodeArray([d])))}s.insertModifierBefore(c,134,g)}var xun=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],LQt="fixPropertyOverrideAccessor";xg({errorCodes:xun,getCodeActions(s){let c=Gun(s.sourceFile,s.span.start,s.span.length,s.errorCode,s);if(c)return[ug(LQt,c,Z.Generate_get_and_set_accessors,LQt,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[LQt],getAllCodeActions:s=>Qd(s,xun,(c,g)=>{let d=Gun(g.file,g.start,g.length,g.code,s);if(d)for(let h of d)c.pushRaw(s.sourceFile,h)})});function Gun(s,c,g,d,h){let _,S;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)_=c,S=c+g;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=h.program.getTypeChecker(),T=Jc(s,c).parent;if(Un(T))return;pe.assert(yB(T),"error span of fixPropertyOverrideAccessor should only be on an accessor");let W=T.parent;pe.assert(xa(W),"erroneous accessors should only be inside classes");let V=BB(W);if(!V)return;let M=QA(V.expression),ee=vd(M)?M.symbol:R.getSymbolAtLocation(M);if(!ee)return;let re=R.getDeclaredTypeOfSymbol(ee),ge=R.getPropertyOfType(re,Bc(hP(T.name)));if(!ge||!ge.valueDeclaration)return;_=ge.valueDeclaration.pos,S=ge.valueDeclaration.end,s=ms(ge.valueDeclaration)}else pe.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return ngn(s,h.program,_,S,h,Z.Generate_get_and_set_accessors.message)}var VQt="inferFromUsage",Fun=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];xg({errorCodes:Fun,getCodeActions(s){let{sourceFile:c,program:g,span:{start:d},errorCode:h,cancellationToken:_,host:S,preferences:R}=s,T=Jc(c,d),W,V=xo.ChangeTracker.with(s,ee=>{W=Zun(ee,c,T,h,g,_,Tf,S,R)}),M=W&&Il(W);return!M||V.length===0?void 0:[ug(VQt,V,[UFs(h,T),xp(M)],VQt,Z.Infer_all_types_from_usage)]},fixIds:[VQt],getAllCodeActions(s){let{sourceFile:c,program:g,cancellationToken:d,host:h,preferences:_}=s,S=Qie();return Qd(s,Fun,(R,T)=>{Zun(R,c,Jc(T.file,T.start),T.code,g,d,S,h,_)})}});function UFs(s,c){switch(s){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Dg(A1(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function KFs(s){switch(s){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return s}function Zun(s,c,g,d,h,_,S,R,T){if(!IY(g.kind)&&g.kind!==80&&g.kind!==26&&g.kind!==110)return;let{parent:W}=g,V=yQ(c,h,T,R);switch(d=KFs(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(nc(W)&&S(W)||pi(W)||ss(W))return Lun(s,V,c,W,h,R,_),V.writeFixes(s),W;if(jo(W)){let re=W1e(W.name,h,_),ge=$de(re,W,h,R);if(ge){let Ie=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(ge),void 0);s.addJSDocTags(c,Ma(W.parent.parent,VC),[Ie])}return V.writeFixes(s),W}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=h.getTypeChecker().getSymbolAtLocation(g);return re&&re.valueDeclaration&&nc(re.valueDeclaration)&&S(re.valueDeclaration)?(Lun(s,V,ms(re.valueDeclaration),re.valueDeclaration,h,R,_),V.writeFixes(s),re.valueDeclaration):void 0}}let M=A1(g);if(M===void 0)return;let ee;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(Dg(M)){Vun(s,V,c,M,h,R,_),ee=M;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(S(M)){let re=Ma(W,Si);jFs(s,V,c,re,M,h,R,_),ee=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:Bg(M)&&Ir(M.name)&&(wit(s,V,c,M,W1e(M.name,h,_),h,R),ee=M);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:Dg(M)&&(Vun(s,V,c,M,h,R,_),ee=M);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:xo.isThisTypeAnnotatable(M)&&S(M)&&(zFs(s,c,M,h,R,_),ee=M);break;default:return pe.fail(String(d))}return V.writeFixes(s),ee}function Lun(s,c,g,d,h,_,S){Ir(d.name)&&wit(s,c,g,d,W1e(d.name,h,S),h,_)}function jFs(s,c,g,d,h,_,S,R){if(!Ir(d.name))return;let T=eZs(h,g,_,R);if(pe.assert(h.parameters.length===T.length,"Parameter count and inference count should match"),wo(h))Pun(s,g,T,_,S);else{let W=lA(h)&&!qd(h,21,g);W&&s.insertNodeBefore(g,ma(h.parameters),me.createToken(21));for(let{declaration:V,type:M}of T)V&&!V.type&&!V.initializer&&wit(s,c,g,V,M,_,S);W&&s.insertNodeAfter(g,Ei(h.parameters),me.createToken(22))}}function zFs(s,c,g,d,h,_){let S=Wun(g,c,d,_);if(!S||!S.length)return;let R=WQt(d,S,_).thisParameter(),T=$de(R,g,d,h);T&&(wo(g)?qFs(s,c,g,T):s.tryInsertThisTypeAnnotation(c,g,T))}function qFs(s,c,g,d){s.addJSDocTags(c,g,[me.createJSDocThisTag(void 0,me.createJSDocTypeExpression(d))])}function Vun(s,c,g,d,h,_,S){let R=Nc(d.parameters);if(R&&Ir(d.name)&&Ir(R.name)){let T=W1e(d.name,h,S);T===h.getTypeChecker().getAnyType()&&(T=W1e(R.name,h,S)),wo(d)?Pun(s,g,[{declaration:R,type:T}],h,_):wit(s,c,g,R,T,h,_)}}function wit(s,c,g,d,h,_,S){let R=$de(h,d,_,S);if(R)if(wo(g)&&d.kind!==172){let T=nc(d)?Gs(d.parent.parent,Ch):d;if(!T)return;let W=me.createJSDocTypeExpression(R),V=Bg(d)?me.createJSDocReturnTag(void 0,W,void 0):me.createJSDocTypeTag(void 0,W,void 0);s.addJSDocTags(g,T,[V])}else $Fs(R,d,g,s,c,Mg(_.getCompilerOptions()))||s.tryInsertTypeAnnotation(g,d,R)}function $Fs(s,c,g,d,h,_){let S=bQ(s,_);return S&&d.tryInsertTypeAnnotation(g,c,S.typeNode)?(F(S.symbols,R=>h.addImportFromExportedSymbol(R,!0)),!0):!1}function Pun(s,c,g,d,h){let _=g.length&&g[0].declaration.parent;if(!_)return;let S=Xt(g,R=>{let T=R.declaration;if(T.initializer||eN(T)||!Ir(T.name))return;let W=R.type&&$de(R.type,T,d,h);if(W){let V=me.cloneNode(T.name);return ti(V,7168),{name:me.cloneNode(T.name),param:T,isOptional:!!R.isOptional,typeNode:W}}});if(S.length)if(lA(_)||UA(_)){let R=lA(_)&&!qd(_,21,c);R&&s.insertNodeBefore(c,ma(_.parameters),me.createToken(21)),F(S,({typeNode:T,param:W})=>{let V=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(T)),M=me.createJSDocComment(void 0,[V]);s.insertNodeAt(c,W.getStart(c),M,{suffix:" "})}),R&&s.insertNodeAfter(c,Ei(_.parameters),me.createToken(22))}else{let R=At(S,({name:T,typeNode:W,isOptional:V})=>me.createJSDocParameterTag(void 0,T,!!V,me.createJSDocTypeExpression(W),!1,void 0));s.addJSDocTags(c,_,R)}}function PQt(s,c,g){return Xt(Kp.getReferenceEntriesForNode(-1,s,c,c.getSourceFiles(),g),d=>d.kind!==Kp.EntryKind.Span?Gs(d.node,Ir):void 0)}function W1e(s,c,g){let d=PQt(s,c,g);return WQt(c,d,g).single()}function eZs(s,c,g,d){let h=Wun(s,c,g,d);return h&&WQt(g,h,d).parameters(s)||s.parameters.map(_=>({declaration:_,type:Ir(_.name)?W1e(_.name,g,d):g.getTypeChecker().getAnyType()}))}function Wun(s,c,g,d){let h;switch(s.kind){case 177:h=qd(s,137,c);break;case 220:case 219:let _=s.parent;h=(nc(_)||pi(_))&&Ir(_.name)?_.name:s.name;break;case 263:case 175:case 174:h=s.name;break}if(h)return PQt(h,g,d)}function WQt(s,c,g){let d=s.getTypeChecker(),h={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:Dt=>d.createArrayType(Dt),Promise:Dt=>d.createPromiseType(Dt)},_=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:T,parameters:W,thisParameter:V};function S(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function R(Dt){let tr=new Map;for(let Gr of Dt)Gr.properties&&Gr.properties.forEach((dt,pr)=>{tr.has(pr)||tr.set(pr,[]),tr.get(pr).push(dt)});let ur=new Map;return tr.forEach((Gr,dt)=>{ur.set(dt,R(Gr))}),{isNumber:Dt.some(Gr=>Gr.isNumber),isString:Dt.some(Gr=>Gr.isString),isNumberOrString:Dt.some(Gr=>Gr.isNumberOrString),candidateTypes:er(Dt,Gr=>Gr.candidateTypes),properties:ur,calls:er(Dt,Gr=>Gr.calls),constructs:er(Dt,Gr=>Gr.constructs),numberIndex:F(Dt,Gr=>Gr.numberIndex),stringIndex:F(Dt,Gr=>Gr.stringIndex),candidateThisTypes:er(Dt,Gr=>Gr.candidateThisTypes),inferredTypes:void 0}}function T(){return Tt(M(c))}function W(Dt){if(c.length===0||!Dt.parameters)return;let tr=S();for(let Gr of c)g.throwIfCancellationRequested(),ee(Gr,tr);let ur=[...tr.constructs||[],...tr.calls||[]];return Dt.parameters.map((Gr,dt)=>{let pr=[],st=EB(Gr),ir=!1;for(let Ht of ur)if(Ht.argumentTypes.length<=dt)ir=wo(Dt),pr.push(d.getUndefinedType());else if(st)for(let Br=dt;Brur.every(dt=>!dt(Gr)))}function Ye(Dt){return Tt(Qe(Dt))}function Tt(Dt){if(!Dt.length)return d.getAnyType();let tr=d.getUnionType([d.getStringType(),d.getNumberType()]),Gr=$e(Dt,[{high:pr=>pr===d.getStringType()||pr===d.getNumberType(),low:pr=>pr===tr},{high:pr=>!(pr.flags&16385),low:pr=>!!(pr.flags&16385)},{high:pr=>!(pr.flags&114689)&&!(la(pr)&16),low:pr=>!!(la(pr)&16)}]),dt=Gr.filter(pr=>la(pr)&16);return dt.length&&(Gr=Gr.filter(pr=>!(la(pr)&16)),Gr.push(ot(dt))),d.getWidenedType(d.getUnionType(Gr.map(d.getBaseTypeOfLiteralType),2))}function ot(Dt){if(Dt.length===1)return Dt[0];let tr=[],ur=[],Gr=[],dt=[],pr=!1,st=!1,ir=dl();for(let Br of Dt){for(let Zi of d.getPropertiesOfType(Br))ir.add(Zi.escapedName,Zi.valueDeclaration?d.getTypeOfSymbolAtLocation(Zi,Zi.valueDeclaration):d.getAnyType());tr.push(...d.getSignaturesOfType(Br,0)),ur.push(...d.getSignaturesOfType(Br,1));let mn=d.getIndexInfoOfType(Br,0);mn&&(Gr.push(mn.type),pr=pr||mn.isReadonly);let jn=d.getIndexInfoOfType(Br,1);jn&&(dt.push(jn.type),st=st||jn.isReadonly)}let zt=ke(ir,(Br,mn)=>{let jn=mn.lengthd.getBaseTypeOfLiteralType(ir)),st=(Gr=Dt.calls)!=null&&Gr.length?mt(Dt):void 0;return st&&pr?dt.push(d.getUnionType([st,...pr],2)):(st&&dt.push(st),B(pr)&&dt.push(...pr)),dt.push(...ht(Dt)),dt}function mt(Dt){let tr=new Map;Dt.properties&&Dt.properties.forEach((pr,st)=>{let ir=d.createSymbol(4,st);ir.links.type=Ye(pr),tr.set(st,ir)});let ur=Dt.calls?[_r(Dt.calls)]:[],Gr=Dt.constructs?[_r(Dt.constructs)]:[],dt=Dt.stringIndex?[d.createIndexInfo(d.getStringType(),Ye(Dt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,tr,ur,Gr,dt)}function ht(Dt){if(!Dt.properties||!Dt.properties.size)return[];let tr=_.filter(ur=>_t(ur,Dt));return 0Rt(ur,Dt)):[]}function _t(Dt,tr){return tr.properties?!Dh(tr.properties,(ur,Gr)=>{let dt=d.getTypeOfPropertyOfType(Dt,Gr);return dt?ur.calls?!d.getSignaturesOfType(dt,0).length||!d.isTypeAssignableTo(dt,Pt(ur.calls)):!d.isTypeAssignableTo(dt,Ye(ur)):!0}):!1}function Rt(Dt,tr){if(!(la(Dt)&4)||!tr.properties)return Dt;let ur=Dt.target,Gr=Ps(ur.typeParameters);if(!Gr)return Dt;let dt=[];return tr.properties.forEach((pr,st)=>{let ir=d.getTypeOfPropertyOfType(ur,st);pe.assert(!!ir,"generic should have all the properties of its reference."),dt.push(...Lt(ir,Ye(pr),Gr))}),h[Dt.symbol.escapedName](Tt(dt))}function Lt(Dt,tr,ur){if(Dt===ur)return[tr];if(Dt.flags&3145728)return er(Dt.types,pr=>Lt(pr,tr,ur));if(la(Dt)&4&&la(tr)&4){let pr=d.getTypeArguments(Dt),st=d.getTypeArguments(tr),ir=[];if(pr&&st)for(let zt=0;ztdt.argumentTypes.length));for(let dt=0;dtst.argumentTypes[dt]||d.getUndefinedType())),Dt.some(st=>st.argumentTypes[dt]===void 0)&&(pr.flags|=16777216),tr.push(pr)}let Gr=Ye(R(Dt.map(dt=>dt.return_)));return d.createSignature(void 0,void 0,void 0,tr,Gr,void 0,ur,0)}function Gt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateTypes||(Dt.candidateTypes=[])).push(tr)}function nt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateThisTypes||(Dt.candidateThisTypes=[])).push(tr)}}var OQt="fixReturnTypeInAsyncFunction",Oun=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];xg({errorCodes:Oun,fixIds:[OQt],getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_=d.getTypeChecker(),S=Mun(g,d.getTypeChecker(),h.start);if(!S)return;let{returnTypeNode:R,returnType:T,promisedTypeNode:W,promisedType:V}=S,M=xo.ChangeTracker.with(c,ee=>Hun(ee,g,R,W));return[ug(OQt,M,[Z.Replace_0_with_Promise_1,_.typeToString(T),_.typeToString(V)],OQt,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:s=>Qd(s,Oun,(c,g)=>{let d=Mun(g.file,s.program.getTypeChecker(),g.start);d&&Hun(c,g.file,d.returnTypeNode,d.promisedTypeNode)})});function Mun(s,c,g){if(wo(s))return;let d=Jc(s,g),h=ji(d,kd),_=h?.type;if(!_)return;let S=c.getTypeFromTypeNode(_),R=c.getAwaitedType(S)||c.getVoidType(),T=c.typeToTypeNode(R,_,void 0);if(T)return{returnTypeNode:_,returnType:S,promisedTypeNode:T,promisedType:R}}function Hun(s,c,g,d){s.replaceNode(c,g,me.createTypeReferenceNode("Promise",[d]))}var Yun="disableJsDiagnostics",Qun="disableJsDiagnostics",Xun=Xt(Object.keys(Z),s=>{let c=Z[s];return c.category===1?c.code:void 0});xg({errorCodes:Xun,getCodeActions:function(c){let{sourceFile:g,program:d,span:h,host:_,formatContext:S}=c;if(!wo(g)||!rz(g,d.getCompilerOptions()))return;let R=g.checkJsDirective?"":OF(_,S.options),T=[sR(Yun,[Gon(g.fileName,[A1e(g.checkJsDirective?wA(g.checkJsDirective.pos,g.checkJsDirective.end):zd(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return xo.isValidLocationToAddComment(g,h.start)&&T.unshift(ug(Yun,xo.ChangeTracker.with(c,W=>Jun(W,g,h.start)),Z.Ignore_this_error_message,Qun,Z.Add_ts_ignore_to_all_error_messages)),T},fixIds:[Qun],getAllCodeActions:s=>{let c=new Set;return Qd(s,Xun,(g,d)=>{xo.isValidLocationToAddComment(d.file,d.start)&&Jun(g,d.file,d.start,c)})}});function Jun(s,c,g,d){let{line:h}=Ra(c,g);(!d||Ar(d,h))&&s.insertCommentBeforeLine(c,h,g," @ts-ignore")}function MQt(s,c,g,d,h,_,S){let R=s.symbol.members;for(let T of c)R.has(T.escapedName)||Kun(T,s,g,d,h,_,S,void 0)}function nse(s){return{trackSymbol:()=>!1,moduleResolverHost:Wrt(s.program,s.host)}}var Uun=(s=>(s[s.Method=1]="Method",s[s.Property=2]="Property",s[s.All=3]="All",s))(Uun||{});function Kun(s,c,g,d,h,_,S,R,T=3,W=!1){let V=s.getDeclarations(),M=Nc(V),ee=d.program.getTypeChecker(),re=Mg(d.program.getCompilerOptions()),ge=M?.kind??172,Ie=_t(s,M),_e=M?o_(M):0,Ee=_e&256;Ee|=_e&1?1:_e&4?4:0,M&&t0(M)&&(Ee|=512);let Ne=Tt(),Te=ee.getWidenedType(ee.getTypeOfSymbolAtLocation(s,c)),Ze=!!(s.flags&16777216),We=!!(c.flags&33554432)||W,Ue=_1(g,h),$e=1|(Ue===0?268435456:0);switch(ge){case 172:case 173:let Rt=ee.typeToTypeNode(Te,c,$e,8,nse(d));if(_){let Ke=bQ(Rt,re);Ke&&(Rt=Ke.typeNode,FU(_,Ke.symbols))}S(me.createPropertyDeclaration(Ne,M?Qe(Ie):s.getName(),Ze&&T&2?me.createToken(58):void 0,Rt,void 0));break;case 178:case 179:{pe.assertIsDefined(V);let Ke=ee.typeToTypeNode(Te,c,$e,void 0,nse(d)),Pt=BP(V,M),_r=Pt.secondAccessor?[Pt.firstAccessor,Pt.secondAccessor]:[Pt.firstAccessor];if(_){let Gt=bQ(Ke,re);Gt&&(Ke=Gt.typeNode,FU(_,Gt.symbols))}for(let Gt of _r)if(Bg(Gt))S(me.createGetAccessorDeclaration(Ne,Qe(Ie),E,ht(Ke),mt(R,Ue,We)));else{pe.assertNode(Gt,Dg,"The counterpart to a getter should be a setter");let nt=L7(Gt),Dt=nt&&Ir(nt.name)?Vo(nt.name):void 0;S(me.createSetAccessorDeclaration(Ne,Qe(Ie),QQt(1,[Dt],[ht(Ke)],1,!1),mt(R,Ue,We)))}break}case 174:case 175:pe.assertIsDefined(V);let Lt=Te.isUnion()?er(Te.types,Ke=>Ke.getCallSignatures()):Te.getCallSignatures();if(!jt(Lt))break;if(V.length===1){pe.assert(Lt.length===1,"One declaration implies one signature");let Ke=Lt[0];Ye(Ue,Ke,Ne,Qe(Ie),mt(R,Ue,We));break}for(let Ke of Lt)Ke.declaration&&Ke.declaration.flags&33554432||Ye(Ue,Ke,Ne,Qe(Ie));if(!We)if(V.length>Lt.length){let Ke=ee.getSignatureFromDeclaration(V[V.length-1]);Ye(Ue,Ke,Ne,Qe(Ie),mt(R,Ue))}else pe.assert(V.length===Lt.length,"Declarations and signatures should match count"),S(sZs(ee,d,c,Lt,Qe(Ie),Ze&&!!(T&1),Ne,Ue,R));break}function Ye(Rt,Lt,Ke,Pt,_r){let Gt=Tit(175,d,Rt,Lt,_r,Pt,Ke,Ze&&!!(T&1),c,_);Gt&&S(Gt)}function Tt(){let Rt;return Ee&&(Rt=zr(Rt,me.createModifiersFromModifierFlags(Ee))),ot()&&(Rt=Ft(Rt,me.createToken(164))),Rt&&me.createNodeArray(Rt)}function ot(){return!!(d.program.getCompilerOptions().noImplicitOverride&&M&&wP(M))}function Qe(Rt){return Ir(Rt)&&Rt.escapedText==="constructor"?me.createComputedPropertyName(me.createStringLiteral(Vo(Rt),Ue===0)):JA(Rt,!1)}function mt(Rt,Lt,Ke){return Ke?void 0:JA(Rt,!1)||XQt(Lt)}function ht(Rt){return JA(Rt,!1)}function _t(Rt,Lt){if(iI(Rt)&262144){let Ke=Rt.links.nameType;if(Ke&&g2(Ke))return me.createIdentifier(Bc(A2(Ke)))}return JA(Il(Lt),!1)}}function Tit(s,c,g,d,h,_,S,R,T,W){let V=c.program,M=V.getTypeChecker(),ee=Mg(V.getCompilerOptions()),re=wo(T),ge=524545|(g===0?268435456:0),Ie=M.signatureToSignatureDeclaration(d,s,T,ge,8,nse(c));if(!Ie)return;let _e=re?void 0:Ie.typeParameters,Ee=Ie.parameters,Ne=re?void 0:JA(Ie.type);if(W){if(_e){let Ue=Tr(_e,$e=>{let Ye=$e.constraint,Tt=$e.default;if(Ye){let ot=bQ(Ye,ee);ot&&(Ye=ot.typeNode,FU(W,ot.symbols))}if(Tt){let ot=bQ(Tt,ee);ot&&(Tt=ot.typeNode,FU(W,ot.symbols))}return me.updateTypeParameterDeclaration($e,$e.modifiers,$e.name,Ye,Tt)});_e!==Ue&&(_e=gn(me.createNodeArray(Ue,_e.hasTrailingComma),_e))}let We=Tr(Ee,Ue=>{let $e=re?void 0:Ue.type;if($e){let Ye=bQ($e,ee);Ye&&($e=Ye.typeNode,FU(W,Ye.symbols))}return me.updateParameterDeclaration(Ue,Ue.modifiers,Ue.dotDotDotToken,Ue.name,re?void 0:Ue.questionToken,$e,Ue.initializer)});if(Ee!==We&&(Ee=gn(me.createNodeArray(We,Ee.hasTrailingComma),Ee)),Ne){let Ue=bQ(Ne,ee);Ue&&(Ne=Ue.typeNode,FU(W,Ue.symbols))}}let Te=R?me.createToken(58):void 0,Ze=Ie.asteriskToken;if(UA(Ie))return me.updateFunctionExpression(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body);if(lA(Ie))return me.updateArrowFunction(Ie,S,_e,Ee,Ne,Ie.equalsGreaterThanToken,h??Ie.body);if(uu(Ie))return me.updateMethodDeclaration(Ie,S,Ze,_??me.createIdentifier(""),Te,_e,Ee,Ne,h);if(ih(Ie))return me.updateFunctionDeclaration(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body)}function HQt(s,c,g,d,h,_,S){let R=_1(c.sourceFile,c.preferences),T=Mg(c.program.getCompilerOptions()),W=nse(c),V=c.program.getTypeChecker(),M=wo(S),{typeArguments:ee,arguments:re,parent:ge}=d,Ie=M?void 0:V.getContextualType(d),_e=At(re,Tt=>Ir(Tt)?Tt.text:jo(Tt)&&Ir(Tt.name)?Tt.name.text:void 0),Ee=M?[]:At(re,Tt=>V.getTypeAtLocation(Tt)),{argumentTypeNodes:Ne,argumentTypeParameters:Te}=nZs(V,g,Ee,S,T,1,8,W),Ze=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,We=Hd(ge)?me.createToken(42):void 0,Ue=M?void 0:tZs(V,Te,ee),$e=QQt(re.length,_e,Ne,void 0,M),Ye=M||Ie===void 0?void 0:V.typeToTypeNode(Ie,S,void 0,void 0,W);switch(s){case 175:return me.createMethodDeclaration(Ze,We,h,void 0,Ue,$e,Ye,XQt(R));case 174:return me.createMethodSignature(Ze,h,void 0,Ue,$e,Ye===void 0?me.createKeywordTypeNode(159):Ye);case 263:return pe.assert(typeof h=="string"||Ir(h),"Unexpected name"),me.createFunctionDeclaration(Ze,We,h,Ue,$e,Ye,MPe(Z.Function_not_implemented.message,R));default:pe.fail("Unexpected kind")}}function tZs(s,c,g){let d=new Set(c.map(_=>_[0])),h=new Map(c);if(g){let _=g.filter(R=>!c.some(T=>{var W;return s.getTypeAtLocation(R)===((W=T[1])==null?void 0:W.argumentType)})),S=d.size+_.length;for(let R=0;d.size{var S;return me.createTypeParameterDeclaration(void 0,_,(S=h.get(_))==null?void 0:S.constraint)})}function jun(s){return 84+s<=90?String.fromCharCode(84+s):`T${s}`}function Rit(s,c,g,d,h,_,S,R){let T=s.typeToTypeNode(g,d,_,S,R);if(T)return YQt(T,c,h)}function YQt(s,c,g){let d=bQ(s,g);return d&&(FU(c,d.symbols),s=d.typeNode),JA(s)}function rZs(s,c){var g;pe.assert(c.typeArguments);let d=c.typeArguments,h=c.target;for(let _=0;_T===d[W]))return _}return d.length}function zun(s,c,g,d,h,_){let S=s.typeToTypeNode(c,g,d,h,_);if(S){if(nh(S)){let R=c;if(R.typeArguments&&S.typeArguments){let T=rZs(s,R);if(T=d?me.createToken(58):void 0,h?void 0:g?.[R]||me.createKeywordTypeNode(159),void 0);_.push(V)}return _}function sZs(s,c,g,d,h,_,S,R,T){let W=d[0],V=d[0].minArgumentCount,M=!1;for(let Ie of d)V=Math.min(Ie.minArgumentCount,V),D0(Ie)&&(M=!0),Ie.parameters.length>=W.parameters.length&&(!D0(Ie)||D0(W))&&(W=Ie);let ee=W.parameters.length-(D0(W)?1:0),re=W.parameters.map(Ie=>Ie.name),ge=QQt(ee,re,void 0,V,!1);if(M){let Ie=me.createParameterDeclaration(void 0,me.createToken(26),re[ee]||"rest",ee>=V?me.createToken(58):void 0,me.createArrayTypeNode(me.createKeywordTypeNode(159)),void 0);ge.push(Ie)}return aZs(S,h,_,void 0,ge,oZs(d,s,c,g),R,T)}function oZs(s,c,g,d){if(B(s)){let h=c.getUnionType(At(s,c.getReturnTypeOfSignature));return c.typeToTypeNode(h,d,1,8,nse(g))}}function aZs(s,c,g,d,h,_,S,R){return me.createMethodDeclaration(s,void 0,c,g?me.createToken(58):void 0,d,h,_,R||XQt(S))}function XQt(s){return MPe(Z.Method_not_implemented.message,s)}function MPe(s,c){return me.createBlock([me.createThrowStatement(me.createNewExpression(me.createIdentifier("Error"),void 0,[me.createStringLiteral(s,c===0)]))],!0)}function JQt(s,c,g){let d=m7(c);if(!d)return;let h=tgn(d,"compilerOptions");if(h===void 0){s.insertNodeAtObjectStart(c,d,KQt("compilerOptions",me.createObjectLiteralExpression(g.map(([S,R])=>KQt(S,R)),!0)));return}let _=h.initializer;if(og(_))for(let[S,R]of g){let T=tgn(_,S);T===void 0?s.insertNodeAtObjectStart(c,_,KQt(S,R)):s.replaceNode(c,T.initializer,R)}}function UQt(s,c,g,d){JQt(s,c,[[g,d]])}function KQt(s,c){return me.createPropertyAssignment(me.createStringLiteral(s),c)}function tgn(s,c){return de(s.properties,g=>fm(g)&&!!g.name&&Zg(g.name)&&g.name.text===c)}function bQ(s,c){let g,d=Mr(s,h,uc);if(g&&d)return{typeNode:d,symbols:g};function h(_){if(ky(_)&&_.qualifier){let S=B0(_.qualifier);if(!S.symbol)return _s(_,h,void 0);let R=uPe(S.symbol,c),T=R!==S.text?rgn(_.qualifier,me.createIdentifier(R)):_.qualifier;g=Ft(g,S.symbol);let W=Ws(_.typeArguments,h,uc);return me.createTypeReferenceNode(T,W)}return _s(_,h,void 0)}}function rgn(s,c){return s.kind===80?c:me.createQualifiedName(rgn(s.left,c),s.right)}function FU(s,c){c.forEach(g=>s.addImportFromExportedSymbol(g,!0))}function jQt(s,c){let g=Rs(c),d=Jc(s,c.start);for(;d.end_.replaceNode(c,g,d));return sR(cgn,h,[Z.Replace_import_with_0,h[0].textChanges[0].newText])}xg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:_Zs});function _Zs(s){let c=s.sourceFile,g=Z.This_expression_is_not_callable.code===s.errorCode?214:215,d=ji(Jc(c,s.span.start),_=>_.kind===g);if(!d)return[];let h=d.expression;return ugn(s,h)}xg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:yZs});function yZs(s){let c=s.sourceFile,g=ji(Jc(c,s.span.start),d=>d.getStart()===s.span.start&&d.getEnd()===s.span.start+s.span.length);return g?ugn(s,g):[]}function ugn(s,c){let g=s.program.getTypeChecker().getTypeAtLocation(c);if(!(g.symbol&&bw(g.symbol)&&g.symbol.links.originatingImport))return[];let d=[],h=g.symbol.links.originatingImport;if(Up(h)||Or(d,CZs(s,h)),un(c)&&!(rh(c.parent)&&c.parent.name===c)){let _=s.sourceFile,S=xo.ChangeTracker.with(s,R=>R.replaceNode(_,c,me.createPropertyAccessExpression(c,"default"),{}));d.push(sR(cgn,S,Z.Use_synthetic_default_member))}return d}var zQt="strictClassInitialization",qQt="addMissingPropertyDefiniteAssignmentAssertions",$Qt="addMissingPropertyUndefinedType",eXt="addMissingPropertyInitializer",ggn=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];xg({errorCodes:ggn,getCodeActions:function(c){let g=Agn(c.sourceFile,c.span.start);if(!g)return;let d=[];return Ft(d,EZs(c,g)),Ft(d,bZs(c,g)),Ft(d,SZs(c,g)),d},fixIds:[qQt,$Qt,eXt],getAllCodeActions:s=>Qd(s,ggn,(c,g)=>{let d=Agn(g.file,g.start);if(d)switch(s.fixId){case qQt:dgn(c,g.file,d.prop);break;case $Qt:pgn(c,g.file,d);break;case eXt:let h=s.program.getTypeChecker(),_=Ign(h,d.prop);if(!_)return;fgn(c,g.file,d.prop,_);break;default:pe.fail(JSON.stringify(s.fixId))}})});function Agn(s,c){let g=Jc(s,c);if(Ir(g)&&pi(g.parent)){let d=kh(g.parent);if(d)return{type:d,prop:g.parent,isJs:wo(g.parent)}}}function bZs(s,c){if(c.isJs)return;let g=xo.ChangeTracker.with(s,d=>dgn(d,s.sourceFile,c.prop));return ug(zQt,g,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],qQt,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function dgn(s,c,g){Vy(g);let d=me.updatePropertyDeclaration(g,g.modifiers,g.name,me.createToken(54),g.type,g.initializer);s.replaceNode(c,g,d)}function EZs(s,c){let g=xo.ChangeTracker.with(s,d=>pgn(d,s.sourceFile,c));return ug(zQt,g,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],$Qt,Z.Add_undefined_type_to_all_uninitialized_properties)}function pgn(s,c,g){let d=me.createKeywordTypeNode(157),h=aS(g.type)?g.type.types.concat(d):[g.type,d],_=me.createUnionTypeNode(h);g.isJs?s.addJSDocTags(c,g.prop,[me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(_))]):s.replaceNode(c,g.type,_)}function SZs(s,c){if(c.isJs)return;let g=s.program.getTypeChecker(),d=Ign(g,c.prop);if(!d)return;let h=xo.ChangeTracker.with(s,_=>fgn(_,s.sourceFile,c.prop,d));return ug(zQt,h,[Z.Add_initializer_to_property_0,c.prop.name.getText()],eXt,Z.Add_initializers_to_all_uninitialized_properties)}function fgn(s,c,g,d){Vy(g);let h=me.updatePropertyDeclaration(g,g.modifiers,g.name,g.questionToken,g.type,d);s.replaceNode(c,g,h)}function Ign(s,c){return hgn(s,s.getTypeFromTypeNode(c.type))}function hgn(s,c){if(c.flags&512)return c===s.getFalseType()||c===s.getFalseType(!0)?me.createFalse():me.createTrue();if(c.isStringLiteral())return me.createStringLiteral(c.value);if(c.isNumberLiteral())return me.createNumericLiteral(c.value);if(c.flags&2048)return me.createBigIntLiteral(c.value);if(c.isUnion())return X(c.types,g=>hgn(s,g));if(c.isClass()){let g=AN(c.symbol);if(!g||Ga(g,64))return;let d=lN(g);return d&&d.parameters.length?void 0:me.createNewExpression(me.createIdentifier(c.symbol.name),void 0,void 0)}else if(s.isArrayLikeType(c))return me.createArrayLiteralExpression()}var tXt="requireInTs",mgn=[Z.require_call_may_be_converted_to_an_import.code];xg({errorCodes:mgn,getCodeActions(s){let c=_gn(s.sourceFile,s.program,s.span.start,s.preferences);if(!c)return;let g=xo.ChangeTracker.with(s,d=>Cgn(d,s.sourceFile,c));return[ug(tXt,g,Z.Convert_require_to_import,tXt,Z.Convert_all_require_to_import)]},fixIds:[tXt],getAllCodeActions:s=>Qd(s,mgn,(c,g)=>{let d=_gn(g.file,s.program,g.start,s.preferences);d&&Cgn(c,s.sourceFile,d)})});function Cgn(s,c,g){let{allowSyntheticDefaults:d,defaultImportName:h,namedImports:_,statement:S,moduleSpecifier:R}=g;s.replaceNode(c,S,h&&!d?me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(void 0,h,_),R,void 0))}function _gn(s,c,g,d){let{parent:h}=Jc(s,g);ay(h,!0)||pe.failBadSyntaxKind(h);let _=Ma(h.parent,nc),S=_1(s,d),R=Gs(_.name,Ir),T=Km(_.name)?vZs(_.name):void 0;if(R||T){let W=ma(h.arguments);return{allowSyntheticDefaults:JY(c.getCompilerOptions()),defaultImportName:R,namedImports:T,statement:Ma(_.parent.parent,Ch),moduleSpecifier:GP(W)?me.createStringLiteral(W.text,S===0):W}}}function vZs(s){let c=[];for(let g of s.elements){if(!Ir(g.name)||g.initializer)return;c.push(me.createImportSpecifier(!1,Gs(g.propertyName,Ir),g.name))}if(c.length)return me.createNamedImports(c)}var rXt="useDefaultImport",ygn=[Z.Import_may_be_converted_to_a_default_import.code];xg({errorCodes:ygn,getCodeActions(s){let{sourceFile:c,span:{start:g}}=s,d=bgn(c,g);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Egn(_,c,d,s.preferences));return[ug(rXt,h,Z.Convert_to_default_import,rXt,Z.Convert_all_to_default_imports)]},fixIds:[rXt],getAllCodeActions:s=>Qd(s,ygn,(c,g)=>{let d=bgn(g.file,g.start);d&&Egn(c,g.file,d,s.preferences)})});function bgn(s,c){let g=Jc(s,c);if(!Ir(g))return;let{parent:d}=g;if(km(d)&&ZF(d.moduleReference))return{importNode:d,name:g,moduleSpecifier:d.moduleReference.expression};if(Zx(d)&&Mf(d.parent.parent)){let h=d.parent.parent;return{importNode:h,name:g,moduleSpecifier:h.moduleSpecifier}}}function Egn(s,c,g,d){s.replaceNode(c,g.importNode,QP(g.name,void 0,g.moduleSpecifier,_1(c,d)))}var nXt="useBigintLiteral",Sgn=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];xg({errorCodes:Sgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>vgn(d,c.sourceFile,c.span));if(g.length>0)return[ug(nXt,g,Z.Convert_to_a_bigint_numeric_literal,nXt,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[nXt],getAllCodeActions:s=>Qd(s,Sgn,(c,g)=>vgn(c,g.file,g))});function vgn(s,c,g){let d=Gs(Jc(c,g.start),mC);if(!d)return;let h=d.getText(c)+"n";s.replaceNode(c,d,me.createBigIntLiteral(h))}var BZs="fixAddModuleReferTypeMissingTypeof",iXt=BZs,Bgn=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];xg({errorCodes:Bgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=wgn(g,d.start),_=xo.ChangeTracker.with(c,S=>Tgn(S,g,h));return[ug(iXt,_,Z.Add_missing_typeof,iXt,Z.Add_missing_typeof)]},fixIds:[iXt],getAllCodeActions:s=>Qd(s,Bgn,(c,g)=>Tgn(c,s.sourceFile,wgn(g.file,g.start)))});function wgn(s,c){let g=Jc(s,c);return pe.assert(g.kind===102,"This token should be an ImportKeyword"),pe.assert(g.parent.kind===206,"Token parent should be an ImportType"),g.parent}function Tgn(s,c,g){let d=me.updateImportTypeNode(g,g.argument,g.attributes,g.qualifier,g.typeArguments,!0);s.replaceNode(c,g,d)}var sXt="wrapJsxInFragment",Rgn=[Z.JSX_expressions_must_have_one_parent_element.code];xg({errorCodes:Rgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Ngn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,S=>Dgn(S,g,h));return[ug(sXt,_,Z.Wrap_in_JSX_fragment,sXt,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[sXt],getAllCodeActions:s=>Qd(s,Rgn,(c,g)=>{let d=Ngn(s.sourceFile,g.start);d&&Dgn(c,s.sourceFile,d)})});function Ngn(s,c){let h=Jc(s,c).parent.parent;if(!(!fo(h)&&(h=h.parent,!fo(h)))&&sf(h.operatorToken))return h}function Dgn(s,c,g){let d=wZs(g);d&&s.replaceNode(c,g,me.createJsxFragment(me.createJsxOpeningFragment(),d,me.createJsxJsxClosingFragment()))}function wZs(s){let c=[],g=s;for(;;)if(fo(g)&&sf(g.operatorToken)&&g.operatorToken.kind===28){if(c.push(g.left),BJ(g.right))return c.push(g.right),c;if(fo(g.right)){g=g.right;continue}else return}else return}var oXt="wrapDecoratorInParentheses",kgn=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];xg({errorCodes:kgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>xgn(d,c.sourceFile,c.span.start));return[ug(oXt,g,Z.Wrap_in_parentheses,oXt,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[oXt],getAllCodeActions:s=>Qd(s,kgn,(c,g)=>xgn(c,g.file,g.start))});function xgn(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createParenthesizedExpression(h.expression);s.replaceNode(c,h.expression,_)}var aXt="fixConvertToMappedObjectType",Ggn=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];xg({errorCodes:Ggn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Fgn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,R=>Zgn(R,g,h)),S=Vo(h.container.name);return[ug(aXt,_,[Z.Convert_0_to_mapped_object_type,S],aXt,[Z.Convert_0_to_mapped_object_type,S])]},fixIds:[aXt],getAllCodeActions:s=>Qd(s,Ggn,(c,g)=>{let d=Fgn(g.file,g.start);d&&Zgn(c,g.file,d)})});function Fgn(s,c){let g=Jc(s,c),d=Gs(g.parent.parent,w0);if(!d)return;let h=g_(d.parent)?d.parent:Gs(d.parent.parent,FB);if(h)return{indexSignature:d,container:h}}function TZs(s,c){return me.createTypeAliasDeclaration(s.modifiers,s.name,s.typeParameters,c)}function Zgn(s,c,{indexSignature:g,container:d}){let _=(g_(d)?d.members:d.type.members).filter(V=>!w0(V)),S=ma(g.parameters),R=me.createTypeParameterDeclaration(void 0,Ma(S.name,Ir),S.type),T=me.createMappedTypeNode(b3(g)?me.createModifier(148):void 0,R,void 0,g.questionToken,g.type,void 0),W=me.createIntersectionTypeNode([...R7(d),T,..._.length?[me.createTypeLiteralNode(_)]:E]);s.replaceNode(c,d,TZs(d,W))}var Lgn="removeAccidentalCallParentheses",RZs=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];xg({errorCodes:RZs,getCodeActions(s){let c=ji(Jc(s.sourceFile,s.span.start),Zl);if(!c)return;let g=xo.ChangeTracker.with(s,d=>{d.deleteRange(s.sourceFile,{pos:c.expression.end,end:c.end})});return[sR(Lgn,g,Z.Remove_parentheses)]},fixIds:[Lgn]});var cXt="removeUnnecessaryAwait",Vgn=[Z.await_has_no_effect_on_the_type_of_this_expression.code];xg({errorCodes:Vgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Pgn(d,c.sourceFile,c.span));if(g.length>0)return[ug(cXt,g,Z.Remove_unnecessary_await,cXt,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[cXt],getAllCodeActions:s=>Qd(s,Vgn,(c,g)=>Pgn(c,g.file,g))});function Pgn(s,c,g){let d=Gs(Jc(c,g.start),R=>R.kind===135),h=d&&Gs(d.parent,I1);if(!h)return;let _=h;if(gI(h.parent)){let R=aU(h.expression,!1);if(Ir(R)){let T=Gm(h.parent.pos,c);T&&T.kind!==105&&(_=h.parent)}}s.replaceNode(c,_,h.expression)}var Wgn=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],lXt="splitTypeOnlyImport";xg({errorCodes:Wgn,fixIds:[lXt],getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Mgn(d,Ogn(c.sourceFile,c.span),c));if(g.length)return[ug(lXt,g,Z.Split_into_two_separate_import_declarations,lXt,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:s=>Qd(s,Wgn,(c,g)=>{Mgn(c,Ogn(s.sourceFile,g),s)})});function Ogn(s,c){return ji(Jc(s,c.start),Mf)}function Mgn(s,c,g){if(!c)return;let d=pe.checkDefined(c.importClause);s.replaceNode(g.sourceFile,c,me.updateImportDeclaration(c,c.modifiers,me.updateImportClause(d,d.phaseModifier,d.name,void 0),c.moduleSpecifier,c.attributes)),s.insertNodeAfter(g.sourceFile,c,me.createImportDeclaration(void 0,me.updateImportClause(d,d.phaseModifier,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var uXt="fixConvertConstToLet",Hgn=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];xg({errorCodes:Hgn,getCodeActions:function(c){let{sourceFile:g,span:d,program:h}=c,_=Ygn(g,d.start,h);if(_===void 0)return;let S=xo.ChangeTracker.with(c,R=>Qgn(R,g,_.token));return[yYt(uXt,S,Z.Convert_const_to_let,uXt,Z.Convert_all_const_to_let)]},getAllCodeActions:s=>{let{program:c}=s,g=new Set;return Hz(xo.ChangeTracker.with(s,d=>{Yz(s,Hgn,h=>{let _=Ygn(h.file,h.start,c);if(_&&Zy(g,kg(_.symbol)))return Qgn(d,h.file,_.token)})}))},fixIds:[uXt]});function Ygn(s,c,g){var d;let _=g.getTypeChecker().getSymbolAtLocation(Jc(s,c));if(_===void 0)return;let S=Gs((d=_?.valueDeclaration)==null?void 0:d.parent,u_);if(S===void 0)return;let R=qd(S,87,s);if(R!==void 0)return{symbol:_,token:R}}function Qgn(s,c,g){s.replaceNode(c,g,me.createToken(121))}var gXt="fixExpectedComma",NZs=Z._0_expected.code,Xgn=[NZs];xg({errorCodes:Xgn,getCodeActions(s){let{sourceFile:c}=s,g=Jgn(c,s.span.start,s.errorCode);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Ugn(h,c,g));return[ug(gXt,d,[Z.Change_0_to_1,";",","],gXt,[Z.Change_0_to_1,";",","])]},fixIds:[gXt],getAllCodeActions:s=>Qd(s,Xgn,(c,g)=>{let d=Jgn(g.file,g.start,g.code);d&&Ugn(c,s.sourceFile,d)})});function Jgn(s,c,g){let d=Jc(s,c);return d.kind===27&&d.parent&&(og(d.parent)||OI(d.parent))?{node:d}:void 0}function Ugn(s,c,{node:g}){let d=me.createToken(28);s.replaceNode(c,g,d)}var DZs="addVoidToPromise",Kgn="addVoidToPromise",jgn=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];xg({errorCodes:jgn,fixIds:[Kgn],getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>zgn(g,s.sourceFile,s.span,s.program));if(c.length>0)return[ug(DZs,c,Z.Add_void_to_Promise_resolved_without_a_value,Kgn,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(s){return Qd(s,jgn,(c,g)=>zgn(c,g.file,g,s.program,new Set))}});function zgn(s,c,g,d,h){let _=Jc(c,g.start);if(!Ir(_)||!Zl(_.parent)||_.parent.expression!==_||_.parent.arguments.length!==0)return;let S=d.getTypeChecker(),R=S.getSymbolAtLocation(_),T=R?.valueDeclaration;if(!T||!Si(T)||!f2(T.parent.parent)||h?.has(T))return;h?.add(T);let W=kZs(T.parent.parent);if(jt(W)){let V=W[0],M=!aS(V)&&!fv(V)&&fv(me.createUnionTypeNode([V,me.createKeywordTypeNode(116)]).types[0]);M&&s.insertText(c,V.pos,"("),s.insertText(c,V.end,M?") | void":" | void")}else{let V=S.getResolvedSignature(_.parent),M=V?.parameters[0],ee=M&&S.getTypeOfSymbolAtLocation(M,T.parent.parent);wo(T)?(!ee||ee.flags&3)&&(s.insertText(c,T.parent.parent.end,")"),s.insertText(c,Yu(c.text,T.parent.parent.pos),"/** @type {Promise} */(")):(!ee||ee.flags&2)&&s.insertText(c,T.parent.parent.expression.end,"")}}function kZs(s){var c;if(wo(s)){if(gI(s.parent)){let g=(c=ov(s.parent))==null?void 0:c.typeExpression.type;if(g&&nh(g)&&Ir(g.typeName)&&Vo(g.typeName)==="Promise")return g.typeArguments}}else return s.typeArguments}var Jz={};o(Jz,{CompletionKind:()=>pAn,CompletionSource:()=>$gn,SortText:()=>c0,StringCompletions:()=>Oit,SymbolOriginInfoKind:()=>eAn,createCompletionDetails:()=>QPe,createCompletionDetailsForSymbol:()=>_Xt,getCompletionEntriesFromSymbols:()=>mXt,getCompletionEntryDetails:()=>lLs,getCompletionEntrySymbol:()=>gLs,getCompletionsAtPosition:()=>WZs,getDefaultCommitCharacters:()=>ZU,getPropertiesForObjectExpression:()=>Vit,moduleSpecifierResolutionCacheAttemptLimit:()=>qgn,moduleSpecifierResolutionLimit:()=>AXt});var AXt=100,qgn=1e3,c0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(s){return"z"+s},ObjectLiteralProperty(s,c){return`${s}\0${c}\0`},SortBelow(s){return s+"1"}},RN=[".",",",";"],Nit=[".",";"],$gn=(s=>(s.ThisProperty="ThisProperty/",s.ClassMemberSnippet="ClassMemberSnippet/",s.TypeOnlyAlias="TypeOnlyAlias/",s.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",s.SwitchCases="SwitchCases/",s.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",s))($gn||{}),eAn=(s=>(s[s.ThisType=1]="ThisType",s[s.SymbolMember=2]="SymbolMember",s[s.Export=4]="Export",s[s.Promise=8]="Promise",s[s.Nullable=16]="Nullable",s[s.ResolvedExport=32]="ResolvedExport",s[s.TypeOnlyAlias=64]="TypeOnlyAlias",s[s.ObjectLiteralMethod=128]="ObjectLiteralMethod",s[s.Ignore=256]="Ignore",s[s.ComputedPropertyName=512]="ComputedPropertyName",s[s.SymbolMemberNoExport=2]="SymbolMemberNoExport",s[s.SymbolMemberExport=6]="SymbolMemberExport",s))(eAn||{});function xZs(s){return!!(s.kind&1)}function GZs(s){return!!(s.kind&2)}function HPe(s){return!!(s&&s.kind&4)}function lpe(s){return!!(s&&s.kind===32)}function FZs(s){return HPe(s)||lpe(s)||dXt(s)}function ZZs(s){return(HPe(s)||lpe(s))&&!!s.isFromPackageJson}function LZs(s){return!!(s.kind&8)}function VZs(s){return!!(s.kind&16)}function tAn(s){return!!(s&&s.kind&64)}function rAn(s){return!!(s&&s.kind&128)}function PZs(s){return!!(s&&s.kind&256)}function dXt(s){return!!(s&&s.kind&512)}function nAn(s,c,g,d,h,_,S,R,T){var W,V,M,ee;let re=Fg(),ge=S||U7(d.getCompilerOptions())||((W=_.autoImportSpecifierExcludeRegexes)==null?void 0:W.length),Ie=!1,_e=0,Ee=0,Ne=0,Te=0,Ze=T({tryResolve:Ue,skippedAny:()=>Ie,resolvedAny:()=>Ee>0,resolvedBeyondLimit:()=>Ee>AXt}),We=Te?` (${(Ne/Te*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${s}: resolved ${Ee} module specifiers, plus ${_e} ambient and ${Ne} from cache${We}`),(M=c.log)==null||M.call(c,`${s}: response is ${Ie?"incomplete":"complete"}`),(ee=c.log)==null||ee.call(c,`${s}: ${Fg()-re}`),Ze;function Ue($e,Ye){if(Ye){let mt=g.getModuleSpecifierForBestExportInfo($e,h,R);return mt&&_e++,mt||"failed"}let Tt=ge||_.allowIncompleteCompletions&&Ee{let ge=Xt(T.entries,Ie=>{var _e;if(!Ie.hasAction||!Ie.source||!Ie.data||iAn(Ie.data))return Ie;if(!NAn(Ie.name,V))return;let{origin:Ee}=pe.checkDefined(IAn(Ie.name,Ie.data,d,h)),Ne=M.get(c.path,Ie.data.exportMapKey),Te=Ne&&re.tryResolve(Ne,!Xr(l2(Ee.moduleSymbol.name)));if(Te==="skipped")return Ie;if(!Te||Te==="failed"){(_e=h.log)==null||_e.call(h,`Unexpected failure resolving auto import for '${Ie.name}' from '${Ie.source}'`);return}let Ze={...Ee,kind:32,moduleSpecifier:Te.moduleSpecifier};return Ie.data=AAn(Ze),Ie.source=hXt(Ze),Ie.sourceDisplay=[gS(Ze.moduleSpecifier)],Ie});return re.skippedAny()||(T.isIncomplete=void 0),ge});return T.entries=ee,T.flags=(T.flags||0)|4,T.optionalReplacementSpan=cAn(W),T}function pXt(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:s,defaultCommitCharacters:ZU(!1)}}function sAn(s,c,g,d,h,_){let S=Jc(s,c);if(!u3(S)&&!tR(S))return[];let R=tR(S)?S:S.parent;if(!tR(R))return[];let T=R.parent;if(!bu(T))return[];let W=n0(s),V=h.includeCompletionsWithSnippetText||void 0,M=ct(R.tags,ee=>cS(ee)&&ee.getEnd()<=c);return Xt(T.parameters,ee=>{if(!vL(ee).length){if(Ir(ee.name)){let re={tabstop:1},ge=ee.name.text,Ie=O1e(ge,ee.initializer,ee.dotDotDotToken,W,!1,!1,g,d,h),_e=V?O1e(ge,ee.initializer,ee.dotDotDotToken,W,!1,!0,g,d,h,re):void 0;return _&&(Ie=Ie.slice(1),_e&&(_e=_e.slice(1))),{name:Ie,kind:"parameter",sortText:c0.LocationPriority,insertText:V?_e:void 0,isSnippet:V}}else if(ee.parent.parameters.indexOf(ee)===M){let re=`param${M}`,ge=oAn(re,ee.name,ee.initializer,ee.dotDotDotToken,W,!1,g,d,h),Ie=V?oAn(re,ee.name,ee.initializer,ee.dotDotDotToken,W,!0,g,d,h):void 0,_e=ge.join(uN(d)+"* "),Ee=Ie?.join(uN(d)+"* ");return _&&(_e=_e.slice(1),Ee&&(Ee=Ee.slice(1))),{name:_e,kind:"parameter",sortText:c0.LocationPriority,insertText:V?Ee:void 0,isSnippet:V}}}})}function oAn(s,c,g,d,h,_,S,R,T){if(!h)return[O1e(s,g,d,h,!1,_,S,R,T,{tabstop:1})];return W(s,c,g,d,{tabstop:1});function W(M,ee,re,ge,Ie){if(Km(ee)&&!ge){let Ee={tabstop:Ie.tabstop},Ne=O1e(M,re,ge,h,!0,_,S,R,T,Ee),Te=[];for(let Ze of ee.elements){let We=V(M,Ze,Ee);if(We)Te.push(...We);else{Te=void 0;break}}if(Te)return Ie.tabstop=Ee.tabstop,[Ne,...Te]}return[O1e(M,re,ge,h,!1,_,S,R,T,Ie)]}function V(M,ee,re){if(!ee.propertyName&&Ir(ee.name)||Ir(ee.name)){let ge=ee.propertyName?xY(ee.propertyName):ee.name.text;if(!ge)return;let Ie=`${M}.${ge}`;return[O1e(Ie,ee.initializer,ee.dotDotDotToken,h,!1,_,S,R,T,re)]}else if(ee.propertyName){let ge=xY(ee.propertyName);return ge&&W(`${M}.${ge}`,ee.name,ee.initializer,ee.dotDotDotToken,re)}}}function O1e(s,c,g,d,h,_,S,R,T,W){if(_&&pe.assertIsDefined(W),c&&(s=MZs(s,c)),_&&(s=xP(s)),d){let V="*";if(h)pe.assert(!g,"Cannot annotate a rest parameter with type 'Object'."),V="Object";else{if(c){let re=S.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ge=c.getSourceFile(),_e=_1(ge,T)===0?268435456:0,Ee=S.typeToTypeNode(re,ji(c,bu),_e);if(Ee){let Ne=_?xit({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target}):MP({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target});ti(Ee,1),V=Ne.printNode(4,Ee,ge)}}}_&&V==="*"&&(V=`\${${W.tabstop++}:${V}}`)}let M=!h&&g?"...":"",ee=_?`\${${W.tabstop++}}`:"";return`@param {${M}${V}} ${s} ${ee}`}else{let V=_?`\${${W.tabstop++}}`:"";return`@param ${s} ${V}`}}function MZs(s,c){let g=c.getText().trim();return g.includes(` +`)||g.length>80?`[${s}]`:`[${s}=${g}]`}function HZs(s){return{name:Vi(s),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords}}function YZs(s,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:s.slice(),defaultCommitCharacters:ZU(c)}}function aAn(s,c,g){return{kind:4,keywordCompletions:mAn(s,c),isNewIdentifierLocation:g}}function QZs(s){switch(s){case 156:return 8;default:pe.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function cAn(s){return s?.kind===80?Oy(s):void 0}function XZs(s,c,g,d,h,_,S,R,T,W){let{symbols:V,contextToken:M,completionKind:ee,isInSnippetScope:re,isNewIdentifierLocation:ge,location:Ie,propertyAccessToConvert:_e,keywordFilters:Ee,symbolToOriginInfoMap:Ne,recommendedCompletion:Te,isJsxInitializer:Ze,isTypeOnlyLocation:We,isJsxIdentifierExpected:Ue,isRightOfOpenTag:$e,isRightOfDotOrQuestionDot:Ye,importStatementCompletion:Tt,insideJsDocTagTypeExpression:ot,symbolToSortTextMap:Qe,hasUnresolvedAutoImports:mt,defaultCommitCharacters:ht}=_,_t=_.literals,Rt=g.getTypeChecker();if(Lne(s.scriptKind)===1){let nt=UZs(Ie,s);if(nt)return nt}let Lt=ji(M,Iie);if(Lt&&(Ks(M)||EP(M,Lt.expression))){let nt=pPe(Rt,Lt.parent.clauses);_t=_t.filter(Dt=>!nt.hasValue(Dt)),V.forEach((Dt,tr)=>{if(Dt.valueDeclaration&&LF(Dt.valueDeclaration)){let ur=Rt.getConstantValue(Dt.valueDeclaration);ur!==void 0&&nt.hasValue(ur)&&(Ne[tr]={kind:256})}})}let Ke=Ya(),Pt=lAn(s,d);if(Pt&&!ge&&(!V||V.length===0)&&Ee===0)return;let _r=mXt(V,Ke,void 0,M,Ie,T,s,c,g,Mg(d),h,ee,S,d,R,We,_e,Ue,Ze,Tt,Te,Ne,Qe,Ue,$e,W);if(Ee!==0)for(let nt of mAn(Ee,!ot&&n0(s)))(We&&Xde(Ta(nt.name))||!We&&DLs(nt.name)||!_r.has(nt.name))&&(_r.add(nt.name),Gc(Ke,nt,YPe,void 0,!0));for(let nt of hLs(M,T))_r.has(nt.name)||(_r.add(nt.name),Gc(Ke,nt,YPe,void 0,!0));for(let nt of _t){let Dt=jZs(s,S,nt);_r.add(Dt.name),Gc(Ke,Dt,YPe,void 0,!0)}Pt||KZs(s,Ie.pos,_r,Mg(d),Ke);let Gt;if(S.includeCompletionsWithInsertText&&M&&!$e&&!Ye&&(Gt=ji(M,cde))){let nt=uAn(Gt,s,S,d,c,g,R);nt&&Ke.push(nt.entry)}return{flags:_.flags,isGlobalCompletion:re,isIncomplete:S.allowIncompleteCompletions&&mt?!0:void 0,isMemberCompletion:JZs(ee),isNewIdentifierLocation:ge,optionalReplacementSpan:cAn(Ie),entries:Ke,defaultCommitCharacters:ht??ZU(ge)}}function lAn(s,c){return!n0(s)||!!rz(s,c)}function uAn(s,c,g,d,h,_,S){let R=s.clauses,T=_.getTypeChecker(),W=T.getTypeAtLocation(s.parent.expression);if(W&&W.isUnion()&&ue(W.types,V=>V.isLiteral())){let V=pPe(T,R),M=Mg(d),ee=_1(c,g),re=x0.createImportAdder(c,_,g,h),ge=[];for(let We of W.types)if(We.flags&1024){pe.assert(We.symbol,"An enum member type should have a symbol"),pe.assert(We.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let Ue=We.symbol.valueDeclaration&&T.getConstantValue(We.symbol.valueDeclaration);if(Ue!==void 0){if(V.hasValue(Ue))continue;V.addValue(Ue)}let $e=x0.typeToAutoImportableTypeNode(T,re,We,s,M);if(!$e)return;let Ye=Dit($e,M,ee);if(!Ye)return;ge.push(Ye)}else if(!V.hasValue(We.value))switch(typeof We.value){case"object":ge.push(We.value.negative?me.createPrefixUnaryExpression(41,me.createBigIntLiteral({negative:!1,base10Value:We.value.base10Value})):me.createBigIntLiteral(We.value));break;case"number":ge.push(We.value<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-We.value)):me.createNumericLiteral(We.value));break;case"string":ge.push(me.createStringLiteral(We.value,ee===0));break}if(ge.length===0)return;let Ie=At(ge,We=>me.createCaseClause(We,[])),_e=OF(h,S?.options),Ee=xit({removeComments:!0,module:d.module,moduleResolution:d.moduleResolution,target:d.target,newLine:S1e(_e)}),Ne=S?We=>Ee.printAndFormatNode(4,We,c,S):We=>Ee.printNode(4,We,c),Te=At(Ie,(We,Ue)=>g.includeCompletionsWithSnippetText?`${Ne(We)}$${Ue+1}`:`${Ne(We)}`).join(_e);return{entry:{name:`${Ee.printNode(4,Ie[0],c)} ...`,kind:"",sortText:c0.GlobalsOrKeywords,insertText:Te,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:g.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function Dit(s,c,g){switch(s.kind){case 184:let d=s.typeName;return kit(d,c,g);case 200:let h=Dit(s.objectType,c,g),_=Dit(s.indexType,c,g);return h&&_&&me.createElementAccessExpression(h,_);case 202:let S=s.literal;switch(S.kind){case 11:return me.createStringLiteral(S.text,g===0);case 9:return me.createNumericLiteral(S.text,S.numericLiteralFlags)}return;case 197:let R=Dit(s.type,c,g);return R&&(Ir(R)?R:me.createParenthesizedExpression(R));case 187:return kit(s.exprName,c,g);case 206:pe.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function kit(s,c,g){if(Ir(s))return s;let d=Bc(s.right.escapedText);return Zbe(d,c)?me.createPropertyAccessExpression(kit(s.left,c,g),d):me.createElementAccessExpression(kit(s.left,c,g),me.createStringLiteral(d,g===0))}function JZs(s){switch(s){case 0:case 3:case 2:return!0;default:return!1}}function UZs(s,c){let g=ji(s,d=>{switch(d.kind){case 288:return!0;case 44:case 32:case 80:case 212:return!1;default:return"quit"}});if(g){let d=!!qd(g,32,c),S=g.parent.openingElement.tagName.getText(c)+(d?"":">"),R=Oy(g.tagName),T={name:S,kind:"class",kindModifiers:void 0,sortText:c0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[T],defaultCommitCharacters:ZU(!1)}}}function KZs(s,c,g,d,h){eit(s).forEach((_,S)=>{if(_===c)return;let R=Bc(S);!g.has(R)&&Uh(R,d)&&(g.add(R),Gc(h,{name:R,kind:"warning",kindModifiers:"",sortText:c0.JavascriptIdentifiers,isFromUncheckedFile:!0,commitCharacters:[]},YPe))})}function fXt(s,c,g){return typeof g=="object"?kP(g)+"n":Xs(g)?qde(s,c,g):JSON.stringify(g)}function jZs(s,c,g){return{name:fXt(s,c,g),kind:"string",kindModifiers:"",sortText:c0.LocationPriority,commitCharacters:[]}}function zZs(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e){var Ye,Tt;let ot,Qe,mt=Grt(g,_),ht,_t,Rt=hXt(M),Lt,Ke,Pt,_r=T.getTypeChecker(),Gt=M&&VZs(M),nt=M&&GZs(M)||V;if(M&&xZs(M))ot=V?`this${Gt?"?.":""}[${IXt(S,Ne,W)}]`:`this${Gt?"?.":"."}${W}`;else if((nt||Gt)&&re){ot=nt?V?`[${IXt(S,Ne,W)}]`:`[${W}]`:W,(Gt||re.questionDotToken)&&(ot=`?.${ot}`);let Gr=qd(re,25,S)||qd(re,29,S);if(!Gr)return;let dt=Ac(W,re.name.text)?re.name.end:Gr.end;mt=wA(Gr.getStart(S),dt)}if(ge&&(ot===void 0&&(ot=W),ot=`{${ot}}`,typeof ge!="boolean"&&(mt=Oy(ge,S))),M&&LZs(M)&&re){ot===void 0&&(ot=W);let Gr=Gm(re.pos,S),dt="";Gr&&sPe(Gr.end,Gr.parent,S)&&(dt=";"),dt+=`(await ${re.expression.getText()})`,ot=V?`${dt}${ot}`:`${dt}${Gt?"?.":"."}${ot}`;let st=Gs(re.parent,I1)?re.parent:re.expression;mt=wA(st.getStart(S),re.end)}if(lpe(M)&&(Lt=[gS(M.moduleSpecifier)],Ie&&({insertText:ot,replacementSpan:mt}=sLs(W,Ie,M,_e,S,T,Ne),_t=Ne.includeCompletionsWithSnippetText?!0:void 0)),M?.kind===64&&(Ke=!0),Te===0&&d&&((Ye=Gm(d.pos,S,d))==null?void 0:Ye.kind)!==28&&(uu(d.parent.parent)||Bg(d.parent.parent)||Dg(d.parent.parent)||Lx(d.parent)||((Tt=ji(d.parent,fm))==null?void 0:Tt.getLastToken(S))===d||a0(d.parent)&&Ra(S,d.getEnd()).line!==Ra(S,_).line)&&(Rt="ObjectLiteralMemberWithComma/",Ke=!0),Ne.includeCompletionsWithClassMemberSnippets&&Ne.includeCompletionsWithInsertText&&Te===3&&$Zs(s,h,S)){let Gr,dt=gAn(R,T,Ee,Ne,W,s,h,_,d,Ze);if(dt)({insertText:ot,filterText:Qe,isSnippet:_t,importAdder:Gr}=dt),(Gr?.hasFixes()||dt.eraseRange)&&(Ke=!0,Rt="ClassMemberSnippet/");else return}if(M&&rAn(M)&&({insertText:ot,isSnippet:_t,labelDetails:Pt}=M,Ne.useLabelDetailsInCompletionEntries||(W=W+Pt.detail,Pt=void 0),Rt="ObjectLiteralMethodSnippet/",c=c0.SortBelow(c)),We&&!Ue&&Ne.includeCompletionsWithSnippetText&&Ne.jsxAttributeCompletionStyle&&Ne.jsxAttributeCompletionStyle!=="none"&&!(EN(h.parent)&&h.parent.initializer)){let Gr=Ne.jsxAttributeCompletionStyle==="braces",dt=_r.getTypeOfSymbolAtLocation(s,h);Ne.jsxAttributeCompletionStyle==="auto"&&!(dt.flags&528)&&!(dt.flags&1048576&&de(dt.types,pr=>!!(pr.flags&528)))&&(dt.flags&402653316||dt.flags&1048576&&ue(dt.types,pr=>!!(pr.flags&402686084||aMt(pr)))?(ot=`${xP(W)}=${qde(S,Ne,"$1")}`,_t=!0):Gr=!0),Gr&&(ot=`${xP(W)}={$1}`,_t=!0)}if(ot!==void 0&&!Ne.includeCompletionsWithInsertText)return;(HPe(M)||lpe(M))&&(ht=AAn(M),Ke=!Ie);let Dt=ji(h,Fne);if(Dt){let Gr=Mg(R.getCompilationSettings());if(!Uh(W,Gr))ot=IXt(S,Ne,W),Dt.kind===276&&(A_.setText(S.text),A_.resetTokenState(_),A_.scan()===130&&A_.scan()===80||(ot+=" as "+qZs(W,Gr)));else if(Dt.kind===276){let dt=Ta(W);dt&&(dt===135||kye(dt))&&(ot=`${W} as ${W}_`)}}let tr=i9.getSymbolKind(_r,s,h),ur=tr==="warning"||tr==="string"?[]:void 0;return{name:W,kind:tr,kindModifiers:i9.getSymbolModifiers(_r,s),sortText:c,source:Rt,hasAction:Ke?!0:void 0,isRecommended:oLs(s,ee,_r)||void 0,insertText:ot,filterText:Qe,replacementSpan:mt,sourceDisplay:Lt,labelDetails:Pt,isSnippet:_t,isPackageJsonImport:ZZs(M)||void 0,isImportStatementCompletion:!!Ie||void 0,data:ht,commitCharacters:ur,...$e?{symbol:s}:void 0}}function qZs(s,c){let g=!1,d="",h;for(let _=0;_=65536?2:1)h=s.codePointAt(_),h!==void 0&&(_===0?bd(h,c):s1(h,c))?(g&&(d+="_"),d+=String.fromCodePoint(h),g=!1):g=!0;return g&&(d+="_"),d||"_"}function $Zs(s,c,g){return wo(c)?!1:!!(s.flags&106500)&&(xa(c)||c.parent&&c.parent.parent&&PI(c.parent)&&c===c.parent.name&&c.parent.getLastToken(g)===c.parent.name&&xa(c.parent.parent)||c.parent&&_ie(c)&&xa(c.parent))}function gAn(s,c,g,d,h,_,S,R,T,W){let V=ji(S,xa);if(!V)return;let M,ee=h,re=h,ge=c.getTypeChecker(),Ie=S.getSourceFile(),_e=xit({removeComments:!0,module:g.module,moduleResolution:g.moduleResolution,target:g.target,omitTrailingSemicolon:!1,newLine:S1e(OF(s,W?.options))}),Ee=x0.createImportAdder(Ie,c,d,s),Ne;if(d.includeCompletionsWithSnippetText){M=!0;let Tt=me.createEmptyStatement();Ne=me.createBlock([Tt],!0),$be(Tt,{kind:0,order:0})}else Ne=me.createBlock([],!0);let Te=0,{modifiers:Ze,range:We,decorators:Ue}=eLs(T,Ie,R),$e=Ze&64&&V.modifierFlagsCache&64,Ye=[];if(x0.addNewNodeForMemberSymbol(_,V,Ie,{program:c,host:s},d,Ee,Tt=>{let ot=0;$e&&(ot|=64),PI(Tt)&&ge.getMemberOverrideModifierStatus(V,Tt,_)===1&&(ot|=16),Ye.length||(Te=Tt.modifierFlagsCache|ot),Tt=me.replaceModifiers(Tt,Te),Ye.push(Tt)},Ne,x0.PreserveOptionalFlags.Property,!!$e),Ye.length){let Tt=_.flags&8192,ot=Te|16|1;Tt?ot|=1024:ot|=136;let Qe=Ze&ot;if(Ze&~ot)return;if(Te&4&&Qe&1&&(Te&=-5),Qe!==0&&!(Qe&1)&&(Te&=-2),Te|=Qe,Ye=Ye.map(ht=>me.replaceModifiers(ht,Te)),Ue?.length){let ht=Ye[Ye.length-1];oQ(ht)&&(Ye[Ye.length-1]=me.replaceDecoratorsAndModifiers(ht,Ue.concat($R(ht)||[])))}let mt=131073;W?ee=_e.printAndFormatSnippetList(mt,me.createNodeArray(Ye),Ie,W):ee=_e.printSnippetList(mt,me.createNodeArray(Ye),Ie)}return{insertText:ee,filterText:re,isSnippet:M,importAdder:Ee,eraseRange:We}}function eLs(s,c,g){if(!s||Ra(c,g).line>Ra(c,s.getEnd()).line)return{modifiers:0};let d=0,h,_,S={pos:g,end:g};if(pi(s.parent)&&(_=tLs(s))){s.parent.modifiers&&(d|=Dw(s.parent.modifiers)&98303,h=s.parent.modifiers.filter(So)||[],S.pos=Math.min(...s.parent.modifiers.map(T=>T.getStart(c))));let R=HY(_);d&R||(d|=R,S.pos=Math.min(S.pos,s.getStart(c))),s.parent.name!==s&&(S.end=s.parent.name.getStart(c))}return{modifiers:d,decorators:h,range:S.posR.getSignaturesOfType(Te,0).length>0);if(Ne.length===1)re=Ne[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ie=R.typeToTypeNode(re,c,ee,void 0,x0.getNoopSymbolTrackerWithResolver({program:d,host:h}));if(!Ie||!x_(Ie))return;let _e;if(_.includeCompletionsWithSnippetText){let Ne=me.createEmptyStatement();_e=me.createBlock([Ne],!0),$be(Ne,{kind:0,order:0})}else _e=me.createBlock([],!0);let Ee=Ie.parameters.map(Ne=>me.createParameterDeclaration(void 0,Ne.dotDotDotToken,Ne.name,void 0,void 0,Ne.initializer));return me.createMethodDeclaration(void 0,void 0,W,void 0,void 0,Ee,void 0,_e)}default:return}}function xit(s){let c,g=xo.createWriter(uN(s)),d=MP(s,g),h={...g,write:ee=>_(ee,()=>g.write(ee)),nonEscapingWrite:g.write,writeLiteral:ee=>_(ee,()=>g.writeLiteral(ee)),writeStringLiteral:ee=>_(ee,()=>g.writeStringLiteral(ee)),writeSymbol:(ee,re)=>_(ee,()=>g.writeSymbol(ee,re)),writeParameter:ee=>_(ee,()=>g.writeParameter(ee)),writeComment:ee=>_(ee,()=>g.writeComment(ee)),writeProperty:ee=>_(ee,()=>g.writeProperty(ee))};return{printSnippetList:S,printAndFormatSnippetList:T,printNode:W,printAndFormatNode:M};function _(ee,re){let ge=xP(ee);if(ge!==ee){let Ie=g.getTextPos();re();let _e=g.getTextPos();c=Ft(c||(c=[]),{newText:ge,span:{start:Ie,length:_e-Ie}})}else re()}function S(ee,re,ge){let Ie=R(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function R(ee,re,ge){return c=void 0,h.clear(),d.writeList(ee,re,ge,h),h.getText()}function T(ee,re,ge,Ie){let _e={text:R(ee,re,ge),getLineAndCharacterOfPosition(Ze){return Ra(this,Ze)}},Ee=dPe(Ie,ge),Ne=er(re,Ze=>{let We=xo.assignPositionsToNode(Ze);return Im.formatNodeGivenIndentation(We,_e,ge.languageVariant,0,0,{...Ie,options:Ee})}),Te=c?bo(Nn(Ne,c),(Ze,We)=>bn(Ze.span,We.span)):Ne;return xo.applyChanges(_e.text,Te)}function W(ee,re,ge){let Ie=V(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function V(ee,re,ge){return c=void 0,h.clear(),d.writeNode(ee,re,ge,h),h.getText()}function M(ee,re,ge,Ie){let _e={text:V(ee,re,ge),getLineAndCharacterOfPosition(We){return Ra(this,We)}},Ee=dPe(Ie,ge),Ne=xo.assignPositionsToNode(re),Te=Im.formatNodeGivenIndentation(Ne,_e,ge.languageVariant,0,0,{...Ie,options:Ee}),Ze=c?bo(Nn(Te,c),(We,Ue)=>bn(We.span,Ue.span)):Te;return xo.applyChanges(_e.text,Ze)}}function AAn(s){let c=s.fileName?void 0:l2(s.moduleSymbol.name),g=s.isFromPackageJson?!0:void 0;return lpe(s)?{exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,ambientModuleName:c,fileName:s.fileName,isPackageJsonImport:g}:{exportName:s.exportName,exportMapKey:s.exportMapKey,fileName:s.fileName,ambientModuleName:s.fileName?void 0:l2(s.moduleSymbol.name),isPackageJsonImport:s.isFromPackageJson?!0:void 0}}function iLs(s,c,g){let d=s.exportName==="default",h=!!s.isPackageJsonImport;return iAn(s)?{kind:32,exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}:{kind:4,exportName:s.exportName,exportMapKey:s.exportMapKey,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}}function sLs(s,c,g,d,h,_,S){let R=c.replacementSpan,T=xP(qde(h,S,g.moduleSpecifier)),W=g.isDefaultExport?1:g.exportName==="export="?2:0,V=S.includeCompletionsWithSnippetText?"$1":"",M=x0.getImportKind(h,W,_,!0),ee=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${Vi(156)} `:" ",ge=ee?`${Vi(156)} `:"",Ie=d?";":"";switch(M){case 3:return{replacementSpan:R,insertText:`import${re}${xP(s)}${V} = require(${T})${Ie}`};case 1:return{replacementSpan:R,insertText:`import${re}${xP(s)}${V} from ${T}${Ie}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${xP(s)} from ${T}${Ie}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ge}${xP(s)}${V} } from ${T}${Ie}`}}}function IXt(s,c,g){return/^\d+$/.test(g)?g:qde(s,c,g)}function oLs(s,c,g){return s===c||!!(s.flags&1048576)&&g.getExportSymbolOfSymbol(s)===c}function hXt(s){if(HPe(s))return l2(s.moduleSymbol.name);if(lpe(s))return s.moduleSpecifier;if(s?.kind===1)return"ThisProperty/";if(s?.kind===64)return"TypeOnlyAlias/"}function mXt(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt=!1){let ot=Fg(),Qe=wLs(d,h),mt=_1e(S),ht=T.getTypeChecker(),_t=new Map;for(let Ke=0;Kepr.getSourceFile()===h.getSourceFile()));_t.set(nt,dt),Gc(c,Gr,YPe,void 0,!0)}return V("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(Fg()-ot)),{has:Ke=>_t.has(Ke),add:Ke=>_t.set(Ke,!0)};function Rt(Ke,Pt){var _r;let Gt=Ke.flags;if(h.parent&&Cf(h.parent))return!0;if(Qe&&Gs(Qe,nc)&&(Ke.valueDeclaration===Qe||Nu(Qe.name)&&Qe.name.elements.some(tr=>tr===Ke.valueDeclaration)))return!1;let nt=Ke.valueDeclaration??((_r=Ke.declarations)==null?void 0:_r[0]);if(Qe&&nt){if(Si(Qe)&&Si(nt)){let tr=Qe.parent.parameters;if(nt.pos>=Qe.pos&&nt.pos=Qe.pos&&nt.posfXt(g,S,Te)===h.name);return Ne!==void 0?{type:"literal",literal:Ne}:X(W,(Te,Ze)=>{let We=re[Ze],Ue=Fit(Te,Mg(R),We,ee,T.isJsxIdentifierExpected);return Ue&&Ue.name===h.name&&(h.source==="ClassMemberSnippet/"&&Te.flags&106500||h.source==="ObjectLiteralMethodSnippet/"&&Te.flags&8196||hXt(We)===h.source||h.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Te,location:M,origin:We,contextToken:ge,previousToken:Ie,isJsxInitializer:_e,isTypeOnlyLocation:Ee}:void 0})||{type:"none"}}function lLs(s,c,g,d,h,_,S,R,T){let W=s.getTypeChecker(),V=s.getCompilerOptions(),{name:M,source:ee,data:re}=h,{previousToken:ge,contextToken:Ie}=Git(d,g);if(Zz(g,d,ge))return Oit.getStringLiteralCompletionDetails(M,g,d,ge,s,_,T,R);let _e=dAn(s,c,g,d,h,_,R);switch(_e.type){case"request":{let{request:Ee}=_e;switch(Ee.kind){case 1:return n5.getJSDocTagNameCompletionDetails(M);case 2:return n5.getJSDocTagCompletionDetails(M);case 3:return n5.getJSDocParameterNameCompletionDetails(M);case 4:return jt(Ee.keywordCompletions,Ne=>Ne.name===M)?CXt(M,"keyword",5):void 0;default:return pe.assertNever(Ee)}}case"symbol":{let{symbol:Ee,location:Ne,contextToken:Te,origin:Ze,previousToken:We}=_e,{codeActions:Ue,sourceDisplay:$e}=uLs(M,Ne,Te,Ze,Ee,s,_,V,g,d,We,S,R,re,ee,T),Ye=dXt(Ze)?Ze.symbolName:Ee.name;return _Xt(Ee,Ye,W,g,Ne,T,Ue,$e)}case"literal":{let{literal:Ee}=_e;return CXt(fXt(g,R,Ee),"string",typeof Ee=="string"?8:7)}case"cases":{let Ee=uAn(Ie.parent,g,R,s.getCompilerOptions(),_,s,void 0);if(Ee?.importAdder.hasFixes()){let{entry:Ne,importAdder:Te}=Ee,Ze=xo.ChangeTracker.with({host:_,formatContext:S,preferences:R},Te.writeFixes);return{name:Ne.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Ze,description:IQ([Z.Includes_imports_of_types_referenced_by_0,M])}]}}return{name:M,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return hAn().some(Ee=>Ee.name===M)?CXt(M,"keyword",5):void 0;default:pe.assertNever(_e)}}function CXt(s,c,g){return QPe(s,"",c,[SE(s,g)])}function _Xt(s,c,g,d,h,_,S,R){let{displayParts:T,documentation:W,symbolKind:V,tags:M}=g.runWithCancellationToken(_,ee=>i9.getSymbolDisplayPartsDocumentationAndSymbolKind(ee,s,d,h,h,7));return QPe(c,i9.getSymbolModifiers(g,s),V,T,W,M,S,R)}function QPe(s,c,g,d,h,_,S,R){return{name:s,kindModifiers:c,kind:g,displayParts:d,documentation:h,tags:_,codeActions:S,source:R,sourceDisplay:R}}function uLs(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie){if(re?.moduleSpecifier&&V&&vAn(g||V,T).replacementSpan)return{codeActions:void 0,sourceDisplay:[gS(re.moduleSpecifier)]};if(ge==="ClassMemberSnippet/"){let{importAdder:Ue,eraseRange:$e}=gAn(S,_,R,ee,s,h,c,W,g,M);if(Ue?.hasFixes()||$e)return{sourceDisplay:void 0,codeActions:[{changes:xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},Tt=>{Ue&&Ue.writeFixes(Tt),$e&&Tt.deleteRange(T,$e)}),description:Ue?.hasFixes()?IQ([Z.Includes_imports_of_types_referenced_by_0,s]):IQ([Z.Update_modifiers_of_0,s])}]}}if(tAn(d)){let Ue=x0.getPromoteTypeOnlyCompletionAction(T,d.declaration.name,_,S,M,ee);return pe.assertIsDefined(Ue,"Expected to have a code action for promoting type-only alias"),{codeActions:[Ue],sourceDisplay:void 0}}if(ge==="ObjectLiteralMemberWithComma/"&&g){let Ue=xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},$e=>$e.insertText(T,g.end,","));if(Ue)return{sourceDisplay:void 0,codeActions:[{changes:Ue,description:IQ([Z.Add_missing_comma_for_object_member_completion_0,s])}]}}if(!d||!(HPe(d)||lpe(d)))return{codeActions:void 0,sourceDisplay:void 0};let _e=d.isFromPackageJson?S.getPackageJsonAutoImportProvider().getTypeChecker():_.getTypeChecker(),{moduleSymbol:Ee}=d,Ne=_e.getMergedSymbol(FC(h.exportSymbol||h,_e)),Te=g?.kind===30&&eI(g.parent),{moduleSpecifier:Ze,codeAction:We}=x0.getImportCompletionAction(Ne,Ee,re?.exportMapKey,T,s,Te,S,_,M,V&&Ir(V)?V.getStart(T):W,ee,Ie);return pe.assert(!re?.moduleSpecifier||Ze===re.moduleSpecifier),{sourceDisplay:[gS(Ze)],codeActions:[We]}}function gLs(s,c,g,d,h,_,S){let R=dAn(s,c,g,d,h,_,S);return R.type==="symbol"?R.symbol:void 0}var pAn=(s=>(s[s.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",s[s.Global=1]="Global",s[s.PropertyAccess=2]="PropertyAccess",s[s.MemberLike=3]="MemberLike",s[s.String=4]="String",s[s.None=5]="None",s))(pAn||{});function ALs(s,c,g){return X(c&&(c.isUnion()?c.types:[c]),d=>{let h=d&&d.symbol;return h&&h.flags&424&&!ube(h)?yXt(h,s,g):void 0})}function dLs(s,c,g,d){let{parent:h}=s;switch(s.kind){case 80:return nPe(s,d);case 64:switch(h.kind){case 261:return d.getContextualType(h.initializer);case 227:return d.getTypeAtLocation(h.left);case 292:return d.getContextualTypeForJsxAttribute(h);default:return}case 105:return d.getContextualType(h);case 84:let _=Gs(h,Iie);return _?rnt(_,d):void 0;case 19:return fie(h)&&!bN(h.parent)&&!P3(h.parent)?d.getContextualTypeForJsxAttribute(h.parent):void 0;default:let S=J1e.getArgumentInfoForCompletions(s,c,g,d);return S?d.getContextualTypeForArgumentAtIndex(S.invocation,S.argumentIndex):iPe(s.kind)&&fo(h)&&iPe(h.operatorToken.kind)?d.getTypeAtLocation(h.left):d.getContextualType(s,4)||d.getContextualType(s)}}function yXt(s,c,g){let d=g.getAccessibleSymbolChain(s,c,-1,!1);return d?ma(d):s.parent&&(pLs(s.parent)?s:yXt(s.parent,c,g))}function pLs(s){var c;return!!((c=s.declarations)!=null&&c.some(g=>g.kind===308))}function fAn(s,c,g,d,h,_,S,R,T,W){let V=s.getTypeChecker(),M=lAn(g,d),ee=Fg(),re=Jc(g,h);c("getCompletionData: Get current token: "+(Fg()-ee)),ee=Fg();let ge=$L(g,h,re);c("getCompletionData: Is inside comment: "+(Fg()-ee));let Ie=!1,_e=!1,Ee=!1;if(ge){if(iMt(g,h)){if(g.text.charCodeAt(h-1)===64)return{kind:1};{let $r=PB(h,g);if(!/[^*|\s(/)]/.test(g.text.substring($r,h)))return{kind:2}}}let Ot=mLs(re,h);if(Ot){if(Ot.tagName.pos<=h&&h<=Ot.tagName.end)return{kind:1};if(SN(Ot))_e=!0;else{let $r=Zi(Ot);if($r&&(re=Jc(g,h),(!re||!HT(re)&&(re.parent.kind!==349||re.parent.name!==re))&&(Ie=Hn($r))),!Ie&&cS(Ot)&&(sf(Ot.name)||Ot.name.pos<=h&&h<=Ot.name.end))return{kind:3,tag:Ot}}}if(!Ie&&!_e){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}ee=Fg();let Ne=!Ie&&!_e&&n0(g),Te=Git(h,g),Ze=Te.previousToken,We=Te.contextToken;c("getCompletionData: Get previous token: "+(Fg()-ee));let Ue=re,$e,Ye=!1,Tt=!1,ot=!1,Qe=!1,mt=!1,ht=!1,_t,Rt=Lb(g,h),Lt=0,Ke=!1,Pt=0,_r;if(We){let Ot=vAn(We,g);if(Ot.keywordCompletion){if(Ot.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[HZs(Ot.keywordCompletion)],isNewIdentifierLocation:Ot.isNewIdentifierLocation};Lt=QZs(Ot.keywordCompletion)}if(Ot.replacementSpan&&_.includeCompletionsForImportStatements&&_.includeCompletionsWithInsertText&&(Pt|=2,_t=Ot,Ke=Ot.isNewIdentifierLocation),!Ot.replacementSpan&&Qu(We))return c("Returning an empty list because completion was requested in an invalid position."),Lt?aAn(Lt,Ne,Cs().isNewIdentifierLocation):void 0;let $r=We.parent;if(We.kind===25||We.kind===29)switch(Ye=We.kind===25,Tt=We.kind===29,$r.kind){case 212:$e=$r,Ue=$e.expression;let ri=oU($e);if(sf(ri)||(Zl(Ue)||bu(Ue))&&Ue.end===We.pos&&Ue.getChildCount(g)&&Ei(Ue.getChildren(g)).kind!==22)return;break;case 167:Ue=$r.left;break;case 268:Ue=$r.name;break;case 206:Ue=$r;break;case 237:Ue=$r.getFirstToken(g),pe.assert(Ue.kind===102||Ue.kind===105);break;default:return}else if(!_t){if($r&&$r.kind===212&&(We=$r,$r=$r.parent),re.parent===Rt)switch(re.kind){case 32:(re.parent.kind===285||re.parent.kind===287)&&(Rt=re);break;case 44:re.parent.kind===286&&(Rt=re);break}switch($r.kind){case 288:We.kind===44&&(Qe=!0,Rt=We);break;case 227:if(!SAn($r))break;case 286:case 285:case 287:ht=!0,We.kind===30&&(ot=!0,Rt=We);break;case 295:case 294:(Ze.kind===20||Ze.kind===80&&Ze.parent.kind===292)&&(ht=!0);break;case 292:if($r.initializer===Ze&&Ze.endz3(Ot?R.getPackageJsonAutoImportProvider():s,R));if(Ye||Tt)Ns();else if(ot)tr=V.getJsxIntrinsicTagNamesAt(Rt),pe.assertEachIsDefined(tr,"getJsxIntrinsicTagNames() should all be defined"),Ic(),nt=1,Lt=0;else if(Qe){let Ot=We.parent.parent.openingElement.tagName,$r=V.getSymbolAtLocation(Ot);$r&&(tr=[$r]),nt=1,Lt=0}else if(!Ic())return Lt?aAn(Lt,Ne,Ke):void 0;c("getCompletionData: Semantic work: "+(Fg()-Gt));let zt=Ze&&dLs(Ze,h,g,V),Br=!Gs(Ze,mA)&&!ht?Xt(zt&&(zt.isUnion()?zt.types:[zt]),Ot=>Ot.isLiteral()&&!(Ot.flags&1024)?Ot.value:void 0):[],mn=Ze&&zt&&ALs(Ze,zt,V);return{kind:0,symbols:tr,completionKind:nt,isInSnippetScope:Ee,propertyAccessToConvert:$e,isNewIdentifierLocation:Ke,location:Rt,keywordFilters:Lt,literals:Br,symbolToOriginInfoMap:Gr,recommendedCompletion:mn,previousToken:Ze,contextToken:We,isJsxInitializer:mt,insideJsDocTagTypeExpression:Ie,symbolToSortTextMap:dt,isTypeOnlyLocation:st,isJsxIdentifierExpected:ht,isRightOfOpenTag:ot,isRightOfDotOrQuestionDot:Ye||Tt,importStatementCompletion:_t,hasUnresolvedAutoImports:Dt,flags:Pt,defaultCommitCharacters:_r};function jn(Ot){switch(Ot.kind){case 342:case 349:case 343:case 345:case 347:case 350:case 351:return!0;case 346:return!!Ot.constraint;default:return!1}}function Zi(Ot){if(jn(Ot)){let $r=ZB(Ot)?Ot.constraint:Ot.typeExpression;return $r&&$r.kind===310?$r:void 0}if(bz(Ot)||n9e(Ot))return Ot.class}function Ns(){nt=2;let Ot=ky(Ue),$r=Ot&&!Ue.isTypeOf||ww(Ue.parent)||u1e(We,g,V),ri=GVe(Ue);if(fC(Ue)||Ot||jo(Ue)){let ao=xh(Ue.parent);ao&&(Ke=!0,_r=[]);let Bs=V.getSymbolAtLocation(Ue);if(Bs&&(Bs=FC(Bs,V),Bs.flags&1920)){let Ys=V.getExportsOfModule(Bs);pe.assertEachIsDefined(Ys,"getExportsOfModule() should all be defined");let tn=ci=>V.isValidPropertyAccess(Ot?Ue:Ue.parent,ci.name),wn=ci=>EXt(ci,V),Mn=ao?ci=>{var es;return!!(ci.flags&1920)&&!((es=ci.declarations)!=null&&es.every(Wi=>Wi.parent===Ue.parent))}:ri?ci=>wn(ci)||tn(ci):$r||Ie?wn:tn;for(let ci of Ys)Mn(ci)&&tr.push(ci);if(!$r&&!Ie&&Bs.declarations&&Bs.declarations.some(ci=>ci.kind!==308&&ci.kind!==268&&ci.kind!==267)){let ci=V.getTypeOfSymbolAtLocation(Bs,Ue).getNonOptionalType(),es=!1;if(ci.isNullableType()){let Wi=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Wi||Tt)&&(ci=ci.getNonNullableType(),Wi&&(es=!0))}An(ci,!!(Ue.flags&65536),es)}return}}if(!$r||OY(Ue)){V.tryGetThisTypeAt(Ue,!1);let ao=V.getTypeAtLocation(Ue).getNonOptionalType();if($r)An(ao.getNonNullableType(),!1,!1);else{let Bs=!1;if(ao.isNullableType()){let Ys=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Ys||Tt)&&(ao=ao.getNonNullableType(),Ys&&(Bs=!0))}An(ao,!!(Ue.flags&65536),Bs)}}}function An(Ot,$r,ri){Ot.getStringIndexType()&&(Ke=!0,_r=[]),Tt&&jt(Ot.getCallSignatures())&&(Ke=!0,_r??(_r=RN));let ao=Ue.kind===206?Ue:Ue.parent;if(M)for(let Bs of Ot.getApparentProperties())V.isValidPropertyAccessForCompletions(ao,Ot,Bs)&&si(Bs,!1,ri);else tr.push(...Me(Pit(Ot,V),Bs=>V.isValidPropertyAccessForCompletions(ao,Ot,Bs)));if($r&&_.includeCompletionsWithInsertText){let Bs=V.getPromisedTypeOfPromise(Ot);if(Bs)for(let Ys of Bs.getApparentProperties())V.isValidPropertyAccessForCompletions(ao,Bs,Ys)&&si(Ys,!0,ri)}}function si(Ot,$r,ri){var ao;let Bs=X(Ot.declarations,Mn=>Gs(Il(Mn),Un));if(Bs){let Mn=ks(Bs.expression),ci=Mn&&V.getSymbolAtLocation(Mn),es=ci&&yXt(ci,We,V),Wi=es&&kg(es);if(Wi&&Zy(pr,Wi)){let Vn=tr.length;tr.push(es),dt[kg(es)]=c0.GlobalsOrKeywords;let Ui=es.parent;if(!Ui||!WD(Ui)||V.tryGetMemberInModuleExportsAndProperties(es.name,Ui)!==es)Gr[Vn]={kind:wn(2)};else{let gs=Xr(l2(Ui.name))?(ao=FJ(Ui))==null?void 0:ao.fileName:void 0,{moduleSpecifier:fs}=(ur||(ur=x0.createImportSpecifierResolver(g,s,R,_))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:gs,isFromPackageJson:!1,moduleSymbol:Ui,symbol:es,targetFlags:FC(es,V).flags}],h,JL(Rt))||{};if(fs){let bi={kind:wn(6),moduleSymbol:Ui,isDefaultExport:!1,symbolName:es.name,exportName:es.name,fileName:gs,moduleSpecifier:fs};Gr[Vn]=bi}}}else if(_.includeCompletionsWithInsertText){if(Wi&&pr.has(Wi))return;tn(Ot),Ys(Ot),tr.push(Ot)}}else tn(Ot),Ys(Ot),tr.push(Ot);function Ys(Mn){SLs(Mn)&&(dt[kg(Mn)]=c0.LocalDeclarationPriority)}function tn(Mn){_.includeCompletionsWithInsertText&&($r&&Zy(pr,kg(Mn))?Gr[tr.length]={kind:wn(8)}:ri&&(Gr[tr.length]={kind:16}))}function wn(Mn){return ri?Mn|16:Mn}}function ks(Ot){return Ir(Ot)?Ot:jo(Ot)?ks(Ot.expression):void 0}function Ic(){return(Pr()||Pn()||ya()||pt()||on()||it()||su()||nr()||Zn()||(Gl(),1))===1}function su(){return Kr(We)?(nt=5,Ke=!0,Lt=4,1):0}function Zn(){let Ot=hr(We),$r=Ot&&V.getContextualType(Ot.attributes);if(!$r)return 0;let ri=Ot&&V.getContextualType(Ot.attributes,4);return tr=Nn(tr,In(Vit($r,ri,Ot.attributes,V),Ot.attributes.properties)),Bt(),nt=3,Ke=!1,1}function ya(){return _t?(Ke=!0,Oi(),1):0}function Gl(){Lt=Dn(We)?5:1,nt=1,{isNewIdentifierLocation:Ke,defaultCommitCharacters:_r}=Cs(),Ze!==We&&pe.assert(!!Ze,"Expected 'contextToken' to be defined when different from 'previousToken'.");let Ot=Ze!==We?Ze.getStart():h,$r=tl(We,Ot,g)||g;Ee=Wo($r);let ri=(st?0:111551)|788968|1920|2097152,ao=Ze&&!JL(Ze);tr=Nn(tr,V.getSymbolsInScope($r,ri)),pe.assertEachIsDefined(tr,"getSymbolsInScope() should all be defined");for(let Bs=0;Bstn.getSourceFile()===g)&&(dt[kg(Ys)]=c0.GlobalsOrKeywords),ao&&!(Ys.flags&111551)){let tn=Ys.declarations&&de(Ys.declarations,rN);if(tn){let wn={kind:64,declaration:tn};Gr[Bs]=wn}}}if(_.includeCompletionsWithInsertText&&$r.kind!==308){let Bs=V.tryGetThisTypeAt($r,!1,xa($r.parent)?$r:void 0);if(Bs&&!ELs(Bs,g,V))for(let Ys of Pit(Bs,V))Gr[tr.length]={kind:1},tr.push(Ys),dt[kg(Ys)]=c0.SuggestedClassMembers}Oi(),st&&(Lt=We&&Ed(We.parent)?6:7)}function ba(){var Ot;return _t?!0:_.includeCompletionsForModuleExports?g.externalModuleIndicator||g.commonJsModuleIndicator||Prt(s.getCompilerOptions())?!0:((Ot=s.getSymlinkCache)==null?void 0:Ot.call(s).hasAnySymlinks())||!!s.getCompilerOptions().paths||uMt(s):!1}function Wo(Ot){switch(Ot.kind){case 308:case 229:case 295:case 242:return!0;default:return Lc(Ot)}}function hc(){return Ie||_e||!!_t&&nN(Rt.parent)||!yr(We)&&(u1e(We,g,V)||ww(Rt)||hn(We))}function yr(Ot){return Ot&&(Ot.kind===114&&(Ot.parent.kind===187||CN(Ot.parent))||Ot.kind===131&&Ot.parent.kind===183)}function hn(Ot){if(Ot){let $r=Ot.parent.kind;switch(Ot.kind){case 59:return $r===173||$r===172||$r===170||$r===261||lP($r);case 64:return $r===266||$r===169;case 130:return $r===235;case 30:return $r===184||$r===217;case 96:return $r===169;case 152:return $r===239}}return!1}function Oi(){var Ot,$r;if(!ba()||(pe.assert(!S?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),S&&!S.source))return;Pt|=1;let ao=Ze===We&&_t?"":Ze&&Ir(Ze)?Ze.text.toLowerCase():"",Bs=(Ot=R.getModuleSpecifierCache)==null?void 0:Ot.call(R),Ys=v1e(g,R,s,_,W),tn=($r=R.getPackageJsonAutoImportProvider)==null?void 0:$r.call(R),wn=S?void 0:zie(g,_,R);nAn("collectAutoImports",R,ur||(ur=x0.createImportSpecifierResolver(g,s,R,_)),s,h,_,!!_t,JL(Rt),ci=>{Ys.search(g.path,ot,(es,Wi)=>{if(!Uh(es,Mg(R.getCompilationSettings()))||!S&&WY(es)||!st&&!_t&&!(Wi&111551)||st&&!(Wi&790504))return!1;let Vn=es.charCodeAt(0);return ot&&(Vn<65||Vn>90)?!1:S?!0:NAn(es,ao)},(es,Wi,Vn,Ui)=>{if(S&&!jt(es,Ag=>S.source===l2(Ag.moduleSymbol.name))||(es=Me(es,Mn),!es.length))return;let gs=ci.tryResolve(es,Vn)||{};if(gs==="failed")return;let fs=es[0],bi;gs!=="skipped"&&({exportInfo:fs=es[0],moduleSpecifier:bi}=gs);let mc=fs.exportKind===1,gg=mc&&W7(pe.checkDefined(fs.symbol))||pe.checkDefined(fs.symbol);lo(gg,{kind:bi?32:4,moduleSpecifier:bi,symbolName:Wi,exportMapKey:Ui,exportName:fs.exportKind===2?"export=":pe.checkDefined(fs.symbol).name,fileName:fs.moduleFileName,isDefaultExport:mc,moduleSymbol:fs.moduleSymbol,isFromPackageJson:fs.isFromPackageJson})}),Dt=ci.skippedAny(),Pt|=ci.resolvedAny()?8:0,Pt|=ci.resolvedBeyondLimit()?16:0});function Mn(ci){return fnt(ci.isFromPackageJson?tn:s,g,Gs(ci.moduleSymbol.valueDeclaration,ll),ci.moduleSymbol,_,wn,ir(ci.isFromPackageJson),Bs)}}function lo(Ot,$r){let ri=kg(Ot);dt[ri]!==c0.GlobalsOrKeywords&&(Gr[tr.length]=$r,dt[ri]=_t?c0.LocationPriority:c0.AutoImportSuggestions,tr.push(Ot))}function pa(Ot,$r){wo(Rt)||Ot.forEach(ri=>{if(!Oa(ri))return;let ao=Fit(ri,Mg(d),void 0,0,!1);if(!ao)return;let{name:Bs}=ao,Ys=rLs(ri,Bs,$r,s,R,d,_,T);if(!Ys)return;let tn={kind:128,...Ys};Pt|=32,Gr[tr.length]=tn,tr.push(ri)})}function Oa(Ot){return!!(Ot.flags&8196)}function tl(Ot,$r,ri){let ao=Ot;for(;ao&&!Srt(ao,$r,ri);)ao=ao.parent;return ao}function Qu(Ot){let $r=Fg(),ri=Tu(Ot)||Ni(Ot)||En(Ot)||Tg(Ot)||eQ(Ot);return c("getCompletionsAtPosition: isCompletionListBlocker: "+(Fg()-$r)),ri}function Tg(Ot){if(Ot.kind===12)return!0;if(Ot.kind===32&&Ot.parent){if(Rt===Ot.parent&&(Rt.kind===287||Rt.kind===286))return!1;if(Ot.parent.kind===287)return Rt.parent.kind!==287;if(Ot.parent.kind===288||Ot.parent.kind===286)return!!Ot.parent.parent&&Ot.parent.parent.kind===285}return!1}function Cs(){if(We){let Ot=We.parent.kind,$r=Lit(We);switch($r){case 28:switch(Ot){case 214:case 215:{let ri=We.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:Nit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!0}}case 227:return{defaultCommitCharacters:Nit,isNewIdentifierLocation:!0};case 177:case 185:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 210:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 21:switch(Ot){case 214:case 215:{let ri=We.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:Nit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!0}}case 218:return{defaultCommitCharacters:Nit,isNewIdentifierLocation:!0};case 177:case 197:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 23:switch(Ot){case 210:case 182:case 190:case 168:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 144:case 145:case 102:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 25:switch(Ot){case 268:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 19:switch(Ot){case 264:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 64:switch(Ot){case 261:case 227:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 16:return{defaultCommitCharacters:RN,isNewIdentifierLocation:Ot===229};case 17:return{defaultCommitCharacters:RN,isNewIdentifierLocation:Ot===240};case 134:return Ot===175||Ot===305?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!1};case 42:return Ot===175?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}if(XPe($r))return{defaultCommitCharacters:[],isNewIdentifierLocation:!0}}return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}function Tu(Ot){return(rEe(Ot)||Sre(Ot))&&(c1e(Ot,h)||h===Ot.end&&(!!Ot.isUnterminated||rEe(Ot)))}function Pr(){let Ot=yLs(We);if(!Ot)return 0;let ri=(mf(Ot.parent)?Ot.parent:void 0)||Ot,ao=EAn(ri,V);if(!ao)return 0;let Bs=V.getTypeFromTypeNode(ri),Ys=Pit(ao,V),tn=Pit(Bs,V),wn=new Set;return tn.forEach(Mn=>wn.add(Mn.escapedName)),tr=Nn(tr,Me(Ys,Mn=>!wn.has(Mn.escapedName))),nt=0,Ke=!0,1}function Pn(){if(We?.kind===26)return 0;let Ot=tr.length,$r=fLs(We,h,g);if(!$r)return 0;nt=0;let ri,ao;if($r.kind===211){let Bs=vLs($r,V);if(Bs===void 0)return $r.flags&67108864?2:0;let Ys=V.getContextualType($r,4),tn=(Ys||Bs).getStringIndexType(),wn=(Ys||Bs).getNumberIndexType();if(Ke=!!tn||!!wn,ri=Vit(Bs,Ys,$r,V),ao=$r.properties,ri.length===0&&!wn)return 0}else{pe.assert($r.kind===207),Ke=!1;let Bs=Rw($r.parent);if(!I7(Bs))return pe.fail("Root declaration is not variable-like.");let Ys=WT(Bs)||!!kh(Bs)||Bs.parent.parent.kind===251;if(!Ys&&Bs.kind===170&&(un(Bs.parent)?Ys=!!V.getContextualType(Bs.parent):(Bs.parent.kind===175||Bs.parent.kind===179)&&(Ys=un(Bs.parent.parent)&&!!V.getContextualType(Bs.parent.parent))),Ys){let tn=V.getTypeAtLocation($r);if(!tn)return 2;ri=V.getPropertiesOfType(tn).filter(wn=>V.isPropertyAccessible($r,!1,!1,tn,wn)),ao=$r.elements}}if(ri&&ri.length>0){let Bs=Mt(ri,pe.checkDefined(ao));tr=Nn(tr,Bs),Bt(),$r.kind===211&&_.includeCompletionsWithObjectLiteralMethodSnippets&&_.includeCompletionsWithInsertText&&(fr(Ot),pa(Bs,$r))}return 1}function pt(){if(!We)return 0;let Ot=We.kind===19||We.kind===28?Gs(We.parent,Fne):KVe(We)?Gs(We.parent.parent,Fne):void 0;if(!Ot)return 0;KVe(We)||(Lt=8);let{moduleSpecifier:$r}=Ot.kind===276?Ot.parent.parent:Ot.parent;if(!$r)return Ke=!0,Ot.kind===276?2:0;let ri=V.getSymbolAtLocation($r);if(!ri)return Ke=!0,2;nt=3,Ke=!1;let ao=V.getExportsAndPropertiesOfModule(ri),Bs=new Set(Ot.elements.filter(tn=>!Hn(tn)).map(tn=>CF(tn.propertyName||tn.name))),Ys=ao.filter(tn=>tn.escapedName!=="default"&&!Bs.has(tn.escapedName));return tr=Nn(tr,Ys),Ys.length||(Lt=0),1}function on(){if(We===void 0)return 0;let Ot=We.kind===19||We.kind===28?Gs(We.parent,CU):We.kind===59?Gs(We.parent.parent,CU):void 0;if(Ot===void 0)return 0;let $r=new Set(Ot.elements.map(JAe));return tr=Me(V.getTypeAtLocation(Ot).getApparentProperties(),ri=>!$r.has(ri.escapedName)),1}function it(){var Ot;let $r=We&&(We.kind===19||We.kind===28)?Gs(We.parent,mv):void 0;if(!$r)return 0;let ri=ji($r,Hp(ll,xh));return nt=5,Ke=!1,(Ot=ri.locals)==null||Ot.forEach((ao,Bs)=>{var Ys,tn;tr.push(ao),(tn=(Ys=ri.symbol)==null?void 0:Ys.exports)!=null&&tn.has(Bs)&&(dt[kg(ao)]=c0.OptionalMember)}),1}function nr(){let Ot=_Ls(g,We,Rt,h);if(!Ot)return 0;if(nt=3,Ke=!0,Lt=We.kind===42?0:xa(Ot)?2:3,!xa(Ot))return 1;let $r=We.kind===27?We.parent.parent:We.parent,ri=PI($r)?o_($r):0;if(We.kind===80&&!Hn(We))switch(We.getText()){case"private":ri=ri|2;break;case"static":ri=ri|256;break;case"override":ri=ri|16;break}if(fl($r)&&(ri|=256),!(ri&2)){let ao=xa(Ot)&&ri&16?J_(BB(Ot)):R7(Ot),Bs=er(ao,Ys=>{let tn=V.getTypeAtLocation(Ys);return ri&256?tn?.symbol&&V.getPropertiesOfType(V.getTypeOfSymbolAtLocation(tn.symbol,Ot)):tn&&V.getPropertiesOfType(tn)});tr=Nn(tr,Je(Bs,Ot.members,ri)),F(tr,(Ys,tn)=>{let wn=Ys?.valueDeclaration;if(wn&&PI(wn)&&wn.name&&Un(wn.name)){let Mn={kind:512,symbolName:V.symbolToString(Ys)};Gr[tn]=Mn}})}return 1}function Fr(Ot){return!!Ot.parent&&Si(Ot.parent)&&Tc(Ot.parent.parent)&&(IY(Ot.kind)||HT(Ot))}function Kr(Ot){if(Ot){let $r=Ot.parent;switch(Ot.kind){case 21:case 28:return Tc(Ot.parent)?Ot.parent:void 0;default:if(Fr(Ot))return $r.parent}}}function Dn(Ot){if(Ot){let $r,ri=ji(Ot.parent,ao=>xa(ao)?"quit":kd(ao)&&$r===ao.body?!0:($r=ao,!1));return ri&&ri}}function hr(Ot){if(Ot){let $r=Ot.parent;switch(Ot.kind){case 32:case 31:case 44:case 80:case 212:case 293:case 292:case 294:if($r&&($r.kind===286||$r.kind===287)){if(Ot.kind===32){let ri=Gm(Ot.pos,g,void 0);if(!$r.typeArguments||ri&&ri.kind===44)break}return $r}else if($r.kind===292)return $r.parent.parent;break;case 11:if($r&&($r.kind===292||$r.kind===294))return $r.parent.parent;break;case 20:if($r&&$r.kind===295&&$r.parent&&$r.parent.kind===292)return $r.parent.parent.parent;if($r&&$r.kind===294)return $r.parent.parent;break}}}function Sn(Ot,$r){return g.getLineEndOfPosition(Ot.getEnd())<$r}function Ni(Ot){let $r=Ot.parent,ri=$r.kind;switch(Ot.kind){case 28:return ri===261||ds(Ot)||ri===244||ri===267||nn(ri)||ri===265||ri===208||ri===266||xa($r)&&!!$r.typeParameters&&$r.typeParameters.end>=Ot.pos;case 25:return ri===208;case 59:return ri===209;case 23:return ri===208;case 21:return ri===300||nn(ri);case 19:return ri===267;case 30:return ri===264||ri===232||ri===265||ri===266||lP(ri);case 126:return ri===173&&!xa($r.parent);case 26:return ri===170||!!$r.parent&&$r.parent.kind===208;case 125:case 123:case 124:return ri===170&&!Tc($r.parent);case 130:return ri===277||ri===282||ri===275;case 139:case 153:return!Wit(Ot);case 80:{if((ri===277||ri===282)&&Ot===$r.name&&Ot.text==="type"||ji(Ot.parent,nc)&&Sn(Ot,h))return!1;break}case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return ri!==277;case 42:return bu(Ot.parent)&&!uu(Ot.parent)}if(XPe(Lit(Ot))&&Wit(Ot)||Fr(Ot)&&(!Ir(Ot)||IY(Lit(Ot))||Hn(Ot)))return!1;switch(Lit(Ot)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return pi(Ot.parent)}if(ji(Ot.parent,xa)&&Ot===Ze&&Gi(Ot,h))return!1;let Bs=ML(Ot.parent,173);if(Bs&&Ot!==Ze&&xa(Ze.parent.parent)&&h<=Ze.end){if(Gi(Ot,Ze.end))return!1;if(Ot.kind!==64&&(FEe(Bs)||If(Bs)))return!0}return HT(Ot)&&!a0(Ot.parent)&&!EN(Ot.parent)&&!((xa(Ot.parent)||g_(Ot.parent)||Ds(Ot.parent))&&(Ot!==Ze||h>Ze.end))}function Gi(Ot,$r){return Ot.kind!==64&&(Ot.kind===27||!yE(Ot.end,$r,g))}function nn(Ot){return lP(Ot)&&Ot!==177}function En(Ot){if(Ot.kind===9){let $r=Ot.getFullText();return $r.charAt($r.length-1)==="."}return!1}function ds(Ot){return Ot.parent.kind===262&&!u1e(Ot,g,V)}function Mt(Ot,$r){if($r.length===0)return Ot;let ri=new Set,ao=new Set;for(let Ys of $r){if(Ys.kind!==304&&Ys.kind!==305&&Ys.kind!==209&&Ys.kind!==175&&Ys.kind!==178&&Ys.kind!==179&&Ys.kind!==306||Hn(Ys))continue;let tn;if(Lx(Ys))cn(Ys,ri);else if(hg(Ys)&&Ys.propertyName)Ys.propertyName.kind===80&&(tn=Ys.propertyName.escapedText);else{let wn=Il(Ys);tn=wn&&Tw(wn)?qJ(wn):void 0}tn!==void 0&&ao.add(tn)}let Bs=Ot.filter(Ys=>!ao.has(Ys.escapedName));return xe(ri,Bs),Bs}function cn(Ot,$r){let ri=Ot.expression,ao=V.getSymbolAtLocation(ri),Bs=ao&&V.getTypeOfSymbolAtLocation(ao,ri),Ys=Bs&&Bs.properties;Ys&&Ys.forEach(tn=>{$r.add(tn.name)})}function Bt(){tr.forEach(Ot=>{if(Ot.flags&16777216){let $r=kg(Ot);dt[$r]=dt[$r]??c0.OptionalMember}})}function xe(Ot,$r){if(Ot.size!==0)for(let ri of $r)Ot.has(ri.name)&&(dt[kg(ri)]=c0.MemberDeclaredBySpreadAssignment)}function fr(Ot){for(let $r=Ot;$r!ao.has(Bs.escapedName)&&!!Bs.declarations&&!(u2(Bs)&2)&&!(Bs.valueDeclaration&&pC(Bs.valueDeclaration)))}function In(Ot,$r){let ri=new Set,ao=new Set;for(let Ys of $r)Hn(Ys)||(Ys.kind===292?ri.add(cz(Ys.name)):yz(Ys)&&cn(Ys,ao));let Bs=Ot.filter(Ys=>!ri.has(Ys.escapedName));return xe(ao,Bs),Bs}function Hn(Ot){return Ot.getStart(g)<=h&&h<=Ot.getEnd()}}function fLs(s,c,g){var d;if(s){let{parent:h}=s;switch(s.kind){case 19:case 28:if(og(h)||Km(h))return h;break;case 42:return uu(h)?Gs(h.parent,og):void 0;case 134:return Gs(h.parent,og);case 80:if(s.text==="async"&&a0(s.parent))return s.parent.parent;{if(og(s.parent.parent)&&(Lx(s.parent)||a0(s.parent)&&Ra(g,s.getEnd()).line!==Ra(g,c).line))return s.parent.parent;let S=ji(h,fm);if(S?.getLastToken(g)===s&&og(S.parent))return S.parent}break;default:if((d=h.parent)!=null&&d.parent&&(uu(h.parent)||Bg(h.parent)||Dg(h.parent))&&og(h.parent.parent))return h.parent.parent;if(Lx(h)&&og(h.parent))return h.parent;let _=ji(h,fm);if(s.kind!==59&&_?.getLastToken(g)===s&&og(_.parent))return _.parent}}}function Git(s,c){let g=Gm(s,c);return g&&s<=g.end&&(_w(g)||v0(g.kind))?{contextToken:Gm(g.getFullStart(),c,void 0),previousToken:g}:{contextToken:g,previousToken:g}}function IAn(s,c,g,d){let h=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():g,_=h.getTypeChecker(),S=c.ambientModuleName?_.tryFindAmbientModule(c.ambientModuleName):c.fileName?_.getMergedSymbol(pe.checkDefined(h.getSourceFile(c.fileName)).symbol):void 0;if(!S)return;let R=c.exportName==="export="?_.resolveExternalModuleSymbol(S):_.tryGetMemberInModuleExportsAndProperties(c.exportName,S);return R?(R=c.exportName==="default"&&W7(R)||R,{symbol:R,origin:iLs(c,s,S)}):void 0}function Fit(s,c,g,d,h){if(PZs(g))return;let _=FZs(g)?g.symbolName:s.name;if(_===void 0||s.flags&1536&&sne(_.charCodeAt(0))||k7(s))return;let S={name:_,needsConvertPropertyAccess:!1};if(Uh(_,c,h?1:0)||s.valueDeclaration&&pC(s.valueDeclaration))return S;if(s.flags&2097152)return{name:_,needsConvertPropertyAccess:!0};switch(d){case 3:return dXt(g)?{name:g.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(_),needsConvertPropertyAccess:!1};case 2:case 1:return _.charCodeAt(0)===32?void 0:{name:_,needsConvertPropertyAccess:!0};case 5:case 4:return S;default:pe.assertNever(d)}}var Zit=[],hAn=FA(()=>{let s=[];for(let c=83;c<=166;c++)s.push({name:Vi(c),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords});return s});function mAn(s,c){if(!c)return CAn(s);let g=s+8+1;return Zit[g]||(Zit[g]=CAn(s).filter(d=>!ILs(Ta(d.name))))}function CAn(s){return Zit[s]||(Zit[s]=hAn().filter(c=>{let g=Ta(c.name);switch(s){case 0:return!1;case 1:return yAn(g)||g===138||g===144||g===156||g===145||g===128||Xde(g)&&g!==157;case 5:return yAn(g);case 2:return XPe(g);case 3:return _An(g);case 4:return IY(g);case 6:return Xde(g)||g===87;case 7:return Xde(g);case 8:return g===156;default:return pe.assertNever(s)}}))}function ILs(s){switch(s){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}function _An(s){return s===148}function XPe(s){switch(s){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return vre(s)}}function yAn(s){return s===134||s===135||s===160||s===130||s===152||s===156||!rAe(s)&&!XPe(s)}function Lit(s){return Ir(s)?iv(s)??0:s.kind}function hLs(s,c){let g=[];if(s){let d=s.getSourceFile(),h=s.parent,_=d.getLineAndCharacterOfPosition(s.end).line,S=d.getLineAndCharacterOfPosition(c).line;(Mf(h)||Gh(h)&&h.moduleSpecifier)&&s===h.moduleSpecifier&&_===S&&g.push({name:Vi(132),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords})}return g}function mLs(s,c){return ji(s,g=>u3(g)&&Hie(g,c)?!0:tR(g)?"quit":!1)}function Vit(s,c,g,d){let h=c&&c!==s,_=d.getUnionType(Me(s.flags&1048576?s.types:[s],W=>!d.getPromisedTypeOfPromise(W))),S=h&&!(c.flags&3)?d.getUnionType([_,c]):_,R=CLs(S,g,d);return S.isClass()&&bAn(R)?[]:h?Me(R,T):R;function T(W){return B(W.declarations)?jt(W.declarations,V=>V.parent!==g):!0}}function CLs(s,c,g){return s.isUnion()?g.getAllPossiblePropertiesOfTypes(Me(s.types,d=>!(d.flags&402784252||g.isArrayLikeType(d)||g.isTypeInvalidDueToUnionDiscriminant(d,c)||g.typeHasCallOrConstructSignatures(d)||d.isClass()&&bAn(d.getApparentProperties())))):s.getApparentProperties()}function bAn(s){return jt(s,c=>!!(u2(c)&6))}function Pit(s,c){return s.isUnion()?pe.checkEachDefined(c.getAllPossiblePropertiesOfTypes(s.types),"getAllPossiblePropertiesOfTypes() should all be defined"):pe.checkEachDefined(s.getApparentProperties(),"getApparentProperties() should all be defined")}function _Ls(s,c,g,d){switch(g.kind){case 353:return Gs(g.parent,YY);case 1:let h=Gs(li(Ma(g.parent,ll).statements),YY);if(h&&!qd(h,20,s))return h;break;case 81:if(Gs(g.parent,pi))return ji(g,xa);break;case 80:{if(iv(g)||pi(g.parent)&&g.parent.initializer===g)return;if(Wit(g))return ji(g,YY)}}if(c){if(g.kind===137||Ir(c)&&pi(c.parent)&&xa(g))return ji(c,xa);switch(c.kind){case 64:return;case 27:case 20:return Wit(g)&&g.parent.name===g?g.parent.parent:Gs(g,YY);case 19:case 28:return Gs(c.parent,YY);default:if(YY(g)){if(Ra(s,c.getEnd()).line!==Ra(s,d).line)return g;let h=xa(c.parent.parent)?XPe:_An;return h(c.kind)||c.kind===42||Ir(c)&&h(iv(c)??0)?c.parent.parent:void 0}return}}}function yLs(s){if(!s)return;let c=s.parent;switch(s.kind){case 19:if(mh(c))return c;break;case 27:case 28:case 80:if(c.kind===172&&mh(c.parent))return c.parent;break}}function EAn(s,c){if(!s)return;if(uc(s)&&s7(s.parent))return c.getTypeArgumentConstraint(s);let g=EAn(s.parent,c);if(g)switch(s.kind){case 172:return c.getTypeOfPropertyOfContextualType(g,s.symbol.escapedName);case 194:case 188:case 193:return g}}function Wit(s){return s.parent&&mY(s.parent)&&YY(s.parent.parent)}function bLs(s,c,g,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!g&&vMt(g)&&d===g.getStart(s)+1;case"#":return!!g&&p(g)&&!!hC(g);case"<":return!!g&&g.kind===30&&(!fo(g.parent)||SAn(g.parent));case"/":return!!g&&(mA(g)?!!B7(g):g.kind===44&&rQ(g.parent));case" ":return!!g&&an(g)&&g.parent.kind===308;default:return pe.assertNever(c)}}function SAn({left:s}){return sf(s)}function ELs(s,c,g){let d=g.resolveName("self",void 0,111551,!1);if(d&&g.getTypeOfSymbolAtLocation(d,c)===s)return!0;let h=g.resolveName("global",void 0,111551,!1);if(h&&g.getTypeOfSymbolAtLocation(h,c)===s)return!0;let _=g.resolveName("globalThis",void 0,111551,!1);return!!(_&&g.getTypeOfSymbolAtLocation(_,c)===s)}function SLs(s){return!!(s.valueDeclaration&&o_(s.valueDeclaration)&256&&xa(s.valueDeclaration.parent))}function vLs(s,c){let g=c.getContextualType(s);if(g)return g;let d=gv(s.parent);if(fo(d)&&d.operatorToken.kind===64&&s===d.left)return c.getTypeAtLocation(d);if(un(d))return c.getContextualType(d)}function vAn(s,c){var g,d,h;let _,S=!1,R=T();return{isKeywordOnlyCompletion:S,keywordCompletion:_,isNewIdentifierLocation:!!(R||_===156),isTopLevelTypeOnly:!!((d=(g=Gs(R,Mf))==null?void 0:g.importClause)!=null&&d.isTypeOnly)||!!((h=Gs(R,km))!=null&&h.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&wAn(R,s),replacementSpan:BLs(R)};function T(){let W=s.parent;if(km(W)){let V=W.getLastToken(c);if(Ir(s)&&V!==s){_=161,S=!0;return}return _=s.kind===156?void 0:156,bXt(W.moduleReference)?W:void 0}if(wAn(W,s)&&TAn(W.parent))return W;if(yN(W)||Zx(W)){if(!W.parent.isTypeOnly&&(s.kind===19||s.kind===102||s.kind===28)&&(_=156),TAn(W))if(s.kind===20||s.kind===80)S=!0,_=161;else return W.parent.parent;return}if(Gh(W)&&s.kind===42||mv(W)&&s.kind===20){S=!0,_=161;return}if(an(s)&&ll(W))return _=156,s;if(an(s)&&Mf(W))return _=156,bXt(W.moduleSpecifier)?W:void 0}}function BLs(s){var c;if(!s)return;let g=ji(s,Hp(Mf,km,SN))??s,d=g.getSourceFile();if(S3(g,d))return Oy(g,d);pe.assert(g.kind!==102&&g.kind!==277);let h=g.kind===273||g.kind===352?BAn((c=g.importClause)==null?void 0:c.namedBindings)??g.moduleSpecifier:g.moduleReference,_={pos:g.getFirstToken().getStart(),end:h.pos};if(S3(_,d))return t9(_)}function BAn(s){var c;return de((c=Gs(s,yN))==null?void 0:c.elements,g=>{var d;return!g.propertyName&&WY(g.name.text)&&((d=Gm(g.name.pos,s.getSourceFile(),s))==null?void 0:d.kind)!==28})}function wAn(s,c){return uy(s)&&(s.isTypeOnly||c===s.name&&KVe(c))}function TAn(s){if(!bXt(s.parent.parent.moduleSpecifier)||s.parent.name)return!1;if(yN(s)){let c=BAn(s);return(c?s.elements.indexOf(c):s.elements.length)<2}return!0}function bXt(s){var c;return sf(s)?!0:!((c=Gs(ZF(s)?s.expression:s,mA))!=null&&c.text)}function wLs(s,c){if(!s)return;let g=ji(s,d=>mP(d)||RAn(d)||Nu(d)?"quit":(Si(d)||Ds(d))&&!w0(d.parent));return g||(g=ji(c,d=>mP(d)||RAn(d)||Nu(d)?"quit":nc(d))),g}function TLs(s){if(!s)return!1;let c=s,g=s.parent;for(;g;){if(Ds(g))return g.default===c||c.kind===64;c=g,g=g.parent}return!1}function RAn(s){return s.parent&&lA(s.parent)&&(s.parent.body===s||s.kind===39)}function EXt(s,c,g=new Set){return d(s)||d(FC(s.exportSymbol||s,c));function d(h){return!!(h.flags&788968)||c.isUnknownSymbol(h)||!!(h.flags&1536)&&Zy(g,h)&&c.getExportsOfModule(h).some(_=>EXt(_,c,g))}}function RLs(s,c){let g=FC(s,c).declarations;return!!B(g)&&ue(g,gPe)}function NAn(s,c){if(c.length===0)return!0;let g=!1,d,h=0,_=s.length;for(let S=0;S<_;S++){let R=s.charCodeAt(S),T=c.charCodeAt(h);if((R===T||R===NLs(T))&&(g||(g=d===void 0||97<=d&&d<=122&&65<=R&&R<=90||d===95&&R!==95),g&&h++,h===c.length))return!0;d=R}return!1}function NLs(s){return 97<=s&&s<=122?s-32:s}function DLs(s){return s==="abstract"||s==="async"||s==="await"||s==="declare"||s==="module"||s==="namespace"||s==="type"||s==="satisfies"||s==="as"}var Oit={};o(Oit,{getStringLiteralCompletionDetails:()=>GLs,getStringLiteralCompletions:()=>kLs});var DAn={directory:0,script:1,"external module name":2};function SXt(){let s=new Map;function c(g){let d=s.get(g.name);(!d||DAn[d.kind]({name:YT(re.value,M),kindModifiers:"",kind:"string",sortText:c0.LocationPriority,replacementSpan:Grt(c,T),commitCharacters:[]}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:s.isNewIdentifier,optionalReplacementSpan:V,entries:ee,defaultCommitCharacters:ZU(s.isNewIdentifier)}}default:return pe.assertNever(s)}}function GLs(s,c,g,d,h,_,S,R){if(!d||!mA(d))return;let T=GAn(c,d,g,h,_,R);return T&&FLs(s,d,T,c,h.getTypeChecker(),S)}function FLs(s,c,g,d,h,_){switch(g.kind){case 0:{let S=de(g.paths,R=>R.name===s);return S&&QPe(s,xAn(S.extension),S.kind,[gS(s)])}case 1:{let S=de(g.symbols,R=>R.name===s);return S&&_Xt(S,S.name,h,d,c,_)}case 2:return de(g.types,S=>S.value===s)?QPe(s,"","string",[gS(s)]):void 0;default:return pe.assertNever(g)}}function kAn(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:s.map(({name:h,kind:_,span:S,extension:R})=>({name:h,kind:_,kindModifiers:xAn(R),sortText:c0.LocationPriority,replacementSpan:S})),defaultCommitCharacters:ZU(!0)}}function xAn(s){switch(s){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return pe.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return pe.assertNever(s)}}function GAn(s,c,g,d,h,_){let S=d.getTypeChecker(),R=vXt(c.parent);switch(R.kind){case 202:{let Ze=vXt(R.parent);return Ze.kind===206?{kind:0,paths:LAn(s,c,d,h,_)}:T(Ze)}case 304:return og(R.parent)&&R.name===c?VLs(S,R.parent):W()||W(0);case 213:{let{expression:Ze,argumentExpression:We}=R;return c===QA(We)?FAn(S.getTypeAtLocation(Ze)):void 0}case 214:case 215:case 292:if(!e9s(c)&&!Up(R)){let Ze=J1e.getArgumentInfoForCompletions(R.kind===292?R.parent:c,g,s,S);return Ze&&LLs(Ze.invocation,c,Ze,S)||W(0)}case 273:case 279:case 284:case 352:return{kind:0,paths:LAn(s,c,d,h,_)};case 297:let V=pPe(S,R.parent.clauses),M=W();return M?{kind:2,types:M.types.filter(Ze=>!V.hasValue(Ze.value)),isNewIdentifier:!1}:void 0;case 277:case 282:let re=R;if(re.propertyName&&c!==re.propertyName)return;let ge=re.parent,{moduleSpecifier:Ie}=ge.kind===276?ge.parent.parent:ge.parent;if(!Ie)return;let _e=S.getSymbolAtLocation(Ie);if(!_e)return;let Ee=S.getExportsAndPropertiesOfModule(_e),Ne=new Set(ge.elements.map(Ze=>CF(Ze.propertyName||Ze.name)));return{kind:1,symbols:Ee.filter(Ze=>Ze.escapedName!=="default"&&!Ne.has(Ze.escapedName)),hasIndexSignature:!1};case 227:if(R.operatorToken.kind===103){let Ze=S.getTypeAtLocation(R.right);return{kind:1,symbols:(Ze.isUnion()?S.getAllPossiblePropertiesOfTypes(Ze.types):Ze.getApparentProperties()).filter(Ue=>!Ue.valueDeclaration||!pC(Ue.valueDeclaration)),hasIndexSignature:!1}}return W(0);default:return W()||W(0)}function T(V){switch(V.kind){case 234:case 184:{let re=ji(R,ge=>ge.parent===V);return re?{kind:2,types:Mit(S.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 200:let{indexType:M,objectType:ee}=V;return Hie(M,g)?FAn(S.getTypeFromTypeNode(ee)):void 0;case 193:{let re=T(vXt(V.parent));if(!re)return;let ge=ZLs(V,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ie=>!k(ge,Ie.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ie=>!k(ge,Ie.value)),isNewIdentifier:!1}}default:return}}function W(V=4){let M=Mit(nPe(c,S,V));if(M.length)return{kind:2,types:M,isNewIdentifier:!1}}}function vXt(s){switch(s.kind){case 197:return fne(s);case 218:return gv(s);default:return s}}function ZLs(s,c){return Xt(s.types,g=>g!==c&&EE(g)&&Zg(g.literal)?g.literal.text:void 0)}function LLs(s,c,g,d){let h=!1,_=new Set,S=eI(s)?pe.checkDefined(ji(c.parent,EN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(s,S),T=er(R,W=>{if(!D0(W)&&g.argumentCount>W.parameters.length)return;let V=W.getTypeParameterAtPosition(g.argumentIndex);if(eI(s)){let M=d.getTypeOfPropertyOfType(V,xw(S.name));M&&(V=M)}return h=h||!!(V.flags&4),Mit(V,_)});return B(T)?{kind:2,types:T,isNewIdentifier:h}:void 0}function FAn(s){return s&&{kind:1,symbols:Me(s.getApparentProperties(),c=>!(c.valueDeclaration&&pC(c.valueDeclaration))),hasIndexSignature:tnt(s)}}function VLs(s,c){let g=s.getContextualType(c);if(!g)return;let d=s.getContextualType(c,4);return{kind:1,symbols:Vit(g,d,c,s),hasIndexSignature:tnt(g)}}function Mit(s,c=new Set){return s?(s=Vrt(s),s.isUnion()?er(s.types,g=>Mit(g,c)):s.isStringLiteral()&&!(s.flags&1024)&&Zy(c,s.value)?[s]:E):E}function upe(s,c,g){return{name:s,kind:c,extension:g}}function BXt(s){return upe(s,"directory",void 0)}function ZAn(s,c,g){let d=jLs(s,c),h=s.length===0?void 0:zd(c,s.length);return g.map(({name:_,kind:S,extension:R})=>_.includes(ag)||_.includes(Eb)?{name:_,kind:S,extension:R,span:h}:{name:_,kind:S,extension:R,span:d})}function LAn(s,c,g,d,h){return ZAn(c.text,c.getStart(s)+1,PLs(s,c,g,d,h))}function PLs(s,c,g,d,h){let _=Dp(c.text),S=mA(c)?g.getModeForUsageLocation(s,c):void 0,R=s.path,T=Mo(R),W=g.getCompilerOptions(),V=g.getTypeChecker(),M=z3(g,d),ee=wXt(W,1,s,V,h,S);return zLs(_)||!W.baseUrl&&!W.paths&&(Xp(_)||n_(_))?WLs(_,T,g,d,M,R,ee):YLs(_,T,S,g,d,M,ee)}function wXt(s,c,g,d,h,_){return{extensionsToSearch:Nr(OLs(s,d)),referenceKind:c,importingSourceFile:g,endingPreference:h?.importModuleSpecifierEnding,resolutionMode:_}}function WLs(s,c,g,d,h,_,S){let R=g.getCompilerOptions();return R.rootDirs?HLs(R.rootDirs,s,c,S,g,d,h,_):Do(gpe(s,c,S,g,d,h,!0,_).values())}function OLs(s,c){let g=c?Xt(c.getAmbientModules(),_=>{let S=_.name.slice(1,-1);if(!(!S.startsWith("*.")||S.includes("/")))return S.slice(1)}):[],d=[...z7(s),g],h=k_(s);return jVe(h)?q7(s,d):d}function MLs(s,c,g,d){s=s.map(_=>hp(iu(Xp(_)?_:Ro(c,_))));let h=X(s,_=>Jh(_,g,c,d)?g.substr(_.length):void 0);return io([...s.map(_=>Ro(_,h)),g].map(_=>ny(_)),MA,Ca)}function HLs(s,c,g,d,h,_,S,R){let W=h.getCompilerOptions().project||_.getCurrentDirectory(),V=!(_.useCaseSensitiveFileNames&&_.useCaseSensitiveFileNames()),M=MLs(s,W,g,V);return io(er(M,ee=>Do(gpe(c,ee,d,h,_,S,!0,R).values())),(ee,re)=>ee.name===re.name&&ee.kind===re.kind&&ee.extension===re.extension)}function gpe(s,c,g,d,h,_,S,R,T=SXt()){var W;s===void 0&&(s=""),s=Dp(s),Jp(s)||(s=Mo(s)),s===""&&(s="."+ag),s=hp(s);let V=AE(c,s),M=Jp(V)?V:Mo(V);if(!S){let Ie=RMt(M,h);if(Ie){let Ee=E3(Ie,h).typesVersions;if(typeof Ee=="object"){let Ne=(W=N9e(Ee))==null?void 0:W.paths;if(Ne){let Te=Mo(Ie),Ze=V.slice(hp(Te).length);if(PAn(T,Ze,Te,g,d,h,_,Ne))return T}}}}let ee=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames());if(!aPe(h,M))return T;let re=int(h,M,g.extensionsToSearch,void 0,["./*"]);if(re)for(let Ie of re){if(Ie=iu(Ie),R&&qf(Ie,R,c,ee)===0)continue;let{name:_e,extension:Ee}=VAn(gp(Ie),d,g,!1);T.add(upe(_e,"script",Ee))}let ge=oPe(h,M);if(ge)for(let Ie of ge){let _e=gp(iu(Ie));_e!=="@types"&&T.add(BXt(_e))}return T}function VAn(s,c,g,d){let h=WF.tryGetRealFileNameForNonJsDeclarationFileName(s);if(h)return{name:h,extension:QT(h)};if(g.referenceKind===0)return{name:s,extension:QT(s)};let _=WF.getModuleSpecifierPreferences({importModuleSpecifierEnding:g.endingPreference},c,c.getCompilerOptions(),g.importingSourceFile).getAllowedEndingsInPreferredOrder(g.resolutionMode);if(d&&(_=_.filter(R=>R!==0&&R!==1)),_[0]===3){if(fu(s,Qne))return{name:s,extension:QT(s)};let R=WF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return R?{name:fN(s,R),extension:R}:{name:s,extension:QT(s)}}if(!d&&(_[0]===0||_[0]===1)&&fu(s,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:s0(s),extension:QT(s)};let S=WF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return S?{name:fN(s,S),extension:S}:{name:s,extension:QT(s)}}function PAn(s,c,g,d,h,_,S,R){let T=V=>R[V],W=(V,M)=>{let ee=UY(V),re=UY(M),ge=typeof ee=="object"?ee.prefix.length:V.length,Ie=typeof re=="object"?re.prefix.length:M.length;return Zt(Ie,ge)};return WAn(s,!1,!1,c,g,d,h,_,S,_g(R),T,W)}function WAn(s,c,g,d,h,_,S,R,T,W,V,M){let ee=[],re;for(let ge of W){if(ge===".")continue;let Ie=ge.replace(/^\.\//,"")+((c||g)&&di(ge,"/")?"*":""),_e=V(ge);if(_e){let Ee=UY(Ie);if(!Ee)continue;let Ne=typeof Ee=="object"&&jd(Ee,d);Ne&&(re===void 0||M(Ie,re)===-1)&&(re=Ie,ee=ee.filter(Ze=>!Ze.matchedPattern)),(typeof Ee=="string"||re===void 0||M(Ie,re)!==1)&&ee.push({matchedPattern:Ne,results:QLs(Ie,_e,d,h,_,c,g,S,R,T).map(({name:Ze,kind:We,extension:Ue})=>upe(Ze,We,Ue))})}}return ee.forEach(ge=>ge.results.forEach(Ie=>s.add(Ie))),re!==void 0}function YLs(s,c,g,d,h,_,S){let R=d.getTypeChecker(),T=d.getCompilerOptions(),{baseUrl:W,paths:V}=T,M=SXt(),ee=k_(T);if(W){let Ie=iu(Ro(h.getCurrentDirectory(),W));gpe(s,Ie,S,d,h,_,!1,void 0,M)}if(V){let Ie=aAe(T,h);PAn(M,s,Ie,S,d,h,_,V)}let re=MAn(s);for(let Ie of JLs(s,re,R))M.add(upe(Ie,"external module name",void 0));if(QAn(d,h,_,c,re,S,M),jVe(ee)){let Ie=!1;if(re===void 0)for(let _e of KLs(h,c)){let Ee=upe(_e,"external module name",void 0);M.has(Ee.name)||(Ie=!0,M.add(Ee))}if(!Ie){let _e=U7(T),Ee=Pne(T),Ne=!1,Te=Ue=>{if(Ee&&!Ne){let $e=Ro(Ue,"package.json");if(Ne=jie(h,$e)){let Ye=E3($e,h);ge(Ye.imports,s,Ue,!1,!0)}}},Ze=Ue=>{let $e=Ro(Ue,"node_modules");aPe(h,$e)&&gpe(s,$e,S,d,h,_,!1,void 0,M),Te(Ue)};if(re&&_e){let Ue=Ze;Ze=$e=>{let Ye=Np(s);Ye.shift();let Tt=Ye.shift();if(!Tt)return Ue($e);if(Ac(Tt,"@")){let mt=Ye.shift();if(!mt)return Ue($e);Tt=Ro(Tt,mt)}if(Ee&&Ac(Tt,"#"))return Te($e);let ot=Ro($e,"node_modules",Tt),Qe=Ro(ot,"package.json");if(jie(h,Qe)){let mt=E3(Qe,h),ht=Ye.join("/")+(Ye.length&&Jp(s)?"/":"");ge(mt.exports,ht,ot,!0,!1);return}return Ue($e)}}let We=LP(c);if(We){let Ue=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,$e=s.match(Ue);if($e){let[,Ye,Tt]=$e;if(Ac(Ye,"#"))vN(h,c,Ze);else{let ot;try{ot=We.resolveToUnqualified(Ye,c,{considerBuiltins:!1})}catch{}if(ot){let Qe=iu(ot),mt=!0;if(re&&_e){let ht=Ro(Qe,"package.json");if(jie(h,ht)){let _t=E3(ht,h);ge(_t.exports,Tt,Qe,!0,!1),mt=!1}}mt&&gpe(Tt,Qe,S,d,h,_,!1,void 0,M)}}}}else vN(h,c,Ze)}}return Do(M.values());function ge(Ie,_e,Ee,Ne,Te){if(typeof Ie!="object"||Ie===null)return;let Ze=_g(Ie),We=PP(T,g);WAn(M,Ne,Te,_e,Ee,S,d,h,_,Ze,Ue=>{let $e=OAn(Ie[Ue],We);if($e!==void 0)return J_(di(Ue,"/")&&di($e,"/")?$e+"*":$e)},het)}}function OAn(s,c){if(typeof s=="string")return s;if(s&&typeof s=="object"&&!Ki(s)){for(let g in s)if(g==="default"||c.includes(g)||NEe(c,g)){let d=s[g];return OAn(d,c)}}}function MAn(s){return TXt(s)?Jp(s)?s:Mo(s):void 0}function QLs(s,c,g,d,h,_,S,R,T,W){let V=UY(s);if(!V)return E;if(typeof V=="string")return ee(s,"script");let M=HS(g,V.prefix);if(M===void 0)return di(s,"/*")?ee(V.prefix,"directory"):er(c,ge=>{var Ie;return(Ie=HAn("",d,ge,h,_,S,R,T,W))==null?void 0:Ie.map(({name:_e,...Ee})=>({name:V.prefix+_e+V.suffix,...Ee}))});return er(c,re=>HAn(M,d,re,h,_,S,R,T,W));function ee(re,ge){return Ac(re,g)?[{name:ny(re),kind:ge,extension:void 0}]:E}}function HAn(s,c,g,d,h,_,S,R,T){if(!R.readDirectory)return;let W=UY(g);if(W===void 0||Xs(W))return;let V=AE(W.prefix),M=Jp(W.prefix)?V:Mo(V),ee=Jp(W.prefix)?"":gp(V),re=TXt(s),ge=re?Jp(s)?s:Mo(s):void 0,Ie=()=>T.getCommonSourceDirectory(),_e=!y3(T),Ee=S.getCompilerOptions().outDir,Ne=S.getCompilerOptions().declarationDir,Te=re?Ro(M,ee+ge):M,Ze=iu(Ro(c,Te)),We=_&&Ee&&Qye(Ze,_e,Ee,Ie),Ue=_&&Ne&&Qye(Ze,_e,Ne,Ie),$e=iu(W.suffix),Ye=$e&&oAe("_"+$e),Tt=$e?Yye("_"+$e):void 0,ot=[Ye&&fN($e,Ye),...Tt?Tt.map(Ke=>fN($e,Ke)):[],$e].filter(Xs),Qe=$e?ot.map(Ke=>"**/*"+Ke):["./*"],mt=(h||_)&&di(g,"/*"),ht=_t(Ze);return We&&(ht=Nn(ht,_t(We))),Ue&&(ht=Nn(ht,_t(Ue))),$e||(ht=Nn(ht,Rt(Ze)),We&&(ht=Nn(ht,Rt(We))),Ue&&(ht=Nn(ht,Rt(Ue)))),ht;function _t(Ke){let Pt=re?Ke:hp(Ke)+ee;return Xt(int(R,Ke,d.extensionsToSearch,void 0,Qe),_r=>{let Gt=Lt(_r,Pt);if(Gt){if(TXt(Gt))return BXt(Np(YAn(Gt))[1]);let{name:nt,extension:Dt}=VAn(Gt,S,d,mt);return upe(nt,"script",Dt)}})}function Rt(Ke){return Xt(oPe(R,Ke),Pt=>Pt==="node_modules"?void 0:BXt(Pt))}function Lt(Ke,Pt){return X(ot,_r=>{let Gt=XLs(iu(Ke),Pt,_r);return Gt===void 0?void 0:YAn(Gt)})}}function XLs(s,c,g){return Ac(s,c)&&di(s,g)?s.slice(c.length,s.length-g.length):void 0}function YAn(s){return s[0]===ag?s.slice(1):s}function JLs(s,c,g){let h=g.getAmbientModules().map(_=>l2(_.name)).filter(_=>Ac(_,s)&&!_.includes("*"));if(c!==void 0){let _=hp(c);return h.map(S=>Nm(S,_))}return h}function ULs(s,c,g,d,h){let _=g.getCompilerOptions(),S=Jc(s,c),R=fE(s.text,S.pos),T=R&&de(R,_e=>c>=_e.pos&&c<=_e.end);if(!T)return;let W=s.text.slice(T.pos,c),V=qLs.exec(W);if(!V)return;let[,M,ee,re]=V,ge=Mo(s.path),Ie=ee==="path"?gpe(re,ge,wXt(_,0,s),g,d,h,!0,s.path):ee==="types"?QAn(g,d,h,ge,MAn(re),wXt(_,1,s)):pe.fail();return ZAn(re,T.pos+M.length,Do(Ie.values()))}function QAn(s,c,g,d,h,_,S=SXt()){let R=s.getCompilerOptions(),T=new Map,W=cPe(()=>Cde(R,c))||E;for(let M of W)V(M);if(LP(d))for(let M of Fen(d))V(M);else for(let M of snt(d,c)){let ee=Ro(Mo(M),"node_modules/@types");V(ee)}return S;function V(M){if(aPe(c,M))for(let ee of oPe(c,M)){let re=DEe(ee);if(!(R.types&&!k(R.types,re)))if(h===void 0)T.has(re)||(S.add(upe(re,"external module name",void 0)),T.set(re,!0));else{let ge=Ro(M,ee),Ie=DAe(h,re,JD(c));Ie!==void 0&&gpe(Ie,ge,_,s,c,g,!1,void 0,S)}}}}function KLs(s,c){if(!s.readFile||!s.fileExists)return E;let g=[];for(let d of snt(c,s)){let h=E3(d,s);for(let _ of $Ls){let S=h[_];if(S)for(let R in S)Da(S,R)&&!Ac(R,"@types/")&&g.push(R)}}return g}function jLs(s,c){let g=Math.max(s.lastIndexOf(ag),s.lastIndexOf(Eb)),d=g!==-1?g+1:0,h=s.length-d;return h===0||Uh(s.substr(d,h),99)?void 0:zd(c+d,h)}function zLs(s){if(s&&s.length>=2&&s.charCodeAt(0)===46){let c=s.length>=3&&s.charCodeAt(1)===46?2:1,g=s.charCodeAt(c);return g===47||g===92}return!1}var qLs=/^(\/\/\/\s*Uz,DefinitionKind:()=>qAn,EntryKind:()=>$An,ExportKind:()=>XAn,FindReferencesUse:()=>edn,ImportExport:()=>JAn,createImportTracker:()=>RXt,findModuleReferences:()=>UAn,findReferenceOrRenameEntries:()=>p9s,findReferencedSymbols:()=>g9s,getContextNode:()=>LU,getExportInfo:()=>NXt,getImplementationsAtPosition:()=>d9s,getImportOrExportSymbol:()=>zAn,getReferenceEntriesForNode:()=>rdn,isContextWithStartAndEndNode:()=>kXt,isDeclarationOfSymbol:()=>adn,isWriteAccessForReference:()=>GXt,toContextSpan:()=>xXt,toHighlightSpan:()=>y9s,toReferenceEntry:()=>sdn,toRenameLocation:()=>I9s});function RXt(s,c,g,d){let h=i9s(s,g,d);return(_,S,R)=>{let{directImports:T,indirectUsers:W}=t9s(s,c,h,S,g,d);return{indirectUsers:W,...r9s(T,_,S.exportKind,g,R)}}}var XAn=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s))(XAn||{}),JAn=(s=>(s[s.Import=0]="Import",s[s.Export=1]="Export",s))(JAn||{});function t9s(s,c,g,{exportingModuleSymbol:d,exportKind:h},_,S){let R=Qie(),T=Qie(),W=[],V=!!d.globalExports,M=V?void 0:[];return re(d),{directImports:W,indirectUsers:ee()};function ee(){if(V)return s;if(d.declarations)for(let Te of d.declarations)_F(Te)&&c.has(Te.getSourceFile().fileName)&&Ee(Te);return M.map(ms)}function re(Te){let Ze=Ne(Te);if(Ze){for(let We of Ze)if(R(We))switch(S&&S.throwIfCancellationRequested(),We.kind){case 214:if(Up(We)){ge(We);break}if(!V){let $e=We.parent;if(h===2&&$e.kind===261){let{name:Ye}=$e;if(Ye.kind===80){W.push(Ye);break}}}break;case 80:break;case 272:_e(We,We.name,Ga(We,32),!1);break;case 273:case 352:W.push(We);let Ue=We.importClause&&We.importClause.namedBindings;Ue&&Ue.kind===275?_e(We,Ue.name,!1,!0):!V&&h3(We)&&Ee(JPe(We));break;case 279:We.exportClause?We.exportClause.kind===281?Ee(JPe(We),!0):W.push(We):re(l9s(We,_));break;case 206:!V&&We.isTypeOf&&!We.qualifier&&Ie(We)&&Ee(We.getSourceFile(),!0),W.push(We);break;default:pe.failBadSyntaxKind(We,"Unexpected import kind.")}}}function ge(Te){let Ze=ji(Te,Hit)||Te.getSourceFile();Ee(Ze,!!Ie(Te,!0))}function Ie(Te,Ze=!1){return ji(Te,We=>Ze&&Hit(We)?"quit":LB(We)&&jt(We.modifiers,y))}function _e(Te,Ze,We,Ue){if(h===2)Ue||W.push(Te);else if(!V){let $e=JPe(Te);pe.assert($e.kind===308||$e.kind===268),We||n9s($e,Ze,_)?Ee($e,!0):Ee($e)}}function Ee(Te,Ze=!1){if(pe.assert(!V),!T(Te)||(M.push(Te),!Ze))return;let Ue=_.getMergedSymbol(Te.symbol);if(!Ue)return;pe.assert(!!(Ue.flags&1536));let $e=Ne(Ue);if($e)for(let Ye of $e)Um(Ye)||Ee(JPe(Ye),!0)}function Ne(Te){return g.get(kg(Te).toString())}}function r9s(s,c,g,d,h){let _=[],S=[];function R(ee,re){_.push([ee,re])}if(s)for(let ee of s)T(ee);return{importSearches:_,singleReferences:S};function T(ee){if(ee.kind===272){DXt(ee)&&W(ee.name);return}if(ee.kind===80){W(ee);return}if(ee.kind===206){if(ee.qualifier){let Ie=B0(ee.qualifier);Ie.escapedText===nf(c)&&S.push(Ie)}else g===2&&S.push(ee.argument.literal);return}if(ee.moduleSpecifier.kind!==11)return;if(ee.kind===279){ee.exportClause&&mv(ee.exportClause)&&V(ee.exportClause);return}let{name:re,namedBindings:ge}=ee.importClause||{name:void 0,namedBindings:void 0};if(ge)switch(ge.kind){case 275:W(ge.name);break;case 276:(g===0||g===1)&&V(ge);break;default:pe.assertNever(ge)}if(re&&(g===1||g===2)&&(!h||re.escapedText===zVe(c))){let Ie=d.getSymbolAtLocation(re);R(re,Ie)}}function W(ee){g===2&&(!h||M(ee.escapedText))&&R(ee,d.getSymbolAtLocation(ee))}function V(ee){if(ee)for(let re of ee.elements){let{name:ge,propertyName:Ie}=re;if(M(CF(Ie||ge)))if(Ie)S.push(Ie),(!h||CF(ge)===c.escapedName)&&R(ge,d.getSymbolAtLocation(ge));else{let _e=re.kind===282&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ge);R(ge,_e)}}}function M(ee){return ee===c.escapedName||g!==0&&ee==="default"}}function n9s(s,c,g){let d=g.getSymbolAtLocation(c);return!!KAn(s,h=>{if(!Gh(h))return;let{exportClause:_,moduleSpecifier:S}=h;return!S&&_&&mv(_)&&_.elements.some(R=>g.getExportSpecifierLocalTargetSymbol(R)===d)})}function UAn(s,c,g){var d;let h=[],_=s.getTypeChecker();for(let S of c){let R=g.valueDeclaration;if(R?.kind===308){for(let T of S.referencedFiles)s.getSourceFileFromReference(S,T)===R&&h.push({kind:"reference",referencingFile:S,ref:T});for(let T of S.typeReferenceDirectives){let W=(d=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(T,S))==null?void 0:d.resolvedTypeReferenceDirective;W!==void 0&&W.resolvedFileName===R.fileName&&h.push({kind:"reference",referencingFile:S,ref:T})}}jAn(S,(T,W)=>{_.getSymbolAtLocation(W)===g&&h.push(sp(T)?{kind:"implicit",literal:W,referencingFile:S}:{kind:"import",literal:W})})}return h}function i9s(s,c,g){let d=new Map;for(let h of s)g&&g.throwIfCancellationRequested(),jAn(h,(_,S)=>{let R=c.getSymbolAtLocation(S);if(R){let T=kg(R).toString(),W=d.get(T);W||d.set(T,W=[]),W.push(_)}});return d}function KAn(s,c){return F(s.kind===308?s.statements:s.body.statements,g=>c(g)||Hit(g)&&F(g.body&&g.body.statements,c))}function jAn(s,c){if(s.externalModuleIndicator||s.imports!==void 0)for(let g of s.imports)c(v7(g),g);else KAn(s,g=>{switch(g.kind){case 279:case 273:{let d=g;d.moduleSpecifier&&Zg(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 272:{let d=g;DXt(d)&&c(d,d.moduleReference.expression);break}}})}function zAn(s,c,g,d){return d?h():h()||_();function h(){var T;let{parent:W}=s,V=W.parent;if(c.exportSymbol)return W.kind===212?(T=c.declarations)!=null&&T.some(re=>re===W)&&fo(V)?ee(V,!1):void 0:S(c.exportSymbol,R(W));{let re=o9s(W,s);if(re&&Ga(re,32))return km(re)&&re.moduleReference===s?d?void 0:{kind:0,symbol:g.getSymbolAtLocation(re.name)}:S(c,R(re));if(tk(W))return S(c,0);if(Cf(W))return M(W);if(Cf(V))return M(V);if(fo(W))return ee(W,!0);if(fo(V))return ee(V,!0);if(bU(W)||I$e(W))return S(c,0)}function M(re){if(!re.symbol.parent)return;let ge=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ge}}}function ee(re,ge){let Ie;switch(nI(re)){case 1:Ie=0;break;case 2:Ie=2;break;default:return}let _e=ge?g.getSymbolAtLocation(Abe(Ma(re.left,_p))):c;return _e&&S(_e,Ie)}}function _(){if(!a9s(s))return;let W=g.getImmediateAliasedSymbol(c);if(!W||(W=c9s(W,g),W.escapedName==="export="&&(W=s9s(W,g),W===void 0)))return;let V=zVe(W);if(V===void 0||V==="default"||V===c.escapedName)return{kind:0,symbol:W}}function S(T,W){let V=NXt(T,W,g);return V&&{kind:1,symbol:T,exportInfo:V}}function R(T){return Ga(T,2048)?1:0}}function s9s(s,c){var g,d;if(s.flags&2097152)return c.getImmediateAliasedSymbol(s);let h=pe.checkDefined(s.valueDeclaration);if(Cf(h))return(g=Gs(h.expression,mE))==null?void 0:g.symbol;if(fo(h))return(d=Gs(h.right,mE))==null?void 0:d.symbol;if(ll(h))return h.symbol}function o9s(s,c){let g=nc(s)?s:hg(s)?ai(s):void 0;return g?s.name!==c||iQ(g.parent)?void 0:Ch(g.parent.parent)?g.parent.parent:void 0:s}function a9s(s){let{parent:c}=s;switch(c.kind){case 272:return c.name===s&&DXt(c);case 277:return!c.propertyName;case 274:case 275:return pe.assert(c.name===s),!0;case 209:return wo(s)&&CP(c.parent.parent);default:return!1}}function NXt(s,c,g){let d=s.parent;if(!d)return;let h=g.getMergedSymbol(d);return WD(h)?{exportingModuleSymbol:h,exportKind:c}:void 0}function c9s(s,c){if(s.declarations)for(let g of s.declarations){if(R0(g)&&!g.propertyName&&!g.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(g)||s;if(jo(g)&&cN(g.expression)&&!p(g.name))return c.getSymbolAtLocation(g);if(a0(g)&&fo(g.parent.parent)&&nI(g.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(g.name)}return s}function l9s(s,c){return c.getMergedSymbol(JPe(s).symbol)}function JPe(s){if(s.kind===214||s.kind===352)return s.getSourceFile();let{parent:c}=s;return c.kind===308?c:(pe.assert(c.kind===269),Ma(c.parent,Hit))}function Hit(s){return s.kind===268&&s.name.kind===11}function DXt(s){return s.moduleReference.kind===284&&s.moduleReference.expression.kind===11}var qAn=(s=>(s[s.Symbol=0]="Symbol",s[s.Label=1]="Label",s[s.Keyword=2]="Keyword",s[s.This=3]="This",s[s.String=4]="String",s[s.TripleSlashReference=5]="TripleSlashReference",s))(qAn||{}),$An=(s=>(s[s.Span=0]="Span",s[s.Node=1]="Node",s[s.StringLiteral=2]="StringLiteral",s[s.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",s[s.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",s))($An||{});function HF(s,c=1){return{kind:c,node:s.name||s,context:u9s(s)}}function kXt(s){return s&&s.kind===void 0}function u9s(s){if(jh(s))return LU(s);if(s.parent){if(!jh(s.parent)&&!Cf(s.parent)){if(wo(s)){let g=fo(s.parent)?s.parent:_p(s.parent)&&fo(s.parent.parent)&&s.parent.parent.left===s.parent?s.parent.parent:void 0;if(g&&nI(g)!==0)return LU(g)}if($T(s.parent)||rQ(s.parent))return s.parent.parent;if(_U(s.parent)||FP(s.parent)||AY(s.parent))return s.parent;if(mA(s)){let g=B7(s);if(g){let d=ji(g,h=>jh(h)||Lc(h)||u3(h));return jh(d)?LU(d):d}}let c=ji(s,Un);return c?LU(c.parent):void 0}if(s.parent.name===s||Tc(s.parent)||Cf(s.parent)||(eS(s.parent)||hg(s.parent))&&s.parent.propertyName===s||s.kind===90&&Ga(s.parent,2080))return LU(s.parent)}}function LU(s){if(s)switch(s.kind){case 261:return!u_(s.parent)||s.parent.declarations.length!==1?s:Ch(s.parent.parent)?s.parent.parent:DL(s.parent.parent)?LU(s.parent.parent):s.parent;case 209:return LU(s.parent.parent);case 277:return s.parent.parent.parent;case 282:case 275:return s.parent.parent;case 274:case 281:return s.parent;case 227:return VC(s.parent)?s.parent:s;case 251:case 250:return{start:s.initializer,end:s.expression};case 304:case 305:return e9(s.parent)?LU(ji(s.parent,c=>fo(c)||DL(c))):s;case 256:return{start:de(s.getChildren(s.getSourceFile()),c=>c.kind===109),end:s.caseBlock};default:return s}}function xXt(s,c,g){if(!g)return;let d=kXt(g)?KPe(g.start,c,g.end):KPe(g,c);return d.start!==s.start||d.length!==s.length?{contextSpan:d}:void 0}var edn=(s=>(s[s.Other=0]="Other",s[s.References=1]="References",s[s.Rename=2]="Rename",s))(edn||{});function g9s(s,c,g,d,h){let _=Lb(d,h),S={use:1},R=Uz.getReferencedSymbolsForNode(h,_,s,g,c,S),T=s.getTypeChecker(),W=Uz.getAdjustedNode(_,S),V=A9s(W)?T.getSymbolAtLocation(W):void 0;return!R||!R.length?void 0:Xt(R,({definition:M,references:ee})=>M&&{definition:T.runWithCancellationToken(c,re=>f9s(M,re,_)),references:ee.map(re=>h9s(re,V))})}function A9s(s){return s.kind===90||!!T7(s)||Ine(s)||s.kind===137&&Tc(s.parent)}function d9s(s,c,g,d,h){let _=Lb(d,h),S,R=tdn(s,c,g,_,h);if(_.parent.kind===212||_.parent.kind===209||_.parent.kind===213||_.kind===108)S=R&&[...R];else if(R){let W=oA(R),V=new Set;for(;!W.isEmpty();){let M=W.dequeue();if(!Zy(V,rd(M.node)))continue;S=Ft(S,M);let ee=tdn(s,c,g,M.node,M.node.pos);ee&&W.enqueue(...ee)}}let T=s.getTypeChecker();return At(S,W=>C9s(W,T))}function tdn(s,c,g,d,h){if(d.kind===308)return;let _=s.getTypeChecker();if(d.parent.kind===305){let S=[];return Uz.getReferenceEntriesForShorthandPropertyAssignment(d,_,R=>S.push(HF(R))),S}else if(d.kind===108||xy(d.parent)){let S=_.getSymbolAtLocation(d);return S.valueDeclaration&&[HF(S.valueDeclaration)]}else return rdn(h,d,s,g,c,{implementations:!0,use:1})}function p9s(s,c,g,d,h,_,S){return At(ndn(Uz.getReferencedSymbolsForNode(h,d,s,g,c,_)),R=>S(R,d,s.getTypeChecker()))}function rdn(s,c,g,d,h,_={},S=new Set(d.map(R=>R.fileName))){return ndn(Uz.getReferencedSymbolsForNode(s,c,g,d,h,_,S))}function ndn(s){return s&&er(s,c=>c.references)}function f9s(s,c,g){let d=(()=>{switch(s.type){case 0:{let{symbol:V}=s,{displayParts:M,kind:ee}=idn(V,c,g),re=M.map(_e=>_e.text).join(""),ge=V.declarations&&Nc(V.declarations),Ie=ge?Il(ge)||ge:g;return{...UPe(Ie),name:re,kind:ee,displayParts:M,context:LU(ge)}}case 1:{let{node:V}=s;return{...UPe(V),name:V.text,kind:"label",displayParts:[SE(V.text,17)]}}case 2:{let{node:V}=s,M=Vi(V.kind);return{...UPe(V),name:M,kind:"keyword",displayParts:[{text:M,kind:"keyword"}]}}case 3:{let{node:V}=s,M=c.getSymbolAtLocation(V),ee=M&&i9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,M,V.getSourceFile(),kU(V),V).displayParts||[gS("this")];return{...UPe(V),name:"this",kind:"var",displayParts:ee}}case 4:{let{node:V}=s;return{...UPe(V),name:V.text,kind:"var",displayParts:[SE(xp(V),8)]}}case 5:return{textSpan:t9(s.reference),sourceFile:s.file,name:s.reference.fileName,kind:"string",displayParts:[SE(`"${s.reference.fileName}"`,8)]};default:return pe.assertNever(s)}})(),{sourceFile:h,textSpan:_,name:S,kind:R,displayParts:T,context:W}=d;return{containerKind:"",containerName:"",fileName:h.fileName,kind:R,name:S,textSpan:_,displayParts:T,...xXt(_,h,W)}}function UPe(s){let c=s.getSourceFile();return{sourceFile:c,textSpan:KPe(Un(s)?s.expression:s,c)}}function idn(s,c,g){let d=Uz.getIntersectingMeaningFromDeclarations(g,s),h=s.declarations&&Nc(s.declarations)||g,{displayParts:_,symbolKind:S}=i9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,s,h.getSourceFile(),h,h,d);return{displayParts:_,kind:S}}function I9s(s,c,g,d,h){return{...Yit(s),...d&&m9s(s,c,g,h)}}function h9s(s,c){let g=sdn(s);return c?{...g,isDefinition:s.kind!==0&&adn(s.node,c)}:g}function sdn(s){let c=Yit(s);if(s.kind===0)return{...c,isWriteAccess:!1};let{kind:g,node:d}=s;return{...c,isWriteAccess:GXt(d),isInString:g===2?!0:void 0}}function Yit(s){if(s.kind===0)return{textSpan:s.textSpan,fileName:s.fileName};{let c=s.node.getSourceFile(),g=KPe(s.node,c);return{textSpan:g,fileName:c.fileName,...xXt(g,c,s.context)}}}function m9s(s,c,g,d){if(s.kind!==0&&(Ir(c)||mA(c))){let{node:h,kind:_}=s,S=h.parent,R=c.text,T=a0(S);if(T||f1e(S)&&S.name===h&&S.dotDotDotToken===void 0){let W={prefixText:R+": "},V={suffixText:": "+R};if(_===3)return W;if(_===4)return V;if(T){let M=S.parent;return og(M)&&fo(M.parent)&&cN(M.parent.left)?W:V}else return W}else if(uy(S)&&!S.propertyName){let W=R0(c.parent)?g.getExportSpecifierLocalTargetSymbol(c.parent):g.getSymbolAtLocation(c);return k(W.declarations,S)?{prefixText:R+" as "}:VB}else if(R0(S)&&!S.propertyName)return c===s.node||g.getSymbolAtLocation(c)===g.getSymbolAtLocation(s.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(s.kind!==0&&mC(s.node)&&_p(s.node.parent)){let h=Mrt(d);return{prefixText:h,suffixText:h}}return VB}function C9s(s,c){let g=Yit(s);if(s.kind!==0){let{node:d}=s;return{...g,..._9s(d,c)}}else return{...g,kind:"",displayParts:[]}}function _9s(s,c){let g=c.getSymbolAtLocation(jh(s)&&s.name?s.name:s);return g?idn(g,c,s):s.kind===211?{kind:"interface",displayParts:[k0(21),gS("object literal"),k0(22)]}:s.kind===232?{kind:"local class",displayParts:[k0(21),gS("anonymous local class"),k0(22)]}:{kind:pQ(s),displayParts:[]}}function y9s(s){let c=Yit(s);if(s.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let g=GXt(s.node),d={textSpan:c.textSpan,kind:g?"writtenReference":"reference",isInString:s.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function KPe(s,c,g){let d=s.getStart(c),h=(g||s).getEnd();return mA(s)&&h-d>2&&(pe.assert(g===void 0),d+=1,h-=1),g?.kind===270&&(h=g.getFullStart()),wA(d,h)}function odn(s){return s.kind===0?s.textSpan:KPe(s.node,s.node.getSourceFile())}function GXt(s){let c=T7(s);return!!c&&b9s(c)||s.kind===90||B3(s)}function adn(s,c){var g;if(!c)return!1;let d=T7(s)||(s.kind===90?s.parent:Ine(s)||s.kind===137&&Tc(s.parent)?s.parent.parent:void 0),h=d&&fo(d)?d.left:void 0;return!!(d&&((g=c.declarations)!=null&&g.some(_=>_===d||_===h)))}function b9s(s){if(s.flags&33554432)return!0;switch(s.kind){case 227:case 209:case 264:case 232:case 90:case 267:case 307:case 282:case 274:case 272:case 277:case 265:case 339:case 347:case 292:case 268:case 271:case 275:case 281:case 170:case 305:case 266:case 169:return!0;case 304:return!e9(s.parent);case 263:case 219:case 177:case 175:case 178:case 179:return!!s.body;case 261:case 173:return!!s.initializer||iQ(s.parent);case 174:case 172:case 349:case 342:return!1;default:return pe.failBadSyntaxKind(s)}}var Uz;(s=>{function c(Pr,Pn,pt,on,it,nr={},Fr=new Set(on.map(Kr=>Kr.fileName))){var Kr,Dn;if(Pn=g(Pn,nr),ll(Pn)){let ds=ise.getReferenceAtPosition(Pn,Pr,pt);if(!ds?.file)return;let Mt=pt.getTypeChecker().getMergedSymbol(ds.file.symbol);if(Mt)return W(pt,Mt,!1,on,Fr);let cn=pt.getFileIncludeReasons();return cn?[{definition:{type:5,reference:ds.reference,file:Pn},references:h(ds.file,cn,pt)||E}]:void 0}if(!nr.implementations){let ds=M(Pn,on,it);if(ds)return ds}let hr=pt.getTypeChecker(),Sn=hr.getSymbolAtLocation(Tc(Pn)&&Pn.parent.name||Pn);if(!Sn){if(!nr.implementations&&mA(Pn)){if(qVe(Pn)){let ds=pt.getFileIncludeReasons(),Mt=(Dn=(Kr=pt.getResolvedModuleFromModuleSpecifier(Pn))==null?void 0:Kr.resolvedModule)==null?void 0:Dn.resolvedFileName,cn=Mt?pt.getSourceFile(Mt):void 0;if(cn)return[{definition:{type:4,node:Pn},references:h(cn,ds,pt)||E}]}return ba(Pn,on,hr,it)}return}if(Sn.escapedName==="export=")return W(pt,Sn.parent,!1,on,Fr);let Ni=S(Sn,pt,on,it,nr,Fr);if(Ni&&!(Sn.flags&33554432))return Ni;let Gi=_(Pn,Sn,hr),nn=Gi&&S(Gi,pt,on,it,nr,Fr),En=ee(Sn,Pn,on,Fr,hr,it,nr);return R(pt,Ni,En,nn)}s.getReferencedSymbolsForNode=c;function g(Pr,Pn){return Pn.use===1?Pr=wrt(Pr):Pn.use===2&&(Pr=MVe(Pr)),Pr}s.getAdjustedNode=g;function d(Pr,Pn,pt,on=new Set(pt.map(it=>it.fileName))){var it,nr;let Fr=(it=Pn.getSourceFile(Pr))==null?void 0:it.symbol;if(Fr)return((nr=W(Pn,Fr,!1,pt,on)[0])==null?void 0:nr.references)||E;let Kr=Pn.getFileIncludeReasons(),Dn=Pn.getSourceFile(Pr);return Dn&&Kr&&h(Dn,Kr,Pn)||E}s.getReferencesForFileName=d;function h(Pr,Pn,pt){let on,it=Pn.get(Pr.path)||E;for(let nr of it)if(K3(nr)){let Fr=pt.getSourceFileByPath(nr.file),Kr=Lde(pt,nr);Zie(Kr)&&(on=Ft(on,{kind:0,fileName:Fr.fileName,textSpan:t9(Kr)}))}return on}function _(Pr,Pn,pt){if(Pr.parent&&oEe(Pr.parent)){let on=pt.getAliasedSymbol(Pn),it=pt.getMergedSymbol(on);if(on!==it)return it}}function S(Pr,Pn,pt,on,it,nr){let Fr=Pr.flags&1536&&Pr.declarations&&de(Pr.declarations,ll);if(!Fr)return;let Kr=Pr.exports.get("export="),Dn=W(Pn,Pr,!!Kr,pt,nr);if(!Kr||!nr.has(Fr.fileName))return Dn;let hr=Pn.getTypeChecker();return Pr=FC(Kr,hr),R(Pn,Dn,ee(Pr,void 0,pt,nr,hr,on,it))}function R(Pr,...Pn){let pt;for(let on of Pn)if(!(!on||!on.length)){if(!pt){pt=on;continue}for(let it of on){if(!it.definition||it.definition.type!==0){pt.push(it);continue}let nr=it.definition.symbol,Fr=Se(pt,Dn=>!!Dn.definition&&Dn.definition.type===0&&Dn.definition.symbol===nr);if(Fr===-1){pt.push(it);continue}let Kr=pt[Fr];pt[Fr]={definition:Kr.definition,references:Kr.references.concat(it.references).sort((Dn,hr)=>{let Sn=T(Pr,Dn),Ni=T(Pr,hr);if(Sn!==Ni)return Zt(Sn,Ni);let Gi=odn(Dn),nn=odn(hr);return Gi.start!==nn.start?Zt(Gi.start,nn.start):Zt(Gi.length,nn.length)})}}}return pt}function T(Pr,Pn){let pt=Pn.kind===0?Pr.getSourceFile(Pn.fileName):Pn.node.getSourceFile();return Pr.getSourceFiles().indexOf(pt)}function W(Pr,Pn,pt,on,it){pe.assert(!!Pn.valueDeclaration);let nr=Xt(UAn(Pr,on,Pn),Kr=>{if(Kr.kind==="import"){let Dn=Kr.literal.parent;if(EE(Dn)){let hr=Ma(Dn.parent,Um);if(pt&&!hr.qualifier)return}return HF(Kr.literal)}else if(Kr.kind==="implicit"){let Dn=Kr.literal.text!==PD&&Sz(Kr.referencingFile,hr=>hr.transformFlags&2?bN(hr)||_U(hr)||P3(hr)?hr:void 0:"skip")||Kr.referencingFile.statements[0]||Kr.referencingFile;return HF(Dn)}else return{kind:0,fileName:Kr.referencingFile.fileName,textSpan:t9(Kr.ref)}});if(Pn.declarations)for(let Kr of Pn.declarations)switch(Kr.kind){case 308:break;case 268:it.has(Kr.getSourceFile().fileName)&&nr.push(HF(Kr.name));break;default:pe.assert(!!(Pn.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Fr=Pn.exports.get("export=");if(Fr?.declarations)for(let Kr of Fr.declarations){let Dn=Kr.getSourceFile();if(it.has(Dn.fileName)){let hr=fo(Kr)&&jo(Kr.left)?Kr.left.expression:Cf(Kr)?pe.checkDefined(qd(Kr,95,Dn)):Il(Kr)||Kr;nr.push(HF(hr))}}return nr.length?[{definition:{type:0,symbol:Pn},references:nr}]:E}function V(Pr){return Pr.kind===148&&xB(Pr.parent)&&Pr.parent.operator===148}function M(Pr,Pn,pt){if(Xde(Pr.kind))return Pr.kind===116&&qT(Pr.parent)||Pr.kind===148&&!V(Pr)?void 0:_r(Pn,Pr.kind,pt,Pr.kind===148?V:void 0);if(uv(Pr.parent)&&Pr.parent.name===Pr)return Pt(Pn,pt);if(Ge(Pr)&&fl(Pr.parent))return[{definition:{type:2,node:Pr},references:[HF(Pr)]}];if(a1e(Pr)){let on=ZVe(Pr.parent,Pr.text);return on&&Lt(on.parent,on)}else if(mrt(Pr))return Lt(Pr.parent,Pr);if(Mie(Pr))return Gl(Pr,Pn,pt);if(Pr.kind===108)return Zn(Pr)}function ee(Pr,Pn,pt,on,it,nr,Fr){let Kr=Pn&&Ie(Pr,Pn,it,!Tu(Fr))||Pr,Dn=Pn&&Fr.use!==2?pa(Pn,Kr):7,hr=[],Sn=new Ne(pt,on,Pn?ge(Pn):0,it,nr,Dn,Fr,hr),Ni=!Tu(Fr)||!Kr.declarations?void 0:de(Kr.declarations,R0);if(Ni)Gr(Ni.name,Kr,Ni,Sn.createSearch(Pn,Pr,void 0),Sn,!0,!0);else if(Pn&&Pn.kind===90&&Kr.escapedName==="default"&&Kr.parent)zt(Pn,Kr,Sn),Te(Pn,Kr,{exportingModuleSymbol:Kr.parent,exportKind:1},Sn);else{let Gi=Sn.createSearch(Pn,Kr,void 0,{allSearchSymbols:Pn?hc(Kr,Pn,it,Fr.use===2,!!Fr.providePrefixAndSuffixTextForRename,!!Fr.implementations):[Kr]});re(Kr,Sn,Gi)}return hr}function re(Pr,Pn,pt){let on=Tt(Pr);if(on)nt(on,on.getSourceFile(),pt,Pn,!(ll(on)&&!k(Pn.sourceFiles,on)));else for(let it of Pn.sourceFiles)Pn.cancellationToken.throwIfCancellationRequested(),$e(it,pt,Pn)}function ge(Pr){switch(Pr.kind){case 177:case 137:return 1;case 80:if(xa(Pr.parent))return pe.assert(Pr.parent.name===Pr),2;default:return 0}}function Ie(Pr,Pn,pt,on){let{parent:it}=Pn;return R0(it)&&on?dt(Pn,Pr,it,pt):X(Pr.declarations,nr=>{if(!nr.parent){if(Pr.flags&33554432)return;pe.fail(`Unexpected symbol at ${pe.formatSyntaxKind(Pn.kind)}: ${pe.formatSymbol(Pr)}`)}return mh(nr.parent)&&aS(nr.parent.parent)?pt.getPropertyOfType(pt.getTypeFromTypeNode(nr.parent.parent),Pr.name):void 0})}let _e;(Pr=>{Pr[Pr.None=0]="None",Pr[Pr.Constructor=1]="Constructor",Pr[Pr.Class=2]="Class"})(_e||(_e={}));function Ee(Pr){if(!(Pr.flags&33555968))return;let Pn=Pr.declarations&&de(Pr.declarations,pt=>!ll(pt)&&!xh(pt));return Pn&&Pn.symbol}class Ne{constructor(Pn,pt,on,it,nr,Fr,Kr,Dn){this.sourceFiles=Pn,this.sourceFilesSet=pt,this.specialSearchKind=on,this.checker=it,this.cancellationToken=nr,this.searchMeaning=Fr,this.options=Kr,this.result=Dn,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=Qie(),this.markSeenReExportRHS=Qie(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(Pn){return this.sourceFilesSet.has(Pn.fileName)}getImportSearches(Pn,pt){return this.importTracker||(this.importTracker=RXt(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(Pn,pt,this.options.use===2)}createSearch(Pn,pt,on,it={}){let{text:nr=l2(nf(W7(pt)||Ee(pt)||pt)),allSearchSymbols:Fr=[pt]}=it,Kr=Ap(nr),Dn=this.options.implementations&&Pn?Cs(Pn,pt,this.checker):void 0;return{symbol:pt,comingFrom:on,text:nr,escapedText:Kr,parents:Dn,allSearchSymbols:Fr,includes:hr=>k(Fr,hr)}}referenceAdder(Pn){let pt=kg(Pn),on=this.symbolIdToReferences[pt];return on||(on=this.symbolIdToReferences[pt]=[],this.result.push({definition:{type:0,symbol:Pn},references:on})),(it,nr)=>on.push(HF(it,nr))}addStringOrCommentReference(Pn,pt){this.result.push({definition:void 0,references:[{kind:0,fileName:Pn,textSpan:pt}]})}markSearchedSymbols(Pn,pt){let on=rd(Pn),it=this.sourceFileToSeenSymbols[on]||(this.sourceFileToSeenSymbols[on]=new Set),nr=!1;for(let Fr of pt)nr=Ar(it,kg(Fr))||nr;return nr}}function Te(Pr,Pn,pt,on){let{importSearches:it,singleReferences:nr,indirectUsers:Fr}=on.getImportSearches(Pn,pt);if(nr.length){let Kr=on.referenceAdder(Pn);for(let Dn of nr)We(Dn,on)&&Kr(Dn)}for(let[Kr,Dn]of it)Gt(Kr.getSourceFile(),on.createSearch(Kr,Dn,1),on);if(Fr.length){let Kr;switch(pt.exportKind){case 0:Kr=on.createSearch(Pr,Pn,1);break;case 1:Kr=on.options.use===2?void 0:on.createSearch(Pr,Pn,1,{text:"default"});break;case 2:break}if(Kr)for(let Dn of Fr)$e(Dn,Kr,on)}}function Ze(Pr,Pn,pt,on,it,nr,Fr,Kr){let Dn=RXt(Pr,new Set(Pr.map(Gi=>Gi.fileName)),Pn,pt),{importSearches:hr,indirectUsers:Sn,singleReferences:Ni}=Dn(on,{exportKind:Fr?1:0,exportingModuleSymbol:it},!1);for(let[Gi]of hr)Kr(Gi);for(let Gi of Ni)Ir(Gi)&&Um(Gi.parent)&&Kr(Gi);for(let Gi of Sn)for(let nn of _t(Gi,Fr?"default":nr)){let En=Pn.getSymbolAtLocation(nn),ds=jt(En?.declarations,Mt=>!!Gs(Mt,Cf));Ir(nn)&&!eS(nn.parent)&&(En===on||ds)&&Kr(nn)}}s.eachExportReference=Ze;function We(Pr,Pn){return Dt(Pr,Pn)?Pn.options.use!==2?!0:!Ir(Pr)&&!eS(Pr.parent)?!1:!(eS(Pr.parent)&&lv(Pr)):!1}function Ue(Pr,Pn){if(Pr.declarations)for(let pt of Pr.declarations){let on=pt.getSourceFile();Gt(on,Pn.createSearch(pt,Pr,0),Pn,Pn.includesSourceFile(on))}}function $e(Pr,Pn,pt){eit(Pr).get(Pn.escapedText)!==void 0&&Gt(Pr,Pn,pt)}function Ye(Pr,Pn){return e9(Pr.parent.parent)?Pn.getPropertySymbolOfDestructuringAssignment(Pr):void 0}function Tt(Pr){let{declarations:Pn,flags:pt,parent:on,valueDeclaration:it}=Pr;if(it&&(it.kind===219||it.kind===232))return it;if(!Pn)return;if(pt&8196){let Kr=de(Pn,Dn=>Gb(Dn,2)||pC(Dn));return Kr?ML(Kr,264):void 0}if(Pn.some(f1e))return;let nr=on&&!(Pr.flags&262144);if(nr&&!(WD(on)&&!on.globalExports))return;let Fr;for(let Kr of Pn){let Dn=kU(Kr);if(Fr&&Fr!==Dn||!Dn||Dn.kind===308&&!vl(Dn))return;if(Fr=Dn,UA(Fr)){let hr;for(;hr=Bye(Fr);)Fr=hr}}return nr?Fr.getSourceFile():Fr}function ot(Pr,Pn,pt,on=pt){return Qe(Pr,Pn,pt,()=>!0,on)||!1}s.isSymbolReferencedInFile=ot;function Qe(Pr,Pn,pt,on,it=pt){let nr=Ve(Pr.parent,Pr.parent.parent)?ma(Pn.getSymbolsOfParameterPropertyDeclaration(Pr.parent,Pr.text)):Pn.getSymbolAtLocation(Pr);if(nr)for(let Fr of _t(pt,nr.name,it)){if(!Ir(Fr)||Fr===Pr||Fr.escapedText!==Pr.escapedText)continue;let Kr=Pn.getSymbolAtLocation(Fr);if(Kr===nr||Pn.getShorthandAssignmentValueSymbol(Fr.parent)===nr||R0(Fr.parent)&&dt(Fr,Kr,Fr.parent,Pn)===nr){let Dn=on(Fr);if(Dn)return Dn}}}s.eachSymbolReferenceInFile=Qe;function mt(Pr,Pn){return Me(_t(Pn,Pr),it=>!!T7(it)).reduce((it,nr)=>{let Fr=on(nr);return!jt(it.declarationNames)||Fr===it.depth?(it.declarationNames.push(nr),it.depth=Fr):FrSn===it)&&on(Fr,Dn))return!0}return!1}s.someSignatureUsage=ht;function _t(Pr,Pn,pt=Pr){return Xt(Rt(Pr,Pn,pt),on=>{let it=Lb(Pr,on);return it===Pr?void 0:it})}function Rt(Pr,Pn,pt=Pr){let on=[];if(!Pn||!Pn.length)return on;let it=Pr.text,nr=it.length,Fr=Pn.length,Kr=it.indexOf(Pn,pt.pos);for(;Kr>=0&&!(Kr>pt.end);){let Dn=Kr+Fr;(Kr===0||!s1(it.charCodeAt(Kr-1),99))&&(Dn===nr||!s1(it.charCodeAt(Dn),99))&&on.push(Kr),Kr=it.indexOf(Pn,Kr+Fr+1)}return on}function Lt(Pr,Pn){let pt=Pr.getSourceFile(),on=Pn.text,it=Xt(_t(pt,on,Pr),nr=>nr===Pn||a1e(nr)&&ZVe(nr,on)===Pn?HF(nr):void 0);return[{definition:{type:1,node:Pn},references:it}]}function Ke(Pr,Pn){switch(Pr.kind){case 81:if(O3(Pr.parent))return!0;case 80:return Pr.text.length===Pn.length;case 15:case 11:{let pt=Pr;return pt.text.length===Pn.length&&(LVe(pt)||brt(Pr)||j5t(Pr)||Zl(Pr.parent)&&f3(Pr.parent)&&Pr.parent.arguments[1]===Pr||eS(Pr.parent))}case 9:return LVe(Pr)&&Pr.text.length===Pn.length;case 90:return Pn.length===7;default:return!1}}function Pt(Pr,Pn){let pt=er(Pr,on=>(Pn.throwIfCancellationRequested(),Xt(_t(on,"meta",on),it=>{let nr=it.parent;if(uv(nr))return HF(nr)})));return pt.length?[{definition:{type:2,node:pt[0].node},references:pt}]:void 0}function _r(Pr,Pn,pt,on){let it=er(Pr,nr=>(pt.throwIfCancellationRequested(),Xt(_t(nr,Vi(Pn),nr),Fr=>{if(Fr.kind===Pn&&(!on||on(Fr)))return HF(Fr)})));return it.length?[{definition:{type:2,node:it[0].node},references:it}]:void 0}function Gt(Pr,Pn,pt,on=!0){return pt.cancellationToken.throwIfCancellationRequested(),nt(Pr,Pr,Pn,pt,on)}function nt(Pr,Pn,pt,on,it){if(on.markSearchedSymbols(Pn,pt.allSearchSymbols))for(let nr of Rt(Pn,pt.text,Pr))tr(Pn,nr,pt,on,it)}function Dt(Pr,Pn){return!!(DU(Pr)&Pn.searchMeaning)}function tr(Pr,Pn,pt,on,it){let nr=Lb(Pr,Pn);if(!Ke(nr,pt.text)){!on.options.implementations&&(on.options.findInStrings&&Zz(Pr,Pn)||on.options.findInComments&&lMt(Pr,Pn))&&on.addStringOrCommentReference(Pr.fileName,zd(Pn,pt.text.length));return}if(!Dt(nr,on))return;let Fr=on.checker.getSymbolAtLocation(nr);if(!Fr)return;let Kr=nr.parent;if(uy(Kr)&&Kr.propertyName===nr)return;if(R0(Kr)){pe.assert(nr.kind===80||nr.kind===11),Gr(nr,Fr,Kr,pt,on,it);return}if(dY(Kr)&&Kr.isNameFirst&&Kr.typeExpression&&yU(Kr.typeExpression.type)&&Kr.typeExpression.type.jsDocPropertyTags&&B(Kr.typeExpression.type.jsDocPropertyTags)){ur(Kr.typeExpression.type.jsDocPropertyTags,nr,pt,on);return}let Dn=lo(pt,Fr,nr,on);if(!Dn){ir(Fr,pt,on);return}switch(on.specialSearchKind){case 0:it&&zt(nr,Dn,on);break;case 1:Ht(nr,Pr,pt,on);break;case 2:Br(nr,pt,on);break;default:pe.assertNever(on.specialSearchKind)}wo(nr)&&hg(nr.parent)&&CP(nr.parent.parent.parent)&&(Fr=nr.parent.symbol,!Fr)||st(nr,Fr,pt,on)}function ur(Pr,Pn,pt,on){let it=on.referenceAdder(pt.symbol);zt(Pn,pt.symbol,on),F(Pr,nr=>{zi(nr.name)&&it(nr.name.left)})}function Gr(Pr,Pn,pt,on,it,nr,Fr){pe.assert(!Fr||!!it.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:Kr,propertyName:Dn,name:hr}=pt,Sn=Kr.parent,Ni=dt(Pr,Pn,pt,it.checker);if(!Fr&&!on.includes(Ni))return;if(Dn?Pr===Dn?(Sn.moduleSpecifier||Gi(),nr&&it.options.use!==2&&it.markSeenReExportRHS(hr)&&zt(hr,pe.checkDefined(pt.symbol),it)):it.markSeenReExportRHS(Pr)&&Gi():it.options.use===2&&lv(hr)||Gi(),!Tu(it.options)||Fr){let En=lv(Pr)||lv(pt.name)?1:0,ds=pe.checkDefined(pt.symbol),Mt=NXt(ds,En,it.checker);Mt&&Te(Pr,ds,Mt,it)}if(on.comingFrom!==1&&Sn.moduleSpecifier&&!Dn&&!Tu(it.options)){let nn=it.checker.getExportSpecifierLocalTargetSymbol(pt);nn&&Ue(nn,it)}function Gi(){nr&&zt(Pr,Ni,it)}}function dt(Pr,Pn,pt,on){return pr(Pr,pt)&&on.getExportSpecifierLocalTargetSymbol(pt)||Pn}function pr(Pr,Pn){let{parent:pt,propertyName:on,name:it}=Pn;return pe.assert(on===Pr||it===Pr),on?on===Pr:!pt.parent.moduleSpecifier}function st(Pr,Pn,pt,on){let it=zAn(Pr,Pn,on.checker,pt.comingFrom===1);if(!it)return;let{symbol:nr}=it;it.kind===0?Tu(on.options)||Ue(nr,on):Te(Pr,nr,it.exportInfo,on)}function ir({flags:Pr,valueDeclaration:Pn},pt,on){let it=on.checker.getShorthandAssignmentValueSymbol(Pn),nr=Pn&&Il(Pn);!(Pr&33554432)&&nr&&pt.includes(it)&&zt(nr,it,on)}function zt(Pr,Pn,pt){let{kind:on,symbol:it}="kind"in Pn?Pn:{kind:void 0,symbol:Pn};if(pt.options.use===2&&Pr.kind===90)return;let nr=pt.referenceAdder(it);pt.options.implementations?si(Pr,nr,pt):nr(Pr,on)}function Ht(Pr,Pn,pt,on){Mde(Pr)&&zt(Pr,pt.symbol,on);let it=()=>on.referenceAdder(pt.symbol);if(xa(Pr.parent))pe.assert(Pr.kind===90||Pr.parent.name===Pr),mn(pt.symbol,Pn,it());else{let nr=Tg(Pr);nr&&(Zi(nr,it()),An(nr,on))}}function Br(Pr,Pn,pt){zt(Pr,Pn.symbol,pt);let on=Pr.parent;if(pt.options.use===2||!xa(on))return;pe.assert(on.name===Pr);let it=pt.referenceAdder(Pn.symbol);for(let nr of on.members)NL(nr)&&cg(nr)&&nr.body&&nr.body.forEachChild(function Fr(Kr){Kr.kind===110?it(Kr):!bu(Kr)&&!xa(Kr)&&Kr.forEachChild(Fr)})}function mn(Pr,Pn,pt){let on=jn(Pr);if(on&&on.declarations)for(let it of on.declarations){let nr=qd(it,137,Pn);pe.assert(it.kind===177&&!!nr),pt(nr)}Pr.exports&&Pr.exports.forEach(it=>{let nr=it.valueDeclaration;if(nr&&nr.kind===175){let Fr=nr.body;Fr&&Qu(Fr,110,Kr=>{Mde(Kr)&&pt(Kr)})}})}function jn(Pr){return Pr.members&&Pr.members.get("__constructor")}function Zi(Pr,Pn){let pt=jn(Pr.symbol);if(pt&&pt.declarations)for(let on of pt.declarations){pe.assert(on.kind===177);let it=on.body;it&&Qu(it,108,nr=>{frt(nr)&&Pn(nr)})}}function Ns(Pr){return!!jn(Pr.symbol)}function An(Pr,Pn){if(Ns(Pr))return;let pt=Pr.symbol,on=Pn.createSearch(void 0,pt,void 0);re(pt,Pn,on)}function si(Pr,Pn,pt){if(HT(Pr)&&Oa(Pr.parent)){Pn(Pr);return}if(Pr.kind!==80)return;Pr.parent.kind===305&&tl(Pr,pt.checker,Pn);let on=ks(Pr);if(on){Pn(on);return}let it=ji(Pr,Kr=>!zi(Kr.parent)&&!uc(Kr.parent)&&!Bx(Kr.parent)),nr=it.parent;if(If(nr)&&nr.type===it&&pt.markSeenContainingTypeReference(nr))if(WT(nr))Fr(nr.initializer);else if(bu(nr)&&nr.body){let Kr=nr.body;Kr.kind===242?yF(Kr,Dn=>{Dn.expression&&Fr(Dn.expression)}):Fr(Kr)}else(Ed(nr)||Qg(nr))&&Fr(nr.expression);function Fr(Kr){Ic(Kr)&&Pn(Kr)}}function ks(Pr){return Ir(Pr)||jo(Pr)?ks(Pr.parent):l_(Pr)?Gs(Pr.parent.parent,Hp(xa,g_)):void 0}function Ic(Pr){switch(Pr.kind){case 218:return Ic(Pr.expression);case 220:case 219:case 211:case 232:case 210:return!0;default:return!1}}function su(Pr,Pn,pt,on){if(Pr===Pn)return!0;let it=kg(Pr)+","+kg(Pn),nr=pt.get(it);if(nr!==void 0)return nr;pt.set(it,!1);let Fr=!!Pr.declarations&&Pr.declarations.some(Kr=>R7(Kr).some(Dn=>{let hr=on.getTypeAtLocation(Dn);return!!hr&&!!hr.symbol&&su(hr.symbol,Pn,pt,on)}));return pt.set(it,Fr),Fr}function Zn(Pr){let Pn=C7(Pr,!1);if(!Pn)return;let pt=256;switch(Pn.kind){case 173:case 172:case 175:case 174:case 177:case 178:case 179:pt&=Nx(Pn),Pn=Pn.parent;break;default:return}let on=Pn.getSourceFile(),it=Xt(_t(on,"super",Pn),nr=>{if(nr.kind!==108)return;let Fr=C7(nr,!1);return Fr&&cg(Fr)===!!pt&&Fr.parent.symbol===Pn.symbol?HF(nr):void 0});return[{definition:{type:0,symbol:Pn.symbol},references:it}]}function ya(Pr){return Pr.kind===80&&Pr.parent.kind===170&&Pr.parent.name===Pr}function Gl(Pr,Pn,pt){let on=r0(Pr,!1,!1),it=256;switch(on.kind){case 175:case 174:if(a2(on)){it&=Nx(on),on=on.parent;break}case 173:case 172:case 177:case 178:case 179:it&=Nx(on),on=on.parent;break;case 308:if(xm(on)||ya(Pr))return;case 263:case 219:break;default:return}let nr=er(on.kind===308?Pn:[on.getSourceFile()],Kr=>(pt.throwIfCancellationRequested(),_t(Kr,"this",ll(on)?Kr:on).filter(Dn=>{if(!Mie(Dn))return!1;let hr=r0(Dn,!1,!1);if(!mE(hr))return!1;switch(on.kind){case 219:case 263:return on.symbol===hr.symbol;case 175:case 174:return a2(on)&&on.symbol===hr.symbol;case 232:case 264:case 211:return hr.parent&&mE(hr.parent)&&on.symbol===hr.parent.symbol&&cg(hr)===!!it;case 308:return hr.kind===308&&!xm(hr)&&!ya(Dn)}}))).map(Kr=>HF(Kr));return[{definition:{type:3,node:X(nr,Kr=>Si(Kr.node.parent)?Kr.node:void 0)||Pr},references:nr}]}function ba(Pr,Pn,pt,on){let it=OVe(Pr,pt),nr=er(Pn,Fr=>(on.throwIfCancellationRequested(),Xt(_t(Fr,Pr.text),Kr=>{if(mA(Kr)&&Kr.text===Pr.text)if(it){let Dn=OVe(Kr,pt);if(it!==pt.getStringType()&&(it===Dn||Wo(Kr,pt)))return HF(Kr,2)}else return GP(Kr)&&!S3(Kr,Fr)?void 0:HF(Kr,2)})));return[{definition:{type:4,node:Pr},references:nr}]}function Wo(Pr,Pn){if(ss(Pr.parent))return Pn.getPropertyOfType(Pn.getTypeAtLocation(Pr.parent.parent),Pr.text)}function hc(Pr,Pn,pt,on,it,nr){let Fr=[];return yr(Pr,Pn,pt,on,!(on&&it),(Kr,Dn,hr)=>{hr&&Oi(Pr)!==Oi(hr)&&(hr=void 0),Fr.push(hr||Dn||Kr)},()=>!nr),Fr}function yr(Pr,Pn,pt,on,it,nr,Fr){let Kr=x1e(Pn);if(Kr){let En=pt.getShorthandAssignmentValueSymbol(Pn.parent);if(En&&on)return nr(En,void 0,void 0,3);let ds=pt.getContextualType(Kr.parent),Mt=ds&&X(FPe(Kr,pt,ds,!0),fr=>Gi(fr,4));if(Mt)return Mt;let cn=Ye(Pn,pt),Bt=cn&&nr(cn,void 0,void 0,4);if(Bt)return Bt;let xe=En&&nr(En,void 0,void 0,3);if(xe)return xe}let Dn=_(Pn,Pr,pt);if(Dn){let En=nr(Dn,void 0,void 0,1);if(En)return En}let hr=Gi(Pr);if(hr)return hr;if(Pr.valueDeclaration&&Ve(Pr.valueDeclaration,Pr.valueDeclaration.parent)){let En=pt.getSymbolsOfParameterPropertyDeclaration(Ma(Pr.valueDeclaration,Si),Pr.name);return pe.assert(En.length===2&&!!(En[0].flags&1)&&!!(En[1].flags&4)),Gi(Pr.flags&1?En[1]:En[0])}let Sn=Cp(Pr,282);if(!on||Sn&&!Sn.propertyName){let En=Sn&&pt.getExportSpecifierLocalTargetSymbol(Sn);if(En){let ds=nr(En,void 0,void 0,1);if(ds)return ds}}if(!on){let En;return it?En=f1e(Pn.parent)?$Ve(pt,Pn.parent):void 0:En=nn(Pr,pt),En&&Gi(En,4)}if(pe.assert(on),it){let En=nn(Pr,pt);return En&&Gi(En,4)}function Gi(En,ds){return X(pt.getRootSymbols(En),Mt=>nr(En,Mt,void 0,ds)||(Mt.parent&&Mt.parent.flags&96&&Fr(Mt)?hn(Mt.parent,Mt.name,pt,cn=>nr(En,Mt,cn,ds)):void 0))}function nn(En,ds){let Mt=Cp(En,209);if(Mt&&f1e(Mt))return $Ve(ds,Mt)}}function hn(Pr,Pn,pt,on){let it=new Set;return nr(Pr);function nr(Fr){if(!(!(Fr.flags&96)||!Zy(it,Fr)))return X(Fr.declarations,Kr=>X(R7(Kr),Dn=>{let hr=pt.getTypeAtLocation(Dn),Sn=hr.symbol&&pt.getPropertyOfType(hr,Pn);return Sn&&X(pt.getRootSymbols(Sn),on)||hr.symbol&&nr(hr.symbol)}))}}function Oi(Pr){return Pr.valueDeclaration?!!(o_(Pr.valueDeclaration)&256):!1}function lo(Pr,Pn,pt,on){let{checker:it}=on;return yr(Pn,pt,it,!1,on.options.use!==2||!!on.options.providePrefixAndSuffixTextForRename,(nr,Fr,Kr,Dn)=>(Kr&&Oi(Pn)!==Oi(Kr)&&(Kr=void 0),Pr.includes(Kr||Fr||nr)?{symbol:Fr&&!(iI(nr)&6)?Fr:nr,kind:Dn}:void 0),nr=>!(Pr.parents&&!Pr.parents.some(Fr=>su(nr.parent,Fr,on.inheritsFromCache,it))))}function pa(Pr,Pn){let pt=DU(Pr),{declarations:on}=Pn;if(on){let it;do{it=pt;for(let nr of on){let Fr=xVe(nr);Fr&pt&&(pt|=Fr)}}while(pt!==it)}return pt}s.getIntersectingMeaningFromDeclarations=pa;function Oa(Pr){return Pr.flags&33554432?!(g_(Pr)||FB(Pr)):I7(Pr)?WT(Pr):kd(Pr)?!!Pr.body:xa(Pr)||a3(Pr)}function tl(Pr,Pn,pt){let on=Pn.getSymbolAtLocation(Pr),it=Pn.getShorthandAssignmentValueSymbol(on.valueDeclaration);if(it)for(let nr of it.getDeclarations())xVe(nr)&1&&pt(nr)}s.getReferenceEntriesForShorthandPropertyAssignment=tl;function Qu(Pr,Pn,pt){Lu(Pr,on=>{on.kind===Pn&&pt(on),Qu(on,Pn,pt)})}function Tg(Pr){return ebe(FVe(Pr).parent)}function Cs(Pr,Pn,pt){let on=Oie(Pr)?Pr.parent:void 0,it=on&&pt.getTypeAtLocation(on.expression),nr=Xt(it&&(it.isUnionOrIntersection()?it.types:it.symbol===Pn.parent?void 0:[it]),Fr=>Fr.symbol&&Fr.symbol.flags&96?Fr.symbol:void 0);return nr.length===0?void 0:nr}function Tu(Pr){return Pr.use===2&&Pr.providePrefixAndSuffixTextForRename}})(Uz||(Uz={}));var ise={};o(ise,{createDefinitionInfo:()=>H1e,getDefinitionAndBoundSpan:()=>R9s,getDefinitionAtPosition:()=>cdn,getReferenceAtPosition:()=>udn,getTypeDefinitionAtPosition:()=>w9s});function cdn(s,c,g,d,h){var _;let S=udn(c,g,s),R=S&&[G9s(S.reference.fileName,S.fileName,S.unverified)]||E;if(S?.file)return R;let T=Lb(c,g);if(T===c)return;let{parent:W}=T,V=s.getTypeChecker();if(T.kind===164||Ir(T)&&t9e(W)&&W.tagName===T){let Ee=S9s(V,T);if(Ee!==void 0||T.kind!==164)return Ee||E}if(a1e(T)){let Ee=ZVe(T.parent,T.text);return Ee?[FXt(V,Ee,"label",T.text,void 0)]:void 0}switch(T.kind){case 90:if(!lde(T.parent))break;case 84:let Ee=ji(T.parent,ade);if(Ee)return[x9s(Ee,c)];break}let M;switch(T.kind){case 107:case 135:case 127:M=kd;let Ee=ji(T,M);return Ee?[LXt(V,Ee)]:void 0}if(Ge(T)&&fl(T.parent)){let Ee=T.parent.parent,{symbol:Ne,failedAliasResolution:Te}=Qit(Ee,V,h),Ze=Me(Ee.members,fl),We=Ne?V.symbolToString(Ne,Ee):"",Ue=T.getSourceFile();return At(Ze,$e=>{let{pos:Ye}=Av($e);return Ye=Yu(Ue.text,Ye),FXt(V,$e,"constructor","static {}",We,!1,Te,{start:Ye,length:6})})}let{symbol:ee,failedAliasResolution:re}=Qit(T,V,h),ge=T;if(d&&re){let Ee=F([T,...ee?.declarations||E],Te=>ji(Te,Nge)),Ne=Ee&&ZY(Ee);Ne&&({symbol:ee,failedAliasResolution:re}=Qit(Ne,V,h),ge=Ne)}if(!ee&&qVe(ge)){let Ee=(_=s.getResolvedModuleFromModuleSpecifier(ge,c))==null?void 0:_.resolvedModule;if(Ee)return[{name:ge.text,fileName:Ee.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:zd(0,0),failedAliasResolution:re,isAmbient:PC(Ee.resolvedFileName),unverified:ge!==T}]}if(Ig(T)&&(PI(W)||rh(W))&&(ee=W.symbol),!ee)return Nn(R,N9s(T,V));if(d&&ue(ee.declarations,Ee=>Ee.getSourceFile().fileName===c.fileName))return;let Ie=Z9s(V,T);if(Ie&&!(eI(T.parent)&&L9s(Ie))){let Ee=LXt(V,Ie,re),Ne=Ze=>Ze!==Ie;if(V.getRootSymbols(ee).some(Ze=>E9s(Ze,Ie))){if(!Tc(Ie))return[Ee];Ne=Ze=>Ze!==Ie&&(pm(Ze)||vd(Ze))}let Te=Ape(V,ee,T,re,Ne)||E;return T.kind===108?[Ee,...Te]:[...Te,Ee]}if(T.parent.kind===305){let Ee=V.getShorthandAssignmentValueSymbol(ee.valueDeclaration),Ne=Ee?.declarations?Ee.declarations.map(Te=>H1e(Te,V,Ee,T,!1,re)):E;return Nn(Ne,ldn(V,T))}if(VI(T)&&hg(W)&&Km(W.parent)&&T===(W.propertyName||W.name)){let Ee=p1e(T),Ne=V.getTypeAtLocation(W.parent);return Ee===void 0?E:er(Ne.isUnion()?Ne.types:[Ne],Te=>{let Ze=Te.getProperty(Ee);return Ze&&Ape(V,Ze,T)})}let _e=ldn(V,T);return Nn(R,_e.length?_e:Ape(V,ee,T,re))}function E9s(s,c){var g;return s===c.symbol||s===c.symbol.parent||Jm(c.parent)||!hF(c.parent)&&s===((g=Gs(c.parent,mE))==null?void 0:g.symbol)}function ldn(s,c){let g=x1e(c);if(g){let d=g&&s.getContextualType(g.parent);if(d)return er(FPe(g,s,d,!1),h=>Ape(s,h,c))}return E}function S9s(s,c){let g=ji(c,PI);if(!(g&&g.name))return;let d=ji(g,xa);if(!d)return;let h=BB(d);if(!h)return;let _=QA(h.expression),S=vd(_)?_.symbol:s.getSymbolAtLocation(_);if(!S)return;let R=zh(g)?s.getTypeOfSymbol(S):s.getDeclaredTypeOfSymbol(S),T;if(Un(g.name)){let W=s.getSymbolAtLocation(g.name);if(!W)return;k7(W)?T=de(s.getPropertiesOfType(R),V=>V.escapedName===W.escapedName):T=s.getPropertyOfType(R,Bc(W.escapedName))}else T=s.getPropertyOfType(R,Bc(hP(g.name)));if(T)return Ape(s,T,c)}function udn(s,c,g){var d,h;let _=Y1e(s.referencedFiles,c);if(_){let T=g.getSourceFileFromReference(s,_);return T&&{reference:_,fileName:T.fileName,file:T,unverified:!1}}let S=Y1e(s.typeReferenceDirectives,c);if(S){let T=(d=g.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S,s))==null?void 0:d.resolvedTypeReferenceDirective,W=T&&g.getSourceFile(T.resolvedFileName);return W&&{reference:S,fileName:W.fileName,file:W,unverified:!1}}let R=Y1e(s.libReferenceDirectives,c);if(R){let T=g.getLibFileFromReference(R);return T&&{reference:R,fileName:T.fileName,file:T,unverified:!1}}if(s.imports.length||s.moduleAugmentations.length){let T=Yie(s,c),W;if(qVe(T)&&Xr(T.text)&&(W=g.getResolvedModuleFromModuleSpecifier(T,s))){let V=(h=W.resolvedModule)==null?void 0:h.resolvedFileName,M=V||AE(Mo(s.fileName),T.text);return{file:g.getSourceFile(M),fileName:M,reference:{pos:T.getStart(),end:T.getEnd(),fileName:T.text},unverified:!V}}}}var gdn=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function v9s(s,c){let g=c.symbol.name;if(!gdn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.target.symbol}function Adn(s,c){if(!c.aliasSymbol)return!1;let g=c.aliasSymbol.name;if(!gdn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function B9s(s,c,g,d){var h,_;if(la(c)&4&&v9s(s,c))return M1e(s.getTypeArguments(c)[0],s,g,d);if(Adn(s,c)&&c.aliasTypeArguments)return M1e(c.aliasTypeArguments[0],s,g,d);if(la(c)&32&&c.target&&Adn(s,c.target)){let S=(_=(h=c.aliasSymbol)==null?void 0:h.declarations)==null?void 0:_[0];if(S&&FB(S)&&nh(S.type)&&S.type.typeArguments)return M1e(s.getTypeAtLocation(S.type.typeArguments[0]),s,g,d)}return[]}function w9s(s,c,g){let d=Lb(c,g);if(d===c)return;if(uv(d.parent)&&d.parent.name===d)return M1e(s.getTypeAtLocation(d.parent),s,d.parent,!1);let{symbol:h,failedAliasResolution:_}=Qit(d,s,!1);if(Ig(d)&&(PI(d.parent)||rh(d.parent))&&(h=d.parent.symbol,_=!1),!h)return;let S=s.getTypeOfSymbolAtLocation(h,d),R=T9s(h,S,s),T=R&&M1e(R,s,d,_),[W,V]=T&&T.length!==0?[R,T]:[S,M1e(S,s,d,_)];return V.length?[...B9s(s,W,d,_),...V]:!(h.flags&111551)&&h.flags&788968?Ape(s,FC(h,s),d,_):void 0}function M1e(s,c,g,d){return er(s.isUnion()&&!(s.flags&32)?s.types:[s],h=>h.symbol&&Ape(c,h.symbol,g,d))}function T9s(s,c,g){if(c.symbol===s||s.valueDeclaration&&c.symbol&&nc(s.valueDeclaration)&&s.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return g.getReturnTypeOfSignature(ma(d))}}function R9s(s,c,g){let d=cdn(s,c,g);if(!d||d.length===0)return;let h=Y1e(c.referencedFiles,g)||Y1e(c.typeReferenceDirectives,g)||Y1e(c.libReferenceDirectives,g);if(h)return{definitions:d,textSpan:t9(h)};let _=Lb(c,g),S=zd(_.getStart(),_.getWidth());return{definitions:d,textSpan:S}}function N9s(s,c){return Xt(c.getIndexInfosAtLocation(s),g=>g.declaration&&LXt(c,g.declaration))}function Qit(s,c,g){let d=c.getSymbolAtLocation(s),h=!1;if(d?.declarations&&d.flags&2097152&&!g&&D9s(s,d.declarations[0])){let _=c.getAliasedSymbol(d);if(_.declarations)return{symbol:_};h=!0}return{symbol:d,failedAliasResolution:h}}function D9s(s,c){return s.kind!==80&&(s.kind!==11||!eS(s.parent))?!1:s.parent===c?!0:c.kind!==275}function k9s(s){if(!b7(s))return!1;let c=ji(s,g=>Jm(g)?!0:b7(g)?!1:"quit");return!!c&&nI(c)===5}function Ape(s,c,g,d,h){let _=h!==void 0?Me(c.declarations,h):c.declarations,S=!h&&(W()||V());if(S)return S;let R=Me(_,ee=>!k9s(ee)),T=jt(R)?R:_;return At(T,ee=>H1e(ee,s,c,g,!1,d));function W(){if(c.flags&32&&!(c.flags&19)&&(Mde(g)||g.kind===137)){let ee=de(_,xa);return ee&&M(ee.members,!0)}}function V(){return Irt(g)||Ert(g)?M(_,!1):void 0}function M(ee,re){if(!ee)return;let ge=ee.filter(re?Tc:bu),Ie=ge.filter(_e=>!!_e.body);return ge.length?Ie.length!==0?Ie.map(_e=>H1e(_e,s,c,g)):[H1e(Ei(ge),s,c,g,!1,d)]:void 0}}function H1e(s,c,g,d,h,_){let S=c.symbolToString(g),R=i9.getSymbolKind(c,g,d),T=g.parent?c.symbolToString(g.parent,d):"";return FXt(c,s,R,S,T,h,_)}function FXt(s,c,g,d,h,_,S,R){let T=c.getSourceFile();if(!R){let W=Il(c)||c;R=Oy(W,T)}return{fileName:T.fileName,textSpan:R,kind:g,name:d,containerKind:void 0,containerName:h,...Kp.toContextSpan(R,T,Kp.getContextNode(c)),isLocal:!ZXt(s,c),isAmbient:!!(c.flags&33554432),unverified:_,failedAliasResolution:S}}function x9s(s,c){let g=Kp.getContextNode(s),d=Oy(kXt(g)?g.start:g,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Kp.toContextSpan(d,c,g),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function ZXt(s,c){if(s.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if(WT(c.parent)&&c.parent.initializer===c)return ZXt(s,c.parent);switch(c.kind){case 173:case 178:case 179:case 175:if(Gb(c,2))return!1;case 177:case 304:case 305:case 211:case 232:case 220:case 219:return ZXt(s,c.parent);default:return!1}}function LXt(s,c,g){return H1e(c,s,c.symbol,c,!1,g)}function Y1e(s,c){return de(s,g=>sl(g,c))}function G9s(s,c,g){return{fileName:c,textSpan:wA(0,0),kind:"script",name:s,containerName:void 0,containerKind:void 0,unverified:g}}function F9s(s){let c=ji(s,d=>!Oie(d)),g=c?.parent;return g&&hF(g)&&Qge(g)===c?g:void 0}function Z9s(s,c){let g=F9s(c),d=g&&s.getResolvedSignature(g);return Gs(d&&d.declaration,h=>bu(h)&&!x_(h))}function L9s(s){switch(s.kind){case 177:case 186:case 180:case 181:return!0;default:return!1}}var Xit={};o(Xit,{provideInlayHints:()=>O9s});var V9s=s=>new RegExp(`^\\s?/\\*\\*?\\s?${s}\\s?\\*\\/\\s?$`);function P9s(s){return s.includeInlayParameterNameHints==="literals"||s.includeInlayParameterNameHints==="all"}function W9s(s){return s.includeInlayParameterNameHints==="literals"}function VXt(s){return s.interactiveInlayHints===!0}function O9s(s){let{file:c,program:g,span:d,cancellationToken:h,preferences:_}=s,S=c.text,R=g.getCompilerOptions(),T=_1(c,_),W=g.getTypeChecker(),V=[];return M(c),V;function M(Gt){if(!(!Gt||Gt.getFullWidth()===0)){switch(Gt.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 175:case 220:h.throwIfCancellationRequested()}if(q2(d,Gt.pos,Gt.getFullWidth())&&!(uc(Gt)&&!l_(Gt)))return _.includeInlayVariableTypeHints&&nc(Gt)||_.includeInlayPropertyDeclarationTypeHints&&pi(Gt)?Ne(Gt):_.includeInlayEnumMemberValueHints&&LF(Gt)?_e(Gt):P9s(_)&&(Zl(Gt)||f2(Gt))?Te(Gt):(_.includeInlayFunctionParameterTypeHints&&kd(Gt)&&MAe(Gt)&&Tt(Gt),_.includeInlayFunctionLikeReturnTypeHints&&ee(Gt)&&$e(Gt)),Lu(Gt,M)}}function ee(Gt){return lA(Gt)||UA(Gt)||ih(Gt)||uu(Gt)||Bg(Gt)}function re(Gt,nt,Dt,tr){let ur=`${tr?"...":""}${Gt}`,Gr;VXt(_)?(Gr=[_r(ur,nt),{text:":"}],ur=""):ur+=":",V.push({text:ur,position:Dt,kind:"Parameter",whitespaceAfter:!0,displayParts:Gr})}function ge(Gt,nt){V.push({text:typeof Gt=="string"?`: ${Gt}`:"",displayParts:typeof Gt=="string"?void 0:[{text:": "},...Gt],position:nt,kind:"Type",whitespaceBefore:!0})}function Ie(Gt,nt){V.push({text:`= ${Gt}`,position:nt,kind:"Enum",whitespaceBefore:!0})}function _e(Gt){if(Gt.initializer)return;let nt=W.getConstantValue(Gt);nt!==void 0&&Ie(nt.toString(),Gt.end)}function Ee(Gt){return Gt.symbol&&Gt.symbol.flags&1536}function Ne(Gt){if(Gt.initializer===void 0&&!(pi(Gt)&&!(W.getTypeAtLocation(Gt).flags&1))||Nu(Gt.name)||nc(Gt)&&!Pt(Gt)||kh(Gt))return;let Dt=W.getTypeAtLocation(Gt);if(Ee(Dt))return;let tr=_t(Dt);if(tr){let ur=typeof tr=="string"?tr:tr.map(dt=>dt.text).join("");if(_.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&Mp(Gt.name.getText(),ur))return;ge(tr,Gt.name.end)}}function Te(Gt){let nt=Gt.arguments;if(!nt||!nt.length)return;let Dt=W.getResolvedSignature(Gt);if(Dt===void 0)return;let tr=0;for(let ur of nt){let Gr=QA(ur);if(W9s(_)&&!Ue(Gr)){tr++;continue}let dt=0;if(of(Gr)){let st=W.getTypeAtLocation(Gr.expression);if(W.isTupleType(st)){let{elementFlags:ir,fixedLength:zt}=st.target;if(zt===0)continue;let Ht=Se(ir,mn=>!(mn&1));(Ht<0?zt:Ht)>0&&(dt=Ht<0?zt:Ht)}}let pr=W.getParameterIdentifierInfoAtPosition(Dt,tr);if(tr=tr+(dt||1),pr){let{parameter:st,parameterName:ir,isRestParameter:zt}=pr;if(!(_.includeInlayParameterNameHintsWhenArgumentMatchesName||!Ze(Gr,ir))&&!zt)continue;let Br=Bc(ir);if(We(Gr,Br))continue;re(Br,st,ur.getStart(),zt)}}}function Ze(Gt,nt){return Ir(Gt)?Gt.text===nt:jo(Gt)?Gt.name.text===nt:!1}function We(Gt,nt){if(!Uh(nt,Mg(R),Lne(c.scriptKind)))return!1;let Dt=fE(S,Gt.pos);if(!Dt?.length)return!1;let tr=V9s(nt);return jt(Dt,ur=>tr.test(S.substring(ur.pos,ur.end)))}function Ue(Gt){switch(Gt.kind){case 225:{let nt=Gt.operand;return wL(nt)||Ir(nt)&&oz(nt.escapedText)}case 112:case 97:case 106:case 15:case 229:return!0;case 80:{let nt=Gt.escapedText;return Ke(nt)||oz(nt)}}return wL(Gt)}function $e(Gt){if(lA(Gt)&&!qd(Gt,21,c)||xb(Gt)||!Gt.body)return;let Dt=W.getSignatureFromDeclaration(Gt);if(!Dt)return;let tr=W.getTypePredicateOfSignature(Dt);if(tr?.type){let dt=Rt(tr);if(dt){ge(dt,Ye(Gt));return}}let ur=W.getReturnTypeOfSignature(Dt);if(Ee(ur))return;let Gr=_t(ur);Gr&&ge(Gr,Ye(Gt))}function Ye(Gt){let nt=qd(Gt,22,c);return nt?nt.end:Gt.parameters.end}function Tt(Gt){let nt=W.getSignatureFromDeclaration(Gt);if(!nt)return;let Dt=0;for(let tr of Gt.parameters)Pt(tr)&&ot(tr,SF(tr)?nt.thisParameter:nt.parameters[Dt]),!SF(tr)&&Dt++}function ot(Gt,nt){if(kh(Gt)||nt===void 0)return;let tr=Qe(nt);tr!==void 0&&ge(tr,Gt.questionToken?Gt.questionToken.end:Gt.name.end)}function Qe(Gt){let nt=Gt.valueDeclaration;if(!nt||!Si(nt))return;let Dt=W.getTypeOfSymbolAtLocation(Gt,nt);if(!Ee(Dt))return _t(Dt)}function mt(Gt){let Dt=gQ();return dP(tr=>{let ur=W.typeToTypeNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typenode"),Dt.writeNode(4,ur,c,tr)})}function ht(Gt){let Dt=gQ();return dP(tr=>{let ur=W.typePredicateToTypePredicateNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typePredicateNode"),Dt.writeNode(4,ur,c,tr)})}function _t(Gt){if(!VXt(_))return mt(Gt);let Dt=W.typeToTypeNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typeNode"),Lt(Dt)}function Rt(Gt){if(!VXt(_))return ht(Gt);let Dt=W.typePredicateToTypePredicateNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typenode"),Lt(Dt)}function Lt(Gt){let nt=[];return Dt(Gt),nt;function Dt(dt){var pr,st;if(!dt)return;let ir=Vi(dt.kind);if(ir){nt.push({text:ir});return}if(wL(dt)){nt.push({text:Gr(dt)});return}switch(dt.kind){case 80:pe.assertNode(dt,Ir);let zt=Vo(dt),Ht=dt.symbol&&dt.symbol.declarations&&dt.symbol.declarations.length&&Il(dt.symbol.declarations[0]);Ht?nt.push(_r(zt,Ht)):nt.push({text:zt});break;case 167:pe.assertNode(dt,zi),Dt(dt.left),nt.push({text:"."}),Dt(dt.right);break;case 183:pe.assertNode(dt,bE),dt.assertsModifier&&nt.push({text:"asserts "}),Dt(dt.parameterName),dt.type&&(nt.push({text:" is "}),Dt(dt.type));break;case 184:pe.assertNode(dt,nh),Dt(dt.typeName),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 169:pe.assertNode(dt,Ds),dt.modifiers&&ur(dt.modifiers," "),Dt(dt.name),dt.constraint&&(nt.push({text:" extends "}),Dt(dt.constraint)),dt.default&&(nt.push({text:" = "}),Dt(dt.default));break;case 170:pe.assertNode(dt,Si),dt.modifiers&&ur(dt.modifiers," "),dt.dotDotDotToken&&nt.push({text:"..."}),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 186:pe.assertNode(dt,$D),nt.push({text:"new "}),tr(dt),nt.push({text:" => "}),Dt(dt.type);break;case 187:pe.assertNode(dt,Fw),nt.push({text:"typeof "}),Dt(dt.exprName),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 188:pe.assertNode(dt,mh),nt.push({text:"{"}),dt.members.length&&(nt.push({text:" "}),ur(dt.members,"; "),nt.push({text:" "})),nt.push({text:"}"});break;case 189:pe.assertNode(dt,kF),Dt(dt.elementType),nt.push({text:"[]"});break;case 190:pe.assertNode(dt,Zw),nt.push({text:"["}),ur(dt.elements,", "),nt.push({text:"]"});break;case 203:pe.assertNode(dt,KT),dt.dotDotDotToken&&nt.push({text:"..."}),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),nt.push({text:": "}),Dt(dt.type);break;case 191:pe.assertNode(dt,jL),Dt(dt.type),nt.push({text:"?"});break;case 192:pe.assertNode(dt,zL),nt.push({text:"..."}),Dt(dt.type);break;case 193:pe.assertNode(dt,aS),ur(dt.types," | ");break;case 194:pe.assertNode(dt,mf),ur(dt.types," & ");break;case 195:pe.assertNode(dt,d2),Dt(dt.checkType),nt.push({text:" extends "}),Dt(dt.extendsType),nt.push({text:" ? "}),Dt(dt.trueType),nt.push({text:" : "}),Dt(dt.falseType);break;case 196:pe.assertNode(dt,jT),nt.push({text:"infer "}),Dt(dt.typeParameter);break;case 197:pe.assertNode(dt,fv),nt.push({text:"("}),Dt(dt.type),nt.push({text:")"});break;case 199:pe.assertNode(dt,xB),nt.push({text:`${Vi(dt.operator)} `}),Dt(dt.type);break;case 200:pe.assertNode(dt,Iv),Dt(dt.objectType),nt.push({text:"["}),Dt(dt.indexType),nt.push({text:"]"});break;case 201:pe.assertNode(dt,GB),nt.push({text:"{ "}),dt.readonlyToken&&(dt.readonlyToken.kind===40?nt.push({text:"+"}):dt.readonlyToken.kind===41&&nt.push({text:"-"}),nt.push({text:"readonly "})),nt.push({text:"["}),Dt(dt.typeParameter),dt.nameType&&(nt.push({text:" as "}),Dt(dt.nameType)),nt.push({text:"]"}),dt.questionToken&&(dt.questionToken.kind===40?nt.push({text:"+"}):dt.questionToken.kind===41&&nt.push({text:"-"}),nt.push({text:"?"})),nt.push({text:": "}),dt.type&&Dt(dt.type),nt.push({text:"; }"});break;case 202:pe.assertNode(dt,EE),Dt(dt.literal);break;case 185:pe.assertNode(dt,x_),tr(dt),nt.push({text:" => "}),Dt(dt.type);break;case 206:pe.assertNode(dt,Um),dt.isTypeOf&&nt.push({text:"typeof "}),nt.push({text:"import("}),Dt(dt.argument),dt.assertions&&(nt.push({text:", { assert: "}),ur(dt.assertions.assertClause.elements,", "),nt.push({text:" }"})),nt.push({text:")"}),dt.qualifier&&(nt.push({text:"."}),Dt(dt.qualifier)),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 172:pe.assertNode(dt,ss),(pr=dt.modifiers)!=null&&pr.length&&(ur(dt.modifiers," "),nt.push({text:" "})),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 182:pe.assertNode(dt,w0),nt.push({text:"["}),ur(dt.parameters,", "),nt.push({text:"]"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 174:pe.assertNode(dt,hl),(st=dt.modifiers)!=null&&st.length&&(ur(dt.modifiers," "),nt.push({text:" "})),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 180:pe.assertNode(dt,wg),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 181:pe.assertNode(dt,em),nt.push({text:"new "}),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 208:pe.assertNode(dt,p2),nt.push({text:"["}),ur(dt.elements,", "),nt.push({text:"]"});break;case 207:pe.assertNode(dt,Km),nt.push({text:"{"}),dt.elements.length&&(nt.push({text:" "}),ur(dt.elements,", "),nt.push({text:" "})),nt.push({text:"}"});break;case 209:pe.assertNode(dt,hg),Dt(dt.name);break;case 225:pe.assertNode(dt,T0),nt.push({text:Vi(dt.operator)}),Dt(dt.operand);break;case 204:pe.assertNode(dt,zT),Dt(dt.head),dt.templateSpans.forEach(Dt);break;case 16:pe.assertNode(dt,tQ),nt.push({text:Gr(dt)});break;case 205:pe.assertNode(dt,mN),Dt(dt.type),Dt(dt.literal);break;case 17:pe.assertNode(dt,gie),nt.push({text:Gr(dt)});break;case 18:pe.assertNode(dt,nde),nt.push({text:Gr(dt)});break;case 198:pe.assertNode(dt,Fx),nt.push({text:"this"});break;case 168:pe.assertNode(dt,Un),nt.push({text:"["}),Dt(dt.expression),nt.push({text:"]"});break;default:pe.failBadSyntaxKind(dt)}}function tr(dt){dt.typeParameters&&(nt.push({text:"<"}),ur(dt.typeParameters,", "),nt.push({text:">"})),nt.push({text:"("}),ur(dt.parameters,", "),nt.push({text:")"})}function ur(dt,pr){dt.forEach((st,ir)=>{ir>0&&nt.push({text:pr}),Dt(st)})}function Gr(dt){switch(dt.kind){case 11:return T===0?`'${YT(dt.text,39)}'`:`"${YT(dt.text,34)}"`;case 16:case 17:case 18:{let pr=dt.rawText??Pye(YT(dt.text,96));switch(dt.kind){case 16:return"`"+pr+"${";case 17:return"}"+pr+"${";case 18:return"}"+pr+"`"}}}return dt.text}}function Ke(Gt){return Gt==="undefined"}function Pt(Gt){if((HL(Gt)||nc(Gt)&&rI(Gt))&&Gt.initializer){let nt=QA(Gt.initializer);return!(Ue(nt)||f2(nt)||og(nt)||Ed(nt))}return!0}function _r(Gt,nt){let Dt=nt.getSourceFile();return{text:Gt,span:Oy(nt,Dt),file:Dt.fileName}}}var n5={};o(n5,{getDocCommentTemplateAtPosition:()=>q9s,getJSDocParameterNameCompletionDetails:()=>z9s,getJSDocParameterNameCompletions:()=>j9s,getJSDocTagCompletionDetails:()=>Cdn,getJSDocTagCompletions:()=>K9s,getJSDocTagNameCompletionDetails:()=>U9s,getJSDocTagNameCompletions:()=>J9s,getJsDocCommentsFromDeclarations:()=>M9s,getJsDocTagsFromDeclarations:()=>Q9s});var ddn=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],pdn,fdn;function M9s(s,c){let g=[];return Urt(s,d=>{for(let h of Y9s(d)){let _=tR(h)&&h.tags&&de(h.tags,R=>R.kind===328&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(h.comment===void 0&&!_||tR(h)&&d.kind!==347&&d.kind!==339&&h.tags&&h.tags.some(R=>R.kind===347||R.kind===339)&&!h.tags.some(R=>R.kind===342||R.kind===343))continue;let S=h.comment?sse(h.comment,c):[];_&&_.comment&&(S=S.concat(sse(_.comment,c))),k(g,S,H9s)||g.push(S)}}),Nr(fe(g,[Uie()]))}function H9s(s,c){return Sc(s,c,(g,d)=>g.kind===d.kind&&g.text===d.text)}function Y9s(s){switch(s.kind){case 342:case 349:return[s];case 339:case 347:return[s,s.parent];case 324:if(Cie(s.parent))return[s.parent.parent];default:return vye(s)}}function Q9s(s,c){let g=[];return Urt(s,d=>{let h=Sx(d);if(!(h.some(_=>_.kind===347||_.kind===339)&&!h.some(_=>_.kind===342||_.kind===343)))for(let _ of h)g.push({name:_.tagName.text,text:mdn(_,c)}),g.push(...Idn(hdn(_),c))}),g}function Idn(s,c){return er(s,g=>Nn([{name:g.tagName.text,text:mdn(g,c)}],Idn(hdn(g),c)))}function hdn(s){return dY(s)&&s.isNameFirst&&s.typeExpression&&yU(s.typeExpression.type)?s.typeExpression.type.jsDocPropertyTags:void 0}function sse(s,c){return typeof s=="string"?[gS(s)]:er(s,g=>g.kind===322?[gS(g.text)]:_Mt(g,c))}function mdn(s,c){let{comment:g,kind:d}=s,h=X9s(d);switch(d){case 350:let R=s.typeExpression;return R?_(R):g===void 0?void 0:sse(g,c);case 330:return _(s.class);case 329:return _(s.class);case 346:let T=s,W=[];if(T.constraint&&W.push(gS(T.constraint.getText())),B(T.typeParameters)){B(W)&&W.push(BI());let M=T.typeParameters[T.typeParameters.length-1];F(T.typeParameters,ee=>{W.push(h(ee.getText())),M!==ee&&W.push(k0(28),BI())})}return g&&W.push(BI(),...sse(g,c)),W;case 345:case 351:return _(s.typeExpression);case 347:case 339:case 349:case 342:case 348:let{name:V}=s;return V?_(V):g===void 0?void 0:sse(g,c);default:return g===void 0?void 0:sse(g,c)}function _(R){return S(R.getText())}function S(R){return g?R.match(/^https?$/)?[gS(R),...sse(g,c)]:[h(R),BI(),...sse(g,c)]:[gS(R)]}}function X9s(s){switch(s){case 342:return fMt;case 349:return IMt;case 346:return mMt;case 347:case 339:return hMt;default:return gS}}function J9s(){return pdn||(pdn=At(ddn,s=>({name:s,kind:"keyword",kindModifiers:"",sortText:Jz.SortText.LocationPriority})))}var U9s=Cdn;function K9s(){return fdn||(fdn=At(ddn,s=>({name:`@${s}`,kind:"keyword",kindModifiers:"",sortText:Jz.SortText.LocationPriority})))}function Cdn(s){return{name:s,kind:"",kindModifiers:"",displayParts:[gS(s)],documentation:E,tags:void 0,codeActions:void 0}}function j9s(s){if(!Ir(s.name))return E;let c=s.name.text,g=s.parent,d=g.parent;return bu(d)?Xt(d.parameters,h=>{if(!Ir(h.name))return;let _=h.name.text;if(!(g.tags.some(S=>S!==s&&cS(S)&&Ir(S.name)&&S.name.escapedText===_)||c!==void 0&&!Ac(_,c)))return{name:_,kind:"parameter",kindModifiers:"",sortText:Jz.SortText.LocationPriority}}):[]}function z9s(s){return{name:s,kind:"parameter",kindModifiers:"",displayParts:[gS(s)],documentation:E,tags:void 0,codeActions:void 0}}function q9s(s,c,g,d){let h=Jc(c,g),_=ji(h,tR);if(_&&(_.comment!==void 0||B(_.tags)))return;let S=h.getStart(c);if(!_&&S0;if(Ie&&!Ne){let Te=_e+s+re+" * ",Ze=S===g?s+re:"";return{newText:Te+s+Ie+re+Ee+Ze,caretOffset:Te.length}}return{newText:_e+Ee,caretOffset:3}}function $9s(s,c){let{text:g}=s,d=PB(c,s),h=d;for(;h<=c&&Iu(g.charCodeAt(h));h++);return g.slice(d,h)}function eVs(s,c,g,d){return s.map(({name:h,dotDotDotToken:_},S)=>{let R=h.kind===80?h.text:"param"+S;return`${g} * @param ${c?_?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function tVs(s,c){return`${s} * @returns${c}`}function rVs(s,c){return Ew(s,g=>PXt(g,c))}function PXt(s,c){switch(s.kind){case 263:case 219:case 175:case 177:case 174:case 220:let g=s;return{commentOwner:s,parameters:g.parameters,hasReturn:jPe(g,c)};case 304:return PXt(s.initializer,c);case 264:case 265:case 267:case 307:case 266:return{commentOwner:s};case 172:{let h=s;return h.type&&x_(h.type)?{commentOwner:s,parameters:h.type.parameters,hasReturn:jPe(h.type,c)}:{commentOwner:s}}case 244:{let _=s.declarationList.declarations,S=_.length===1&&_[0].initializer?nVs(_[0].initializer):void 0;return S?{commentOwner:s,parameters:S.parameters,hasReturn:jPe(S,c)}:{commentOwner:s}}case 308:return"quit";case 268:return s.parent.kind===268?void 0:{commentOwner:s};case 245:return PXt(s.expression,c);case 227:{let h=s;return nI(h)===0?"quit":bu(h.right)?{commentOwner:s,parameters:h.right.parameters,hasReturn:jPe(h.right,c)}:{commentOwner:s}}case 173:let d=s.initializer;if(d&&(UA(d)||lA(d)))return{commentOwner:s,parameters:d.parameters,hasReturn:jPe(d,c)}}}function jPe(s,c){return!!c?.generateReturnInDocTemplate&&(x_(s)||lA(s)&&un(s.body)||kd(s)&&s.body&&$u(s.body)&&!!yF(s.body,g=>g))}function nVs(s){for(;s.kind===218;)s=s.expression;switch(s.kind){case 219:case 220:return s;case 232:return de(s.members,Tc)}}var Jit={};o(Jit,{mapCode:()=>iVs});function iVs(s,c,g,d,h,_){return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},S=>{let R=c.map(W=>sVs(s,W)),T=g&&Nr(g);for(let W of R)oVs(s,S,W,T)})}function sVs(s,c){let g=[{parse:()=>vz("__mapcode_content_nodes.ts",c,s.languageVersion,!0,s.scriptKind),body:_=>_.statements},{parse:()=>vz("__mapcode_class_content_nodes.ts",`class __class { ${c} -}`,s.languageVersion,!0,s.scriptKind),body:_=>_.statements[0].members}],d=[];for(let{parse:_,body:S}of g){let R=_(),T=S(R);if(T.length&&R.parseDiagnostics.length===0)return T;T.length&&d.push({sourceFile:R,body:T})}d.sort((_,S)=>_.sourceFile.parseDiagnostics.length-S.sourceFile.parseDiagnostics.length);let{body:h}=d[0];return h}function Y9s(s,c,g,d){PI(g[0])||Bx(g[0])?Q9s(s,c,g,d):X9s(s,c,g,d)}function Q9s(s,c,g,d){let h;if(!d||!d.length?h=de(s.statements,Hp(xa,g_)):h=F(d,S=>ji(Jc(s,S.start),Hp(xa,g_))),!h)return;let _=h.members.find(S=>g.some(R=>KPe(R,S)));if(_){let S=be(h.members,R=>g.some(T=>KPe(T,R)));F(g,Xit),c.replaceNodeRangeWithNodes(s,_,S,g);return}F(g,Xit),c.insertNodesAfter(s,h.members[h.members.length-1],g)}function X9s(s,c,g,d){if(!d?.length){c.insertNodesAtEndOfFile(s,g,!1);return}for(let _ of d){let S=ji(Jc(s,_.start),R=>Hp($u,ll)(R)&&jt(R.statements,T=>g.some(W=>KPe(W,T))));if(S){let R=S.statements.find(T=>g.some(W=>KPe(W,T)));if(R){let T=be(S.statements,W=>g.some(V=>KPe(V,W)));F(g,Xit),c.replaceNodeRangeWithNodes(s,R,T,g);return}}}let h=s.statements;for(let _ of d){let S=ji(Jc(s,_.start),$u);if(S){h=S.statements;break}}F(g,Xit),c.insertNodesAfter(s,h[h.length-1],g)}function KPe(s,c){var g,d,h,_,S,R;return s.kind!==c.kind?!1:s.kind===177?s.kind===c.kind:rh(s)&&rh(c)?s.name.getText()===c.name.getText():Z3(s)&&Z3(c)||g$e(s)&&g$e(c)?s.expression.getText()===c.expression.getText():L3(s)&&L3(c)?((g=s.initializer)==null?void 0:g.getText())===((d=c.initializer)==null?void 0:d.getText())&&((h=s.incrementor)==null?void 0:h.getText())===((_=c.incrementor)==null?void 0:_.getText())&&((S=s.condition)==null?void 0:S.getText())===((R=c.condition)==null?void 0:R.getText()):DL(s)&&DL(c)?s.expression.getText()===c.expression.getText()&&s.initializer.getText()===c.initializer.getText():FP(s)&&FP(c)?s.label.getText()===c.label.getText():s.getText()===c.getText()}function Xit(s){ddn(s),s.parent=void 0}function ddn(s){s.pos=-1,s.end=-1,s.forEachChild(ddn)}var i5={};o(i5,{compareImportsOrRequireStatements:()=>HXt,compareModuleSpecifiers:()=>gVs,getImportDeclarationInsertionIndex:()=>aVs,getImportSpecifierInsertionIndex:()=>cVs,getNamedImportSpecifierComparerWithDetection:()=>oVs,getOrganizeImportsStringComparerWithDetection:()=>sVs,organizeImports:()=>J9s,testCoalesceExports:()=>uVs,testCoalesceImports:()=>lVs});function J9s(s,c,g,d,h,_){let S=xo.ChangeTracker.fromContext({host:g,formatContext:c,preferences:h}),R=_==="SortAndCombine"||_==="All",T=R,W=_==="RemoveUnused"||_==="All",V=s.statements.filter(Mf),M=LXt(s,V),{comparersToTest:ee,typeOrdersToTest:re}=ZXt(h),ge=ee[0],Ie={moduleSpecifierComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,namedImportComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,typeOrder:h.organizeImportsTypeOrder};if(typeof h.organizeImportsIgnoreCase!="boolean"&&({comparer:Ie.moduleSpecifierComparer}=Idn(M,ee)),!Ie.typeOrder||typeof h.organizeImportsIgnoreCase!="boolean"){let Te=OXt(V,ee,re);if(Te){let{namedImportComparer:Ze,typeOrder:We}=Te;Ie.namedImportComparer=Ie.namedImportComparer??Ze,Ie.typeOrder=Ie.typeOrder??We}}M.forEach(Te=>Ee(Te,Ie)),_!=="RemoveUnused"&&K9s(s).forEach(Te=>Ne(Te,Ie.namedImportComparer));for(let Te of s.statements.filter(s_)){if(!Te.body)continue;if(LXt(s,Te.body.statements.filter(Mf)).forEach(We=>Ee(We,Ie)),_!=="RemoveUnused"){let We=Te.body.statements.filter(Gh);Ne(We,Ie.namedImportComparer)}}return S.getChanges();function _e(Te,Ze){if(B(Te)===0)return;ti(Te[0],1024);let We=T?Yn(Te,Ye=>jPe(Ye.moduleSpecifier)):[Te],Ue=R?bo(We,(Ye,Tt)=>PXt(Ye[0].moduleSpecifier,Tt[0].moduleSpecifier,Ie.moduleSpecifierComparer??ge)):We,$e=er(Ue,Ye=>jPe(Ye[0].moduleSpecifier)||Ye[0].moduleSpecifier===void 0?Ze(Ye):Ye);if($e.length===0)S.deleteNodes(s,Te,{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include},!0);else{let Ye={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include,suffix:OF(g,c.options)};S.replaceNodeWithNodes(s,Te[0],$e,Ye);let Tt=S.nodeHasTrailingComment(s,Te[0],Ye);S.deleteNodes(s,Te.slice(1),{trailingTriviaOption:xo.TrailingTriviaOption.Include},Tt)}}function Ee(Te,Ze){let We=Ze.moduleSpecifierComparer??ge,Ue=Ze.namedImportComparer??ge,$e=Ze.typeOrder??"last",Ye=Q1e({organizeImportsTypeOrder:$e},Ue);_e(Te,ot=>(W&&(ot=j9s(ot,s,d)),T&&(ot=pdn(ot,We,Ye,s)),R&&(ot=bo(ot,(Qe,mt)=>HXt(Qe,mt,We))),ot))}function Ne(Te,Ze){let We=Q1e(h,Ze);_e(Te,Ue=>fdn(Ue,We))}}function ZXt(s){return{comparersToTest:typeof s.organizeImportsIgnoreCase=="boolean"?[MXt(s,s.organizeImportsIgnoreCase)]:[MXt(s,!0),MXt(s,!1)],typeOrdersToTest:s.organizeImportsTypeOrder?[s.organizeImportsTypeOrder]:["last","inline","first"]}}function LXt(s,c){let g=wb(s.languageVersion,!1,s.languageVariant),d=[],h=0;for(let _ of c)d[h]&&U9s(s,_,g)&&h++,d[h]||(d[h]=[]),d[h].push(_);return d}function U9s(s,c,g){let d=c.getFullStart(),h=c.getStart();g.setText(s.text,d,h-d);let _=0;for(;g.getTokenStart()=2))return!0;return!1}function K9s(s){let c=[],g=s.statements,d=B(g),h=0,_=0;for(;hLXt(s,S))}function j9s(s,c,g){let d=g.getTypeChecker(),h=g.getCompilerOptions(),_=d.getJsxNamespace(c),S=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),T=[];for(let V of s){let{importClause:M,moduleSpecifier:ee}=V;if(!M){T.push(V);continue}let{name:re,namedBindings:ge}=M;if(re&&!W(re)&&(re=void 0),ge)if(Zx(ge))W(ge.name)||(ge=void 0);else{let Ie=ge.elements.filter(_e=>W(_e.name));Ie.length{if(S.attributes){let R=S.attributes.token+" ";for(let T of bo(S.attributes.elements,(W,V)=>Ca(W.name.text,V.name.text)))R+=T.name.text+":",R+=mA(T.value)?`"${T.value.text}"`:T.value.getText()+" ";return R}return""}),_=[];for(let S in h){let R=h[S],{importWithoutClause:T,typeOnlyImports:W,regularImports:V}=z9s(R);T&&_.push(T);for(let M of[V,W]){let ee=M===W,{defaultImports:re,namespaceImports:ge,namedImports:Ie}=M;if(!ee&&re.length===1&&ge.length===1&&Ie.length===0){let Ye=re[0];_.push(Y1e(Ye,Ye.importClause.name,ge[0].importClause.namedBindings));continue}let _e=bo(ge,(Ye,Tt)=>c(Ye.importClause.namedBindings.name.text,Tt.importClause.namedBindings.name.text));for(let Ye of _e)_.push(Y1e(Ye,void 0,Ye.importClause.namedBindings));let Ee=Nc(re),Ne=Nc(Ie),Te=Ee??Ne;if(!Te)continue;let Ze,We=[];if(re.length===1)Ze=re[0].importClause.name;else for(let Ye of re)We.push(me.createImportSpecifier(!1,me.createIdentifier("default"),Ye.importClause.name));We.push(...eVs(Ie));let Ue=me.createNodeArray(bo(We,g),Ne?.importClause.namedBindings.elements.hasTrailingComma),$e=Ue.length===0?Ze?void 0:me.createNamedImports(E):Ne?me.updateNamedImports(Ne.importClause.namedBindings,Ue):me.createNamedImports(Ue);d&&$e&&Ne?.importClause.namedBindings&&!S3(Ne.importClause.namedBindings,d)&&ti($e,2),ee&&Ze&&$e?(_.push(Y1e(Te,Ze,void 0)),_.push(Y1e(Ne??Te,void 0,$e))):_.push(Y1e(Te,Ze,$e))}}return _}function fdn(s,c){if(s.length===0)return s;let{exportWithoutClause:g,namedExports:d,typeOnlyExports:h}=S(s),_=[];g&&_.push(g);for(let R of[d,h]){if(R.length===0)continue;let T=[];T.push(...er(R,M=>M.exportClause&&mv(M.exportClause)?M.exportClause.elements:E));let W=bo(T,c),V=R[0];_.push(me.updateExportDeclaration(V,V.modifiers,V.isTypeOnly,V.exportClause&&(mv(V.exportClause)?me.updateNamedExports(V.exportClause,W):me.updateNamespaceExport(V.exportClause,V.exportClause.name)),V.moduleSpecifier,V.attributes))}return _;function S(R){let T,W=[],V=[];for(let M of R)M.exportClause===void 0?T=T||M:M.isTypeOnly?V.push(M):W.push(M);return{exportWithoutClause:T,namedExports:W,typeOnlyExports:V}}}function Y1e(s,c,g){return me.updateImportDeclaration(s,s.modifiers,me.updateImportClause(s.importClause,s.importClause.phaseModifier,c,g),s.moduleSpecifier,s.attributes)}function VXt(s,c,g,d){switch(d?.organizeImportsTypeOrder){case"first":return Ml(c.isTypeOnly,s.isTypeOnly)||g(s.name.text,c.name.text);case"inline":return g(s.name.text,c.name.text);default:return Ml(s.isTypeOnly,c.isTypeOnly)||g(s.name.text,c.name.text)}}function PXt(s,c,g){let d=s===void 0?void 0:jPe(s),h=c===void 0?void 0:jPe(c);return Ml(d===void 0,h===void 0)||Ml(Xr(d),Xr(h))||g(d,h)}function q9s(s){return s.map(c=>jPe(WXt(c))||"")}function WXt(s){var c;switch(s.kind){case 272:return(c=Gs(s.moduleReference,ZF))==null?void 0:c.expression;case 273:return s.moduleSpecifier;case 244:return s.declarationList.declarations[0].initializer.arguments[0]}}function $9s(s,c){let g=Zg(c)&&c.text;return Xs(g)&&jt(s.moduleAugmentations,d=>Zg(d)&&d.text===g)}function eVs(s){return er(s,c=>At(tVs(c),g=>g.name&&g.propertyName&&CF(g.name)===CF(g.propertyName)?me.updateImportSpecifier(g,g.isTypeOnly,void 0,g.name):g))}function tVs(s){var c;return(c=s.importClause)!=null&&c.namedBindings&&yN(s.importClause.namedBindings)?s.importClause.namedBindings.elements:void 0}function Idn(s,c){let g=[];return s.forEach(d=>{g.push(q9s(d))}),mdn(g,c)}function OXt(s,c,g){let d=!1,h=s.filter(T=>{var W,V;let M=(V=Gs((W=T.importClause)==null?void 0:W.namedBindings,yN))==null?void 0:V.elements;return M?.length?(!d&&M.some(ee=>ee.isTypeOnly)&&M.some(ee=>!ee.isTypeOnly)&&(d=!0),!0):!1});if(h.length===0)return;let _=h.map(T=>{var W,V;return(V=Gs((W=T.importClause)==null?void 0:W.namedBindings,yN))==null?void 0:V.elements}).filter(T=>T!==void 0);if(!d||g.length===0){let T=mdn(_.map(W=>W.map(V=>V.name.text)),c);return{namedImportComparer:T.comparer,typeOrder:g.length===1?g[0]:void 0,isSorted:T.isSorted}}let S={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let T of c){let W={first:0,last:0,inline:0};for(let V of _)for(let M of g)W[M]=(W[M]??0)+hdn(V,(ee,re)=>VXt(ee,re,T,{organizeImportsTypeOrder:M}));for(let V of g){let M=V;W[M]0&&g++;return g}function mdn(s,c){let g,d=1/0;for(let h of c){let _=0;for(let S of s){if(S.length<=1)continue;let R=hdn(S,h);_+=R}_VXt(d,h,g,s)}function oVs(s,c,g){let{comparersToTest:d,typeOrdersToTest:h}=ZXt(c),_=OXt([s],d,h),S=Q1e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(_){let{namedImportComparer:T,typeOrder:W,isSorted:V}=_;R=V,S=Q1e({organizeImportsTypeOrder:W},T)}else if(g){let T=OXt(g.statements.filter(Mf),d,h);if(T){let{namedImportComparer:W,typeOrder:V,isSorted:M}=T;R=M,S=Q1e({organizeImportsTypeOrder:V},W)}}}return{specifierComparer:S,isSorted:R}}function aVs(s,c,g){let d=Wc(s,c,Fl,(h,_)=>HXt(h,_,g));return d<0?~d:d}function cVs(s,c,g){let d=Wc(s,c,Fl,g);return d<0?~d:d}function HXt(s,c,g){return PXt(WXt(s),WXt(c),g)||rVs(s,c)}function lVs(s,c,g,d){let h=zPe(c),_=Q1e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},h);return pdn(s,h,_,g)}function uVs(s,c,g){return fdn(s,(h,_)=>VXt(h,_,zPe(c),{organizeImportsTypeOrder:g?.organizeImportsTypeOrder??"last"}))}function gVs(s,c,g){let d=zPe(!!g);return PXt(s,c,d)}var Jit={};o(Jit,{collectElements:()=>AVs});function AVs(s,c){let g=[];return dVs(s,c,g),pVs(s,g),g.sort((d,h)=>d.textSpan.start-h.textSpan.start),g}function dVs(s,c,g){let d=40,h=0,_=s.statements,S=_.length;for(;h1&&d.push(qPe(_,S,"comment"))}}function ydn(s,c,g,d){KL(s)||YXt(s.pos,c,g,d)}function qPe(s,c,g){return Kz(wA(s,c),g)}function IVs(s,c){switch(s.kind){case 242:if(bu(s.parent))return hVs(s.parent,s,c);switch(s.parent.kind){case 247:case 250:case 251:case 249:case 246:case 248:case 255:case 300:return V(s.parent);case 259:let re=s.parent;if(re.tryBlock===s)return V(s.parent);if(re.finallyBlock===s){let ge=qd(re,98,c);if(ge)return V(ge)}default:return Kz(Oy(s,c),"code")}case 269:return V(s.parent);case 264:case 232:case 265:case 267:case 270:case 188:case 207:return V(s);case 190:return V(s,!1,!Zw(s.parent),23);case 297:case 298:return M(s.statements);case 211:return W(s);case 210:return W(s,23);case 285:return _(s);case 289:return S(s);case 286:case 287:return R(s.attributes);case 229:case 15:return T(s);case 208:return V(s,!1,!hg(s.parent),23);case 220:return h(s);case 214:return d(s);case 218:return ee(s);case 276:case 280:case 301:return g(s)}function g(re){if(!re.elements.length)return;let ge=qd(re,19,c),Ie=qd(re,20,c);if(!(!ge||!Ie||yE(ge.pos,Ie.pos,c)))return Uit(ge,Ie,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ge=qd(re,21,c),Ie=qd(re,22,c);if(!(!ge||!Ie||yE(ge.pos,Ie.pos,c)))return Uit(ge,Ie,re,c,!1,!0)}function h(re){if($u(re.body)||gI(re.body)||yE(re.body.getFullStart(),re.body.getEnd(),c))return;let ge=wA(re.body.getFullStart(),re.body.getEnd());return Kz(ge,"code",Oy(re))}function _(re){let ge=wA(re.openingElement.getStart(c),re.closingElement.getEnd()),Ie=re.openingElement.tagName.getText(c),_e="<"+Ie+">...";return Kz(ge,"code",ge,!1,_e)}function S(re){let ge=wA(re.openingFragment.getStart(c),re.closingFragment.getEnd());return Kz(ge,"code",ge,!1,"<>...")}function R(re){if(re.properties.length!==0)return qPe(re.getStart(c),re.getEnd(),"code")}function T(re){if(!(re.kind===15&&re.text.length===0))return qPe(re.getStart(c),re.getEnd(),"code")}function W(re,ge=19){return V(re,!1,!OI(re.parent)&&!Zl(re.parent),ge)}function V(re,ge=!1,Ie=!0,_e=19,Ee=_e===19?20:24){let Ne=qd(s,_e,c),Te=qd(s,Ee,c);return Ne&&Te&&Uit(Ne,Te,re,c,ge,Ie)}function M(re){return re.length?Kz(t9(re),"code"):void 0}function ee(re){if(yE(re.getStart(),re.getEnd(),c))return;let ge=wA(re.getStart(),re.getEnd());return Kz(ge,"code",Oy(re))}}function hVs(s,c,g){let d=mVs(s,c,g),h=qd(c,20,g);return d&&h&&Uit(d,h,s,g,s.kind!==220)}function Uit(s,c,g,d,h=!1,_=!0){let S=wA(_?s.getFullStart():s.getStart(d),c.getEnd());return Kz(S,"code",Oy(g,d),h)}function Kz(s,c,g=s,d=!1,h="..."){return{textSpan:s,kind:c,hintSpan:g,bannerText:h,autoCollapse:d}}function mVs(s,c,g){if(hAe(s.parameters,g)){let d=qd(s,21,g);if(d)return d}return qd(c,19,g)}var $Pe={};o($Pe,{getRenameInfo:()=>CVs,nodeIsEligibleForRename:()=>Edn});function CVs(s,c,g,d){let h=WVe(Lb(c,g));if(Edn(h)){let _=_Vs(h,s.getTypeChecker(),c,s,d);if(_)return _}return Kit(Z.You_cannot_rename_this_element)}function _Vs(s,c,g,d,h){let _=c.getSymbolAtLocation(s);if(!_){if(mA(s)){let ee=PVe(s,c);if(ee&&(ee.flags&128||ee.flags&1048576&&ue(ee.types,re=>!!(re.flags&128))))return QXt(s.text,s.text,"string","",s,g)}else if(hrt(s)){let ee=xp(s);return QXt(ee,ee,"label","",s,g)}return}let{declarations:S}=_;if(!S||S.length===0)return;if(S.some(ee=>yVs(d,ee)))return Kit(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(Ir(s)&&s.escapedText==="default"&&_.parent&&_.parent.flags&1536)return;if(mA(s)&&B7(s))return h.allowRenameOfImportPath?EVs(s,g,_):void 0;let R=bVs(g,_,c,h);if(R)return Kit(R);let T=i9.getSymbolKind(c,_,s),W=hMt(s)||d1(s)&&s.parent.kind===168?l2(c2(s)):void 0,V=W||c.symbolToString(_),M=W||c.getFullyQualifiedName(_);return QXt(V,M,T,i9.getSymbolModifiers(c,_),s,g)}function yVs(s,c){let g=c.getSourceFile();return s.isSourceFileDefaultLibrary(g)&&aA(g.fileName,".d.ts")}function bVs(s,c,g,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let S=c.declarations&&de(c.declarations,R=>uy(R));S&&!S.propertyName&&(c=g.getAliasedSymbol(c))}let{declarations:h}=c;if(!h)return;let _=bdn(s.path);if(_===void 0)return jt(h,S=>_1e(S.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let S of h){let R=bdn(S.getSourceFile().path);if(R){let T=Math.min(_.length,R.length);for(let W=0;W<=T;W++)if(Ca(_[W],R[W])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function bdn(s){let c=Np(s),g=c.lastIndexOf("node_modules");if(g!==-1)return c.slice(0,g+2)}function EVs(s,c,g){if(!Xr(s.text))return Kit(Z.You_cannot_rename_a_module_via_a_global_import);let d=g.declarations&&de(g.declarations,ll);if(!d)return;let h=di(s.text,"/index")||di(s.text,"/index.js")?void 0:Bo(s0(d.fileName),"/index"),_=h===void 0?d.fileName:h,S=h===void 0?"module":"directory",R=s.text.lastIndexOf("/")+1,T=zd(s.getStart(c)+1+R,s.text.length-R);return{canRename:!0,fileToRename:_,kind:S,displayName:_,fullDisplayName:s.text,kindModifiers:"",triggerSpan:T}}function QXt(s,c,g,d,h,_){return{canRename:!0,fileToRename:void 0,kind:g,displayName:s,fullDisplayName:c,kindModifiers:d,triggerSpan:SVs(h,_)}}function Kit(s){return{canRename:!1,localizedErrorMessage:Bu(s)}}function SVs(s,c){let g=s.getStart(c),d=s.getWidth(c);return mA(s)&&(g+=1,d-=2),zd(g,d)}function Edn(s){switch(s.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return FVe(s);default:return!1}}var X1e={};o(X1e,{getArgumentInfoForCompletions:()=>RVs,getSignatureHelpItems:()=>vVs});function vVs(s,c,g,d,h){let _=s.getTypeChecker(),S=Hde(c,g);if(!S)return;let R=!!d&&d.kind==="characterTyped";if(R&&(Zz(c,g,S)||$L(c,g)))return;let T=!!d&&d.kind==="invoked",W=MVs(S,g,c,_,T);if(!W)return;h.throwIfCancellationRequested();let V=BVs(W,_,c,S,R);return h.throwIfCancellationRequested(),V?_.runWithCancellationToken(h,M=>V.kind===0?Ddn(V.candidates,V.resolvedSignature,W,c,M):YVs(V.symbol,W,c,M)):n0(c)?TVs(W,s,h):void 0}function BVs({invocation:s,argumentCount:c},g,d,h,_){switch(s.kind){case 0:{if(_&&!wVs(h,s.node,d))return;let S=[],R=g.getResolvedSignatureForSignatureHelp(s.node,S,c);return S.length===0?void 0:{kind:0,candidates:S,resolvedSignature:R}}case 1:{let{called:S}=s;if(_&&!Sdn(h,d,Ir(S)?S.parent:S))return;let R=wrt(S,c,g);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:ma(R)};let T=g.getSymbolAtLocation(S);return T&&{kind:1,symbol:T}}case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return pe.assertNever(s)}}function wVs(s,c,g){if(!av(c))return!1;let d=c.getChildren(g);switch(s.kind){case 21:return k(d,s);case 28:{let h=VVe(s);return!!h&&k(d,h)}case 30:return Sdn(s,g,c.expression);default:return!1}}function TVs(s,c,g){if(s.invocation.kind===2)return;let d=Rdn(s.invocation),h=jo(d)?d.name.text:void 0,_=c.getTypeChecker();return h===void 0?void 0:X(c.getSourceFiles(),S=>X(S.getNamedDeclarations().get(h),R=>{let T=R.symbol&&_.getTypeOfSymbolAtLocation(R.symbol,R),W=T&&T.getCallSignatures();if(W&&W.length)return _.runWithCancellationToken(g,V=>Ddn(W,W[0],s,S,V,!0))}))}function Sdn(s,c,g){let d=s.getFullStart(),h=s.parent;for(;h;){let _=Gm(d,c,h,!0);if(_)return cy(g,_);h=h.parent}return pe.fail("Could not find preceding token")}function RVs(s,c,g,d){let h=Bdn(s,c,g,d);return!h||h.isTypeParameterList||h.invocation.kind!==0?void 0:{invocation:h.invocation.node,argumentCount:h.argumentCount,argumentIndex:h.argumentIndex}}function vdn(s,c,g,d){let h=NVs(s,g,d);if(!h)return;let{list:_,argumentIndex:S}=h,R=VVs(d,_),T=WVs(_,g);return{list:_,argumentIndex:S,argumentCount:R,argumentsSpan:T}}function NVs(s,c,g){if(s.kind===30||s.kind===21)return{list:HVs(s.parent,s,c),argumentIndex:0};{let d=VVe(s);return d&&{list:d,argumentIndex:LVs(g,d,s)}}}function Bdn(s,c,g,d){let{parent:h}=s;if(av(h)){let _=h,S=vdn(s,c,g,d);if(!S)return;let{list:R,argumentIndex:T,argumentCount:W,argumentsSpan:V}=S;return{isTypeParameterList:!!h.typeArguments&&h.typeArguments.pos===R.pos,invocation:{kind:0,node:_},argumentsSpan:V,argumentIndex:T,argumentCount:W}}else{if(GP(s)&&MI(h))return u1e(s,c,g)?JXt(h,0,g):void 0;if(tQ(s)&&h.parent.kind===216){let _=h,S=_.parent;pe.assert(_.kind===229);let R=u1e(s,c,g)?0:1;return JXt(S,R,g)}else if(die(h)&&MI(h.parent.parent)){let _=h,S=h.parent.parent;if(rde(s)&&!u1e(s,c,g))return;let R=_.parent.templateSpans.indexOf(_),T=PVs(R,s,c,g);return JXt(S,T,g)}else if(eI(h)){let _=h.attributes.pos,S=Yu(g.text,h.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:h},argumentsSpan:zd(_,S-_),argumentIndex:0,argumentCount:1}}else{let _=Trt(s,g);if(_){let{called:S,nTypeArguments:R}=_,T={kind:1,called:S},W=wA(S.getStart(g),s.end);return{isTypeParameterList:!0,invocation:T,argumentsSpan:W,argumentIndex:R,argumentCount:R+1}}return}}}function DVs(s,c,g,d){return kVs(s,c,g,d)||Bdn(s,c,g,d)}function wdn(s){return fo(s.parent)?wdn(s.parent):s}function XXt(s){return fo(s.left)?XXt(s.left)+1:2}function kVs(s,c,g,d){let h=xVs(s);if(h===void 0)return;let _=GVs(h,g,c,d);if(_===void 0)return;let{contextualType:S,argumentIndex:R,argumentCount:T,argumentsSpan:W}=_,V=S.getNonNullableType(),M=V.symbol;if(M===void 0)return;let ee=li(V.getCallSignatures());return ee===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:ee,node:s,symbol:FVs(M)},argumentsSpan:W,argumentIndex:R,argumentCount:T}}function xVs(s){switch(s.kind){case 21:case 28:return s;default:return ji(s.parent,c=>Si(c)?!0:hg(c)||Km(c)||p2(c)?!1:"quit")}}function GVs(s,c,g,d){let{parent:h}=s;switch(h.kind){case 218:case 175:case 219:case 220:let _=vdn(s,g,c,d);if(!_)return;let{argumentIndex:S,argumentCount:R,argumentsSpan:T}=_,W=uu(h)?d.getContextualTypeForObjectLiteralElement(h):d.getContextualType(h);return W&&{contextualType:W,argumentIndex:S,argumentCount:R,argumentsSpan:T};case 227:{let V=wdn(h),M=d.getContextualType(V),ee=s.kind===21?0:XXt(h)-1,re=XXt(V);return M&&{contextualType:M,argumentIndex:ee,argumentCount:re,argumentsSpan:Oy(h)}}default:return}}function FVs(s){return s.name==="__type"&&X(s.declarations,c=>{var g;return x_(c)?(g=Gs(c.parent,mE))==null?void 0:g.symbol:void 0})||s}function ZVs(s,c){let g=c.getTypeAtLocation(s.expression);if(c.isTupleType(g)){let{elementFlags:d,fixedLength:h}=g.target;if(h===0)return 0;let _=Se(d,S=>!(S&1));return _<0?h:_}return 0}function LVs(s,c,g){return Tdn(s,c,g)}function VVs(s,c){return Tdn(s,c,void 0)}function Tdn(s,c,g){let d=c.getChildren(),h=0,_=!1;for(let S of d){if(g&&S===g)return!_&&S.kind===28&&h++,h;if(of(S)){h+=ZVs(S,s),_=!0;continue}if(S.kind!==28){h++,_=!0;continue}if(_){_=!1;continue}h++}return g?h:d.length&&Ei(d).kind===28?h+1:h}function PVs(s,c,g,d){return pe.assert(g>=c.getStart(),"Assumed 'position' could not occur before node."),ige(c)?u1e(c,g,d)?0:s+2:s+1}function JXt(s,c,g){let d=GP(s.template)?1:s.template.templateSpans.length+1;return c!==0&&pe.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:s},argumentsSpan:OVs(s,g),argumentIndex:c,argumentCount:d}}function WVs(s,c){let g=s.getFullStart(),d=Yu(c.text,s.getEnd(),!1);return zd(g,d-g)}function OVs(s,c){let g=s.template,d=g.getStart(),h=g.getEnd();return g.kind===229&&Ei(g.templateSpans).literal.getFullWidth()===0&&(h=Yu(c.text,h,!1)),zd(d,h-d)}function MVs(s,c,g,d,h){for(let _=s;!ll(_)&&(h||!$u(_));_=_.parent){pe.assert(cy(_.parent,_),"Not a subspan",()=>`Child: ${pe.formatSyntaxKind(_.kind)}, parent: ${pe.formatSyntaxKind(_.parent.kind)}`);let S=DVs(_,c,g,d);if(S)return S}}function HVs(s,c,g){let d=s.getChildren(g),h=d.indexOf(c);return pe.assert(h>=0&&d.length>h+1),d[h+1]}function Rdn(s){return s.kind===0?Yge(s.node):s.called}function Ndn(s){return s.kind===0?s.node:s.kind===1?s.called:s.node}var eWe=70246400;function Ddn(s,c,{isTypeParameterList:g,argumentCount:d,argumentsSpan:h,invocation:_,argumentIndex:S},R,T,W){var V;let M=Ndn(_),ee=_.kind===2?_.symbol:T.getSymbolAtLocation(Rdn(_))||W&&((V=c.declaration)==null?void 0:V.symbol),re=ee?Kde(T,ee,W?R:void 0,void 0):E,ge=At(s,Te=>XVs(Te,re,g,T,M,R)),Ie=0,_e=0;for(let Te=0;Te1)){let We=0;for(let Ue of Ze){if(Ue.isVariadic||Ue.parameters.length>=d){Ie=_e+We;break}We++}}_e+=Ze.length}pe.assert(Ie!==-1);let Ee={items:vt(ge,Fl),applicableSpan:h,selectedItemIndex:Ie,argumentIndex:S,argumentCount:d},Ne=Ee.items[Ie];if(Ne.isVariadic){let Te=Se(Ne.parameters,Ze=>!!Ze.isRest);-1xdn(M,g,d,h,S)),T=s.getDocumentationComment(g),W=s.getJsDocTags(g);return{isVariadic:!1,prefixDisplayParts:[..._,k0(30)],suffixDisplayParts:[k0(32)],separatorDisplayParts:kdn,parameters:R,documentation:T,tags:W}}var kdn=[k0(28),BI()];function XVs(s,c,g,d,h,_){let S=(g?UVs:KVs)(s,d,h,_);return At(S,({isVariadic:R,parameters:T,prefix:W,suffix:V})=>{let M=[...c,...W],ee=[...V,...JVs(s,h,d)],re=s.getDocumentationComment(d),ge=s.getJsDocTags();return{isVariadic:R,prefixDisplayParts:M,suffixDisplayParts:ee,separatorDisplayParts:kdn,parameters:T,documentation:re,tags:ge}})}function JVs(s,c,g){return XP(d=>{d.writePunctuation(":"),d.writeSpace(" ");let h=g.getTypePredicateOfSignature(s);h?g.writeTypePredicate(h,c,void 0,d):g.writeType(g.getReturnTypeOfSignature(s),c,void 0,d)})}function UVs(s,c,g,d){let h=(s.target||s).typeParameters,_=gQ(),S=(h||E).map(T=>xdn(T,c,g,d,_)),R=s.thisParameter?[c.symbolToParameterDeclaration(s.thisParameter,g,eWe)]:[];return c.getExpandedParameters(s).map(T=>{let W=me.createNodeArray([...R,...At(T,M=>c.symbolToParameterDeclaration(M,g,eWe))]),V=XP(M=>{_.writeList(2576,W,d,M)});return{isVariadic:!1,parameters:S,prefix:[k0(30)],suffix:[k0(32),...V]}})}function KVs(s,c,g,d){let h=gQ(),_=XP(T=>{if(s.typeParameters&&s.typeParameters.length){let W=me.createNodeArray(s.typeParameters.map(V=>c.typeParameterToDeclaration(V,g,eWe)));h.writeList(53776,W,d,T)}}),S=c.getExpandedParameters(s),R=c.hasEffectiveRestParameter(s)?S.length===1?T=>!0:T=>{var W;return!!(T.length&&((W=Gs(T[T.length-1],bw))==null?void 0:W.links.checkFlags)&32768)}:T=>!1;return S.map(T=>({isVariadic:R(T),parameters:T.map(W=>jVs(W,c,g,d,h)),prefix:[..._,k0(21)],suffix:[k0(22)]}))}function jVs(s,c,g,d,h){let _=XP(T=>{let W=c.symbolToParameterDeclaration(s,g,eWe);h.writeNode(4,W,d,T)}),S=c.isOptionalParameter(s.valueDeclaration),R=bw(s)&&!!(s.links.checkFlags&32768);return{name:s.name,documentation:s.getDocumentationComment(c),displayParts:_,isOptional:S,isRest:R}}function xdn(s,c,g,d,h){let _=XP(S=>{let R=c.typeParameterToDeclaration(s,g,eWe);h.writeNode(4,R,d,S)});return{name:s.symbol.name,documentation:s.symbol.getDocumentationComment(c),displayParts:_,isOptional:!1,isRest:!1}}var jit={};o(jit,{getSmartSelectionRange:()=>zVs});function zVs(s,c){var g,d;let h={textSpan:wA(c.getFullStart(),c.getEnd())},_=c;e:for(;;){let T=ePs(_);if(!T.length)break;for(let W=0;Ws)break e;let re=Ps(n2(c.text,M.end));if(re&&re.kind===2&&R(re.pos,re.end),qVs(c,s,M)){if(n7(M)&&kd(_)&&!yE(M.getStart(c),M.getEnd(),c)&&S(M.getStart(c),M.getEnd()),$u(M)||die(M)||tQ(M)||rde(M)||V&&tQ(V)||u_(M)&&Ch(_)||Cie(M)&&u_(_)||nc(M)&&Cie(_)&&T.length===1||W3(M)||qL(M)||yU(M)){_=M;break}if(die(_)&&ee&&$6(ee)){let Ee=M.getFullStart()-2,Ne=ee.getStart()+1;S(Ee,Ne)}let ge=Cie(M)&&tPs(V)&&rPs(ee)&&!yE(V.getStart(),ee.getStart(),c),Ie=ge?V.getEnd():M.getStart(),_e=ge?ee.getStart():nPs(c,M);if(Xm(M)&&((g=M.jsDoc)!=null&&g.length)&&S(ma(M.jsDoc).getStart(),_e),Cie(M)){let Ee=M.getChildren()[0];Ee&&Xm(Ee)&&((d=Ee.jsDoc)!=null&&d.length)&&Ee.getStart()!==M.pos&&(Ie=Math.min(Ie,ma(Ee.jsDoc).getStart()))}S(Ie,_e),(Zg(M)||AP(M))&&S(Ie+1,_e-1),_=M;break}if(W===T.length-1)break e}}return h;function S(T,W){if(T!==W){let V=wA(T,W);(!h||!Xie(V,h.textSpan)&&zR(V,s))&&(h={textSpan:V,...h&&{parent:h}})}}function R(T,W){S(T,W);let V=T;for(;c.text.charCodeAt(V)===47;)V++;S(V,W)}}function qVs(s,c,g){return pe.assert(g.pos<=c),cR===s.readonlyToken||R.kind===148||R===s.questionToken||R.kind===58),S=J1e(_,({kind:R})=>R===23||R===169||R===24);return[g,U1e(zit(S,({kind:R})=>R===59)),h]}if(ss(s)){let g=J1e(s.getChildren(),S=>S===s.name||k(s.modifiers,S)),d=((c=g[0])==null?void 0:c.kind)===321?g[0]:void 0,h=d?g.slice(1):g,_=zit(h,({kind:S})=>S===59);return d?[d,U1e(_)]:_}if(Si(s)){let g=J1e(s.getChildren(),h=>h===s.dotDotDotToken||h===s.name),d=J1e(g,h=>h===g[0]||h===s.questionToken);return zit(d,({kind:h})=>h===64)}return hg(s)?zit(s.getChildren(),({kind:g})=>g===64):s.getChildren()}function J1e(s,c){let g=[],d;for(let h of s)c(h)?(d=d||[],d.push(h)):(d&&(g.push(U1e(d)),d=void 0),g.push(h));return d&&g.push(U1e(d)),g}function zit(s,c,g=!0){if(s.length<2)return s;let d=Se(s,c);if(d===-1)return s;let h=s.slice(0,d),_=s[d],S=Ei(s),R=g&&S.kind===27,T=s.slice(d+1,R?s.length-1:void 0),W=Hr([h.length?U1e(h):void 0,_,T.length?U1e(T):void 0]);return R?W.concat(S):W}function U1e(s){return pe.assertGreaterThanOrEqual(s.length,1),TB(H3.createSyntaxList(s),s[0].pos,Ei(s).end)}function tPs(s){let c=s&&s.kind;return c===19||c===23||c===21||c===287}function rPs(s){let c=s&&s.kind;return c===20||c===24||c===22||c===288}function nPs(s,c){switch(c.kind){case 342:case 339:case 349:case 347:case 344:return s.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var i9={};o(i9,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>sPs,getSymbolKind:()=>Fdn,getSymbolModifiers:()=>iPs});var Gdn=70246400;function Fdn(s,c,g){let d=Zdn(s,c,g);if(d!=="")return d;let h=sU(c);return h&32?Cp(c,232)?"local class":"class":h&384?"enum":h&524288?"type":h&64?"interface":h&262144?"type parameter":h&8?"enum member":h&2097152?"alias":h&1536?"module":d}function Zdn(s,c,g){let d=s.getRootSymbols(c);if(d.length===1&&ma(d).flags&8192&&s.getTypeOfSymbolAtLocation(c,g).getNonNullableType().getCallSignatures().length!==0)return"method";if(s.isUndefinedSymbol(c))return"var";if(s.isArgumentsSymbol(c))return"local var";if(g.kind===110&&un(g)||YL(g))return"parameter";let h=sU(c);if(h&3)return Urt(c)?"parameter":c.valueDeclaration&&rI(c.valueDeclaration)?"const":c.valueDeclaration&&tI(c.valueDeclaration)?"using":c.valueDeclaration&&Sd(c.valueDeclaration)?"await using":F(c.declarations,rS)?"let":Pdn(c)?"local var":"var";if(h&16)return Pdn(c)?"local function":"function";if(h&32768)return"getter";if(h&65536)return"setter";if(h&8192)return"method";if(h&16384)return"constructor";if(h&131072)return"index";if(h&4){if(h&33554432&&c.links.checkFlags&6){let _=F(s.getRootSymbols(c),S=>{if(S.getFlags()&98311)return"property"});return _||(s.getTypeOfSymbolAtLocation(c,g).getCallSignatures().length?"method":"property")}return"property"}return""}function Ldn(s){if(s.declarations&&s.declarations.length){let[c,...g]=s.declarations,d=B(g)&&lPe(c)&&jt(g,_=>!lPe(_))?65536:0,h=Yde(c,d);if(h)return h.split(",")}return[]}function iPs(s,c){if(!c)return"";let g=new Set(Ldn(c));if(c.flags&2097152){let d=s.getAliasedSymbol(c);d!==c&&F(Ldn(d),h=>{g.add(h)})}return c.flags&16777216&&g.add("optional"),g.size>0?Do(g.values()).join(","):""}function Vdn(s,c,g,d,h,_,S,R,T,W){var V;let M=[],ee=[],re=[],ge=sU(c),Ie=S&1?Zdn(s,c,h):"",_e=!1,Ee=h.kind===110&&rne(h)||YL(h),Ne,Te,Ze=!1,We={canIncreaseExpansionDepth:!1,truncated:!1},Ue=!1;if(h.kind===110&&!Ee)return{displayParts:[y1(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(Ie!==""||ge&32||ge&2097152){if(Ie==="getter"||Ie==="setter"){let Dt=de(c.declarations,tr=>tr.name===h&&tr.kind!==212);if(Dt)switch(Dt.kind){case 178:Ie="getter";break;case 179:Ie="setter";break;case 173:Ie="accessor";break;default:pe.assertNever(Dt)}else Ie="property"}let Gt;if(_??(_=Ee?s.getTypeAtLocation(h):s.getTypeOfSymbolAtLocation(c,h)),h.parent&&h.parent.kind===212){let Dt=h.parent.name;(Dt===h||Dt&&Dt.getFullWidth()===0)&&(h=h.parent)}let nt;if(av(h)?nt=h:(drt(h)||Ode(h)||h.parent&&(eI(h.parent)||MI(h.parent))&&bu(c.valueDeclaration))&&(nt=h.parent),nt){Gt=s.getResolvedSignature(nt);let Dt=nt.kind===215||Zl(nt)&&nt.expression.kind===108,tr=Dt?_.getConstructSignatures():_.getCallSignatures();if(Gt&&!k(tr,Gt.target)&&!k(tr,Gt)&&(Gt=tr.length?tr[0]:void 0),Gt){switch(Dt&&ge&32?(Ie="constructor",Lt(_.symbol,Ie)):ge&2097152?(Ie="alias",Ke(Ie),M.push(BI()),Dt&&(Gt.flags&4&&(M.push(y1(128)),M.push(BI())),M.push(y1(105)),M.push(BI())),Rt(c)):Lt(c,Ie),Ie){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":M.push(k0(59)),M.push(BI()),!(la(_)&16)&&_.symbol&&(Or(M,Kde(s,_.symbol,d,void 0,5)),M.push(Jie())),Dt&&(Gt.flags&4&&(M.push(y1(128)),M.push(BI())),M.push(y1(105)),M.push(BI())),Pt(Gt,tr,262144);break;default:Pt(Gt,tr)}_e=!0,Ze=tr.length>1}}else if(yrt(h)&&!(ge&98304)||h.kind===137&&h.parent.kind===177){let Dt=h.parent;if(c.declarations&&de(c.declarations,ur=>ur===(h.kind===137?Dt.parent:Dt))){let ur=Dt.kind===177?_.getNonNullableType().getConstructSignatures():_.getNonNullableType().getCallSignatures();s.isImplementationOfOverload(Dt)?Gt=ur[0]:Gt=s.getSignatureFromDeclaration(Dt),Dt.kind===177?(Ie="constructor",Lt(_.symbol,Ie)):Lt(Dt.kind===180&&!(_.symbol.flags&2048||_.symbol.flags&4096)?_.symbol:c,Ie),Gt&&Pt(Gt,ur),_e=!0,Ze=ur.length>1}}}if(ge&32&&!_e&&!Ee){ot();let Gt=Cp(c,232);Gt&&(Ke("local class"),M.push(BI())),_t(c,S)||(Gt||(M.push(y1(86)),M.push(BI())),Rt(c),_r(c,g))}if(ge&64&&S&2&&(Tt(),_t(c,S)||(M.push(y1(120)),M.push(BI()),Rt(c),_r(c,g))),ge&524288&&S&2&&(Tt(),M.push(y1(156)),M.push(BI()),Rt(c),_r(c,g),M.push(BI()),M.push(Ude(64)),M.push(BI()),Or(M,I1e(s,h.parent&&s2(h.parent)?s.getTypeAtLocation(h.parent):s.getDeclaredTypeOfSymbol(c),d,8388608,T,W,We))),ge&384&&(Tt(),_t(c,S)||(jt(c.declarations,Gt=>V3(Gt)&&VA(Gt))&&(M.push(y1(87)),M.push(BI())),M.push(y1(94)),M.push(BI()),Rt(c,void 0))),ge&1536&&!Ee&&(Tt(),!_t(c,S))){let Gt=Cp(c,268),nt=Gt&&Gt.name&&Gt.name.kind===80;M.push(y1(nt?145:144)),M.push(BI()),Rt(c)}if(ge&262144&&S&2)if(Tt(),M.push(k0(21)),M.push(gS("type parameter")),M.push(k0(22)),M.push(BI()),Rt(c),c.parent)Qe(),Rt(c.parent,d),_r(c.parent,d);else{let Gt=Cp(c,169);if(Gt===void 0)return pe.fail();let nt=Gt.parent;if(nt)if(bu(nt)){Qe();let Dt=s.getSignatureFromDeclaration(nt);nt.kind===181?(M.push(y1(105)),M.push(BI())):nt.kind!==180&&nt.name&&Rt(nt.symbol),Or(M,jrt(s,Dt,g,32))}else FB(nt)&&(Qe(),M.push(y1(156)),M.push(BI()),Rt(nt.symbol),_r(nt.symbol,g))}if(ge&8){Ie="enum member",Lt(c,"enum member");let Gt=(V=c.declarations)==null?void 0:V[0];if(Gt?.kind===307){let nt=s.getConstantValue(Gt);nt!==void 0&&(M.push(BI()),M.push(Ude(64)),M.push(BI()),M.push(SE(vge(nt),typeof nt=="number"?7:8)))}}if(c.flags&2097152){if(Tt(),!_e||ee.length===0&&re.length===0){let Gt=s.getAliasedSymbol(c);if(Gt!==c&&Gt.declarations&&Gt.declarations.length>0){let nt=Gt.declarations[0],Dt=Il(nt);if(Dt&&!_e){let tr=RY(nt)&&Ga(nt,128),ur=c.name!=="default"&&!tr,Gr=Vdn(s,Gt,ms(nt),d,Dt,_,S,ur?c:Gt,T,W);M.push(...Gr.displayParts),M.push(Jie()),Ne=Gr.documentation,Te=Gr.tags,We&&Gr.canIncreaseVerbosityLevel&&(We.canIncreaseExpansionDepth=!0)}else Ne=Gt.getContextualDocumentationComment(nt,s),Te=Gt.getJsDocTags(s)}}if(c.declarations)switch(c.declarations[0].kind){case 271:M.push(y1(95)),M.push(BI()),M.push(y1(145));break;case 278:M.push(y1(95)),M.push(BI()),M.push(y1(c.declarations[0].isExportEquals?64:90));break;case 282:M.push(y1(95));break;default:M.push(y1(102))}M.push(BI()),Rt(c),F(c.declarations,Gt=>{if(Gt.kind===272){let nt=Gt;if(LL(nt))M.push(BI()),M.push(Ude(64)),M.push(BI()),M.push(y1(149)),M.push(k0(21)),M.push(SE(xp(_7(nt)),8)),M.push(k0(22));else{let Dt=s.getSymbolAtLocation(nt.moduleReference);Dt&&(M.push(BI()),M.push(Ude(64)),M.push(BI()),Rt(Dt,d))}return!0}})}if(!_e)if(Ie!==""){if(_){if(Ee?(Tt(),M.push(y1(110))):Lt(c,Ie),Ie==="property"||Ie==="accessor"||Ie==="getter"||Ie==="setter"||Ie==="JSX attribute"||ge&3||Ie==="local var"||Ie==="index"||Ie==="using"||Ie==="await using"||Ee){if(M.push(k0(59)),M.push(BI()),_.symbol&&_.symbol.flags&262144&&Ie!=="index"){let Gt=XP(nt=>{let Dt=s.typeParameterToDeclaration(_,d,Gdn,void 0,void 0,T,W,We);Ye().writeNode(4,Dt,ms($l(d)),nt)},T);Or(M,Gt)}else Or(M,I1e(s,_,d,void 0,T,W,We));if(bw(c)&&c.links.target&&bw(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let Gt=c.links.target.links.tupleLabelDeclaration;pe.assertNode(Gt.name,Ir),M.push(BI()),M.push(k0(21)),M.push(gS(Vo(Gt.name))),M.push(k0(22))}}else if(ge&16||ge&8192||ge&16384||ge&131072||ge&98304||Ie==="method"){let Gt=_.getNonNullableType().getCallSignatures();Gt.length&&(Pt(Gt[0],Gt),Ze=Gt.length>1)}}}else Ie=Fdn(s,c,h);if(ee.length===0&&!Ze&&(ee=c.getContextualDocumentationComment(d,s)),ee.length===0&&ge&4&&c.parent&&c.declarations&&F(c.parent.declarations,Gt=>Gt.kind===308))for(let Gt of c.declarations){if(!Gt.parent||Gt.parent.kind!==227)continue;let nt=s.getSymbolAtLocation(Gt.parent.right);if(nt&&(ee=nt.getDocumentationComment(s),re=nt.getJsDocTags(s),ee.length>0))break}if(ee.length===0&&Ir(h)&&c.valueDeclaration&&hg(c.valueDeclaration)){let Gt=c.valueDeclaration,nt=Gt.parent,Dt=Gt.propertyName||Gt.name;if(Ir(Dt)&&Km(nt)){let tr=c2(Dt),ur=s.getTypeAtLocation(nt);ee=X(ur.isUnion()?ur.types:[ur],Gr=>{let dt=Gr.getProperty(tr);return dt?dt.getDocumentationComment(s):void 0})||E}}re.length===0&&!Ze&&!GY(h)&&(re=c.getContextualJsDocTags(d,s)),ee.length===0&&Ne&&(ee=Ne),re.length===0&&Te&&(re=Te);let $e=!We.truncated&&We.canIncreaseExpansionDepth;return{displayParts:M,documentation:ee,symbolKind:Ie,tags:re.length===0?void 0:re,canIncreaseVerbosityLevel:W!==void 0?$e:void 0};function Ye(){return gQ()}function Tt(){M.length&&M.push(Jie()),ot()}function ot(){R&&(Ke("alias"),M.push(BI()))}function Qe(){M.push(BI()),M.push(y1(103)),M.push(BI())}function mt(Gt,nt){if(W===void 0)return!1;let Dt=Gt.flags&96?s.getDeclaredTypeOfSymbol(Gt):s.getTypeOfSymbolAtLocation(Gt,h);return!Dt||s.isLibType(Dt)?!1:0{let Gr=s.getEmitResolver().symbolToDeclarations(Gt,Dt,17408,T,W!==void 0?W-1:void 0,We),dt=Ye(),pr=Gt.valueDeclaration&&ms(Gt.valueDeclaration);Gr.forEach((st,ir)=>{ir>0&&ur.writeLine(),dt.writeNode(4,st,pr,ur)})},T);return Or(M,tr),Ue=!0,!0}return!1}function Rt(Gt,nt){let Dt;R&&Gt===c&&(Gt=R),Ie==="index"&&(Dt=s.getIndexInfosOfIndexSymbol(Gt));let tr=[];Gt.flags&131072&&Dt?(Gt.parent&&(tr=Kde(s,Gt.parent)),tr.push(k0(23)),Dt.forEach((ur,Gr)=>{tr.push(...I1e(s,ur.keyType)),Gr!==Dt.length-1&&(tr.push(BI()),tr.push(k0(52)),tr.push(BI()))}),tr.push(k0(24))):tr=Kde(s,Gt,nt||g,void 0,7),Or(M,tr),c.flags&16777216&&M.push(k0(58))}function Lt(Gt,nt){Tt(),nt&&(Ke(nt),Gt&&!jt(Gt.declarations,Dt=>lA(Dt)||(UA(Dt)||vd(Dt))&&!Dt.name)&&(M.push(BI()),Rt(Gt)))}function Ke(Gt){switch(Gt){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":M.push(Krt(Gt));return;default:M.push(k0(21)),M.push(Krt(Gt)),M.push(k0(22));return}}function Pt(Gt,nt,Dt=0){Or(M,jrt(s,Gt,d,Dt|32,T,W,We)),nt.length>1&&(M.push(BI()),M.push(k0(21)),M.push(Ude(40)),M.push(SE((nt.length-1).toString(),7)),M.push(BI()),M.push(gS(nt.length===2?"overload":"overloads")),M.push(k0(22))),ee=Gt.getDocumentationComment(s),re=Gt.getJsDocTags(),nt.length>1&&ee.length===0&&re.length===0&&(ee=nt[0].getDocumentationComment(s),re=nt[0].getJsDocTags().filter(tr=>tr.name!=="deprecated"))}function _r(Gt,nt){let Dt=XP(tr=>{let ur=s.symbolToTypeParameterDeclarations(Gt,nt,Gdn);Ye().writeList(53776,ur,ms($l(nt)),tr)});Or(M,Dt)}}function sPs(s,c,g,d,h,_=DU(h),S,R,T){return Vdn(s,c,g,d,h,void 0,_,S,R,T)}function Pdn(s){return s.parent?!1:F(s.declarations,c=>{if(c.kind===219)return!0;if(c.kind!==261&&c.kind!==263)return!1;for(let g=c.parent;!mP(g);g=g.parent)if(g.kind===308||g.kind===269)return!1;return!0})}var xo={};o(xo,{ChangeTracker:()=>cPs,LeadingTriviaOption:()=>Mdn,TrailingTriviaOption:()=>Hdn,applyChanges:()=>qXt,assignPositionsToNode:()=>tst,createWriter:()=>Qdn,deleteNode:()=>YF,getAdjustedEndPosition:()=>jz,isThisTypeAnnotatable:()=>aPs,isValidLocationToAddComment:()=>Xdn});function Wdn(s){let c=s.__pos;return pe.assert(typeof c=="number"),c}function UXt(s,c){pe.assert(typeof c=="number"),s.__pos=c}function Odn(s){let c=s.__end;return pe.assert(typeof c=="number"),c}function KXt(s,c){pe.assert(typeof c=="number"),s.__end=c}var Mdn=(s=>(s[s.Exclude=0]="Exclude",s[s.IncludeAll=1]="IncludeAll",s[s.JSDoc=2]="JSDoc",s[s.StartLine=3]="StartLine",s))(Mdn||{}),Hdn=(s=>(s[s.Exclude=0]="Exclude",s[s.ExcludeWhitespace=1]="ExcludeWhitespace",s[s.Include=2]="Include",s))(Hdn||{});function Ydn(s,c){return Yu(s,c,!1,!0)}function oPs(s,c){let g=c;for(;g0?1:0,ee=OD(Z7(s,W)+M,s);return ee=Ydn(s.text,ee),OD(Z7(s,ee),s)}function jXt(s,c,g){let{end:d}=c,{trailingTriviaOption:h}=g;if(h===2){let _=n2(s.text,d);if(_){let S=Z7(s,c.end);for(let R of _){if(R.kind===2||Z7(s,R.pos)>S)break;if(Z7(s,R.end)>S)return Yu(s.text,R.end,!0,!0)}}}}function jz(s,c,g){var d;let{end:h}=c,{trailingTriviaOption:_}=g;if(_===0)return h;if(_===1){let T=Nn(n2(s.text,h),fE(s.text,h)),W=(d=T?.[T.length-1])==null?void 0:d.end;return W||h}let S=jXt(s,c,g);if(S)return S;let R=Yu(s.text,h,!0);return R!==h&&(_===2||Cl(s.text.charCodeAt(R-1)))?R:h}function qit(s,c){return!!c&&!!s.parent&&(c.kind===28||c.kind===27&&s.parent.kind===211)}function aPs(s){return UA(s)||ih(s)}var cPs=class Ukr{constructor(c,g){this.newLineCharacter=c,this.formatContext=g,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new Ukr(OF(c.host,c.formatContext.options),c.formatContext)}static with(c,g){let d=Ukr.fromContext(c);return g(d),d.getChanges()}pushRaw(c,g){pe.assertEqual(c.fileName,g.fileName);for(let d of g.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:QVe(d.span)})}deleteRange(c,g){this.changes.push({kind:0,sourceFile:c,range:g})}delete(c,g){this.deletedNodes.push({sourceFile:c,node:g})}deleteNode(c,g,d={leadingTriviaOption:1}){this.deleteRange(c,j1e(c,g,g,d))}deleteNodes(c,g,d={leadingTriviaOption:1},h){for(let _ of g){let S=VU(c,_,d,h),R=jz(c,_,d);this.deleteRange(c,{pos:S,end:R}),h=!!jXt(c,_,d)}}deleteModifier(c,g){this.deleteRange(c,{pos:g.getStart(c),end:Yu(c.text,g.end,!0)})}deleteNodeRange(c,g,d,h={leadingTriviaOption:1}){let _=VU(c,g,h),S=jz(c,d,h);this.deleteRange(c,{pos:_,end:S})}deleteNodeRangeExcludingEnd(c,g,d,h={leadingTriviaOption:1}){let _=VU(c,g,h),S=d===void 0?c.text.length:VU(c,d,h);this.deleteRange(c,{pos:_,end:S})}replaceRange(c,g,d,h={}){this.changes.push({kind:1,sourceFile:c,range:g,options:h,node:d})}replaceNode(c,g,d,h=K1e){this.replaceRange(c,j1e(c,g,g,h),d,h)}replaceNodeRange(c,g,d,h,_=K1e){this.replaceRange(c,j1e(c,g,d,_),h,_)}replaceRangeWithNodes(c,g,d,h={}){this.changes.push({kind:2,sourceFile:c,range:g,options:h,nodes:d})}replaceNodeWithNodes(c,g,d,h=K1e){this.replaceRangeWithNodes(c,j1e(c,g,g,h),d,h)}replaceNodeWithText(c,g,d){this.replaceRangeWithText(c,j1e(c,g,g,K1e),d)}replaceNodeRangeWithNodes(c,g,d,h,_=K1e){this.replaceRangeWithNodes(c,j1e(c,g,d,_),h,_)}nodeHasTrailingComment(c,g,d=K1e){return!!jXt(c,g,d)}nextCommaToken(c,g){let d=fQ(g,g.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,g,d){let h=this.nextCommaToken(c,g)?"":","+this.newLineCharacter;this.replaceNode(c,g,d,{suffix:h})}insertNodeAt(c,g,d,h={}){this.replaceRange(c,Gy(g),d,h)}insertNodesAt(c,g,d,h={}){this.replaceRangeWithNodes(c,Gy(g),d,h)}insertNodeAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertNodesAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertAtTopOfFile(c,g,d){let h=IPs(c),_={prefix:h===0?void 0:this.newLineCharacter,suffix:(Cl(c.text.charCodeAt(h))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Ki(g)?this.insertNodesAt(c,h,g,_):this.insertNodeAt(c,h,g,_)}insertNodesAtEndOfFile(c,g,d){this.insertAtEndOfFile(c,g,d)}insertAtEndOfFile(c,g,d){let h=c.end+1,_={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,h,g,_)}insertStatementsInNewFile(c,g,d){this.newFileChanges||(this.newFileChanges=dl()),this.newFileChanges.add(c,{oldFile:d,statements:g})}insertFirstParameter(c,g,d){let h=Nc(g);h?this.insertNodeBefore(c,h,d):this.insertNodeAt(c,g.pos,d)}insertNodeBefore(c,g,d,h=!1,_={}){this.insertNodeAt(c,VU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,d,h))}insertNodesBefore(c,g,d,h=!1,_={}){this.insertNodesAt(c,VU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,ma(d),h))}insertModifierAt(c,g,d,h={}){this.insertNodeAt(c,g,me.createToken(d),h)}insertModifierBefore(c,g,d){return this.insertModifierAt(c,d.getStart(c),g,{suffix:" "})}insertCommentBeforeLine(c,g,d,h){let _=OD(g,c),S=CMt(c.text,_),R=Xdn(c,S),T=Hie(c,R?S:d),W=c.text.slice(_,S),V=`${R?"":this.newLineCharacter}//${h}${this.newLineCharacter}${W}`;this.insertText(c,T.getStart(c),V)}insertJsdocCommentBefore(c,g,d){let h=g.getStart(c);if(g.jsDoc)for(let R of g.jsDoc)this.deleteRange(c,{pos:PB(R.getStart(c),c),end:jz(c,R,{})});let _=$Ve(c.text,h-1),S=c.text.slice(_,h);this.insertNodeAt(c,h,d,{suffix:this.newLineCharacter+S})}createJSDocText(c,g){let d=er(g.jsDoc,_=>Xs(_.comment)?me.createJSDocText(_.comment):_.comment),h=Ps(g.jsDoc);return h&&yE(h.pos,h.end,c)&&B(d)===0?void 0:me.createNodeArray(fe(d,me.createJSDocText(` -`)))}replaceJSDocComment(c,g,d){this.insertJsdocCommentBefore(c,lPs(g),me.createJSDocComment(this.createJSDocText(c,g),me.createNodeArray(d)))}addJSDocTags(c,g,d){let h=vt(g.jsDoc,S=>S.tags),_=d.filter(S=>!h.some((R,T)=>{let W=uPs(R,S);return W&&(h[T]=W),!!W}));this.replaceJSDocComment(c,g,[...h,..._])}filterJSDocTags(c,g,d){this.replaceJSDocComment(c,g,Me(vt(g.jsDoc,h=>h.tags),d))}replaceRangeWithText(c,g,d){this.changes.push({kind:3,sourceFile:c,range:g,text:d})}insertText(c,g,d){this.replaceRangeWithText(c,Gy(g),d)}tryInsertTypeAnnotation(c,g,d){let h;if(bu(g)){if(h=qd(g,22,c),!h){if(!lA(g))return!1;h=ma(g.parameters)}}else h=(g.kind===261?g.exclamationToken:g.questionToken)??g.name;return this.insertNodeAt(c,h.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,g,d){let h=qd(g,21,c).getStart(c)+1,_=g.parameters.length?", ":"";this.insertNodeAt(c,h,d,{prefix:"this: ",suffix:_})}insertTypeParameters(c,g,d){let h=(qd(g,21,c)||ma(g.parameters)).getStart(c);this.insertNodesAt(c,h,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,g,d){return Lc(c)||PI(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:nc(c)?{suffix:", "}:Si(c)?Si(g)?{suffix:", "}:{}:Zg(c)&&Mf(c.parent)||yN(c)?{suffix:", "}:uy(c)?{suffix:","+(d?this.newLineCharacter:" ")}:pe.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,g,d){let h=Nc(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[d,...g.body.statements]):this.insertNodeBefore(c,h,d)}insertNodeAtConstructorStartAfterSuperCall(c,g,d){let h=de(g.body.statements,_=>VC(_)&&Dy(_.expression));!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}insertNodeAtConstructorEnd(c,g,d){let h=li(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}replaceConstructorBody(c,g,d){this.replaceNode(c,g.body,me.createBlock(d,!0))}insertNodeAtEndOfScope(c,g,d){let h=VU(c,g.getLastToken(),{});this.insertNodeAt(c,h,d,{prefix:Cl(c.text.charCodeAt(g.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtObjectStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtStartWorker(c,g,d){let h=this.guessIndentationFromExistingMembers(c,g)??this.computeIndentationForNewMember(c,g);this.insertNodeAt(c,$it(g).pos,d,this.getInsertNodeAtStartInsertOptions(c,g,h))}guessIndentationFromExistingMembers(c,g){let d,h=g;for(let _ of $it(g)){if(M7(h,_,c))return;let S=_.getStart(c),R=Im.SmartIndenter.findFirstNonWhitespaceColumn(PB(S,c),S,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;h=_}return d}computeIndentationForNewMember(c,g){let d=g.getStart(c);return Im.SmartIndenter.findFirstNonWhitespaceColumn(PB(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,g,d){let _=$it(g).length===0,S=!this.classesWithNodesInsertedAtStart.has(rd(g));S&&this.classesWithNodesInsertedAtStart.set(rd(g),{node:g,sourceFile:c});let R=og(g)&&(!Zu(c)||!_),T=og(g)&&Zu(c)&&_&&!S;return{indentation:d,prefix:(T?",":"")+this.newLineCharacter,suffix:R?",":g_(g)&&_?";":""}}insertNodeAfterComma(c,g,d){let h=this.insertNodeAfterWorker(c,this.nextCommaToken(c,g)||g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAtEndOfList(c,g,d){this.insertNodeAt(c,g.end,d,{prefix:", "})}insertNodesAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,ma(d));this.insertNodesAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfterWorker(c,g,d){return hPs(g,d)&&c.text.charCodeAt(g.end-1)!==59&&this.replaceRange(c,Gy(g.end),me.createToken(27)),jz(c,g,{})}getInsertNodeAfterOptions(c,g){let d=this.getInsertNodeAfterOptionsWorker(g);return{...d,prefix:g.end===c.end&&Lc(g)?d.prefix?` +}`,s.languageVersion,!0,s.scriptKind),body:_=>_.statements[0].members}],d=[];for(let{parse:_,body:S}of g){let R=_(),T=S(R);if(T.length&&R.parseDiagnostics.length===0)return T;T.length&&d.push({sourceFile:R,body:T})}d.sort((_,S)=>_.sourceFile.parseDiagnostics.length-S.sourceFile.parseDiagnostics.length);let{body:h}=d[0];return h}function oVs(s,c,g,d){PI(g[0])||Bx(g[0])?aVs(s,c,g,d):cVs(s,c,g,d)}function aVs(s,c,g,d){let h;if(!d||!d.length?h=de(s.statements,Hp(xa,g_)):h=F(d,S=>ji(Jc(s,S.start),Hp(xa,g_))),!h)return;let _=h.members.find(S=>g.some(R=>zPe(R,S)));if(_){let S=be(h.members,R=>g.some(T=>zPe(T,R)));F(g,Uit),c.replaceNodeRangeWithNodes(s,_,S,g);return}F(g,Uit),c.insertNodesAfter(s,h.members[h.members.length-1],g)}function cVs(s,c,g,d){if(!d?.length){c.insertNodesAtEndOfFile(s,g,!1);return}for(let _ of d){let S=ji(Jc(s,_.start),R=>Hp($u,ll)(R)&&jt(R.statements,T=>g.some(W=>zPe(W,T))));if(S){let R=S.statements.find(T=>g.some(W=>zPe(W,T)));if(R){let T=be(S.statements,W=>g.some(V=>zPe(V,W)));F(g,Uit),c.replaceNodeRangeWithNodes(s,R,T,g);return}}}let h=s.statements;for(let _ of d){let S=ji(Jc(s,_.start),$u);if(S){h=S.statements;break}}F(g,Uit),c.insertNodesAfter(s,h[h.length-1],g)}function zPe(s,c){var g,d,h,_,S,R;return s.kind!==c.kind?!1:s.kind===177?s.kind===c.kind:rh(s)&&rh(c)?s.name.getText()===c.name.getText():Z3(s)&&Z3(c)||d$e(s)&&d$e(c)?s.expression.getText()===c.expression.getText():L3(s)&&L3(c)?((g=s.initializer)==null?void 0:g.getText())===((d=c.initializer)==null?void 0:d.getText())&&((h=s.incrementor)==null?void 0:h.getText())===((_=c.incrementor)==null?void 0:_.getText())&&((S=s.condition)==null?void 0:S.getText())===((R=c.condition)==null?void 0:R.getText()):DL(s)&&DL(c)?s.expression.getText()===c.expression.getText()&&s.initializer.getText()===c.initializer.getText():FP(s)&&FP(c)?s.label.getText()===c.label.getText():s.getText()===c.getText()}function Uit(s){_dn(s),s.parent=void 0}function _dn(s){s.pos=-1,s.end=-1,s.forEachChild(_dn)}var i5={};o(i5,{compareImportsOrRequireStatements:()=>JXt,compareModuleSpecifiers:()=>wVs,getImportDeclarationInsertionIndex:()=>EVs,getImportSpecifierInsertionIndex:()=>SVs,getNamedImportSpecifierComparerWithDetection:()=>bVs,getOrganizeImportsStringComparerWithDetection:()=>yVs,organizeImports:()=>lVs,testCoalesceExports:()=>BVs,testCoalesceImports:()=>vVs});function lVs(s,c,g,d,h,_){let S=xo.ChangeTracker.fromContext({host:g,formatContext:c,preferences:h}),R=_==="SortAndCombine"||_==="All",T=R,W=_==="RemoveUnused"||_==="All",V=s.statements.filter(Mf),M=OXt(s,V),{comparersToTest:ee,typeOrdersToTest:re}=WXt(h),ge=ee[0],Ie={moduleSpecifierComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,namedImportComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,typeOrder:h.organizeImportsTypeOrder};if(typeof h.organizeImportsIgnoreCase!="boolean"&&({comparer:Ie.moduleSpecifierComparer}=Edn(M,ee)),!Ie.typeOrder||typeof h.organizeImportsIgnoreCase!="boolean"){let Te=QXt(V,ee,re);if(Te){let{namedImportComparer:Ze,typeOrder:We}=Te;Ie.namedImportComparer=Ie.namedImportComparer??Ze,Ie.typeOrder=Ie.typeOrder??We}}M.forEach(Te=>Ee(Te,Ie)),_!=="RemoveUnused"&&gVs(s).forEach(Te=>Ne(Te,Ie.namedImportComparer));for(let Te of s.statements.filter(s_)){if(!Te.body)continue;if(OXt(s,Te.body.statements.filter(Mf)).forEach(We=>Ee(We,Ie)),_!=="RemoveUnused"){let We=Te.body.statements.filter(Gh);Ne(We,Ie.namedImportComparer)}}return S.getChanges();function _e(Te,Ze){if(B(Te)===0)return;ti(Te[0],1024);let We=T?Yn(Te,Ye=>qPe(Ye.moduleSpecifier)):[Te],Ue=R?bo(We,(Ye,Tt)=>HXt(Ye[0].moduleSpecifier,Tt[0].moduleSpecifier,Ie.moduleSpecifierComparer??ge)):We,$e=er(Ue,Ye=>qPe(Ye[0].moduleSpecifier)||Ye[0].moduleSpecifier===void 0?Ze(Ye):Ye);if($e.length===0)S.deleteNodes(s,Te,{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include},!0);else{let Ye={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include,suffix:OF(g,c.options)};S.replaceNodeWithNodes(s,Te[0],$e,Ye);let Tt=S.nodeHasTrailingComment(s,Te[0],Ye);S.deleteNodes(s,Te.slice(1),{trailingTriviaOption:xo.TrailingTriviaOption.Include},Tt)}}function Ee(Te,Ze){let We=Ze.moduleSpecifierComparer??ge,Ue=Ze.namedImportComparer??ge,$e=Ze.typeOrder??"last",Ye=X1e({organizeImportsTypeOrder:$e},Ue);_e(Te,ot=>(W&&(ot=AVs(ot,s,d)),T&&(ot=ydn(ot,We,Ye,s)),R&&(ot=bo(ot,(Qe,mt)=>JXt(Qe,mt,We))),ot))}function Ne(Te,Ze){let We=X1e(h,Ze);_e(Te,Ue=>bdn(Ue,We))}}function WXt(s){return{comparersToTest:typeof s.organizeImportsIgnoreCase=="boolean"?[XXt(s,s.organizeImportsIgnoreCase)]:[XXt(s,!0),XXt(s,!1)],typeOrdersToTest:s.organizeImportsTypeOrder?[s.organizeImportsTypeOrder]:["last","inline","first"]}}function OXt(s,c){let g=wb(s.languageVersion,!1,s.languageVariant),d=[],h=0;for(let _ of c)d[h]&&uVs(s,_,g)&&h++,d[h]||(d[h]=[]),d[h].push(_);return d}function uVs(s,c,g){let d=c.getFullStart(),h=c.getStart();g.setText(s.text,d,h-d);let _=0;for(;g.getTokenStart()=2))return!0;return!1}function gVs(s){let c=[],g=s.statements,d=B(g),h=0,_=0;for(;hOXt(s,S))}function AVs(s,c,g){let d=g.getTypeChecker(),h=g.getCompilerOptions(),_=d.getJsxNamespace(c),S=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),T=[];for(let V of s){let{importClause:M,moduleSpecifier:ee}=V;if(!M){T.push(V);continue}let{name:re,namedBindings:ge}=M;if(re&&!W(re)&&(re=void 0),ge)if(Zx(ge))W(ge.name)||(ge=void 0);else{let Ie=ge.elements.filter(_e=>W(_e.name));Ie.length{if(S.attributes){let R=S.attributes.token+" ";for(let T of bo(S.attributes.elements,(W,V)=>Ca(W.name.text,V.name.text)))R+=T.name.text+":",R+=mA(T.value)?`"${T.value.text}"`:T.value.getText()+" ";return R}return""}),_=[];for(let S in h){let R=h[S],{importWithoutClause:T,typeOnlyImports:W,regularImports:V}=dVs(R);T&&_.push(T);for(let M of[V,W]){let ee=M===W,{defaultImports:re,namespaceImports:ge,namedImports:Ie}=M;if(!ee&&re.length===1&&ge.length===1&&Ie.length===0){let Ye=re[0];_.push(Q1e(Ye,Ye.importClause.name,ge[0].importClause.namedBindings));continue}let _e=bo(ge,(Ye,Tt)=>c(Ye.importClause.namedBindings.name.text,Tt.importClause.namedBindings.name.text));for(let Ye of _e)_.push(Q1e(Ye,void 0,Ye.importClause.namedBindings));let Ee=Nc(re),Ne=Nc(Ie),Te=Ee??Ne;if(!Te)continue;let Ze,We=[];if(re.length===1)Ze=re[0].importClause.name;else for(let Ye of re)We.push(me.createImportSpecifier(!1,me.createIdentifier("default"),Ye.importClause.name));We.push(...IVs(Ie));let Ue=me.createNodeArray(bo(We,g),Ne?.importClause.namedBindings.elements.hasTrailingComma),$e=Ue.length===0?Ze?void 0:me.createNamedImports(E):Ne?me.updateNamedImports(Ne.importClause.namedBindings,Ue):me.createNamedImports(Ue);d&&$e&&Ne?.importClause.namedBindings&&!S3(Ne.importClause.namedBindings,d)&&ti($e,2),ee&&Ze&&$e?(_.push(Q1e(Te,Ze,void 0)),_.push(Q1e(Ne??Te,void 0,$e))):_.push(Q1e(Te,Ze,$e))}}return _}function bdn(s,c){if(s.length===0)return s;let{exportWithoutClause:g,namedExports:d,typeOnlyExports:h}=S(s),_=[];g&&_.push(g);for(let R of[d,h]){if(R.length===0)continue;let T=[];T.push(...er(R,M=>M.exportClause&&mv(M.exportClause)?M.exportClause.elements:E));let W=bo(T,c),V=R[0];_.push(me.updateExportDeclaration(V,V.modifiers,V.isTypeOnly,V.exportClause&&(mv(V.exportClause)?me.updateNamedExports(V.exportClause,W):me.updateNamespaceExport(V.exportClause,V.exportClause.name)),V.moduleSpecifier,V.attributes))}return _;function S(R){let T,W=[],V=[];for(let M of R)M.exportClause===void 0?T=T||M:M.isTypeOnly?V.push(M):W.push(M);return{exportWithoutClause:T,namedExports:W,typeOnlyExports:V}}}function Q1e(s,c,g){return me.updateImportDeclaration(s,s.modifiers,me.updateImportClause(s.importClause,s.importClause.phaseModifier,c,g),s.moduleSpecifier,s.attributes)}function MXt(s,c,g,d){switch(d?.organizeImportsTypeOrder){case"first":return Ml(c.isTypeOnly,s.isTypeOnly)||g(s.name.text,c.name.text);case"inline":return g(s.name.text,c.name.text);default:return Ml(s.isTypeOnly,c.isTypeOnly)||g(s.name.text,c.name.text)}}function HXt(s,c,g){let d=s===void 0?void 0:qPe(s),h=c===void 0?void 0:qPe(c);return Ml(d===void 0,h===void 0)||Ml(Xr(d),Xr(h))||g(d,h)}function pVs(s){return s.map(c=>qPe(YXt(c))||"")}function YXt(s){var c;switch(s.kind){case 272:return(c=Gs(s.moduleReference,ZF))==null?void 0:c.expression;case 273:return s.moduleSpecifier;case 244:return s.declarationList.declarations[0].initializer.arguments[0]}}function fVs(s,c){let g=Zg(c)&&c.text;return Xs(g)&&jt(s.moduleAugmentations,d=>Zg(d)&&d.text===g)}function IVs(s){return er(s,c=>At(hVs(c),g=>g.name&&g.propertyName&&CF(g.name)===CF(g.propertyName)?me.updateImportSpecifier(g,g.isTypeOnly,void 0,g.name):g))}function hVs(s){var c;return(c=s.importClause)!=null&&c.namedBindings&&yN(s.importClause.namedBindings)?s.importClause.namedBindings.elements:void 0}function Edn(s,c){let g=[];return s.forEach(d=>{g.push(pVs(d))}),vdn(g,c)}function QXt(s,c,g){let d=!1,h=s.filter(T=>{var W,V;let M=(V=Gs((W=T.importClause)==null?void 0:W.namedBindings,yN))==null?void 0:V.elements;return M?.length?(!d&&M.some(ee=>ee.isTypeOnly)&&M.some(ee=>!ee.isTypeOnly)&&(d=!0),!0):!1});if(h.length===0)return;let _=h.map(T=>{var W,V;return(V=Gs((W=T.importClause)==null?void 0:W.namedBindings,yN))==null?void 0:V.elements}).filter(T=>T!==void 0);if(!d||g.length===0){let T=vdn(_.map(W=>W.map(V=>V.name.text)),c);return{namedImportComparer:T.comparer,typeOrder:g.length===1?g[0]:void 0,isSorted:T.isSorted}}let S={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let T of c){let W={first:0,last:0,inline:0};for(let V of _)for(let M of g)W[M]=(W[M]??0)+Sdn(V,(ee,re)=>MXt(ee,re,T,{organizeImportsTypeOrder:M}));for(let V of g){let M=V;W[M]0&&g++;return g}function vdn(s,c){let g,d=1/0;for(let h of c){let _=0;for(let S of s){if(S.length<=1)continue;let R=Sdn(S,h);_+=R}_MXt(d,h,g,s)}function bVs(s,c,g){let{comparersToTest:d,typeOrdersToTest:h}=WXt(c),_=QXt([s],d,h),S=X1e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(_){let{namedImportComparer:T,typeOrder:W,isSorted:V}=_;R=V,S=X1e({organizeImportsTypeOrder:W},T)}else if(g){let T=QXt(g.statements.filter(Mf),d,h);if(T){let{namedImportComparer:W,typeOrder:V,isSorted:M}=T;R=M,S=X1e({organizeImportsTypeOrder:V},W)}}}return{specifierComparer:S,isSorted:R}}function EVs(s,c,g){let d=Wc(s,c,Fl,(h,_)=>JXt(h,_,g));return d<0?~d:d}function SVs(s,c,g){let d=Wc(s,c,Fl,g);return d<0?~d:d}function JXt(s,c,g){return HXt(YXt(s),YXt(c),g)||mVs(s,c)}function vVs(s,c,g,d){let h=$Pe(c),_=X1e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},h);return ydn(s,h,_,g)}function BVs(s,c,g){return bdn(s,(h,_)=>MXt(h,_,$Pe(c),{organizeImportsTypeOrder:g?.organizeImportsTypeOrder??"last"}))}function wVs(s,c,g){let d=$Pe(!!g);return HXt(s,c,d)}var Kit={};o(Kit,{collectElements:()=>TVs});function TVs(s,c){let g=[];return RVs(s,c,g),NVs(s,g),g.sort((d,h)=>d.textSpan.start-h.textSpan.start),g}function RVs(s,c,g){let d=40,h=0,_=s.statements,S=_.length;for(;h1&&d.push(eWe(_,S,"comment"))}}function Tdn(s,c,g,d){KL(s)||UXt(s.pos,c,g,d)}function eWe(s,c,g){return Kz(wA(s,c),g)}function kVs(s,c){switch(s.kind){case 242:if(bu(s.parent))return xVs(s.parent,s,c);switch(s.parent.kind){case 247:case 250:case 251:case 249:case 246:case 248:case 255:case 300:return V(s.parent);case 259:let re=s.parent;if(re.tryBlock===s)return V(s.parent);if(re.finallyBlock===s){let ge=qd(re,98,c);if(ge)return V(ge)}default:return Kz(Oy(s,c),"code")}case 269:return V(s.parent);case 264:case 232:case 265:case 267:case 270:case 188:case 207:return V(s);case 190:return V(s,!1,!Zw(s.parent),23);case 297:case 298:return M(s.statements);case 211:return W(s);case 210:return W(s,23);case 285:return _(s);case 289:return S(s);case 286:case 287:return R(s.attributes);case 229:case 15:return T(s);case 208:return V(s,!1,!hg(s.parent),23);case 220:return h(s);case 214:return d(s);case 218:return ee(s);case 276:case 280:case 301:return g(s)}function g(re){if(!re.elements.length)return;let ge=qd(re,19,c),Ie=qd(re,20,c);if(!(!ge||!Ie||yE(ge.pos,Ie.pos,c)))return jit(ge,Ie,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ge=qd(re,21,c),Ie=qd(re,22,c);if(!(!ge||!Ie||yE(ge.pos,Ie.pos,c)))return jit(ge,Ie,re,c,!1,!0)}function h(re){if($u(re.body)||gI(re.body)||yE(re.body.getFullStart(),re.body.getEnd(),c))return;let ge=wA(re.body.getFullStart(),re.body.getEnd());return Kz(ge,"code",Oy(re))}function _(re){let ge=wA(re.openingElement.getStart(c),re.closingElement.getEnd()),Ie=re.openingElement.tagName.getText(c),_e="<"+Ie+">...";return Kz(ge,"code",ge,!1,_e)}function S(re){let ge=wA(re.openingFragment.getStart(c),re.closingFragment.getEnd());return Kz(ge,"code",ge,!1,"<>...")}function R(re){if(re.properties.length!==0)return eWe(re.getStart(c),re.getEnd(),"code")}function T(re){if(!(re.kind===15&&re.text.length===0))return eWe(re.getStart(c),re.getEnd(),"code")}function W(re,ge=19){return V(re,!1,!OI(re.parent)&&!Zl(re.parent),ge)}function V(re,ge=!1,Ie=!0,_e=19,Ee=_e===19?20:24){let Ne=qd(s,_e,c),Te=qd(s,Ee,c);return Ne&&Te&&jit(Ne,Te,re,c,ge,Ie)}function M(re){return re.length?Kz(t9(re),"code"):void 0}function ee(re){if(yE(re.getStart(),re.getEnd(),c))return;let ge=wA(re.getStart(),re.getEnd());return Kz(ge,"code",Oy(re))}}function xVs(s,c,g){let d=GVs(s,c,g),h=qd(c,20,g);return d&&h&&jit(d,h,s,g,s.kind!==220)}function jit(s,c,g,d,h=!1,_=!0){let S=wA(_?s.getFullStart():s.getStart(d),c.getEnd());return Kz(S,"code",Oy(g,d),h)}function Kz(s,c,g=s,d=!1,h="..."){return{textSpan:s,kind:c,hintSpan:g,bannerText:h,autoCollapse:d}}function GVs(s,c,g){if(mAe(s.parameters,g)){let d=qd(s,21,g);if(d)return d}return qd(c,19,g)}var tWe={};o(tWe,{getRenameInfo:()=>FVs,nodeIsEligibleForRename:()=>Ndn});function FVs(s,c,g,d){let h=MVe(Lb(c,g));if(Ndn(h)){let _=ZVs(h,s.getTypeChecker(),c,s,d);if(_)return _}return zit(Z.You_cannot_rename_this_element)}function ZVs(s,c,g,d,h){let _=c.getSymbolAtLocation(s);if(!_){if(mA(s)){let ee=OVe(s,c);if(ee&&(ee.flags&128||ee.flags&1048576&&ue(ee.types,re=>!!(re.flags&128))))return KXt(s.text,s.text,"string","",s,g)}else if(Crt(s)){let ee=xp(s);return KXt(ee,ee,"label","",s,g)}return}let{declarations:S}=_;if(!S||S.length===0)return;if(S.some(ee=>LVs(d,ee)))return zit(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(Ir(s)&&s.escapedText==="default"&&_.parent&&_.parent.flags&1536)return;if(mA(s)&&B7(s))return h.allowRenameOfImportPath?PVs(s,g,_):void 0;let R=VVs(g,_,c,h);if(R)return zit(R);let T=i9.getSymbolKind(c,_,s),W=yMt(s)||d1(s)&&s.parent.kind===168?l2(c2(s)):void 0,V=W||c.symbolToString(_),M=W||c.getFullyQualifiedName(_);return KXt(V,M,T,i9.getSymbolModifiers(c,_),s,g)}function LVs(s,c){let g=c.getSourceFile();return s.isSourceFileDefaultLibrary(g)&&aA(g.fileName,".d.ts")}function VVs(s,c,g,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let S=c.declarations&&de(c.declarations,R=>uy(R));S&&!S.propertyName&&(c=g.getAliasedSymbol(c))}let{declarations:h}=c;if(!h)return;let _=Rdn(s.path);if(_===void 0)return jt(h,S=>y1e(S.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let S of h){let R=Rdn(S.getSourceFile().path);if(R){let T=Math.min(_.length,R.length);for(let W=0;W<=T;W++)if(Ca(_[W],R[W])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function Rdn(s){let c=Np(s),g=c.lastIndexOf("node_modules");if(g!==-1)return c.slice(0,g+2)}function PVs(s,c,g){if(!Xr(s.text))return zit(Z.You_cannot_rename_a_module_via_a_global_import);let d=g.declarations&&de(g.declarations,ll);if(!d)return;let h=di(s.text,"/index")||di(s.text,"/index.js")?void 0:Bo(s0(d.fileName),"/index"),_=h===void 0?d.fileName:h,S=h===void 0?"module":"directory",R=s.text.lastIndexOf("/")+1,T=zd(s.getStart(c)+1+R,s.text.length-R);return{canRename:!0,fileToRename:_,kind:S,displayName:_,fullDisplayName:s.text,kindModifiers:"",triggerSpan:T}}function KXt(s,c,g,d,h,_){return{canRename:!0,fileToRename:void 0,kind:g,displayName:s,fullDisplayName:c,kindModifiers:d,triggerSpan:WVs(h,_)}}function zit(s){return{canRename:!1,localizedErrorMessage:Bu(s)}}function WVs(s,c){let g=s.getStart(c),d=s.getWidth(c);return mA(s)&&(g+=1,d-=2),zd(g,d)}function Ndn(s){switch(s.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return LVe(s);default:return!1}}var J1e={};o(J1e,{getArgumentInfoForCompletions:()=>QVs,getSignatureHelpItems:()=>OVs});function OVs(s,c,g,d,h){let _=s.getTypeChecker(),S=Yde(c,g);if(!S)return;let R=!!d&&d.kind==="characterTyped";if(R&&(Zz(c,g,S)||$L(c,g)))return;let T=!!d&&d.kind==="invoked",W=iPs(S,g,c,_,T);if(!W)return;h.throwIfCancellationRequested();let V=MVs(W,_,c,S,R);return h.throwIfCancellationRequested(),V?_.runWithCancellationToken(h,M=>V.kind===0?Vdn(V.candidates,V.resolvedSignature,W,c,M):oPs(V.symbol,W,c,M)):n0(c)?YVs(W,s,h):void 0}function MVs({invocation:s,argumentCount:c},g,d,h,_){switch(s.kind){case 0:{if(_&&!HVs(h,s.node,d))return;let S=[],R=g.getResolvedSignatureForSignatureHelp(s.node,S,c);return S.length===0?void 0:{kind:0,candidates:S,resolvedSignature:R}}case 1:{let{called:S}=s;if(_&&!Ddn(h,d,Ir(S)?S.parent:S))return;let R=Rrt(S,c,g);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:ma(R)};let T=g.getSymbolAtLocation(S);return T&&{kind:1,symbol:T}}case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return pe.assertNever(s)}}function HVs(s,c,g){if(!av(c))return!1;let d=c.getChildren(g);switch(s.kind){case 21:return k(d,s);case 28:{let h=WVe(s);return!!h&&k(d,h)}case 30:return Ddn(s,g,c.expression);default:return!1}}function YVs(s,c,g){if(s.invocation.kind===2)return;let d=Zdn(s.invocation),h=jo(d)?d.name.text:void 0,_=c.getTypeChecker();return h===void 0?void 0:X(c.getSourceFiles(),S=>X(S.getNamedDeclarations().get(h),R=>{let T=R.symbol&&_.getTypeOfSymbolAtLocation(R.symbol,R),W=T&&T.getCallSignatures();if(W&&W.length)return _.runWithCancellationToken(g,V=>Vdn(W,W[0],s,S,V,!0))}))}function Ddn(s,c,g){let d=s.getFullStart(),h=s.parent;for(;h;){let _=Gm(d,c,h,!0);if(_)return cy(g,_);h=h.parent}return pe.fail("Could not find preceding token")}function QVs(s,c,g,d){let h=xdn(s,c,g,d);return!h||h.isTypeParameterList||h.invocation.kind!==0?void 0:{invocation:h.invocation.node,argumentCount:h.argumentCount,argumentIndex:h.argumentIndex}}function kdn(s,c,g,d){let h=XVs(s,g,d);if(!h)return;let{list:_,argumentIndex:S}=h,R=ePs(d,_),T=rPs(_,g);return{list:_,argumentIndex:S,argumentCount:R,argumentsSpan:T}}function XVs(s,c,g){if(s.kind===30||s.kind===21)return{list:sPs(s.parent,s,c),argumentIndex:0};{let d=WVe(s);return d&&{list:d,argumentIndex:$Vs(g,d,s)}}}function xdn(s,c,g,d){let{parent:h}=s;if(av(h)){let _=h,S=kdn(s,c,g,d);if(!S)return;let{list:R,argumentIndex:T,argumentCount:W,argumentsSpan:V}=S;return{isTypeParameterList:!!h.typeArguments&&h.typeArguments.pos===R.pos,invocation:{kind:0,node:_},argumentsSpan:V,argumentIndex:T,argumentCount:W}}else{if(GP(s)&&MI(h))return g1e(s,c,g)?zXt(h,0,g):void 0;if(tQ(s)&&h.parent.kind===216){let _=h,S=_.parent;pe.assert(_.kind===229);let R=g1e(s,c,g)?0:1;return zXt(S,R,g)}else if(pie(h)&&MI(h.parent.parent)){let _=h,S=h.parent.parent;if(nde(s)&&!g1e(s,c,g))return;let R=_.parent.templateSpans.indexOf(_),T=tPs(R,s,c,g);return zXt(S,T,g)}else if(eI(h)){let _=h.attributes.pos,S=Yu(g.text,h.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:h},argumentsSpan:zd(_,S-_),argumentIndex:0,argumentCount:1}}else{let _=Nrt(s,g);if(_){let{called:S,nTypeArguments:R}=_,T={kind:1,called:S},W=wA(S.getStart(g),s.end);return{isTypeParameterList:!0,invocation:T,argumentsSpan:W,argumentIndex:R,argumentCount:R+1}}return}}}function JVs(s,c,g,d){return UVs(s,c,g,d)||xdn(s,c,g,d)}function Gdn(s){return fo(s.parent)?Gdn(s.parent):s}function jXt(s){return fo(s.left)?jXt(s.left)+1:2}function UVs(s,c,g,d){let h=KVs(s);if(h===void 0)return;let _=jVs(h,g,c,d);if(_===void 0)return;let{contextualType:S,argumentIndex:R,argumentCount:T,argumentsSpan:W}=_,V=S.getNonNullableType(),M=V.symbol;if(M===void 0)return;let ee=li(V.getCallSignatures());return ee===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:ee,node:s,symbol:zVs(M)},argumentsSpan:W,argumentIndex:R,argumentCount:T}}function KVs(s){switch(s.kind){case 21:case 28:return s;default:return ji(s.parent,c=>Si(c)?!0:hg(c)||Km(c)||p2(c)?!1:"quit")}}function jVs(s,c,g,d){let{parent:h}=s;switch(h.kind){case 218:case 175:case 219:case 220:let _=kdn(s,g,c,d);if(!_)return;let{argumentIndex:S,argumentCount:R,argumentsSpan:T}=_,W=uu(h)?d.getContextualTypeForObjectLiteralElement(h):d.getContextualType(h);return W&&{contextualType:W,argumentIndex:S,argumentCount:R,argumentsSpan:T};case 227:{let V=Gdn(h),M=d.getContextualType(V),ee=s.kind===21?0:jXt(h)-1,re=jXt(V);return M&&{contextualType:M,argumentIndex:ee,argumentCount:re,argumentsSpan:Oy(h)}}default:return}}function zVs(s){return s.name==="__type"&&X(s.declarations,c=>{var g;return x_(c)?(g=Gs(c.parent,mE))==null?void 0:g.symbol:void 0})||s}function qVs(s,c){let g=c.getTypeAtLocation(s.expression);if(c.isTupleType(g)){let{elementFlags:d,fixedLength:h}=g.target;if(h===0)return 0;let _=Se(d,S=>!(S&1));return _<0?h:_}return 0}function $Vs(s,c,g){return Fdn(s,c,g)}function ePs(s,c){return Fdn(s,c,void 0)}function Fdn(s,c,g){let d=c.getChildren(),h=0,_=!1;for(let S of d){if(g&&S===g)return!_&&S.kind===28&&h++,h;if(of(S)){h+=qVs(S,s),_=!0;continue}if(S.kind!==28){h++,_=!0;continue}if(_){_=!1;continue}h++}return g?h:d.length&&Ei(d).kind===28?h+1:h}function tPs(s,c,g,d){return pe.assert(g>=c.getStart(),"Assumed 'position' could not occur before node."),sge(c)?g1e(c,g,d)?0:s+2:s+1}function zXt(s,c,g){let d=GP(s.template)?1:s.template.templateSpans.length+1;return c!==0&&pe.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:s},argumentsSpan:nPs(s,g),argumentIndex:c,argumentCount:d}}function rPs(s,c){let g=s.getFullStart(),d=Yu(c.text,s.getEnd(),!1);return zd(g,d-g)}function nPs(s,c){let g=s.template,d=g.getStart(),h=g.getEnd();return g.kind===229&&Ei(g.templateSpans).literal.getFullWidth()===0&&(h=Yu(c.text,h,!1)),zd(d,h-d)}function iPs(s,c,g,d,h){for(let _=s;!ll(_)&&(h||!$u(_));_=_.parent){pe.assert(cy(_.parent,_),"Not a subspan",()=>`Child: ${pe.formatSyntaxKind(_.kind)}, parent: ${pe.formatSyntaxKind(_.parent.kind)}`);let S=JVs(_,c,g,d);if(S)return S}}function sPs(s,c,g){let d=s.getChildren(g),h=d.indexOf(c);return pe.assert(h>=0&&d.length>h+1),d[h+1]}function Zdn(s){return s.kind===0?Qge(s.node):s.called}function Ldn(s){return s.kind===0?s.node:s.kind===1?s.called:s.node}var rWe=70246400;function Vdn(s,c,{isTypeParameterList:g,argumentCount:d,argumentsSpan:h,invocation:_,argumentIndex:S},R,T,W){var V;let M=Ldn(_),ee=_.kind===2?_.symbol:T.getSymbolAtLocation(Zdn(_))||W&&((V=c.declaration)==null?void 0:V.symbol),re=ee?jde(T,ee,W?R:void 0,void 0):E,ge=At(s,Te=>cPs(Te,re,g,T,M,R)),Ie=0,_e=0;for(let Te=0;Te1)){let We=0;for(let Ue of Ze){if(Ue.isVariadic||Ue.parameters.length>=d){Ie=_e+We;break}We++}}_e+=Ze.length}pe.assert(Ie!==-1);let Ee={items:vt(ge,Fl),applicableSpan:h,selectedItemIndex:Ie,argumentIndex:S,argumentCount:d},Ne=Ee.items[Ie];if(Ne.isVariadic){let Te=Se(Ne.parameters,Ze=>!!Ze.isRest);-1Wdn(M,g,d,h,S)),T=s.getDocumentationComment(g),W=s.getJsDocTags(g);return{isVariadic:!1,prefixDisplayParts:[..._,k0(30)],suffixDisplayParts:[k0(32)],separatorDisplayParts:Pdn,parameters:R,documentation:T,tags:W}}var Pdn=[k0(28),BI()];function cPs(s,c,g,d,h,_){let S=(g?uPs:gPs)(s,d,h,_);return At(S,({isVariadic:R,parameters:T,prefix:W,suffix:V})=>{let M=[...c,...W],ee=[...V,...lPs(s,h,d)],re=s.getDocumentationComment(d),ge=s.getJsDocTags();return{isVariadic:R,prefixDisplayParts:M,suffixDisplayParts:ee,separatorDisplayParts:Pdn,parameters:T,documentation:re,tags:ge}})}function lPs(s,c,g){return XP(d=>{d.writePunctuation(":"),d.writeSpace(" ");let h=g.getTypePredicateOfSignature(s);h?g.writeTypePredicate(h,c,void 0,d):g.writeType(g.getReturnTypeOfSignature(s),c,void 0,d)})}function uPs(s,c,g,d){let h=(s.target||s).typeParameters,_=gQ(),S=(h||E).map(T=>Wdn(T,c,g,d,_)),R=s.thisParameter?[c.symbolToParameterDeclaration(s.thisParameter,g,rWe)]:[];return c.getExpandedParameters(s).map(T=>{let W=me.createNodeArray([...R,...At(T,M=>c.symbolToParameterDeclaration(M,g,rWe))]),V=XP(M=>{_.writeList(2576,W,d,M)});return{isVariadic:!1,parameters:S,prefix:[k0(30)],suffix:[k0(32),...V]}})}function gPs(s,c,g,d){let h=gQ(),_=XP(T=>{if(s.typeParameters&&s.typeParameters.length){let W=me.createNodeArray(s.typeParameters.map(V=>c.typeParameterToDeclaration(V,g,rWe)));h.writeList(53776,W,d,T)}}),S=c.getExpandedParameters(s),R=c.hasEffectiveRestParameter(s)?S.length===1?T=>!0:T=>{var W;return!!(T.length&&((W=Gs(T[T.length-1],bw))==null?void 0:W.links.checkFlags)&32768)}:T=>!1;return S.map(T=>({isVariadic:R(T),parameters:T.map(W=>APs(W,c,g,d,h)),prefix:[..._,k0(21)],suffix:[k0(22)]}))}function APs(s,c,g,d,h){let _=XP(T=>{let W=c.symbolToParameterDeclaration(s,g,rWe);h.writeNode(4,W,d,T)}),S=c.isOptionalParameter(s.valueDeclaration),R=bw(s)&&!!(s.links.checkFlags&32768);return{name:s.name,documentation:s.getDocumentationComment(c),displayParts:_,isOptional:S,isRest:R}}function Wdn(s,c,g,d,h){let _=XP(S=>{let R=c.typeParameterToDeclaration(s,g,rWe);h.writeNode(4,R,d,S)});return{name:s.symbol.name,documentation:s.symbol.getDocumentationComment(c),displayParts:_,isOptional:!1,isRest:!1}}var qit={};o(qit,{getSmartSelectionRange:()=>dPs});function dPs(s,c){var g,d;let h={textSpan:wA(c.getFullStart(),c.getEnd())},_=c;e:for(;;){let T=IPs(_);if(!T.length)break;for(let W=0;Ws)break e;let re=Ps(n2(c.text,M.end));if(re&&re.kind===2&&R(re.pos,re.end),pPs(c,s,M)){if(n7(M)&&kd(_)&&!yE(M.getStart(c),M.getEnd(),c)&&S(M.getStart(c),M.getEnd()),$u(M)||pie(M)||tQ(M)||nde(M)||V&&tQ(V)||u_(M)&&Ch(_)||_ie(M)&&u_(_)||nc(M)&&_ie(_)&&T.length===1||W3(M)||qL(M)||yU(M)){_=M;break}if(pie(_)&&ee&&$6(ee)){let Ee=M.getFullStart()-2,Ne=ee.getStart()+1;S(Ee,Ne)}let ge=_ie(M)&&hPs(V)&&mPs(ee)&&!yE(V.getStart(),ee.getStart(),c),Ie=ge?V.getEnd():M.getStart(),_e=ge?ee.getStart():CPs(c,M);if(Xm(M)&&((g=M.jsDoc)!=null&&g.length)&&S(ma(M.jsDoc).getStart(),_e),_ie(M)){let Ee=M.getChildren()[0];Ee&&Xm(Ee)&&((d=Ee.jsDoc)!=null&&d.length)&&Ee.getStart()!==M.pos&&(Ie=Math.min(Ie,ma(Ee.jsDoc).getStart()))}S(Ie,_e),(Zg(M)||AP(M))&&S(Ie+1,_e-1),_=M;break}if(W===T.length-1)break e}}return h;function S(T,W){if(T!==W){let V=wA(T,W);(!h||!Jie(V,h.textSpan)&&zR(V,s))&&(h={textSpan:V,...h&&{parent:h}})}}function R(T,W){S(T,W);let V=T;for(;c.text.charCodeAt(V)===47;)V++;S(V,W)}}function pPs(s,c,g){return pe.assert(g.pos<=c),cR===s.readonlyToken||R.kind===148||R===s.questionToken||R.kind===58),S=U1e(_,({kind:R})=>R===23||R===169||R===24);return[g,K1e($it(S,({kind:R})=>R===59)),h]}if(ss(s)){let g=U1e(s.getChildren(),S=>S===s.name||k(s.modifiers,S)),d=((c=g[0])==null?void 0:c.kind)===321?g[0]:void 0,h=d?g.slice(1):g,_=$it(h,({kind:S})=>S===59);return d?[d,K1e(_)]:_}if(Si(s)){let g=U1e(s.getChildren(),h=>h===s.dotDotDotToken||h===s.name),d=U1e(g,h=>h===g[0]||h===s.questionToken);return $it(d,({kind:h})=>h===64)}return hg(s)?$it(s.getChildren(),({kind:g})=>g===64):s.getChildren()}function U1e(s,c){let g=[],d;for(let h of s)c(h)?(d=d||[],d.push(h)):(d&&(g.push(K1e(d)),d=void 0),g.push(h));return d&&g.push(K1e(d)),g}function $it(s,c,g=!0){if(s.length<2)return s;let d=Se(s,c);if(d===-1)return s;let h=s.slice(0,d),_=s[d],S=Ei(s),R=g&&S.kind===27,T=s.slice(d+1,R?s.length-1:void 0),W=Hr([h.length?K1e(h):void 0,_,T.length?K1e(T):void 0]);return R?W.concat(S):W}function K1e(s){return pe.assertGreaterThanOrEqual(s.length,1),TB(H3.createSyntaxList(s),s[0].pos,Ei(s).end)}function hPs(s){let c=s&&s.kind;return c===19||c===23||c===21||c===287}function mPs(s){let c=s&&s.kind;return c===20||c===24||c===22||c===288}function CPs(s,c){switch(c.kind){case 342:case 339:case 349:case 347:case 344:return s.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var i9={};o(i9,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>yPs,getSymbolKind:()=>Mdn,getSymbolModifiers:()=>_Ps});var Odn=70246400;function Mdn(s,c,g){let d=Hdn(s,c,g);if(d!=="")return d;let h=sU(c);return h&32?Cp(c,232)?"local class":"class":h&384?"enum":h&524288?"type":h&64?"interface":h&262144?"type parameter":h&8?"enum member":h&2097152?"alias":h&1536?"module":d}function Hdn(s,c,g){let d=s.getRootSymbols(c);if(d.length===1&&ma(d).flags&8192&&s.getTypeOfSymbolAtLocation(c,g).getNonNullableType().getCallSignatures().length!==0)return"method";if(s.isUndefinedSymbol(c))return"var";if(s.isArgumentsSymbol(c))return"local var";if(g.kind===110&&un(g)||YL(g))return"parameter";let h=sU(c);if(h&3)return jrt(c)?"parameter":c.valueDeclaration&&rI(c.valueDeclaration)?"const":c.valueDeclaration&&tI(c.valueDeclaration)?"using":c.valueDeclaration&&Sd(c.valueDeclaration)?"await using":F(c.declarations,rS)?"let":Xdn(c)?"local var":"var";if(h&16)return Xdn(c)?"local function":"function";if(h&32768)return"getter";if(h&65536)return"setter";if(h&8192)return"method";if(h&16384)return"constructor";if(h&131072)return"index";if(h&4){if(h&33554432&&c.links.checkFlags&6){let _=F(s.getRootSymbols(c),S=>{if(S.getFlags()&98311)return"property"});return _||(s.getTypeOfSymbolAtLocation(c,g).getCallSignatures().length?"method":"property")}return"property"}return""}function Ydn(s){if(s.declarations&&s.declarations.length){let[c,...g]=s.declarations,d=B(g)&&gPe(c)&&jt(g,_=>!gPe(_))?65536:0,h=Qde(c,d);if(h)return h.split(",")}return[]}function _Ps(s,c){if(!c)return"";let g=new Set(Ydn(c));if(c.flags&2097152){let d=s.getAliasedSymbol(c);d!==c&&F(Ydn(d),h=>{g.add(h)})}return c.flags&16777216&&g.add("optional"),g.size>0?Do(g.values()).join(","):""}function Qdn(s,c,g,d,h,_,S,R,T,W){var V;let M=[],ee=[],re=[],ge=sU(c),Ie=S&1?Hdn(s,c,h):"",_e=!1,Ee=h.kind===110&&nne(h)||YL(h),Ne,Te,Ze=!1,We={canIncreaseExpansionDepth:!1,truncated:!1},Ue=!1;if(h.kind===110&&!Ee)return{displayParts:[y1(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(Ie!==""||ge&32||ge&2097152){if(Ie==="getter"||Ie==="setter"){let Dt=de(c.declarations,tr=>tr.name===h&&tr.kind!==212);if(Dt)switch(Dt.kind){case 178:Ie="getter";break;case 179:Ie="setter";break;case 173:Ie="accessor";break;default:pe.assertNever(Dt)}else Ie="property"}let Gt;if(_??(_=Ee?s.getTypeAtLocation(h):s.getTypeOfSymbolAtLocation(c,h)),h.parent&&h.parent.kind===212){let Dt=h.parent.name;(Dt===h||Dt&&Dt.getFullWidth()===0)&&(h=h.parent)}let nt;if(av(h)?nt=h:(frt(h)||Mde(h)||h.parent&&(eI(h.parent)||MI(h.parent))&&bu(c.valueDeclaration))&&(nt=h.parent),nt){Gt=s.getResolvedSignature(nt);let Dt=nt.kind===215||Zl(nt)&&nt.expression.kind===108,tr=Dt?_.getConstructSignatures():_.getCallSignatures();if(Gt&&!k(tr,Gt.target)&&!k(tr,Gt)&&(Gt=tr.length?tr[0]:void 0),Gt){switch(Dt&&ge&32?(Ie="constructor",Lt(_.symbol,Ie)):ge&2097152?(Ie="alias",Ke(Ie),M.push(BI()),Dt&&(Gt.flags&4&&(M.push(y1(128)),M.push(BI())),M.push(y1(105)),M.push(BI())),Rt(c)):Lt(c,Ie),Ie){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":M.push(k0(59)),M.push(BI()),!(la(_)&16)&&_.symbol&&(Or(M,jde(s,_.symbol,d,void 0,5)),M.push(Uie())),Dt&&(Gt.flags&4&&(M.push(y1(128)),M.push(BI())),M.push(y1(105)),M.push(BI())),Pt(Gt,tr,262144);break;default:Pt(Gt,tr)}_e=!0,Ze=tr.length>1}}else if(Ert(h)&&!(ge&98304)||h.kind===137&&h.parent.kind===177){let Dt=h.parent;if(c.declarations&&de(c.declarations,ur=>ur===(h.kind===137?Dt.parent:Dt))){let ur=Dt.kind===177?_.getNonNullableType().getConstructSignatures():_.getNonNullableType().getCallSignatures();s.isImplementationOfOverload(Dt)?Gt=ur[0]:Gt=s.getSignatureFromDeclaration(Dt),Dt.kind===177?(Ie="constructor",Lt(_.symbol,Ie)):Lt(Dt.kind===180&&!(_.symbol.flags&2048||_.symbol.flags&4096)?_.symbol:c,Ie),Gt&&Pt(Gt,ur),_e=!0,Ze=ur.length>1}}}if(ge&32&&!_e&&!Ee){ot();let Gt=Cp(c,232);Gt&&(Ke("local class"),M.push(BI())),_t(c,S)||(Gt||(M.push(y1(86)),M.push(BI())),Rt(c),_r(c,g))}if(ge&64&&S&2&&(Tt(),_t(c,S)||(M.push(y1(120)),M.push(BI()),Rt(c),_r(c,g))),ge&524288&&S&2&&(Tt(),M.push(y1(156)),M.push(BI()),Rt(c),_r(c,g),M.push(BI()),M.push(Kde(64)),M.push(BI()),Or(M,h1e(s,h.parent&&s2(h.parent)?s.getTypeAtLocation(h.parent):s.getDeclaredTypeOfSymbol(c),d,8388608,T,W,We))),ge&384&&(Tt(),_t(c,S)||(jt(c.declarations,Gt=>V3(Gt)&&VA(Gt))&&(M.push(y1(87)),M.push(BI())),M.push(y1(94)),M.push(BI()),Rt(c,void 0))),ge&1536&&!Ee&&(Tt(),!_t(c,S))){let Gt=Cp(c,268),nt=Gt&&Gt.name&&Gt.name.kind===80;M.push(y1(nt?145:144)),M.push(BI()),Rt(c)}if(ge&262144&&S&2)if(Tt(),M.push(k0(21)),M.push(gS("type parameter")),M.push(k0(22)),M.push(BI()),Rt(c),c.parent)Qe(),Rt(c.parent,d),_r(c.parent,d);else{let Gt=Cp(c,169);if(Gt===void 0)return pe.fail();let nt=Gt.parent;if(nt)if(bu(nt)){Qe();let Dt=s.getSignatureFromDeclaration(nt);nt.kind===181?(M.push(y1(105)),M.push(BI())):nt.kind!==180&&nt.name&&Rt(nt.symbol),Or(M,qrt(s,Dt,g,32))}else FB(nt)&&(Qe(),M.push(y1(156)),M.push(BI()),Rt(nt.symbol),_r(nt.symbol,g))}if(ge&8){Ie="enum member",Lt(c,"enum member");let Gt=(V=c.declarations)==null?void 0:V[0];if(Gt?.kind===307){let nt=s.getConstantValue(Gt);nt!==void 0&&(M.push(BI()),M.push(Kde(64)),M.push(BI()),M.push(SE(Bge(nt),typeof nt=="number"?7:8)))}}if(c.flags&2097152){if(Tt(),!_e||ee.length===0&&re.length===0){let Gt=s.getAliasedSymbol(c);if(Gt!==c&&Gt.declarations&&Gt.declarations.length>0){let nt=Gt.declarations[0],Dt=Il(nt);if(Dt&&!_e){let tr=RY(nt)&&Ga(nt,128),ur=c.name!=="default"&&!tr,Gr=Qdn(s,Gt,ms(nt),d,Dt,_,S,ur?c:Gt,T,W);M.push(...Gr.displayParts),M.push(Uie()),Ne=Gr.documentation,Te=Gr.tags,We&&Gr.canIncreaseVerbosityLevel&&(We.canIncreaseExpansionDepth=!0)}else Ne=Gt.getContextualDocumentationComment(nt,s),Te=Gt.getJsDocTags(s)}}if(c.declarations)switch(c.declarations[0].kind){case 271:M.push(y1(95)),M.push(BI()),M.push(y1(145));break;case 278:M.push(y1(95)),M.push(BI()),M.push(y1(c.declarations[0].isExportEquals?64:90));break;case 282:M.push(y1(95));break;default:M.push(y1(102))}M.push(BI()),Rt(c),F(c.declarations,Gt=>{if(Gt.kind===272){let nt=Gt;if(LL(nt))M.push(BI()),M.push(Kde(64)),M.push(BI()),M.push(y1(149)),M.push(k0(21)),M.push(SE(xp(_7(nt)),8)),M.push(k0(22));else{let Dt=s.getSymbolAtLocation(nt.moduleReference);Dt&&(M.push(BI()),M.push(Kde(64)),M.push(BI()),Rt(Dt,d))}return!0}})}if(!_e)if(Ie!==""){if(_){if(Ee?(Tt(),M.push(y1(110))):Lt(c,Ie),Ie==="property"||Ie==="accessor"||Ie==="getter"||Ie==="setter"||Ie==="JSX attribute"||ge&3||Ie==="local var"||Ie==="index"||Ie==="using"||Ie==="await using"||Ee){if(M.push(k0(59)),M.push(BI()),_.symbol&&_.symbol.flags&262144&&Ie!=="index"){let Gt=XP(nt=>{let Dt=s.typeParameterToDeclaration(_,d,Odn,void 0,void 0,T,W,We);Ye().writeNode(4,Dt,ms($l(d)),nt)},T);Or(M,Gt)}else Or(M,h1e(s,_,d,void 0,T,W,We));if(bw(c)&&c.links.target&&bw(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let Gt=c.links.target.links.tupleLabelDeclaration;pe.assertNode(Gt.name,Ir),M.push(BI()),M.push(k0(21)),M.push(gS(Vo(Gt.name))),M.push(k0(22))}}else if(ge&16||ge&8192||ge&16384||ge&131072||ge&98304||Ie==="method"){let Gt=_.getNonNullableType().getCallSignatures();Gt.length&&(Pt(Gt[0],Gt),Ze=Gt.length>1)}}}else Ie=Mdn(s,c,h);if(ee.length===0&&!Ze&&(ee=c.getContextualDocumentationComment(d,s)),ee.length===0&&ge&4&&c.parent&&c.declarations&&F(c.parent.declarations,Gt=>Gt.kind===308))for(let Gt of c.declarations){if(!Gt.parent||Gt.parent.kind!==227)continue;let nt=s.getSymbolAtLocation(Gt.parent.right);if(nt&&(ee=nt.getDocumentationComment(s),re=nt.getJsDocTags(s),ee.length>0))break}if(ee.length===0&&Ir(h)&&c.valueDeclaration&&hg(c.valueDeclaration)){let Gt=c.valueDeclaration,nt=Gt.parent,Dt=Gt.propertyName||Gt.name;if(Ir(Dt)&&Km(nt)){let tr=c2(Dt),ur=s.getTypeAtLocation(nt);ee=X(ur.isUnion()?ur.types:[ur],Gr=>{let dt=Gr.getProperty(tr);return dt?dt.getDocumentationComment(s):void 0})||E}}re.length===0&&!Ze&&!GY(h)&&(re=c.getContextualJsDocTags(d,s)),ee.length===0&&Ne&&(ee=Ne),re.length===0&&Te&&(re=Te);let $e=!We.truncated&&We.canIncreaseExpansionDepth;return{displayParts:M,documentation:ee,symbolKind:Ie,tags:re.length===0?void 0:re,canIncreaseVerbosityLevel:W!==void 0?$e:void 0};function Ye(){return gQ()}function Tt(){M.length&&M.push(Uie()),ot()}function ot(){R&&(Ke("alias"),M.push(BI()))}function Qe(){M.push(BI()),M.push(y1(103)),M.push(BI())}function mt(Gt,nt){if(W===void 0)return!1;let Dt=Gt.flags&96?s.getDeclaredTypeOfSymbol(Gt):s.getTypeOfSymbolAtLocation(Gt,h);return!Dt||s.isLibType(Dt)?!1:0{let Gr=s.getEmitResolver().symbolToDeclarations(Gt,Dt,17408,T,W!==void 0?W-1:void 0,We),dt=Ye(),pr=Gt.valueDeclaration&&ms(Gt.valueDeclaration);Gr.forEach((st,ir)=>{ir>0&&ur.writeLine(),dt.writeNode(4,st,pr,ur)})},T);return Or(M,tr),Ue=!0,!0}return!1}function Rt(Gt,nt){let Dt;R&&Gt===c&&(Gt=R),Ie==="index"&&(Dt=s.getIndexInfosOfIndexSymbol(Gt));let tr=[];Gt.flags&131072&&Dt?(Gt.parent&&(tr=jde(s,Gt.parent)),tr.push(k0(23)),Dt.forEach((ur,Gr)=>{tr.push(...h1e(s,ur.keyType)),Gr!==Dt.length-1&&(tr.push(BI()),tr.push(k0(52)),tr.push(BI()))}),tr.push(k0(24))):tr=jde(s,Gt,nt||g,void 0,7),Or(M,tr),c.flags&16777216&&M.push(k0(58))}function Lt(Gt,nt){Tt(),nt&&(Ke(nt),Gt&&!jt(Gt.declarations,Dt=>lA(Dt)||(UA(Dt)||vd(Dt))&&!Dt.name)&&(M.push(BI()),Rt(Gt)))}function Ke(Gt){switch(Gt){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":M.push(zrt(Gt));return;default:M.push(k0(21)),M.push(zrt(Gt)),M.push(k0(22));return}}function Pt(Gt,nt,Dt=0){Or(M,qrt(s,Gt,d,Dt|32,T,W,We)),nt.length>1&&(M.push(BI()),M.push(k0(21)),M.push(Kde(40)),M.push(SE((nt.length-1).toString(),7)),M.push(BI()),M.push(gS(nt.length===2?"overload":"overloads")),M.push(k0(22))),ee=Gt.getDocumentationComment(s),re=Gt.getJsDocTags(),nt.length>1&&ee.length===0&&re.length===0&&(ee=nt[0].getDocumentationComment(s),re=nt[0].getJsDocTags().filter(tr=>tr.name!=="deprecated"))}function _r(Gt,nt){let Dt=XP(tr=>{let ur=s.symbolToTypeParameterDeclarations(Gt,nt,Odn);Ye().writeList(53776,ur,ms($l(nt)),tr)});Or(M,Dt)}}function yPs(s,c,g,d,h,_=DU(h),S,R,T){return Qdn(s,c,g,d,h,void 0,_,S,R,T)}function Xdn(s){return s.parent?!1:F(s.declarations,c=>{if(c.kind===219)return!0;if(c.kind!==261&&c.kind!==263)return!1;for(let g=c.parent;!mP(g);g=g.parent)if(g.kind===308||g.kind===269)return!1;return!0})}var xo={};o(xo,{ChangeTracker:()=>SPs,LeadingTriviaOption:()=>Kdn,TrailingTriviaOption:()=>jdn,applyChanges:()=>r4t,assignPositionsToNode:()=>nst,createWriter:()=>qdn,deleteNode:()=>YF,getAdjustedEndPosition:()=>jz,isThisTypeAnnotatable:()=>EPs,isValidLocationToAddComment:()=>$dn});function Jdn(s){let c=s.__pos;return pe.assert(typeof c=="number"),c}function qXt(s,c){pe.assert(typeof c=="number"),s.__pos=c}function Udn(s){let c=s.__end;return pe.assert(typeof c=="number"),c}function $Xt(s,c){pe.assert(typeof c=="number"),s.__end=c}var Kdn=(s=>(s[s.Exclude=0]="Exclude",s[s.IncludeAll=1]="IncludeAll",s[s.JSDoc=2]="JSDoc",s[s.StartLine=3]="StartLine",s))(Kdn||{}),jdn=(s=>(s[s.Exclude=0]="Exclude",s[s.ExcludeWhitespace=1]="ExcludeWhitespace",s[s.Include=2]="Include",s))(jdn||{});function zdn(s,c){return Yu(s,c,!1,!0)}function bPs(s,c){let g=c;for(;g0?1:0,ee=OD(Z7(s,W)+M,s);return ee=zdn(s.text,ee),OD(Z7(s,ee),s)}function e4t(s,c,g){let{end:d}=c,{trailingTriviaOption:h}=g;if(h===2){let _=n2(s.text,d);if(_){let S=Z7(s,c.end);for(let R of _){if(R.kind===2||Z7(s,R.pos)>S)break;if(Z7(s,R.end)>S)return Yu(s.text,R.end,!0,!0)}}}}function jz(s,c,g){var d;let{end:h}=c,{trailingTriviaOption:_}=g;if(_===0)return h;if(_===1){let T=Nn(n2(s.text,h),fE(s.text,h)),W=(d=T?.[T.length-1])==null?void 0:d.end;return W||h}let S=e4t(s,c,g);if(S)return S;let R=Yu(s.text,h,!0);return R!==h&&(_===2||Cl(s.text.charCodeAt(R-1)))?R:h}function est(s,c){return!!c&&!!s.parent&&(c.kind===28||c.kind===27&&s.parent.kind===211)}function EPs(s){return UA(s)||ih(s)}var SPs=class $kr{constructor(c,g){this.newLineCharacter=c,this.formatContext=g,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new $kr(OF(c.host,c.formatContext.options),c.formatContext)}static with(c,g){let d=$kr.fromContext(c);return g(d),d.getChanges()}pushRaw(c,g){pe.assertEqual(c.fileName,g.fileName);for(let d of g.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:JVe(d.span)})}deleteRange(c,g){this.changes.push({kind:0,sourceFile:c,range:g})}delete(c,g){this.deletedNodes.push({sourceFile:c,node:g})}deleteNode(c,g,d={leadingTriviaOption:1}){this.deleteRange(c,z1e(c,g,g,d))}deleteNodes(c,g,d={leadingTriviaOption:1},h){for(let _ of g){let S=VU(c,_,d,h),R=jz(c,_,d);this.deleteRange(c,{pos:S,end:R}),h=!!e4t(c,_,d)}}deleteModifier(c,g){this.deleteRange(c,{pos:g.getStart(c),end:Yu(c.text,g.end,!0)})}deleteNodeRange(c,g,d,h={leadingTriviaOption:1}){let _=VU(c,g,h),S=jz(c,d,h);this.deleteRange(c,{pos:_,end:S})}deleteNodeRangeExcludingEnd(c,g,d,h={leadingTriviaOption:1}){let _=VU(c,g,h),S=d===void 0?c.text.length:VU(c,d,h);this.deleteRange(c,{pos:_,end:S})}replaceRange(c,g,d,h={}){this.changes.push({kind:1,sourceFile:c,range:g,options:h,node:d})}replaceNode(c,g,d,h=j1e){this.replaceRange(c,z1e(c,g,g,h),d,h)}replaceNodeRange(c,g,d,h,_=j1e){this.replaceRange(c,z1e(c,g,d,_),h,_)}replaceRangeWithNodes(c,g,d,h={}){this.changes.push({kind:2,sourceFile:c,range:g,options:h,nodes:d})}replaceNodeWithNodes(c,g,d,h=j1e){this.replaceRangeWithNodes(c,z1e(c,g,g,h),d,h)}replaceNodeWithText(c,g,d){this.replaceRangeWithText(c,z1e(c,g,g,j1e),d)}replaceNodeRangeWithNodes(c,g,d,h,_=j1e){this.replaceRangeWithNodes(c,z1e(c,g,d,_),h,_)}nodeHasTrailingComment(c,g,d=j1e){return!!e4t(c,g,d)}nextCommaToken(c,g){let d=fQ(g,g.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,g,d){let h=this.nextCommaToken(c,g)?"":","+this.newLineCharacter;this.replaceNode(c,g,d,{suffix:h})}insertNodeAt(c,g,d,h={}){this.replaceRange(c,Gy(g),d,h)}insertNodesAt(c,g,d,h={}){this.replaceRangeWithNodes(c,Gy(g),d,h)}insertNodeAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertNodesAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertAtTopOfFile(c,g,d){let h=kPs(c),_={prefix:h===0?void 0:this.newLineCharacter,suffix:(Cl(c.text.charCodeAt(h))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Ki(g)?this.insertNodesAt(c,h,g,_):this.insertNodeAt(c,h,g,_)}insertNodesAtEndOfFile(c,g,d){this.insertAtEndOfFile(c,g,d)}insertAtEndOfFile(c,g,d){let h=c.end+1,_={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,h,g,_)}insertStatementsInNewFile(c,g,d){this.newFileChanges||(this.newFileChanges=dl()),this.newFileChanges.add(c,{oldFile:d,statements:g})}insertFirstParameter(c,g,d){let h=Nc(g);h?this.insertNodeBefore(c,h,d):this.insertNodeAt(c,g.pos,d)}insertNodeBefore(c,g,d,h=!1,_={}){this.insertNodeAt(c,VU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,d,h))}insertNodesBefore(c,g,d,h=!1,_={}){this.insertNodesAt(c,VU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,ma(d),h))}insertModifierAt(c,g,d,h={}){this.insertNodeAt(c,g,me.createToken(d),h)}insertModifierBefore(c,g,d){return this.insertModifierAt(c,d.getStart(c),g,{suffix:" "})}insertCommentBeforeLine(c,g,d,h){let _=OD(g,c),S=EMt(c.text,_),R=$dn(c,S),T=Yie(c,R?S:d),W=c.text.slice(_,S),V=`${R?"":this.newLineCharacter}//${h}${this.newLineCharacter}${W}`;this.insertText(c,T.getStart(c),V)}insertJsdocCommentBefore(c,g,d){let h=g.getStart(c);if(g.jsDoc)for(let R of g.jsDoc)this.deleteRange(c,{pos:PB(R.getStart(c),c),end:jz(c,R,{})});let _=tPe(c.text,h-1),S=c.text.slice(_,h);this.insertNodeAt(c,h,d,{suffix:this.newLineCharacter+S})}createJSDocText(c,g){let d=er(g.jsDoc,_=>Xs(_.comment)?me.createJSDocText(_.comment):_.comment),h=Ps(g.jsDoc);return h&&yE(h.pos,h.end,c)&&B(d)===0?void 0:me.createNodeArray(fe(d,me.createJSDocText(` +`)))}replaceJSDocComment(c,g,d){this.insertJsdocCommentBefore(c,vPs(g),me.createJSDocComment(this.createJSDocText(c,g),me.createNodeArray(d)))}addJSDocTags(c,g,d){let h=vt(g.jsDoc,S=>S.tags),_=d.filter(S=>!h.some((R,T)=>{let W=BPs(R,S);return W&&(h[T]=W),!!W}));this.replaceJSDocComment(c,g,[...h,..._])}filterJSDocTags(c,g,d){this.replaceJSDocComment(c,g,Me(vt(g.jsDoc,h=>h.tags),d))}replaceRangeWithText(c,g,d){this.changes.push({kind:3,sourceFile:c,range:g,text:d})}insertText(c,g,d){this.replaceRangeWithText(c,Gy(g),d)}tryInsertTypeAnnotation(c,g,d){let h;if(bu(g)){if(h=qd(g,22,c),!h){if(!lA(g))return!1;h=ma(g.parameters)}}else h=(g.kind===261?g.exclamationToken:g.questionToken)??g.name;return this.insertNodeAt(c,h.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,g,d){let h=qd(g,21,c).getStart(c)+1,_=g.parameters.length?", ":"";this.insertNodeAt(c,h,d,{prefix:"this: ",suffix:_})}insertTypeParameters(c,g,d){let h=(qd(g,21,c)||ma(g.parameters)).getStart(c);this.insertNodesAt(c,h,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,g,d){return Lc(c)||PI(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:nc(c)?{suffix:", "}:Si(c)?Si(g)?{suffix:", "}:{}:Zg(c)&&Mf(c.parent)||yN(c)?{suffix:", "}:uy(c)?{suffix:","+(d?this.newLineCharacter:" ")}:pe.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,g,d){let h=Nc(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[d,...g.body.statements]):this.insertNodeBefore(c,h,d)}insertNodeAtConstructorStartAfterSuperCall(c,g,d){let h=de(g.body.statements,_=>VC(_)&&Dy(_.expression));!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}insertNodeAtConstructorEnd(c,g,d){let h=li(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}replaceConstructorBody(c,g,d){this.replaceNode(c,g.body,me.createBlock(d,!0))}insertNodeAtEndOfScope(c,g,d){let h=VU(c,g.getLastToken(),{});this.insertNodeAt(c,h,d,{prefix:Cl(c.text.charCodeAt(g.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtObjectStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtStartWorker(c,g,d){let h=this.guessIndentationFromExistingMembers(c,g)??this.computeIndentationForNewMember(c,g);this.insertNodeAt(c,tst(g).pos,d,this.getInsertNodeAtStartInsertOptions(c,g,h))}guessIndentationFromExistingMembers(c,g){let d,h=g;for(let _ of tst(g)){if(M7(h,_,c))return;let S=_.getStart(c),R=Im.SmartIndenter.findFirstNonWhitespaceColumn(PB(S,c),S,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;h=_}return d}computeIndentationForNewMember(c,g){let d=g.getStart(c);return Im.SmartIndenter.findFirstNonWhitespaceColumn(PB(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,g,d){let _=tst(g).length===0,S=!this.classesWithNodesInsertedAtStart.has(rd(g));S&&this.classesWithNodesInsertedAtStart.set(rd(g),{node:g,sourceFile:c});let R=og(g)&&(!Zu(c)||!_),T=og(g)&&Zu(c)&&_&&!S;return{indentation:d,prefix:(T?",":"")+this.newLineCharacter,suffix:R?",":g_(g)&&_?";":""}}insertNodeAfterComma(c,g,d){let h=this.insertNodeAfterWorker(c,this.nextCommaToken(c,g)||g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAtEndOfList(c,g,d){this.insertNodeAt(c,g.end,d,{prefix:", "})}insertNodesAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,ma(d));this.insertNodesAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfterWorker(c,g,d){return xPs(g,d)&&c.text.charCodeAt(g.end-1)!==59&&this.replaceRange(c,Gy(g.end),me.createToken(27)),jz(c,g,{})}getInsertNodeAfterOptions(c,g){let d=this.getInsertNodeAfterOptionsWorker(g);return{...d,prefix:g.end===c.end&&Lc(g)?d.prefix?` ${d.prefix}`:` -`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.kind){case 264:case 268:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 261:case 11:case 80:return{prefix:", "};case 304:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 170:return{};default:return pe.assert(Lc(c)||mY(c)),{suffix:this.newLineCharacter}}}insertName(c,g,d){if(pe.assert(!g.name),g.kind===220){let h=qd(g,39,c),_=qd(g,21,c);_?(this.insertNodesAt(c,_.getStart(c),[me.createToken(100),me.createIdentifier(d)],{joiner:" "}),YF(this,c,h)):(this.insertText(c,ma(g.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,h,me.createToken(22))),g.body.kind!==242&&(this.insertNodesAt(c,g.body.getStart(c),[me.createToken(19),me.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,g.body.end,[me.createToken(27),me.createToken(20)],{joiner:" "}))}else{let h=qd(g,g.kind===219?100:86,c).end;this.insertNodeAt(c,h,me.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,g){this.insertText(c,g.getStart(c),"export ")}insertImportSpecifierAtIndex(c,g,d,h){let _=d.elements[h-1];_?this.insertNodeInListAfter(c,_,g):this.insertNodeBefore(c,d.elements[0],g,!yE(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,g,d,h=Im.SmartIndenter.getContainingList(g,c)){if(!h){pe.fail("node is not a list element");return}let _=fP(h,g);if(_<0)return;let S=g.getEnd();if(_!==h.length-1){let R=Jc(c,g.end);if(R&&qit(g,R)){let T=h[_+1],W=Ydn(c.text,T.getFullStart()),V=`${Vi(R.kind)}${c.text.substring(R.end,W)}`;this.insertNodesAt(c,W,[d],{suffix:V})}}else{let R=g.getStart(c),T=PB(R,c),W,V=!1;if(h.length===1)W=28;else{let M=Gm(g.pos,c);W=qit(g,M)?M.kind:28,V=PB(h[_-1].getStart(c),c)!==T}if((oPs(c.text,g.end)||!yE(h.pos,h.end,c))&&(V=!0),V){this.replaceRange(c,Gy(S),me.createToken(W));let M=Im.SmartIndenter.findFirstNonWhitespaceColumn(T,R,c,this.formatContext.options),ee=Yu(c.text,S,!0,!1);for(;ee!==S&&Cl(c.text.charCodeAt(ee-1));)ee--;this.replaceRange(c,Gy(ee),d,{indentation:M,prefix:this.newLineCharacter})}else this.replaceRange(c,Gy(S),d,{prefix:`${Vi(W)} `})}}parenthesizeExpression(c,g){this.replaceRange(c,Nbe(g),me.createParenthesizedExpression(g))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:g})=>{let[d,h]=APs(c,g);if(d!==void 0&&h!==void 0){let _=$it(c).length===0,S=yE(d,h,g);_&&S&&d!==h-1&&this.deleteRange(g,Gy(d,h-1)),S&&this.insertText(g,h-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:g,node:d}of this.deletedNodes)this.deletedNodes.some(h=>h.sourceFile===g&&J5t(h.node,d))||(Ki(d)?this.deleteRange(g,Dbe(g,d)):$Xt.deleteDeclaration(this,c,g,d));c.forEach(g=>{let d=g.getSourceFile(),h=Im.SmartIndenter.getContainingList(g,d);if(g!==Ei(h))return;let _=De(h,S=>!c.has(S),h.length-2);_!==-1&&this.deleteRange(d,{pos:h[_].end,end:zXt(d,h[_+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let g=est.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,h)=>{g.push(est.newFileChanges(h,d,this.newLineCharacter,this.formatContext))}),g}createNewFile(c,g,d){this.insertStatementsInNewFile(g,d,c)}};function lPs(s){if(s.kind!==220)return s;let c=s.parent.kind===173?s.parent:s.parent.parent;return c.jsDoc=s.jsDoc,c}function uPs(s,c){if(s.kind===c.kind)switch(s.kind){case 342:{let g=s,d=c;return Ir(g.name)&&Ir(d.name)&&g.name.escapedText===d.name.escapedText?me.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,g.comment):void 0}case 343:return me.createJSDocReturnTag(void 0,c.typeExpression,s.comment);case 345:return me.createJSDocTypeTag(void 0,c.typeExpression,s.comment)}}function zXt(s,c){return Yu(s.text,VU(s,c,{leadingTriviaOption:1}),!1,!0)}function gPs(s,c,g,d){let h=zXt(s,d);if(g===void 0||yE(jz(s,c,{}),h,s))return h;let _=Gm(d.getStart(s),s);if(qit(c,_)){let S=Gm(c.getStart(s),s);if(qit(g,S)){let R=Yu(s.text,_.getEnd(),!0,!0);if(yE(S.getStart(s),_.getStart(s),s))return Cl(s.text.charCodeAt(R-1))?R-1:R;if(Cl(s.text.charCodeAt(R)))return R}}return h}function APs(s,c){let g=qd(s,19,c),d=qd(s,20,c);return[g?.end,d?.end]}function $it(s){return og(s)?s.properties:s.members}var est;(s=>{function c(R,T,W,V){return Xt(Yn(R,M=>M.sourceFile.path),M=>{let ee=M[0].sourceFile,re=bo(M,(Ie,_e)=>Ie.range.pos-_e.range.pos||Ie.range.end-_e.range.end);for(let Ie=0;Ie`${JSON.stringify(re[Ie].range)} and ${JSON.stringify(re[Ie+1].range)}`);let ge=Xt(re,Ie=>{let _e=t9(Ie.range),Ee=Ie.kind===1?ms(Dd(Ie.node))??Ie.sourceFile:Ie.kind===2?ms(Dd(Ie.nodes[0]))??Ie.sourceFile:Ie.sourceFile,Ne=h(Ie,Ee,ee,T,W,V);if(!(_e.length===Ne.length&&TMt(Ee.text,Ne,_e.start)))return g1e(_e,Ne)});return ge.length>0?{fileName:ee.fileName,textChanges:ge}:void 0})}s.getTextChangesFromChanges=c;function g(R,T,W,V){let M=d(GAe(R),T,W,V);return{fileName:R,textChanges:[g1e(zd(0,0),M)],isNewFile:!0}}s.newFileChanges=g;function d(R,T,W,V){let M=er(T,ge=>ge.statements.map(Ie=>Ie===4?"":S(Ie,ge.oldFile,W).text)).join(W),ee=vz("any file name",M,{languageVersion:99,jsDocParsingMode:1},!0,R),re=Im.formatDocument(ee,V);return qXt(M,re)+W}s.newFileChangesWorker=d;function h(R,T,W,V,M,ee){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ge={},range:{pos:Ie}}=R,_e=Te=>_(Te,T,W,Ie,ge,V,M,ee),Ee=R.kind===2?R.nodes.map(Te=>aa(_e(Te),V)).join(((re=R.options)==null?void 0:re.joiner)||V):_e(R.node),Ne=ge.indentation!==void 0||PB(Ie,T)===Ie?Ee:Ee.replace(/^\s+/,"");return(ge.prefix||"")+Ne+(!ge.suffix||di(Ne,ge.suffix)?"":ge.suffix)}function _(R,T,W,V,{indentation:M,prefix:ee,delta:re},ge,Ie,_e){let{node:Ee,text:Ne}=S(R,T,ge);_e&&_e(Ee,Ne);let Te=gPe(Ie,T),Ze=M!==void 0?M:Im.SmartIndenter.getIndentation(V,W,Te,ee===ge||PB(V,T)===V);re===void 0&&(re=Im.SmartIndenter.shouldIndentChildNode(Te,R)&&Te.indentSize||0);let We={text:Ne,getLineAndCharacterOfPosition($e){return Ra(this,$e)}},Ue=Im.formatNodeGivenIndentation(Ee,We,T.languageVariant,Ze,re,{...Ie,options:Te});return qXt(Ne,Ue)}function S(R,T,W){let V=Qdn(W),M=E1e(W);return MP({newLine:M,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},V).writeNode(4,R,T,V),{text:V.getText(),node:tst(R)}}s.getNonformattedText=S})(est||(est={}));function qXt(s,c){for(let g=c.length-1;g>=0;g--){let{span:d,newText:h}=c[g];s=`${s.substring(0,d.start)}${h}${s.substring(Rs(d))}`}return s}function dPs(s){return Yu(s,0)===s.length}var pPs={...OEe,factory:nie(OEe.factory.flags|1,OEe.factory.baseFactory)};function tst(s){let c=_s(s,tst,pPs,fPs,tst),g=sp(c)?c:Object.create(c);return TB(g,Wdn(s),Odn(s)),g}function fPs(s,c,g,d,h){let _=Ws(s,c,g,d,h);if(!_)return _;pe.assert(s);let S=_===s?me.createNodeArray(_.slice(0)):_;return TB(S,Wdn(s),Odn(s)),S}function Qdn(s){let c=0,g=Bne(s),d=Ke=>{Ke&&UXt(Ke,c)},h=Ke=>{Ke&&KXt(Ke,c)},_=Ke=>{Ke&&UXt(Ke,c)},S=Ke=>{Ke&&KXt(Ke,c)},R=Ke=>{Ke&&UXt(Ke,c)},T=Ke=>{Ke&&KXt(Ke,c)};function W(Ke,Pt){if(Pt||!dPs(Ke)){c=g.getTextPos();let _r=0;for(;dc(Ke.charCodeAt(Ke.length-_r-1));)_r++;c-=_r}}function V(Ke){g.write(Ke),W(Ke,!1)}function M(Ke){g.writeComment(Ke)}function ee(Ke){g.writeKeyword(Ke),W(Ke,!1)}function re(Ke){g.writeOperator(Ke),W(Ke,!1)}function ge(Ke){g.writePunctuation(Ke),W(Ke,!1)}function Ie(Ke){g.writeTrailingSemicolon(Ke),W(Ke,!1)}function _e(Ke){g.writeParameter(Ke),W(Ke,!1)}function Ee(Ke){g.writeProperty(Ke),W(Ke,!1)}function Ne(Ke){g.writeSpace(Ke),W(Ke,!1)}function Te(Ke){g.writeStringLiteral(Ke),W(Ke,!1)}function Ze(Ke,Pt){g.writeSymbol(Ke,Pt),W(Ke,!1)}function We(Ke){g.writeLine(Ke)}function Ue(){g.increaseIndent()}function $e(){g.decreaseIndent()}function Ye(){return g.getText()}function Tt(Ke){g.rawWrite(Ke),W(Ke,!1)}function ot(Ke){g.writeLiteral(Ke),W(Ke,!0)}function Qe(){return g.getTextPos()}function mt(){return g.getLine()}function ht(){return g.getColumn()}function _t(){return g.getIndent()}function Rt(){return g.isAtStartOfLine()}function Lt(){g.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:h,onBeforeEmitNodeArray:_,onAfterEmitNodeArray:S,onBeforeEmitToken:R,onAfterEmitToken:T,write:V,writeComment:M,writeKeyword:ee,writeOperator:re,writePunctuation:ge,writeTrailingSemicolon:Ie,writeParameter:_e,writeProperty:Ee,writeSpace:Ne,writeStringLiteral:Te,writeSymbol:Ze,writeLine:We,increaseIndent:Ue,decreaseIndent:$e,getText:Ye,rawWrite:Tt,writeLiteral:ot,getTextPos:Qe,getLine:mt,getColumn:ht,getIndent:_t,isAtStartOfLine:Rt,hasTrailingComment:()=>g.hasTrailingComment(),hasTrailingWhitespace:()=>g.hasTrailingWhitespace(),clear:Lt}}function IPs(s){let c;for(let W of s.statements)if(nS(W))c=W;else break;let g=0,d=s.text;if(c)return g=c.end,T(),g;let h=mB(d);h!==void 0&&(g=h.length,T());let _=fE(d,g);if(!_)return g;let S,R;for(let W of _){if(W.kind===3){if(g7(d,W.pos)){S={range:W,pinnedOrTripleSlash:!0};continue}}else if(Ore(d,W.pos,W.end)){S={range:W,pinnedOrTripleSlash:!0};continue}if(S){if(S.pinnedOrTripleSlash)break;let V=s.getLineAndCharacterOfPosition(W.pos).line,M=s.getLineAndCharacterOfPosition(S.range.end).line;if(V>=M+2)break}if(s.statements.length){R===void 0&&(R=s.getLineAndCharacterOfPosition(s.statements[0].getStart()).line);let V=s.getLineAndCharacterOfPosition(W.end).line;if(R{function c(_,S,R,T){switch(T.kind){case 170:{let re=T.parent;lA(re)&&re.parameters.length===1&&!qd(re,21,R)?_.replaceNodeWithText(R,T,"()"):z1e(_,S,R,T);break}case 273:case 272:let W=R.imports.length&&T===ma(R.imports).parent||T===de(R.statements,IP);YF(_,R,T,{leadingTriviaOption:W?0:Xm(T)?2:3});break;case 209:let V=T.parent;V.kind===208&&T!==Ei(V.elements)?YF(_,R,T):z1e(_,S,R,T);break;case 261:h(_,S,R,T);break;case 169:z1e(_,S,R,T);break;case 277:let ee=T.parent;ee.elements.length===1?d(_,R,ee):z1e(_,S,R,T);break;case 275:d(_,R,T);break;case 27:YF(_,R,T,{trailingTriviaOption:0});break;case 100:YF(_,R,T,{leadingTriviaOption:0});break;case 264:case 263:YF(_,R,T,{leadingTriviaOption:Xm(T)?2:3});break;default:T.parent?Vw(T.parent)&&T.parent.name===T?g(_,R,T.parent):Zl(T.parent)&&k(T.parent.arguments,T)?z1e(_,S,R,T):YF(_,R,T):YF(_,R,T)}}s.deleteDeclaration=c;function g(_,S,R){if(!R.namedBindings)YF(_,S,R.parent);else{let T=R.name.getStart(S),W=Jc(S,R.name.end);if(W&&W.kind===28){let V=Yu(S.text,W.end,!1,!0);_.deleteRange(S,{pos:T,end:V})}else YF(_,S,R.name)}}function d(_,S,R){if(R.parent.name){let T=pe.checkDefined(Jc(S,R.pos-1));_.deleteRange(S,{pos:T.getStart(S),end:R.end})}else{let T=ML(R,273);YF(_,S,T)}}function h(_,S,R,T){let{parent:W}=T;if(W.kind===300){_.deleteNodeRange(R,qd(W,21,R),qd(W,22,R));return}if(W.declarations.length!==1){z1e(_,S,R,T);return}let V=W.parent;switch(V.kind){case 251:case 250:_.replaceNode(R,T,me.createObjectLiteralExpression());break;case 249:YF(_,R,W);break;case 244:YF(_,R,V,{leadingTriviaOption:Xm(V)?2:3});break;default:pe.assertNever(V)}}})($Xt||($Xt={}));function YF(s,c,g,d={leadingTriviaOption:1}){let h=VU(c,g,d),_=jz(c,g,d);s.deleteRange(c,{pos:h,end:_})}function z1e(s,c,g,d){let h=pe.checkDefined(Im.SmartIndenter.getContainingList(d,g)),_=fP(h,d);if(pe.assert(_!==-1),h.length===1){YF(s,g,d);return}pe.assert(!c.has(d),"Deleting a node twice"),c.add(d),s.deleteRange(g,{pos:zXt(g,d),end:_===h.length-1?jz(g,d,{}):gPs(g,d,h[_-1],h[_+1])})}var Im={};o(Im,{FormattingContext:()=>Udn,FormattingRequestKind:()=>Jdn,RuleAction:()=>Kdn,RuleFlags:()=>jdn,SmartIndenter:()=>DN,anyContext:()=>rst,createTextRangeWithKind:()=>ost,formatDocument:()=>cWs,formatNodeGivenIndentation:()=>fWs,formatOnClosingCurly:()=>aWs,formatOnEnter:()=>iWs,formatOnOpeningCurly:()=>oWs,formatOnSemicolon:()=>sWs,formatSelection:()=>lWs,getAllRules:()=>zdn,getFormatContext:()=>jPs,getFormattingScanner:()=>e4t,getIndentationString:()=>p4t,getRangeOfEnclosingComment:()=>bpn});var Jdn=(s=>(s[s.FormatDocument=0]="FormatDocument",s[s.FormatSelection=1]="FormatSelection",s[s.FormatOnEnter=2]="FormatOnEnter",s[s.FormatOnSemicolon=3]="FormatOnSemicolon",s[s.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",s[s.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",s))(Jdn||{}),Udn=class{constructor(s,c,g){this.sourceFile=s,this.formattingRequestKind=c,this.options=g}updateContext(s,c,g,d,h){this.currentTokenSpan=pe.checkDefined(s),this.currentTokenParent=pe.checkDefined(c),this.nextTokenSpan=pe.checkDefined(g),this.nextTokenParent=pe.checkDefined(d),this.contextNode=pe.checkDefined(h),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let s=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=s===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(s){let c=this.sourceFile.getLineAndCharacterOfPosition(s.getStart(this.sourceFile)).line,g=this.sourceFile.getLineAndCharacterOfPosition(s.getEnd()).line;return c===g}BlockIsOnOneLine(s){let c=qd(s,19,this.sourceFile),g=qd(s,20,this.sourceFile);if(c&&g){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,h=this.sourceFile.getLineAndCharacterOfPosition(g.getStart(this.sourceFile)).line;return d===h}return!1}},mPs=wb(99,!1,0),CPs=wb(99,!1,1);function e4t(s,c,g,d,h){let _=c===1?CPs:mPs;_.setText(s),_.resetTokenState(g);let S=!0,R,T,W,V,M,ee=h({advance:re,readTokenInfo:We,readEOFTokenRange:$e,isOnToken:Ye,isOnEOF:Tt,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>S,skipToEndOf:Qe,skipToStartOf:mt,getTokenFullStart:()=>M?.token.pos??_.getTokenStart(),getStartPos:()=>M?.token.pos??_.getTokenStart()});return M=void 0,_.setText(void 0),ee;function re(){M=void 0,_.getTokenFullStart()!==g?S=!!T&&Ei(T).kind===4:_.scan(),R=void 0,T=void 0;let _t=_.getTokenFullStart();for(;_t(s[s.None=0]="None",s[s.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",s[s.StopProcessingTokenActions=2]="StopProcessingTokenActions",s[s.InsertSpace=4]="InsertSpace",s[s.InsertNewLine=8]="InsertNewLine",s[s.DeleteSpace=16]="DeleteSpace",s[s.DeleteToken=32]="DeleteToken",s[s.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",s[s.StopAction=3]="StopAction",s[s.ModifySpaceAction=28]="ModifySpaceAction",s[s.ModifyTokenAction=96]="ModifyTokenAction",s))(Kdn||{}),jdn=(s=>(s[s.None=0]="None",s[s.CanDeleteNewLines=1]="CanDeleteNewLines",s))(jdn||{});function zdn(){let s=[];for(let Ue=0;Ue<=166;Ue++)Ue!==1&&s.push(Ue);function c(...Ue){return{tokens:s.filter($e=>!Ue.some(Ye=>Ye===$e)),isSpecific:!1}}let g={tokens:s,isSpecific:!1},d=Ape([...s,3]),h=Ape([...s,1]),_=$dn(83,166),S=$dn(30,79),R=[103,104,165,130,142,152],T=[46,47,55,54],W=[9,10,80,21,23,19,110,105],V=[80,21,110,105],M=[80,22,24,105],ee=[80,21,110,105],re=[80,22,24,105],ge=[2,3],Ie=[80,...Frt],_e=d,Ee=Ape([80,32,3,86,95,102]),Ne=Ape([22,3,92,113,98,93,85]),Te=[Fa("IgnoreBeforeComment",g,ge,rst,1),Fa("IgnoreAfterLineComment",2,g,rst,1),Fa("NotSpaceBeforeColon",g,59,[ml,tWe,rpn],16),Fa("SpaceAfterColon",59,g,[ml,tWe,ZPs],4),Fa("NoSpaceBeforeQuestionMark",g,58,[ml,tWe,rpn],16),Fa("SpaceAfterQuestionMarkInConditionalOperator",58,g,[ml,EPs],4),Fa("NoSpaceAfterQuestionMark",58,g,[ml,bPs],16),Fa("NoSpaceBeforeDot",g,[25,29],[ml,KPs],16),Fa("NoSpaceAfterDot",[25,29],g,[ml],16),Fa("NoSpaceBetweenImportParenInImportType",102,21,[ml,GPs],16),Fa("NoSpaceAfterUnaryPrefixOperator",T,W,[ml,tWe],16),Fa("NoSpaceAfterUnaryPreincrementOperator",46,V,[ml],16),Fa("NoSpaceAfterUnaryPredecrementOperator",47,ee,[ml],16),Fa("NoSpaceBeforeUnaryPostincrementOperator",M,46,[ml,mpn],16),Fa("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[ml,mpn],16),Fa("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[ml,JP],4),Fa("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[ml,JP],4),Fa("SpaceAfterAddWhenFollowedByPreincrement",40,46,[ml,JP],4),Fa("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[ml,JP],4),Fa("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[ml,JP],4),Fa("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[ml,JP],4),Fa("NoSpaceAfterCloseBrace",20,[28,27],[ml],16),Fa("NewLineBeforeCloseBraceInBlockContext",d,20,[ipn],8),Fa("SpaceAfterCloseBrace",20,c(22),[ml,BPs],4),Fa("SpaceBetweenCloseBraceAndElse",20,93,[ml],4),Fa("SpaceBetweenCloseBraceAndWhile",20,117,[ml],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[ml,upn],16),Fa("SpaceAfterConditionalClosingParen",22,23,[rWe],4),Fa("NoSpaceBetweenFunctionKeywordAndStar",100,42,[apn],16),Fa("SpaceAfterStarInGeneratorDeclaration",42,80,[apn],4),Fa("SpaceAfterFunctionInFuncDecl",100,g,[PU],4),Fa("NewLineAfterOpenBraceInBlockContext",19,g,[ipn],8),Fa("SpaceAfterGetSetInMember",[139,153],80,[PU],4),Fa("NoSpaceBetweenYieldKeywordAndStar",127,42,[ml,hpn],16),Fa("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],g,[ml,hpn],4),Fa("NoSpaceBetweenReturnAndSemicolon",107,27,[ml],16),Fa("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],g,[ml],4),Fa("SpaceAfterLetConstInVariableDeclaration",[121,87],g,[ml,PPs],4),Fa("NoSpaceBeforeOpenParenInFuncCall",g,21,[ml,RPs,NPs],16),Fa("SpaceBeforeBinaryKeywordOperator",g,R,[ml,JP],4),Fa("SpaceAfterBinaryKeywordOperator",R,g,[ml,JP],4),Fa("SpaceAfterVoidOperator",116,g,[ml,YPs],4),Fa("SpaceBetweenAsyncAndOpenParen",134,21,[xPs,ml],4),Fa("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[ml],4),Fa("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[ml],16),Fa("SpaceBeforeJsxAttribute",g,80,[FPs,ml],4),Fa("SpaceBeforeSlashInJsxOpeningElement",g,44,[ppn,ml],4),Fa("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[ppn,ml],16),Fa("NoSpaceBeforeEqualInJsxAttribute",g,64,[Apn,ml],16),Fa("NoSpaceAfterEqualInJsxAttribute",64,g,[Apn,ml],16),Fa("NoSpaceBeforeJsxNamespaceColon",80,59,[dpn],16),Fa("NoSpaceAfterJsxNamespaceColon",59,80,[dpn],16),Fa("NoSpaceAfterModuleImport",[144,149],21,[ml],16),Fa("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],g,[ml],4),Fa("SpaceBeforeCertainTypeScriptKeywords",g,[96,119,161],[ml],4),Fa("SpaceAfterModuleName",11,19,[WPs],4),Fa("SpaceBeforeArrow",g,39,[ml],4),Fa("SpaceAfterArrow",39,g,[ml],4),Fa("NoSpaceAfterEllipsis",26,80,[ml],16),Fa("NoSpaceAfterOptionalParameters",58,[22,28],[ml,tWe],16),Fa("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[ml,OPs],16),Fa("NoSpaceBeforeOpenAngularBracket",Ie,30,[ml,nWe],16),Fa("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[ml,nWe],16),Fa("NoSpaceAfterOpenAngularBracket",30,g,[ml,nWe],16),Fa("NoSpaceBeforeCloseAngularBracket",g,32,[ml,nWe],16),Fa("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[ml,nWe,vPs,HPs],16),Fa("SpaceBeforeAt",[22,80],60,[ml],4),Fa("NoSpaceAfterAt",60,g,[ml],16),Fa("SpaceAfterDecorator",g,[128,80,95,90,86,126,125,123,124,139,153,23,42],[VPs],4),Fa("NoSpaceBeforeNonNullAssertionOperator",g,54,[ml,QPs],16),Fa("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[ml,MPs],16),Fa("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[ml],4)],Ze=[Fa("SpaceAfterConstructor",137,21,[AS("insertSpaceAfterConstructor"),ml],4),Fa("NoSpaceAfterConstructor",137,21,[NN("insertSpaceAfterConstructor"),ml],16),Fa("SpaceAfterComma",28,g,[AS("insertSpaceAfterCommaDelimiter"),ml,a4t,DPs,kPs],4),Fa("NoSpaceAfterComma",28,g,[NN("insertSpaceAfterCommaDelimiter"),ml,a4t],16),Fa("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[AS("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),PU],4),Fa("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[NN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),PU],16),Fa("SpaceAfterKeywordInControl",_,21,[AS("insertSpaceAfterKeywordsInControlFlowStatements"),rWe],4),Fa("NoSpaceAfterKeywordInControl",_,21,[NN("insertSpaceAfterKeywordsInControlFlowStatements"),rWe],16),Fa("SpaceAfterOpenParen",21,g,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("SpaceBeforeCloseParen",g,22,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("SpaceBetweenOpenParens",21,21,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("NoSpaceBetweenParens",21,22,[ml],16),Fa("NoSpaceAfterOpenParen",21,g,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],16),Fa("NoSpaceBeforeCloseParen",g,22,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],16),Fa("SpaceAfterOpenBracket",23,g,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],4),Fa("SpaceBeforeCloseBracket",g,24,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],4),Fa("NoSpaceBetweenBrackets",23,24,[ml],16),Fa("NoSpaceAfterOpenBracket",23,g,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],16),Fa("NoSpaceBeforeCloseBracket",g,24,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],16),Fa("SpaceAfterOpenBrace",19,g,[tpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),npn],4),Fa("SpaceBeforeCloseBrace",g,20,[tpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),npn],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[ml,upn],16),Fa("NoSpaceAfterOpenBrace",19,g,[t4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),ml],16),Fa("NoSpaceBeforeCloseBrace",g,20,[t4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),ml],16),Fa("SpaceBetweenEmptyBraceBrackets",19,20,[AS("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[t4t("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),ml],16),Fa("SpaceAfterTemplateHeadAndMiddle",[16,17],g,[AS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),gpn],4,1),Fa("SpaceBeforeTemplateMiddleAndTail",g,[17,18],[AS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),ml],4),Fa("NoSpaceAfterTemplateHeadAndMiddle",[16,17],g,[NN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),gpn],16,1),Fa("NoSpaceBeforeTemplateMiddleAndTail",g,[17,18],[NN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),ml],16),Fa("SpaceAfterOpenBraceInJsxExpression",19,g,[AS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],4),Fa("SpaceBeforeCloseBraceInJsxExpression",g,20,[AS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],4),Fa("NoSpaceAfterOpenBraceInJsxExpression",19,g,[NN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],16),Fa("NoSpaceBeforeCloseBraceInJsxExpression",g,20,[NN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],16),Fa("SpaceAfterSemicolonInFor",27,g,[AS("insertSpaceAfterSemicolonInForStatements"),ml,n4t],4),Fa("NoSpaceAfterSemicolonInFor",27,g,[NN("insertSpaceAfterSemicolonInForStatements"),ml,n4t],16),Fa("SpaceBeforeBinaryOperator",g,S,[AS("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],4),Fa("SpaceAfterBinaryOperator",S,g,[AS("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],4),Fa("NoSpaceBeforeBinaryOperator",g,S,[NN("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],16),Fa("NoSpaceAfterBinaryOperator",S,g,[NN("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],16),Fa("SpaceBeforeOpenParenInFuncDecl",g,21,[AS("insertSpaceBeforeFunctionParenthesis"),ml,PU],4),Fa("NoSpaceBeforeOpenParenInFuncDecl",g,21,[NN("insertSpaceBeforeFunctionParenthesis"),ml,PU],16),Fa("NewLineBeforeOpenBraceInControl",Ne,19,[AS("placeOpenBraceOnNewLineForControlBlocks"),rWe,o4t],8,1),Fa("NewLineBeforeOpenBraceInFunction",_e,19,[AS("placeOpenBraceOnNewLineForFunctions"),PU,o4t],8,1),Fa("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[AS("placeOpenBraceOnNewLineForFunctions"),cpn,o4t],8,1),Fa("SpaceAfterTypeAssertion",32,g,[AS("insertSpaceAfterTypeAssertion"),ml,l4t],4),Fa("NoSpaceAfterTypeAssertion",32,g,[NN("insertSpaceAfterTypeAssertion"),ml,l4t],16),Fa("SpaceBeforeTypeAnnotation",g,[58,59],[AS("insertSpaceBeforeTypeAnnotation"),ml,i4t],4),Fa("NoSpaceBeforeTypeAnnotation",g,[58,59],[NN("insertSpaceBeforeTypeAnnotation"),ml,i4t],16),Fa("NoOptionalSemicolon",27,h,[epn("semicolons","remove"),JPs],32),Fa("OptionalSemicolon",g,h,[epn("semicolons","insert"),UPs],64)],We=[Fa("NoSpaceBeforeSemicolon",g,27,[ml],16),Fa("SpaceBeforeOpenBraceInControl",Ne,19,[r4t("placeOpenBraceOnNewLineForControlBlocks"),rWe,c4t,s4t],4,1),Fa("SpaceBeforeOpenBraceInFunction",_e,19,[r4t("placeOpenBraceOnNewLineForFunctions"),PU,nst,c4t,s4t],4,1),Fa("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[r4t("placeOpenBraceOnNewLineForFunctions"),cpn,c4t,s4t],4,1),Fa("NoSpaceBeforeComma",g,28,[ml],16),Fa("NoSpaceBeforeOpenBracket",c(134,84),23,[ml],16),Fa("NoSpaceAfterCloseBracket",24,g,[ml,LPs],16),Fa("SpaceAfterSemicolon",27,g,[ml],4),Fa("SpaceBetweenForAndAwaitKeyword",99,135,[ml],4),Fa("SpaceBetweenDotDotDotAndTypeName",26,Ie,[ml],16),Fa("SpaceBetweenStatements",[22,92,93,84],g,[ml,a4t,_Ps],4),Fa("SpaceAfterTryCatchFinally",[113,85,98],19,[ml],4)];return[...Te,...Ze,...We]}function Fa(s,c,g,d,h,_=0){return{leftTokenRange:qdn(c),rightTokenRange:qdn(g),rule:{debugName:s,context:d,action:h,flags:_}}}function Ape(s){return{tokens:s,isSpecific:!0}}function qdn(s){return typeof s=="number"?Ape([s]):Ki(s)?Ape(s):s}function $dn(s,c,g=[]){let d=[];for(let h=s;h<=c;h++)k(g,h)||d.push(h);return Ape(d)}function epn(s,c){return g=>g.options&&g.options[s]===c}function AS(s){return c=>c.options&&Da(c.options,s)&&!!c.options[s]}function t4t(s){return c=>c.options&&Da(c.options,s)&&!c.options[s]}function NN(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]}function r4t(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]||c.TokensAreOnSameLine()}function tpn(s){return c=>!c.options||!Da(c.options,s)||!!c.options[s]}function n4t(s){return s.contextNode.kind===249}function _Ps(s){return!n4t(s)}function JP(s){switch(s.contextNode.kind){case 227:return s.contextNode.operatorToken.kind!==28;case 228:case 195:case 235:case 282:case 277:case 183:case 193:case 194:case 239:return!0;case 209:case 266:case 272:case 278:case 261:case 170:case 307:case 173:case 172:return s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 250:case 169:return s.currentTokenSpan.kind===103||s.nextTokenSpan.kind===103||s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 251:return s.currentTokenSpan.kind===165||s.nextTokenSpan.kind===165}return!1}function tWe(s){return!JP(s)}function rpn(s){return!i4t(s)}function i4t(s){let c=s.contextNode.kind;return c===173||c===172||c===170||c===261||lP(c)}function yPs(s){return pi(s.contextNode)&&s.contextNode.questionToken}function bPs(s){return!yPs(s)}function EPs(s){return s.contextNode.kind===228||s.contextNode.kind===195}function s4t(s){return s.TokensAreOnSameLine()||nst(s)}function npn(s){return s.contextNode.kind===207||s.contextNode.kind===201||SPs(s)}function o4t(s){return nst(s)&&!(s.NextNodeAllOnSameLine()||s.NextNodeBlockIsOnOneLine())}function ipn(s){return spn(s)&&!(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function SPs(s){return spn(s)&&(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function spn(s){return opn(s.contextNode)}function nst(s){return opn(s.nextTokenParent)}function opn(s){if(lpn(s))return!0;switch(s.kind){case 242:case 270:case 211:case 269:return!0}return!1}function PU(s){switch(s.contextNode.kind){case 263:case 175:case 174:case 178:case 179:case 180:case 219:case 177:case 220:case 265:return!0}return!1}function vPs(s){return!PU(s)}function apn(s){return s.contextNode.kind===263||s.contextNode.kind===219}function cpn(s){return lpn(s.contextNode)}function lpn(s){switch(s.kind){case 264:case 232:case 265:case 267:case 188:case 268:case 279:case 280:case 273:case 276:return!0}return!1}function BPs(s){switch(s.currentTokenParent.kind){case 264:case 268:case 267:case 300:case 269:case 256:return!0;case 242:{let c=s.currentTokenParent.parent;if(!c||c.kind!==220&&c.kind!==219)return!0}}return!1}function rWe(s){switch(s.contextNode.kind){case 246:case 256:case 249:case 250:case 251:case 248:case 259:case 247:case 255:case 300:return!0;default:return!1}}function upn(s){return s.contextNode.kind===211}function wPs(s){return s.contextNode.kind===214}function TPs(s){return s.contextNode.kind===215}function RPs(s){return wPs(s)||TPs(s)}function NPs(s){return s.currentTokenSpan.kind!==28}function DPs(s){return s.nextTokenSpan.kind!==24}function kPs(s){return s.nextTokenSpan.kind!==22}function xPs(s){return s.contextNode.kind===220}function GPs(s){return s.contextNode.kind===206}function ml(s){return s.TokensAreOnSameLine()&&s.contextNode.kind!==12}function gpn(s){return s.contextNode.kind!==12}function a4t(s){return s.contextNode.kind!==285&&s.contextNode.kind!==289}function ist(s){return s.contextNode.kind===295||s.contextNode.kind===294}function FPs(s){return s.nextTokenParent.kind===292||s.nextTokenParent.kind===296&&s.nextTokenParent.parent.kind===292}function Apn(s){return s.contextNode.kind===292}function ZPs(s){return s.nextTokenParent.kind!==296}function dpn(s){return s.nextTokenParent.kind===296}function ppn(s){return s.contextNode.kind===286}function LPs(s){return!PU(s)&&!nst(s)}function VPs(s){return s.TokensAreOnSameLine()&&p1(s.contextNode)&&fpn(s.currentTokenParent)&&!fpn(s.nextTokenParent)}function fpn(s){for(;s&&un(s);)s=s.parent;return s&&s.kind===171}function PPs(s){return s.currentTokenParent.kind===262&&s.currentTokenParent.getStart(s.sourceFile)===s.currentTokenSpan.pos}function c4t(s){return s.formattingRequestKind!==2}function WPs(s){return s.contextNode.kind===268}function OPs(s){return s.contextNode.kind===188}function MPs(s){return s.contextNode.kind===181}function Ipn(s,c){if(s.kind!==30&&s.kind!==32)return!1;switch(c.kind){case 184:case 217:case 266:case 264:case 232:case 265:case 263:case 219:case 220:case 175:case 174:case 180:case 181:case 214:case 215:case 234:return!0;default:return!1}}function nWe(s){return Ipn(s.currentTokenSpan,s.currentTokenParent)||Ipn(s.nextTokenSpan,s.nextTokenParent)}function l4t(s){return s.contextNode.kind===217}function HPs(s){return!l4t(s)}function YPs(s){return s.currentTokenSpan.kind===116&&s.currentTokenParent.kind===223}function hpn(s){return s.contextNode.kind===230&&s.contextNode.expression!==void 0}function QPs(s){return s.contextNode.kind===236}function mpn(s){return!XPs(s)}function XPs(s){switch(s.contextNode.kind){case 246:case 249:case 250:case 251:case 247:case 248:return!0;default:return!1}}function JPs(s){let c=s.nextTokenSpan.kind,g=s.nextTokenSpan.pos;if(zJ(c)){let _=s.nextTokenParent===s.currentTokenParent?fQ(s.currentTokenParent,ji(s.currentTokenParent,S=>!S.parent),s.sourceFile):s.nextTokenParent.getFirstToken(s.sourceFile);if(!_)return!0;c=_.kind,g=_.getStart(s.sourceFile)}let d=s.sourceFile.getLineAndCharacterOfPosition(s.currentTokenSpan.pos).line,h=s.sourceFile.getLineAndCharacterOfPosition(g).line;return d===h?c===20||c===1:c===27&&s.currentTokenSpan.kind===27?!0:c===241||c===27?!1:s.contextNode.kind===265||s.contextNode.kind===266?!ss(s.currentTokenParent)||!!s.currentTokenParent.type||c!==21:pi(s.currentTokenParent)?!s.currentTokenParent.initializer:s.currentTokenParent.kind!==249&&s.currentTokenParent.kind!==243&&s.currentTokenParent.kind!==241&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==229&&c!==16&&c!==15&&c!==25}function UPs(s){return nPe(s.currentTokenSpan.end,s.currentTokenParent,s.sourceFile)}function KPs(s){return!jo(s.contextNode)||!mC(s.contextNode.expression)||s.contextNode.expression.getText().includes(".")}function jPs(s,c){return{options:s,getRules:zPs(),host:c}}var u4t;function zPs(){return u4t===void 0&&(u4t=$Ps(zdn())),u4t}function qPs(s){let c=0;return s&1&&(c|=28),s&2&&(c|=96),s&28&&(c|=28),s&96&&(c|=96),c}function $Ps(s){let c=eWs(s);return g=>{let d=c[Cpn(g.currentTokenSpan.kind,g.nextTokenSpan.kind)];if(d){let h=[],_=0;for(let S of d){let R=~qPs(_);S.action&R&&ue(S.context,T=>T(g))&&(h.push(S),_|=S.action)}if(h.length)return h}}}function eWs(s){let c=new Array(g4t*g4t),g=new Array(c.length);for(let d of s){let h=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let _ of d.leftTokenRange.tokens)for(let S of d.rightTokenRange.tokens){let R=Cpn(_,S),T=c[R];T===void 0&&(T=c[R]=[]),tWs(T,d.rule,h,g,R)}}return c}function Cpn(s,c){return pe.assert(s<=166&&c<=166,"Must compute formatting context from tokens"),s*g4t+c}var dpe=5,sst=31,g4t=167,q1e=(s=>(s[s.StopRulesSpecific=0]="StopRulesSpecific",s[s.StopRulesAny=dpe*1]="StopRulesAny",s[s.ContextRulesSpecific=dpe*2]="ContextRulesSpecific",s[s.ContextRulesAny=dpe*3]="ContextRulesAny",s[s.NoContextRulesSpecific=dpe*4]="NoContextRulesSpecific",s[s.NoContextRulesAny=dpe*5]="NoContextRulesAny",s))(q1e||{});function tWs(s,c,g,d,h){let _=c.action&3?g?0:q1e.StopRulesAny:c.context!==rst?g?q1e.ContextRulesSpecific:q1e.ContextRulesAny:g?q1e.NoContextRulesSpecific:q1e.NoContextRulesAny,S=d[h]||0;s.splice(rWs(S,_),0,c),d[h]=nWs(S,_)}function rWs(s,c){let g=0;for(let d=0;d<=c;d+=dpe)g+=s&sst,s>>=dpe;return g}function nWs(s,c){let g=(s>>c&sst)+1;return pe.assert((g&sst)===g,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),s&~(sst<pe.formatSyntaxKind(g)}),d}function iWs(s,c,g){let d=c.getLineAndCharacterOfPosition(s).line;if(d===0)return[];let h=vY(d,c);for(;Iu(c.text.charCodeAt(h));)h--;Cl(c.text.charCodeAt(h))&&h--;let _={pos:OD(d-1,c),end:h+1};return iWe(_,c,g,2)}function sWs(s,c,g){let d=A4t(s,27,c);return _pn(d4t(d),c,g,3)}function oWs(s,c,g){let d=A4t(s,19,c);if(!d)return[];let h=d.parent,_=d4t(h),S={pos:PB(_.getStart(c),c),end:s};return iWe(S,c,g,4)}function aWs(s,c,g){let d=A4t(s,20,c);return _pn(d4t(d),c,g,5)}function cWs(s,c){let g={pos:0,end:s.text.length};return iWe(g,s,c,0)}function lWs(s,c,g,d){let h={pos:PB(s,g),end:c};return iWe(h,g,d,1)}function A4t(s,c,g){let d=Gm(s,g);return d&&d.kind===c&&s===d.getEnd()?d:void 0}function d4t(s){let c=s;for(;c&&c.parent&&c.parent.end===s.end&&!uWs(c.parent,c);)c=c.parent;return c}function uWs(s,c){switch(s.kind){case 264:case 265:return cy(s.members,c);case 268:let g=s.body;return!!g&&g.kind===269&&cy(g.statements,c);case 308:case 242:case 269:return cy(s.statements,c);case 300:return cy(s.block.statements,c)}return!1}function gWs(s,c){return g(c);function g(d){let h=Lu(d,_=>mAe(_.getStart(c),_.end,s)&&_);if(h){let _=g(h);if(_)return _}return d}}function AWs(s,c){if(!s.length)return h;let g=s.filter(_=>Mde(c,_.start,_.start+_.length)).sort((_,S)=>_.start-S.start);if(!g.length)return h;let d=0;return _=>{for(;;){if(d>=g.length)return!1;let S=g[d];if(_.end<=S.start)return!1;if(LVe(_.pos,_.end,S.start,S.start+S.length))return!0;d++}};function h(){return!1}}function dWs(s,c,g){let d=s.getStart(g);if(d===c.pos&&s.end===c.end)return d;let h=Gm(c.pos,g);return!h||h.end>=c.pos?s.pos:h.end}function pWs(s,c,g){let d=-1,h;for(;s;){let _=g.getLineAndCharacterOfPosition(s.getStart(g)).line;if(d!==-1&&_!==d)break;if(DN.shouldIndentChildNode(c,s,h,g))return c.indentSize;d=_,h=s,s=s.parent}return 0}function fWs(s,c,g,d,h,_){let S={pos:s.pos,end:s.end};return e4t(c.text,g,S.pos,S.end,R=>ypn(S,s,d,h,R,_,1,T=>!1,c))}function _pn(s,c,g,d){if(!s)return[];let h={pos:PB(s.getStart(c),c),end:s.end};return iWe(h,c,g,d)}function iWe(s,c,g,d){let h=gWs(s,c);return e4t(c.text,c.languageVariant,dWs(h,s,c),s.end,_=>ypn(s,h,DN.getIndentationForNode(h,s,c,g.options),pWs(h,g.options,c),_,g,d,AWs(c.parseDiagnostics,s),c))}function ypn(s,c,g,d,h,{options:_,getRules:S,host:R},T,W,V){var M;let ee=new Udn(V,T,_),re,ge,Ie,_e,Ee,Ne=-1,Te=[];if(h.advance(),h.isOnToken()){let dt=V.getLineAndCharacterOfPosition(c.getStart(V)).line,pr=dt;p1(c)&&(pr=V.getLineAndCharacterOfPosition(Mre(c,V)).line),Tt(c,c,dt,pr,g,d)}let Ze=h.getCurrentLeadingTrivia();if(Ze){let dt=DN.nodeWillIndentChild(_,c,void 0,V,!1)?g+_.indentSize:g;ot(Ze,dt,!0,pr=>{mt(pr,V.getLineAndCharacterOfPosition(pr.pos),c,c,void 0),_t(pr.pos,dt,!1)}),_.trimTrailingWhitespace!==!1&&Gt(Ze)}if(ge&&h.getTokenFullStart()>=s.end){let dt=h.isOnEOF()?h.readEOFTokenRange():h.isOnToken()?h.readTokenInfo(c).token:void 0;if(dt&&dt.pos===re){let pr=((M=Gm(dt.end,V,c))==null?void 0:M.parent)||Ie;ht(dt,V.getLineAndCharacterOfPosition(dt.pos).line,pr,ge,_e,Ie,pr,void 0)}}return Te;function We(dt,pr,st,ir,zt){if(Mde(ir,dt,pr)||c1e(ir,dt,pr)){if(zt!==-1)return zt}else{let Ht=V.getLineAndCharacterOfPosition(dt).line,Br=PB(dt,V),mn=DN.findFirstNonWhitespaceColumn(Br,dt,V,_);if(Ht!==st||dt===mn){let jn=DN.getBaseIndentation(_);return jn>mn?jn:mn}}return-1}function Ue(dt,pr,st,ir,zt,Ht){let Br=DN.shouldIndentChildNode(_,dt)?_.indentSize:0;return Ht===pr?{indentation:pr===Ee?Ne:zt.getIndentation(),delta:Math.min(_.indentSize,zt.getDelta(dt)+Br)}:st===-1?dt.kind===21&&pr===Ee?{indentation:Ne,delta:zt.getDelta(dt)}:DN.childStartsOnTheSameLineWithElseInIfStatement(ir,dt,pr,V)||DN.childIsUnindentedBranchOfConditionalExpression(ir,dt,pr,V)||DN.argumentStartsOnSameLineAsPreviousArgument(ir,dt,pr,V)?{indentation:zt.getIndentation(),delta:Br}:{indentation:zt.getIndentation()+zt.getDelta(dt),delta:Br}:{indentation:st,delta:Br}}function $e(dt){if(LB(dt)){let pr=de(dt.modifiers,Ig,Se(dt.modifiers,So));if(pr)return pr.kind}switch(dt.kind){case 264:return 86;case 265:return 120;case 263:return 100;case 267:return 267;case 178:return 139;case 179:return 153;case 175:if(dt.asteriskToken)return 42;case 173:case 170:let pr=Il(dt);if(pr)return pr.kind}}function Ye(dt,pr,st,ir){return{getIndentationForComment:(Br,mn,jn)=>{switch(Br){case 20:case 24:case 22:return st+Ht(jn)}return mn!==-1?mn:st},getIndentationForToken:(Br,mn,jn,Zi)=>!Zi&&zt(Br,mn,jn)?st+Ht(jn):st,getIndentation:()=>st,getDelta:Ht,recomputeIndentation:(Br,mn)=>{DN.shouldIndentChildNode(_,mn,dt,V)&&(st+=Br?_.indentSize:-_.indentSize,ir=DN.shouldIndentChildNode(_,dt)?_.indentSize:0)}};function zt(Br,mn,jn){switch(mn){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(jn.kind){case 287:case 288:case 286:return!1}break;case 23:case 24:if(jn.kind!==201)return!1;break}return pr!==Br&&!(p1(dt)&&mn===$e(dt))}function Ht(Br){return DN.nodeWillIndentChild(_,dt,Br,V,!0)?ir:0}}function Tt(dt,pr,st,ir,zt,Ht){if(!Mde(s,dt.getStart(V),dt.getEnd()))return;let Br=Ye(dt,st,zt,Ht),mn=pr;for(Lu(dt,An=>{jn(An,-1,dt,Br,st,ir,!1)},An=>{Zi(An,dt,st,Br)});h.isOnToken()&&h.getTokenFullStart()Math.min(dt.end,s.end))break;Ns(An,dt,Br,dt)}function jn(An,si,ks,Ic,su,Zn,ya,Gl){if(pe.assert(!sp(An)),sf(An)||_ge(ks,An))return si;let ba=An.getStart(V),Wo=V.getLineAndCharacterOfPosition(ba).line,hc=Wo;p1(An)&&(hc=V.getLineAndCharacterOfPosition(Mre(An,V)).line);let yr=-1;if(ya&&cy(s,ks)&&(yr=We(ba,An.end,su,s,si),yr!==-1&&(si=yr)),!Mde(s,An.pos,An.end))return An.ends.end)return si;if(lo.token.end>ba){lo.token.pos>ba&&h.skipToStartOf(An);break}Ns(lo,dt,Ic,dt)}if(!h.isOnToken()||h.getTokenFullStart()>=s.end)return si;if(BL(An)){let lo=h.readTokenInfo(An);if(An.kind!==12)return pe.assert(lo.token.end===An.end,"Token end is child end"),Ns(lo,dt,Ic,An),si}let hn=An.kind===171?Wo:Zn,Oi=Ue(An,Wo,yr,dt,Ic,hn);return Tt(An,mn,Wo,hc,Oi.indentation,Oi.delta),mn=dt,Gl&&ks.kind===210&&si===-1&&(si=Oi.indentation),si}function Zi(An,si,ks,Ic){pe.assert(tN(An)),pe.assert(!sp(An));let su=IWs(si,An),Zn=Ic,ya=ks;if(!Mde(s,An.pos,An.end)){An.endAn.pos)break;if(Wo.token.kind===su){ya=V.getLineAndCharacterOfPosition(Wo.token.pos).line,Ns(Wo,si,Ic,si);let hc;if(Ne!==-1)hc=Ne;else{let yr=PB(Wo.token.pos,V);hc=DN.findFirstNonWhitespaceColumn(yr,Wo.token.pos,V,_)}Zn=Ye(si,ks,hc,_.indentSize)}else Ns(Wo,si,Ic,si)}let Gl=-1;for(let Wo=0;Wo_t(Oi.pos,hn,!1))}hc!==-1&&yr&&(_t(An.token.pos,hc,Gl===1),Ee=Wo.line,Ne=hc)}h.advance(),mn=si}}function ot(dt,pr,st,ir){for(let zt of dt){let Ht=cy(s,zt);switch(zt.kind){case 3:Ht&&Ke(zt,pr,!st),st=!1;break;case 2:st&&Ht&&ir(zt),st=!1;break;case 4:st=!0;break}}return st}function Qe(dt,pr,st,ir){for(let zt of dt)if(YVe(zt.kind)&&cy(s,zt)){let Ht=V.getLineAndCharacterOfPosition(zt.pos);mt(zt,Ht,pr,st,ir)}}function mt(dt,pr,st,ir,zt){let Ht=W(dt),Br=0;if(!Ht)if(ge)Br=ht(dt,pr.line,st,ge,_e,Ie,ir,zt);else{let mn=V.getLineAndCharacterOfPosition(s.pos);Pt(mn.line,pr.line)}return ge=dt,re=dt.end,Ie=st,_e=pr.line,Br}function ht(dt,pr,st,ir,zt,Ht,Br,mn){ee.updateContext(ir,Ht,dt,st,Br);let jn=S(ee),Zi=ee.options.trimTrailingWhitespace!==!1,Ns=0;return jn?Q(jn,An=>{if(Ns=Gr(An,ir,zt,dt,pr),mn)switch(Ns){case 2:st.getStart(V)===dt.pos&&mn.recomputeIndentation(!1,Br);break;case 1:st.getStart(V)===dt.pos&&mn.recomputeIndentation(!0,Br);break;default:pe.assert(Ns===0)}Zi=Zi&&!(An.action&16)&&An.flags!==1}):Zi=Zi&&dt.kind!==1,pr!==zt&&Zi&&Pt(zt,pr,ir),Ns}function _t(dt,pr,st){let ir=p4t(pr,_);if(st)tr(dt,0,ir);else{let zt=V.getLineAndCharacterOfPosition(dt),Ht=OD(zt.line,V);(pr!==Rt(Ht,zt.character)||Lt(ir,Ht))&&tr(Ht,zt.character,ir)}}function Rt(dt,pr){let st=0;for(let ir=0;ir0){let Zn=p4t(su,_);tr(ks,Ic.character,Zn)}else Dt(ks,Ic.character)}}function Pt(dt,pr,st){for(let ir=dt;irHt)continue;let Br=_r(zt,Ht);Br!==-1&&(pe.assert(Br===zt||!Iu(V.text.charCodeAt(Br-1))),Dt(Br,Ht+1-Br))}}function _r(dt,pr){let st=pr;for(;st>=dt&&Iu(V.text.charCodeAt(st));)st--;return st!==pr?st+1:-1}function Gt(dt){let pr=ge?ge.end:s.pos;for(let st of dt)YVe(st.kind)&&(pra1e(W,c)||c===W.end&&(W.kind===2||c===s.getFullWidth()))}function IWs(s,c){switch(s.kind){case 177:case 263:case 219:case 175:case 174:case 220:case 180:case 181:case 185:case 186:case 178:case 179:if(s.typeParameters===c)return 30;if(s.parameters===c)return 21;break;case 214:case 215:if(s.typeArguments===c)return 30;if(s.arguments===c)return 21;break;case 264:case 232:case 265:case 266:if(s.typeParameters===c)return 30;break;case 184:case 216:case 187:case 234:case 206:if(s.typeArguments===c)return 30;break;case 188:return 19}return 0}function hWs(s){switch(s){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var ast,$1e,e2e;function p4t(s,c){if((!ast||ast.tabSize!==c.tabSize||ast.indentSize!==c.indentSize)&&(ast={tabSize:c.tabSize,indentSize:c.indentSize},$1e=e2e=void 0),c.convertTabsToSpaces){let d,h=Math.floor(s/c.indentSize),_=s%c.indentSize;return e2e||(e2e=[]),e2e[h]===void 0?(d=A1e(" ",c.indentSize*h),e2e[h]=d):d=e2e[h],_?d+A1e(" ",_):d}else{let d=Math.floor(s/c.tabSize),h=s-d*c.tabSize,_;return $1e||($1e=[]),$1e[d]===void 0?$1e[d]=_=A1e(" ",d):_=$1e[d],h?_+A1e(" ",h):_}}var DN;(s=>{let c;(Ke=>{Ke[Ke.Unknown=-1]="Unknown"})(c||(c={}));function g(Ke,Pt,_r,Gt=!1){if(Ke>Pt.text.length)return R(_r);if(_r.indentStyle===0)return 0;let nt=Gm(Ke,Pt,void 0,!0),Dt=bpn(Pt,Ke,nt||null);if(Dt&&Dt.kind===3)return d(Pt,Ke,_r,Dt);if(!nt)return R(_r);if(Rrt(nt.kind)&&nt.getStart(Pt)<=Ke&&Ke=0),nt<=Dt)return mt(OD(Dt,Ke),Pt,Ke,_r);let tr=OD(nt,Ke),{column:ur,character:Gr}=Qe(tr,Pt,Ke,_r);return ur===0?ur:Ke.text.charCodeAt(tr+Gr)===42?ur-1:ur}function h(Ke,Pt,_r){let Gt=Pt;for(;Gt>0;){let Dt=Ke.text.charCodeAt(Gt);if(!dc(Dt))break;Gt--}let nt=PB(Gt,Ke);return mt(nt,Gt,Ke,_r)}function _(Ke,Pt,_r,Gt,nt,Dt){let tr,ur=_r;for(;ur;){if(brt(ur,Pt,Ke)&&Rt(Dt,ur,tr,Ke,!0)){let dt=ge(ur,Ke),pr=re(_r,ur,Gt,Ke),st=pr!==0?nt&&pr===2?Dt.indentSize:0:Gt!==dt.line?Dt.indentSize:0;return T(ur,dt,void 0,st,Ke,!0,Dt)}let Gr=Ye(ur,Ke,Dt,!0);if(Gr!==-1)return Gr;tr=ur,ur=ur.parent}return R(Dt)}function S(Ke,Pt,_r,Gt){let nt=_r.getLineAndCharacterOfPosition(Ke.getStart(_r));return T(Ke,nt,Pt,0,_r,!1,Gt)}s.getIndentationForNode=S;function R(Ke){return Ke.baseIndentSize||0}s.getBaseIndentation=R;function T(Ke,Pt,_r,Gt,nt,Dt,tr){var ur;let Gr=Ke.parent;for(;Gr;){let dt=!0;if(_r){let zt=Ke.getStart(nt);dt=zt<_r.pos||zt>_r.end}let pr=W(Gr,Ke,nt),st=pr.line===Pt.line||_e(Gr,Ke,Pt.line,nt);if(dt){let zt=(ur=Te(Ke,nt))==null?void 0:ur[0],Ht=!!zt&&ge(zt,nt).line>pr.line,Br=Ye(Ke,nt,tr,Ht);if(Br!==-1||(Br=M(Ke,Gr,Pt,st,nt,tr),Br!==-1))return Br+Gt}Rt(tr,Gr,Ke,nt,Dt)&&!st&&(Gt+=tr.indentSize);let ir=Ie(Gr,Ke,Pt.line,nt);Ke=Gr,Gr=Ke.parent,Pt=ir?nt.getLineAndCharacterOfPosition(Ke.getStart(nt)):pr}return Gt+R(tr)}function W(Ke,Pt,_r){let Gt=Te(Pt,_r),nt=Gt?Gt.pos:Ke.getStart(_r);return _r.getLineAndCharacterOfPosition(nt)}function V(Ke,Pt,_r){let Gt=U5t(Ke);return Gt&&Gt.listItemIndex>0?Tt(Gt.list.getChildren(),Gt.listItemIndex-1,Pt,_r):-1}function M(Ke,Pt,_r,Gt,nt,Dt){return(jh(Ke)||vJ(Ke))&&(Pt.kind===308||!Gt)?ot(_r,nt,Dt):-1}let ee;(Ke=>{Ke[Ke.Unknown=0]="Unknown",Ke[Ke.OpenBrace=1]="OpenBrace",Ke[Ke.CloseBrace=2]="CloseBrace"})(ee||(ee={}));function re(Ke,Pt,_r,Gt){let nt=fQ(Ke,Pt,Gt);if(!nt)return 0;if(nt.kind===19)return 1;if(nt.kind===20){let Dt=ge(nt,Gt).line;return _r===Dt?2:0}return 0}function ge(Ke,Pt){return Pt.getLineAndCharacterOfPosition(Ke.getStart(Pt))}function Ie(Ke,Pt,_r,Gt){if(!(Zl(Ke)&&k(Ke.arguments,Pt)))return!1;let nt=Ke.expression.getEnd();return Ra(Gt,nt).line===_r}s.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ie;function _e(Ke,Pt,_r,Gt){if(Ke.kind===246&&Ke.elseStatement===Pt){let nt=qd(Ke,93,Gt);return pe.assert(nt!==void 0),ge(nt,Gt).line===_r}return!1}s.childStartsOnTheSameLineWithElseInIfStatement=_e;function Ee(Ke,Pt,_r,Gt){if(Lw(Ke)&&(Pt===Ke.whenTrue||Pt===Ke.whenFalse)){let nt=Ra(Gt,Ke.condition.end).line;if(Pt===Ke.whenTrue)return _r===nt;{let Dt=ge(Ke.whenTrue,Gt).line,tr=Ra(Gt,Ke.whenTrue.end).line;return nt===Dt&&tr===_r}}return!1}s.childIsUnindentedBranchOfConditionalExpression=Ee;function Ne(Ke,Pt,_r,Gt){if(av(Ke)){if(!Ke.arguments)return!1;let nt=de(Ke.arguments,Gr=>Gr.pos===Pt.pos);if(!nt)return!1;let Dt=Ke.arguments.indexOf(nt);if(Dt===0)return!1;let tr=Ke.arguments[Dt-1],ur=Ra(Gt,tr.getEnd()).line;if(_r===ur)return!0}return!1}s.argumentStartsOnSameLineAsPreviousArgument=Ne;function Te(Ke,Pt){return Ke.parent&&We(Ke.getStart(Pt),Ke.getEnd(),Ke.parent,Pt)}s.getContainingList=Te;function Ze(Ke,Pt,_r){return Pt&&We(Ke,Ke,Pt,_r)}function We(Ke,Pt,_r,Gt){switch(_r.kind){case 184:return nt(_r.typeArguments);case 211:return nt(_r.properties);case 210:return nt(_r.elements);case 188:return nt(_r.members);case 263:case 219:case 220:case 175:case 174:case 180:case 177:case 186:case 181:return nt(_r.typeParameters)||nt(_r.parameters);case 178:return nt(_r.parameters);case 264:case 232:case 265:case 266:case 346:return nt(_r.typeParameters);case 215:case 214:return nt(_r.typeArguments)||nt(_r.arguments);case 262:return nt(_r.declarations);case 276:case 280:return nt(_r.elements);case 207:case 208:return nt(_r.elements)}function nt(Dt){return Dt&&c1e(Ue(_r,Dt,Gt),Ke,Pt)?Dt:void 0}}function Ue(Ke,Pt,_r){let Gt=Ke.getChildren(_r);for(let nt=1;nt=0&&Pt=0;tr--){if(Ke[tr].kind===28)continue;if(_r.getLineAndCharacterOfPosition(Ke[tr].end).line!==Dt.line)return ot(Dt,_r,Gt);Dt=ge(Ke[tr],_r)}return-1}function ot(Ke,Pt,_r){let Gt=Pt.getPositionOfLineAndCharacter(Ke.line,0);return mt(Gt,Gt+Ke.character,Pt,_r)}function Qe(Ke,Pt,_r,Gt){let nt=0,Dt=0;for(let tr=Ke;trmWs});function mWs(s,c,g){let d=!1;return c.forEach(h=>{let _=ji(Jc(s,h.pos),S=>cy(S,h));_&&Lu(_,function S(R){var T;if(!d){if(Ir(R)&&Mie(h,R.getStart(s))){let W=g.resolveName(R.text,R,-1,!1);if(W&&W.declarations){for(let V of W.declarations)if(Pnt(V)||R.text&&s.symbol&&((T=s.symbol.exports)!=null&&T.has(R.escapedText))){d=!0;return}}}R.forEachChild(S)}})}),d}var lst={};o(lst,{pasteEditsProvider:()=>_Ws});var CWs="providePostPasteEdits";function _Ws(s,c,g,d,h,_,S,R){return{edits:xo.ChangeTracker.with({host:h,formatContext:S,preferences:_},W=>yWs(s,c,g,d,h,_,S,R,W)),fixId:CWs}}function yWs(s,c,g,d,h,_,S,R,T){let W;c.length!==g.length&&(W=c.length===1?c[0]:c.join(OF(S.host,S.options)));let V=[],M=s.text;for(let re=g.length-1;re>=0;re--){let{pos:ge,end:Ie}=g[re];M=W?M.slice(0,ge)+W+M.slice(Ie):M.slice(0,ge)+c[re]+M.slice(Ie)}let ee;pe.checkDefined(h.runWithTemporaryFileUpdate).call(h,s.fileName,M,(re,ge,Ie)=>{if(ee=x0.createImportAdder(Ie,re,_,h),d?.range){pe.assert(d.range.length===c.length),d.range.forEach(Ze=>{let We=d.file.statements,Ue=Se(We,Ye=>Ye.end>Ze.pos);if(Ue===-1)return;let $e=Se(We,Ye=>Ye.end>=Ze.end,Ue);$e!==-1&&Ze.end<=We[$e].getStart()&&$e--,V.push(...We.slice(Ue,$e===-1?We.length:$e+1))}),pe.assertIsDefined(ge,"no original program found");let _e=ge.getTypeChecker(),Ee=bWs(d),Ne=yPe(d.file,V,_e,DHt(Ie,V,_e),Ee),Te=!gnt(s.fileName,ge,h,!!d.file.commonJsModuleIndicator);EHt(d.file,Ne.targetFileImportsFromOldFile,T,Te),xHt(d.file,Ne.oldImportsNeededByTargetFile,Ne.targetFileImportsFromOldFile,_e,re,ee)}else{let _e={sourceFile:Ie,program:ge,cancellationToken:R,host:h,preferences:_,formatContext:S},Ee=0;g.forEach((Ne,Te)=>{let Ze=Ne.end-Ne.pos,We=W??c[Te],Ue=Ne.pos+Ee,$e=Ue+We.length,Ye={pos:Ue,end:$e};Ee+=We.length-Ze;let Tt=ji(Jc(_e.sourceFile,Ye.pos),ot=>cy(ot,Ye));Tt&&Lu(Tt,function ot(Qe){if(Ir(Qe)&&Mie(Ye,Qe.getStart(Ie))&&!re?.getTypeChecker().resolveName(Qe.text,Qe,-1,!1))return ee.addImportForUnresolvedIdentifier(_e,Qe,!0);Qe.forEachChild(ot)})})}ee.writeFixes(T,_1(d?d.file:s,_))}),ee.hasFixes()&&g.forEach((re,ge)=>{T.replaceRangeWithText(s,{pos:re.pos,end:re.end},W??c[ge])})}function bWs({file:s,range:c}){let g=c[0].pos,d=c[c.length-1].end,h=Jc(s,g),_=Hde(s,g)??Jc(s,d);return{pos:Ir(h)&&g<=h.getStart(s)?h.getFullStart():g,end:Ir(_)&&d===_.getEnd()?xo.getAdjustedEndPosition(s,_,{}):d}}var Epn={};o(Epn,{ANONYMOUS:()=>tnt,AccessFlags:()=>Ty,AssertionLevel:()=>El,AssignmentDeclarationKind:()=>Ry,AssignmentKind:()=>hZe,Associativity:()=>SZe,BreakpointResolver:()=>$nt,BuilderFileEmit:()=>N3t,BuilderProgramKind:()=>V3t,BuilderState:()=>nR,CallHierarchy:()=>Mz,CharacterCodes:()=>J2,CheckFlags:()=>sB,CheckMode:()=>Eet,ClassificationType:()=>Art,ClassificationTypeNames:()=>W5t,CommentDirectiveType:()=>JS,Comparison:()=>b,CompletionInfoFlags:()=>x5t,CompletionTriggerKind:()=>urt,Completions:()=>Jz,ContainerFlags:()=>uOt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>KS,Diagnostics:()=>Z,DocumentHighlights:()=>IPe,ElementFlags:()=>tf,EmitFlags:()=>cB,EmitHint:()=>ty,EmitOnly:()=>Q2,EndOfLineState:()=>Z5t,ExitStatus:()=>ut,ExportKind:()=>NMt,Extension:()=>ey,ExternalEmitHelpers:()=>JR,FileIncludeKind:()=>$0,FilePreprocessingDiagnosticsKind:()=>fw,FileSystemEntryKind:()=>r1,FileWatcherEventKind:()=>yb,FindAllReferences:()=>Kp,FlattenLevel:()=>kOt,FlowFlags:()=>Yp,ForegroundColorEscapeSequences:()=>_3t,FunctionFlags:()=>bZe,GeneratedIdentifierFlags:()=>od,GetLiteralTextFlags:()=>A7,GoToDefinition:()=>nse,HighlightSpanKind:()=>D5t,IdentifierNameMap:()=>kie,ImportKind:()=>RMt,ImportsNotUsedAsValues:()=>zS,IndentStyle:()=>k5t,IndexFlags:()=>US,IndexKind:()=>Qm,InferenceFlags:()=>R_,InferencePriority:()=>mb,InlayHintKind:()=>N5t,InlayHints:()=>Yit,InternalEmitFlags:()=>RD,InternalNodeBuilderFlags:()=>vg,InternalSymbolName:()=>RT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>a5t,JSDocParsingMode:()=>t1,JsDoc:()=>n5,JsTyping:()=>YP,JsxEmit:()=>XR,JsxFlags:()=>Ym,JsxReferenceKind:()=>$I,LanguageFeatureMinimumTarget:()=>Rd,LanguageServiceMode:()=>T5t,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>$1,ListFormat:()=>$E,LogLevel:()=>fb,MapCode:()=>Qit,MemberOverrideStatus:()=>ar,ModifierFlags:()=>JE,ModuleDetectionKind:()=>zE,ModuleInstanceState:()=>cOt,ModuleKind:()=>jS,ModuleResolutionKind:()=>z_,ModuleSpecifierEnding:()=>dLe,NavigateTo:()=>eHt,NavigationBar:()=>rHt,NewLineKind:()=>qE,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>wy,NodeFactoryFlags:()=>Jbe,NodeFlags:()=>AC,NodeResolutionFeatures:()=>jWt,ObjectFlags:()=>j_,OperationCanceledException:()=>By,OperatorPrecedence:()=>vZe,OrganizeImports:()=>i5,OrganizeImportsMode:()=>lrt,OuterExpressionKinds:()=>cF,OutliningElementsCollector:()=>Jit,OutliningSpanKind:()=>G5t,OutputFileType:()=>F5t,PackageJsonAutoImportPreference:()=>w5t,PackageJsonDependencyGroup:()=>B5t,PatternMatchKind:()=>_nt,PollingInterval:()=>r_,PollingWatchKind:()=>aB,PragmaKindFlags:()=>N_,PredicateSemantics:()=>K_,PreparePasteEdits:()=>cst,PrivateIdentifierKind:()=>HLe,ProcessLevel:()=>ZOt,ProgramUpdateLevel:()=>f3t,QuotePreference:()=>cMt,RegularExpressionFlags:()=>UE,RelationComparisonResult:()=>vy,Rename:()=>$Pe,ScriptElementKind:()=>V5t,ScriptElementKindModifier:()=>P5t,ScriptKind:()=>X2,ScriptSnapshot:()=>TVe,ScriptTarget:()=>kT,SemanticClassificationFormat:()=>R5t,SemanticMeaning:()=>O5t,SemicolonPreference:()=>grt,SignatureCheckMode:()=>vet,SignatureFlags:()=>$A,SignatureHelp:()=>X1e,SignatureInfo:()=>R3t,SignatureKind:()=>BA,SmartSelectionRange:()=>jit,SnippetKind:()=>Iw,StatisticType:()=>I5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>uI,SymbolDisplay:()=>i9,SymbolDisplayPartKind:()=>NVe,SymbolFlags:()=>TT,SymbolFormatFlags:()=>Rf,SyntaxKind:()=>Ld,Ternary:()=>Cb,ThrottledCancellationToken:()=>uYt,TokenClass:()=>L5t,TokenFlags:()=>KE,TransformFlags:()=>up,TypeFacts:()=>bet,TypeFlags:()=>jE,TypeFormatFlags:()=>Ng,TypeMapKind:()=>zf,TypePredicateKind:()=>Th,TypeReferenceSerializationKind:()=>oE,UnionReduction:()=>Jr,UpToDateStatusType:()=>e5t,VarianceFlags:()=>NT,Version:()=>O,VersionRange:()=>gt,WatchDirectoryFlags:()=>q1,WatchDirectoryKind:()=>DT,WatchFileKind:()=>oB,WatchLogLevel:()=>h3t,WatchType:()=>jm,accessPrivateIdentifier:()=>DOt,addEmitFlags:()=>Gw,addEmitHelper:()=>$Y,addEmitHelpers:()=>hN,addInternalEmitFlags:()=>N3,addNodeFactoryPatcher:()=>qqe,addObjectAllocatorPatcher:()=>Zqe,addRange:()=>Or,addRelatedInfo:()=>lg,addSyntheticLeadingComment:()=>JT,addSyntheticTrailingComment:()=>Iz,addToSeen:()=>Zy,advancedAsyncSuperHelper:()=>DF,affectsDeclarationPathOptionDeclarations:()=>yWt,affectsEmitOptionDeclarations:()=>_Wt,allKeysStartWithDot:()=>x9e,altDirectorySeparator:()=>Eb,and:()=>dh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>yLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Ju,arrayToNumericMap:()=>Vs,assertType:()=>nE,assign:()=>Wt,asyncSuperHelper:()=>lie,attachFileToDiagnostics:()=>XL,base64decode:()=>YZe,base64encode:()=>ibe,binarySearch:()=>Wc,binarySearchKey:()=>Sg,bindSourceFile:()=>gOt,breakIntoCharacterSpans:()=>XMt,breakIntoWordSpans:()=>JMt,buildLinkParts:()=>IMt,buildOpts:()=>CEe,buildOverload:()=>Bpn,bundlerModuleNameResolver:()=>zWt,canBeConvertedToAsync:()=>Bnt,canHaveDecorators:()=>oQ,canHaveExportModifier:()=>Kne,canHaveFlowNode:()=>UJ,canHaveIllegalDecorators:()=>D$e,canHaveIllegalModifiers:()=>tWt,canHaveIllegalType:()=>l$r,canHaveIllegalTypeParameters:()=>eWt,canHaveJSDoc:()=>Ane,canHaveLocals:()=>WI,canHaveModifiers:()=>LB,canHaveModuleSpecifier:()=>dZe,canHaveSymbol:()=>mE,canIncludeBindAndCheckDiagnostics:()=>gU,canJsonReportNoInputFiles:()=>vEe,canProduceDiagnostics:()=>ZEe,canUsePropertyAccess:()=>Fbe,canWatchAffectingLocation:()=>X3t,canWatchAtTypes:()=>Q3t,canWatchDirectoryOrFile:()=>Btt,canWatchDirectoryOrFilePath:()=>zEe,cartesianProduct:()=>XE,cast:()=>Ma,chainBundle:()=>rR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>K2,changeCompilerHostLikeToUseCache:()=>Gde,changeExtension:()=>fN,changeFullExtension:()=>i_,changesAffectModuleResolution:()=>NJ,changesAffectingProgramStructure:()=>fge,characterCodeToRegularExpressionFlag:()=>Wg,childIsDecorated:()=>HJ,classElementOrClassElementParameterIsDecorated:()=>hye,classHasClassThisAssignment:()=>Wet,classHasDeclaredOrExplicitlyAssignedName:()=>Oet,classHasExplicitlyAssignedName:()=>X9e,classOrConstructorParameterIsDecorated:()=>Rx,classicNameResolver:()=>oOt,classifier:()=>pYt,cleanExtendedConfigCache:()=>q9e,clear:()=>St,clearMap:()=>Fy,clearSharedExtendedConfigFileWatcher:()=>ttt,climbPastPropertyAccess:()=>xVe,clone:()=>Eg,cloneCompilerOptions:()=>Drt,closeFileWatcher:()=>dv,closeFileWatcherOf:()=>Cv,codefix:()=>x0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>Zet,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>SWt,commentPragmas:()=>e1,commonOptionsWithBuild:()=>d9e,compact:()=>Hr,compareBooleans:()=>Ml,compareDataObjects:()=>_Ae,compareDiagnostics:()=>X7,compareEmitHelpers:()=>QLe,compareNumberOfDirectorySeparators:()=>Qne,comparePaths:()=>qf,comparePathsCaseInsensitive:()=>pB,comparePathsCaseSensitive:()=>Cx,comparePatternKeys:()=>fet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Wa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>so,compareTextSpans:()=>yn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>oLe,compilerOptionsAffectEmit:()=>sLe,compilerOptionsAffectSemanticDiagnostics:()=>mbe,compilerOptionsDidYouMeanDiagnostics:()=>h9e,compilerOptionsIndicateEsModules:()=>Lrt,computeCommonSourceDirectoryOfFilenames:()=>m3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Po,computeLineStarts:()=>cA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>_tt,computeSuggestionDiagnostics:()=>Ent,computedOptions:()=>J7,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Fne,consumesNodeCoreModules:()=>aPe,contains:()=>k,containsIgnoredPath:()=>sz,containsObjectRestOrSpread:()=>fEe,containsParseError:()=>pP,containsPath:()=>Jh,convertCompilerOptionsForTelemetry:()=>PWt,convertCompilerOptionsFromJson:()=>men,convertJsonOption:()=>vU,convertToBase64:()=>nbe,convertToJson:()=>bEe,convertToObject:()=>xWt,convertToOptionsWithAbsolutePaths:()=>y9e,convertToRelativePath:()=>r2,convertToTSConfig:()=>z$e,convertTypeAcquisitionFromJson:()=>Cen,copyComments:()=>xU,copyEntries:()=>a7,copyLeadingComments:()=>Uie,copyProperties:()=>GA,copyTrailingAsLeadingComments:()=>m1e,copyTrailingComments:()=>jde,couldStartTrivia:()=>tv,countWhere:()=>ct,createAbstractBuilder:()=>wrn,createAccessorPropertyBackingField:()=>G$e,createAccessorPropertyGetRedirector:()=>lWt,createAccessorPropertySetRedirector:()=>uWt,createBaseNodeFactory:()=>xLe,createBinaryExpressionTrampoline:()=>c9e,createBuilderProgram:()=>ytt,createBuilderProgramUsingIncrementalBuildInfo:()=>M3t,createBuilderStatusReporter:()=>_Ve,createCacheableExportInfoMap:()=>Ant,createCachedDirectoryStructureHost:()=>j9e,createClassifier:()=>nin,createCommentDirectivesMap:()=>bge,createCompilerDiagnostic:()=>Nf,createCompilerDiagnosticForInvalidCustomType:()=>vWt,createCompilerDiagnosticFromMessageChain:()=>SAe,createCompilerHost:()=>C3t,createCompilerHostFromProgramHost:()=>Ott,createCompilerHostWorker:()=>$9e,createDetachedDiagnostic:()=>QY,createDiagnosticCollection:()=>EF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>A3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Bw,createDiagnosticForNodeInSourceFile:()=>_E,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Gz,createDocumentPositionMapper:()=>BOt,createDocumentRegistry:()=>FMt,createDocumentRegistryInternal:()=>hnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>vtt,createEmitHelperFactory:()=>YLe,createEmptyExports:()=>aEe,createEvaluator:()=>NLe,createExpressionForJsxElement:()=>UPt,createExpressionForJsxFragment:()=>KPt,createExpressionForObjectLiteralElementLike:()=>jPt,createExpressionForPropertyName:()=>v$e,createExpressionFromEntityName:()=>cEe,createExternalHelpersImportDeclarationIfNeeded:()=>T$e,createFileDiagnostic:()=>qh,createFileDiagnosticFromMessageChain:()=>ze,createFlowNode:()=>rk,createForOfBindingStatement:()=>S$e,createFutureSourceFile:()=>dPe,createGetCanonicalFileName:()=>_d,createGetIsolatedDeclarationErrors:()=>s3t,createGetSourceFile:()=>ott,createGetSymbolAccessibilityDiagnosticForNode:()=>J3,createGetSymbolAccessibilityDiagnosticForNodeName:()=>i3t,createGetSymbolWalker:()=>AOt,createIncrementalCompilerHost:()=>CVe,createIncrementalProgram:()=>$3t,createJsxFactoryExpression:()=>E$e,createLanguageService:()=>gYt,createLanguageServiceSourceFile:()=>kPe,createMemberAccessForPropertyName:()=>EU,createModeAwareCache:()=>wie,createModeAwareCacheKey:()=>Cde,createModeMismatchDetails:()=>l7,createModuleNotFoundChain:()=>kJ,createModuleResolutionCache:()=>Tie,createModuleResolutionLoader:()=>Att,createModuleResolutionLoaderUsingGlobalCache:()=>j3t,createModuleSpecifierResolutionHost:()=>z3,createMultiMap:()=>dl,createNameResolver:()=>JAe,createNodeConverters:()=>GLe,createNodeFactory:()=>nie,createOptionNameMap:()=>f9e,createOverload:()=>ust,createPackageJsonImportFilter:()=>jie,createPackageJsonInfo:()=>int,createParenthesizerRules:()=>pv,createPatternMatcher:()=>WMt,createPrinter:()=>MP,createPrinterWithDefaults:()=>d3t,createPrinterWithRemoveComments:()=>gQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>p3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>ett,createProgram:()=>UEe,createProgramDiagnostics:()=>w3t,createProgramHost:()=>Mtt,createPropertyNameNodeForIdentifierOrLiteral:()=>Une,createQueue:()=>oA,createRange:()=>Gy,createRedirectedBuilderProgram:()=>Stt,createResolutionCache:()=>Ttt,createRuntimeTypeSerializer:()=>OOt,createScanner:()=>wb,createSemanticDiagnosticsBuilderProgram:()=>Brn,createSet:()=>oo,createSolutionBuilder:()=>i5t,createSolutionBuilderHost:()=>r5t,createSolutionBuilderWithWatch:()=>s5t,createSolutionBuilderWithWatchHost:()=>n5t,createSortedArray:()=>Ya,createSourceFile:()=>vz,createSourceMapGenerator:()=>yOt,createSourceMapSource:()=>t$e,createSuperAccessVariableStatement:()=>U9e,createSymbolTable:()=>qu,createSymlinkCache:()=>_be,createSyntacticTypeNodeBuilder:()=>E5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>g1e,createTextChangeFromStartLength:()=>XVe,createTextChangeRange:()=>$2,createTextRangeFromNode:()=>Grt,createTextRangeFromSpan:()=>QVe,createTextSpan:()=>zd,createTextSpanFromBounds:()=>wA,createTextSpanFromNode:()=>Oy,createTextSpanFromRange:()=>t9,createTextSpanFromStringLiteralLikeContent:()=>xrt,createTextWriter:()=>Bne,createTokenRange:()=>QL,createTypeChecker:()=>COt,createTypeReferenceDirectiveResolutionCache:()=>D9e,createTypeReferenceResolutionLoader:()=>rVe,createWatchCompilerHost:()=>Lrn,createWatchCompilerHostOfConfigFile:()=>Htt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Ytt,createWatchFactory:()=>Wtt,createWatchHost:()=>Ptt,createWatchProgram:()=>Qtt,createWatchStatusReporter:()=>Rtt,createWriteFileMeasuringIO:()=>att,declarationNameToString:()=>Wd,decodeMappings:()=>xet,decodedTextSpanIntersectsWith:()=>IE,deduplicate:()=>io,defaultHoverMaximumTruncationLength:()=>Age,defaultInitCompilerOptions:()=>V$r,defaultMaximumTruncationLength:()=>EY,diagnosticCategoryName:()=>_b,diagnosticToString:()=>IQ,diagnosticsEqualityComparer:()=>vAe,directoryProbablyExists:()=>f1,directorySeparator:()=>ag,displayPart:()=>SE,displayPartsToString:()=>D1e,disposeEmitNodes:()=>Ku,documentSpansEqual:()=>Yrt,dumpTracingLegend:()=>jf,elementAt:()=>Cg,elideNodes:()=>cWt,emitDetachedComments:()=>xZe,emitFiles:()=>qet,emitFilesAndReportErrors:()=>fVe,emitFilesAndReportErrorsAndGetExitStatus:()=>Vtt,emitModuleKindIsNonNodeESM:()=>Wne,emitNewLineBeforeLeadingCommentOfPosition:()=>Uye,emitResolverSkipsTypeChecking:()=>zet,emitSkippedWithNoDiagnostics:()=>ftt,emptyArray:()=>E,emptyFileSystemEntries:()=>wbe,emptyMap:()=>N,emptyOptions:()=>VB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Am,ensureScriptKind:()=>xAe,ensureTrailingDirectorySeparator:()=>hp,entityNameToString:()=>oy,enumerateInsertsAndDeletes:()=>q0,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Mp,equateStringsCaseSensitive:()=>MA,equateValues:()=>yg,escapeJsxAttributeString:()=>Wye,escapeLeadingUnderscores:()=>Ap,escapeNonAsciiString:()=>Ene,escapeSnippetText:()=>xP,escapeString:()=>YT,escapeTemplateSubstitution:()=>Vye,evaluatorResult:()=>$h,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>jAe,executeCommandLine:()=>Inn,expandPreOrPostfixIncrementOrDecrementExpression:()=>n9e,explainFiles:()=>xtt,explainIfFileIsRedirectAndImpliedFormat:()=>Gtt,exportAssignmentIsAlias:()=>Ine,expressionResultIsUnused:()=>ELe,extend:()=>OA,extensionFromPath:()=>tz,extensionIsTS:()=>PAe,extensionsNotSupportingExtensionlessResolution:()=>VAe,externalHelpersModuleNameText:()=>PD,factory:()=>me,fileExtensionIs:()=>aA,fileExtensionIsOneOf:()=>fu,fileIncludeReasonToDiagnostics:()=>Ltt,fileShouldUseJavaScriptRequire:()=>gnt,filter:()=>Me,filterMutate:()=>je,filterSemanticDiagnostics:()=>oVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>YA,findChildOfKind:()=>qd,findComputedPropertyNameCacheAssignment:()=>l9e,findConfigFile:()=>itt,findConstructorDeclaration:()=>zY,findContainingList:()=>VVe,findDiagnosticForNode:()=>BMt,findFirstNonJsxWhitespaceToken:()=>K5t,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>U5t,findModifier:()=>Qie,findNextToken:()=>fQ,findPackageJson:()=>vMt,findPackageJsons:()=>nnt,findPrecedingMatchingToken:()=>HVe,findPrecedingToken:()=>Gm,findSuperStatementIndexPath:()=>M9e,findTokenOnLeftOfPosition:()=>Hde,findUseStrictPrologue:()=>w$e,first:()=>ma,firstDefined:()=>X,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>ant,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>iA,fixupCompilerOptions:()=>wnt,flatMap:()=>er,flatMapIterator:()=>xt,flatMapToMutable:()=>vt,flatten:()=>Nr,flattenCommaList:()=>gWt,flattenDestructuringAssignment:()=>TU,flattenDestructuringBinding:()=>uQ,flattenDiagnosticMessageText:()=>wN,forEach:()=>F,forEachAncestor:()=>Ew,forEachAncestorDirectory:()=>pE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>vN,forEachChild:()=>Lu,forEachChildRecursively:()=>Sz,forEachDynamicImportOrRequireCall:()=>$ne,forEachEmittedFile:()=>Jet,forEachEnclosingBlockScopeContainer:()=>Dge,forEachEntry:()=>Dh,forEachExternalModuleToImportFrom:()=>pnt,forEachImportClauseDeclaration:()=>pZe,forEachKey:()=>SB,forEachLeadingCommentRange:()=>GD,forEachNameInAccessChainWalkingLeft:()=>jZe,forEachNameOfDefaultExport:()=>fPe,forEachOptionsSyntaxByName:()=>zAe,forEachProjectReference:()=>gz,forEachPropertyAssignment:()=>WJ,forEachResolvedProjectReference:()=>tie,forEachReturnStatement:()=>yF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>dF,forEachTsConfigPropArray:()=>zre,forEachUnique:()=>Xrt,forEachYieldExpression:()=>$Fe,formatColorAndReset:()=>AQ,formatDiagnostic:()=>ctt,formatDiagnostics:()=>ern,formatDiagnosticsWithColorAndContext:()=>E3t,formatGeneratedName:()=>M3,formatGeneratedNamePart:()=>Eie,formatLocation:()=>ltt,formatMessage:()=>XY,formatStringFromArgs:()=>dN,formatting:()=>Im,generateDjb2Hash:()=>ry,generateTSConfig:()=>GWt,getAdjustedReferenceLocation:()=>vrt,getAdjustedRenameLocation:()=>WVe,getAliasDeclarationFromName:()=>Rye,getAllAccessorDeclarations:()=>BP,getAllDecoratorsOfClass:()=>Vet,getAllDecoratorsOfClassElement:()=>Y9e,getAllJSDocTags:()=>dJ,getAllJSDocTagsOfKind:()=>rye,getAllKeys:()=>mI,getAllProjectOutputs:()=>K9e,getAllSuperTypeNodes:()=>R7,getAllowImportingTsExtensions:()=>eLe,getAllowJSCompilerOption:()=>TF,getAllowSyntheticDefaultImports:()=>JY,getAncestor:()=>ML,getAnyExtensionFromPath:()=>gE,getAreDeclarationMapsEnabled:()=>BAe,getAssignedExpandoInitializer:()=>FY,getAssignedName:()=>CB,getAssignmentDeclarationKind:()=>nI,getAssignmentDeclarationPropertyAccessKind:()=>XJ,getAssignmentTargetKind:()=>QD,getAutomaticTypeDirectiveNames:()=>R9e,getBaseFileName:()=>gp,getBinaryOperatorPrecedence:()=>bne,getBuildInfo:()=>$et,getBuildInfoFileVersionMap:()=>Ett,getBuildInfoText:()=>g3t,getBuildOrderFromAnyBuildOrder:()=>$Ee,getBuilderCreationParameters:()=>uVe,getBuilderFileEmit:()=>HP,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>iI,getClassExtendsHeritageElement:()=>OL,getClassLikeDeclarationOfSymbol:()=>AN,getCombinedLocalAndExportSymbolFlags:()=>sU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>dm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ad,getCommentRange:()=>DB,getCommonSourceDirectory:()=>xde,getCommonSourceDirectoryOfConfig:()=>RU,getCompilerOptionValue:()=>K7,getConditions:()=>PP,getConfigFileParsingDiagnostics:()=>dQ,getConstantValue:()=>ZLe,getContainerFlags:()=>het,getContainerNode:()=>kU,getContainingClass:()=>hC,getContainingClassExcludingClassDecorators:()=>Oge,getContainingClassStaticBlock:()=>iZe,getContainingFunction:()=>A1,getContainingFunctionDeclaration:()=>Wge,getContainingFunctionOrClassStaticBlock:()=>qre,getContainingNodeArray:()=>SLe,getContainingObjectLiteralElement:()=>k1e,getContextualTypeFromParent:()=>tPe,getContextualTypeFromParentOrAncestorTypeNode:()=>PVe,getDeclarationDiagnostics:()=>o3t,getDeclarationEmitExtensionForPath:()=>sAe,getDeclarationEmitOutputFilePath:()=>RZe,getDeclarationEmitOutputFilePathWorker:()=>wne,getDeclarationFileExtension:()=>g9e,getDeclarationFromName:()=>T7,getDeclarationModifierFlagsFromSymbol:()=>u2,getDeclarationOfKind:()=>Cp,getDeclarationsOfKind:()=>dge,getDeclaredExpandoInitializer:()=>E7,getDecorators:()=>Rb,getDefaultCompilerOptions:()=>DPe,getDefaultFormatCodeSettings:()=>RVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>AYt,getDefaultLikeExportInfo:()=>pPe,getDefaultLikeExportNameFromDeclaration:()=>cnt,getDefaultResolutionModeForFileWorker:()=>sVe,getDiagnosticText:()=>Zb,getDiagnosticsWithinSpan:()=>wMt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>wtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>U3t,getDocumentPositionMapper:()=>bnt,getDocumentSpansEqualityComparer:()=>Qrt,getESModuleInterop:()=>kw,getEditsForFileRename:()=>LMt,getEffectiveBaseTypeNode:()=>BB,getEffectiveConstraintOfTypeParameter:()=>n3,getEffectiveContainerForJSDocTemplateTag:()=>zge,getEffectiveImplementsTypeNodes:()=>jJ,getEffectiveInitializer:()=>one,getEffectiveJSDocHost:()=>WL,getEffectiveModifierFlags:()=>o_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>VZe,getEffectiveModifierFlagsNoCache:()=>zye,getEffectiveReturnTypeNode:()=>xb,getEffectiveSetAccessorTypeAnnotationNode:()=>Jye,getEffectiveTypeAnnotationNode:()=>kh,getEffectiveTypeParameterDeclarations:()=>ZD,getEffectiveTypeRoots:()=>mde,getElementOrPropertyAccessArgumentExpressionOrName:()=>jge,getElementOrPropertyAccessName:()=>YD,getElementsOfBindingOrAssignmentPattern:()=>bie,getEmitDeclarations:()=>Ly,getEmitFlags:()=>tA,getEmitHelpers:()=>jbe,getEmitModuleDetectionKind:()=>tLe,getEmitModuleFormatOfFileWorker:()=>Lde,getEmitModuleKind:()=>i0,getEmitModuleResolutionKind:()=>k_,getEmitScriptTarget:()=>Mg,getEmitStandardClassFields:()=>hbe,getEnclosingBlockScopeContainer:()=>tS,getEnclosingContainer:()=>f7,getEncodedSemanticClassifications:()=>fnt,getEncodedSyntacticClassifications:()=>Int,getEndLinePosition:()=>vY,getEntityNameFromTypeNode:()=>ene,getEntrypointsFromPackageJsonInfo:()=>Aet,getErrorCountForSummary:()=>dVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>Dtt,getEscapedTextOfIdentifierOrLiteral:()=>qJ,getEscapedTextOfJsxAttributeName:()=>cz,getEscapedTextOfJsxNamespacedName:()=>oS,getExpandoInitializer:()=>VL,getExportAssignmentExpression:()=>hne,getExportInfoMap:()=>S1e,getExportNeedsImportStarHelper:()=>wOt,getExpressionAssociativity:()=>Zye,getExpressionPrecedence:()=>x7,getExternalHelpersModuleName:()=>uEe,getExternalModuleImportEqualsDeclarationExpression:()=>_7,getExternalModuleName:()=>LY,getExternalModuleNameFromDeclaration:()=>wZe,getExternalModuleNameFromPath:()=>Mye,getExternalModuleNameLiteral:()=>Ez,getExternalModuleRequireArgument:()=>Cye,getFallbackOptions:()=>QEe,getFileEmitOutput:()=>T3t,getFileMatcherPatterns:()=>kAe,getFileNamesFromConfigSpecs:()=>Ide,getFileWatcherEventKind:()=>qS,getFilesInErrorForSummary:()=>pVe,getFirstConstructorWithBody:()=>lN,getFirstIdentifier:()=>B0,getFirstNonSpaceCharacterPosition:()=>CMt,getFirstProjectOutput:()=>jet,getFixableErrorSpanExpression:()=>snt,getFormatCodeSettingsForWriting:()=>gPe,getFullWidth:()=>DJ,getFunctionFlags:()=>SI,getHeritageClause:()=>mne,getHostSignatureFromJSDoc:()=>PL,getIdentifierAutoGenerate:()=>i$e,getIdentifierGeneratedImportReference:()=>MLe,getIdentifierTypeArguments:()=>G3,getImmediatelyInvokedFunctionExpression:()=>ZL,getImpliedNodeFormatForEmitWorker:()=>NU,getImpliedNodeFormatForFile:()=>JEe,getImpliedNodeFormatForFileWorker:()=>iVe,getImportNeedsImportDefaultHelper:()=>Fet,getImportNeedsImportStarHelper:()=>W9e,getIndentString:()=>iAe,getInferredLibraryNameResolveFrom:()=>nVe,getInitializedVariables:()=>iU,getInitializerOfBinaryExpression:()=>bye,getInitializerOfBindingOrAssignmentElement:()=>AEe,getInterfaceBaseTypeNodes:()=>N7,getInternalEmitFlags:()=>g1,getInvokedExpression:()=>Yge,getIsFileExcluded:()=>kMt,getIsolatedModules:()=>sS,getJSDocAugmentsTag:()=>K6,getJSDocClassTag:()=>bx,getJSDocCommentRanges:()=>dye,getJSDocCommentsAndTags:()=>Sye,getJSDocDeprecatedTag:()=>Kh,getJSDocDeprecatedTagNoCache:()=>i2,getJSDocEnumTag:()=>a1,getJSDocHost:()=>bP,getJSDocImplementsTags:()=>uY,getJSDocOverloadTags:()=>Bye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>vL,getJSDocParameterTagsNoCache:()=>uJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>_re,getJSDocPublicTagNoCache:()=>Ex,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>hA,getJSDocReturnTag:()=>sv,getJSDocReturnType:()=>AJ,getJSDocRoot:()=>KJ,getJSDocSatisfiesExpressionType:()=>Lbe,getJSDocSatisfiesTag:()=>fF,getJSDocTags:()=>Sx,getJSDocTemplateTag:()=>oP,getJSDocThisTag:()=>Nb,getJSDocType:()=>eN,getJSDocTypeAliasName:()=>N$e,getJSDocTypeAssertionType:()=>_ie,getJSDocTypeParameterDeclarations:()=>uAe,getJSDocTypeParameterTags:()=>r3,getJSDocTypeParameterTagsNoCache:()=>U6,getJSDocTypeTag:()=>ov,getJSXImplicitImportBase:()=>One,getJSXRuntimeImport:()=>Mne,getJSXTransformEnabled:()=>RAe,getKeyForCompilerOptions:()=>oet,getLanguageVariant:()=>Zne,getLastChild:()=>ube,getLeadingCommentRanges:()=>fE,getLeadingCommentRangesOfNode:()=>Fge,getLeftmostAccessExpression:()=>oU,getLeftmostExpression:()=>aU,getLibFileNameFromLibReference:()=>Obe,getLibNameFromLibReference:()=>qY,getLibraryNameFromLibFileName:()=>dtt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ket,getLineOfLocalPosition:()=>Z7,getLineStartPositionForPosition:()=>PB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>obe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>UZe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>v3,getLinesBetweenRangeEndPositions:()=>JZe,getLiteralText:()=>Sge,getLocalNameForExternalImport:()=>yie,getLocalSymbolForExportDefault:()=>W7,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>qEe,getMappedContextSpan:()=>Jrt,getMappedDocumentSpan:()=>qVe,getMappedLocation:()=>Jde,getMatchedFileSpec:()=>Ftt,getMatchedIncludeSpec:()=>Ztt,getMeaningFromDeclaration:()=>DVe,getMeaningFromLocation:()=>DU,getMembersOfDeclaration:()=>Zge,getModeForFileReference:()=>S3t,getModeForResolutionAtIndex:()=>orn,getModeForUsageLocation:()=>gtt,getModifiedTime:()=>bb,getModifiers:()=>$R,getModuleInstanceState:()=>PF,getModuleNameStringLiteralAt:()=>KEe,getModuleSpecifierEndingPreference:()=>pLe,getModuleSpecifierResolverHost:()=>Vrt,getNameForExportedSymbol:()=>cPe,getNameFromImportAttribute:()=>XAe,getNameFromIndexInfo:()=>kge,getNameFromPropertyName:()=>d1e,getNameOfAccessExpression:()=>gbe,getNameOfCompilerOptionValue:()=>_9e,getNameOfDeclaration:()=>Il,getNameOfExpando:()=>_ye,getNameOfJSDocTypedef:()=>pF,getNameOfScriptTarget:()=>TAe,getNameOrArgument:()=>cne,getNameTable:()=>qnt,getNamespaceDeclarationNode:()=>JJ,getNewLineCharacter:()=>uN,getNewLineKind:()=>E1e,getNewLineOrDefaultFromHost:()=>OF,getNewTargetContainer:()=>oZe,getNextJSDocCommentLocation:()=>vye,getNodeChildren:()=>y$e,getNodeForGeneratedName:()=>pEe,getNodeId:()=>rd,getNodeKind:()=>pQ,getNodeModifiers:()=>Yde,getNodeModulePathParts:()=>MAe,getNonAssignedNameOfDeclaration:()=>Cw,getNonAssignmentOperatorForCompoundAssignment:()=>Bde,getNonAugmentationDeclaration:()=>LJ,getNonDecoratorTokenPosOfNode:()=>Mre,getNonIncrementalBuildInfoRoots:()=>H3t,getNonModifierTokenPosOfNode:()=>Ege,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>KR,getNormalizedPathComponents:()=>AB,getObjectFlags:()=>la,getOperatorAssociativity:()=>Lye,getOperatorPrecedence:()=>yne,getOptionFromName:()=>X$e,getOptionsForLibraryResolution:()=>aet,getOptionsNameMap:()=>vie,getOptionsSyntaxByArrayElementValue:()=>Mbe,getOptionsSyntaxByValue:()=>DLe,getOrCreateEmitNode:()=>c_,getOrUpdate:()=>cr,getOriginalNode:()=>Dd,getOriginalNodeId:()=>Wy,getOutputDeclarationFileName:()=>kde,getOutputDeclarationFileNameWorker:()=>Uet,getOutputExtension:()=>MEe,getOutputFileNames:()=>qtn,getOutputJSFileNameWorker:()=>Ket,getOutputPathsFor:()=>Dde,getOwnEmitOutputFilePath:()=>TZe,getOwnKeys:()=>_g,getOwnValues:()=>Qh,getPackageJsonTypesVersionsPaths:()=>T9e,getPackageNameFromTypesPackageName:()=>bde,getPackageScopeForPath:()=>yde,getParameterSymbolFromJSDoc:()=>dne,getParentNodeInSpan:()=>f1e,getParseTreeNode:()=>$l,getParsedCommandLineOfConfigFile:()=>_Ee,getPathComponents:()=>Np,getPathFromPathComponents:()=>Dm,getPathUpdater:()=>Cnt,getPathsBasePath:()=>oAe,getPatternFromSpec:()=>Ebe,getPendingEmitKindWithSeen:()=>lVe,getPositionOfLineAndCharacter:()=>th,getPossibleGenericSignatures:()=>wrt,getPossibleOriginalInputExtensionForExtension:()=>Hye,getPossibleOriginalInputPathWithoutChangingExt:()=>Yye,getPossibleTypeArgumentsInfo:()=>Trt,getPreEmitDiagnostics:()=>$tn,getPrecedingNonSpaceCharacterPosition:()=>$Ve,getPrivateIdentifier:()=>Pet,getProperties:()=>Let,getProperty:()=>pu,getPropertyAssignmentAliasLikeExpression:()=>yZe,getPropertyNameForPropertyNameNode:()=>_3,getPropertyNameFromType:()=>A2,getPropertyNameOfBindingOrAssignmentElement:()=>R$e,getPropertySymbolFromBindingElement:()=>zVe,getPropertySymbolsFromContextualType:()=>xPe,getQuoteFromPreference:()=>Wrt,getQuotePreference:()=>_1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>Vz,getReferencedFileLocation:()=>Zde,getRegexFromPattern:()=>zD,getRegularExpressionForWildcard:()=>j7,getRegularExpressionsForWildcards:()=>Hne,getRelativePathFromDirectory:()=>mp,getRelativePathFromFile:()=>i1,getRelativePathToDirectoryOrUrl:()=>Of,getRenameLocation:()=>h1e,getReplacementSpanForContextToken:()=>krt,getResolutionDiagnostic:()=>htt,getResolutionModeOverride:()=>Gie,getResolveJsonModule:()=>NP,getResolvePackageJsonExports:()=>U7,getResolvePackageJsonImports:()=>Vne,getResolvedExternalModuleName:()=>F7,getResolvedModuleFromResolution:()=>xL,getResolvedTypeReferenceDirectiveFromResolution:()=>c7,getRestIndicatorOfBindingOrAssignmentElement:()=>o9e,getRestParameterElementType:()=>pye,getRightMostAssignedExpression:()=>ane,getRootDeclaration:()=>Rw,getRootDirectoryOfResolutionCache:()=>K3t,getRootLength:()=>Wf,getScriptKind:()=>zrt,getScriptKindFromFileName:()=>GAe,getScriptTargetFeatures:()=>Hre,getSelectedEffectiveModifierFlags:()=>MY,getSelectedSyntacticModifierFlags:()=>ZZe,getSemanticClassifications:()=>xMt,getSemanticJsxChildren:()=>$J,getSetAccessorTypeAnnotationNode:()=>DZe,getSetAccessorValueParameter:()=>L7,getSetExternalModuleIndicator:()=>Lne,getShebang:()=>mB,getSingleVariableOfVariableStatement:()=>m3,getSnapshotText:()=>Lz,getSnippetElement:()=>zbe,getSourceFileOfModule:()=>FJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>cAe,getSourceFileVersionAsHashFromText:()=>IVe,getSourceFilesToEmit:()=>aAe,getSourceMapRange:()=>XT,getSourceMapper:()=>KMt,getSourceTextOfNodeFromSourceFile:()=>mF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>OD,getStartPositionOfRange:()=>H7,getStartsOnNewLine:()=>D3,getStaticPropertiesAndClassStaticBlock:()=>H9e,getStrictOptionValue:()=>a_,getStringComparer:()=>ld,getSubPatternFromSpec:()=>DAe,getSuperCallFromStatement:()=>O9e,getSuperContainer:()=>C7,getSupportedCodeFixes:()=>jnt,getSupportedExtensions:()=>z7,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>q7,getSwitchedType:()=>ent,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>_ne,getSymbolTarget:()=>qrt,getSyntacticClassifications:()=>GMt,getSyntacticModifierFlags:()=>Nx,getSyntacticModifierFlagsNoCache:()=>qye,getSynthesizedDeepClone:()=>JA,getSynthesizedDeepCloneWithReplacements:()=>rie,getSynthesizedDeepClones:()=>o0,getSynthesizedDeepClonesWithReplacements:()=>qAe,getSyntheticLeadingComments:()=>k3,getSyntheticTrailingComments:()=>hU,getTargetLabel:()=>GVe,getTargetOfBindingOrAssignmentElement:()=>ZP,getTemporaryModuleResolutionState:()=>_de,getTextOfConstantValue:()=>vge,getTextOfIdentifierOrLiteral:()=>c2,getTextOfJSDocComment:()=>pJ,getTextOfJsxAttributeName:()=>xw,getTextOfJsxNamespacedName:()=>lz,getTextOfNode:()=>xp,getTextOfNodeFromSourceText:()=>TY,getTextOfPropertyName:()=>hP,getThisContainer:()=>r0,getThisParameter:()=>vP,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>MD,getTokenSourceMapRange:()=>fz,getTouchingPropertyName:()=>Lb,getTouchingToken:()=>Hie,getTrailingCommentRanges:()=>n2,getTrailingSemicolonDeferringWriter:()=>Oye,getTransformers:()=>c3t,getTsBuildInfoEmitOutputFilePath:()=>U3,getTsConfigObjectLiteralExpression:()=>m7,getTsConfigPropArrayElementValue:()=>Pge,getTypeAnnotationNode:()=>kZe,getTypeArgumentOrTypeParameterList:()=>rMt,getTypeKeywordOfTypeOnlyImport:()=>Hrt,getTypeNode:()=>WLe,getTypeNodeIfAccessible:()=>qde,getTypeParameterFromJsDoc:()=>IZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>G9e,getUILocale:()=>df,getUniqueName:()=>GU,getUniqueSymbolId:()=>mMt,getUseDefineForClassFields:()=>Pne,getWatchErrorSummaryDiagnosticMessage:()=>Ntt,getWatchFactory:()=>ntt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>xre,handleNoEmitOptions:()=>Itt,handleWatchOptionsConfigDirTemplateSubstitution:()=>b9e,hasAbstractModifier:()=>wP,hasAccessorModifier:()=>Nw,hasAmbientModifier:()=>jye,hasChangesInResolutions:()=>Pre,hasContextSensitiveParameters:()=>OAe,hasDecorators:()=>p1,hasDocComment:()=>eMt,hasDynamicName:()=>XD,hasEffectiveModifier:()=>Gb,hasEffectiveModifiers:()=>Kye,hasEffectiveReadonlyModifier:()=>b3,hasExtension:()=>E0,hasImplementationTSFileExtension:()=>ALe,hasIndexSignature:()=>$rt,hasInferredType:()=>KAe,hasInitializer:()=>WT,hasInvalidEscape:()=>Pye,hasJSDocNodes:()=>Xm,hasJSDocParameterTags:()=>gJ,hasJSFileExtension:()=>pN,hasJsonModuleEmitEnabled:()=>wAe,hasOnlyExpressionInitializer:()=>l1,hasOverrideModifier:()=>Tne,hasPossibleExternalModuleReference:()=>Nge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>s1e,hasQuestionToken:()=>VY,hasRecordedExternalHelpers:()=>$Pt,hasResolutionModeOverride:()=>TLe,hasRestParameter:()=>Gre,hasScopeMarker:()=>Db,hasStaticModifier:()=>zh,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>FZe,hasTSFileExtension:()=>w3,hasTabstop:()=>BLe,hasTrailingDirectorySeparator:()=>Jp,hasType:()=>If,hasTypeArguments:()=>bqe,hasZeroOrOneAsteriskCharacter:()=>Cbe,hostGetCanonicalFileName:()=>JD,hostUsesCaseSensitiveFileNames:()=>y3,idText:()=>Vo,identifierIsThisKeyword:()=>Xye,identifierToKeywordKind:()=>iv,identity:()=>Fl,identitySourceMapConsumer:()=>Get,ignoreSourceNewlines:()=>$be,ignoredPaths:()=>Qp,importFromModuleSpecifier:()=>v7,importSyntaxAffectsModuleResolution:()=>Ibe,indexOfAnyCharCode:()=>et,indexOfNode:()=>fP,indicesOf:()=>po,inferredTypesContainingFile:()=>Fde,injectClassNamedEvaluationHelperBlockIfMissing:()=>J9e,injectClassThisAssignmentIfMissing:()=>FOt,insertImports:()=>Mrt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>FL,insertStatementAfterStandardPrologue:()=>yge,insertStatementsAfterCustomPrologue:()=>Wre,insertStatementsAfterStandardPrologue:()=>Sw,intersperse:()=>fe,intrinsicTagNameToString:()=>Vbe,introducesArgumentsExoticObject:()=>tZe,inverseJsxOptionMap:()=>mEe,isAbstractConstructorSymbol:()=>lbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>_p,isAccessibilityModifier:()=>Nrt,isAccessor:()=>yB,isAccessorModifier:()=>It,isAliasableExpression:()=>$ge,isAmbientModule:()=>s_,isAmbientPropertyDeclaration:()=>VJ,isAnyDirectorySeparator:()=>e0,isAnyImportOrBareOrAccessedRequire:()=>Rge,isAnyImportOrReExport:()=>DY,isAnyImportOrRequireStatement:()=>d7,isAnyImportSyntax:()=>IP,isAnySupportedFileExtension:()=>Jqe,isApplicableVersionedTypesKey:()=>REe,isArgumentExpressionOfElementAccess:()=>Crt,isArray:()=>Ki,isArrayBindingElement:()=>o3,isArrayBindingOrAssignmentElement:()=>EJ,isArrayBindingOrAssignmentPattern:()=>Bre,isArrayBindingPattern:()=>p2,isArrayLiteralExpression:()=>OI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>e9,isArrayTypeNode:()=>kF,isArrowFunction:()=>lA,isAsExpression:()=>Yd,isAssertClause:()=>xPt,isAssertEntry:()=>$qr,isAssertionExpression:()=>Ed,isAssertsKeyword:()=>J,isAssignmentDeclaration:()=>b7,isAssignmentExpression:()=>Jm,isAssignmentOperator:()=>UD,isAssignmentPattern:()=>CY,isAssignmentTarget:()=>bF,isAsteriskToken:()=>gie,isAsyncFunction:()=>D7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>t0,isAwaitExpression:()=>I1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>eQ,isBinaryExpression:()=>fo,isBinaryLogicalOperator:()=>Rne,isBinaryOperatorToken:()=>aWt,isBindableObjectDefinePropertyCall:()=>f3,isBindableStaticAccessExpression:()=>yP,isBindableStaticElementAccessExpression:()=>Kge,isBindableStaticNameExpression:()=>I3,isBindingElement:()=>hg,isBindingElementOfBareOrAccessedRequire:()=>lZe,isBindingName:()=>RL,isBindingOrAssignmentElement:()=>_J,isBindingOrAssignmentPattern:()=>yJ,isBindingPattern:()=>Nu,isBlock:()=>$u,isBlockLike:()=>Pz,isBlockOrCatchScoped:()=>ZJ,isBlockScope:()=>PJ,isBlockScopedContainerTopLevel:()=>Tge,isBooleanLiteral:()=>hY,isBreakOrContinueStatement:()=>AY,isBreakStatement:()=>jqr,isBuildCommand:()=>h5t,isBuildInfoFile:()=>l3t,isBuilderProgram:()=>ktt,isBundle:()=>LPt,isCallChain:()=>_B,isCallExpression:()=>Zl,isCallExpressionTarget:()=>drt,isCallLikeExpression:()=>hF,isCallLikeOrFunctionLikeExpression:()=>Tre,isCallOrNewExpression:()=>av,isCallOrNewExpressionTarget:()=>prt,isCallSignatureDeclaration:()=>wg,isCallToHelper:()=>qD,isCaseBlock:()=>ade,isCaseClause:()=>fie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>RJ,isCatchClause:()=>iQ,isCatchClauseVariableDeclaration:()=>vLe,isCatchClauseVariableDeclarationOrBindingElement:()=>Yre,isCheckJsEnabledForFile:()=>rz,isCircularBuildOrder:()=>Fz,isClassDeclaration:()=>pm,isClassElement:()=>PI,isClassExpression:()=>vd,isClassInstanceProperty:()=>vre,isClassLike:()=>xa,isClassMemberModifier:()=>Sre,isClassNamedEvaluationHelperBlock:()=>kz,isClassOrTypeElement:()=>mY,isClassStaticBlockDeclaration:()=>fl,isClassThisAssignmentBlock:()=>Tde,isColonToken:()=>nEe,isCommaExpression:()=>lEe,isCommaListExpression:()=>sde,isCommaSequence:()=>Ade,isCommaToken:()=>rEe,isComment:()=>YVe,isCommonJsExportPropertyAssignment:()=>Lge,isCommonJsExportedExpression:()=>fye,isCompoundAssignment:()=>vde,isComputedNonLiteralName:()=>kY,isComputedPropertyName:()=>Un,isConciseBody:()=>r7,isConditionalExpression:()=>Lw,isConditionalTypeNode:()=>d2,isConstAssertion:()=>Pbe,isConstTypeReference:()=>s2,isConstructSignatureDeclaration:()=>em,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>$D,isContextualKeyword:()=>tAe,isContinueStatement:()=>Kqr,isCustomPrologue:()=>jre,isDebuggerStatement:()=>zqr,isDeclaration:()=>jh,isDeclarationBindingElement:()=>uP,isDeclarationFileName:()=>PC,isDeclarationName:()=>HT,isDeclarationNameOfEnumOrNamespace:()=>abe,isDeclarationReadonly:()=>hf,isDeclarationStatement:()=>uge,isDeclarationWithTypeParameterChildren:()=>Kre,isDeclarationWithTypeParameters:()=>Ure,isDecorator:()=>So,isDecoratorTarget:()=>H5t,isDefaultClause:()=>cde,isDefaultImport:()=>h3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>uZe,isDeleteExpression:()=>GF,isDeleteTarget:()=>Tye,isDeprecatedDeclaration:()=>lPe,isDestructuringAssignment:()=>Dx,isDiskPathRoot:()=>cE,isDoStatement:()=>Uqr,isDocumentRegistryEntry:()=>v1e,isDotDotDotToken:()=>nde,isDottedName:()=>Dne,isDynamicName:()=>rAe,isEffectiveExternalModule:()=>g3,isEffectiveStrictModeSourceFile:()=>Jre,isElementAccessChain:()=>IF,isElementAccessExpression:()=>Yg,isEmittedFileOfProgram:()=>I3t,isEmptyArrayLiteral:()=>HZe,isEmptyBindingElement:()=>wr,isEmptyBindingPattern:()=>Ct,isEmptyObjectLiteral:()=>rbe,isEmptyStatement:()=>u$e,isEmptyStringLiteral:()=>mye,isEntityName:()=>fC,isEntityNameExpression:()=>Od,isEnumConst:()=>VA,isEnumDeclaration:()=>V3,isEnumMember:()=>LF,isEqualityOperatorKind:()=>rPe,isEqualsGreaterThanToken:()=>ULe,isExclamationToken:()=>Cz,isExcludedFile:()=>ZWt,isExclusivelyTypeOnlyImportOrExport:()=>utt,isExpandoPropertyDeclaration:()=>jY,isExportAssignment:()=>Cf,isExportDeclaration:()=>Gh,isExportModifier:()=>y,isExportName:()=>i9e,isExportNamespaceAsDefaultDeclaration:()=>wY,isExportOrDefaultModifier:()=>dEe,isExportSpecifier:()=>R0,isExportsIdentifier:()=>p3,isExportsOrModuleExportsOrAlias:()=>cQ,isExpression:()=>un,isExpressionNode:()=>MT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>X5t,isExpressionOfOptionalChainRoot:()=>gY,isExpressionStatement:()=>VC,isExpressionWithTypeArguments:()=>l_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>dAe,isExternalModule:()=>xm,isExternalModuleAugmentation:()=>_F,isExternalModuleImportEqualsDeclaration:()=>LL,isExternalModuleIndicator:()=>PT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>ZF,isExternalModuleSymbol:()=>WD,isExternalOrCommonJsModule:()=>vl,isFileLevelReservedGeneratedIdentifier:()=>fY,isFileLevelUniqueName:()=>u7,isFileProbablyExternalModule:()=>IEe,isFirstDeclarationOfSymbolParameter:()=>Urt,isFixablePromiseHandler:()=>vnt,isForInOrOfStatement:()=>DL,isForInStatement:()=>KLe,isForInitializer:()=>hE,isForOfStatement:()=>iEe,isForStatement:()=>L3,isFullSourceFile:()=>aN,isFunctionBlock:()=>mP,isFunctionBody:()=>n7,isFunctionDeclaration:()=>ih,isFunctionExpression:()=>UA,isFunctionExpressionOrArrowFunction:()=>RF,isFunctionLike:()=>bu,isFunctionLikeDeclaration:()=>kd,isFunctionLikeKind:()=>lP,isFunctionLikeOrClassStaticBlockDeclaration:()=>s3,isFunctionOrConstructorTypeNode:()=>oge,isFunctionOrModuleBlock:()=>CJ,isFunctionSymbol:()=>AZe,isFunctionTypeNode:()=>x_,isGeneratedIdentifier:()=>kp,isGeneratedPrivateIdentifier:()=>TL,isGetAccessor:()=>bB,isGetAccessorDeclaration:()=>Bg,isGetOrSetAccessorDeclaration:()=>fJ,isGlobalScopeAugmentation:()=>vB,isGlobalSourceFile:()=>fc,isGrammarError:()=>_ge,isHeritageClause:()=>h1,isHoistedFunction:()=>xge,isHoistedVariableStatement:()=>Gge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>kye,isIdentifierName:()=>_Ze,isIdentifierOrThisTypeNode:()=>nWt,isIdentifierPart:()=>s1,isIdentifierStart:()=>bd,isIdentifierText:()=>Uh,isIdentifierTypePredicate:()=>rZe,isIdentifierTypeReference:()=>_Le,isIfStatement:()=>Z3,isIgnoredFileFromWildCardWatching:()=>YEe,isImplicitGlob:()=>bbe,isImportAttribute:()=>GPt,isImportAttributeName:()=>e7,isImportAttributes:()=>CU,isImportCall:()=>Up,isImportClause:()=>Vw,isImportDeclaration:()=>Mf,isImportEqualsDeclaration:()=>km,isImportKeyword:()=>an,isImportMeta:()=>uv,isImportOrExportSpecifier:()=>eS,isImportOrExportSpecifierName:()=>hMt,isImportSpecifier:()=>uy,isImportTypeAssertionContainer:()=>qqr,isImportTypeNode:()=>Um,isImportable:()=>dnt,isInComment:()=>$L,isInCompoundLikeAssignment:()=>qge,isInExpressionContext:()=>rne,isInJSDoc:()=>GY,isInJSFile:()=>wo,isInJSXText:()=>$5t,isInJsonFile:()=>Xge,isInNonReferenceComment:()=>sMt,isInReferenceComment:()=>iMt,isInRightSideOfInternalImportEqualsDeclaration:()=>kVe,isInString:()=>Zz,isInTemplateString:()=>Brt,isInTopLevelContext:()=>Mge,isInTypeQuery:()=>OY,isIncrementalBuildInfo:()=>jEe,isIncrementalBundleEmitBuildInfo:()=>L3t,isIncrementalCompilation:()=>DP,isIndexSignatureDeclaration:()=>w0,isIndexedAccessTypeNode:()=>Iv,isInferTypeNode:()=>jT,isInfinityOrNaNString:()=>oz,isInitializedProperty:()=>GEe,isInitializedVariable:()=>xne,isInsideJsxElement:()=>MVe,isInsideJsxElementOrAttribute:()=>q5t,isInsideNodeModules:()=>_1e,isInsideTemplateLiteral:()=>u1e,isInstanceOfExpression:()=>pAe,isInstantiatedModule:()=>wet,isInterfaceDeclaration:()=>g_,isInternalDeclaration:()=>Fre,isInternalModuleImportEqualsDeclaration:()=>d3,isInternalName:()=>B$e,isIntersectionTypeNode:()=>mf,isIntrinsicJsxName:()=>eU,isIterationStatement:()=>VT,isJSDoc:()=>tR,isJSDocAllType:()=>WPt,isJSDocAugmentsTag:()=>bz,isJSDocAuthorTag:()=>n$r,isJSDocCallbackTag:()=>p$e,isJSDocClassTag:()=>MPt,isJSDocCommentContainingNode:()=>i7,isJSDocConstructSignature:()=>PY,isJSDocDeprecatedTag:()=>C$e,isJSDocEnumTag:()=>oEe,isJSDocFunctionType:()=>hie,isJSDocImplementsTag:()=>t9e,isJSDocImportTag:()=>SN,isJSDocIndexSignature:()=>Uge,isJSDocLikeText:()=>F$e,isJSDocLink:()=>VPt,isJSDocLinkCode:()=>PPt,isJSDocLinkLike:()=>Tx,isJSDocLinkPlain:()=>t$r,isJSDocMemberName:()=>O3,isJSDocNameReference:()=>lde,isJSDocNamepathType:()=>r$r,isJSDocNamespaceBody:()=>oye,isJSDocNode:()=>l3,isJSDocNonNullableType:()=>zLe,isJSDocNullableType:()=>Iie,isJSDocOptionalParameter:()=>HAe,isJSDocOptionalType:()=>d$e,isJSDocOverloadTag:()=>mie,isJSDocOverrideTag:()=>$Le,isJSDocParameterTag:()=>cS,isJSDocPrivateTag:()=>I$e,isJSDocPropertyLikeTag:()=>dY,isJSDocPropertyTag:()=>HPt,isJSDocProtectedTag:()=>h$e,isJSDocPublicTag:()=>f$e,isJSDocReadonlyTag:()=>m$e,isJSDocReturnTag:()=>e9e,isJSDocSatisfiesExpression:()=>Zbe,isJSDocSatisfiesTag:()=>r9e,isJSDocSeeTag:()=>i$r,isJSDocSignature:()=>qL,isJSDocTag:()=>u3,isJSDocTemplateTag:()=>ZB,isJSDocThisTag:()=>_$e,isJSDocThrowsTag:()=>o$r,isJSDocTypeAlias:()=>iS,isJSDocTypeAssertion:()=>sQ,isJSDocTypeExpression:()=>W3,isJSDocTypeLiteral:()=>yU,isJSDocTypeTag:()=>ude,isJSDocTypedefTag:()=>bU,isJSDocUnknownTag:()=>s$r,isJSDocUnknownType:()=>OPt,isJSDocVariadicType:()=>qLe,isJSXTagName:()=>YJ,isJsonEqual:()=>WAe,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>EN,isJsxAttributeLike:()=>wJ,isJsxAttributeName:()=>wLe,isJsxAttributes:()=>nQ,isJsxCallLike:()=>c3,isJsxChild:()=>BJ,isJsxClosingElement:()=>rQ,isJsxClosingFragment:()=>ZPt,isJsxElement:()=>bN,isJsxExpression:()=>pie,isJsxFragment:()=>P3,isJsxNamespacedName:()=>eR,isJsxOpeningElement:()=>$T,isJsxOpeningFragment:()=>Pw,isJsxOpeningLikeElement:()=>eI,isJsxOpeningLikeElementTagName:()=>Y5t,isJsxSelfClosingElement:()=>_U,isJsxSpreadAttribute:()=>yz,isJsxTagNameExpression:()=>kL,isJsxText:()=>KL,isJumpStatementTarget:()=>o1e,isKeyword:()=>v0,isKeywordOrPunctuation:()=>eAe,isKnownSymbol:()=>k7,isLabelName:()=>hrt,isLabelOfLabeledStatement:()=>Irt,isLabeledStatement:()=>FP,isLateVisibilityPaintedStatement:()=>p7,isLeftHandSideExpression:()=>D_,isLet:()=>rS,isLineBreak:()=>Cl,isLiteralComputedPropertyDeclarationName:()=>fne,isLiteralExpression:()=>wL,isLiteralExpressionOfObject:()=>bre,isLiteralImportTypeNode:()=>ky,isLiteralKind:()=>pY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>FVe,isLiteralTypeLiteral:()=>age,isLiteralTypeNode:()=>EE,isLocalName:()=>VF,isLogicalOperator:()=>WZe,isLogicalOrCoalescingAssignmentExpression:()=>gAe,isLogicalOrCoalescingAssignmentOperator:()=>V7,isLogicalOrCoalescingBinaryExpression:()=>Nne,isLogicalOrCoalescingBinaryOperator:()=>AAe,isMappedTypeNode:()=>GB,isMemberName:()=>_w,isMetaProperty:()=>Du,isMethodDeclaration:()=>uu,isMethodOrAccessor:()=>NL,isMethodSignature:()=>hl,isMinusToken:()=>ide,isMissingDeclaration:()=>e$r,isMissingPackageJsonInfo:()=>JWt,isModifier:()=>Ig,isModifierKind:()=>VD,isModifierLike:()=>dp,isModuleAugmentationExternal:()=>Xre,isModuleBlock:()=>_N,isModuleBody:()=>cge,isModuleDeclaration:()=>xh,isModuleExportName:()=>jLe,isModuleExportsAccessExpression:()=>cN,isModuleIdentifier:()=>_P,isModuleName:()=>oWt,isModuleOrEnumDeclaration:()=>a3,isModuleReference:()=>yY,isModuleSpecifierLike:()=>jVe,isModuleWithStringLiteralName:()=>RY,isNameOfFunctionDeclaration:()=>yrt,isNameOfModuleDeclaration:()=>_rt,isNamedDeclaration:()=>rh,isNamedEvaluation:()=>kb,isNamedEvaluationSource:()=>xye,isNamedExportBindings:()=>yre,isNamedExports:()=>mv,isNamedImportBindings:()=>wx,isNamedImports:()=>yN,isNamedImportsOrExports:()=>Gne,isNamedTupleMember:()=>KT,isNamespaceBody:()=>Nre,isNamespaceExport:()=>tk,isNamespaceExportDeclaration:()=>sEe,isNamespaceImport:()=>Zx,isNamespaceReexportDeclaration:()=>cZe,isNewExpression:()=>f2,isNewExpressionTarget:()=>Ode,isNewScopeNode:()=>eie,isNoSubstitutionTemplateLiteral:()=>GP,isNodeArray:()=>tN,isNodeArrayMultiLine:()=>hAe,isNodeDescendantOf:()=>EP,isNodeKind:()=>z6,isNodeLikeSystem:()=>Mm,isNodeModulesDirectory:()=>Vd,isNodeWithPossibleHoistedDeclaration:()=>CZe,isNonContextualKeyword:()=>Dye,isNonGlobalAmbientModule:()=>Qre,isNonNullAccess:()=>YAe,isNonNullChain:()=>hJ,isNonNullExpression:()=>hv,isNonStaticMethodOrAccessorWithPrivateName:()=>TOt,isNotEmittedStatement:()=>FPt,isNullishCoalesce:()=>IJ,isNumber:()=>ws,isNumericLiteral:()=>mC,isNumericLiteralName:()=>IN,isObjectBindingElementWithoutPropertyName:()=>p1e,isObjectBindingOrAssignmentElement:()=>gP,isObjectBindingOrAssignmentPattern:()=>bJ,isObjectBindingPattern:()=>Km,isObjectLiteralElement:()=>bY,isObjectLiteralElementLike:()=>yw,isObjectLiteralExpression:()=>og,isObjectLiteralMethod:()=>a2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Vge,isObjectTypeDeclaration:()=>YY,isOmittedExpression:()=>yp,isOptionalChain:()=>GC,isOptionalChainRoot:()=>aP,isOptionalDeclaration:()=>RB,isOptionalJSDocPropertyLikeTag:()=>jne,isOptionalTypeNode:()=>jL,isOuterExpression:()=>s9e,isOutermostOptionalChain:()=>i3,isOverrideModifier:()=>bt,isPackageJsonInfo:()=>N9e,isPackedArrayLiteral:()=>Gbe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>Ve,isParameterPropertyModifier:()=>IY,isParenthesizedExpression:()=>gI,isParenthesizedTypeNode:()=>fv,isParseTreeNode:()=>SL,isPartOfParameterDeclaration:()=>HL,isPartOfTypeNode:()=>ww,isPartOfTypeOnlyImportOrExportDeclaration:()=>sge,isPartOfTypeQuery:()=>Qge,isPartiallyEmittedExpression:()=>ly,isPatternMatch:()=>jd,isPinnedComment:()=>g7,isPlainJsFile:()=>SY,isPlusToken:()=>mz,isPossiblyTypeArgumentPosition:()=>l1e,isPostfixUnaryExpression:()=>ek,isPrefixUnaryExpression:()=>T0,isPrimitiveLiteralValue:()=>uz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>pC,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>EZe,isProgramUptoDate:()=>ptt,isPrologueDirective:()=>nS,isPropertyAccessChain:()=>vx,isPropertyAccessEntityNameExpression:()=>BF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>SJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>wre,isPropertyAssignment:()=>fm,isPropertyDeclaration:()=>pi,isPropertyName:()=>VI,isPropertyNameLiteral:()=>Tw,isPropertySignature:()=>ss,isPrototypeAccess:()=>wF,isPrototypePropertyAssignment:()=>lne,isPunctuation:()=>Nye,isPushOrUnshiftIdentifier:()=>Gye,isQualifiedName:()=>zi,isQuestionDotToken:()=>Aie,isQuestionOrExclamationToken:()=>rWt,isQuestionOrPlusOrMinusToken:()=>sWt,isQuestionToken:()=>UT,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>iWt,isRecognizedTripleSlashComment:()=>Ore,isReferenceFileLocation:()=>Fie,isReferencedFile:()=>K3,isRegularExpressionLiteral:()=>tEe,isRequireCall:()=>ay,isRequireVariableStatement:()=>nne,isRestParameter:()=>EB,isRestTypeNode:()=>zL,isReturnStatement:()=>I2,isReturnStatementWithFixablePromiseHandler:()=>hPe,isRightSideOfAccessExpression:()=>tbe,isRightSideOfInstanceofExpression:()=>MZe,isRightSideOfPropertyAccess:()=>Wie,isRightSideOfQualifiedName:()=>Q5t,isRightSideOfQualifiedNameOrPropertyAccess:()=>P7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>OZe,isRootedDiskPath:()=>Xp,isSameEntityName:()=>QJ,isSatisfiesExpression:()=>Qg,isSemicolonClassElement:()=>DPt,isSetAccessor:()=>cv,isSetAccessorDeclaration:()=>Dg,isShiftOperatorOrHigher:()=>k$e,isShorthandAmbientModuleSymbol:()=>NY,isShorthandPropertyAssignment:()=>a0,isSideEffectImport:()=>Wbe,isSignedNumericLiteral:()=>Cne,isSimpleCopiableExpression:()=>lQ,isSimpleInlineableExpression:()=>BN,isSimpleParameterList:()=>FEe,isSingleOrDoubleQuote:()=>ine,isSolutionConfig:()=>tet,isSourceElement:()=>RLe,isSourceFile:()=>ll,isSourceFileFromLibrary:()=>zie,isSourceFileJS:()=>n0,isSourceFileNotJson:()=>Jge,isSourceMapping:()=>vOt,isSpecialPropertyDeclaration:()=>Eye,isSpreadAssignment:()=>Lx,isSpreadElement:()=>of,isStatement:()=>Lc,isStatementButNotDeclaration:()=>vJ,isStatementOrBlock:()=>kre,isStatementWithLocals:()=>mge,isStatic:()=>cg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>WY,isStringAndEmptyAnonymousObjectIntersection:()=>nMt,isStringDoubleQuoted:()=>sne,isStringLiteral:()=>Zg,isStringLiteralLike:()=>mA,isStringLiteralOrJsxExpression:()=>TJ,isStringLiteralOrTemplate:()=>yMt,isStringOrNumericLiteralLike:()=>d1,isStringOrRegularExpressionOrTemplateLiteral:()=>Rrt,isStringTextContainingNode:()=>Ere,isSuperCall:()=>Dy,isSuperKeyword:()=>rr,isSuperProperty:()=>xy,isSupportedSourceFileName:()=>Bbe,isSwitchStatement:()=>ode,isSyntaxList:()=>Cie,isSyntheticExpression:()=>F3,isSyntheticReference:()=>_z,isTagName:()=>mrt,isTaggedTemplateExpression:()=>MI,isTaggedTemplateTag:()=>M5t,isTemplateExpression:()=>FF,isTemplateHead:()=>tQ,isTemplateLiteral:()=>AP,isTemplateLiteralKind:()=>LD,isTemplateLiteralToken:()=>ige,isTemplateLiteralTypeNode:()=>zT,isTemplateLiteralTypeSpan:()=>mN,isTemplateMiddle:()=>uie,isTemplateMiddleOrTemplateTail:()=>$6,isTemplateSpan:()=>die,isTemplateTail:()=>rde,isTextWhiteSpaceLike:()=>lMt,isThis:()=>Oie,isThisContainerOrFunctionBlock:()=>sZe,isThisIdentifier:()=>vF,isThisInTypeQuery:()=>YL,isThisInitializedDeclaration:()=>Hge,isThisInitializedObjectBindingExpression:()=>aZe,isThisProperty:()=>$re,isThisTypeNode:()=>Fx,isThisTypeParameter:()=>az,isThisTypePredicate:()=>nZe,isThrowStatement:()=>A$e,isToken:()=>BL,isTokenKind:()=>q6,isTraceEnabled:()=>VP,isTransientSymbol:()=>bw,isTrivia:()=>zJ,isTryStatement:()=>mU,isTupleTypeNode:()=>Zw,isTypeAlias:()=>gne,isTypeAliasDeclaration:()=>FB,isTypeAssertionExpression:()=>xF,isTypeDeclaration:()=>KY,isTypeElement:()=>Bx,isTypeKeyword:()=>Qde,isTypeKeywordTokenOrIdentifier:()=>JVe,isTypeLiteralNode:()=>mh,isTypeNode:()=>uc,isTypeNodeKind:()=>bAe,isTypeOfExpression:()=>CN,isTypeOnlyExportDeclaration:()=>mJ,isTypeOnlyImportDeclaration:()=>rN,isTypeOnlyImportOrExportDeclaration:()=>nN,isTypeOperatorNode:()=>xB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>bE,isTypeQueryNode:()=>Fw,isTypeReferenceNode:()=>nh,isTypeReferenceType:()=>s7,isTypeUsableAsPropertyName:()=>g2,isUMDExportSymbol:()=>yAe,isUnaryExpression:()=>Rre,isUnaryExpressionWithWrite:()=>iN,isUnicodeIdentifierStart:()=>ft,isUnionTypeNode:()=>aS,isUrl:()=>n_,isValidBigIntString:()=>Jne,isValidESSymbolDeclaration:()=>eZe,isValidTypeOnlyAliasUseSite:()=>JL,isValueSignatureDeclaration:()=>C3,isVarAwaitUsing:()=>Sd,isVarConst:()=>rI,isVarConstLike:()=>OT,isVarUsing:()=>tI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>h7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>CP,isVariableDeclarationInitializedToRequire:()=>y7,isVariableDeclarationList:()=>u_,isVariableLike:()=>I7,isVariableStatement:()=>Ch,isVoidExpression:()=>qT,isWatchSet:()=>cbe,isWhileStatement:()=>g$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>Iu,isWithStatement:()=>kPt,isWriteAccess:()=>B3,isWriteOnlyAccess:()=>CAe,isYieldExpression:()=>Hd,jsxModeNeedsExplicitImport:()=>unt,keywordPart:()=>y1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>W$e,libs:()=>A9e,lineBreakPart:()=>Jie,loadModuleFromGlobalCache:()=>aOt,loadWithModeAwareCache:()=>XEe,makeIdentifierFromModuleName:()=>vw,makeImport:()=>QP,makeStringLiteral:()=>Xde,mangleScopedPackageName:()=>Nie,map:()=>At,mapAllOrFail:()=>qt,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Yt,mapOneOrMany:()=>ont,mapToDisplayParts:()=>XP,matchFiles:()=>Sbe,matchPatternOrExact:()=>Tbe,matchedText:()=>pw,matchesExclude:()=>v9e,matchesExcludeWorker:()=>B9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>qZe,memoize:()=>FA,memoizeOne:()=>ZA,min:()=>oa,minAndMax:()=>hLe,missingFileModifiedTime:()=>Rh,modifierToFlag:()=>HY,modifiersToFlags:()=>Dw,moduleExportNameIsDefault:()=>lv,moduleExportNameTextEscaped:()=>CF,moduleExportNameTextUnescaped:()=>HD,moduleOptionDeclaration:()=>mWt,moduleResolutionIsEqualTo:()=>Ige,moduleResolutionNameAndModeGetter:()=>tVe,moduleResolutionOptionDeclarations:()=>M$e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>lU,moduleResolutionUsesNodeModules:()=>UVe,moduleSpecifierToValidIdentifier:()=>b1e,moduleSpecifiers:()=>WF,moduleSupportsImportAttributes:()=>iLe,moduleSymbolToValidIdentifier:()=>y1e,moveEmitHelpers:()=>VLe,moveRangeEnd:()=>IAe,moveRangePastDecorators:()=>jD,moveRangePastModifiers:()=>Av,moveRangePos:()=>KD,moveSyntheticComments:()=>FLe,mutateMap:()=>Q7,mutateMapSkippingNewValues:()=>gN,needsParentheses:()=>ePe,needsScopeMarker:()=>t7,newCaseClauseTracker:()=>APe,newPrivateEnvironment:()=>NOt,noEmitNotification:()=>PEe,noEmitSubstitution:()=>Nde,noTransformers:()=>a3t,noTruncationMaximumTruncationLength:()=>Lre,nodeCanBeDecorated:()=>OJ,nodeCoreModules:()=>dU,nodeHasName:()=>t3,nodeIsDecorated:()=>MJ,nodeIsMissing:()=>sf,nodeIsPresent:()=>u1,nodeIsSynthesized:()=>sp,nodeModuleNameResolver:()=>qWt,nodeModulesPathPart:()=>Vx,nodeNextJsonConfigResolver:()=>$Wt,nodeOrChildIsDecorated:()=>tne,nodeOverlapsWithStartEnd:()=>ZVe,nodePosToString:()=>Cge,nodeSeenTracker:()=>Yie,nodeStartsNewLexicalEnvironment:()=>Fye,noop:()=>Dc,noopFileWatcher:()=>Vie,normalizePath:()=>iu,normalizeSlashes:()=>Dp,normalizeSpans:()=>EI,not:()=>uC,notImplemented:()=>il,notImplementedResolver:()=>A3t,nullNodeConverters:()=>Qbe,nullParenthesizerRules:()=>Ybe,nullTransformationContext:()=>OEe,objectAllocator:()=>ZC,operatorPart:()=>Ude,optionDeclarations:()=>Ww,optionMapToObject:()=>C9e,optionsAffectingProgramStructure:()=>bWt,optionsForBuild:()=>Y$e,optionsForWatch:()=>wz,optionsHaveChanges:()=>S0,or:()=>Hp,orderedRemoveItem:()=>Ql,orderedRemoveItemAt:()=>LA,packageIdToPackageName:()=>xJ,packageIdToString:()=>oN,parameterIsThisKeyword:()=>SF,parameterNamePart:()=>gMt,parseBaseNodeFactory:()=>AWt,parseBigInt:()=>CLe,parseBuildCommand:()=>NWt,parseCommandLine:()=>TWt,parseCommandLineWorker:()=>Q$e,parseConfigFileTextToJson:()=>J$e,parseConfigFileWithSystem:()=>z3t,parseConfigHostFromCompilerHostLike:()=>aVe,parseCustomTypeOption:()=>I9e,parseIsolatedEntityName:()=>Bz,parseIsolatedJSDocComment:()=>pWt,parseJSDocTypeExpressionForTests:()=>N$r,parseJsonConfigFileContent:()=>oen,parseJsonSourceFileConfigFileContent:()=>EEe,parseJsonText:()=>hEe,parseListTypeOption:()=>BWt,parseNodeFactory:()=>H3,parseNodeModuleFromPath:()=>wEe,parsePackageName:()=>TEe,parsePseudoBigInt:()=>nz,parseValidBigInt:()=>kbe,pasteEdits:()=>lst,patchWriteFileEnsuringDirectory:()=>e2,pathContainsNodeModules:()=>WP,pathIsAbsolute:()=>lE,pathIsBareSpecifier:()=>Xh,pathIsRelative:()=>Ip,patternText:()=>j1,performIncrementalCompilation:()=>q3t,performance:()=>hb,positionBelongsToNode:()=>brt,positionIsASICandidate:()=>nPe,positionIsSynthesized:()=>wB,positionsAreOnSameLine:()=>yE,preProcessFile:()=>hin,probablyUsesSemicolons:()=>C1e,processCommentPragmas:()=>V$e,processPragmasIntoFields:()=>P$e,processTaggedTemplateExpression:()=>Met,programContainsEsModules:()=>aMt,programContainsModules:()=>oMt,projectReferenceIsEqualTo:()=>Vre,propertyNamePart:()=>AMt,pseudoBigIntToString:()=>kP,punctuationPart:()=>k0,pushIfUnique:()=>Qi,quote:()=>zde,quotePreferenceFromString:()=>Prt,rangeContainsPosition:()=>Mie,rangeContainsPositionExclusive:()=>a1e,rangeContainsRange:()=>cy,rangeContainsRangeExclusive:()=>J5t,rangeContainsStartEnd:()=>c1e,rangeEndIsOnSameLineAsRangeStart:()=>kne,rangeEndPositionsAreOnSameLine:()=>QZe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>S3,rangeOfNode:()=>Nbe,rangeOfTypeParameters:()=>Dbe,rangeOverlapsWithStartEnd:()=>Mde,rangeStartIsOnSameLineAsRangeEnd:()=>XZe,rangeStartPositionsAreOnSameLine:()=>M7,readBuilderProgram:()=>mVe,readConfigFile:()=>yEe,readJson:()=>E3,readJsonConfigFile:()=>DWt,readJsonOrUndefined:()=>sbe,reduceEachLeadingCommentRange:()=>EL,reduceEachTrailingCommentRange:()=>ff,reduceLeft:()=>Ul,reduceLeftIterator:()=>ne,reducePathComponents:()=>t2,refactor:()=>Oz,regExpEscape:()=>Mqe,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Wr,removeAllComments:()=>pz,removeEmitHelper:()=>n$e,removeExtension:()=>Xne,removeFileExtension:()=>s0,removeIgnoredPath:()=>gVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Nm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>ny,repeatString:()=>A1e,replaceElement:()=>Yl,replaceFirstStar:()=>R3,resolutionExtensionIsTSOrJson:()=>ez,resolveConfigFileProjectName:()=>Xtt,resolveJSModule:()=>KWt,resolveLibrary:()=>k9e,resolveModuleName:()=>BU,resolveModuleNameFromCache:()=>Ven,resolvePackageNameToPackageJson:()=>set,resolvePath:()=>AE,resolveProjectReferencePath:()=>xz,resolveTripleslashReference:()=>stt,resolveTypeReferenceDirective:()=>QWt,resolvingEmptyArray:()=>Zre,returnFalse:()=>As,returnNoopFileWatcher:()=>Vde,returnTrue:()=>Tf,returnUndefined:()=>cm,returnsPromise:()=>Snt,rewriteModuleSpecifier:()=>Nz,sameFlatMap:()=>Zr,sameMap:()=>Tr,sameMapping:()=>Ttn,scanTokenAtPosition:()=>qs,scanner:()=>A_,semanticDiagnosticsOptionDeclarations:()=>CWt,serializeCompilerOptions:()=>q$e,server:()=>wpn,servicesVersion:()=>oon,setCommentRange:()=>hh,setConfigFileInOptions:()=>$$e,setConstantValue:()=>LLe,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>hVe,setIdentifierAutoGenerate:()=>oie,setIdentifierGeneratedImportReference:()=>OLe,setIdentifierTypeArguments:()=>xx,setInternalEmitFlags:()=>sie,setLocalizedDiagnosticMessages:()=>cU,setNodeChildren:()=>YPt,setNodeFlags:()=>bLe,setObjectAllocator:()=>zZe,setOriginalNode:()=>ua,setParent:()=>XA,setParentRecursive:()=>UL,setPrivateIdentifier:()=>wU,setSnippetElement:()=>qbe,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>xT,setStartsOnNewLine:()=>Md,setSyntheticLeadingComments:()=>kB,setSyntheticTrailingComments:()=>x3,setSys:()=>bI,setSysLog:()=>xC,setTextRange:()=>gn,setTextRangeEnd:()=>AU,setTextRangePos:()=>iz,setTextRangePosEnd:()=>TB,setTextRangePosWidth:()=>xbe,setTokenSourceMapRange:()=>Kbe,setTypeNode:()=>PLe,setUILocale:()=>Zs,setValueDeclaration:()=>S7,shouldAllowImportingTsExtension:()=>Die,shouldPreserveConstEnums:()=>Fb,shouldRewriteModuleSpecifier:()=>une,shouldUseUriStyleNodeCoreModules:()=>uPe,showModuleSpecifier:()=>KZe,signatureHasRestParameter:()=>D0,signatureToDisplayParts:()=>jrt,single:()=>Xa,singleElementArray:()=>J_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ps,skipAlias:()=>FC,skipConstraint:()=>Zrt,skipOuterExpressions:()=>HI,skipParentheses:()=>QA,skipPartiallyEmittedExpressions:()=>o2,skipTrivia:()=>Yu,skipTypeChecking:()=>T3,skipTypeCheckingIgnoringNoCheck:()=>mLe,skipTypeParentheses:()=>w7,skipWhile:()=>cp,sliceAfter:()=>Rbe,some:()=>jt,sortAndDeduplicate:()=>cl,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>H$e,sourceFileMayBeEmitted:()=>SP,sourceMapCommentRegExp:()=>Net,sourceMapCommentRegExpDontCareLineStart:()=>bOt,spacePart:()=>BI,spanMap:()=>_n,startEndContainsRange:()=>mAe,startEndOverlapsWithStartEnd:()=>LVe,startOnNewLine:()=>N0,startTracing:()=>fd,startsWith:()=>Ac,startsWithDirectory:()=>$S,startsWithUnderscore:()=>lnt,startsWithUseStrict:()=>zPt,stringContainsAt:()=>TMt,stringToToken:()=>Ta,stripQuotes:()=>l2,supportedDeclarationExtensions:()=>LAe,supportedJSExtensionsFlat:()=>uU,supportedLocaleDirectories:()=>nv,supportedTSExtensionsFlat:()=>vbe,supportedTSImplementationExtensions:()=>Yne,suppressLeadingAndTrailingTrivia:()=>Vy,suppressLeadingTrivia:()=>Hbe,suppressTrailingTrivia:()=>kLe,symbolEscapedNameNoDefault:()=>KVe,symbolName:()=>nf,symbolNameNoDefault:()=>Ort,symbolToDisplayParts:()=>Kde,sys:()=>yd,sysLog:()=>Ih,tagNamesAreEquivalent:()=>Q3,takeWhile:()=>t_,targetOptionDeclaration:()=>O$e,targetToLibMap:()=>Is,testFormatSettings:()=>Pnn,textChangeRangeIsUnchanged:()=>sy,textChangeRangeNewSpan:()=>qR,textChanges:()=>xo,textOrKeywordPart:()=>Krt,textPart:()=>gS,textRangeContainsPositionInclusive:()=>sl,textRangeContainsTextSpan:()=>Og,textRangeIntersectsWithTextSpan:()=>e3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>ed,textSpanContainsTextSpan:()=>Nd,textSpanEnd:()=>Rs,textSpanIntersection:()=>IA,textSpanIntersectsWith:()=>q2,textSpanIntersectsWithPosition:()=>zR,textSpanIntersectsWithTextSpan:()=>Tb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>o1,textSpanOverlapsWith:()=>Nh,textSpansEqual:()=>Xie,textToKeywordObj:()=>ev,timestamp:()=>Fg,toArray:()=>cc,toBuilderFileEmit:()=>W3t,toBuilderStateFileInfoForMultiEmit:()=>P3t,toEditorSettings:()=>N1e,toFileNameLowerCase:()=>Om,toPath:()=>Ou,toProgramEmitPending:()=>O3t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>Id,tokenIsIdentifierOrKeywordOrGreaterThan:()=>fB,tokenToString:()=>Vi,trace:()=>eu,tracing:()=>ki,tracingEnabled:()=>Kl,transferSourceFileChildren:()=>QPt,transform:()=>Ion,transformClassFields:()=>WOt,transformDeclarations:()=>Xet,transformECMAScriptModule:()=>Qet,transformES2015:()=>e3t,transformES2016:()=>$Ot,transformES2017:()=>YOt,transformES2018:()=>QOt,transformES2019:()=>XOt,transformES2020:()=>JOt,transformES2021:()=>UOt,transformESDecorators:()=>HOt,transformESNext:()=>KOt,transformGenerators:()=>t3t,transformImpliedNodeFormatDependentModule:()=>n3t,transformJsx:()=>qOt,transformLegacyDecorators:()=>MOt,transformModule:()=>Yet,transformNamedEvaluation:()=>m1,transformNodes:()=>WEe,transformSystemModule:()=>r3t,transformTypeScript:()=>POt,transpile:()=>Bin,transpileDeclaration:()=>Sin,transpileModule:()=>zMt,transpileOptionValueCompilerOptions:()=>EWt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>oPe,tryCast:()=>Gs,tryDirectoryExists:()=>sPe,tryExtractTSExtension:()=>O7,tryFileExists:()=>Kie,tryGetClassExtendingExpressionWithTypeArguments:()=>$ye,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>ebe,tryGetDirectories:()=>iPe,tryGetExtensionFromPath:()=>QT,tryGetImportFromModuleSpecifier:()=>B7,tryGetJSDocSatisfiesTypeNode:()=>QAe,tryGetModuleNameFromFile:()=>gEe,tryGetModuleSpecifierFromDeclaration:()=>ZY,tryGetNativePerformanceHooks:()=>YS,tryGetPropertyAccessOrIdentifierToString:()=>TP,tryGetPropertyNameOfBindingOrAssignmentElement:()=>a9e,tryGetSourceMappingURL:()=>EOt,tryGetTextOfPropertyName:()=>xY,tryParseJson:()=>nU,tryParsePattern:()=>UY,tryParsePatterns:()=>$7,tryParseRawSourceMap:()=>SOt,tryReadDirectory:()=>rnt,tryReadFile:()=>fde,tryRemoveDirectoryPrefix:()=>NAe,tryRemoveExtension:()=>ILe,tryRemovePrefix:()=>HS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>SU,typeAcquisitionDeclarations:()=>p9e,typeAliasNamePart:()=>dMt,typeDirectiveIsEqualTo:()=>hge,typeKeywords:()=>Frt,typeParameterNamePart:()=>pMt,typeToDisplayParts:()=>I1e,unchangedPollThresholds:()=>q_,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>NEe,unorderedRemoveItem:()=>ef,unprefixedNodeCoreModules:()=>qne,unreachableCodeIsError:()=>rLe,unsetNodeChildren:()=>b$e,unusedLabelIsError:()=>nLe,unwrapInnermostStatementOfLabel:()=>Iye,unwrapParenthesizedExpression:()=>UAe,updateErrorForNoInputFiles:()=>S9e,updateLanguageServiceSourceFile:()=>znt,updateMissingFilePathsWatch:()=>rtt,updateResolutionField:()=>Bie,updateSharedExtendedConfigFileWatcher:()=>z9e,updateSourceFile:()=>Z$e,updateWatchingWildcardDirectories:()=>HEe,usingSingleLineStringWriter:()=>dP,utf16EncodeAsString:()=>jR,validateLocaleAndSetLanguage:()=>yx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Ede,visitCommaListElements:()=>xEe,visitEachChild:()=>_s,visitFunctionBody:()=>uS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>Ret,visitNode:()=>Mr,visitNodes:()=>Ws,visitParameterList:()=>vI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>qPt,walkUpParenthesizedExpressions:()=>gv,walkUpParenthesizedTypes:()=>pne,walkUpParenthesizedTypesAndGetParentAndChild:()=>wye,whitespaceOrMapCommentRegExp:()=>Det,writeCommentRange:()=>rU,writeFile:()=>lAe,writeFileEnsuringDirectories:()=>Qye,zipWith:()=>ce});var EWs=!0,Spn;function SWs(){return Spn??(Spn=new O(C))}function vpn(s,c,g,d,h){let _=c?"DeprecationError: ":"DeprecationWarning: ";return _+=`'${s}' `,_+=d?`has been deprecated since v${d}`:"is deprecated",_+=c?" and can no longer be used.":g?` and will no longer be usable after v${g}.`:".",_+=h?` ${dN(h,[s])}`:"",_}function vWs(s,c,g,d){let h=vpn(s,!0,c,g,d);return()=>{throw new TypeError(h)}}function BWs(s,c,g,d){let h=!1;return()=>{EWs&&!h&&(pe.log.warn(vpn(s,!1,c,g,d)),h=!0)}}function wWs(s,c={}){let g=typeof c.typeScriptVersion=="string"?new O(c.typeScriptVersion):c.typeScriptVersion??SWs(),d=typeof c.errorAfter=="string"?new O(c.errorAfter):c.errorAfter,h=typeof c.warnAfter=="string"?new O(c.warnAfter):c.warnAfter,_=typeof c.since=="string"?new O(c.since):c.since??h,S=c.error||d&&g.compareTo(d)>=0,R=!h||g.compareTo(h)>=0;return S?vWs(s,d,_,c.message):R?BWs(s,d,_,c.message):Dc}function TWs(s,c){return function(){return s(),c.apply(this,arguments)}}function RWs(s,c){let g=wWs(c?.name??pe.getFunctionName(s),c);return TWs(g,s)}function ust(s,c,g,d){if(Object.defineProperty(_,"name",{...Object.getOwnPropertyDescriptor(_,"name"),value:s}),d)for(let S of Object.keys(d)){let R=+S;!isNaN(R)&&Da(c,`${R}`)&&(c[R]=RWs(c[R],{...d[R],name:s}))}let h=NWs(c,g);return _;function _(...S){let R=h(S),T=R!==void 0?c[R]:void 0;if(typeof T=="function")return T(...S);throw new TypeError("Invalid arguments")}}function NWs(s,c){return g=>{for(let d=0;Da(s,`${d}`)&&Da(c,`${d}`);d++){let h=c[d];if(h(g))return d}}}function Bpn(s){return{overload:c=>({bind:g=>({finish:()=>ust(s,c,g),deprecate:d=>({finish:()=>ust(s,c,g,d)})})})}}var wpn={};o(wpn,{ActionInvalidate:()=>BVe,ActionPackageInstalled:()=>wVe,ActionSet:()=>vVe,ActionWatchTypingLocations:()=>n1e,Arguments:()=>crt,AutoImportProviderProject:()=>P4t,AuxiliaryProject:()=>L4t,CharRangeSection:()=>gJt,CloseFileWatcherEvent:()=>Est,CommandNames:()=>sfn,ConfigFileDiagEvent:()=>mst,ConfiguredProject:()=>W4t,ConfiguredProjectLoadKind:()=>X4t,CreateDirectoryWatcherEvent:()=>bst,CreateFileWatcherEvent:()=>yst,Errors:()=>QF,EventBeginInstallTypes:()=>ort,EventEndInstallTypes:()=>art,EventInitializationFailed:()=>S5t,EventTypesRegistry:()=>srt,ExternalProject:()=>Ast,GcTimer:()=>v4t,InferredProject:()=>Z4t,LargeFileReferencedEvent:()=>hst,LineIndex:()=>a2e,LineLeaf:()=>cWe,LineNode:()=>use,LogLevel:()=>I4t,Msg:()=>h4t,OpenFileInfoTelemetryEvent:()=>O4t,Project:()=>zz,ProjectInfoTelemetryEvent:()=>_st,ProjectKind:()=>fpe,ProjectLanguageServiceStateEvent:()=>Cst,ProjectLoadingFinishEvent:()=>Ist,ProjectLoadingStartEvent:()=>fst,ProjectService:()=>tJt,ProjectsUpdatedInBackgroundEvent:()=>sWe,ScriptInfo:()=>R4t,ScriptVersionCache:()=>Fst,Session:()=>dfn,TextStorage:()=>T4t,ThrottledOperations:()=>S4t,TypingsInstallerAdapter:()=>Cfn,allFilesAreJsOrDts:()=>x4t,allRootFilesAreJsOrDts:()=>k4t,asNormalizedPath:()=>Dpn,convertCompilerOptions:()=>oWe,convertFormatOptions:()=>ase,convertScriptKindName:()=>vst,convertTypeAcquisition:()=>H4t,convertUserPreferences:()=>Y4t,convertWatchOptions:()=>s2e,countEachFileTypes:()=>t2e,createInstallTypingsRequest:()=>m4t,createModuleSpecifierCache:()=>iJt,createNormalizedPathMap:()=>kpn,createPackageJsonCache:()=>sJt,createSortedArray:()=>E4t,emptyArray:()=>zm,findArgument:()=>Dnn,formatDiagnosticToProtocol:()=>o2e,formatMessage:()=>oJt,getBaseConfigFileName:()=>gst,getDetailWatchInfo:()=>Rst,getLocationInNewDocument:()=>uJt,hasArgument:()=>Nnn,hasNoTypeScriptSource:()=>G4t,indent:()=>Wde,isBackgroundProject:()=>n2e,isConfigFile:()=>rJt,isConfiguredProject:()=>s9,isDynamicFileName:()=>ppe,isExternalProject:()=>r2e,isInferredProject:()=>ose,isInferredProjectName:()=>C4t,isProjectDeferredClose:()=>i2e,makeAutoImportProviderProjectName:()=>y4t,makeAuxiliaryProjectName:()=>b4t,makeInferredProjectName:()=>_4t,maxFileSize:()=>pst,maxProgramSizeForNonTsFiles:()=>dst,normalizedPathToPath:()=>sse,nowString:()=>knn,nullCancellationToken:()=>rfn,nullTypingsInstaller:()=>aWe,protocol:()=>B4t,scriptInfoIsContainedByBackgroundProject:()=>N4t,scriptInfoIsContainedByDeferredClosedProject:()=>D4t,stringifyIndented:()=>j3,toEvent:()=>aJt,toNormalizedPath:()=>op,tryConvertScriptKindName:()=>Sst,typingsInstaller:()=>f4t,updateProjectIfDirty:()=>_v});var f4t={};o(f4t,{TypingsInstaller:()=>xWs,getNpmCommandForInstallation:()=>Rpn,installNpmPackages:()=>kWs,typingsName:()=>Npn});var DWs={isEnabled:()=>!1,writeLine:Dc};function Tpn(s,c,g,d){try{let h=BU(c,Ro(s,"index.d.ts"),{moduleResolution:2},g);return h.resolvedModule&&h.resolvedModule.resolvedFileName}catch(h){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${s}': ${h.message}`);return}}function kWs(s,c,g,d){let h=!1;for(let _=g.length;_>0;){let S=Rpn(s,c,g,_);_=S.remaining,h=d(S.command)||h}return h}function Rpn(s,c,g,d){let h=g.length-d,_,S=d;for(;_=`${s} install --ignore-scripts ${(S===g.length?g:g.slice(h,h+S)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(_.length<8e3);)S=S-Math.floor(S/2);return{command:_,remaining:d-S}}var xWs=class{constructor(s,c,g,d,h,_=DWs){this.installTypingHost=s,this.globalCachePath=c,this.safeListPath=g,this.typesMapLocation=d,this.throttleLimit=h,this.log=_,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest",this.log.isEnabled()&&this.log.writeLine(`Global cache location '${c}', safe file path '${g}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(s){switch(s.kind){case"discover":this.install(s);break;case"closeProject":this.closeProject(s);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,h)=>{c[h]=d});let g={kind:srt,typesRegistry:c};this.sendResponse(g);break}case"installPackage":{this.installPackage(s);break}default:pe.assertNever(s)}}closeProject(s){this.closeWatchers(s.projectName)}closeWatchers(s){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}'`),!this.projectWatchers.get(s)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${s}'`);return}this.projectWatchers.delete(s),this.sendResponse({kind:n1e,projectName:s,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}' - done.`)}install(s){this.log.isEnabled()&&this.log.writeLine(`Got install request${j3(s)}`),s.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${s.cachePath}', loading cached information...`),this.processCacheLocation(s.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=YP.discoverTypings(this.installTypingHost,this.log.isEnabled()?g=>this.log.writeLine(g):void 0,s.fileNames,s.projectRootPath,this.safeList,this.packageNameToTypingLocation,s.typeAcquisition,s.unresolvedImports,this.typesRegistry,s.compilerOptions);this.watchFiles(s.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(s,s.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(s,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(s){let{fileName:c,packageName:g,projectName:d,projectRootPath:h,id:_}=s,S=pE(Mo(c),R=>{if(this.installTypingHost.fileExists(Ro(R,"package.json")))return R})||h;if(S)this.installWorker(-1,[g],S,R=>{let T=R?`Package ${g} installed.`:`There was an error installing ${g}.`,W={kind:wVe,projectName:d,id:_,success:R,message:T};this.sendResponse(W)});else{let R={kind:wVe,projectName:d,id:_,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let s=YP.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(s){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=s;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=YP.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(s){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${s}'`),this.knownCachesSet.has(s)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=Ro(s,"package.json"),g=Ro(s,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(g)){let d=JSON.parse(this.installTypingHost.readFile(c)),h=JSON.parse(this.installTypingHost.readFile(g));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${j3(d)}`),this.log.writeLine(`Loaded content of '${g}':${j3(h)}`)),d.devDependencies&&(h.packages||h.dependencies))for(let _ in d.devDependencies){if(h.packages&&!Da(h.packages,`node_modules/${_}`)||h.dependencies&&!Da(h.dependencies,_))continue;let S=gp(_);if(!S)continue;let R=Tpn(s,S,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(S);continue}let T=this.packageNameToTypingLocation.get(S);if(T){if(T.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${S} from '${R}' conflicts with existing typing file '${T}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${S}' => '${R}'`);let W=h.packages&&pu(h.packages,`node_modules/${_}`)||pu(h.dependencies,_),V=W&&W.version;if(!V)continue;let M={typingLocation:R,version:new O(V)};this.packageNameToTypingLocation.set(S,M)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${s}'`),this.knownCachesSet.add(s)}filterTypings(s){return Xt(s,c=>{let g=Nie(c);if(this.missingTypingsSet.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' is in missingTypingsSet - skipping...`);return}let d=YP.validatePackageName(c);if(d!==YP.NameValidationResult.Ok){this.missingTypingsSet.add(g),this.log.isEnabled()&&this.log.writeLine(YP.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${g}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(g)&&YP.isTypingUpToDate(this.packageNameToTypingLocation.get(g),this.typesRegistry.get(g))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' already has an up-to-date typing - skipping...`);return}return g})}ensurePackageDirectoryExists(s){let c=Ro(s,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(s,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(s,c,g,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let h=this.filterTypings(d);if(h.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(s,g));return}this.ensurePackageDirectoryExists(c);let _=this.installRunCount;this.installRunCount++,this.sendResponse({kind:ort,eventId:_,typingsInstallerVersion:C,projectName:s.projectName});let S=h.map(Npn);this.installTypingsAsync(_,S,c,R=>{try{if(!R){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(h)}`);for(let W of h)this.missingTypingsSet.add(W);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(S)}`);let T=[];for(let W of h){let V=Tpn(c,W,this.installTypingHost,this.log);if(!V){this.missingTypingsSet.add(W);continue}let M=this.typesRegistry.get(W),ee=new O(M[`ts${I}`]||M[this.latestDistTag]),re={typingLocation:V,version:ee};this.packageNameToTypingLocation.set(W,re),T.push(V)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(T)}`),this.sendResponse(this.createSetTypings(s,g.concat(T)))}finally{let T={kind:art,eventId:_,projectName:s.projectName,packagesToInstall:S,installSuccess:R,typingsInstallerVersion:C};this.sendResponse(T)}})}ensureDirectoryExists(s,c){let g=Mo(s);c.directoryExists(g)||this.ensureDirectoryExists(g,c),c.directoryExists(s)||c.createDirectory(s)}watchFiles(s,c){if(!c.length){this.closeWatchers(s);return}let g=this.projectWatchers.get(s),d=new Set(c);!g||SB(d,h=>!g.has(h))||SB(g,h=>!d.has(h))?(this.projectWatchers.set(s,d),this.sendResponse({kind:n1e,projectName:s,files:c})):this.sendResponse({kind:n1e,projectName:s,files:void 0})}createSetTypings(s,c){return{projectName:s.projectName,typeAcquisition:s.typeAcquisition,compilerOptions:s.compilerOptions,typings:c,unresolvedImports:s.unresolvedImports,kind:vVe}}installTypingsAsync(s,c,g,d){this.pendingRunRequests.unshift({requestId:s,packageNames:c,cwd:g,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,s.onRequestCompleted(c),this.executeWithThrottling()})}}};function Npn(s){return`@types/${s}@ts${I}`}var I4t=(s=>(s[s.terse=0]="terse",s[s.normal=1]="normal",s[s.requestTime=2]="requestTime",s[s.verbose=3]="verbose",s))(I4t||{}),zm=E4t(),h4t=(s=>(s.Err="Err",s.Info="Info",s.Perf="Perf",s))(h4t||{});function m4t(s,c,g,d){return{projectName:s.getProjectName(),fileNames:s.getFileNames(!0,!0).concat(s.getExcludedFiles()),compilerOptions:s.getCompilationSettings(),typeAcquisition:c,unresolvedImports:g,projectRootPath:s.getCurrentDirectory(),cachePath:d,kind:"discover"}}var QF;(s=>{function c(){throw new Error("No Project.")}s.ThrowNoProject=c;function g(){throw new Error("The project's language service is disabled.")}s.ThrowProjectLanguageServiceDisabled=g;function d(h,_){throw new Error(`Project '${_.getProjectName()}' does not contain document '${h}'`)}s.ThrowProjectDoesNotContainDocument=d})(QF||(QF={}));function op(s){return iu(s)}function sse(s,c,g){let d=Xp(s)?s:Xc(s,c);return g(d)}function Dpn(s){return s}function kpn(){let s=new Map;return{get(c){return s.get(c)},set(c,g){s.set(c,g)},contains(c){return s.has(c)},remove(c){s.delete(c)}}}function C4t(s){return/dev\/null\/inferredProject\d+\*/.test(s)}function _4t(s){return`/dev/null/inferredProject${s}*`}function y4t(s){return`/dev/null/autoImportProviderProject${s}*`}function b4t(s){return`/dev/null/auxiliaryProject${s}*`}function E4t(){return[]}var S4t=class QDi{constructor(c,g){this.host=c,this.pendingTimeouts=new Map,this.logger=g.hasLevel(3)?g:void 0}schedule(c,g,d){let h=this.pendingTimeouts.get(c);h&&this.host.clearTimeout(h),this.pendingTimeouts.set(c,this.host.setTimeout(QDi.run,g,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${h?", Cancelled earlier one":""}`)}cancel(c){let g=this.pendingTimeouts.get(c);return g?(this.host.clearTimeout(g),this.pendingTimeouts.delete(c)):!1}static run(c,g,d){g.pendingTimeouts.delete(c),g.logger&&g.logger.info(`Running: ${c}`),d()}},v4t=class XDi{constructor(c,g,d){this.host=c,this.delay=g,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(XDi.run,this.delay,this))}static run(c){c.timerId=void 0;let g=c.logger.hasLevel(2),d=g&&c.host.getMemoryUsage();if(c.host.gc(),g){let h=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${d}, after ${h}`)}}};function gst(s){let c=gp(s);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}var B4t={};o(B4t,{ClassificationType:()=>Art,CommandTypes:()=>w4t,CompletionTriggerKind:()=>urt,IndentStyle:()=>Zpn,JsxEmit:()=>Lpn,ModuleKind:()=>Vpn,ModuleResolutionKind:()=>Ppn,NewLineKind:()=>Wpn,OrganizeImportsMode:()=>lrt,PollingWatchKind:()=>Fpn,ScriptTarget:()=>Opn,SemicolonPreference:()=>grt,WatchDirectoryKind:()=>Gpn,WatchFileKind:()=>xpn});var w4t=(s=>(s.JsxClosingTag="jsxClosingTag",s.LinkedEditingRange="linkedEditingRange",s.Brace="brace",s.BraceFull="brace-full",s.BraceCompletion="braceCompletion",s.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",s.Change="change",s.Close="close",s.Completions="completions",s.CompletionInfo="completionInfo",s.CompletionsFull="completions-full",s.CompletionDetails="completionEntryDetails",s.CompletionDetailsFull="completionEntryDetails-full",s.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",s.CompileOnSaveEmitFile="compileOnSaveEmitFile",s.Configure="configure",s.Definition="definition",s.DefinitionFull="definition-full",s.DefinitionAndBoundSpan="definitionAndBoundSpan",s.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",s.Implementation="implementation",s.ImplementationFull="implementation-full",s.EmitOutput="emit-output",s.Exit="exit",s.FileReferences="fileReferences",s.FileReferencesFull="fileReferences-full",s.Format="format",s.Formatonkey="formatonkey",s.FormatFull="format-full",s.FormatonkeyFull="formatonkey-full",s.FormatRangeFull="formatRange-full",s.Geterr="geterr",s.GeterrForProject="geterrForProject",s.SemanticDiagnosticsSync="semanticDiagnosticsSync",s.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",s.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",s.NavBar="navbar",s.NavBarFull="navbar-full",s.Navto="navto",s.NavtoFull="navto-full",s.NavTree="navtree",s.NavTreeFull="navtree-full",s.DocumentHighlights="documentHighlights",s.DocumentHighlightsFull="documentHighlights-full",s.Open="open",s.Quickinfo="quickinfo",s.QuickinfoFull="quickinfo-full",s.References="references",s.ReferencesFull="references-full",s.Reload="reload",s.Rename="rename",s.RenameInfoFull="rename-full",s.RenameLocationsFull="renameLocations-full",s.Saveto="saveto",s.SignatureHelp="signatureHelp",s.SignatureHelpFull="signatureHelp-full",s.FindSourceDefinition="findSourceDefinition",s.Status="status",s.TypeDefinition="typeDefinition",s.ProjectInfo="projectInfo",s.ReloadProjects="reloadProjects",s.Unknown="unknown",s.OpenExternalProject="openExternalProject",s.OpenExternalProjects="openExternalProjects",s.CloseExternalProject="closeExternalProject",s.SynchronizeProjectList="synchronizeProjectList",s.ApplyChangedToOpenFiles="applyChangedToOpenFiles",s.UpdateOpen="updateOpen",s.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",s.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",s.Cleanup="cleanup",s.GetOutliningSpans="getOutliningSpans",s.GetOutliningSpansFull="outliningSpans",s.TodoComments="todoComments",s.Indentation="indentation",s.DocCommentTemplate="docCommentTemplate",s.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",s.NameOrDottedNameSpan="nameOrDottedNameSpan",s.BreakpointStatement="breakpointStatement",s.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",s.GetCodeFixes="getCodeFixes",s.GetCodeFixesFull="getCodeFixes-full",s.GetCombinedCodeFix="getCombinedCodeFix",s.GetCombinedCodeFixFull="getCombinedCodeFix-full",s.ApplyCodeActionCommand="applyCodeActionCommand",s.GetSupportedCodeFixes="getSupportedCodeFixes",s.GetApplicableRefactors="getApplicableRefactors",s.GetEditsForRefactor="getEditsForRefactor",s.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",s.PreparePasteEdits="preparePasteEdits",s.GetPasteEdits="getPasteEdits",s.GetEditsForRefactorFull="getEditsForRefactor-full",s.OrganizeImports="organizeImports",s.OrganizeImportsFull="organizeImports-full",s.GetEditsForFileRename="getEditsForFileRename",s.GetEditsForFileRenameFull="getEditsForFileRename-full",s.ConfigurePlugin="configurePlugin",s.SelectionRange="selectionRange",s.SelectionRangeFull="selectionRange-full",s.ToggleLineComment="toggleLineComment",s.ToggleLineCommentFull="toggleLineComment-full",s.ToggleMultilineComment="toggleMultilineComment",s.ToggleMultilineCommentFull="toggleMultilineComment-full",s.CommentSelection="commentSelection",s.CommentSelectionFull="commentSelection-full",s.UncommentSelection="uncommentSelection",s.UncommentSelectionFull="uncommentSelection-full",s.PrepareCallHierarchy="prepareCallHierarchy",s.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",s.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",s.ProvideInlayHints="provideInlayHints",s.WatchChange="watchChange",s.MapCode="mapCode",s.CopilotRelated="copilotRelated",s))(w4t||{}),xpn=(s=>(s.FixedPollingInterval="FixedPollingInterval",s.PriorityPollingInterval="PriorityPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s.UseFsEvents="UseFsEvents",s.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",s))(xpn||{}),Gpn=(s=>(s.UseFsEvents="UseFsEvents",s.FixedPollingInterval="FixedPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s))(Gpn||{}),Fpn=(s=>(s.FixedInterval="FixedInterval",s.PriorityInterval="PriorityInterval",s.DynamicPriority="DynamicPriority",s.FixedChunkSize="FixedChunkSize",s))(Fpn||{}),Zpn=(s=>(s.None="None",s.Block="Block",s.Smart="Smart",s))(Zpn||{}),Lpn=(s=>(s.None="none",s.Preserve="preserve",s.ReactNative="react-native",s.React="react",s.ReactJSX="react-jsx",s.ReactJSXDev="react-jsxdev",s))(Lpn||{}),Vpn=(s=>(s.None="none",s.CommonJS="commonjs",s.AMD="amd",s.UMD="umd",s.System="system",s.ES6="es6",s.ES2015="es2015",s.ES2020="es2020",s.ES2022="es2022",s.ESNext="esnext",s.Node16="node16",s.Node18="node18",s.Node20="node20",s.NodeNext="nodenext",s.Preserve="preserve",s))(Vpn||{}),Ppn=(s=>(s.Classic="classic",s.Node="node",s.NodeJs="node",s.Node10="node10",s.Node16="node16",s.NodeNext="nodenext",s.Bundler="bundler",s))(Ppn||{}),Wpn=(s=>(s.Crlf="Crlf",s.Lf="Lf",s))(Wpn||{}),Opn=(s=>(s.ES3="es3",s.ES5="es5",s.ES6="es6",s.ES2015="es2015",s.ES2016="es2016",s.ES2017="es2017",s.ES2018="es2018",s.ES2019="es2019",s.ES2020="es2020",s.ES2021="es2021",s.ES2022="es2022",s.ES2023="es2023",s.ES2024="es2024",s.ESNext="esnext",s.JSON="json",s.Latest="esnext",s))(Opn||{}),T4t=class{constructor(s,c,g){this.host=s,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=g||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(s){this.svc=void 0,this.text=s,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(s,c,g){this.switchToScriptVersionCache().edit(s,c-s,g),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(s){return pe.assert(s!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=Lz(this.svc.getSnapshot())),this.text!==s?(this.useText(s),this.ownFileText=!1,!0):!1}reloadWithFileText(s){let{text:c,fileSize:g}=s||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(s):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=g,this.ownFileText=!s||s===this.info.fileName,this.ownFileText&&this.info.mTime===Rh.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||Rh).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var s;return((s=this.tryUseScriptVersionCache())==null?void 0:s.getSnapshot())||(this.textSnapshot??(this.textSnapshot=TVe.fromString(pe.checkDefined(this.text))))}getAbsolutePositionAndLineText(s){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(s);let g=this.getLineMap();return s<=g.length?{absolutePosition:g[s-1],lineText:this.text.substring(g[s-1],g[s])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(s){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(s);let g=this.getLineMap(),d=g[s],h=s+1c===void 0?c=this.host.readFile(g)||"":c;if(!w3(this.info.fileName)){let h=this.host.getFileSize?this.host.getFileSize(g):d().length;if(h>pst)return pe.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${g} for info ${this.info.fileName}: fileSize: ${h}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(g,h),{text:"",fileSize:h}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=Fst.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&this.getOrLoadText(),this.isOpen?(!this.svc&&!this.textSnapshot&&(this.svc=Fst.fromString(pe.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(pe.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return pe.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=cA(pe.checkDefined(this.text)))}getLineInfo(){let s=this.tryUseScriptVersionCache();if(s)return{getLineCount:()=>s.getLineCount(),getLineText:g=>s.getAbsolutePositionAndLineText(g+1).lineText};let c=this.getLineMap();return ket(this.text,c)}};function ppe(s){return s[0]==="^"||(s.includes("walkThroughSnippet:/")||s.includes("untitled:/"))&&gp(s)[0]==="^"||s.includes(":^")&&!s.includes(ag)}var R4t=class{constructor(s,c,g,d,h,_){this.host=s,this.fileName=c,this.scriptKind=g,this.hasMixedContent=d,this.path=h,this.containingProjects=[],this.isDynamic=ppe(c),this.textStorage=new T4t(s,this,_),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=g||GAe(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(s){this.textStorage.isOpen=!0,s!==void 0&&this.textStorage.reload(s)&&this.markContainingProjectsAsDirty()}close(s=!0){this.textStorage.isOpen=!1,s&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){pe.assert(!!this.containingProjects.length);let s=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=s.toPath(c),this.realpath!==this.path&&s.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(s){let c=!this.isAttached(s);return c&&(this.containingProjects.push(s),s.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),s.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(s){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===s;case 2:return this.containingProjects[0]===s||this.containingProjects[1]===s;default:return k(this.containingProjects,s)}}detachFromProject(s){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===s?(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:Ql(this.containingProjects,s)&&s.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let s of this.containingProjects){s9(s)&&s.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=s.getRootFilesMap().get(this.path);s.removeFile(this,!1,!1),s.onFileAddedOrRemoved(this.isSymlink()),c&&!ose(s)&&s.addMissingFileRoot(c.fileName)}St(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return QF.ThrowNoProject();case 1:return i2e(this.containingProjects[0])||n2e(this.containingProjects[0])?QF.ThrowNoProject():this.containingProjects[0];default:let s,c,g,d;for(let h=0;h!s.isOrphan())}lineToTextSpan(s){return this.textStorage.lineToTextSpan(s)}lineOffsetToPosition(s,c,g){return this.textStorage.lineOffsetToPosition(s,c,g)}positionToLineOffset(s){GWs(s);let c=this.textStorage.positionToLineOffset(s);return FWs(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Xs(this.sourceMapFilePath)&&(Cv(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function GWs(s){pe.assert(typeof s=="number",`Expected position ${s} to be a number.`),pe.assert(s>=0,"Expected position to be non-negative.")}function FWs(s){pe.assert(typeof s.line=="number",`Expected line ${s.line} to be a number.`),pe.assert(typeof s.offset=="number",`Expected offset ${s.offset} to be a number.`),pe.assert(s.line>0,`Expected line to be non-${s.line===0?"zero":"negative"}`),pe.assert(s.offset>0,`Expected offset to be non-${s.offset===0?"zero":"negative"}`)}function N4t(s){return jt(s.containingProjects,n2e)}function D4t(s){return jt(s.containingProjects,i2e)}var fpe=(s=>(s[s.Inferred=0]="Inferred",s[s.Configured=1]="Configured",s[s.External=2]="External",s[s.AutoImportProvider=3]="AutoImportProvider",s[s.Auxiliary=4]="Auxiliary",s))(fpe||{});function t2e(s,c=!1){let g={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(let d of s){let h=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:g.js+=1,g.jsSize+=h;break;case 2:g.jsx+=1,g.jsxSize+=h;break;case 3:PC(d.fileName)?(g.dts+=1,g.dtsSize+=h):(g.ts+=1,g.tsSize+=h);break;case 4:g.tsx+=1,g.tsxSize+=h;break;case 7:g.deferred+=1,g.deferredSize+=h;break}}return g}function ZWs(s){let c=t2e(s.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function k4t(s){let c=t2e(s.getRootScriptInfos());return c.ts===0&&c.tsx===0}function x4t(s){let c=t2e(s.getScriptInfos());return c.ts===0&&c.tsx===0}function G4t(s){return!s.some(c=>aA(c,".ts")&&!PC(c)||aA(c,".tsx"))}function F4t(s){return s.generatedFilePath!==void 0}function Mpn(s,c){if(s===c||(s||zm).length===0&&(c||zm).length===0)return!0;let g=new Map,d=0;for(let h of s)g.get(h)!==!0&&(g.set(h,!0),d++);for(let h of c){let _=g.get(h);if(_===void 0)return!1;_===!0&&(g.set(h,!1),d--)}return d===0}function LWs(s,c){return s.enable!==c.enable||!Mpn(s.include,c.include)||!Mpn(s.exclude,c.exclude)}function VWs(s,c){return TF(s)!==TF(c)}function PWs(s,c){return s===c?!1:!Sc(s,c)}var zz=class JDi{constructor(c,g,d,h,_,S,R,T,W,V){switch(this.projectKind=g,this.projectService=d,this.compilerOptions=S,this.compileOnSaveEnabled=R,this.watchOptions=T,this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.initialLoadPending=!1,this.dirty=!1,this.typingFiles=zm,this.moduleSpecifierCache=iJt(this),this.createHash=$i(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=YP.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,d.logger.info(`Creating ${fpe[g]}Project: ${c}, currentDirectory: ${V}`),this.projectName=c,this.directoryStructureHost=W,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(V),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new uYt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||TF(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=DPe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:pe.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let M=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=ee=>this.writeLog(ee):M.trace&&(this.trace=ee=>M.trace(ee)),this.realpath=$i(M,M.realpath),this.preferNonRecursiveWatch=this.projectService.canUseWatchEvents||M.preferNonRecursiveWatch,this.resolutionCache=Ttt(this,this.currentDirectory,!0),this.languageService=gYt(this,this.projectService.documentRegistry,this.projectService.serverMode),_&&this.disableLanguageService(_),this.markAsDirty(),n2e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getRedirectFromSourceFile(c){}isNonTsProject(){return _v(this),x4t(this)}isJsOnlyProject(){return _v(this),ZWs(this)}static resolveModule(c,g,d,h){return JDi.importServicePluginSync({name:c},[g],d,h).resolvedModule}static importServicePluginSync(c,g,d,h){pe.assertIsDefined(d.require);let _,S;for(let R of g){let T=Dp(d.resolvePath(Ro(R,"node_modules")));h(`Loading ${c.name} from ${R} (resolved to ${T})`);let W=d.require(T,c.name);if(!W.error){S=W.module;break}let V=W.error.stack||W.error.message||JSON.stringify(W.error);(_??(_=[])).push(`Failed to load module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}static async importServicePluginAsync(c,g,d,h){pe.assertIsDefined(d.importPlugin);let _,S;for(let R of g){let T=Ro(R,"node_modules");h(`Dynamically importing ${c.name} from ${R} (resolved to ${T})`);let W;try{W=await d.importPlugin(T,c.name)}catch(M){W={module:void 0,error:M}}if(!W.error){S=W.module;break}let V=W.error.stack||W.error.message||JSON.stringify(W.error);(_??(_=[])).push(`Failed to dynamically import module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}isKnownTypesPackageName(c){return this.projectService.typingsInstaller.isKnownTypesPackageName(c)}installPackage(c){return this.projectService.typingsInstaller.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}getSymlinkCache(){return this.symlinks||(this.symlinks=_be(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFilesMap.size)return E;let c;return this.rootFilesMap.forEach(g=>{(this.languageServiceEnabled||g.info&&g.info.isScriptOpen())&&(c||(c=[])).push(g.fileName)}),Or(c,this.typingFiles)||E}getOrCreateScriptInfoAndAttachToProject(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(g){let d=this.rootFilesMap.get(g.path);d&&d.info!==g&&(d.info=g),g.attachToProject(this)}return g}getScriptKind(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&g.scriptKind}getScriptVersion(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return g&&g.getLatestVersion()}getScriptSnapshot(c){let g=this.getOrCreateScriptInfoAndAttachToProject(c);if(g)return g.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=Mo(iu(this.projectService.getExecutingFilePath()));return Ro(c,Hs(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,g,d,h,_){return this.directoryStructureHost.readDirectory(c,g,d,h,_)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,g){return this.projectService.host.writeFile(c,g)}fileExists(c){let g=this.toPath(c);return!!this.projectService.getScriptInfoForPath(g)||!this.isWatchedMissingFile(g)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,g,d,h,_,S){return this.resolutionCache.resolveModuleNameLiterals(c,g,d,h,_,S)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S)}resolveLibrary(c,g,d,h){return this.resolutionCache.resolveLibrary(c,g,d,h)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return Ou(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),jm.FailedLookupLocations,this)}watchAffectingFileLocation(c,g){return this.projectService.watchFactory.watchFile(c,g,2e3,this.projectService.getWatchOptions(this),jm.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)})}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),jm.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Me(this.projectErrors,c=>!c.file)||zm}getAllProjectErrors(){return this.projectErrors||zm}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&_v(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,g){return this.projectService.getDocumentPositionMapper(this,c,g)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(_v(this),this.builderState=nR.create(this.program,this.builderState,!0),Xt(nR.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),g=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(g.path))?g.fileName:void 0)):[]}emitFile(c,g){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:zm};let{emitSkipped:d,diagnostics:h,outputFiles:_}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let S of _){let R=Xc(S.name,this.currentDirectory);g(R,S.text,S.writeByteOrderMark)}if(this.builderState&&Ly(this.compilerOptions)){let S=_.filter(R=>PC(R.name));if(S.length===1){let R=this.program.getSourceFile(c.fileName),T=this.projectService.host.createHash?this.projectService.host.createHash(S[0].text):ry(S[0].text);nR.updateSignatureOfFile(this.builderState,T,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:h}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(pe.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(c){return!c.enable||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return bo(er(this.plugins,g=>{if(typeof g.module.getExternalFiles=="function")try{return g.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let g=this.program.getCompilerOptions();return c===g.configFilePath?g.configFile:this.getSourceFile(c)}close(){var c;this.typingsCache&&this.projectService.typingsInstaller.onProjectClosed(this),this.typingsCache=void 0,this.closeWatchingTypingLocations(),this.cleanupProgram(),F(this.externalFiles,g=>this.detachScriptInfoIfNotRoot(g)),this.rootFilesMap.forEach(g=>{var d;return(d=g.info)==null?void 0:d.detachFromProject(this)}),this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,(c=this.packageJsonWatches)==null||c.forEach(g=>{g.projects.delete(this),g.close()}),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(Fy(this.missingFilesMap,dv),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(c){let g=this.projectService.getScriptInfo(c);g&&!this.isRoot(g)&&g.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&Do(lr(this.rootFilesMap.values(),c=>{var g;return(g=c.info)==null?void 0:g.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return Do(lr(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?At(this.program.getSourceFiles(),c=>{let g=this.projectService.getScriptInfoForPath(c.resolvedPath);return pe.assert(!!g,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),g}):this.getRootScriptInfos()}getExcludedFiles(){return zm}getFileNames(c,g){if(!this.program)return[];if(!this.languageServiceEnabled){let h=this.getRootFiles();if(this.compilerOptions){let _=AYt(this.compilerOptions);_&&(h||(h=[])).push(_)}return h}let d=[];for(let h of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(h)||d.push(h.fileName);if(!g){let h=this.program.getCompilerOptions().configFile;if(h&&(d.push(h.fileName),h.extendedSourceFiles))for(let _ of h.extendedSourceFiles)d.push(_)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(g=>({fileName:g,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(g)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let g=this.program.getCompilerOptions().configFile;if(g){if(c===g.fileName)return!0;if(g.extendedSourceFiles){for(let d of g.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let g=this.program.getSourceFileByPath(c.path);return!!g&&g.resolvedPath===c.path}containsFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!g)?this.containsScriptInfo(d):!1}isRoot(c){var g,d;return((d=(g=this.rootFilesMap)==null?void 0:g.get(c.path))==null?void 0:d.info)===c}addRoot(c,g){pe.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:g||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let g=this.projectService.toPath(c);this.rootFilesMap.set(g,{fileName:c}),this.markAsDirty()}removeFile(c,g,d){this.isRoot(c)&&this.removeRoot(c),g?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){this.markAutoImportProviderAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.markAutoImportProviderAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}onReleaseOldSourceFile(c,g,d,h){(!h||c.resolvedPath===c.path&&h.resolvedPath!==c.path)&&this.detachScriptInfoFromProject(c.fileName,d)}updateFromProject(){_v(this)}updateGraph(){var c,g;(c=ki)==null||c.push(ki.Phase.Session,"updateGraph",{name:this.projectName,kind:fpe[this.projectKind]}),this.resolutionCache.startRecordingFilesWithChangedResolutions();let d=this.updateGraphWorker(),h=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let _=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||zm;for(let R of _)this.cachedUnresolvedImportsPerFile.delete(R);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((d||_.length)&&(this.lastCachedUnresolvedImportsList=WWs(this.program,this.cachedUnresolvedImportsPerFile)),this.enqueueInstallTypingsForProject(h)):this.lastCachedUnresolvedImportsList=void 0;let S=this.projectProgramVersion===0&&d;return d&&this.projectProgramVersion++,h&&this.markAutoImportProviderAsDirty(),S&&this.getPackageJsonAutoImportProvider(),(g=ki)==null||g.pop(),!d}enqueueInstallTypingsForProject(c){let g=this.getTypeAcquisition();if(!g||!g.enable||this.projectService.typingsInstaller===aWe)return;let d=this.typingsCache;(c||!d||LWs(g,d.typeAcquisition)||VWs(this.getCompilationSettings(),d.compilerOptions)||PWs(this.lastCachedUnresolvedImportsList,d.unresolvedImports))&&(this.typingsCache={compilerOptions:this.getCompilationSettings(),typeAcquisition:g,unresolvedImports:this.lastCachedUnresolvedImportsList},this.projectService.typingsInstaller.enqueueInstallTypingsRequest(this,g,this.lastCachedUnresolvedImportsList))}updateTypingFiles(c,g,d,h){this.typingsCache={compilerOptions:c,typeAcquisition:g,unresolvedImports:d};let _=!g||!g.enable?zm:bo(h);q0(_,this.typingFiles,ld(!this.useCaseSensitiveFileNames()),Dc,S=>this.detachScriptInfoFromProject(S))&&(this.typingFiles=_,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Fy(this.typingWatchers,dv),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:BVe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let g=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(h,_)=>{let S=this.toPath(h);if(g.delete(S),!this.typingWatchers.has(S)){let R=_==="FileWatcher"?jm.TypingInstallerLocationFile:jm.TypingInstallerLocationDirectory;this.typingWatchers.set(S,zEe(S)?_==="FileWatcher"?this.projectService.watchFactory.watchFile(h,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),R,this):this.projectService.watchFactory.watchDirectory(h,T=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!aA(T,".json"))return this.writeLog("Ignoring files that are not *.json");if(qf(T,Ro(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),R,this):(this.writeLog(`Skipping watcher creation at ${h}:: ${Rst(R,this)}`),Vie))}};for(let h of c){let _=gp(h);if(_==="package.json"||_==="bower.json"){d(h,"FileWatcher");continue}if(Jh(this.currentDirectory,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){let S=h.indexOf(ag,this.currentDirectory.length+1);d(S!==-1?h.substr(0,S):h,"DirectoryWatcher");continue}if(Jh(this.projectService.typingsInstaller.globalTypingsCacheLocation,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(h,"DirectoryWatcher")}g.forEach((h,_)=>{h.close(),this.typingWatchers.delete(_)})}getCurrentProgram(){return this.program}removeExistingTypings(c){if(!c.length)return c;let g=R9e(this.getCompilerOptions(),this);return Me(c,d=>!g.includes(d))}updateGraphWorker(){var c,g;let d=this.languageService.getCurrentProgram();pe.assert(d===this.program),pe.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let h=Fg(),{hasInvalidatedResolutions:_,hasInvalidatedLibResolutions:S}=this.resolutionCache.createHasInvalidatedResolutions(As,As);this.hasInvalidatedResolutions=_,this.hasInvalidatedLibResolutions=S,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=ki)==null||c.push(ki.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(g=ki)==null||g.pop(),pe.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,this.rootFilesMap.forEach((V,M)=>{var ee;let re=this.program.getSourceFileByPath(M),ge=V.info;!re||((ee=V.info)==null?void 0:ee.path)===re.resolvedPath||(V.info=this.projectService.getScriptInfo(re.fileName),pe.assert(V.info.isAttached(this)),ge?.detachFromProject(this))}),rtt(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(V,M)=>this.addMissingFileWatcher(V,M)),this.generatedFilesMap){let V=this.compilerOptions.outFile;F4t(this.generatedFilesMap)?(!V||!this.isValidGeneratedFileWatcher(s0(V)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():V?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((M,ee)=>{let re=this.program.getSourceFileByPath(ee);(!re||re.resolvedPath!==ee||!this.isValidGeneratedFileWatcher(wne(re.fileName,this.compilerOptions,this.program),M))&&(Cv(M),this.generatedFilesMap.delete(ee))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&SB(this.changedFilesForExportMapCache,V=>{let M=d.getSourceFileByPath(V),ee=this.program.getSourceFileByPath(V);return!M||!ee?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(M,ee,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let T=this.externalFiles||zm;this.externalFiles=this.getExternalFiles(),q0(this.externalFiles,T,ld(!this.useCaseSensitiveFileNames()),V=>{let M=this.projectService.getOrCreateScriptInfoNotOpenedByClient(V,this.currentDirectory,this.directoryStructureHost,!1);M?.attachToProject(this)},V=>this.detachScriptInfoFromProject(V));let W=Fg()-h;return this.sendPerformanceEvent("UpdateGraph",W),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${xc[this.program.structureIsReused]}`:""} Elapsed: ${W}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,g){this.projectService.sendPerformanceEvent(c,g)}detachScriptInfoFromProject(c,g){let d=this.projectService.getScriptInfo(c);d&&(d.detachFromProject(this),g||this.resolutionCache.removeResolutionsOfFile(d.path))}addMissingFileWatcher(c,g){var d;if(s9(this)){let _=this.projectService.configFileExistenceInfoCache.get(c);if((d=_?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return Vie}let h=this.projectService.watchFactory.watchFile(Xc(g,this.currentDirectory),(_,S)=>{s9(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(_,c,S),S===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),h.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),jm.MissingFile,this);return h}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,g){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(g);if(this.generatedFilesMap){if(F4t(this.generatedFilesMap)){pe.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),jm.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,g){return this.toPath(c)===g.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(F4t(this.generatedFilesMap)?Cv(this.generatedFilesMap):Fy(this.generatedFilesMap,Cv),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&!g.isAttached(this)?QF.ThrowProjectDoesNotContainDocument(c,this):g}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,g,d){if(this.initialLoadPending)return` Files (0) InitialLoadPending +`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.kind){case 264:case 268:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 261:case 11:case 80:return{prefix:", "};case 304:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 170:return{};default:return pe.assert(Lc(c)||mY(c)),{suffix:this.newLineCharacter}}}insertName(c,g,d){if(pe.assert(!g.name),g.kind===220){let h=qd(g,39,c),_=qd(g,21,c);_?(this.insertNodesAt(c,_.getStart(c),[me.createToken(100),me.createIdentifier(d)],{joiner:" "}),YF(this,c,h)):(this.insertText(c,ma(g.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,h,me.createToken(22))),g.body.kind!==242&&(this.insertNodesAt(c,g.body.getStart(c),[me.createToken(19),me.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,g.body.end,[me.createToken(27),me.createToken(20)],{joiner:" "}))}else{let h=qd(g,g.kind===219?100:86,c).end;this.insertNodeAt(c,h,me.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,g){this.insertText(c,g.getStart(c),"export ")}insertImportSpecifierAtIndex(c,g,d,h){let _=d.elements[h-1];_?this.insertNodeInListAfter(c,_,g):this.insertNodeBefore(c,d.elements[0],g,!yE(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,g,d,h=Im.SmartIndenter.getContainingList(g,c)){if(!h){pe.fail("node is not a list element");return}let _=fP(h,g);if(_<0)return;let S=g.getEnd();if(_!==h.length-1){let R=Jc(c,g.end);if(R&&est(g,R)){let T=h[_+1],W=zdn(c.text,T.getFullStart()),V=`${Vi(R.kind)}${c.text.substring(R.end,W)}`;this.insertNodesAt(c,W,[d],{suffix:V})}}else{let R=g.getStart(c),T=PB(R,c),W,V=!1;if(h.length===1)W=28;else{let M=Gm(g.pos,c);W=est(g,M)?M.kind:28,V=PB(h[_-1].getStart(c),c)!==T}if((bPs(c.text,g.end)||!yE(h.pos,h.end,c))&&(V=!0),V){this.replaceRange(c,Gy(S),me.createToken(W));let M=Im.SmartIndenter.findFirstNonWhitespaceColumn(T,R,c,this.formatContext.options),ee=Yu(c.text,S,!0,!1);for(;ee!==S&&Cl(c.text.charCodeAt(ee-1));)ee--;this.replaceRange(c,Gy(ee),d,{indentation:M,prefix:this.newLineCharacter})}else this.replaceRange(c,Gy(S),d,{prefix:`${Vi(W)} `})}}parenthesizeExpression(c,g){this.replaceRange(c,Dbe(g),me.createParenthesizedExpression(g))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:g})=>{let[d,h]=TPs(c,g);if(d!==void 0&&h!==void 0){let _=tst(c).length===0,S=yE(d,h,g);_&&S&&d!==h-1&&this.deleteRange(g,Gy(d,h-1)),S&&this.insertText(g,h-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:g,node:d}of this.deletedNodes)this.deletedNodes.some(h=>h.sourceFile===g&&z5t(h.node,d))||(Ki(d)?this.deleteRange(g,kbe(g,d)):n4t.deleteDeclaration(this,c,g,d));c.forEach(g=>{let d=g.getSourceFile(),h=Im.SmartIndenter.getContainingList(g,d);if(g!==Ei(h))return;let _=De(h,S=>!c.has(S),h.length-2);_!==-1&&this.deleteRange(d,{pos:h[_].end,end:t4t(d,h[_+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let g=rst.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,h)=>{g.push(rst.newFileChanges(h,d,this.newLineCharacter,this.formatContext))}),g}createNewFile(c,g,d){this.insertStatementsInNewFile(g,d,c)}};function vPs(s){if(s.kind!==220)return s;let c=s.parent.kind===173?s.parent:s.parent.parent;return c.jsDoc=s.jsDoc,c}function BPs(s,c){if(s.kind===c.kind)switch(s.kind){case 342:{let g=s,d=c;return Ir(g.name)&&Ir(d.name)&&g.name.escapedText===d.name.escapedText?me.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,g.comment):void 0}case 343:return me.createJSDocReturnTag(void 0,c.typeExpression,s.comment);case 345:return me.createJSDocTypeTag(void 0,c.typeExpression,s.comment)}}function t4t(s,c){return Yu(s.text,VU(s,c,{leadingTriviaOption:1}),!1,!0)}function wPs(s,c,g,d){let h=t4t(s,d);if(g===void 0||yE(jz(s,c,{}),h,s))return h;let _=Gm(d.getStart(s),s);if(est(c,_)){let S=Gm(c.getStart(s),s);if(est(g,S)){let R=Yu(s.text,_.getEnd(),!0,!0);if(yE(S.getStart(s),_.getStart(s),s))return Cl(s.text.charCodeAt(R-1))?R-1:R;if(Cl(s.text.charCodeAt(R)))return R}}return h}function TPs(s,c){let g=qd(s,19,c),d=qd(s,20,c);return[g?.end,d?.end]}function tst(s){return og(s)?s.properties:s.members}var rst;(s=>{function c(R,T,W,V){return Xt(Yn(R,M=>M.sourceFile.path),M=>{let ee=M[0].sourceFile,re=bo(M,(Ie,_e)=>Ie.range.pos-_e.range.pos||Ie.range.end-_e.range.end);for(let Ie=0;Ie`${JSON.stringify(re[Ie].range)} and ${JSON.stringify(re[Ie+1].range)}`);let ge=Xt(re,Ie=>{let _e=t9(Ie.range),Ee=Ie.kind===1?ms(Dd(Ie.node))??Ie.sourceFile:Ie.kind===2?ms(Dd(Ie.nodes[0]))??Ie.sourceFile:Ie.sourceFile,Ne=h(Ie,Ee,ee,T,W,V);if(!(_e.length===Ne.length&&kMt(Ee.text,Ne,_e.start)))return A1e(_e,Ne)});return ge.length>0?{fileName:ee.fileName,textChanges:ge}:void 0})}s.getTextChangesFromChanges=c;function g(R,T,W,V){let M=d(FAe(R),T,W,V);return{fileName:R,textChanges:[A1e(zd(0,0),M)],isNewFile:!0}}s.newFileChanges=g;function d(R,T,W,V){let M=er(T,ge=>ge.statements.map(Ie=>Ie===4?"":S(Ie,ge.oldFile,W).text)).join(W),ee=vz("any file name",M,{languageVersion:99,jsDocParsingMode:1},!0,R),re=Im.formatDocument(ee,V);return r4t(M,re)+W}s.newFileChangesWorker=d;function h(R,T,W,V,M,ee){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ge={},range:{pos:Ie}}=R,_e=Te=>_(Te,T,W,Ie,ge,V,M,ee),Ee=R.kind===2?R.nodes.map(Te=>aa(_e(Te),V)).join(((re=R.options)==null?void 0:re.joiner)||V):_e(R.node),Ne=ge.indentation!==void 0||PB(Ie,T)===Ie?Ee:Ee.replace(/^\s+/,"");return(ge.prefix||"")+Ne+(!ge.suffix||di(Ne,ge.suffix)?"":ge.suffix)}function _(R,T,W,V,{indentation:M,prefix:ee,delta:re},ge,Ie,_e){let{node:Ee,text:Ne}=S(R,T,ge);_e&&_e(Ee,Ne);let Te=dPe(Ie,T),Ze=M!==void 0?M:Im.SmartIndenter.getIndentation(V,W,Te,ee===ge||PB(V,T)===V);re===void 0&&(re=Im.SmartIndenter.shouldIndentChildNode(Te,R)&&Te.indentSize||0);let We={text:Ne,getLineAndCharacterOfPosition($e){return Ra(this,$e)}},Ue=Im.formatNodeGivenIndentation(Ee,We,T.languageVariant,Ze,re,{...Ie,options:Te});return r4t(Ne,Ue)}function S(R,T,W){let V=qdn(W),M=S1e(W);return MP({newLine:M,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},V).writeNode(4,R,T,V),{text:V.getText(),node:nst(R)}}s.getNonformattedText=S})(rst||(rst={}));function r4t(s,c){for(let g=c.length-1;g>=0;g--){let{span:d,newText:h}=c[g];s=`${s.substring(0,d.start)}${h}${s.substring(Rs(d))}`}return s}function RPs(s){return Yu(s,0)===s.length}var NPs={...MEe,factory:iie(MEe.factory.flags|1,MEe.factory.baseFactory)};function nst(s){let c=_s(s,nst,NPs,DPs,nst),g=sp(c)?c:Object.create(c);return TB(g,Jdn(s),Udn(s)),g}function DPs(s,c,g,d,h){let _=Ws(s,c,g,d,h);if(!_)return _;pe.assert(s);let S=_===s?me.createNodeArray(_.slice(0)):_;return TB(S,Jdn(s),Udn(s)),S}function qdn(s){let c=0,g=wne(s),d=Ke=>{Ke&&qXt(Ke,c)},h=Ke=>{Ke&&$Xt(Ke,c)},_=Ke=>{Ke&&qXt(Ke,c)},S=Ke=>{Ke&&$Xt(Ke,c)},R=Ke=>{Ke&&qXt(Ke,c)},T=Ke=>{Ke&&$Xt(Ke,c)};function W(Ke,Pt){if(Pt||!RPs(Ke)){c=g.getTextPos();let _r=0;for(;dc(Ke.charCodeAt(Ke.length-_r-1));)_r++;c-=_r}}function V(Ke){g.write(Ke),W(Ke,!1)}function M(Ke){g.writeComment(Ke)}function ee(Ke){g.writeKeyword(Ke),W(Ke,!1)}function re(Ke){g.writeOperator(Ke),W(Ke,!1)}function ge(Ke){g.writePunctuation(Ke),W(Ke,!1)}function Ie(Ke){g.writeTrailingSemicolon(Ke),W(Ke,!1)}function _e(Ke){g.writeParameter(Ke),W(Ke,!1)}function Ee(Ke){g.writeProperty(Ke),W(Ke,!1)}function Ne(Ke){g.writeSpace(Ke),W(Ke,!1)}function Te(Ke){g.writeStringLiteral(Ke),W(Ke,!1)}function Ze(Ke,Pt){g.writeSymbol(Ke,Pt),W(Ke,!1)}function We(Ke){g.writeLine(Ke)}function Ue(){g.increaseIndent()}function $e(){g.decreaseIndent()}function Ye(){return g.getText()}function Tt(Ke){g.rawWrite(Ke),W(Ke,!1)}function ot(Ke){g.writeLiteral(Ke),W(Ke,!0)}function Qe(){return g.getTextPos()}function mt(){return g.getLine()}function ht(){return g.getColumn()}function _t(){return g.getIndent()}function Rt(){return g.isAtStartOfLine()}function Lt(){g.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:h,onBeforeEmitNodeArray:_,onAfterEmitNodeArray:S,onBeforeEmitToken:R,onAfterEmitToken:T,write:V,writeComment:M,writeKeyword:ee,writeOperator:re,writePunctuation:ge,writeTrailingSemicolon:Ie,writeParameter:_e,writeProperty:Ee,writeSpace:Ne,writeStringLiteral:Te,writeSymbol:Ze,writeLine:We,increaseIndent:Ue,decreaseIndent:$e,getText:Ye,rawWrite:Tt,writeLiteral:ot,getTextPos:Qe,getLine:mt,getColumn:ht,getIndent:_t,isAtStartOfLine:Rt,hasTrailingComment:()=>g.hasTrailingComment(),hasTrailingWhitespace:()=>g.hasTrailingWhitespace(),clear:Lt}}function kPs(s){let c;for(let W of s.statements)if(nS(W))c=W;else break;let g=0,d=s.text;if(c)return g=c.end,T(),g;let h=mB(d);h!==void 0&&(g=h.length,T());let _=fE(d,g);if(!_)return g;let S,R;for(let W of _){if(W.kind===3){if(g7(d,W.pos)){S={range:W,pinnedOrTripleSlash:!0};continue}}else if(Mre(d,W.pos,W.end)){S={range:W,pinnedOrTripleSlash:!0};continue}if(S){if(S.pinnedOrTripleSlash)break;let V=s.getLineAndCharacterOfPosition(W.pos).line,M=s.getLineAndCharacterOfPosition(S.range.end).line;if(V>=M+2)break}if(s.statements.length){R===void 0&&(R=s.getLineAndCharacterOfPosition(s.statements[0].getStart()).line);let V=s.getLineAndCharacterOfPosition(W.end).line;if(R{function c(_,S,R,T){switch(T.kind){case 170:{let re=T.parent;lA(re)&&re.parameters.length===1&&!qd(re,21,R)?_.replaceNodeWithText(R,T,"()"):q1e(_,S,R,T);break}case 273:case 272:let W=R.imports.length&&T===ma(R.imports).parent||T===de(R.statements,IP);YF(_,R,T,{leadingTriviaOption:W?0:Xm(T)?2:3});break;case 209:let V=T.parent;V.kind===208&&T!==Ei(V.elements)?YF(_,R,T):q1e(_,S,R,T);break;case 261:h(_,S,R,T);break;case 169:q1e(_,S,R,T);break;case 277:let ee=T.parent;ee.elements.length===1?d(_,R,ee):q1e(_,S,R,T);break;case 275:d(_,R,T);break;case 27:YF(_,R,T,{trailingTriviaOption:0});break;case 100:YF(_,R,T,{leadingTriviaOption:0});break;case 264:case 263:YF(_,R,T,{leadingTriviaOption:Xm(T)?2:3});break;default:T.parent?Vw(T.parent)&&T.parent.name===T?g(_,R,T.parent):Zl(T.parent)&&k(T.parent.arguments,T)?q1e(_,S,R,T):YF(_,R,T):YF(_,R,T)}}s.deleteDeclaration=c;function g(_,S,R){if(!R.namedBindings)YF(_,S,R.parent);else{let T=R.name.getStart(S),W=Jc(S,R.name.end);if(W&&W.kind===28){let V=Yu(S.text,W.end,!1,!0);_.deleteRange(S,{pos:T,end:V})}else YF(_,S,R.name)}}function d(_,S,R){if(R.parent.name){let T=pe.checkDefined(Jc(S,R.pos-1));_.deleteRange(S,{pos:T.getStart(S),end:R.end})}else{let T=ML(R,273);YF(_,S,T)}}function h(_,S,R,T){let{parent:W}=T;if(W.kind===300){_.deleteNodeRange(R,qd(W,21,R),qd(W,22,R));return}if(W.declarations.length!==1){q1e(_,S,R,T);return}let V=W.parent;switch(V.kind){case 251:case 250:_.replaceNode(R,T,me.createObjectLiteralExpression());break;case 249:YF(_,R,W);break;case 244:YF(_,R,V,{leadingTriviaOption:Xm(V)?2:3});break;default:pe.assertNever(V)}}})(n4t||(n4t={}));function YF(s,c,g,d={leadingTriviaOption:1}){let h=VU(c,g,d),_=jz(c,g,d);s.deleteRange(c,{pos:h,end:_})}function q1e(s,c,g,d){let h=pe.checkDefined(Im.SmartIndenter.getContainingList(d,g)),_=fP(h,d);if(pe.assert(_!==-1),h.length===1){YF(s,g,d);return}pe.assert(!c.has(d),"Deleting a node twice"),c.add(d),s.deleteRange(g,{pos:t4t(g,d),end:_===h.length-1?jz(g,d,{}):wPs(g,d,h[_-1],h[_+1])})}var Im={};o(Im,{FormattingContext:()=>tpn,FormattingRequestKind:()=>epn,RuleAction:()=>rpn,RuleFlags:()=>npn,SmartIndenter:()=>DN,anyContext:()=>ist,createTextRangeWithKind:()=>cst,formatDocument:()=>SWs,formatNodeGivenIndentation:()=>DWs,formatOnClosingCurly:()=>EWs,formatOnEnter:()=>_Ws,formatOnOpeningCurly:()=>bWs,formatOnSemicolon:()=>yWs,formatSelection:()=>vWs,getAllRules:()=>ipn,getFormatContext:()=>AWs,getFormattingScanner:()=>i4t,getIndentationString:()=>m4t,getRangeOfEnclosingComment:()=>Rpn});var epn=(s=>(s[s.FormatDocument=0]="FormatDocument",s[s.FormatSelection=1]="FormatSelection",s[s.FormatOnEnter=2]="FormatOnEnter",s[s.FormatOnSemicolon=3]="FormatOnSemicolon",s[s.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",s[s.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",s))(epn||{}),tpn=class{constructor(s,c,g){this.sourceFile=s,this.formattingRequestKind=c,this.options=g}updateContext(s,c,g,d,h){this.currentTokenSpan=pe.checkDefined(s),this.currentTokenParent=pe.checkDefined(c),this.nextTokenSpan=pe.checkDefined(g),this.nextTokenParent=pe.checkDefined(d),this.contextNode=pe.checkDefined(h),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let s=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=s===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(s){let c=this.sourceFile.getLineAndCharacterOfPosition(s.getStart(this.sourceFile)).line,g=this.sourceFile.getLineAndCharacterOfPosition(s.getEnd()).line;return c===g}BlockIsOnOneLine(s){let c=qd(s,19,this.sourceFile),g=qd(s,20,this.sourceFile);if(c&&g){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,h=this.sourceFile.getLineAndCharacterOfPosition(g.getStart(this.sourceFile)).line;return d===h}return!1}},GPs=wb(99,!1,0),FPs=wb(99,!1,1);function i4t(s,c,g,d,h){let _=c===1?FPs:GPs;_.setText(s),_.resetTokenState(g);let S=!0,R,T,W,V,M,ee=h({advance:re,readTokenInfo:We,readEOFTokenRange:$e,isOnToken:Ye,isOnEOF:Tt,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>S,skipToEndOf:Qe,skipToStartOf:mt,getTokenFullStart:()=>M?.token.pos??_.getTokenStart(),getStartPos:()=>M?.token.pos??_.getTokenStart()});return M=void 0,_.setText(void 0),ee;function re(){M=void 0,_.getTokenFullStart()!==g?S=!!T&&Ei(T).kind===4:_.scan(),R=void 0,T=void 0;let _t=_.getTokenFullStart();for(;_t(s[s.None=0]="None",s[s.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",s[s.StopProcessingTokenActions=2]="StopProcessingTokenActions",s[s.InsertSpace=4]="InsertSpace",s[s.InsertNewLine=8]="InsertNewLine",s[s.DeleteSpace=16]="DeleteSpace",s[s.DeleteToken=32]="DeleteToken",s[s.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",s[s.StopAction=3]="StopAction",s[s.ModifySpaceAction=28]="ModifySpaceAction",s[s.ModifyTokenAction=96]="ModifyTokenAction",s))(rpn||{}),npn=(s=>(s[s.None=0]="None",s[s.CanDeleteNewLines=1]="CanDeleteNewLines",s))(npn||{});function ipn(){let s=[];for(let Ue=0;Ue<=166;Ue++)Ue!==1&&s.push(Ue);function c(...Ue){return{tokens:s.filter($e=>!Ue.some(Ye=>Ye===$e)),isSpecific:!1}}let g={tokens:s,isSpecific:!1},d=dpe([...s,3]),h=dpe([...s,1]),_=opn(83,166),S=opn(30,79),R=[103,104,165,130,142,152],T=[46,47,55,54],W=[9,10,80,21,23,19,110,105],V=[80,21,110,105],M=[80,22,24,105],ee=[80,21,110,105],re=[80,22,24,105],ge=[2,3],Ie=[80,...Lrt],_e=d,Ee=dpe([80,32,3,86,95,102]),Ne=dpe([22,3,92,113,98,93,85]),Te=[Fa("IgnoreBeforeComment",g,ge,ist,1),Fa("IgnoreAfterLineComment",2,g,ist,1),Fa("NotSpaceBeforeColon",g,59,[ml,nWe,lpn],16),Fa("SpaceAfterColon",59,g,[ml,nWe,qPs],4),Fa("NoSpaceBeforeQuestionMark",g,58,[ml,nWe,lpn],16),Fa("SpaceAfterQuestionMarkInConditionalOperator",58,g,[ml,PPs],4),Fa("NoSpaceAfterQuestionMark",58,g,[ml,VPs],16),Fa("NoSpaceBeforeDot",g,[25,29],[ml,gWs],16),Fa("NoSpaceAfterDot",[25,29],g,[ml],16),Fa("NoSpaceBetweenImportParenInImportType",102,21,[ml,jPs],16),Fa("NoSpaceAfterUnaryPrefixOperator",T,W,[ml,nWe],16),Fa("NoSpaceAfterUnaryPreincrementOperator",46,V,[ml],16),Fa("NoSpaceAfterUnaryPredecrementOperator",47,ee,[ml],16),Fa("NoSpaceBeforeUnaryPostincrementOperator",M,46,[ml,vpn],16),Fa("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[ml,vpn],16),Fa("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[ml,JP],4),Fa("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[ml,JP],4),Fa("SpaceAfterAddWhenFollowedByPreincrement",40,46,[ml,JP],4),Fa("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[ml,JP],4),Fa("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[ml,JP],4),Fa("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[ml,JP],4),Fa("NoSpaceAfterCloseBrace",20,[28,27],[ml],16),Fa("NewLineBeforeCloseBraceInBlockContext",d,20,[gpn],8),Fa("SpaceAfterCloseBrace",20,c(22),[ml,MPs],4),Fa("SpaceBetweenCloseBraceAndElse",20,93,[ml],4),Fa("SpaceBetweenCloseBraceAndWhile",20,117,[ml],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[ml,hpn],16),Fa("SpaceAfterConditionalClosingParen",22,23,[iWe],4),Fa("NoSpaceBetweenFunctionKeywordAndStar",100,42,[ppn],16),Fa("SpaceAfterStarInGeneratorDeclaration",42,80,[ppn],4),Fa("SpaceAfterFunctionInFuncDecl",100,g,[PU],4),Fa("NewLineAfterOpenBraceInBlockContext",19,g,[gpn],8),Fa("SpaceAfterGetSetInMember",[139,153],80,[PU],4),Fa("NoSpaceBetweenYieldKeywordAndStar",127,42,[ml,Spn],16),Fa("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],g,[ml,Spn],4),Fa("NoSpaceBetweenReturnAndSemicolon",107,27,[ml],16),Fa("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],g,[ml],4),Fa("SpaceAfterLetConstInVariableDeclaration",[121,87],g,[ml,tWs],4),Fa("NoSpaceBeforeOpenParenInFuncCall",g,21,[ml,QPs,XPs],16),Fa("SpaceBeforeBinaryKeywordOperator",g,R,[ml,JP],4),Fa("SpaceAfterBinaryKeywordOperator",R,g,[ml,JP],4),Fa("SpaceAfterVoidOperator",116,g,[ml,oWs],4),Fa("SpaceBetweenAsyncAndOpenParen",134,21,[KPs,ml],4),Fa("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[ml],4),Fa("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[ml],16),Fa("SpaceBeforeJsxAttribute",g,80,[zPs,ml],4),Fa("SpaceBeforeSlashInJsxOpeningElement",g,44,[ypn,ml],4),Fa("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[ypn,ml],16),Fa("NoSpaceBeforeEqualInJsxAttribute",g,64,[Cpn,ml],16),Fa("NoSpaceAfterEqualInJsxAttribute",64,g,[Cpn,ml],16),Fa("NoSpaceBeforeJsxNamespaceColon",80,59,[_pn],16),Fa("NoSpaceAfterJsxNamespaceColon",59,80,[_pn],16),Fa("NoSpaceAfterModuleImport",[144,149],21,[ml],16),Fa("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],g,[ml],4),Fa("SpaceBeforeCertainTypeScriptKeywords",g,[96,119,161],[ml],4),Fa("SpaceAfterModuleName",11,19,[rWs],4),Fa("SpaceBeforeArrow",g,39,[ml],4),Fa("SpaceAfterArrow",39,g,[ml],4),Fa("NoSpaceAfterEllipsis",26,80,[ml],16),Fa("NoSpaceAfterOptionalParameters",58,[22,28],[ml,nWe],16),Fa("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[ml,nWs],16),Fa("NoSpaceBeforeOpenAngularBracket",Ie,30,[ml,sWe],16),Fa("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[ml,sWe],16),Fa("NoSpaceAfterOpenAngularBracket",30,g,[ml,sWe],16),Fa("NoSpaceBeforeCloseAngularBracket",g,32,[ml,sWe],16),Fa("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[ml,sWe,OPs,sWs],16),Fa("SpaceBeforeAt",[22,80],60,[ml],4),Fa("NoSpaceAfterAt",60,g,[ml],16),Fa("SpaceAfterDecorator",g,[128,80,95,90,86,126,125,123,124,139,153,23,42],[eWs],4),Fa("NoSpaceBeforeNonNullAssertionOperator",g,54,[ml,aWs],16),Fa("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[ml,iWs],16),Fa("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[ml],4)],Ze=[Fa("SpaceAfterConstructor",137,21,[AS("insertSpaceAfterConstructor"),ml],4),Fa("NoSpaceAfterConstructor",137,21,[NN("insertSpaceAfterConstructor"),ml],16),Fa("SpaceAfterComma",28,g,[AS("insertSpaceAfterCommaDelimiter"),ml,g4t,JPs,UPs],4),Fa("NoSpaceAfterComma",28,g,[NN("insertSpaceAfterCommaDelimiter"),ml,g4t],16),Fa("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[AS("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),PU],4),Fa("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[NN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),PU],16),Fa("SpaceAfterKeywordInControl",_,21,[AS("insertSpaceAfterKeywordsInControlFlowStatements"),iWe],4),Fa("NoSpaceAfterKeywordInControl",_,21,[NN("insertSpaceAfterKeywordsInControlFlowStatements"),iWe],16),Fa("SpaceAfterOpenParen",21,g,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("SpaceBeforeCloseParen",g,22,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("SpaceBetweenOpenParens",21,21,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("NoSpaceBetweenParens",21,22,[ml],16),Fa("NoSpaceAfterOpenParen",21,g,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],16),Fa("NoSpaceBeforeCloseParen",g,22,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],16),Fa("SpaceAfterOpenBracket",23,g,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],4),Fa("SpaceBeforeCloseBracket",g,24,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],4),Fa("NoSpaceBetweenBrackets",23,24,[ml],16),Fa("NoSpaceAfterOpenBracket",23,g,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],16),Fa("NoSpaceBeforeCloseBracket",g,24,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],16),Fa("SpaceAfterOpenBrace",19,g,[cpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),upn],4),Fa("SpaceBeforeCloseBrace",g,20,[cpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),upn],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[ml,hpn],16),Fa("NoSpaceAfterOpenBrace",19,g,[s4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),ml],16),Fa("NoSpaceBeforeCloseBrace",g,20,[s4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),ml],16),Fa("SpaceBetweenEmptyBraceBrackets",19,20,[AS("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[s4t("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),ml],16),Fa("SpaceAfterTemplateHeadAndMiddle",[16,17],g,[AS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),mpn],4,1),Fa("SpaceBeforeTemplateMiddleAndTail",g,[17,18],[AS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),ml],4),Fa("NoSpaceAfterTemplateHeadAndMiddle",[16,17],g,[NN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),mpn],16,1),Fa("NoSpaceBeforeTemplateMiddleAndTail",g,[17,18],[NN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),ml],16),Fa("SpaceAfterOpenBraceInJsxExpression",19,g,[AS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ost],4),Fa("SpaceBeforeCloseBraceInJsxExpression",g,20,[AS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ost],4),Fa("NoSpaceAfterOpenBraceInJsxExpression",19,g,[NN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ost],16),Fa("NoSpaceBeforeCloseBraceInJsxExpression",g,20,[NN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ost],16),Fa("SpaceAfterSemicolonInFor",27,g,[AS("insertSpaceAfterSemicolonInForStatements"),ml,a4t],4),Fa("NoSpaceAfterSemicolonInFor",27,g,[NN("insertSpaceAfterSemicolonInForStatements"),ml,a4t],16),Fa("SpaceBeforeBinaryOperator",g,S,[AS("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],4),Fa("SpaceAfterBinaryOperator",S,g,[AS("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],4),Fa("NoSpaceBeforeBinaryOperator",g,S,[NN("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],16),Fa("NoSpaceAfterBinaryOperator",S,g,[NN("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],16),Fa("SpaceBeforeOpenParenInFuncDecl",g,21,[AS("insertSpaceBeforeFunctionParenthesis"),ml,PU],4),Fa("NoSpaceBeforeOpenParenInFuncDecl",g,21,[NN("insertSpaceBeforeFunctionParenthesis"),ml,PU],16),Fa("NewLineBeforeOpenBraceInControl",Ne,19,[AS("placeOpenBraceOnNewLineForControlBlocks"),iWe,u4t],8,1),Fa("NewLineBeforeOpenBraceInFunction",_e,19,[AS("placeOpenBraceOnNewLineForFunctions"),PU,u4t],8,1),Fa("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[AS("placeOpenBraceOnNewLineForFunctions"),fpn,u4t],8,1),Fa("SpaceAfterTypeAssertion",32,g,[AS("insertSpaceAfterTypeAssertion"),ml,d4t],4),Fa("NoSpaceAfterTypeAssertion",32,g,[NN("insertSpaceAfterTypeAssertion"),ml,d4t],16),Fa("SpaceBeforeTypeAnnotation",g,[58,59],[AS("insertSpaceBeforeTypeAnnotation"),ml,c4t],4),Fa("NoSpaceBeforeTypeAnnotation",g,[58,59],[NN("insertSpaceBeforeTypeAnnotation"),ml,c4t],16),Fa("NoOptionalSemicolon",27,h,[apn("semicolons","remove"),lWs],32),Fa("OptionalSemicolon",g,h,[apn("semicolons","insert"),uWs],64)],We=[Fa("NoSpaceBeforeSemicolon",g,27,[ml],16),Fa("SpaceBeforeOpenBraceInControl",Ne,19,[o4t("placeOpenBraceOnNewLineForControlBlocks"),iWe,A4t,l4t],4,1),Fa("SpaceBeforeOpenBraceInFunction",_e,19,[o4t("placeOpenBraceOnNewLineForFunctions"),PU,sst,A4t,l4t],4,1),Fa("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[o4t("placeOpenBraceOnNewLineForFunctions"),fpn,A4t,l4t],4,1),Fa("NoSpaceBeforeComma",g,28,[ml],16),Fa("NoSpaceBeforeOpenBracket",c(134,84),23,[ml],16),Fa("NoSpaceAfterCloseBracket",24,g,[ml,$Ps],16),Fa("SpaceAfterSemicolon",27,g,[ml],4),Fa("SpaceBetweenForAndAwaitKeyword",99,135,[ml],4),Fa("SpaceBetweenDotDotDotAndTypeName",26,Ie,[ml],16),Fa("SpaceBetweenStatements",[22,92,93,84],g,[ml,g4t,ZPs],4),Fa("SpaceAfterTryCatchFinally",[113,85,98],19,[ml],4)];return[...Te,...Ze,...We]}function Fa(s,c,g,d,h,_=0){return{leftTokenRange:spn(c),rightTokenRange:spn(g),rule:{debugName:s,context:d,action:h,flags:_}}}function dpe(s){return{tokens:s,isSpecific:!0}}function spn(s){return typeof s=="number"?dpe([s]):Ki(s)?dpe(s):s}function opn(s,c,g=[]){let d=[];for(let h=s;h<=c;h++)k(g,h)||d.push(h);return dpe(d)}function apn(s,c){return g=>g.options&&g.options[s]===c}function AS(s){return c=>c.options&&Da(c.options,s)&&!!c.options[s]}function s4t(s){return c=>c.options&&Da(c.options,s)&&!c.options[s]}function NN(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]}function o4t(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]||c.TokensAreOnSameLine()}function cpn(s){return c=>!c.options||!Da(c.options,s)||!!c.options[s]}function a4t(s){return s.contextNode.kind===249}function ZPs(s){return!a4t(s)}function JP(s){switch(s.contextNode.kind){case 227:return s.contextNode.operatorToken.kind!==28;case 228:case 195:case 235:case 282:case 277:case 183:case 193:case 194:case 239:return!0;case 209:case 266:case 272:case 278:case 261:case 170:case 307:case 173:case 172:return s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 250:case 169:return s.currentTokenSpan.kind===103||s.nextTokenSpan.kind===103||s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 251:return s.currentTokenSpan.kind===165||s.nextTokenSpan.kind===165}return!1}function nWe(s){return!JP(s)}function lpn(s){return!c4t(s)}function c4t(s){let c=s.contextNode.kind;return c===173||c===172||c===170||c===261||lP(c)}function LPs(s){return pi(s.contextNode)&&s.contextNode.questionToken}function VPs(s){return!LPs(s)}function PPs(s){return s.contextNode.kind===228||s.contextNode.kind===195}function l4t(s){return s.TokensAreOnSameLine()||sst(s)}function upn(s){return s.contextNode.kind===207||s.contextNode.kind===201||WPs(s)}function u4t(s){return sst(s)&&!(s.NextNodeAllOnSameLine()||s.NextNodeBlockIsOnOneLine())}function gpn(s){return Apn(s)&&!(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function WPs(s){return Apn(s)&&(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function Apn(s){return dpn(s.contextNode)}function sst(s){return dpn(s.nextTokenParent)}function dpn(s){if(Ipn(s))return!0;switch(s.kind){case 242:case 270:case 211:case 269:return!0}return!1}function PU(s){switch(s.contextNode.kind){case 263:case 175:case 174:case 178:case 179:case 180:case 219:case 177:case 220:case 265:return!0}return!1}function OPs(s){return!PU(s)}function ppn(s){return s.contextNode.kind===263||s.contextNode.kind===219}function fpn(s){return Ipn(s.contextNode)}function Ipn(s){switch(s.kind){case 264:case 232:case 265:case 267:case 188:case 268:case 279:case 280:case 273:case 276:return!0}return!1}function MPs(s){switch(s.currentTokenParent.kind){case 264:case 268:case 267:case 300:case 269:case 256:return!0;case 242:{let c=s.currentTokenParent.parent;if(!c||c.kind!==220&&c.kind!==219)return!0}}return!1}function iWe(s){switch(s.contextNode.kind){case 246:case 256:case 249:case 250:case 251:case 248:case 259:case 247:case 255:case 300:return!0;default:return!1}}function hpn(s){return s.contextNode.kind===211}function HPs(s){return s.contextNode.kind===214}function YPs(s){return s.contextNode.kind===215}function QPs(s){return HPs(s)||YPs(s)}function XPs(s){return s.currentTokenSpan.kind!==28}function JPs(s){return s.nextTokenSpan.kind!==24}function UPs(s){return s.nextTokenSpan.kind!==22}function KPs(s){return s.contextNode.kind===220}function jPs(s){return s.contextNode.kind===206}function ml(s){return s.TokensAreOnSameLine()&&s.contextNode.kind!==12}function mpn(s){return s.contextNode.kind!==12}function g4t(s){return s.contextNode.kind!==285&&s.contextNode.kind!==289}function ost(s){return s.contextNode.kind===295||s.contextNode.kind===294}function zPs(s){return s.nextTokenParent.kind===292||s.nextTokenParent.kind===296&&s.nextTokenParent.parent.kind===292}function Cpn(s){return s.contextNode.kind===292}function qPs(s){return s.nextTokenParent.kind!==296}function _pn(s){return s.nextTokenParent.kind===296}function ypn(s){return s.contextNode.kind===286}function $Ps(s){return!PU(s)&&!sst(s)}function eWs(s){return s.TokensAreOnSameLine()&&p1(s.contextNode)&&bpn(s.currentTokenParent)&&!bpn(s.nextTokenParent)}function bpn(s){for(;s&&un(s);)s=s.parent;return s&&s.kind===171}function tWs(s){return s.currentTokenParent.kind===262&&s.currentTokenParent.getStart(s.sourceFile)===s.currentTokenSpan.pos}function A4t(s){return s.formattingRequestKind!==2}function rWs(s){return s.contextNode.kind===268}function nWs(s){return s.contextNode.kind===188}function iWs(s){return s.contextNode.kind===181}function Epn(s,c){if(s.kind!==30&&s.kind!==32)return!1;switch(c.kind){case 184:case 217:case 266:case 264:case 232:case 265:case 263:case 219:case 220:case 175:case 174:case 180:case 181:case 214:case 215:case 234:return!0;default:return!1}}function sWe(s){return Epn(s.currentTokenSpan,s.currentTokenParent)||Epn(s.nextTokenSpan,s.nextTokenParent)}function d4t(s){return s.contextNode.kind===217}function sWs(s){return!d4t(s)}function oWs(s){return s.currentTokenSpan.kind===116&&s.currentTokenParent.kind===223}function Spn(s){return s.contextNode.kind===230&&s.contextNode.expression!==void 0}function aWs(s){return s.contextNode.kind===236}function vpn(s){return!cWs(s)}function cWs(s){switch(s.contextNode.kind){case 246:case 249:case 250:case 251:case 247:case 248:return!0;default:return!1}}function lWs(s){let c=s.nextTokenSpan.kind,g=s.nextTokenSpan.pos;if(zJ(c)){let _=s.nextTokenParent===s.currentTokenParent?fQ(s.currentTokenParent,ji(s.currentTokenParent,S=>!S.parent),s.sourceFile):s.nextTokenParent.getFirstToken(s.sourceFile);if(!_)return!0;c=_.kind,g=_.getStart(s.sourceFile)}let d=s.sourceFile.getLineAndCharacterOfPosition(s.currentTokenSpan.pos).line,h=s.sourceFile.getLineAndCharacterOfPosition(g).line;return d===h?c===20||c===1:c===27&&s.currentTokenSpan.kind===27?!0:c===241||c===27?!1:s.contextNode.kind===265||s.contextNode.kind===266?!ss(s.currentTokenParent)||!!s.currentTokenParent.type||c!==21:pi(s.currentTokenParent)?!s.currentTokenParent.initializer:s.currentTokenParent.kind!==249&&s.currentTokenParent.kind!==243&&s.currentTokenParent.kind!==241&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==229&&c!==16&&c!==15&&c!==25}function uWs(s){return sPe(s.currentTokenSpan.end,s.currentTokenParent,s.sourceFile)}function gWs(s){return!jo(s.contextNode)||!mC(s.contextNode.expression)||s.contextNode.expression.getText().includes(".")}function AWs(s,c){return{options:s,getRules:dWs(),host:c}}var p4t;function dWs(){return p4t===void 0&&(p4t=fWs(ipn())),p4t}function pWs(s){let c=0;return s&1&&(c|=28),s&2&&(c|=96),s&28&&(c|=28),s&96&&(c|=96),c}function fWs(s){let c=IWs(s);return g=>{let d=c[Bpn(g.currentTokenSpan.kind,g.nextTokenSpan.kind)];if(d){let h=[],_=0;for(let S of d){let R=~pWs(_);S.action&R&&ue(S.context,T=>T(g))&&(h.push(S),_|=S.action)}if(h.length)return h}}}function IWs(s){let c=new Array(f4t*f4t),g=new Array(c.length);for(let d of s){let h=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let _ of d.leftTokenRange.tokens)for(let S of d.rightTokenRange.tokens){let R=Bpn(_,S),T=c[R];T===void 0&&(T=c[R]=[]),hWs(T,d.rule,h,g,R)}}return c}function Bpn(s,c){return pe.assert(s<=166&&c<=166,"Must compute formatting context from tokens"),s*f4t+c}var ppe=5,ast=31,f4t=167,$1e=(s=>(s[s.StopRulesSpecific=0]="StopRulesSpecific",s[s.StopRulesAny=ppe*1]="StopRulesAny",s[s.ContextRulesSpecific=ppe*2]="ContextRulesSpecific",s[s.ContextRulesAny=ppe*3]="ContextRulesAny",s[s.NoContextRulesSpecific=ppe*4]="NoContextRulesSpecific",s[s.NoContextRulesAny=ppe*5]="NoContextRulesAny",s))($1e||{});function hWs(s,c,g,d,h){let _=c.action&3?g?0:$1e.StopRulesAny:c.context!==ist?g?$1e.ContextRulesSpecific:$1e.ContextRulesAny:g?$1e.NoContextRulesSpecific:$1e.NoContextRulesAny,S=d[h]||0;s.splice(mWs(S,_),0,c),d[h]=CWs(S,_)}function mWs(s,c){let g=0;for(let d=0;d<=c;d+=ppe)g+=s&ast,s>>=ppe;return g}function CWs(s,c){let g=(s>>c&ast)+1;return pe.assert((g&ast)===g,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),s&~(ast<pe.formatSyntaxKind(g)}),d}function _Ws(s,c,g){let d=c.getLineAndCharacterOfPosition(s).line;if(d===0)return[];let h=vY(d,c);for(;Iu(c.text.charCodeAt(h));)h--;Cl(c.text.charCodeAt(h))&&h--;let _={pos:OD(d-1,c),end:h+1};return oWe(_,c,g,2)}function yWs(s,c,g){let d=I4t(s,27,c);return wpn(h4t(d),c,g,3)}function bWs(s,c,g){let d=I4t(s,19,c);if(!d)return[];let h=d.parent,_=h4t(h),S={pos:PB(_.getStart(c),c),end:s};return oWe(S,c,g,4)}function EWs(s,c,g){let d=I4t(s,20,c);return wpn(h4t(d),c,g,5)}function SWs(s,c){let g={pos:0,end:s.text.length};return oWe(g,s,c,0)}function vWs(s,c,g,d){let h={pos:PB(s,g),end:c};return oWe(h,g,d,1)}function I4t(s,c,g){let d=Gm(s,g);return d&&d.kind===c&&s===d.getEnd()?d:void 0}function h4t(s){let c=s;for(;c&&c.parent&&c.parent.end===s.end&&!BWs(c.parent,c);)c=c.parent;return c}function BWs(s,c){switch(s.kind){case 264:case 265:return cy(s.members,c);case 268:let g=s.body;return!!g&&g.kind===269&&cy(g.statements,c);case 308:case 242:case 269:return cy(s.statements,c);case 300:return cy(s.block.statements,c)}return!1}function wWs(s,c){return g(c);function g(d){let h=Lu(d,_=>CAe(_.getStart(c),_.end,s)&&_);if(h){let _=g(h);if(_)return _}return d}}function TWs(s,c){if(!s.length)return h;let g=s.filter(_=>Hde(c,_.start,_.start+_.length)).sort((_,S)=>_.start-S.start);if(!g.length)return h;let d=0;return _=>{for(;;){if(d>=g.length)return!1;let S=g[d];if(_.end<=S.start)return!1;if(PVe(_.pos,_.end,S.start,S.start+S.length))return!0;d++}};function h(){return!1}}function RWs(s,c,g){let d=s.getStart(g);if(d===c.pos&&s.end===c.end)return d;let h=Gm(c.pos,g);return!h||h.end>=c.pos?s.pos:h.end}function NWs(s,c,g){let d=-1,h;for(;s;){let _=g.getLineAndCharacterOfPosition(s.getStart(g)).line;if(d!==-1&&_!==d)break;if(DN.shouldIndentChildNode(c,s,h,g))return c.indentSize;d=_,h=s,s=s.parent}return 0}function DWs(s,c,g,d,h,_){let S={pos:s.pos,end:s.end};return i4t(c.text,g,S.pos,S.end,R=>Tpn(S,s,d,h,R,_,1,T=>!1,c))}function wpn(s,c,g,d){if(!s)return[];let h={pos:PB(s.getStart(c),c),end:s.end};return oWe(h,c,g,d)}function oWe(s,c,g,d){let h=wWs(s,c);return i4t(c.text,c.languageVariant,RWs(h,s,c),s.end,_=>Tpn(s,h,DN.getIndentationForNode(h,s,c,g.options),NWs(h,g.options,c),_,g,d,TWs(c.parseDiagnostics,s),c))}function Tpn(s,c,g,d,h,{options:_,getRules:S,host:R},T,W,V){var M;let ee=new tpn(V,T,_),re,ge,Ie,_e,Ee,Ne=-1,Te=[];if(h.advance(),h.isOnToken()){let dt=V.getLineAndCharacterOfPosition(c.getStart(V)).line,pr=dt;p1(c)&&(pr=V.getLineAndCharacterOfPosition(Hre(c,V)).line),Tt(c,c,dt,pr,g,d)}let Ze=h.getCurrentLeadingTrivia();if(Ze){let dt=DN.nodeWillIndentChild(_,c,void 0,V,!1)?g+_.indentSize:g;ot(Ze,dt,!0,pr=>{mt(pr,V.getLineAndCharacterOfPosition(pr.pos),c,c,void 0),_t(pr.pos,dt,!1)}),_.trimTrailingWhitespace!==!1&&Gt(Ze)}if(ge&&h.getTokenFullStart()>=s.end){let dt=h.isOnEOF()?h.readEOFTokenRange():h.isOnToken()?h.readTokenInfo(c).token:void 0;if(dt&&dt.pos===re){let pr=((M=Gm(dt.end,V,c))==null?void 0:M.parent)||Ie;ht(dt,V.getLineAndCharacterOfPosition(dt.pos).line,pr,ge,_e,Ie,pr,void 0)}}return Te;function We(dt,pr,st,ir,zt){if(Hde(ir,dt,pr)||l1e(ir,dt,pr)){if(zt!==-1)return zt}else{let Ht=V.getLineAndCharacterOfPosition(dt).line,Br=PB(dt,V),mn=DN.findFirstNonWhitespaceColumn(Br,dt,V,_);if(Ht!==st||dt===mn){let jn=DN.getBaseIndentation(_);return jn>mn?jn:mn}}return-1}function Ue(dt,pr,st,ir,zt,Ht){let Br=DN.shouldIndentChildNode(_,dt)?_.indentSize:0;return Ht===pr?{indentation:pr===Ee?Ne:zt.getIndentation(),delta:Math.min(_.indentSize,zt.getDelta(dt)+Br)}:st===-1?dt.kind===21&&pr===Ee?{indentation:Ne,delta:zt.getDelta(dt)}:DN.childStartsOnTheSameLineWithElseInIfStatement(ir,dt,pr,V)||DN.childIsUnindentedBranchOfConditionalExpression(ir,dt,pr,V)||DN.argumentStartsOnSameLineAsPreviousArgument(ir,dt,pr,V)?{indentation:zt.getIndentation(),delta:Br}:{indentation:zt.getIndentation()+zt.getDelta(dt),delta:Br}:{indentation:st,delta:Br}}function $e(dt){if(LB(dt)){let pr=de(dt.modifiers,Ig,Se(dt.modifiers,So));if(pr)return pr.kind}switch(dt.kind){case 264:return 86;case 265:return 120;case 263:return 100;case 267:return 267;case 178:return 139;case 179:return 153;case 175:if(dt.asteriskToken)return 42;case 173:case 170:let pr=Il(dt);if(pr)return pr.kind}}function Ye(dt,pr,st,ir){return{getIndentationForComment:(Br,mn,jn)=>{switch(Br){case 20:case 24:case 22:return st+Ht(jn)}return mn!==-1?mn:st},getIndentationForToken:(Br,mn,jn,Zi)=>!Zi&&zt(Br,mn,jn)?st+Ht(jn):st,getIndentation:()=>st,getDelta:Ht,recomputeIndentation:(Br,mn)=>{DN.shouldIndentChildNode(_,mn,dt,V)&&(st+=Br?_.indentSize:-_.indentSize,ir=DN.shouldIndentChildNode(_,dt)?_.indentSize:0)}};function zt(Br,mn,jn){switch(mn){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(jn.kind){case 287:case 288:case 286:return!1}break;case 23:case 24:if(jn.kind!==201)return!1;break}return pr!==Br&&!(p1(dt)&&mn===$e(dt))}function Ht(Br){return DN.nodeWillIndentChild(_,dt,Br,V,!0)?ir:0}}function Tt(dt,pr,st,ir,zt,Ht){if(!Hde(s,dt.getStart(V),dt.getEnd()))return;let Br=Ye(dt,st,zt,Ht),mn=pr;for(Lu(dt,An=>{jn(An,-1,dt,Br,st,ir,!1)},An=>{Zi(An,dt,st,Br)});h.isOnToken()&&h.getTokenFullStart()Math.min(dt.end,s.end))break;Ns(An,dt,Br,dt)}function jn(An,si,ks,Ic,su,Zn,ya,Gl){if(pe.assert(!sp(An)),sf(An)||yge(ks,An))return si;let ba=An.getStart(V),Wo=V.getLineAndCharacterOfPosition(ba).line,hc=Wo;p1(An)&&(hc=V.getLineAndCharacterOfPosition(Hre(An,V)).line);let yr=-1;if(ya&&cy(s,ks)&&(yr=We(ba,An.end,su,s,si),yr!==-1&&(si=yr)),!Hde(s,An.pos,An.end))return An.ends.end)return si;if(lo.token.end>ba){lo.token.pos>ba&&h.skipToStartOf(An);break}Ns(lo,dt,Ic,dt)}if(!h.isOnToken()||h.getTokenFullStart()>=s.end)return si;if(BL(An)){let lo=h.readTokenInfo(An);if(An.kind!==12)return pe.assert(lo.token.end===An.end,"Token end is child end"),Ns(lo,dt,Ic,An),si}let hn=An.kind===171?Wo:Zn,Oi=Ue(An,Wo,yr,dt,Ic,hn);return Tt(An,mn,Wo,hc,Oi.indentation,Oi.delta),mn=dt,Gl&&ks.kind===210&&si===-1&&(si=Oi.indentation),si}function Zi(An,si,ks,Ic){pe.assert(tN(An)),pe.assert(!sp(An));let su=kWs(si,An),Zn=Ic,ya=ks;if(!Hde(s,An.pos,An.end)){An.endAn.pos)break;if(Wo.token.kind===su){ya=V.getLineAndCharacterOfPosition(Wo.token.pos).line,Ns(Wo,si,Ic,si);let hc;if(Ne!==-1)hc=Ne;else{let yr=PB(Wo.token.pos,V);hc=DN.findFirstNonWhitespaceColumn(yr,Wo.token.pos,V,_)}Zn=Ye(si,ks,hc,_.indentSize)}else Ns(Wo,si,Ic,si)}let Gl=-1;for(let Wo=0;Wo_t(Oi.pos,hn,!1))}hc!==-1&&yr&&(_t(An.token.pos,hc,Gl===1),Ee=Wo.line,Ne=hc)}h.advance(),mn=si}}function ot(dt,pr,st,ir){for(let zt of dt){let Ht=cy(s,zt);switch(zt.kind){case 3:Ht&&Ke(zt,pr,!st),st=!1;break;case 2:st&&Ht&&ir(zt),st=!1;break;case 4:st=!0;break}}return st}function Qe(dt,pr,st,ir){for(let zt of dt)if(XVe(zt.kind)&&cy(s,zt)){let Ht=V.getLineAndCharacterOfPosition(zt.pos);mt(zt,Ht,pr,st,ir)}}function mt(dt,pr,st,ir,zt){let Ht=W(dt),Br=0;if(!Ht)if(ge)Br=ht(dt,pr.line,st,ge,_e,Ie,ir,zt);else{let mn=V.getLineAndCharacterOfPosition(s.pos);Pt(mn.line,pr.line)}return ge=dt,re=dt.end,Ie=st,_e=pr.line,Br}function ht(dt,pr,st,ir,zt,Ht,Br,mn){ee.updateContext(ir,Ht,dt,st,Br);let jn=S(ee),Zi=ee.options.trimTrailingWhitespace!==!1,Ns=0;return jn?Q(jn,An=>{if(Ns=Gr(An,ir,zt,dt,pr),mn)switch(Ns){case 2:st.getStart(V)===dt.pos&&mn.recomputeIndentation(!1,Br);break;case 1:st.getStart(V)===dt.pos&&mn.recomputeIndentation(!0,Br);break;default:pe.assert(Ns===0)}Zi=Zi&&!(An.action&16)&&An.flags!==1}):Zi=Zi&&dt.kind!==1,pr!==zt&&Zi&&Pt(zt,pr,ir),Ns}function _t(dt,pr,st){let ir=m4t(pr,_);if(st)tr(dt,0,ir);else{let zt=V.getLineAndCharacterOfPosition(dt),Ht=OD(zt.line,V);(pr!==Rt(Ht,zt.character)||Lt(ir,Ht))&&tr(Ht,zt.character,ir)}}function Rt(dt,pr){let st=0;for(let ir=0;ir0){let Zn=m4t(su,_);tr(ks,Ic.character,Zn)}else Dt(ks,Ic.character)}}function Pt(dt,pr,st){for(let ir=dt;irHt)continue;let Br=_r(zt,Ht);Br!==-1&&(pe.assert(Br===zt||!Iu(V.text.charCodeAt(Br-1))),Dt(Br,Ht+1-Br))}}function _r(dt,pr){let st=pr;for(;st>=dt&&Iu(V.text.charCodeAt(st));)st--;return st!==pr?st+1:-1}function Gt(dt){let pr=ge?ge.end:s.pos;for(let st of dt)XVe(st.kind)&&(prc1e(W,c)||c===W.end&&(W.kind===2||c===s.getFullWidth()))}function kWs(s,c){switch(s.kind){case 177:case 263:case 219:case 175:case 174:case 220:case 180:case 181:case 185:case 186:case 178:case 179:if(s.typeParameters===c)return 30;if(s.parameters===c)return 21;break;case 214:case 215:if(s.typeArguments===c)return 30;if(s.arguments===c)return 21;break;case 264:case 232:case 265:case 266:if(s.typeParameters===c)return 30;break;case 184:case 216:case 187:case 234:case 206:if(s.typeArguments===c)return 30;break;case 188:return 19}return 0}function xWs(s){switch(s){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var lst,e2e,t2e;function m4t(s,c){if((!lst||lst.tabSize!==c.tabSize||lst.indentSize!==c.indentSize)&&(lst={tabSize:c.tabSize,indentSize:c.indentSize},e2e=t2e=void 0),c.convertTabsToSpaces){let d,h=Math.floor(s/c.indentSize),_=s%c.indentSize;return t2e||(t2e=[]),t2e[h]===void 0?(d=d1e(" ",c.indentSize*h),t2e[h]=d):d=t2e[h],_?d+d1e(" ",_):d}else{let d=Math.floor(s/c.tabSize),h=s-d*c.tabSize,_;return e2e||(e2e=[]),e2e[d]===void 0?e2e[d]=_=d1e(" ",d):_=e2e[d],h?_+d1e(" ",h):_}}var DN;(s=>{let c;(Ke=>{Ke[Ke.Unknown=-1]="Unknown"})(c||(c={}));function g(Ke,Pt,_r,Gt=!1){if(Ke>Pt.text.length)return R(_r);if(_r.indentStyle===0)return 0;let nt=Gm(Ke,Pt,void 0,!0),Dt=Rpn(Pt,Ke,nt||null);if(Dt&&Dt.kind===3)return d(Pt,Ke,_r,Dt);if(!nt)return R(_r);if(Drt(nt.kind)&&nt.getStart(Pt)<=Ke&&Ke=0),nt<=Dt)return mt(OD(Dt,Ke),Pt,Ke,_r);let tr=OD(nt,Ke),{column:ur,character:Gr}=Qe(tr,Pt,Ke,_r);return ur===0?ur:Ke.text.charCodeAt(tr+Gr)===42?ur-1:ur}function h(Ke,Pt,_r){let Gt=Pt;for(;Gt>0;){let Dt=Ke.text.charCodeAt(Gt);if(!dc(Dt))break;Gt--}let nt=PB(Gt,Ke);return mt(nt,Gt,Ke,_r)}function _(Ke,Pt,_r,Gt,nt,Dt){let tr,ur=_r;for(;ur;){if(Srt(ur,Pt,Ke)&&Rt(Dt,ur,tr,Ke,!0)){let dt=ge(ur,Ke),pr=re(_r,ur,Gt,Ke),st=pr!==0?nt&&pr===2?Dt.indentSize:0:Gt!==dt.line?Dt.indentSize:0;return T(ur,dt,void 0,st,Ke,!0,Dt)}let Gr=Ye(ur,Ke,Dt,!0);if(Gr!==-1)return Gr;tr=ur,ur=ur.parent}return R(Dt)}function S(Ke,Pt,_r,Gt){let nt=_r.getLineAndCharacterOfPosition(Ke.getStart(_r));return T(Ke,nt,Pt,0,_r,!1,Gt)}s.getIndentationForNode=S;function R(Ke){return Ke.baseIndentSize||0}s.getBaseIndentation=R;function T(Ke,Pt,_r,Gt,nt,Dt,tr){var ur;let Gr=Ke.parent;for(;Gr;){let dt=!0;if(_r){let zt=Ke.getStart(nt);dt=zt<_r.pos||zt>_r.end}let pr=W(Gr,Ke,nt),st=pr.line===Pt.line||_e(Gr,Ke,Pt.line,nt);if(dt){let zt=(ur=Te(Ke,nt))==null?void 0:ur[0],Ht=!!zt&&ge(zt,nt).line>pr.line,Br=Ye(Ke,nt,tr,Ht);if(Br!==-1||(Br=M(Ke,Gr,Pt,st,nt,tr),Br!==-1))return Br+Gt}Rt(tr,Gr,Ke,nt,Dt)&&!st&&(Gt+=tr.indentSize);let ir=Ie(Gr,Ke,Pt.line,nt);Ke=Gr,Gr=Ke.parent,Pt=ir?nt.getLineAndCharacterOfPosition(Ke.getStart(nt)):pr}return Gt+R(tr)}function W(Ke,Pt,_r){let Gt=Te(Pt,_r),nt=Gt?Gt.pos:Ke.getStart(_r);return _r.getLineAndCharacterOfPosition(nt)}function V(Ke,Pt,_r){let Gt=q5t(Ke);return Gt&&Gt.listItemIndex>0?Tt(Gt.list.getChildren(),Gt.listItemIndex-1,Pt,_r):-1}function M(Ke,Pt,_r,Gt,nt,Dt){return(jh(Ke)||vJ(Ke))&&(Pt.kind===308||!Gt)?ot(_r,nt,Dt):-1}let ee;(Ke=>{Ke[Ke.Unknown=0]="Unknown",Ke[Ke.OpenBrace=1]="OpenBrace",Ke[Ke.CloseBrace=2]="CloseBrace"})(ee||(ee={}));function re(Ke,Pt,_r,Gt){let nt=fQ(Ke,Pt,Gt);if(!nt)return 0;if(nt.kind===19)return 1;if(nt.kind===20){let Dt=ge(nt,Gt).line;return _r===Dt?2:0}return 0}function ge(Ke,Pt){return Pt.getLineAndCharacterOfPosition(Ke.getStart(Pt))}function Ie(Ke,Pt,_r,Gt){if(!(Zl(Ke)&&k(Ke.arguments,Pt)))return!1;let nt=Ke.expression.getEnd();return Ra(Gt,nt).line===_r}s.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ie;function _e(Ke,Pt,_r,Gt){if(Ke.kind===246&&Ke.elseStatement===Pt){let nt=qd(Ke,93,Gt);return pe.assert(nt!==void 0),ge(nt,Gt).line===_r}return!1}s.childStartsOnTheSameLineWithElseInIfStatement=_e;function Ee(Ke,Pt,_r,Gt){if(Lw(Ke)&&(Pt===Ke.whenTrue||Pt===Ke.whenFalse)){let nt=Ra(Gt,Ke.condition.end).line;if(Pt===Ke.whenTrue)return _r===nt;{let Dt=ge(Ke.whenTrue,Gt).line,tr=Ra(Gt,Ke.whenTrue.end).line;return nt===Dt&&tr===_r}}return!1}s.childIsUnindentedBranchOfConditionalExpression=Ee;function Ne(Ke,Pt,_r,Gt){if(av(Ke)){if(!Ke.arguments)return!1;let nt=de(Ke.arguments,Gr=>Gr.pos===Pt.pos);if(!nt)return!1;let Dt=Ke.arguments.indexOf(nt);if(Dt===0)return!1;let tr=Ke.arguments[Dt-1],ur=Ra(Gt,tr.getEnd()).line;if(_r===ur)return!0}return!1}s.argumentStartsOnSameLineAsPreviousArgument=Ne;function Te(Ke,Pt){return Ke.parent&&We(Ke.getStart(Pt),Ke.getEnd(),Ke.parent,Pt)}s.getContainingList=Te;function Ze(Ke,Pt,_r){return Pt&&We(Ke,Ke,Pt,_r)}function We(Ke,Pt,_r,Gt){switch(_r.kind){case 184:return nt(_r.typeArguments);case 211:return nt(_r.properties);case 210:return nt(_r.elements);case 188:return nt(_r.members);case 263:case 219:case 220:case 175:case 174:case 180:case 177:case 186:case 181:return nt(_r.typeParameters)||nt(_r.parameters);case 178:return nt(_r.parameters);case 264:case 232:case 265:case 266:case 346:return nt(_r.typeParameters);case 215:case 214:return nt(_r.typeArguments)||nt(_r.arguments);case 262:return nt(_r.declarations);case 276:case 280:return nt(_r.elements);case 207:case 208:return nt(_r.elements)}function nt(Dt){return Dt&&l1e(Ue(_r,Dt,Gt),Ke,Pt)?Dt:void 0}}function Ue(Ke,Pt,_r){let Gt=Ke.getChildren(_r);for(let nt=1;nt=0&&Pt=0;tr--){if(Ke[tr].kind===28)continue;if(_r.getLineAndCharacterOfPosition(Ke[tr].end).line!==Dt.line)return ot(Dt,_r,Gt);Dt=ge(Ke[tr],_r)}return-1}function ot(Ke,Pt,_r){let Gt=Pt.getPositionOfLineAndCharacter(Ke.line,0);return mt(Gt,Gt+Ke.character,Pt,_r)}function Qe(Ke,Pt,_r,Gt){let nt=0,Dt=0;for(let tr=Ke;trGWs});function GWs(s,c,g){let d=!1;return c.forEach(h=>{let _=ji(Jc(s,h.pos),S=>cy(S,h));_&&Lu(_,function S(R){var T;if(!d){if(Ir(R)&&Hie(h,R.getStart(s))){let W=g.resolveName(R.text,R,-1,!1);if(W&&W.declarations){for(let V of W.declarations)if(Ont(V)||R.text&&s.symbol&&((T=s.symbol.exports)!=null&&T.has(R.escapedText))){d=!0;return}}}R.forEachChild(S)}})}),d}var gst={};o(gst,{pasteEditsProvider:()=>ZWs});var FWs="providePostPasteEdits";function ZWs(s,c,g,d,h,_,S,R){return{edits:xo.ChangeTracker.with({host:h,formatContext:S,preferences:_},W=>LWs(s,c,g,d,h,_,S,R,W)),fixId:FWs}}function LWs(s,c,g,d,h,_,S,R,T){let W;c.length!==g.length&&(W=c.length===1?c[0]:c.join(OF(S.host,S.options)));let V=[],M=s.text;for(let re=g.length-1;re>=0;re--){let{pos:ge,end:Ie}=g[re];M=W?M.slice(0,ge)+W+M.slice(Ie):M.slice(0,ge)+c[re]+M.slice(Ie)}let ee;pe.checkDefined(h.runWithTemporaryFileUpdate).call(h,s.fileName,M,(re,ge,Ie)=>{if(ee=x0.createImportAdder(Ie,re,_,h),d?.range){pe.assert(d.range.length===c.length),d.range.forEach(Ze=>{let We=d.file.statements,Ue=Se(We,Ye=>Ye.end>Ze.pos);if(Ue===-1)return;let $e=Se(We,Ye=>Ye.end>=Ze.end,Ue);$e!==-1&&Ze.end<=We[$e].getStart()&&$e--,V.push(...We.slice(Ue,$e===-1?We.length:$e+1))}),pe.assertIsDefined(ge,"no original program found");let _e=ge.getTypeChecker(),Ee=VWs(d),Ne=EPe(d.file,V,_e,FHt(Ie,V,_e),Ee),Te=!dnt(s.fileName,ge,h,!!d.file.commonJsModuleIndicator);wHt(d.file,Ne.targetFileImportsFromOldFile,T,Te),LHt(d.file,Ne.oldImportsNeededByTargetFile,Ne.targetFileImportsFromOldFile,_e,re,ee)}else{let _e={sourceFile:Ie,program:ge,cancellationToken:R,host:h,preferences:_,formatContext:S},Ee=0;g.forEach((Ne,Te)=>{let Ze=Ne.end-Ne.pos,We=W??c[Te],Ue=Ne.pos+Ee,$e=Ue+We.length,Ye={pos:Ue,end:$e};Ee+=We.length-Ze;let Tt=ji(Jc(_e.sourceFile,Ye.pos),ot=>cy(ot,Ye));Tt&&Lu(Tt,function ot(Qe){if(Ir(Qe)&&Hie(Ye,Qe.getStart(Ie))&&!re?.getTypeChecker().resolveName(Qe.text,Qe,-1,!1))return ee.addImportForUnresolvedIdentifier(_e,Qe,!0);Qe.forEachChild(ot)})})}ee.writeFixes(T,_1(d?d.file:s,_))}),ee.hasFixes()&&g.forEach((re,ge)=>{T.replaceRangeWithText(s,{pos:re.pos,end:re.end},W??c[ge])})}function VWs({file:s,range:c}){let g=c[0].pos,d=c[c.length-1].end,h=Jc(s,g),_=Yde(s,g)??Jc(s,d);return{pos:Ir(h)&&g<=h.getStart(s)?h.getFullStart():g,end:Ir(_)&&d===_.getEnd()?xo.getAdjustedEndPosition(s,_,{}):d}}var Npn={};o(Npn,{ANONYMOUS:()=>nnt,AccessFlags:()=>Ty,AssertionLevel:()=>El,AssignmentDeclarationKind:()=>Ry,AssignmentKind:()=>CZe,Associativity:()=>BZe,BreakpointResolver:()=>tit,BuilderFileEmit:()=>G3t,BuilderProgramKind:()=>M3t,BuilderState:()=>nR,CallHierarchy:()=>Mz,CharacterCodes:()=>J2,CheckFlags:()=>sB,CheckMode:()=>Bet,ClassificationType:()=>prt,ClassificationTypeNames:()=>Y5t,CommentDirectiveType:()=>JS,Comparison:()=>b,CompletionInfoFlags:()=>L5t,CompletionTriggerKind:()=>Art,Completions:()=>Jz,ContainerFlags:()=>pOt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>KS,Diagnostics:()=>Z,DocumentHighlights:()=>mPe,ElementFlags:()=>tf,EmitFlags:()=>cB,EmitHint:()=>ty,EmitOnly:()=>Q2,EndOfLineState:()=>W5t,ExitStatus:()=>ut,ExportKind:()=>GMt,Extension:()=>ey,ExternalEmitHelpers:()=>JR,FileIncludeKind:()=>$0,FilePreprocessingDiagnosticsKind:()=>fw,FileSystemEntryKind:()=>r1,FileWatcherEventKind:()=>yb,FindAllReferences:()=>Kp,FlattenLevel:()=>ZOt,FlowFlags:()=>Yp,ForegroundColorEscapeSequences:()=>S3t,FunctionFlags:()=>SZe,GeneratedIdentifierFlags:()=>od,GetLiteralTextFlags:()=>A7,GoToDefinition:()=>ise,HighlightSpanKind:()=>F5t,IdentifierNameMap:()=>xie,ImportKind:()=>xMt,ImportsNotUsedAsValues:()=>zS,IndentStyle:()=>Z5t,IndexFlags:()=>US,IndexKind:()=>Qm,InferenceFlags:()=>R_,InferencePriority:()=>mb,InlayHintKind:()=>G5t,InlayHints:()=>Xit,InternalEmitFlags:()=>RD,InternalNodeBuilderFlags:()=>vg,InternalSymbolName:()=>RT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>g5t,JSDocParsingMode:()=>t1,JsDoc:()=>n5,JsTyping:()=>YP,JsxEmit:()=>XR,JsxFlags:()=>Ym,JsxReferenceKind:()=>$I,LanguageFeatureMinimumTarget:()=>Rd,LanguageServiceMode:()=>k5t,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>$1,ListFormat:()=>$E,LogLevel:()=>fb,MapCode:()=>Jit,MemberOverrideStatus:()=>ar,ModifierFlags:()=>JE,ModuleDetectionKind:()=>zE,ModuleInstanceState:()=>AOt,ModuleKind:()=>jS,ModuleResolutionKind:()=>z_,ModuleSpecifierEnding:()=>fLe,NavigateTo:()=>iHt,NavigationBar:()=>oHt,NewLineKind:()=>qE,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>wy,NodeFactoryFlags:()=>Ube,NodeFlags:()=>AC,NodeResolutionFeatures:()=>eOt,ObjectFlags:()=>j_,OperationCanceledException:()=>By,OperatorPrecedence:()=>wZe,OrganizeImports:()=>i5,OrganizeImportsMode:()=>grt,OuterExpressionKinds:()=>cF,OutliningElementsCollector:()=>Kit,OutliningSpanKind:()=>V5t,OutputFileType:()=>P5t,PackageJsonAutoImportPreference:()=>D5t,PackageJsonDependencyGroup:()=>N5t,PatternMatchKind:()=>bnt,PollingInterval:()=>r_,PollingWatchKind:()=>aB,PragmaKindFlags:()=>N_,PredicateSemantics:()=>K_,PreparePasteEdits:()=>ust,PrivateIdentifierKind:()=>QLe,ProcessLevel:()=>WOt,ProgramUpdateLevel:()=>C3t,QuotePreference:()=>AMt,RegularExpressionFlags:()=>UE,RelationComparisonResult:()=>vy,Rename:()=>tWe,ScriptElementKind:()=>M5t,ScriptElementKindModifier:()=>H5t,ScriptKind:()=>X2,ScriptSnapshot:()=>NVe,ScriptTarget:()=>kT,SemanticClassificationFormat:()=>x5t,SemanticMeaning:()=>Q5t,SemicolonPreference:()=>drt,SignatureCheckMode:()=>wet,SignatureFlags:()=>$A,SignatureHelp:()=>J1e,SignatureInfo:()=>x3t,SignatureKind:()=>BA,SmartSelectionRange:()=>qit,SnippetKind:()=>Iw,StatisticType:()=>_5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>uI,SymbolDisplay:()=>i9,SymbolDisplayPartKind:()=>kVe,SymbolFlags:()=>TT,SymbolFormatFlags:()=>Rf,SyntaxKind:()=>Ld,Ternary:()=>Cb,ThrottledCancellationToken:()=>pYt,TokenClass:()=>O5t,TokenFlags:()=>KE,TransformFlags:()=>up,TypeFacts:()=>vet,TypeFlags:()=>jE,TypeFormatFlags:()=>Ng,TypeMapKind:()=>zf,TypePredicateKind:()=>Th,TypeReferenceSerializationKind:()=>oE,UnionReduction:()=>Jr,UpToDateStatusType:()=>i5t,VarianceFlags:()=>NT,Version:()=>O,VersionRange:()=>gt,WatchDirectoryFlags:()=>q1,WatchDirectoryKind:()=>DT,WatchFileKind:()=>oB,WatchLogLevel:()=>y3t,WatchType:()=>jm,accessPrivateIdentifier:()=>FOt,addEmitFlags:()=>Gw,addEmitHelper:()=>$Y,addEmitHelpers:()=>hN,addInternalEmitFlags:()=>N3,addNodeFactoryPatcher:()=>e$e,addObjectAllocatorPatcher:()=>Vqe,addRange:()=>Or,addRelatedInfo:()=>lg,addSyntheticLeadingComment:()=>JT,addSyntheticTrailingComment:()=>Iz,addToSeen:()=>Zy,advancedAsyncSuperHelper:()=>DF,affectsDeclarationPathOptionDeclarations:()=>vWt,affectsEmitOptionDeclarations:()=>SWt,allKeysStartWithDot:()=>F9e,altDirectorySeparator:()=>Eb,and:()=>dh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>ELe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Ju,arrayToNumericMap:()=>Vs,assertType:()=>nE,assign:()=>Wt,asyncSuperHelper:()=>uie,attachFileToDiagnostics:()=>XL,base64decode:()=>XZe,base64encode:()=>sbe,binarySearch:()=>Wc,binarySearchKey:()=>Sg,bindSourceFile:()=>fOt,breakIntoCharacterSpans:()=>jMt,breakIntoWordSpans:()=>zMt,buildLinkParts:()=>_Mt,buildOpts:()=>_Ee,buildOverload:()=>xpn,bundlerModuleNameResolver:()=>tOt,canBeConvertedToAsync:()=>Tnt,canHaveDecorators:()=>oQ,canHaveExportModifier:()=>jne,canHaveFlowNode:()=>UJ,canHaveIllegalDecorators:()=>x$e,canHaveIllegalModifiers:()=>sWt,canHaveIllegalType:()=>I$r,canHaveIllegalTypeParameters:()=>iWt,canHaveJSDoc:()=>dne,canHaveLocals:()=>WI,canHaveModifiers:()=>LB,canHaveModuleSpecifier:()=>fZe,canHaveSymbol:()=>mE,canIncludeBindAndCheckDiagnostics:()=>gU,canJsonReportNoInputFiles:()=>BEe,canProduceDiagnostics:()=>LEe,canUsePropertyAccess:()=>Zbe,canWatchAffectingLocation:()=>j3t,canWatchAtTypes:()=>K3t,canWatchDirectoryOrFile:()=>Ttt,canWatchDirectoryOrFilePath:()=>qEe,cartesianProduct:()=>XE,cast:()=>Ma,chainBundle:()=>rR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>K2,changeCompilerHostLikeToUseCache:()=>Fde,changeExtension:()=>fN,changeFullExtension:()=>i_,changesAffectModuleResolution:()=>NJ,changesAffectingProgramStructure:()=>Ige,characterCodeToRegularExpressionFlag:()=>Wg,childIsDecorated:()=>HJ,classElementOrClassElementParameterIsDecorated:()=>mye,classHasClassThisAssignment:()=>Met,classHasDeclaredOrExplicitlyAssignedName:()=>Het,classHasExplicitlyAssignedName:()=>U9e,classOrConstructorParameterIsDecorated:()=>Rx,classicNameResolver:()=>uOt,classifier:()=>mYt,cleanExtendedConfigCache:()=>eVe,clear:()=>St,clearMap:()=>Fy,clearSharedExtendedConfigFileWatcher:()=>ntt,climbPastPropertyAccess:()=>FVe,clone:()=>Eg,cloneCompilerOptions:()=>xrt,closeFileWatcher:()=>dv,closeFileWatcherOf:()=>Cv,codefix:()=>x0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>Vet,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>TWt,commentPragmas:()=>e1,commonOptionsWithBuild:()=>f9e,compact:()=>Hr,compareBooleans:()=>Ml,compareDataObjects:()=>yAe,compareDiagnostics:()=>X7,compareEmitHelpers:()=>JLe,compareNumberOfDirectorySeparators:()=>Xne,comparePaths:()=>qf,comparePathsCaseInsensitive:()=>pB,comparePathsCaseSensitive:()=>Cx,comparePatternKeys:()=>het,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Wa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>so,compareTextSpans:()=>bn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>cLe,compilerOptionsAffectEmit:()=>aLe,compilerOptionsAffectSemanticDiagnostics:()=>Cbe,compilerOptionsDidYouMeanDiagnostics:()=>C9e,compilerOptionsIndicateEsModules:()=>Prt,computeCommonSourceDirectoryOfFilenames:()=>b3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Po,computeLineStarts:()=>cA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>btt,computeSuggestionDiagnostics:()=>vnt,computedOptions:()=>J7,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Zne,consumesNodeCoreModules:()=>lPe,contains:()=>k,containsIgnoredPath:()=>sz,containsObjectRestOrSpread:()=>IEe,containsParseError:()=>pP,containsPath:()=>Jh,convertCompilerOptionsForTelemetry:()=>HWt,convertCompilerOptionsFromJson:()=>ven,convertJsonOption:()=>vU,convertToBase64:()=>ibe,convertToJson:()=>EEe,convertToObject:()=>LWt,convertToOptionsWithAbsolutePaths:()=>E9e,convertToRelativePath:()=>r2,convertToTSConfig:()=>$$e,convertTypeAcquisitionFromJson:()=>Ben,copyComments:()=>xU,copyEntries:()=>a7,copyLeadingComments:()=>Kie,copyProperties:()=>GA,copyTrailingAsLeadingComments:()=>C1e,copyTrailingComments:()=>zde,couldStartTrivia:()=>tv,countWhere:()=>ct,createAbstractBuilder:()=>Grn,createAccessorPropertyBackingField:()=>Z$e,createAccessorPropertyGetRedirector:()=>dWt,createAccessorPropertySetRedirector:()=>pWt,createBaseNodeFactory:()=>FLe,createBinaryExpressionTrampoline:()=>u9e,createBuilderProgram:()=>Ett,createBuilderProgramUsingIncrementalBuildInfo:()=>X3t,createBuilderStatusReporter:()=>bVe,createCacheableExportInfoMap:()=>pnt,createCachedDirectoryStructureHost:()=>q9e,createClassifier:()=>uin,createCommentDirectivesMap:()=>Ege,createCompilerDiagnostic:()=>Nf,createCompilerDiagnosticForInvalidCustomType:()=>RWt,createCompilerDiagnosticFromMessageChain:()=>vAe,createCompilerHost:()=>E3t,createCompilerHostFromProgramHost:()=>Htt,createCompilerHostWorker:()=>tVe,createDetachedDiagnostic:()=>QY,createDiagnosticCollection:()=>EF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>A3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Bw,createDiagnosticForNodeInSourceFile:()=>_E,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Gz,createDocumentPositionMapper:()=>NOt,createDocumentRegistry:()=>PMt,createDocumentRegistryInternal:()=>Cnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>wtt,createEmitHelperFactory:()=>XLe,createEmptyExports:()=>cEe,createEvaluator:()=>kLe,createExpressionForJsxElement:()=>qPt,createExpressionForJsxFragment:()=>$Pt,createExpressionForObjectLiteralElementLike:()=>eWt,createExpressionForPropertyName:()=>w$e,createExpressionFromEntityName:()=>lEe,createExternalHelpersImportDeclarationIfNeeded:()=>N$e,createFileDiagnostic:()=>qh,createFileDiagnosticFromMessageChain:()=>ze,createFlowNode:()=>rk,createForOfBindingStatement:()=>B$e,createFutureSourceFile:()=>fPe,createGetCanonicalFileName:()=>_d,createGetIsolatedDeclarationErrors:()=>l3t,createGetSourceFile:()=>ctt,createGetSymbolAccessibilityDiagnosticForNode:()=>J3,createGetSymbolAccessibilityDiagnosticForNodeName:()=>c3t,createGetSymbolWalker:()=>IOt,createIncrementalCompilerHost:()=>yVe,createIncrementalProgram:()=>n5t,createJsxFactoryExpression:()=>v$e,createLanguageService:()=>fYt,createLanguageServiceSourceFile:()=>GPe,createMemberAccessForPropertyName:()=>EU,createModeAwareCache:()=>Tie,createModeAwareCacheKey:()=>_de,createModeMismatchDetails:()=>l7,createModuleNotFoundChain:()=>kJ,createModuleResolutionCache:()=>Rie,createModuleResolutionLoader:()=>ptt,createModuleResolutionLoaderUsingGlobalCache:()=>e5t,createModuleSpecifierResolutionHost:()=>z3,createMultiMap:()=>dl,createNameResolver:()=>UAe,createNodeConverters:()=>ZLe,createNodeFactory:()=>iie,createOptionNameMap:()=>h9e,createOverload:()=>Ast,createPackageJsonImportFilter:()=>zie,createPackageJsonInfo:()=>ont,createParenthesizerRules:()=>pv,createPatternMatcher:()=>YMt,createPrinter:()=>MP,createPrinterWithDefaults:()=>h3t,createPrinterWithRemoveComments:()=>gQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>m3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>rtt,createProgram:()=>KEe,createProgramDiagnostics:()=>D3t,createProgramHost:()=>Ytt,createPropertyNameNodeForIdentifierOrLiteral:()=>Kne,createQueue:()=>oA,createRange:()=>Gy,createRedirectedBuilderProgram:()=>Btt,createResolutionCache:()=>Ntt,createRuntimeTypeSerializer:()=>QOt,createScanner:()=>wb,createSemanticDiagnosticsBuilderProgram:()=>xrn,createSet:()=>oo,createSolutionBuilder:()=>c5t,createSolutionBuilderHost:()=>o5t,createSolutionBuilderWithWatch:()=>l5t,createSolutionBuilderWithWatchHost:()=>a5t,createSortedArray:()=>Ya,createSourceFile:()=>vz,createSourceMapGenerator:()=>vOt,createSourceMapSource:()=>n$e,createSuperAccessVariableStatement:()=>j9e,createSymbolTable:()=>qu,createSymlinkCache:()=>ybe,createSyntacticTypeNodeBuilder:()=>w5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>A1e,createTextChangeFromStartLength:()=>UVe,createTextChangeRange:()=>$2,createTextRangeFromNode:()=>Zrt,createTextRangeFromSpan:()=>JVe,createTextSpan:()=>zd,createTextSpanFromBounds:()=>wA,createTextSpanFromNode:()=>Oy,createTextSpanFromRange:()=>t9,createTextSpanFromStringLiteralLikeContent:()=>Frt,createTextWriter:()=>wne,createTokenRange:()=>QL,createTypeChecker:()=>EOt,createTypeReferenceDirectiveResolutionCache:()=>x9e,createTypeReferenceResolutionLoader:()=>iVe,createWatchCompilerHost:()=>Yrn,createWatchCompilerHostOfConfigFile:()=>Qtt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Xtt,createWatchFactory:()=>Mtt,createWatchHost:()=>Ott,createWatchProgram:()=>Jtt,createWatchStatusReporter:()=>Dtt,createWriteFileMeasuringIO:()=>ltt,declarationNameToString:()=>Wd,decodeMappings:()=>Fet,decodedTextSpanIntersectsWith:()=>IE,deduplicate:()=>io,defaultHoverMaximumTruncationLength:()=>dge,defaultInitCompilerOptions:()=>Q$r,defaultMaximumTruncationLength:()=>EY,diagnosticCategoryName:()=>_b,diagnosticToString:()=>IQ,diagnosticsEqualityComparer:()=>BAe,directoryProbablyExists:()=>f1,directorySeparator:()=>ag,displayPart:()=>SE,displayPartsToString:()=>k1e,disposeEmitNodes:()=>Ku,documentSpansEqual:()=>Xrt,dumpTracingLegend:()=>jf,elementAt:()=>Cg,elideNodes:()=>AWt,emitDetachedComments:()=>FZe,emitFiles:()=>ett,emitFilesAndReportErrors:()=>hVe,emitFilesAndReportErrorsAndGetExitStatus:()=>Wtt,emitModuleKindIsNonNodeESM:()=>One,emitNewLineBeforeLeadingCommentOfPosition:()=>Kye,emitResolverSkipsTypeChecking:()=>$et,emitSkippedWithNoDiagnostics:()=>htt,emptyArray:()=>E,emptyFileSystemEntries:()=>Tbe,emptyMap:()=>N,emptyOptions:()=>VB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Am,ensureScriptKind:()=>GAe,ensureTrailingDirectorySeparator:()=>hp,entityNameToString:()=>oy,enumerateInsertsAndDeletes:()=>q0,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Mp,equateStringsCaseSensitive:()=>MA,equateValues:()=>yg,escapeJsxAttributeString:()=>Oye,escapeLeadingUnderscores:()=>Ap,escapeNonAsciiString:()=>Sne,escapeSnippetText:()=>xP,escapeString:()=>YT,escapeTemplateSubstitution:()=>Pye,evaluatorResult:()=>$h,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>zAe,executeCommandLine:()=>Enn,expandPreOrPostfixIncrementOrDecrementExpression:()=>s9e,explainFiles:()=>Ftt,explainIfFileIsRedirectAndImpliedFormat:()=>Ztt,exportAssignmentIsAlias:()=>hne,expressionResultIsUnused:()=>vLe,extend:()=>OA,extensionFromPath:()=>tz,extensionIsTS:()=>WAe,extensionsNotSupportingExtensionlessResolution:()=>PAe,externalHelpersModuleNameText:()=>PD,factory:()=>me,fileExtensionIs:()=>aA,fileExtensionIsOneOf:()=>fu,fileIncludeReasonToDiagnostics:()=>Ptt,fileShouldUseJavaScriptRequire:()=>dnt,filter:()=>Me,filterMutate:()=>je,filterSemanticDiagnostics:()=>cVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>YA,findChildOfKind:()=>qd,findComputedPropertyNameCacheAssignment:()=>g9e,findConfigFile:()=>ott,findConstructorDeclaration:()=>zY,findContainingList:()=>WVe,findDiagnosticForNode:()=>NMt,findFirstNonJsxWhitespaceToken:()=>$5t,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>q5t,findModifier:()=>Xie,findNextToken:()=>fQ,findPackageJson:()=>RMt,findPackageJsons:()=>snt,findPrecedingMatchingToken:()=>QVe,findPrecedingToken:()=>Gm,findSuperStatementIndexPath:()=>Y9e,findTokenOnLeftOfPosition:()=>Yde,findUseStrictPrologue:()=>R$e,first:()=>ma,firstDefined:()=>X,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>lnt,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>iA,fixupCompilerOptions:()=>Rnt,flatMap:()=>er,flatMapIterator:()=>xt,flatMapToMutable:()=>vt,flatten:()=>Nr,flattenCommaList:()=>fWt,flattenDestructuringAssignment:()=>TU,flattenDestructuringBinding:()=>uQ,flattenDiagnosticMessageText:()=>wN,forEach:()=>F,forEachAncestor:()=>Ew,forEachAncestorDirectory:()=>pE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>vN,forEachChild:()=>Lu,forEachChildRecursively:()=>Sz,forEachDynamicImportOrRequireCall:()=>eie,forEachEmittedFile:()=>Ket,forEachEnclosingBlockScopeContainer:()=>kge,forEachEntry:()=>Dh,forEachExternalModuleToImportFrom:()=>Int,forEachImportClauseDeclaration:()=>IZe,forEachKey:()=>SB,forEachLeadingCommentRange:()=>GD,forEachNameInAccessChainWalkingLeft:()=>qZe,forEachNameOfDefaultExport:()=>hPe,forEachOptionsSyntaxByName:()=>qAe,forEachProjectReference:()=>gz,forEachPropertyAssignment:()=>WJ,forEachResolvedProjectReference:()=>rie,forEachReturnStatement:()=>yF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>dF,forEachTsConfigPropArray:()=>qre,forEachUnique:()=>Urt,forEachYieldExpression:()=>tZe,formatColorAndReset:()=>AQ,formatDiagnostic:()=>utt,formatDiagnostics:()=>arn,formatDiagnosticsWithColorAndContext:()=>w3t,formatGeneratedName:()=>M3,formatGeneratedNamePart:()=>Sie,formatLocation:()=>gtt,formatMessage:()=>XY,formatStringFromArgs:()=>dN,formatting:()=>Im,generateDjb2Hash:()=>ry,generateTSConfig:()=>VWt,getAdjustedReferenceLocation:()=>wrt,getAdjustedRenameLocation:()=>MVe,getAliasDeclarationFromName:()=>Nye,getAllAccessorDeclarations:()=>BP,getAllDecoratorsOfClass:()=>Wet,getAllDecoratorsOfClassElement:()=>X9e,getAllJSDocTags:()=>dJ,getAllJSDocTagsOfKind:()=>nye,getAllKeys:()=>mI,getAllProjectOutputs:()=>z9e,getAllSuperTypeNodes:()=>R7,getAllowImportingTsExtensions:()=>rLe,getAllowJSCompilerOption:()=>TF,getAllowSyntheticDefaultImports:()=>JY,getAncestor:()=>ML,getAnyExtensionFromPath:()=>gE,getAreDeclarationMapsEnabled:()=>wAe,getAssignedExpandoInitializer:()=>FY,getAssignedName:()=>CB,getAssignmentDeclarationKind:()=>nI,getAssignmentDeclarationPropertyAccessKind:()=>XJ,getAssignmentTargetKind:()=>QD,getAutomaticTypeDirectiveNames:()=>D9e,getBaseFileName:()=>gp,getBinaryOperatorPrecedence:()=>Ene,getBuildInfo:()=>ttt,getBuildInfoFileVersionMap:()=>vtt,getBuildInfoText:()=>f3t,getBuildOrderFromAnyBuildOrder:()=>e1e,getBuilderCreationParameters:()=>AVe,getBuilderFileEmit:()=>HP,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>iI,getClassExtendsHeritageElement:()=>OL,getClassLikeDeclarationOfSymbol:()=>AN,getCombinedLocalAndExportSymbolFlags:()=>sU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>dm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ad,getCommentRange:()=>DB,getCommonSourceDirectory:()=>Gde,getCommonSourceDirectoryOfConfig:()=>RU,getCompilerOptionValue:()=>K7,getConditions:()=>PP,getConfigFileParsingDiagnostics:()=>dQ,getConstantValue:()=>VLe,getContainerFlags:()=>Cet,getContainerNode:()=>kU,getContainingClass:()=>hC,getContainingClassExcludingClassDecorators:()=>Mge,getContainingClassStaticBlock:()=>oZe,getContainingFunction:()=>A1,getContainingFunctionDeclaration:()=>Oge,getContainingFunctionOrClassStaticBlock:()=>$re,getContainingNodeArray:()=>BLe,getContainingObjectLiteralElement:()=>x1e,getContextualTypeFromParent:()=>nPe,getContextualTypeFromParentOrAncestorTypeNode:()=>OVe,getDeclarationDiagnostics:()=>u3t,getDeclarationEmitExtensionForPath:()=>oAe,getDeclarationEmitOutputFilePath:()=>DZe,getDeclarationEmitOutputFilePathWorker:()=>Tne,getDeclarationFileExtension:()=>d9e,getDeclarationFromName:()=>T7,getDeclarationModifierFlagsFromSymbol:()=>u2,getDeclarationOfKind:()=>Cp,getDeclarationsOfKind:()=>pge,getDeclaredExpandoInitializer:()=>E7,getDecorators:()=>Rb,getDefaultCompilerOptions:()=>xPe,getDefaultFormatCodeSettings:()=>DVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>IYt,getDefaultLikeExportInfo:()=>IPe,getDefaultLikeExportNameFromDeclaration:()=>unt,getDefaultResolutionModeForFileWorker:()=>aVe,getDiagnosticText:()=>Zb,getDiagnosticsWithinSpan:()=>DMt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>Rtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>q3t,getDocumentPositionMapper:()=>Snt,getDocumentSpansEqualityComparer:()=>Jrt,getESModuleInterop:()=>kw,getEditsForFileRename:()=>OMt,getEffectiveBaseTypeNode:()=>BB,getEffectiveConstraintOfTypeParameter:()=>n3,getEffectiveContainerForJSDocTemplateTag:()=>qge,getEffectiveImplementsTypeNodes:()=>jJ,getEffectiveInitializer:()=>ane,getEffectiveJSDocHost:()=>WL,getEffectiveModifierFlags:()=>o_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>WZe,getEffectiveModifierFlagsNoCache:()=>qye,getEffectiveReturnTypeNode:()=>xb,getEffectiveSetAccessorTypeAnnotationNode:()=>Uye,getEffectiveTypeAnnotationNode:()=>kh,getEffectiveTypeParameterDeclarations:()=>ZD,getEffectiveTypeRoots:()=>Cde,getElementOrPropertyAccessArgumentExpressionOrName:()=>zge,getElementOrPropertyAccessName:()=>YD,getElementsOfBindingOrAssignmentPattern:()=>Eie,getEmitDeclarations:()=>Ly,getEmitFlags:()=>tA,getEmitHelpers:()=>zbe,getEmitModuleDetectionKind:()=>nLe,getEmitModuleFormatOfFileWorker:()=>Vde,getEmitModuleKind:()=>i0,getEmitModuleResolutionKind:()=>k_,getEmitScriptTarget:()=>Mg,getEmitStandardClassFields:()=>mbe,getEnclosingBlockScopeContainer:()=>tS,getEnclosingContainer:()=>f7,getEncodedSemanticClassifications:()=>hnt,getEncodedSyntacticClassifications:()=>mnt,getEndLinePosition:()=>vY,getEntityNameFromTypeNode:()=>tne,getEntrypointsFromPackageJsonInfo:()=>pet,getErrorCountForSummary:()=>fVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>xtt,getEscapedTextOfIdentifierOrLiteral:()=>qJ,getEscapedTextOfJsxAttributeName:()=>cz,getEscapedTextOfJsxNamespacedName:()=>oS,getExpandoInitializer:()=>VL,getExportAssignmentExpression:()=>mne,getExportInfoMap:()=>v1e,getExportNeedsImportStarHelper:()=>DOt,getExpressionAssociativity:()=>Lye,getExpressionPrecedence:()=>x7,getExternalHelpersModuleName:()=>gEe,getExternalModuleImportEqualsDeclarationExpression:()=>_7,getExternalModuleName:()=>LY,getExternalModuleNameFromDeclaration:()=>RZe,getExternalModuleNameFromPath:()=>Hye,getExternalModuleNameLiteral:()=>Ez,getExternalModuleRequireArgument:()=>_ye,getFallbackOptions:()=>XEe,getFileEmitOutput:()=>k3t,getFileMatcherPatterns:()=>xAe,getFileNamesFromConfigSpecs:()=>hde,getFileWatcherEventKind:()=>qS,getFilesInErrorForSummary:()=>IVe,getFirstConstructorWithBody:()=>lN,getFirstIdentifier:()=>B0,getFirstNonSpaceCharacterPosition:()=>EMt,getFirstProjectOutput:()=>qet,getFixableErrorSpanExpression:()=>ant,getFormatCodeSettingsForWriting:()=>dPe,getFullWidth:()=>DJ,getFunctionFlags:()=>SI,getHeritageClause:()=>Cne,getHostSignatureFromJSDoc:()=>PL,getIdentifierAutoGenerate:()=>o$e,getIdentifierGeneratedImportReference:()=>YLe,getIdentifierTypeArguments:()=>G3,getImmediatelyInvokedFunctionExpression:()=>ZL,getImpliedNodeFormatForEmitWorker:()=>NU,getImpliedNodeFormatForFile:()=>UEe,getImpliedNodeFormatForFileWorker:()=>oVe,getImportNeedsImportDefaultHelper:()=>Let,getImportNeedsImportStarHelper:()=>M9e,getIndentString:()=>sAe,getInferredLibraryNameResolveFrom:()=>sVe,getInitializedVariables:()=>iU,getInitializerOfBinaryExpression:()=>Eye,getInitializerOfBindingOrAssignmentElement:()=>dEe,getInterfaceBaseTypeNodes:()=>N7,getInternalEmitFlags:()=>g1,getInvokedExpression:()=>Qge,getIsFileExcluded:()=>ZMt,getIsolatedModules:()=>sS,getJSDocAugmentsTag:()=>K6,getJSDocClassTag:()=>bx,getJSDocCommentRanges:()=>pye,getJSDocCommentsAndTags:()=>vye,getJSDocDeprecatedTag:()=>Kh,getJSDocDeprecatedTagNoCache:()=>i2,getJSDocEnumTag:()=>a1,getJSDocHost:()=>bP,getJSDocImplementsTags:()=>uY,getJSDocOverloadTags:()=>wye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>vL,getJSDocParameterTagsNoCache:()=>uJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>yre,getJSDocPublicTagNoCache:()=>Ex,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>hA,getJSDocReturnTag:()=>sv,getJSDocReturnType:()=>AJ,getJSDocRoot:()=>KJ,getJSDocSatisfiesExpressionType:()=>Vbe,getJSDocSatisfiesTag:()=>fF,getJSDocTags:()=>Sx,getJSDocTemplateTag:()=>oP,getJSDocThisTag:()=>Nb,getJSDocType:()=>eN,getJSDocTypeAliasName:()=>k$e,getJSDocTypeAssertionType:()=>yie,getJSDocTypeParameterDeclarations:()=>gAe,getJSDocTypeParameterTags:()=>r3,getJSDocTypeParameterTagsNoCache:()=>U6,getJSDocTypeTag:()=>ov,getJSXImplicitImportBase:()=>Mne,getJSXRuntimeImport:()=>Hne,getJSXTransformEnabled:()=>NAe,getKeyForCompilerOptions:()=>cet,getLanguageVariant:()=>Lne,getLastChild:()=>gbe,getLeadingCommentRanges:()=>fE,getLeadingCommentRangesOfNode:()=>Zge,getLeftmostAccessExpression:()=>oU,getLeftmostExpression:()=>aU,getLibFileNameFromLibReference:()=>Mbe,getLibNameFromLibReference:()=>qY,getLibraryNameFromLibFileName:()=>ftt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>Get,getLineOfLocalPosition:()=>Z7,getLineStartPositionForPosition:()=>PB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>abe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>jZe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>v3,getLinesBetweenRangeEndPositions:()=>KZe,getLiteralText:()=>vge,getLocalNameForExternalImport:()=>bie,getLocalSymbolForExportDefault:()=>W7,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>$Ee,getMappedContextSpan:()=>Krt,getMappedDocumentSpan:()=>ePe,getMappedLocation:()=>Ude,getMatchedFileSpec:()=>Ltt,getMatchedIncludeSpec:()=>Vtt,getMeaningFromDeclaration:()=>xVe,getMeaningFromLocation:()=>DU,getMembersOfDeclaration:()=>Lge,getModeForFileReference:()=>T3t,getModeForResolutionAtIndex:()=>drn,getModeForUsageLocation:()=>dtt,getModifiedTime:()=>bb,getModifiers:()=>$R,getModuleInstanceState:()=>PF,getModuleNameStringLiteralAt:()=>jEe,getModuleSpecifierEndingPreference:()=>ILe,getModuleSpecifierResolverHost:()=>Wrt,getNameForExportedSymbol:()=>uPe,getNameFromImportAttribute:()=>JAe,getNameFromIndexInfo:()=>xge,getNameFromPropertyName:()=>p1e,getNameOfAccessExpression:()=>Abe,getNameOfCompilerOptionValue:()=>b9e,getNameOfDeclaration:()=>Il,getNameOfExpando:()=>yye,getNameOfJSDocTypedef:()=>pF,getNameOfScriptTarget:()=>RAe,getNameOrArgument:()=>lne,getNameTable:()=>eit,getNamespaceDeclarationNode:()=>JJ,getNewLineCharacter:()=>uN,getNewLineKind:()=>S1e,getNewLineOrDefaultFromHost:()=>OF,getNewTargetContainer:()=>cZe,getNextJSDocCommentLocation:()=>Bye,getNodeChildren:()=>E$e,getNodeForGeneratedName:()=>fEe,getNodeId:()=>rd,getNodeKind:()=>pQ,getNodeModifiers:()=>Qde,getNodeModulePathParts:()=>HAe,getNonAssignedNameOfDeclaration:()=>Cw,getNonAssignmentOperatorForCompoundAssignment:()=>wde,getNonAugmentationDeclaration:()=>LJ,getNonDecoratorTokenPosOfNode:()=>Hre,getNonIncrementalBuildInfoRoots:()=>J3t,getNonModifierTokenPosOfNode:()=>Sge,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>KR,getNormalizedPathComponents:()=>AB,getObjectFlags:()=>la,getOperatorAssociativity:()=>Vye,getOperatorPrecedence:()=>bne,getOptionFromName:()=>U$e,getOptionsForLibraryResolution:()=>uet,getOptionsNameMap:()=>Bie,getOptionsSyntaxByArrayElementValue:()=>Hbe,getOptionsSyntaxByValue:()=>xLe,getOrCreateEmitNode:()=>c_,getOrUpdate:()=>cr,getOriginalNode:()=>Dd,getOriginalNodeId:()=>Wy,getOutputDeclarationFileName:()=>xde,getOutputDeclarationFileNameWorker:()=>jet,getOutputExtension:()=>HEe,getOutputFileNames:()=>srn,getOutputJSFileNameWorker:()=>zet,getOutputPathsFor:()=>kde,getOwnEmitOutputFilePath:()=>NZe,getOwnKeys:()=>_g,getOwnValues:()=>Qh,getPackageJsonTypesVersionsPaths:()=>N9e,getPackageNameFromTypesPackageName:()=>Ede,getPackageScopeForPath:()=>bde,getParameterSymbolFromJSDoc:()=>pne,getParentNodeInSpan:()=>I1e,getParseTreeNode:()=>$l,getParsedCommandLineOfConfigFile:()=>yEe,getPathComponents:()=>Np,getPathFromPathComponents:()=>Dm,getPathUpdater:()=>ynt,getPathsBasePath:()=>aAe,getPatternFromSpec:()=>Sbe,getPendingEmitKindWithSeen:()=>gVe,getPositionOfLineAndCharacter:()=>th,getPossibleGenericSignatures:()=>Rrt,getPossibleOriginalInputExtensionForExtension:()=>Yye,getPossibleOriginalInputPathWithoutChangingExt:()=>Qye,getPossibleTypeArgumentsInfo:()=>Nrt,getPreEmitDiagnostics:()=>orn,getPrecedingNonSpaceCharacterPosition:()=>tPe,getPrivateIdentifier:()=>Oet,getProperties:()=>Pet,getProperty:()=>pu,getPropertyAssignmentAliasLikeExpression:()=>EZe,getPropertyNameForPropertyNameNode:()=>_3,getPropertyNameFromType:()=>A2,getPropertyNameOfBindingOrAssignmentElement:()=>D$e,getPropertySymbolFromBindingElement:()=>$Ve,getPropertySymbolsFromContextualType:()=>FPe,getQuoteFromPreference:()=>Mrt,getQuotePreference:()=>_1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>Vz,getReferencedFileLocation:()=>Lde,getRegexFromPattern:()=>zD,getRegularExpressionForWildcard:()=>j7,getRegularExpressionsForWildcards:()=>Yne,getRelativePathFromDirectory:()=>mp,getRelativePathFromFile:()=>i1,getRelativePathToDirectoryOrUrl:()=>Of,getRenameLocation:()=>m1e,getReplacementSpanForContextToken:()=>Grt,getResolutionDiagnostic:()=>Ctt,getResolutionModeOverride:()=>Fie,getResolveJsonModule:()=>NP,getResolvePackageJsonExports:()=>U7,getResolvePackageJsonImports:()=>Pne,getResolvedExternalModuleName:()=>F7,getResolvedModuleFromResolution:()=>xL,getResolvedTypeReferenceDirectiveFromResolution:()=>c7,getRestIndicatorOfBindingOrAssignmentElement:()=>c9e,getRestParameterElementType:()=>fye,getRightMostAssignedExpression:()=>cne,getRootDeclaration:()=>Rw,getRootDirectoryOfResolutionCache:()=>$3t,getRootLength:()=>Wf,getScriptKind:()=>$rt,getScriptKindFromFileName:()=>FAe,getScriptTargetFeatures:()=>Yre,getSelectedEffectiveModifierFlags:()=>MY,getSelectedSyntacticModifierFlags:()=>VZe,getSemanticClassifications:()=>LMt,getSemanticJsxChildren:()=>$J,getSetAccessorTypeAnnotationNode:()=>xZe,getSetAccessorValueParameter:()=>L7,getSetExternalModuleIndicator:()=>Vne,getShebang:()=>mB,getSingleVariableOfVariableStatement:()=>m3,getSnapshotText:()=>Lz,getSnippetElement:()=>qbe,getSourceFileOfModule:()=>FJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>lAe,getSourceFileVersionAsHashFromText:()=>mVe,getSourceFilesToEmit:()=>cAe,getSourceMapRange:()=>XT,getSourceMapper:()=>$Mt,getSourceTextOfNodeFromSourceFile:()=>mF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>OD,getStartPositionOfRange:()=>H7,getStartsOnNewLine:()=>D3,getStaticPropertiesAndClassStaticBlock:()=>Q9e,getStrictOptionValue:()=>a_,getStringComparer:()=>ld,getSubPatternFromSpec:()=>kAe,getSuperCallFromStatement:()=>H9e,getSuperContainer:()=>C7,getSupportedCodeFixes:()=>qnt,getSupportedExtensions:()=>z7,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>q7,getSwitchedType:()=>rnt,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>yne,getSymbolTarget:()=>ent,getSyntacticClassifications:()=>VMt,getSyntacticModifierFlags:()=>Nx,getSyntacticModifierFlagsNoCache:()=>$ye,getSynthesizedDeepClone:()=>JA,getSynthesizedDeepCloneWithReplacements:()=>nie,getSynthesizedDeepClones:()=>o0,getSynthesizedDeepClonesWithReplacements:()=>$Ae,getSyntheticLeadingComments:()=>k3,getSyntheticTrailingComments:()=>hU,getTargetLabel:()=>ZVe,getTargetOfBindingOrAssignmentElement:()=>ZP,getTemporaryModuleResolutionState:()=>yde,getTextOfConstantValue:()=>Bge,getTextOfIdentifierOrLiteral:()=>c2,getTextOfJSDocComment:()=>pJ,getTextOfJsxAttributeName:()=>xw,getTextOfJsxNamespacedName:()=>lz,getTextOfNode:()=>xp,getTextOfNodeFromSourceText:()=>TY,getTextOfPropertyName:()=>hP,getThisContainer:()=>r0,getThisParameter:()=>vP,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>MD,getTokenSourceMapRange:()=>fz,getTouchingPropertyName:()=>Lb,getTouchingToken:()=>Yie,getTrailingCommentRanges:()=>n2,getTrailingSemicolonDeferringWriter:()=>Mye,getTransformers:()=>A3t,getTsBuildInfoEmitOutputFilePath:()=>U3,getTsConfigObjectLiteralExpression:()=>m7,getTsConfigPropArrayElementValue:()=>Wge,getTypeAnnotationNode:()=>GZe,getTypeArgumentOrTypeParameterList:()=>oMt,getTypeKeywordOfTypeOnlyImport:()=>Qrt,getTypeNode:()=>MLe,getTypeNodeIfAccessible:()=>$de,getTypeParameterFromJsDoc:()=>mZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>Z9e,getUILocale:()=>df,getUniqueName:()=>GU,getUniqueSymbolId:()=>bMt,getUseDefineForClassFields:()=>Wne,getWatchErrorSummaryDiagnosticMessage:()=>ktt,getWatchFactory:()=>stt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>Gre,handleNoEmitOptions:()=>mtt,handleWatchOptionsConfigDirTemplateSubstitution:()=>S9e,hasAbstractModifier:()=>wP,hasAccessorModifier:()=>Nw,hasAmbientModifier:()=>zye,hasChangesInResolutions:()=>Wre,hasContextSensitiveParameters:()=>MAe,hasDecorators:()=>p1,hasDocComment:()=>iMt,hasDynamicName:()=>XD,hasEffectiveModifier:()=>Gb,hasEffectiveModifiers:()=>jye,hasEffectiveReadonlyModifier:()=>b3,hasExtension:()=>E0,hasImplementationTSFileExtension:()=>pLe,hasIndexSignature:()=>tnt,hasInferredType:()=>jAe,hasInitializer:()=>WT,hasInvalidEscape:()=>Wye,hasJSDocNodes:()=>Xm,hasJSDocParameterTags:()=>gJ,hasJSFileExtension:()=>pN,hasJsonModuleEmitEnabled:()=>TAe,hasOnlyExpressionInitializer:()=>l1,hasOverrideModifier:()=>Rne,hasPossibleExternalModuleReference:()=>Dge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>o1e,hasQuestionToken:()=>VY,hasRecordedExternalHelpers:()=>nWt,hasResolutionModeOverride:()=>NLe,hasRestParameter:()=>Fre,hasScopeMarker:()=>Db,hasStaticModifier:()=>zh,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>LZe,hasTSFileExtension:()=>w3,hasTabstop:()=>TLe,hasTrailingDirectorySeparator:()=>Jp,hasType:()=>If,hasTypeArguments:()=>Sqe,hasZeroOrOneAsteriskCharacter:()=>_be,hostGetCanonicalFileName:()=>JD,hostUsesCaseSensitiveFileNames:()=>y3,idText:()=>Vo,identifierIsThisKeyword:()=>Jye,identifierToKeywordKind:()=>iv,identity:()=>Fl,identitySourceMapConsumer:()=>Zet,ignoreSourceNewlines:()=>eEe,ignoredPaths:()=>Qp,importFromModuleSpecifier:()=>v7,importSyntaxAffectsModuleResolution:()=>hbe,indexOfAnyCharCode:()=>et,indexOfNode:()=>fP,indicesOf:()=>po,inferredTypesContainingFile:()=>Zde,injectClassNamedEvaluationHelperBlockIfMissing:()=>K9e,injectClassThisAssignmentIfMissing:()=>POt,insertImports:()=>Yrt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>FL,insertStatementAfterStandardPrologue:()=>bge,insertStatementsAfterCustomPrologue:()=>Ore,insertStatementsAfterStandardPrologue:()=>Sw,intersperse:()=>fe,intrinsicTagNameToString:()=>Pbe,introducesArgumentsExoticObject:()=>nZe,inverseJsxOptionMap:()=>CEe,isAbstractConstructorSymbol:()=>ube,isAbstractModifier:()=>Xe,isAccessExpression:()=>_p,isAccessibilityModifier:()=>krt,isAccessor:()=>yB,isAccessorModifier:()=>It,isAliasableExpression:()=>eAe,isAmbientModule:()=>s_,isAmbientPropertyDeclaration:()=>VJ,isAnyDirectorySeparator:()=>e0,isAnyImportOrBareOrAccessedRequire:()=>Nge,isAnyImportOrReExport:()=>DY,isAnyImportOrRequireStatement:()=>d7,isAnyImportSyntax:()=>IP,isAnySupportedFileExtension:()=>Kqe,isApplicableVersionedTypesKey:()=>NEe,isArgumentExpressionOfElementAccess:()=>yrt,isArray:()=>Ki,isArrayBindingElement:()=>o3,isArrayBindingOrAssignmentElement:()=>EJ,isArrayBindingOrAssignmentPattern:()=>wre,isArrayBindingPattern:()=>p2,isArrayLiteralExpression:()=>OI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>e9,isArrayTypeNode:()=>kF,isArrowFunction:()=>lA,isAsExpression:()=>Yd,isAssertClause:()=>LPt,isAssertEntry:()=>o$r,isAssertionExpression:()=>Ed,isAssertsKeyword:()=>J,isAssignmentDeclaration:()=>b7,isAssignmentExpression:()=>Jm,isAssignmentOperator:()=>UD,isAssignmentPattern:()=>CY,isAssignmentTarget:()=>bF,isAsteriskToken:()=>Aie,isAsyncFunction:()=>D7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>t0,isAwaitExpression:()=>I1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>eQ,isBinaryExpression:()=>fo,isBinaryLogicalOperator:()=>Nne,isBinaryOperatorToken:()=>gWt,isBindableObjectDefinePropertyCall:()=>f3,isBindableStaticAccessExpression:()=>yP,isBindableStaticElementAccessExpression:()=>jge,isBindableStaticNameExpression:()=>I3,isBindingElement:()=>hg,isBindingElementOfBareOrAccessedRequire:()=>gZe,isBindingName:()=>RL,isBindingOrAssignmentElement:()=>_J,isBindingOrAssignmentPattern:()=>yJ,isBindingPattern:()=>Nu,isBlock:()=>$u,isBlockLike:()=>Pz,isBlockOrCatchScoped:()=>ZJ,isBlockScope:()=>PJ,isBlockScopedContainerTopLevel:()=>Rge,isBooleanLiteral:()=>hY,isBreakOrContinueStatement:()=>AY,isBreakStatement:()=>n$r,isBuildCommand:()=>y5t,isBuildInfoFile:()=>d3t,isBuilderProgram:()=>Gtt,isBundle:()=>OPt,isCallChain:()=>_B,isCallExpression:()=>Zl,isCallExpressionTarget:()=>frt,isCallLikeExpression:()=>hF,isCallLikeOrFunctionLikeExpression:()=>Rre,isCallOrNewExpression:()=>av,isCallOrNewExpressionTarget:()=>Irt,isCallSignatureDeclaration:()=>wg,isCallToHelper:()=>qD,isCaseBlock:()=>cde,isCaseClause:()=>Iie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>RJ,isCatchClause:()=>iQ,isCatchClauseVariableDeclaration:()=>wLe,isCatchClauseVariableDeclarationOrBindingElement:()=>Qre,isCheckJsEnabledForFile:()=>rz,isCircularBuildOrder:()=>Fz,isClassDeclaration:()=>pm,isClassElement:()=>PI,isClassExpression:()=>vd,isClassInstanceProperty:()=>Bre,isClassLike:()=>xa,isClassMemberModifier:()=>vre,isClassNamedEvaluationHelperBlock:()=>kz,isClassOrTypeElement:()=>mY,isClassStaticBlockDeclaration:()=>fl,isClassThisAssignmentBlock:()=>Rde,isColonToken:()=>iEe,isCommaExpression:()=>uEe,isCommaListExpression:()=>ode,isCommaSequence:()=>dde,isCommaToken:()=>nEe,isComment:()=>XVe,isCommonJsExportPropertyAssignment:()=>Vge,isCommonJsExportedExpression:()=>Iye,isCompoundAssignment:()=>Bde,isComputedNonLiteralName:()=>kY,isComputedPropertyName:()=>Un,isConciseBody:()=>r7,isConditionalExpression:()=>Lw,isConditionalTypeNode:()=>d2,isConstAssertion:()=>Wbe,isConstTypeReference:()=>s2,isConstructSignatureDeclaration:()=>em,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>$D,isContextualKeyword:()=>rAe,isContinueStatement:()=>r$r,isCustomPrologue:()=>zre,isDebuggerStatement:()=>i$r,isDeclaration:()=>jh,isDeclarationBindingElement:()=>uP,isDeclarationFileName:()=>PC,isDeclarationName:()=>HT,isDeclarationNameOfEnumOrNamespace:()=>cbe,isDeclarationReadonly:()=>hf,isDeclarationStatement:()=>gge,isDeclarationWithTypeParameterChildren:()=>jre,isDeclarationWithTypeParameters:()=>Kre,isDecorator:()=>So,isDecoratorTarget:()=>J5t,isDefaultClause:()=>lde,isDefaultImport:()=>h3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>AZe,isDeleteExpression:()=>GF,isDeleteTarget:()=>Rye,isDeprecatedDeclaration:()=>gPe,isDestructuringAssignment:()=>Dx,isDiskPathRoot:()=>cE,isDoStatement:()=>t$r,isDocumentRegistryEntry:()=>B1e,isDotDotDotToken:()=>ide,isDottedName:()=>kne,isDynamicName:()=>nAe,isEffectiveExternalModule:()=>g3,isEffectiveStrictModeSourceFile:()=>Ure,isElementAccessChain:()=>IF,isElementAccessExpression:()=>Yg,isEmittedFileOfProgram:()=>_3t,isEmptyArrayLiteral:()=>QZe,isEmptyBindingElement:()=>wr,isEmptyBindingPattern:()=>Ct,isEmptyObjectLiteral:()=>nbe,isEmptyStatement:()=>A$e,isEmptyStringLiteral:()=>Cye,isEntityName:()=>fC,isEntityNameExpression:()=>Od,isEnumConst:()=>VA,isEnumDeclaration:()=>V3,isEnumMember:()=>LF,isEqualityOperatorKind:()=>iPe,isEqualsGreaterThanToken:()=>jLe,isExclamationToken:()=>Cz,isExcludedFile:()=>WWt,isExclusivelyTypeOnlyImportOrExport:()=>Att,isExpandoPropertyDeclaration:()=>jY,isExportAssignment:()=>Cf,isExportDeclaration:()=>Gh,isExportModifier:()=>y,isExportName:()=>o9e,isExportNamespaceAsDefaultDeclaration:()=>wY,isExportOrDefaultModifier:()=>pEe,isExportSpecifier:()=>R0,isExportsIdentifier:()=>p3,isExportsOrModuleExportsOrAlias:()=>cQ,isExpression:()=>un,isExpressionNode:()=>MT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>j5t,isExpressionOfOptionalChainRoot:()=>gY,isExpressionStatement:()=>VC,isExpressionWithTypeArguments:()=>l_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>pAe,isExternalModule:()=>xm,isExternalModuleAugmentation:()=>_F,isExternalModuleImportEqualsDeclaration:()=>LL,isExternalModuleIndicator:()=>PT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>ZF,isExternalModuleSymbol:()=>WD,isExternalOrCommonJsModule:()=>vl,isFileLevelReservedGeneratedIdentifier:()=>fY,isFileLevelUniqueName:()=>u7,isFileProbablyExternalModule:()=>hEe,isFirstDeclarationOfSymbolParameter:()=>jrt,isFixablePromiseHandler:()=>wnt,isForInOrOfStatement:()=>DL,isForInStatement:()=>zLe,isForInitializer:()=>hE,isForOfStatement:()=>sEe,isForStatement:()=>L3,isFullSourceFile:()=>aN,isFunctionBlock:()=>mP,isFunctionBody:()=>n7,isFunctionDeclaration:()=>ih,isFunctionExpression:()=>UA,isFunctionExpressionOrArrowFunction:()=>RF,isFunctionLike:()=>bu,isFunctionLikeDeclaration:()=>kd,isFunctionLikeKind:()=>lP,isFunctionLikeOrClassStaticBlockDeclaration:()=>s3,isFunctionOrConstructorTypeNode:()=>age,isFunctionOrModuleBlock:()=>CJ,isFunctionSymbol:()=>pZe,isFunctionTypeNode:()=>x_,isGeneratedIdentifier:()=>kp,isGeneratedPrivateIdentifier:()=>TL,isGetAccessor:()=>bB,isGetAccessorDeclaration:()=>Bg,isGetOrSetAccessorDeclaration:()=>fJ,isGlobalScopeAugmentation:()=>vB,isGlobalSourceFile:()=>fc,isGrammarError:()=>yge,isHeritageClause:()=>h1,isHoistedFunction:()=>Gge,isHoistedVariableStatement:()=>Fge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>xye,isIdentifierName:()=>bZe,isIdentifierOrThisTypeNode:()=>aWt,isIdentifierPart:()=>s1,isIdentifierStart:()=>bd,isIdentifierText:()=>Uh,isIdentifierTypePredicate:()=>iZe,isIdentifierTypeReference:()=>bLe,isIfStatement:()=>Z3,isIgnoredFileFromWildCardWatching:()=>QEe,isImplicitGlob:()=>Ebe,isImportAttribute:()=>VPt,isImportAttributeName:()=>e7,isImportAttributes:()=>CU,isImportCall:()=>Up,isImportClause:()=>Vw,isImportDeclaration:()=>Mf,isImportEqualsDeclaration:()=>km,isImportKeyword:()=>an,isImportMeta:()=>uv,isImportOrExportSpecifier:()=>eS,isImportOrExportSpecifierName:()=>yMt,isImportSpecifier:()=>uy,isImportTypeAssertionContainer:()=>s$r,isImportTypeNode:()=>Um,isImportable:()=>fnt,isInComment:()=>$L,isInCompoundLikeAssignment:()=>$ge,isInExpressionContext:()=>nne,isInJSDoc:()=>GY,isInJSFile:()=>wo,isInJSXText:()=>nMt,isInJsonFile:()=>Jge,isInNonReferenceComment:()=>lMt,isInReferenceComment:()=>cMt,isInRightSideOfInternalImportEqualsDeclaration:()=>GVe,isInString:()=>Zz,isInTemplateString:()=>Trt,isInTopLevelContext:()=>Hge,isInTypeQuery:()=>OY,isIncrementalBuildInfo:()=>zEe,isIncrementalBundleEmitBuildInfo:()=>O3t,isIncrementalCompilation:()=>DP,isIndexSignatureDeclaration:()=>w0,isIndexedAccessTypeNode:()=>Iv,isInferTypeNode:()=>jT,isInfinityOrNaNString:()=>oz,isInitializedProperty:()=>FEe,isInitializedVariable:()=>Gne,isInsideJsxElement:()=>YVe,isInsideJsxElementOrAttribute:()=>rMt,isInsideNodeModules:()=>y1e,isInsideTemplateLiteral:()=>g1e,isInstanceOfExpression:()=>fAe,isInstantiatedModule:()=>Ret,isInterfaceDeclaration:()=>g_,isInternalDeclaration:()=>Zre,isInternalModuleImportEqualsDeclaration:()=>d3,isInternalName:()=>T$e,isIntersectionTypeNode:()=>mf,isIntrinsicJsxName:()=>eU,isIterationStatement:()=>VT,isJSDoc:()=>tR,isJSDocAllType:()=>YPt,isJSDocAugmentsTag:()=>bz,isJSDocAuthorTag:()=>u$r,isJSDocCallbackTag:()=>I$e,isJSDocClassTag:()=>XPt,isJSDocCommentContainingNode:()=>i7,isJSDocConstructSignature:()=>PY,isJSDocDeprecatedTag:()=>y$e,isJSDocEnumTag:()=>aEe,isJSDocFunctionType:()=>mie,isJSDocImplementsTag:()=>n9e,isJSDocImportTag:()=>SN,isJSDocIndexSignature:()=>Kge,isJSDocLikeText:()=>L$e,isJSDocLink:()=>MPt,isJSDocLinkCode:()=>HPt,isJSDocLinkLike:()=>Tx,isJSDocLinkPlain:()=>c$r,isJSDocMemberName:()=>O3,isJSDocNameReference:()=>ude,isJSDocNamepathType:()=>l$r,isJSDocNamespaceBody:()=>aye,isJSDocNode:()=>l3,isJSDocNonNullableType:()=>$Le,isJSDocNullableType:()=>hie,isJSDocOptionalParameter:()=>YAe,isJSDocOptionalType:()=>f$e,isJSDocOverloadTag:()=>Cie,isJSDocOverrideTag:()=>t9e,isJSDocParameterTag:()=>cS,isJSDocPrivateTag:()=>m$e,isJSDocPropertyLikeTag:()=>dY,isJSDocPropertyTag:()=>JPt,isJSDocProtectedTag:()=>C$e,isJSDocPublicTag:()=>h$e,isJSDocReadonlyTag:()=>_$e,isJSDocReturnTag:()=>r9e,isJSDocSatisfiesExpression:()=>Lbe,isJSDocSatisfiesTag:()=>i9e,isJSDocSeeTag:()=>g$r,isJSDocSignature:()=>qL,isJSDocTag:()=>u3,isJSDocTemplateTag:()=>ZB,isJSDocThisTag:()=>b$e,isJSDocThrowsTag:()=>d$r,isJSDocTypeAlias:()=>iS,isJSDocTypeAssertion:()=>sQ,isJSDocTypeExpression:()=>W3,isJSDocTypeLiteral:()=>yU,isJSDocTypeTag:()=>gde,isJSDocTypedefTag:()=>bU,isJSDocUnknownTag:()=>A$r,isJSDocUnknownType:()=>QPt,isJSDocVariadicType:()=>e9e,isJSXTagName:()=>YJ,isJsonEqual:()=>OAe,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>EN,isJsxAttributeLike:()=>wJ,isJsxAttributeName:()=>RLe,isJsxAttributes:()=>nQ,isJsxCallLike:()=>c3,isJsxChild:()=>BJ,isJsxClosingElement:()=>rQ,isJsxClosingFragment:()=>WPt,isJsxElement:()=>bN,isJsxExpression:()=>fie,isJsxFragment:()=>P3,isJsxNamespacedName:()=>eR,isJsxOpeningElement:()=>$T,isJsxOpeningFragment:()=>Pw,isJsxOpeningLikeElement:()=>eI,isJsxOpeningLikeElementTagName:()=>U5t,isJsxSelfClosingElement:()=>_U,isJsxSpreadAttribute:()=>yz,isJsxTagNameExpression:()=>kL,isJsxText:()=>KL,isJumpStatementTarget:()=>a1e,isKeyword:()=>v0,isKeywordOrPunctuation:()=>tAe,isKnownSymbol:()=>k7,isLabelName:()=>Crt,isLabelOfLabeledStatement:()=>mrt,isLabeledStatement:()=>FP,isLateVisibilityPaintedStatement:()=>p7,isLeftHandSideExpression:()=>D_,isLet:()=>rS,isLineBreak:()=>Cl,isLiteralComputedPropertyDeclarationName:()=>Ine,isLiteralExpression:()=>wL,isLiteralExpressionOfObject:()=>Ere,isLiteralImportTypeNode:()=>ky,isLiteralKind:()=>pY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>LVe,isLiteralTypeLiteral:()=>cge,isLiteralTypeNode:()=>EE,isLocalName:()=>VF,isLogicalOperator:()=>MZe,isLogicalOrCoalescingAssignmentExpression:()=>AAe,isLogicalOrCoalescingAssignmentOperator:()=>V7,isLogicalOrCoalescingBinaryExpression:()=>Dne,isLogicalOrCoalescingBinaryOperator:()=>dAe,isMappedTypeNode:()=>GB,isMemberName:()=>_w,isMetaProperty:()=>Du,isMethodDeclaration:()=>uu,isMethodOrAccessor:()=>NL,isMethodSignature:()=>hl,isMinusToken:()=>sde,isMissingDeclaration:()=>a$r,isMissingPackageJsonInfo:()=>zWt,isModifier:()=>Ig,isModifierKind:()=>VD,isModifierLike:()=>dp,isModuleAugmentationExternal:()=>Jre,isModuleBlock:()=>_N,isModuleBody:()=>lge,isModuleDeclaration:()=>xh,isModuleExportName:()=>qLe,isModuleExportsAccessExpression:()=>cN,isModuleIdentifier:()=>_P,isModuleName:()=>uWt,isModuleOrEnumDeclaration:()=>a3,isModuleReference:()=>yY,isModuleSpecifierLike:()=>qVe,isModuleWithStringLiteralName:()=>RY,isNameOfFunctionDeclaration:()=>Ert,isNameOfModuleDeclaration:()=>brt,isNamedDeclaration:()=>rh,isNamedEvaluation:()=>kb,isNamedEvaluationSource:()=>Gye,isNamedExportBindings:()=>bre,isNamedExports:()=>mv,isNamedImportBindings:()=>wx,isNamedImports:()=>yN,isNamedImportsOrExports:()=>Fne,isNamedTupleMember:()=>KT,isNamespaceBody:()=>Dre,isNamespaceExport:()=>tk,isNamespaceExportDeclaration:()=>oEe,isNamespaceImport:()=>Zx,isNamespaceReexportDeclaration:()=>uZe,isNewExpression:()=>f2,isNewExpressionTarget:()=>Mde,isNewScopeNode:()=>tie,isNoSubstitutionTemplateLiteral:()=>GP,isNodeArray:()=>tN,isNodeArrayMultiLine:()=>mAe,isNodeDescendantOf:()=>EP,isNodeKind:()=>z6,isNodeLikeSystem:()=>Mm,isNodeModulesDirectory:()=>Vd,isNodeWithPossibleHoistedDeclaration:()=>yZe,isNonContextualKeyword:()=>kye,isNonGlobalAmbientModule:()=>Xre,isNonNullAccess:()=>QAe,isNonNullChain:()=>hJ,isNonNullExpression:()=>hv,isNonStaticMethodOrAccessorWithPrivateName:()=>kOt,isNotEmittedStatement:()=>PPt,isNullishCoalesce:()=>IJ,isNumber:()=>ws,isNumericLiteral:()=>mC,isNumericLiteralName:()=>IN,isObjectBindingElementWithoutPropertyName:()=>f1e,isObjectBindingOrAssignmentElement:()=>gP,isObjectBindingOrAssignmentPattern:()=>bJ,isObjectBindingPattern:()=>Km,isObjectLiteralElement:()=>bY,isObjectLiteralElementLike:()=>yw,isObjectLiteralExpression:()=>og,isObjectLiteralMethod:()=>a2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Pge,isObjectTypeDeclaration:()=>YY,isOmittedExpression:()=>yp,isOptionalChain:()=>GC,isOptionalChainRoot:()=>aP,isOptionalDeclaration:()=>RB,isOptionalJSDocPropertyLikeTag:()=>zne,isOptionalTypeNode:()=>jL,isOuterExpression:()=>a9e,isOutermostOptionalChain:()=>i3,isOverrideModifier:()=>bt,isPackageJsonInfo:()=>k9e,isPackedArrayLiteral:()=>Fbe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>Ve,isParameterPropertyModifier:()=>IY,isParenthesizedExpression:()=>gI,isParenthesizedTypeNode:()=>fv,isParseTreeNode:()=>SL,isPartOfParameterDeclaration:()=>HL,isPartOfTypeNode:()=>ww,isPartOfTypeOnlyImportOrExportDeclaration:()=>oge,isPartOfTypeQuery:()=>Xge,isPartiallyEmittedExpression:()=>ly,isPatternMatch:()=>jd,isPinnedComment:()=>g7,isPlainJsFile:()=>SY,isPlusToken:()=>mz,isPossiblyTypeArgumentPosition:()=>u1e,isPostfixUnaryExpression:()=>ek,isPrefixUnaryExpression:()=>T0,isPrimitiveLiteralValue:()=>uz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>pC,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>vZe,isProgramUptoDate:()=>Itt,isPrologueDirective:()=>nS,isPropertyAccessChain:()=>vx,isPropertyAccessEntityNameExpression:()=>BF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>SJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Tre,isPropertyAssignment:()=>fm,isPropertyDeclaration:()=>pi,isPropertyName:()=>VI,isPropertyNameLiteral:()=>Tw,isPropertySignature:()=>ss,isPrototypeAccess:()=>wF,isPrototypePropertyAssignment:()=>une,isPunctuation:()=>Dye,isPushOrUnshiftIdentifier:()=>Fye,isQualifiedName:()=>zi,isQuestionDotToken:()=>die,isQuestionOrExclamationToken:()=>oWt,isQuestionOrPlusOrMinusToken:()=>lWt,isQuestionToken:()=>UT,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>cWt,isRecognizedTripleSlashComment:()=>Mre,isReferenceFileLocation:()=>Zie,isReferencedFile:()=>K3,isRegularExpressionLiteral:()=>rEe,isRequireCall:()=>ay,isRequireVariableStatement:()=>ine,isRestParameter:()=>EB,isRestTypeNode:()=>zL,isReturnStatement:()=>I2,isReturnStatementWithFixablePromiseHandler:()=>CPe,isRightSideOfAccessExpression:()=>rbe,isRightSideOfInstanceofExpression:()=>YZe,isRightSideOfPropertyAccess:()=>Oie,isRightSideOfQualifiedName:()=>K5t,isRightSideOfQualifiedNameOrPropertyAccess:()=>P7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>HZe,isRootedDiskPath:()=>Xp,isSameEntityName:()=>QJ,isSatisfiesExpression:()=>Qg,isSemicolonClassElement:()=>FPt,isSetAccessor:()=>cv,isSetAccessorDeclaration:()=>Dg,isShiftOperatorOrHigher:()=>G$e,isShorthandAmbientModuleSymbol:()=>NY,isShorthandPropertyAssignment:()=>a0,isSideEffectImport:()=>Obe,isSignedNumericLiteral:()=>_ne,isSimpleCopiableExpression:()=>lQ,isSimpleInlineableExpression:()=>BN,isSimpleParameterList:()=>ZEe,isSingleOrDoubleQuote:()=>sne,isSolutionConfig:()=>net,isSourceElement:()=>DLe,isSourceFile:()=>ll,isSourceFileFromLibrary:()=>qie,isSourceFileJS:()=>n0,isSourceFileNotJson:()=>Uge,isSourceMapping:()=>ROt,isSpecialPropertyDeclaration:()=>Sye,isSpreadAssignment:()=>Lx,isSpreadElement:()=>of,isStatement:()=>Lc,isStatementButNotDeclaration:()=>vJ,isStatementOrBlock:()=>xre,isStatementWithLocals:()=>Cge,isStatic:()=>cg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>WY,isStringAndEmptyAnonymousObjectIntersection:()=>aMt,isStringDoubleQuoted:()=>one,isStringLiteral:()=>Zg,isStringLiteralLike:()=>mA,isStringLiteralOrJsxExpression:()=>TJ,isStringLiteralOrTemplate:()=>vMt,isStringOrNumericLiteralLike:()=>d1,isStringOrRegularExpressionOrTemplateLiteral:()=>Drt,isStringTextContainingNode:()=>Sre,isSuperCall:()=>Dy,isSuperKeyword:()=>rr,isSuperProperty:()=>xy,isSupportedSourceFileName:()=>wbe,isSwitchStatement:()=>ade,isSyntaxList:()=>_ie,isSyntheticExpression:()=>F3,isSyntheticReference:()=>_z,isTagName:()=>_rt,isTaggedTemplateExpression:()=>MI,isTaggedTemplateTag:()=>X5t,isTemplateExpression:()=>FF,isTemplateHead:()=>tQ,isTemplateLiteral:()=>AP,isTemplateLiteralKind:()=>LD,isTemplateLiteralToken:()=>sge,isTemplateLiteralTypeNode:()=>zT,isTemplateLiteralTypeSpan:()=>mN,isTemplateMiddle:()=>gie,isTemplateMiddleOrTemplateTail:()=>$6,isTemplateSpan:()=>pie,isTemplateTail:()=>nde,isTextWhiteSpaceLike:()=>dMt,isThis:()=>Mie,isThisContainerOrFunctionBlock:()=>aZe,isThisIdentifier:()=>vF,isThisInTypeQuery:()=>YL,isThisInitializedDeclaration:()=>Yge,isThisInitializedObjectBindingExpression:()=>lZe,isThisProperty:()=>ene,isThisTypeNode:()=>Fx,isThisTypeParameter:()=>az,isThisTypePredicate:()=>sZe,isThrowStatement:()=>p$e,isToken:()=>BL,isTokenKind:()=>q6,isTraceEnabled:()=>VP,isTransientSymbol:()=>bw,isTrivia:()=>zJ,isTryStatement:()=>mU,isTupleTypeNode:()=>Zw,isTypeAlias:()=>Ane,isTypeAliasDeclaration:()=>FB,isTypeAssertionExpression:()=>xF,isTypeDeclaration:()=>KY,isTypeElement:()=>Bx,isTypeKeyword:()=>Xde,isTypeKeywordTokenOrIdentifier:()=>KVe,isTypeLiteralNode:()=>mh,isTypeNode:()=>uc,isTypeNodeKind:()=>EAe,isTypeOfExpression:()=>CN,isTypeOnlyExportDeclaration:()=>mJ,isTypeOnlyImportDeclaration:()=>rN,isTypeOnlyImportOrExportDeclaration:()=>nN,isTypeOperatorNode:()=>xB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>bE,isTypeQueryNode:()=>Fw,isTypeReferenceNode:()=>nh,isTypeReferenceType:()=>s7,isTypeUsableAsPropertyName:()=>g2,isUMDExportSymbol:()=>bAe,isUnaryExpression:()=>Nre,isUnaryExpressionWithWrite:()=>iN,isUnicodeIdentifierStart:()=>ft,isUnionTypeNode:()=>aS,isUrl:()=>n_,isValidBigIntString:()=>Une,isValidESSymbolDeclaration:()=>rZe,isValidTypeOnlyAliasUseSite:()=>JL,isValueSignatureDeclaration:()=>C3,isVarAwaitUsing:()=>Sd,isVarConst:()=>rI,isVarConstLike:()=>OT,isVarUsing:()=>tI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>h7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>CP,isVariableDeclarationInitializedToRequire:()=>y7,isVariableDeclarationList:()=>u_,isVariableLike:()=>I7,isVariableStatement:()=>Ch,isVoidExpression:()=>qT,isWatchSet:()=>lbe,isWhileStatement:()=>d$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>Iu,isWithStatement:()=>ZPt,isWriteAccess:()=>B3,isWriteOnlyAccess:()=>_Ae,isYieldExpression:()=>Hd,jsxModeNeedsExplicitImport:()=>Ant,keywordPart:()=>y1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>M$e,libs:()=>p9e,lineBreakPart:()=>Uie,loadModuleFromGlobalCache:()=>gOt,loadWithModeAwareCache:()=>JEe,makeIdentifierFromModuleName:()=>vw,makeImport:()=>QP,makeStringLiteral:()=>Jde,mangleScopedPackageName:()=>Die,map:()=>At,mapAllOrFail:()=>qt,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Yt,mapOneOrMany:()=>cnt,mapToDisplayParts:()=>XP,matchFiles:()=>vbe,matchPatternOrExact:()=>Rbe,matchedText:()=>pw,matchesExclude:()=>w9e,matchesExcludeWorker:()=>T9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>eLe,memoize:()=>FA,memoizeOne:()=>ZA,min:()=>oa,minAndMax:()=>CLe,missingFileModifiedTime:()=>Rh,modifierToFlag:()=>HY,modifiersToFlags:()=>Dw,moduleExportNameIsDefault:()=>lv,moduleExportNameTextEscaped:()=>CF,moduleExportNameTextUnescaped:()=>HD,moduleOptionDeclaration:()=>bWt,moduleResolutionIsEqualTo:()=>hge,moduleResolutionNameAndModeGetter:()=>nVe,moduleResolutionOptionDeclarations:()=>Y$e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>lU,moduleResolutionUsesNodeModules:()=>jVe,moduleSpecifierToValidIdentifier:()=>E1e,moduleSpecifiers:()=>WF,moduleSupportsImportAttributes:()=>oLe,moduleSymbolToValidIdentifier:()=>b1e,moveEmitHelpers:()=>WLe,moveRangeEnd:()=>hAe,moveRangePastDecorators:()=>jD,moveRangePastModifiers:()=>Av,moveRangePos:()=>KD,moveSyntheticComments:()=>LLe,mutateMap:()=>Q7,mutateMapSkippingNewValues:()=>gN,needsParentheses:()=>rPe,needsScopeMarker:()=>t7,newCaseClauseTracker:()=>pPe,newPrivateEnvironment:()=>GOt,noEmitNotification:()=>WEe,noEmitSubstitution:()=>Dde,noTransformers:()=>g3t,noTruncationMaximumTruncationLength:()=>Vre,nodeCanBeDecorated:()=>OJ,nodeCoreModules:()=>dU,nodeHasName:()=>t3,nodeIsDecorated:()=>MJ,nodeIsMissing:()=>sf,nodeIsPresent:()=>u1,nodeIsSynthesized:()=>sp,nodeModuleNameResolver:()=>rOt,nodeModulesPathPart:()=>Vx,nodeNextJsonConfigResolver:()=>nOt,nodeOrChildIsDecorated:()=>rne,nodeOverlapsWithStartEnd:()=>VVe,nodePosToString:()=>_ge,nodeSeenTracker:()=>Qie,nodeStartsNewLexicalEnvironment:()=>Zye,noop:()=>Dc,noopFileWatcher:()=>Pie,normalizePath:()=>iu,normalizeSlashes:()=>Dp,normalizeSpans:()=>EI,not:()=>uC,notImplemented:()=>il,notImplementedResolver:()=>I3t,nullNodeConverters:()=>Xbe,nullParenthesizerRules:()=>Qbe,nullTransformationContext:()=>MEe,objectAllocator:()=>ZC,operatorPart:()=>Kde,optionDeclarations:()=>Ww,optionMapToObject:()=>y9e,optionsAffectingProgramStructure:()=>BWt,optionsForBuild:()=>X$e,optionsForWatch:()=>wz,optionsHaveChanges:()=>S0,or:()=>Hp,orderedRemoveItem:()=>Ql,orderedRemoveItemAt:()=>LA,packageIdToPackageName:()=>xJ,packageIdToString:()=>oN,parameterIsThisKeyword:()=>SF,parameterNamePart:()=>fMt,parseBaseNodeFactory:()=>IWt,parseBigInt:()=>yLe,parseBuildCommand:()=>GWt,parseCommandLine:()=>kWt,parseCommandLineWorker:()=>J$e,parseConfigFileTextToJson:()=>K$e,parseConfigFileWithSystem:()=>t5t,parseConfigHostFromCompilerHostLike:()=>lVe,parseCustomTypeOption:()=>m9e,parseIsolatedEntityName:()=>Bz,parseIsolatedJSDocComment:()=>mWt,parseJSDocTypeExpressionForTests:()=>L$r,parseJsonConfigFileContent:()=>den,parseJsonSourceFileConfigFileContent:()=>SEe,parseJsonText:()=>mEe,parseListTypeOption:()=>NWt,parseNodeFactory:()=>H3,parseNodeModuleFromPath:()=>TEe,parsePackageName:()=>REe,parsePseudoBigInt:()=>nz,parseValidBigInt:()=>xbe,pasteEdits:()=>gst,patchWriteFileEnsuringDirectory:()=>e2,pathContainsNodeModules:()=>WP,pathIsAbsolute:()=>lE,pathIsBareSpecifier:()=>Xh,pathIsRelative:()=>Ip,patternText:()=>j1,performIncrementalCompilation:()=>r5t,performance:()=>hb,positionBelongsToNode:()=>Srt,positionIsASICandidate:()=>sPe,positionIsSynthesized:()=>wB,positionsAreOnSameLine:()=>yE,preProcessFile:()=>Sin,probablyUsesSemicolons:()=>_1e,processCommentPragmas:()=>W$e,processPragmasIntoFields:()=>O$e,processTaggedTemplateExpression:()=>Yet,programContainsEsModules:()=>gMt,programContainsModules:()=>uMt,projectReferenceIsEqualTo:()=>Pre,propertyNamePart:()=>IMt,pseudoBigIntToString:()=>kP,punctuationPart:()=>k0,pushIfUnique:()=>Qi,quote:()=>qde,quotePreferenceFromString:()=>Ort,rangeContainsPosition:()=>Hie,rangeContainsPositionExclusive:()=>c1e,rangeContainsRange:()=>cy,rangeContainsRangeExclusive:()=>z5t,rangeContainsStartEnd:()=>l1e,rangeEndIsOnSameLineAsRangeStart:()=>xne,rangeEndPositionsAreOnSameLine:()=>JZe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>S3,rangeOfNode:()=>Dbe,rangeOfTypeParameters:()=>kbe,rangeOverlapsWithStartEnd:()=>Hde,rangeStartIsOnSameLineAsRangeEnd:()=>UZe,rangeStartPositionsAreOnSameLine:()=>M7,readBuilderProgram:()=>_Ve,readConfigFile:()=>bEe,readJson:()=>E3,readJsonConfigFile:()=>FWt,readJsonOrUndefined:()=>obe,reduceEachLeadingCommentRange:()=>EL,reduceEachTrailingCommentRange:()=>ff,reduceLeft:()=>Ul,reduceLeftIterator:()=>ne,reducePathComponents:()=>t2,refactor:()=>Oz,regExpEscape:()=>Yqe,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Wr,removeAllComments:()=>pz,removeEmitHelper:()=>s$e,removeExtension:()=>Jne,removeFileExtension:()=>s0,removeIgnoredPath:()=>dVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Nm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>ny,repeatString:()=>d1e,replaceElement:()=>Yl,replaceFirstStar:()=>R3,resolutionExtensionIsTSOrJson:()=>ez,resolveConfigFileProjectName:()=>Utt,resolveJSModule:()=>$Wt,resolveLibrary:()=>G9e,resolveModuleName:()=>BU,resolveModuleNameFromCache:()=>Qen,resolvePackageNameToPackageJson:()=>aet,resolvePath:()=>AE,resolveProjectReferencePath:()=>xz,resolveTripleslashReference:()=>att,resolveTypeReferenceDirective:()=>KWt,resolvingEmptyArray:()=>Lre,returnFalse:()=>As,returnNoopFileWatcher:()=>Pde,returnTrue:()=>Tf,returnUndefined:()=>cm,returnsPromise:()=>Bnt,rewriteModuleSpecifier:()=>Nz,sameFlatMap:()=>Zr,sameMap:()=>Tr,sameMapping:()=>Ftn,scanTokenAtPosition:()=>$s,scanner:()=>A_,semanticDiagnosticsOptionDeclarations:()=>EWt,serializeCompilerOptions:()=>eet,server:()=>Gpn,servicesVersion:()=>don,setCommentRange:()=>hh,setConfigFileInOptions:()=>tet,setConstantValue:()=>PLe,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>CVe,setIdentifierAutoGenerate:()=>aie,setIdentifierGeneratedImportReference:()=>HLe,setIdentifierTypeArguments:()=>xx,setInternalEmitFlags:()=>oie,setLocalizedDiagnosticMessages:()=>cU,setNodeChildren:()=>UPt,setNodeFlags:()=>SLe,setObjectAllocator:()=>$Ze,setOriginalNode:()=>ua,setParent:()=>XA,setParentRecursive:()=>UL,setPrivateIdentifier:()=>wU,setSnippetElement:()=>$be,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>xT,setStartsOnNewLine:()=>Md,setSyntheticLeadingComments:()=>kB,setSyntheticTrailingComments:()=>x3,setSys:()=>bI,setSysLog:()=>xC,setTextRange:()=>gn,setTextRangeEnd:()=>AU,setTextRangePos:()=>iz,setTextRangePosEnd:()=>TB,setTextRangePosWidth:()=>Gbe,setTokenSourceMapRange:()=>jbe,setTypeNode:()=>OLe,setUILocale:()=>Zs,setValueDeclaration:()=>S7,shouldAllowImportingTsExtension:()=>kie,shouldPreserveConstEnums:()=>Fb,shouldRewriteModuleSpecifier:()=>gne,shouldUseUriStyleNodeCoreModules:()=>APe,showModuleSpecifier:()=>zZe,signatureHasRestParameter:()=>D0,signatureToDisplayParts:()=>qrt,single:()=>Xa,singleElementArray:()=>J_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ps,skipAlias:()=>FC,skipConstraint:()=>Vrt,skipOuterExpressions:()=>HI,skipParentheses:()=>QA,skipPartiallyEmittedExpressions:()=>o2,skipTrivia:()=>Yu,skipTypeChecking:()=>T3,skipTypeCheckingIgnoringNoCheck:()=>_Le,skipTypeParentheses:()=>w7,skipWhile:()=>cp,sliceAfter:()=>Nbe,some:()=>jt,sortAndDeduplicate:()=>cl,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>Q$e,sourceFileMayBeEmitted:()=>SP,sourceMapCommentRegExp:()=>ket,sourceMapCommentRegExpDontCareLineStart:()=>BOt,spacePart:()=>BI,spanMap:()=>_n,startEndContainsRange:()=>CAe,startEndOverlapsWithStartEnd:()=>PVe,startOnNewLine:()=>N0,startTracing:()=>fd,startsWith:()=>Ac,startsWithDirectory:()=>$S,startsWithUnderscore:()=>gnt,startsWithUseStrict:()=>tWt,stringContainsAt:()=>kMt,stringToToken:()=>Ta,stripQuotes:()=>l2,supportedDeclarationExtensions:()=>VAe,supportedJSExtensionsFlat:()=>uU,supportedLocaleDirectories:()=>nv,supportedTSExtensionsFlat:()=>Bbe,supportedTSImplementationExtensions:()=>Qne,suppressLeadingAndTrailingTrivia:()=>Vy,suppressLeadingTrivia:()=>Ybe,suppressTrailingTrivia:()=>GLe,symbolEscapedNameNoDefault:()=>zVe,symbolName:()=>nf,symbolNameNoDefault:()=>Hrt,symbolToDisplayParts:()=>jde,sys:()=>yd,sysLog:()=>Ih,tagNamesAreEquivalent:()=>Q3,takeWhile:()=>t_,targetOptionDeclaration:()=>H$e,targetToLibMap:()=>Is,testFormatSettings:()=>Xnn,textChangeRangeIsUnchanged:()=>sy,textChangeRangeNewSpan:()=>qR,textChanges:()=>xo,textOrKeywordPart:()=>zrt,textPart:()=>gS,textRangeContainsPositionInclusive:()=>sl,textRangeContainsTextSpan:()=>Og,textRangeIntersectsWithTextSpan:()=>e3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>ed,textSpanContainsTextSpan:()=>Nd,textSpanEnd:()=>Rs,textSpanIntersection:()=>IA,textSpanIntersectsWith:()=>q2,textSpanIntersectsWithPosition:()=>zR,textSpanIntersectsWithTextSpan:()=>Tb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>o1,textSpanOverlapsWith:()=>Nh,textSpansEqual:()=>Jie,textToKeywordObj:()=>ev,timestamp:()=>Fg,toArray:()=>cc,toBuilderFileEmit:()=>Y3t,toBuilderStateFileInfoForMultiEmit:()=>H3t,toEditorSettings:()=>D1e,toFileNameLowerCase:()=>Om,toPath:()=>Ou,toProgramEmitPending:()=>Q3t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>Id,tokenIsIdentifierOrKeywordOrGreaterThan:()=>fB,tokenToString:()=>Vi,trace:()=>eu,tracing:()=>ki,tracingEnabled:()=>Kl,transferSourceFileChildren:()=>KPt,transform:()=>Eon,transformClassFields:()=>YOt,transformDeclarations:()=>Uet,transformECMAScriptModule:()=>Jet,transformES2015:()=>i3t,transformES2016:()=>n3t,transformES2017:()=>UOt,transformES2018:()=>KOt,transformES2019:()=>jOt,transformES2020:()=>zOt,transformES2021:()=>qOt,transformESDecorators:()=>JOt,transformESNext:()=>$Ot,transformGenerators:()=>s3t,transformImpliedNodeFormatDependentModule:()=>a3t,transformJsx:()=>r3t,transformLegacyDecorators:()=>XOt,transformModule:()=>Xet,transformNamedEvaluation:()=>m1,transformNodes:()=>OEe,transformSystemModule:()=>o3t,transformTypeScript:()=>HOt,transpile:()=>xin,transpileDeclaration:()=>Din,transpileModule:()=>tHt,transpileOptionValueCompilerOptions:()=>wWt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>cPe,tryCast:()=>Gs,tryDirectoryExists:()=>aPe,tryExtractTSExtension:()=>O7,tryFileExists:()=>jie,tryGetClassExtendingExpressionWithTypeArguments:()=>ebe,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>tbe,tryGetDirectories:()=>oPe,tryGetExtensionFromPath:()=>QT,tryGetImportFromModuleSpecifier:()=>B7,tryGetJSDocSatisfiesTypeNode:()=>XAe,tryGetModuleNameFromFile:()=>AEe,tryGetModuleSpecifierFromDeclaration:()=>ZY,tryGetNativePerformanceHooks:()=>YS,tryGetPropertyAccessOrIdentifierToString:()=>TP,tryGetPropertyNameOfBindingOrAssignmentElement:()=>l9e,tryGetSourceMappingURL:()=>wOt,tryGetTextOfPropertyName:()=>xY,tryParseJson:()=>nU,tryParsePattern:()=>UY,tryParsePatterns:()=>$7,tryParseRawSourceMap:()=>TOt,tryReadDirectory:()=>int,tryReadFile:()=>Ide,tryRemoveDirectoryPrefix:()=>DAe,tryRemoveExtension:()=>mLe,tryRemovePrefix:()=>HS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>SU,typeAcquisitionDeclarations:()=>I9e,typeAliasNamePart:()=>hMt,typeDirectiveIsEqualTo:()=>mge,typeKeywords:()=>Lrt,typeParameterNamePart:()=>mMt,typeToDisplayParts:()=>h1e,unchangedPollThresholds:()=>q_,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>DEe,unorderedRemoveItem:()=>ef,unprefixedNodeCoreModules:()=>$ne,unreachableCodeIsError:()=>iLe,unsetNodeChildren:()=>S$e,unusedLabelIsError:()=>sLe,unwrapInnermostStatementOfLabel:()=>hye,unwrapParenthesizedExpression:()=>KAe,updateErrorForNoInputFiles:()=>B9e,updateLanguageServiceSourceFile:()=>$nt,updateMissingFilePathsWatch:()=>itt,updateResolutionField:()=>wie,updateSharedExtendedConfigFileWatcher:()=>$9e,updateSourceFile:()=>V$e,updateWatchingWildcardDirectories:()=>YEe,usingSingleLineStringWriter:()=>dP,utf16EncodeAsString:()=>jR,validateLocaleAndSetLanguage:()=>yx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Sde,visitCommaListElements:()=>GEe,visitEachChild:()=>_s,visitFunctionBody:()=>uS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>Det,visitNode:()=>Mr,visitNodes:()=>Ws,visitParameterList:()=>vI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>rWt,walkUpParenthesizedExpressions:()=>gv,walkUpParenthesizedTypes:()=>fne,walkUpParenthesizedTypesAndGetParentAndChild:()=>Tye,whitespaceOrMapCommentRegExp:()=>xet,writeCommentRange:()=>rU,writeFile:()=>uAe,writeFileEnsuringDirectories:()=>Xye,zipWith:()=>ce});var PWs=!0,Dpn;function WWs(){return Dpn??(Dpn=new O(C))}function kpn(s,c,g,d,h){let _=c?"DeprecationError: ":"DeprecationWarning: ";return _+=`'${s}' `,_+=d?`has been deprecated since v${d}`:"is deprecated",_+=c?" and can no longer be used.":g?` and will no longer be usable after v${g}.`:".",_+=h?` ${dN(h,[s])}`:"",_}function OWs(s,c,g,d){let h=kpn(s,!0,c,g,d);return()=>{throw new TypeError(h)}}function MWs(s,c,g,d){let h=!1;return()=>{PWs&&!h&&(pe.log.warn(kpn(s,!1,c,g,d)),h=!0)}}function HWs(s,c={}){let g=typeof c.typeScriptVersion=="string"?new O(c.typeScriptVersion):c.typeScriptVersion??WWs(),d=typeof c.errorAfter=="string"?new O(c.errorAfter):c.errorAfter,h=typeof c.warnAfter=="string"?new O(c.warnAfter):c.warnAfter,_=typeof c.since=="string"?new O(c.since):c.since??h,S=c.error||d&&g.compareTo(d)>=0,R=!h||g.compareTo(h)>=0;return S?OWs(s,d,_,c.message):R?MWs(s,d,_,c.message):Dc}function YWs(s,c){return function(){return s(),c.apply(this,arguments)}}function QWs(s,c){let g=HWs(c?.name??pe.getFunctionName(s),c);return YWs(g,s)}function Ast(s,c,g,d){if(Object.defineProperty(_,"name",{...Object.getOwnPropertyDescriptor(_,"name"),value:s}),d)for(let S of Object.keys(d)){let R=+S;!isNaN(R)&&Da(c,`${R}`)&&(c[R]=QWs(c[R],{...d[R],name:s}))}let h=XWs(c,g);return _;function _(...S){let R=h(S),T=R!==void 0?c[R]:void 0;if(typeof T=="function")return T(...S);throw new TypeError("Invalid arguments")}}function XWs(s,c){return g=>{for(let d=0;Da(s,`${d}`)&&Da(c,`${d}`);d++){let h=c[d];if(h(g))return d}}}function xpn(s){return{overload:c=>({bind:g=>({finish:()=>Ast(s,c,g),deprecate:d=>({finish:()=>Ast(s,c,g,d)})})})}}var Gpn={};o(Gpn,{ActionInvalidate:()=>TVe,ActionPackageInstalled:()=>RVe,ActionSet:()=>wVe,ActionWatchTypingLocations:()=>i1e,Arguments:()=>urt,AutoImportProviderProject:()=>H4t,AuxiliaryProject:()=>O4t,CharRangeSection:()=>fJt,CloseFileWatcherEvent:()=>vst,CommandNames:()=>Afn,ConfigFileDiagEvent:()=>_st,ConfiguredProject:()=>Y4t,ConfiguredProjectLoadKind:()=>j4t,CreateDirectoryWatcherEvent:()=>Sst,CreateFileWatcherEvent:()=>Est,Errors:()=>QF,EventBeginInstallTypes:()=>crt,EventEndInstallTypes:()=>lrt,EventInitializationFailed:()=>T5t,EventTypesRegistry:()=>art,ExternalProject:()=>pst,GcTimer:()=>R4t,InferredProject:()=>W4t,LargeFileReferencedEvent:()=>Cst,LineIndex:()=>c2e,LineLeaf:()=>uWe,LineNode:()=>gse,LogLevel:()=>_4t,Msg:()=>y4t,OpenFileInfoTelemetryEvent:()=>Q4t,Project:()=>zz,ProjectInfoTelemetryEvent:()=>bst,ProjectKind:()=>Ipe,ProjectLanguageServiceStateEvent:()=>yst,ProjectLoadingFinishEvent:()=>mst,ProjectLoadingStartEvent:()=>hst,ProjectService:()=>sJt,ProjectsUpdatedInBackgroundEvent:()=>aWe,ScriptInfo:()=>x4t,ScriptVersionCache:()=>Lst,Session:()=>_fn,TextStorage:()=>k4t,ThrottledOperations:()=>T4t,TypingsInstallerAdapter:()=>Bfn,allFilesAreJsOrDts:()=>L4t,allRootFilesAreJsOrDts:()=>Z4t,asNormalizedPath:()=>Vpn,convertCompilerOptions:()=>cWe,convertFormatOptions:()=>cse,convertScriptKindName:()=>wst,convertTypeAcquisition:()=>J4t,convertUserPreferences:()=>U4t,convertWatchOptions:()=>o2e,countEachFileTypes:()=>r2e,createInstallTypingsRequest:()=>b4t,createModuleSpecifierCache:()=>cJt,createNormalizedPathMap:()=>Ppn,createPackageJsonCache:()=>lJt,createSortedArray:()=>w4t,emptyArray:()=>zm,findArgument:()=>Vnn,formatDiagnosticToProtocol:()=>a2e,formatMessage:()=>uJt,getBaseConfigFileName:()=>dst,getDetailWatchInfo:()=>Dst,getLocationInNewDocument:()=>pJt,hasArgument:()=>Lnn,hasNoTypeScriptSource:()=>V4t,indent:()=>Ode,isBackgroundProject:()=>i2e,isConfigFile:()=>oJt,isConfiguredProject:()=>s9,isDynamicFileName:()=>fpe,isExternalProject:()=>n2e,isInferredProject:()=>ase,isInferredProjectName:()=>E4t,isProjectDeferredClose:()=>s2e,makeAutoImportProviderProjectName:()=>v4t,makeAuxiliaryProjectName:()=>B4t,makeInferredProjectName:()=>S4t,maxFileSize:()=>Ist,maxProgramSizeForNonTsFiles:()=>fst,normalizedPathToPath:()=>ose,nowString:()=>Pnn,nullCancellationToken:()=>lfn,nullTypingsInstaller:()=>lWe,protocol:()=>N4t,scriptInfoIsContainedByBackgroundProject:()=>G4t,scriptInfoIsContainedByDeferredClosedProject:()=>F4t,stringifyIndented:()=>j3,toEvent:()=>gJt,toNormalizedPath:()=>op,tryConvertScriptKindName:()=>Bst,typingsInstaller:()=>C4t,updateProjectIfDirty:()=>_v});var C4t={};o(C4t,{TypingsInstaller:()=>KWs,getNpmCommandForInstallation:()=>Zpn,installNpmPackages:()=>UWs,typingsName:()=>Lpn});var JWs={isEnabled:()=>!1,writeLine:Dc};function Fpn(s,c,g,d){try{let h=BU(c,Ro(s,"index.d.ts"),{moduleResolution:2},g);return h.resolvedModule&&h.resolvedModule.resolvedFileName}catch(h){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${s}': ${h.message}`);return}}function UWs(s,c,g,d){let h=!1;for(let _=g.length;_>0;){let S=Zpn(s,c,g,_);_=S.remaining,h=d(S.command)||h}return h}function Zpn(s,c,g,d){let h=g.length-d,_,S=d;for(;_=`${s} install --ignore-scripts ${(S===g.length?g:g.slice(h,h+S)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(_.length<8e3);)S=S-Math.floor(S/2);return{command:_,remaining:d-S}}var KWs=class{constructor(s,c,g,d,h,_=JWs){this.installTypingHost=s,this.globalCachePath=c,this.safeListPath=g,this.typesMapLocation=d,this.throttleLimit=h,this.log=_,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest",this.log.isEnabled()&&this.log.writeLine(`Global cache location '${c}', safe file path '${g}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(s){switch(s.kind){case"discover":this.install(s);break;case"closeProject":this.closeProject(s);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,h)=>{c[h]=d});let g={kind:art,typesRegistry:c};this.sendResponse(g);break}case"installPackage":{this.installPackage(s);break}default:pe.assertNever(s)}}closeProject(s){this.closeWatchers(s.projectName)}closeWatchers(s){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}'`),!this.projectWatchers.get(s)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${s}'`);return}this.projectWatchers.delete(s),this.sendResponse({kind:i1e,projectName:s,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}' - done.`)}install(s){this.log.isEnabled()&&this.log.writeLine(`Got install request${j3(s)}`),s.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${s.cachePath}', loading cached information...`),this.processCacheLocation(s.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=YP.discoverTypings(this.installTypingHost,this.log.isEnabled()?g=>this.log.writeLine(g):void 0,s.fileNames,s.projectRootPath,this.safeList,this.packageNameToTypingLocation,s.typeAcquisition,s.unresolvedImports,this.typesRegistry,s.compilerOptions);this.watchFiles(s.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(s,s.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(s,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(s){let{fileName:c,packageName:g,projectName:d,projectRootPath:h,id:_}=s,S=pE(Mo(c),R=>{if(this.installTypingHost.fileExists(Ro(R,"package.json")))return R})||h;if(S)this.installWorker(-1,[g],S,R=>{let T=R?`Package ${g} installed.`:`There was an error installing ${g}.`,W={kind:RVe,projectName:d,id:_,success:R,message:T};this.sendResponse(W)});else{let R={kind:RVe,projectName:d,id:_,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let s=YP.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(s){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=s;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=YP.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(s){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${s}'`),this.knownCachesSet.has(s)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=Ro(s,"package.json"),g=Ro(s,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(g)){let d=JSON.parse(this.installTypingHost.readFile(c)),h=JSON.parse(this.installTypingHost.readFile(g));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${j3(d)}`),this.log.writeLine(`Loaded content of '${g}':${j3(h)}`)),d.devDependencies&&(h.packages||h.dependencies))for(let _ in d.devDependencies){if(h.packages&&!Da(h.packages,`node_modules/${_}`)||h.dependencies&&!Da(h.dependencies,_))continue;let S=gp(_);if(!S)continue;let R=Fpn(s,S,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(S);continue}let T=this.packageNameToTypingLocation.get(S);if(T){if(T.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${S} from '${R}' conflicts with existing typing file '${T}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${S}' => '${R}'`);let W=h.packages&&pu(h.packages,`node_modules/${_}`)||pu(h.dependencies,_),V=W&&W.version;if(!V)continue;let M={typingLocation:R,version:new O(V)};this.packageNameToTypingLocation.set(S,M)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${s}'`),this.knownCachesSet.add(s)}filterTypings(s){return Xt(s,c=>{let g=Die(c);if(this.missingTypingsSet.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' is in missingTypingsSet - skipping...`);return}let d=YP.validatePackageName(c);if(d!==YP.NameValidationResult.Ok){this.missingTypingsSet.add(g),this.log.isEnabled()&&this.log.writeLine(YP.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${g}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(g)&&YP.isTypingUpToDate(this.packageNameToTypingLocation.get(g),this.typesRegistry.get(g))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' already has an up-to-date typing - skipping...`);return}return g})}ensurePackageDirectoryExists(s){let c=Ro(s,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(s,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(s,c,g,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let h=this.filterTypings(d);if(h.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(s,g));return}this.ensurePackageDirectoryExists(c);let _=this.installRunCount;this.installRunCount++,this.sendResponse({kind:crt,eventId:_,typingsInstallerVersion:C,projectName:s.projectName});let S=h.map(Lpn);this.installTypingsAsync(_,S,c,R=>{try{if(!R){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(h)}`);for(let W of h)this.missingTypingsSet.add(W);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(S)}`);let T=[];for(let W of h){let V=Fpn(c,W,this.installTypingHost,this.log);if(!V){this.missingTypingsSet.add(W);continue}let M=this.typesRegistry.get(W),ee=new O(M[`ts${I}`]||M[this.latestDistTag]),re={typingLocation:V,version:ee};this.packageNameToTypingLocation.set(W,re),T.push(V)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(T)}`),this.sendResponse(this.createSetTypings(s,g.concat(T)))}finally{let T={kind:lrt,eventId:_,projectName:s.projectName,packagesToInstall:S,installSuccess:R,typingsInstallerVersion:C};this.sendResponse(T)}})}ensureDirectoryExists(s,c){let g=Mo(s);c.directoryExists(g)||this.ensureDirectoryExists(g,c),c.directoryExists(s)||c.createDirectory(s)}watchFiles(s,c){if(!c.length){this.closeWatchers(s);return}let g=this.projectWatchers.get(s),d=new Set(c);!g||SB(d,h=>!g.has(h))||SB(g,h=>!d.has(h))?(this.projectWatchers.set(s,d),this.sendResponse({kind:i1e,projectName:s,files:c})):this.sendResponse({kind:i1e,projectName:s,files:void 0})}createSetTypings(s,c){return{projectName:s.projectName,typeAcquisition:s.typeAcquisition,compilerOptions:s.compilerOptions,typings:c,unresolvedImports:s.unresolvedImports,kind:wVe}}installTypingsAsync(s,c,g,d){this.pendingRunRequests.unshift({requestId:s,packageNames:c,cwd:g,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,s.onRequestCompleted(c),this.executeWithThrottling()})}}};function Lpn(s){return`@types/${s}@ts${I}`}var _4t=(s=>(s[s.terse=0]="terse",s[s.normal=1]="normal",s[s.requestTime=2]="requestTime",s[s.verbose=3]="verbose",s))(_4t||{}),zm=w4t(),y4t=(s=>(s.Err="Err",s.Info="Info",s.Perf="Perf",s))(y4t||{});function b4t(s,c,g,d){return{projectName:s.getProjectName(),fileNames:s.getFileNames(!0,!0).concat(s.getExcludedFiles()),compilerOptions:s.getCompilationSettings(),typeAcquisition:c,unresolvedImports:g,projectRootPath:s.getCurrentDirectory(),cachePath:d,kind:"discover"}}var QF;(s=>{function c(){throw new Error("No Project.")}s.ThrowNoProject=c;function g(){throw new Error("The project's language service is disabled.")}s.ThrowProjectLanguageServiceDisabled=g;function d(h,_){throw new Error(`Project '${_.getProjectName()}' does not contain document '${h}'`)}s.ThrowProjectDoesNotContainDocument=d})(QF||(QF={}));function op(s){return iu(s)}function ose(s,c,g){let d=Xp(s)?s:Xc(s,c);return g(d)}function Vpn(s){return s}function Ppn(){let s=new Map;return{get(c){return s.get(c)},set(c,g){s.set(c,g)},contains(c){return s.has(c)},remove(c){s.delete(c)}}}function E4t(s){return/dev\/null\/inferredProject\d+\*/.test(s)}function S4t(s){return`/dev/null/inferredProject${s}*`}function v4t(s){return`/dev/null/autoImportProviderProject${s}*`}function B4t(s){return`/dev/null/auxiliaryProject${s}*`}function w4t(){return[]}var T4t=class oki{constructor(c,g){this.host=c,this.pendingTimeouts=new Map,this.logger=g.hasLevel(3)?g:void 0}schedule(c,g,d){let h=this.pendingTimeouts.get(c);h&&this.host.clearTimeout(h),this.pendingTimeouts.set(c,this.host.setTimeout(oki.run,g,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${h?", Cancelled earlier one":""}`)}cancel(c){let g=this.pendingTimeouts.get(c);return g?(this.host.clearTimeout(g),this.pendingTimeouts.delete(c)):!1}static run(c,g,d){g.pendingTimeouts.delete(c),g.logger&&g.logger.info(`Running: ${c}`),d()}},R4t=class aki{constructor(c,g,d){this.host=c,this.delay=g,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(aki.run,this.delay,this))}static run(c){c.timerId=void 0;let g=c.logger.hasLevel(2),d=g&&c.host.getMemoryUsage();if(c.host.gc(),g){let h=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${d}, after ${h}`)}}};function dst(s){let c=gp(s);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}var N4t={};o(N4t,{ClassificationType:()=>prt,CommandTypes:()=>D4t,CompletionTriggerKind:()=>Art,IndentStyle:()=>Hpn,JsxEmit:()=>Ypn,ModuleKind:()=>Qpn,ModuleResolutionKind:()=>Xpn,NewLineKind:()=>Jpn,OrganizeImportsMode:()=>grt,PollingWatchKind:()=>Mpn,ScriptTarget:()=>Upn,SemicolonPreference:()=>drt,WatchDirectoryKind:()=>Opn,WatchFileKind:()=>Wpn});var D4t=(s=>(s.JsxClosingTag="jsxClosingTag",s.LinkedEditingRange="linkedEditingRange",s.Brace="brace",s.BraceFull="brace-full",s.BraceCompletion="braceCompletion",s.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",s.Change="change",s.Close="close",s.Completions="completions",s.CompletionInfo="completionInfo",s.CompletionsFull="completions-full",s.CompletionDetails="completionEntryDetails",s.CompletionDetailsFull="completionEntryDetails-full",s.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",s.CompileOnSaveEmitFile="compileOnSaveEmitFile",s.Configure="configure",s.Definition="definition",s.DefinitionFull="definition-full",s.DefinitionAndBoundSpan="definitionAndBoundSpan",s.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",s.Implementation="implementation",s.ImplementationFull="implementation-full",s.EmitOutput="emit-output",s.Exit="exit",s.FileReferences="fileReferences",s.FileReferencesFull="fileReferences-full",s.Format="format",s.Formatonkey="formatonkey",s.FormatFull="format-full",s.FormatonkeyFull="formatonkey-full",s.FormatRangeFull="formatRange-full",s.Geterr="geterr",s.GeterrForProject="geterrForProject",s.SemanticDiagnosticsSync="semanticDiagnosticsSync",s.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",s.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",s.NavBar="navbar",s.NavBarFull="navbar-full",s.Navto="navto",s.NavtoFull="navto-full",s.NavTree="navtree",s.NavTreeFull="navtree-full",s.DocumentHighlights="documentHighlights",s.DocumentHighlightsFull="documentHighlights-full",s.Open="open",s.Quickinfo="quickinfo",s.QuickinfoFull="quickinfo-full",s.References="references",s.ReferencesFull="references-full",s.Reload="reload",s.Rename="rename",s.RenameInfoFull="rename-full",s.RenameLocationsFull="renameLocations-full",s.Saveto="saveto",s.SignatureHelp="signatureHelp",s.SignatureHelpFull="signatureHelp-full",s.FindSourceDefinition="findSourceDefinition",s.Status="status",s.TypeDefinition="typeDefinition",s.ProjectInfo="projectInfo",s.ReloadProjects="reloadProjects",s.Unknown="unknown",s.OpenExternalProject="openExternalProject",s.OpenExternalProjects="openExternalProjects",s.CloseExternalProject="closeExternalProject",s.SynchronizeProjectList="synchronizeProjectList",s.ApplyChangedToOpenFiles="applyChangedToOpenFiles",s.UpdateOpen="updateOpen",s.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",s.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",s.Cleanup="cleanup",s.GetOutliningSpans="getOutliningSpans",s.GetOutliningSpansFull="outliningSpans",s.TodoComments="todoComments",s.Indentation="indentation",s.DocCommentTemplate="docCommentTemplate",s.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",s.NameOrDottedNameSpan="nameOrDottedNameSpan",s.BreakpointStatement="breakpointStatement",s.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",s.GetCodeFixes="getCodeFixes",s.GetCodeFixesFull="getCodeFixes-full",s.GetCombinedCodeFix="getCombinedCodeFix",s.GetCombinedCodeFixFull="getCombinedCodeFix-full",s.ApplyCodeActionCommand="applyCodeActionCommand",s.GetSupportedCodeFixes="getSupportedCodeFixes",s.GetApplicableRefactors="getApplicableRefactors",s.GetEditsForRefactor="getEditsForRefactor",s.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",s.PreparePasteEdits="preparePasteEdits",s.GetPasteEdits="getPasteEdits",s.GetEditsForRefactorFull="getEditsForRefactor-full",s.OrganizeImports="organizeImports",s.OrganizeImportsFull="organizeImports-full",s.GetEditsForFileRename="getEditsForFileRename",s.GetEditsForFileRenameFull="getEditsForFileRename-full",s.ConfigurePlugin="configurePlugin",s.SelectionRange="selectionRange",s.SelectionRangeFull="selectionRange-full",s.ToggleLineComment="toggleLineComment",s.ToggleLineCommentFull="toggleLineComment-full",s.ToggleMultilineComment="toggleMultilineComment",s.ToggleMultilineCommentFull="toggleMultilineComment-full",s.CommentSelection="commentSelection",s.CommentSelectionFull="commentSelection-full",s.UncommentSelection="uncommentSelection",s.UncommentSelectionFull="uncommentSelection-full",s.PrepareCallHierarchy="prepareCallHierarchy",s.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",s.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",s.ProvideInlayHints="provideInlayHints",s.WatchChange="watchChange",s.MapCode="mapCode",s.CopilotRelated="copilotRelated",s))(D4t||{}),Wpn=(s=>(s.FixedPollingInterval="FixedPollingInterval",s.PriorityPollingInterval="PriorityPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s.UseFsEvents="UseFsEvents",s.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",s))(Wpn||{}),Opn=(s=>(s.UseFsEvents="UseFsEvents",s.FixedPollingInterval="FixedPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s))(Opn||{}),Mpn=(s=>(s.FixedInterval="FixedInterval",s.PriorityInterval="PriorityInterval",s.DynamicPriority="DynamicPriority",s.FixedChunkSize="FixedChunkSize",s))(Mpn||{}),Hpn=(s=>(s.None="None",s.Block="Block",s.Smart="Smart",s))(Hpn||{}),Ypn=(s=>(s.None="none",s.Preserve="preserve",s.ReactNative="react-native",s.React="react",s.ReactJSX="react-jsx",s.ReactJSXDev="react-jsxdev",s))(Ypn||{}),Qpn=(s=>(s.None="none",s.CommonJS="commonjs",s.AMD="amd",s.UMD="umd",s.System="system",s.ES6="es6",s.ES2015="es2015",s.ES2020="es2020",s.ES2022="es2022",s.ESNext="esnext",s.Node16="node16",s.Node18="node18",s.Node20="node20",s.NodeNext="nodenext",s.Preserve="preserve",s))(Qpn||{}),Xpn=(s=>(s.Classic="classic",s.Node="node",s.NodeJs="node",s.Node10="node10",s.Node16="node16",s.NodeNext="nodenext",s.Bundler="bundler",s))(Xpn||{}),Jpn=(s=>(s.Crlf="Crlf",s.Lf="Lf",s))(Jpn||{}),Upn=(s=>(s.ES3="es3",s.ES5="es5",s.ES6="es6",s.ES2015="es2015",s.ES2016="es2016",s.ES2017="es2017",s.ES2018="es2018",s.ES2019="es2019",s.ES2020="es2020",s.ES2021="es2021",s.ES2022="es2022",s.ES2023="es2023",s.ES2024="es2024",s.ESNext="esnext",s.JSON="json",s.Latest="esnext",s))(Upn||{}),k4t=class{constructor(s,c,g){this.host=s,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=g||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(s){this.svc=void 0,this.text=s,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(s,c,g){this.switchToScriptVersionCache().edit(s,c-s,g),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(s){return pe.assert(s!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=Lz(this.svc.getSnapshot())),this.text!==s?(this.useText(s),this.ownFileText=!1,!0):!1}reloadWithFileText(s){let{text:c,fileSize:g}=s||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(s):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=g,this.ownFileText=!s||s===this.info.fileName,this.ownFileText&&this.info.mTime===Rh.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||Rh).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var s;return((s=this.tryUseScriptVersionCache())==null?void 0:s.getSnapshot())||(this.textSnapshot??(this.textSnapshot=NVe.fromString(pe.checkDefined(this.text))))}getAbsolutePositionAndLineText(s){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(s);let g=this.getLineMap();return s<=g.length?{absolutePosition:g[s-1],lineText:this.text.substring(g[s-1],g[s])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(s){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(s);let g=this.getLineMap(),d=g[s],h=s+1c===void 0?c=this.host.readFile(g)||"":c;if(!w3(this.info.fileName)){let h=this.host.getFileSize?this.host.getFileSize(g):d().length;if(h>Ist)return pe.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${g} for info ${this.info.fileName}: fileSize: ${h}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(g,h),{text:"",fileSize:h}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=Lst.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&this.getOrLoadText(),this.isOpen?(!this.svc&&!this.textSnapshot&&(this.svc=Lst.fromString(pe.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(pe.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return pe.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=cA(pe.checkDefined(this.text)))}getLineInfo(){let s=this.tryUseScriptVersionCache();if(s)return{getLineCount:()=>s.getLineCount(),getLineText:g=>s.getAbsolutePositionAndLineText(g+1).lineText};let c=this.getLineMap();return Get(this.text,c)}};function fpe(s){return s[0]==="^"||(s.includes("walkThroughSnippet:/")||s.includes("untitled:/"))&&gp(s)[0]==="^"||s.includes(":^")&&!s.includes(ag)}var x4t=class{constructor(s,c,g,d,h,_){this.host=s,this.fileName=c,this.scriptKind=g,this.hasMixedContent=d,this.path=h,this.containingProjects=[],this.isDynamic=fpe(c),this.textStorage=new k4t(s,this,_),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=g||FAe(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(s){this.textStorage.isOpen=!0,s!==void 0&&this.textStorage.reload(s)&&this.markContainingProjectsAsDirty()}close(s=!0){this.textStorage.isOpen=!1,s&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){pe.assert(!!this.containingProjects.length);let s=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=s.toPath(c),this.realpath!==this.path&&s.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(s){let c=!this.isAttached(s);return c&&(this.containingProjects.push(s),s.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),s.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(s){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===s;case 2:return this.containingProjects[0]===s||this.containingProjects[1]===s;default:return k(this.containingProjects,s)}}detachFromProject(s){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===s?(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:Ql(this.containingProjects,s)&&s.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let s of this.containingProjects){s9(s)&&s.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=s.getRootFilesMap().get(this.path);s.removeFile(this,!1,!1),s.onFileAddedOrRemoved(this.isSymlink()),c&&!ase(s)&&s.addMissingFileRoot(c.fileName)}St(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return QF.ThrowNoProject();case 1:return s2e(this.containingProjects[0])||i2e(this.containingProjects[0])?QF.ThrowNoProject():this.containingProjects[0];default:let s,c,g,d;for(let h=0;h!s.isOrphan())}lineToTextSpan(s){return this.textStorage.lineToTextSpan(s)}lineOffsetToPosition(s,c,g){return this.textStorage.lineOffsetToPosition(s,c,g)}positionToLineOffset(s){jWs(s);let c=this.textStorage.positionToLineOffset(s);return zWs(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Xs(this.sourceMapFilePath)&&(Cv(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function jWs(s){pe.assert(typeof s=="number",`Expected position ${s} to be a number.`),pe.assert(s>=0,"Expected position to be non-negative.")}function zWs(s){pe.assert(typeof s.line=="number",`Expected line ${s.line} to be a number.`),pe.assert(typeof s.offset=="number",`Expected offset ${s.offset} to be a number.`),pe.assert(s.line>0,`Expected line to be non-${s.line===0?"zero":"negative"}`),pe.assert(s.offset>0,`Expected offset to be non-${s.offset===0?"zero":"negative"}`)}function G4t(s){return jt(s.containingProjects,i2e)}function F4t(s){return jt(s.containingProjects,s2e)}var Ipe=(s=>(s[s.Inferred=0]="Inferred",s[s.Configured=1]="Configured",s[s.External=2]="External",s[s.AutoImportProvider=3]="AutoImportProvider",s[s.Auxiliary=4]="Auxiliary",s))(Ipe||{});function r2e(s,c=!1){let g={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(let d of s){let h=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:g.js+=1,g.jsSize+=h;break;case 2:g.jsx+=1,g.jsxSize+=h;break;case 3:PC(d.fileName)?(g.dts+=1,g.dtsSize+=h):(g.ts+=1,g.tsSize+=h);break;case 4:g.tsx+=1,g.tsxSize+=h;break;case 7:g.deferred+=1,g.deferredSize+=h;break}}return g}function qWs(s){let c=r2e(s.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function Z4t(s){let c=r2e(s.getRootScriptInfos());return c.ts===0&&c.tsx===0}function L4t(s){let c=r2e(s.getScriptInfos());return c.ts===0&&c.tsx===0}function V4t(s){return!s.some(c=>aA(c,".ts")&&!PC(c)||aA(c,".tsx"))}function P4t(s){return s.generatedFilePath!==void 0}function Kpn(s,c){if(s===c||(s||zm).length===0&&(c||zm).length===0)return!0;let g=new Map,d=0;for(let h of s)g.get(h)!==!0&&(g.set(h,!0),d++);for(let h of c){let _=g.get(h);if(_===void 0)return!1;_===!0&&(g.set(h,!1),d--)}return d===0}function $Ws(s,c){return s.enable!==c.enable||!Kpn(s.include,c.include)||!Kpn(s.exclude,c.exclude)}function eOs(s,c){return TF(s)!==TF(c)}function tOs(s,c){return s===c?!1:!Sc(s,c)}var zz=class cki{constructor(c,g,d,h,_,S,R,T,W,V){switch(this.projectKind=g,this.projectService=d,this.compilerOptions=S,this.compileOnSaveEnabled=R,this.watchOptions=T,this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.initialLoadPending=!1,this.dirty=!1,this.typingFiles=zm,this.moduleSpecifierCache=cJt(this),this.createHash=$i(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=YP.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,d.logger.info(`Creating ${Ipe[g]}Project: ${c}, currentDirectory: ${V}`),this.projectName=c,this.directoryStructureHost=W,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(V),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new pYt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||TF(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=xPe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:pe.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let M=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=ee=>this.writeLog(ee):M.trace&&(this.trace=ee=>M.trace(ee)),this.realpath=$i(M,M.realpath),this.preferNonRecursiveWatch=this.projectService.canUseWatchEvents||M.preferNonRecursiveWatch,this.resolutionCache=Ntt(this,this.currentDirectory,!0),this.languageService=fYt(this,this.projectService.documentRegistry,this.projectService.serverMode),_&&this.disableLanguageService(_),this.markAsDirty(),i2e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getRedirectFromSourceFile(c){}isNonTsProject(){return _v(this),L4t(this)}isJsOnlyProject(){return _v(this),qWs(this)}static resolveModule(c,g,d,h){return cki.importServicePluginSync({name:c},[g],d,h).resolvedModule}static importServicePluginSync(c,g,d,h){pe.assertIsDefined(d.require);let _,S;for(let R of g){let T=Dp(d.resolvePath(Ro(R,"node_modules")));h(`Loading ${c.name} from ${R} (resolved to ${T})`);let W=d.require(T,c.name);if(!W.error){S=W.module;break}let V=W.error.stack||W.error.message||JSON.stringify(W.error);(_??(_=[])).push(`Failed to load module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}static async importServicePluginAsync(c,g,d,h){pe.assertIsDefined(d.importPlugin);let _,S;for(let R of g){let T=Ro(R,"node_modules");h(`Dynamically importing ${c.name} from ${R} (resolved to ${T})`);let W;try{W=await d.importPlugin(T,c.name)}catch(M){W={module:void 0,error:M}}if(!W.error){S=W.module;break}let V=W.error.stack||W.error.message||JSON.stringify(W.error);(_??(_=[])).push(`Failed to dynamically import module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}isKnownTypesPackageName(c){return this.projectService.typingsInstaller.isKnownTypesPackageName(c)}installPackage(c){return this.projectService.typingsInstaller.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}getSymlinkCache(){return this.symlinks||(this.symlinks=ybe(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFilesMap.size)return E;let c;return this.rootFilesMap.forEach(g=>{(this.languageServiceEnabled||g.info&&g.info.isScriptOpen())&&(c||(c=[])).push(g.fileName)}),Or(c,this.typingFiles)||E}getOrCreateScriptInfoAndAttachToProject(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(g){let d=this.rootFilesMap.get(g.path);d&&d.info!==g&&(d.info=g),g.attachToProject(this)}return g}getScriptKind(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&g.scriptKind}getScriptVersion(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return g&&g.getLatestVersion()}getScriptSnapshot(c){let g=this.getOrCreateScriptInfoAndAttachToProject(c);if(g)return g.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=Mo(iu(this.projectService.getExecutingFilePath()));return Ro(c,Hs(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,g,d,h,_){return this.directoryStructureHost.readDirectory(c,g,d,h,_)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,g){return this.projectService.host.writeFile(c,g)}fileExists(c){let g=this.toPath(c);return!!this.projectService.getScriptInfoForPath(g)||!this.isWatchedMissingFile(g)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,g,d,h,_,S){return this.resolutionCache.resolveModuleNameLiterals(c,g,d,h,_,S)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S)}resolveLibrary(c,g,d,h){return this.resolutionCache.resolveLibrary(c,g,d,h)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return Ou(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),jm.FailedLookupLocations,this)}watchAffectingFileLocation(c,g){return this.projectService.watchFactory.watchFile(c,g,2e3,this.projectService.getWatchOptions(this),jm.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)})}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),jm.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Me(this.projectErrors,c=>!c.file)||zm}getAllProjectErrors(){return this.projectErrors||zm}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&_v(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,g){return this.projectService.getDocumentPositionMapper(this,c,g)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(_v(this),this.builderState=nR.create(this.program,this.builderState,!0),Xt(nR.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),g=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(g.path))?g.fileName:void 0)):[]}emitFile(c,g){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:zm};let{emitSkipped:d,diagnostics:h,outputFiles:_}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let S of _){let R=Xc(S.name,this.currentDirectory);g(R,S.text,S.writeByteOrderMark)}if(this.builderState&&Ly(this.compilerOptions)){let S=_.filter(R=>PC(R.name));if(S.length===1){let R=this.program.getSourceFile(c.fileName),T=this.projectService.host.createHash?this.projectService.host.createHash(S[0].text):ry(S[0].text);nR.updateSignatureOfFile(this.builderState,T,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:h}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(pe.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(c){return!c.enable||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return bo(er(this.plugins,g=>{if(typeof g.module.getExternalFiles=="function")try{return g.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let g=this.program.getCompilerOptions();return c===g.configFilePath?g.configFile:this.getSourceFile(c)}close(){var c;this.typingsCache&&this.projectService.typingsInstaller.onProjectClosed(this),this.typingsCache=void 0,this.closeWatchingTypingLocations(),this.cleanupProgram(),F(this.externalFiles,g=>this.detachScriptInfoIfNotRoot(g)),this.rootFilesMap.forEach(g=>{var d;return(d=g.info)==null?void 0:d.detachFromProject(this)}),this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,(c=this.packageJsonWatches)==null||c.forEach(g=>{g.projects.delete(this),g.close()}),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(Fy(this.missingFilesMap,dv),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(c){let g=this.projectService.getScriptInfo(c);g&&!this.isRoot(g)&&g.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&Do(lr(this.rootFilesMap.values(),c=>{var g;return(g=c.info)==null?void 0:g.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return Do(lr(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?At(this.program.getSourceFiles(),c=>{let g=this.projectService.getScriptInfoForPath(c.resolvedPath);return pe.assert(!!g,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),g}):this.getRootScriptInfos()}getExcludedFiles(){return zm}getFileNames(c,g){if(!this.program)return[];if(!this.languageServiceEnabled){let h=this.getRootFiles();if(this.compilerOptions){let _=IYt(this.compilerOptions);_&&(h||(h=[])).push(_)}return h}let d=[];for(let h of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(h)||d.push(h.fileName);if(!g){let h=this.program.getCompilerOptions().configFile;if(h&&(d.push(h.fileName),h.extendedSourceFiles))for(let _ of h.extendedSourceFiles)d.push(_)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(g=>({fileName:g,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(g)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let g=this.program.getCompilerOptions().configFile;if(g){if(c===g.fileName)return!0;if(g.extendedSourceFiles){for(let d of g.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let g=this.program.getSourceFileByPath(c.path);return!!g&&g.resolvedPath===c.path}containsFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!g)?this.containsScriptInfo(d):!1}isRoot(c){var g,d;return((d=(g=this.rootFilesMap)==null?void 0:g.get(c.path))==null?void 0:d.info)===c}addRoot(c,g){pe.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:g||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let g=this.projectService.toPath(c);this.rootFilesMap.set(g,{fileName:c}),this.markAsDirty()}removeFile(c,g,d){this.isRoot(c)&&this.removeRoot(c),g?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){this.markAutoImportProviderAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.markAutoImportProviderAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}onReleaseOldSourceFile(c,g,d,h){(!h||c.resolvedPath===c.path&&h.resolvedPath!==c.path)&&this.detachScriptInfoFromProject(c.fileName,d)}updateFromProject(){_v(this)}updateGraph(){var c,g;(c=ki)==null||c.push(ki.Phase.Session,"updateGraph",{name:this.projectName,kind:Ipe[this.projectKind]}),this.resolutionCache.startRecordingFilesWithChangedResolutions();let d=this.updateGraphWorker(),h=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let _=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||zm;for(let R of _)this.cachedUnresolvedImportsPerFile.delete(R);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((d||_.length)&&(this.lastCachedUnresolvedImportsList=rOs(this.program,this.cachedUnresolvedImportsPerFile)),this.enqueueInstallTypingsForProject(h)):this.lastCachedUnresolvedImportsList=void 0;let S=this.projectProgramVersion===0&&d;return d&&this.projectProgramVersion++,h&&this.markAutoImportProviderAsDirty(),S&&this.getPackageJsonAutoImportProvider(),(g=ki)==null||g.pop(),!d}enqueueInstallTypingsForProject(c){let g=this.getTypeAcquisition();if(!g||!g.enable||this.projectService.typingsInstaller===lWe)return;let d=this.typingsCache;(c||!d||$Ws(g,d.typeAcquisition)||eOs(this.getCompilationSettings(),d.compilerOptions)||tOs(this.lastCachedUnresolvedImportsList,d.unresolvedImports))&&(this.typingsCache={compilerOptions:this.getCompilationSettings(),typeAcquisition:g,unresolvedImports:this.lastCachedUnresolvedImportsList},this.projectService.typingsInstaller.enqueueInstallTypingsRequest(this,g,this.lastCachedUnresolvedImportsList))}updateTypingFiles(c,g,d,h){this.typingsCache={compilerOptions:c,typeAcquisition:g,unresolvedImports:d};let _=!g||!g.enable?zm:bo(h);q0(_,this.typingFiles,ld(!this.useCaseSensitiveFileNames()),Dc,S=>this.detachScriptInfoFromProject(S))&&(this.typingFiles=_,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Fy(this.typingWatchers,dv),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:TVe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let g=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(h,_)=>{let S=this.toPath(h);if(g.delete(S),!this.typingWatchers.has(S)){let R=_==="FileWatcher"?jm.TypingInstallerLocationFile:jm.TypingInstallerLocationDirectory;this.typingWatchers.set(S,qEe(S)?_==="FileWatcher"?this.projectService.watchFactory.watchFile(h,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),R,this):this.projectService.watchFactory.watchDirectory(h,T=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!aA(T,".json"))return this.writeLog("Ignoring files that are not *.json");if(qf(T,Ro(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),R,this):(this.writeLog(`Skipping watcher creation at ${h}:: ${Dst(R,this)}`),Pie))}};for(let h of c){let _=gp(h);if(_==="package.json"||_==="bower.json"){d(h,"FileWatcher");continue}if(Jh(this.currentDirectory,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){let S=h.indexOf(ag,this.currentDirectory.length+1);d(S!==-1?h.substr(0,S):h,"DirectoryWatcher");continue}if(Jh(this.projectService.typingsInstaller.globalTypingsCacheLocation,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(h,"DirectoryWatcher")}g.forEach((h,_)=>{h.close(),this.typingWatchers.delete(_)})}getCurrentProgram(){return this.program}removeExistingTypings(c){if(!c.length)return c;let g=D9e(this.getCompilerOptions(),this);return Me(c,d=>!g.includes(d))}updateGraphWorker(){var c,g;let d=this.languageService.getCurrentProgram();pe.assert(d===this.program),pe.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let h=Fg(),{hasInvalidatedResolutions:_,hasInvalidatedLibResolutions:S}=this.resolutionCache.createHasInvalidatedResolutions(As,As);this.hasInvalidatedResolutions=_,this.hasInvalidatedLibResolutions=S,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=ki)==null||c.push(ki.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(g=ki)==null||g.pop(),pe.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,this.rootFilesMap.forEach((V,M)=>{var ee;let re=this.program.getSourceFileByPath(M),ge=V.info;!re||((ee=V.info)==null?void 0:ee.path)===re.resolvedPath||(V.info=this.projectService.getScriptInfo(re.fileName),pe.assert(V.info.isAttached(this)),ge?.detachFromProject(this))}),itt(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(V,M)=>this.addMissingFileWatcher(V,M)),this.generatedFilesMap){let V=this.compilerOptions.outFile;P4t(this.generatedFilesMap)?(!V||!this.isValidGeneratedFileWatcher(s0(V)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():V?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((M,ee)=>{let re=this.program.getSourceFileByPath(ee);(!re||re.resolvedPath!==ee||!this.isValidGeneratedFileWatcher(Tne(re.fileName,this.compilerOptions,this.program),M))&&(Cv(M),this.generatedFilesMap.delete(ee))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&SB(this.changedFilesForExportMapCache,V=>{let M=d.getSourceFileByPath(V),ee=this.program.getSourceFileByPath(V);return!M||!ee?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(M,ee,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let T=this.externalFiles||zm;this.externalFiles=this.getExternalFiles(),q0(this.externalFiles,T,ld(!this.useCaseSensitiveFileNames()),V=>{let M=this.projectService.getOrCreateScriptInfoNotOpenedByClient(V,this.currentDirectory,this.directoryStructureHost,!1);M?.attachToProject(this)},V=>this.detachScriptInfoFromProject(V));let W=Fg()-h;return this.sendPerformanceEvent("UpdateGraph",W),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${xc[this.program.structureIsReused]}`:""} Elapsed: ${W}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,g){this.projectService.sendPerformanceEvent(c,g)}detachScriptInfoFromProject(c,g){let d=this.projectService.getScriptInfo(c);d&&(d.detachFromProject(this),g||this.resolutionCache.removeResolutionsOfFile(d.path))}addMissingFileWatcher(c,g){var d;if(s9(this)){let _=this.projectService.configFileExistenceInfoCache.get(c);if((d=_?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return Pie}let h=this.projectService.watchFactory.watchFile(Xc(g,this.currentDirectory),(_,S)=>{s9(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(_,c,S),S===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),h.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),jm.MissingFile,this);return h}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,g){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(g);if(this.generatedFilesMap){if(P4t(this.generatedFilesMap)){pe.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),jm.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,g){return this.toPath(c)===g.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(P4t(this.generatedFilesMap)?Cv(this.generatedFilesMap):Fy(this.generatedFilesMap,Cv),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&!g.isAttached(this)?QF.ThrowProjectDoesNotContainDocument(c,this):g}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,g,d){if(this.initialLoadPending)return` Files (0) InitialLoadPending `;if(!this.program)return` Files (0) NoProgram `;let h=this.program.getSourceFiles(),_=` Files (${h.length}) `;if(c){for(let S of h)_+=` ${S.fileName}${d?` ${S.version} ${JSON.stringify(S.text)}`:""} `;g&&(_+=` -`,xtt(this.program,S=>_+=` ${S} -`))}return _}print(c,g,d){var h;this.writeLog(`Project '${this.projectName}' (${fpe[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),g&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(h=this.noDtsResolutionProject)==null||h.print(!1,!1,!1)}setCompilerOptions(c){var g;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(g=this.noDtsResolutionProject)==null||g.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),NJ(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,g){var d,h;let _=g?T=>Do(T.entries(),([W,V])=>({fileName:W,isSourceOfProjectReferenceRedirect:V})):T=>Do(T.keys());this.initialLoadPending||_v(this);let S={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:ose(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:S,projectErrors:this.getGlobalProjectErrors()};let T=this.lastReportedFileNames,W=((d=this.externalFiles)==null?void 0:d.map(Ie=>({fileName:op(Ie),isSourceOfProjectReferenceRedirect:!1})))||zm,V=Ru(this.getFileNamesWithRedirectInfo(!!g).concat(W),Ie=>Ie.fileName,Ie=>Ie.isSourceOfProjectReferenceRedirect),M=new Map,ee=new Map,re=R?Do(R.keys()):[],ge=[];return Dh(V,(Ie,_e)=>{T.has(_e)?g&&Ie!==T.get(_e)&&ge.push({fileName:_e,isSourceOfProjectReferenceRedirect:Ie}):M.set(_e,Ie)}),Dh(T,(Ie,_e)=>{V.has(_e)||ee.set(_e,Ie)}),this.lastReportedFileNames=V,this.lastReportedVersion=this.projectProgramVersion,{info:S,changes:{added:_(M),removed:_(ee),updated:g?re.map(Ie=>({fileName:Ie,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ie)})):re,updatedRedirects:g?ge:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let T=this.getFileNamesWithRedirectInfo(!!g),W=((h=this.externalFiles)==null?void 0:h.map(M=>({fileName:op(M),isSourceOfProjectReferenceRedirect:!1})))||zm,V=T.concat(W);return this.lastReportedFileNames=Ru(V,M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:S,files:g?V:V.map(M=>M.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Ro(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let h of this.projectService.globalPlugins)h&&(c.plugins&&c.plugins.some(_=>_.name===h)||(this.projectService.logger.info(`Loading global plugin ${h}`),this.enablePlugin({name:h,global:!0},d)))}enablePlugin(c,g){this.projectService.requestEnablePlugin(this,c,g)}enableProxy(c,g){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${g.name} because it did not expose a proper factory function`);return}let d={config:g,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},h=c({typescript:Epn}),_=h.create(d);for(let S of Object.keys(this.languageService))S in _||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${S} in created LS. Patching.`),_[S]=this.languageService[S]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=_,this.plugins.push({name:g.name,module:h})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,g){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(g)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,g){return this.projectService.serverMode!==0?zm:this.projectService.getPackageJsonsVisibleToFile(c,this,g)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c,this)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(Ro(this.currentDirectory,Fde),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=Ant(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||_1e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,g;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:(g=this.projectService.host.trace)==null?void 0:g.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,g,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(_v(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let h=this.includePackageJsonAutoImports();if(h){(c=ki)==null||c.push(ki.Phase.Session,"getPackageJsonAutoImportProvider");let _=Fg();if(this.autoImportProviderHost=P4t.create(h,this,this.getHostForAutoImportProvider())??!1,this.autoImportProviderHost)return _v(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",Fg()-_),(g=ki)==null||g.pop(),this.autoImportProviderHost.getCurrentProgram();(d=ki)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!Dh(this.projectService.openFiles,(c,g)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(g))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return pe.assert(this.projectService.serverMode===0),this.noDtsResolutionProject??(this.noDtsResolutionProject=new L4t(this)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,g,d){var h,_,S,R;let T=this.program,W=pe.checkDefined((h=this.program)==null?void 0:h.getSourceFile(c),"Expected file to be part of program"),V=pe.checkDefined(W.getFullText());(_=this.getScriptInfo(c))==null||_.editContent(0,V.length,g),this.updateGraph();try{d(this.program,T,(S=this.program)==null?void 0:S.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,g.length,V)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0}}};function WWs(s,c){var g,d;let h=s.getSourceFiles();(g=ki)==null||g.push(ki.Phase.Session,"getUnresolvedImports",{count:h.length});let _=s.getTypeChecker().getAmbientModules().map(R=>l2(R.getName())),S=cl(er(h,R=>OWs(s,R,_,c)));return(d=ki)==null||d.pop(),S}function OWs(s,c,g,d){return cr(d,c.path,()=>{let h;return s.forEachResolvedModule(({resolvedModule:_},S)=>{(!_||!ez(_.extension))&&!Xr(S)&&!g.some(R=>R===S)&&(h=Ft(h,TEe(S).packageName))},c),h||zm})}var Z4t=class extends zz{constructor(s,c,g,d,h,_){super(s.newInferredProjectName(),0,s,!1,void 0,c,!1,g,s.host,h),this._isJsInferredProject=!1,this.typeAcquisition=_,this.projectRootPath=d&&s.toCanonicalFileName(d),!d&&!s.useSingleInferredProject&&(this.canonicalCurrentDirectory=s.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(s){s!==this._isJsInferredProject&&(this._isJsInferredProject=s,this.setCompilerOptions())}setCompilerOptions(s){if(!s&&!this.getCompilationSettings())return;let c=Drt(s||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(s){pe.assert(s.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(s),!this._isJsInferredProject&&s.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!s.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(s)}removeRoot(s){this.projectService.stopWatchingConfigFilesForScriptInfo(s),super.removeRoot(s),!this.isOrphan()&&this._isJsInferredProject&&s.isJavaScript()&&ue(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){F(this.getRootScriptInfos(),s=>this.projectService.stopWatchingConfigFilesForScriptInfo(s)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:k4t(this),include:E,exclude:E}}},L4t=class extends zz{constructor(s){super(s.projectService.newAuxiliaryProjectName(),4,s.projectService,!1,void 0,s.getCompilerOptionsForNoDtsResolutionProject(),!1,void 0,s.projectService.host,s.currentDirectory)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},V4t=class Kkr extends zz{constructor(c,g,d){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,!1,void 0,d,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=g,this.useSourceOfProjectReferenceRedirect=$i(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=$i(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,g,d,h){var _,S;if(!c)return E;let R=g.getCurrentProgram();if(!R)return E;let T=Fg(),W,V,M=Ro(g.currentDirectory,Fde),ee=g.getPackageJsonsForAutoImport(Ro(g.currentDirectory,M));for(let Ze of ee)(_=Ze.dependencies)==null||_.forEach((We,Ue)=>Ee(Ue)),(S=Ze.peerDependencies)==null||S.forEach((We,Ue)=>Ee(Ue));let re=0;if(W){let Ze=g.getSymlinkCache();for(let We of Do(W.keys())){if(c===2&&re>=this.maxDependencies)return g.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),E;let Ue=set(We,g.currentDirectory,h,d,R.getModuleResolutionCache());if(Ue){let Ye=Ne(Ue,R,Ze);if(Ye){re+=_e(Ye);continue}}if(!F([g.currentDirectory,g.getGlobalTypingsCacheLocation()],Ye=>{if(Ye){let Tt=set(`@types/${We}`,Ye,h,d,R.getModuleResolutionCache());if(Tt){let ot=Ne(Tt,R,Ze);return re+=_e(ot),!0}}})&&Ue&&h.allowJs&&h.maxNodeModuleJsDepth){let Ye=Ne(Ue,R,Ze,!0);re+=_e(Ye)}}}let ge=R.getResolvedProjectReferences(),Ie=0;return ge?.length&&g.projectService.getHostPreferences().includeCompletionsForModuleExports&&ge.forEach(Ze=>{if(Ze?.commandLine.options.outFile)Ie+=_e(Te([fN(Ze.commandLine.options.outFile,".d.ts")]));else if(Ze){let We=FA(()=>RU(Ze.commandLine,!g.useCaseSensitiveFileNames()));Ie+=_e(Te(Xt(Ze.commandLine.fileNames,Ue=>!PC(Ue)&&!aA(Ue,".json")&&!R.getSourceFile(Ue)?kde(Ue,Ze.commandLine,!g.useCaseSensitiveFileNames(),We):void 0)))}}),V?.size&&g.log(`AutoImportProviderProject: found ${V.size} root files in ${re} dependencies ${Ie} referenced projects in ${Fg()-T} ms`),V?Do(V.values()):E;function _e(Ze){return Ze?.length?(V??(V=new Set),Ze.forEach(We=>V.add(We)),1):0}function Ee(Ze){Ac(Ze,"@types/")||(W||(W=new Set)).add(Ze)}function Ne(Ze,We,Ue,$e){var Ye;let Tt=Aet(Ze,h,d,We.getModuleResolutionCache(),$e);if(Tt){let ot=(Ye=d.realpath)==null?void 0:Ye.call(d,Ze.packageDirectory),Qe=ot?g.toPath(ot):void 0,mt=Qe&&Qe!==g.toPath(Ze.packageDirectory);return mt&&Ue.setSymlinkedDirectory(Ze.packageDirectory,{real:hp(ot),realPath:hp(Qe)}),Te(Tt,mt?ht=>ht.replace(Ze.packageDirectory,ot):void 0)}}function Te(Ze,We){return Xt(Ze,Ue=>{let $e=We?We(Ue):Ue;if(!R.getSourceFile($e)&&!(We&&R.getSourceFile(Ue)))return $e})}}static create(c,g,d){if(c===0)return;let h={...g.getCompilerOptions(),...this.compilerOptionsOverrides},_=this.getRootFileNames(c,g,d,h);if(_.length)return new Kkr(g,_,h)}isEmpty(){return!jt(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=Kkr.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let g=this.getCurrentProgram(),d=super.updateGraph();return g&&g!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||E}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};V4t.maxDependencies=10,V4t.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0};var P4t=V4t,W4t=class extends zz{constructor(s,c,g,d,h){super(s,1,g,!1,void 0,{},!1,void 0,d,Mo(s)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.initialLoadPending=!0,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(s){this.compilerHost=s}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(s){let c=op(s),g=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(g);return d||this.projectService.configFileExistenceInfoCache.set(g,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,g,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(s){this.releaseParsedConfig(this.projectService.toCanonicalFileName(op(s)))}releaseParsedConfig(s){this.projectService.stopWatchingWildCards(s,this),this.projectService.releaseParsedConfig(s,this)}updateGraph(){if(this.deferredClose)return!1;let s=this.dirty;this.initialLoadPending=!1;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let g;switch(c){case 1:this.openFileWatchTriggered.clear(),g=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=pe.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),g=!0;break;default:g=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||g&&(!s||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),g}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(s){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),g=d=>{try{let h=LP(`${d}/`);if(!h)return d;let _=h.findPackageLocator(`${d}/`),{packageLocation:S}=h.getPackageInformation(_),R=Ro(_.name,mp(S,d,!1));return h.resolveToUnqualified(R,`${c}/`)}catch{return d}};s=s?.map(d=>({...d,path:g(d.path)}))}this.projectReferences=s,this.potentialProjectReferences=void 0}setPotentialProjectReference(s){pe.assert(this.initialLoadPending),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(s)}getRedirectFromSourceFile(s){let c=this.getCurrentProgram();return c&&c.getRedirectFromSourceFile(s)}forEachResolvedProjectReference(s){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(s)}enablePluginsWithOptions(s){var c;if(this.plugins.length=0,!((c=s.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let h=Mo(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${h} to search paths`),d.unshift(h)}if(s.plugins)for(let h of s.plugins)this.enablePlugin(h,d);return this.enableGlobalPlugins(s)}getGlobalProjectErrors(){return Me(this.projectErrors,s=>!s.file)||zm}getAllProjectErrors(){return this.projectErrors||zm}setProjectErrors(s){this.projectErrors=s}close(){this.projectService.configFileExistenceInfoCache.forEach((s,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return mde(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(s){this.parsedCommandLine=s,S9e(s.fileNames,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,vEe(s.raw))}},Ast=class extends zz{constructor(s,c,g,d,h,_,S){super(s,2,c,!0,d,g,h,S,c.host,Mo(_||Dp(s))),this.externalProjectName=s,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let s=super.updateGraph();return this.projectService.sendProjectTelemetry(this),s}getExcludedFiles(){return this.excludedFiles}};function ose(s){return s.projectKind===0}function s9(s){return s.projectKind===1}function r2e(s){return s.projectKind===2}function n2e(s){return s.projectKind===3||s.projectKind===4}function i2e(s){return s9(s)&&!!s.deferredClose}var dst=20*1024*1024,pst=4*1024*1024,sWe="projectsUpdatedInBackground",fst="projectLoadingStart",Ist="projectLoadingFinish",hst="largeFileReferenced",mst="configFileDiag",Cst="projectLanguageServiceState",_st="projectInfo",O4t="openFileInfo",yst="createFileWatcher",bst="createDirectoryWatcher",Est="closeFileWatcher",Hpn="*ensureProjectForOpenFiles*";function Ypn(s){let c=new Map;for(let g of s)if(typeof g.type=="object"){let d=g.type;d.forEach(h=>{pe.assert(typeof h=="number")}),c.set(g.name,d)}return c}var MWs=Ypn(Ww),HWs=Ypn(wz),YWs=new Map(Object.entries({none:0,block:1,smart:2})),M4t={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}};function ase(s){return Xs(s.indentStyle)&&(s.indentStyle=YWs.get(s.indentStyle.toLowerCase()),pe.assert(s.indentStyle!==void 0)),s}function oWe(s){return MWs.forEach((c,g)=>{let d=s[g];Xs(d)&&(s[g]=c.get(d.toLowerCase()))}),s}function s2e(s,c){let g,d;return wz.forEach(h=>{let _=s[h.name];if(_===void 0)return;let S=HWs.get(h.name);(g||(g={}))[h.name]=S?Xs(_)?S.get(_.toLowerCase()):_:vU(h,_,c||"",d||(d=[]))}),g&&{watchOptions:g,errors:d}}function H4t(s){let c;return p9e.forEach(g=>{let d=s[g.name];d!==void 0&&((c||(c={}))[g.name]=d)}),c}function Sst(s){return Xs(s)?vst(s):s}function vst(s){switch(s){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function Y4t(s){let{lazyConfiguredProjectsFromExternalProject:c,...g}=s;return g}var Bst={getFileName:s=>s,getScriptKind:(s,c)=>{let g;if(c){let d=gE(s);d&&jt(c,h=>h.extension===d?(g=h.scriptKind,!0):!1)}return g},hasMixedContent:(s,c)=>jt(c,g=>g.isMixedContent&&aA(s,g.extension))},wst={getFileName:s=>s.fileName,getScriptKind:s=>Sst(s.scriptKind),hasMixedContent:s=>!!s.hasMixedContent};function Qpn(s,c){for(let g of c)if(g.getProjectName()===s)return g}var aWe={isKnownTypesPackageName:As,installPackage:il,enqueueInstallTypingsRequest:Dc,attach:Dc,onProjectClosed:Dc,globalTypingsCacheLocation:void 0},Q4t={close:Dc};function Xpn(s,c){if(!c)return;let g=c.get(s.path);if(g!==void 0)return Tst(s)?g&&!Xs(g)?g.get(s.fileName):void 0:Xs(g)||!g?g:g.get(!1)}function Jpn(s){return!!s.containingProjects}function Tst(s){return!!s.configFileInfo}var X4t=(s=>(s[s.FindOptimized=0]="FindOptimized",s[s.Find=1]="Find",s[s.CreateReplayOptimized=2]="CreateReplayOptimized",s[s.CreateReplay=3]="CreateReplay",s[s.CreateOptimized=4]="CreateOptimized",s[s.Create=5]="Create",s[s.ReloadOptimized=6]="ReloadOptimized",s[s.Reload=7]="Reload",s))(X4t||{});function Upn(s){return s-1}function Kpn(s,c,g,d,h,_,S,R,T){for(var W;;){if(c.parsedCommandLine&&(R&&!c.parsedCommandLine.options.composite||c.parsedCommandLine.options.disableSolutionSearching))return;let V=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:s.path,configFileInfo:!0,isForDefaultProject:!R},d<=3);if(!V)return;let M=c.projectService.findCreateOrReloadConfiguredProject(V,d,h,_,R?void 0:s.fileName,S,R,T);if(!M)return;!M.project.parsedCommandLine&&((W=c.parsedCommandLine)!=null&&W.options.composite)&&M.project.setPotentialProjectReference(c.canonicalConfigFilePath);let ee=g(M);if(ee)return ee;c=M.project}}function jpn(s,c,g,d,h,_,S,R){let T=c.options.disableReferencedProjectLoad?0:d,W;return F(c.projectReferences,V=>{var M;let ee=op(xz(V)),re=s.projectService.toCanonicalFileName(ee),ge=R?.get(re);if(ge!==void 0&&ge>=T)return;let Ie=s.projectService.configFileExistenceInfoCache.get(re),_e=T===0?Ie?.exists||(M=s.resolvedChildConfigs)!=null&&M.has(re)?Ie.config.parsedCommandLine:void 0:s.getParsedCommandLine(ee);if(_e&&T!==d&&T>2&&(_e=s.getParsedCommandLine(ee)),!_e)return;let Ee=s.projectService.findConfiguredProjectByProjectName(ee,_);if(!(T===2&&!Ie&&!Ee)){switch(T){case 6:Ee&&Ee.projectService.reloadConfiguredProjectOptimized(Ee,h,S);case 4:(s.resolvedChildConfigs??(s.resolvedChildConfigs=new Set)).add(re);case 2:case 0:if(Ee||T!==0){let Ne=g(Ie??s.projectService.configFileExistenceInfoCache.get(re),Ee,ee,h,s,re);if(Ne)return Ne}break;default:pe.assertNever(T)}(R??(R=new Map)).set(re,T),(W??(W=[])).push(_e)}})||F(W,V=>V.projectReferences&&jpn(s,V,g,T,h,_,S,R))}function J4t(s,c,g,d,h){let _=!1,S;switch(c){case 2:case 3:z4t(s)&&(S=s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath));break;case 4:if(S=j4t(s),S)break;case 5:_=XWs(s,g);break;case 6:if(s.projectService.reloadConfiguredProjectOptimized(s,d,h),S=j4t(s),S)break;case 7:_=s.projectService.reloadConfiguredProjectClearingSemanticCache(s,d,h);break;case 0:case 1:break;default:pe.assertNever(c)}return{project:s,sentConfigFileDiag:_,configFileExistenceInfo:S,reason:d}}function zpn(s,c){return s.initialLoadPending?(s.potentialProjectReferences&&SB(s.potentialProjectReferences,c))??(s.resolvedChildConfigs&&SB(s.resolvedChildConfigs,c)):void 0}function QWs(s,c,g,d){return s.getCurrentProgram()?s.forEachResolvedProjectReference(c):s.initialLoadPending?zpn(s,d):F(s.getProjectReferences(),g)}function U4t(s,c,g){let d=g&&s.projectService.configuredProjects.get(g);return d&&c(d)}function qpn(s,c){return QWs(s,g=>U4t(s,c,g.sourceFile.path),g=>U4t(s,c,s.toPath(xz(g))),g=>U4t(s,c,g))}function Rst(s,c){return`${Xs(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${s}`}function K4t(s){return!s.isScriptOpen()&&s.mTime!==void 0}function _v(s){return s.invalidateResolutionsOfFailedLookupLocations(),s.dirty&&!s.updateGraph()}function $pn(s,c,g){if(!g&&(s.invalidateResolutionsOfFailedLookupLocations(),!s.dirty))return!1;s.triggerFileForConfigFileDiag=c;let d=s.pendingUpdateLevel;if(s.updateGraph(),!s.triggerFileForConfigFileDiag&&!g)return d===2;let h=s.projectService.sendConfigFileDiagEvent(s,c,g);return s.triggerFileForConfigFileDiag=void 0,h}function XWs(s,c){if(c){if($pn(s,c,!1))return!0}else _v(s);return!1}function j4t(s){let c=op(s.getConfigFilePath()),g=s.projectService.ensureParsedConfigUptoDate(c,s.canonicalConfigFilePath,s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath),s),d=g.config.parsedCommandLine;if(s.parsedCommandLine=d,s.resolvedChildConfigs=void 0,s.updateReferences(d.projectReferences),z4t(s))return g}function z4t(s){return!!s.parsedCommandLine&&(!!s.parsedCommandLine.options.composite||!!tet(s.parsedCommandLine))}function JWs(s){return z4t(s)?s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath):void 0}function UWs(s){return`Creating possible configured project for ${s.fileName} to open`}function Nst(s){return`User requested reload projects: ${s}`}function q4t(s){s9(s)&&(s.projectOptions=!0)}function $4t(s){let c=1;return()=>s(c++)}function eJt(){return{idToCallbacks:new Map,pathToId:new Map}}function efn(s,c){return!!c&&!!s.eventHandler&&!!s.session}function KWs(s,c){if(!efn(s,c))return;let g=eJt(),d=eJt(),h=eJt(),_=1;return s.session.addProtocolHandler("watchChange",re=>(W(re.arguments),{responseRequired:!1})),{watchFile:S,watchDirectory:R,getCurrentDirectory:()=>s.host.getCurrentDirectory(),useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames};function S(re,ge){return T(g,re,ge,Ie=>({eventName:yst,data:{id:Ie,path:re}}))}function R(re,ge,Ie){return T(Ie?h:d,re,ge,_e=>({eventName:bst,data:{id:_e,path:re,recursive:!!Ie,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function T({pathToId:re,idToCallbacks:ge},Ie,_e,Ee){let Ne=s.toPath(Ie),Te=re.get(Ne);Te||re.set(Ne,Te=_++);let Ze=ge.get(Te);return Ze||(ge.set(Te,Ze=new Set),s.eventHandler(Ee(Te))),Ze.add(_e),{close(){let We=ge.get(Te);We?.delete(_e)&&(We.size||(ge.delete(Te),re.delete(Ne),s.eventHandler({eventName:Est,data:{id:Te}})))}}}function W(re){Ki(re)?re.forEach(V):V(re)}function V({id:re,created:ge,deleted:Ie,updated:_e}){M(re,ge,0),M(re,Ie,2),M(re,_e,1)}function M(re,ge,Ie){ge?.length&&(ee(g,re,ge,(_e,Ee)=>_e(Ee,Ie)),ee(d,re,ge,(_e,Ee)=>_e(Ee)),ee(h,re,ge,(_e,Ee)=>_e(Ee)))}function ee(re,ge,Ie,_e){var Ee;(Ee=re.idToCallbacks.get(ge))==null||Ee.forEach(Ne=>{Ie.forEach(Te=>_e(Ne,Dp(Te)))})}}var tfn=class jkr{constructor(c){this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Set,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=$4t(_4t),this.newAutoImportProviderProjectName=$4t(y4t),this.newAuxiliaryProjectName=$4t(b4t),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.rootOfInferredProjects=new Set,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=M4t,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=Dc,this.verifyDocumentRegistry=Dc,this.verifyProgram=Dc,this.onProjectCreation=Dc;var g;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||aWe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||zm,this.pluginProbeLocations=c.pluginProbeLocations||zm,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?Ro(Mo(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=dl()),this.currentDirectory=op(this.host.getCurrentDirectory()),this.toCanonicalFileName=_d(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?hp(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new S4t(this.host,this.logger),this.logger.info(`currentDirectory:: ${this.host.getCurrentDirectory()} useCaseSensitiveFileNames:: ${this.host.useCaseSensitiveFileNames}`),this.logger.info(`libs Location:: ${Mo(this.host.getExecutingFilePath())}`),this.logger.info(`globalTypingsCacheLocation:: ${this.typingsInstaller.globalTypingsCacheLocation}`),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.hostConfiguration={formatCodeOptions:RVe(this.host.newLine),preferences:VB,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=hnt(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,h=d!==0?_=>this.logger.info(_):Dc;this.packageJsonCache=sJt(this),this.watchFactory=this.serverMode!==0?{watchFile:Vde,watchDirectory:Vde}:ntt(KWs(this,c.canUseWatchEvents)||this.host,d,h,Rst),this.canUseWatchEvents=efn(this,c.canUseWatchEvents),this.pnpWatcher=this.watchPnpFile(),(g=c.incrementalVerifier)==null||g.call(c,this)}toPath(c){return Ou(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Xc(c,this.host.getCurrentDirectory())}setDocument(c,g,d){let h=pe.checkDefined(this.getScriptInfoForPath(g));h.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,g){let d=this.getScriptInfoForPath(g);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,g){if(!this.eventHandler)return;let d={eventName:Cst,data:{project:c,languageServiceEnabled:g}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let g=JSON.parse(c);for(let d of Object.keys(g.typesMap))g.typesMap[d].match=new RegExp(g.typesMap[d].match,"i");this.safelist=g.typesMap;for(let d in g.simpleMap)Da(g.simpleMap,d)&&this.legacySafelist.set(d,g.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=M4t,this.legacySafelist.clear()}}updateTypingsForProject(c){let g=this.findProject(c.projectName);if(g)switch(c.kind){case vVe:g.updateTypingFiles(c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings);return;case BVe:g.enqueueInstallTypingsForProject(!0);return}}watchTypingLocations(c){var g;(g=this.findProject(c.projectName))==null||g.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(Hpn,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(i2e(c)||(c.markAsDirty(),n2e(c)))return;let g=c.getProjectName();this.pendingProjectUpdates.set(g,c),this.throttledOperations.schedule(g,250,()=>{this.pendingProjectUpdates.delete(g)&&_v(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:sWe,data:{openFiles:Do(this.openFiles.keys(),g=>this.getScriptInfoForPath(g).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,g){if(!this.eventHandler)return;let d={eventName:hst,data:{file:c,fileSize:g,maxFileSize:pst}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,g){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:fst,data:{project:c,reason:g}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let g={eventName:Ist,data:{project:c}};this.eventHandler(g)}sendPerformanceEvent(c,g){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:g})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,g){if(c.length){for(let d of c)g&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,g){pe.assert(g===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=oWe(c),h=s2e(c,g),_=H4t(c);d.allowNonTsExtensions=!0;let S=g&&this.toCanonicalFileName(g);S?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(S,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(S,h||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(S,_)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=h,this.typeAcquisitionForInferredProjects=_);for(let R of this.inferredProjects)(S?R.projectRootPath===S:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(_),R.setWatchOptions(h?.watchOptions),R.setProjectErrors(h?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return C4t(c)?Qpn(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(op(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(g=>{!g.isOrphan()&&g.languageServiceEnabled&&c(g)})}getDefaultProjectForFile(c,g){return g?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g&&!g.isOrphan()?g.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var g;let d=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(g=this.pendingOpenFileProjectUpdates)!=null&&g.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,5),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g?g.getDefaultProject():(this.logErrorForScriptInfoNotFound(Xs(c)?c:c.fileName),QF.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let g=d=>{c=_v(d)||c};this.externalProjects.forEach(g),this.configuredProjects.forEach(g),this.inferredProjects.forEach(g),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let g=this.getScriptInfoForNormalizedPath(c);return g&&g.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let g=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...g&&g.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,g){pe.assert(!c.isScriptOpen()),g===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Xs(c.sourceMapFilePath)){let g=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(g?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((g,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let g=this.getScriptInfoForPath(c);g&&this.delayUpdateProjectGraphs(g.containingProjects,!0)}handleDeletedFile(c,g){pe.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),g?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,g,d,h){let _=this.watchFactory.watchDirectory(c,R=>this.onWildCardDirectoryWatcherInvoke(c,d,h,S,R),g,this.getWatchOptionsFromProjectWatchOptions(h.parsedCommandLine.watchOptions,Mo(d)),jm.WildcardDirectory,d),S={packageJsonWatches:void 0,close(){var R;_&&(_.close(),_=void 0,(R=S.packageJsonWatches)==null||R.forEach(T=>{T.projects.delete(S),T.close()}),S.packageJsonWatches=void 0)}};return S}onWildCardDirectoryWatcherInvoke(c,g,d,h,_){let S=this.toPath(_),R=d.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(_,S);if(gp(S)==="package.json"&&!_1e(S)&&(R&&R.fileExists||!R&&this.host.fileExists(_))){let W=this.getNormalizedAbsolutePath(_);this.logger.info(`Config: ${g} Detected new package.json: ${W}`),this.packageJsonCache.addOrUpdate(W,S),this.watchPackageJsonFile(W,S,h)}R?.fileExists||this.sendSourceFileChange(S);let T=this.findConfiguredProjectByProjectName(g);YEe({watchedDirPath:this.toPath(c),fileOrDirectory:_,fileOrDirectoryPath:S,configFileName:g,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:d.parsedCommandLine.options,program:T?.getCurrentProgram()||d.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:W=>this.logger.info(W),toPath:W=>this.toPath(W),getScriptKind:T?W=>T.getScriptKind(W):void 0})||(d.updateLevel!==2&&(d.updateLevel=1),d.projects.forEach((W,V)=>{var M;if(!W)return;let ee=this.getConfiguredProjectByCanonicalConfigFilePath(V);if(!ee)return;if(T!==ee&&this.getHostPreferences().includeCompletionsForModuleExports){let ge=this.toPath(g);de((M=ee.getCurrentProgram())==null?void 0:M.getResolvedProjectReferences(),Ie=>Ie?.sourceFile.path===ge)&&ee.markAutoImportProviderAsDirty()}let re=T===ee?1:0;if(!(ee.pendingUpdateLevel>re))if(this.openFiles.has(S))if(pe.checkDefined(this.getScriptInfoForPath(S)).isAttached(ee)){let Ie=Math.max(re,ee.openFileWatchTriggered.get(S)||0);ee.openFileWatchTriggered.set(S,Ie)}else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee);else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee)}))}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,g){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let h=!1;return d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache(),d.config.projects.forEach((_,S)=>{var R,T,W;let V=this.getConfiguredProjectByCanonicalConfigFilePath(S);if(V)if(h=!0,S===c){if(V.initialLoadPending)return;V.pendingUpdateLevel=2,V.pendingUpdateReason=g,this.delayUpdateProjectGraph(V),V.markAutoImportProviderAsDirty()}else{if(V.initialLoadPending){(T=(R=this.configFileExistenceInfoCache.get(S))==null?void 0:R.openFilesImpactedByConfigFile)==null||T.forEach(ee=>{var re;(re=this.pendingOpenFileProjectUpdates)!=null&&re.has(ee)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(ee,this.configFileForOpenFiles.get(ee))});return}let M=this.toPath(c);V.resolutionCache.removeResolutionsFromProjectReferenceRedirects(M),this.delayUpdateProjectGraph(V),this.getHostPreferences().includeCompletionsForModuleExports&&de((W=V.getCurrentProgram())==null?void 0:W.getResolvedProjectReferences(),ee=>ee?.sourceFile.path===M)&&V.markAutoImportProviderAsDirty()}}),h}onConfigFileChanged(c,g,d){let h=this.configFileExistenceInfoCache.get(g),_=this.getConfiguredProjectByCanonicalConfigFilePath(g),S=_?.deferredClose;d===2?(h.exists=!1,_&&(_.deferredClose=!0)):(h.exists=!0,S&&(_.deferredClose=void 0,_.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(g,"Change in config file detected"),this.openFiles.forEach((R,T)=>{var W,V;let M=this.configFileForOpenFiles.get(T);if(!((W=h.openFilesImpactedByConfigFile)!=null&&W.has(T)))return;this.configFileForOpenFiles.delete(T);let ee=this.getScriptInfoForPath(T);this.getConfigFileNameForFile(ee,!1)&&((V=this.pendingOpenFileProjectUpdates)!=null&&V.has(T)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(T,M))}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),pe.shouldAssert(1)&&this.filenameToScriptInfo.forEach(g=>pe.assert(!g.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(Do(lr(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(h=>h.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:ef(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:ef(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,g){pe.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?g||this.currentDirectory:Mo(Xp(c.fileName)?c.fileName:Xc(c.fileName,g?this.getNormalizedAbsolutePath(g):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(Ql(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let h of this.inferredProjects){if(h===d||h.isOrphan())continue;let _=h.getRootScriptInfos();pe.assert(_.length===1||!!h.projectRootPath),_.length===1&&F(_[0].containingProjects,S=>S!==_[0].containingProjects[0]&&!S.isOrphan())&&h.removeFile(_[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,g){var d;let h=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(h),this.stopWatchingConfigFilesForScriptInfo(c);let _=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(_)===c&&this.openFilesWithNonRootedDiskPath.delete(_);let S=!1;for(let R of c.containingProjects){if(s9(R)){c.hasMixedContent&&c.registerFileUpdate();let T=R.openFileWatchTriggered.get(c.path);T!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,g,T),2e3,this.getWatchOptionsFromProjectWatchOptions((_=(h=S?.config)==null?void 0:h.parsedCommandLine)==null?void 0:_.watchOptions,Mo(c)),jm.ConfigFile,d)),this.ensureConfigFileWatcherForProject(S,d)}ensureConfigFileWatcherForProject(c,g){let d=c.config.projects;d.set(g.canonicalConfigFilePath,d.get(g.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,g){var d,h,_;let S=this.configFileExistenceInfoCache.get(c);(d=S.config)!=null&&d.projects.delete(g.canonicalConfigFilePath)&&((h=S.config)!=null&&h.projects.size||(S.config=void 0,ttt(c,this.sharedExtendedConfigFileWatchers),pe.checkDefined(S.watcher),(_=S.openFilesImpactedByConfigFile)!=null&&_.size?S.inferredProjectRoots?zEe(Mo(c))||(S.watcher.close(),S.watcher=Q4t):(S.watcher.close(),S.watcher=void 0):(S.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let g=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!g||this.forEachConfigFileLocation(c,h=>{var _,S,R;let T=this.configFileExistenceInfoCache.get(h);if(T){if(d){if(!((_=T?.openFilesImpactedByConfigFile)!=null&&_.has(c.path)))return}else if(!((S=T.openFilesImpactedByConfigFile)!=null&&S.delete(c.path)))return;g&&(T.inferredProjectRoots--,T.watcher&&!T.config&&!T.inferredProjectRoots&&(T.watcher.close(),T.watcher=void 0)),!((R=T.openFilesImpactedByConfigFile)!=null&&R.size)&&!T.config&&(pe.assert(!T.watcher),this.configFileExistenceInfoCache.delete(h))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(pe.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(g,d)=>{let h=this.configFileExistenceInfoCache.get(g);h?h.inferredProjectRoots=(h.inferredProjectRoots??0)+1:(h={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(g,h)),(h.openFilesImpactedByConfigFile??(h.openFilesImpactedByConfigFile=new Set)).add(c.path),h.watcher||(h.watcher=zEe(Mo(g))?this.watchFactory.watchFile(d,(_,S)=>this.onConfigFileChanged(d,g,S),2e3,this.hostConfiguration.watchOptions,jm.ConfigFileForInferredRoot):Q4t)}))}forEachConfigFileLocation(c,g){if(this.serverMode!==0)return;pe.assert(!Jpn(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(pe.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let _=Mo(c.fileName),S=()=>Jh(d,_,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!S(),T=!0,W=!0;Tst(c)&&(di(c.fileName,"tsconfig.json")?T=!1:T=W=!1);do{let V=sse(_,this.currentDirectory,this.toCanonicalFileName);if(T){let ee=Ro(_,"tsconfig.json");if(g(Ro(V,"tsconfig.json"),ee))return ee}if(W){let ee=Ro(_,"jsconfig.json");if(g(Ro(V,"jsconfig.json"),ee))return ee}if(Vd(V))break;let M=Mo(_);if(M===_)break;_=M,T=W=!0}while(R||S())}findDefaultConfiguredProject(c){var g;return(g=this.findDefaultConfiguredProjectWorker(c,1))==null?void 0:g.defaultProject}findDefaultConfiguredProjectWorker(c,g){return c.isScriptOpen()?this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g):void 0}getConfigFileNameForFileFromCache(c,g){if(g){let d=Xpn(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return Xpn(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,g){if(!this.openFiles.has(c.path))return;let d=g||!1;if(!Tst(c))this.configFileForOpenFiles.set(c.path,d);else{let h=this.configFileForOpenFiles.get(c.path);(!h||Xs(h))&&this.configFileForOpenFiles.set(c.path,h=new Map().set(!1,h)),h.set(c.fileName,d)}}getConfigFileNameForFile(c,g){let d=this.getConfigFileNameForFileFromCache(c,g);if(d!==void 0)return d||void 0;if(g)return;let h=this.forEachConfigFileLocation(c,(_,S)=>this.configFileExists(S,_,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${h}`),this.setConfigFileNameForFileInCache(c,h),h}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(nJt),this.configuredProjects.forEach(nJt),this.inferredProjects.forEach(nJt),this.logger.info("Open files: "),this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(h=>h.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,g){let d=this.toCanonicalFileName(c),h=this.getConfiguredProjectByCanonicalConfigFilePath(d);return g?h:h?.deferredClose?void 0:h}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return Qpn(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,g,d,h){if(g&&g.disableSizeLimit||!this.host.getFileSize)return;let _=dst;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>_-=R||0);let S=0;for(let R of d){let T=h.getFileName(R);if(!w3(T)&&(S+=this.host.getFileSize(T),S>dst||S>_)){let W=d.map(V=>h.getFileName(V)).filter(V=>!w3(V)).map(V=>({name:V,size:this.host.getFileSize(V)})).sort((V,M)=>M.size-V.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${S}). Largest files: ${W.map(V=>`${V.name}:${V.size}`).join(", ")}`),T}}this.projectToSizeMap.set(c,S)}createExternalProject(c,g,d,h,_){let S=oWe(d),R=s2e(d,Mo(Dp(c))),T=new Ast(c,this,S,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,S,g,wst),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return T.setProjectErrors(R?.errors),T.excludedFiles=_,this.addFilesToNonInferredProject(T,g,wst,h),this.externalProjects.push(T),T}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){q4t(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){q4t(c);return}let g=s9(c)?c.projectOptions:void 0;q4t(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:t2e(c.getScriptInfos(),!0),compilerOptions:PWt(c.getCompilationSettings()),typeAcquisition:_(c.getTypeAcquisition()),extends:g&&g.configHasExtendsProperty,files:g&&g.configHasFilesProperty,include:g&&g.configHasIncludeProperty,exclude:g&&g.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:h(),projectType:c instanceof Ast?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:C};this.eventHandler({eventName:_st,data:d});function h(){return s9(c)&&gst(c.getConfigFilePath())||"other"}function _({enable:S,include:R,exclude:T}){return{enable:S,include:R!==void 0&&R.length!==0,exclude:T!==void 0&&T.length!==0}}}addFilesToNonInferredProject(c,g,d,h){this.updateNonInferredProjectFiles(c,g,d),c.setTypeAcquisition(h),c.markAsDirty()}createConfiguredProject(c,g){var d;(d=ki)==null||d.instant(ki.Phase.Session,"createConfiguredProject",{configFilePath:c});let h=this.toCanonicalFileName(c),_=this.configFileExistenceInfoCache.get(h);_?_.exists=!0:this.configFileExistenceInfoCache.set(h,_={exists:!0}),_.config||(_.config={cachedDirectoryStructureHost:j9e(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let S=new W4t(c,h,this,_.config.cachedDirectoryStructureHost,g);return pe.assert(!this.configuredProjects.has(h)),this.configuredProjects.set(h,S),this.createConfigFileWatcherForParsedConfig(c,h,S),S}loadConfiguredProject(c,g){var d,h;(d=ki)==null||d.push(ki.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,g);let _=op(c.getConfigFilePath()),S=this.ensureParsedConfigUptoDate(_,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=S.config.parsedCommandLine;pe.assert(!!R.fileNames);let T=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.parsedCommandLine=R,c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let W=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,T,R.fileNames,Bst);W?(c.disableLanguageService(W),this.configFileExistenceInfoCache.forEach((M,ee)=>this.stopWatchingWildCards(ee,c))):(c.setCompilerOptions(T),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(_,S,c)),c.enablePluginsWithOptions(T);let V=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,V,Bst,T,R.typeAcquisition,R.compileOnSave,R.watchOptions),(h=ki)==null||h.pop()}ensureParsedConfigUptoDate(c,g,d,h){var _,S,R;if(d.config&&(d.config.updateLevel===1&&this.reloadFileNamesOfParsedConfig(c,d.config),!d.config.updateLevel))return this.ensureConfigFileWatcherForProject(d,h),d;if(!d.exists&&d.config)return d.config.updateLevel=void 0,this.ensureConfigFileWatcherForProject(d,h),d;let T=((_=d.config)==null?void 0:_.cachedDirectoryStructureHost)||j9e(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),W=fde(c,Ie=>this.host.readFile(Ie)),V=hEe(c,Xs(W)?W:""),M=V.parseDiagnostics;Xs(W)||M.push(W);let ee=Mo(c),re=EEe(V,T,ee,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&M.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ge=(S=d.config)==null?void 0:S.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:T,projects:new Map},!ge&&!WAe(this.getWatchOptionsFromProjectWatchOptions(void 0,ee),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,ee))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,g,h),z9e(g,re.options,this.sharedExtendedConfigFileWatchers,(Ie,_e)=>this.watchFactory.watchFile(Ie,()=>{var Ee;q9e(this.extendedConfigCache,_e,Te=>this.toPath(Te));let Ne=!1;(Ee=this.sharedExtendedConfigFileWatchers.get(_e))==null||Ee.projects.forEach(Te=>{Ne=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Te,`Change in extended config file ${Ie} detected`)||Ne}),Ne&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,jm.ExtendedConfigFile,c),Ie=>this.toPath(Ie)),d}watchWildcards(c,{exists:g,config:d},h){if(d.projects.set(h.canonicalConfigFilePath,!0),g){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,HEe(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(_,S)=>this.watchWildcardDirectory(_,S,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Fy(d.watchedDirectories,Cv),d.watchedDirectories=void 0}}stopWatchingWildCards(c,g){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(g.canonicalConfigFilePath)||(d.config.projects.set(g.canonicalConfigFilePath,!1),!Dh(d.config.projects,Fl)&&(d.config.watchedDirectories&&(Fy(d.config.watchedDirectories,Cv),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,g,d){var h;let _=c.getRootFilesMap(),S=new Map;for(let R of g){let T=d.getFileName(R),W=op(T),V=ppe(W),M;if(!V&&!c.fileExists(T)){M=sse(W,this.currentDirectory,this.toCanonicalFileName);let ee=_.get(M);ee?(((h=ee.info)==null?void 0:h.path)===M&&(c.removeFile(ee.info,!1,!0),ee.info=void 0),ee.fileName=W):_.set(M,{fileName:W})}else{let ee=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ge=pe.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(W,c.currentDirectory,ee,re,c.directoryStructureHost,!1));M=ge.path;let Ie=_.get(M);!Ie||Ie.info!==ge?(c.addRoot(ge,W),ge.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ge)):Ie.fileName=W}S.set(M,!0)}_.size>S.size&&_.forEach((R,T)=>{S.has(T)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):_.delete(T))})}updateRootAndOptionsOfNonInferredProject(c,g,d,h,_,S,R){c.setCompilerOptions(h),c.setWatchOptions(R),S!==void 0&&(c.compileOnSaveEnabled=S),this.addFilesToNonInferredProject(c,g,d,_)}reloadFileNamesOfConfiguredProject(c){let g=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(g),this.updateNonInferredProjectFiles(c,g.fileNames.concat(c.getExternalFiles(1)),Bst),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,g){if(g.updateLevel===void 0)return g.parsedCommandLine;pe.assert(g.updateLevel===1);let d=g.parsedCommandLine.options.configFile.configFileSpecs,h=Ide(d,Mo(c),g.parsedCommandLine.options,g.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return g.parsedCommandLine={...g.parsedCommandLine,fileNames:h},g.updateLevel=void 0,g.parsedCommandLine}setFileNamesOfAutoImportProviderOrAuxillaryProject(c,g){this.updateNonInferredProjectFiles(c,g,Bst)}reloadConfiguredProjectOptimized(c,g,d){d.has(c)||(d.set(c,6),c.initialLoadPending||this.setProjectForReload(c,2,g))}reloadConfiguredProjectClearingSemanticCache(c,g,d){return d.get(c)===7?!1:(d.set(c,7),this.clearSemanticCache(c),this.reloadConfiguredProject(c,Nst(g)),!0)}setProjectForReload(c,g,d){g===2&&this.clearSemanticCache(c),c.pendingUpdateReason=d&&Nst(d),c.pendingUpdateLevel=g}reloadConfiguredProject(c,g){c.initialLoadPending=!1,this.setProjectForReload(c,0),this.loadConfiguredProject(c,g),$pn(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,g,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let h=c.getLanguageService().getCompilerOptionsDiagnostics();return h.push(...c.getAllProjectErrors()),!d&&h.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=h.length,this.eventHandler({eventName:mst,data:{configFileName:c.getConfigFilePath(),diagnostics:h,triggerFile:g??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&g===void 0)return;if(g){let h=this.toCanonicalFileName(g);for(let _ of this.inferredProjects)if(_.projectRootPath===h)return _;return this.createInferredProject(g,!1,g)}let d;for(let h of this.inferredProjects)h.projectRootPath&&Jh(h.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>h.projectRootPath.length||(d=h));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject(this.currentDirectory,!0,void 0)}getOrCreateSingleInferredWithoutProjectRoot(c){pe.assert(!this.useSingleInferredProject);let g=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===g)return d;return this.createInferredProject(c,!1,void 0)}createInferredProject(c,g,d){let h=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,_,S;d&&(_=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),S=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),_===void 0&&(_=this.watchOptionsForInferredProjects),S===void 0&&(S=this.typeAcquisitionForInferredProjects),_=_||void 0;let R=new Z4t(this,h,_?.watchOptions,d,c,S);return R.setProjectErrors(_?.errors),g?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,g,d,h){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(op(c),g,void 0,void 0,d,h)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(op(c))}getScriptInfoOrConfig(c){let g=op(c),d=this.getScriptInfoForNormalizedPath(g);if(d)return d;let h=this.configuredProjects.get(this.toPath(c));return h&&h.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let g=Do(lr(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,h])=>({path:d,fileName:h.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. -All files are: ${JSON.stringify(g)}`,"Err")}getSymlinkedProjects(c){let g;if(this.realpathToScriptInfos){let h=c.getRealpathIfDifferent();h&&F(this.realpathToScriptInfos.get(h),d),F(this.realpathToScriptInfos.get(c.path),d)}return g;function d(h){if(h!==c)for(let _ of h.containingProjects)_.languageServiceEnabled&&!_.isOrphan()&&!_.getCompilerOptions().preserveSymlinks&&!c.isAttached(_)&&(g?Dh(g,(S,R)=>R===h.path?!1:k(S,_))||g.add(h.path,_):(g=dl(),g.add(h.path,_)))}}watchClosedScriptInfo(c){if(pe.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!Ac(c.path,this.globalCacheLocationDirectoryPath))){let g=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||g===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,h)=>this.onSourceFileChanged(c,h),500,this.hostConfiguration.watchOptions,jm.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,g)))}}createNodeModulesWatcher(c,g){let d=this.watchFactory.watchDirectory(c,_=>{var S;let R=gVe(this.toPath(_));if(!R)return;let T=gp(R);if((S=h.affectedModuleSpecifierCacheProjects)!=null&&S.size&&(T==="package.json"||T==="node_modules")&&h.affectedModuleSpecifierCacheProjects.forEach(W=>{var V;(V=W.getModuleSpecifierCache())==null||V.clear()}),h.refreshScriptInfoRefCount)if(g===R)this.refreshScriptInfosInDirectory(g);else{let W=this.filenameToScriptInfo.get(R);W?K4t(W)&&this.refreshScriptInfo(W):E0(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,jm.NodeModules),h={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var _;d&&!h.refreshScriptInfoRefCount&&!((_=h.affectedModuleSpecifierCacheProjects)!=null&&_.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(g))}};return this.nodeModulesWatchers.set(g,h),h}watchPackageJsonsInNodeModules(c,g){var d;let h=this.toPath(c),_=this.nodeModulesWatchers.get(h)||this.createNodeModulesWatcher(c,h);return pe.assert(!((d=_.affectedModuleSpecifierCacheProjects)!=null&&d.has(g))),(_.affectedModuleSpecifierCacheProjects||(_.affectedModuleSpecifierCacheProjects=new Set)).add(g),{close:()=>{var S;(S=_.affectedModuleSpecifierCacheProjects)==null||S.delete(g),_.close()}}}watchClosedScriptInfoInNodeModules(c){let g=c+"/node_modules",d=this.toPath(g),h=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(g,d);return h.refreshScriptInfoRefCount++,{close:()=>{h.refreshScriptInfoRefCount--,h.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||Rh).getTime()}refreshScriptInfo(c){let g=this.getModifiedTime(c);if(g!==c.mTime){let d=qS(c.mTime,g);c.mTime=g,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+ag,this.filenameToScriptInfo.forEach(g=>{K4t(g)&&Ac(g.path,c)&&this.refreshScriptInfo(g)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,g,d,h,_,S){if(Xp(c)||ppe(c))return this.getOrCreateScriptInfoWorker(c,g,!1,void 0,d,!!h,_,S);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,g,d,h,_,S){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,g,d,h,!!_,S,!1)}getOrCreateScriptInfoWorker(c,g,d,h,_,S,R,T){pe.assert(h===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let W=sse(c,g,this.toCanonicalFileName),V=this.filenameToScriptInfo.get(W);if(V){if(V.deferredDelete){if(pe.assert(!V.isDynamic),!d&&!(R||this.host).fileExists(c))return T?V:void 0;V.deferredDelete=void 0}}else{let M=ppe(c);if(pe.assert(Xp(c)||M||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} +`,Ftt(this.program,S=>_+=` ${S} +`))}return _}print(c,g,d){var h;this.writeLog(`Project '${this.projectName}' (${Ipe[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),g&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(h=this.noDtsResolutionProject)==null||h.print(!1,!1,!1)}setCompilerOptions(c){var g;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(g=this.noDtsResolutionProject)==null||g.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),NJ(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,g){var d,h;let _=g?T=>Do(T.entries(),([W,V])=>({fileName:W,isSourceOfProjectReferenceRedirect:V})):T=>Do(T.keys());this.initialLoadPending||_v(this);let S={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:ase(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:S,projectErrors:this.getGlobalProjectErrors()};let T=this.lastReportedFileNames,W=((d=this.externalFiles)==null?void 0:d.map(Ie=>({fileName:op(Ie),isSourceOfProjectReferenceRedirect:!1})))||zm,V=Ru(this.getFileNamesWithRedirectInfo(!!g).concat(W),Ie=>Ie.fileName,Ie=>Ie.isSourceOfProjectReferenceRedirect),M=new Map,ee=new Map,re=R?Do(R.keys()):[],ge=[];return Dh(V,(Ie,_e)=>{T.has(_e)?g&&Ie!==T.get(_e)&&ge.push({fileName:_e,isSourceOfProjectReferenceRedirect:Ie}):M.set(_e,Ie)}),Dh(T,(Ie,_e)=>{V.has(_e)||ee.set(_e,Ie)}),this.lastReportedFileNames=V,this.lastReportedVersion=this.projectProgramVersion,{info:S,changes:{added:_(M),removed:_(ee),updated:g?re.map(Ie=>({fileName:Ie,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ie)})):re,updatedRedirects:g?ge:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let T=this.getFileNamesWithRedirectInfo(!!g),W=((h=this.externalFiles)==null?void 0:h.map(M=>({fileName:op(M),isSourceOfProjectReferenceRedirect:!1})))||zm,V=T.concat(W);return this.lastReportedFileNames=Ru(V,M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:S,files:g?V:V.map(M=>M.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Ro(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let h of this.projectService.globalPlugins)h&&(c.plugins&&c.plugins.some(_=>_.name===h)||(this.projectService.logger.info(`Loading global plugin ${h}`),this.enablePlugin({name:h,global:!0},d)))}enablePlugin(c,g){this.projectService.requestEnablePlugin(this,c,g)}enableProxy(c,g){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${g.name} because it did not expose a proper factory function`);return}let d={config:g,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},h=c({typescript:Npn}),_=h.create(d);for(let S of Object.keys(this.languageService))S in _||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${S} in created LS. Patching.`),_[S]=this.languageService[S]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=_,this.plugins.push({name:g.name,module:h})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,g){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(g)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,g){return this.projectService.serverMode!==0?zm:this.projectService.getPackageJsonsVisibleToFile(c,this,g)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c,this)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(Ro(this.currentDirectory,Zde),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=pnt(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||y1e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,g;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:(g=this.projectService.host.trace)==null?void 0:g.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,g,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(_v(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let h=this.includePackageJsonAutoImports();if(h){(c=ki)==null||c.push(ki.Phase.Session,"getPackageJsonAutoImportProvider");let _=Fg();if(this.autoImportProviderHost=H4t.create(h,this,this.getHostForAutoImportProvider())??!1,this.autoImportProviderHost)return _v(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",Fg()-_),(g=ki)==null||g.pop(),this.autoImportProviderHost.getCurrentProgram();(d=ki)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!Dh(this.projectService.openFiles,(c,g)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(g))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return pe.assert(this.projectService.serverMode===0),this.noDtsResolutionProject??(this.noDtsResolutionProject=new O4t(this)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,g,d){var h,_,S,R;let T=this.program,W=pe.checkDefined((h=this.program)==null?void 0:h.getSourceFile(c),"Expected file to be part of program"),V=pe.checkDefined(W.getFullText());(_=this.getScriptInfo(c))==null||_.editContent(0,V.length,g),this.updateGraph();try{d(this.program,T,(S=this.program)==null?void 0:S.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,g.length,V)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0}}};function rOs(s,c){var g,d;let h=s.getSourceFiles();(g=ki)==null||g.push(ki.Phase.Session,"getUnresolvedImports",{count:h.length});let _=s.getTypeChecker().getAmbientModules().map(R=>l2(R.getName())),S=cl(er(h,R=>nOs(s,R,_,c)));return(d=ki)==null||d.pop(),S}function nOs(s,c,g,d){return cr(d,c.path,()=>{let h;return s.forEachResolvedModule(({resolvedModule:_},S)=>{(!_||!ez(_.extension))&&!Xr(S)&&!g.some(R=>R===S)&&(h=Ft(h,REe(S).packageName))},c),h||zm})}var W4t=class extends zz{constructor(s,c,g,d,h,_){super(s.newInferredProjectName(),0,s,!1,void 0,c,!1,g,s.host,h),this._isJsInferredProject=!1,this.typeAcquisition=_,this.projectRootPath=d&&s.toCanonicalFileName(d),!d&&!s.useSingleInferredProject&&(this.canonicalCurrentDirectory=s.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(s){s!==this._isJsInferredProject&&(this._isJsInferredProject=s,this.setCompilerOptions())}setCompilerOptions(s){if(!s&&!this.getCompilationSettings())return;let c=xrt(s||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(s){pe.assert(s.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(s),!this._isJsInferredProject&&s.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!s.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(s)}removeRoot(s){this.projectService.stopWatchingConfigFilesForScriptInfo(s),super.removeRoot(s),!this.isOrphan()&&this._isJsInferredProject&&s.isJavaScript()&&ue(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){F(this.getRootScriptInfos(),s=>this.projectService.stopWatchingConfigFilesForScriptInfo(s)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:Z4t(this),include:E,exclude:E}}},O4t=class extends zz{constructor(s){super(s.projectService.newAuxiliaryProjectName(),4,s.projectService,!1,void 0,s.getCompilerOptionsForNoDtsResolutionProject(),!1,void 0,s.projectService.host,s.currentDirectory)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},M4t=class exr extends zz{constructor(c,g,d){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,!1,void 0,d,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=g,this.useSourceOfProjectReferenceRedirect=$i(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=$i(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,g,d,h){var _,S;if(!c)return E;let R=g.getCurrentProgram();if(!R)return E;let T=Fg(),W,V,M=Ro(g.currentDirectory,Zde),ee=g.getPackageJsonsForAutoImport(Ro(g.currentDirectory,M));for(let Ze of ee)(_=Ze.dependencies)==null||_.forEach((We,Ue)=>Ee(Ue)),(S=Ze.peerDependencies)==null||S.forEach((We,Ue)=>Ee(Ue));let re=0;if(W){let Ze=g.getSymlinkCache();for(let We of Do(W.keys())){if(c===2&&re>=this.maxDependencies)return g.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),E;let Ue=aet(We,g.currentDirectory,h,d,R.getModuleResolutionCache());if(Ue){let Ye=Ne(Ue,R,Ze);if(Ye){re+=_e(Ye);continue}}if(!F([g.currentDirectory,g.getGlobalTypingsCacheLocation()],Ye=>{if(Ye){let Tt=aet(`@types/${We}`,Ye,h,d,R.getModuleResolutionCache());if(Tt){let ot=Ne(Tt,R,Ze);return re+=_e(ot),!0}}})&&Ue&&h.allowJs&&h.maxNodeModuleJsDepth){let Ye=Ne(Ue,R,Ze,!0);re+=_e(Ye)}}}let ge=R.getResolvedProjectReferences(),Ie=0;return ge?.length&&g.projectService.getHostPreferences().includeCompletionsForModuleExports&&ge.forEach(Ze=>{if(Ze?.commandLine.options.outFile)Ie+=_e(Te([fN(Ze.commandLine.options.outFile,".d.ts")]));else if(Ze){let We=FA(()=>RU(Ze.commandLine,!g.useCaseSensitiveFileNames()));Ie+=_e(Te(Xt(Ze.commandLine.fileNames,Ue=>!PC(Ue)&&!aA(Ue,".json")&&!R.getSourceFile(Ue)?xde(Ue,Ze.commandLine,!g.useCaseSensitiveFileNames(),We):void 0)))}}),V?.size&&g.log(`AutoImportProviderProject: found ${V.size} root files in ${re} dependencies ${Ie} referenced projects in ${Fg()-T} ms`),V?Do(V.values()):E;function _e(Ze){return Ze?.length?(V??(V=new Set),Ze.forEach(We=>V.add(We)),1):0}function Ee(Ze){Ac(Ze,"@types/")||(W||(W=new Set)).add(Ze)}function Ne(Ze,We,Ue,$e){var Ye;let Tt=pet(Ze,h,d,We.getModuleResolutionCache(),$e);if(Tt){let ot=(Ye=d.realpath)==null?void 0:Ye.call(d,Ze.packageDirectory),Qe=ot?g.toPath(ot):void 0,mt=Qe&&Qe!==g.toPath(Ze.packageDirectory);return mt&&Ue.setSymlinkedDirectory(Ze.packageDirectory,{real:hp(ot),realPath:hp(Qe)}),Te(Tt,mt?ht=>ht.replace(Ze.packageDirectory,ot):void 0)}}function Te(Ze,We){return Xt(Ze,Ue=>{let $e=We?We(Ue):Ue;if(!R.getSourceFile($e)&&!(We&&R.getSourceFile(Ue)))return $e})}}static create(c,g,d){if(c===0)return;let h={...g.getCompilerOptions(),...this.compilerOptionsOverrides},_=this.getRootFileNames(c,g,d,h);if(_.length)return new exr(g,_,h)}isEmpty(){return!jt(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=exr.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let g=this.getCurrentProgram(),d=super.updateGraph();return g&&g!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||E}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};M4t.maxDependencies=10,M4t.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0};var H4t=M4t,Y4t=class extends zz{constructor(s,c,g,d,h){super(s,1,g,!1,void 0,{},!1,void 0,d,Mo(s)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.initialLoadPending=!0,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(s){this.compilerHost=s}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(s){let c=op(s),g=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(g);return d||this.projectService.configFileExistenceInfoCache.set(g,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,g,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(s){this.releaseParsedConfig(this.projectService.toCanonicalFileName(op(s)))}releaseParsedConfig(s){this.projectService.stopWatchingWildCards(s,this),this.projectService.releaseParsedConfig(s,this)}updateGraph(){if(this.deferredClose)return!1;let s=this.dirty;this.initialLoadPending=!1;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let g;switch(c){case 1:this.openFileWatchTriggered.clear(),g=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=pe.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),g=!0;break;default:g=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||g&&(!s||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),g}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(s){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),g=d=>{try{let h=LP(`${d}/`);if(!h)return d;let _=h.findPackageLocator(`${d}/`),{packageLocation:S}=h.getPackageInformation(_),R=Ro(_.name,mp(S,d,!1));return h.resolveToUnqualified(R,`${c}/`)}catch{return d}};s=s?.map(d=>({...d,path:g(d.path)}))}this.projectReferences=s,this.potentialProjectReferences=void 0}setPotentialProjectReference(s){pe.assert(this.initialLoadPending),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(s)}getRedirectFromSourceFile(s){let c=this.getCurrentProgram();return c&&c.getRedirectFromSourceFile(s)}forEachResolvedProjectReference(s){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(s)}enablePluginsWithOptions(s){var c;if(this.plugins.length=0,!((c=s.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let h=Mo(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${h} to search paths`),d.unshift(h)}if(s.plugins)for(let h of s.plugins)this.enablePlugin(h,d);return this.enableGlobalPlugins(s)}getGlobalProjectErrors(){return Me(this.projectErrors,s=>!s.file)||zm}getAllProjectErrors(){return this.projectErrors||zm}setProjectErrors(s){this.projectErrors=s}close(){this.projectService.configFileExistenceInfoCache.forEach((s,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return Cde(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(s){this.parsedCommandLine=s,B9e(s.fileNames,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,BEe(s.raw))}},pst=class extends zz{constructor(s,c,g,d,h,_,S){super(s,2,c,!0,d,g,h,S,c.host,Mo(_||Dp(s))),this.externalProjectName=s,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let s=super.updateGraph();return this.projectService.sendProjectTelemetry(this),s}getExcludedFiles(){return this.excludedFiles}};function ase(s){return s.projectKind===0}function s9(s){return s.projectKind===1}function n2e(s){return s.projectKind===2}function i2e(s){return s.projectKind===3||s.projectKind===4}function s2e(s){return s9(s)&&!!s.deferredClose}var fst=20*1024*1024,Ist=4*1024*1024,aWe="projectsUpdatedInBackground",hst="projectLoadingStart",mst="projectLoadingFinish",Cst="largeFileReferenced",_st="configFileDiag",yst="projectLanguageServiceState",bst="projectInfo",Q4t="openFileInfo",Est="createFileWatcher",Sst="createDirectoryWatcher",vst="closeFileWatcher",jpn="*ensureProjectForOpenFiles*";function zpn(s){let c=new Map;for(let g of s)if(typeof g.type=="object"){let d=g.type;d.forEach(h=>{pe.assert(typeof h=="number")}),c.set(g.name,d)}return c}var iOs=zpn(Ww),sOs=zpn(wz),oOs=new Map(Object.entries({none:0,block:1,smart:2})),X4t={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}};function cse(s){return Xs(s.indentStyle)&&(s.indentStyle=oOs.get(s.indentStyle.toLowerCase()),pe.assert(s.indentStyle!==void 0)),s}function cWe(s){return iOs.forEach((c,g)=>{let d=s[g];Xs(d)&&(s[g]=c.get(d.toLowerCase()))}),s}function o2e(s,c){let g,d;return wz.forEach(h=>{let _=s[h.name];if(_===void 0)return;let S=sOs.get(h.name);(g||(g={}))[h.name]=S?Xs(_)?S.get(_.toLowerCase()):_:vU(h,_,c||"",d||(d=[]))}),g&&{watchOptions:g,errors:d}}function J4t(s){let c;return I9e.forEach(g=>{let d=s[g.name];d!==void 0&&((c||(c={}))[g.name]=d)}),c}function Bst(s){return Xs(s)?wst(s):s}function wst(s){switch(s){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function U4t(s){let{lazyConfiguredProjectsFromExternalProject:c,...g}=s;return g}var Tst={getFileName:s=>s,getScriptKind:(s,c)=>{let g;if(c){let d=gE(s);d&&jt(c,h=>h.extension===d?(g=h.scriptKind,!0):!1)}return g},hasMixedContent:(s,c)=>jt(c,g=>g.isMixedContent&&aA(s,g.extension))},Rst={getFileName:s=>s.fileName,getScriptKind:s=>Bst(s.scriptKind),hasMixedContent:s=>!!s.hasMixedContent};function qpn(s,c){for(let g of c)if(g.getProjectName()===s)return g}var lWe={isKnownTypesPackageName:As,installPackage:il,enqueueInstallTypingsRequest:Dc,attach:Dc,onProjectClosed:Dc,globalTypingsCacheLocation:void 0},K4t={close:Dc};function $pn(s,c){if(!c)return;let g=c.get(s.path);if(g!==void 0)return Nst(s)?g&&!Xs(g)?g.get(s.fileName):void 0:Xs(g)||!g?g:g.get(!1)}function efn(s){return!!s.containingProjects}function Nst(s){return!!s.configFileInfo}var j4t=(s=>(s[s.FindOptimized=0]="FindOptimized",s[s.Find=1]="Find",s[s.CreateReplayOptimized=2]="CreateReplayOptimized",s[s.CreateReplay=3]="CreateReplay",s[s.CreateOptimized=4]="CreateOptimized",s[s.Create=5]="Create",s[s.ReloadOptimized=6]="ReloadOptimized",s[s.Reload=7]="Reload",s))(j4t||{});function tfn(s){return s-1}function rfn(s,c,g,d,h,_,S,R,T){for(var W;;){if(c.parsedCommandLine&&(R&&!c.parsedCommandLine.options.composite||c.parsedCommandLine.options.disableSolutionSearching))return;let V=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:s.path,configFileInfo:!0,isForDefaultProject:!R},d<=3);if(!V)return;let M=c.projectService.findCreateOrReloadConfiguredProject(V,d,h,_,R?void 0:s.fileName,S,R,T);if(!M)return;!M.project.parsedCommandLine&&((W=c.parsedCommandLine)!=null&&W.options.composite)&&M.project.setPotentialProjectReference(c.canonicalConfigFilePath);let ee=g(M);if(ee)return ee;c=M.project}}function nfn(s,c,g,d,h,_,S,R){let T=c.options.disableReferencedProjectLoad?0:d,W;return F(c.projectReferences,V=>{var M;let ee=op(xz(V)),re=s.projectService.toCanonicalFileName(ee),ge=R?.get(re);if(ge!==void 0&&ge>=T)return;let Ie=s.projectService.configFileExistenceInfoCache.get(re),_e=T===0?Ie?.exists||(M=s.resolvedChildConfigs)!=null&&M.has(re)?Ie.config.parsedCommandLine:void 0:s.getParsedCommandLine(ee);if(_e&&T!==d&&T>2&&(_e=s.getParsedCommandLine(ee)),!_e)return;let Ee=s.projectService.findConfiguredProjectByProjectName(ee,_);if(!(T===2&&!Ie&&!Ee)){switch(T){case 6:Ee&&Ee.projectService.reloadConfiguredProjectOptimized(Ee,h,S);case 4:(s.resolvedChildConfigs??(s.resolvedChildConfigs=new Set)).add(re);case 2:case 0:if(Ee||T!==0){let Ne=g(Ie??s.projectService.configFileExistenceInfoCache.get(re),Ee,ee,h,s,re);if(Ne)return Ne}break;default:pe.assertNever(T)}(R??(R=new Map)).set(re,T),(W??(W=[])).push(_e)}})||F(W,V=>V.projectReferences&&nfn(s,V,g,T,h,_,S,R))}function z4t(s,c,g,d,h){let _=!1,S;switch(c){case 2:case 3:tJt(s)&&(S=s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath));break;case 4:if(S=eJt(s),S)break;case 5:_=cOs(s,g);break;case 6:if(s.projectService.reloadConfiguredProjectOptimized(s,d,h),S=eJt(s),S)break;case 7:_=s.projectService.reloadConfiguredProjectClearingSemanticCache(s,d,h);break;case 0:case 1:break;default:pe.assertNever(c)}return{project:s,sentConfigFileDiag:_,configFileExistenceInfo:S,reason:d}}function ifn(s,c){return s.initialLoadPending?(s.potentialProjectReferences&&SB(s.potentialProjectReferences,c))??(s.resolvedChildConfigs&&SB(s.resolvedChildConfigs,c)):void 0}function aOs(s,c,g,d){return s.getCurrentProgram()?s.forEachResolvedProjectReference(c):s.initialLoadPending?ifn(s,d):F(s.getProjectReferences(),g)}function q4t(s,c,g){let d=g&&s.projectService.configuredProjects.get(g);return d&&c(d)}function sfn(s,c){return aOs(s,g=>q4t(s,c,g.sourceFile.path),g=>q4t(s,c,s.toPath(xz(g))),g=>q4t(s,c,g))}function Dst(s,c){return`${Xs(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${s}`}function $4t(s){return!s.isScriptOpen()&&s.mTime!==void 0}function _v(s){return s.invalidateResolutionsOfFailedLookupLocations(),s.dirty&&!s.updateGraph()}function ofn(s,c,g){if(!g&&(s.invalidateResolutionsOfFailedLookupLocations(),!s.dirty))return!1;s.triggerFileForConfigFileDiag=c;let d=s.pendingUpdateLevel;if(s.updateGraph(),!s.triggerFileForConfigFileDiag&&!g)return d===2;let h=s.projectService.sendConfigFileDiagEvent(s,c,g);return s.triggerFileForConfigFileDiag=void 0,h}function cOs(s,c){if(c){if(ofn(s,c,!1))return!0}else _v(s);return!1}function eJt(s){let c=op(s.getConfigFilePath()),g=s.projectService.ensureParsedConfigUptoDate(c,s.canonicalConfigFilePath,s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath),s),d=g.config.parsedCommandLine;if(s.parsedCommandLine=d,s.resolvedChildConfigs=void 0,s.updateReferences(d.projectReferences),tJt(s))return g}function tJt(s){return!!s.parsedCommandLine&&(!!s.parsedCommandLine.options.composite||!!net(s.parsedCommandLine))}function lOs(s){return tJt(s)?s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath):void 0}function uOs(s){return`Creating possible configured project for ${s.fileName} to open`}function kst(s){return`User requested reload projects: ${s}`}function rJt(s){s9(s)&&(s.projectOptions=!0)}function nJt(s){let c=1;return()=>s(c++)}function iJt(){return{idToCallbacks:new Map,pathToId:new Map}}function afn(s,c){return!!c&&!!s.eventHandler&&!!s.session}function gOs(s,c){if(!afn(s,c))return;let g=iJt(),d=iJt(),h=iJt(),_=1;return s.session.addProtocolHandler("watchChange",re=>(W(re.arguments),{responseRequired:!1})),{watchFile:S,watchDirectory:R,getCurrentDirectory:()=>s.host.getCurrentDirectory(),useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames};function S(re,ge){return T(g,re,ge,Ie=>({eventName:Est,data:{id:Ie,path:re}}))}function R(re,ge,Ie){return T(Ie?h:d,re,ge,_e=>({eventName:Sst,data:{id:_e,path:re,recursive:!!Ie,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function T({pathToId:re,idToCallbacks:ge},Ie,_e,Ee){let Ne=s.toPath(Ie),Te=re.get(Ne);Te||re.set(Ne,Te=_++);let Ze=ge.get(Te);return Ze||(ge.set(Te,Ze=new Set),s.eventHandler(Ee(Te))),Ze.add(_e),{close(){let We=ge.get(Te);We?.delete(_e)&&(We.size||(ge.delete(Te),re.delete(Ne),s.eventHandler({eventName:vst,data:{id:Te}})))}}}function W(re){Ki(re)?re.forEach(V):V(re)}function V({id:re,created:ge,deleted:Ie,updated:_e}){M(re,ge,0),M(re,Ie,2),M(re,_e,1)}function M(re,ge,Ie){ge?.length&&(ee(g,re,ge,(_e,Ee)=>_e(Ee,Ie)),ee(d,re,ge,(_e,Ee)=>_e(Ee)),ee(h,re,ge,(_e,Ee)=>_e(Ee)))}function ee(re,ge,Ie,_e){var Ee;(Ee=re.idToCallbacks.get(ge))==null||Ee.forEach(Ne=>{Ie.forEach(Te=>_e(Ne,Dp(Te)))})}}var cfn=class txr{constructor(c){this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Set,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=nJt(S4t),this.newAutoImportProviderProjectName=nJt(v4t),this.newAuxiliaryProjectName=nJt(B4t),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.rootOfInferredProjects=new Set,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=X4t,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=Dc,this.verifyDocumentRegistry=Dc,this.verifyProgram=Dc,this.onProjectCreation=Dc;var g;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||lWe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||zm,this.pluginProbeLocations=c.pluginProbeLocations||zm,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?Ro(Mo(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=dl()),this.currentDirectory=op(this.host.getCurrentDirectory()),this.toCanonicalFileName=_d(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?hp(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new T4t(this.host,this.logger),this.logger.info(`currentDirectory:: ${this.host.getCurrentDirectory()} useCaseSensitiveFileNames:: ${this.host.useCaseSensitiveFileNames}`),this.logger.info(`libs Location:: ${Mo(this.host.getExecutingFilePath())}`),this.logger.info(`globalTypingsCacheLocation:: ${this.typingsInstaller.globalTypingsCacheLocation}`),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.hostConfiguration={formatCodeOptions:DVe(this.host.newLine),preferences:VB,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=Cnt(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,h=d!==0?_=>this.logger.info(_):Dc;this.packageJsonCache=lJt(this),this.watchFactory=this.serverMode!==0?{watchFile:Pde,watchDirectory:Pde}:stt(gOs(this,c.canUseWatchEvents)||this.host,d,h,Dst),this.canUseWatchEvents=afn(this,c.canUseWatchEvents),this.pnpWatcher=this.watchPnpFile(),(g=c.incrementalVerifier)==null||g.call(c,this)}toPath(c){return Ou(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Xc(c,this.host.getCurrentDirectory())}setDocument(c,g,d){let h=pe.checkDefined(this.getScriptInfoForPath(g));h.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,g){let d=this.getScriptInfoForPath(g);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,g){if(!this.eventHandler)return;let d={eventName:yst,data:{project:c,languageServiceEnabled:g}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let g=JSON.parse(c);for(let d of Object.keys(g.typesMap))g.typesMap[d].match=new RegExp(g.typesMap[d].match,"i");this.safelist=g.typesMap;for(let d in g.simpleMap)Da(g.simpleMap,d)&&this.legacySafelist.set(d,g.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=X4t,this.legacySafelist.clear()}}updateTypingsForProject(c){let g=this.findProject(c.projectName);if(g)switch(c.kind){case wVe:g.updateTypingFiles(c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings);return;case TVe:g.enqueueInstallTypingsForProject(!0);return}}watchTypingLocations(c){var g;(g=this.findProject(c.projectName))==null||g.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(jpn,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(s2e(c)||(c.markAsDirty(),i2e(c)))return;let g=c.getProjectName();this.pendingProjectUpdates.set(g,c),this.throttledOperations.schedule(g,250,()=>{this.pendingProjectUpdates.delete(g)&&_v(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:aWe,data:{openFiles:Do(this.openFiles.keys(),g=>this.getScriptInfoForPath(g).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,g){if(!this.eventHandler)return;let d={eventName:Cst,data:{file:c,fileSize:g,maxFileSize:Ist}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,g){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:hst,data:{project:c,reason:g}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let g={eventName:mst,data:{project:c}};this.eventHandler(g)}sendPerformanceEvent(c,g){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:g})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,g){if(c.length){for(let d of c)g&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,g){pe.assert(g===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=cWe(c),h=o2e(c,g),_=J4t(c);d.allowNonTsExtensions=!0;let S=g&&this.toCanonicalFileName(g);S?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(S,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(S,h||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(S,_)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=h,this.typeAcquisitionForInferredProjects=_);for(let R of this.inferredProjects)(S?R.projectRootPath===S:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(_),R.setWatchOptions(h?.watchOptions),R.setProjectErrors(h?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return E4t(c)?qpn(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(op(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(g=>{!g.isOrphan()&&g.languageServiceEnabled&&c(g)})}getDefaultProjectForFile(c,g){return g?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g&&!g.isOrphan()?g.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var g;let d=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(g=this.pendingOpenFileProjectUpdates)!=null&&g.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,5),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g?g.getDefaultProject():(this.logErrorForScriptInfoNotFound(Xs(c)?c:c.fileName),QF.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let g=d=>{c=_v(d)||c};this.externalProjects.forEach(g),this.configuredProjects.forEach(g),this.inferredProjects.forEach(g),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let g=this.getScriptInfoForNormalizedPath(c);return g&&g.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let g=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...g&&g.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,g){pe.assert(!c.isScriptOpen()),g===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Xs(c.sourceMapFilePath)){let g=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(g?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((g,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let g=this.getScriptInfoForPath(c);g&&this.delayUpdateProjectGraphs(g.containingProjects,!0)}handleDeletedFile(c,g){pe.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),g?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,g,d,h){let _=this.watchFactory.watchDirectory(c,R=>this.onWildCardDirectoryWatcherInvoke(c,d,h,S,R),g,this.getWatchOptionsFromProjectWatchOptions(h.parsedCommandLine.watchOptions,Mo(d)),jm.WildcardDirectory,d),S={packageJsonWatches:void 0,close(){var R;_&&(_.close(),_=void 0,(R=S.packageJsonWatches)==null||R.forEach(T=>{T.projects.delete(S),T.close()}),S.packageJsonWatches=void 0)}};return S}onWildCardDirectoryWatcherInvoke(c,g,d,h,_){let S=this.toPath(_),R=d.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(_,S);if(gp(S)==="package.json"&&!y1e(S)&&(R&&R.fileExists||!R&&this.host.fileExists(_))){let W=this.getNormalizedAbsolutePath(_);this.logger.info(`Config: ${g} Detected new package.json: ${W}`),this.packageJsonCache.addOrUpdate(W,S),this.watchPackageJsonFile(W,S,h)}R?.fileExists||this.sendSourceFileChange(S);let T=this.findConfiguredProjectByProjectName(g);QEe({watchedDirPath:this.toPath(c),fileOrDirectory:_,fileOrDirectoryPath:S,configFileName:g,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:d.parsedCommandLine.options,program:T?.getCurrentProgram()||d.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:W=>this.logger.info(W),toPath:W=>this.toPath(W),getScriptKind:T?W=>T.getScriptKind(W):void 0})||(d.updateLevel!==2&&(d.updateLevel=1),d.projects.forEach((W,V)=>{var M;if(!W)return;let ee=this.getConfiguredProjectByCanonicalConfigFilePath(V);if(!ee)return;if(T!==ee&&this.getHostPreferences().includeCompletionsForModuleExports){let ge=this.toPath(g);de((M=ee.getCurrentProgram())==null?void 0:M.getResolvedProjectReferences(),Ie=>Ie?.sourceFile.path===ge)&&ee.markAutoImportProviderAsDirty()}let re=T===ee?1:0;if(!(ee.pendingUpdateLevel>re))if(this.openFiles.has(S))if(pe.checkDefined(this.getScriptInfoForPath(S)).isAttached(ee)){let Ie=Math.max(re,ee.openFileWatchTriggered.get(S)||0);ee.openFileWatchTriggered.set(S,Ie)}else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee);else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee)}))}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,g){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let h=!1;return d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache(),d.config.projects.forEach((_,S)=>{var R,T,W;let V=this.getConfiguredProjectByCanonicalConfigFilePath(S);if(V)if(h=!0,S===c){if(V.initialLoadPending)return;V.pendingUpdateLevel=2,V.pendingUpdateReason=g,this.delayUpdateProjectGraph(V),V.markAutoImportProviderAsDirty()}else{if(V.initialLoadPending){(T=(R=this.configFileExistenceInfoCache.get(S))==null?void 0:R.openFilesImpactedByConfigFile)==null||T.forEach(ee=>{var re;(re=this.pendingOpenFileProjectUpdates)!=null&&re.has(ee)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(ee,this.configFileForOpenFiles.get(ee))});return}let M=this.toPath(c);V.resolutionCache.removeResolutionsFromProjectReferenceRedirects(M),this.delayUpdateProjectGraph(V),this.getHostPreferences().includeCompletionsForModuleExports&&de((W=V.getCurrentProgram())==null?void 0:W.getResolvedProjectReferences(),ee=>ee?.sourceFile.path===M)&&V.markAutoImportProviderAsDirty()}}),h}onConfigFileChanged(c,g,d){let h=this.configFileExistenceInfoCache.get(g),_=this.getConfiguredProjectByCanonicalConfigFilePath(g),S=_?.deferredClose;d===2?(h.exists=!1,_&&(_.deferredClose=!0)):(h.exists=!0,S&&(_.deferredClose=void 0,_.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(g,"Change in config file detected"),this.openFiles.forEach((R,T)=>{var W,V;let M=this.configFileForOpenFiles.get(T);if(!((W=h.openFilesImpactedByConfigFile)!=null&&W.has(T)))return;this.configFileForOpenFiles.delete(T);let ee=this.getScriptInfoForPath(T);this.getConfigFileNameForFile(ee,!1)&&((V=this.pendingOpenFileProjectUpdates)!=null&&V.has(T)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(T,M))}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),pe.shouldAssert(1)&&this.filenameToScriptInfo.forEach(g=>pe.assert(!g.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(Do(lr(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(h=>h.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:ef(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:ef(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,g){pe.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?g||this.currentDirectory:Mo(Xp(c.fileName)?c.fileName:Xc(c.fileName,g?this.getNormalizedAbsolutePath(g):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(Ql(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let h of this.inferredProjects){if(h===d||h.isOrphan())continue;let _=h.getRootScriptInfos();pe.assert(_.length===1||!!h.projectRootPath),_.length===1&&F(_[0].containingProjects,S=>S!==_[0].containingProjects[0]&&!S.isOrphan())&&h.removeFile(_[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,g){var d;let h=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(h),this.stopWatchingConfigFilesForScriptInfo(c);let _=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(_)===c&&this.openFilesWithNonRootedDiskPath.delete(_);let S=!1;for(let R of c.containingProjects){if(s9(R)){c.hasMixedContent&&c.registerFileUpdate();let T=R.openFileWatchTriggered.get(c.path);T!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,g,T),2e3,this.getWatchOptionsFromProjectWatchOptions((_=(h=S?.config)==null?void 0:h.parsedCommandLine)==null?void 0:_.watchOptions,Mo(c)),jm.ConfigFile,d)),this.ensureConfigFileWatcherForProject(S,d)}ensureConfigFileWatcherForProject(c,g){let d=c.config.projects;d.set(g.canonicalConfigFilePath,d.get(g.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,g){var d,h,_;let S=this.configFileExistenceInfoCache.get(c);(d=S.config)!=null&&d.projects.delete(g.canonicalConfigFilePath)&&((h=S.config)!=null&&h.projects.size||(S.config=void 0,ntt(c,this.sharedExtendedConfigFileWatchers),pe.checkDefined(S.watcher),(_=S.openFilesImpactedByConfigFile)!=null&&_.size?S.inferredProjectRoots?qEe(Mo(c))||(S.watcher.close(),S.watcher=K4t):(S.watcher.close(),S.watcher=void 0):(S.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let g=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!g||this.forEachConfigFileLocation(c,h=>{var _,S,R;let T=this.configFileExistenceInfoCache.get(h);if(T){if(d){if(!((_=T?.openFilesImpactedByConfigFile)!=null&&_.has(c.path)))return}else if(!((S=T.openFilesImpactedByConfigFile)!=null&&S.delete(c.path)))return;g&&(T.inferredProjectRoots--,T.watcher&&!T.config&&!T.inferredProjectRoots&&(T.watcher.close(),T.watcher=void 0)),!((R=T.openFilesImpactedByConfigFile)!=null&&R.size)&&!T.config&&(pe.assert(!T.watcher),this.configFileExistenceInfoCache.delete(h))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(pe.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(g,d)=>{let h=this.configFileExistenceInfoCache.get(g);h?h.inferredProjectRoots=(h.inferredProjectRoots??0)+1:(h={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(g,h)),(h.openFilesImpactedByConfigFile??(h.openFilesImpactedByConfigFile=new Set)).add(c.path),h.watcher||(h.watcher=qEe(Mo(g))?this.watchFactory.watchFile(d,(_,S)=>this.onConfigFileChanged(d,g,S),2e3,this.hostConfiguration.watchOptions,jm.ConfigFileForInferredRoot):K4t)}))}forEachConfigFileLocation(c,g){if(this.serverMode!==0)return;pe.assert(!efn(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(pe.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let _=Mo(c.fileName),S=()=>Jh(d,_,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!S(),T=!0,W=!0;Nst(c)&&(di(c.fileName,"tsconfig.json")?T=!1:T=W=!1);do{let V=ose(_,this.currentDirectory,this.toCanonicalFileName);if(T){let ee=Ro(_,"tsconfig.json");if(g(Ro(V,"tsconfig.json"),ee))return ee}if(W){let ee=Ro(_,"jsconfig.json");if(g(Ro(V,"jsconfig.json"),ee))return ee}if(Vd(V))break;let M=Mo(_);if(M===_)break;_=M,T=W=!0}while(R||S())}findDefaultConfiguredProject(c){var g;return(g=this.findDefaultConfiguredProjectWorker(c,1))==null?void 0:g.defaultProject}findDefaultConfiguredProjectWorker(c,g){return c.isScriptOpen()?this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g):void 0}getConfigFileNameForFileFromCache(c,g){if(g){let d=$pn(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return $pn(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,g){if(!this.openFiles.has(c.path))return;let d=g||!1;if(!Nst(c))this.configFileForOpenFiles.set(c.path,d);else{let h=this.configFileForOpenFiles.get(c.path);(!h||Xs(h))&&this.configFileForOpenFiles.set(c.path,h=new Map().set(!1,h)),h.set(c.fileName,d)}}getConfigFileNameForFile(c,g){let d=this.getConfigFileNameForFileFromCache(c,g);if(d!==void 0)return d||void 0;if(g)return;let h=this.forEachConfigFileLocation(c,(_,S)=>this.configFileExists(S,_,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${h}`),this.setConfigFileNameForFileInCache(c,h),h}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(aJt),this.configuredProjects.forEach(aJt),this.inferredProjects.forEach(aJt),this.logger.info("Open files: "),this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(h=>h.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,g){let d=this.toCanonicalFileName(c),h=this.getConfiguredProjectByCanonicalConfigFilePath(d);return g?h:h?.deferredClose?void 0:h}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return qpn(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,g,d,h){if(g&&g.disableSizeLimit||!this.host.getFileSize)return;let _=fst;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>_-=R||0);let S=0;for(let R of d){let T=h.getFileName(R);if(!w3(T)&&(S+=this.host.getFileSize(T),S>fst||S>_)){let W=d.map(V=>h.getFileName(V)).filter(V=>!w3(V)).map(V=>({name:V,size:this.host.getFileSize(V)})).sort((V,M)=>M.size-V.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${S}). Largest files: ${W.map(V=>`${V.name}:${V.size}`).join(", ")}`),T}}this.projectToSizeMap.set(c,S)}createExternalProject(c,g,d,h,_){let S=cWe(d),R=o2e(d,Mo(Dp(c))),T=new pst(c,this,S,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,S,g,Rst),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return T.setProjectErrors(R?.errors),T.excludedFiles=_,this.addFilesToNonInferredProject(T,g,Rst,h),this.externalProjects.push(T),T}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){rJt(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){rJt(c);return}let g=s9(c)?c.projectOptions:void 0;rJt(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:r2e(c.getScriptInfos(),!0),compilerOptions:HWt(c.getCompilationSettings()),typeAcquisition:_(c.getTypeAcquisition()),extends:g&&g.configHasExtendsProperty,files:g&&g.configHasFilesProperty,include:g&&g.configHasIncludeProperty,exclude:g&&g.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:h(),projectType:c instanceof pst?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:C};this.eventHandler({eventName:bst,data:d});function h(){return s9(c)&&dst(c.getConfigFilePath())||"other"}function _({enable:S,include:R,exclude:T}){return{enable:S,include:R!==void 0&&R.length!==0,exclude:T!==void 0&&T.length!==0}}}addFilesToNonInferredProject(c,g,d,h){this.updateNonInferredProjectFiles(c,g,d),c.setTypeAcquisition(h),c.markAsDirty()}createConfiguredProject(c,g){var d;(d=ki)==null||d.instant(ki.Phase.Session,"createConfiguredProject",{configFilePath:c});let h=this.toCanonicalFileName(c),_=this.configFileExistenceInfoCache.get(h);_?_.exists=!0:this.configFileExistenceInfoCache.set(h,_={exists:!0}),_.config||(_.config={cachedDirectoryStructureHost:q9e(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let S=new Y4t(c,h,this,_.config.cachedDirectoryStructureHost,g);return pe.assert(!this.configuredProjects.has(h)),this.configuredProjects.set(h,S),this.createConfigFileWatcherForParsedConfig(c,h,S),S}loadConfiguredProject(c,g){var d,h;(d=ki)==null||d.push(ki.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,g);let _=op(c.getConfigFilePath()),S=this.ensureParsedConfigUptoDate(_,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=S.config.parsedCommandLine;pe.assert(!!R.fileNames);let T=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.parsedCommandLine=R,c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let W=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,T,R.fileNames,Tst);W?(c.disableLanguageService(W),this.configFileExistenceInfoCache.forEach((M,ee)=>this.stopWatchingWildCards(ee,c))):(c.setCompilerOptions(T),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(_,S,c)),c.enablePluginsWithOptions(T);let V=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,V,Tst,T,R.typeAcquisition,R.compileOnSave,R.watchOptions),(h=ki)==null||h.pop()}ensureParsedConfigUptoDate(c,g,d,h){var _,S,R;if(d.config&&(d.config.updateLevel===1&&this.reloadFileNamesOfParsedConfig(c,d.config),!d.config.updateLevel))return this.ensureConfigFileWatcherForProject(d,h),d;if(!d.exists&&d.config)return d.config.updateLevel=void 0,this.ensureConfigFileWatcherForProject(d,h),d;let T=((_=d.config)==null?void 0:_.cachedDirectoryStructureHost)||q9e(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),W=Ide(c,Ie=>this.host.readFile(Ie)),V=mEe(c,Xs(W)?W:""),M=V.parseDiagnostics;Xs(W)||M.push(W);let ee=Mo(c),re=SEe(V,T,ee,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&M.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ge=(S=d.config)==null?void 0:S.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:T,projects:new Map},!ge&&!OAe(this.getWatchOptionsFromProjectWatchOptions(void 0,ee),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,ee))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,g,h),$9e(g,re.options,this.sharedExtendedConfigFileWatchers,(Ie,_e)=>this.watchFactory.watchFile(Ie,()=>{var Ee;eVe(this.extendedConfigCache,_e,Te=>this.toPath(Te));let Ne=!1;(Ee=this.sharedExtendedConfigFileWatchers.get(_e))==null||Ee.projects.forEach(Te=>{Ne=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Te,`Change in extended config file ${Ie} detected`)||Ne}),Ne&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,jm.ExtendedConfigFile,c),Ie=>this.toPath(Ie)),d}watchWildcards(c,{exists:g,config:d},h){if(d.projects.set(h.canonicalConfigFilePath,!0),g){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,YEe(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(_,S)=>this.watchWildcardDirectory(_,S,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Fy(d.watchedDirectories,Cv),d.watchedDirectories=void 0}}stopWatchingWildCards(c,g){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(g.canonicalConfigFilePath)||(d.config.projects.set(g.canonicalConfigFilePath,!1),!Dh(d.config.projects,Fl)&&(d.config.watchedDirectories&&(Fy(d.config.watchedDirectories,Cv),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,g,d){var h;let _=c.getRootFilesMap(),S=new Map;for(let R of g){let T=d.getFileName(R),W=op(T),V=fpe(W),M;if(!V&&!c.fileExists(T)){M=ose(W,this.currentDirectory,this.toCanonicalFileName);let ee=_.get(M);ee?(((h=ee.info)==null?void 0:h.path)===M&&(c.removeFile(ee.info,!1,!0),ee.info=void 0),ee.fileName=W):_.set(M,{fileName:W})}else{let ee=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ge=pe.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(W,c.currentDirectory,ee,re,c.directoryStructureHost,!1));M=ge.path;let Ie=_.get(M);!Ie||Ie.info!==ge?(c.addRoot(ge,W),ge.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ge)):Ie.fileName=W}S.set(M,!0)}_.size>S.size&&_.forEach((R,T)=>{S.has(T)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):_.delete(T))})}updateRootAndOptionsOfNonInferredProject(c,g,d,h,_,S,R){c.setCompilerOptions(h),c.setWatchOptions(R),S!==void 0&&(c.compileOnSaveEnabled=S),this.addFilesToNonInferredProject(c,g,d,_)}reloadFileNamesOfConfiguredProject(c){let g=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(g),this.updateNonInferredProjectFiles(c,g.fileNames.concat(c.getExternalFiles(1)),Tst),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,g){if(g.updateLevel===void 0)return g.parsedCommandLine;pe.assert(g.updateLevel===1);let d=g.parsedCommandLine.options.configFile.configFileSpecs,h=hde(d,Mo(c),g.parsedCommandLine.options,g.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return g.parsedCommandLine={...g.parsedCommandLine,fileNames:h},g.updateLevel=void 0,g.parsedCommandLine}setFileNamesOfAutoImportProviderOrAuxillaryProject(c,g){this.updateNonInferredProjectFiles(c,g,Tst)}reloadConfiguredProjectOptimized(c,g,d){d.has(c)||(d.set(c,6),c.initialLoadPending||this.setProjectForReload(c,2,g))}reloadConfiguredProjectClearingSemanticCache(c,g,d){return d.get(c)===7?!1:(d.set(c,7),this.clearSemanticCache(c),this.reloadConfiguredProject(c,kst(g)),!0)}setProjectForReload(c,g,d){g===2&&this.clearSemanticCache(c),c.pendingUpdateReason=d&&kst(d),c.pendingUpdateLevel=g}reloadConfiguredProject(c,g){c.initialLoadPending=!1,this.setProjectForReload(c,0),this.loadConfiguredProject(c,g),ofn(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,g,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let h=c.getLanguageService().getCompilerOptionsDiagnostics();return h.push(...c.getAllProjectErrors()),!d&&h.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=h.length,this.eventHandler({eventName:_st,data:{configFileName:c.getConfigFilePath(),diagnostics:h,triggerFile:g??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&g===void 0)return;if(g){let h=this.toCanonicalFileName(g);for(let _ of this.inferredProjects)if(_.projectRootPath===h)return _;return this.createInferredProject(g,!1,g)}let d;for(let h of this.inferredProjects)h.projectRootPath&&Jh(h.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>h.projectRootPath.length||(d=h));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject(this.currentDirectory,!0,void 0)}getOrCreateSingleInferredWithoutProjectRoot(c){pe.assert(!this.useSingleInferredProject);let g=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===g)return d;return this.createInferredProject(c,!1,void 0)}createInferredProject(c,g,d){let h=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,_,S;d&&(_=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),S=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),_===void 0&&(_=this.watchOptionsForInferredProjects),S===void 0&&(S=this.typeAcquisitionForInferredProjects),_=_||void 0;let R=new W4t(this,h,_?.watchOptions,d,c,S);return R.setProjectErrors(_?.errors),g?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,g,d,h){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(op(c),g,void 0,void 0,d,h)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(op(c))}getScriptInfoOrConfig(c){let g=op(c),d=this.getScriptInfoForNormalizedPath(g);if(d)return d;let h=this.configuredProjects.get(this.toPath(c));return h&&h.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let g=Do(lr(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,h])=>({path:d,fileName:h.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. +All files are: ${JSON.stringify(g)}`,"Err")}getSymlinkedProjects(c){let g;if(this.realpathToScriptInfos){let h=c.getRealpathIfDifferent();h&&F(this.realpathToScriptInfos.get(h),d),F(this.realpathToScriptInfos.get(c.path),d)}return g;function d(h){if(h!==c)for(let _ of h.containingProjects)_.languageServiceEnabled&&!_.isOrphan()&&!_.getCompilerOptions().preserveSymlinks&&!c.isAttached(_)&&(g?Dh(g,(S,R)=>R===h.path?!1:k(S,_))||g.add(h.path,_):(g=dl(),g.add(h.path,_)))}}watchClosedScriptInfo(c){if(pe.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!Ac(c.path,this.globalCacheLocationDirectoryPath))){let g=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||g===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,h)=>this.onSourceFileChanged(c,h),500,this.hostConfiguration.watchOptions,jm.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,g)))}}createNodeModulesWatcher(c,g){let d=this.watchFactory.watchDirectory(c,_=>{var S;let R=dVe(this.toPath(_));if(!R)return;let T=gp(R);if((S=h.affectedModuleSpecifierCacheProjects)!=null&&S.size&&(T==="package.json"||T==="node_modules")&&h.affectedModuleSpecifierCacheProjects.forEach(W=>{var V;(V=W.getModuleSpecifierCache())==null||V.clear()}),h.refreshScriptInfoRefCount)if(g===R)this.refreshScriptInfosInDirectory(g);else{let W=this.filenameToScriptInfo.get(R);W?$4t(W)&&this.refreshScriptInfo(W):E0(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,jm.NodeModules),h={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var _;d&&!h.refreshScriptInfoRefCount&&!((_=h.affectedModuleSpecifierCacheProjects)!=null&&_.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(g))}};return this.nodeModulesWatchers.set(g,h),h}watchPackageJsonsInNodeModules(c,g){var d;let h=this.toPath(c),_=this.nodeModulesWatchers.get(h)||this.createNodeModulesWatcher(c,h);return pe.assert(!((d=_.affectedModuleSpecifierCacheProjects)!=null&&d.has(g))),(_.affectedModuleSpecifierCacheProjects||(_.affectedModuleSpecifierCacheProjects=new Set)).add(g),{close:()=>{var S;(S=_.affectedModuleSpecifierCacheProjects)==null||S.delete(g),_.close()}}}watchClosedScriptInfoInNodeModules(c){let g=c+"/node_modules",d=this.toPath(g),h=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(g,d);return h.refreshScriptInfoRefCount++,{close:()=>{h.refreshScriptInfoRefCount--,h.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||Rh).getTime()}refreshScriptInfo(c){let g=this.getModifiedTime(c);if(g!==c.mTime){let d=qS(c.mTime,g);c.mTime=g,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+ag,this.filenameToScriptInfo.forEach(g=>{$4t(g)&&Ac(g.path,c)&&this.refreshScriptInfo(g)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,g,d,h,_,S){if(Xp(c)||fpe(c))return this.getOrCreateScriptInfoWorker(c,g,!1,void 0,d,!!h,_,S);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,g,d,h,_,S){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,g,d,h,!!_,S,!1)}getOrCreateScriptInfoWorker(c,g,d,h,_,S,R,T){pe.assert(h===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let W=ose(c,g,this.toCanonicalFileName),V=this.filenameToScriptInfo.get(W);if(V){if(V.deferredDelete){if(pe.assert(!V.isDynamic),!d&&!(R||this.host).fileExists(c))return T?V:void 0;V.deferredDelete=void 0}}else{let M=fpe(c);if(pe.assert(Xp(c)||M||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`),pe.assert(!Xp(c)||this.currentDirectory===g||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(c)),"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} Open script files with non rooted disk path opened with current directory context cannot have same canonical names`),pe.assert(!M||this.currentDirectory===g||this.useInferredProjectPerProjectRoot,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} -Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!d&&!M&&!(R||this.host).fileExists(c))return;V=new R4t(this.host,c,_,S,W,this.filenameToScriptInfoVersion.get(W)),this.filenameToScriptInfo.set(V.path,V),this.filenameToScriptInfoVersion.delete(V.path),d?!Xp(c)&&(!M||this.currentDirectory!==g)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(c),V):this.watchClosedScriptInfo(V)}return d&&(this.stopWatchingScriptInfo(V),V.open(h),S&&V.registerFileUpdate()),V}getScriptInfoForNormalizedPath(c){return!Xp(c)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c))||this.getScriptInfoForPath(sse(c,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(c){let g=this.filenameToScriptInfo.get(c);return!g||!g.deferredDelete?g:void 0}getDocumentPositionMapper(c,g,d){let h=this.getOrCreateScriptInfoNotOpenedByClient(g,c.currentDirectory,this.host,!1);if(!h){d&&c.addGeneratedFileWatch(g,d);return}if(h.getSnapshot(),Xs(h.sourceMapFilePath)){let W=this.getScriptInfoForPath(h.sourceMapFilePath);if(W&&(W.getSnapshot(),W.documentPositionMapper!==void 0))return W.sourceInfos=this.addSourceInfoToSourceMap(d,c,W.sourceInfos),W.documentPositionMapper?W.documentPositionMapper:void 0;h.sourceMapFilePath=void 0}else if(h.sourceMapFilePath){h.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(d,c,h.sourceMapFilePath.sourceInfos);return}else if(h.sourceMapFilePath!==void 0)return;let _,S=(W,V)=>{let M=this.getOrCreateScriptInfoNotOpenedByClient(W,c.currentDirectory,this.host,!0);if(_=M||V,!M||M.deferredDelete)return;let ee=M.getSnapshot();return M.documentPositionMapper!==void 0?M.documentPositionMapper:Lz(ee)},R=c.projectName,T=bnt({getCanonicalFileName:this.toCanonicalFileName,log:W=>this.logger.info(W),getSourceFileLike:W=>this.getSourceFileLike(W,R,h)},h.fileName,h.textStorage.getLineInfo(),S);return S=void 0,_?Xs(_)?h.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?_:Xc(_,c.currentDirectory),h.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(h.sourceMapFilePath=_.path,_.declarationInfoPath=h.path,_.deferredDelete||(_.documentPositionMapper=T||!1),_.sourceInfos=this.addSourceInfoToSourceMap(d,c,_.sourceInfos)):h.sourceMapFilePath=!1,T}addSourceInfoToSourceMap(c,g,d){if(c){let h=this.getOrCreateScriptInfoNotOpenedByClient(c,g.currentDirectory,g.directoryStructureHost,!1);(d||(d=new Set)).add(h.path)}return d}addMissingSourceMapFile(c,g){return this.watchFactory.watchFile(c,()=>{let h=this.getScriptInfoForPath(g);h&&h.sourceMapFilePath&&!Xs(h.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(h.containingProjects,!0),this.delayUpdateSourceInfoProjects(h.sourceMapFilePath.sourceInfos),h.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,jm.MissingSourceMapFile)}getSourceFileLike(c,g,d){let h=g.projectName?g:this.findProject(g);if(h){let S=h.toPath(c),R=h.getSourceFile(S);if(R&&R.resolvedPath===S)return R}let _=this.getOrCreateScriptInfoNotOpenedByClient(c,(h||this).currentDirectory,h?h.directoryStructureHost:this.host,!1);if(_){if(d&&Xs(d.sourceMapFilePath)&&_!==d){let S=this.getScriptInfoForPath(d.sourceMapFilePath);S&&(S.sourceInfos??(S.sourceInfos=new Set)).add(_.path)}return _.cacheSourceFile?_.cacheSourceFile.sourceFile:(_.sourceFileLike||(_.sourceFileLike={get text(){return pe.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:S=>{let R=_.positionToLineOffset(S);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(S,R,T)=>_.lineOffsetToPosition(S+1,R+1,T)}),_.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var g,d;if(c.file){let h=this.getScriptInfoForNormalizedPath(op(c.file));h&&(h.setOptions(ase(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...ase(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:h,includePackageJsonAutoImports:_,includeCompletionsForModuleExports:S}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},h&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(T=>{!T.deferredClose&&!T.isClosed()&&T.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(T)&&T.updateGraph()})),(_!==c.preferences.includePackageJsonAutoImports||!!S!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let h=(g=s2e(c.watchOptions))==null?void 0:g.watchOptions,_=b9e(h,this.currentDirectory);this.hostConfiguration.watchOptions=_,this.hostConfiguration.beforeSubstitution=_===h?void 0:h,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,g){let d=this.hostConfiguration.beforeSubstitution?b9e(this.hostConfiguration.beforeSubstitution,g):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}sendSourceFileChange(c){this.filenameToScriptInfo.forEach(g=>{if(this.openFiles.has(g.path)||!g.fileWatcher)return;let d=FA(()=>this.host.fileExists(g.fileName)?g.deferredDelete?0:1:2);if(c){if(K4t(g)||!g.path.startsWith(c)||d()===2&&g.deferredDelete)return;this.logger.info(`Invoking sourceFileChange on ${g.fileName}:: ${d()}`)}this.onSourceFileChanged(g,d())})}reloadProjects(){this.logger.info("reload projects."),this.sendSourceFileChange(void 0),this.pendingProjectUpdates.forEach((d,h)=>{this.throttledOperations.cancel(h),this.pendingProjectUpdates.delete(h)}),this.throttledOperations.cancel(Hpn),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache())}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Map,g=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,h)=>{let _=`Reloading configured project in external project: ${h}`;d.forEach(S=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?this.reloadConfiguredProjectOptimized(S,_,c):this.reloadConfiguredProjectClearingSemanticCache(S,_,c)})}),this.openFiles.forEach((d,h)=>{let _=this.getScriptInfoForPath(h);de(_.containingProjects,r2e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(_,7,c,g)}),g.forEach(d=>c.set(d,7)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){pe.assert(c.containingProjects.length>0);let g=c.containingProjects[0];!g.isOrphan()&&ose(g)&&g.isRoot(c)&&F(c.containingProjects,d=>d!==g&&!d.isOrphan())&&g.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((g,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),5)),this.openFiles.forEach((g,d)=>{let h=this.getScriptInfoForPath(d);h.isOrphan()?this.assignOrphanScriptInfoToInferredProject(h,g):this.removeRootOfInferredProjectIfNowPartOfOtherProject(h)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(_v),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,g,d,h){return this.openClientFileWithNormalizedPath(op(c),g,d,!1,h?op(h):void 0)}getOriginalLocationEnsuringConfiguredProject(c,g){let d=c.isSourceOfProjectReferenceRedirect(g.fileName),h=d?g:c.getSourceMapper().tryGetSourcePosition(g);if(!h)return;let{fileName:_}=h,S=this.getScriptInfo(_);if(!S&&!this.host.fileExists(_))return;let R={fileName:op(_),path:this.toPath(_)},T=this.getConfigFileNameForFile(R,!1);if(!T)return;let W=this.findConfiguredProjectByProjectName(T);if(!W){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?g:S?.containingProjects.length?h:g;W=this.createConfiguredProject(T,`Creating project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`)}let V=this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(R,5,J4t(W,4),re=>`Creating project referenced in solution ${re.projectName} to find possible configured project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`);if(!V.defaultProject)return;if(V.defaultProject===c)return h;ee(V.defaultProject);let M=this.getScriptInfo(_);if(!M||!M.containingProjects.length)return;return M.containingProjects.forEach(re=>{s9(re)&&ee(re)}),h;function ee(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return de(this.externalProjects,g=>(_v(g),g.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,g,d,h,_){let S=this.getOrCreateScriptInfoWorker(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,!0,g,d,!!h,void 0,!0);return this.openFiles.set(S.path,_),S}assignProjectToOpenedScriptInfo(c){let g,d,h=this.findExternalProjectContainingOpenScriptInfo(c),_,S;if(!h&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,5);R&&(_=R.seenProjects,S=R.sentConfigDiag,R.defaultProject&&(g=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(_v),c.isOrphan()&&(_?.forEach((R,T)=>{R!==4&&!S.has(T)&&this.sendConfigFileDiagEvent(T,c.fileName,!0)}),pe.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),pe.assert(!c.isOrphan()),{configFileName:g,configFileErrors:d,retainProjects:_}}findCreateOrReloadConfiguredProject(c,g,d,h,_,S,R,T,W){let V=W??this.findConfiguredProjectByProjectName(c,h),M=!1,ee;switch(g){case 0:case 1:case 3:if(!V)return;break;case 2:if(!V)return;ee=JWs(V);break;case 4:case 5:V??(V=this.createConfiguredProject(c,d)),R||({sentConfigFileDiag:M,configFileExistenceInfo:ee}=J4t(V,g,_));break;case 6:if(V??(V=this.createConfiguredProject(c,Nst(d))),V.projectService.reloadConfiguredProjectOptimized(V,d,S),ee=j4t(V),ee)break;case 7:V??(V=this.createConfiguredProject(c,Nst(d))),M=!T&&this.reloadConfiguredProjectClearingSemanticCache(V,d,S),T&&!T.has(V)&&!S.has(V)&&(this.setProjectForReload(V,2,d),T.add(V));break;default:pe.assertNever(g)}return{project:V,sentConfigFileDiag:M,configFileExistenceInfo:ee,reason:d}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,d,h){let _=this.getConfigFileNameForFile(c,g<=3);if(!_)return;let S=Upn(g),R=this.findCreateOrReloadConfiguredProject(_,S,UWs(c),d,c.fileName,h);return R&&this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,R,T=>`Creating project referenced in solution ${T.projectName} to find possible configured project for ${c.fileName} to open`,d,h)}isMatchedByConfig(c,g,d){if(g.fileNames.some(T=>this.toPath(T)===d.path))return!0;if(Bbe(d.fileName,g.options,this.hostConfiguration.extraFileExtensions))return!1;let{validatedFilesSpec:h,validatedIncludeSpecs:_,validatedExcludeSpecs:S}=g.options.configFile.configFileSpecs,R=op(Xc(Mo(c),this.currentDirectory));return h?.some(T=>this.toPath(Xc(T,R))===d.path)?!0:!_?.length||B9e(d.fileName,S,this.host.useCaseSensitiveFileNames,this.currentDirectory,R)?!1:_?.some(T=>{let W=Ebe(T,R,"files");return!!W&&zD(`(${W})$`,this.host.useCaseSensitiveFileNames).test(d.fileName)})}tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,d,h,_,S){let R=Jpn(c),T=Upn(g),W=new Map,V,M=new Set,ee,re,ge,Ie;return _e(d),{defaultProject:ee??re,tsconfigProject:ge??Ie,sentConfigDiag:M,seenProjects:W,seenConfigs:V};function _e(Ue){return Te(Ue,Ue.project)??Ze(Ue.project)??We(Ue.project)}function Ee(Ue,$e,Ye,Tt,ot,Qe){if($e){if(W.has($e))return;W.set($e,T)}else{if(V?.has(Qe))return;(V??(V=new Set)).add(Qe)}if(!ot.projectService.isMatchedByConfig(Ye,Ue.config.parsedCommandLine,c)){ot.languageServiceEnabled&&ot.projectService.watchWildcards(Ye,Ue,ot);return}let mt=$e?J4t($e,g,c.fileName,Tt,S):ot.projectService.findCreateOrReloadConfiguredProject(Ye,g,Tt,_,c.fileName,S);if(!mt){pe.assert(g===3);return}return W.set(mt.project,T),mt.sentConfigFileDiag&&M.add(mt.project),Ne(mt.project,ot)}function Ne(Ue,$e){if(W.get(Ue)===g)return;W.set(Ue,g);let Ye=R?c:Ue.projectService.getScriptInfo(c.fileName),Tt=Ye&&Ue.containsScriptInfo(Ye);if(Tt&&!Ue.isSourceOfProjectReferenceRedirect(Ye.path))return ge=$e,ee=Ue;!re&&R&&Tt&&(Ie=$e,re=Ue)}function Te(Ue,$e){return Ue.sentConfigFileDiag&&M.add(Ue.project),Ue.configFileExistenceInfo?Ee(Ue.configFileExistenceInfo,Ue.project,op(Ue.project.getConfigFilePath()),Ue.reason,Ue.project,Ue.project.canonicalConfigFilePath):Ne(Ue.project,$e)}function Ze(Ue){return Ue.parsedCommandLine&&jpn(Ue,Ue.parsedCommandLine,Ee,T,h(Ue),_,S)}function We(Ue){return R?Kpn(c,Ue,_e,T,`Creating possible configured project for ${c.fileName} to open`,_,S,!1):void 0}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,g,d,h){let _=g===1,S=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,_,d);if(!S)return;let{defaultProject:R,tsconfigProject:T,seenProjects:W}=S;return R&&Kpn(c,T,V=>{W.set(V.project,g)},g,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,_,d,!0,h),S}loadAncestorProjectTree(c){c??(c=new Set(lr(this.configuredProjects.entries(),([h,_])=>_.initialLoadPending?void 0:h)));let g=new Set,d=Do(this.configuredProjects.values());for(let h of d)zpn(h,_=>c.has(_))&&_v(h),this.ensureProjectChildren(h,c,g)}ensureProjectChildren(c,g,d){var h;if(!Ar(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let _=(h=c.getCurrentProgram())==null?void 0:h.getResolvedProjectReferences();if(_)for(let S of _){if(!S)continue;let R=tie(S.references,V=>g.has(V.sourceFile.path)?V:void 0);if(!R)continue;let T=op(S.sourceFile.fileName),W=this.findConfiguredProjectByProjectName(T)??this.createConfiguredProject(T,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);_v(W),this.ensureProjectChildren(W,g,d)}}cleanupConfiguredProjects(c,g,d){this.getOrphanConfiguredProjects(c,d,g).forEach(h=>this.removeProject(h))}cleanupProjectsAndScriptInfos(c,g,d){this.cleanupConfiguredProjects(c,d,g);for(let h of this.inferredProjects.slice())h.isOrphan()&&this.removeProject(h);this.removeOrphanScriptInfos()}tryInvokeWildCardDirectories(c){this.configFileExistenceInfoCache.forEach((g,d)=>{var h,_;!((h=g.config)!=null&&h.parsedCommandLine)||k(g.config.parsedCommandLine.fileNames,c.fileName,this.host.useCaseSensitiveFileNames?MA:Mp)||(_=g.config.watchedDirectories)==null||_.forEach((S,R)=>{Jh(R,c.fileName,!this.host.useCaseSensitiveFileNames)&&(this.logger.info(`Invoking ${d}:: wildcard for open scriptInfo:: ${c.fileName}`),this.onWildCardDirectoryWatcherInvoke(R,d,g.config,S.watcher,c.fileName))})})}openClientFileWithNormalizedPath(c,g,d,h,_){let S=this.getScriptInfoForPath(sse(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,this.toCanonicalFileName)),R=this.getOrCreateOpenScriptInfo(c,g,d,h,_);!S&&R&&!R.isDynamic&&this.tryInvokeWildCardDirectories(R);let{retainProjects:T,...W}=this.assignProjectToOpenedScriptInfo(R);return this.cleanupProjectsAndScriptInfos(T,new Set([R.path]),void 0),this.telemetryOnOpenFile(R),this.printProjects(),W}getOrphanConfiguredProjects(c,g,d){let h=new Set(this.configuredProjects.values()),_=W=>{W.originalConfiguredProjects&&(s9(W)||!W.isOrphan())&&W.originalConfiguredProjects.forEach((V,M)=>{let ee=this.getConfiguredProjectByCanonicalConfigFilePath(M);return ee&&T(ee)})};if(c?.forEach((W,V)=>T(V)),!h.size||(this.inferredProjects.forEach(_),this.externalProjects.forEach(_),this.externalProjectToConfiguredProjectMap.forEach((W,V)=>{d?.has(V)||W.forEach(T)}),!h.size)||(Dh(this.openFiles,(W,V)=>{if(g?.has(V))return;let M=this.getScriptInfoForPath(V);if(de(M.containingProjects,r2e))return;let ee=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(M,1);if(ee?.defaultProject&&(ee?.seenProjects.forEach((re,ge)=>T(ge)),!h.size))return h}),!h.size))return h;return Dh(this.configuredProjects,W=>{if(h.has(W)&&(R(W)||qpn(W,S))&&(T(W),!h.size))return h}),h;function S(W){return!h.has(W)||R(W)}function R(W){var V,M;return(W.deferredClose||W.projectService.hasPendingProjectUpdate(W))&&!!((M=(V=W.projectService.configFileExistenceInfoCache.get(W.canonicalConfigFilePath))==null?void 0:V.openFilesImpactedByConfigFile)!=null&&M.size)}function T(W){h.delete(W)&&(_(W),qpn(W,T))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(g=>{if(!g.deferredDelete){if(!g.isScriptOpen()&&g.isOrphan()&&!D4t(g)&&!N4t(g)){if(!g.sourceMapFilePath)return;let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;if(!d||!SB(d,h=>{let _=this.getScriptInfoForPath(h);return!!_&&(_.isScriptOpen()||!_.isOrphan())}))return}if(c.delete(g.path),g.sourceMapFilePath){let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);h?.deferredDelete?g.sourceMapFilePath={watcher:this.addMissingSourceMapFile(h.fileName,g.path),sourceInfos:h.sourceInfos}:c.delete(g.sourceMapFilePath),d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;d&&d.forEach((h,_)=>c.delete(_))}}}),c.forEach(g=>this.deleteScriptInfo(g))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!Zy(this.allJsFilesForOpenFileTelemetry,c.path))return;let g=this.ensureDefaultProjectForFile(c);if(!g.languageServiceEnabled)return;let d=g.getSourceFile(c.path),h=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:O4t,data:{info:{checkJs:h}}})}closeClientFile(c,g){let d=this.getScriptInfoForNormalizedPath(op(c)),h=d?this.closeOpenFile(d,g):!1;return g||this.printProjects(),h}collectChanges(c,g,d,h){for(let _ of g){let S=de(c,R=>R.projectName===_.getProjectName());h.push(_.getChangesSinceVersion(S&&S.version,d))}}synchronizeProjectList(c,g){let d=[];return this.collectChanges(c,this.externalProjects,g,d),this.collectChanges(c,lr(this.configuredProjects.values(),h=>h.deferredClose?void 0:h),g,d),this.collectChanges(c,this.inferredProjects,g,d),d}applyChangesInOpenFiles(c,g,d){let h,_,S=!1;if(c)for(let T of c){(h??(h=[])).push(this.getScriptInfoForPath(sse(op(T.fileName),T.projectRootPath?this.getNormalizedAbsolutePath(T.projectRootPath):this.currentDirectory,this.toCanonicalFileName)));let W=this.getOrCreateOpenScriptInfo(op(T.fileName),T.content,Sst(T.scriptKind),T.hasMixedContent,T.projectRootPath?op(T.projectRootPath):void 0);(_||(_=[])).push(W)}if(g)for(let T of g){let W=this.getScriptInfo(T.fileName);pe.assert(!!W),this.applyChangesToFile(W,T.changes)}if(d)for(let T of d)S=this.closeClientFile(T,!0)||S;let R;F(h,(T,W)=>!T&&_[W]&&!_[W].isDynamic?this.tryInvokeWildCardDirectories(_[W]):void 0),_?.forEach(T=>{var W;return(W=this.assignProjectToOpenedScriptInfo(T).retainProjects)==null?void 0:W.forEach((V,M)=>(R??(R=new Map)).set(M,V))}),S&&this.assignOrphanScriptInfosToInferredProject(),_?(this.cleanupProjectsAndScriptInfos(R,new Set(_.map(T=>T.path)),void 0),_.forEach(T=>this.telemetryOnOpenFile(T)),this.printProjects()):B(d)&&this.printProjects()}applyChangesToFile(c,g){for(let d of g)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,g){let d=op(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let _=this.findExternalProjectByProjectName(c);_&&this.removeProject(_)}g&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let g=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,h)=>g.add(h));for(let d of c)this.openExternalProject(d,!1),g.delete(d.projectFileName);g.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=M4t}applySafeList(c){let g=c.typeAcquisition;pe.assert(!!g,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,g);return d?.excludedFiles??[]}applySafeListWorker(c,g,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let h=d.include||(d.include=[]),_=[],S=g.map(M=>Dp(M.fileName));for(let M of Object.keys(this.safelist)){let ee=this.safelist[M];for(let re of S)if(ee.match.test(re)){if(this.logger.info(`Excluding files based on rule ${M} matching file '${re}'`),ee.types)for(let ge of ee.types)h.includes(ge)||h.push(ge);if(ee.exclude)for(let ge of ee.exclude){let Ie=re.replace(ee.match,(..._e)=>ge.map(Ee=>typeof Ee=="number"?Xs(_e[Ee])?jkr.escapeFilenameForRegex(_e[Ee]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${M} - not enough groups`),"\\*"):Ee).join(""));_.includes(Ie)||_.push(Ie)}else{let ge=jkr.escapeFilenameForRegex(re);_.includes(ge)||_.push(ge)}}}let R=_.map(M=>new RegExp(M,"i")),T,W;for(let M=0;Mee.test(S[M])))V(M);else{if(d.enable){let ee=gp(Om(S[M]));if(aA(ee,"js")){let re=s0(ee),ge=us(re),Ie=this.legacySafelist.get(ge);if(Ie!==void 0){this.logger.info(`Excluded '${S[M]}' because it matched ${ge} from the legacy safelist`),V(M),h.includes(Ie)||h.push(Ie);continue}}}/^.+[.-]min\.js$/.test(S[M])?V(M):T?.push(g[M])}return W?{rootFiles:T,excludedFiles:W}:void 0;function V(M){W||(pe.assert(!T),T=g.slice(0,M),W=[]),W.push(S[M])}}openExternalProject(c,g){let d=this.findExternalProjectByProjectName(c.projectFileName),h,_=[];for(let S of c.rootFiles){let R=op(S.fileName);if(gst(R)){if(this.serverMode===0&&this.host.fileExists(R)){let T=this.findConfiguredProjectByProjectName(R);T||(T=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||T.updateGraph()),(h??(h=new Set)).add(T),pe.assert(!T.isClosed())}}else _.push(S)}if(h)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,h),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let S=c.typeAcquisition||{};S.include=S.include||[],S.exclude=S.exclude||[],S.enable===void 0&&(S.enable=G4t(_.map(W=>W.fileName)));let R=this.applySafeListWorker(c,_,S),T=R?.excludedFiles??[];if(_=R?.rootFiles??_,d){d.excludedFiles=T;let W=oWe(c.options),V=s2e(c.options,d.getCurrentDirectory()),M=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,W,_,wst);M?d.disableLanguageService(M):d.enableLanguageService(),d.setProjectErrors(V?.errors),this.updateRootAndOptionsOfNonInferredProject(d,_,wst,W,S,c.options.compileOnSave,V?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,_,c.options,S,T).updateGraph()}g&&(this.cleanupConfiguredProjects(h,new Set([c.projectFileName])),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,g,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${g.name} from candidate paths: ${d.join(",")}`),!g.name||Xr(g.name)||/[\\/]\.\.?(?:$|[\\/])/.test(g.name)){this.logger.info(`Skipped loading plugin ${g.name||JSON.stringify(g)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let h=zz.importServicePluginAsync(g,d,this.host,S=>this.logger.info(S));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let _=this.pendingPluginEnablements.get(c);_||this.pendingPluginEnablements.set(c,_=[]),_.push(h);return}this.endEnablePlugin(c,zz.importServicePluginSync(g,d,this.host,h=>this.logger.info(h)))}endEnablePlugin(c,{pluginConfigEntry:g,resolvedModule:d,errorLogs:h}){var _;if(d){let S=(_=this.currentPluginConfigOverrides)==null?void 0:_.get(g.name);if(S){let R=g.name;g=S,g.name=R}c.enableProxy(d,g)}else F(h,S=>this.logger.info(S)),this.logger.info(`Couldn't find ${g.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;let c=Do(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){pe.assert(this.currentPluginEnablementPromise===void 0);let g=!1;await Promise.all(At(c,async([d,h])=>{let _=await Promise.all(h);if(d.isClosed()||i2e(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}g=!0;for(let S of _)this.endEnablePlugin(d,S);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,g&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(g=>g.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,g,d){let h=this.packageJsonCache,_=d&&this.toPath(d),S=[],R=T=>{switch(h.directoryHasPackageJson(T)){case 3:return h.searchDirectoryAndAncestors(T,g),R(T);case-1:let W=Ro(T,"package.json");this.watchPackageJsonFile(W,this.toPath(W),g);let V=h.getInDirectory(T);V&&S.push(V)}if(_&&_===T)return!0};return vN(g,Mo(c),R),S}getNearestAncestorDirectoryWithPackageJson(c,g){return vN(g,c,d=>{switch(this.packageJsonCache.directoryHasPackageJson(d)){case-1:return d;case 0:return;case 3:return this.host.fileExists(Ro(d,"package.json"))?d:void 0}})}watchPnpFile(){let c=wen(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(g=>{for(let d of g.getScriptInfos())g.resolutionCache.invalidateResolutionOfFile(d.path);g.markAsDirty(),_v(g)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,jm.ConfigFile)}watchPackageJsonFile(c,g,d){pe.assert(d!==void 0);let h=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(g);if(!h){let _=this.watchFactory.watchFile(c,(S,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(S,g),this.onPackageJsonChange(h);break;case 2:this.packageJsonCache.delete(g),this.onPackageJsonChange(h),h.projects.clear(),h.close()}},250,this.hostConfiguration.watchOptions,jm.PackageJson);h={projects:new Set,close:()=>{var S;h.projects.size||!_||(_.close(),_=void 0,(S=this.packageJsonFilesMap)==null||S.delete(g),this.packageJsonCache.invalidate(g))}},this.packageJsonFilesMap.set(g,h)}h.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(h)}onPackageJsonChange(c){c.projects.forEach(g=>{var d;return(d=g.onPackageJsonChange)==null?void 0:d.call(g)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=jWs())}};tfn.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var tJt=tfn;function jWs(){let s;return{get(){return s},set(c){s=c},clear(){s=void 0}}}function rJt(s){return s.kind!==void 0}function nJt(s){s.print(!1,!1,!1)}function iJt(s){let c,g,d,h={get(T,W,V,M){if(!(!g||d!==S(T,V,M)))return g.get(W)},set(T,W,V,M,ee,re,ge){if(_(T,V,M).set(W,R(ee,re,ge,void 0,!1)),ge){for(let Ie of re)if(Ie.isInNodeModules){let _e=Ie.path.substring(0,Ie.path.indexOf(Vx)+Vx.length-1),Ee=s.toPath(_e);c?.has(Ee)||(c||(c=new Map)).set(Ee,s.watchNodeModulesForPackageJsonChanges(_e))}}},setModulePaths(T,W,V,M,ee){let re=_(T,V,M),ge=re.get(W);ge?ge.modulePaths=ee:re.set(W,R(void 0,ee,void 0,void 0,void 0))},setBlockedByPackageJsonDependencies(T,W,V,M,ee,re){let ge=_(T,V,M),Ie=ge.get(W);Ie?(Ie.isBlockedByPackageJsonDependencies=re,Ie.packageName=ee):ge.set(W,R(void 0,void 0,void 0,ee,re))},clear(){c?.forEach(dv),g?.clear(),c?.clear(),d=void 0},count(){return g?g.size:0}};return pe.isDebugging&&Object.defineProperty(h,"__cache",{get:()=>g}),h;function _(T,W,V){let M=S(T,W,V);return g&&d!==M&&h.clear(),d=M,g||(g=new Map)}function S(T,W,V){return`${T},${W.importModuleSpecifierEnding},${W.importModuleSpecifierPreference},${V.overrideImportMode}`}function R(T,W,V,M,ee){return{kind:T,modulePaths:W,moduleSpecifiers:V,packageName:M,isBlockedByPackageJsonDependencies:ee}}}function sJt(s){let c=new Map,g=new Map;return{addOrUpdate:d,invalidate:h,delete:S=>{c.delete(S),g.set(Mo(S),!0)},getInDirectory:S=>c.get(s.toPath(Ro(S,"package.json")))||void 0,directoryHasPackageJson:S=>_(s.toPath(S)),searchDirectoryAndAncestors:(S,R)=>{vN(R,S,T=>{let W=s.toPath(T);if(_(W)!==3)return!0;let V=Ro(T,"package.json");Kie(s,V)?d(V,Ro(W,"package.json")):g.set(W,!0)})}};function d(S,R){let T=pe.checkDefined(int(S,s.host));c.set(R,T),g.delete(Mo(R))}function h(S){c.delete(S),g.delete(Mo(S))}function _(S){return c.has(Ro(S,"package.json"))?-1:g.has(S)?0:3}}var rfn={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function zWs(s){let c=s[0],g=s[1];return(1e9*c+g)/1e6}function nfn(s,c){if((ose(s)||r2e(s))&&s.isJsOnlyProject()){let g=s.getScriptInfoForNormalizedPath(c);return g&&!g.isJavaScript()}return!1}function qWs(s){return Ly(s)||!!s.emitDecoratorMetadata}function ifn(s,c,g){let d=c.getScriptInfoForNormalizedPath(s);return{start:d.positionToLineOffset(g.start),end:d.positionToLineOffset(g.start+g.length),text:wN(g.messageText,` -`),code:g.code,category:_b(g),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,source:g.source,relatedInformation:At(g.relatedInformation,Dst)}}function Dst(s){return s.file?{span:{start:cse(Ra(s.file,s.start)),end:cse(Ra(s.file,s.start+s.length)),file:s.file.fileName},message:wN(s.messageText,` +Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!d&&!M&&!(R||this.host).fileExists(c))return;V=new x4t(this.host,c,_,S,W,this.filenameToScriptInfoVersion.get(W)),this.filenameToScriptInfo.set(V.path,V),this.filenameToScriptInfoVersion.delete(V.path),d?!Xp(c)&&(!M||this.currentDirectory!==g)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(c),V):this.watchClosedScriptInfo(V)}return d&&(this.stopWatchingScriptInfo(V),V.open(h),S&&V.registerFileUpdate()),V}getScriptInfoForNormalizedPath(c){return!Xp(c)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c))||this.getScriptInfoForPath(ose(c,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(c){let g=this.filenameToScriptInfo.get(c);return!g||!g.deferredDelete?g:void 0}getDocumentPositionMapper(c,g,d){let h=this.getOrCreateScriptInfoNotOpenedByClient(g,c.currentDirectory,this.host,!1);if(!h){d&&c.addGeneratedFileWatch(g,d);return}if(h.getSnapshot(),Xs(h.sourceMapFilePath)){let W=this.getScriptInfoForPath(h.sourceMapFilePath);if(W&&(W.getSnapshot(),W.documentPositionMapper!==void 0))return W.sourceInfos=this.addSourceInfoToSourceMap(d,c,W.sourceInfos),W.documentPositionMapper?W.documentPositionMapper:void 0;h.sourceMapFilePath=void 0}else if(h.sourceMapFilePath){h.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(d,c,h.sourceMapFilePath.sourceInfos);return}else if(h.sourceMapFilePath!==void 0)return;let _,S=(W,V)=>{let M=this.getOrCreateScriptInfoNotOpenedByClient(W,c.currentDirectory,this.host,!0);if(_=M||V,!M||M.deferredDelete)return;let ee=M.getSnapshot();return M.documentPositionMapper!==void 0?M.documentPositionMapper:Lz(ee)},R=c.projectName,T=Snt({getCanonicalFileName:this.toCanonicalFileName,log:W=>this.logger.info(W),getSourceFileLike:W=>this.getSourceFileLike(W,R,h)},h.fileName,h.textStorage.getLineInfo(),S);return S=void 0,_?Xs(_)?h.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?_:Xc(_,c.currentDirectory),h.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(h.sourceMapFilePath=_.path,_.declarationInfoPath=h.path,_.deferredDelete||(_.documentPositionMapper=T||!1),_.sourceInfos=this.addSourceInfoToSourceMap(d,c,_.sourceInfos)):h.sourceMapFilePath=!1,T}addSourceInfoToSourceMap(c,g,d){if(c){let h=this.getOrCreateScriptInfoNotOpenedByClient(c,g.currentDirectory,g.directoryStructureHost,!1);(d||(d=new Set)).add(h.path)}return d}addMissingSourceMapFile(c,g){return this.watchFactory.watchFile(c,()=>{let h=this.getScriptInfoForPath(g);h&&h.sourceMapFilePath&&!Xs(h.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(h.containingProjects,!0),this.delayUpdateSourceInfoProjects(h.sourceMapFilePath.sourceInfos),h.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,jm.MissingSourceMapFile)}getSourceFileLike(c,g,d){let h=g.projectName?g:this.findProject(g);if(h){let S=h.toPath(c),R=h.getSourceFile(S);if(R&&R.resolvedPath===S)return R}let _=this.getOrCreateScriptInfoNotOpenedByClient(c,(h||this).currentDirectory,h?h.directoryStructureHost:this.host,!1);if(_){if(d&&Xs(d.sourceMapFilePath)&&_!==d){let S=this.getScriptInfoForPath(d.sourceMapFilePath);S&&(S.sourceInfos??(S.sourceInfos=new Set)).add(_.path)}return _.cacheSourceFile?_.cacheSourceFile.sourceFile:(_.sourceFileLike||(_.sourceFileLike={get text(){return pe.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:S=>{let R=_.positionToLineOffset(S);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(S,R,T)=>_.lineOffsetToPosition(S+1,R+1,T)}),_.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var g,d;if(c.file){let h=this.getScriptInfoForNormalizedPath(op(c.file));h&&(h.setOptions(cse(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...cse(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:h,includePackageJsonAutoImports:_,includeCompletionsForModuleExports:S}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},h&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(T=>{!T.deferredClose&&!T.isClosed()&&T.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(T)&&T.updateGraph()})),(_!==c.preferences.includePackageJsonAutoImports||!!S!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let h=(g=o2e(c.watchOptions))==null?void 0:g.watchOptions,_=S9e(h,this.currentDirectory);this.hostConfiguration.watchOptions=_,this.hostConfiguration.beforeSubstitution=_===h?void 0:h,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,g){let d=this.hostConfiguration.beforeSubstitution?S9e(this.hostConfiguration.beforeSubstitution,g):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}sendSourceFileChange(c){this.filenameToScriptInfo.forEach(g=>{if(this.openFiles.has(g.path)||!g.fileWatcher)return;let d=FA(()=>this.host.fileExists(g.fileName)?g.deferredDelete?0:1:2);if(c){if($4t(g)||!g.path.startsWith(c)||d()===2&&g.deferredDelete)return;this.logger.info(`Invoking sourceFileChange on ${g.fileName}:: ${d()}`)}this.onSourceFileChanged(g,d())})}reloadProjects(){this.logger.info("reload projects."),this.sendSourceFileChange(void 0),this.pendingProjectUpdates.forEach((d,h)=>{this.throttledOperations.cancel(h),this.pendingProjectUpdates.delete(h)}),this.throttledOperations.cancel(jpn),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache())}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Map,g=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,h)=>{let _=`Reloading configured project in external project: ${h}`;d.forEach(S=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?this.reloadConfiguredProjectOptimized(S,_,c):this.reloadConfiguredProjectClearingSemanticCache(S,_,c)})}),this.openFiles.forEach((d,h)=>{let _=this.getScriptInfoForPath(h);de(_.containingProjects,n2e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(_,7,c,g)}),g.forEach(d=>c.set(d,7)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){pe.assert(c.containingProjects.length>0);let g=c.containingProjects[0];!g.isOrphan()&&ase(g)&&g.isRoot(c)&&F(c.containingProjects,d=>d!==g&&!d.isOrphan())&&g.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((g,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),5)),this.openFiles.forEach((g,d)=>{let h=this.getScriptInfoForPath(d);h.isOrphan()?this.assignOrphanScriptInfoToInferredProject(h,g):this.removeRootOfInferredProjectIfNowPartOfOtherProject(h)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(_v),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,g,d,h){return this.openClientFileWithNormalizedPath(op(c),g,d,!1,h?op(h):void 0)}getOriginalLocationEnsuringConfiguredProject(c,g){let d=c.isSourceOfProjectReferenceRedirect(g.fileName),h=d?g:c.getSourceMapper().tryGetSourcePosition(g);if(!h)return;let{fileName:_}=h,S=this.getScriptInfo(_);if(!S&&!this.host.fileExists(_))return;let R={fileName:op(_),path:this.toPath(_)},T=this.getConfigFileNameForFile(R,!1);if(!T)return;let W=this.findConfiguredProjectByProjectName(T);if(!W){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?g:S?.containingProjects.length?h:g;W=this.createConfiguredProject(T,`Creating project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`)}let V=this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(R,5,z4t(W,4),re=>`Creating project referenced in solution ${re.projectName} to find possible configured project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`);if(!V.defaultProject)return;if(V.defaultProject===c)return h;ee(V.defaultProject);let M=this.getScriptInfo(_);if(!M||!M.containingProjects.length)return;return M.containingProjects.forEach(re=>{s9(re)&&ee(re)}),h;function ee(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return de(this.externalProjects,g=>(_v(g),g.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,g,d,h,_){let S=this.getOrCreateScriptInfoWorker(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,!0,g,d,!!h,void 0,!0);return this.openFiles.set(S.path,_),S}assignProjectToOpenedScriptInfo(c){let g,d,h=this.findExternalProjectContainingOpenScriptInfo(c),_,S;if(!h&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,5);R&&(_=R.seenProjects,S=R.sentConfigDiag,R.defaultProject&&(g=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(_v),c.isOrphan()&&(_?.forEach((R,T)=>{R!==4&&!S.has(T)&&this.sendConfigFileDiagEvent(T,c.fileName,!0)}),pe.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),pe.assert(!c.isOrphan()),{configFileName:g,configFileErrors:d,retainProjects:_}}findCreateOrReloadConfiguredProject(c,g,d,h,_,S,R,T,W){let V=W??this.findConfiguredProjectByProjectName(c,h),M=!1,ee;switch(g){case 0:case 1:case 3:if(!V)return;break;case 2:if(!V)return;ee=lOs(V);break;case 4:case 5:V??(V=this.createConfiguredProject(c,d)),R||({sentConfigFileDiag:M,configFileExistenceInfo:ee}=z4t(V,g,_));break;case 6:if(V??(V=this.createConfiguredProject(c,kst(d))),V.projectService.reloadConfiguredProjectOptimized(V,d,S),ee=eJt(V),ee)break;case 7:V??(V=this.createConfiguredProject(c,kst(d))),M=!T&&this.reloadConfiguredProjectClearingSemanticCache(V,d,S),T&&!T.has(V)&&!S.has(V)&&(this.setProjectForReload(V,2,d),T.add(V));break;default:pe.assertNever(g)}return{project:V,sentConfigFileDiag:M,configFileExistenceInfo:ee,reason:d}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,d,h){let _=this.getConfigFileNameForFile(c,g<=3);if(!_)return;let S=tfn(g),R=this.findCreateOrReloadConfiguredProject(_,S,uOs(c),d,c.fileName,h);return R&&this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,R,T=>`Creating project referenced in solution ${T.projectName} to find possible configured project for ${c.fileName} to open`,d,h)}isMatchedByConfig(c,g,d){if(g.fileNames.some(T=>this.toPath(T)===d.path))return!0;if(wbe(d.fileName,g.options,this.hostConfiguration.extraFileExtensions))return!1;let{validatedFilesSpec:h,validatedIncludeSpecs:_,validatedExcludeSpecs:S}=g.options.configFile.configFileSpecs,R=op(Xc(Mo(c),this.currentDirectory));return h?.some(T=>this.toPath(Xc(T,R))===d.path)?!0:!_?.length||T9e(d.fileName,S,this.host.useCaseSensitiveFileNames,this.currentDirectory,R)?!1:_?.some(T=>{let W=Sbe(T,R,"files");return!!W&&zD(`(${W})$`,this.host.useCaseSensitiveFileNames).test(d.fileName)})}tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,d,h,_,S){let R=efn(c),T=tfn(g),W=new Map,V,M=new Set,ee,re,ge,Ie;return _e(d),{defaultProject:ee??re,tsconfigProject:ge??Ie,sentConfigDiag:M,seenProjects:W,seenConfigs:V};function _e(Ue){return Te(Ue,Ue.project)??Ze(Ue.project)??We(Ue.project)}function Ee(Ue,$e,Ye,Tt,ot,Qe){if($e){if(W.has($e))return;W.set($e,T)}else{if(V?.has(Qe))return;(V??(V=new Set)).add(Qe)}if(!ot.projectService.isMatchedByConfig(Ye,Ue.config.parsedCommandLine,c)){ot.languageServiceEnabled&&ot.projectService.watchWildcards(Ye,Ue,ot);return}let mt=$e?z4t($e,g,c.fileName,Tt,S):ot.projectService.findCreateOrReloadConfiguredProject(Ye,g,Tt,_,c.fileName,S);if(!mt){pe.assert(g===3);return}return W.set(mt.project,T),mt.sentConfigFileDiag&&M.add(mt.project),Ne(mt.project,ot)}function Ne(Ue,$e){if(W.get(Ue)===g)return;W.set(Ue,g);let Ye=R?c:Ue.projectService.getScriptInfo(c.fileName),Tt=Ye&&Ue.containsScriptInfo(Ye);if(Tt&&!Ue.isSourceOfProjectReferenceRedirect(Ye.path))return ge=$e,ee=Ue;!re&&R&&Tt&&(Ie=$e,re=Ue)}function Te(Ue,$e){return Ue.sentConfigFileDiag&&M.add(Ue.project),Ue.configFileExistenceInfo?Ee(Ue.configFileExistenceInfo,Ue.project,op(Ue.project.getConfigFilePath()),Ue.reason,Ue.project,Ue.project.canonicalConfigFilePath):Ne(Ue.project,$e)}function Ze(Ue){return Ue.parsedCommandLine&&nfn(Ue,Ue.parsedCommandLine,Ee,T,h(Ue),_,S)}function We(Ue){return R?rfn(c,Ue,_e,T,`Creating possible configured project for ${c.fileName} to open`,_,S,!1):void 0}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,g,d,h){let _=g===1,S=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,_,d);if(!S)return;let{defaultProject:R,tsconfigProject:T,seenProjects:W}=S;return R&&rfn(c,T,V=>{W.set(V.project,g)},g,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,_,d,!0,h),S}loadAncestorProjectTree(c){c??(c=new Set(lr(this.configuredProjects.entries(),([h,_])=>_.initialLoadPending?void 0:h)));let g=new Set,d=Do(this.configuredProjects.values());for(let h of d)ifn(h,_=>c.has(_))&&_v(h),this.ensureProjectChildren(h,c,g)}ensureProjectChildren(c,g,d){var h;if(!Ar(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let _=(h=c.getCurrentProgram())==null?void 0:h.getResolvedProjectReferences();if(_)for(let S of _){if(!S)continue;let R=rie(S.references,V=>g.has(V.sourceFile.path)?V:void 0);if(!R)continue;let T=op(S.sourceFile.fileName),W=this.findConfiguredProjectByProjectName(T)??this.createConfiguredProject(T,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);_v(W),this.ensureProjectChildren(W,g,d)}}cleanupConfiguredProjects(c,g,d){this.getOrphanConfiguredProjects(c,d,g).forEach(h=>this.removeProject(h))}cleanupProjectsAndScriptInfos(c,g,d){this.cleanupConfiguredProjects(c,d,g);for(let h of this.inferredProjects.slice())h.isOrphan()&&this.removeProject(h);this.removeOrphanScriptInfos()}tryInvokeWildCardDirectories(c){this.configFileExistenceInfoCache.forEach((g,d)=>{var h,_;!((h=g.config)!=null&&h.parsedCommandLine)||k(g.config.parsedCommandLine.fileNames,c.fileName,this.host.useCaseSensitiveFileNames?MA:Mp)||(_=g.config.watchedDirectories)==null||_.forEach((S,R)=>{Jh(R,c.fileName,!this.host.useCaseSensitiveFileNames)&&(this.logger.info(`Invoking ${d}:: wildcard for open scriptInfo:: ${c.fileName}`),this.onWildCardDirectoryWatcherInvoke(R,d,g.config,S.watcher,c.fileName))})})}openClientFileWithNormalizedPath(c,g,d,h,_){let S=this.getScriptInfoForPath(ose(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,this.toCanonicalFileName)),R=this.getOrCreateOpenScriptInfo(c,g,d,h,_);!S&&R&&!R.isDynamic&&this.tryInvokeWildCardDirectories(R);let{retainProjects:T,...W}=this.assignProjectToOpenedScriptInfo(R);return this.cleanupProjectsAndScriptInfos(T,new Set([R.path]),void 0),this.telemetryOnOpenFile(R),this.printProjects(),W}getOrphanConfiguredProjects(c,g,d){let h=new Set(this.configuredProjects.values()),_=W=>{W.originalConfiguredProjects&&(s9(W)||!W.isOrphan())&&W.originalConfiguredProjects.forEach((V,M)=>{let ee=this.getConfiguredProjectByCanonicalConfigFilePath(M);return ee&&T(ee)})};if(c?.forEach((W,V)=>T(V)),!h.size||(this.inferredProjects.forEach(_),this.externalProjects.forEach(_),this.externalProjectToConfiguredProjectMap.forEach((W,V)=>{d?.has(V)||W.forEach(T)}),!h.size)||(Dh(this.openFiles,(W,V)=>{if(g?.has(V))return;let M=this.getScriptInfoForPath(V);if(de(M.containingProjects,n2e))return;let ee=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(M,1);if(ee?.defaultProject&&(ee?.seenProjects.forEach((re,ge)=>T(ge)),!h.size))return h}),!h.size))return h;return Dh(this.configuredProjects,W=>{if(h.has(W)&&(R(W)||sfn(W,S))&&(T(W),!h.size))return h}),h;function S(W){return!h.has(W)||R(W)}function R(W){var V,M;return(W.deferredClose||W.projectService.hasPendingProjectUpdate(W))&&!!((M=(V=W.projectService.configFileExistenceInfoCache.get(W.canonicalConfigFilePath))==null?void 0:V.openFilesImpactedByConfigFile)!=null&&M.size)}function T(W){h.delete(W)&&(_(W),sfn(W,T))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(g=>{if(!g.deferredDelete){if(!g.isScriptOpen()&&g.isOrphan()&&!F4t(g)&&!G4t(g)){if(!g.sourceMapFilePath)return;let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;if(!d||!SB(d,h=>{let _=this.getScriptInfoForPath(h);return!!_&&(_.isScriptOpen()||!_.isOrphan())}))return}if(c.delete(g.path),g.sourceMapFilePath){let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);h?.deferredDelete?g.sourceMapFilePath={watcher:this.addMissingSourceMapFile(h.fileName,g.path),sourceInfos:h.sourceInfos}:c.delete(g.sourceMapFilePath),d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;d&&d.forEach((h,_)=>c.delete(_))}}}),c.forEach(g=>this.deleteScriptInfo(g))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!Zy(this.allJsFilesForOpenFileTelemetry,c.path))return;let g=this.ensureDefaultProjectForFile(c);if(!g.languageServiceEnabled)return;let d=g.getSourceFile(c.path),h=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:Q4t,data:{info:{checkJs:h}}})}closeClientFile(c,g){let d=this.getScriptInfoForNormalizedPath(op(c)),h=d?this.closeOpenFile(d,g):!1;return g||this.printProjects(),h}collectChanges(c,g,d,h){for(let _ of g){let S=de(c,R=>R.projectName===_.getProjectName());h.push(_.getChangesSinceVersion(S&&S.version,d))}}synchronizeProjectList(c,g){let d=[];return this.collectChanges(c,this.externalProjects,g,d),this.collectChanges(c,lr(this.configuredProjects.values(),h=>h.deferredClose?void 0:h),g,d),this.collectChanges(c,this.inferredProjects,g,d),d}applyChangesInOpenFiles(c,g,d){let h,_,S=!1;if(c)for(let T of c){(h??(h=[])).push(this.getScriptInfoForPath(ose(op(T.fileName),T.projectRootPath?this.getNormalizedAbsolutePath(T.projectRootPath):this.currentDirectory,this.toCanonicalFileName)));let W=this.getOrCreateOpenScriptInfo(op(T.fileName),T.content,Bst(T.scriptKind),T.hasMixedContent,T.projectRootPath?op(T.projectRootPath):void 0);(_||(_=[])).push(W)}if(g)for(let T of g){let W=this.getScriptInfo(T.fileName);pe.assert(!!W),this.applyChangesToFile(W,T.changes)}if(d)for(let T of d)S=this.closeClientFile(T,!0)||S;let R;F(h,(T,W)=>!T&&_[W]&&!_[W].isDynamic?this.tryInvokeWildCardDirectories(_[W]):void 0),_?.forEach(T=>{var W;return(W=this.assignProjectToOpenedScriptInfo(T).retainProjects)==null?void 0:W.forEach((V,M)=>(R??(R=new Map)).set(M,V))}),S&&this.assignOrphanScriptInfosToInferredProject(),_?(this.cleanupProjectsAndScriptInfos(R,new Set(_.map(T=>T.path)),void 0),_.forEach(T=>this.telemetryOnOpenFile(T)),this.printProjects()):B(d)&&this.printProjects()}applyChangesToFile(c,g){for(let d of g)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,g){let d=op(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let _=this.findExternalProjectByProjectName(c);_&&this.removeProject(_)}g&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let g=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,h)=>g.add(h));for(let d of c)this.openExternalProject(d,!1),g.delete(d.projectFileName);g.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=X4t}applySafeList(c){let g=c.typeAcquisition;pe.assert(!!g,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,g);return d?.excludedFiles??[]}applySafeListWorker(c,g,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let h=d.include||(d.include=[]),_=[],S=g.map(M=>Dp(M.fileName));for(let M of Object.keys(this.safelist)){let ee=this.safelist[M];for(let re of S)if(ee.match.test(re)){if(this.logger.info(`Excluding files based on rule ${M} matching file '${re}'`),ee.types)for(let ge of ee.types)h.includes(ge)||h.push(ge);if(ee.exclude)for(let ge of ee.exclude){let Ie=re.replace(ee.match,(..._e)=>ge.map(Ee=>typeof Ee=="number"?Xs(_e[Ee])?txr.escapeFilenameForRegex(_e[Ee]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${M} - not enough groups`),"\\*"):Ee).join(""));_.includes(Ie)||_.push(Ie)}else{let ge=txr.escapeFilenameForRegex(re);_.includes(ge)||_.push(ge)}}}let R=_.map(M=>new RegExp(M,"i")),T,W;for(let M=0;Mee.test(S[M])))V(M);else{if(d.enable){let ee=gp(Om(S[M]));if(aA(ee,"js")){let re=s0(ee),ge=us(re),Ie=this.legacySafelist.get(ge);if(Ie!==void 0){this.logger.info(`Excluded '${S[M]}' because it matched ${ge} from the legacy safelist`),V(M),h.includes(Ie)||h.push(Ie);continue}}}/^.+[.-]min\.js$/.test(S[M])?V(M):T?.push(g[M])}return W?{rootFiles:T,excludedFiles:W}:void 0;function V(M){W||(pe.assert(!T),T=g.slice(0,M),W=[]),W.push(S[M])}}openExternalProject(c,g){let d=this.findExternalProjectByProjectName(c.projectFileName),h,_=[];for(let S of c.rootFiles){let R=op(S.fileName);if(dst(R)){if(this.serverMode===0&&this.host.fileExists(R)){let T=this.findConfiguredProjectByProjectName(R);T||(T=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||T.updateGraph()),(h??(h=new Set)).add(T),pe.assert(!T.isClosed())}}else _.push(S)}if(h)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,h),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let S=c.typeAcquisition||{};S.include=S.include||[],S.exclude=S.exclude||[],S.enable===void 0&&(S.enable=V4t(_.map(W=>W.fileName)));let R=this.applySafeListWorker(c,_,S),T=R?.excludedFiles??[];if(_=R?.rootFiles??_,d){d.excludedFiles=T;let W=cWe(c.options),V=o2e(c.options,d.getCurrentDirectory()),M=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,W,_,Rst);M?d.disableLanguageService(M):d.enableLanguageService(),d.setProjectErrors(V?.errors),this.updateRootAndOptionsOfNonInferredProject(d,_,Rst,W,S,c.options.compileOnSave,V?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,_,c.options,S,T).updateGraph()}g&&(this.cleanupConfiguredProjects(h,new Set([c.projectFileName])),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,g,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${g.name} from candidate paths: ${d.join(",")}`),!g.name||Xr(g.name)||/[\\/]\.\.?(?:$|[\\/])/.test(g.name)){this.logger.info(`Skipped loading plugin ${g.name||JSON.stringify(g)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let h=zz.importServicePluginAsync(g,d,this.host,S=>this.logger.info(S));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let _=this.pendingPluginEnablements.get(c);_||this.pendingPluginEnablements.set(c,_=[]),_.push(h);return}this.endEnablePlugin(c,zz.importServicePluginSync(g,d,this.host,h=>this.logger.info(h)))}endEnablePlugin(c,{pluginConfigEntry:g,resolvedModule:d,errorLogs:h}){var _;if(d){let S=(_=this.currentPluginConfigOverrides)==null?void 0:_.get(g.name);if(S){let R=g.name;g=S,g.name=R}c.enableProxy(d,g)}else F(h,S=>this.logger.info(S)),this.logger.info(`Couldn't find ${g.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;let c=Do(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){pe.assert(this.currentPluginEnablementPromise===void 0);let g=!1;await Promise.all(At(c,async([d,h])=>{let _=await Promise.all(h);if(d.isClosed()||s2e(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}g=!0;for(let S of _)this.endEnablePlugin(d,S);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,g&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(g=>g.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,g,d){let h=this.packageJsonCache,_=d&&this.toPath(d),S=[],R=T=>{switch(h.directoryHasPackageJson(T)){case 3:return h.searchDirectoryAndAncestors(T,g),R(T);case-1:let W=Ro(T,"package.json");this.watchPackageJsonFile(W,this.toPath(W),g);let V=h.getInDirectory(T);V&&S.push(V)}if(_&&_===T)return!0};return vN(g,Mo(c),R),S}getNearestAncestorDirectoryWithPackageJson(c,g){return vN(g,c,d=>{switch(this.packageJsonCache.directoryHasPackageJson(d)){case-1:return d;case 0:return;case 3:return this.host.fileExists(Ro(d,"package.json"))?d:void 0}})}watchPnpFile(){let c=Gen(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(g=>{for(let d of g.getScriptInfos())g.resolutionCache.invalidateResolutionOfFile(d.path);g.markAsDirty(),_v(g)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,jm.ConfigFile)}watchPackageJsonFile(c,g,d){pe.assert(d!==void 0);let h=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(g);if(!h){let _=this.watchFactory.watchFile(c,(S,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(S,g),this.onPackageJsonChange(h);break;case 2:this.packageJsonCache.delete(g),this.onPackageJsonChange(h),h.projects.clear(),h.close()}},250,this.hostConfiguration.watchOptions,jm.PackageJson);h={projects:new Set,close:()=>{var S;h.projects.size||!_||(_.close(),_=void 0,(S=this.packageJsonFilesMap)==null||S.delete(g),this.packageJsonCache.invalidate(g))}},this.packageJsonFilesMap.set(g,h)}h.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(h)}onPackageJsonChange(c){c.projects.forEach(g=>{var d;return(d=g.onPackageJsonChange)==null?void 0:d.call(g)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=AOs())}};cfn.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var sJt=cfn;function AOs(){let s;return{get(){return s},set(c){s=c},clear(){s=void 0}}}function oJt(s){return s.kind!==void 0}function aJt(s){s.print(!1,!1,!1)}function cJt(s){let c,g,d,h={get(T,W,V,M){if(!(!g||d!==S(T,V,M)))return g.get(W)},set(T,W,V,M,ee,re,ge){if(_(T,V,M).set(W,R(ee,re,ge,void 0,!1)),ge){for(let Ie of re)if(Ie.isInNodeModules){let _e=Ie.path.substring(0,Ie.path.indexOf(Vx)+Vx.length-1),Ee=s.toPath(_e);c?.has(Ee)||(c||(c=new Map)).set(Ee,s.watchNodeModulesForPackageJsonChanges(_e))}}},setModulePaths(T,W,V,M,ee){let re=_(T,V,M),ge=re.get(W);ge?ge.modulePaths=ee:re.set(W,R(void 0,ee,void 0,void 0,void 0))},setBlockedByPackageJsonDependencies(T,W,V,M,ee,re){let ge=_(T,V,M),Ie=ge.get(W);Ie?(Ie.isBlockedByPackageJsonDependencies=re,Ie.packageName=ee):ge.set(W,R(void 0,void 0,void 0,ee,re))},clear(){c?.forEach(dv),g?.clear(),c?.clear(),d=void 0},count(){return g?g.size:0}};return pe.isDebugging&&Object.defineProperty(h,"__cache",{get:()=>g}),h;function _(T,W,V){let M=S(T,W,V);return g&&d!==M&&h.clear(),d=M,g||(g=new Map)}function S(T,W,V){return`${T},${W.importModuleSpecifierEnding},${W.importModuleSpecifierPreference},${V.overrideImportMode}`}function R(T,W,V,M,ee){return{kind:T,modulePaths:W,moduleSpecifiers:V,packageName:M,isBlockedByPackageJsonDependencies:ee}}}function lJt(s){let c=new Map,g=new Map;return{addOrUpdate:d,invalidate:h,delete:S=>{c.delete(S),g.set(Mo(S),!0)},getInDirectory:S=>c.get(s.toPath(Ro(S,"package.json")))||void 0,directoryHasPackageJson:S=>_(s.toPath(S)),searchDirectoryAndAncestors:(S,R)=>{vN(R,S,T=>{let W=s.toPath(T);if(_(W)!==3)return!0;let V=Ro(T,"package.json");jie(s,V)?d(V,Ro(W,"package.json")):g.set(W,!0)})}};function d(S,R){let T=pe.checkDefined(ont(S,s.host));c.set(R,T),g.delete(Mo(R))}function h(S){c.delete(S),g.delete(Mo(S))}function _(S){return c.has(Ro(S,"package.json"))?-1:g.has(S)?0:3}}var lfn={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function dOs(s){let c=s[0],g=s[1];return(1e9*c+g)/1e6}function ufn(s,c){if((ase(s)||n2e(s))&&s.isJsOnlyProject()){let g=s.getScriptInfoForNormalizedPath(c);return g&&!g.isJavaScript()}return!1}function pOs(s){return Ly(s)||!!s.emitDecoratorMetadata}function gfn(s,c,g){let d=c.getScriptInfoForNormalizedPath(s);return{start:d.positionToLineOffset(g.start),end:d.positionToLineOffset(g.start+g.length),text:wN(g.messageText,` +`),code:g.code,category:_b(g),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,source:g.source,relatedInformation:At(g.relatedInformation,xst)}}function xst(s){return s.file?{span:{start:lse(Ra(s.file,s.start)),end:lse(Ra(s.file,s.start+s.length)),file:s.file.fileName},message:wN(s.messageText,` `),category:_b(s),code:s.code}:{message:wN(s.messageText,` -`),category:_b(s),code:s.code}}function cse(s){return{line:s.line+1,offset:s.character+1}}function o2e(s,c){let g=s.file&&cse(Ra(s.file,s.start)),d=s.file&&cse(Ra(s.file,s.start+s.length)),h=wN(s.messageText,` -`),{code:_,source:S}=s,R=_b(s),T={start:g,end:d,text:h,code:_,category:R,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated,source:S,relatedInformation:At(s.relatedInformation,Dst)};return c?{...T,fileName:s.file&&s.file.fileName}:T}function $Ws(s,c){return s.every(g=>Rs(g.span)Rs(g.span){this.immediateId=void 0,this.operationHost.executeWithRequestId(g,()=>this.executeAction(c),this.performanceData)},s))}delay(s,c,g){let d=this.requestId;pe.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(g),this.performanceData)},c,s))}executeAction(s){var c,g,d,h,_,S;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=ki)==null||c.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((g=ki)==null||g.push(ki.Phase.Session,"stepAction",{seq:this.requestId}),s(this),(d=ki)==null||d.pop())}catch(T){(h=ki)==null||h.popAll(),R=!0,T instanceof By?(_=ki)==null||_.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId}):((S=ki)==null||S.instant(ki.Phase.Session,"stepError",{seq:this.requestId,message:T.message}),this.operationHost.logError(T,`delayed processing of request ${this.requestId}`))}this.performanceData=this.operationHost.getPerformanceData(),(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(s){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=s}setImmediateId(s){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=s}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function aJt(s,c){return{seq:0,type:"event",event:s,body:c}}function tOs(s,c,g,d){let h=vt(Ki(g)?g:g.projects,_=>d(_,s));return!Ki(g)&&g.symLinkedProjects&&g.symLinkedProjects.forEach((_,S)=>{let R=c(S);h.push(...er(_,T=>d(T,R)))}),io(h,yg)}function kst(s){return oo(({textSpan:c})=>c.start+100003*c.length,Qrt(s))}function rOs(s,c,g,d,h,_,S){let R=cJt(s,c,g,ofn(c,g,!0),lfn,(V,M)=>V.getLanguageService().findRenameLocations(M.fileName,M.pos,d,h,_),(V,M)=>M(Ipe(V)));if(Ki(R))return R;let T=[],W=kst(S);return R.forEach((V,M)=>{for(let ee of V)!W.has(ee)&&!xst(Ipe(ee),M)&&(T.push(ee),W.add(ee))}),T}function ofn(s,c,g){let d=s.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,g),h=d&&Nc(d);return h&&!h.isLocal?{fileName:h.fileName,pos:h.textSpan.start}:void 0}function nOs(s,c,g,d,h){var _,S;let R=cJt(s,c,g,ofn(c,g,!1),lfn,(M,ee)=>(h.info(`Finding references to ${ee.fileName} position ${ee.pos} in project ${M.getProjectName()}`),M.getLanguageService().findReferences(ee.fileName,ee.pos)),(M,ee)=>{ee(Ipe(M.definition));for(let re of M.references)ee(Ipe(re))});if(Ki(R))return R;let T=R.get(c);if(((S=(_=T?.[0])==null?void 0:_.references[0])==null?void 0:S.isDefinition)===void 0)R.forEach(M=>{for(let ee of M)for(let re of ee.references)delete re.isDefinition});else{let M=kst(d);for(let re of T)for(let ge of re.references)if(ge.isDefinition){M.add(ge);break}let ee=new Set;for(;;){let re=!1;if(R.forEach((ge,Ie)=>{if(ee.has(Ie))return;Ie.getLanguageService().updateIsDefinitionOfReferencedSymbols(ge,M)&&(ee.add(Ie),re=!0)}),!re)break}R.forEach((re,ge)=>{if(!ee.has(ge))for(let Ie of re)for(let _e of Ie.references)_e.isDefinition=!1})}let W=[],V=kst(d);return R.forEach((M,ee)=>{for(let re of M){let ge=xst(Ipe(re.definition),ee),Ie=ge===void 0?re.definition:{...re.definition,textSpan:zd(ge.pos,re.definition.textSpan.length),fileName:ge.fileName,contextSpan:sOs(re.definition,ee)},_e=de(W,Ee=>Yrt(Ee.definition,Ie,d));_e||(_e={definition:Ie,references:[]},W.push(_e));for(let Ee of re.references)!V.has(Ee)&&!xst(Ipe(Ee),ee)&&(V.add(Ee),_e.references.push(Ee))}}),W.filter(M=>M.references.length!==0)}function afn(s,c,g){for(let d of Ki(s)?s:s.projects)g(d,c);!Ki(s)&&s.symLinkedProjects&&s.symLinkedProjects.forEach((d,h)=>{for(let _ of d)g(_,h)})}function cJt(s,c,g,d,h,_,S){let R=new Map,T=oA();T.enqueue({project:c,location:g}),afn(s,g.fileName,(Ie,_e)=>{let Ee={fileName:_e,pos:g.pos};T.enqueue({project:Ie,location:Ee})});let W=c.projectService,V=c.getCancellationToken(),M=FA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(d)),ee=FA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetSourcePosition(d)),re=new Set;e:for(;!T.isEmpty();){for(;!T.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ie,location:_e}=T.dequeue();if(R.has(Ie)||ufn(Ie,_e)||(_v(Ie),!Ie.containsFile(op(_e.fileName))))continue;let Ee=ge(Ie,_e);R.set(Ie,Ee??zm),re.add(iOs(Ie))}d&&(W.loadAncestorProjectTree(re),W.forEachEnabledProject(Ie=>{if(V.isCancellationRequested()||R.has(Ie))return;let _e=h(d,Ie,M,ee);_e&&T.enqueue({project:Ie,location:_e})}))}if(R.size===1)return vu(R.values());return R;function ge(Ie,_e){let Ee=_(Ie,_e);if(!Ee||!S)return Ee;for(let Ne of Ee)S(Ne,Te=>{let Ze=W.getOriginalLocationEnsuringConfiguredProject(Ie,Te);if(!Ze)return;let We=W.getScriptInfo(Ze.fileName);for(let $e of We.containingProjects)!$e.isOrphan()&&!R.has($e)&&T.enqueue({project:$e,location:Ze});let Ue=W.getSymlinkedProjects(We);Ue&&Ue.forEach(($e,Ye)=>{for(let Tt of $e)!Tt.isOrphan()&&!R.has(Tt)&&T.enqueue({project:Tt,location:{fileName:Ye,pos:Ze.pos}})})});return Ee}}function cfn(s,c){if(c.containsFile(op(s.fileName))&&!ufn(c,s))return s}function lfn(s,c,g,d){let h=cfn(s,c);if(h)return h;let _=g();if(_&&c.containsFile(op(_.fileName)))return _;let S=d();return S&&c.containsFile(op(S.fileName))?S:void 0}function ufn(s,c){if(!c)return!1;let g=s.getLanguageService().getProgram();if(!g)return!1;let d=g.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==s.toPath(c.fileName)}function iOs(s){return s9(s)?s.canonicalConfigFilePath:s.getProjectName()}function Ipe({fileName:s,textSpan:c}){return{fileName:s,pos:c.start}}function xst(s,c){return Jde(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function gfn(s,c){return qVe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function sOs(s,c){return Jrt(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}var Afn=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits","copilotRelated"],oOs=[...Afn,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full","preparePasteEdits"],dfn=class JEt{constructor(c){this.changeSeq=0,this.regionDiagLineCountThreshold=500,this.handlers=new Map(Object.entries({status:()=>{let _={version:C};return this.requiredResponse(_)},openExternalProject:_=>(this.projectService.openExternalProject(_.arguments,!0),this.requiredResponse(!0)),openExternalProjects:_=>(this.projectService.openExternalProjects(_.arguments.projects),this.requiredResponse(!0)),closeExternalProject:_=>(this.projectService.closeExternalProject(_.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:_=>{let S=this.projectService.synchronizeProjectList(_.arguments.knownProjects,_.arguments.includeProjectReferenceRedirectInfo);if(!S.some(T=>T.projectErrors&&T.projectErrors.length!==0))return this.requiredResponse(S);let R=At(S,T=>!T.projectErrors||T.projectErrors.length===0?T:{info:T.info,changes:T.changes,files:T.files,projectErrors:this.convertToDiagnosticsWithLinePosition(T.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles&&Yt(_.arguments.openFiles,S=>({fileName:S.file,content:S.fileContent,scriptKind:S.scriptKindName,projectRootPath:S.projectRootPath})),_.arguments.changedFiles&&Yt(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:lr(Qa(S.textChanges),R=>{let T=pe.checkDefined(this.projectService.getScriptInfo(S.fileName)),W=T.lineOffsetToPosition(R.start.line,R.start.offset),V=T.lineOffsetToPosition(R.end.line,R.end.offset);return W>=0?{span:{start:W,length:V-W},newText:R.newText}:void 0})})),_.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles,_.arguments.changedFiles&&Yt(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:Qa(S.changes)})),_.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired(void 0)),definition:_=>this.requiredResponse(this.getDefinition(_.arguments,!0)),"definition-full":_=>this.requiredResponse(this.getDefinition(_.arguments,!1)),definitionAndBoundSpan:_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!0)),"definitionAndBoundSpan-full":_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!1)),findSourceDefinition:_=>this.requiredResponse(this.findSourceDefinition(_.arguments)),"emit-output":_=>this.requiredResponse(this.getEmitOutput(_.arguments)),typeDefinition:_=>this.requiredResponse(this.getTypeDefinition(_.arguments)),implementation:_=>this.requiredResponse(this.getImplementation(_.arguments,!0)),"implementation-full":_=>this.requiredResponse(this.getImplementation(_.arguments,!1)),references:_=>this.requiredResponse(this.getReferences(_.arguments,!0)),"references-full":_=>this.requiredResponse(this.getReferences(_.arguments,!1)),rename:_=>this.requiredResponse(this.getRenameLocations(_.arguments,!0)),"renameLocations-full":_=>this.requiredResponse(this.getRenameLocations(_.arguments,!1)),"rename-full":_=>this.requiredResponse(this.getRenameInfo(_.arguments)),open:_=>(this.openClientFile(op(_.arguments.file),_.arguments.fileContent,vst(_.arguments.scriptKindName),_.arguments.projectRootPath?op(_.arguments.projectRootPath):void 0),this.notRequired(_)),quickinfo:_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!0)),"quickinfo-full":_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!1)),getOutliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!0)),outliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!1)),todoComments:_=>this.requiredResponse(this.getTodoComments(_.arguments)),indentation:_=>this.requiredResponse(this.getIndentation(_.arguments)),nameOrDottedNameSpan:_=>this.requiredResponse(this.getNameOrDottedNameSpan(_.arguments)),breakpointStatement:_=>this.requiredResponse(this.getBreakpointStatement(_.arguments)),braceCompletion:_=>this.requiredResponse(this.isValidBraceCompletion(_.arguments)),docCommentTemplate:_=>this.requiredResponse(this.getDocCommentTemplate(_.arguments)),getSpanOfEnclosingComment:_=>this.requiredResponse(this.getSpanOfEnclosingComment(_.arguments)),fileReferences:_=>this.requiredResponse(this.getFileReferences(_.arguments,!0)),"fileReferences-full":_=>this.requiredResponse(this.getFileReferences(_.arguments,!1)),format:_=>this.requiredResponse(this.getFormattingEditsForRange(_.arguments)),formatonkey:_=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(_.arguments)),"format-full":_=>this.requiredResponse(this.getFormattingEditsForDocumentFull(_.arguments)),"formatonkey-full":_=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(_.arguments)),"formatRange-full":_=>this.requiredResponse(this.getFormattingEditsForRangeFull(_.arguments)),completionInfo:_=>this.requiredResponse(this.getCompletions(_.arguments,"completionInfo")),completions:_=>this.requiredResponse(this.getCompletions(_.arguments,"completions")),"completions-full":_=>this.requiredResponse(this.getCompletions(_.arguments,"completions-full")),completionEntryDetails:_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!1)),"completionEntryDetails-full":_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!0)),compileOnSaveAffectedFileList:_=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(_.arguments)),compileOnSaveEmitFile:_=>this.requiredResponse(this.emitFile(_.arguments)),signatureHelp:_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!0)),"signatureHelp-full":_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!1)),"compilerOptionsDiagnostics-full":_=>this.requiredResponse(this.getCompilerOptionsDiagnostics(_.arguments)),"encodedSyntacticClassifications-full":_=>this.requiredResponse(this.getEncodedSyntacticClassifications(_.arguments)),"encodedSemanticClassifications-full":_=>this.requiredResponse(this.getEncodedSemanticClassifications(_.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:_=>this.requiredResponse(this.getSemanticDiagnosticsSync(_.arguments)),syntacticDiagnosticsSync:_=>this.requiredResponse(this.getSyntacticDiagnosticsSync(_.arguments)),suggestionDiagnosticsSync:_=>this.requiredResponse(this.getSuggestionDiagnosticsSync(_.arguments)),geterr:_=>(this.errorCheck.startNew(S=>this.getDiagnostics(S,_.arguments.delay,_.arguments.files)),this.notRequired(void 0)),geterrForProject:_=>(this.errorCheck.startNew(S=>this.getDiagnosticsForProject(S,_.arguments.delay,_.arguments.file)),this.notRequired(void 0)),change:_=>(this.change(_.arguments),this.notRequired(_)),configure:_=>(this.projectService.setHostConfiguration(_.arguments),this.notRequired(_)),reload:_=>(this.reload(_.arguments),this.requiredResponse({reloadFinished:!0})),saveto:_=>{let S=_.arguments;return this.saveToTmp(S.file,S.tmpfile),this.notRequired(_)},close:_=>{let S=_.arguments;return this.closeClientFile(S.file),this.notRequired(_)},navto:_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!0)),"navto-full":_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!1)),brace:_=>this.requiredResponse(this.getBraceMatching(_.arguments,!0)),"brace-full":_=>this.requiredResponse(this.getBraceMatching(_.arguments,!1)),navbar:_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!0)),"navbar-full":_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!1)),navtree:_=>this.requiredResponse(this.getNavigationTree(_.arguments,!0)),"navtree-full":_=>this.requiredResponse(this.getNavigationTree(_.arguments,!1)),documentHighlights:_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!0)),"documentHighlights-full":_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!1)),compilerOptionsForInferredProjects:_=>(this.setCompilerOptionsForInferredProjects(_.arguments),this.requiredResponse(!0)),projectInfo:_=>this.requiredResponse(this.getProjectInfo(_.arguments)),reloadProjects:_=>(this.projectService.reloadProjects(),this.notRequired(_)),jsxClosingTag:_=>this.requiredResponse(this.getJsxClosingTag(_.arguments)),linkedEditingRange:_=>this.requiredResponse(this.getLinkedEditingRange(_.arguments)),getCodeFixes:_=>this.requiredResponse(this.getCodeFixes(_.arguments,!0)),"getCodeFixes-full":_=>this.requiredResponse(this.getCodeFixes(_.arguments,!1)),getCombinedCodeFix:_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!0)),"getCombinedCodeFix-full":_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!1)),applyCodeActionCommand:_=>this.requiredResponse(this.applyCodeActionCommand(_.arguments)),getSupportedCodeFixes:_=>this.requiredResponse(this.getSupportedCodeFixes(_.arguments)),getApplicableRefactors:_=>this.requiredResponse(this.getApplicableRefactors(_.arguments)),getEditsForRefactor:_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!0)),getMoveToRefactoringFileSuggestions:_=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(_.arguments)),preparePasteEdits:_=>this.requiredResponse(this.preparePasteEdits(_.arguments)),getPasteEdits:_=>this.requiredResponse(this.getPasteEdits(_.arguments)),"getEditsForRefactor-full":_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!1)),organizeImports:_=>this.requiredResponse(this.organizeImports(_.arguments,!0)),"organizeImports-full":_=>this.requiredResponse(this.organizeImports(_.arguments,!1)),getEditsForFileRename:_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!0)),"getEditsForFileRename-full":_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!1)),configurePlugin:_=>(this.configurePlugin(_.arguments),this.notRequired(_)),selectionRange:_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!0)),"selectionRange-full":_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!1)),prepareCallHierarchy:_=>this.requiredResponse(this.prepareCallHierarchy(_.arguments)),provideCallHierarchyIncomingCalls:_=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(_.arguments)),provideCallHierarchyOutgoingCalls:_=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(_.arguments)),toggleLineComment:_=>this.requiredResponse(this.toggleLineComment(_.arguments,!0)),"toggleLineComment-full":_=>this.requiredResponse(this.toggleLineComment(_.arguments,!1)),toggleMultilineComment:_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!0)),"toggleMultilineComment-full":_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!1)),commentSelection:_=>this.requiredResponse(this.commentSelection(_.arguments,!0)),"commentSelection-full":_=>this.requiredResponse(this.commentSelection(_.arguments,!1)),uncommentSelection:_=>this.requiredResponse(this.uncommentSelection(_.arguments,!0)),"uncommentSelection-full":_=>this.requiredResponse(this.uncommentSelection(_.arguments,!1)),provideInlayHints:_=>this.requiredResponse(this.provideInlayHints(_.arguments)),mapCode:_=>this.requiredResponse(this.mapCode(_.arguments)),copilotRelated:()=>this.requiredResponse(this.getCopilotRelatedInfo())})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||aWe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:g}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(_=>this.defaultEventHandler(_)):void 0;let d={executeWithRequestId:(_,S,R)=>this.executeWithRequestId(_,S,R),getCurrentRequestId:()=>this.currentRequestId,getPerformanceData:()=>this.performanceData,getServerHost:()=>this.host,logError:(_,S)=>this.logError(_,S),sendRequestCompletedEvent:(_,S)=>this.sendRequestCompletedEvent(_,S),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new eOs(d);let h={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:g,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new tJt(h),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new v4t(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:Afn.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:oOs.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:pe.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c,g){this.event({request_seq:c,performanceData:g&&pfn(g)},"requestCompleted")}addPerformanceData(c,g){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+g}addDiagnosticsPerformanceData(c,g,d){var h,_;this.performanceData||(this.performanceData={});let S=(h=this.performanceData.diagnosticsDuration)==null?void 0:h.get(c);S||((_=this.performanceData).diagnosticsDuration??(_.diagnosticsDuration=new Map)).set(c,S={}),S[g]=d}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case sWe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case fst:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case Ist:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case hst:case yst:case bst:case Est:this.event(c.data,c.eventName);break;case mst:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:At(c.data.diagnostics,g=>o2e(g,!0))},c.eventName);break;case Cst:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case _st:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(g=>this.updateErrorCheck(g,c,100,!0))),this.event({openFiles:c},sWe))}logError(c,g){this.logErrorWorker(c,g)}logErrorWorker(c,g,d){let h="Exception on executing command "+g;if(c.message&&(h+=`: -`+Wde(c.message),c.stack&&(h+=` -`+Wde(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:_,project:S}=this.getFileAndProject(d),R=S.getScriptInfoForNormalizedPath(_);if(R){let T=Lz(R.getSnapshot());h+=` +${_}${d}`}var IOs=class{constructor(s){this.operationHost=s}startNew(s){this.complete(),this.requestId=this.operationHost.getCurrentRequestId(),this.executeAction(s)}complete(){this.requestId!==void 0&&(this.operationHost.sendRequestCompletedEvent(this.requestId,this.performanceData),this.requestId=void 0),this.setTimerHandle(void 0),this.setImmediateId(void 0),this.performanceData=void 0}immediate(s,c){let g=this.requestId;pe.assert(g===this.operationHost.getCurrentRequestId(),"immediate: incorrect request id"),this.setImmediateId(this.operationHost.getServerHost().setImmediate(()=>{this.immediateId=void 0,this.operationHost.executeWithRequestId(g,()=>this.executeAction(c),this.performanceData)},s))}delay(s,c,g){let d=this.requestId;pe.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(g),this.performanceData)},c,s))}executeAction(s){var c,g,d,h,_,S;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=ki)==null||c.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((g=ki)==null||g.push(ki.Phase.Session,"stepAction",{seq:this.requestId}),s(this),(d=ki)==null||d.pop())}catch(T){(h=ki)==null||h.popAll(),R=!0,T instanceof By?(_=ki)==null||_.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId}):((S=ki)==null||S.instant(ki.Phase.Session,"stepError",{seq:this.requestId,message:T.message}),this.operationHost.logError(T,`delayed processing of request ${this.requestId}`))}this.performanceData=this.operationHost.getPerformanceData(),(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(s){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=s}setImmediateId(s){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=s}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function gJt(s,c){return{seq:0,type:"event",event:s,body:c}}function hOs(s,c,g,d){let h=vt(Ki(g)?g:g.projects,_=>d(_,s));return!Ki(g)&&g.symLinkedProjects&&g.symLinkedProjects.forEach((_,S)=>{let R=c(S);h.push(...er(_,T=>d(T,R)))}),io(h,yg)}function Gst(s){return oo(({textSpan:c})=>c.start+100003*c.length,Jrt(s))}function mOs(s,c,g,d,h,_,S){let R=AJt(s,c,g,dfn(c,g,!0),Ifn,(V,M)=>V.getLanguageService().findRenameLocations(M.fileName,M.pos,d,h,_),(V,M)=>M(hpe(V)));if(Ki(R))return R;let T=[],W=Gst(S);return R.forEach((V,M)=>{for(let ee of V)!W.has(ee)&&!Fst(hpe(ee),M)&&(T.push(ee),W.add(ee))}),T}function dfn(s,c,g){let d=s.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,g),h=d&&Nc(d);return h&&!h.isLocal?{fileName:h.fileName,pos:h.textSpan.start}:void 0}function COs(s,c,g,d,h){var _,S;let R=AJt(s,c,g,dfn(c,g,!1),Ifn,(M,ee)=>(h.info(`Finding references to ${ee.fileName} position ${ee.pos} in project ${M.getProjectName()}`),M.getLanguageService().findReferences(ee.fileName,ee.pos)),(M,ee)=>{ee(hpe(M.definition));for(let re of M.references)ee(hpe(re))});if(Ki(R))return R;let T=R.get(c);if(((S=(_=T?.[0])==null?void 0:_.references[0])==null?void 0:S.isDefinition)===void 0)R.forEach(M=>{for(let ee of M)for(let re of ee.references)delete re.isDefinition});else{let M=Gst(d);for(let re of T)for(let ge of re.references)if(ge.isDefinition){M.add(ge);break}let ee=new Set;for(;;){let re=!1;if(R.forEach((ge,Ie)=>{if(ee.has(Ie))return;Ie.getLanguageService().updateIsDefinitionOfReferencedSymbols(ge,M)&&(ee.add(Ie),re=!0)}),!re)break}R.forEach((re,ge)=>{if(!ee.has(ge))for(let Ie of re)for(let _e of Ie.references)_e.isDefinition=!1})}let W=[],V=Gst(d);return R.forEach((M,ee)=>{for(let re of M){let ge=Fst(hpe(re.definition),ee),Ie=ge===void 0?re.definition:{...re.definition,textSpan:zd(ge.pos,re.definition.textSpan.length),fileName:ge.fileName,contextSpan:yOs(re.definition,ee)},_e=de(W,Ee=>Xrt(Ee.definition,Ie,d));_e||(_e={definition:Ie,references:[]},W.push(_e));for(let Ee of re.references)!V.has(Ee)&&!Fst(hpe(Ee),ee)&&(V.add(Ee),_e.references.push(Ee))}}),W.filter(M=>M.references.length!==0)}function pfn(s,c,g){for(let d of Ki(s)?s:s.projects)g(d,c);!Ki(s)&&s.symLinkedProjects&&s.symLinkedProjects.forEach((d,h)=>{for(let _ of d)g(_,h)})}function AJt(s,c,g,d,h,_,S){let R=new Map,T=oA();T.enqueue({project:c,location:g}),pfn(s,g.fileName,(Ie,_e)=>{let Ee={fileName:_e,pos:g.pos};T.enqueue({project:Ie,location:Ee})});let W=c.projectService,V=c.getCancellationToken(),M=FA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(d)),ee=FA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetSourcePosition(d)),re=new Set;e:for(;!T.isEmpty();){for(;!T.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ie,location:_e}=T.dequeue();if(R.has(Ie)||hfn(Ie,_e)||(_v(Ie),!Ie.containsFile(op(_e.fileName))))continue;let Ee=ge(Ie,_e);R.set(Ie,Ee??zm),re.add(_Os(Ie))}d&&(W.loadAncestorProjectTree(re),W.forEachEnabledProject(Ie=>{if(V.isCancellationRequested()||R.has(Ie))return;let _e=h(d,Ie,M,ee);_e&&T.enqueue({project:Ie,location:_e})}))}if(R.size===1)return vu(R.values());return R;function ge(Ie,_e){let Ee=_(Ie,_e);if(!Ee||!S)return Ee;for(let Ne of Ee)S(Ne,Te=>{let Ze=W.getOriginalLocationEnsuringConfiguredProject(Ie,Te);if(!Ze)return;let We=W.getScriptInfo(Ze.fileName);for(let $e of We.containingProjects)!$e.isOrphan()&&!R.has($e)&&T.enqueue({project:$e,location:Ze});let Ue=W.getSymlinkedProjects(We);Ue&&Ue.forEach(($e,Ye)=>{for(let Tt of $e)!Tt.isOrphan()&&!R.has(Tt)&&T.enqueue({project:Tt,location:{fileName:Ye,pos:Ze.pos}})})});return Ee}}function ffn(s,c){if(c.containsFile(op(s.fileName))&&!hfn(c,s))return s}function Ifn(s,c,g,d){let h=ffn(s,c);if(h)return h;let _=g();if(_&&c.containsFile(op(_.fileName)))return _;let S=d();return S&&c.containsFile(op(S.fileName))?S:void 0}function hfn(s,c){if(!c)return!1;let g=s.getLanguageService().getProgram();if(!g)return!1;let d=g.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==s.toPath(c.fileName)}function _Os(s){return s9(s)?s.canonicalConfigFilePath:s.getProjectName()}function hpe({fileName:s,textSpan:c}){return{fileName:s,pos:c.start}}function Fst(s,c){return Ude(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function mfn(s,c){return ePe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function yOs(s,c){return Krt(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}var Cfn=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits","copilotRelated"],bOs=[...Cfn,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full","preparePasteEdits"],_fn=class KEt{constructor(c){this.changeSeq=0,this.regionDiagLineCountThreshold=500,this.handlers=new Map(Object.entries({status:()=>{let _={version:C};return this.requiredResponse(_)},openExternalProject:_=>(this.projectService.openExternalProject(_.arguments,!0),this.requiredResponse(!0)),openExternalProjects:_=>(this.projectService.openExternalProjects(_.arguments.projects),this.requiredResponse(!0)),closeExternalProject:_=>(this.projectService.closeExternalProject(_.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:_=>{let S=this.projectService.synchronizeProjectList(_.arguments.knownProjects,_.arguments.includeProjectReferenceRedirectInfo);if(!S.some(T=>T.projectErrors&&T.projectErrors.length!==0))return this.requiredResponse(S);let R=At(S,T=>!T.projectErrors||T.projectErrors.length===0?T:{info:T.info,changes:T.changes,files:T.files,projectErrors:this.convertToDiagnosticsWithLinePosition(T.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles&&Yt(_.arguments.openFiles,S=>({fileName:S.file,content:S.fileContent,scriptKind:S.scriptKindName,projectRootPath:S.projectRootPath})),_.arguments.changedFiles&&Yt(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:lr(Qa(S.textChanges),R=>{let T=pe.checkDefined(this.projectService.getScriptInfo(S.fileName)),W=T.lineOffsetToPosition(R.start.line,R.start.offset),V=T.lineOffsetToPosition(R.end.line,R.end.offset);return W>=0?{span:{start:W,length:V-W},newText:R.newText}:void 0})})),_.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles,_.arguments.changedFiles&&Yt(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:Qa(S.changes)})),_.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired(void 0)),definition:_=>this.requiredResponse(this.getDefinition(_.arguments,!0)),"definition-full":_=>this.requiredResponse(this.getDefinition(_.arguments,!1)),definitionAndBoundSpan:_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!0)),"definitionAndBoundSpan-full":_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!1)),findSourceDefinition:_=>this.requiredResponse(this.findSourceDefinition(_.arguments)),"emit-output":_=>this.requiredResponse(this.getEmitOutput(_.arguments)),typeDefinition:_=>this.requiredResponse(this.getTypeDefinition(_.arguments)),implementation:_=>this.requiredResponse(this.getImplementation(_.arguments,!0)),"implementation-full":_=>this.requiredResponse(this.getImplementation(_.arguments,!1)),references:_=>this.requiredResponse(this.getReferences(_.arguments,!0)),"references-full":_=>this.requiredResponse(this.getReferences(_.arguments,!1)),rename:_=>this.requiredResponse(this.getRenameLocations(_.arguments,!0)),"renameLocations-full":_=>this.requiredResponse(this.getRenameLocations(_.arguments,!1)),"rename-full":_=>this.requiredResponse(this.getRenameInfo(_.arguments)),open:_=>(this.openClientFile(op(_.arguments.file),_.arguments.fileContent,wst(_.arguments.scriptKindName),_.arguments.projectRootPath?op(_.arguments.projectRootPath):void 0),this.notRequired(_)),quickinfo:_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!0)),"quickinfo-full":_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!1)),getOutliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!0)),outliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!1)),todoComments:_=>this.requiredResponse(this.getTodoComments(_.arguments)),indentation:_=>this.requiredResponse(this.getIndentation(_.arguments)),nameOrDottedNameSpan:_=>this.requiredResponse(this.getNameOrDottedNameSpan(_.arguments)),breakpointStatement:_=>this.requiredResponse(this.getBreakpointStatement(_.arguments)),braceCompletion:_=>this.requiredResponse(this.isValidBraceCompletion(_.arguments)),docCommentTemplate:_=>this.requiredResponse(this.getDocCommentTemplate(_.arguments)),getSpanOfEnclosingComment:_=>this.requiredResponse(this.getSpanOfEnclosingComment(_.arguments)),fileReferences:_=>this.requiredResponse(this.getFileReferences(_.arguments,!0)),"fileReferences-full":_=>this.requiredResponse(this.getFileReferences(_.arguments,!1)),format:_=>this.requiredResponse(this.getFormattingEditsForRange(_.arguments)),formatonkey:_=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(_.arguments)),"format-full":_=>this.requiredResponse(this.getFormattingEditsForDocumentFull(_.arguments)),"formatonkey-full":_=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(_.arguments)),"formatRange-full":_=>this.requiredResponse(this.getFormattingEditsForRangeFull(_.arguments)),completionInfo:_=>this.requiredResponse(this.getCompletions(_.arguments,"completionInfo")),completions:_=>this.requiredResponse(this.getCompletions(_.arguments,"completions")),"completions-full":_=>this.requiredResponse(this.getCompletions(_.arguments,"completions-full")),completionEntryDetails:_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!1)),"completionEntryDetails-full":_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!0)),compileOnSaveAffectedFileList:_=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(_.arguments)),compileOnSaveEmitFile:_=>this.requiredResponse(this.emitFile(_.arguments)),signatureHelp:_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!0)),"signatureHelp-full":_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!1)),"compilerOptionsDiagnostics-full":_=>this.requiredResponse(this.getCompilerOptionsDiagnostics(_.arguments)),"encodedSyntacticClassifications-full":_=>this.requiredResponse(this.getEncodedSyntacticClassifications(_.arguments)),"encodedSemanticClassifications-full":_=>this.requiredResponse(this.getEncodedSemanticClassifications(_.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:_=>this.requiredResponse(this.getSemanticDiagnosticsSync(_.arguments)),syntacticDiagnosticsSync:_=>this.requiredResponse(this.getSyntacticDiagnosticsSync(_.arguments)),suggestionDiagnosticsSync:_=>this.requiredResponse(this.getSuggestionDiagnosticsSync(_.arguments)),geterr:_=>(this.errorCheck.startNew(S=>this.getDiagnostics(S,_.arguments.delay,_.arguments.files)),this.notRequired(void 0)),geterrForProject:_=>(this.errorCheck.startNew(S=>this.getDiagnosticsForProject(S,_.arguments.delay,_.arguments.file)),this.notRequired(void 0)),change:_=>(this.change(_.arguments),this.notRequired(_)),configure:_=>(this.projectService.setHostConfiguration(_.arguments),this.notRequired(_)),reload:_=>(this.reload(_.arguments),this.requiredResponse({reloadFinished:!0})),saveto:_=>{let S=_.arguments;return this.saveToTmp(S.file,S.tmpfile),this.notRequired(_)},close:_=>{let S=_.arguments;return this.closeClientFile(S.file),this.notRequired(_)},navto:_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!0)),"navto-full":_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!1)),brace:_=>this.requiredResponse(this.getBraceMatching(_.arguments,!0)),"brace-full":_=>this.requiredResponse(this.getBraceMatching(_.arguments,!1)),navbar:_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!0)),"navbar-full":_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!1)),navtree:_=>this.requiredResponse(this.getNavigationTree(_.arguments,!0)),"navtree-full":_=>this.requiredResponse(this.getNavigationTree(_.arguments,!1)),documentHighlights:_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!0)),"documentHighlights-full":_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!1)),compilerOptionsForInferredProjects:_=>(this.setCompilerOptionsForInferredProjects(_.arguments),this.requiredResponse(!0)),projectInfo:_=>this.requiredResponse(this.getProjectInfo(_.arguments)),reloadProjects:_=>(this.projectService.reloadProjects(),this.notRequired(_)),jsxClosingTag:_=>this.requiredResponse(this.getJsxClosingTag(_.arguments)),linkedEditingRange:_=>this.requiredResponse(this.getLinkedEditingRange(_.arguments)),getCodeFixes:_=>this.requiredResponse(this.getCodeFixes(_.arguments,!0)),"getCodeFixes-full":_=>this.requiredResponse(this.getCodeFixes(_.arguments,!1)),getCombinedCodeFix:_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!0)),"getCombinedCodeFix-full":_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!1)),applyCodeActionCommand:_=>this.requiredResponse(this.applyCodeActionCommand(_.arguments)),getSupportedCodeFixes:_=>this.requiredResponse(this.getSupportedCodeFixes(_.arguments)),getApplicableRefactors:_=>this.requiredResponse(this.getApplicableRefactors(_.arguments)),getEditsForRefactor:_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!0)),getMoveToRefactoringFileSuggestions:_=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(_.arguments)),preparePasteEdits:_=>this.requiredResponse(this.preparePasteEdits(_.arguments)),getPasteEdits:_=>this.requiredResponse(this.getPasteEdits(_.arguments)),"getEditsForRefactor-full":_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!1)),organizeImports:_=>this.requiredResponse(this.organizeImports(_.arguments,!0)),"organizeImports-full":_=>this.requiredResponse(this.organizeImports(_.arguments,!1)),getEditsForFileRename:_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!0)),"getEditsForFileRename-full":_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!1)),configurePlugin:_=>(this.configurePlugin(_.arguments),this.notRequired(_)),selectionRange:_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!0)),"selectionRange-full":_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!1)),prepareCallHierarchy:_=>this.requiredResponse(this.prepareCallHierarchy(_.arguments)),provideCallHierarchyIncomingCalls:_=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(_.arguments)),provideCallHierarchyOutgoingCalls:_=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(_.arguments)),toggleLineComment:_=>this.requiredResponse(this.toggleLineComment(_.arguments,!0)),"toggleLineComment-full":_=>this.requiredResponse(this.toggleLineComment(_.arguments,!1)),toggleMultilineComment:_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!0)),"toggleMultilineComment-full":_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!1)),commentSelection:_=>this.requiredResponse(this.commentSelection(_.arguments,!0)),"commentSelection-full":_=>this.requiredResponse(this.commentSelection(_.arguments,!1)),uncommentSelection:_=>this.requiredResponse(this.uncommentSelection(_.arguments,!0)),"uncommentSelection-full":_=>this.requiredResponse(this.uncommentSelection(_.arguments,!1)),provideInlayHints:_=>this.requiredResponse(this.provideInlayHints(_.arguments)),mapCode:_=>this.requiredResponse(this.mapCode(_.arguments)),copilotRelated:()=>this.requiredResponse(this.getCopilotRelatedInfo())})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||lWe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:g}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(_=>this.defaultEventHandler(_)):void 0;let d={executeWithRequestId:(_,S,R)=>this.executeWithRequestId(_,S,R),getCurrentRequestId:()=>this.currentRequestId,getPerformanceData:()=>this.performanceData,getServerHost:()=>this.host,logError:(_,S)=>this.logError(_,S),sendRequestCompletedEvent:(_,S)=>this.sendRequestCompletedEvent(_,S),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new IOs(d);let h={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:g,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new sJt(h),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new R4t(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:Cfn.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:bOs.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:pe.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c,g){this.event({request_seq:c,performanceData:g&&yfn(g)},"requestCompleted")}addPerformanceData(c,g){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+g}addDiagnosticsPerformanceData(c,g,d){var h,_;this.performanceData||(this.performanceData={});let S=(h=this.performanceData.diagnosticsDuration)==null?void 0:h.get(c);S||((_=this.performanceData).diagnosticsDuration??(_.diagnosticsDuration=new Map)).set(c,S={}),S[g]=d}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case aWe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case hst:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case mst:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case Cst:case Est:case Sst:case vst:this.event(c.data,c.eventName);break;case _st:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:At(c.data.diagnostics,g=>a2e(g,!0))},c.eventName);break;case yst:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case bst:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(g=>this.updateErrorCheck(g,c,100,!0))),this.event({openFiles:c},aWe))}logError(c,g){this.logErrorWorker(c,g)}logErrorWorker(c,g,d){let h="Exception on executing command "+g;if(c.message&&(h+=`: +`+Ode(c.message),c.stack&&(h+=` +`+Ode(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:_,project:S}=this.getFileAndProject(d),R=S.getScriptInfoForNormalizedPath(_);if(R){let T=Lz(R.getSnapshot());h+=` -File text of ${d.file}:${Wde(T)} +File text of ${d.file}:${Ode(T)} `}}catch{}if(c.ProgramFiles){h+=` Program files: ${JSON.stringify(c.ProgramFiles)} @@ -1064,15 +1064,15 @@ Program files: ${JSON.stringify(c.ProgramFiles)} Projects:: `;let _=0,S=R=>{h+=` -Project '${R.projectName}' (${fpe[R.projectKind]}) ${_} +Project '${R.projectName}' (${Ipe[R.projectKind]}) ${_} `,h+=R.filesToString(!0),h+=` ----------------------------------------------- -`,_++};this.projectService.externalProjects.forEach(S),this.projectService.configuredProjects.forEach(S),this.projectService.inferredProjects.forEach(S)}}this.logger.msg(h,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${j3(c)}`);return}this.writeMessage(c)}writeMessage(c){let g=oJt(c,this.logger,this.byteLength,this.host.newLine);this.host.write(g)}event(c,g){this.send(aJt(g,c))}doOutput(c,g,d,h,_,S){let R={seq:0,type:"response",command:g,request_seq:d,success:h,performanceData:_&&pfn(_)};if(h){let T;if(Ki(c))R.body=c,T=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:W,...V}=c;R.body=V,T=W}else R.body=c;else R.body=c;T&&(R.metadata=T)}else pe.assert(c===void 0);S&&(R.message=S),this.send(R)}semanticCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"semanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let S=nfn(g,c)?zm:g.getLanguageService().getSemanticDiagnostics(c).filter(R=>!!R.file);this.sendDiagnosticsEvent(c,g,S,"semanticDiag",_),(h=ki)==null||h.pop()}syntacticCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"syntacticCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag",_),(h=ki)==null||h.pop()}suggestionCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"suggestionCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag",_),(h=ki)==null||h.pop()}regionSemanticCheck(c,g,d){var h,_,S;let R=Fg();(h=ki)==null||h.push(ki.Phase.Session,"regionSemanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let T;if(!this.shouldDoRegionCheck(c)||!(T=g.getLanguageService().getRegionSemanticDiagnostics(c,d))){(_=ki)==null||_.pop();return}this.sendDiagnosticsEvent(c,g,T.diagnostics,"regionSemanticDiag",R,T.spans),(S=ki)==null||S.pop()}shouldDoRegionCheck(c){var g;let d=(g=this.projectService.getScriptInfoForNormalizedPath(c))==null?void 0:g.textStorage.getLineInfo().getLineCount();return!!(d&&d>=this.regionDiagLineCountThreshold)}sendDiagnosticsEvent(c,g,d,h,_,S){try{let R=pe.checkDefined(g.getScriptInfo(c)),T=Fg()-_,W={file:c,diagnostics:d.map(V=>ifn(c,g,V)),spans:S?.map(V=>kN(V,R))};this.event(W,h),this.addDiagnosticsPerformanceData(c,h,T)}catch(R){this.logError(R,h)}}updateErrorCheck(c,g,d,h=!0){if(g.length===0)return;pe.assert(!this.suppressDiagnosticEvents);let _=this.changeSeq,S=Math.min(d,200),R=0,T=()=>{if(R++,g.length>R)return c.delay("checkOne",S,V)},W=(M,ee)=>{if(this.semanticCheck(M,ee),this.changeSeq===_){if(this.getPreferences(M).disableSuggestions)return T();c.immediate("suggestionCheck",()=>{this.suggestionCheck(M,ee),T()})}},V=()=>{if(this.changeSeq!==_)return;let M,ee=g[R];if(Xs(ee)?ee=this.toPendingErrorCheck(ee):"ranges"in ee&&(M=ee.ranges,ee=this.toPendingErrorCheck(ee.file)),!ee)return T();let{fileName:re,project:ge}=ee;if(_v(ge),!!ge.containsFile(re,h)&&(this.syntacticCheck(re,ge),this.changeSeq===_)){if(ge.projectService.serverMode!==0)return T();if(M)return c.immediate("regionSemanticCheck",()=>{let Ie=this.projectService.getScriptInfoForNormalizedPath(re);Ie&&this.regionSemanticCheck(re,ge,M.map(_e=>this.getRange({file:re,..._e},Ie))),this.changeSeq===_&&c.immediate("semanticCheck",()=>W(re,ge))});c.immediate("semanticCheck",()=>W(re,ge))}};g.length>R&&this.changeSeq===_&&c.delay("checkOne",d,V)}cleanProjects(c,g){if(g){this.logger.info(`cleaning ${c}`);for(let d of g)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",Do(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(g,c)}getEncodedSemanticClassifications(c){let{file:g,project:d}=this.getFileAndProject(c),h=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(g,c,h)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let g=this.getProject(c.projectFileName),d=op(c.file);return{configFile:g&&g.hasConfigFile(d)?d:void 0,project:g}}getConfigFileDiagnostics(c,g,d){let h=g.getAllProjectErrors(),_=g.getLanguageService().getCompilerOptionsDiagnostics(),S=Me(Nn(h,_),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):At(S,R=>o2e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(g=>({message:wN(g.messageText,this.host.newLine),start:g.start,length:g.length,category:_b(g),code:g.code,source:g.source,startLocation:g.file&&cse(Ra(g.file,g.start)),endLocation:g.file&&cse(Ra(g.file,g.start+g.length)),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,relatedInformation:At(g.relatedInformation,Dst)}))}getCompilerOptionsDiagnostics(c){let g=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Me(g.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,g){return c.map(d=>({message:wN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:_b(d),code:d.code,source:d.source,startLocation:g&&g.positionToLineOffset(d.start),endLocation:g&&g.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:At(d.relatedInformation,Dst)}))}getDiagnosticsWorker(c,g,d,h){let{project:_,file:S}=this.getFileAndProject(c);if(g&&nfn(_,S))return zm;let R=_.getScriptInfoForNormalizedPath(S),T=d(_,S);return h?this.convertToDiagnosticsWithLinePosition(T,R):T.map(W=>ifn(S,_,W))}getDefinition(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapDefinitionInfoLocations(h.getLanguageService().getDefinitionAtPosition(d,_)||zm,h);return g?this.mapDefinitionInfo(S,h):S.map(JEt.mapToOriginalLocation)}mapDefinitionInfoLocations(c,g){return c.map(d=>{let h=gfn(d,g);return h?{...h,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=pe.checkDefined(h.getScriptInfo(d)),R=h.getLanguageService().getDefinitionAndBoundSpan(d,_);if(!R||!R.definitions)return{definitions:zm,textSpan:void 0};let T=this.mapDefinitionInfoLocations(R.definitions,h),{textSpan:W}=R;return g?{definitions:this.mapDefinitionInfo(T,h),textSpan:kN(W,S)}:{definitions:T.map(JEt.mapToOriginalLocation),textSpan:W}}findSourceDefinition(c){var g;let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDefinitionAtPosition(d,_),R=this.mapDefinitionInfoLocations(S||zm,h).slice();if(this.projectService.serverMode===0&&(!jt(R,re=>op(re.fileName)!==d&&!re.isAmbient)||jt(R,re=>!!re.failedAliasResolution))){let re=oo(Ee=>Ee.textSpan.start,Qrt(this.host.useCaseSensitiveFileNames));R?.forEach(Ee=>re.add(Ee));let ge=h.getNoDtsResolutionProject(d),Ie=ge.getLanguageService(),_e=(g=Ie.getDefinitionAtPosition(d,_,!0,!1))==null?void 0:g.filter(Ee=>op(Ee.fileName)!==d);if(jt(_e))for(let Ee of _e){if(Ee.unverified){let Ne=M(Ee,h.getLanguageService().getProgram(),Ie.getProgram());if(jt(Ne)){for(let Te of Ne)re.add(Te);continue}}re.add(Ee)}else{let Ee=R.filter(Ne=>op(Ne.fileName)!==d&&Ne.isAmbient);for(let Ne of jt(Ee)?Ee:V()){let Te=W(Ne.fileName,d,ge);if(!Te)continue;let Ze=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Te,ge.currentDirectory,ge.directoryStructureHost,!1);if(!Ze)continue;ge.containsScriptInfo(Ze)||(ge.addRoot(Ze),ge.updateGraph());let We=Ie.getProgram(),Ue=pe.checkDefined(We.getSourceFile(Te));for(let $e of ee(Ne.name,Ue,We))re.add($e)}}R=Do(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,h);function W(re,ge,Ie){var _e,Ee,Ne;let Te=MAe(re);if(Te&&re.lastIndexOf(Vx)===Te.topLevelNodeModulesIndex){let Ze=re.substring(0,Te.packageRootIndex),We=(_e=h.getModuleResolutionCache())==null?void 0:_e.getPackageJsonInfoCache(),Ue=h.getCompilationSettings(),$e=yde(Xc(Ze,h.getCurrentDirectory()),_de(We,h,Ue));if(!$e)return;let Ye=Aet($e,{moduleResolution:2},h,h.getModuleResolutionCache()),Tt=re.substring(Te.topLevelPackageNameIndex+1,Te.packageRootIndex),ot=bde(NEe(Tt)),Qe=h.toPath(re);if(Ye&&jt(Ye,mt=>h.toPath(mt)===Qe))return(Ee=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(ot,ge).resolvedModule)==null?void 0:Ee.resolvedFileName;{let mt=re.substring(Te.packageRootIndex+1),ht=`${ot}/${s0(mt)}`;return(Ne=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(ht,ge).resolvedModule)==null?void 0:Ne.resolvedFileName}}}function V(){let re=h.getLanguageService(),ge=re.getProgram(),Ie=Lb(ge.getSourceFile(d),_);return(mA(Ie)||Ir(Ie))&&_p(Ie.parent)&&jZe(Ie,_e=>{var Ee;if(_e===Ie)return;let Ne=(Ee=re.getDefinitionAtPosition(d,_e.getStart(),!0,!1))==null?void 0:Ee.filter(Te=>op(Te.fileName)!==d&&Te.isAmbient).map(Te=>({fileName:Te.fileName,name:c2(Ie)}));if(jt(Ne))return Ne})||zm}function M(re,ge,Ie){var _e;let Ee=Ie.getSourceFile(re.fileName);if(!Ee)return;let Ne=Lb(ge.getSourceFile(d),_),Te=ge.getTypeChecker().getSymbolAtLocation(Ne),Ze=Te&&Cp(Te,277);if(!Ze)return;let We=((_e=Ze.propertyName)==null?void 0:_e.text)||Ze.name.text;return ee(We,Ee,Ie)}function ee(re,ge,Ie){let _e=Kp.Core.getTopMostDeclarationNamesInFile(re,ge);return Xt(_e,Ee=>{let Ne=Ie.getTypeChecker().getSymbolAtLocation(Ee),Te=T7(Ee);if(Ne&&Te)return nse.createDefinitionInfo(Te,Ie.getTypeChecker(),Ne,Te,!0)})}}getEmitOutput(c){let{file:g,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(g)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let h=d.getLanguageService().getEmitOutput(g);return c.richResponse?{...h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(h.diagnostics):h.diagnostics.map(_=>o2e(_,!0))}:h}mapJSDocTagInfo(c,g,d){return c?c.map(h=>{var _;return{...h,text:d?this.mapDisplayParts(h.text,g):(_=h.text)==null?void 0:_.map(S=>S.text).join("")}}):[]}mapDisplayParts(c,g){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,g)}):[]}mapSignatureHelpItems(c,g,d){return c.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,g),parameters:h.parameters.map(_=>({..._,documentation:this.mapDisplayParts(_.documentation,g)})),tags:this.mapJSDocTagInfo(h.tags,g,d)}))}mapDefinitionInfo(c,g){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,g),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(pe.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,g,d){let h=d.getLanguageService(),_=h.toLineColumnOffset(c,g.start),S=h.toLineColumnOffset(c,Rs(g));return{file:c,start:{line:_.line+1,offset:_.character+1},end:{line:S.line+1,offset:S.character+1}}}toFileSpanWithContext(c,g,d,h){let _=this.toFileSpan(c,g,h),S=d&&this.toFileSpan(c,d,h);return S?{..._,contextStart:S.start,contextEnd:S.end}:_}getTypeDefinition(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(g,h)||zm,d);return this.mapDefinitionInfo(_,d)}mapImplementationLocations(c,g){return c.map(d=>{let h=gfn(d,g);return h?{...h,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapImplementationLocations(h.getLanguageService().getImplementationAtPosition(d,_)||zm,h);return g?S.map(({fileName:R,textSpan:T,contextSpan:W})=>this.toFileSpanWithContext(R,T,W,h)):S.map(JEt.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?zm:this.getDiagnosticsWorker(c,!1,(d,h)=>d.getLanguageService().getSyntacticDiagnostics(h),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:g,project:d}=this.getConfigFileAndProject(c);return g?this.getConfigFileDiagnostics(g,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(h,_)=>h.getLanguageService().getSemanticDiagnostics(_).filter(S=>!!S.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?zm:this.getDiagnosticsWorker(c,!0,(d,h)=>d.getLanguageService().getSuggestionDiagnostics(h),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getJsxClosingTagAtPosition(g,h);return _===void 0?void 0:{newText:_.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getLinkedEditingRangeAtPosition(g,h),S=this.projectService.getScriptInfoForNormalizedPath(g);if(!(S===void 0||_===void 0))return cOs(_,S)}getDocumentHighlights(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDocumentHighlights(d,_,c.filesToSearch);return S?g?S.map(({fileName:R,highlightSpans:T})=>{let W=h.getScriptInfo(R);return{file:R,highlightSpans:T.map(({textSpan:V,kind:M,contextSpan:ee})=>({...lJt(V,ee,W),kind:M}))}}):S:zm}provideInlayHints(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);return d.getLanguageService().provideInlayHints(g,c,this.getPreferences(g)).map(S=>{let{position:R,displayParts:T}=S;return{...S,position:h.positionToLineOffset(R),displayParts:T?.map(({text:W,span:V,file:M})=>{if(V){pe.assertIsDefined(M,"Target file should be defined together with its span.");let ee=this.projectService.getScriptInfo(M);return{text:W,span:{start:ee.positionToLineOffset(V.start),end:ee.positionToLineOffset(V.start+V.length),file:M}}}else return{text:W}})}})}mapCode(c){var g;let d=this.getHostFormatOptions(),h=this.getHostPreferences(),{file:_,languageService:S}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(_),T=(g=c.mapping.focusLocations)==null?void 0:g.map(V=>V.map(M=>{let ee=R.lineOffsetToPosition(M.start.line,M.start.offset),re=R.lineOffsetToPosition(M.end.line,M.end.offset);return{start:ee,length:re-ee}})),W=S.mapCode(_,c.mapping.contents,T,d,h);return this.mapTextChangesToCodeEdits(W)}getCopilotRelatedInfo(){return{relatedFiles:[]}}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,c.needDefaultConfiguredProjectInfo,!1)}getProjectInfoWorker(c,g,d,h,_){let{project:S}=this.getFileAndProjectWorker(c,g);return _v(S),{configFileName:S.getProjectName(),languageServiceDisabled:!S.languageServiceEnabled,fileNames:d?S.getFileNames(!1,_):void 0,configuredProjectInfo:h?this.getDefaultConfiguredProjectInfo(c):void 0}}getDefaultConfiguredProjectInfo(c){var g;let d=this.projectService.getScriptInfo(c);if(!d)return;let h=this.projectService.findDefaultConfiguredProjectWorker(d,3);if(!h)return;let _,S;return h.seenProjects.forEach((R,T)=>{T!==h.defaultProject&&(R!==3?(_??(_=[])).push(op(T.getConfigFilePath())):(S??(S=[])).push(op(T.getConfigFilePath())))}),(g=h.seenConfigs)==null||g.forEach(R=>(_??(_=[])).push(R)),{notMatchedByConfig:_,notInProject:S,defaultProject:h.defaultProject&&op(h.defaultProject.getConfigFilePath())}}getRenameInfo(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.getPreferences(g);return d.getLanguageService().getRenameInfo(g,h,_)}getProjects(c,g,d){let h,_;if(c.projectFileName){let S=this.getProject(c.projectFileName);S&&(h=[S])}else{let S=g?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(S)g||this.projectService.ensureDefaultProjectForFile(S);else return d?zm:(this.projectService.logErrorForScriptInfoNotFound(c.file),QF.ThrowNoProject());h=S.containingProjects,_=this.projectService.getSymlinkedProjects(S)}return h=Me(h,S=>S.languageServiceEnabled&&!S.isOrphan()),!d&&(!h||!h.length)&&!_?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),QF.ThrowNoProject()):_?{projects:h,symLinkedProjects:_}:h}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return QF.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,g){let d=op(c.file),h=this.getPositionInFile(c,d),_=this.getProjects(c),S=this.getDefaultProject(c),R=this.getPreferences(d),T=this.mapRenameInfo(S.getLanguageService().getRenameInfo(d,h,R),pe.checkDefined(this.projectService.getScriptInfo(d)));if(!T.canRename)return g?{info:T,locs:[]}:[];let W=rOs(_,S,{fileName:c.file,pos:h},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return g?{info:T,locs:this.toSpanGroups(W)}:W}mapRenameInfo(c,g){if(c.canRename){let{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:W}=c;return{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:kN(W,g)}}else return c}toSpanGroups(c){let g=new Map;for(let{fileName:d,textSpan:h,contextSpan:_,originalContextSpan:S,originalTextSpan:R,originalFileName:T,...W}of c){let V=g.get(d);V||g.set(d,V={file:d,locs:[]});let M=pe.checkDefined(this.projectService.getScriptInfo(d));V.locs.push({...lJt(h,_,M),...W})}return Do(g.values())}getReferences(c,g){let d=op(c.file),h=this.getProjects(c),_=this.getPositionInFile(c,d),S=nOs(h,this.getDefaultProject(c),{fileName:c.file,pos:_},this.host.useCaseSensitiveFileNames,this.logger);if(!g)return S;let R=this.getPreferences(d),T=this.getDefaultProject(c),W=T.getScriptInfoForNormalizedPath(d),V=T.getLanguageService().getQuickInfoAtPosition(d,_),M=V?D1e(V.displayParts):"",ee=V&&V.textSpan,re=ee?W.positionToLineOffset(ee.start).offset:0,ge=ee?W.getSnapshot().getText(ee.start,Rs(ee)):"";return{refs:er(S,_e=>_e.references.map(Ee=>Ifn(this.projectService,Ee,R))),symbolName:ge,symbolStartOffset:re,symbolDisplayString:M}}getFileReferences(c,g){let d=this.getProjects(c),h=op(c.file),_=this.getPreferences(h),S={fileName:h,pos:0},R=cJt(d,this.getDefaultProject(c),S,S,cfn,V=>(this.logger.info(`Finding references to file ${h} in project ${V.getProjectName()}`),V.getLanguageService().getFileReferences(h))),T;if(Ki(R))T=R;else{T=[];let V=kst(this.host.useCaseSensitiveFileNames);R.forEach(M=>{for(let ee of M)V.has(ee)||(T.push(ee),V.add(ee))})}return g?{refs:T.map(V=>Ifn(this.projectService,V,_)),symbolName:`"${c.file}"`}:T}openClientFile(c,g,d,h){this.projectService.openClientFileWithNormalizedPath(c,g,d,!1,h)}getPosition(c,g){return c.position!==void 0?c.position:g.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(g);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:g,project:d}=this.getFileAndProject(c);return{file:g,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,g){let d=op(c),h=this.getProject(g)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:h}}getOutliningSpans(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getOutliningSpans(d);if(g){let S=this.projectService.getScriptInfoForNormalizedPath(d);return _.map(R=>({textSpan:kN(R.textSpan,S),hintSpan:kN(R.hintSpan,S),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return _}getTodoComments(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(g,c.descriptors)}getDocCommentTemplate(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getDocCommentTemplateAtPosition(g,h,this.getPreferences(g),this.getFormatOptions(g))}getSpanOfEnclosingComment(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.onlyMultiLine,_=this.getPositionInFile(c,g);return d.getSpanOfEnclosingComment(g,_,h)}getIndentation(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=c.options?ase(c.options):this.getFormatOptions(g),S=d.getIndentationAtPosition(g,h,_);return{position:h,indentation:S}}getBreakpointStatement(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getBreakpointStatementAtPosition(g,h)}getNameOrDottedNameSpan(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getNameOrDottedNameSpan(g,h,h)}isValidBraceCompletion(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.isValidBraceCompletionAtPosition(g,h,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPreferences(d),R=h.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,_),S.maximumHoverLength,c.verbosityLevel);if(!R)return;let T=!!S.displayPartsForJSDoc;if(g){let W=D1e(R.displayParts);return{kind:R.kind,kindModifiers:R.kindModifiers,start:_.positionToLineOffset(R.textSpan.start),end:_.positionToLineOffset(Rs(R.textSpan)),displayString:W,documentation:T?this.mapDisplayParts(R.documentation,h):D1e(R.documentation),tags:this.mapJSDocTagInfo(R.tags,h,T),canIncreaseVerbosityLevel:R.canIncreaseVerbosityLevel}}else return T?R:{...R,tags:this.mapJSDocTagInfo(R.tags,h,!1)}}getFormattingEditsForRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=h.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(g,_,S,this.getFormatOptions(g));if(R)return R.map(T=>this.convertTextChangeToCodeEdit(T,h))}getFormattingEditsForRangeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?ase(c.options):this.getFormatOptions(g);return d.getFormattingEditsForRange(g,c.position,c.endPosition,h)}getFormattingEditsForDocumentFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?ase(c.options):this.getFormatOptions(g);return d.getFormattingEditsForDocument(g,h)}getFormattingEditsAfterKeystrokeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?ase(c.options):this.getFormatOptions(g);return d.getFormattingEditsAfterKeystroke(g,c.position,c.key,h)}getFormattingEditsAfterKeystroke(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=this.getFormatOptions(g),R=d.getFormattingEditsAfterKeystroke(g,_,c.key,S);if(c.key===` -`&&(!R||R.length===0||$Ws(R,_))){let{lineText:T,absolutePosition:W}=h.textStorage.getAbsolutePositionAndLineText(c.line);if(T&&T.search("\\S")<0){let V=d.getIndentationAtPosition(g,_,S),M=0,ee,re;for(ee=0,re=T.length;ee({start:h.positionToLineOffset(T.span.start),end:h.positionToLineOffset(Rs(T.span)),newText:T.newText?T.newText:""}))}getCompletions(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getCompletionsAtPosition(d,S,{...Y4t(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},h.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(g==="completions-full")return R;let T=c.prefix||"",W=Xt(R.entries,M=>{if(R.isMemberCompletion||Ac(M.name.toLowerCase(),T.toLowerCase())){let ee=M.replacementSpan?kN(M.replacementSpan,_):void 0;return{...M,replacementSpan:ee,hasAction:M.hasAction||void 0,symbol:void 0}}});return g==="completions"?(R.metadata&&(W.metadata=R.metadata),W):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&kN(R.optionalReplacementSpan,_),entries:W}}getCompletionEntryDetails(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.projectService.getFormatCodeOptions(d),T=!!this.getPreferences(d).displayPartsForJSDoc,W=Xt(c.entryNames,V=>{let{name:M,source:ee,data:re}=typeof V=="string"?{name:V,source:void 0,data:void 0}:V;return h.getLanguageService().getCompletionEntryDetails(d,S,M,R,ee,this.getPreferences(d),re?Ma(re,dOs):void 0)});return g?T?W:W.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,h,!1)})):W.map(V=>({...V,codeActions:At(V.codeActions,M=>this.mapCodeAction(M)),documentation:this.mapDisplayParts(V.documentation,h),tags:this.mapJSDocTagInfo(V.tags,h,T)}))}getCompileOnSaveAffectedFileList(c){let g=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?tOs(d,h=>this.projectService.getScriptInfoForPath(h),g,(h,_)=>{if(!h.compileOnSaveEnabled||!h.languageServiceEnabled||h.isOrphan())return;let S=h.getCompilationSettings();if(!(S.noEmit||PC(_.fileName)&&!qWs(S)))return{projectFileName:h.getProjectName(),fileNames:h.getCompileOnSaveAffectedFileList(_),projectUsesOutFile:!!S.outFile}}):zm}emitFile(c){let{file:g,project:d}=this.getFileAndProject(c);if(d||QF.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let h=d.getScriptInfo(g),{emitSkipped:_,diagnostics:S}=d.emitFile(h,(R,T,W)=>this.host.writeFile(R,T,W));return c.richResponse?{emitSkipped:_,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):S.map(R=>o2e(R,!0))}:!_}getSignatureHelpItems(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getSignatureHelpItems(d,S,c),T=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&g){let W=R.applicableSpan;return{...R,applicableSpan:{start:_.positionToLineOffset(W.start),end:_.positionToLineOffset(W.start+W.length)},items:this.mapSignatureHelpItems(R.items,h,T)}}else return T||!R?R:{...R,items:R.items.map(W=>({...W,tags:this.mapJSDocTagInfo(W.tags,h,!1)}))}}toPendingErrorCheck(c){let g=op(c),d=this.projectService.tryGetDefaultProjectForFile(g);return d&&{fileName:g,project:d}}getDiagnostics(c,g,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,g)}change(c){let g=this.projectService.getScriptInfo(c.file);pe.assert(!!g),g.textStorage.switchToScriptVersionCache();let d=g.lineOffsetToPosition(c.line,c.offset),h=g.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(g,qr({span:{start:d,length:h-d},newText:c.insertString})))}reload(c){let g=op(c.file),d=c.tmpfile===void 0?void 0:op(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(g);h&&(this.changeSeq++,h.reloadFromFile(d))}saveToTmp(c,g){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(g)}closeClientFile(c){if(!c)return;let g=iu(c);this.projectService.closeClientFile(g)}mapLocationNavigationBarItems(c,g){return At(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(h=>kN(h,g)),childItems:this.mapLocationNavigationBarItems(d.childItems,g),indent:d.indent}))}getNavigationBarItems(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationBarItems(d);return _?g?this.mapLocationNavigationBarItems(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}toLocationNavigationTree(c,g){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>kN(d,g)),nameSpan:c.nameSpan&&kN(c.nameSpan,g),childItems:At(c.childItems,d=>this.toLocationNavigationTree(d,g))}}getNavigationTree(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationTree(d);return _?g?this.toLocationNavigationTree(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}getNavigateToItems(c,g){let d=this.getFullNavigateToItems(c);return g?er(d,({project:h,navigateToItems:_})=>_.map(S=>{let R=h.getScriptInfo(S.fileName),T={name:S.name,kind:S.kind,kindModifiers:S.kindModifiers,isCaseSensitive:S.isCaseSensitive,matchKind:S.matchKind,file:S.fileName,start:R.positionToLineOffset(S.textSpan.start),end:R.positionToLineOffset(Rs(S.textSpan))};return S.kindModifiers&&S.kindModifiers!==""&&(T.kindModifiers=S.kindModifiers),S.containerName&&S.containerName.length>0&&(T.containerName=S.containerName),S.containerKind&&S.containerKind.length>0&&(T.containerKind=S.containerKind),T})):er(d,({navigateToItems:h})=>h)}getFullNavigateToItems(c){let{currentFileOnly:g,searchValue:d,maxResultCount:h,projectFileName:_}=c;if(g){pe.assertIsDefined(c.file);let{file:ee,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,h,ee)}]}let S=this.getHostPreferences(),R=[],T=new Map;if(!c.file&&!_)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(ee=>W(ee));else{let ee=this.getProjects(c);afn(ee,void 0,re=>W(re))}return R;function W(ee){let re=ee.getLanguageService().getNavigateToItems(d,h,void 0,ee.isNonTsProject(),S.excludeLibrarySymbolsInNavTo),ge=Me(re,Ie=>V(Ie)&&!xst(Ipe(Ie),ee));ge.length&&R.push({project:ee,navigateToItems:ge})}function V(ee){let re=ee.name;if(!T.has(re))return T.set(re,[ee]),!0;let ge=T.get(re);for(let Ie of ge)if(M(Ie,ee))return!1;return ge.push(ee),!0}function M(ee,re){return ee===re?!0:!ee||!re?!1:ee.containerKind===re.containerKind&&ee.containerName===re.containerName&&ee.fileName===re.fileName&&ee.isCaseSensitive===re.isCaseSensitive&&ee.kind===re.kind&&ee.kindModifiers===re.kindModifiers&&ee.matchKind===re.matchKind&&ee.name===re.name&&ee.textSpan.start===re.textSpan.start&&ee.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return jnt();if(c.file){let{file:d,project:h}=this.getFileAndProject(c);return h.getLanguageService().getSupportedCodeFixes(d)}let g=this.getProject(c.projectFileName);return g||QF.ThrowNoProject(),g.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,g){let d,h;return this.isLocation(c)?d=_(c):h=this.getRange(c,g),pe.checkDefined(d===void 0?h:d);function _(S){return S.position!==void 0?S.position:g.lineOffsetToPosition(S.line,S.offset)}}getRange(c,g){let{startPosition:d,endPosition:h}=this.getStartAndEndPosition(c,g);return{pos:d,end:h}}getApplicableRefactors(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getApplicableRefactors(g,this.extractPositionOrRange(c,h),this.getPreferences(g),c.triggerReason,c.kind,c.includeInteractiveActions).map(S=>({...S,actions:S.actions.map(R=>({...R,range:R.range?{start:cse({line:R.range.start.line,character:R.range.start.offset}),end:cse({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),S=h.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,_),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(S===void 0)return{edits:[]};if(g){let{renameFilename:R,renameLocation:T,edits:W}=S,V;if(R!==void 0&&T!==void 0){let M=h.getScriptInfoForNormalizedPath(op(R));V=uJt(Lz(M.getSnapshot()),R,T,W)}return{renameLocation:V,renameFilename:R,edits:this.mapTextChangesToCodeEdits(W),notApplicableReason:S.notApplicableReason}}return S}getMoveToRefactoringFileSuggestions(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getMoveToRefactoringFileSuggestions(g,this.extractPositionOrRange(c,h),this.getPreferences(g))}preparePasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().preparePasteEditsForFile(g,c.copiedTextSpan.map(h=>this.getRange({file:g,startLine:h.start.line,startOffset:h.start.offset,endLine:h.end.line,endOffset:h.end.offset},this.projectService.getScriptInfoForNormalizedPath(g))))}getPasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);if(ppe(g))return;let h=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(S=>this.getRange({file:c.copiedFrom.file,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(op(c.copiedFrom.file))))}:void 0,_=d.getLanguageService().getPasteEdits({targetFile:g,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(S=>this.getRange({file:g,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(g))),copiedFrom:h,preferences:this.getPreferences(g)},this.getFormatOptions(g));return _&&this.mapPasteEditsAction(_)}organizeImports(c,g){pe.assert(c.scope.type==="file");let{file:d,project:h}=this.getFileAndProject(c.scope.args),_=h.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return g?this.mapTextChangesToCodeEdits(_):_}getEditsForFileRename(c,g){let d=op(c.oldFilePath),h=op(c.newFilePath),_=this.getHostFormatOptions(),S=this.getHostPreferences(),R=new Set,T=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(W=>{let V=W.getLanguageService().getEditsForFileRename(d,h,_,S),M=[];for(let ee of V)R.has(ee.fileName)||(T.push(ee),M.push(ee.fileName));for(let ee of M)R.add(ee)}),g?T.map(W=>this.mapTextChangeToCodeEdit(W)):T}getCodeFixes(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),{startPosition:S,endPosition:R}=this.getStartAndEndPosition(c,_),T;try{T=h.getLanguageService().getCodeFixesAtPosition(d,S,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(W){let V=W instanceof Error?W:new Error(W),M=h.getLanguageService(),ee=[...M.getSyntacticDiagnostics(d),...M.getSemanticDiagnostics(d),...M.getSuggestionDiagnostics(d)].filter(ge=>IE(S,R-S,ge.start,ge.length)).map(ge=>ge.code),re=c.errorCodes.find(ge=>!ee.includes(ge));throw re!==void 0&&(V.message+=` -Additional information: BADCLIENT: Bad error code, ${re} not found in range ${S}..${R} (found: ${ee.join(", ")})`),V}return g?T.map(W=>this.mapCodeFixAction(W)):T}getCombinedCodeFix({scope:c,fixId:g},d){pe.assert(c.type==="file");let{file:h,project:_}=this.getFileAndProject(c.args),S=_.getLanguageService().getCombinedCodeFix({type:"file",fileName:h},g,this.getFormatOptions(h),this.getPreferences(h));return d?{changes:this.mapTextChangesToCodeEdits(S.changes),commands:S.commands}:S}applyCodeActionCommand(c){let g=c.command;for(let d of cc(g)){let{file:h,project:_}=this.getFileAndProject(d);_.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(h)).then(S=>{},S=>{})}return{}}getStartAndEndPosition(c,g){let d,h;return c.startPosition!==void 0?d=c.startPosition:(d=g.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?h=c.endPosition:(h=g.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=h),{startPosition:d,endPosition:h}}mapCodeAction({description:c,changes:g,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(g),commands:d}}mapCodeFixAction({fixName:c,description:g,changes:d,commands:h,fixId:_,fixAllDescription:S}){return{fixName:c,description:g,changes:this.mapTextChangesToCodeEdits(d),commands:h,fixId:_,fixAllDescription:S}}mapPasteEditsAction({edits:c,fixId:g}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:g}}mapTextChangesToCodeEdits(c){return c.map(g=>this.mapTextChangeToCodeEdit(g))}mapTextChangeToCodeEdit(c){let g=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!g&&(g||this.projectService.logErrorForScriptInfoNotFound(c.fileName),pe.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!g}))),g?{fileName:c.fileName,textChanges:c.textChanges.map(d=>aOs(d,g))}:uOs(c)}convertTextChangeToCodeEdit(c,g){return{start:g.positionToLineOffset(c.span.start),end:g.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getBraceMatchingAtPosition(d,S);return R?g?R.map(T=>kN(T,_)):R:void 0}getDiagnosticsForProject(c,g,d){if(this.suppressDiagnosticEvents)return;let{fileNames:h,languageServiceDisabled:_}=this.getProjectInfoWorker(d,void 0,!0,void 0,!0);if(_)return;let S=h.filter(Ie=>!Ie.includes("lib.d.ts"));if(S.length===0)return;let R=[],T=[],W=[],V=[],M=op(d),ee=this.projectService.ensureDefaultProjectForFile(M);for(let Ie of S)this.getCanonicalFileName(Ie)===this.getCanonicalFileName(d)?R.push(Ie):this.projectService.getScriptInfo(Ie).isScriptOpen()?T.push(Ie):PC(Ie)?V.push(Ie):W.push(Ie);let ge=[...R,...T,...W,...V].map(Ie=>({fileName:Ie,project:ee}));this.updateErrorCheck(c,ge,g,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,g){let{locations:d}=c,{file:h,languageService:_}=this.getFileAndLanguageServiceForSyntacticOperation(c),S=pe.checkDefined(this.projectService.getScriptInfo(h));return At(d,R=>{let T=this.getPosition(R,S),W=_.getSmartSelectionRange(h,T);return g?this.mapSelectionRange(W,S):W})}toggleLineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfo(d),S=this.getRange(c,_),R=h.toggleLineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}toggleMultilineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.toggleMultilineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}commentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.commentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}uncommentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.uncommentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}mapSelectionRange(c,g){let d={textSpan:kN(c.textSpan,g)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,g)),d}getScriptInfoFromProjectService(c){let g=op(c),d=this.projectService.getScriptInfoForNormalizedPath(g);return d||(this.projectService.logErrorForScriptInfoNotFound(g),QF.ThrowNoProject())}toProtocolCallHierarchyItem(c){let g=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:kN(c.span,g),selectionSpan:kN(c.selectionSpan,g)}}toProtocolCallHierarchyIncomingCall(c){let g=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>kN(d,g))}}toProtocolCallHierarchyOutgoingCall(c,g){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>kN(d,g))}}prepareCallHierarchy(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);if(h){let _=this.getPosition(c,h),S=d.getLanguageService().prepareCallHierarchy(g,_);return S&&ont(S,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyIncomingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyIncomingCall(S))}provideCallHierarchyOutgoingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyOutgoingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyOutgoingCall(S,h))}getCanonicalFileName(c){let g=this.host.useCaseSensitiveFileNames?c:Om(c);return iu(g)}exit(){}notRequired(c){return c&&this.doOutput(void 0,c.command,c.seq,!0,this.performanceData),{responseRequired:!1,performanceData:this.performanceData}}requiredResponse(c){return{response:c,responseRequired:!0,performanceData:this.performanceData}}addProtocolHandler(c,g){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,g)}setCurrentRequest(c){pe.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){pe.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,g,d){let h=this.performanceData;try{return this.performanceData=d,this.setCurrentRequest(c),g()}finally{this.resetCurrentRequest(c),this.performanceData=h}}executeCommand(c){let g=this.handlers.get(c.command);if(g){let d=this.executeWithRequestId(c.seq,()=>g(c),void 0);return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${j3(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,void 0,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var g,d,h,_,S,R,T;this.gcTimer.scheduleCollect();let W,V=this.performanceData;this.logger.hasLevel(2)&&(W=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${Wde(this.toStringMessage(c))}`));let M,ee;try{M=this.parseMessage(c),ee=M.arguments&&M.arguments.file?M.arguments:void 0,(g=ki)==null||g.instant(ki.Phase.Session,"request",{seq:M.seq,command:M.command}),(d=ki)==null||d.push(ki.Phase.Session,"executeCommand",{seq:M.seq,command:M.command},!0);let{response:re,responseRequired:ge,performanceData:Ie}=this.executeCommand(M);if((h=ki)==null||h.pop(),this.logger.hasLevel(2)){let _e=zWs(this.hrtime(W)).toFixed(4);ge?this.logger.perftrc(`${M.seq}::${M.command}: elapsed time (in milliseconds) ${_e}`):this.logger.perftrc(`${M.seq}::${M.command}: async elapsed time (in milliseconds) ${_e}`)}(_=ki)==null||_.instant(ki.Phase.Session,"response",{seq:M.seq,command:M.command,success:!!re}),re?this.doOutput(re,M.command,M.seq,!0,Ie):ge&&this.doOutput(void 0,M.command,M.seq,!1,Ie,"No content available.")}catch(re){if((S=ki)==null||S.popAll(),re instanceof By){(R=ki)==null||R.instant(ki.Phase.Session,"commandCanceled",{seq:M?.seq,command:M?.command}),this.doOutput({canceled:!0},M.command,M.seq,!0,this.performanceData);return}this.logErrorWorker(re,this.toStringMessage(c),ee),(T=ki)==null||T.instant(ki.Phase.Session,"commandError",{seq:M?.seq,command:M?.command,message:re.message}),this.doOutput(void 0,M?M.command:"unknown",M?M.seq:0,!1,this.performanceData,"Error processing request. "+re.message+` -`+re.stack)}finally{this.performanceData=V}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function pfn(s){let c=s.diagnosticsDuration&&Do(s.diagnosticsDuration,([g,d])=>({...d,file:g}));return{...s,diagnosticsDuration:c}}function kN(s,c){return{start:c.positionToLineOffset(s.start),end:c.positionToLineOffset(Rs(s))}}function lJt(s,c,g){let d=kN(s,g),h=c&&kN(c,g);return h?{...d,contextStart:h.start,contextEnd:h.end}:d}function aOs(s,c){return{start:ffn(c,s.span.start),end:ffn(c,Rs(s.span)),newText:s.newText}}function ffn(s,c){return rJt(s)?lOs(s.getLineAndCharacterOfPosition(c)):s.positionToLineOffset(c)}function cOs(s,c){let g=s.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return s.wordPattern?{ranges:g,wordPattern:s.wordPattern}:{ranges:g}}function lOs(s){return{line:s.line+1,offset:s.character+1}}function uOs(s){pe.assert(s.textChanges.length===1);let c=ma(s.textChanges);return pe.assert(c.span.start===0&&c.span.length===0),{fileName:s.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function uJt(s,c,g,d){let h=gOs(s,c,d),{line:_,character:S}=Ci(cA(h),g);return{line:_+1,offset:S+1}}function gOs(s,c,g){for(let{fileName:d,textChanges:h}of g)if(d===c)for(let _=h.length-1;_>=0;_--){let{newText:S,span:{start:R,length:T}}=h[_];s=s.slice(0,R)+S+s.slice(R+T)}return s}function Ifn(s,{fileName:c,textSpan:g,contextSpan:d,isWriteAccess:h,isDefinition:_},{disableLineTextInReferences:S}){let R=pe.checkDefined(s.getScriptInfo(c)),T=lJt(g,d,R),W=S?void 0:AOs(R,T);return{file:c,...T,lineText:W,isWriteAccess:h,isDefinition:_}}function AOs(s,c){let g=s.lineToTextSpan(c.start.line-1);return s.getSnapshot().getText(g.start,Rs(g)).replace(/\r|\n/g,"")}function dOs(s){return s===void 0||s&&typeof s=="object"&&typeof s.exportName=="string"&&(s.fileName===void 0||typeof s.fileName=="string")&&(s.ambientModuleName===void 0||typeof s.ambientModuleName=="string"&&(s.isPackageJsonImport===void 0||typeof s.isPackageJsonImport=="boolean"))}var lse=4,gJt=(s=>(s[s.PreStart=0]="PreStart",s[s.Start=1]="Start",s[s.Entire=2]="Entire",s[s.Mid=3]="Mid",s[s.End=4]="End",s[s.PostEnd=5]="PostEnd",s))(gJt||{}),pOs=class{constructor(){this.goSubtree=!0,this.lineIndex=new a2e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new use,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(s,c){c&&(this.trailingText=""),s?s=this.initialText+s+this.trailingText:s=this.initialText+this.trailingText;let d=a2e.linesFromText(s).lines;d.length>1&&d[d.length-1]===""&&d.pop();let h,_;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(_=this.endBranch[R],R>0?h=this.endBranch[R-1]:h=this.branchNode);_&&h.remove(_);let S=this.startPath[this.startPath.length-1];if(d.length>0)if(S.text=d[0],d.length>1){let R=new Array(d.length-1),T=S;for(let M=1;M=0;){let M=this.startPath[W];R=M.insertAt(T,R),W--,T=M}let V=R.length;for(;V>0;){let M=new use;M.add(this.lineIndex.root),R=M.insertAt(this.lineIndex.root,R),V=R.length,this.lineIndex.root=M}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(S);for(let T=this.startPath.length-2;T>=0;T--)this.startPath[T].updateCounts()}return this.lineIndex}post(s,c,g){g===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(s,c,g,d,h){let _=this.stack[this.stack.length-1];this.state===2&&h===1&&(this.state=1,this.branchNode=_,this.lineCollectionAtBranch=g);let S;function R(T){return T.isLeaf()?new cWe(""):new use}switch(h){case 0:this.goSubtree=!1,this.state!==4&&_.add(g);break;case 1:this.state===4?this.goSubtree=!1:(S=R(g),_.add(S),this.startPath.push(S));break;case 2:this.state!==4?(S=R(g),_.add(S),this.startPath.push(S)):g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 5:this.goSubtree=!1,this.state!==1&&_.add(g);break}this.goSubtree&&this.stack.push(S)}leaf(s,c,g){this.state===1?this.initialText=g.text.substring(0,s):this.state===2?(this.initialText=g.text.substring(0,s),this.trailingText=g.text.substring(s+c)):this.trailingText=g.text.substring(s+c)}},fOs=class{constructor(s,c,g){this.pos=s,this.deleteLen=c,this.insertedText=g}getTextChangeRange(){return $2(zd(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},Gst=class yj{constructor(){this.changes=[],this.versions=new Array(yj.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%yj.maxVersions}currentVersionToIndex(){return this.currentVersion%yj.maxVersions}edit(c,g,d){this.changes.push(new fOs(c,g,d)),(this.changes.length>yj.changeNumberThreshold||g>yj.changeLengthThreshold||d&&d.length>yj.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let g=c.index;for(let d of this.changes)g=g.edit(d.pos,d.deleteLen,d.insertedText);c=new hfn(this.currentVersion+1,this,g,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=yj.maxVersions&&(this.minVersion=this.currentVersion-yj.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,g){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(g-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let g=this._getSnapshot().index,{lineText:d,absolutePosition:h}=g.lineNumberToInfo(c+1),_=d!==void 0?d.length:g.absolutePositionOfStartOfLine(c+2)-h;return zd(h,_)}getTextChangesBetweenVersions(c,g){if(c=this.minVersion){let d=[];for(let h=c+1;h<=g;h++){let _=this.versions[this.versionToIndex(h)];for(let S of _.changesSincePreviousVersion)d.push(S.getTextChangeRange())}return z(d)}else return;else return Eo}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let g=new yj,d=new hfn(0,g,new a2e);g.versions[g.currentVersion]=d;let h=a2e.linesFromText(c);return d.index.load(h.lines),g}};Gst.changeNumberThreshold=8,Gst.changeLengthThreshold=256,Gst.maxVersions=8;var Fst=Gst,hfn=class UDi{constructor(c,g,d,h=zm){this.version=c,this.cache=g,this.index=d,this.changesSincePreviousVersion=h}getText(c,g){return this.index.getText(c,g-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof UDi&&this.cache===c.cache)return this.version<=c.version?Eo:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},a2e=class zkr{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:g,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:g,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let g=this.getLineCount();if(c<=g){let{position:d,leaf:h}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:h&&h.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let g=[];for(let d=0;d0&&c{d=d.concat(S.text.substring(h,h+_))}}),d}getLength(){return this.root.charCount()}every(c,g,d){d||(d=this.root.charCount());let h={goSubtree:!0,done:!1,leaf(_,S,R){c(R,_,S)||(this.done=!0)}};return this.walk(g,d-g,h),!h.done}edit(c,g,d){if(this.root.charCount()===0)return pe.assert(g===0),d!==void 0?(this.load(zkr.linesFromText(d).lines),this):void 0;{let h;if(this.checkEdits){let R=this.getText(0,this.root.charCount());h=R.slice(0,c)+d+R.slice(c+g)}let _=new pOs,S=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,g=0,S=!0}else if(g>0){let R=c+g,{zeroBasedColumn:T,lineText:W}=this.positionToColumnAndLineText(R);T===0&&(g+=W.length,d=d?d+W:W)}if(this.root.walk(c,g,_),_.insertLines(d,S),this.checkEdits){let R=_.lineIndex.getText(0,_.lineIndex.getLength());pe.assert(h===R,"buffer edit mismatch")}return _.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[h]=_:d.pop(),{lines:d,lineMap:g}}},use=class qkr{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,g,d,h,_){return d.pre&&d.pre(c,g,this.children[h],this,_),d.goSubtree?(this.children[h].walk(c,g,d),d.post&&d.post(c,g,this.children[h],this,_)):d.goSubtree=!0,d.done}skipChild(c,g,d,h,_){h.pre&&!h.done&&(h.pre(c,g,this.children[d],this,_),h.goSubtree=!0)}walk(c,g,d){if(this.children.length===0)return;let h=0,_=this.children[h].charCount(),S=c;for(;S>=_;)this.skipChild(S,g,h,d,0),S-=_,h++,_=this.children[h].charCount();if(S+g<=_){if(this.execWalk(S,g,d,h,2))return}else{if(this.execWalk(S,_-S,d,h,1))return;let R=g-(_-S);for(h++,_=this.children[h].charCount();R>_;){if(this.execWalk(0,_,d,h,3))return;R-=_,h++,_=this.children[h].charCount()}if(R>0&&this.execWalk(0,R,d,h,4))return}if(d.pre){let R=this.children.length;if(hg)return _.isLeaf()?{oneBasedLine:c,zeroBasedColumn:g,lineText:_.text}:_.charOffsetToLineInfo(c,g);g-=_.charCount(),c+=_.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let h=pe.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:h.charCount(),lineText:void 0}}lineNumberToInfo(c,g){for(let d of this.children){let h=d.lineCount();if(h>=c)return d.isLeaf()?{position:g,leaf:d}:d.lineNumberToInfo(c,g);c-=h,g+=d.charCount()}return{position:g,leaf:void 0}}splitAfter(c){let g,d=this.children.length;c++;let h=c;if(c=0;ee--)T[ee].children.length===0&&T.pop()}S&&T.push(S),this.updateCounts();for(let V=0;V{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:h,reject:_})});return this.installer.send(g),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,g,d){let h=m4t(c,g,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${j3(h)}`),this.activeRequestCount0?this.activeRequestCount--:pe.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let h=this.requestQueue.dequeue();if(this.requestMap.get(h.projectName)===h){this.requestMap.delete(h.projectName),this.scheduleRequest(h);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${h.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case n1e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${j3(c)}`),this.installer.send(c)},KDi.requestDelayMillis,`${c.projectName}::${c.kind}`)}};mfn.requestDelayMillis=100;var Cfn=mfn,_fn={};o(_fn,{ActionInvalidate:()=>BVe,ActionPackageInstalled:()=>wVe,ActionSet:()=>vVe,ActionWatchTypingLocations:()=>n1e,Arguments:()=>crt,AutoImportProviderProject:()=>P4t,AuxiliaryProject:()=>L4t,CharRangeSection:()=>gJt,CloseFileWatcherEvent:()=>Est,CommandNames:()=>sfn,ConfigFileDiagEvent:()=>mst,ConfiguredProject:()=>W4t,ConfiguredProjectLoadKind:()=>X4t,CreateDirectoryWatcherEvent:()=>bst,CreateFileWatcherEvent:()=>yst,Errors:()=>QF,EventBeginInstallTypes:()=>ort,EventEndInstallTypes:()=>art,EventInitializationFailed:()=>S5t,EventTypesRegistry:()=>srt,ExternalProject:()=>Ast,GcTimer:()=>v4t,InferredProject:()=>Z4t,LargeFileReferencedEvent:()=>hst,LineIndex:()=>a2e,LineLeaf:()=>cWe,LineNode:()=>use,LogLevel:()=>I4t,Msg:()=>h4t,OpenFileInfoTelemetryEvent:()=>O4t,Project:()=>zz,ProjectInfoTelemetryEvent:()=>_st,ProjectKind:()=>fpe,ProjectLanguageServiceStateEvent:()=>Cst,ProjectLoadingFinishEvent:()=>Ist,ProjectLoadingStartEvent:()=>fst,ProjectService:()=>tJt,ProjectsUpdatedInBackgroundEvent:()=>sWe,ScriptInfo:()=>R4t,ScriptVersionCache:()=>Fst,Session:()=>dfn,TextStorage:()=>T4t,ThrottledOperations:()=>S4t,TypingsInstallerAdapter:()=>Cfn,allFilesAreJsOrDts:()=>x4t,allRootFilesAreJsOrDts:()=>k4t,asNormalizedPath:()=>Dpn,convertCompilerOptions:()=>oWe,convertFormatOptions:()=>ase,convertScriptKindName:()=>vst,convertTypeAcquisition:()=>H4t,convertUserPreferences:()=>Y4t,convertWatchOptions:()=>s2e,countEachFileTypes:()=>t2e,createInstallTypingsRequest:()=>m4t,createModuleSpecifierCache:()=>iJt,createNormalizedPathMap:()=>kpn,createPackageJsonCache:()=>sJt,createSortedArray:()=>E4t,emptyArray:()=>zm,findArgument:()=>Dnn,formatDiagnosticToProtocol:()=>o2e,formatMessage:()=>oJt,getBaseConfigFileName:()=>gst,getDetailWatchInfo:()=>Rst,getLocationInNewDocument:()=>uJt,hasArgument:()=>Nnn,hasNoTypeScriptSource:()=>G4t,indent:()=>Wde,isBackgroundProject:()=>n2e,isConfigFile:()=>rJt,isConfiguredProject:()=>s9,isDynamicFileName:()=>ppe,isExternalProject:()=>r2e,isInferredProject:()=>ose,isInferredProjectName:()=>C4t,isProjectDeferredClose:()=>i2e,makeAutoImportProviderProjectName:()=>y4t,makeAuxiliaryProjectName:()=>b4t,makeInferredProjectName:()=>_4t,maxFileSize:()=>pst,maxProgramSizeForNonTsFiles:()=>dst,normalizedPathToPath:()=>sse,nowString:()=>knn,nullCancellationToken:()=>rfn,nullTypingsInstaller:()=>aWe,protocol:()=>B4t,scriptInfoIsContainedByBackgroundProject:()=>N4t,scriptInfoIsContainedByDeferredClosedProject:()=>D4t,stringifyIndented:()=>j3,toEvent:()=>aJt,toNormalizedPath:()=>op,tryConvertScriptKindName:()=>Sst,typingsInstaller:()=>f4t,updateProjectIfDirty:()=>_v}),typeof console<"u"&&(pe.loggingHost={log(s,c){switch(s){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return MDi},set exports(e){MDi=e,typeof UEt<"u"&&UEt.exports&&(UEt.exports=e)}})});var Exr=H((fZu,_xi)=>{"use strict";_xi.exports=function(t,r){r===!0&&(r=0);var n="";if(typeof t=="string")try{n=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(n=t.protocol);var a=n.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var bxi=H((IZu,yxi)=>{"use strict";var Bpc=Exr();function wpc(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=Bpc(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}yxi.exports=wpc});var vxi=H((hZu,Sxi)=>{"use strict";var Tpc=bxi();function Rpc(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var Npc=Rpc(Tpc),Dpc="text/plain",kpc="us-ascii",Exi=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),xpc=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===kpc)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length>0||f&&f!==Dpc)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`};function Gpc(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return xpc(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let l=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,A=0,f="";for(;;){let C=l.exec(a.pathname);if(!C)break;let b=C[0],E=C.index,N=a.pathname.slice(A,E);f+=N.replace(/\/{2,}/g,"/"),f+=b,A=E+b.length}let I=a.pathname.slice(A,a.pathname.length);f+=I.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let l=a.pathname.split("/"),A=l[l.length-1];Exi(A,t.removeDirectoryIndex)&&(l=l.slice(0,-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])Exi(l,t.removeQueryParameters)&&a.searchParams.delete(l);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var Sxr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,n=o=>{let l=new Error(o);throw l.subject_url=e,l};(typeof e!="string"||!e.trim())&&n("Invalid url."),e.length>Sxr.MAX_INPUT_LENGTH&&n("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=Gpc(e,t));let a=Npc.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):n("URL parsing failed.")}return a};Sxr.MAX_INPUT_LENGTH=2048;Sxi.exports=Sxr});var Txi=H((mZu,wxi)=>{"use strict";var Fpc=Exr();function Bxi(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=Fpc(e);if(e=e.substring(e.indexOf("://")+3),Bxi(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var Zpc=vxi(),Rxi=Txi();function Lpc(e){var t=Zpc(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),Rxi(t.protocols)||t.protocols.length===0&&Rxi(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}Nxi.exports=Lpc});var xxi=H((_Zu,kxi)=>{"use strict";var Vpc=Dxi();function vxr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=Vpc(e),n=r.resource.split("."),a=null;switch(r.toString=function(Q){return vxr.stringify(this,Q)},r.source=n.length>2?n.slice(1-n.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=n[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var l=a.indexOf("-",2),A=a.indexOf("blob",2),f=a.indexOf("tree",2),I=a.indexOf("commit",2),C=a.indexOf("src",2),b=a.indexOf("raw",2),E=a.indexOf("edit",2);o=l>0?l-1:A>0?A-1:f>0?f-1:I>0?I-1:C>0?C-1:b>0?b-1:E>0?E-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],I&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var N=a.length>o&&a[o+1]==="-"?o+1:o;a.length>N+2&&["raw","src","blob","tree","edit"].indexOf(a[N+1])>=0&&(r.filepathtype=a[N+1],r.ref=a[N+2],a.length>N+3&&(r.filepath=a.slice(N+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var B=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,F=B.exec(r.pathname);return F!=null&&(r.source="bitbucket-server",F[1]==="users"?r.owner="~"+F[2]:r.owner=F[2],r.organization=r.owner,r.name=F[3],a=F[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}vxr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",n=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+n+"@"+e.resource+r+"/"+e.full_name+a:n+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+n+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?Ppc(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+Wpc(e)+a;default:return e.href}};function Ppc(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function Wpc(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}kxi.exports=vxr});var Fxi=H(wxr=>{"use strict";Object.defineProperty(wxr,"__esModule",{value:!0});wxr.tryParseGitURL=Mpc;function Bxr(e,t,r){let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)}function Gxi(e){try{return new URL(e)}catch{return}}function Opc(e){let t=Bxr(e,"@","#"),r=Bxr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),Bxr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function Mpc(e){return Gxi(e)||Gxi(Opc(e))}});var Zxi=H(Txr=>{"use strict";Object.defineProperty(Txr,"__esModule",{value:!0});Txr.normalizeRepoUrl=Ypc;var Hpc=Fxi();function Ypc(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,Hpc.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var o1t=H(Xk=>{"use strict";Object.defineProperty(Xk,"__esModule",{value:!0});Xk.TreeishProtocols=Xk.normalizeRepoUrl=void 0;Xk.isGitUrl=Upc;Xk.splitRepoUrl=s1t;Xk.normalizeLocator=Kpc;Xk.validateRepoUrl=Dxr;Xk.lsRemote=Pxi;Xk.resolveUrl=jpc;Xk.clone=zpc;Xk.fetchRoot=Wxi;Xk.fetchBase=Oxi;Xk.fetchChangedFiles=Mxi;Xk.fetchChangedWorkspaces=qpc;var Nxr=(Pa(),vi(Va)),Ey=Sn(),qZ=ro(),i1t=($c(),vi(rg)),Qpc=kW(),Xpc=Nxr.__importDefault(xxi()),AUe=Nxr.__importDefault(wt("querystring")),Lxi=Nxr.__importDefault(UC()),dUe=Zxi();Object.defineProperty(Xk,"normalizeRepoUrl",{enumerable:!0,get:function(){return dUe.normalizeRepoUrl}});function Vxi(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var Jpc=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],_O;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(_O||(Xk.TreeishProtocols=_O={}));function Upc(e){return e?Jpc.some(t=>!!e.match(t)):!1}function s1t(e){e=(0,dUe.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:_O.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),n=e.slice(t+1);if(n.match(/^[a-z]+=/)){let a=AUe.default.parse(n);for(let[f,I]of Object.entries(a))if(typeof I!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(_O).find(f=>Object.hasOwn(a,f)),[l,A]=typeof o<"u"?[o,a[o]]:[_O.Head,"HEAD"];for(let f of Object.values(_O))delete a[f];return{repo:r,treeish:{protocol:l,request:A},extra:a}}else{let a=n.indexOf(":"),[o,l]=a===-1?[null,n]:[n.slice(0,a),n.slice(a+1)];return{repo:r,treeish:{protocol:o,request:l},extra:{}}}}function Kpc(e){return Ey.structUtils.makeLocator(e,(0,dUe.normalizeRepoUrl)(e.reference))}function Dxr(e,{configuration:t}){let{repo:r}=s1t(e),n=(0,dUe.normalizeRepoUrl)(r,{git:!0});if(!Ey.httpUtils.getNetworkSettings(`https://${(0,Xpc.default)(n).resource}`,{configuration:t}).enableNetwork)throw new Ey.ReportError(Ey.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because of your configuration settings`);let o=Ey.miscUtils.buildIgnorePattern(t.get("approvedGitRepositories"));if(o===null||!n.match(o))throw new Ey.ReportError(Ey.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because it doesn't match any of the patterns in 'approvedGitRepositories'`);return n}async function Pxi(e,t){let r=Dxr(e,{configuration:t}),n=await Rxr("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:Vxi()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,l;for(;(l=o.exec(n.stdout))!==null;)a.set(l[2],l[1]);return a}async function jpc(e,t){let{repo:r,treeish:{protocol:n,request:a},extra:o}=s1t(e),l=await Pxi(r,t),A=(I,C)=>{switch(I){case _O.Commit:{if(!C.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return AUe.default.stringify({...o,commit:C})}case _O.Head:{let b=l.get(C==="HEAD"?C:`refs/heads/${C}`);if(typeof b>"u")throw new Error(`Unknown head ("${C}")`);return AUe.default.stringify({...o,commit:b})}case _O.Tag:{let b=l.get(`refs/tags/${C}`);if(typeof b>"u")throw new Error(`Unknown tag ("${C}")`);return AUe.default.stringify({...o,commit:b})}case _O.Semver:{let b=Ey.semverUtils.validRange(C);if(!b)throw new Error(`Invalid range ("${C}")`);let E=new Map([...l.entries()].filter(([B])=>B.startsWith("refs/tags/")).map(([B,F])=>[Lxi.default.parse(B.slice(10)),F]).filter(B=>B[0]!==null)),N=Lxi.default.maxSatisfying([...E.keys()],b);if(N===null)throw new Error(`No matching range ("${C}")`);return AUe.default.stringify({...o,commit:E.get(N)})}case null:{let b;if((b=f(_O.Commit,C))!==null||(b=f(_O.Tag,C))!==null||(b=f(_O.Head,C))!==null)return b;throw C.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${I}")`)}},f=(I,C)=>{try{return A(I,C)}catch{return null}};return(0,dUe.normalizeRepoUrl)(`${r}#${A(n,a)}`)}async function zpc(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:n,request:a}}=s1t(e);if(n!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=Dxr(r,{configuration:t}),l=await qZ.xfs.mktempPromise(),A={cwd:l,env:Vxi()};return await Rxr("cloning the repository",["clone","-c","core.autocrlf=false",o,qZ.npath.fromPortablePath(l)],A,{configuration:t,normalizedRepoUrl:o}),await Rxr("switching branch",["checkout",`${a}`],A,{configuration:t,normalizedRepoUrl:o}),l})}async function Wxi(e){let t,r=e;do{if(t=r,await qZ.xfs.existsPromise(qZ.ppath.join(t,".git")))return t;r=qZ.ppath.dirname(t)}while(r!==t);return null}async function Oxi(e,{baseRefs:t}){if(t.length===0)throw new i1t.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let A of t){let{code:f}=await Ey.execUtils.execvp("git",["merge-base",A,"HEAD"],{cwd:e});f===0&&r.push(A)}if(r.length===0)throw new i1t.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:n}=await Ey.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=n.trim(),{stdout:o}=await Ey.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),l=o.trim();return{hash:a,title:l}}async function Mxi(e,{base:t,project:r}){let n=Ey.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await Ey.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>qZ.ppath.resolve(e,qZ.npath.toPortablePath(I))),{stdout:l}=await Ey.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),A=l.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>qZ.ppath.resolve(e,qZ.npath.toPortablePath(I))),f=[...new Set([...o,...A].sort())];return n?f.filter(I=>!qZ.ppath.relative(r.cwd,I).match(n)):f}async function qpc({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new i1t.UsageError("This command can only be run from within a Yarn project");let r=[qZ.ppath.resolve(t.cwd,qZ.Filename.lockfile),qZ.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),qZ.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),qZ.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(l=>l.populateYarnPaths,t,l=>{l!=null&&r.push(l)});let n=await Wxi(t.configuration.projectCwd);if(n==null)throw new i1t.UsageError("This command can only be run on Git repositories");let a=await Oxi(n,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await Mxi(n,{base:a.hash,project:t});return new Set(Ey.miscUtils.mapAndFilter(o,l=>{let A=t.tryWorkspaceByFilePath(l);return A===null||r.some(f=>l.startsWith(f))?Ey.miscUtils.mapAndFilter.skip:A}))}async function Rxr(e,t,r,{configuration:n,normalizedRepoUrl:a}){try{return await Ey.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof Ey.execUtils.ExecError))throw o;let l=o.reportExtra,A=o.stderr.toString();throw new Ey.ReportError(Ey.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(Ey.MessageName.EXCEPTION,` ${Ey.formatUtils.prettyField(n,{label:"Repository URL",value:Ey.formatUtils.tuple(Ey.formatUtils.Type.URL,a)})}`);for(let I of A.matchAll(/^(.+?): (.*)$/gm)){let[,C,b]=I;C=C.toLowerCase();let E=C==="error"?"Error":`${(0,Qpc.capitalize)(C)} Error`;f.reportError(Ey.MessageName.EXCEPTION,` ${Ey.formatUtils.prettyField(n,{label:E,value:Ey.formatUtils.tuple(Ey.formatUtils.Type.NO_HINT,b)})}`)}l?.(f)})}}});var Hxi=H(c1t=>{"use strict";Object.defineProperty(c1t,"__esModule",{value:!0});c1t.GitFetcher=void 0;var $pc=(Pa(),vi(Va)),eDe=Sn(),a1t=ro(),kxr=$pc.__importStar(o1t()),xxr=class{supports(t,r){return kxr.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,n);let o={...r,checksums:a},l=await this.downloadHosted(t,o);if(l!==null)return l;let[A,f,I]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${eDe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:A,releaseFs:f,prefixPath:eDe.structUtils.getIdentVendorPath(t),checksum:I}}async downloadHosted(t,r){return r.project.configuration.reduceHook(n=>n.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let n=kxr.splitRepoUrl(t.reference),a=await kxr.clone(t.reference,r.project.configuration),o=a1t.ppath.resolve(a,n.extra.cwd??a1t.PortablePath.dot),l=a1t.ppath.join(o,"package.tgz");await eDe.scriptUtils.prepareExternalProject(o,l,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:t});let A=await a1t.xfs.readFilePromise(l);return await eDe.miscUtils.releaseAfterUseAsync(async()=>await eDe.tgzUtils.convertToZip(A,{configuration:r.project.configuration,prefixPath:eDe.structUtils.getIdentVendorPath(t),stripComponents:1}))}};c1t.GitFetcher=xxr});var Qxi=H(l1t=>{"use strict";Object.defineProperty(l1t,"__esModule",{value:!0});l1t.GitResolver=void 0;var efc=(Pa(),vi(Va)),Yxi=Sn(),tfc=Sn(),rfc=Sn(),tDe=efc.__importStar(o1t()),Gxr=class{supportsDescriptor(t,r){return tDe.isGitUrl(t.range)}supportsLocator(t,r){return tDe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=await tDe.resolveUrl(t.range,n.project.configuration);return[Yxi.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,n,a){let o=tDe.splitRepoUrl(t.range);return{locators:n.filter(A=>{if(A.identHash!==t.identHash)return!1;let f=tDe.splitRepoUrl(A.reference);return!(o.repo!==f.repo||o.treeish.protocol===tDe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Yxi.miscUtils.releaseAfterUseAsync(async()=>await rfc.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:tfc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};l1t.GitResolver=Gxr});var rDe=H(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.GitResolver=Mee.GitFetcher=Mee.gitUtils=void 0;var nfc=(Pa(),vi(Va)),u1t=Sn(),Xxi=Hxi();Object.defineProperty(Mee,"GitFetcher",{enumerable:!0,get:function(){return Xxi.GitFetcher}});var Jxi=Qxi();Object.defineProperty(Mee,"GitResolver",{enumerable:!0,get:function(){return Jxi.GitResolver}});var ifc=nfc.__importStar(o1t());Mee.gitUtils=ifc;var sfc={configuration:{approvedGitRepositories:{description:"Array of git repository URL glob patterns that are allowed to be fetched",type:u1t.SettingsType.STRING,default:[],isArray:!0},changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:u1t.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:u1t.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:u1t.SettingsType.NUMBER,default:2}},fetchers:[Xxi.GitFetcher],resolvers:[Jxi.GitResolver]};Mee.default=sfc});var IUe=H(GG=>{"use strict";Object.defineProperty(GG,"__esModule",{value:!0});GG.Decision=void 0;GG.validateReleaseDecision=fUe;GG.resolveVersionFiles=lfc;GG.clearVersionFiles=ufc;GG.updateVersionFiles=gfc;GG.openVersionFile=Afc;GG.requireMoreDecisions=dfc;GG.getUndecidedWorkspaces=Uxi;GG.getUndecidedDependentWorkspaces=Kxi;GG.suggestStrategy=pfc;GG.applyStrategy=Zxr;GG.applyReleases=ffc;GG.applyPrerelease=jxi;var ofc=(Pa(),vi(Va)),PE=Sn(),Xv=ro(),pCe=TW(),Fxr=rDe(),pUe=($c(),vi(rg)),afc=kW(),Hee=ofc.__importDefault(UC()),cfc=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,aH;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PREMAJOR="premajor",e.PREMINOR="preminor",e.PREPATCH="prepatch",e.PRERELEASE="prerelease"})(aH||(GG.Decision=aH={}));function fUe(e){let t=Hee.default.valid(e);return t||PE.miscUtils.validateEnum((0,afc.omit)(aH,"UNDECIDED"),e)}async function lfc(e,{prerelease:t=null}={}){let r=new Map,n=e.configuration.get("deferredVersionFolder");if(!Xv.xfs.existsSync(n))return r;let a=await Xv.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=Xv.ppath.join(n,o),A=await Xv.xfs.readFilePromise(l,"utf8"),f=(0,pCe.parseSyml)(A);for(let[I,C]of Object.entries(f.releases||{})){if(C===aH.DECLINE)continue;let b=PE.structUtils.parseIdent(I),E=e.tryWorkspaceByIdent(b);if(E===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${Xv.ppath.basename(l)} references ${I})`);if(E.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${PE.structUtils.prettyLocator(e.configuration,E.anchoredLocator)})`);let N=E.manifest.raw.stableVersion??E.manifest.version,B=r.get(E),F=aH.PRERELEASE===C?Zxr(E.manifest.version,fUe(C)):Zxr(N,fUe(C));if(F===null)throw new Error(`Assertion failed: Expected ${N} to support being bumped via strategy ${C}`);let Q=typeof B<"u"?Hee.default.gt(F,B)?F:B:F;r.set(E,Q)}}return t&&(r=new Map([...r].map(([o,l])=>[o,jxi(l,{current:o.manifest.version,prerelease:t})]))),r}async function ufc(e){let t=e.configuration.get("deferredVersionFolder");Xv.xfs.existsSync(t)&&await Xv.xfs.removePromise(t)}async function gfc(e,t){let r=new Set(t),n=e.configuration.get("deferredVersionFolder");if(!Xv.xfs.existsSync(n))return;let a=await Xv.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=Xv.ppath.join(n,o),A=await Xv.xfs.readFilePromise(l,"utf8"),f=(0,pCe.parseSyml)(A),I=f?.releases;if(I){for(let C of Object.keys(I)){let b=PE.structUtils.parseIdent(C),E=e.tryWorkspaceByIdent(b);(E===null||r.has(E))&&delete f.releases[C]}Object.keys(f.releases).length>0?await Xv.xfs.changeFilePromise(l,(0,pCe.stringifySyml)(new pCe.stringifySyml.PreserveOrdering(f))):await Xv.xfs.unlinkPromise(l)}}}async function Afc(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new pUe.UsageError("This command can only be run from within a Yarn project");let n=await Fxr.gitUtils.fetchRoot(r.projectCwd),a=n!==null?await Fxr.gitUtils.fetchBase(n,{baseRefs:r.get("changesetBaseRefs")}):null,o=n!==null?await Fxr.gitUtils.fetchChangedFiles(n,{base:a.hash,project:e}):[],l=r.get("deferredVersionFolder"),A=o.filter(N=>Xv.ppath.contains(l,N)!==null);if(A.length>1)throw new pUe.UsageError(`Your current branch contains multiple versioning files; this isn't supported: +`,_++};this.projectService.externalProjects.forEach(S),this.projectService.configuredProjects.forEach(S),this.projectService.inferredProjects.forEach(S)}}this.logger.msg(h,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${j3(c)}`);return}this.writeMessage(c)}writeMessage(c){let g=uJt(c,this.logger,this.byteLength,this.host.newLine);this.host.write(g)}event(c,g){this.send(gJt(g,c))}doOutput(c,g,d,h,_,S){let R={seq:0,type:"response",command:g,request_seq:d,success:h,performanceData:_&&yfn(_)};if(h){let T;if(Ki(c))R.body=c,T=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:W,...V}=c;R.body=V,T=W}else R.body=c;else R.body=c;T&&(R.metadata=T)}else pe.assert(c===void 0);S&&(R.message=S),this.send(R)}semanticCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"semanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let S=ufn(g,c)?zm:g.getLanguageService().getSemanticDiagnostics(c).filter(R=>!!R.file);this.sendDiagnosticsEvent(c,g,S,"semanticDiag",_),(h=ki)==null||h.pop()}syntacticCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"syntacticCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag",_),(h=ki)==null||h.pop()}suggestionCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"suggestionCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag",_),(h=ki)==null||h.pop()}regionSemanticCheck(c,g,d){var h,_,S;let R=Fg();(h=ki)==null||h.push(ki.Phase.Session,"regionSemanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let T;if(!this.shouldDoRegionCheck(c)||!(T=g.getLanguageService().getRegionSemanticDiagnostics(c,d))){(_=ki)==null||_.pop();return}this.sendDiagnosticsEvent(c,g,T.diagnostics,"regionSemanticDiag",R,T.spans),(S=ki)==null||S.pop()}shouldDoRegionCheck(c){var g;let d=(g=this.projectService.getScriptInfoForNormalizedPath(c))==null?void 0:g.textStorage.getLineInfo().getLineCount();return!!(d&&d>=this.regionDiagLineCountThreshold)}sendDiagnosticsEvent(c,g,d,h,_,S){try{let R=pe.checkDefined(g.getScriptInfo(c)),T=Fg()-_,W={file:c,diagnostics:d.map(V=>gfn(c,g,V)),spans:S?.map(V=>kN(V,R))};this.event(W,h),this.addDiagnosticsPerformanceData(c,h,T)}catch(R){this.logError(R,h)}}updateErrorCheck(c,g,d,h=!0){if(g.length===0)return;pe.assert(!this.suppressDiagnosticEvents);let _=this.changeSeq,S=Math.min(d,200),R=0,T=()=>{if(R++,g.length>R)return c.delay("checkOne",S,V)},W=(M,ee)=>{if(this.semanticCheck(M,ee),this.changeSeq===_){if(this.getPreferences(M).disableSuggestions)return T();c.immediate("suggestionCheck",()=>{this.suggestionCheck(M,ee),T()})}},V=()=>{if(this.changeSeq!==_)return;let M,ee=g[R];if(Xs(ee)?ee=this.toPendingErrorCheck(ee):"ranges"in ee&&(M=ee.ranges,ee=this.toPendingErrorCheck(ee.file)),!ee)return T();let{fileName:re,project:ge}=ee;if(_v(ge),!!ge.containsFile(re,h)&&(this.syntacticCheck(re,ge),this.changeSeq===_)){if(ge.projectService.serverMode!==0)return T();if(M)return c.immediate("regionSemanticCheck",()=>{let Ie=this.projectService.getScriptInfoForNormalizedPath(re);Ie&&this.regionSemanticCheck(re,ge,M.map(_e=>this.getRange({file:re,..._e},Ie))),this.changeSeq===_&&c.immediate("semanticCheck",()=>W(re,ge))});c.immediate("semanticCheck",()=>W(re,ge))}};g.length>R&&this.changeSeq===_&&c.delay("checkOne",d,V)}cleanProjects(c,g){if(g){this.logger.info(`cleaning ${c}`);for(let d of g)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",Do(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(g,c)}getEncodedSemanticClassifications(c){let{file:g,project:d}=this.getFileAndProject(c),h=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(g,c,h)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let g=this.getProject(c.projectFileName),d=op(c.file);return{configFile:g&&g.hasConfigFile(d)?d:void 0,project:g}}getConfigFileDiagnostics(c,g,d){let h=g.getAllProjectErrors(),_=g.getLanguageService().getCompilerOptionsDiagnostics(),S=Me(Nn(h,_),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):At(S,R=>a2e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(g=>({message:wN(g.messageText,this.host.newLine),start:g.start,length:g.length,category:_b(g),code:g.code,source:g.source,startLocation:g.file&&lse(Ra(g.file,g.start)),endLocation:g.file&&lse(Ra(g.file,g.start+g.length)),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,relatedInformation:At(g.relatedInformation,xst)}))}getCompilerOptionsDiagnostics(c){let g=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Me(g.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,g){return c.map(d=>({message:wN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:_b(d),code:d.code,source:d.source,startLocation:g&&g.positionToLineOffset(d.start),endLocation:g&&g.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:At(d.relatedInformation,xst)}))}getDiagnosticsWorker(c,g,d,h){let{project:_,file:S}=this.getFileAndProject(c);if(g&&ufn(_,S))return zm;let R=_.getScriptInfoForNormalizedPath(S),T=d(_,S);return h?this.convertToDiagnosticsWithLinePosition(T,R):T.map(W=>gfn(S,_,W))}getDefinition(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapDefinitionInfoLocations(h.getLanguageService().getDefinitionAtPosition(d,_)||zm,h);return g?this.mapDefinitionInfo(S,h):S.map(KEt.mapToOriginalLocation)}mapDefinitionInfoLocations(c,g){return c.map(d=>{let h=mfn(d,g);return h?{...h,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=pe.checkDefined(h.getScriptInfo(d)),R=h.getLanguageService().getDefinitionAndBoundSpan(d,_);if(!R||!R.definitions)return{definitions:zm,textSpan:void 0};let T=this.mapDefinitionInfoLocations(R.definitions,h),{textSpan:W}=R;return g?{definitions:this.mapDefinitionInfo(T,h),textSpan:kN(W,S)}:{definitions:T.map(KEt.mapToOriginalLocation),textSpan:W}}findSourceDefinition(c){var g;let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDefinitionAtPosition(d,_),R=this.mapDefinitionInfoLocations(S||zm,h).slice();if(this.projectService.serverMode===0&&(!jt(R,re=>op(re.fileName)!==d&&!re.isAmbient)||jt(R,re=>!!re.failedAliasResolution))){let re=oo(Ee=>Ee.textSpan.start,Jrt(this.host.useCaseSensitiveFileNames));R?.forEach(Ee=>re.add(Ee));let ge=h.getNoDtsResolutionProject(d),Ie=ge.getLanguageService(),_e=(g=Ie.getDefinitionAtPosition(d,_,!0,!1))==null?void 0:g.filter(Ee=>op(Ee.fileName)!==d);if(jt(_e))for(let Ee of _e){if(Ee.unverified){let Ne=M(Ee,h.getLanguageService().getProgram(),Ie.getProgram());if(jt(Ne)){for(let Te of Ne)re.add(Te);continue}}re.add(Ee)}else{let Ee=R.filter(Ne=>op(Ne.fileName)!==d&&Ne.isAmbient);for(let Ne of jt(Ee)?Ee:V()){let Te=W(Ne.fileName,d,ge);if(!Te)continue;let Ze=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Te,ge.currentDirectory,ge.directoryStructureHost,!1);if(!Ze)continue;ge.containsScriptInfo(Ze)||(ge.addRoot(Ze),ge.updateGraph());let We=Ie.getProgram(),Ue=pe.checkDefined(We.getSourceFile(Te));for(let $e of ee(Ne.name,Ue,We))re.add($e)}}R=Do(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,h);function W(re,ge,Ie){var _e,Ee,Ne;let Te=HAe(re);if(Te&&re.lastIndexOf(Vx)===Te.topLevelNodeModulesIndex){let Ze=re.substring(0,Te.packageRootIndex),We=(_e=h.getModuleResolutionCache())==null?void 0:_e.getPackageJsonInfoCache(),Ue=h.getCompilationSettings(),$e=bde(Xc(Ze,h.getCurrentDirectory()),yde(We,h,Ue));if(!$e)return;let Ye=pet($e,{moduleResolution:2},h,h.getModuleResolutionCache()),Tt=re.substring(Te.topLevelPackageNameIndex+1,Te.packageRootIndex),ot=Ede(DEe(Tt)),Qe=h.toPath(re);if(Ye&&jt(Ye,mt=>h.toPath(mt)===Qe))return(Ee=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(ot,ge).resolvedModule)==null?void 0:Ee.resolvedFileName;{let mt=re.substring(Te.packageRootIndex+1),ht=`${ot}/${s0(mt)}`;return(Ne=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(ht,ge).resolvedModule)==null?void 0:Ne.resolvedFileName}}}function V(){let re=h.getLanguageService(),ge=re.getProgram(),Ie=Lb(ge.getSourceFile(d),_);return(mA(Ie)||Ir(Ie))&&_p(Ie.parent)&&qZe(Ie,_e=>{var Ee;if(_e===Ie)return;let Ne=(Ee=re.getDefinitionAtPosition(d,_e.getStart(),!0,!1))==null?void 0:Ee.filter(Te=>op(Te.fileName)!==d&&Te.isAmbient).map(Te=>({fileName:Te.fileName,name:c2(Ie)}));if(jt(Ne))return Ne})||zm}function M(re,ge,Ie){var _e;let Ee=Ie.getSourceFile(re.fileName);if(!Ee)return;let Ne=Lb(ge.getSourceFile(d),_),Te=ge.getTypeChecker().getSymbolAtLocation(Ne),Ze=Te&&Cp(Te,277);if(!Ze)return;let We=((_e=Ze.propertyName)==null?void 0:_e.text)||Ze.name.text;return ee(We,Ee,Ie)}function ee(re,ge,Ie){let _e=Kp.Core.getTopMostDeclarationNamesInFile(re,ge);return Xt(_e,Ee=>{let Ne=Ie.getTypeChecker().getSymbolAtLocation(Ee),Te=T7(Ee);if(Ne&&Te)return ise.createDefinitionInfo(Te,Ie.getTypeChecker(),Ne,Te,!0)})}}getEmitOutput(c){let{file:g,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(g)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let h=d.getLanguageService().getEmitOutput(g);return c.richResponse?{...h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(h.diagnostics):h.diagnostics.map(_=>a2e(_,!0))}:h}mapJSDocTagInfo(c,g,d){return c?c.map(h=>{var _;return{...h,text:d?this.mapDisplayParts(h.text,g):(_=h.text)==null?void 0:_.map(S=>S.text).join("")}}):[]}mapDisplayParts(c,g){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,g)}):[]}mapSignatureHelpItems(c,g,d){return c.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,g),parameters:h.parameters.map(_=>({..._,documentation:this.mapDisplayParts(_.documentation,g)})),tags:this.mapJSDocTagInfo(h.tags,g,d)}))}mapDefinitionInfo(c,g){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,g),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(pe.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,g,d){let h=d.getLanguageService(),_=h.toLineColumnOffset(c,g.start),S=h.toLineColumnOffset(c,Rs(g));return{file:c,start:{line:_.line+1,offset:_.character+1},end:{line:S.line+1,offset:S.character+1}}}toFileSpanWithContext(c,g,d,h){let _=this.toFileSpan(c,g,h),S=d&&this.toFileSpan(c,d,h);return S?{..._,contextStart:S.start,contextEnd:S.end}:_}getTypeDefinition(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(g,h)||zm,d);return this.mapDefinitionInfo(_,d)}mapImplementationLocations(c,g){return c.map(d=>{let h=mfn(d,g);return h?{...h,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapImplementationLocations(h.getLanguageService().getImplementationAtPosition(d,_)||zm,h);return g?S.map(({fileName:R,textSpan:T,contextSpan:W})=>this.toFileSpanWithContext(R,T,W,h)):S.map(KEt.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?zm:this.getDiagnosticsWorker(c,!1,(d,h)=>d.getLanguageService().getSyntacticDiagnostics(h),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:g,project:d}=this.getConfigFileAndProject(c);return g?this.getConfigFileDiagnostics(g,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(h,_)=>h.getLanguageService().getSemanticDiagnostics(_).filter(S=>!!S.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?zm:this.getDiagnosticsWorker(c,!0,(d,h)=>d.getLanguageService().getSuggestionDiagnostics(h),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getJsxClosingTagAtPosition(g,h);return _===void 0?void 0:{newText:_.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getLinkedEditingRangeAtPosition(g,h),S=this.projectService.getScriptInfoForNormalizedPath(g);if(!(S===void 0||_===void 0))return SOs(_,S)}getDocumentHighlights(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDocumentHighlights(d,_,c.filesToSearch);return S?g?S.map(({fileName:R,highlightSpans:T})=>{let W=h.getScriptInfo(R);return{file:R,highlightSpans:T.map(({textSpan:V,kind:M,contextSpan:ee})=>({...dJt(V,ee,W),kind:M}))}}):S:zm}provideInlayHints(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);return d.getLanguageService().provideInlayHints(g,c,this.getPreferences(g)).map(S=>{let{position:R,displayParts:T}=S;return{...S,position:h.positionToLineOffset(R),displayParts:T?.map(({text:W,span:V,file:M})=>{if(V){pe.assertIsDefined(M,"Target file should be defined together with its span.");let ee=this.projectService.getScriptInfo(M);return{text:W,span:{start:ee.positionToLineOffset(V.start),end:ee.positionToLineOffset(V.start+V.length),file:M}}}else return{text:W}})}})}mapCode(c){var g;let d=this.getHostFormatOptions(),h=this.getHostPreferences(),{file:_,languageService:S}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(_),T=(g=c.mapping.focusLocations)==null?void 0:g.map(V=>V.map(M=>{let ee=R.lineOffsetToPosition(M.start.line,M.start.offset),re=R.lineOffsetToPosition(M.end.line,M.end.offset);return{start:ee,length:re-ee}})),W=S.mapCode(_,c.mapping.contents,T,d,h);return this.mapTextChangesToCodeEdits(W)}getCopilotRelatedInfo(){return{relatedFiles:[]}}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,c.needDefaultConfiguredProjectInfo,!1)}getProjectInfoWorker(c,g,d,h,_){let{project:S}=this.getFileAndProjectWorker(c,g);return _v(S),{configFileName:S.getProjectName(),languageServiceDisabled:!S.languageServiceEnabled,fileNames:d?S.getFileNames(!1,_):void 0,configuredProjectInfo:h?this.getDefaultConfiguredProjectInfo(c):void 0}}getDefaultConfiguredProjectInfo(c){var g;let d=this.projectService.getScriptInfo(c);if(!d)return;let h=this.projectService.findDefaultConfiguredProjectWorker(d,3);if(!h)return;let _,S;return h.seenProjects.forEach((R,T)=>{T!==h.defaultProject&&(R!==3?(_??(_=[])).push(op(T.getConfigFilePath())):(S??(S=[])).push(op(T.getConfigFilePath())))}),(g=h.seenConfigs)==null||g.forEach(R=>(_??(_=[])).push(R)),{notMatchedByConfig:_,notInProject:S,defaultProject:h.defaultProject&&op(h.defaultProject.getConfigFilePath())}}getRenameInfo(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.getPreferences(g);return d.getLanguageService().getRenameInfo(g,h,_)}getProjects(c,g,d){let h,_;if(c.projectFileName){let S=this.getProject(c.projectFileName);S&&(h=[S])}else{let S=g?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(S)g||this.projectService.ensureDefaultProjectForFile(S);else return d?zm:(this.projectService.logErrorForScriptInfoNotFound(c.file),QF.ThrowNoProject());h=S.containingProjects,_=this.projectService.getSymlinkedProjects(S)}return h=Me(h,S=>S.languageServiceEnabled&&!S.isOrphan()),!d&&(!h||!h.length)&&!_?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),QF.ThrowNoProject()):_?{projects:h,symLinkedProjects:_}:h}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return QF.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,g){let d=op(c.file),h=this.getPositionInFile(c,d),_=this.getProjects(c),S=this.getDefaultProject(c),R=this.getPreferences(d),T=this.mapRenameInfo(S.getLanguageService().getRenameInfo(d,h,R),pe.checkDefined(this.projectService.getScriptInfo(d)));if(!T.canRename)return g?{info:T,locs:[]}:[];let W=mOs(_,S,{fileName:c.file,pos:h},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return g?{info:T,locs:this.toSpanGroups(W)}:W}mapRenameInfo(c,g){if(c.canRename){let{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:W}=c;return{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:kN(W,g)}}else return c}toSpanGroups(c){let g=new Map;for(let{fileName:d,textSpan:h,contextSpan:_,originalContextSpan:S,originalTextSpan:R,originalFileName:T,...W}of c){let V=g.get(d);V||g.set(d,V={file:d,locs:[]});let M=pe.checkDefined(this.projectService.getScriptInfo(d));V.locs.push({...dJt(h,_,M),...W})}return Do(g.values())}getReferences(c,g){let d=op(c.file),h=this.getProjects(c),_=this.getPositionInFile(c,d),S=COs(h,this.getDefaultProject(c),{fileName:c.file,pos:_},this.host.useCaseSensitiveFileNames,this.logger);if(!g)return S;let R=this.getPreferences(d),T=this.getDefaultProject(c),W=T.getScriptInfoForNormalizedPath(d),V=T.getLanguageService().getQuickInfoAtPosition(d,_),M=V?k1e(V.displayParts):"",ee=V&&V.textSpan,re=ee?W.positionToLineOffset(ee.start).offset:0,ge=ee?W.getSnapshot().getText(ee.start,Rs(ee)):"";return{refs:er(S,_e=>_e.references.map(Ee=>Efn(this.projectService,Ee,R))),symbolName:ge,symbolStartOffset:re,symbolDisplayString:M}}getFileReferences(c,g){let d=this.getProjects(c),h=op(c.file),_=this.getPreferences(h),S={fileName:h,pos:0},R=AJt(d,this.getDefaultProject(c),S,S,ffn,V=>(this.logger.info(`Finding references to file ${h} in project ${V.getProjectName()}`),V.getLanguageService().getFileReferences(h))),T;if(Ki(R))T=R;else{T=[];let V=Gst(this.host.useCaseSensitiveFileNames);R.forEach(M=>{for(let ee of M)V.has(ee)||(T.push(ee),V.add(ee))})}return g?{refs:T.map(V=>Efn(this.projectService,V,_)),symbolName:`"${c.file}"`}:T}openClientFile(c,g,d,h){this.projectService.openClientFileWithNormalizedPath(c,g,d,!1,h)}getPosition(c,g){return c.position!==void 0?c.position:g.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(g);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:g,project:d}=this.getFileAndProject(c);return{file:g,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,g){let d=op(c),h=this.getProject(g)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:h}}getOutliningSpans(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getOutliningSpans(d);if(g){let S=this.projectService.getScriptInfoForNormalizedPath(d);return _.map(R=>({textSpan:kN(R.textSpan,S),hintSpan:kN(R.hintSpan,S),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return _}getTodoComments(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(g,c.descriptors)}getDocCommentTemplate(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getDocCommentTemplateAtPosition(g,h,this.getPreferences(g),this.getFormatOptions(g))}getSpanOfEnclosingComment(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.onlyMultiLine,_=this.getPositionInFile(c,g);return d.getSpanOfEnclosingComment(g,_,h)}getIndentation(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=c.options?cse(c.options):this.getFormatOptions(g),S=d.getIndentationAtPosition(g,h,_);return{position:h,indentation:S}}getBreakpointStatement(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getBreakpointStatementAtPosition(g,h)}getNameOrDottedNameSpan(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getNameOrDottedNameSpan(g,h,h)}isValidBraceCompletion(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.isValidBraceCompletionAtPosition(g,h,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPreferences(d),R=h.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,_),S.maximumHoverLength,c.verbosityLevel);if(!R)return;let T=!!S.displayPartsForJSDoc;if(g){let W=k1e(R.displayParts);return{kind:R.kind,kindModifiers:R.kindModifiers,start:_.positionToLineOffset(R.textSpan.start),end:_.positionToLineOffset(Rs(R.textSpan)),displayString:W,documentation:T?this.mapDisplayParts(R.documentation,h):k1e(R.documentation),tags:this.mapJSDocTagInfo(R.tags,h,T),canIncreaseVerbosityLevel:R.canIncreaseVerbosityLevel}}else return T?R:{...R,tags:this.mapJSDocTagInfo(R.tags,h,!1)}}getFormattingEditsForRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=h.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(g,_,S,this.getFormatOptions(g));if(R)return R.map(T=>this.convertTextChangeToCodeEdit(T,h))}getFormattingEditsForRangeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?cse(c.options):this.getFormatOptions(g);return d.getFormattingEditsForRange(g,c.position,c.endPosition,h)}getFormattingEditsForDocumentFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?cse(c.options):this.getFormatOptions(g);return d.getFormattingEditsForDocument(g,h)}getFormattingEditsAfterKeystrokeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?cse(c.options):this.getFormatOptions(g);return d.getFormattingEditsAfterKeystroke(g,c.position,c.key,h)}getFormattingEditsAfterKeystroke(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=this.getFormatOptions(g),R=d.getFormattingEditsAfterKeystroke(g,_,c.key,S);if(c.key===` +`&&(!R||R.length===0||fOs(R,_))){let{lineText:T,absolutePosition:W}=h.textStorage.getAbsolutePositionAndLineText(c.line);if(T&&T.search("\\S")<0){let V=d.getIndentationAtPosition(g,_,S),M=0,ee,re;for(ee=0,re=T.length;ee({start:h.positionToLineOffset(T.span.start),end:h.positionToLineOffset(Rs(T.span)),newText:T.newText?T.newText:""}))}getCompletions(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getCompletionsAtPosition(d,S,{...U4t(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},h.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(g==="completions-full")return R;let T=c.prefix||"",W=Xt(R.entries,M=>{if(R.isMemberCompletion||Ac(M.name.toLowerCase(),T.toLowerCase())){let ee=M.replacementSpan?kN(M.replacementSpan,_):void 0;return{...M,replacementSpan:ee,hasAction:M.hasAction||void 0,symbol:void 0}}});return g==="completions"?(R.metadata&&(W.metadata=R.metadata),W):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&kN(R.optionalReplacementSpan,_),entries:W}}getCompletionEntryDetails(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.projectService.getFormatCodeOptions(d),T=!!this.getPreferences(d).displayPartsForJSDoc,W=Xt(c.entryNames,V=>{let{name:M,source:ee,data:re}=typeof V=="string"?{name:V,source:void 0,data:void 0}:V;return h.getLanguageService().getCompletionEntryDetails(d,S,M,R,ee,this.getPreferences(d),re?Ma(re,ROs):void 0)});return g?T?W:W.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,h,!1)})):W.map(V=>({...V,codeActions:At(V.codeActions,M=>this.mapCodeAction(M)),documentation:this.mapDisplayParts(V.documentation,h),tags:this.mapJSDocTagInfo(V.tags,h,T)}))}getCompileOnSaveAffectedFileList(c){let g=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?hOs(d,h=>this.projectService.getScriptInfoForPath(h),g,(h,_)=>{if(!h.compileOnSaveEnabled||!h.languageServiceEnabled||h.isOrphan())return;let S=h.getCompilationSettings();if(!(S.noEmit||PC(_.fileName)&&!pOs(S)))return{projectFileName:h.getProjectName(),fileNames:h.getCompileOnSaveAffectedFileList(_),projectUsesOutFile:!!S.outFile}}):zm}emitFile(c){let{file:g,project:d}=this.getFileAndProject(c);if(d||QF.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let h=d.getScriptInfo(g),{emitSkipped:_,diagnostics:S}=d.emitFile(h,(R,T,W)=>this.host.writeFile(R,T,W));return c.richResponse?{emitSkipped:_,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):S.map(R=>a2e(R,!0))}:!_}getSignatureHelpItems(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getSignatureHelpItems(d,S,c),T=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&g){let W=R.applicableSpan;return{...R,applicableSpan:{start:_.positionToLineOffset(W.start),end:_.positionToLineOffset(W.start+W.length)},items:this.mapSignatureHelpItems(R.items,h,T)}}else return T||!R?R:{...R,items:R.items.map(W=>({...W,tags:this.mapJSDocTagInfo(W.tags,h,!1)}))}}toPendingErrorCheck(c){let g=op(c),d=this.projectService.tryGetDefaultProjectForFile(g);return d&&{fileName:g,project:d}}getDiagnostics(c,g,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,g)}change(c){let g=this.projectService.getScriptInfo(c.file);pe.assert(!!g),g.textStorage.switchToScriptVersionCache();let d=g.lineOffsetToPosition(c.line,c.offset),h=g.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(g,qr({span:{start:d,length:h-d},newText:c.insertString})))}reload(c){let g=op(c.file),d=c.tmpfile===void 0?void 0:op(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(g);h&&(this.changeSeq++,h.reloadFromFile(d))}saveToTmp(c,g){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(g)}closeClientFile(c){if(!c)return;let g=iu(c);this.projectService.closeClientFile(g)}mapLocationNavigationBarItems(c,g){return At(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(h=>kN(h,g)),childItems:this.mapLocationNavigationBarItems(d.childItems,g),indent:d.indent}))}getNavigationBarItems(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationBarItems(d);return _?g?this.mapLocationNavigationBarItems(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}toLocationNavigationTree(c,g){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>kN(d,g)),nameSpan:c.nameSpan&&kN(c.nameSpan,g),childItems:At(c.childItems,d=>this.toLocationNavigationTree(d,g))}}getNavigationTree(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationTree(d);return _?g?this.toLocationNavigationTree(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}getNavigateToItems(c,g){let d=this.getFullNavigateToItems(c);return g?er(d,({project:h,navigateToItems:_})=>_.map(S=>{let R=h.getScriptInfo(S.fileName),T={name:S.name,kind:S.kind,kindModifiers:S.kindModifiers,isCaseSensitive:S.isCaseSensitive,matchKind:S.matchKind,file:S.fileName,start:R.positionToLineOffset(S.textSpan.start),end:R.positionToLineOffset(Rs(S.textSpan))};return S.kindModifiers&&S.kindModifiers!==""&&(T.kindModifiers=S.kindModifiers),S.containerName&&S.containerName.length>0&&(T.containerName=S.containerName),S.containerKind&&S.containerKind.length>0&&(T.containerKind=S.containerKind),T})):er(d,({navigateToItems:h})=>h)}getFullNavigateToItems(c){let{currentFileOnly:g,searchValue:d,maxResultCount:h,projectFileName:_}=c;if(g){pe.assertIsDefined(c.file);let{file:ee,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,h,ee)}]}let S=this.getHostPreferences(),R=[],T=new Map;if(!c.file&&!_)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(ee=>W(ee));else{let ee=this.getProjects(c);pfn(ee,void 0,re=>W(re))}return R;function W(ee){let re=ee.getLanguageService().getNavigateToItems(d,h,void 0,ee.isNonTsProject(),S.excludeLibrarySymbolsInNavTo),ge=Me(re,Ie=>V(Ie)&&!Fst(hpe(Ie),ee));ge.length&&R.push({project:ee,navigateToItems:ge})}function V(ee){let re=ee.name;if(!T.has(re))return T.set(re,[ee]),!0;let ge=T.get(re);for(let Ie of ge)if(M(Ie,ee))return!1;return ge.push(ee),!0}function M(ee,re){return ee===re?!0:!ee||!re?!1:ee.containerKind===re.containerKind&&ee.containerName===re.containerName&&ee.fileName===re.fileName&&ee.isCaseSensitive===re.isCaseSensitive&&ee.kind===re.kind&&ee.kindModifiers===re.kindModifiers&&ee.matchKind===re.matchKind&&ee.name===re.name&&ee.textSpan.start===re.textSpan.start&&ee.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return qnt();if(c.file){let{file:d,project:h}=this.getFileAndProject(c);return h.getLanguageService().getSupportedCodeFixes(d)}let g=this.getProject(c.projectFileName);return g||QF.ThrowNoProject(),g.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,g){let d,h;return this.isLocation(c)?d=_(c):h=this.getRange(c,g),pe.checkDefined(d===void 0?h:d);function _(S){return S.position!==void 0?S.position:g.lineOffsetToPosition(S.line,S.offset)}}getRange(c,g){let{startPosition:d,endPosition:h}=this.getStartAndEndPosition(c,g);return{pos:d,end:h}}getApplicableRefactors(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getApplicableRefactors(g,this.extractPositionOrRange(c,h),this.getPreferences(g),c.triggerReason,c.kind,c.includeInteractiveActions).map(S=>({...S,actions:S.actions.map(R=>({...R,range:R.range?{start:lse({line:R.range.start.line,character:R.range.start.offset}),end:lse({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),S=h.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,_),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(S===void 0)return{edits:[]};if(g){let{renameFilename:R,renameLocation:T,edits:W}=S,V;if(R!==void 0&&T!==void 0){let M=h.getScriptInfoForNormalizedPath(op(R));V=pJt(Lz(M.getSnapshot()),R,T,W)}return{renameLocation:V,renameFilename:R,edits:this.mapTextChangesToCodeEdits(W),notApplicableReason:S.notApplicableReason}}return S}getMoveToRefactoringFileSuggestions(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getMoveToRefactoringFileSuggestions(g,this.extractPositionOrRange(c,h),this.getPreferences(g))}preparePasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().preparePasteEditsForFile(g,c.copiedTextSpan.map(h=>this.getRange({file:g,startLine:h.start.line,startOffset:h.start.offset,endLine:h.end.line,endOffset:h.end.offset},this.projectService.getScriptInfoForNormalizedPath(g))))}getPasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);if(fpe(g))return;let h=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(S=>this.getRange({file:c.copiedFrom.file,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(op(c.copiedFrom.file))))}:void 0,_=d.getLanguageService().getPasteEdits({targetFile:g,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(S=>this.getRange({file:g,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(g))),copiedFrom:h,preferences:this.getPreferences(g)},this.getFormatOptions(g));return _&&this.mapPasteEditsAction(_)}organizeImports(c,g){pe.assert(c.scope.type==="file");let{file:d,project:h}=this.getFileAndProject(c.scope.args),_=h.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return g?this.mapTextChangesToCodeEdits(_):_}getEditsForFileRename(c,g){let d=op(c.oldFilePath),h=op(c.newFilePath),_=this.getHostFormatOptions(),S=this.getHostPreferences(),R=new Set,T=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(W=>{let V=W.getLanguageService().getEditsForFileRename(d,h,_,S),M=[];for(let ee of V)R.has(ee.fileName)||(T.push(ee),M.push(ee.fileName));for(let ee of M)R.add(ee)}),g?T.map(W=>this.mapTextChangeToCodeEdit(W)):T}getCodeFixes(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),{startPosition:S,endPosition:R}=this.getStartAndEndPosition(c,_),T;try{T=h.getLanguageService().getCodeFixesAtPosition(d,S,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(W){let V=W instanceof Error?W:new Error(W),M=h.getLanguageService(),ee=[...M.getSyntacticDiagnostics(d),...M.getSemanticDiagnostics(d),...M.getSuggestionDiagnostics(d)].filter(ge=>IE(S,R-S,ge.start,ge.length)).map(ge=>ge.code),re=c.errorCodes.find(ge=>!ee.includes(ge));throw re!==void 0&&(V.message+=` +Additional information: BADCLIENT: Bad error code, ${re} not found in range ${S}..${R} (found: ${ee.join(", ")})`),V}return g?T.map(W=>this.mapCodeFixAction(W)):T}getCombinedCodeFix({scope:c,fixId:g},d){pe.assert(c.type==="file");let{file:h,project:_}=this.getFileAndProject(c.args),S=_.getLanguageService().getCombinedCodeFix({type:"file",fileName:h},g,this.getFormatOptions(h),this.getPreferences(h));return d?{changes:this.mapTextChangesToCodeEdits(S.changes),commands:S.commands}:S}applyCodeActionCommand(c){let g=c.command;for(let d of cc(g)){let{file:h,project:_}=this.getFileAndProject(d);_.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(h)).then(S=>{},S=>{})}return{}}getStartAndEndPosition(c,g){let d,h;return c.startPosition!==void 0?d=c.startPosition:(d=g.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?h=c.endPosition:(h=g.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=h),{startPosition:d,endPosition:h}}mapCodeAction({description:c,changes:g,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(g),commands:d}}mapCodeFixAction({fixName:c,description:g,changes:d,commands:h,fixId:_,fixAllDescription:S}){return{fixName:c,description:g,changes:this.mapTextChangesToCodeEdits(d),commands:h,fixId:_,fixAllDescription:S}}mapPasteEditsAction({edits:c,fixId:g}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:g}}mapTextChangesToCodeEdits(c){return c.map(g=>this.mapTextChangeToCodeEdit(g))}mapTextChangeToCodeEdit(c){let g=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!g&&(g||this.projectService.logErrorForScriptInfoNotFound(c.fileName),pe.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!g}))),g?{fileName:c.fileName,textChanges:c.textChanges.map(d=>EOs(d,g))}:BOs(c)}convertTextChangeToCodeEdit(c,g){return{start:g.positionToLineOffset(c.span.start),end:g.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getBraceMatchingAtPosition(d,S);return R?g?R.map(T=>kN(T,_)):R:void 0}getDiagnosticsForProject(c,g,d){if(this.suppressDiagnosticEvents)return;let{fileNames:h,languageServiceDisabled:_}=this.getProjectInfoWorker(d,void 0,!0,void 0,!0);if(_)return;let S=h.filter(Ie=>!Ie.includes("lib.d.ts"));if(S.length===0)return;let R=[],T=[],W=[],V=[],M=op(d),ee=this.projectService.ensureDefaultProjectForFile(M);for(let Ie of S)this.getCanonicalFileName(Ie)===this.getCanonicalFileName(d)?R.push(Ie):this.projectService.getScriptInfo(Ie).isScriptOpen()?T.push(Ie):PC(Ie)?V.push(Ie):W.push(Ie);let ge=[...R,...T,...W,...V].map(Ie=>({fileName:Ie,project:ee}));this.updateErrorCheck(c,ge,g,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,g){let{locations:d}=c,{file:h,languageService:_}=this.getFileAndLanguageServiceForSyntacticOperation(c),S=pe.checkDefined(this.projectService.getScriptInfo(h));return At(d,R=>{let T=this.getPosition(R,S),W=_.getSmartSelectionRange(h,T);return g?this.mapSelectionRange(W,S):W})}toggleLineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfo(d),S=this.getRange(c,_),R=h.toggleLineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}toggleMultilineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.toggleMultilineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}commentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.commentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}uncommentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.uncommentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}mapSelectionRange(c,g){let d={textSpan:kN(c.textSpan,g)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,g)),d}getScriptInfoFromProjectService(c){let g=op(c),d=this.projectService.getScriptInfoForNormalizedPath(g);return d||(this.projectService.logErrorForScriptInfoNotFound(g),QF.ThrowNoProject())}toProtocolCallHierarchyItem(c){let g=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:kN(c.span,g),selectionSpan:kN(c.selectionSpan,g)}}toProtocolCallHierarchyIncomingCall(c){let g=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>kN(d,g))}}toProtocolCallHierarchyOutgoingCall(c,g){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>kN(d,g))}}prepareCallHierarchy(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);if(h){let _=this.getPosition(c,h),S=d.getLanguageService().prepareCallHierarchy(g,_);return S&&cnt(S,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyIncomingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyIncomingCall(S))}provideCallHierarchyOutgoingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyOutgoingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyOutgoingCall(S,h))}getCanonicalFileName(c){let g=this.host.useCaseSensitiveFileNames?c:Om(c);return iu(g)}exit(){}notRequired(c){return c&&this.doOutput(void 0,c.command,c.seq,!0,this.performanceData),{responseRequired:!1,performanceData:this.performanceData}}requiredResponse(c){return{response:c,responseRequired:!0,performanceData:this.performanceData}}addProtocolHandler(c,g){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,g)}setCurrentRequest(c){pe.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){pe.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,g,d){let h=this.performanceData;try{return this.performanceData=d,this.setCurrentRequest(c),g()}finally{this.resetCurrentRequest(c),this.performanceData=h}}executeCommand(c){let g=this.handlers.get(c.command);if(g){let d=this.executeWithRequestId(c.seq,()=>g(c),void 0);return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${j3(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,void 0,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var g,d,h,_,S,R,T;this.gcTimer.scheduleCollect();let W,V=this.performanceData;this.logger.hasLevel(2)&&(W=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${Ode(this.toStringMessage(c))}`));let M,ee;try{M=this.parseMessage(c),ee=M.arguments&&M.arguments.file?M.arguments:void 0,(g=ki)==null||g.instant(ki.Phase.Session,"request",{seq:M.seq,command:M.command}),(d=ki)==null||d.push(ki.Phase.Session,"executeCommand",{seq:M.seq,command:M.command},!0);let{response:re,responseRequired:ge,performanceData:Ie}=this.executeCommand(M);if((h=ki)==null||h.pop(),this.logger.hasLevel(2)){let _e=dOs(this.hrtime(W)).toFixed(4);ge?this.logger.perftrc(`${M.seq}::${M.command}: elapsed time (in milliseconds) ${_e}`):this.logger.perftrc(`${M.seq}::${M.command}: async elapsed time (in milliseconds) ${_e}`)}(_=ki)==null||_.instant(ki.Phase.Session,"response",{seq:M.seq,command:M.command,success:!!re}),re?this.doOutput(re,M.command,M.seq,!0,Ie):ge&&this.doOutput(void 0,M.command,M.seq,!1,Ie,"No content available.")}catch(re){if((S=ki)==null||S.popAll(),re instanceof By){(R=ki)==null||R.instant(ki.Phase.Session,"commandCanceled",{seq:M?.seq,command:M?.command}),this.doOutput({canceled:!0},M.command,M.seq,!0,this.performanceData);return}this.logErrorWorker(re,this.toStringMessage(c),ee),(T=ki)==null||T.instant(ki.Phase.Session,"commandError",{seq:M?.seq,command:M?.command,message:re.message}),this.doOutput(void 0,M?M.command:"unknown",M?M.seq:0,!1,this.performanceData,"Error processing request. "+re.message+` +`+re.stack)}finally{this.performanceData=V}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function yfn(s){let c=s.diagnosticsDuration&&Do(s.diagnosticsDuration,([g,d])=>({...d,file:g}));return{...s,diagnosticsDuration:c}}function kN(s,c){return{start:c.positionToLineOffset(s.start),end:c.positionToLineOffset(Rs(s))}}function dJt(s,c,g){let d=kN(s,g),h=c&&kN(c,g);return h?{...d,contextStart:h.start,contextEnd:h.end}:d}function EOs(s,c){return{start:bfn(c,s.span.start),end:bfn(c,Rs(s.span)),newText:s.newText}}function bfn(s,c){return oJt(s)?vOs(s.getLineAndCharacterOfPosition(c)):s.positionToLineOffset(c)}function SOs(s,c){let g=s.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return s.wordPattern?{ranges:g,wordPattern:s.wordPattern}:{ranges:g}}function vOs(s){return{line:s.line+1,offset:s.character+1}}function BOs(s){pe.assert(s.textChanges.length===1);let c=ma(s.textChanges);return pe.assert(c.span.start===0&&c.span.length===0),{fileName:s.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function pJt(s,c,g,d){let h=wOs(s,c,d),{line:_,character:S}=Ci(cA(h),g);return{line:_+1,offset:S+1}}function wOs(s,c,g){for(let{fileName:d,textChanges:h}of g)if(d===c)for(let _=h.length-1;_>=0;_--){let{newText:S,span:{start:R,length:T}}=h[_];s=s.slice(0,R)+S+s.slice(R+T)}return s}function Efn(s,{fileName:c,textSpan:g,contextSpan:d,isWriteAccess:h,isDefinition:_},{disableLineTextInReferences:S}){let R=pe.checkDefined(s.getScriptInfo(c)),T=dJt(g,d,R),W=S?void 0:TOs(R,T);return{file:c,...T,lineText:W,isWriteAccess:h,isDefinition:_}}function TOs(s,c){let g=s.lineToTextSpan(c.start.line-1);return s.getSnapshot().getText(g.start,Rs(g)).replace(/\r|\n/g,"")}function ROs(s){return s===void 0||s&&typeof s=="object"&&typeof s.exportName=="string"&&(s.fileName===void 0||typeof s.fileName=="string")&&(s.ambientModuleName===void 0||typeof s.ambientModuleName=="string"&&(s.isPackageJsonImport===void 0||typeof s.isPackageJsonImport=="boolean"))}var use=4,fJt=(s=>(s[s.PreStart=0]="PreStart",s[s.Start=1]="Start",s[s.Entire=2]="Entire",s[s.Mid=3]="Mid",s[s.End=4]="End",s[s.PostEnd=5]="PostEnd",s))(fJt||{}),NOs=class{constructor(){this.goSubtree=!0,this.lineIndex=new c2e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new gse,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(s,c){c&&(this.trailingText=""),s?s=this.initialText+s+this.trailingText:s=this.initialText+this.trailingText;let d=c2e.linesFromText(s).lines;d.length>1&&d[d.length-1]===""&&d.pop();let h,_;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(_=this.endBranch[R],R>0?h=this.endBranch[R-1]:h=this.branchNode);_&&h.remove(_);let S=this.startPath[this.startPath.length-1];if(d.length>0)if(S.text=d[0],d.length>1){let R=new Array(d.length-1),T=S;for(let M=1;M=0;){let M=this.startPath[W];R=M.insertAt(T,R),W--,T=M}let V=R.length;for(;V>0;){let M=new gse;M.add(this.lineIndex.root),R=M.insertAt(this.lineIndex.root,R),V=R.length,this.lineIndex.root=M}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(S);for(let T=this.startPath.length-2;T>=0;T--)this.startPath[T].updateCounts()}return this.lineIndex}post(s,c,g){g===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(s,c,g,d,h){let _=this.stack[this.stack.length-1];this.state===2&&h===1&&(this.state=1,this.branchNode=_,this.lineCollectionAtBranch=g);let S;function R(T){return T.isLeaf()?new uWe(""):new gse}switch(h){case 0:this.goSubtree=!1,this.state!==4&&_.add(g);break;case 1:this.state===4?this.goSubtree=!1:(S=R(g),_.add(S),this.startPath.push(S));break;case 2:this.state!==4?(S=R(g),_.add(S),this.startPath.push(S)):g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 5:this.goSubtree=!1,this.state!==1&&_.add(g);break}this.goSubtree&&this.stack.push(S)}leaf(s,c,g){this.state===1?this.initialText=g.text.substring(0,s):this.state===2?(this.initialText=g.text.substring(0,s),this.trailingText=g.text.substring(s+c)):this.trailingText=g.text.substring(s+c)}},DOs=class{constructor(s,c,g){this.pos=s,this.deleteLen=c,this.insertedText=g}getTextChangeRange(){return $2(zd(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},Zst=class yj{constructor(){this.changes=[],this.versions=new Array(yj.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%yj.maxVersions}currentVersionToIndex(){return this.currentVersion%yj.maxVersions}edit(c,g,d){this.changes.push(new DOs(c,g,d)),(this.changes.length>yj.changeNumberThreshold||g>yj.changeLengthThreshold||d&&d.length>yj.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let g=c.index;for(let d of this.changes)g=g.edit(d.pos,d.deleteLen,d.insertedText);c=new Sfn(this.currentVersion+1,this,g,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=yj.maxVersions&&(this.minVersion=this.currentVersion-yj.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,g){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(g-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let g=this._getSnapshot().index,{lineText:d,absolutePosition:h}=g.lineNumberToInfo(c+1),_=d!==void 0?d.length:g.absolutePositionOfStartOfLine(c+2)-h;return zd(h,_)}getTextChangesBetweenVersions(c,g){if(c=this.minVersion){let d=[];for(let h=c+1;h<=g;h++){let _=this.versions[this.versionToIndex(h)];for(let S of _.changesSincePreviousVersion)d.push(S.getTextChangeRange())}return z(d)}else return;else return Eo}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let g=new yj,d=new Sfn(0,g,new c2e);g.versions[g.currentVersion]=d;let h=c2e.linesFromText(c);return d.index.load(h.lines),g}};Zst.changeNumberThreshold=8,Zst.changeLengthThreshold=256,Zst.maxVersions=8;var Lst=Zst,Sfn=class lki{constructor(c,g,d,h=zm){this.version=c,this.cache=g,this.index=d,this.changesSincePreviousVersion=h}getText(c,g){return this.index.getText(c,g-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof lki&&this.cache===c.cache)return this.version<=c.version?Eo:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},c2e=class rxr{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:g,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:g,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let g=this.getLineCount();if(c<=g){let{position:d,leaf:h}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:h&&h.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let g=[];for(let d=0;d0&&c{d=d.concat(S.text.substring(h,h+_))}}),d}getLength(){return this.root.charCount()}every(c,g,d){d||(d=this.root.charCount());let h={goSubtree:!0,done:!1,leaf(_,S,R){c(R,_,S)||(this.done=!0)}};return this.walk(g,d-g,h),!h.done}edit(c,g,d){if(this.root.charCount()===0)return pe.assert(g===0),d!==void 0?(this.load(rxr.linesFromText(d).lines),this):void 0;{let h;if(this.checkEdits){let R=this.getText(0,this.root.charCount());h=R.slice(0,c)+d+R.slice(c+g)}let _=new NOs,S=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,g=0,S=!0}else if(g>0){let R=c+g,{zeroBasedColumn:T,lineText:W}=this.positionToColumnAndLineText(R);T===0&&(g+=W.length,d=d?d+W:W)}if(this.root.walk(c,g,_),_.insertLines(d,S),this.checkEdits){let R=_.lineIndex.getText(0,_.lineIndex.getLength());pe.assert(h===R,"buffer edit mismatch")}return _.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[h]=_:d.pop(),{lines:d,lineMap:g}}},gse=class nxr{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,g,d,h,_){return d.pre&&d.pre(c,g,this.children[h],this,_),d.goSubtree?(this.children[h].walk(c,g,d),d.post&&d.post(c,g,this.children[h],this,_)):d.goSubtree=!0,d.done}skipChild(c,g,d,h,_){h.pre&&!h.done&&(h.pre(c,g,this.children[d],this,_),h.goSubtree=!0)}walk(c,g,d){if(this.children.length===0)return;let h=0,_=this.children[h].charCount(),S=c;for(;S>=_;)this.skipChild(S,g,h,d,0),S-=_,h++,_=this.children[h].charCount();if(S+g<=_){if(this.execWalk(S,g,d,h,2))return}else{if(this.execWalk(S,_-S,d,h,1))return;let R=g-(_-S);for(h++,_=this.children[h].charCount();R>_;){if(this.execWalk(0,_,d,h,3))return;R-=_,h++,_=this.children[h].charCount()}if(R>0&&this.execWalk(0,R,d,h,4))return}if(d.pre){let R=this.children.length;if(hg)return _.isLeaf()?{oneBasedLine:c,zeroBasedColumn:g,lineText:_.text}:_.charOffsetToLineInfo(c,g);g-=_.charCount(),c+=_.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let h=pe.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:h.charCount(),lineText:void 0}}lineNumberToInfo(c,g){for(let d of this.children){let h=d.lineCount();if(h>=c)return d.isLeaf()?{position:g,leaf:d}:d.lineNumberToInfo(c,g);c-=h,g+=d.charCount()}return{position:g,leaf:void 0}}splitAfter(c){let g,d=this.children.length;c++;let h=c;if(c=0;ee--)T[ee].children.length===0&&T.pop()}S&&T.push(S),this.updateCounts();for(let V=0;V{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:h,reject:_})});return this.installer.send(g),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,g,d){let h=b4t(c,g,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${j3(h)}`),this.activeRequestCount0?this.activeRequestCount--:pe.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let h=this.requestQueue.dequeue();if(this.requestMap.get(h.projectName)===h){this.requestMap.delete(h.projectName),this.scheduleRequest(h);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${h.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case i1e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${j3(c)}`),this.installer.send(c)},uki.requestDelayMillis,`${c.projectName}::${c.kind}`)}};vfn.requestDelayMillis=100;var Bfn=vfn,wfn={};o(wfn,{ActionInvalidate:()=>TVe,ActionPackageInstalled:()=>RVe,ActionSet:()=>wVe,ActionWatchTypingLocations:()=>i1e,Arguments:()=>urt,AutoImportProviderProject:()=>H4t,AuxiliaryProject:()=>O4t,CharRangeSection:()=>fJt,CloseFileWatcherEvent:()=>vst,CommandNames:()=>Afn,ConfigFileDiagEvent:()=>_st,ConfiguredProject:()=>Y4t,ConfiguredProjectLoadKind:()=>j4t,CreateDirectoryWatcherEvent:()=>Sst,CreateFileWatcherEvent:()=>Est,Errors:()=>QF,EventBeginInstallTypes:()=>crt,EventEndInstallTypes:()=>lrt,EventInitializationFailed:()=>T5t,EventTypesRegistry:()=>art,ExternalProject:()=>pst,GcTimer:()=>R4t,InferredProject:()=>W4t,LargeFileReferencedEvent:()=>Cst,LineIndex:()=>c2e,LineLeaf:()=>uWe,LineNode:()=>gse,LogLevel:()=>_4t,Msg:()=>y4t,OpenFileInfoTelemetryEvent:()=>Q4t,Project:()=>zz,ProjectInfoTelemetryEvent:()=>bst,ProjectKind:()=>Ipe,ProjectLanguageServiceStateEvent:()=>yst,ProjectLoadingFinishEvent:()=>mst,ProjectLoadingStartEvent:()=>hst,ProjectService:()=>sJt,ProjectsUpdatedInBackgroundEvent:()=>aWe,ScriptInfo:()=>x4t,ScriptVersionCache:()=>Lst,Session:()=>_fn,TextStorage:()=>k4t,ThrottledOperations:()=>T4t,TypingsInstallerAdapter:()=>Bfn,allFilesAreJsOrDts:()=>L4t,allRootFilesAreJsOrDts:()=>Z4t,asNormalizedPath:()=>Vpn,convertCompilerOptions:()=>cWe,convertFormatOptions:()=>cse,convertScriptKindName:()=>wst,convertTypeAcquisition:()=>J4t,convertUserPreferences:()=>U4t,convertWatchOptions:()=>o2e,countEachFileTypes:()=>r2e,createInstallTypingsRequest:()=>b4t,createModuleSpecifierCache:()=>cJt,createNormalizedPathMap:()=>Ppn,createPackageJsonCache:()=>lJt,createSortedArray:()=>w4t,emptyArray:()=>zm,findArgument:()=>Vnn,formatDiagnosticToProtocol:()=>a2e,formatMessage:()=>uJt,getBaseConfigFileName:()=>dst,getDetailWatchInfo:()=>Dst,getLocationInNewDocument:()=>pJt,hasArgument:()=>Lnn,hasNoTypeScriptSource:()=>V4t,indent:()=>Ode,isBackgroundProject:()=>i2e,isConfigFile:()=>oJt,isConfiguredProject:()=>s9,isDynamicFileName:()=>fpe,isExternalProject:()=>n2e,isInferredProject:()=>ase,isInferredProjectName:()=>E4t,isProjectDeferredClose:()=>s2e,makeAutoImportProviderProjectName:()=>v4t,makeAuxiliaryProjectName:()=>B4t,makeInferredProjectName:()=>S4t,maxFileSize:()=>Ist,maxProgramSizeForNonTsFiles:()=>fst,normalizedPathToPath:()=>ose,nowString:()=>Pnn,nullCancellationToken:()=>lfn,nullTypingsInstaller:()=>lWe,protocol:()=>N4t,scriptInfoIsContainedByBackgroundProject:()=>G4t,scriptInfoIsContainedByDeferredClosedProject:()=>F4t,stringifyIndented:()=>j3,toEvent:()=>gJt,toNormalizedPath:()=>op,tryConvertScriptKindName:()=>Bst,typingsInstaller:()=>C4t,updateProjectIfDirty:()=>_v}),typeof console<"u"&&(pe.loggingHost={log(s,c){switch(s){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return nki},set exports(e){nki=e,typeof jEt<"u"&&jEt.exports&&(jEt.exports=e)}})});var Nxr=H((vLu,Zxi)=>{"use strict";Zxi.exports=function(t,r){r===!0&&(r=0);var n="";if(typeof t=="string")try{n=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(n=t.protocol);var a=n.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var Vxi=H((BLu,Lxi)=>{"use strict";var mfc=Nxr();function Cfc(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=mfc(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}Lxi.exports=Cfc});var Oxi=H((wLu,Wxi)=>{"use strict";var _fc=Vxi();function yfc(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var bfc=yfc(_fc),Efc="text/plain",Sfc="us-ascii",Pxi=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),vfc=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===Sfc)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length>0||f&&f!==Efc)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`};function Bfc(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return vfc(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let l=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,A=0,f="";for(;;){let C=l.exec(a.pathname);if(!C)break;let b=C[0],E=C.index,N=a.pathname.slice(A,E);f+=N.replace(/\/{2,}/g,"/"),f+=b,A=E+b.length}let I=a.pathname.slice(A,a.pathname.length);f+=I.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let l=a.pathname.split("/"),A=l[l.length-1];Pxi(A,t.removeDirectoryIndex)&&(l=l.slice(0,-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])Pxi(l,t.removeQueryParameters)&&a.searchParams.delete(l);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var Dxr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,n=o=>{let l=new Error(o);throw l.subject_url=e,l};(typeof e!="string"||!e.trim())&&n("Invalid url."),e.length>Dxr.MAX_INPUT_LENGTH&&n("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=Bfc(e,t));let a=bfc.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):n("URL parsing failed.")}return a};Dxr.MAX_INPUT_LENGTH=2048;Wxi.exports=Dxr});var Yxi=H((TLu,Hxi)=>{"use strict";var wfc=Nxr();function Mxi(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=wfc(e);if(e=e.substring(e.indexOf("://")+3),Mxi(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var Tfc=Oxi(),Qxi=Yxi();function Rfc(e){var t=Tfc(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),Qxi(t.protocols)||t.protocols.length===0&&Qxi(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}Xxi.exports=Rfc});var Kxi=H((NLu,Uxi)=>{"use strict";var Nfc=Jxi();function kxr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=Nfc(e),n=r.resource.split("."),a=null;switch(r.toString=function(Q){return kxr.stringify(this,Q)},r.source=n.length>2?n.slice(1-n.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=n[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var l=a.indexOf("-",2),A=a.indexOf("blob",2),f=a.indexOf("tree",2),I=a.indexOf("commit",2),C=a.indexOf("src",2),b=a.indexOf("raw",2),E=a.indexOf("edit",2);o=l>0?l-1:A>0?A-1:f>0?f-1:I>0?I-1:C>0?C-1:b>0?b-1:E>0?E-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],I&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var N=a.length>o&&a[o+1]==="-"?o+1:o;a.length>N+2&&["raw","src","blob","tree","edit"].indexOf(a[N+1])>=0&&(r.filepathtype=a[N+1],r.ref=a[N+2],a.length>N+3&&(r.filepath=a.slice(N+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var B=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,F=B.exec(r.pathname);return F!=null&&(r.source="bitbucket-server",F[1]==="users"?r.owner="~"+F[2]:r.owner=F[2],r.organization=r.owner,r.name=F[3],a=F[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}kxr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",n=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+n+"@"+e.resource+r+"/"+e.full_name+a:n+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+n+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?Dfc(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+kfc(e)+a;default:return e.href}};function Dfc(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function kfc(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}Uxi.exports=kxr});var zxi=H(Gxr=>{"use strict";Object.defineProperty(Gxr,"__esModule",{value:!0});Gxr.tryParseGitURL=Gfc;function xxr(e,t,r){let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)}function jxi(e){try{return new URL(e)}catch{return}}function xfc(e){let t=xxr(e,"@","#"),r=xxr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),xxr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function Gfc(e){return jxi(e)||jxi(xfc(e))}});var qxi=H(Fxr=>{"use strict";Object.defineProperty(Fxr,"__esModule",{value:!0});Fxr.normalizeRepoUrl=Zfc;var Ffc=zxi();function Zfc(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,Ffc.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var u1t=H(Xk=>{"use strict";Object.defineProperty(Xk,"__esModule",{value:!0});Xk.TreeishProtocols=Xk.normalizeRepoUrl=void 0;Xk.isGitUrl=Wfc;Xk.splitRepoUrl=l1t;Xk.normalizeLocator=Ofc;Xk.validateRepoUrl=Vxr;Xk.lsRemote=tGi;Xk.resolveUrl=Mfc;Xk.clone=Hfc;Xk.fetchRoot=rGi;Xk.fetchBase=nGi;Xk.fetchChangedFiles=iGi;Xk.fetchChangedWorkspaces=Yfc;var Lxr=(Pa(),vi(Va)),Ey=yn(),qZ=zs(),c1t=($c(),vi(rg)),Lfc=kW(),Vfc=Lxr.__importDefault(Kxi()),pUe=Lxr.__importDefault(wt("querystring")),$xi=Lxr.__importDefault(UC()),fUe=qxi();Object.defineProperty(Xk,"normalizeRepoUrl",{enumerable:!0,get:function(){return fUe.normalizeRepoUrl}});function eGi(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var Pfc=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],_O;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(_O||(Xk.TreeishProtocols=_O={}));function Wfc(e){return e?Pfc.some(t=>!!e.match(t)):!1}function l1t(e){e=(0,fUe.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:_O.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),n=e.slice(t+1);if(n.match(/^[a-z]+=/)){let a=pUe.default.parse(n);for(let[f,I]of Object.entries(a))if(typeof I!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(_O).find(f=>Object.hasOwn(a,f)),[l,A]=typeof o<"u"?[o,a[o]]:[_O.Head,"HEAD"];for(let f of Object.values(_O))delete a[f];return{repo:r,treeish:{protocol:l,request:A},extra:a}}else{let a=n.indexOf(":"),[o,l]=a===-1?[null,n]:[n.slice(0,a),n.slice(a+1)];return{repo:r,treeish:{protocol:o,request:l},extra:{}}}}function Ofc(e){return Ey.structUtils.makeLocator(e,(0,fUe.normalizeRepoUrl)(e.reference))}function Vxr(e,{configuration:t}){let{repo:r}=l1t(e),n=(0,fUe.normalizeRepoUrl)(r,{git:!0});if(!Ey.httpUtils.getNetworkSettings(`https://${(0,Vfc.default)(n).resource}`,{configuration:t}).enableNetwork)throw new Ey.ReportError(Ey.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because of your configuration settings`);let o=Ey.miscUtils.buildIgnorePattern(t.get("approvedGitRepositories"));if(o===null||!n.match(o))throw new Ey.ReportError(Ey.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because it doesn't match any of the patterns in 'approvedGitRepositories'`);return n}async function tGi(e,t){let r=Vxr(e,{configuration:t}),n=await Zxr("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:eGi()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,l;for(;(l=o.exec(n.stdout))!==null;)a.set(l[2],l[1]);return a}async function Mfc(e,t){let{repo:r,treeish:{protocol:n,request:a},extra:o}=l1t(e),l=await tGi(r,t),A=(I,C)=>{switch(I){case _O.Commit:{if(!C.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return pUe.default.stringify({...o,commit:C})}case _O.Head:{let b=l.get(C==="HEAD"?C:`refs/heads/${C}`);if(typeof b>"u")throw new Error(`Unknown head ("${C}")`);return pUe.default.stringify({...o,commit:b})}case _O.Tag:{let b=l.get(`refs/tags/${C}`);if(typeof b>"u")throw new Error(`Unknown tag ("${C}")`);return pUe.default.stringify({...o,commit:b})}case _O.Semver:{let b=Ey.semverUtils.validRange(C);if(!b)throw new Error(`Invalid range ("${C}")`);let E=new Map([...l.entries()].filter(([B])=>B.startsWith("refs/tags/")).map(([B,F])=>[$xi.default.parse(B.slice(10)),F]).filter(B=>B[0]!==null)),N=$xi.default.maxSatisfying([...E.keys()],b);if(N===null)throw new Error(`No matching range ("${C}")`);return pUe.default.stringify({...o,commit:E.get(N)})}case null:{let b;if((b=f(_O.Commit,C))!==null||(b=f(_O.Tag,C))!==null||(b=f(_O.Head,C))!==null)return b;throw C.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${I}")`)}},f=(I,C)=>{try{return A(I,C)}catch{return null}};return(0,fUe.normalizeRepoUrl)(`${r}#${A(n,a)}`)}async function Hfc(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:n,request:a}}=l1t(e);if(n!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=Vxr(r,{configuration:t}),l=await qZ.xfs.mktempPromise(),A={cwd:l,env:eGi()};return await Zxr("cloning the repository",["clone","-c","core.autocrlf=false",o,qZ.npath.fromPortablePath(l)],A,{configuration:t,normalizedRepoUrl:o}),await Zxr("switching branch",["checkout",`${a}`],A,{configuration:t,normalizedRepoUrl:o}),l})}async function rGi(e){let t,r=e;do{if(t=r,await qZ.xfs.existsPromise(qZ.ppath.join(t,".git")))return t;r=qZ.ppath.dirname(t)}while(r!==t);return null}async function nGi(e,{baseRefs:t}){if(t.length===0)throw new c1t.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let A of t){let{code:f}=await Ey.execUtils.execvp("git",["merge-base",A,"HEAD"],{cwd:e});f===0&&r.push(A)}if(r.length===0)throw new c1t.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:n}=await Ey.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=n.trim(),{stdout:o}=await Ey.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),l=o.trim();return{hash:a,title:l}}async function iGi(e,{base:t,project:r}){let n=Ey.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await Ey.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>qZ.ppath.resolve(e,qZ.npath.toPortablePath(I))),{stdout:l}=await Ey.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),A=l.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>qZ.ppath.resolve(e,qZ.npath.toPortablePath(I))),f=[...new Set([...o,...A].sort())];return n?f.filter(I=>!qZ.ppath.relative(r.cwd,I).match(n)):f}async function Yfc({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new c1t.UsageError("This command can only be run from within a Yarn project");let r=[qZ.ppath.resolve(t.cwd,qZ.Filename.lockfile),qZ.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),qZ.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),qZ.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(l=>l.populateYarnPaths,t,l=>{l!=null&&r.push(l)});let n=await rGi(t.configuration.projectCwd);if(n==null)throw new c1t.UsageError("This command can only be run on Git repositories");let a=await nGi(n,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await iGi(n,{base:a.hash,project:t});return new Set(Ey.miscUtils.mapAndFilter(o,l=>{let A=t.tryWorkspaceByFilePath(l);return A===null||r.some(f=>l.startsWith(f))?Ey.miscUtils.mapAndFilter.skip:A}))}async function Zxr(e,t,r,{configuration:n,normalizedRepoUrl:a}){try{return await Ey.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof Ey.execUtils.ExecError))throw o;let l=o.reportExtra,A=o.stderr.toString();throw new Ey.ReportError(Ey.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(Ey.MessageName.EXCEPTION,` ${Ey.formatUtils.prettyField(n,{label:"Repository URL",value:Ey.formatUtils.tuple(Ey.formatUtils.Type.URL,a)})}`);for(let I of A.matchAll(/^(.+?): (.*)$/gm)){let[,C,b]=I;C=C.toLowerCase();let E=C==="error"?"Error":`${(0,Lfc.capitalize)(C)} Error`;f.reportError(Ey.MessageName.EXCEPTION,` ${Ey.formatUtils.prettyField(n,{label:E,value:Ey.formatUtils.tuple(Ey.formatUtils.Type.NO_HINT,b)})}`)}l?.(f)})}}});var sGi=H(A1t=>{"use strict";Object.defineProperty(A1t,"__esModule",{value:!0});A1t.GitFetcher=void 0;var Qfc=(Pa(),vi(Va)),rDe=yn(),g1t=zs(),Pxr=Qfc.__importStar(u1t()),Wxr=class{supports(t,r){return Pxr.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,n);let o={...r,checksums:a},l=await this.downloadHosted(t,o);if(l!==null)return l;let[A,f,I]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${rDe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:A,releaseFs:f,prefixPath:rDe.structUtils.getIdentVendorPath(t),checksum:I}}async downloadHosted(t,r){return r.project.configuration.reduceHook(n=>n.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let n=Pxr.splitRepoUrl(t.reference),a=await Pxr.clone(t.reference,r.project.configuration),o=g1t.ppath.resolve(a,n.extra.cwd??g1t.PortablePath.dot),l=g1t.ppath.join(o,"package.tgz");await rDe.scriptUtils.prepareExternalProject(o,l,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:t});let A=await g1t.xfs.readFilePromise(l);return await rDe.miscUtils.releaseAfterUseAsync(async()=>await rDe.tgzUtils.convertToZip(A,{configuration:r.project.configuration,prefixPath:rDe.structUtils.getIdentVendorPath(t),stripComponents:1}))}};A1t.GitFetcher=Wxr});var aGi=H(d1t=>{"use strict";Object.defineProperty(d1t,"__esModule",{value:!0});d1t.GitResolver=void 0;var Xfc=(Pa(),vi(Va)),oGi=yn(),Jfc=yn(),Ufc=yn(),nDe=Xfc.__importStar(u1t()),Oxr=class{supportsDescriptor(t,r){return nDe.isGitUrl(t.range)}supportsLocator(t,r){return nDe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=await nDe.resolveUrl(t.range,n.project.configuration);return[oGi.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,n,a){let o=nDe.splitRepoUrl(t.range);return{locators:n.filter(A=>{if(A.identHash!==t.identHash)return!1;let f=nDe.splitRepoUrl(A.reference);return!(o.repo!==f.repo||o.treeish.protocol===nDe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await oGi.miscUtils.releaseAfterUseAsync(async()=>await Ufc.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Jfc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};d1t.GitResolver=Oxr});var iDe=H(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.GitResolver=Hee.GitFetcher=Hee.gitUtils=void 0;var Kfc=(Pa(),vi(Va)),p1t=yn(),cGi=sGi();Object.defineProperty(Hee,"GitFetcher",{enumerable:!0,get:function(){return cGi.GitFetcher}});var lGi=aGi();Object.defineProperty(Hee,"GitResolver",{enumerable:!0,get:function(){return lGi.GitResolver}});var jfc=Kfc.__importStar(u1t());Hee.gitUtils=jfc;var zfc={configuration:{approvedGitRepositories:{description:"Array of git repository URL glob patterns that are allowed to be fetched",type:p1t.SettingsType.STRING,default:[],isArray:!0},changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:p1t.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:p1t.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:p1t.SettingsType.NUMBER,default:2}},fetchers:[cGi.GitFetcher],resolvers:[lGi.GitResolver]};Hee.default=zfc});var mUe=H(GG=>{"use strict";Object.defineProperty(GG,"__esModule",{value:!0});GG.Decision=void 0;GG.validateReleaseDecision=hUe;GG.resolveVersionFiles=tIc;GG.clearVersionFiles=rIc;GG.updateVersionFiles=nIc;GG.openVersionFile=iIc;GG.requireMoreDecisions=sIc;GG.getUndecidedWorkspaces=uGi;GG.getUndecidedDependentWorkspaces=gGi;GG.suggestStrategy=oIc;GG.applyStrategy=Hxr;GG.applyReleases=aIc;GG.applyPrerelease=AGi;var qfc=(Pa(),vi(Va)),PE=yn(),Xv=zs(),fCe=TW(),Mxr=iDe(),IUe=($c(),vi(rg)),$fc=kW(),Yee=qfc.__importDefault(UC()),eIc=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,aH;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PREMAJOR="premajor",e.PREMINOR="preminor",e.PREPATCH="prepatch",e.PRERELEASE="prerelease"})(aH||(GG.Decision=aH={}));function hUe(e){let t=Yee.default.valid(e);return t||PE.miscUtils.validateEnum((0,$fc.omit)(aH,"UNDECIDED"),e)}async function tIc(e,{prerelease:t=null}={}){let r=new Map,n=e.configuration.get("deferredVersionFolder");if(!Xv.xfs.existsSync(n))return r;let a=await Xv.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=Xv.ppath.join(n,o),A=await Xv.xfs.readFilePromise(l,"utf8"),f=(0,fCe.parseSyml)(A);for(let[I,C]of Object.entries(f.releases||{})){if(C===aH.DECLINE)continue;let b=PE.structUtils.parseIdent(I),E=e.tryWorkspaceByIdent(b);if(E===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${Xv.ppath.basename(l)} references ${I})`);if(E.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${PE.structUtils.prettyLocator(e.configuration,E.anchoredLocator)})`);let N=E.manifest.raw.stableVersion??E.manifest.version,B=r.get(E),F=aH.PRERELEASE===C?Hxr(E.manifest.version,hUe(C)):Hxr(N,hUe(C));if(F===null)throw new Error(`Assertion failed: Expected ${N} to support being bumped via strategy ${C}`);let Q=typeof B<"u"?Yee.default.gt(F,B)?F:B:F;r.set(E,Q)}}return t&&(r=new Map([...r].map(([o,l])=>[o,AGi(l,{current:o.manifest.version,prerelease:t})]))),r}async function rIc(e){let t=e.configuration.get("deferredVersionFolder");Xv.xfs.existsSync(t)&&await Xv.xfs.removePromise(t)}async function nIc(e,t){let r=new Set(t),n=e.configuration.get("deferredVersionFolder");if(!Xv.xfs.existsSync(n))return;let a=await Xv.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=Xv.ppath.join(n,o),A=await Xv.xfs.readFilePromise(l,"utf8"),f=(0,fCe.parseSyml)(A),I=f?.releases;if(I){for(let C of Object.keys(I)){let b=PE.structUtils.parseIdent(C),E=e.tryWorkspaceByIdent(b);(E===null||r.has(E))&&delete f.releases[C]}Object.keys(f.releases).length>0?await Xv.xfs.changeFilePromise(l,(0,fCe.stringifySyml)(new fCe.stringifySyml.PreserveOrdering(f))):await Xv.xfs.unlinkPromise(l)}}}async function iIc(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new IUe.UsageError("This command can only be run from within a Yarn project");let n=await Mxr.gitUtils.fetchRoot(r.projectCwd),a=n!==null?await Mxr.gitUtils.fetchBase(n,{baseRefs:r.get("changesetBaseRefs")}):null,o=n!==null?await Mxr.gitUtils.fetchChangedFiles(n,{base:a.hash,project:e}):[],l=r.get("deferredVersionFolder"),A=o.filter(N=>Xv.ppath.contains(l,N)!==null);if(A.length>1)throw new IUe.UsageError(`Your current branch contains multiple versioning files; this isn't supported: - ${A.map(N=>Xv.npath.fromPortablePath(N)).join(` -- `)}`);let f=new Set(PE.miscUtils.mapAndFilter(o,N=>{let B=e.tryWorkspaceByFilePath(N);return B===null?PE.miscUtils.mapAndFilter.skip:B}));if(A.length===0&&f.size===0&&!t)return null;let I=A.length===1?A[0]:Xv.ppath.join(l,`${PE.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),C=Xv.xfs.existsSync(I)?await Xv.xfs.readFilePromise(I,"utf8"):"{}",b=(0,pCe.parseSyml)(C),E=new Map;for(let N of b.declined||[]){let B=PE.structUtils.parseIdent(N),F=e.getWorkspaceByIdent(B);E.set(F,aH.DECLINE)}for(let[N,B]of Object.entries(b.releases||{})){let F=PE.structUtils.parseIdent(N),Q=e.getWorkspaceByIdent(F);E.set(Q,fUe(B))}return{project:e,root:n,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(N=>N.manifest.version!==null)),releases:E,async saveAll(){let N={},B=[],F=[];for(let Q of e.workspaces){if(Q.manifest.version===null)continue;let X=PE.structUtils.stringifyIdent(Q.anchoredLocator),ae=E.get(Q);ae===aH.DECLINE?B.push(X):typeof ae<"u"?N[X]=fUe(ae):f.has(Q)&&F.push(X)}await Xv.xfs.mkdirPromise(Xv.ppath.dirname(I),{recursive:!0}),await Xv.xfs.changeFilePromise(I,(0,pCe.stringifySyml)(new pCe.stringifySyml.PreserveOrdering({releases:Object.keys(N).length>0?N:void 0,declined:B.length>0?B:void 0,undecided:F.length>0?F:void 0})))}}}function dfc(e){return Uxi(e).size>0||Kxi(e).length>0}function Uxi(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function Kxi(e,{include:t=new Set}={}){let r=[],n=new Map(PE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l===aH.DECLINE?PE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(PE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l!==aH.DECLINE?PE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||n.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let l of PE.Manifest.hardDependencies)for(let A of o.manifest.getForScope(l).values()){let f=e.project.tryWorkspaceByDescriptor(A);f!==null&&n.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function pfc(e,t){let r=Hee.default.clean(t);for(let n of Object.values(aH))if(n!==aH.UNDECIDED&&n!==aH.DECLINE&&Hee.default.inc(e,n)===r)return n;return null}function Zxr(e,t){if(Hee.default.valid(t))return t;if(e===null)throw new pUe.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!Hee.default.valid(e))throw new pUe.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=Hee.default.inc(e,t);if(r===null)throw new pUe.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function ffc(e,t,{report:r,exact:n}){let a=new Map;for(let o of e.workspaces)for(let l of PE.Manifest.allDependencies)for(let A of o.manifest[l].values()){let f=e.tryWorkspaceByDescriptor(A);if(f===null||!t.has(f))continue;PE.miscUtils.getArrayWithDefault(a,f).push([o,l,A.identHash])}for(let[o,l]of t){let A=o.manifest.version;o.manifest.version=l,Hee.default.prerelease(l)===null?delete o.manifest.raw.stableVersion:o.manifest.raw.stableVersion||(o.manifest.raw.stableVersion=A);let f=o.manifest.name!==null?PE.structUtils.stringifyIdent(o.manifest.name):null;r.reportInfo(PE.MessageName.UNNAMED,`${PE.structUtils.prettyLocator(e.configuration,o.anchoredLocator)}: Bumped to ${l}`),r.reportJson({cwd:Xv.npath.fromPortablePath(o.cwd),ident:f,oldVersion:A,newVersion:l});let I=a.get(o);if(!(typeof I>"u"))for(let[C,b,E]of I){let N=C.manifest[b].get(E);if(typeof N>"u")throw new Error("Assertion failed: The dependency should have existed");let B=N.range,F=!1;if(B.startsWith(PE.WorkspaceResolver.protocol)&&(B=B.slice(PE.WorkspaceResolver.protocol.length),F=!0,B===o.relativeCwd))continue;let Q=B.match(cfc);if(!Q){r.reportWarning(PE.MessageName.UNNAMED,`Couldn't auto-upgrade range ${B} (in ${PE.structUtils.prettyLocator(e.configuration,C.anchoredLocator)})`);continue}let X=n?`${l}`:`${Q[1]}${l}`;F&&(X=`${PE.WorkspaceResolver.protocol}${X}`);let ae=PE.structUtils.makeDescriptor(N,X);C.manifest[b].set(E,ae)}}}var Ifc=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function jxi(e,{current:t,prerelease:r}){let n=new Hee.default.SemVer(t),a=n.prerelease.slice(),o=[];n.prerelease=[],n.format()!==e&&(a.length=0);let l=!0,A=r.split(/\./g);for(let f of A){let I=Ifc.get(f);if(typeof I>"u")o.push(f),a[0]===f?a.shift():l=!1;else{let C=l?I.extract(a):null;C!==null&&typeof C[0]=="number"?(o.push(I.generate(C[0])),a=C[1]):(o.push(I.generate()),l=!1)}}return n.prerelease&&(n.prerelease=[]),`${e}-${o.join(".")}`}});var $xi=H(Vxr=>{"use strict";Object.defineProperty(Vxr,"__esModule",{value:!0});var hfc=(Pa(),vi(Va)),zxi=el(),Lxr=Sn(),qxi=Sn(),fCe=($c(),vi(rg)),g1t=hfc.__importStar(IUe()),hUe=class extends zxi.BaseCommand{constructor(){super(...arguments),this.all=fCe.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=fCe.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=fCe.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.exact=fCe.Option.Boolean("--exact",!1,{description:"Use the exact version of each package, removes any range. Useful for nightly releases where the range might match another version."}),this.recursive=fCe.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=fCe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Lxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await qxi.Project.find(t,this.context.cwd),a=await Lxr.Cache.find(t);if(!n)throw new zxi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await qxi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await g1t.resolveVersionFiles(r,{prerelease:A}),I=new Map;if(this.all)I=f;else{let C=this.recursive?n.getRecursiveWorkspaceDependencies():[n];for(let b of C){let E=f.get(b);typeof E<"u"&&I.set(b,E)}}if(I.size===0){let C=f.size>0?" Did you want to add --all?":"";l.reportWarning(Lxr.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${C}`);return}g1t.applyReleases(r,I,{report:l,exact:this.exact}),this.dryRun||(A||(this.all?await g1t.clearVersionFiles(r):await g1t.updateVersionFiles(r,[...I.keys()])),l.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};hUe.paths=[["version","apply"]];hUe.usage=fCe.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` +- `)}`);let f=new Set(PE.miscUtils.mapAndFilter(o,N=>{let B=e.tryWorkspaceByFilePath(N);return B===null?PE.miscUtils.mapAndFilter.skip:B}));if(A.length===0&&f.size===0&&!t)return null;let I=A.length===1?A[0]:Xv.ppath.join(l,`${PE.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),C=Xv.xfs.existsSync(I)?await Xv.xfs.readFilePromise(I,"utf8"):"{}",b=(0,fCe.parseSyml)(C),E=new Map;for(let N of b.declined||[]){let B=PE.structUtils.parseIdent(N),F=e.getWorkspaceByIdent(B);E.set(F,aH.DECLINE)}for(let[N,B]of Object.entries(b.releases||{})){let F=PE.structUtils.parseIdent(N),Q=e.getWorkspaceByIdent(F);E.set(Q,hUe(B))}return{project:e,root:n,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(N=>N.manifest.version!==null)),releases:E,async saveAll(){let N={},B=[],F=[];for(let Q of e.workspaces){if(Q.manifest.version===null)continue;let X=PE.structUtils.stringifyIdent(Q.anchoredLocator),ae=E.get(Q);ae===aH.DECLINE?B.push(X):typeof ae<"u"?N[X]=hUe(ae):f.has(Q)&&F.push(X)}await Xv.xfs.mkdirPromise(Xv.ppath.dirname(I),{recursive:!0}),await Xv.xfs.changeFilePromise(I,(0,fCe.stringifySyml)(new fCe.stringifySyml.PreserveOrdering({releases:Object.keys(N).length>0?N:void 0,declined:B.length>0?B:void 0,undecided:F.length>0?F:void 0})))}}}function sIc(e){return uGi(e).size>0||gGi(e).length>0}function uGi(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function gGi(e,{include:t=new Set}={}){let r=[],n=new Map(PE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l===aH.DECLINE?PE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(PE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l!==aH.DECLINE?PE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||n.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let l of PE.Manifest.hardDependencies)for(let A of o.manifest.getForScope(l).values()){let f=e.project.tryWorkspaceByDescriptor(A);f!==null&&n.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function oIc(e,t){let r=Yee.default.clean(t);for(let n of Object.values(aH))if(n!==aH.UNDECIDED&&n!==aH.DECLINE&&Yee.default.inc(e,n)===r)return n;return null}function Hxr(e,t){if(Yee.default.valid(t))return t;if(e===null)throw new IUe.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!Yee.default.valid(e))throw new IUe.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=Yee.default.inc(e,t);if(r===null)throw new IUe.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function aIc(e,t,{report:r,exact:n}){let a=new Map;for(let o of e.workspaces)for(let l of PE.Manifest.allDependencies)for(let A of o.manifest[l].values()){let f=e.tryWorkspaceByDescriptor(A);if(f===null||!t.has(f))continue;PE.miscUtils.getArrayWithDefault(a,f).push([o,l,A.identHash])}for(let[o,l]of t){let A=o.manifest.version;o.manifest.version=l,Yee.default.prerelease(l)===null?delete o.manifest.raw.stableVersion:o.manifest.raw.stableVersion||(o.manifest.raw.stableVersion=A);let f=o.manifest.name!==null?PE.structUtils.stringifyIdent(o.manifest.name):null;r.reportInfo(PE.MessageName.UNNAMED,`${PE.structUtils.prettyLocator(e.configuration,o.anchoredLocator)}: Bumped to ${l}`),r.reportJson({cwd:Xv.npath.fromPortablePath(o.cwd),ident:f,oldVersion:A,newVersion:l});let I=a.get(o);if(!(typeof I>"u"))for(let[C,b,E]of I){let N=C.manifest[b].get(E);if(typeof N>"u")throw new Error("Assertion failed: The dependency should have existed");let B=N.range,F=!1;if(B.startsWith(PE.WorkspaceResolver.protocol)&&(B=B.slice(PE.WorkspaceResolver.protocol.length),F=!0,B===o.relativeCwd))continue;let Q=B.match(eIc);if(!Q){r.reportWarning(PE.MessageName.UNNAMED,`Couldn't auto-upgrade range ${B} (in ${PE.structUtils.prettyLocator(e.configuration,C.anchoredLocator)})`);continue}let X=n?`${l}`:`${Q[1]}${l}`;F&&(X=`${PE.WorkspaceResolver.protocol}${X}`);let ae=PE.structUtils.makeDescriptor(N,X);C.manifest[b].set(E,ae)}}}var cIc=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function AGi(e,{current:t,prerelease:r}){let n=new Yee.default.SemVer(t),a=n.prerelease.slice(),o=[];n.prerelease=[],n.format()!==e&&(a.length=0);let l=!0,A=r.split(/\./g);for(let f of A){let I=cIc.get(f);if(typeof I>"u")o.push(f),a[0]===f?a.shift():l=!1;else{let C=l?I.extract(a):null;C!==null&&typeof C[0]=="number"?(o.push(I.generate(C[0])),a=C[1]):(o.push(I.generate()),l=!1)}}return n.prerelease&&(n.prerelease=[]),`${e}-${o.join(".")}`}});var fGi=H(Qxr=>{"use strict";Object.defineProperty(Qxr,"__esModule",{value:!0});var lIc=(Pa(),vi(Va)),dGi=el(),Yxr=yn(),pGi=yn(),ICe=($c(),vi(rg)),f1t=lIc.__importStar(mUe()),CUe=class extends dGi.BaseCommand{constructor(){super(...arguments),this.all=ICe.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=ICe.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=ICe.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.exact=ICe.Option.Boolean("--exact",!1,{description:"Use the exact version of each package, removes any range. Useful for nightly releases where the range might match another version."}),this.recursive=ICe.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=ICe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Yxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await pGi.Project.find(t,this.context.cwd),a=await Yxr.Cache.find(t);if(!n)throw new dGi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await pGi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await f1t.resolveVersionFiles(r,{prerelease:A}),I=new Map;if(this.all)I=f;else{let C=this.recursive?n.getRecursiveWorkspaceDependencies():[n];for(let b of C){let E=f.get(b);typeof E<"u"&&I.set(b,E)}}if(I.size===0){let C=f.size>0?" Did you want to add --all?":"";l.reportWarning(Yxr.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${C}`);return}f1t.applyReleases(r,I,{report:l,exact:this.exact}),this.dryRun||(A||(this.all?await f1t.clearVersionFiles(r):await f1t.updateVersionFiles(r,[...I.keys()])),l.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};CUe.paths=[["version","apply"]];CUe.usage=ICe.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` This command will apply the deferred version changes and remove their definitions from the repository. Note that if \`--prerelease\` is set, the given prerelease identifier (by default \`rc.%n\`) will be used on all new versions and the version definitions will be kept as-is. @@ -1083,44 +1083,44 @@ Additional information: BADCLIENT: Bad error code, ${re} not found in range ${S} - \`--all\` to apply the version bump on all packages in the repository Note that this command will also update the \`workspace:\` references across all your local workspaces, thus ensuring that they keep referring to the same workspaces even after the version bump. - `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});Vxr.default=hUe});var A1t=H(Pxr=>{"use strict";Object.defineProperty(Pxr,"__esModule",{value:!0});Pxr.checkRequirements=_fc;var mfc=(Pa(),vi(Va)),Cfc=mfc.__importDefault(wt("os"));function _fc({stdout:e}){if(Cfc.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var fGi=H(E_=>{"use strict";var Oxr=Bpt(),nDe=60103,rGi=60106;E_.Fragment=60107;E_.StrictMode=60108;E_.Profiler=60114;var nGi=60109,iGi=60110,sGi=60112;E_.Suspense=60113;var oGi=60115,aGi=60116;typeof Symbol=="function"&&Symbol.for&&(cH=Symbol.for,nDe=cH("react.element"),rGi=cH("react.portal"),E_.Fragment=cH("react.fragment"),E_.StrictMode=cH("react.strict_mode"),E_.Profiler=cH("react.profiler"),nGi=cH("react.provider"),iGi=cH("react.context"),sGi=cH("react.forward_ref"),E_.Suspense=cH("react.suspense"),oGi=cH("react.memo"),aGi=cH("react.lazy"));var cH,eGi=typeof Symbol=="function"&&Symbol.iterator;function yfc(e){return e===null||typeof e!="object"?null:(e=eGi&&e[eGi]||e["@@iterator"],typeof e=="function"?e:null)}function mUe(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";IGi.exports=fGi()});var _Gi=H(CUe=>{"use strict";var CGi=CUe&&CUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CUe,"__esModule",{value:!0});var hGi=CGi(vMe()),mGi=CGi(lBe()),Bfc=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(mGi.default.hide(),a=!0);let A=l+` -`;A!==n&&(n=A,e.write(hGi.default.eraseLines(r)+A),r=A.split(` -`).length)};return o.clear=()=>{e.write(hGi.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(mGi.default.show(),a=!1)},o};CUe.default={create:Bfc}});var yGi=H((xZu,_Ue)=>{_Ue.exports=function(t){var r={},n=Bpt(),a=sC(),o=kMe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;te{"use strict";Object.defineProperty(Xxr,"__esModule",{value:!0});Xxr.checkRequirements=AIc;var uIc=(Pa(),vi(Va)),gIc=uIc.__importDefault(wt("os"));function AIc({stdout:e}){if(gIc.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var DGi=H(E_=>{"use strict";var Uxr=Tpt(),sDe=60103,mGi=60106;E_.Fragment=60107;E_.StrictMode=60108;E_.Profiler=60114;var CGi=60109,_Gi=60110,yGi=60112;E_.Suspense=60113;var bGi=60115,EGi=60116;typeof Symbol=="function"&&Symbol.for&&(cH=Symbol.for,sDe=cH("react.element"),mGi=cH("react.portal"),E_.Fragment=cH("react.fragment"),E_.StrictMode=cH("react.strict_mode"),E_.Profiler=cH("react.profiler"),CGi=cH("react.provider"),_Gi=cH("react.context"),yGi=cH("react.forward_ref"),E_.Suspense=cH("react.suspense"),bGi=cH("react.memo"),EGi=cH("react.lazy"));var cH,IGi=typeof Symbol=="function"&&Symbol.iterator;function dIc(e){return e===null||typeof e!="object"?null:(e=IGi&&e[IGi]||e["@@iterator"],typeof e=="function"?e:null)}function _Ue(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";kGi.exports=DGi()});var ZGi=H(yUe=>{"use strict";var FGi=yUe&&yUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yUe,"__esModule",{value:!0});var xGi=FGi(wMe()),GGi=FGi(uBe()),mIc=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(GGi.default.hide(),a=!0);let A=l+` +`;A!==n&&(n=A,e.write(xGi.default.eraseLines(r)+A),r=A.split(` +`).length)};return o.clear=()=>{e.write(xGi.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(GGi.default.show(),a=!1)},o};yUe.default={create:mIc}});var LGi=H((HLu,bUe)=>{bUe.exports=function(t){var r={},n=Tpt(),a=sC(),o=GMe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;teUr||Le[dr]!==ft[Ur])return` -`+Le[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Ju(x):""}var Eg=[],OA=-1;function GA(x){return{current:x}}function $i(x){0>OA||(x.current=Eg[OA],Eg[OA]=null,OA--)}function dl(x,L){OA++,Eg[OA]=x.current,x.current=L}var Uf={},Kd=GA(Uf),oA=GA(!1),oo=Uf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return Uf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Le={},ft;for(ft in te)Le[ft]=L[ft];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Le),Le}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(oA),$i(Kd)}function ws(x,L,te){if(Kd.current!==Uf)throw Error(l(168));dl(Kd,L),dl(oA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Le in Re)if(!(Le in x))throw Error(l(108,k(L)||"Unknown",Le));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||Uf,oo=Kd.current,dl(Kd,x),dl(oA,oA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,oo),Re.__reactInternalMemoizedMergedChildContext=x,$i(oA),$i(Kd),dl(Kd,x)):$i(oA),dl(oA,te)}var As=null,Tf=null,cm=o.unstable_now;cm();var Fl=0,rc=8;function sd(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Om(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function il(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function FA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Le=0,ft=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(ft!==0)Re=ft,Le=rc=15;else if(ft=te&134217727,ft!==0){var mi=ft&~dr;mi!==0?(Re=sd(mi),Le=rc):(Ur&=ft,Ur!==0&&(Re=sd(Ur),Le=rc))}else ft=te&~dr,ft!==0?(Re=sd(ft),Le=rc):Ur!==0&&(Re=sd(Ur),Le=rc);if(Re===0)return 0;if(Re=31-Er(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function MA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-Er(L),x[L]=te}var Er=Math.clz32?Math.clz32:ls,Zt=Math.log,yn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/yn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Wa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,ld=o.unstable_requestPaint,Rp=o.unstable_now,np=o.unstable_getCurrentPriorityLevel,HA=o.unstable_ImmediatePriority,df=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,so=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Ml={},Dr=ld!==void 0?ld:function(){},Wn=null,di=null,aa=!1,Bo=Rp(),us=1e4>Bo?Rp:function(){return Rp()-Bo};function Ql(){switch(np()){case HA:return 99;case df:return 98;case Zs:return 97;case so:return 96;case Ea:return 95;default:throw Error(l(332))}}function LA(x){switch(x){case 99:return HA;case 98:return df;case 97:return Zs;case 96:return so;case 95:return Ea;default:throw Error(l(332))}}function pf(x,L){return x=LA(x),oa(x,L)}function ef(x,L,te){return x=LA(x),Fs(x,L,te)}function ip(){if(di!==null){var x=di;di=null,Wa(x)}_d()}function _d(){if(!aa&&Wn!==null){aa=!0;var x=0;try{var L=Wn;pf(99,function(){for(;xIu?(Cl=dc,dc=null):Cl=dc.sibling;var wl=Ho(xn,dc,Ci[Iu],Po);if(wl===null){dc===null&&(dc=Cl);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=Cl}if(Iu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;IuIu?(Cl=dc,dc=null):Cl=dc.sibling;var $f=Ho(xn,dc,wl.value,Po);if($f===null){dc===null&&(dc=Cl);break}x&&dc&&$f.alternate===null&&L(xn,dc),rn=ft($f,rn,Iu),Ra===null?ec=$f:Ra.sibling=$f,Ra=$f,dc=Cl}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;Iu++,wl=Ci.next())wl=Sl(xn,wl.value,Po),wl!==null&&(rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;Iu++,wl=Ci.next())wl=Wg(dc,xn,Iu,wl.value,Po),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?Iu:wl.key),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(j2){return L(xn,j2)}),ec}return function(xn,rn,Ci,Po){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Le(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Le(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=Id(Ci.props.children,xn.mode,Po,Ci.key),rn.return=xn,xn=rn):(Po=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Po),Po.ref=Lr(xn,rn,Ci),Po.return=xn,xn=Po)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Le(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=Ny(Ci,xn.mode,Po),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Le(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=ev(Ci,xn.mode,Po),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return cA(xn,rn,Ci,Po);if(De(Ci))return th(xn,rn,Ci,Po);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Nl={},ca=GA(Nl),Bl=GA(Nl),$g=GA(Nl);function SA(x){if(x===Nl)throw Error(l(174));return x}function lI(x,L){dl($g,L),dl(Bl,x),dl(ca,Nl),x=Tr(L),$i(ca),dl(ca,x)}function lp(){$i(ca),$i(Bl),$i($g)}function Ib(x){var L=SA($g.current),te=SA(ca.current);L=Nr(te,x.type,L),te!==L&&(dl(Bl,x),dl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var wd=GA(0);function z1(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||pu(te)||_g(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var T_=null,RC=null,Hm=!1;function YS(x,L){var te=Of(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Fg(x,L){switch(x.tag){case 5:return L=Xu(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function hb(x){if(Hm){var L=RC;if(L){var te=L;if(!Fg(x,L)){if(L=mI(te),!L||!Fg(x,L)){x.flags=x.flags&-1025|2,Hm=!1,T_=x;return}YS(T_,te)}T_=x,RC=Qh(L)}else x.flags=x.flags&-1025|2,Hm=!1,T_=x}}function gC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;T_=x}function NC(x){if(!Nn||x!==T_)return!1;if(!Hm)return gC(x),Hm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=RC;L;)YS(x,L),L=mI(L);if(gC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));RC=Wt(x)}else RC=T_?mI(x.stateNode):null;return!0}function Y2(){Nn&&(RC=T_=null,Hm=!1)}var U_=[];function DC(){for(var x=0;xft))throw Error(l(301));ft+=1,Mc=Td=null,L.updateQueue=null,kC.current=Jr,x=te(Re,Le)}while(sE)}if(kC.current=xc,L=Td!==null&&Td.next!==null,ph=0,Mc=Td=vA=null,Pf=!1,L)throw Error(l(300));return x}function um(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function gm(){if(Td===null){var x=vA.alternate;x=x!==null?x.memoizedState:null}else x=Td.next;var L=Mc===null?vA.memoizedState:Mc.next;if(L!==null)Mc=L,Td=x;else{if(x===null)throw Error(l(310));Td=x,x={memoizedState:Td.memoizedState,baseState:Td.baseState,baseQueue:Td.baseQueue,queue:Td.queue,next:null},Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Td,Le=Re.baseQueue,ft=te.pending;if(ft!==null){if(Le!==null){var dr=Le.next;Le.next=ft.next,ft.next=dr}Re.baseQueue=Le=ft,te.pending=null}if(Le!==null){Le=Le.next,Re=Re.baseState;var Ur=dr=ft=null,mi=Le;do{var Vi=mi.lane;if((ph&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,ft=Re):Ur=Ur.next=Ta,vA.lanes|=Vi,xC|=Vi}mi=mi.next}while(mi!==null&&mi!==Le);Ur===null?ft=Re:Ur.next=dr,YA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=ft,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Le=te.pending,ft=L.memoizedState;if(Le!==null){te.pending=null;var dr=Le=Le.next;do ft=x(ft,dr.action),dr=dr.next;while(dr!==Le);YA(ft,L.memoizedState)||(Ts=!0),L.memoizedState=ft,L.baseQueue===null&&(L.baseState=ft),te.lastRenderedState=ft}return[ft,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Le=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Le!==null?x=Le===Re:(x=x.mutableReadLanes,(x=(ph&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,U_.push(L))),x)return te(L._source);throw U_.push(L),Error(l(350))}function Kl(x,L,te,Re){var Le=fh;if(Le===null)throw Error(l(349));var ft=L._getVersion,dr=ft(L._source),Ur=kC.current,mi=Ur.useState(function(){return ki(Le,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var Sl=x.memoizedState,Ho=Sl.refs,Wg=Ho.getSnapshot,cA=Sl.source;Sl=Sl.subscribe;var th=vA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=ft(L._source);if(!YA(dr,xn)){xn=te(L._source),YA(Ta,xn)||(Vi(xn),xn=Jp(th),Le.mutableReadLanes|=xn&Le.pendingLanes),xn=Le.mutableReadLanes,Le.entangledLanes|=xn;for(var rn=Le.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),pf(97GT&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432)}else{if(!Le)if(x=z1(ft),x!==null){if(L.flags|=64,Le=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Ry(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!ft.alternate&&!Hm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>GT&&te!==1073741824&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432);Re.isBackwards?(ft.sibling=L.child,L.child=ft):(x=Re.last,x!==null?x.sibling=ft:L.child=ft,Re.last=ft)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=wd.current,dl(wd,Le?L&1|2:L&1),x):null;case 23:case 24:return Np(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function _b(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(lp(),$i(oA),$i(Kd),DC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(wd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(wd),null;case 4:return lp(),null;case 10:return XE(x),null;case 23:case 24:return Np(),null;default:return null}}function z_(x,L){try{var te="",Re=L;do te+=HS(Re),Re=Re.return;while(Re);var Le=te}catch(ft){Le=` +`+Le[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Ju(x):""}var Eg=[],OA=-1;function GA(x){return{current:x}}function $i(x){0>OA||(x.current=Eg[OA],Eg[OA]=null,OA--)}function dl(x,L){OA++,Eg[OA]=x.current,x.current=L}var Uf={},Kd=GA(Uf),oA=GA(!1),oo=Uf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return Uf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Le={},ft;for(ft in te)Le[ft]=L[ft];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Le),Le}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(oA),$i(Kd)}function ws(x,L,te){if(Kd.current!==Uf)throw Error(l(168));dl(Kd,L),dl(oA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Le in Re)if(!(Le in x))throw Error(l(108,k(L)||"Unknown",Le));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||Uf,oo=Kd.current,dl(Kd,x),dl(oA,oA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,oo),Re.__reactInternalMemoizedMergedChildContext=x,$i(oA),$i(Kd),dl(Kd,x)):$i(oA),dl(oA,te)}var As=null,Tf=null,cm=o.unstable_now;cm();var Fl=0,rc=8;function sd(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Om(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function il(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function FA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Le=0,ft=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(ft!==0)Re=ft,Le=rc=15;else if(ft=te&134217727,ft!==0){var mi=ft&~dr;mi!==0?(Re=sd(mi),Le=rc):(Ur&=ft,Ur!==0&&(Re=sd(Ur),Le=rc))}else ft=te&~dr,ft!==0?(Re=sd(ft),Le=rc):Ur!==0&&(Re=sd(Ur),Le=rc);if(Re===0)return 0;if(Re=31-Er(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function MA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-Er(L),x[L]=te}var Er=Math.clz32?Math.clz32:ls,Zt=Math.log,bn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/bn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Wa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,ld=o.unstable_requestPaint,Rp=o.unstable_now,np=o.unstable_getCurrentPriorityLevel,HA=o.unstable_ImmediatePriority,df=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,so=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Ml={},Dr=ld!==void 0?ld:function(){},Wn=null,di=null,aa=!1,Bo=Rp(),us=1e4>Bo?Rp:function(){return Rp()-Bo};function Ql(){switch(np()){case HA:return 99;case df:return 98;case Zs:return 97;case so:return 96;case Ea:return 95;default:throw Error(l(332))}}function LA(x){switch(x){case 99:return HA;case 98:return df;case 97:return Zs;case 96:return so;case 95:return Ea;default:throw Error(l(332))}}function pf(x,L){return x=LA(x),oa(x,L)}function ef(x,L,te){return x=LA(x),Fs(x,L,te)}function ip(){if(di!==null){var x=di;di=null,Wa(x)}_d()}function _d(){if(!aa&&Wn!==null){aa=!0;var x=0;try{var L=Wn;pf(99,function(){for(;xIu?(Cl=dc,dc=null):Cl=dc.sibling;var wl=Ho(xn,dc,Ci[Iu],Po);if(wl===null){dc===null&&(dc=Cl);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=Cl}if(Iu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;IuIu?(Cl=dc,dc=null):Cl=dc.sibling;var $f=Ho(xn,dc,wl.value,Po);if($f===null){dc===null&&(dc=Cl);break}x&&dc&&$f.alternate===null&&L(xn,dc),rn=ft($f,rn,Iu),Ra===null?ec=$f:Ra.sibling=$f,Ra=$f,dc=Cl}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;Iu++,wl=Ci.next())wl=Sl(xn,wl.value,Po),wl!==null&&(rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;Iu++,wl=Ci.next())wl=Wg(dc,xn,Iu,wl.value,Po),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?Iu:wl.key),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(j2){return L(xn,j2)}),ec}return function(xn,rn,Ci,Po){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Le(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Le(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=Id(Ci.props.children,xn.mode,Po,Ci.key),rn.return=xn,xn=rn):(Po=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Po),Po.ref=Lr(xn,rn,Ci),Po.return=xn,xn=Po)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Le(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=Ny(Ci,xn.mode,Po),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Le(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=ev(Ci,xn.mode,Po),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return cA(xn,rn,Ci,Po);if(De(Ci))return th(xn,rn,Ci,Po);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Nl={},ca=GA(Nl),Bl=GA(Nl),$g=GA(Nl);function SA(x){if(x===Nl)throw Error(l(174));return x}function lI(x,L){dl($g,L),dl(Bl,x),dl(ca,Nl),x=Tr(L),$i(ca),dl(ca,x)}function lp(){$i(ca),$i(Bl),$i($g)}function Ib(x){var L=SA($g.current),te=SA(ca.current);L=Nr(te,x.type,L),te!==L&&(dl(Bl,x),dl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var wd=GA(0);function z1(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||pu(te)||_g(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var T_=null,RC=null,Hm=!1;function YS(x,L){var te=Of(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Fg(x,L){switch(x.tag){case 5:return L=Xu(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function hb(x){if(Hm){var L=RC;if(L){var te=L;if(!Fg(x,L)){if(L=mI(te),!L||!Fg(x,L)){x.flags=x.flags&-1025|2,Hm=!1,T_=x;return}YS(T_,te)}T_=x,RC=Qh(L)}else x.flags=x.flags&-1025|2,Hm=!1,T_=x}}function gC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;T_=x}function NC(x){if(!Nn||x!==T_)return!1;if(!Hm)return gC(x),Hm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=RC;L;)YS(x,L),L=mI(L);if(gC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));RC=Wt(x)}else RC=T_?mI(x.stateNode):null;return!0}function Y2(){Nn&&(RC=T_=null,Hm=!1)}var U_=[];function DC(){for(var x=0;xft))throw Error(l(301));ft+=1,Mc=Td=null,L.updateQueue=null,kC.current=Jr,x=te(Re,Le)}while(sE)}if(kC.current=xc,L=Td!==null&&Td.next!==null,ph=0,Mc=Td=vA=null,Pf=!1,L)throw Error(l(300));return x}function um(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function gm(){if(Td===null){var x=vA.alternate;x=x!==null?x.memoizedState:null}else x=Td.next;var L=Mc===null?vA.memoizedState:Mc.next;if(L!==null)Mc=L,Td=x;else{if(x===null)throw Error(l(310));Td=x,x={memoizedState:Td.memoizedState,baseState:Td.baseState,baseQueue:Td.baseQueue,queue:Td.queue,next:null},Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Td,Le=Re.baseQueue,ft=te.pending;if(ft!==null){if(Le!==null){var dr=Le.next;Le.next=ft.next,ft.next=dr}Re.baseQueue=Le=ft,te.pending=null}if(Le!==null){Le=Le.next,Re=Re.baseState;var Ur=dr=ft=null,mi=Le;do{var Vi=mi.lane;if((ph&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,ft=Re):Ur=Ur.next=Ta,vA.lanes|=Vi,xC|=Vi}mi=mi.next}while(mi!==null&&mi!==Le);Ur===null?ft=Re:Ur.next=dr,YA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=ft,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Le=te.pending,ft=L.memoizedState;if(Le!==null){te.pending=null;var dr=Le=Le.next;do ft=x(ft,dr.action),dr=dr.next;while(dr!==Le);YA(ft,L.memoizedState)||(Ts=!0),L.memoizedState=ft,L.baseQueue===null&&(L.baseState=ft),te.lastRenderedState=ft}return[ft,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Le=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Le!==null?x=Le===Re:(x=x.mutableReadLanes,(x=(ph&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,U_.push(L))),x)return te(L._source);throw U_.push(L),Error(l(350))}function Kl(x,L,te,Re){var Le=fh;if(Le===null)throw Error(l(349));var ft=L._getVersion,dr=ft(L._source),Ur=kC.current,mi=Ur.useState(function(){return ki(Le,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var Sl=x.memoizedState,Ho=Sl.refs,Wg=Ho.getSnapshot,cA=Sl.source;Sl=Sl.subscribe;var th=vA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=ft(L._source);if(!YA(dr,xn)){xn=te(L._source),YA(Ta,xn)||(Vi(xn),xn=Jp(th),Le.mutableReadLanes|=xn&Le.pendingLanes),xn=Le.mutableReadLanes,Le.entangledLanes|=xn;for(var rn=Le.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),pf(97GT&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432)}else{if(!Le)if(x=z1(ft),x!==null){if(L.flags|=64,Le=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Ry(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!ft.alternate&&!Hm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>GT&&te!==1073741824&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432);Re.isBackwards?(ft.sibling=L.child,L.child=ft):(x=Re.last,x!==null?x.sibling=ft:L.child=ft,Re.last=ft)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=wd.current,dl(wd,Le?L&1|2:L&1),x):null;case 23:case 24:return Np(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function _b(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(lp(),$i(oA),$i(Kd),DC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(wd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(wd),null;case 4:return lp(),null;case 10:return XE(x),null;case 23:case 24:return Np(),null;default:return null}}function z_(x,L){try{var te="",Re=L;do te+=HS(Re),Re=Re.return;while(Re);var Le=te}catch(ft){Le=` Error generating stack: `+ft.message+` -`+ft.stack}return{value:x,source:L,stack:Le}}function zE(x,L){try{console.error(L.value)}catch(te){setTimeout(function(){throw te})}}var oB=typeof WeakMap=="function"?WeakMap:Map;function DT(x,L,te){te=lm(-1,te),te.tag=3,te.payload={element:null};var Re=L.value;return te.callback=function(){e2||(e2=!0,yd=Re),zE(x,L)},te}function aB(x,L,te){te=lm(-1,te),te.tag=3;var Re=x.type.getDerivedStateFromError;if(typeof Re=="function"){var Le=L.value;te.payload=function(){return zE(x,L),Re(Le)}}var ft=x.stateNode;return ft!==null&&typeof ft.componentDidCatch=="function"&&(te.callback=function(){typeof Re!="function"&&(bI===null?bI=new Set([this]):bI.add(this),zE(x,L));var dr=L.stack;this.componentDidCatch(L.value,{componentStack:dr!==null?dr:""})}),te}var jS=typeof WeakSet=="function"?WeakSet:Set;function XR(x){var L=x.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(te){i_(x,te)}else L.current=null}function zS(x,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&x!==null){var te=x.memoizedProps,Re=x.memoizedState;x=L.stateNode,L=x.getSnapshotBeforeUpdate(L.elementType===L.type?te:jd(L.type,te),Re),x.__reactInternalSnapshotBeforeUpdate=L}return;case 3:jt&&L.flags&256&&Ei(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(l(163))}function qE(x,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var te=L=L.next;do{if((te.tag&x)===x){var Re=te.destroy;te.destroy=void 0,Re!==void 0&&Re()}te=te.next}while(te!==L)}}function X2(x,L,te){switch(te.tag){case 0:case 11:case 15:case 22:if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{if((x.tag&3)===3){var Re=x.create;x.destroy=Re()}x=x.next}while(x!==L)}if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{var Le=x;Re=Le.next,Le=Le.tag,Le&4&&Le&1&&(hp(te,x),ny(te,x)),x=Re}while(x!==L)}return;case 1:x=te.stateNode,te.flags&4&&(L===null?x.componentDidMount():(Re=te.elementType===te.type?L.memoizedProps:jd(te.type,L.memoizedProps),x.componentDidUpdate(Re,L.memoizedState,x.__reactInternalSnapshotBeforeUpdate))),L=te.updateQueue,L!==null&&H2(te,L,x);return;case 3:if(L=te.updateQueue,L!==null){if(x=null,te.child!==null)switch(te.child.tag){case 5:x=Yt(te.child.stateNode);break;case 1:x=te.child.stateNode}H2(te,L,x)}return;case 5:x=te.stateNode,L===null&&te.flags&4&&ps(x,te.type,te.memoizedProps,te);return;case 6:return;case 4:return;case 12:return;case 13:Nn&&te.memoizedState===null&&(te=te.alternate,te!==null&&(te=te.memoizedState,te!==null&&(te=te.dehydrated,te!==null&&Ru(te))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(l(163))}function kT(x,L){if(jt)for(var te=x;;){if(te.tag===5){var Re=te.stateNode;L?iA(Re):vu(te.stateNode,te.memoizedProps)}else if(te.tag===6)Re=te.stateNode,L?ma(Re):li(Re,te.memoizedProps);else if((te.tag!==23&&te.tag!==24||te.memoizedState===null||te===x)&&te.child!==null){te.child.return=te,te=te.child;continue}if(te===x)break;for(;te.sibling===null;){if(te.return===null||te.return===x)return;te=te.return}te.sibling.return=te.return,te=te.sibling}}function pn(x,L){if(Tf&&typeof Tf.onCommitFiberUnmount=="function")try{Tf.onCommitFiberUnmount(As,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(x=L.updateQueue,x!==null&&(x=x.lastEffect,x!==null)){var te=x=x.next;do{var Re=te,Le=Re.destroy;if(Re=Re.tag,Le!==void 0)if(Re&4)hp(L,te);else{Re=L;try{Le()}catch(ft){i_(Re,ft)}}te=te.next}while(te!==x)}break;case 1:if(XR(L),x=L.stateNode,typeof x.componentWillUnmount=="function")try{x.props=L.memoizedProps,x.state=L.memoizedState,x.componentWillUnmount()}catch(ft){i_(L,ft)}break;case 5:XR(L);break;case 4:jt?RD(x,L):Fn&&Fn&&(L=L.stateNode.containerInfo,x=Xa(L),Wc(L,x))}}function q1(x,L){for(var te=L;;)if(pn(x,te),te.child===null||jt&&te.tag===4){if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return}te.sibling.return=te.return,te=te.sibling}else te.child.return=te,te=te.child}function J2(x){x.alternate=null,x.child=null,x.dependencies=null,x.firstEffect=null,x.lastEffect=null,x.memoizedProps=null,x.memoizedState=null,x.pendingProps=null,x.return=null,x.updateQueue=null}function ey(x){return x.tag===5||x.tag===3||x.tag===4}function up(x){if(jt){e:{for(var L=x.return;L!==null;){if(ey(L))break e;L=L.return}throw Error(l(160))}var te=L;switch(L=te.stateNode,te.tag){case 5:var Re=!1;break;case 3:L=L.containerInfo,Re=!0;break;case 4:L=L.containerInfo,Re=!0;break;default:throw Error(l(161))}te.flags&16&&(Nc(L),te.flags&=-17);e:t:for(te=x;;){for(;te.sibling===null;){if(te.return===null||ey(te.return)){te=null;break e}te=te.return}for(te.sibling.return=te.return,te=te.sibling;te.tag!==5&&te.tag!==6&&te.tag!==18;){if(te.flags&2||te.child===null||te.tag===4)continue t;te.child.return=te,te=te.child}if(!(te.flags&2)){te=te.stateNode;break e}}Re?Iw(x,te,L):cB(x,te,L)}}function Iw(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?Qa(te,x,L):Or(te,x);else if(Re!==4&&(x=x.child,x!==null))for(Iw(x,L,te),x=x.sibling;x!==null;)Iw(x,L,te),x=x.sibling}function cB(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?bo(te,x,L):Rn(te,x);else if(Re!==4&&(x=x.child,x!==null))for(cB(x,L,te),x=x.sibling;x!==null;)cB(x,L,te),x=x.sibling}function RD(x,L){for(var te=L,Re=!1,Le,ft;;){if(!Re){Re=te.return;e:for(;;){if(Re===null)throw Error(l(160));switch(Le=Re.stateNode,Re.tag){case 5:ft=!1;break e;case 3:Le=Le.containerInfo,ft=!0;break e;case 4:Le=Le.containerInfo,ft=!0;break e}Re=Re.return}Re=!0}if(te.tag===5||te.tag===6)q1(x,te),ft?Cg(Le,te.stateNode):gc(Le,te.stateNode);else if(te.tag===4){if(te.child!==null){Le=te.stateNode.containerInfo,ft=!0,te.child.return=te,te=te.child;continue}}else if(pn(x,te),te.child!==null){te.child.return=te,te=te.child;continue}if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return,te.tag===4&&(Re=!1)}te.sibling.return=te.return,te=te.sibling}}function Rd(x,L){if(jt){switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 1:return;case 5:var te=L.stateNode;if(te!=null){var Re=L.memoizedProps;x=x!==null?x.memoizedProps:Re;var Le=L.type,ft=L.updateQueue;L.updateQueue=null,ft!==null&&yo(te,ft,Le,x,Re,L)}return;case 6:if(L.stateNode===null)throw Error(l(162));te=L.memoizedProps,Qi(L.stateNode,x!==null?x.memoizedProps:te,te);return;case 3:Nn&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,Hu(L.containerInfo)));return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 17:return;case 23:case 24:kT(L,L.memoizedState!==null);return}throw Error(l(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 3:Nn&&(te=L.stateNode,te.hydrate&&(te.hydrate=!1,Hu(te.containerInfo)));break;case 23:case 24:return}e:if(Fn){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,Wc(L.containerInfo,L.pendingChildren);break e}throw Error(l(163))}}function JR(x){x.memoizedState!==null&&(hw=us(),jt&&kT(x.child,!0))}function ty(x){var L=x.updateQueue;if(L!==null){x.updateQueue=null;var te=x.stateNode;te===null&&(te=x.stateNode=new jS),L.forEach(function(Re){var Le=ZT.bind(null,x,Re);te.has(Re)||(te.add(Re),Re.then(Le,Le))})}}function cF(x,L){return x!==null&&(x=x.memoizedState,x===null||x.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var $1=0,$E=1,N_=2,e1=3,t1=4;if(typeof Symbol=="function"&&Symbol.for){var ry=Symbol.for;$1=ry("selector.component"),$E=ry("selector.has_pseudo_class"),N_=ry("selector.role"),e1=ry("selector.test_id"),t1=ry("selector.text")}function xT(x){var L=Hi(x);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(l(364));return L}if(x=Gc(x),x===null)throw Error(l(362));return x.stateNode.current}function yb(x,L){switch(L.$$typeof){case $1:if(x.type===L.value)return!0;break;case $E:e:{L=L.value,x=[x,0];for(var te=0;te";case $E:return":has("+(r_(x)||"")+")";case N_:return'[role="'+x.value+'"]';case t1:return'"'+x.value+'"';case e1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function Rh(x,L){var te=[];x=[x,0];for(var Re=0;ReLe&&(Le=dr),te&=~ft}if(te=Le,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*DD(te/1960))-te,10";case $E:return":has("+(r_(x)||"")+")";case N_:return'[role="'+x.value+'"]';case t1:return'"'+x.value+'"';case e1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function Rh(x,L){var te=[];x=[x,0];for(var Re=0;ReLe&&(Le=dr),te&=~ft}if(te=Le,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*DD(te/1960))-te,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Qp!==5&&(Qp=2),mi=z_(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:ft=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=DT(Ho,ft,L);CI(Ho,Ra);break e;case 1:ft=mi;var dc=Ho.type,Iu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||Iu!==null&&typeof Iu.componentDidCatch=="function"&&(bI===null||!bI.has(Iu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Cl=aB(Ho,ft,L);CI(Ho,Cl);break e}}Ho=Ho.return}while(Ho!==null)}iu(te)}catch(wl){L=wl,rf===te&&te!==null&&(rf=te=te.return);continue}break}while(!0)}function t2(){var x=q_.current;return q_.current=xc,x===null?xc:x}function Ro(x,L){var te=lc;lc|=16;var Re=t2();fh===x&&yI===L||Dm(x,L);do try{AE();break}catch(Le){Dp(x,Le)}while(!0);if(J_(),lc=te,q_.current=Re,rf!==null)throw Error(l(261));return fh=null,yI=0,Qp}function AE(){for(;rf!==null;)Xc(rf)}function AB(){for(;rf!==null&&!Ca();)Xc(rf)}function Xc(x){var L=Cx(x.alternate,x,aE);x.memoizedProps=x.pendingProps,L===null?iu(x):rf=L,kD.current=null}function iu(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=_b(L),te!==null){te.flags&=2047,rf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=KS(te,L,aE),te!==null){rf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||aE&1073741824||!(te.mode&4)){for(var Re=0,Le=te.child;Le!==null;)Re|=Le.lanes|Le.childLanes,Le=Le.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-hw?Dm(x,0):r1|=te),eh(x,L)}function ZT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(Ip===0&&(Ip=Ih),L=yg(62914560&~Ip),L===0&&(L=4194304)):L=Ql()===99?1:2:L=1),te=fu(),x=uE(x,L),x!==null&&(MA(x,L,te),eh(x,te))}var Cx;Cx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||oA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:RT(L),Y2();break;case 5:Ib(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:lI(L,L.stateNode.containerInfo);break;case 10:q0(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?jE(x,L,te):(dl(wd,wd.current&1),L=BA(x,L,te),L!==null?L.sibling:null);dl(wd,wd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return $I(x,L,te);L.flags|=64}var Le=L.memoizedState;if(Le!==null&&(Le.rendering=null,Le.tail=null,Le.lastEffect=null),dl(wd,wd.current),Re)break;return null;case 23:case 24:return L.lanes=0,uI(x,L,te)}return BA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Le=Ki(L,Kd.current),t_(L,te),Le=XS(null,L,Re,x,Le,te),L.flags|=1,typeof Le=="object"&&Le!==null&&typeof Le.render=="function"&&Le.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var ft=!0;Ma(L)}else ft=!1;L.memoizedState=Le.state!==null&&Le.state!==void 0?Le.state:null,fb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Le.updater=O,L.stateNode=Le,Le._reactInternals=L,sr(L,Re,x,te),L=sB(null,L,Re,!0,ft,te)}else L.tag=0,Qo(null,L,Le,te),L=L.child;return L;case 16:Le=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,ft=Le._init,Le=ft(Le._payload),L.type=Le,ft=L.tag=Vd(Le),x=jd(Le,x),ft){case 0:L=oE(null,L,Le,x,te);break e;case 1:L=TT(null,L,Le,x,te);break e;case 11:L=vg(null,L,Le,x,te);break e;case 14:L=Ng(null,L,Le,jd(Le.type,x),Re,te);break e}throw Error(l(306,Le,""))}return L;case 0:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),oE(x,L,Re,Le,te);case 1:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),TT(x,L,Re,Le,te);case 3:if(RT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Le=L.memoizedState,Le=Le!==null?Le.element:null,pe(x,L),_I(L,Re,null,te),Re=L.memoizedState.element,Re===Le)Y2(),L=BA(x,L,te);else{if(Le=L.stateNode,(ft=Le.hydrate)&&(Nn?(RC=Qh(L.stateNode.containerInfo),T_=L,ft=Hm=!0):ft=!1),ft){if(Nn&&(x=Le.mutableSourceEagerHydrationData,x!=null))for(Le=0;Le=Vi&&ft>=Sl&&Le<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(ft!==Sl||te.height!==mi.height||TaLe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),Taft&&(mi.height+=Sl-ft,mi.y=ft),Hote&&(te=dr)),dr ")+` No matching component was found for: - `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Yt(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:bL,findFiberByHostInstance:x.findFiberByHostInstance||gF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Tf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=bb(x,L);var Le=zr(x,te,Re).disconnect;return{disconnect:function(){Le()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Fl;try{return Fl=x,L()}finally{Fl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(b0(),ip())}},r.updateContainer=function(x,L,te,Re){var Le=L.current,ft=fu(),dr=Jp(Le);e:if(te){te=te._reactInternals;t:{if(et(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=Uf;return L.context===null?L.context=te:L.pendingContext=te,L=lm(ft,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),Kf(Le,L),dC(Le,dr,ft),dr},r}});var EGi=H((GZu,bGi)=>{"use strict";bGi.exports=yGi()});var SGi=H(yUe=>{"use strict";var wfc=yUe&&yUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yUe,"__esModule",{value:!0});var Tfc=wfc(GMe()),Xxr={};yUe.default=e=>{if(e.length===0)return{width:0,height:0};if(Xxr[e])return Xxr[e];let t=Tfc.default(e),r=e.split(` -`).length;return Xxr[e]={width:t,height:r},{width:t,height:r}}});var vGi=H(bUe=>{"use strict";var Rfc=bUe&&bUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bUe,"__esModule",{value:!0});var S_=Rfc(WW()),Nfc=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?S_.default.POSITION_TYPE_ABSOLUTE:S_.default.POSITION_TYPE_RELATIVE)},Dfc=(e,t)=>{"marginLeft"in t&&e.setMargin(S_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(S_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(S_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(S_.default.EDGE_BOTTOM,t.marginBottom||0)},kfc=(e,t)=>{"paddingLeft"in t&&e.setPadding(S_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(S_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(S_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(S_.default.EDGE_BOTTOM,t.paddingBottom||0)},xfc=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(S_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(S_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(S_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(S_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(S_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(S_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(S_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(S_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(S_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(S_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(S_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(S_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(S_.default.JUSTIFY_SPACE_AROUND))},Gfc=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},Ffc=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?S_.default.DISPLAY_FLEX:S_.default.DISPLAY_NONE)},Zfc=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(S_.default.EDGE_TOP,r),e.setBorder(S_.default.EDGE_BOTTOM,r),e.setBorder(S_.default.EDGE_LEFT,r),e.setBorder(S_.default.EDGE_RIGHT,r)}};bUe.default=(e,t={})=>{Nfc(e,t),Dfc(e,t),kfc(e,t),xfc(e,t),Gfc(e,t),Ffc(e,t),Zfc(e,t)}});var Uxr=H(EUe=>{"use strict";var BGi=EUe&&EUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EUe,"__esModule",{value:!0});var Lfc=BGi(OIr()),Vfc=BGi(MIr()),Jxr={};EUe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(Jxr[n])return Jxr[n];let a=e;if(r==="wrap"&&(a=Lfc.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=Vfc.default(e,t,{position:o})}return Jxr[n]=a,a}});var jxr=H(Kxr=>{"use strict";Object.defineProperty(Kxr,"__esModule",{value:!0});var wGi=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=wGi(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};Kxr.default=wGi});var zxr=H(Y1=>{"use strict";var SUe=Y1&&Y1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Y1,"__esModule",{value:!0});Y1.setTextNodeValue=Y1.createTextNode=Y1.setStyle=Y1.setAttribute=Y1.removeChildNode=Y1.insertBeforeNode=Y1.appendChildNode=Y1.createNode=Y1.TEXT_NAME=void 0;var Pfc=SUe(WW()),TGi=SUe(SGi()),Wfc=SUe(vGi()),Ofc=SUe(Uxr()),Mfc=SUe(jxr());Y1.TEXT_NAME="#text";Y1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:Pfc.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(Hfc.bind(null,r))),r};Y1.appendChildNode=(e,t)=>{var r;t.parentNode&&Y1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&f1t(e)};Y1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&Y1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&f1t(e)};Y1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&f1t(e)};Y1.setAttribute=(e,t,r)=>{e.attributes[t]=r};Y1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&Wfc.default(e.yogaNode,t)};Y1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return Y1.setTextNodeValue(t,e),t};var Hfc=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:Mfc.default(e),o=TGi.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=Ofc.default(a,t,l);return TGi.default(A)},RGi=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:RGi(e.parentNode)},f1t=e=>{let t=RGi(e);t?.markDirty()};Y1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,f1t(e)}});var GGi=H(vUe=>{"use strict";var xGi=vUe&&vUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vUe,"__esModule",{value:!0});var NGi=kMe(),Yfc=xGi(EGi()),DGi=xGi(WW()),FG=zxr(),kGi=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};vUe.default=Yfc.default({schedulePassiveEffects:NGi.unstable_scheduleCallback,cancelPassiveEffects:NGi.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=FG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?FG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:FG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return FG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{FG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{FG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(DGi.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(DGi.default.DISPLAY_FLEX)},appendInitialChild:FG.appendChildNode,appendChild:FG.appendChildNode,insertBefore:FG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:FG.appendChildNode,insertInContainerBefore:FG.insertBeforeNode,removeChildFromContainer:(e,t)=>{FG.removeChildNode(e,t),kGi(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?FG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:FG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{FG.setTextNodeValue(e,r)},removeChild:(e,t)=>{FG.removeChildNode(e,t),kGi(t.yogaNode)}})});var FGi=H(BUe=>{"use strict";var Qfc=BUe&&BUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BUe,"__esModule",{value:!0});var I1t=Qfc(WW());BUe.default=e=>e.getComputedWidth()-e.getComputedPadding(I1t.default.EDGE_LEFT)-e.getComputedPadding(I1t.default.EDGE_RIGHT)-e.getComputedBorder(I1t.default.EDGE_LEFT)-e.getComputedBorder(I1t.default.EDGE_RIGHT)});var qxr=H(TUe=>{"use strict";var Xfc=TUe&&TUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TUe,"__esModule",{value:!0});var wUe=Xfc(VK()),Jfc=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,Ufc=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,h1t=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);TUe.default=(e,t,r)=>{if(!t)return e;if(t in wUe.default){let a=h1t(t,r);return wUe.default[a](e)}if(t.startsWith("#")){let a=h1t("hex",r);return wUe.default[a](t)(e)}if(t.startsWith("ansi")){let a=Ufc.exec(t);if(!a)return e;let o=h1t(a[1],r),l=Number(a[2]);return wUe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=Jfc.exec(t);if(!a)return e;let o=h1t(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return wUe.default[o](l,A,f)(e)}return e}});var LGi=H(RUe=>{"use strict";var ZGi=RUe&&RUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RUe,"__esModule",{value:!0});var Kfc=ZGi(jIr()),$xr=ZGi(qxr());RUe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=Kfc.default[r.style.borderStyle],f=$xr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=($xr.default(A.vertical,l,"foreground")+` -`).repeat(o-2),C=$xr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var PGi=H(NUe=>{"use strict";var ICe=NUe&&NUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NUe,"__esModule",{value:!0});var jfc=ICe(WW()),zfc=ICe(GMe()),qfc=ICe(UIr()),$fc=ICe(Uxr()),eIc=ICe(FGi()),tIc=ICe(jxr()),rIc=ICe(LGi()),nIc=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` -`.repeat(o)+qfc.default(t,a)}return t},VGi=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===jfc.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=tIc.default(e);if(E.length>0){let N=zfc.default(E),B=eIc.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=$fc.default(E,B,F)}E=nIc(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&rIc.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)VGi(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};NUe.default=VGi});var MGi=H(DUe=>{"use strict";var OGi=DUe&&DUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DUe,"__esModule",{value:!0});var WGi=OGi(Rpt()),iIc=OGi(ABe()),eGr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` -`),height:t.length}}};DUe.default=eGr});var QGi=H(kUe=>{"use strict";var tGr=kUe&&kUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kUe,"__esModule",{value:!0});var sIc=tGr(WW()),HGi=tGr(PGi()),YGi=tGr(MGi());kUe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,sIc.default.DIRECTION_LTR);let n=new YGi.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});HGi.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new YGi.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),HGi.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var nGr=H(rGr=>{"use strict";Object.defineProperty(rGr,"__esModule",{value:!0});rGr.default=new WeakMap});var sGr=H(iGr=>{"use strict";Object.defineProperty(iGr,"__esModule",{value:!0});var oIc=sC(),XGi=oIc.createContext({exit:()=>{}});XGi.displayName="InternalAppContext";iGr.default=XGi});var aGr=H(oGr=>{"use strict";Object.defineProperty(oGr,"__esModule",{value:!0});var aIc=sC(),JGi=aIc.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});JGi.displayName="InternalStdinContext";oGr.default=JGi});var lGr=H(cGr=>{"use strict";Object.defineProperty(cGr,"__esModule",{value:!0});var cIc=sC(),UGi=cIc.createContext({stdout:void 0,write:()=>{}});UGi.displayName="InternalStdoutContext";cGr.default=UGi});var gGr=H(uGr=>{"use strict";Object.defineProperty(uGr,"__esModule",{value:!0});var lIc=sC(),KGi=lIc.createContext({stderr:void 0,write:()=>{}});KGi.displayName="InternalStderrContext";uGr.default=KGi});var m1t=H(AGr=>{"use strict";Object.defineProperty(AGr,"__esModule",{value:!0});var uIc=sC(),jGi=uIc.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});jGi.displayName="InternalFocusContext";AGr.default=jGi});var C1t=H(l4=>{"use strict";var gIc=l4&&l4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),AIc=l4&&l4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dIc=l4&&l4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&gIc(t,e,r);return AIc(t,e),t},pIc=l4&&l4.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=pIc(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return zGi.default.createElement("ink-box",{ref:t,style:a},r)});dGr.displayName="Box";dGr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};l4.default=dGr});var IGr=H(xUe=>{"use strict";var pGr=xUe&&xUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xUe,"__esModule",{value:!0});var fIc=pGr(sC()),sDe=pGr(VK()),qGi=pGr(qxr()),fGr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=sDe.default.dim(b)),e&&(b=qGi.default(b,e,"foreground")),t&&(b=qGi.default(b,t,"background")),n&&(b=sDe.default.bold(b)),a&&(b=sDe.default.italic(b)),o&&(b=sDe.default.underline(b)),l&&(b=sDe.default.strikethrough(b)),A&&(b=sDe.default.inverse(b)),b);return fIc.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};fGr.displayName="Text";fGr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};xUe.default=fGr});var rFi=H(u4=>{"use strict";var IIc=u4&&u4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hIc=u4&&u4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mIc=u4&&u4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&IIc(t,e,r);return hIc(t,e),t},GUe=u4&&u4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u4,"__esModule",{value:!0});var $Gi=mIc(wt("fs")),GR=GUe(sC()),eFi=GUe(Fpt()),CIc=GUe(fhr()),Qee=GUe(C1t()),Ej=GUe(IGr()),tFi=new eFi.default({cwd:process.cwd(),internals:eFi.default.nodeInternals()}),_Ic=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?tFi.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&$Gi.existsSync(r.file)){let o=$Gi.readFileSync(r.file,"utf8");if(n=CIc.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return GR.default.createElement(Qee.default,{flexDirection:"column",padding:1},GR.default.createElement(Qee.default,null,GR.default.createElement(Ej.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),GR.default.createElement(Ej.default,null," ",e.message)),r&&GR.default.createElement(Qee.default,{marginTop:1},GR.default.createElement(Ej.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&GR.default.createElement(Qee.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>GR.default.createElement(Qee.default,{key:o},GR.default.createElement(Qee.default,{width:a+1},GR.default.createElement(Ej.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),GR.default.createElement(Ej.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&GR.default.createElement(Qee.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let l=tFi.parseLine(o);return l?GR.default.createElement(Qee.default,{key:o},GR.default.createElement(Ej.default,{dimColor:!0},"- "),GR.default.createElement(Ej.default,{dimColor:!0,bold:!0},l.function),GR.default.createElement(Ej.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):GR.default.createElement(Qee.default,{key:o},GR.default.createElement(Ej.default,{dimColor:!0},"- "),GR.default.createElement(Ej.default,{dimColor:!0,bold:!0},o))})))};u4.default=_Ic});var iFi=H(g4=>{"use strict";var yIc=g4&&g4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bIc=g4&&g4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),EIc=g4&&g4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&yIc(t,e,r);return bIc(t,e),t},mCe=g4&&g4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g4,"__esModule",{value:!0});var hCe=EIc(sC()),nFi=mCe(lBe()),SIc=mCe(sGr()),vIc=mCe(aGr()),BIc=mCe(lGr()),wIc=mCe(gGr()),TIc=mCe(m1t()),RIc=mCe(rFi()),NIc=" ",DIc="\x1B[Z",kIc="\x1B",_1t=class extends hCe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. + `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Yt(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:bL,findFiberByHostInstance:x.findFiberByHostInstance||gF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Tf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=bb(x,L);var Le=zr(x,te,Re).disconnect;return{disconnect:function(){Le()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Fl;try{return Fl=x,L()}finally{Fl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(b0(),ip())}},r.updateContainer=function(x,L,te,Re){var Le=L.current,ft=fu(),dr=Jp(Le);e:if(te){te=te._reactInternals;t:{if(et(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=Uf;return L.context===null?L.context=te:L.pendingContext=te,L=lm(ft,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),Kf(Le,L),dC(Le,dr,ft),dr},r}});var PGi=H((YLu,VGi)=>{"use strict";VGi.exports=LGi()});var WGi=H(EUe=>{"use strict";var CIc=EUe&&EUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EUe,"__esModule",{value:!0});var _Ic=CIc(ZMe()),$xr={};EUe.default=e=>{if(e.length===0)return{width:0,height:0};if($xr[e])return $xr[e];let t=_Ic.default(e),r=e.split(` +`).length;return $xr[e]={width:t,height:r},{width:t,height:r}}});var OGi=H(SUe=>{"use strict";var yIc=SUe&&SUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SUe,"__esModule",{value:!0});var S_=yIc(WW()),bIc=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?S_.default.POSITION_TYPE_ABSOLUTE:S_.default.POSITION_TYPE_RELATIVE)},EIc=(e,t)=>{"marginLeft"in t&&e.setMargin(S_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(S_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(S_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(S_.default.EDGE_BOTTOM,t.marginBottom||0)},SIc=(e,t)=>{"paddingLeft"in t&&e.setPadding(S_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(S_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(S_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(S_.default.EDGE_BOTTOM,t.paddingBottom||0)},vIc=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(S_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(S_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(S_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(S_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(S_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(S_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(S_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(S_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(S_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(S_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(S_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(S_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(S_.default.JUSTIFY_SPACE_AROUND))},BIc=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},wIc=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?S_.default.DISPLAY_FLEX:S_.default.DISPLAY_NONE)},TIc=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(S_.default.EDGE_TOP,r),e.setBorder(S_.default.EDGE_BOTTOM,r),e.setBorder(S_.default.EDGE_LEFT,r),e.setBorder(S_.default.EDGE_RIGHT,r)}};SUe.default=(e,t={})=>{bIc(e,t),EIc(e,t),SIc(e,t),vIc(e,t),BIc(e,t),wIc(e,t),TIc(e,t)}});var tGr=H(vUe=>{"use strict";var MGi=vUe&&vUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vUe,"__esModule",{value:!0});var RIc=MGi(QIr()),NIc=MGi(XIr()),eGr={};vUe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(eGr[n])return eGr[n];let a=e;if(r==="wrap"&&(a=RIc.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=NIc.default(e,t,{position:o})}return eGr[n]=a,a}});var nGr=H(rGr=>{"use strict";Object.defineProperty(rGr,"__esModule",{value:!0});var HGi=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=HGi(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};rGr.default=HGi});var iGr=H(Y1=>{"use strict";var BUe=Y1&&Y1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Y1,"__esModule",{value:!0});Y1.setTextNodeValue=Y1.createTextNode=Y1.setStyle=Y1.setAttribute=Y1.removeChildNode=Y1.insertBeforeNode=Y1.appendChildNode=Y1.createNode=Y1.TEXT_NAME=void 0;var DIc=BUe(WW()),YGi=BUe(WGi()),kIc=BUe(OGi()),xIc=BUe(tGr()),GIc=BUe(nGr());Y1.TEXT_NAME="#text";Y1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:DIc.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(FIc.bind(null,r))),r};Y1.appendChildNode=(e,t)=>{var r;t.parentNode&&Y1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&C1t(e)};Y1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&Y1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&C1t(e)};Y1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&C1t(e)};Y1.setAttribute=(e,t,r)=>{e.attributes[t]=r};Y1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&kIc.default(e.yogaNode,t)};Y1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return Y1.setTextNodeValue(t,e),t};var FIc=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:GIc.default(e),o=YGi.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=xIc.default(a,t,l);return YGi.default(A)},QGi=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:QGi(e.parentNode)},C1t=e=>{let t=QGi(e);t?.markDirty()};Y1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,C1t(e)}});var jGi=H(wUe=>{"use strict";var KGi=wUe&&wUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wUe,"__esModule",{value:!0});var XGi=GMe(),ZIc=KGi(PGi()),JGi=KGi(WW()),FG=iGr(),UGi=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};wUe.default=ZIc.default({schedulePassiveEffects:XGi.unstable_scheduleCallback,cancelPassiveEffects:XGi.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=FG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?FG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:FG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return FG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{FG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{FG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(JGi.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(JGi.default.DISPLAY_FLEX)},appendInitialChild:FG.appendChildNode,appendChild:FG.appendChildNode,insertBefore:FG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:FG.appendChildNode,insertInContainerBefore:FG.insertBeforeNode,removeChildFromContainer:(e,t)=>{FG.removeChildNode(e,t),UGi(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?FG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:FG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{FG.setTextNodeValue(e,r)},removeChild:(e,t)=>{FG.removeChildNode(e,t),UGi(t.yogaNode)}})});var zGi=H(TUe=>{"use strict";var LIc=TUe&&TUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TUe,"__esModule",{value:!0});var _1t=LIc(WW());TUe.default=e=>e.getComputedWidth()-e.getComputedPadding(_1t.default.EDGE_LEFT)-e.getComputedPadding(_1t.default.EDGE_RIGHT)-e.getComputedBorder(_1t.default.EDGE_LEFT)-e.getComputedBorder(_1t.default.EDGE_RIGHT)});var sGr=H(NUe=>{"use strict";var VIc=NUe&&NUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NUe,"__esModule",{value:!0});var RUe=VIc(VK()),PIc=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,WIc=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,y1t=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);NUe.default=(e,t,r)=>{if(!t)return e;if(t in RUe.default){let a=y1t(t,r);return RUe.default[a](e)}if(t.startsWith("#")){let a=y1t("hex",r);return RUe.default[a](t)(e)}if(t.startsWith("ansi")){let a=WIc.exec(t);if(!a)return e;let o=y1t(a[1],r),l=Number(a[2]);return RUe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=PIc.exec(t);if(!a)return e;let o=y1t(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return RUe.default[o](l,A,f)(e)}return e}});var $Gi=H(DUe=>{"use strict";var qGi=DUe&&DUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DUe,"__esModule",{value:!0});var OIc=qGi(ehr()),oGr=qGi(sGr());DUe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=OIc.default[r.style.borderStyle],f=oGr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(oGr.default(A.vertical,l,"foreground")+` +`).repeat(o-2),C=oGr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var tFi=H(kUe=>{"use strict";var hCe=kUe&&kUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kUe,"__esModule",{value:!0});var MIc=hCe(WW()),HIc=hCe(ZMe()),YIc=hCe(qIr()),QIc=hCe(tGr()),XIc=hCe(zGi()),JIc=hCe(nGr()),UIc=hCe($Gi()),KIc=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` +`.repeat(o)+YIc.default(t,a)}return t},eFi=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===MIc.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=JIc.default(e);if(E.length>0){let N=HIc.default(E),B=XIc.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=QIc.default(E,B,F)}E=KIc(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&UIc.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)eFi(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};kUe.default=eFi});var iFi=H(xUe=>{"use strict";var nFi=xUe&&xUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xUe,"__esModule",{value:!0});var rFi=nFi(Dpt()),jIc=nFi(dBe()),aGr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` +`),height:t.length}}};xUe.default=aGr});var aFi=H(GUe=>{"use strict";var cGr=GUe&&GUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GUe,"__esModule",{value:!0});var zIc=cGr(WW()),sFi=cGr(tFi()),oFi=cGr(iFi());GUe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,zIc.default.DIRECTION_LTR);let n=new oFi.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});sFi.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new oFi.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),sFi.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var uGr=H(lGr=>{"use strict";Object.defineProperty(lGr,"__esModule",{value:!0});lGr.default=new WeakMap});var AGr=H(gGr=>{"use strict";Object.defineProperty(gGr,"__esModule",{value:!0});var qIc=sC(),cFi=qIc.createContext({exit:()=>{}});cFi.displayName="InternalAppContext";gGr.default=cFi});var pGr=H(dGr=>{"use strict";Object.defineProperty(dGr,"__esModule",{value:!0});var $Ic=sC(),lFi=$Ic.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});lFi.displayName="InternalStdinContext";dGr.default=lFi});var IGr=H(fGr=>{"use strict";Object.defineProperty(fGr,"__esModule",{value:!0});var ehc=sC(),uFi=ehc.createContext({stdout:void 0,write:()=>{}});uFi.displayName="InternalStdoutContext";fGr.default=uFi});var mGr=H(hGr=>{"use strict";Object.defineProperty(hGr,"__esModule",{value:!0});var thc=sC(),gFi=thc.createContext({stderr:void 0,write:()=>{}});gFi.displayName="InternalStderrContext";hGr.default=gFi});var b1t=H(CGr=>{"use strict";Object.defineProperty(CGr,"__esModule",{value:!0});var rhc=sC(),AFi=rhc.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});AFi.displayName="InternalFocusContext";CGr.default=AFi});var E1t=H(l4=>{"use strict";var nhc=l4&&l4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ihc=l4&&l4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),shc=l4&&l4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&nhc(t,e,r);return ihc(t,e),t},ohc=l4&&l4.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=ohc(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return dFi.default.createElement("ink-box",{ref:t,style:a},r)});_Gr.displayName="Box";_Gr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};l4.default=_Gr});var EGr=H(FUe=>{"use strict";var yGr=FUe&&FUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FUe,"__esModule",{value:!0});var ahc=yGr(sC()),aDe=yGr(VK()),pFi=yGr(sGr()),bGr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=aDe.default.dim(b)),e&&(b=pFi.default(b,e,"foreground")),t&&(b=pFi.default(b,t,"background")),n&&(b=aDe.default.bold(b)),a&&(b=aDe.default.italic(b)),o&&(b=aDe.default.underline(b)),l&&(b=aDe.default.strikethrough(b)),A&&(b=aDe.default.inverse(b)),b);return ahc.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};bGr.displayName="Text";bGr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};FUe.default=bGr});var mFi=H(u4=>{"use strict";var chc=u4&&u4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lhc=u4&&u4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),uhc=u4&&u4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&chc(t,e,r);return lhc(t,e),t},ZUe=u4&&u4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u4,"__esModule",{value:!0});var fFi=uhc(wt("fs")),GR=ZUe(sC()),IFi=ZUe(Lpt()),ghc=ZUe(Chr()),Xee=ZUe(E1t()),Ej=ZUe(EGr()),hFi=new IFi.default({cwd:process.cwd(),internals:IFi.default.nodeInternals()}),Ahc=({error:e})=>{let t=e.stack?e.stack.split(` +`).slice(1):void 0,r=t?hFi.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&fFi.existsSync(r.file)){let o=fFi.readFileSync(r.file,"utf8");if(n=ghc.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return GR.default.createElement(Xee.default,{flexDirection:"column",padding:1},GR.default.createElement(Xee.default,null,GR.default.createElement(Ej.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),GR.default.createElement(Ej.default,null," ",e.message)),r&&GR.default.createElement(Xee.default,{marginTop:1},GR.default.createElement(Ej.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&GR.default.createElement(Xee.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>GR.default.createElement(Xee.default,{key:o},GR.default.createElement(Xee.default,{width:a+1},GR.default.createElement(Ej.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),GR.default.createElement(Ej.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&GR.default.createElement(Xee.default,{marginTop:1,flexDirection:"column"},e.stack.split(` +`).slice(1).map(o=>{let l=hFi.parseLine(o);return l?GR.default.createElement(Xee.default,{key:o},GR.default.createElement(Ej.default,{dimColor:!0},"- "),GR.default.createElement(Ej.default,{dimColor:!0,bold:!0},l.function),GR.default.createElement(Ej.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):GR.default.createElement(Xee.default,{key:o},GR.default.createElement(Ej.default,{dimColor:!0},"- "),GR.default.createElement(Ej.default,{dimColor:!0,bold:!0},o))})))};u4.default=Ahc});var _Fi=H(g4=>{"use strict";var dhc=g4&&g4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),phc=g4&&g4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),fhc=g4&&g4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&dhc(t,e,r);return phc(t,e),t},CCe=g4&&g4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g4,"__esModule",{value:!0});var mCe=fhc(sC()),CFi=CCe(uBe()),Ihc=CCe(AGr()),hhc=CCe(pGr()),mhc=CCe(IGr()),Chc=CCe(mGr()),_hc=CCe(b1t()),yhc=CCe(mFi()),bhc=" ",Ehc="\x1B[Z",Shc="\x1B",S1t=class extends mCe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===kIc&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===NIc&&this.focusNext(),t===DIc&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return hCe.default.createElement(SIc.default.Provider,{value:{exit:this.handleExit}},hCe.default.createElement(vIc.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},hCe.default.createElement(BIc.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},hCe.default.createElement(wIc.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},hCe.default.createElement(TIc.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?hCe.default.createElement(RIc.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){nFi.default.hide(this.props.stdout)}componentWillUnmount(){nFi.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};g4.default=_1t;_1t.displayName="InternalApp"});var aFi=H(A4=>{"use strict";var xIc=A4&&A4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),GIc=A4&&A4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),FIc=A4&&A4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&xIc(t,e,r);return GIc(t,e),t},d4=A4&&A4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A4,"__esModule",{value:!0});var ZIc=d4(sC()),sFi=AIr(),LIc=d4(_Gi()),VIc=d4(vMe()),PIc=d4(hIr()),WIc=d4(mIr()),hGr=d4(GGi()),OIc=d4(QGi()),MIc=d4(mpt()),HIc=d4(rhr()),YIc=FIc(zxr()),QIc=d4(nGr()),XIc=d4(iFi()),oDe=process.env.CI==="false"?!1:PIc.default,oFi=()=>{},mGr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=OIc.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(oDe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(VIc.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},WIc.default(this),this.options=t,this.rootNode=YIc.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:sFi.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=LIc.default.create(t.stdout),this.throttledLog=t.debug?this.log:sFi.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=hGr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=MIc.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),oDe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=ZIc.default.createElement(XIc.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);hGr.default.updateContainer(r,this.container,null,oFi)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(oDe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(oDe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),oDe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,hGr.default.updateContainer(null,this.container,null,oFi),QIc.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!oDe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=HIc.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};A4.default=mGr});var lFi=H(FUe=>{"use strict";var cFi=FUe&&FUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FUe,"__esModule",{value:!0});var JIc=cFi(aFi()),y1t=cFi(nGr()),UIc=wt("stream"),KIc=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},jIc(t)),n=zIc(r.stdout,()=>new JIc.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>y1t.default.delete(r.stdout),clear:n.clear}};FUe.default=KIc;var jIc=(e={})=>e instanceof UIc.Stream?{stdout:e,stdin:process.stdin}:e,zIc=(e,t)=>{let r;return y1t.default.has(e)?r=y1t.default.get(e):(r=t(),y1t.default.set(e,r)),r}});var gFi=H(Xee=>{"use strict";var qIc=Xee&&Xee.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Ic=Xee&&Xee.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ehc=Xee&&Xee.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&qIc(t,e,r);return $Ic(t,e),t};Object.defineProperty(Xee,"__esModule",{value:!0});var ZUe=ehc(sC()),uFi=e=>{let{items:t,children:r,style:n}=e,[a,o]=ZUe.useState(0),l=ZUe.useMemo(()=>t.slice(a),[t,a]);ZUe.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=ZUe.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return ZUe.default.createElement("ink-box",{internal_static:!0,style:f},A)};uFi.displayName="Static";Xee.default=uFi});var dFi=H(LUe=>{"use strict";var thc=LUe&&LUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LUe,"__esModule",{value:!0});var rhc=thc(sC()),AFi=({children:e,transform:t})=>e==null?null:rhc.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);AFi.displayName="Transform";LUe.default=AFi});var fFi=H(VUe=>{"use strict";var nhc=VUe&&VUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VUe,"__esModule",{value:!0});var ihc=nhc(sC()),pFi=({count:e=1})=>ihc.default.createElement("ink-text",null,` -`.repeat(e));pFi.displayName="Newline";VUe.default=pFi});var mFi=H(PUe=>{"use strict";var IFi=PUe&&PUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PUe,"__esModule",{value:!0});var shc=IFi(sC()),ohc=IFi(C1t()),hFi=()=>shc.default.createElement(ohc.default,{flexGrow:1});hFi.displayName="Spacer";PUe.default=hFi});var b1t=H(WUe=>{"use strict";var ahc=WUe&&WUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WUe,"__esModule",{value:!0});var chc=sC(),lhc=ahc(aGr()),uhc=()=>chc.useContext(lhc.default);WUe.default=uhc});var _Fi=H(OUe=>{"use strict";var ghc=OUe&&OUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OUe,"__esModule",{value:!0});var CFi=sC(),Ahc=ghc(b1t()),dhc=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=Ahc.default();CFi.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),CFi.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};OUe.default=dhc});var yFi=H(MUe=>{"use strict";var phc=MUe&&MUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MUe,"__esModule",{value:!0});var fhc=sC(),Ihc=phc(sGr()),hhc=()=>fhc.useContext(Ihc.default);MUe.default=hhc});var bFi=H(HUe=>{"use strict";var mhc=HUe&&HUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HUe,"__esModule",{value:!0});var Chc=sC(),_hc=mhc(lGr()),yhc=()=>Chc.useContext(_hc.default);HUe.default=yhc});var EFi=H(YUe=>{"use strict";var bhc=YUe&&YUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YUe,"__esModule",{value:!0});var Ehc=sC(),Shc=bhc(gGr()),vhc=()=>Ehc.useContext(Shc.default);YUe.default=vhc});var vFi=H(XUe=>{"use strict";var SFi=XUe&&XUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XUe,"__esModule",{value:!0});var QUe=sC(),Bhc=SFi(m1t()),whc=SFi(b1t()),Thc=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=whc.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=QUe.useContext(Bhc.default),b=QUe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return QUe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),QUe.useEffect(()=>{e?f(b):I(b)},[e,b]),QUe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};XUe.default=Thc});var BFi=H(JUe=>{"use strict";var Rhc=JUe&&JUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JUe,"__esModule",{value:!0});var Nhc=sC(),Dhc=Rhc(m1t()),khc=()=>{let e=Nhc.useContext(Dhc.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};JUe.default=khc});var wFi=H(CGr=>{"use strict";Object.defineProperty(CGr,"__esModule",{value:!0});CGr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var lH=H(Jk=>{"use strict";Object.defineProperty(Jk,"__esModule",{value:!0});var xhc=lFi();Object.defineProperty(Jk,"render",{enumerable:!0,get:function(){return xhc.default}});var Ghc=C1t();Object.defineProperty(Jk,"Box",{enumerable:!0,get:function(){return Ghc.default}});var Fhc=IGr();Object.defineProperty(Jk,"Text",{enumerable:!0,get:function(){return Fhc.default}});var Zhc=gFi();Object.defineProperty(Jk,"Static",{enumerable:!0,get:function(){return Zhc.default}});var Lhc=dFi();Object.defineProperty(Jk,"Transform",{enumerable:!0,get:function(){return Lhc.default}});var Vhc=fFi();Object.defineProperty(Jk,"Newline",{enumerable:!0,get:function(){return Vhc.default}});var Phc=mFi();Object.defineProperty(Jk,"Spacer",{enumerable:!0,get:function(){return Phc.default}});var Whc=_Fi();Object.defineProperty(Jk,"useInput",{enumerable:!0,get:function(){return Whc.default}});var Ohc=yFi();Object.defineProperty(Jk,"useApp",{enumerable:!0,get:function(){return Ohc.default}});var Mhc=b1t();Object.defineProperty(Jk,"useStdin",{enumerable:!0,get:function(){return Mhc.default}});var Hhc=bFi();Object.defineProperty(Jk,"useStdout",{enumerable:!0,get:function(){return Hhc.default}});var Yhc=EFi();Object.defineProperty(Jk,"useStderr",{enumerable:!0,get:function(){return Yhc.default}});var Qhc=vFi();Object.defineProperty(Jk,"useFocus",{enumerable:!0,get:function(){return Qhc.default}});var Xhc=BFi();Object.defineProperty(Jk,"useFocusManager",{enumerable:!0,get:function(){return Xhc.default}});var Jhc=wFi();Object.defineProperty(Jk,"measureElement",{enumerable:!0,get:function(){return Jhc.default}})});var v1t=H(S1t=>{"use strict";Object.defineProperty(S1t,"__esModule",{value:!0});S1t.Gem=void 0;var Uhc=(Pa(),vi(Va)),Khc=lH(),E1t=Uhc.__importStar(sC());S1t.Gem=(0,E1t.memo)(({active:e})=>{let t=(0,E1t.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,E1t.useMemo)(()=>e?"green":"yellow",[e]);return E1t.default.createElement(Khc.Text,{color:r},t)})});var aDe=H(_Gr=>{"use strict";Object.defineProperty(_Gr,"__esModule",{value:!0});_Gr.useKeypress=zhc;var jhc=lH(),TFi=sC();function zhc({active:e},t,r){let{stdin:n}=(0,jhc.useStdin)(),a=(0,TFi.useCallback)((o,l)=>t(o,l),r);(0,TFi.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var yGr=H(cDe=>{"use strict";Object.defineProperty(cDe,"__esModule",{value:!0});cDe.useFocusRequest=cDe.FocusRequest=void 0;var qhc=aDe(),B1t;(function(e){e.BEFORE="before",e.AFTER="after"})(B1t||(cDe.FocusRequest=B1t={}));var $hc=function({active:e},t,r){(0,qhc.useKeypress)({active:e},(n,a)=>{a.name==="tab"&&(a.shift?t(B1t.BEFORE):t(B1t.AFTER))},r)};cDe.useFocusRequest=$hc});var T1t=H(w1t=>{"use strict";Object.defineProperty(w1t,"__esModule",{value:!0});w1t.useListInput=void 0;var emc=aDe(),tmc=function(e,t,{active:r,minus:n,plus:a,set:o,loop:l=!0}){(0,emc.useKeypress)({active:r},(A,f)=>{let I=t.indexOf(e);switch(f.name){case n:{let C=I-1;if(l){o(t[(t.length+C)%t.length]);return}if(C<0)return;o(t[C])}break;case a:{let C=I+1;if(l){o(t[C%t.length]);return}if(C>=t.length)return;o(t[C])}break}},[t,e,a,o,l])};w1t.useListInput=tmc});var N1t=H(R1t=>{"use strict";Object.defineProperty(R1t,"__esModule",{value:!0});R1t.ScrollableItems=void 0;var rmc=(Pa(),vi(Va)),lDe=lH(),p4=rmc.__importStar(sC()),nmc=yGr(),imc=T1t(),smc=({active:e=!0,children:t=[],radius:r=10,size:n=1,loop:a=!0,onFocusRequest:o,willReachEnd:l})=>{let A=Q=>{if(Q.key===null)throw new Error("Expected all children to have a key");return Q.key},f=p4.default.Children.map(t,Q=>A(Q)),I=f[0],[C,b]=(0,p4.useState)(I),E=f.indexOf(C);(0,p4.useEffect)(()=>{f.includes(C)||b(I)},[t]),(0,p4.useEffect)(()=>{l&&E>=f.length-2&&l()},[E]),(0,nmc.useFocusRequest)({active:e&&!!o},Q=>{o?.(Q)},[o]),(0,imc.useListInput)(C,f,{active:e,minus:"up",plus:"down",set:b,loop:a});let N=E-r,B=E+r;B>f.length&&(N-=B-f.length,B=f.length),N<0&&(B+=-N,N=0),B>=f.length&&(B=f.length-1);let F=[];for(let Q=N;Q<=B;++Q){let X=f[Q],ae=e&&X===C;F.push(p4.default.createElement(lDe.Box,{key:X,height:n},p4.default.createElement(lDe.Box,{marginLeft:1,marginRight:1},p4.default.createElement(lDe.Text,null,ae?p4.default.createElement(lDe.Text,{color:"cyan",bold:!0},">"):" ")),p4.default.createElement(lDe.Box,null,p4.default.cloneElement(t[Q],{active:ae}))))}return p4.default.createElement(lDe.Box,{flexDirection:"column",width:"100%"},F)};R1t.ScrollableItems=smc});var bGr=H(CCe=>{"use strict";Object.defineProperty(CCe,"__esModule",{value:!0});CCe.Application=CCe.MinistoreContext=void 0;var omc=(Pa(),vi(Va)),amc=lH(),UUe=omc.__importStar(sC()),cmc=wt("readline");CCe.MinistoreContext=UUe.default.createContext(null);var lmc=({children:e})=>{let{stdin:t,setRawMode:r}=(0,amc.useStdin)();(0,UUe.useEffect)(()=>{r&&r(!0),t&&(0,cmc.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,UUe.useState)(new Map),o=(0,UUe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(f=>new Map([...f,[l,A]])),setAll:l=>a(A=>new Map([...A,...l]))}),[n,a]);return UUe.default.createElement(CCe.MinistoreContext.Provider,{value:o,children:e})};CCe.Application=lmc});var D1t=H(EGr=>{"use strict";Object.defineProperty(EGr,"__esModule",{value:!0});EGr.renderForm=dmc;var umc=(Pa(),vi(Va)),RFi=lH(),NFi=umc.__importDefault(sC()),gmc=bGr(),Amc=aDe();async function dmc(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,RFi.useApp)();(0,Amc.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,RFi.render)(NFi.default.createElement(gmc.Application,null,NFi.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var DFi=H(BGr=>{"use strict";Object.defineProperty(BGr,"__esModule",{value:!0});var vj=(Pa(),vi(Va)),SGr=el(),FR=Sn(),Sj=ro(),pmc=vj.__importStar(A1t()),k1t=($c(),vi(rg)),vGr=vj.__importDefault(UC()),ZG=vj.__importStar(IUe()),KUe=class extends SGr.BaseCommand{constructor(){super(...arguments),this.interactive=k1t.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){pmc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>vj.__importStar(v1t())),{ScrollableItems:r}=await Promise.resolve().then(()=>vj.__importStar(N1t())),{FocusRequest:n}=await Promise.resolve().then(()=>vj.__importStar(yGr())),{useListInput:a}=await Promise.resolve().then(()=>vj.__importStar(T1t())),{renderForm:o}=await Promise.resolve().then(()=>vj.__importStar(D1t())),{Box:l,Text:A}=await Promise.resolve().then(()=>vj.__importStar(lH())),{default:f,useCallback:I,useState:C}=await Promise.resolve().then(()=>vj.__importStar(sC())),b=await FR.Configuration.find(this.context.cwd,this.context.plugins),{project:E,workspace:N}=await FR.Project.find(b,this.context.cwd);if(!N)throw new SGr.WorkspaceRequiredError(E.cwd,this.context.cwd);await E.restoreInstallState();let B=await ZG.openVersionFile(E);if(B===null||B.releaseRoots.size===0)return 0;if(B.root===null)throw new k1t.UsageError("This command can only be run on Git repositories");let F=()=>f.createElement(l,{flexDirection:"row",paddingBottom:1},f.createElement(l,{flexDirection:"column",width:60},f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(l,{flexDirection:"column"},f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to abort.")))),Q=({workspace:ue,active:de,decision:be,setDecision:Se})=>{let De=ue.manifest.raw.stableVersion??ue.manifest.version;if(De===null)throw new Error(`Assertion failed: The version should have been set (${FR.structUtils.prettyLocator(b,ue.anchoredLocator)})`);if(vGr.default.prerelease(De)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${De})`);let k=[ZG.Decision.UNDECIDED,ZG.Decision.DECLINE,ZG.Decision.PATCH,ZG.Decision.MINOR,ZG.Decision.MAJOR];a(be,k,{active:de,minus:"left",plus:"right",set:Se});let et=be===ZG.Decision.UNDECIDED?f.createElement(A,{color:"yellow"},De):be===ZG.Decision.DECLINE?f.createElement(A,{color:"green"},De):f.createElement(A,null,f.createElement(A,{color:"magenta"},De)," \u2192 ",f.createElement(A,{color:"green"},vGr.default.valid(be)?be:vGr.default.inc(De,be)));return f.createElement(l,{flexDirection:"column"},f.createElement(l,null,f.createElement(A,null,FR.structUtils.prettyLocator(b,ue.anchoredLocator)," - ",et)),f.createElement(l,null,k.map(ct=>{let Me=ct===be;return f.createElement(l,{key:ct,paddingLeft:2},f.createElement(A,null,f.createElement(t,{active:Me})," ",ct))})))},X=ue=>{let de=new Set(B.releaseRoots),be=new Map([...ue].filter(([Se])=>de.has(Se)));for(;;){let Se=ZG.getUndecidedDependentWorkspaces({project:B.project,releases:be}),De=!1;if(Se.length>0){for(let[k]of Se)if(!de.has(k)){de.add(k),De=!0;let et=ue.get(k);typeof et<"u"&&be.set(k,et)}}if(!De)break}return{relevantWorkspaces:de,relevantReleases:be}},ae=()=>{let[ue,de]=C(()=>new Map(B.releases)),be=I((Se,De)=>{let k=new Map(ue);De!==ZG.Decision.UNDECIDED?k.set(Se,De):k.delete(Se);let{relevantReleases:et}=X(k);de(et)},[ue,de]);return[ue,be]},ne=({workspaces:ue,releases:de})=>{let be=[];be.push(`${ue.size} total`);let Se=0,De=0;for(let k of ue){let et=de.get(k);typeof et>"u"?De+=1:et!==ZG.Decision.DECLINE&&(Se+=1)}return be.push(`${Se} release${Se===1?"":"s"}`),be.push(`${De} remaining`),f.createElement(A,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:ue})=>{let[de,be]=ae();ue(de);let{relevantWorkspaces:Se}=X(de),De=new Set([...Se].filter(Me=>!B.releaseRoots.has(Me))),[k,et]=C(0),ct=I(Me=>{switch(Me){case n.BEFORE:et(k-1);break;case n.AFTER:et(k+1);break}},[k,et]);return f.createElement(l,{flexDirection:"column"},f.createElement(F,null),f.createElement(l,null,f.createElement(A,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(l,{flexDirection:"column",marginTop:1,paddingLeft:2},[...B.changedFiles].map(Me=>f.createElement(l,{key:Me},f.createElement(A,null,f.createElement(A,{color:"grey"},Sj.npath.fromPortablePath(B.root)),Sj.npath.sep,Sj.npath.relative(Sj.npath.fromPortablePath(B.root),Sj.npath.fromPortablePath(Me)))))),B.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),De.size>3?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:B.releaseRoots,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===0,radius:1,size:2,onFocusRequest:ct},[...B.releaseRoots].map(Me=>f.createElement(Q,{key:Me.cwd,workspace:Me,decision:de.get(Me)||ZG.Decision.UNDECIDED,setDecision:je=>be(Me,je)}))))),De.size>0?f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(l,null,f.createElement(A,null,"(Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),De.size>5?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:De,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===1,radius:2,size:2,onFocusRequest:ct},[...De].map(Me=>f.createElement(Q,{key:Me.cwd,workspace:Me,decision:de.get(Me)||ZG.Decision.UNDECIDED,setDecision:je=>be(Me,je)}))))):null)},{versionFile:B},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;B.releases.clear();for(let[ue,de]of fe)B.releases.set(ue,de);await B.saveAll()}async executeStandard(){let t=await FR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await FR.Project.find(t,this.context.cwd);if(!n)throw new SGr.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await FR.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let l=await ZG.openVersionFile(r);if(l===null||l.releaseRoots.size===0)return;if(l.root===null)throw new k1t.UsageError("This command can only be run on Git repositories");if(o.reportInfo(FR.MessageName.UNNAMED,`Your PR was started right after ${FR.formatUtils.pretty(t,l.baseHash.slice(0,7),"yellow")} ${FR.formatUtils.pretty(t,l.baseTitle,"magenta")}`),l.changedFiles.size>0){o.reportInfo(FR.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let b of l.changedFiles)o.reportInfo(null,`${FR.formatUtils.pretty(t,Sj.npath.fromPortablePath(l.root),"gray")}${Sj.npath.sep}${Sj.npath.relative(Sj.npath.fromPortablePath(l.root),Sj.npath.fromPortablePath(b))}`)}let A=!1,f=!1,I=ZG.getUndecidedWorkspaces(l);if(I.size>0){A||o.reportSeparator();for(let b of I)o.reportError(FR.MessageName.UNNAMED,`${FR.structUtils.prettyLocator(t,b.anchoredLocator)} has been modified but doesn't have a release strategy attached`);A=!0}let C=ZG.getUndecidedDependentWorkspaces(l);for(let[b,E]of C)f||o.reportSeparator(),o.reportError(FR.MessageName.UNNAMED,`${FR.structUtils.prettyLocator(t,b.anchoredLocator)} doesn't have a release strategy attached, but depends on ${FR.structUtils.prettyWorkspace(t,E)} which is planned for release.`),f=!0;(A||f)&&(o.reportSeparator(),o.reportInfo(FR.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(FR.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};KUe.paths=[["version","check"]];KUe.usage=k1t.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});BGr.default=KUe});var FFi=H(TGr=>{"use strict";Object.defineProperty(TGr,"__esModule",{value:!0});var GFi=(Pa(),vi(Va)),kFi=el(),xFi=Sn(),yCe=($c(),vi(rg)),wGr=GFi.__importDefault(UC()),_Ce=GFi.__importStar(IUe()),jUe=class extends kFi.BaseCommand{constructor(){super(...arguments),this.deferred=yCe.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=yCe.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=yCe.Option.String()}async execute(){let t=await xFi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await xFi.Project.find(t,this.context.cwd);if(!n)throw new kFi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=wGr.default.valid(this.strategy),l=this.strategy===_Ce.Decision.DECLINE,A;if(o)if(n.manifest.version!==null){let I=_Ce.suggestStrategy(n.manifest.version,this.strategy);I!==null?A=I:A=this.strategy}else A=this.strategy;else{let I=n.manifest.version;if(!l){if(I===null)throw new yCe.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof I!="string"||!wGr.default.valid(I))throw new yCe.UsageError(`Can't bump the version (${I}) if it's not valid semver`)}A=_Ce.validateReleaseDecision(this.strategy)}if(!a){let C=(await _Ce.resolveVersionFiles(r)).get(n);if(typeof C<"u"&&A!==_Ce.Decision.DECLINE){let b=_Ce.applyStrategy(n.manifest.version,A);if(wGr.default.lt(b,C))throw new yCe.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${C})`)}}let f=await _Ce.openVersionFile(r,{allowEmpty:!0});return f.releases.set(n,A),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};jUe.paths=[["version"]];jUe.usage=yCe.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});TGr.default=jUe});var RGr=H(f4=>{"use strict";Object.defineProperty(f4,"__esModule",{value:!0});f4.versionUtils=f4.VersionCommand=f4.VersionCheckCommand=f4.VersionApplyCommand=void 0;var x1t=(Pa(),vi(Va)),ZFi=Sn(),LFi=x1t.__importDefault($xi());f4.VersionApplyCommand=LFi.default;var VFi=x1t.__importDefault(DFi());f4.VersionCheckCommand=VFi.default;var PFi=x1t.__importDefault(FFi());f4.VersionCommand=PFi.default;var fmc=x1t.__importStar(IUe());f4.versionUtils=fmc;var Imc={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:ZFi.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:ZFi.SettingsType.BOOLEAN,default:!1}},commands:[LFi.default,VFi.default,PFi.default]};f4.default=Imc});var zZi=H((B9u,jZi)=>{"use strict";var UZi=wt("path"),hCc=Jjt(),mCc=Kjt();function KZi(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=hCc.sync(e.command,{path:r[mCc({env:r})],pathExt:t?UZi.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=UZi.resolve(a?e.options.cwd:"",l)),l}function CCc(e){return KZi(e)||KZi(e,!0)}jZi.exports=CCc});var qZi=H((w9u,eFr)=>{"use strict";var $Gr=/([()\][%!^"`<>&|;, *?])/g;function _Cc(e){return e=e.replace($Gr,"^$1"),e}function yCc(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace($Gr,"^$1"),t&&(e=e.replace($Gr,"^$1")),e}eFr.exports.command=_Cc;eFr.exports.argument=yCc});var eLi=H((T9u,$Zi)=>{"use strict";var tFr=wt("fs"),bCc=qjt();function ECc(e){let r=Buffer.alloc(150),n;try{n=tFr.openSync(e,"r"),tFr.readSync(n,r,0,150,0),tFr.closeSync(n)}catch{}return bCc(r.toString())}$Zi.exports=ECc});var iLi=H((R9u,nLi)=>{"use strict";var SCc=wt("path"),tLi=zZi(),rLi=qZi(),vCc=eLi(),BCc=process.platform==="win32",wCc=/\.(?:com|exe)$/i,TCc=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function RCc(e){e.file=tLi(e);let t=e.file&&vCc(e.file);return t?(e.args.unshift(e.file),e.command=t,tLi(e)):e.file}function NCc(e){if(!BCc)return e;let t=RCc(e),r=!wCc.test(t);if(e.options.forceShell||r){let n=TCc.test(t);e.command=SCc.normalize(e.command),e.command=rLi.command(e.command),e.args=e.args.map(o=>rLi.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function DCc(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:NCc(n)}nLi.exports=DCc});var aLi=H((N9u,oLi)=>{"use strict";var rFr=process.platform==="win32";function nFr(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function kCc(e,t){if(!rFr)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=sLi(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function sLi(e,t){return rFr&&e===1&&!t.file?nFr(t.original,"spawn"):null}function xCc(e,t){return rFr&&e===1&&!t.file?nFr(t.original,"spawnSync"):null}oLi.exports={hookChildProcess:kCc,verifyENOENT:sLi,verifyENOENTSync:xCc,notFoundError:nFr}});var uLi=H((D9u,ADe)=>{"use strict";var cLi=wt("child_process"),iFr=iLi(),sFr=aLi();function lLi(e,t,r){let n=iFr(e,t,r),a=cLi.spawn(n.command,n.args,n.options);return sFr.hookChildProcess(a,n),a}function GCc(e,t,r){let n=iFr(e,t,r),a=cLi.spawnSync(n.command,n.args,n.options);return a.error=a.error||sFr.verifyENOENTSync(a.status,n),a}ADe.exports=lLi;ADe.exports.spawn=lLi;ADe.exports.sync=GCc;ADe.exports._parse=iFr;ADe.exports._enoent=sFr});var oFr=H((k9u,gLi)=>{"use strict";gLi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var FCc=oFr(),ECe=Object.prototype.toString;function lFr(e){return ECe.call(e)==="[object Array]"}function aFr(e){return typeof e>"u"}function ZCc(e){return e!==null&&!aFr(e)&&e.constructor!==null&&!aFr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function LCc(e){return ECe.call(e)==="[object ArrayBuffer]"}function VCc(e){return typeof FormData<"u"&&e instanceof FormData}function PCc(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function WCc(e){return typeof e=="string"}function OCc(e){return typeof e=="number"}function ALi(e){return e!==null&&typeof e=="object"}function V1t(e){if(ECe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function MCc(e){return ECe.call(e)==="[object Date]"}function HCc(e){return ECe.call(e)==="[object File]"}function YCc(e){return ECe.call(e)==="[object Blob]"}function dLi(e){return ECe.call(e)==="[object Function]"}function QCc(e){return ALi(e)&&dLi(e.pipe)}function XCc(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function JCc(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function UCc(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function uFr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),lFr(e))for(var r=0,n=e.length;r{"use strict";var dDe=$Z();function fLi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}ILi.exports=function(t,r,n){if(!r)return t;var a;if(n)a=n(r);else if(dDe.isURLSearchParams(r))a=r.toString();else{var o=[];dDe.forEach(r,function(f,I){f===null||typeof f>"u"||(dDe.isArray(f)?I=I+"[]":f=[f],dDe.forEach(f,function(b){dDe.isDate(b)?b=b.toISOString():dDe.isObject(b)&&(b=JSON.stringify(b)),o.push(fLi(I)+"="+fLi(b))}))}),a=o.join("&")}if(a){var l=t.indexOf("#");l!==-1&&(t=t.slice(0,l)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var mLi=H((F9u,hLi)=>{"use strict";var zCc=$Z();function W1t(){this.handlers=[]}W1t.prototype.use=function(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1};W1t.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};W1t.prototype.forEach=function(t){zCc.forEach(this.handlers,function(n){n!==null&&t(n)})};hLi.exports=W1t});var _Li=H((Z9u,CLi)=>{"use strict";var qCc=$Z();CLi.exports=function(t,r){qCc.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var O1t=H((L9u,yLi)=>{"use strict";yLi.exports=function(t,r,n,a,o){return t.config=r,n&&(t.code=n),t.request=a,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}});var M1t=H((V9u,bLi)=>{"use strict";var $Cc=O1t();bLi.exports=function(t,r,n,a,o){var l=new Error(t);return $Cc(l,r,n,a,o)}});var gFr=H((P9u,ELi)=>{"use strict";var e_c=M1t();ELi.exports=function(t,r,n){var a=n.config.validateStatus;!n.status||!a||a(n.status)?t(n):r(e_c("Request failed with status code "+n.status,n.config,null,n.request,n))}});var vLi=H((W9u,SLi)=>{"use strict";var H1t=$Z();SLi.exports=H1t.isStandardBrowserEnv()?function(){return{write:function(r,n,a,o,l,A){var f=[];f.push(r+"="+encodeURIComponent(n)),H1t.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),H1t.isString(o)&&f.push("path="+o),H1t.isString(l)&&f.push("domain="+l),A===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var wLi=H((O9u,BLi)=>{"use strict";BLi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var RLi=H((M9u,TLi)=>{"use strict";TLi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var AFr=H((H9u,NLi)=>{"use strict";var t_c=wLi(),r_c=RLi();NLi.exports=function(t,r){return t&&!t_c(r)?r_c(t,r):r}});var kLi=H((Y9u,DLi)=>{"use strict";var dFr=$Z(),n_c=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];DLi.exports=function(t){var r={},n,a,o;return t&&dFr.forEach(t.split(` -`),function(A){if(o=A.indexOf(":"),n=dFr.trim(A.substr(0,o)).toLowerCase(),a=dFr.trim(A.substr(o+1)),n){if(r[n]&&n_c.indexOf(n)>=0)return;n==="set-cookie"?r[n]=(r[n]?r[n]:[]).concat([a]):r[n]=r[n]?r[n]+", "+a:a}}),r}});var FLi=H((Q9u,GLi)=>{"use strict";var xLi=$Z();GLi.exports=xLi.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function a(o){var l=o;return t&&(r.setAttribute("href",l),l=r.href),r.setAttribute("href",l),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=a(window.location.href),function(l){var A=xLi.isString(l)?a(l):l;return A.protocol===n.protocol&&A.host===n.host}}():function(){return function(){return!0}}()});var LLi=H((X9u,ZLi)=>{"use strict";var Y1t=$Z(),i_c=gFr(),s_c=vLi(),o_c=P1t(),a_c=AFr(),c_c=kLi(),l_c=FLi(),pFr=M1t();ZLi.exports=function(t){return new Promise(function(n,a){var o=t.data,l=t.headers,A=t.responseType;Y1t.isFormData(o)&&delete l["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var I=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";l.Authorization="Basic "+btoa(I+":"+C)}var b=a_c(t.baseURL,t.url);f.open(t.method.toUpperCase(),o_c(b,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function E(){if(f){var B="getAllResponseHeaders"in f?c_c(f.getAllResponseHeaders()):null,F=!A||A==="text"||A==="json"?f.responseText:f.response,Q={data:F,status:f.status,statusText:f.statusText,headers:B,config:t,request:f};i_c(n,a,Q),f=null}}if("onloadend"in f?f.onloadend=E:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(E)},f.onabort=function(){f&&(a(pFr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(pFr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var F="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),a(pFr(F,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},Y1t.isStandardBrowserEnv()){var N=(t.withCredentials||l_c(b))&&t.xsrfCookieName?s_c.read(t.xsrfCookieName):void 0;N&&(l[t.xsrfHeaderName]=N)}"setRequestHeader"in f&&Y1t.forEach(l,function(F,Q){typeof o>"u"&&Q.toLowerCase()==="content-type"?delete l[Q]:f.setRequestHeader(Q,F)}),Y1t.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),A&&A!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(F){f&&(f.abort(),a(F),f=null)}),o||(o=null),f.send(o)})}});var PLi=H((J9u,VLi)=>{var $Ue;VLi.exports=function(){if(!$Ue){try{$Ue=wt("debug")("follow-redirects")}catch{}typeof $Ue!="function"&&($Ue=function(){})}$Ue.apply(null,arguments)}});var wFr=H((U9u,BFr)=>{var tKe=wt("url"),eKe=tKe.URL,u_c=wt("http"),g_c=wt("https"),CFr=wt("stream").Writable,_Fr=wt("assert"),WLi=PLi();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=vCe(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var yFr=!1;try{_Fr(new eKe(""))}catch(e){yFr=e.code==="ERR_INVALID_URL"}var A_c=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],bFr=["abort","aborted","connect","error","socket","timeout"],EFr=Object.create(null);bFr.forEach(function(e){EFr[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var IFr=rKe("ERR_INVALID_URL","Invalid URL",TypeError),hFr=rKe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),d_c=rKe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",hFr),p_c=rKe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),f_c=rKe("ERR_STREAM_WRITE_AFTER_END","write after end"),I_c=CFr.prototype.destroy||MLi;function BV(e,t){CFr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(a){r.emit("error",a instanceof hFr?a:new hFr({cause:a}))}},this._performRequest()}BV.prototype=Object.create(CFr.prototype);BV.prototype.abort=function(){vFr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};BV.prototype.destroy=function(e){return vFr(this._currentRequest,e),I_c.call(this,e),this};BV.prototype.write=function(e,t,r){if(this._ending)throw new f_c;if(!SCe(e)&&!C_c(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(vCe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new p_c),this.abort())};BV.prototype.end=function(e,t,r){if(vCe(e)?(r=e,e=t=null):vCe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,a=this._currentRequest;this.write(e,t,function(){n._ended=!0,a.end(null,null,r)}),this._ending=!0}};BV.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};BV.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};BV.prototype.setTimeout=function(e,t){var r=this;function n(l){l.setTimeout(e),l.removeListener("timeout",l.destroy),l.addListener("timeout",l.destroy)}function a(l){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),n(l)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",n),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){BV.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(BV.prototype,e,{get:function(){return this._currentRequest[e]}})});BV.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};BV.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var a of bFr)n.on(a,EFr[a]);if(this._currentUrl=/^\//.test(this._options.path)?tKe.format(this._options):this._options.path,this._isRedirect){var o=0,l=this,A=this._requestBodyBuffers;(function f(I){if(n===l._currentRequest)if(I)l.emit("error",I);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(vFr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new d_c;var n,a=this._options.beforeRedirect;a&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],fFr(/^content-/i,this._options.headers));var l=fFr(/^host$/i,this._options.headers),A=SFr(this._currentUrl),f=l||A.host,I=/^\w+:/.test(r)?this._currentUrl:tKe.format(Object.assign(A,{host:f})),C=h_c(r,I);if(WLi("redirecting to",C.href),this._isRedirect=!0,mFr(C,this._options),(C.protocol!==A.protocol&&C.protocol!=="https:"||C.host!==f&&!m_c(C.host,f))&&fFr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),vCe(a)){var b={headers:e.headers,statusCode:t},E={url:I,method:o,headers:n};a(this._options,b,E),this._sanitizeOptions(this._options)}this._performRequest()};function OLi(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var a=n+":",o=r[a]=e[n],l=t[n]=Object.create(o);function A(I,C,b){return __c(I)?I=mFr(I):SCe(I)?I=mFr(SFr(I)):(b=C,C=HLi(I),I={protocol:a}),vCe(C)&&(b=C,C=null),C=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},I,C),C.nativeProtocols=r,!SCe(C.host)&&!SCe(C.hostname)&&(C.hostname="::1"),_Fr.equal(C.protocol,a,"protocol mismatch"),WLi("options",C),new BV(C,b)}function f(I,C,b){var E=l.request(I,C,b);return E.end(),E}Object.defineProperties(l,{request:{value:A,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function MLi(){}function SFr(e){var t;if(yFr)t=new eKe(e);else if(t=HLi(tKe.parse(e)),!SCe(t.protocol))throw new IFr({input:e});return t}function h_c(e,t){return yFr?new eKe(e,t):SFr(tKe.resolve(t,e))}function HLi(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new IFr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new IFr({input:e.href||e});return e}function mFr(e,t){var r=t||{};for(var n of A_c)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function fFr(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function rKe(e,t,r){function n(a){vCe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function vFr(e,t){for(var r of bFr)e.removeListener(r,EFr[r]);e.on("error",MLi),e.destroy(t)}function m_c(e,t){_Fr(SCe(e)&&SCe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function SCe(e){return typeof e=="string"||e instanceof String}function vCe(e){return typeof e=="function"}function C_c(e){return typeof e=="object"&&"length"in e}function __c(e){return eKe&&e instanceof eKe}BFr.exports=OLi({http:u_c,https:g_c});BFr.exports.wrap=OLi});var TFr=H((K9u,y_c)=>{y_c.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var KLi=H((j9u,ULi)=>{"use strict";var nKe=$Z(),YLi=gFr(),b_c=AFr(),E_c=P1t(),S_c=wt("http"),v_c=wt("https"),B_c=wFr().http,w_c=wFr().https,QLi=wt("url"),T_c=wt("zlib"),R_c=TFr(),Q1t=M1t(),RFr=O1t(),XLi=/https:?/;function JLi(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(o){o.headers.host=o.host,JLi(o,t,o.href)}}ULi.exports=function(t){return new Promise(function(n,a){var o=function(Yt){n(Yt)},l=function(Yt){a(Yt)},A=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+R_c.version,A&&!nKe.isStream(A)){if(!Buffer.isBuffer(A))if(nKe.isArrayBuffer(A))A=Buffer.from(new Uint8Array(A));else if(nKe.isString(A))A=Buffer.from(A,"utf-8");else return l(Q1t("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=A.length}var I=void 0;if(t.auth){var C=t.auth.username||"",b=t.auth.password||"";I=C+":"+b}var E=b_c(t.baseURL,t.url),N=QLi.parse(E),B=N.protocol||"http:";if(!I&&N.auth){var F=N.auth.split(":"),Q=F[0]||"",X=F[1]||"";I=Q+":"+X}I&&delete f.Authorization;var ae=XLi.test(B),ne=ae?t.httpsAgent:t.httpAgent,ce={path:E_c(N.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ne,agents:{http:t.httpAgent,https:t.httpsAgent},auth:I};t.socketPath?ce.socketPath=t.socketPath:(ce.hostname=N.hostname,ce.port=N.port);var fe=t.proxy;if(!fe&&fe!==!1){var ue=B.slice(0,-1)+"_proxy",de=process.env[ue]||process.env[ue.toUpperCase()];if(de){var be=QLi.parse(de),Se=process.env.no_proxy||process.env.NO_PROXY,De=!0;if(Se){var k=Se.split(",").map(function(Yt){return Yt.trim()});De=!k.some(function(Yt){return Yt?Yt==="*"||Yt[0]==="."&&N.hostname.substr(N.hostname.length-Yt.length)===Yt?!0:N.hostname===Yt:!1})}if(De&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var et=be.auth.split(":");fe.auth={username:et[0],password:et[1]}}}}fe&&(ce.headers.host=N.hostname+(N.port?":"+N.port:""),JLi(ce,fe,B+"//"+N.hostname+(N.port?":"+N.port:"")+ce.path));var ct,Me=ae&&(fe?XLi.test(fe.protocol):!0);t.transport?ct=t.transport:t.maxRedirects===0?ct=Me?v_c:S_c:(t.maxRedirects&&(ce.maxRedirects=t.maxRedirects),ct=Me?w_c:B_c),t.maxBodyLength>-1&&(ce.maxBodyLength=t.maxBodyLength);var je=ct.request(ce,function(Yt){if(!je.aborted){var Tr=Yt,Nr=Yt.req||je;if(Yt.statusCode!==204&&Nr.method!=="HEAD"&&t.decompress!==!1)switch(Yt.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Tr=Tr.pipe(T_c.createUnzip()),delete Yt.headers["content-encoding"];break}var er={status:Yt.statusCode,statusText:Yt.statusMessage,headers:Yt.headers,config:t,request:Nr};if(t.responseType==="stream")er.data=Tr,YLi(o,l,er);else{var vt=[],xt=0;Tr.on("data",function(qt){vt.push(qt),xt+=qt.length,t.maxContentLength>-1&&xt>t.maxContentLength&&(Tr.destroy(),l(Q1t("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Nr)))}),Tr.on("error",function(qt){je.aborted||l(RFr(qt,t,null,Nr))}),Tr.on("end",function(){var qt=Buffer.concat(vt);t.responseType!=="arraybuffer"&&(qt=qt.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&(qt=nKe.stripBOM(qt))),er.data=qt,YLi(o,l,er)})}}});if(je.on("error",function(Yt){je.aborted&&Yt.code!=="ERR_FR_TOO_MANY_REDIRECTS"||l(RFr(Yt,t,null,je))}),t.timeout){var St=parseInt(t.timeout,10);if(isNaN(St)){l(Q1t("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",je));return}je.setTimeout(St,function(){je.abort(),l(Q1t("timeout of "+St+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",je))})}t.cancelToken&&t.cancelToken.promise.then(function(Yt){je.aborted||(je.abort(),l(Yt))}),nKe.isStream(A)?A.on("error",function(Yt){l(RFr(Yt,t,null,je))}).pipe(je):je.end(A)})}});var J1t=H((z9u,qLi)=>{"use strict";var Uk=$Z(),jLi=_Li(),N_c=O1t(),D_c={"Content-Type":"application/x-www-form-urlencoded"};function zLi(e,t){!Uk.isUndefined(e)&&Uk.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function k_c(){var e;return typeof XMLHttpRequest<"u"?e=LLi():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=KLi()),e}function x_c(e,t,r){if(Uk.isString(e))try{return(t||JSON.parse)(e),Uk.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var X1t={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:k_c(),transformRequest:[function(t,r){return jLi(r,"Accept"),jLi(r,"Content-Type"),Uk.isFormData(t)||Uk.isArrayBuffer(t)||Uk.isBuffer(t)||Uk.isStream(t)||Uk.isFile(t)||Uk.isBlob(t)?t:Uk.isArrayBufferView(t)?t.buffer:Uk.isURLSearchParams(t)?(zLi(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):Uk.isObject(t)||r&&r["Content-Type"]==="application/json"?(zLi(r,"application/json"),x_c(t)):t}],transformResponse:[function(t){var r=this.transitional,n=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!n&&this.responseType==="json";if(o||a&&Uk.isString(t)&&t.length)try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?N_c(l,this,"E_JSON_PARSE"):l}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};X1t.headers={common:{Accept:"application/json, text/plain, */*"}};Uk.forEach(["delete","get","head"],function(t){X1t.headers[t]={}});Uk.forEach(["post","put","patch"],function(t){X1t.headers[t]=Uk.merge(D_c)});qLi.exports=X1t});var e9i=H((q9u,$Li)=>{"use strict";var G_c=$Z(),F_c=J1t();$Li.exports=function(t,r,n){var a=this||F_c;return G_c.forEach(n,function(l){t=l.call(a,t,r)}),t}});var NFr=H(($9u,t9i)=>{"use strict";t9i.exports=function(t){return!!(t&&t.__CANCEL__)}});var i9i=H((eVu,n9i)=>{"use strict";var r9i=$Z(),DFr=e9i(),Z_c=NFr(),L_c=J1t();function kFr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}n9i.exports=function(t){kFr(t),t.headers=t.headers||{},t.data=DFr.call(t,t.data,t.headers,t.transformRequest),t.headers=r9i.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),r9i.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||L_c.adapter;return r(t).then(function(a){return kFr(t),a.data=DFr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return Z_c(a)||(kFr(t),a&&a.response&&(a.response.data=DFr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var xFr=H((tVu,s9i)=>{"use strict";var LG=$Z();s9i.exports=function(t,r){r=r||{};var n={},a=["url","method","data"],o=["headers","auth","proxy","params"],l=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],A=["validateStatus"];function f(E,N){return LG.isPlainObject(E)&&LG.isPlainObject(N)?LG.merge(E,N):LG.isPlainObject(N)?LG.merge({},N):LG.isArray(N)?N.slice():N}function I(E){LG.isUndefined(r[E])?LG.isUndefined(t[E])||(n[E]=f(void 0,t[E])):n[E]=f(t[E],r[E])}LG.forEach(a,function(N){LG.isUndefined(r[N])||(n[N]=f(void 0,r[N]))}),LG.forEach(o,I),LG.forEach(l,function(N){LG.isUndefined(r[N])?LG.isUndefined(t[N])||(n[N]=f(void 0,t[N])):n[N]=f(void 0,r[N])}),LG.forEach(A,function(N){N in r?n[N]=f(t[N],r[N]):N in t&&(n[N]=f(void 0,t[N]))});var C=a.concat(o).concat(l).concat(A),b=Object.keys(t).concat(Object.keys(r)).filter(function(N){return C.indexOf(N)===-1});return LG.forEach(b,I),n}});var u9i=H((rVu,l9i)=>{"use strict";var a9i=TFr(),GFr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){GFr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var o9i={},V_c=a9i.version.split(".");function c9i(e,t){for(var r=t?t.split("."):V_c,n=e.split("."),a=0;a<3;a++){if(r[a]>n[a])return!0;if(r[a]0;){var o=n[a],l=t[o];if(l){var A=e[o],f=A===void 0||l(A,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}l9i.exports={isOlderVersion:c9i,assertOptions:P_c,validators:GFr}});var I9i=H((nVu,f9i)=>{"use strict";var d9i=$Z(),W_c=P1t(),g9i=mLi(),A9i=i9i(),U1t=xFr(),p9i=u9i(),pDe=p9i.validators;function iKe(e){this.defaults=e,this.interceptors={request:new g9i,response:new g9i}}iKe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=U1t(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&p9i.assertOptions(r,{silentJSONParsing:pDe.transitional(pDe.boolean,"1.0.0"),forcedJSONParsing:pDe.transitional(pDe.boolean,"1.0.0"),clarifyTimeoutError:pDe.transitional(pDe.boolean,"1.0.0")},!1);var n=[],a=!0;this.interceptors.request.forEach(function(E){typeof E.runWhen=="function"&&E.runWhen(t)===!1||(a=a&&E.synchronous,n.unshift(E.fulfilled,E.rejected))});var o=[];this.interceptors.response.forEach(function(E){o.push(E.fulfilled,E.rejected)});var l;if(!a){var A=[A9i,void 0];for(Array.prototype.unshift.apply(A,n),A=A.concat(o),l=Promise.resolve(t);A.length;)l=l.then(A.shift(),A.shift());return l}for(var f=t;n.length;){var I=n.shift(),C=n.shift();try{f=I(f)}catch(b){C(b);break}}try{l=A9i(f)}catch(b){return Promise.reject(b)}for(;o.length;)l=l.then(o.shift(),o.shift());return l};iKe.prototype.getUri=function(t){return t=U1t(this.defaults,t),W_c(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};d9i.forEach(["delete","get","head","options"],function(t){iKe.prototype[t]=function(r,n){return this.request(U1t(n||{},{method:t,url:r,data:(n||{}).data}))}});d9i.forEach(["post","put","patch"],function(t){iKe.prototype[t]=function(r,n,a){return this.request(U1t(a||{},{method:t,url:r,data:n}))}});f9i.exports=iKe});var ZFr=H((iVu,h9i)=>{"use strict";function FFr(e){this.message=e}FFr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};FFr.prototype.__CANCEL__=!0;h9i.exports=FFr});var C9i=H((sVu,m9i)=>{"use strict";var O_c=ZFr();function K1t(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new O_c(a),t(r.reason))})}K1t.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};K1t.source=function(){var t,r=new K1t(function(a){t=a});return{token:r,cancel:t}};m9i.exports=K1t});var y9i=H((oVu,_9i)=>{"use strict";_9i.exports=function(t){return function(n){return t.apply(null,n)}}});var E9i=H((aVu,b9i)=>{"use strict";b9i.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var B9i=H((cVu,LFr)=>{"use strict";var S9i=$Z(),M_c=oFr(),j1t=I9i(),H_c=xFr(),Y_c=J1t();function v9i(e){var t=new j1t(e),r=M_c(j1t.prototype.request,t);return S9i.extend(r,j1t.prototype,t),S9i.extend(r,t),r}var I4=v9i(Y_c);I4.Axios=j1t;I4.create=function(t){return v9i(H_c(I4.defaults,t))};I4.Cancel=ZFr();I4.CancelToken=C9i();I4.isCancel=NFr();I4.all=function(t){return Promise.all(t)};I4.spread=y9i();I4.isAxiosError=E9i();LFr.exports=I4;LFr.exports.default=I4});var T9i=H((lVu,w9i)=>{w9i.exports=B9i()});var N9i=H((uVu,R9i)=>{var fDe=1e3,IDe=fDe*60,hDe=IDe*60,BCe=hDe*24,Q_c=BCe*7,X_c=BCe*365.25;R9i.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return J_c(e);if(r==="number"&&isFinite(e))return t.long?K_c(e):U_c(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function J_c(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*X_c;case"weeks":case"week":case"w":return r*Q_c;case"days":case"day":case"d":return r*BCe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*hDe;case"minutes":case"minute":case"mins":case"min":case"m":return r*IDe;case"seconds":case"second":case"secs":case"sec":case"s":return r*fDe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function U_c(e){var t=Math.abs(e);return t>=BCe?Math.round(e/BCe)+"d":t>=hDe?Math.round(e/hDe)+"h":t>=IDe?Math.round(e/IDe)+"m":t>=fDe?Math.round(e/fDe)+"s":e+"ms"}function K_c(e){var t=Math.abs(e);return t>=BCe?z1t(e,t,BCe,"day"):t>=hDe?z1t(e,t,hDe,"hour"):t>=IDe?z1t(e,t,IDe,"minute"):t>=fDe?z1t(e,t,fDe,"second"):e+" ms"}function z1t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var VFr=H((gVu,D9i)=>{function j_c(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=N9i(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{yO.formatArgs=q_c;yO.save=$_c;yO.load=e0c;yO.useColors=z_c;yO.storage=t0c();yO.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();yO.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function z_c(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function q_c(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+q1t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}yO.log=console.debug||console.log||(()=>{});function $_c(e){try{e?yO.storage.setItem("debug",e):yO.storage.removeItem("debug")}catch{}}function e0c(){let e;try{e=yO.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function t0c(){try{return localStorage}catch{}}q1t.exports=VFr()(yO);var{formatters:r0c}=q1t.exports;r0c.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var G9i=H((Kk,e2t)=>{var n0c=wt("tty"),$1t=wt("util");Kk.init=u0c;Kk.log=a0c;Kk.formatArgs=s0c;Kk.save=c0c;Kk.load=l0c;Kk.useColors=i0c;Kk.destroy=$1t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Kk.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(Kk.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Kk.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function i0c(){return"colors"in Kk.inspectOpts?!!Kk.inspectOpts.colors:n0c.isatty(process.stderr.fd)}function s0c(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===Shc&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===bhc&&this.focusNext(),t===Ehc&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return mCe.default.createElement(Ihc.default.Provider,{value:{exit:this.handleExit}},mCe.default.createElement(hhc.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},mCe.default.createElement(mhc.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},mCe.default.createElement(Chc.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},mCe.default.createElement(_hc.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?mCe.default.createElement(yhc.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){CFi.default.hide(this.props.stdout)}componentWillUnmount(){CFi.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};g4.default=S1t;S1t.displayName="InternalApp"});var EFi=H(A4=>{"use strict";var vhc=A4&&A4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bhc=A4&&A4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),whc=A4&&A4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&vhc(t,e,r);return Bhc(t,e),t},d4=A4&&A4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A4,"__esModule",{value:!0});var Thc=d4(sC()),yFi=IIr(),Rhc=d4(ZGi()),Nhc=d4(wMe()),Dhc=d4(yIr()),khc=d4(bIr()),SGr=d4(jGi()),xhc=d4(aFi()),Ghc=d4(_pt()),Fhc=d4(ohr()),Zhc=whc(iGr()),Lhc=d4(uGr()),Vhc=d4(_Fi()),cDe=process.env.CI==="false"?!1:Dhc.default,bFi=()=>{},vGr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=xhc.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` +`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(cDe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(Nhc.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},khc.default(this),this.options=t,this.rootNode=Zhc.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:yFi.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=Rhc.default.create(t.stdout),this.throttledLog=t.debug?this.log:yFi.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=SGr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=Ghc.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),cDe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=Thc.default.createElement(Vhc.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);SGr.default.updateContainer(r,this.container,null,bFi)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(cDe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(cDe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),cDe?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,SGr.default.updateContainer(null,this.container,null,bFi),Lhc.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!cDe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=Fhc.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};A4.default=vGr});var vFi=H(LUe=>{"use strict";var SFi=LUe&&LUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LUe,"__esModule",{value:!0});var Phc=SFi(EFi()),v1t=SFi(uGr()),Whc=wt("stream"),Ohc=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},Mhc(t)),n=Hhc(r.stdout,()=>new Phc.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>v1t.default.delete(r.stdout),clear:n.clear}};LUe.default=Ohc;var Mhc=(e={})=>e instanceof Whc.Stream?{stdout:e,stdin:process.stdin}:e,Hhc=(e,t)=>{let r;return v1t.default.has(e)?r=v1t.default.get(e):(r=t(),v1t.default.set(e,r)),r}});var wFi=H(Jee=>{"use strict";var Yhc=Jee&&Jee.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Qhc=Jee&&Jee.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Xhc=Jee&&Jee.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Yhc(t,e,r);return Qhc(t,e),t};Object.defineProperty(Jee,"__esModule",{value:!0});var VUe=Xhc(sC()),BFi=e=>{let{items:t,children:r,style:n}=e,[a,o]=VUe.useState(0),l=VUe.useMemo(()=>t.slice(a),[t,a]);VUe.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=VUe.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return VUe.default.createElement("ink-box",{internal_static:!0,style:f},A)};BFi.displayName="Static";Jee.default=BFi});var RFi=H(PUe=>{"use strict";var Jhc=PUe&&PUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PUe,"__esModule",{value:!0});var Uhc=Jhc(sC()),TFi=({children:e,transform:t})=>e==null?null:Uhc.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);TFi.displayName="Transform";PUe.default=TFi});var DFi=H(WUe=>{"use strict";var Khc=WUe&&WUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WUe,"__esModule",{value:!0});var jhc=Khc(sC()),NFi=({count:e=1})=>jhc.default.createElement("ink-text",null,` +`.repeat(e));NFi.displayName="Newline";WUe.default=NFi});var GFi=H(OUe=>{"use strict";var kFi=OUe&&OUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OUe,"__esModule",{value:!0});var zhc=kFi(sC()),qhc=kFi(E1t()),xFi=()=>zhc.default.createElement(qhc.default,{flexGrow:1});xFi.displayName="Spacer";OUe.default=xFi});var B1t=H(MUe=>{"use strict";var $hc=MUe&&MUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MUe,"__esModule",{value:!0});var emc=sC(),tmc=$hc(pGr()),rmc=()=>emc.useContext(tmc.default);MUe.default=rmc});var ZFi=H(HUe=>{"use strict";var nmc=HUe&&HUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HUe,"__esModule",{value:!0});var FFi=sC(),imc=nmc(B1t()),smc=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=imc.default();FFi.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),FFi.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};HUe.default=smc});var LFi=H(YUe=>{"use strict";var omc=YUe&&YUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YUe,"__esModule",{value:!0});var amc=sC(),cmc=omc(AGr()),lmc=()=>amc.useContext(cmc.default);YUe.default=lmc});var VFi=H(QUe=>{"use strict";var umc=QUe&&QUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QUe,"__esModule",{value:!0});var gmc=sC(),Amc=umc(IGr()),dmc=()=>gmc.useContext(Amc.default);QUe.default=dmc});var PFi=H(XUe=>{"use strict";var pmc=XUe&&XUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XUe,"__esModule",{value:!0});var fmc=sC(),Imc=pmc(mGr()),hmc=()=>fmc.useContext(Imc.default);XUe.default=hmc});var OFi=H(UUe=>{"use strict";var WFi=UUe&&UUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UUe,"__esModule",{value:!0});var JUe=sC(),mmc=WFi(b1t()),Cmc=WFi(B1t()),_mc=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=Cmc.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=JUe.useContext(mmc.default),b=JUe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return JUe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),JUe.useEffect(()=>{e?f(b):I(b)},[e,b]),JUe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};UUe.default=_mc});var MFi=H(KUe=>{"use strict";var ymc=KUe&&KUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KUe,"__esModule",{value:!0});var bmc=sC(),Emc=ymc(b1t()),Smc=()=>{let e=bmc.useContext(Emc.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};KUe.default=Smc});var HFi=H(BGr=>{"use strict";Object.defineProperty(BGr,"__esModule",{value:!0});BGr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var lH=H(Jk=>{"use strict";Object.defineProperty(Jk,"__esModule",{value:!0});var vmc=vFi();Object.defineProperty(Jk,"render",{enumerable:!0,get:function(){return vmc.default}});var Bmc=E1t();Object.defineProperty(Jk,"Box",{enumerable:!0,get:function(){return Bmc.default}});var wmc=EGr();Object.defineProperty(Jk,"Text",{enumerable:!0,get:function(){return wmc.default}});var Tmc=wFi();Object.defineProperty(Jk,"Static",{enumerable:!0,get:function(){return Tmc.default}});var Rmc=RFi();Object.defineProperty(Jk,"Transform",{enumerable:!0,get:function(){return Rmc.default}});var Nmc=DFi();Object.defineProperty(Jk,"Newline",{enumerable:!0,get:function(){return Nmc.default}});var Dmc=GFi();Object.defineProperty(Jk,"Spacer",{enumerable:!0,get:function(){return Dmc.default}});var kmc=ZFi();Object.defineProperty(Jk,"useInput",{enumerable:!0,get:function(){return kmc.default}});var xmc=LFi();Object.defineProperty(Jk,"useApp",{enumerable:!0,get:function(){return xmc.default}});var Gmc=B1t();Object.defineProperty(Jk,"useStdin",{enumerable:!0,get:function(){return Gmc.default}});var Fmc=VFi();Object.defineProperty(Jk,"useStdout",{enumerable:!0,get:function(){return Fmc.default}});var Zmc=PFi();Object.defineProperty(Jk,"useStderr",{enumerable:!0,get:function(){return Zmc.default}});var Lmc=OFi();Object.defineProperty(Jk,"useFocus",{enumerable:!0,get:function(){return Lmc.default}});var Vmc=MFi();Object.defineProperty(Jk,"useFocusManager",{enumerable:!0,get:function(){return Vmc.default}});var Pmc=HFi();Object.defineProperty(Jk,"measureElement",{enumerable:!0,get:function(){return Pmc.default}})});var R1t=H(T1t=>{"use strict";Object.defineProperty(T1t,"__esModule",{value:!0});T1t.Gem=void 0;var Wmc=(Pa(),vi(Va)),Omc=lH(),w1t=Wmc.__importStar(sC());T1t.Gem=(0,w1t.memo)(({active:e})=>{let t=(0,w1t.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,w1t.useMemo)(()=>e?"green":"yellow",[e]);return w1t.default.createElement(Omc.Text,{color:r},t)})});var lDe=H(wGr=>{"use strict";Object.defineProperty(wGr,"__esModule",{value:!0});wGr.useKeypress=Hmc;var Mmc=lH(),YFi=sC();function Hmc({active:e},t,r){let{stdin:n}=(0,Mmc.useStdin)(),a=(0,YFi.useCallback)((o,l)=>t(o,l),r);(0,YFi.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var TGr=H(uDe=>{"use strict";Object.defineProperty(uDe,"__esModule",{value:!0});uDe.useFocusRequest=uDe.FocusRequest=void 0;var Ymc=lDe(),N1t;(function(e){e.BEFORE="before",e.AFTER="after"})(N1t||(uDe.FocusRequest=N1t={}));var Qmc=function({active:e},t,r){(0,Ymc.useKeypress)({active:e},(n,a)=>{a.name==="tab"&&(a.shift?t(N1t.BEFORE):t(N1t.AFTER))},r)};uDe.useFocusRequest=Qmc});var k1t=H(D1t=>{"use strict";Object.defineProperty(D1t,"__esModule",{value:!0});D1t.useListInput=void 0;var Xmc=lDe(),Jmc=function(e,t,{active:r,minus:n,plus:a,set:o,loop:l=!0}){(0,Xmc.useKeypress)({active:r},(A,f)=>{let I=t.indexOf(e);switch(f.name){case n:{let C=I-1;if(l){o(t[(t.length+C)%t.length]);return}if(C<0)return;o(t[C])}break;case a:{let C=I+1;if(l){o(t[C%t.length]);return}if(C>=t.length)return;o(t[C])}break}},[t,e,a,o,l])};D1t.useListInput=Jmc});var G1t=H(x1t=>{"use strict";Object.defineProperty(x1t,"__esModule",{value:!0});x1t.ScrollableItems=void 0;var Umc=(Pa(),vi(Va)),gDe=lH(),p4=Umc.__importStar(sC()),Kmc=TGr(),jmc=k1t(),zmc=({active:e=!0,children:t=[],radius:r=10,size:n=1,loop:a=!0,onFocusRequest:o,willReachEnd:l})=>{let A=Q=>{if(Q.key===null)throw new Error("Expected all children to have a key");return Q.key},f=p4.default.Children.map(t,Q=>A(Q)),I=f[0],[C,b]=(0,p4.useState)(I),E=f.indexOf(C);(0,p4.useEffect)(()=>{f.includes(C)||b(I)},[t]),(0,p4.useEffect)(()=>{l&&E>=f.length-2&&l()},[E]),(0,Kmc.useFocusRequest)({active:e&&!!o},Q=>{o?.(Q)},[o]),(0,jmc.useListInput)(C,f,{active:e,minus:"up",plus:"down",set:b,loop:a});let N=E-r,B=E+r;B>f.length&&(N-=B-f.length,B=f.length),N<0&&(B+=-N,N=0),B>=f.length&&(B=f.length-1);let F=[];for(let Q=N;Q<=B;++Q){let X=f[Q],ae=e&&X===C;F.push(p4.default.createElement(gDe.Box,{key:X,height:n},p4.default.createElement(gDe.Box,{marginLeft:1,marginRight:1},p4.default.createElement(gDe.Text,null,ae?p4.default.createElement(gDe.Text,{color:"cyan",bold:!0},">"):" ")),p4.default.createElement(gDe.Box,null,p4.default.cloneElement(t[Q],{active:ae}))))}return p4.default.createElement(gDe.Box,{flexDirection:"column",width:"100%"},F)};x1t.ScrollableItems=zmc});var RGr=H(_Ce=>{"use strict";Object.defineProperty(_Ce,"__esModule",{value:!0});_Ce.Application=_Ce.MinistoreContext=void 0;var qmc=(Pa(),vi(Va)),$mc=lH(),jUe=qmc.__importStar(sC()),eCc=wt("readline");_Ce.MinistoreContext=jUe.default.createContext(null);var tCc=({children:e})=>{let{stdin:t,setRawMode:r}=(0,$mc.useStdin)();(0,jUe.useEffect)(()=>{r&&r(!0),t&&(0,eCc.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,jUe.useState)(new Map),o=(0,jUe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(f=>new Map([...f,[l,A]])),setAll:l=>a(A=>new Map([...A,...l]))}),[n,a]);return jUe.default.createElement(_Ce.MinistoreContext.Provider,{value:o,children:e})};_Ce.Application=tCc});var F1t=H(NGr=>{"use strict";Object.defineProperty(NGr,"__esModule",{value:!0});NGr.renderForm=sCc;var rCc=(Pa(),vi(Va)),QFi=lH(),XFi=rCc.__importDefault(sC()),nCc=RGr(),iCc=lDe();async function sCc(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,QFi.useApp)();(0,iCc.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,QFi.render)(XFi.default.createElement(nCc.Application,null,XFi.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var JFi=H(xGr=>{"use strict";Object.defineProperty(xGr,"__esModule",{value:!0});var vj=(Pa(),vi(Va)),DGr=el(),FR=yn(),Sj=zs(),oCc=vj.__importStar(I1t()),Z1t=($c(),vi(rg)),kGr=vj.__importDefault(UC()),ZG=vj.__importStar(mUe()),zUe=class extends DGr.BaseCommand{constructor(){super(...arguments),this.interactive=Z1t.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){oCc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>vj.__importStar(R1t())),{ScrollableItems:r}=await Promise.resolve().then(()=>vj.__importStar(G1t())),{FocusRequest:n}=await Promise.resolve().then(()=>vj.__importStar(TGr())),{useListInput:a}=await Promise.resolve().then(()=>vj.__importStar(k1t())),{renderForm:o}=await Promise.resolve().then(()=>vj.__importStar(F1t())),{Box:l,Text:A}=await Promise.resolve().then(()=>vj.__importStar(lH())),{default:f,useCallback:I,useState:C}=await Promise.resolve().then(()=>vj.__importStar(sC())),b=await FR.Configuration.find(this.context.cwd,this.context.plugins),{project:E,workspace:N}=await FR.Project.find(b,this.context.cwd);if(!N)throw new DGr.WorkspaceRequiredError(E.cwd,this.context.cwd);await E.restoreInstallState();let B=await ZG.openVersionFile(E);if(B===null||B.releaseRoots.size===0)return 0;if(B.root===null)throw new Z1t.UsageError("This command can only be run on Git repositories");let F=()=>f.createElement(l,{flexDirection:"row",paddingBottom:1},f.createElement(l,{flexDirection:"column",width:60},f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(l,{flexDirection:"column"},f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to abort.")))),Q=({workspace:ue,active:de,decision:be,setDecision:Se})=>{let De=ue.manifest.raw.stableVersion??ue.manifest.version;if(De===null)throw new Error(`Assertion failed: The version should have been set (${FR.structUtils.prettyLocator(b,ue.anchoredLocator)})`);if(kGr.default.prerelease(De)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${De})`);let k=[ZG.Decision.UNDECIDED,ZG.Decision.DECLINE,ZG.Decision.PATCH,ZG.Decision.MINOR,ZG.Decision.MAJOR];a(be,k,{active:de,minus:"left",plus:"right",set:Se});let et=be===ZG.Decision.UNDECIDED?f.createElement(A,{color:"yellow"},De):be===ZG.Decision.DECLINE?f.createElement(A,{color:"green"},De):f.createElement(A,null,f.createElement(A,{color:"magenta"},De)," \u2192 ",f.createElement(A,{color:"green"},kGr.default.valid(be)?be:kGr.default.inc(De,be)));return f.createElement(l,{flexDirection:"column"},f.createElement(l,null,f.createElement(A,null,FR.structUtils.prettyLocator(b,ue.anchoredLocator)," - ",et)),f.createElement(l,null,k.map(ct=>{let Me=ct===be;return f.createElement(l,{key:ct,paddingLeft:2},f.createElement(A,null,f.createElement(t,{active:Me})," ",ct))})))},X=ue=>{let de=new Set(B.releaseRoots),be=new Map([...ue].filter(([Se])=>de.has(Se)));for(;;){let Se=ZG.getUndecidedDependentWorkspaces({project:B.project,releases:be}),De=!1;if(Se.length>0){for(let[k]of Se)if(!de.has(k)){de.add(k),De=!0;let et=ue.get(k);typeof et<"u"&&be.set(k,et)}}if(!De)break}return{relevantWorkspaces:de,relevantReleases:be}},ae=()=>{let[ue,de]=C(()=>new Map(B.releases)),be=I((Se,De)=>{let k=new Map(ue);De!==ZG.Decision.UNDECIDED?k.set(Se,De):k.delete(Se);let{relevantReleases:et}=X(k);de(et)},[ue,de]);return[ue,be]},ne=({workspaces:ue,releases:de})=>{let be=[];be.push(`${ue.size} total`);let Se=0,De=0;for(let k of ue){let et=de.get(k);typeof et>"u"?De+=1:et!==ZG.Decision.DECLINE&&(Se+=1)}return be.push(`${Se} release${Se===1?"":"s"}`),be.push(`${De} remaining`),f.createElement(A,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:ue})=>{let[de,be]=ae();ue(de);let{relevantWorkspaces:Se}=X(de),De=new Set([...Se].filter(Me=>!B.releaseRoots.has(Me))),[k,et]=C(0),ct=I(Me=>{switch(Me){case n.BEFORE:et(k-1);break;case n.AFTER:et(k+1);break}},[k,et]);return f.createElement(l,{flexDirection:"column"},f.createElement(F,null),f.createElement(l,null,f.createElement(A,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(l,{flexDirection:"column",marginTop:1,paddingLeft:2},[...B.changedFiles].map(Me=>f.createElement(l,{key:Me},f.createElement(A,null,f.createElement(A,{color:"grey"},Sj.npath.fromPortablePath(B.root)),Sj.npath.sep,Sj.npath.relative(Sj.npath.fromPortablePath(B.root),Sj.npath.fromPortablePath(Me)))))),B.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),De.size>3?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:B.releaseRoots,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===0,radius:1,size:2,onFocusRequest:ct},[...B.releaseRoots].map(Me=>f.createElement(Q,{key:Me.cwd,workspace:Me,decision:de.get(Me)||ZG.Decision.UNDECIDED,setDecision:je=>be(Me,je)}))))),De.size>0?f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(l,null,f.createElement(A,null,"(Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),De.size>5?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:De,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===1,radius:2,size:2,onFocusRequest:ct},[...De].map(Me=>f.createElement(Q,{key:Me.cwd,workspace:Me,decision:de.get(Me)||ZG.Decision.UNDECIDED,setDecision:je=>be(Me,je)}))))):null)},{versionFile:B},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;B.releases.clear();for(let[ue,de]of fe)B.releases.set(ue,de);await B.saveAll()}async executeStandard(){let t=await FR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await FR.Project.find(t,this.context.cwd);if(!n)throw new DGr.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await FR.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let l=await ZG.openVersionFile(r);if(l===null||l.releaseRoots.size===0)return;if(l.root===null)throw new Z1t.UsageError("This command can only be run on Git repositories");if(o.reportInfo(FR.MessageName.UNNAMED,`Your PR was started right after ${FR.formatUtils.pretty(t,l.baseHash.slice(0,7),"yellow")} ${FR.formatUtils.pretty(t,l.baseTitle,"magenta")}`),l.changedFiles.size>0){o.reportInfo(FR.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let b of l.changedFiles)o.reportInfo(null,`${FR.formatUtils.pretty(t,Sj.npath.fromPortablePath(l.root),"gray")}${Sj.npath.sep}${Sj.npath.relative(Sj.npath.fromPortablePath(l.root),Sj.npath.fromPortablePath(b))}`)}let A=!1,f=!1,I=ZG.getUndecidedWorkspaces(l);if(I.size>0){A||o.reportSeparator();for(let b of I)o.reportError(FR.MessageName.UNNAMED,`${FR.structUtils.prettyLocator(t,b.anchoredLocator)} has been modified but doesn't have a release strategy attached`);A=!0}let C=ZG.getUndecidedDependentWorkspaces(l);for(let[b,E]of C)f||o.reportSeparator(),o.reportError(FR.MessageName.UNNAMED,`${FR.structUtils.prettyLocator(t,b.anchoredLocator)} doesn't have a release strategy attached, but depends on ${FR.structUtils.prettyWorkspace(t,E)} which is planned for release.`),f=!0;(A||f)&&(o.reportSeparator(),o.reportInfo(FR.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(FR.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};zUe.paths=[["version","check"]];zUe.usage=Z1t.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});xGr.default=zUe});var zFi=H(FGr=>{"use strict";Object.defineProperty(FGr,"__esModule",{value:!0});var jFi=(Pa(),vi(Va)),UFi=el(),KFi=yn(),bCe=($c(),vi(rg)),GGr=jFi.__importDefault(UC()),yCe=jFi.__importStar(mUe()),qUe=class extends UFi.BaseCommand{constructor(){super(...arguments),this.deferred=bCe.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=bCe.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=bCe.Option.String()}async execute(){let t=await KFi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await KFi.Project.find(t,this.context.cwd);if(!n)throw new UFi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=GGr.default.valid(this.strategy),l=this.strategy===yCe.Decision.DECLINE,A;if(o)if(n.manifest.version!==null){let I=yCe.suggestStrategy(n.manifest.version,this.strategy);I!==null?A=I:A=this.strategy}else A=this.strategy;else{let I=n.manifest.version;if(!l){if(I===null)throw new bCe.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof I!="string"||!GGr.default.valid(I))throw new bCe.UsageError(`Can't bump the version (${I}) if it's not valid semver`)}A=yCe.validateReleaseDecision(this.strategy)}if(!a){let C=(await yCe.resolveVersionFiles(r)).get(n);if(typeof C<"u"&&A!==yCe.Decision.DECLINE){let b=yCe.applyStrategy(n.manifest.version,A);if(GGr.default.lt(b,C))throw new bCe.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${C})`)}}let f=await yCe.openVersionFile(r,{allowEmpty:!0});return f.releases.set(n,A),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};qUe.paths=[["version"]];qUe.usage=bCe.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});FGr.default=qUe});var ZGr=H(f4=>{"use strict";Object.defineProperty(f4,"__esModule",{value:!0});f4.versionUtils=f4.VersionCommand=f4.VersionCheckCommand=f4.VersionApplyCommand=void 0;var L1t=(Pa(),vi(Va)),qFi=yn(),$Fi=L1t.__importDefault(fGi());f4.VersionApplyCommand=$Fi.default;var eZi=L1t.__importDefault(JFi());f4.VersionCheckCommand=eZi.default;var tZi=L1t.__importDefault(zFi());f4.VersionCommand=tZi.default;var aCc=L1t.__importStar(mUe());f4.versionUtils=aCc;var cCc={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:qFi.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:qFi.SettingsType.BOOLEAN,default:!1}},commands:[$Fi.default,eZi.default,tZi.default]};f4.default=cCc});var dLi=H((ZVu,ALi)=>{"use strict";var uLi=wt("path"),l_c=zjt(),u_c=$jt();function gLi(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=l_c.sync(e.command,{path:r[u_c({env:r})],pathExt:t?uLi.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=uLi.resolve(a?e.options.cwd:"",l)),l}function g_c(e){return gLi(e)||gLi(e,!0)}ALi.exports=g_c});var pLi=H((LVu,aFr)=>{"use strict";var oFr=/([()\][%!^"`<>&|;, *?])/g;function A_c(e){return e=e.replace(oFr,"^$1"),e}function d_c(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(oFr,"^$1"),t&&(e=e.replace(oFr,"^$1")),e}aFr.exports.command=A_c;aFr.exports.argument=d_c});var ILi=H((VVu,fLi)=>{"use strict";var cFr=wt("fs"),p_c=r6t();function f_c(e){let r=Buffer.alloc(150),n;try{n=cFr.openSync(e,"r"),cFr.readSync(n,r,0,150,0),cFr.closeSync(n)}catch{}return p_c(r.toString())}fLi.exports=f_c});var _Li=H((PVu,CLi)=>{"use strict";var I_c=wt("path"),hLi=dLi(),mLi=pLi(),h_c=ILi(),m_c=process.platform==="win32",C_c=/\.(?:com|exe)$/i,__c=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function y_c(e){e.file=hLi(e);let t=e.file&&h_c(e.file);return t?(e.args.unshift(e.file),e.command=t,hLi(e)):e.file}function b_c(e){if(!m_c)return e;let t=y_c(e),r=!C_c.test(t);if(e.options.forceShell||r){let n=__c.test(t);e.command=I_c.normalize(e.command),e.command=mLi.command(e.command),e.args=e.args.map(o=>mLi.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function E_c(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:b_c(n)}CLi.exports=E_c});var ELi=H((WVu,bLi)=>{"use strict";var lFr=process.platform==="win32";function uFr(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function S_c(e,t){if(!lFr)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=yLi(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function yLi(e,t){return lFr&&e===1&&!t.file?uFr(t.original,"spawn"):null}function v_c(e,t){return lFr&&e===1&&!t.file?uFr(t.original,"spawnSync"):null}bLi.exports={hookChildProcess:S_c,verifyENOENT:yLi,verifyENOENTSync:v_c,notFoundError:uFr}});var BLi=H((OVu,pDe)=>{"use strict";var SLi=wt("child_process"),gFr=_Li(),AFr=ELi();function vLi(e,t,r){let n=gFr(e,t,r),a=SLi.spawn(n.command,n.args,n.options);return AFr.hookChildProcess(a,n),a}function B_c(e,t,r){let n=gFr(e,t,r),a=SLi.spawnSync(n.command,n.args,n.options);return a.error=a.error||AFr.verifyENOENTSync(a.status,n),a}pDe.exports=vLi;pDe.exports.spawn=vLi;pDe.exports.sync=B_c;pDe.exports._parse=gFr;pDe.exports._enoent=AFr});var dFr=H((MVu,wLi)=>{"use strict";wLi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var w_c=dFr(),SCe=Object.prototype.toString;function IFr(e){return SCe.call(e)==="[object Array]"}function pFr(e){return typeof e>"u"}function T_c(e){return e!==null&&!pFr(e)&&e.constructor!==null&&!pFr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function R_c(e){return SCe.call(e)==="[object ArrayBuffer]"}function N_c(e){return typeof FormData<"u"&&e instanceof FormData}function D_c(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function k_c(e){return typeof e=="string"}function x_c(e){return typeof e=="number"}function TLi(e){return e!==null&&typeof e=="object"}function M1t(e){if(SCe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function G_c(e){return SCe.call(e)==="[object Date]"}function F_c(e){return SCe.call(e)==="[object File]"}function Z_c(e){return SCe.call(e)==="[object Blob]"}function RLi(e){return SCe.call(e)==="[object Function]"}function L_c(e){return TLi(e)&&RLi(e.pipe)}function V_c(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function P_c(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function W_c(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function hFr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),IFr(e))for(var r=0,n=e.length;r{"use strict";var fDe=$Z();function DLi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}kLi.exports=function(t,r,n){if(!r)return t;var a;if(n)a=n(r);else if(fDe.isURLSearchParams(r))a=r.toString();else{var o=[];fDe.forEach(r,function(f,I){f===null||typeof f>"u"||(fDe.isArray(f)?I=I+"[]":f=[f],fDe.forEach(f,function(b){fDe.isDate(b)?b=b.toISOString():fDe.isObject(b)&&(b=JSON.stringify(b)),o.push(DLi(I)+"="+DLi(b))}))}),a=o.join("&")}if(a){var l=t.indexOf("#");l!==-1&&(t=t.slice(0,l)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var GLi=H((QVu,xLi)=>{"use strict";var H_c=$Z();function Y1t(){this.handlers=[]}Y1t.prototype.use=function(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1};Y1t.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};Y1t.prototype.forEach=function(t){H_c.forEach(this.handlers,function(n){n!==null&&t(n)})};xLi.exports=Y1t});var ZLi=H((XVu,FLi)=>{"use strict";var Y_c=$Z();FLi.exports=function(t,r){Y_c.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var Q1t=H((JVu,LLi)=>{"use strict";LLi.exports=function(t,r,n,a,o){return t.config=r,n&&(t.code=n),t.request=a,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}});var X1t=H((UVu,VLi)=>{"use strict";var Q_c=Q1t();VLi.exports=function(t,r,n,a,o){var l=new Error(t);return Q_c(l,r,n,a,o)}});var mFr=H((KVu,PLi)=>{"use strict";var X_c=X1t();PLi.exports=function(t,r,n){var a=n.config.validateStatus;!n.status||!a||a(n.status)?t(n):r(X_c("Request failed with status code "+n.status,n.config,null,n.request,n))}});var OLi=H((jVu,WLi)=>{"use strict";var J1t=$Z();WLi.exports=J1t.isStandardBrowserEnv()?function(){return{write:function(r,n,a,o,l,A){var f=[];f.push(r+"="+encodeURIComponent(n)),J1t.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),J1t.isString(o)&&f.push("path="+o),J1t.isString(l)&&f.push("domain="+l),A===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var HLi=H((zVu,MLi)=>{"use strict";MLi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var QLi=H((qVu,YLi)=>{"use strict";YLi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var CFr=H(($Vu,XLi)=>{"use strict";var J_c=HLi(),U_c=QLi();XLi.exports=function(t,r){return t&&!J_c(r)?U_c(t,r):r}});var ULi=H((ePu,JLi)=>{"use strict";var _Fr=$Z(),K_c=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];JLi.exports=function(t){var r={},n,a,o;return t&&_Fr.forEach(t.split(` +`),function(A){if(o=A.indexOf(":"),n=_Fr.trim(A.substr(0,o)).toLowerCase(),a=_Fr.trim(A.substr(o+1)),n){if(r[n]&&K_c.indexOf(n)>=0)return;n==="set-cookie"?r[n]=(r[n]?r[n]:[]).concat([a]):r[n]=r[n]?r[n]+", "+a:a}}),r}});var zLi=H((tPu,jLi)=>{"use strict";var KLi=$Z();jLi.exports=KLi.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function a(o){var l=o;return t&&(r.setAttribute("href",l),l=r.href),r.setAttribute("href",l),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=a(window.location.href),function(l){var A=KLi.isString(l)?a(l):l;return A.protocol===n.protocol&&A.host===n.host}}():function(){return function(){return!0}}()});var $Li=H((rPu,qLi)=>{"use strict";var U1t=$Z(),j_c=mFr(),z_c=OLi(),q_c=H1t(),$_c=CFr(),e0c=ULi(),t0c=zLi(),yFr=X1t();qLi.exports=function(t){return new Promise(function(n,a){var o=t.data,l=t.headers,A=t.responseType;U1t.isFormData(o)&&delete l["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var I=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";l.Authorization="Basic "+btoa(I+":"+C)}var b=$_c(t.baseURL,t.url);f.open(t.method.toUpperCase(),q_c(b,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function E(){if(f){var B="getAllResponseHeaders"in f?e0c(f.getAllResponseHeaders()):null,F=!A||A==="text"||A==="json"?f.responseText:f.response,Q={data:F,status:f.status,statusText:f.statusText,headers:B,config:t,request:f};j_c(n,a,Q),f=null}}if("onloadend"in f?f.onloadend=E:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(E)},f.onabort=function(){f&&(a(yFr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(yFr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var F="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),a(yFr(F,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},U1t.isStandardBrowserEnv()){var N=(t.withCredentials||t0c(b))&&t.xsrfCookieName?z_c.read(t.xsrfCookieName):void 0;N&&(l[t.xsrfHeaderName]=N)}"setRequestHeader"in f&&U1t.forEach(l,function(F,Q){typeof o>"u"&&Q.toLowerCase()==="content-type"?delete l[Q]:f.setRequestHeader(Q,F)}),U1t.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),A&&A!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(F){f&&(f.abort(),a(F),f=null)}),o||(o=null),f.send(o)})}});var t9i=H((nPu,e9i)=>{var tKe;e9i.exports=function(){if(!tKe){try{tKe=wt("debug")("follow-redirects")}catch{}typeof tKe!="function"&&(tKe=function(){})}tKe.apply(null,arguments)}});var GFr=H((iPu,xFr)=>{var nKe=wt("url"),rKe=nKe.URL,r0c=wt("http"),n0c=wt("https"),BFr=wt("stream").Writable,wFr=wt("assert"),r9i=t9i();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=BCe(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var TFr=!1;try{wFr(new rKe(""))}catch(e){TFr=e.code==="ERR_INVALID_URL"}var i0c=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],RFr=["abort","aborted","connect","error","socket","timeout"],NFr=Object.create(null);RFr.forEach(function(e){NFr[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var EFr=iKe("ERR_INVALID_URL","Invalid URL",TypeError),SFr=iKe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),s0c=iKe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",SFr),o0c=iKe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),a0c=iKe("ERR_STREAM_WRITE_AFTER_END","write after end"),c0c=BFr.prototype.destroy||i9i;function BV(e,t){BFr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(a){r.emit("error",a instanceof SFr?a:new SFr({cause:a}))}},this._performRequest()}BV.prototype=Object.create(BFr.prototype);BV.prototype.abort=function(){kFr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};BV.prototype.destroy=function(e){return kFr(this._currentRequest,e),c0c.call(this,e),this};BV.prototype.write=function(e,t,r){if(this._ending)throw new a0c;if(!vCe(e)&&!g0c(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(BCe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new o0c),this.abort())};BV.prototype.end=function(e,t,r){if(BCe(e)?(r=e,e=t=null):BCe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,a=this._currentRequest;this.write(e,t,function(){n._ended=!0,a.end(null,null,r)}),this._ending=!0}};BV.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};BV.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};BV.prototype.setTimeout=function(e,t){var r=this;function n(l){l.setTimeout(e),l.removeListener("timeout",l.destroy),l.addListener("timeout",l.destroy)}function a(l){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),n(l)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",n),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){BV.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(BV.prototype,e,{get:function(){return this._currentRequest[e]}})});BV.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};BV.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var a of RFr)n.on(a,NFr[a]);if(this._currentUrl=/^\//.test(this._options.path)?nKe.format(this._options):this._options.path,this._isRedirect){var o=0,l=this,A=this._requestBodyBuffers;(function f(I){if(n===l._currentRequest)if(I)l.emit("error",I);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(kFr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new s0c;var n,a=this._options.beforeRedirect;a&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],bFr(/^content-/i,this._options.headers));var l=bFr(/^host$/i,this._options.headers),A=DFr(this._currentUrl),f=l||A.host,I=/^\w+:/.test(r)?this._currentUrl:nKe.format(Object.assign(A,{host:f})),C=l0c(r,I);if(r9i("redirecting to",C.href),this._isRedirect=!0,vFr(C,this._options),(C.protocol!==A.protocol&&C.protocol!=="https:"||C.host!==f&&!u0c(C.host,f))&&bFr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),BCe(a)){var b={headers:e.headers,statusCode:t},E={url:I,method:o,headers:n};a(this._options,b,E),this._sanitizeOptions(this._options)}this._performRequest()};function n9i(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var a=n+":",o=r[a]=e[n],l=t[n]=Object.create(o);function A(I,C,b){return A0c(I)?I=vFr(I):vCe(I)?I=vFr(DFr(I)):(b=C,C=s9i(I),I={protocol:a}),BCe(C)&&(b=C,C=null),C=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},I,C),C.nativeProtocols=r,!vCe(C.host)&&!vCe(C.hostname)&&(C.hostname="::1"),wFr.equal(C.protocol,a,"protocol mismatch"),r9i("options",C),new BV(C,b)}function f(I,C,b){var E=l.request(I,C,b);return E.end(),E}Object.defineProperties(l,{request:{value:A,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function i9i(){}function DFr(e){var t;if(TFr)t=new rKe(e);else if(t=s9i(nKe.parse(e)),!vCe(t.protocol))throw new EFr({input:e});return t}function l0c(e,t){return TFr?new rKe(e,t):DFr(nKe.resolve(t,e))}function s9i(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new EFr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new EFr({input:e.href||e});return e}function vFr(e,t){var r=t||{};for(var n of i0c)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function bFr(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function iKe(e,t,r){function n(a){BCe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function kFr(e,t){for(var r of RFr)e.removeListener(r,NFr[r]);e.on("error",i9i),e.destroy(t)}function u0c(e,t){wFr(vCe(e)&&vCe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function vCe(e){return typeof e=="string"||e instanceof String}function BCe(e){return typeof e=="function"}function g0c(e){return typeof e=="object"&&"length"in e}function A0c(e){return rKe&&e instanceof rKe}xFr.exports=n9i({http:r0c,https:n0c});xFr.exports.wrap=n9i});var FFr=H((sPu,d0c)=>{d0c.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var g9i=H((oPu,u9i)=>{"use strict";var sKe=$Z(),o9i=mFr(),p0c=CFr(),f0c=H1t(),I0c=wt("http"),h0c=wt("https"),m0c=GFr().http,C0c=GFr().https,a9i=wt("url"),_0c=wt("zlib"),y0c=FFr(),K1t=X1t(),ZFr=Q1t(),c9i=/https:?/;function l9i(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(o){o.headers.host=o.host,l9i(o,t,o.href)}}u9i.exports=function(t){return new Promise(function(n,a){var o=function(Yt){n(Yt)},l=function(Yt){a(Yt)},A=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+y0c.version,A&&!sKe.isStream(A)){if(!Buffer.isBuffer(A))if(sKe.isArrayBuffer(A))A=Buffer.from(new Uint8Array(A));else if(sKe.isString(A))A=Buffer.from(A,"utf-8");else return l(K1t("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=A.length}var I=void 0;if(t.auth){var C=t.auth.username||"",b=t.auth.password||"";I=C+":"+b}var E=p0c(t.baseURL,t.url),N=a9i.parse(E),B=N.protocol||"http:";if(!I&&N.auth){var F=N.auth.split(":"),Q=F[0]||"",X=F[1]||"";I=Q+":"+X}I&&delete f.Authorization;var ae=c9i.test(B),ne=ae?t.httpsAgent:t.httpAgent,ce={path:f0c(N.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ne,agents:{http:t.httpAgent,https:t.httpsAgent},auth:I};t.socketPath?ce.socketPath=t.socketPath:(ce.hostname=N.hostname,ce.port=N.port);var fe=t.proxy;if(!fe&&fe!==!1){var ue=B.slice(0,-1)+"_proxy",de=process.env[ue]||process.env[ue.toUpperCase()];if(de){var be=a9i.parse(de),Se=process.env.no_proxy||process.env.NO_PROXY,De=!0;if(Se){var k=Se.split(",").map(function(Yt){return Yt.trim()});De=!k.some(function(Yt){return Yt?Yt==="*"||Yt[0]==="."&&N.hostname.substr(N.hostname.length-Yt.length)===Yt?!0:N.hostname===Yt:!1})}if(De&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var et=be.auth.split(":");fe.auth={username:et[0],password:et[1]}}}}fe&&(ce.headers.host=N.hostname+(N.port?":"+N.port:""),l9i(ce,fe,B+"//"+N.hostname+(N.port?":"+N.port:"")+ce.path));var ct,Me=ae&&(fe?c9i.test(fe.protocol):!0);t.transport?ct=t.transport:t.maxRedirects===0?ct=Me?h0c:I0c:(t.maxRedirects&&(ce.maxRedirects=t.maxRedirects),ct=Me?C0c:m0c),t.maxBodyLength>-1&&(ce.maxBodyLength=t.maxBodyLength);var je=ct.request(ce,function(Yt){if(!je.aborted){var Tr=Yt,Nr=Yt.req||je;if(Yt.statusCode!==204&&Nr.method!=="HEAD"&&t.decompress!==!1)switch(Yt.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Tr=Tr.pipe(_0c.createUnzip()),delete Yt.headers["content-encoding"];break}var er={status:Yt.statusCode,statusText:Yt.statusMessage,headers:Yt.headers,config:t,request:Nr};if(t.responseType==="stream")er.data=Tr,o9i(o,l,er);else{var vt=[],xt=0;Tr.on("data",function(qt){vt.push(qt),xt+=qt.length,t.maxContentLength>-1&&xt>t.maxContentLength&&(Tr.destroy(),l(K1t("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Nr)))}),Tr.on("error",function(qt){je.aborted||l(ZFr(qt,t,null,Nr))}),Tr.on("end",function(){var qt=Buffer.concat(vt);t.responseType!=="arraybuffer"&&(qt=qt.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&(qt=sKe.stripBOM(qt))),er.data=qt,o9i(o,l,er)})}}});if(je.on("error",function(Yt){je.aborted&&Yt.code!=="ERR_FR_TOO_MANY_REDIRECTS"||l(ZFr(Yt,t,null,je))}),t.timeout){var St=parseInt(t.timeout,10);if(isNaN(St)){l(K1t("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",je));return}je.setTimeout(St,function(){je.abort(),l(K1t("timeout of "+St+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",je))})}t.cancelToken&&t.cancelToken.promise.then(function(Yt){je.aborted||(je.abort(),l(Yt))}),sKe.isStream(A)?A.on("error",function(Yt){l(ZFr(Yt,t,null,je))}).pipe(je):je.end(A)})}});var z1t=H((aPu,p9i)=>{"use strict";var Uk=$Z(),A9i=ZLi(),b0c=Q1t(),E0c={"Content-Type":"application/x-www-form-urlencoded"};function d9i(e,t){!Uk.isUndefined(e)&&Uk.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function S0c(){var e;return typeof XMLHttpRequest<"u"?e=$Li():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=g9i()),e}function v0c(e,t,r){if(Uk.isString(e))try{return(t||JSON.parse)(e),Uk.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var j1t={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:S0c(),transformRequest:[function(t,r){return A9i(r,"Accept"),A9i(r,"Content-Type"),Uk.isFormData(t)||Uk.isArrayBuffer(t)||Uk.isBuffer(t)||Uk.isStream(t)||Uk.isFile(t)||Uk.isBlob(t)?t:Uk.isArrayBufferView(t)?t.buffer:Uk.isURLSearchParams(t)?(d9i(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):Uk.isObject(t)||r&&r["Content-Type"]==="application/json"?(d9i(r,"application/json"),v0c(t)):t}],transformResponse:[function(t){var r=this.transitional,n=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!n&&this.responseType==="json";if(o||a&&Uk.isString(t)&&t.length)try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?b0c(l,this,"E_JSON_PARSE"):l}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};j1t.headers={common:{Accept:"application/json, text/plain, */*"}};Uk.forEach(["delete","get","head"],function(t){j1t.headers[t]={}});Uk.forEach(["post","put","patch"],function(t){j1t.headers[t]=Uk.merge(E0c)});p9i.exports=j1t});var I9i=H((cPu,f9i)=>{"use strict";var B0c=$Z(),w0c=z1t();f9i.exports=function(t,r,n){var a=this||w0c;return B0c.forEach(n,function(l){t=l.call(a,t,r)}),t}});var LFr=H((lPu,h9i)=>{"use strict";h9i.exports=function(t){return!!(t&&t.__CANCEL__)}});var _9i=H((uPu,C9i)=>{"use strict";var m9i=$Z(),VFr=I9i(),T0c=LFr(),R0c=z1t();function PFr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}C9i.exports=function(t){PFr(t),t.headers=t.headers||{},t.data=VFr.call(t,t.data,t.headers,t.transformRequest),t.headers=m9i.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),m9i.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||R0c.adapter;return r(t).then(function(a){return PFr(t),a.data=VFr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return T0c(a)||(PFr(t),a&&a.response&&(a.response.data=VFr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var WFr=H((gPu,y9i)=>{"use strict";var LG=$Z();y9i.exports=function(t,r){r=r||{};var n={},a=["url","method","data"],o=["headers","auth","proxy","params"],l=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],A=["validateStatus"];function f(E,N){return LG.isPlainObject(E)&&LG.isPlainObject(N)?LG.merge(E,N):LG.isPlainObject(N)?LG.merge({},N):LG.isArray(N)?N.slice():N}function I(E){LG.isUndefined(r[E])?LG.isUndefined(t[E])||(n[E]=f(void 0,t[E])):n[E]=f(t[E],r[E])}LG.forEach(a,function(N){LG.isUndefined(r[N])||(n[N]=f(void 0,r[N]))}),LG.forEach(o,I),LG.forEach(l,function(N){LG.isUndefined(r[N])?LG.isUndefined(t[N])||(n[N]=f(void 0,t[N])):n[N]=f(void 0,r[N])}),LG.forEach(A,function(N){N in r?n[N]=f(t[N],r[N]):N in t&&(n[N]=f(void 0,t[N]))});var C=a.concat(o).concat(l).concat(A),b=Object.keys(t).concat(Object.keys(r)).filter(function(N){return C.indexOf(N)===-1});return LG.forEach(b,I),n}});var B9i=H((APu,v9i)=>{"use strict";var E9i=FFr(),OFr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){OFr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var b9i={},N0c=E9i.version.split(".");function S9i(e,t){for(var r=t?t.split("."):N0c,n=e.split("."),a=0;a<3;a++){if(r[a]>n[a])return!0;if(r[a]0;){var o=n[a],l=t[o];if(l){var A=e[o],f=A===void 0||l(A,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}v9i.exports={isOlderVersion:S9i,assertOptions:D0c,validators:OFr}});var k9i=H((dPu,D9i)=>{"use strict";var R9i=$Z(),k0c=H1t(),w9i=GLi(),T9i=_9i(),q1t=WFr(),N9i=B9i(),IDe=N9i.validators;function oKe(e){this.defaults=e,this.interceptors={request:new w9i,response:new w9i}}oKe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=q1t(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&N9i.assertOptions(r,{silentJSONParsing:IDe.transitional(IDe.boolean,"1.0.0"),forcedJSONParsing:IDe.transitional(IDe.boolean,"1.0.0"),clarifyTimeoutError:IDe.transitional(IDe.boolean,"1.0.0")},!1);var n=[],a=!0;this.interceptors.request.forEach(function(E){typeof E.runWhen=="function"&&E.runWhen(t)===!1||(a=a&&E.synchronous,n.unshift(E.fulfilled,E.rejected))});var o=[];this.interceptors.response.forEach(function(E){o.push(E.fulfilled,E.rejected)});var l;if(!a){var A=[T9i,void 0];for(Array.prototype.unshift.apply(A,n),A=A.concat(o),l=Promise.resolve(t);A.length;)l=l.then(A.shift(),A.shift());return l}for(var f=t;n.length;){var I=n.shift(),C=n.shift();try{f=I(f)}catch(b){C(b);break}}try{l=T9i(f)}catch(b){return Promise.reject(b)}for(;o.length;)l=l.then(o.shift(),o.shift());return l};oKe.prototype.getUri=function(t){return t=q1t(this.defaults,t),k0c(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};R9i.forEach(["delete","get","head","options"],function(t){oKe.prototype[t]=function(r,n){return this.request(q1t(n||{},{method:t,url:r,data:(n||{}).data}))}});R9i.forEach(["post","put","patch"],function(t){oKe.prototype[t]=function(r,n,a){return this.request(q1t(a||{},{method:t,url:r,data:n}))}});D9i.exports=oKe});var HFr=H((pPu,x9i)=>{"use strict";function MFr(e){this.message=e}MFr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};MFr.prototype.__CANCEL__=!0;x9i.exports=MFr});var F9i=H((fPu,G9i)=>{"use strict";var x0c=HFr();function $1t(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new x0c(a),t(r.reason))})}$1t.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};$1t.source=function(){var t,r=new $1t(function(a){t=a});return{token:r,cancel:t}};G9i.exports=$1t});var L9i=H((IPu,Z9i)=>{"use strict";Z9i.exports=function(t){return function(n){return t.apply(null,n)}}});var P9i=H((hPu,V9i)=>{"use strict";V9i.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var M9i=H((mPu,YFr)=>{"use strict";var W9i=$Z(),G0c=dFr(),e2t=k9i(),F0c=WFr(),Z0c=z1t();function O9i(e){var t=new e2t(e),r=G0c(e2t.prototype.request,t);return W9i.extend(r,e2t.prototype,t),W9i.extend(r,t),r}var I4=O9i(Z0c);I4.Axios=e2t;I4.create=function(t){return O9i(F0c(I4.defaults,t))};I4.Cancel=HFr();I4.CancelToken=F9i();I4.isCancel=LFr();I4.all=function(t){return Promise.all(t)};I4.spread=L9i();I4.isAxiosError=P9i();YFr.exports=I4;YFr.exports.default=I4});var Y9i=H((CPu,H9i)=>{H9i.exports=M9i()});var X9i=H((_Pu,Q9i)=>{var hDe=1e3,mDe=hDe*60,CDe=mDe*60,wCe=CDe*24,L0c=wCe*7,V0c=wCe*365.25;Q9i.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return P0c(e);if(r==="number"&&isFinite(e))return t.long?O0c(e):W0c(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function P0c(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*V0c;case"weeks":case"week":case"w":return r*L0c;case"days":case"day":case"d":return r*wCe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*CDe;case"minutes":case"minute":case"mins":case"min":case"m":return r*mDe;case"seconds":case"second":case"secs":case"sec":case"s":return r*hDe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function W0c(e){var t=Math.abs(e);return t>=wCe?Math.round(e/wCe)+"d":t>=CDe?Math.round(e/CDe)+"h":t>=mDe?Math.round(e/mDe)+"m":t>=hDe?Math.round(e/hDe)+"s":e+"ms"}function O0c(e){var t=Math.abs(e);return t>=wCe?t2t(e,t,wCe,"day"):t>=CDe?t2t(e,t,CDe,"hour"):t>=mDe?t2t(e,t,mDe,"minute"):t>=hDe?t2t(e,t,hDe,"second"):e+" ms"}function t2t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var QFr=H((yPu,J9i)=>{function M0c(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=X9i(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{yO.formatArgs=Y0c;yO.save=Q0c;yO.load=X0c;yO.useColors=H0c;yO.storage=J0c();yO.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();yO.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function H0c(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Y0c(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+r2t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}yO.log=console.debug||console.log||(()=>{});function Q0c(e){try{e?yO.storage.setItem("debug",e):yO.storage.removeItem("debug")}catch{}}function X0c(){let e;try{e=yO.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function J0c(){try{return localStorage}catch{}}r2t.exports=QFr()(yO);var{formatters:U0c}=r2t.exports;U0c.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var j9i=H((Kk,i2t)=>{var K0c=wt("tty"),n2t=wt("util");Kk.init=ryc;Kk.log=$0c;Kk.formatArgs=z0c;Kk.save=eyc;Kk.load=tyc;Kk.useColors=j0c;Kk.destroy=n2t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Kk.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(Kk.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Kk.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function j0c(){return"colors"in Kk.inspectOpts?!!Kk.inspectOpts.colors:K0c.isatty(process.stderr.fd)}function z0c(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+e2t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=o0c()+t+" "+e[0]}function o0c(){return Kk.inspectOpts.hideDate?"":new Date().toISOString()+" "}function a0c(...e){return process.stderr.write($1t.format(...e)+` -`)}function c0c(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function l0c(){return process.env.DEBUG}function u0c(e){e.inspectOpts={};let t=Object.keys(Kk.inspectOpts);for(let r=0;rt.trim()).join(" ")};x9i.O=function(e){return this.inspectOpts.colors=this.useColors,$1t.inspect(e,this.inspectOpts)}});var WFr=H((AVu,PFr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?PFr.exports=k9i():PFr.exports=G9i()});var Z9i=H((dVu,F9i)=>{var{Transform:g0c}=wt("stream"),OFr=class extends g0c{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,n){n(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};F9i.exports=OFr});var P9i=H((fVu,V9i)=>{var{EventEmitter:A0c}=wt("events"),Bj=WFr()("localtunnel:client"),MFr=wt("fs"),L9i=wt("net"),d0c=wt("tls"),p0c=Z9i();V9i.exports=class extends A0c{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,n=t.remote_port,a=t.local_host||"localhost",o=t.local_port,l=t.local_https?"https":"http",A=t.allow_invalid_cert;Bj("establishing tunnel %s://%s:%s <> %s:%s",l,a,o,r,n);let f=L9i.connect({host:r,port:n});f.setKeepAlive(!0),f.on("error",C=>{Bj("got remote connection error",C.message),C.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${n} (check your firewall settings)`)),f.end()});let I=()=>{if(f.destroyed){Bj("remote destroyed"),this.emit("dead");return}Bj("connecting locally to %s://%s:%d",l,a,o),f.pause(),A&&Bj("allowing invalid certificates");let C=()=>A?{rejectUnauthorized:!1}:{cert:MFr.readFileSync(t.local_cert),key:MFr.readFileSync(t.local_key),ca:t.local_ca?[MFr.readFileSync(t.local_ca)]:void 0},b=t.local_https?d0c.connect({host:a,port:o,...C()}):L9i.connect({host:a,port:o}),E=()=>{Bj("remote close"),this.emit("dead"),b.end()};f.once("close",E),b.once("error",N=>{if(Bj("local error %s",N.message),b.end(),f.removeListener("close",E),N.code!=="ECONNREFUSED")return f.end();setTimeout(I,1e3)}),b.once("connect",()=>{Bj("connected locally"),f.resume();let N=f;t.local_host&&(Bj("transform Host header to %s",t.local_host),N=f.pipe(new p0c({host:t.local_host}))),N.pipe(b).pipe(f),b.once("close",B=>{Bj("local connection closed [%s]",B)})})};f.on("data",C=>{let b=C.toString().match(/^(\w+) (\S+)/);b&&this.emit("request",{method:b[1],path:b[2]})}),f.once("connect",()=>{this.emit("open",f),I()})}}});var M9i=H((hVu,O9i)=>{var{parse:f0c}=wt("url"),{EventEmitter:W9i}=wt("events"),I0c=T9i(),sKe=WFr()("localtunnel:client"),h0c=P9i();O9i.exports=class extends W9i{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:n,port:a,url:o,cached_url:l,max_conn_count:A}=t,{host:f,port:I,local_host:C}=this.opts,{local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}=this.opts;return{name:r,url:o,cached_url:l,max_conn:A||1,remote_host:f0c(f).hostname,remote_ip:n,remote_port:a,local_port:I,local_host:C,local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}}_init(t){let r=this.opts,n=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,l=r.subdomain,A=o+(l||"?new");(function f(){I0c.get(A,a).then(I=>{let C=I.data;if(sKe("got tunnel information",I.data),I.status!==200){let b=new Error(C&&C.message||"localtunnel server returned an error, please try again");return t(b)}t(null,n(C))}).catch(I=>(sKe(`tunnel server offline: ${I.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(W9i.defaultMaxListeners||10)),this.tunnelCluster=new h0c(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",n=>{sKe("got socket error",n.message),this.emit("error",n)});let r=0;this.tunnelCluster.on("open",n=>{r++,sKe("tunnel open [total: %d]",r);let a=()=>{n.destroy()};if(this.closed)return a();this.once("close",a),n.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,sKe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n{if(r)return t(r);this.clientId=n.name,this.url=n.url,n.cached_url&&(this.cachedUrl=n.cached_url),this._establish(n),t()})}close(){this.closed=!0,this.emit("close")}}});var Y9i=H((mVu,H9i)=>{var m0c=M9i();H9i.exports=function(t,r,n){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:n,l=new m0c(a);return o?(l.open(A=>A?o(A):o(null,l)),l):new Promise((A,f)=>l.open(I=>I?f(I):A(l)))}});var pVi=H(dVi=>{"use strict";Object.defineProperty(dVi,"__esModule",{value:!0})});var IVi=H(fVi=>{"use strict";Object.defineProperty(fVi,"__esModule",{value:!0})});var hVi=H(gKe=>{"use strict";Object.defineProperty(gKe,"__esModule",{value:!0});gKe.SeverityNumber=void 0;var W0c;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(W0c=gKe.SeverityNumber||(gKe.SeverityNumber={}))});var CVi=H(mVi=>{"use strict";Object.defineProperty(mVi,"__esModule",{value:!0})});var XFr=H(mDe=>{"use strict";Object.defineProperty(mDe,"__esModule",{value:!0});mDe.NOOP_LOGGER=mDe.NoopLogger=void 0;var a2t=class{emit(t){}};mDe.NoopLogger=a2t;mDe.NOOP_LOGGER=new a2t});var JFr=H(CDe=>{"use strict";Object.defineProperty(CDe,"__esModule",{value:!0});CDe.NOOP_LOGGER_PROVIDER=CDe.NoopLoggerProvider=void 0;var O0c=XFr(),c2t=class{getLogger(t,r,n){return new O0c.NoopLogger}};CDe.NoopLoggerProvider=c2t;CDe.NOOP_LOGGER_PROVIDER=new c2t});var _Vi=H(l2t=>{"use strict";Object.defineProperty(l2t,"__esModule",{value:!0});l2t._globalThis=void 0;l2t._globalThis=typeof globalThis=="object"?globalThis:global});var yVi=H(TCe=>{"use strict";var M0c=TCe&&TCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),H0c=TCe&&TCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&M0c(t,e,r)};Object.defineProperty(TCe,"__esModule",{value:!0});H0c(_Vi(),TCe)});var bVi=H(RCe=>{"use strict";var Y0c=RCe&&RCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Q0c=RCe&&RCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Y0c(t,e,r)};Object.defineProperty(RCe,"__esModule",{value:!0});Q0c(yVi(),RCe)});var EVi=H(wj=>{"use strict";Object.defineProperty(wj,"__esModule",{value:!0});wj.API_BACKWARDS_COMPATIBILITY_VERSION=wj.makeGetter=wj._global=wj.GLOBAL_LOGS_API_KEY=void 0;var X0c=bVi();wj.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");wj._global=X0c._globalThis;function J0c(e,t,r){return n=>n===e?t:r}wj.makeGetter=J0c;wj.API_BACKWARDS_COMPATIBILITY_VERSION=1});var vVi=H(u2t=>{"use strict";Object.defineProperty(u2t,"__esModule",{value:!0});u2t.LogsAPI=void 0;var gH=EVi(),SVi=JFr(),UFr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return gH._global[gH.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(gH._global[gH.GLOBAL_LOGS_API_KEY]=(0,gH.makeGetter)(gH.API_BACKWARDS_COMPATIBILITY_VERSION,t,SVi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=gH._global[gH.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(gH._global,gH.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:SVi.NOOP_LOGGER_PROVIDER}getLogger(t,r,n){return this.getLoggerProvider().getLogger(t,r,n)}disable(){delete gH._global[gH.GLOBAL_LOGS_API_KEY]}};u2t.LogsAPI=UFr});var yDe=H(wV=>{"use strict";var U0c=wV&&wV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_De=wV&&wV.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&U0c(t,e,r)};Object.defineProperty(wV,"__esModule",{value:!0});wV.logs=void 0;_De(pVi(),wV);_De(IVi(),wV);_De(hVi(),wV);_De(CVi(),wV);_De(XFr(),wV);_De(JFr(),wV);var K0c=vVi();wV.logs=K0c.LogsAPI.getInstance()});var BVi,wVi=bc(()=>{BVi=typeof globalThis=="object"?globalThis:global});var TVi=bc(()=>{wVi()});var RVi=bc(()=>{TVi()});var Uee,KFr=bc(()=>{Uee="1.9.0"});function j0c(e){var t=new Set([e]),r=new Set,n=e.match(NVi);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(f){return f===e};function o(A){return r.add(A),!1}function l(A){return t.add(A),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var I=f.match(NVi);if(!I)return o(f);var C={major:+I[1],minor:+I[2],patch:+I[3],prerelease:I[4]};return C.prerelease!=null||a.major!==C.major?o(f):a.major===0?a.minor===C.minor&&a.patch<=C.patch?l(f):o(f):a.minor<=C.minor?l(f):o(f)}}var NVi,DVi,kVi=bc(()=>{KFr();NVi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;DVi=j0c(Uee)});function Tj(e,t,r,n){var a;n===void 0&&(n=!1);var o=dKe[AKe]=(a=dKe[AKe])!==null&&a!==void 0?a:{version:Uee};if(!n&&o[e]){var l=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(l.stack||l.message),!1}if(o.version!==Uee){var l=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+Uee);return r.error(l.stack||l.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+Uee+"."),!0}function bO(e){var t,r,n=(t=dKe[AKe])===null||t===void 0?void 0:t.version;if(!(!n||!DVi(n)))return(r=dKe[AKe])===null||r===void 0?void 0:r[e]}function Rj(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Uee+".");var r=dKe[AKe];r&&delete r[e]}var z0c,AKe,dKe,NCe=bc(()=>{RVi();KFr();kVi();z0c=Uee.split(".")[0],AKe=Symbol.for("opentelemetry.js.api."+z0c),dKe=BVi});function pKe(e,t,r){var n=bO("diag");if(n)return r.unshift(t),n[e].apply(n,$0c([],q0c(r),!1))}var q0c,$0c,xVi,GVi=bc(()=>{NCe();q0c=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},$0c=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(jk||(jk={}))});function FVi(e,t){ejk.ALL&&(e=jk.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",jk.ERROR),warn:r("warn",jk.WARN),info:r("info",jk.INFO),debug:r("debug",jk.DEBUG),verbose:r("verbose",jk.VERBOSE)}}var ZVi=bc(()=>{g2t()});var eyc,tyc,ryc,VG,DCe=bc(()=>{GVi();ZVi();g2t();NCe();eyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},tyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n";C.warn("Current logger will be overwritten from "+E),b.warn("Current logger will overwrite one already registered from "+E)}return Tj("diag",b,r,!0)};r.setLogger=n,r.disable=function(){Rj(ryc,r)},r.createComponentLogger=function(a){return new xVi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var nyc,iyc,LVi,VVi=bc(()=>{nyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},iyc=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},LVi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=nyc(t,2),n=r[0],a=r[1];return[n,a]})},e.prototype.setEntry=function(t,r){var n=new e(this._entries);return n._entries.set(t,r),n},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,n=[],a=0;a{PVi=Symbol("BaggageEntryMetadata")});function OVi(e){return e===void 0&&(e={}),new LVi(new Map(Object.entries(e)))}function MVi(e){return typeof e!="string"&&(syc.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:PVi,toString:function(){return e}}}var syc,jFr=bc(()=>{DCe();VVi();WVi();syc=VG.instance()});function bDe(e){return Symbol.for(e)}var oyc,A2t,fKe=bc(()=>{oyc=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e}(),A2t=new oyc});var zFr,HVi,YVi=bc(()=>{zFr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],HVi=function(){function e(){function t(n){return function(){for(var a=[],o=0;o{kCe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),ayc=function(){function e(){}return e.prototype.createGauge=function(t,r){return Iyc},e.prototype.createHistogram=function(t,r){return hyc},e.prototype.createCounter=function(t,r){return fyc},e.prototype.createUpDownCounter=function(t,r){return myc},e.prototype.createObservableGauge=function(t,r){return _yc},e.prototype.createObservableCounter=function(t,r){return Cyc},e.prototype.createObservableUpDownCounter=function(t,r){return yyc},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),d2t=function(){function e(){}return e}(),cyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(d2t),lyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(d2t),uyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(d2t),gyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(d2t),qFr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),Ayc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(qFr),dyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(qFr),pyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(qFr),$Fr=new ayc,fyc=new cyc,Iyc=new uyc,hyc=new gyc,myc=new lyc,Cyc=new Ayc,_yc=new dyc,yyc=new pyc});var p2t,XVi=bc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(p2t||(p2t={}))});var f2t,I2t,tZr=bc(()=>{f2t={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},I2t={set:function(e,t,r){e!=null&&(e[t]=r)}}});var byc,Eyc,JVi,UVi=bc(()=>{fKe();byc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Eyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{UVi();NCe();DCe();Syc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},vyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(EDe||(EDe={}))});var hKe,mKe,h2t,m2t=bc(()=>{nZr();hKe="0000000000000000",mKe="00000000000000000000000000000000",h2t={traceId:mKe,spanId:hKe,traceFlags:EDe.NONE}});var Oce,C2t=bc(()=>{m2t();Oce=function(){function e(t){t===void 0&&(t=h2t),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function _2t(e){return e.getValue(iZr)||void 0}function KVi(){return _2t(Wce.getInstance().active())}function CKe(e,t){return e.setValue(iZr,t)}function jVi(e){return e.deleteValue(iZr)}function zVi(e,t){return CKe(e,new Oce(t))}function y2t(e){var t;return(t=_2t(e))===null||t===void 0?void 0:t.spanContext()}var iZr,sZr=bc(()=>{fKe();C2t();IKe();iZr=bDe("OpenTelemetry Context Key SPAN")});function oZr(e){return wyc.test(e)&&e!==mKe}function aZr(e){return Tyc.test(e)&&e!==hKe}function SDe(e){return oZr(e.traceId)&&aZr(e.spanId)}function qVi(e){return new Oce(e)}var wyc,Tyc,b2t=bc(()=>{m2t();C2t();wyc=/^([0-9a-f]{32})$/i,Tyc=/^[0-9a-f]{16}$/i});function Ryc(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var cZr,E2t,lZr=bc(()=>{IKe();sZr();C2t();b2t();cZr=Wce.getInstance(),E2t=function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=cZr.active());var a=!!r?.root;if(a)return new Oce;var o=n&&y2t(n);return Ryc(o)&&SDe(o)?new Oce(o):new Oce},e.prototype.startActiveSpan=function(t,r,n,a){var o,l,A;if(!(arguments.length<2)){arguments.length===2?A=r:arguments.length===3?(o=r,A=n):(o=r,l=n,A=a);var f=l??cZr.active(),I=this.startSpan(t,o,f),C=CKe(f,I);return cZr.with(C,A,void 0,I)}},e}()});var Nyc,S2t,uZr=bc(()=>{lZr();Nyc=new E2t,S2t=function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):Nyc},e}()});var $Vi,ePi=bc(()=>{lZr();$Vi=function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new E2t},e}()});var Dyc,_Ke,gZr=bc(()=>{uZr();ePi();Dyc=new $Vi,_Ke=function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new S2t(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:Dyc},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e}()});var v2t,tPi=bc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(v2t||(v2t={}))});var B2t,rPi=bc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(B2t||(B2t={}))});var w2t,nPi=bc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(w2t||(w2t={}))});function iPi(e){return Gyc.test(e)}function sPi(e){return Fyc.test(e)&&!Zyc.test(e)}var AZr,kyc,xyc,Gyc,Fyc,Zyc,oPi=bc(()=>{AZr="[_0-9a-z-*/]",kyc="[a-z]"+AZr+"{0,255}",xyc="[a-z0-9]"+AZr+"{0,240}@[a-z]"+AZr+"{0,13}",Gyc=new RegExp("^(?:"+kyc+"|"+xyc+")$"),Fyc=/^[ -~]{0,255}[!-~]$/,Zyc=/,|=/});var aPi,Lyc,cPi,lPi,uPi,gPi=bc(()=>{oPi();aPi=32,Lyc=512,cPi=",",lPi="=",uPi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,n){return r.push(n+lPi+t.get(n)),r},[]).join(cPi)},e.prototype._parse=function(t){t.length>Lyc||(this._internalState=t.split(cPi).reverse().reduce(function(r,n){var a=n.trim(),o=a.indexOf(lPi);if(o!==-1){var l=a.slice(0,o),A=a.slice(o+1,n.length);iPi(l)&&sPi(A)&&r.set(l,A)}return r},new Map),this._internalState.size>aPi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,aPi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function APi(e){return new uPi(e)}var dPi=bc(()=>{gPi()});var dZr,pPi=bc(()=>{IKe();dZr=Wce.getInstance()});var pZr,fPi=bc(()=>{DCe();pZr=VG.instance()});var Vyc,IPi,hPi=bc(()=>{eZr();Vyc=function(){function e(){}return e.prototype.getMeter=function(t,r,n){return $Fr},e}(),IPi=new Vyc});var fZr,mPi,CPi=bc(()=>{hPi();NCe();DCe();fZr="metrics",mPi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return Tj(fZr,t,VG.instance())},e.prototype.getMeterProvider=function(){return bO(fZr)||IPi},e.prototype.getMeter=function(t,r,n){return this.getMeterProvider().getMeter(t,r,n)},e.prototype.disable=function(){Rj(fZr,VG.instance())},e}()});var IZr,_Pi=bc(()=>{CPi();IZr=mPi.getInstance()});var yPi,bPi=bc(()=>{yPi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function mZr(e){return e.getValue(hZr)||void 0}function EPi(){return mZr(Wce.getInstance().active())}function SPi(e,t){return e.setValue(hZr,t)}function vPi(e){return e.deleteValue(hZr)}var hZr,BPi=bc(()=>{IKe();fKe();hZr=bDe("OpenTelemetry Baggage Key")});var CZr,Pyc,wPi,TPi=bc(()=>{NCe();bPi();tZr();BPi();jFr();DCe();CZr="propagation",Pyc=new yPi,wPi=function(){function e(){this.createBaggage=OVi,this.getBaggage=mZr,this.getActiveBaggage=EPi,this.setBaggage=SPi,this.deleteBaggage=vPi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return Tj(CZr,t,VG.instance())},e.prototype.inject=function(t,r,n){return n===void 0&&(n=I2t),this._getGlobalPropagator().inject(t,r,n)},e.prototype.extract=function(t,r,n){return n===void 0&&(n=f2t),this._getGlobalPropagator().extract(t,r,n)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){Rj(CZr,VG.instance())},e.prototype._getGlobalPropagator=function(){return bO(CZr)||Pyc},e}()});var _Zr,RPi=bc(()=>{TPi();_Zr=wPi.getInstance()});var yZr,NPi,DPi=bc(()=>{NCe();gZr();b2t();sZr();DCe();yZr="trace",NPi=function(){function e(){this._proxyTracerProvider=new _Ke,this.wrapSpanContext=qVi,this.isSpanContextValid=SDe,this.deleteSpan=jVi,this.getSpan=_2t,this.getActiveSpan=KVi,this.getSpanContext=y2t,this.setSpan=CKe,this.setSpanContext=zVi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=Tj(yZr,this._proxyTracerProvider,VG.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return bO(yZr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){Rj(yZr,VG.instance()),this._proxyTracerProvider=new _Ke},e}()});var bZr,kPi=bc(()=>{DPi();bZr=NPi.getInstance()});var xI={};sI(xI,{DiagConsoleLogger:()=>HVi,DiagLogLevel:()=>jk,INVALID_SPANID:()=>hKe,INVALID_SPAN_CONTEXT:()=>h2t,INVALID_TRACEID:()=>mKe,ProxyTracer:()=>S2t,ProxyTracerProvider:()=>_Ke,ROOT_CONTEXT:()=>A2t,SamplingDecision:()=>v2t,SpanKind:()=>B2t,SpanStatusCode:()=>w2t,TraceFlags:()=>EDe,ValueType:()=>p2t,baggageEntryMetadataFromString:()=>MVi,context:()=>dZr,createContextKey:()=>bDe,createNoopMeter:()=>QVi,createTraceState:()=>APi,default:()=>Wyc,defaultTextMapGetter:()=>f2t,defaultTextMapSetter:()=>I2t,diag:()=>pZr,isSpanContextValid:()=>SDe,isValidSpanId:()=>aZr,isValidTraceId:()=>oZr,metrics:()=>IZr,propagation:()=>_Zr,trace:()=>bZr});var Wyc,GI=bc(()=>{jFr();fKe();YVi();g2t();eZr();XVi();tZr();uZr();gZr();tPi();rPi();nPi();nZr();dPi();b2t();m2t();pPi();fPi();_Pi();RPi();kPi();Wyc={context:dZr,diag:pZr,metrics:IZr,propagation:_Zr,trace:bZr}});var xPi=H(K0=>{"use strict";Object.defineProperty(K0,"__esModule",{value:!0});K0.MessageTypeValues=K0.RpcGrpcStatusCodeValues=K0.MessagingOperationValues=K0.MessagingDestinationKindValues=K0.HttpFlavorValues=K0.NetHostConnectionSubtypeValues=K0.NetHostConnectionTypeValues=K0.NetTransportValues=K0.FaasInvokedProviderValues=K0.FaasDocumentOperationValues=K0.FaasTriggerValues=K0.DbCassandraConsistencyLevelValues=K0.DbSystemValues=K0.SemanticAttributes=void 0;K0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};K0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};K0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};K0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};K0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};K0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};K0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};K0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};K0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};K0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};K0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};K0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};K0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};K0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var GPi=H(xCe=>{"use strict";var Oyc=xCe&&xCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Myc=xCe&&xCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Oyc(t,e,r)};Object.defineProperty(xCe,"__esModule",{value:!0});Myc(xPi(),xCe)});var FPi=H(PG=>{"use strict";Object.defineProperty(PG,"__esModule",{value:!0});PG.TelemetrySdkLanguageValues=PG.OsTypeValues=PG.HostArchValues=PG.AwsEcsLaunchtypeValues=PG.CloudPlatformValues=PG.CloudProviderValues=PG.SemanticResourceAttributes=void 0;PG.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};PG.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};PG.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};PG.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};PG.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};PG.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};PG.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var ZPi=H(GCe=>{"use strict";var Hyc=GCe&&GCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Yyc=GCe&&GCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Hyc(t,e,r)};Object.defineProperty(GCe,"__esModule",{value:!0});Yyc(FPi(),GCe)});var Hce=H(Mce=>{"use strict";var Qyc=Mce&&Mce.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LPi=Mce&&Mce.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Qyc(t,e,r)};Object.defineProperty(Mce,"__esModule",{value:!0});LPi(GPi(),Mce);LPi(ZPi(),Mce)});var yKe=H(Yce=>{"use strict";Object.defineProperty(Yce,"__esModule",{value:!0});Yce.isTracingSuppressed=Yce.unsuppressTracing=Yce.suppressTracing=void 0;var Xyc=(GI(),vi(xI)),EZr=(0,Xyc.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function Jyc(e){return e.setValue(EZr,!0)}Yce.suppressTracing=Jyc;function Uyc(e){return e.deleteValue(EZr)}Yce.unsuppressTracing=Uyc;function Kyc(e){return e.getValue(EZr)===!0}Yce.isTracingSuppressed=Kyc});var SZr=H(WG=>{"use strict";Object.defineProperty(WG,"__esModule",{value:!0});WG.BAGGAGE_MAX_TOTAL_LENGTH=WG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=WG.BAGGAGE_MAX_NAME_VALUE_PAIRS=WG.BAGGAGE_HEADER=WG.BAGGAGE_ITEMS_SEPARATOR=WG.BAGGAGE_PROPERTIES_SEPARATOR=WG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;WG.BAGGAGE_KEY_PAIR_SEPARATOR="=";WG.BAGGAGE_PROPERTIES_SEPARATOR=";";WG.BAGGAGE_ITEMS_SEPARATOR=",";WG.BAGGAGE_HEADER="baggage";WG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;WG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;WG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var vZr=H(Nj=>{"use strict";Object.defineProperty(Nj,"__esModule",{value:!0});Nj.parseKeyPairsIntoRecord=Nj.parsePairKeyValue=Nj.getKeyPairs=Nj.serializeKeyPairs=void 0;var jyc=(GI(),vi(xI)),FCe=SZr();function zyc(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?FCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>FCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}Nj.serializeKeyPairs=zyc;function qyc(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=FCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}Nj.getKeyPairs=qyc;function VPi(e){let t=e.split(FCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(FCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,jyc.baggageEntryMetadataFromString)(t.join(FCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}Nj.parsePairKeyValue=VPi;function $yc(e){return typeof e!="string"||e.length===0?{}:e.split(FCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>VPi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}Nj.parseKeyPairsIntoRecord=$yc});var PPi=H(T2t=>{"use strict";Object.defineProperty(T2t,"__esModule",{value:!0});T2t.W3CBaggagePropagator=void 0;var BZr=(GI(),vi(xI)),ebc=yKe(),ZCe=SZr(),wZr=vZr(),TZr=class{inject(t,r,n){let a=BZr.propagation.getBaggage(t);if(!a||(0,ebc.isTracingSuppressed)(t))return;let o=(0,wZr.getKeyPairs)(a).filter(A=>A.length<=ZCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,ZCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,wZr.serializeKeyPairs)(o);l.length>0&&n.set(r,ZCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,ZCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(ZCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(ZCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,wZr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:BZr.propagation.setBaggage(t,BZr.propagation.createBaggage(l))}fields(){return[ZCe.BAGGAGE_HEADER]}};T2t.W3CBaggagePropagator=TZr});var WPi=H(R2t=>{"use strict";Object.defineProperty(R2t,"__esModule",{value:!0});R2t.AnchoredClock=void 0;var RZr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};R2t.AnchoredClock=RZr});var QPi=H(Qce=>{"use strict";Object.defineProperty(Qce,"__esModule",{value:!0});Qce.isAttributeValue=Qce.isAttributeKey=Qce.sanitizeAttributes=void 0;var OPi=(GI(),vi(xI));function tbc(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!MPi(r)){OPi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!HPi(n)){OPi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Qce.sanitizeAttributes=tbc;function MPi(e){return typeof e=="string"&&e.length>0}Qce.isAttributeKey=MPi;function HPi(e){return e==null?!0:Array.isArray(e)?rbc(e):YPi(e)}Qce.isAttributeValue=HPi;function rbc(e){let t;for(let r of e)if(r!=null){if(!t){if(YPi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function YPi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var NZr=H(N2t=>{"use strict";Object.defineProperty(N2t,"__esModule",{value:!0});N2t.loggingErrorHandler=void 0;var nbc=(GI(),vi(xI));function ibc(){return e=>{nbc.diag.error(sbc(e))}}N2t.loggingErrorHandler=ibc;function sbc(e){return typeof e=="string"?e:JSON.stringify(obc(e))}function obc(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var DZr=H(vDe=>{"use strict";Object.defineProperty(vDe,"__esModule",{value:!0});vDe.globalErrorHandler=vDe.setGlobalErrorHandler=void 0;var abc=NZr(),XPi=(0,abc.loggingErrorHandler)();function cbc(e){XPi=e}vDe.setGlobalErrorHandler=cbc;function lbc(e){try{XPi(e)}catch{}}vDe.globalErrorHandler=lbc});var kZr=H(bKe=>{"use strict";Object.defineProperty(bKe,"__esModule",{value:!0});bKe.TracesSamplerValues=void 0;var ubc;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(ubc=bKe.TracesSamplerValues||(bKe.TracesSamplerValues={}))});var JPi=H(D2t=>{"use strict";Object.defineProperty(D2t,"__esModule",{value:!0});D2t._globalThis=void 0;D2t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var GZr=H(Q1=>{"use strict";Object.defineProperty(Q1,"__esModule",{value:!0});Q1.getEnvWithoutDefaults=Q1.parseEnvironment=Q1.DEFAULT_ENVIRONMENT=Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Xce=(GI(),vi(xI)),gbc=kZr(),Abc=JPi(),dbc=",",pbc=["OTEL_SDK_DISABLED"];function fbc(e){return pbc.indexOf(e)>-1}var Ibc=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function hbc(e){return Ibc.indexOf(e)>-1}var mbc=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function Cbc(e){return mbc.indexOf(e)>-1}Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;Q1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Xce.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:gbc.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function _bc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function ybc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function bbc(e,t,r,n=dbc){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var Ebc={ALL:Xce.DiagLogLevel.ALL,VERBOSE:Xce.DiagLogLevel.VERBOSE,DEBUG:Xce.DiagLogLevel.DEBUG,INFO:Xce.DiagLogLevel.INFO,WARN:Xce.DiagLogLevel.WARN,ERROR:Xce.DiagLogLevel.ERROR,NONE:Xce.DiagLogLevel.NONE};function Sbc(e,t,r){let n=r[e];if(typeof n=="string"){let a=Ebc[n.toUpperCase()];a!=null&&(t[e]=a)}}function xZr(e){let t={};for(let r in Q1.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":Sbc(n,t,e);break;default:if(fbc(n))_bc(n,t,e);else if(hbc(n))ybc(n,t,e);else if(Cbc(n))bbc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}Q1.parseEnvironment=xZr;function vbc(){return typeof process<"u"&&process&&process.env?xZr(process.env):xZr(Abc._globalThis)}Q1.getEnvWithoutDefaults=vbc});var KPi=H(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t.getEnv=void 0;var Bbc=wt("os"),UPi=GZr();function wbc(){let e=(0,UPi.parseEnvironment)(process.env);return Object.assign({HOSTNAME:Bbc.hostname()},UPi.DEFAULT_ENVIRONMENT,e)}k2t.getEnv=wbc});var jPi=H(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t._globalThis=void 0;x2t._globalThis=typeof globalThis=="object"?globalThis:global});var qPi=H(G2t=>{"use strict";Object.defineProperty(G2t,"__esModule",{value:!0});G2t.hexToBase64=void 0;function zPi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var Tbc=Buffer.alloc(8),Rbc=Buffer.alloc(16);function Nbc(e){let t;e.length===16?t=Tbc:e.length===32?t=Rbc:t=Buffer.alloc(e.length/2);let r=0;for(let n=0;n{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.RandomIdGenerator=void 0;var Dbc=8,eWi=16,FZr=class{constructor(){this.generateTraceId=$Pi(eWi),this.generateSpanId=$Pi(Dbc)}};Z2t.RandomIdGenerator=FZr;var F2t=Buffer.allocUnsafe(eWi);function $Pi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(F2t[e-1]=1);return F2t.toString("hex",0,e)}}});var rWi=H(L2t=>{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t.otperformance=void 0;var kbc=wt("perf_hooks");L2t.otperformance=kbc.performance});var P2t=H(V2t=>{"use strict";Object.defineProperty(V2t,"__esModule",{value:!0});V2t.VERSION=void 0;V2t.VERSION="1.16.0"});var nWi=H(W2t=>{"use strict";Object.defineProperty(W2t,"__esModule",{value:!0});W2t.SDK_INFO=void 0;var xbc=P2t(),EKe=Hce();W2t.SDK_INFO={[EKe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[EKe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[EKe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:EKe.TelemetrySdkLanguageValues.NODEJS,[EKe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:xbc.VERSION}});var iWi=H(O2t=>{"use strict";Object.defineProperty(O2t,"__esModule",{value:!0});O2t.unrefTimer=void 0;function Gbc(e){e.unref()}O2t.unrefTimer=Gbc});var sWi=H(EO=>{"use strict";var Fbc=EO&&EO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LCe=EO&&EO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Fbc(t,e,r)};Object.defineProperty(EO,"__esModule",{value:!0});LCe(KPi(),EO);LCe(jPi(),EO);LCe(qPi(),EO);LCe(tWi(),EO);LCe(rWi(),EO);LCe(nWi(),EO);LCe(iWi(),EO)});var ZZr=H(VCe=>{"use strict";var Zbc=VCe&&VCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Lbc=VCe&&VCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Zbc(t,e,r)};Object.defineProperty(VCe,"__esModule",{value:!0});Lbc(sWi(),VCe)});var lWi=H(WE=>{"use strict";Object.defineProperty(WE,"__esModule",{value:!0});WE.addHrTimes=WE.isTimeInput=WE.isTimeInputHrTime=WE.hrTimeToMicroseconds=WE.hrTimeToMilliseconds=WE.hrTimeToNanoseconds=WE.hrTimeToTimeStamp=WE.hrTimeDuration=WE.timeInputToHrTime=WE.hrTime=WE.getTimeOrigin=WE.millisToHrTime=void 0;var LZr=ZZr(),oWi=9,Vbc=6,Pbc=Math.pow(10,Vbc),M2t=Math.pow(10,oWi);function SKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*Pbc);return[r,n]}WE.millisToHrTime=SKe;function VZr(){let e=LZr.otperformance.timeOrigin;if(typeof e!="number"){let t=LZr.otperformance;e=t.timing&&t.timing.fetchStart}return e}WE.getTimeOrigin=VZr;function aWi(e){let t=SKe(VZr()),r=SKe(typeof e=="number"?e:LZr.otperformance.now());return cWi(t,r)}WE.hrTime=aWi;function Wbc(e){if(PZr(e))return e;if(typeof e=="number")return e=M2t&&(r[1]-=M2t,r[0]+=1),r}WE.addHrTimes=cWi});var gWi=H(uWi=>{"use strict";Object.defineProperty(uWi,"__esModule",{value:!0})});var AWi=H(vKe=>{"use strict";Object.defineProperty(vKe,"__esModule",{value:!0});vKe.ExportResultCode=void 0;var Jbc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(Jbc=vKe.ExportResultCode||(vKe.ExportResultCode={}))});var pWi=H(H2t=>{"use strict";Object.defineProperty(H2t,"__esModule",{value:!0});H2t.CompositePropagator=void 0;var dWi=(GI(),vi(xI)),WZr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){dWi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){dWi.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};H2t.CompositePropagator=WZr});var fWi=H(BDe=>{"use strict";Object.defineProperty(BDe,"__esModule",{value:!0});BDe.validateValue=BDe.validateKey=void 0;var OZr="[_0-9a-z-*/]",Ubc=`[a-z]${OZr}{0,255}`,Kbc=`[a-z0-9]${OZr}{0,240}@[a-z]${OZr}{0,13}`,jbc=new RegExp(`^(?:${Ubc}|${Kbc})$`),zbc=/^[ -~]{0,255}[!-~]$/,qbc=/,|=/;function $bc(e){return jbc.test(e)}BDe.validateKey=$bc;function eEc(e){return zbc.test(e)&&!qbc.test(e)}BDe.validateValue=eEc});var HZr=H(Y2t=>{"use strict";Object.defineProperty(Y2t,"__esModule",{value:!0});Y2t.TraceState=void 0;var IWi=fWi(),hWi=32,tEc=512,mWi=",",CWi="=",MZr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+CWi+this.get(r)),t),[]).join(mWi)}_parse(t){t.length>tEc||(this._internalState=t.split(mWi).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(CWi);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,IWi.validateKey)(l)&&(0,IWi.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>hWi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,hWi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};Y2t.TraceState=MZr});var yWi=H(OG=>{"use strict";Object.defineProperty(OG,"__esModule",{value:!0});OG.W3CTraceContextPropagator=OG.parseTraceParent=OG.TRACE_STATE_HEADER=OG.TRACE_PARENT_HEADER=void 0;var Q2t=(GI(),vi(xI)),rEc=yKe(),nEc=HZr();OG.TRACE_PARENT_HEADER="traceparent";OG.TRACE_STATE_HEADER="tracestate";var iEc="00",sEc="(?!ff)[\\da-f]{2}",oEc="(?![0]{32})[\\da-f]{32}",aEc="(?![0]{16})[\\da-f]{16}",cEc="[\\da-f]{2}",lEc=new RegExp(`^\\s?(${sEc})-(${oEc})-(${aEc})-(${cEc})(-.*)?\\s?$`);function _Wi(e){let t=lEc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}OG.parseTraceParent=_Wi;var YZr=class{inject(t,r,n){let a=Q2t.trace.getSpanContext(t);if(!a||(0,rEc.isTracingSuppressed)(t)||!(0,Q2t.isSpanContextValid)(a))return;let o=`${iEc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||Q2t.TraceFlags.NONE).toString(16)}`;n.set(r,OG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,OG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,OG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=_Wi(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,OG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new nEc.TraceState(typeof f=="string"?f:void 0)}return Q2t.trace.setSpanContext(t,l)}fields(){return[OG.TRACE_PARENT_HEADER,OG.TRACE_STATE_HEADER]}};OG.W3CTraceContextPropagator=YZr});var EWi=H(bWi=>{"use strict";Object.defineProperty(bWi,"__esModule",{value:!0})});var SWi=H(h4=>{"use strict";Object.defineProperty(h4,"__esModule",{value:!0});h4.getRPCMetadata=h4.deleteRPCMetadata=h4.setRPCMetadata=h4.RPCType=void 0;var uEc=(GI(),vi(xI)),QZr=(0,uEc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),gEc;(function(e){e.HTTP="http"})(gEc=h4.RPCType||(h4.RPCType={}));function AEc(e,t){return e.setValue(QZr,t)}h4.setRPCMetadata=AEc;function dEc(e){return e.deleteValue(QZr)}h4.deleteRPCMetadata=dEc;function pEc(e){return e.getValue(QZr)}h4.getRPCMetadata=pEc});var JZr=H(X2t=>{"use strict";Object.defineProperty(X2t,"__esModule",{value:!0});X2t.AlwaysOffSampler=void 0;var fEc=(GI(),vi(xI)),XZr=class{shouldSample(){return{decision:fEc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};X2t.AlwaysOffSampler=XZr});var KZr=H(J2t=>{"use strict";Object.defineProperty(J2t,"__esModule",{value:!0});J2t.AlwaysOnSampler=void 0;var IEc=(GI(),vi(xI)),UZr=class{shouldSample(){return{decision:IEc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};J2t.AlwaysOnSampler=UZr});var BWi=H(K2t=>{"use strict";Object.defineProperty(K2t,"__esModule",{value:!0});K2t.ParentBasedSampler=void 0;var U2t=(GI(),vi(xI)),hEc=DZr(),vWi=JZr(),jZr=KZr(),zZr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,hEc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new jZr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new jZr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new vWi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new jZr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new vWi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=U2t.trace.getSpanContext(t);return!A||!(0,U2t.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&U2t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&U2t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};K2t.ParentBasedSampler=zZr});var wWi=H(j2t=>{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.TraceIdRatioBasedSampler=void 0;var qZr=(GI(),vi(xI)),$Zr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,qZr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};j2t.TraceIdRatioBasedSampler=$Zr});var kWi=H(z2t=>{"use strict";Object.defineProperty(z2t,"__esModule",{value:!0});z2t.isPlainObject=void 0;var mEc="[object Object]",CEc="[object Null]",_Ec="[object Undefined]",yEc=Function.prototype,TWi=yEc.toString,bEc=TWi.call(Object),EEc=SEc(Object.getPrototypeOf,Object),RWi=Object.prototype,NWi=RWi.hasOwnProperty,PCe=Symbol?Symbol.toStringTag:void 0,DWi=RWi.toString;function SEc(e,t){return function(r){return e(t(r))}}function vEc(e){if(!BEc(e)||wEc(e)!==mEc)return!1;let t=EEc(e);if(t===null)return!0;let r=NWi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&TWi.call(r)===bEc}z2t.isPlainObject=vEc;function BEc(e){return e!=null&&typeof e=="object"}function wEc(e){return e==null?e===void 0?_Ec:CEc:PCe&&PCe in Object(e)?TEc(e):REc(e)}function TEc(e){let t=NWi.call(e,PCe),r=e[PCe],n=!1;try{e[PCe]=void 0,n=!0}catch{}let a=DWi.call(e);return n&&(t?e[PCe]=r:delete e[PCe]),a}function REc(e){return DWi.call(e)}});var LWi=H(eSt=>{"use strict";Object.defineProperty(eSt,"__esModule",{value:!0});eSt.merge=void 0;var xWi=kWi(),NEc=20;function DEc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=FWi(t,e.shift(),0,r);return t}eSt.merge=DEc;function eLr(e){return $2t(e)?e.slice():e}function FWi(e,t,r=0,n){let a;if(!(r>NEc)){if(r++,q2t(e)||q2t(t)||ZWi(t))a=eLr(t);else if($2t(e)){if(a=e.slice(),$2t(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(GWi(e,f,n)||GWi(t,f,n))delete a[f];else{if(BKe(C)&&BKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=FWi(a[f],I,r,n)}}}}else a=t;return a}}function GWi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function kEc(e,t){return!(!(0,xWi.isPlainObject)(e)||!(0,xWi.isPlainObject)(t))}});var VWi=H(wDe=>{"use strict";Object.defineProperty(wDe,"__esModule",{value:!0});wDe.callWithTimeout=wDe.TimeoutError=void 0;var tSt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};wDe.TimeoutError=tSt;function xEc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new tSt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}wDe.callWithTimeout=xEc});var WWi=H(TDe=>{"use strict";Object.defineProperty(TDe,"__esModule",{value:!0});TDe.isUrlIgnored=TDe.urlMatches=void 0;function PWi(e,t){return typeof t=="string"?e===t:!!e.match(t)}TDe.urlMatches=PWi;function GEc(e,t){if(!t)return!1;for(let r of t)if(PWi(e,r))return!0;return!1}TDe.isUrlIgnored=GEc});var OWi=H(rSt=>{"use strict";Object.defineProperty(rSt,"__esModule",{value:!0});rSt.isWrapped=void 0;function FEc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}rSt.isWrapped=FEc});var MWi=H(nSt=>{"use strict";Object.defineProperty(nSt,"__esModule",{value:!0});nSt.Deferred=void 0;var tLr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};nSt.Deferred=tLr});var HWi=H(iSt=>{"use strict";Object.defineProperty(iSt,"__esModule",{value:!0});iSt.BindOnceFuture=void 0;var ZEc=MWi(),rLr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new ZEc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};iSt.BindOnceFuture=rLr});var QWi=H(sSt=>{"use strict";Object.defineProperty(sSt,"__esModule",{value:!0});sSt._export=void 0;var YWi=(GI(),vi(xI)),LEc=yKe();function VEc(e,t){return new Promise(r=>{YWi.context.with((0,LEc.suppressTracing)(YWi.context.active()),()=>{e.export(t,n=>{r(n)})})})}sSt._export=VEc});var AH=H(vm=>{"use strict";var PEc=vm&&vm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ab=vm&&vm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&PEc(t,e,r)};Object.defineProperty(vm,"__esModule",{value:!0});vm.internal=vm.baggageUtils=void 0;ab(PPi(),vm);ab(WPi(),vm);ab(QPi(),vm);ab(DZr(),vm);ab(NZr(),vm);ab(lWi(),vm);ab(gWi(),vm);ab(AWi(),vm);ab(P2t(),vm);vm.baggageUtils=vZr();ab(ZZr(),vm);ab(pWi(),vm);ab(yWi(),vm);ab(EWi(),vm);ab(SWi(),vm);ab(JZr(),vm);ab(KZr(),vm);ab(BWi(),vm);ab(wWi(),vm);ab(yKe(),vm);ab(HZr(),vm);ab(GZr(),vm);ab(LWi(),vm);ab(kZr(),vm);ab(VWi(),vm);ab(WWi(),vm);ab(OWi(),vm);ab(HWi(),vm);ab(P2t(),vm);var WEc=QWi();vm.internal={_export:WEc._export}});var XWi=H(oSt=>{"use strict";Object.defineProperty(oSt,"__esModule",{value:!0});oSt.defaultServiceName=void 0;function OEc(){return`unknown_service:${process.argv0}`}oSt.defaultServiceName=OEc});var nLr=H(RDe=>{"use strict";Object.defineProperty(RDe,"__esModule",{value:!0});RDe.normalizeType=RDe.normalizeArch=void 0;var MEc=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};RDe.normalizeArch=MEc;var HEc=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};RDe.normalizeType=HEc});var cSt=H(aSt=>{"use strict";Object.defineProperty(aSt,"__esModule",{value:!0});aSt.execAsync=void 0;var YEc=wt("child_process"),QEc=wt("util");aSt.execAsync=QEc.promisify(YEc.exec)});var JWi=H(lSt=>{"use strict";Object.defineProperty(lSt,"__esModule",{value:!0});lSt.getMachineId=void 0;var XEc=cSt(),JEc=(GI(),vi(xI));async function UEc(){try{let t=(await(0,XEc.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find(n=>n.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){JEc.diag.debug(`error reading machine id: ${e}`)}return""}lSt.getMachineId=UEc});var UWi=H(uSt=>{"use strict";Object.defineProperty(uSt,"__esModule",{value:!0});uSt.getMachineId=void 0;var KEc=wt("fs"),jEc=(GI(),vi(xI));async function zEc(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await KEc.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){jEc.diag.debug(`error reading machine id: ${r}`)}return""}uSt.getMachineId=zEc});var jWi=H(gSt=>{"use strict";Object.defineProperty(gSt,"__esModule",{value:!0});gSt.getMachineId=void 0;var qEc=wt("fs"),$Ec=cSt(),KWi=(GI(),vi(xI));async function e1c(){try{return(await qEc.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){KWi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,$Ec.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){KWi.diag.debug(`error reading machine id: ${e}`)}return""}gSt.getMachineId=e1c});var qWi=H(ASt=>{"use strict";Object.defineProperty(ASt,"__esModule",{value:!0});ASt.getMachineId=void 0;var zWi=wt("process"),t1c=cSt(),r1c=(GI(),vi(xI));async function n1c(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";zWi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in zWi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let n=(await(0,t1c.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(n.length===2)return n[1].trim()}catch(r){r1c.diag.debug(`error reading machine id: ${r}`)}return""}ASt.getMachineId=n1c});var $Wi=H(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});dSt.getMachineId=void 0;var i1c=(GI(),vi(xI));async function s1c(){return i1c.diag.debug("could not read machine-id: unsupported platform"),""}dSt.getMachineId=s1c});var eOi=H(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.getMachineId=void 0;var o1c=wt("process"),NDe;Kee.getMachineId=NDe;switch(o1c.platform){case"darwin":Kee.getMachineId=NDe=JWi().getMachineId;break;case"linux":Kee.getMachineId=NDe=UWi().getMachineId;break;case"freebsd":Kee.getMachineId=NDe=jWi().getMachineId;break;case"win32":Kee.getMachineId=NDe=qWi().getMachineId;break;default:Kee.getMachineId=NDe=$Wi().getMachineId}});var oLr=H(pSt=>{"use strict";Object.defineProperty(pSt,"__esModule",{value:!0});pSt.hostDetectorSync=void 0;var iLr=Hce(),a1c=WCe(),tOi=wt("os"),c1c=nLr(),l1c=eOi(),sLr=class{detect(t){let r={[iLr.SemanticResourceAttributes.HOST_NAME]:(0,tOi.hostname)(),[iLr.SemanticResourceAttributes.HOST_ARCH]:(0,c1c.normalizeArch)((0,tOi.arch)())};return new a1c.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,l1c.getMachineId)().then(t=>{let r={};return t&&(r[iLr.SemanticResourceAttributes.HOST_ID]=t),r})}};pSt.hostDetectorSync=new sLr});var rOi=H(fSt=>{"use strict";Object.defineProperty(fSt,"__esModule",{value:!0});fSt.hostDetector=void 0;var u1c=oLr(),aLr=class{detect(t){return Promise.resolve(u1c.hostDetectorSync.detect(t))}};fSt.hostDetector=new aLr});var lLr=H(ISt=>{"use strict";Object.defineProperty(ISt,"__esModule",{value:!0});ISt.osDetectorSync=void 0;var nOi=Hce(),g1c=WCe(),iOi=wt("os"),A1c=nLr(),cLr=class{detect(t){let r={[nOi.SemanticResourceAttributes.OS_TYPE]:(0,A1c.normalizeType)((0,iOi.platform)()),[nOi.SemanticResourceAttributes.OS_VERSION]:(0,iOi.release)()};return new g1c.Resource(r)}};ISt.osDetectorSync=new cLr});var sOi=H(hSt=>{"use strict";Object.defineProperty(hSt,"__esModule",{value:!0});hSt.osDetector=void 0;var d1c=lLr(),uLr=class{detect(t){return Promise.resolve(d1c.osDetectorSync.detect(t))}};hSt.osDetector=new uLr});var ALr=H(mSt=>{"use strict";Object.defineProperty(mSt,"__esModule",{value:!0});mSt.processDetectorSync=void 0;var p1c=(GI(),vi(xI)),jee=Hce(),f1c=WCe(),I1c=wt("os"),gLr=class{detect(t){let r={[jee.SemanticResourceAttributes.PROCESS_PID]:process.pid,[jee.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[jee.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[jee.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[jee.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[jee.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[jee.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[jee.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let n=I1c.userInfo();r[jee.SemanticResourceAttributes.PROCESS_OWNER]=n.username}catch(n){p1c.diag.debug(`error obtaining process owner: ${n}`)}return new f1c.Resource(r)}};mSt.processDetectorSync=new gLr});var oOi=H(CSt=>{"use strict";Object.defineProperty(CSt,"__esModule",{value:!0});CSt.processDetector=void 0;var h1c=ALr(),dLr=class{detect(t){return Promise.resolve(h1c.processDetectorSync.detect(t))}};CSt.processDetector=new dLr});var aOi=H(SO=>{"use strict";var m1c=SO&&SO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OCe=SO&&SO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&m1c(t,e,r)};Object.defineProperty(SO,"__esModule",{value:!0});OCe(XWi(),SO);OCe(rOi(),SO);OCe(sOi(),SO);OCe(oLr(),SO);OCe(lLr(),SO);OCe(oOi(),SO);OCe(ALr(),SO)});var pLr=H(MCe=>{"use strict";var C1c=MCe&&MCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_1c=MCe&&MCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&C1c(t,e,r)};Object.defineProperty(MCe,"__esModule",{value:!0});_1c(aOi(),MCe)});var WCe=H(_St=>{"use strict";Object.defineProperty(_St,"__esModule",{value:!0});_St.Resource=void 0;var cOi=(GI(),vi(xI)),HCe=Hce(),fLr=AH(),y1c=pLr(),wKe=class e{constructor(t,r){var n;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(n=this._attributes)!==null&&n!==void 0?n:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(cOi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[HCe.SemanticResourceAttributes.SERVICE_NAME]:(0,y1c.defaultServiceName)(),[HCe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:fLr.SDK_INFO[HCe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[HCe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:fLr.SDK_INFO[HCe.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[HCe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:fLr.SDK_INFO[HCe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&cOi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let n=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(n);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,l])=>{var A;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(A=t._syncAttributes)!==null&&A!==void 0?A:t.attributes),l)});return new e(n,a)}};_St.Resource=wKe;wKe.EMPTY=new wKe({})});var uOi=H(lOi=>{"use strict";Object.defineProperty(lOi,"__esModule",{value:!0})});var AOi=H(gOi=>{"use strict";Object.defineProperty(gOi,"__esModule",{value:!0})});var pOi=H(dOi=>{"use strict";Object.defineProperty(dOi,"__esModule",{value:!0})});var fOi=H(ySt=>{"use strict";Object.defineProperty(ySt,"__esModule",{value:!0});ySt.browserDetector=void 0;var b1c=bSt(),ILr=class{detect(t){return Promise.resolve(b1c.browserDetectorSync.detect(t))}};ySt.browserDetector=new ILr});var mLr=H(ESt=>{"use strict";Object.defineProperty(ESt,"__esModule",{value:!0});ESt.envDetectorSync=void 0;var E1c=(GI(),vi(xI)),S1c=AH(),v1c=Hce(),B1c=WCe(),hLr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},n=(0,S1c.getEnv)(),a=n.OTEL_RESOURCE_ATTRIBUTES,o=n.OTEL_SERVICE_NAME;if(a)try{let l=this._parseResourceAttributes(a);Object.assign(r,l)}catch(l){E1c.diag.debug(`EnvDetector failed: ${l.message}`)}return o&&(r[v1c.SemanticResourceAttributes.SERVICE_NAME]=o),new B1c.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},n=t.split(this._COMMA_SEPARATOR,-1);for(let a of n){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[l,A]=o;if(l=l.trim(),A=A.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(l))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(A))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[l]=decodeURIComponent(A)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};ESt.envDetectorSync=new hLr});var IOi=H(SSt=>{"use strict";Object.defineProperty(SSt,"__esModule",{value:!0});SSt.envDetector=void 0;var w1c=mLr(),CLr=class{detect(t){return Promise.resolve(w1c.envDetectorSync.detect(t))}};SSt.envDetector=new CLr});var hOi=H(BSt=>{"use strict";Object.defineProperty(BSt,"__esModule",{value:!0});BSt.browserDetectorSync=void 0;var vSt=Hce(),_Lr=bSt(),T1c=(GI(),vi(xI)),yLr=class{detect(t){if(!(typeof navigator<"u"))return _Lr.Resource.empty();let n={[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(n,t)}_getResourceAttributes(t,r){return t[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(T1c.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),_Lr.Resource.empty()):new _Lr.Resource(Object.assign({},t))}};BSt.browserDetectorSync=new yLr});var mOi=H(Dj=>{"use strict";var R1c=Dj&&Dj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wSt=Dj&&Dj.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&R1c(t,e,r)};Object.defineProperty(Dj,"__esModule",{value:!0});wSt(fOi(),Dj);wSt(IOi(),Dj);wSt(hOi(),Dj);wSt(mLr(),Dj)});var COi=H(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.isPromiseLike=void 0;var N1c=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";TSt.isPromiseLike=N1c});var yOi=H(kDe=>{"use strict";Object.defineProperty(kDe,"__esModule",{value:!0});kDe.detectResourcesSync=kDe.detectResources=void 0;var TKe=WCe(),DDe=(GI(),vi(xI)),D1c=COi(),k1c=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let n=await r.detect(e);return DDe.diag.debug(`${r.constructor.name} found resource.`,n),n}catch(n){return DDe.diag.debug(`${r.constructor.name} failed: ${n.message}`),TKe.Resource.empty()}}));return _Oi(t),t.reduce((r,n)=>r.merge(n),TKe.Resource.empty())};kDe.detectResources=k1c;var x1c=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),l;if((0,D1c.isPromiseLike)(o)){let A=async()=>(await o).attributes;l=new TKe.Resource({},A())}else l=o;return l.waitForAsyncAttributes?l.waitForAsyncAttributes().then(()=>DDe.diag.debug(`${a.constructor.name} found resource.`,l)):DDe.diag.debug(`${a.constructor.name} found resource.`,l),l}catch(o){return DDe.diag.error(`${a.constructor.name} failed: ${o.message}`),TKe.Resource.empty()}}),n=r.reduce((a,o)=>a.merge(o),TKe.Resource.empty());return n.waitForAsyncAttributes&&n.waitForAsyncAttributes().then(()=>{_Oi(r)}),n};kDe.detectResourcesSync=x1c;var _Oi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);DDe.diag.verbose(r)}})}});var bSt=H(vO=>{"use strict";var G1c=vO&&vO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YCe=vO&&vO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&G1c(t,e,r)};Object.defineProperty(vO,"__esModule",{value:!0});YCe(WCe(),vO);YCe(uOi(),vO);YCe(pLr(),vO);YCe(AOi(),vO);YCe(pOi(),vO);YCe(mOi(),vO);YCe(yOi(),vO)});var SLr=H(RSt=>{"use strict";Object.defineProperty(RSt,"__esModule",{value:!0});RSt.LogRecord=void 0;var F1c=(GI(),vi(xI)),RKe=(GI(),vi(xI)),bLr=AH(),ELr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:n,observedTimestamp:a,severityNumber:o,severityText:l,body:A,attributes:f={},context:I}=r,C=Date.now();if(this.hrTime=(0,bLr.timeInputToHrTime)(n??C),this.hrTimeObserved=(0,bLr.timeInputToHrTime)(a??C),I){let b=RKe.trace.getSpanContext(I);b&&RKe.isSpanContextValid(b)&&(this.spanContext=b)}this.severityNumber=o,this.severityText=l,this.body=A,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(RKe.diag.warn(`Invalid attribute key: ${t}`),this):(0,bLr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(RKe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,n]of Object.entries(t))this.setAttribute(r,n);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(RKe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(n=>typeof n=="string"?this._truncateToLimitUtil(n,r):n):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&F1c.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};RSt.LogRecord=ELr});var vLr=H(kj=>{"use strict";Object.defineProperty(kj,"__esModule",{value:!0});kj.DEFAULT_EVENT_DOMAIN=kj.mergeConfig=kj.reconfigureLimits=kj.loadDefaultConfig=void 0;var NKe=AH();function bOi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,NKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,NKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}kj.loadDefaultConfig=bOi;function Z1c(e){var t,r,n,a,o,l,A,f;let I=Object.assign({},e.logRecordLimits),C=(0,NKe.getEnvWithoutDefaults)();return I.attributeCountLimit=(a=(n=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:C.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&n!==void 0?n:C.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:NKe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,I.attributeValueLengthLimit=(f=(A=(l=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&l!==void 0?l:C.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&A!==void 0?A:C.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:NKe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:I})}kj.reconfigureLimits=Z1c;function L1c(e){let t=bOi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}kj.mergeConfig=L1c;kj.DEFAULT_EVENT_DOMAIN="default"});var wLr=H(NSt=>{"use strict";Object.defineProperty(NSt,"__esModule",{value:!0});NSt.Logger=void 0;var V1c=(GI(),vi(xI)),P1c=SLr(),W1c=vLr(),BLr=class{constructor(t,r,n){this.instrumentationScope=t,this._loggerProvider=n,this._loggerConfig=(0,W1c.mergeConfig)(r),this.resource=n.resource}emit(t){let r=t.context||V1c.context.active(),n=new P1c.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(n,r),n.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};NSt.Logger=BLr});var EOi=H(DSt=>{"use strict";Object.defineProperty(DSt,"__esModule",{value:!0});DSt.MultiLogRecordProcessor=void 0;var O1c=AH(),TLr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,O1c.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};DSt.MultiLogRecordProcessor=TLr});var NLr=H(kSt=>{"use strict";Object.defineProperty(kSt,"__esModule",{value:!0});kSt.NoopLogRecordProcessor=void 0;var RLr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};kSt.NoopLogRecordProcessor=RLr});var TOi=H(QCe=>{"use strict";Object.defineProperty(QCe,"__esModule",{value:!0});QCe.LoggerProvider=QCe.DEFAULT_LOGGER_NAME=void 0;var DKe=(GI(),vi(xI)),M1c=yDe(),SOi=bSt(),vOi=AH(),H1c=wLr(),BOi=vLr(),wOi=EOi(),Y1c=NLr();QCe.DEFAULT_LOGGER_NAME="unknown";var DLr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=SOi.Resource.empty(),logRecordLimits:n,forceFlushTimeoutMillis:a}=(0,vOi.merge)({},(0,BOi.loadDefaultConfig)(),(0,BOi.reconfigureLimits)(t));this.resource=SOi.Resource.default().merge(r),this._config={logRecordLimits:n,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new vOi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new wOi.MultiLogRecordProcessor([new Y1c.NoopLogRecordProcessor],a)}getLogger(t,r,n){if(this._shutdownOnce.isCalled)return DKe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),M1c.NOOP_LOGGER;t||DKe.diag.warn("Logger requested without instrumentation scope name.");let a=t||QCe.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${n?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new H1c.Logger({name:a,version:r,schemaUrl:n?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>DKe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new wOi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(DKe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(DKe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};QCe.LoggerProvider=DLr});var ROi=H(xSt=>{"use strict";Object.defineProperty(xSt,"__esModule",{value:!0});xSt.ConsoleLogRecordExporter=void 0;var Q1c=AH(),X1c=AH(),kLr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,n,a;return{timestamp:(0,Q1c.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(n=t.spanContext)===null||n===void 0?void 0:n.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let n of t)console.dir(this._exportInfo(n),{depth:3});r?.({code:X1c.ExportResultCode.SUCCESS})}};xSt.ConsoleLogRecordExporter=kLr});var NOi=H(GSt=>{"use strict";Object.defineProperty(GSt,"__esModule",{value:!0});GSt.SimpleLogRecordProcessor=void 0;var xLr=AH(),GLr=class{constructor(t){this._exporter=t,this._shutdownOnce=new xLr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var n;if(r.code!==xLr.ExportResultCode.SUCCESS){(0,xLr.globalErrorHandler)((n=r.error)!==null&&n!==void 0?n:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};GSt.SimpleLogRecordProcessor=GLr});var kOi=H(FSt=>{"use strict";Object.defineProperty(FSt,"__esModule",{value:!0});FSt.InMemoryLogRecordExporter=void 0;var DOi=AH(),FLr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:DOi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:DOi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};FSt.InMemoryLogRecordExporter=FLr});var xOi=H(ZSt=>{"use strict";Object.defineProperty(ZSt,"__esModule",{value:!0});ZSt.BatchLogRecordProcessorBase=void 0;var J1c=(GI(),vi(xI)),xDe=AH(),ZLr=class{constructor(t,r){var n,a,o,l;this._exporter=t,this._finishedLogRecords=[];let A=(0,xDe.getEnv)();this._maxExportBatchSize=(n=r?.maxExportBatchSize)!==null&&n!==void 0?n:A.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:A.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:A.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(l=r?.exportTimeoutMillis)!==null&&l!==void 0?l:A.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new xDe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(J1c.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let n=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,xDe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,xDe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,xDe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,n)=>{this._exporter.export(t,a=>{var o;if(a.code!==xDe.ExportResultCode.SUCCESS){n((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};ZSt.BatchLogRecordProcessorBase=ZLr});var GOi=H(LSt=>{"use strict";Object.defineProperty(LSt,"__esModule",{value:!0});LSt.BatchLogRecordProcessor=void 0;var U1c=xOi(),LLr=class extends U1c.BatchLogRecordProcessorBase{onShutdown(){}};LSt.BatchLogRecordProcessor=LLr});var FOi=H(VSt=>{"use strict";Object.defineProperty(VSt,"__esModule",{value:!0});VSt.BatchLogRecordProcessor=void 0;var K1c=GOi();Object.defineProperty(VSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return K1c.BatchLogRecordProcessor}})});var ZOi=H(PSt=>{"use strict";Object.defineProperty(PSt,"__esModule",{value:!0});PSt.BatchLogRecordProcessor=void 0;var j1c=FOi();Object.defineProperty(PSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return j1c.BatchLogRecordProcessor}})});var kKe=H(uD=>{"use strict";Object.defineProperty(uD,"__esModule",{value:!0});uD.BatchLogRecordProcessor=uD.InMemoryLogRecordExporter=uD.SimpleLogRecordProcessor=uD.ConsoleLogRecordExporter=uD.NoopLogRecordProcessor=uD.LogRecord=uD.Logger=uD.LoggerProvider=void 0;var z1c=TOi();Object.defineProperty(uD,"LoggerProvider",{enumerable:!0,get:function(){return z1c.LoggerProvider}});var q1c=wLr();Object.defineProperty(uD,"Logger",{enumerable:!0,get:function(){return q1c.Logger}});var $1c=SLr();Object.defineProperty(uD,"LogRecord",{enumerable:!0,get:function(){return $1c.LogRecord}});var e2c=NLr();Object.defineProperty(uD,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return e2c.NoopLogRecordProcessor}});var t2c=ROi();Object.defineProperty(uD,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return t2c.ConsoleLogRecordExporter}});var r2c=NOi();Object.defineProperty(uD,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return r2c.SimpleLogRecordProcessor}});var n2c=kOi();Object.defineProperty(uD,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return n2c.InMemoryLogRecordExporter}});var i2c=ZOi();Object.defineProperty(uD,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return i2c.BatchLogRecordProcessor}})});var xKe=H(Jce=>{"use strict";Object.defineProperty(Jce,"__esModule",{value:!0});Jce.isTracingSuppressed=Jce.unsuppressTracing=Jce.suppressTracing=void 0;var s2c=(GI(),vi(xI)),PLr=(0,s2c.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function o2c(e){return e.setValue(PLr,!0)}Jce.suppressTracing=o2c;function a2c(e){return e.deleteValue(PLr)}Jce.unsuppressTracing=a2c;function c2c(e){return e.getValue(PLr)===!0}Jce.isTracingSuppressed=c2c});var WLr=H(MG=>{"use strict";Object.defineProperty(MG,"__esModule",{value:!0});MG.BAGGAGE_MAX_TOTAL_LENGTH=MG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=MG.BAGGAGE_MAX_NAME_VALUE_PAIRS=MG.BAGGAGE_HEADER=MG.BAGGAGE_ITEMS_SEPARATOR=MG.BAGGAGE_PROPERTIES_SEPARATOR=MG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;MG.BAGGAGE_KEY_PAIR_SEPARATOR="=";MG.BAGGAGE_PROPERTIES_SEPARATOR=";";MG.BAGGAGE_ITEMS_SEPARATOR=",";MG.BAGGAGE_HEADER="baggage";MG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;MG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;MG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var OLr=H(xj=>{"use strict";Object.defineProperty(xj,"__esModule",{value:!0});xj.parseKeyPairsIntoRecord=xj.parsePairKeyValue=xj.getKeyPairs=xj.serializeKeyPairs=void 0;var l2c=(GI(),vi(xI)),XCe=WLr();function u2c(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?XCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>XCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}xj.serializeKeyPairs=u2c;function g2c(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=XCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}xj.getKeyPairs=g2c;function LOi(e){let t=e.split(XCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(XCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,l2c.baggageEntryMetadataFromString)(t.join(XCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}xj.parsePairKeyValue=LOi;function A2c(e){return typeof e!="string"||e.length===0?{}:e.split(XCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>LOi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}xj.parseKeyPairsIntoRecord=A2c});var VOi=H(WSt=>{"use strict";Object.defineProperty(WSt,"__esModule",{value:!0});WSt.W3CBaggagePropagator=void 0;var MLr=(GI(),vi(xI)),d2c=xKe(),JCe=WLr(),HLr=OLr(),YLr=class{inject(t,r,n){let a=MLr.propagation.getBaggage(t);if(!a||(0,d2c.isTracingSuppressed)(t))return;let o=(0,HLr.getKeyPairs)(a).filter(A=>A.length<=JCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,JCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,HLr.serializeKeyPairs)(o);l.length>0&&n.set(r,JCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,JCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(JCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(JCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,HLr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:MLr.propagation.setBaggage(t,MLr.propagation.createBaggage(l))}fields(){return[JCe.BAGGAGE_HEADER]}};WSt.W3CBaggagePropagator=YLr});var POi=H(OSt=>{"use strict";Object.defineProperty(OSt,"__esModule",{value:!0});OSt.AnchoredClock=void 0;var QLr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};OSt.AnchoredClock=QLr});var YOi=H(Uce=>{"use strict";Object.defineProperty(Uce,"__esModule",{value:!0});Uce.isAttributeValue=Uce.isAttributeKey=Uce.sanitizeAttributes=void 0;var WOi=(GI(),vi(xI));function p2c(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!OOi(r)){WOi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!MOi(n)){WOi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Uce.sanitizeAttributes=p2c;function OOi(e){return typeof e=="string"&&e.length>0}Uce.isAttributeKey=OOi;function MOi(e){return e==null?!0:Array.isArray(e)?f2c(e):HOi(e)}Uce.isAttributeValue=MOi;function f2c(e){let t;for(let r of e)if(r!=null){if(!t){if(HOi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function HOi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var XLr=H(MSt=>{"use strict";Object.defineProperty(MSt,"__esModule",{value:!0});MSt.loggingErrorHandler=void 0;var I2c=(GI(),vi(xI));function h2c(){return e=>{I2c.diag.error(m2c(e))}}MSt.loggingErrorHandler=h2c;function m2c(e){return typeof e=="string"?e:JSON.stringify(C2c(e))}function C2c(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var JLr=H(GDe=>{"use strict";Object.defineProperty(GDe,"__esModule",{value:!0});GDe.globalErrorHandler=GDe.setGlobalErrorHandler=void 0;var _2c=XLr(),QOi=(0,_2c.loggingErrorHandler)();function y2c(e){QOi=e}GDe.setGlobalErrorHandler=y2c;function b2c(e){try{QOi(e)}catch{}}GDe.globalErrorHandler=b2c});var ULr=H(GKe=>{"use strict";Object.defineProperty(GKe,"__esModule",{value:!0});GKe.TracesSamplerValues=void 0;var E2c;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(E2c=GKe.TracesSamplerValues||(GKe.TracesSamplerValues={}))});var KLr=H(LS=>{"use strict";Object.defineProperty(LS,"__esModule",{value:!0});LS.parseEnvironment=LS.DEFAULT_ENVIRONMENT=LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Kce=(GI(),vi(xI)),S2c=ULr(),v2c=",",B2c=["OTEL_SDK_DISABLED"];function w2c(e){return B2c.indexOf(e)>-1}var T2c=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function R2c(e){return T2c.indexOf(e)>-1}var N2c=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function D2c(e){return N2c.indexOf(e)>-1}LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;LS.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Kce.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:S2c.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function k2c(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function x2c(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function G2c(e,t,r,n=v2c){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var F2c={ALL:Kce.DiagLogLevel.ALL,VERBOSE:Kce.DiagLogLevel.VERBOSE,DEBUG:Kce.DiagLogLevel.DEBUG,INFO:Kce.DiagLogLevel.INFO,WARN:Kce.DiagLogLevel.WARN,ERROR:Kce.DiagLogLevel.ERROR,NONE:Kce.DiagLogLevel.NONE};function Z2c(e,t,r){let n=r[e];if(typeof n=="string"){let a=F2c[n.toUpperCase()];a!=null&&(t[e]=a)}}function L2c(e){let t={};for(let r in LS.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":Z2c(n,t,e);break;default:if(w2c(n))k2c(n,t,e);else if(R2c(n))x2c(n,t,e);else if(D2c(n))G2c(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}LS.parseEnvironment=L2c});var XOi=H(FDe=>{"use strict";Object.defineProperty(FDe,"__esModule",{value:!0});FDe.getEnvWithoutDefaults=FDe.getEnv=void 0;var jLr=KLr();function V2c(){let e=(0,jLr.parseEnvironment)(process.env);return Object.assign({},jLr.DEFAULT_ENVIRONMENT,e)}FDe.getEnv=V2c;function P2c(){return(0,jLr.parseEnvironment)(process.env)}FDe.getEnvWithoutDefaults=P2c});var JOi=H(HSt=>{"use strict";Object.defineProperty(HSt,"__esModule",{value:!0});HSt._globalThis=void 0;HSt._globalThis=typeof globalThis=="object"?globalThis:global});var zLr=H(YSt=>{"use strict";Object.defineProperty(YSt,"__esModule",{value:!0});YSt.hexToBinary=void 0;function UOi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function W2c(e){let t=new Uint8Array(e.length/2),r=0;for(let n=0;n{"use strict";Object.defineProperty(QSt,"__esModule",{value:!0});QSt.hexToBase64=void 0;var O2c=zLr();function M2c(e){return Buffer.from((0,O2c.hexToBinary)(e)).toString("base64")}QSt.hexToBase64=M2c});var qOi=H(JSt=>{"use strict";Object.defineProperty(JSt,"__esModule",{value:!0});JSt.RandomIdGenerator=void 0;var H2c=8,zOi=16,qLr=class{constructor(){this.generateTraceId=jOi(zOi),this.generateSpanId=jOi(H2c)}};JSt.RandomIdGenerator=qLr;var XSt=Buffer.allocUnsafe(zOi);function jOi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(XSt[e-1]=1);return XSt.toString("hex",0,e)}}});var $Oi=H(USt=>{"use strict";Object.defineProperty(USt,"__esModule",{value:!0});USt.otperformance=void 0;var Y2c=wt("perf_hooks");USt.otperformance=Y2c.performance});var $Lr=H(KSt=>{"use strict";Object.defineProperty(KSt,"__esModule",{value:!0});KSt.VERSION=void 0;KSt.VERSION="1.27.0"});function iw(e){for(var t={},r=e.length,n=0;n{});var e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,P3i,W3i,O3i,M3i,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,e5i,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,b5i,E5i,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,P5i,W5i,O5i,M5i,H5i,Y5i,Q5i,X5i,J5i,U5i,K5i,j5i,z5i,q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi,Q2c,X2c,J2c,U2c,K2c,j2c,z2c,q2c,$2c,eSc,tSc,rSc,nSc,iSc,sSc,oSc,aSc,cSc,lSc,uSc,gSc,ASc,dSc,pSc,fSc,ISc,hSc,mSc,CSc,_Sc,ySc,bSc,ESc,SSc,vSc,BSc,wSc,TSc,RSc,NSc,DSc,kSc,xSc,GSc,FSc,ZSc,LSc,VSc,PSc,WSc,OSc,MSc,HSc,YSc,QSc,XSc,JSc,USc,KSc,jSc,zSc,qSc,$Sc,evc,tvc,rvc,nvc,ivc,svc,ovc,avc,cvc,lvc,uvc,gvc,Avc,dvc,pvc,fvc,Ivc,hvc,mvc,Cvc,_vc,yvc,bvc,Evc,Svc,vvc,Bvc,wvc,Tvc,Rvc,Nvc,Dvc,kvc,xvc,Gvc,Fvc,Zvc,Lvc,Vvc,Pvc,Wvc,Ovc,Mvc,Hvc,Yvc,Qvc,Xvc,Jvc,Uvc,Kvc,jvc,zvc,qvc,$vc,eBc,tBc,rBc,nBc,iBc,sBc,oBc,aBc,cBc,lBc,uBc,gBc,_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,PMi,WMi,OMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,ABc,dBc,pBc,fBc,IBc,hBc,mBc,CBc,_Bc,yBc,bBc,EBc,SBc,vBc,BBc,wBc,TBc,RBc,NBc,DBc,kBc,xBc,GBc,FBc,ZBc,LBc,VBc,PBc,WBc,OBc,MBc,HBc,YBc,QBc,XBc,JBc,UBc,KBc,jBc,zBc,qBc,$Bc,ewc,twc,rwc,nwc,iwc,swc,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,owc,awc,cwc,lwc,uwc,gwc,Awc,dwc,pwc,fwc,Iwc,hwc,SHi,vHi,BHi,wHi,THi,mwc,Cwc,_wc,ywc,bwc,Ewc,RHi,NHi,DHi,Swc,vwc,Bwc,wwc,kHi,xHi,GHi,FHi,Twc,Rwc,Nwc,Dwc,kwc,ZHi,LHi,VHi,PHi,WHi,OHi,MHi,xwc,Gwc,Fwc,Zwc,Lwc,Vwc,Pwc,Wwc,HHi,YHi,QHi,XHi,JHi,Owc,Mwc,Hwc,Ywc,Qwc,Xwc,UHi,KHi,jHi,zHi,qHi,$Hi,eYi,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,AYi,dYi,pYi,Jwc,Uwc,Kwc,jwc,zwc,qwc,$wc,eTc,tTc,rTc,nTc,iTc,sTc,oTc,aTc,cTc,lTc,uTc,gTc,ATc,dTc,pTc,fYi,IYi,hYi,mYi,CYi,fTc,ITc,hTc,mTc,CTc,_Tc,_Yi,yYi,yTc,bTc,ETc,bYi,EYi,STc,vTc,BTc,SYi,vYi,BYi,wYi,TYi,RYi,NYi,DYi,kYi,xYi,GYi,FYi,ZYi,LYi,VYi,PYi,WYi,wTc,TTc,RTc,NTc,DTc,kTc,xTc,GTc,FTc,ZTc,LTc,VTc,PTc,WTc,OTc,MTc,HTc,YTc,OYi,MYi,QTc,XTc,JTc,HYi=bc(()=>{e9r();e3i="aws.lambda.invoked_arn",t3i="db.system",r3i="db.connection_string",n3i="db.user",i3i="db.jdbc.driver_classname",s3i="db.name",o3i="db.statement",a3i="db.operation",c3i="db.mssql.instance_name",l3i="db.cassandra.keyspace",u3i="db.cassandra.page_size",g3i="db.cassandra.consistency_level",A3i="db.cassandra.table",d3i="db.cassandra.idempotence",p3i="db.cassandra.speculative_execution_count",f3i="db.cassandra.coordinator.id",I3i="db.cassandra.coordinator.dc",h3i="db.hbase.namespace",m3i="db.redis.database_index",C3i="db.mongodb.collection",_3i="db.sql.table",y3i="exception.type",b3i="exception.message",E3i="exception.stacktrace",S3i="exception.escaped",v3i="faas.trigger",B3i="faas.execution",w3i="faas.document.collection",T3i="faas.document.operation",R3i="faas.document.time",N3i="faas.document.name",D3i="faas.time",k3i="faas.cron",x3i="faas.coldstart",G3i="faas.invoked_name",F3i="faas.invoked_provider",Z3i="faas.invoked_region",L3i="net.transport",V3i="net.peer.ip",P3i="net.peer.port",W3i="net.peer.name",O3i="net.host.ip",M3i="net.host.port",H3i="net.host.name",Y3i="net.host.connection.type",Q3i="net.host.connection.subtype",X3i="net.host.carrier.name",J3i="net.host.carrier.mcc",U3i="net.host.carrier.mnc",K3i="net.host.carrier.icc",j3i="peer.service",z3i="enduser.id",q3i="enduser.role",$3i="enduser.scope",e5i="thread.id",t5i="thread.name",r5i="code.function",n5i="code.namespace",i5i="code.filepath",s5i="code.lineno",o5i="http.method",a5i="http.url",c5i="http.target",l5i="http.host",u5i="http.scheme",g5i="http.status_code",A5i="http.flavor",d5i="http.user_agent",p5i="http.request_content_length",f5i="http.request_content_length_uncompressed",I5i="http.response_content_length",h5i="http.response_content_length_uncompressed",m5i="http.server_name",C5i="http.route",_5i="http.client_ip",y5i="aws.dynamodb.table_names",b5i="aws.dynamodb.consumed_capacity",E5i="aws.dynamodb.item_collection_metrics",S5i="aws.dynamodb.provisioned_read_capacity",v5i="aws.dynamodb.provisioned_write_capacity",B5i="aws.dynamodb.consistent_read",w5i="aws.dynamodb.projection",T5i="aws.dynamodb.limit",R5i="aws.dynamodb.attributes_to_get",N5i="aws.dynamodb.index_name",D5i="aws.dynamodb.select",k5i="aws.dynamodb.global_secondary_indexes",x5i="aws.dynamodb.local_secondary_indexes",G5i="aws.dynamodb.exclusive_start_table",F5i="aws.dynamodb.table_count",Z5i="aws.dynamodb.scan_forward",L5i="aws.dynamodb.segment",V5i="aws.dynamodb.total_segments",P5i="aws.dynamodb.count",W5i="aws.dynamodb.scanned_count",O5i="aws.dynamodb.attribute_definitions",M5i="aws.dynamodb.global_secondary_index_updates",H5i="messaging.system",Y5i="messaging.destination",Q5i="messaging.destination_kind",X5i="messaging.temp_destination",J5i="messaging.protocol",U5i="messaging.protocol_version",K5i="messaging.url",j5i="messaging.message_id",z5i="messaging.conversation_id",q5i="messaging.message_payload_size_bytes",$5i="messaging.message_payload_compressed_size_bytes",eMi="messaging.operation",tMi="messaging.consumer_id",rMi="messaging.rabbitmq.routing_key",nMi="messaging.kafka.message_key",iMi="messaging.kafka.consumer_group",sMi="messaging.kafka.client_id",oMi="messaging.kafka.partition",aMi="messaging.kafka.tombstone",cMi="rpc.system",lMi="rpc.service",uMi="rpc.method",gMi="rpc.grpc.status_code",AMi="rpc.jsonrpc.version",dMi="rpc.jsonrpc.request_id",pMi="rpc.jsonrpc.error_code",fMi="rpc.jsonrpc.error_message",IMi="message.type",hMi="message.id",mMi="message.compressed_size",CMi="message.uncompressed_size",Q2c=e3i,X2c=t3i,J2c=r3i,U2c=n3i,K2c=i3i,j2c=s3i,z2c=o3i,q2c=a3i,$2c=c3i,eSc=l3i,tSc=u3i,rSc=g3i,nSc=A3i,iSc=d3i,sSc=p3i,oSc=f3i,aSc=I3i,cSc=h3i,lSc=m3i,uSc=C3i,gSc=_3i,ASc=y3i,dSc=b3i,pSc=E3i,fSc=S3i,ISc=v3i,hSc=B3i,mSc=w3i,CSc=T3i,_Sc=R3i,ySc=N3i,bSc=D3i,ESc=k3i,SSc=x3i,vSc=G3i,BSc=F3i,wSc=Z3i,TSc=L3i,RSc=V3i,NSc=P3i,DSc=W3i,kSc=O3i,xSc=M3i,GSc=H3i,FSc=Y3i,ZSc=Q3i,LSc=X3i,VSc=J3i,PSc=U3i,WSc=K3i,OSc=j3i,MSc=z3i,HSc=q3i,YSc=$3i,QSc=e5i,XSc=t5i,JSc=r5i,USc=n5i,KSc=i5i,jSc=s5i,zSc=o5i,qSc=a5i,$Sc=c5i,evc=l5i,tvc=u5i,rvc=g5i,nvc=A5i,ivc=d5i,svc=p5i,ovc=f5i,avc=I5i,cvc=h5i,lvc=m5i,uvc=C5i,gvc=_5i,Avc=y5i,dvc=b5i,pvc=E5i,fvc=S5i,Ivc=v5i,hvc=B5i,mvc=w5i,Cvc=T5i,_vc=R5i,yvc=N5i,bvc=D5i,Evc=k5i,Svc=x5i,vvc=G5i,Bvc=F5i,wvc=Z5i,Tvc=L5i,Rvc=V5i,Nvc=P5i,Dvc=W5i,kvc=O5i,xvc=M5i,Gvc=H5i,Fvc=Y5i,Zvc=Q5i,Lvc=X5i,Vvc=J5i,Pvc=U5i,Wvc=K5i,Ovc=j5i,Mvc=z5i,Hvc=q5i,Yvc=$5i,Qvc=eMi,Xvc=tMi,Jvc=rMi,Uvc=nMi,Kvc=iMi,jvc=sMi,zvc=oMi,qvc=aMi,$vc=cMi,eBc=lMi,tBc=uMi,rBc=gMi,nBc=AMi,iBc=dMi,sBc=pMi,oBc=fMi,aBc=IMi,cBc=hMi,lBc=mMi,uBc=CMi,gBc=iw([e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,P3i,W3i,O3i,M3i,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,e5i,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,b5i,E5i,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,P5i,W5i,O5i,M5i,H5i,Y5i,Q5i,X5i,J5i,U5i,K5i,j5i,z5i,q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi]),_Mi="other_sql",yMi="mssql",bMi="mysql",EMi="oracle",SMi="db2",vMi="postgresql",BMi="redshift",wMi="hive",TMi="cloudscape",RMi="hsqldb",NMi="progress",DMi="maxdb",kMi="hanadb",xMi="ingres",GMi="firstsql",FMi="edb",ZMi="cache",LMi="adabas",VMi="firebird",PMi="derby",WMi="filemaker",OMi="informix",MMi="instantdb",HMi="interbase",YMi="mariadb",QMi="netezza",XMi="pervasive",JMi="pointbase",UMi="sqlite",KMi="sybase",jMi="teradata",zMi="vertica",qMi="h2",$Mi="coldfusion",eHi="cassandra",tHi="hbase",rHi="mongodb",nHi="redis",iHi="couchbase",sHi="couchdb",oHi="cosmosdb",aHi="dynamodb",cHi="neo4j",lHi="geode",uHi="elasticsearch",gHi="memcached",AHi="cockroachdb",ABc=_Mi,dBc=yMi,pBc=bMi,fBc=EMi,IBc=SMi,hBc=vMi,mBc=BMi,CBc=wMi,_Bc=TMi,yBc=RMi,bBc=NMi,EBc=DMi,SBc=kMi,vBc=xMi,BBc=GMi,wBc=FMi,TBc=ZMi,RBc=LMi,NBc=VMi,DBc=PMi,kBc=WMi,xBc=OMi,GBc=MMi,FBc=HMi,ZBc=YMi,LBc=QMi,VBc=XMi,PBc=JMi,WBc=UMi,OBc=KMi,MBc=jMi,HBc=zMi,YBc=qMi,QBc=$Mi,XBc=eHi,JBc=tHi,UBc=rHi,KBc=nHi,jBc=iHi,zBc=sHi,qBc=oHi,$Bc=aHi,ewc=cHi,twc=lHi,rwc=uHi,nwc=gHi,iwc=AHi,swc=iw([_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,PMi,WMi,OMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi]),dHi="all",pHi="each_quorum",fHi="quorum",IHi="local_quorum",hHi="one",mHi="two",CHi="three",_Hi="local_one",yHi="any",bHi="serial",EHi="local_serial",owc=dHi,awc=pHi,cwc=fHi,lwc=IHi,uwc=hHi,gwc=mHi,Awc=CHi,dwc=_Hi,pwc=yHi,fwc=bHi,Iwc=EHi,hwc=iw([dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi]),SHi="datasource",vHi="http",BHi="pubsub",wHi="timer",THi="other",mwc=SHi,Cwc=vHi,_wc=BHi,ywc=wHi,bwc=THi,Ewc=iw([SHi,vHi,BHi,wHi,THi]),RHi="insert",NHi="edit",DHi="delete",Swc=RHi,vwc=NHi,Bwc=DHi,wwc=iw([RHi,NHi,DHi]),kHi="alibaba_cloud",xHi="aws",GHi="azure",FHi="gcp",Twc=kHi,Rwc=xHi,Nwc=GHi,Dwc=FHi,kwc=iw([kHi,xHi,GHi,FHi]),ZHi="ip_tcp",LHi="ip_udp",VHi="ip",PHi="unix",WHi="pipe",OHi="inproc",MHi="other",xwc=ZHi,Gwc=LHi,Fwc=VHi,Zwc=PHi,Lwc=WHi,Vwc=OHi,Pwc=MHi,Wwc=iw([ZHi,LHi,VHi,PHi,WHi,OHi,MHi]),HHi="wifi",YHi="wired",QHi="cell",XHi="unavailable",JHi="unknown",Owc=HHi,Mwc=YHi,Hwc=QHi,Ywc=XHi,Qwc=JHi,Xwc=iw([HHi,YHi,QHi,XHi,JHi]),UHi="gprs",KHi="edge",jHi="umts",zHi="cdma",qHi="evdo_0",$Hi="evdo_a",eYi="cdma2000_1xrtt",tYi="hsdpa",rYi="hsupa",nYi="hspa",iYi="iden",sYi="evdo_b",oYi="lte",aYi="ehrpd",cYi="hspap",lYi="gsm",uYi="td_scdma",gYi="iwlan",AYi="nr",dYi="nrnsa",pYi="lte_ca",Jwc=UHi,Uwc=KHi,Kwc=jHi,jwc=zHi,zwc=qHi,qwc=$Hi,$wc=eYi,eTc=tYi,tTc=rYi,rTc=nYi,nTc=iYi,iTc=sYi,sTc=oYi,oTc=aYi,aTc=cYi,cTc=lYi,lTc=uYi,uTc=gYi,gTc=AYi,ATc=dYi,dTc=pYi,pTc=iw([UHi,KHi,jHi,zHi,qHi,$Hi,eYi,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,AYi,dYi,pYi]),fYi="1.0",IYi="1.1",hYi="2.0",mYi="SPDY",CYi="QUIC",fTc=fYi,ITc=IYi,hTc=hYi,mTc=mYi,CTc=CYi,_Tc={HTTP_1_0:fYi,HTTP_1_1:IYi,HTTP_2_0:hYi,SPDY:mYi,QUIC:CYi},_Yi="queue",yYi="topic",yTc=_Yi,bTc=yYi,ETc=iw([_Yi,yYi]),bYi="receive",EYi="process",STc=bYi,vTc=EYi,BTc=iw([bYi,EYi]),SYi=0,vYi=1,BYi=2,wYi=3,TYi=4,RYi=5,NYi=6,DYi=7,kYi=8,xYi=9,GYi=10,FYi=11,ZYi=12,LYi=13,VYi=14,PYi=15,WYi=16,wTc=SYi,TTc=vYi,RTc=BYi,NTc=wYi,DTc=TYi,kTc=RYi,xTc=NYi,GTc=DYi,FTc=kYi,ZTc=xYi,LTc=GYi,VTc=FYi,PTc=ZYi,WTc=LYi,OTc=VYi,MTc=PYi,HTc=WYi,YTc={OK:SYi,CANCELLED:vYi,UNKNOWN:BYi,INVALID_ARGUMENT:wYi,DEADLINE_EXCEEDED:TYi,NOT_FOUND:RYi,ALREADY_EXISTS:NYi,PERMISSION_DENIED:DYi,RESOURCE_EXHAUSTED:kYi,FAILED_PRECONDITION:xYi,ABORTED:GYi,OUT_OF_RANGE:FYi,UNIMPLEMENTED:ZYi,INTERNAL:LYi,UNAVAILABLE:VYi,DATA_LOSS:PYi,UNAUTHENTICATED:WYi},OYi="SENT",MYi="RECEIVED",QTc=OYi,XTc=MYi,JTc=iw([OYi,MYi])});var YYi=bc(()=>{HYi()});var QYi,XYi,JYi,UYi,KYi,jYi,zYi,qYi,$Yi,eQi,tQi,rQi,nQi,iQi,sQi,oQi,aQi,cQi,lQi,uQi,gQi,AQi,dQi,pQi,fQi,IQi,hQi,mQi,CQi,_Qi,yQi,bQi,EQi,SQi,vQi,BQi,wQi,TQi,RQi,NQi,DQi,kQi,xQi,GQi,FQi,ZQi,LQi,VQi,PQi,WQi,OQi,MQi,HQi,YQi,QQi,XQi,JQi,UQi,KQi,jQi,zQi,qQi,$Qi,eXi,tXi,rXi,nXi,iXi,sXi,oXi,aXi,cXi,lXi,uXi,gXi,AXi,dXi,pXi,fXi,IXi,hXi,UTc,KTc,jTc,zTc,qTc,$Tc,eRc,tRc,rRc,nRc,iRc,sRc,oRc,aRc,cRc,lRc,uRc,gRc,ARc,dRc,pRc,fRc,IRc,hRc,mRc,CRc,_Rc,yRc,bRc,ERc,SRc,vRc,BRc,wRc,TRc,RRc,NRc,DRc,kRc,xRc,GRc,FRc,ZRc,LRc,VRc,PRc,WRc,ORc,MRc,HRc,YRc,QRc,XRc,JRc,URc,KRc,jRc,zRc,qRc,$Rc,eNc,tNc,rNc,nNc,iNc,sNc,oNc,aNc,cNc,lNc,uNc,gNc,ANc,dNc,pNc,fNc,INc,hNc,mNc,CNc,_Nc,yNc,mXi,CXi,_Xi,yXi,bNc,ENc,SNc,vNc,BNc,bXi,EXi,SXi,vXi,BXi,wXi,TXi,RXi,NXi,DXi,kXi,xXi,GXi,FXi,ZXi,LXi,VXi,wNc,TNc,RNc,NNc,DNc,kNc,xNc,GNc,FNc,ZNc,LNc,VNc,PNc,WNc,ONc,MNc,HNc,YNc,PXi,WXi,QNc,XNc,JNc,OXi,MXi,HXi,YXi,QXi,XXi,JXi,UNc,KNc,jNc,zNc,qNc,$Nc,eDc,tDc,UXi,KXi,jXi,zXi,qXi,$Xi,e4i,t4i,r4i,n4i,i4i,rDc,nDc,iDc,sDc,oDc,aDc,cDc,lDc,uDc,gDc,ADc,dDc,s4i,o4i,a4i,c4i,l4i,u4i,g4i,A4i,d4i,p4i,pDc,fDc,IDc,hDc,mDc,CDc,_Dc,yDc,bDc,EDc,SDc,f4i=bc(()=>{e9r();QYi="cloud.provider",XYi="cloud.account.id",JYi="cloud.region",UYi="cloud.availability_zone",KYi="cloud.platform",jYi="aws.ecs.container.arn",zYi="aws.ecs.cluster.arn",qYi="aws.ecs.launchtype",$Yi="aws.ecs.task.arn",eQi="aws.ecs.task.family",tQi="aws.ecs.task.revision",rQi="aws.eks.cluster.arn",nQi="aws.log.group.names",iQi="aws.log.group.arns",sQi="aws.log.stream.names",oQi="aws.log.stream.arns",aQi="container.name",cQi="container.id",lQi="container.runtime",uQi="container.image.name",gQi="container.image.tag",AQi="deployment.environment",dQi="device.id",pQi="device.model.identifier",fQi="device.model.name",IQi="faas.name",hQi="faas.id",mQi="faas.version",CQi="faas.instance",_Qi="faas.max_memory",yQi="host.id",bQi="host.name",EQi="host.type",SQi="host.arch",vQi="host.image.name",BQi="host.image.id",wQi="host.image.version",TQi="k8s.cluster.name",RQi="k8s.node.name",NQi="k8s.node.uid",DQi="k8s.namespace.name",kQi="k8s.pod.uid",xQi="k8s.pod.name",GQi="k8s.container.name",FQi="k8s.replicaset.uid",ZQi="k8s.replicaset.name",LQi="k8s.deployment.uid",VQi="k8s.deployment.name",PQi="k8s.statefulset.uid",WQi="k8s.statefulset.name",OQi="k8s.daemonset.uid",MQi="k8s.daemonset.name",HQi="k8s.job.uid",YQi="k8s.job.name",QQi="k8s.cronjob.uid",XQi="k8s.cronjob.name",JQi="os.type",UQi="os.description",KQi="os.name",jQi="os.version",zQi="process.pid",qQi="process.executable.name",$Qi="process.executable.path",eXi="process.command",tXi="process.command_line",rXi="process.command_args",nXi="process.owner",iXi="process.runtime.name",sXi="process.runtime.version",oXi="process.runtime.description",aXi="service.name",cXi="service.namespace",lXi="service.instance.id",uXi="service.version",gXi="telemetry.sdk.name",AXi="telemetry.sdk.language",dXi="telemetry.sdk.version",pXi="telemetry.auto.version",fXi="webengine.name",IXi="webengine.version",hXi="webengine.description",UTc=QYi,KTc=XYi,jTc=JYi,zTc=UYi,qTc=KYi,$Tc=jYi,eRc=zYi,tRc=qYi,rRc=$Yi,nRc=eQi,iRc=tQi,sRc=rQi,oRc=nQi,aRc=iQi,cRc=sQi,lRc=oQi,uRc=aQi,gRc=cQi,ARc=lQi,dRc=uQi,pRc=gQi,fRc=AQi,IRc=dQi,hRc=pQi,mRc=fQi,CRc=IQi,_Rc=hQi,yRc=mQi,bRc=CQi,ERc=_Qi,SRc=yQi,vRc=bQi,BRc=EQi,wRc=SQi,TRc=vQi,RRc=BQi,NRc=wQi,DRc=TQi,kRc=RQi,xRc=NQi,GRc=DQi,FRc=kQi,ZRc=xQi,LRc=GQi,VRc=FQi,PRc=ZQi,WRc=LQi,ORc=VQi,MRc=PQi,HRc=WQi,YRc=OQi,QRc=MQi,XRc=HQi,JRc=YQi,URc=QQi,KRc=XQi,jRc=JQi,zRc=UQi,qRc=KQi,$Rc=jQi,eNc=zQi,tNc=qQi,rNc=$Qi,nNc=eXi,iNc=tXi,sNc=rXi,oNc=nXi,aNc=iXi,cNc=sXi,lNc=oXi,uNc=aXi,gNc=cXi,ANc=lXi,dNc=uXi,pNc=gXi,fNc=AXi,INc=dXi,hNc=pXi,mNc=fXi,CNc=IXi,_Nc=hXi,yNc=iw([QYi,XYi,JYi,UYi,KYi,jYi,zYi,qYi,$Yi,eQi,tQi,rQi,nQi,iQi,sQi,oQi,aQi,cQi,lQi,uQi,gQi,AQi,dQi,pQi,fQi,IQi,hQi,mQi,CQi,_Qi,yQi,bQi,EQi,SQi,vQi,BQi,wQi,TQi,RQi,NQi,DQi,kQi,xQi,GQi,FQi,ZQi,LQi,VQi,PQi,WQi,OQi,MQi,HQi,YQi,QQi,XQi,JQi,UQi,KQi,jQi,zQi,qQi,$Qi,eXi,tXi,rXi,nXi,iXi,sXi,oXi,aXi,cXi,lXi,uXi,gXi,AXi,dXi,pXi,fXi,IXi,hXi]),mXi="alibaba_cloud",CXi="aws",_Xi="azure",yXi="gcp",bNc=mXi,ENc=CXi,SNc=_Xi,vNc=yXi,BNc=iw([mXi,CXi,_Xi,yXi]),bXi="alibaba_cloud_ecs",EXi="alibaba_cloud_fc",SXi="aws_ec2",vXi="aws_ecs",BXi="aws_eks",wXi="aws_lambda",TXi="aws_elastic_beanstalk",RXi="azure_vm",NXi="azure_container_instances",DXi="azure_aks",kXi="azure_functions",xXi="azure_app_service",GXi="gcp_compute_engine",FXi="gcp_cloud_run",ZXi="gcp_kubernetes_engine",LXi="gcp_cloud_functions",VXi="gcp_app_engine",wNc=bXi,TNc=EXi,RNc=SXi,NNc=vXi,DNc=BXi,kNc=wXi,xNc=TXi,GNc=RXi,FNc=NXi,ZNc=DXi,LNc=kXi,VNc=xXi,PNc=GXi,WNc=FXi,ONc=ZXi,MNc=LXi,HNc=VXi,YNc=iw([bXi,EXi,SXi,vXi,BXi,wXi,TXi,RXi,NXi,DXi,kXi,xXi,GXi,FXi,ZXi,LXi,VXi]),PXi="ec2",WXi="fargate",QNc=PXi,XNc=WXi,JNc=iw([PXi,WXi]),OXi="amd64",MXi="arm32",HXi="arm64",YXi="ia64",QXi="ppc32",XXi="ppc64",JXi="x86",UNc=OXi,KNc=MXi,jNc=HXi,zNc=YXi,qNc=QXi,$Nc=XXi,eDc=JXi,tDc=iw([OXi,MXi,HXi,YXi,QXi,XXi,JXi]),UXi="windows",KXi="linux",jXi="darwin",zXi="freebsd",qXi="netbsd",$Xi="openbsd",e4i="dragonflybsd",t4i="hpux",r4i="aix",n4i="solaris",i4i="z_os",rDc=UXi,nDc=KXi,iDc=jXi,sDc=zXi,oDc=qXi,aDc=$Xi,cDc=e4i,lDc=t4i,uDc=r4i,gDc=n4i,ADc=i4i,dDc=iw([UXi,KXi,jXi,zXi,qXi,$Xi,e4i,t4i,r4i,n4i,i4i]),s4i="cpp",o4i="dotnet",a4i="erlang",c4i="go",l4i="java",u4i="nodejs",g4i="php",A4i="python",d4i="ruby",p4i="webjs",pDc=s4i,fDc=o4i,IDc=a4i,hDc=c4i,mDc=l4i,CDc=u4i,_Dc=g4i,yDc=A4i,bDc=d4i,EDc=p4i,SDc=iw([s4i,o4i,a4i,c4i,l4i,u4i,g4i,A4i,d4i,p4i])});var I4i=bc(()=>{f4i()});var vDc,BDc,wDc,TDc,RDc,NDc,DDc,kDc,xDc,GDc,FDc,ZDc,LDc,VDc,PDc,WDc,ODc,MDc,HDc,YDc,QDc,XDc,JDc,UDc,KDc,jDc,zDc,qDc,$Dc,ekc,tkc,rkc,nkc,ikc,skc,okc,akc,ckc,lkc,ukc,gkc,Akc,dkc,pkc,fkc,Ikc,hkc,mkc,Ckc,_kc,ykc,bkc,Ekc,Skc,vkc,Bkc,wkc,Tkc,Rkc,Nkc,Dkc,kkc,xkc,Gkc,Fkc,Zkc,Lkc,Vkc,Pkc,Wkc,Okc,Mkc,Hkc,Ykc,Qkc,Xkc,Jkc,Ukc,Kkc,jkc,zkc,qkc,$kc,exc,txc,rxc,nxc,ixc,sxc,oxc,axc,cxc,lxc,uxc,gxc,Axc,dxc,pxc,fxc,Ixc,hxc,mxc,Cxc,_xc,yxc,bxc,Exc,Sxc,vxc,Bxc,h4i=bc(()=>{vDc="aspnetcore.rate_limiting.result",BDc="acquired",wDc="endpoint_limiter",TDc="global_limiter",RDc="request_canceled",NDc="telemetry.sdk.language",DDc="cpp",kDc="dotnet",xDc="erlang",GDc="go",FDc="java",ZDc="nodejs",LDc="php",VDc="python",PDc="ruby",WDc="rust",ODc="swift",MDc="webjs",HDc="telemetry.sdk.name",YDc="telemetry.sdk.version",QDc="aspnetcore.diagnostics.handler.type",XDc="aspnetcore.diagnostics.exception.result",JDc="aborted",UDc="handled",KDc="skipped",jDc="unhandled",zDc="aspnetcore.rate_limiting.policy",qDc="aspnetcore.request.is_unhandled",$Dc="aspnetcore.routing.is_fallback",ekc="aspnetcore.routing.match_status",tkc="failure",rkc="success",nkc="client.address",ikc="client.port",skc="error.type",okc="_OTHER",akc="exception.escaped",ckc="exception.message",lkc="exception.stacktrace",ukc="exception.type",gkc=function(e){return"http.request.header."+e},Akc="http.request.method",dkc="_OTHER",pkc="CONNECT",fkc="DELETE",Ikc="GET",hkc="HEAD",mkc="OPTIONS",Ckc="PATCH",_kc="POST",ykc="PUT",bkc="TRACE",Ekc="http.request.method_original",Skc="http.request.resend_count",vkc=function(e){return"http.response.header."+e},Bkc="http.response.status_code",wkc="http.route",Tkc="jvm.gc.action",Rkc="jvm.gc.name",Nkc="jvm.memory.pool.name",Dkc="jvm.memory.type",kkc="heap",xkc="non_heap",Gkc="jvm.thread.daemon",Fkc="jvm.thread.state",Zkc="blocked",Lkc="new",Vkc="runnable",Pkc="terminated",Wkc="timed_waiting",Okc="waiting",Mkc="network.local.address",Hkc="network.local.port",Ykc="network.peer.address",Qkc="network.peer.port",Xkc="network.protocol.name",Jkc="network.protocol.version",Ukc="network.transport",Kkc="pipe",jkc="quic",zkc="tcp",qkc="udp",$kc="unix",exc="network.type",txc="ipv4",rxc="ipv6",nxc="otel.scope.name",ixc="otel.scope.version",sxc="otel.status_code",oxc="ERROR",axc="OK",cxc="otel.status_description",lxc="server.address",uxc="server.port",gxc="service.name",Axc="service.version",dxc="signalr.connection.status",pxc="app_shutdown",fxc="normal_closure",Ixc="timeout",hxc="signalr.transport",mxc="long_polling",Cxc="server_sent_events",_xc="web_sockets",yxc="url.fragment",bxc="url.full",Exc="url.path",Sxc="url.query",vxc="url.scheme",Bxc="user_agent.original"});var wxc,Txc,Rxc,Nxc,Dxc,kxc,xxc,Gxc,Fxc,Zxc,Lxc,Vxc,Pxc,Wxc,Oxc,Mxc,Hxc,Yxc,Qxc,Xxc,Jxc,Uxc,Kxc,jxc,zxc,qxc,$xc,eGc,tGc,rGc,nGc,m4i=bc(()=>{wxc="aspnetcore.diagnostics.exceptions",Txc="aspnetcore.rate_limiting.active_request_leases",Rxc="aspnetcore.rate_limiting.queued_requests",Nxc="aspnetcore.rate_limiting.request.time_in_queue",Dxc="aspnetcore.rate_limiting.request_lease.duration",kxc="aspnetcore.rate_limiting.requests",xxc="aspnetcore.routing.match_attempts",Gxc="http.client.request.duration",Fxc="http.server.request.duration",Zxc="jvm.class.count",Lxc="jvm.class.loaded",Vxc="jvm.class.unloaded",Pxc="jvm.cpu.count",Wxc="jvm.cpu.recent_utilization",Oxc="jvm.cpu.time",Mxc="jvm.gc.duration",Hxc="jvm.memory.committed",Yxc="jvm.memory.limit",Qxc="jvm.memory.used",Xxc="jvm.memory.used_after_last_gc",Jxc="jvm.thread.count",Uxc="kestrel.active_connections",Kxc="kestrel.active_tls_handshakes",jxc="kestrel.connection.duration",zxc="kestrel.queued_connections",qxc="kestrel.queued_requests",$xc="kestrel.rejected_connections",eGc="kestrel.tls_handshake.duration",tGc="kestrel.upgraded_connections",rGc="signalr.server.active_connections",nGc="signalr.server.connection.duration"});var C4i={};sI(C4i,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>JDc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>UDc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>KDc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>jDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>BDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>wDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>TDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>RDc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>tkc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>rkc,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>XDc,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>QDc,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>zDc,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>vDc,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>qDc,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>$Dc,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>ekc,ATTR_CLIENT_ADDRESS:()=>nkc,ATTR_CLIENT_PORT:()=>ikc,ATTR_ERROR_TYPE:()=>skc,ATTR_EXCEPTION_ESCAPED:()=>akc,ATTR_EXCEPTION_MESSAGE:()=>ckc,ATTR_EXCEPTION_STACKTRACE:()=>lkc,ATTR_EXCEPTION_TYPE:()=>ukc,ATTR_HTTP_REQUEST_HEADER:()=>gkc,ATTR_HTTP_REQUEST_METHOD:()=>Akc,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>Ekc,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>Skc,ATTR_HTTP_RESPONSE_HEADER:()=>vkc,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>Bkc,ATTR_HTTP_ROUTE:()=>wkc,ATTR_JVM_GC_ACTION:()=>Tkc,ATTR_JVM_GC_NAME:()=>Rkc,ATTR_JVM_MEMORY_POOL_NAME:()=>Nkc,ATTR_JVM_MEMORY_TYPE:()=>Dkc,ATTR_JVM_THREAD_DAEMON:()=>Gkc,ATTR_JVM_THREAD_STATE:()=>Fkc,ATTR_NETWORK_LOCAL_ADDRESS:()=>Mkc,ATTR_NETWORK_LOCAL_PORT:()=>Hkc,ATTR_NETWORK_PEER_ADDRESS:()=>Ykc,ATTR_NETWORK_PEER_PORT:()=>Qkc,ATTR_NETWORK_PROTOCOL_NAME:()=>Xkc,ATTR_NETWORK_PROTOCOL_VERSION:()=>Jkc,ATTR_NETWORK_TRANSPORT:()=>Ukc,ATTR_NETWORK_TYPE:()=>exc,ATTR_OTEL_SCOPE_NAME:()=>nxc,ATTR_OTEL_SCOPE_VERSION:()=>ixc,ATTR_OTEL_STATUS_CODE:()=>sxc,ATTR_OTEL_STATUS_DESCRIPTION:()=>cxc,ATTR_SERVER_ADDRESS:()=>lxc,ATTR_SERVER_PORT:()=>uxc,ATTR_SERVICE_NAME:()=>gxc,ATTR_SERVICE_VERSION:()=>Axc,ATTR_SIGNALR_CONNECTION_STATUS:()=>dxc,ATTR_SIGNALR_TRANSPORT:()=>hxc,ATTR_TELEMETRY_SDK_LANGUAGE:()=>NDc,ATTR_TELEMETRY_SDK_NAME:()=>HDc,ATTR_TELEMETRY_SDK_VERSION:()=>YDc,ATTR_URL_FRAGMENT:()=>yxc,ATTR_URL_FULL:()=>bxc,ATTR_URL_PATH:()=>Exc,ATTR_URL_QUERY:()=>Sxc,ATTR_URL_SCHEME:()=>vxc,ATTR_USER_AGENT_ORIGINAL:()=>Bxc,AWSECSLAUNCHTYPEVALUES_EC2:()=>QNc,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>XNc,AwsEcsLaunchtypeValues:()=>JNc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>wNc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>TNc,CLOUDPLATFORMVALUES_AWS_EC2:()=>RNc,CLOUDPLATFORMVALUES_AWS_ECS:()=>NNc,CLOUDPLATFORMVALUES_AWS_EKS:()=>DNc,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>xNc,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>kNc,CLOUDPLATFORMVALUES_AZURE_AKS:()=>ZNc,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>VNc,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>FNc,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>LNc,CLOUDPLATFORMVALUES_AZURE_VM:()=>GNc,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>HNc,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>MNc,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>WNc,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>PNc,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>ONc,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>bNc,CLOUDPROVIDERVALUES_AWS:()=>ENc,CLOUDPROVIDERVALUES_AZURE:()=>SNc,CLOUDPROVIDERVALUES_GCP:()=>vNc,CloudPlatformValues:()=>YNc,CloudProviderValues:()=>BNc,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>owc,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>pwc,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>awc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>dwc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>lwc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>Iwc,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>uwc,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>cwc,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>fwc,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>Awc,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>gwc,DBSYSTEMVALUES_ADABAS:()=>RBc,DBSYSTEMVALUES_CACHE:()=>TBc,DBSYSTEMVALUES_CASSANDRA:()=>XBc,DBSYSTEMVALUES_CLOUDSCAPE:()=>_Bc,DBSYSTEMVALUES_COCKROACHDB:()=>iwc,DBSYSTEMVALUES_COLDFUSION:()=>QBc,DBSYSTEMVALUES_COSMOSDB:()=>qBc,DBSYSTEMVALUES_COUCHBASE:()=>jBc,DBSYSTEMVALUES_COUCHDB:()=>zBc,DBSYSTEMVALUES_DB2:()=>IBc,DBSYSTEMVALUES_DERBY:()=>DBc,DBSYSTEMVALUES_DYNAMODB:()=>$Bc,DBSYSTEMVALUES_EDB:()=>wBc,DBSYSTEMVALUES_ELASTICSEARCH:()=>rwc,DBSYSTEMVALUES_FILEMAKER:()=>kBc,DBSYSTEMVALUES_FIREBIRD:()=>NBc,DBSYSTEMVALUES_FIRSTSQL:()=>BBc,DBSYSTEMVALUES_GEODE:()=>twc,DBSYSTEMVALUES_H2:()=>YBc,DBSYSTEMVALUES_HANADB:()=>SBc,DBSYSTEMVALUES_HBASE:()=>JBc,DBSYSTEMVALUES_HIVE:()=>CBc,DBSYSTEMVALUES_HSQLDB:()=>yBc,DBSYSTEMVALUES_INFORMIX:()=>xBc,DBSYSTEMVALUES_INGRES:()=>vBc,DBSYSTEMVALUES_INSTANTDB:()=>GBc,DBSYSTEMVALUES_INTERBASE:()=>FBc,DBSYSTEMVALUES_MARIADB:()=>ZBc,DBSYSTEMVALUES_MAXDB:()=>EBc,DBSYSTEMVALUES_MEMCACHED:()=>nwc,DBSYSTEMVALUES_MONGODB:()=>UBc,DBSYSTEMVALUES_MSSQL:()=>dBc,DBSYSTEMVALUES_MYSQL:()=>pBc,DBSYSTEMVALUES_NEO4J:()=>ewc,DBSYSTEMVALUES_NETEZZA:()=>LBc,DBSYSTEMVALUES_ORACLE:()=>fBc,DBSYSTEMVALUES_OTHER_SQL:()=>ABc,DBSYSTEMVALUES_PERVASIVE:()=>VBc,DBSYSTEMVALUES_POINTBASE:()=>PBc,DBSYSTEMVALUES_POSTGRESQL:()=>hBc,DBSYSTEMVALUES_PROGRESS:()=>bBc,DBSYSTEMVALUES_REDIS:()=>KBc,DBSYSTEMVALUES_REDSHIFT:()=>mBc,DBSYSTEMVALUES_SQLITE:()=>WBc,DBSYSTEMVALUES_SYBASE:()=>OBc,DBSYSTEMVALUES_TERADATA:()=>MBc,DBSYSTEMVALUES_VERTICA:()=>HBc,DbCassandraConsistencyLevelValues:()=>hwc,DbSystemValues:()=>swc,ERROR_TYPE_VALUE_OTHER:()=>okc,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>Bwc,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>vwc,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>Swc,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>Twc,FAASINVOKEDPROVIDERVALUES_AWS:()=>Rwc,FAASINVOKEDPROVIDERVALUES_AZURE:()=>Nwc,FAASINVOKEDPROVIDERVALUES_GCP:()=>Dwc,FAASTRIGGERVALUES_DATASOURCE:()=>mwc,FAASTRIGGERVALUES_HTTP:()=>Cwc,FAASTRIGGERVALUES_OTHER:()=>bwc,FAASTRIGGERVALUES_PUBSUB:()=>_wc,FAASTRIGGERVALUES_TIMER:()=>ywc,FaasDocumentOperationValues:()=>wwc,FaasInvokedProviderValues:()=>kwc,FaasTriggerValues:()=>Ewc,HOSTARCHVALUES_AMD64:()=>UNc,HOSTARCHVALUES_ARM32:()=>KNc,HOSTARCHVALUES_ARM64:()=>jNc,HOSTARCHVALUES_IA64:()=>zNc,HOSTARCHVALUES_PPC32:()=>qNc,HOSTARCHVALUES_PPC64:()=>$Nc,HOSTARCHVALUES_X86:()=>eDc,HTTPFLAVORVALUES_HTTP_1_0:()=>fTc,HTTPFLAVORVALUES_HTTP_1_1:()=>ITc,HTTPFLAVORVALUES_HTTP_2_0:()=>hTc,HTTPFLAVORVALUES_QUIC:()=>CTc,HTTPFLAVORVALUES_SPDY:()=>mTc,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>pkc,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>fkc,HTTP_REQUEST_METHOD_VALUE_GET:()=>Ikc,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>hkc,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>mkc,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>dkc,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>Ckc,HTTP_REQUEST_METHOD_VALUE_POST:()=>_kc,HTTP_REQUEST_METHOD_VALUE_PUT:()=>ykc,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>bkc,HostArchValues:()=>tDc,HttpFlavorValues:()=>_Tc,JVM_MEMORY_TYPE_VALUE_HEAP:()=>kkc,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>xkc,JVM_THREAD_STATE_VALUE_BLOCKED:()=>Zkc,JVM_THREAD_STATE_VALUE_NEW:()=>Lkc,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>Vkc,JVM_THREAD_STATE_VALUE_TERMINATED:()=>Pkc,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>Wkc,JVM_THREAD_STATE_VALUE_WAITING:()=>Okc,MESSAGETYPEVALUES_RECEIVED:()=>XTc,MESSAGETYPEVALUES_SENT:()=>QTc,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>yTc,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>bTc,MESSAGINGOPERATIONVALUES_PROCESS:()=>vTc,MESSAGINGOPERATIONVALUES_RECEIVE:()=>STc,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>wxc,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>Txc,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>Rxc,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>kxc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>Dxc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>Nxc,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>xxc,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>Gxc,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>Fxc,METRIC_JVM_CLASS_COUNT:()=>Zxc,METRIC_JVM_CLASS_LOADED:()=>Lxc,METRIC_JVM_CLASS_UNLOADED:()=>Vxc,METRIC_JVM_CPU_COUNT:()=>Pxc,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>Wxc,METRIC_JVM_CPU_TIME:()=>Oxc,METRIC_JVM_GC_DURATION:()=>Mxc,METRIC_JVM_MEMORY_COMMITTED:()=>Hxc,METRIC_JVM_MEMORY_LIMIT:()=>Yxc,METRIC_JVM_MEMORY_USED:()=>Qxc,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>Xxc,METRIC_JVM_THREAD_COUNT:()=>Jxc,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>Uxc,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>Kxc,METRIC_KESTREL_CONNECTION_DURATION:()=>jxc,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>zxc,METRIC_KESTREL_QUEUED_REQUESTS:()=>qxc,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>$xc,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>eGc,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>tGc,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>rGc,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>nGc,MessageTypeValues:()=>JTc,MessagingDestinationKindValues:()=>ETc,MessagingOperationValues:()=>BTc,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>jwc,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>$wc,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>Uwc,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>oTc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>zwc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>qwc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>iTc,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>Jwc,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>cTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>eTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>rTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>aTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>tTc,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>nTc,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>uTc,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>sTc,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>dTc,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>gTc,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>ATc,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>lTc,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>Kwc,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>Hwc,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>Ywc,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>Qwc,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>Owc,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>Mwc,NETTRANSPORTVALUES_INPROC:()=>Vwc,NETTRANSPORTVALUES_IP:()=>Fwc,NETTRANSPORTVALUES_IP_TCP:()=>xwc,NETTRANSPORTVALUES_IP_UDP:()=>Gwc,NETTRANSPORTVALUES_OTHER:()=>Pwc,NETTRANSPORTVALUES_PIPE:()=>Lwc,NETTRANSPORTVALUES_UNIX:()=>Zwc,NETWORK_TRANSPORT_VALUE_PIPE:()=>Kkc,NETWORK_TRANSPORT_VALUE_QUIC:()=>jkc,NETWORK_TRANSPORT_VALUE_TCP:()=>zkc,NETWORK_TRANSPORT_VALUE_UDP:()=>qkc,NETWORK_TRANSPORT_VALUE_UNIX:()=>$kc,NETWORK_TYPE_VALUE_IPV4:()=>txc,NETWORK_TYPE_VALUE_IPV6:()=>rxc,NetHostConnectionSubtypeValues:()=>pTc,NetHostConnectionTypeValues:()=>Xwc,NetTransportValues:()=>Wwc,OSTYPEVALUES_AIX:()=>uDc,OSTYPEVALUES_DARWIN:()=>iDc,OSTYPEVALUES_DRAGONFLYBSD:()=>cDc,OSTYPEVALUES_FREEBSD:()=>sDc,OSTYPEVALUES_HPUX:()=>lDc,OSTYPEVALUES_LINUX:()=>nDc,OSTYPEVALUES_NETBSD:()=>oDc,OSTYPEVALUES_OPENBSD:()=>aDc,OSTYPEVALUES_SOLARIS:()=>gDc,OSTYPEVALUES_WINDOWS:()=>rDc,OSTYPEVALUES_Z_OS:()=>ADc,OTEL_STATUS_CODE_VALUE_ERROR:()=>oxc,OTEL_STATUS_CODE_VALUE_OK:()=>axc,OsTypeValues:()=>dDc,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>LTc,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>xTc,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>TTc,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>MTc,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>DTc,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>ZTc,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>WTc,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>NTc,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>kTc,RPCGRPCSTATUSCODEVALUES_OK:()=>wTc,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>VTc,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>GTc,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>FTc,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>HTc,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>OTc,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>PTc,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>RTc,RpcGrpcStatusCodeValues:()=>YTc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>_vc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>kvc,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>hvc,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>dvc,SEMATTRS_AWS_DYNAMODB_COUNT:()=>Nvc,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>vvc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>Evc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>xvc,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>yvc,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>pvc,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>Cvc,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>Svc,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>mvc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>fvc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>Ivc,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>Dvc,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>wvc,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>Tvc,SEMATTRS_AWS_DYNAMODB_SELECT:()=>bvc,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>Bvc,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>Avc,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>Rvc,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>Q2c,SEMATTRS_CODE_FILEPATH:()=>KSc,SEMATTRS_CODE_FUNCTION:()=>JSc,SEMATTRS_CODE_LINENO:()=>jSc,SEMATTRS_CODE_NAMESPACE:()=>USc,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>rSc,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>aSc,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>oSc,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>iSc,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>eSc,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>tSc,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>sSc,SEMATTRS_DB_CASSANDRA_TABLE:()=>nSc,SEMATTRS_DB_CONNECTION_STRING:()=>J2c,SEMATTRS_DB_HBASE_NAMESPACE:()=>cSc,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>K2c,SEMATTRS_DB_MONGODB_COLLECTION:()=>uSc,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>$2c,SEMATTRS_DB_NAME:()=>j2c,SEMATTRS_DB_OPERATION:()=>q2c,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>lSc,SEMATTRS_DB_SQL_TABLE:()=>gSc,SEMATTRS_DB_STATEMENT:()=>z2c,SEMATTRS_DB_SYSTEM:()=>X2c,SEMATTRS_DB_USER:()=>U2c,SEMATTRS_ENDUSER_ID:()=>MSc,SEMATTRS_ENDUSER_ROLE:()=>HSc,SEMATTRS_ENDUSER_SCOPE:()=>YSc,SEMATTRS_EXCEPTION_ESCAPED:()=>fSc,SEMATTRS_EXCEPTION_MESSAGE:()=>dSc,SEMATTRS_EXCEPTION_STACKTRACE:()=>pSc,SEMATTRS_EXCEPTION_TYPE:()=>ASc,SEMATTRS_FAAS_COLDSTART:()=>SSc,SEMATTRS_FAAS_CRON:()=>ESc,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>mSc,SEMATTRS_FAAS_DOCUMENT_NAME:()=>ySc,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>CSc,SEMATTRS_FAAS_DOCUMENT_TIME:()=>_Sc,SEMATTRS_FAAS_EXECUTION:()=>hSc,SEMATTRS_FAAS_INVOKED_NAME:()=>vSc,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>BSc,SEMATTRS_FAAS_INVOKED_REGION:()=>wSc,SEMATTRS_FAAS_TIME:()=>bSc,SEMATTRS_FAAS_TRIGGER:()=>ISc,SEMATTRS_HTTP_CLIENT_IP:()=>gvc,SEMATTRS_HTTP_FLAVOR:()=>nvc,SEMATTRS_HTTP_HOST:()=>evc,SEMATTRS_HTTP_METHOD:()=>zSc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>svc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>ovc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>avc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>cvc,SEMATTRS_HTTP_ROUTE:()=>uvc,SEMATTRS_HTTP_SCHEME:()=>tvc,SEMATTRS_HTTP_SERVER_NAME:()=>lvc,SEMATTRS_HTTP_STATUS_CODE:()=>rvc,SEMATTRS_HTTP_TARGET:()=>$Sc,SEMATTRS_HTTP_URL:()=>qSc,SEMATTRS_HTTP_USER_AGENT:()=>ivc,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>lBc,SEMATTRS_MESSAGE_ID:()=>cBc,SEMATTRS_MESSAGE_TYPE:()=>aBc,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>uBc,SEMATTRS_MESSAGING_CONSUMER_ID:()=>Xvc,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>Mvc,SEMATTRS_MESSAGING_DESTINATION:()=>Fvc,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>Zvc,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>jvc,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>Kvc,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>Uvc,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>zvc,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>qvc,SEMATTRS_MESSAGING_MESSAGE_ID:()=>Ovc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>Yvc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>Hvc,SEMATTRS_MESSAGING_OPERATION:()=>Qvc,SEMATTRS_MESSAGING_PROTOCOL:()=>Vvc,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>Pvc,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>Jvc,SEMATTRS_MESSAGING_SYSTEM:()=>Gvc,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>Lvc,SEMATTRS_MESSAGING_URL:()=>Wvc,SEMATTRS_NET_HOST_CARRIER_ICC:()=>WSc,SEMATTRS_NET_HOST_CARRIER_MCC:()=>VSc,SEMATTRS_NET_HOST_CARRIER_MNC:()=>PSc,SEMATTRS_NET_HOST_CARRIER_NAME:()=>LSc,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>ZSc,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>FSc,SEMATTRS_NET_HOST_IP:()=>kSc,SEMATTRS_NET_HOST_NAME:()=>GSc,SEMATTRS_NET_HOST_PORT:()=>xSc,SEMATTRS_NET_PEER_IP:()=>RSc,SEMATTRS_NET_PEER_NAME:()=>DSc,SEMATTRS_NET_PEER_PORT:()=>NSc,SEMATTRS_NET_TRANSPORT:()=>TSc,SEMATTRS_PEER_SERVICE:()=>OSc,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>rBc,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>sBc,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>oBc,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>iBc,SEMATTRS_RPC_JSONRPC_VERSION:()=>nBc,SEMATTRS_RPC_METHOD:()=>tBc,SEMATTRS_RPC_SERVICE:()=>eBc,SEMATTRS_RPC_SYSTEM:()=>$vc,SEMATTRS_THREAD_ID:()=>QSc,SEMATTRS_THREAD_NAME:()=>XSc,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>eRc,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>$Tc,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>tRc,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>rRc,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>nRc,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>iRc,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>sRc,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>aRc,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>oRc,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>lRc,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>cRc,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>KTc,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>zTc,SEMRESATTRS_CLOUD_PLATFORM:()=>qTc,SEMRESATTRS_CLOUD_PROVIDER:()=>UTc,SEMRESATTRS_CLOUD_REGION:()=>jTc,SEMRESATTRS_CONTAINER_ID:()=>gRc,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>dRc,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>pRc,SEMRESATTRS_CONTAINER_NAME:()=>uRc,SEMRESATTRS_CONTAINER_RUNTIME:()=>ARc,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>fRc,SEMRESATTRS_DEVICE_ID:()=>IRc,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>hRc,SEMRESATTRS_DEVICE_MODEL_NAME:()=>mRc,SEMRESATTRS_FAAS_ID:()=>_Rc,SEMRESATTRS_FAAS_INSTANCE:()=>bRc,SEMRESATTRS_FAAS_MAX_MEMORY:()=>ERc,SEMRESATTRS_FAAS_NAME:()=>CRc,SEMRESATTRS_FAAS_VERSION:()=>yRc,SEMRESATTRS_HOST_ARCH:()=>wRc,SEMRESATTRS_HOST_ID:()=>SRc,SEMRESATTRS_HOST_IMAGE_ID:()=>RRc,SEMRESATTRS_HOST_IMAGE_NAME:()=>TRc,SEMRESATTRS_HOST_IMAGE_VERSION:()=>NRc,SEMRESATTRS_HOST_NAME:()=>vRc,SEMRESATTRS_HOST_TYPE:()=>BRc,SEMRESATTRS_K8S_CLUSTER_NAME:()=>DRc,SEMRESATTRS_K8S_CONTAINER_NAME:()=>LRc,SEMRESATTRS_K8S_CRONJOB_NAME:()=>KRc,SEMRESATTRS_K8S_CRONJOB_UID:()=>URc,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>QRc,SEMRESATTRS_K8S_DAEMONSET_UID:()=>YRc,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>ORc,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>WRc,SEMRESATTRS_K8S_JOB_NAME:()=>JRc,SEMRESATTRS_K8S_JOB_UID:()=>XRc,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>GRc,SEMRESATTRS_K8S_NODE_NAME:()=>kRc,SEMRESATTRS_K8S_NODE_UID:()=>xRc,SEMRESATTRS_K8S_POD_NAME:()=>ZRc,SEMRESATTRS_K8S_POD_UID:()=>FRc,SEMRESATTRS_K8S_REPLICASET_NAME:()=>PRc,SEMRESATTRS_K8S_REPLICASET_UID:()=>VRc,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>HRc,SEMRESATTRS_K8S_STATEFULSET_UID:()=>MRc,SEMRESATTRS_OS_DESCRIPTION:()=>zRc,SEMRESATTRS_OS_NAME:()=>qRc,SEMRESATTRS_OS_TYPE:()=>jRc,SEMRESATTRS_OS_VERSION:()=>$Rc,SEMRESATTRS_PROCESS_COMMAND:()=>nNc,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>sNc,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>iNc,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>tNc,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>rNc,SEMRESATTRS_PROCESS_OWNER:()=>oNc,SEMRESATTRS_PROCESS_PID:()=>eNc,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>lNc,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>aNc,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>cNc,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>ANc,SEMRESATTRS_SERVICE_NAME:()=>uNc,SEMRESATTRS_SERVICE_NAMESPACE:()=>gNc,SEMRESATTRS_SERVICE_VERSION:()=>dNc,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>hNc,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>fNc,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>pNc,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>INc,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>_Nc,SEMRESATTRS_WEBENGINE_NAME:()=>mNc,SEMRESATTRS_WEBENGINE_VERSION:()=>CNc,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>pxc,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>fxc,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>Ixc,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>mxc,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>Cxc,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>_xc,SemanticAttributes:()=>gBc,SemanticResourceAttributes:()=>yNc,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>pDc,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>fDc,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>IDc,TELEMETRYSDKLANGUAGEVALUES_GO:()=>hDc,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>mDc,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>CDc,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>_Dc,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>yDc,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>bDc,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>EDc,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>DDc,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>kDc,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>xDc,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>GDc,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>FDc,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>ZDc,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>LDc,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>VDc,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>PDc,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>WDc,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>ODc,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>MDc,TelemetrySdkLanguageValues:()=>SDc});var _4i=bc(()=>{YYi();I4i();h4i();m4i()});var y4i=H(jSt=>{"use strict";Object.defineProperty(jSt,"__esModule",{value:!0});jSt.SDK_INFO=void 0;var iGc=$Lr(),FKe=(_4i(),vi(C4i));jSt.SDK_INFO={[FKe.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[FKe.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[FKe.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:FKe.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[FKe.SEMRESATTRS_TELEMETRY_SDK_VERSION]:iGc.VERSION}});var b4i=H(zSt=>{"use strict";Object.defineProperty(zSt,"__esModule",{value:!0});zSt.unrefTimer=void 0;function sGc(e){e.unref()}zSt.unrefTimer=sGc});var S4i=H(gD=>{"use strict";Object.defineProperty(gD,"__esModule",{value:!0});gD.unrefTimer=gD.SDK_INFO=gD.otperformance=gD.RandomIdGenerator=gD.hexToBase64=gD._globalThis=gD.getEnv=gD.getEnvWithoutDefaults=void 0;var E4i=XOi();Object.defineProperty(gD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return E4i.getEnvWithoutDefaults}});Object.defineProperty(gD,"getEnv",{enumerable:!0,get:function(){return E4i.getEnv}});var oGc=JOi();Object.defineProperty(gD,"_globalThis",{enumerable:!0,get:function(){return oGc._globalThis}});var aGc=KOi();Object.defineProperty(gD,"hexToBase64",{enumerable:!0,get:function(){return aGc.hexToBase64}});var cGc=qOi();Object.defineProperty(gD,"RandomIdGenerator",{enumerable:!0,get:function(){return cGc.RandomIdGenerator}});var lGc=$Oi();Object.defineProperty(gD,"otperformance",{enumerable:!0,get:function(){return lGc.otperformance}});var uGc=y4i();Object.defineProperty(gD,"SDK_INFO",{enumerable:!0,get:function(){return uGc.SDK_INFO}});var gGc=b4i();Object.defineProperty(gD,"unrefTimer",{enumerable:!0,get:function(){return gGc.unrefTimer}})});var t9r=H(AD=>{"use strict";Object.defineProperty(AD,"__esModule",{value:!0});AD.unrefTimer=AD.otperformance=AD.hexToBase64=AD.getEnvWithoutDefaults=AD.getEnv=AD._globalThis=AD.SDK_INFO=AD.RandomIdGenerator=void 0;var jce=S4i();Object.defineProperty(AD,"RandomIdGenerator",{enumerable:!0,get:function(){return jce.RandomIdGenerator}});Object.defineProperty(AD,"SDK_INFO",{enumerable:!0,get:function(){return jce.SDK_INFO}});Object.defineProperty(AD,"_globalThis",{enumerable:!0,get:function(){return jce._globalThis}});Object.defineProperty(AD,"getEnv",{enumerable:!0,get:function(){return jce.getEnv}});Object.defineProperty(AD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return jce.getEnvWithoutDefaults}});Object.defineProperty(AD,"hexToBase64",{enumerable:!0,get:function(){return jce.hexToBase64}});Object.defineProperty(AD,"otperformance",{enumerable:!0,get:function(){return jce.otperformance}});Object.defineProperty(AD,"unrefTimer",{enumerable:!0,get:function(){return jce.unrefTimer}})});var T4i=H(OE=>{"use strict";Object.defineProperty(OE,"__esModule",{value:!0});OE.addHrTimes=OE.isTimeInput=OE.isTimeInputHrTime=OE.hrTimeToMicroseconds=OE.hrTimeToMilliseconds=OE.hrTimeToNanoseconds=OE.hrTimeToTimeStamp=OE.hrTimeDuration=OE.timeInputToHrTime=OE.hrTime=OE.getTimeOrigin=OE.millisToHrTime=void 0;var r9r=t9r(),v4i=9,AGc=6,dGc=Math.pow(10,AGc),qSt=Math.pow(10,v4i);function ZKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*dGc);return[r,n]}OE.millisToHrTime=ZKe;function n9r(){let e=r9r.otperformance.timeOrigin;if(typeof e!="number"){let t=r9r.otperformance;e=t.timing&&t.timing.fetchStart}return e}OE.getTimeOrigin=n9r;function B4i(e){let t=ZKe(n9r()),r=ZKe(typeof e=="number"?e:r9r.otperformance.now());return w4i(t,r)}OE.hrTime=B4i;function pGc(e){if(i9r(e))return e;if(typeof e=="number")return e=qSt&&(r[1]-=qSt,r[0]+=1),r}OE.addHrTimes=w4i});var R4i=H(LKe=>{"use strict";Object.defineProperty(LKe,"__esModule",{value:!0});LKe.ExportResultCode=void 0;var yGc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(yGc=LKe.ExportResultCode||(LKe.ExportResultCode={}))});var D4i=H($St=>{"use strict";Object.defineProperty($St,"__esModule",{value:!0});$St.CompositePropagator=void 0;var N4i=(GI(),vi(xI)),s9r=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){N4i.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){N4i.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};$St.CompositePropagator=s9r});var k4i=H(ZDe=>{"use strict";Object.defineProperty(ZDe,"__esModule",{value:!0});ZDe.validateValue=ZDe.validateKey=void 0;var o9r="[_0-9a-z-*/]",bGc=`[a-z]${o9r}{0,255}`,EGc=`[a-z0-9]${o9r}{0,240}@[a-z]${o9r}{0,13}`,SGc=new RegExp(`^(?:${bGc}|${EGc})$`),vGc=/^[ -~]{0,255}[!-~]$/,BGc=/,|=/;function wGc(e){return SGc.test(e)}ZDe.validateKey=wGc;function TGc(e){return vGc.test(e)&&!BGc.test(e)}ZDe.validateValue=TGc});var c9r=H(evt=>{"use strict";Object.defineProperty(evt,"__esModule",{value:!0});evt.TraceState=void 0;var x4i=k4i(),G4i=32,RGc=512,F4i=",",Z4i="=",a9r=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+Z4i+this.get(r)),t),[]).join(F4i)}_parse(t){t.length>RGc||(this._internalState=t.split(F4i).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(Z4i);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,x4i.validateKey)(l)&&(0,x4i.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>G4i&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,G4i))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};evt.TraceState=a9r});var V4i=H(HG=>{"use strict";Object.defineProperty(HG,"__esModule",{value:!0});HG.W3CTraceContextPropagator=HG.parseTraceParent=HG.TRACE_STATE_HEADER=HG.TRACE_PARENT_HEADER=void 0;var tvt=(GI(),vi(xI)),NGc=xKe(),DGc=c9r();HG.TRACE_PARENT_HEADER="traceparent";HG.TRACE_STATE_HEADER="tracestate";var kGc="00",xGc="(?!ff)[\\da-f]{2}",GGc="(?![0]{32})[\\da-f]{32}",FGc="(?![0]{16})[\\da-f]{16}",ZGc="[\\da-f]{2}",LGc=new RegExp(`^\\s?(${xGc})-(${GGc})-(${FGc})-(${ZGc})(-.*)?\\s?$`);function L4i(e){let t=LGc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}HG.parseTraceParent=L4i;var l9r=class{inject(t,r,n){let a=tvt.trace.getSpanContext(t);if(!a||(0,NGc.isTracingSuppressed)(t)||!(0,tvt.isSpanContextValid)(a))return;let o=`${kGc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||tvt.TraceFlags.NONE).toString(16)}`;n.set(r,HG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,HG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,HG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=L4i(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,HG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new DGc.TraceState(typeof f=="string"?f:void 0)}return tvt.trace.setSpanContext(t,l)}fields(){return[HG.TRACE_PARENT_HEADER,HG.TRACE_STATE_HEADER]}};HG.W3CTraceContextPropagator=l9r});var P4i=H(m4=>{"use strict";Object.defineProperty(m4,"__esModule",{value:!0});m4.getRPCMetadata=m4.deleteRPCMetadata=m4.setRPCMetadata=m4.RPCType=void 0;var VGc=(GI(),vi(xI)),u9r=(0,VGc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),PGc;(function(e){e.HTTP="http"})(PGc=m4.RPCType||(m4.RPCType={}));function WGc(e,t){return e.setValue(u9r,t)}m4.setRPCMetadata=WGc;function OGc(e){return e.deleteValue(u9r)}m4.deleteRPCMetadata=OGc;function MGc(e){return e.getValue(u9r)}m4.getRPCMetadata=MGc});var A9r=H(rvt=>{"use strict";Object.defineProperty(rvt,"__esModule",{value:!0});rvt.AlwaysOffSampler=void 0;var HGc=(GI(),vi(xI)),g9r=class{shouldSample(){return{decision:HGc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};rvt.AlwaysOffSampler=g9r});var p9r=H(nvt=>{"use strict";Object.defineProperty(nvt,"__esModule",{value:!0});nvt.AlwaysOnSampler=void 0;var YGc=(GI(),vi(xI)),d9r=class{shouldSample(){return{decision:YGc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};nvt.AlwaysOnSampler=d9r});var O4i=H(svt=>{"use strict";Object.defineProperty(svt,"__esModule",{value:!0});svt.ParentBasedSampler=void 0;var ivt=(GI(),vi(xI)),QGc=JLr(),W4i=A9r(),f9r=p9r(),I9r=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,QGc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new f9r.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new f9r.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new W4i.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new f9r.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new W4i.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=ivt.trace.getSpanContext(t);return!A||!(0,ivt.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&ivt.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&ivt.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};svt.ParentBasedSampler=I9r});var M4i=H(ovt=>{"use strict";Object.defineProperty(ovt,"__esModule",{value:!0});ovt.TraceIdRatioBasedSampler=void 0;var h9r=(GI(),vi(xI)),m9r=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,h9r.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};ovt.TraceIdRatioBasedSampler=m9r});var J4i=H(avt=>{"use strict";Object.defineProperty(avt,"__esModule",{value:!0});avt.isPlainObject=void 0;var XGc="[object Object]",JGc="[object Null]",UGc="[object Undefined]",KGc=Function.prototype,H4i=KGc.toString,jGc=H4i.call(Object),zGc=qGc(Object.getPrototypeOf,Object),Y4i=Object.prototype,Q4i=Y4i.hasOwnProperty,UCe=Symbol?Symbol.toStringTag:void 0,X4i=Y4i.toString;function qGc(e,t){return function(r){return e(t(r))}}function $Gc(e){if(!eFc(e)||tFc(e)!==XGc)return!1;let t=zGc(e);if(t===null)return!0;let r=Q4i.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&H4i.call(r)===jGc}avt.isPlainObject=$Gc;function eFc(e){return e!=null&&typeof e=="object"}function tFc(e){return e==null?e===void 0?UGc:JGc:UCe&&UCe in Object(e)?rFc(e):nFc(e)}function rFc(e){let t=Q4i.call(e,UCe),r=e[UCe],n=!1;try{e[UCe]=void 0,n=!0}catch{}let a=X4i.call(e);return n&&(t?e[UCe]=r:delete e[UCe]),a}function nFc(e){return X4i.call(e)}});var q4i=H(uvt=>{"use strict";Object.defineProperty(uvt,"__esModule",{value:!0});uvt.merge=void 0;var U4i=J4i(),iFc=20;function sFc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=j4i(t,e.shift(),0,r);return t}uvt.merge=sFc;function C9r(e){return lvt(e)?e.slice():e}function j4i(e,t,r=0,n){let a;if(!(r>iFc)){if(r++,cvt(e)||cvt(t)||z4i(t))a=C9r(t);else if(lvt(e)){if(a=e.slice(),lvt(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(K4i(e,f,n)||K4i(t,f,n))delete a[f];else{if(VKe(C)&&VKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=j4i(a[f],I,r,n)}}}}else a=t;return a}}function K4i(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function oFc(e,t){return!(!(0,U4i.isPlainObject)(e)||!(0,U4i.isPlainObject)(t))}});var $4i=H(LDe=>{"use strict";Object.defineProperty(LDe,"__esModule",{value:!0});LDe.callWithTimeout=LDe.TimeoutError=void 0;var gvt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};LDe.TimeoutError=gvt;function aFc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new gvt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}LDe.callWithTimeout=aFc});var tJi=H(VDe=>{"use strict";Object.defineProperty(VDe,"__esModule",{value:!0});VDe.isUrlIgnored=VDe.urlMatches=void 0;function eJi(e,t){return typeof t=="string"?e===t:!!e.match(t)}VDe.urlMatches=eJi;function cFc(e,t){if(!t)return!1;for(let r of t)if(eJi(e,r))return!0;return!1}VDe.isUrlIgnored=cFc});var rJi=H(Avt=>{"use strict";Object.defineProperty(Avt,"__esModule",{value:!0});Avt.isWrapped=void 0;function lFc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}Avt.isWrapped=lFc});var nJi=H(dvt=>{"use strict";Object.defineProperty(dvt,"__esModule",{value:!0});dvt.Deferred=void 0;var _9r=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};dvt.Deferred=_9r});var iJi=H(pvt=>{"use strict";Object.defineProperty(pvt,"__esModule",{value:!0});pvt.BindOnceFuture=void 0;var uFc=nJi(),y9r=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new uFc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};pvt.BindOnceFuture=y9r});var oJi=H(fvt=>{"use strict";Object.defineProperty(fvt,"__esModule",{value:!0});fvt._export=void 0;var sJi=(GI(),vi(xI)),gFc=xKe();function AFc(e,t){return new Promise(r=>{sJi.context.with((0,gFc.suppressTracing)(sJi.context.active()),()=>{e.export(t,n=>{r(n)})})})}fvt._export=AFc});var S9r=H(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=Ja.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Ja.TraceState=Ja.unsuppressTracing=Ja.suppressTracing=Ja.isTracingSuppressed=Ja.TraceIdRatioBasedSampler=Ja.ParentBasedSampler=Ja.AlwaysOnSampler=Ja.AlwaysOffSampler=Ja.setRPCMetadata=Ja.getRPCMetadata=Ja.deleteRPCMetadata=Ja.RPCType=Ja.parseTraceParent=Ja.W3CTraceContextPropagator=Ja.TRACE_STATE_HEADER=Ja.TRACE_PARENT_HEADER=Ja.CompositePropagator=Ja.unrefTimer=Ja.otperformance=Ja.hexToBase64=Ja.getEnvWithoutDefaults=Ja.getEnv=Ja._globalThis=Ja.SDK_INFO=Ja.RandomIdGenerator=Ja.baggageUtils=Ja.ExportResultCode=Ja.hexToBinary=Ja.timeInputToHrTime=Ja.millisToHrTime=Ja.isTimeInputHrTime=Ja.isTimeInput=Ja.hrTimeToTimeStamp=Ja.hrTimeToNanoseconds=Ja.hrTimeToMilliseconds=Ja.hrTimeToMicroseconds=Ja.hrTimeDuration=Ja.hrTime=Ja.getTimeOrigin=Ja.addHrTimes=Ja.loggingErrorHandler=Ja.setGlobalErrorHandler=Ja.globalErrorHandler=Ja.sanitizeAttributes=Ja.isAttributeValue=Ja.isAttributeKey=Ja.AnchoredClock=Ja.W3CBaggagePropagator=void 0;Ja.internal=Ja.VERSION=Ja.BindOnceFuture=Ja.isWrapped=Ja.urlMatches=Ja.isUrlIgnored=Ja.callWithTimeout=Ja.TimeoutError=Ja.TracesSamplerValues=Ja.merge=Ja.parseEnvironment=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Ja.DEFAULT_ENVIRONMENT=void 0;var dFc=VOi();Object.defineProperty(Ja,"W3CBaggagePropagator",{enumerable:!0,get:function(){return dFc.W3CBaggagePropagator}});var pFc=POi();Object.defineProperty(Ja,"AnchoredClock",{enumerable:!0,get:function(){return pFc.AnchoredClock}});var b9r=YOi();Object.defineProperty(Ja,"isAttributeKey",{enumerable:!0,get:function(){return b9r.isAttributeKey}});Object.defineProperty(Ja,"isAttributeValue",{enumerable:!0,get:function(){return b9r.isAttributeValue}});Object.defineProperty(Ja,"sanitizeAttributes",{enumerable:!0,get:function(){return b9r.sanitizeAttributes}});var aJi=JLr();Object.defineProperty(Ja,"globalErrorHandler",{enumerable:!0,get:function(){return aJi.globalErrorHandler}});Object.defineProperty(Ja,"setGlobalErrorHandler",{enumerable:!0,get:function(){return aJi.setGlobalErrorHandler}});var fFc=XLr();Object.defineProperty(Ja,"loggingErrorHandler",{enumerable:!0,get:function(){return fFc.loggingErrorHandler}});var dH=T4i();Object.defineProperty(Ja,"addHrTimes",{enumerable:!0,get:function(){return dH.addHrTimes}});Object.defineProperty(Ja,"getTimeOrigin",{enumerable:!0,get:function(){return dH.getTimeOrigin}});Object.defineProperty(Ja,"hrTime",{enumerable:!0,get:function(){return dH.hrTime}});Object.defineProperty(Ja,"hrTimeDuration",{enumerable:!0,get:function(){return dH.hrTimeDuration}});Object.defineProperty(Ja,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return dH.hrTimeToMicroseconds}});Object.defineProperty(Ja,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return dH.hrTimeToMilliseconds}});Object.defineProperty(Ja,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return dH.hrTimeToNanoseconds}});Object.defineProperty(Ja,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return dH.hrTimeToTimeStamp}});Object.defineProperty(Ja,"isTimeInput",{enumerable:!0,get:function(){return dH.isTimeInput}});Object.defineProperty(Ja,"isTimeInputHrTime",{enumerable:!0,get:function(){return dH.isTimeInputHrTime}});Object.defineProperty(Ja,"millisToHrTime",{enumerable:!0,get:function(){return dH.millisToHrTime}});Object.defineProperty(Ja,"timeInputToHrTime",{enumerable:!0,get:function(){return dH.timeInputToHrTime}});var IFc=zLr();Object.defineProperty(Ja,"hexToBinary",{enumerable:!0,get:function(){return IFc.hexToBinary}});var hFc=R4i();Object.defineProperty(Ja,"ExportResultCode",{enumerable:!0,get:function(){return hFc.ExportResultCode}});var Ivt=OLr();Ja.baggageUtils={getKeyPairs:Ivt.getKeyPairs,serializeKeyPairs:Ivt.serializeKeyPairs,parseKeyPairsIntoRecord:Ivt.parseKeyPairsIntoRecord,parsePairKeyValue:Ivt.parsePairKeyValue};var zce=t9r();Object.defineProperty(Ja,"RandomIdGenerator",{enumerable:!0,get:function(){return zce.RandomIdGenerator}});Object.defineProperty(Ja,"SDK_INFO",{enumerable:!0,get:function(){return zce.SDK_INFO}});Object.defineProperty(Ja,"_globalThis",{enumerable:!0,get:function(){return zce._globalThis}});Object.defineProperty(Ja,"getEnv",{enumerable:!0,get:function(){return zce.getEnv}});Object.defineProperty(Ja,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return zce.getEnvWithoutDefaults}});Object.defineProperty(Ja,"hexToBase64",{enumerable:!0,get:function(){return zce.hexToBase64}});Object.defineProperty(Ja,"otperformance",{enumerable:!0,get:function(){return zce.otperformance}});Object.defineProperty(Ja,"unrefTimer",{enumerable:!0,get:function(){return zce.unrefTimer}});var mFc=D4i();Object.defineProperty(Ja,"CompositePropagator",{enumerable:!0,get:function(){return mFc.CompositePropagator}});var hvt=V4i();Object.defineProperty(Ja,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return hvt.TRACE_PARENT_HEADER}});Object.defineProperty(Ja,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return hvt.TRACE_STATE_HEADER}});Object.defineProperty(Ja,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return hvt.W3CTraceContextPropagator}});Object.defineProperty(Ja,"parseTraceParent",{enumerable:!0,get:function(){return hvt.parseTraceParent}});var mvt=P4i();Object.defineProperty(Ja,"RPCType",{enumerable:!0,get:function(){return mvt.RPCType}});Object.defineProperty(Ja,"deleteRPCMetadata",{enumerable:!0,get:function(){return mvt.deleteRPCMetadata}});Object.defineProperty(Ja,"getRPCMetadata",{enumerable:!0,get:function(){return mvt.getRPCMetadata}});Object.defineProperty(Ja,"setRPCMetadata",{enumerable:!0,get:function(){return mvt.setRPCMetadata}});var CFc=A9r();Object.defineProperty(Ja,"AlwaysOffSampler",{enumerable:!0,get:function(){return CFc.AlwaysOffSampler}});var _Fc=p9r();Object.defineProperty(Ja,"AlwaysOnSampler",{enumerable:!0,get:function(){return _Fc.AlwaysOnSampler}});var yFc=O4i();Object.defineProperty(Ja,"ParentBasedSampler",{enumerable:!0,get:function(){return yFc.ParentBasedSampler}});var bFc=M4i();Object.defineProperty(Ja,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return bFc.TraceIdRatioBasedSampler}});var E9r=xKe();Object.defineProperty(Ja,"isTracingSuppressed",{enumerable:!0,get:function(){return E9r.isTracingSuppressed}});Object.defineProperty(Ja,"suppressTracing",{enumerable:!0,get:function(){return E9r.suppressTracing}});Object.defineProperty(Ja,"unsuppressTracing",{enumerable:!0,get:function(){return E9r.unsuppressTracing}});var EFc=c9r();Object.defineProperty(Ja,"TraceState",{enumerable:!0,get:function(){return EFc.TraceState}});var PDe=KLr();Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return PDe.DEFAULT_ENVIRONMENT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(Ja,"parseEnvironment",{enumerable:!0,get:function(){return PDe.parseEnvironment}});var SFc=q4i();Object.defineProperty(Ja,"merge",{enumerable:!0,get:function(){return SFc.merge}});var vFc=ULr();Object.defineProperty(Ja,"TracesSamplerValues",{enumerable:!0,get:function(){return vFc.TracesSamplerValues}});var cJi=$4i();Object.defineProperty(Ja,"TimeoutError",{enumerable:!0,get:function(){return cJi.TimeoutError}});Object.defineProperty(Ja,"callWithTimeout",{enumerable:!0,get:function(){return cJi.callWithTimeout}});var lJi=tJi();Object.defineProperty(Ja,"isUrlIgnored",{enumerable:!0,get:function(){return lJi.isUrlIgnored}});Object.defineProperty(Ja,"urlMatches",{enumerable:!0,get:function(){return lJi.urlMatches}});var BFc=rJi();Object.defineProperty(Ja,"isWrapped",{enumerable:!0,get:function(){return BFc.isWrapped}});var wFc=iJi();Object.defineProperty(Ja,"BindOnceFuture",{enumerable:!0,get:function(){return wFc.BindOnceFuture}});var TFc=$Lr();Object.defineProperty(Ja,"VERSION",{enumerable:!0,get:function(){return TFc.VERSION}});var RFc=oJi();Ja.internal={_export:RFc._export}});var AJi=H((TMu,v9r)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));v9r.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};v9r.exports=e}});var _Ji=H((RMu,CJi)=>{"use strict";var sw=wt("fs"),NFc=wt("events"),DFc=wt("util").inherits,dJi=wt("path"),w9r=AJi(),_vt=100,yvt=Buffer.allocUnsafe(0),kFc=16*1024,pJi="buffer",fJi="utf8";function IJi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,l){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let A=t._reopening;t.fd=l,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():A&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&sw.mkdirSync(dJi.dirname(e),{recursive:!0});let o=sw.openSync(e,n,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?sw.mkdir(dJi.dirname(e),{recursive:!0},o=>{if(o)return r(o);sw.open(e,n,a,r)}):sw.open(e,n,a,r)}function C4(e){if(!(this instanceof C4))return new C4(e);let{fd:t,dest:r,minLength:n,maxLength:a,maxWrite:o,sync:l,append:A=!0,mkdir:f,retryEAGAIN:I,fsync:C,contentMode:b,mode:E}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=a||0,this.maxWrite=o||kFc,this.sync=l||!1,this.writable=!0,this._fsync=C||!1,this.append=A||!1,this.mode=E,this.retryEAGAIN=I||(()=>!0),this.mkdir=f||!1;let N,B;if(b===pJi)this._writingBuf=yvt,this.write=FFc,this.flush=LFc,this.flushSync=PFc,this._actualWrite=OFc,N=()=>sw.writeSync(this.fd,this._writingBuf),B=()=>sw.write(this.fd,this._writingBuf,this.release);else if(b===void 0||b===fJi)this._writingBuf="",this.write=GFc,this.flush=ZFc,this.flushSync=VFc,this._actualWrite=WFc,N=()=>sw.writeSync(this.fd,this._writingBuf,"utf8"),B=()=>sw.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${fJi}" and "${pJi}", but passed ${b}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")IJi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(F,Q)=>{if(F){if((F.code==="EAGAIN"||F.code==="EBUSY")&&this.retryEAGAIN(F,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{w9r(_vt),this.release(void 0,0)}catch(ne){this.release(ne)}else setTimeout(B,_vt);else this._writing=!1,this.emit("error",F);return}this.emit("write",Q);let X=B9r(this._writingBuf,this._len,Q);if(this._len=X.len,this._writingBuf=X.writingBuf,this._writingBuf.length){if(!this.sync){B();return}try{do{let ne=N(),ce=B9r(this._writingBuf,this._len,ne);this._len=ce.len,this._writingBuf=ce.writingBuf}while(this._writingBuf.length)}catch(ne){this.release(ne);return}}this._fsync&&sw.fsyncSync(this.fd);let ae=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):ae>this.minLength?this._actualWrite():this._ending?ae>0?this._actualWrite():(this._writing=!1,bvt(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(xFc,this)):this.emit("drain"))},this.on("newListener",function(F){F==="drain"&&(this._asyncDrainScheduled=!1)})}function B9r(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function xFc(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}DFc(C4,NFc);function hJi(e,t){return e.length===0?yvt:e.length===1?e[0]:Buffer.concat(e,t)}function GFc(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):sw.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function ZFc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&mJi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function LFc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&mJi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}C4.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&sw.close(t,r=>{if(r)return this.emit("error",r)})}),IJi(this.file,this)};C4.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():bvt(this)))};function VFc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=sw.writeSync(this.fd,e,"utf8"),r=B9r(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;w9r(_vt)}}try{sw.fsyncSync(this.fd)}catch{}}function PFc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=yvt);let e=yvt;for(;this._bufs.length||e.length;){e.length<=0&&(e=hJi(this._bufs[0],this._lens[0]));try{let t=sw.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;w9r(_vt)}}}C4.prototype.destroy=function(){this.destroyed||bvt(this)};function WFc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=sw.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else sw.write(this.fd,this._writingBuf,"utf8",e)}function OFc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:hJi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=sw.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else sw.write(this.fd,this._writingBuf,e)}function bvt(e){if(e.fd===-1){e.once("ready",bvt.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],sw.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?sw.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}C4.SonicBoom=C4;C4.default=C4;CJi.exports=C4});var BJi=H((NMu,vJi)=>{"use strict";var _4={exit:[],beforeExit:[]},yJi={exit:YFc,beforeExit:QFc},WDe;function MFc(){WDe===void 0&&(WDe=new FinalizationRegistry(XFc))}function HFc(e){_4[e].length>0||process.on(e,yJi[e])}function bJi(e){_4[e].length>0||(process.removeListener(e,yJi[e]),_4.exit.length===0&&_4.beforeExit.length===0&&(WDe=void 0))}function YFc(){EJi("exit")}function QFc(){EJi("beforeExit")}function EJi(e){for(let t of _4[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}_4[e]=[]}function XFc(e){for(let t of["exit","beforeExit"]){let r=_4[t].indexOf(e);_4[t].splice(r,r+1),bJi(t)}}function SJi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");HFc(e);let n=new WeakRef(t);n.fn=r,MFc(),WDe.register(t,n),_4[e].push(n)}function JFc(e,t){SJi("exit",e,t)}function UFc(e,t){SJi("beforeExit",e,t)}function KFc(e){if(WDe!==void 0){WDe.unregister(e);for(let t of["exit","beforeExit"])_4[t]=_4[t].filter(r=>{let n=r.deref();return n&&n!==e}),bJi(t)}}vJi.exports={register:JFc,registerBeforeExit:UFc,unregister:KFc}});var ZJi=H((k9r,x9r)=>{(function(e,t){typeof k9r=="object"&&typeof x9r<"u"?x9r.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})(k9r,function(){"use strict";function e(Se,De){var k=Se==null?null:typeof Symbol<"u"&&Se[Symbol.iterator]||Se["@@iterator"];if(k!=null){var et,ct,Me,je,St=[],At=!0,Yt=!1;try{if(Me=(k=k.call(Se)).next,De===0){if(Object(k)!==k)return;At=!1}else for(;!(At=(et=Me.call(k)).done)&&(St.push(et.value),St.length!==De);At=!0);}catch(Tr){Yt=!0,ct=Tr}finally{try{if(!At&&k.return!=null&&(je=k.return(),Object(je)!==je))return}finally{if(Yt)throw ct}}return St}}function t(Se,De){return a(Se)||e(Se,De)||l(Se,De)||I()}function r(Se){return n(Se)||o(Se)||l(Se)||f()}function n(Se){if(Array.isArray(Se))return A(Se)}function a(Se){if(Array.isArray(Se))return Se}function o(Se){if(typeof Symbol<"u"&&Se[Symbol.iterator]!=null||Se["@@iterator"]!=null)return Array.from(Se)}function l(Se,De){if(Se){if(typeof Se=="string")return A(Se,De);var k=Object.prototype.toString.call(Se).slice(8,-1);if(k==="Object"&&Se.constructor&&(k=Se.constructor.name),k==="Map"||k==="Set")return Array.from(Se);if(k==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(k))return A(Se,De)}}function A(Se,De){(De==null||De>Se.length)&&(De=Se.length);for(var k=0,et=new Array(De);kt.trim()).join(" ")};K9i.O=function(e){return this.inspectOpts.colors=this.useColors,n2t.inspect(e,this.inspectOpts)}});var JFr=H((bPu,XFr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?XFr.exports=U9i():XFr.exports=j9i()});var q9i=H((EPu,z9i)=>{var{Transform:nyc}=wt("stream"),UFr=class extends nyc{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,n){n(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};z9i.exports=UFr});var tVi=H((vPu,eVi)=>{var{EventEmitter:iyc}=wt("events"),Bj=JFr()("localtunnel:client"),KFr=wt("fs"),$9i=wt("net"),syc=wt("tls"),oyc=q9i();eVi.exports=class extends iyc{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,n=t.remote_port,a=t.local_host||"localhost",o=t.local_port,l=t.local_https?"https":"http",A=t.allow_invalid_cert;Bj("establishing tunnel %s://%s:%s <> %s:%s",l,a,o,r,n);let f=$9i.connect({host:r,port:n});f.setKeepAlive(!0),f.on("error",C=>{Bj("got remote connection error",C.message),C.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${n} (check your firewall settings)`)),f.end()});let I=()=>{if(f.destroyed){Bj("remote destroyed"),this.emit("dead");return}Bj("connecting locally to %s://%s:%d",l,a,o),f.pause(),A&&Bj("allowing invalid certificates");let C=()=>A?{rejectUnauthorized:!1}:{cert:KFr.readFileSync(t.local_cert),key:KFr.readFileSync(t.local_key),ca:t.local_ca?[KFr.readFileSync(t.local_ca)]:void 0},b=t.local_https?syc.connect({host:a,port:o,...C()}):$9i.connect({host:a,port:o}),E=()=>{Bj("remote close"),this.emit("dead"),b.end()};f.once("close",E),b.once("error",N=>{if(Bj("local error %s",N.message),b.end(),f.removeListener("close",E),N.code!=="ECONNREFUSED")return f.end();setTimeout(I,1e3)}),b.once("connect",()=>{Bj("connected locally"),f.resume();let N=f;t.local_host&&(Bj("transform Host header to %s",t.local_host),N=f.pipe(new oyc({host:t.local_host}))),N.pipe(b).pipe(f),b.once("close",B=>{Bj("local connection closed [%s]",B)})})};f.on("data",C=>{let b=C.toString().match(/^(\w+) (\S+)/);b&&this.emit("request",{method:b[1],path:b[2]})}),f.once("connect",()=>{this.emit("open",f),I()})}}});var iVi=H((wPu,nVi)=>{var{parse:ayc}=wt("url"),{EventEmitter:rVi}=wt("events"),cyc=Y9i(),aKe=JFr()("localtunnel:client"),lyc=tVi();nVi.exports=class extends rVi{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:n,port:a,url:o,cached_url:l,max_conn_count:A}=t,{host:f,port:I,local_host:C}=this.opts,{local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}=this.opts;return{name:r,url:o,cached_url:l,max_conn:A||1,remote_host:ayc(f).hostname,remote_ip:n,remote_port:a,local_port:I,local_host:C,local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}}_init(t){let r=this.opts,n=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,l=r.subdomain,A=o+(l||"?new");(function f(){cyc.get(A,a).then(I=>{let C=I.data;if(aKe("got tunnel information",I.data),I.status!==200){let b=new Error(C&&C.message||"localtunnel server returned an error, please try again");return t(b)}t(null,n(C))}).catch(I=>(aKe(`tunnel server offline: ${I.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(rVi.defaultMaxListeners||10)),this.tunnelCluster=new lyc(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",n=>{aKe("got socket error",n.message),this.emit("error",n)});let r=0;this.tunnelCluster.on("open",n=>{r++,aKe("tunnel open [total: %d]",r);let a=()=>{n.destroy()};if(this.closed)return a();this.once("close",a),n.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,aKe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n{if(r)return t(r);this.clientId=n.name,this.url=n.url,n.cached_url&&(this.cachedUrl=n.cached_url),this._establish(n),t()})}close(){this.closed=!0,this.emit("close")}}});var oVi=H((TPu,sVi)=>{var uyc=iVi();sVi.exports=function(t,r,n){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:n,l=new uyc(a);return o?(l.open(A=>A?o(A):o(null,l)),l):new Promise((A,f)=>l.open(I=>I?f(I):A(l)))}});var NVi=H(RVi=>{"use strict";Object.defineProperty(RVi,"__esModule",{value:!0})});var kVi=H(DVi=>{"use strict";Object.defineProperty(DVi,"__esModule",{value:!0})});var xVi=H(dKe=>{"use strict";Object.defineProperty(dKe,"__esModule",{value:!0});dKe.SeverityNumber=void 0;var kyc;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(kyc=dKe.SeverityNumber||(dKe.SeverityNumber={}))});var FVi=H(GVi=>{"use strict";Object.defineProperty(GVi,"__esModule",{value:!0})});var $Fr=H(_De=>{"use strict";Object.defineProperty(_De,"__esModule",{value:!0});_De.NOOP_LOGGER=_De.NoopLogger=void 0;var g2t=class{emit(t){}};_De.NoopLogger=g2t;_De.NOOP_LOGGER=new g2t});var eZr=H(yDe=>{"use strict";Object.defineProperty(yDe,"__esModule",{value:!0});yDe.NOOP_LOGGER_PROVIDER=yDe.NoopLoggerProvider=void 0;var xyc=$Fr(),A2t=class{getLogger(t,r,n){return new xyc.NoopLogger}};yDe.NoopLoggerProvider=A2t;yDe.NOOP_LOGGER_PROVIDER=new A2t});var ZVi=H(d2t=>{"use strict";Object.defineProperty(d2t,"__esModule",{value:!0});d2t._globalThis=void 0;d2t._globalThis=typeof globalThis=="object"?globalThis:global});var LVi=H(RCe=>{"use strict";var Gyc=RCe&&RCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Fyc=RCe&&RCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Gyc(t,e,r)};Object.defineProperty(RCe,"__esModule",{value:!0});Fyc(ZVi(),RCe)});var VVi=H(NCe=>{"use strict";var Zyc=NCe&&NCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Lyc=NCe&&NCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Zyc(t,e,r)};Object.defineProperty(NCe,"__esModule",{value:!0});Lyc(LVi(),NCe)});var PVi=H(wj=>{"use strict";Object.defineProperty(wj,"__esModule",{value:!0});wj.API_BACKWARDS_COMPATIBILITY_VERSION=wj.makeGetter=wj._global=wj.GLOBAL_LOGS_API_KEY=void 0;var Vyc=VVi();wj.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");wj._global=Vyc._globalThis;function Pyc(e,t,r){return n=>n===e?t:r}wj.makeGetter=Pyc;wj.API_BACKWARDS_COMPATIBILITY_VERSION=1});var OVi=H(p2t=>{"use strict";Object.defineProperty(p2t,"__esModule",{value:!0});p2t.LogsAPI=void 0;var gH=PVi(),WVi=eZr(),tZr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return gH._global[gH.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(gH._global[gH.GLOBAL_LOGS_API_KEY]=(0,gH.makeGetter)(gH.API_BACKWARDS_COMPATIBILITY_VERSION,t,WVi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=gH._global[gH.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(gH._global,gH.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:WVi.NOOP_LOGGER_PROVIDER}getLogger(t,r,n){return this.getLoggerProvider().getLogger(t,r,n)}disable(){delete gH._global[gH.GLOBAL_LOGS_API_KEY]}};p2t.LogsAPI=tZr});var EDe=H(wV=>{"use strict";var Wyc=wV&&wV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bDe=wV&&wV.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Wyc(t,e,r)};Object.defineProperty(wV,"__esModule",{value:!0});wV.logs=void 0;bDe(NVi(),wV);bDe(kVi(),wV);bDe(xVi(),wV);bDe(FVi(),wV);bDe($Fr(),wV);bDe(eZr(),wV);var Oyc=OVi();wV.logs=Oyc.LogsAPI.getInstance()});var MVi,HVi=bc(()=>{MVi=typeof globalThis=="object"?globalThis:global});var YVi=bc(()=>{HVi()});var QVi=bc(()=>{YVi()});var Kee,rZr=bc(()=>{Kee="1.9.0"});function Myc(e){var t=new Set([e]),r=new Set,n=e.match(XVi);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(f){return f===e};function o(A){return r.add(A),!1}function l(A){return t.add(A),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var I=f.match(XVi);if(!I)return o(f);var C={major:+I[1],minor:+I[2],patch:+I[3],prerelease:I[4]};return C.prerelease!=null||a.major!==C.major?o(f):a.major===0?a.minor===C.minor&&a.patch<=C.patch?l(f):o(f):a.minor<=C.minor?l(f):o(f)}}var XVi,JVi,UVi=bc(()=>{rZr();XVi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;JVi=Myc(Kee)});function Tj(e,t,r,n){var a;n===void 0&&(n=!1);var o=fKe[pKe]=(a=fKe[pKe])!==null&&a!==void 0?a:{version:Kee};if(!n&&o[e]){var l=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(l.stack||l.message),!1}if(o.version!==Kee){var l=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+Kee);return r.error(l.stack||l.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+Kee+"."),!0}function bO(e){var t,r,n=(t=fKe[pKe])===null||t===void 0?void 0:t.version;if(!(!n||!JVi(n)))return(r=fKe[pKe])===null||r===void 0?void 0:r[e]}function Rj(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Kee+".");var r=fKe[pKe];r&&delete r[e]}var Hyc,pKe,fKe,DCe=bc(()=>{QVi();rZr();UVi();Hyc=Kee.split(".")[0],pKe=Symbol.for("opentelemetry.js.api."+Hyc),fKe=MVi});function IKe(e,t,r){var n=bO("diag");if(n)return r.unshift(t),n[e].apply(n,Qyc([],Yyc(r),!1))}var Yyc,Qyc,KVi,jVi=bc(()=>{DCe();Yyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Qyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(jk||(jk={}))});function zVi(e,t){ejk.ALL&&(e=jk.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",jk.ERROR),warn:r("warn",jk.WARN),info:r("info",jk.INFO),debug:r("debug",jk.DEBUG),verbose:r("verbose",jk.VERBOSE)}}var qVi=bc(()=>{f2t()});var Xyc,Jyc,Uyc,VG,kCe=bc(()=>{jVi();qVi();f2t();DCe();Xyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Jyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n";C.warn("Current logger will be overwritten from "+E),b.warn("Current logger will overwrite one already registered from "+E)}return Tj("diag",b,r,!0)};r.setLogger=n,r.disable=function(){Rj(Uyc,r)},r.createComponentLogger=function(a){return new KVi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var Kyc,jyc,$Vi,ePi=bc(()=>{Kyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},jyc=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},$Vi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=Kyc(t,2),n=r[0],a=r[1];return[n,a]})},e.prototype.setEntry=function(t,r){var n=new e(this._entries);return n._entries.set(t,r),n},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,n=[],a=0;a{tPi=Symbol("BaggageEntryMetadata")});function nPi(e){return e===void 0&&(e={}),new $Vi(new Map(Object.entries(e)))}function iPi(e){return typeof e!="string"&&(zyc.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:tPi,toString:function(){return e}}}var zyc,nZr=bc(()=>{kCe();ePi();rPi();zyc=VG.instance()});function SDe(e){return Symbol.for(e)}var qyc,I2t,hKe=bc(()=>{qyc=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e}(),I2t=new qyc});var iZr,sPi,oPi=bc(()=>{iZr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],sPi=function(){function e(){function t(n){return function(){for(var a=[],o=0;o{xCe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),$yc=function(){function e(){}return e.prototype.createGauge=function(t,r){return cbc},e.prototype.createHistogram=function(t,r){return lbc},e.prototype.createCounter=function(t,r){return abc},e.prototype.createUpDownCounter=function(t,r){return ubc},e.prototype.createObservableGauge=function(t,r){return Abc},e.prototype.createObservableCounter=function(t,r){return gbc},e.prototype.createObservableUpDownCounter=function(t,r){return dbc},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),h2t=function(){function e(){}return e}(),ebc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(h2t),tbc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(h2t),rbc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(h2t),nbc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(h2t),sZr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),ibc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(sZr),sbc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(sZr),obc=function(e){xCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(sZr),oZr=new $yc,abc=new ebc,cbc=new rbc,lbc=new nbc,ubc=new tbc,gbc=new ibc,Abc=new sbc,dbc=new obc});var m2t,cPi=bc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(m2t||(m2t={}))});var C2t,_2t,cZr=bc(()=>{C2t={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},_2t={set:function(e,t,r){e!=null&&(e[t]=r)}}});var pbc,fbc,lPi,uPi=bc(()=>{hKe();pbc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},fbc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{uPi();DCe();kCe();Ibc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},hbc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(vDe||(vDe={}))});var CKe,_Ke,y2t,b2t=bc(()=>{uZr();CKe="0000000000000000",_Ke="00000000000000000000000000000000",y2t={traceId:_Ke,spanId:CKe,traceFlags:vDe.NONE}});var Mce,E2t=bc(()=>{b2t();Mce=function(){function e(t){t===void 0&&(t=y2t),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function S2t(e){return e.getValue(gZr)||void 0}function gPi(){return S2t(Oce.getInstance().active())}function yKe(e,t){return e.setValue(gZr,t)}function APi(e){return e.deleteValue(gZr)}function dPi(e,t){return yKe(e,new Mce(t))}function v2t(e){var t;return(t=S2t(e))===null||t===void 0?void 0:t.spanContext()}var gZr,AZr=bc(()=>{hKe();E2t();mKe();gZr=SDe("OpenTelemetry Context Key SPAN")});function dZr(e){return Cbc.test(e)&&e!==_Ke}function pZr(e){return _bc.test(e)&&e!==CKe}function BDe(e){return dZr(e.traceId)&&pZr(e.spanId)}function pPi(e){return new Mce(e)}var Cbc,_bc,B2t=bc(()=>{b2t();E2t();Cbc=/^([0-9a-f]{32})$/i,_bc=/^[0-9a-f]{16}$/i});function ybc(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var fZr,w2t,IZr=bc(()=>{mKe();AZr();E2t();B2t();fZr=Oce.getInstance(),w2t=function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=fZr.active());var a=!!r?.root;if(a)return new Mce;var o=n&&v2t(n);return ybc(o)&&BDe(o)?new Mce(o):new Mce},e.prototype.startActiveSpan=function(t,r,n,a){var o,l,A;if(!(arguments.length<2)){arguments.length===2?A=r:arguments.length===3?(o=r,A=n):(o=r,l=n,A=a);var f=l??fZr.active(),I=this.startSpan(t,o,f),C=yKe(f,I);return fZr.with(C,A,void 0,I)}},e}()});var bbc,T2t,hZr=bc(()=>{IZr();bbc=new w2t,T2t=function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):bbc},e}()});var fPi,IPi=bc(()=>{IZr();fPi=function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new w2t},e}()});var Ebc,bKe,mZr=bc(()=>{hZr();IPi();Ebc=new fPi,bKe=function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new T2t(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:Ebc},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e}()});var R2t,hPi=bc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(R2t||(R2t={}))});var N2t,mPi=bc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(N2t||(N2t={}))});var D2t,CPi=bc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(D2t||(D2t={}))});function _Pi(e){return Bbc.test(e)}function yPi(e){return wbc.test(e)&&!Tbc.test(e)}var CZr,Sbc,vbc,Bbc,wbc,Tbc,bPi=bc(()=>{CZr="[_0-9a-z-*/]",Sbc="[a-z]"+CZr+"{0,255}",vbc="[a-z0-9]"+CZr+"{0,240}@[a-z]"+CZr+"{0,13}",Bbc=new RegExp("^(?:"+Sbc+"|"+vbc+")$"),wbc=/^[ -~]{0,255}[!-~]$/,Tbc=/,|=/});var EPi,Rbc,SPi,vPi,BPi,wPi=bc(()=>{bPi();EPi=32,Rbc=512,SPi=",",vPi="=",BPi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,n){return r.push(n+vPi+t.get(n)),r},[]).join(SPi)},e.prototype._parse=function(t){t.length>Rbc||(this._internalState=t.split(SPi).reverse().reduce(function(r,n){var a=n.trim(),o=a.indexOf(vPi);if(o!==-1){var l=a.slice(0,o),A=a.slice(o+1,n.length);_Pi(l)&&yPi(A)&&r.set(l,A)}return r},new Map),this._internalState.size>EPi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,EPi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function TPi(e){return new BPi(e)}var RPi=bc(()=>{wPi()});var _Zr,NPi=bc(()=>{mKe();_Zr=Oce.getInstance()});var yZr,DPi=bc(()=>{kCe();yZr=VG.instance()});var Nbc,kPi,xPi=bc(()=>{aZr();Nbc=function(){function e(){}return e.prototype.getMeter=function(t,r,n){return oZr},e}(),kPi=new Nbc});var bZr,GPi,FPi=bc(()=>{xPi();DCe();kCe();bZr="metrics",GPi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return Tj(bZr,t,VG.instance())},e.prototype.getMeterProvider=function(){return bO(bZr)||kPi},e.prototype.getMeter=function(t,r,n){return this.getMeterProvider().getMeter(t,r,n)},e.prototype.disable=function(){Rj(bZr,VG.instance())},e}()});var EZr,ZPi=bc(()=>{FPi();EZr=GPi.getInstance()});var LPi,VPi=bc(()=>{LPi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function vZr(e){return e.getValue(SZr)||void 0}function PPi(){return vZr(Oce.getInstance().active())}function WPi(e,t){return e.setValue(SZr,t)}function OPi(e){return e.deleteValue(SZr)}var SZr,MPi=bc(()=>{mKe();hKe();SZr=SDe("OpenTelemetry Baggage Key")});var BZr,Dbc,HPi,YPi=bc(()=>{DCe();VPi();cZr();MPi();nZr();kCe();BZr="propagation",Dbc=new LPi,HPi=function(){function e(){this.createBaggage=nPi,this.getBaggage=vZr,this.getActiveBaggage=PPi,this.setBaggage=WPi,this.deleteBaggage=OPi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return Tj(BZr,t,VG.instance())},e.prototype.inject=function(t,r,n){return n===void 0&&(n=_2t),this._getGlobalPropagator().inject(t,r,n)},e.prototype.extract=function(t,r,n){return n===void 0&&(n=C2t),this._getGlobalPropagator().extract(t,r,n)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){Rj(BZr,VG.instance())},e.prototype._getGlobalPropagator=function(){return bO(BZr)||Dbc},e}()});var wZr,QPi=bc(()=>{YPi();wZr=HPi.getInstance()});var TZr,XPi,JPi=bc(()=>{DCe();mZr();B2t();AZr();kCe();TZr="trace",XPi=function(){function e(){this._proxyTracerProvider=new bKe,this.wrapSpanContext=pPi,this.isSpanContextValid=BDe,this.deleteSpan=APi,this.getSpan=S2t,this.getActiveSpan=gPi,this.getSpanContext=v2t,this.setSpan=yKe,this.setSpanContext=dPi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=Tj(TZr,this._proxyTracerProvider,VG.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return bO(TZr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){Rj(TZr,VG.instance()),this._proxyTracerProvider=new bKe},e}()});var RZr,UPi=bc(()=>{JPi();RZr=XPi.getInstance()});var xI={};sI(xI,{DiagConsoleLogger:()=>sPi,DiagLogLevel:()=>jk,INVALID_SPANID:()=>CKe,INVALID_SPAN_CONTEXT:()=>y2t,INVALID_TRACEID:()=>_Ke,ProxyTracer:()=>T2t,ProxyTracerProvider:()=>bKe,ROOT_CONTEXT:()=>I2t,SamplingDecision:()=>R2t,SpanKind:()=>N2t,SpanStatusCode:()=>D2t,TraceFlags:()=>vDe,ValueType:()=>m2t,baggageEntryMetadataFromString:()=>iPi,context:()=>_Zr,createContextKey:()=>SDe,createNoopMeter:()=>aPi,createTraceState:()=>TPi,default:()=>kbc,defaultTextMapGetter:()=>C2t,defaultTextMapSetter:()=>_2t,diag:()=>yZr,isSpanContextValid:()=>BDe,isValidSpanId:()=>pZr,isValidTraceId:()=>dZr,metrics:()=>EZr,propagation:()=>wZr,trace:()=>RZr});var kbc,GI=bc(()=>{nZr();hKe();oPi();f2t();aZr();cPi();cZr();hZr();mZr();hPi();mPi();CPi();uZr();RPi();B2t();b2t();NPi();DPi();ZPi();QPi();UPi();kbc={context:_Zr,diag:yZr,metrics:EZr,propagation:wZr,trace:RZr}});var KPi=H(K0=>{"use strict";Object.defineProperty(K0,"__esModule",{value:!0});K0.MessageTypeValues=K0.RpcGrpcStatusCodeValues=K0.MessagingOperationValues=K0.MessagingDestinationKindValues=K0.HttpFlavorValues=K0.NetHostConnectionSubtypeValues=K0.NetHostConnectionTypeValues=K0.NetTransportValues=K0.FaasInvokedProviderValues=K0.FaasDocumentOperationValues=K0.FaasTriggerValues=K0.DbCassandraConsistencyLevelValues=K0.DbSystemValues=K0.SemanticAttributes=void 0;K0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};K0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};K0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};K0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};K0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};K0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};K0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};K0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};K0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};K0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};K0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};K0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};K0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};K0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var jPi=H(GCe=>{"use strict";var xbc=GCe&&GCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Gbc=GCe&&GCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&xbc(t,e,r)};Object.defineProperty(GCe,"__esModule",{value:!0});Gbc(KPi(),GCe)});var zPi=H(PG=>{"use strict";Object.defineProperty(PG,"__esModule",{value:!0});PG.TelemetrySdkLanguageValues=PG.OsTypeValues=PG.HostArchValues=PG.AwsEcsLaunchtypeValues=PG.CloudPlatformValues=PG.CloudProviderValues=PG.SemanticResourceAttributes=void 0;PG.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};PG.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};PG.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};PG.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};PG.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};PG.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};PG.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var qPi=H(FCe=>{"use strict";var Fbc=FCe&&FCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Zbc=FCe&&FCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Fbc(t,e,r)};Object.defineProperty(FCe,"__esModule",{value:!0});Zbc(zPi(),FCe)});var Yce=H(Hce=>{"use strict";var Lbc=Hce&&Hce.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Pi=Hce&&Hce.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Lbc(t,e,r)};Object.defineProperty(Hce,"__esModule",{value:!0});$Pi(jPi(),Hce);$Pi(qPi(),Hce)});var EKe=H(Qce=>{"use strict";Object.defineProperty(Qce,"__esModule",{value:!0});Qce.isTracingSuppressed=Qce.unsuppressTracing=Qce.suppressTracing=void 0;var Vbc=(GI(),vi(xI)),NZr=(0,Vbc.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function Pbc(e){return e.setValue(NZr,!0)}Qce.suppressTracing=Pbc;function Wbc(e){return e.deleteValue(NZr)}Qce.unsuppressTracing=Wbc;function Obc(e){return e.getValue(NZr)===!0}Qce.isTracingSuppressed=Obc});var DZr=H(WG=>{"use strict";Object.defineProperty(WG,"__esModule",{value:!0});WG.BAGGAGE_MAX_TOTAL_LENGTH=WG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=WG.BAGGAGE_MAX_NAME_VALUE_PAIRS=WG.BAGGAGE_HEADER=WG.BAGGAGE_ITEMS_SEPARATOR=WG.BAGGAGE_PROPERTIES_SEPARATOR=WG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;WG.BAGGAGE_KEY_PAIR_SEPARATOR="=";WG.BAGGAGE_PROPERTIES_SEPARATOR=";";WG.BAGGAGE_ITEMS_SEPARATOR=",";WG.BAGGAGE_HEADER="baggage";WG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;WG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;WG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var kZr=H(Nj=>{"use strict";Object.defineProperty(Nj,"__esModule",{value:!0});Nj.parseKeyPairsIntoRecord=Nj.parsePairKeyValue=Nj.getKeyPairs=Nj.serializeKeyPairs=void 0;var Mbc=(GI(),vi(xI)),ZCe=DZr();function Hbc(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?ZCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>ZCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}Nj.serializeKeyPairs=Hbc;function Ybc(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=ZCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}Nj.getKeyPairs=Ybc;function eWi(e){let t=e.split(ZCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(ZCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,Mbc.baggageEntryMetadataFromString)(t.join(ZCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}Nj.parsePairKeyValue=eWi;function Qbc(e){return typeof e!="string"||e.length===0?{}:e.split(ZCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>eWi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}Nj.parseKeyPairsIntoRecord=Qbc});var tWi=H(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t.W3CBaggagePropagator=void 0;var xZr=(GI(),vi(xI)),Xbc=EKe(),LCe=DZr(),GZr=kZr(),FZr=class{inject(t,r,n){let a=xZr.propagation.getBaggage(t);if(!a||(0,Xbc.isTracingSuppressed)(t))return;let o=(0,GZr.getKeyPairs)(a).filter(A=>A.length<=LCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,LCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,GZr.serializeKeyPairs)(o);l.length>0&&n.set(r,LCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,LCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(LCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(LCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,GZr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:xZr.propagation.setBaggage(t,xZr.propagation.createBaggage(l))}fields(){return[LCe.BAGGAGE_HEADER]}};k2t.W3CBaggagePropagator=FZr});var rWi=H(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t.AnchoredClock=void 0;var ZZr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};x2t.AnchoredClock=ZZr});var aWi=H(Xce=>{"use strict";Object.defineProperty(Xce,"__esModule",{value:!0});Xce.isAttributeValue=Xce.isAttributeKey=Xce.sanitizeAttributes=void 0;var nWi=(GI(),vi(xI));function Jbc(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!iWi(r)){nWi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!sWi(n)){nWi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Xce.sanitizeAttributes=Jbc;function iWi(e){return typeof e=="string"&&e.length>0}Xce.isAttributeKey=iWi;function sWi(e){return e==null?!0:Array.isArray(e)?Ubc(e):oWi(e)}Xce.isAttributeValue=sWi;function Ubc(e){let t;for(let r of e)if(r!=null){if(!t){if(oWi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function oWi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var LZr=H(G2t=>{"use strict";Object.defineProperty(G2t,"__esModule",{value:!0});G2t.loggingErrorHandler=void 0;var Kbc=(GI(),vi(xI));function jbc(){return e=>{Kbc.diag.error(zbc(e))}}G2t.loggingErrorHandler=jbc;function zbc(e){return typeof e=="string"?e:JSON.stringify(qbc(e))}function qbc(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var VZr=H(wDe=>{"use strict";Object.defineProperty(wDe,"__esModule",{value:!0});wDe.globalErrorHandler=wDe.setGlobalErrorHandler=void 0;var $bc=LZr(),cWi=(0,$bc.loggingErrorHandler)();function eEc(e){cWi=e}wDe.setGlobalErrorHandler=eEc;function tEc(e){try{cWi(e)}catch{}}wDe.globalErrorHandler=tEc});var PZr=H(SKe=>{"use strict";Object.defineProperty(SKe,"__esModule",{value:!0});SKe.TracesSamplerValues=void 0;var rEc;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(rEc=SKe.TracesSamplerValues||(SKe.TracesSamplerValues={}))});var lWi=H(F2t=>{"use strict";Object.defineProperty(F2t,"__esModule",{value:!0});F2t._globalThis=void 0;F2t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var OZr=H(Q1=>{"use strict";Object.defineProperty(Q1,"__esModule",{value:!0});Q1.getEnvWithoutDefaults=Q1.parseEnvironment=Q1.DEFAULT_ENVIRONMENT=Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Jce=(GI(),vi(xI)),nEc=PZr(),iEc=lWi(),sEc=",",oEc=["OTEL_SDK_DISABLED"];function aEc(e){return oEc.indexOf(e)>-1}var cEc=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function lEc(e){return cEc.indexOf(e)>-1}var uEc=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function gEc(e){return uEc.indexOf(e)>-1}Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;Q1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Jce.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:nEc.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function AEc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function dEc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function pEc(e,t,r,n=sEc){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var fEc={ALL:Jce.DiagLogLevel.ALL,VERBOSE:Jce.DiagLogLevel.VERBOSE,DEBUG:Jce.DiagLogLevel.DEBUG,INFO:Jce.DiagLogLevel.INFO,WARN:Jce.DiagLogLevel.WARN,ERROR:Jce.DiagLogLevel.ERROR,NONE:Jce.DiagLogLevel.NONE};function IEc(e,t,r){let n=r[e];if(typeof n=="string"){let a=fEc[n.toUpperCase()];a!=null&&(t[e]=a)}}function WZr(e){let t={};for(let r in Q1.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":IEc(n,t,e);break;default:if(aEc(n))AEc(n,t,e);else if(lEc(n))dEc(n,t,e);else if(gEc(n))pEc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}Q1.parseEnvironment=WZr;function hEc(){return typeof process<"u"&&process&&process.env?WZr(process.env):WZr(iEc._globalThis)}Q1.getEnvWithoutDefaults=hEc});var gWi=H(Z2t=>{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.getEnv=void 0;var mEc=wt("os"),uWi=OZr();function CEc(){let e=(0,uWi.parseEnvironment)(process.env);return Object.assign({HOSTNAME:mEc.hostname()},uWi.DEFAULT_ENVIRONMENT,e)}Z2t.getEnv=CEc});var AWi=H(L2t=>{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t._globalThis=void 0;L2t._globalThis=typeof globalThis=="object"?globalThis:global});var pWi=H(V2t=>{"use strict";Object.defineProperty(V2t,"__esModule",{value:!0});V2t.hexToBase64=void 0;function dWi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var _Ec=Buffer.alloc(8),yEc=Buffer.alloc(16);function bEc(e){let t;e.length===16?t=_Ec:e.length===32?t=yEc:t=Buffer.alloc(e.length/2);let r=0;for(let n=0;n{"use strict";Object.defineProperty(W2t,"__esModule",{value:!0});W2t.RandomIdGenerator=void 0;var EEc=8,IWi=16,MZr=class{constructor(){this.generateTraceId=fWi(IWi),this.generateSpanId=fWi(EEc)}};W2t.RandomIdGenerator=MZr;var P2t=Buffer.allocUnsafe(IWi);function fWi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(P2t[e-1]=1);return P2t.toString("hex",0,e)}}});var mWi=H(O2t=>{"use strict";Object.defineProperty(O2t,"__esModule",{value:!0});O2t.otperformance=void 0;var SEc=wt("perf_hooks");O2t.otperformance=SEc.performance});var H2t=H(M2t=>{"use strict";Object.defineProperty(M2t,"__esModule",{value:!0});M2t.VERSION=void 0;M2t.VERSION="1.16.0"});var CWi=H(Y2t=>{"use strict";Object.defineProperty(Y2t,"__esModule",{value:!0});Y2t.SDK_INFO=void 0;var vEc=H2t(),vKe=Yce();Y2t.SDK_INFO={[vKe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[vKe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[vKe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:vKe.TelemetrySdkLanguageValues.NODEJS,[vKe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:vEc.VERSION}});var _Wi=H(Q2t=>{"use strict";Object.defineProperty(Q2t,"__esModule",{value:!0});Q2t.unrefTimer=void 0;function BEc(e){e.unref()}Q2t.unrefTimer=BEc});var yWi=H(EO=>{"use strict";var wEc=EO&&EO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),VCe=EO&&EO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&wEc(t,e,r)};Object.defineProperty(EO,"__esModule",{value:!0});VCe(gWi(),EO);VCe(AWi(),EO);VCe(pWi(),EO);VCe(hWi(),EO);VCe(mWi(),EO);VCe(CWi(),EO);VCe(_Wi(),EO)});var HZr=H(PCe=>{"use strict";var TEc=PCe&&PCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),REc=PCe&&PCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&TEc(t,e,r)};Object.defineProperty(PCe,"__esModule",{value:!0});REc(yWi(),PCe)});var vWi=H(WE=>{"use strict";Object.defineProperty(WE,"__esModule",{value:!0});WE.addHrTimes=WE.isTimeInput=WE.isTimeInputHrTime=WE.hrTimeToMicroseconds=WE.hrTimeToMilliseconds=WE.hrTimeToNanoseconds=WE.hrTimeToTimeStamp=WE.hrTimeDuration=WE.timeInputToHrTime=WE.hrTime=WE.getTimeOrigin=WE.millisToHrTime=void 0;var YZr=HZr(),bWi=9,NEc=6,DEc=Math.pow(10,NEc),X2t=Math.pow(10,bWi);function BKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*DEc);return[r,n]}WE.millisToHrTime=BKe;function QZr(){let e=YZr.otperformance.timeOrigin;if(typeof e!="number"){let t=YZr.otperformance;e=t.timing&&t.timing.fetchStart}return e}WE.getTimeOrigin=QZr;function EWi(e){let t=BKe(QZr()),r=BKe(typeof e=="number"?e:YZr.otperformance.now());return SWi(t,r)}WE.hrTime=EWi;function kEc(e){if(XZr(e))return e;if(typeof e=="number")return e=X2t&&(r[1]-=X2t,r[0]+=1),r}WE.addHrTimes=SWi});var wWi=H(BWi=>{"use strict";Object.defineProperty(BWi,"__esModule",{value:!0})});var TWi=H(wKe=>{"use strict";Object.defineProperty(wKe,"__esModule",{value:!0});wKe.ExportResultCode=void 0;var PEc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(PEc=wKe.ExportResultCode||(wKe.ExportResultCode={}))});var NWi=H(J2t=>{"use strict";Object.defineProperty(J2t,"__esModule",{value:!0});J2t.CompositePropagator=void 0;var RWi=(GI(),vi(xI)),JZr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){RWi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){RWi.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};J2t.CompositePropagator=JZr});var DWi=H(TDe=>{"use strict";Object.defineProperty(TDe,"__esModule",{value:!0});TDe.validateValue=TDe.validateKey=void 0;var UZr="[_0-9a-z-*/]",WEc=`[a-z]${UZr}{0,255}`,OEc=`[a-z0-9]${UZr}{0,240}@[a-z]${UZr}{0,13}`,MEc=new RegExp(`^(?:${WEc}|${OEc})$`),HEc=/^[ -~]{0,255}[!-~]$/,YEc=/,|=/;function QEc(e){return MEc.test(e)}TDe.validateKey=QEc;function XEc(e){return HEc.test(e)&&!YEc.test(e)}TDe.validateValue=XEc});var jZr=H(U2t=>{"use strict";Object.defineProperty(U2t,"__esModule",{value:!0});U2t.TraceState=void 0;var kWi=DWi(),xWi=32,JEc=512,GWi=",",FWi="=",KZr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+FWi+this.get(r)),t),[]).join(GWi)}_parse(t){t.length>JEc||(this._internalState=t.split(GWi).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(FWi);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,kWi.validateKey)(l)&&(0,kWi.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>xWi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,xWi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};U2t.TraceState=KZr});var LWi=H(OG=>{"use strict";Object.defineProperty(OG,"__esModule",{value:!0});OG.W3CTraceContextPropagator=OG.parseTraceParent=OG.TRACE_STATE_HEADER=OG.TRACE_PARENT_HEADER=void 0;var K2t=(GI(),vi(xI)),UEc=EKe(),KEc=jZr();OG.TRACE_PARENT_HEADER="traceparent";OG.TRACE_STATE_HEADER="tracestate";var jEc="00",zEc="(?!ff)[\\da-f]{2}",qEc="(?![0]{32})[\\da-f]{32}",$Ec="(?![0]{16})[\\da-f]{16}",e1c="[\\da-f]{2}",t1c=new RegExp(`^\\s?(${zEc})-(${qEc})-(${$Ec})-(${e1c})(-.*)?\\s?$`);function ZWi(e){let t=t1c.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}OG.parseTraceParent=ZWi;var zZr=class{inject(t,r,n){let a=K2t.trace.getSpanContext(t);if(!a||(0,UEc.isTracingSuppressed)(t)||!(0,K2t.isSpanContextValid)(a))return;let o=`${jEc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||K2t.TraceFlags.NONE).toString(16)}`;n.set(r,OG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,OG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,OG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=ZWi(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,OG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new KEc.TraceState(typeof f=="string"?f:void 0)}return K2t.trace.setSpanContext(t,l)}fields(){return[OG.TRACE_PARENT_HEADER,OG.TRACE_STATE_HEADER]}};OG.W3CTraceContextPropagator=zZr});var PWi=H(VWi=>{"use strict";Object.defineProperty(VWi,"__esModule",{value:!0})});var WWi=H(h4=>{"use strict";Object.defineProperty(h4,"__esModule",{value:!0});h4.getRPCMetadata=h4.deleteRPCMetadata=h4.setRPCMetadata=h4.RPCType=void 0;var r1c=(GI(),vi(xI)),qZr=(0,r1c.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),n1c;(function(e){e.HTTP="http"})(n1c=h4.RPCType||(h4.RPCType={}));function i1c(e,t){return e.setValue(qZr,t)}h4.setRPCMetadata=i1c;function s1c(e){return e.deleteValue(qZr)}h4.deleteRPCMetadata=s1c;function o1c(e){return e.getValue(qZr)}h4.getRPCMetadata=o1c});var eLr=H(j2t=>{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.AlwaysOffSampler=void 0;var a1c=(GI(),vi(xI)),$Zr=class{shouldSample(){return{decision:a1c.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};j2t.AlwaysOffSampler=$Zr});var rLr=H(z2t=>{"use strict";Object.defineProperty(z2t,"__esModule",{value:!0});z2t.AlwaysOnSampler=void 0;var c1c=(GI(),vi(xI)),tLr=class{shouldSample(){return{decision:c1c.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};z2t.AlwaysOnSampler=tLr});var MWi=H($2t=>{"use strict";Object.defineProperty($2t,"__esModule",{value:!0});$2t.ParentBasedSampler=void 0;var q2t=(GI(),vi(xI)),l1c=VZr(),OWi=eLr(),nLr=rLr(),iLr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,l1c.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new nLr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new nLr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new OWi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new nLr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new OWi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=q2t.trace.getSpanContext(t);return!A||!(0,q2t.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&q2t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&q2t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};$2t.ParentBasedSampler=iLr});var HWi=H(eSt=>{"use strict";Object.defineProperty(eSt,"__esModule",{value:!0});eSt.TraceIdRatioBasedSampler=void 0;var sLr=(GI(),vi(xI)),oLr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,sLr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};eSt.TraceIdRatioBasedSampler=oLr});var UWi=H(tSt=>{"use strict";Object.defineProperty(tSt,"__esModule",{value:!0});tSt.isPlainObject=void 0;var u1c="[object Object]",g1c="[object Null]",A1c="[object Undefined]",d1c=Function.prototype,YWi=d1c.toString,p1c=YWi.call(Object),f1c=I1c(Object.getPrototypeOf,Object),QWi=Object.prototype,XWi=QWi.hasOwnProperty,WCe=Symbol?Symbol.toStringTag:void 0,JWi=QWi.toString;function I1c(e,t){return function(r){return e(t(r))}}function h1c(e){if(!m1c(e)||C1c(e)!==u1c)return!1;let t=f1c(e);if(t===null)return!0;let r=XWi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&YWi.call(r)===p1c}tSt.isPlainObject=h1c;function m1c(e){return e!=null&&typeof e=="object"}function C1c(e){return e==null?e===void 0?A1c:g1c:WCe&&WCe in Object(e)?_1c(e):y1c(e)}function _1c(e){let t=XWi.call(e,WCe),r=e[WCe],n=!1;try{e[WCe]=void 0,n=!0}catch{}let a=JWi.call(e);return n&&(t?e[WCe]=r:delete e[WCe]),a}function y1c(e){return JWi.call(e)}});var $Wi=H(iSt=>{"use strict";Object.defineProperty(iSt,"__esModule",{value:!0});iSt.merge=void 0;var KWi=UWi(),b1c=20;function E1c(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=zWi(t,e.shift(),0,r);return t}iSt.merge=E1c;function aLr(e){return nSt(e)?e.slice():e}function zWi(e,t,r=0,n){let a;if(!(r>b1c)){if(r++,rSt(e)||rSt(t)||qWi(t))a=aLr(t);else if(nSt(e)){if(a=e.slice(),nSt(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(jWi(e,f,n)||jWi(t,f,n))delete a[f];else{if(TKe(C)&&TKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=zWi(a[f],I,r,n)}}}}else a=t;return a}}function jWi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function S1c(e,t){return!(!(0,KWi.isPlainObject)(e)||!(0,KWi.isPlainObject)(t))}});var eOi=H(RDe=>{"use strict";Object.defineProperty(RDe,"__esModule",{value:!0});RDe.callWithTimeout=RDe.TimeoutError=void 0;var sSt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};RDe.TimeoutError=sSt;function v1c(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new sSt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}RDe.callWithTimeout=v1c});var rOi=H(NDe=>{"use strict";Object.defineProperty(NDe,"__esModule",{value:!0});NDe.isUrlIgnored=NDe.urlMatches=void 0;function tOi(e,t){return typeof t=="string"?e===t:!!e.match(t)}NDe.urlMatches=tOi;function B1c(e,t){if(!t)return!1;for(let r of t)if(tOi(e,r))return!0;return!1}NDe.isUrlIgnored=B1c});var nOi=H(oSt=>{"use strict";Object.defineProperty(oSt,"__esModule",{value:!0});oSt.isWrapped=void 0;function w1c(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}oSt.isWrapped=w1c});var iOi=H(aSt=>{"use strict";Object.defineProperty(aSt,"__esModule",{value:!0});aSt.Deferred=void 0;var cLr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};aSt.Deferred=cLr});var sOi=H(cSt=>{"use strict";Object.defineProperty(cSt,"__esModule",{value:!0});cSt.BindOnceFuture=void 0;var T1c=iOi(),lLr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new T1c.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};cSt.BindOnceFuture=lLr});var aOi=H(lSt=>{"use strict";Object.defineProperty(lSt,"__esModule",{value:!0});lSt._export=void 0;var oOi=(GI(),vi(xI)),R1c=EKe();function N1c(e,t){return new Promise(r=>{oOi.context.with((0,R1c.suppressTracing)(oOi.context.active()),()=>{e.export(t,n=>{r(n)})})})}lSt._export=N1c});var AH=H(vm=>{"use strict";var D1c=vm&&vm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ab=vm&&vm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&D1c(t,e,r)};Object.defineProperty(vm,"__esModule",{value:!0});vm.internal=vm.baggageUtils=void 0;ab(tWi(),vm);ab(rWi(),vm);ab(aWi(),vm);ab(VZr(),vm);ab(LZr(),vm);ab(vWi(),vm);ab(wWi(),vm);ab(TWi(),vm);ab(H2t(),vm);vm.baggageUtils=kZr();ab(HZr(),vm);ab(NWi(),vm);ab(LWi(),vm);ab(PWi(),vm);ab(WWi(),vm);ab(eLr(),vm);ab(rLr(),vm);ab(MWi(),vm);ab(HWi(),vm);ab(EKe(),vm);ab(jZr(),vm);ab(OZr(),vm);ab($Wi(),vm);ab(PZr(),vm);ab(eOi(),vm);ab(rOi(),vm);ab(nOi(),vm);ab(sOi(),vm);ab(H2t(),vm);var k1c=aOi();vm.internal={_export:k1c._export}});var cOi=H(uSt=>{"use strict";Object.defineProperty(uSt,"__esModule",{value:!0});uSt.defaultServiceName=void 0;function x1c(){return`unknown_service:${process.argv0}`}uSt.defaultServiceName=x1c});var uLr=H(DDe=>{"use strict";Object.defineProperty(DDe,"__esModule",{value:!0});DDe.normalizeType=DDe.normalizeArch=void 0;var G1c=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};DDe.normalizeArch=G1c;var F1c=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};DDe.normalizeType=F1c});var ASt=H(gSt=>{"use strict";Object.defineProperty(gSt,"__esModule",{value:!0});gSt.execAsync=void 0;var Z1c=wt("child_process"),L1c=wt("util");gSt.execAsync=L1c.promisify(Z1c.exec)});var lOi=H(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});dSt.getMachineId=void 0;var V1c=ASt(),P1c=(GI(),vi(xI));async function W1c(){try{let t=(await(0,V1c.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` +`).find(n=>n.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){P1c.diag.debug(`error reading machine id: ${e}`)}return""}dSt.getMachineId=W1c});var uOi=H(pSt=>{"use strict";Object.defineProperty(pSt,"__esModule",{value:!0});pSt.getMachineId=void 0;var O1c=wt("fs"),M1c=(GI(),vi(xI));async function H1c(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await O1c.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){M1c.diag.debug(`error reading machine id: ${r}`)}return""}pSt.getMachineId=H1c});var AOi=H(fSt=>{"use strict";Object.defineProperty(fSt,"__esModule",{value:!0});fSt.getMachineId=void 0;var Y1c=wt("fs"),Q1c=ASt(),gOi=(GI(),vi(xI));async function X1c(){try{return(await Y1c.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){gOi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,Q1c.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){gOi.diag.debug(`error reading machine id: ${e}`)}return""}fSt.getMachineId=X1c});var pOi=H(ISt=>{"use strict";Object.defineProperty(ISt,"__esModule",{value:!0});ISt.getMachineId=void 0;var dOi=wt("process"),J1c=ASt(),U1c=(GI(),vi(xI));async function K1c(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";dOi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in dOi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let n=(await(0,J1c.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(n.length===2)return n[1].trim()}catch(r){U1c.diag.debug(`error reading machine id: ${r}`)}return""}ISt.getMachineId=K1c});var fOi=H(hSt=>{"use strict";Object.defineProperty(hSt,"__esModule",{value:!0});hSt.getMachineId=void 0;var j1c=(GI(),vi(xI));async function z1c(){return j1c.diag.debug("could not read machine-id: unsupported platform"),""}hSt.getMachineId=z1c});var IOi=H(jee=>{"use strict";Object.defineProperty(jee,"__esModule",{value:!0});jee.getMachineId=void 0;var q1c=wt("process"),kDe;jee.getMachineId=kDe;switch(q1c.platform){case"darwin":jee.getMachineId=kDe=lOi().getMachineId;break;case"linux":jee.getMachineId=kDe=uOi().getMachineId;break;case"freebsd":jee.getMachineId=kDe=AOi().getMachineId;break;case"win32":jee.getMachineId=kDe=pOi().getMachineId;break;default:jee.getMachineId=kDe=fOi().getMachineId}});var dLr=H(mSt=>{"use strict";Object.defineProperty(mSt,"__esModule",{value:!0});mSt.hostDetectorSync=void 0;var gLr=Yce(),$1c=OCe(),hOi=wt("os"),e2c=uLr(),t2c=IOi(),ALr=class{detect(t){let r={[gLr.SemanticResourceAttributes.HOST_NAME]:(0,hOi.hostname)(),[gLr.SemanticResourceAttributes.HOST_ARCH]:(0,e2c.normalizeArch)((0,hOi.arch)())};return new $1c.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,t2c.getMachineId)().then(t=>{let r={};return t&&(r[gLr.SemanticResourceAttributes.HOST_ID]=t),r})}};mSt.hostDetectorSync=new ALr});var mOi=H(CSt=>{"use strict";Object.defineProperty(CSt,"__esModule",{value:!0});CSt.hostDetector=void 0;var r2c=dLr(),pLr=class{detect(t){return Promise.resolve(r2c.hostDetectorSync.detect(t))}};CSt.hostDetector=new pLr});var ILr=H(_St=>{"use strict";Object.defineProperty(_St,"__esModule",{value:!0});_St.osDetectorSync=void 0;var COi=Yce(),n2c=OCe(),_Oi=wt("os"),i2c=uLr(),fLr=class{detect(t){let r={[COi.SemanticResourceAttributes.OS_TYPE]:(0,i2c.normalizeType)((0,_Oi.platform)()),[COi.SemanticResourceAttributes.OS_VERSION]:(0,_Oi.release)()};return new n2c.Resource(r)}};_St.osDetectorSync=new fLr});var yOi=H(ySt=>{"use strict";Object.defineProperty(ySt,"__esModule",{value:!0});ySt.osDetector=void 0;var s2c=ILr(),hLr=class{detect(t){return Promise.resolve(s2c.osDetectorSync.detect(t))}};ySt.osDetector=new hLr});var CLr=H(bSt=>{"use strict";Object.defineProperty(bSt,"__esModule",{value:!0});bSt.processDetectorSync=void 0;var o2c=(GI(),vi(xI)),zee=Yce(),a2c=OCe(),c2c=wt("os"),mLr=class{detect(t){let r={[zee.SemanticResourceAttributes.PROCESS_PID]:process.pid,[zee.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[zee.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[zee.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[zee.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[zee.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[zee.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[zee.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let n=c2c.userInfo();r[zee.SemanticResourceAttributes.PROCESS_OWNER]=n.username}catch(n){o2c.diag.debug(`error obtaining process owner: ${n}`)}return new a2c.Resource(r)}};bSt.processDetectorSync=new mLr});var bOi=H(ESt=>{"use strict";Object.defineProperty(ESt,"__esModule",{value:!0});ESt.processDetector=void 0;var l2c=CLr(),_Lr=class{detect(t){return Promise.resolve(l2c.processDetectorSync.detect(t))}};ESt.processDetector=new _Lr});var EOi=H(SO=>{"use strict";var u2c=SO&&SO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),MCe=SO&&SO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&u2c(t,e,r)};Object.defineProperty(SO,"__esModule",{value:!0});MCe(cOi(),SO);MCe(mOi(),SO);MCe(yOi(),SO);MCe(dLr(),SO);MCe(ILr(),SO);MCe(bOi(),SO);MCe(CLr(),SO)});var yLr=H(HCe=>{"use strict";var g2c=HCe&&HCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),A2c=HCe&&HCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&g2c(t,e,r)};Object.defineProperty(HCe,"__esModule",{value:!0});A2c(EOi(),HCe)});var OCe=H(SSt=>{"use strict";Object.defineProperty(SSt,"__esModule",{value:!0});SSt.Resource=void 0;var SOi=(GI(),vi(xI)),YCe=Yce(),bLr=AH(),d2c=yLr(),RKe=class e{constructor(t,r){var n;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(n=this._attributes)!==null&&n!==void 0?n:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(SOi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[YCe.SemanticResourceAttributes.SERVICE_NAME]:(0,d2c.defaultServiceName)(),[YCe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:bLr.SDK_INFO[YCe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[YCe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:bLr.SDK_INFO[YCe.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[YCe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:bLr.SDK_INFO[YCe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&SOi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let n=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(n);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,l])=>{var A;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(A=t._syncAttributes)!==null&&A!==void 0?A:t.attributes),l)});return new e(n,a)}};SSt.Resource=RKe;RKe.EMPTY=new RKe({})});var BOi=H(vOi=>{"use strict";Object.defineProperty(vOi,"__esModule",{value:!0})});var TOi=H(wOi=>{"use strict";Object.defineProperty(wOi,"__esModule",{value:!0})});var NOi=H(ROi=>{"use strict";Object.defineProperty(ROi,"__esModule",{value:!0})});var DOi=H(vSt=>{"use strict";Object.defineProperty(vSt,"__esModule",{value:!0});vSt.browserDetector=void 0;var p2c=BSt(),ELr=class{detect(t){return Promise.resolve(p2c.browserDetectorSync.detect(t))}};vSt.browserDetector=new ELr});var vLr=H(wSt=>{"use strict";Object.defineProperty(wSt,"__esModule",{value:!0});wSt.envDetectorSync=void 0;var f2c=(GI(),vi(xI)),I2c=AH(),h2c=Yce(),m2c=OCe(),SLr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},n=(0,I2c.getEnv)(),a=n.OTEL_RESOURCE_ATTRIBUTES,o=n.OTEL_SERVICE_NAME;if(a)try{let l=this._parseResourceAttributes(a);Object.assign(r,l)}catch(l){f2c.diag.debug(`EnvDetector failed: ${l.message}`)}return o&&(r[h2c.SemanticResourceAttributes.SERVICE_NAME]=o),new m2c.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},n=t.split(this._COMMA_SEPARATOR,-1);for(let a of n){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[l,A]=o;if(l=l.trim(),A=A.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(l))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(A))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[l]=decodeURIComponent(A)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};wSt.envDetectorSync=new SLr});var kOi=H(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.envDetector=void 0;var C2c=vLr(),BLr=class{detect(t){return Promise.resolve(C2c.envDetectorSync.detect(t))}};TSt.envDetector=new BLr});var xOi=H(NSt=>{"use strict";Object.defineProperty(NSt,"__esModule",{value:!0});NSt.browserDetectorSync=void 0;var RSt=Yce(),wLr=BSt(),_2c=(GI(),vi(xI)),TLr=class{detect(t){if(!(typeof navigator<"u"))return wLr.Resource.empty();let n={[RSt.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[RSt.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[RSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(n,t)}_getResourceAttributes(t,r){return t[RSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(_2c.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),wLr.Resource.empty()):new wLr.Resource(Object.assign({},t))}};NSt.browserDetectorSync=new TLr});var GOi=H(Dj=>{"use strict";var y2c=Dj&&Dj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),DSt=Dj&&Dj.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&y2c(t,e,r)};Object.defineProperty(Dj,"__esModule",{value:!0});DSt(DOi(),Dj);DSt(kOi(),Dj);DSt(xOi(),Dj);DSt(vLr(),Dj)});var FOi=H(kSt=>{"use strict";Object.defineProperty(kSt,"__esModule",{value:!0});kSt.isPromiseLike=void 0;var b2c=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";kSt.isPromiseLike=b2c});var LOi=H(GDe=>{"use strict";Object.defineProperty(GDe,"__esModule",{value:!0});GDe.detectResourcesSync=GDe.detectResources=void 0;var NKe=OCe(),xDe=(GI(),vi(xI)),E2c=FOi(),S2c=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let n=await r.detect(e);return xDe.diag.debug(`${r.constructor.name} found resource.`,n),n}catch(n){return xDe.diag.debug(`${r.constructor.name} failed: ${n.message}`),NKe.Resource.empty()}}));return ZOi(t),t.reduce((r,n)=>r.merge(n),NKe.Resource.empty())};GDe.detectResources=S2c;var v2c=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),l;if((0,E2c.isPromiseLike)(o)){let A=async()=>(await o).attributes;l=new NKe.Resource({},A())}else l=o;return l.waitForAsyncAttributes?l.waitForAsyncAttributes().then(()=>xDe.diag.debug(`${a.constructor.name} found resource.`,l)):xDe.diag.debug(`${a.constructor.name} found resource.`,l),l}catch(o){return xDe.diag.error(`${a.constructor.name} failed: ${o.message}`),NKe.Resource.empty()}}),n=r.reduce((a,o)=>a.merge(o),NKe.Resource.empty());return n.waitForAsyncAttributes&&n.waitForAsyncAttributes().then(()=>{ZOi(r)}),n};GDe.detectResourcesSync=v2c;var ZOi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);xDe.diag.verbose(r)}})}});var BSt=H(vO=>{"use strict";var B2c=vO&&vO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),QCe=vO&&vO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&B2c(t,e,r)};Object.defineProperty(vO,"__esModule",{value:!0});QCe(OCe(),vO);QCe(BOi(),vO);QCe(yLr(),vO);QCe(TOi(),vO);QCe(NOi(),vO);QCe(GOi(),vO);QCe(LOi(),vO)});var DLr=H(xSt=>{"use strict";Object.defineProperty(xSt,"__esModule",{value:!0});xSt.LogRecord=void 0;var w2c=(GI(),vi(xI)),DKe=(GI(),vi(xI)),RLr=AH(),NLr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:n,observedTimestamp:a,severityNumber:o,severityText:l,body:A,attributes:f={},context:I}=r,C=Date.now();if(this.hrTime=(0,RLr.timeInputToHrTime)(n??C),this.hrTimeObserved=(0,RLr.timeInputToHrTime)(a??C),I){let b=DKe.trace.getSpanContext(I);b&&DKe.isSpanContextValid(b)&&(this.spanContext=b)}this.severityNumber=o,this.severityText=l,this.body=A,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(DKe.diag.warn(`Invalid attribute key: ${t}`),this):(0,RLr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(DKe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,n]of Object.entries(t))this.setAttribute(r,n);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(DKe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(n=>typeof n=="string"?this._truncateToLimitUtil(n,r):n):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&w2c.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};xSt.LogRecord=NLr});var kLr=H(kj=>{"use strict";Object.defineProperty(kj,"__esModule",{value:!0});kj.DEFAULT_EVENT_DOMAIN=kj.mergeConfig=kj.reconfigureLimits=kj.loadDefaultConfig=void 0;var kKe=AH();function VOi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,kKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,kKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}kj.loadDefaultConfig=VOi;function T2c(e){var t,r,n,a,o,l,A,f;let I=Object.assign({},e.logRecordLimits),C=(0,kKe.getEnvWithoutDefaults)();return I.attributeCountLimit=(a=(n=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:C.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&n!==void 0?n:C.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:kKe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,I.attributeValueLengthLimit=(f=(A=(l=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&l!==void 0?l:C.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&A!==void 0?A:C.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:kKe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:I})}kj.reconfigureLimits=T2c;function R2c(e){let t=VOi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}kj.mergeConfig=R2c;kj.DEFAULT_EVENT_DOMAIN="default"});var GLr=H(GSt=>{"use strict";Object.defineProperty(GSt,"__esModule",{value:!0});GSt.Logger=void 0;var N2c=(GI(),vi(xI)),D2c=DLr(),k2c=kLr(),xLr=class{constructor(t,r,n){this.instrumentationScope=t,this._loggerProvider=n,this._loggerConfig=(0,k2c.mergeConfig)(r),this.resource=n.resource}emit(t){let r=t.context||N2c.context.active(),n=new D2c.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(n,r),n.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};GSt.Logger=xLr});var POi=H(FSt=>{"use strict";Object.defineProperty(FSt,"__esModule",{value:!0});FSt.MultiLogRecordProcessor=void 0;var x2c=AH(),FLr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,x2c.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};FSt.MultiLogRecordProcessor=FLr});var LLr=H(ZSt=>{"use strict";Object.defineProperty(ZSt,"__esModule",{value:!0});ZSt.NoopLogRecordProcessor=void 0;var ZLr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};ZSt.NoopLogRecordProcessor=ZLr});var YOi=H(XCe=>{"use strict";Object.defineProperty(XCe,"__esModule",{value:!0});XCe.LoggerProvider=XCe.DEFAULT_LOGGER_NAME=void 0;var xKe=(GI(),vi(xI)),G2c=EDe(),WOi=BSt(),OOi=AH(),F2c=GLr(),MOi=kLr(),HOi=POi(),Z2c=LLr();XCe.DEFAULT_LOGGER_NAME="unknown";var VLr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=WOi.Resource.empty(),logRecordLimits:n,forceFlushTimeoutMillis:a}=(0,OOi.merge)({},(0,MOi.loadDefaultConfig)(),(0,MOi.reconfigureLimits)(t));this.resource=WOi.Resource.default().merge(r),this._config={logRecordLimits:n,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new OOi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new HOi.MultiLogRecordProcessor([new Z2c.NoopLogRecordProcessor],a)}getLogger(t,r,n){if(this._shutdownOnce.isCalled)return xKe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),G2c.NOOP_LOGGER;t||xKe.diag.warn("Logger requested without instrumentation scope name.");let a=t||XCe.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${n?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new F2c.Logger({name:a,version:r,schemaUrl:n?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>xKe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new HOi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(xKe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(xKe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};XCe.LoggerProvider=VLr});var QOi=H(LSt=>{"use strict";Object.defineProperty(LSt,"__esModule",{value:!0});LSt.ConsoleLogRecordExporter=void 0;var L2c=AH(),V2c=AH(),PLr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,n,a;return{timestamp:(0,L2c.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(n=t.spanContext)===null||n===void 0?void 0:n.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let n of t)console.dir(this._exportInfo(n),{depth:3});r?.({code:V2c.ExportResultCode.SUCCESS})}};LSt.ConsoleLogRecordExporter=PLr});var XOi=H(VSt=>{"use strict";Object.defineProperty(VSt,"__esModule",{value:!0});VSt.SimpleLogRecordProcessor=void 0;var WLr=AH(),OLr=class{constructor(t){this._exporter=t,this._shutdownOnce=new WLr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var n;if(r.code!==WLr.ExportResultCode.SUCCESS){(0,WLr.globalErrorHandler)((n=r.error)!==null&&n!==void 0?n:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};VSt.SimpleLogRecordProcessor=OLr});var UOi=H(PSt=>{"use strict";Object.defineProperty(PSt,"__esModule",{value:!0});PSt.InMemoryLogRecordExporter=void 0;var JOi=AH(),MLr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:JOi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:JOi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};PSt.InMemoryLogRecordExporter=MLr});var KOi=H(WSt=>{"use strict";Object.defineProperty(WSt,"__esModule",{value:!0});WSt.BatchLogRecordProcessorBase=void 0;var P2c=(GI(),vi(xI)),FDe=AH(),HLr=class{constructor(t,r){var n,a,o,l;this._exporter=t,this._finishedLogRecords=[];let A=(0,FDe.getEnv)();this._maxExportBatchSize=(n=r?.maxExportBatchSize)!==null&&n!==void 0?n:A.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:A.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:A.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(l=r?.exportTimeoutMillis)!==null&&l!==void 0?l:A.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new FDe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(P2c.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let n=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,FDe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,FDe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,FDe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,n)=>{this._exporter.export(t,a=>{var o;if(a.code!==FDe.ExportResultCode.SUCCESS){n((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};WSt.BatchLogRecordProcessorBase=HLr});var jOi=H(OSt=>{"use strict";Object.defineProperty(OSt,"__esModule",{value:!0});OSt.BatchLogRecordProcessor=void 0;var W2c=KOi(),YLr=class extends W2c.BatchLogRecordProcessorBase{onShutdown(){}};OSt.BatchLogRecordProcessor=YLr});var zOi=H(MSt=>{"use strict";Object.defineProperty(MSt,"__esModule",{value:!0});MSt.BatchLogRecordProcessor=void 0;var O2c=jOi();Object.defineProperty(MSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return O2c.BatchLogRecordProcessor}})});var qOi=H(HSt=>{"use strict";Object.defineProperty(HSt,"__esModule",{value:!0});HSt.BatchLogRecordProcessor=void 0;var M2c=zOi();Object.defineProperty(HSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return M2c.BatchLogRecordProcessor}})});var GKe=H(uD=>{"use strict";Object.defineProperty(uD,"__esModule",{value:!0});uD.BatchLogRecordProcessor=uD.InMemoryLogRecordExporter=uD.SimpleLogRecordProcessor=uD.ConsoleLogRecordExporter=uD.NoopLogRecordProcessor=uD.LogRecord=uD.Logger=uD.LoggerProvider=void 0;var H2c=YOi();Object.defineProperty(uD,"LoggerProvider",{enumerable:!0,get:function(){return H2c.LoggerProvider}});var Y2c=GLr();Object.defineProperty(uD,"Logger",{enumerable:!0,get:function(){return Y2c.Logger}});var Q2c=DLr();Object.defineProperty(uD,"LogRecord",{enumerable:!0,get:function(){return Q2c.LogRecord}});var X2c=LLr();Object.defineProperty(uD,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return X2c.NoopLogRecordProcessor}});var J2c=QOi();Object.defineProperty(uD,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return J2c.ConsoleLogRecordExporter}});var U2c=XOi();Object.defineProperty(uD,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return U2c.SimpleLogRecordProcessor}});var K2c=UOi();Object.defineProperty(uD,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return K2c.InMemoryLogRecordExporter}});var j2c=qOi();Object.defineProperty(uD,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return j2c.BatchLogRecordProcessor}})});var FKe=H(Uce=>{"use strict";Object.defineProperty(Uce,"__esModule",{value:!0});Uce.isTracingSuppressed=Uce.unsuppressTracing=Uce.suppressTracing=void 0;var z2c=(GI(),vi(xI)),XLr=(0,z2c.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function q2c(e){return e.setValue(XLr,!0)}Uce.suppressTracing=q2c;function $2c(e){return e.deleteValue(XLr)}Uce.unsuppressTracing=$2c;function eSc(e){return e.getValue(XLr)===!0}Uce.isTracingSuppressed=eSc});var JLr=H(MG=>{"use strict";Object.defineProperty(MG,"__esModule",{value:!0});MG.BAGGAGE_MAX_TOTAL_LENGTH=MG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=MG.BAGGAGE_MAX_NAME_VALUE_PAIRS=MG.BAGGAGE_HEADER=MG.BAGGAGE_ITEMS_SEPARATOR=MG.BAGGAGE_PROPERTIES_SEPARATOR=MG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;MG.BAGGAGE_KEY_PAIR_SEPARATOR="=";MG.BAGGAGE_PROPERTIES_SEPARATOR=";";MG.BAGGAGE_ITEMS_SEPARATOR=",";MG.BAGGAGE_HEADER="baggage";MG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;MG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;MG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var ULr=H(xj=>{"use strict";Object.defineProperty(xj,"__esModule",{value:!0});xj.parseKeyPairsIntoRecord=xj.parsePairKeyValue=xj.getKeyPairs=xj.serializeKeyPairs=void 0;var tSc=(GI(),vi(xI)),JCe=JLr();function rSc(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?JCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>JCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}xj.serializeKeyPairs=rSc;function nSc(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=JCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}xj.getKeyPairs=nSc;function $Oi(e){let t=e.split(JCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(JCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,tSc.baggageEntryMetadataFromString)(t.join(JCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}xj.parsePairKeyValue=$Oi;function iSc(e){return typeof e!="string"||e.length===0?{}:e.split(JCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>$Oi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}xj.parseKeyPairsIntoRecord=iSc});var e3i=H(YSt=>{"use strict";Object.defineProperty(YSt,"__esModule",{value:!0});YSt.W3CBaggagePropagator=void 0;var KLr=(GI(),vi(xI)),sSc=FKe(),UCe=JLr(),jLr=ULr(),zLr=class{inject(t,r,n){let a=KLr.propagation.getBaggage(t);if(!a||(0,sSc.isTracingSuppressed)(t))return;let o=(0,jLr.getKeyPairs)(a).filter(A=>A.length<=UCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,UCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,jLr.serializeKeyPairs)(o);l.length>0&&n.set(r,UCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,UCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(UCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(UCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,jLr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:KLr.propagation.setBaggage(t,KLr.propagation.createBaggage(l))}fields(){return[UCe.BAGGAGE_HEADER]}};YSt.W3CBaggagePropagator=zLr});var t3i=H(QSt=>{"use strict";Object.defineProperty(QSt,"__esModule",{value:!0});QSt.AnchoredClock=void 0;var qLr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};QSt.AnchoredClock=qLr});var o3i=H(Kce=>{"use strict";Object.defineProperty(Kce,"__esModule",{value:!0});Kce.isAttributeValue=Kce.isAttributeKey=Kce.sanitizeAttributes=void 0;var r3i=(GI(),vi(xI));function oSc(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!n3i(r)){r3i.diag.warn(`Invalid attribute key: ${r}`);continue}if(!i3i(n)){r3i.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Kce.sanitizeAttributes=oSc;function n3i(e){return typeof e=="string"&&e.length>0}Kce.isAttributeKey=n3i;function i3i(e){return e==null?!0:Array.isArray(e)?aSc(e):s3i(e)}Kce.isAttributeValue=i3i;function aSc(e){let t;for(let r of e)if(r!=null){if(!t){if(s3i(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function s3i(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var $Lr=H(XSt=>{"use strict";Object.defineProperty(XSt,"__esModule",{value:!0});XSt.loggingErrorHandler=void 0;var cSc=(GI(),vi(xI));function lSc(){return e=>{cSc.diag.error(uSc(e))}}XSt.loggingErrorHandler=lSc;function uSc(e){return typeof e=="string"?e:JSON.stringify(gSc(e))}function gSc(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var e9r=H(ZDe=>{"use strict";Object.defineProperty(ZDe,"__esModule",{value:!0});ZDe.globalErrorHandler=ZDe.setGlobalErrorHandler=void 0;var ASc=$Lr(),a3i=(0,ASc.loggingErrorHandler)();function dSc(e){a3i=e}ZDe.setGlobalErrorHandler=dSc;function pSc(e){try{a3i(e)}catch{}}ZDe.globalErrorHandler=pSc});var t9r=H(ZKe=>{"use strict";Object.defineProperty(ZKe,"__esModule",{value:!0});ZKe.TracesSamplerValues=void 0;var fSc;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(fSc=ZKe.TracesSamplerValues||(ZKe.TracesSamplerValues={}))});var r9r=H(LS=>{"use strict";Object.defineProperty(LS,"__esModule",{value:!0});LS.parseEnvironment=LS.DEFAULT_ENVIRONMENT=LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var jce=(GI(),vi(xI)),ISc=t9r(),hSc=",",mSc=["OTEL_SDK_DISABLED"];function CSc(e){return mSc.indexOf(e)>-1}var _Sc=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function ySc(e){return _Sc.indexOf(e)>-1}var bSc=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function ESc(e){return bSc.indexOf(e)>-1}LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;LS.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:jce.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:ISc.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function SSc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function vSc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function BSc(e,t,r,n=hSc){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var wSc={ALL:jce.DiagLogLevel.ALL,VERBOSE:jce.DiagLogLevel.VERBOSE,DEBUG:jce.DiagLogLevel.DEBUG,INFO:jce.DiagLogLevel.INFO,WARN:jce.DiagLogLevel.WARN,ERROR:jce.DiagLogLevel.ERROR,NONE:jce.DiagLogLevel.NONE};function TSc(e,t,r){let n=r[e];if(typeof n=="string"){let a=wSc[n.toUpperCase()];a!=null&&(t[e]=a)}}function RSc(e){let t={};for(let r in LS.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":TSc(n,t,e);break;default:if(CSc(n))SSc(n,t,e);else if(ySc(n))vSc(n,t,e);else if(ESc(n))BSc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}LS.parseEnvironment=RSc});var c3i=H(LDe=>{"use strict";Object.defineProperty(LDe,"__esModule",{value:!0});LDe.getEnvWithoutDefaults=LDe.getEnv=void 0;var n9r=r9r();function NSc(){let e=(0,n9r.parseEnvironment)(process.env);return Object.assign({},n9r.DEFAULT_ENVIRONMENT,e)}LDe.getEnv=NSc;function DSc(){return(0,n9r.parseEnvironment)(process.env)}LDe.getEnvWithoutDefaults=DSc});var l3i=H(JSt=>{"use strict";Object.defineProperty(JSt,"__esModule",{value:!0});JSt._globalThis=void 0;JSt._globalThis=typeof globalThis=="object"?globalThis:global});var i9r=H(USt=>{"use strict";Object.defineProperty(USt,"__esModule",{value:!0});USt.hexToBinary=void 0;function u3i(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function kSc(e){let t=new Uint8Array(e.length/2),r=0;for(let n=0;n{"use strict";Object.defineProperty(KSt,"__esModule",{value:!0});KSt.hexToBase64=void 0;var xSc=i9r();function GSc(e){return Buffer.from((0,xSc.hexToBinary)(e)).toString("base64")}KSt.hexToBase64=GSc});var p3i=H(zSt=>{"use strict";Object.defineProperty(zSt,"__esModule",{value:!0});zSt.RandomIdGenerator=void 0;var FSc=8,d3i=16,s9r=class{constructor(){this.generateTraceId=A3i(d3i),this.generateSpanId=A3i(FSc)}};zSt.RandomIdGenerator=s9r;var jSt=Buffer.allocUnsafe(d3i);function A3i(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(jSt[e-1]=1);return jSt.toString("hex",0,e)}}});var f3i=H(qSt=>{"use strict";Object.defineProperty(qSt,"__esModule",{value:!0});qSt.otperformance=void 0;var ZSc=wt("perf_hooks");qSt.otperformance=ZSc.performance});var o9r=H($St=>{"use strict";Object.defineProperty($St,"__esModule",{value:!0});$St.VERSION=void 0;$St.VERSION="1.27.0"});function iw(e){for(var t={},r=e.length,n=0;n{});var I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,P3i,W3i,O3i,M3i,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,e5i,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,b5i,E5i,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,P5i,W5i,O5i,M5i,H5i,Y5i,Q5i,X5i,J5i,U5i,K5i,j5i,z5i,q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi,_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,LSc,VSc,PSc,WSc,OSc,MSc,HSc,YSc,QSc,XSc,JSc,USc,KSc,jSc,zSc,qSc,$Sc,evc,tvc,rvc,nvc,ivc,svc,ovc,avc,cvc,lvc,uvc,gvc,Avc,dvc,pvc,fvc,Ivc,hvc,mvc,Cvc,_vc,yvc,bvc,Evc,Svc,vvc,Bvc,wvc,Tvc,Rvc,Nvc,Dvc,kvc,xvc,Gvc,Fvc,Zvc,Lvc,Vvc,Pvc,Wvc,Ovc,Mvc,Hvc,Yvc,Qvc,Xvc,Jvc,Uvc,Kvc,jvc,zvc,qvc,$vc,eBc,tBc,rBc,nBc,iBc,sBc,oBc,aBc,cBc,lBc,uBc,gBc,ABc,dBc,pBc,fBc,IBc,hBc,mBc,CBc,_Bc,yBc,bBc,EBc,SBc,vBc,BBc,wBc,TBc,RBc,NBc,DBc,kBc,xBc,GBc,FBc,ZBc,LBc,VBc,PBc,WBc,OBc,MBc,HBc,YBc,QBc,XBc,JBc,UBc,KBc,jBc,zBc,qBc,$Bc,ewc,twc,rwc,nwc,ZMi,LMi,VMi,PMi,WMi,OMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,SHi,vHi,BHi,wHi,THi,iwc,swc,owc,awc,cwc,lwc,uwc,gwc,Awc,dwc,pwc,fwc,Iwc,hwc,mwc,Cwc,_wc,ywc,bwc,Ewc,Swc,vwc,Bwc,wwc,Twc,Rwc,Nwc,Dwc,kwc,xwc,Gwc,Fwc,Zwc,Lwc,Vwc,Pwc,Wwc,Owc,Mwc,Hwc,Ywc,Qwc,Xwc,Jwc,Uwc,Kwc,jwc,zwc,RHi,NHi,DHi,kHi,xHi,GHi,FHi,ZHi,LHi,VHi,PHi,qwc,$wc,eTc,tTc,rTc,nTc,iTc,sTc,oTc,aTc,cTc,lTc,WHi,OHi,MHi,HHi,YHi,uTc,gTc,ATc,dTc,pTc,fTc,QHi,XHi,JHi,ITc,hTc,mTc,CTc,UHi,KHi,jHi,zHi,_Tc,yTc,bTc,ETc,STc,qHi,$Hi,eYi,tYi,rYi,nYi,iYi,vTc,BTc,wTc,TTc,RTc,NTc,DTc,kTc,sYi,oYi,aYi,cYi,lYi,xTc,GTc,FTc,ZTc,LTc,VTc,uYi,gYi,AYi,dYi,pYi,fYi,IYi,hYi,mYi,CYi,_Yi,yYi,bYi,EYi,SYi,vYi,BYi,wYi,TYi,RYi,NYi,PTc,WTc,OTc,MTc,HTc,YTc,QTc,XTc,JTc,UTc,KTc,jTc,zTc,qTc,$Tc,eRc,tRc,rRc,nRc,iRc,sRc,oRc,DYi,kYi,xYi,GYi,FYi,aRc,cRc,lRc,uRc,gRc,ARc,ZYi,LYi,dRc,pRc,fRc,VYi,PYi,IRc,hRc,mRc,WYi,OYi,MYi,HYi,YYi,QYi,XYi,JYi,UYi,KYi,jYi,zYi,qYi,$Yi,eQi,tQi,rQi,CRc,_Rc,yRc,bRc,ERc,SRc,vRc,BRc,wRc,TRc,RRc,NRc,DRc,kRc,xRc,GRc,FRc,ZRc,nQi,iQi,LRc,VRc,PRc,sQi=bc(()=>{a9r();I3i="aws.lambda.invoked_arn",h3i="db.system",m3i="db.connection_string",C3i="db.user",_3i="db.jdbc.driver_classname",y3i="db.name",b3i="db.statement",E3i="db.operation",S3i="db.mssql.instance_name",v3i="db.cassandra.keyspace",B3i="db.cassandra.page_size",w3i="db.cassandra.consistency_level",T3i="db.cassandra.table",R3i="db.cassandra.idempotence",N3i="db.cassandra.speculative_execution_count",D3i="db.cassandra.coordinator.id",k3i="db.cassandra.coordinator.dc",x3i="db.hbase.namespace",G3i="db.redis.database_index",F3i="db.mongodb.collection",Z3i="db.sql.table",L3i="exception.type",V3i="exception.message",P3i="exception.stacktrace",W3i="exception.escaped",O3i="faas.trigger",M3i="faas.execution",H3i="faas.document.collection",Y3i="faas.document.operation",Q3i="faas.document.time",X3i="faas.document.name",J3i="faas.time",U3i="faas.cron",K3i="faas.coldstart",j3i="faas.invoked_name",z3i="faas.invoked_provider",q3i="faas.invoked_region",$3i="net.transport",e5i="net.peer.ip",t5i="net.peer.port",r5i="net.peer.name",n5i="net.host.ip",i5i="net.host.port",s5i="net.host.name",o5i="net.host.connection.type",a5i="net.host.connection.subtype",c5i="net.host.carrier.name",l5i="net.host.carrier.mcc",u5i="net.host.carrier.mnc",g5i="net.host.carrier.icc",A5i="peer.service",d5i="enduser.id",p5i="enduser.role",f5i="enduser.scope",I5i="thread.id",h5i="thread.name",m5i="code.function",C5i="code.namespace",_5i="code.filepath",y5i="code.lineno",b5i="http.method",E5i="http.url",S5i="http.target",v5i="http.host",B5i="http.scheme",w5i="http.status_code",T5i="http.flavor",R5i="http.user_agent",N5i="http.request_content_length",D5i="http.request_content_length_uncompressed",k5i="http.response_content_length",x5i="http.response_content_length_uncompressed",G5i="http.server_name",F5i="http.route",Z5i="http.client_ip",L5i="aws.dynamodb.table_names",V5i="aws.dynamodb.consumed_capacity",P5i="aws.dynamodb.item_collection_metrics",W5i="aws.dynamodb.provisioned_read_capacity",O5i="aws.dynamodb.provisioned_write_capacity",M5i="aws.dynamodb.consistent_read",H5i="aws.dynamodb.projection",Y5i="aws.dynamodb.limit",Q5i="aws.dynamodb.attributes_to_get",X5i="aws.dynamodb.index_name",J5i="aws.dynamodb.select",U5i="aws.dynamodb.global_secondary_indexes",K5i="aws.dynamodb.local_secondary_indexes",j5i="aws.dynamodb.exclusive_start_table",z5i="aws.dynamodb.table_count",q5i="aws.dynamodb.scan_forward",$5i="aws.dynamodb.segment",eMi="aws.dynamodb.total_segments",tMi="aws.dynamodb.count",rMi="aws.dynamodb.scanned_count",nMi="aws.dynamodb.attribute_definitions",iMi="aws.dynamodb.global_secondary_index_updates",sMi="messaging.system",oMi="messaging.destination",aMi="messaging.destination_kind",cMi="messaging.temp_destination",lMi="messaging.protocol",uMi="messaging.protocol_version",gMi="messaging.url",AMi="messaging.message_id",dMi="messaging.conversation_id",pMi="messaging.message_payload_size_bytes",fMi="messaging.message_payload_compressed_size_bytes",IMi="messaging.operation",hMi="messaging.consumer_id",mMi="messaging.rabbitmq.routing_key",CMi="messaging.kafka.message_key",_Mi="messaging.kafka.consumer_group",yMi="messaging.kafka.client_id",bMi="messaging.kafka.partition",EMi="messaging.kafka.tombstone",SMi="rpc.system",vMi="rpc.service",BMi="rpc.method",wMi="rpc.grpc.status_code",TMi="rpc.jsonrpc.version",RMi="rpc.jsonrpc.request_id",NMi="rpc.jsonrpc.error_code",DMi="rpc.jsonrpc.error_message",kMi="message.type",xMi="message.id",GMi="message.compressed_size",FMi="message.uncompressed_size",LSc=I3i,VSc=h3i,PSc=m3i,WSc=C3i,OSc=_3i,MSc=y3i,HSc=b3i,YSc=E3i,QSc=S3i,XSc=v3i,JSc=B3i,USc=w3i,KSc=T3i,jSc=R3i,zSc=N3i,qSc=D3i,$Sc=k3i,evc=x3i,tvc=G3i,rvc=F3i,nvc=Z3i,ivc=L3i,svc=V3i,ovc=P3i,avc=W3i,cvc=O3i,lvc=M3i,uvc=H3i,gvc=Y3i,Avc=Q3i,dvc=X3i,pvc=J3i,fvc=U3i,Ivc=K3i,hvc=j3i,mvc=z3i,Cvc=q3i,_vc=$3i,yvc=e5i,bvc=t5i,Evc=r5i,Svc=n5i,vvc=i5i,Bvc=s5i,wvc=o5i,Tvc=a5i,Rvc=c5i,Nvc=l5i,Dvc=u5i,kvc=g5i,xvc=A5i,Gvc=d5i,Fvc=p5i,Zvc=f5i,Lvc=I5i,Vvc=h5i,Pvc=m5i,Wvc=C5i,Ovc=_5i,Mvc=y5i,Hvc=b5i,Yvc=E5i,Qvc=S5i,Xvc=v5i,Jvc=B5i,Uvc=w5i,Kvc=T5i,jvc=R5i,zvc=N5i,qvc=D5i,$vc=k5i,eBc=x5i,tBc=G5i,rBc=F5i,nBc=Z5i,iBc=L5i,sBc=V5i,oBc=P5i,aBc=W5i,cBc=O5i,lBc=M5i,uBc=H5i,gBc=Y5i,ABc=Q5i,dBc=X5i,pBc=J5i,fBc=U5i,IBc=K5i,hBc=j5i,mBc=z5i,CBc=q5i,_Bc=$5i,yBc=eMi,bBc=tMi,EBc=rMi,SBc=nMi,vBc=iMi,BBc=sMi,wBc=oMi,TBc=aMi,RBc=cMi,NBc=lMi,DBc=uMi,kBc=gMi,xBc=AMi,GBc=dMi,FBc=pMi,ZBc=fMi,LBc=IMi,VBc=hMi,PBc=mMi,WBc=CMi,OBc=_Mi,MBc=yMi,HBc=bMi,YBc=EMi,QBc=SMi,XBc=vMi,JBc=BMi,UBc=wMi,KBc=TMi,jBc=RMi,zBc=NMi,qBc=DMi,$Bc=kMi,ewc=xMi,twc=GMi,rwc=FMi,nwc=iw([I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,P3i,W3i,O3i,M3i,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,e5i,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,b5i,E5i,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,P5i,W5i,O5i,M5i,H5i,Y5i,Q5i,X5i,J5i,U5i,K5i,j5i,z5i,q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi,_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi]),ZMi="other_sql",LMi="mssql",VMi="mysql",PMi="oracle",WMi="db2",OMi="postgresql",MMi="redshift",HMi="hive",YMi="cloudscape",QMi="hsqldb",XMi="progress",JMi="maxdb",UMi="hanadb",KMi="ingres",jMi="firstsql",zMi="edb",qMi="cache",$Mi="adabas",eHi="firebird",tHi="derby",rHi="filemaker",nHi="informix",iHi="instantdb",sHi="interbase",oHi="mariadb",aHi="netezza",cHi="pervasive",lHi="pointbase",uHi="sqlite",gHi="sybase",AHi="teradata",dHi="vertica",pHi="h2",fHi="coldfusion",IHi="cassandra",hHi="hbase",mHi="mongodb",CHi="redis",_Hi="couchbase",yHi="couchdb",bHi="cosmosdb",EHi="dynamodb",SHi="neo4j",vHi="geode",BHi="elasticsearch",wHi="memcached",THi="cockroachdb",iwc=ZMi,swc=LMi,owc=VMi,awc=PMi,cwc=WMi,lwc=OMi,uwc=MMi,gwc=HMi,Awc=YMi,dwc=QMi,pwc=XMi,fwc=JMi,Iwc=UMi,hwc=KMi,mwc=jMi,Cwc=zMi,_wc=qMi,ywc=$Mi,bwc=eHi,Ewc=tHi,Swc=rHi,vwc=nHi,Bwc=iHi,wwc=sHi,Twc=oHi,Rwc=aHi,Nwc=cHi,Dwc=lHi,kwc=uHi,xwc=gHi,Gwc=AHi,Fwc=dHi,Zwc=pHi,Lwc=fHi,Vwc=IHi,Pwc=hHi,Wwc=mHi,Owc=CHi,Mwc=_Hi,Hwc=yHi,Ywc=bHi,Qwc=EHi,Xwc=SHi,Jwc=vHi,Uwc=BHi,Kwc=wHi,jwc=THi,zwc=iw([ZMi,LMi,VMi,PMi,WMi,OMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,SHi,vHi,BHi,wHi,THi]),RHi="all",NHi="each_quorum",DHi="quorum",kHi="local_quorum",xHi="one",GHi="two",FHi="three",ZHi="local_one",LHi="any",VHi="serial",PHi="local_serial",qwc=RHi,$wc=NHi,eTc=DHi,tTc=kHi,rTc=xHi,nTc=GHi,iTc=FHi,sTc=ZHi,oTc=LHi,aTc=VHi,cTc=PHi,lTc=iw([RHi,NHi,DHi,kHi,xHi,GHi,FHi,ZHi,LHi,VHi,PHi]),WHi="datasource",OHi="http",MHi="pubsub",HHi="timer",YHi="other",uTc=WHi,gTc=OHi,ATc=MHi,dTc=HHi,pTc=YHi,fTc=iw([WHi,OHi,MHi,HHi,YHi]),QHi="insert",XHi="edit",JHi="delete",ITc=QHi,hTc=XHi,mTc=JHi,CTc=iw([QHi,XHi,JHi]),UHi="alibaba_cloud",KHi="aws",jHi="azure",zHi="gcp",_Tc=UHi,yTc=KHi,bTc=jHi,ETc=zHi,STc=iw([UHi,KHi,jHi,zHi]),qHi="ip_tcp",$Hi="ip_udp",eYi="ip",tYi="unix",rYi="pipe",nYi="inproc",iYi="other",vTc=qHi,BTc=$Hi,wTc=eYi,TTc=tYi,RTc=rYi,NTc=nYi,DTc=iYi,kTc=iw([qHi,$Hi,eYi,tYi,rYi,nYi,iYi]),sYi="wifi",oYi="wired",aYi="cell",cYi="unavailable",lYi="unknown",xTc=sYi,GTc=oYi,FTc=aYi,ZTc=cYi,LTc=lYi,VTc=iw([sYi,oYi,aYi,cYi,lYi]),uYi="gprs",gYi="edge",AYi="umts",dYi="cdma",pYi="evdo_0",fYi="evdo_a",IYi="cdma2000_1xrtt",hYi="hsdpa",mYi="hsupa",CYi="hspa",_Yi="iden",yYi="evdo_b",bYi="lte",EYi="ehrpd",SYi="hspap",vYi="gsm",BYi="td_scdma",wYi="iwlan",TYi="nr",RYi="nrnsa",NYi="lte_ca",PTc=uYi,WTc=gYi,OTc=AYi,MTc=dYi,HTc=pYi,YTc=fYi,QTc=IYi,XTc=hYi,JTc=mYi,UTc=CYi,KTc=_Yi,jTc=yYi,zTc=bYi,qTc=EYi,$Tc=SYi,eRc=vYi,tRc=BYi,rRc=wYi,nRc=TYi,iRc=RYi,sRc=NYi,oRc=iw([uYi,gYi,AYi,dYi,pYi,fYi,IYi,hYi,mYi,CYi,_Yi,yYi,bYi,EYi,SYi,vYi,BYi,wYi,TYi,RYi,NYi]),DYi="1.0",kYi="1.1",xYi="2.0",GYi="SPDY",FYi="QUIC",aRc=DYi,cRc=kYi,lRc=xYi,uRc=GYi,gRc=FYi,ARc={HTTP_1_0:DYi,HTTP_1_1:kYi,HTTP_2_0:xYi,SPDY:GYi,QUIC:FYi},ZYi="queue",LYi="topic",dRc=ZYi,pRc=LYi,fRc=iw([ZYi,LYi]),VYi="receive",PYi="process",IRc=VYi,hRc=PYi,mRc=iw([VYi,PYi]),WYi=0,OYi=1,MYi=2,HYi=3,YYi=4,QYi=5,XYi=6,JYi=7,UYi=8,KYi=9,jYi=10,zYi=11,qYi=12,$Yi=13,eQi=14,tQi=15,rQi=16,CRc=WYi,_Rc=OYi,yRc=MYi,bRc=HYi,ERc=YYi,SRc=QYi,vRc=XYi,BRc=JYi,wRc=UYi,TRc=KYi,RRc=jYi,NRc=zYi,DRc=qYi,kRc=$Yi,xRc=eQi,GRc=tQi,FRc=rQi,ZRc={OK:WYi,CANCELLED:OYi,UNKNOWN:MYi,INVALID_ARGUMENT:HYi,DEADLINE_EXCEEDED:YYi,NOT_FOUND:QYi,ALREADY_EXISTS:XYi,PERMISSION_DENIED:JYi,RESOURCE_EXHAUSTED:UYi,FAILED_PRECONDITION:KYi,ABORTED:jYi,OUT_OF_RANGE:zYi,UNIMPLEMENTED:qYi,INTERNAL:$Yi,UNAVAILABLE:eQi,DATA_LOSS:tQi,UNAUTHENTICATED:rQi},nQi="SENT",iQi="RECEIVED",LRc=nQi,VRc=iQi,PRc=iw([nQi,iQi])});var oQi=bc(()=>{sQi()});var aQi,cQi,lQi,uQi,gQi,AQi,dQi,pQi,fQi,IQi,hQi,mQi,CQi,_Qi,yQi,bQi,EQi,SQi,vQi,BQi,wQi,TQi,RQi,NQi,DQi,kQi,xQi,GQi,FQi,ZQi,LQi,VQi,PQi,WQi,OQi,MQi,HQi,YQi,QQi,XQi,JQi,UQi,KQi,jQi,zQi,qQi,$Qi,eXi,tXi,rXi,nXi,iXi,sXi,oXi,aXi,cXi,lXi,uXi,gXi,AXi,dXi,pXi,fXi,IXi,hXi,mXi,CXi,_Xi,yXi,bXi,EXi,SXi,vXi,BXi,wXi,TXi,RXi,NXi,DXi,kXi,xXi,WRc,ORc,MRc,HRc,YRc,QRc,XRc,JRc,URc,KRc,jRc,zRc,qRc,$Rc,eNc,tNc,rNc,nNc,iNc,sNc,oNc,aNc,cNc,lNc,uNc,gNc,ANc,dNc,pNc,fNc,INc,hNc,mNc,CNc,_Nc,yNc,bNc,ENc,SNc,vNc,BNc,wNc,TNc,RNc,NNc,DNc,kNc,xNc,GNc,FNc,ZNc,LNc,VNc,PNc,WNc,ONc,MNc,HNc,YNc,QNc,XNc,JNc,UNc,KNc,jNc,zNc,qNc,$Nc,eDc,tDc,rDc,nDc,iDc,sDc,oDc,aDc,cDc,lDc,uDc,gDc,ADc,dDc,GXi,FXi,ZXi,LXi,pDc,fDc,IDc,hDc,mDc,VXi,PXi,WXi,OXi,MXi,HXi,YXi,QXi,XXi,JXi,UXi,KXi,jXi,zXi,qXi,$Xi,e4i,CDc,_Dc,yDc,bDc,EDc,SDc,vDc,BDc,wDc,TDc,RDc,NDc,DDc,kDc,xDc,GDc,FDc,ZDc,t4i,r4i,LDc,VDc,PDc,n4i,i4i,s4i,o4i,a4i,c4i,l4i,WDc,ODc,MDc,HDc,YDc,QDc,XDc,JDc,u4i,g4i,A4i,d4i,p4i,f4i,I4i,h4i,m4i,C4i,_4i,UDc,KDc,jDc,zDc,qDc,$Dc,ekc,tkc,rkc,nkc,ikc,skc,y4i,b4i,E4i,S4i,v4i,B4i,w4i,T4i,R4i,N4i,okc,akc,ckc,lkc,ukc,gkc,Akc,dkc,pkc,fkc,Ikc,D4i=bc(()=>{a9r();aQi="cloud.provider",cQi="cloud.account.id",lQi="cloud.region",uQi="cloud.availability_zone",gQi="cloud.platform",AQi="aws.ecs.container.arn",dQi="aws.ecs.cluster.arn",pQi="aws.ecs.launchtype",fQi="aws.ecs.task.arn",IQi="aws.ecs.task.family",hQi="aws.ecs.task.revision",mQi="aws.eks.cluster.arn",CQi="aws.log.group.names",_Qi="aws.log.group.arns",yQi="aws.log.stream.names",bQi="aws.log.stream.arns",EQi="container.name",SQi="container.id",vQi="container.runtime",BQi="container.image.name",wQi="container.image.tag",TQi="deployment.environment",RQi="device.id",NQi="device.model.identifier",DQi="device.model.name",kQi="faas.name",xQi="faas.id",GQi="faas.version",FQi="faas.instance",ZQi="faas.max_memory",LQi="host.id",VQi="host.name",PQi="host.type",WQi="host.arch",OQi="host.image.name",MQi="host.image.id",HQi="host.image.version",YQi="k8s.cluster.name",QQi="k8s.node.name",XQi="k8s.node.uid",JQi="k8s.namespace.name",UQi="k8s.pod.uid",KQi="k8s.pod.name",jQi="k8s.container.name",zQi="k8s.replicaset.uid",qQi="k8s.replicaset.name",$Qi="k8s.deployment.uid",eXi="k8s.deployment.name",tXi="k8s.statefulset.uid",rXi="k8s.statefulset.name",nXi="k8s.daemonset.uid",iXi="k8s.daemonset.name",sXi="k8s.job.uid",oXi="k8s.job.name",aXi="k8s.cronjob.uid",cXi="k8s.cronjob.name",lXi="os.type",uXi="os.description",gXi="os.name",AXi="os.version",dXi="process.pid",pXi="process.executable.name",fXi="process.executable.path",IXi="process.command",hXi="process.command_line",mXi="process.command_args",CXi="process.owner",_Xi="process.runtime.name",yXi="process.runtime.version",bXi="process.runtime.description",EXi="service.name",SXi="service.namespace",vXi="service.instance.id",BXi="service.version",wXi="telemetry.sdk.name",TXi="telemetry.sdk.language",RXi="telemetry.sdk.version",NXi="telemetry.auto.version",DXi="webengine.name",kXi="webengine.version",xXi="webengine.description",WRc=aQi,ORc=cQi,MRc=lQi,HRc=uQi,YRc=gQi,QRc=AQi,XRc=dQi,JRc=pQi,URc=fQi,KRc=IQi,jRc=hQi,zRc=mQi,qRc=CQi,$Rc=_Qi,eNc=yQi,tNc=bQi,rNc=EQi,nNc=SQi,iNc=vQi,sNc=BQi,oNc=wQi,aNc=TQi,cNc=RQi,lNc=NQi,uNc=DQi,gNc=kQi,ANc=xQi,dNc=GQi,pNc=FQi,fNc=ZQi,INc=LQi,hNc=VQi,mNc=PQi,CNc=WQi,_Nc=OQi,yNc=MQi,bNc=HQi,ENc=YQi,SNc=QQi,vNc=XQi,BNc=JQi,wNc=UQi,TNc=KQi,RNc=jQi,NNc=zQi,DNc=qQi,kNc=$Qi,xNc=eXi,GNc=tXi,FNc=rXi,ZNc=nXi,LNc=iXi,VNc=sXi,PNc=oXi,WNc=aXi,ONc=cXi,MNc=lXi,HNc=uXi,YNc=gXi,QNc=AXi,XNc=dXi,JNc=pXi,UNc=fXi,KNc=IXi,jNc=hXi,zNc=mXi,qNc=CXi,$Nc=_Xi,eDc=yXi,tDc=bXi,rDc=EXi,nDc=SXi,iDc=vXi,sDc=BXi,oDc=wXi,aDc=TXi,cDc=RXi,lDc=NXi,uDc=DXi,gDc=kXi,ADc=xXi,dDc=iw([aQi,cQi,lQi,uQi,gQi,AQi,dQi,pQi,fQi,IQi,hQi,mQi,CQi,_Qi,yQi,bQi,EQi,SQi,vQi,BQi,wQi,TQi,RQi,NQi,DQi,kQi,xQi,GQi,FQi,ZQi,LQi,VQi,PQi,WQi,OQi,MQi,HQi,YQi,QQi,XQi,JQi,UQi,KQi,jQi,zQi,qQi,$Qi,eXi,tXi,rXi,nXi,iXi,sXi,oXi,aXi,cXi,lXi,uXi,gXi,AXi,dXi,pXi,fXi,IXi,hXi,mXi,CXi,_Xi,yXi,bXi,EXi,SXi,vXi,BXi,wXi,TXi,RXi,NXi,DXi,kXi,xXi]),GXi="alibaba_cloud",FXi="aws",ZXi="azure",LXi="gcp",pDc=GXi,fDc=FXi,IDc=ZXi,hDc=LXi,mDc=iw([GXi,FXi,ZXi,LXi]),VXi="alibaba_cloud_ecs",PXi="alibaba_cloud_fc",WXi="aws_ec2",OXi="aws_ecs",MXi="aws_eks",HXi="aws_lambda",YXi="aws_elastic_beanstalk",QXi="azure_vm",XXi="azure_container_instances",JXi="azure_aks",UXi="azure_functions",KXi="azure_app_service",jXi="gcp_compute_engine",zXi="gcp_cloud_run",qXi="gcp_kubernetes_engine",$Xi="gcp_cloud_functions",e4i="gcp_app_engine",CDc=VXi,_Dc=PXi,yDc=WXi,bDc=OXi,EDc=MXi,SDc=HXi,vDc=YXi,BDc=QXi,wDc=XXi,TDc=JXi,RDc=UXi,NDc=KXi,DDc=jXi,kDc=zXi,xDc=qXi,GDc=$Xi,FDc=e4i,ZDc=iw([VXi,PXi,WXi,OXi,MXi,HXi,YXi,QXi,XXi,JXi,UXi,KXi,jXi,zXi,qXi,$Xi,e4i]),t4i="ec2",r4i="fargate",LDc=t4i,VDc=r4i,PDc=iw([t4i,r4i]),n4i="amd64",i4i="arm32",s4i="arm64",o4i="ia64",a4i="ppc32",c4i="ppc64",l4i="x86",WDc=n4i,ODc=i4i,MDc=s4i,HDc=o4i,YDc=a4i,QDc=c4i,XDc=l4i,JDc=iw([n4i,i4i,s4i,o4i,a4i,c4i,l4i]),u4i="windows",g4i="linux",A4i="darwin",d4i="freebsd",p4i="netbsd",f4i="openbsd",I4i="dragonflybsd",h4i="hpux",m4i="aix",C4i="solaris",_4i="z_os",UDc=u4i,KDc=g4i,jDc=A4i,zDc=d4i,qDc=p4i,$Dc=f4i,ekc=I4i,tkc=h4i,rkc=m4i,nkc=C4i,ikc=_4i,skc=iw([u4i,g4i,A4i,d4i,p4i,f4i,I4i,h4i,m4i,C4i,_4i]),y4i="cpp",b4i="dotnet",E4i="erlang",S4i="go",v4i="java",B4i="nodejs",w4i="php",T4i="python",R4i="ruby",N4i="webjs",okc=y4i,akc=b4i,ckc=E4i,lkc=S4i,ukc=v4i,gkc=B4i,Akc=w4i,dkc=T4i,pkc=R4i,fkc=N4i,Ikc=iw([y4i,b4i,E4i,S4i,v4i,B4i,w4i,T4i,R4i,N4i])});var k4i=bc(()=>{D4i()});var hkc,mkc,Ckc,_kc,ykc,bkc,Ekc,Skc,vkc,Bkc,wkc,Tkc,Rkc,Nkc,Dkc,kkc,xkc,Gkc,Fkc,Zkc,Lkc,Vkc,Pkc,Wkc,Okc,Mkc,Hkc,Ykc,Qkc,Xkc,Jkc,Ukc,Kkc,jkc,zkc,qkc,$kc,exc,txc,rxc,nxc,ixc,sxc,oxc,axc,cxc,lxc,uxc,gxc,Axc,dxc,pxc,fxc,Ixc,hxc,mxc,Cxc,_xc,yxc,bxc,Exc,Sxc,vxc,Bxc,wxc,Txc,Rxc,Nxc,Dxc,kxc,xxc,Gxc,Fxc,Zxc,Lxc,Vxc,Pxc,Wxc,Oxc,Mxc,Hxc,Yxc,Qxc,Xxc,Jxc,Uxc,Kxc,jxc,zxc,qxc,$xc,eGc,tGc,rGc,nGc,iGc,sGc,oGc,aGc,cGc,lGc,uGc,gGc,AGc,dGc,pGc,fGc,IGc,hGc,mGc,x4i=bc(()=>{hkc="aspnetcore.rate_limiting.result",mkc="acquired",Ckc="endpoint_limiter",_kc="global_limiter",ykc="request_canceled",bkc="telemetry.sdk.language",Ekc="cpp",Skc="dotnet",vkc="erlang",Bkc="go",wkc="java",Tkc="nodejs",Rkc="php",Nkc="python",Dkc="ruby",kkc="rust",xkc="swift",Gkc="webjs",Fkc="telemetry.sdk.name",Zkc="telemetry.sdk.version",Lkc="aspnetcore.diagnostics.handler.type",Vkc="aspnetcore.diagnostics.exception.result",Pkc="aborted",Wkc="handled",Okc="skipped",Mkc="unhandled",Hkc="aspnetcore.rate_limiting.policy",Ykc="aspnetcore.request.is_unhandled",Qkc="aspnetcore.routing.is_fallback",Xkc="aspnetcore.routing.match_status",Jkc="failure",Ukc="success",Kkc="client.address",jkc="client.port",zkc="error.type",qkc="_OTHER",$kc="exception.escaped",exc="exception.message",txc="exception.stacktrace",rxc="exception.type",nxc=function(e){return"http.request.header."+e},ixc="http.request.method",sxc="_OTHER",oxc="CONNECT",axc="DELETE",cxc="GET",lxc="HEAD",uxc="OPTIONS",gxc="PATCH",Axc="POST",dxc="PUT",pxc="TRACE",fxc="http.request.method_original",Ixc="http.request.resend_count",hxc=function(e){return"http.response.header."+e},mxc="http.response.status_code",Cxc="http.route",_xc="jvm.gc.action",yxc="jvm.gc.name",bxc="jvm.memory.pool.name",Exc="jvm.memory.type",Sxc="heap",vxc="non_heap",Bxc="jvm.thread.daemon",wxc="jvm.thread.state",Txc="blocked",Rxc="new",Nxc="runnable",Dxc="terminated",kxc="timed_waiting",xxc="waiting",Gxc="network.local.address",Fxc="network.local.port",Zxc="network.peer.address",Lxc="network.peer.port",Vxc="network.protocol.name",Pxc="network.protocol.version",Wxc="network.transport",Oxc="pipe",Mxc="quic",Hxc="tcp",Yxc="udp",Qxc="unix",Xxc="network.type",Jxc="ipv4",Uxc="ipv6",Kxc="otel.scope.name",jxc="otel.scope.version",zxc="otel.status_code",qxc="ERROR",$xc="OK",eGc="otel.status_description",tGc="server.address",rGc="server.port",nGc="service.name",iGc="service.version",sGc="signalr.connection.status",oGc="app_shutdown",aGc="normal_closure",cGc="timeout",lGc="signalr.transport",uGc="long_polling",gGc="server_sent_events",AGc="web_sockets",dGc="url.fragment",pGc="url.full",fGc="url.path",IGc="url.query",hGc="url.scheme",mGc="user_agent.original"});var CGc,_Gc,yGc,bGc,EGc,SGc,vGc,BGc,wGc,TGc,RGc,NGc,DGc,kGc,xGc,GGc,FGc,ZGc,LGc,VGc,PGc,WGc,OGc,MGc,HGc,YGc,QGc,XGc,JGc,UGc,KGc,G4i=bc(()=>{CGc="aspnetcore.diagnostics.exceptions",_Gc="aspnetcore.rate_limiting.active_request_leases",yGc="aspnetcore.rate_limiting.queued_requests",bGc="aspnetcore.rate_limiting.request.time_in_queue",EGc="aspnetcore.rate_limiting.request_lease.duration",SGc="aspnetcore.rate_limiting.requests",vGc="aspnetcore.routing.match_attempts",BGc="http.client.request.duration",wGc="http.server.request.duration",TGc="jvm.class.count",RGc="jvm.class.loaded",NGc="jvm.class.unloaded",DGc="jvm.cpu.count",kGc="jvm.cpu.recent_utilization",xGc="jvm.cpu.time",GGc="jvm.gc.duration",FGc="jvm.memory.committed",ZGc="jvm.memory.limit",LGc="jvm.memory.used",VGc="jvm.memory.used_after_last_gc",PGc="jvm.thread.count",WGc="kestrel.active_connections",OGc="kestrel.active_tls_handshakes",MGc="kestrel.connection.duration",HGc="kestrel.queued_connections",YGc="kestrel.queued_requests",QGc="kestrel.rejected_connections",XGc="kestrel.tls_handshake.duration",JGc="kestrel.upgraded_connections",UGc="signalr.server.active_connections",KGc="signalr.server.connection.duration"});var F4i={};sI(F4i,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>Pkc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>Wkc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>Okc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>Mkc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>mkc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>Ckc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>_kc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>ykc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>Jkc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>Ukc,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>Vkc,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>Lkc,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>Hkc,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>hkc,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>Ykc,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>Qkc,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>Xkc,ATTR_CLIENT_ADDRESS:()=>Kkc,ATTR_CLIENT_PORT:()=>jkc,ATTR_ERROR_TYPE:()=>zkc,ATTR_EXCEPTION_ESCAPED:()=>$kc,ATTR_EXCEPTION_MESSAGE:()=>exc,ATTR_EXCEPTION_STACKTRACE:()=>txc,ATTR_EXCEPTION_TYPE:()=>rxc,ATTR_HTTP_REQUEST_HEADER:()=>nxc,ATTR_HTTP_REQUEST_METHOD:()=>ixc,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>fxc,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>Ixc,ATTR_HTTP_RESPONSE_HEADER:()=>hxc,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>mxc,ATTR_HTTP_ROUTE:()=>Cxc,ATTR_JVM_GC_ACTION:()=>_xc,ATTR_JVM_GC_NAME:()=>yxc,ATTR_JVM_MEMORY_POOL_NAME:()=>bxc,ATTR_JVM_MEMORY_TYPE:()=>Exc,ATTR_JVM_THREAD_DAEMON:()=>Bxc,ATTR_JVM_THREAD_STATE:()=>wxc,ATTR_NETWORK_LOCAL_ADDRESS:()=>Gxc,ATTR_NETWORK_LOCAL_PORT:()=>Fxc,ATTR_NETWORK_PEER_ADDRESS:()=>Zxc,ATTR_NETWORK_PEER_PORT:()=>Lxc,ATTR_NETWORK_PROTOCOL_NAME:()=>Vxc,ATTR_NETWORK_PROTOCOL_VERSION:()=>Pxc,ATTR_NETWORK_TRANSPORT:()=>Wxc,ATTR_NETWORK_TYPE:()=>Xxc,ATTR_OTEL_SCOPE_NAME:()=>Kxc,ATTR_OTEL_SCOPE_VERSION:()=>jxc,ATTR_OTEL_STATUS_CODE:()=>zxc,ATTR_OTEL_STATUS_DESCRIPTION:()=>eGc,ATTR_SERVER_ADDRESS:()=>tGc,ATTR_SERVER_PORT:()=>rGc,ATTR_SERVICE_NAME:()=>nGc,ATTR_SERVICE_VERSION:()=>iGc,ATTR_SIGNALR_CONNECTION_STATUS:()=>sGc,ATTR_SIGNALR_TRANSPORT:()=>lGc,ATTR_TELEMETRY_SDK_LANGUAGE:()=>bkc,ATTR_TELEMETRY_SDK_NAME:()=>Fkc,ATTR_TELEMETRY_SDK_VERSION:()=>Zkc,ATTR_URL_FRAGMENT:()=>dGc,ATTR_URL_FULL:()=>pGc,ATTR_URL_PATH:()=>fGc,ATTR_URL_QUERY:()=>IGc,ATTR_URL_SCHEME:()=>hGc,ATTR_USER_AGENT_ORIGINAL:()=>mGc,AWSECSLAUNCHTYPEVALUES_EC2:()=>LDc,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>VDc,AwsEcsLaunchtypeValues:()=>PDc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>CDc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>_Dc,CLOUDPLATFORMVALUES_AWS_EC2:()=>yDc,CLOUDPLATFORMVALUES_AWS_ECS:()=>bDc,CLOUDPLATFORMVALUES_AWS_EKS:()=>EDc,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>vDc,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>SDc,CLOUDPLATFORMVALUES_AZURE_AKS:()=>TDc,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>NDc,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>wDc,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>RDc,CLOUDPLATFORMVALUES_AZURE_VM:()=>BDc,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>FDc,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>GDc,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>kDc,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>DDc,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>xDc,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>pDc,CLOUDPROVIDERVALUES_AWS:()=>fDc,CLOUDPROVIDERVALUES_AZURE:()=>IDc,CLOUDPROVIDERVALUES_GCP:()=>hDc,CloudPlatformValues:()=>ZDc,CloudProviderValues:()=>mDc,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>qwc,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>oTc,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>$wc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>sTc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>tTc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>cTc,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>rTc,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>eTc,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>aTc,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>iTc,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>nTc,DBSYSTEMVALUES_ADABAS:()=>ywc,DBSYSTEMVALUES_CACHE:()=>_wc,DBSYSTEMVALUES_CASSANDRA:()=>Vwc,DBSYSTEMVALUES_CLOUDSCAPE:()=>Awc,DBSYSTEMVALUES_COCKROACHDB:()=>jwc,DBSYSTEMVALUES_COLDFUSION:()=>Lwc,DBSYSTEMVALUES_COSMOSDB:()=>Ywc,DBSYSTEMVALUES_COUCHBASE:()=>Mwc,DBSYSTEMVALUES_COUCHDB:()=>Hwc,DBSYSTEMVALUES_DB2:()=>cwc,DBSYSTEMVALUES_DERBY:()=>Ewc,DBSYSTEMVALUES_DYNAMODB:()=>Qwc,DBSYSTEMVALUES_EDB:()=>Cwc,DBSYSTEMVALUES_ELASTICSEARCH:()=>Uwc,DBSYSTEMVALUES_FILEMAKER:()=>Swc,DBSYSTEMVALUES_FIREBIRD:()=>bwc,DBSYSTEMVALUES_FIRSTSQL:()=>mwc,DBSYSTEMVALUES_GEODE:()=>Jwc,DBSYSTEMVALUES_H2:()=>Zwc,DBSYSTEMVALUES_HANADB:()=>Iwc,DBSYSTEMVALUES_HBASE:()=>Pwc,DBSYSTEMVALUES_HIVE:()=>gwc,DBSYSTEMVALUES_HSQLDB:()=>dwc,DBSYSTEMVALUES_INFORMIX:()=>vwc,DBSYSTEMVALUES_INGRES:()=>hwc,DBSYSTEMVALUES_INSTANTDB:()=>Bwc,DBSYSTEMVALUES_INTERBASE:()=>wwc,DBSYSTEMVALUES_MARIADB:()=>Twc,DBSYSTEMVALUES_MAXDB:()=>fwc,DBSYSTEMVALUES_MEMCACHED:()=>Kwc,DBSYSTEMVALUES_MONGODB:()=>Wwc,DBSYSTEMVALUES_MSSQL:()=>swc,DBSYSTEMVALUES_MYSQL:()=>owc,DBSYSTEMVALUES_NEO4J:()=>Xwc,DBSYSTEMVALUES_NETEZZA:()=>Rwc,DBSYSTEMVALUES_ORACLE:()=>awc,DBSYSTEMVALUES_OTHER_SQL:()=>iwc,DBSYSTEMVALUES_PERVASIVE:()=>Nwc,DBSYSTEMVALUES_POINTBASE:()=>Dwc,DBSYSTEMVALUES_POSTGRESQL:()=>lwc,DBSYSTEMVALUES_PROGRESS:()=>pwc,DBSYSTEMVALUES_REDIS:()=>Owc,DBSYSTEMVALUES_REDSHIFT:()=>uwc,DBSYSTEMVALUES_SQLITE:()=>kwc,DBSYSTEMVALUES_SYBASE:()=>xwc,DBSYSTEMVALUES_TERADATA:()=>Gwc,DBSYSTEMVALUES_VERTICA:()=>Fwc,DbCassandraConsistencyLevelValues:()=>lTc,DbSystemValues:()=>zwc,ERROR_TYPE_VALUE_OTHER:()=>qkc,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>mTc,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>hTc,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>ITc,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>_Tc,FAASINVOKEDPROVIDERVALUES_AWS:()=>yTc,FAASINVOKEDPROVIDERVALUES_AZURE:()=>bTc,FAASINVOKEDPROVIDERVALUES_GCP:()=>ETc,FAASTRIGGERVALUES_DATASOURCE:()=>uTc,FAASTRIGGERVALUES_HTTP:()=>gTc,FAASTRIGGERVALUES_OTHER:()=>pTc,FAASTRIGGERVALUES_PUBSUB:()=>ATc,FAASTRIGGERVALUES_TIMER:()=>dTc,FaasDocumentOperationValues:()=>CTc,FaasInvokedProviderValues:()=>STc,FaasTriggerValues:()=>fTc,HOSTARCHVALUES_AMD64:()=>WDc,HOSTARCHVALUES_ARM32:()=>ODc,HOSTARCHVALUES_ARM64:()=>MDc,HOSTARCHVALUES_IA64:()=>HDc,HOSTARCHVALUES_PPC32:()=>YDc,HOSTARCHVALUES_PPC64:()=>QDc,HOSTARCHVALUES_X86:()=>XDc,HTTPFLAVORVALUES_HTTP_1_0:()=>aRc,HTTPFLAVORVALUES_HTTP_1_1:()=>cRc,HTTPFLAVORVALUES_HTTP_2_0:()=>lRc,HTTPFLAVORVALUES_QUIC:()=>gRc,HTTPFLAVORVALUES_SPDY:()=>uRc,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>oxc,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>axc,HTTP_REQUEST_METHOD_VALUE_GET:()=>cxc,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>lxc,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>uxc,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>sxc,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>gxc,HTTP_REQUEST_METHOD_VALUE_POST:()=>Axc,HTTP_REQUEST_METHOD_VALUE_PUT:()=>dxc,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>pxc,HostArchValues:()=>JDc,HttpFlavorValues:()=>ARc,JVM_MEMORY_TYPE_VALUE_HEAP:()=>Sxc,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>vxc,JVM_THREAD_STATE_VALUE_BLOCKED:()=>Txc,JVM_THREAD_STATE_VALUE_NEW:()=>Rxc,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>Nxc,JVM_THREAD_STATE_VALUE_TERMINATED:()=>Dxc,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>kxc,JVM_THREAD_STATE_VALUE_WAITING:()=>xxc,MESSAGETYPEVALUES_RECEIVED:()=>VRc,MESSAGETYPEVALUES_SENT:()=>LRc,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>dRc,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>pRc,MESSAGINGOPERATIONVALUES_PROCESS:()=>hRc,MESSAGINGOPERATIONVALUES_RECEIVE:()=>IRc,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>CGc,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>_Gc,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>yGc,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>SGc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>EGc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>bGc,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>vGc,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>BGc,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>wGc,METRIC_JVM_CLASS_COUNT:()=>TGc,METRIC_JVM_CLASS_LOADED:()=>RGc,METRIC_JVM_CLASS_UNLOADED:()=>NGc,METRIC_JVM_CPU_COUNT:()=>DGc,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>kGc,METRIC_JVM_CPU_TIME:()=>xGc,METRIC_JVM_GC_DURATION:()=>GGc,METRIC_JVM_MEMORY_COMMITTED:()=>FGc,METRIC_JVM_MEMORY_LIMIT:()=>ZGc,METRIC_JVM_MEMORY_USED:()=>LGc,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>VGc,METRIC_JVM_THREAD_COUNT:()=>PGc,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>WGc,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>OGc,METRIC_KESTREL_CONNECTION_DURATION:()=>MGc,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>HGc,METRIC_KESTREL_QUEUED_REQUESTS:()=>YGc,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>QGc,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>XGc,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>JGc,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>UGc,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>KGc,MessageTypeValues:()=>PRc,MessagingDestinationKindValues:()=>fRc,MessagingOperationValues:()=>mRc,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>MTc,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>QTc,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>WTc,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>qTc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>HTc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>YTc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>jTc,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>PTc,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>eRc,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>XTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>UTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>$Tc,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>JTc,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>KTc,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>rRc,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>zTc,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>sRc,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>nRc,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>iRc,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>tRc,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>OTc,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>FTc,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>ZTc,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>LTc,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>xTc,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>GTc,NETTRANSPORTVALUES_INPROC:()=>NTc,NETTRANSPORTVALUES_IP:()=>wTc,NETTRANSPORTVALUES_IP_TCP:()=>vTc,NETTRANSPORTVALUES_IP_UDP:()=>BTc,NETTRANSPORTVALUES_OTHER:()=>DTc,NETTRANSPORTVALUES_PIPE:()=>RTc,NETTRANSPORTVALUES_UNIX:()=>TTc,NETWORK_TRANSPORT_VALUE_PIPE:()=>Oxc,NETWORK_TRANSPORT_VALUE_QUIC:()=>Mxc,NETWORK_TRANSPORT_VALUE_TCP:()=>Hxc,NETWORK_TRANSPORT_VALUE_UDP:()=>Yxc,NETWORK_TRANSPORT_VALUE_UNIX:()=>Qxc,NETWORK_TYPE_VALUE_IPV4:()=>Jxc,NETWORK_TYPE_VALUE_IPV6:()=>Uxc,NetHostConnectionSubtypeValues:()=>oRc,NetHostConnectionTypeValues:()=>VTc,NetTransportValues:()=>kTc,OSTYPEVALUES_AIX:()=>rkc,OSTYPEVALUES_DARWIN:()=>jDc,OSTYPEVALUES_DRAGONFLYBSD:()=>ekc,OSTYPEVALUES_FREEBSD:()=>zDc,OSTYPEVALUES_HPUX:()=>tkc,OSTYPEVALUES_LINUX:()=>KDc,OSTYPEVALUES_NETBSD:()=>qDc,OSTYPEVALUES_OPENBSD:()=>$Dc,OSTYPEVALUES_SOLARIS:()=>nkc,OSTYPEVALUES_WINDOWS:()=>UDc,OSTYPEVALUES_Z_OS:()=>ikc,OTEL_STATUS_CODE_VALUE_ERROR:()=>qxc,OTEL_STATUS_CODE_VALUE_OK:()=>$xc,OsTypeValues:()=>skc,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>RRc,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>vRc,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>_Rc,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>GRc,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>ERc,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>TRc,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>kRc,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>bRc,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>SRc,RPCGRPCSTATUSCODEVALUES_OK:()=>CRc,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>NRc,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>BRc,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>wRc,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>FRc,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>xRc,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>DRc,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>yRc,RpcGrpcStatusCodeValues:()=>ZRc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>ABc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>SBc,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>lBc,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>sBc,SEMATTRS_AWS_DYNAMODB_COUNT:()=>bBc,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>hBc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>fBc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>vBc,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>dBc,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>oBc,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>gBc,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>IBc,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>uBc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>aBc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>cBc,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>EBc,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>CBc,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>_Bc,SEMATTRS_AWS_DYNAMODB_SELECT:()=>pBc,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>mBc,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>iBc,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>yBc,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>LSc,SEMATTRS_CODE_FILEPATH:()=>Ovc,SEMATTRS_CODE_FUNCTION:()=>Pvc,SEMATTRS_CODE_LINENO:()=>Mvc,SEMATTRS_CODE_NAMESPACE:()=>Wvc,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>USc,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>$Sc,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>qSc,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>jSc,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>XSc,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>JSc,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>zSc,SEMATTRS_DB_CASSANDRA_TABLE:()=>KSc,SEMATTRS_DB_CONNECTION_STRING:()=>PSc,SEMATTRS_DB_HBASE_NAMESPACE:()=>evc,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>OSc,SEMATTRS_DB_MONGODB_COLLECTION:()=>rvc,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>QSc,SEMATTRS_DB_NAME:()=>MSc,SEMATTRS_DB_OPERATION:()=>YSc,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>tvc,SEMATTRS_DB_SQL_TABLE:()=>nvc,SEMATTRS_DB_STATEMENT:()=>HSc,SEMATTRS_DB_SYSTEM:()=>VSc,SEMATTRS_DB_USER:()=>WSc,SEMATTRS_ENDUSER_ID:()=>Gvc,SEMATTRS_ENDUSER_ROLE:()=>Fvc,SEMATTRS_ENDUSER_SCOPE:()=>Zvc,SEMATTRS_EXCEPTION_ESCAPED:()=>avc,SEMATTRS_EXCEPTION_MESSAGE:()=>svc,SEMATTRS_EXCEPTION_STACKTRACE:()=>ovc,SEMATTRS_EXCEPTION_TYPE:()=>ivc,SEMATTRS_FAAS_COLDSTART:()=>Ivc,SEMATTRS_FAAS_CRON:()=>fvc,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>uvc,SEMATTRS_FAAS_DOCUMENT_NAME:()=>dvc,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>gvc,SEMATTRS_FAAS_DOCUMENT_TIME:()=>Avc,SEMATTRS_FAAS_EXECUTION:()=>lvc,SEMATTRS_FAAS_INVOKED_NAME:()=>hvc,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>mvc,SEMATTRS_FAAS_INVOKED_REGION:()=>Cvc,SEMATTRS_FAAS_TIME:()=>pvc,SEMATTRS_FAAS_TRIGGER:()=>cvc,SEMATTRS_HTTP_CLIENT_IP:()=>nBc,SEMATTRS_HTTP_FLAVOR:()=>Kvc,SEMATTRS_HTTP_HOST:()=>Xvc,SEMATTRS_HTTP_METHOD:()=>Hvc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>zvc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>qvc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>$vc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>eBc,SEMATTRS_HTTP_ROUTE:()=>rBc,SEMATTRS_HTTP_SCHEME:()=>Jvc,SEMATTRS_HTTP_SERVER_NAME:()=>tBc,SEMATTRS_HTTP_STATUS_CODE:()=>Uvc,SEMATTRS_HTTP_TARGET:()=>Qvc,SEMATTRS_HTTP_URL:()=>Yvc,SEMATTRS_HTTP_USER_AGENT:()=>jvc,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>twc,SEMATTRS_MESSAGE_ID:()=>ewc,SEMATTRS_MESSAGE_TYPE:()=>$Bc,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>rwc,SEMATTRS_MESSAGING_CONSUMER_ID:()=>VBc,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>GBc,SEMATTRS_MESSAGING_DESTINATION:()=>wBc,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>TBc,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>MBc,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>OBc,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>WBc,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>HBc,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>YBc,SEMATTRS_MESSAGING_MESSAGE_ID:()=>xBc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>ZBc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>FBc,SEMATTRS_MESSAGING_OPERATION:()=>LBc,SEMATTRS_MESSAGING_PROTOCOL:()=>NBc,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>DBc,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>PBc,SEMATTRS_MESSAGING_SYSTEM:()=>BBc,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>RBc,SEMATTRS_MESSAGING_URL:()=>kBc,SEMATTRS_NET_HOST_CARRIER_ICC:()=>kvc,SEMATTRS_NET_HOST_CARRIER_MCC:()=>Nvc,SEMATTRS_NET_HOST_CARRIER_MNC:()=>Dvc,SEMATTRS_NET_HOST_CARRIER_NAME:()=>Rvc,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>Tvc,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>wvc,SEMATTRS_NET_HOST_IP:()=>Svc,SEMATTRS_NET_HOST_NAME:()=>Bvc,SEMATTRS_NET_HOST_PORT:()=>vvc,SEMATTRS_NET_PEER_IP:()=>yvc,SEMATTRS_NET_PEER_NAME:()=>Evc,SEMATTRS_NET_PEER_PORT:()=>bvc,SEMATTRS_NET_TRANSPORT:()=>_vc,SEMATTRS_PEER_SERVICE:()=>xvc,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>UBc,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>zBc,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>qBc,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>jBc,SEMATTRS_RPC_JSONRPC_VERSION:()=>KBc,SEMATTRS_RPC_METHOD:()=>JBc,SEMATTRS_RPC_SERVICE:()=>XBc,SEMATTRS_RPC_SYSTEM:()=>QBc,SEMATTRS_THREAD_ID:()=>Lvc,SEMATTRS_THREAD_NAME:()=>Vvc,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>XRc,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>QRc,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>JRc,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>URc,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>KRc,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>jRc,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>zRc,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>$Rc,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>qRc,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>tNc,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>eNc,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>ORc,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>HRc,SEMRESATTRS_CLOUD_PLATFORM:()=>YRc,SEMRESATTRS_CLOUD_PROVIDER:()=>WRc,SEMRESATTRS_CLOUD_REGION:()=>MRc,SEMRESATTRS_CONTAINER_ID:()=>nNc,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>sNc,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>oNc,SEMRESATTRS_CONTAINER_NAME:()=>rNc,SEMRESATTRS_CONTAINER_RUNTIME:()=>iNc,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>aNc,SEMRESATTRS_DEVICE_ID:()=>cNc,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>lNc,SEMRESATTRS_DEVICE_MODEL_NAME:()=>uNc,SEMRESATTRS_FAAS_ID:()=>ANc,SEMRESATTRS_FAAS_INSTANCE:()=>pNc,SEMRESATTRS_FAAS_MAX_MEMORY:()=>fNc,SEMRESATTRS_FAAS_NAME:()=>gNc,SEMRESATTRS_FAAS_VERSION:()=>dNc,SEMRESATTRS_HOST_ARCH:()=>CNc,SEMRESATTRS_HOST_ID:()=>INc,SEMRESATTRS_HOST_IMAGE_ID:()=>yNc,SEMRESATTRS_HOST_IMAGE_NAME:()=>_Nc,SEMRESATTRS_HOST_IMAGE_VERSION:()=>bNc,SEMRESATTRS_HOST_NAME:()=>hNc,SEMRESATTRS_HOST_TYPE:()=>mNc,SEMRESATTRS_K8S_CLUSTER_NAME:()=>ENc,SEMRESATTRS_K8S_CONTAINER_NAME:()=>RNc,SEMRESATTRS_K8S_CRONJOB_NAME:()=>ONc,SEMRESATTRS_K8S_CRONJOB_UID:()=>WNc,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>LNc,SEMRESATTRS_K8S_DAEMONSET_UID:()=>ZNc,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>xNc,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>kNc,SEMRESATTRS_K8S_JOB_NAME:()=>PNc,SEMRESATTRS_K8S_JOB_UID:()=>VNc,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>BNc,SEMRESATTRS_K8S_NODE_NAME:()=>SNc,SEMRESATTRS_K8S_NODE_UID:()=>vNc,SEMRESATTRS_K8S_POD_NAME:()=>TNc,SEMRESATTRS_K8S_POD_UID:()=>wNc,SEMRESATTRS_K8S_REPLICASET_NAME:()=>DNc,SEMRESATTRS_K8S_REPLICASET_UID:()=>NNc,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>FNc,SEMRESATTRS_K8S_STATEFULSET_UID:()=>GNc,SEMRESATTRS_OS_DESCRIPTION:()=>HNc,SEMRESATTRS_OS_NAME:()=>YNc,SEMRESATTRS_OS_TYPE:()=>MNc,SEMRESATTRS_OS_VERSION:()=>QNc,SEMRESATTRS_PROCESS_COMMAND:()=>KNc,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>zNc,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>jNc,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>JNc,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>UNc,SEMRESATTRS_PROCESS_OWNER:()=>qNc,SEMRESATTRS_PROCESS_PID:()=>XNc,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>tDc,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>$Nc,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>eDc,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>iDc,SEMRESATTRS_SERVICE_NAME:()=>rDc,SEMRESATTRS_SERVICE_NAMESPACE:()=>nDc,SEMRESATTRS_SERVICE_VERSION:()=>sDc,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>lDc,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>aDc,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>oDc,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>cDc,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>ADc,SEMRESATTRS_WEBENGINE_NAME:()=>uDc,SEMRESATTRS_WEBENGINE_VERSION:()=>gDc,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>oGc,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>aGc,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>cGc,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>uGc,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>gGc,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>AGc,SemanticAttributes:()=>nwc,SemanticResourceAttributes:()=>dDc,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>okc,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>akc,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>ckc,TELEMETRYSDKLANGUAGEVALUES_GO:()=>lkc,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>ukc,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>gkc,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>Akc,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>dkc,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>pkc,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>fkc,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>Ekc,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>Skc,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>vkc,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>Bkc,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>wkc,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>Tkc,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>Rkc,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>Nkc,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>Dkc,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>kkc,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>xkc,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>Gkc,TelemetrySdkLanguageValues:()=>Ikc});var Z4i=bc(()=>{oQi();k4i();x4i();G4i()});var L4i=H(evt=>{"use strict";Object.defineProperty(evt,"__esModule",{value:!0});evt.SDK_INFO=void 0;var jGc=o9r(),LKe=(Z4i(),vi(F4i));evt.SDK_INFO={[LKe.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[LKe.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[LKe.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:LKe.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[LKe.SEMRESATTRS_TELEMETRY_SDK_VERSION]:jGc.VERSION}});var V4i=H(tvt=>{"use strict";Object.defineProperty(tvt,"__esModule",{value:!0});tvt.unrefTimer=void 0;function zGc(e){e.unref()}tvt.unrefTimer=zGc});var W4i=H(gD=>{"use strict";Object.defineProperty(gD,"__esModule",{value:!0});gD.unrefTimer=gD.SDK_INFO=gD.otperformance=gD.RandomIdGenerator=gD.hexToBase64=gD._globalThis=gD.getEnv=gD.getEnvWithoutDefaults=void 0;var P4i=c3i();Object.defineProperty(gD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return P4i.getEnvWithoutDefaults}});Object.defineProperty(gD,"getEnv",{enumerable:!0,get:function(){return P4i.getEnv}});var qGc=l3i();Object.defineProperty(gD,"_globalThis",{enumerable:!0,get:function(){return qGc._globalThis}});var $Gc=g3i();Object.defineProperty(gD,"hexToBase64",{enumerable:!0,get:function(){return $Gc.hexToBase64}});var eFc=p3i();Object.defineProperty(gD,"RandomIdGenerator",{enumerable:!0,get:function(){return eFc.RandomIdGenerator}});var tFc=f3i();Object.defineProperty(gD,"otperformance",{enumerable:!0,get:function(){return tFc.otperformance}});var rFc=L4i();Object.defineProperty(gD,"SDK_INFO",{enumerable:!0,get:function(){return rFc.SDK_INFO}});var nFc=V4i();Object.defineProperty(gD,"unrefTimer",{enumerable:!0,get:function(){return nFc.unrefTimer}})});var c9r=H(AD=>{"use strict";Object.defineProperty(AD,"__esModule",{value:!0});AD.unrefTimer=AD.otperformance=AD.hexToBase64=AD.getEnvWithoutDefaults=AD.getEnv=AD._globalThis=AD.SDK_INFO=AD.RandomIdGenerator=void 0;var zce=W4i();Object.defineProperty(AD,"RandomIdGenerator",{enumerable:!0,get:function(){return zce.RandomIdGenerator}});Object.defineProperty(AD,"SDK_INFO",{enumerable:!0,get:function(){return zce.SDK_INFO}});Object.defineProperty(AD,"_globalThis",{enumerable:!0,get:function(){return zce._globalThis}});Object.defineProperty(AD,"getEnv",{enumerable:!0,get:function(){return zce.getEnv}});Object.defineProperty(AD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return zce.getEnvWithoutDefaults}});Object.defineProperty(AD,"hexToBase64",{enumerable:!0,get:function(){return zce.hexToBase64}});Object.defineProperty(AD,"otperformance",{enumerable:!0,get:function(){return zce.otperformance}});Object.defineProperty(AD,"unrefTimer",{enumerable:!0,get:function(){return zce.unrefTimer}})});var Y4i=H(OE=>{"use strict";Object.defineProperty(OE,"__esModule",{value:!0});OE.addHrTimes=OE.isTimeInput=OE.isTimeInputHrTime=OE.hrTimeToMicroseconds=OE.hrTimeToMilliseconds=OE.hrTimeToNanoseconds=OE.hrTimeToTimeStamp=OE.hrTimeDuration=OE.timeInputToHrTime=OE.hrTime=OE.getTimeOrigin=OE.millisToHrTime=void 0;var l9r=c9r(),O4i=9,iFc=6,sFc=Math.pow(10,iFc),rvt=Math.pow(10,O4i);function VKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*sFc);return[r,n]}OE.millisToHrTime=VKe;function u9r(){let e=l9r.otperformance.timeOrigin;if(typeof e!="number"){let t=l9r.otperformance;e=t.timing&&t.timing.fetchStart}return e}OE.getTimeOrigin=u9r;function M4i(e){let t=VKe(u9r()),r=VKe(typeof e=="number"?e:l9r.otperformance.now());return H4i(t,r)}OE.hrTime=M4i;function oFc(e){if(g9r(e))return e;if(typeof e=="number")return e=rvt&&(r[1]-=rvt,r[0]+=1),r}OE.addHrTimes=H4i});var Q4i=H(PKe=>{"use strict";Object.defineProperty(PKe,"__esModule",{value:!0});PKe.ExportResultCode=void 0;var dFc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(dFc=PKe.ExportResultCode||(PKe.ExportResultCode={}))});var J4i=H(nvt=>{"use strict";Object.defineProperty(nvt,"__esModule",{value:!0});nvt.CompositePropagator=void 0;var X4i=(GI(),vi(xI)),A9r=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){X4i.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){X4i.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};nvt.CompositePropagator=A9r});var U4i=H(VDe=>{"use strict";Object.defineProperty(VDe,"__esModule",{value:!0});VDe.validateValue=VDe.validateKey=void 0;var d9r="[_0-9a-z-*/]",pFc=`[a-z]${d9r}{0,255}`,fFc=`[a-z0-9]${d9r}{0,240}@[a-z]${d9r}{0,13}`,IFc=new RegExp(`^(?:${pFc}|${fFc})$`),hFc=/^[ -~]{0,255}[!-~]$/,mFc=/,|=/;function CFc(e){return IFc.test(e)}VDe.validateKey=CFc;function _Fc(e){return hFc.test(e)&&!mFc.test(e)}VDe.validateValue=_Fc});var f9r=H(ivt=>{"use strict";Object.defineProperty(ivt,"__esModule",{value:!0});ivt.TraceState=void 0;var K4i=U4i(),j4i=32,yFc=512,z4i=",",q4i="=",p9r=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+q4i+this.get(r)),t),[]).join(z4i)}_parse(t){t.length>yFc||(this._internalState=t.split(z4i).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(q4i);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,K4i.validateKey)(l)&&(0,K4i.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>j4i&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,j4i))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};ivt.TraceState=p9r});var eJi=H(HG=>{"use strict";Object.defineProperty(HG,"__esModule",{value:!0});HG.W3CTraceContextPropagator=HG.parseTraceParent=HG.TRACE_STATE_HEADER=HG.TRACE_PARENT_HEADER=void 0;var svt=(GI(),vi(xI)),bFc=FKe(),EFc=f9r();HG.TRACE_PARENT_HEADER="traceparent";HG.TRACE_STATE_HEADER="tracestate";var SFc="00",vFc="(?!ff)[\\da-f]{2}",BFc="(?![0]{32})[\\da-f]{32}",wFc="(?![0]{16})[\\da-f]{16}",TFc="[\\da-f]{2}",RFc=new RegExp(`^\\s?(${vFc})-(${BFc})-(${wFc})-(${TFc})(-.*)?\\s?$`);function $4i(e){let t=RFc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}HG.parseTraceParent=$4i;var I9r=class{inject(t,r,n){let a=svt.trace.getSpanContext(t);if(!a||(0,bFc.isTracingSuppressed)(t)||!(0,svt.isSpanContextValid)(a))return;let o=`${SFc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||svt.TraceFlags.NONE).toString(16)}`;n.set(r,HG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,HG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,HG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=$4i(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,HG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new EFc.TraceState(typeof f=="string"?f:void 0)}return svt.trace.setSpanContext(t,l)}fields(){return[HG.TRACE_PARENT_HEADER,HG.TRACE_STATE_HEADER]}};HG.W3CTraceContextPropagator=I9r});var tJi=H(m4=>{"use strict";Object.defineProperty(m4,"__esModule",{value:!0});m4.getRPCMetadata=m4.deleteRPCMetadata=m4.setRPCMetadata=m4.RPCType=void 0;var NFc=(GI(),vi(xI)),h9r=(0,NFc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),DFc;(function(e){e.HTTP="http"})(DFc=m4.RPCType||(m4.RPCType={}));function kFc(e,t){return e.setValue(h9r,t)}m4.setRPCMetadata=kFc;function xFc(e){return e.deleteValue(h9r)}m4.deleteRPCMetadata=xFc;function GFc(e){return e.getValue(h9r)}m4.getRPCMetadata=GFc});var C9r=H(ovt=>{"use strict";Object.defineProperty(ovt,"__esModule",{value:!0});ovt.AlwaysOffSampler=void 0;var FFc=(GI(),vi(xI)),m9r=class{shouldSample(){return{decision:FFc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};ovt.AlwaysOffSampler=m9r});var y9r=H(avt=>{"use strict";Object.defineProperty(avt,"__esModule",{value:!0});avt.AlwaysOnSampler=void 0;var ZFc=(GI(),vi(xI)),_9r=class{shouldSample(){return{decision:ZFc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};avt.AlwaysOnSampler=_9r});var nJi=H(lvt=>{"use strict";Object.defineProperty(lvt,"__esModule",{value:!0});lvt.ParentBasedSampler=void 0;var cvt=(GI(),vi(xI)),LFc=e9r(),rJi=C9r(),b9r=y9r(),E9r=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,LFc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new b9r.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new b9r.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new rJi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new b9r.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new rJi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=cvt.trace.getSpanContext(t);return!A||!(0,cvt.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&cvt.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&cvt.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};lvt.ParentBasedSampler=E9r});var iJi=H(uvt=>{"use strict";Object.defineProperty(uvt,"__esModule",{value:!0});uvt.TraceIdRatioBasedSampler=void 0;var S9r=(GI(),vi(xI)),v9r=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,S9r.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};uvt.TraceIdRatioBasedSampler=v9r});var lJi=H(gvt=>{"use strict";Object.defineProperty(gvt,"__esModule",{value:!0});gvt.isPlainObject=void 0;var VFc="[object Object]",PFc="[object Null]",WFc="[object Undefined]",OFc=Function.prototype,sJi=OFc.toString,MFc=sJi.call(Object),HFc=YFc(Object.getPrototypeOf,Object),oJi=Object.prototype,aJi=oJi.hasOwnProperty,KCe=Symbol?Symbol.toStringTag:void 0,cJi=oJi.toString;function YFc(e,t){return function(r){return e(t(r))}}function QFc(e){if(!XFc(e)||JFc(e)!==VFc)return!1;let t=HFc(e);if(t===null)return!0;let r=aJi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&sJi.call(r)===MFc}gvt.isPlainObject=QFc;function XFc(e){return e!=null&&typeof e=="object"}function JFc(e){return e==null?e===void 0?WFc:PFc:KCe&&KCe in Object(e)?UFc(e):KFc(e)}function UFc(e){let t=aJi.call(e,KCe),r=e[KCe],n=!1;try{e[KCe]=void 0,n=!0}catch{}let a=cJi.call(e);return n&&(t?e[KCe]=r:delete e[KCe]),a}function KFc(e){return cJi.call(e)}});var pJi=H(pvt=>{"use strict";Object.defineProperty(pvt,"__esModule",{value:!0});pvt.merge=void 0;var uJi=lJi(),jFc=20;function zFc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=AJi(t,e.shift(),0,r);return t}pvt.merge=zFc;function B9r(e){return dvt(e)?e.slice():e}function AJi(e,t,r=0,n){let a;if(!(r>jFc)){if(r++,Avt(e)||Avt(t)||dJi(t))a=B9r(t);else if(dvt(e)){if(a=e.slice(),dvt(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(gJi(e,f,n)||gJi(t,f,n))delete a[f];else{if(WKe(C)&&WKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=AJi(a[f],I,r,n)}}}}else a=t;return a}}function gJi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function qFc(e,t){return!(!(0,uJi.isPlainObject)(e)||!(0,uJi.isPlainObject)(t))}});var fJi=H(PDe=>{"use strict";Object.defineProperty(PDe,"__esModule",{value:!0});PDe.callWithTimeout=PDe.TimeoutError=void 0;var fvt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};PDe.TimeoutError=fvt;function $Fc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new fvt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}PDe.callWithTimeout=$Fc});var hJi=H(WDe=>{"use strict";Object.defineProperty(WDe,"__esModule",{value:!0});WDe.isUrlIgnored=WDe.urlMatches=void 0;function IJi(e,t){return typeof t=="string"?e===t:!!e.match(t)}WDe.urlMatches=IJi;function eZc(e,t){if(!t)return!1;for(let r of t)if(IJi(e,r))return!0;return!1}WDe.isUrlIgnored=eZc});var mJi=H(Ivt=>{"use strict";Object.defineProperty(Ivt,"__esModule",{value:!0});Ivt.isWrapped=void 0;function tZc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}Ivt.isWrapped=tZc});var CJi=H(hvt=>{"use strict";Object.defineProperty(hvt,"__esModule",{value:!0});hvt.Deferred=void 0;var w9r=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};hvt.Deferred=w9r});var _Ji=H(mvt=>{"use strict";Object.defineProperty(mvt,"__esModule",{value:!0});mvt.BindOnceFuture=void 0;var rZc=CJi(),T9r=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new rZc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};mvt.BindOnceFuture=T9r});var bJi=H(Cvt=>{"use strict";Object.defineProperty(Cvt,"__esModule",{value:!0});Cvt._export=void 0;var yJi=(GI(),vi(xI)),nZc=FKe();function iZc(e,t){return new Promise(r=>{yJi.context.with((0,nZc.suppressTracing)(yJi.context.active()),()=>{e.export(t,n=>{r(n)})})})}Cvt._export=iZc});var D9r=H(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=Ja.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Ja.TraceState=Ja.unsuppressTracing=Ja.suppressTracing=Ja.isTracingSuppressed=Ja.TraceIdRatioBasedSampler=Ja.ParentBasedSampler=Ja.AlwaysOnSampler=Ja.AlwaysOffSampler=Ja.setRPCMetadata=Ja.getRPCMetadata=Ja.deleteRPCMetadata=Ja.RPCType=Ja.parseTraceParent=Ja.W3CTraceContextPropagator=Ja.TRACE_STATE_HEADER=Ja.TRACE_PARENT_HEADER=Ja.CompositePropagator=Ja.unrefTimer=Ja.otperformance=Ja.hexToBase64=Ja.getEnvWithoutDefaults=Ja.getEnv=Ja._globalThis=Ja.SDK_INFO=Ja.RandomIdGenerator=Ja.baggageUtils=Ja.ExportResultCode=Ja.hexToBinary=Ja.timeInputToHrTime=Ja.millisToHrTime=Ja.isTimeInputHrTime=Ja.isTimeInput=Ja.hrTimeToTimeStamp=Ja.hrTimeToNanoseconds=Ja.hrTimeToMilliseconds=Ja.hrTimeToMicroseconds=Ja.hrTimeDuration=Ja.hrTime=Ja.getTimeOrigin=Ja.addHrTimes=Ja.loggingErrorHandler=Ja.setGlobalErrorHandler=Ja.globalErrorHandler=Ja.sanitizeAttributes=Ja.isAttributeValue=Ja.isAttributeKey=Ja.AnchoredClock=Ja.W3CBaggagePropagator=void 0;Ja.internal=Ja.VERSION=Ja.BindOnceFuture=Ja.isWrapped=Ja.urlMatches=Ja.isUrlIgnored=Ja.callWithTimeout=Ja.TimeoutError=Ja.TracesSamplerValues=Ja.merge=Ja.parseEnvironment=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Ja.DEFAULT_ENVIRONMENT=void 0;var sZc=e3i();Object.defineProperty(Ja,"W3CBaggagePropagator",{enumerable:!0,get:function(){return sZc.W3CBaggagePropagator}});var oZc=t3i();Object.defineProperty(Ja,"AnchoredClock",{enumerable:!0,get:function(){return oZc.AnchoredClock}});var R9r=o3i();Object.defineProperty(Ja,"isAttributeKey",{enumerable:!0,get:function(){return R9r.isAttributeKey}});Object.defineProperty(Ja,"isAttributeValue",{enumerable:!0,get:function(){return R9r.isAttributeValue}});Object.defineProperty(Ja,"sanitizeAttributes",{enumerable:!0,get:function(){return R9r.sanitizeAttributes}});var EJi=e9r();Object.defineProperty(Ja,"globalErrorHandler",{enumerable:!0,get:function(){return EJi.globalErrorHandler}});Object.defineProperty(Ja,"setGlobalErrorHandler",{enumerable:!0,get:function(){return EJi.setGlobalErrorHandler}});var aZc=$Lr();Object.defineProperty(Ja,"loggingErrorHandler",{enumerable:!0,get:function(){return aZc.loggingErrorHandler}});var dH=Y4i();Object.defineProperty(Ja,"addHrTimes",{enumerable:!0,get:function(){return dH.addHrTimes}});Object.defineProperty(Ja,"getTimeOrigin",{enumerable:!0,get:function(){return dH.getTimeOrigin}});Object.defineProperty(Ja,"hrTime",{enumerable:!0,get:function(){return dH.hrTime}});Object.defineProperty(Ja,"hrTimeDuration",{enumerable:!0,get:function(){return dH.hrTimeDuration}});Object.defineProperty(Ja,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return dH.hrTimeToMicroseconds}});Object.defineProperty(Ja,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return dH.hrTimeToMilliseconds}});Object.defineProperty(Ja,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return dH.hrTimeToNanoseconds}});Object.defineProperty(Ja,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return dH.hrTimeToTimeStamp}});Object.defineProperty(Ja,"isTimeInput",{enumerable:!0,get:function(){return dH.isTimeInput}});Object.defineProperty(Ja,"isTimeInputHrTime",{enumerable:!0,get:function(){return dH.isTimeInputHrTime}});Object.defineProperty(Ja,"millisToHrTime",{enumerable:!0,get:function(){return dH.millisToHrTime}});Object.defineProperty(Ja,"timeInputToHrTime",{enumerable:!0,get:function(){return dH.timeInputToHrTime}});var cZc=i9r();Object.defineProperty(Ja,"hexToBinary",{enumerable:!0,get:function(){return cZc.hexToBinary}});var lZc=Q4i();Object.defineProperty(Ja,"ExportResultCode",{enumerable:!0,get:function(){return lZc.ExportResultCode}});var _vt=ULr();Ja.baggageUtils={getKeyPairs:_vt.getKeyPairs,serializeKeyPairs:_vt.serializeKeyPairs,parseKeyPairsIntoRecord:_vt.parseKeyPairsIntoRecord,parsePairKeyValue:_vt.parsePairKeyValue};var qce=c9r();Object.defineProperty(Ja,"RandomIdGenerator",{enumerable:!0,get:function(){return qce.RandomIdGenerator}});Object.defineProperty(Ja,"SDK_INFO",{enumerable:!0,get:function(){return qce.SDK_INFO}});Object.defineProperty(Ja,"_globalThis",{enumerable:!0,get:function(){return qce._globalThis}});Object.defineProperty(Ja,"getEnv",{enumerable:!0,get:function(){return qce.getEnv}});Object.defineProperty(Ja,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return qce.getEnvWithoutDefaults}});Object.defineProperty(Ja,"hexToBase64",{enumerable:!0,get:function(){return qce.hexToBase64}});Object.defineProperty(Ja,"otperformance",{enumerable:!0,get:function(){return qce.otperformance}});Object.defineProperty(Ja,"unrefTimer",{enumerable:!0,get:function(){return qce.unrefTimer}});var uZc=J4i();Object.defineProperty(Ja,"CompositePropagator",{enumerable:!0,get:function(){return uZc.CompositePropagator}});var yvt=eJi();Object.defineProperty(Ja,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return yvt.TRACE_PARENT_HEADER}});Object.defineProperty(Ja,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return yvt.TRACE_STATE_HEADER}});Object.defineProperty(Ja,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return yvt.W3CTraceContextPropagator}});Object.defineProperty(Ja,"parseTraceParent",{enumerable:!0,get:function(){return yvt.parseTraceParent}});var bvt=tJi();Object.defineProperty(Ja,"RPCType",{enumerable:!0,get:function(){return bvt.RPCType}});Object.defineProperty(Ja,"deleteRPCMetadata",{enumerable:!0,get:function(){return bvt.deleteRPCMetadata}});Object.defineProperty(Ja,"getRPCMetadata",{enumerable:!0,get:function(){return bvt.getRPCMetadata}});Object.defineProperty(Ja,"setRPCMetadata",{enumerable:!0,get:function(){return bvt.setRPCMetadata}});var gZc=C9r();Object.defineProperty(Ja,"AlwaysOffSampler",{enumerable:!0,get:function(){return gZc.AlwaysOffSampler}});var AZc=y9r();Object.defineProperty(Ja,"AlwaysOnSampler",{enumerable:!0,get:function(){return AZc.AlwaysOnSampler}});var dZc=nJi();Object.defineProperty(Ja,"ParentBasedSampler",{enumerable:!0,get:function(){return dZc.ParentBasedSampler}});var pZc=iJi();Object.defineProperty(Ja,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return pZc.TraceIdRatioBasedSampler}});var N9r=FKe();Object.defineProperty(Ja,"isTracingSuppressed",{enumerable:!0,get:function(){return N9r.isTracingSuppressed}});Object.defineProperty(Ja,"suppressTracing",{enumerable:!0,get:function(){return N9r.suppressTracing}});Object.defineProperty(Ja,"unsuppressTracing",{enumerable:!0,get:function(){return N9r.unsuppressTracing}});var fZc=f9r();Object.defineProperty(Ja,"TraceState",{enumerable:!0,get:function(){return fZc.TraceState}});var ODe=r9r();Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return ODe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return ODe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return ODe.DEFAULT_ENVIRONMENT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return ODe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return ODe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(Ja,"parseEnvironment",{enumerable:!0,get:function(){return ODe.parseEnvironment}});var IZc=pJi();Object.defineProperty(Ja,"merge",{enumerable:!0,get:function(){return IZc.merge}});var hZc=t9r();Object.defineProperty(Ja,"TracesSamplerValues",{enumerable:!0,get:function(){return hZc.TracesSamplerValues}});var SJi=fJi();Object.defineProperty(Ja,"TimeoutError",{enumerable:!0,get:function(){return SJi.TimeoutError}});Object.defineProperty(Ja,"callWithTimeout",{enumerable:!0,get:function(){return SJi.callWithTimeout}});var vJi=hJi();Object.defineProperty(Ja,"isUrlIgnored",{enumerable:!0,get:function(){return vJi.isUrlIgnored}});Object.defineProperty(Ja,"urlMatches",{enumerable:!0,get:function(){return vJi.urlMatches}});var mZc=mJi();Object.defineProperty(Ja,"isWrapped",{enumerable:!0,get:function(){return mZc.isWrapped}});var CZc=_Ji();Object.defineProperty(Ja,"BindOnceFuture",{enumerable:!0,get:function(){return CZc.BindOnceFuture}});var _Zc=o9r();Object.defineProperty(Ja,"VERSION",{enumerable:!0,get:function(){return _Zc.VERSION}});var yZc=bJi();Ja.internal={_export:yZc._export}});var TJi=H((VHu,k9r)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));k9r.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};k9r.exports=e}});var ZJi=H((PHu,FJi)=>{"use strict";var sw=wt("fs"),bZc=wt("events"),EZc=wt("util").inherits,RJi=wt("path"),G9r=TJi(),Svt=100,vvt=Buffer.allocUnsafe(0),SZc=16*1024,NJi="buffer",DJi="utf8";function kJi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,l){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let A=t._reopening;t.fd=l,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():A&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&sw.mkdirSync(RJi.dirname(e),{recursive:!0});let o=sw.openSync(e,n,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?sw.mkdir(RJi.dirname(e),{recursive:!0},o=>{if(o)return r(o);sw.open(e,n,a,r)}):sw.open(e,n,a,r)}function C4(e){if(!(this instanceof C4))return new C4(e);let{fd:t,dest:r,minLength:n,maxLength:a,maxWrite:o,sync:l,append:A=!0,mkdir:f,retryEAGAIN:I,fsync:C,contentMode:b,mode:E}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=a||0,this.maxWrite=o||SZc,this.sync=l||!1,this.writable=!0,this._fsync=C||!1,this.append=A||!1,this.mode=E,this.retryEAGAIN=I||(()=>!0),this.mkdir=f||!1;let N,B;if(b===NJi)this._writingBuf=vvt,this.write=wZc,this.flush=RZc,this.flushSync=DZc,this._actualWrite=xZc,N=()=>sw.writeSync(this.fd,this._writingBuf),B=()=>sw.write(this.fd,this._writingBuf,this.release);else if(b===void 0||b===DJi)this._writingBuf="",this.write=BZc,this.flush=TZc,this.flushSync=NZc,this._actualWrite=kZc,N=()=>sw.writeSync(this.fd,this._writingBuf,"utf8"),B=()=>sw.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${DJi}" and "${NJi}", but passed ${b}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")kJi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(F,Q)=>{if(F){if((F.code==="EAGAIN"||F.code==="EBUSY")&&this.retryEAGAIN(F,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{G9r(Svt),this.release(void 0,0)}catch(ne){this.release(ne)}else setTimeout(B,Svt);else this._writing=!1,this.emit("error",F);return}this.emit("write",Q);let X=x9r(this._writingBuf,this._len,Q);if(this._len=X.len,this._writingBuf=X.writingBuf,this._writingBuf.length){if(!this.sync){B();return}try{do{let ne=N(),ce=x9r(this._writingBuf,this._len,ne);this._len=ce.len,this._writingBuf=ce.writingBuf}while(this._writingBuf.length)}catch(ne){this.release(ne);return}}this._fsync&&sw.fsyncSync(this.fd);let ae=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):ae>this.minLength?this._actualWrite():this._ending?ae>0?this._actualWrite():(this._writing=!1,Bvt(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(vZc,this)):this.emit("drain"))},this.on("newListener",function(F){F==="drain"&&(this._asyncDrainScheduled=!1)})}function x9r(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function vZc(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}EZc(C4,bZc);function xJi(e,t){return e.length===0?vvt:e.length===1?e[0]:Buffer.concat(e,t)}function BZc(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):sw.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function TZc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&GJi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function RZc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&GJi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}C4.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&sw.close(t,r=>{if(r)return this.emit("error",r)})}),kJi(this.file,this)};C4.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():Bvt(this)))};function NZc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=sw.writeSync(this.fd,e,"utf8"),r=x9r(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;G9r(Svt)}}try{sw.fsyncSync(this.fd)}catch{}}function DZc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=vvt);let e=vvt;for(;this._bufs.length||e.length;){e.length<=0&&(e=xJi(this._bufs[0],this._lens[0]));try{let t=sw.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;G9r(Svt)}}}C4.prototype.destroy=function(){this.destroyed||Bvt(this)};function kZc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=sw.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else sw.write(this.fd,this._writingBuf,"utf8",e)}function xZc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:xJi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=sw.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else sw.write(this.fd,this._writingBuf,e)}function Bvt(e){if(e.fd===-1){e.once("ready",Bvt.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],sw.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?sw.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}C4.SonicBoom=C4;C4.default=C4;FJi.exports=C4});var MJi=H((WHu,OJi)=>{"use strict";var _4={exit:[],beforeExit:[]},LJi={exit:ZZc,beforeExit:LZc},MDe;function GZc(){MDe===void 0&&(MDe=new FinalizationRegistry(VZc))}function FZc(e){_4[e].length>0||process.on(e,LJi[e])}function VJi(e){_4[e].length>0||(process.removeListener(e,LJi[e]),_4.exit.length===0&&_4.beforeExit.length===0&&(MDe=void 0))}function ZZc(){PJi("exit")}function LZc(){PJi("beforeExit")}function PJi(e){for(let t of _4[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}_4[e]=[]}function VZc(e){for(let t of["exit","beforeExit"]){let r=_4[t].indexOf(e);_4[t].splice(r,r+1),VJi(t)}}function WJi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");FZc(e);let n=new WeakRef(t);n.fn=r,GZc(),MDe.register(t,n),_4[e].push(n)}function PZc(e,t){WJi("exit",e,t)}function WZc(e,t){WJi("beforeExit",e,t)}function OZc(e){if(MDe!==void 0){MDe.unregister(e);for(let t of["exit","beforeExit"])_4[t]=_4[t].filter(r=>{let n=r.deref();return n&&n!==e}),VJi(t)}}OJi.exports={register:PZc,registerBeforeExit:WZc,unregister:OZc}});var qJi=H((P9r,W9r)=>{(function(e,t){typeof P9r=="object"&&typeof W9r<"u"?W9r.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})(P9r,function(){"use strict";function e(Se,De){var k=Se==null?null:typeof Symbol<"u"&&Se[Symbol.iterator]||Se["@@iterator"];if(k!=null){var et,ct,Me,je,St=[],At=!0,Yt=!1;try{if(Me=(k=k.call(Se)).next,De===0){if(Object(k)!==k)return;At=!1}else for(;!(At=(et=Me.call(k)).done)&&(St.push(et.value),St.length!==De);At=!0);}catch(Tr){Yt=!0,ct=Tr}finally{try{if(!At&&k.return!=null&&(je=k.return(),Object(je)!==je))return}finally{if(Yt)throw ct}}return St}}function t(Se,De){return a(Se)||e(Se,De)||l(Se,De)||I()}function r(Se){return n(Se)||o(Se)||l(Se)||f()}function n(Se){if(Array.isArray(Se))return A(Se)}function a(Se){if(Array.isArray(Se))return Se}function o(Se){if(typeof Symbol<"u"&&Se[Symbol.iterator]!=null||Se["@@iterator"]!=null)return Array.from(Se)}function l(Se,De){if(Se){if(typeof Se=="string")return A(Se,De);var k=Object.prototype.toString.call(Se).slice(8,-1);if(k==="Object"&&Se.constructor&&(k=Se.constructor.name),k==="Map"||k==="Set")return Array.from(Se);if(k==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(k))return A(Se,De)}}function A(Se,De){(De==null||De>Se.length)&&(De=Se.length);for(var k=0,et=new Array(De);k=je[0]&&ct<=je[1])return Se(De,k,et)}return ct},Q=function(De){for(var k=De.length,et=0,ct=0;ct1&&(et-=1),et<1/6?De+(k-De)*6*et:et<1/2?k:et<2/3?De+(k-De)*(2/3-et)*6:De},ce=function(De,k,et){var ct,Me,je;if(De/=360,k/=100,et/=100,k===0)ct=Me=je=et;else{var St=et<.5?et*(1+k):et+k-et*k,At=2*et-St;ct=ne(At,St,De+1/3),Me=ne(At,St,De),je=ne(At,St,De-1/3)}return[Math.round(ct*255),Math.round(Me*255),Math.round(je*255)]},fe=function(De,k,et,ct){return(De*299+k*587+et*114)/1e3>=ct},ue=function(De,k,et){return"hsl(".concat(De,", ").concat(k,"%, ").concat(et,"%)")},de=function(De,k,et,ct){switch(ct){case"rgb":return"rgb(".concat(De,", ").concat(k,", ").concat(et,")");case"hex":default:return"#".concat(E(De.toString(16))).concat(E(k.toString(16))).concat(E(et.toString(16)))}},be=function(De){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},et=k.format,ct=et===void 0?"hex":et,Me=k.saturation,je=Me===void 0?[50,55]:Me,St=k.lightness,At=St===void 0?[50,60]:St,Yt=k.differencePoint,Tr=Yt===void 0?130:Yt,Nr=Math.abs(Q(String(De))),er=X(Nr,[0,360]),vt=X(Nr,ae(je,C)),xt=X(Nr,ae(At,b)),Zr=ce(er,vt,xt),qt=t(Zr,3),Xt=qt[0],lr=qt[1],cr=qt[2];return{color:ct==="hsl"?ue(er,vt,xt):de(Xt,lr,cr,ct),isLight:fe(Xt,lr,cr,Tr)}};return be.random=function(){var Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},De=Se.format,k=De===void 0?"hex":De,et=Se.saturation,ct=et===void 0?[50,55]:et,Me=Se.lightness,je=Me===void 0?[50,60]:Me,St=Se.differencePoint,At=St===void 0?130:St,Yt=Se.excludeHue;ct=ae(ct,C),je=ae(je,b);var Tr=Yt?F(0,359,Yt):B(0,359),Nr=typeof ct=="number"?ct:B.apply(void 0,r(ct)),er=typeof je=="number"?je:B.apply(void 0,r(je)),vt=ce(Tr,Nr,er),xt=t(vt,3),Zr=xt[0],qt=xt[1],Xt=xt[2];return{color:k==="hsl"?ue(Tr,Nr,er):de(Zr,qt,Xt,k),isLight:fe(Zr,qt,Xt,At)}},be})});var L9r=H(Gj=>{"use strict";Object.defineProperty(Gj,"__esModule",{value:!0});Gj.TOKEN_TYPE_TO_HIGHLIGHT=Gj.HighlightSubject=Gj.TokenType=void 0;var TV;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(TV=Gj.TokenType||(Gj.TokenType={}));var RV;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(RV=Gj.HighlightSubject||(Gj.HighlightSubject={}));Gj.TOKEN_TYPE_TO_HIGHLIGHT={[TV.BOUNDARY]:RV.BOUNDARY,[TV.WORD]:RV.WORD,[TV.BACKTICK_QUOTE]:RV.BACKTICK_QUOTE,[TV.QUOTE]:RV.QUOTE,[TV.RESERVED]:RV.RESERVED,[TV.RESERVED_TOPLEVEL]:RV.RESERVED,[TV.RESERVED_NEWLINE]:RV.RESERVED,[TV.NUMBER]:RV.NUMBER,[TV.VARIABLE]:RV.VARIABLE,[TV.COMMENT]:RV.COMMENT,[TV.BLOCK_COMMENT]:RV.COMMENT,[TV.LITERAL]:RV.LITERAL,[TV.BUILT_IN]:RV.BUILT_IN}});var P9r=H(Nvt=>{"use strict";Object.defineProperty(Nvt,"__esModule",{value:!0});Nvt.Tokenizer=void 0;var zk=L9r(),V9r=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],n=t.length+1,a,o=t.length;for(;o;){if(n<=o)return r.push({type:zk.TokenType.ERROR,value:t}),r;n=o,a=this.createNextToken(t,a);let l=a.value.length;r.push(a),t=t.substr(l),o-=l}return r}createNextToken(t,r){let n;if(n=t.match(/^\s+/),n)return{type:zk.TokenType.WHITESPACE,value:n[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,l;return t[0]==="-"||t[0]==="#"?(l=t.indexOf(` -`),o=zk.TokenType.COMMENT):(l=t.indexOf("*/",2)+2,o=zk.TokenType.BLOCK_COMMENT),l===-1&&(l=t.length),{type:o,value:t.substr(0,l)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?zk.TokenType.BACKTICK_QUOTE:zk.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:zk.TokenType.VARIABLE,value:o}}if(n=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),n)return{type:zk.TokenType.VARIABLE,value:n[1]}}if(n=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),n)return{type:zk.TokenType.NUMBER,value:n[1]};if(n=new RegExp(`^(${this.regexBoundaries})`).exec(t),n)return{type:zk.TokenType.BOUNDARY,value:n[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(n=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED_NEWLINE,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.LITERAL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.BUILT_IN,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED,value:t.substr(0,n[1].length)}}return n=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),n?{type:zk.TokenType.RESERVED,value:t.substr(0,n[1].length-1)}:(n=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:zk.TokenType.WORD,value:n[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let n=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(n,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};Nvt.Tokenizer=V9r});var MJi=H((bHu,PKe)=>{"use strict";var aZc=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",cZc=typeof process<"u"&&process.platform==="win32",PJi=typeof process<"u"&&process.platform==="linux",W9r={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},WJi=Object.assign({},W9r,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),OJi=Object.assign({},W9r,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:PJi?"\u25B8":"\u276F",pointerSmall:PJi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});PKe.exports=cZc&&!aZc?WJi:OJi;Reflect.defineProperty(PKe.exports,"common",{enumerable:!1,value:W9r});Reflect.defineProperty(PKe.exports,"windows",{enumerable:!1,value:WJi});Reflect.defineProperty(PKe.exports,"other",{enumerable:!1,value:OJi})});var WKe=H((EHu,O9r)=>{"use strict";var lZc=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),uZc=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,gZc=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,HJi=()=>{let e={enabled:gZc(),visible:!0,styles:{},keys:{}},t=o=>{let l=o.open=`\x1B[${o.codes[0]}m`,A=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(I,C)=>{I.includes(A)&&(I=I.replace(f,A+l));let b=l+I+A;return C?b.replace(/\r*\n/g,`${A}$&${l}`):b},o},r=(o,l,A)=>typeof o=="function"?o(l):o.wrap(l,A),n=(o,l)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let A=""+o,f=A.includes(` -`),I=l.length;for(I>0&&l.includes("unstyle")&&(l=[...new Set(["unstyle",...l])].reverse());I-- >0;)A=r(e.styles[l[I]],A,f);return A},a=(o,l,A)=>{e.styles[o]=t({name:o,codes:l}),(e.keys[A]||(e.keys[A]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(I){e.alias(o,I)},get(){let I=C=>n(C,I.stack);return Reflect.setPrototypeOf(I,e),I.stack=this.stack?this.stack.concat(o):[o],I}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=uZc,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,l)=>{let A=typeof l=="string"?e[l]:l;if(typeof A!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");A.stack||(Reflect.defineProperty(A,"name",{value:o}),e.styles[o]=A,A.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=I=>n(I,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(A.stack):A.stack,f}})},e.theme=o=>{if(!lZc(o))throw new TypeError("Expected theme to be an object");for(let l of Object.keys(o))e.alias(l,o[l]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=MJi(),e.define=a,e};O9r.exports=HJi();O9r.exports.create=HJi});var YJi=H(MDe=>{"use strict";var AZc=MDe&&MDe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MDe,"__esModule",{value:!0});MDe.SqlHighlighter=void 0;var Fj=AZc(WKe()),dZc=P9r(),eL=L9r(),Dvt=class e{constructor(t={}){this.theme=t,this.tokenizer=new dZc.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),n,a="",o=0;for(;n=r[o++];)a+=this.highlightToken(n.type,n.value);return a}highlightToken(t,r){return t===eL.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!eL.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[eL.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[eL.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};MDe.SqlHighlighter=Dvt;Dvt.DEFAULT_THEME={[eL.HighlightSubject.QUOTE]:Fj.default.yellow,[eL.HighlightSubject.BACKTICK_QUOTE]:Fj.default.yellow,[eL.HighlightSubject.RESERVED]:Fj.default.white.bold,[eL.HighlightSubject.BOUNDARY]:Fj.default.reset,[eL.HighlightSubject.NUMBER]:Fj.default.green,[eL.HighlightSubject.WORD]:void 0,[eL.HighlightSubject.COMMENT]:Fj.default.green.dim,[eL.HighlightSubject.VARIABLE]:Fj.default.yellow,[eL.HighlightSubject.FUNCTIONS]:Fj.default.green.bold,[eL.HighlightSubject.BUILT_IN]:Fj.default.cyan,[eL.HighlightSubject.LITERAL]:Fj.default.cyan}});var XJi=H(qce=>{"use strict";var pZc=qce&&qce.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),QJi=qce&&qce.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&pZc(t,e,r)};Object.defineProperty(qce,"__esModule",{value:!0});QJi(P9r(),qce);QJi(YJi(),qce)});var UJi=H((JJi,kvt)=>{(function(e,t){typeof kvt=="object"&&kvt.exports?kvt.exports=t():e.nearley=t()})(JJi,function(){function e(f,I,C){return this.id=++e.highestId,this.name=f,this.symbols=I,this.postprocess=C,this}e.highestId=0,e.prototype.toString=function(f){var I=typeof f>"u"?this.symbols.map(A).join(" "):this.symbols.slice(0,f).map(A).join(" ")+" \u25CF "+this.symbols.slice(f).map(A).join(" ");return this.name+" \u2192 "+I};function t(f,I,C,b){this.rule=f,this.dot=I,this.reference=C,this.data=[],this.wantedBy=b,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var I=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return I.left=this,I.right=f,I.isComplete&&(I.data=I.build(),I.right=void 0),I},t.prototype.build=function(){var f=[],I=this;do f.push(I.right.data),I=I.left;while(I.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,I){this.grammar=f,this.index=I,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var I=this.states,C=this.wants,b=this.completed,E=0;E=je[0]&&ct<=je[1])return Se(De,k,et)}return ct},Q=function(De){for(var k=De.length,et=0,ct=0;ct1&&(et-=1),et<1/6?De+(k-De)*6*et:et<1/2?k:et<2/3?De+(k-De)*(2/3-et)*6:De},ce=function(De,k,et){var ct,Me,je;if(De/=360,k/=100,et/=100,k===0)ct=Me=je=et;else{var St=et<.5?et*(1+k):et+k-et*k,At=2*et-St;ct=ne(At,St,De+1/3),Me=ne(At,St,De),je=ne(At,St,De-1/3)}return[Math.round(ct*255),Math.round(Me*255),Math.round(je*255)]},fe=function(De,k,et,ct){return(De*299+k*587+et*114)/1e3>=ct},ue=function(De,k,et){return"hsl(".concat(De,", ").concat(k,"%, ").concat(et,"%)")},de=function(De,k,et,ct){switch(ct){case"rgb":return"rgb(".concat(De,", ").concat(k,", ").concat(et,")");case"hex":default:return"#".concat(E(De.toString(16))).concat(E(k.toString(16))).concat(E(et.toString(16)))}},be=function(De){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},et=k.format,ct=et===void 0?"hex":et,Me=k.saturation,je=Me===void 0?[50,55]:Me,St=k.lightness,At=St===void 0?[50,60]:St,Yt=k.differencePoint,Tr=Yt===void 0?130:Yt,Nr=Math.abs(Q(String(De))),er=X(Nr,[0,360]),vt=X(Nr,ae(je,C)),xt=X(Nr,ae(At,b)),Zr=ce(er,vt,xt),qt=t(Zr,3),Xt=qt[0],lr=qt[1],cr=qt[2];return{color:ct==="hsl"?ue(er,vt,xt):de(Xt,lr,cr,ct),isLight:fe(Xt,lr,cr,Tr)}};return be.random=function(){var Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},De=Se.format,k=De===void 0?"hex":De,et=Se.saturation,ct=et===void 0?[50,55]:et,Me=Se.lightness,je=Me===void 0?[50,60]:Me,St=Se.differencePoint,At=St===void 0?130:St,Yt=Se.excludeHue;ct=ae(ct,C),je=ae(je,b);var Tr=Yt?F(0,359,Yt):B(0,359),Nr=typeof ct=="number"?ct:B.apply(void 0,r(ct)),er=typeof je=="number"?je:B.apply(void 0,r(je)),vt=ce(Tr,Nr,er),xt=t(vt,3),Zr=xt[0],qt=xt[1],Xt=xt[2];return{color:k==="hsl"?ue(Tr,Nr,er):de(Zr,qt,Xt,k),isLight:fe(Zr,qt,Xt,At)}},be})});var Y9r=H(Gj=>{"use strict";Object.defineProperty(Gj,"__esModule",{value:!0});Gj.TOKEN_TYPE_TO_HIGHLIGHT=Gj.HighlightSubject=Gj.TokenType=void 0;var TV;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(TV=Gj.TokenType||(Gj.TokenType={}));var RV;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(RV=Gj.HighlightSubject||(Gj.HighlightSubject={}));Gj.TOKEN_TYPE_TO_HIGHLIGHT={[TV.BOUNDARY]:RV.BOUNDARY,[TV.WORD]:RV.WORD,[TV.BACKTICK_QUOTE]:RV.BACKTICK_QUOTE,[TV.QUOTE]:RV.QUOTE,[TV.RESERVED]:RV.RESERVED,[TV.RESERVED_TOPLEVEL]:RV.RESERVED,[TV.RESERVED_NEWLINE]:RV.RESERVED,[TV.NUMBER]:RV.NUMBER,[TV.VARIABLE]:RV.VARIABLE,[TV.COMMENT]:RV.COMMENT,[TV.BLOCK_COMMENT]:RV.COMMENT,[TV.LITERAL]:RV.LITERAL,[TV.BUILT_IN]:RV.BUILT_IN}});var X9r=H(Gvt=>{"use strict";Object.defineProperty(Gvt,"__esModule",{value:!0});Gvt.Tokenizer=void 0;var zk=Y9r(),Q9r=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],n=t.length+1,a,o=t.length;for(;o;){if(n<=o)return r.push({type:zk.TokenType.ERROR,value:t}),r;n=o,a=this.createNextToken(t,a);let l=a.value.length;r.push(a),t=t.substr(l),o-=l}return r}createNextToken(t,r){let n;if(n=t.match(/^\s+/),n)return{type:zk.TokenType.WHITESPACE,value:n[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,l;return t[0]==="-"||t[0]==="#"?(l=t.indexOf(` +`),o=zk.TokenType.COMMENT):(l=t.indexOf("*/",2)+2,o=zk.TokenType.BLOCK_COMMENT),l===-1&&(l=t.length),{type:o,value:t.substr(0,l)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?zk.TokenType.BACKTICK_QUOTE:zk.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:zk.TokenType.VARIABLE,value:o}}if(n=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),n)return{type:zk.TokenType.VARIABLE,value:n[1]}}if(n=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),n)return{type:zk.TokenType.NUMBER,value:n[1]};if(n=new RegExp(`^(${this.regexBoundaries})`).exec(t),n)return{type:zk.TokenType.BOUNDARY,value:n[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(n=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED_NEWLINE,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.LITERAL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.BUILT_IN,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED,value:t.substr(0,n[1].length)}}return n=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),n?{type:zk.TokenType.RESERVED,value:t.substr(0,n[1].length-1)}:(n=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:zk.TokenType.WORD,value:n[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let n=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(n,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};Gvt.Tokenizer=Q9r});var iUi=H((kYu,OKe)=>{"use strict";var $Zc=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",eLc=typeof process<"u"&&process.platform==="win32",tUi=typeof process<"u"&&process.platform==="linux",J9r={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},rUi=Object.assign({},J9r,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),nUi=Object.assign({},J9r,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:tUi?"\u25B8":"\u276F",pointerSmall:tUi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});OKe.exports=eLc&&!$Zc?rUi:nUi;Reflect.defineProperty(OKe.exports,"common",{enumerable:!1,value:J9r});Reflect.defineProperty(OKe.exports,"windows",{enumerable:!1,value:rUi});Reflect.defineProperty(OKe.exports,"other",{enumerable:!1,value:nUi})});var MKe=H((xYu,U9r)=>{"use strict";var tLc=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),rLc=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,nLc=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,sUi=()=>{let e={enabled:nLc(),visible:!0,styles:{},keys:{}},t=o=>{let l=o.open=`\x1B[${o.codes[0]}m`,A=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(I,C)=>{I.includes(A)&&(I=I.replace(f,A+l));let b=l+I+A;return C?b.replace(/\r*\n/g,`${A}$&${l}`):b},o},r=(o,l,A)=>typeof o=="function"?o(l):o.wrap(l,A),n=(o,l)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let A=""+o,f=A.includes(` +`),I=l.length;for(I>0&&l.includes("unstyle")&&(l=[...new Set(["unstyle",...l])].reverse());I-- >0;)A=r(e.styles[l[I]],A,f);return A},a=(o,l,A)=>{e.styles[o]=t({name:o,codes:l}),(e.keys[A]||(e.keys[A]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(I){e.alias(o,I)},get(){let I=C=>n(C,I.stack);return Reflect.setPrototypeOf(I,e),I.stack=this.stack?this.stack.concat(o):[o],I}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=rLc,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,l)=>{let A=typeof l=="string"?e[l]:l;if(typeof A!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");A.stack||(Reflect.defineProperty(A,"name",{value:o}),e.styles[o]=A,A.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=I=>n(I,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(A.stack):A.stack,f}})},e.theme=o=>{if(!tLc(o))throw new TypeError("Expected theme to be an object");for(let l of Object.keys(o))e.alias(l,o[l]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=iUi(),e.define=a,e};U9r.exports=sUi();U9r.exports.create=sUi});var oUi=H(YDe=>{"use strict";var iLc=YDe&&YDe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YDe,"__esModule",{value:!0});YDe.SqlHighlighter=void 0;var Fj=iLc(MKe()),sLc=X9r(),eL=Y9r(),Fvt=class e{constructor(t={}){this.theme=t,this.tokenizer=new sLc.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),n,a="",o=0;for(;n=r[o++];)a+=this.highlightToken(n.type,n.value);return a}highlightToken(t,r){return t===eL.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!eL.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[eL.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[eL.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};YDe.SqlHighlighter=Fvt;Fvt.DEFAULT_THEME={[eL.HighlightSubject.QUOTE]:Fj.default.yellow,[eL.HighlightSubject.BACKTICK_QUOTE]:Fj.default.yellow,[eL.HighlightSubject.RESERVED]:Fj.default.white.bold,[eL.HighlightSubject.BOUNDARY]:Fj.default.reset,[eL.HighlightSubject.NUMBER]:Fj.default.green,[eL.HighlightSubject.WORD]:void 0,[eL.HighlightSubject.COMMENT]:Fj.default.green.dim,[eL.HighlightSubject.VARIABLE]:Fj.default.yellow,[eL.HighlightSubject.FUNCTIONS]:Fj.default.green.bold,[eL.HighlightSubject.BUILT_IN]:Fj.default.cyan,[eL.HighlightSubject.LITERAL]:Fj.default.cyan}});var cUi=H($ce=>{"use strict";var oLc=$ce&&$ce.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),aUi=$ce&&$ce.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&oLc(t,e,r)};Object.defineProperty($ce,"__esModule",{value:!0});aUi(X9r(),$ce);aUi(oUi(),$ce)});var uUi=H((lUi,Zvt)=>{(function(e,t){typeof Zvt=="object"&&Zvt.exports?Zvt.exports=t():e.nearley=t()})(lUi,function(){function e(f,I,C){return this.id=++e.highestId,this.name=f,this.symbols=I,this.postprocess=C,this}e.highestId=0,e.prototype.toString=function(f){var I=typeof f>"u"?this.symbols.map(A).join(" "):this.symbols.slice(0,f).map(A).join(" ")+" \u25CF "+this.symbols.slice(f).map(A).join(" ");return this.name+" \u2192 "+I};function t(f,I,C,b){this.rule=f,this.dot=I,this.reference=C,this.data=[],this.wantedBy=b,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var I=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return I.left=this,I.right=f,I.isComplete&&(I.data=I.build(),I.right=void 0),I},t.prototype.build=function(){var f=[],I=this;do f.push(I.right.data),I=I.left;while(I.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,I){this.grammar=f,this.index=I,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var I=this.states,C=this.wants,b=this.completed,E=0;E0&&I.push(" ^ "+b+" more lines identical to this"),b=0,I.push(" "+B)),C=B}},o.prototype.getSymbolDisplay=function(f){return l(f)},o.prototype.buildFirstStateStack=function(f,I){if(I.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var C=f.wantedBy[0],b=[f].concat(I),E=this.buildFirstStateStack(C,b);return E===null?null:[f].concat(E)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var I=f.index;this.current=I,this.table[I]=f,this.table.splice(I+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],I=this.grammar.start,C=this.table[this.table.length-1];return C.states.forEach(function(b){b.rule.name===I&&b.dot===b.rule.symbols.length&&b.reference===0&&b.data!==o.fail&&f.push(b)}),f.map(function(b){return b.data})};function l(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function A(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:n,Rule:e}})});var QVr=H((HVr,YVr)=>{(function(e,t){typeof HVr=="object"&&typeof YVr<"u"?YVr.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(HVr,function(){"use strict";var e=function(N){return t(N)&&!r(N)};function t(E){return!!E&&typeof E=="object"}function r(E){var N=Object.prototype.toString.call(E);return N==="[object RegExp]"||N==="[object Date]"||o(E)}var n=typeof Symbol=="function"&&Symbol.for,a=n?Symbol.for("react.element"):60103;function o(E){return E.$$typeof===a}function l(E){return Array.isArray(E)?[]:{}}function A(E,N){var B=N&&N.clone===!0;return B&&e(E)?C(l(E),E,N):E}function f(E,N,B){var F=E.slice();return N.forEach(function(Q,X){typeof F[X]>"u"?F[X]=A(Q,B):e(Q)?F[X]=C(E[X],Q,B):E.indexOf(Q)===-1&&F.push(A(Q,B))}),F}function I(E,N,B){var F={};return e(E)&&Object.keys(E).forEach(function(Q){F[Q]=A(E[Q],B)}),Object.keys(N).forEach(function(Q){!e(N[Q])||!E[Q]?F[Q]=A(N[Q],B):F[Q]=C(E[Q],N[Q],B)}),F}function C(E,N,B){var F=Array.isArray(N),Q=Array.isArray(E),X=B||{arrayMerge:f},ae=F===Q;if(ae)if(F){var ne=X.arrayMerge||f;return ne(E,N,B)}else return I(E,N,B);else return A(N,B)}C.all=function(N,B){if(!Array.isArray(N)||N.length<2)throw new Error("first argument should be an array with at least two elements");return N.reduce(function(F,Q){return C(F,Q,B)})};var b=C;return b})});var XVr=H((QXu,d8i)=>{var OPc=QVr();d8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(n=>{this[n]=a=>this.set(n,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[l,A])=>(o[l]=A,o),{}),n=Object.keys(r),a=[...n];return n.forEach(o=>{if(!r[o])return;let{__before:l,__after:A}=r[o];l&&a.includes(l)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(l),0,o)):A&&a.includes(A)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(A)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:n}=this.order();if(n.length)return r}values(){let{entries:r,order:n}=this.order();return n.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,n){return this.has(r)||this.set(r,n()),this.get(r)}has(r){return this.store.has(r)}set(r,n){return this.store.set(r,n),this}merge(r,n=[]){return Object.keys(r).forEach(a=>{if(n.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,OPc(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((n,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(n[a]=o),n},{})}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var Kvt=H((JXu,p8i)=>{p8i.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var Lj=H((KXu,f8i)=>{var MPc=XVr(),HPc=Kvt();f8i.exports=MPc(HPc(Object))});var h8i=H((jXu,I8i)=>{I8i.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var C8i=H((qXu,m8i)=>{m8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var jvt=H((e4u,_8i)=>{var YPc=h8i(),QPc=XVr(),XPc=Kvt(),JPc=C8i();_8i.exports=JPc(QPc(XPc(YPc)))});var b8i=H((t4u,y8i)=>{y8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var qDe=H((n4u,E8i)=>{var UPc=b8i(),KPc=Kvt();E8i.exports=UPc(KPc(Object))});var zvt=H((i4u,S8i)=>{S8i.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var qvt=H((o4u,v8i)=>{var jPc=Lj(),zPc=zvt();v8i.exports=zPc(class extends jPc{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((n,a=[])=>typeof n=="function"?new n(...a):n)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),n=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(n=t,t=wt(n));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:n}}),o}})});var $vt=H((l4u,B8i)=>{var $De=Lj(),S4=qDe(),qPc=qvt();B8i.exports=class extends $De{constructor(e){super(e),this.alias=new $De(this),this.aliasFields=new S4(this),this.conditionNames=new S4(this),this.descriptionFiles=new S4(this),this.extensionAlias=new $De(this),this.extensions=new S4(this),this.mainFields=new S4(this),this.mainFiles=new S4(this),this.exportsFields=new S4(this),this.importsFields=new S4(this),this.restrictions=new S4(this),this.roots=new S4(this),this.modules=new S4(this),this.plugins=new $De(this),this.fallback=new $De(this),this.byDependency=new $De(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new qPc(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"plugin"])}}});var T8i=H((g4u,w8i)=>{var $Pc=$vt(),JVr=qDe();w8i.exports=class extends $Pc{constructor(e){super(e),this.modules=new JVr(this),this.moduleExtensions=new JVr(this),this.packageMains=new JVr(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r])}}});var N8i=H((d4u,R8i)=>{var eWc=Lj();R8i.exports=class extends eWc{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var k8i=H((f4u,D8i)=>{var tWc=Lj(),rWc=qDe();D8i.exports=class extends tWc{constructor(e){super(e),this.allowedHosts=new rWc(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var G8i=H((h4u,x8i)=>{var nWc=QVr(),iWc=Lj(),sWc=zvt();x8i.exports=sWc(class extends iWc{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(nWc(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var V8i=H((C4u,L8i)=>{var eBt=Lj(),F8i=qDe(),oWc=zvt(),aWc=G8i(),cWc=$vt();function Z8i(e){return Array.isArray(e)?e:[e]}var tBt=oWc(class extends eBt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let n=this;for(;n instanceof tBt;)this.names.unshift(n.ruleName),this.ruleTypes.unshift(n.ruleType),n=n.parent;this.uses=new eBt(this),this.include=new F8i(this),this.exclude=new F8i(this),this.rules=new eBt(this),this.oneOfs=new eBt(this),this.resolve=new cWc(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new aWc(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new tBt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new tBt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(Z8i(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(Z8i(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});L8i.exports=tBt});var O8i=H((y4u,W8i)=>{var qKe=Lj(),P8i=V8i();W8i.exports=class extends qKe{constructor(e){super(e),this.rules=new qKe(this),this.defaultRules=new qKe(this),this.generator=new qKe(this),this.parser=new qKe(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new P8i(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new P8i(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var Y8i=H((E4u,H8i)=>{var M8i=Lj(),lWc=jvt(),uWc=qvt();H8i.exports=class extends M8i{constructor(e){super(e),this.minimizers=new M8i(this),this.splitChunks=new lWc(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new uWc(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var X8i=H((v4u,Q8i)=>{var gWc=jvt();Q8i.exports=class extends gWc{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var $Ke=H(wO=>{"use strict";Object.defineProperty(wO,"__esModule",{value:!0});wO.stringifyPath=wO.quoteKey=wO.isValidVariableName=wO.IS_VALID_IDENTIFIER=wO.quoteString=void 0;var AWc=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,dWc=new Map([["\b","\\b"],[" ","\\t"],[` -`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function pWc(e){return dWc.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function fWc(e){return`'${e.replace(AWc,pWc)}'`}wO.quoteString=fWc;var IWc=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));wO.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function UVr(e){return typeof e=="string"&&!IWc.has(e)&&wO.IS_VALID_IDENTIFIER.test(e)}wO.isValidVariableName=UVr;function hWc(e,t){return UVr(e)?e:t(e)}wO.quoteKey=hWc;function mWc(e,t){let r="";for(let n of e)UVr(n)?r+=`.${n}`:r+=`[${t(n)}]`;return r}wO.stringifyPath=mWc});var KVr=H(v4=>{"use strict";Object.defineProperty(v4,"__esModule",{value:!0});v4.FunctionParser=v4.dedentFunction=v4.functionToString=v4.USED_METHOD_KEY=void 0;var J8i=$Ke(),CWc={" "(){}}[" "].toString().charAt(0)==='"',_Wc={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},yWc={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},bWc=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));v4.USED_METHOD_KEY=new WeakSet;var EWc=(e,t,r,n)=>{let a=typeof n=="string"?n:void 0;return a!==void 0&&v4.USED_METHOD_KEY.add(e),new rBt(e,t,r,a).stringify()};v4.functionToString=EWc;function U8i(e){let t;for(let r of e.split(` +`)},o.prototype.displayStateStack=function(f,I){for(var C,b=0,E=0;E0&&I.push(" ^ "+b+" more lines identical to this"),b=0,I.push(" "+B)),C=B}},o.prototype.getSymbolDisplay=function(f){return l(f)},o.prototype.buildFirstStateStack=function(f,I){if(I.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var C=f.wantedBy[0],b=[f].concat(I),E=this.buildFirstStateStack(C,b);return E===null?null:[f].concat(E)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var I=f.index;this.current=I,this.table[I]=f,this.table.splice(I+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],I=this.grammar.start,C=this.table[this.table.length-1];return C.states.forEach(function(b){b.rule.name===I&&b.dot===b.rule.symbols.length&&b.reference===0&&b.data!==o.fail&&f.push(b)}),f.map(function(b){return b.data})};function l(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function A(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:n,Rule:e}})});var qVr=H((jVr,zVr)=>{(function(e,t){typeof jVr=="object"&&typeof zVr<"u"?zVr.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(jVr,function(){"use strict";var e=function(N){return t(N)&&!r(N)};function t(E){return!!E&&typeof E=="object"}function r(E){var N=Object.prototype.toString.call(E);return N==="[object RegExp]"||N==="[object Date]"||o(E)}var n=typeof Symbol=="function"&&Symbol.for,a=n?Symbol.for("react.element"):60103;function o(E){return E.$$typeof===a}function l(E){return Array.isArray(E)?[]:{}}function A(E,N){var B=N&&N.clone===!0;return B&&e(E)?C(l(E),E,N):E}function f(E,N,B){var F=E.slice();return N.forEach(function(Q,X){typeof F[X]>"u"?F[X]=A(Q,B):e(Q)?F[X]=C(E[X],Q,B):E.indexOf(Q)===-1&&F.push(A(Q,B))}),F}function I(E,N,B){var F={};return e(E)&&Object.keys(E).forEach(function(Q){F[Q]=A(E[Q],B)}),Object.keys(N).forEach(function(Q){!e(N[Q])||!E[Q]?F[Q]=A(N[Q],B):F[Q]=C(E[Q],N[Q],B)}),F}function C(E,N,B){var F=Array.isArray(N),Q=Array.isArray(E),X=B||{arrayMerge:f},ae=F===Q;if(ae)if(F){var ne=X.arrayMerge||f;return ne(E,N,B)}else return I(E,N,B);else return A(N,B)}C.all=function(N,B){if(!Array.isArray(N)||N.length<2)throw new Error("first argument should be an array with at least two elements");return N.reduce(function(F,Q){return C(F,Q,B)})};var b=C;return b})});var $Vr=H((tJu,R8i)=>{var xWc=qVr();R8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(n=>{this[n]=a=>this.set(n,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[l,A])=>(o[l]=A,o),{}),n=Object.keys(r),a=[...n];return n.forEach(o=>{if(!r[o])return;let{__before:l,__after:A}=r[o];l&&a.includes(l)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(l),0,o)):A&&a.includes(A)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(A)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:n}=this.order();if(n.length)return r}values(){let{entries:r,order:n}=this.order();return n.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,n){return this.has(r)||this.set(r,n()),this.get(r)}has(r){return this.store.has(r)}set(r,n){return this.store.set(r,n),this}merge(r,n=[]){return Object.keys(r).forEach(a=>{if(n.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,xWc(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((n,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(n[a]=o),n},{})}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var $vt=H((nJu,N8i)=>{N8i.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var Lj=H((sJu,D8i)=>{var GWc=$Vr(),FWc=$vt();D8i.exports=GWc(FWc(Object))});var x8i=H((oJu,k8i)=>{k8i.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var F8i=H((cJu,G8i)=>{G8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var eBt=H((uJu,Z8i)=>{var ZWc=x8i(),LWc=$Vr(),VWc=$vt(),PWc=F8i();Z8i.exports=PWc(LWc(VWc(ZWc)))});var V8i=H((gJu,L8i)=>{L8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var eke=H((dJu,P8i)=>{var WWc=V8i(),OWc=$vt();P8i.exports=WWc(OWc(Object))});var tBt=H((pJu,W8i)=>{W8i.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var rBt=H((IJu,O8i)=>{var MWc=Lj(),HWc=tBt();O8i.exports=HWc(class extends MWc{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((n,a=[])=>typeof n=="function"?new n(...a):n)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),n=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(n=t,t=wt(n));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:n}}),o}})});var nBt=H((CJu,M8i)=>{var tke=Lj(),S4=eke(),YWc=rBt();M8i.exports=class extends tke{constructor(e){super(e),this.alias=new tke(this),this.aliasFields=new S4(this),this.conditionNames=new S4(this),this.descriptionFiles=new S4(this),this.extensionAlias=new tke(this),this.extensions=new S4(this),this.mainFields=new S4(this),this.mainFiles=new S4(this),this.exportsFields=new S4(this),this.importsFields=new S4(this),this.restrictions=new S4(this),this.roots=new S4(this),this.modules=new S4(this),this.plugins=new tke(this),this.fallback=new tke(this),this.byDependency=new tke(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new YWc(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"plugin"])}}});var Y8i=H((yJu,H8i)=>{var QWc=nBt(),ePr=eke();H8i.exports=class extends QWc{constructor(e){super(e),this.modules=new ePr(this),this.moduleExtensions=new ePr(this),this.packageMains=new ePr(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r])}}});var X8i=H((EJu,Q8i)=>{var XWc=Lj();Q8i.exports=class extends XWc{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var U8i=H((vJu,J8i)=>{var JWc=Lj(),UWc=eke();J8i.exports=class extends JWc{constructor(e){super(e),this.allowedHosts=new UWc(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var j8i=H((wJu,K8i)=>{var KWc=qVr(),jWc=Lj(),zWc=tBt();K8i.exports=zWc(class extends jWc{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(KWc(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var eji=H((RJu,$8i)=>{var iBt=Lj(),z8i=eke(),qWc=tBt(),$Wc=j8i(),eOc=nBt();function q8i(e){return Array.isArray(e)?e:[e]}var sBt=qWc(class extends iBt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let n=this;for(;n instanceof sBt;)this.names.unshift(n.ruleName),this.ruleTypes.unshift(n.ruleType),n=n.parent;this.uses=new iBt(this),this.include=new z8i(this),this.exclude=new z8i(this),this.rules=new iBt(this),this.oneOfs=new iBt(this),this.resolve=new eOc(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new $Wc(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new sBt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new sBt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(q8i(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(q8i(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});$8i.exports=sBt});var nji=H((DJu,rji)=>{var e8e=Lj(),tji=eji();rji.exports=class extends e8e{constructor(e){super(e),this.rules=new e8e(this),this.defaultRules=new e8e(this),this.generator=new e8e(this),this.parser=new e8e(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new tji(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new tji(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var oji=H((xJu,sji)=>{var iji=Lj(),tOc=eBt(),rOc=rBt();sji.exports=class extends iji{constructor(e){super(e),this.minimizers=new iji(this),this.splitChunks=new tOc(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new rOc(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var cji=H((FJu,aji)=>{var nOc=eBt();aji.exports=class extends nOc{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var t8e=H(wO=>{"use strict";Object.defineProperty(wO,"__esModule",{value:!0});wO.stringifyPath=wO.quoteKey=wO.isValidVariableName=wO.IS_VALID_IDENTIFIER=wO.quoteString=void 0;var iOc=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,sOc=new Map([["\b","\\b"],[" ","\\t"],[` +`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function oOc(e){return sOc.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function aOc(e){return`'${e.replace(iOc,oOc)}'`}wO.quoteString=aOc;var cOc=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));wO.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function tPr(e){return typeof e=="string"&&!cOc.has(e)&&wO.IS_VALID_IDENTIFIER.test(e)}wO.isValidVariableName=tPr;function lOc(e,t){return tPr(e)?e:t(e)}wO.quoteKey=lOc;function uOc(e,t){let r="";for(let n of e)tPr(n)?r+=`.${n}`:r+=`[${t(n)}]`;return r}wO.stringifyPath=uOc});var rPr=H(v4=>{"use strict";Object.defineProperty(v4,"__esModule",{value:!0});v4.FunctionParser=v4.dedentFunction=v4.functionToString=v4.USED_METHOD_KEY=void 0;var lji=t8e(),gOc={" "(){}}[" "].toString().charAt(0)==='"',AOc={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},dOc={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},pOc=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));v4.USED_METHOD_KEY=new WeakSet;var fOc=(e,t,r,n)=>{let a=typeof n=="string"?n:void 0;return a!==void 0&&v4.USED_METHOD_KEY.add(e),new oBt(e,t,r,a).stringify()};v4.functionToString=fOc;function uji(e){let t;for(let r of e.split(` `).slice(1)){let n=/^[\s\t]+/.exec(r);if(!n)return e;let[a]=n;(t===void 0||a.length")return this.keyPrefix+this.fnString;this.pos=n;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(CWc)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!J8i.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[n,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(n){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return n}consumeSyntaxUntil(t,r){let n=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&n&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(n=!1,this.consumeWhitespace()):n=bWc.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let n=t.exec(this.fnString.substr(this.pos));if(n)return this.pos+=n[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};v4.FunctionParser=rBt});var K8i=H(nBt=>{"use strict";Object.defineProperty(nBt,"__esModule",{value:!0});nBt.arrayToString=void 0;var SWc=(e,t,r)=>{let n=e.map(function(o,l){let A=r(o,l);return A===void 0?String(A):t+A.split(` +`):e}v4.dedentFunction=uji;var oBt=class{constructor(t,r,n,a){this.fn=t,this.indent=r,this.next=n,this.key=a,this.pos=0,this.hadKeyword=!1,this.fnString=Function.prototype.toString.call(t),this.fnType=t.constructor.name,this.keyQuote=a===void 0?"":lji.quoteKey(a,n),this.keyPrefix=a===void 0?"":`${this.keyQuote}:${r?" ":""}`,this.isMethodCandidate=a===void 0?!1:this.fn.name===""||this.fn.name===a}stringify(){let t=this.tryParse();return t?uji(t):`${this.keyPrefix}void ${this.next(this.fnString)}`}getPrefix(){return this.isMethodCandidate&&!this.hadKeyword?dOc[this.fnType]+this.keyQuote:this.keyPrefix+AOc[this.fnType]}tryParse(){if(this.fnString[this.fnString.length-1]!=="}")return this.keyPrefix+this.fnString;if(this.fn.name){let r=this.tryStrippingName();if(r)return r}let t=this.pos;if(this.consumeSyntax()==="class")return this.fnString;if(this.pos=t,this.tryParsePrefixTokens()){let r=this.tryStrippingName();if(r)return r;let n=this.pos;switch(this.consumeSyntax("WORD_LIKE")){case"WORD_LIKE":this.isMethodCandidate&&!this.hadKeyword&&(n=this.pos);case"()":if(this.fnString.substr(this.pos,2)==="=>")return this.keyPrefix+this.fnString;this.pos=n;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(gOc)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!lji.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[n,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(n){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return n}consumeSyntaxUntil(t,r){let n=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&n&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(n=!1,this.consumeWhitespace()):n=pOc.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let n=t.exec(this.fnString.substr(this.pos));if(n)return this.pos+=n[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};v4.FunctionParser=oBt});var gji=H(aBt=>{"use strict";Object.defineProperty(aBt,"__esModule",{value:!0});aBt.arrayToString=void 0;var IOc=(e,t,r)=>{let n=e.map(function(o,l){let A=r(o,l);return A===void 0?String(A):t+A.split(` `).join(` ${t}`)}).join(t?`, `:","),a=t&&n?` -`:"";return`[${a}${n}${a}]`};nBt.arrayToString=SWc});var j8i=H(iBt=>{"use strict";Object.defineProperty(iBt,"__esModule",{value:!0});iBt.objectToString=void 0;var vWc=$Ke(),BWc=KVr(),wWc=K8i(),TWc=(e,t,r,n)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return jVr(e,t,r,n);let a=NWc[Object.prototype.toString.call(e)];return a?a(e,t,r,n):void 0};iBt.objectToString=TWc;var RWc=(e,t,r,n)=>{let a=t?` +`:"";return`[${a}${n}${a}]`};aBt.arrayToString=IOc});var Aji=H(cBt=>{"use strict";Object.defineProperty(cBt,"__esModule",{value:!0});cBt.objectToString=void 0;var hOc=t8e(),mOc=rPr(),COc=gji(),_Oc=(e,t,r,n)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return nPr(e,t,r,n);let a=bOc[Object.prototype.toString.call(e)];return a?a(e,t,r,n):void 0};cBt.objectToString=_Oc;var yOc=(e,t,r,n)=>{let a=t?` `:"",o=t?" ":"",l=Object.keys(e).reduce(function(A,f){let I=e[f],C=r(I,f);if(C===void 0)return A;let b=C.split(` `).join(` -${t}`);return BWc.USED_METHOD_KEY.has(I)?(A.push(`${t}${b}`),A):(A.push(`${t}${vWc.quoteKey(f,r)}:${o}${b}`),A)},[]).join(`,${a}`);return l===""?"{}":`{${a}${l}${a}}`},jVr=(e,t,r)=>`Function(${r("return this")})()`,NWc={"[object Array]":wWc.arrayToString,"[object Object]":RWc,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":jVr,"[object Window]":jVr}});var z8i=H(sBt=>{"use strict";Object.defineProperty(sBt,"__esModule",{value:!0});sBt.toString=void 0;var DWc=$Ke(),kWc=j8i(),xWc=KVr(),GWc={string:DWc.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let n=Symbol.keyFor(e);return n!==void 0?`Symbol.for(${r(n)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:kWc.objectToString,function:xWc.functionToString},FWc=(e,t,r,n)=>e===null?"null":GWc[typeof e](e,t,r,n);sBt.toString=FWc});var tji=H(oBt=>{"use strict";Object.defineProperty(oBt,"__esModule",{value:!0});oBt.stringify=void 0;var q8i=z8i(),$8i=$Ke(),eji=Symbol("root");function ZWc(e,t,r,n={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],l=new Set,A=new Map,f=new Map,I=0,{maxDepth:C=100,references:b=!1,skipUndefinedProperties:E=!1,maxValues:N=1e5}=n,B=LWc(t),F=(ae,ne)=>{if(++I>N||E&&ae===void 0||o.length>C)return;if(ne===void 0)return B(ae,a,F,ne);o.push(ne);let ce=Q(ae,ne===eji?void 0:ne);return o.pop(),ce},Q=b?(ae,ne)=>{if(ae!==null&&(typeof ae=="object"||typeof ae=="function"||typeof ae=="symbol")){if(A.has(ae))return f.set(o.slice(1),A.get(ae)),B(void 0,a,F,ne);A.set(ae,o.slice(1))}return B(ae,a,F,ne)}:(ae,ne)=>{if(l.has(ae))return;l.add(ae);let ce=B(ae,a,F,ne);return l.delete(ae),ce},X=F(e,eji);if(f.size){let ae=a?" ":"",ne=a?` -`:"",ce=`var x${ae}=${ae}${X};${ne}`;for(let[fe,ue]of f.entries()){let de=$8i.stringifyPath(fe,F),be=$8i.stringifyPath(ue,F);ce+=`x${de}${ae}=${ae}x${be};${ne}`}return`(function${ae}()${ae}{${ne}${ce}return x;${ne}}())`}return X}oBt.stringify=ZWc;function LWc(e){return e?(t,r,n,a)=>e(t,r,o=>q8i.toString(o,r,n,a),a):q8i.toString}});var rji=H((x4u,qVr)=>{var zVr=Lj(),VWc=jvt(),PWc=qDe(),WWc=$vt(),OWc=T8i(),MWc=N8i(),HWc=k8i(),YWc=qvt(),QWc=O8i(),XWc=Y8i(),JWc=X8i();qVr.exports=class extends zVr{constructor(){super(),this.entryPoints=new zVr(this),this.output=new MWc(this),this.module=new QWc(this),this.resolve=new WWc(this),this.resolveLoader=new OWc(this),this.optimization=new XWc(this),this.plugins=new zVr(this),this.devServer=new HWc(this),this.performance=new JWc(this),this.node=new VWc(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:n}=tji();return n(e,(a,o,l)=>{if(a&&a.__pluginName){let A=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ +${t}`);return mOc.USED_METHOD_KEY.has(I)?(A.push(`${t}${b}`),A):(A.push(`${t}${hOc.quoteKey(f,r)}:${o}${b}`),A)},[]).join(`,${a}`);return l===""?"{}":`{${a}${l}${a}}`},nPr=(e,t,r)=>`Function(${r("return this")})()`,bOc={"[object Array]":COc.arrayToString,"[object Object]":yOc,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":nPr,"[object Window]":nPr}});var dji=H(lBt=>{"use strict";Object.defineProperty(lBt,"__esModule",{value:!0});lBt.toString=void 0;var EOc=t8e(),SOc=Aji(),vOc=rPr(),BOc={string:EOc.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let n=Symbol.keyFor(e);return n!==void 0?`Symbol.for(${r(n)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:SOc.objectToString,function:vOc.functionToString},wOc=(e,t,r,n)=>e===null?"null":BOc[typeof e](e,t,r,n);lBt.toString=wOc});var hji=H(uBt=>{"use strict";Object.defineProperty(uBt,"__esModule",{value:!0});uBt.stringify=void 0;var pji=dji(),fji=t8e(),Iji=Symbol("root");function TOc(e,t,r,n={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],l=new Set,A=new Map,f=new Map,I=0,{maxDepth:C=100,references:b=!1,skipUndefinedProperties:E=!1,maxValues:N=1e5}=n,B=ROc(t),F=(ae,ne)=>{if(++I>N||E&&ae===void 0||o.length>C)return;if(ne===void 0)return B(ae,a,F,ne);o.push(ne);let ce=Q(ae,ne===Iji?void 0:ne);return o.pop(),ce},Q=b?(ae,ne)=>{if(ae!==null&&(typeof ae=="object"||typeof ae=="function"||typeof ae=="symbol")){if(A.has(ae))return f.set(o.slice(1),A.get(ae)),B(void 0,a,F,ne);A.set(ae,o.slice(1))}return B(ae,a,F,ne)}:(ae,ne)=>{if(l.has(ae))return;l.add(ae);let ce=B(ae,a,F,ne);return l.delete(ae),ce},X=F(e,Iji);if(f.size){let ae=a?" ":"",ne=a?` +`:"",ce=`var x${ae}=${ae}${X};${ne}`;for(let[fe,ue]of f.entries()){let de=fji.stringifyPath(fe,F),be=fji.stringifyPath(ue,F);ce+=`x${de}${ae}=${ae}x${be};${ne}`}return`(function${ae}()${ae}{${ne}${ce}return x;${ne}}())`}return X}uBt.stringify=TOc;function ROc(e){return e?(t,r,n,a)=>e(t,r,o=>pji.toString(o,r,n,a),a):pji.toString}});var mji=H((HJu,sPr)=>{var iPr=Lj(),NOc=eBt(),DOc=eke(),kOc=nBt(),xOc=Y8i(),GOc=X8i(),FOc=U8i(),ZOc=rBt(),LOc=nji(),VOc=oji(),POc=cji();sPr.exports=class extends iPr{constructor(){super(),this.entryPoints=new iPr(this),this.output=new GOc(this),this.module=new LOc(this),this.resolve=new kOc(this),this.resolveLoader=new xOc(this),this.optimization=new VOc(this),this.plugins=new iPr(this),this.devServer=new FOc(this),this.performance=new POc(this),this.node=new NOc(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:n}=hji();return n(e,(a,o,l)=>{if(a&&a.__pluginName){let A=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ `,f=a.__pluginPath?`(require(${l(a.__pluginPath)}))`:a.__pluginConstructorName;if(f){let I=l(a.__pluginArgs).slice(1,-1);return`${A}new ${f}(${I})`}return A+l(a.__pluginArgs&&a.__pluginArgs.length?{args:a.__pluginArgs}:{})}if(a&&a.__ruleNames){let A=a.__ruleTypes;return`/* ${r}.module${a.__ruleNames.map((I,C)=>`.${A?A[C]:"rule"}('${I}')`).join("")}${a.__useName?`.use('${a.__useName}')`:""} */ -`+l(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":l(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new PWc(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new YWc(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,n)=>Object.assign(r,{[n]:e[n].values()}),{})}))}toString(e){return qVr.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(n=>this.entry(n).merge([].concat(e.entry[n]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var $Ce=H(uBt=>{"use strict";Object.defineProperty(uBt,"__esModule",{value:!0});uBt.isJsonObject=sOc;uBt.isJsonArray=oOc;function sOc(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function oOc(e){return Array.isArray(e)}});var gBt=H(iPr=>{"use strict";Object.defineProperty(iPr,"__esModule",{value:!0});iPr.getTypesOfSchema=t8e;var pji=$Ce(),fji=["string","integer","number","object","array","boolean","null"];function t8e(e){if(!e)return new Set;if(e===!0)return new Set(fji);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,pji.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set(fji);if((0,pji.isJsonObject)(e.not)){let r=t8e(e.not);t=new Set([...t].filter(n=>!r.has(n)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let n=t8e(r);t=new Set([...n].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let n of e.oneOf){let a=t8e(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let n of e.anyOf){let a=t8e(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var mji=H(sPr=>{"use strict";Object.defineProperty(sPr,"__esModule",{value:!0});sPr.addUndefinedDefaults=hji;var sle=$Ce(),Iji=gBt();function hji(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let n=(0,Iji.getTypesOfSchema)(r);if(n.size===0)return e;let a;if(n.size===1)a=Array.from(n)[0];else if(n.size===2&&n.has("array")&&n.has("object"))a="array";else if(r.properties&&n.has("object"))a="object";else if(r.items&&n.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,sle.isJsonObject)(e))o=e;else return e;if(!(0,sle.isJsonObject)(r.properties))return o;for(let[l,A]of Object.entries(r.properties)){if(l==="$schema"||!(0,sle.isJsonObject)(A))continue;let f=o[l];if(f===void 0)o[l]=A.default;else if((0,sle.isJsonObject)(f)){let I=A.oneOf||A.anyOf,C=Object.keys(f),b=(0,sle.isJsonArray)(I)&&I.find(E=>{if(!(0,sle.isJsonObject)(E))return!1;let N=(0,Iji.getTypesOfSchema)(E);if(N.size===1&&N.has("object")&&(0,sle.isJsonObject)(E.properties)){let B=Object.keys(E.properties);return C.every(F=>B.includes(F))}return!1});b&&(0,sle.isJsonObject)(b)&&(o[l]=hji(f,t,b))}}return o}return e}});var _ji=H(Cji=>{"use strict";Object.defineProperty(Cji,"__esModule",{value:!0})});var aPr=H(r8e=>{"use strict";Object.defineProperty(r8e,"__esModule",{value:!0});r8e.buildJsonPointer=oPr;r8e.joinJsonPointer=aOc;r8e.parseJsonPointer=cOc;function oPr(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function aOc(e,...t){return e=="/"?oPr(t):e+oPr(t)}function cOc(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var s8e=H(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});v_.regexpCode=v_.getEsmExportName=v_.getProperty=v_.safeStringify=v_.stringify=v_.strConcat=v_.addCodeArg=v_.str=v_._=v_.nil=v_._Code=v_.Name=v_.IDENTIFIER=v_._CodeOrName=void 0;var n8e=class{};v_._CodeOrName=n8e;v_.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var e_e=class extends n8e{constructor(t){if(super(),!v_.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};v_.Name=e_e;var fH=class extends n8e{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof e_e&&(r[n.str]=(r[n.str]||0)+1),r),{})}};v_._Code=fH;v_.nil=new fH("");function yji(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(DV,"__esModule",{value:!0});DV.ValueScope=DV.ValueScopeName=DV.Scope=DV.varKinds=DV.UsedValueState=void 0;var NV=s8e(),uPr=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},ABt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(ABt||(DV.UsedValueState=ABt={}));DV.varKinds={const:new NV.Name("const"),let:new NV.Name("let"),var:new NV.Name("var")};var dBt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof NV.Name?t:this.name(t)}name(t){return new NV.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};DV.Scope=dBt;var pBt=class extends NV.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,NV._)`.${new NV.Name(r)}[${n}]`}};DV.ValueScopeName=pBt;var hOc=(0,NV._)`\n`,gPr=class extends dBt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?hOc:NV.nil}}get(){return this._scope}name(t){return new pBt(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,l=(n=r.key)!==null&&n!==void 0?n:r.ref,A=this._values[o];if(A){let C=A.get(l);if(C)return C}else A=this._values[o]=new Map;A.set(l,a);let f=this._scope[o]||(this._scope[o]=[]),I=f.length;return f[I]=r.ref,a.setValue(r,{property:o,itemIndex:I}),a}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,NV._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,n)}_reduceValues(t,r,n={},a){let o=NV.nil;for(let l in t){let A=t[l];if(!A)continue;let f=n[l]=n[l]||new Map;A.forEach(I=>{if(f.has(I))return;f.set(I,ABt.Started);let C=r(I);if(C){let b=this.opts.es5?DV.varKinds.var:DV.varKinds.const;o=(0,NV._)`${o}${b} ${I} = ${C};${this.opts._n}`}else if(C=a?.(I))o=(0,NV._)`${o}${C}${this.opts._n}`;else throw new uPr(I);f.set(I,ABt.Completed)})}return o}};DV.ValueScope=gPr});var Hh=H(om=>{"use strict";Object.defineProperty(om,"__esModule",{value:!0});om.or=om.and=om.not=om.CodeGen=om.operators=om.varKinds=om.ValueScopeName=om.ValueScope=om.Scope=om.Name=om.regexpCode=om.stringify=om.getProperty=om.nil=om.strConcat=om.str=om._=void 0;var wC=s8e(),B4=APr(),ole=s8e();Object.defineProperty(om,"_",{enumerable:!0,get:function(){return ole._}});Object.defineProperty(om,"str",{enumerable:!0,get:function(){return ole.str}});Object.defineProperty(om,"strConcat",{enumerable:!0,get:function(){return ole.strConcat}});Object.defineProperty(om,"nil",{enumerable:!0,get:function(){return ole.nil}});Object.defineProperty(om,"getProperty",{enumerable:!0,get:function(){return ole.getProperty}});Object.defineProperty(om,"stringify",{enumerable:!0,get:function(){return ole.stringify}});Object.defineProperty(om,"regexpCode",{enumerable:!0,get:function(){return ole.regexpCode}});Object.defineProperty(om,"Name",{enumerable:!0,get:function(){return ole.Name}});var mBt=APr();Object.defineProperty(om,"Scope",{enumerable:!0,get:function(){return mBt.Scope}});Object.defineProperty(om,"ValueScope",{enumerable:!0,get:function(){return mBt.ValueScope}});Object.defineProperty(om,"ValueScopeName",{enumerable:!0,get:function(){return mBt.ValueScopeName}});Object.defineProperty(om,"varKinds",{enumerable:!0,get:function(){return mBt.varKinds}});om.operators={GT:new wC._Code(">"),GTE:new wC._Code(">="),LT:new wC._Code("<"),LTE:new wC._Code("<="),EQ:new wC._Code("==="),NEQ:new wC._Code("!=="),NOT:new wC._Code("!"),OR:new wC._Code("||"),AND:new wC._Code("&&"),ADD:new wC._Code("+")};var ete=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},dPr=class extends ete{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?B4.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=tke(this.rhs,t,r)),this}get names(){return this.rhs instanceof wC._CodeOrName?this.rhs.names:{}}},fBt=class extends ete{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof wC.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=tke(this.rhs,t,r),this}get names(){let t=this.lhs instanceof wC.Name?{}:{...this.lhs.names};return hBt(t,this.rhs)}},pPr=class extends fBt{constructor(t,r,n,a){super(t,n,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},fPr=class extends ete{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},IPr=class extends ete{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},hPr=class extends ete{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},mPr=class extends ete{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=tke(this.code,t,r),this}get names(){return this.code instanceof wC._CodeOrName?this.code.names:{}}},o8e=class extends ete{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,a=n.length;for(;a--;){let o=n[a];o.optimizeNames(t,r)||(mOc(t,o.names),n.splice(a,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>n_e(t,r.names),{})}},tte=class extends o8e{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},CPr=class extends o8e{},eke=class extends tte{};eke.kind="else";var t_e=class e extends tte{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new eke(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Eji(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=tke(this.condition,t,r),this}get names(){let t=super.names;return hBt(t,this.condition),this.else&&n_e(t,this.else.names),t}};t_e.kind="if";var r_e=class extends tte{};r_e.kind="for";var _Pr=class extends r_e{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=tke(this.iteration,t,r),this}get names(){return n_e(super.names,this.iteration.names)}},yPr=class extends r_e{constructor(t,r,n,a){super(),this.varKind=t,this.name=r,this.from=n,this.to=a}render(t){let r=t.es5?B4.varKinds.var:this.varKind,{name:n,from:a,to:o}=this;return`for(${r} ${n}=${a}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=hBt(super.names,this.from);return hBt(t,this.to)}},IBt=class extends r_e{constructor(t,r,n,a){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=tke(this.iterable,t,r),this}get names(){return n_e(super.names,this.iterable.names)}},a8e=class extends tte{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};a8e.kind="func";var c8e=class extends o8e{render(t){return"return "+super.render(t)}};c8e.kind="return";var bPr=class extends tte{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,a;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&n_e(t,this.catch.names),this.finally&&n_e(t,this.finally.names),t}},l8e=class extends tte{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};l8e.kind="catch";var u8e=class extends tte{render(t){return"finally"+super.render(t)}};u8e.kind="finally";var EPr=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new B4.Scope({parent:t}),this._nodes=[new CPr]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,a){let o=this._scope.toName(r);return n!==void 0&&a&&(this._constants[o.str]=n),this._leafNode(new dPr(t,o,n)),o}const(t,r,n){return this._def(B4.varKinds.const,t,r,n)}let(t,r,n){return this._def(B4.varKinds.let,t,r,n)}var(t,r,n){return this._def(B4.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new fBt(t,r,n))}add(t,r){return this._leafNode(new pPr(t,om.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==wC.nil&&this._leafNode(new mPr(t)),this}object(...t){let r=["{"];for(let[n,a]of t)r.length>1&&r.push(","),r.push(n),(n!==a||this.opts.es5)&&(r.push(":"),(0,wC.addCodeArg)(r,a));return r.push("}"),new wC._Code(r)}if(t,r,n){if(this._blockNode(new t_e(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new t_e(t))}else(){return this._elseNode(new eke)}endIf(){return this._endBlockNode(t_e,eke)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new _Pr(t),r)}forRange(t,r,n,a,o=this.opts.es5?B4.varKinds.var:B4.varKinds.let){let l=this._scope.toName(t);return this._for(new yPr(o,l,r,n),()=>a(l))}forOf(t,r,n,a=B4.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let l=r instanceof wC.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,wC._)`${l}.length`,A=>{this.var(o,(0,wC._)`${l}[${A}]`),n(o)})}return this._for(new IBt("of",a,o,r),()=>n(o))}forIn(t,r,n,a=this.opts.es5?B4.varKinds.var:B4.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,wC._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new IBt("in",a,o,r),()=>n(o))}endFor(){return this._endBlockNode(r_e)}label(t){return this._leafNode(new fPr(t))}break(t){return this._leafNode(new IPr(t))}return(t){let r=new c8e;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(c8e)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new bPr;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new l8e(o),r(o)}return n&&(this._currNode=a.finally=new u8e,this.code(n)),this._endBlockNode(l8e,u8e)}throw(t){return this._leafNode(new hPr(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=wC.nil,n,a){return this._blockNode(new a8e(t,r,n)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(a8e)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof t_e))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};om.CodeGen=EPr;function n_e(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function hBt(e,t){return t instanceof wC._CodeOrName?n_e(e,t.names):e}function tke(e,t,r){if(e instanceof wC.Name)return n(e);if(!a(e))return e;return new wC._Code(e._items.reduce((o,l)=>(l instanceof wC.Name&&(l=n(l)),l instanceof wC._Code?o.push(...l._items):o.push(l),o),[]));function n(o){let l=r[o.str];return l===void 0||t[o.str]!==1?o:(delete t[o.str],l)}function a(o){return o instanceof wC._Code&&o._items.some(l=>l instanceof wC.Name&&t[l.str]===1&&r[l.str]!==void 0)}}function mOc(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Eji(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,wC._)`!${SPr(e)}`}om.not=Eji;var COc=Sji(om.operators.AND);function _Oc(...e){return e.reduce(COc)}om.and=_Oc;var yOc=Sji(om.operators.OR);function bOc(...e){return e.reduce(yOc)}om.or=bOc;function Sji(e){return(t,r)=>t===wC.nil?r:r===wC.nil?t:(0,wC._)`${SPr(t)} ${e} ${SPr(r)}`}function SPr(e){return e instanceof wC.Name?e:(0,wC._)`(${e})`}});var B_=H(Bm=>{"use strict";Object.defineProperty(Bm,"__esModule",{value:!0});Bm.checkStrictMode=Bm.getErrorPath=Bm.Type=Bm.useFunc=Bm.setEvaluated=Bm.evaluatedPropsToName=Bm.mergeEvaluated=Bm.eachItem=Bm.unescapeJsonPointer=Bm.escapeJsonPointer=Bm.escapeFragment=Bm.unescapeFragment=Bm.schemaRefOrVal=Bm.schemaHasRulesButRef=Bm.schemaHasRules=Bm.checkUnknownRules=Bm.alwaysValidSchema=Bm.toHash=void 0;var zb=Hh(),EOc=s8e();function SOc(e){let t={};for(let r of e)t[r]=!0;return t}Bm.toHash=SOc;function vOc(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(wji(e,t),!Tji(t,e.self.RULES.all))}Bm.alwaysValidSchema=vOc;function wji(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=n.RULES.keywords;for(let o in t)a[o]||Dji(e,`unknown keyword: "${o}"`)}Bm.checkUnknownRules=wji;function Tji(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Bm.schemaHasRules=Tji;function BOc(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Bm.schemaHasRulesButRef=BOc;function wOc({topSchemaRef:e,schemaPath:t},r,n,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,zb._)`${r}`}return(0,zb._)`${e}${t}${(0,zb.getProperty)(n)}`}Bm.schemaRefOrVal=wOc;function TOc(e){return Rji(decodeURIComponent(e))}Bm.unescapeFragment=TOc;function ROc(e){return encodeURIComponent(BPr(e))}Bm.escapeFragment=ROc;function BPr(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Bm.escapeJsonPointer=BPr;function Rji(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Bm.unescapeJsonPointer=Rji;function NOc(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Bm.eachItem=NOc;function vji({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(a,o,l,A)=>{let f=l===void 0?o:l instanceof zb.Name?(o instanceof zb.Name?e(a,o,l):t(a,o,l),l):o instanceof zb.Name?(t(a,l,o),o):r(o,l);return A===zb.Name&&!(f instanceof zb.Name)?n(a,f):f}}Bm.mergeEvaluated={props:vji({mergeNames:(e,t,r)=>e.if((0,zb._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,zb._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,zb._)`${r} || {}`).code((0,zb._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,zb._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,zb._)`${r} || {}`),wPr(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Nji}),items:vji({mergeNames:(e,t,r)=>e.if((0,zb._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,zb._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,zb._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,zb._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Nji(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,zb._)`{}`);return t!==void 0&&wPr(e,r,t),r}Bm.evaluatedPropsToName=Nji;function wPr(e,t,r){Object.keys(r).forEach(n=>e.assign((0,zb._)`${t}${(0,zb.getProperty)(n)}`,!0))}Bm.setEvaluated=wPr;var Bji={};function DOc(e,t){return e.scopeValue("func",{ref:t,code:Bji[t.code]||(Bji[t.code]=new EOc._Code(t.code))})}Bm.useFunc=DOc;var vPr;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(vPr||(Bm.Type=vPr={}));function kOc(e,t,r){if(e instanceof zb.Name){let n=t===vPr.Num;return r?n?(0,zb._)`"[" + ${e} + "]"`:(0,zb._)`"['" + ${e} + "']"`:n?(0,zb._)`"/" + ${e}`:(0,zb._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,zb.getProperty)(e).toString():"/"+BPr(e)}Bm.getErrorPath=kOc;function Dji(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Bm.checkStrictMode=Dji});var rte=H(TPr=>{"use strict";Object.defineProperty(TPr,"__esModule",{value:!0});var QG=Hh(),xOc={data:new QG.Name("data"),valCxt:new QG.Name("valCxt"),instancePath:new QG.Name("instancePath"),parentData:new QG.Name("parentData"),parentDataProperty:new QG.Name("parentDataProperty"),rootData:new QG.Name("rootData"),dynamicAnchors:new QG.Name("dynamicAnchors"),vErrors:new QG.Name("vErrors"),errors:new QG.Name("errors"),this:new QG.Name("this"),self:new QG.Name("self"),scope:new QG.Name("scope"),json:new QG.Name("json"),jsonPos:new QG.Name("jsonPos"),jsonLen:new QG.Name("jsonLen"),jsonPart:new QG.Name("jsonPart")};TPr.default=xOc});var g8e=H(XG=>{"use strict";Object.defineProperty(XG,"__esModule",{value:!0});XG.extendErrors=XG.resetErrorsCount=XG.reportExtraError=XG.reportError=XG.keyword$DataError=XG.keywordError=void 0;var e_=Hh(),CBt=B_(),rL=rte();XG.keywordError={message:({keyword:e})=>(0,e_.str)`must pass "${e}" keyword validation`};XG.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,e_.str)`"${e}" keyword must be ${t} ($data)`:(0,e_.str)`"${e}" keyword is invalid ($data)`};function GOc(e,t=XG.keywordError,r,n){let{it:a}=e,{gen:o,compositeRule:l,allErrors:A}=a,f=Gji(e,t,r);n??(l||A)?kji(o,f):xji(a,(0,e_._)`[${f}]`)}XG.reportError=GOc;function FOc(e,t=XG.keywordError,r){let{it:n}=e,{gen:a,compositeRule:o,allErrors:l}=n,A=Gji(e,t,r);kji(a,A),o||l||xji(n,rL.default.vErrors)}XG.reportExtraError=FOc;function ZOc(e,t){e.assign(rL.default.errors,t),e.if((0,e_._)`${rL.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,e_._)`${rL.default.vErrors}.length`,t),()=>e.assign(rL.default.vErrors,null)))}XG.resetErrorsCount=ZOc;function LOc({gen:e,keyword:t,schemaValue:r,data:n,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let l=e.name("err");e.forRange("i",a,rL.default.errors,A=>{e.const(l,(0,e_._)`${rL.default.vErrors}[${A}]`),e.if((0,e_._)`${l}.instancePath === undefined`,()=>e.assign((0,e_._)`${l}.instancePath`,(0,e_.strConcat)(rL.default.instancePath,o.errorPath))),e.assign((0,e_._)`${l}.schemaPath`,(0,e_.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,e_._)`${l}.schema`,r),e.assign((0,e_._)`${l}.data`,n))})}XG.extendErrors=LOc;function kji(e,t){let r=e.const("err",t);e.if((0,e_._)`${rL.default.vErrors} === null`,()=>e.assign(rL.default.vErrors,(0,e_._)`[${r}]`),(0,e_._)`${rL.default.vErrors}.push(${r})`),e.code((0,e_._)`${rL.default.errors}++`)}function xji(e,t){let{gen:r,validateName:n,schemaEnv:a}=e;a.$async?r.throw((0,e_._)`new ${e.ValidationError}(${t})`):(r.assign((0,e_._)`${n}.errors`,t),r.return(!1))}var i_e={keyword:new e_.Name("keyword"),schemaPath:new e_.Name("schemaPath"),params:new e_.Name("params"),propertyName:new e_.Name("propertyName"),message:new e_.Name("message"),schema:new e_.Name("schema"),parentSchema:new e_.Name("parentSchema")};function Gji(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,e_._)`{}`:VOc(e,t,r)}function VOc(e,t,r={}){let{gen:n,it:a}=e,o=[POc(a,r),WOc(e,r)];return OOc(e,t,o),n.object(...o)}function POc({errorPath:e},{instancePath:t}){let r=t?(0,e_.str)`${e}${(0,CBt.getErrorPath)(t,CBt.Type.Str)}`:e;return[rL.default.instancePath,(0,e_.strConcat)(rL.default.instancePath,r)]}function WOc({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let a=n?t:(0,e_.str)`${t}/${e}`;return r&&(a=(0,e_.str)`${a}${(0,CBt.getErrorPath)(r,CBt.Type.Str)}`),[i_e.schemaPath,a]}function OOc(e,{params:t,message:r},n){let{keyword:a,data:o,schemaValue:l,it:A}=e,{opts:f,propertyName:I,topSchemaRef:C,schemaPath:b}=A;n.push([i_e.keyword,a],[i_e.params,typeof t=="function"?t(e):t||(0,e_._)`{}`]),f.messages&&n.push([i_e.message,typeof r=="function"?r(e):r]),f.verbose&&n.push([i_e.schema,l],[i_e.parentSchema,(0,e_._)`${C}${b}`],[rL.default.data,o]),I&&n.push([i_e.propertyName,I])}});var Zji=H(rke=>{"use strict";Object.defineProperty(rke,"__esModule",{value:!0});rke.boolOrEmptySchema=rke.topBoolOrEmptySchema=void 0;var MOc=g8e(),HOc=Hh(),YOc=rte(),QOc={message:"boolean schema is false"};function XOc(e){let{gen:t,schema:r,validateName:n}=e;r===!1?Fji(e,!1):typeof r=="object"&&r.$async===!0?t.return(YOc.default.data):(t.assign((0,HOc._)`${n}.errors`,null),t.return(!0))}rke.topBoolOrEmptySchema=XOc;function JOc(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),Fji(e)):r.var(t,!0)}rke.boolOrEmptySchema=JOc;function Fji(e,t){let{gen:r,data:n}=e,a={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,MOc.reportError)(a,QOc,void 0,t)}});var RPr=H(nke=>{"use strict";Object.defineProperty(nke,"__esModule",{value:!0});nke.getRules=nke.isJSONType=void 0;var UOc=["string","number","integer","boolean","null","object","array"],KOc=new Set(UOc);function jOc(e){return typeof e=="string"&&KOc.has(e)}nke.isJSONType=jOc;function zOc(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}nke.getRules=zOc});var NPr=H(ale=>{"use strict";Object.defineProperty(ale,"__esModule",{value:!0});ale.shouldUseRule=ale.shouldUseGroup=ale.schemaHasRulesForType=void 0;function qOc({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&Lji(e,n)}ale.schemaHasRulesForType=qOc;function Lji(e,t){return t.rules.some(r=>Vji(e,r))}ale.shouldUseGroup=Lji;function Vji(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}ale.shouldUseRule=Vji});var A8e=H(JG=>{"use strict";Object.defineProperty(JG,"__esModule",{value:!0});JG.reportTypeError=JG.checkDataTypes=JG.checkDataType=JG.coerceAndCheckDataType=JG.getJSONTypes=JG.getSchemaTypes=JG.DataType=void 0;var $Oc=RPr(),e3c=NPr(),t3c=g8e(),Bh=Hh(),Pji=B_(),ike;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ike||(JG.DataType=ike={}));function r3c(e){let t=Wji(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}JG.getSchemaTypes=r3c;function Wji(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every($Oc.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}JG.getJSONTypes=Wji;function n3c(e,t){let{gen:r,data:n,opts:a}=e,o=i3c(t,a.coerceTypes),l=t.length>0&&!(o.length===0&&t.length===1&&(0,e3c.schemaHasRulesForType)(e,t[0]));if(l){let A=kPr(t,n,a.strictNumbers,ike.Wrong);r.if(A,()=>{o.length?s3c(e,t,o):xPr(e)})}return l}JG.coerceAndCheckDataType=n3c;var Oji=new Set(["string","number","integer","boolean","null"]);function i3c(e,t){return t?e.filter(r=>Oji.has(r)||t==="array"&&r==="array"):[]}function s3c(e,t,r){let{gen:n,data:a,opts:o}=e,l=n.let("dataType",(0,Bh._)`typeof ${a}`),A=n.let("coerced",(0,Bh._)`undefined`);o.coerceTypes==="array"&&n.if((0,Bh._)`${l} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>n.assign(a,(0,Bh._)`${a}[0]`).assign(l,(0,Bh._)`typeof ${a}`).if(kPr(t,a,o.strictNumbers),()=>n.assign(A,a))),n.if((0,Bh._)`${A} !== undefined`);for(let I of r)(Oji.has(I)||I==="array"&&o.coerceTypes==="array")&&f(I);n.else(),xPr(e),n.endIf(),n.if((0,Bh._)`${A} !== undefined`,()=>{n.assign(a,A),o3c(e,A)});function f(I){switch(I){case"string":n.elseIf((0,Bh._)`${l} == "number" || ${l} == "boolean"`).assign(A,(0,Bh._)`"" + ${a}`).elseIf((0,Bh._)`${a} === null`).assign(A,(0,Bh._)`""`);return;case"number":n.elseIf((0,Bh._)`${l} == "boolean" || ${a} === null +`+l(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":l(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new DOc(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new ZOc(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,n)=>Object.assign(r,{[n]:e[n].values()}),{})}))}toString(e){return sPr.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(n=>this.entry(n).merge([].concat(e.entry[n]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var e_e=H(pBt=>{"use strict";Object.defineProperty(pBt,"__esModule",{value:!0});pBt.isJsonObject=zOc;pBt.isJsonArray=qOc;function zOc(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function qOc(e){return Array.isArray(e)}});var fBt=H(gPr=>{"use strict";Object.defineProperty(gPr,"__esModule",{value:!0});gPr.getTypesOfSchema=n8e;var Nji=e_e(),Dji=["string","integer","number","object","array","boolean","null"];function n8e(e){if(!e)return new Set;if(e===!0)return new Set(Dji);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,Nji.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set(Dji);if((0,Nji.isJsonObject)(e.not)){let r=n8e(e.not);t=new Set([...t].filter(n=>!r.has(n)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let n=n8e(r);t=new Set([...n].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let n of e.oneOf){let a=n8e(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let n of e.anyOf){let a=n8e(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var Gji=H(APr=>{"use strict";Object.defineProperty(APr,"__esModule",{value:!0});APr.addUndefinedDefaults=xji;var ole=e_e(),kji=fBt();function xji(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let n=(0,kji.getTypesOfSchema)(r);if(n.size===0)return e;let a;if(n.size===1)a=Array.from(n)[0];else if(n.size===2&&n.has("array")&&n.has("object"))a="array";else if(r.properties&&n.has("object"))a="object";else if(r.items&&n.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,ole.isJsonObject)(e))o=e;else return e;if(!(0,ole.isJsonObject)(r.properties))return o;for(let[l,A]of Object.entries(r.properties)){if(l==="$schema"||!(0,ole.isJsonObject)(A))continue;let f=o[l];if(f===void 0)o[l]=A.default;else if((0,ole.isJsonObject)(f)){let I=A.oneOf||A.anyOf,C=Object.keys(f),b=(0,ole.isJsonArray)(I)&&I.find(E=>{if(!(0,ole.isJsonObject)(E))return!1;let N=(0,kji.getTypesOfSchema)(E);if(N.size===1&&N.has("object")&&(0,ole.isJsonObject)(E.properties)){let B=Object.keys(E.properties);return C.every(F=>B.includes(F))}return!1});b&&(0,ole.isJsonObject)(b)&&(o[l]=xji(f,t,b))}}return o}return e}});var Zji=H(Fji=>{"use strict";Object.defineProperty(Fji,"__esModule",{value:!0})});var pPr=H(i8e=>{"use strict";Object.defineProperty(i8e,"__esModule",{value:!0});i8e.buildJsonPointer=dPr;i8e.joinJsonPointer=$Oc;i8e.parseJsonPointer=e3c;function dPr(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function $Oc(e,...t){return e=="/"?dPr(t):e+dPr(t)}function e3c(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var a8e=H(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});v_.regexpCode=v_.getEsmExportName=v_.getProperty=v_.safeStringify=v_.stringify=v_.strConcat=v_.addCodeArg=v_.str=v_._=v_.nil=v_._Code=v_.Name=v_.IDENTIFIER=v_._CodeOrName=void 0;var s8e=class{};v_._CodeOrName=s8e;v_.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var t_e=class extends s8e{constructor(t){if(super(),!v_.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};v_.Name=t_e;var fH=class extends s8e{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof t_e&&(r[n.str]=(r[n.str]||0)+1),r),{})}};v_._Code=fH;v_.nil=new fH("");function Lji(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(DV,"__esModule",{value:!0});DV.ValueScope=DV.ValueScopeName=DV.Scope=DV.varKinds=DV.UsedValueState=void 0;var NV=a8e(),hPr=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},IBt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(IBt||(DV.UsedValueState=IBt={}));DV.varKinds={const:new NV.Name("const"),let:new NV.Name("let"),var:new NV.Name("var")};var hBt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof NV.Name?t:this.name(t)}name(t){return new NV.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};DV.Scope=hBt;var mBt=class extends NV.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,NV._)`.${new NV.Name(r)}[${n}]`}};DV.ValueScopeName=mBt;var l3c=(0,NV._)`\n`,mPr=class extends hBt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?l3c:NV.nil}}get(){return this._scope}name(t){return new mBt(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,l=(n=r.key)!==null&&n!==void 0?n:r.ref,A=this._values[o];if(A){let C=A.get(l);if(C)return C}else A=this._values[o]=new Map;A.set(l,a);let f=this._scope[o]||(this._scope[o]=[]),I=f.length;return f[I]=r.ref,a.setValue(r,{property:o,itemIndex:I}),a}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,NV._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,n)}_reduceValues(t,r,n={},a){let o=NV.nil;for(let l in t){let A=t[l];if(!A)continue;let f=n[l]=n[l]||new Map;A.forEach(I=>{if(f.has(I))return;f.set(I,IBt.Started);let C=r(I);if(C){let b=this.opts.es5?DV.varKinds.var:DV.varKinds.const;o=(0,NV._)`${o}${b} ${I} = ${C};${this.opts._n}`}else if(C=a?.(I))o=(0,NV._)`${o}${C}${this.opts._n}`;else throw new hPr(I);f.set(I,IBt.Completed)})}return o}};DV.ValueScope=mPr});var Hh=H(om=>{"use strict";Object.defineProperty(om,"__esModule",{value:!0});om.or=om.and=om.not=om.CodeGen=om.operators=om.varKinds=om.ValueScopeName=om.ValueScope=om.Scope=om.Name=om.regexpCode=om.stringify=om.getProperty=om.nil=om.strConcat=om.str=om._=void 0;var wC=a8e(),B4=CPr(),ale=a8e();Object.defineProperty(om,"_",{enumerable:!0,get:function(){return ale._}});Object.defineProperty(om,"str",{enumerable:!0,get:function(){return ale.str}});Object.defineProperty(om,"strConcat",{enumerable:!0,get:function(){return ale.strConcat}});Object.defineProperty(om,"nil",{enumerable:!0,get:function(){return ale.nil}});Object.defineProperty(om,"getProperty",{enumerable:!0,get:function(){return ale.getProperty}});Object.defineProperty(om,"stringify",{enumerable:!0,get:function(){return ale.stringify}});Object.defineProperty(om,"regexpCode",{enumerable:!0,get:function(){return ale.regexpCode}});Object.defineProperty(om,"Name",{enumerable:!0,get:function(){return ale.Name}});var bBt=CPr();Object.defineProperty(om,"Scope",{enumerable:!0,get:function(){return bBt.Scope}});Object.defineProperty(om,"ValueScope",{enumerable:!0,get:function(){return bBt.ValueScope}});Object.defineProperty(om,"ValueScopeName",{enumerable:!0,get:function(){return bBt.ValueScopeName}});Object.defineProperty(om,"varKinds",{enumerable:!0,get:function(){return bBt.varKinds}});om.operators={GT:new wC._Code(">"),GTE:new wC._Code(">="),LT:new wC._Code("<"),LTE:new wC._Code("<="),EQ:new wC._Code("==="),NEQ:new wC._Code("!=="),NOT:new wC._Code("!"),OR:new wC._Code("||"),AND:new wC._Code("&&"),ADD:new wC._Code("+")};var tte=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},_Pr=class extends tte{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?B4.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=nke(this.rhs,t,r)),this}get names(){return this.rhs instanceof wC._CodeOrName?this.rhs.names:{}}},CBt=class extends tte{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof wC.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=nke(this.rhs,t,r),this}get names(){let t=this.lhs instanceof wC.Name?{}:{...this.lhs.names};return yBt(t,this.rhs)}},yPr=class extends CBt{constructor(t,r,n,a){super(t,n,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},bPr=class extends tte{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},EPr=class extends tte{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},SPr=class extends tte{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},vPr=class extends tte{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=nke(this.code,t,r),this}get names(){return this.code instanceof wC._CodeOrName?this.code.names:{}}},c8e=class extends tte{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,a=n.length;for(;a--;){let o=n[a];o.optimizeNames(t,r)||(u3c(t,o.names),n.splice(a,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>i_e(t,r.names),{})}},rte=class extends c8e{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},BPr=class extends c8e{},rke=class extends rte{};rke.kind="else";var r_e=class e extends rte{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new rke(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Pji(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=nke(this.condition,t,r),this}get names(){let t=super.names;return yBt(t,this.condition),this.else&&i_e(t,this.else.names),t}};r_e.kind="if";var n_e=class extends rte{};n_e.kind="for";var wPr=class extends n_e{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=nke(this.iteration,t,r),this}get names(){return i_e(super.names,this.iteration.names)}},TPr=class extends n_e{constructor(t,r,n,a){super(),this.varKind=t,this.name=r,this.from=n,this.to=a}render(t){let r=t.es5?B4.varKinds.var:this.varKind,{name:n,from:a,to:o}=this;return`for(${r} ${n}=${a}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=yBt(super.names,this.from);return yBt(t,this.to)}},_Bt=class extends n_e{constructor(t,r,n,a){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=nke(this.iterable,t,r),this}get names(){return i_e(super.names,this.iterable.names)}},l8e=class extends rte{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};l8e.kind="func";var u8e=class extends c8e{render(t){return"return "+super.render(t)}};u8e.kind="return";var RPr=class extends rte{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,a;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&i_e(t,this.catch.names),this.finally&&i_e(t,this.finally.names),t}},g8e=class extends rte{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};g8e.kind="catch";var A8e=class extends rte{render(t){return"finally"+super.render(t)}};A8e.kind="finally";var NPr=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=t,this._scope=new B4.Scope({parent:t}),this._nodes=[new BPr]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,a){let o=this._scope.toName(r);return n!==void 0&&a&&(this._constants[o.str]=n),this._leafNode(new _Pr(t,o,n)),o}const(t,r,n){return this._def(B4.varKinds.const,t,r,n)}let(t,r,n){return this._def(B4.varKinds.let,t,r,n)}var(t,r,n){return this._def(B4.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new CBt(t,r,n))}add(t,r){return this._leafNode(new yPr(t,om.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==wC.nil&&this._leafNode(new vPr(t)),this}object(...t){let r=["{"];for(let[n,a]of t)r.length>1&&r.push(","),r.push(n),(n!==a||this.opts.es5)&&(r.push(":"),(0,wC.addCodeArg)(r,a));return r.push("}"),new wC._Code(r)}if(t,r,n){if(this._blockNode(new r_e(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new r_e(t))}else(){return this._elseNode(new rke)}endIf(){return this._endBlockNode(r_e,rke)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new wPr(t),r)}forRange(t,r,n,a,o=this.opts.es5?B4.varKinds.var:B4.varKinds.let){let l=this._scope.toName(t);return this._for(new TPr(o,l,r,n),()=>a(l))}forOf(t,r,n,a=B4.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let l=r instanceof wC.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,wC._)`${l}.length`,A=>{this.var(o,(0,wC._)`${l}[${A}]`),n(o)})}return this._for(new _Bt("of",a,o,r),()=>n(o))}forIn(t,r,n,a=this.opts.es5?B4.varKinds.var:B4.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,wC._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new _Bt("in",a,o,r),()=>n(o))}endFor(){return this._endBlockNode(n_e)}label(t){return this._leafNode(new bPr(t))}break(t){return this._leafNode(new EPr(t))}return(t){let r=new u8e;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(u8e)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new RPr;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new g8e(o),r(o)}return n&&(this._currNode=a.finally=new A8e,this.code(n)),this._endBlockNode(g8e,A8e)}throw(t){return this._leafNode(new SPr(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=wC.nil,n,a){return this._blockNode(new l8e(t,r,n)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(l8e)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof r_e))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};om.CodeGen=NPr;function i_e(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function yBt(e,t){return t instanceof wC._CodeOrName?i_e(e,t.names):e}function nke(e,t,r){if(e instanceof wC.Name)return n(e);if(!a(e))return e;return new wC._Code(e._items.reduce((o,l)=>(l instanceof wC.Name&&(l=n(l)),l instanceof wC._Code?o.push(...l._items):o.push(l),o),[]));function n(o){let l=r[o.str];return l===void 0||t[o.str]!==1?o:(delete t[o.str],l)}function a(o){return o instanceof wC._Code&&o._items.some(l=>l instanceof wC.Name&&t[l.str]===1&&r[l.str]!==void 0)}}function u3c(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Pji(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,wC._)`!${DPr(e)}`}om.not=Pji;var g3c=Wji(om.operators.AND);function A3c(...e){return e.reduce(g3c)}om.and=A3c;var d3c=Wji(om.operators.OR);function p3c(...e){return e.reduce(d3c)}om.or=p3c;function Wji(e){return(t,r)=>t===wC.nil?r:r===wC.nil?t:(0,wC._)`${DPr(t)} ${e} ${DPr(r)}`}function DPr(e){return e instanceof wC.Name?e:(0,wC._)`(${e})`}});var B_=H(Bm=>{"use strict";Object.defineProperty(Bm,"__esModule",{value:!0});Bm.checkStrictMode=Bm.getErrorPath=Bm.Type=Bm.useFunc=Bm.setEvaluated=Bm.evaluatedPropsToName=Bm.mergeEvaluated=Bm.eachItem=Bm.unescapeJsonPointer=Bm.escapeJsonPointer=Bm.escapeFragment=Bm.unescapeFragment=Bm.schemaRefOrVal=Bm.schemaHasRulesButRef=Bm.schemaHasRules=Bm.checkUnknownRules=Bm.alwaysValidSchema=Bm.toHash=void 0;var zb=Hh(),f3c=a8e();function I3c(e){let t={};for(let r of e)t[r]=!0;return t}Bm.toHash=I3c;function h3c(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(Hji(e,t),!Yji(t,e.self.RULES.all))}Bm.alwaysValidSchema=h3c;function Hji(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=n.RULES.keywords;for(let o in t)a[o]||Jji(e,`unknown keyword: "${o}"`)}Bm.checkUnknownRules=Hji;function Yji(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Bm.schemaHasRules=Yji;function m3c(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Bm.schemaHasRulesButRef=m3c;function C3c({topSchemaRef:e,schemaPath:t},r,n,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,zb._)`${r}`}return(0,zb._)`${e}${t}${(0,zb.getProperty)(n)}`}Bm.schemaRefOrVal=C3c;function _3c(e){return Qji(decodeURIComponent(e))}Bm.unescapeFragment=_3c;function y3c(e){return encodeURIComponent(xPr(e))}Bm.escapeFragment=y3c;function xPr(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Bm.escapeJsonPointer=xPr;function Qji(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Bm.unescapeJsonPointer=Qji;function b3c(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Bm.eachItem=b3c;function Oji({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(a,o,l,A)=>{let f=l===void 0?o:l instanceof zb.Name?(o instanceof zb.Name?e(a,o,l):t(a,o,l),l):o instanceof zb.Name?(t(a,l,o),o):r(o,l);return A===zb.Name&&!(f instanceof zb.Name)?n(a,f):f}}Bm.mergeEvaluated={props:Oji({mergeNames:(e,t,r)=>e.if((0,zb._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,zb._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,zb._)`${r} || {}`).code((0,zb._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,zb._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,zb._)`${r} || {}`),GPr(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Xji}),items:Oji({mergeNames:(e,t,r)=>e.if((0,zb._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,zb._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,zb._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,zb._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Xji(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,zb._)`{}`);return t!==void 0&&GPr(e,r,t),r}Bm.evaluatedPropsToName=Xji;function GPr(e,t,r){Object.keys(r).forEach(n=>e.assign((0,zb._)`${t}${(0,zb.getProperty)(n)}`,!0))}Bm.setEvaluated=GPr;var Mji={};function E3c(e,t){return e.scopeValue("func",{ref:t,code:Mji[t.code]||(Mji[t.code]=new f3c._Code(t.code))})}Bm.useFunc=E3c;var kPr;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(kPr||(Bm.Type=kPr={}));function S3c(e,t,r){if(e instanceof zb.Name){let n=t===kPr.Num;return r?n?(0,zb._)`"[" + ${e} + "]"`:(0,zb._)`"['" + ${e} + "']"`:n?(0,zb._)`"/" + ${e}`:(0,zb._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,zb.getProperty)(e).toString():"/"+xPr(e)}Bm.getErrorPath=S3c;function Jji(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Bm.checkStrictMode=Jji});var nte=H(FPr=>{"use strict";Object.defineProperty(FPr,"__esModule",{value:!0});var QG=Hh(),v3c={data:new QG.Name("data"),valCxt:new QG.Name("valCxt"),instancePath:new QG.Name("instancePath"),parentData:new QG.Name("parentData"),parentDataProperty:new QG.Name("parentDataProperty"),rootData:new QG.Name("rootData"),dynamicAnchors:new QG.Name("dynamicAnchors"),vErrors:new QG.Name("vErrors"),errors:new QG.Name("errors"),this:new QG.Name("this"),self:new QG.Name("self"),scope:new QG.Name("scope"),json:new QG.Name("json"),jsonPos:new QG.Name("jsonPos"),jsonLen:new QG.Name("jsonLen"),jsonPart:new QG.Name("jsonPart")};FPr.default=v3c});var d8e=H(XG=>{"use strict";Object.defineProperty(XG,"__esModule",{value:!0});XG.extendErrors=XG.resetErrorsCount=XG.reportExtraError=XG.reportError=XG.keyword$DataError=XG.keywordError=void 0;var e_=Hh(),EBt=B_(),rL=nte();XG.keywordError={message:({keyword:e})=>(0,e_.str)`must pass "${e}" keyword validation`};XG.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,e_.str)`"${e}" keyword must be ${t} ($data)`:(0,e_.str)`"${e}" keyword is invalid ($data)`};function B3c(e,t=XG.keywordError,r,n){let{it:a}=e,{gen:o,compositeRule:l,allErrors:A}=a,f=jji(e,t,r);n??(l||A)?Uji(o,f):Kji(a,(0,e_._)`[${f}]`)}XG.reportError=B3c;function w3c(e,t=XG.keywordError,r){let{it:n}=e,{gen:a,compositeRule:o,allErrors:l}=n,A=jji(e,t,r);Uji(a,A),o||l||Kji(n,rL.default.vErrors)}XG.reportExtraError=w3c;function T3c(e,t){e.assign(rL.default.errors,t),e.if((0,e_._)`${rL.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,e_._)`${rL.default.vErrors}.length`,t),()=>e.assign(rL.default.vErrors,null)))}XG.resetErrorsCount=T3c;function R3c({gen:e,keyword:t,schemaValue:r,data:n,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let l=e.name("err");e.forRange("i",a,rL.default.errors,A=>{e.const(l,(0,e_._)`${rL.default.vErrors}[${A}]`),e.if((0,e_._)`${l}.instancePath === undefined`,()=>e.assign((0,e_._)`${l}.instancePath`,(0,e_.strConcat)(rL.default.instancePath,o.errorPath))),e.assign((0,e_._)`${l}.schemaPath`,(0,e_.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,e_._)`${l}.schema`,r),e.assign((0,e_._)`${l}.data`,n))})}XG.extendErrors=R3c;function Uji(e,t){let r=e.const("err",t);e.if((0,e_._)`${rL.default.vErrors} === null`,()=>e.assign(rL.default.vErrors,(0,e_._)`[${r}]`),(0,e_._)`${rL.default.vErrors}.push(${r})`),e.code((0,e_._)`${rL.default.errors}++`)}function Kji(e,t){let{gen:r,validateName:n,schemaEnv:a}=e;a.$async?r.throw((0,e_._)`new ${e.ValidationError}(${t})`):(r.assign((0,e_._)`${n}.errors`,t),r.return(!1))}var s_e={keyword:new e_.Name("keyword"),schemaPath:new e_.Name("schemaPath"),params:new e_.Name("params"),propertyName:new e_.Name("propertyName"),message:new e_.Name("message"),schema:new e_.Name("schema"),parentSchema:new e_.Name("parentSchema")};function jji(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,e_._)`{}`:N3c(e,t,r)}function N3c(e,t,r={}){let{gen:n,it:a}=e,o=[D3c(a,r),k3c(e,r)];return x3c(e,t,o),n.object(...o)}function D3c({errorPath:e},{instancePath:t}){let r=t?(0,e_.str)`${e}${(0,EBt.getErrorPath)(t,EBt.Type.Str)}`:e;return[rL.default.instancePath,(0,e_.strConcat)(rL.default.instancePath,r)]}function k3c({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let a=n?t:(0,e_.str)`${t}/${e}`;return r&&(a=(0,e_.str)`${a}${(0,EBt.getErrorPath)(r,EBt.Type.Str)}`),[s_e.schemaPath,a]}function x3c(e,{params:t,message:r},n){let{keyword:a,data:o,schemaValue:l,it:A}=e,{opts:f,propertyName:I,topSchemaRef:C,schemaPath:b}=A;n.push([s_e.keyword,a],[s_e.params,typeof t=="function"?t(e):t||(0,e_._)`{}`]),f.messages&&n.push([s_e.message,typeof r=="function"?r(e):r]),f.verbose&&n.push([s_e.schema,l],[s_e.parentSchema,(0,e_._)`${C}${b}`],[rL.default.data,o]),I&&n.push([s_e.propertyName,I])}});var qji=H(ike=>{"use strict";Object.defineProperty(ike,"__esModule",{value:!0});ike.boolOrEmptySchema=ike.topBoolOrEmptySchema=void 0;var G3c=d8e(),F3c=Hh(),Z3c=nte(),L3c={message:"boolean schema is false"};function V3c(e){let{gen:t,schema:r,validateName:n}=e;r===!1?zji(e,!1):typeof r=="object"&&r.$async===!0?t.return(Z3c.default.data):(t.assign((0,F3c._)`${n}.errors`,null),t.return(!0))}ike.topBoolOrEmptySchema=V3c;function P3c(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),zji(e)):r.var(t,!0)}ike.boolOrEmptySchema=P3c;function zji(e,t){let{gen:r,data:n}=e,a={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,G3c.reportError)(a,L3c,void 0,t)}});var ZPr=H(ske=>{"use strict";Object.defineProperty(ske,"__esModule",{value:!0});ske.getRules=ske.isJSONType=void 0;var W3c=["string","number","integer","boolean","null","object","array"],O3c=new Set(W3c);function M3c(e){return typeof e=="string"&&O3c.has(e)}ske.isJSONType=M3c;function H3c(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}ske.getRules=H3c});var LPr=H(cle=>{"use strict";Object.defineProperty(cle,"__esModule",{value:!0});cle.shouldUseRule=cle.shouldUseGroup=cle.schemaHasRulesForType=void 0;function Y3c({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&$ji(e,n)}cle.schemaHasRulesForType=Y3c;function $ji(e,t){return t.rules.some(r=>e6i(e,r))}cle.shouldUseGroup=$ji;function e6i(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}cle.shouldUseRule=e6i});var p8e=H(JG=>{"use strict";Object.defineProperty(JG,"__esModule",{value:!0});JG.reportTypeError=JG.checkDataTypes=JG.checkDataType=JG.coerceAndCheckDataType=JG.getJSONTypes=JG.getSchemaTypes=JG.DataType=void 0;var Q3c=ZPr(),X3c=LPr(),J3c=d8e(),Bh=Hh(),t6i=B_(),oke;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(oke||(JG.DataType=oke={}));function U3c(e){let t=r6i(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}JG.getSchemaTypes=U3c;function r6i(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Q3c.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}JG.getJSONTypes=r6i;function K3c(e,t){let{gen:r,data:n,opts:a}=e,o=j3c(t,a.coerceTypes),l=t.length>0&&!(o.length===0&&t.length===1&&(0,X3c.schemaHasRulesForType)(e,t[0]));if(l){let A=PPr(t,n,a.strictNumbers,oke.Wrong);r.if(A,()=>{o.length?z3c(e,t,o):WPr(e)})}return l}JG.coerceAndCheckDataType=K3c;var n6i=new Set(["string","number","integer","boolean","null"]);function j3c(e,t){return t?e.filter(r=>n6i.has(r)||t==="array"&&r==="array"):[]}function z3c(e,t,r){let{gen:n,data:a,opts:o}=e,l=n.let("dataType",(0,Bh._)`typeof ${a}`),A=n.let("coerced",(0,Bh._)`undefined`);o.coerceTypes==="array"&&n.if((0,Bh._)`${l} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>n.assign(a,(0,Bh._)`${a}[0]`).assign(l,(0,Bh._)`typeof ${a}`).if(PPr(t,a,o.strictNumbers),()=>n.assign(A,a))),n.if((0,Bh._)`${A} !== undefined`);for(let I of r)(n6i.has(I)||I==="array"&&o.coerceTypes==="array")&&f(I);n.else(),WPr(e),n.endIf(),n.if((0,Bh._)`${A} !== undefined`,()=>{n.assign(a,A),q3c(e,A)});function f(I){switch(I){case"string":n.elseIf((0,Bh._)`${l} == "number" || ${l} == "boolean"`).assign(A,(0,Bh._)`"" + ${a}`).elseIf((0,Bh._)`${a} === null`).assign(A,(0,Bh._)`""`);return;case"number":n.elseIf((0,Bh._)`${l} == "boolean" || ${a} === null || (${l} == "string" && ${a} && ${a} == +${a})`).assign(A,(0,Bh._)`+${a}`);return;case"integer":n.elseIf((0,Bh._)`${l} === "boolean" || ${a} === null || (${l} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(A,(0,Bh._)`+${a}`);return;case"boolean":n.elseIf((0,Bh._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(A,!1).elseIf((0,Bh._)`${a} === "true" || ${a} === 1`).assign(A,!0);return;case"null":n.elseIf((0,Bh._)`${a} === "" || ${a} === 0 || ${a} === false`),n.assign(A,null);return;case"array":n.elseIf((0,Bh._)`${l} === "string" || ${l} === "number" - || ${l} === "boolean" || ${a} === null`).assign(A,(0,Bh._)`[${a}]`)}}}function o3c({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Bh._)`${t} !== undefined`,()=>e.assign((0,Bh._)`${t}[${r}]`,n))}function DPr(e,t,r,n=ike.Correct){let a=n===ike.Correct?Bh.operators.EQ:Bh.operators.NEQ,o;switch(e){case"null":return(0,Bh._)`${t} ${a} null`;case"array":o=(0,Bh._)`Array.isArray(${t})`;break;case"object":o=(0,Bh._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=l((0,Bh._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=l();break;default:return(0,Bh._)`typeof ${t} ${a} ${e}`}return n===ike.Correct?o:(0,Bh.not)(o);function l(A=Bh.nil){return(0,Bh.and)((0,Bh._)`typeof ${t} == "number"`,A,r?(0,Bh._)`isFinite(${t})`:Bh.nil)}}JG.checkDataType=DPr;function kPr(e,t,r,n){if(e.length===1)return DPr(e[0],t,r,n);let a,o=(0,Pji.toHash)(e);if(o.array&&o.object){let l=(0,Bh._)`typeof ${t} != "object"`;a=o.null?l:(0,Bh._)`!${t} || ${l}`,delete o.null,delete o.array,delete o.object}else a=Bh.nil;o.number&&delete o.integer;for(let l in o)a=(0,Bh.and)(a,DPr(l,t,r,n));return a}JG.checkDataTypes=kPr;var a3c={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Bh._)`{type: ${e}}`:(0,Bh._)`{type: ${t}}`};function xPr(e){let t=c3c(e);(0,t3c.reportError)(t,a3c)}JG.reportTypeError=xPr;function c3c(e){let{gen:t,data:r,schema:n}=e,a=(0,Pji.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:a,schemaValue:a,parentSchema:n,params:{},it:e}}});var Hji=H(_Bt=>{"use strict";Object.defineProperty(_Bt,"__esModule",{value:!0});_Bt.assignDefaults=void 0;var ske=Hh(),l3c=B_();function u3c(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let a in r)Mji(e,a,r[a].default);else t==="array"&&Array.isArray(n)&&n.forEach((a,o)=>Mji(e,o,a.default))}_Bt.assignDefaults=u3c;function Mji(e,t,r){let{gen:n,compositeRule:a,data:o,opts:l}=e;if(r===void 0)return;let A=(0,ske._)`${o}${(0,ske.getProperty)(t)}`;if(a){(0,l3c.checkStrictMode)(e,`default is ignored for: ${A}`);return}let f=(0,ske._)`${A} === undefined`;l.useDefaults==="empty"&&(f=(0,ske._)`${f} || ${A} === null || ${A} === ""`),n.if(f,(0,ske._)`${A} = ${(0,ske.stringify)(r)}`)}});var IH=H(lb=>{"use strict";Object.defineProperty(lb,"__esModule",{value:!0});lb.validateUnion=lb.validateArray=lb.usePattern=lb.callValidateCode=lb.schemaProperties=lb.allSchemaProperties=lb.noPropertyInData=lb.propertyInData=lb.isOwnProperty=lb.hasPropFunc=lb.reportMissingProp=lb.checkMissingProp=lb.checkReportMissingProp=void 0;var X1=Hh(),GPr=B_(),cle=rte(),g3c=B_();function A3c(e,t){let{gen:r,data:n,it:a}=e;r.if(ZPr(r,n,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,X1._)`${t}`},!0),e.error()})}lb.checkReportMissingProp=A3c;function d3c({gen:e,data:t,it:{opts:r}},n,a){return(0,X1.or)(...n.map(o=>(0,X1.and)(ZPr(e,t,o,r.ownProperties),(0,X1._)`${a} = ${o}`)))}lb.checkMissingProp=d3c;function p3c(e,t){e.setParams({missingProperty:t},!0),e.error()}lb.reportMissingProp=p3c;function Yji(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,X1._)`Object.prototype.hasOwnProperty`})}lb.hasPropFunc=Yji;function FPr(e,t,r){return(0,X1._)`${Yji(e)}.call(${t}, ${r})`}lb.isOwnProperty=FPr;function f3c(e,t,r,n){let a=(0,X1._)`${t}${(0,X1.getProperty)(r)} !== undefined`;return n?(0,X1._)`${a} && ${FPr(e,t,r)}`:a}lb.propertyInData=f3c;function ZPr(e,t,r,n){let a=(0,X1._)`${t}${(0,X1.getProperty)(r)} === undefined`;return n?(0,X1.or)(a,(0,X1.not)(FPr(e,t,r))):a}lb.noPropertyInData=ZPr;function Qji(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}lb.allSchemaProperties=Qji;function I3c(e,t){return Qji(t).filter(r=>!(0,GPr.alwaysValidSchema)(e,t[r]))}lb.schemaProperties=I3c;function h3c({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:a,errorPath:o},it:l},A,f,I){let C=I?(0,X1._)`${e}, ${t}, ${n}${a}`:t,b=[[cle.default.instancePath,(0,X1.strConcat)(cle.default.instancePath,o)],[cle.default.parentData,l.parentData],[cle.default.parentDataProperty,l.parentDataProperty],[cle.default.rootData,cle.default.rootData]];l.opts.dynamicRef&&b.push([cle.default.dynamicAnchors,cle.default.dynamicAnchors]);let E=(0,X1._)`${C}, ${r.object(...b)}`;return f!==X1.nil?(0,X1._)`${A}.call(${f}, ${E})`:(0,X1._)`${A}(${E})`}lb.callValidateCode=h3c;var m3c=(0,X1._)`new RegExp`;function C3c({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,X1._)`${a.code==="new RegExp"?m3c:(0,g3c.useFunc)(e,a)}(${r}, ${n})`})}lb.usePattern=C3c;function _3c(e){let{gen:t,data:r,keyword:n,it:a}=e,o=t.name("valid");if(a.allErrors){let A=t.let("valid",!0);return l(()=>t.assign(A,!1)),A}return t.var(o,!0),l(()=>t.break()),o;function l(A){let f=t.const("len",(0,X1._)`${r}.length`);t.forRange("i",0,f,I=>{e.subschema({keyword:n,dataProp:I,dataPropType:GPr.Type.Num},o),t.if((0,X1.not)(o),A)})}}lb.validateArray=_3c;function y3c(e){let{gen:t,schema:r,keyword:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,GPr.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let l=t.let("valid",!1),A=t.name("_valid");t.block(()=>r.forEach((f,I)=>{let C=e.subschema({keyword:n,schemaProp:I,compositeRule:!0},A);t.assign(l,(0,X1._)`${l} || ${A}`),e.mergeValidEvaluated(C,A)||t.if((0,X1.not)(l))})),e.result(l,()=>e.reset(),()=>e.error(!0))}lb.validateUnion=y3c});var Uji=H(Vj=>{"use strict";Object.defineProperty(Vj,"__esModule",{value:!0});Vj.validateKeywordUsage=Vj.validSchemaType=Vj.funcKeywordCode=Vj.macroKeywordCode=void 0;var nL=Hh(),s_e=rte(),b3c=IH(),E3c=g8e();function S3c(e,t){let{gen:r,keyword:n,schema:a,parentSchema:o,it:l}=e,A=t.macro.call(l.self,a,o,l),f=Jji(r,n,A);l.opts.validateSchema!==!1&&l.self.validateSchema(A,!0);let I=r.name("valid");e.subschema({schema:A,schemaPath:nL.nil,errSchemaPath:`${l.errSchemaPath}/${n}`,topSchemaRef:f,compositeRule:!0},I),e.pass(I,()=>e.error(!0))}Vj.macroKeywordCode=S3c;function v3c(e,t){var r;let{gen:n,keyword:a,schema:o,parentSchema:l,$data:A,it:f}=e;w3c(f,t);let I=!A&&t.compile?t.compile.call(f.self,o,l,f):t.validate,C=Jji(n,a,I),b=n.let("valid");e.block$data(b,E),e.ok((r=t.valid)!==null&&r!==void 0?r:b);function E(){if(t.errors===!1)F(),t.modifying&&Xji(e),Q(()=>e.error());else{let X=t.async?N():B();t.modifying&&Xji(e),Q(()=>B3c(e,X))}}function N(){let X=n.let("ruleErrs",null);return n.try(()=>F((0,nL._)`await `),ae=>n.assign(b,!1).if((0,nL._)`${ae} instanceof ${f.ValidationError}`,()=>n.assign(X,(0,nL._)`${ae}.errors`),()=>n.throw(ae))),X}function B(){let X=(0,nL._)`${C}.errors`;return n.assign(X,null),F(nL.nil),X}function F(X=t.async?(0,nL._)`await `:nL.nil){let ae=f.opts.passContext?s_e.default.this:s_e.default.self,ne=!("compile"in t&&!A||t.schema===!1);n.assign(b,(0,nL._)`${X}${(0,b3c.callValidateCode)(e,C,ae,ne)}`,t.modifying)}function Q(X){var ae;n.if((0,nL.not)((ae=t.valid)!==null&&ae!==void 0?ae:b),X)}}Vj.funcKeywordCode=v3c;function Xji(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,nL._)`${n.parentData}[${n.parentDataProperty}]`))}function B3c(e,t){let{gen:r}=e;r.if((0,nL._)`Array.isArray(${t})`,()=>{r.assign(s_e.default.vErrors,(0,nL._)`${s_e.default.vErrors} === null ? ${t} : ${s_e.default.vErrors}.concat(${t})`).assign(s_e.default.errors,(0,nL._)`${s_e.default.vErrors}.length`),(0,E3c.extendErrors)(e)},()=>e.error())}function w3c({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Jji(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,nL.stringify)(r)})}function T3c(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Vj.validSchemaType=T3c;function R3c({schema:e,opts:t,self:r,errSchemaPath:n},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let l=a.dependencies;if(l?.some(A=>!Object.prototype.hasOwnProperty.call(e,A)))throw new Error(`parent schema must have dependencies of ${o}: ${l.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}Vj.validateKeywordUsage=R3c});var jji=H(lle=>{"use strict";Object.defineProperty(lle,"__esModule",{value:!0});lle.extendSubschemaMode=lle.extendSubschemaData=lle.getSubschema=void 0;var Pj=Hh(),Kji=B_();function N3c(e,{keyword:t,schemaProp:r,schema:n,schemaPath:a,errSchemaPath:o,topSchemaRef:l}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let A=e.schema[t];return r===void 0?{schema:A,schemaPath:(0,Pj._)`${e.schemaPath}${(0,Pj.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:A[r],schemaPath:(0,Pj._)`${e.schemaPath}${(0,Pj.getProperty)(t)}${(0,Pj.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,Kji.escapeFragment)(r)}`}}if(n!==void 0){if(a===void 0||o===void 0||l===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:a,topSchemaRef:l,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}lle.getSubschema=N3c;function D3c(e,t,{dataProp:r,dataPropType:n,data:a,dataTypes:o,propertyName:l}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:A}=t;if(r!==void 0){let{errorPath:I,dataPathArr:C,opts:b}=t,E=A.let("data",(0,Pj._)`${t.data}${(0,Pj.getProperty)(r)}`,!0);f(E),e.errorPath=(0,Pj.str)`${I}${(0,Kji.getErrorPath)(r,n,b.jsPropertySyntax)}`,e.parentDataProperty=(0,Pj._)`${r}`,e.dataPathArr=[...C,e.parentDataProperty]}if(a!==void 0){let I=a instanceof Pj.Name?a:A.let("data",a,!0);f(I),l!==void 0&&(e.propertyName=l)}o&&(e.dataTypes=o);function f(I){e.data=I,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,I]}}lle.extendSubschemaData=D3c;function k3c(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:a,allErrors:o}){n!==void 0&&(e.compositeRule=n),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}lle.extendSubschemaMode=k3c});var LPr=H((PJu,zji)=>{"use strict";zji.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,a,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(a=n;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(a=n;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=n;a--!==0;){var l=o[a];if(!e(t[l],r[l]))return!1}return!0}return t!==t&&r!==r}});var $ji=H((WJu,qji)=>{"use strict";var ule=qji.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};yBt(t,n,a,e,"",e)};ule.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ule.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ule.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ule.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 yBt(e,t,r,n,a,o,l,A,f,I){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,a,o,l,A,f,I);for(var C in n){var b=n[C];if(Array.isArray(b)){if(C in ule.arrayKeywords)for(var E=0;E{"use strict";Object.defineProperty(kV,"__esModule",{value:!0});kV.getSchemaRefs=kV.resolveUrl=kV.normalizeId=kV._getFullPath=kV.getFullPath=kV.inlineRef=void 0;var G3c=B_(),F3c=LPr(),Z3c=$ji(),L3c=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function V3c(e,t=!0){return typeof e=="boolean"?!0:t===!0?!VPr(e):t?e6i(e)<=t:!1}kV.inlineRef=V3c;var P3c=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function VPr(e){for(let t in e){if(P3c.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(VPr)||typeof r=="object"&&VPr(r))return!0}return!1}function e6i(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!L3c.has(r)&&(typeof e[r]=="object"&&(0,G3c.eachItem)(e[r],n=>t+=e6i(n)),t===1/0))return 1/0}return t}function t6i(e,t="",r){r!==!1&&(t=oke(t));let n=e.parse(t);return r6i(e,n)}kV.getFullPath=t6i;function r6i(e,t){return e.serialize(t).split("#")[0]+"#"}kV._getFullPath=r6i;var W3c=/#\/?$/;function oke(e){return e?e.replace(W3c,""):""}kV.normalizeId=oke;function O3c(e,t,r){return r=oke(r),e.resolve(t,r)}kV.resolveUrl=O3c;var M3c=/^[a-z_][-a-z0-9._]*$/i;function H3c(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,a=oke(e[r]||t),o={"":a},l=t6i(n,a,!1),A={},f=new Set;return Z3c(e,{allKeys:!0},(b,E,N,B)=>{if(B===void 0)return;let F=l+E,Q=o[B];typeof b[r]=="string"&&(Q=X.call(this,b[r])),ae.call(this,b.$anchor),ae.call(this,b.$dynamicAnchor),o[E]=Q;function X(ne){let ce=this.opts.uriResolver.resolve;if(ne=oke(Q?ce(Q,ne):ne),f.has(ne))throw C(ne);f.add(ne);let fe=this.refs[ne];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?I(b,fe.schema,ne):ne!==oke(F)&&(ne[0]==="#"?(I(b,A[ne],ne),A[ne]=b):this.refs[ne]=F),ne}function ae(ne){if(typeof ne=="string"){if(!M3c.test(ne))throw new Error(`invalid anchor "${ne}"`);X.call(this,`#${ne}`)}}}),A;function I(b,E,N){if(E!==void 0&&!F3c(b,E))throw C(N)}function C(b){return new Error(`reference "${b}" resolves to more than one schema`)}}kV.getSchemaRefs=H3c});var I8e=H(gle=>{"use strict";Object.defineProperty(gle,"__esModule",{value:!0});gle.getData=gle.KeywordCxt=gle.validateFunctionCode=void 0;var a6i=Zji(),n6i=A8e(),WPr=NPr(),bBt=A8e(),Y3c=Hji(),f8e=Uji(),PPr=jji(),Zd=Hh(),cI=rte(),Q3c=d8e(),nte=B_(),p8e=g8e();function X3c(e){if(u6i(e)&&(g6i(e),l6i(e))){K3c(e);return}c6i(e,()=>(0,a6i.topBoolOrEmptySchema)(e))}gle.validateFunctionCode=X3c;function c6i({gen:e,validateName:t,schema:r,schemaEnv:n,opts:a},o){a.code.es5?e.func(t,(0,Zd._)`${cI.default.data}, ${cI.default.valCxt}`,n.$async,()=>{e.code((0,Zd._)`"use strict"; ${i6i(r,a)}`),U3c(e,a),e.code(o)}):e.func(t,(0,Zd._)`${cI.default.data}, ${J3c(a)}`,n.$async,()=>e.code(i6i(r,a)).code(o))}function J3c(e){return(0,Zd._)`{${cI.default.instancePath}="", ${cI.default.parentData}, ${cI.default.parentDataProperty}, ${cI.default.rootData}=${cI.default.data}${e.dynamicRef?(0,Zd._)`, ${cI.default.dynamicAnchors}={}`:Zd.nil}}={}`}function U3c(e,t){e.if(cI.default.valCxt,()=>{e.var(cI.default.instancePath,(0,Zd._)`${cI.default.valCxt}.${cI.default.instancePath}`),e.var(cI.default.parentData,(0,Zd._)`${cI.default.valCxt}.${cI.default.parentData}`),e.var(cI.default.parentDataProperty,(0,Zd._)`${cI.default.valCxt}.${cI.default.parentDataProperty}`),e.var(cI.default.rootData,(0,Zd._)`${cI.default.valCxt}.${cI.default.rootData}`),t.dynamicRef&&e.var(cI.default.dynamicAnchors,(0,Zd._)`${cI.default.valCxt}.${cI.default.dynamicAnchors}`)},()=>{e.var(cI.default.instancePath,(0,Zd._)`""`),e.var(cI.default.parentData,(0,Zd._)`undefined`),e.var(cI.default.parentDataProperty,(0,Zd._)`undefined`),e.var(cI.default.rootData,cI.default.data),t.dynamicRef&&e.var(cI.default.dynamicAnchors,(0,Zd._)`{}`)})}function K3c(e){let{schema:t,opts:r,gen:n}=e;c6i(e,()=>{r.$comment&&t.$comment&&d6i(e),e5c(e),n.let(cI.default.vErrors,null),n.let(cI.default.errors,0),r.unevaluated&&j3c(e),A6i(e),n5c(e)})}function j3c(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Zd._)`${r}.evaluated`),t.if((0,Zd._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Zd._)`${e.evaluated}.props`,(0,Zd._)`undefined`)),t.if((0,Zd._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Zd._)`${e.evaluated}.items`,(0,Zd._)`undefined`))}function i6i(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Zd._)`/*# sourceURL=${r} */`:Zd.nil}function z3c(e,t){if(u6i(e)&&(g6i(e),l6i(e))){q3c(e,t);return}(0,a6i.boolOrEmptySchema)(e,t)}function l6i({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function u6i(e){return typeof e.schema!="boolean"}function q3c(e,t){let{schema:r,gen:n,opts:a}=e;a.$comment&&r.$comment&&d6i(e),t5c(e),r5c(e);let o=n.const("_errs",cI.default.errors);A6i(e,o),n.var(t,(0,Zd._)`${o} === ${cI.default.errors}`)}function g6i(e){(0,nte.checkUnknownRules)(e),$3c(e)}function A6i(e,t){if(e.opts.jtd)return s6i(e,[],!1,t);let r=(0,n6i.getSchemaTypes)(e.schema),n=(0,n6i.coerceAndCheckDataType)(e,r);s6i(e,r,!n,t)}function $3c(e){let{schema:t,errSchemaPath:r,opts:n,self:a}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,nte.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function e5c(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,nte.checkStrictMode)(e,"default is ignored in the schema root")}function t5c(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,Q3c.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function r5c(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function d6i({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,Zd._)`${cI.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let l=(0,Zd.str)`${n}/$comment`,A=e.scopeValue("root",{ref:t.root});e.code((0,Zd._)`${cI.default.self}.opts.$comment(${o}, ${l}, ${A}.schema)`)}}function n5c(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:a,opts:o}=e;r.$async?t.if((0,Zd._)`${cI.default.errors} === 0`,()=>t.return(cI.default.data),()=>t.throw((0,Zd._)`new ${a}(${cI.default.vErrors})`)):(t.assign((0,Zd._)`${n}.errors`,cI.default.vErrors),o.unevaluated&&i5c(e),t.return((0,Zd._)`${cI.default.errors} === 0`))}function i5c({gen:e,evaluated:t,props:r,items:n}){r instanceof Zd.Name&&e.assign((0,Zd._)`${t}.props`,r),n instanceof Zd.Name&&e.assign((0,Zd._)`${t}.items`,n)}function s6i(e,t,r,n){let{gen:a,schema:o,data:l,allErrors:A,opts:f,self:I}=e,{RULES:C}=I;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,nte.schemaHasRulesButRef)(o,C))){a.block(()=>f6i(e,"$ref",C.all.$ref.definition));return}f.jtd||s5c(e,t),a.block(()=>{for(let E of C.rules)b(E);b(C.post)});function b(E){(0,WPr.shouldUseGroup)(o,E)&&(E.type?(a.if((0,bBt.checkDataType)(E.type,l,f.strictNumbers)),o6i(e,E),t.length===1&&t[0]===E.type&&r&&(a.else(),(0,bBt.reportTypeError)(e)),a.endIf()):o6i(e,E),A||a.if((0,Zd._)`${cI.default.errors} === ${n||0}`))}}function o6i(e,t){let{gen:r,schema:n,opts:{useDefaults:a}}=e;a&&(0,Y3c.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,WPr.shouldUseRule)(n,o)&&f6i(e,o.keyword,o.definition,t.type)})}function s5c(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(o5c(e,t),e.opts.allowUnionTypes||a5c(e,t),c5c(e,e.dataTypes))}function o5c(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{p6i(e.dataTypes,r)||OPr(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),u5c(e,t)}}function a5c(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&OPr(e,"use allowUnionTypes to allow union type keyword")}function c5c(e,t){let r=e.self.RULES.all;for(let n in r){let a=r[n];if(typeof a=="object"&&(0,WPr.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(l=>l5c(t,l))&&OPr(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function l5c(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function p6i(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function u5c(e,t){let r=[];for(let n of e.dataTypes)p6i(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function OPr(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,nte.checkStrictMode)(e,t,e.opts.strictTypes)}var EBt=class{constructor(t,r,n){if((0,f8e.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,nte.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",I6i(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,f8e.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",cI.default.errors))}result(t,r,n){this.failResult((0,Zd.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Zd.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Zd._)`${r} !== undefined && (${(0,Zd.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?p8e.reportExtraError:p8e.reportError)(this,this.def.error,r)}$dataError(){(0,p8e.reportError)(this,this.def.$dataError||p8e.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,p8e.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Zd.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Zd.nil,r=Zd.nil){if(!this.$data)return;let{gen:n,schemaCode:a,schemaType:o,def:l}=this;n.if((0,Zd.or)((0,Zd._)`${a} === undefined`,r)),t!==Zd.nil&&n.assign(t,!0),(o.length||l.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Zd.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:a,it:o}=this;return(0,Zd.or)(l(),A());function l(){if(n.length){if(!(r instanceof Zd.Name))throw new Error("ajv implementation error");let f=Array.isArray(n)?n:[n];return(0,Zd._)`${(0,bBt.checkDataTypes)(f,r,o.opts.strictNumbers,bBt.DataType.Wrong)}`}return Zd.nil}function A(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,Zd._)`!${f}(${r})`}return Zd.nil}}subschema(t,r){let n=(0,PPr.getSubschema)(this.it,t);(0,PPr.extendSubschemaData)(n,this.it,t),(0,PPr.extendSubschemaMode)(n,t);let a={...this.it,...n,items:void 0,props:void 0};return z3c(a,r),a}mergeEvaluated(t,r){let{it:n,gen:a}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=nte.mergeEvaluated.props(a,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=nte.mergeEvaluated.items(a,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:a}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,Zd.Name)),!0}};gle.KeywordCxt=EBt;function f6i(e,t,r,n){let a=new EBt(e,r,t);"code"in r?r.code(a,n):a.$data&&r.validate?(0,f8e.funcKeywordCode)(a,r):"macro"in r?(0,f8e.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,f8e.funcKeywordCode)(a,r)}var g5c=/^\/(?:[^~]|~0|~1)*$/,A5c=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function I6i(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let a,o;if(e==="")return cI.default.rootData;if(e[0]==="/"){if(!g5c.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=cI.default.rootData}else{let I=A5c.exec(e);if(!I)throw new Error(`Invalid JSON-pointer: ${e}`);let C=+I[1];if(a=I[2],a==="#"){if(C>=t)throw new Error(f("property/index",C));return n[t-C]}if(C>t)throw new Error(f("data",C));if(o=r[t-C],!a)return o}let l=o,A=a.split("/");for(let I of A)I&&(o=(0,Zd._)`${o}${(0,Zd.getProperty)((0,nte.unescapeJsonPointer)(I))}`,l=(0,Zd._)`${l} && ${o}`);return l;function f(I,C){return`Cannot access ${I} ${C} levels up, current level is ${t}`}}gle.getData=I6i});var SBt=H(HPr=>{"use strict";Object.defineProperty(HPr,"__esModule",{value:!0});var MPr=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};HPr.default=MPr});var h8e=H(XPr=>{"use strict";Object.defineProperty(XPr,"__esModule",{value:!0});var YPr=d8e(),QPr=class extends Error{constructor(t,r,n,a){super(a||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,YPr.resolveUrl)(t,r,n),this.missingSchema=(0,YPr.normalizeId)((0,YPr.getFullPath)(t,this.missingRef))}};XPr.default=QPr});var BBt=H(hH=>{"use strict";Object.defineProperty(hH,"__esModule",{value:!0});hH.resolveSchema=hH.getCompilingSchema=hH.resolveRef=hH.compileSchema=hH.SchemaEnv=void 0;var w4=Hh(),d5c=SBt(),o_e=rte(),T4=d8e(),h6i=B_(),p5c=I8e(),ake=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,T4.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};hH.SchemaEnv=ake;function UPr(e){let t=m6i.call(this,e);if(t)return t;let r=(0,T4.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:a}=this.opts.code,{ownProperties:o}=this.opts,l=new w4.CodeGen(this.scope,{es5:n,lines:a,ownProperties:o}),A;e.$async&&(A=l.scopeValue("Error",{ref:d5c.default,code:(0,w4._)`require("ajv/dist/runtime/validation_error").default`}));let f=l.scopeName("validate");e.validateName=f;let I={gen:l,allErrors:this.opts.allErrors,data:o_e.default.data,parentData:o_e.default.parentData,parentDataProperty:o_e.default.parentDataProperty,dataNames:[o_e.default.data],dataPathArr:[w4.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:l.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,w4.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:A,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:w4.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,w4._)`""`,opts:this.opts,self:this},C;try{this._compilations.add(e),(0,p5c.validateFunctionCode)(I),l.optimize(this.opts.code.optimize);let b=l.toString();C=`${l.scopeRefs(o_e.default.scope)}return ${b}`,this.opts.code.process&&(C=this.opts.code.process(C,e));let N=new Function(`${o_e.default.self}`,`${o_e.default.scope}`,C)(this,this.scope.get());if(this.scope.value(f,{ref:N}),N.errors=null,N.schema=e.schema,N.schemaEnv=e,e.$async&&(N.$async=!0),this.opts.code.source===!0&&(N.source={validateName:f,validateCode:b,scopeValues:l._values}),this.opts.unevaluated){let{props:B,items:F}=I;N.evaluated={props:B instanceof w4.Name?void 0:B,items:F instanceof w4.Name?void 0:F,dynamicProps:B instanceof w4.Name,dynamicItems:F instanceof w4.Name},N.source&&(N.source.evaluated=(0,w4.stringify)(N.evaluated))}return e.validate=N,e}catch(b){throw delete e.validate,delete e.validateName,C&&this.logger.error("Error compiling schema, function code:",C),b}finally{this._compilations.delete(e)}}hH.compileSchema=UPr;function f5c(e,t,r){var n;r=(0,T4.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=m5c.call(this,e,r);if(o===void 0){let l=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:A}=this.opts;l&&(o=new ake({schema:l,schemaId:A,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=I5c.call(this,o)}hH.resolveRef=f5c;function I5c(e){return(0,T4.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:UPr.call(this,e)}function m6i(e){for(let t of this._compilations)if(h5c(t,e))return t}hH.getCompilingSchema=m6i;function h5c(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function m5c(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||vBt.call(this,e,t)}function vBt(e,t){let r=this.opts.uriResolver.parse(t),n=(0,T4._getFullPath)(this.opts.uriResolver,r),a=(0,T4.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===a)return JPr.call(this,r,e);let o=(0,T4.normalizeId)(n),l=this.refs[o]||this.schemas[o];if(typeof l=="string"){let A=vBt.call(this,e,l);return typeof A?.schema!="object"?void 0:JPr.call(this,r,A)}if(typeof l?.schema=="object"){if(l.validate||UPr.call(this,l),o===(0,T4.normalizeId)(t)){let{schema:A}=l,{schemaId:f}=this.opts,I=A[f];return I&&(a=(0,T4.resolveUrl)(this.opts.uriResolver,a,I)),new ake({schema:A,schemaId:f,root:e,baseId:a})}return JPr.call(this,r,l)}}hH.resolveSchema=vBt;var C5c=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function JPr(e,{baseId:t,schema:r,root:n}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let A of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,h6i.unescapeFragment)(A)];if(f===void 0)return;r=f;let I=typeof r=="object"&&r[this.opts.schemaId];!C5c.has(A)&&I&&(t=(0,T4.resolveUrl)(this.opts.uriResolver,t,I))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,h6i.schemaHasRulesButRef)(r,this.RULES)){let A=(0,T4.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=vBt.call(this,n,A)}let{schemaId:l}=this.opts;if(o=o||new ake({schema:r,schemaId:l,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var C6i=H((XJu,_5c)=>{_5c.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var y6i=H((JJu,_6i)=>{"use strict";var y5c={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};_6i.exports={HEX:y5c}});var R6i=H((UJu,T6i)=>{"use strict";var{HEX:b5c}=y6i();function v6i(e){if(w6i(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:S5c(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function KPr(e,t=!1){let r="",n=!0;for(let a of e){if(b5c[a]===void 0)return;a!=="0"&&n===!0&&(n=!1),n||(r+=a)}return t&&r.length===0&&(r="0"),r}function E5c(e){let t=0,r={error:!1,address:"",zone:""},n=[],a=[],o=!1,l=!1,A=!1;function f(){if(a.length){if(o===!1){let I=KPr(a);if(I!==void 0)n.push(I);else return r.error=!0,!1}a.length=0}return!0}for(let I=0;I7){r.error=!0;break}I-1>=0&&e[I-1]===":"&&(l=!0);continue}else if(C==="%"){if(!f())break;o=!0}else{a.push(C);continue}}return a.length&&(o?r.zone=a.join(""):A?n.push(a.join("")):n.push(KPr(a))),r.address=n.join(""),r}function B6i(e,t={}){if(w6i(e,":")<2)return{host:e,isIPV6:!1};let r=E5c(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,a=r.address;return r.zone&&(n+="%"+r.zone,a+="%25"+r.zone),{host:n,escapedHost:a,isIPV6:!0}}}function S5c(e,t){let r="",n=!0,a=e.length;for(let o=0;o{"use strict";var R5c=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,N5c=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function N6i(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function D6i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function k6i(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function D5c(e){return e.secure=N6i(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function k5c(e){if((e.port===(N6i(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function x5c(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(N5c);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${n}:${t.nid||e.nid}`,o=jPr[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function G5c(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),a=`${r}:${t.nid||n}`,o=jPr[a];o&&(e=o.serialize(e,t));let l=e,A=e.nss;return l.path=`${n||t.nid}:${A}`,t.skipEscape=!0,l}function F5c(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!R5c.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Z5c(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var x6i={scheme:"http",domainHost:!0,parse:D6i,serialize:k6i},L5c={scheme:"https",domainHost:x6i.domainHost,parse:D6i,serialize:k6i},wBt={scheme:"ws",domainHost:!0,parse:D5c,serialize:k5c},V5c={scheme:"wss",domainHost:wBt.domainHost,parse:wBt.parse,serialize:wBt.serialize},P5c={scheme:"urn",parse:x5c,serialize:G5c,skipNormalize:!0},W5c={scheme:"urn:uuid",parse:F5c,serialize:Z5c,skipNormalize:!0},jPr={http:x6i,https:L5c,ws:wBt,wss:V5c,urn:P5c,"urn:uuid":W5c};G6i.exports=jPr});var L6i=H((jJu,RBt)=>{"use strict";var{normalizeIPv6:O5c,normalizeIPv4:M5c,removeDotSegments:m8e,recomposeAuthority:H5c,normalizeComponentEncoding:TBt}=R6i(),zPr=F6i();function Y5c(e,t){return typeof e=="string"?e=Wj(ite(e,t),t):typeof e=="object"&&(e=ite(Wj(e,t),t)),e}function Q5c(e,t,r){let n=Object.assign({scheme:"null"},r),a=Z6i(ite(e,n),ite(t,n),n,!0);return Wj(a,{...n,skipEscape:!0})}function Z6i(e,t,r,n){let a={};return n||(e=ite(Wj(e,r),r),t=ite(Wj(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=m8e(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=m8e(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=m8e(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=m8e(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function X5c(e,t,r){return typeof e=="string"?(e=unescape(e),e=Wj(TBt(ite(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Wj(TBt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Wj(TBt(ite(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Wj(TBt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Wj(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),a=[],o=zPr[(n.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let l=H5c(r,n);if(l!==void 0&&(n.reference!=="suffix"&&a.push("//"),a.push(l),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let A=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(A=m8e(A)),l===void 0&&(A=A.replace(/^\/\//u,"/%2F")),a.push(A)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var J5c=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function U5c(e){let t=0;for(let r=0,n=e.length;r126||J5c[t])return!0;return!1}var K5c=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ite(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let l=e.match(K5c);if(l){if(n.scheme=l[1],n.userinfo=l[3],n.host=l[4],n.port=parseInt(l[5],10),n.path=l[6]||"",n.query=l[7],n.fragment=l[8],isNaN(n.port)&&(n.port=l[5]),n.host){let f=M5c(n.host);if(f.isIPV4===!1){let I=O5c(f.host,{isIPV4:!1});n.host=I.host.toLowerCase(),o=I.isIPV6}else n.host=f.host,o=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let A=zPr[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!A||!A.unicodeSupport)&&n.host&&(r.domainHost||A&&A.domainHost)&&o===!1&&U5c(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(f){n.error=n.error||"Host's domain name can not be converted to ASCII: "+f}(!A||A&&!A.skipNormalize)&&(a&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),a&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),A&&A.parse&&A.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var qPr={SCHEMES:zPr,normalize:Y5c,resolve:Q5c,resolveComponents:Z6i,equal:X5c,serialize:Wj,parse:ite};RBt.exports=qPr;RBt.exports.default=qPr;RBt.exports.fastUri=qPr});var P6i=H($Pr=>{"use strict";Object.defineProperty($Pr,"__esModule",{value:!0});var V6i=L6i();V6i.code='require("ajv/dist/runtime/uri").default';$Pr.default=V6i});var J6i=H(ex=>{"use strict";Object.defineProperty(ex,"__esModule",{value:!0});ex.CodeGen=ex.Name=ex.nil=ex.stringify=ex.str=ex._=ex.KeywordCxt=void 0;var j5c=I8e();Object.defineProperty(ex,"KeywordCxt",{enumerable:!0,get:function(){return j5c.KeywordCxt}});var cke=Hh();Object.defineProperty(ex,"_",{enumerable:!0,get:function(){return cke._}});Object.defineProperty(ex,"str",{enumerable:!0,get:function(){return cke.str}});Object.defineProperty(ex,"stringify",{enumerable:!0,get:function(){return cke.stringify}});Object.defineProperty(ex,"nil",{enumerable:!0,get:function(){return cke.nil}});Object.defineProperty(ex,"Name",{enumerable:!0,get:function(){return cke.Name}});Object.defineProperty(ex,"CodeGen",{enumerable:!0,get:function(){return cke.CodeGen}});var z5c=SBt(),Y6i=h8e(),q5c=RPr(),C8e=BBt(),$5c=Hh(),_8e=d8e(),NBt=A8e(),tWr=B_(),W6i=C6i(),eMc=P6i(),Q6i=(e,t)=>new RegExp(e,t);Q6i.code="new RegExp";var tMc=["removeAdditional","useDefaults","coerceTypes"],rMc=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),nMc={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},iMc={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},O6i=200;function sMc(e){var t,r,n,a,o,l,A,f,I,C,b,E,N,B,F,Q,X,ae,ne,ce,fe,ue,de,be,Se;let De=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,et=k===!0||k===void 0?1:k||0,ct=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Q6i,Me=(a=e.uriResolver)!==null&&a!==void 0?a:eMc.default;return{strictSchema:(l=(o=e.strictSchema)!==null&&o!==void 0?o:De)!==null&&l!==void 0?l:!0,strictNumbers:(f=(A=e.strictNumbers)!==null&&A!==void 0?A:De)!==null&&f!==void 0?f:!0,strictTypes:(C=(I=e.strictTypes)!==null&&I!==void 0?I:De)!==null&&C!==void 0?C:"log",strictTuples:(E=(b=e.strictTuples)!==null&&b!==void 0?b:De)!==null&&E!==void 0?E:"log",strictRequired:(B=(N=e.strictRequired)!==null&&N!==void 0?N:De)!==null&&B!==void 0?B:!1,code:e.code?{...e.code,optimize:et,regExp:ct}:{optimize:et,regExp:ct},loopRequired:(F=e.loopRequired)!==null&&F!==void 0?F:O6i,loopEnum:(Q=e.loopEnum)!==null&&Q!==void 0?Q:O6i,meta:(X=e.meta)!==null&&X!==void 0?X:!0,messages:(ae=e.messages)!==null&&ae!==void 0?ae:!0,inlineRefs:(ne=e.inlineRefs)!==null&&ne!==void 0?ne:!0,schemaId:(ce=e.schemaId)!==null&&ce!==void 0?ce:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(ue=e.validateSchema)!==null&&ue!==void 0?ue:!0,validateFormats:(de=e.validateFormats)!==null&&de!==void 0?de:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Se=e.int32range)!==null&&Se!==void 0?Se:!0,uriResolver:Me}}var y8e=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...sMc(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new $5c.ValueScope({scope:{},prefixes:rMc,es5:r,lines:n}),this.logger=gMc(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,q5c.getRules)(),M6i.call(this,nMc,t,"NOT SUPPORTED"),M6i.call(this,iMc,t,"DEPRECATED","warn"),this._metaOpts=lMc.call(this),t.formats&&aMc.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&cMc.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),oMc.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,a=W6i;n==="id"&&(a={...W6i},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let a=n(r);return"$async"in n||(this.errors=n.errors),a}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return a.call(this,t,r);async function a(C,b){await o.call(this,C.$schema);let E=this._addSchema(C,b);return E.validate||l.call(this,E)}async function o(C){C&&!this.getSchema(C)&&await a.call(this,{$ref:C},!0)}async function l(C){try{return this._compileSchemaEnv(C)}catch(b){if(!(b instanceof Y6i.default))throw b;return A.call(this,b),await f.call(this,b.missingSchema),l.call(this,C)}}function A({missingSchema:C,missingRef:b}){if(this.refs[C])throw new Error(`AnySchema ${C} is loaded but ${b} cannot be resolved`)}async function f(C){let b=await I.call(this,C);this.refs[C]||await o.call(this,b.$schema),this.refs[C]||this.addSchema(b,C,r)}async function I(C){let b=this._loading[C];if(b)return b;try{return await(this._loading[C]=n(C))}finally{delete this._loading[C]}}}addSchema(t,r,n,a=this.opts.validateSchema){if(Array.isArray(t)){for(let l of t)this.addSchema(l,void 0,n,a);return this}let o;if(typeof t=="object"){let{schemaId:l}=this.opts;if(o=t[l],o!==void 0&&typeof o!="string")throw new Error(`schema ${l} must be string`)}return r=(0,_8e.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,a,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(n,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=H6i.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,a=new C8e.SchemaEnv({schema:{},schemaId:n});if(r=C8e.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=H6i.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,_8e.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(dMc.call(this,n,r),!r)return(0,tWr.eachItem)(n,o=>eWr.call(this,o)),this;fMc.call(this,r);let a={...r,type:(0,NBt.getJSONTypes)(r.type),schemaType:(0,NBt.getJSONTypes)(r.schemaType)};return(0,tWr.eachItem)(n,a.type.length===0?o=>eWr.call(this,o,a):o=>a.type.forEach(l=>eWr.call(this,o,a,l))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let a=n.rules.findIndex(o=>o.keyword===t);a>=0&&n.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${n}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),l=t;for(let A of o)l=l[A];for(let A in n){let f=n[A];if(typeof f!="object")continue;let{$data:I}=f.definition,C=l[A];I&&C&&(l[A]=X6i(C))}}return t}_removeAllSchemas(t,r){for(let n in t){let a=t[n];(!r||r.test(n))&&(typeof a=="string"?delete t[n]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[n]))}}_addSchema(t,r,n,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let l,{schemaId:A}=this.opts;if(typeof t=="object")l=t[A];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;n=(0,_8e.normalizeId)(l||n);let I=_8e.getSchemaRefs.call(this,t,n);return f=new C8e.SchemaEnv({schema:t,schemaId:A,meta:r,baseId:n,localRefs:I}),this._cache.set(f.schema,f),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):C8e.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{C8e.compileSchema.call(this,t)}finally{this.opts=r}}};y8e.ValidationError=z5c.default;y8e.MissingRefError=Y6i.default;ex.default=y8e;function M6i(e,t,r,n="error"){for(let a in e){let o=a;o in t&&this.logger[n](`${r}: option ${a}. ${e[o]}`)}}function H6i(e){return e=(0,_8e.normalizeId)(e),this.schemas[e]||this.refs[e]}function oMc(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function aMc(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function cMc(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function lMc(){let e={...this.opts};for(let t of tMc)delete e[t];return e}var uMc={log(){},warn(){},error(){}};function gMc(e){if(e===!1)return uMc;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var AMc=/^[a-z_$][a-z0-9_$:-]*$/i;function dMc(e,t){let{RULES:r}=this;if((0,tWr.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!AMc.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function eWr(e,t,r){var n;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,l=a?o.post:o.rules.find(({type:f})=>f===r);if(l||(l={type:r,rules:[]},o.rules.push(l)),o.keywords[e]=!0,!t)return;let A={keyword:e,definition:{...t,type:(0,NBt.getJSONTypes)(t.type),schemaType:(0,NBt.getJSONTypes)(t.schemaType)}};t.before?pMc.call(this,l,A,t.before):l.rules.push(A),o.all[e]=A,(n=t.implements)===null||n===void 0||n.forEach(f=>this.addKeyword(f))}function pMc(e,t,r){let n=e.rules.findIndex(a=>a.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function fMc(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=X6i(t)),e.validateSchema=this.compile(t,!0))}var IMc={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function X6i(e){return{anyOf:[e,IMc]}}});var U6i=H(rWr=>{"use strict";Object.defineProperty(rWr,"__esModule",{value:!0});var hMc={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};rWr.default=hMc});var q6i=H(a_e=>{"use strict";Object.defineProperty(a_e,"__esModule",{value:!0});a_e.callRef=a_e.getValidate=void 0;var mMc=h8e(),K6i=IH(),xV=Hh(),lke=rte(),j6i=BBt(),DBt=B_(),CMc={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:a,schemaEnv:o,validateName:l,opts:A,self:f}=n,{root:I}=o;if((r==="#"||r==="#/")&&a===I.baseId)return b();let C=j6i.resolveRef.call(f,I,a,r);if(C===void 0)throw new mMc.default(n.opts.uriResolver,a,r);if(C instanceof j6i.SchemaEnv)return E(C);return N(C);function b(){if(o===I)return kBt(e,l,o,o.$async);let B=t.scopeValue("root",{ref:I});return kBt(e,(0,xV._)`${B}.validate`,I,I.$async)}function E(B){let F=z6i(e,B);kBt(e,F,B,B.$async)}function N(B){let F=t.scopeValue("schema",A.code.source===!0?{ref:B,code:(0,xV.stringify)(B)}:{ref:B}),Q=t.name("valid"),X=e.subschema({schema:B,dataTypes:[],schemaPath:xV.nil,topSchemaRef:F,errSchemaPath:r},Q);e.mergeEvaluated(X),e.ok(Q)}}};function z6i(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,xV._)`${r.scopeValue("wrapper",{ref:t})}.validate`}a_e.getValidate=z6i;function kBt(e,t,r,n){let{gen:a,it:o}=e,{allErrors:l,schemaEnv:A,opts:f}=o,I=f.passContext?lke.default.this:xV.nil;n?C():b();function C(){if(!A.$async)throw new Error("async schema referenced by sync schema");let B=a.let("valid");a.try(()=>{a.code((0,xV._)`await ${(0,K6i.callValidateCode)(e,t,I)}`),N(t),l||a.assign(B,!0)},F=>{a.if((0,xV._)`!(${F} instanceof ${o.ValidationError})`,()=>a.throw(F)),E(F),l||a.assign(B,!1)}),e.ok(B)}function b(){e.result((0,K6i.callValidateCode)(e,t,I),()=>N(t),()=>E(t))}function E(B){let F=(0,xV._)`${B}.errors`;a.assign(lke.default.vErrors,(0,xV._)`${lke.default.vErrors} === null ? ${F} : ${lke.default.vErrors}.concat(${F})`),a.assign(lke.default.errors,(0,xV._)`${lke.default.vErrors}.length`)}function N(B){var F;if(!o.opts.unevaluated)return;let Q=(F=r?.validate)===null||F===void 0?void 0:F.evaluated;if(o.props!==!0)if(Q&&!Q.dynamicProps)Q.props!==void 0&&(o.props=DBt.mergeEvaluated.props(a,Q.props,o.props));else{let X=a.var("props",(0,xV._)`${B}.evaluated.props`);o.props=DBt.mergeEvaluated.props(a,X,o.props,xV.Name)}if(o.items!==!0)if(Q&&!Q.dynamicItems)Q.items!==void 0&&(o.items=DBt.mergeEvaluated.items(a,Q.items,o.items));else{let X=a.var("items",(0,xV._)`${B}.evaluated.items`);o.items=DBt.mergeEvaluated.items(a,X,o.items,xV.Name)}}}a_e.callRef=kBt;a_e.default=CMc});var $6i=H(nWr=>{"use strict";Object.defineProperty(nWr,"__esModule",{value:!0});var _Mc=U6i(),yMc=q6i(),bMc=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",_Mc.default,yMc.default];nWr.default=bMc});var e7i=H(iWr=>{"use strict";Object.defineProperty(iWr,"__esModule",{value:!0});var xBt=Hh(),Ale=xBt.operators,GBt={maximum:{okStr:"<=",ok:Ale.LTE,fail:Ale.GT},minimum:{okStr:">=",ok:Ale.GTE,fail:Ale.LT},exclusiveMaximum:{okStr:"<",ok:Ale.LT,fail:Ale.GTE},exclusiveMinimum:{okStr:">",ok:Ale.GT,fail:Ale.LTE}},EMc={message:({keyword:e,schemaCode:t})=>(0,xBt.str)`must be ${GBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,xBt._)`{comparison: ${GBt[e].okStr}, limit: ${t}}`},SMc={keyword:Object.keys(GBt),type:"number",schemaType:"number",$data:!0,error:EMc,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,xBt._)`${r} ${GBt[t].fail} ${n} || isNaN(${r})`)}};iWr.default=SMc});var t7i=H(sWr=>{"use strict";Object.defineProperty(sWr,"__esModule",{value:!0});var b8e=Hh(),vMc={message:({schemaCode:e})=>(0,b8e.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,b8e._)`{multipleOf: ${e}}`},BMc={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vMc,code(e){let{gen:t,data:r,schemaCode:n,it:a}=e,o=a.opts.multipleOfPrecision,l=t.let("res"),A=o?(0,b8e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${o}`:(0,b8e._)`${l} !== parseInt(${l})`;e.fail$data((0,b8e._)`(${n} === 0 || (${l} = ${r}/${n}, ${A}))`)}};sWr.default=BMc});var n7i=H(oWr=>{"use strict";Object.defineProperty(oWr,"__esModule",{value:!0});function r7i(e){let t=e.length,r=0,n=0,a;for(;n=55296&&a<=56319&&n{"use strict";Object.defineProperty(aWr,"__esModule",{value:!0});var c_e=Hh(),wMc=B_(),TMc=n7i(),RMc={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,c_e.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,c_e._)`{limit: ${e}}`},NMc={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:RMc,code(e){let{keyword:t,data:r,schemaCode:n,it:a}=e,o=t==="maxLength"?c_e.operators.GT:c_e.operators.LT,l=a.opts.unicode===!1?(0,c_e._)`${r}.length`:(0,c_e._)`${(0,wMc.useFunc)(e.gen,TMc.default)}(${r})`;e.fail$data((0,c_e._)`${l} ${o} ${n}`)}};aWr.default=NMc});var s7i=H(cWr=>{"use strict";Object.defineProperty(cWr,"__esModule",{value:!0});var DMc=IH(),FBt=Hh(),kMc={message:({schemaCode:e})=>(0,FBt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,FBt._)`{pattern: ${e}}`},xMc={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:kMc,code(e){let{data:t,$data:r,schema:n,schemaCode:a,it:o}=e,l=o.opts.unicodeRegExp?"u":"",A=r?(0,FBt._)`(new RegExp(${a}, ${l}))`:(0,DMc.usePattern)(e,n);e.fail$data((0,FBt._)`!${A}.test(${t})`)}};cWr.default=xMc});var o7i=H(lWr=>{"use strict";Object.defineProperty(lWr,"__esModule",{value:!0});var E8e=Hh(),GMc={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,E8e.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,E8e._)`{limit: ${e}}`},FMc={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:GMc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxProperties"?E8e.operators.GT:E8e.operators.LT;e.fail$data((0,E8e._)`Object.keys(${r}).length ${a} ${n}`)}};lWr.default=FMc});var a7i=H(uWr=>{"use strict";Object.defineProperty(uWr,"__esModule",{value:!0});var S8e=IH(),v8e=Hh(),ZMc=B_(),LMc={message:({params:{missingProperty:e}})=>(0,v8e.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,v8e._)`{missingProperty: ${e}}`},VMc={keyword:"required",type:"object",schemaType:"array",$data:!0,error:LMc,code(e){let{gen:t,schema:r,schemaCode:n,data:a,$data:o,it:l}=e,{opts:A}=l;if(!o&&r.length===0)return;let f=r.length>=A.loopRequired;if(l.allErrors?I():C(),A.strictRequired){let N=e.parentSchema.properties,{definedProperties:B}=e.it;for(let F of r)if(N?.[F]===void 0&&!B.has(F)){let Q=l.schemaEnv.baseId+l.errSchemaPath,X=`required property "${F}" is not defined at "${Q}" (strictRequired)`;(0,ZMc.checkStrictMode)(l,X,l.opts.strictRequired)}}function I(){if(f||o)e.block$data(v8e.nil,b);else for(let N of r)(0,S8e.checkReportMissingProp)(e,N)}function C(){let N=t.let("missing");if(f||o){let B=t.let("valid",!0);e.block$data(B,()=>E(N,B)),e.ok(B)}else t.if((0,S8e.checkMissingProp)(e,r,N)),(0,S8e.reportMissingProp)(e,N),t.else()}function b(){t.forOf("prop",n,N=>{e.setParams({missingProperty:N}),t.if((0,S8e.noPropertyInData)(t,a,N,A.ownProperties),()=>e.error())})}function E(N,B){e.setParams({missingProperty:N}),t.forOf(N,n,()=>{t.assign(B,(0,S8e.propertyInData)(t,a,N,A.ownProperties)),t.if((0,v8e.not)(B),()=>{e.error(),t.break()})},v8e.nil)}}};uWr.default=VMc});var c7i=H(gWr=>{"use strict";Object.defineProperty(gWr,"__esModule",{value:!0});var B8e=Hh(),PMc={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,B8e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,B8e._)`{limit: ${e}}`},WMc={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:PMc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxItems"?B8e.operators.GT:B8e.operators.LT;e.fail$data((0,B8e._)`${r}.length ${a} ${n}`)}};gWr.default=WMc});var ZBt=H(AWr=>{"use strict";Object.defineProperty(AWr,"__esModule",{value:!0});var l7i=LPr();l7i.code='require("ajv/dist/runtime/equal").default';AWr.default=l7i});var u7i=H(pWr=>{"use strict";Object.defineProperty(pWr,"__esModule",{value:!0});var dWr=A8e(),tx=Hh(),OMc=B_(),MMc=ZBt(),HMc={message:({params:{i:e,j:t}})=>(0,tx.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,tx._)`{i: ${e}, j: ${t}}`},YMc={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:HMc,code(e){let{gen:t,data:r,$data:n,schema:a,parentSchema:o,schemaCode:l,it:A}=e;if(!n&&!a)return;let f=t.let("valid"),I=o.items?(0,dWr.getSchemaTypes)(o.items):[];e.block$data(f,C,(0,tx._)`${l} === false`),e.ok(f);function C(){let B=t.let("i",(0,tx._)`${r}.length`),F=t.let("j");e.setParams({i:B,j:F}),t.assign(f,!0),t.if((0,tx._)`${B} > 1`,()=>(b()?E:N)(B,F))}function b(){return I.length>0&&!I.some(B=>B==="object"||B==="array")}function E(B,F){let Q=t.name("item"),X=(0,dWr.checkDataTypes)(I,Q,A.opts.strictNumbers,dWr.DataType.Wrong),ae=t.const("indices",(0,tx._)`{}`);t.for((0,tx._)`;${B}--;`,()=>{t.let(Q,(0,tx._)`${r}[${B}]`),t.if(X,(0,tx._)`continue`),I.length>1&&t.if((0,tx._)`typeof ${Q} == "string"`,(0,tx._)`${Q} += "_"`),t.if((0,tx._)`typeof ${ae}[${Q}] == "number"`,()=>{t.assign(F,(0,tx._)`${ae}[${Q}]`),e.error(),t.assign(f,!1).break()}).code((0,tx._)`${ae}[${Q}] = ${B}`)})}function N(B,F){let Q=(0,OMc.useFunc)(t,MMc.default),X=t.name("outer");t.label(X).for((0,tx._)`;${B}--;`,()=>t.for((0,tx._)`${F} = ${B}; ${F}--;`,()=>t.if((0,tx._)`${Q}(${r}[${B}], ${r}[${F}])`,()=>{e.error(),t.assign(f,!1).break(X)})))}}};pWr.default=YMc});var g7i=H(IWr=>{"use strict";Object.defineProperty(IWr,"__esModule",{value:!0});var fWr=Hh(),QMc=B_(),XMc=ZBt(),JMc={message:"must be equal to constant",params:({schemaCode:e})=>(0,fWr._)`{allowedValue: ${e}}`},UMc={keyword:"const",$data:!0,error:JMc,code(e){let{gen:t,data:r,$data:n,schemaCode:a,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,fWr._)`!${(0,QMc.useFunc)(t,XMc.default)}(${r}, ${a})`):e.fail((0,fWr._)`${o} !== ${r}`)}};IWr.default=UMc});var A7i=H(hWr=>{"use strict";Object.defineProperty(hWr,"__esModule",{value:!0});var w8e=Hh(),KMc=B_(),jMc=ZBt(),zMc={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,w8e._)`{allowedValues: ${e}}`},qMc={keyword:"enum",schemaType:"array",$data:!0,error:zMc,code(e){let{gen:t,data:r,$data:n,schema:a,schemaCode:o,it:l}=e;if(!n&&a.length===0)throw new Error("enum must have non-empty array");let A=a.length>=l.opts.loopEnum,f,I=()=>f??(f=(0,KMc.useFunc)(t,jMc.default)),C;if(A||n)C=t.let("valid"),e.block$data(C,b);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let N=t.const("vSchema",o);C=(0,w8e.or)(...a.map((B,F)=>E(N,F)))}e.pass(C);function b(){t.assign(C,!1),t.forOf("v",o,N=>t.if((0,w8e._)`${I()}(${r}, ${N})`,()=>t.assign(C,!0).break()))}function E(N,B){let F=a[B];return typeof F=="object"&&F!==null?(0,w8e._)`${I()}(${r}, ${N}[${B}])`:(0,w8e._)`${r} === ${F}`}}};hWr.default=qMc});var d7i=H(mWr=>{"use strict";Object.defineProperty(mWr,"__esModule",{value:!0});var $Mc=e7i(),eHc=t7i(),tHc=i7i(),rHc=s7i(),nHc=o7i(),iHc=a7i(),sHc=c7i(),oHc=u7i(),aHc=g7i(),cHc=A7i(),lHc=[$Mc.default,eHc.default,tHc.default,rHc.default,nHc.default,iHc.default,sHc.default,oHc.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},aHc.default,cHc.default];mWr.default=lHc});var _Wr=H(T8e=>{"use strict";Object.defineProperty(T8e,"__esModule",{value:!0});T8e.validateAdditionalItems=void 0;var l_e=Hh(),CWr=B_(),uHc={message:({params:{len:e}})=>(0,l_e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,l_e._)`{limit: ${e}}`},gHc={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:uHc,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,CWr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}p7i(e,n)}};function p7i(e,t){let{gen:r,schema:n,data:a,keyword:o,it:l}=e;l.items=!0;let A=r.const("len",(0,l_e._)`${a}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,l_e._)`${A} <= ${t.length}`);else if(typeof n=="object"&&!(0,CWr.alwaysValidSchema)(l,n)){let I=r.var("valid",(0,l_e._)`${A} <= ${t.length}`);r.if((0,l_e.not)(I),()=>f(I)),e.ok(I)}function f(I){r.forRange("i",t.length,A,C=>{e.subschema({keyword:o,dataProp:C,dataPropType:CWr.Type.Num},I),l.allErrors||r.if((0,l_e.not)(I),()=>r.break())})}}T8e.validateAdditionalItems=p7i;T8e.default=gHc});var yWr=H(R8e=>{"use strict";Object.defineProperty(R8e,"__esModule",{value:!0});R8e.validateTuple=void 0;var f7i=Hh(),LBt=B_(),AHc=IH(),dHc={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return I7i(e,"additionalItems",t);r.items=!0,!(0,LBt.alwaysValidSchema)(r,t)&&e.ok((0,AHc.validateArray)(e))}};function I7i(e,t,r=e.schema){let{gen:n,parentSchema:a,data:o,keyword:l,it:A}=e;C(a),A.opts.unevaluated&&r.length&&A.items!==!0&&(A.items=LBt.mergeEvaluated.items(n,r.length,A.items));let f=n.name("valid"),I=n.const("len",(0,f7i._)`${o}.length`);r.forEach((b,E)=>{(0,LBt.alwaysValidSchema)(A,b)||(n.if((0,f7i._)`${I} > ${E}`,()=>e.subschema({keyword:l,schemaProp:E,dataProp:E},f)),e.ok(f))});function C(b){let{opts:E,errSchemaPath:N}=A,B=r.length,F=B===b.minItems&&(B===b.maxItems||b[t]===!1);if(E.strictTuples&&!F){let Q=`"${l}" is ${B}-tuple, but minItems or maxItems/${t} are not specified or different at path "${N}"`;(0,LBt.checkStrictMode)(A,Q,E.strictTuples)}}}R8e.validateTuple=I7i;R8e.default=dHc});var h7i=H(bWr=>{"use strict";Object.defineProperty(bWr,"__esModule",{value:!0});var pHc=yWr(),fHc={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,pHc.validateTuple)(e,"items")};bWr.default=fHc});var C7i=H(EWr=>{"use strict";Object.defineProperty(EWr,"__esModule",{value:!0});var m7i=Hh(),IHc=B_(),hHc=IH(),mHc=_Wr(),CHc={message:({params:{len:e}})=>(0,m7i.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,m7i._)`{limit: ${e}}`},_Hc={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:CHc,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:a}=r;n.items=!0,!(0,IHc.alwaysValidSchema)(n,t)&&(a?(0,mHc.validateAdditionalItems)(e,a):e.ok((0,hHc.validateArray)(e)))}};EWr.default=_Hc});var _7i=H(SWr=>{"use strict";Object.defineProperty(SWr,"__esModule",{value:!0});var mH=Hh(),VBt=B_(),yHc={message:({params:{min:e,max:t}})=>t===void 0?(0,mH.str)`must contain at least ${e} valid item(s)`:(0,mH.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,mH._)`{minContains: ${e}}`:(0,mH._)`{minContains: ${e}, maxContains: ${t}}`},bHc={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:yHc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e,l,A,{minContains:f,maxContains:I}=n;o.opts.next?(l=f===void 0?1:f,A=I):l=1;let C=t.const("len",(0,mH._)`${a}.length`);if(e.setParams({min:l,max:A}),A===void 0&&l===0){(0,VBt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(A!==void 0&&l>A){(0,VBt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,VBt.alwaysValidSchema)(o,r)){let F=(0,mH._)`${C} >= ${l}`;A!==void 0&&(F=(0,mH._)`${F} && ${C} <= ${A}`),e.pass(F);return}o.items=!0;let b=t.name("valid");A===void 0&&l===1?N(b,()=>t.if(b,()=>t.break())):l===0?(t.let(b,!0),A!==void 0&&t.if((0,mH._)`${a}.length > 0`,E)):(t.let(b,!1),E()),e.result(b,()=>e.reset());function E(){let F=t.name("_valid"),Q=t.let("count",0);N(F,()=>t.if(F,()=>B(Q)))}function N(F,Q){t.forRange("i",0,C,X=>{e.subschema({keyword:"contains",dataProp:X,dataPropType:VBt.Type.Num,compositeRule:!0},F),Q()})}function B(F){t.code((0,mH._)`${F}++`),A===void 0?t.if((0,mH._)`${F} >= ${l}`,()=>t.assign(b,!0).break()):(t.if((0,mH._)`${F} > ${A}`,()=>t.assign(b,!1).break()),l===1?t.assign(b,!0):t.if((0,mH._)`${F} >= ${l}`,()=>t.assign(b,!0)))}}};SWr.default=bHc});var E7i=H(Oj=>{"use strict";Object.defineProperty(Oj,"__esModule",{value:!0});Oj.validateSchemaDeps=Oj.validatePropertyDeps=Oj.error=void 0;var vWr=Hh(),EHc=B_(),N8e=IH();Oj.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,vWr.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,vWr._)`{property: ${e}, + || ${l} === "boolean" || ${a} === null`).assign(A,(0,Bh._)`[${a}]`)}}}function q3c({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Bh._)`${t} !== undefined`,()=>e.assign((0,Bh._)`${t}[${r}]`,n))}function VPr(e,t,r,n=oke.Correct){let a=n===oke.Correct?Bh.operators.EQ:Bh.operators.NEQ,o;switch(e){case"null":return(0,Bh._)`${t} ${a} null`;case"array":o=(0,Bh._)`Array.isArray(${t})`;break;case"object":o=(0,Bh._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=l((0,Bh._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=l();break;default:return(0,Bh._)`typeof ${t} ${a} ${e}`}return n===oke.Correct?o:(0,Bh.not)(o);function l(A=Bh.nil){return(0,Bh.and)((0,Bh._)`typeof ${t} == "number"`,A,r?(0,Bh._)`isFinite(${t})`:Bh.nil)}}JG.checkDataType=VPr;function PPr(e,t,r,n){if(e.length===1)return VPr(e[0],t,r,n);let a,o=(0,t6i.toHash)(e);if(o.array&&o.object){let l=(0,Bh._)`typeof ${t} != "object"`;a=o.null?l:(0,Bh._)`!${t} || ${l}`,delete o.null,delete o.array,delete o.object}else a=Bh.nil;o.number&&delete o.integer;for(let l in o)a=(0,Bh.and)(a,VPr(l,t,r,n));return a}JG.checkDataTypes=PPr;var $3c={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Bh._)`{type: ${e}}`:(0,Bh._)`{type: ${t}}`};function WPr(e){let t=e5c(e);(0,J3c.reportError)(t,$3c)}JG.reportTypeError=WPr;function e5c(e){let{gen:t,data:r,schema:n}=e,a=(0,t6i.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:a,schemaValue:a,parentSchema:n,params:{},it:e}}});var s6i=H(SBt=>{"use strict";Object.defineProperty(SBt,"__esModule",{value:!0});SBt.assignDefaults=void 0;var ake=Hh(),t5c=B_();function r5c(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let a in r)i6i(e,a,r[a].default);else t==="array"&&Array.isArray(n)&&n.forEach((a,o)=>i6i(e,o,a.default))}SBt.assignDefaults=r5c;function i6i(e,t,r){let{gen:n,compositeRule:a,data:o,opts:l}=e;if(r===void 0)return;let A=(0,ake._)`${o}${(0,ake.getProperty)(t)}`;if(a){(0,t5c.checkStrictMode)(e,`default is ignored for: ${A}`);return}let f=(0,ake._)`${A} === undefined`;l.useDefaults==="empty"&&(f=(0,ake._)`${f} || ${A} === null || ${A} === ""`),n.if(f,(0,ake._)`${A} = ${(0,ake.stringify)(r)}`)}});var IH=H(lb=>{"use strict";Object.defineProperty(lb,"__esModule",{value:!0});lb.validateUnion=lb.validateArray=lb.usePattern=lb.callValidateCode=lb.schemaProperties=lb.allSchemaProperties=lb.noPropertyInData=lb.propertyInData=lb.isOwnProperty=lb.hasPropFunc=lb.reportMissingProp=lb.checkMissingProp=lb.checkReportMissingProp=void 0;var X1=Hh(),OPr=B_(),lle=nte(),n5c=B_();function i5c(e,t){let{gen:r,data:n,it:a}=e;r.if(HPr(r,n,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,X1._)`${t}`},!0),e.error()})}lb.checkReportMissingProp=i5c;function s5c({gen:e,data:t,it:{opts:r}},n,a){return(0,X1.or)(...n.map(o=>(0,X1.and)(HPr(e,t,o,r.ownProperties),(0,X1._)`${a} = ${o}`)))}lb.checkMissingProp=s5c;function o5c(e,t){e.setParams({missingProperty:t},!0),e.error()}lb.reportMissingProp=o5c;function o6i(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,X1._)`Object.prototype.hasOwnProperty`})}lb.hasPropFunc=o6i;function MPr(e,t,r){return(0,X1._)`${o6i(e)}.call(${t}, ${r})`}lb.isOwnProperty=MPr;function a5c(e,t,r,n){let a=(0,X1._)`${t}${(0,X1.getProperty)(r)} !== undefined`;return n?(0,X1._)`${a} && ${MPr(e,t,r)}`:a}lb.propertyInData=a5c;function HPr(e,t,r,n){let a=(0,X1._)`${t}${(0,X1.getProperty)(r)} === undefined`;return n?(0,X1.or)(a,(0,X1.not)(MPr(e,t,r))):a}lb.noPropertyInData=HPr;function a6i(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}lb.allSchemaProperties=a6i;function c5c(e,t){return a6i(t).filter(r=>!(0,OPr.alwaysValidSchema)(e,t[r]))}lb.schemaProperties=c5c;function l5c({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:a,errorPath:o},it:l},A,f,I){let C=I?(0,X1._)`${e}, ${t}, ${n}${a}`:t,b=[[lle.default.instancePath,(0,X1.strConcat)(lle.default.instancePath,o)],[lle.default.parentData,l.parentData],[lle.default.parentDataProperty,l.parentDataProperty],[lle.default.rootData,lle.default.rootData]];l.opts.dynamicRef&&b.push([lle.default.dynamicAnchors,lle.default.dynamicAnchors]);let E=(0,X1._)`${C}, ${r.object(...b)}`;return f!==X1.nil?(0,X1._)`${A}.call(${f}, ${E})`:(0,X1._)`${A}(${E})`}lb.callValidateCode=l5c;var u5c=(0,X1._)`new RegExp`;function g5c({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,X1._)`${a.code==="new RegExp"?u5c:(0,n5c.useFunc)(e,a)}(${r}, ${n})`})}lb.usePattern=g5c;function A5c(e){let{gen:t,data:r,keyword:n,it:a}=e,o=t.name("valid");if(a.allErrors){let A=t.let("valid",!0);return l(()=>t.assign(A,!1)),A}return t.var(o,!0),l(()=>t.break()),o;function l(A){let f=t.const("len",(0,X1._)`${r}.length`);t.forRange("i",0,f,I=>{e.subschema({keyword:n,dataProp:I,dataPropType:OPr.Type.Num},o),t.if((0,X1.not)(o),A)})}}lb.validateArray=A5c;function d5c(e){let{gen:t,schema:r,keyword:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,OPr.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let l=t.let("valid",!1),A=t.name("_valid");t.block(()=>r.forEach((f,I)=>{let C=e.subschema({keyword:n,schemaProp:I,compositeRule:!0},A);t.assign(l,(0,X1._)`${l} || ${A}`),e.mergeValidEvaluated(C,A)||t.if((0,X1.not)(l))})),e.result(l,()=>e.reset(),()=>e.error(!0))}lb.validateUnion=d5c});var u6i=H(Vj=>{"use strict";Object.defineProperty(Vj,"__esModule",{value:!0});Vj.validateKeywordUsage=Vj.validSchemaType=Vj.funcKeywordCode=Vj.macroKeywordCode=void 0;var nL=Hh(),o_e=nte(),p5c=IH(),f5c=d8e();function I5c(e,t){let{gen:r,keyword:n,schema:a,parentSchema:o,it:l}=e,A=t.macro.call(l.self,a,o,l),f=l6i(r,n,A);l.opts.validateSchema!==!1&&l.self.validateSchema(A,!0);let I=r.name("valid");e.subschema({schema:A,schemaPath:nL.nil,errSchemaPath:`${l.errSchemaPath}/${n}`,topSchemaRef:f,compositeRule:!0},I),e.pass(I,()=>e.error(!0))}Vj.macroKeywordCode=I5c;function h5c(e,t){var r;let{gen:n,keyword:a,schema:o,parentSchema:l,$data:A,it:f}=e;C5c(f,t);let I=!A&&t.compile?t.compile.call(f.self,o,l,f):t.validate,C=l6i(n,a,I),b=n.let("valid");e.block$data(b,E),e.ok((r=t.valid)!==null&&r!==void 0?r:b);function E(){if(t.errors===!1)F(),t.modifying&&c6i(e),Q(()=>e.error());else{let X=t.async?N():B();t.modifying&&c6i(e),Q(()=>m5c(e,X))}}function N(){let X=n.let("ruleErrs",null);return n.try(()=>F((0,nL._)`await `),ae=>n.assign(b,!1).if((0,nL._)`${ae} instanceof ${f.ValidationError}`,()=>n.assign(X,(0,nL._)`${ae}.errors`),()=>n.throw(ae))),X}function B(){let X=(0,nL._)`${C}.errors`;return n.assign(X,null),F(nL.nil),X}function F(X=t.async?(0,nL._)`await `:nL.nil){let ae=f.opts.passContext?o_e.default.this:o_e.default.self,ne=!("compile"in t&&!A||t.schema===!1);n.assign(b,(0,nL._)`${X}${(0,p5c.callValidateCode)(e,C,ae,ne)}`,t.modifying)}function Q(X){var ae;n.if((0,nL.not)((ae=t.valid)!==null&&ae!==void 0?ae:b),X)}}Vj.funcKeywordCode=h5c;function c6i(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,nL._)`${n.parentData}[${n.parentDataProperty}]`))}function m5c(e,t){let{gen:r}=e;r.if((0,nL._)`Array.isArray(${t})`,()=>{r.assign(o_e.default.vErrors,(0,nL._)`${o_e.default.vErrors} === null ? ${t} : ${o_e.default.vErrors}.concat(${t})`).assign(o_e.default.errors,(0,nL._)`${o_e.default.vErrors}.length`),(0,f5c.extendErrors)(e)},()=>e.error())}function C5c({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function l6i(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,nL.stringify)(r)})}function _5c(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Vj.validSchemaType=_5c;function y5c({schema:e,opts:t,self:r,errSchemaPath:n},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let l=a.dependencies;if(l?.some(A=>!Object.prototype.hasOwnProperty.call(e,A)))throw new Error(`parent schema must have dependencies of ${o}: ${l.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}Vj.validateKeywordUsage=y5c});var A6i=H(ule=>{"use strict";Object.defineProperty(ule,"__esModule",{value:!0});ule.extendSubschemaMode=ule.extendSubschemaData=ule.getSubschema=void 0;var Pj=Hh(),g6i=B_();function b5c(e,{keyword:t,schemaProp:r,schema:n,schemaPath:a,errSchemaPath:o,topSchemaRef:l}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let A=e.schema[t];return r===void 0?{schema:A,schemaPath:(0,Pj._)`${e.schemaPath}${(0,Pj.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:A[r],schemaPath:(0,Pj._)`${e.schemaPath}${(0,Pj.getProperty)(t)}${(0,Pj.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,g6i.escapeFragment)(r)}`}}if(n!==void 0){if(a===void 0||o===void 0||l===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:a,topSchemaRef:l,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}ule.getSubschema=b5c;function E5c(e,t,{dataProp:r,dataPropType:n,data:a,dataTypes:o,propertyName:l}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:A}=t;if(r!==void 0){let{errorPath:I,dataPathArr:C,opts:b}=t,E=A.let("data",(0,Pj._)`${t.data}${(0,Pj.getProperty)(r)}`,!0);f(E),e.errorPath=(0,Pj.str)`${I}${(0,g6i.getErrorPath)(r,n,b.jsPropertySyntax)}`,e.parentDataProperty=(0,Pj._)`${r}`,e.dataPathArr=[...C,e.parentDataProperty]}if(a!==void 0){let I=a instanceof Pj.Name?a:A.let("data",a,!0);f(I),l!==void 0&&(e.propertyName=l)}o&&(e.dataTypes=o);function f(I){e.data=I,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,I]}}ule.extendSubschemaData=E5c;function S5c(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:a,allErrors:o}){n!==void 0&&(e.compositeRule=n),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}ule.extendSubschemaMode=S5c});var YPr=H((KUu,d6i)=>{"use strict";d6i.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,a,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(a=n;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(a=n;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=n;a--!==0;){var l=o[a];if(!e(t[l],r[l]))return!1}return!0}return t!==t&&r!==r}});var f6i=H((jUu,p6i)=>{"use strict";var gle=p6i.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};vBt(t,n,a,e,"",e)};gle.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};gle.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};gle.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};gle.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 vBt(e,t,r,n,a,o,l,A,f,I){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,a,o,l,A,f,I);for(var C in n){var b=n[C];if(Array.isArray(b)){if(C in gle.arrayKeywords)for(var E=0;E{"use strict";Object.defineProperty(kV,"__esModule",{value:!0});kV.getSchemaRefs=kV.resolveUrl=kV.normalizeId=kV._getFullPath=kV.getFullPath=kV.inlineRef=void 0;var B5c=B_(),w5c=YPr(),T5c=f6i(),R5c=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function N5c(e,t=!0){return typeof e=="boolean"?!0:t===!0?!QPr(e):t?I6i(e)<=t:!1}kV.inlineRef=N5c;var D5c=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function QPr(e){for(let t in e){if(D5c.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(QPr)||typeof r=="object"&&QPr(r))return!0}return!1}function I6i(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!R5c.has(r)&&(typeof e[r]=="object"&&(0,B5c.eachItem)(e[r],n=>t+=I6i(n)),t===1/0))return 1/0}return t}function h6i(e,t="",r){r!==!1&&(t=cke(t));let n=e.parse(t);return m6i(e,n)}kV.getFullPath=h6i;function m6i(e,t){return e.serialize(t).split("#")[0]+"#"}kV._getFullPath=m6i;var k5c=/#\/?$/;function cke(e){return e?e.replace(k5c,""):""}kV.normalizeId=cke;function x5c(e,t,r){return r=cke(r),e.resolve(t,r)}kV.resolveUrl=x5c;var G5c=/^[a-z_][-a-z0-9._]*$/i;function F5c(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,a=cke(e[r]||t),o={"":a},l=h6i(n,a,!1),A={},f=new Set;return T5c(e,{allKeys:!0},(b,E,N,B)=>{if(B===void 0)return;let F=l+E,Q=o[B];typeof b[r]=="string"&&(Q=X.call(this,b[r])),ae.call(this,b.$anchor),ae.call(this,b.$dynamicAnchor),o[E]=Q;function X(ne){let ce=this.opts.uriResolver.resolve;if(ne=cke(Q?ce(Q,ne):ne),f.has(ne))throw C(ne);f.add(ne);let fe=this.refs[ne];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?I(b,fe.schema,ne):ne!==cke(F)&&(ne[0]==="#"?(I(b,A[ne],ne),A[ne]=b):this.refs[ne]=F),ne}function ae(ne){if(typeof ne=="string"){if(!G5c.test(ne))throw new Error(`invalid anchor "${ne}"`);X.call(this,`#${ne}`)}}}),A;function I(b,E,N){if(E!==void 0&&!w5c(b,E))throw C(N)}function C(b){return new Error(`reference "${b}" resolves to more than one schema`)}}kV.getSchemaRefs=F5c});var m8e=H(Ale=>{"use strict";Object.defineProperty(Ale,"__esModule",{value:!0});Ale.getData=Ale.KeywordCxt=Ale.validateFunctionCode=void 0;var E6i=qji(),C6i=p8e(),JPr=LPr(),BBt=p8e(),Z5c=s6i(),h8e=u6i(),XPr=A6i(),Zd=Hh(),cI=nte(),L5c=f8e(),ite=B_(),I8e=d8e();function V5c(e){if(B6i(e)&&(w6i(e),v6i(e))){O5c(e);return}S6i(e,()=>(0,E6i.topBoolOrEmptySchema)(e))}Ale.validateFunctionCode=V5c;function S6i({gen:e,validateName:t,schema:r,schemaEnv:n,opts:a},o){a.code.es5?e.func(t,(0,Zd._)`${cI.default.data}, ${cI.default.valCxt}`,n.$async,()=>{e.code((0,Zd._)`"use strict"; ${_6i(r,a)}`),W5c(e,a),e.code(o)}):e.func(t,(0,Zd._)`${cI.default.data}, ${P5c(a)}`,n.$async,()=>e.code(_6i(r,a)).code(o))}function P5c(e){return(0,Zd._)`{${cI.default.instancePath}="", ${cI.default.parentData}, ${cI.default.parentDataProperty}, ${cI.default.rootData}=${cI.default.data}${e.dynamicRef?(0,Zd._)`, ${cI.default.dynamicAnchors}={}`:Zd.nil}}={}`}function W5c(e,t){e.if(cI.default.valCxt,()=>{e.var(cI.default.instancePath,(0,Zd._)`${cI.default.valCxt}.${cI.default.instancePath}`),e.var(cI.default.parentData,(0,Zd._)`${cI.default.valCxt}.${cI.default.parentData}`),e.var(cI.default.parentDataProperty,(0,Zd._)`${cI.default.valCxt}.${cI.default.parentDataProperty}`),e.var(cI.default.rootData,(0,Zd._)`${cI.default.valCxt}.${cI.default.rootData}`),t.dynamicRef&&e.var(cI.default.dynamicAnchors,(0,Zd._)`${cI.default.valCxt}.${cI.default.dynamicAnchors}`)},()=>{e.var(cI.default.instancePath,(0,Zd._)`""`),e.var(cI.default.parentData,(0,Zd._)`undefined`),e.var(cI.default.parentDataProperty,(0,Zd._)`undefined`),e.var(cI.default.rootData,cI.default.data),t.dynamicRef&&e.var(cI.default.dynamicAnchors,(0,Zd._)`{}`)})}function O5c(e){let{schema:t,opts:r,gen:n}=e;S6i(e,()=>{r.$comment&&t.$comment&&R6i(e),X5c(e),n.let(cI.default.vErrors,null),n.let(cI.default.errors,0),r.unevaluated&&M5c(e),T6i(e),K5c(e)})}function M5c(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Zd._)`${r}.evaluated`),t.if((0,Zd._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Zd._)`${e.evaluated}.props`,(0,Zd._)`undefined`)),t.if((0,Zd._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Zd._)`${e.evaluated}.items`,(0,Zd._)`undefined`))}function _6i(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Zd._)`/*# sourceURL=${r} */`:Zd.nil}function H5c(e,t){if(B6i(e)&&(w6i(e),v6i(e))){Y5c(e,t);return}(0,E6i.boolOrEmptySchema)(e,t)}function v6i({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function B6i(e){return typeof e.schema!="boolean"}function Y5c(e,t){let{schema:r,gen:n,opts:a}=e;a.$comment&&r.$comment&&R6i(e),J5c(e),U5c(e);let o=n.const("_errs",cI.default.errors);T6i(e,o),n.var(t,(0,Zd._)`${o} === ${cI.default.errors}`)}function w6i(e){(0,ite.checkUnknownRules)(e),Q5c(e)}function T6i(e,t){if(e.opts.jtd)return y6i(e,[],!1,t);let r=(0,C6i.getSchemaTypes)(e.schema),n=(0,C6i.coerceAndCheckDataType)(e,r);y6i(e,r,!n,t)}function Q5c(e){let{schema:t,errSchemaPath:r,opts:n,self:a}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,ite.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function X5c(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,ite.checkStrictMode)(e,"default is ignored in the schema root")}function J5c(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,L5c.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function U5c(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function R6i({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,Zd._)`${cI.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let l=(0,Zd.str)`${n}/$comment`,A=e.scopeValue("root",{ref:t.root});e.code((0,Zd._)`${cI.default.self}.opts.$comment(${o}, ${l}, ${A}.schema)`)}}function K5c(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:a,opts:o}=e;r.$async?t.if((0,Zd._)`${cI.default.errors} === 0`,()=>t.return(cI.default.data),()=>t.throw((0,Zd._)`new ${a}(${cI.default.vErrors})`)):(t.assign((0,Zd._)`${n}.errors`,cI.default.vErrors),o.unevaluated&&j5c(e),t.return((0,Zd._)`${cI.default.errors} === 0`))}function j5c({gen:e,evaluated:t,props:r,items:n}){r instanceof Zd.Name&&e.assign((0,Zd._)`${t}.props`,r),n instanceof Zd.Name&&e.assign((0,Zd._)`${t}.items`,n)}function y6i(e,t,r,n){let{gen:a,schema:o,data:l,allErrors:A,opts:f,self:I}=e,{RULES:C}=I;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,ite.schemaHasRulesButRef)(o,C))){a.block(()=>D6i(e,"$ref",C.all.$ref.definition));return}f.jtd||z5c(e,t),a.block(()=>{for(let E of C.rules)b(E);b(C.post)});function b(E){(0,JPr.shouldUseGroup)(o,E)&&(E.type?(a.if((0,BBt.checkDataType)(E.type,l,f.strictNumbers)),b6i(e,E),t.length===1&&t[0]===E.type&&r&&(a.else(),(0,BBt.reportTypeError)(e)),a.endIf()):b6i(e,E),A||a.if((0,Zd._)`${cI.default.errors} === ${n||0}`))}}function b6i(e,t){let{gen:r,schema:n,opts:{useDefaults:a}}=e;a&&(0,Z5c.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,JPr.shouldUseRule)(n,o)&&D6i(e,o.keyword,o.definition,t.type)})}function z5c(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(q5c(e,t),e.opts.allowUnionTypes||$5c(e,t),eMc(e,e.dataTypes))}function q5c(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{N6i(e.dataTypes,r)||UPr(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),rMc(e,t)}}function $5c(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&UPr(e,"use allowUnionTypes to allow union type keyword")}function eMc(e,t){let r=e.self.RULES.all;for(let n in r){let a=r[n];if(typeof a=="object"&&(0,JPr.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(l=>tMc(t,l))&&UPr(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function tMc(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function N6i(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function rMc(e,t){let r=[];for(let n of e.dataTypes)N6i(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function UPr(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,ite.checkStrictMode)(e,t,e.opts.strictTypes)}var wBt=class{constructor(t,r,n){if((0,h8e.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,ite.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",k6i(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,h8e.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",cI.default.errors))}result(t,r,n){this.failResult((0,Zd.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Zd.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Zd._)`${r} !== undefined && (${(0,Zd.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?I8e.reportExtraError:I8e.reportError)(this,this.def.error,r)}$dataError(){(0,I8e.reportError)(this,this.def.$dataError||I8e.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,I8e.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Zd.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Zd.nil,r=Zd.nil){if(!this.$data)return;let{gen:n,schemaCode:a,schemaType:o,def:l}=this;n.if((0,Zd.or)((0,Zd._)`${a} === undefined`,r)),t!==Zd.nil&&n.assign(t,!0),(o.length||l.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Zd.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:a,it:o}=this;return(0,Zd.or)(l(),A());function l(){if(n.length){if(!(r instanceof Zd.Name))throw new Error("ajv implementation error");let f=Array.isArray(n)?n:[n];return(0,Zd._)`${(0,BBt.checkDataTypes)(f,r,o.opts.strictNumbers,BBt.DataType.Wrong)}`}return Zd.nil}function A(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,Zd._)`!${f}(${r})`}return Zd.nil}}subschema(t,r){let n=(0,XPr.getSubschema)(this.it,t);(0,XPr.extendSubschemaData)(n,this.it,t),(0,XPr.extendSubschemaMode)(n,t);let a={...this.it,...n,items:void 0,props:void 0};return H5c(a,r),a}mergeEvaluated(t,r){let{it:n,gen:a}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=ite.mergeEvaluated.props(a,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=ite.mergeEvaluated.items(a,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:a}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,Zd.Name)),!0}};Ale.KeywordCxt=wBt;function D6i(e,t,r,n){let a=new wBt(e,r,t);"code"in r?r.code(a,n):a.$data&&r.validate?(0,h8e.funcKeywordCode)(a,r):"macro"in r?(0,h8e.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,h8e.funcKeywordCode)(a,r)}var nMc=/^\/(?:[^~]|~0|~1)*$/,iMc=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function k6i(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let a,o;if(e==="")return cI.default.rootData;if(e[0]==="/"){if(!nMc.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=cI.default.rootData}else{let I=iMc.exec(e);if(!I)throw new Error(`Invalid JSON-pointer: ${e}`);let C=+I[1];if(a=I[2],a==="#"){if(C>=t)throw new Error(f("property/index",C));return n[t-C]}if(C>t)throw new Error(f("data",C));if(o=r[t-C],!a)return o}let l=o,A=a.split("/");for(let I of A)I&&(o=(0,Zd._)`${o}${(0,Zd.getProperty)((0,ite.unescapeJsonPointer)(I))}`,l=(0,Zd._)`${l} && ${o}`);return l;function f(I,C){return`Cannot access ${I} ${C} levels up, current level is ${t}`}}Ale.getData=k6i});var TBt=H(jPr=>{"use strict";Object.defineProperty(jPr,"__esModule",{value:!0});var KPr=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};jPr.default=KPr});var C8e=H($Pr=>{"use strict";Object.defineProperty($Pr,"__esModule",{value:!0});var zPr=f8e(),qPr=class extends Error{constructor(t,r,n,a){super(a||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,zPr.resolveUrl)(t,r,n),this.missingSchema=(0,zPr.normalizeId)((0,zPr.getFullPath)(t,this.missingRef))}};$Pr.default=qPr});var NBt=H(hH=>{"use strict";Object.defineProperty(hH,"__esModule",{value:!0});hH.resolveSchema=hH.getCompilingSchema=hH.resolveRef=hH.compileSchema=hH.SchemaEnv=void 0;var w4=Hh(),sMc=TBt(),a_e=nte(),T4=f8e(),x6i=B_(),oMc=m8e(),lke=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,T4.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};hH.SchemaEnv=lke;function tWr(e){let t=G6i.call(this,e);if(t)return t;let r=(0,T4.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:a}=this.opts.code,{ownProperties:o}=this.opts,l=new w4.CodeGen(this.scope,{es5:n,lines:a,ownProperties:o}),A;e.$async&&(A=l.scopeValue("Error",{ref:sMc.default,code:(0,w4._)`require("ajv/dist/runtime/validation_error").default`}));let f=l.scopeName("validate");e.validateName=f;let I={gen:l,allErrors:this.opts.allErrors,data:a_e.default.data,parentData:a_e.default.parentData,parentDataProperty:a_e.default.parentDataProperty,dataNames:[a_e.default.data],dataPathArr:[w4.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:l.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,w4.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:A,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:w4.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,w4._)`""`,opts:this.opts,self:this},C;try{this._compilations.add(e),(0,oMc.validateFunctionCode)(I),l.optimize(this.opts.code.optimize);let b=l.toString();C=`${l.scopeRefs(a_e.default.scope)}return ${b}`,this.opts.code.process&&(C=this.opts.code.process(C,e));let N=new Function(`${a_e.default.self}`,`${a_e.default.scope}`,C)(this,this.scope.get());if(this.scope.value(f,{ref:N}),N.errors=null,N.schema=e.schema,N.schemaEnv=e,e.$async&&(N.$async=!0),this.opts.code.source===!0&&(N.source={validateName:f,validateCode:b,scopeValues:l._values}),this.opts.unevaluated){let{props:B,items:F}=I;N.evaluated={props:B instanceof w4.Name?void 0:B,items:F instanceof w4.Name?void 0:F,dynamicProps:B instanceof w4.Name,dynamicItems:F instanceof w4.Name},N.source&&(N.source.evaluated=(0,w4.stringify)(N.evaluated))}return e.validate=N,e}catch(b){throw delete e.validate,delete e.validateName,C&&this.logger.error("Error compiling schema, function code:",C),b}finally{this._compilations.delete(e)}}hH.compileSchema=tWr;function aMc(e,t,r){var n;r=(0,T4.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=uMc.call(this,e,r);if(o===void 0){let l=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:A}=this.opts;l&&(o=new lke({schema:l,schemaId:A,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=cMc.call(this,o)}hH.resolveRef=aMc;function cMc(e){return(0,T4.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:tWr.call(this,e)}function G6i(e){for(let t of this._compilations)if(lMc(t,e))return t}hH.getCompilingSchema=G6i;function lMc(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function uMc(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||RBt.call(this,e,t)}function RBt(e,t){let r=this.opts.uriResolver.parse(t),n=(0,T4._getFullPath)(this.opts.uriResolver,r),a=(0,T4.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===a)return eWr.call(this,r,e);let o=(0,T4.normalizeId)(n),l=this.refs[o]||this.schemas[o];if(typeof l=="string"){let A=RBt.call(this,e,l);return typeof A?.schema!="object"?void 0:eWr.call(this,r,A)}if(typeof l?.schema=="object"){if(l.validate||tWr.call(this,l),o===(0,T4.normalizeId)(t)){let{schema:A}=l,{schemaId:f}=this.opts,I=A[f];return I&&(a=(0,T4.resolveUrl)(this.opts.uriResolver,a,I)),new lke({schema:A,schemaId:f,root:e,baseId:a})}return eWr.call(this,r,l)}}hH.resolveSchema=RBt;var gMc=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function eWr(e,{baseId:t,schema:r,root:n}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let A of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,x6i.unescapeFragment)(A)];if(f===void 0)return;r=f;let I=typeof r=="object"&&r[this.opts.schemaId];!gMc.has(A)&&I&&(t=(0,T4.resolveUrl)(this.opts.uriResolver,t,I))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,x6i.schemaHasRulesButRef)(r,this.RULES)){let A=(0,T4.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=RBt.call(this,n,A)}let{schemaId:l}=this.opts;if(o=o||new lke({schema:r,schemaId:l,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var F6i=H((rKu,AMc)=>{AMc.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var L6i=H((nKu,Z6i)=>{"use strict";var dMc={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Z6i.exports={HEX:dMc}});var Q6i=H((iKu,Y6i)=>{"use strict";var{HEX:pMc}=L6i();function O6i(e){if(H6i(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:IMc(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function rWr(e,t=!1){let r="",n=!0;for(let a of e){if(pMc[a]===void 0)return;a!=="0"&&n===!0&&(n=!1),n||(r+=a)}return t&&r.length===0&&(r="0"),r}function fMc(e){let t=0,r={error:!1,address:"",zone:""},n=[],a=[],o=!1,l=!1,A=!1;function f(){if(a.length){if(o===!1){let I=rWr(a);if(I!==void 0)n.push(I);else return r.error=!0,!1}a.length=0}return!0}for(let I=0;I7){r.error=!0;break}I-1>=0&&e[I-1]===":"&&(l=!0);continue}else if(C==="%"){if(!f())break;o=!0}else{a.push(C);continue}}return a.length&&(o?r.zone=a.join(""):A?n.push(a.join("")):n.push(rWr(a))),r.address=n.join(""),r}function M6i(e,t={}){if(H6i(e,":")<2)return{host:e,isIPV6:!1};let r=fMc(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,a=r.address;return r.zone&&(n+="%"+r.zone,a+="%25"+r.zone),{host:n,escapedHost:a,isIPV6:!0}}}function IMc(e,t){let r="",n=!0,a=e.length;for(let o=0;o{"use strict";var yMc=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,bMc=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function X6i(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function J6i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function U6i(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function EMc(e){return e.secure=X6i(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function SMc(e){if((e.port===(X6i(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function vMc(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(bMc);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${n}:${t.nid||e.nid}`,o=nWr[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function BMc(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),a=`${r}:${t.nid||n}`,o=nWr[a];o&&(e=o.serialize(e,t));let l=e,A=e.nss;return l.path=`${n||t.nid}:${A}`,t.skipEscape=!0,l}function wMc(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!yMc.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function TMc(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var K6i={scheme:"http",domainHost:!0,parse:J6i,serialize:U6i},RMc={scheme:"https",domainHost:K6i.domainHost,parse:J6i,serialize:U6i},DBt={scheme:"ws",domainHost:!0,parse:EMc,serialize:SMc},NMc={scheme:"wss",domainHost:DBt.domainHost,parse:DBt.parse,serialize:DBt.serialize},DMc={scheme:"urn",parse:vMc,serialize:BMc,skipNormalize:!0},kMc={scheme:"urn:uuid",parse:wMc,serialize:TMc,skipNormalize:!0},nWr={http:K6i,https:RMc,ws:DBt,wss:NMc,urn:DMc,"urn:uuid":kMc};j6i.exports=nWr});var $6i=H((oKu,xBt)=>{"use strict";var{normalizeIPv6:xMc,normalizeIPv4:GMc,removeDotSegments:_8e,recomposeAuthority:FMc,normalizeComponentEncoding:kBt}=Q6i(),iWr=z6i();function ZMc(e,t){return typeof e=="string"?e=Wj(ste(e,t),t):typeof e=="object"&&(e=ste(Wj(e,t),t)),e}function LMc(e,t,r){let n=Object.assign({scheme:"null"},r),a=q6i(ste(e,n),ste(t,n),n,!0);return Wj(a,{...n,skipEscape:!0})}function q6i(e,t,r,n){let a={};return n||(e=ste(Wj(e,r),r),t=ste(Wj(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=_8e(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=_8e(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=_8e(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=_8e(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function VMc(e,t,r){return typeof e=="string"?(e=unescape(e),e=Wj(kBt(ste(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Wj(kBt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Wj(kBt(ste(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Wj(kBt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Wj(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),a=[],o=iWr[(n.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let l=FMc(r,n);if(l!==void 0&&(n.reference!=="suffix"&&a.push("//"),a.push(l),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let A=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(A=_8e(A)),l===void 0&&(A=A.replace(/^\/\//u,"/%2F")),a.push(A)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var PMc=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function WMc(e){let t=0;for(let r=0,n=e.length;r126||PMc[t])return!0;return!1}var OMc=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ste(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let l=e.match(OMc);if(l){if(n.scheme=l[1],n.userinfo=l[3],n.host=l[4],n.port=parseInt(l[5],10),n.path=l[6]||"",n.query=l[7],n.fragment=l[8],isNaN(n.port)&&(n.port=l[5]),n.host){let f=GMc(n.host);if(f.isIPV4===!1){let I=xMc(f.host,{isIPV4:!1});n.host=I.host.toLowerCase(),o=I.isIPV6}else n.host=f.host,o=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let A=iWr[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!A||!A.unicodeSupport)&&n.host&&(r.domainHost||A&&A.domainHost)&&o===!1&&WMc(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(f){n.error=n.error||"Host's domain name can not be converted to ASCII: "+f}(!A||A&&!A.skipNormalize)&&(a&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),a&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),A&&A.parse&&A.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var sWr={SCHEMES:iWr,normalize:ZMc,resolve:LMc,resolveComponents:q6i,equal:VMc,serialize:Wj,parse:ste};xBt.exports=sWr;xBt.exports.default=sWr;xBt.exports.fastUri=sWr});var t7i=H(oWr=>{"use strict";Object.defineProperty(oWr,"__esModule",{value:!0});var e7i=$6i();e7i.code='require("ajv/dist/runtime/uri").default';oWr.default=e7i});var l7i=H(ex=>{"use strict";Object.defineProperty(ex,"__esModule",{value:!0});ex.CodeGen=ex.Name=ex.nil=ex.stringify=ex.str=ex._=ex.KeywordCxt=void 0;var MMc=m8e();Object.defineProperty(ex,"KeywordCxt",{enumerable:!0,get:function(){return MMc.KeywordCxt}});var uke=Hh();Object.defineProperty(ex,"_",{enumerable:!0,get:function(){return uke._}});Object.defineProperty(ex,"str",{enumerable:!0,get:function(){return uke.str}});Object.defineProperty(ex,"stringify",{enumerable:!0,get:function(){return uke.stringify}});Object.defineProperty(ex,"nil",{enumerable:!0,get:function(){return uke.nil}});Object.defineProperty(ex,"Name",{enumerable:!0,get:function(){return uke.Name}});Object.defineProperty(ex,"CodeGen",{enumerable:!0,get:function(){return uke.CodeGen}});var HMc=TBt(),o7i=C8e(),YMc=ZPr(),y8e=NBt(),QMc=Hh(),b8e=f8e(),GBt=p8e(),cWr=B_(),r7i=F6i(),XMc=t7i(),a7i=(e,t)=>new RegExp(e,t);a7i.code="new RegExp";var JMc=["removeAdditional","useDefaults","coerceTypes"],UMc=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),KMc={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},jMc={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},n7i=200;function zMc(e){var t,r,n,a,o,l,A,f,I,C,b,E,N,B,F,Q,X,ae,ne,ce,fe,ue,de,be,Se;let De=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,et=k===!0||k===void 0?1:k||0,ct=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:a7i,Me=(a=e.uriResolver)!==null&&a!==void 0?a:XMc.default;return{strictSchema:(l=(o=e.strictSchema)!==null&&o!==void 0?o:De)!==null&&l!==void 0?l:!0,strictNumbers:(f=(A=e.strictNumbers)!==null&&A!==void 0?A:De)!==null&&f!==void 0?f:!0,strictTypes:(C=(I=e.strictTypes)!==null&&I!==void 0?I:De)!==null&&C!==void 0?C:"log",strictTuples:(E=(b=e.strictTuples)!==null&&b!==void 0?b:De)!==null&&E!==void 0?E:"log",strictRequired:(B=(N=e.strictRequired)!==null&&N!==void 0?N:De)!==null&&B!==void 0?B:!1,code:e.code?{...e.code,optimize:et,regExp:ct}:{optimize:et,regExp:ct},loopRequired:(F=e.loopRequired)!==null&&F!==void 0?F:n7i,loopEnum:(Q=e.loopEnum)!==null&&Q!==void 0?Q:n7i,meta:(X=e.meta)!==null&&X!==void 0?X:!0,messages:(ae=e.messages)!==null&&ae!==void 0?ae:!0,inlineRefs:(ne=e.inlineRefs)!==null&&ne!==void 0?ne:!0,schemaId:(ce=e.schemaId)!==null&&ce!==void 0?ce:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(ue=e.validateSchema)!==null&&ue!==void 0?ue:!0,validateFormats:(de=e.validateFormats)!==null&&de!==void 0?de:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Se=e.int32range)!==null&&Se!==void 0?Se:!0,uriResolver:Me}}var E8e=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...zMc(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new QMc.ValueScope({scope:{},prefixes:UMc,es5:r,lines:n}),this.logger=nHc(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,YMc.getRules)(),i7i.call(this,KMc,t,"NOT SUPPORTED"),i7i.call(this,jMc,t,"DEPRECATED","warn"),this._metaOpts=tHc.call(this),t.formats&&$Mc.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&eHc.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),qMc.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,a=r7i;n==="id"&&(a={...r7i},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let a=n(r);return"$async"in n||(this.errors=n.errors),a}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return a.call(this,t,r);async function a(C,b){await o.call(this,C.$schema);let E=this._addSchema(C,b);return E.validate||l.call(this,E)}async function o(C){C&&!this.getSchema(C)&&await a.call(this,{$ref:C},!0)}async function l(C){try{return this._compileSchemaEnv(C)}catch(b){if(!(b instanceof o7i.default))throw b;return A.call(this,b),await f.call(this,b.missingSchema),l.call(this,C)}}function A({missingSchema:C,missingRef:b}){if(this.refs[C])throw new Error(`AnySchema ${C} is loaded but ${b} cannot be resolved`)}async function f(C){let b=await I.call(this,C);this.refs[C]||await o.call(this,b.$schema),this.refs[C]||this.addSchema(b,C,r)}async function I(C){let b=this._loading[C];if(b)return b;try{return await(this._loading[C]=n(C))}finally{delete this._loading[C]}}}addSchema(t,r,n,a=this.opts.validateSchema){if(Array.isArray(t)){for(let l of t)this.addSchema(l,void 0,n,a);return this}let o;if(typeof t=="object"){let{schemaId:l}=this.opts;if(o=t[l],o!==void 0&&typeof o!="string")throw new Error(`schema ${l} must be string`)}return r=(0,b8e.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,a,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(n,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=s7i.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,a=new y8e.SchemaEnv({schema:{},schemaId:n});if(r=y8e.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=s7i.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,b8e.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(sHc.call(this,n,r),!r)return(0,cWr.eachItem)(n,o=>aWr.call(this,o)),this;aHc.call(this,r);let a={...r,type:(0,GBt.getJSONTypes)(r.type),schemaType:(0,GBt.getJSONTypes)(r.schemaType)};return(0,cWr.eachItem)(n,a.type.length===0?o=>aWr.call(this,o,a):o=>a.type.forEach(l=>aWr.call(this,o,a,l))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let a=n.rules.findIndex(o=>o.keyword===t);a>=0&&n.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${n}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),l=t;for(let A of o)l=l[A];for(let A in n){let f=n[A];if(typeof f!="object")continue;let{$data:I}=f.definition,C=l[A];I&&C&&(l[A]=c7i(C))}}return t}_removeAllSchemas(t,r){for(let n in t){let a=t[n];(!r||r.test(n))&&(typeof a=="string"?delete t[n]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[n]))}}_addSchema(t,r,n,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let l,{schemaId:A}=this.opts;if(typeof t=="object")l=t[A];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;n=(0,b8e.normalizeId)(l||n);let I=b8e.getSchemaRefs.call(this,t,n);return f=new y8e.SchemaEnv({schema:t,schemaId:A,meta:r,baseId:n,localRefs:I}),this._cache.set(f.schema,f),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):y8e.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{y8e.compileSchema.call(this,t)}finally{this.opts=r}}};E8e.ValidationError=HMc.default;E8e.MissingRefError=o7i.default;ex.default=E8e;function i7i(e,t,r,n="error"){for(let a in e){let o=a;o in t&&this.logger[n](`${r}: option ${a}. ${e[o]}`)}}function s7i(e){return e=(0,b8e.normalizeId)(e),this.schemas[e]||this.refs[e]}function qMc(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function $Mc(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function eHc(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function tHc(){let e={...this.opts};for(let t of JMc)delete e[t];return e}var rHc={log(){},warn(){},error(){}};function nHc(e){if(e===!1)return rHc;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var iHc=/^[a-z_$][a-z0-9_$:-]*$/i;function sHc(e,t){let{RULES:r}=this;if((0,cWr.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!iHc.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function aWr(e,t,r){var n;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,l=a?o.post:o.rules.find(({type:f})=>f===r);if(l||(l={type:r,rules:[]},o.rules.push(l)),o.keywords[e]=!0,!t)return;let A={keyword:e,definition:{...t,type:(0,GBt.getJSONTypes)(t.type),schemaType:(0,GBt.getJSONTypes)(t.schemaType)}};t.before?oHc.call(this,l,A,t.before):l.rules.push(A),o.all[e]=A,(n=t.implements)===null||n===void 0||n.forEach(f=>this.addKeyword(f))}function oHc(e,t,r){let n=e.rules.findIndex(a=>a.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function aHc(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=c7i(t)),e.validateSchema=this.compile(t,!0))}var cHc={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function c7i(e){return{anyOf:[e,cHc]}}});var u7i=H(lWr=>{"use strict";Object.defineProperty(lWr,"__esModule",{value:!0});var lHc={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};lWr.default=lHc});var p7i=H(c_e=>{"use strict";Object.defineProperty(c_e,"__esModule",{value:!0});c_e.callRef=c_e.getValidate=void 0;var uHc=C8e(),g7i=IH(),xV=Hh(),gke=nte(),A7i=NBt(),FBt=B_(),gHc={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:a,schemaEnv:o,validateName:l,opts:A,self:f}=n,{root:I}=o;if((r==="#"||r==="#/")&&a===I.baseId)return b();let C=A7i.resolveRef.call(f,I,a,r);if(C===void 0)throw new uHc.default(n.opts.uriResolver,a,r);if(C instanceof A7i.SchemaEnv)return E(C);return N(C);function b(){if(o===I)return ZBt(e,l,o,o.$async);let B=t.scopeValue("root",{ref:I});return ZBt(e,(0,xV._)`${B}.validate`,I,I.$async)}function E(B){let F=d7i(e,B);ZBt(e,F,B,B.$async)}function N(B){let F=t.scopeValue("schema",A.code.source===!0?{ref:B,code:(0,xV.stringify)(B)}:{ref:B}),Q=t.name("valid"),X=e.subschema({schema:B,dataTypes:[],schemaPath:xV.nil,topSchemaRef:F,errSchemaPath:r},Q);e.mergeEvaluated(X),e.ok(Q)}}};function d7i(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,xV._)`${r.scopeValue("wrapper",{ref:t})}.validate`}c_e.getValidate=d7i;function ZBt(e,t,r,n){let{gen:a,it:o}=e,{allErrors:l,schemaEnv:A,opts:f}=o,I=f.passContext?gke.default.this:xV.nil;n?C():b();function C(){if(!A.$async)throw new Error("async schema referenced by sync schema");let B=a.let("valid");a.try(()=>{a.code((0,xV._)`await ${(0,g7i.callValidateCode)(e,t,I)}`),N(t),l||a.assign(B,!0)},F=>{a.if((0,xV._)`!(${F} instanceof ${o.ValidationError})`,()=>a.throw(F)),E(F),l||a.assign(B,!1)}),e.ok(B)}function b(){e.result((0,g7i.callValidateCode)(e,t,I),()=>N(t),()=>E(t))}function E(B){let F=(0,xV._)`${B}.errors`;a.assign(gke.default.vErrors,(0,xV._)`${gke.default.vErrors} === null ? ${F} : ${gke.default.vErrors}.concat(${F})`),a.assign(gke.default.errors,(0,xV._)`${gke.default.vErrors}.length`)}function N(B){var F;if(!o.opts.unevaluated)return;let Q=(F=r?.validate)===null||F===void 0?void 0:F.evaluated;if(o.props!==!0)if(Q&&!Q.dynamicProps)Q.props!==void 0&&(o.props=FBt.mergeEvaluated.props(a,Q.props,o.props));else{let X=a.var("props",(0,xV._)`${B}.evaluated.props`);o.props=FBt.mergeEvaluated.props(a,X,o.props,xV.Name)}if(o.items!==!0)if(Q&&!Q.dynamicItems)Q.items!==void 0&&(o.items=FBt.mergeEvaluated.items(a,Q.items,o.items));else{let X=a.var("items",(0,xV._)`${B}.evaluated.items`);o.items=FBt.mergeEvaluated.items(a,X,o.items,xV.Name)}}}c_e.callRef=ZBt;c_e.default=gHc});var f7i=H(uWr=>{"use strict";Object.defineProperty(uWr,"__esModule",{value:!0});var AHc=u7i(),dHc=p7i(),pHc=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",AHc.default,dHc.default];uWr.default=pHc});var I7i=H(gWr=>{"use strict";Object.defineProperty(gWr,"__esModule",{value:!0});var LBt=Hh(),dle=LBt.operators,VBt={maximum:{okStr:"<=",ok:dle.LTE,fail:dle.GT},minimum:{okStr:">=",ok:dle.GTE,fail:dle.LT},exclusiveMaximum:{okStr:"<",ok:dle.LT,fail:dle.GTE},exclusiveMinimum:{okStr:">",ok:dle.GT,fail:dle.LTE}},fHc={message:({keyword:e,schemaCode:t})=>(0,LBt.str)`must be ${VBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,LBt._)`{comparison: ${VBt[e].okStr}, limit: ${t}}`},IHc={keyword:Object.keys(VBt),type:"number",schemaType:"number",$data:!0,error:fHc,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,LBt._)`${r} ${VBt[t].fail} ${n} || isNaN(${r})`)}};gWr.default=IHc});var h7i=H(AWr=>{"use strict";Object.defineProperty(AWr,"__esModule",{value:!0});var S8e=Hh(),hHc={message:({schemaCode:e})=>(0,S8e.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,S8e._)`{multipleOf: ${e}}`},mHc={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:hHc,code(e){let{gen:t,data:r,schemaCode:n,it:a}=e,o=a.opts.multipleOfPrecision,l=t.let("res"),A=o?(0,S8e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${o}`:(0,S8e._)`${l} !== parseInt(${l})`;e.fail$data((0,S8e._)`(${n} === 0 || (${l} = ${r}/${n}, ${A}))`)}};AWr.default=mHc});var C7i=H(dWr=>{"use strict";Object.defineProperty(dWr,"__esModule",{value:!0});function m7i(e){let t=e.length,r=0,n=0,a;for(;n=55296&&a<=56319&&n{"use strict";Object.defineProperty(pWr,"__esModule",{value:!0});var l_e=Hh(),CHc=B_(),_Hc=C7i(),yHc={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,l_e.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,l_e._)`{limit: ${e}}`},bHc={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:yHc,code(e){let{keyword:t,data:r,schemaCode:n,it:a}=e,o=t==="maxLength"?l_e.operators.GT:l_e.operators.LT,l=a.opts.unicode===!1?(0,l_e._)`${r}.length`:(0,l_e._)`${(0,CHc.useFunc)(e.gen,_Hc.default)}(${r})`;e.fail$data((0,l_e._)`${l} ${o} ${n}`)}};pWr.default=bHc});var y7i=H(fWr=>{"use strict";Object.defineProperty(fWr,"__esModule",{value:!0});var EHc=IH(),PBt=Hh(),SHc={message:({schemaCode:e})=>(0,PBt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,PBt._)`{pattern: ${e}}`},vHc={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:SHc,code(e){let{data:t,$data:r,schema:n,schemaCode:a,it:o}=e,l=o.opts.unicodeRegExp?"u":"",A=r?(0,PBt._)`(new RegExp(${a}, ${l}))`:(0,EHc.usePattern)(e,n);e.fail$data((0,PBt._)`!${A}.test(${t})`)}};fWr.default=vHc});var b7i=H(IWr=>{"use strict";Object.defineProperty(IWr,"__esModule",{value:!0});var v8e=Hh(),BHc={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,v8e.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,v8e._)`{limit: ${e}}`},wHc={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:BHc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxProperties"?v8e.operators.GT:v8e.operators.LT;e.fail$data((0,v8e._)`Object.keys(${r}).length ${a} ${n}`)}};IWr.default=wHc});var E7i=H(hWr=>{"use strict";Object.defineProperty(hWr,"__esModule",{value:!0});var B8e=IH(),w8e=Hh(),THc=B_(),RHc={message:({params:{missingProperty:e}})=>(0,w8e.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,w8e._)`{missingProperty: ${e}}`},NHc={keyword:"required",type:"object",schemaType:"array",$data:!0,error:RHc,code(e){let{gen:t,schema:r,schemaCode:n,data:a,$data:o,it:l}=e,{opts:A}=l;if(!o&&r.length===0)return;let f=r.length>=A.loopRequired;if(l.allErrors?I():C(),A.strictRequired){let N=e.parentSchema.properties,{definedProperties:B}=e.it;for(let F of r)if(N?.[F]===void 0&&!B.has(F)){let Q=l.schemaEnv.baseId+l.errSchemaPath,X=`required property "${F}" is not defined at "${Q}" (strictRequired)`;(0,THc.checkStrictMode)(l,X,l.opts.strictRequired)}}function I(){if(f||o)e.block$data(w8e.nil,b);else for(let N of r)(0,B8e.checkReportMissingProp)(e,N)}function C(){let N=t.let("missing");if(f||o){let B=t.let("valid",!0);e.block$data(B,()=>E(N,B)),e.ok(B)}else t.if((0,B8e.checkMissingProp)(e,r,N)),(0,B8e.reportMissingProp)(e,N),t.else()}function b(){t.forOf("prop",n,N=>{e.setParams({missingProperty:N}),t.if((0,B8e.noPropertyInData)(t,a,N,A.ownProperties),()=>e.error())})}function E(N,B){e.setParams({missingProperty:N}),t.forOf(N,n,()=>{t.assign(B,(0,B8e.propertyInData)(t,a,N,A.ownProperties)),t.if((0,w8e.not)(B),()=>{e.error(),t.break()})},w8e.nil)}}};hWr.default=NHc});var S7i=H(mWr=>{"use strict";Object.defineProperty(mWr,"__esModule",{value:!0});var T8e=Hh(),DHc={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,T8e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,T8e._)`{limit: ${e}}`},kHc={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:DHc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxItems"?T8e.operators.GT:T8e.operators.LT;e.fail$data((0,T8e._)`${r}.length ${a} ${n}`)}};mWr.default=kHc});var WBt=H(CWr=>{"use strict";Object.defineProperty(CWr,"__esModule",{value:!0});var v7i=YPr();v7i.code='require("ajv/dist/runtime/equal").default';CWr.default=v7i});var B7i=H(yWr=>{"use strict";Object.defineProperty(yWr,"__esModule",{value:!0});var _Wr=p8e(),tx=Hh(),xHc=B_(),GHc=WBt(),FHc={message:({params:{i:e,j:t}})=>(0,tx.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,tx._)`{i: ${e}, j: ${t}}`},ZHc={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:FHc,code(e){let{gen:t,data:r,$data:n,schema:a,parentSchema:o,schemaCode:l,it:A}=e;if(!n&&!a)return;let f=t.let("valid"),I=o.items?(0,_Wr.getSchemaTypes)(o.items):[];e.block$data(f,C,(0,tx._)`${l} === false`),e.ok(f);function C(){let B=t.let("i",(0,tx._)`${r}.length`),F=t.let("j");e.setParams({i:B,j:F}),t.assign(f,!0),t.if((0,tx._)`${B} > 1`,()=>(b()?E:N)(B,F))}function b(){return I.length>0&&!I.some(B=>B==="object"||B==="array")}function E(B,F){let Q=t.name("item"),X=(0,_Wr.checkDataTypes)(I,Q,A.opts.strictNumbers,_Wr.DataType.Wrong),ae=t.const("indices",(0,tx._)`{}`);t.for((0,tx._)`;${B}--;`,()=>{t.let(Q,(0,tx._)`${r}[${B}]`),t.if(X,(0,tx._)`continue`),I.length>1&&t.if((0,tx._)`typeof ${Q} == "string"`,(0,tx._)`${Q} += "_"`),t.if((0,tx._)`typeof ${ae}[${Q}] == "number"`,()=>{t.assign(F,(0,tx._)`${ae}[${Q}]`),e.error(),t.assign(f,!1).break()}).code((0,tx._)`${ae}[${Q}] = ${B}`)})}function N(B,F){let Q=(0,xHc.useFunc)(t,GHc.default),X=t.name("outer");t.label(X).for((0,tx._)`;${B}--;`,()=>t.for((0,tx._)`${F} = ${B}; ${F}--;`,()=>t.if((0,tx._)`${Q}(${r}[${B}], ${r}[${F}])`,()=>{e.error(),t.assign(f,!1).break(X)})))}}};yWr.default=ZHc});var w7i=H(EWr=>{"use strict";Object.defineProperty(EWr,"__esModule",{value:!0});var bWr=Hh(),LHc=B_(),VHc=WBt(),PHc={message:"must be equal to constant",params:({schemaCode:e})=>(0,bWr._)`{allowedValue: ${e}}`},WHc={keyword:"const",$data:!0,error:PHc,code(e){let{gen:t,data:r,$data:n,schemaCode:a,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,bWr._)`!${(0,LHc.useFunc)(t,VHc.default)}(${r}, ${a})`):e.fail((0,bWr._)`${o} !== ${r}`)}};EWr.default=WHc});var T7i=H(SWr=>{"use strict";Object.defineProperty(SWr,"__esModule",{value:!0});var R8e=Hh(),OHc=B_(),MHc=WBt(),HHc={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,R8e._)`{allowedValues: ${e}}`},YHc={keyword:"enum",schemaType:"array",$data:!0,error:HHc,code(e){let{gen:t,data:r,$data:n,schema:a,schemaCode:o,it:l}=e;if(!n&&a.length===0)throw new Error("enum must have non-empty array");let A=a.length>=l.opts.loopEnum,f,I=()=>f??(f=(0,OHc.useFunc)(t,MHc.default)),C;if(A||n)C=t.let("valid"),e.block$data(C,b);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let N=t.const("vSchema",o);C=(0,R8e.or)(...a.map((B,F)=>E(N,F)))}e.pass(C);function b(){t.assign(C,!1),t.forOf("v",o,N=>t.if((0,R8e._)`${I()}(${r}, ${N})`,()=>t.assign(C,!0).break()))}function E(N,B){let F=a[B];return typeof F=="object"&&F!==null?(0,R8e._)`${I()}(${r}, ${N}[${B}])`:(0,R8e._)`${r} === ${F}`}}};SWr.default=YHc});var R7i=H(vWr=>{"use strict";Object.defineProperty(vWr,"__esModule",{value:!0});var QHc=I7i(),XHc=h7i(),JHc=_7i(),UHc=y7i(),KHc=b7i(),jHc=E7i(),zHc=S7i(),qHc=B7i(),$Hc=w7i(),eYc=T7i(),tYc=[QHc.default,XHc.default,JHc.default,UHc.default,KHc.default,jHc.default,zHc.default,qHc.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},$Hc.default,eYc.default];vWr.default=tYc});var wWr=H(N8e=>{"use strict";Object.defineProperty(N8e,"__esModule",{value:!0});N8e.validateAdditionalItems=void 0;var u_e=Hh(),BWr=B_(),rYc={message:({params:{len:e}})=>(0,u_e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,u_e._)`{limit: ${e}}`},nYc={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:rYc,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,BWr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}N7i(e,n)}};function N7i(e,t){let{gen:r,schema:n,data:a,keyword:o,it:l}=e;l.items=!0;let A=r.const("len",(0,u_e._)`${a}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,u_e._)`${A} <= ${t.length}`);else if(typeof n=="object"&&!(0,BWr.alwaysValidSchema)(l,n)){let I=r.var("valid",(0,u_e._)`${A} <= ${t.length}`);r.if((0,u_e.not)(I),()=>f(I)),e.ok(I)}function f(I){r.forRange("i",t.length,A,C=>{e.subschema({keyword:o,dataProp:C,dataPropType:BWr.Type.Num},I),l.allErrors||r.if((0,u_e.not)(I),()=>r.break())})}}N8e.validateAdditionalItems=N7i;N8e.default=nYc});var TWr=H(D8e=>{"use strict";Object.defineProperty(D8e,"__esModule",{value:!0});D8e.validateTuple=void 0;var D7i=Hh(),OBt=B_(),iYc=IH(),sYc={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return k7i(e,"additionalItems",t);r.items=!0,!(0,OBt.alwaysValidSchema)(r,t)&&e.ok((0,iYc.validateArray)(e))}};function k7i(e,t,r=e.schema){let{gen:n,parentSchema:a,data:o,keyword:l,it:A}=e;C(a),A.opts.unevaluated&&r.length&&A.items!==!0&&(A.items=OBt.mergeEvaluated.items(n,r.length,A.items));let f=n.name("valid"),I=n.const("len",(0,D7i._)`${o}.length`);r.forEach((b,E)=>{(0,OBt.alwaysValidSchema)(A,b)||(n.if((0,D7i._)`${I} > ${E}`,()=>e.subschema({keyword:l,schemaProp:E,dataProp:E},f)),e.ok(f))});function C(b){let{opts:E,errSchemaPath:N}=A,B=r.length,F=B===b.minItems&&(B===b.maxItems||b[t]===!1);if(E.strictTuples&&!F){let Q=`"${l}" is ${B}-tuple, but minItems or maxItems/${t} are not specified or different at path "${N}"`;(0,OBt.checkStrictMode)(A,Q,E.strictTuples)}}}D8e.validateTuple=k7i;D8e.default=sYc});var x7i=H(RWr=>{"use strict";Object.defineProperty(RWr,"__esModule",{value:!0});var oYc=TWr(),aYc={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,oYc.validateTuple)(e,"items")};RWr.default=aYc});var F7i=H(NWr=>{"use strict";Object.defineProperty(NWr,"__esModule",{value:!0});var G7i=Hh(),cYc=B_(),lYc=IH(),uYc=wWr(),gYc={message:({params:{len:e}})=>(0,G7i.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,G7i._)`{limit: ${e}}`},AYc={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:gYc,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:a}=r;n.items=!0,!(0,cYc.alwaysValidSchema)(n,t)&&(a?(0,uYc.validateAdditionalItems)(e,a):e.ok((0,lYc.validateArray)(e)))}};NWr.default=AYc});var Z7i=H(DWr=>{"use strict";Object.defineProperty(DWr,"__esModule",{value:!0});var mH=Hh(),MBt=B_(),dYc={message:({params:{min:e,max:t}})=>t===void 0?(0,mH.str)`must contain at least ${e} valid item(s)`:(0,mH.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,mH._)`{minContains: ${e}}`:(0,mH._)`{minContains: ${e}, maxContains: ${t}}`},pYc={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:dYc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e,l,A,{minContains:f,maxContains:I}=n;o.opts.next?(l=f===void 0?1:f,A=I):l=1;let C=t.const("len",(0,mH._)`${a}.length`);if(e.setParams({min:l,max:A}),A===void 0&&l===0){(0,MBt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(A!==void 0&&l>A){(0,MBt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,MBt.alwaysValidSchema)(o,r)){let F=(0,mH._)`${C} >= ${l}`;A!==void 0&&(F=(0,mH._)`${F} && ${C} <= ${A}`),e.pass(F);return}o.items=!0;let b=t.name("valid");A===void 0&&l===1?N(b,()=>t.if(b,()=>t.break())):l===0?(t.let(b,!0),A!==void 0&&t.if((0,mH._)`${a}.length > 0`,E)):(t.let(b,!1),E()),e.result(b,()=>e.reset());function E(){let F=t.name("_valid"),Q=t.let("count",0);N(F,()=>t.if(F,()=>B(Q)))}function N(F,Q){t.forRange("i",0,C,X=>{e.subschema({keyword:"contains",dataProp:X,dataPropType:MBt.Type.Num,compositeRule:!0},F),Q()})}function B(F){t.code((0,mH._)`${F}++`),A===void 0?t.if((0,mH._)`${F} >= ${l}`,()=>t.assign(b,!0).break()):(t.if((0,mH._)`${F} > ${A}`,()=>t.assign(b,!1).break()),l===1?t.assign(b,!0):t.if((0,mH._)`${F} >= ${l}`,()=>t.assign(b,!0)))}}};DWr.default=pYc});var P7i=H(Oj=>{"use strict";Object.defineProperty(Oj,"__esModule",{value:!0});Oj.validateSchemaDeps=Oj.validatePropertyDeps=Oj.error=void 0;var kWr=Hh(),fYc=B_(),k8e=IH();Oj.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,kWr.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,kWr._)`{property: ${e}, missingProperty: ${n}, depsCount: ${t}, - deps: ${r}}`};var SHc={keyword:"dependencies",type:"object",schemaType:"object",error:Oj.error,code(e){let[t,r]=vHc(e);y7i(e,t),b7i(e,r)}};function vHc({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let a=Array.isArray(e[n])?t:r;a[n]=e[n]}return[t,r]}function y7i(e,t=e.schema){let{gen:r,data:n,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let l in t){let A=t[l];if(A.length===0)continue;let f=(0,N8e.propertyInData)(r,n,l,a.opts.ownProperties);e.setParams({property:l,depsCount:A.length,deps:A.join(", ")}),a.allErrors?r.if(f,()=>{for(let I of A)(0,N8e.checkReportMissingProp)(e,I)}):(r.if((0,vWr._)`${f} && (${(0,N8e.checkMissingProp)(e,A,o)})`),(0,N8e.reportMissingProp)(e,o),r.else())}}Oj.validatePropertyDeps=y7i;function b7i(e,t=e.schema){let{gen:r,data:n,keyword:a,it:o}=e,l=r.name("valid");for(let A in t)(0,EHc.alwaysValidSchema)(o,t[A])||(r.if((0,N8e.propertyInData)(r,n,A,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:A},l);e.mergeValidEvaluated(f,l)},()=>r.var(l,!0)),e.ok(l))}Oj.validateSchemaDeps=b7i;Oj.default=SHc});var v7i=H(BWr=>{"use strict";Object.defineProperty(BWr,"__esModule",{value:!0});var S7i=Hh(),BHc=B_(),wHc={message:"property name must be valid",params:({params:e})=>(0,S7i._)`{propertyName: ${e.propertyName}}`},THc={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:wHc,code(e){let{gen:t,schema:r,data:n,it:a}=e;if((0,BHc.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",n,l=>{e.setParams({propertyName:l}),e.subschema({keyword:"propertyNames",data:l,dataTypes:["string"],propertyName:l,compositeRule:!0},o),t.if((0,S7i.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};BWr.default=THc});var TWr=H(wWr=>{"use strict";Object.defineProperty(wWr,"__esModule",{value:!0});var PBt=IH(),R4=Hh(),RHc=rte(),WBt=B_(),NHc={message:"must NOT have additional properties",params:({params:e})=>(0,R4._)`{additionalProperty: ${e.additionalProperty}}`},DHc={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:NHc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,errsCount:o,it:l}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:A,opts:f}=l;if(l.props=!0,f.removeAdditional!=="all"&&(0,WBt.alwaysValidSchema)(l,r))return;let I=(0,PBt.allSchemaProperties)(n.properties),C=(0,PBt.allSchemaProperties)(n.patternProperties);b(),e.ok((0,R4._)`${o} === ${RHc.default.errors}`);function b(){t.forIn("key",a,Q=>{!I.length&&!C.length?B(Q):t.if(E(Q),()=>B(Q))})}function E(Q){let X;if(I.length>8){let ae=(0,WBt.schemaRefOrVal)(l,n.properties,"properties");X=(0,PBt.isOwnProperty)(t,ae,Q)}else I.length?X=(0,R4.or)(...I.map(ae=>(0,R4._)`${Q} === ${ae}`)):X=R4.nil;return C.length&&(X=(0,R4.or)(X,...C.map(ae=>(0,R4._)`${(0,PBt.usePattern)(e,ae)}.test(${Q})`))),(0,R4.not)(X)}function N(Q){t.code((0,R4._)`delete ${a}[${Q}]`)}function B(Q){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){N(Q);return}if(r===!1){e.setParams({additionalProperty:Q}),e.error(),A||t.break();return}if(typeof r=="object"&&!(0,WBt.alwaysValidSchema)(l,r)){let X=t.name("valid");f.removeAdditional==="failing"?(F(Q,X,!1),t.if((0,R4.not)(X),()=>{e.reset(),N(Q)})):(F(Q,X),A||t.if((0,R4.not)(X),()=>t.break()))}}function F(Q,X,ae){let ne={keyword:"additionalProperties",dataProp:Q,dataPropType:WBt.Type.Str};ae===!1&&Object.assign(ne,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ne,X)}}};wWr.default=DHc});var T7i=H(NWr=>{"use strict";Object.defineProperty(NWr,"__esModule",{value:!0});var kHc=I8e(),B7i=IH(),RWr=B_(),w7i=TWr(),xHc={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&w7i.default.code(new kHc.KeywordCxt(o,w7i.default,"additionalProperties"));let l=(0,B7i.allSchemaProperties)(r);for(let b of l)o.definedProperties.add(b);o.opts.unevaluated&&l.length&&o.props!==!0&&(o.props=RWr.mergeEvaluated.props(t,(0,RWr.toHash)(l),o.props));let A=l.filter(b=>!(0,RWr.alwaysValidSchema)(o,r[b]));if(A.length===0)return;let f=t.name("valid");for(let b of A)I(b)?C(b):(t.if((0,B7i.propertyInData)(t,a,b,o.opts.ownProperties)),C(b),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(b),e.ok(f);function I(b){return o.opts.useDefaults&&!o.compositeRule&&r[b].default!==void 0}function C(b){e.subschema({keyword:"properties",schemaProp:b,dataProp:b},f)}}};NWr.default=xHc});var k7i=H(DWr=>{"use strict";Object.defineProperty(DWr,"__esModule",{value:!0});var R7i=IH(),OBt=Hh(),N7i=B_(),D7i=B_(),GHc={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:a,it:o}=e,{opts:l}=o,A=(0,R7i.allSchemaProperties)(r),f=A.filter(F=>(0,N7i.alwaysValidSchema)(o,r[F]));if(A.length===0||f.length===A.length&&(!o.opts.unevaluated||o.props===!0))return;let I=l.strictSchema&&!l.allowMatchingProperties&&a.properties,C=t.name("valid");o.props!==!0&&!(o.props instanceof OBt.Name)&&(o.props=(0,D7i.evaluatedPropsToName)(t,o.props));let{props:b}=o;E();function E(){for(let F of A)I&&N(F),o.allErrors?B(F):(t.var(C,!0),B(F),t.if(C))}function N(F){for(let Q in I)new RegExp(F).test(Q)&&(0,N7i.checkStrictMode)(o,`property ${Q} matches pattern ${F} (use allowMatchingProperties)`)}function B(F){t.forIn("key",n,Q=>{t.if((0,OBt._)`${(0,R7i.usePattern)(e,F)}.test(${Q})`,()=>{let X=f.includes(F);X||e.subschema({keyword:"patternProperties",schemaProp:F,dataProp:Q,dataPropType:D7i.Type.Str},C),o.opts.unevaluated&&b!==!0?t.assign((0,OBt._)`${b}[${Q}]`,!0):!X&&!o.allErrors&&t.if((0,OBt.not)(C),()=>t.break())})})}}};DWr.default=GHc});var x7i=H(kWr=>{"use strict";Object.defineProperty(kWr,"__esModule",{value:!0});var FHc=B_(),ZHc={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,FHc.alwaysValidSchema)(n,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};kWr.default=ZHc});var G7i=H(xWr=>{"use strict";Object.defineProperty(xWr,"__esModule",{value:!0});var LHc=IH(),VHc={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:LHc.validateUnion,error:{message:"must match a schema in anyOf"}};xWr.default=VHc});var F7i=H(GWr=>{"use strict";Object.defineProperty(GWr,"__esModule",{value:!0});var MBt=Hh(),PHc=B_(),WHc={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,MBt._)`{passingSchemas: ${e.passing}}`},OHc={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:WHc,code(e){let{gen:t,schema:r,parentSchema:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&n.discriminator)return;let o=r,l=t.let("valid",!1),A=t.let("passing",null),f=t.name("_valid");e.setParams({passing:A}),t.block(I),e.result(l,()=>e.reset(),()=>e.error(!0));function I(){o.forEach((C,b)=>{let E;(0,PHc.alwaysValidSchema)(a,C)?t.var(f,!0):E=e.subschema({keyword:"oneOf",schemaProp:b,compositeRule:!0},f),b>0&&t.if((0,MBt._)`${f} && ${l}`).assign(l,!1).assign(A,(0,MBt._)`[${A}, ${b}]`).else(),t.if(f,()=>{t.assign(l,!0),t.assign(A,b),E&&e.mergeEvaluated(E,MBt.Name)})})}}};GWr.default=OHc});var Z7i=H(FWr=>{"use strict";Object.defineProperty(FWr,"__esModule",{value:!0});var MHc=B_(),HHc={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,l)=>{if((0,MHc.alwaysValidSchema)(n,o))return;let A=e.subschema({keyword:"allOf",schemaProp:l},a);e.ok(a),e.mergeEvaluated(A)})}};FWr.default=HHc});var P7i=H(ZWr=>{"use strict";Object.defineProperty(ZWr,"__esModule",{value:!0});var HBt=Hh(),V7i=B_(),YHc={message:({params:e})=>(0,HBt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,HBt._)`{failingKeyword: ${e.ifClause}}`},QHc={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:YHc,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,V7i.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let a=L7i(n,"then"),o=L7i(n,"else");if(!a&&!o)return;let l=t.let("valid",!0),A=t.name("_valid");if(f(),e.reset(),a&&o){let C=t.let("ifClause");e.setParams({ifClause:C}),t.if(A,I("then",C),I("else",C))}else a?t.if(A,I("then")):t.if((0,HBt.not)(A),I("else"));e.pass(l,()=>e.error(!0));function f(){let C=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},A);e.mergeEvaluated(C)}function I(C,b){return()=>{let E=e.subschema({keyword:C},A);t.assign(l,A),e.mergeValidEvaluated(E,l),b?t.assign(b,(0,HBt._)`${C}`):e.setParams({ifClause:C})}}}};function L7i(e,t){let r=e.schema[t];return r!==void 0&&!(0,V7i.alwaysValidSchema)(e,r)}ZWr.default=QHc});var W7i=H(LWr=>{"use strict";Object.defineProperty(LWr,"__esModule",{value:!0});var XHc=B_(),JHc={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,XHc.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};LWr.default=JHc});var O7i=H(VWr=>{"use strict";Object.defineProperty(VWr,"__esModule",{value:!0});var UHc=_Wr(),KHc=h7i(),jHc=yWr(),zHc=C7i(),qHc=_7i(),$Hc=E7i(),eYc=v7i(),tYc=TWr(),rYc=T7i(),nYc=k7i(),iYc=x7i(),sYc=G7i(),oYc=F7i(),aYc=Z7i(),cYc=P7i(),lYc=W7i();function uYc(e=!1){let t=[iYc.default,sYc.default,oYc.default,aYc.default,cYc.default,lYc.default,eYc.default,tYc.default,$Hc.default,rYc.default,nYc.default];return e?t.push(KHc.default,zHc.default):t.push(UHc.default,jHc.default),t.push(qHc.default),t}VWr.default=uYc});var M7i=H(PWr=>{"use strict";Object.defineProperty(PWr,"__esModule",{value:!0});var ow=Hh(),gYc={message:({schemaCode:e})=>(0,ow.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,ow._)`{format: ${e}}`},AYc={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:gYc,code(e,t){let{gen:r,data:n,$data:a,schema:o,schemaCode:l,it:A}=e,{opts:f,errSchemaPath:I,schemaEnv:C,self:b}=A;if(!f.validateFormats)return;a?E():N();function E(){let B=r.scopeValue("formats",{ref:b.formats,code:f.code.formats}),F=r.const("fDef",(0,ow._)`${B}[${l}]`),Q=r.let("fType"),X=r.let("format");r.if((0,ow._)`typeof ${F} == "object" && !(${F} instanceof RegExp)`,()=>r.assign(Q,(0,ow._)`${F}.type || "string"`).assign(X,(0,ow._)`${F}.validate`),()=>r.assign(Q,(0,ow._)`"string"`).assign(X,F)),e.fail$data((0,ow.or)(ae(),ne()));function ae(){return f.strictSchema===!1?ow.nil:(0,ow._)`${l} && !${X}`}function ne(){let ce=C.$async?(0,ow._)`(${F}.async ? await ${X}(${n}) : ${X}(${n}))`:(0,ow._)`${X}(${n})`,fe=(0,ow._)`(typeof ${X} == "function" ? ${ce} : ${X}.test(${n}))`;return(0,ow._)`${X} && ${X} !== true && ${Q} === ${t} && !${fe}`}}function N(){let B=b.formats[o];if(!B){ae();return}if(B===!0)return;let[F,Q,X]=ne(B);F===t&&e.pass(ce());function ae(){if(f.strictSchema===!1){b.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${I}"`}}function ne(fe){let ue=fe instanceof RegExp?(0,ow.regexpCode)(fe):f.code.formats?(0,ow._)`${f.code.formats}${(0,ow.getProperty)(o)}`:void 0,de=r.scopeValue("formats",{key:o,ref:fe,code:ue});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,ow._)`${de}.validate`]:["string",fe,de]}function ce(){if(typeof B=="object"&&!(B instanceof RegExp)&&B.async){if(!C.$async)throw new Error("async format in sync schema");return(0,ow._)`await ${X}(${n})`}return typeof Q=="function"?(0,ow._)`${X}(${n})`:(0,ow._)`${X}.test(${n})`}}}};PWr.default=AYc});var H7i=H(WWr=>{"use strict";Object.defineProperty(WWr,"__esModule",{value:!0});var dYc=M7i(),pYc=[dYc.default];WWr.default=pYc});var Y7i=H(uke=>{"use strict";Object.defineProperty(uke,"__esModule",{value:!0});uke.contentVocabulary=uke.metadataVocabulary=void 0;uke.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];uke.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var X7i=H(OWr=>{"use strict";Object.defineProperty(OWr,"__esModule",{value:!0});var fYc=$6i(),IYc=d7i(),hYc=O7i(),mYc=H7i(),Q7i=Y7i(),CYc=[fYc.default,IYc.default,(0,hYc.default)(),mYc.default,Q7i.metadataVocabulary,Q7i.contentVocabulary];OWr.default=CYc});var U7i=H(YBt=>{"use strict";Object.defineProperty(YBt,"__esModule",{value:!0});YBt.DiscrError=void 0;var J7i;(function(e){e.Tag="tag",e.Mapping="mapping"})(J7i||(YBt.DiscrError=J7i={}))});var j7i=H(HWr=>{"use strict";Object.defineProperty(HWr,"__esModule",{value:!0});var gke=Hh(),MWr=U7i(),K7i=BBt(),_Yc=h8e(),yYc=B_(),bYc={message:({params:{discrError:e,tagName:t}})=>e===MWr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,gke._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},EYc={keyword:"discriminator",type:"object",schemaType:"object",error:bYc,code(e){let{gen:t,data:r,schema:n,parentSchema:a,it:o}=e,{oneOf:l}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let A=n.propertyName;if(typeof A!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!l)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),I=t.const("tag",(0,gke._)`${r}${(0,gke.getProperty)(A)}`);t.if((0,gke._)`typeof ${I} == "string"`,()=>C(),()=>e.error(!1,{discrError:MWr.DiscrError.Tag,tag:I,tagName:A})),e.ok(f);function C(){let N=E();t.if(!1);for(let B in N)t.elseIf((0,gke._)`${I} === ${B}`),t.assign(f,b(N[B]));t.else(),e.error(!1,{discrError:MWr.DiscrError.Mapping,tag:I,tagName:A}),t.endIf()}function b(N){let B=t.name("valid"),F=e.subschema({keyword:"oneOf",schemaProp:N},B);return e.mergeEvaluated(F,gke.Name),B}function E(){var N;let B={},F=X(a),Q=!0;for(let ce=0;ce{SYc.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 QWr=H((J1,YWr)=>{"use strict";Object.defineProperty(J1,"__esModule",{value:!0});J1.MissingRefError=J1.ValidationError=J1.CodeGen=J1.Name=J1.nil=J1.stringify=J1.str=J1._=J1.KeywordCxt=J1.Ajv=void 0;var vYc=J6i(),BYc=X7i(),wYc=j7i(),q7i=z7i(),TYc=["/properties"],QBt="http://json-schema.org/draft-07/schema",Ake=class extends vYc.default{_addVocabularies(){super._addVocabularies(),BYc.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(wYc.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(q7i,TYc):q7i;this.addMetaSchema(t,QBt,!1),this.refs["http://json-schema.org/schema"]=QBt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(QBt)?QBt:void 0)}};J1.Ajv=Ake;YWr.exports=J1=Ake;YWr.exports.Ajv=Ake;Object.defineProperty(J1,"__esModule",{value:!0});J1.default=Ake;var RYc=I8e();Object.defineProperty(J1,"KeywordCxt",{enumerable:!0,get:function(){return RYc.KeywordCxt}});var dke=Hh();Object.defineProperty(J1,"_",{enumerable:!0,get:function(){return dke._}});Object.defineProperty(J1,"str",{enumerable:!0,get:function(){return dke.str}});Object.defineProperty(J1,"stringify",{enumerable:!0,get:function(){return dke.stringify}});Object.defineProperty(J1,"nil",{enumerable:!0,get:function(){return dke.nil}});Object.defineProperty(J1,"Name",{enumerable:!0,get:function(){return dke.Name}});Object.defineProperty(J1,"CodeGen",{enumerable:!0,get:function(){return dke.CodeGen}});var NYc=SBt();Object.defineProperty(J1,"ValidationError",{enumerable:!0,get:function(){return NYc.default}});var DYc=h8e();Object.defineProperty(J1,"MissingRefError",{enumerable:!0,get:function(){return DYc.default}})});var ozi=H(Hj=>{"use strict";Object.defineProperty(Hj,"__esModule",{value:!0});Hj.formatNames=Hj.fastFormats=Hj.fullFormats=void 0;function Mj(e,t){return{validate:e,compare:t}}Hj.fullFormats={date:Mj(rzi,KWr),time:Mj(JWr(!0),jWr),"date-time":Mj($7i(!0),izi),"iso-time":Mj(JWr(),nzi),"iso-date-time":Mj($7i(),szi),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:LYc,"uri-reference":/^(?:[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,"uri-template":/^(?:(?:[^\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,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,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:/^(?=.{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,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([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}))|:)))$/i,regex:YYc,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:VYc,int32:{type:"number",validate:OYc},int64:{type:"number",validate:MYc},float:{type:"number",validate:tzi},double:{type:"number",validate:tzi},password:!0,binary:!0};Hj.fastFormats={...Hj.fullFormats,date:Mj(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,KWr),time:Mj(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,jWr),"date-time":Mj(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,izi),"iso-time":Mj(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,nzi),"iso-date-time":Mj(/^\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,szi),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,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};Hj.formatNames=Object.keys(Hj.fullFormats);function kYc(e){return e%4===0&&(e%100!==0||e%400===0)}var xYc=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,GYc=[0,31,28,31,30,31,30,31,31,30,31,30,31];function rzi(e){let t=xYc.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],a=+t[3];return n>=1&&n<=12&&a>=1&&a<=(n===2&&kYc(r)?29:GYc[n])}function KWr(e,t){if(e&&t)return e>t?1:e23||C>59||e&&!A)return!1;if(a<=23&&o<=59&&l<60)return!0;let b=o-C*f,E=a-I*f-(b<0?1:0);return(E===23||E===-1)&&(b===59||b===-1)&&l<61}}function jWr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function nzi(e,t){if(!(e&&t))return;let r=XWr.exec(e),n=XWr.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=PYc}function MYc(e){return Number.isInteger(e)}function tzi(){return!0}var HYc=/[^\\]\\Z/;function YYc(e){if(HYc.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var azi=H(pke=>{"use strict";Object.defineProperty(pke,"__esModule",{value:!0});pke.formatLimitDefinition=void 0;var QYc=QWr(),N4=Hh(),dle=N4.operators,XBt={formatMaximum:{okStr:"<=",ok:dle.LTE,fail:dle.GT},formatMinimum:{okStr:">=",ok:dle.GTE,fail:dle.LT},formatExclusiveMaximum:{okStr:"<",ok:dle.LT,fail:dle.GTE},formatExclusiveMinimum:{okStr:">",ok:dle.GT,fail:dle.LTE}},XYc={message:({keyword:e,schemaCode:t})=>(0,N4.str)`should be ${XBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,N4._)`{comparison: ${XBt[e].okStr}, limit: ${t}}`};pke.formatLimitDefinition={keyword:Object.keys(XBt),type:"string",schemaType:"string",$data:!0,error:XYc,code(e){let{gen:t,data:r,schemaCode:n,keyword:a,it:o}=e,{opts:l,self:A}=o;if(!l.validateFormats)return;let f=new QYc.KeywordCxt(o,A.RULES.all.format.definition,"format");f.$data?I():C();function I(){let E=t.scopeValue("formats",{ref:A.formats,code:l.code.formats}),N=t.const("fmt",(0,N4._)`${E}[${f.schemaCode}]`);e.fail$data((0,N4.or)((0,N4._)`typeof ${N} != "object"`,(0,N4._)`${N} instanceof RegExp`,(0,N4._)`typeof ${N}.compare != "function"`,b(N)))}function C(){let E=f.schema,N=A.formats[E];if(!N||N===!0)return;if(typeof N!="object"||N instanceof RegExp||typeof N.compare!="function")throw new Error(`"${a}": format "${E}" does not define "compare" function`);let B=t.scopeValue("formats",{key:E,ref:N,code:l.code.formats?(0,N4._)`${l.code.formats}${(0,N4.getProperty)(E)}`:void 0});e.fail$data(b(B))}function b(E){return(0,N4._)`${E}.compare(${r}, ${n}) ${XBt[a].fail} 0`}},dependencies:["format"]};var JYc=e=>(e.addKeyword(pke.formatLimitDefinition),e);pke.default=JYc});var gzi=H((D8e,uzi)=>{"use strict";Object.defineProperty(D8e,"__esModule",{value:!0});var fke=ozi(),UYc=azi(),zWr=Hh(),czi=new zWr.Name("fullFormats"),KYc=new zWr.Name("fastFormats"),qWr=(e,t={keywords:!0})=>{if(Array.isArray(t))return lzi(e,t,fke.fullFormats,czi),e;let[r,n]=t.mode==="fast"?[fke.fastFormats,KYc]:[fke.fullFormats,czi],a=t.formats||fke.formatNames;return lzi(e,a,r,n),t.keywords&&(0,UYc.default)(e),e};qWr.get=(e,t="full")=>{let n=(t==="fast"?fke.fastFormats:fke.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function lzi(e,t,r,n){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,zWr._)`require("ajv-formats/dist/formats").${n}`);for(let l of t)e.addFormat(l,r[l])}uzi.exports=D8e=qWr;Object.defineProperty(D8e,"__esModule",{value:!0});D8e.default=qWr});var Sy=H(JBt=>{"use strict";Object.defineProperty(JBt,"__esModule",{value:!0});JBt.isFunction=void 0;function jYc(e){return typeof e=="function"}JBt.isFunction=jYc});var ple=H(UBt=>{"use strict";Object.defineProperty(UBt,"__esModule",{value:!0});UBt.createErrorClass=void 0;function zYc(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}UBt.createErrorClass=zYc});var $Wr=H(KBt=>{"use strict";Object.defineProperty(KBt,"__esModule",{value:!0});KBt.UnsubscriptionError=void 0;var qYc=ple();KBt.UnsubscriptionError=qYc.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: + deps: ${r}}`};var IYc={keyword:"dependencies",type:"object",schemaType:"object",error:Oj.error,code(e){let[t,r]=hYc(e);L7i(e,t),V7i(e,r)}};function hYc({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let a=Array.isArray(e[n])?t:r;a[n]=e[n]}return[t,r]}function L7i(e,t=e.schema){let{gen:r,data:n,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let l in t){let A=t[l];if(A.length===0)continue;let f=(0,k8e.propertyInData)(r,n,l,a.opts.ownProperties);e.setParams({property:l,depsCount:A.length,deps:A.join(", ")}),a.allErrors?r.if(f,()=>{for(let I of A)(0,k8e.checkReportMissingProp)(e,I)}):(r.if((0,kWr._)`${f} && (${(0,k8e.checkMissingProp)(e,A,o)})`),(0,k8e.reportMissingProp)(e,o),r.else())}}Oj.validatePropertyDeps=L7i;function V7i(e,t=e.schema){let{gen:r,data:n,keyword:a,it:o}=e,l=r.name("valid");for(let A in t)(0,fYc.alwaysValidSchema)(o,t[A])||(r.if((0,k8e.propertyInData)(r,n,A,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:A},l);e.mergeValidEvaluated(f,l)},()=>r.var(l,!0)),e.ok(l))}Oj.validateSchemaDeps=V7i;Oj.default=IYc});var O7i=H(xWr=>{"use strict";Object.defineProperty(xWr,"__esModule",{value:!0});var W7i=Hh(),mYc=B_(),CYc={message:"property name must be valid",params:({params:e})=>(0,W7i._)`{propertyName: ${e.propertyName}}`},_Yc={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:CYc,code(e){let{gen:t,schema:r,data:n,it:a}=e;if((0,mYc.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",n,l=>{e.setParams({propertyName:l}),e.subschema({keyword:"propertyNames",data:l,dataTypes:["string"],propertyName:l,compositeRule:!0},o),t.if((0,W7i.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};xWr.default=_Yc});var FWr=H(GWr=>{"use strict";Object.defineProperty(GWr,"__esModule",{value:!0});var HBt=IH(),R4=Hh(),yYc=nte(),YBt=B_(),bYc={message:"must NOT have additional properties",params:({params:e})=>(0,R4._)`{additionalProperty: ${e.additionalProperty}}`},EYc={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:bYc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,errsCount:o,it:l}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:A,opts:f}=l;if(l.props=!0,f.removeAdditional!=="all"&&(0,YBt.alwaysValidSchema)(l,r))return;let I=(0,HBt.allSchemaProperties)(n.properties),C=(0,HBt.allSchemaProperties)(n.patternProperties);b(),e.ok((0,R4._)`${o} === ${yYc.default.errors}`);function b(){t.forIn("key",a,Q=>{!I.length&&!C.length?B(Q):t.if(E(Q),()=>B(Q))})}function E(Q){let X;if(I.length>8){let ae=(0,YBt.schemaRefOrVal)(l,n.properties,"properties");X=(0,HBt.isOwnProperty)(t,ae,Q)}else I.length?X=(0,R4.or)(...I.map(ae=>(0,R4._)`${Q} === ${ae}`)):X=R4.nil;return C.length&&(X=(0,R4.or)(X,...C.map(ae=>(0,R4._)`${(0,HBt.usePattern)(e,ae)}.test(${Q})`))),(0,R4.not)(X)}function N(Q){t.code((0,R4._)`delete ${a}[${Q}]`)}function B(Q){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){N(Q);return}if(r===!1){e.setParams({additionalProperty:Q}),e.error(),A||t.break();return}if(typeof r=="object"&&!(0,YBt.alwaysValidSchema)(l,r)){let X=t.name("valid");f.removeAdditional==="failing"?(F(Q,X,!1),t.if((0,R4.not)(X),()=>{e.reset(),N(Q)})):(F(Q,X),A||t.if((0,R4.not)(X),()=>t.break()))}}function F(Q,X,ae){let ne={keyword:"additionalProperties",dataProp:Q,dataPropType:YBt.Type.Str};ae===!1&&Object.assign(ne,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ne,X)}}};GWr.default=EYc});var Y7i=H(LWr=>{"use strict";Object.defineProperty(LWr,"__esModule",{value:!0});var SYc=m8e(),M7i=IH(),ZWr=B_(),H7i=FWr(),vYc={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&H7i.default.code(new SYc.KeywordCxt(o,H7i.default,"additionalProperties"));let l=(0,M7i.allSchemaProperties)(r);for(let b of l)o.definedProperties.add(b);o.opts.unevaluated&&l.length&&o.props!==!0&&(o.props=ZWr.mergeEvaluated.props(t,(0,ZWr.toHash)(l),o.props));let A=l.filter(b=>!(0,ZWr.alwaysValidSchema)(o,r[b]));if(A.length===0)return;let f=t.name("valid");for(let b of A)I(b)?C(b):(t.if((0,M7i.propertyInData)(t,a,b,o.opts.ownProperties)),C(b),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(b),e.ok(f);function I(b){return o.opts.useDefaults&&!o.compositeRule&&r[b].default!==void 0}function C(b){e.subschema({keyword:"properties",schemaProp:b,dataProp:b},f)}}};LWr.default=vYc});var U7i=H(VWr=>{"use strict";Object.defineProperty(VWr,"__esModule",{value:!0});var Q7i=IH(),QBt=Hh(),X7i=B_(),J7i=B_(),BYc={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:a,it:o}=e,{opts:l}=o,A=(0,Q7i.allSchemaProperties)(r),f=A.filter(F=>(0,X7i.alwaysValidSchema)(o,r[F]));if(A.length===0||f.length===A.length&&(!o.opts.unevaluated||o.props===!0))return;let I=l.strictSchema&&!l.allowMatchingProperties&&a.properties,C=t.name("valid");o.props!==!0&&!(o.props instanceof QBt.Name)&&(o.props=(0,J7i.evaluatedPropsToName)(t,o.props));let{props:b}=o;E();function E(){for(let F of A)I&&N(F),o.allErrors?B(F):(t.var(C,!0),B(F),t.if(C))}function N(F){for(let Q in I)new RegExp(F).test(Q)&&(0,X7i.checkStrictMode)(o,`property ${Q} matches pattern ${F} (use allowMatchingProperties)`)}function B(F){t.forIn("key",n,Q=>{t.if((0,QBt._)`${(0,Q7i.usePattern)(e,F)}.test(${Q})`,()=>{let X=f.includes(F);X||e.subschema({keyword:"patternProperties",schemaProp:F,dataProp:Q,dataPropType:J7i.Type.Str},C),o.opts.unevaluated&&b!==!0?t.assign((0,QBt._)`${b}[${Q}]`,!0):!X&&!o.allErrors&&t.if((0,QBt.not)(C),()=>t.break())})})}}};VWr.default=BYc});var K7i=H(PWr=>{"use strict";Object.defineProperty(PWr,"__esModule",{value:!0});var wYc=B_(),TYc={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,wYc.alwaysValidSchema)(n,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};PWr.default=TYc});var j7i=H(WWr=>{"use strict";Object.defineProperty(WWr,"__esModule",{value:!0});var RYc=IH(),NYc={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:RYc.validateUnion,error:{message:"must match a schema in anyOf"}};WWr.default=NYc});var z7i=H(OWr=>{"use strict";Object.defineProperty(OWr,"__esModule",{value:!0});var XBt=Hh(),DYc=B_(),kYc={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,XBt._)`{passingSchemas: ${e.passing}}`},xYc={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:kYc,code(e){let{gen:t,schema:r,parentSchema:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&n.discriminator)return;let o=r,l=t.let("valid",!1),A=t.let("passing",null),f=t.name("_valid");e.setParams({passing:A}),t.block(I),e.result(l,()=>e.reset(),()=>e.error(!0));function I(){o.forEach((C,b)=>{let E;(0,DYc.alwaysValidSchema)(a,C)?t.var(f,!0):E=e.subschema({keyword:"oneOf",schemaProp:b,compositeRule:!0},f),b>0&&t.if((0,XBt._)`${f} && ${l}`).assign(l,!1).assign(A,(0,XBt._)`[${A}, ${b}]`).else(),t.if(f,()=>{t.assign(l,!0),t.assign(A,b),E&&e.mergeEvaluated(E,XBt.Name)})})}}};OWr.default=xYc});var q7i=H(MWr=>{"use strict";Object.defineProperty(MWr,"__esModule",{value:!0});var GYc=B_(),FYc={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,l)=>{if((0,GYc.alwaysValidSchema)(n,o))return;let A=e.subschema({keyword:"allOf",schemaProp:l},a);e.ok(a),e.mergeEvaluated(A)})}};MWr.default=FYc});var tzi=H(HWr=>{"use strict";Object.defineProperty(HWr,"__esModule",{value:!0});var JBt=Hh(),ezi=B_(),ZYc={message:({params:e})=>(0,JBt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,JBt._)`{failingKeyword: ${e.ifClause}}`},LYc={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:ZYc,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,ezi.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let a=$7i(n,"then"),o=$7i(n,"else");if(!a&&!o)return;let l=t.let("valid",!0),A=t.name("_valid");if(f(),e.reset(),a&&o){let C=t.let("ifClause");e.setParams({ifClause:C}),t.if(A,I("then",C),I("else",C))}else a?t.if(A,I("then")):t.if((0,JBt.not)(A),I("else"));e.pass(l,()=>e.error(!0));function f(){let C=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},A);e.mergeEvaluated(C)}function I(C,b){return()=>{let E=e.subschema({keyword:C},A);t.assign(l,A),e.mergeValidEvaluated(E,l),b?t.assign(b,(0,JBt._)`${C}`):e.setParams({ifClause:C})}}}};function $7i(e,t){let r=e.schema[t];return r!==void 0&&!(0,ezi.alwaysValidSchema)(e,r)}HWr.default=LYc});var rzi=H(YWr=>{"use strict";Object.defineProperty(YWr,"__esModule",{value:!0});var VYc=B_(),PYc={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,VYc.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};YWr.default=PYc});var nzi=H(QWr=>{"use strict";Object.defineProperty(QWr,"__esModule",{value:!0});var WYc=wWr(),OYc=x7i(),MYc=TWr(),HYc=F7i(),YYc=Z7i(),QYc=P7i(),XYc=O7i(),JYc=FWr(),UYc=Y7i(),KYc=U7i(),jYc=K7i(),zYc=j7i(),qYc=z7i(),$Yc=q7i(),eQc=tzi(),tQc=rzi();function rQc(e=!1){let t=[jYc.default,zYc.default,qYc.default,$Yc.default,eQc.default,tQc.default,XYc.default,JYc.default,QYc.default,UYc.default,KYc.default];return e?t.push(OYc.default,HYc.default):t.push(WYc.default,MYc.default),t.push(YYc.default),t}QWr.default=rQc});var izi=H(XWr=>{"use strict";Object.defineProperty(XWr,"__esModule",{value:!0});var ow=Hh(),nQc={message:({schemaCode:e})=>(0,ow.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,ow._)`{format: ${e}}`},iQc={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:nQc,code(e,t){let{gen:r,data:n,$data:a,schema:o,schemaCode:l,it:A}=e,{opts:f,errSchemaPath:I,schemaEnv:C,self:b}=A;if(!f.validateFormats)return;a?E():N();function E(){let B=r.scopeValue("formats",{ref:b.formats,code:f.code.formats}),F=r.const("fDef",(0,ow._)`${B}[${l}]`),Q=r.let("fType"),X=r.let("format");r.if((0,ow._)`typeof ${F} == "object" && !(${F} instanceof RegExp)`,()=>r.assign(Q,(0,ow._)`${F}.type || "string"`).assign(X,(0,ow._)`${F}.validate`),()=>r.assign(Q,(0,ow._)`"string"`).assign(X,F)),e.fail$data((0,ow.or)(ae(),ne()));function ae(){return f.strictSchema===!1?ow.nil:(0,ow._)`${l} && !${X}`}function ne(){let ce=C.$async?(0,ow._)`(${F}.async ? await ${X}(${n}) : ${X}(${n}))`:(0,ow._)`${X}(${n})`,fe=(0,ow._)`(typeof ${X} == "function" ? ${ce} : ${X}.test(${n}))`;return(0,ow._)`${X} && ${X} !== true && ${Q} === ${t} && !${fe}`}}function N(){let B=b.formats[o];if(!B){ae();return}if(B===!0)return;let[F,Q,X]=ne(B);F===t&&e.pass(ce());function ae(){if(f.strictSchema===!1){b.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${I}"`}}function ne(fe){let ue=fe instanceof RegExp?(0,ow.regexpCode)(fe):f.code.formats?(0,ow._)`${f.code.formats}${(0,ow.getProperty)(o)}`:void 0,de=r.scopeValue("formats",{key:o,ref:fe,code:ue});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,ow._)`${de}.validate`]:["string",fe,de]}function ce(){if(typeof B=="object"&&!(B instanceof RegExp)&&B.async){if(!C.$async)throw new Error("async format in sync schema");return(0,ow._)`await ${X}(${n})`}return typeof Q=="function"?(0,ow._)`${X}(${n})`:(0,ow._)`${X}.test(${n})`}}}};XWr.default=iQc});var szi=H(JWr=>{"use strict";Object.defineProperty(JWr,"__esModule",{value:!0});var sQc=izi(),oQc=[sQc.default];JWr.default=oQc});var ozi=H(Ake=>{"use strict";Object.defineProperty(Ake,"__esModule",{value:!0});Ake.contentVocabulary=Ake.metadataVocabulary=void 0;Ake.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ake.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var czi=H(UWr=>{"use strict";Object.defineProperty(UWr,"__esModule",{value:!0});var aQc=f7i(),cQc=R7i(),lQc=nzi(),uQc=szi(),azi=ozi(),gQc=[aQc.default,cQc.default,(0,lQc.default)(),uQc.default,azi.metadataVocabulary,azi.contentVocabulary];UWr.default=gQc});var uzi=H(UBt=>{"use strict";Object.defineProperty(UBt,"__esModule",{value:!0});UBt.DiscrError=void 0;var lzi;(function(e){e.Tag="tag",e.Mapping="mapping"})(lzi||(UBt.DiscrError=lzi={}))});var Azi=H(jWr=>{"use strict";Object.defineProperty(jWr,"__esModule",{value:!0});var dke=Hh(),KWr=uzi(),gzi=NBt(),AQc=C8e(),dQc=B_(),pQc={message:({params:{discrError:e,tagName:t}})=>e===KWr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,dke._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},fQc={keyword:"discriminator",type:"object",schemaType:"object",error:pQc,code(e){let{gen:t,data:r,schema:n,parentSchema:a,it:o}=e,{oneOf:l}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let A=n.propertyName;if(typeof A!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!l)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),I=t.const("tag",(0,dke._)`${r}${(0,dke.getProperty)(A)}`);t.if((0,dke._)`typeof ${I} == "string"`,()=>C(),()=>e.error(!1,{discrError:KWr.DiscrError.Tag,tag:I,tagName:A})),e.ok(f);function C(){let N=E();t.if(!1);for(let B in N)t.elseIf((0,dke._)`${I} === ${B}`),t.assign(f,b(N[B]));t.else(),e.error(!1,{discrError:KWr.DiscrError.Mapping,tag:I,tagName:A}),t.endIf()}function b(N){let B=t.name("valid"),F=e.subschema({keyword:"oneOf",schemaProp:N},B);return e.mergeEvaluated(F,dke.Name),B}function E(){var N;let B={},F=X(a),Q=!0;for(let ce=0;ce{IQc.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 qWr=H((J1,zWr)=>{"use strict";Object.defineProperty(J1,"__esModule",{value:!0});J1.MissingRefError=J1.ValidationError=J1.CodeGen=J1.Name=J1.nil=J1.stringify=J1.str=J1._=J1.KeywordCxt=J1.Ajv=void 0;var hQc=l7i(),mQc=czi(),CQc=Azi(),pzi=dzi(),_Qc=["/properties"],KBt="http://json-schema.org/draft-07/schema",pke=class extends hQc.default{_addVocabularies(){super._addVocabularies(),mQc.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(CQc.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(pzi,_Qc):pzi;this.addMetaSchema(t,KBt,!1),this.refs["http://json-schema.org/schema"]=KBt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(KBt)?KBt:void 0)}};J1.Ajv=pke;zWr.exports=J1=pke;zWr.exports.Ajv=pke;Object.defineProperty(J1,"__esModule",{value:!0});J1.default=pke;var yQc=m8e();Object.defineProperty(J1,"KeywordCxt",{enumerable:!0,get:function(){return yQc.KeywordCxt}});var fke=Hh();Object.defineProperty(J1,"_",{enumerable:!0,get:function(){return fke._}});Object.defineProperty(J1,"str",{enumerable:!0,get:function(){return fke.str}});Object.defineProperty(J1,"stringify",{enumerable:!0,get:function(){return fke.stringify}});Object.defineProperty(J1,"nil",{enumerable:!0,get:function(){return fke.nil}});Object.defineProperty(J1,"Name",{enumerable:!0,get:function(){return fke.Name}});Object.defineProperty(J1,"CodeGen",{enumerable:!0,get:function(){return fke.CodeGen}});var bQc=TBt();Object.defineProperty(J1,"ValidationError",{enumerable:!0,get:function(){return bQc.default}});var EQc=C8e();Object.defineProperty(J1,"MissingRefError",{enumerable:!0,get:function(){return EQc.default}})});var bzi=H(Hj=>{"use strict";Object.defineProperty(Hj,"__esModule",{value:!0});Hj.formatNames=Hj.fastFormats=Hj.fullFormats=void 0;function Mj(e,t){return{validate:e,compare:t}}Hj.fullFormats={date:Mj(mzi,rOr),time:Mj(eOr(!0),nOr),"date-time":Mj(fzi(!0),_zi),"iso-time":Mj(eOr(),Czi),"iso-date-time":Mj(fzi(),yzi),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:RQc,"uri-reference":/^(?:[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,"uri-template":/^(?:(?:[^\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,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,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:/^(?=.{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,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([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}))|:)))$/i,regex:ZQc,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:NQc,int32:{type:"number",validate:xQc},int64:{type:"number",validate:GQc},float:{type:"number",validate:hzi},double:{type:"number",validate:hzi},password:!0,binary:!0};Hj.fastFormats={...Hj.fullFormats,date:Mj(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,rOr),time:Mj(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,nOr),"date-time":Mj(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,_zi),"iso-time":Mj(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Czi),"iso-date-time":Mj(/^\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,yzi),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,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};Hj.formatNames=Object.keys(Hj.fullFormats);function SQc(e){return e%4===0&&(e%100!==0||e%400===0)}var vQc=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,BQc=[0,31,28,31,30,31,30,31,31,30,31,30,31];function mzi(e){let t=vQc.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],a=+t[3];return n>=1&&n<=12&&a>=1&&a<=(n===2&&SQc(r)?29:BQc[n])}function rOr(e,t){if(e&&t)return e>t?1:e23||C>59||e&&!A)return!1;if(a<=23&&o<=59&&l<60)return!0;let b=o-C*f,E=a-I*f-(b<0?1:0);return(E===23||E===-1)&&(b===59||b===-1)&&l<61}}function nOr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function Czi(e,t){if(!(e&&t))return;let r=$Wr.exec(e),n=$Wr.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=DQc}function GQc(e){return Number.isInteger(e)}function hzi(){return!0}var FQc=/[^\\]\\Z/;function ZQc(e){if(FQc.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var Ezi=H(Ike=>{"use strict";Object.defineProperty(Ike,"__esModule",{value:!0});Ike.formatLimitDefinition=void 0;var LQc=qWr(),N4=Hh(),ple=N4.operators,jBt={formatMaximum:{okStr:"<=",ok:ple.LTE,fail:ple.GT},formatMinimum:{okStr:">=",ok:ple.GTE,fail:ple.LT},formatExclusiveMaximum:{okStr:"<",ok:ple.LT,fail:ple.GTE},formatExclusiveMinimum:{okStr:">",ok:ple.GT,fail:ple.LTE}},VQc={message:({keyword:e,schemaCode:t})=>(0,N4.str)`should be ${jBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,N4._)`{comparison: ${jBt[e].okStr}, limit: ${t}}`};Ike.formatLimitDefinition={keyword:Object.keys(jBt),type:"string",schemaType:"string",$data:!0,error:VQc,code(e){let{gen:t,data:r,schemaCode:n,keyword:a,it:o}=e,{opts:l,self:A}=o;if(!l.validateFormats)return;let f=new LQc.KeywordCxt(o,A.RULES.all.format.definition,"format");f.$data?I():C();function I(){let E=t.scopeValue("formats",{ref:A.formats,code:l.code.formats}),N=t.const("fmt",(0,N4._)`${E}[${f.schemaCode}]`);e.fail$data((0,N4.or)((0,N4._)`typeof ${N} != "object"`,(0,N4._)`${N} instanceof RegExp`,(0,N4._)`typeof ${N}.compare != "function"`,b(N)))}function C(){let E=f.schema,N=A.formats[E];if(!N||N===!0)return;if(typeof N!="object"||N instanceof RegExp||typeof N.compare!="function")throw new Error(`"${a}": format "${E}" does not define "compare" function`);let B=t.scopeValue("formats",{key:E,ref:N,code:l.code.formats?(0,N4._)`${l.code.formats}${(0,N4.getProperty)(E)}`:void 0});e.fail$data(b(B))}function b(E){return(0,N4._)`${E}.compare(${r}, ${n}) ${jBt[a].fail} 0`}},dependencies:["format"]};var PQc=e=>(e.addKeyword(Ike.formatLimitDefinition),e);Ike.default=PQc});var wzi=H((x8e,Bzi)=>{"use strict";Object.defineProperty(x8e,"__esModule",{value:!0});var hke=bzi(),WQc=Ezi(),iOr=Hh(),Szi=new iOr.Name("fullFormats"),OQc=new iOr.Name("fastFormats"),sOr=(e,t={keywords:!0})=>{if(Array.isArray(t))return vzi(e,t,hke.fullFormats,Szi),e;let[r,n]=t.mode==="fast"?[hke.fastFormats,OQc]:[hke.fullFormats,Szi],a=t.formats||hke.formatNames;return vzi(e,a,r,n),t.keywords&&(0,WQc.default)(e),e};sOr.get=(e,t="full")=>{let n=(t==="fast"?hke.fastFormats:hke.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function vzi(e,t,r,n){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,iOr._)`require("ajv-formats/dist/formats").${n}`);for(let l of t)e.addFormat(l,r[l])}Bzi.exports=x8e=sOr;Object.defineProperty(x8e,"__esModule",{value:!0});x8e.default=sOr});var Sy=H(zBt=>{"use strict";Object.defineProperty(zBt,"__esModule",{value:!0});zBt.isFunction=void 0;function MQc(e){return typeof e=="function"}zBt.isFunction=MQc});var fle=H(qBt=>{"use strict";Object.defineProperty(qBt,"__esModule",{value:!0});qBt.createErrorClass=void 0;function HQc(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}qBt.createErrorClass=HQc});var oOr=H($Bt=>{"use strict";Object.defineProperty($Bt,"__esModule",{value:!0});$Bt.UnsubscriptionError=void 0;var YQc=fle();$Bt.UnsubscriptionError=YQc.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: `+r.map(function(n,a){return a+1+") "+n.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=r}})});var ste=H(jBt=>{"use strict";Object.defineProperty(jBt,"__esModule",{value:!0});jBt.arrRemove=void 0;function $Yc(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}jBt.arrRemove=$Yc});var TO=H(GV=>{"use strict";var Azi=GV&&GV.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},dzi=GV&&GV.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},pzi=GV&&GV.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(zBt,"__esModule",{value:!0});zBt.config=void 0;zBt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var rOr=H(Yj=>{"use strict";var hzi=Yj&&Yj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},mzi=Yj&&Yj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(qBt,"__esModule",{value:!0});qBt.reportUnhandledError=void 0;var tQc=Ike(),rQc=rOr();function nQc(e){rQc.timeoutProvider.setTimeout(function(){var t=tQc.config.onUnhandledError;if(t)t(e);else throw e})}qBt.reportUnhandledError=nQc});var rx=H($Bt=>{"use strict";Object.defineProperty($Bt,"__esModule",{value:!0});$Bt.noop=void 0;function iQc(){}$Bt.noop=iQc});var Czi=H(Qj=>{"use strict";Object.defineProperty(Qj,"__esModule",{value:!0});Qj.createNotification=Qj.nextNotification=Qj.errorNotification=Qj.COMPLETE_NOTIFICATION=void 0;Qj.COMPLETE_NOTIFICATION=function(){return ewt("C",void 0,void 0)}();function sQc(e){return ewt("E",void 0,e)}Qj.errorNotification=sQc;function oQc(e){return ewt("N",e,void 0)}Qj.nextNotification=oQc;function ewt(e,t,r){return{kind:e,value:t,error:r}}Qj.createNotification=ewt});var twt=H(hke=>{"use strict";Object.defineProperty(hke,"__esModule",{value:!0});hke.captureError=hke.errorContext=void 0;var _zi=Ike(),u_e=null;function aQc(e){if(_zi.config.useDeprecatedSynchronousErrorHandling){var t=!u_e;if(t&&(u_e={errorThrown:!1,error:null}),e(),t){var r=u_e,n=r.errorThrown,a=r.error;if(u_e=null,n)throw a}}else e()}hke.errorContext=aQc;function cQc(e){_zi.config.useDeprecatedSynchronousErrorHandling&&u_e&&(u_e.errorThrown=!0,u_e.error=e)}hke.captureError=cQc});var mke=H(D4=>{"use strict";var Ezi=D4&&D4.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(D4,"__esModule",{value:!0});D4.EMPTY_OBSERVER=D4.SafeSubscriber=D4.Subscriber=void 0;var lQc=Sy(),yzi=TO(),aOr=Ike(),uQc=nOr(),bzi=rx(),iOr=Czi(),gQc=rOr(),AQc=twt(),Szi=function(e){Ezi(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,yzi.isSubscription(r)&&r.add(n)):n.destination=D4.EMPTY_OBSERVER,n}return t.create=function(r,n,a){return new vzi(r,n,a)},t.prototype.next=function(r){this.isStopped?oOr(iOr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?oOr(iOr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?oOr(iOr.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(yzi.Subscription);D4.Subscriber=Szi;var dQc=Function.prototype.bind;function sOr(e,t){return dQc.call(e,t)}var pQc=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){rwt(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){rwt(n)}else rwt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){rwt(r)}},e}(),vzi=function(e){Ezi(t,e);function t(r,n,a){var o=e.call(this)||this,l;if(lQc.isFunction(r)||!r)l={next:r??void 0,error:n??void 0,complete:a??void 0};else{var A;o&&aOr.config.useDeprecatedNextContext?(A=Object.create(r),A.unsubscribe=function(){return o.unsubscribe()},l={next:r.next&&sOr(r.next,A),error:r.error&&sOr(r.error,A),complete:r.complete&&sOr(r.complete,A)}):l=r}return o.destination=new pQc(l),o}return t}(Szi);D4.SafeSubscriber=vzi;function rwt(e){aOr.config.useDeprecatedSynchronousErrorHandling?AQc.captureError(e):uQc.reportUnhandledError(e)}function fQc(e){throw e}function oOr(e,t){var r=aOr.config.onStoppedNotification;r&&gQc.timeoutProvider.setTimeout(function(){return r(e,t)})}D4.EMPTY_OBSERVER={closed:!0,next:bzi.noop,error:fQc,complete:bzi.noop}});var x8e=H(nwt=>{"use strict";Object.defineProperty(nwt,"__esModule",{value:!0});nwt.observable=void 0;nwt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var nx=H(iwt=>{"use strict";Object.defineProperty(iwt,"__esModule",{value:!0});iwt.identity=void 0;function IQc(e){return e}iwt.identity=IQc});var G8e=H(Cke=>{"use strict";Object.defineProperty(Cke,"__esModule",{value:!0});Cke.pipeFromArray=Cke.pipe=void 0;var hQc=nx();function mQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(swt,"__esModule",{value:!0});swt.Observable=void 0;var lOr=mke(),CQc=TO(),_Qc=x8e(),yQc=G8e(),bQc=Ike(),cOr=Sy(),EQc=twt(),SQc=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,n){var a=this,o=BQc(t)?t:new lOr.SafeSubscriber(t,r,n);return EQc.errorContext(function(){var l=a,A=l.operator,f=l.source;o.add(A?A.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var n=this;return r=wzi(r),new r(function(a,o){var l=new lOr.SafeSubscriber({next:function(A){try{t(A)}catch(f){o(f),l.unsubscribe()}},error:o,complete:a});n.subscribe(l)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[_Qc.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(_ke,"__esModule",{value:!0});_ke.operate=_ke.hasLift=void 0;var wQc=Sy();function Tzi(e){return wQc.isFunction(e?.lift)}_ke.hasLift=Tzi;function TQc(e){return function(t){if(Tzi(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}_ke.operate=TQc});var Cd=H(fle=>{"use strict";var RQc=fle&&fle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(fle,"__esModule",{value:!0});fle.OperatorSubscriber=fle.createOperatorSubscriber=void 0;var NQc=mke();function DQc(e,t,r,n,a){return new Rzi(e,t,r,n,a)}fle.createOperatorSubscriber=DQc;var Rzi=function(e){RQc(t,e);function t(r,n,a,o,l,A){var f=e.call(this,r)||this;return f.onFinalize=l,f.shouldUnsubscribe=A,f._next=n?function(I){try{n(I)}catch(C){r.error(C)}}:e.prototype._next,f._error=o?function(I){try{o(I)}catch(C){r.error(C)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(I){r.error(I)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(NQc.Subscriber);fle.OperatorSubscriber=Rzi});var awt=H(owt=>{"use strict";Object.defineProperty(owt,"__esModule",{value:!0});owt.refCount=void 0;var kQc=qg(),xQc=Cd();function GQc(){return kQc.operate(function(e,t){var r=null;e._refCount++;var n=xQc.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}owt.refCount=GQc});var F8e=H(yke=>{"use strict";var FQc=yke&&yke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(yke,"__esModule",{value:!0});yke.ConnectableObservable=void 0;var ZQc=ub(),Nzi=TO(),LQc=awt(),VQc=Cd(),PQc=qg(),WQc=function(e){FQc(t,e);function t(r,n){var a=e.call(this)||this;return a.source=r,a.subjectFactory=n,a._subject=null,a._refCount=0,a._connection=null,PQc.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,n=this._connection;if(!n){n=this._connection=new Nzi.Subscription;var a=this.getSubject();n.add(this.source.subscribe(VQc.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),n.closed&&(this._connection=null,n=Nzi.Subscription.EMPTY)}return n},t.prototype.refCount=function(){return LQc.refCount()(this)},t}(ZQc.Observable);yke.ConnectableObservable=WQc});var Dzi=H(Z8e=>{"use strict";Object.defineProperty(Z8e,"__esModule",{value:!0});Z8e.performanceTimestampProvider=void 0;Z8e.performanceTimestampProvider={now:function(){return(Z8e.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var uOr=H(k4=>{"use strict";var kzi=k4&&k4.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},xzi=k4&&k4.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.animationFrames=void 0;var MQc=ub(),HQc=Dzi(),Gzi=uOr();function YQc(e){return e?Fzi(e):QQc}cwt.animationFrames=YQc;function Fzi(e){return new MQc.Observable(function(t){var r=e||HQc.performanceTimestampProvider,n=r.now(),a=0,o=function(){t.closed||(a=Gzi.animationFrameProvider.requestAnimationFrame(function(l){a=0;var A=r.now();t.next({timestamp:e?A:l,elapsed:A-n}),o()}))};return o(),function(){a&&Gzi.animationFrameProvider.cancelAnimationFrame(a)}})}var QQc=Fzi()});var gOr=H(lwt=>{"use strict";Object.defineProperty(lwt,"__esModule",{value:!0});lwt.ObjectUnsubscribedError=void 0;var XQc=ple();lwt.ObjectUnsubscribedError=XQc.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var ix=H(Xj=>{"use strict";var Vzi=Xj&&Xj.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),JQc=Xj&&Xj.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Xj,"__esModule",{value:!0});Xj.AnonymousSubject=Xj.Subject=void 0;var Lzi=ub(),dOr=TO(),UQc=gOr(),KQc=ste(),AOr=twt(),Pzi=function(e){Vzi(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var n=new pOr(this,this);return n.operator=r,n},t.prototype._throwIfClosed=function(){if(this.closed)throw new UQc.ObjectUnsubscribedError},t.prototype.next=function(r){var n=this;AOr.errorContext(function(){var a,o;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var l=JQc(n.currentObservers),A=l.next();!A.done;A=l.next()){var f=A.value;f.next(r)}}catch(I){a={error:I}}finally{try{A&&!A.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var n=this;AOr.errorContext(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=r;for(var a=n.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;AOr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var n=r.observers;n.length;)n.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,a=this,o=a.hasError,l=a.isStopped,A=a.observers;return o||l?dOr.EMPTY_SUBSCRIPTION:(this.currentObservers=null,A.push(r),new dOr.Subscription(function(){n.currentObservers=null,KQc.arrRemove(A,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n.thrownError,l=n.isStopped;a?r.error(o):l&&r.complete()},t.prototype.asObservable=function(){var r=new Lzi.Observable;return r.source=this,r},t.create=function(r,n){return new pOr(r,n)},t}(Lzi.Observable);Xj.Subject=Pzi;var pOr=function(e){Vzi(t,e);function t(r,n){var a=e.call(this)||this;return a.destination=r,a.source=n,a}return t.prototype.next=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.next)===null||a===void 0||a.call(n,r)},t.prototype.error=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.error)===null||a===void 0||a.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,a;return(a=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&a!==void 0?a:dOr.EMPTY_SUBSCRIPTION},t}(Pzi);Xj.AnonymousSubject=pOr});var fOr=H(bke=>{"use strict";var jQc=bke&&bke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(bke,"__esModule",{value:!0});bke.BehaviorSubject=void 0;var zQc=ix(),qQc=function(e){jQc(t,e);function t(r){var n=e.call(this)||this;return n._value=r,n}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var n=e.prototype._subscribe.call(this,r);return!n.closed&&r.next(this._value),n},t.prototype.getValue=function(){var r=this,n=r.hasError,a=r.thrownError,o=r._value;if(n)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(zQc.Subject);bke.BehaviorSubject=qQc});var uwt=H(L8e=>{"use strict";Object.defineProperty(L8e,"__esModule",{value:!0});L8e.dateTimestampProvider=void 0;L8e.dateTimestampProvider={now:function(){return(L8e.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var gwt=H(Eke=>{"use strict";var $Qc=Eke&&Eke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Eke,"__esModule",{value:!0});Eke.ReplaySubject=void 0;var eXc=ix(),tXc=uwt(),rXc=function(e){$Qc(t,e);function t(r,n,a){r===void 0&&(r=1/0),n===void 0&&(n=1/0),a===void 0&&(a=tXc.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=n,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=n===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,n),o}return t.prototype.next=function(r){var n=this,a=n.isStopped,o=n._buffer,l=n._infiniteTimeWindow,A=n._timestampProvider,f=n._windowTime;a||(o.push(r),!l&&o.push(A.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,l=a._buffer,A=l.slice(),f=0;f{"use strict";var nXc=Ske&&Ske.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Ske,"__esModule",{value:!0});Ske.AsyncSubject=void 0;var iXc=ix(),sXc=function(e){nXc(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n._hasValue,l=n._value,A=n.thrownError,f=n.isStopped,I=n._isComplete;a?r.error(A):(f||I)&&(o&&r.next(l),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,n=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,n&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(iXc.Subject);Ske.AsyncSubject=sXc});var Wzi=H(vke=>{"use strict";var oXc=vke&&vke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(vke,"__esModule",{value:!0});vke.Action=void 0;var aXc=TO(),cXc=function(e){oXc(t,e);function t(r,n){return e.call(this)||this}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),this},t}(aXc.Subscription);vke.Action=cXc});var Hzi=H(Jj=>{"use strict";var Ozi=Jj&&Jj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Mzi=Jj&&Jj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var lXc=Bke&&Bke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Bke,"__esModule",{value:!0});Bke.AsyncAction=void 0;var uXc=Wzi(),Yzi=Hzi(),gXc=ste(),AXc=function(e){lXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a.pending=!1,a}return t.prototype.schedule=function(r,n){var a;if(n===void 0&&(n=0),this.closed)return this;this.state=r;var o=this.id,l=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(l,o,n)),this.pending=!0,this.delay=n,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(l,this.id,n),this},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),Yzi.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,n,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return n;n!=null&&Yzi.intervalProvider.clearInterval(n)},t.prototype.execute=function(r,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,n);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,n){var a=!1,o;try{this.work(r)}catch(l){a=!0,o=l||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,n=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,gXc.arrRemove(o,this),n!=null&&(this.id=this.recycleAsyncId(a,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(uXc.Action);Bke.AsyncAction=AXc});var Xzi=H(Tke=>{"use strict";Object.defineProperty(Tke,"__esModule",{value:!0});Tke.TestTools=Tke.Immediate=void 0;var dXc=1,IOr,dwt={};function Qzi(e){return e in dwt?(delete dwt[e],!0):!1}Tke.Immediate={setImmediate:function(e){var t=dXc++;return dwt[t]=!0,IOr||(IOr=Promise.resolve()),IOr.then(function(){return Qzi(t)&&e()}),t},clearImmediate:function(e){Qzi(e)}};Tke.TestTools={pending:function(){return Object.keys(dwt).length}}});var Uzi=H(Uj=>{"use strict";var pXc=Uj&&Uj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},fXc=Uj&&Uj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var mXc=Rke&&Rke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Rke,"__esModule",{value:!0});Rke.AsapAction=void 0;var CXc=wke(),Kzi=Uzi(),_Xc=function(e){mXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=Kzi.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(Kzi.immediateProvider.clearImmediate(n),r._scheduled===n&&(r._scheduled=void 0))},t}(CXc.AsyncAction);Rke.AsapAction=_Xc});var hOr=H(pwt=>{"use strict";Object.defineProperty(pwt,"__esModule",{value:!0});pwt.Scheduler=void 0;var yXc=uwt(),bXc=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,n){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(n,r)},e.now=yXc.dateTimestampProvider.now,e}();pwt.Scheduler=bXc});var Dke=H(Nke=>{"use strict";var EXc=Nke&&Nke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Nke,"__esModule",{value:!0});Nke.AsyncScheduler=void 0;var zzi=hOr(),SXc=function(e){EXc(t,e);function t(r,n){n===void 0&&(n=zzi.Scheduler.now);var a=e.call(this,r,n)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var n=this.actions;if(this._active){n.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=n.shift());if(this._active=!1,a){for(;r=n.shift();)r.unsubscribe();throw a}},t}(zzi.Scheduler);Nke.AsyncScheduler=SXc});var qzi=H(kke=>{"use strict";var vXc=kke&&kke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(kke,"__esModule",{value:!0});kke.AsapScheduler=void 0;var BXc=Dke(),wXc=function(e){vXc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(BXc.AsyncScheduler);kke.AsapScheduler=wXc});var $zi=H(g_e=>{"use strict";Object.defineProperty(g_e,"__esModule",{value:!0});g_e.asap=g_e.asapScheduler=void 0;var TXc=jzi(),RXc=qzi();g_e.asapScheduler=new RXc.AsapScheduler(TXc.AsapAction);g_e.asap=g_e.asapScheduler});var FV=H(A_e=>{"use strict";Object.defineProperty(A_e,"__esModule",{value:!0});A_e.async=A_e.asyncScheduler=void 0;var NXc=wke(),DXc=Dke();A_e.asyncScheduler=new DXc.AsyncScheduler(NXc.AsyncAction);A_e.async=A_e.asyncScheduler});var eqi=H(xke=>{"use strict";var kXc=xke&&xke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(xke,"__esModule",{value:!0});xke.QueueAction=void 0;var xXc=wke(),GXc=function(e){kXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),n>0?e.prototype.schedule.call(this,r,n):(this.delay=n,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,n){return n>0||this.closed?e.prototype.execute.call(this,r,n):this._execute(r,n)},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.flush(this),0)},t}(xXc.AsyncAction);xke.QueueAction=GXc});var tqi=H(Gke=>{"use strict";var FXc=Gke&&Gke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Gke,"__esModule",{value:!0});Gke.QueueScheduler=void 0;var ZXc=Dke(),LXc=function(e){FXc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(ZXc.AsyncScheduler);Gke.QueueScheduler=LXc});var rqi=H(d_e=>{"use strict";Object.defineProperty(d_e,"__esModule",{value:!0});d_e.queue=d_e.queueScheduler=void 0;var VXc=eqi(),PXc=tqi();d_e.queueScheduler=new PXc.QueueScheduler(VXc.QueueAction);d_e.queue=d_e.queueScheduler});var iqi=H(Fke=>{"use strict";var WXc=Fke&&Fke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Fke,"__esModule",{value:!0});Fke.AnimationFrameAction=void 0;var OXc=wke(),nqi=uOr(),MXc=function(e){WXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=nqi.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(nqi.animationFrameProvider.cancelAnimationFrame(n),r._scheduled=void 0)},t}(OXc.AsyncAction);Fke.AnimationFrameAction=MXc});var sqi=H(Zke=>{"use strict";var HXc=Zke&&Zke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Zke,"__esModule",{value:!0});Zke.AnimationFrameScheduler=void 0;var YXc=Dke(),QXc=function(e){HXc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(YXc.AsyncScheduler);Zke.AnimationFrameScheduler=QXc});var oqi=H(p_e=>{"use strict";Object.defineProperty(p_e,"__esModule",{value:!0});p_e.animationFrame=p_e.animationFrameScheduler=void 0;var XXc=iqi(),JXc=sqi();p_e.animationFrameScheduler=new JXc.AnimationFrameScheduler(XXc.AnimationFrameAction);p_e.animationFrame=p_e.animationFrameScheduler});var lqi=H(Ile=>{"use strict";var aqi=Ile&&Ile.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Ile,"__esModule",{value:!0});Ile.VirtualAction=Ile.VirtualTimeScheduler=void 0;var UXc=wke(),KXc=TO(),jXc=Dke(),zXc=function(e){aqi(t,e);function t(r,n){r===void 0&&(r=cqi),n===void 0&&(n=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=n,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,n=r.actions,a=r.maxFrames,o,l;(l=n[0])&&l.delay<=a&&(n.shift(),this.frame=l.delay,!(o=l.execute(l.state,l.delay))););if(o){for(;l=n.shift();)l.unsubscribe();throw o}},t.frameTimeFactor=10,t}(jXc.AsyncScheduler);Ile.VirtualTimeScheduler=zXc;var cqi=function(e){aqi(t,e);function t(r,n,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,n)||this;return o.scheduler=r,o.work=n,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,n){if(n===void 0&&(n=0),Number.isFinite(n)){if(!this.id)return e.prototype.schedule.call(this,r,n);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,n)}else return KXc.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,n,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,n,a){a===void 0&&(a=0)},t.prototype._execute=function(r,n){if(this.active===!0)return e.prototype._execute.call(this,r,n)},t.sortActions=function(r,n){return r.delay===n.delay?r.index===n.index?0:r.index>n.index?1:-1:r.delay>n.delay?1:-1},t}(UXc.AsyncAction);Ile.VirtualAction=cqi});var x4=H(f_e=>{"use strict";Object.defineProperty(f_e,"__esModule",{value:!0});f_e.empty=f_e.EMPTY=void 0;var uqi=ub();f_e.EMPTY=new uqi.Observable(function(e){return e.complete()});function qXc(e){return e?$Xc(e):f_e.EMPTY}f_e.empty=qXc;function $Xc(e){return new uqi.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var V8e=H(fwt=>{"use strict";Object.defineProperty(fwt,"__esModule",{value:!0});fwt.isScheduler=void 0;var e4c=Sy();function t4c(e){return e&&e4c.isFunction(e.schedule)}fwt.isScheduler=t4c});var ZV=H(hle=>{"use strict";Object.defineProperty(hle,"__esModule",{value:!0});hle.popNumber=hle.popScheduler=hle.popResultSelector=void 0;var r4c=Sy(),n4c=V8e();function mOr(e){return e[e.length-1]}function i4c(e){return r4c.isFunction(mOr(e))?e.pop():void 0}hle.popResultSelector=i4c;function s4c(e){return n4c.isScheduler(mOr(e))?e.pop():void 0}hle.popScheduler=s4c;function o4c(e,t){return typeof mOr(e)=="number"?e.pop():t}hle.popNumber=o4c});var hwt=H(Iwt=>{"use strict";Object.defineProperty(Iwt,"__esModule",{value:!0});Iwt.isArrayLike=void 0;Iwt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var COr=H(mwt=>{"use strict";Object.defineProperty(mwt,"__esModule",{value:!0});mwt.isPromise=void 0;var a4c=Sy();function c4c(e){return a4c.isFunction(e?.then)}mwt.isPromise=c4c});var _Or=H(Cwt=>{"use strict";Object.defineProperty(Cwt,"__esModule",{value:!0});Cwt.isInteropObservable=void 0;var l4c=x8e(),u4c=Sy();function g4c(e){return u4c.isFunction(e[l4c.observable])}Cwt.isInteropObservable=g4c});var yOr=H(_wt=>{"use strict";Object.defineProperty(_wt,"__esModule",{value:!0});_wt.isAsyncIterable=void 0;var A4c=Sy();function d4c(e){return Symbol.asyncIterator&&A4c.isFunction(e?.[Symbol.asyncIterator])}_wt.isAsyncIterable=d4c});var bOr=H(ywt=>{"use strict";Object.defineProperty(ywt,"__esModule",{value:!0});ywt.createInvalidObservableTypeError=void 0;function p4c(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}ywt.createInvalidObservableTypeError=p4c});var EOr=H(Lke=>{"use strict";Object.defineProperty(Lke,"__esModule",{value:!0});Lke.iterator=Lke.getSymbolIterator=void 0;function gqi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}Lke.getSymbolIterator=gqi;Lke.iterator=gqi()});var SOr=H(bwt=>{"use strict";Object.defineProperty(bwt,"__esModule",{value:!0});bwt.isIterable=void 0;var f4c=EOr(),I4c=Sy();function h4c(e){return I4c.isFunction(e?.[f4c.iterator])}bwt.isIterable=h4c});var Ewt=H(CH=>{"use strict";var m4c=CH&&CH.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]1||A(E,N)})})}function A(E,N){try{f(n[E](N))}catch(B){b(o[0][3],B)}}function f(E){E.value instanceof Vke?Promise.resolve(E.value.v).then(I,C):b(o[0][2],E)}function I(E){A("next",E)}function C(E){A("throw",E)}function b(E,N){E(N),o.shift(),o.length&&A(o[0][0],o[0][1])}};Object.defineProperty(CH,"__esModule",{value:!0});CH.isReadableStreamLike=CH.readableStreamLikeToAsyncGenerator=void 0;var _4c=Sy();function y4c(e){return C4c(this,arguments,function(){var r,n,a,o;return m4c(this,function(l){switch(l.label){case 0:r=e.getReader(),l.label=1;case 1:l.trys.push([1,,9,10]),l.label=2;case 2:return[4,Vke(r.read())];case 3:return n=l.sent(),a=n.value,o=n.done,o?[4,Vke(void 0)]:[3,5];case 4:return[2,l.sent()];case 5:return[4,Vke(a)];case 6:return[4,l.sent()];case 7:return l.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}CH.readableStreamLikeToAsyncGenerator=y4c;function b4c(e){return _4c.isFunction(e?.getReader)}CH.isReadableStreamLike=b4c});var uh=H(G2=>{"use strict";var E4c=G2&&G2.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})},S4c=G2&&G2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(G2,"__esModule",{value:!0});G2.fromReadableStreamLike=G2.fromAsyncIterable=G2.fromIterable=G2.fromPromise=G2.fromArrayLike=G2.fromInteropObservable=G2.innerFrom=void 0;var B4c=hwt(),w4c=COr(),Pke=ub(),T4c=_Or(),R4c=yOr(),N4c=bOr(),D4c=SOr(),Aqi=Ewt(),k4c=Sy(),x4c=nOr(),G4c=x8e();function F4c(e){if(e instanceof Pke.Observable)return e;if(e!=null){if(T4c.isInteropObservable(e))return dqi(e);if(B4c.isArrayLike(e))return pqi(e);if(w4c.isPromise(e))return fqi(e);if(R4c.isAsyncIterable(e))return BOr(e);if(D4c.isIterable(e))return Iqi(e);if(Aqi.isReadableStreamLike(e))return hqi(e)}throw N4c.createInvalidObservableTypeError(e)}G2.innerFrom=F4c;function dqi(e){return new Pke.Observable(function(t){var r=e[G4c.observable]();if(k4c.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}G2.fromInteropObservable=dqi;function pqi(e){return new Pke.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(Swt,"__esModule",{value:!0});Swt.executeSchedule=void 0;function L4c(e,t,r,n,a){n===void 0&&(n=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(o),!a)return o}Swt.executeSchedule=L4c});var Wke=H(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.observeOn=void 0;var wOr=ote(),V4c=qg(),P4c=Cd();function W4c(e,t){return t===void 0&&(t=0),V4c.operate(function(r,n){r.subscribe(P4c.createOperatorSubscriber(n,function(a){return wOr.executeSchedule(n,e,function(){return n.next(a)},t)},function(){return wOr.executeSchedule(n,e,function(){return n.complete()},t)},function(a){return wOr.executeSchedule(n,e,function(){return n.error(a)},t)}))})}vwt.observeOn=W4c});var Oke=H(Bwt=>{"use strict";Object.defineProperty(Bwt,"__esModule",{value:!0});Bwt.subscribeOn=void 0;var O4c=qg();function M4c(e,t){return t===void 0&&(t=0),O4c.operate(function(r,n){n.add(e.schedule(function(){return r.subscribe(n)},t))})}Bwt.subscribeOn=M4c});var mqi=H(wwt=>{"use strict";Object.defineProperty(wwt,"__esModule",{value:!0});wwt.scheduleObservable=void 0;var H4c=uh(),Y4c=Wke(),Q4c=Oke();function X4c(e,t){return H4c.innerFrom(e).pipe(Q4c.subscribeOn(t),Y4c.observeOn(t))}wwt.scheduleObservable=X4c});var Cqi=H(Twt=>{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.schedulePromise=void 0;var J4c=uh(),U4c=Wke(),K4c=Oke();function j4c(e,t){return J4c.innerFrom(e).pipe(K4c.subscribeOn(t),U4c.observeOn(t))}Twt.schedulePromise=j4c});var _qi=H(Rwt=>{"use strict";Object.defineProperty(Rwt,"__esModule",{value:!0});Rwt.scheduleArray=void 0;var z4c=ub();function q4c(e,t){return new z4c.Observable(function(r){var n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}Rwt.scheduleArray=q4c});var TOr=H(Nwt=>{"use strict";Object.defineProperty(Nwt,"__esModule",{value:!0});Nwt.scheduleIterable=void 0;var $4c=ub(),eJc=EOr(),tJc=Sy(),yqi=ote();function rJc(e,t){return new $4c.Observable(function(r){var n;return yqi.executeSchedule(r,t,function(){n=e[eJc.iterator](),yqi.executeSchedule(r,t,function(){var a,o,l;try{a=n.next(),o=a.value,l=a.done}catch(A){r.error(A);return}l?r.complete():r.next(o)},0,!0)}),function(){return tJc.isFunction(n?.return)&&n.return()}})}Nwt.scheduleIterable=rJc});var ROr=H(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.scheduleAsyncIterable=void 0;var nJc=ub(),bqi=ote();function iJc(e,t){if(!e)throw new Error("Iterable cannot be null");return new nJc.Observable(function(r){bqi.executeSchedule(r,t,function(){var n=e[Symbol.asyncIterator]();bqi.executeSchedule(r,t,function(){n.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}Dwt.scheduleAsyncIterable=iJc});var Eqi=H(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.scheduleReadableStreamLike=void 0;var sJc=ROr(),oJc=Ewt();function aJc(e,t){return sJc.scheduleAsyncIterable(oJc.readableStreamLikeToAsyncGenerator(e),t)}kwt.scheduleReadableStreamLike=aJc});var NOr=H(xwt=>{"use strict";Object.defineProperty(xwt,"__esModule",{value:!0});xwt.scheduled=void 0;var cJc=mqi(),lJc=Cqi(),uJc=_qi(),gJc=TOr(),AJc=ROr(),dJc=_Or(),pJc=COr(),fJc=hwt(),IJc=SOr(),hJc=yOr(),mJc=bOr(),CJc=Ewt(),_Jc=Eqi();function yJc(e,t){if(e!=null){if(dJc.isInteropObservable(e))return cJc.scheduleObservable(e,t);if(fJc.isArrayLike(e))return uJc.scheduleArray(e,t);if(pJc.isPromise(e))return lJc.schedulePromise(e,t);if(hJc.isAsyncIterable(e))return AJc.scheduleAsyncIterable(e,t);if(IJc.isIterable(e))return gJc.scheduleIterable(e,t);if(CJc.isReadableStreamLike(e))return _Jc.scheduleReadableStreamLike(e,t)}throw mJc.createInvalidObservableTypeError(e)}xwt.scheduled=yJc});var ate=H(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.from=void 0;var bJc=NOr(),EJc=uh();function SJc(e,t){return t?bJc.scheduled(e,t):EJc.innerFrom(e)}Gwt.from=SJc});var Zwt=H(Fwt=>{"use strict";Object.defineProperty(Fwt,"__esModule",{value:!0});Fwt.of=void 0;var vJc=ZV(),BJc=ate();function wJc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(Lwt,"__esModule",{value:!0});Lwt.throwError=void 0;var TJc=ub(),RJc=Sy();function NJc(e,t){var r=RJc.isFunction(e)?e:function(){return e},n=function(a){return a.error(r())};return new TJc.Observable(t?function(a){return t.schedule(n,0,a)}:n)}Lwt.throwError=NJc});var Vwt=H(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});cte.observeNotification=cte.Notification=cte.NotificationKind=void 0;var DJc=x4(),kJc=Zwt(),xJc=DOr(),GJc=Sy(),FJc;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(FJc=cte.NotificationKind||(cte.NotificationKind={}));var ZJc=function(){function e(t,r,n){this.kind=t,this.value=r,this.error=n,this.hasValue=t==="N"}return e.prototype.observe=function(t){return Sqi(this,t)},e.prototype.do=function(t,r,n){var a=this,o=a.kind,l=a.value,A=a.error;return o==="N"?t?.(l):o==="E"?r?.(A):n?.()},e.prototype.accept=function(t,r,n){var a;return GJc.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,n)},e.prototype.toObservable=function(){var t=this,r=t.kind,n=t.value,a=t.error,o=r==="N"?kJc.of(n):r==="E"?xJc.throwError(function(){return a}):r==="C"?DJc.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();cte.Notification=ZJc;function Sqi(e,t){var r,n,a,o=e,l=o.kind,A=o.value,f=o.error;if(typeof l!="string")throw new TypeError('Invalid notification, missing "kind"');l==="N"?(r=t.next)===null||r===void 0||r.call(t,A):l==="E"?(n=t.error)===null||n===void 0||n.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}cte.observeNotification=Sqi});var Bqi=H(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.isObservable=void 0;var LJc=ub(),vqi=Sy();function VJc(e){return!!e&&(e instanceof LJc.Observable||vqi.isFunction(e.lift)&&vqi.isFunction(e.subscribe))}Pwt.isObservable=VJc});var mle=H(Wwt=>{"use strict";Object.defineProperty(Wwt,"__esModule",{value:!0});Wwt.EmptyError=void 0;var PJc=ple();Wwt.EmptyError=PJc.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var wqi=H(Owt=>{"use strict";Object.defineProperty(Owt,"__esModule",{value:!0});Owt.lastValueFrom=void 0;var WJc=mle();function OJc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=!1,l;e.subscribe({next:function(A){l=A,o=!0},error:a,complete:function(){o?n(l):r?n(t.defaultValue):a(new WJc.EmptyError)}})})}Owt.lastValueFrom=OJc});var Tqi=H(Mwt=>{"use strict";Object.defineProperty(Mwt,"__esModule",{value:!0});Mwt.firstValueFrom=void 0;var MJc=mle(),HJc=mke();function YJc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=new HJc.SafeSubscriber({next:function(l){n(l),o.unsubscribe()},error:a,complete:function(){r?n(t.defaultValue):a(new MJc.EmptyError)}});e.subscribe(o)})}Mwt.firstValueFrom=YJc});var kOr=H(Hwt=>{"use strict";Object.defineProperty(Hwt,"__esModule",{value:!0});Hwt.ArgumentOutOfRangeError=void 0;var QJc=ple();Hwt.ArgumentOutOfRangeError=QJc.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var xOr=H(Ywt=>{"use strict";Object.defineProperty(Ywt,"__esModule",{value:!0});Ywt.NotFoundError=void 0;var XJc=ple();Ywt.NotFoundError=XJc.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var GOr=H(Qwt=>{"use strict";Object.defineProperty(Qwt,"__esModule",{value:!0});Qwt.SequenceError=void 0;var JJc=ple();Qwt.SequenceError=JJc.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var Jwt=H(Xwt=>{"use strict";Object.defineProperty(Xwt,"__esModule",{value:!0});Xwt.isValidDate=void 0;function UJc(e){return e instanceof Date&&!isNaN(e)}Xwt.isValidDate=UJc});var P8e=H(I_e=>{"use strict";Object.defineProperty(I_e,"__esModule",{value:!0});I_e.timeout=I_e.TimeoutError=void 0;var KJc=FV(),jJc=Jwt(),zJc=qg(),qJc=uh(),$Jc=ple(),eUc=Cd(),tUc=ote();I_e.TimeoutError=$Jc.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function rUc(e,t){var r=jJc.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,n=r.first,a=r.each,o=r.with,l=o===void 0?nUc:o,A=r.scheduler,f=A===void 0?t??KJc.asyncScheduler:A,I=r.meta,C=I===void 0?null:I;if(n==null&&a==null)throw new TypeError("No timeout provided.");return zJc.operate(function(b,E){var N,B,F=null,Q=0,X=function(ae){B=tUc.executeSchedule(E,f,function(){try{N.unsubscribe(),qJc.innerFrom(l({meta:C,lastValue:F,seen:Q})).subscribe(E)}catch(ne){E.error(ne)}},ae)};N=b.subscribe(eUc.createOperatorSubscriber(E,function(ae){B?.unsubscribe(),Q++,E.next(F=ae),a>0&&X(a)},void 0,void 0,function(){B?.closed||B?.unsubscribe(),F=null})),!Q&&X(n!=null?typeof n=="number"?n:+n-f.now():a)})}I_e.timeout=rUc;function nUc(e){throw new I_e.TimeoutError(e)}});var lte=H(Uwt=>{"use strict";Object.defineProperty(Uwt,"__esModule",{value:!0});Uwt.map=void 0;var iUc=qg(),sUc=Cd();function oUc(e,t){return iUc.operate(function(r,n){var a=0;r.subscribe(sUc.createOperatorSubscriber(n,function(o){n.next(e.call(t,o,a++))}))})}Uwt.map=oUc});var _le=H(Cle=>{"use strict";var aUc=Cle&&Cle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},cUc=Cle&&Cle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var dUc=yle&&yle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Rqi=yle&&yle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(Kwt,"__esModule",{value:!0});Kwt.bindCallback=void 0;var _Uc=ZOr();function yUc(e,t,r){return _Uc.bindCallbackInternals(!1,e,t,r)}Kwt.bindCallback=yUc});var Dqi=H(jwt=>{"use strict";Object.defineProperty(jwt,"__esModule",{value:!0});jwt.bindNodeCallback=void 0;var bUc=ZOr();function EUc(e,t,r){return bUc.bindCallbackInternals(!0,e,t,r)}jwt.bindNodeCallback=EUc});var LOr=H(zwt=>{"use strict";Object.defineProperty(zwt,"__esModule",{value:!0});zwt.argsArgArrayOrObject=void 0;var SUc=Array.isArray,vUc=Object.getPrototypeOf,BUc=Object.prototype,wUc=Object.keys;function TUc(e){if(e.length===1){var t=e[0];if(SUc(t))return{args:t,keys:null};if(RUc(t)){var r=wUc(t);return{args:r.map(function(n){return t[n]}),keys:r}}}return{args:e,keys:null}}zwt.argsArgArrayOrObject=TUc;function RUc(e){return e&&typeof e=="object"&&vUc(e)===BUc}});var VOr=H(qwt=>{"use strict";Object.defineProperty(qwt,"__esModule",{value:!0});qwt.createObject=void 0;function NUc(e,t){return e.reduce(function(r,n,a){return r[n]=t[a],r},{})}qwt.createObject=NUc});var $wt=H(Mke=>{"use strict";Object.defineProperty(Mke,"__esModule",{value:!0});Mke.combineLatestInit=Mke.combineLatest=void 0;var DUc=ub(),kUc=LOr(),Gqi=ate(),Fqi=nx(),xUc=_le(),kqi=ZV(),GUc=VOr(),FUc=Cd(),ZUc=ote();function LUc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(eTt,"__esModule",{value:!0});eTt.mergeInternals=void 0;var VUc=uh(),PUc=ote(),Lqi=Cd();function WUc(e,t,r,n,a,o,l,A){var f=[],I=0,C=0,b=!1,E=function(){b&&!f.length&&!I&&t.complete()},N=function(F){return I{"use strict";Object.defineProperty(rTt,"__esModule",{value:!0});rTt.mergeMap=void 0;var OUc=lte(),MUc=uh(),HUc=qg(),YUc=tTt(),QUc=Sy();function Vqi(e,t,r){return r===void 0&&(r=1/0),QUc.isFunction(t)?Vqi(function(n,a){return OUc.map(function(o,l){return t(n,o,a,l)})(MUc.innerFrom(e(n,a)))},r):(typeof t=="number"&&(r=t),HUc.operate(function(n,a){return YUc.mergeInternals(n,a,e,r)}))}rTt.mergeMap=Vqi});var Hke=H(nTt=>{"use strict";Object.defineProperty(nTt,"__esModule",{value:!0});nTt.mergeAll=void 0;var XUc=Kj(),JUc=nx();function UUc(e){return e===void 0&&(e=1/0),XUc.mergeMap(JUc.identity,e)}nTt.mergeAll=UUc});var W8e=H(iTt=>{"use strict";Object.defineProperty(iTt,"__esModule",{value:!0});iTt.concatAll=void 0;var KUc=Hke();function jUc(){return KUc.mergeAll(1)}iTt.concatAll=jUc});var O8e=H(sTt=>{"use strict";Object.defineProperty(sTt,"__esModule",{value:!0});sTt.concat=void 0;var zUc=W8e(),qUc=ZV(),$Uc=ate();function eKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(oTt,"__esModule",{value:!0});oTt.defer=void 0;var tKc=ub(),rKc=uh();function nKc(e){return new tKc.Observable(function(t){rKc.innerFrom(e()).subscribe(t)})}oTt.defer=nKc});var Pqi=H(aTt=>{"use strict";Object.defineProperty(aTt,"__esModule",{value:!0});aTt.connectable=void 0;var iKc=ix(),sKc=ub(),oKc=M8e(),aKc={connector:function(){return new iKc.Subject},resetOnDisconnect:!0};function cKc(e,t){t===void 0&&(t=aKc);var r=null,n=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,l=n(),A=new sKc.Observable(function(f){return l.subscribe(f)});return A.connect=function(){return(!r||r.closed)&&(r=oKc.defer(function(){return e}).subscribe(l),o&&r.add(function(){return l=n()})),r},A}aTt.connectable=cKc});var Wqi=H(cTt=>{"use strict";Object.defineProperty(cTt,"__esModule",{value:!0});cTt.forkJoin=void 0;var lKc=ub(),uKc=LOr(),gKc=uh(),AKc=ZV(),dKc=Cd(),pKc=_le(),fKc=VOr();function IKc(){for(var e=[],t=0;t{"use strict";var hKc=Yke&&Yke.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o};Object.defineProperty(Yke,"__esModule",{value:!0});Yke.fromEvent=void 0;var mKc=uh(),CKc=ub(),_Kc=Kj(),yKc=hwt(),h_e=Sy(),bKc=_le(),EKc=["addListener","removeListener"],SKc=["addEventListener","removeEventListener"],vKc=["on","off"];function POr(e,t,r,n){if(h_e.isFunction(r)&&(n=r,r=void 0),n)return POr(e,t,r).pipe(bKc.mapOneOrManyArgs(n));var a=hKc(TKc(e)?SKc.map(function(A){return function(f){return e[A](t,f,r)}}):BKc(e)?EKc.map(Oqi(e,t)):wKc(e)?vKc.map(Oqi(e,t)):[],2),o=a[0],l=a[1];if(!o&&yKc.isArrayLike(e))return _Kc.mergeMap(function(A){return POr(A,t,r)})(mKc.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new CKc.Observable(function(A){var f=function(){for(var I=[],C=0;C{"use strict";Object.defineProperty(lTt,"__esModule",{value:!0});lTt.fromEventPattern=void 0;var RKc=ub(),NKc=Sy(),DKc=_le();function Hqi(e,t,r){return r?Hqi(e,t).pipe(DKc.mapOneOrManyArgs(r)):new RKc.Observable(function(n){var a=function(){for(var l=[],A=0;A{"use strict";var kKc=Qke&&Qke.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]{"use strict";Object.defineProperty(uTt,"__esModule",{value:!0});uTt.iif=void 0;var LKc=M8e();function VKc(e,t,r){return LKc.defer(function(){return e()?t:r})}uTt.iif=VKc});var ble=H(gTt=>{"use strict";Object.defineProperty(gTt,"__esModule",{value:!0});gTt.timer=void 0;var PKc=ub(),WKc=FV(),OKc=V8e(),MKc=Jwt();function HKc(e,t,r){e===void 0&&(e=0),r===void 0&&(r=WKc.async);var n=-1;return t!=null&&(OKc.isScheduler(t)?r=t:n=t),new PKc.Observable(function(a){var o=MKc.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var l=0;return r.schedule(function(){a.closed||(a.next(l++),0<=n?this.schedule(void 0,n):a.complete())},o)})}gTt.timer=HKc});var WOr=H(ATt=>{"use strict";Object.defineProperty(ATt,"__esModule",{value:!0});ATt.interval=void 0;var YKc=FV(),QKc=ble();function XKc(e,t){return e===void 0&&(e=0),t===void 0&&(t=YKc.asyncScheduler),e<0&&(e=0),QKc.timer(e,e,t)}ATt.interval=XKc});var Kqi=H(dTt=>{"use strict";Object.defineProperty(dTt,"__esModule",{value:!0});dTt.merge=void 0;var JKc=Hke(),UKc=uh(),KKc=x4(),Uqi=ZV(),jKc=ate();function zKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(m_e,"__esModule",{value:!0});m_e.never=m_e.NEVER=void 0;var qKc=ub(),$Kc=rx();m_e.NEVER=new qKc.Observable($Kc.noop);function e8c(){return m_e.NEVER}m_e.never=e8c});var Ele=H(pTt=>{"use strict";Object.defineProperty(pTt,"__esModule",{value:!0});pTt.argsOrArgArray=void 0;var t8c=Array.isArray;function r8c(e){return e.length===1&&t8c(e[0])?e[0]:e}pTt.argsOrArgArray=r8c});var MOr=H(fTt=>{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.onErrorResumeNext=void 0;var n8c=ub(),i8c=Ele(),s8c=Cd(),jqi=rx(),o8c=uh();function a8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(ITt,"__esModule",{value:!0});ITt.pairs=void 0;var c8c=ate();function l8c(e,t){return c8c.from(Object.entries(e),t)}ITt.pairs=l8c});var HOr=H(hTt=>{"use strict";Object.defineProperty(hTt,"__esModule",{value:!0});hTt.not=void 0;function u8c(e,t){return function(r,n){return!e.call(t,r,n)}}hTt.not=u8c});var ute=H(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.filter=void 0;var g8c=qg(),A8c=Cd();function d8c(e,t){return g8c.operate(function(r,n){var a=0;r.subscribe(A8c.createOperatorSubscriber(n,function(o){return e.call(t,o,a++)&&n.next(o)}))})}mTt.filter=d8c});var e$i=H(CTt=>{"use strict";Object.defineProperty(CTt,"__esModule",{value:!0});CTt.partition=void 0;var p8c=HOr(),qqi=ute(),$qi=uh();function f8c(e,t,r){return[qqi.filter(t,r)($qi.innerFrom(e)),qqi.filter(p8c.not(t,r))($qi.innerFrom(e))]}CTt.partition=f8c});var YOr=H(Xke=>{"use strict";Object.defineProperty(Xke,"__esModule",{value:!0});Xke.raceInit=Xke.race=void 0;var I8c=ub(),t$i=uh(),h8c=Ele(),m8c=Cd();function C8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(_Tt,"__esModule",{value:!0});_Tt.range=void 0;var _8c=ub(),y8c=x4();function b8c(e,t,r){if(t==null&&(t=e,e=0),t<=0)return y8c.EMPTY;var n=t+e;return new _8c.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(yTt,"__esModule",{value:!0});yTt.using=void 0;var E8c=ub(),S8c=uh(),v8c=x4();function B8c(e,t){return new E8c.Observable(function(r){var n=e(),a=t(n),o=a?S8c.innerFrom(a):v8c.EMPTY;return o.subscribe(r),function(){n&&n.unsubscribe()}})}yTt.using=B8c});var bTt=H(Sle=>{"use strict";var w8c=Sle&&Sle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},T8c=Sle&&Sle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(s$i,"__esModule",{value:!0})});var STt=H(ETt=>{"use strict";Object.defineProperty(ETt,"__esModule",{value:!0});ETt.audit=void 0;var Z8c=qg(),L8c=uh(),a$i=Cd();function V8c(e){return Z8c.operate(function(t,r){var n=!1,a=null,o=null,l=!1,A=function(){if(o?.unsubscribe(),o=null,n){n=!1;var I=a;a=null,r.next(I)}l&&r.complete()},f=function(){o=null,l&&r.complete()};t.subscribe(a$i.createOperatorSubscriber(r,function(I){n=!0,a=I,o||L8c.innerFrom(e(I)).subscribe(o=a$i.createOperatorSubscriber(r,A,f))},function(){l=!0,(!n||!o||o.closed)&&r.complete()}))})}ETt.audit=V8c});var QOr=H(vTt=>{"use strict";Object.defineProperty(vTt,"__esModule",{value:!0});vTt.auditTime=void 0;var P8c=FV(),W8c=STt(),O8c=ble();function M8c(e,t){return t===void 0&&(t=P8c.asyncScheduler),W8c.audit(function(){return O8c.timer(e,t)})}vTt.auditTime=M8c});var XOr=H(BTt=>{"use strict";Object.defineProperty(BTt,"__esModule",{value:!0});BTt.buffer=void 0;var H8c=qg(),Y8c=rx(),c$i=Cd(),Q8c=uh();function X8c(e){return H8c.operate(function(t,r){var n=[];return t.subscribe(c$i.createOperatorSubscriber(r,function(a){return n.push(a)},function(){r.next(n),r.complete()})),Q8c.innerFrom(e).subscribe(c$i.createOperatorSubscriber(r,function(){var a=n;n=[],r.next(a)},Y8c.noop)),function(){n=null}})}BTt.buffer=X8c});var UOr=H(Jke=>{"use strict";var JOr=Jke&&Jke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Jke,"__esModule",{value:!0});Jke.bufferCount=void 0;var J8c=qg(),U8c=Cd(),K8c=ste();function j8c(e,t){return t===void 0&&(t=null),t=t??e,J8c.operate(function(r,n){var a=[],o=0;r.subscribe(U8c.createOperatorSubscriber(n,function(l){var A,f,I,C,b=null;o++%t===0&&a.push([]);try{for(var E=JOr(a),N=E.next();!N.done;N=E.next()){var B=N.value;B.push(l),e<=B.length&&(b=b??[],b.push(B))}}catch(X){A={error:X}}finally{try{N&&!N.done&&(f=E.return)&&f.call(E)}finally{if(A)throw A.error}}if(b)try{for(var F=JOr(b),Q=F.next();!Q.done;Q=F.next()){var B=Q.value;K8c.arrRemove(a,B),n.next(B)}}catch(X){I={error:X}}finally{try{Q&&!Q.done&&(C=F.return)&&C.call(F)}finally{if(I)throw I.error}}},function(){var l,A;try{for(var f=JOr(a),I=f.next();!I.done;I=f.next()){var C=I.value;n.next(C)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}n.complete()},void 0,function(){a=null}))})}Jke.bufferCount=j8c});var KOr=H(Uke=>{"use strict";var z8c=Uke&&Uke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Uke,"__esModule",{value:!0});Uke.bufferTime=void 0;var q8c=TO(),$8c=qg(),ejc=Cd(),tjc=ste(),rjc=FV(),njc=ZV(),l$i=ote();function ijc(e){for(var t,r,n=[],a=1;a=0?l$i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=ejc.createOperatorSubscriber(I,function(F){var Q,X,ae=C.slice();try{for(var ne=z8c(ae),ce=ne.next();!ce.done;ce=ne.next()){var fe=ce.value,ue=fe.buffer;ue.push(F),A<=ue.length&&E(fe)}}catch(de){Q={error:de}}finally{try{ce&&!ce.done&&(X=ne.return)&&X.call(ne)}finally{if(Q)throw Q.error}}},function(){for(;C?.length;)I.next(C.shift().buffer);B?.unsubscribe(),I.complete(),I.unsubscribe()},void 0,function(){return C=null});f.subscribe(B)})}Uke.bufferTime=ijc});var zOr=H(Kke=>{"use strict";var sjc=Kke&&Kke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Kke,"__esModule",{value:!0});Kke.bufferToggle=void 0;var ojc=TO(),ajc=qg(),u$i=uh(),jOr=Cd(),g$i=rx(),cjc=ste();function ljc(e,t){return ajc.operate(function(r,n){var a=[];u$i.innerFrom(e).subscribe(jOr.createOperatorSubscriber(n,function(o){var l=[];a.push(l);var A=new ojc.Subscription,f=function(){cjc.arrRemove(a,l),n.next(l),A.unsubscribe()};A.add(u$i.innerFrom(t(o)).subscribe(jOr.createOperatorSubscriber(n,f,g$i.noop)))},g$i.noop)),r.subscribe(jOr.createOperatorSubscriber(n,function(o){var l,A;try{for(var f=sjc(a),I=f.next();!I.done;I=f.next()){var C=I.value;C.push(o)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}},function(){for(;a.length>0;)n.next(a.shift());n.complete()}))})}Kke.bufferToggle=ljc});var qOr=H(wTt=>{"use strict";Object.defineProperty(wTt,"__esModule",{value:!0});wTt.bufferWhen=void 0;var ujc=qg(),gjc=rx(),A$i=Cd(),Ajc=uh();function djc(e){return ujc.operate(function(t,r){var n=null,a=null,o=function(){a?.unsubscribe();var l=n;n=[],l&&r.next(l),Ajc.innerFrom(e()).subscribe(a=A$i.createOperatorSubscriber(r,o,gjc.noop))};o(),t.subscribe(A$i.createOperatorSubscriber(r,function(l){return n?.push(l)},function(){n&&r.next(n),r.complete()},void 0,function(){return n=a=null}))})}wTt.bufferWhen=djc});var $Or=H(TTt=>{"use strict";Object.defineProperty(TTt,"__esModule",{value:!0});TTt.catchError=void 0;var pjc=uh(),fjc=Cd(),Ijc=qg();function d$i(e){return Ijc.operate(function(t,r){var n=null,a=!1,o;n=t.subscribe(fjc.createOperatorSubscriber(r,void 0,void 0,function(l){o=pjc.innerFrom(e(l,d$i(e)(t))),n?(n.unsubscribe(),n=null,o.subscribe(r)):a=!0})),a&&(n.unsubscribe(),n=null,o.subscribe(r))})}TTt.catchError=d$i});var e3r=H(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.scanInternals=void 0;var hjc=Cd();function mjc(e,t,r,n,a){return function(o,l){var A=r,f=t,I=0;o.subscribe(hjc.createOperatorSubscriber(l,function(C){var b=I++;f=A?e(f,C,b):(A=!0,C),n&&l.next(f)},a&&function(){A&&l.next(f),l.complete()}))}}RTt.scanInternals=mjc});var C_e=H(NTt=>{"use strict";Object.defineProperty(NTt,"__esModule",{value:!0});NTt.reduce=void 0;var Cjc=e3r(),_jc=qg();function yjc(e,t){return _jc.operate(Cjc.scanInternals(e,t,arguments.length>=2,!1,!0))}NTt.reduce=yjc});var kTt=H(DTt=>{"use strict";Object.defineProperty(DTt,"__esModule",{value:!0});DTt.toArray=void 0;var bjc=C_e(),Ejc=qg(),Sjc=function(e,t){return e.push(t),e};function vjc(){return Ejc.operate(function(e,t){bjc.reduce(Sjc,[])(e).subscribe(t)})}DTt.toArray=vjc});var t3r=H(xTt=>{"use strict";Object.defineProperty(xTt,"__esModule",{value:!0});xTt.joinAllInternals=void 0;var Bjc=nx(),wjc=_le(),Tjc=G8e(),Rjc=Kj(),Njc=kTt();function Djc(e,t){return Tjc.pipe(Njc.toArray(),Rjc.mergeMap(function(r){return e(r)}),t?wjc.mapOneOrManyArgs(t):Bjc.identity)}xTt.joinAllInternals=Djc});var FTt=H(GTt=>{"use strict";Object.defineProperty(GTt,"__esModule",{value:!0});GTt.combineLatestAll=void 0;var kjc=$wt(),xjc=t3r();function Gjc(e){return xjc.joinAllInternals(kjc.combineLatest,e)}GTt.combineLatestAll=Gjc});var r3r=H(ZTt=>{"use strict";Object.defineProperty(ZTt,"__esModule",{value:!0});ZTt.combineAll=void 0;var Fjc=FTt();ZTt.combineAll=Fjc.combineLatestAll});var n3r=H(vle=>{"use strict";var p$i=vle&&vle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},f$i=vle&&vle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Mjc=Ble&&Ble.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Hjc=Ble&&Ble.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(LTt,"__esModule",{value:!0});LTt.concatMap=void 0;var h$i=Kj(),Xjc=Sy();function Jjc(e,t){return Xjc.isFunction(t)?h$i.mergeMap(e,t,1):h$i.mergeMap(e,1)}LTt.concatMap=Jjc});var s3r=H(PTt=>{"use strict";Object.defineProperty(PTt,"__esModule",{value:!0});PTt.concatMapTo=void 0;var m$i=VTt(),Ujc=Sy();function Kjc(e,t){return Ujc.isFunction(t)?m$i.concatMap(function(){return e},t):m$i.concatMap(function(){return e})}PTt.concatMapTo=Kjc});var o3r=H(wle=>{"use strict";var jjc=wle&&wle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},zjc=wle&&wle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var n6c=Tle&&Tle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},i6c=Tle&&Tle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.fromSubscribable=void 0;var a6c=ub();function c6c(e){return new a6c.Observable(function(t){return e.subscribe(t)})}WTt.fromSubscribable=c6c});var H8e=H(OTt=>{"use strict";Object.defineProperty(OTt,"__esModule",{value:!0});OTt.connect=void 0;var l6c=ix(),u6c=uh(),g6c=qg(),A6c=C$i(),d6c={connector:function(){return new l6c.Subject}};function p6c(e,t){t===void 0&&(t=d6c);var r=t.connector;return g6c.operate(function(n,a){var o=r();u6c.innerFrom(e(A6c.fromSubscribable(o))).subscribe(a),a.add(n.subscribe(o))})}OTt.connect=p6c});var c3r=H(MTt=>{"use strict";Object.defineProperty(MTt,"__esModule",{value:!0});MTt.count=void 0;var f6c=C_e();function I6c(e){return f6c.reduce(function(t,r,n){return!e||e(r,n)?t+1:t},0)}MTt.count=I6c});var l3r=H(HTt=>{"use strict";Object.defineProperty(HTt,"__esModule",{value:!0});HTt.debounce=void 0;var h6c=qg(),m6c=rx(),_$i=Cd(),C6c=uh();function _6c(e){return h6c.operate(function(t,r){var n=!1,a=null,o=null,l=function(){if(o?.unsubscribe(),o=null,n){n=!1;var A=a;a=null,r.next(A)}};t.subscribe(_$i.createOperatorSubscriber(r,function(A){o?.unsubscribe(),n=!0,a=A,o=_$i.createOperatorSubscriber(r,l,m6c.noop),C6c.innerFrom(e(A)).subscribe(o)},function(){l(),r.complete()},void 0,function(){a=o=null}))})}HTt.debounce=_6c});var u3r=H(YTt=>{"use strict";Object.defineProperty(YTt,"__esModule",{value:!0});YTt.debounceTime=void 0;var y6c=FV(),b6c=qg(),E6c=Cd();function S6c(e,t){return t===void 0&&(t=y6c.asyncScheduler),b6c.operate(function(r,n){var a=null,o=null,l=null,A=function(){if(a){a.unsubscribe(),a=null;var I=o;o=null,n.next(I)}};function f(){var I=l+e,C=t.now();if(C{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.defaultIfEmpty=void 0;var v6c=qg(),B6c=Cd();function w6c(e){return v6c.operate(function(t,r){var n=!1;t.subscribe(B6c.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){n||r.next(e),r.complete()}))})}QTt.defaultIfEmpty=w6c});var zke=H(XTt=>{"use strict";Object.defineProperty(XTt,"__esModule",{value:!0});XTt.take=void 0;var T6c=x4(),R6c=qg(),N6c=Cd();function D6c(e){return e<=0?function(){return T6c.EMPTY}:R6c.operate(function(t,r){var n=0;t.subscribe(N6c.createOperatorSubscriber(r,function(a){++n<=e&&(r.next(a),e<=n&&r.complete())}))})}XTt.take=D6c});var UTt=H(JTt=>{"use strict";Object.defineProperty(JTt,"__esModule",{value:!0});JTt.ignoreElements=void 0;var k6c=qg(),x6c=Cd(),G6c=rx();function F6c(){return k6c.operate(function(e,t){e.subscribe(x6c.createOperatorSubscriber(t,G6c.noop))})}JTt.ignoreElements=F6c});var jTt=H(KTt=>{"use strict";Object.defineProperty(KTt,"__esModule",{value:!0});KTt.mapTo=void 0;var Z6c=lte();function L6c(e){return Z6c.map(function(){return e})}KTt.mapTo=L6c});var qTt=H(zTt=>{"use strict";Object.defineProperty(zTt,"__esModule",{value:!0});zTt.delayWhen=void 0;var V6c=O8e(),y$i=zke(),P6c=UTt(),W6c=jTt(),O6c=Kj(),M6c=uh();function b$i(e,t){return t?function(r){return V6c.concat(t.pipe(y$i.take(1),P6c.ignoreElements()),r.pipe(b$i(e)))}:O6c.mergeMap(function(r,n){return M6c.innerFrom(e(r,n)).pipe(y$i.take(1),W6c.mapTo(r))})}zTt.delayWhen=b$i});var g3r=H($Tt=>{"use strict";Object.defineProperty($Tt,"__esModule",{value:!0});$Tt.delay=void 0;var H6c=FV(),Y6c=qTt(),Q6c=ble();function X6c(e,t){t===void 0&&(t=H6c.asyncScheduler);var r=Q6c.timer(e,t);return Y6c.delayWhen(function(){return r})}$Tt.delay=X6c});var A3r=H(eRt=>{"use strict";Object.defineProperty(eRt,"__esModule",{value:!0});eRt.dematerialize=void 0;var J6c=Vwt(),U6c=qg(),K6c=Cd();function j6c(){return U6c.operate(function(e,t){e.subscribe(K6c.createOperatorSubscriber(t,function(r){return J6c.observeNotification(r,t)}))})}eRt.dematerialize=j6c});var d3r=H(tRt=>{"use strict";Object.defineProperty(tRt,"__esModule",{value:!0});tRt.distinct=void 0;var z6c=qg(),E$i=Cd(),q6c=rx(),$6c=uh();function e7c(e,t){return z6c.operate(function(r,n){var a=new Set;r.subscribe(E$i.createOperatorSubscriber(n,function(o){var l=e?e(o):o;a.has(l)||(a.add(l),n.next(o))})),t&&$6c.innerFrom(t).subscribe(E$i.createOperatorSubscriber(n,function(){return a.clear()},q6c.noop))})}tRt.distinct=e7c});var nRt=H(rRt=>{"use strict";Object.defineProperty(rRt,"__esModule",{value:!0});rRt.distinctUntilChanged=void 0;var t7c=nx(),r7c=qg(),n7c=Cd();function i7c(e,t){return t===void 0&&(t=t7c.identity),e=e??s7c,r7c.operate(function(r,n){var a,o=!0;r.subscribe(n7c.createOperatorSubscriber(n,function(l){var A=t(l);(o||!e(a,A))&&(o=!1,a=A,n.next(l))}))})}rRt.distinctUntilChanged=i7c;function s7c(e,t){return e===t}});var p3r=H(iRt=>{"use strict";Object.defineProperty(iRt,"__esModule",{value:!0});iRt.distinctUntilKeyChanged=void 0;var o7c=nRt();function a7c(e,t){return o7c.distinctUntilChanged(function(r,n){return t?t(r[e],n[e]):r[e]===n[e]})}iRt.distinctUntilKeyChanged=a7c});var qke=H(sRt=>{"use strict";Object.defineProperty(sRt,"__esModule",{value:!0});sRt.throwIfEmpty=void 0;var c7c=mle(),l7c=qg(),u7c=Cd();function g7c(e){return e===void 0&&(e=A7c),l7c.operate(function(t,r){var n=!1;t.subscribe(u7c.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){return n?r.complete():r.error(e())}))})}sRt.throwIfEmpty=g7c;function A7c(){return new c7c.EmptyError}});var f3r=H(oRt=>{"use strict";Object.defineProperty(oRt,"__esModule",{value:!0});oRt.elementAt=void 0;var S$i=kOr(),d7c=ute(),p7c=qke(),f7c=jke(),I7c=zke();function h7c(e,t){if(e<0)throw new S$i.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(n){return n.pipe(d7c.filter(function(a,o){return o===e}),I7c.take(1),r?f7c.defaultIfEmpty(t):p7c.throwIfEmpty(function(){return new S$i.ArgumentOutOfRangeError}))}}oRt.elementAt=h7c});var I3r=H(Rle=>{"use strict";var m7c=Rle&&Rle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},C7c=Rle&&Rle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(aRt,"__esModule",{value:!0});aRt.every=void 0;var E7c=qg(),S7c=Cd();function v7c(e,t){return E7c.operate(function(r,n){var a=0;r.subscribe(S7c.createOperatorSubscriber(n,function(o){e.call(t,o,a++,r)||(n.next(!1),n.complete())},function(){n.next(!0),n.complete()}))})}aRt.every=v7c});var lRt=H(cRt=>{"use strict";Object.defineProperty(cRt,"__esModule",{value:!0});cRt.exhaustMap=void 0;var B7c=lte(),v$i=uh(),w7c=qg(),B$i=Cd();function w$i(e,t){return t?function(r){return r.pipe(w$i(function(n,a){return v$i.innerFrom(e(n,a)).pipe(B7c.map(function(o,l){return t(n,o,a,l)}))}))}:w7c.operate(function(r,n){var a=0,o=null,l=!1;r.subscribe(B$i.createOperatorSubscriber(n,function(A){o||(o=B$i.createOperatorSubscriber(n,void 0,function(){o=null,l&&n.complete()}),v$i.innerFrom(e(A,a++)).subscribe(o))},function(){l=!0,!o&&n.complete()}))})}cRt.exhaustMap=w$i});var gRt=H(uRt=>{"use strict";Object.defineProperty(uRt,"__esModule",{value:!0});uRt.exhaustAll=void 0;var T7c=lRt(),R7c=nx();function N7c(){return T7c.exhaustMap(R7c.identity)}uRt.exhaustAll=N7c});var m3r=H(ARt=>{"use strict";Object.defineProperty(ARt,"__esModule",{value:!0});ARt.exhaust=void 0;var D7c=gRt();ARt.exhaust=D7c.exhaustAll});var C3r=H(dRt=>{"use strict";Object.defineProperty(dRt,"__esModule",{value:!0});dRt.expand=void 0;var k7c=qg(),x7c=tTt();function G7c(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,k7c.operate(function(n,a){return x7c.mergeInternals(n,a,e,t,void 0,!0,r)})}dRt.expand=G7c});var _3r=H(pRt=>{"use strict";Object.defineProperty(pRt,"__esModule",{value:!0});pRt.finalize=void 0;var F7c=qg();function Z7c(e){return F7c.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}pRt.finalize=Z7c});var fRt=H($ke=>{"use strict";Object.defineProperty($ke,"__esModule",{value:!0});$ke.createFind=$ke.find=void 0;var L7c=qg(),V7c=Cd();function P7c(e,t){return L7c.operate(T$i(e,t,"value"))}$ke.find=P7c;function T$i(e,t,r){var n=r==="index";return function(a,o){var l=0;a.subscribe(V7c.createOperatorSubscriber(o,function(A){var f=l++;e.call(t,A,f,a)&&(o.next(n?f:A),o.complete())},function(){o.next(n?-1:void 0),o.complete()}))}}$ke.createFind=T$i});var y3r=H(IRt=>{"use strict";Object.defineProperty(IRt,"__esModule",{value:!0});IRt.findIndex=void 0;var W7c=qg(),O7c=fRt();function M7c(e,t){return W7c.operate(O7c.createFind(e,t,"index"))}IRt.findIndex=M7c});var b3r=H(hRt=>{"use strict";Object.defineProperty(hRt,"__esModule",{value:!0});hRt.first=void 0;var H7c=mle(),Y7c=ute(),Q7c=zke(),X7c=jke(),J7c=qke(),U7c=nx();function K7c(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?Y7c.filter(function(a,o){return e(a,o,n)}):U7c.identity,Q7c.take(1),r?X7c.defaultIfEmpty(t):J7c.throwIfEmpty(function(){return new H7c.EmptyError}))}}hRt.first=K7c});var E3r=H(mRt=>{"use strict";Object.defineProperty(mRt,"__esModule",{value:!0});mRt.groupBy=void 0;var j7c=ub(),z7c=uh(),q7c=ix(),$7c=qg(),R$i=Cd();function ezc(e,t,r,n){return $7c.operate(function(a,o){var l;!t||typeof t=="function"?l=t:(r=t.duration,l=t.element,n=t.connector);var A=new Map,f=function(B){A.forEach(B),B(o)},I=function(B){return f(function(F){return F.error(B)})},C=0,b=!1,E=new R$i.OperatorSubscriber(o,function(B){try{var F=e(B),Q=A.get(F);if(!Q){A.set(F,Q=n?n():new q7c.Subject);var X=N(F,Q);if(o.next(X),r){var ae=R$i.createOperatorSubscriber(Q,function(){Q.complete(),ae?.unsubscribe()},void 0,void 0,function(){return A.delete(F)});E.add(z7c.innerFrom(r(X)).subscribe(ae))}}Q.next(l?l(B):B)}catch(ne){I(ne)}},function(){return f(function(B){return B.complete()})},I,function(){return A.clear()},function(){return b=!0,C===0});a.subscribe(E);function N(B,F){var Q=new j7c.Observable(function(X){C++;var ae=F.subscribe(X);return function(){ae.unsubscribe(),--C===0&&b&&E.unsubscribe()}});return Q.key=B,Q}})}mRt.groupBy=ezc});var S3r=H(CRt=>{"use strict";Object.defineProperty(CRt,"__esModule",{value:!0});CRt.isEmpty=void 0;var tzc=qg(),rzc=Cd();function nzc(){return tzc.operate(function(e,t){e.subscribe(rzc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}CRt.isEmpty=nzc});var _Rt=H(exe=>{"use strict";var izc=exe&&exe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(exe,"__esModule",{value:!0});exe.takeLast=void 0;var szc=x4(),ozc=qg(),azc=Cd();function czc(e){return e<=0?function(){return szc.EMPTY}:ozc.operate(function(t,r){var n=[];t.subscribe(azc.createOperatorSubscriber(r,function(a){n.push(a),e{"use strict";Object.defineProperty(yRt,"__esModule",{value:!0});yRt.last=void 0;var lzc=mle(),uzc=ute(),gzc=_Rt(),Azc=qke(),dzc=jke(),pzc=nx();function fzc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?uzc.filter(function(a,o){return e(a,o,n)}):pzc.identity,gzc.takeLast(1),r?dzc.defaultIfEmpty(t):Azc.throwIfEmpty(function(){return new lzc.EmptyError}))}}yRt.last=fzc});var w3r=H(bRt=>{"use strict";Object.defineProperty(bRt,"__esModule",{value:!0});bRt.materialize=void 0;var B3r=Vwt(),Izc=qg(),hzc=Cd();function mzc(){return Izc.operate(function(e,t){e.subscribe(hzc.createOperatorSubscriber(t,function(r){t.next(B3r.Notification.createNext(r))},function(){t.next(B3r.Notification.createComplete()),t.complete()},function(r){t.next(B3r.Notification.createError(r)),t.complete()}))})}bRt.materialize=mzc});var T3r=H(ERt=>{"use strict";Object.defineProperty(ERt,"__esModule",{value:!0});ERt.max=void 0;var Czc=C_e(),_zc=Sy();function yzc(e){return Czc.reduce(_zc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}ERt.max=yzc});var R3r=H(SRt=>{"use strict";Object.defineProperty(SRt,"__esModule",{value:!0});SRt.flatMap=void 0;var bzc=Kj();SRt.flatMap=bzc.mergeMap});var N3r=H(vRt=>{"use strict";Object.defineProperty(vRt,"__esModule",{value:!0});vRt.mergeMapTo=void 0;var N$i=Kj(),Ezc=Sy();function Szc(e,t,r){return r===void 0&&(r=1/0),Ezc.isFunction(t)?N$i.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),N$i.mergeMap(function(){return e},r))}vRt.mergeMapTo=Szc});var D3r=H(BRt=>{"use strict";Object.defineProperty(BRt,"__esModule",{value:!0});BRt.mergeScan=void 0;var vzc=qg(),Bzc=tTt();function wzc(e,t,r){return r===void 0&&(r=1/0),vzc.operate(function(n,a){var o=t;return Bzc.mergeInternals(n,a,function(l,A){return e(o,l,A)},r,function(l){o=l},!1,void 0,function(){return o=null})})}BRt.mergeScan=wzc});var k3r=H(Nle=>{"use strict";var Tzc=Nle&&Nle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Rzc=Nle&&Nle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Fzc=Dle&&Dle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Zzc=Dle&&Dle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(wRt,"__esModule",{value:!0});wRt.min=void 0;var Pzc=C_e(),Wzc=Sy();function Ozc(e){return Pzc.reduce(Wzc.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(TRt,"__esModule",{value:!0});TRt.multicast=void 0;var Mzc=F8e(),k$i=Sy(),Hzc=H8e();function Yzc(e,t){var r=k$i.isFunction(e)?e:function(){return e};return k$i.isFunction(t)?Hzc.connect(t,{connector:r}):function(n){return new Mzc.ConnectableObservable(n,r)}}TRt.multicast=Yzc});var F3r=H(jj=>{"use strict";var Qzc=jj&&jj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Xzc=jj&&jj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(RRt,"__esModule",{value:!0});RRt.pairwise=void 0;var Kzc=qg(),jzc=Cd();function zzc(){return Kzc.operate(function(e,t){var r,n=!1;e.subscribe(jzc.createOperatorSubscriber(t,function(a){var o=r;r=a,n&&t.next([o,a]),n=!0}))})}RRt.pairwise=zzc});var L3r=H(NRt=>{"use strict";Object.defineProperty(NRt,"__esModule",{value:!0});NRt.pluck=void 0;var qzc=lte();function $zc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(DRt,"__esModule",{value:!0});DRt.publish=void 0;var eqc=ix(),tqc=Y8e(),rqc=H8e();function nqc(e){return e?function(t){return rqc.connect(e)(t)}:function(t){return tqc.multicast(new eqc.Subject)(t)}}DRt.publish=nqc});var P3r=H(kRt=>{"use strict";Object.defineProperty(kRt,"__esModule",{value:!0});kRt.publishBehavior=void 0;var iqc=fOr(),sqc=F8e();function oqc(e){return function(t){var r=new iqc.BehaviorSubject(e);return new sqc.ConnectableObservable(t,function(){return r})}}kRt.publishBehavior=oqc});var W3r=H(xRt=>{"use strict";Object.defineProperty(xRt,"__esModule",{value:!0});xRt.publishLast=void 0;var aqc=Awt(),cqc=F8e();function lqc(){return function(e){var t=new aqc.AsyncSubject;return new cqc.ConnectableObservable(e,function(){return t})}}xRt.publishLast=lqc});var O3r=H(GRt=>{"use strict";Object.defineProperty(GRt,"__esModule",{value:!0});GRt.publishReplay=void 0;var uqc=gwt(),gqc=Y8e(),G$i=Sy();function Aqc(e,t,r,n){r&&!G$i.isFunction(r)&&(n=r);var a=G$i.isFunction(r)?r:void 0;return function(o){return gqc.multicast(new uqc.ReplaySubject(e,t,n),a)(o)}}GRt.publishReplay=Aqc});var FRt=H(kle=>{"use strict";var dqc=kle&&kle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},pqc=kle&&kle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ZRt,"__esModule",{value:!0});ZRt.repeat=void 0;var Cqc=x4(),_qc=qg(),F$i=Cd(),yqc=uh(),bqc=ble();function Eqc(e){var t,r=1/0,n;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,n=e.delay):r=e),r<=0?function(){return Cqc.EMPTY}:_qc.operate(function(a,o){var l=0,A,f=function(){if(A?.unsubscribe(),A=null,n!=null){var C=typeof n=="number"?bqc.timer(n):yqc.innerFrom(n(l)),b=F$i.createOperatorSubscriber(o,function(){b.unsubscribe(),I()});C.subscribe(b)}else I()},I=function(){var C=!1;A=a.subscribe(F$i.createOperatorSubscriber(o,void 0,function(){++l{"use strict";Object.defineProperty(LRt,"__esModule",{value:!0});LRt.repeatWhen=void 0;var Sqc=uh(),vqc=ix(),Bqc=qg(),Z$i=Cd();function wqc(e){return Bqc.operate(function(t,r){var n,a=!1,o,l=!1,A=!1,f=function(){return A&&l&&(r.complete(),!0)},I=function(){return o||(o=new vqc.Subject,Sqc.innerFrom(e(o)).subscribe(Z$i.createOperatorSubscriber(r,function(){n?C():a=!0},function(){l=!0,f()}))),o},C=function(){A=!1,n=t.subscribe(Z$i.createOperatorSubscriber(r,void 0,function(){A=!0,!f()&&I().next()})),a&&(n.unsubscribe(),n=null,a=!1,C())};C()})}LRt.repeatWhen=wqc});var Y3r=H(VRt=>{"use strict";Object.defineProperty(VRt,"__esModule",{value:!0});VRt.retry=void 0;var Tqc=qg(),L$i=Cd(),Rqc=nx(),Nqc=ble(),Dqc=uh();function kqc(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,n=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,l=o===void 0?!1:o;return n<=0?Rqc.identity:Tqc.operate(function(A,f){var I=0,C,b=function(){var E=!1;C=A.subscribe(L$i.createOperatorSubscriber(f,function(N){l&&(I=0),f.next(N)},void 0,function(N){if(I++{"use strict";Object.defineProperty(PRt,"__esModule",{value:!0});PRt.retryWhen=void 0;var xqc=uh(),Gqc=ix(),Fqc=qg(),V$i=Cd();function Zqc(e){return Fqc.operate(function(t,r){var n,a=!1,o,l=function(){n=t.subscribe(V$i.createOperatorSubscriber(r,void 0,void 0,function(A){o||(o=new Gqc.Subject,xqc.innerFrom(e(o)).subscribe(V$i.createOperatorSubscriber(r,function(){return n?l():a=!0}))),o&&o.next(A)})),a&&(n.unsubscribe(),n=null,a=!1,l())};l()})}PRt.retryWhen=Zqc});var ORt=H(WRt=>{"use strict";Object.defineProperty(WRt,"__esModule",{value:!0});WRt.sample=void 0;var Lqc=uh(),Vqc=qg(),Pqc=rx(),P$i=Cd();function Wqc(e){return Vqc.operate(function(t,r){var n=!1,a=null;t.subscribe(P$i.createOperatorSubscriber(r,function(o){n=!0,a=o})),Lqc.innerFrom(e).subscribe(P$i.createOperatorSubscriber(r,function(){if(n){n=!1;var o=a;a=null,r.next(o)}},Pqc.noop))})}WRt.sample=Wqc});var X3r=H(MRt=>{"use strict";Object.defineProperty(MRt,"__esModule",{value:!0});MRt.sampleTime=void 0;var Oqc=FV(),Mqc=ORt(),Hqc=WOr();function Yqc(e,t){return t===void 0&&(t=Oqc.asyncScheduler),Mqc.sample(Hqc.interval(e,t))}MRt.sampleTime=Yqc});var J3r=H(HRt=>{"use strict";Object.defineProperty(HRt,"__esModule",{value:!0});HRt.scan=void 0;var Qqc=qg(),Xqc=e3r();function Jqc(e,t){return Qqc.operate(Xqc.scanInternals(e,t,arguments.length>=2,!0))}HRt.scan=Jqc});var U3r=H(YRt=>{"use strict";Object.defineProperty(YRt,"__esModule",{value:!0});YRt.sequenceEqual=void 0;var Uqc=qg(),Kqc=Cd(),jqc=uh();function zqc(e,t){return t===void 0&&(t=function(r,n){return r===n}),Uqc.operate(function(r,n){var a=W$i(),o=W$i(),l=function(f){n.next(f),n.complete()},A=function(f,I){var C=Kqc.createOperatorSubscriber(n,function(b){var E=I.buffer,N=I.complete;E.length===0?N?l(!1):f.buffer.push(b):!t(b,E.shift())&&l(!1)},function(){f.complete=!0;var b=I.complete,E=I.buffer;b&&l(E.length===0),C?.unsubscribe()});return C};r.subscribe(A(a,o)),jqc.innerFrom(e).subscribe(A(o,a))})}YRt.sequenceEqual=zqc;function W$i(){return{buffer:[],complete:!1}}});var QRt=H(xle=>{"use strict";var qqc=xle&&xle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},$qc=xle&&xle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r0&&(C=new M$i.SafeSubscriber({next:function(ue){return fe.next(ue)},error:function(ue){F=!0,Q(),b=K3r(X,a,ue),fe.error(ue)},complete:function(){B=!0,Q(),b=K3r(X,l),fe.complete()}}),O$i.innerFrom(ne).subscribe(C))})(I)}}xle.share=r$c;function K3r(e,t){for(var r=[],n=2;n{"use strict";Object.defineProperty(XRt,"__esModule",{value:!0});XRt.shareReplay=void 0;var n$c=gwt(),i$c=QRt();function s$c(e,t,r){var n,a,o,l,A=!1;return e&&typeof e=="object"?(n=e.bufferSize,l=n===void 0?1/0:n,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,A=o===void 0?!1:o,r=e.scheduler):l=e??1/0,i$c.share({connector:function(){return new n$c.ReplaySubject(l,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:A})}XRt.shareReplay=s$c});var z3r=H(JRt=>{"use strict";Object.defineProperty(JRt,"__esModule",{value:!0});JRt.single=void 0;var o$c=mle(),a$c=GOr(),c$c=xOr(),l$c=qg(),u$c=Cd();function g$c(e){return l$c.operate(function(t,r){var n=!1,a,o=!1,l=0;t.subscribe(u$c.createOperatorSubscriber(r,function(A){o=!0,(!e||e(A,l++,t))&&(n&&r.error(new a$c.SequenceError("Too many matching values")),n=!0,a=A)},function(){n?(r.next(a),r.complete()):r.error(o?new c$c.NotFoundError("No matching values"):new o$c.EmptyError)}))})}JRt.single=g$c});var q3r=H(URt=>{"use strict";Object.defineProperty(URt,"__esModule",{value:!0});URt.skip=void 0;var A$c=ute();function d$c(e){return A$c.filter(function(t,r){return e<=r})}URt.skip=d$c});var $3r=H(KRt=>{"use strict";Object.defineProperty(KRt,"__esModule",{value:!0});KRt.skipLast=void 0;var p$c=nx(),f$c=qg(),I$c=Cd();function h$c(e){return e<=0?p$c.identity:f$c.operate(function(t,r){var n=new Array(e),a=0;return t.subscribe(I$c.createOperatorSubscriber(r,function(o){var l=a++;if(l{"use strict";Object.defineProperty(jRt,"__esModule",{value:!0});jRt.skipUntil=void 0;var m$c=qg(),H$i=Cd(),C$c=uh(),_$c=rx();function y$c(e){return m$c.operate(function(t,r){var n=!1,a=H$i.createOperatorSubscriber(r,function(){a?.unsubscribe(),n=!0},_$c.noop);C$c.innerFrom(e).subscribe(a),t.subscribe(H$i.createOperatorSubscriber(r,function(o){return n&&r.next(o)}))})}jRt.skipUntil=y$c});var t5r=H(zRt=>{"use strict";Object.defineProperty(zRt,"__esModule",{value:!0});zRt.skipWhile=void 0;var b$c=qg(),E$c=Cd();function S$c(e){return b$c.operate(function(t,r){var n=!1,a=0;t.subscribe(E$c.createOperatorSubscriber(r,function(o){return(n||(n=!e(o,a++)))&&r.next(o)}))})}zRt.skipWhile=S$c});var r5r=H(qRt=>{"use strict";Object.defineProperty(qRt,"__esModule",{value:!0});qRt.startWith=void 0;var Y$i=O8e(),v$c=ZV(),B$c=qg();function w$c(){for(var e=[],t=0;t{"use strict";Object.defineProperty($Rt,"__esModule",{value:!0});$Rt.switchMap=void 0;var T$c=uh(),R$c=qg(),Q$i=Cd();function N$c(e,t){return R$c.operate(function(r,n){var a=null,o=0,l=!1,A=function(){return l&&!a&&n.complete()};r.subscribe(Q$i.createOperatorSubscriber(n,function(f){a?.unsubscribe();var I=0,C=o++;T$c.innerFrom(e(f,C)).subscribe(a=Q$i.createOperatorSubscriber(n,function(b){return n.next(t?t(f,b,C,I++):b)},function(){a=null,A()}))},function(){l=!0,A()}))})}$Rt.switchMap=N$c});var n5r=H(eNt=>{"use strict";Object.defineProperty(eNt,"__esModule",{value:!0});eNt.switchAll=void 0;var D$c=txe(),k$c=nx();function x$c(){return D$c.switchMap(k$c.identity)}eNt.switchAll=x$c});var i5r=H(tNt=>{"use strict";Object.defineProperty(tNt,"__esModule",{value:!0});tNt.switchMapTo=void 0;var X$i=txe(),G$c=Sy();function F$c(e,t){return G$c.isFunction(t)?X$i.switchMap(function(){return e},t):X$i.switchMap(function(){return e})}tNt.switchMapTo=F$c});var s5r=H(rNt=>{"use strict";Object.defineProperty(rNt,"__esModule",{value:!0});rNt.switchScan=void 0;var Z$c=txe(),L$c=qg();function V$c(e,t){return L$c.operate(function(r,n){var a=t;return Z$c.switchMap(function(o,l){return e(a,o,l)},function(o,l){return a=l,l})(r).subscribe(n),function(){a=null}})}rNt.switchScan=V$c});var o5r=H(nNt=>{"use strict";Object.defineProperty(nNt,"__esModule",{value:!0});nNt.takeUntil=void 0;var P$c=qg(),W$c=Cd(),O$c=uh(),M$c=rx();function H$c(e){return P$c.operate(function(t,r){O$c.innerFrom(e).subscribe(W$c.createOperatorSubscriber(r,function(){return r.complete()},M$c.noop)),!r.closed&&t.subscribe(r)})}nNt.takeUntil=H$c});var a5r=H(iNt=>{"use strict";Object.defineProperty(iNt,"__esModule",{value:!0});iNt.takeWhile=void 0;var Y$c=qg(),Q$c=Cd();function X$c(e,t){return t===void 0&&(t=!1),Y$c.operate(function(r,n){var a=0;r.subscribe(Q$c.createOperatorSubscriber(n,function(o){var l=e(o,a++);(l||t)&&n.next(o),!l&&n.complete()}))})}iNt.takeWhile=X$c});var c5r=H(sNt=>{"use strict";Object.defineProperty(sNt,"__esModule",{value:!0});sNt.tap=void 0;var J$c=Sy(),U$c=qg(),K$c=Cd(),j$c=nx();function z$c(e,t,r){var n=J$c.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return n?U$c.operate(function(a,o){var l;(l=n.subscribe)===null||l===void 0||l.call(n);var A=!0;a.subscribe(K$c.createOperatorSubscriber(o,function(f){var I;(I=n.next)===null||I===void 0||I.call(n,f),o.next(f)},function(){var f;A=!1,(f=n.complete)===null||f===void 0||f.call(n),o.complete()},function(f){var I;A=!1,(I=n.error)===null||I===void 0||I.call(n,f),o.error(f)},function(){var f,I;A&&((f=n.unsubscribe)===null||f===void 0||f.call(n)),(I=n.finalize)===null||I===void 0||I.call(n)}))}):j$c.identity}sNt.tap=z$c});var aNt=H(oNt=>{"use strict";Object.defineProperty(oNt,"__esModule",{value:!0});oNt.throttle=void 0;var q$c=qg(),J$i=Cd(),$$c=uh();function eel(e,t){return q$c.operate(function(r,n){var a=t??{},o=a.leading,l=o===void 0?!0:o,A=a.trailing,f=A===void 0?!1:A,I=!1,C=null,b=null,E=!1,N=function(){b?.unsubscribe(),b=null,f&&(Q(),E&&n.complete())},B=function(){b=null,E&&n.complete()},F=function(X){return b=$$c.innerFrom(e(X)).subscribe(J$i.createOperatorSubscriber(n,N,B))},Q=function(){if(I){I=!1;var X=C;C=null,n.next(X),!E&&F(X)}};r.subscribe(J$i.createOperatorSubscriber(n,function(X){I=!0,C=X,!(b&&!b.closed)&&(l?Q():F(X))},function(){E=!0,!(f&&I&&b&&!b.closed)&&n.complete()}))})}oNt.throttle=eel});var l5r=H(cNt=>{"use strict";Object.defineProperty(cNt,"__esModule",{value:!0});cNt.throttleTime=void 0;var tel=FV(),rel=aNt(),nel=ble();function iel(e,t,r){t===void 0&&(t=tel.asyncScheduler);var n=nel.timer(e,t);return rel.throttle(function(){return n},r)}cNt.throttleTime=iel});var u5r=H(rxe=>{"use strict";Object.defineProperty(rxe,"__esModule",{value:!0});rxe.TimeInterval=rxe.timeInterval=void 0;var sel=FV(),oel=qg(),ael=Cd();function cel(e){return e===void 0&&(e=sel.asyncScheduler),oel.operate(function(t,r){var n=e.now();t.subscribe(ael.createOperatorSubscriber(r,function(a){var o=e.now(),l=o-n;n=o,r.next(new U$i(a,l))}))})}rxe.timeInterval=cel;var U$i=function(){function e(t,r){this.value=t,this.interval=r}return e}();rxe.TimeInterval=U$i});var g5r=H(lNt=>{"use strict";Object.defineProperty(lNt,"__esModule",{value:!0});lNt.timeoutWith=void 0;var lel=FV(),uel=Jwt(),gel=P8e();function Ael(e,t,r){var n,a,o;if(r=r??lel.async,uel.isValidDate(e)?n=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(n==null&&a==null)throw new TypeError("No timeout provided.");return gel.timeout({first:n,each:a,scheduler:r,with:o})}lNt.timeoutWith=Ael});var A5r=H(uNt=>{"use strict";Object.defineProperty(uNt,"__esModule",{value:!0});uNt.timestamp=void 0;var del=uwt(),pel=lte();function fel(e){return e===void 0&&(e=del.dateTimestampProvider),pel.map(function(t){return{value:t,timestamp:e.now()}})}uNt.timestamp=fel});var d5r=H(gNt=>{"use strict";Object.defineProperty(gNt,"__esModule",{value:!0});gNt.window=void 0;var K$i=ix(),Iel=qg(),j$i=Cd(),hel=rx(),mel=uh();function Cel(e){return Iel.operate(function(t,r){var n=new K$i.Subject;r.next(n.asObservable());var a=function(o){n.error(o),r.error(o)};return t.subscribe(j$i.createOperatorSubscriber(r,function(o){return n?.next(o)},function(){n.complete(),r.complete()},a)),mel.innerFrom(e).subscribe(j$i.createOperatorSubscriber(r,function(){n.complete(),r.next(n=new K$i.Subject)},hel.noop,a)),function(){n?.unsubscribe(),n=null}})}gNt.window=Cel});var p5r=H(nxe=>{"use strict";var _el=nxe&&nxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(nxe,"__esModule",{value:!0});nxe.windowCount=void 0;var z$i=ix(),yel=qg(),bel=Cd();function Eel(e,t){t===void 0&&(t=0);var r=t>0?t:e;return yel.operate(function(n,a){var o=[new z$i.Subject],l=[],A=0;a.next(o[0].asObservable()),n.subscribe(bel.createOperatorSubscriber(a,function(f){var I,C;try{for(var b=_el(o),E=b.next();!E.done;E=b.next()){var N=E.value;N.next(f)}}catch(Q){I={error:Q}}finally{try{E&&!E.done&&(C=b.return)&&C.call(b)}finally{if(I)throw I.error}}var B=A-e+1;if(B>=0&&B%r===0&&o.shift().complete(),++A%r===0){var F=new z$i.Subject;o.push(F),a.next(F.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){l=null,o=null}))})}nxe.windowCount=Eel});var f5r=H(ANt=>{"use strict";Object.defineProperty(ANt,"__esModule",{value:!0});ANt.windowTime=void 0;var Sel=ix(),vel=FV(),Bel=TO(),wel=qg(),Tel=Cd(),Rel=ste(),Nel=ZV(),q$i=ote();function Del(e){for(var t,r,n=[],a=1;a=0?q$i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=function(Q){return C.slice().forEach(Q)},F=function(Q){B(function(X){var ae=X.window;return Q(ae)}),Q(I),I.unsubscribe()};return f.subscribe(Tel.createOperatorSubscriber(I,function(Q){B(function(X){X.window.next(Q),A<=++X.seen&&E(X)})},function(){return F(function(Q){return Q.complete()})},function(Q){return F(function(X){return X.error(Q)})})),function(){C=null}})}ANt.windowTime=Del});var h5r=H(ixe=>{"use strict";var kel=ixe&&ixe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ixe,"__esModule",{value:!0});ixe.windowToggle=void 0;var xel=ix(),Gel=TO(),Fel=qg(),$$i=uh(),I5r=Cd(),ees=rx(),Zel=ste();function Lel(e,t){return Fel.operate(function(r,n){var a=[],o=function(l){for(;0{"use strict";Object.defineProperty(dNt,"__esModule",{value:!0});dNt.windowWhen=void 0;var Vel=ix(),Pel=qg(),tes=Cd(),Wel=uh();function Oel(e){return Pel.operate(function(t,r){var n,a,o=function(A){n.error(A),r.error(A)},l=function(){a?.unsubscribe(),n?.complete(),n=new Vel.Subject,r.next(n.asObservable());var A;try{A=Wel.innerFrom(e())}catch(f){o(f);return}A.subscribe(a=tes.createOperatorSubscriber(r,l,l,o))};l(),t.subscribe(tes.createOperatorSubscriber(r,function(A){return n.next(A)},function(){n.complete(),r.complete()},o,function(){a?.unsubscribe(),n=null}))})}dNt.windowWhen=Oel});var C5r=H(Gle=>{"use strict";var res=Gle&&Gle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},nes=Gle&&Gle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(pNt,"__esModule",{value:!0});pNt.zipAll=void 0;var Uel=bTt(),Kel=t3r();function jel(e){return Kel.joinAllInternals(Uel.zip,e)}pNt.zipAll=jel});var y5r=H(Fle=>{"use strict";var zel=Fle&&Fle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},qel=Fle&&Fle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var rtl=Zle&&Zle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},ntl=Zle&&Zle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var otl=Cn&&Cn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),atl=Cn&&Cn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&otl(t,e,r)};Object.defineProperty(Cn,"__esModule",{value:!0});Cn.interval=Cn.iif=Cn.generate=Cn.fromEventPattern=Cn.fromEvent=Cn.from=Cn.forkJoin=Cn.empty=Cn.defer=Cn.connectable=Cn.concat=Cn.combineLatest=Cn.bindNodeCallback=Cn.bindCallback=Cn.UnsubscriptionError=Cn.TimeoutError=Cn.SequenceError=Cn.ObjectUnsubscribedError=Cn.NotFoundError=Cn.EmptyError=Cn.ArgumentOutOfRangeError=Cn.firstValueFrom=Cn.lastValueFrom=Cn.isObservable=Cn.identity=Cn.noop=Cn.pipe=Cn.NotificationKind=Cn.Notification=Cn.Subscriber=Cn.Subscription=Cn.Scheduler=Cn.VirtualAction=Cn.VirtualTimeScheduler=Cn.animationFrameScheduler=Cn.animationFrame=Cn.queueScheduler=Cn.queue=Cn.asyncScheduler=Cn.async=Cn.asapScheduler=Cn.asap=Cn.AsyncSubject=Cn.ReplaySubject=Cn.BehaviorSubject=Cn.Subject=Cn.animationFrames=Cn.observable=Cn.ConnectableObservable=Cn.Observable=void 0;Cn.filter=Cn.expand=Cn.exhaustMap=Cn.exhaustAll=Cn.exhaust=Cn.every=Cn.endWith=Cn.elementAt=Cn.distinctUntilKeyChanged=Cn.distinctUntilChanged=Cn.distinct=Cn.dematerialize=Cn.delayWhen=Cn.delay=Cn.defaultIfEmpty=Cn.debounceTime=Cn.debounce=Cn.count=Cn.connect=Cn.concatWith=Cn.concatMapTo=Cn.concatMap=Cn.concatAll=Cn.combineLatestWith=Cn.combineLatestAll=Cn.combineAll=Cn.catchError=Cn.bufferWhen=Cn.bufferToggle=Cn.bufferTime=Cn.bufferCount=Cn.buffer=Cn.auditTime=Cn.audit=Cn.config=Cn.NEVER=Cn.EMPTY=Cn.scheduled=Cn.zip=Cn.using=Cn.timer=Cn.throwError=Cn.range=Cn.race=Cn.partition=Cn.pairs=Cn.onErrorResumeNext=Cn.of=Cn.never=Cn.merge=void 0;Cn.switchMap=Cn.switchAll=Cn.subscribeOn=Cn.startWith=Cn.skipWhile=Cn.skipUntil=Cn.skipLast=Cn.skip=Cn.single=Cn.shareReplay=Cn.share=Cn.sequenceEqual=Cn.scan=Cn.sampleTime=Cn.sample=Cn.refCount=Cn.retryWhen=Cn.retry=Cn.repeatWhen=Cn.repeat=Cn.reduce=Cn.raceWith=Cn.publishReplay=Cn.publishLast=Cn.publishBehavior=Cn.publish=Cn.pluck=Cn.pairwise=Cn.onErrorResumeNextWith=Cn.observeOn=Cn.multicast=Cn.min=Cn.mergeWith=Cn.mergeScan=Cn.mergeMapTo=Cn.mergeMap=Cn.flatMap=Cn.mergeAll=Cn.max=Cn.materialize=Cn.mapTo=Cn.map=Cn.last=Cn.isEmpty=Cn.ignoreElements=Cn.groupBy=Cn.first=Cn.findIndex=Cn.find=Cn.finalize=void 0;Cn.zipWith=Cn.zipAll=Cn.withLatestFrom=Cn.windowWhen=Cn.windowToggle=Cn.windowTime=Cn.windowCount=Cn.window=Cn.toArray=Cn.timestamp=Cn.timeoutWith=Cn.timeout=Cn.timeInterval=Cn.throwIfEmpty=Cn.throttleTime=Cn.throttle=Cn.tap=Cn.takeWhile=Cn.takeUntil=Cn.takeLast=Cn.take=Cn.switchScan=Cn.switchMapTo=void 0;var ctl=ub();Object.defineProperty(Cn,"Observable",{enumerable:!0,get:function(){return ctl.Observable}});var ltl=F8e();Object.defineProperty(Cn,"ConnectableObservable",{enumerable:!0,get:function(){return ltl.ConnectableObservable}});var utl=x8e();Object.defineProperty(Cn,"observable",{enumerable:!0,get:function(){return utl.observable}});var gtl=Zzi();Object.defineProperty(Cn,"animationFrames",{enumerable:!0,get:function(){return gtl.animationFrames}});var Atl=ix();Object.defineProperty(Cn,"Subject",{enumerable:!0,get:function(){return Atl.Subject}});var dtl=fOr();Object.defineProperty(Cn,"BehaviorSubject",{enumerable:!0,get:function(){return dtl.BehaviorSubject}});var ptl=gwt();Object.defineProperty(Cn,"ReplaySubject",{enumerable:!0,get:function(){return ptl.ReplaySubject}});var ftl=Awt();Object.defineProperty(Cn,"AsyncSubject",{enumerable:!0,get:function(){return ftl.AsyncSubject}});var ses=$zi();Object.defineProperty(Cn,"asap",{enumerable:!0,get:function(){return ses.asap}});Object.defineProperty(Cn,"asapScheduler",{enumerable:!0,get:function(){return ses.asapScheduler}});var oes=FV();Object.defineProperty(Cn,"async",{enumerable:!0,get:function(){return oes.async}});Object.defineProperty(Cn,"asyncScheduler",{enumerable:!0,get:function(){return oes.asyncScheduler}});var aes=rqi();Object.defineProperty(Cn,"queue",{enumerable:!0,get:function(){return aes.queue}});Object.defineProperty(Cn,"queueScheduler",{enumerable:!0,get:function(){return aes.queueScheduler}});var ces=oqi();Object.defineProperty(Cn,"animationFrame",{enumerable:!0,get:function(){return ces.animationFrame}});Object.defineProperty(Cn,"animationFrameScheduler",{enumerable:!0,get:function(){return ces.animationFrameScheduler}});var les=lqi();Object.defineProperty(Cn,"VirtualTimeScheduler",{enumerable:!0,get:function(){return les.VirtualTimeScheduler}});Object.defineProperty(Cn,"VirtualAction",{enumerable:!0,get:function(){return les.VirtualAction}});var Itl=hOr();Object.defineProperty(Cn,"Scheduler",{enumerable:!0,get:function(){return Itl.Scheduler}});var htl=TO();Object.defineProperty(Cn,"Subscription",{enumerable:!0,get:function(){return htl.Subscription}});var mtl=mke();Object.defineProperty(Cn,"Subscriber",{enumerable:!0,get:function(){return mtl.Subscriber}});var ues=Vwt();Object.defineProperty(Cn,"Notification",{enumerable:!0,get:function(){return ues.Notification}});Object.defineProperty(Cn,"NotificationKind",{enumerable:!0,get:function(){return ues.NotificationKind}});var Ctl=G8e();Object.defineProperty(Cn,"pipe",{enumerable:!0,get:function(){return Ctl.pipe}});var _tl=rx();Object.defineProperty(Cn,"noop",{enumerable:!0,get:function(){return _tl.noop}});var ytl=nx();Object.defineProperty(Cn,"identity",{enumerable:!0,get:function(){return ytl.identity}});var btl=Bqi();Object.defineProperty(Cn,"isObservable",{enumerable:!0,get:function(){return btl.isObservable}});var Etl=wqi();Object.defineProperty(Cn,"lastValueFrom",{enumerable:!0,get:function(){return Etl.lastValueFrom}});var Stl=Tqi();Object.defineProperty(Cn,"firstValueFrom",{enumerable:!0,get:function(){return Stl.firstValueFrom}});var vtl=kOr();Object.defineProperty(Cn,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return vtl.ArgumentOutOfRangeError}});var Btl=mle();Object.defineProperty(Cn,"EmptyError",{enumerable:!0,get:function(){return Btl.EmptyError}});var wtl=xOr();Object.defineProperty(Cn,"NotFoundError",{enumerable:!0,get:function(){return wtl.NotFoundError}});var Ttl=gOr();Object.defineProperty(Cn,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return Ttl.ObjectUnsubscribedError}});var Rtl=GOr();Object.defineProperty(Cn,"SequenceError",{enumerable:!0,get:function(){return Rtl.SequenceError}});var Ntl=P8e();Object.defineProperty(Cn,"TimeoutError",{enumerable:!0,get:function(){return Ntl.TimeoutError}});var Dtl=$Wr();Object.defineProperty(Cn,"UnsubscriptionError",{enumerable:!0,get:function(){return Dtl.UnsubscriptionError}});var ktl=Nqi();Object.defineProperty(Cn,"bindCallback",{enumerable:!0,get:function(){return ktl.bindCallback}});var xtl=Dqi();Object.defineProperty(Cn,"bindNodeCallback",{enumerable:!0,get:function(){return xtl.bindNodeCallback}});var Gtl=$wt();Object.defineProperty(Cn,"combineLatest",{enumerable:!0,get:function(){return Gtl.combineLatest}});var Ftl=O8e();Object.defineProperty(Cn,"concat",{enumerable:!0,get:function(){return Ftl.concat}});var Ztl=Pqi();Object.defineProperty(Cn,"connectable",{enumerable:!0,get:function(){return Ztl.connectable}});var Ltl=M8e();Object.defineProperty(Cn,"defer",{enumerable:!0,get:function(){return Ltl.defer}});var Vtl=x4();Object.defineProperty(Cn,"empty",{enumerable:!0,get:function(){return Vtl.empty}});var Ptl=Wqi();Object.defineProperty(Cn,"forkJoin",{enumerable:!0,get:function(){return Ptl.forkJoin}});var Wtl=ate();Object.defineProperty(Cn,"from",{enumerable:!0,get:function(){return Wtl.from}});var Otl=Mqi();Object.defineProperty(Cn,"fromEvent",{enumerable:!0,get:function(){return Otl.fromEvent}});var Mtl=Yqi();Object.defineProperty(Cn,"fromEventPattern",{enumerable:!0,get:function(){return Mtl.fromEventPattern}});var Htl=Xqi();Object.defineProperty(Cn,"generate",{enumerable:!0,get:function(){return Htl.generate}});var Ytl=Jqi();Object.defineProperty(Cn,"iif",{enumerable:!0,get:function(){return Ytl.iif}});var Qtl=WOr();Object.defineProperty(Cn,"interval",{enumerable:!0,get:function(){return Qtl.interval}});var Xtl=Kqi();Object.defineProperty(Cn,"merge",{enumerable:!0,get:function(){return Xtl.merge}});var Jtl=OOr();Object.defineProperty(Cn,"never",{enumerable:!0,get:function(){return Jtl.never}});var Utl=Zwt();Object.defineProperty(Cn,"of",{enumerable:!0,get:function(){return Utl.of}});var Ktl=MOr();Object.defineProperty(Cn,"onErrorResumeNext",{enumerable:!0,get:function(){return Ktl.onErrorResumeNext}});var jtl=zqi();Object.defineProperty(Cn,"pairs",{enumerable:!0,get:function(){return jtl.pairs}});var ztl=e$i();Object.defineProperty(Cn,"partition",{enumerable:!0,get:function(){return ztl.partition}});var qtl=YOr();Object.defineProperty(Cn,"race",{enumerable:!0,get:function(){return qtl.race}});var $tl=n$i();Object.defineProperty(Cn,"range",{enumerable:!0,get:function(){return $tl.range}});var erl=DOr();Object.defineProperty(Cn,"throwError",{enumerable:!0,get:function(){return erl.throwError}});var trl=ble();Object.defineProperty(Cn,"timer",{enumerable:!0,get:function(){return trl.timer}});var rrl=i$i();Object.defineProperty(Cn,"using",{enumerable:!0,get:function(){return rrl.using}});var nrl=bTt();Object.defineProperty(Cn,"zip",{enumerable:!0,get:function(){return nrl.zip}});var irl=NOr();Object.defineProperty(Cn,"scheduled",{enumerable:!0,get:function(){return irl.scheduled}});var srl=x4();Object.defineProperty(Cn,"EMPTY",{enumerable:!0,get:function(){return srl.EMPTY}});var orl=OOr();Object.defineProperty(Cn,"NEVER",{enumerable:!0,get:function(){return orl.NEVER}});atl(o$i(),Cn);var arl=Ike();Object.defineProperty(Cn,"config",{enumerable:!0,get:function(){return arl.config}});var crl=STt();Object.defineProperty(Cn,"audit",{enumerable:!0,get:function(){return crl.audit}});var lrl=QOr();Object.defineProperty(Cn,"auditTime",{enumerable:!0,get:function(){return lrl.auditTime}});var url=XOr();Object.defineProperty(Cn,"buffer",{enumerable:!0,get:function(){return url.buffer}});var grl=UOr();Object.defineProperty(Cn,"bufferCount",{enumerable:!0,get:function(){return grl.bufferCount}});var Arl=KOr();Object.defineProperty(Cn,"bufferTime",{enumerable:!0,get:function(){return Arl.bufferTime}});var drl=zOr();Object.defineProperty(Cn,"bufferToggle",{enumerable:!0,get:function(){return drl.bufferToggle}});var prl=qOr();Object.defineProperty(Cn,"bufferWhen",{enumerable:!0,get:function(){return prl.bufferWhen}});var frl=$Or();Object.defineProperty(Cn,"catchError",{enumerable:!0,get:function(){return frl.catchError}});var Irl=r3r();Object.defineProperty(Cn,"combineAll",{enumerable:!0,get:function(){return Irl.combineAll}});var hrl=FTt();Object.defineProperty(Cn,"combineLatestAll",{enumerable:!0,get:function(){return hrl.combineLatestAll}});var mrl=i3r();Object.defineProperty(Cn,"combineLatestWith",{enumerable:!0,get:function(){return mrl.combineLatestWith}});var Crl=W8e();Object.defineProperty(Cn,"concatAll",{enumerable:!0,get:function(){return Crl.concatAll}});var _rl=VTt();Object.defineProperty(Cn,"concatMap",{enumerable:!0,get:function(){return _rl.concatMap}});var yrl=s3r();Object.defineProperty(Cn,"concatMapTo",{enumerable:!0,get:function(){return yrl.concatMapTo}});var brl=a3r();Object.defineProperty(Cn,"concatWith",{enumerable:!0,get:function(){return brl.concatWith}});var Erl=H8e();Object.defineProperty(Cn,"connect",{enumerable:!0,get:function(){return Erl.connect}});var Srl=c3r();Object.defineProperty(Cn,"count",{enumerable:!0,get:function(){return Srl.count}});var vrl=l3r();Object.defineProperty(Cn,"debounce",{enumerable:!0,get:function(){return vrl.debounce}});var Brl=u3r();Object.defineProperty(Cn,"debounceTime",{enumerable:!0,get:function(){return Brl.debounceTime}});var wrl=jke();Object.defineProperty(Cn,"defaultIfEmpty",{enumerable:!0,get:function(){return wrl.defaultIfEmpty}});var Trl=g3r();Object.defineProperty(Cn,"delay",{enumerable:!0,get:function(){return Trl.delay}});var Rrl=qTt();Object.defineProperty(Cn,"delayWhen",{enumerable:!0,get:function(){return Rrl.delayWhen}});var Nrl=A3r();Object.defineProperty(Cn,"dematerialize",{enumerable:!0,get:function(){return Nrl.dematerialize}});var Drl=d3r();Object.defineProperty(Cn,"distinct",{enumerable:!0,get:function(){return Drl.distinct}});var krl=nRt();Object.defineProperty(Cn,"distinctUntilChanged",{enumerable:!0,get:function(){return krl.distinctUntilChanged}});var xrl=p3r();Object.defineProperty(Cn,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return xrl.distinctUntilKeyChanged}});var Grl=f3r();Object.defineProperty(Cn,"elementAt",{enumerable:!0,get:function(){return Grl.elementAt}});var Frl=I3r();Object.defineProperty(Cn,"endWith",{enumerable:!0,get:function(){return Frl.endWith}});var Zrl=h3r();Object.defineProperty(Cn,"every",{enumerable:!0,get:function(){return Zrl.every}});var Lrl=m3r();Object.defineProperty(Cn,"exhaust",{enumerable:!0,get:function(){return Lrl.exhaust}});var Vrl=gRt();Object.defineProperty(Cn,"exhaustAll",{enumerable:!0,get:function(){return Vrl.exhaustAll}});var Prl=lRt();Object.defineProperty(Cn,"exhaustMap",{enumerable:!0,get:function(){return Prl.exhaustMap}});var Wrl=C3r();Object.defineProperty(Cn,"expand",{enumerable:!0,get:function(){return Wrl.expand}});var Orl=ute();Object.defineProperty(Cn,"filter",{enumerable:!0,get:function(){return Orl.filter}});var Mrl=_3r();Object.defineProperty(Cn,"finalize",{enumerable:!0,get:function(){return Mrl.finalize}});var Hrl=fRt();Object.defineProperty(Cn,"find",{enumerable:!0,get:function(){return Hrl.find}});var Yrl=y3r();Object.defineProperty(Cn,"findIndex",{enumerable:!0,get:function(){return Yrl.findIndex}});var Qrl=b3r();Object.defineProperty(Cn,"first",{enumerable:!0,get:function(){return Qrl.first}});var Xrl=E3r();Object.defineProperty(Cn,"groupBy",{enumerable:!0,get:function(){return Xrl.groupBy}});var Jrl=UTt();Object.defineProperty(Cn,"ignoreElements",{enumerable:!0,get:function(){return Jrl.ignoreElements}});var Url=S3r();Object.defineProperty(Cn,"isEmpty",{enumerable:!0,get:function(){return Url.isEmpty}});var Krl=v3r();Object.defineProperty(Cn,"last",{enumerable:!0,get:function(){return Krl.last}});var jrl=lte();Object.defineProperty(Cn,"map",{enumerable:!0,get:function(){return jrl.map}});var zrl=jTt();Object.defineProperty(Cn,"mapTo",{enumerable:!0,get:function(){return zrl.mapTo}});var qrl=w3r();Object.defineProperty(Cn,"materialize",{enumerable:!0,get:function(){return qrl.materialize}});var $rl=T3r();Object.defineProperty(Cn,"max",{enumerable:!0,get:function(){return $rl.max}});var enl=Hke();Object.defineProperty(Cn,"mergeAll",{enumerable:!0,get:function(){return enl.mergeAll}});var tnl=R3r();Object.defineProperty(Cn,"flatMap",{enumerable:!0,get:function(){return tnl.flatMap}});var rnl=Kj();Object.defineProperty(Cn,"mergeMap",{enumerable:!0,get:function(){return rnl.mergeMap}});var nnl=N3r();Object.defineProperty(Cn,"mergeMapTo",{enumerable:!0,get:function(){return nnl.mergeMapTo}});var inl=D3r();Object.defineProperty(Cn,"mergeScan",{enumerable:!0,get:function(){return inl.mergeScan}});var snl=x3r();Object.defineProperty(Cn,"mergeWith",{enumerable:!0,get:function(){return snl.mergeWith}});var onl=G3r();Object.defineProperty(Cn,"min",{enumerable:!0,get:function(){return onl.min}});var anl=Y8e();Object.defineProperty(Cn,"multicast",{enumerable:!0,get:function(){return anl.multicast}});var cnl=Wke();Object.defineProperty(Cn,"observeOn",{enumerable:!0,get:function(){return cnl.observeOn}});var lnl=F3r();Object.defineProperty(Cn,"onErrorResumeNextWith",{enumerable:!0,get:function(){return lnl.onErrorResumeNextWith}});var unl=Z3r();Object.defineProperty(Cn,"pairwise",{enumerable:!0,get:function(){return unl.pairwise}});var gnl=L3r();Object.defineProperty(Cn,"pluck",{enumerable:!0,get:function(){return gnl.pluck}});var Anl=V3r();Object.defineProperty(Cn,"publish",{enumerable:!0,get:function(){return Anl.publish}});var dnl=P3r();Object.defineProperty(Cn,"publishBehavior",{enumerable:!0,get:function(){return dnl.publishBehavior}});var pnl=W3r();Object.defineProperty(Cn,"publishLast",{enumerable:!0,get:function(){return pnl.publishLast}});var fnl=O3r();Object.defineProperty(Cn,"publishReplay",{enumerable:!0,get:function(){return fnl.publishReplay}});var Inl=FRt();Object.defineProperty(Cn,"raceWith",{enumerable:!0,get:function(){return Inl.raceWith}});var hnl=C_e();Object.defineProperty(Cn,"reduce",{enumerable:!0,get:function(){return hnl.reduce}});var mnl=M3r();Object.defineProperty(Cn,"repeat",{enumerable:!0,get:function(){return mnl.repeat}});var Cnl=H3r();Object.defineProperty(Cn,"repeatWhen",{enumerable:!0,get:function(){return Cnl.repeatWhen}});var _nl=Y3r();Object.defineProperty(Cn,"retry",{enumerable:!0,get:function(){return _nl.retry}});var ynl=Q3r();Object.defineProperty(Cn,"retryWhen",{enumerable:!0,get:function(){return ynl.retryWhen}});var bnl=awt();Object.defineProperty(Cn,"refCount",{enumerable:!0,get:function(){return bnl.refCount}});var Enl=ORt();Object.defineProperty(Cn,"sample",{enumerable:!0,get:function(){return Enl.sample}});var Snl=X3r();Object.defineProperty(Cn,"sampleTime",{enumerable:!0,get:function(){return Snl.sampleTime}});var vnl=J3r();Object.defineProperty(Cn,"scan",{enumerable:!0,get:function(){return vnl.scan}});var Bnl=U3r();Object.defineProperty(Cn,"sequenceEqual",{enumerable:!0,get:function(){return Bnl.sequenceEqual}});var wnl=QRt();Object.defineProperty(Cn,"share",{enumerable:!0,get:function(){return wnl.share}});var Tnl=j3r();Object.defineProperty(Cn,"shareReplay",{enumerable:!0,get:function(){return Tnl.shareReplay}});var Rnl=z3r();Object.defineProperty(Cn,"single",{enumerable:!0,get:function(){return Rnl.single}});var Nnl=q3r();Object.defineProperty(Cn,"skip",{enumerable:!0,get:function(){return Nnl.skip}});var Dnl=$3r();Object.defineProperty(Cn,"skipLast",{enumerable:!0,get:function(){return Dnl.skipLast}});var knl=e5r();Object.defineProperty(Cn,"skipUntil",{enumerable:!0,get:function(){return knl.skipUntil}});var xnl=t5r();Object.defineProperty(Cn,"skipWhile",{enumerable:!0,get:function(){return xnl.skipWhile}});var Gnl=r5r();Object.defineProperty(Cn,"startWith",{enumerable:!0,get:function(){return Gnl.startWith}});var Fnl=Oke();Object.defineProperty(Cn,"subscribeOn",{enumerable:!0,get:function(){return Fnl.subscribeOn}});var Znl=n5r();Object.defineProperty(Cn,"switchAll",{enumerable:!0,get:function(){return Znl.switchAll}});var Lnl=txe();Object.defineProperty(Cn,"switchMap",{enumerable:!0,get:function(){return Lnl.switchMap}});var Vnl=i5r();Object.defineProperty(Cn,"switchMapTo",{enumerable:!0,get:function(){return Vnl.switchMapTo}});var Pnl=s5r();Object.defineProperty(Cn,"switchScan",{enumerable:!0,get:function(){return Pnl.switchScan}});var Wnl=zke();Object.defineProperty(Cn,"take",{enumerable:!0,get:function(){return Wnl.take}});var Onl=_Rt();Object.defineProperty(Cn,"takeLast",{enumerable:!0,get:function(){return Onl.takeLast}});var Mnl=o5r();Object.defineProperty(Cn,"takeUntil",{enumerable:!0,get:function(){return Mnl.takeUntil}});var Hnl=a5r();Object.defineProperty(Cn,"takeWhile",{enumerable:!0,get:function(){return Hnl.takeWhile}});var Ynl=c5r();Object.defineProperty(Cn,"tap",{enumerable:!0,get:function(){return Ynl.tap}});var Qnl=aNt();Object.defineProperty(Cn,"throttle",{enumerable:!0,get:function(){return Qnl.throttle}});var Xnl=l5r();Object.defineProperty(Cn,"throttleTime",{enumerable:!0,get:function(){return Xnl.throttleTime}});var Jnl=qke();Object.defineProperty(Cn,"throwIfEmpty",{enumerable:!0,get:function(){return Jnl.throwIfEmpty}});var Unl=u5r();Object.defineProperty(Cn,"timeInterval",{enumerable:!0,get:function(){return Unl.timeInterval}});var Knl=P8e();Object.defineProperty(Cn,"timeout",{enumerable:!0,get:function(){return Knl.timeout}});var jnl=g5r();Object.defineProperty(Cn,"timeoutWith",{enumerable:!0,get:function(){return jnl.timeoutWith}});var znl=A5r();Object.defineProperty(Cn,"timestamp",{enumerable:!0,get:function(){return znl.timestamp}});var qnl=kTt();Object.defineProperty(Cn,"toArray",{enumerable:!0,get:function(){return qnl.toArray}});var $nl=d5r();Object.defineProperty(Cn,"window",{enumerable:!0,get:function(){return $nl.window}});var eil=p5r();Object.defineProperty(Cn,"windowCount",{enumerable:!0,get:function(){return eil.windowCount}});var til=f5r();Object.defineProperty(Cn,"windowTime",{enumerable:!0,get:function(){return til.windowTime}});var ril=h5r();Object.defineProperty(Cn,"windowToggle",{enumerable:!0,get:function(){return ril.windowToggle}});var nil=m5r();Object.defineProperty(Cn,"windowWhen",{enumerable:!0,get:function(){return nil.windowWhen}});var iil=C5r();Object.defineProperty(Cn,"withLatestFrom",{enumerable:!0,get:function(){return iil.withLatestFrom}});var sil=_5r();Object.defineProperty(Cn,"zipAll",{enumerable:!0,get:function(){return sil.zipAll}});var oil=b5r();Object.defineProperty(Cn,"zipWith",{enumerable:!0,get:function(){return oil.zipWith}})});var gte=H(LV=>{"use strict";Object.defineProperty(LV,"__esModule",{value:!0});LV.PathIsFileException=LV.PathIsDirectoryException=LV.FileAlreadyExistException=LV.FileDoesNotExistException=LV.UnknownException=LV.BaseException=void 0;var Lle=class extends Error{constructor(t=""){super(t)}};LV.BaseException=Lle;var E5r=class extends Lle{constructor(t){super(t)}};LV.UnknownException=E5r;var S5r=class extends Lle{constructor(t){super(`Path "${t}" does not exist.`)}};LV.FileDoesNotExistException=S5r;var v5r=class extends Lle{constructor(t){super(`Path "${t}" already exist.`)}};LV.FileAlreadyExistException=v5r;var B5r=class extends Lle{constructor(t){super(`Path "${t}" is a directory.`)}};LV.PathIsDirectoryException=B5r;var w5r=class extends Lle{constructor(t){super(`Path "${t}" is a file.`)}};LV.PathIsFileException=w5r});var Aes=H(__e=>{"use strict";Object.defineProperty(__e,"__esModule",{value:!0});__e.oneLine=ail;__e.indentBy=cil;__e.stripIndent=ges;__e.stripIndents=lil;__e.trimNewlines=uil;function ail(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function cil(e){let t="";for(;e--;)t+=" ";return(r,...n)=>t+ges(r,...n).replace(/\n/g,` -`+t)}function ges(e,...t){let r=String.raw(e,...t),n=r.match(/^[ \t]*(?=\S)/gm);if(n===null)return r;let a=Math.min(...n.map(l=>l.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function lil(e,...t){return String.raw(e,...t).split(` + `):"",this.name="UnsubscriptionError",this.errors=r}})});var ote=H(ewt=>{"use strict";Object.defineProperty(ewt,"__esModule",{value:!0});ewt.arrRemove=void 0;function QQc(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}ewt.arrRemove=QQc});var TO=H(GV=>{"use strict";var Tzi=GV&&GV.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},Rzi=GV&&GV.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Nzi=GV&&GV.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(twt,"__esModule",{value:!0});twt.config=void 0;twt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var lOr=H(Yj=>{"use strict";var xzi=Yj&&Yj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Gzi=Yj&&Yj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(rwt,"__esModule",{value:!0});rwt.reportUnhandledError=void 0;var JQc=mke(),UQc=lOr();function KQc(e){UQc.timeoutProvider.setTimeout(function(){var t=JQc.config.onUnhandledError;if(t)t(e);else throw e})}rwt.reportUnhandledError=KQc});var rx=H(nwt=>{"use strict";Object.defineProperty(nwt,"__esModule",{value:!0});nwt.noop=void 0;function jQc(){}nwt.noop=jQc});var Fzi=H(Qj=>{"use strict";Object.defineProperty(Qj,"__esModule",{value:!0});Qj.createNotification=Qj.nextNotification=Qj.errorNotification=Qj.COMPLETE_NOTIFICATION=void 0;Qj.COMPLETE_NOTIFICATION=function(){return iwt("C",void 0,void 0)}();function zQc(e){return iwt("E",void 0,e)}Qj.errorNotification=zQc;function qQc(e){return iwt("N",e,void 0)}Qj.nextNotification=qQc;function iwt(e,t,r){return{kind:e,value:t,error:r}}Qj.createNotification=iwt});var swt=H(Cke=>{"use strict";Object.defineProperty(Cke,"__esModule",{value:!0});Cke.captureError=Cke.errorContext=void 0;var Zzi=mke(),g_e=null;function $Qc(e){if(Zzi.config.useDeprecatedSynchronousErrorHandling){var t=!g_e;if(t&&(g_e={errorThrown:!1,error:null}),e(),t){var r=g_e,n=r.errorThrown,a=r.error;if(g_e=null,n)throw a}}else e()}Cke.errorContext=$Qc;function eXc(e){Zzi.config.useDeprecatedSynchronousErrorHandling&&g_e&&(g_e.errorThrown=!0,g_e.error=e)}Cke.captureError=eXc});var _ke=H(D4=>{"use strict";var Pzi=D4&&D4.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(D4,"__esModule",{value:!0});D4.EMPTY_OBSERVER=D4.SafeSubscriber=D4.Subscriber=void 0;var tXc=Sy(),Lzi=TO(),pOr=mke(),rXc=uOr(),Vzi=rx(),gOr=Fzi(),nXc=lOr(),iXc=swt(),Wzi=function(e){Pzi(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,Lzi.isSubscription(r)&&r.add(n)):n.destination=D4.EMPTY_OBSERVER,n}return t.create=function(r,n,a){return new Ozi(r,n,a)},t.prototype.next=function(r){this.isStopped?dOr(gOr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?dOr(gOr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?dOr(gOr.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(Lzi.Subscription);D4.Subscriber=Wzi;var sXc=Function.prototype.bind;function AOr(e,t){return sXc.call(e,t)}var oXc=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){owt(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){owt(n)}else owt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){owt(r)}},e}(),Ozi=function(e){Pzi(t,e);function t(r,n,a){var o=e.call(this)||this,l;if(tXc.isFunction(r)||!r)l={next:r??void 0,error:n??void 0,complete:a??void 0};else{var A;o&&pOr.config.useDeprecatedNextContext?(A=Object.create(r),A.unsubscribe=function(){return o.unsubscribe()},l={next:r.next&&AOr(r.next,A),error:r.error&&AOr(r.error,A),complete:r.complete&&AOr(r.complete,A)}):l=r}return o.destination=new oXc(l),o}return t}(Wzi);D4.SafeSubscriber=Ozi;function owt(e){pOr.config.useDeprecatedSynchronousErrorHandling?iXc.captureError(e):rXc.reportUnhandledError(e)}function aXc(e){throw e}function dOr(e,t){var r=pOr.config.onStoppedNotification;r&&nXc.timeoutProvider.setTimeout(function(){return r(e,t)})}D4.EMPTY_OBSERVER={closed:!0,next:Vzi.noop,error:aXc,complete:Vzi.noop}});var F8e=H(awt=>{"use strict";Object.defineProperty(awt,"__esModule",{value:!0});awt.observable=void 0;awt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var nx=H(cwt=>{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.identity=void 0;function cXc(e){return e}cwt.identity=cXc});var Z8e=H(yke=>{"use strict";Object.defineProperty(yke,"__esModule",{value:!0});yke.pipeFromArray=yke.pipe=void 0;var lXc=nx();function uXc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(lwt,"__esModule",{value:!0});lwt.Observable=void 0;var IOr=_ke(),gXc=TO(),AXc=F8e(),dXc=Z8e(),pXc=mke(),fOr=Sy(),fXc=swt(),IXc=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,n){var a=this,o=mXc(t)?t:new IOr.SafeSubscriber(t,r,n);return fXc.errorContext(function(){var l=a,A=l.operator,f=l.source;o.add(A?A.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var n=this;return r=Hzi(r),new r(function(a,o){var l=new IOr.SafeSubscriber({next:function(A){try{t(A)}catch(f){o(f),l.unsubscribe()}},error:o,complete:a});n.subscribe(l)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[AXc.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(bke,"__esModule",{value:!0});bke.operate=bke.hasLift=void 0;var CXc=Sy();function Yzi(e){return CXc.isFunction(e?.lift)}bke.hasLift=Yzi;function _Xc(e){return function(t){if(Yzi(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}bke.operate=_Xc});var Cd=H(Ile=>{"use strict";var yXc=Ile&&Ile.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Ile,"__esModule",{value:!0});Ile.OperatorSubscriber=Ile.createOperatorSubscriber=void 0;var bXc=_ke();function EXc(e,t,r,n,a){return new Qzi(e,t,r,n,a)}Ile.createOperatorSubscriber=EXc;var Qzi=function(e){yXc(t,e);function t(r,n,a,o,l,A){var f=e.call(this,r)||this;return f.onFinalize=l,f.shouldUnsubscribe=A,f._next=n?function(I){try{n(I)}catch(C){r.error(C)}}:e.prototype._next,f._error=o?function(I){try{o(I)}catch(C){r.error(C)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(I){r.error(I)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(bXc.Subscriber);Ile.OperatorSubscriber=Qzi});var gwt=H(uwt=>{"use strict";Object.defineProperty(uwt,"__esModule",{value:!0});uwt.refCount=void 0;var SXc=qg(),vXc=Cd();function BXc(){return SXc.operate(function(e,t){var r=null;e._refCount++;var n=vXc.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}uwt.refCount=BXc});var L8e=H(Eke=>{"use strict";var wXc=Eke&&Eke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Eke,"__esModule",{value:!0});Eke.ConnectableObservable=void 0;var TXc=ub(),Xzi=TO(),RXc=gwt(),NXc=Cd(),DXc=qg(),kXc=function(e){wXc(t,e);function t(r,n){var a=e.call(this)||this;return a.source=r,a.subjectFactory=n,a._subject=null,a._refCount=0,a._connection=null,DXc.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,n=this._connection;if(!n){n=this._connection=new Xzi.Subscription;var a=this.getSubject();n.add(this.source.subscribe(NXc.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),n.closed&&(this._connection=null,n=Xzi.Subscription.EMPTY)}return n},t.prototype.refCount=function(){return RXc.refCount()(this)},t}(TXc.Observable);Eke.ConnectableObservable=kXc});var Jzi=H(V8e=>{"use strict";Object.defineProperty(V8e,"__esModule",{value:!0});V8e.performanceTimestampProvider=void 0;V8e.performanceTimestampProvider={now:function(){return(V8e.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var hOr=H(k4=>{"use strict";var Uzi=k4&&k4.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Kzi=k4&&k4.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(Awt,"__esModule",{value:!0});Awt.animationFrames=void 0;var GXc=ub(),FXc=Jzi(),jzi=hOr();function ZXc(e){return e?zzi(e):LXc}Awt.animationFrames=ZXc;function zzi(e){return new GXc.Observable(function(t){var r=e||FXc.performanceTimestampProvider,n=r.now(),a=0,o=function(){t.closed||(a=jzi.animationFrameProvider.requestAnimationFrame(function(l){a=0;var A=r.now();t.next({timestamp:e?A:l,elapsed:A-n}),o()}))};return o(),function(){a&&jzi.animationFrameProvider.cancelAnimationFrame(a)}})}var LXc=zzi()});var mOr=H(dwt=>{"use strict";Object.defineProperty(dwt,"__esModule",{value:!0});dwt.ObjectUnsubscribedError=void 0;var VXc=fle();dwt.ObjectUnsubscribedError=VXc.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var ix=H(Xj=>{"use strict";var eqi=Xj&&Xj.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),PXc=Xj&&Xj.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Xj,"__esModule",{value:!0});Xj.AnonymousSubject=Xj.Subject=void 0;var $zi=ub(),_Or=TO(),WXc=mOr(),OXc=ote(),COr=swt(),tqi=function(e){eqi(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var n=new yOr(this,this);return n.operator=r,n},t.prototype._throwIfClosed=function(){if(this.closed)throw new WXc.ObjectUnsubscribedError},t.prototype.next=function(r){var n=this;COr.errorContext(function(){var a,o;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var l=PXc(n.currentObservers),A=l.next();!A.done;A=l.next()){var f=A.value;f.next(r)}}catch(I){a={error:I}}finally{try{A&&!A.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var n=this;COr.errorContext(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=r;for(var a=n.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;COr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var n=r.observers;n.length;)n.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,a=this,o=a.hasError,l=a.isStopped,A=a.observers;return o||l?_Or.EMPTY_SUBSCRIPTION:(this.currentObservers=null,A.push(r),new _Or.Subscription(function(){n.currentObservers=null,OXc.arrRemove(A,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n.thrownError,l=n.isStopped;a?r.error(o):l&&r.complete()},t.prototype.asObservable=function(){var r=new $zi.Observable;return r.source=this,r},t.create=function(r,n){return new yOr(r,n)},t}($zi.Observable);Xj.Subject=tqi;var yOr=function(e){eqi(t,e);function t(r,n){var a=e.call(this)||this;return a.destination=r,a.source=n,a}return t.prototype.next=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.next)===null||a===void 0||a.call(n,r)},t.prototype.error=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.error)===null||a===void 0||a.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,a;return(a=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&a!==void 0?a:_Or.EMPTY_SUBSCRIPTION},t}(tqi);Xj.AnonymousSubject=yOr});var bOr=H(Ske=>{"use strict";var MXc=Ske&&Ske.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Ske,"__esModule",{value:!0});Ske.BehaviorSubject=void 0;var HXc=ix(),YXc=function(e){MXc(t,e);function t(r){var n=e.call(this)||this;return n._value=r,n}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var n=e.prototype._subscribe.call(this,r);return!n.closed&&r.next(this._value),n},t.prototype.getValue=function(){var r=this,n=r.hasError,a=r.thrownError,o=r._value;if(n)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(HXc.Subject);Ske.BehaviorSubject=YXc});var pwt=H(P8e=>{"use strict";Object.defineProperty(P8e,"__esModule",{value:!0});P8e.dateTimestampProvider=void 0;P8e.dateTimestampProvider={now:function(){return(P8e.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var fwt=H(vke=>{"use strict";var QXc=vke&&vke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(vke,"__esModule",{value:!0});vke.ReplaySubject=void 0;var XXc=ix(),JXc=pwt(),UXc=function(e){QXc(t,e);function t(r,n,a){r===void 0&&(r=1/0),n===void 0&&(n=1/0),a===void 0&&(a=JXc.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=n,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=n===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,n),o}return t.prototype.next=function(r){var n=this,a=n.isStopped,o=n._buffer,l=n._infiniteTimeWindow,A=n._timestampProvider,f=n._windowTime;a||(o.push(r),!l&&o.push(A.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,l=a._buffer,A=l.slice(),f=0;f{"use strict";var KXc=Bke&&Bke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Bke,"__esModule",{value:!0});Bke.AsyncSubject=void 0;var jXc=ix(),zXc=function(e){KXc(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n._hasValue,l=n._value,A=n.thrownError,f=n.isStopped,I=n._isComplete;a?r.error(A):(f||I)&&(o&&r.next(l),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,n=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,n&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(jXc.Subject);Bke.AsyncSubject=zXc});var rqi=H(wke=>{"use strict";var qXc=wke&&wke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(wke,"__esModule",{value:!0});wke.Action=void 0;var $Xc=TO(),e4c=function(e){qXc(t,e);function t(r,n){return e.call(this)||this}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),this},t}($Xc.Subscription);wke.Action=e4c});var sqi=H(Jj=>{"use strict";var nqi=Jj&&Jj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},iqi=Jj&&Jj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var t4c=Tke&&Tke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Tke,"__esModule",{value:!0});Tke.AsyncAction=void 0;var r4c=rqi(),oqi=sqi(),n4c=ote(),i4c=function(e){t4c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a.pending=!1,a}return t.prototype.schedule=function(r,n){var a;if(n===void 0&&(n=0),this.closed)return this;this.state=r;var o=this.id,l=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(l,o,n)),this.pending=!0,this.delay=n,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(l,this.id,n),this},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),oqi.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,n,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return n;n!=null&&oqi.intervalProvider.clearInterval(n)},t.prototype.execute=function(r,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,n);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,n){var a=!1,o;try{this.work(r)}catch(l){a=!0,o=l||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,n=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,n4c.arrRemove(o,this),n!=null&&(this.id=this.recycleAsyncId(a,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(r4c.Action);Tke.AsyncAction=i4c});var cqi=H(Nke=>{"use strict";Object.defineProperty(Nke,"__esModule",{value:!0});Nke.TestTools=Nke.Immediate=void 0;var s4c=1,EOr,hwt={};function aqi(e){return e in hwt?(delete hwt[e],!0):!1}Nke.Immediate={setImmediate:function(e){var t=s4c++;return hwt[t]=!0,EOr||(EOr=Promise.resolve()),EOr.then(function(){return aqi(t)&&e()}),t},clearImmediate:function(e){aqi(e)}};Nke.TestTools={pending:function(){return Object.keys(hwt).length}}});var uqi=H(Uj=>{"use strict";var o4c=Uj&&Uj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},a4c=Uj&&Uj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var u4c=Dke&&Dke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Dke,"__esModule",{value:!0});Dke.AsapAction=void 0;var g4c=Rke(),gqi=uqi(),A4c=function(e){u4c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=gqi.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(gqi.immediateProvider.clearImmediate(n),r._scheduled===n&&(r._scheduled=void 0))},t}(g4c.AsyncAction);Dke.AsapAction=A4c});var SOr=H(mwt=>{"use strict";Object.defineProperty(mwt,"__esModule",{value:!0});mwt.Scheduler=void 0;var d4c=pwt(),p4c=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,n){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(n,r)},e.now=d4c.dateTimestampProvider.now,e}();mwt.Scheduler=p4c});var xke=H(kke=>{"use strict";var f4c=kke&&kke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(kke,"__esModule",{value:!0});kke.AsyncScheduler=void 0;var dqi=SOr(),I4c=function(e){f4c(t,e);function t(r,n){n===void 0&&(n=dqi.Scheduler.now);var a=e.call(this,r,n)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var n=this.actions;if(this._active){n.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=n.shift());if(this._active=!1,a){for(;r=n.shift();)r.unsubscribe();throw a}},t}(dqi.Scheduler);kke.AsyncScheduler=I4c});var pqi=H(Gke=>{"use strict";var h4c=Gke&&Gke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Gke,"__esModule",{value:!0});Gke.AsapScheduler=void 0;var m4c=xke(),C4c=function(e){h4c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(m4c.AsyncScheduler);Gke.AsapScheduler=C4c});var fqi=H(A_e=>{"use strict";Object.defineProperty(A_e,"__esModule",{value:!0});A_e.asap=A_e.asapScheduler=void 0;var _4c=Aqi(),y4c=pqi();A_e.asapScheduler=new y4c.AsapScheduler(_4c.AsapAction);A_e.asap=A_e.asapScheduler});var FV=H(d_e=>{"use strict";Object.defineProperty(d_e,"__esModule",{value:!0});d_e.async=d_e.asyncScheduler=void 0;var b4c=Rke(),E4c=xke();d_e.asyncScheduler=new E4c.AsyncScheduler(b4c.AsyncAction);d_e.async=d_e.asyncScheduler});var Iqi=H(Fke=>{"use strict";var S4c=Fke&&Fke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Fke,"__esModule",{value:!0});Fke.QueueAction=void 0;var v4c=Rke(),B4c=function(e){S4c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),n>0?e.prototype.schedule.call(this,r,n):(this.delay=n,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,n){return n>0||this.closed?e.prototype.execute.call(this,r,n):this._execute(r,n)},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.flush(this),0)},t}(v4c.AsyncAction);Fke.QueueAction=B4c});var hqi=H(Zke=>{"use strict";var w4c=Zke&&Zke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Zke,"__esModule",{value:!0});Zke.QueueScheduler=void 0;var T4c=xke(),R4c=function(e){w4c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(T4c.AsyncScheduler);Zke.QueueScheduler=R4c});var mqi=H(p_e=>{"use strict";Object.defineProperty(p_e,"__esModule",{value:!0});p_e.queue=p_e.queueScheduler=void 0;var N4c=Iqi(),D4c=hqi();p_e.queueScheduler=new D4c.QueueScheduler(N4c.QueueAction);p_e.queue=p_e.queueScheduler});var _qi=H(Lke=>{"use strict";var k4c=Lke&&Lke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Lke,"__esModule",{value:!0});Lke.AnimationFrameAction=void 0;var x4c=Rke(),Cqi=hOr(),G4c=function(e){k4c(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=Cqi.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(Cqi.animationFrameProvider.cancelAnimationFrame(n),r._scheduled=void 0)},t}(x4c.AsyncAction);Lke.AnimationFrameAction=G4c});var yqi=H(Vke=>{"use strict";var F4c=Vke&&Vke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Vke,"__esModule",{value:!0});Vke.AnimationFrameScheduler=void 0;var Z4c=xke(),L4c=function(e){F4c(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(Z4c.AsyncScheduler);Vke.AnimationFrameScheduler=L4c});var bqi=H(f_e=>{"use strict";Object.defineProperty(f_e,"__esModule",{value:!0});f_e.animationFrame=f_e.animationFrameScheduler=void 0;var V4c=_qi(),P4c=yqi();f_e.animationFrameScheduler=new P4c.AnimationFrameScheduler(V4c.AnimationFrameAction);f_e.animationFrame=f_e.animationFrameScheduler});var vqi=H(hle=>{"use strict";var Eqi=hle&&hle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(hle,"__esModule",{value:!0});hle.VirtualAction=hle.VirtualTimeScheduler=void 0;var W4c=Rke(),O4c=TO(),M4c=xke(),H4c=function(e){Eqi(t,e);function t(r,n){r===void 0&&(r=Sqi),n===void 0&&(n=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=n,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,n=r.actions,a=r.maxFrames,o,l;(l=n[0])&&l.delay<=a&&(n.shift(),this.frame=l.delay,!(o=l.execute(l.state,l.delay))););if(o){for(;l=n.shift();)l.unsubscribe();throw o}},t.frameTimeFactor=10,t}(M4c.AsyncScheduler);hle.VirtualTimeScheduler=H4c;var Sqi=function(e){Eqi(t,e);function t(r,n,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,n)||this;return o.scheduler=r,o.work=n,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,n){if(n===void 0&&(n=0),Number.isFinite(n)){if(!this.id)return e.prototype.schedule.call(this,r,n);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,n)}else return O4c.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,n,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,n,a){a===void 0&&(a=0)},t.prototype._execute=function(r,n){if(this.active===!0)return e.prototype._execute.call(this,r,n)},t.sortActions=function(r,n){return r.delay===n.delay?r.index===n.index?0:r.index>n.index?1:-1:r.delay>n.delay?1:-1},t}(W4c.AsyncAction);hle.VirtualAction=Sqi});var x4=H(I_e=>{"use strict";Object.defineProperty(I_e,"__esModule",{value:!0});I_e.empty=I_e.EMPTY=void 0;var Bqi=ub();I_e.EMPTY=new Bqi.Observable(function(e){return e.complete()});function Y4c(e){return e?Q4c(e):I_e.EMPTY}I_e.empty=Y4c;function Q4c(e){return new Bqi.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var W8e=H(Cwt=>{"use strict";Object.defineProperty(Cwt,"__esModule",{value:!0});Cwt.isScheduler=void 0;var X4c=Sy();function J4c(e){return e&&X4c.isFunction(e.schedule)}Cwt.isScheduler=J4c});var ZV=H(mle=>{"use strict";Object.defineProperty(mle,"__esModule",{value:!0});mle.popNumber=mle.popScheduler=mle.popResultSelector=void 0;var U4c=Sy(),K4c=W8e();function vOr(e){return e[e.length-1]}function j4c(e){return U4c.isFunction(vOr(e))?e.pop():void 0}mle.popResultSelector=j4c;function z4c(e){return K4c.isScheduler(vOr(e))?e.pop():void 0}mle.popScheduler=z4c;function q4c(e,t){return typeof vOr(e)=="number"?e.pop():t}mle.popNumber=q4c});var ywt=H(_wt=>{"use strict";Object.defineProperty(_wt,"__esModule",{value:!0});_wt.isArrayLike=void 0;_wt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var BOr=H(bwt=>{"use strict";Object.defineProperty(bwt,"__esModule",{value:!0});bwt.isPromise=void 0;var $4c=Sy();function eJc(e){return $4c.isFunction(e?.then)}bwt.isPromise=eJc});var wOr=H(Ewt=>{"use strict";Object.defineProperty(Ewt,"__esModule",{value:!0});Ewt.isInteropObservable=void 0;var tJc=F8e(),rJc=Sy();function nJc(e){return rJc.isFunction(e[tJc.observable])}Ewt.isInteropObservable=nJc});var TOr=H(Swt=>{"use strict";Object.defineProperty(Swt,"__esModule",{value:!0});Swt.isAsyncIterable=void 0;var iJc=Sy();function sJc(e){return Symbol.asyncIterator&&iJc.isFunction(e?.[Symbol.asyncIterator])}Swt.isAsyncIterable=sJc});var ROr=H(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.createInvalidObservableTypeError=void 0;function oJc(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}vwt.createInvalidObservableTypeError=oJc});var NOr=H(Pke=>{"use strict";Object.defineProperty(Pke,"__esModule",{value:!0});Pke.iterator=Pke.getSymbolIterator=void 0;function wqi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}Pke.getSymbolIterator=wqi;Pke.iterator=wqi()});var DOr=H(Bwt=>{"use strict";Object.defineProperty(Bwt,"__esModule",{value:!0});Bwt.isIterable=void 0;var aJc=NOr(),cJc=Sy();function lJc(e){return cJc.isFunction(e?.[aJc.iterator])}Bwt.isIterable=lJc});var wwt=H(CH=>{"use strict";var uJc=CH&&CH.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]1||A(E,N)})})}function A(E,N){try{f(n[E](N))}catch(B){b(o[0][3],B)}}function f(E){E.value instanceof Wke?Promise.resolve(E.value.v).then(I,C):b(o[0][2],E)}function I(E){A("next",E)}function C(E){A("throw",E)}function b(E,N){E(N),o.shift(),o.length&&A(o[0][0],o[0][1])}};Object.defineProperty(CH,"__esModule",{value:!0});CH.isReadableStreamLike=CH.readableStreamLikeToAsyncGenerator=void 0;var AJc=Sy();function dJc(e){return gJc(this,arguments,function(){var r,n,a,o;return uJc(this,function(l){switch(l.label){case 0:r=e.getReader(),l.label=1;case 1:l.trys.push([1,,9,10]),l.label=2;case 2:return[4,Wke(r.read())];case 3:return n=l.sent(),a=n.value,o=n.done,o?[4,Wke(void 0)]:[3,5];case 4:return[2,l.sent()];case 5:return[4,Wke(a)];case 6:return[4,l.sent()];case 7:return l.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}CH.readableStreamLikeToAsyncGenerator=dJc;function pJc(e){return AJc.isFunction(e?.getReader)}CH.isReadableStreamLike=pJc});var uh=H(G2=>{"use strict";var fJc=G2&&G2.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})},IJc=G2&&G2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(G2,"__esModule",{value:!0});G2.fromReadableStreamLike=G2.fromAsyncIterable=G2.fromIterable=G2.fromPromise=G2.fromArrayLike=G2.fromInteropObservable=G2.innerFrom=void 0;var mJc=ywt(),CJc=BOr(),Oke=ub(),_Jc=wOr(),yJc=TOr(),bJc=ROr(),EJc=DOr(),Tqi=wwt(),SJc=Sy(),vJc=uOr(),BJc=F8e();function wJc(e){if(e instanceof Oke.Observable)return e;if(e!=null){if(_Jc.isInteropObservable(e))return Rqi(e);if(mJc.isArrayLike(e))return Nqi(e);if(CJc.isPromise(e))return Dqi(e);if(yJc.isAsyncIterable(e))return xOr(e);if(EJc.isIterable(e))return kqi(e);if(Tqi.isReadableStreamLike(e))return xqi(e)}throw bJc.createInvalidObservableTypeError(e)}G2.innerFrom=wJc;function Rqi(e){return new Oke.Observable(function(t){var r=e[BJc.observable]();if(SJc.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}G2.fromInteropObservable=Rqi;function Nqi(e){return new Oke.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.executeSchedule=void 0;function RJc(e,t,r,n,a){n===void 0&&(n=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(o),!a)return o}Twt.executeSchedule=RJc});var Mke=H(Rwt=>{"use strict";Object.defineProperty(Rwt,"__esModule",{value:!0});Rwt.observeOn=void 0;var GOr=ate(),NJc=qg(),DJc=Cd();function kJc(e,t){return t===void 0&&(t=0),NJc.operate(function(r,n){r.subscribe(DJc.createOperatorSubscriber(n,function(a){return GOr.executeSchedule(n,e,function(){return n.next(a)},t)},function(){return GOr.executeSchedule(n,e,function(){return n.complete()},t)},function(a){return GOr.executeSchedule(n,e,function(){return n.error(a)},t)}))})}Rwt.observeOn=kJc});var Hke=H(Nwt=>{"use strict";Object.defineProperty(Nwt,"__esModule",{value:!0});Nwt.subscribeOn=void 0;var xJc=qg();function GJc(e,t){return t===void 0&&(t=0),xJc.operate(function(r,n){n.add(e.schedule(function(){return r.subscribe(n)},t))})}Nwt.subscribeOn=GJc});var Gqi=H(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.scheduleObservable=void 0;var FJc=uh(),ZJc=Mke(),LJc=Hke();function VJc(e,t){return FJc.innerFrom(e).pipe(LJc.subscribeOn(t),ZJc.observeOn(t))}Dwt.scheduleObservable=VJc});var Fqi=H(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.schedulePromise=void 0;var PJc=uh(),WJc=Mke(),OJc=Hke();function MJc(e,t){return PJc.innerFrom(e).pipe(OJc.subscribeOn(t),WJc.observeOn(t))}kwt.schedulePromise=MJc});var Zqi=H(xwt=>{"use strict";Object.defineProperty(xwt,"__esModule",{value:!0});xwt.scheduleArray=void 0;var HJc=ub();function YJc(e,t){return new HJc.Observable(function(r){var n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}xwt.scheduleArray=YJc});var FOr=H(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.scheduleIterable=void 0;var QJc=ub(),XJc=NOr(),JJc=Sy(),Lqi=ate();function UJc(e,t){return new QJc.Observable(function(r){var n;return Lqi.executeSchedule(r,t,function(){n=e[XJc.iterator](),Lqi.executeSchedule(r,t,function(){var a,o,l;try{a=n.next(),o=a.value,l=a.done}catch(A){r.error(A);return}l?r.complete():r.next(o)},0,!0)}),function(){return JJc.isFunction(n?.return)&&n.return()}})}Gwt.scheduleIterable=UJc});var ZOr=H(Fwt=>{"use strict";Object.defineProperty(Fwt,"__esModule",{value:!0});Fwt.scheduleAsyncIterable=void 0;var KJc=ub(),Vqi=ate();function jJc(e,t){if(!e)throw new Error("Iterable cannot be null");return new KJc.Observable(function(r){Vqi.executeSchedule(r,t,function(){var n=e[Symbol.asyncIterator]();Vqi.executeSchedule(r,t,function(){n.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}Fwt.scheduleAsyncIterable=jJc});var Pqi=H(Zwt=>{"use strict";Object.defineProperty(Zwt,"__esModule",{value:!0});Zwt.scheduleReadableStreamLike=void 0;var zJc=ZOr(),qJc=wwt();function $Jc(e,t){return zJc.scheduleAsyncIterable(qJc.readableStreamLikeToAsyncGenerator(e),t)}Zwt.scheduleReadableStreamLike=$Jc});var LOr=H(Lwt=>{"use strict";Object.defineProperty(Lwt,"__esModule",{value:!0});Lwt.scheduled=void 0;var eUc=Gqi(),tUc=Fqi(),rUc=Zqi(),nUc=FOr(),iUc=ZOr(),sUc=wOr(),oUc=BOr(),aUc=ywt(),cUc=DOr(),lUc=TOr(),uUc=ROr(),gUc=wwt(),AUc=Pqi();function dUc(e,t){if(e!=null){if(sUc.isInteropObservable(e))return eUc.scheduleObservable(e,t);if(aUc.isArrayLike(e))return rUc.scheduleArray(e,t);if(oUc.isPromise(e))return tUc.schedulePromise(e,t);if(lUc.isAsyncIterable(e))return iUc.scheduleAsyncIterable(e,t);if(cUc.isIterable(e))return nUc.scheduleIterable(e,t);if(gUc.isReadableStreamLike(e))return AUc.scheduleReadableStreamLike(e,t)}throw uUc.createInvalidObservableTypeError(e)}Lwt.scheduled=dUc});var cte=H(Vwt=>{"use strict";Object.defineProperty(Vwt,"__esModule",{value:!0});Vwt.from=void 0;var pUc=LOr(),fUc=uh();function IUc(e,t){return t?pUc.scheduled(e,t):fUc.innerFrom(e)}Vwt.from=IUc});var Wwt=H(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.of=void 0;var hUc=ZV(),mUc=cte();function CUc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(Owt,"__esModule",{value:!0});Owt.throwError=void 0;var _Uc=ub(),yUc=Sy();function bUc(e,t){var r=yUc.isFunction(e)?e:function(){return e},n=function(a){return a.error(r())};return new _Uc.Observable(t?function(a){return t.schedule(n,0,a)}:n)}Owt.throwError=bUc});var Mwt=H(lte=>{"use strict";Object.defineProperty(lte,"__esModule",{value:!0});lte.observeNotification=lte.Notification=lte.NotificationKind=void 0;var EUc=x4(),SUc=Wwt(),vUc=VOr(),BUc=Sy(),wUc;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(wUc=lte.NotificationKind||(lte.NotificationKind={}));var TUc=function(){function e(t,r,n){this.kind=t,this.value=r,this.error=n,this.hasValue=t==="N"}return e.prototype.observe=function(t){return Wqi(this,t)},e.prototype.do=function(t,r,n){var a=this,o=a.kind,l=a.value,A=a.error;return o==="N"?t?.(l):o==="E"?r?.(A):n?.()},e.prototype.accept=function(t,r,n){var a;return BUc.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,n)},e.prototype.toObservable=function(){var t=this,r=t.kind,n=t.value,a=t.error,o=r==="N"?SUc.of(n):r==="E"?vUc.throwError(function(){return a}):r==="C"?EUc.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();lte.Notification=TUc;function Wqi(e,t){var r,n,a,o=e,l=o.kind,A=o.value,f=o.error;if(typeof l!="string")throw new TypeError('Invalid notification, missing "kind"');l==="N"?(r=t.next)===null||r===void 0||r.call(t,A):l==="E"?(n=t.error)===null||n===void 0||n.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}lte.observeNotification=Wqi});var Mqi=H(Hwt=>{"use strict";Object.defineProperty(Hwt,"__esModule",{value:!0});Hwt.isObservable=void 0;var RUc=ub(),Oqi=Sy();function NUc(e){return!!e&&(e instanceof RUc.Observable||Oqi.isFunction(e.lift)&&Oqi.isFunction(e.subscribe))}Hwt.isObservable=NUc});var Cle=H(Ywt=>{"use strict";Object.defineProperty(Ywt,"__esModule",{value:!0});Ywt.EmptyError=void 0;var DUc=fle();Ywt.EmptyError=DUc.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var Hqi=H(Qwt=>{"use strict";Object.defineProperty(Qwt,"__esModule",{value:!0});Qwt.lastValueFrom=void 0;var kUc=Cle();function xUc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=!1,l;e.subscribe({next:function(A){l=A,o=!0},error:a,complete:function(){o?n(l):r?n(t.defaultValue):a(new kUc.EmptyError)}})})}Qwt.lastValueFrom=xUc});var Yqi=H(Xwt=>{"use strict";Object.defineProperty(Xwt,"__esModule",{value:!0});Xwt.firstValueFrom=void 0;var GUc=Cle(),FUc=_ke();function ZUc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=new FUc.SafeSubscriber({next:function(l){n(l),o.unsubscribe()},error:a,complete:function(){r?n(t.defaultValue):a(new GUc.EmptyError)}});e.subscribe(o)})}Xwt.firstValueFrom=ZUc});var POr=H(Jwt=>{"use strict";Object.defineProperty(Jwt,"__esModule",{value:!0});Jwt.ArgumentOutOfRangeError=void 0;var LUc=fle();Jwt.ArgumentOutOfRangeError=LUc.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var WOr=H(Uwt=>{"use strict";Object.defineProperty(Uwt,"__esModule",{value:!0});Uwt.NotFoundError=void 0;var VUc=fle();Uwt.NotFoundError=VUc.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var OOr=H(Kwt=>{"use strict";Object.defineProperty(Kwt,"__esModule",{value:!0});Kwt.SequenceError=void 0;var PUc=fle();Kwt.SequenceError=PUc.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var zwt=H(jwt=>{"use strict";Object.defineProperty(jwt,"__esModule",{value:!0});jwt.isValidDate=void 0;function WUc(e){return e instanceof Date&&!isNaN(e)}jwt.isValidDate=WUc});var O8e=H(h_e=>{"use strict";Object.defineProperty(h_e,"__esModule",{value:!0});h_e.timeout=h_e.TimeoutError=void 0;var OUc=FV(),MUc=zwt(),HUc=qg(),YUc=uh(),QUc=fle(),XUc=Cd(),JUc=ate();h_e.TimeoutError=QUc.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function UUc(e,t){var r=MUc.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,n=r.first,a=r.each,o=r.with,l=o===void 0?KUc:o,A=r.scheduler,f=A===void 0?t??OUc.asyncScheduler:A,I=r.meta,C=I===void 0?null:I;if(n==null&&a==null)throw new TypeError("No timeout provided.");return HUc.operate(function(b,E){var N,B,F=null,Q=0,X=function(ae){B=JUc.executeSchedule(E,f,function(){try{N.unsubscribe(),YUc.innerFrom(l({meta:C,lastValue:F,seen:Q})).subscribe(E)}catch(ne){E.error(ne)}},ae)};N=b.subscribe(XUc.createOperatorSubscriber(E,function(ae){B?.unsubscribe(),Q++,E.next(F=ae),a>0&&X(a)},void 0,void 0,function(){B?.closed||B?.unsubscribe(),F=null})),!Q&&X(n!=null?typeof n=="number"?n:+n-f.now():a)})}h_e.timeout=UUc;function KUc(e){throw new h_e.TimeoutError(e)}});var ute=H(qwt=>{"use strict";Object.defineProperty(qwt,"__esModule",{value:!0});qwt.map=void 0;var jUc=qg(),zUc=Cd();function qUc(e,t){return jUc.operate(function(r,n){var a=0;r.subscribe(zUc.createOperatorSubscriber(n,function(o){n.next(e.call(t,o,a++))}))})}qwt.map=qUc});var yle=H(_le=>{"use strict";var $Uc=_le&&_le.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},eKc=_le&&_le.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var sKc=ble&&ble.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Qqi=ble&&ble.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty($wt,"__esModule",{value:!0});$wt.bindCallback=void 0;var AKc=HOr();function dKc(e,t,r){return AKc.bindCallbackInternals(!1,e,t,r)}$wt.bindCallback=dKc});var Jqi=H(eTt=>{"use strict";Object.defineProperty(eTt,"__esModule",{value:!0});eTt.bindNodeCallback=void 0;var pKc=HOr();function fKc(e,t,r){return pKc.bindCallbackInternals(!0,e,t,r)}eTt.bindNodeCallback=fKc});var YOr=H(tTt=>{"use strict";Object.defineProperty(tTt,"__esModule",{value:!0});tTt.argsArgArrayOrObject=void 0;var IKc=Array.isArray,hKc=Object.getPrototypeOf,mKc=Object.prototype,CKc=Object.keys;function _Kc(e){if(e.length===1){var t=e[0];if(IKc(t))return{args:t,keys:null};if(yKc(t)){var r=CKc(t);return{args:r.map(function(n){return t[n]}),keys:r}}}return{args:e,keys:null}}tTt.argsArgArrayOrObject=_Kc;function yKc(e){return e&&typeof e=="object"&&hKc(e)===mKc}});var QOr=H(rTt=>{"use strict";Object.defineProperty(rTt,"__esModule",{value:!0});rTt.createObject=void 0;function bKc(e,t){return e.reduce(function(r,n,a){return r[n]=t[a],r},{})}rTt.createObject=bKc});var nTt=H(Yke=>{"use strict";Object.defineProperty(Yke,"__esModule",{value:!0});Yke.combineLatestInit=Yke.combineLatest=void 0;var EKc=ub(),SKc=YOr(),jqi=cte(),zqi=nx(),vKc=yle(),Uqi=ZV(),BKc=QOr(),wKc=Cd(),TKc=ate();function RKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(iTt,"__esModule",{value:!0});iTt.mergeInternals=void 0;var NKc=uh(),DKc=ate(),$qi=Cd();function kKc(e,t,r,n,a,o,l,A){var f=[],I=0,C=0,b=!1,E=function(){b&&!f.length&&!I&&t.complete()},N=function(F){return I{"use strict";Object.defineProperty(oTt,"__esModule",{value:!0});oTt.mergeMap=void 0;var xKc=ute(),GKc=uh(),FKc=qg(),ZKc=sTt(),LKc=Sy();function e$i(e,t,r){return r===void 0&&(r=1/0),LKc.isFunction(t)?e$i(function(n,a){return xKc.map(function(o,l){return t(n,o,a,l)})(GKc.innerFrom(e(n,a)))},r):(typeof t=="number"&&(r=t),FKc.operate(function(n,a){return ZKc.mergeInternals(n,a,e,r)}))}oTt.mergeMap=e$i});var Qke=H(aTt=>{"use strict";Object.defineProperty(aTt,"__esModule",{value:!0});aTt.mergeAll=void 0;var VKc=Kj(),PKc=nx();function WKc(e){return e===void 0&&(e=1/0),VKc.mergeMap(PKc.identity,e)}aTt.mergeAll=WKc});var M8e=H(cTt=>{"use strict";Object.defineProperty(cTt,"__esModule",{value:!0});cTt.concatAll=void 0;var OKc=Qke();function MKc(){return OKc.mergeAll(1)}cTt.concatAll=MKc});var H8e=H(lTt=>{"use strict";Object.defineProperty(lTt,"__esModule",{value:!0});lTt.concat=void 0;var HKc=M8e(),YKc=ZV(),QKc=cte();function XKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(uTt,"__esModule",{value:!0});uTt.defer=void 0;var JKc=ub(),UKc=uh();function KKc(e){return new JKc.Observable(function(t){UKc.innerFrom(e()).subscribe(t)})}uTt.defer=KKc});var t$i=H(gTt=>{"use strict";Object.defineProperty(gTt,"__esModule",{value:!0});gTt.connectable=void 0;var jKc=ix(),zKc=ub(),qKc=Y8e(),$Kc={connector:function(){return new jKc.Subject},resetOnDisconnect:!0};function e8c(e,t){t===void 0&&(t=$Kc);var r=null,n=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,l=n(),A=new zKc.Observable(function(f){return l.subscribe(f)});return A.connect=function(){return(!r||r.closed)&&(r=qKc.defer(function(){return e}).subscribe(l),o&&r.add(function(){return l=n()})),r},A}gTt.connectable=e8c});var r$i=H(ATt=>{"use strict";Object.defineProperty(ATt,"__esModule",{value:!0});ATt.forkJoin=void 0;var t8c=ub(),r8c=YOr(),n8c=uh(),i8c=ZV(),s8c=Cd(),o8c=yle(),a8c=QOr();function c8c(){for(var e=[],t=0;t{"use strict";var l8c=Xke&&Xke.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o};Object.defineProperty(Xke,"__esModule",{value:!0});Xke.fromEvent=void 0;var u8c=uh(),g8c=ub(),A8c=Kj(),d8c=ywt(),m_e=Sy(),p8c=yle(),f8c=["addListener","removeListener"],I8c=["addEventListener","removeEventListener"],h8c=["on","off"];function XOr(e,t,r,n){if(m_e.isFunction(r)&&(n=r,r=void 0),n)return XOr(e,t,r).pipe(p8c.mapOneOrManyArgs(n));var a=l8c(_8c(e)?I8c.map(function(A){return function(f){return e[A](t,f,r)}}):m8c(e)?f8c.map(n$i(e,t)):C8c(e)?h8c.map(n$i(e,t)):[],2),o=a[0],l=a[1];if(!o&&d8c.isArrayLike(e))return A8c.mergeMap(function(A){return XOr(A,t,r)})(u8c.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new g8c.Observable(function(A){var f=function(){for(var I=[],C=0;C{"use strict";Object.defineProperty(dTt,"__esModule",{value:!0});dTt.fromEventPattern=void 0;var y8c=ub(),b8c=Sy(),E8c=yle();function s$i(e,t,r){return r?s$i(e,t).pipe(E8c.mapOneOrManyArgs(r)):new y8c.Observable(function(n){var a=function(){for(var l=[],A=0;A{"use strict";var S8c=Jke&&Jke.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]{"use strict";Object.defineProperty(pTt,"__esModule",{value:!0});pTt.iif=void 0;var R8c=Y8e();function N8c(e,t,r){return R8c.defer(function(){return e()?t:r})}pTt.iif=N8c});var Ele=H(fTt=>{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.timer=void 0;var D8c=ub(),k8c=FV(),x8c=W8e(),G8c=zwt();function F8c(e,t,r){e===void 0&&(e=0),r===void 0&&(r=k8c.async);var n=-1;return t!=null&&(x8c.isScheduler(t)?r=t:n=t),new D8c.Observable(function(a){var o=G8c.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var l=0;return r.schedule(function(){a.closed||(a.next(l++),0<=n?this.schedule(void 0,n):a.complete())},o)})}fTt.timer=F8c});var JOr=H(ITt=>{"use strict";Object.defineProperty(ITt,"__esModule",{value:!0});ITt.interval=void 0;var Z8c=FV(),L8c=Ele();function V8c(e,t){return e===void 0&&(e=0),t===void 0&&(t=Z8c.asyncScheduler),e<0&&(e=0),L8c.timer(e,e,t)}ITt.interval=V8c});var g$i=H(hTt=>{"use strict";Object.defineProperty(hTt,"__esModule",{value:!0});hTt.merge=void 0;var P8c=Qke(),W8c=uh(),O8c=x4(),u$i=ZV(),M8c=cte();function H8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(C_e,"__esModule",{value:!0});C_e.never=C_e.NEVER=void 0;var Y8c=ub(),Q8c=rx();C_e.NEVER=new Y8c.Observable(Q8c.noop);function X8c(){return C_e.NEVER}C_e.never=X8c});var Sle=H(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.argsOrArgArray=void 0;var J8c=Array.isArray;function U8c(e){return e.length===1&&J8c(e[0])?e[0]:e}mTt.argsOrArgArray=U8c});var KOr=H(CTt=>{"use strict";Object.defineProperty(CTt,"__esModule",{value:!0});CTt.onErrorResumeNext=void 0;var K8c=ub(),j8c=Sle(),z8c=Cd(),A$i=rx(),q8c=uh();function $8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(_Tt,"__esModule",{value:!0});_Tt.pairs=void 0;var ejc=cte();function tjc(e,t){return ejc.from(Object.entries(e),t)}_Tt.pairs=tjc});var jOr=H(yTt=>{"use strict";Object.defineProperty(yTt,"__esModule",{value:!0});yTt.not=void 0;function rjc(e,t){return function(r,n){return!e.call(t,r,n)}}yTt.not=rjc});var gte=H(bTt=>{"use strict";Object.defineProperty(bTt,"__esModule",{value:!0});bTt.filter=void 0;var njc=qg(),ijc=Cd();function sjc(e,t){return njc.operate(function(r,n){var a=0;r.subscribe(ijc.createOperatorSubscriber(n,function(o){return e.call(t,o,a++)&&n.next(o)}))})}bTt.filter=sjc});var I$i=H(ETt=>{"use strict";Object.defineProperty(ETt,"__esModule",{value:!0});ETt.partition=void 0;var ojc=jOr(),p$i=gte(),f$i=uh();function ajc(e,t,r){return[p$i.filter(t,r)(f$i.innerFrom(e)),p$i.filter(ojc.not(t,r))(f$i.innerFrom(e))]}ETt.partition=ajc});var zOr=H(Uke=>{"use strict";Object.defineProperty(Uke,"__esModule",{value:!0});Uke.raceInit=Uke.race=void 0;var cjc=ub(),h$i=uh(),ljc=Sle(),ujc=Cd();function gjc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(STt,"__esModule",{value:!0});STt.range=void 0;var Ajc=ub(),djc=x4();function pjc(e,t,r){if(t==null&&(t=e,e=0),t<=0)return djc.EMPTY;var n=t+e;return new Ajc.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(vTt,"__esModule",{value:!0});vTt.using=void 0;var fjc=ub(),Ijc=uh(),hjc=x4();function mjc(e,t){return new fjc.Observable(function(r){var n=e(),a=t(n),o=a?Ijc.innerFrom(a):hjc.EMPTY;return o.subscribe(r),function(){n&&n.unsubscribe()}})}vTt.using=mjc});var BTt=H(vle=>{"use strict";var Cjc=vle&&vle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},_jc=vle&&vle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(y$i,"__esModule",{value:!0})});var TTt=H(wTt=>{"use strict";Object.defineProperty(wTt,"__esModule",{value:!0});wTt.audit=void 0;var Tjc=qg(),Rjc=uh(),E$i=Cd();function Njc(e){return Tjc.operate(function(t,r){var n=!1,a=null,o=null,l=!1,A=function(){if(o?.unsubscribe(),o=null,n){n=!1;var I=a;a=null,r.next(I)}l&&r.complete()},f=function(){o=null,l&&r.complete()};t.subscribe(E$i.createOperatorSubscriber(r,function(I){n=!0,a=I,o||Rjc.innerFrom(e(I)).subscribe(o=E$i.createOperatorSubscriber(r,A,f))},function(){l=!0,(!n||!o||o.closed)&&r.complete()}))})}wTt.audit=Njc});var qOr=H(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.auditTime=void 0;var Djc=FV(),kjc=TTt(),xjc=Ele();function Gjc(e,t){return t===void 0&&(t=Djc.asyncScheduler),kjc.audit(function(){return xjc.timer(e,t)})}RTt.auditTime=Gjc});var $Or=H(NTt=>{"use strict";Object.defineProperty(NTt,"__esModule",{value:!0});NTt.buffer=void 0;var Fjc=qg(),Zjc=rx(),S$i=Cd(),Ljc=uh();function Vjc(e){return Fjc.operate(function(t,r){var n=[];return t.subscribe(S$i.createOperatorSubscriber(r,function(a){return n.push(a)},function(){r.next(n),r.complete()})),Ljc.innerFrom(e).subscribe(S$i.createOperatorSubscriber(r,function(){var a=n;n=[],r.next(a)},Zjc.noop)),function(){n=null}})}NTt.buffer=Vjc});var t3r=H(Kke=>{"use strict";var e3r=Kke&&Kke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Kke,"__esModule",{value:!0});Kke.bufferCount=void 0;var Pjc=qg(),Wjc=Cd(),Ojc=ote();function Mjc(e,t){return t===void 0&&(t=null),t=t??e,Pjc.operate(function(r,n){var a=[],o=0;r.subscribe(Wjc.createOperatorSubscriber(n,function(l){var A,f,I,C,b=null;o++%t===0&&a.push([]);try{for(var E=e3r(a),N=E.next();!N.done;N=E.next()){var B=N.value;B.push(l),e<=B.length&&(b=b??[],b.push(B))}}catch(X){A={error:X}}finally{try{N&&!N.done&&(f=E.return)&&f.call(E)}finally{if(A)throw A.error}}if(b)try{for(var F=e3r(b),Q=F.next();!Q.done;Q=F.next()){var B=Q.value;Ojc.arrRemove(a,B),n.next(B)}}catch(X){I={error:X}}finally{try{Q&&!Q.done&&(C=F.return)&&C.call(F)}finally{if(I)throw I.error}}},function(){var l,A;try{for(var f=e3r(a),I=f.next();!I.done;I=f.next()){var C=I.value;n.next(C)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}n.complete()},void 0,function(){a=null}))})}Kke.bufferCount=Mjc});var r3r=H(jke=>{"use strict";var Hjc=jke&&jke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(jke,"__esModule",{value:!0});jke.bufferTime=void 0;var Yjc=TO(),Qjc=qg(),Xjc=Cd(),Jjc=ote(),Ujc=FV(),Kjc=ZV(),v$i=ate();function jjc(e){for(var t,r,n=[],a=1;a=0?v$i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=Xjc.createOperatorSubscriber(I,function(F){var Q,X,ae=C.slice();try{for(var ne=Hjc(ae),ce=ne.next();!ce.done;ce=ne.next()){var fe=ce.value,ue=fe.buffer;ue.push(F),A<=ue.length&&E(fe)}}catch(de){Q={error:de}}finally{try{ce&&!ce.done&&(X=ne.return)&&X.call(ne)}finally{if(Q)throw Q.error}}},function(){for(;C?.length;)I.next(C.shift().buffer);B?.unsubscribe(),I.complete(),I.unsubscribe()},void 0,function(){return C=null});f.subscribe(B)})}jke.bufferTime=jjc});var i3r=H(zke=>{"use strict";var zjc=zke&&zke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(zke,"__esModule",{value:!0});zke.bufferToggle=void 0;var qjc=TO(),$jc=qg(),B$i=uh(),n3r=Cd(),w$i=rx(),e6c=ote();function t6c(e,t){return $jc.operate(function(r,n){var a=[];B$i.innerFrom(e).subscribe(n3r.createOperatorSubscriber(n,function(o){var l=[];a.push(l);var A=new qjc.Subscription,f=function(){e6c.arrRemove(a,l),n.next(l),A.unsubscribe()};A.add(B$i.innerFrom(t(o)).subscribe(n3r.createOperatorSubscriber(n,f,w$i.noop)))},w$i.noop)),r.subscribe(n3r.createOperatorSubscriber(n,function(o){var l,A;try{for(var f=zjc(a),I=f.next();!I.done;I=f.next()){var C=I.value;C.push(o)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}},function(){for(;a.length>0;)n.next(a.shift());n.complete()}))})}zke.bufferToggle=t6c});var s3r=H(DTt=>{"use strict";Object.defineProperty(DTt,"__esModule",{value:!0});DTt.bufferWhen=void 0;var r6c=qg(),n6c=rx(),T$i=Cd(),i6c=uh();function s6c(e){return r6c.operate(function(t,r){var n=null,a=null,o=function(){a?.unsubscribe();var l=n;n=[],l&&r.next(l),i6c.innerFrom(e()).subscribe(a=T$i.createOperatorSubscriber(r,o,n6c.noop))};o(),t.subscribe(T$i.createOperatorSubscriber(r,function(l){return n?.push(l)},function(){n&&r.next(n),r.complete()},void 0,function(){return n=a=null}))})}DTt.bufferWhen=s6c});var o3r=H(kTt=>{"use strict";Object.defineProperty(kTt,"__esModule",{value:!0});kTt.catchError=void 0;var o6c=uh(),a6c=Cd(),c6c=qg();function R$i(e){return c6c.operate(function(t,r){var n=null,a=!1,o;n=t.subscribe(a6c.createOperatorSubscriber(r,void 0,void 0,function(l){o=o6c.innerFrom(e(l,R$i(e)(t))),n?(n.unsubscribe(),n=null,o.subscribe(r)):a=!0})),a&&(n.unsubscribe(),n=null,o.subscribe(r))})}kTt.catchError=R$i});var a3r=H(xTt=>{"use strict";Object.defineProperty(xTt,"__esModule",{value:!0});xTt.scanInternals=void 0;var l6c=Cd();function u6c(e,t,r,n,a){return function(o,l){var A=r,f=t,I=0;o.subscribe(l6c.createOperatorSubscriber(l,function(C){var b=I++;f=A?e(f,C,b):(A=!0,C),n&&l.next(f)},a&&function(){A&&l.next(f),l.complete()}))}}xTt.scanInternals=u6c});var __e=H(GTt=>{"use strict";Object.defineProperty(GTt,"__esModule",{value:!0});GTt.reduce=void 0;var g6c=a3r(),A6c=qg();function d6c(e,t){return A6c.operate(g6c.scanInternals(e,t,arguments.length>=2,!1,!0))}GTt.reduce=d6c});var ZTt=H(FTt=>{"use strict";Object.defineProperty(FTt,"__esModule",{value:!0});FTt.toArray=void 0;var p6c=__e(),f6c=qg(),I6c=function(e,t){return e.push(t),e};function h6c(){return f6c.operate(function(e,t){p6c.reduce(I6c,[])(e).subscribe(t)})}FTt.toArray=h6c});var c3r=H(LTt=>{"use strict";Object.defineProperty(LTt,"__esModule",{value:!0});LTt.joinAllInternals=void 0;var m6c=nx(),C6c=yle(),_6c=Z8e(),y6c=Kj(),b6c=ZTt();function E6c(e,t){return _6c.pipe(b6c.toArray(),y6c.mergeMap(function(r){return e(r)}),t?C6c.mapOneOrManyArgs(t):m6c.identity)}LTt.joinAllInternals=E6c});var PTt=H(VTt=>{"use strict";Object.defineProperty(VTt,"__esModule",{value:!0});VTt.combineLatestAll=void 0;var S6c=nTt(),v6c=c3r();function B6c(e){return v6c.joinAllInternals(S6c.combineLatest,e)}VTt.combineLatestAll=B6c});var l3r=H(WTt=>{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.combineAll=void 0;var w6c=PTt();WTt.combineAll=w6c.combineLatestAll});var u3r=H(Ble=>{"use strict";var N$i=Ble&&Ble.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},D$i=Ble&&Ble.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var G6c=wle&&wle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},F6c=wle&&wle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(OTt,"__esModule",{value:!0});OTt.concatMap=void 0;var x$i=Kj(),V6c=Sy();function P6c(e,t){return V6c.isFunction(t)?x$i.mergeMap(e,t,1):x$i.mergeMap(e,1)}OTt.concatMap=P6c});var A3r=H(HTt=>{"use strict";Object.defineProperty(HTt,"__esModule",{value:!0});HTt.concatMapTo=void 0;var G$i=MTt(),W6c=Sy();function O6c(e,t){return W6c.isFunction(t)?G$i.concatMap(function(){return e},t):G$i.concatMap(function(){return e})}HTt.concatMapTo=O6c});var d3r=H(Tle=>{"use strict";var M6c=Tle&&Tle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},H6c=Tle&&Tle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var K6c=Rle&&Rle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},j6c=Rle&&Rle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(YTt,"__esModule",{value:!0});YTt.fromSubscribable=void 0;var $6c=ub();function e7c(e){return new $6c.Observable(function(t){return e.subscribe(t)})}YTt.fromSubscribable=e7c});var Q8e=H(QTt=>{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.connect=void 0;var t7c=ix(),r7c=uh(),n7c=qg(),i7c=F$i(),s7c={connector:function(){return new t7c.Subject}};function o7c(e,t){t===void 0&&(t=s7c);var r=t.connector;return n7c.operate(function(n,a){var o=r();r7c.innerFrom(e(i7c.fromSubscribable(o))).subscribe(a),a.add(n.subscribe(o))})}QTt.connect=o7c});var f3r=H(XTt=>{"use strict";Object.defineProperty(XTt,"__esModule",{value:!0});XTt.count=void 0;var a7c=__e();function c7c(e){return a7c.reduce(function(t,r,n){return!e||e(r,n)?t+1:t},0)}XTt.count=c7c});var I3r=H(JTt=>{"use strict";Object.defineProperty(JTt,"__esModule",{value:!0});JTt.debounce=void 0;var l7c=qg(),u7c=rx(),Z$i=Cd(),g7c=uh();function A7c(e){return l7c.operate(function(t,r){var n=!1,a=null,o=null,l=function(){if(o?.unsubscribe(),o=null,n){n=!1;var A=a;a=null,r.next(A)}};t.subscribe(Z$i.createOperatorSubscriber(r,function(A){o?.unsubscribe(),n=!0,a=A,o=Z$i.createOperatorSubscriber(r,l,u7c.noop),g7c.innerFrom(e(A)).subscribe(o)},function(){l(),r.complete()},void 0,function(){a=o=null}))})}JTt.debounce=A7c});var h3r=H(UTt=>{"use strict";Object.defineProperty(UTt,"__esModule",{value:!0});UTt.debounceTime=void 0;var d7c=FV(),p7c=qg(),f7c=Cd();function I7c(e,t){return t===void 0&&(t=d7c.asyncScheduler),p7c.operate(function(r,n){var a=null,o=null,l=null,A=function(){if(a){a.unsubscribe(),a=null;var I=o;o=null,n.next(I)}};function f(){var I=l+e,C=t.now();if(C{"use strict";Object.defineProperty(KTt,"__esModule",{value:!0});KTt.defaultIfEmpty=void 0;var h7c=qg(),m7c=Cd();function C7c(e){return h7c.operate(function(t,r){var n=!1;t.subscribe(m7c.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){n||r.next(e),r.complete()}))})}KTt.defaultIfEmpty=C7c});var $ke=H(jTt=>{"use strict";Object.defineProperty(jTt,"__esModule",{value:!0});jTt.take=void 0;var _7c=x4(),y7c=qg(),b7c=Cd();function E7c(e){return e<=0?function(){return _7c.EMPTY}:y7c.operate(function(t,r){var n=0;t.subscribe(b7c.createOperatorSubscriber(r,function(a){++n<=e&&(r.next(a),e<=n&&r.complete())}))})}jTt.take=E7c});var qTt=H(zTt=>{"use strict";Object.defineProperty(zTt,"__esModule",{value:!0});zTt.ignoreElements=void 0;var S7c=qg(),v7c=Cd(),B7c=rx();function w7c(){return S7c.operate(function(e,t){e.subscribe(v7c.createOperatorSubscriber(t,B7c.noop))})}zTt.ignoreElements=w7c});var eRt=H($Tt=>{"use strict";Object.defineProperty($Tt,"__esModule",{value:!0});$Tt.mapTo=void 0;var T7c=ute();function R7c(e){return T7c.map(function(){return e})}$Tt.mapTo=R7c});var rRt=H(tRt=>{"use strict";Object.defineProperty(tRt,"__esModule",{value:!0});tRt.delayWhen=void 0;var N7c=H8e(),L$i=$ke(),D7c=qTt(),k7c=eRt(),x7c=Kj(),G7c=uh();function V$i(e,t){return t?function(r){return N7c.concat(t.pipe(L$i.take(1),D7c.ignoreElements()),r.pipe(V$i(e)))}:x7c.mergeMap(function(r,n){return G7c.innerFrom(e(r,n)).pipe(L$i.take(1),k7c.mapTo(r))})}tRt.delayWhen=V$i});var m3r=H(nRt=>{"use strict";Object.defineProperty(nRt,"__esModule",{value:!0});nRt.delay=void 0;var F7c=FV(),Z7c=rRt(),L7c=Ele();function V7c(e,t){t===void 0&&(t=F7c.asyncScheduler);var r=L7c.timer(e,t);return Z7c.delayWhen(function(){return r})}nRt.delay=V7c});var C3r=H(iRt=>{"use strict";Object.defineProperty(iRt,"__esModule",{value:!0});iRt.dematerialize=void 0;var P7c=Mwt(),W7c=qg(),O7c=Cd();function M7c(){return W7c.operate(function(e,t){e.subscribe(O7c.createOperatorSubscriber(t,function(r){return P7c.observeNotification(r,t)}))})}iRt.dematerialize=M7c});var _3r=H(sRt=>{"use strict";Object.defineProperty(sRt,"__esModule",{value:!0});sRt.distinct=void 0;var H7c=qg(),P$i=Cd(),Y7c=rx(),Q7c=uh();function X7c(e,t){return H7c.operate(function(r,n){var a=new Set;r.subscribe(P$i.createOperatorSubscriber(n,function(o){var l=e?e(o):o;a.has(l)||(a.add(l),n.next(o))})),t&&Q7c.innerFrom(t).subscribe(P$i.createOperatorSubscriber(n,function(){return a.clear()},Y7c.noop))})}sRt.distinct=X7c});var aRt=H(oRt=>{"use strict";Object.defineProperty(oRt,"__esModule",{value:!0});oRt.distinctUntilChanged=void 0;var J7c=nx(),U7c=qg(),K7c=Cd();function j7c(e,t){return t===void 0&&(t=J7c.identity),e=e??z7c,U7c.operate(function(r,n){var a,o=!0;r.subscribe(K7c.createOperatorSubscriber(n,function(l){var A=t(l);(o||!e(a,A))&&(o=!1,a=A,n.next(l))}))})}oRt.distinctUntilChanged=j7c;function z7c(e,t){return e===t}});var y3r=H(cRt=>{"use strict";Object.defineProperty(cRt,"__esModule",{value:!0});cRt.distinctUntilKeyChanged=void 0;var q7c=aRt();function $7c(e,t){return q7c.distinctUntilChanged(function(r,n){return t?t(r[e],n[e]):r[e]===n[e]})}cRt.distinctUntilKeyChanged=$7c});var exe=H(lRt=>{"use strict";Object.defineProperty(lRt,"__esModule",{value:!0});lRt.throwIfEmpty=void 0;var ezc=Cle(),tzc=qg(),rzc=Cd();function nzc(e){return e===void 0&&(e=izc),tzc.operate(function(t,r){var n=!1;t.subscribe(rzc.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){return n?r.complete():r.error(e())}))})}lRt.throwIfEmpty=nzc;function izc(){return new ezc.EmptyError}});var b3r=H(uRt=>{"use strict";Object.defineProperty(uRt,"__esModule",{value:!0});uRt.elementAt=void 0;var W$i=POr(),szc=gte(),ozc=exe(),azc=qke(),czc=$ke();function lzc(e,t){if(e<0)throw new W$i.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(n){return n.pipe(szc.filter(function(a,o){return o===e}),czc.take(1),r?azc.defaultIfEmpty(t):ozc.throwIfEmpty(function(){return new W$i.ArgumentOutOfRangeError}))}}uRt.elementAt=lzc});var E3r=H(Nle=>{"use strict";var uzc=Nle&&Nle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},gzc=Nle&&Nle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(gRt,"__esModule",{value:!0});gRt.every=void 0;var fzc=qg(),Izc=Cd();function hzc(e,t){return fzc.operate(function(r,n){var a=0;r.subscribe(Izc.createOperatorSubscriber(n,function(o){e.call(t,o,a++,r)||(n.next(!1),n.complete())},function(){n.next(!0),n.complete()}))})}gRt.every=hzc});var dRt=H(ARt=>{"use strict";Object.defineProperty(ARt,"__esModule",{value:!0});ARt.exhaustMap=void 0;var mzc=ute(),O$i=uh(),Czc=qg(),M$i=Cd();function H$i(e,t){return t?function(r){return r.pipe(H$i(function(n,a){return O$i.innerFrom(e(n,a)).pipe(mzc.map(function(o,l){return t(n,o,a,l)}))}))}:Czc.operate(function(r,n){var a=0,o=null,l=!1;r.subscribe(M$i.createOperatorSubscriber(n,function(A){o||(o=M$i.createOperatorSubscriber(n,void 0,function(){o=null,l&&n.complete()}),O$i.innerFrom(e(A,a++)).subscribe(o))},function(){l=!0,!o&&n.complete()}))})}ARt.exhaustMap=H$i});var fRt=H(pRt=>{"use strict";Object.defineProperty(pRt,"__esModule",{value:!0});pRt.exhaustAll=void 0;var _zc=dRt(),yzc=nx();function bzc(){return _zc.exhaustMap(yzc.identity)}pRt.exhaustAll=bzc});var v3r=H(IRt=>{"use strict";Object.defineProperty(IRt,"__esModule",{value:!0});IRt.exhaust=void 0;var Ezc=fRt();IRt.exhaust=Ezc.exhaustAll});var B3r=H(hRt=>{"use strict";Object.defineProperty(hRt,"__esModule",{value:!0});hRt.expand=void 0;var Szc=qg(),vzc=sTt();function Bzc(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,Szc.operate(function(n,a){return vzc.mergeInternals(n,a,e,t,void 0,!0,r)})}hRt.expand=Bzc});var w3r=H(mRt=>{"use strict";Object.defineProperty(mRt,"__esModule",{value:!0});mRt.finalize=void 0;var wzc=qg();function Tzc(e){return wzc.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}mRt.finalize=Tzc});var CRt=H(txe=>{"use strict";Object.defineProperty(txe,"__esModule",{value:!0});txe.createFind=txe.find=void 0;var Rzc=qg(),Nzc=Cd();function Dzc(e,t){return Rzc.operate(Y$i(e,t,"value"))}txe.find=Dzc;function Y$i(e,t,r){var n=r==="index";return function(a,o){var l=0;a.subscribe(Nzc.createOperatorSubscriber(o,function(A){var f=l++;e.call(t,A,f,a)&&(o.next(n?f:A),o.complete())},function(){o.next(n?-1:void 0),o.complete()}))}}txe.createFind=Y$i});var T3r=H(_Rt=>{"use strict";Object.defineProperty(_Rt,"__esModule",{value:!0});_Rt.findIndex=void 0;var kzc=qg(),xzc=CRt();function Gzc(e,t){return kzc.operate(xzc.createFind(e,t,"index"))}_Rt.findIndex=Gzc});var R3r=H(yRt=>{"use strict";Object.defineProperty(yRt,"__esModule",{value:!0});yRt.first=void 0;var Fzc=Cle(),Zzc=gte(),Lzc=$ke(),Vzc=qke(),Pzc=exe(),Wzc=nx();function Ozc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?Zzc.filter(function(a,o){return e(a,o,n)}):Wzc.identity,Lzc.take(1),r?Vzc.defaultIfEmpty(t):Pzc.throwIfEmpty(function(){return new Fzc.EmptyError}))}}yRt.first=Ozc});var N3r=H(bRt=>{"use strict";Object.defineProperty(bRt,"__esModule",{value:!0});bRt.groupBy=void 0;var Mzc=ub(),Hzc=uh(),Yzc=ix(),Qzc=qg(),Q$i=Cd();function Xzc(e,t,r,n){return Qzc.operate(function(a,o){var l;!t||typeof t=="function"?l=t:(r=t.duration,l=t.element,n=t.connector);var A=new Map,f=function(B){A.forEach(B),B(o)},I=function(B){return f(function(F){return F.error(B)})},C=0,b=!1,E=new Q$i.OperatorSubscriber(o,function(B){try{var F=e(B),Q=A.get(F);if(!Q){A.set(F,Q=n?n():new Yzc.Subject);var X=N(F,Q);if(o.next(X),r){var ae=Q$i.createOperatorSubscriber(Q,function(){Q.complete(),ae?.unsubscribe()},void 0,void 0,function(){return A.delete(F)});E.add(Hzc.innerFrom(r(X)).subscribe(ae))}}Q.next(l?l(B):B)}catch(ne){I(ne)}},function(){return f(function(B){return B.complete()})},I,function(){return A.clear()},function(){return b=!0,C===0});a.subscribe(E);function N(B,F){var Q=new Mzc.Observable(function(X){C++;var ae=F.subscribe(X);return function(){ae.unsubscribe(),--C===0&&b&&E.unsubscribe()}});return Q.key=B,Q}})}bRt.groupBy=Xzc});var D3r=H(ERt=>{"use strict";Object.defineProperty(ERt,"__esModule",{value:!0});ERt.isEmpty=void 0;var Jzc=qg(),Uzc=Cd();function Kzc(){return Jzc.operate(function(e,t){e.subscribe(Uzc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}ERt.isEmpty=Kzc});var SRt=H(rxe=>{"use strict";var jzc=rxe&&rxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(rxe,"__esModule",{value:!0});rxe.takeLast=void 0;var zzc=x4(),qzc=qg(),$zc=Cd();function eqc(e){return e<=0?function(){return zzc.EMPTY}:qzc.operate(function(t,r){var n=[];t.subscribe($zc.createOperatorSubscriber(r,function(a){n.push(a),e{"use strict";Object.defineProperty(vRt,"__esModule",{value:!0});vRt.last=void 0;var tqc=Cle(),rqc=gte(),nqc=SRt(),iqc=exe(),sqc=qke(),oqc=nx();function aqc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?rqc.filter(function(a,o){return e(a,o,n)}):oqc.identity,nqc.takeLast(1),r?sqc.defaultIfEmpty(t):iqc.throwIfEmpty(function(){return new tqc.EmptyError}))}}vRt.last=aqc});var G3r=H(BRt=>{"use strict";Object.defineProperty(BRt,"__esModule",{value:!0});BRt.materialize=void 0;var x3r=Mwt(),cqc=qg(),lqc=Cd();function uqc(){return cqc.operate(function(e,t){e.subscribe(lqc.createOperatorSubscriber(t,function(r){t.next(x3r.Notification.createNext(r))},function(){t.next(x3r.Notification.createComplete()),t.complete()},function(r){t.next(x3r.Notification.createError(r)),t.complete()}))})}BRt.materialize=uqc});var F3r=H(wRt=>{"use strict";Object.defineProperty(wRt,"__esModule",{value:!0});wRt.max=void 0;var gqc=__e(),Aqc=Sy();function dqc(e){return gqc.reduce(Aqc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}wRt.max=dqc});var Z3r=H(TRt=>{"use strict";Object.defineProperty(TRt,"__esModule",{value:!0});TRt.flatMap=void 0;var pqc=Kj();TRt.flatMap=pqc.mergeMap});var L3r=H(RRt=>{"use strict";Object.defineProperty(RRt,"__esModule",{value:!0});RRt.mergeMapTo=void 0;var X$i=Kj(),fqc=Sy();function Iqc(e,t,r){return r===void 0&&(r=1/0),fqc.isFunction(t)?X$i.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),X$i.mergeMap(function(){return e},r))}RRt.mergeMapTo=Iqc});var V3r=H(NRt=>{"use strict";Object.defineProperty(NRt,"__esModule",{value:!0});NRt.mergeScan=void 0;var hqc=qg(),mqc=sTt();function Cqc(e,t,r){return r===void 0&&(r=1/0),hqc.operate(function(n,a){var o=t;return mqc.mergeInternals(n,a,function(l,A){return e(o,l,A)},r,function(l){o=l},!1,void 0,function(){return o=null})})}NRt.mergeScan=Cqc});var P3r=H(Dle=>{"use strict";var _qc=Dle&&Dle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},yqc=Dle&&Dle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var wqc=kle&&kle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Tqc=kle&&kle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(DRt,"__esModule",{value:!0});DRt.min=void 0;var Dqc=__e(),kqc=Sy();function xqc(e){return Dqc.reduce(kqc.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(kRt,"__esModule",{value:!0});kRt.multicast=void 0;var Gqc=L8e(),U$i=Sy(),Fqc=Q8e();function Zqc(e,t){var r=U$i.isFunction(e)?e:function(){return e};return U$i.isFunction(t)?Fqc.connect(t,{connector:r}):function(n){return new Gqc.ConnectableObservable(n,r)}}kRt.multicast=Zqc});var M3r=H(jj=>{"use strict";var Lqc=jj&&jj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Vqc=jj&&jj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(xRt,"__esModule",{value:!0});xRt.pairwise=void 0;var Oqc=qg(),Mqc=Cd();function Hqc(){return Oqc.operate(function(e,t){var r,n=!1;e.subscribe(Mqc.createOperatorSubscriber(t,function(a){var o=r;r=a,n&&t.next([o,a]),n=!0}))})}xRt.pairwise=Hqc});var Y3r=H(GRt=>{"use strict";Object.defineProperty(GRt,"__esModule",{value:!0});GRt.pluck=void 0;var Yqc=ute();function Qqc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(FRt,"__esModule",{value:!0});FRt.publish=void 0;var Xqc=ix(),Jqc=X8e(),Uqc=Q8e();function Kqc(e){return e?function(t){return Uqc.connect(e)(t)}:function(t){return Jqc.multicast(new Xqc.Subject)(t)}}FRt.publish=Kqc});var X3r=H(ZRt=>{"use strict";Object.defineProperty(ZRt,"__esModule",{value:!0});ZRt.publishBehavior=void 0;var jqc=bOr(),zqc=L8e();function qqc(e){return function(t){var r=new jqc.BehaviorSubject(e);return new zqc.ConnectableObservable(t,function(){return r})}}ZRt.publishBehavior=qqc});var J3r=H(LRt=>{"use strict";Object.defineProperty(LRt,"__esModule",{value:!0});LRt.publishLast=void 0;var $qc=Iwt(),e$c=L8e();function t$c(){return function(e){var t=new $qc.AsyncSubject;return new e$c.ConnectableObservable(e,function(){return t})}}LRt.publishLast=t$c});var U3r=H(VRt=>{"use strict";Object.defineProperty(VRt,"__esModule",{value:!0});VRt.publishReplay=void 0;var r$c=fwt(),n$c=X8e(),j$i=Sy();function i$c(e,t,r,n){r&&!j$i.isFunction(r)&&(n=r);var a=j$i.isFunction(r)?r:void 0;return function(o){return n$c.multicast(new r$c.ReplaySubject(e,t,n),a)(o)}}VRt.publishReplay=i$c});var PRt=H(xle=>{"use strict";var s$c=xle&&xle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},o$c=xle&&xle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(WRt,"__esModule",{value:!0});WRt.repeat=void 0;var g$c=x4(),A$c=qg(),z$i=Cd(),d$c=uh(),p$c=Ele();function f$c(e){var t,r=1/0,n;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,n=e.delay):r=e),r<=0?function(){return g$c.EMPTY}:A$c.operate(function(a,o){var l=0,A,f=function(){if(A?.unsubscribe(),A=null,n!=null){var C=typeof n=="number"?p$c.timer(n):d$c.innerFrom(n(l)),b=z$i.createOperatorSubscriber(o,function(){b.unsubscribe(),I()});C.subscribe(b)}else I()},I=function(){var C=!1;A=a.subscribe(z$i.createOperatorSubscriber(o,void 0,function(){++l{"use strict";Object.defineProperty(ORt,"__esModule",{value:!0});ORt.repeatWhen=void 0;var I$c=uh(),h$c=ix(),m$c=qg(),q$i=Cd();function C$c(e){return m$c.operate(function(t,r){var n,a=!1,o,l=!1,A=!1,f=function(){return A&&l&&(r.complete(),!0)},I=function(){return o||(o=new h$c.Subject,I$c.innerFrom(e(o)).subscribe(q$i.createOperatorSubscriber(r,function(){n?C():a=!0},function(){l=!0,f()}))),o},C=function(){A=!1,n=t.subscribe(q$i.createOperatorSubscriber(r,void 0,function(){A=!0,!f()&&I().next()})),a&&(n.unsubscribe(),n=null,a=!1,C())};C()})}ORt.repeatWhen=C$c});var z3r=H(MRt=>{"use strict";Object.defineProperty(MRt,"__esModule",{value:!0});MRt.retry=void 0;var _$c=qg(),$$i=Cd(),y$c=nx(),b$c=Ele(),E$c=uh();function S$c(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,n=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,l=o===void 0?!1:o;return n<=0?y$c.identity:_$c.operate(function(A,f){var I=0,C,b=function(){var E=!1;C=A.subscribe($$i.createOperatorSubscriber(f,function(N){l&&(I=0),f.next(N)},void 0,function(N){if(I++{"use strict";Object.defineProperty(HRt,"__esModule",{value:!0});HRt.retryWhen=void 0;var v$c=uh(),B$c=ix(),w$c=qg(),ees=Cd();function T$c(e){return w$c.operate(function(t,r){var n,a=!1,o,l=function(){n=t.subscribe(ees.createOperatorSubscriber(r,void 0,void 0,function(A){o||(o=new B$c.Subject,v$c.innerFrom(e(o)).subscribe(ees.createOperatorSubscriber(r,function(){return n?l():a=!0}))),o&&o.next(A)})),a&&(n.unsubscribe(),n=null,a=!1,l())};l()})}HRt.retryWhen=T$c});var QRt=H(YRt=>{"use strict";Object.defineProperty(YRt,"__esModule",{value:!0});YRt.sample=void 0;var R$c=uh(),N$c=qg(),D$c=rx(),tes=Cd();function k$c(e){return N$c.operate(function(t,r){var n=!1,a=null;t.subscribe(tes.createOperatorSubscriber(r,function(o){n=!0,a=o})),R$c.innerFrom(e).subscribe(tes.createOperatorSubscriber(r,function(){if(n){n=!1;var o=a;a=null,r.next(o)}},D$c.noop))})}YRt.sample=k$c});var $3r=H(XRt=>{"use strict";Object.defineProperty(XRt,"__esModule",{value:!0});XRt.sampleTime=void 0;var x$c=FV(),G$c=QRt(),F$c=JOr();function Z$c(e,t){return t===void 0&&(t=x$c.asyncScheduler),G$c.sample(F$c.interval(e,t))}XRt.sampleTime=Z$c});var e5r=H(JRt=>{"use strict";Object.defineProperty(JRt,"__esModule",{value:!0});JRt.scan=void 0;var L$c=qg(),V$c=a3r();function P$c(e,t){return L$c.operate(V$c.scanInternals(e,t,arguments.length>=2,!0))}JRt.scan=P$c});var t5r=H(URt=>{"use strict";Object.defineProperty(URt,"__esModule",{value:!0});URt.sequenceEqual=void 0;var W$c=qg(),O$c=Cd(),M$c=uh();function H$c(e,t){return t===void 0&&(t=function(r,n){return r===n}),W$c.operate(function(r,n){var a=res(),o=res(),l=function(f){n.next(f),n.complete()},A=function(f,I){var C=O$c.createOperatorSubscriber(n,function(b){var E=I.buffer,N=I.complete;E.length===0?N?l(!1):f.buffer.push(b):!t(b,E.shift())&&l(!1)},function(){f.complete=!0;var b=I.complete,E=I.buffer;b&&l(E.length===0),C?.unsubscribe()});return C};r.subscribe(A(a,o)),M$c.innerFrom(e).subscribe(A(o,a))})}URt.sequenceEqual=H$c;function res(){return{buffer:[],complete:!1}}});var KRt=H(Gle=>{"use strict";var Y$c=Gle&&Gle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Q$c=Gle&&Gle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r0&&(C=new ies.SafeSubscriber({next:function(ue){return fe.next(ue)},error:function(ue){F=!0,Q(),b=r5r(X,a,ue),fe.error(ue)},complete:function(){B=!0,Q(),b=r5r(X,l),fe.complete()}}),nes.innerFrom(ne).subscribe(C))})(I)}}Gle.share=U$c;function r5r(e,t){for(var r=[],n=2;n{"use strict";Object.defineProperty(jRt,"__esModule",{value:!0});jRt.shareReplay=void 0;var K$c=fwt(),j$c=KRt();function z$c(e,t,r){var n,a,o,l,A=!1;return e&&typeof e=="object"?(n=e.bufferSize,l=n===void 0?1/0:n,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,A=o===void 0?!1:o,r=e.scheduler):l=e??1/0,j$c.share({connector:function(){return new K$c.ReplaySubject(l,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:A})}jRt.shareReplay=z$c});var i5r=H(zRt=>{"use strict";Object.defineProperty(zRt,"__esModule",{value:!0});zRt.single=void 0;var q$c=Cle(),$$c=OOr(),eel=WOr(),tel=qg(),rel=Cd();function nel(e){return tel.operate(function(t,r){var n=!1,a,o=!1,l=0;t.subscribe(rel.createOperatorSubscriber(r,function(A){o=!0,(!e||e(A,l++,t))&&(n&&r.error(new $$c.SequenceError("Too many matching values")),n=!0,a=A)},function(){n?(r.next(a),r.complete()):r.error(o?new eel.NotFoundError("No matching values"):new q$c.EmptyError)}))})}zRt.single=nel});var s5r=H(qRt=>{"use strict";Object.defineProperty(qRt,"__esModule",{value:!0});qRt.skip=void 0;var iel=gte();function sel(e){return iel.filter(function(t,r){return e<=r})}qRt.skip=sel});var o5r=H($Rt=>{"use strict";Object.defineProperty($Rt,"__esModule",{value:!0});$Rt.skipLast=void 0;var oel=nx(),ael=qg(),cel=Cd();function lel(e){return e<=0?oel.identity:ael.operate(function(t,r){var n=new Array(e),a=0;return t.subscribe(cel.createOperatorSubscriber(r,function(o){var l=a++;if(l{"use strict";Object.defineProperty(eNt,"__esModule",{value:!0});eNt.skipUntil=void 0;var uel=qg(),ses=Cd(),gel=uh(),Ael=rx();function del(e){return uel.operate(function(t,r){var n=!1,a=ses.createOperatorSubscriber(r,function(){a?.unsubscribe(),n=!0},Ael.noop);gel.innerFrom(e).subscribe(a),t.subscribe(ses.createOperatorSubscriber(r,function(o){return n&&r.next(o)}))})}eNt.skipUntil=del});var c5r=H(tNt=>{"use strict";Object.defineProperty(tNt,"__esModule",{value:!0});tNt.skipWhile=void 0;var pel=qg(),fel=Cd();function Iel(e){return pel.operate(function(t,r){var n=!1,a=0;t.subscribe(fel.createOperatorSubscriber(r,function(o){return(n||(n=!e(o,a++)))&&r.next(o)}))})}tNt.skipWhile=Iel});var l5r=H(rNt=>{"use strict";Object.defineProperty(rNt,"__esModule",{value:!0});rNt.startWith=void 0;var oes=H8e(),hel=ZV(),mel=qg();function Cel(){for(var e=[],t=0;t{"use strict";Object.defineProperty(nNt,"__esModule",{value:!0});nNt.switchMap=void 0;var _el=uh(),yel=qg(),aes=Cd();function bel(e,t){return yel.operate(function(r,n){var a=null,o=0,l=!1,A=function(){return l&&!a&&n.complete()};r.subscribe(aes.createOperatorSubscriber(n,function(f){a?.unsubscribe();var I=0,C=o++;_el.innerFrom(e(f,C)).subscribe(a=aes.createOperatorSubscriber(n,function(b){return n.next(t?t(f,b,C,I++):b)},function(){a=null,A()}))},function(){l=!0,A()}))})}nNt.switchMap=bel});var u5r=H(iNt=>{"use strict";Object.defineProperty(iNt,"__esModule",{value:!0});iNt.switchAll=void 0;var Eel=nxe(),Sel=nx();function vel(){return Eel.switchMap(Sel.identity)}iNt.switchAll=vel});var g5r=H(sNt=>{"use strict";Object.defineProperty(sNt,"__esModule",{value:!0});sNt.switchMapTo=void 0;var ces=nxe(),Bel=Sy();function wel(e,t){return Bel.isFunction(t)?ces.switchMap(function(){return e},t):ces.switchMap(function(){return e})}sNt.switchMapTo=wel});var A5r=H(oNt=>{"use strict";Object.defineProperty(oNt,"__esModule",{value:!0});oNt.switchScan=void 0;var Tel=nxe(),Rel=qg();function Nel(e,t){return Rel.operate(function(r,n){var a=t;return Tel.switchMap(function(o,l){return e(a,o,l)},function(o,l){return a=l,l})(r).subscribe(n),function(){a=null}})}oNt.switchScan=Nel});var d5r=H(aNt=>{"use strict";Object.defineProperty(aNt,"__esModule",{value:!0});aNt.takeUntil=void 0;var Del=qg(),kel=Cd(),xel=uh(),Gel=rx();function Fel(e){return Del.operate(function(t,r){xel.innerFrom(e).subscribe(kel.createOperatorSubscriber(r,function(){return r.complete()},Gel.noop)),!r.closed&&t.subscribe(r)})}aNt.takeUntil=Fel});var p5r=H(cNt=>{"use strict";Object.defineProperty(cNt,"__esModule",{value:!0});cNt.takeWhile=void 0;var Zel=qg(),Lel=Cd();function Vel(e,t){return t===void 0&&(t=!1),Zel.operate(function(r,n){var a=0;r.subscribe(Lel.createOperatorSubscriber(n,function(o){var l=e(o,a++);(l||t)&&n.next(o),!l&&n.complete()}))})}cNt.takeWhile=Vel});var f5r=H(lNt=>{"use strict";Object.defineProperty(lNt,"__esModule",{value:!0});lNt.tap=void 0;var Pel=Sy(),Wel=qg(),Oel=Cd(),Mel=nx();function Hel(e,t,r){var n=Pel.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return n?Wel.operate(function(a,o){var l;(l=n.subscribe)===null||l===void 0||l.call(n);var A=!0;a.subscribe(Oel.createOperatorSubscriber(o,function(f){var I;(I=n.next)===null||I===void 0||I.call(n,f),o.next(f)},function(){var f;A=!1,(f=n.complete)===null||f===void 0||f.call(n),o.complete()},function(f){var I;A=!1,(I=n.error)===null||I===void 0||I.call(n,f),o.error(f)},function(){var f,I;A&&((f=n.unsubscribe)===null||f===void 0||f.call(n)),(I=n.finalize)===null||I===void 0||I.call(n)}))}):Mel.identity}lNt.tap=Hel});var gNt=H(uNt=>{"use strict";Object.defineProperty(uNt,"__esModule",{value:!0});uNt.throttle=void 0;var Yel=qg(),les=Cd(),Qel=uh();function Xel(e,t){return Yel.operate(function(r,n){var a=t??{},o=a.leading,l=o===void 0?!0:o,A=a.trailing,f=A===void 0?!1:A,I=!1,C=null,b=null,E=!1,N=function(){b?.unsubscribe(),b=null,f&&(Q(),E&&n.complete())},B=function(){b=null,E&&n.complete()},F=function(X){return b=Qel.innerFrom(e(X)).subscribe(les.createOperatorSubscriber(n,N,B))},Q=function(){if(I){I=!1;var X=C;C=null,n.next(X),!E&&F(X)}};r.subscribe(les.createOperatorSubscriber(n,function(X){I=!0,C=X,!(b&&!b.closed)&&(l?Q():F(X))},function(){E=!0,!(f&&I&&b&&!b.closed)&&n.complete()}))})}uNt.throttle=Xel});var I5r=H(ANt=>{"use strict";Object.defineProperty(ANt,"__esModule",{value:!0});ANt.throttleTime=void 0;var Jel=FV(),Uel=gNt(),Kel=Ele();function jel(e,t,r){t===void 0&&(t=Jel.asyncScheduler);var n=Kel.timer(e,t);return Uel.throttle(function(){return n},r)}ANt.throttleTime=jel});var h5r=H(ixe=>{"use strict";Object.defineProperty(ixe,"__esModule",{value:!0});ixe.TimeInterval=ixe.timeInterval=void 0;var zel=FV(),qel=qg(),$el=Cd();function etl(e){return e===void 0&&(e=zel.asyncScheduler),qel.operate(function(t,r){var n=e.now();t.subscribe($el.createOperatorSubscriber(r,function(a){var o=e.now(),l=o-n;n=o,r.next(new ues(a,l))}))})}ixe.timeInterval=etl;var ues=function(){function e(t,r){this.value=t,this.interval=r}return e}();ixe.TimeInterval=ues});var m5r=H(dNt=>{"use strict";Object.defineProperty(dNt,"__esModule",{value:!0});dNt.timeoutWith=void 0;var ttl=FV(),rtl=zwt(),ntl=O8e();function itl(e,t,r){var n,a,o;if(r=r??ttl.async,rtl.isValidDate(e)?n=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(n==null&&a==null)throw new TypeError("No timeout provided.");return ntl.timeout({first:n,each:a,scheduler:r,with:o})}dNt.timeoutWith=itl});var C5r=H(pNt=>{"use strict";Object.defineProperty(pNt,"__esModule",{value:!0});pNt.timestamp=void 0;var stl=pwt(),otl=ute();function atl(e){return e===void 0&&(e=stl.dateTimestampProvider),otl.map(function(t){return{value:t,timestamp:e.now()}})}pNt.timestamp=atl});var _5r=H(fNt=>{"use strict";Object.defineProperty(fNt,"__esModule",{value:!0});fNt.window=void 0;var ges=ix(),ctl=qg(),Aes=Cd(),ltl=rx(),utl=uh();function gtl(e){return ctl.operate(function(t,r){var n=new ges.Subject;r.next(n.asObservable());var a=function(o){n.error(o),r.error(o)};return t.subscribe(Aes.createOperatorSubscriber(r,function(o){return n?.next(o)},function(){n.complete(),r.complete()},a)),utl.innerFrom(e).subscribe(Aes.createOperatorSubscriber(r,function(){n.complete(),r.next(n=new ges.Subject)},ltl.noop,a)),function(){n?.unsubscribe(),n=null}})}fNt.window=gtl});var y5r=H(sxe=>{"use strict";var Atl=sxe&&sxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(sxe,"__esModule",{value:!0});sxe.windowCount=void 0;var des=ix(),dtl=qg(),ptl=Cd();function ftl(e,t){t===void 0&&(t=0);var r=t>0?t:e;return dtl.operate(function(n,a){var o=[new des.Subject],l=[],A=0;a.next(o[0].asObservable()),n.subscribe(ptl.createOperatorSubscriber(a,function(f){var I,C;try{for(var b=Atl(o),E=b.next();!E.done;E=b.next()){var N=E.value;N.next(f)}}catch(Q){I={error:Q}}finally{try{E&&!E.done&&(C=b.return)&&C.call(b)}finally{if(I)throw I.error}}var B=A-e+1;if(B>=0&&B%r===0&&o.shift().complete(),++A%r===0){var F=new des.Subject;o.push(F),a.next(F.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){l=null,o=null}))})}sxe.windowCount=ftl});var b5r=H(INt=>{"use strict";Object.defineProperty(INt,"__esModule",{value:!0});INt.windowTime=void 0;var Itl=ix(),htl=FV(),mtl=TO(),Ctl=qg(),_tl=Cd(),ytl=ote(),btl=ZV(),pes=ate();function Etl(e){for(var t,r,n=[],a=1;a=0?pes.executeSchedule(I,o,N,l,!0):b=!0,N();var B=function(Q){return C.slice().forEach(Q)},F=function(Q){B(function(X){var ae=X.window;return Q(ae)}),Q(I),I.unsubscribe()};return f.subscribe(_tl.createOperatorSubscriber(I,function(Q){B(function(X){X.window.next(Q),A<=++X.seen&&E(X)})},function(){return F(function(Q){return Q.complete()})},function(Q){return F(function(X){return X.error(Q)})})),function(){C=null}})}INt.windowTime=Etl});var S5r=H(oxe=>{"use strict";var Stl=oxe&&oxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(oxe,"__esModule",{value:!0});oxe.windowToggle=void 0;var vtl=ix(),Btl=TO(),wtl=qg(),fes=uh(),E5r=Cd(),Ies=rx(),Ttl=ote();function Rtl(e,t){return wtl.operate(function(r,n){var a=[],o=function(l){for(;0{"use strict";Object.defineProperty(hNt,"__esModule",{value:!0});hNt.windowWhen=void 0;var Ntl=ix(),Dtl=qg(),hes=Cd(),ktl=uh();function xtl(e){return Dtl.operate(function(t,r){var n,a,o=function(A){n.error(A),r.error(A)},l=function(){a?.unsubscribe(),n?.complete(),n=new Ntl.Subject,r.next(n.asObservable());var A;try{A=ktl.innerFrom(e())}catch(f){o(f);return}A.subscribe(a=hes.createOperatorSubscriber(r,l,l,o))};l(),t.subscribe(hes.createOperatorSubscriber(r,function(A){return n.next(A)},function(){n.complete(),r.complete()},o,function(){a?.unsubscribe(),n=null}))})}hNt.windowWhen=xtl});var B5r=H(Fle=>{"use strict";var mes=Fle&&Fle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Ces=Fle&&Fle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(mNt,"__esModule",{value:!0});mNt.zipAll=void 0;var Wtl=BTt(),Otl=c3r();function Mtl(e){return Otl.joinAllInternals(Wtl.zip,e)}mNt.zipAll=Mtl});var T5r=H(Zle=>{"use strict";var Htl=Zle&&Zle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Ytl=Zle&&Zle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Utl=Lle&&Lle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Ktl=Lle&&Lle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var qtl=Cn&&Cn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$tl=Cn&&Cn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qtl(t,e,r)};Object.defineProperty(Cn,"__esModule",{value:!0});Cn.interval=Cn.iif=Cn.generate=Cn.fromEventPattern=Cn.fromEvent=Cn.from=Cn.forkJoin=Cn.empty=Cn.defer=Cn.connectable=Cn.concat=Cn.combineLatest=Cn.bindNodeCallback=Cn.bindCallback=Cn.UnsubscriptionError=Cn.TimeoutError=Cn.SequenceError=Cn.ObjectUnsubscribedError=Cn.NotFoundError=Cn.EmptyError=Cn.ArgumentOutOfRangeError=Cn.firstValueFrom=Cn.lastValueFrom=Cn.isObservable=Cn.identity=Cn.noop=Cn.pipe=Cn.NotificationKind=Cn.Notification=Cn.Subscriber=Cn.Subscription=Cn.Scheduler=Cn.VirtualAction=Cn.VirtualTimeScheduler=Cn.animationFrameScheduler=Cn.animationFrame=Cn.queueScheduler=Cn.queue=Cn.asyncScheduler=Cn.async=Cn.asapScheduler=Cn.asap=Cn.AsyncSubject=Cn.ReplaySubject=Cn.BehaviorSubject=Cn.Subject=Cn.animationFrames=Cn.observable=Cn.ConnectableObservable=Cn.Observable=void 0;Cn.filter=Cn.expand=Cn.exhaustMap=Cn.exhaustAll=Cn.exhaust=Cn.every=Cn.endWith=Cn.elementAt=Cn.distinctUntilKeyChanged=Cn.distinctUntilChanged=Cn.distinct=Cn.dematerialize=Cn.delayWhen=Cn.delay=Cn.defaultIfEmpty=Cn.debounceTime=Cn.debounce=Cn.count=Cn.connect=Cn.concatWith=Cn.concatMapTo=Cn.concatMap=Cn.concatAll=Cn.combineLatestWith=Cn.combineLatestAll=Cn.combineAll=Cn.catchError=Cn.bufferWhen=Cn.bufferToggle=Cn.bufferTime=Cn.bufferCount=Cn.buffer=Cn.auditTime=Cn.audit=Cn.config=Cn.NEVER=Cn.EMPTY=Cn.scheduled=Cn.zip=Cn.using=Cn.timer=Cn.throwError=Cn.range=Cn.race=Cn.partition=Cn.pairs=Cn.onErrorResumeNext=Cn.of=Cn.never=Cn.merge=void 0;Cn.switchMap=Cn.switchAll=Cn.subscribeOn=Cn.startWith=Cn.skipWhile=Cn.skipUntil=Cn.skipLast=Cn.skip=Cn.single=Cn.shareReplay=Cn.share=Cn.sequenceEqual=Cn.scan=Cn.sampleTime=Cn.sample=Cn.refCount=Cn.retryWhen=Cn.retry=Cn.repeatWhen=Cn.repeat=Cn.reduce=Cn.raceWith=Cn.publishReplay=Cn.publishLast=Cn.publishBehavior=Cn.publish=Cn.pluck=Cn.pairwise=Cn.onErrorResumeNextWith=Cn.observeOn=Cn.multicast=Cn.min=Cn.mergeWith=Cn.mergeScan=Cn.mergeMapTo=Cn.mergeMap=Cn.flatMap=Cn.mergeAll=Cn.max=Cn.materialize=Cn.mapTo=Cn.map=Cn.last=Cn.isEmpty=Cn.ignoreElements=Cn.groupBy=Cn.first=Cn.findIndex=Cn.find=Cn.finalize=void 0;Cn.zipWith=Cn.zipAll=Cn.withLatestFrom=Cn.windowWhen=Cn.windowToggle=Cn.windowTime=Cn.windowCount=Cn.window=Cn.toArray=Cn.timestamp=Cn.timeoutWith=Cn.timeout=Cn.timeInterval=Cn.throwIfEmpty=Cn.throttleTime=Cn.throttle=Cn.tap=Cn.takeWhile=Cn.takeUntil=Cn.takeLast=Cn.take=Cn.switchScan=Cn.switchMapTo=void 0;var erl=ub();Object.defineProperty(Cn,"Observable",{enumerable:!0,get:function(){return erl.Observable}});var trl=L8e();Object.defineProperty(Cn,"ConnectableObservable",{enumerable:!0,get:function(){return trl.ConnectableObservable}});var rrl=F8e();Object.defineProperty(Cn,"observable",{enumerable:!0,get:function(){return rrl.observable}});var nrl=qzi();Object.defineProperty(Cn,"animationFrames",{enumerable:!0,get:function(){return nrl.animationFrames}});var irl=ix();Object.defineProperty(Cn,"Subject",{enumerable:!0,get:function(){return irl.Subject}});var srl=bOr();Object.defineProperty(Cn,"BehaviorSubject",{enumerable:!0,get:function(){return srl.BehaviorSubject}});var orl=fwt();Object.defineProperty(Cn,"ReplaySubject",{enumerable:!0,get:function(){return orl.ReplaySubject}});var arl=Iwt();Object.defineProperty(Cn,"AsyncSubject",{enumerable:!0,get:function(){return arl.AsyncSubject}});var yes=fqi();Object.defineProperty(Cn,"asap",{enumerable:!0,get:function(){return yes.asap}});Object.defineProperty(Cn,"asapScheduler",{enumerable:!0,get:function(){return yes.asapScheduler}});var bes=FV();Object.defineProperty(Cn,"async",{enumerable:!0,get:function(){return bes.async}});Object.defineProperty(Cn,"asyncScheduler",{enumerable:!0,get:function(){return bes.asyncScheduler}});var Ees=mqi();Object.defineProperty(Cn,"queue",{enumerable:!0,get:function(){return Ees.queue}});Object.defineProperty(Cn,"queueScheduler",{enumerable:!0,get:function(){return Ees.queueScheduler}});var Ses=bqi();Object.defineProperty(Cn,"animationFrame",{enumerable:!0,get:function(){return Ses.animationFrame}});Object.defineProperty(Cn,"animationFrameScheduler",{enumerable:!0,get:function(){return Ses.animationFrameScheduler}});var ves=vqi();Object.defineProperty(Cn,"VirtualTimeScheduler",{enumerable:!0,get:function(){return ves.VirtualTimeScheduler}});Object.defineProperty(Cn,"VirtualAction",{enumerable:!0,get:function(){return ves.VirtualAction}});var crl=SOr();Object.defineProperty(Cn,"Scheduler",{enumerable:!0,get:function(){return crl.Scheduler}});var lrl=TO();Object.defineProperty(Cn,"Subscription",{enumerable:!0,get:function(){return lrl.Subscription}});var url=_ke();Object.defineProperty(Cn,"Subscriber",{enumerable:!0,get:function(){return url.Subscriber}});var Bes=Mwt();Object.defineProperty(Cn,"Notification",{enumerable:!0,get:function(){return Bes.Notification}});Object.defineProperty(Cn,"NotificationKind",{enumerable:!0,get:function(){return Bes.NotificationKind}});var grl=Z8e();Object.defineProperty(Cn,"pipe",{enumerable:!0,get:function(){return grl.pipe}});var Arl=rx();Object.defineProperty(Cn,"noop",{enumerable:!0,get:function(){return Arl.noop}});var drl=nx();Object.defineProperty(Cn,"identity",{enumerable:!0,get:function(){return drl.identity}});var prl=Mqi();Object.defineProperty(Cn,"isObservable",{enumerable:!0,get:function(){return prl.isObservable}});var frl=Hqi();Object.defineProperty(Cn,"lastValueFrom",{enumerable:!0,get:function(){return frl.lastValueFrom}});var Irl=Yqi();Object.defineProperty(Cn,"firstValueFrom",{enumerable:!0,get:function(){return Irl.firstValueFrom}});var hrl=POr();Object.defineProperty(Cn,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return hrl.ArgumentOutOfRangeError}});var mrl=Cle();Object.defineProperty(Cn,"EmptyError",{enumerable:!0,get:function(){return mrl.EmptyError}});var Crl=WOr();Object.defineProperty(Cn,"NotFoundError",{enumerable:!0,get:function(){return Crl.NotFoundError}});var _rl=mOr();Object.defineProperty(Cn,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return _rl.ObjectUnsubscribedError}});var yrl=OOr();Object.defineProperty(Cn,"SequenceError",{enumerable:!0,get:function(){return yrl.SequenceError}});var brl=O8e();Object.defineProperty(Cn,"TimeoutError",{enumerable:!0,get:function(){return brl.TimeoutError}});var Erl=oOr();Object.defineProperty(Cn,"UnsubscriptionError",{enumerable:!0,get:function(){return Erl.UnsubscriptionError}});var Srl=Xqi();Object.defineProperty(Cn,"bindCallback",{enumerable:!0,get:function(){return Srl.bindCallback}});var vrl=Jqi();Object.defineProperty(Cn,"bindNodeCallback",{enumerable:!0,get:function(){return vrl.bindNodeCallback}});var Brl=nTt();Object.defineProperty(Cn,"combineLatest",{enumerable:!0,get:function(){return Brl.combineLatest}});var wrl=H8e();Object.defineProperty(Cn,"concat",{enumerable:!0,get:function(){return wrl.concat}});var Trl=t$i();Object.defineProperty(Cn,"connectable",{enumerable:!0,get:function(){return Trl.connectable}});var Rrl=Y8e();Object.defineProperty(Cn,"defer",{enumerable:!0,get:function(){return Rrl.defer}});var Nrl=x4();Object.defineProperty(Cn,"empty",{enumerable:!0,get:function(){return Nrl.empty}});var Drl=r$i();Object.defineProperty(Cn,"forkJoin",{enumerable:!0,get:function(){return Drl.forkJoin}});var krl=cte();Object.defineProperty(Cn,"from",{enumerable:!0,get:function(){return krl.from}});var xrl=i$i();Object.defineProperty(Cn,"fromEvent",{enumerable:!0,get:function(){return xrl.fromEvent}});var Grl=o$i();Object.defineProperty(Cn,"fromEventPattern",{enumerable:!0,get:function(){return Grl.fromEventPattern}});var Frl=c$i();Object.defineProperty(Cn,"generate",{enumerable:!0,get:function(){return Frl.generate}});var Zrl=l$i();Object.defineProperty(Cn,"iif",{enumerable:!0,get:function(){return Zrl.iif}});var Lrl=JOr();Object.defineProperty(Cn,"interval",{enumerable:!0,get:function(){return Lrl.interval}});var Vrl=g$i();Object.defineProperty(Cn,"merge",{enumerable:!0,get:function(){return Vrl.merge}});var Prl=UOr();Object.defineProperty(Cn,"never",{enumerable:!0,get:function(){return Prl.never}});var Wrl=Wwt();Object.defineProperty(Cn,"of",{enumerable:!0,get:function(){return Wrl.of}});var Orl=KOr();Object.defineProperty(Cn,"onErrorResumeNext",{enumerable:!0,get:function(){return Orl.onErrorResumeNext}});var Mrl=d$i();Object.defineProperty(Cn,"pairs",{enumerable:!0,get:function(){return Mrl.pairs}});var Hrl=I$i();Object.defineProperty(Cn,"partition",{enumerable:!0,get:function(){return Hrl.partition}});var Yrl=zOr();Object.defineProperty(Cn,"race",{enumerable:!0,get:function(){return Yrl.race}});var Qrl=C$i();Object.defineProperty(Cn,"range",{enumerable:!0,get:function(){return Qrl.range}});var Xrl=VOr();Object.defineProperty(Cn,"throwError",{enumerable:!0,get:function(){return Xrl.throwError}});var Jrl=Ele();Object.defineProperty(Cn,"timer",{enumerable:!0,get:function(){return Jrl.timer}});var Url=_$i();Object.defineProperty(Cn,"using",{enumerable:!0,get:function(){return Url.using}});var Krl=BTt();Object.defineProperty(Cn,"zip",{enumerable:!0,get:function(){return Krl.zip}});var jrl=LOr();Object.defineProperty(Cn,"scheduled",{enumerable:!0,get:function(){return jrl.scheduled}});var zrl=x4();Object.defineProperty(Cn,"EMPTY",{enumerable:!0,get:function(){return zrl.EMPTY}});var qrl=UOr();Object.defineProperty(Cn,"NEVER",{enumerable:!0,get:function(){return qrl.NEVER}});$tl(b$i(),Cn);var $rl=mke();Object.defineProperty(Cn,"config",{enumerable:!0,get:function(){return $rl.config}});var enl=TTt();Object.defineProperty(Cn,"audit",{enumerable:!0,get:function(){return enl.audit}});var tnl=qOr();Object.defineProperty(Cn,"auditTime",{enumerable:!0,get:function(){return tnl.auditTime}});var rnl=$Or();Object.defineProperty(Cn,"buffer",{enumerable:!0,get:function(){return rnl.buffer}});var nnl=t3r();Object.defineProperty(Cn,"bufferCount",{enumerable:!0,get:function(){return nnl.bufferCount}});var inl=r3r();Object.defineProperty(Cn,"bufferTime",{enumerable:!0,get:function(){return inl.bufferTime}});var snl=i3r();Object.defineProperty(Cn,"bufferToggle",{enumerable:!0,get:function(){return snl.bufferToggle}});var onl=s3r();Object.defineProperty(Cn,"bufferWhen",{enumerable:!0,get:function(){return onl.bufferWhen}});var anl=o3r();Object.defineProperty(Cn,"catchError",{enumerable:!0,get:function(){return anl.catchError}});var cnl=l3r();Object.defineProperty(Cn,"combineAll",{enumerable:!0,get:function(){return cnl.combineAll}});var lnl=PTt();Object.defineProperty(Cn,"combineLatestAll",{enumerable:!0,get:function(){return lnl.combineLatestAll}});var unl=g3r();Object.defineProperty(Cn,"combineLatestWith",{enumerable:!0,get:function(){return unl.combineLatestWith}});var gnl=M8e();Object.defineProperty(Cn,"concatAll",{enumerable:!0,get:function(){return gnl.concatAll}});var Anl=MTt();Object.defineProperty(Cn,"concatMap",{enumerable:!0,get:function(){return Anl.concatMap}});var dnl=A3r();Object.defineProperty(Cn,"concatMapTo",{enumerable:!0,get:function(){return dnl.concatMapTo}});var pnl=p3r();Object.defineProperty(Cn,"concatWith",{enumerable:!0,get:function(){return pnl.concatWith}});var fnl=Q8e();Object.defineProperty(Cn,"connect",{enumerable:!0,get:function(){return fnl.connect}});var Inl=f3r();Object.defineProperty(Cn,"count",{enumerable:!0,get:function(){return Inl.count}});var hnl=I3r();Object.defineProperty(Cn,"debounce",{enumerable:!0,get:function(){return hnl.debounce}});var mnl=h3r();Object.defineProperty(Cn,"debounceTime",{enumerable:!0,get:function(){return mnl.debounceTime}});var Cnl=qke();Object.defineProperty(Cn,"defaultIfEmpty",{enumerable:!0,get:function(){return Cnl.defaultIfEmpty}});var _nl=m3r();Object.defineProperty(Cn,"delay",{enumerable:!0,get:function(){return _nl.delay}});var ynl=rRt();Object.defineProperty(Cn,"delayWhen",{enumerable:!0,get:function(){return ynl.delayWhen}});var bnl=C3r();Object.defineProperty(Cn,"dematerialize",{enumerable:!0,get:function(){return bnl.dematerialize}});var Enl=_3r();Object.defineProperty(Cn,"distinct",{enumerable:!0,get:function(){return Enl.distinct}});var Snl=aRt();Object.defineProperty(Cn,"distinctUntilChanged",{enumerable:!0,get:function(){return Snl.distinctUntilChanged}});var vnl=y3r();Object.defineProperty(Cn,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return vnl.distinctUntilKeyChanged}});var Bnl=b3r();Object.defineProperty(Cn,"elementAt",{enumerable:!0,get:function(){return Bnl.elementAt}});var wnl=E3r();Object.defineProperty(Cn,"endWith",{enumerable:!0,get:function(){return wnl.endWith}});var Tnl=S3r();Object.defineProperty(Cn,"every",{enumerable:!0,get:function(){return Tnl.every}});var Rnl=v3r();Object.defineProperty(Cn,"exhaust",{enumerable:!0,get:function(){return Rnl.exhaust}});var Nnl=fRt();Object.defineProperty(Cn,"exhaustAll",{enumerable:!0,get:function(){return Nnl.exhaustAll}});var Dnl=dRt();Object.defineProperty(Cn,"exhaustMap",{enumerable:!0,get:function(){return Dnl.exhaustMap}});var knl=B3r();Object.defineProperty(Cn,"expand",{enumerable:!0,get:function(){return knl.expand}});var xnl=gte();Object.defineProperty(Cn,"filter",{enumerable:!0,get:function(){return xnl.filter}});var Gnl=w3r();Object.defineProperty(Cn,"finalize",{enumerable:!0,get:function(){return Gnl.finalize}});var Fnl=CRt();Object.defineProperty(Cn,"find",{enumerable:!0,get:function(){return Fnl.find}});var Znl=T3r();Object.defineProperty(Cn,"findIndex",{enumerable:!0,get:function(){return Znl.findIndex}});var Lnl=R3r();Object.defineProperty(Cn,"first",{enumerable:!0,get:function(){return Lnl.first}});var Vnl=N3r();Object.defineProperty(Cn,"groupBy",{enumerable:!0,get:function(){return Vnl.groupBy}});var Pnl=qTt();Object.defineProperty(Cn,"ignoreElements",{enumerable:!0,get:function(){return Pnl.ignoreElements}});var Wnl=D3r();Object.defineProperty(Cn,"isEmpty",{enumerable:!0,get:function(){return Wnl.isEmpty}});var Onl=k3r();Object.defineProperty(Cn,"last",{enumerable:!0,get:function(){return Onl.last}});var Mnl=ute();Object.defineProperty(Cn,"map",{enumerable:!0,get:function(){return Mnl.map}});var Hnl=eRt();Object.defineProperty(Cn,"mapTo",{enumerable:!0,get:function(){return Hnl.mapTo}});var Ynl=G3r();Object.defineProperty(Cn,"materialize",{enumerable:!0,get:function(){return Ynl.materialize}});var Qnl=F3r();Object.defineProperty(Cn,"max",{enumerable:!0,get:function(){return Qnl.max}});var Xnl=Qke();Object.defineProperty(Cn,"mergeAll",{enumerable:!0,get:function(){return Xnl.mergeAll}});var Jnl=Z3r();Object.defineProperty(Cn,"flatMap",{enumerable:!0,get:function(){return Jnl.flatMap}});var Unl=Kj();Object.defineProperty(Cn,"mergeMap",{enumerable:!0,get:function(){return Unl.mergeMap}});var Knl=L3r();Object.defineProperty(Cn,"mergeMapTo",{enumerable:!0,get:function(){return Knl.mergeMapTo}});var jnl=V3r();Object.defineProperty(Cn,"mergeScan",{enumerable:!0,get:function(){return jnl.mergeScan}});var znl=W3r();Object.defineProperty(Cn,"mergeWith",{enumerable:!0,get:function(){return znl.mergeWith}});var qnl=O3r();Object.defineProperty(Cn,"min",{enumerable:!0,get:function(){return qnl.min}});var $nl=X8e();Object.defineProperty(Cn,"multicast",{enumerable:!0,get:function(){return $nl.multicast}});var eil=Mke();Object.defineProperty(Cn,"observeOn",{enumerable:!0,get:function(){return eil.observeOn}});var til=M3r();Object.defineProperty(Cn,"onErrorResumeNextWith",{enumerable:!0,get:function(){return til.onErrorResumeNextWith}});var ril=H3r();Object.defineProperty(Cn,"pairwise",{enumerable:!0,get:function(){return ril.pairwise}});var nil=Y3r();Object.defineProperty(Cn,"pluck",{enumerable:!0,get:function(){return nil.pluck}});var iil=Q3r();Object.defineProperty(Cn,"publish",{enumerable:!0,get:function(){return iil.publish}});var sil=X3r();Object.defineProperty(Cn,"publishBehavior",{enumerable:!0,get:function(){return sil.publishBehavior}});var oil=J3r();Object.defineProperty(Cn,"publishLast",{enumerable:!0,get:function(){return oil.publishLast}});var ail=U3r();Object.defineProperty(Cn,"publishReplay",{enumerable:!0,get:function(){return ail.publishReplay}});var cil=PRt();Object.defineProperty(Cn,"raceWith",{enumerable:!0,get:function(){return cil.raceWith}});var lil=__e();Object.defineProperty(Cn,"reduce",{enumerable:!0,get:function(){return lil.reduce}});var uil=K3r();Object.defineProperty(Cn,"repeat",{enumerable:!0,get:function(){return uil.repeat}});var gil=j3r();Object.defineProperty(Cn,"repeatWhen",{enumerable:!0,get:function(){return gil.repeatWhen}});var Ail=z3r();Object.defineProperty(Cn,"retry",{enumerable:!0,get:function(){return Ail.retry}});var dil=q3r();Object.defineProperty(Cn,"retryWhen",{enumerable:!0,get:function(){return dil.retryWhen}});var pil=gwt();Object.defineProperty(Cn,"refCount",{enumerable:!0,get:function(){return pil.refCount}});var fil=QRt();Object.defineProperty(Cn,"sample",{enumerable:!0,get:function(){return fil.sample}});var Iil=$3r();Object.defineProperty(Cn,"sampleTime",{enumerable:!0,get:function(){return Iil.sampleTime}});var hil=e5r();Object.defineProperty(Cn,"scan",{enumerable:!0,get:function(){return hil.scan}});var mil=t5r();Object.defineProperty(Cn,"sequenceEqual",{enumerable:!0,get:function(){return mil.sequenceEqual}});var Cil=KRt();Object.defineProperty(Cn,"share",{enumerable:!0,get:function(){return Cil.share}});var _il=n5r();Object.defineProperty(Cn,"shareReplay",{enumerable:!0,get:function(){return _il.shareReplay}});var yil=i5r();Object.defineProperty(Cn,"single",{enumerable:!0,get:function(){return yil.single}});var bil=s5r();Object.defineProperty(Cn,"skip",{enumerable:!0,get:function(){return bil.skip}});var Eil=o5r();Object.defineProperty(Cn,"skipLast",{enumerable:!0,get:function(){return Eil.skipLast}});var Sil=a5r();Object.defineProperty(Cn,"skipUntil",{enumerable:!0,get:function(){return Sil.skipUntil}});var vil=c5r();Object.defineProperty(Cn,"skipWhile",{enumerable:!0,get:function(){return vil.skipWhile}});var Bil=l5r();Object.defineProperty(Cn,"startWith",{enumerable:!0,get:function(){return Bil.startWith}});var wil=Hke();Object.defineProperty(Cn,"subscribeOn",{enumerable:!0,get:function(){return wil.subscribeOn}});var Til=u5r();Object.defineProperty(Cn,"switchAll",{enumerable:!0,get:function(){return Til.switchAll}});var Ril=nxe();Object.defineProperty(Cn,"switchMap",{enumerable:!0,get:function(){return Ril.switchMap}});var Nil=g5r();Object.defineProperty(Cn,"switchMapTo",{enumerable:!0,get:function(){return Nil.switchMapTo}});var Dil=A5r();Object.defineProperty(Cn,"switchScan",{enumerable:!0,get:function(){return Dil.switchScan}});var kil=$ke();Object.defineProperty(Cn,"take",{enumerable:!0,get:function(){return kil.take}});var xil=SRt();Object.defineProperty(Cn,"takeLast",{enumerable:!0,get:function(){return xil.takeLast}});var Gil=d5r();Object.defineProperty(Cn,"takeUntil",{enumerable:!0,get:function(){return Gil.takeUntil}});var Fil=p5r();Object.defineProperty(Cn,"takeWhile",{enumerable:!0,get:function(){return Fil.takeWhile}});var Zil=f5r();Object.defineProperty(Cn,"tap",{enumerable:!0,get:function(){return Zil.tap}});var Lil=gNt();Object.defineProperty(Cn,"throttle",{enumerable:!0,get:function(){return Lil.throttle}});var Vil=I5r();Object.defineProperty(Cn,"throttleTime",{enumerable:!0,get:function(){return Vil.throttleTime}});var Pil=exe();Object.defineProperty(Cn,"throwIfEmpty",{enumerable:!0,get:function(){return Pil.throwIfEmpty}});var Wil=h5r();Object.defineProperty(Cn,"timeInterval",{enumerable:!0,get:function(){return Wil.timeInterval}});var Oil=O8e();Object.defineProperty(Cn,"timeout",{enumerable:!0,get:function(){return Oil.timeout}});var Mil=m5r();Object.defineProperty(Cn,"timeoutWith",{enumerable:!0,get:function(){return Mil.timeoutWith}});var Hil=C5r();Object.defineProperty(Cn,"timestamp",{enumerable:!0,get:function(){return Hil.timestamp}});var Yil=ZTt();Object.defineProperty(Cn,"toArray",{enumerable:!0,get:function(){return Yil.toArray}});var Qil=_5r();Object.defineProperty(Cn,"window",{enumerable:!0,get:function(){return Qil.window}});var Xil=y5r();Object.defineProperty(Cn,"windowCount",{enumerable:!0,get:function(){return Xil.windowCount}});var Jil=b5r();Object.defineProperty(Cn,"windowTime",{enumerable:!0,get:function(){return Jil.windowTime}});var Uil=S5r();Object.defineProperty(Cn,"windowToggle",{enumerable:!0,get:function(){return Uil.windowToggle}});var Kil=v5r();Object.defineProperty(Cn,"windowWhen",{enumerable:!0,get:function(){return Kil.windowWhen}});var jil=B5r();Object.defineProperty(Cn,"withLatestFrom",{enumerable:!0,get:function(){return jil.withLatestFrom}});var zil=w5r();Object.defineProperty(Cn,"zipAll",{enumerable:!0,get:function(){return zil.zipAll}});var qil=R5r();Object.defineProperty(Cn,"zipWith",{enumerable:!0,get:function(){return qil.zipWith}})});var Ate=H(LV=>{"use strict";Object.defineProperty(LV,"__esModule",{value:!0});LV.PathIsFileException=LV.PathIsDirectoryException=LV.FileAlreadyExistException=LV.FileDoesNotExistException=LV.UnknownException=LV.BaseException=void 0;var Vle=class extends Error{constructor(t=""){super(t)}};LV.BaseException=Vle;var N5r=class extends Vle{constructor(t){super(t)}};LV.UnknownException=N5r;var D5r=class extends Vle{constructor(t){super(`Path "${t}" does not exist.`)}};LV.FileDoesNotExistException=D5r;var k5r=class extends Vle{constructor(t){super(`Path "${t}" already exist.`)}};LV.FileAlreadyExistException=k5r;var x5r=class extends Vle{constructor(t){super(`Path "${t}" is a directory.`)}};LV.PathIsDirectoryException=x5r;var G5r=class extends Vle{constructor(t){super(`Path "${t}" is a file.`)}};LV.PathIsFileException=G5r});var Tes=H(y_e=>{"use strict";Object.defineProperty(y_e,"__esModule",{value:!0});y_e.oneLine=$il;y_e.indentBy=esl;y_e.stripIndent=wes;y_e.stripIndents=tsl;y_e.trimNewlines=rsl;function $il(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function esl(e){let t="";for(;e--;)t+=" ";return(r,...n)=>t+wes(r,...n).replace(/\n/g,` +`+t)}function wes(e,...t){let r=String.raw(e,...t),n=r.match(/^[ \t]*(?=\S)/gm);if(n===null)return r;let a=Math.min(...n.map(l=>l.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function tsl(e,...t){return String.raw(e,...t).split(` `).map(r=>r.trim()).join(` -`).trim()}function uil(e,...t){return String.raw(e,...t).replace(/^(?:\r?\n)+/,"").replace(/(?:\r?\n(?:\s*))$/,"")}});var Ies=H(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});Ate.decamelize=des;Ate.dasherize=Iil;Ate.camelize=pes;Ate.classify=hil;Ate.underscore=mil;Ate.capitalize=fes;Ate.levenshtein=Cil;var gil=/[ _]/g,Ail=/([a-z\d])([A-Z])/g,dil=/(-|_|\.|\s)+(.)?/g,pil=/([a-z\d])([A-Z]+)/g,fil=/-|\s+/g;function des(e){return e.replace(Ail,"$1_$2").toLowerCase()}function Iil(e){return des(e).replace(gil,"-")}function pes(e){return e.replace(dil,(t,r,n)=>n?n.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function hil(e){return e.split(".").map(t=>fes(pes(t))).join("")}function mil(e){return e.replace(pil,"$1_$2").replace(fil,"_").toLowerCase()}function fes(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Cil(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let n=0;n<=t.length;n++)r[n]=[n];for(let n=0;n<=e.length;n++)r[0][n]=n;for(let n=1;n<=t.length;n++)for(let a=1;a<=e.length;a++)t.charAt(n-1)==e.charAt(a-1)?r[n][a]=r[n-1][a-1]:r[n][a]=Math.min(r[n-1][a-1]+1,r[n][a-1]+1,r[n-1][a]+1);return r[t.length][e.length]}});var hes=H(R5r=>{"use strict";Object.defineProperty(R5r,"__esModule",{value:!0});R5r.deepCopy=T5r;var fNt=Symbol();function T5r(e){if(Array.isArray(e))return e.map(t=>T5r(t));if(e&&typeof e=="object"){let t=e;if(t[fNt])return t[fNt];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[fNt]=r;for(let n of Object.getOwnPropertyNames(t))r[n]=T5r(t[n]);return delete t[fNt],r}else return e}});var _es=H(Ces=>{var mes="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Ces.encode=function(e){if(0<=e&&e{var _il=_es(),yes=5,bes=1<>>=yes,a>0&&(n|=bil),r+=_il.encode(n);while(a>0);return r}});var X8e=H(UG=>{function Sil(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}UG.getArg=Sil;var Ses=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,vil=/^data:.+\,.+$/;function Q8e(e){let t=e.match(Ses);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}UG.urlParse=Q8e;function sxe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}UG.urlGenerate=sxe;var Bil=32;function wil(e){let t=[];return function(r){for(let a=0;aBil&&t.pop(),n}}var D5r=wil(function(t){let r=t,n=Q8e(t);if(n){if(!n.path)return t;r=n.path}let a=UG.isAbsolute(r),o=[],l=0,A=0;for(;;)if(l=A,A=r.indexOf("/",l),A===-1){o.push(r.slice(l));break}else for(o.push(r.slice(l,A));A=0;A--){let I=o[A];I==="."?o.splice(A,1):I===".."?f++:f>0&&(I===""?(o.splice(A+1,f),f=0):(o.splice(A,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),n?(n.path=r,sxe(n)):r});UG.normalize=D5r;function ves(e,t){e===""&&(e="."),t===""&&(t=".");let r=Q8e(t),n=Q8e(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),sxe(r);if(r||t.match(vil))return t;if(n&&!n.host&&!n.path)return n.host=t,sxe(n);let a=t.charAt(0)==="/"?t:D5r(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,sxe(n)):a}UG.join=ves;UG.isAbsolute=function(e){return e.charAt(0)==="/"||Ses.test(e)};function Til(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}UG.relative=Til;var Bes=function(){return!("__proto__"in Object.create(null))}();function wes(e){return e}function Ril(e){return Tes(e)?"$"+e:e}UG.toSetString=Bes?wes:Ril;function Nil(e){return Tes(e)?e.slice(1):e}UG.fromSetString=Bes?wes:Nil;function Tes(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function Dil(e,t,r){let n=oxe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:oxe(e.name,t.name)}UG.compareByOriginalPositions=Dil;function kil(e,t,r){let n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=oxe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:oxe(e.name,t.name)}UG.compareByGeneratedPositionsDeflated=kil;function oxe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function xil(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=oxe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:oxe(e.name,t.name)}UG.compareByGeneratedPositionsInflated=xil;function Gil(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}UG.parseSourceMapInput=Gil;function Fil(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let n=Q8e(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){let a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=ves(sxe(n),t)}return D5r(t)}UG.computeSourceURL=Fil});var x5r=H(Res=>{var k5r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let n=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var Nes=X8e();function Zil(e,t){let r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||Nes.compareByGeneratedPositionsInflated(e,t)<=0}var G5r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){Zil(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(Nes.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};Des.MappingList=G5r});var F5r=H(xes=>{var J8e=N5r(),fT=X8e(),INt=x5r().ArraySet,Lil=kes().MappingList,hNt=class e{constructor(t){t||(t={}),this._file=fT.getArg(t,"file",null),this._sourceRoot=fT.getArg(t,"sourceRoot",null),this._skipValidation=fT.getArg(t,"skipValidation",!1),this._sources=new INt,this._names=new INt,this._mappings=new Lil,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=fT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=fT.relative(r,a)),n._sources.has(o)||n._sources.add(o);let l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n}addMapping(t){let r=fT.getArg(t,"generated"),n=fT.getArg(t,"original",null),a=fT.getArg(t,"source",null),o=fT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})}setSourceContent(t,r){let n=t;this._sourceRoot!=null&&(n=fT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[fT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[fT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,n){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=fT.relative(o,a));let l=this._mappings.toArray().length>0?new INt:this._sources,A=new INt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let b=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});b.source!=null&&(f.source=b.source,n!=null&&(f.source=fT.join(n,f.source)),o!=null&&(f.source=fT.relative(o,f.source)),f.originalLine=b.line,f.originalColumn=b.column,b.name!=null&&(f.name=b.name))}let I=f.source;I!=null&&!l.has(I)&&l.add(I);let C=f.name;C!=null&&!A.has(C)&&A.add(C)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){let I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=fT.join(n,f)),o!=null&&(f=fT.relative(o,f)),this.setSourceContent(f,I))},this)}_validateMapping(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray();for(let N=0,B=E.length;N0){if(!fT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=J8e.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=J8e.encode(b-l),l=b,f+=J8e.encode(I.originalLine-1-a),a=I.originalLine-1,f+=J8e.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=J8e.encode(C-o),o=C)),A+=f}return A}_generateSourcesContent(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=fT.relative(r,n));let a=fT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};hNt.prototype._version=3;xes.SourceMapGenerator=hNt});var Ges=H(y_e=>{y_e.GREATEST_LOWER_BOUND=1;y_e.LEAST_UPPER_BOUND=2;function Z5r(e,t,r,n,a,o){let l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?Z5r(l,t,r,n,a,o):o==y_e.LEAST_UPPER_BOUND?t1?Z5r(e,l,r,n,a,o):o==y_e.LEAST_UPPER_BOUND?l:e<0?-1:e}y_e.search=function(t,r,n,a){if(r.length===0)return-1;let o=Z5r(-1,r.length,t,r,n,a||y_e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var L5r=H((s7u,U8e)=>{var Vil=function(){return typeof window<"u"&&this===window}.call();if(Vil){let e=null;U8e.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},U8e.exports.initialize=t=>e=t}else{let e=wt("fs"),t=wt("path");U8e.exports=function(){return new Promise((n,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(l,A)=>{if(l){a(l);return}n(A.buffer)})})},U8e.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var Zes=H((o7u,Fes)=>{var Pil=L5r();function Wil(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var K8e=null;Fes.exports=function(){if(K8e)return K8e;let t=[];return K8e=Pil().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(n,a,o,l,A,f,I,C,b,E){let N=new Wil;N.generatedLine=n+1,N.generatedColumn=a,o&&(N.lastGeneratedColumn=l-1),A&&(N.source=f,N.originalLine=I+1,N.originalColumn=C,b&&(N.name=E)),t[t.length-1](N)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(n,a)=>{t.push(n);try{a()}finally{t.pop()}}})).then(null,r=>{throw K8e=null,r}),K8e}});var Les=H(_Nt=>{var Jd=X8e(),V5r=Ges(),mNt=x5r().ArraySet,a7u=N5r(),Oil=L5r(),Mil=Zes(),P5r=Symbol("smcInternal"),Jv=class e{constructor(t,r){return t==P5r?Promise.resolve(this):Hil(t,r)}static initialize(t){Oil.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return Yil(t,r)}static async with(t,r,n){let a=await new e(t,r);try{return await n(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,n){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};Jv.prototype._version=3;Jv.GENERATED_ORDER=1;Jv.ORIGINAL_ORDER=2;Jv.GREATEST_LOWER_BOUND=1;Jv.LEAST_UPPER_BOUND=2;_Nt.SourceMapConsumer=Jv;var axe=class e extends Jv{constructor(t,r){return super(P5r).then(n=>{let a=t;typeof t=="string"&&(a=Jd.parseSourceMapInput(t));let o=Jd.getArg(a,"version"),l=Jd.getArg(a,"sources"),A=Jd.getArg(a,"names",[]),f=Jd.getArg(a,"sourceRoot",null),I=Jd.getArg(a,"sourcesContent",null),C=Jd.getArg(a,"mappings"),b=Jd.getArg(a,"file",null);if(o!=n._version)throw new Error("Unsupported version: "+o);return f&&(f=Jd.normalize(f)),l=l.map(String).map(Jd.normalize).map(function(E){return f&&Jd.isAbsolute(f)&&Jd.isAbsolute(E)?Jd.relative(f,E):E}),n._names=mNt.fromArray(A.map(String),!0),n._sources=mNt.fromArray(l,!0),n._absoluteSources=n._sources.toArray().map(function(E){return Jd.computeSourceURL(f,E,r)}),n.sourceRoot=f,n.sourcesContent=I,n._mappings=C,n._sourceMapURL=r,n.file=b,n._computedColumnSpans=!1,n._mappingsPtr=0,n._wasm=null,Mil().then(E=>(n._wasm=E,n))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Jd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let n=0;n{A.source!==null&&(A.source=this._sources.at(A.source),A.source=Jd.computeSourceURL(l,A.source,this._sourceMapURL),A.name!==null&&(A.name=this._names.at(A.name))),t.call(a,A)},()=>{switch(o){case Jv.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case Jv.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Jd.getArg(t,"source"),n=Jd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(n<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(l=>{let A=l.lastGeneratedColumn;this._computedColumnSpans&&A===null&&(A=1/0),o.push({line:l.generatedLine,column:l.generatedColumn,lastColumn:A})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,n-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Jd.getArg(t,"line"),generatedColumn:Jd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let n=Jd.getArg(t,"bias",Jv.GREATEST_LOWER_BOUND);n==null&&(n=Jv.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,n)}),a&&a.generatedLine===r.generatedLine){let o=Jd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Jd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let l=Jd.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:Jd.getArg(a,"originalLine",null),column:Jd.getArg(a,"originalColumn",null),name:l}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];let a=t;this.sourceRoot!=null&&(a=Jd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Jd.urlParse(this.sourceRoot))){let l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Jd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let n={source:r,originalLine:Jd.getArg(t,"line"),originalColumn:Jd.getArg(t,"column")};if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Jd.getArg(t,"bias",Jv.GREATEST_LOWER_BOUND);a==null&&(a=Jv.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(l=>o=l,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),n.source,n.originalLine-1,n.originalColumn,a)}),o&&o.source===n.source){let l=o.lastGeneratedColumn;return this._computedColumnSpans&&l===null&&(l=1/0),{line:Jd.getArg(o,"generatedLine",null),column:Jd.getArg(o,"generatedColumn",null),lastColumn:l}}return{line:null,column:null,lastColumn:null}}};axe.prototype.consumer=Jv;_Nt.BasicSourceMapConsumer=axe;var CNt=class extends Jv{constructor(t,r){return super(P5r).then(n=>{let a=t;typeof t=="string"&&(a=Jd.parseSourceMapInput(t));let o=Jd.getArg(a,"version"),l=Jd.getArg(a,"sections");if(o!=n._version)throw new Error("Unsupported version: "+o);n._sources=new mNt,n._names=new mNt,n.__generatedMappings=null,n.__originalMappings=null,n.__generatedMappingsUnsorted=null,n.__originalMappingsUnsorted=null;let A={line:-1,column:0};return Promise.all(l.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let I=Jd.getArg(f,"offset"),C=Jd.getArg(I,"line"),b=Jd.getArg(I,"column");if(C({generatedOffset:{generatedLine:C+1,generatedColumn:b+1},consumer:N}))})).then(f=>(n._sections=f,n))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Jd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Jd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rA.push(f));for(let f=0;f= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",Jd.compareByOriginalPositions,V5r.LEAST_UPPER_BOUND);if(o>=0){let l=this._originalMappings[o];if(t.column===void 0){let A=l.originalLine;for(;l&&l.originalLine===A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Jd.getArg(l,"generatedLine",null),column:Jd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}else{let A=l.originalColumn;for(;l&&l.originalLine===r&&l.originalColumn==A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Jd.getArg(l,"generatedLine",null),column:Jd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var Qil=F5r().SourceMapGenerator,yNt=X8e(),Xil=/(\r?\n)/,Jil=10,cxe="$$$isSourceNode$$$",W5r=class e{constructor(t,r,n,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=n??null,this.name=o??null,this[cxe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,n){let a=new e,o=t.split(Xil),l=0,A=function(){let N=F(),B=F()||"";return N+B;function F(){return l=0;r--)this.prepend(t[r]);else if(t[cxe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let n=0,a=this.children.length;n0){for(r=[],n=0;n{bNt.SourceMapGenerator=F5r().SourceMapGenerator;bNt.SourceMapConsumer=Les().SourceMapConsumer;bNt.SourceNode=Pes().SourceNode});var Hes=H(ENt=>{"use strict";Object.defineProperty(ENt,"__esModule",{value:!0});ENt.templateParser=Mes;ENt.template=esl;var iL=Wes(),Uil=/<%=([\s\S]+?)%>/g,Kil=/<%#([\s\S]+?)%>/g,jil=/<%-([\s\S]+?)%>/g,zil=/<%([\s\S]+?)%>/g,O5r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Oes=new RegExp(`[${Object.keys(O5r).join("")}]`,"g");function lxe(e,t){let r=1,n=0;for(let a=0;aC.source).join("|")+"|$","g"),o=e.split(a),l=0,A=lxe(e,l),f,I=n.length+1;for(let C=0;C{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});dte.decamelize=Res;dte.dasherize=csl;dte.camelize=Nes;dte.classify=lsl;dte.underscore=usl;dte.capitalize=Des;dte.levenshtein=gsl;var nsl=/[ _]/g,isl=/([a-z\d])([A-Z])/g,ssl=/(-|_|\.|\s)+(.)?/g,osl=/([a-z\d])([A-Z]+)/g,asl=/-|\s+/g;function Res(e){return e.replace(isl,"$1_$2").toLowerCase()}function csl(e){return Res(e).replace(nsl,"-")}function Nes(e){return e.replace(ssl,(t,r,n)=>n?n.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function lsl(e){return e.split(".").map(t=>Des(Nes(t))).join("")}function usl(e){return e.replace(osl,"$1_$2").replace(asl,"_").toLowerCase()}function Des(e){return e.charAt(0).toUpperCase()+e.slice(1)}function gsl(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let n=0;n<=t.length;n++)r[n]=[n];for(let n=0;n<=e.length;n++)r[0][n]=n;for(let n=1;n<=t.length;n++)for(let a=1;a<=e.length;a++)t.charAt(n-1)==e.charAt(a-1)?r[n][a]=r[n-1][a-1]:r[n][a]=Math.min(r[n-1][a-1]+1,r[n][a-1]+1,r[n-1][a]+1);return r[t.length][e.length]}});var xes=H(Z5r=>{"use strict";Object.defineProperty(Z5r,"__esModule",{value:!0});Z5r.deepCopy=F5r;var CNt=Symbol();function F5r(e){if(Array.isArray(e))return e.map(t=>F5r(t));if(e&&typeof e=="object"){let t=e;if(t[CNt])return t[CNt];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[CNt]=r;for(let n of Object.getOwnPropertyNames(t))r[n]=F5r(t[n]);return delete t[CNt],r}else return e}});var Zes=H(Fes=>{var Ges="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Fes.encode=function(e){if(0<=e&&e{var Asl=Zes(),Les=5,Ves=1<>>=Les,a>0&&(n|=psl),r+=Asl.encode(n);while(a>0);return r}});var U8e=H(UG=>{function Isl(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}UG.getArg=Isl;var Wes=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,hsl=/^data:.+\,.+$/;function J8e(e){let t=e.match(Wes);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}UG.urlParse=J8e;function axe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}UG.urlGenerate=axe;var msl=32;function Csl(e){let t=[];return function(r){for(let a=0;amsl&&t.pop(),n}}var V5r=Csl(function(t){let r=t,n=J8e(t);if(n){if(!n.path)return t;r=n.path}let a=UG.isAbsolute(r),o=[],l=0,A=0;for(;;)if(l=A,A=r.indexOf("/",l),A===-1){o.push(r.slice(l));break}else for(o.push(r.slice(l,A));A=0;A--){let I=o[A];I==="."?o.splice(A,1):I===".."?f++:f>0&&(I===""?(o.splice(A+1,f),f=0):(o.splice(A,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),n?(n.path=r,axe(n)):r});UG.normalize=V5r;function Oes(e,t){e===""&&(e="."),t===""&&(t=".");let r=J8e(t),n=J8e(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),axe(r);if(r||t.match(hsl))return t;if(n&&!n.host&&!n.path)return n.host=t,axe(n);let a=t.charAt(0)==="/"?t:V5r(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,axe(n)):a}UG.join=Oes;UG.isAbsolute=function(e){return e.charAt(0)==="/"||Wes.test(e)};function _sl(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}UG.relative=_sl;var Mes=function(){return!("__proto__"in Object.create(null))}();function Hes(e){return e}function ysl(e){return Yes(e)?"$"+e:e}UG.toSetString=Mes?Hes:ysl;function bsl(e){return Yes(e)?e.slice(1):e}UG.fromSetString=Mes?Hes:bsl;function Yes(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function Esl(e,t,r){let n=cxe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:cxe(e.name,t.name)}UG.compareByOriginalPositions=Esl;function Ssl(e,t,r){let n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=cxe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:cxe(e.name,t.name)}UG.compareByGeneratedPositionsDeflated=Ssl;function cxe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function vsl(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=cxe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:cxe(e.name,t.name)}UG.compareByGeneratedPositionsInflated=vsl;function Bsl(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}UG.parseSourceMapInput=Bsl;function wsl(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let n=J8e(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){let a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=Oes(axe(n),t)}return V5r(t)}UG.computeSourceURL=wsl});var W5r=H(Qes=>{var P5r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let n=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var Xes=U8e();function Tsl(e,t){let r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||Xes.compareByGeneratedPositionsInflated(e,t)<=0}var O5r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){Tsl(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(Xes.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};Jes.MappingList=O5r});var M5r=H(Kes=>{var K8e=L5r(),fT=U8e(),_Nt=W5r().ArraySet,Rsl=Ues().MappingList,yNt=class e{constructor(t){t||(t={}),this._file=fT.getArg(t,"file",null),this._sourceRoot=fT.getArg(t,"sourceRoot",null),this._skipValidation=fT.getArg(t,"skipValidation",!1),this._sources=new _Nt,this._names=new _Nt,this._mappings=new Rsl,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=fT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=fT.relative(r,a)),n._sources.has(o)||n._sources.add(o);let l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n}addMapping(t){let r=fT.getArg(t,"generated"),n=fT.getArg(t,"original",null),a=fT.getArg(t,"source",null),o=fT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})}setSourceContent(t,r){let n=t;this._sourceRoot!=null&&(n=fT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[fT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[fT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,n){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=fT.relative(o,a));let l=this._mappings.toArray().length>0?new _Nt:this._sources,A=new _Nt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let b=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});b.source!=null&&(f.source=b.source,n!=null&&(f.source=fT.join(n,f.source)),o!=null&&(f.source=fT.relative(o,f.source)),f.originalLine=b.line,f.originalColumn=b.column,b.name!=null&&(f.name=b.name))}let I=f.source;I!=null&&!l.has(I)&&l.add(I);let C=f.name;C!=null&&!A.has(C)&&A.add(C)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){let I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=fT.join(n,f)),o!=null&&(f=fT.relative(o,f)),this.setSourceContent(f,I))},this)}_validateMapping(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray();for(let N=0,B=E.length;N0){if(!fT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=K8e.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=K8e.encode(b-l),l=b,f+=K8e.encode(I.originalLine-1-a),a=I.originalLine-1,f+=K8e.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=K8e.encode(C-o),o=C)),A+=f}return A}_generateSourcesContent(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=fT.relative(r,n));let a=fT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};yNt.prototype._version=3;Kes.SourceMapGenerator=yNt});var jes=H(b_e=>{b_e.GREATEST_LOWER_BOUND=1;b_e.LEAST_UPPER_BOUND=2;function H5r(e,t,r,n,a,o){let l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?H5r(l,t,r,n,a,o):o==b_e.LEAST_UPPER_BOUND?t1?H5r(e,l,r,n,a,o):o==b_e.LEAST_UPPER_BOUND?l:e<0?-1:e}b_e.search=function(t,r,n,a){if(r.length===0)return-1;let o=H5r(-1,r.length,t,r,n,a||b_e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var Y5r=H((fzu,j8e)=>{var Nsl=function(){return typeof window<"u"&&this===window}.call();if(Nsl){let e=null;j8e.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},j8e.exports.initialize=t=>e=t}else{let e=wt("fs"),t=wt("path");j8e.exports=function(){return new Promise((n,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(l,A)=>{if(l){a(l);return}n(A.buffer)})})},j8e.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var qes=H((Izu,zes)=>{var Dsl=Y5r();function ksl(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var z8e=null;zes.exports=function(){if(z8e)return z8e;let t=[];return z8e=Dsl().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(n,a,o,l,A,f,I,C,b,E){let N=new ksl;N.generatedLine=n+1,N.generatedColumn=a,o&&(N.lastGeneratedColumn=l-1),A&&(N.source=f,N.originalLine=I+1,N.originalColumn=C,b&&(N.name=E)),t[t.length-1](N)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(n,a)=>{t.push(n);try{a()}finally{t.pop()}}})).then(null,r=>{throw z8e=null,r}),z8e}});var $es=H(SNt=>{var Jd=U8e(),Q5r=jes(),bNt=W5r().ArraySet,hzu=L5r(),xsl=Y5r(),Gsl=qes(),X5r=Symbol("smcInternal"),Jv=class e{constructor(t,r){return t==X5r?Promise.resolve(this):Fsl(t,r)}static initialize(t){xsl.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return Zsl(t,r)}static async with(t,r,n){let a=await new e(t,r);try{return await n(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,n){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};Jv.prototype._version=3;Jv.GENERATED_ORDER=1;Jv.ORIGINAL_ORDER=2;Jv.GREATEST_LOWER_BOUND=1;Jv.LEAST_UPPER_BOUND=2;SNt.SourceMapConsumer=Jv;var lxe=class e extends Jv{constructor(t,r){return super(X5r).then(n=>{let a=t;typeof t=="string"&&(a=Jd.parseSourceMapInput(t));let o=Jd.getArg(a,"version"),l=Jd.getArg(a,"sources"),A=Jd.getArg(a,"names",[]),f=Jd.getArg(a,"sourceRoot",null),I=Jd.getArg(a,"sourcesContent",null),C=Jd.getArg(a,"mappings"),b=Jd.getArg(a,"file",null);if(o!=n._version)throw new Error("Unsupported version: "+o);return f&&(f=Jd.normalize(f)),l=l.map(String).map(Jd.normalize).map(function(E){return f&&Jd.isAbsolute(f)&&Jd.isAbsolute(E)?Jd.relative(f,E):E}),n._names=bNt.fromArray(A.map(String),!0),n._sources=bNt.fromArray(l,!0),n._absoluteSources=n._sources.toArray().map(function(E){return Jd.computeSourceURL(f,E,r)}),n.sourceRoot=f,n.sourcesContent=I,n._mappings=C,n._sourceMapURL=r,n.file=b,n._computedColumnSpans=!1,n._mappingsPtr=0,n._wasm=null,Gsl().then(E=>(n._wasm=E,n))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Jd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let n=0;n{A.source!==null&&(A.source=this._sources.at(A.source),A.source=Jd.computeSourceURL(l,A.source,this._sourceMapURL),A.name!==null&&(A.name=this._names.at(A.name))),t.call(a,A)},()=>{switch(o){case Jv.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case Jv.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Jd.getArg(t,"source"),n=Jd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(n<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(l=>{let A=l.lastGeneratedColumn;this._computedColumnSpans&&A===null&&(A=1/0),o.push({line:l.generatedLine,column:l.generatedColumn,lastColumn:A})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,n-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Jd.getArg(t,"line"),generatedColumn:Jd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let n=Jd.getArg(t,"bias",Jv.GREATEST_LOWER_BOUND);n==null&&(n=Jv.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,n)}),a&&a.generatedLine===r.generatedLine){let o=Jd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Jd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let l=Jd.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:Jd.getArg(a,"originalLine",null),column:Jd.getArg(a,"originalColumn",null),name:l}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];let a=t;this.sourceRoot!=null&&(a=Jd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Jd.urlParse(this.sourceRoot))){let l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Jd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let n={source:r,originalLine:Jd.getArg(t,"line"),originalColumn:Jd.getArg(t,"column")};if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Jd.getArg(t,"bias",Jv.GREATEST_LOWER_BOUND);a==null&&(a=Jv.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(l=>o=l,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),n.source,n.originalLine-1,n.originalColumn,a)}),o&&o.source===n.source){let l=o.lastGeneratedColumn;return this._computedColumnSpans&&l===null&&(l=1/0),{line:Jd.getArg(o,"generatedLine",null),column:Jd.getArg(o,"generatedColumn",null),lastColumn:l}}return{line:null,column:null,lastColumn:null}}};lxe.prototype.consumer=Jv;SNt.BasicSourceMapConsumer=lxe;var ENt=class extends Jv{constructor(t,r){return super(X5r).then(n=>{let a=t;typeof t=="string"&&(a=Jd.parseSourceMapInput(t));let o=Jd.getArg(a,"version"),l=Jd.getArg(a,"sections");if(o!=n._version)throw new Error("Unsupported version: "+o);n._sources=new bNt,n._names=new bNt,n.__generatedMappings=null,n.__originalMappings=null,n.__generatedMappingsUnsorted=null,n.__originalMappingsUnsorted=null;let A={line:-1,column:0};return Promise.all(l.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let I=Jd.getArg(f,"offset"),C=Jd.getArg(I,"line"),b=Jd.getArg(I,"column");if(C({generatedOffset:{generatedLine:C+1,generatedColumn:b+1},consumer:N}))})).then(f=>(n._sections=f,n))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Jd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Jd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rA.push(f));for(let f=0;f= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",Jd.compareByOriginalPositions,Q5r.LEAST_UPPER_BOUND);if(o>=0){let l=this._originalMappings[o];if(t.column===void 0){let A=l.originalLine;for(;l&&l.originalLine===A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Jd.getArg(l,"generatedLine",null),column:Jd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}else{let A=l.originalColumn;for(;l&&l.originalLine===r&&l.originalColumn==A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Jd.getArg(l,"generatedLine",null),column:Jd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var Lsl=M5r().SourceMapGenerator,vNt=U8e(),Vsl=/(\r?\n)/,Psl=10,uxe="$$$isSourceNode$$$",J5r=class e{constructor(t,r,n,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=n??null,this.name=o??null,this[uxe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,n){let a=new e,o=t.split(Vsl),l=0,A=function(){let N=F(),B=F()||"";return N+B;function F(){return l=0;r--)this.prepend(t[r]);else if(t[uxe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let n=0,a=this.children.length;n0){for(r=[],n=0;n{BNt.SourceMapGenerator=M5r().SourceMapGenerator;BNt.SourceMapConsumer=$es().SourceMapConsumer;BNt.SourceNode=tts().SourceNode});var sts=H(wNt=>{"use strict";Object.defineProperty(wNt,"__esModule",{value:!0});wNt.templateParser=its;wNt.template=Xsl;var iL=rts(),Wsl=/<%=([\s\S]+?)%>/g,Osl=/<%#([\s\S]+?)%>/g,Msl=/<%-([\s\S]+?)%>/g,Hsl=/<%([\s\S]+?)%>/g,U5r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},nts=new RegExp(`[${Object.keys(U5r).join("")}]`,"g");function gxe(e,t){let r=1,n=0;for(let a=0;aC.source).join("|")+"|$","g"),o=e.split(a),l=0,A=gxe(e,l),f,I=n.length+1;for(let C=0;C{"use strict";Object.defineProperty(Vle,"__esModule",{value:!0});Vle.PartiallyOrderedSet=Vle.CircularDependencyFoundException=Vle.DependencyNotFoundException=void 0;var Yes=gte(),SNt=class extends Yes.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};Vle.DependencyNotFoundException=SNt;var j8e=class extends Yes.BaseException{constructor(){super("Circular dependencies found.")}};Vle.CircularDependencyFoundException=j8e;var M5r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new j8e;r.forEach(n=>this._checkCircularDependencies(t,this._items.get(n)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let n of this)t.call(r,n,n,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let n=this._items.get(t)||new Set,a=!0;for(let o of r)if(!n.has(o)){a=!1;break}if(a){for(let o of n)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let n of r)if(!this._items.has(n))throw new SNt;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,n]of t.entries())t.set(r,new Set(n));for(;t.size>0;){let r=[];for(let[n,a]of t.entries())a.size==0&&r.push(n);for(let n of r)t.forEach(a=>a.delete(n)),t.delete(n),yield n;if(r.length==0)throw new j8e}}get[Symbol.toStringTag](){return"Set"}};Vle.PartiallyOrderedSet=M5r});var Xes=H(vNt=>{"use strict";Object.defineProperty(vNt,"__esModule",{value:!0});vNt.PriorityQueue=void 0;var H5r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(n=>this._comparator(t,n)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};vNt.PriorityQueue=H5r});var Jes=H(Y5r=>{"use strict";Object.defineProperty(Y5r,"__esModule",{value:!0});Y5r.isPromise=tsl;function tsl(e){return!!e&&typeof e.then=="function"}});var Q5r=H(ZR=>{"use strict";var Ues=ZR&&ZR.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rsl=ZR&&ZR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Kes=ZR&&ZR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(BNt,"__esModule",{value:!0});BNt.visitJson=ssl;BNt.visitJsonSchema=osl;var KG=qb(),Ple=aPr();function jes(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function X5r(e,t,r,n,a,o,l){if((n===!0||n===!1)&&(n=void 0),n&&n.hasOwnProperty("$ref")&&typeof n.$ref=="string"&&a){let f=a(n.$ref,o);n=f.schema,o=f.context}let A=t(e,r,n,l);return((0,KG.isObservable)(A)?A:(0,KG.of)(A)).pipe((0,KG.concatMap)(f=>Array.isArray(f)?(0,KG.concat)((0,KG.from)(f).pipe((0,KG.mergeMap)((I,C)=>X5r(I,t,(0,Ple.joinJsonPointer)(r,""+C),jes(n,""+C),a,o,l||f).pipe((0,KG.tap)(b=>f[C]=b))),(0,KG.ignoreElements)()),(0,KG.of)(f)):typeof f=="object"&&f!==null?(0,KG.concat)((0,KG.from)(Object.getOwnPropertyNames(f)).pipe((0,KG.mergeMap)(I=>X5r(f[I],t,(0,Ple.joinJsonPointer)(r,I),jes(n,I),a,o,l||f).pipe((0,KG.tap)(C=>{let b=Object.getOwnPropertyDescriptor(f,I);b&&b.writable&&f[I]!==C&&(f[I]=C)}))),(0,KG.ignoreElements)()),(0,KG.of)(f)):(0,KG.of)(f)))}function ssl(e,t,r,n,a){return X5r(e,t,(0,Ple.buildJsonPointer)([]),r,n,a)}function osl(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},n={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(l,A,f,I,C){if(l&&typeof l=="object"&&!Array.isArray(l)){t(l,A,I,C);for(let b of Object.keys(l)){let E=l[b];if(b in a){if(E&&typeof E=="object")for(let N of Object.keys(E))o(E[N],(0,Ple.joinJsonPointer)(A,b,N),f,l,N)}else if(b in r)o(E,(0,Ple.joinJsonPointer)(A,b),f,l,b);else if(b in n){if(Array.isArray(E))for(let N=0;N{"use strict";var asl=VV&&VV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),csl=VV&&VV.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),q5r=VV&&VV.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Ple,"__esModule",{value:!0});Ple.PartiallyOrderedSet=Ple.CircularDependencyFoundException=Ple.DependencyNotFoundException=void 0;var ots=Ate(),TNt=class extends ots.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};Ple.DependencyNotFoundException=TNt;var q8e=class extends ots.BaseException{constructor(){super("Circular dependencies found.")}};Ple.CircularDependencyFoundException=q8e;var K5r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new q8e;r.forEach(n=>this._checkCircularDependencies(t,this._items.get(n)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let n of this)t.call(r,n,n,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let n=this._items.get(t)||new Set,a=!0;for(let o of r)if(!n.has(o)){a=!1;break}if(a){for(let o of n)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let n of r)if(!this._items.has(n))throw new TNt;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,n]of t.entries())t.set(r,new Set(n));for(;t.size>0;){let r=[];for(let[n,a]of t.entries())a.size==0&&r.push(n);for(let n of r)t.forEach(a=>a.delete(n)),t.delete(n),yield n;if(r.length==0)throw new q8e}}get[Symbol.toStringTag](){return"Set"}};Ple.PartiallyOrderedSet=K5r});var cts=H(RNt=>{"use strict";Object.defineProperty(RNt,"__esModule",{value:!0});RNt.PriorityQueue=void 0;var j5r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(n=>this._comparator(t,n)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};RNt.PriorityQueue=j5r});var lts=H(z5r=>{"use strict";Object.defineProperty(z5r,"__esModule",{value:!0});z5r.isPromise=Jsl;function Jsl(e){return!!e&&typeof e.then=="function"}});var q5r=H(ZR=>{"use strict";var uts=ZR&&ZR.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Usl=ZR&&ZR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gts=ZR&&ZR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(NNt,"__esModule",{value:!0});NNt.visitJson=zsl;NNt.visitJsonSchema=qsl;var KG=qb(),Wle=pPr();function Ats(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function $5r(e,t,r,n,a,o,l){if((n===!0||n===!1)&&(n=void 0),n&&n.hasOwnProperty("$ref")&&typeof n.$ref=="string"&&a){let f=a(n.$ref,o);n=f.schema,o=f.context}let A=t(e,r,n,l);return((0,KG.isObservable)(A)?A:(0,KG.of)(A)).pipe((0,KG.concatMap)(f=>Array.isArray(f)?(0,KG.concat)((0,KG.from)(f).pipe((0,KG.mergeMap)((I,C)=>$5r(I,t,(0,Wle.joinJsonPointer)(r,""+C),Ats(n,""+C),a,o,l||f).pipe((0,KG.tap)(b=>f[C]=b))),(0,KG.ignoreElements)()),(0,KG.of)(f)):typeof f=="object"&&f!==null?(0,KG.concat)((0,KG.from)(Object.getOwnPropertyNames(f)).pipe((0,KG.mergeMap)(I=>$5r(f[I],t,(0,Wle.joinJsonPointer)(r,I),Ats(n,I),a,o,l||f).pipe((0,KG.tap)(C=>{let b=Object.getOwnPropertyDescriptor(f,I);b&&b.writable&&f[I]!==C&&(f[I]=C)}))),(0,KG.ignoreElements)()),(0,KG.of)(f)):(0,KG.of)(f)))}function zsl(e,t,r,n,a){return $5r(e,t,(0,Wle.buildJsonPointer)([]),r,n,a)}function qsl(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},n={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(l,A,f,I,C){if(l&&typeof l=="object"&&!Array.isArray(l)){t(l,A,I,C);for(let b of Object.keys(l)){let E=l[b];if(b in a){if(E&&typeof E=="object")for(let N of Object.keys(E))o(E[N],(0,Wle.joinJsonPointer)(A,b,N),f,l,N)}else if(b in r)o(E,(0,Wle.joinJsonPointer)(A,b),f,l,b);else if(b in n){if(Array.isArray(E))for(let N=0;N{"use strict";var $sl=VV&&VV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eol=VV&&VV.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),sMr=VV&&VV.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=`Data path ${JSON.stringify(n.instancePath)} ${n.message}`;if(n.params)switch(n.keyword){case"additionalProperties":a+=`(${n.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${n.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};VV.SchemaValidationException=j5r;var z5r=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new K5r.PartiallyOrderedSet;_post=new K5r.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new U5r.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,lsl.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let n of this._uriHandlers){let a=n(t);if(a==null)continue;(0,dte.isObservable)(a)&&(a=(0,dte.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((n,a)=>{let o=new zes.URL(t);(o.protocol==="https:"?gsl:usl).get(o,A=>{if(!A.statusCode||A.statusCode>=300)A.resume(),a(new Error(`Request failed. Status Code: ${A.statusCode}`));else{A.setEncoding("utf8");let f="";A.on("data",I=>{f+=I}),A.on("end",()=>{try{let I=JSON.parse(f);this._uriCache.set(t,I),n(I)}catch(I){a(I)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let n=r.schemaEnv.root.schema,a=typeof n=="object"?n.$id:null,o=t;typeof a=="string"&&(o=zes.resolve(a,t),t.startsWith("#")&&(o=a+o));let l=this._ajv.getSchema(o);return{context:l?.schemaEnv.validate,schema:l?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),n=this;function a(l,A,f,I){if(l&&f&&I&&(0,dsl.isJsonObject)(l)&&Object.prototype.hasOwnProperty.call(l,"$ref")&&typeof l.$ref=="string"){let C=n._resolver(l.$ref,r);C.schema&&(f[I]=C.schema)}}let o=(0,K5r.deepCopy)(r.schema);return(0,wNt.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(n,a)=>r(n,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let n;try{this._currentCompilationSchemaInfo=r,n=this._ajv.compile(t)}catch(a){if(!(a instanceof U5r.default.MissingRefError))throw a;n=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let l={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},A={promptFieldsWithValue:new Set};if(l.applyPreTransforms)for(let f of this._pre.values())a=await(0,dte.lastValueFrom)((0,wNt.visitJson)(a,f,t,this._resolver.bind(this),n));if(await this._applySmartDefaults(a,r.smartDefaultRecord),l.withPrompts){let f=(C,b)=>(C!==void 0&&A.promptFieldsWithValue.add(b),C);typeof t=="object"&&await(0,dte.lastValueFrom)((0,wNt.visitJson)(a,f,t,this._resolver.bind(this),n));let I=r.promptDefinitions.filter(C=>!A.promptFieldsWithValue.has(C.id));I.length>0&&await this._applyPrompts(a,I)}try{let f=await n.call(A,a);if(!f)return{data:a,success:f,errors:n.errors??[]}}catch(f){if(f instanceof U5r.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(l.applyPostTransforms)for(let f of this._post.values())a=await(0,dte.lastValueFrom)((0,wNt.visitJson)(a,f,t,this._resolver.bind(this),n));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(l===void 0)return()=>!0;let A=this.normalizeDataPathArr(o);return l.smartDefaultRecord.set(JSON.stringify(A),n),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(!l)return()=>!0;let A="/"+this.normalizeDataPathArr(o).join("/"),f,I,C;typeof n=="string"?C=n:(C=n.message,f=n.type,I=n.items);let b=(0,psl.getTypesOfSchema)(a);f||(b.size===1&&b.has("boolean")?f="confirmation":Array.isArray(a.enum)||b.size===1&&b.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let E;if(f==="list"){E=n.multiselect===void 0?b.size===1&&b.has("array"):n.multiselect;let B=E?a.items&&a.items.enum:a.enum;if(!I&&Array.isArray(B)){I=[];for(let F of B)typeof F=="string"?I.push(F):typeof F=="object"||I.push({label:F.toString(),value:F})}}let N={id:A,type:f,message:C,raw:n,items:I,multiselect:E,propertyTypes:b,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(B){try{let F=await o.self.validate(a,B);if(F)return F;if(o.self.errors?.length)return o.self.errors[0].message}catch(F){let Q=F;if(Array.isArray(Q.errors)&&Q.errors.length)return Q.errors[0].message}return!1}};return l.promptDefinitions.push(N),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(A),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let n=this._promptProvider;if(!n)return;let a=await(0,dte.lastValueFrom)((0,dte.from)(n(r)));for(let o in a){let l=o.split("/").slice(1);e._set(t,l,a[o],null,void 0,!0)}}static _set(t,r,n,a=null,o,l){for(let A=0;A(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};VV.CoreSchemaRegistry=z5r});var ets=H(TNt=>{"use strict";Object.defineProperty(TNt,"__esModule",{value:!0});TNt.isJsonSchema=Isl;TNt.mergeSchemas=hsl;var fsl=$Ce();function Isl(e){return(0,fsl.isJsonObject)(e)||e===!1||e===!0}function hsl(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var rts=H(ID=>{"use strict";var tts=ID&&ID.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),msl=ID&&ID.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Csl=ID&&ID.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var nts=RO&&RO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ysl=RO&&RO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bsl=RO&&RO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(NNt,"__esModule",{value:!0});NNt.Logger=void 0;var $5r=qb(),eMr=class extends $5r.Observable{name;parent;_subject=new $5r.Subject;_metadata;_obs=$5r.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let n=[],a=r;for(;a;)n.push(a.name),a=a.parent;this._metadata={name:t,path:n},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,n)=>this.log(t,r,n),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,n={}){let a=Object.assign({},n,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,n){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};NNt.Logger=eMr});var its=H(DNt=>{"use strict";Object.defineProperty(DNt,"__esModule",{value:!0});DNt.IndentLogger=void 0;var vsl=qb(),Bsl=gxe(),tMr={},rMr=class extends Bsl.Logger{constructor(t,r=null,n=" "){super(t,r),tMr[n]=tMr[n]||[""];let a=tMr[n];this._observable=this._observable.pipe((0,vsl.map)(o=>{let l=o.path.filter(A=>!!A).length;if(l>=a.length){let A=a[a.length-1];for(;l>=a.length;)A+=n,a.push(A)}return o.message=a[l]+o.message.split(/\n/).join(` -`+a[l]),o}))}};DNt.IndentLogger=rMr});var sts=H(Axe=>{"use strict";Object.defineProperty(Axe,"__esModule",{value:!0});Axe.LevelCapLogger=Axe.LevelTransformLogger=void 0;var wsl=gxe(),kNt=class e extends wsl.Logger{name;parent;levelTransform;constructor(t,r=null,n){super(t,r),this.name=t,this.parent=r,this.levelTransform=n}log(t,r,n={}){return super.log(this.levelTransform(t),r,n)}createChild(t){return new e(t,this,this.levelTransform)}};Axe.LevelTransformLogger=kNt;var nMr=class e extends kNt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,n){super(t,r,a=>e.levelMap[n][a]||a),this.name=t,this.parent=r,this.levelCap=n}};Axe.LevelCapLogger=nMr});var ots=H(xNt=>{"use strict";Object.defineProperty(xNt,"__esModule",{value:!0});xNt.NullLogger=void 0;var Tsl=qb(),Rsl=gxe(),iMr=class e extends Rsl.Logger{constructor(t=null){super("",t),this._observable=Tsl.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};xNt.NullLogger=iMr});var ats=H(GNt=>{"use strict";Object.defineProperty(GNt,"__esModule",{value:!0});GNt.TransformLogger=void 0;var Nsl=gxe(),sMr=class extends Nsl.Logger{constructor(t,r,n=null){super(t,n),this._observable=r(this._observable)}};GNt.TransformLogger=sMr});var cts=H(G4=>{"use strict";var Dsl=G4&&G4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),q8e=G4&&G4.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Dsl(t,e,r)};Object.defineProperty(G4,"__esModule",{value:!0});q8e(its(),G4);q8e(sts(),G4);q8e(gxe(),G4);q8e(ots(),G4);q8e(ats(),G4)});var aMr=H(dxe=>{"use strict";Object.defineProperty(dxe,"__esModule",{value:!0});dxe.TargetDefinitionCollection=dxe.ProjectDefinitionCollection=void 0;var FNt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((n,a)=>t(n,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function lts(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!lts(r))return!1;return!0;default:return!1}}var oMr=class extends FNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new ZNt,extensions:{}};if(t.targets)for(let[n,a]of Object.entries(t.targets))a&&r.targets.set(n,a);for(let[n,a]of Object.entries(t))switch(n){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(lts(a))r.extensions[n]=a;else throw new TypeError(`"${n}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};dxe.ProjectDefinitionCollection=oMr;var ZNt=class extends FNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};dxe.TargetDefinitionCollection=ZNt});var pxe=H(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.path=FI.NormalizedRoot=FI.NormalizedSep=FI.PathCannotBeFragmentException=FI.PathMustBeAbsoluteException=FI.InvalidPathException=void 0;FI.split=cMr;FI.extname=ksl;FI.basename=uts;FI.dirname=xsl;FI.join=gts;FI.isAbsolute=PNt;FI.relative=Gsl;FI.resolve=Fsl;FI.fragment=WNt;FI.resetNormalizeCache=Zsl;FI.normalize=eje;FI.noCacheNormalize=Ats;FI.asWindowsPath=dts;FI.asPosixPath=Vsl;FI.getSystemPath=Psl;var uMr=gte(),LNt=class extends uMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};FI.InvalidPathException=LNt;var $8e=class extends uMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};FI.PathMustBeAbsoluteException=$8e;var VNt=class extends uMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};FI.PathCannotBeFragmentException=VNt;FI.NormalizedSep="/";FI.NormalizedRoot=FI.NormalizedSep;function cMr(e){let t=e.split(FI.NormalizedSep).map(r=>WNt(r));return t[t.length-1].length===0&&t.pop(),t}function ksl(e){let t=uts(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function uts(e){return e.lastIndexOf(FI.NormalizedSep)==-1?WNt(e):WNt(e.slice(e.lastIndexOf(FI.NormalizedSep)+1))}function xsl(e){let t=e.lastIndexOf(FI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return eje(e.slice(0,r))}function gts(e,...t){return t.length>0?eje((e?e+FI.NormalizedSep:"")+t.join(FI.NormalizedSep)):e}function PNt(e){return e.startsWith(FI.NormalizedSep)}function Gsl(e,t){if(!PNt(e))throw new $8e(e);if(!PNt(t))throw new $8e(t);let r;if(e==t)r="";else{let n=cMr(e),a=cMr(t);for(;n.length>0&&a.length>0&&n[0]==a[0];)n.shift(),a.shift();n.length==0?r=a.join(FI.NormalizedSep):r=n.map(()=>"..").concat(a).join(FI.NormalizedSep)}return eje(r)}function Fsl(e,t){return PNt(t)?t:gts(e,t)}function WNt(e){if(e.indexOf(FI.NormalizedSep)!=-1)throw new VNt(e);return e}var lMr=new Map;function Zsl(){lMr=new Map}function eje(e){let t=lMr.get(e);return t||(t=Ats(e),lMr.set(e,t)),t}function Ats(e){if(e==""||e==".")return"";if(e==FI.NormalizedRoot)return FI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),n=!1,a=1;for(r[0]!=""&&(r.unshift("."),n=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?FI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(FI.NormalizedSep))}var Lsl=(e,...t)=>eje(String.raw(e,...t));FI.path=Lsl;function dts(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function Vsl(e){return e}function Psl(e){return process.platform.startsWith("win32")?dts(e):e}});var gMr=H(ONt=>{"use strict";Object.defineProperty(ONt,"__esModule",{value:!0});ONt.stringToFileBuffer=Wsl;ONt.fileBufferToString=Osl;var pts=wt("node:util");function Wsl(e){return new pts.TextEncoder().encode(e).buffer}function Osl(e){return e.toString.length===1?e.toString("utf-8"):new pts.TextDecoder("utf-8").decode(new Uint8Array(e))}});var AMr=H(MNt=>{"use strict";Object.defineProperty(MNt,"__esModule",{value:!0});MNt.HostWatchEventType=void 0;var fts;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})(fts||(MNt.HostWatchEventType=fts={}))});var YNt=H(HNt=>{"use strict";Object.defineProperty(HNt,"__esModule",{value:!0});HNt.SimpleMemoryHost=void 0;var zj=qb(),pte=gte(),aw=pxe(),fxe=AMr(),dMr=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,aw.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,aw.isAbsolute)(t)?t:(0,aw.normalize)("/"+t)}_updateWatchers(t,r){let n=new Date,a=t,o=null;if(this._watchers.size==0)return;let l=this._watchers.get(a);l&&l.forEach(A=>{let[f,I]=A;I.next({path:t,time:n,type:r}),!f.persistent&&r==fxe.HostWatchEventType.Deleted&&(I.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,aw.dirname)(a);let A=this._watchers.get(a);A&&A.forEach(f=>{let[I,C]=f;I.recursive&&(C.next({path:t,time:n,type:r}),!I.persistent&&r==fxe.HostWatchEventType.Deleted&&(C.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let n=this._cache.get(t);if(n&&n.isDirectory())throw new pte.PathIsDirectoryException(t);let a=(0,aw.split)(t),o=(0,aw.normalize)("/");for(let A of a){o=(0,aw.join)(o,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new pte.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let l=this._newFileStats(r,n);this._cache.set(t,l),this._updateWatchers(t,n?fxe.HostWatchEventType.Changed:fxe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new pte.PathIsDirectoryException(t);if(r.content)return r.content;throw new pte.PathIsDirectoryException(t)}else throw new pte.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+aw.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,fxe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new pte.FileAlreadyExistException(r)}else throw new pte.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let n of this._cache.keys())if(n.startsWith(t+aw.NormalizedSep)){let a=this._cache.get(n);a&&this._cache.set((0,aw.join)(r,aw.NormalizedSep,n.slice(t.length)),a)}}else{let n=this._cache.get(t);if(n){let a=(0,aw.split)(r),o=[],l=(0,aw.normalize)("/");for(let A of a){l=(0,aw.join)(l,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new pte.PathIsFileException(l)}else o.push(l)}for(let A of o)this._cache.set(A,this._newDirStats());this._cache.delete(t),this._cache.set(r,n)}}this._updateWatchers(t,fxe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new pte.PathIsFileException(t);let r=(0,aw.split)(t),n=new Set;if(t!==aw.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+aw.NormalizedSep)&&n.add((0,aw.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(aw.NormalizedSep)&&a!==aw.NormalizedRoot&&n.add((0,aw.split)(a)[1]);return[...n]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let n=new zj.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},n]),n.asObservable()}write(t,r){return new zj.Observable(n=>{this._write(t,r),n.next(),n.complete()})}read(t){return new zj.Observable(r=>{let n=this._read(t);r.next(n),r.complete()})}delete(t){return new zj.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new zj.Observable(n=>{this._rename(t,r),n.next(),n.complete()})}list(t){return new zj.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new zj.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new zj.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new zj.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new zj.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};HNt.SimpleMemoryHost=dMr});var fMr=H(Ixe=>{"use strict";Object.defineProperty(Ixe,"__esModule",{value:!0});Ixe.SyncDelegateHost=Ixe.SynchronousDelegateExpectedException=void 0;var Msl=gte(),tje=class extends Msl.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};Ixe.SynchronousDelegateExpectedException=tje;var pMr=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new tje}_doSyncCall(t){let r=!1,n,a;if(t.subscribe(o=>n=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new tje;return n}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};Ixe.SyncDelegateHost=pMr});var Its=H(QNt=>{"use strict";Object.defineProperty(QNt,"__esModule",{value:!0});QNt.TestHost=void 0;var fte=pxe(),IMr=gMr(),Hsl=YNt(),Ysl=fMr(),hMr=class e extends Hsl.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,fte.normalize)(r),(0,IMr.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(n){return t.list(n).map(a=>(0,fte.join)(n,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,fte.normalize)("/"))}get sync(){return this._sync||(this._sync=new Ysl.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,fte.normalize)(t),(0,IMr.stringToFileBuffer)(r))}$read(t){return(0,IMr.fileBufferToString)(super._read((0,fte.normalize)(t)))}$list(t){return super._list((0,fte.normalize)(t))}$exists(t){return super._exists((0,fte.normalize)(t))}$isDirectory(t){return super._isDirectory((0,fte.normalize)(t))}$isFile(t){return super._isFile((0,fte.normalize)(t))}};QNt.TestHost=hMr});var rje=H(XNt=>{"use strict";Object.defineProperty(XNt,"__esModule",{value:!0});XNt.ResolverHost=void 0;var mMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};XNt.ResolverHost=mMr});var hts=H(UNt=>{"use strict";Object.defineProperty(UNt,"__esModule",{value:!0});UNt.AliasHost=void 0;var JNt=pxe(),Qsl=rje(),CMr=class extends Qsl.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),n=(0,JNt.split)(t),a=[];for(;!r&&n.length>0;){let o=(0,JNt.join)(JNt.NormalizedRoot,...n);r=this._aliases.get(o),r&&(r=(0,JNt.join)(r,...a)),a.unshift(n.pop())}return r||t}get aliases(){return this._aliases}};UNt.AliasHost=CMr});var mts=H(_Mr=>{"use strict";Object.defineProperty(_Mr,"__esModule",{value:!0});_Mr.createSyncHost=Jsl;var Xsl=qb();function Ite(e){return new Xsl.Observable(t=>{t.next(e()),t.complete()})}function Jsl(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return Ite(()=>e.read(t))}list(t){return Ite(()=>e.list(t))}exists(t){return Ite(()=>e.exists(t))}isDirectory(t){return Ite(()=>e.isDirectory(t))}isFile(t){return Ite(()=>e.isFile(t))}stat(t){return Ite(()=>e.stat(t))}write(t,r){return Ite(()=>e.write(t,r))}delete(t){return Ite(()=>e.delete(t))}rename(t,r){return Ite(()=>e.rename(t,r))}watch(){return null}}}});var Cts=H(KNt=>{"use strict";Object.defineProperty(KNt,"__esModule",{value:!0});KNt.Empty=void 0;var hxe=qb(),Usl=gte(),yMr=class{capabilities={synchronous:!0};read(t){return(0,hxe.throwError)(new Usl.FileDoesNotExistException(t))}list(t){return(0,hxe.of)([])}exists(t){return(0,hxe.of)(!1)}isDirectory(t){return(0,hxe.of)(!1)}isFile(t){return(0,hxe.of)(!1)}stat(t){return(0,hxe.of)(null)}};KNt.Empty=yMr});var nje=H((P7u,Sts)=>{"use strict";var qj="\\\\/",_ts=`[^${qj}]`,hte="\\.",Ksl="\\+",jsl="\\?",jNt="\\/",zsl="(?=.)",yts="[^/]",bMr=`(?:${jNt}|$)`,bts=`(?:^|${jNt})`,EMr=`${hte}{1,2}${bMr}`,qsl=`(?!${hte})`,$sl=`(?!${bts}${EMr})`,eol=`(?!${hte}{0,1}${bMr})`,tol=`(?!${EMr})`,rol=`[^.${jNt}]`,nol=`${yts}*?`,iol="/",Ets={DOT_LITERAL:hte,PLUS_LITERAL:Ksl,QMARK_LITERAL:jsl,SLASH_LITERAL:jNt,ONE_CHAR:zsl,QMARK:yts,END_ANCHOR:bMr,DOTS_SLASH:EMr,NO_DOT:qsl,NO_DOTS:$sl,NO_DOT_SLASH:eol,NO_DOTS_SLASH:tol,QMARK_NO_DOT:rol,STAR:nol,START_ANCHOR:bts,SEP:iol},sol={...Ets,SLASH_LITERAL:`[${qj}]`,QMARK:_ts,STAR:`${_ts}*?`,DOTS_SLASH:`${hte}{1,2}(?:[${qj}]|$)`,NO_DOT:`(?!${hte})`,NO_DOTS:`(?!(?:^|[${qj}])${hte}{1,2}(?:[${qj}]|$))`,NO_DOT_SLASH:`(?!${hte}{0,1}(?:[${qj}]|$))`,NO_DOTS_SLASH:`(?!${hte}{1,2}(?:[${qj}]|$))`,QMARK_NO_DOT:`[^.${qj}]`,START_ANCHOR:`(?:^|[${qj}])`,END_ANCHOR:`(?:[${qj}]|$)`,SEP:"\\"},ool={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Sts.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:ool,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?sol:Ets}}});var ije=H(PV=>{"use strict";var{REGEX_BACKSLASH:aol,REGEX_REMOVE_BACKSLASH:col,REGEX_SPECIAL_CHARS:lol,REGEX_SPECIAL_CHARS_GLOBAL:uol}=nje();PV.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);PV.hasRegexChars=e=>lol.test(e);PV.isRegexChar=e=>e.length===1&&PV.hasRegexChars(e);PV.escapeRegex=e=>e.replace(uol,"\\$1");PV.toPosixSlashes=e=>e.replace(aol,"/");PV.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};PV.removeBackslashes=e=>e.replace(col,t=>t==="\\"?"":t);PV.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?PV.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};PV.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};PV.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};PV.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),n=r[r.length-1];return n===""?r[r.length-2]:n}});var kts=H((O7u,Dts)=>{"use strict";var vts=ije(),{CHAR_ASTERISK:SMr,CHAR_AT:gol,CHAR_BACKWARD_SLASH:sje,CHAR_COMMA:Aol,CHAR_DOT:vMr,CHAR_EXCLAMATION_MARK:BMr,CHAR_FORWARD_SLASH:Nts,CHAR_LEFT_CURLY_BRACE:wMr,CHAR_LEFT_PARENTHESES:TMr,CHAR_LEFT_SQUARE_BRACKET:dol,CHAR_PLUS:pol,CHAR_QUESTION_MARK:Bts,CHAR_RIGHT_CURLY_BRACE:fol,CHAR_RIGHT_PARENTHESES:wts,CHAR_RIGHT_SQUARE_BRACKET:Iol}=nje(),Tts=e=>e===Nts||e===sje,Rts=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},hol=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,X=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),et=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Me=f.slice(0,C),f=f.slice(C),b-=C),ct&&B===!0&&b>0?(ct=f.slice(0,b),je=f.slice(b)):B===!0?(ct="",je=f):ct=f,ct&&ct!==""&&ct!=="/"&&ct!==f&&Tts(ct.charCodeAt(ct.length-1))&&(ct=ct.slice(0,-1)),r.unescape===!0&&(je&&(je=vts.removeBackslashes(je)),ct&&ae===!0&&(ct=vts.removeBackslashes(ct)));let St={prefix:Me,input:e,start:C,base:ct,glob:je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(St.maxDepth=0,Tts(be)||l.push(Se),St.tokens=l),r.parts===!0||r.tokens===!0){let At;for(let Yt=0;Yt{"use strict";var zNt=nje(),$j=ije(),{MAX_LENGTH:qNt,POSIX_REGEX_SOURCE:mol,REGEX_NON_SPECIAL_CHARS:Col,REGEX_SPECIAL_CHARS_BACKREF:_ol,REPLACEMENTS:xts}=zNt,yol=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>$j.escapeRegex(a)).join("..")}return r},mxe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,RMr=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=xts[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(qNt,r.maxLength):qNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=zNt.globChars(r.windows),I=zNt.extglobChars(f),{DOT_LITERAL:C,PLUS_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:N,DOTS_SLASH:B,NO_DOT:F,NO_DOT_SLASH:Q,NO_DOTS_SLASH:X,QMARK:ae,QMARK_NO_DOT:ne,STAR:ce,START_ANCHOR:fe}=f,ue=cr=>`(${A}(?:(?!${fe}${cr.dot?B:C}).)*?)`,de=r.dot?"":F,be=r.dot?ae:ne,Se=r.bash===!0?ue(r):ce;r.capture&&(Se=`(${Se})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let De={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=$j.removePrefix(e,De),a=e.length;let k=[],et=[],ct=[],Me=o,je,St=()=>De.index===a-1,At=De.peek=(cr=1)=>e[De.index+cr],Yt=De.advance=()=>e[++De.index]||"",Tr=()=>e.slice(De.index+1),Nr=(cr="",Ar=0)=>{De.consumed+=cr,De.index+=Ar},er=cr=>{De.output+=cr.output!=null?cr.output:cr.value,Nr(cr.value)},vt=()=>{let cr=1;for(;At()==="!"&&(At(2)!=="("||At(3)==="?");)Yt(),De.start++,cr++;return cr%2===0?!1:(De.negated=!0,De.start++,!0)},xt=cr=>{De[cr]++,ct.push(cr)},Zr=cr=>{De[cr]--,ct.pop()},qt=cr=>{if(Me.type==="globstar"){let Ar=De.braces>0&&(cr.type==="comma"||cr.type==="brace"),qr=cr.extglob===!0||k.length&&(cr.type==="pipe"||cr.type==="paren");cr.type!=="slash"&&cr.type!=="paren"&&!Ar&&!qr&&(De.output=De.output.slice(0,-Me.output.length),Me.type="star",Me.value="*",Me.output=Se,De.output+=Me.output)}if(k.length&&cr.type!=="paren"&&(k[k.length-1].inner+=cr.value),(cr.value||cr.output)&&er(cr),Me&&Me.type==="text"&&cr.type==="text"){Me.output=(Me.output||Me.value)+cr.value,Me.value+=cr.value;return}cr.prev=Me,l.push(cr),Me=cr},Xt=(cr,Ar)=>{let qr={...I[Ar],conditions:1,inner:""};qr.prev=Me,qr.parens=De.parens,qr.output=De.output;let _n=(r.capture?"(":"")+qr.open;xt("parens"),qt({type:cr,value:Ar,output:De.output?"":N}),qt({type:"paren",extglob:!0,value:Yt(),output:_n}),k.push(qr)},lr=cr=>{let Ar=cr.close+(r.capture?")":""),qr;if(cr.type==="negate"){let _n=Se;if(cr.inner&&cr.inner.length>1&&cr.inner.includes("/")&&(_n=ue(r)),(_n!==Se||St()||/^\)+$/.test(Tr()))&&(Ar=cr.close=`)$))${_n}`),cr.inner.includes("*")&&(qr=Tr())&&/^\.[^\\/.]+$/.test(qr)){let ke=RMr(qr,{...t,fastpaths:!1}).output;Ar=cr.close=`)${ke})${_n})`}cr.prev.type==="bos"&&(De.negatedExtglob=!0)}qt({type:"paren",extglob:!0,value:je,output:Ar}),Zr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let cr=!1,Ar=e.replace(_ol,(qr,_n,ke,jt,Fn,Nn)=>jt==="\\"?(cr=!0,qr):jt==="?"?_n?_n+jt+(Fn?ae.repeat(Fn.length):""):Nn===0?be+(Fn?ae.repeat(Fn.length):""):ae.repeat(ke.length):jt==="."?C.repeat(ke.length):jt==="*"?_n?_n+jt+(Fn?Se:""):Se:_n?qr:`\\${qr}`);return cr===!0&&(r.unescape===!0?Ar=Ar.replace(/\\/g,""):Ar=Ar.replace(/\\+/g,qr=>qr.length%2===0?"\\\\":qr?"\\":"")),Ar===e&&r.contains===!0?(De.output=e,De):(De.output=$j.wrapOutput(Ar,De,t),De)}for(;!St();){if(je=Yt(),je==="\0")continue;if(je==="\\"){let qr=At();if(qr==="/"&&r.bash!==!0||qr==="."||qr===";")continue;if(!qr){je+="\\",qt({type:"text",value:je});continue}let _n=/^\\+/.exec(Tr()),ke=0;if(_n&&_n[0].length>2&&(ke=_n[0].length,De.index+=ke,ke%2!==0&&(je+="\\")),r.unescape===!0?je=Yt():je+=Yt(),De.brackets===0){qt({type:"text",value:je});continue}}if(De.brackets>0&&(je!=="]"||Me.value==="["||Me.value==="[^")){if(r.posix!==!1&&je===":"){let qr=Me.value.slice(1);if(qr.includes("[")&&(Me.posix=!0,qr.includes(":"))){let _n=Me.value.lastIndexOf("["),ke=Me.value.slice(0,_n),jt=Me.value.slice(_n+2),Fn=mol[jt];if(Fn){Me.value=ke+Fn,De.backtrack=!0,Yt(),!o.output&&l.indexOf(Me)===1&&(o.output=N);continue}}}(je==="["&&At()!==":"||je==="-"&&At()==="]")&&(je=`\\${je}`),je==="]"&&(Me.value==="["||Me.value==="[^")&&(je=`\\${je}`),r.posix===!0&&je==="!"&&Me.value==="["&&(je="^"),Me.value+=je,er({value:je});continue}if(De.quotes===1&&je!=='"'){je=$j.escapeRegex(je),Me.value+=je,er({value:je});continue}if(je==='"'){De.quotes=De.quotes===1?0:1,r.keepQuotes===!0&&qt({type:"text",value:je});continue}if(je==="("){xt("parens"),qt({type:"paren",value:je});continue}if(je===")"){if(De.parens===0&&r.strictBrackets===!0)throw new SyntaxError(mxe("opening","("));let qr=k[k.length-1];if(qr&&De.parens===qr.parens+1){lr(k.pop());continue}qt({type:"paren",value:je,output:De.parens?")":"\\)"}),Zr("parens");continue}if(je==="["){if(r.nobracket===!0||!Tr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(mxe("closing","]"));je=`\\${je}`}else xt("brackets");qt({type:"bracket",value:je});continue}if(je==="]"){if(r.nobracket===!0||Me&&Me.type==="bracket"&&Me.value.length===1){qt({type:"text",value:je,output:`\\${je}`});continue}if(De.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(mxe("opening","["));qt({type:"text",value:je,output:`\\${je}`});continue}Zr("brackets");let qr=Me.value.slice(1);if(Me.posix!==!0&&qr[0]==="^"&&!qr.includes("/")&&(je=`/${je}`),Me.value+=je,er({value:je}),r.literalBrackets===!1||$j.hasRegexChars(qr))continue;let _n=$j.escapeRegex(Me.value);if(De.output=De.output.slice(0,-Me.value.length),r.literalBrackets===!0){De.output+=_n,Me.value=_n;continue}Me.value=`(${A}${_n}|${Me.value})`,De.output+=Me.value;continue}if(je==="{"&&r.nobrace!==!0){xt("braces");let qr={type:"brace",value:je,output:"(",outputIndex:De.output.length,tokensIndex:De.tokens.length};et.push(qr),qt(qr);continue}if(je==="}"){let qr=et[et.length-1];if(r.nobrace===!0||!qr){qt({type:"text",value:je,output:je});continue}let _n=")";if(qr.dots===!0){let ke=l.slice(),jt=[];for(let Fn=ke.length-1;Fn>=0&&(l.pop(),ke[Fn].type!=="brace");Fn--)ke[Fn].type!=="dots"&&jt.unshift(ke[Fn].value);_n=yol(jt,r),De.backtrack=!0}if(qr.comma!==!0&&qr.dots!==!0){let ke=De.output.slice(0,qr.outputIndex),jt=De.tokens.slice(qr.tokensIndex);qr.value=qr.output="\\{",je=_n="\\}",De.output=ke;for(let Fn of jt)De.output+=Fn.output||Fn.value}qt({type:"brace",value:je,output:_n}),Zr("braces"),et.pop();continue}if(je==="|"){k.length>0&&k[k.length-1].conditions++,qt({type:"text",value:je});continue}if(je===","){let qr=je,_n=et[et.length-1];_n&&ct[ct.length-1]==="braces"&&(_n.comma=!0,qr="|"),qt({type:"comma",value:je,output:qr});continue}if(je==="/"){if(Me.type==="dot"&&De.index===De.start+1){De.start=De.index+1,De.consumed="",De.output="",l.pop(),Me=o;continue}qt({type:"slash",value:je,output:E});continue}if(je==="."){if(De.braces>0&&Me.type==="dot"){Me.value==="."&&(Me.output=C);let qr=et[et.length-1];Me.type="dots",Me.output+=je,Me.value+=je,qr.dots=!0;continue}if(De.braces+De.parens===0&&Me.type!=="bos"&&Me.type!=="slash"){qt({type:"text",value:je,output:C});continue}qt({type:"dot",value:je,output:C});continue}if(je==="?"){if(!(Me&&Me.value==="(")&&r.noextglob!==!0&&At()==="("&&At(2)!=="?"){Xt("qmark",je);continue}if(Me&&Me.type==="paren"){let _n=At(),ke=je;(Me.value==="("&&!/[!=<:]/.test(_n)||_n==="<"&&!/<([!=]|\w+>)/.test(Tr()))&&(ke=`\\${je}`),qt({type:"text",value:je,output:ke});continue}if(r.dot!==!0&&(Me.type==="slash"||Me.type==="bos")){qt({type:"qmark",value:je,output:ne});continue}qt({type:"qmark",value:je,output:ae});continue}if(je==="!"){if(r.noextglob!==!0&&At()==="("&&(At(2)!=="?"||!/[!=<:]/.test(At(3)))){Xt("negate",je);continue}if(r.nonegate!==!0&&De.index===0){vt();continue}}if(je==="+"){if(r.noextglob!==!0&&At()==="("&&At(2)!=="?"){Xt("plus",je);continue}if(Me&&Me.value==="("||r.regex===!1){qt({type:"plus",value:je,output:b});continue}if(Me&&(Me.type==="bracket"||Me.type==="paren"||Me.type==="brace")||De.parens>0){qt({type:"plus",value:je});continue}qt({type:"plus",value:b});continue}if(je==="@"){if(r.noextglob!==!0&&At()==="("&&At(2)!=="?"){qt({type:"at",extglob:!0,value:je,output:""});continue}qt({type:"text",value:je});continue}if(je!=="*"){(je==="$"||je==="^")&&(je=`\\${je}`);let qr=Col.exec(Tr());qr&&(je+=qr[0],De.index+=qr[0].length),qt({type:"text",value:je});continue}if(Me&&(Me.type==="globstar"||Me.star===!0)){Me.type="star",Me.star=!0,Me.value+=je,Me.output=Se,De.backtrack=!0,De.globstar=!0,Nr(je);continue}let cr=Tr();if(r.noextglob!==!0&&/^\([^?]/.test(cr)){Xt("star",je);continue}if(Me.type==="star"){if(r.noglobstar===!0){Nr(je);continue}let qr=Me.prev,_n=qr.prev,ke=qr.type==="slash"||qr.type==="bos",jt=_n&&(_n.type==="star"||_n.type==="globstar");if(r.bash===!0&&(!ke||cr[0]&&cr[0]!=="/")){qt({type:"star",value:je,output:""});continue}let Fn=De.braces>0&&(qr.type==="comma"||qr.type==="brace"),Nn=k.length&&(qr.type==="pipe"||qr.type==="paren");if(!ke&&qr.type!=="paren"&&!Fn&&!Nn){qt({type:"star",value:je,output:""});continue}for(;cr.slice(0,3)==="/**";){let Hi=e[De.index+4];if(Hi&&Hi!=="/")break;cr=cr.slice(3),Nr("/**",3)}if(qr.type==="bos"&&St()){Me.type="globstar",Me.value+=je,Me.output=ue(r),De.output=Me.output,De.globstar=!0,Nr(je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&!jt&&St()){De.output=De.output.slice(0,-(qr.output+Me.output).length),qr.output=`(?:${qr.output}`,Me.type="globstar",Me.output=ue(r)+(r.strictSlashes?")":"|$)"),Me.value+=je,De.globstar=!0,De.output+=qr.output+Me.output,Nr(je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&cr[0]==="/"){let Hi=cr[1]!==void 0?"|$":"";De.output=De.output.slice(0,-(qr.output+Me.output).length),qr.output=`(?:${qr.output}`,Me.type="globstar",Me.output=`${ue(r)}${E}|${E}${Hi})`,Me.value+=je,De.output+=qr.output+Me.output,De.globstar=!0,Nr(je+Yt()),qt({type:"slash",value:"/",output:""});continue}if(qr.type==="bos"&&cr[0]==="/"){Me.type="globstar",Me.value+=je,Me.output=`(?:^|${E}|${ue(r)}${E})`,De.output=Me.output,De.globstar=!0,Nr(je+Yt()),qt({type:"slash",value:"/",output:""});continue}De.output=De.output.slice(0,-Me.output.length),Me.type="globstar",Me.output=ue(r),Me.value+=je,De.output+=Me.output,De.globstar=!0,Nr(je);continue}let Ar={type:"star",value:je,output:Se};if(r.bash===!0){Ar.output=".*?",(Me.type==="bos"||Me.type==="slash")&&(Ar.output=de+Ar.output),qt(Ar);continue}if(Me&&(Me.type==="bracket"||Me.type==="paren")&&r.regex===!0){Ar.output=je,qt(Ar);continue}(De.index===De.start||Me.type==="slash"||Me.type==="dot")&&(Me.type==="dot"?(De.output+=Q,Me.output+=Q):r.dot===!0?(De.output+=X,Me.output+=X):(De.output+=de,Me.output+=de),At()!=="*"&&(De.output+=N,Me.output+=N)),qt(Ar)}for(;De.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(mxe("closing","]"));De.output=$j.escapeLast(De.output,"["),Zr("brackets")}for(;De.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(mxe("closing",")"));De.output=$j.escapeLast(De.output,"("),Zr("parens")}for(;De.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(mxe("closing","}"));De.output=$j.escapeLast(De.output,"{"),Zr("braces")}if(r.strictSlashes!==!0&&(Me.type==="star"||Me.type==="bracket")&&qt({type:"maybe_slash",value:"",output:`${E}?`}),De.backtrack===!0){De.output="";for(let cr of De.tokens)De.output+=cr.output!=null?cr.output:cr.value,cr.suffix&&(De.output+=cr.suffix)}return De};RMr.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(qNt,r.maxLength):qNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=xts[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:l,ONE_CHAR:A,DOTS_SLASH:f,NO_DOT:I,NO_DOTS:C,NO_DOTS_SLASH:b,STAR:E,START_ANCHOR:N}=zNt.globChars(r.windows),B=r.dot?C:I,F=r.dot?b:I,Q=r.capture?"":"?:",X={negated:!1,prefix:""},ae=r.bash===!0?".*?":E;r.capture&&(ae=`(${ae})`);let ne=de=>de.noglobstar===!0?ae:`(${Q}(?:(?!${N}${de.dot?f:o}).)*?)`,ce=de=>{switch(de){case"*":return`${B}${A}${ae}`;case".*":return`${o}${A}${ae}`;case"*.*":return`${B}${ae}${o}${A}${ae}`;case"*/*":return`${B}${ae}${l}${A}${F}${ae}`;case"**":return B+ne(r);case"**/*":return`(?:${B}${ne(r)}${l})?${F}${A}${ae}`;case"**/*.*":return`(?:${B}${ne(r)}${l})?${F}${ae}${o}${A}${ae}`;case"**/.*":return`(?:${B}${ne(r)}${l})?${o}${A}${ae}`;default:{let be=/^(.*?)\.(\w+)$/.exec(de);if(!be)return;let Se=ce(be[1]);return Se?Se+o+be[2]:void 0}}},fe=$j.removePrefix(e,X),ue=ce(fe);return ue&&r.strictSlashes!==!0&&(ue+=`${l}?`),ue};Gts.exports=RMr});var Vts=H((H7u,Lts)=>{"use strict";var bol=kts(),NMr=Fts(),Zts=ije(),Eol=nje(),Sol=e=>e&&typeof e=="object"&&!Array.isArray(e),cw=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>cw(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=Sol(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,l=n?cw.compileRe(e,t):cw.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=cw(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=cw.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};cw.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?Zts.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=cw.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};cw.matchBase=(e,t,r)=>(t instanceof RegExp?t:cw.makeRe(t,r)).test(Zts.basename(e));cw.isMatch=(e,t,r)=>cw(t,r)(e);cw.parse=(e,t)=>Array.isArray(e)?e.map(r=>cw.parse(r,t)):NMr(e,{...t,fastpaths:!1});cw.scan=(e,t)=>bol(e,t);cw.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=cw.toRegex(A,t);return n===!0&&(f.state=e),f};cw.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=NMr.fastpaths(e,t)),a.output||(a=NMr(e,t)),cw.compileRe(a,t,r,n)};cw.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};cw.constants=Eol;Lts.exports=cw});var Mts=H((Y7u,Ots)=>{"use strict";var Pts=Vts(),vol=ije();function Wts(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:vol.isWindows()}),Pts(e,t,r)}Object.assign(Wts,Pts);Ots.exports=Wts});var Hts=H($Nt=>{"use strict";Object.defineProperty($Nt,"__esModule",{value:!0});$Nt.PatternMatchingHost=void 0;var Bol=Mts(),wol=rje(),DMr=class extends wol.ResolverHost{_patterns=new Map;addPattern(t,r){let n=Array.isArray(t)?t:[t];for(let a of n){let{output:o}=(0,Bol.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((n,a)=>{a.test(t)&&(r=n(r))}),r}};$Nt.PatternMatchingHost=DMr});var Yts=H(eDt=>{"use strict";Object.defineProperty(eDt,"__esModule",{value:!0});eDt.CordHost=void 0;var w_=qb(),mte=gte(),Tol=YNt(),kMr=class e extends Tol.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,w_.from)(this.records()).pipe((0,w_.concatMap)(n=>{switch(n.kind){case"delete":return t.delete(n.path);case"rename":return t.rename(n.from,n.to);case"create":return t.exists(n.path).pipe((0,w_.switchMap)(a=>a&&!r?(0,w_.throwError)(new mte.FileAlreadyExistException(n.path)):t.write(n.path,n.content)));case"overwrite":return t.exists(n.path).pipe((0,w_.switchMap)(a=>!a&&!r?(0,w_.throwError)(new mte.FileDoesNotExistException(n.path)):t.write(n.path,n.content)))}}),(0,w_.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new mte.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,w_.switchMap)(n=>n?(0,w_.throwError)(new mte.PathIsDirectoryException(t)):this.exists(t)),(0,w_.switchMap)(n=>n?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,w_.throwError)(new mte.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,w_.switchMap)(n=>n?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,w_.throwError)(new mte.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,w_.switchMap)(r=>r?(this._filesToDelete.add(t),(0,w_.of)()):(0,w_.throwError)(new mte.FileDoesNotExistException(t))))}rename(t,r){return(0,w_.concat)(this.exists(r),this.exists(t)).pipe((0,w_.toArray)(),(0,w_.switchMap)(([n,a])=>{if(!a)return(0,w_.throwError)(new mte.FileDoesNotExistException(t));if(t===r)return w_.EMPTY;if(n)return(0,w_.throwError)(new mte.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,w_.concat)(this.rename(t,r),new w_.Observable(l=>{this._filesToOverwrite.add(r),l.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,w_.map)(l=>this._write(r,l)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,w_.switchMap)(l=>super.write(r,l)))}))}list(t){return(0,w_.concat)(super.list(t),this._back.list(t)).pipe((0,w_.reduce)((r,n)=>(n.forEach(a=>r.add(a)),r),new Set),(0,w_.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,w_.of)(!0):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};eDt.CordHost=kMr});var Qts=H(tDt=>{"use strict";Object.defineProperty(tDt,"__esModule",{value:!0});tDt.SafeReadonlyHost=void 0;var Wle=qb(),xMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,Wle.catchError)(()=>(0,Wle.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,Wle.catchError)(()=>(0,Wle.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,Wle.catchError)(()=>(0,Wle.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,Wle.catchError)(()=>(0,Wle.of)(null)))}};tDt.SafeReadonlyHost=xMr});var Jts=H(rDt=>{"use strict";Object.defineProperty(rDt,"__esModule",{value:!0});rDt.ScopedHost=void 0;var Xts=pxe(),Rol=rje(),GMr=class extends Rol.ResolverHost{_root;constructor(t,r=Xts.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,Xts.join)(this._root,t)}};rDt.ScopedHost=GMr});var Kts=H(F2=>{"use strict";var Uts=F2&&F2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Nol=F2&&F2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Dol=F2&&F2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var jts=NO&&NO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xol=NO&&NO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Gol=NO&&NO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(FMr,"__esModule",{value:!0});FMr.createWorkspaceHost=Lol;var iDt=qb(),Cxe=nDt();function Lol(e){return{async readFile(r){let n=await(0,iDt.lastValueFrom)(e.read((0,Cxe.normalize)(r)));return Cxe.virtualFs.fileBufferToString(n)},async writeFile(r,n){return(0,iDt.lastValueFrom)(e.write((0,Cxe.normalize)(r),Cxe.virtualFs.stringToFileBuffer(n)))},async isDirectory(r){try{return await(0,iDt.lastValueFrom)(e.isDirectory((0,Cxe.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,iDt.lastValueFrom)(e.isFile((0,Cxe.normalize)(r)))}catch{return!1}}}}});var oDt=H((qts,sDt)=>{(function(e){if(typeof sDt=="object"&&typeof sDt.exports=="object"){var t=e(wt,qts);t!==void 0&&(sDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(A,f=!1){let I=A.length,C=0,b="",E=0,N=16,B=0,F=0,Q=0,X=0,ae=0;function ne(De,k){let et=0,ct=0;for(;et=48&&Me<=57)ct=ct*16+Me-48;else if(Me>=65&&Me<=70)ct=ct*16+Me-65+10;else if(Me>=97&&Me<=102)ct=ct*16+Me-97+10;else break;C++,et++}return et=I){De+=A.substring(k,C),ae=2;break}let et=A.charCodeAt(C);if(et===34){De+=A.substring(k,C),C++;break}if(et===92){if(De+=A.substring(k,C),C++,C>=I){ae=2;break}switch(A.charCodeAt(C++)){case 34:De+='"';break;case 92:De+="\\";break;case 47:De+="/";break;case 98:De+="\b";break;case 102:De+="\f";break;case 110:De+=` + `)}`),this.errors=t}static createMessages(t){return!t||t.length===0?[]:t.map(n=>{let a=`Data path ${JSON.stringify(n.instancePath)} ${n.message}`;if(n.params)switch(n.keyword){case"additionalProperties":a+=`(${n.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${n.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};VV.SchemaValidationException=nMr;var iMr=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new rMr.PartiallyOrderedSet;_post=new rMr.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new tMr.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,tol.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let n of this._uriHandlers){let a=n(t);if(a==null)continue;(0,pte.isObservable)(a)&&(a=(0,pte.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((n,a)=>{let o=new dts.URL(t);(o.protocol==="https:"?nol:rol).get(o,A=>{if(!A.statusCode||A.statusCode>=300)A.resume(),a(new Error(`Request failed. Status Code: ${A.statusCode}`));else{A.setEncoding("utf8");let f="";A.on("data",I=>{f+=I}),A.on("end",()=>{try{let I=JSON.parse(f);this._uriCache.set(t,I),n(I)}catch(I){a(I)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let n=r.schemaEnv.root.schema,a=typeof n=="object"?n.$id:null,o=t;typeof a=="string"&&(o=dts.resolve(a,t),t.startsWith("#")&&(o=a+o));let l=this._ajv.getSchema(o);return{context:l?.schemaEnv.validate,schema:l?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),n=this;function a(l,A,f,I){if(l&&f&&I&&(0,sol.isJsonObject)(l)&&Object.prototype.hasOwnProperty.call(l,"$ref")&&typeof l.$ref=="string"){let C=n._resolver(l.$ref,r);C.schema&&(f[I]=C.schema)}}let o=(0,rMr.deepCopy)(r.schema);return(0,DNt.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(n,a)=>r(n,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let n;try{this._currentCompilationSchemaInfo=r,n=this._ajv.compile(t)}catch(a){if(!(a instanceof tMr.default.MissingRefError))throw a;n=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let l={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},A={promptFieldsWithValue:new Set};if(l.applyPreTransforms)for(let f of this._pre.values())a=await(0,pte.lastValueFrom)((0,DNt.visitJson)(a,f,t,this._resolver.bind(this),n));if(await this._applySmartDefaults(a,r.smartDefaultRecord),l.withPrompts){let f=(C,b)=>(C!==void 0&&A.promptFieldsWithValue.add(b),C);typeof t=="object"&&await(0,pte.lastValueFrom)((0,DNt.visitJson)(a,f,t,this._resolver.bind(this),n));let I=r.promptDefinitions.filter(C=>!A.promptFieldsWithValue.has(C.id));I.length>0&&await this._applyPrompts(a,I)}try{let f=await n.call(A,a);if(!f)return{data:a,success:f,errors:n.errors??[]}}catch(f){if(f instanceof tMr.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(l.applyPostTransforms)for(let f of this._post.values())a=await(0,pte.lastValueFrom)((0,DNt.visitJson)(a,f,t,this._resolver.bind(this),n));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(l===void 0)return()=>!0;let A=this.normalizeDataPathArr(o);return l.smartDefaultRecord.set(JSON.stringify(A),n),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(!l)return()=>!0;let A="/"+this.normalizeDataPathArr(o).join("/"),f,I,C;typeof n=="string"?C=n:(C=n.message,f=n.type,I=n.items);let b=(0,ool.getTypesOfSchema)(a);f||(b.size===1&&b.has("boolean")?f="confirmation":Array.isArray(a.enum)||b.size===1&&b.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let E;if(f==="list"){E=n.multiselect===void 0?b.size===1&&b.has("array"):n.multiselect;let B=E?a.items&&a.items.enum:a.enum;if(!I&&Array.isArray(B)){I=[];for(let F of B)typeof F=="string"?I.push(F):typeof F=="object"||I.push({label:F.toString(),value:F})}}let N={id:A,type:f,message:C,raw:n,items:I,multiselect:E,propertyTypes:b,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(B){try{let F=await o.self.validate(a,B);if(F)return F;if(o.self.errors?.length)return o.self.errors[0].message}catch(F){let Q=F;if(Array.isArray(Q.errors)&&Q.errors.length)return Q.errors[0].message}return!1}};return l.promptDefinitions.push(N),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(A),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let n=this._promptProvider;if(!n)return;let a=await(0,pte.lastValueFrom)((0,pte.from)(n(r)));for(let o in a){let l=o.split("/").slice(1);e._set(t,l,a[o],null,void 0,!0)}}static _set(t,r,n,a=null,o,l){for(let A=0;A(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};VV.CoreSchemaRegistry=iMr});var Its=H(kNt=>{"use strict";Object.defineProperty(kNt,"__esModule",{value:!0});kNt.isJsonSchema=col;kNt.mergeSchemas=lol;var aol=e_e();function col(e){return(0,aol.isJsonObject)(e)||e===!1||e===!0}function lol(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var mts=H(ID=>{"use strict";var hts=ID&&ID.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uol=ID&&ID.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gol=ID&&ID.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var Cts=RO&&RO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dol=RO&&RO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pol=RO&&RO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(GNt,"__esModule",{value:!0});GNt.Logger=void 0;var oMr=qb(),aMr=class extends oMr.Observable{name;parent;_subject=new oMr.Subject;_metadata;_obs=oMr.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let n=[],a=r;for(;a;)n.push(a.name),a=a.parent;this._metadata={name:t,path:n},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,n)=>this.log(t,r,n),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,n={}){let a=Object.assign({},n,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,n){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};GNt.Logger=aMr});var _ts=H(FNt=>{"use strict";Object.defineProperty(FNt,"__esModule",{value:!0});FNt.IndentLogger=void 0;var hol=qb(),mol=dxe(),cMr={},lMr=class extends mol.Logger{constructor(t,r=null,n=" "){super(t,r),cMr[n]=cMr[n]||[""];let a=cMr[n];this._observable=this._observable.pipe((0,hol.map)(o=>{let l=o.path.filter(A=>!!A).length;if(l>=a.length){let A=a[a.length-1];for(;l>=a.length;)A+=n,a.push(A)}return o.message=a[l]+o.message.split(/\n/).join(` +`+a[l]),o}))}};FNt.IndentLogger=lMr});var yts=H(pxe=>{"use strict";Object.defineProperty(pxe,"__esModule",{value:!0});pxe.LevelCapLogger=pxe.LevelTransformLogger=void 0;var Col=dxe(),ZNt=class e extends Col.Logger{name;parent;levelTransform;constructor(t,r=null,n){super(t,r),this.name=t,this.parent=r,this.levelTransform=n}log(t,r,n={}){return super.log(this.levelTransform(t),r,n)}createChild(t){return new e(t,this,this.levelTransform)}};pxe.LevelTransformLogger=ZNt;var uMr=class e extends ZNt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,n){super(t,r,a=>e.levelMap[n][a]||a),this.name=t,this.parent=r,this.levelCap=n}};pxe.LevelCapLogger=uMr});var bts=H(LNt=>{"use strict";Object.defineProperty(LNt,"__esModule",{value:!0});LNt.NullLogger=void 0;var _ol=qb(),yol=dxe(),gMr=class e extends yol.Logger{constructor(t=null){super("",t),this._observable=_ol.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};LNt.NullLogger=gMr});var Ets=H(VNt=>{"use strict";Object.defineProperty(VNt,"__esModule",{value:!0});VNt.TransformLogger=void 0;var bol=dxe(),AMr=class extends bol.Logger{constructor(t,r,n=null){super(t,n),this._observable=r(this._observable)}};VNt.TransformLogger=AMr});var Sts=H(G4=>{"use strict";var Eol=G4&&G4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eje=G4&&G4.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Eol(t,e,r)};Object.defineProperty(G4,"__esModule",{value:!0});eje(_ts(),G4);eje(yts(),G4);eje(dxe(),G4);eje(bts(),G4);eje(Ets(),G4)});var pMr=H(fxe=>{"use strict";Object.defineProperty(fxe,"__esModule",{value:!0});fxe.TargetDefinitionCollection=fxe.ProjectDefinitionCollection=void 0;var PNt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((n,a)=>t(n,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function vts(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!vts(r))return!1;return!0;default:return!1}}var dMr=class extends PNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new WNt,extensions:{}};if(t.targets)for(let[n,a]of Object.entries(t.targets))a&&r.targets.set(n,a);for(let[n,a]of Object.entries(t))switch(n){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(vts(a))r.extensions[n]=a;else throw new TypeError(`"${n}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};fxe.ProjectDefinitionCollection=dMr;var WNt=class extends PNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};fxe.TargetDefinitionCollection=WNt});var Ixe=H(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.path=FI.NormalizedRoot=FI.NormalizedSep=FI.PathCannotBeFragmentException=FI.PathMustBeAbsoluteException=FI.InvalidPathException=void 0;FI.split=fMr;FI.extname=Sol;FI.basename=Bts;FI.dirname=vol;FI.join=wts;FI.isAbsolute=HNt;FI.relative=Bol;FI.resolve=wol;FI.fragment=YNt;FI.resetNormalizeCache=Tol;FI.normalize=rje;FI.noCacheNormalize=Tts;FI.asWindowsPath=Rts;FI.asPosixPath=Nol;FI.getSystemPath=Dol;var hMr=Ate(),ONt=class extends hMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};FI.InvalidPathException=ONt;var tje=class extends hMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};FI.PathMustBeAbsoluteException=tje;var MNt=class extends hMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};FI.PathCannotBeFragmentException=MNt;FI.NormalizedSep="/";FI.NormalizedRoot=FI.NormalizedSep;function fMr(e){let t=e.split(FI.NormalizedSep).map(r=>YNt(r));return t[t.length-1].length===0&&t.pop(),t}function Sol(e){let t=Bts(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function Bts(e){return e.lastIndexOf(FI.NormalizedSep)==-1?YNt(e):YNt(e.slice(e.lastIndexOf(FI.NormalizedSep)+1))}function vol(e){let t=e.lastIndexOf(FI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return rje(e.slice(0,r))}function wts(e,...t){return t.length>0?rje((e?e+FI.NormalizedSep:"")+t.join(FI.NormalizedSep)):e}function HNt(e){return e.startsWith(FI.NormalizedSep)}function Bol(e,t){if(!HNt(e))throw new tje(e);if(!HNt(t))throw new tje(t);let r;if(e==t)r="";else{let n=fMr(e),a=fMr(t);for(;n.length>0&&a.length>0&&n[0]==a[0];)n.shift(),a.shift();n.length==0?r=a.join(FI.NormalizedSep):r=n.map(()=>"..").concat(a).join(FI.NormalizedSep)}return rje(r)}function wol(e,t){return HNt(t)?t:wts(e,t)}function YNt(e){if(e.indexOf(FI.NormalizedSep)!=-1)throw new MNt(e);return e}var IMr=new Map;function Tol(){IMr=new Map}function rje(e){let t=IMr.get(e);return t||(t=Tts(e),IMr.set(e,t)),t}function Tts(e){if(e==""||e==".")return"";if(e==FI.NormalizedRoot)return FI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),n=!1,a=1;for(r[0]!=""&&(r.unshift("."),n=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?FI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(FI.NormalizedSep))}var Rol=(e,...t)=>rje(String.raw(e,...t));FI.path=Rol;function Rts(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function Nol(e){return e}function Dol(e){return process.platform.startsWith("win32")?Rts(e):e}});var mMr=H(QNt=>{"use strict";Object.defineProperty(QNt,"__esModule",{value:!0});QNt.stringToFileBuffer=kol;QNt.fileBufferToString=xol;var Nts=wt("node:util");function kol(e){return new Nts.TextEncoder().encode(e).buffer}function xol(e){return e.toString.length===1?e.toString("utf-8"):new Nts.TextDecoder("utf-8").decode(new Uint8Array(e))}});var CMr=H(XNt=>{"use strict";Object.defineProperty(XNt,"__esModule",{value:!0});XNt.HostWatchEventType=void 0;var Dts;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})(Dts||(XNt.HostWatchEventType=Dts={}))});var UNt=H(JNt=>{"use strict";Object.defineProperty(JNt,"__esModule",{value:!0});JNt.SimpleMemoryHost=void 0;var zj=qb(),fte=Ate(),aw=Ixe(),hxe=CMr(),_Mr=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,aw.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,aw.isAbsolute)(t)?t:(0,aw.normalize)("/"+t)}_updateWatchers(t,r){let n=new Date,a=t,o=null;if(this._watchers.size==0)return;let l=this._watchers.get(a);l&&l.forEach(A=>{let[f,I]=A;I.next({path:t,time:n,type:r}),!f.persistent&&r==hxe.HostWatchEventType.Deleted&&(I.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,aw.dirname)(a);let A=this._watchers.get(a);A&&A.forEach(f=>{let[I,C]=f;I.recursive&&(C.next({path:t,time:n,type:r}),!I.persistent&&r==hxe.HostWatchEventType.Deleted&&(C.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let n=this._cache.get(t);if(n&&n.isDirectory())throw new fte.PathIsDirectoryException(t);let a=(0,aw.split)(t),o=(0,aw.normalize)("/");for(let A of a){o=(0,aw.join)(o,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new fte.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let l=this._newFileStats(r,n);this._cache.set(t,l),this._updateWatchers(t,n?hxe.HostWatchEventType.Changed:hxe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new fte.PathIsDirectoryException(t);if(r.content)return r.content;throw new fte.PathIsDirectoryException(t)}else throw new fte.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+aw.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,hxe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new fte.FileAlreadyExistException(r)}else throw new fte.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let n of this._cache.keys())if(n.startsWith(t+aw.NormalizedSep)){let a=this._cache.get(n);a&&this._cache.set((0,aw.join)(r,aw.NormalizedSep,n.slice(t.length)),a)}}else{let n=this._cache.get(t);if(n){let a=(0,aw.split)(r),o=[],l=(0,aw.normalize)("/");for(let A of a){l=(0,aw.join)(l,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new fte.PathIsFileException(l)}else o.push(l)}for(let A of o)this._cache.set(A,this._newDirStats());this._cache.delete(t),this._cache.set(r,n)}}this._updateWatchers(t,hxe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new fte.PathIsFileException(t);let r=(0,aw.split)(t),n=new Set;if(t!==aw.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+aw.NormalizedSep)&&n.add((0,aw.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(aw.NormalizedSep)&&a!==aw.NormalizedRoot&&n.add((0,aw.split)(a)[1]);return[...n]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let n=new zj.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},n]),n.asObservable()}write(t,r){return new zj.Observable(n=>{this._write(t,r),n.next(),n.complete()})}read(t){return new zj.Observable(r=>{let n=this._read(t);r.next(n),r.complete()})}delete(t){return new zj.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new zj.Observable(n=>{this._rename(t,r),n.next(),n.complete()})}list(t){return new zj.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new zj.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new zj.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new zj.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new zj.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};JNt.SimpleMemoryHost=_Mr});var bMr=H(mxe=>{"use strict";Object.defineProperty(mxe,"__esModule",{value:!0});mxe.SyncDelegateHost=mxe.SynchronousDelegateExpectedException=void 0;var Gol=Ate(),nje=class extends Gol.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};mxe.SynchronousDelegateExpectedException=nje;var yMr=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new nje}_doSyncCall(t){let r=!1,n,a;if(t.subscribe(o=>n=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new nje;return n}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};mxe.SyncDelegateHost=yMr});var kts=H(KNt=>{"use strict";Object.defineProperty(KNt,"__esModule",{value:!0});KNt.TestHost=void 0;var Ite=Ixe(),EMr=mMr(),Fol=UNt(),Zol=bMr(),SMr=class e extends Fol.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,Ite.normalize)(r),(0,EMr.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(n){return t.list(n).map(a=>(0,Ite.join)(n,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,Ite.normalize)("/"))}get sync(){return this._sync||(this._sync=new Zol.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,Ite.normalize)(t),(0,EMr.stringToFileBuffer)(r))}$read(t){return(0,EMr.fileBufferToString)(super._read((0,Ite.normalize)(t)))}$list(t){return super._list((0,Ite.normalize)(t))}$exists(t){return super._exists((0,Ite.normalize)(t))}$isDirectory(t){return super._isDirectory((0,Ite.normalize)(t))}$isFile(t){return super._isFile((0,Ite.normalize)(t))}};KNt.TestHost=SMr});var ije=H(jNt=>{"use strict";Object.defineProperty(jNt,"__esModule",{value:!0});jNt.ResolverHost=void 0;var vMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};jNt.ResolverHost=vMr});var xts=H(qNt=>{"use strict";Object.defineProperty(qNt,"__esModule",{value:!0});qNt.AliasHost=void 0;var zNt=Ixe(),Lol=ije(),BMr=class extends Lol.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),n=(0,zNt.split)(t),a=[];for(;!r&&n.length>0;){let o=(0,zNt.join)(zNt.NormalizedRoot,...n);r=this._aliases.get(o),r&&(r=(0,zNt.join)(r,...a)),a.unshift(n.pop())}return r||t}get aliases(){return this._aliases}};qNt.AliasHost=BMr});var Gts=H(wMr=>{"use strict";Object.defineProperty(wMr,"__esModule",{value:!0});wMr.createSyncHost=Pol;var Vol=qb();function hte(e){return new Vol.Observable(t=>{t.next(e()),t.complete()})}function Pol(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return hte(()=>e.read(t))}list(t){return hte(()=>e.list(t))}exists(t){return hte(()=>e.exists(t))}isDirectory(t){return hte(()=>e.isDirectory(t))}isFile(t){return hte(()=>e.isFile(t))}stat(t){return hte(()=>e.stat(t))}write(t,r){return hte(()=>e.write(t,r))}delete(t){return hte(()=>e.delete(t))}rename(t,r){return hte(()=>e.rename(t,r))}watch(){return null}}}});var Fts=H($Nt=>{"use strict";Object.defineProperty($Nt,"__esModule",{value:!0});$Nt.Empty=void 0;var Cxe=qb(),Wol=Ate(),TMr=class{capabilities={synchronous:!0};read(t){return(0,Cxe.throwError)(new Wol.FileDoesNotExistException(t))}list(t){return(0,Cxe.of)([])}exists(t){return(0,Cxe.of)(!1)}isDirectory(t){return(0,Cxe.of)(!1)}isFile(t){return(0,Cxe.of)(!1)}stat(t){return(0,Cxe.of)(null)}};$Nt.Empty=TMr});var sje=H((Kzu,Wts)=>{"use strict";var qj="\\\\/",Zts=`[^${qj}]`,mte="\\.",Ool="\\+",Mol="\\?",eDt="\\/",Hol="(?=.)",Lts="[^/]",RMr=`(?:${eDt}|$)`,Vts=`(?:^|${eDt})`,NMr=`${mte}{1,2}${RMr}`,Yol=`(?!${mte})`,Qol=`(?!${Vts}${NMr})`,Xol=`(?!${mte}{0,1}${RMr})`,Jol=`(?!${NMr})`,Uol=`[^.${eDt}]`,Kol=`${Lts}*?`,jol="/",Pts={DOT_LITERAL:mte,PLUS_LITERAL:Ool,QMARK_LITERAL:Mol,SLASH_LITERAL:eDt,ONE_CHAR:Hol,QMARK:Lts,END_ANCHOR:RMr,DOTS_SLASH:NMr,NO_DOT:Yol,NO_DOTS:Qol,NO_DOT_SLASH:Xol,NO_DOTS_SLASH:Jol,QMARK_NO_DOT:Uol,STAR:Kol,START_ANCHOR:Vts,SEP:jol},zol={...Pts,SLASH_LITERAL:`[${qj}]`,QMARK:Zts,STAR:`${Zts}*?`,DOTS_SLASH:`${mte}{1,2}(?:[${qj}]|$)`,NO_DOT:`(?!${mte})`,NO_DOTS:`(?!(?:^|[${qj}])${mte}{1,2}(?:[${qj}]|$))`,NO_DOT_SLASH:`(?!${mte}{0,1}(?:[${qj}]|$))`,NO_DOTS_SLASH:`(?!${mte}{1,2}(?:[${qj}]|$))`,QMARK_NO_DOT:`[^.${qj}]`,START_ANCHOR:`(?:^|[${qj}])`,END_ANCHOR:`(?:[${qj}]|$)`,SEP:"\\"},qol={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Wts.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:qol,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?zol:Pts}}});var oje=H(PV=>{"use strict";var{REGEX_BACKSLASH:$ol,REGEX_REMOVE_BACKSLASH:eal,REGEX_SPECIAL_CHARS:tal,REGEX_SPECIAL_CHARS_GLOBAL:ral}=sje();PV.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);PV.hasRegexChars=e=>tal.test(e);PV.isRegexChar=e=>e.length===1&&PV.hasRegexChars(e);PV.escapeRegex=e=>e.replace(ral,"\\$1");PV.toPosixSlashes=e=>e.replace($ol,"/");PV.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};PV.removeBackslashes=e=>e.replace(eal,t=>t==="\\"?"":t);PV.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?PV.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};PV.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};PV.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};PV.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),n=r[r.length-1];return n===""?r[r.length-2]:n}});var Uts=H((zzu,Jts)=>{"use strict";var Ots=oje(),{CHAR_ASTERISK:DMr,CHAR_AT:nal,CHAR_BACKWARD_SLASH:aje,CHAR_COMMA:ial,CHAR_DOT:kMr,CHAR_EXCLAMATION_MARK:xMr,CHAR_FORWARD_SLASH:Xts,CHAR_LEFT_CURLY_BRACE:GMr,CHAR_LEFT_PARENTHESES:FMr,CHAR_LEFT_SQUARE_BRACKET:sal,CHAR_PLUS:oal,CHAR_QUESTION_MARK:Mts,CHAR_RIGHT_CURLY_BRACE:aal,CHAR_RIGHT_PARENTHESES:Hts,CHAR_RIGHT_SQUARE_BRACKET:cal}=sje(),Yts=e=>e===Xts||e===aje,Qts=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},lal=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,X=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),et=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Me=f.slice(0,C),f=f.slice(C),b-=C),ct&&B===!0&&b>0?(ct=f.slice(0,b),je=f.slice(b)):B===!0?(ct="",je=f):ct=f,ct&&ct!==""&&ct!=="/"&&ct!==f&&Yts(ct.charCodeAt(ct.length-1))&&(ct=ct.slice(0,-1)),r.unescape===!0&&(je&&(je=Ots.removeBackslashes(je)),ct&&ae===!0&&(ct=Ots.removeBackslashes(ct)));let St={prefix:Me,input:e,start:C,base:ct,glob:je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(St.maxDepth=0,Yts(be)||l.push(Se),St.tokens=l),r.parts===!0||r.tokens===!0){let At;for(let Yt=0;Yt{"use strict";var tDt=sje(),$j=oje(),{MAX_LENGTH:rDt,POSIX_REGEX_SOURCE:ual,REGEX_NON_SPECIAL_CHARS:gal,REGEX_SPECIAL_CHARS_BACKREF:Aal,REPLACEMENTS:Kts}=tDt,dal=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>$j.escapeRegex(a)).join("..")}return r},_xe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,ZMr=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=Kts[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(rDt,r.maxLength):rDt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=tDt.globChars(r.windows),I=tDt.extglobChars(f),{DOT_LITERAL:C,PLUS_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:N,DOTS_SLASH:B,NO_DOT:F,NO_DOT_SLASH:Q,NO_DOTS_SLASH:X,QMARK:ae,QMARK_NO_DOT:ne,STAR:ce,START_ANCHOR:fe}=f,ue=cr=>`(${A}(?:(?!${fe}${cr.dot?B:C}).)*?)`,de=r.dot?"":F,be=r.dot?ae:ne,Se=r.bash===!0?ue(r):ce;r.capture&&(Se=`(${Se})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let De={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=$j.removePrefix(e,De),a=e.length;let k=[],et=[],ct=[],Me=o,je,St=()=>De.index===a-1,At=De.peek=(cr=1)=>e[De.index+cr],Yt=De.advance=()=>e[++De.index]||"",Tr=()=>e.slice(De.index+1),Nr=(cr="",Ar=0)=>{De.consumed+=cr,De.index+=Ar},er=cr=>{De.output+=cr.output!=null?cr.output:cr.value,Nr(cr.value)},vt=()=>{let cr=1;for(;At()==="!"&&(At(2)!=="("||At(3)==="?");)Yt(),De.start++,cr++;return cr%2===0?!1:(De.negated=!0,De.start++,!0)},xt=cr=>{De[cr]++,ct.push(cr)},Zr=cr=>{De[cr]--,ct.pop()},qt=cr=>{if(Me.type==="globstar"){let Ar=De.braces>0&&(cr.type==="comma"||cr.type==="brace"),qr=cr.extglob===!0||k.length&&(cr.type==="pipe"||cr.type==="paren");cr.type!=="slash"&&cr.type!=="paren"&&!Ar&&!qr&&(De.output=De.output.slice(0,-Me.output.length),Me.type="star",Me.value="*",Me.output=Se,De.output+=Me.output)}if(k.length&&cr.type!=="paren"&&(k[k.length-1].inner+=cr.value),(cr.value||cr.output)&&er(cr),Me&&Me.type==="text"&&cr.type==="text"){Me.output=(Me.output||Me.value)+cr.value,Me.value+=cr.value;return}cr.prev=Me,l.push(cr),Me=cr},Xt=(cr,Ar)=>{let qr={...I[Ar],conditions:1,inner:""};qr.prev=Me,qr.parens=De.parens,qr.output=De.output;let _n=(r.capture?"(":"")+qr.open;xt("parens"),qt({type:cr,value:Ar,output:De.output?"":N}),qt({type:"paren",extglob:!0,value:Yt(),output:_n}),k.push(qr)},lr=cr=>{let Ar=cr.close+(r.capture?")":""),qr;if(cr.type==="negate"){let _n=Se;if(cr.inner&&cr.inner.length>1&&cr.inner.includes("/")&&(_n=ue(r)),(_n!==Se||St()||/^\)+$/.test(Tr()))&&(Ar=cr.close=`)$))${_n}`),cr.inner.includes("*")&&(qr=Tr())&&/^\.[^\\/.]+$/.test(qr)){let ke=ZMr(qr,{...t,fastpaths:!1}).output;Ar=cr.close=`)${ke})${_n})`}cr.prev.type==="bos"&&(De.negatedExtglob=!0)}qt({type:"paren",extglob:!0,value:je,output:Ar}),Zr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let cr=!1,Ar=e.replace(Aal,(qr,_n,ke,jt,Fn,Nn)=>jt==="\\"?(cr=!0,qr):jt==="?"?_n?_n+jt+(Fn?ae.repeat(Fn.length):""):Nn===0?be+(Fn?ae.repeat(Fn.length):""):ae.repeat(ke.length):jt==="."?C.repeat(ke.length):jt==="*"?_n?_n+jt+(Fn?Se:""):Se:_n?qr:`\\${qr}`);return cr===!0&&(r.unescape===!0?Ar=Ar.replace(/\\/g,""):Ar=Ar.replace(/\\+/g,qr=>qr.length%2===0?"\\\\":qr?"\\":"")),Ar===e&&r.contains===!0?(De.output=e,De):(De.output=$j.wrapOutput(Ar,De,t),De)}for(;!St();){if(je=Yt(),je==="\0")continue;if(je==="\\"){let qr=At();if(qr==="/"&&r.bash!==!0||qr==="."||qr===";")continue;if(!qr){je+="\\",qt({type:"text",value:je});continue}let _n=/^\\+/.exec(Tr()),ke=0;if(_n&&_n[0].length>2&&(ke=_n[0].length,De.index+=ke,ke%2!==0&&(je+="\\")),r.unescape===!0?je=Yt():je+=Yt(),De.brackets===0){qt({type:"text",value:je});continue}}if(De.brackets>0&&(je!=="]"||Me.value==="["||Me.value==="[^")){if(r.posix!==!1&&je===":"){let qr=Me.value.slice(1);if(qr.includes("[")&&(Me.posix=!0,qr.includes(":"))){let _n=Me.value.lastIndexOf("["),ke=Me.value.slice(0,_n),jt=Me.value.slice(_n+2),Fn=ual[jt];if(Fn){Me.value=ke+Fn,De.backtrack=!0,Yt(),!o.output&&l.indexOf(Me)===1&&(o.output=N);continue}}}(je==="["&&At()!==":"||je==="-"&&At()==="]")&&(je=`\\${je}`),je==="]"&&(Me.value==="["||Me.value==="[^")&&(je=`\\${je}`),r.posix===!0&&je==="!"&&Me.value==="["&&(je="^"),Me.value+=je,er({value:je});continue}if(De.quotes===1&&je!=='"'){je=$j.escapeRegex(je),Me.value+=je,er({value:je});continue}if(je==='"'){De.quotes=De.quotes===1?0:1,r.keepQuotes===!0&&qt({type:"text",value:je});continue}if(je==="("){xt("parens"),qt({type:"paren",value:je});continue}if(je===")"){if(De.parens===0&&r.strictBrackets===!0)throw new SyntaxError(_xe("opening","("));let qr=k[k.length-1];if(qr&&De.parens===qr.parens+1){lr(k.pop());continue}qt({type:"paren",value:je,output:De.parens?")":"\\)"}),Zr("parens");continue}if(je==="["){if(r.nobracket===!0||!Tr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(_xe("closing","]"));je=`\\${je}`}else xt("brackets");qt({type:"bracket",value:je});continue}if(je==="]"){if(r.nobracket===!0||Me&&Me.type==="bracket"&&Me.value.length===1){qt({type:"text",value:je,output:`\\${je}`});continue}if(De.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(_xe("opening","["));qt({type:"text",value:je,output:`\\${je}`});continue}Zr("brackets");let qr=Me.value.slice(1);if(Me.posix!==!0&&qr[0]==="^"&&!qr.includes("/")&&(je=`/${je}`),Me.value+=je,er({value:je}),r.literalBrackets===!1||$j.hasRegexChars(qr))continue;let _n=$j.escapeRegex(Me.value);if(De.output=De.output.slice(0,-Me.value.length),r.literalBrackets===!0){De.output+=_n,Me.value=_n;continue}Me.value=`(${A}${_n}|${Me.value})`,De.output+=Me.value;continue}if(je==="{"&&r.nobrace!==!0){xt("braces");let qr={type:"brace",value:je,output:"(",outputIndex:De.output.length,tokensIndex:De.tokens.length};et.push(qr),qt(qr);continue}if(je==="}"){let qr=et[et.length-1];if(r.nobrace===!0||!qr){qt({type:"text",value:je,output:je});continue}let _n=")";if(qr.dots===!0){let ke=l.slice(),jt=[];for(let Fn=ke.length-1;Fn>=0&&(l.pop(),ke[Fn].type!=="brace");Fn--)ke[Fn].type!=="dots"&&jt.unshift(ke[Fn].value);_n=dal(jt,r),De.backtrack=!0}if(qr.comma!==!0&&qr.dots!==!0){let ke=De.output.slice(0,qr.outputIndex),jt=De.tokens.slice(qr.tokensIndex);qr.value=qr.output="\\{",je=_n="\\}",De.output=ke;for(let Fn of jt)De.output+=Fn.output||Fn.value}qt({type:"brace",value:je,output:_n}),Zr("braces"),et.pop();continue}if(je==="|"){k.length>0&&k[k.length-1].conditions++,qt({type:"text",value:je});continue}if(je===","){let qr=je,_n=et[et.length-1];_n&&ct[ct.length-1]==="braces"&&(_n.comma=!0,qr="|"),qt({type:"comma",value:je,output:qr});continue}if(je==="/"){if(Me.type==="dot"&&De.index===De.start+1){De.start=De.index+1,De.consumed="",De.output="",l.pop(),Me=o;continue}qt({type:"slash",value:je,output:E});continue}if(je==="."){if(De.braces>0&&Me.type==="dot"){Me.value==="."&&(Me.output=C);let qr=et[et.length-1];Me.type="dots",Me.output+=je,Me.value+=je,qr.dots=!0;continue}if(De.braces+De.parens===0&&Me.type!=="bos"&&Me.type!=="slash"){qt({type:"text",value:je,output:C});continue}qt({type:"dot",value:je,output:C});continue}if(je==="?"){if(!(Me&&Me.value==="(")&&r.noextglob!==!0&&At()==="("&&At(2)!=="?"){Xt("qmark",je);continue}if(Me&&Me.type==="paren"){let _n=At(),ke=je;(Me.value==="("&&!/[!=<:]/.test(_n)||_n==="<"&&!/<([!=]|\w+>)/.test(Tr()))&&(ke=`\\${je}`),qt({type:"text",value:je,output:ke});continue}if(r.dot!==!0&&(Me.type==="slash"||Me.type==="bos")){qt({type:"qmark",value:je,output:ne});continue}qt({type:"qmark",value:je,output:ae});continue}if(je==="!"){if(r.noextglob!==!0&&At()==="("&&(At(2)!=="?"||!/[!=<:]/.test(At(3)))){Xt("negate",je);continue}if(r.nonegate!==!0&&De.index===0){vt();continue}}if(je==="+"){if(r.noextglob!==!0&&At()==="("&&At(2)!=="?"){Xt("plus",je);continue}if(Me&&Me.value==="("||r.regex===!1){qt({type:"plus",value:je,output:b});continue}if(Me&&(Me.type==="bracket"||Me.type==="paren"||Me.type==="brace")||De.parens>0){qt({type:"plus",value:je});continue}qt({type:"plus",value:b});continue}if(je==="@"){if(r.noextglob!==!0&&At()==="("&&At(2)!=="?"){qt({type:"at",extglob:!0,value:je,output:""});continue}qt({type:"text",value:je});continue}if(je!=="*"){(je==="$"||je==="^")&&(je=`\\${je}`);let qr=gal.exec(Tr());qr&&(je+=qr[0],De.index+=qr[0].length),qt({type:"text",value:je});continue}if(Me&&(Me.type==="globstar"||Me.star===!0)){Me.type="star",Me.star=!0,Me.value+=je,Me.output=Se,De.backtrack=!0,De.globstar=!0,Nr(je);continue}let cr=Tr();if(r.noextglob!==!0&&/^\([^?]/.test(cr)){Xt("star",je);continue}if(Me.type==="star"){if(r.noglobstar===!0){Nr(je);continue}let qr=Me.prev,_n=qr.prev,ke=qr.type==="slash"||qr.type==="bos",jt=_n&&(_n.type==="star"||_n.type==="globstar");if(r.bash===!0&&(!ke||cr[0]&&cr[0]!=="/")){qt({type:"star",value:je,output:""});continue}let Fn=De.braces>0&&(qr.type==="comma"||qr.type==="brace"),Nn=k.length&&(qr.type==="pipe"||qr.type==="paren");if(!ke&&qr.type!=="paren"&&!Fn&&!Nn){qt({type:"star",value:je,output:""});continue}for(;cr.slice(0,3)==="/**";){let Hi=e[De.index+4];if(Hi&&Hi!=="/")break;cr=cr.slice(3),Nr("/**",3)}if(qr.type==="bos"&&St()){Me.type="globstar",Me.value+=je,Me.output=ue(r),De.output=Me.output,De.globstar=!0,Nr(je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&!jt&&St()){De.output=De.output.slice(0,-(qr.output+Me.output).length),qr.output=`(?:${qr.output}`,Me.type="globstar",Me.output=ue(r)+(r.strictSlashes?")":"|$)"),Me.value+=je,De.globstar=!0,De.output+=qr.output+Me.output,Nr(je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&cr[0]==="/"){let Hi=cr[1]!==void 0?"|$":"";De.output=De.output.slice(0,-(qr.output+Me.output).length),qr.output=`(?:${qr.output}`,Me.type="globstar",Me.output=`${ue(r)}${E}|${E}${Hi})`,Me.value+=je,De.output+=qr.output+Me.output,De.globstar=!0,Nr(je+Yt()),qt({type:"slash",value:"/",output:""});continue}if(qr.type==="bos"&&cr[0]==="/"){Me.type="globstar",Me.value+=je,Me.output=`(?:^|${E}|${ue(r)}${E})`,De.output=Me.output,De.globstar=!0,Nr(je+Yt()),qt({type:"slash",value:"/",output:""});continue}De.output=De.output.slice(0,-Me.output.length),Me.type="globstar",Me.output=ue(r),Me.value+=je,De.output+=Me.output,De.globstar=!0,Nr(je);continue}let Ar={type:"star",value:je,output:Se};if(r.bash===!0){Ar.output=".*?",(Me.type==="bos"||Me.type==="slash")&&(Ar.output=de+Ar.output),qt(Ar);continue}if(Me&&(Me.type==="bracket"||Me.type==="paren")&&r.regex===!0){Ar.output=je,qt(Ar);continue}(De.index===De.start||Me.type==="slash"||Me.type==="dot")&&(Me.type==="dot"?(De.output+=Q,Me.output+=Q):r.dot===!0?(De.output+=X,Me.output+=X):(De.output+=de,Me.output+=de),At()!=="*"&&(De.output+=N,Me.output+=N)),qt(Ar)}for(;De.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(_xe("closing","]"));De.output=$j.escapeLast(De.output,"["),Zr("brackets")}for(;De.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(_xe("closing",")"));De.output=$j.escapeLast(De.output,"("),Zr("parens")}for(;De.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(_xe("closing","}"));De.output=$j.escapeLast(De.output,"{"),Zr("braces")}if(r.strictSlashes!==!0&&(Me.type==="star"||Me.type==="bracket")&&qt({type:"maybe_slash",value:"",output:`${E}?`}),De.backtrack===!0){De.output="";for(let cr of De.tokens)De.output+=cr.output!=null?cr.output:cr.value,cr.suffix&&(De.output+=cr.suffix)}return De};ZMr.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(rDt,r.maxLength):rDt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=Kts[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:l,ONE_CHAR:A,DOTS_SLASH:f,NO_DOT:I,NO_DOTS:C,NO_DOTS_SLASH:b,STAR:E,START_ANCHOR:N}=tDt.globChars(r.windows),B=r.dot?C:I,F=r.dot?b:I,Q=r.capture?"":"?:",X={negated:!1,prefix:""},ae=r.bash===!0?".*?":E;r.capture&&(ae=`(${ae})`);let ne=de=>de.noglobstar===!0?ae:`(${Q}(?:(?!${N}${de.dot?f:o}).)*?)`,ce=de=>{switch(de){case"*":return`${B}${A}${ae}`;case".*":return`${o}${A}${ae}`;case"*.*":return`${B}${ae}${o}${A}${ae}`;case"*/*":return`${B}${ae}${l}${A}${F}${ae}`;case"**":return B+ne(r);case"**/*":return`(?:${B}${ne(r)}${l})?${F}${A}${ae}`;case"**/*.*":return`(?:${B}${ne(r)}${l})?${F}${ae}${o}${A}${ae}`;case"**/.*":return`(?:${B}${ne(r)}${l})?${o}${A}${ae}`;default:{let be=/^(.*?)\.(\w+)$/.exec(de);if(!be)return;let Se=ce(be[1]);return Se?Se+o+be[2]:void 0}}},fe=$j.removePrefix(e,X),ue=ce(fe);return ue&&r.strictSlashes!==!0&&(ue+=`${l}?`),ue};jts.exports=ZMr});var ers=H(($zu,$ts)=>{"use strict";var pal=Uts(),LMr=zts(),qts=oje(),fal=sje(),Ial=e=>e&&typeof e=="object"&&!Array.isArray(e),cw=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>cw(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=Ial(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,l=n?cw.compileRe(e,t):cw.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=cw(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=cw.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};cw.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?qts.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=cw.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};cw.matchBase=(e,t,r)=>(t instanceof RegExp?t:cw.makeRe(t,r)).test(qts.basename(e));cw.isMatch=(e,t,r)=>cw(t,r)(e);cw.parse=(e,t)=>Array.isArray(e)?e.map(r=>cw.parse(r,t)):LMr(e,{...t,fastpaths:!1});cw.scan=(e,t)=>pal(e,t);cw.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=cw.toRegex(A,t);return n===!0&&(f.state=e),f};cw.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=LMr.fastpaths(e,t)),a.output||(a=LMr(e,t)),cw.compileRe(a,t,r,n)};cw.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};cw.constants=fal;$ts.exports=cw});var irs=H((equ,nrs)=>{"use strict";var trs=ers(),hal=oje();function rrs(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:hal.isWindows()}),trs(e,t,r)}Object.assign(rrs,trs);nrs.exports=rrs});var srs=H(nDt=>{"use strict";Object.defineProperty(nDt,"__esModule",{value:!0});nDt.PatternMatchingHost=void 0;var mal=irs(),Cal=ije(),VMr=class extends Cal.ResolverHost{_patterns=new Map;addPattern(t,r){let n=Array.isArray(t)?t:[t];for(let a of n){let{output:o}=(0,mal.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((n,a)=>{a.test(t)&&(r=n(r))}),r}};nDt.PatternMatchingHost=VMr});var ors=H(iDt=>{"use strict";Object.defineProperty(iDt,"__esModule",{value:!0});iDt.CordHost=void 0;var w_=qb(),Cte=Ate(),_al=UNt(),PMr=class e extends _al.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,w_.from)(this.records()).pipe((0,w_.concatMap)(n=>{switch(n.kind){case"delete":return t.delete(n.path);case"rename":return t.rename(n.from,n.to);case"create":return t.exists(n.path).pipe((0,w_.switchMap)(a=>a&&!r?(0,w_.throwError)(new Cte.FileAlreadyExistException(n.path)):t.write(n.path,n.content)));case"overwrite":return t.exists(n.path).pipe((0,w_.switchMap)(a=>!a&&!r?(0,w_.throwError)(new Cte.FileDoesNotExistException(n.path)):t.write(n.path,n.content)))}}),(0,w_.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new Cte.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,w_.switchMap)(n=>n?(0,w_.throwError)(new Cte.PathIsDirectoryException(t)):this.exists(t)),(0,w_.switchMap)(n=>n?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,w_.throwError)(new Cte.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,w_.switchMap)(n=>n?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,w_.throwError)(new Cte.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,w_.switchMap)(r=>r?(this._filesToDelete.add(t),(0,w_.of)()):(0,w_.throwError)(new Cte.FileDoesNotExistException(t))))}rename(t,r){return(0,w_.concat)(this.exists(r),this.exists(t)).pipe((0,w_.toArray)(),(0,w_.switchMap)(([n,a])=>{if(!a)return(0,w_.throwError)(new Cte.FileDoesNotExistException(t));if(t===r)return w_.EMPTY;if(n)return(0,w_.throwError)(new Cte.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,w_.concat)(this.rename(t,r),new w_.Observable(l=>{this._filesToOverwrite.add(r),l.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,w_.map)(l=>this._write(r,l)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,w_.switchMap)(l=>super.write(r,l)))}))}list(t){return(0,w_.concat)(super.list(t),this._back.list(t)).pipe((0,w_.reduce)((r,n)=>(n.forEach(a=>r.add(a)),r),new Set),(0,w_.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,w_.of)(!0):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};iDt.CordHost=PMr});var ars=H(sDt=>{"use strict";Object.defineProperty(sDt,"__esModule",{value:!0});sDt.SafeReadonlyHost=void 0;var Ole=qb(),WMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,Ole.catchError)(()=>(0,Ole.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,Ole.catchError)(()=>(0,Ole.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,Ole.catchError)(()=>(0,Ole.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,Ole.catchError)(()=>(0,Ole.of)(null)))}};sDt.SafeReadonlyHost=WMr});var lrs=H(oDt=>{"use strict";Object.defineProperty(oDt,"__esModule",{value:!0});oDt.ScopedHost=void 0;var crs=Ixe(),yal=ije(),OMr=class extends yal.ResolverHost{_root;constructor(t,r=crs.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,crs.join)(this._root,t)}};oDt.ScopedHost=OMr});var grs=H(F2=>{"use strict";var urs=F2&&F2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bal=F2&&F2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Eal=F2&&F2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var Ars=NO&&NO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),val=NO&&NO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Bal=NO&&NO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(MMr,"__esModule",{value:!0});MMr.createWorkspaceHost=Ral;var cDt=qb(),yxe=aDt();function Ral(e){return{async readFile(r){let n=await(0,cDt.lastValueFrom)(e.read((0,yxe.normalize)(r)));return yxe.virtualFs.fileBufferToString(n)},async writeFile(r,n){return(0,cDt.lastValueFrom)(e.write((0,yxe.normalize)(r),yxe.virtualFs.stringToFileBuffer(n)))},async isDirectory(r){try{return await(0,cDt.lastValueFrom)(e.isDirectory((0,yxe.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,cDt.lastValueFrom)(e.isFile((0,yxe.normalize)(r)))}catch{return!1}}}}});var uDt=H((prs,lDt)=>{(function(e){if(typeof lDt=="object"&&typeof lDt.exports=="object"){var t=e(wt,prs);t!==void 0&&(lDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(A,f=!1){let I=A.length,C=0,b="",E=0,N=16,B=0,F=0,Q=0,X=0,ae=0;function ne(De,k){let et=0,ct=0;for(;et=48&&Me<=57)ct=ct*16+Me-48;else if(Me>=65&&Me<=70)ct=ct*16+Me-65+10;else if(Me>=97&&Me<=102)ct=ct*16+Me-97+10;else break;C++,et++}return et=I){De+=A.substring(k,C),ae=2;break}let et=A.charCodeAt(C);if(et===34){De+=A.substring(k,C),C++;break}if(et===92){if(De+=A.substring(k,C),C++,C>=I){ae=2;break}switch(A.charCodeAt(C++)){case 34:De+='"';break;case 92:De+="\\";break;case 47:De+="/";break;case 98:De+="\b";break;case 102:De+="\f";break;case 110:De+=` `;break;case 114:De+="\r";break;case 116:De+=" ";break;case 117:let Me=ne(4,!0);Me>=0?De+=String.fromCharCode(Me):ae=4;break;default:ae=5}k=C;continue}if(et>=0&&et<=31)if(a(et)){De+=A.substring(k,C),ae=2;break}else ae=6;C++}return De}function de(){if(b="",ae=0,E=C,F=B,X=Q,C>=I)return E=I,N=17;let De=A.charCodeAt(C);if(n(De)){do C++,b+=String.fromCharCode(De),De=A.charCodeAt(C);while(n(De));return N=15}if(a(De))return C++,b+=String.fromCharCode(De),De===13&&A.charCodeAt(C)===10&&(C++,b+=` -`),B++,Q=C,N=14;switch(De){case 123:return C++,N=1;case 125:return C++,N=2;case 91:return C++,N=3;case 93:return C++,N=4;case 58:return C++,N=6;case 44:return C++,N=5;case 34:return C++,b=ue(),N=10;case 47:let k=C-1;if(A.charCodeAt(C+1)===47){for(C+=2;C=12&&De<=15);return De}return{setPosition:ce,getPosition:()=>C,scan:f?Se:de,getToken:()=>N,getTokenValue:()=>b,getTokenOffset:()=>E,getTokenLength:()=>C-E,getTokenStartLine:()=>F,getTokenStartCharacter:()=>E-X,getTokenError:()=>ae}}t.createScanner=r;function n(A){return A===32||A===9}function a(A){return A===10||A===13}function o(A){return A>=48&&A<=57}var l;(function(A){A[A.lineFeed=10]="lineFeed",A[A.carriageReturn=13]="carriageReturn",A[A.space=32]="space",A[A._0=48]="_0",A[A._1=49]="_1",A[A._2=50]="_2",A[A._3=51]="_3",A[A._4=52]="_4",A[A._5=53]="_5",A[A._6=54]="_6",A[A._7=55]="_7",A[A._8=56]="_8",A[A._9=57]="_9",A[A.a=97]="a",A[A.b=98]="b",A[A.c=99]="c",A[A.d=100]="d",A[A.e=101]="e",A[A.f=102]="f",A[A.g=103]="g",A[A.h=104]="h",A[A.i=105]="i",A[A.j=106]="j",A[A.k=107]="k",A[A.l=108]="l",A[A.m=109]="m",A[A.n=110]="n",A[A.o=111]="o",A[A.p=112]="p",A[A.q=113]="q",A[A.r=114]="r",A[A.s=115]="s",A[A.t=116]="t",A[A.u=117]="u",A[A.v=118]="v",A[A.w=119]="w",A[A.x=120]="x",A[A.y=121]="y",A[A.z=122]="z",A[A.A=65]="A",A[A.B=66]="B",A[A.C=67]="C",A[A.D=68]="D",A[A.E=69]="E",A[A.F=70]="F",A[A.G=71]="G",A[A.H=72]="H",A[A.I=73]="I",A[A.J=74]="J",A[A.K=75]="K",A[A.L=76]="L",A[A.M=77]="M",A[A.N=78]="N",A[A.O=79]="O",A[A.P=80]="P",A[A.Q=81]="Q",A[A.R=82]="R",A[A.S=83]="S",A[A.T=84]="T",A[A.U=85]="U",A[A.V=86]="V",A[A.W=87]="W",A[A.X=88]="X",A[A.Y=89]="Y",A[A.Z=90]="Z",A[A.asterisk=42]="asterisk",A[A.backslash=92]="backslash",A[A.closeBrace=125]="closeBrace",A[A.closeBracket=93]="closeBracket",A[A.colon=58]="colon",A[A.comma=44]="comma",A[A.dot=46]="dot",A[A.doubleQuote=34]="doubleQuote",A[A.minus=45]="minus",A[A.openBrace=123]="openBrace",A[A.openBracket=91]="openBracket",A[A.plus=43]="plus",A[A.slash=47]="slash",A[A.formFeed=12]="formFeed",A[A.tab=9]="tab"})(l||(l={}))})});var ers=H(($ts,aDt)=>{(function(e){if(typeof aDt=="object"&&typeof aDt.exports=="object"){var t=e(wt,$ts);t!==void 0&&(aDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((n,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((n,a)=>` +`),B++,Q=C,N=14;switch(De){case 123:return C++,N=1;case 125:return C++,N=2;case 91:return C++,N=3;case 93:return C++,N=4;case 58:return C++,N=6;case 44:return C++,N=5;case 34:return C++,b=ue(),N=10;case 47:let k=C-1;if(A.charCodeAt(C+1)===47){for(C+=2;C=12&&De<=15);return De}return{setPosition:ce,getPosition:()=>C,scan:f?Se:de,getToken:()=>N,getTokenValue:()=>b,getTokenOffset:()=>E,getTokenLength:()=>C-E,getTokenStartLine:()=>F,getTokenStartCharacter:()=>E-X,getTokenError:()=>ae}}t.createScanner=r;function n(A){return A===32||A===9}function a(A){return A===10||A===13}function o(A){return A>=48&&A<=57}var l;(function(A){A[A.lineFeed=10]="lineFeed",A[A.carriageReturn=13]="carriageReturn",A[A.space=32]="space",A[A._0=48]="_0",A[A._1=49]="_1",A[A._2=50]="_2",A[A._3=51]="_3",A[A._4=52]="_4",A[A._5=53]="_5",A[A._6=54]="_6",A[A._7=55]="_7",A[A._8=56]="_8",A[A._9=57]="_9",A[A.a=97]="a",A[A.b=98]="b",A[A.c=99]="c",A[A.d=100]="d",A[A.e=101]="e",A[A.f=102]="f",A[A.g=103]="g",A[A.h=104]="h",A[A.i=105]="i",A[A.j=106]="j",A[A.k=107]="k",A[A.l=108]="l",A[A.m=109]="m",A[A.n=110]="n",A[A.o=111]="o",A[A.p=112]="p",A[A.q=113]="q",A[A.r=114]="r",A[A.s=115]="s",A[A.t=116]="t",A[A.u=117]="u",A[A.v=118]="v",A[A.w=119]="w",A[A.x=120]="x",A[A.y=121]="y",A[A.z=122]="z",A[A.A=65]="A",A[A.B=66]="B",A[A.C=67]="C",A[A.D=68]="D",A[A.E=69]="E",A[A.F=70]="F",A[A.G=71]="G",A[A.H=72]="H",A[A.I=73]="I",A[A.J=74]="J",A[A.K=75]="K",A[A.L=76]="L",A[A.M=77]="M",A[A.N=78]="N",A[A.O=79]="O",A[A.P=80]="P",A[A.Q=81]="Q",A[A.R=82]="R",A[A.S=83]="S",A[A.T=84]="T",A[A.U=85]="U",A[A.V=86]="V",A[A.W=87]="W",A[A.X=88]="X",A[A.Y=89]="Y",A[A.Z=90]="Z",A[A.asterisk=42]="asterisk",A[A.backslash=92]="backslash",A[A.closeBrace=125]="closeBrace",A[A.closeBracket=93]="closeBracket",A[A.colon=58]="colon",A[A.comma=44]="comma",A[A.dot=46]="dot",A[A.doubleQuote=34]="doubleQuote",A[A.minus=45]="minus",A[A.openBrace=123]="openBrace",A[A.openBracket=91]="openBracket",A[A.plus=43]="plus",A[A.slash=47]="slash",A[A.formFeed=12]="formFeed",A[A.tab=9]="tab"})(l||(l={}))})});var Irs=H((frs,gDt)=>{(function(e){if(typeof gDt=="object"&&typeof gDt.exports=="object"){var t=e(wt,frs);t!==void 0&&(gDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((n,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((n,a)=>` `+" ".repeat(a)),"\r":new Array(r).fill(0).map((n,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((n,a)=>`\r `+" ".repeat(a))}," ":{"\n":new Array(r).fill(0).map((n,a)=>` `+" ".repeat(a)),"\r":new Array(r).fill(0).map((n,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((n,a)=>`\r `+" ".repeat(a))}},t.supportedEols=[` `,"\r",`\r -`]})});var ZMr=H((trs,cDt)=>{var Vol=oDt(),sL=ers();(function(e){if(typeof cDt=="object"&&typeof cDt.exports=="object"){var t=e(wt,trs);t!==void 0&&(cDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(A,f,I){let C,b,E,N,B;if(f){for(N=f.offset,B=N+f.length,E=N;E>0&&!l(A,E-1);)E--;let et=B;for(;et1)return n(F,X)+n(ne,C+ae);let et=ne.length*(C+ae);return!Q||et>sL.cachedBreakLinesWithSpaces[ce][F].length?F+n(ne,C+ae):et<=0?F:sL.cachedBreakLinesWithSpaces[ce][F][et]}function be(){let et=fe.scan();for(X=0;et===15||et===14;)et===14&&I.keepLines?X+=1:et===14&&(X=1),et=fe.scan();return ue=et===16||fe.getTokenError()!==0,et}let Se=[];function De(et,ct,Me){!ue&&(!f||ctN)&&A.substring(ct,Me)!==et&&Se.push({offset:ct,length:Me-ct,content:et})}let k=be();if(I.keepLines&&X>0&&De(n(F,X),0,0),k!==17){let et=fe.getTokenOffset()+E,ct=ne.length*C<20&&I.insertSpaces?sL.cachedSpaces[ne.length*C]:n(ne,C);De(ct,E,et)}for(;k!==17;){let et=fe.getTokenOffset()+fe.getTokenLength()+E,ct=be(),Me="",je=!1;for(;X===0&&(ct===12||ct===13);){let At=fe.getTokenOffset()+E;De(sL.cachedSpaces[1],et,At),et=fe.getTokenOffset()+fe.getTokenLength()+E,je=ct===12,Me=je?de():"",ct=be()}if(ct===2)k!==1&&ae--,I.keepLines&&X>0||!I.keepLines&&k!==1?Me=de():I.keepLines&&(Me=sL.cachedSpaces[1]);else if(ct===4)k!==3&&ae--,I.keepLines&&X>0||!I.keepLines&&k!==3?Me=de():I.keepLines&&(Me=sL.cachedSpaces[1]);else{switch(k){case 3:case 1:ae++,I.keepLines&&X>0||!I.keepLines?Me=de():Me=sL.cachedSpaces[1];break;case 5:I.keepLines&&X>0||!I.keepLines?Me=de():Me=sL.cachedSpaces[1];break;case 12:Me=de();break;case 13:X>0?Me=de():je||(Me=sL.cachedSpaces[1]);break;case 6:I.keepLines&&X>0?Me=de():je||(Me=sL.cachedSpaces[1]);break;case 10:I.keepLines&&X>0?Me=de():ct===6&&!je&&(Me="");break;case 7:case 8:case 9:case 11:case 2:case 4:I.keepLines&&X>0?Me=de():(ct===12||ct===13)&&!je?Me=sL.cachedSpaces[1]:ct!==5&&ct!==17&&(ue=!0);break;case 16:ue=!0;break}X>0&&(ct===12||ct===13)&&(Me=de())}ct===17&&(I.keepLines&&X>0?Me=de():Me=I.insertFinalNewline?F:"");let St=fe.getTokenOffset()+E;De(Me,et,St),k=ct}return Se}t.format=r;function n(A,f){let I="";for(let C=0;C{var Nal=uDt(),sL=Irs();(function(e){if(typeof ADt=="object"&&typeof ADt.exports=="object"){var t=e(wt,hrs);t!==void 0&&(ADt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(A,f,I){let C,b,E,N,B;if(f){for(N=f.offset,B=N+f.length,E=N;E>0&&!l(A,E-1);)E--;let et=B;for(;et1)return n(F,X)+n(ne,C+ae);let et=ne.length*(C+ae);return!Q||et>sL.cachedBreakLinesWithSpaces[ce][F].length?F+n(ne,C+ae):et<=0?F:sL.cachedBreakLinesWithSpaces[ce][F][et]}function be(){let et=fe.scan();for(X=0;et===15||et===14;)et===14&&I.keepLines?X+=1:et===14&&(X=1),et=fe.scan();return ue=et===16||fe.getTokenError()!==0,et}let Se=[];function De(et,ct,Me){!ue&&(!f||ctN)&&A.substring(ct,Me)!==et&&Se.push({offset:ct,length:Me-ct,content:et})}let k=be();if(I.keepLines&&X>0&&De(n(F,X),0,0),k!==17){let et=fe.getTokenOffset()+E,ct=ne.length*C<20&&I.insertSpaces?sL.cachedSpaces[ne.length*C]:n(ne,C);De(ct,E,et)}for(;k!==17;){let et=fe.getTokenOffset()+fe.getTokenLength()+E,ct=be(),Me="",je=!1;for(;X===0&&(ct===12||ct===13);){let At=fe.getTokenOffset()+E;De(sL.cachedSpaces[1],et,At),et=fe.getTokenOffset()+fe.getTokenLength()+E,je=ct===12,Me=je?de():"",ct=be()}if(ct===2)k!==1&&ae--,I.keepLines&&X>0||!I.keepLines&&k!==1?Me=de():I.keepLines&&(Me=sL.cachedSpaces[1]);else if(ct===4)k!==3&&ae--,I.keepLines&&X>0||!I.keepLines&&k!==3?Me=de():I.keepLines&&(Me=sL.cachedSpaces[1]);else{switch(k){case 3:case 1:ae++,I.keepLines&&X>0||!I.keepLines?Me=de():Me=sL.cachedSpaces[1];break;case 5:I.keepLines&&X>0||!I.keepLines?Me=de():Me=sL.cachedSpaces[1];break;case 12:Me=de();break;case 13:X>0?Me=de():je||(Me=sL.cachedSpaces[1]);break;case 6:I.keepLines&&X>0?Me=de():je||(Me=sL.cachedSpaces[1]);break;case 10:I.keepLines&&X>0?Me=de():ct===6&&!je&&(Me="");break;case 7:case 8:case 9:case 11:case 2:case 4:I.keepLines&&X>0?Me=de():(ct===12||ct===13)&&!je?Me=sL.cachedSpaces[1]:ct!==5&&ct!==17&&(ue=!0);break;case 16:ue=!0;break}X>0&&(ct===12||ct===13)&&(Me=de())}ct===17&&(I.keepLines&&X>0?Me=de():Me=I.insertFinalNewline?F:"");let St=fe.getTokenOffset()+E;De(Me,et,St),k=ct}return Se}t.format=r;function n(A,f){let I="";for(let C=0;C{var rrs=oDt();(function(e){if(typeof lDt=="object"&&typeof lDt.exports=="object"){var t=e(wt,nrs);t!==void 0&&(lDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(B){B.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function n(B,F){let Q=[],X=new Object,ae,ne={value:{},offset:0,length:0,type:"object",parent:void 0},ce=!1;function fe(ue,de,be,Se){ne.value=ue,ne.offset=de,ne.length=be,ne.type=Se,ne.colonOffset=void 0,ae=ne}try{b(B,{onObjectBegin:(ue,de)=>{if(F<=ue)throw X;ae=void 0,ce=F>ue,Q.push("")},onObjectProperty:(ue,de,be)=>{if(F{if(F<=ue)throw X;ae=void 0,Q.pop()},onArrayBegin:(ue,de)=>{if(F<=ue)throw X;ae=void 0,Q.push(0)},onArrayEnd:(ue,de)=>{if(F<=ue)throw X;ae=void 0,Q.pop()},onLiteralValue:(ue,de,be)=>{if(F{if(F<=de)throw X;if(ue===":"&&ae&&ae.type==="property")ae.colonOffset=de,ce=!1,ae=void 0;else if(ue===","){let Se=Q[Q.length-1];typeof Se=="number"?Q[Q.length-1]=Se+1:(ce=!0,Q[Q.length-1]=""),ae=void 0}}})}catch(ue){if(ue!==X)throw ue}return{path:Q,previousNode:ae,isAtPropertyKey:ce,matches:ue=>{let de=0;for(let be=0;de{let ue={};ce(ue),ne.push(ae),ae=ue,X=null},onObjectProperty:ue=>{X=ue},onObjectEnd:()=>{ae=ne.pop()},onArrayBegin:()=>{let ue=[];ce(ue),ne.push(ae),ae=ue,X=null},onArrayEnd:()=>{ae=ne.pop()},onLiteralValue:ce,onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q),ae[0]}t.parse=a;function o(B,F=[],Q=r.DEFAULT){let X={type:"array",offset:-1,length:-1,children:[],parent:void 0};function ae(ue){X.type==="property"&&(X.length=ue-X.offset,X=X.parent)}function ne(ue){return X.children.push(ue),ue}b(B,{onObjectBegin:ue=>{X=ne({type:"object",offset:ue,length:-1,parent:X,children:[]})},onObjectProperty:(ue,de,be)=>{X=ne({type:"property",offset:de,length:-1,parent:X,children:[]}),X.children.push({type:"string",value:ue,offset:de,length:be,parent:X})},onObjectEnd:(ue,de)=>{ae(ue+de),X.length=ue+de-X.offset,X=X.parent,ae(ue+de)},onArrayBegin:(ue,de)=>{X=ne({type:"array",offset:ue,length:-1,parent:X,children:[]})},onArrayEnd:(ue,de)=>{X.length=ue+de-X.offset,X=X.parent,ae(ue+de)},onLiteralValue:(ue,de,be)=>{ne({type:N(ue),offset:de,length:be,parent:X,value:ue}),ae(de+be)},onSeparator:(ue,de,be)=>{X.type==="property"&&(ue===":"?X.colonOffset=de:ue===","&&ae(de))},onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q);let fe=X.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function l(B,F){if(!B)return;let Q=B;for(let X of F)if(typeof X=="string"){if(Q.type!=="object"||!Array.isArray(Q.children))return;let ae=!1;for(let ne of Q.children)if(Array.isArray(ne.children)&&ne.children[0].value===X&&ne.children.length===2){Q=ne.children[1],ae=!0;break}if(!ae)return}else{let ae=X;if(Q.type!=="array"||ae<0||!Array.isArray(Q.children)||ae>=Q.children.length)return;Q=Q.children[ae]}return Q}t.findNodeAtLocation=l;function A(B){if(!B.parent||!B.parent.children)return[];let F=A(B.parent);if(B.parent.type==="property"){let Q=B.parent.children[0].value;F.push(Q)}else if(B.parent.type==="array"){let Q=B.parent.children.indexOf(B);Q!==-1&&F.push(Q)}return F}t.getNodePath=A;function f(B){switch(B.type){case"array":return B.children.map(f);case"object":let F=Object.create(null);for(let Q of B.children){let X=Q.children[1];X&&(F[Q.children[0].value]=f(X))}return F;case"null":case"string":case"number":case"boolean":return B.value;default:return}}t.getNodeValue=f;function I(B,F,Q=!1){return F>=B.offset&&Fne===0&&cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter()):()=>!0}function fe(cr){return cr?Ar=>ne===0&&cr(Ar,X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter()):()=>!0}function ue(cr){return cr?Ar=>ne===0&&cr(Ar,X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter(),()=>ae.slice()):()=>!0}function de(cr){return cr?()=>{ne>0?ne++:cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter(),()=>ae.slice())===!1&&(ne=1)}:()=>!0}function be(cr){return cr?()=>{ne>0&&ne--,ne===0&&cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter())}:()=>!0}let Se=de(F.onObjectBegin),De=ue(F.onObjectProperty),k=be(F.onObjectEnd),et=de(F.onArrayBegin),ct=be(F.onArrayEnd),Me=ue(F.onLiteralValue),je=fe(F.onSeparator),St=ce(F.onComment),At=fe(F.onError),Yt=Q&&Q.disallowComments,Tr=Q&&Q.allowTrailingComma;function Nr(){for(;;){let cr=X.scan();switch(X.getTokenError()){case 4:er(14);break;case 5:er(15);break;case 3:er(13);break;case 1:Yt||er(11);break;case 2:er(12);break;case 6:er(16);break}switch(cr){case 12:case 13:Yt?er(10):St();break;case 16:er(1);break;case 15:case 14:break;default:return cr}}}function er(cr,Ar=[],qr=[]){if(At(cr),Ar.length+qr.length>0){let _n=X.getToken();for(;_n!==17;){if(Ar.indexOf(_n)!==-1){Nr();break}else if(qr.indexOf(_n)!==-1)break;_n=Nr()}}}function vt(cr){let Ar=X.getTokenValue();return cr?Me(Ar):(De(Ar),ae.push(Ar)),Nr(),!0}function xt(){switch(X.getToken()){case 11:let cr=X.getTokenValue(),Ar=Number(cr);isNaN(Ar)&&(er(2),Ar=0),Me(Ar);break;case 7:Me(null);break;case 8:Me(!0);break;case 9:Me(!1);break;default:return!1}return Nr(),!0}function Zr(){return X.getToken()!==10?(er(3,[],[2,5]),!1):(vt(!1),X.getToken()===6?(je(":"),Nr(),lr()||er(4,[],[2,5])):er(5,[],[2,5]),ae.pop(),!0)}function qt(){Se(),Nr();let cr=!1;for(;X.getToken()!==2&&X.getToken()!==17;){if(X.getToken()===5){if(cr||er(4,[],[]),je(","),Nr(),X.getToken()===2&&Tr)break}else cr&&er(6,[],[]);Zr()||er(4,[],[2,5]),cr=!0}return k(),X.getToken()!==2?er(7,[2],[]):Nr(),!0}function Xt(){et(),Nr();let cr=!0,Ar=!1;for(;X.getToken()!==4&&X.getToken()!==17;){if(X.getToken()===5){if(Ar||er(4,[],[]),je(","),Nr(),X.getToken()===4&&Tr)break}else Ar&&er(6,[],[]);cr?(ae.push(0),cr=!1):ae[ae.length-1]++,lr()||er(4,[],[4,5]),Ar=!0}return ct(),cr||ae.pop(),X.getToken()!==4?er(8,[4],[]):Nr(),!0}function lr(){switch(X.getToken()){case 3:return Xt();case 1:return qt();case 10:return vt(!0);default:return xt()}}return Nr(),X.getToken()===17?Q.allowEmptyContent?!0:(er(4,[],[]),!1):lr()?(X.getToken()!==17&&er(9,[],[]),!0):(er(4,[],[]),!1)}t.visit=b;function E(B,F){let Q=(0,rrs.createScanner)(B),X=[],ae,ne=0,ce;do switch(ce=Q.getPosition(),ae=Q.scan(),ae){case 12:case 13:case 17:ne!==ce&&X.push(B.substring(ne,ce)),F!==void 0&&X.push(Q.getTokenValue().replace(/[^\r\n]/g,F)),ne=Q.getPosition();break}while(ae!==17);return X.join("")}t.stripComments=E;function N(B){switch(typeof B){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(B){if(Array.isArray(B))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=N})});var srs=H((irs,uDt)=>{var VMr=ZMr(),PMr=LMr();(function(e){if(typeof uDt=="object"&&typeof uDt.exports=="object"){var t=e(wt,irs);t!==void 0&&(uDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(A,f,I){return n(A,f,void 0,I)}t.removeProperty=r;function n(A,f,I,C){let b=f.slice(),E=[],N=(0,PMr.parseTree)(A,E),B,F;for(;b.length>0&&(F=b.pop(),B=(0,PMr.findNodeAtLocation)(N,b),B===void 0&&I!==void 0);)typeof F=="string"?I={[F]:I}:I=[I];if(B)if(B.type==="object"&&typeof F=="string"&&Array.isArray(B.children)){let Q=(0,PMr.findNodeAtLocation)(B,[F]);if(Q!==void 0)if(I===void 0){if(!Q.parent)throw new Error("Malformed AST");let X=B.children.indexOf(Q.parent),ae,ne=Q.parent.offset+Q.parent.length;if(X>0){let ce=B.children[X-1];ae=ce.offset+ce.length}else ae=B.offset+1,B.children.length>1&&(ne=B.children[1].offset);return a(A,{offset:ae,length:ne-ae,content:""},C)}else return a(A,{offset:Q.offset,length:Q.length,content:JSON.stringify(I)},C);else{if(I===void 0)return[];let X=`${JSON.stringify(F)}: ${JSON.stringify(I)}`,ae=C.getInsertionIndex?C.getInsertionIndex(B.children.map(ce=>ce.children[0].value)):B.children.length,ne;if(ae>0){let ce=B.children[ae-1];ne={offset:ce.offset+ce.length,length:0,content:","+X}}else B.children.length===0?ne={offset:B.offset+1,length:0,content:X}:ne={offset:B.offset+1,length:0,content:X+","};return a(A,ne,C)}}else if(B.type==="array"&&typeof F=="number"&&Array.isArray(B.children)){let Q=F;if(Q===-1){let X=`${JSON.stringify(I)}`,ae;if(B.children.length===0)ae={offset:B.offset+1,length:0,content:X};else{let ne=B.children[B.children.length-1];ae={offset:ne.offset+ne.length,length:0,content:","+X}}return a(A,ae,C)}else if(I===void 0&&B.children.length>=0){let X=F,ae=B.children[X],ne;if(B.children.length===1)ne={offset:B.offset+1,length:B.length-2,content:""};else if(B.children.length-1===X){let ce=B.children[X-1],fe=ce.offset+ce.length,ue=B.offset+B.length;ne={offset:fe,length:ue-2-fe,content:""}}else ne={offset:ae.offset,length:B.children[X+1].offset-ae.offset,content:""};return a(A,ne,C)}else if(I!==void 0){let X,ae=`${JSON.stringify(I)}`;if(!C.isArrayInsertion&&B.children.length>F){let ne=B.children[F];X={offset:ne.offset,length:ne.length,content:ae}}else if(B.children.length===0||F===0)X={offset:B.offset+1,length:0,content:B.children.length===0?ae:ae+","};else{let ne=F>B.children.length?B.children.length:F,ce=B.children[ne-1];X={offset:ce.offset+ce.length,length:0,content:","+ae}}return a(A,X,C)}else throw new Error(`Can not ${I===void 0?"remove":C.isArrayInsertion?"insert":"modify"} Array index ${Q} as length is not sufficient`)}else throw new Error(`Can not add ${typeof F!="number"?"index":"property"} to parent of type ${B.type}`);else{if(I===void 0)throw new Error("Can not delete in empty document");return a(A,{offset:N?N.offset:0,length:N?N.length:0,content:JSON.stringify(I)},C)}}t.setProperty=n;function a(A,f,I){if(!I.formattingOptions)return[f];let C=o(A,f),b=f.offset,E=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;b>0&&!(0,VMr.isEOL)(C,b-1);)b--;for(;E=0;F--){let Q=N[F];C=o(C,Q),b=Math.min(b,Q.offset),E=Math.max(E,Q.offset+Q.length),E+=Q.content.length-Q.length}let B=A.length-(C.length-E)-b;return[{offset:b,length:B,content:C.substring(b,E)}]}function o(A,f){return A.substring(0,f.offset)+f.content+A.substring(f.offset+f.length)}t.applyEdit=o;function l(A,f){return`\r - `.indexOf(A.charAt(f))!==-1}t.isWS=l})});var _xe=H((ars,gDt)=>{var Pol=ZMr(),ors=srs(),Wol=oDt(),Cte=LMr();(function(e){if(typeof gDt=="object"&&typeof gDt.exports=="object"){var t=e(wt,ars);t!==void 0&&(gDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=Wol.createScanner;var r;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var n;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(n||(t.SyntaxKind=n={})),t.getLocation=Cte.getLocation,t.parse=Cte.parse,t.parseTree=Cte.parseTree,t.findNodeAtLocation=Cte.findNodeAtLocation,t.findNodeAtOffset=Cte.findNodeAtOffset,t.getNodePath=Cte.getNodePath,t.getNodeValue=Cte.getNodeValue,t.visit=Cte.visit,t.stripComments=Cte.stripComments;var a;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(I){switch(I){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function l(I,C,b){return Pol.format(I,C,b)}t.format=l;function A(I,C,b,E){return ors.setProperty(I,C,b,E)}t.modify=A;function f(I,C){let b=C.slice(0).sort((N,B)=>{let F=N.offset-B.offset;return F===0?N.length-B.length:F}),E=I.length;for(let N=b.length-1;N>=0;N--){let B=b[N];if(B.offset+B.length<=E)I=ors.applyEdit(I,B);else throw new Error("Overlapping edit");E=B.offset}return I}t.applyEdits=f})});var OMr=H(yxe=>{"use strict";Object.defineProperty(yxe,"__esModule",{value:!0});yxe.JsonWorkspaceMetadata=yxe.JsonWorkspaceSymbol=void 0;var crs=_xe();yxe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function lrs(e){return e.replace("~","~0").replace("/","~1")}var WMr=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,n){this.filePath=t,this.ast=r,this.raw=n}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,crs.findNodeAtLocation)(this.ast,t);return r&&(0,crs.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,n){let a="";for(let l=0;llrs(l)).join("/");for(let l of this.changes.keys())l.startsWith(o+"/")&&this.changes.delete(l);this.changes.set(o,{jsonPath:t,type:n,value:r})}};yxe.JsonWorkspaceMetadata=WMr});var Ars=H(MMr=>{"use strict";Object.defineProperty(MMr,"__esModule",{value:!0});MMr.createVirtualAstObject=Mol;var Ool=RNt();function Mol(e,t={}){let r=(n,a,o,l)=>{t.listener&&(o===l||JSON.stringify(o)===JSON.stringify(l)||(Array.isArray(a)?t.listener(n.slice(0,-1),a):t.listener(n,l)))};return grs(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function grs(e,t,r,n=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,l){if(!(n.has(l)||a&&!a.has(l)))return Reflect.getOwnPropertyDescriptor(o,l)},has(o,l){return typeof l=="symbol"||n.has(l)?!1:Reflect.has(o,l)},get(o,l){if(n.has(l)||a&&!a.has(l))return;let A=Reflect.get(o,l);return typeof l=="symbol"?A:(0,Ool.isJsonObject)(A)&&!(A instanceof Map)||Array.isArray(A)?grs(A,[...t,l],r):A},set(o,l,A){if(n.has(l)||a&&!a.has(l))return!1;if(A===void 0)return this.deleteProperty?.(o,l)??!1;if(typeof l=="symbol")return Reflect.set(o,l,A);let f=urs(o,l);return Reflect.set(o,l,A)?(r([...t,l],o,f,A),!0):!1},deleteProperty(o,l){if(n.has(l))return!1;if(typeof l=="symbol")return Reflect.deleteProperty(o,l);let A=urs(o,l);return Reflect.deleteProperty(o,l)&&r([...t,l],o,A,void 0),!0},defineProperty(o,l,A){return typeof l=="symbol"?Reflect.defineProperty(o,l,A):!1},ownKeys(o){return Reflect.ownKeys(o).filter(l=>!n.has(l)&&(!a||a.has(l)))}})}function urs(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var frs=H(HMr=>{"use strict";Object.defineProperty(HMr,"__esModule",{value:!0});HMr.readJsonWorkspace=Qol;var _te=_xe(),dDt=$Ce(),drs=aMr(),prs=OMr(),ADt=Ars(),Hol=Object.freeze(["cli","newProjectRoot","schematics"]),Yol=Object.freeze(["cli","schematics","projectType","i18n"]);async function Qol(e,t,r={}){let n=await t.readFile(e);if(n===void 0)throw new Error("Unable to read workspace file.");let a=(0,_te.parseTree)(n,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,_te.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let l=o.value;if(l!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${l} ]`);let A={host:t,metadata:new prs.JsonWorkspaceMetadata(e,a,n),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...Hol,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...Yol,...r.allowedProjectExtensions??[]]),error(I,C){throw new Error(I)},warn(I,C){console.warn(I)}};return Xol(a,A)}function Xol(e,t){let r=t.metadata,n,a;t.trackChanges||(a=Object.create(null));let o=(0,_te.getNodeValue)(e);for(let[f,I]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let C=(0,_te.findNodeAtLocation)(e,["projects"]);if(!(0,dDt.isJsonObject)(I)||!C){t.error('Invalid "projects" field found; expected an object.',I);continue}n=Jol(C,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=I);let l;t.trackChanges&&(l=(f,I)=>{r.addChange(["projects",f],I,"project")});let A=new drs.ProjectDefinitionCollection(n,l);return{[prs.JsonWorkspaceSymbol]:r,projects:A,extensions:a??(0,ADt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,I){r.addChange(f,I)}})}}function Jol(e,t){let r=Object.create(null);for(let[n,a]of Object.entries((0,_te.getNodeValue)(e))){let o=(0,_te.findNodeAtLocation)(e,[n]);if(!(0,dDt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[n]=Uol(n,o,t)}return r}function Uol(e,t,r){let n=r.metadata,a,o=!1,l,A;r.trackChanges||(l=Object.create(null),A=Object.create(null));let f=(0,_te.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[N,B]of Object.entries(f))switch(N){case"targets":case"architect":{let F=(0,_te.findNodeAtLocation)(t,[N]);if(!(0,dDt.isJsonObject)(B)||!F){r.error(`Invalid "${N}" field found; expected an object.`,B);break}o=!0,a=Kol(e,F,r),n.hasLegacyTargetsName=N==="architect";break}case"prefix":case"root":case"sourceRoot":typeof B!="string"&&r.warn(`Project property "${N}" should be a string.`,B),A&&(A[N]=B);break;default:!r.unprefixedProjectExtensions.has(N)&&!/^[a-z]{1,3}-.*/.test(N)&&r.warn(`Project '${e}' contains extension with invalid name (${N}).`,N),l&&(l[N]=B);break}let I;r.trackChanges&&(I=(N,B,F)=>{o?n.addChange(["projects",e,"targets",N],B,"target"):n.addChange(["projects",e,"targets"],F,"targetcollection")});let C={targets:new drs.TargetDefinitionCollection(a,I),extensions:l??(0,ADt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(N,B){n.addChange(["projects",e,...N],B)}})},b=new Set(Object.keys(C)),E=A??(0,ADt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...b],listener(N,B){b.has(N[0])||n.addChange(["projects",e,...N],B)}});return Object.assign(E,C)}function Kol(e,t,r){let n=r.metadata,a=Object.create(null);for(let[o,l]of Object.entries((0,_te.getNodeValue)(t))){if(!(0,dDt.isJsonObject)(l)){r.warn("Skipping invalid target value; expected an object.",l);continue}r.trackChanges?a[o]=(0,ADt.createVirtualAstObject)(l,{include:["builder","options","configurations","defaultConfiguration"],listener(A,f){n.addChange(["projects",e,"targets",o,...A],f)}}):a[o]=l}return a}});var Crs=H(QMr=>{"use strict";Object.defineProperty(QMr,"__esModule",{value:!0});QMr.writeJsonWorkspace=qol;var Irs=_xe(),jol=wt("node:os"),zol=OMr();async function qol(e,t,r,n={}){let a=e[zol.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=ral(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=$ol(e,n.schema),l=JSON.stringify(o,null,2);return t.writeFile(r,l)}}function $ol(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...oje(e.projects)?{}:{projects:hrs(e.projects)}}}function hrs(e){let t=Object.create(null);for(let[r,n]of e)t[r]=mrs(n);return t}function mrs(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[n,a]of e.targets)t[n]=YMr(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function oje(e){return e===void 0||Object.keys(e).length===0}function YMr(e){return{builder:e.builder,...oje(e.options)?{}:{options:e.options},...oje(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function eal(e){let t=Object.create(null);for(let[r,n]of e)t[r]=YMr(n);return t}function tal(e,t){if(e!==void 0)switch(t){case"project":return mrs(e);case"projectcollection":{let r=hrs(e);return oje(r)?void 0:r}case"target":return YMr(e);case"targetcollection":{let r=eal(e);return oje(r)?void 0:r}default:return e}}function ral(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:n}=e;for(let{jsonPath:a,value:o,type:l}of r.values()){n&&a[2]==="targets"&&(a[2]="architect");let A=(0,Irs.modify)(t,a,tal(o,l),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:nal(t)}});t=(0,Irs.applyEdits)(t,A)}return t}function nal(e){let t=`\r +`.indexOf(A.charAt(f))!==-1}t.isEOL=l})});var YMr=H((Crs,dDt)=>{var mrs=uDt();(function(e){if(typeof dDt=="object"&&typeof dDt.exports=="object"){var t=e(wt,Crs);t!==void 0&&(dDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(B){B.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function n(B,F){let Q=[],X=new Object,ae,ne={value:{},offset:0,length:0,type:"object",parent:void 0},ce=!1;function fe(ue,de,be,Se){ne.value=ue,ne.offset=de,ne.length=be,ne.type=Se,ne.colonOffset=void 0,ae=ne}try{b(B,{onObjectBegin:(ue,de)=>{if(F<=ue)throw X;ae=void 0,ce=F>ue,Q.push("")},onObjectProperty:(ue,de,be)=>{if(F{if(F<=ue)throw X;ae=void 0,Q.pop()},onArrayBegin:(ue,de)=>{if(F<=ue)throw X;ae=void 0,Q.push(0)},onArrayEnd:(ue,de)=>{if(F<=ue)throw X;ae=void 0,Q.pop()},onLiteralValue:(ue,de,be)=>{if(F{if(F<=de)throw X;if(ue===":"&&ae&&ae.type==="property")ae.colonOffset=de,ce=!1,ae=void 0;else if(ue===","){let Se=Q[Q.length-1];typeof Se=="number"?Q[Q.length-1]=Se+1:(ce=!0,Q[Q.length-1]=""),ae=void 0}}})}catch(ue){if(ue!==X)throw ue}return{path:Q,previousNode:ae,isAtPropertyKey:ce,matches:ue=>{let de=0;for(let be=0;de{let ue={};ce(ue),ne.push(ae),ae=ue,X=null},onObjectProperty:ue=>{X=ue},onObjectEnd:()=>{ae=ne.pop()},onArrayBegin:()=>{let ue=[];ce(ue),ne.push(ae),ae=ue,X=null},onArrayEnd:()=>{ae=ne.pop()},onLiteralValue:ce,onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q),ae[0]}t.parse=a;function o(B,F=[],Q=r.DEFAULT){let X={type:"array",offset:-1,length:-1,children:[],parent:void 0};function ae(ue){X.type==="property"&&(X.length=ue-X.offset,X=X.parent)}function ne(ue){return X.children.push(ue),ue}b(B,{onObjectBegin:ue=>{X=ne({type:"object",offset:ue,length:-1,parent:X,children:[]})},onObjectProperty:(ue,de,be)=>{X=ne({type:"property",offset:de,length:-1,parent:X,children:[]}),X.children.push({type:"string",value:ue,offset:de,length:be,parent:X})},onObjectEnd:(ue,de)=>{ae(ue+de),X.length=ue+de-X.offset,X=X.parent,ae(ue+de)},onArrayBegin:(ue,de)=>{X=ne({type:"array",offset:ue,length:-1,parent:X,children:[]})},onArrayEnd:(ue,de)=>{X.length=ue+de-X.offset,X=X.parent,ae(ue+de)},onLiteralValue:(ue,de,be)=>{ne({type:N(ue),offset:de,length:be,parent:X,value:ue}),ae(de+be)},onSeparator:(ue,de,be)=>{X.type==="property"&&(ue===":"?X.colonOffset=de:ue===","&&ae(de))},onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q);let fe=X.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function l(B,F){if(!B)return;let Q=B;for(let X of F)if(typeof X=="string"){if(Q.type!=="object"||!Array.isArray(Q.children))return;let ae=!1;for(let ne of Q.children)if(Array.isArray(ne.children)&&ne.children[0].value===X&&ne.children.length===2){Q=ne.children[1],ae=!0;break}if(!ae)return}else{let ae=X;if(Q.type!=="array"||ae<0||!Array.isArray(Q.children)||ae>=Q.children.length)return;Q=Q.children[ae]}return Q}t.findNodeAtLocation=l;function A(B){if(!B.parent||!B.parent.children)return[];let F=A(B.parent);if(B.parent.type==="property"){let Q=B.parent.children[0].value;F.push(Q)}else if(B.parent.type==="array"){let Q=B.parent.children.indexOf(B);Q!==-1&&F.push(Q)}return F}t.getNodePath=A;function f(B){switch(B.type){case"array":return B.children.map(f);case"object":let F=Object.create(null);for(let Q of B.children){let X=Q.children[1];X&&(F[Q.children[0].value]=f(X))}return F;case"null":case"string":case"number":case"boolean":return B.value;default:return}}t.getNodeValue=f;function I(B,F,Q=!1){return F>=B.offset&&Fne===0&&cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter()):()=>!0}function fe(cr){return cr?Ar=>ne===0&&cr(Ar,X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter()):()=>!0}function ue(cr){return cr?Ar=>ne===0&&cr(Ar,X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter(),()=>ae.slice()):()=>!0}function de(cr){return cr?()=>{ne>0?ne++:cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter(),()=>ae.slice())===!1&&(ne=1)}:()=>!0}function be(cr){return cr?()=>{ne>0&&ne--,ne===0&&cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter())}:()=>!0}let Se=de(F.onObjectBegin),De=ue(F.onObjectProperty),k=be(F.onObjectEnd),et=de(F.onArrayBegin),ct=be(F.onArrayEnd),Me=ue(F.onLiteralValue),je=fe(F.onSeparator),St=ce(F.onComment),At=fe(F.onError),Yt=Q&&Q.disallowComments,Tr=Q&&Q.allowTrailingComma;function Nr(){for(;;){let cr=X.scan();switch(X.getTokenError()){case 4:er(14);break;case 5:er(15);break;case 3:er(13);break;case 1:Yt||er(11);break;case 2:er(12);break;case 6:er(16);break}switch(cr){case 12:case 13:Yt?er(10):St();break;case 16:er(1);break;case 15:case 14:break;default:return cr}}}function er(cr,Ar=[],qr=[]){if(At(cr),Ar.length+qr.length>0){let _n=X.getToken();for(;_n!==17;){if(Ar.indexOf(_n)!==-1){Nr();break}else if(qr.indexOf(_n)!==-1)break;_n=Nr()}}}function vt(cr){let Ar=X.getTokenValue();return cr?Me(Ar):(De(Ar),ae.push(Ar)),Nr(),!0}function xt(){switch(X.getToken()){case 11:let cr=X.getTokenValue(),Ar=Number(cr);isNaN(Ar)&&(er(2),Ar=0),Me(Ar);break;case 7:Me(null);break;case 8:Me(!0);break;case 9:Me(!1);break;default:return!1}return Nr(),!0}function Zr(){return X.getToken()!==10?(er(3,[],[2,5]),!1):(vt(!1),X.getToken()===6?(je(":"),Nr(),lr()||er(4,[],[2,5])):er(5,[],[2,5]),ae.pop(),!0)}function qt(){Se(),Nr();let cr=!1;for(;X.getToken()!==2&&X.getToken()!==17;){if(X.getToken()===5){if(cr||er(4,[],[]),je(","),Nr(),X.getToken()===2&&Tr)break}else cr&&er(6,[],[]);Zr()||er(4,[],[2,5]),cr=!0}return k(),X.getToken()!==2?er(7,[2],[]):Nr(),!0}function Xt(){et(),Nr();let cr=!0,Ar=!1;for(;X.getToken()!==4&&X.getToken()!==17;){if(X.getToken()===5){if(Ar||er(4,[],[]),je(","),Nr(),X.getToken()===4&&Tr)break}else Ar&&er(6,[],[]);cr?(ae.push(0),cr=!1):ae[ae.length-1]++,lr()||er(4,[],[4,5]),Ar=!0}return ct(),cr||ae.pop(),X.getToken()!==4?er(8,[4],[]):Nr(),!0}function lr(){switch(X.getToken()){case 3:return Xt();case 1:return qt();case 10:return vt(!0);default:return xt()}}return Nr(),X.getToken()===17?Q.allowEmptyContent?!0:(er(4,[],[]),!1):lr()?(X.getToken()!==17&&er(9,[],[]),!0):(er(4,[],[]),!1)}t.visit=b;function E(B,F){let Q=(0,mrs.createScanner)(B),X=[],ae,ne=0,ce;do switch(ce=Q.getPosition(),ae=Q.scan(),ae){case 12:case 13:case 17:ne!==ce&&X.push(B.substring(ne,ce)),F!==void 0&&X.push(Q.getTokenValue().replace(/[^\r\n]/g,F)),ne=Q.getPosition();break}while(ae!==17);return X.join("")}t.stripComments=E;function N(B){switch(typeof B){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(B){if(Array.isArray(B))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=N})});var yrs=H((_rs,pDt)=>{var QMr=HMr(),XMr=YMr();(function(e){if(typeof pDt=="object"&&typeof pDt.exports=="object"){var t=e(wt,_rs);t!==void 0&&(pDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(A,f,I){return n(A,f,void 0,I)}t.removeProperty=r;function n(A,f,I,C){let b=f.slice(),E=[],N=(0,XMr.parseTree)(A,E),B,F;for(;b.length>0&&(F=b.pop(),B=(0,XMr.findNodeAtLocation)(N,b),B===void 0&&I!==void 0);)typeof F=="string"?I={[F]:I}:I=[I];if(B)if(B.type==="object"&&typeof F=="string"&&Array.isArray(B.children)){let Q=(0,XMr.findNodeAtLocation)(B,[F]);if(Q!==void 0)if(I===void 0){if(!Q.parent)throw new Error("Malformed AST");let X=B.children.indexOf(Q.parent),ae,ne=Q.parent.offset+Q.parent.length;if(X>0){let ce=B.children[X-1];ae=ce.offset+ce.length}else ae=B.offset+1,B.children.length>1&&(ne=B.children[1].offset);return a(A,{offset:ae,length:ne-ae,content:""},C)}else return a(A,{offset:Q.offset,length:Q.length,content:JSON.stringify(I)},C);else{if(I===void 0)return[];let X=`${JSON.stringify(F)}: ${JSON.stringify(I)}`,ae=C.getInsertionIndex?C.getInsertionIndex(B.children.map(ce=>ce.children[0].value)):B.children.length,ne;if(ae>0){let ce=B.children[ae-1];ne={offset:ce.offset+ce.length,length:0,content:","+X}}else B.children.length===0?ne={offset:B.offset+1,length:0,content:X}:ne={offset:B.offset+1,length:0,content:X+","};return a(A,ne,C)}}else if(B.type==="array"&&typeof F=="number"&&Array.isArray(B.children)){let Q=F;if(Q===-1){let X=`${JSON.stringify(I)}`,ae;if(B.children.length===0)ae={offset:B.offset+1,length:0,content:X};else{let ne=B.children[B.children.length-1];ae={offset:ne.offset+ne.length,length:0,content:","+X}}return a(A,ae,C)}else if(I===void 0&&B.children.length>=0){let X=F,ae=B.children[X],ne;if(B.children.length===1)ne={offset:B.offset+1,length:B.length-2,content:""};else if(B.children.length-1===X){let ce=B.children[X-1],fe=ce.offset+ce.length,ue=B.offset+B.length;ne={offset:fe,length:ue-2-fe,content:""}}else ne={offset:ae.offset,length:B.children[X+1].offset-ae.offset,content:""};return a(A,ne,C)}else if(I!==void 0){let X,ae=`${JSON.stringify(I)}`;if(!C.isArrayInsertion&&B.children.length>F){let ne=B.children[F];X={offset:ne.offset,length:ne.length,content:ae}}else if(B.children.length===0||F===0)X={offset:B.offset+1,length:0,content:B.children.length===0?ae:ae+","};else{let ne=F>B.children.length?B.children.length:F,ce=B.children[ne-1];X={offset:ce.offset+ce.length,length:0,content:","+ae}}return a(A,X,C)}else throw new Error(`Can not ${I===void 0?"remove":C.isArrayInsertion?"insert":"modify"} Array index ${Q} as length is not sufficient`)}else throw new Error(`Can not add ${typeof F!="number"?"index":"property"} to parent of type ${B.type}`);else{if(I===void 0)throw new Error("Can not delete in empty document");return a(A,{offset:N?N.offset:0,length:N?N.length:0,content:JSON.stringify(I)},C)}}t.setProperty=n;function a(A,f,I){if(!I.formattingOptions)return[f];let C=o(A,f),b=f.offset,E=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;b>0&&!(0,QMr.isEOL)(C,b-1);)b--;for(;E=0;F--){let Q=N[F];C=o(C,Q),b=Math.min(b,Q.offset),E=Math.max(E,Q.offset+Q.length),E+=Q.content.length-Q.length}let B=A.length-(C.length-E)-b;return[{offset:b,length:B,content:C.substring(b,E)}]}function o(A,f){return A.substring(0,f.offset)+f.content+A.substring(f.offset+f.length)}t.applyEdit=o;function l(A,f){return`\r + `.indexOf(A.charAt(f))!==-1}t.isWS=l})});var bxe=H((Ers,fDt)=>{var Dal=HMr(),brs=yrs(),kal=uDt(),_te=YMr();(function(e){if(typeof fDt=="object"&&typeof fDt.exports=="object"){var t=e(wt,Ers);t!==void 0&&(fDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=kal.createScanner;var r;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var n;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(n||(t.SyntaxKind=n={})),t.getLocation=_te.getLocation,t.parse=_te.parse,t.parseTree=_te.parseTree,t.findNodeAtLocation=_te.findNodeAtLocation,t.findNodeAtOffset=_te.findNodeAtOffset,t.getNodePath=_te.getNodePath,t.getNodeValue=_te.getNodeValue,t.visit=_te.visit,t.stripComments=_te.stripComments;var a;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(I){switch(I){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function l(I,C,b){return Dal.format(I,C,b)}t.format=l;function A(I,C,b,E){return brs.setProperty(I,C,b,E)}t.modify=A;function f(I,C){let b=C.slice(0).sort((N,B)=>{let F=N.offset-B.offset;return F===0?N.length-B.length:F}),E=I.length;for(let N=b.length-1;N>=0;N--){let B=b[N];if(B.offset+B.length<=E)I=brs.applyEdit(I,B);else throw new Error("Overlapping edit");E=B.offset}return I}t.applyEdits=f})});var UMr=H(Exe=>{"use strict";Object.defineProperty(Exe,"__esModule",{value:!0});Exe.JsonWorkspaceMetadata=Exe.JsonWorkspaceSymbol=void 0;var Srs=bxe();Exe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function vrs(e){return e.replace("~","~0").replace("/","~1")}var JMr=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,n){this.filePath=t,this.ast=r,this.raw=n}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,Srs.findNodeAtLocation)(this.ast,t);return r&&(0,Srs.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,n){let a="";for(let l=0;lvrs(l)).join("/");for(let l of this.changes.keys())l.startsWith(o+"/")&&this.changes.delete(l);this.changes.set(o,{jsonPath:t,type:n,value:r})}};Exe.JsonWorkspaceMetadata=JMr});var Trs=H(KMr=>{"use strict";Object.defineProperty(KMr,"__esModule",{value:!0});KMr.createVirtualAstObject=Gal;var xal=xNt();function Gal(e,t={}){let r=(n,a,o,l)=>{t.listener&&(o===l||JSON.stringify(o)===JSON.stringify(l)||(Array.isArray(a)?t.listener(n.slice(0,-1),a):t.listener(n,l)))};return wrs(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function wrs(e,t,r,n=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,l){if(!(n.has(l)||a&&!a.has(l)))return Reflect.getOwnPropertyDescriptor(o,l)},has(o,l){return typeof l=="symbol"||n.has(l)?!1:Reflect.has(o,l)},get(o,l){if(n.has(l)||a&&!a.has(l))return;let A=Reflect.get(o,l);return typeof l=="symbol"?A:(0,xal.isJsonObject)(A)&&!(A instanceof Map)||Array.isArray(A)?wrs(A,[...t,l],r):A},set(o,l,A){if(n.has(l)||a&&!a.has(l))return!1;if(A===void 0)return this.deleteProperty?.(o,l)??!1;if(typeof l=="symbol")return Reflect.set(o,l,A);let f=Brs(o,l);return Reflect.set(o,l,A)?(r([...t,l],o,f,A),!0):!1},deleteProperty(o,l){if(n.has(l))return!1;if(typeof l=="symbol")return Reflect.deleteProperty(o,l);let A=Brs(o,l);return Reflect.deleteProperty(o,l)&&r([...t,l],o,A,void 0),!0},defineProperty(o,l,A){return typeof l=="symbol"?Reflect.defineProperty(o,l,A):!1},ownKeys(o){return Reflect.ownKeys(o).filter(l=>!n.has(l)&&(!a||a.has(l)))}})}function Brs(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var Drs=H(jMr=>{"use strict";Object.defineProperty(jMr,"__esModule",{value:!0});jMr.readJsonWorkspace=Lal;var yte=bxe(),hDt=e_e(),Rrs=pMr(),Nrs=UMr(),IDt=Trs(),Fal=Object.freeze(["cli","newProjectRoot","schematics"]),Zal=Object.freeze(["cli","schematics","projectType","i18n"]);async function Lal(e,t,r={}){let n=await t.readFile(e);if(n===void 0)throw new Error("Unable to read workspace file.");let a=(0,yte.parseTree)(n,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,yte.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let l=o.value;if(l!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${l} ]`);let A={host:t,metadata:new Nrs.JsonWorkspaceMetadata(e,a,n),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...Fal,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...Zal,...r.allowedProjectExtensions??[]]),error(I,C){throw new Error(I)},warn(I,C){console.warn(I)}};return Val(a,A)}function Val(e,t){let r=t.metadata,n,a;t.trackChanges||(a=Object.create(null));let o=(0,yte.getNodeValue)(e);for(let[f,I]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let C=(0,yte.findNodeAtLocation)(e,["projects"]);if(!(0,hDt.isJsonObject)(I)||!C){t.error('Invalid "projects" field found; expected an object.',I);continue}n=Pal(C,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=I);let l;t.trackChanges&&(l=(f,I)=>{r.addChange(["projects",f],I,"project")});let A=new Rrs.ProjectDefinitionCollection(n,l);return{[Nrs.JsonWorkspaceSymbol]:r,projects:A,extensions:a??(0,IDt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,I){r.addChange(f,I)}})}}function Pal(e,t){let r=Object.create(null);for(let[n,a]of Object.entries((0,yte.getNodeValue)(e))){let o=(0,yte.findNodeAtLocation)(e,[n]);if(!(0,hDt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[n]=Wal(n,o,t)}return r}function Wal(e,t,r){let n=r.metadata,a,o=!1,l,A;r.trackChanges||(l=Object.create(null),A=Object.create(null));let f=(0,yte.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[N,B]of Object.entries(f))switch(N){case"targets":case"architect":{let F=(0,yte.findNodeAtLocation)(t,[N]);if(!(0,hDt.isJsonObject)(B)||!F){r.error(`Invalid "${N}" field found; expected an object.`,B);break}o=!0,a=Oal(e,F,r),n.hasLegacyTargetsName=N==="architect";break}case"prefix":case"root":case"sourceRoot":typeof B!="string"&&r.warn(`Project property "${N}" should be a string.`,B),A&&(A[N]=B);break;default:!r.unprefixedProjectExtensions.has(N)&&!/^[a-z]{1,3}-.*/.test(N)&&r.warn(`Project '${e}' contains extension with invalid name (${N}).`,N),l&&(l[N]=B);break}let I;r.trackChanges&&(I=(N,B,F)=>{o?n.addChange(["projects",e,"targets",N],B,"target"):n.addChange(["projects",e,"targets"],F,"targetcollection")});let C={targets:new Rrs.TargetDefinitionCollection(a,I),extensions:l??(0,IDt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(N,B){n.addChange(["projects",e,...N],B)}})},b=new Set(Object.keys(C)),E=A??(0,IDt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...b],listener(N,B){b.has(N[0])||n.addChange(["projects",e,...N],B)}});return Object.assign(E,C)}function Oal(e,t,r){let n=r.metadata,a=Object.create(null);for(let[o,l]of Object.entries((0,yte.getNodeValue)(t))){if(!(0,hDt.isJsonObject)(l)){r.warn("Skipping invalid target value; expected an object.",l);continue}r.trackChanges?a[o]=(0,IDt.createVirtualAstObject)(l,{include:["builder","options","configurations","defaultConfiguration"],listener(A,f){n.addChange(["projects",e,"targets",o,...A],f)}}):a[o]=l}return a}});var Frs=H(qMr=>{"use strict";Object.defineProperty(qMr,"__esModule",{value:!0});qMr.writeJsonWorkspace=Yal;var krs=bxe(),Mal=wt("node:os"),Hal=UMr();async function Yal(e,t,r,n={}){let a=e[Hal.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=Ual(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=Qal(e,n.schema),l=JSON.stringify(o,null,2);return t.writeFile(r,l)}}function Qal(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...cje(e.projects)?{}:{projects:xrs(e.projects)}}}function xrs(e){let t=Object.create(null);for(let[r,n]of e)t[r]=Grs(n);return t}function Grs(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[n,a]of e.targets)t[n]=zMr(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function cje(e){return e===void 0||Object.keys(e).length===0}function zMr(e){return{builder:e.builder,...cje(e.options)?{}:{options:e.options},...cje(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function Xal(e){let t=Object.create(null);for(let[r,n]of e)t[r]=zMr(n);return t}function Jal(e,t){if(e!==void 0)switch(t){case"project":return Grs(e);case"projectcollection":{let r=xrs(e);return cje(r)?void 0:r}case"target":return zMr(e);case"targetcollection":{let r=Xal(e);return cje(r)?void 0:r}default:return e}}function Ual(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:n}=e;for(let{jsonPath:a,value:o,type:l}of r.values()){n&&a[2]==="targets"&&(a[2]="architect");let A=(0,krs.modify)(t,a,Jal(o,l),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:Kal(t)}});t=(0,krs.applyEdits)(t,A)}return t}function Kal(e){let t=`\r `,r=` -`,n=e.match(/(?:\r?\n)/g);if(n?.length){let a=n.filter(l=>l===t).length,o=n.length-a;return a>o?t:r}return jol.EOL}});var yrs=H(Ole=>{"use strict";Object.defineProperty(Ole,"__esModule",{value:!0});Ole.WorkspaceFormat=void 0;Ole._test_addWorkspaceFile=oal;Ole._test_removeWorkspaceFile=aal;Ole.readWorkspace=cal;Ole.writeWorkspace=lal;var aje=nDt(),ial=frs(),sal=Crs(),_rs=new WeakMap,b_e;(function(e){e[e.JSON=0]="JSON"})(b_e||(Ole.WorkspaceFormat=b_e={}));function oal(e,t){cje[e]=t}function aal(e){delete cje[e]}var cje={"angular.json":b_e.JSON,".angular.json":b_e.JSON};async function cal(e,t,r){if(await t.isDirectory(e)){let a=(0,aje.normalize)(e),o=!1;for(let[l,A]of Object.entries(cje)){if(r!==void 0&&r!==A)continue;let f=(0,aje.getSystemPath)((0,aje.join)(a,l));if(await t.isFile(f)){e=f,r=A,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,aje.basename)((0,aje.normalize)(e));a in cje&&(r=cje[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let n;switch(r){case b_e.JSON:n=await(0,ial.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return _rs.set(n,b_e.JSON),{workspace:n}}async function lal(e,t,r,n){if(n===void 0&&(n=_rs.get(e),n===void 0))throw new Error("A format is required for custom workspace objects.");switch(n){case b_e.JSON:return(0,sal.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var brs=H(oL=>{"use strict";var ual=oL&&oL.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gal=oL&&oL.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ual(t,e,r)};Object.defineProperty(oL,"__esModule",{value:!0});oL.writeWorkspace=oL.readWorkspace=oL.WorkspaceFormat=oL.createWorkspaceHost=void 0;gal(aMr(),oL);var Aal=zts();Object.defineProperty(oL,"createWorkspaceHost",{enumerable:!0,get:function(){return Aal.createWorkspaceHost}});var XMr=yrs();Object.defineProperty(oL,"WorkspaceFormat",{enumerable:!0,get:function(){return XMr.WorkspaceFormat}});Object.defineProperty(oL,"readWorkspace",{enumerable:!0,get:function(){return XMr.readWorkspace}});Object.defineProperty(oL,"writeWorkspace",{enumerable:!0,get:function(){return XMr.writeWorkspace}})});var Z2=H(IT=>{"use strict";var Ers=IT&&IT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dal=IT&&IT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),JMr=IT&&IT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(fDt,"__esModule",{value:!0});fDt.htmlSelectorFormat=void 0;var hal=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function mal(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of hal)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}fDt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&mal(e)}}});var KMr=H(IDt=>{"use strict";Object.defineProperty(IDt,"__esModule",{value:!0});IDt.pathFormat=void 0;var Cal=Z2();IDt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,Cal.normalize)(e)}}});var jMr=H(Mle=>{"use strict";Object.defineProperty(Mle,"__esModule",{value:!0});Mle.standardFormats=Mle.pathFormat=Mle.htmlSelectorFormat=void 0;var _al=UMr(),yal=KMr(),bal=UMr();Object.defineProperty(Mle,"htmlSelectorFormat",{enumerable:!0,get:function(){return bal.htmlSelectorFormat}});var Eal=KMr();Object.defineProperty(Mle,"pathFormat",{enumerable:!0,get:function(){return Eal.pathFormat}});Mle.standardFormats=[_al.htmlSelectorFormat,yal.pathFormat]});var yH=H(F4=>{"use strict";Object.defineProperty(F4,"__esModule",{value:!0});F4.Tree=F4.TreeSymbol=F4.FileVisitorCancelToken=F4.MergeStrategy=void 0;var Srs;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(Srs||(F4.MergeStrategy=Srs={}));F4.FileVisitorCancelToken=Symbol();F4.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();F4.Tree=Object.freeze({isTree(e){return F4.TreeSymbol in e}})});var Z4=H(hD=>{"use strict";Object.defineProperty(hD,"__esModule",{value:!0});hD.UnimplementedException=hD.UnsuccessfulWorkflowExecution=hD.MergeConflictException=hD.InvalidUpdateRecordException=hD.ContentHasMutatedException=hD.FileAlreadyExistException=hD.FileDoesNotExistException=hD.SchematicsException=void 0;var Hle=Z2(),zMr=class extends Hle.BaseException{};hD.SchematicsException=zMr;var qMr=class extends Hle.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};hD.FileDoesNotExistException=qMr;var $Mr=class extends Hle.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};hD.FileAlreadyExistException=$Mr;var eHr=class extends Hle.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};hD.ContentHasMutatedException=eHr;var tHr=class extends Hle.BaseException{constructor(){super("Invalid record instance.")}};hD.InvalidUpdateRecordException=tHr;var rHr=class extends Hle.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};hD.MergeConflictException=rHr;var nHr=class extends Hle.BaseException{constructor(){super("Workflow did not execute successfully.")}};hD.UnsuccessfulWorkflowExecution=nHr;var iHr=class extends Hle.BaseException{constructor(){super("This function is unimplemented.")}};hD.UnimplementedException=iHr});var mDt=H(hDt=>{"use strict";Object.defineProperty(hDt,"__esModule",{value:!0});hDt.DelegateTree=void 0;var Sal=yH(),sHr=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[Sal.TreeSymbol](){return this}};hDt.DelegateTree=sHr});var vrs=H(bxe=>{"use strict";Object.defineProperty(bxe,"__esModule",{value:!0});bxe.LazyFileEntry=bxe.SimpleFileEntry=void 0;var oHr=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};bxe.SimpleFileEntry=oHr;var aHr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};bxe.LazyFileEntry=aHr});var wrs=H((CDt,Brs)=>{(function(e,t){typeof CDt=="object"&&typeof Brs<"u"?t(CDt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(CDt,function(e){"use strict";let n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Se=0;Se>>=1,Me&&(k=-2147483648|-k),De+k}function A(Se,De,k){let et=De-k;et=et<0?-et<<1|1:et<<1;do{let ct=et&31;et>>>=5,et>0&&(ct|=32),Se.write(a[ct])}while(et>0);return De}function f(Se,De){return Se.pos>=De?!1:Se.peek()!==44}let I=1024*16,C=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Se){return Buffer.from(Se.buffer,Se.byteOffset,Se.byteLength).toString()}}:{decode(Se){let De="";for(let k=0;k0?k+C.decode(De.subarray(0,et)):k}}class E{constructor(De){this.pos=0,this.buffer=De}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(De){let{buffer:k,pos:et}=this,ct=k.indexOf(De,et);return ct===-1?k.length:ct}}let N=[];function B(Se){let{length:De}=Se,k=new E(Se),et=[],ct=[],Me=0;for(;k.pos0&&k.write(44),et[0]=A(k,Me,et[0]),A(k,je,0),A(k,Yt,0);let Nr=ct.length===6?1:0;A(k,Nr,0),ct.length===6&&A(k,ct[5],0);for(let er of Tr)A(k,er,0);for(De++;DeSt||vt===St&&xt>=At)break;De=Q(Se,De,k,et)}return k.write(44),et[0]=A(k,St,et[0]),A(k,At,0),De}function X(Se){let{length:De}=Se,k=new E(Se),et=[],ct=[],Me=0,je=0,St=0,At=0,Yt=0,Tr=0,Nr=0,er=0;do{let vt=k.indexOf(";"),xt=0;for(;k.pos_n;jt--){let Fn=Nr;Nr=l(k,Nr),er=l(k,Nr===Fn?er:0);let Nn=l(k,0);ke.push([Nn,Nr,er])}}else ke=[[_n]];Ar.push(ke)}while(f(k,vt))}qr.bindings=Ar,et.push(qr),ct.push(qr)}Me++,k.pos=vt+1}while(k.pos0&&k.write(44),et[1]=A(k,ct[1],et[1]);let er=(ct.length===6?1:0)|(Tr?2:0)|(Yt?4:0);if(A(k,er,0),ct.length===6){let{4:vt,5:xt}=ct;vt!==et[2]&&(et[3]=0),et[2]=A(k,vt,et[2]),et[3]=A(k,xt,et[3])}if(Tr){let{0:vt,1:xt,2:Zr}=ct.callsite;vt!==et[4]?(et[5]=0,et[6]=0):xt!==et[5]&&(et[6]=0),et[4]=A(k,vt,et[4]),et[5]=A(k,xt,et[5]),et[6]=A(k,Zr,et[6])}if(Nr)for(let vt of Nr){vt.length>1&&A(k,-vt.length,0);let xt=vt[0][0];A(k,xt,0);let Zr=Me,qt=je;for(let Xt=1;XtSt||xt===St&&Zr>=At)break;De=ne(Se,De,k,et)}return et[0]0&&De.write(59),St.length===0)continue;let At=0;for(let Yt=0;Yt0&&De.write(44),At=A(De,Tr[0],At),Tr.length!==1&&(k=A(De,Tr[1],k),et=A(De,Tr[2],et),ct=A(De,Tr[3],ct),Tr.length!==4&&(Me=A(De,Tr[4],Me)))}}return De.flush()}e.decode=fe,e.decodeGeneratedRanges=X,e.decodeOriginalScopes=B,e.encode=be,e.encodeGeneratedRanges=ae,e.encodeOriginalScopes=F,Object.defineProperty(e,"__esModule",{value:!0})})});var krs=H((mzu,Drs)=>{"use strict";var val=wrs(),_Dt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},yDt=class e{constructor(t,r,n){this.start=t,this.end=r,this.original=n,this.intro="",this.outro="",this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var wal=Bal(),uje=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=val.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+wal(this.toString())}};function Tal(e){let t=e.split(` -`),r=t.filter(o=>/^\t+/.test(o)),n=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&n.length===0)return null;if(r.length>=n.length)return" ";let a=n.reduce((o,l)=>{let A=/^ +/.exec(l)[0].length;return Math.min(A,o)},1/0);return new Array(a+1).join(" ")}function Rrs(e,t){let r=e.split(/[/\\]/),n=t.split(/[/\\]/);for(r.pop();r[0]===n[0];)r.shift(),n.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(n).join("/")}var Ral=Object.prototype.toString;function Nrs(e){return Ral.call(e)==="[object Object]"}function cHr(e){let t=e.split(` -`),r=[];for(let n=0,a=0;n>1;al===t).length,o=n.length-a;return a>o?t:r}return Mal.EOL}});var Lrs=H(Mle=>{"use strict";Object.defineProperty(Mle,"__esModule",{value:!0});Mle.WorkspaceFormat=void 0;Mle._test_addWorkspaceFile=qal;Mle._test_removeWorkspaceFile=$al;Mle.readWorkspace=ecl;Mle.writeWorkspace=tcl;var lje=aDt(),jal=Drs(),zal=Frs(),Zrs=new WeakMap,E_e;(function(e){e[e.JSON=0]="JSON"})(E_e||(Mle.WorkspaceFormat=E_e={}));function qal(e,t){uje[e]=t}function $al(e){delete uje[e]}var uje={"angular.json":E_e.JSON,".angular.json":E_e.JSON};async function ecl(e,t,r){if(await t.isDirectory(e)){let a=(0,lje.normalize)(e),o=!1;for(let[l,A]of Object.entries(uje)){if(r!==void 0&&r!==A)continue;let f=(0,lje.getSystemPath)((0,lje.join)(a,l));if(await t.isFile(f)){e=f,r=A,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,lje.basename)((0,lje.normalize)(e));a in uje&&(r=uje[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let n;switch(r){case E_e.JSON:n=await(0,jal.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return Zrs.set(n,E_e.JSON),{workspace:n}}async function tcl(e,t,r,n){if(n===void 0&&(n=Zrs.get(e),n===void 0))throw new Error("A format is required for custom workspace objects.");switch(n){case E_e.JSON:return(0,zal.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var Vrs=H(oL=>{"use strict";var rcl=oL&&oL.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ncl=oL&&oL.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&rcl(t,e,r)};Object.defineProperty(oL,"__esModule",{value:!0});oL.writeWorkspace=oL.readWorkspace=oL.WorkspaceFormat=oL.createWorkspaceHost=void 0;ncl(pMr(),oL);var icl=drs();Object.defineProperty(oL,"createWorkspaceHost",{enumerable:!0,get:function(){return icl.createWorkspaceHost}});var $Mr=Lrs();Object.defineProperty(oL,"WorkspaceFormat",{enumerable:!0,get:function(){return $Mr.WorkspaceFormat}});Object.defineProperty(oL,"readWorkspace",{enumerable:!0,get:function(){return $Mr.readWorkspace}});Object.defineProperty(oL,"writeWorkspace",{enumerable:!0,get:function(){return $Mr.writeWorkspace}})});var Z2=H(IT=>{"use strict";var Prs=IT&&IT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),scl=IT&&IT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),eHr=IT&&IT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(CDt,"__esModule",{value:!0});CDt.htmlSelectorFormat=void 0;var lcl=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function ucl(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of lcl)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}CDt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&ucl(e)}}});var rHr=H(_Dt=>{"use strict";Object.defineProperty(_Dt,"__esModule",{value:!0});_Dt.pathFormat=void 0;var gcl=Z2();_Dt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,gcl.normalize)(e)}}});var nHr=H(Hle=>{"use strict";Object.defineProperty(Hle,"__esModule",{value:!0});Hle.standardFormats=Hle.pathFormat=Hle.htmlSelectorFormat=void 0;var Acl=tHr(),dcl=rHr(),pcl=tHr();Object.defineProperty(Hle,"htmlSelectorFormat",{enumerable:!0,get:function(){return pcl.htmlSelectorFormat}});var fcl=rHr();Object.defineProperty(Hle,"pathFormat",{enumerable:!0,get:function(){return fcl.pathFormat}});Hle.standardFormats=[Acl.htmlSelectorFormat,dcl.pathFormat]});var yH=H(F4=>{"use strict";Object.defineProperty(F4,"__esModule",{value:!0});F4.Tree=F4.TreeSymbol=F4.FileVisitorCancelToken=F4.MergeStrategy=void 0;var Wrs;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(Wrs||(F4.MergeStrategy=Wrs={}));F4.FileVisitorCancelToken=Symbol();F4.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();F4.Tree=Object.freeze({isTree(e){return F4.TreeSymbol in e}})});var Z4=H(hD=>{"use strict";Object.defineProperty(hD,"__esModule",{value:!0});hD.UnimplementedException=hD.UnsuccessfulWorkflowExecution=hD.MergeConflictException=hD.InvalidUpdateRecordException=hD.ContentHasMutatedException=hD.FileAlreadyExistException=hD.FileDoesNotExistException=hD.SchematicsException=void 0;var Yle=Z2(),iHr=class extends Yle.BaseException{};hD.SchematicsException=iHr;var sHr=class extends Yle.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};hD.FileDoesNotExistException=sHr;var oHr=class extends Yle.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};hD.FileAlreadyExistException=oHr;var aHr=class extends Yle.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};hD.ContentHasMutatedException=aHr;var cHr=class extends Yle.BaseException{constructor(){super("Invalid record instance.")}};hD.InvalidUpdateRecordException=cHr;var lHr=class extends Yle.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};hD.MergeConflictException=lHr;var uHr=class extends Yle.BaseException{constructor(){super("Workflow did not execute successfully.")}};hD.UnsuccessfulWorkflowExecution=uHr;var gHr=class extends Yle.BaseException{constructor(){super("This function is unimplemented.")}};hD.UnimplementedException=gHr});var bDt=H(yDt=>{"use strict";Object.defineProperty(yDt,"__esModule",{value:!0});yDt.DelegateTree=void 0;var Icl=yH(),AHr=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[Icl.TreeSymbol](){return this}};yDt.DelegateTree=AHr});var Ors=H(Sxe=>{"use strict";Object.defineProperty(Sxe,"__esModule",{value:!0});Sxe.LazyFileEntry=Sxe.SimpleFileEntry=void 0;var dHr=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};Sxe.SimpleFileEntry=dHr;var pHr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};Sxe.LazyFileEntry=pHr});var Hrs=H((EDt,Mrs)=>{(function(e,t){typeof EDt=="object"&&typeof Mrs<"u"?t(EDt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(EDt,function(e){"use strict";let n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Se=0;Se>>=1,Me&&(k=-2147483648|-k),De+k}function A(Se,De,k){let et=De-k;et=et<0?-et<<1|1:et<<1;do{let ct=et&31;et>>>=5,et>0&&(ct|=32),Se.write(a[ct])}while(et>0);return De}function f(Se,De){return Se.pos>=De?!1:Se.peek()!==44}let I=1024*16,C=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Se){return Buffer.from(Se.buffer,Se.byteOffset,Se.byteLength).toString()}}:{decode(Se){let De="";for(let k=0;k0?k+C.decode(De.subarray(0,et)):k}}class E{constructor(De){this.pos=0,this.buffer=De}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(De){let{buffer:k,pos:et}=this,ct=k.indexOf(De,et);return ct===-1?k.length:ct}}let N=[];function B(Se){let{length:De}=Se,k=new E(Se),et=[],ct=[],Me=0;for(;k.pos0&&k.write(44),et[0]=A(k,Me,et[0]),A(k,je,0),A(k,Yt,0);let Nr=ct.length===6?1:0;A(k,Nr,0),ct.length===6&&A(k,ct[5],0);for(let er of Tr)A(k,er,0);for(De++;DeSt||vt===St&&xt>=At)break;De=Q(Se,De,k,et)}return k.write(44),et[0]=A(k,St,et[0]),A(k,At,0),De}function X(Se){let{length:De}=Se,k=new E(Se),et=[],ct=[],Me=0,je=0,St=0,At=0,Yt=0,Tr=0,Nr=0,er=0;do{let vt=k.indexOf(";"),xt=0;for(;k.pos_n;jt--){let Fn=Nr;Nr=l(k,Nr),er=l(k,Nr===Fn?er:0);let Nn=l(k,0);ke.push([Nn,Nr,er])}}else ke=[[_n]];Ar.push(ke)}while(f(k,vt))}qr.bindings=Ar,et.push(qr),ct.push(qr)}Me++,k.pos=vt+1}while(k.pos0&&k.write(44),et[1]=A(k,ct[1],et[1]);let er=(ct.length===6?1:0)|(Tr?2:0)|(Yt?4:0);if(A(k,er,0),ct.length===6){let{4:vt,5:xt}=ct;vt!==et[2]&&(et[3]=0),et[2]=A(k,vt,et[2]),et[3]=A(k,xt,et[3])}if(Tr){let{0:vt,1:xt,2:Zr}=ct.callsite;vt!==et[4]?(et[5]=0,et[6]=0):xt!==et[5]&&(et[6]=0),et[4]=A(k,vt,et[4]),et[5]=A(k,xt,et[5]),et[6]=A(k,Zr,et[6])}if(Nr)for(let vt of Nr){vt.length>1&&A(k,-vt.length,0);let xt=vt[0][0];A(k,xt,0);let Zr=Me,qt=je;for(let Xt=1;XtSt||xt===St&&Zr>=At)break;De=ne(Se,De,k,et)}return et[0]0&&De.write(59),St.length===0)continue;let At=0;for(let Yt=0;Yt0&&De.write(44),At=A(De,Tr[0],At),Tr.length!==1&&(k=A(De,Tr[1],k),et=A(De,Tr[2],et),ct=A(De,Tr[3],ct),Tr.length!==4&&(Me=A(De,Tr[4],Me)))}}return De.flush()}e.decode=fe,e.decodeGeneratedRanges=X,e.decodeOriginalScopes=B,e.encode=be,e.encodeGeneratedRanges=ae,e.encodeOriginalScopes=F,Object.defineProperty(e,"__esModule",{value:!0})})});var Urs=H((Tqu,Jrs)=>{"use strict";var hcl=Hrs(),SDt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},vDt=class e{constructor(t,r,n){this.start=t,this.end=r,this.original=n,this.intro="",this.outro="",this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var Ccl=mcl(),Aje=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=hcl.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+Ccl(this.toString())}};function _cl(e){let t=e.split(` +`),r=t.filter(o=>/^\t+/.test(o)),n=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&n.length===0)return null;if(r.length>=n.length)return" ";let a=n.reduce((o,l)=>{let A=/^ +/.exec(l)[0].length;return Math.min(A,o)},1/0);return new Array(a+1).join(" ")}function Qrs(e,t){let r=e.split(/[/\\]/),n=t.split(/[/\\]/);for(r.pop();r[0]===n[0];)r.shift(),n.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(n).join("/")}var ycl=Object.prototype.toString;function Xrs(e){return ycl.call(e)==="[object Object]"}function fHr(e){let t=e.split(` +`),r=[];for(let n=0,a=0;n>1;a=0&&o>l;){let I=[this.generatedCodeColumn,t,n.line,n.column];a>=0&&I.push(a),this.rawSegments.push(I),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,A=l,l=r.indexOf(` `,l+1)}let f=[this.generatedCodeColumn,t,n.line,n.column];a>=0&&f.push(a),this.rawSegments.push(f),this.advance(r.slice(A+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(r));this.pending=null}addUneditedChunk(t,r,n,a,o){let l=r.start,A=!0,f=!1;for(;l1){for(let n=0;n{let A=o(l.start);l.intro.length&&a.advance(l.intro),l.edited?a.addEdit(r,l.content,A,l.storeName?n.indexOf(l.original):-1):a.addUneditedChunk(r,l,this.original,A,this.sourcemapLocations),l.outro.length&&a.advance(l.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?Rrs(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:n,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new uje(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=Tal(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let n=/^[^\r\n]/gm;if(Nrs(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(C=>{for(let b=C[0];bo?`${t}${I}`:(o=!0,I);this.intro=this.intro.replace(n,l);let A=0,f=this.firstChunk;for(;f;){let I=f.end;if(f.edited)a[A]||(f.content=f.content.replace(n,l),f.content.length&&(o=f.content[f.content.length-1]===` +`)a.line+=1,a.column=0,this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,A=!0,f=!1;else{if(this.hires||A||o.has(l)){let I=[this.generatedCodeColumn,t,a.line,a.column];this.hires==="boundary"?bcl.test(n[l])?f||(this.rawSegments.push(I),f=!0):(this.rawSegments.push(I),f=!1):this.rawSegments.push(I)}a.column+=1,this.generatedCodeColumn+=1,A=!1}l+=1}this.pending=null}advance(t){if(!t)return;let r=t.split(` +`);if(r.length>1){for(let n=0;n{let A=o(l.start);l.intro.length&&a.advance(l.intro),l.edited?a.addEdit(r,l.content,A,l.storeName?n.indexOf(l.original):-1):a.addUneditedChunk(r,l,this.original,A,this.sourcemapLocations),l.outro.length&&a.advance(l.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?Qrs(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:n,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new Aje(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=_cl(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let n=/^[^\r\n]/gm;if(Xrs(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(C=>{for(let b=C[0];bo?`${t}${I}`:(o=!0,I);this.intro=this.intro.replace(n,l);let A=0,f=this.firstChunk;for(;f;){let I=f.end;if(f.edited)a[A]||(f.content=f.content.replace(n,l),f.content.length&&(o=f.content[f.content.length-1]===` `));else for(A=f.start;A=t&&n<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(n);let a=this.byStart[t],o=this.byEnd[r],l=a.previous,A=o.next,f=this.byStart[n];if(!f&&o===this.lastChunk)return this;let I=f?f.previous:this.lastChunk;return l&&(l.next=A),A&&(A.previous=l),I&&(I.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=I,o.next=f||null,I||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,n,a){return a=a||{},this.update(t,r,n,{...a,overwrite:!a.contentOnly})}update(t,r,n,a){if(t=t+this.offset,r=r+this.offset,typeof n!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(Exe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),Exe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,l=a!==void 0?a.overwrite:!1;if(o){let I=this.original.slice(t,r);Object.defineProperty(this.storedNames,I,{writable:!0,value:!0,enumerable:!0})}let A=this.byStart[t],f=this.byEnd[r];if(A){let I=A;for(;I!==f;){if(I.next!==this.byStart[I.end])throw new Error("Cannot overwrite across a split point");I=I.next,I.edit("",!1)}A.edit(n,o,!l)}else{let I=new yDt(t,r,"").edit(n,o);f.next=I,I.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byEnd[t];return n?n.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byStart[t];return n?n.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.intro="",n.outro="",n.edit(""),n=r>n.end?this.byStart[n.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.reset(),n=r>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(lje);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(t=n.outro.lastIndexOf(lje),t!==-1)return n.outro.substr(t+1)+r;r=n.outro+r}if(n.content.length>0){if(t=n.content.lastIndexOf(lje),t!==-1)return n.content.substr(t+1)+r;r=n.content+r}if(n.intro.length>0){if(t=n.intro.lastIndexOf(lje),t!==-1)return n.intro.substr(t+1)+r;r=n.intro+r}}while(n=n.previous);return t=this.intro.lastIndexOf(lje),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let n="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return n;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(n+=a.intro);let l=a.start=r;if(l&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let A=o===a?t-a.start:0,f=l?a.content.length+r-a.end:a.content.length;if(n+=a.content.slice(A,f),a.outro&&(!l||a.end===r)&&(n+=a.outro),l)break;a=a.next}return n}snip(t,r){let n=this.clone();return n.remove(0,t),n.remove(r,n.original.length),n}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,n=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=n?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=cHr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let n=t.split(r);return this.byEnd[r]=t,this.byStart[r]=n,this.byEnd[n.end]=n,t===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let n=this.lastChunk;do{let a=n.end,o=n.trimEnd(r);if(n.end!==a&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.previous}while(n);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let n=this.firstChunk;do{let a=n.end,o=n.trimStart(r);if(n.end!==a&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.next}while(n);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function n(o,l){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(A,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(l.index!=null){let A=n(l,this.original);A!==l[0]&&this.overwrite(l.index,l.index+l[0].length,A)}});else{let o=this.original.match(t);if(o&&o.index!=null){let l=n(o,this.original);l!==o[0]&&this.overwrite(o.index,o.index+o[0].length,l)}}return this}_replaceString(t,r){let{original:n}=this,a=n.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:n}=this,a=t.length;for(let o=n.indexOf(t);o!==-1;o=n.indexOf(t,o+a))n.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},Trs=Object.prototype.hasOwnProperty,lHr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` -`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof yte)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!Nrs(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{Trs.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!Trs.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new yte(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],n;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(l=>{~r.indexOf(l)||r.push(l)})});let a=new bDt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,l)=>{l>0&&a.advance(this.separator);let A=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,I=cHr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(C=>{let b=I(C.start);C.intro.length&&a.advance(C.intro),o.filename?C.edited?a.addEdit(A,C.content,b,C.storeName?r.indexOf(C.original):-1):a.addUneditedChunk(A,C,f.original,b,f.sourcemapLocations):a.advance(C.content),C.outro.length&&a.advance(C.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&A!==-1&&(n===void 0&&(n=[]),n.push(A))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?Rrs(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:n}}generateMap(t){return new uje(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let n=r.content._getRawIndentString();n!==null&&(t[n]||(t[n]=0),t[n]+=1)}),Object.keys(t).sort((r,n)=>t[r]-t[n])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` +`?o=!0:C!=="\r"&&o&&(o=!1,A===f.start||(this._splitChunk(f,A),f=f.next),f.prependRight(t))}A+=1}A=f.end,f=f.next}return this.outro=this.outro.replace(n,l),this}insert(){throw new Error("magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)")}insertLeft(t,r){return vxe.insertLeft||(console.warn("magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead"),vxe.insertLeft=!0),this.appendLeft(t,r)}insertRight(t,r){return vxe.insertRight||(console.warn("magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead"),vxe.insertRight=!0),this.prependRight(t,r)}move(t,r,n){if(t=t+this.offset,r=r+this.offset,n=n+this.offset,n>=t&&n<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(n);let a=this.byStart[t],o=this.byEnd[r],l=a.previous,A=o.next,f=this.byStart[n];if(!f&&o===this.lastChunk)return this;let I=f?f.previous:this.lastChunk;return l&&(l.next=A),A&&(A.previous=l),I&&(I.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=I,o.next=f||null,I||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,n,a){return a=a||{},this.update(t,r,n,{...a,overwrite:!a.contentOnly})}update(t,r,n,a){if(t=t+this.offset,r=r+this.offset,typeof n!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(vxe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),vxe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,l=a!==void 0?a.overwrite:!1;if(o){let I=this.original.slice(t,r);Object.defineProperty(this.storedNames,I,{writable:!0,value:!0,enumerable:!0})}let A=this.byStart[t],f=this.byEnd[r];if(A){let I=A;for(;I!==f;){if(I.next!==this.byStart[I.end])throw new Error("Cannot overwrite across a split point");I=I.next,I.edit("",!1)}A.edit(n,o,!l)}else{let I=new vDt(t,r,"").edit(n,o);f.next=I,I.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byEnd[t];return n?n.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byStart[t];return n?n.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.intro="",n.outro="",n.edit(""),n=r>n.end?this.byStart[n.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.reset(),n=r>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(gje);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(t=n.outro.lastIndexOf(gje),t!==-1)return n.outro.substr(t+1)+r;r=n.outro+r}if(n.content.length>0){if(t=n.content.lastIndexOf(gje),t!==-1)return n.content.substr(t+1)+r;r=n.content+r}if(n.intro.length>0){if(t=n.intro.lastIndexOf(gje),t!==-1)return n.intro.substr(t+1)+r;r=n.intro+r}}while(n=n.previous);return t=this.intro.lastIndexOf(gje),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let n="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return n;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(n+=a.intro);let l=a.start=r;if(l&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let A=o===a?t-a.start:0,f=l?a.content.length+r-a.end:a.content.length;if(n+=a.content.slice(A,f),a.outro&&(!l||a.end===r)&&(n+=a.outro),l)break;a=a.next}return n}snip(t,r){let n=this.clone();return n.remove(0,t),n.remove(r,n.original.length),n}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,n=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=n?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=fHr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let n=t.split(r);return this.byEnd[r]=t,this.byStart[r]=n,this.byEnd[n.end]=n,t===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let n=this.lastChunk;do{let a=n.end,o=n.trimEnd(r);if(n.end!==a&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.previous}while(n);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let n=this.firstChunk;do{let a=n.end,o=n.trimStart(r);if(n.end!==a&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.next}while(n);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function n(o,l){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(A,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(l.index!=null){let A=n(l,this.original);A!==l[0]&&this.overwrite(l.index,l.index+l[0].length,A)}});else{let o=this.original.match(t);if(o&&o.index!=null){let l=n(o,this.original);l!==o[0]&&this.overwrite(o.index,o.index+o[0].length,l)}}return this}_replaceString(t,r){let{original:n}=this,a=n.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:n}=this,a=t.length;for(let o=n.indexOf(t);o!==-1;o=n.indexOf(t,o+a))n.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},Yrs=Object.prototype.hasOwnProperty,IHr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` +`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof bte)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!Xrs(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{Yrs.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!Yrs.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new bte(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],n;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(l=>{~r.indexOf(l)||r.push(l)})});let a=new BDt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,l)=>{l>0&&a.advance(this.separator);let A=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,I=fHr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(C=>{let b=I(C.start);C.intro.length&&a.advance(C.intro),o.filename?C.edited?a.addEdit(A,C.content,b,C.storeName?r.indexOf(C.original):-1):a.addUneditedChunk(A,C,f.original,b,f.sourcemapLocations):a.advance(C.content),C.outro.length&&a.advance(C.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&A!==-1&&(n===void 0&&(n=[]),n.push(A))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?Qrs(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:n}}generateMap(t){return new Aje(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let n=r.content._getRawIndentString();n!==null&&(t[n]||(t[n]=0),t[n]+=1)}),Object.keys(t).sort((r,n)=>t[r]-t[n])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` `;return this.sources.forEach((n,a)=>{let o=n.separator!==void 0?n.separator:this.separator,l=r||a>0&&/\r?\n$/.test(o);n.content.indent(t,{exclude:n.indentExclusionRanges,indentStart:l}),r=n.content.lastChar()===` -`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(n,a)=>a>0?t+n:n)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,n)=>{let a=r.separator!==void 0?r.separator:this.separator;return(n>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let n,a=0;do if(n=this.sources[a++],!n)break;while(!n.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),n,a=this.sources.length-1;do if(n=this.sources[a--],!n){this.intro=this.intro.replace(r,"");break}while(!n.content.trimEndAborted(t));return this}};yte.Bundle=lHr;yte.SourceMap=uje;yte.default=yte;Drs.exports=yte});var gHr=H(Yle=>{"use strict";var Dal=Yle&&Yle.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Yle,"__esModule",{value:!0});Yle.UpdateRecorderBase=Yle.IndexOutOfBoundException=void 0;var kal=Z2(),xal=Dal(krs()),Gal=Z4(),EDt=class extends kal.BaseException{constructor(t,r,n=1/0){super(`Index ${t} outside of range [${r}, ${n}].`)}};Yle.IndexOutOfBoundException=EDt;var uHr=class e{data;bom;_path;content;constructor(t,r,n="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(n,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(l){throw l instanceof TypeError?new Error(`Failed to decode "${r}" as ${n} text.`):l}this._path=r,this.content=new xal.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),n=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&n==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&n==254?new e(t.content,t.path,"utf-16le",!0):r===254&&n==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new EDt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new Gal.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};Yle.UpdateRecorderBase=uHr});var BDt=H(vDt=>{"use strict";Object.defineProperty(vDt,"__esModule",{value:!0});vDt.ScopedTree=void 0;var lw=Z2(),Fal=mDt(),Zal=yH(),gje=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,this._base.path))}get content(){return this._base.content}},SDt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new gje(r,this.scope)}visit(t){return this._base.visit((r,n)=>{t((0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,r)),n&&new gje(n,this.scope))})}},AHr=class e{_base;_root;constructor(t,r){this._base=t;let n=(0,lw.normalize)("/"+r);this._root=new SDt(this._base.getDir(n),n)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let n=this,a=new class extends Fal.DelegateTree{get actions(){return t.actions.map(o=>n._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new gje(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new SDt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.path)),to:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.to))}));return t}[Zal.TreeSymbol](){return this}_fullPath(t){return(0,lw.join)(this._root.scope,(0,lw.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};vDt.ScopedTree=AHr});var E_e=H(t6=>{"use strict";Object.defineProperty(t6,"__esModule",{value:!0});t6.FilterHostTree=t6.HostCreateTree=t6.HostTree=t6.HostDirEntry=void 0;var aL=Z2(),xrs=_xe(),DO=Z4(),Lal=mDt(),Val=vrs(),e6=yH(),Grs=gHr(),Pal=BDt(),Wal=0,wDt=class{parent;path;_host;_tree;constructor(t,r,n,a){this.parent=t,this.path=r,this._host=n,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,aL.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,aL.join)(this.path,t)))}dir(t){return this._tree.getDir((0,aL.join)(this.path,t))}file(t){return this._tree.get((0,aL.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==e6.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((n,a)=>[...n,...t(r.dir(a))],r.subfiles.map(n=>r.file(n)))}return t(this)}};t6.HostDirEntry=wDt;var Sxe=class e{_backend;_id=--Wal;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[e6.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new aL.virtualFs.Empty){this._backend=t,this._record=new aL.virtualFs.CordHost(new aL.virtualFs.SafeReadonlyHost(t)),this._recordSync=new aL.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,aL.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new aL.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof Lal.DelegateTree?this.isAncestorOf(t._other):t instanceof Pal.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=e6.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=e6.MergeStrategy.Overwrite);let n=(r&e6.MergeStrategy.AllowCreationConflict)==e6.MergeStrategy.AllowCreationConflict,a=(r&e6.MergeStrategy.AllowOverwriteConflict)==e6.MergeStrategy.AllowOverwriteConflict,o=(r&e6.MergeStrategy.AllowDeleteConflict)==e6.MergeStrategy.AllowDeleteConflict;t.actions.forEach(l=>{switch(l.kind){case"c":{let{path:A,content:f}=l;if(this._willCreate(A)||this._willOverwrite(A)||this.exists(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!n)throw new DO.MergeConflictException(A);this._record.overwrite(A,f).subscribe()}else this._record.create(A,f).subscribe();return}case"o":{let{path:A,content:f}=l;if(this._willDelete(A)&&!a)throw new DO.MergeConflictException(A);if(this._willOverwrite(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!a)throw new DO.MergeConflictException(A)}this._record.write(A,f).subscribe();return}case"r":{let{path:A,to:f}=l;if(this._willDelete(A))throw new DO.MergeConflictException(A);if(this._willRename(A)){if(this._record.willRenameTo(A,f))return;throw new DO.MergeConflictException(A)}this.rename(A,f);return}case"d":{let{path:A}=l;if(this._willDelete(A))return;if(!this.exists(A)&&!o)throw new DO.MergeConflictException(A);this._recordSync.delete(A);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new DO.FileDoesNotExistException(t);let n=new TextDecoder("utf-8",{fatal:!0});try{return n.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),n=[],a=(0,xrs.parse)(r,n,{allowTrailingComma:!0});if(n[0]){let{error:o,offset:l}=n[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,xrs.printParseErrorCode)(o)} at offset: ${l}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new aL.PathIsDirectoryException(r);return this._recordSync.exists(r)?new Val.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new aL.PathIsFileException(r);let n=this._dirCache.get(r);if(!n){let a=(0,aL.dirname)(r);r===a&&(a=null),n=new wDt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,n)}return n}visit(t){this.root.visit((r,n)=>{t(r,n)})}overwrite(t,r){let n=this._normalizePath(t);if(!this._recordSync.exists(n))throw new DO.FileDoesNotExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(n,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new DO.FileDoesNotExistException(t);return Grs.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof Grs.UpdateRecorderBase){let r=t.path,n=this.get(r);if(n){let a=t.apply(n.content);a.equals(n.content)||this.overwrite(r,a)}else throw new DO.ContentHasMutatedException(r)}else throw new DO.InvalidUpdateRecordException}create(t,r){let n=this._normalizePath(t);if(this._recordSync.exists(n))throw new DO.FileAlreadyExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(n,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new DO.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};t6.HostTree=Sxe;var dHr=class extends Sxe{constructor(t){super();let r=new Sxe(t);r.visit(n=>{let a=r.read(n);a&&this.create(n,a)})}};t6.HostCreateTree=dHr;var pHr=class extends Sxe{constructor(t,r=()=>!0){let n=new aL.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let l=o.pop();if(l===void 0)break;let A=!1;if(a.isDirectory(l).subscribe(C=>A=C),A){a.list(l).subscribe(C=>o.push(...C.map(b=>(0,aL.join)(l,b))));continue}let f=!1;if(a.isFile(l).subscribe(C=>f=C),!f||!r(l))continue;let I=null;a.read(l).subscribe(C=>I=C),I!==null&&n.write(l,I).subscribe()}super(n);for(let l of t.actions)if(r(l.path))switch(l.kind){case"c":this.create(l.path,l.content);break;case"d":this.delete(l.path);break;case"o":this.overwrite(l.path,l.content);break;case"r":this.rename(l.path,l.to);break}}};t6.FilterHostTree=pHr});var Aje=H(vxe=>{"use strict";Object.defineProperty(vxe,"__esModule",{value:!0});vxe.empty=Hal;vxe.branch=Yal;vxe.merge=Qal;vxe.partition=Xal;var Oal=Z4(),TDt=E_e(),Mal=yH();function Hal(){return new TDt.HostTree}function Yal(e){return e.branch()}function Qal(e,t,r=Mal.MergeStrategy.Default){return e.merge(t,r),e}function Xal(e,t){if(e instanceof TDt.HostTree)return[new TDt.FilterHostTree(e,t),new TDt.FilterHostTree(e,(r,n)=>!t(r,n))];throw new Oal.SchematicsException("Tree type is not supported.")}});var Frs=H(Xle=>{"use strict";Object.defineProperty(Xle,"__esModule",{value:!0});Xle.NullTree=Xle.NullTreeDirEntry=Xle.CannotCreateFileException=void 0;var dje=Z2(),Qle=Z4(),Jal=yH(),Ual=gHr(),RDt=class extends dje.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};Xle.CannotCreateFileException=RDt;var pje=class e{path;get parent(){return this.path=="/"?null:new e((0,dje.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,dje.join)(this.path,t))}file(t){return null}visit(){}};Xle.NullTreeDirEntry=pje;var fHr=class e{[Jal.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new pje((0,dje.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new Qle.FileDoesNotExistException(t)}readJson(t){throw new Qle.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new pje((0,dje.normalize)("/"+t))}visit(){}beginUpdate(t){throw new Qle.FileDoesNotExistException(t)}commitUpdate(t){throw new Qle.FileDoesNotExistException(t instanceof Ual.UpdateRecorderBase?t.path:"")}copy(t,r){throw new Qle.FileDoesNotExistException(t)}delete(t){throw new Qle.FileDoesNotExistException(t)}create(t,r){throw new RDt(t)}rename(t,r){throw new Qle.FileDoesNotExistException(t)}overwrite(t,r){throw new Qle.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};Xle.NullTree=fHr});var kDt=H(Jle=>{"use strict";Object.defineProperty(Jle,"__esModule",{value:!0});Jle.InvalidSourceResultException=Jle.InvalidRuleResultException=void 0;Jle.callSource=Kal;Jle.callRule=jal;var Lrs=Z2(),r6=qb(),Vrs=yH();function Prs(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var NDt=class extends Lrs.BaseException{constructor(t){super(`Invalid rule result: ${Prs(t)}.`)}};Jle.InvalidRuleResultException=NDt;var DDt=class extends Lrs.BaseException{constructor(t){super(`Invalid source result: ${Prs(t)}.`)}};Jle.InvalidSourceResultException=DDt;function Kal(e,t){return(0,r6.defer)(async()=>{let r=e(t);if((0,r6.isObservable)(r)&&(r=await(0,r6.lastValueFrom)(r.pipe((0,r6.defaultIfEmpty)(void 0)))),r&&Vrs.TreeSymbol in r)return r;throw new DDt(r)})}function jal(e,t,r){return(0,r6.isObservable)(t)?t.pipe((0,r6.mergeMap)(n=>Zrs(e,n,r))):(0,r6.defer)(()=>Zrs(e,t,r))}async function Zrs(e,t,r){let n=await e(t,r);for(;typeof n=="function";)n=await n(t,r);if(typeof n>"u")return t;if((0,r6.isObservable)(n)&&(n=await(0,r6.lastValueFrom)(n.pipe((0,r6.defaultIfEmpty)(t)))),n&&Vrs.TreeSymbol in n)return n;throw new NDt(n)}});var GDt=H(Bxe=>{"use strict";Object.defineProperty(Bxe,"__esModule",{value:!0});Bxe.SchematicImpl=Bxe.InvalidSchematicsNameException=void 0;var zal=Z2(),fje=qb(),qal=kDt(),$al=BDt(),xDt=class extends zal.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};Bxe.InvalidSchematicsNameException=xDt;var IHr=class{_description;_factory;_collection;_engine;constructor(t,r,n,a){if(this._description=t,this._factory=r,this._collection=n,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new xDt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,n,a){let o=this._engine.createContext(this,n,a);return r.pipe((0,fje.first)(),(0,fje.concatMap)(l=>this._engine.transformOptions(this,t,o).pipe((0,fje.map)(A=>[l,A]))),(0,fje.concatMap)(([l,A])=>{let f,I=!1;return a&&a.scope?(I=!0,f=new $al.ScopedTree(l,a.scope)):f=l,(0,qal.callRule)(this._factory(A),f,o).pipe((0,fje.map)(C=>C===f?l:I?(l.merge(C),l):C))}))}};Bxe.SchematicImpl=IHr});var Wrs=H(L2=>{"use strict";Object.defineProperty(L2,"__esModule",{value:!0});L2.SchematicEngine=L2.TaskScheduler=L2.CollectionImpl=L2.UnknownTaskDependencyException=L2.UnregisteredTaskException=L2.SchematicEngineConflictingException=L2.PrivateSchematicException=L2.UnknownSchematicException=L2.CircularCollectionException=L2.UnknownCollectionException=L2.UnknownUrlSourceProtocol=void 0;var n6=Z2(),FDt=qb(),ecl=yH(),tcl=Frs(),rcl=Aje(),ncl=GDt(),ZDt=class extends n6.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};L2.UnknownUrlSourceProtocol=ZDt;var LDt=class extends n6.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};L2.UnknownCollectionException=LDt;var VDt=class extends n6.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};L2.CircularCollectionException=VDt;var PDt=class extends n6.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};L2.UnknownSchematicException=PDt;var WDt=class extends n6.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};L2.PrivateSchematicException=WDt;var ODt=class extends n6.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};L2.SchematicEngineConflictingException=ODt;var MDt=class extends n6.BaseException{constructor(t,r){let n=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${n}.`)}};L2.UnregisteredTaskException=MDt;var HDt=class extends n6.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};L2.UnknownTaskDependencyException=HDt;var YDt=class{_description;_engine;baseDescriptions;constructor(t,r,n){this._description=t,this._engine=r,this.baseDescriptions=n}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};L2.CollectionImpl=YDt;var QDt=class e{_context;_queue=new n6.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((n,a)=>n+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(n=>{let a=this._taskIds.get(n);if(!a)throw new HDt(n);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),n=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:n,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};L2.TaskScheduler=QDt;var hHr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||ecl.MergeStrategy.Default}createCollection(t,r){let n=this._collectionCache.get(t);if(n)return n;let[a,o]=this._createCollectionDescription(t,r?.description);return n=new YDt(a,this,o),this._collectionCache.set(t,n),this._schematicCache.set(n,new Map),n}_createCollectionDescription(t,r,n){let a=this._host.createCollectionDescription(t,r);if(!a)throw new LDt(t);if(n&&n.has(a.name))throw new VDt(t);let o=new Array;if(a.extends){n=(n||new Set).add(a.name);for(let l of a.extends){let[A,f]=this._createCollectionDescription(l,a,new Set(n));o.unshift(A,...f)}}return[a,o]}createContext(t,r,n){if(r&&r.engine&&r.engine!==this)throw new ODt;let a=!0;n&&n.interactive!=null?a=n.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new n6.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:I},l=this._host.transformContext(o);l&&(o=l);let A=new QDt(o),f=this._host;this._taskSchedulers.push(A);function I(C,b){let E=C.toConfiguration();if(!f.hasTaskExecutor(E.name))throw new MDt(E.name,t.description);return E.dependencies=E.dependencies||[],b&&E.dependencies.unshift(...b),A.schedule(E)}return o}createSchematic(t,r,n=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let l=r.description,A=this._host.createSchematicDescription(t,r.description);if(!A){if(r.baseDescriptions){for(let I of r.baseDescriptions)if(A=this._host.createSchematicDescription(t,I),A){l=I;break}}if(!A)throw new PDt(t,r.description)}if(A.private&&!n)throw new WDt(t,r.description);let f=this._host.getSchematicRuleFactory(A,l);return o=new ncl.SchematicImpl(A,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let n=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)n.push(...this._host.listSchematicNames(a,r));return[...new Set(n)].sort()}transformOptions(t,r,n){return this._host.transformOptions(t.description,r,n)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new tcl.NullTree;case"empty:":return()=>(0,rcl.empty)()}let n=this._host.createSourceFromUrl(t,r);if(!n)throw new ZDt(t.toString());return n}executePostTasks(){let t=new Map;return(0,FDt.from)(this._taskSchedulers).pipe((0,FDt.concatMap)(n=>n.finalize()),(0,FDt.concatMap)(n=>{let{name:a,options:o}=n.configuration,l=t.get(a);return l?l(o,n.context):this._host.createTaskExecutor(a).pipe((0,FDt.concatMap)(A=>(t.set(a,A),A(o,n.context))))}))}};L2.SchematicEngine=hHr});var Mrs=H(Ors=>{"use strict";Object.defineProperty(Ors,"__esModule",{value:!0})});var CHr=H(bte=>{"use strict";var icl=bte&&bte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mHr=bte&&bte.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&icl(t,e,r)};Object.defineProperty(bte,"__esModule",{value:!0});mHr(Wrs(),bte);mHr(Mrs(),bte);mHr(GDt(),bte)});var Hrs=H(_Hr=>{"use strict";Object.defineProperty(_Hr,"__esModule",{value:!0});_Hr.createConsoleLogger=acl;var scl=qb(),ocl=Z2();function acl(e=!1,t=process.stdout,r=process.stderr,n){let a=new ocl.logging.IndentLogger("cling");return a.pipe((0,scl.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let l=n&&n[o.level],A=t;switch(o.level){case"warn":case"fatal":case"error":A=r;break}let f=2e3,I=o.message;for(;I;){let C=I.slice(0,f);I=I.slice(f),A.write(l?l(C):C)}A.write(` -`)}),a}});var Qrs=H(wxe=>{"use strict";Object.defineProperty(wxe,"__esModule",{value:!0});wxe.NodeJsSyncHost=wxe.NodeJsAsyncHost=void 0;var mD=wt("node:fs"),ccl=wt("node:path"),$b=qb(),oC=Z2();async function lcl(e){try{return await mD.promises.access(e,mD.constants.F_OK),!0}catch{return!1}}var XDt;function Yrs(){if(!XDt)try{XDt=wt("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var yHr=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,$b.from)(mD.promises.mkdir((0,oC.getSystemPath)((0,oC.dirname)(t)),{recursive:!0})).pipe((0,$b.mergeMap)(()=>mD.promises.writeFile((0,oC.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,$b.from)(mD.promises.readFile((0,oC.getSystemPath)(t))).pipe((0,$b.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,$b.from)(mD.promises.rm((0,oC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,$b.from)(mD.promises.rename((0,oC.getSystemPath)(t),(0,oC.getSystemPath)(r)))}list(t){return(0,$b.from)(mD.promises.readdir((0,oC.getSystemPath)(t))).pipe((0,$b.map)(r=>r.map(n=>(0,oC.fragment)(n))))}exists(t){return(0,$b.from)(lcl((0,oC.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,$b.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,$b.map)(r=>r.isFile()))}stat(t){return(0,$b.from)(mD.promises.stat((0,oC.getSystemPath)(t)))}watch(t,r){return new $b.Observable(n=>{Yrs();let a=new XDt({persistent:!0});return a.add((0,oC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,$b.publish)(),(0,$b.refCount)())}};wxe.NodeJsAsyncHost=yHr;var bHr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new $b.Observable(n=>{(0,mD.mkdirSync)((0,oC.getSystemPath)((0,oC.dirname)(t)),{recursive:!0}),(0,mD.writeFileSync)((0,oC.getSystemPath)(t),new Uint8Array(r)),n.next(),n.complete()})}read(t){return new $b.Observable(r=>{let n=(0,mD.readFileSync)((0,oC.getSystemPath)(t));r.next(new Uint8Array(n).buffer),r.complete()})}delete(t){return new $b.Observable(r=>{(0,mD.rmSync)((0,oC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new $b.Observable(n=>{let a=(0,oC.getSystemPath)(r);(0,mD.mkdirSync)((0,ccl.dirname)(a),{recursive:!0}),(0,mD.renameSync)((0,oC.getSystemPath)(t),a),n.next(),n.complete()})}list(t){return new $b.Observable(r=>{let n=(0,mD.readdirSync)((0,oC.getSystemPath)(t));r.next(n.map(a=>(0,oC.fragment)(a))),r.complete()})}exists(t){return new $b.Observable(r=>{r.next((0,mD.existsSync)((0,oC.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,$b.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,$b.map)(r=>r.isFile()))}stat(t){return new $b.Observable(r=>{r.next((0,mD.statSync)((0,oC.getSystemPath)(t))),r.complete()})}watch(t,r){return new $b.Observable(n=>{Yrs();let a=new XDt({persistent:!1});return a.add((0,oC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,$b.publish)(),(0,$b.refCount)())}};wxe.NodeJsSyncHost=bHr});var JDt=H(Ule=>{"use strict";var ucl=Ule&&Ule.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Xrs=Ule&&Ule.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ucl(t,e,r)};Object.defineProperty(Ule,"__esModule",{value:!0});Xrs(Hrs(),Ule);Xrs(Qrs(),Ule)});var vHr=H(S_e=>{"use strict";Object.defineProperty(S_e,"__esModule",{value:!0});S_e.ActionList=S_e.UnknownActionException=void 0;S_e.isContentAction=dcl;var gcl=Z2(),EHr=class extends gcl.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};S_e.UnknownActionException=EHr;var Acl=1,SHr=class{_actions=[];_action(t){this._actions.push({...t,id:Acl++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,n=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):n.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let l=t.get(o.path),A=n.get(o.path);l&&(t.delete(o.path),t.set(o.to,l)),A&&(n.delete(o.path),n.set(o.to,A));let f;for(let[I,C]of r.entries())if(C==o.path){f=I;break}f&&r.set(f,o.to),!l&&!A&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,l)=>{this.rename(l,o)}),t.forEach((o,l)=>{this.create(l,o)}),n.forEach((o,l)=>{this.overwrite(l,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};S_e.ActionList=SHr;function dcl(e){return e.kind=="c"||e.kind=="o"}});var wHr=H(KDt=>{"use strict";Object.defineProperty(KDt,"__esModule",{value:!0});KDt.SimpleSinkBase=void 0;var eE=qb(),Jrs=Z4(),pcl=vHr(),UDt=function(){},BHr=class{preCommitAction=UDt;postCommitAction=UDt;preCommit=UDt;postCommit=UDt;_fileAlreadyExistException(t){throw new Jrs.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new Jrs.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,eE.mergeMap)(()=>this._validateFileExists(t.to)),(0,eE.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new pcl.UnknownActionException(t)}}commitSingleAction(t){return(0,eE.concat)(this.validateSingleAction(t),new eE.Observable(r=>{let n=null;switch(t.kind){case"o":n=this._overwriteFile(t.path,t.content);break;case"c":n=this._createFile(t.path,t.content);break;case"r":n=this._renameFile(t.path,t.to);break;case"d":n=this._deleteFile(t.path);break}n?n.subscribe(r):r.complete()})).pipe((0,eE.ignoreElements)())}commit(t){let r=(0,eE.from)(t.actions);return(0,eE.concat)(this.preCommit()||(0,eE.of)(null),(0,eE.defer)(()=>r).pipe((0,eE.concatMap)(n=>{let a=this.preCommitAction(n);return(0,eE.isObservable)(a)||fcl(a)?a:(0,eE.of)(a||n)}),(0,eE.concatMap)(n=>(0,eE.concat)(this.commitSingleAction(n).pipe((0,eE.ignoreElements)()),(0,eE.of)(n))),(0,eE.concatMap)(n=>this.postCommitAction(n)||(0,eE.of)(null))),(0,eE.defer)(()=>this._done()),(0,eE.defer)(()=>this.postCommit()||(0,eE.of)(null))).pipe((0,eE.ignoreElements)(),(0,eE.defaultIfEmpty)(void 0))}};KDt.SimpleSinkBase=BHr;function fcl(e){return!!e&&typeof e.then=="function"}});var zDt=H(jDt=>{"use strict";Object.defineProperty(jDt,"__esModule",{value:!0});jDt.HostSink=void 0;var LR=qb(),Icl=wHr(),THr=class extends Icl.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?LR.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,LR.of)(!0);if(this._filesToDelete.has(t))return(0,LR.of)(!1);for(let[r,n]of this._filesToRename.values())switch(t){case r:return(0,LR.of)(!1);case n:return(0,LR.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),LR.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),LR.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),LR.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),LR.EMPTY}_done(){return(0,LR.concat)((0,LR.from)([...this._filesToDelete.values()]).pipe((0,LR.concatMap)(t=>this._host.delete(t))),(0,LR.from)([...this._filesToRename.entries()]).pipe((0,LR.concatMap)(([t,[r,n]])=>this._host.rename(r,n))),(0,LR.from)([...this._filesToCreate.entries()]).pipe((0,LR.concatMap)(([t,r])=>this._host.write(t,r))),(0,LR.from)([...this._filesToUpdate.entries()]).pipe((0,LR.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,LR.reduce)(()=>{}))}};jDt.HostSink=THr});var NHr=H(qDt=>{"use strict";Object.defineProperty(qDt,"__esModule",{value:!0});qDt.DryRunSink=void 0;var Urs=Z2(),hcl=JDt(),Krs=qb(),mcl=zDt(),RHr=class extends mcl.HostSink{_subject=new Krs.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new Urs.virtualFs.ScopedHost(new hcl.NodeJsSyncHost,(0,Urs.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,n]of this._filesToRename)if(n==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,Krs.of)(void 0)}};qDt.DryRunSink=RHr});var jrs=H($Dt=>{"use strict";Object.defineProperty($Dt,"__esModule",{value:!0});$Dt.BaseWorkflow=void 0;var DHr=Z2(),sx=qb(),Ccl=CHr(),_cl=Z4(),ycl=jMr(),bcl=NHr(),Ecl=zDt(),Scl=E_e(),kHr=class{_engine;_engineHost;_registry;_host;_reporter=new sx.Subject;_lifeCycle=new sx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new DHr.schema.CoreSchemaRegistry(ycl.standardFormats),this._registry.addPostTransform(DHr.schema.transforms.addUndefinedDefaults)),this._engine=new Ccl.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new bcl.DryRunSink(this._host,this._force),n=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return n.unsubscribe(),t?(0,sx.throwError)(new _cl.UnsuccessfulWorkflowExecution):(0,sx.of)()}},...this._dryRun?[]:[new Ecl.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let n=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=n.createSchematic(t.schematic,a),l=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let A={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new DHr.logging.NullLogger,parentContext:r};return this._context.push(A),o.call(t.options,(0,sx.of)(new Scl.HostTree(this._host)),{logger:A.logger}).pipe((0,sx.concatMap)(f=>(0,sx.concat)((0,sx.from)(l).pipe((0,sx.concatMap)(I=>I.commit(f)),(0,sx.ignoreElements)()),(0,sx.of)(f))),(0,sx.concatMap)(()=>this._dryRun?sx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,sx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,sx.defaultIfEmpty)(void 0),(0,sx.last)()))),(0,sx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};$Dt.BaseWorkflow=kHr});var qrs=H(zrs=>{"use strict";Object.defineProperty(zrs,"__esModule",{value:!0})});var ens=H(Kle=>{"use strict";var vcl=Kle&&Kle.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$rs=Kle&&Kle.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&vcl(t,e,r)};Object.defineProperty(Kle,"__esModule",{value:!0});$rs(jrs(),Kle);$rs(qrs(),Kle)});var ekt=H(jG=>{"use strict";Object.defineProperty(jG,"__esModule",{value:!0});jG.source=wcl;jG.empty=Tcl;jG.chain=GHr;jG.apply=Rcl;jG.mergeWith=Ncl;jG.noop=ins;jG.filter=Dcl;jG.asSource=kcl;jG.branchAndMerge=xcl;jG.when=Gcl;jG.partitionApplyMerge=Fcl;jG.forEach=Zcl;jG.composeFileOperators=Lcl;jG.applyToSubtree=Vcl;var jle=qb(),rns=Z4(),tns=E_e(),nns=yH(),Bcl=BDt(),xHr=Aje(),i6=kDt();function wcl(e){return()=>e}function Tcl(){return()=>(0,xHr.empty)()}function GHr(e){return async(t,r)=>{let n;if(Symbol.asyncIterator in e)for await(let a of e)n=(0,i6.callRule)(a,n??t,r);else for(let a of e)n=(0,i6.callRule)(a,n??t,r);return()=>n}}function Rcl(e,t){return r=>(0,i6.callRule)(GHr(t),(0,i6.callSource)(e,r),r)}function Ncl(e,t=nns.MergeStrategy.Default){return(r,n)=>(0,i6.callSource)(e,n).pipe((0,jle.map)(a=>r.merge(a,t||n.strategy)),(0,jle.mapTo)(r))}function ins(){return()=>{}}function Dcl(e){return t=>{if(tns.HostTree.isHostTree(t))return new tns.FilterHostTree(t,e);throw new rns.SchematicsException("Tree type is not supported.")}}function kcl(e){return t=>(0,i6.callRule)(e,(0,xHr.empty)(),t)}function xcl(e,t=nns.MergeStrategy.Default){return(r,n)=>(0,i6.callRule)(e,r.branch(),n).pipe((0,jle.map)(a=>r.merge(a,t||n.strategy)),(0,jle.mapTo)(r))}function Gcl(e,t){return r=>e(r.path,r)?t(r):r}function Fcl(e,t,r){return(n,a)=>{let[o,l]=(0,xHr.partition)(n,e);return(0,jle.concat)((0,i6.callRule)(t,o,a),(0,i6.callRule)(r||ins(),l,a)).pipe((0,jle.toArray)(),(0,jle.map)(([A,f])=>(A.merge(f,a.strategy),A)))}}function Zcl(e){return t=>{t.visit((r,n)=>{if(!n)return;let a=e(n);if(a!==n){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(n.content)||t.overwrite(a.path,a.content)}})}}function Lcl(e){return t=>{let r=t;for(let n of e)if(r=n(r),r===null)return null;return r}}function Vcl(e,t){return(r,n)=>{let a=new Bcl.ScopedTree(r,e);return(0,i6.callRule)(GHr(t),a,n).pipe((0,jle.map)(o=>{if(o===a)return r;throw new rns.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var sns=H(ZHr=>{"use strict";Object.defineProperty(ZHr,"__esModule",{value:!0});ZHr.move=Wcl;var FHr=Z2(),Pcl=ekt();function Wcl(e,t){t===void 0&&(t=e,e="/");let r=(0,FHr.normalize)("/"+e),n=(0,FHr.normalize)("/"+t);return r===n?Pcl.noop:a=>(a.exists(r)?a.rename(r,n):a.getDir(r).visit(o=>{a.rename(o,(0,FHr.join)(n,o.slice(r.length)))}),a)}});var ans=H(LHr=>{"use strict";Object.defineProperty(LHr,"__esModule",{value:!0});LHr.default=Hcl;var Ocl=E_e();function ons(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function Mcl(e,t){return Math.floor(Math.random()*(t-e))+e}function Hcl(e){return()=>{let t="root"in e?e.root:"/",r=new Ocl.HostTree,n="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:Mcl(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(tkt,"__esModule",{value:!0});tkt.externalSchematic=Ycl;tkt.schematic=Qcl;var Txe=qb(),cns=yH(),lns=Aje();function Ycl(e,t,r,n){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,Txe.of)((0,lns.branch)(a)),o,n).pipe((0,Txe.last)(),(0,Txe.map)(f=>(a.merge(f,cns.MergeStrategy.AllowOverwriteConflict),a)))}function Qcl(e,t,r){return(n,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,Txe.of)((0,lns.branch)(n)),a,r).pipe((0,Txe.last)(),(0,Txe.map)(A=>(n.merge(A,cns.MergeStrategy.AllowOverwriteConflict),n)))}});var dns=H(hT=>{"use strict";Object.defineProperty(hT,"__esModule",{value:!0});hT.InvalidPipeException=hT.UnknownPipeException=hT.OptionIsNotDefinedException=hT.TEMPLATE_FILENAME_RE=void 0;hT.applyContentTemplate=VHr;hT.contentTemplate=gns;hT.applyPathTemplate=PHr;hT.pathTemplate=Ans;hT.renameTemplateFiles=Ucl;hT.template=Kcl;hT.applyTemplates=jcl;var Rxe=Z2(),Xcl=wt("node:os"),v_e=ekt();hT.TEMPLATE_FILENAME_RE=/\.template$/;var Ije=class extends Rxe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};hT.OptionIsNotDefinedException=Ije;var rkt=class extends Rxe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};hT.UnknownPipeException=rkt;var nkt=class extends Rxe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};hT.InvalidPipeException=nkt;var Jcl=new TextDecoder("utf-8",{fatal:!0});function VHr(e){return t=>{let{path:r,content:n}=t;try{let a=Jcl.decode(n).replace(/\r?\n/g,Xcl.EOL);return{path:r,content:Buffer.from((0,Rxe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function gns(e){return(0,v_e.forEach)(VHr(e))}function PHr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,n=t.interpolationEnd,a=r.length,o=n.length;return l=>{let A=l.path,f=l.content,I=A,C=A.indexOf(r),b=A.indexOf(n,C+a+1);for(;C!=-1&&b!=-1;){let E=A.substring(C+a,b),N=e[E];if(t.pipeSeparator){let[B,...F]=E.split(t.pipeSeparator);if(N=e[B],typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new Ije(B);N=F.reduce((Q,X)=>{if(!X)return Q;if(!(X in e))throw new rkt(X);let ae=e[X];if(typeof ae!="function")throw new nkt(X);return""+ae(Q)},""+N)}else if(typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new Ije(E);A=A.substring(0,C)+N+A.substring(b+o),C=A.indexOf(t.interpolationStart),b=A.indexOf(t.interpolationEnd,C+a+1)}return{path:(0,Rxe.normalize)(A),content:f}}}function Ans(e){return(0,v_e.forEach)(PHr(e))}function Ucl(){return(0,v_e.forEach)(e=>e.path.match(hT.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,Rxe.normalize)(e.path.replace(hT.TEMPLATE_FILENAME_RE,""))}:e)}function Kcl(e){return(0,v_e.chain)([gns(e),Ans(e)])}function jcl(e){return(0,v_e.forEach)((0,v_e.when)(t=>t.endsWith(".template"),(0,v_e.composeFileOperators)([VHr(e),PHr(e),t=>({content:t.content,path:t.path.replace(hT.TEMPLATE_FILENAME_RE,"")})])))}});var pns=H(WHr=>{"use strict";Object.defineProperty(WHr,"__esModule",{value:!0});WHr.url=qcl;var zcl=wt("url");function qcl(e){let t=(0,zcl.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var fns=H(ikt=>{"use strict";Object.defineProperty(ikt,"__esModule",{value:!0});ikt.EmptyTree=void 0;var $cl=E_e(),OHr=class extends $cl.HostTree{constructor(){super()}};ikt.EmptyTree=OHr});var Nxe=H(wm=>{"use strict";var Ins=wm&&wm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ell=wm&&wm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hns=wm&&wm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(mns,"__esModule",{value:!0})});var akt=H(okt=>{"use strict";Object.defineProperty(okt,"__esModule",{value:!0});okt.ExportStringRef=void 0;var _ns=wt("path"),MHr=class{_ref;_module;_path;constructor(t,r=process.cwd(),n=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,_ns.resolve)(r,a):a,this._module=wt.resolve(this._module),this._path=(0,_ns.dirname)(this._module),n?this._ref=wt(this._module)[o||"default"]:this._ref=wt(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};okt.ExportStringRef=MHr});var YHr=H(HHr=>{"use strict";Object.defineProperty(HHr,"__esModule",{value:!0});HHr.readJsonFile=cll;var oll=wt("fs"),yns=_xe(),all=Z4();function cll(e){let t;try{t=(0,oll.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new all.FileDoesNotExistException(e):a}let r=[],n=(0,yns.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,yns.printParseErrorCode)(a)} at location: ${o}.`)}return n}});var gkt=H(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});Uv.FileSystemEngineHostBase=Uv.SchematicNameCollisionException=Uv.SchematicMissingDescriptionException=Uv.SchematicMissingFieldsException=Uv.CollectionMissingFieldsException=Uv.CollectionMissingSchematicsMapException=Uv.FactoryCannotBeResolvedException=Uv.SchematicMissingFactoryException=Uv.InvalidCollectionJsonException=Uv.CollectionCannotBeResolvedException=void 0;var L4=Z2(),lll=JDt(),bns=wt("fs"),Dxe=wt("path"),hje=qb(),Ens=Nxe(),Sns=YHr(),QHr=class extends L4.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};Uv.CollectionCannotBeResolvedException=QHr;var mje=class extends L4.BaseException{constructor(t,r,n){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;n&&(a=`${a} ${n.message}`),super(a)}};Uv.InvalidCollectionJsonException=mje;var ckt=class extends L4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};Uv.SchematicMissingFactoryException=ckt;var lkt=class extends L4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};Uv.FactoryCannotBeResolvedException=lkt;var XHr=class extends L4.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};Uv.CollectionMissingSchematicsMapException=XHr;var JHr=class extends L4.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};Uv.CollectionMissingFieldsException=JHr;var UHr=class extends L4.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};Uv.SchematicMissingFieldsException=UHr;var KHr=class extends L4.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};Uv.SchematicMissingDescriptionException=KHr;var ukt=class extends L4.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};Uv.SchematicNameCollisionException=ukt;var jHr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let n=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&n.push(a)}return n}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let n=this._resolveCollectionPath(t,r?.path),a=(0,Sns.readJsonFile)(n);if(!a||typeof a!="object"||Array.isArray(a))throw new mje(t,n);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:n});if(!o||!o.name)throw new mje(t,n);let l=Object.keys(o.schematics);for(let A of Object.keys(o.schematics)){let f=o.schematics[A].aliases||[];for(let I of f)if(l.indexOf(I)!=-1)throw new ukt(I);l.push(...f)}return o}createSchematicDescription(t,r){for(let C of Object.keys(r.schematics)){let b=r.schematics[C];if(b.aliases&&b.aliases.indexOf(t)!=-1){t=C;break}}if(!(t in r.schematics))return null;let n=(0,Dxe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let C=a.extends.indexOf(":"),b=C!==-1?a.extends.slice(0,C):null,E=C===-1?a.extends:a.extends.slice(C+1);if(b!==null){let N=this.createCollectionDescription(b);return this.createSchematicDescription(E,N)}else return this.createSchematicDescription(E,r)}if(!a.factory)throw new ckt(t);let o=this._resolveReferenceString(a.factory,n,r);if(!o)throw new lkt(t);let l=a.schema,A;l&&((0,Dxe.isAbsolute)(l)||(l=(0,Dxe.join)(n,l)),A=(0,Sns.readJsonFile)(l));let f=(0,Dxe.join)(n,a.factory),I=(0,bns.existsSync)(f)&&(0,bns.statSync)(f).isDirectory()?f:(0,Dxe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:l,schemaJson:A,name:t,path:I,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let n=r.schematic.description;if(n.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,L4.normalize)((0,Dxe.resolve)(n.path,t.path||""));return new Ens.HostCreateTree(new L4.virtualFs.ScopedHost(new lll.NodeJsSyncHost,a))}}return null}transformOptions(t,r,n){let a=async()=>{let o=r;for(let l of this._transforms){let A=l(t,o,n);o=await((0,hje.isObservable)(A)?(0,hje.lastValueFrom)(A):A)}return o};return(0,hje.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,n)=>n(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,hje.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,hje.throwError)(new Ens.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};Uv.FileSystemEngineHostBase=jHr});var vns=H(Akt=>{"use strict";Object.defineProperty(Akt,"__esModule",{value:!0});Akt.NodePackageName=void 0;Akt.NodePackageName="node-package"});var Bns=H(dkt=>{"use strict";Object.defineProperty(dkt,"__esModule",{value:!0});dkt.RepositoryInitializerName=void 0;dkt.RepositoryInitializerName="repo-init"});var wns=H(pkt=>{"use strict";Object.defineProperty(pkt,"__esModule",{value:!0});pkt.RunSchematicName=void 0;pkt.RunSchematicName="run-schematic"});var Tns=H((rqu,ull)=>{ull.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var Dns=H((nqu,Nns)=>{"use strict";var fkt=Object.assign({},Tns()),Rns=Object.keys(fkt);Object.defineProperty(fkt,"random",{get(){let e=Math.floor(Math.random()*Rns.length),t=Rns[e];return fkt[t]}});Nns.exports=fkt});var zHr=H((iqu,kns)=>{"use strict";kns.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var Gns=H((squ,xns)=>{"use strict";var zle=VK(),gll=zHr(),All={info:zle.blue("\u2139"),success:zle.green("\u2714"),warning:zle.yellow("\u26A0"),error:zle.red("\u2716")},dll={info:zle.blue("i"),success:zle.green("\u221A"),warning:zle.yellow("\u203C"),error:zle.red("\xD7")};xns.exports=gll()?All:dll});var Fns=H((oqu,Ikt)=>{var pll=function(){"use strict";function e(l,A,f,I){var C;typeof A=="object"&&(f=A.depth,I=A.prototype,C=A.filter,A=A.circular);var b=[],E=[],N=typeof Buffer<"u";typeof A>"u"&&(A=!0),typeof f>"u"&&(f=1/0);function B(F,Q){if(F===null)return null;if(Q==0)return F;var X,ae;if(typeof F!="object")return F;if(e.__isArray(F))X=[];else if(e.__isRegExp(F))X=new RegExp(F.source,o(F)),F.lastIndex&&(X.lastIndex=F.lastIndex);else if(e.__isDate(F))X=new Date(F.getTime());else{if(N&&Buffer.isBuffer(F))return Buffer.allocUnsafe?X=Buffer.allocUnsafe(F.length):X=new Buffer(F.length),F.copy(X),X;typeof I>"u"?(ae=Object.getPrototypeOf(F),X=Object.create(ae)):(X=Object.create(I),ae=I)}if(A){var ne=b.indexOf(F);if(ne!=-1)return E[ne];b.push(F),E.push(X)}for(var ce in F){var fe;ae&&(fe=Object.getOwnPropertyDescriptor(ae,ce)),!(fe&&fe.set==null)&&(X[ce]=B(F[ce],Q-1))}return X}return B(l,f)}e.clonePrototype=function(A){if(A===null)return null;var f=function(){};return f.prototype=A,new f};function t(l){return Object.prototype.toString.call(l)}e.__objToStr=t;function r(l){return typeof l=="object"&&t(l)==="[object Date]"}e.__isDate=r;function n(l){return typeof l=="object"&&t(l)==="[object Array]"}e.__isArray=n;function a(l){return typeof l=="object"&&t(l)==="[object RegExp]"}e.__isRegExp=a;function o(l){var A="";return l.global&&(A+="g"),l.ignoreCase&&(A+="i"),l.multiline&&(A+="m"),A}return e.__getRegExpFlags=o,e}();typeof Ikt=="object"&&Ikt.exports&&(Ikt.exports=pll)});var Lns=H((aqu,Zns)=>{var fll=Fns();Zns.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=fll(t[r]))}),e}});var Pns=H((cqu,Vns)=>{Vns.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var Hns=H((lqu,qHr)=>{"use strict";var Ill=Lns(),Cje=Pns(),Ons={nul:0,control:0};qHr.exports=function(t){return Mns(t,Ons)};qHr.exports.config=function(e){return e=Ill(e||{},Ons),function(r){return Mns(r,e)}};function Mns(e,t){if(typeof e!="string")return Wns(e,t);for(var r=0,n=0;n=127&&e<160?t.control:hll(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function hll(e){var t=0,r=Cje.length-1,n;if(eCje[r][1])return!1;for(;r>=t;)if(n=Math.floor((t+r)/2),e>Cje[n][1])t=n+1;else if(e{"use strict";Yns.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var Jns=H((gqu,rYr)=>{"use strict";var mll=wt("readline"),Cll=VK(),Xns=lBe(),hkt=Dns(),mkt=Gns(),_ll=q5(),yll=Hns(),bll=Qns(),Ell=zHr(),{BufferListStream:Sll}=cwr(),$Hr=Symbol("text"),eYr=Symbol("prefixText"),vll=3,tYr=class{constructor(){this.requests=0,this.mutedStream=new Sll,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,n,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&n.includes(vll)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,n,...a])}else Reflect.apply(process.stdin.emit,this,[r,n,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=mll.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},Ckt,_kt=class{constructor(t){Ckt||(Ckt=new tYr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:bll({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!Ell())this._spinner=hkt.line;else if(t===void 0)this._spinner=hkt.dots;else if(t!=="default"&&hkt[t])this._spinner=hkt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[$Hr]}set text(t){this[$Hr]=t,this.updateLineCount()}get prefixText(){return this[eYr]}set prefixText(t){this[eYr]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[eYr],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let n of _ll(r+"--"+this[$Hr]).split(` -`))this.lineCount+=Math.max(1,Math.ceil(yll(n)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=Cll[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let n=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return n+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&Xns.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,Ckt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} -`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&Xns.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(Ckt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:mkt.success,text:t})}fail(t){return this.stopAndPersist({symbol:mkt.error,text:t})}warn(t){return this.stopAndPersist({symbol:mkt.warning,text:t})}info(t){return this.stopAndPersist({symbol:mkt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,n=t.text||this.text,a=typeof n=="string"?" "+n:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} -`),this}},Bll=function(e){return new _kt(e)};rYr.exports=Bll;rYr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new _kt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var Kns=H(kO=>{"use strict";var wll=kO&&kO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Tll=kO&&kO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Rll=kO&&kO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let o=r,l=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=Uns[a.packageManager],!o)throw new _je(a.packageManager);l=a.packageManager}let A=[],f={shell:!0,cwd:Gll.join(n,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let I=[];return a.packageName?(a.command==="install"&&I.push(o.commands.installPackage),I.push(a.packageName)):a.command==="install"&&o.commands.installAll&&I.push(o.commands.installAll),a.allowScripts||(l==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:I.push("--ignore-scripts")),e.registry&&I.push(`--registry="${e.registry}"`),e.force&&I.push("--force"),new Fll.Observable(C=>{let b=(0,xll.default)({text:`Installing packages (${l})...`,discardStdin:process.platform!="win32"}).start(),E=(0,kll.spawn)(l,I,f).on("close",N=>{N===0?(b.succeed("Packages installed successfully."),b.stop(),C.next(),C.complete()):(a.hideOutput&&A.forEach(({stream:B,data:F})=>B.write(F)),b.fail("Package install failed, see above."),C.error(new Zll.UnsuccessfulWorkflowExecution))});a.hideOutput&&(E.stdout?.on("data",N=>A.push({stream:process.stdout,data:N})),E.stderr?.on("data",N=>A.push({stream:process.stderr,data:N})))})}}});var jns=H(Ete=>{"use strict";var Vll=Ete&&Ete.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pll=Ete&&Ete.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wll=Ete&&Ete.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,l=(I,C)=>{let b="ignore",E=C?"ignore":process.stderr,N={stdio:[process.stdin,b,E],shell:!0,cwd:Hll.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((B,F)=>{(0,Mll.spawn)("git",I,N).on("close",Q=>{Q===0?B():F(Q)})})};if(!await l(["--version"]).then(()=>!0,()=>!1))return;if(await l(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){n.logger.info(Oll.tags.oneLine` +`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(n,a)=>a>0?t+n:n)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,n)=>{let a=r.separator!==void 0?r.separator:this.separator;return(n>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let n,a=0;do if(n=this.sources[a++],!n)break;while(!n.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),n,a=this.sources.length-1;do if(n=this.sources[a--],!n){this.intro=this.intro.replace(r,"");break}while(!n.content.trimEndAborted(t));return this}};bte.Bundle=IHr;bte.SourceMap=Aje;bte.default=bte;Jrs.exports=bte});var mHr=H(Qle=>{"use strict";var Ecl=Qle&&Qle.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Qle,"__esModule",{value:!0});Qle.UpdateRecorderBase=Qle.IndexOutOfBoundException=void 0;var Scl=Z2(),vcl=Ecl(Urs()),Bcl=Z4(),wDt=class extends Scl.BaseException{constructor(t,r,n=1/0){super(`Index ${t} outside of range [${r}, ${n}].`)}};Qle.IndexOutOfBoundException=wDt;var hHr=class e{data;bom;_path;content;constructor(t,r,n="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(n,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(l){throw l instanceof TypeError?new Error(`Failed to decode "${r}" as ${n} text.`):l}this._path=r,this.content=new vcl.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),n=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&n==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&n==254?new e(t.content,t.path,"utf-16le",!0):r===254&&n==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new wDt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new Bcl.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};Qle.UpdateRecorderBase=hHr});var NDt=H(RDt=>{"use strict";Object.defineProperty(RDt,"__esModule",{value:!0});RDt.ScopedTree=void 0;var lw=Z2(),wcl=bDt(),Tcl=yH(),dje=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,this._base.path))}get content(){return this._base.content}},TDt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new dje(r,this.scope)}visit(t){return this._base.visit((r,n)=>{t((0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,r)),n&&new dje(n,this.scope))})}},CHr=class e{_base;_root;constructor(t,r){this._base=t;let n=(0,lw.normalize)("/"+r);this._root=new TDt(this._base.getDir(n),n)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let n=this,a=new class extends wcl.DelegateTree{get actions(){return t.actions.map(o=>n._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new dje(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new TDt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.path)),to:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.to))}));return t}[Tcl.TreeSymbol](){return this}_fullPath(t){return(0,lw.join)(this._root.scope,(0,lw.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};RDt.ScopedTree=CHr});var S_e=H(t6=>{"use strict";Object.defineProperty(t6,"__esModule",{value:!0});t6.FilterHostTree=t6.HostCreateTree=t6.HostTree=t6.HostDirEntry=void 0;var aL=Z2(),Krs=bxe(),DO=Z4(),Rcl=bDt(),Ncl=Ors(),e6=yH(),jrs=mHr(),Dcl=NDt(),kcl=0,DDt=class{parent;path;_host;_tree;constructor(t,r,n,a){this.parent=t,this.path=r,this._host=n,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,aL.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,aL.join)(this.path,t)))}dir(t){return this._tree.getDir((0,aL.join)(this.path,t))}file(t){return this._tree.get((0,aL.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==e6.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((n,a)=>[...n,...t(r.dir(a))],r.subfiles.map(n=>r.file(n)))}return t(this)}};t6.HostDirEntry=DDt;var Bxe=class e{_backend;_id=--kcl;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[e6.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new aL.virtualFs.Empty){this._backend=t,this._record=new aL.virtualFs.CordHost(new aL.virtualFs.SafeReadonlyHost(t)),this._recordSync=new aL.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,aL.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new aL.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof Rcl.DelegateTree?this.isAncestorOf(t._other):t instanceof Dcl.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=e6.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=e6.MergeStrategy.Overwrite);let n=(r&e6.MergeStrategy.AllowCreationConflict)==e6.MergeStrategy.AllowCreationConflict,a=(r&e6.MergeStrategy.AllowOverwriteConflict)==e6.MergeStrategy.AllowOverwriteConflict,o=(r&e6.MergeStrategy.AllowDeleteConflict)==e6.MergeStrategy.AllowDeleteConflict;t.actions.forEach(l=>{switch(l.kind){case"c":{let{path:A,content:f}=l;if(this._willCreate(A)||this._willOverwrite(A)||this.exists(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!n)throw new DO.MergeConflictException(A);this._record.overwrite(A,f).subscribe()}else this._record.create(A,f).subscribe();return}case"o":{let{path:A,content:f}=l;if(this._willDelete(A)&&!a)throw new DO.MergeConflictException(A);if(this._willOverwrite(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!a)throw new DO.MergeConflictException(A)}this._record.write(A,f).subscribe();return}case"r":{let{path:A,to:f}=l;if(this._willDelete(A))throw new DO.MergeConflictException(A);if(this._willRename(A)){if(this._record.willRenameTo(A,f))return;throw new DO.MergeConflictException(A)}this.rename(A,f);return}case"d":{let{path:A}=l;if(this._willDelete(A))return;if(!this.exists(A)&&!o)throw new DO.MergeConflictException(A);this._recordSync.delete(A);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new DO.FileDoesNotExistException(t);let n=new TextDecoder("utf-8",{fatal:!0});try{return n.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),n=[],a=(0,Krs.parse)(r,n,{allowTrailingComma:!0});if(n[0]){let{error:o,offset:l}=n[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,Krs.printParseErrorCode)(o)} at offset: ${l}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new aL.PathIsDirectoryException(r);return this._recordSync.exists(r)?new Ncl.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new aL.PathIsFileException(r);let n=this._dirCache.get(r);if(!n){let a=(0,aL.dirname)(r);r===a&&(a=null),n=new DDt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,n)}return n}visit(t){this.root.visit((r,n)=>{t(r,n)})}overwrite(t,r){let n=this._normalizePath(t);if(!this._recordSync.exists(n))throw new DO.FileDoesNotExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(n,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new DO.FileDoesNotExistException(t);return jrs.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof jrs.UpdateRecorderBase){let r=t.path,n=this.get(r);if(n){let a=t.apply(n.content);a.equals(n.content)||this.overwrite(r,a)}else throw new DO.ContentHasMutatedException(r)}else throw new DO.InvalidUpdateRecordException}create(t,r){let n=this._normalizePath(t);if(this._recordSync.exists(n))throw new DO.FileAlreadyExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(n,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new DO.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};t6.HostTree=Bxe;var _Hr=class extends Bxe{constructor(t){super();let r=new Bxe(t);r.visit(n=>{let a=r.read(n);a&&this.create(n,a)})}};t6.HostCreateTree=_Hr;var yHr=class extends Bxe{constructor(t,r=()=>!0){let n=new aL.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let l=o.pop();if(l===void 0)break;let A=!1;if(a.isDirectory(l).subscribe(C=>A=C),A){a.list(l).subscribe(C=>o.push(...C.map(b=>(0,aL.join)(l,b))));continue}let f=!1;if(a.isFile(l).subscribe(C=>f=C),!f||!r(l))continue;let I=null;a.read(l).subscribe(C=>I=C),I!==null&&n.write(l,I).subscribe()}super(n);for(let l of t.actions)if(r(l.path))switch(l.kind){case"c":this.create(l.path,l.content);break;case"d":this.delete(l.path);break;case"o":this.overwrite(l.path,l.content);break;case"r":this.rename(l.path,l.to);break}}};t6.FilterHostTree=yHr});var pje=H(wxe=>{"use strict";Object.defineProperty(wxe,"__esModule",{value:!0});wxe.empty=Fcl;wxe.branch=Zcl;wxe.merge=Lcl;wxe.partition=Vcl;var xcl=Z4(),kDt=S_e(),Gcl=yH();function Fcl(){return new kDt.HostTree}function Zcl(e){return e.branch()}function Lcl(e,t,r=Gcl.MergeStrategy.Default){return e.merge(t,r),e}function Vcl(e,t){if(e instanceof kDt.HostTree)return[new kDt.FilterHostTree(e,t),new kDt.FilterHostTree(e,(r,n)=>!t(r,n))];throw new xcl.SchematicsException("Tree type is not supported.")}});var zrs=H(Jle=>{"use strict";Object.defineProperty(Jle,"__esModule",{value:!0});Jle.NullTree=Jle.NullTreeDirEntry=Jle.CannotCreateFileException=void 0;var fje=Z2(),Xle=Z4(),Pcl=yH(),Wcl=mHr(),xDt=class extends fje.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};Jle.CannotCreateFileException=xDt;var Ije=class e{path;get parent(){return this.path=="/"?null:new e((0,fje.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,fje.join)(this.path,t))}file(t){return null}visit(){}};Jle.NullTreeDirEntry=Ije;var bHr=class e{[Pcl.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new Ije((0,fje.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new Xle.FileDoesNotExistException(t)}readJson(t){throw new Xle.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new Ije((0,fje.normalize)("/"+t))}visit(){}beginUpdate(t){throw new Xle.FileDoesNotExistException(t)}commitUpdate(t){throw new Xle.FileDoesNotExistException(t instanceof Wcl.UpdateRecorderBase?t.path:"")}copy(t,r){throw new Xle.FileDoesNotExistException(t)}delete(t){throw new Xle.FileDoesNotExistException(t)}create(t,r){throw new xDt(t)}rename(t,r){throw new Xle.FileDoesNotExistException(t)}overwrite(t,r){throw new Xle.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};Jle.NullTree=bHr});var ZDt=H(Ule=>{"use strict";Object.defineProperty(Ule,"__esModule",{value:!0});Ule.InvalidSourceResultException=Ule.InvalidRuleResultException=void 0;Ule.callSource=Ocl;Ule.callRule=Mcl;var $rs=Z2(),r6=qb(),ens=yH();function tns(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var GDt=class extends $rs.BaseException{constructor(t){super(`Invalid rule result: ${tns(t)}.`)}};Ule.InvalidRuleResultException=GDt;var FDt=class extends $rs.BaseException{constructor(t){super(`Invalid source result: ${tns(t)}.`)}};Ule.InvalidSourceResultException=FDt;function Ocl(e,t){return(0,r6.defer)(async()=>{let r=e(t);if((0,r6.isObservable)(r)&&(r=await(0,r6.lastValueFrom)(r.pipe((0,r6.defaultIfEmpty)(void 0)))),r&&ens.TreeSymbol in r)return r;throw new FDt(r)})}function Mcl(e,t,r){return(0,r6.isObservable)(t)?t.pipe((0,r6.mergeMap)(n=>qrs(e,n,r))):(0,r6.defer)(()=>qrs(e,t,r))}async function qrs(e,t,r){let n=await e(t,r);for(;typeof n=="function";)n=await n(t,r);if(typeof n>"u")return t;if((0,r6.isObservable)(n)&&(n=await(0,r6.lastValueFrom)(n.pipe((0,r6.defaultIfEmpty)(t)))),n&&ens.TreeSymbol in n)return n;throw new GDt(n)}});var VDt=H(Txe=>{"use strict";Object.defineProperty(Txe,"__esModule",{value:!0});Txe.SchematicImpl=Txe.InvalidSchematicsNameException=void 0;var Hcl=Z2(),hje=qb(),Ycl=ZDt(),Qcl=NDt(),LDt=class extends Hcl.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};Txe.InvalidSchematicsNameException=LDt;var EHr=class{_description;_factory;_collection;_engine;constructor(t,r,n,a){if(this._description=t,this._factory=r,this._collection=n,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new LDt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,n,a){let o=this._engine.createContext(this,n,a);return r.pipe((0,hje.first)(),(0,hje.concatMap)(l=>this._engine.transformOptions(this,t,o).pipe((0,hje.map)(A=>[l,A]))),(0,hje.concatMap)(([l,A])=>{let f,I=!1;return a&&a.scope?(I=!0,f=new Qcl.ScopedTree(l,a.scope)):f=l,(0,Ycl.callRule)(this._factory(A),f,o).pipe((0,hje.map)(C=>C===f?l:I?(l.merge(C),l):C))}))}};Txe.SchematicImpl=EHr});var rns=H(L2=>{"use strict";Object.defineProperty(L2,"__esModule",{value:!0});L2.SchematicEngine=L2.TaskScheduler=L2.CollectionImpl=L2.UnknownTaskDependencyException=L2.UnregisteredTaskException=L2.SchematicEngineConflictingException=L2.PrivateSchematicException=L2.UnknownSchematicException=L2.CircularCollectionException=L2.UnknownCollectionException=L2.UnknownUrlSourceProtocol=void 0;var n6=Z2(),PDt=qb(),Xcl=yH(),Jcl=zrs(),Ucl=pje(),Kcl=VDt(),WDt=class extends n6.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};L2.UnknownUrlSourceProtocol=WDt;var ODt=class extends n6.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};L2.UnknownCollectionException=ODt;var MDt=class extends n6.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};L2.CircularCollectionException=MDt;var HDt=class extends n6.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};L2.UnknownSchematicException=HDt;var YDt=class extends n6.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};L2.PrivateSchematicException=YDt;var QDt=class extends n6.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};L2.SchematicEngineConflictingException=QDt;var XDt=class extends n6.BaseException{constructor(t,r){let n=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${n}.`)}};L2.UnregisteredTaskException=XDt;var JDt=class extends n6.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};L2.UnknownTaskDependencyException=JDt;var UDt=class{_description;_engine;baseDescriptions;constructor(t,r,n){this._description=t,this._engine=r,this.baseDescriptions=n}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};L2.CollectionImpl=UDt;var KDt=class e{_context;_queue=new n6.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((n,a)=>n+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(n=>{let a=this._taskIds.get(n);if(!a)throw new JDt(n);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),n=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:n,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};L2.TaskScheduler=KDt;var SHr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||Xcl.MergeStrategy.Default}createCollection(t,r){let n=this._collectionCache.get(t);if(n)return n;let[a,o]=this._createCollectionDescription(t,r?.description);return n=new UDt(a,this,o),this._collectionCache.set(t,n),this._schematicCache.set(n,new Map),n}_createCollectionDescription(t,r,n){let a=this._host.createCollectionDescription(t,r);if(!a)throw new ODt(t);if(n&&n.has(a.name))throw new MDt(t);let o=new Array;if(a.extends){n=(n||new Set).add(a.name);for(let l of a.extends){let[A,f]=this._createCollectionDescription(l,a,new Set(n));o.unshift(A,...f)}}return[a,o]}createContext(t,r,n){if(r&&r.engine&&r.engine!==this)throw new QDt;let a=!0;n&&n.interactive!=null?a=n.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new n6.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:I},l=this._host.transformContext(o);l&&(o=l);let A=new KDt(o),f=this._host;this._taskSchedulers.push(A);function I(C,b){let E=C.toConfiguration();if(!f.hasTaskExecutor(E.name))throw new XDt(E.name,t.description);return E.dependencies=E.dependencies||[],b&&E.dependencies.unshift(...b),A.schedule(E)}return o}createSchematic(t,r,n=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let l=r.description,A=this._host.createSchematicDescription(t,r.description);if(!A){if(r.baseDescriptions){for(let I of r.baseDescriptions)if(A=this._host.createSchematicDescription(t,I),A){l=I;break}}if(!A)throw new HDt(t,r.description)}if(A.private&&!n)throw new YDt(t,r.description);let f=this._host.getSchematicRuleFactory(A,l);return o=new Kcl.SchematicImpl(A,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let n=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)n.push(...this._host.listSchematicNames(a,r));return[...new Set(n)].sort()}transformOptions(t,r,n){return this._host.transformOptions(t.description,r,n)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new Jcl.NullTree;case"empty:":return()=>(0,Ucl.empty)()}let n=this._host.createSourceFromUrl(t,r);if(!n)throw new WDt(t.toString());return n}executePostTasks(){let t=new Map;return(0,PDt.from)(this._taskSchedulers).pipe((0,PDt.concatMap)(n=>n.finalize()),(0,PDt.concatMap)(n=>{let{name:a,options:o}=n.configuration,l=t.get(a);return l?l(o,n.context):this._host.createTaskExecutor(a).pipe((0,PDt.concatMap)(A=>(t.set(a,A),A(o,n.context))))}))}};L2.SchematicEngine=SHr});var ins=H(nns=>{"use strict";Object.defineProperty(nns,"__esModule",{value:!0})});var BHr=H(Ete=>{"use strict";var jcl=Ete&&Ete.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vHr=Ete&&Ete.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&jcl(t,e,r)};Object.defineProperty(Ete,"__esModule",{value:!0});vHr(rns(),Ete);vHr(ins(),Ete);vHr(VDt(),Ete)});var sns=H(wHr=>{"use strict";Object.defineProperty(wHr,"__esModule",{value:!0});wHr.createConsoleLogger=$cl;var zcl=qb(),qcl=Z2();function $cl(e=!1,t=process.stdout,r=process.stderr,n){let a=new qcl.logging.IndentLogger("cling");return a.pipe((0,zcl.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let l=n&&n[o.level],A=t;switch(o.level){case"warn":case"fatal":case"error":A=r;break}let f=2e3,I=o.message;for(;I;){let C=I.slice(0,f);I=I.slice(f),A.write(l?l(C):C)}A.write(` +`)}),a}});var ans=H(Rxe=>{"use strict";Object.defineProperty(Rxe,"__esModule",{value:!0});Rxe.NodeJsSyncHost=Rxe.NodeJsAsyncHost=void 0;var mD=wt("node:fs"),ell=wt("node:path"),$b=qb(),oC=Z2();async function tll(e){try{return await mD.promises.access(e,mD.constants.F_OK),!0}catch{return!1}}var jDt;function ons(){if(!jDt)try{jDt=wt("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var THr=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,$b.from)(mD.promises.mkdir((0,oC.getSystemPath)((0,oC.dirname)(t)),{recursive:!0})).pipe((0,$b.mergeMap)(()=>mD.promises.writeFile((0,oC.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,$b.from)(mD.promises.readFile((0,oC.getSystemPath)(t))).pipe((0,$b.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,$b.from)(mD.promises.rm((0,oC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,$b.from)(mD.promises.rename((0,oC.getSystemPath)(t),(0,oC.getSystemPath)(r)))}list(t){return(0,$b.from)(mD.promises.readdir((0,oC.getSystemPath)(t))).pipe((0,$b.map)(r=>r.map(n=>(0,oC.fragment)(n))))}exists(t){return(0,$b.from)(tll((0,oC.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,$b.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,$b.map)(r=>r.isFile()))}stat(t){return(0,$b.from)(mD.promises.stat((0,oC.getSystemPath)(t)))}watch(t,r){return new $b.Observable(n=>{ons();let a=new jDt({persistent:!0});return a.add((0,oC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,$b.publish)(),(0,$b.refCount)())}};Rxe.NodeJsAsyncHost=THr;var RHr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new $b.Observable(n=>{(0,mD.mkdirSync)((0,oC.getSystemPath)((0,oC.dirname)(t)),{recursive:!0}),(0,mD.writeFileSync)((0,oC.getSystemPath)(t),new Uint8Array(r)),n.next(),n.complete()})}read(t){return new $b.Observable(r=>{let n=(0,mD.readFileSync)((0,oC.getSystemPath)(t));r.next(new Uint8Array(n).buffer),r.complete()})}delete(t){return new $b.Observable(r=>{(0,mD.rmSync)((0,oC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new $b.Observable(n=>{let a=(0,oC.getSystemPath)(r);(0,mD.mkdirSync)((0,ell.dirname)(a),{recursive:!0}),(0,mD.renameSync)((0,oC.getSystemPath)(t),a),n.next(),n.complete()})}list(t){return new $b.Observable(r=>{let n=(0,mD.readdirSync)((0,oC.getSystemPath)(t));r.next(n.map(a=>(0,oC.fragment)(a))),r.complete()})}exists(t){return new $b.Observable(r=>{r.next((0,mD.existsSync)((0,oC.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,$b.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,$b.map)(r=>r.isFile()))}stat(t){return new $b.Observable(r=>{r.next((0,mD.statSync)((0,oC.getSystemPath)(t))),r.complete()})}watch(t,r){return new $b.Observable(n=>{ons();let a=new jDt({persistent:!1});return a.add((0,oC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,$b.publish)(),(0,$b.refCount)())}};Rxe.NodeJsSyncHost=RHr});var zDt=H(Kle=>{"use strict";var rll=Kle&&Kle.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),cns=Kle&&Kle.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&rll(t,e,r)};Object.defineProperty(Kle,"__esModule",{value:!0});cns(sns(),Kle);cns(ans(),Kle)});var kHr=H(v_e=>{"use strict";Object.defineProperty(v_e,"__esModule",{value:!0});v_e.ActionList=v_e.UnknownActionException=void 0;v_e.isContentAction=sll;var nll=Z2(),NHr=class extends nll.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};v_e.UnknownActionException=NHr;var ill=1,DHr=class{_actions=[];_action(t){this._actions.push({...t,id:ill++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,n=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):n.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let l=t.get(o.path),A=n.get(o.path);l&&(t.delete(o.path),t.set(o.to,l)),A&&(n.delete(o.path),n.set(o.to,A));let f;for(let[I,C]of r.entries())if(C==o.path){f=I;break}f&&r.set(f,o.to),!l&&!A&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,l)=>{this.rename(l,o)}),t.forEach((o,l)=>{this.create(l,o)}),n.forEach((o,l)=>{this.overwrite(l,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};v_e.ActionList=DHr;function sll(e){return e.kind=="c"||e.kind=="o"}});var GHr=H($Dt=>{"use strict";Object.defineProperty($Dt,"__esModule",{value:!0});$Dt.SimpleSinkBase=void 0;var eE=qb(),lns=Z4(),oll=kHr(),qDt=function(){},xHr=class{preCommitAction=qDt;postCommitAction=qDt;preCommit=qDt;postCommit=qDt;_fileAlreadyExistException(t){throw new lns.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new lns.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,eE.mergeMap)(()=>this._validateFileExists(t.to)),(0,eE.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new oll.UnknownActionException(t)}}commitSingleAction(t){return(0,eE.concat)(this.validateSingleAction(t),new eE.Observable(r=>{let n=null;switch(t.kind){case"o":n=this._overwriteFile(t.path,t.content);break;case"c":n=this._createFile(t.path,t.content);break;case"r":n=this._renameFile(t.path,t.to);break;case"d":n=this._deleteFile(t.path);break}n?n.subscribe(r):r.complete()})).pipe((0,eE.ignoreElements)())}commit(t){let r=(0,eE.from)(t.actions);return(0,eE.concat)(this.preCommit()||(0,eE.of)(null),(0,eE.defer)(()=>r).pipe((0,eE.concatMap)(n=>{let a=this.preCommitAction(n);return(0,eE.isObservable)(a)||all(a)?a:(0,eE.of)(a||n)}),(0,eE.concatMap)(n=>(0,eE.concat)(this.commitSingleAction(n).pipe((0,eE.ignoreElements)()),(0,eE.of)(n))),(0,eE.concatMap)(n=>this.postCommitAction(n)||(0,eE.of)(null))),(0,eE.defer)(()=>this._done()),(0,eE.defer)(()=>this.postCommit()||(0,eE.of)(null))).pipe((0,eE.ignoreElements)(),(0,eE.defaultIfEmpty)(void 0))}};$Dt.SimpleSinkBase=xHr;function all(e){return!!e&&typeof e.then=="function"}});var tkt=H(ekt=>{"use strict";Object.defineProperty(ekt,"__esModule",{value:!0});ekt.HostSink=void 0;var LR=qb(),cll=GHr(),FHr=class extends cll.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?LR.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,LR.of)(!0);if(this._filesToDelete.has(t))return(0,LR.of)(!1);for(let[r,n]of this._filesToRename.values())switch(t){case r:return(0,LR.of)(!1);case n:return(0,LR.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),LR.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),LR.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),LR.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),LR.EMPTY}_done(){return(0,LR.concat)((0,LR.from)([...this._filesToDelete.values()]).pipe((0,LR.concatMap)(t=>this._host.delete(t))),(0,LR.from)([...this._filesToRename.entries()]).pipe((0,LR.concatMap)(([t,[r,n]])=>this._host.rename(r,n))),(0,LR.from)([...this._filesToCreate.entries()]).pipe((0,LR.concatMap)(([t,r])=>this._host.write(t,r))),(0,LR.from)([...this._filesToUpdate.entries()]).pipe((0,LR.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,LR.reduce)(()=>{}))}};ekt.HostSink=FHr});var LHr=H(rkt=>{"use strict";Object.defineProperty(rkt,"__esModule",{value:!0});rkt.DryRunSink=void 0;var uns=Z2(),lll=zDt(),gns=qb(),ull=tkt(),ZHr=class extends ull.HostSink{_subject=new gns.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new uns.virtualFs.ScopedHost(new lll.NodeJsSyncHost,(0,uns.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,n]of this._filesToRename)if(n==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,gns.of)(void 0)}};rkt.DryRunSink=ZHr});var Ans=H(nkt=>{"use strict";Object.defineProperty(nkt,"__esModule",{value:!0});nkt.BaseWorkflow=void 0;var VHr=Z2(),sx=qb(),gll=BHr(),All=Z4(),dll=nHr(),pll=LHr(),fll=tkt(),Ill=S_e(),PHr=class{_engine;_engineHost;_registry;_host;_reporter=new sx.Subject;_lifeCycle=new sx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new VHr.schema.CoreSchemaRegistry(dll.standardFormats),this._registry.addPostTransform(VHr.schema.transforms.addUndefinedDefaults)),this._engine=new gll.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new pll.DryRunSink(this._host,this._force),n=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return n.unsubscribe(),t?(0,sx.throwError)(new All.UnsuccessfulWorkflowExecution):(0,sx.of)()}},...this._dryRun?[]:[new fll.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let n=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=n.createSchematic(t.schematic,a),l=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let A={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new VHr.logging.NullLogger,parentContext:r};return this._context.push(A),o.call(t.options,(0,sx.of)(new Ill.HostTree(this._host)),{logger:A.logger}).pipe((0,sx.concatMap)(f=>(0,sx.concat)((0,sx.from)(l).pipe((0,sx.concatMap)(I=>I.commit(f)),(0,sx.ignoreElements)()),(0,sx.of)(f))),(0,sx.concatMap)(()=>this._dryRun?sx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,sx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,sx.defaultIfEmpty)(void 0),(0,sx.last)()))),(0,sx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};nkt.BaseWorkflow=PHr});var pns=H(dns=>{"use strict";Object.defineProperty(dns,"__esModule",{value:!0})});var Ins=H(jle=>{"use strict";var hll=jle&&jle.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fns=jle&&jle.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&hll(t,e,r)};Object.defineProperty(jle,"__esModule",{value:!0});fns(Ans(),jle);fns(pns(),jle)});var ikt=H(jG=>{"use strict";Object.defineProperty(jG,"__esModule",{value:!0});jG.source=Cll;jG.empty=_ll;jG.chain=OHr;jG.apply=yll;jG.mergeWith=bll;jG.noop=_ns;jG.filter=Ell;jG.asSource=Sll;jG.branchAndMerge=vll;jG.when=Bll;jG.partitionApplyMerge=wll;jG.forEach=Tll;jG.composeFileOperators=Rll;jG.applyToSubtree=Nll;var zle=qb(),mns=Z4(),hns=S_e(),Cns=yH(),mll=NDt(),WHr=pje(),i6=ZDt();function Cll(e){return()=>e}function _ll(){return()=>(0,WHr.empty)()}function OHr(e){return async(t,r)=>{let n;if(Symbol.asyncIterator in e)for await(let a of e)n=(0,i6.callRule)(a,n??t,r);else for(let a of e)n=(0,i6.callRule)(a,n??t,r);return()=>n}}function yll(e,t){return r=>(0,i6.callRule)(OHr(t),(0,i6.callSource)(e,r),r)}function bll(e,t=Cns.MergeStrategy.Default){return(r,n)=>(0,i6.callSource)(e,n).pipe((0,zle.map)(a=>r.merge(a,t||n.strategy)),(0,zle.mapTo)(r))}function _ns(){return()=>{}}function Ell(e){return t=>{if(hns.HostTree.isHostTree(t))return new hns.FilterHostTree(t,e);throw new mns.SchematicsException("Tree type is not supported.")}}function Sll(e){return t=>(0,i6.callRule)(e,(0,WHr.empty)(),t)}function vll(e,t=Cns.MergeStrategy.Default){return(r,n)=>(0,i6.callRule)(e,r.branch(),n).pipe((0,zle.map)(a=>r.merge(a,t||n.strategy)),(0,zle.mapTo)(r))}function Bll(e,t){return r=>e(r.path,r)?t(r):r}function wll(e,t,r){return(n,a)=>{let[o,l]=(0,WHr.partition)(n,e);return(0,zle.concat)((0,i6.callRule)(t,o,a),(0,i6.callRule)(r||_ns(),l,a)).pipe((0,zle.toArray)(),(0,zle.map)(([A,f])=>(A.merge(f,a.strategy),A)))}}function Tll(e){return t=>{t.visit((r,n)=>{if(!n)return;let a=e(n);if(a!==n){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(n.content)||t.overwrite(a.path,a.content)}})}}function Rll(e){return t=>{let r=t;for(let n of e)if(r=n(r),r===null)return null;return r}}function Nll(e,t){return(r,n)=>{let a=new mll.ScopedTree(r,e);return(0,i6.callRule)(OHr(t),a,n).pipe((0,zle.map)(o=>{if(o===a)return r;throw new mns.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var yns=H(HHr=>{"use strict";Object.defineProperty(HHr,"__esModule",{value:!0});HHr.move=kll;var MHr=Z2(),Dll=ikt();function kll(e,t){t===void 0&&(t=e,e="/");let r=(0,MHr.normalize)("/"+e),n=(0,MHr.normalize)("/"+t);return r===n?Dll.noop:a=>(a.exists(r)?a.rename(r,n):a.getDir(r).visit(o=>{a.rename(o,(0,MHr.join)(n,o.slice(r.length)))}),a)}});var Ens=H(YHr=>{"use strict";Object.defineProperty(YHr,"__esModule",{value:!0});YHr.default=Fll;var xll=S_e();function bns(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function Gll(e,t){return Math.floor(Math.random()*(t-e))+e}function Fll(e){return()=>{let t="root"in e?e.root:"/",r=new xll.HostTree,n="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:Gll(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(skt,"__esModule",{value:!0});skt.externalSchematic=Zll;skt.schematic=Lll;var Nxe=qb(),Sns=yH(),vns=pje();function Zll(e,t,r,n){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,Nxe.of)((0,vns.branch)(a)),o,n).pipe((0,Nxe.last)(),(0,Nxe.map)(f=>(a.merge(f,Sns.MergeStrategy.AllowOverwriteConflict),a)))}function Lll(e,t,r){return(n,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,Nxe.of)((0,vns.branch)(n)),a,r).pipe((0,Nxe.last)(),(0,Nxe.map)(A=>(n.merge(A,Sns.MergeStrategy.AllowOverwriteConflict),n)))}});var Rns=H(hT=>{"use strict";Object.defineProperty(hT,"__esModule",{value:!0});hT.InvalidPipeException=hT.UnknownPipeException=hT.OptionIsNotDefinedException=hT.TEMPLATE_FILENAME_RE=void 0;hT.applyContentTemplate=QHr;hT.contentTemplate=wns;hT.applyPathTemplate=XHr;hT.pathTemplate=Tns;hT.renameTemplateFiles=Wll;hT.template=Oll;hT.applyTemplates=Mll;var Dxe=Z2(),Vll=wt("node:os"),B_e=ikt();hT.TEMPLATE_FILENAME_RE=/\.template$/;var mje=class extends Dxe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};hT.OptionIsNotDefinedException=mje;var okt=class extends Dxe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};hT.UnknownPipeException=okt;var akt=class extends Dxe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};hT.InvalidPipeException=akt;var Pll=new TextDecoder("utf-8",{fatal:!0});function QHr(e){return t=>{let{path:r,content:n}=t;try{let a=Pll.decode(n).replace(/\r?\n/g,Vll.EOL);return{path:r,content:Buffer.from((0,Dxe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function wns(e){return(0,B_e.forEach)(QHr(e))}function XHr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,n=t.interpolationEnd,a=r.length,o=n.length;return l=>{let A=l.path,f=l.content,I=A,C=A.indexOf(r),b=A.indexOf(n,C+a+1);for(;C!=-1&&b!=-1;){let E=A.substring(C+a,b),N=e[E];if(t.pipeSeparator){let[B,...F]=E.split(t.pipeSeparator);if(N=e[B],typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new mje(B);N=F.reduce((Q,X)=>{if(!X)return Q;if(!(X in e))throw new okt(X);let ae=e[X];if(typeof ae!="function")throw new akt(X);return""+ae(Q)},""+N)}else if(typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new mje(E);A=A.substring(0,C)+N+A.substring(b+o),C=A.indexOf(t.interpolationStart),b=A.indexOf(t.interpolationEnd,C+a+1)}return{path:(0,Dxe.normalize)(A),content:f}}}function Tns(e){return(0,B_e.forEach)(XHr(e))}function Wll(){return(0,B_e.forEach)(e=>e.path.match(hT.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,Dxe.normalize)(e.path.replace(hT.TEMPLATE_FILENAME_RE,""))}:e)}function Oll(e){return(0,B_e.chain)([wns(e),Tns(e)])}function Mll(e){return(0,B_e.forEach)((0,B_e.when)(t=>t.endsWith(".template"),(0,B_e.composeFileOperators)([QHr(e),XHr(e),t=>({content:t.content,path:t.path.replace(hT.TEMPLATE_FILENAME_RE,"")})])))}});var Nns=H(JHr=>{"use strict";Object.defineProperty(JHr,"__esModule",{value:!0});JHr.url=Yll;var Hll=wt("url");function Yll(e){let t=(0,Hll.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var Dns=H(ckt=>{"use strict";Object.defineProperty(ckt,"__esModule",{value:!0});ckt.EmptyTree=void 0;var Qll=S_e(),UHr=class extends Qll.HostTree{constructor(){super()}};ckt.EmptyTree=UHr});var kxe=H(wm=>{"use strict";var kns=wm&&wm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Xll=wm&&wm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xns=wm&&wm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Gns,"__esModule",{value:!0})});var gkt=H(ukt=>{"use strict";Object.defineProperty(ukt,"__esModule",{value:!0});ukt.ExportStringRef=void 0;var Zns=wt("path"),KHr=class{_ref;_module;_path;constructor(t,r=process.cwd(),n=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,Zns.resolve)(r,a):a,this._module=wt.resolve(this._module),this._path=(0,Zns.dirname)(this._module),n?this._ref=wt(this._module)[o||"default"]:this._ref=wt(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};ukt.ExportStringRef=KHr});var zHr=H(jHr=>{"use strict";Object.defineProperty(jHr,"__esModule",{value:!0});jHr.readJsonFile=eul;var qll=wt("fs"),Lns=bxe(),$ll=Z4();function eul(e){let t;try{t=(0,qll.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new $ll.FileDoesNotExistException(e):a}let r=[],n=(0,Lns.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,Lns.printParseErrorCode)(a)} at location: ${o}.`)}return n}});var fkt=H(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});Uv.FileSystemEngineHostBase=Uv.SchematicNameCollisionException=Uv.SchematicMissingDescriptionException=Uv.SchematicMissingFieldsException=Uv.CollectionMissingFieldsException=Uv.CollectionMissingSchematicsMapException=Uv.FactoryCannotBeResolvedException=Uv.SchematicMissingFactoryException=Uv.InvalidCollectionJsonException=Uv.CollectionCannotBeResolvedException=void 0;var L4=Z2(),tul=zDt(),Vns=wt("fs"),xxe=wt("path"),Cje=qb(),Pns=kxe(),Wns=zHr(),qHr=class extends L4.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};Uv.CollectionCannotBeResolvedException=qHr;var _je=class extends L4.BaseException{constructor(t,r,n){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;n&&(a=`${a} ${n.message}`),super(a)}};Uv.InvalidCollectionJsonException=_je;var Akt=class extends L4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};Uv.SchematicMissingFactoryException=Akt;var dkt=class extends L4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};Uv.FactoryCannotBeResolvedException=dkt;var $Hr=class extends L4.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};Uv.CollectionMissingSchematicsMapException=$Hr;var eYr=class extends L4.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};Uv.CollectionMissingFieldsException=eYr;var tYr=class extends L4.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};Uv.SchematicMissingFieldsException=tYr;var rYr=class extends L4.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};Uv.SchematicMissingDescriptionException=rYr;var pkt=class extends L4.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};Uv.SchematicNameCollisionException=pkt;var nYr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let n=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&n.push(a)}return n}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let n=this._resolveCollectionPath(t,r?.path),a=(0,Wns.readJsonFile)(n);if(!a||typeof a!="object"||Array.isArray(a))throw new _je(t,n);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:n});if(!o||!o.name)throw new _je(t,n);let l=Object.keys(o.schematics);for(let A of Object.keys(o.schematics)){let f=o.schematics[A].aliases||[];for(let I of f)if(l.indexOf(I)!=-1)throw new pkt(I);l.push(...f)}return o}createSchematicDescription(t,r){for(let C of Object.keys(r.schematics)){let b=r.schematics[C];if(b.aliases&&b.aliases.indexOf(t)!=-1){t=C;break}}if(!(t in r.schematics))return null;let n=(0,xxe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let C=a.extends.indexOf(":"),b=C!==-1?a.extends.slice(0,C):null,E=C===-1?a.extends:a.extends.slice(C+1);if(b!==null){let N=this.createCollectionDescription(b);return this.createSchematicDescription(E,N)}else return this.createSchematicDescription(E,r)}if(!a.factory)throw new Akt(t);let o=this._resolveReferenceString(a.factory,n,r);if(!o)throw new dkt(t);let l=a.schema,A;l&&((0,xxe.isAbsolute)(l)||(l=(0,xxe.join)(n,l)),A=(0,Wns.readJsonFile)(l));let f=(0,xxe.join)(n,a.factory),I=(0,Vns.existsSync)(f)&&(0,Vns.statSync)(f).isDirectory()?f:(0,xxe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:l,schemaJson:A,name:t,path:I,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let n=r.schematic.description;if(n.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,L4.normalize)((0,xxe.resolve)(n.path,t.path||""));return new Pns.HostCreateTree(new L4.virtualFs.ScopedHost(new tul.NodeJsSyncHost,a))}}return null}transformOptions(t,r,n){let a=async()=>{let o=r;for(let l of this._transforms){let A=l(t,o,n);o=await((0,Cje.isObservable)(A)?(0,Cje.lastValueFrom)(A):A)}return o};return(0,Cje.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,n)=>n(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,Cje.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,Cje.throwError)(new Pns.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};Uv.FileSystemEngineHostBase=nYr});var Ons=H(Ikt=>{"use strict";Object.defineProperty(Ikt,"__esModule",{value:!0});Ikt.NodePackageName=void 0;Ikt.NodePackageName="node-package"});var Mns=H(hkt=>{"use strict";Object.defineProperty(hkt,"__esModule",{value:!0});hkt.RepositoryInitializerName=void 0;hkt.RepositoryInitializerName="repo-init"});var Hns=H(mkt=>{"use strict";Object.defineProperty(mkt,"__esModule",{value:!0});mkt.RunSchematicName=void 0;mkt.RunSchematicName="run-schematic"});var Yns=H((A$u,rul)=>{rul.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var Jns=H((d$u,Xns)=>{"use strict";var Ckt=Object.assign({},Yns()),Qns=Object.keys(Ckt);Object.defineProperty(Ckt,"random",{get(){let e=Math.floor(Math.random()*Qns.length),t=Qns[e];return Ckt[t]}});Xns.exports=Ckt});var iYr=H((p$u,Uns)=>{"use strict";Uns.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var jns=H((f$u,Kns)=>{"use strict";var qle=VK(),nul=iYr(),iul={info:qle.blue("\u2139"),success:qle.green("\u2714"),warning:qle.yellow("\u26A0"),error:qle.red("\u2716")},sul={info:qle.blue("i"),success:qle.green("\u221A"),warning:qle.yellow("\u203C"),error:qle.red("\xD7")};Kns.exports=nul()?iul:sul});var zns=H((I$u,_kt)=>{var oul=function(){"use strict";function e(l,A,f,I){var C;typeof A=="object"&&(f=A.depth,I=A.prototype,C=A.filter,A=A.circular);var b=[],E=[],N=typeof Buffer<"u";typeof A>"u"&&(A=!0),typeof f>"u"&&(f=1/0);function B(F,Q){if(F===null)return null;if(Q==0)return F;var X,ae;if(typeof F!="object")return F;if(e.__isArray(F))X=[];else if(e.__isRegExp(F))X=new RegExp(F.source,o(F)),F.lastIndex&&(X.lastIndex=F.lastIndex);else if(e.__isDate(F))X=new Date(F.getTime());else{if(N&&Buffer.isBuffer(F))return Buffer.allocUnsafe?X=Buffer.allocUnsafe(F.length):X=new Buffer(F.length),F.copy(X),X;typeof I>"u"?(ae=Object.getPrototypeOf(F),X=Object.create(ae)):(X=Object.create(I),ae=I)}if(A){var ne=b.indexOf(F);if(ne!=-1)return E[ne];b.push(F),E.push(X)}for(var ce in F){var fe;ae&&(fe=Object.getOwnPropertyDescriptor(ae,ce)),!(fe&&fe.set==null)&&(X[ce]=B(F[ce],Q-1))}return X}return B(l,f)}e.clonePrototype=function(A){if(A===null)return null;var f=function(){};return f.prototype=A,new f};function t(l){return Object.prototype.toString.call(l)}e.__objToStr=t;function r(l){return typeof l=="object"&&t(l)==="[object Date]"}e.__isDate=r;function n(l){return typeof l=="object"&&t(l)==="[object Array]"}e.__isArray=n;function a(l){return typeof l=="object"&&t(l)==="[object RegExp]"}e.__isRegExp=a;function o(l){var A="";return l.global&&(A+="g"),l.ignoreCase&&(A+="i"),l.multiline&&(A+="m"),A}return e.__getRegExpFlags=o,e}();typeof _kt=="object"&&_kt.exports&&(_kt.exports=oul)});var $ns=H((h$u,qns)=>{var aul=zns();qns.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=aul(t[r]))}),e}});var tis=H((m$u,eis)=>{eis.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var sis=H((C$u,sYr)=>{"use strict";var cul=$ns(),yje=tis(),nis={nul:0,control:0};sYr.exports=function(t){return iis(t,nis)};sYr.exports.config=function(e){return e=cul(e||{},nis),function(r){return iis(r,e)}};function iis(e,t){if(typeof e!="string")return ris(e,t);for(var r=0,n=0;n=127&&e<160?t.control:lul(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function lul(e){var t=0,r=yje.length-1,n;if(eyje[r][1])return!1;for(;r>=t;)if(n=Math.floor((t+r)/2),e>yje[n][1])t=n+1;else if(e{"use strict";ois.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var lis=H((y$u,lYr)=>{"use strict";var uul=wt("readline"),gul=VK(),cis=uBe(),ykt=Jns(),bkt=jns(),Aul=q5(),dul=sis(),pul=ais(),ful=iYr(),{BufferListStream:Iul}=dwr(),oYr=Symbol("text"),aYr=Symbol("prefixText"),hul=3,cYr=class{constructor(){this.requests=0,this.mutedStream=new Iul,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,n,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&n.includes(hul)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,n,...a])}else Reflect.apply(process.stdin.emit,this,[r,n,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=uul.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},Ekt,Skt=class{constructor(t){Ekt||(Ekt=new cYr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:pul({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!ful())this._spinner=ykt.line;else if(t===void 0)this._spinner=ykt.dots;else if(t!=="default"&&ykt[t])this._spinner=ykt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[oYr]}set text(t){this[oYr]=t,this.updateLineCount()}get prefixText(){return this[aYr]}set prefixText(t){this[aYr]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[aYr],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let n of Aul(r+"--"+this[oYr]).split(` +`))this.lineCount+=Math.max(1,Math.ceil(dul(n)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=gul[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let n=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return n+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&cis.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,Ekt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} +`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&cis.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(Ekt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:bkt.success,text:t})}fail(t){return this.stopAndPersist({symbol:bkt.error,text:t})}warn(t){return this.stopAndPersist({symbol:bkt.warning,text:t})}info(t){return this.stopAndPersist({symbol:bkt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,n=t.text||this.text,a=typeof n=="string"?" "+n:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} +`),this}},mul=function(e){return new Skt(e)};lYr.exports=mul;lYr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new Skt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var gis=H(kO=>{"use strict";var Cul=kO&&kO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_ul=kO&&kO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),yul=kO&&kO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let o=r,l=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=uis[a.packageManager],!o)throw new bje(a.packageManager);l=a.packageManager}let A=[],f={shell:!0,cwd:Bul.join(n,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let I=[];return a.packageName?(a.command==="install"&&I.push(o.commands.installPackage),I.push(a.packageName)):a.command==="install"&&o.commands.installAll&&I.push(o.commands.installAll),a.allowScripts||(l==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:I.push("--ignore-scripts")),e.registry&&I.push(`--registry="${e.registry}"`),e.force&&I.push("--force"),new wul.Observable(C=>{let b=(0,vul.default)({text:`Installing packages (${l})...`,discardStdin:process.platform!="win32"}).start(),E=(0,Sul.spawn)(l,I,f).on("close",N=>{N===0?(b.succeed("Packages installed successfully."),b.stop(),C.next(),C.complete()):(a.hideOutput&&A.forEach(({stream:B,data:F})=>B.write(F)),b.fail("Package install failed, see above."),C.error(new Tul.UnsuccessfulWorkflowExecution))});a.hideOutput&&(E.stdout?.on("data",N=>A.push({stream:process.stdout,data:N})),E.stderr?.on("data",N=>A.push({stream:process.stderr,data:N})))})}}});var Ais=H(Ste=>{"use strict";var Nul=Ste&&Ste.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Dul=Ste&&Ste.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),kul=Ste&&Ste.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,l=(I,C)=>{let b="ignore",E=C?"ignore":process.stderr,N={stdio:[process.stdin,b,E],shell:!0,cwd:Ful.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((B,F)=>{(0,Gul.spawn)("git",I,N).on("close",Q=>{Q===0?B():F(Q)})})};if(!await l(["--version"]).then(()=>!0,()=>!1))return;if(await l(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){n.logger.info(xul.tags.oneLine` Directory is already under version control. Skipping initialization of git. - `);return}try{if(await l(["init"]),await l(["add","."]),r.commit){let I=r.message||"initial commit";await l(["commit",`-m "${I}"`])}n.logger.info("Successfully initialized git.")}catch{}}}});var zns=H(nYr=>{"use strict";Object.defineProperty(nYr,"__esModule",{value:!0});nYr.default=Qll;function Qll(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,n=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:n,schematic:e.name,options:e.options,allowPrivate:n==t.schematic.collection.description.name})}}});var qns=H(s6=>{"use strict";var Xll=s6&&s6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Jll=s6&&s6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),iYr=s6&&s6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aPromise.resolve().then(()=>iYr(Kns())).then(r=>r.default(t))};static RepositoryInitializer={name:Kll.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>iYr(jns())).then(r=>r.default(t))};static RunSchematic={name:jll.RunSchematicName,create:()=>Promise.resolve().then(()=>iYr(zns())).then(t=>t.default())}};s6.BuiltinTaskExecutor=sYr});var Ekt=H(xxe=>{"use strict";Object.defineProperty(xxe,"__esModule",{value:!0});xxe.NodeModulesEngineHost=xxe.NodePackageDoesNotSupportSchematics=void 0;var zll=Z2(),kxe=wt("path"),qll=akt(),ykt=gkt(),$ll=YHr(),bkt=class extends zll.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};xxe.NodePackageDoesNotSupportSchematics=bkt;var oYr=class extends ykt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,n=new Set){if(r){if(n.has(r))throw n.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(n)));n.add(r)}let a=r?(0,kxe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,kxe.resolve)(a,t));let l={paths:r?[(0,kxe.dirname)(r),...this.paths||[]]:this.paths};try{let A=wt.resolve((0,kxe.join)(t,"package.json"),l),{schematics:f}=wt(A);if(!f||typeof f!="string")throw new bkt(t);if(f.startsWith(".")){let I=(0,kxe.dirname)(A);o=(0,kxe.resolve)(I,f)}else o=this.resolve(f,A,n)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)try{o=wt.resolve(t,l)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)throw new ykt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let n=this.resolve(t,r);return(0,$ll.readJsonFile)(n),n}_resolveReferenceString(t,r,n){let a=new qll.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new ykt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,n){if(!n.factoryFn||!n.path||!n.description)throw new ykt.SchematicMissingFieldsException(t);return n}};xxe.NodeModulesEngineHost=oYr});var eis=H(Skt=>{"use strict";Object.defineProperty(Skt,"__esModule",{value:!0});Skt.partition=void 0;var eul=HOr(),$ns=ute();function tul(e,t){return function(r){return[$ns.filter(e,t)(r),$ns.filter(eul.not(e,t))(r)]}}Skt.partition=tul});var tis=H(qle=>{"use strict";var rul=qle&&qle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},nul=qle&&qle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.mergeAll=ns.merge=ns.max=ns.materialize=ns.mapTo=ns.map=ns.last=ns.isEmpty=ns.ignoreElements=ns.groupBy=ns.first=ns.findIndex=ns.find=ns.finalize=ns.filter=ns.expand=ns.exhaustMap=ns.exhaustAll=ns.exhaust=ns.every=ns.endWith=ns.elementAt=ns.distinctUntilKeyChanged=ns.distinctUntilChanged=ns.distinct=ns.dematerialize=ns.delayWhen=ns.delay=ns.defaultIfEmpty=ns.debounceTime=ns.debounce=ns.count=ns.connect=ns.concatWith=ns.concatMapTo=ns.concatMap=ns.concatAll=ns.concat=ns.combineLatestWith=ns.combineLatest=ns.combineLatestAll=ns.combineAll=ns.catchError=ns.bufferWhen=ns.bufferToggle=ns.bufferTime=ns.bufferCount=ns.buffer=ns.auditTime=ns.audit=void 0;ns.timeInterval=ns.throwIfEmpty=ns.throttleTime=ns.throttle=ns.tap=ns.takeWhile=ns.takeUntil=ns.takeLast=ns.take=ns.switchScan=ns.switchMapTo=ns.switchMap=ns.switchAll=ns.subscribeOn=ns.startWith=ns.skipWhile=ns.skipUntil=ns.skipLast=ns.skip=ns.single=ns.shareReplay=ns.share=ns.sequenceEqual=ns.scan=ns.sampleTime=ns.sample=ns.refCount=ns.retryWhen=ns.retry=ns.repeatWhen=ns.repeat=ns.reduce=ns.raceWith=ns.race=ns.publishReplay=ns.publishLast=ns.publishBehavior=ns.publish=ns.pluck=ns.partition=ns.pairwise=ns.onErrorResumeNext=ns.observeOn=ns.multicast=ns.min=ns.mergeWith=ns.mergeScan=ns.mergeMapTo=ns.mergeMap=ns.flatMap=void 0;ns.zipWith=ns.zipAll=ns.zip=ns.withLatestFrom=ns.windowWhen=ns.windowToggle=ns.windowTime=ns.windowCount=ns.window=ns.toArray=ns.timestamp=ns.timeoutWith=ns.timeout=void 0;var aul=STt();Object.defineProperty(ns,"audit",{enumerable:!0,get:function(){return aul.audit}});var cul=QOr();Object.defineProperty(ns,"auditTime",{enumerable:!0,get:function(){return cul.auditTime}});var lul=XOr();Object.defineProperty(ns,"buffer",{enumerable:!0,get:function(){return lul.buffer}});var uul=UOr();Object.defineProperty(ns,"bufferCount",{enumerable:!0,get:function(){return uul.bufferCount}});var gul=KOr();Object.defineProperty(ns,"bufferTime",{enumerable:!0,get:function(){return gul.bufferTime}});var Aul=zOr();Object.defineProperty(ns,"bufferToggle",{enumerable:!0,get:function(){return Aul.bufferToggle}});var dul=qOr();Object.defineProperty(ns,"bufferWhen",{enumerable:!0,get:function(){return dul.bufferWhen}});var pul=$Or();Object.defineProperty(ns,"catchError",{enumerable:!0,get:function(){return pul.catchError}});var ful=r3r();Object.defineProperty(ns,"combineAll",{enumerable:!0,get:function(){return ful.combineAll}});var Iul=FTt();Object.defineProperty(ns,"combineLatestAll",{enumerable:!0,get:function(){return Iul.combineLatestAll}});var hul=n3r();Object.defineProperty(ns,"combineLatest",{enumerable:!0,get:function(){return hul.combineLatest}});var mul=i3r();Object.defineProperty(ns,"combineLatestWith",{enumerable:!0,get:function(){return mul.combineLatestWith}});var Cul=o3r();Object.defineProperty(ns,"concat",{enumerable:!0,get:function(){return Cul.concat}});var _ul=W8e();Object.defineProperty(ns,"concatAll",{enumerable:!0,get:function(){return _ul.concatAll}});var yul=VTt();Object.defineProperty(ns,"concatMap",{enumerable:!0,get:function(){return yul.concatMap}});var bul=s3r();Object.defineProperty(ns,"concatMapTo",{enumerable:!0,get:function(){return bul.concatMapTo}});var Eul=a3r();Object.defineProperty(ns,"concatWith",{enumerable:!0,get:function(){return Eul.concatWith}});var Sul=H8e();Object.defineProperty(ns,"connect",{enumerable:!0,get:function(){return Sul.connect}});var vul=c3r();Object.defineProperty(ns,"count",{enumerable:!0,get:function(){return vul.count}});var Bul=l3r();Object.defineProperty(ns,"debounce",{enumerable:!0,get:function(){return Bul.debounce}});var wul=u3r();Object.defineProperty(ns,"debounceTime",{enumerable:!0,get:function(){return wul.debounceTime}});var Tul=jke();Object.defineProperty(ns,"defaultIfEmpty",{enumerable:!0,get:function(){return Tul.defaultIfEmpty}});var Rul=g3r();Object.defineProperty(ns,"delay",{enumerable:!0,get:function(){return Rul.delay}});var Nul=qTt();Object.defineProperty(ns,"delayWhen",{enumerable:!0,get:function(){return Nul.delayWhen}});var Dul=A3r();Object.defineProperty(ns,"dematerialize",{enumerable:!0,get:function(){return Dul.dematerialize}});var kul=d3r();Object.defineProperty(ns,"distinct",{enumerable:!0,get:function(){return kul.distinct}});var xul=nRt();Object.defineProperty(ns,"distinctUntilChanged",{enumerable:!0,get:function(){return xul.distinctUntilChanged}});var Gul=p3r();Object.defineProperty(ns,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return Gul.distinctUntilKeyChanged}});var Ful=f3r();Object.defineProperty(ns,"elementAt",{enumerable:!0,get:function(){return Ful.elementAt}});var Zul=I3r();Object.defineProperty(ns,"endWith",{enumerable:!0,get:function(){return Zul.endWith}});var Lul=h3r();Object.defineProperty(ns,"every",{enumerable:!0,get:function(){return Lul.every}});var Vul=m3r();Object.defineProperty(ns,"exhaust",{enumerable:!0,get:function(){return Vul.exhaust}});var Pul=gRt();Object.defineProperty(ns,"exhaustAll",{enumerable:!0,get:function(){return Pul.exhaustAll}});var Wul=lRt();Object.defineProperty(ns,"exhaustMap",{enumerable:!0,get:function(){return Wul.exhaustMap}});var Oul=C3r();Object.defineProperty(ns,"expand",{enumerable:!0,get:function(){return Oul.expand}});var Mul=ute();Object.defineProperty(ns,"filter",{enumerable:!0,get:function(){return Mul.filter}});var Hul=_3r();Object.defineProperty(ns,"finalize",{enumerable:!0,get:function(){return Hul.finalize}});var Yul=fRt();Object.defineProperty(ns,"find",{enumerable:!0,get:function(){return Yul.find}});var Qul=y3r();Object.defineProperty(ns,"findIndex",{enumerable:!0,get:function(){return Qul.findIndex}});var Xul=b3r();Object.defineProperty(ns,"first",{enumerable:!0,get:function(){return Xul.first}});var Jul=E3r();Object.defineProperty(ns,"groupBy",{enumerable:!0,get:function(){return Jul.groupBy}});var Uul=UTt();Object.defineProperty(ns,"ignoreElements",{enumerable:!0,get:function(){return Uul.ignoreElements}});var Kul=S3r();Object.defineProperty(ns,"isEmpty",{enumerable:!0,get:function(){return Kul.isEmpty}});var jul=v3r();Object.defineProperty(ns,"last",{enumerable:!0,get:function(){return jul.last}});var zul=lte();Object.defineProperty(ns,"map",{enumerable:!0,get:function(){return zul.map}});var qul=jTt();Object.defineProperty(ns,"mapTo",{enumerable:!0,get:function(){return qul.mapTo}});var $ul=w3r();Object.defineProperty(ns,"materialize",{enumerable:!0,get:function(){return $ul.materialize}});var egl=T3r();Object.defineProperty(ns,"max",{enumerable:!0,get:function(){return egl.max}});var tgl=k3r();Object.defineProperty(ns,"merge",{enumerable:!0,get:function(){return tgl.merge}});var rgl=Hke();Object.defineProperty(ns,"mergeAll",{enumerable:!0,get:function(){return rgl.mergeAll}});var ngl=R3r();Object.defineProperty(ns,"flatMap",{enumerable:!0,get:function(){return ngl.flatMap}});var igl=Kj();Object.defineProperty(ns,"mergeMap",{enumerable:!0,get:function(){return igl.mergeMap}});var sgl=N3r();Object.defineProperty(ns,"mergeMapTo",{enumerable:!0,get:function(){return sgl.mergeMapTo}});var ogl=D3r();Object.defineProperty(ns,"mergeScan",{enumerable:!0,get:function(){return ogl.mergeScan}});var agl=x3r();Object.defineProperty(ns,"mergeWith",{enumerable:!0,get:function(){return agl.mergeWith}});var cgl=G3r();Object.defineProperty(ns,"min",{enumerable:!0,get:function(){return cgl.min}});var lgl=Y8e();Object.defineProperty(ns,"multicast",{enumerable:!0,get:function(){return lgl.multicast}});var ugl=Wke();Object.defineProperty(ns,"observeOn",{enumerable:!0,get:function(){return ugl.observeOn}});var ggl=F3r();Object.defineProperty(ns,"onErrorResumeNext",{enumerable:!0,get:function(){return ggl.onErrorResumeNext}});var Agl=Z3r();Object.defineProperty(ns,"pairwise",{enumerable:!0,get:function(){return Agl.pairwise}});var dgl=eis();Object.defineProperty(ns,"partition",{enumerable:!0,get:function(){return dgl.partition}});var pgl=L3r();Object.defineProperty(ns,"pluck",{enumerable:!0,get:function(){return pgl.pluck}});var fgl=V3r();Object.defineProperty(ns,"publish",{enumerable:!0,get:function(){return fgl.publish}});var Igl=P3r();Object.defineProperty(ns,"publishBehavior",{enumerable:!0,get:function(){return Igl.publishBehavior}});var hgl=W3r();Object.defineProperty(ns,"publishLast",{enumerable:!0,get:function(){return hgl.publishLast}});var mgl=O3r();Object.defineProperty(ns,"publishReplay",{enumerable:!0,get:function(){return mgl.publishReplay}});var Cgl=tis();Object.defineProperty(ns,"race",{enumerable:!0,get:function(){return Cgl.race}});var _gl=FRt();Object.defineProperty(ns,"raceWith",{enumerable:!0,get:function(){return _gl.raceWith}});var ygl=C_e();Object.defineProperty(ns,"reduce",{enumerable:!0,get:function(){return ygl.reduce}});var bgl=M3r();Object.defineProperty(ns,"repeat",{enumerable:!0,get:function(){return bgl.repeat}});var Egl=H3r();Object.defineProperty(ns,"repeatWhen",{enumerable:!0,get:function(){return Egl.repeatWhen}});var Sgl=Y3r();Object.defineProperty(ns,"retry",{enumerable:!0,get:function(){return Sgl.retry}});var vgl=Q3r();Object.defineProperty(ns,"retryWhen",{enumerable:!0,get:function(){return vgl.retryWhen}});var Bgl=awt();Object.defineProperty(ns,"refCount",{enumerable:!0,get:function(){return Bgl.refCount}});var wgl=ORt();Object.defineProperty(ns,"sample",{enumerable:!0,get:function(){return wgl.sample}});var Tgl=X3r();Object.defineProperty(ns,"sampleTime",{enumerable:!0,get:function(){return Tgl.sampleTime}});var Rgl=J3r();Object.defineProperty(ns,"scan",{enumerable:!0,get:function(){return Rgl.scan}});var Ngl=U3r();Object.defineProperty(ns,"sequenceEqual",{enumerable:!0,get:function(){return Ngl.sequenceEqual}});var Dgl=QRt();Object.defineProperty(ns,"share",{enumerable:!0,get:function(){return Dgl.share}});var kgl=j3r();Object.defineProperty(ns,"shareReplay",{enumerable:!0,get:function(){return kgl.shareReplay}});var xgl=z3r();Object.defineProperty(ns,"single",{enumerable:!0,get:function(){return xgl.single}});var Ggl=q3r();Object.defineProperty(ns,"skip",{enumerable:!0,get:function(){return Ggl.skip}});var Fgl=$3r();Object.defineProperty(ns,"skipLast",{enumerable:!0,get:function(){return Fgl.skipLast}});var Zgl=e5r();Object.defineProperty(ns,"skipUntil",{enumerable:!0,get:function(){return Zgl.skipUntil}});var Lgl=t5r();Object.defineProperty(ns,"skipWhile",{enumerable:!0,get:function(){return Lgl.skipWhile}});var Vgl=r5r();Object.defineProperty(ns,"startWith",{enumerable:!0,get:function(){return Vgl.startWith}});var Pgl=Oke();Object.defineProperty(ns,"subscribeOn",{enumerable:!0,get:function(){return Pgl.subscribeOn}});var Wgl=n5r();Object.defineProperty(ns,"switchAll",{enumerable:!0,get:function(){return Wgl.switchAll}});var Ogl=txe();Object.defineProperty(ns,"switchMap",{enumerable:!0,get:function(){return Ogl.switchMap}});var Mgl=i5r();Object.defineProperty(ns,"switchMapTo",{enumerable:!0,get:function(){return Mgl.switchMapTo}});var Hgl=s5r();Object.defineProperty(ns,"switchScan",{enumerable:!0,get:function(){return Hgl.switchScan}});var Ygl=zke();Object.defineProperty(ns,"take",{enumerable:!0,get:function(){return Ygl.take}});var Qgl=_Rt();Object.defineProperty(ns,"takeLast",{enumerable:!0,get:function(){return Qgl.takeLast}});var Xgl=o5r();Object.defineProperty(ns,"takeUntil",{enumerable:!0,get:function(){return Xgl.takeUntil}});var Jgl=a5r();Object.defineProperty(ns,"takeWhile",{enumerable:!0,get:function(){return Jgl.takeWhile}});var Ugl=c5r();Object.defineProperty(ns,"tap",{enumerable:!0,get:function(){return Ugl.tap}});var Kgl=aNt();Object.defineProperty(ns,"throttle",{enumerable:!0,get:function(){return Kgl.throttle}});var jgl=l5r();Object.defineProperty(ns,"throttleTime",{enumerable:!0,get:function(){return jgl.throttleTime}});var zgl=qke();Object.defineProperty(ns,"throwIfEmpty",{enumerable:!0,get:function(){return zgl.throwIfEmpty}});var qgl=u5r();Object.defineProperty(ns,"timeInterval",{enumerable:!0,get:function(){return qgl.timeInterval}});var $gl=P8e();Object.defineProperty(ns,"timeout",{enumerable:!0,get:function(){return $gl.timeout}});var eAl=g5r();Object.defineProperty(ns,"timeoutWith",{enumerable:!0,get:function(){return eAl.timeoutWith}});var tAl=A5r();Object.defineProperty(ns,"timestamp",{enumerable:!0,get:function(){return tAl.timestamp}});var rAl=kTt();Object.defineProperty(ns,"toArray",{enumerable:!0,get:function(){return rAl.toArray}});var nAl=d5r();Object.defineProperty(ns,"window",{enumerable:!0,get:function(){return nAl.window}});var iAl=p5r();Object.defineProperty(ns,"windowCount",{enumerable:!0,get:function(){return iAl.windowCount}});var sAl=f5r();Object.defineProperty(ns,"windowTime",{enumerable:!0,get:function(){return sAl.windowTime}});var oAl=h5r();Object.defineProperty(ns,"windowToggle",{enumerable:!0,get:function(){return oAl.windowToggle}});var aAl=m5r();Object.defineProperty(ns,"windowWhen",{enumerable:!0,get:function(){return aAl.windowWhen}});var cAl=C5r();Object.defineProperty(ns,"withLatestFrom",{enumerable:!0,get:function(){return cAl.withLatestFrom}});var lAl=y5r();Object.defineProperty(ns,"zip",{enumerable:!0,get:function(){return lAl.zip}});var uAl=_5r();Object.defineProperty(ns,"zipAll",{enumerable:!0,get:function(){return uAl.zipAll}});var gAl=b5r();Object.defineProperty(ns,"zipWith",{enumerable:!0,get:function(){return gAl.zipWith}})});var cYr=H(yje=>{"use strict";Object.defineProperty(yje,"__esModule",{value:!0});yje.InvalidInputOptions=void 0;yje.validateOptionsWithSchema=AAl;var iis=Z2(),nis=qb(),aYr=ris(),vkt=class extends iis.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} + `);return}try{if(await l(["init"]),await l(["add","."]),r.commit){let I=r.message||"initial commit";await l(["commit",`-m "${I}"`])}n.logger.info("Successfully initialized git.")}catch{}}}});var dis=H(uYr=>{"use strict";Object.defineProperty(uYr,"__esModule",{value:!0});uYr.default=Lul;function Lul(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,n=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:n,schematic:e.name,options:e.options,allowPrivate:n==t.schematic.collection.description.name})}}});var pis=H(s6=>{"use strict";var Vul=s6&&s6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pul=s6&&s6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gYr=s6&&s6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aPromise.resolve().then(()=>gYr(gis())).then(r=>r.default(t))};static RepositoryInitializer={name:Oul.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>gYr(Ais())).then(r=>r.default(t))};static RunSchematic={name:Mul.RunSchematicName,create:()=>Promise.resolve().then(()=>gYr(dis())).then(t=>t.default())}};s6.BuiltinTaskExecutor=AYr});var wkt=H(Fxe=>{"use strict";Object.defineProperty(Fxe,"__esModule",{value:!0});Fxe.NodeModulesEngineHost=Fxe.NodePackageDoesNotSupportSchematics=void 0;var Hul=Z2(),Gxe=wt("path"),Yul=gkt(),vkt=fkt(),Qul=zHr(),Bkt=class extends Hul.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};Fxe.NodePackageDoesNotSupportSchematics=Bkt;var dYr=class extends vkt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,n=new Set){if(r){if(n.has(r))throw n.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(n)));n.add(r)}let a=r?(0,Gxe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,Gxe.resolve)(a,t));let l={paths:r?[(0,Gxe.dirname)(r),...this.paths||[]]:this.paths};try{let A=wt.resolve((0,Gxe.join)(t,"package.json"),l),{schematics:f}=wt(A);if(!f||typeof f!="string")throw new Bkt(t);if(f.startsWith(".")){let I=(0,Gxe.dirname)(A);o=(0,Gxe.resolve)(I,f)}else o=this.resolve(f,A,n)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)try{o=wt.resolve(t,l)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)throw new vkt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let n=this.resolve(t,r);return(0,Qul.readJsonFile)(n),n}_resolveReferenceString(t,r,n){let a=new Yul.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new vkt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,n){if(!n.factoryFn||!n.path||!n.description)throw new vkt.SchematicMissingFieldsException(t);return n}};Fxe.NodeModulesEngineHost=dYr});var Iis=H(Tkt=>{"use strict";Object.defineProperty(Tkt,"__esModule",{value:!0});Tkt.partition=void 0;var Xul=jOr(),fis=gte();function Jul(e,t){return function(r){return[fis.filter(e,t)(r),fis.filter(Xul.not(e,t))(r)]}}Tkt.partition=Jul});var his=H($le=>{"use strict";var Uul=$le&&$le.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Kul=$le&&$le.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.mergeAll=ns.merge=ns.max=ns.materialize=ns.mapTo=ns.map=ns.last=ns.isEmpty=ns.ignoreElements=ns.groupBy=ns.first=ns.findIndex=ns.find=ns.finalize=ns.filter=ns.expand=ns.exhaustMap=ns.exhaustAll=ns.exhaust=ns.every=ns.endWith=ns.elementAt=ns.distinctUntilKeyChanged=ns.distinctUntilChanged=ns.distinct=ns.dematerialize=ns.delayWhen=ns.delay=ns.defaultIfEmpty=ns.debounceTime=ns.debounce=ns.count=ns.connect=ns.concatWith=ns.concatMapTo=ns.concatMap=ns.concatAll=ns.concat=ns.combineLatestWith=ns.combineLatest=ns.combineLatestAll=ns.combineAll=ns.catchError=ns.bufferWhen=ns.bufferToggle=ns.bufferTime=ns.bufferCount=ns.buffer=ns.auditTime=ns.audit=void 0;ns.timeInterval=ns.throwIfEmpty=ns.throttleTime=ns.throttle=ns.tap=ns.takeWhile=ns.takeUntil=ns.takeLast=ns.take=ns.switchScan=ns.switchMapTo=ns.switchMap=ns.switchAll=ns.subscribeOn=ns.startWith=ns.skipWhile=ns.skipUntil=ns.skipLast=ns.skip=ns.single=ns.shareReplay=ns.share=ns.sequenceEqual=ns.scan=ns.sampleTime=ns.sample=ns.refCount=ns.retryWhen=ns.retry=ns.repeatWhen=ns.repeat=ns.reduce=ns.raceWith=ns.race=ns.publishReplay=ns.publishLast=ns.publishBehavior=ns.publish=ns.pluck=ns.partition=ns.pairwise=ns.onErrorResumeNext=ns.observeOn=ns.multicast=ns.min=ns.mergeWith=ns.mergeScan=ns.mergeMapTo=ns.mergeMap=ns.flatMap=void 0;ns.zipWith=ns.zipAll=ns.zip=ns.withLatestFrom=ns.windowWhen=ns.windowToggle=ns.windowTime=ns.windowCount=ns.window=ns.toArray=ns.timestamp=ns.timeoutWith=ns.timeout=void 0;var $ul=TTt();Object.defineProperty(ns,"audit",{enumerable:!0,get:function(){return $ul.audit}});var egl=qOr();Object.defineProperty(ns,"auditTime",{enumerable:!0,get:function(){return egl.auditTime}});var tgl=$Or();Object.defineProperty(ns,"buffer",{enumerable:!0,get:function(){return tgl.buffer}});var rgl=t3r();Object.defineProperty(ns,"bufferCount",{enumerable:!0,get:function(){return rgl.bufferCount}});var ngl=r3r();Object.defineProperty(ns,"bufferTime",{enumerable:!0,get:function(){return ngl.bufferTime}});var igl=i3r();Object.defineProperty(ns,"bufferToggle",{enumerable:!0,get:function(){return igl.bufferToggle}});var sgl=s3r();Object.defineProperty(ns,"bufferWhen",{enumerable:!0,get:function(){return sgl.bufferWhen}});var ogl=o3r();Object.defineProperty(ns,"catchError",{enumerable:!0,get:function(){return ogl.catchError}});var agl=l3r();Object.defineProperty(ns,"combineAll",{enumerable:!0,get:function(){return agl.combineAll}});var cgl=PTt();Object.defineProperty(ns,"combineLatestAll",{enumerable:!0,get:function(){return cgl.combineLatestAll}});var lgl=u3r();Object.defineProperty(ns,"combineLatest",{enumerable:!0,get:function(){return lgl.combineLatest}});var ugl=g3r();Object.defineProperty(ns,"combineLatestWith",{enumerable:!0,get:function(){return ugl.combineLatestWith}});var ggl=d3r();Object.defineProperty(ns,"concat",{enumerable:!0,get:function(){return ggl.concat}});var Agl=M8e();Object.defineProperty(ns,"concatAll",{enumerable:!0,get:function(){return Agl.concatAll}});var dgl=MTt();Object.defineProperty(ns,"concatMap",{enumerable:!0,get:function(){return dgl.concatMap}});var pgl=A3r();Object.defineProperty(ns,"concatMapTo",{enumerable:!0,get:function(){return pgl.concatMapTo}});var fgl=p3r();Object.defineProperty(ns,"concatWith",{enumerable:!0,get:function(){return fgl.concatWith}});var Igl=Q8e();Object.defineProperty(ns,"connect",{enumerable:!0,get:function(){return Igl.connect}});var hgl=f3r();Object.defineProperty(ns,"count",{enumerable:!0,get:function(){return hgl.count}});var mgl=I3r();Object.defineProperty(ns,"debounce",{enumerable:!0,get:function(){return mgl.debounce}});var Cgl=h3r();Object.defineProperty(ns,"debounceTime",{enumerable:!0,get:function(){return Cgl.debounceTime}});var _gl=qke();Object.defineProperty(ns,"defaultIfEmpty",{enumerable:!0,get:function(){return _gl.defaultIfEmpty}});var ygl=m3r();Object.defineProperty(ns,"delay",{enumerable:!0,get:function(){return ygl.delay}});var bgl=rRt();Object.defineProperty(ns,"delayWhen",{enumerable:!0,get:function(){return bgl.delayWhen}});var Egl=C3r();Object.defineProperty(ns,"dematerialize",{enumerable:!0,get:function(){return Egl.dematerialize}});var Sgl=_3r();Object.defineProperty(ns,"distinct",{enumerable:!0,get:function(){return Sgl.distinct}});var vgl=aRt();Object.defineProperty(ns,"distinctUntilChanged",{enumerable:!0,get:function(){return vgl.distinctUntilChanged}});var Bgl=y3r();Object.defineProperty(ns,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return Bgl.distinctUntilKeyChanged}});var wgl=b3r();Object.defineProperty(ns,"elementAt",{enumerable:!0,get:function(){return wgl.elementAt}});var Tgl=E3r();Object.defineProperty(ns,"endWith",{enumerable:!0,get:function(){return Tgl.endWith}});var Rgl=S3r();Object.defineProperty(ns,"every",{enumerable:!0,get:function(){return Rgl.every}});var Ngl=v3r();Object.defineProperty(ns,"exhaust",{enumerable:!0,get:function(){return Ngl.exhaust}});var Dgl=fRt();Object.defineProperty(ns,"exhaustAll",{enumerable:!0,get:function(){return Dgl.exhaustAll}});var kgl=dRt();Object.defineProperty(ns,"exhaustMap",{enumerable:!0,get:function(){return kgl.exhaustMap}});var xgl=B3r();Object.defineProperty(ns,"expand",{enumerable:!0,get:function(){return xgl.expand}});var Ggl=gte();Object.defineProperty(ns,"filter",{enumerable:!0,get:function(){return Ggl.filter}});var Fgl=w3r();Object.defineProperty(ns,"finalize",{enumerable:!0,get:function(){return Fgl.finalize}});var Zgl=CRt();Object.defineProperty(ns,"find",{enumerable:!0,get:function(){return Zgl.find}});var Lgl=T3r();Object.defineProperty(ns,"findIndex",{enumerable:!0,get:function(){return Lgl.findIndex}});var Vgl=R3r();Object.defineProperty(ns,"first",{enumerable:!0,get:function(){return Vgl.first}});var Pgl=N3r();Object.defineProperty(ns,"groupBy",{enumerable:!0,get:function(){return Pgl.groupBy}});var Wgl=qTt();Object.defineProperty(ns,"ignoreElements",{enumerable:!0,get:function(){return Wgl.ignoreElements}});var Ogl=D3r();Object.defineProperty(ns,"isEmpty",{enumerable:!0,get:function(){return Ogl.isEmpty}});var Mgl=k3r();Object.defineProperty(ns,"last",{enumerable:!0,get:function(){return Mgl.last}});var Hgl=ute();Object.defineProperty(ns,"map",{enumerable:!0,get:function(){return Hgl.map}});var Ygl=eRt();Object.defineProperty(ns,"mapTo",{enumerable:!0,get:function(){return Ygl.mapTo}});var Qgl=G3r();Object.defineProperty(ns,"materialize",{enumerable:!0,get:function(){return Qgl.materialize}});var Xgl=F3r();Object.defineProperty(ns,"max",{enumerable:!0,get:function(){return Xgl.max}});var Jgl=P3r();Object.defineProperty(ns,"merge",{enumerable:!0,get:function(){return Jgl.merge}});var Ugl=Qke();Object.defineProperty(ns,"mergeAll",{enumerable:!0,get:function(){return Ugl.mergeAll}});var Kgl=Z3r();Object.defineProperty(ns,"flatMap",{enumerable:!0,get:function(){return Kgl.flatMap}});var jgl=Kj();Object.defineProperty(ns,"mergeMap",{enumerable:!0,get:function(){return jgl.mergeMap}});var zgl=L3r();Object.defineProperty(ns,"mergeMapTo",{enumerable:!0,get:function(){return zgl.mergeMapTo}});var qgl=V3r();Object.defineProperty(ns,"mergeScan",{enumerable:!0,get:function(){return qgl.mergeScan}});var $gl=W3r();Object.defineProperty(ns,"mergeWith",{enumerable:!0,get:function(){return $gl.mergeWith}});var eAl=O3r();Object.defineProperty(ns,"min",{enumerable:!0,get:function(){return eAl.min}});var tAl=X8e();Object.defineProperty(ns,"multicast",{enumerable:!0,get:function(){return tAl.multicast}});var rAl=Mke();Object.defineProperty(ns,"observeOn",{enumerable:!0,get:function(){return rAl.observeOn}});var nAl=M3r();Object.defineProperty(ns,"onErrorResumeNext",{enumerable:!0,get:function(){return nAl.onErrorResumeNext}});var iAl=H3r();Object.defineProperty(ns,"pairwise",{enumerable:!0,get:function(){return iAl.pairwise}});var sAl=Iis();Object.defineProperty(ns,"partition",{enumerable:!0,get:function(){return sAl.partition}});var oAl=Y3r();Object.defineProperty(ns,"pluck",{enumerable:!0,get:function(){return oAl.pluck}});var aAl=Q3r();Object.defineProperty(ns,"publish",{enumerable:!0,get:function(){return aAl.publish}});var cAl=X3r();Object.defineProperty(ns,"publishBehavior",{enumerable:!0,get:function(){return cAl.publishBehavior}});var lAl=J3r();Object.defineProperty(ns,"publishLast",{enumerable:!0,get:function(){return lAl.publishLast}});var uAl=U3r();Object.defineProperty(ns,"publishReplay",{enumerable:!0,get:function(){return uAl.publishReplay}});var gAl=his();Object.defineProperty(ns,"race",{enumerable:!0,get:function(){return gAl.race}});var AAl=PRt();Object.defineProperty(ns,"raceWith",{enumerable:!0,get:function(){return AAl.raceWith}});var dAl=__e();Object.defineProperty(ns,"reduce",{enumerable:!0,get:function(){return dAl.reduce}});var pAl=K3r();Object.defineProperty(ns,"repeat",{enumerable:!0,get:function(){return pAl.repeat}});var fAl=j3r();Object.defineProperty(ns,"repeatWhen",{enumerable:!0,get:function(){return fAl.repeatWhen}});var IAl=z3r();Object.defineProperty(ns,"retry",{enumerable:!0,get:function(){return IAl.retry}});var hAl=q3r();Object.defineProperty(ns,"retryWhen",{enumerable:!0,get:function(){return hAl.retryWhen}});var mAl=gwt();Object.defineProperty(ns,"refCount",{enumerable:!0,get:function(){return mAl.refCount}});var CAl=QRt();Object.defineProperty(ns,"sample",{enumerable:!0,get:function(){return CAl.sample}});var _Al=$3r();Object.defineProperty(ns,"sampleTime",{enumerable:!0,get:function(){return _Al.sampleTime}});var yAl=e5r();Object.defineProperty(ns,"scan",{enumerable:!0,get:function(){return yAl.scan}});var bAl=t5r();Object.defineProperty(ns,"sequenceEqual",{enumerable:!0,get:function(){return bAl.sequenceEqual}});var EAl=KRt();Object.defineProperty(ns,"share",{enumerable:!0,get:function(){return EAl.share}});var SAl=n5r();Object.defineProperty(ns,"shareReplay",{enumerable:!0,get:function(){return SAl.shareReplay}});var vAl=i5r();Object.defineProperty(ns,"single",{enumerable:!0,get:function(){return vAl.single}});var BAl=s5r();Object.defineProperty(ns,"skip",{enumerable:!0,get:function(){return BAl.skip}});var wAl=o5r();Object.defineProperty(ns,"skipLast",{enumerable:!0,get:function(){return wAl.skipLast}});var TAl=a5r();Object.defineProperty(ns,"skipUntil",{enumerable:!0,get:function(){return TAl.skipUntil}});var RAl=c5r();Object.defineProperty(ns,"skipWhile",{enumerable:!0,get:function(){return RAl.skipWhile}});var NAl=l5r();Object.defineProperty(ns,"startWith",{enumerable:!0,get:function(){return NAl.startWith}});var DAl=Hke();Object.defineProperty(ns,"subscribeOn",{enumerable:!0,get:function(){return DAl.subscribeOn}});var kAl=u5r();Object.defineProperty(ns,"switchAll",{enumerable:!0,get:function(){return kAl.switchAll}});var xAl=nxe();Object.defineProperty(ns,"switchMap",{enumerable:!0,get:function(){return xAl.switchMap}});var GAl=g5r();Object.defineProperty(ns,"switchMapTo",{enumerable:!0,get:function(){return GAl.switchMapTo}});var FAl=A5r();Object.defineProperty(ns,"switchScan",{enumerable:!0,get:function(){return FAl.switchScan}});var ZAl=$ke();Object.defineProperty(ns,"take",{enumerable:!0,get:function(){return ZAl.take}});var LAl=SRt();Object.defineProperty(ns,"takeLast",{enumerable:!0,get:function(){return LAl.takeLast}});var VAl=d5r();Object.defineProperty(ns,"takeUntil",{enumerable:!0,get:function(){return VAl.takeUntil}});var PAl=p5r();Object.defineProperty(ns,"takeWhile",{enumerable:!0,get:function(){return PAl.takeWhile}});var WAl=f5r();Object.defineProperty(ns,"tap",{enumerable:!0,get:function(){return WAl.tap}});var OAl=gNt();Object.defineProperty(ns,"throttle",{enumerable:!0,get:function(){return OAl.throttle}});var MAl=I5r();Object.defineProperty(ns,"throttleTime",{enumerable:!0,get:function(){return MAl.throttleTime}});var HAl=exe();Object.defineProperty(ns,"throwIfEmpty",{enumerable:!0,get:function(){return HAl.throwIfEmpty}});var YAl=h5r();Object.defineProperty(ns,"timeInterval",{enumerable:!0,get:function(){return YAl.timeInterval}});var QAl=O8e();Object.defineProperty(ns,"timeout",{enumerable:!0,get:function(){return QAl.timeout}});var XAl=m5r();Object.defineProperty(ns,"timeoutWith",{enumerable:!0,get:function(){return XAl.timeoutWith}});var JAl=C5r();Object.defineProperty(ns,"timestamp",{enumerable:!0,get:function(){return JAl.timestamp}});var UAl=ZTt();Object.defineProperty(ns,"toArray",{enumerable:!0,get:function(){return UAl.toArray}});var KAl=_5r();Object.defineProperty(ns,"window",{enumerable:!0,get:function(){return KAl.window}});var jAl=y5r();Object.defineProperty(ns,"windowCount",{enumerable:!0,get:function(){return jAl.windowCount}});var zAl=b5r();Object.defineProperty(ns,"windowTime",{enumerable:!0,get:function(){return zAl.windowTime}});var qAl=S5r();Object.defineProperty(ns,"windowToggle",{enumerable:!0,get:function(){return qAl.windowToggle}});var $Al=v5r();Object.defineProperty(ns,"windowWhen",{enumerable:!0,get:function(){return $Al.windowWhen}});var edl=B5r();Object.defineProperty(ns,"withLatestFrom",{enumerable:!0,get:function(){return edl.withLatestFrom}});var tdl=T5r();Object.defineProperty(ns,"zip",{enumerable:!0,get:function(){return tdl.zip}});var rdl=w5r();Object.defineProperty(ns,"zipAll",{enumerable:!0,get:function(){return rdl.zipAll}});var ndl=R5r();Object.defineProperty(ns,"zipWith",{enumerable:!0,get:function(){return ndl.zipWith}})});var fYr=H(Eje=>{"use strict";Object.defineProperty(Eje,"__esModule",{value:!0});Eje.InvalidInputOptions=void 0;Eje.validateOptionsWithSchema=idl;var _is=Z2(),Cis=qb(),pYr=mis(),Rkt=class extends _is.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} Errors: -`)}};yje.InvalidInputOptions=vkt;function AAl(e){return(t,r,n)=>{r=(0,iis.deepCopy)(r);let a=n?n.interactive:!0;return t.schema&&t.schemaJson?(0,nis.from)(e.compile(t.schemaJson)).pipe((0,aYr.mergeMap)(o=>o(r,{withPrompts:a})),(0,aYr.first)(),(0,aYr.map)(o=>{if(!o.success)throw new vkt(r,o.errors||[]);return r})):(0,nis.of)(r)}}});var sis=H(wkt=>{"use strict";Object.defineProperty(wkt,"__esModule",{value:!0});wkt.NodeWorkflow=void 0;var Bkt=Z2(),dAl=JDt(),pAl=Nxe(),lYr=qns(),fAl=Ekt(),IAl=cYr(),uYr=class extends pAl.workflow.BaseWorkflow{constructor(t,r){let n,a;typeof t=="string"?(a=(0,Bkt.normalize)(t),n=new Bkt.virtualFs.ScopedHost(new dAl.NodeJsSyncHost,a)):(n=t,a=r.root);let o=r.engineHostCreator?.(r)||new fAl.NodeModulesEngineHost(r.resolvePaths);if(super({host:n,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(lYr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,Bkt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(lYr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,Bkt.getSystemPath)(a)}),o.registerTaskExecutor(lYr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let l of r.optionTransforms)o.registerOptionsTransform(l);r.schemaValidation&&o.registerOptionsTransform((0,IAl.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};wkt.NodeWorkflow=uYr});var ois=H(o6=>{"use strict";var hAl=o6&&o6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mAl=o6&&o6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),CAl=o6&&o6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aCAl(wt(n))).then(n=>(n.default?.default||n.default)())).pipe((0,AYr.catchError)(()=>(0,AYr.throwError)(()=>new _Al.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};o6.FileSystemEngineHost=dYr});var ais=H(Nkt=>{"use strict";Object.defineProperty(Nkt,"__esModule",{value:!0});Nkt.NodeModulesTestEngineHost=void 0;var bAl=Ekt(),pYr=class extends bAl.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(n,a)=>(this.#t.push(n.toConfiguration()),r(n,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};Nkt.NodeModulesTestEngineHost=pYr});var lis=H(mT=>{"use strict";var EAl=mT&&mT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Dkt=mT&&mT.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&EAl(t,e,r)};Object.defineProperty(mT,"__esModule",{value:!0});mT.validateOptionsWithSchema=mT.NodeModulesTestEngineHost=mT.NodePackageDoesNotSupportSchematics=mT.NodeModulesEngineHost=mT.FileSystemEngineHost=void 0;Dkt(Cns(),mT);Dkt(akt(),mT);Dkt(gkt(),mT);Dkt(sis(),mT);var SAl=ois();Object.defineProperty(mT,"FileSystemEngineHost",{enumerable:!0,get:function(){return SAl.FileSystemEngineHost}});var cis=Ekt();Object.defineProperty(mT,"NodeModulesEngineHost",{enumerable:!0,get:function(){return cis.NodeModulesEngineHost}});Object.defineProperty(mT,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return cis.NodePackageDoesNotSupportSchematics}});var vAl=ais();Object.defineProperty(mT,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return vAl.NodeModulesTestEngineHost}});var BAl=cYr();Object.defineProperty(mT,"validateOptionsWithSchema",{enumerable:!0,get:function(){return BAl.validateOptionsWithSchema}})});var vis=H(Gkt=>{"use strict";Object.defineProperty(Gkt,"__esModule",{value:!0});function bje(e){let t=[...e.caches],r=t.shift();return r===void 0?Sis():{get(n,a,o={miss:()=>Promise.resolve()}){return r.get(n,a,o).catch(()=>bje({caches:t}).get(n,a,o))},set(n,a){return r.set(n,a).catch(()=>bje({caches:t}).set(n,a))},delete(n){return r.delete(n).catch(()=>bje({caches:t}).delete(n))},clear(){return r.clear().catch(()=>bje({caches:t}).clear())}}}function Sis(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}Gkt.createFallbackableCache=bje;Gkt.createNullCache=Sis});var hYr=H((p$u,Bis)=>{Bis.exports=vis()});var wis=H(mYr=>{"use strict";Object.defineProperty(mYr,"__esModule",{value:!0});function RAl(e={serializable:!0}){let t={};return{get(r,n,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let l=n(),A=a&&a.miss||(()=>Promise.resolve());return l.then(f=>A(f)).then(()=>l)},set(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}mYr.createInMemoryCache=RAl});var CYr=H((I$u,Tis)=>{Tis.exports=wis()});var Nis=H(V4=>{"use strict";Object.defineProperty(V4,"__esModule",{value:!0});function NAl(e,t,r){let n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===_Yr.WithinHeaders?n:{}},queryParameters(){return e===_Yr.WithinQueryParameters?n:{}}}}function DAl(e){let t=0,r=()=>(t++,new Promise(n=>{setTimeout(()=>{n(e(r))},Math.min(100*t,1e3))}));return e(r)}function Ris(e,t=(r,n)=>Promise.resolve()){return Object.assign(e,{wait(r){return Ris(e.then(n=>Promise.all([t(n,r),n])).then(n=>n[1]))}})}function kAl(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function xAl(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function GAl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var FAl="4.24.0",ZAl=e=>()=>e.transporter.requester.destroy(),_Yr={WithinQueryParameters:0,WithinHeaders:1};V4.AuthMode=_Yr;V4.addMethods=xAl;V4.createAuth=NAl;V4.createRetryablePromise=DAl;V4.createWaitablePromise=Ris;V4.destroy=ZAl;V4.encode=GAl;V4.shuffle=kAl;V4.version=FAl});var Gxe=H((m$u,Dis)=>{Dis.exports=Nis()});var kis=H(yYr=>{"use strict";Object.defineProperty(yYr,"__esModule",{value:!0});var LAl={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};yYr.MethodEnum=LAl});var Fxe=H((_$u,xis)=>{xis.exports=kis()});var Uis=H(Kv=>{"use strict";Object.defineProperty(Kv,"__esModule",{value:!0});var Fis=Fxe();function bYr(e,t){let r=e||{},n=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(n[a]=r[a])}),{data:Object.entries(n).length>0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var Eje={Read:1,Write:2,Any:3},Zxe={Up:1,Down:2,Timeouted:3},Zis=2*60*1e3;function SYr(e,t=Zxe.Up){return{...e,status:t,lastUpdate:Date.now()}}function Lis(e){return e.status===Zxe.Up||Date.now()-e.lastUpdate>Zis}function Vis(e){return e.status===Zxe.Timeouted&&Date.now()-e.lastUpdate<=Zis}function vYr(e){return typeof e=="string"?{protocol:"https",url:e,accept:Eje.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||Eje.Any}}function VAl(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(SYr(r))))).then(r=>{let n=r.filter(A=>Lis(A)),a=r.filter(A=>Vis(A)),o=[...n,...a],l=o.length>0?o.map(A=>vYr(A)):t;return{getTimeout(A,f){return(a.length===0&&A===0?1:a.length+3+A)*f},statelessHosts:l}})}var PAl=({isTimedOut:e,status:t})=>!e&&~~t===0,WAl=e=>{let t=e.status;return e.isTimedOut||PAl(e)||~~(t/100)!==2&&~~(t/100)!==4},OAl=({status:e})=>~~(e/100)===2,MAl=(e,t)=>WAl(e)?t.onRetry(e):OAl(e)?t.onSuccess(e):t.onFail(e);function Gis(e,t,r,n){let a=[],o=His(r,n),l=Yis(e,n),A=r.method,f=r.method!==Fis.MethodEnum.Get?{}:{...r.data,...n.data},I={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...n.queryParameters},C=0,b=(E,N)=>{let B=E.pop();if(B===void 0)throw Jis(EYr(a));let F={data:o,headers:l,method:A,url:Ois(B,r.path,I),connectTimeout:N(C,e.timeouts.connect),responseTimeout:N(C,n.timeout)},Q=ae=>{let ne={request:F,response:ae,host:B,triesLeft:E.length};return a.push(ne),ne},X={onSuccess:ae=>Pis(ae),onRetry(ae){let ne=Q(ae);return ae.isTimedOut&&C++,Promise.all([e.logger.info("Retryable failure",BYr(ne)),e.hostsCache.set(B,SYr(B,ae.isTimedOut?Zxe.Timeouted:Zxe.Down))]).then(()=>b(E,N))},onFail(ae){throw Q(ae),Wis(ae,EYr(a))}};return e.requester.send(F).then(ae=>MAl(ae,X))};return VAl(e.hostsCache,t).then(E=>b([...E.statelessHosts].reverse(),E.getTimeout))}function HAl(e){let{hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,hosts:f,queryParameters:I,headers:C}=e,b={hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,headers:C,queryParameters:I,hosts:f.map(E=>vYr(E)),read(E,N){let B=bYr(N,b.timeouts.read),F=()=>Gis(b,b.hosts.filter(ae=>(ae.accept&Eje.Read)!==0),E,B);if((B.cacheable!==void 0?B.cacheable:E.cacheable)!==!0)return F();let X={request:E,mappedRequestOptions:B,transporter:{queryParameters:b.queryParameters,headers:b.headers}};return b.responsesCache.get(X,()=>b.requestsCache.get(X,()=>b.requestsCache.set(X,F()).then(ae=>Promise.all([b.requestsCache.delete(X),ae]),ae=>Promise.all([b.requestsCache.delete(X),Promise.reject(ae)])).then(([ae,ne])=>ne)),{miss:ae=>b.responsesCache.set(X,ae)})},write(E,N){return Gis(b,b.hosts.filter(B=>(B.accept&Eje.Write)!==0),E,bYr(N,b.timeouts.write))}};return b}function YAl(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let n=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(n)===-1&&(t.value=`${t.value}${n}`),t}};return t}function Pis(e){try{return JSON.parse(e.content)}catch(t){throw Xis(t.message,e)}}function Wis({content:e,status:t},r){let n=e;try{n=JSON.parse(e).message}catch{}return Qis(n,t,r)}function QAl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function Ois(e,t,r){let n=Mis(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return n.length&&(a+=`?${n}`),a}function Mis(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>QAl("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function His(e,t){if(e.method===Fis.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function Yis(e,t){let r={...e.headers,...t.headers},n={};return Object.keys(r).forEach(a=>{let o=r[a];n[a.toLowerCase()]=o}),n}function EYr(e){return e.map(t=>BYr(t))}function BYr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function Qis(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function Xis(e,t){return{name:"DeserializationError",message:e,response:t}}function Jis(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}Kv.CallEnum=Eje;Kv.HostStatusEnum=Zxe;Kv.createApiError=Qis;Kv.createDeserializationError=Xis;Kv.createMappedRequestOptions=bYr;Kv.createRetryError=Jis;Kv.createStatefulHost=SYr;Kv.createStatelessHost=vYr;Kv.createTransporter=HAl;Kv.createUserAgent=YAl;Kv.deserializeFailure=Wis;Kv.deserializeSuccess=Pis;Kv.isStatefulHostTimeouted=Vis;Kv.isStatefulHostUp=Lis;Kv.serializeData=His;Kv.serializeHeaders=Yis;Kv.serializeQueryParameters=Mis;Kv.serializeUrl=Ois;Kv.stackFrameWithoutCredentials=BYr;Kv.stackTraceWithoutCredentials=EYr});var Lxe=H((b$u,Kis)=>{Kis.exports=Uis()});var jis=H($le=>{"use strict";Object.defineProperty($le,"__esModule",{value:!0});var Vxe=Gxe(),XAl=Lxe(),Sje=Fxe(),JAl=e=>{let t=e.region||"us",r=Vxe.createAuth(Vxe.AuthMode.WithinHeaders,e.appId,e.apiKey),n=XAl.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return Vxe.addMethods({appId:a,transporter:n},e.methods)},UAl=e=>(t,r)=>e.transporter.write({method:Sje.MethodEnum.Post,path:"2/abtests",data:t},r),KAl=e=>(t,r)=>e.transporter.write({method:Sje.MethodEnum.Delete,path:Vxe.encode("2/abtests/%s",t)},r),jAl=e=>(t,r)=>e.transporter.read({method:Sje.MethodEnum.Get,path:Vxe.encode("2/abtests/%s",t)},r),zAl=e=>t=>e.transporter.read({method:Sje.MethodEnum.Get,path:"2/abtests"},t),qAl=e=>(t,r)=>e.transporter.write({method:Sje.MethodEnum.Post,path:Vxe.encode("2/abtests/%s/stop",t)},r);$le.addABTest=UAl;$le.createAnalyticsClient=JAl;$le.deleteABTest=KAl;$le.getABTest=jAl;$le.getABTests=zAl;$le.stopABTest=qAl});var qis=H((S$u,zis)=>{zis.exports=jis()});var ess=H(vje=>{"use strict";Object.defineProperty(vje,"__esModule",{value:!0});var wYr=Gxe(),$Al=Lxe(),$is=Fxe(),edl=e=>{let t=e.region||"us",r=wYr.createAuth(wYr.AuthMode.WithinHeaders,e.appId,e.apiKey),n=$Al.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return wYr.addMethods({appId:e.appId,transporter:n},e.methods)},tdl=e=>t=>e.transporter.read({method:$is.MethodEnum.Get,path:"1/strategies/personalization"},t),rdl=e=>(t,r)=>e.transporter.write({method:$is.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);vje.createPersonalizationClient=edl;vje.getPersonalizationStrategy=tdl;vje.setPersonalizationStrategy=rdl});var rss=H((B$u,tss)=>{tss.exports=ess()});var Iss=H(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});var mg=Gxe(),WV=Lxe(),ap=Fxe(),ndl=wt("crypto");function Fkt(e){let t=r=>e.request(r).then(n=>{if(e.batch!==void 0&&e.batch(n.hits),!e.shouldStop(n))return n.cursor?t({cursor:n.cursor}):t({page:(r.page||0)+1})});return t({})}var idl=e=>{let t=e.appId,r=mg.createAuth(e.authMode!==void 0?e.authMode:mg.AuthMode.WithinHeaders,t,e.apiKey),n=WV.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:WV.CallEnum.Read},{url:`${t}.algolia.net`,accept:WV.CallEnum.Write}].concat(mg.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return mg.addMethods(a,e.methods)};function nss(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function iss(){return{name:"ObjectNotFoundError",message:"Object not found."}}function sss(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var sdl=e=>(t,r)=>{let{queryParameters:n,...a}=r||{},o={acl:t,...n!==void 0?{queryParameters:n}:{}},l=(A,f)=>mg.createRetryablePromise(I=>Bje(e)(A.key,f).catch(C=>{if(C.status!==404)throw C;return I()}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:"1/keys",data:o},a),l)},odl=e=>(t,r,n)=>{let a=WV.createMappedRequestOptions(n);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ap.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},adl=e=>(t,r,n)=>e.transporter.write({method:ap.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},n),cdl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(n,a)=>Pxe(e)(n.taskID,a)),Zkt=e=>(t,r,n)=>{let a=(o,l)=>wje(e)(t,{methods:{waitTask:CT}}).waitTask(o.taskID,l);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},n),a)},ldl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Rules]}),udl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Settings]}),gdl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Synonyms]}),Adl=e=>(t,r)=>t.method===ap.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),ddl=e=>(t,r)=>{let n=(a,o)=>mg.createRetryablePromise(l=>Bje(e)(t,o).then(l).catch(A=>{if(A.status!==404)throw A}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/keys/%s",t)},r),n)},pdl=e=>(t,r,n)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>Pxe(e)(o.taskID,l))},fdl=()=>(e,t)=>{let r=WV.serializeQueryParameters(t),n=ndl.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(n+r).toString("base64")},Bje=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/keys/%s",t)},r),oss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/task/%s",t.toString())},r),Idl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),hdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/logs"},t),mdl=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,n=t.match(r);if(n===null)throw sss();return parseInt(n[1],10)-Math.round(new Date().getTime()/1e3)},Cdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping/top"},t),_dl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/clusters/mapping/%s",t)},r),ydl=e=>t=>{let{retrieveMappings:r,...n}=t||{};return r===!0&&(n.getClusters=!0),e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping/pending"},n)},wje=e=>(t,r={})=>{let n={transporter:e.transporter,appId:e.appId,indexName:t};return mg.addMethods(n,r.methods)},bdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/keys"},t),Edl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters"},t),Sdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/indexes"},t),vdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping"},t),Bdl=e=>(t,r,n)=>{let a=(o,l)=>wje(e)(t,{methods:{waitTask:CT}}).waitTask(o.taskID,l);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},n),a)},wdl=e=>(t,r)=>{let n=(a,o)=>Promise.all(Object.keys(a.taskID).map(l=>wje(e)(l,{methods:{waitTask:CT}}).waitTask(a.taskID[l],o)));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),n)},Tdl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),Rdl=e=>(t,r)=>{let n=t.map(a=>({...a,params:WV.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)},Ndl=e=>(t,r)=>Promise.all(t.map(n=>{let{facetName:a,facetQuery:o,...l}=n.params;return wje(e)(n.indexName,{methods:{searchForFacetValues:dss}}).searchForFacetValues(a,o,{...r,...l})})),Ddl=e=>(t,r)=>{let n=WV.createMappedRequestOptions(r);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ap.MethodEnum.Delete,path:"1/clusters/mapping"},n)},kdl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},n),(o,l)=>Pxe(e)(o.taskID,l))},xdl=e=>(t,r)=>{let n=(a,o)=>mg.createRetryablePromise(l=>Bje(e)(t,o).catch(A=>{if(A.status!==404)throw A;return l()}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/keys/%s/restore",t)},r),n)},Gdl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>Pxe(e)(o.taskID,l))},Fdl=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},n),Zdl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Ldl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(n,a)=>Pxe(e)(n.taskID,a)),Vdl=e=>(t,r)=>{let n=Object.assign({},r),{queryParameters:a,...o}=r||{},l=a?{queryParameters:a}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=C=>Object.keys(n).filter(b=>A.indexOf(b)!==-1).every(b=>{if(Array.isArray(C[b])&&Array.isArray(n[b])){let E=C[b];return E.length===n[b].length&&E.every((N,B)=>N===n[b][B])}else return C[b]===n[b]}),I=(C,b)=>mg.createRetryablePromise(E=>Bje(e)(t,b).then(N=>f(N)?Promise.resolve():E()));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:mg.encode("1/keys/%s",t),data:l},o),I)},Pxe=e=>(t,r)=>mg.createRetryablePromise(n=>oss(e)(t,r).then(a=>a.status!=="published"?n():void 0)),ass=e=>(t,r)=>{let n=(a,o)=>CT(e)(a.taskID,o);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),n)},Pdl=e=>t=>Fkt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),Wdl=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Odl=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Lkt=e=>(t,r,n)=>{let{batchSize:a,...o}=n||{},l={taskIDs:[],objectIDs:[]},A=(f=0)=>{let I=[],C;for(C=f;C({action:r,body:b})),o).then(b=>(l.objectIDs=l.objectIDs.concat(b.objectIDs),l.taskIDs.push(b.taskID),C++,A(C)))};return mg.createWaitablePromise(A(),(f,I)=>Promise.all(f.taskIDs.map(C=>CT(e)(C,I))))},Mdl=e=>t=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/clear",e.indexName)},t),(r,n)=>CT(e)(r.taskID,n)),Hdl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=WV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,l)=>CT(e)(o.taskID,l))},Ydl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=WV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,l)=>CT(e)(o.taskID,l))},Qdl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(n,a)=>CT(e)(n.taskID,a)),Xdl=e=>t=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s",e.indexName)},t),(r,n)=>CT(e)(r.taskID,n)),Jdl=e=>(t,r)=>mg.createWaitablePromise(css(e)([t],r).then(n=>({taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),css=e=>(t,r)=>{let n=t.map(a=>({objectID:a}));return Lkt(e)(n,w_e.DeleteObject,r)},Udl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(l,A)=>CT(e)(l.taskID,A))},Kdl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(l,A)=>CT(e)(l.taskID,A))},jdl=e=>t=>lss(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),zdl=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n),qdl=e=>(t,r)=>{let{query:n,paginate:a,...o}=r||{},l=0,A=()=>Ass(e)(n||"",{...o,page:l}).then(f=>{for(let[I,C]of Object.entries(f.hits))if(t(C))return{object:C,position:parseInt(I,10),page:l};if(l++,a===!1||l>=f.nbPages)throw iss();return A()});return A()},$dl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/%s",e.indexName,t)},r),epl=()=>(e,t)=>{for(let[r,n]of Object.entries(e.hits))if(n.objectID===t)return parseInt(r,10);return-1},tpl=e=>(t,r)=>{let{attributesToRetrieve:n,...a}=r||{},o=t.map(l=>({indexName:e.indexName,objectID:l,...n?{attributesToRetrieve:n}:{}}));return e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},rpl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),lss=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),npl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),uss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),ipl=e=>(t,r)=>mg.createWaitablePromise(gss(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),gss=e=>(t,r)=>{let{createIfNotExists:n,...a}=r||{},o=n?w_e.PartialUpdateObject:w_e.PartialUpdateObjectNoCreate;return Lkt(e)(t,o,a)},spl=e=>(t,r)=>{let{safe:n,autoGenerateObjectIDIfNotExist:a,batchSize:o,...l}=r||{},A=(B,F,Q,X)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",B),data:{operation:Q,destination:F}},X),(ae,ne)=>CT(e)(ae.taskID,ne)),f=Math.random().toString(36).substring(7),I=`${e.indexName}_tmp_${f}`,C=TYr({appId:e.appId,transporter:e.transporter,indexName:I}),b=[],E=A(e.indexName,I,"copy",{...l,scope:["settings","synonyms","rules"]});b.push(E);let N=(n?E.wait(l):E).then(()=>{let B=C(t,{...l,autoGenerateObjectIDIfNotExist:a,batchSize:o});return b.push(B),n?B.wait(l):B}).then(()=>{let B=A(I,e.indexName,"move",l);return b.push(B),n?B.wait(l):B}).then(()=>Promise.all(b)).then(([B,F,Q])=>({objectIDs:F.objectIDs,taskIDs:[B.taskID,...F.taskIDs,Q.taskID]}));return mg.createWaitablePromise(N,(B,F)=>Promise.all(b.map(Q=>Q.wait(F))))},opl=e=>(t,r)=>RYr(e)(t,{...r,clearExistingRules:!0}),apl=e=>(t,r)=>NYr(e)(t,{...r,clearExistingSynonyms:!0}),cpl=e=>(t,r)=>mg.createWaitablePromise(TYr(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),TYr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:n,...a}=r||{},o=n?w_e.AddObject:w_e.UpdateObject;if(o===w_e.UpdateObject){for(let l of t)if(l.objectID===void 0)return mg.createWaitablePromise(Promise.reject(nss()))}return Lkt(e)(t,o,a)},lpl=e=>(t,r)=>RYr(e)([t],r),RYr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingRules:a,...o}=r||{},l=WV.createMappedRequestOptions(o);return n&&(l.queryParameters.forwardToReplicas=1),a&&(l.queryParameters.clearExistingRules=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/batch",e.indexName),data:t},l),(A,f)=>CT(e)(A.taskID,f))},upl=e=>(t,r)=>NYr(e)([t],r),NYr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingSynonyms:a,replaceExistingSynonyms:o,...l}=r||{},A=WV.createMappedRequestOptions(l);return n&&(A.queryParameters.forwardToReplicas=1),(o||a)&&(A.queryParameters.replaceExistingSynonyms=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},A),(f,I)=>CT(e)(f.taskID,I))},Ass=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),dss=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n),pss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),fss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),gpl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:mg.encode("1/indexes/%s/settings",e.indexName),data:t},o),(l,A)=>CT(e)(l.taskID,A))},CT=e=>(t,r)=>mg.createRetryablePromise(n=>uss(e)(t,r).then(a=>a.status!=="published"?n():void 0)),Apl={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},w_e={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},Vkt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},dpl={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},ppl={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};cu.ApiKeyACLEnum=Apl;cu.BatchActionEnum=w_e;cu.ScopeEnum=Vkt;cu.StrategyEnum=dpl;cu.SynonymEnum=ppl;cu.addApiKey=sdl;cu.assignUserID=odl;cu.assignUserIDs=adl;cu.batch=ass;cu.browseObjects=Pdl;cu.browseRules=Wdl;cu.browseSynonyms=Odl;cu.chunkedBatch=Lkt;cu.clearDictionaryEntries=cdl;cu.clearObjects=Mdl;cu.clearRules=Hdl;cu.clearSynonyms=Ydl;cu.copyIndex=Zkt;cu.copyRules=ldl;cu.copySettings=udl;cu.copySynonyms=gdl;cu.createBrowsablePromise=Fkt;cu.createMissingObjectIDError=nss;cu.createObjectNotFoundError=iss;cu.createSearchClient=idl;cu.createValidUntilNotFoundError=sss;cu.customRequest=Adl;cu.deleteApiKey=ddl;cu.deleteBy=Qdl;cu.deleteDictionaryEntries=pdl;cu.deleteIndex=Xdl;cu.deleteObject=Jdl;cu.deleteObjects=css;cu.deleteRule=Udl;cu.deleteSynonym=Kdl;cu.exists=jdl;cu.findAnswers=zdl;cu.findObject=qdl;cu.generateSecuredApiKey=fdl;cu.getApiKey=Bje;cu.getAppTask=oss;cu.getDictionarySettings=Idl;cu.getLogs=hdl;cu.getObject=$dl;cu.getObjectPosition=epl;cu.getObjects=tpl;cu.getRule=rpl;cu.getSecuredApiKeyRemainingValidity=mdl;cu.getSettings=lss;cu.getSynonym=npl;cu.getTask=uss;cu.getTopUserIDs=Cdl;cu.getUserID=_dl;cu.hasPendingMappings=ydl;cu.initIndex=wje;cu.listApiKeys=bdl;cu.listClusters=Edl;cu.listIndices=Sdl;cu.listUserIDs=vdl;cu.moveIndex=Bdl;cu.multipleBatch=wdl;cu.multipleGetObjects=Tdl;cu.multipleQueries=Rdl;cu.multipleSearchForFacetValues=Ndl;cu.partialUpdateObject=ipl;cu.partialUpdateObjects=gss;cu.removeUserID=Ddl;cu.replaceAllObjects=spl;cu.replaceAllRules=opl;cu.replaceAllSynonyms=apl;cu.replaceDictionaryEntries=kdl;cu.restoreApiKey=xdl;cu.saveDictionaryEntries=Gdl;cu.saveObject=cpl;cu.saveObjects=TYr;cu.saveRule=lpl;cu.saveRules=RYr;cu.saveSynonym=upl;cu.saveSynonyms=NYr;cu.search=Ass;cu.searchDictionaryEntries=Fdl;cu.searchForFacetValues=dss;cu.searchRules=pss;cu.searchSynonyms=fss;cu.searchUserIDs=Zdl;cu.setDictionarySettings=Ldl;cu.setSettings=gpl;cu.updateApiKey=Vdl;cu.waitAppTask=Pxe;cu.waitTask=CT});var mss=H((T$u,hss)=>{hss.exports=Iss()});var Css=H(Pkt=>{"use strict";Object.defineProperty(Pkt,"__esModule",{value:!0});function fpl(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var Ipl={Debug:1,Info:2,Error:3};Pkt.LogLevelEnum=Ipl;Pkt.createNullLogger=fpl});var DYr=H((N$u,_ss)=>{_ss.exports=Css()});var Sss=H(kYr=>{"use strict";Object.defineProperty(kYr,"__esModule",{value:!0});var yss=wt("http"),bss=wt("https"),hpl=wt("url"),Ess={keepAlive:!0},mpl=new yss.Agent(Ess),Cpl=new bss.Agent(Ess);function _pl({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:n={}}={}){let a=t||e||mpl,o=r||e||Cpl;return{send(l){return new Promise(A=>{let f=hpl.parse(l.url),I=f.query===null?f.pathname:`${f.pathname}?${f.query}`,C={...n,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:I,method:l.method,headers:{...n&&n.headers?n.headers:{},...l.headers},...f.port!==void 0?{port:f.port||""}:{}},b=(f.protocol==="https:"?bss:yss).request(C,F=>{let Q=[];F.on("data",X=>{Q=Q.concat(X)}),F.on("end",()=>{clearTimeout(N),clearTimeout(B),A({status:F.statusCode||0,content:Buffer.concat(Q).toString(),isTimedOut:!1})})}),E=(F,Q)=>setTimeout(()=>{b.abort(),A({status:0,content:Q,isTimedOut:!0})},F*1e3),N=E(l.connectTimeout,"Connection timeout"),B;b.on("error",F=>{clearTimeout(N),clearTimeout(B),A({status:0,content:F.message,isTimedOut:!1})}),b.once("response",()=>{clearTimeout(N),B=E(l.responseTimeout,"Socket timeout")}),l.data!==void 0&&b.write(l.data),b.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}kYr.createNodeHttpRequester=_pl});var xYr=H((k$u,vss)=>{vss.exports=Sss()});var Gss=H((x$u,xss)=>{"use strict";var Bss=hYr(),ypl=CYr(),eue=Gxe(),bpl=DYr(),Epl=xYr(),Wkt=Lxe(),Okt=Fxe(),Spl=e=>{let t=e.appId,r=eue.createAuth(e.authMode!==void 0?e.authMode:eue.AuthMode.WithinHeaders,t,e.apiKey),n=Wkt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:Wkt.CallEnum.Read},{url:`${t}.algolia.net`,accept:Wkt.CallEnum.Write}].concat(eue.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return eue.addMethods(a,e.methods)},Tje=e=>(t,r)=>{let n=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},wss=e=>(t,r)=>Tje(e)(t.map(n=>({...n,fallbackParameters:{},model:"bought-together"})),r),Tss=e=>(t,r)=>Tje(e)(t.map(n=>({...n,model:"related-products"})),r),Rss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Nss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Dss=e=>(t,r)=>Tje(e)(t.map(n=>({...n,model:"looking-similar"})),r),kss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)};function Ste(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:Epl.createNodeHttpRequester(),logger:bpl.createNullLogger(),responsesCache:Bss.createNullCache(),requestsCache:Bss.createNullCache(),hostsCache:ypl.createInMemoryCache(),userAgent:Wkt.createUserAgent(eue.version).add({segment:"Recommend",version:eue.version}).add({segment:"Node.js",version:process.versions.node})};return Spl({...n,...r,methods:{destroy:eue.destroy,getFrequentlyBoughtTogether:wss,getRecommendations:Tje,getRelatedProducts:Tss,getTrendingFacets:Rss,getTrendingItems:Nss,getLookingSimilar:Dss,getRecommendedForYou:kss}})}Ste.version=eue.version;Ste.getFrequentlyBoughtTogether=wss;Ste.getRecommendations=Tje;Ste.getRelatedProducts=Tss;Ste.getTrendingFacets=Rss;Ste.getTrendingItems=Nss;Ste.getLookingSimilar=Dss;Ste.getRecommendedForYou=kss;xss.exports=Ste});var Zss=H((G$u,GYr)=>{var Fss=Gss();GYr.exports=Fss;GYr.exports.default=Fss});var Wss=H((F$u,Pss)=>{"use strict";var Lss=hYr(),vpl=CYr(),Wxe=qis(),ZYr=Gxe(),FYr=rss(),ju=mss(),Bpl=DYr(),T_e=Zss(),wpl=xYr(),Tpl=Lxe();function Vss(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:wpl.createNodeHttpRequester(),logger:Bpl.createNullLogger(),responsesCache:Lss.createNullCache(),requestsCache:Lss.createNullCache(),hostsCache:vpl.createInMemoryCache(),userAgent:Tpl.createUserAgent(ZYr.version).add({segment:"Node.js",version:process.versions.node})},a={...n,...r},o=()=>l=>FYr.createPersonalizationClient({...n,...l,methods:{getPersonalizationStrategy:FYr.getPersonalizationStrategy,setPersonalizationStrategy:FYr.setPersonalizationStrategy}});return ju.createSearchClient({...a,methods:{search:ju.multipleQueries,searchForFacetValues:ju.multipleSearchForFacetValues,multipleBatch:ju.multipleBatch,multipleGetObjects:ju.multipleGetObjects,multipleQueries:ju.multipleQueries,copyIndex:ju.copyIndex,copySettings:ju.copySettings,copyRules:ju.copyRules,copySynonyms:ju.copySynonyms,moveIndex:ju.moveIndex,listIndices:ju.listIndices,getLogs:ju.getLogs,listClusters:ju.listClusters,multipleSearchForFacetValues:ju.multipleSearchForFacetValues,getApiKey:ju.getApiKey,addApiKey:ju.addApiKey,listApiKeys:ju.listApiKeys,updateApiKey:ju.updateApiKey,deleteApiKey:ju.deleteApiKey,restoreApiKey:ju.restoreApiKey,assignUserID:ju.assignUserID,assignUserIDs:ju.assignUserIDs,getUserID:ju.getUserID,searchUserIDs:ju.searchUserIDs,listUserIDs:ju.listUserIDs,getTopUserIDs:ju.getTopUserIDs,removeUserID:ju.removeUserID,hasPendingMappings:ju.hasPendingMappings,generateSecuredApiKey:ju.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:ju.getSecuredApiKeyRemainingValidity,destroy:ZYr.destroy,clearDictionaryEntries:ju.clearDictionaryEntries,deleteDictionaryEntries:ju.deleteDictionaryEntries,getDictionarySettings:ju.getDictionarySettings,getAppTask:ju.getAppTask,replaceDictionaryEntries:ju.replaceDictionaryEntries,saveDictionaryEntries:ju.saveDictionaryEntries,searchDictionaryEntries:ju.searchDictionaryEntries,setDictionarySettings:ju.setDictionarySettings,waitAppTask:ju.waitAppTask,customRequest:ju.customRequest,initIndex:l=>A=>ju.initIndex(l)(A,{methods:{batch:ju.batch,delete:ju.deleteIndex,findAnswers:ju.findAnswers,getObject:ju.getObject,getObjects:ju.getObjects,saveObject:ju.saveObject,saveObjects:ju.saveObjects,search:ju.search,searchForFacetValues:ju.searchForFacetValues,waitTask:ju.waitTask,setSettings:ju.setSettings,getSettings:ju.getSettings,partialUpdateObject:ju.partialUpdateObject,partialUpdateObjects:ju.partialUpdateObjects,deleteObject:ju.deleteObject,deleteObjects:ju.deleteObjects,deleteBy:ju.deleteBy,clearObjects:ju.clearObjects,browseObjects:ju.browseObjects,getObjectPosition:ju.getObjectPosition,findObject:ju.findObject,exists:ju.exists,saveSynonym:ju.saveSynonym,saveSynonyms:ju.saveSynonyms,getSynonym:ju.getSynonym,searchSynonyms:ju.searchSynonyms,browseSynonyms:ju.browseSynonyms,deleteSynonym:ju.deleteSynonym,clearSynonyms:ju.clearSynonyms,replaceAllObjects:ju.replaceAllObjects,replaceAllSynonyms:ju.replaceAllSynonyms,searchRules:ju.searchRules,getRule:ju.getRule,deleteRule:ju.deleteRule,saveRule:ju.saveRule,saveRules:ju.saveRules,replaceAllRules:ju.replaceAllRules,browseRules:ju.browseRules,clearRules:ju.clearRules}}),initAnalytics:()=>l=>Wxe.createAnalyticsClient({...n,...l,methods:{addABTest:Wxe.addABTest,getABTest:Wxe.getABTest,getABTests:Wxe.getABTests,stopABTest:Wxe.stopABTest,deleteABTest:Wxe.deleteABTest}}),initPersonalization:o,initRecommendation:()=>l=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(l)),getRecommendations:T_e.getRecommendations,getFrequentlyBoughtTogether:T_e.getFrequentlyBoughtTogether,getLookingSimilar:T_e.getLookingSimilar,getRecommendedForYou:T_e.getRecommendedForYou,getRelatedProducts:T_e.getRelatedProducts,getTrendingFacets:T_e.getTrendingFacets,getTrendingItems:T_e.getTrendingItems}})}Vss.version=ZYr.version;Pss.exports=Vss});var VYr=H((Z$u,LYr)=>{var Oss=Wss();LYr.exports=Oss;LYr.exports.default=Oss});var Mss=H(Mkt=>{"use strict";Object.defineProperty(Mkt,"__esModule",{value:!0});Mkt.search=void 0;var Rpl=(Pa(),vi(Va)),Npl=Rpl.__importDefault(VYr()),PYr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},Dpl=(0,Npl.default)(PYr.appId,PYr.apiKey).initIndex(PYr.indexName),kpl=async(e,t=0)=>await Dpl.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});Mkt.search=kpl});var OYr=H(Hkt=>{"use strict";Object.defineProperty(Hkt,"__esModule",{value:!0});Hkt.useMinistore=xpl;Hkt.useMinistoreSetAll=Gpl;var WYr=sC(),Hss=bGr();function xpl(e,t){let r=(0,WYr.useContext)(Hss.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let n=(0,WYr.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,n]}function Gpl(){let e=(0,WYr.useContext)(Hss.MinistoreContext);if(e===null)throw new Error("Expected this hook to run with a ministore context attached");return e.setAll}});var Jss=H(Rje=>{"use strict";Object.defineProperty(Rje,"__esModule",{value:!0});Rje.UncontrolledTextInput=void 0;var Qss=sC(),MYr=sC(),Yss=lH(),R_e=VK(),Xss=({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A})=>{let[{cursorOffset:f,cursorWidth:I},C]=MYr.useState({cursorOffset:(e||"").length,cursorWidth:0});MYr.useEffect(()=>{C(F=>{if(!r||!o)return F;let Q=e||"";return F.cursorOffset>Q.length-1?{cursorOffset:Q.length,cursorWidth:0}:F})},[e,r,o]);let b=a?I:0,E=n?n.repeat(e.length):e,N=E,B=t?R_e.grey(t):void 0;if(o&&r){B=t.length>0?R_e.inverse(t[0])+R_e.grey(t.slice(1)):R_e.inverse(" "),N=E.length>0?"":R_e.inverse(" ");let F=0;for(let Q of E)F>=f-b&&F<=f?N+=R_e.inverse(Q):N+=Q,F++;E.length>0&&f===E.length&&(N+=R_e.inverse(" "))}return Yss.useInput((F,Q)=>{if(Q.upArrow||Q.downArrow||Q.ctrl&&F==="c"||Q.tab||Q.shift&&Q.tab)return;if(Q.return){A&&A(e);return}let X=f,ae=e,ne=0;Q.leftArrow?o&&X--:Q.rightArrow?o&&X++:Q.backspace||Q.delete?f>0&&(ae=e.slice(0,f-1)+e.slice(f,e.length),X--):(ae=e.slice(0,f)+F+e.slice(f,e.length),X+=F.length,F.length>1&&(ne=F.length)),f<0&&(X=0),f>e.length&&(X=e.length),C({cursorOffset:X,cursorWidth:ne}),ae!==e&&l(ae)},{isActive:r}),Qss.createElement(Yss.Text,null,t?E.length>0?N:B:N)};Rje.default=Xss;Rje.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,n]=MYr.useState(e);return Qss.createElement(Xss,Object.assign({},t,{value:r,onChange:n}))}});var Kss=H(HYr=>{"use strict";Object.defineProperty(HYr,"__esModule",{value:!0});var vte=(Pa(),vi(Va)),Fpl=el(),Nje=Sn(),Zpl=vte.__importStar(A1t()),Lpl=($c(),vi(rg)),Uss=Mss(),Dje=["regular","dev","peer"],kje=class extends Fpl.BaseCommand{async execute(){Zpl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>vte.__importStar(v1t())),{ScrollableItems:r}=await Promise.resolve().then(()=>vte.__importStar(N1t())),{useKeypress:n}=await Promise.resolve().then(()=>vte.__importStar(aDe())),{useMinistore:a}=await Promise.resolve().then(()=>vte.__importStar(OYr())),{renderForm:o}=await Promise.resolve().then(()=>vte.__importStar(D1t())),{default:l}=await Promise.resolve().then(()=>vte.__importStar(Jss())),{Box:A,Text:f}=await Promise.resolve().then(()=>vte.__importStar(lH())),{default:I,useEffect:C,useState:b}=await Promise.resolve().then(()=>vte.__importStar(sC())),E=await Nje.Configuration.find(this.context.cwd,this.context.plugins),N=()=>I.createElement(A,{flexDirection:"row"},I.createElement(A,{flexDirection:"column",width:48},I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},""),"/",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),I.createElement(A,{flexDirection:"column"},I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),B=()=>I.createElement(I.Fragment,null,I.createElement(A,{width:15},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),I.createElement(A,{width:11},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),I.createElement(A,{width:10},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),F=()=>I.createElement(A,{width:17},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),Q=({hit:be,active:Se})=>{let[De,k]=a(be.name,null);n({active:Se},(Me,je)=>{if(je.name!=="space")return;if(!De){k(Dje[0]);return}let St=Dje.indexOf(De)+1;St===Dje.length?k(null):k(Dje[St])},[De,k]);let et=Nje.structUtils.parseIdent(be.name),ct=Nje.structUtils.prettyIdent(E,et);return I.createElement(A,null,I.createElement(A,{width:45},I.createElement(f,{bold:!0,wrap:"wrap"},ct)),I.createElement(A,{width:14,marginLeft:1},I.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),I.createElement(A,{width:10,marginLeft:1},I.createElement(f,{italic:!0,wrap:"truncate"},be.version)),I.createElement(A,{width:16,marginLeft:1},I.createElement(f,null,be.humanDownloadsLast30Days)))},X=({name:be,active:Se})=>{let[De]=a(be,null),k=Nje.structUtils.parseIdent(be);return I.createElement(A,null,I.createElement(A,{width:47},I.createElement(f,{bold:!0}," - ",Nje.structUtils.prettyIdent(E,k))),Dje.map(et=>I.createElement(A,{key:et,width:14,marginLeft:1},I.createElement(f,null," ",I.createElement(t,{active:De===et})," ",I.createElement(f,{bold:!0},et)))))},ae=()=>I.createElement(A,{marginTop:1},I.createElement(f,null,"Powered by Algolia.")),ce=await o(({useSubmit:be})=>{let Se=a();be(Se);let De=Array.from(Se.keys()).filter(Nr=>Se.get(Nr)!==null),[k,et]=b(""),[ct,Me]=b(0),[je,St]=b([]),At=Nr=>{Nr.match(/\t| /)||et(Nr)},Yt=async()=>{Me(0);let Nr=await(0,Uss.search)(k);Nr.query===k&&St(Nr.hits)},Tr=async()=>{let Nr=await(0,Uss.search)(k,ct+1);Nr.query===k&&Nr.page-1===ct&&(Me(Nr.page),St([...je,...Nr.hits]))};return C(()=>{k?Yt():St([])},[k]),I.createElement(A,{flexDirection:"column"},I.createElement(N,null),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(f,{bold:!0},"Search: "),I.createElement(A,{width:41},I.createElement(l,{value:k,onChange:At,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),I.createElement(B,null)),je.length?I.createElement(r,{radius:2,loop:!1,children:je.map(Nr=>I.createElement(Q,{key:Nr.name,hit:Nr,active:!1})),willReachEnd:Tr}):I.createElement(f,{color:"gray"},"Start typing..."),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(A,{width:49},I.createElement(f,{bold:!0},"Selected:")),I.createElement(F,null)),De.length?De.map(Nr=>I.createElement(X,{key:Nr,name:Nr,active:!1})):I.createElement(f,{color:"gray"},"No selected packages..."),I.createElement(ae,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ce>"u")return 1;let fe=Array.from(ce.keys()).filter(be=>ce.get(be)==="regular"),ue=Array.from(ce.keys()).filter(be=>ce.get(be)==="dev"),de=Array.from(ce.keys()).filter(be=>ce.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),ue.length&&await this.cli.run(["add","--dev",...ue]),de&&await this.cli.run(["add","--peer",...de]),0}};kje.paths=[["search"]];kje.usage=Lpl.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` +`)}};Eje.InvalidInputOptions=Rkt;function idl(e){return(t,r,n)=>{r=(0,_is.deepCopy)(r);let a=n?n.interactive:!0;return t.schema&&t.schemaJson?(0,Cis.from)(e.compile(t.schemaJson)).pipe((0,pYr.mergeMap)(o=>o(r,{withPrompts:a})),(0,pYr.first)(),(0,pYr.map)(o=>{if(!o.success)throw new Rkt(r,o.errors||[]);return r})):(0,Cis.of)(r)}}});var yis=H(Dkt=>{"use strict";Object.defineProperty(Dkt,"__esModule",{value:!0});Dkt.NodeWorkflow=void 0;var Nkt=Z2(),sdl=zDt(),odl=kxe(),IYr=pis(),adl=wkt(),cdl=fYr(),hYr=class extends odl.workflow.BaseWorkflow{constructor(t,r){let n,a;typeof t=="string"?(a=(0,Nkt.normalize)(t),n=new Nkt.virtualFs.ScopedHost(new sdl.NodeJsSyncHost,a)):(n=t,a=r.root);let o=r.engineHostCreator?.(r)||new adl.NodeModulesEngineHost(r.resolvePaths);if(super({host:n,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(IYr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,Nkt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(IYr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,Nkt.getSystemPath)(a)}),o.registerTaskExecutor(IYr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let l of r.optionTransforms)o.registerOptionsTransform(l);r.schemaValidation&&o.registerOptionsTransform((0,cdl.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};Dkt.NodeWorkflow=hYr});var bis=H(o6=>{"use strict";var ldl=o6&&o6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),udl=o6&&o6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gdl=o6&&o6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;agdl(wt(n))).then(n=>(n.default?.default||n.default)())).pipe((0,CYr.catchError)(()=>(0,CYr.throwError)(()=>new Adl.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};o6.FileSystemEngineHost=_Yr});var Eis=H(Gkt=>{"use strict";Object.defineProperty(Gkt,"__esModule",{value:!0});Gkt.NodeModulesTestEngineHost=void 0;var pdl=wkt(),yYr=class extends pdl.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(n,a)=>(this.#t.push(n.toConfiguration()),r(n,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};Gkt.NodeModulesTestEngineHost=yYr});var vis=H(mT=>{"use strict";var fdl=mT&&mT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Fkt=mT&&mT.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&fdl(t,e,r)};Object.defineProperty(mT,"__esModule",{value:!0});mT.validateOptionsWithSchema=mT.NodeModulesTestEngineHost=mT.NodePackageDoesNotSupportSchematics=mT.NodeModulesEngineHost=mT.FileSystemEngineHost=void 0;Fkt(Fns(),mT);Fkt(gkt(),mT);Fkt(fkt(),mT);Fkt(yis(),mT);var Idl=bis();Object.defineProperty(mT,"FileSystemEngineHost",{enumerable:!0,get:function(){return Idl.FileSystemEngineHost}});var Sis=wkt();Object.defineProperty(mT,"NodeModulesEngineHost",{enumerable:!0,get:function(){return Sis.NodeModulesEngineHost}});Object.defineProperty(mT,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return Sis.NodePackageDoesNotSupportSchematics}});var hdl=Eis();Object.defineProperty(mT,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return hdl.NodeModulesTestEngineHost}});var mdl=fYr();Object.defineProperty(mT,"validateOptionsWithSchema",{enumerable:!0,get:function(){return mdl.validateOptionsWithSchema}})});var Ois=H(Vkt=>{"use strict";Object.defineProperty(Vkt,"__esModule",{value:!0});function Sje(e){let t=[...e.caches],r=t.shift();return r===void 0?Wis():{get(n,a,o={miss:()=>Promise.resolve()}){return r.get(n,a,o).catch(()=>Sje({caches:t}).get(n,a,o))},set(n,a){return r.set(n,a).catch(()=>Sje({caches:t}).set(n,a))},delete(n){return r.delete(n).catch(()=>Sje({caches:t}).delete(n))},clear(){return r.clear().catch(()=>Sje({caches:t}).clear())}}}function Wis(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}Vkt.createFallbackableCache=Sje;Vkt.createNullCache=Wis});var SYr=H((Seg,Mis)=>{Mis.exports=Ois()});var His=H(vYr=>{"use strict";Object.defineProperty(vYr,"__esModule",{value:!0});function ydl(e={serializable:!0}){let t={};return{get(r,n,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let l=n(),A=a&&a.miss||(()=>Promise.resolve());return l.then(f=>A(f)).then(()=>l)},set(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}vYr.createInMemoryCache=ydl});var BYr=H((Beg,Yis)=>{Yis.exports=His()});var Xis=H(V4=>{"use strict";Object.defineProperty(V4,"__esModule",{value:!0});function bdl(e,t,r){let n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===wYr.WithinHeaders?n:{}},queryParameters(){return e===wYr.WithinQueryParameters?n:{}}}}function Edl(e){let t=0,r=()=>(t++,new Promise(n=>{setTimeout(()=>{n(e(r))},Math.min(100*t,1e3))}));return e(r)}function Qis(e,t=(r,n)=>Promise.resolve()){return Object.assign(e,{wait(r){return Qis(e.then(n=>Promise.all([t(n,r),n])).then(n=>n[1]))}})}function Sdl(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function vdl(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function Bdl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var wdl="4.24.0",Tdl=e=>()=>e.transporter.requester.destroy(),wYr={WithinQueryParameters:0,WithinHeaders:1};V4.AuthMode=wYr;V4.addMethods=vdl;V4.createAuth=bdl;V4.createRetryablePromise=Edl;V4.createWaitablePromise=Qis;V4.destroy=Tdl;V4.encode=Bdl;V4.shuffle=Sdl;V4.version=wdl});var Zxe=H((Teg,Jis)=>{Jis.exports=Xis()});var Uis=H(TYr=>{"use strict";Object.defineProperty(TYr,"__esModule",{value:!0});var Rdl={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};TYr.MethodEnum=Rdl});var Lxe=H((Neg,Kis)=>{Kis.exports=Uis()});var uss=H(Kv=>{"use strict";Object.defineProperty(Kv,"__esModule",{value:!0});var zis=Lxe();function RYr(e,t){let r=e||{},n=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(n[a]=r[a])}),{data:Object.entries(n).length>0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var vje={Read:1,Write:2,Any:3},Vxe={Up:1,Down:2,Timeouted:3},qis=2*60*1e3;function DYr(e,t=Vxe.Up){return{...e,status:t,lastUpdate:Date.now()}}function $is(e){return e.status===Vxe.Up||Date.now()-e.lastUpdate>qis}function ess(e){return e.status===Vxe.Timeouted&&Date.now()-e.lastUpdate<=qis}function kYr(e){return typeof e=="string"?{protocol:"https",url:e,accept:vje.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||vje.Any}}function Ndl(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(DYr(r))))).then(r=>{let n=r.filter(A=>$is(A)),a=r.filter(A=>ess(A)),o=[...n,...a],l=o.length>0?o.map(A=>kYr(A)):t;return{getTimeout(A,f){return(a.length===0&&A===0?1:a.length+3+A)*f},statelessHosts:l}})}var Ddl=({isTimedOut:e,status:t})=>!e&&~~t===0,kdl=e=>{let t=e.status;return e.isTimedOut||Ddl(e)||~~(t/100)!==2&&~~(t/100)!==4},xdl=({status:e})=>~~(e/100)===2,Gdl=(e,t)=>kdl(e)?t.onRetry(e):xdl(e)?t.onSuccess(e):t.onFail(e);function jis(e,t,r,n){let a=[],o=sss(r,n),l=oss(e,n),A=r.method,f=r.method!==zis.MethodEnum.Get?{}:{...r.data,...n.data},I={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...n.queryParameters},C=0,b=(E,N)=>{let B=E.pop();if(B===void 0)throw lss(NYr(a));let F={data:o,headers:l,method:A,url:nss(B,r.path,I),connectTimeout:N(C,e.timeouts.connect),responseTimeout:N(C,n.timeout)},Q=ae=>{let ne={request:F,response:ae,host:B,triesLeft:E.length};return a.push(ne),ne},X={onSuccess:ae=>tss(ae),onRetry(ae){let ne=Q(ae);return ae.isTimedOut&&C++,Promise.all([e.logger.info("Retryable failure",xYr(ne)),e.hostsCache.set(B,DYr(B,ae.isTimedOut?Vxe.Timeouted:Vxe.Down))]).then(()=>b(E,N))},onFail(ae){throw Q(ae),rss(ae,NYr(a))}};return e.requester.send(F).then(ae=>Gdl(ae,X))};return Ndl(e.hostsCache,t).then(E=>b([...E.statelessHosts].reverse(),E.getTimeout))}function Fdl(e){let{hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,hosts:f,queryParameters:I,headers:C}=e,b={hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,headers:C,queryParameters:I,hosts:f.map(E=>kYr(E)),read(E,N){let B=RYr(N,b.timeouts.read),F=()=>jis(b,b.hosts.filter(ae=>(ae.accept&vje.Read)!==0),E,B);if((B.cacheable!==void 0?B.cacheable:E.cacheable)!==!0)return F();let X={request:E,mappedRequestOptions:B,transporter:{queryParameters:b.queryParameters,headers:b.headers}};return b.responsesCache.get(X,()=>b.requestsCache.get(X,()=>b.requestsCache.set(X,F()).then(ae=>Promise.all([b.requestsCache.delete(X),ae]),ae=>Promise.all([b.requestsCache.delete(X),Promise.reject(ae)])).then(([ae,ne])=>ne)),{miss:ae=>b.responsesCache.set(X,ae)})},write(E,N){return jis(b,b.hosts.filter(B=>(B.accept&vje.Write)!==0),E,RYr(N,b.timeouts.write))}};return b}function Zdl(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let n=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(n)===-1&&(t.value=`${t.value}${n}`),t}};return t}function tss(e){try{return JSON.parse(e.content)}catch(t){throw css(t.message,e)}}function rss({content:e,status:t},r){let n=e;try{n=JSON.parse(e).message}catch{}return ass(n,t,r)}function Ldl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function nss(e,t,r){let n=iss(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return n.length&&(a+=`?${n}`),a}function iss(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>Ldl("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function sss(e,t){if(e.method===zis.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function oss(e,t){let r={...e.headers,...t.headers},n={};return Object.keys(r).forEach(a=>{let o=r[a];n[a.toLowerCase()]=o}),n}function NYr(e){return e.map(t=>xYr(t))}function xYr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function ass(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function css(e,t){return{name:"DeserializationError",message:e,response:t}}function lss(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}Kv.CallEnum=vje;Kv.HostStatusEnum=Vxe;Kv.createApiError=ass;Kv.createDeserializationError=css;Kv.createMappedRequestOptions=RYr;Kv.createRetryError=lss;Kv.createStatefulHost=DYr;Kv.createStatelessHost=kYr;Kv.createTransporter=Fdl;Kv.createUserAgent=Zdl;Kv.deserializeFailure=rss;Kv.deserializeSuccess=tss;Kv.isStatefulHostTimeouted=ess;Kv.isStatefulHostUp=$is;Kv.serializeData=sss;Kv.serializeHeaders=oss;Kv.serializeQueryParameters=iss;Kv.serializeUrl=nss;Kv.stackFrameWithoutCredentials=xYr;Kv.stackTraceWithoutCredentials=NYr});var Pxe=H((keg,gss)=>{gss.exports=uss()});var Ass=H(eue=>{"use strict";Object.defineProperty(eue,"__esModule",{value:!0});var Wxe=Zxe(),Vdl=Pxe(),Bje=Lxe(),Pdl=e=>{let t=e.region||"us",r=Wxe.createAuth(Wxe.AuthMode.WithinHeaders,e.appId,e.apiKey),n=Vdl.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return Wxe.addMethods({appId:a,transporter:n},e.methods)},Wdl=e=>(t,r)=>e.transporter.write({method:Bje.MethodEnum.Post,path:"2/abtests",data:t},r),Odl=e=>(t,r)=>e.transporter.write({method:Bje.MethodEnum.Delete,path:Wxe.encode("2/abtests/%s",t)},r),Mdl=e=>(t,r)=>e.transporter.read({method:Bje.MethodEnum.Get,path:Wxe.encode("2/abtests/%s",t)},r),Hdl=e=>t=>e.transporter.read({method:Bje.MethodEnum.Get,path:"2/abtests"},t),Ydl=e=>(t,r)=>e.transporter.write({method:Bje.MethodEnum.Post,path:Wxe.encode("2/abtests/%s/stop",t)},r);eue.addABTest=Wdl;eue.createAnalyticsClient=Pdl;eue.deleteABTest=Odl;eue.getABTest=Mdl;eue.getABTests=Hdl;eue.stopABTest=Ydl});var pss=H((Geg,dss)=>{dss.exports=Ass()});var Iss=H(wje=>{"use strict";Object.defineProperty(wje,"__esModule",{value:!0});var GYr=Zxe(),Qdl=Pxe(),fss=Lxe(),Xdl=e=>{let t=e.region||"us",r=GYr.createAuth(GYr.AuthMode.WithinHeaders,e.appId,e.apiKey),n=Qdl.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return GYr.addMethods({appId:e.appId,transporter:n},e.methods)},Jdl=e=>t=>e.transporter.read({method:fss.MethodEnum.Get,path:"1/strategies/personalization"},t),Udl=e=>(t,r)=>e.transporter.write({method:fss.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);wje.createPersonalizationClient=Xdl;wje.getPersonalizationStrategy=Jdl;wje.setPersonalizationStrategy=Udl});var mss=H((Zeg,hss)=>{hss.exports=Iss()});var kss=H(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});var mg=Zxe(),WV=Pxe(),ap=Lxe(),Kdl=wt("crypto");function Pkt(e){let t=r=>e.request(r).then(n=>{if(e.batch!==void 0&&e.batch(n.hits),!e.shouldStop(n))return n.cursor?t({cursor:n.cursor}):t({page:(r.page||0)+1})});return t({})}var jdl=e=>{let t=e.appId,r=mg.createAuth(e.authMode!==void 0?e.authMode:mg.AuthMode.WithinHeaders,t,e.apiKey),n=WV.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:WV.CallEnum.Read},{url:`${t}.algolia.net`,accept:WV.CallEnum.Write}].concat(mg.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return mg.addMethods(a,e.methods)};function Css(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function _ss(){return{name:"ObjectNotFoundError",message:"Object not found."}}function yss(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var zdl=e=>(t,r)=>{let{queryParameters:n,...a}=r||{},o={acl:t,...n!==void 0?{queryParameters:n}:{}},l=(A,f)=>mg.createRetryablePromise(I=>Tje(e)(A.key,f).catch(C=>{if(C.status!==404)throw C;return I()}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:"1/keys",data:o},a),l)},qdl=e=>(t,r,n)=>{let a=WV.createMappedRequestOptions(n);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ap.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},$dl=e=>(t,r,n)=>e.transporter.write({method:ap.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},n),epl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(n,a)=>Oxe(e)(n.taskID,a)),Wkt=e=>(t,r,n)=>{let a=(o,l)=>Rje(e)(t,{methods:{waitTask:CT}}).waitTask(o.taskID,l);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},n),a)},tpl=e=>(t,r,n)=>Wkt(e)(t,r,{...n,scope:[Mkt.Rules]}),rpl=e=>(t,r,n)=>Wkt(e)(t,r,{...n,scope:[Mkt.Settings]}),npl=e=>(t,r,n)=>Wkt(e)(t,r,{...n,scope:[Mkt.Synonyms]}),ipl=e=>(t,r)=>t.method===ap.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),spl=e=>(t,r)=>{let n=(a,o)=>mg.createRetryablePromise(l=>Tje(e)(t,o).then(l).catch(A=>{if(A.status!==404)throw A}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/keys/%s",t)},r),n)},opl=e=>(t,r,n)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>Oxe(e)(o.taskID,l))},apl=()=>(e,t)=>{let r=WV.serializeQueryParameters(t),n=Kdl.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(n+r).toString("base64")},Tje=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/keys/%s",t)},r),bss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/task/%s",t.toString())},r),cpl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),lpl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/logs"},t),upl=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,n=t.match(r);if(n===null)throw yss();return parseInt(n[1],10)-Math.round(new Date().getTime()/1e3)},gpl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping/top"},t),Apl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/clusters/mapping/%s",t)},r),dpl=e=>t=>{let{retrieveMappings:r,...n}=t||{};return r===!0&&(n.getClusters=!0),e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping/pending"},n)},Rje=e=>(t,r={})=>{let n={transporter:e.transporter,appId:e.appId,indexName:t};return mg.addMethods(n,r.methods)},ppl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/keys"},t),fpl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters"},t),Ipl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/indexes"},t),hpl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping"},t),mpl=e=>(t,r,n)=>{let a=(o,l)=>Rje(e)(t,{methods:{waitTask:CT}}).waitTask(o.taskID,l);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},n),a)},Cpl=e=>(t,r)=>{let n=(a,o)=>Promise.all(Object.keys(a.taskID).map(l=>Rje(e)(l,{methods:{waitTask:CT}}).waitTask(a.taskID[l],o)));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),n)},_pl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),ypl=e=>(t,r)=>{let n=t.map(a=>({...a,params:WV.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)},bpl=e=>(t,r)=>Promise.all(t.map(n=>{let{facetName:a,facetQuery:o,...l}=n.params;return Rje(e)(n.indexName,{methods:{searchForFacetValues:Rss}}).searchForFacetValues(a,o,{...r,...l})})),Epl=e=>(t,r)=>{let n=WV.createMappedRequestOptions(r);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ap.MethodEnum.Delete,path:"1/clusters/mapping"},n)},Spl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},n),(o,l)=>Oxe(e)(o.taskID,l))},vpl=e=>(t,r)=>{let n=(a,o)=>mg.createRetryablePromise(l=>Tje(e)(t,o).catch(A=>{if(A.status!==404)throw A;return l()}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/keys/%s/restore",t)},r),n)},Bpl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>Oxe(e)(o.taskID,l))},wpl=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},n),Tpl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Rpl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(n,a)=>Oxe(e)(n.taskID,a)),Npl=e=>(t,r)=>{let n=Object.assign({},r),{queryParameters:a,...o}=r||{},l=a?{queryParameters:a}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=C=>Object.keys(n).filter(b=>A.indexOf(b)!==-1).every(b=>{if(Array.isArray(C[b])&&Array.isArray(n[b])){let E=C[b];return E.length===n[b].length&&E.every((N,B)=>N===n[b][B])}else return C[b]===n[b]}),I=(C,b)=>mg.createRetryablePromise(E=>Tje(e)(t,b).then(N=>f(N)?Promise.resolve():E()));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:mg.encode("1/keys/%s",t),data:l},o),I)},Oxe=e=>(t,r)=>mg.createRetryablePromise(n=>bss(e)(t,r).then(a=>a.status!=="published"?n():void 0)),Ess=e=>(t,r)=>{let n=(a,o)=>CT(e)(a.taskID,o);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),n)},Dpl=e=>t=>Pkt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),kpl=e=>t=>{let r={hitsPerPage:1e3,...t};return Pkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},xpl=e=>t=>{let r={hitsPerPage:1e3,...t};return Pkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Okt=e=>(t,r,n)=>{let{batchSize:a,...o}=n||{},l={taskIDs:[],objectIDs:[]},A=(f=0)=>{let I=[],C;for(C=f;C({action:r,body:b})),o).then(b=>(l.objectIDs=l.objectIDs.concat(b.objectIDs),l.taskIDs.push(b.taskID),C++,A(C)))};return mg.createWaitablePromise(A(),(f,I)=>Promise.all(f.taskIDs.map(C=>CT(e)(C,I))))},Gpl=e=>t=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/clear",e.indexName)},t),(r,n)=>CT(e)(r.taskID,n)),Fpl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=WV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,l)=>CT(e)(o.taskID,l))},Zpl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=WV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,l)=>CT(e)(o.taskID,l))},Lpl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(n,a)=>CT(e)(n.taskID,a)),Vpl=e=>t=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s",e.indexName)},t),(r,n)=>CT(e)(r.taskID,n)),Ppl=e=>(t,r)=>mg.createWaitablePromise(Sss(e)([t],r).then(n=>({taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),Sss=e=>(t,r)=>{let n=t.map(a=>({objectID:a}));return Okt(e)(n,T_e.DeleteObject,r)},Wpl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(l,A)=>CT(e)(l.taskID,A))},Opl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(l,A)=>CT(e)(l.taskID,A))},Mpl=e=>t=>vss(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),Hpl=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n),Ypl=e=>(t,r)=>{let{query:n,paginate:a,...o}=r||{},l=0,A=()=>Tss(e)(n||"",{...o,page:l}).then(f=>{for(let[I,C]of Object.entries(f.hits))if(t(C))return{object:C,position:parseInt(I,10),page:l};if(l++,a===!1||l>=f.nbPages)throw _ss();return A()});return A()},Qpl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/%s",e.indexName,t)},r),Xpl=()=>(e,t)=>{for(let[r,n]of Object.entries(e.hits))if(n.objectID===t)return parseInt(r,10);return-1},Jpl=e=>(t,r)=>{let{attributesToRetrieve:n,...a}=r||{},o=t.map(l=>({indexName:e.indexName,objectID:l,...n?{attributesToRetrieve:n}:{}}));return e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},Upl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),vss=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),Kpl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),Bss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),jpl=e=>(t,r)=>mg.createWaitablePromise(wss(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),wss=e=>(t,r)=>{let{createIfNotExists:n,...a}=r||{},o=n?T_e.PartialUpdateObject:T_e.PartialUpdateObjectNoCreate;return Okt(e)(t,o,a)},zpl=e=>(t,r)=>{let{safe:n,autoGenerateObjectIDIfNotExist:a,batchSize:o,...l}=r||{},A=(B,F,Q,X)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",B),data:{operation:Q,destination:F}},X),(ae,ne)=>CT(e)(ae.taskID,ne)),f=Math.random().toString(36).substring(7),I=`${e.indexName}_tmp_${f}`,C=FYr({appId:e.appId,transporter:e.transporter,indexName:I}),b=[],E=A(e.indexName,I,"copy",{...l,scope:["settings","synonyms","rules"]});b.push(E);let N=(n?E.wait(l):E).then(()=>{let B=C(t,{...l,autoGenerateObjectIDIfNotExist:a,batchSize:o});return b.push(B),n?B.wait(l):B}).then(()=>{let B=A(I,e.indexName,"move",l);return b.push(B),n?B.wait(l):B}).then(()=>Promise.all(b)).then(([B,F,Q])=>({objectIDs:F.objectIDs,taskIDs:[B.taskID,...F.taskIDs,Q.taskID]}));return mg.createWaitablePromise(N,(B,F)=>Promise.all(b.map(Q=>Q.wait(F))))},qpl=e=>(t,r)=>ZYr(e)(t,{...r,clearExistingRules:!0}),$pl=e=>(t,r)=>LYr(e)(t,{...r,clearExistingSynonyms:!0}),efl=e=>(t,r)=>mg.createWaitablePromise(FYr(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),FYr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:n,...a}=r||{},o=n?T_e.AddObject:T_e.UpdateObject;if(o===T_e.UpdateObject){for(let l of t)if(l.objectID===void 0)return mg.createWaitablePromise(Promise.reject(Css()))}return Okt(e)(t,o,a)},tfl=e=>(t,r)=>ZYr(e)([t],r),ZYr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingRules:a,...o}=r||{},l=WV.createMappedRequestOptions(o);return n&&(l.queryParameters.forwardToReplicas=1),a&&(l.queryParameters.clearExistingRules=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/batch",e.indexName),data:t},l),(A,f)=>CT(e)(A.taskID,f))},rfl=e=>(t,r)=>LYr(e)([t],r),LYr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingSynonyms:a,replaceExistingSynonyms:o,...l}=r||{},A=WV.createMappedRequestOptions(l);return n&&(A.queryParameters.forwardToReplicas=1),(o||a)&&(A.queryParameters.replaceExistingSynonyms=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},A),(f,I)=>CT(e)(f.taskID,I))},Tss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),Rss=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n),Nss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),Dss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),nfl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:mg.encode("1/indexes/%s/settings",e.indexName),data:t},o),(l,A)=>CT(e)(l.taskID,A))},CT=e=>(t,r)=>mg.createRetryablePromise(n=>Bss(e)(t,r).then(a=>a.status!=="published"?n():void 0)),ifl={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},T_e={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},Mkt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},sfl={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},ofl={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};cu.ApiKeyACLEnum=ifl;cu.BatchActionEnum=T_e;cu.ScopeEnum=Mkt;cu.StrategyEnum=sfl;cu.SynonymEnum=ofl;cu.addApiKey=zdl;cu.assignUserID=qdl;cu.assignUserIDs=$dl;cu.batch=Ess;cu.browseObjects=Dpl;cu.browseRules=kpl;cu.browseSynonyms=xpl;cu.chunkedBatch=Okt;cu.clearDictionaryEntries=epl;cu.clearObjects=Gpl;cu.clearRules=Fpl;cu.clearSynonyms=Zpl;cu.copyIndex=Wkt;cu.copyRules=tpl;cu.copySettings=rpl;cu.copySynonyms=npl;cu.createBrowsablePromise=Pkt;cu.createMissingObjectIDError=Css;cu.createObjectNotFoundError=_ss;cu.createSearchClient=jdl;cu.createValidUntilNotFoundError=yss;cu.customRequest=ipl;cu.deleteApiKey=spl;cu.deleteBy=Lpl;cu.deleteDictionaryEntries=opl;cu.deleteIndex=Vpl;cu.deleteObject=Ppl;cu.deleteObjects=Sss;cu.deleteRule=Wpl;cu.deleteSynonym=Opl;cu.exists=Mpl;cu.findAnswers=Hpl;cu.findObject=Ypl;cu.generateSecuredApiKey=apl;cu.getApiKey=Tje;cu.getAppTask=bss;cu.getDictionarySettings=cpl;cu.getLogs=lpl;cu.getObject=Qpl;cu.getObjectPosition=Xpl;cu.getObjects=Jpl;cu.getRule=Upl;cu.getSecuredApiKeyRemainingValidity=upl;cu.getSettings=vss;cu.getSynonym=Kpl;cu.getTask=Bss;cu.getTopUserIDs=gpl;cu.getUserID=Apl;cu.hasPendingMappings=dpl;cu.initIndex=Rje;cu.listApiKeys=ppl;cu.listClusters=fpl;cu.listIndices=Ipl;cu.listUserIDs=hpl;cu.moveIndex=mpl;cu.multipleBatch=Cpl;cu.multipleGetObjects=_pl;cu.multipleQueries=ypl;cu.multipleSearchForFacetValues=bpl;cu.partialUpdateObject=jpl;cu.partialUpdateObjects=wss;cu.removeUserID=Epl;cu.replaceAllObjects=zpl;cu.replaceAllRules=qpl;cu.replaceAllSynonyms=$pl;cu.replaceDictionaryEntries=Spl;cu.restoreApiKey=vpl;cu.saveDictionaryEntries=Bpl;cu.saveObject=efl;cu.saveObjects=FYr;cu.saveRule=tfl;cu.saveRules=ZYr;cu.saveSynonym=rfl;cu.saveSynonyms=LYr;cu.search=Tss;cu.searchDictionaryEntries=wpl;cu.searchForFacetValues=Rss;cu.searchRules=Nss;cu.searchSynonyms=Dss;cu.searchUserIDs=Tpl;cu.setDictionarySettings=Rpl;cu.setSettings=nfl;cu.updateApiKey=Npl;cu.waitAppTask=Oxe;cu.waitTask=CT});var Gss=H((Veg,xss)=>{xss.exports=kss()});var Fss=H(Hkt=>{"use strict";Object.defineProperty(Hkt,"__esModule",{value:!0});function afl(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var cfl={Debug:1,Info:2,Error:3};Hkt.LogLevelEnum=cfl;Hkt.createNullLogger=afl});var VYr=H((Weg,Zss)=>{Zss.exports=Fss()});var Wss=H(PYr=>{"use strict";Object.defineProperty(PYr,"__esModule",{value:!0});var Lss=wt("http"),Vss=wt("https"),lfl=wt("url"),Pss={keepAlive:!0},ufl=new Lss.Agent(Pss),gfl=new Vss.Agent(Pss);function Afl({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:n={}}={}){let a=t||e||ufl,o=r||e||gfl;return{send(l){return new Promise(A=>{let f=lfl.parse(l.url),I=f.query===null?f.pathname:`${f.pathname}?${f.query}`,C={...n,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:I,method:l.method,headers:{...n&&n.headers?n.headers:{},...l.headers},...f.port!==void 0?{port:f.port||""}:{}},b=(f.protocol==="https:"?Vss:Lss).request(C,F=>{let Q=[];F.on("data",X=>{Q=Q.concat(X)}),F.on("end",()=>{clearTimeout(N),clearTimeout(B),A({status:F.statusCode||0,content:Buffer.concat(Q).toString(),isTimedOut:!1})})}),E=(F,Q)=>setTimeout(()=>{b.abort(),A({status:0,content:Q,isTimedOut:!0})},F*1e3),N=E(l.connectTimeout,"Connection timeout"),B;b.on("error",F=>{clearTimeout(N),clearTimeout(B),A({status:0,content:F.message,isTimedOut:!1})}),b.once("response",()=>{clearTimeout(N),B=E(l.responseTimeout,"Socket timeout")}),l.data!==void 0&&b.write(l.data),b.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}PYr.createNodeHttpRequester=Afl});var WYr=H((Meg,Oss)=>{Oss.exports=Wss()});var jss=H((Heg,Kss)=>{"use strict";var Mss=SYr(),dfl=BYr(),tue=Zxe(),pfl=VYr(),ffl=WYr(),Ykt=Pxe(),Qkt=Lxe(),Ifl=e=>{let t=e.appId,r=tue.createAuth(e.authMode!==void 0?e.authMode:tue.AuthMode.WithinHeaders,t,e.apiKey),n=Ykt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:Ykt.CallEnum.Read},{url:`${t}.algolia.net`,accept:Ykt.CallEnum.Write}].concat(tue.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return tue.addMethods(a,e.methods)},Nje=e=>(t,r)=>{let n=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:Qkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Hss=e=>(t,r)=>Nje(e)(t.map(n=>({...n,fallbackParameters:{},model:"bought-together"})),r),Yss=e=>(t,r)=>Nje(e)(t.map(n=>({...n,model:"related-products"})),r),Qss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:Qkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Xss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:Qkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Jss=e=>(t,r)=>Nje(e)(t.map(n=>({...n,model:"looking-similar"})),r),Uss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:Qkt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)};function vte(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:ffl.createNodeHttpRequester(),logger:pfl.createNullLogger(),responsesCache:Mss.createNullCache(),requestsCache:Mss.createNullCache(),hostsCache:dfl.createInMemoryCache(),userAgent:Ykt.createUserAgent(tue.version).add({segment:"Recommend",version:tue.version}).add({segment:"Node.js",version:process.versions.node})};return Ifl({...n,...r,methods:{destroy:tue.destroy,getFrequentlyBoughtTogether:Hss,getRecommendations:Nje,getRelatedProducts:Yss,getTrendingFacets:Qss,getTrendingItems:Xss,getLookingSimilar:Jss,getRecommendedForYou:Uss}})}vte.version=tue.version;vte.getFrequentlyBoughtTogether=Hss;vte.getRecommendations=Nje;vte.getRelatedProducts=Yss;vte.getTrendingFacets=Qss;vte.getTrendingItems=Xss;vte.getLookingSimilar=Jss;vte.getRecommendedForYou=Uss;Kss.exports=vte});var qss=H((Yeg,OYr)=>{var zss=jss();OYr.exports=zss;OYr.exports.default=zss});var ros=H((Qeg,tos)=>{"use strict";var $ss=SYr(),hfl=BYr(),Mxe=pss(),HYr=Zxe(),MYr=mss(),ju=Gss(),mfl=VYr(),R_e=qss(),Cfl=WYr(),_fl=Pxe();function eos(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:Cfl.createNodeHttpRequester(),logger:mfl.createNullLogger(),responsesCache:$ss.createNullCache(),requestsCache:$ss.createNullCache(),hostsCache:hfl.createInMemoryCache(),userAgent:_fl.createUserAgent(HYr.version).add({segment:"Node.js",version:process.versions.node})},a={...n,...r},o=()=>l=>MYr.createPersonalizationClient({...n,...l,methods:{getPersonalizationStrategy:MYr.getPersonalizationStrategy,setPersonalizationStrategy:MYr.setPersonalizationStrategy}});return ju.createSearchClient({...a,methods:{search:ju.multipleQueries,searchForFacetValues:ju.multipleSearchForFacetValues,multipleBatch:ju.multipleBatch,multipleGetObjects:ju.multipleGetObjects,multipleQueries:ju.multipleQueries,copyIndex:ju.copyIndex,copySettings:ju.copySettings,copyRules:ju.copyRules,copySynonyms:ju.copySynonyms,moveIndex:ju.moveIndex,listIndices:ju.listIndices,getLogs:ju.getLogs,listClusters:ju.listClusters,multipleSearchForFacetValues:ju.multipleSearchForFacetValues,getApiKey:ju.getApiKey,addApiKey:ju.addApiKey,listApiKeys:ju.listApiKeys,updateApiKey:ju.updateApiKey,deleteApiKey:ju.deleteApiKey,restoreApiKey:ju.restoreApiKey,assignUserID:ju.assignUserID,assignUserIDs:ju.assignUserIDs,getUserID:ju.getUserID,searchUserIDs:ju.searchUserIDs,listUserIDs:ju.listUserIDs,getTopUserIDs:ju.getTopUserIDs,removeUserID:ju.removeUserID,hasPendingMappings:ju.hasPendingMappings,generateSecuredApiKey:ju.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:ju.getSecuredApiKeyRemainingValidity,destroy:HYr.destroy,clearDictionaryEntries:ju.clearDictionaryEntries,deleteDictionaryEntries:ju.deleteDictionaryEntries,getDictionarySettings:ju.getDictionarySettings,getAppTask:ju.getAppTask,replaceDictionaryEntries:ju.replaceDictionaryEntries,saveDictionaryEntries:ju.saveDictionaryEntries,searchDictionaryEntries:ju.searchDictionaryEntries,setDictionarySettings:ju.setDictionarySettings,waitAppTask:ju.waitAppTask,customRequest:ju.customRequest,initIndex:l=>A=>ju.initIndex(l)(A,{methods:{batch:ju.batch,delete:ju.deleteIndex,findAnswers:ju.findAnswers,getObject:ju.getObject,getObjects:ju.getObjects,saveObject:ju.saveObject,saveObjects:ju.saveObjects,search:ju.search,searchForFacetValues:ju.searchForFacetValues,waitTask:ju.waitTask,setSettings:ju.setSettings,getSettings:ju.getSettings,partialUpdateObject:ju.partialUpdateObject,partialUpdateObjects:ju.partialUpdateObjects,deleteObject:ju.deleteObject,deleteObjects:ju.deleteObjects,deleteBy:ju.deleteBy,clearObjects:ju.clearObjects,browseObjects:ju.browseObjects,getObjectPosition:ju.getObjectPosition,findObject:ju.findObject,exists:ju.exists,saveSynonym:ju.saveSynonym,saveSynonyms:ju.saveSynonyms,getSynonym:ju.getSynonym,searchSynonyms:ju.searchSynonyms,browseSynonyms:ju.browseSynonyms,deleteSynonym:ju.deleteSynonym,clearSynonyms:ju.clearSynonyms,replaceAllObjects:ju.replaceAllObjects,replaceAllSynonyms:ju.replaceAllSynonyms,searchRules:ju.searchRules,getRule:ju.getRule,deleteRule:ju.deleteRule,saveRule:ju.saveRule,saveRules:ju.saveRules,replaceAllRules:ju.replaceAllRules,browseRules:ju.browseRules,clearRules:ju.clearRules}}),initAnalytics:()=>l=>Mxe.createAnalyticsClient({...n,...l,methods:{addABTest:Mxe.addABTest,getABTest:Mxe.getABTest,getABTests:Mxe.getABTests,stopABTest:Mxe.stopABTest,deleteABTest:Mxe.deleteABTest}}),initPersonalization:o,initRecommendation:()=>l=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(l)),getRecommendations:R_e.getRecommendations,getFrequentlyBoughtTogether:R_e.getFrequentlyBoughtTogether,getLookingSimilar:R_e.getLookingSimilar,getRecommendedForYou:R_e.getRecommendedForYou,getRelatedProducts:R_e.getRelatedProducts,getTrendingFacets:R_e.getTrendingFacets,getTrendingItems:R_e.getTrendingItems}})}eos.version=HYr.version;tos.exports=eos});var QYr=H((Xeg,YYr)=>{var nos=ros();YYr.exports=nos;YYr.exports.default=nos});var ios=H(Xkt=>{"use strict";Object.defineProperty(Xkt,"__esModule",{value:!0});Xkt.search=void 0;var yfl=(Pa(),vi(Va)),bfl=yfl.__importDefault(QYr()),XYr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},Efl=(0,bfl.default)(XYr.appId,XYr.apiKey).initIndex(XYr.indexName),Sfl=async(e,t=0)=>await Efl.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});Xkt.search=Sfl});var UYr=H(Jkt=>{"use strict";Object.defineProperty(Jkt,"__esModule",{value:!0});Jkt.useMinistore=vfl;Jkt.useMinistoreSetAll=Bfl;var JYr=sC(),sos=RGr();function vfl(e,t){let r=(0,JYr.useContext)(sos.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let n=(0,JYr.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,n]}function Bfl(){let e=(0,JYr.useContext)(sos.MinistoreContext);if(e===null)throw new Error("Expected this hook to run with a ministore context attached");return e.setAll}});var los=H(Dje=>{"use strict";Object.defineProperty(Dje,"__esModule",{value:!0});Dje.UncontrolledTextInput=void 0;var aos=sC(),KYr=sC(),oos=lH(),N_e=VK(),cos=({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A})=>{let[{cursorOffset:f,cursorWidth:I},C]=KYr.useState({cursorOffset:(e||"").length,cursorWidth:0});KYr.useEffect(()=>{C(F=>{if(!r||!o)return F;let Q=e||"";return F.cursorOffset>Q.length-1?{cursorOffset:Q.length,cursorWidth:0}:F})},[e,r,o]);let b=a?I:0,E=n?n.repeat(e.length):e,N=E,B=t?N_e.grey(t):void 0;if(o&&r){B=t.length>0?N_e.inverse(t[0])+N_e.grey(t.slice(1)):N_e.inverse(" "),N=E.length>0?"":N_e.inverse(" ");let F=0;for(let Q of E)F>=f-b&&F<=f?N+=N_e.inverse(Q):N+=Q,F++;E.length>0&&f===E.length&&(N+=N_e.inverse(" "))}return oos.useInput((F,Q)=>{if(Q.upArrow||Q.downArrow||Q.ctrl&&F==="c"||Q.tab||Q.shift&&Q.tab)return;if(Q.return){A&&A(e);return}let X=f,ae=e,ne=0;Q.leftArrow?o&&X--:Q.rightArrow?o&&X++:Q.backspace||Q.delete?f>0&&(ae=e.slice(0,f-1)+e.slice(f,e.length),X--):(ae=e.slice(0,f)+F+e.slice(f,e.length),X+=F.length,F.length>1&&(ne=F.length)),f<0&&(X=0),f>e.length&&(X=e.length),C({cursorOffset:X,cursorWidth:ne}),ae!==e&&l(ae)},{isActive:r}),aos.createElement(oos.Text,null,t?E.length>0?N:B:N)};Dje.default=cos;Dje.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,n]=KYr.useState(e);return aos.createElement(cos,Object.assign({},t,{value:r,onChange:n}))}});var gos=H(jYr=>{"use strict";Object.defineProperty(jYr,"__esModule",{value:!0});var Bte=(Pa(),vi(Va)),wfl=el(),kje=yn(),Tfl=Bte.__importStar(I1t()),Rfl=($c(),vi(rg)),uos=ios(),xje=["regular","dev","peer"],Gje=class extends wfl.BaseCommand{async execute(){Tfl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>Bte.__importStar(R1t())),{ScrollableItems:r}=await Promise.resolve().then(()=>Bte.__importStar(G1t())),{useKeypress:n}=await Promise.resolve().then(()=>Bte.__importStar(lDe())),{useMinistore:a}=await Promise.resolve().then(()=>Bte.__importStar(UYr())),{renderForm:o}=await Promise.resolve().then(()=>Bte.__importStar(F1t())),{default:l}=await Promise.resolve().then(()=>Bte.__importStar(los())),{Box:A,Text:f}=await Promise.resolve().then(()=>Bte.__importStar(lH())),{default:I,useEffect:C,useState:b}=await Promise.resolve().then(()=>Bte.__importStar(sC())),E=await kje.Configuration.find(this.context.cwd,this.context.plugins),N=()=>I.createElement(A,{flexDirection:"row"},I.createElement(A,{flexDirection:"column",width:48},I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},""),"/",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),I.createElement(A,{flexDirection:"column"},I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),B=()=>I.createElement(I.Fragment,null,I.createElement(A,{width:15},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),I.createElement(A,{width:11},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),I.createElement(A,{width:10},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),F=()=>I.createElement(A,{width:17},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),Q=({hit:be,active:Se})=>{let[De,k]=a(be.name,null);n({active:Se},(Me,je)=>{if(je.name!=="space")return;if(!De){k(xje[0]);return}let St=xje.indexOf(De)+1;St===xje.length?k(null):k(xje[St])},[De,k]);let et=kje.structUtils.parseIdent(be.name),ct=kje.structUtils.prettyIdent(E,et);return I.createElement(A,null,I.createElement(A,{width:45},I.createElement(f,{bold:!0,wrap:"wrap"},ct)),I.createElement(A,{width:14,marginLeft:1},I.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),I.createElement(A,{width:10,marginLeft:1},I.createElement(f,{italic:!0,wrap:"truncate"},be.version)),I.createElement(A,{width:16,marginLeft:1},I.createElement(f,null,be.humanDownloadsLast30Days)))},X=({name:be,active:Se})=>{let[De]=a(be,null),k=kje.structUtils.parseIdent(be);return I.createElement(A,null,I.createElement(A,{width:47},I.createElement(f,{bold:!0}," - ",kje.structUtils.prettyIdent(E,k))),xje.map(et=>I.createElement(A,{key:et,width:14,marginLeft:1},I.createElement(f,null," ",I.createElement(t,{active:De===et})," ",I.createElement(f,{bold:!0},et)))))},ae=()=>I.createElement(A,{marginTop:1},I.createElement(f,null,"Powered by Algolia.")),ce=await o(({useSubmit:be})=>{let Se=a();be(Se);let De=Array.from(Se.keys()).filter(Nr=>Se.get(Nr)!==null),[k,et]=b(""),[ct,Me]=b(0),[je,St]=b([]),At=Nr=>{Nr.match(/\t| /)||et(Nr)},Yt=async()=>{Me(0);let Nr=await(0,uos.search)(k);Nr.query===k&&St(Nr.hits)},Tr=async()=>{let Nr=await(0,uos.search)(k,ct+1);Nr.query===k&&Nr.page-1===ct&&(Me(Nr.page),St([...je,...Nr.hits]))};return C(()=>{k?Yt():St([])},[k]),I.createElement(A,{flexDirection:"column"},I.createElement(N,null),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(f,{bold:!0},"Search: "),I.createElement(A,{width:41},I.createElement(l,{value:k,onChange:At,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),I.createElement(B,null)),je.length?I.createElement(r,{radius:2,loop:!1,children:je.map(Nr=>I.createElement(Q,{key:Nr.name,hit:Nr,active:!1})),willReachEnd:Tr}):I.createElement(f,{color:"gray"},"Start typing..."),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(A,{width:49},I.createElement(f,{bold:!0},"Selected:")),I.createElement(F,null)),De.length?De.map(Nr=>I.createElement(X,{key:Nr,name:Nr,active:!1})):I.createElement(f,{color:"gray"},"No selected packages..."),I.createElement(ae,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ce>"u")return 1;let fe=Array.from(ce.keys()).filter(be=>ce.get(be)==="regular"),ue=Array.from(ce.keys()).filter(be=>ce.get(be)==="dev"),de=Array.from(ce.keys()).filter(be=>ce.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),ue.length&&await this.cli.run(["add","--dev",...ue]),de&&await this.cli.run(["add","--peer",...de]),0}};Gje.paths=[["search"]];Gje.usage=Rfl.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry. - `,examples:[["Open the search window","yarn search"]]});HYr.default=kje});var zG=H(aC=>{"use strict";var Vpl=Object.prototype.toString,bH=WKe(),jss=!1,xje=new Set,zss={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};aC.longest=(e,t)=>e.reduce((r,n)=>Math.max(r,t?n[t].length:n.length),0);aC.hasColor=e=>!!e&&bH.hasColor(e);var Ykt=aC.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);aC.nativeType=e=>Vpl.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");aC.isAsyncFn=e=>aC.nativeType(e)==="asyncfunction";aC.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";aC.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;aC.scrollDown=(e=[])=>[...e.slice(1),e[0]];aC.scrollUp=(e=[])=>[e.pop(),...e];aC.reorder=(e=[])=>{let t=e.slice();return t.sort((r,n)=>r.index>n.index?1:r.index{let n=e.length,a=r===n?0:r<0?n-1:r,o=e[t];e[t]=e[a],e[a]=o};aC.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};aC.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};aC.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:n=` -`+r,width:a=80}=t,o=(n+r).match(/[^\S\n]/g)||[];a-=o.length;let l=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,A=e.trim(),f=new RegExp(l,"g"),I=A.match(f)||[];return I=I.map(C=>C.replace(/\n$/,"")),t.padEnd&&(I=I.map(C=>C.padEnd(a," "))),t.padStart&&(I=I.map(C=>C.padStart(a," "))),r+I.join(n)};aC.unmute=e=>{let t=e.stack.find(n=>bH.keys.color.includes(n));return t?bH[t]:e.stack.find(n=>n.slice(2)==="bg")?bH[t.slice(2)]:n=>n};aC.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";aC.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>bH.keys.color.includes(n));if(t){let n=bH["bg"+aC.pascal(t)];return n?n.black:e}let r=e.stack.find(n=>n.slice(0,2)==="bg");return r?bH[r.slice(2).toLowerCase()]||e:bH.none};aC.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>bH.keys.color.includes(n)),r=e.stack.find(n=>n.slice(0,2)==="bg");if(t&&!r)return bH[zss[t]||t];if(r){let n=r.slice(2).toLowerCase(),a=zss[n];return a&&bH["bg"+aC.pascal(a)]||e}return bH.none};aC.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),n=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+n};aC.set=(e={},t="",r)=>t.split(".").reduce((n,a,o,l)=>{let A=l.length-1>o?n[a]||{}:r;return!aC.isObject(A)&&o{let n=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return n??r};aC.mixin=(e,t)=>{if(!Ykt(e))return t;if(!Ykt(t))return e;for(let r of Object.keys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(n,"value"))if(hasOwnProperty.call(e,r)&&Ykt(n.value)){let a=Object.getOwnPropertyDescriptor(e,r);Ykt(a.value)&&a.value!==n.value?e[r]=aC.merge({},e[r],t[r]):Reflect.defineProperty(e,r,n)}else Reflect.defineProperty(e,r,n);else Reflect.defineProperty(e,r,n)}return e};aC.merge=(...e)=>{let t={};for(let r of e)aC.mixin(t,r);return t};aC.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let n of Object.keys(r)){let a=r[n];typeof a=="function"?aC.define(e,n,a.bind(t)):aC.define(e,n,a)}};var Qkt=(e,t)=>{jss||(jss=!0,xje.forEach(r=>r()),e===!0&&process.exit(128+t))},qss=Qkt.bind(null,!0,15),$ss=Qkt.bind(null,!0,2);aC.onExit=e=>(xje.size===0&&(process.once("SIGTERM",qss),process.once("SIGINT",$ss),process.once("exit",Qkt)),xje.add(e),()=>{xje.delete(e),xje.size===0&&(process.off("SIGTERM",qss),process.off("SIGINT",$ss),process.off("exit",Qkt))});aC.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};aC.defineExport=(e,t,r)=>{let n;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){n=a},get(){return n?n():r()}})}});var eos=H(Oxe=>{"use strict";Oxe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};Oxe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};Oxe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};Oxe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};Oxe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var ros=H((Y$u,tos)=>{"use strict";tos.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var YYr=H((Q$u,ios)=>{"use strict";var nos=wt("readline"),Ppl=eos(),Wpl=ros(),Opl=/^(?:\x1b)([a-zA-Z0-9])$/,Mpl=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,Hpl={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function Ypl(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function Qpl(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var Xkt=(e="",t={})=>{let r,n={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=n.sequence||""),n.sequence=n.sequence||e||n.name,e==="\r")n.raw=void 0,n.name="return";else if(e===` -`)n.name="enter";else if(e===" ")n.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")n.name="backspace",n.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")n.name="escape",n.meta=e.length===2;else if(e===" "||e==="\x1B ")n.name="space",n.meta=e.length===2;else if(e<="")n.name=String.fromCharCode(e.charCodeAt(0)+97-1),n.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")n.name="number";else if(e.length===1&&e>="a"&&e<="z")n.name=e;else if(e.length===1&&e>="A"&&e<="Z")n.name=e.toLowerCase(),n.shift=!0;else if(r=Opl.exec(e))n.meta=!0,n.shift=/^[A-Z]$/.test(r[1]);else if(r=Mpl.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(n.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),l=(r[3]||r[5]||1)-1;n.ctrl=!!(l&4),n.meta=!!(l&10),n.shift=!!(l&1),n.code=o,n.name=Hpl[o],n.shift=Ypl(o)||n.shift,n.ctrl=Qpl(o)||n.ctrl}return n};Xkt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let n=nos.createInterface({terminal:!0,input:r});nos.emitKeypressEvents(r,n);let a=new Wpl((A,f)=>t(A,Xkt(A,f),n)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),n.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),n.pause(),n.close()}};Xkt.action=(e,t,r)=>{let n={...Ppl,...r};return t.ctrl?(t.action=n.ctrl[t.name],t):t.option&&n.option?(t.action=n.option[t.name],t):t.shift?(t.action=n.shift[t.name],t):(t.action=n.keys[t.name],t)};ios.exports=Xkt});var oos=H((X$u,sos)=>{"use strict";sos.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let n=t[r];typeof n=="number"&&(n={interval:n}),Xpl(e,r,n)}};function Xpl(e,t,r={}){let n=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;n.frames=r.frames||[],n.loading=!0;let o=setInterval(()=>{n.ms=Date.now()-n.start,n.tick++,e.render()},a);return n.stop=()=>{n.loading=!1,clearInterval(o)},Reflect.defineProperty(n,"interval",{value:o}),e.once("close",()=>n.stop()),n.stop}});var cos=H((J$u,aos)=>{"use strict";var{define:Jpl,width:Upl}=zG(),QYr=class{constructor(t){let r=t.options;Jpl(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=Upl(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};aos.exports=QYr});var uos=H((U$u,los)=>{"use strict";var XYr=zG(),ox=WKe(),JYr={default:ox.noop,noop:ox.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||XYr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||XYr.complement(this.primary)},primary:ox.cyan,success:ox.green,danger:ox.magenta,strong:ox.bold,warning:ox.yellow,muted:ox.dim,disabled:ox.gray,dark:ox.dim.gray,underline:ox.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};JYr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(ox.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(ox.visible=e.styles.visible);let t=XYr.merge({},JYr,e.styles);delete t.merge;for(let r of Object.keys(ox))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ox[r]});for(let r of Object.keys(ox.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ox[r]});return t};los.exports=JYr});var Aos=H((K$u,gos)=>{"use strict";var UYr=process.platform==="win32",Bte=WKe(),Kpl=zG(),KYr={...Bte.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Bte.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:Bte.symbols.question,submitted:Bte.symbols.check,cancelled:Bte.symbols.cross},separator:{pending:Bte.symbols.pointerSmall,submitted:Bte.symbols.middot,cancelled:Bte.symbols.middot},radio:{off:UYr?"( )":"\u25EF",on:UYr?"(*)":"\u25C9",disabled:UYr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};KYr.merge=e=>{let t=Kpl.merge({},Bte.symbols,KYr,e.symbols);return delete t.merge,t};gos.exports=KYr});var pos=H((j$u,dos)=>{"use strict";var jpl=uos(),zpl=Aos(),qpl=zG();dos.exports=e=>{e.options=qpl.merge({},e.options.theme,e.options),e.symbols=zpl.merge(e.options),e.styles=jpl.merge(e.options)}});var Cos=H((hos,mos)=>{"use strict";var fos=process.env.TERM_PROGRAM==="Apple_Terminal",$pl=q5(),jYr=zG(),P4=mos.exports=hos,VS="\x1B[",Ios="\x07",zYr=!1,tue=P4.code={bell:Ios,beep:Ios,beginning:`${VS}G`,down:`${VS}J`,esc:VS,getPosition:`${VS}6n`,hide:`${VS}?25l`,line:`${VS}2K`,lineEnd:`${VS}K`,lineStart:`${VS}1K`,restorePosition:VS+(fos?"8":"u"),savePosition:VS+(fos?"7":"s"),screen:`${VS}2J`,show:`${VS}?25h`,up:`${VS}1J`},N_e=P4.cursor={get hidden(){return zYr},hide(){return zYr=!0,tue.hide},show(){return zYr=!1,tue.show},forward:(e=1)=>`${VS}${e}C`,backward:(e=1)=>`${VS}${e}D`,nextLine:(e=1)=>`${VS}E`.repeat(e),prevLine:(e=1)=>`${VS}F`.repeat(e),up:(e=1)=>e?`${VS}${e}A`:"",down:(e=1)=>e?`${VS}${e}B`:"",right:(e=1)=>e?`${VS}${e}C`:"",left:(e=1)=>e?`${VS}${e}D`:"",to(e,t){return t?`${VS}${t+1};${e+1}H`:`${VS}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?N_e.left(-e):e>0?N_e.right(e):"",r+=t<0?N_e.up(-t):t>0?N_e.down(t):"",r},strLen(e){for(var t=0,r=e.length,n=-1,a=0;a=0&&n<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:n,input:a,prompt:o,size:l,value:A}=e;if(n=jYr.isPrimitive(n)?String(n):"",a=jYr.isPrimitive(a)?String(a):"",A=jYr.isPrimitive(A)?String(A):"",l){let f=P4.cursor.up(l)+P4.cursor.to(this.strLen(o)),I=a.length-r;return I>0&&(f+=P4.cursor.left(I)),f}if(A||t){let f=!a&&n?-this.strLen(n):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&n&&!o.includes(n)&&(f+=this.strLen(n)),P4.cursor.move(f)}}},qYr=P4.erase={screen:tue.screen,up:tue.up,down:tue.down,line:tue.line,lineEnd:tue.lineEnd,lineStart:tue.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return qYr.line+N_e.to(0);let r=o=>[...$pl(o)].length,n=e.split(/\r?\n/),a=0;for(let o of n)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(qYr.line+N_e.prevLine()).repeat(a-1)+qYr.line+N_e.to(0)}});var Mxe=H((z$u,yos)=>{"use strict";var efl=wt("events"),_os=q5(),$Yr=YYr(),tfl=oos(),rfl=cos(),nfl=pos(),OV=zG(),D_e=Cos(),eQr=class e extends efl{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,nfl(this),tfl(this),this.state=new rfl(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=sfl(this.options.margin),this.setMaxListeners(0),ifl(this)}async keypress(t,r={}){this.keypressed=!0;let n=$Yr.action(t,$Yr(t,r),this.options.actions);this.state.keypress=n,this.emit("keypress",t,n),this.emit("state",this.state.clone());let a=this.options[n.action]||this[n.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,n);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(D_e.code.beep)}cursorHide(){this.stdout.write(D_e.cursor.hide());let t=OV.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(D_e.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(D_e.cursor.down(t)+D_e.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:n}=this.sections(),{cursor:a,initial:o="",input:l="",value:A=""}=this,f=this.state.size=n.length,I={after:r,cursor:a,initial:o,input:l,prompt:t,size:f,value:A},C=D_e.cursor.restore(I);C&&this.stdout.write(C)}sections(){let{buffer:t,input:r,prompt:n}=this.state;n=_os(n);let a=_os(t),o=a.indexOf(n),l=a.slice(0,o),f=a.slice(o).split(` + `,examples:[["Open the search window","yarn search"]]});jYr.default=Gje});var zG=H(aC=>{"use strict";var Nfl=Object.prototype.toString,bH=MKe(),Aos=!1,Fje=new Set,dos={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};aC.longest=(e,t)=>e.reduce((r,n)=>Math.max(r,t?n[t].length:n.length),0);aC.hasColor=e=>!!e&&bH.hasColor(e);var Ukt=aC.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);aC.nativeType=e=>Nfl.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");aC.isAsyncFn=e=>aC.nativeType(e)==="asyncfunction";aC.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";aC.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;aC.scrollDown=(e=[])=>[...e.slice(1),e[0]];aC.scrollUp=(e=[])=>[e.pop(),...e];aC.reorder=(e=[])=>{let t=e.slice();return t.sort((r,n)=>r.index>n.index?1:r.index{let n=e.length,a=r===n?0:r<0?n-1:r,o=e[t];e[t]=e[a],e[a]=o};aC.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};aC.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};aC.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:n=` +`+r,width:a=80}=t,o=(n+r).match(/[^\S\n]/g)||[];a-=o.length;let l=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,A=e.trim(),f=new RegExp(l,"g"),I=A.match(f)||[];return I=I.map(C=>C.replace(/\n$/,"")),t.padEnd&&(I=I.map(C=>C.padEnd(a," "))),t.padStart&&(I=I.map(C=>C.padStart(a," "))),r+I.join(n)};aC.unmute=e=>{let t=e.stack.find(n=>bH.keys.color.includes(n));return t?bH[t]:e.stack.find(n=>n.slice(2)==="bg")?bH[t.slice(2)]:n=>n};aC.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";aC.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>bH.keys.color.includes(n));if(t){let n=bH["bg"+aC.pascal(t)];return n?n.black:e}let r=e.stack.find(n=>n.slice(0,2)==="bg");return r?bH[r.slice(2).toLowerCase()]||e:bH.none};aC.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>bH.keys.color.includes(n)),r=e.stack.find(n=>n.slice(0,2)==="bg");if(t&&!r)return bH[dos[t]||t];if(r){let n=r.slice(2).toLowerCase(),a=dos[n];return a&&bH["bg"+aC.pascal(a)]||e}return bH.none};aC.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),n=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+n};aC.set=(e={},t="",r)=>t.split(".").reduce((n,a,o,l)=>{let A=l.length-1>o?n[a]||{}:r;return!aC.isObject(A)&&o{let n=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return n??r};aC.mixin=(e,t)=>{if(!Ukt(e))return t;if(!Ukt(t))return e;for(let r of Object.keys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(n,"value"))if(hasOwnProperty.call(e,r)&&Ukt(n.value)){let a=Object.getOwnPropertyDescriptor(e,r);Ukt(a.value)&&a.value!==n.value?e[r]=aC.merge({},e[r],t[r]):Reflect.defineProperty(e,r,n)}else Reflect.defineProperty(e,r,n);else Reflect.defineProperty(e,r,n)}return e};aC.merge=(...e)=>{let t={};for(let r of e)aC.mixin(t,r);return t};aC.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let n of Object.keys(r)){let a=r[n];typeof a=="function"?aC.define(e,n,a.bind(t)):aC.define(e,n,a)}};var Kkt=(e,t)=>{Aos||(Aos=!0,Fje.forEach(r=>r()),e===!0&&process.exit(128+t))},pos=Kkt.bind(null,!0,15),fos=Kkt.bind(null,!0,2);aC.onExit=e=>(Fje.size===0&&(process.once("SIGTERM",pos),process.once("SIGINT",fos),process.once("exit",Kkt)),Fje.add(e),()=>{Fje.delete(e),Fje.size===0&&(process.off("SIGTERM",pos),process.off("SIGINT",fos),process.off("exit",Kkt))});aC.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};aC.defineExport=(e,t,r)=>{let n;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){n=a},get(){return n?n():r()}})}});var Ios=H(Hxe=>{"use strict";Hxe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};Hxe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};Hxe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};Hxe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};Hxe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var mos=H((etg,hos)=>{"use strict";hos.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var zYr=H((ttg,_os)=>{"use strict";var Cos=wt("readline"),Dfl=Ios(),kfl=mos(),xfl=/^(?:\x1b)([a-zA-Z0-9])$/,Gfl=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,Ffl={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function Zfl(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function Lfl(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var jkt=(e="",t={})=>{let r,n={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=n.sequence||""),n.sequence=n.sequence||e||n.name,e==="\r")n.raw=void 0,n.name="return";else if(e===` +`)n.name="enter";else if(e===" ")n.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")n.name="backspace",n.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")n.name="escape",n.meta=e.length===2;else if(e===" "||e==="\x1B ")n.name="space",n.meta=e.length===2;else if(e<="")n.name=String.fromCharCode(e.charCodeAt(0)+97-1),n.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")n.name="number";else if(e.length===1&&e>="a"&&e<="z")n.name=e;else if(e.length===1&&e>="A"&&e<="Z")n.name=e.toLowerCase(),n.shift=!0;else if(r=xfl.exec(e))n.meta=!0,n.shift=/^[A-Z]$/.test(r[1]);else if(r=Gfl.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(n.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),l=(r[3]||r[5]||1)-1;n.ctrl=!!(l&4),n.meta=!!(l&10),n.shift=!!(l&1),n.code=o,n.name=Ffl[o],n.shift=Zfl(o)||n.shift,n.ctrl=Lfl(o)||n.ctrl}return n};jkt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let n=Cos.createInterface({terminal:!0,input:r});Cos.emitKeypressEvents(r,n);let a=new kfl((A,f)=>t(A,jkt(A,f),n)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),n.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),n.pause(),n.close()}};jkt.action=(e,t,r)=>{let n={...Dfl,...r};return t.ctrl?(t.action=n.ctrl[t.name],t):t.option&&n.option?(t.action=n.option[t.name],t):t.shift?(t.action=n.shift[t.name],t):(t.action=n.keys[t.name],t)};_os.exports=jkt});var bos=H((rtg,yos)=>{"use strict";yos.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let n=t[r];typeof n=="number"&&(n={interval:n}),Vfl(e,r,n)}};function Vfl(e,t,r={}){let n=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;n.frames=r.frames||[],n.loading=!0;let o=setInterval(()=>{n.ms=Date.now()-n.start,n.tick++,e.render()},a);return n.stop=()=>{n.loading=!1,clearInterval(o)},Reflect.defineProperty(n,"interval",{value:o}),e.once("close",()=>n.stop()),n.stop}});var Sos=H((ntg,Eos)=>{"use strict";var{define:Pfl,width:Wfl}=zG(),qYr=class{constructor(t){let r=t.options;Pfl(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=Wfl(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};Eos.exports=qYr});var Bos=H((itg,vos)=>{"use strict";var $Yr=zG(),ox=MKe(),eQr={default:ox.noop,noop:ox.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||$Yr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||$Yr.complement(this.primary)},primary:ox.cyan,success:ox.green,danger:ox.magenta,strong:ox.bold,warning:ox.yellow,muted:ox.dim,disabled:ox.gray,dark:ox.dim.gray,underline:ox.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};eQr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(ox.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(ox.visible=e.styles.visible);let t=$Yr.merge({},eQr,e.styles);delete t.merge;for(let r of Object.keys(ox))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ox[r]});for(let r of Object.keys(ox.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ox[r]});return t};vos.exports=eQr});var Tos=H((stg,wos)=>{"use strict";var tQr=process.platform==="win32",wte=MKe(),Ofl=zG(),rQr={...wte.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:wte.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:wte.symbols.question,submitted:wte.symbols.check,cancelled:wte.symbols.cross},separator:{pending:wte.symbols.pointerSmall,submitted:wte.symbols.middot,cancelled:wte.symbols.middot},radio:{off:tQr?"( )":"\u25EF",on:tQr?"(*)":"\u25C9",disabled:tQr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};rQr.merge=e=>{let t=Ofl.merge({},wte.symbols,rQr,e.symbols);return delete t.merge,t};wos.exports=rQr});var Nos=H((otg,Ros)=>{"use strict";var Mfl=Bos(),Hfl=Tos(),Yfl=zG();Ros.exports=e=>{e.options=Yfl.merge({},e.options.theme,e.options),e.symbols=Hfl.merge(e.options),e.styles=Mfl.merge(e.options)}});var Fos=H((xos,Gos)=>{"use strict";var Dos=process.env.TERM_PROGRAM==="Apple_Terminal",Qfl=q5(),nQr=zG(),P4=Gos.exports=xos,VS="\x1B[",kos="\x07",iQr=!1,rue=P4.code={bell:kos,beep:kos,beginning:`${VS}G`,down:`${VS}J`,esc:VS,getPosition:`${VS}6n`,hide:`${VS}?25l`,line:`${VS}2K`,lineEnd:`${VS}K`,lineStart:`${VS}1K`,restorePosition:VS+(Dos?"8":"u"),savePosition:VS+(Dos?"7":"s"),screen:`${VS}2J`,show:`${VS}?25h`,up:`${VS}1J`},D_e=P4.cursor={get hidden(){return iQr},hide(){return iQr=!0,rue.hide},show(){return iQr=!1,rue.show},forward:(e=1)=>`${VS}${e}C`,backward:(e=1)=>`${VS}${e}D`,nextLine:(e=1)=>`${VS}E`.repeat(e),prevLine:(e=1)=>`${VS}F`.repeat(e),up:(e=1)=>e?`${VS}${e}A`:"",down:(e=1)=>e?`${VS}${e}B`:"",right:(e=1)=>e?`${VS}${e}C`:"",left:(e=1)=>e?`${VS}${e}D`:"",to(e,t){return t?`${VS}${t+1};${e+1}H`:`${VS}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?D_e.left(-e):e>0?D_e.right(e):"",r+=t<0?D_e.up(-t):t>0?D_e.down(t):"",r},strLen(e){for(var t=0,r=e.length,n=-1,a=0;a=0&&n<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:n,input:a,prompt:o,size:l,value:A}=e;if(n=nQr.isPrimitive(n)?String(n):"",a=nQr.isPrimitive(a)?String(a):"",A=nQr.isPrimitive(A)?String(A):"",l){let f=P4.cursor.up(l)+P4.cursor.to(this.strLen(o)),I=a.length-r;return I>0&&(f+=P4.cursor.left(I)),f}if(A||t){let f=!a&&n?-this.strLen(n):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&n&&!o.includes(n)&&(f+=this.strLen(n)),P4.cursor.move(f)}}},sQr=P4.erase={screen:rue.screen,up:rue.up,down:rue.down,line:rue.line,lineEnd:rue.lineEnd,lineStart:rue.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return sQr.line+D_e.to(0);let r=o=>[...Qfl(o)].length,n=e.split(/\r?\n/),a=0;for(let o of n)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(sQr.line+D_e.prevLine()).repeat(a-1)+sQr.line+D_e.to(0)}});var Yxe=H((atg,Los)=>{"use strict";var Xfl=wt("events"),Zos=q5(),oQr=zYr(),Jfl=bos(),Ufl=Sos(),Kfl=Nos(),OV=zG(),k_e=Fos(),aQr=class e extends Xfl{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,Kfl(this),Jfl(this),this.state=new Ufl(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=zfl(this.options.margin),this.setMaxListeners(0),jfl(this)}async keypress(t,r={}){this.keypressed=!0;let n=oQr.action(t,oQr(t,r),this.options.actions);this.state.keypress=n,this.emit("keypress",t,n),this.emit("state",this.state.clone());let a=this.options[n.action]||this[n.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,n);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(k_e.code.beep)}cursorHide(){this.stdout.write(k_e.cursor.hide());let t=OV.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(k_e.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(k_e.cursor.down(t)+k_e.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:n}=this.sections(),{cursor:a,initial:o="",input:l="",value:A=""}=this,f=this.state.size=n.length,I={after:r,cursor:a,initial:o,input:l,prompt:t,size:f,value:A},C=k_e.cursor.restore(I);C&&this.stdout.write(C)}sections(){let{buffer:t,input:r,prompt:n}=this.state;n=Zos(n);let a=Zos(t),o=a.indexOf(n),l=a.slice(0,o),f=a.slice(o).split(` `),I=f[0],C=f[f.length-1],E=(n+(r?" "+r:"")).length,N=Et.call(this,this.value),this.result=()=>n.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,n){let{options:a,state:o,symbols:l,timers:A}=this,f=A&&A[t];o.timer=f;let I=a[t]||o[t]||l[t],C=r&&r[t]!=null?r[t]:await I;if(C==="")return C;let b=await this.resolve(C,o,r,n);return!b&&r&&r[t]?this.resolve(I,o,r,n):b}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,n=this.state;return n.timer=r,OV.isObject(t)&&(t=t[n.status]||t.pending),OV.hasColor(t)?t:(this.styles[n.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return OV.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,n=this.state;n.timer=r;let a=t[n.status]||t.pending||n.separator,o=await this.resolve(a,n);return OV.isObject(o)&&(o=o[n.status]||o.pending),OV.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let n=await this.element("pointer",t,r);if(typeof n=="string"&&OV.hasColor(n))return n;if(n){let a=this.styles,o=this.index===r,l=o?a.primary:I=>I,A=await this.resolve(n[o?"on":"off"]||n,this.state),f=OV.hasColor(A)?A:l(A);return o?f:" ".repeat(A.length)}}async indicator(t,r){let n=await this.element("indicator",t,r);if(typeof n=="string"&&OV.hasColor(n))return n;if(n){let a=this.styles,o=t.enabled===!0,l=o?a.success:a.dark,A=n[o?"on":"off"]||n;return OV.hasColor(A)?A:l(A)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return OV.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return OV.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||OV.height(this.stdout,25)}get width(){return this.options.columns||OV.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,n=[r,t].find(this.isValue.bind(this));return this.isValue(n)?n:this.initial}static get prompt(){return t=>new this(t).run()}};function ifl(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],n=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?n.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function sfl(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` -`:" ",n=[];for(let a=0;a<4;a++){let o=r(a);t[a]?n.push(o.repeat(t[a])):n.push("")}return n}yos.exports=eQr});var Sos=H((q$u,Eos)=>{"use strict";var ofl=zG(),bos={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return bos.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};Eos.exports=(e,t={})=>{let r=ofl.merge({},bos,t.roles);return r[e]||r.default}});var Gje=H(($$u,wos)=>{"use strict";var afl=q5(),cfl=Mxe(),lfl=Sos(),Jkt=zG(),{reorder:tQr,scrollUp:ufl,scrollDown:gfl,isObject:vos,swap:Afl}=Jkt,rQr=class extends cfl{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:n,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");vos(r)&&(r=Object.keys(r)),Array.isArray(r)?(n!=null&&(this.index=this.findIndex(n)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(n!=null&&(r=n),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let n=[],a=0,o=async(l,A)=>{typeof l=="function"&&(l=await l.call(this)),l instanceof Promise&&(l=await l);for(let f=0;f(this.state.loadingChoices=!1,l))}async toChoice(t,r,n){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=lfl(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,Jkt.define(t,"parent",n),t.level=n?n.level+1:1,t.indent==null&&(t.indent=n?n.indent+" ":t.indent||""),t.path=n?n.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,afl(t.message).length));let l={...t};return t.reset=(A=l.input,f=l.value)=>{for(let I of Object.keys(l))t[I]=l[I];t.input=A,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,n){let a=await this.toChoice(t,r,n);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,n){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,n);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let n=t.parent;for(;n;){let a=n.choices.filter(o=>this.isDisabled(o));n.enabled=a.every(o=>o.enabled===!0),n=n.parent}return Bos(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=n=>{let a=Number(n);if(a>this.choices.length-1)return this.alert();let o=this.focused,l=this.choices.find(A=>a===A.index);if(!l.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(l)===-1){let A=tQr(this.choices),f=A.indexOf(l);if(o.index>f){let I=A.slice(f,f+this.limit),C=A.filter(b=>!I.includes(b));this.choices=I.concat(C)}else{let I=f-this.limit+1;this.choices=A.slice(I).concat(A.slice(0,I))}}return this.index=this.choices.indexOf(l),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(n=>{let a=this.choices.length,o=this.num,l=(A=!1,f)=>{clearTimeout(this.numberTimeout),A&&(f=r(o)),this.num="",n(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return l(!0);if(Number(o)>a)return l(!1,this.alert());this.numberTimeout=setTimeout(()=>l(!0),this.delay)})}home(){return this.choices=tQr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=tQr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===0?this.alert():t>r&&n===0?this.scrollUp():(this.index=(n-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===r-1?this.alert():t>r&&n===r-1?this.scrollDown():(this.index=(n+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=ufl(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=gfl(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){Afl(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(n=>t[n]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(n=>!this.isDisabled(n));return t.enabled&&r.every(n=>this.isEnabled(n))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((n,a)=>(n[a]=this.find(a,r),n),{})}filter(t,r){let a=typeof t=="function"?t:(A,f)=>[A.name,f].includes(t),l=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?l.map(A=>A[r]):l}find(t,r){if(vos(t))return r?t[r]:t;let a=typeof t=="function"?t:(l,A)=>[l.name,A].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(l=>l.newChoice))return this.alert();let{reorder:r,sort:n}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&n!==!0&&(o=Jkt.reorder(o)),this.value=a?o.map(l=>l.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(n=>n.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let n=this.find(r);n&&(this.initial=n.index,this.focus(n,!0))}}}get choices(){return Bos(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:n}=this,a=t.limit||this._limit||r.limit||n.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function Bos(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(Jkt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let n=r.choices.filter(a=>!e.isDisabled(a));r.enabled=n.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}wos.exports=rQr});var rue=H((eeg,Tos)=>{"use strict";var dfl=Gje(),nQr=zG(),iQr=class extends dfl{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let n=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!nQr.hasColor(n)&&(n=this.styles.strong(n)),this.resolve(n,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),l=await this.resolve(t.hint,this.state,t,r);l&&!nQr.hasColor(l)&&(l=this.styles.muted(l));let A=this.indent(t),f=await this.choiceMessage(t,r),I=()=>[this.margin[3],A+a+o,f,this.margin[1],l].filter(Boolean).join(" ");return t.role==="heading"?I():t.disabled?(nQr.hasColor(f)||(f=this.styles.disabled(f)),I()):(n&&(f=this.styles.em(f)),I())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,l)=>await this.renderChoice(o,l)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let n=this.margin[0]+r.join(` +`+this.styles.danger(r),this.state.submitted=!1,await this.render(),await this.alert(),this.state.validating=!1,this.state.error=void 0;return}this.state.validating=!1,await this.render(),await this.close(),this.value=await this.result(this.value),this.emit("submit",this.value)}async cancel(t){this.state.cancelled=this.state.submitted=!0,await this.render(),await this.close(),typeof this.options.onCancel=="function"&&await this.options.onCancel.call(this,this.name,this.value,this),this.emit("cancel",await this.error(t))}async close(){this.state.closed=!0;try{let t=this.sections(),r=Math.ceil(t.prompt.length/this.width);t.rest&&this.write(k_e.cursor.down(t.rest.length)),this.write(` +`.repeat(r))}catch{}this.emit("close")}start(){!this.stop&&this.options.show!==!1&&(this.stop=oQr.listen(this,this.keypress.bind(this)),this.once("close",this.stop),this.emit("start",this))}async skip(){return this.skipped=this.options.skip===!0,typeof this.options.skip=="function"&&(this.skipped=await this.options.skip.call(this,this.name,this.value)),this.skipped}async initialize(){let{format:t,options:r,result:n}=this;if(this.format=()=>t.call(this,this.value),this.result=()=>n.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,n){let{options:a,state:o,symbols:l,timers:A}=this,f=A&&A[t];o.timer=f;let I=a[t]||o[t]||l[t],C=r&&r[t]!=null?r[t]:await I;if(C==="")return C;let b=await this.resolve(C,o,r,n);return!b&&r&&r[t]?this.resolve(I,o,r,n):b}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,n=this.state;return n.timer=r,OV.isObject(t)&&(t=t[n.status]||t.pending),OV.hasColor(t)?t:(this.styles[n.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return OV.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,n=this.state;n.timer=r;let a=t[n.status]||t.pending||n.separator,o=await this.resolve(a,n);return OV.isObject(o)&&(o=o[n.status]||o.pending),OV.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let n=await this.element("pointer",t,r);if(typeof n=="string"&&OV.hasColor(n))return n;if(n){let a=this.styles,o=this.index===r,l=o?a.primary:I=>I,A=await this.resolve(n[o?"on":"off"]||n,this.state),f=OV.hasColor(A)?A:l(A);return o?f:" ".repeat(A.length)}}async indicator(t,r){let n=await this.element("indicator",t,r);if(typeof n=="string"&&OV.hasColor(n))return n;if(n){let a=this.styles,o=t.enabled===!0,l=o?a.success:a.dark,A=n[o?"on":"off"]||n;return OV.hasColor(A)?A:l(A)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return OV.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return OV.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||OV.height(this.stdout,25)}get width(){return this.options.columns||OV.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,n=[r,t].find(this.isValue.bind(this));return this.isValue(n)?n:this.initial}static get prompt(){return t=>new this(t).run()}};function jfl(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],n=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?n.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function zfl(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` +`:" ",n=[];for(let a=0;a<4;a++){let o=r(a);t[a]?n.push(o.repeat(t[a])):n.push("")}return n}Los.exports=aQr});var Wos=H((ctg,Pos)=>{"use strict";var qfl=zG(),Vos={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return Vos.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};Pos.exports=(e,t={})=>{let r=qfl.merge({},Vos,t.roles);return r[e]||r.default}});var Zje=H((ltg,Hos)=>{"use strict";var $fl=q5(),eIl=Yxe(),tIl=Wos(),zkt=zG(),{reorder:cQr,scrollUp:rIl,scrollDown:nIl,isObject:Oos,swap:iIl}=zkt,lQr=class extends eIl{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:n,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");Oos(r)&&(r=Object.keys(r)),Array.isArray(r)?(n!=null&&(this.index=this.findIndex(n)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(n!=null&&(r=n),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let n=[],a=0,o=async(l,A)=>{typeof l=="function"&&(l=await l.call(this)),l instanceof Promise&&(l=await l);for(let f=0;f(this.state.loadingChoices=!1,l))}async toChoice(t,r,n){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=tIl(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,zkt.define(t,"parent",n),t.level=n?n.level+1:1,t.indent==null&&(t.indent=n?n.indent+" ":t.indent||""),t.path=n?n.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,$fl(t.message).length));let l={...t};return t.reset=(A=l.input,f=l.value)=>{for(let I of Object.keys(l))t[I]=l[I];t.input=A,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,n){let a=await this.toChoice(t,r,n);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,n){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,n);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let n=t.parent;for(;n;){let a=n.choices.filter(o=>this.isDisabled(o));n.enabled=a.every(o=>o.enabled===!0),n=n.parent}return Mos(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=n=>{let a=Number(n);if(a>this.choices.length-1)return this.alert();let o=this.focused,l=this.choices.find(A=>a===A.index);if(!l.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(l)===-1){let A=cQr(this.choices),f=A.indexOf(l);if(o.index>f){let I=A.slice(f,f+this.limit),C=A.filter(b=>!I.includes(b));this.choices=I.concat(C)}else{let I=f-this.limit+1;this.choices=A.slice(I).concat(A.slice(0,I))}}return this.index=this.choices.indexOf(l),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(n=>{let a=this.choices.length,o=this.num,l=(A=!1,f)=>{clearTimeout(this.numberTimeout),A&&(f=r(o)),this.num="",n(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return l(!0);if(Number(o)>a)return l(!1,this.alert());this.numberTimeout=setTimeout(()=>l(!0),this.delay)})}home(){return this.choices=cQr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=cQr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===0?this.alert():t>r&&n===0?this.scrollUp():(this.index=(n-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===r-1?this.alert():t>r&&n===r-1?this.scrollDown():(this.index=(n+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=rIl(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=nIl(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){iIl(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(n=>t[n]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(n=>!this.isDisabled(n));return t.enabled&&r.every(n=>this.isEnabled(n))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((n,a)=>(n[a]=this.find(a,r),n),{})}filter(t,r){let a=typeof t=="function"?t:(A,f)=>[A.name,f].includes(t),l=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?l.map(A=>A[r]):l}find(t,r){if(Oos(t))return r?t[r]:t;let a=typeof t=="function"?t:(l,A)=>[l.name,A].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(l=>l.newChoice))return this.alert();let{reorder:r,sort:n}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&n!==!0&&(o=zkt.reorder(o)),this.value=a?o.map(l=>l.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(n=>n.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let n=this.find(r);n&&(this.initial=n.index,this.focus(n,!0))}}}get choices(){return Mos(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:n}=this,a=t.limit||this._limit||r.limit||n.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function Mos(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(zkt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let n=r.choices.filter(a=>!e.isDisabled(a));r.enabled=n.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}Hos.exports=lQr});var nue=H((utg,Yos)=>{"use strict";var sIl=Zje(),uQr=zG(),gQr=class extends sIl{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let n=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!uQr.hasColor(n)&&(n=this.styles.strong(n)),this.resolve(n,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),l=await this.resolve(t.hint,this.state,t,r);l&&!uQr.hasColor(l)&&(l=this.styles.muted(l));let A=this.indent(t),f=await this.choiceMessage(t,r),I=()=>[this.margin[3],A+a+o,f,this.margin[1],l].filter(Boolean).join(" ");return t.role==="heading"?I():t.disabled?(uQr.hasColor(f)||(f=this.styles.disabled(f)),I()):(n&&(f=this.styles.em(f)),I())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,l)=>await this.renderChoice(o,l)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let n=this.margin[0]+r.join(` `),a;return this.options.choicesHeader&&(a=await this.resolve(this.options.choicesHeader,this.state)),[a,n].filter(Boolean).join(` `)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(t=>this.styles.primary(t.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:t,size:r}=this.state,n="",a=await this.header(),o=await this.prefix(),l=await this.separator(),A=await this.message();this.options.promptLine!==!1&&(n=[o,A,l,""].join(" "),this.state.prompt=n);let f=await this.format(),I=await this.error()||await this.hint(),C=await this.renderChoices(),b=await this.footer();f&&(n+=f),I&&!n.includes(I)&&(n+=" "+I),t&&!f&&!C.trim()&&this.multiple&&this.emptyError!=null&&(n+=this.styles.danger(this.emptyError)),this.clear(r),this.write([a,n,C,b].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Tos.exports=iQr});var Nos=H((teg,Ros)=>{"use strict";var pfl=rue(),ffl=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return n=>e?n.replace(r,a=>t(a)):n},sQr=class extends pfl{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:n}=this.state;return this.input=n.slice(0,r)+t+n.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let n=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(n))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,l)=>o&&(t.stack?t(o):t.call(this,o)),n=ffl(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:n(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};Ros.exports=sQr});var aQr=H((reg,Dos)=>{"use strict";var oQr=zG();Dos.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:n="",pos:a,showCursor:o=!0,color:l}=t,A=l||e.styles.placeholder,f=oQr.inverse(e.styles.primary),I=F=>f(e.styles.black(F)),C=r,b=" ",E=I(b);if(e.blink&&e.blink.off===!0&&(I=F=>F,E=""),o&&a===0&&n===""&&r==="")return I(b);if(o&&a===0&&(r===n||r===""))return I(n[0])+A(n.slice(1));n=oQr.isPrimitive(n)?`${n}`:"",r=oQr.isPrimitive(r)?`${r}`:"";let N=n&&n.startsWith(r)&&n!==r,B=N?I(n[r.length]):E;if(a!==r.length&&o===!0&&(C=r.slice(0,a)+I(r[a])+r.slice(a+1),B=""),o===!1&&(B=""),N){let F=e.styles.unstyle(C+B);return C+B+A(n.slice(F.length))}return C+B}});var Ukt=H((neg,kos)=>{"use strict";var Ifl=q5(),hfl=rue(),mfl=aQr(),cQr=class extends hfl{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:n,input:a}=r;return r.value=r.input=a.slice(0,n)+t+a.slice(n),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:n}=t;return t.value=t.input=n.slice(0,r-1)+n.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:n}=t;if(n[r]===void 0)return this.alert();let a=`${n}`.slice(0,r)+`${n}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:n}=t;return r&&r.startsWith(n)&&n!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let n=await this.resolve(t.separator,this.state,t,r)||":";return n?" "+this.styles.disabled(n):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:n,styles:a}=this,{cursor:o,initial:l="",name:A,input:f=""}=t,{muted:I,submitted:C,primary:b,danger:E}=a,N=this.index===r,B=t.validate||(()=>!0),F=await this.choiceSeparator(t,r),Q=t.message;this.align==="right"&&(Q=Q.padStart(this.longest+1," ")),this.align==="left"&&(Q=Q.padEnd(this.longest+1," "));let X=this.values[A]=f||l,ae=f?"success":"dark";await B.call(t,X,this.state)!==!0&&(ae="danger");let ne=a[ae],ce=ne(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),ue=()=>[fe,ce,Q+F,f].filter(Boolean).join(" ");if(n.submitted)return Q=Ifl(Q),f=C(f),ue();if(t.format)f=await t.format.call(this,f,t,r);else{let de=this.styles.muted;f=mfl(this,{input:f,initial:l,pos:o,showCursor:N,color:de})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[A]=await t.result.call(this,X,t,r)),N&&(Q=b(Q)),t.error?f+=(f?" ":"")+E(t.error.trim()):t.hint&&(f+=(f?" ":"")+I(t.hint.trim())),ue()}async submit(){return this.value=this.values,super.base.submit.call(this)}};kos.exports=cQr});var lQr=H((ieg,Gos)=>{"use strict";var Cfl=Ukt(),_fl=()=>{throw new Error("expected prompt to have a custom authenticate method")},xos=(e=_fl)=>{class t extends Cfl{constructor(n){super(n)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(n){return xos(n)}}return t};Gos.exports=xos()});var Los=H((seg,Zos)=>{"use strict";var yfl=lQr();function bfl(e,t){return e.username===this.options.username&&e.password===this.options.password}var Fos=(e=bfl)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(n){return this.options.showPassword?n:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(n.length))}}];class r extends yfl.create(e){constructor(a){super({...a,choices:t})}static create(a){return Fos(a)}}return r};Zos.exports=Fos()});var Kkt=H((oeg,Vos)=>{"use strict";var Efl=Mxe(),{isPrimitive:Sfl,hasColor:vfl}=zG(),uQr=class extends Efl{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:n}=this;return n.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return Sfl(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return vfl(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=this.styles.muted(this.default),A=[n,o,l,a].filter(Boolean).join(" ");this.state.prompt=A;let f=await this.header(),I=this.value=this.cast(t),C=await this.format(I),b=await this.error()||await this.hint(),E=await this.footer();b&&!A.includes(b)&&(C+=" "+b),A+=" "+C,this.clear(r),this.write([f,A,E].filter(Boolean).join(` -`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};Vos.exports=uQr});var Wos=H((aeg,Pos)=>{"use strict";var Bfl=Kkt(),gQr=class extends Bfl{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Pos.exports=gQr});var Mos=H((ceg,Oos)=>{"use strict";var wfl=rue(),Tfl=Ukt(),Hxe=Tfl.prototype,AQr=class extends wfl{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let n=this.focused,a=n.parent||{};return!n.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():Hxe.dispatch.call(this,t,r)}append(t,r){return Hxe.append.call(this,t,r)}delete(t,r){return Hxe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?Hxe.next.call(this):super.next()}prev(){return this.focused.editable?Hxe.prev.call(this):super.prev()}async indicator(t,r){let n=t.indicator||"",a=t.editable?n:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?Hxe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let n=r.parent?this.value[r.parent.name]:this.value;if(r.editable?n=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(n=r.enabled===!0),t=await r.validate(n,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};Oos.exports=AQr});var k_e=H((leg,Hos)=>{"use strict";var Rfl=Mxe(),Nfl=YYr(),Dfl=aQr(),{isPrimitive:kfl}=zG(),dQr=class extends Rfl{constructor(t){super(t),this.initial=kfl(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?Nfl(t,{}):{}){let n=Date.now(),a=n-this.lastKeypress;this.lastKeypress=n;let o=r.name==="return"||r.name==="enter",l=this.state.prevKeypress,A;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):Dfl(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),n=await this.separator(),a=await this.message(),o=[r,a,n].filter(Boolean).join(" ");this.state.prompt=o;let l=await this.header(),A=await this.format(),f=await this.error()||await this.hint(),I=await this.footer();f&&!A.includes(f)&&(A+=" "+f),o+=" "+A,this.clear(t),this.write([l,o,I].filter(Boolean).join(` -`)),this.restore()}};Hos.exports=dQr});var Qos=H((ueg,Yos)=>{"use strict";var xfl=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),jkt=e=>xfl(e).filter(Boolean);Yos.exports=(e,t={},r="")=>{let{past:n=[],present:a=""}=t,o,l;switch(e){case"prev":case"undo":return o=n.slice(0,n.length-1),l=n[n.length-1]||"",{past:jkt([r,...o]),present:l};case"next":case"redo":return o=n.slice(1),l=n[0]||"",{past:jkt([...o,r]),present:l};case"save":return{past:jkt([...n,r]),present:""};case"remove":return l=jkt(n.filter(A=>A!==r)),a="",l.length&&(a=l.pop()),{past:l,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var fQr=H((geg,Jos)=>{"use strict";var Gfl=k_e(),Xos=Qos(),pQr=class extends Gfl{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let n=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:n},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=Xos(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=Xos("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};Jos.exports=pQr});var Kos=H((Aeg,Uos)=>{"use strict";var Ffl=k_e(),IQr=class extends Ffl{format(){return""}};Uos.exports=IQr});var zos=H((deg,jos)=>{"use strict";var Zfl=k_e(),hQr=class extends Zfl{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};jos.exports=hQr});var $os=H((peg,qos)=>{"use strict";var Lfl=rue(),mQr=class extends Lfl{constructor(t){super({...t,multiple:!0})}};qos.exports=mQr});var _Qr=H((feg,eas)=>{"use strict";var Vfl=k_e(),CQr=class extends Vfl{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,n=this.toNumber(this.input);return n>this.max+r?this.alert():(this.input=`${n+r}`,this.render())}down(t){let r=t||this.minor,n=this.toNumber(this.input);return nthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};eas.exports=CQr});var ras=H((Ieg,tas)=>{tas.exports=_Qr()});var ias=H((heg,nas)=>{"use strict";var Pfl=k_e(),yQr=class extends Pfl{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};nas.exports=yQr});var aas=H((meg,oas)=>{"use strict";var Wfl=q5(),Ofl=Gje(),sas=zG(),bQr=class extends Ofl{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` +`)),this.write(this.margin[2]),this.restore()}};Yos.exports=gQr});var Xos=H((gtg,Qos)=>{"use strict";var oIl=nue(),aIl=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return n=>e?n.replace(r,a=>t(a)):n},AQr=class extends oIl{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:n}=this.state;return this.input=n.slice(0,r)+t+n.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let n=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(n))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,l)=>o&&(t.stack?t(o):t.call(this,o)),n=aIl(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:n(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};Qos.exports=AQr});var pQr=H((Atg,Jos)=>{"use strict";var dQr=zG();Jos.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:n="",pos:a,showCursor:o=!0,color:l}=t,A=l||e.styles.placeholder,f=dQr.inverse(e.styles.primary),I=F=>f(e.styles.black(F)),C=r,b=" ",E=I(b);if(e.blink&&e.blink.off===!0&&(I=F=>F,E=""),o&&a===0&&n===""&&r==="")return I(b);if(o&&a===0&&(r===n||r===""))return I(n[0])+A(n.slice(1));n=dQr.isPrimitive(n)?`${n}`:"",r=dQr.isPrimitive(r)?`${r}`:"";let N=n&&n.startsWith(r)&&n!==r,B=N?I(n[r.length]):E;if(a!==r.length&&o===!0&&(C=r.slice(0,a)+I(r[a])+r.slice(a+1),B=""),o===!1&&(B=""),N){let F=e.styles.unstyle(C+B);return C+B+A(n.slice(F.length))}return C+B}});var qkt=H((dtg,Uos)=>{"use strict";var cIl=q5(),lIl=nue(),uIl=pQr(),fQr=class extends lIl{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:n,input:a}=r;return r.value=r.input=a.slice(0,n)+t+a.slice(n),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:n}=t;return t.value=t.input=n.slice(0,r-1)+n.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:n}=t;if(n[r]===void 0)return this.alert();let a=`${n}`.slice(0,r)+`${n}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:n}=t;return r&&r.startsWith(n)&&n!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let n=await this.resolve(t.separator,this.state,t,r)||":";return n?" "+this.styles.disabled(n):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:n,styles:a}=this,{cursor:o,initial:l="",name:A,input:f=""}=t,{muted:I,submitted:C,primary:b,danger:E}=a,N=this.index===r,B=t.validate||(()=>!0),F=await this.choiceSeparator(t,r),Q=t.message;this.align==="right"&&(Q=Q.padStart(this.longest+1," ")),this.align==="left"&&(Q=Q.padEnd(this.longest+1," "));let X=this.values[A]=f||l,ae=f?"success":"dark";await B.call(t,X,this.state)!==!0&&(ae="danger");let ne=a[ae],ce=ne(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),ue=()=>[fe,ce,Q+F,f].filter(Boolean).join(" ");if(n.submitted)return Q=cIl(Q),f=C(f),ue();if(t.format)f=await t.format.call(this,f,t,r);else{let de=this.styles.muted;f=uIl(this,{input:f,initial:l,pos:o,showCursor:N,color:de})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[A]=await t.result.call(this,X,t,r)),N&&(Q=b(Q)),t.error?f+=(f?" ":"")+E(t.error.trim()):t.hint&&(f+=(f?" ":"")+I(t.hint.trim())),ue()}async submit(){return this.value=this.values,super.base.submit.call(this)}};Uos.exports=fQr});var IQr=H((ptg,jos)=>{"use strict";var gIl=qkt(),AIl=()=>{throw new Error("expected prompt to have a custom authenticate method")},Kos=(e=AIl)=>{class t extends gIl{constructor(n){super(n)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(n){return Kos(n)}}return t};jos.exports=Kos()});var $os=H((ftg,qos)=>{"use strict";var dIl=IQr();function pIl(e,t){return e.username===this.options.username&&e.password===this.options.password}var zos=(e=pIl)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(n){return this.options.showPassword?n:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(n.length))}}];class r extends dIl.create(e){constructor(a){super({...a,choices:t})}static create(a){return zos(a)}}return r};qos.exports=zos()});var $kt=H((Itg,eas)=>{"use strict";var fIl=Yxe(),{isPrimitive:IIl,hasColor:hIl}=zG(),hQr=class extends fIl{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:n}=this;return n.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return IIl(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return hIl(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=this.styles.muted(this.default),A=[n,o,l,a].filter(Boolean).join(" ");this.state.prompt=A;let f=await this.header(),I=this.value=this.cast(t),C=await this.format(I),b=await this.error()||await this.hint(),E=await this.footer();b&&!A.includes(b)&&(C+=" "+b),A+=" "+C,this.clear(r),this.write([f,A,E].filter(Boolean).join(` +`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};eas.exports=hQr});var ras=H((htg,tas)=>{"use strict";var mIl=$kt(),mQr=class extends mIl{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};tas.exports=mQr});var ias=H((mtg,nas)=>{"use strict";var CIl=nue(),_Il=qkt(),Qxe=_Il.prototype,CQr=class extends CIl{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let n=this.focused,a=n.parent||{};return!n.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():Qxe.dispatch.call(this,t,r)}append(t,r){return Qxe.append.call(this,t,r)}delete(t,r){return Qxe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?Qxe.next.call(this):super.next()}prev(){return this.focused.editable?Qxe.prev.call(this):super.prev()}async indicator(t,r){let n=t.indicator||"",a=t.editable?n:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?Qxe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let n=r.parent?this.value[r.parent.name]:this.value;if(r.editable?n=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(n=r.enabled===!0),t=await r.validate(n,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};nas.exports=CQr});var x_e=H((Ctg,sas)=>{"use strict";var yIl=Yxe(),bIl=zYr(),EIl=pQr(),{isPrimitive:SIl}=zG(),_Qr=class extends yIl{constructor(t){super(t),this.initial=SIl(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?bIl(t,{}):{}){let n=Date.now(),a=n-this.lastKeypress;this.lastKeypress=n;let o=r.name==="return"||r.name==="enter",l=this.state.prevKeypress,A;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):EIl(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),n=await this.separator(),a=await this.message(),o=[r,a,n].filter(Boolean).join(" ");this.state.prompt=o;let l=await this.header(),A=await this.format(),f=await this.error()||await this.hint(),I=await this.footer();f&&!A.includes(f)&&(A+=" "+f),o+=" "+A,this.clear(t),this.write([l,o,I].filter(Boolean).join(` +`)),this.restore()}};sas.exports=_Qr});var aas=H((_tg,oas)=>{"use strict";var vIl=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),ext=e=>vIl(e).filter(Boolean);oas.exports=(e,t={},r="")=>{let{past:n=[],present:a=""}=t,o,l;switch(e){case"prev":case"undo":return o=n.slice(0,n.length-1),l=n[n.length-1]||"",{past:ext([r,...o]),present:l};case"next":case"redo":return o=n.slice(1),l=n[0]||"",{past:ext([...o,r]),present:l};case"save":return{past:ext([...n,r]),present:""};case"remove":return l=ext(n.filter(A=>A!==r)),a="",l.length&&(a=l.pop()),{past:l,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var bQr=H((ytg,las)=>{"use strict";var BIl=x_e(),cas=aas(),yQr=class extends BIl{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let n=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:n},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=cas(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=cas("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};las.exports=yQr});var gas=H((btg,uas)=>{"use strict";var wIl=x_e(),EQr=class extends wIl{format(){return""}};uas.exports=EQr});var das=H((Etg,Aas)=>{"use strict";var TIl=x_e(),SQr=class extends TIl{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};Aas.exports=SQr});var fas=H((Stg,pas)=>{"use strict";var RIl=nue(),vQr=class extends RIl{constructor(t){super({...t,multiple:!0})}};pas.exports=vQr});var wQr=H((vtg,Ias)=>{"use strict";var NIl=x_e(),BQr=class extends NIl{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,n=this.toNumber(this.input);return n>this.max+r?this.alert():(this.input=`${n+r}`,this.render())}down(t){let r=t||this.minor,n=this.toNumber(this.input);return nthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};Ias.exports=BQr});var mas=H((Btg,has)=>{has.exports=wQr()});var _as=H((wtg,Cas)=>{"use strict";var DIl=x_e(),TQr=class extends DIl{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};Cas.exports=TQr});var Eas=H((Ttg,bas)=>{"use strict";var kIl=q5(),xIl=Zje(),yas=zG(),RQr=class extends xIl{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` `;let r=t.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((n,a)=>({name:a+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let t=0;for(let r of this.choices){t=Math.max(t,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let n=0;n=this.scale.length-1?this.alert():(t.scaleIndex++,this.render())}left(){let t=this.focused;return t.scaleIndex<=0?this.alert():(t.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){return this.scaleKey===!1||this.state.submitted?"":["",...this.scale.map(n=>` ${n.name} - ${n.message}`)].map(n=>this.styles.muted(n)).join(` -`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let n=this.scaleLength-r.join("").length,a=Math.round(n/(r.length-1)),l=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),A=" ".repeat(this.widths[0]);return this.margin[3]+A+this.margin[1]+l}scaleIndicator(t,r,n){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,n);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let n=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return n.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!sas.hasColor(o)&&(o=this.styles.muted(o));let l=B=>this.margin[3]+B.replace(/\s+$/,"").padEnd(this.widths[0]," "),A=this.newline,f=this.indent(t),I=await this.resolve(t.message,this.state,t,r),C=await this.renderScale(t,r),b=this.margin[1]+this.margin[3];this.scaleLength=Wfl(C).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-b.length);let N=sas.wordWrap(I,{width:this.widths[0],newline:A}).split(` +`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let n=this.scaleLength-r.join("").length,a=Math.round(n/(r.length-1)),l=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),A=" ".repeat(this.widths[0]);return this.margin[3]+A+this.margin[1]+l}scaleIndicator(t,r,n){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,n);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let n=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return n.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!yas.hasColor(o)&&(o=this.styles.muted(o));let l=B=>this.margin[3]+B.replace(/\s+$/,"").padEnd(this.widths[0]," "),A=this.newline,f=this.indent(t),I=await this.resolve(t.message,this.state,t,r),C=await this.renderScale(t,r),b=this.margin[1]+this.margin[3];this.scaleLength=kIl(C).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-b.length);let N=yas.wordWrap(I,{width:this.widths[0],newline:A}).split(` `).map(B=>l(B)+this.margin[1]);return n&&(C=this.styles.info(C),N=N.map(B=>this.styles.info(B))),N[0]+=C,this.linebreak&&N.push(""),[f+a,N.join(` `)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let t=this.visible.map(async(a,o)=>await this.renderChoice(a,o)),r=await Promise.all(t),n=await this.renderScaleHeading();return this.margin[0]+[n,...r.map(a=>a.join(" "))].join(` `)}async render(){let{submitted:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l="";this.options.promptLine!==!1&&(l=[n,o,a,""].join(" "),this.state.prompt=l);let A=await this.header(),f=await this.format(),I=await this.renderScaleKey(),C=await this.error()||await this.hint(),b=await this.renderChoices(),E=await this.footer(),N=this.emptyError;f&&(l+=f),C&&!l.includes(C)&&(l+=" "+C),t&&!f&&!b.trim()&&this.multiple&&N!=null&&(l+=this.styles.danger(N)),this.clear(r),this.write([A,l,I,b,E].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};oas.exports=bQr});var uas=H((Ceg,las)=>{"use strict";var cas=q5(),Mfl=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",SQr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=Mfl(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},Hfl=async(e={},t={},r=n=>n)=>{let n=new Set,a=e.fields||[],o=e.template,l=[],A=[],f=[],I=1;typeof o=="function"&&(o=await o());let C=-1,b=()=>o[++C],E=()=>o[C+1],N=B=>{B.line=I,l.push(B)};for(N({type:"bos",value:""});Cce.name===X.key);X.field=a.find(ce=>ce.name===X.key),ne||(ne=new SQr(X),A.push(ne)),ne.lines.push(X.line-1);continue}let F=l[l.length-1];F.type==="text"&&F.line===I?F.value+=B:N({type:"text",value:B})}return N({type:"eos",value:""}),{input:o,tabstops:l,unique:n,keys:f,items:A}};las.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),n={...t.values,...t.initial},{tabstops:a,items:o,keys:l}=await Hfl(t,n),A=EQr("result",e,t),f=EQr("format",e,t),I=EQr("validate",e,t,!0),C=e.isValue.bind(e);return async(b={},E=!1)=>{let N=0;b.required=r,b.items=o,b.keys=l,b.output="";let B=async(ae,ne,ce,fe)=>{let ue=await I(ae,ne,ce,fe);return ue===!1?"Invalid field "+ce.name:ue};for(let ae of a){let ne=ae.value,ce=ae.key;if(ae.type!=="template"){ne&&(b.output+=ne);continue}if(ae.type==="template"){let fe=o.find(De=>De.name===ce);t.required===!0&&b.required.add(fe.name);let ue=[fe.input,b.values[fe.value],fe.value,ne].find(C),be=(fe.field||{}).message||ae.inner;if(E){let De=await B(b.values[ce],b,fe,N);if(De&&typeof De=="string"||De===!1){b.invalid.set(ce,De);continue}b.invalid.delete(ce);let k=await A(b.values[ce],b,fe,N);b.output+=cas(k);continue}fe.placeholder=!1;let Se=ne;ne=await f(ne,b,fe,N),ue!==ne?(b.values[ce]=ue,ne=e.styles.typing(ue),b.missing.delete(be)):(b.values[ce]=void 0,ue=`<${be}>`,ne=e.styles.primary(ue),fe.placeholder=!0,b.required.has(ce)&&b.missing.add(be)),b.missing.has(be)&&b.validating&&(ne=e.styles.warning(ue)),b.invalid.has(ce)&&b.validating&&(ne=e.styles.danger(ue)),N===b.index&&(Se!==ne?ne=e.styles.underline(ne):ne=e.styles.heading(cas(ne))),N++}ne&&(b.output+=ne)}let F=b.output.split(` +`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};bas.exports=RQr});var Bas=H((Rtg,vas)=>{"use strict";var Sas=q5(),GIl=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",DQr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=GIl(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},FIl=async(e={},t={},r=n=>n)=>{let n=new Set,a=e.fields||[],o=e.template,l=[],A=[],f=[],I=1;typeof o=="function"&&(o=await o());let C=-1,b=()=>o[++C],E=()=>o[C+1],N=B=>{B.line=I,l.push(B)};for(N({type:"bos",value:""});Cce.name===X.key);X.field=a.find(ce=>ce.name===X.key),ne||(ne=new DQr(X),A.push(ne)),ne.lines.push(X.line-1);continue}let F=l[l.length-1];F.type==="text"&&F.line===I?F.value+=B:N({type:"text",value:B})}return N({type:"eos",value:""}),{input:o,tabstops:l,unique:n,keys:f,items:A}};vas.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),n={...t.values,...t.initial},{tabstops:a,items:o,keys:l}=await FIl(t,n),A=NQr("result",e,t),f=NQr("format",e,t),I=NQr("validate",e,t,!0),C=e.isValue.bind(e);return async(b={},E=!1)=>{let N=0;b.required=r,b.items=o,b.keys=l,b.output="";let B=async(ae,ne,ce,fe)=>{let ue=await I(ae,ne,ce,fe);return ue===!1?"Invalid field "+ce.name:ue};for(let ae of a){let ne=ae.value,ce=ae.key;if(ae.type!=="template"){ne&&(b.output+=ne);continue}if(ae.type==="template"){let fe=o.find(De=>De.name===ce);t.required===!0&&b.required.add(fe.name);let ue=[fe.input,b.values[fe.value],fe.value,ne].find(C),be=(fe.field||{}).message||ae.inner;if(E){let De=await B(b.values[ce],b,fe,N);if(De&&typeof De=="string"||De===!1){b.invalid.set(ce,De);continue}b.invalid.delete(ce);let k=await A(b.values[ce],b,fe,N);b.output+=Sas(k);continue}fe.placeholder=!1;let Se=ne;ne=await f(ne,b,fe,N),ue!==ne?(b.values[ce]=ue,ne=e.styles.typing(ue),b.missing.delete(be)):(b.values[ce]=void 0,ue=`<${be}>`,ne=e.styles.primary(ue),fe.placeholder=!0,b.required.has(ce)&&b.missing.add(be)),b.missing.has(be)&&b.validating&&(ne=e.styles.warning(ue)),b.invalid.has(ce)&&b.validating&&(ne=e.styles.danger(ue)),N===b.index&&(Se!==ne?ne=e.styles.underline(ne):ne=e.styles.heading(Sas(ne))),N++}ne&&(b.output+=ne)}let F=b.output.split(` `).map(ae=>" "+ae),Q=o.length,X=0;for(let ae of o)b.invalid.has(ae.name)&&ae.lines.forEach(ne=>{F[ne][0]===" "&&(F[ne]=b.styles.danger(b.symbols.bullet)+F[ne].slice(1))}),e.isValue(b.values[ae.name])&&X++;return b.completed=(X/Q*100).toFixed(0),b.output=F.join(` -`),b.output}};function EQr(e,t,r,n){return(a,o,l,A)=>typeof l.field[e]=="function"?l.field[e].call(t,a,o,l,A):[n,a].find(f=>t.isValue(f))}});var Aas=H((_eg,gas)=>{"use strict";var Yfl=q5(),Qfl=uas(),Xfl=Mxe(),vQr=class extends Xfl{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await Qfl(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let n=this.getItem(),a=n.input.slice(0,this.cursor),o=n.input.slice(this.cursor);this.input=n.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),n=t.input.slice(0,this.cursor-1);this.input=t.input=`${n}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:n,size:a}=this.state,o=[this.options.newline,` +`),b.output}};function NQr(e,t,r,n){return(a,o,l,A)=>typeof l.field[e]=="function"?l.field[e].call(t,a,o,l,A):[n,a].find(f=>t.isValue(f))}});var Tas=H((Ntg,was)=>{"use strict";var ZIl=q5(),LIl=Bas(),VIl=Yxe(),kQr=class extends VIl{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await LIl(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let n=this.getItem(),a=n.input.slice(0,this.cursor),o=n.input.slice(this.cursor);this.input=n.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),n=t.input.slice(0,this.cursor-1);this.input=t.input=`${n}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:n,size:a}=this.state,o=[this.options.newline,` `].find(ae=>ae!=null),l=await this.prefix(),A=await this.separator(),f=await this.message(),I=[l,f,A].filter(Boolean).join(" ");this.state.prompt=I;let C=await this.header(),b=await this.error()||"",E=await this.hint()||"",N=n?"":await this.interpolate(this.state),B=this.state.key=r[t]||"",F=await this.format(B),Q=await this.footer();F&&(I+=" "+F),E&&!F&&this.state.completed===0&&(I+=" "+E),this.clear(a);let X=[C,I,N,Q,b.trim()];this.write(X.filter(Boolean).join(o)),this.restore()}getItem(t){let{items:r,keys:n,index:a}=this.state,o=r.find(l=>l.name===n[a]);return o&&o.input!=null&&(this.input=o.input,this.cursor=o.cursor),o}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:t,missing:r,output:n,values:a}=this.state;if(t.size){let A="";for(let[f,I]of t)A+=`Invalid ${f}: ${I} -`;return this.state.error=A,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let l=Yfl(n).split(` +`;return this.state.error=A,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let l=ZIl(n).split(` `).map(A=>A.slice(1)).join(` -`);return this.value={values:a,result:l},super.submit()}};gas.exports=vQr});var pas=H((yeg,das)=>{"use strict";var Jfl="(Use + to sort)",Ufl=rue(),BQr=class extends Ufl{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,Jfl].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let n=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+n:o+n}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};das.exports=BQr});var Ias=H((beg,fas)=>{"use strict";var Kfl=Gje(),wQr=class extends Kfl{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(n=>this.styles.muted(n)),this.state.header=r.join(` - `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let n of r)n.scale=jfl(5,this.options),n.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],n=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!n,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=this.term==="Hyper",o=a?9:8,l=a?"":" ",A=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),I=ne=>(ne?this.styles.success("\u25C9"):"\u25EF")+l,C=r+1+".",b=n?this.styles.heading:this.styles.noop,E=await this.resolve(t.message,this.state,t,r),N=this.indent(t),B=N+t.scale.map((ne,ce)=>I(ce===t.scaleIdx)).join(A),F=ne=>ne===t.scaleIdx?b(ne):ne,Q=N+t.scale.map((ne,ce)=>F(ce)).join(f),X=()=>[C,E].filter(Boolean).join(" "),ae=()=>[X(),B,Q," "].filter(Boolean).join(` +`);return this.value={values:a,result:l},super.submit()}};was.exports=kQr});var Nas=H((Dtg,Ras)=>{"use strict";var PIl="(Use + to sort)",WIl=nue(),xQr=class extends WIl{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,PIl].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let n=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+n:o+n}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};Ras.exports=xQr});var kas=H((ktg,Das)=>{"use strict";var OIl=Zje(),GQr=class extends OIl{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(n=>this.styles.muted(n)),this.state.header=r.join(` + `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let n of r)n.scale=MIl(5,this.options),n.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],n=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!n,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=this.term==="Hyper",o=a?9:8,l=a?"":" ",A=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),I=ne=>(ne?this.styles.success("\u25C9"):"\u25EF")+l,C=r+1+".",b=n?this.styles.heading:this.styles.noop,E=await this.resolve(t.message,this.state,t,r),N=this.indent(t),B=N+t.scale.map((ne,ce)=>I(ce===t.scaleIdx)).join(A),F=ne=>ne===t.scaleIdx?b(ne):ne,Q=N+t.scale.map((ne,ce)=>F(ce)).join(f),X=()=>[C,E].filter(Boolean).join(" "),ae=()=>[X(),B,Q," "].filter(Boolean).join(` `);return n&&(B=this.styles.cyan(B),Q=this.styles.cyan(Q)),ae()}async renderChoices(){if(this.state.submitted)return"";let t=this.visible.map(async(n,a)=>await this.renderChoice(n,a)),r=await Promise.all(t);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` `)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=[n,o,a].filter(Boolean).join(" ");this.state.prompt=l;let A=await this.header(),f=await this.format(),I=await this.error()||await this.hint(),C=await this.renderChoices(),b=await this.footer();(f||!I)&&(l+=" "+f),I&&!l.includes(I)&&(l+=" "+I),t&&!f&&!C&&this.multiple&&this.type!=="form"&&(l+=this.styles.danger(this.emptyError)),this.clear(r),this.write([l,A,C,b].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function jfl(e,t={}){if(Array.isArray(t.scale))return t.scale.map(n=>({...n}));let r=[];for(let n=1;n{has.exports=fQr()});var _as=H((Seg,Cas)=>{"use strict";var zfl=Kkt(),TQr=class extends zfl{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=n=>this.styles.primary.underline(n);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),n=await this.prefix(),a=await this.separator(),o=await this.message(),l=await this.format(),A=await this.error()||await this.hint(),f=await this.footer(),I=[n,o,a,l].join(" ");this.state.prompt=I,A&&!I.includes(A)&&(I+=" "+A),this.clear(t),this.write([r,I,f].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Cas.exports=TQr});var bas=H((veg,yas)=>{"use strict";var qfl=rue(),RQr=class extends qfl{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let n=await super.toChoices(t,r);if(n.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>n.length)throw new Error("Please specify the index of the correct answer from the list of choices");return n}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};yas.exports=RQr});var Sas=H(NQr=>{"use strict";var Eas=zG(),VR=(e,t)=>{Eas.defineExport(NQr,e,t),Eas.defineExport(NQr,e.toLowerCase(),t)};VR("AutoComplete",()=>Nos());VR("BasicAuth",()=>Los());VR("Confirm",()=>Wos());VR("Editable",()=>Mos());VR("Form",()=>Ukt());VR("Input",()=>fQr());VR("Invisible",()=>Kos());VR("List",()=>zos());VR("MultiSelect",()=>$os());VR("Numeral",()=>ras());VR("Password",()=>ias());VR("Scale",()=>aas());VR("Select",()=>rue());VR("Snippet",()=>Aas());VR("Sort",()=>pas());VR("Survey",()=>Ias());VR("Text",()=>mas());VR("Toggle",()=>_as());VR("Quiz",()=>bas())});var Bas=H((weg,vas)=>{vas.exports={ArrayPrompt:Gje(),AuthPrompt:lQr(),BooleanPrompt:Kkt(),NumberPrompt:_Qr(),StringPrompt:k_e()}});var Zje=H((Teg,Tas)=>{"use strict";var was=wt("assert"),kQr=wt("events"),nue=zG(),W4=class extends kQr{constructor(t,r){super(),this.options=nue.merge({},t),this.answers={...r}}register(t,r){if(nue.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}was.equal(typeof r,"function","expected a function");let n=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[n]=r:this.prompts[n]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(nue.merge({},this.options,r))}catch(n){return Promise.reject(n)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=nue.merge({},this.options,t),{type:n,name:a}=t,{set:o,get:l}=nue;if(typeof n=="function"&&(n=await n.call(this,t,this.answers)),!n)return this.answers[a];n==="number"&&(n="numeral"),was(this.prompts[n],`Prompt "${n}" is not registered`);let A=new this.prompts[n](r),f=l(this.answers,a);A.state.answers=this.answers,A.enquirer=this,a&&A.on("submit",C=>{this.emit("answer",a,C,A),o(this.answers,a,C)});let I=A.emit.bind(A);return A.emit=(...C)=>(this.emit.call(this,...C),I(...C)),this.emit("prompt",A,this),r.autofill&&f!=null?(A.value=A.input=f,r.autofill==="show"&&await A.submit()):f=A.value=await A.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||Mxe()}static get prompts(){return Sas()}static get types(){return Bas()}static get prompt(){let t=(r,...n)=>{let a=new this(...n),o=a.emit.bind(a);return a.emit=(...l)=>(t.emit(...l),o(...l)),a.prompt(r)};return nue.mixinEmitter(t,new kQr),t}};nue.mixinEmitter(W4,new kQr);var DQr=W4.prompts;for(let e of Object.keys(DQr)){let t=e.toLowerCase(),r=n=>new DQr[e](n).run();W4.prompt[t]=r,W4[t]=r,W4[e]||Reflect.defineProperty(W4,e,{get:()=>DQr[e]})}var Fje=e=>{nue.defineExport(W4,e,()=>W4.types[e])};Fje("ArrayPrompt");Fje("AuthPrompt");Fje("BooleanPrompt");Fje("NumberPrompt");Fje("StringPrompt");Tas.exports=W4});var Pje=H(PR=>{"use strict";Object.defineProperty(PR,"__esModule",{value:!0});PR.Strategy=PR.WorkspaceModifier=PR.Modifier=PR.Target=void 0;PR.getModifier=tIl;PR.extractRangeModifier=Nas;PR.applyModifier=nIl;PR.toWorkspaceModifier=Das;PR.makeWorkspaceDescriptor=kas;PR.findProjectDescriptors=xas;PR.extractDescriptorFromPath=iIl;PR.getSuggestedDescriptors=oIl;PR.fetchDescriptorFrom=xQr;var $fl=(Pa(),vi(Va)),x_e=Sn(),gb=Sn(),zkt=ro(),Ras=$fl.__importDefault(UC()),eIl="workspace:",Vje;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})(Vje||(PR.Target=Vje={}));var sue;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(sue||(PR.Modifier=sue={}));var Lje;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(Lje||(PR.WorkspaceModifier=Lje={}));var iue;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(iue||(PR.Strategy=iue={}));function tIl(e,t){return e.exact?sue.EXACT:e.caret?sue.CARET:e.tilde?sue.TILDE:t.configuration.get("defaultSemverRangePrefix")}var rIl=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function Nas(e,{project:t}){let r=e.match(rIl);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function nIl(e,t){let{protocol:r,source:n,params:a,selector:o}=gb.structUtils.parseRange(e.range);return Ras.default.valid(o)&&(o=`${t}${e.range}`),gb.structUtils.makeDescriptor(e,gb.structUtils.makeRange({protocol:r,source:n,params:a,selector:o}))}function Das(e){switch(e){case sue.CARET:return Lje.CARET;case sue.TILDE:return Lje.TILDE;case sue.EXACT:return Lje.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function kas(e,t){return gb.structUtils.makeDescriptor(e.anchoredDescriptor,`${eIl}${Das(t)}`)}async function xas(e,{project:t,target:r}){let n=new Map,a=o=>{let l=n.get(o.descriptorHash);return l||n.set(o.descriptorHash,l={descriptor:o,locators:[]}),l};for(let o of t.workspaces)if(r===Vje.PEER){let l=o.manifest.peerDependencies.get(e.identHash);l!==void 0&&a(l).locators.push(o.anchoredLocator)}else{let l=o.manifest.dependencies.get(e.identHash),A=o.manifest.devDependencies.get(e.identHash);r===Vje.DEVELOPMENT?A!==void 0?a(A).locators.push(o.anchoredLocator):l!==void 0&&a(l).locators.push(o.anchoredLocator):l!==void 0?a(l).locators.push(o.anchoredLocator):A!==void 0&&a(A).locators.push(o.anchoredLocator)}return n}async function iIl(e,{cwd:t,workspace:r}){return await aIl(async n=>{zkt.ppath.isAbsolute(e)||(e=zkt.ppath.relative(r.cwd,zkt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await xQr(gb.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:n,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let l=new x_e.ThrowReport,A=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),I={checksums:a.storedChecksums,project:a,cache:n,fetcher:f,report:l,resolver:A},C=A.bindDescriptor(o,r.anchoredLocator,I),b=gb.structUtils.convertDescriptorToLocator(C),E=await f.fetch(b,I),N=await x_e.Manifest.find(E.prefixPath,{baseFs:E.packageFs});if(!N.name)throw new Error("Target path doesn't have a name");return gb.structUtils.makeDescriptor(N.name,e)})}function sIl(e){if(e.range==="unknown")return{type:"resolve",range:"latest"};if(gb.semverUtils.validRange(e.range))return{type:"fixed",range:e.range};if(x_e.TAG_REGEXP.test(e.range))return{type:"resolve",range:e.range};let t=e.range.match(/^(?:jsr:|npm:)(.*)/);if(!t)return{type:"fixed",range:e.range};let[,r]=t,n=`${gb.structUtils.stringifyIdent(e)}@`;return r.startsWith(n)&&(r=r.slice(n.length)),gb.semverUtils.validRange(r)?{type:"fixed",range:e.range}:x_e.TAG_REGEXP.test(r)?{type:"resolve",range:e.range}:{type:"fixed",range:e.range}}async function oIl(e,{project:t,workspace:r,cache:n,target:a,fixed:o,modifier:l,strategies:A,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let I=!o||e.range==="unknown"?sIl(e):{type:"fixed",range:e.range};if(I.type==="fixed")return{suggestions:[{descriptor:e,name:`Use ${gb.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let C=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,b=[],E=[],N=async B=>{try{await B()}catch(F){E.push(F)}};for(let B of A){if(b.length>=f)break;switch(B){case iue.KEEP:await N(async()=>{C&&b.push({descriptor:C,name:`Keep ${gb.structUtils.prettyDescriptor(t.configuration,C)}`,reason:"(no changes)"})});break;case iue.REUSE:await N(async()=>{for(let{descriptor:F,locators:Q}of(await xas(e,{project:t,target:a})).values()){if(Q.length===1&&Q[0].locatorHash===r.anchoredLocator.locatorHash&&A.includes(iue.KEEP))continue;let X=`(originally used by ${gb.structUtils.prettyLocator(t.configuration,Q[0])}`;X+=Q.length>1?` and ${Q.length-1} other${Q.length>2?"s":""})`:")",b.push({descriptor:F,name:`Reuse ${gb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:X})}});break;case iue.CACHE:await N(async()=>{for(let F of t.storedDescriptors.values())F.identHash===e.identHash&&b.push({descriptor:F,name:`Reuse ${gb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:"(already used somewhere in the lockfile)"})});break;case iue.PROJECT:await N(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let F=t.tryWorkspaceByIdent(e);if(F===null)return;let Q=kas(F,l);b.push({descriptor:Q,name:`Attach ${gb.structUtils.prettyDescriptor(t.configuration,Q)}`,reason:`(local workspace at ${gb.formatUtils.pretty(t.configuration,F.relativeCwd,gb.formatUtils.Type.PATH)})`})});break;case iue.LATEST:{let F=t.configuration.get("enableNetwork"),Q=t.configuration.get("enableOfflineMode");await N(async()=>{if(a===Vje.PEER)b.push({descriptor:gb.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!F&&!Q)b.push({descriptor:null,name:"Resolve from latest",reason:gb.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let X=await xQr(e,I.range,{project:t,cache:n,workspace:r,modifier:l});X&&b.push({descriptor:X,name:`Use ${gb.structUtils.prettyDescriptor(t.configuration,X)}`,reason:`(resolved from ${Q?"the cache":"latest"})`})}})}break}}return{suggestions:b.slice(0,f),rejections:E.slice(0,f)}}async function xQr(e,t,{project:r,cache:n,workspace:a,preserveModifier:o=!0,modifier:l}){let A=r.configuration.normalizeDependency(gb.structUtils.makeDescriptor(e,t)),f=new x_e.ThrowReport,I=r.configuration.makeFetcher(),C=r.configuration.makeResolver(),b={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},E={...b,resolver:C,fetchOptions:b},N=C.bindDescriptor(A,a.anchoredLocator,E),B=await C.getCandidates(N,{},E);if(B.length===0)return null;let F=B[0],{protocol:Q,source:X,params:ae,selector:ne}=gb.structUtils.parseRange(gb.structUtils.convertToManifestRange(F.reference));if(Q===r.configuration.get("defaultProtocol")&&(Q=null),Ras.default.valid(ne)){let ce=ne;if(typeof l<"u")ne=l+ne;else if(o!==!1){let de=typeof o=="string"?o:A.range;ne=Nas(de,{project:r})+ne}let fe=gb.structUtils.makeDescriptor(F,gb.structUtils.makeRange({protocol:Q,source:X,params:ae,selector:ne}));(await C.getCandidates(r.configuration.normalizeDependency(fe),{},E)).length!==1&&(ne=ce)}return gb.structUtils.makeDescriptor(F,gb.structUtils.makeRange({protocol:Q,source:X,params:ae,selector:ne}))}async function aIl(e){return await zkt.xfs.mktempPromise(async t=>{let r=x_e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new x_e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var Las=H(GQr=>{"use strict";Object.defineProperty(GQr,"__esModule",{value:!0});var Zas=(Pa(),vi(Va)),Gas=el(),xO=Sn(),Fas=Sn(),cL=Sn(),jv=($c(),vi(rg)),cIl=Zje(),lIl=Zas.__importStar((CZ(),vi(mZ))),qG=Zas.__importStar(Pje()),Wje=class extends Gas.BaseCommand{constructor(){super(...arguments),this.json=jv.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=jv.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=jv.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=jv.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=jv.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=jv.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=jv.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=jv.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=jv.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=jv.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=jv.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=jv.Option.String("--mode",{description:"Change what artifacts installs generate",validator:lIl.isEnum(Fas.InstallMode)}),this.silent=jv.Option.Boolean("--silent",{hidden:!0}),this.packages=jv.Option.Rest()}async execute(){let t=await xO.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Fas.Project.find(t,this.context.cwd),a=await xO.Cache.find(t);if(!n)throw new Gas.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l||t.get("preferReuse"),f=qG.getModifier(this,r),I=[A?qG.Strategy.REUSE:void 0,qG.Strategy.PROJECT,this.cached?qG.Strategy.CACHE:void 0,qG.Strategy.LATEST].filter(X=>typeof X<"u"),C=l?1/0:1,b=X=>{let ae=cL.structUtils.tryParseDescriptor(X.slice(4));return ae?ae.range==="unknown"?cL.structUtils.makeDescriptor(ae,`jsr:${cL.structUtils.stringifyIdent(ae)}@latest`):cL.structUtils.makeDescriptor(ae,`jsr:${ae.range}`):null},E=await Promise.all(this.packages.map(async X=>{let ae=X.match(/^\.{0,2}\//)?await qG.extractDescriptorFromPath(X,{cwd:this.context.cwd,workspace:n}):X.startsWith("jsr:")?b(X):cL.structUtils.tryParseDescriptor(X),ne=X.match(/^(https?:|git@github)/);if(ne)throw new jv.UsageError(`It seems you are trying to add a package using a ${xO.formatUtils.pretty(t,`${ne[0]}...`,xO.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. -Try running the command again with the package name prefixed: ${xO.formatUtils.pretty(t,"yarn add",xO.formatUtils.Type.CODE)} ${xO.formatUtils.pretty(t,cL.structUtils.makeDescriptor(cL.structUtils.makeIdent(null,"my-package"),`${ne[0]}...`),xO.formatUtils.Type.DESCRIPTOR)}`);if(!ae)throw new jv.UsageError(`The ${xO.formatUtils.pretty(t,X,xO.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ce=uIl(n,ae,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ce.map(async ue=>{let de=await qG.getSuggestedDescriptors(ae,{project:r,workspace:n,cache:a,fixed:o,target:ue,modifier:f,strategies:I,maxResults:C});return{request:ae,suggestedDescriptors:de,target:ue}}))})).then(X=>X.flat()),N=await xO.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async X=>{for(let{request:ae,suggestedDescriptors:{suggestions:ne,rejections:ce}}of E)if(ne.filter(ue=>ue.descriptor!==null).length===0){let[ue]=ce;if(typeof ue>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?X.reportError(xO.MessageName.CANT_SUGGEST_RESOLUTIONS,`${cL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range`):X.reportError(xO.MessageName.CANT_SUGGEST_RESOLUTIONS,`${cL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),X.reportSeparator(),X.reportExceptionOnce(ue)}});if(N.hasErrors())return N.exitCode();let B=!1,F=[],Q=[];for(let{suggestedDescriptors:{suggestions:X},target:ae}of E){let ne,ce=X.filter(be=>be.descriptor!==null),fe=ce[0].descriptor,ue=ce.every(be=>cL.structUtils.areDescriptorsEqual(be.descriptor,fe));ce.length===1||ue?ne=fe:(B=!0,{answer:ne}=await(0,cIl.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:X.map(({descriptor:be,name:Se,reason:De})=>be?{name:Se,hint:De,descriptor:be}:{name:Se,hint:De,disabled:!0}),onCancel:()=>process.exit(130),result(be){return this.find(be,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let de=n.manifest[ae].get(ne.identHash);(typeof de>"u"||de.descriptorHash!==ne.descriptorHash)&&(n.manifest[ae].set(ne.identHash,ne),this.optional&&(ae==="dependencies"?n.manifest.ensureDependencyMeta({...ne,range:"unknown"}).optional=!0:ae==="peerDependencies"&&(n.manifest.ensurePeerDependencyMeta({...ne,range:"unknown"}).optional=!0)),typeof de>"u"?F.push([n,ae,ne,I]):Q.push([n,ae,de,ne]))}return await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyAddition,F),await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyReplacement,Q),B&&this.context.stdout.write(` -`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};Wje.paths=[["add"]];Wje.usage=jv.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});GQr.default=Wje;function uIl(e,t,{dev:r,peer:n,preferDev:a,optional:o}){let l=e.manifest[qG.Target.REGULAR].has(t.identHash),A=e.manifest[qG.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[qG.Target.PEER].has(t.identHash);if((r||n)&&l)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!n&&f)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&A)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!n&&f)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let I=[];return n&&I.push(qG.Target.PEER),(r||a)&&I.push(qG.Target.DEVELOPMENT),o&&I.push(qG.Target.REGULAR),I.length>0?I:A?[qG.Target.DEVELOPMENT]:f?[qG.Target.PEER]:[qG.Target.REGULAR]}});var Vas=H(ZQr=>{"use strict";Object.defineProperty(ZQr,"__esModule",{value:!0});var gIl=el(),FQr=Sn(),Oje=Sn(),Mje=($c(),vi(rg)),Hje=class extends gIl.BaseCommand{constructor(){super(...arguments),this.verbose=Mje.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=Mje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=Mje.Option.String({required:!1})}async execute(){let t=await FQr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await FQr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let l=(await Oje.scriptUtils.getPackageAccessibleBinaries(n,{project:r})).get(this.name);if(!l)throw new Mje.UsageError(`Couldn't find a binary named "${this.name}" for package "${Oje.structUtils.prettyLocator(t,n)}"`);let[,A]=l;return this.context.stdout.write(`${A} -`),0}return(await FQr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await Oje.scriptUtils.getPackageAccessibleBinaries(n,{project:r}),f=Array.from(l.keys()).reduce((I,C)=>Math.max(I,C.length),0);for(let[I,[C,b]]of l)o.reportJson({name:I,source:Oje.structUtils.stringifyIdent(C),path:b});if(this.verbose)for(let[I,[C]]of l)o.reportInfo(null,`${I.padEnd(f," ")} ${Oje.structUtils.prettyLocator(t,C)}`);else for(let I of l.keys())o.reportInfo(null,I)})).exitCode()}};Hje.paths=[["bin"]];Hje.usage=Mje.Command.Usage({description:"get the path to a binary script",details:` +`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function MIl(e,t={}){if(Array.isArray(t.scale))return t.scale.map(n=>({...n}));let r=[];for(let n=1;n{xas.exports=bQr()});var Zas=H((Gtg,Fas)=>{"use strict";var HIl=$kt(),FQr=class extends HIl{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=n=>this.styles.primary.underline(n);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),n=await this.prefix(),a=await this.separator(),o=await this.message(),l=await this.format(),A=await this.error()||await this.hint(),f=await this.footer(),I=[n,o,a,l].join(" ");this.state.prompt=I,A&&!I.includes(A)&&(I+=" "+A),this.clear(t),this.write([r,I,f].filter(Boolean).join(` +`)),this.write(this.margin[2]),this.restore()}};Fas.exports=FQr});var Vas=H((Ftg,Las)=>{"use strict";var YIl=nue(),ZQr=class extends YIl{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let n=await super.toChoices(t,r);if(n.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>n.length)throw new Error("Please specify the index of the correct answer from the list of choices");return n}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};Las.exports=ZQr});var Was=H(LQr=>{"use strict";var Pas=zG(),VR=(e,t)=>{Pas.defineExport(LQr,e,t),Pas.defineExport(LQr,e.toLowerCase(),t)};VR("AutoComplete",()=>Xos());VR("BasicAuth",()=>$os());VR("Confirm",()=>ras());VR("Editable",()=>ias());VR("Form",()=>qkt());VR("Input",()=>bQr());VR("Invisible",()=>gas());VR("List",()=>das());VR("MultiSelect",()=>fas());VR("Numeral",()=>mas());VR("Password",()=>_as());VR("Scale",()=>Eas());VR("Select",()=>nue());VR("Snippet",()=>Tas());VR("Sort",()=>Nas());VR("Survey",()=>kas());VR("Text",()=>Gas());VR("Toggle",()=>Zas());VR("Quiz",()=>Vas())});var Mas=H((Ltg,Oas)=>{Oas.exports={ArrayPrompt:Zje(),AuthPrompt:IQr(),BooleanPrompt:$kt(),NumberPrompt:wQr(),StringPrompt:x_e()}});var Vje=H((Vtg,Yas)=>{"use strict";var Has=wt("assert"),PQr=wt("events"),iue=zG(),W4=class extends PQr{constructor(t,r){super(),this.options=iue.merge({},t),this.answers={...r}}register(t,r){if(iue.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}Has.equal(typeof r,"function","expected a function");let n=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[n]=r:this.prompts[n]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(iue.merge({},this.options,r))}catch(n){return Promise.reject(n)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=iue.merge({},this.options,t),{type:n,name:a}=t,{set:o,get:l}=iue;if(typeof n=="function"&&(n=await n.call(this,t,this.answers)),!n)return this.answers[a];n==="number"&&(n="numeral"),Has(this.prompts[n],`Prompt "${n}" is not registered`);let A=new this.prompts[n](r),f=l(this.answers,a);A.state.answers=this.answers,A.enquirer=this,a&&A.on("submit",C=>{this.emit("answer",a,C,A),o(this.answers,a,C)});let I=A.emit.bind(A);return A.emit=(...C)=>(this.emit.call(this,...C),I(...C)),this.emit("prompt",A,this),r.autofill&&f!=null?(A.value=A.input=f,r.autofill==="show"&&await A.submit()):f=A.value=await A.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||Yxe()}static get prompts(){return Was()}static get types(){return Mas()}static get prompt(){let t=(r,...n)=>{let a=new this(...n),o=a.emit.bind(a);return a.emit=(...l)=>(t.emit(...l),o(...l)),a.prompt(r)};return iue.mixinEmitter(t,new PQr),t}};iue.mixinEmitter(W4,new PQr);var VQr=W4.prompts;for(let e of Object.keys(VQr)){let t=e.toLowerCase(),r=n=>new VQr[e](n).run();W4.prompt[t]=r,W4[t]=r,W4[e]||Reflect.defineProperty(W4,e,{get:()=>VQr[e]})}var Lje=e=>{iue.defineExport(W4,e,()=>W4.types[e])};Lje("ArrayPrompt");Lje("AuthPrompt");Lje("BooleanPrompt");Lje("NumberPrompt");Lje("StringPrompt");Yas.exports=W4});var Oje=H(PR=>{"use strict";Object.defineProperty(PR,"__esModule",{value:!0});PR.Strategy=PR.WorkspaceModifier=PR.Modifier=PR.Target=void 0;PR.getModifier=JIl;PR.extractRangeModifier=Xas;PR.applyModifier=KIl;PR.toWorkspaceModifier=Jas;PR.makeWorkspaceDescriptor=Uas;PR.findProjectDescriptors=Kas;PR.extractDescriptorFromPath=jIl;PR.getSuggestedDescriptors=qIl;PR.fetchDescriptorFrom=WQr;var QIl=(Pa(),vi(Va)),G_e=yn(),gb=yn(),txt=zs(),Qas=QIl.__importDefault(UC()),XIl="workspace:",Wje;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})(Wje||(PR.Target=Wje={}));var oue;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(oue||(PR.Modifier=oue={}));var Pje;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(Pje||(PR.WorkspaceModifier=Pje={}));var sue;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(sue||(PR.Strategy=sue={}));function JIl(e,t){return e.exact?oue.EXACT:e.caret?oue.CARET:e.tilde?oue.TILDE:t.configuration.get("defaultSemverRangePrefix")}var UIl=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function Xas(e,{project:t}){let r=e.match(UIl);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function KIl(e,t){let{protocol:r,source:n,params:a,selector:o}=gb.structUtils.parseRange(e.range);return Qas.default.valid(o)&&(o=`${t}${e.range}`),gb.structUtils.makeDescriptor(e,gb.structUtils.makeRange({protocol:r,source:n,params:a,selector:o}))}function Jas(e){switch(e){case oue.CARET:return Pje.CARET;case oue.TILDE:return Pje.TILDE;case oue.EXACT:return Pje.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function Uas(e,t){return gb.structUtils.makeDescriptor(e.anchoredDescriptor,`${XIl}${Jas(t)}`)}async function Kas(e,{project:t,target:r}){let n=new Map,a=o=>{let l=n.get(o.descriptorHash);return l||n.set(o.descriptorHash,l={descriptor:o,locators:[]}),l};for(let o of t.workspaces)if(r===Wje.PEER){let l=o.manifest.peerDependencies.get(e.identHash);l!==void 0&&a(l).locators.push(o.anchoredLocator)}else{let l=o.manifest.dependencies.get(e.identHash),A=o.manifest.devDependencies.get(e.identHash);r===Wje.DEVELOPMENT?A!==void 0?a(A).locators.push(o.anchoredLocator):l!==void 0&&a(l).locators.push(o.anchoredLocator):l!==void 0?a(l).locators.push(o.anchoredLocator):A!==void 0&&a(A).locators.push(o.anchoredLocator)}return n}async function jIl(e,{cwd:t,workspace:r}){return await $Il(async n=>{txt.ppath.isAbsolute(e)||(e=txt.ppath.relative(r.cwd,txt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await WQr(gb.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:n,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let l=new G_e.ThrowReport,A=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),I={checksums:a.storedChecksums,project:a,cache:n,fetcher:f,report:l,resolver:A},C=A.bindDescriptor(o,r.anchoredLocator,I),b=gb.structUtils.convertDescriptorToLocator(C),E=await f.fetch(b,I),N=await G_e.Manifest.find(E.prefixPath,{baseFs:E.packageFs});if(!N.name)throw new Error("Target path doesn't have a name");return gb.structUtils.makeDescriptor(N.name,e)})}function zIl(e){if(e.range==="unknown")return{type:"resolve",range:"latest"};if(gb.semverUtils.validRange(e.range))return{type:"fixed",range:e.range};if(G_e.TAG_REGEXP.test(e.range))return{type:"resolve",range:e.range};let t=e.range.match(/^(?:jsr:|npm:)(.*)/);if(!t)return{type:"fixed",range:e.range};let[,r]=t,n=`${gb.structUtils.stringifyIdent(e)}@`;return r.startsWith(n)&&(r=r.slice(n.length)),gb.semverUtils.validRange(r)?{type:"fixed",range:e.range}:G_e.TAG_REGEXP.test(r)?{type:"resolve",range:e.range}:{type:"fixed",range:e.range}}async function qIl(e,{project:t,workspace:r,cache:n,target:a,fixed:o,modifier:l,strategies:A,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let I=!o||e.range==="unknown"?zIl(e):{type:"fixed",range:e.range};if(I.type==="fixed")return{suggestions:[{descriptor:e,name:`Use ${gb.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let C=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,b=[],E=[],N=async B=>{try{await B()}catch(F){E.push(F)}};for(let B of A){if(b.length>=f)break;switch(B){case sue.KEEP:await N(async()=>{C&&b.push({descriptor:C,name:`Keep ${gb.structUtils.prettyDescriptor(t.configuration,C)}`,reason:"(no changes)"})});break;case sue.REUSE:await N(async()=>{for(let{descriptor:F,locators:Q}of(await Kas(e,{project:t,target:a})).values()){if(Q.length===1&&Q[0].locatorHash===r.anchoredLocator.locatorHash&&A.includes(sue.KEEP))continue;let X=`(originally used by ${gb.structUtils.prettyLocator(t.configuration,Q[0])}`;X+=Q.length>1?` and ${Q.length-1} other${Q.length>2?"s":""})`:")",b.push({descriptor:F,name:`Reuse ${gb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:X})}});break;case sue.CACHE:await N(async()=>{for(let F of t.storedDescriptors.values())F.identHash===e.identHash&&b.push({descriptor:F,name:`Reuse ${gb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:"(already used somewhere in the lockfile)"})});break;case sue.PROJECT:await N(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let F=t.tryWorkspaceByIdent(e);if(F===null)return;let Q=Uas(F,l);b.push({descriptor:Q,name:`Attach ${gb.structUtils.prettyDescriptor(t.configuration,Q)}`,reason:`(local workspace at ${gb.formatUtils.pretty(t.configuration,F.relativeCwd,gb.formatUtils.Type.PATH)})`})});break;case sue.LATEST:{let F=t.configuration.get("enableNetwork"),Q=t.configuration.get("enableOfflineMode");await N(async()=>{if(a===Wje.PEER)b.push({descriptor:gb.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!F&&!Q)b.push({descriptor:null,name:"Resolve from latest",reason:gb.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let X=await WQr(e,I.range,{project:t,cache:n,workspace:r,modifier:l});X&&b.push({descriptor:X,name:`Use ${gb.structUtils.prettyDescriptor(t.configuration,X)}`,reason:`(resolved from ${Q?"the cache":"latest"})`})}})}break}}return{suggestions:b.slice(0,f),rejections:E.slice(0,f)}}async function WQr(e,t,{project:r,cache:n,workspace:a,preserveModifier:o=!0,modifier:l}){let A=r.configuration.normalizeDependency(gb.structUtils.makeDescriptor(e,t)),f=new G_e.ThrowReport,I=r.configuration.makeFetcher(),C=r.configuration.makeResolver(),b={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},E={...b,resolver:C,fetchOptions:b},N=C.bindDescriptor(A,a.anchoredLocator,E),B=await C.getCandidates(N,{},E);if(B.length===0)return null;let F=B[0],{protocol:Q,source:X,params:ae,selector:ne}=gb.structUtils.parseRange(gb.structUtils.convertToManifestRange(F.reference));if(Q===r.configuration.get("defaultProtocol")&&(Q=null),Qas.default.valid(ne)){let ce=ne;if(typeof l<"u")ne=l+ne;else if(o!==!1){let de=typeof o=="string"?o:A.range;ne=Xas(de,{project:r})+ne}let fe=gb.structUtils.makeDescriptor(F,gb.structUtils.makeRange({protocol:Q,source:X,params:ae,selector:ne}));(await C.getCandidates(r.configuration.normalizeDependency(fe),{},E)).length!==1&&(ne=ce)}return gb.structUtils.makeDescriptor(F,gb.structUtils.makeRange({protocol:Q,source:X,params:ae,selector:ne}))}async function $Il(e){return await txt.xfs.mktempPromise(async t=>{let r=G_e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new G_e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var $as=H(OQr=>{"use strict";Object.defineProperty(OQr,"__esModule",{value:!0});var qas=(Pa(),vi(Va)),jas=el(),xO=yn(),zas=yn(),cL=yn(),jv=($c(),vi(rg)),ehl=Vje(),thl=qas.__importStar((CZ(),vi(mZ))),qG=qas.__importStar(Oje()),Mje=class extends jas.BaseCommand{constructor(){super(...arguments),this.json=jv.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=jv.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=jv.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=jv.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=jv.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=jv.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=jv.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=jv.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=jv.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=jv.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=jv.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=jv.Option.String("--mode",{description:"Change what artifacts installs generate",validator:thl.isEnum(zas.InstallMode)}),this.silent=jv.Option.Boolean("--silent",{hidden:!0}),this.packages=jv.Option.Rest()}async execute(){let t=await xO.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await zas.Project.find(t,this.context.cwd),a=await xO.Cache.find(t);if(!n)throw new jas.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l||t.get("preferReuse"),f=qG.getModifier(this,r),I=[A?qG.Strategy.REUSE:void 0,qG.Strategy.PROJECT,this.cached?qG.Strategy.CACHE:void 0,qG.Strategy.LATEST].filter(X=>typeof X<"u"),C=l?1/0:1,b=X=>{let ae=cL.structUtils.tryParseDescriptor(X.slice(4));return ae?ae.range==="unknown"?cL.structUtils.makeDescriptor(ae,`jsr:${cL.structUtils.stringifyIdent(ae)}@latest`):cL.structUtils.makeDescriptor(ae,`jsr:${ae.range}`):null},E=await Promise.all(this.packages.map(async X=>{let ae=X.match(/^\.{0,2}\//)?await qG.extractDescriptorFromPath(X,{cwd:this.context.cwd,workspace:n}):X.startsWith("jsr:")?b(X):cL.structUtils.tryParseDescriptor(X),ne=X.match(/^(https?:|git@github)/);if(ne)throw new jv.UsageError(`It seems you are trying to add a package using a ${xO.formatUtils.pretty(t,`${ne[0]}...`,xO.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. +Try running the command again with the package name prefixed: ${xO.formatUtils.pretty(t,"yarn add",xO.formatUtils.Type.CODE)} ${xO.formatUtils.pretty(t,cL.structUtils.makeDescriptor(cL.structUtils.makeIdent(null,"my-package"),`${ne[0]}...`),xO.formatUtils.Type.DESCRIPTOR)}`);if(!ae)throw new jv.UsageError(`The ${xO.formatUtils.pretty(t,X,xO.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ce=rhl(n,ae,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ce.map(async ue=>{let de=await qG.getSuggestedDescriptors(ae,{project:r,workspace:n,cache:a,fixed:o,target:ue,modifier:f,strategies:I,maxResults:C});return{request:ae,suggestedDescriptors:de,target:ue}}))})).then(X=>X.flat()),N=await xO.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async X=>{for(let{request:ae,suggestedDescriptors:{suggestions:ne,rejections:ce}}of E)if(ne.filter(ue=>ue.descriptor!==null).length===0){let[ue]=ce;if(typeof ue>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?X.reportError(xO.MessageName.CANT_SUGGEST_RESOLUTIONS,`${cL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range`):X.reportError(xO.MessageName.CANT_SUGGEST_RESOLUTIONS,`${cL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),X.reportSeparator(),X.reportExceptionOnce(ue)}});if(N.hasErrors())return N.exitCode();let B=!1,F=[],Q=[];for(let{suggestedDescriptors:{suggestions:X},target:ae}of E){let ne,ce=X.filter(be=>be.descriptor!==null),fe=ce[0].descriptor,ue=ce.every(be=>cL.structUtils.areDescriptorsEqual(be.descriptor,fe));ce.length===1||ue?ne=fe:(B=!0,{answer:ne}=await(0,ehl.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:X.map(({descriptor:be,name:Se,reason:De})=>be?{name:Se,hint:De,descriptor:be}:{name:Se,hint:De,disabled:!0}),onCancel:()=>process.exit(130),result(be){return this.find(be,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let de=n.manifest[ae].get(ne.identHash);(typeof de>"u"||de.descriptorHash!==ne.descriptorHash)&&(n.manifest[ae].set(ne.identHash,ne),this.optional&&(ae==="dependencies"?n.manifest.ensureDependencyMeta({...ne,range:"unknown"}).optional=!0:ae==="peerDependencies"&&(n.manifest.ensurePeerDependencyMeta({...ne,range:"unknown"}).optional=!0)),typeof de>"u"?F.push([n,ae,ne,I]):Q.push([n,ae,de,ne]))}return await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyAddition,F),await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyReplacement,Q),B&&this.context.stdout.write(` +`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};Mje.paths=[["add"]];Mje.usage=jv.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});OQr.default=Mje;function rhl(e,t,{dev:r,peer:n,preferDev:a,optional:o}){let l=e.manifest[qG.Target.REGULAR].has(t.identHash),A=e.manifest[qG.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[qG.Target.PEER].has(t.identHash);if((r||n)&&l)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!n&&f)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&A)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!n&&f)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let I=[];return n&&I.push(qG.Target.PEER),(r||a)&&I.push(qG.Target.DEVELOPMENT),o&&I.push(qG.Target.REGULAR),I.length>0?I:A?[qG.Target.DEVELOPMENT]:f?[qG.Target.PEER]:[qG.Target.REGULAR]}});var ecs=H(HQr=>{"use strict";Object.defineProperty(HQr,"__esModule",{value:!0});var nhl=el(),MQr=yn(),Hje=yn(),Yje=($c(),vi(rg)),Qje=class extends nhl.BaseCommand{constructor(){super(...arguments),this.verbose=Yje.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=Yje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=Yje.Option.String({required:!1})}async execute(){let t=await MQr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await MQr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let l=(await Hje.scriptUtils.getPackageAccessibleBinaries(n,{project:r})).get(this.name);if(!l)throw new Yje.UsageError(`Couldn't find a binary named "${this.name}" for package "${Hje.structUtils.prettyLocator(t,n)}"`);let[,A]=l;return this.context.stdout.write(`${A} +`),0}return(await MQr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await Hje.scriptUtils.getPackageAccessibleBinaries(n,{project:r}),f=Array.from(l.keys()).reduce((I,C)=>Math.max(I,C.length),0);for(let[I,[C,b]]of l)o.reportJson({name:I,source:Hje.structUtils.stringifyIdent(C),path:b});if(this.verbose)for(let[I,[C]]of l)o.reportInfo(null,`${I.padEnd(f," ")} ${Hje.structUtils.prettyLocator(t,C)}`);else for(let I of l.keys())o.reportInfo(null,I)})).exitCode()}};Qje.paths=[["bin"]];Qje.usage=Yje.Command.Usage({description:"get the path to a binary script",details:` When used without arguments, this command will print the list of all the binaries available in the current workspace. Adding the \`-v,--verbose\` flag will cause the output to contain both the binary name and the locator of the package that provides the binary. When an argument is specified, this command will just print the path to the binary on the standard output and exit. Note that the reported path may be stored within a zip archive. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});ZQr.default=Hje});var Was=H(VQr=>{"use strict";Object.defineProperty(VQr,"__esModule",{value:!0});var AIl=el(),LQr=Sn(),Pas=ro(),qkt=($c(),vi(rg)),Yje=class extends AIl.BaseCommand{constructor(){super(...arguments),this.mirror=qkt.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=qkt.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await LQr.Configuration.find(this.context.cwd,this.context.plugins);if(!t.get("enableCacheClean"))throw new qkt.UsageError("Cache cleaning is currently disabled. To enable it, set `enableCacheClean: true` in your configuration file. Note: Cache cleaning is typically not required and should be avoided when using Zero-Installs.");let r=await LQr.Cache.find(t);return(await LQr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await Pas.xfs.removePromise(r.mirrorCwd),await t.triggerHook(l=>l.cleanGlobalArtifacts,t)),o&&await Pas.xfs.removePromise(r.cwd)})).exitCode()}};Yje.paths=[["cache","clean"],["cache","clear"]];Yje.usage=qkt.Command.Usage({description:"remove the shared cache files",details:` + `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});HQr.default=Qje});var rcs=H(QQr=>{"use strict";Object.defineProperty(QQr,"__esModule",{value:!0});var ihl=el(),YQr=yn(),tcs=zs(),rxt=($c(),vi(rg)),Xje=class extends ihl.BaseCommand{constructor(){super(...arguments),this.mirror=rxt.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=rxt.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await YQr.Configuration.find(this.context.cwd,this.context.plugins);if(!t.get("enableCacheClean"))throw new rxt.UsageError("Cache cleaning is currently disabled. To enable it, set `enableCacheClean: true` in your configuration file. Note: Cache cleaning is typically not required and should be avoided when using Zero-Installs.");let r=await YQr.Cache.find(t);return(await YQr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await tcs.xfs.removePromise(r.mirrorCwd),await t.triggerHook(l=>l.cleanGlobalArtifacts,t)),o&&await tcs.xfs.removePromise(r.cwd)})).exitCode()}};Xje.paths=[["cache","clean"],["cache","clear"]];Xje.usage=rxt.Command.Usage({description:"remove the shared cache files",details:` This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});VQr.default=Yje});var Mas=H(WQr=>{"use strict";Object.defineProperty(WQr,"__esModule",{value:!0});var dIl=el(),PQr=Sn(),Yxe=($c(),vi(rg)),pIl=kW(),Oas=wt("util"),Qje=class extends dIl.BaseCommand{constructor(){super(...arguments),this.why=Yxe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=Yxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=Yxe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=Yxe.Option.String()}async execute(){let t=await PQr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new Yxe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),l=PQr.miscUtils.convertMapsToIndexableObjects(o),A=n?(0,pIl.get)(l,n):l,f=await PQr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async I=>{I.reportJson(A)});if(!this.json){if(typeof A=="string")return this.context.stdout.write(`${A} -`),f.exitCode();Oas.inspect.styles.name="cyan",this.context.stdout.write(`${(0,Oas.inspect)(A,{depth:1/0,colors:t.get("enableColors"),compact:!1})} -`)}return f.exitCode()}};Qje.paths=[["config","get"]];Qje.usage=Yxe.Command.Usage({description:"read a configuration settings",details:` + `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});QQr.default=Xje});var ics=H(JQr=>{"use strict";Object.defineProperty(JQr,"__esModule",{value:!0});var shl=el(),XQr=yn(),Xxe=($c(),vi(rg)),ohl=kW(),ncs=wt("util"),Jje=class extends shl.BaseCommand{constructor(){super(...arguments),this.why=Xxe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=Xxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=Xxe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=Xxe.Option.String()}async execute(){let t=await XQr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new Xxe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),l=XQr.miscUtils.convertMapsToIndexableObjects(o),A=n?(0,ohl.get)(l,n):l,f=await XQr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async I=>{I.reportJson(A)});if(!this.json){if(typeof A=="string")return this.context.stdout.write(`${A} +`),f.exitCode();ncs.inspect.styles.name="cyan",this.context.stdout.write(`${(0,ncs.inspect)(A,{depth:1/0,colors:t.get("enableColors"),compact:!1})} +`)}return f.exitCode()}};Jje.paths=[["config","get"]];Jje.usage=Xxe.Command.Usage({description:"read a configuration settings",details:` This command will print a configuration setting. Secrets (such as tokens) will be redacted from the output by default. If this behavior isn't desired, set the \`--no-redacted\` to get the untransformed value. - `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});WQr.default=Qje});var Yas=H(MQr=>{"use strict";Object.defineProperty(MQr,"__esModule",{value:!0});var fIl=el(),G_e=Sn(),oue=($c(),vi(rg)),OQr=kW(),Has=wt("util"),Xje=class extends fIl.BaseCommand{constructor(){super(...arguments),this.json=oue.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=oue.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=oue.Option.String(),this.value=oue.Option.String()}async execute(){let t=await G_e.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new oue.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new oue.UsageError(`Couldn't find a configuration settings named "${n}"`);if(n==="enableStrictSettings")throw new oue.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let l=this.json?JSON.parse(this.value):this.value;await(this.home?N=>G_e.Configuration.updateHomeConfiguration(N):N=>G_e.Configuration.updateConfiguration(r(),N))(N=>{if(a){let B=(0,OQr.cloneDeep)(N);return(0,OQr.set)(B,this.name,l),B}else return{...N,[n]:l}});let I=(await G_e.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(n,{hideSecrets:!0,getNativePaths:!0}),C=G_e.miscUtils.convertMapsToIndexableObjects(I),b=a?(0,OQr.get)(C,a):C;return(await G_e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async N=>{Has.inspect.styles.name="cyan",N.reportInfo(G_e.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,Has.inspect)(b,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};Xje.paths=[["config","set"]];Xje.usage=oue.Command.Usage({description:"change a configuration settings",details:` + `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});JQr.default=Jje});var ocs=H(KQr=>{"use strict";Object.defineProperty(KQr,"__esModule",{value:!0});var ahl=el(),F_e=yn(),aue=($c(),vi(rg)),UQr=kW(),scs=wt("util"),Uje=class extends ahl.BaseCommand{constructor(){super(...arguments),this.json=aue.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=aue.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=aue.Option.String(),this.value=aue.Option.String()}async execute(){let t=await F_e.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new aue.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new aue.UsageError(`Couldn't find a configuration settings named "${n}"`);if(n==="enableStrictSettings")throw new aue.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let l=this.json?JSON.parse(this.value):this.value;await(this.home?N=>F_e.Configuration.updateHomeConfiguration(N):N=>F_e.Configuration.updateConfiguration(r(),N))(N=>{if(a){let B=(0,UQr.cloneDeep)(N);return(0,UQr.set)(B,this.name,l),B}else return{...N,[n]:l}});let I=(await F_e.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(n,{hideSecrets:!0,getNativePaths:!0}),C=F_e.miscUtils.convertMapsToIndexableObjects(I),b=a?(0,UQr.get)(C,a):C;return(await F_e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async N=>{scs.inspect.styles.name="cyan",N.reportInfo(F_e.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,scs.inspect)(b,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};Uje.paths=[["config","set"]];Uje.usage=aue.Command.Usage({description:"change a configuration settings",details:` This command will set a configuration setting. When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});MQr.default=Xje});var Qas=H(YQr=>{"use strict";Object.defineProperty(YQr,"__esModule",{value:!0});var IIl=el(),Qxe=Sn(),Jje=($c(),vi(rg)),HQr=kW(),Uje=class extends IIl.BaseCommand{constructor(){super(...arguments),this.home=Jje.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=Jje.Option.String()}async execute(){let t=await Qxe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new Jje.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new Jje.UsageError(`Couldn't find a configuration settings named "${n}"`);let l=this.home?f=>Qxe.Configuration.updateHomeConfiguration(f):f=>Qxe.Configuration.updateConfiguration(r(),f);return(await Qxe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let I=!1;await l(C=>{if(!(0,HQr.has)(C,this.name))return f.reportWarning(Qxe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),I=!0,C;let b=a?(0,HQr.cloneDeep)(C):{...C};return(0,HQr.unset)(b,this.name),b}),I||f.reportInfo(Qxe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};Uje.paths=[["config","unset"]];Uje.usage=Jje.Command.Usage({description:"unset a configuration setting",details:` + `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});KQr.default=Uje});var acs=H(zQr=>{"use strict";Object.defineProperty(zQr,"__esModule",{value:!0});var chl=el(),Jxe=yn(),Kje=($c(),vi(rg)),jQr=kW(),jje=class extends chl.BaseCommand{constructor(){super(...arguments),this.home=Kje.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=Kje.Option.String()}async execute(){let t=await Jxe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new Kje.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new Kje.UsageError(`Couldn't find a configuration settings named "${n}"`);let l=this.home?f=>Jxe.Configuration.updateHomeConfiguration(f):f=>Jxe.Configuration.updateConfiguration(r(),f);return(await Jxe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let I=!1;await l(C=>{if(!(0,jQr.has)(C,this.name))return f.reportWarning(Jxe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),I=!0,C;let b=a?(0,jQr.cloneDeep)(C):{...C};return(0,jQr.unset)(b,this.name),b}),I||f.reportInfo(Jxe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};jje.paths=[["config","unset"]];jje.usage=Kje.Command.Usage({description:"unset a configuration setting",details:` This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});YQr.default=Uje});var Xas=H(XQr=>{"use strict";Object.defineProperty(XQr,"__esModule",{value:!0});var hIl=el(),ax=Sn(),mIl=ro(),Xxe=($c(),vi(rg)),QQr=wt("util"),Kje=class extends hIl.BaseCommand{constructor(){super(...arguments),this.noDefaults=Xxe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=Xxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=Xxe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=Xxe.Option.Boolean("--why",{hidden:!0}),this.names=Xxe.Option.Rest()}async execute(){let t=await ax.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,ax.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let n=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await ax.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async l=>{if(t.invalid.size>0&&!this.json){for(let[A,f]of t.invalid)l.reportError(ax.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${A}" in ${f}`);l.reportSeparator()}if(this.json)for(let A of n){if(this.noDefaults&&!t.sources.has(A))continue;let f=t.settings.get(A);typeof f>"u"&&l.reportError(ax.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${A}"`);let I=t.getSpecial(A,{hideSecrets:!0,getNativePaths:!0}),C=t.sources.get(A)??"",b=C&&C[0]!=="<"?mIl.npath.fromPortablePath(C):C;l.reportJson({key:A,effective:I,source:b,...f})}else{let A={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},I={children:f};for(let C of n){if(this.noDefaults&&!t.sources.has(C))continue;let b=t.settings.get(C),E=t.sources.get(C)??"",N=t.getSpecial(C,{hideSecrets:!0,getNativePaths:!0}),B={Description:{label:"Description",value:ax.formatUtils.tuple(ax.formatUtils.Type.MARKDOWN,{text:b.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:ax.formatUtils.tuple(E[0]==="<"?ax.formatUtils.Type.CODE:ax.formatUtils.Type.PATH,E)}};f[C]={value:ax.formatUtils.tuple(ax.formatUtils.Type.CODE,C),children:B};let F=(Q,X)=>{for(let[ae,ne]of X)if(ne instanceof Map){let ce={};Q[ae]={children:ce},F(ce,ne)}else Q[ae]={label:ae,value:ax.formatUtils.tuple(ax.formatUtils.Type.NO_HINT,(0,QQr.inspect)(ne,A))}};N instanceof Map?F(B,N):B.Value={label:"Value",value:ax.formatUtils.tuple(ax.formatUtils.Type.NO_HINT,(0,QQr.inspect)(N,A))}}n.length!==1&&(a=void 0),ax.treeUtils.emitTree(I,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let l=n[0],A=(0,QQr.inspect)(t.getSpecial(l,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` + `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});zQr.default=jje});var ccs=H($Qr=>{"use strict";Object.defineProperty($Qr,"__esModule",{value:!0});var lhl=el(),ax=yn(),uhl=zs(),Uxe=($c(),vi(rg)),qQr=wt("util"),zje=class extends lhl.BaseCommand{constructor(){super(...arguments),this.noDefaults=Uxe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=Uxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=Uxe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=Uxe.Option.Boolean("--why",{hidden:!0}),this.names=Uxe.Option.Rest()}async execute(){let t=await ax.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,ax.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let n=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await ax.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async l=>{if(t.invalid.size>0&&!this.json){for(let[A,f]of t.invalid)l.reportError(ax.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${A}" in ${f}`);l.reportSeparator()}if(this.json)for(let A of n){if(this.noDefaults&&!t.sources.has(A))continue;let f=t.settings.get(A);typeof f>"u"&&l.reportError(ax.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${A}"`);let I=t.getSpecial(A,{hideSecrets:!0,getNativePaths:!0}),C=t.sources.get(A)??"",b=C&&C[0]!=="<"?uhl.npath.fromPortablePath(C):C;l.reportJson({key:A,effective:I,source:b,...f})}else{let A={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},I={children:f};for(let C of n){if(this.noDefaults&&!t.sources.has(C))continue;let b=t.settings.get(C),E=t.sources.get(C)??"",N=t.getSpecial(C,{hideSecrets:!0,getNativePaths:!0}),B={Description:{label:"Description",value:ax.formatUtils.tuple(ax.formatUtils.Type.MARKDOWN,{text:b.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:ax.formatUtils.tuple(E[0]==="<"?ax.formatUtils.Type.CODE:ax.formatUtils.Type.PATH,E)}};f[C]={value:ax.formatUtils.tuple(ax.formatUtils.Type.CODE,C),children:B};let F=(Q,X)=>{for(let[ae,ne]of X)if(ne instanceof Map){let ce={};Q[ae]={children:ce},F(ce,ne)}else Q[ae]={label:ae,value:ax.formatUtils.tuple(ax.formatUtils.Type.NO_HINT,(0,qQr.inspect)(ne,A))}};N instanceof Map?F(B,N):B.Value={label:"Value",value:ax.formatUtils.tuple(ax.formatUtils.Type.NO_HINT,(0,qQr.inspect)(N,A))}}n.length!==1&&(a=void 0),ax.treeUtils.emitTree(I,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let l=n[0],A=(0,qQr.inspect)(t.getSpecial(l,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` `),this.context.stdout.write(`${A} -`)}return o.exitCode()}};Kje.paths=[["config"]];Kje.usage=Xxe.Command.Usage({description:"display the current configuration",details:` +`)}return o.exitCode()}};zje.paths=[["config"]];zje.usage=Uxe.Command.Usage({description:"display the current configuration",details:` This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});XQr.default=Kje});var UQr=H(Z_e=>{"use strict";Object.defineProperty(Z_e,"__esModule",{value:!0});Z_e.acceptedStrategies=Z_e.Strategy=void 0;Z_e.dedupe=bIl;var CIl=(Pa(),vi(Va)),F_e=Sn(),EH=Sn(),_Il=CIl.__importDefault(Ek()),JQr;(function(e){e.HIGHEST="highest"})(JQr||(Z_e.Strategy=JQr={}));Z_e.acceptedStrategies=new Set(Object.values(JQr));var yIl={highest:async(e,t,{resolver:r,fetcher:n,resolveOptions:a,fetchOptions:o})=>{let l=new Map;for(let[f,I]of e.storedResolutions){let C=e.storedDescriptors.get(f);if(typeof C>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);F_e.miscUtils.getSetWithDefault(l,C.identHash).add(I)}let A=new Map(F_e.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>EH.structUtils.isVirtualDescriptor(f)?F_e.miscUtils.mapAndFilter.skip:[f.descriptorHash,F_e.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let I=A.get(f.descriptorHash);if(typeof I>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let C=e.storedResolutions.get(f.descriptorHash);if(typeof C>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let b=e.originalPackages.get(C);if(typeof b>"u")throw new Error(`Assertion failed: The package (${C}) should have been registered`);Promise.resolve().then(async()=>{let E=r.getResolutionDependencies(f,a),N=Object.fromEntries(await F_e.miscUtils.allSettledSafe(Object.entries(E).map(async([ne,ce])=>{let fe=A.get(ce.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ce.descriptorHash}) should have been registered`);let ue=await fe.promise;if(!ue)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ne,ue.updatedPackage]})));if(t.length&&!_Il.default.isMatch(EH.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(b,a))return b;let B=l.get(f.identHash);if(typeof B>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(B.size===1)return b;let F=[...B].map(ne=>{let ce=e.originalPackages.get(ne);if(typeof ce>"u")throw new Error(`Assertion failed: The package (${ne}) should have been registered`);return ce}),Q=await r.getSatisfying(f,N,F,a),X=Q.locators?.[0];if(typeof X>"u"||!Q.sorted)return b;let ae=e.originalPackages.get(X.locatorHash);if(typeof ae>"u")throw new Error(`Assertion failed: The package (${X.locatorHash}) should have been registered`);return ae}).then(async E=>{let N=await e.preparePackage(E,{resolver:r,resolveOptions:a});I.resolve({descriptor:f,currentPackage:b,updatedPackage:E,resolvedPackage:N})}).catch(E=>{I.reject(E)})}return[...A.values()].map(f=>f.promise)}};async function bIl(e,{strategy:t,patterns:r,cache:n,report:a}){let{configuration:o}=e,l=new F_e.ThrowReport,A=o.makeResolver(),f=o.makeFetcher(),I={cache:n,checksums:e.storedChecksums,fetcher:f,project:e,report:l,cacheOptions:{skipIntegrityCheck:!0}},C={project:e,resolver:A,report:l,fetchOptions:I};return await a.startTimerPromise("Deduplication step",async()=>{let b=yIl[t],E=await b(e,r,{resolver:A,resolveOptions:C,fetcher:f,fetchOptions:I}),N=F_e.Report.progressViaCounter(E.length);await a.reportProgress(N);let B=0;await Promise.all(E.map(X=>X.then(ae=>{if(ae===null||ae.currentPackage.locatorHash===ae.updatedPackage.locatorHash)return;B++;let{descriptor:ne,currentPackage:ce,updatedPackage:fe}=ae;a.reportInfo(EH.MessageName.UNNAMED,`${EH.structUtils.prettyDescriptor(o,ne)} can be deduped from ${EH.structUtils.prettyLocator(o,ce)} to ${EH.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:EH.structUtils.stringifyDescriptor(ne),currentResolution:EH.structUtils.stringifyLocator(ce),updatedResolution:EH.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ne.descriptorHash,fe.locatorHash)}).finally(()=>N.tick())));let F;switch(B){case 0:F="No packages";break;case 1:F="One package";break;default:F=`${B} packages`}let Q=EH.formatUtils.pretty(o,t,EH.formatUtils.Type.CODE);return a.reportInfo(EH.MessageName.UNNAMED,`${F} can be deduped using the ${Q} strategy`),B})}});var Kas=H(jQr=>{"use strict";Object.defineProperty(jQr,"__esModule",{value:!0});var Uas=(Pa(),vi(Va)),EIl=el(),jje=Sn(),Jxe=($c(),vi(rg)),Jas=Uas.__importStar((CZ(),vi(mZ))),KQr=Uas.__importStar(UQr()),zje=class extends EIl.BaseCommand{constructor(){super(...arguments),this.strategy=Jxe.Option.String("-s,--strategy",KQr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:Jas.isEnum(KQr.Strategy)}),this.check=Jxe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=Jxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=Jxe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Jas.isEnum(jje.InstallMode)}),this.patterns=Jxe.Option.Rest()}async execute(){let t=await jje.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await jje.Project.find(t,this.context.cwd),n=await jje.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await jje.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async l=>{a=await KQr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:n,report:l})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n,mode:this.mode})}};zje.paths=[["dedupe"]];zje.usage=Jxe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});jQr.default=zje});var jas=H(zQr=>{"use strict";Object.defineProperty(zQr,"__esModule",{value:!0});var SIl=el(),vIl=Sn(),BIl=($c(),vi(rg)),$kt=class extends SIl.BaseCommand{async execute(){let{plugins:t}=await vIl.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let l of t){let{commands:A}=l[1];if(A){let I=BIl.Cli.from(A).definitions();r.push([l[0],I])}}let n=this.cli.definitions(),a=(l,A)=>l.split(" ").slice(1).join()===A.split(" ").slice(1).join(),o=$dr()["@yarnpkg/builder"].bundles.standard;for(let l of r){let A=l[1];for(let f of A)n.find(I=>a(I.path,f.path)).plugin={name:l[0],isDefault:o.includes(l[0])}}this.context.stdout.write(`${JSON.stringify(n,null,2)} -`)}};$kt.paths=[["--clipanion=definitions"]];zQr.default=$kt});var zas=H(qQr=>{"use strict";Object.defineProperty(qQr,"__esModule",{value:!0});var wIl=el(),ext=class extends wIl.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};ext.paths=[["help"],["--help"],["-h"]];qQr.default=ext});var ecs=H(eXr=>{"use strict";Object.defineProperty(eXr,"__esModule",{value:!0});var TIl=el(),RIl=Sn(),qas=ro(),$as=($c(),vi(rg)),$Qr=class extends TIl.BaseCommand{constructor(){super(...arguments),this.leadingArgument=$as.Option.String(),this.args=$as.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!RIl.structUtils.tryParseIdent(this.leadingArgument)){let t=qas.ppath.resolve(this.context.cwd,qas.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};eXr.default=$Qr});var tcs=H(tXr=>{"use strict";Object.defineProperty(tXr,"__esModule",{value:!0});var NIl=el(),DIl=Sn(),txt=class extends NIl.BaseCommand{async execute(){this.context.stdout.write(`${DIl.YarnVersion||""} -`)}};txt.paths=[["-v"],["--version"]];tXr.default=txt});var ncs=H(nXr=>{"use strict";Object.defineProperty(nXr,"__esModule",{value:!0});var kIl=el(),rcs=Sn(),xIl=Sn(),rXr=($c(),vi(rg)),qje=class extends kIl.BaseCommand{constructor(){super(...arguments),this.commandName=rXr.Option.String(),this.args=rXr.Option.Proxy()}async execute(){let t=await rcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await rcs.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await xIl.scriptUtils.executePackageShellcode(n,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};qje.paths=[["exec"]];qje.usage=rXr.Command.Usage({description:"execute a shell script",details:` + `,examples:[["Print the active configuration settings","$0 config"]]});$Qr.default=zje});var tXr=H(L_e=>{"use strict";Object.defineProperty(L_e,"__esModule",{value:!0});L_e.acceptedStrategies=L_e.Strategy=void 0;L_e.dedupe=phl;var ghl=(Pa(),vi(Va)),Z_e=yn(),EH=yn(),Ahl=ghl.__importDefault(Ek()),eXr;(function(e){e.HIGHEST="highest"})(eXr||(L_e.Strategy=eXr={}));L_e.acceptedStrategies=new Set(Object.values(eXr));var dhl={highest:async(e,t,{resolver:r,fetcher:n,resolveOptions:a,fetchOptions:o})=>{let l=new Map;for(let[f,I]of e.storedResolutions){let C=e.storedDescriptors.get(f);if(typeof C>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);Z_e.miscUtils.getSetWithDefault(l,C.identHash).add(I)}let A=new Map(Z_e.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>EH.structUtils.isVirtualDescriptor(f)?Z_e.miscUtils.mapAndFilter.skip:[f.descriptorHash,Z_e.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let I=A.get(f.descriptorHash);if(typeof I>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let C=e.storedResolutions.get(f.descriptorHash);if(typeof C>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let b=e.originalPackages.get(C);if(typeof b>"u")throw new Error(`Assertion failed: The package (${C}) should have been registered`);Promise.resolve().then(async()=>{let E=r.getResolutionDependencies(f,a),N=Object.fromEntries(await Z_e.miscUtils.allSettledSafe(Object.entries(E).map(async([ne,ce])=>{let fe=A.get(ce.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ce.descriptorHash}) should have been registered`);let ue=await fe.promise;if(!ue)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ne,ue.updatedPackage]})));if(t.length&&!Ahl.default.isMatch(EH.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(b,a))return b;let B=l.get(f.identHash);if(typeof B>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(B.size===1)return b;let F=[...B].map(ne=>{let ce=e.originalPackages.get(ne);if(typeof ce>"u")throw new Error(`Assertion failed: The package (${ne}) should have been registered`);return ce}),Q=await r.getSatisfying(f,N,F,a),X=Q.locators?.[0];if(typeof X>"u"||!Q.sorted)return b;let ae=e.originalPackages.get(X.locatorHash);if(typeof ae>"u")throw new Error(`Assertion failed: The package (${X.locatorHash}) should have been registered`);return ae}).then(async E=>{let N=await e.preparePackage(E,{resolver:r,resolveOptions:a});I.resolve({descriptor:f,currentPackage:b,updatedPackage:E,resolvedPackage:N})}).catch(E=>{I.reject(E)})}return[...A.values()].map(f=>f.promise)}};async function phl(e,{strategy:t,patterns:r,cache:n,report:a}){let{configuration:o}=e,l=new Z_e.ThrowReport,A=o.makeResolver(),f=o.makeFetcher(),I={cache:n,checksums:e.storedChecksums,fetcher:f,project:e,report:l,cacheOptions:{skipIntegrityCheck:!0}},C={project:e,resolver:A,report:l,fetchOptions:I};return await a.startTimerPromise("Deduplication step",async()=>{let b=dhl[t],E=await b(e,r,{resolver:A,resolveOptions:C,fetcher:f,fetchOptions:I}),N=Z_e.Report.progressViaCounter(E.length);await a.reportProgress(N);let B=0;await Promise.all(E.map(X=>X.then(ae=>{if(ae===null||ae.currentPackage.locatorHash===ae.updatedPackage.locatorHash)return;B++;let{descriptor:ne,currentPackage:ce,updatedPackage:fe}=ae;a.reportInfo(EH.MessageName.UNNAMED,`${EH.structUtils.prettyDescriptor(o,ne)} can be deduped from ${EH.structUtils.prettyLocator(o,ce)} to ${EH.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:EH.structUtils.stringifyDescriptor(ne),currentResolution:EH.structUtils.stringifyLocator(ce),updatedResolution:EH.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ne.descriptorHash,fe.locatorHash)}).finally(()=>N.tick())));let F;switch(B){case 0:F="No packages";break;case 1:F="One package";break;default:F=`${B} packages`}let Q=EH.formatUtils.pretty(o,t,EH.formatUtils.Type.CODE);return a.reportInfo(EH.MessageName.UNNAMED,`${F} can be deduped using the ${Q} strategy`),B})}});var gcs=H(nXr=>{"use strict";Object.defineProperty(nXr,"__esModule",{value:!0});var ucs=(Pa(),vi(Va)),fhl=el(),qje=yn(),Kxe=($c(),vi(rg)),lcs=ucs.__importStar((CZ(),vi(mZ))),rXr=ucs.__importStar(tXr()),$je=class extends fhl.BaseCommand{constructor(){super(...arguments),this.strategy=Kxe.Option.String("-s,--strategy",rXr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:lcs.isEnum(rXr.Strategy)}),this.check=Kxe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=Kxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=Kxe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:lcs.isEnum(qje.InstallMode)}),this.patterns=Kxe.Option.Rest()}async execute(){let t=await qje.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qje.Project.find(t,this.context.cwd),n=await qje.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await qje.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async l=>{a=await rXr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:n,report:l})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n,mode:this.mode})}};$je.paths=[["dedupe"]];$je.usage=Kxe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});nXr.default=$je});var Acs=H(iXr=>{"use strict";Object.defineProperty(iXr,"__esModule",{value:!0});var Ihl=el(),hhl=yn(),mhl=($c(),vi(rg)),nxt=class extends Ihl.BaseCommand{async execute(){let{plugins:t}=await hhl.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let l of t){let{commands:A}=l[1];if(A){let I=mhl.Cli.from(A).definitions();r.push([l[0],I])}}let n=this.cli.definitions(),a=(l,A)=>l.split(" ").slice(1).join()===A.split(" ").slice(1).join(),o=npr()["@yarnpkg/builder"].bundles.standard;for(let l of r){let A=l[1];for(let f of A)n.find(I=>a(I.path,f.path)).plugin={name:l[0],isDefault:o.includes(l[0])}}this.context.stdout.write(`${JSON.stringify(n,null,2)} +`)}};nxt.paths=[["--clipanion=definitions"]];iXr.default=nxt});var dcs=H(sXr=>{"use strict";Object.defineProperty(sXr,"__esModule",{value:!0});var Chl=el(),ixt=class extends Chl.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};ixt.paths=[["help"],["--help"],["-h"]];sXr.default=ixt});var Ics=H(aXr=>{"use strict";Object.defineProperty(aXr,"__esModule",{value:!0});var _hl=el(),yhl=yn(),pcs=zs(),fcs=($c(),vi(rg)),oXr=class extends _hl.BaseCommand{constructor(){super(...arguments),this.leadingArgument=fcs.Option.String(),this.args=fcs.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!yhl.structUtils.tryParseIdent(this.leadingArgument)){let t=pcs.ppath.resolve(this.context.cwd,pcs.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};aXr.default=oXr});var hcs=H(cXr=>{"use strict";Object.defineProperty(cXr,"__esModule",{value:!0});var bhl=el(),Ehl=yn(),sxt=class extends bhl.BaseCommand{async execute(){this.context.stdout.write(`${Ehl.YarnVersion||""} +`)}};sxt.paths=[["-v"],["--version"]];cXr.default=sxt});var Ccs=H(uXr=>{"use strict";Object.defineProperty(uXr,"__esModule",{value:!0});var Shl=el(),mcs=yn(),vhl=yn(),lXr=($c(),vi(rg)),e6e=class extends Shl.BaseCommand{constructor(){super(...arguments),this.commandName=lXr.Option.String(),this.args=lXr.Option.Proxy()}async execute(){let t=await mcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await mcs.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await vhl.scriptUtils.executePackageShellcode(n,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};e6e.paths=[["exec"]];e6e.usage=lXr.Command.Usage({description:"execute a shell script",details:` This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). - `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});nXr.default=qje});var acs=H(e6e=>{"use strict";Object.defineProperty(e6e,"__esModule",{value:!0});e6e.explainPeerRequirement=scs;e6e.explainPeerRequirements=ocs;var GIl=(Pa(),vi(Va)),FIl=el(),Ud=Sn(),ics=($c(),vi(rg)),iXr=GIl.__importStar((CZ(),vi(mZ))),$je=class extends FIl.BaseCommand{constructor(){super(...arguments),this.hash=ics.Option.String({required:!1,validator:iXr.cascade(iXr.isString(),[iXr.matchesRegExp(/^p[0-9a-f]{6}$/)])})}async execute(){let t=await Ud.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Ud.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await scs(this.hash,r,{stdout:this.context.stdout}):await ocs(r,{stdout:this.context.stdout})}};$je.paths=[["explain","peer-requirements"]];$je.usage=ics.Command.Usage({description:"explain a set of peer requirements",details:` + `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});uXr.default=e6e});var Ecs=H(r6e=>{"use strict";Object.defineProperty(r6e,"__esModule",{value:!0});r6e.explainPeerRequirement=ycs;r6e.explainPeerRequirements=bcs;var Bhl=(Pa(),vi(Va)),whl=el(),Ud=yn(),_cs=($c(),vi(rg)),gXr=Bhl.__importStar((CZ(),vi(mZ))),t6e=class extends whl.BaseCommand{constructor(){super(...arguments),this.hash=_cs.Option.String({required:!1,validator:gXr.cascade(gXr.isString(),[gXr.matchesRegExp(/^p[0-9a-f]{6}$/)])})}async execute(){let t=await Ud.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Ud.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await ycs(this.hash,r,{stdout:this.context.stdout}):await bcs(r,{stdout:this.context.stdout})}};t6e.paths=[["explain","peer-requirements"]];t6e.usage=_cs.Command.Usage({description:"explain a set of peer requirements",details:` A peer requirement represents all peer requests that a subject must satisfy when providing a requested package to requesters. When the hash argument is specified, this command prints a detailed explanation of the peer requirement corresponding to the hash and whether it is satisfied or not. @@ -1318,9 +1318,9 @@ Try running the command again with the package name prefixed: ${xO.formatUtils.p When used without arguments, this command lists all peer requirements and the corresponding hash that can be used to get detailed information about a given requirement. **Note:** A hash is a seven-letter code consisting of the letter 'p' followed by six characters that can be obtained from peer dependency warnings or from the list of all peer requirements(\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});e6e.default=$je;async function scs(e,t,r){let n=t.peerRequirementNodes.get(e);if(typeof n>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),I=>[Ud.structUtils.stringifyLocator(I.requester),o(I)]))}),l=t.peerWarnings.find(f=>f.hash===e);return(await Ud.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let I=Ud.formatUtils.mark(t.configuration),C=l?I.Cross:I.Check;if(f.reportInfo(Ud.MessageName.UNNAMED,`Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} is requested to provide ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(Ud.MessageName.UNNAMED,Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)),Ud.treeUtils.emitTree({children:Object.fromEntries(Array.from(n.requests.values(),b=>[Ud.structUtils.stringifyLocator(b.requester),o(b)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),n.provided.range==="missing:"){let b=l?"":" , but all peer requests are optional";f.reportInfo(Ud.MessageName.UNNAMED,`${C} Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} does not provide ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)}${b}.`)}else{let b=t.storedResolutions.get(n.provided.descriptorHash);if(!b)throw new Error("Assertion failed: Expected the descriptor to be registered");let E=t.storedPackages.get(b);if(!E)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(Ud.MessageName.UNNAMED,`${C} Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} provides ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)} with version ${Ud.structUtils.prettyReference(t.configuration,E.version??"0.0.0")}, ${l?"which does not satisfy all requests.":"which satisfies all requests"}`),l?.type===Ud.PeerWarningType.NodeNotCompatible&&(l.range?f.reportInfo(Ud.MessageName.UNNAMED,` The combined requested range is ${Ud.formatUtils.pretty(t.configuration,l.range,Ud.formatUtils.Type.RANGE)}`):f.reportInfo(Ud.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function ocs(e,t){return(await Ud.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async n=>{let a=Ud.formatUtils.mark(e.configuration),o=Ud.miscUtils.sortMap(e.peerRequirementNodes,[([,l])=>Ud.structUtils.stringifyLocator(l.subject),([,l])=>Ud.structUtils.stringifyIdent(l.ident)]);for(let[,l]of o.values()){if(!l.root)continue;let A=e.peerWarnings.find(C=>C.hash===l.hash),f=[...Ud.structUtils.allPeerRequests(l)],I;if(f.length>2?I=` and ${f.length-1} other dependencies`:f.length===2?I=" and 1 other dependency":I="",l.provided.range!=="missing:"){let C=e.storedResolutions.get(l.provided.descriptorHash);if(!C)throw new Error("Assertion failed: Expected the resolution to have been registered");let b=e.storedPackages.get(C);if(!b)throw new Error("Assertion failed: Expected the provided package to have been registered");let E=`${Ud.formatUtils.pretty(e.configuration,l.hash,Ud.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${Ud.structUtils.prettyLocator(e.configuration,l.subject)} provides ${Ud.structUtils.prettyLocator(e.configuration,b)} to ${Ud.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(Ud.MessageName.UNNAMED,E):n.reportInfo(Ud.MessageName.UNNAMED,E)}else{let C=`${Ud.formatUtils.pretty(e.configuration,l.hash,Ud.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${Ud.structUtils.prettyLocator(e.configuration,l.subject)} doesn't provide ${Ud.structUtils.prettyIdent(e.configuration,l.ident)} to ${Ud.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(Ud.MessageName.UNNAMED,C):n.reportInfo(Ud.MessageName.UNNAMED,C)}}})).exitCode()}});var nxt=H(Uxe=>{"use strict";Object.defineProperty(Uxe,"__esModule",{value:!0});Uxe.resolveRange=ccs;Uxe.resolveTag=rxt;Uxe.setVersion=lcs;var ZIl=(Pa(),vi(Va)),LIl=el(),$G=Sn(),qv=Sn(),zv=ro(),aue=($c(),vi(rg)),VIl=ZIl.__importDefault(UC()),t6e=class extends LIl.BaseCommand{constructor(){super(...arguments),this.useYarnPath=aue.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=aue.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=aue.Option.String()}async execute(){let t=await $G.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let l=t.sources.get("yarnPath");if(!l)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let A=t.projectCwd??t.startingCwd;if(zv.ppath.contains(A,l))return 0}let r=()=>{if(typeof $G.YarnVersion>"u")throw new aue.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},n,a=(l,A)=>({version:A,url:l.replace(/\{\}/g,A)});if(this.version==="self")n={url:r(),version:$G.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await rxt(t,"stable"));else if(this.version==="canary")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await rxt(t,"canary"));else if(this.version==="classic")n={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))n={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||zv.npath.isAbsolute(this.version))n={url:`file://${zv.ppath.resolve(zv.npath.toPortablePath(this.version))}`,version:"file"};else if(qv.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(qv.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))n=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(qv.semverUtils.validRange(this.version))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await ccs(t,this.version));else throw new aue.UsageError(`Invalid version descriptor "${this.version}"`);return(await $G.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async l=>{let A=async()=>{let f="file://";return n.url.startsWith(f)?(l.reportInfo($G.MessageName.UNNAMED,`Retrieving ${qv.formatUtils.pretty(t,n.url,qv.formatUtils.Type.PATH)}`),await zv.xfs.readFilePromise(n.url.slice(f.length))):(l.reportInfo($G.MessageName.UNNAMED,`Downloading ${qv.formatUtils.pretty(t,n.url,qv.formatUtils.Type.URL)}`),await qv.httpUtils.get(n.url,{configuration:t}))};await lcs(t,n.version,A,{report:l,useYarnPath:this.useYarnPath})})).exitCode()}};t6e.paths=[["set","version"]];t6e.usage=aue.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});Uxe.default=t6e;async function ccs(e,t){let n=(await qv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>qv.semverUtils.satisfiesWithPrereleases(a,t));if(n.length===0)throw new aue.UsageError(`No matching release found for range ${qv.formatUtils.pretty(e,t,qv.formatUtils.Type.RANGE)}.`);return n[0]}async function rxt(e,t){let r=await qv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new aue.UsageError(`Tag ${qv.formatUtils.pretty(e,t,qv.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function lcs(e,t,r,{report:n,useYarnPath:a}){let o,l=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ne=await l();await zv.xfs.mktempPromise(async ce=>{let fe=zv.ppath.join(ce,"yarn.cjs");await zv.xfs.writeFilePromise(fe,ne);let{stdout:ue}=await qv.execUtils.execvp(process.execPath,[zv.npath.fromPortablePath(fe),"--version"],{cwd:ce,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=ue.trim(),!VIl.default.valid(t))throw new Error(`Invalid semver version. ${qv.formatUtils.pretty(e,"yarn --version",qv.formatUtils.Type.CODE)} returned: -${t}`)})}let A=e.projectCwd??e.startingCwd,f=zv.ppath.resolve(A,".yarn/releases"),I=zv.ppath.resolve(f,`yarn-${t}.mjs`),C=zv.ppath.relative(e.startingCwd,I),b=qv.miscUtils.isTaggedYarnVersion(t),E=e.get("yarnPath"),N=!b,B=N||!!E||!!a;if(a===!1){if(N)throw new $G.ReportError($G.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");B=!1}else!B&&!process.env.COREPACK_ROOT&&(n.reportWarning($G.MessageName.UNNAMED,`You don't seem to have ${qv.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${qv.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),B=!0);if(B){let ne=await l();n.reportInfo($G.MessageName.UNNAMED,`Saving the new release in ${qv.formatUtils.pretty(e,C,"magenta")}`),await zv.xfs.removePromise(zv.ppath.dirname(I)),await zv.xfs.mkdirPromise(zv.ppath.dirname(I),{recursive:!0}),await zv.xfs.writeFilePromise(I,ne,{mode:493}),await $G.Configuration.updateConfiguration(A,{yarnPath:zv.ppath.relative(A,I)})}else await zv.xfs.removePromise(zv.ppath.dirname(I)),await $G.Configuration.updateConfiguration(A,{yarnPath:$G.Configuration.deleteProperty});let F=await $G.Manifest.tryFind(A)||new $G.Manifest;F.packageManager=`yarn@${b?t:await rxt(e,"stable")}`;let Q={};F.exportTo(Q);let X=zv.ppath.join(A,$G.Manifest.fileName),ae=`${JSON.stringify(Q,null,F.indent)} -`;return await zv.xfs.changeFilePromise(X,ae,{automaticNewlines:!0}),{bundleVersion:t}}});var Acs=H(ixt=>{"use strict";Object.defineProperty(ixt,"__esModule",{value:!0});ixt.getErrorCodeDetails=gcs;var PIl=(Pa(),vi(Va)),WIl=el(),$v=Sn(),oXr=($c(),vi(rg)),sXr=PIl.__importStar((CZ(),vi(mZ))),OIl=nxt();function ucs(e){return $v.MessageName[(0,$v.parseMessageName)(e)]}var MIl=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?

(?:.(?!##))+)/gs;async function gcs(e){let r=`https://repo.yarnpkg.com/${$v.miscUtils.isTaggedYarnVersion($v.YarnVersion)?$v.YarnVersion:await(0,OIl.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,n=await $v.httpUtils.get(r,{configuration:e});return new Map(Array.from(n.toString().matchAll(MIl),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=ucs(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var r6e=class extends WIl.BaseCommand{constructor(){super(...arguments),this.code=oXr.Option.String({required:!1,validator:sXr.applyCascade(sXr.isString(),[sXr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=oXr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await $v.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=ucs(this.code),n=$v.formatUtils.pretty(t,r,$v.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${n}`),l=(await gcs(t)).get(this.code),A=typeof l<"u"?$v.formatUtils.jsonOrPretty(this.json,t,$v.formatUtils.tuple($v.formatUtils.Type.MARKDOWN,{text:l,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. + `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});r6e.default=t6e;async function ycs(e,t,r){let n=t.peerRequirementNodes.get(e);if(typeof n>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),I=>[Ud.structUtils.stringifyLocator(I.requester),o(I)]))}),l=t.peerWarnings.find(f=>f.hash===e);return(await Ud.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let I=Ud.formatUtils.mark(t.configuration),C=l?I.Cross:I.Check;if(f.reportInfo(Ud.MessageName.UNNAMED,`Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} is requested to provide ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(Ud.MessageName.UNNAMED,Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)),Ud.treeUtils.emitTree({children:Object.fromEntries(Array.from(n.requests.values(),b=>[Ud.structUtils.stringifyLocator(b.requester),o(b)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),n.provided.range==="missing:"){let b=l?"":" , but all peer requests are optional";f.reportInfo(Ud.MessageName.UNNAMED,`${C} Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} does not provide ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)}${b}.`)}else{let b=t.storedResolutions.get(n.provided.descriptorHash);if(!b)throw new Error("Assertion failed: Expected the descriptor to be registered");let E=t.storedPackages.get(b);if(!E)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(Ud.MessageName.UNNAMED,`${C} Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} provides ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)} with version ${Ud.structUtils.prettyReference(t.configuration,E.version??"0.0.0")}, ${l?"which does not satisfy all requests.":"which satisfies all requests"}`),l?.type===Ud.PeerWarningType.NodeNotCompatible&&(l.range?f.reportInfo(Ud.MessageName.UNNAMED,` The combined requested range is ${Ud.formatUtils.pretty(t.configuration,l.range,Ud.formatUtils.Type.RANGE)}`):f.reportInfo(Ud.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function bcs(e,t){return(await Ud.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async n=>{let a=Ud.formatUtils.mark(e.configuration),o=Ud.miscUtils.sortMap(e.peerRequirementNodes,[([,l])=>Ud.structUtils.stringifyLocator(l.subject),([,l])=>Ud.structUtils.stringifyIdent(l.ident)]);for(let[,l]of o.values()){if(!l.root)continue;let A=e.peerWarnings.find(C=>C.hash===l.hash),f=[...Ud.structUtils.allPeerRequests(l)],I;if(f.length>2?I=` and ${f.length-1} other dependencies`:f.length===2?I=" and 1 other dependency":I="",l.provided.range!=="missing:"){let C=e.storedResolutions.get(l.provided.descriptorHash);if(!C)throw new Error("Assertion failed: Expected the resolution to have been registered");let b=e.storedPackages.get(C);if(!b)throw new Error("Assertion failed: Expected the provided package to have been registered");let E=`${Ud.formatUtils.pretty(e.configuration,l.hash,Ud.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${Ud.structUtils.prettyLocator(e.configuration,l.subject)} provides ${Ud.structUtils.prettyLocator(e.configuration,b)} to ${Ud.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(Ud.MessageName.UNNAMED,E):n.reportInfo(Ud.MessageName.UNNAMED,E)}else{let C=`${Ud.formatUtils.pretty(e.configuration,l.hash,Ud.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${Ud.structUtils.prettyLocator(e.configuration,l.subject)} doesn't provide ${Ud.structUtils.prettyIdent(e.configuration,l.ident)} to ${Ud.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(Ud.MessageName.UNNAMED,C):n.reportInfo(Ud.MessageName.UNNAMED,C)}}})).exitCode()}});var axt=H(jxe=>{"use strict";Object.defineProperty(jxe,"__esModule",{value:!0});jxe.resolveRange=Scs;jxe.resolveTag=oxt;jxe.setVersion=vcs;var Thl=(Pa(),vi(Va)),Rhl=el(),$G=yn(),qv=yn(),zv=zs(),cue=($c(),vi(rg)),Nhl=Thl.__importDefault(UC()),n6e=class extends Rhl.BaseCommand{constructor(){super(...arguments),this.useYarnPath=cue.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=cue.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=cue.Option.String()}async execute(){let t=await $G.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let l=t.sources.get("yarnPath");if(!l)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let A=t.projectCwd??t.startingCwd;if(zv.ppath.contains(A,l))return 0}let r=()=>{if(typeof $G.YarnVersion>"u")throw new cue.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},n,a=(l,A)=>({version:A,url:l.replace(/\{\}/g,A)});if(this.version==="self")n={url:r(),version:$G.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await oxt(t,"stable"));else if(this.version==="canary")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await oxt(t,"canary"));else if(this.version==="classic")n={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))n={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||zv.npath.isAbsolute(this.version))n={url:`file://${zv.ppath.resolve(zv.npath.toPortablePath(this.version))}`,version:"file"};else if(qv.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(qv.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))n=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(qv.semverUtils.validRange(this.version))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await Scs(t,this.version));else throw new cue.UsageError(`Invalid version descriptor "${this.version}"`);return(await $G.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async l=>{let A=async()=>{let f="file://";return n.url.startsWith(f)?(l.reportInfo($G.MessageName.UNNAMED,`Retrieving ${qv.formatUtils.pretty(t,n.url,qv.formatUtils.Type.PATH)}`),await zv.xfs.readFilePromise(n.url.slice(f.length))):(l.reportInfo($G.MessageName.UNNAMED,`Downloading ${qv.formatUtils.pretty(t,n.url,qv.formatUtils.Type.URL)}`),await qv.httpUtils.get(n.url,{configuration:t}))};await vcs(t,n.version,A,{report:l,useYarnPath:this.useYarnPath})})).exitCode()}};n6e.paths=[["set","version"]];n6e.usage=cue.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});jxe.default=n6e;async function Scs(e,t){let n=(await qv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>qv.semverUtils.satisfiesWithPrereleases(a,t));if(n.length===0)throw new cue.UsageError(`No matching release found for range ${qv.formatUtils.pretty(e,t,qv.formatUtils.Type.RANGE)}.`);return n[0]}async function oxt(e,t){let r=await qv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new cue.UsageError(`Tag ${qv.formatUtils.pretty(e,t,qv.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function vcs(e,t,r,{report:n,useYarnPath:a}){let o,l=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ne=await l();await zv.xfs.mktempPromise(async ce=>{let fe=zv.ppath.join(ce,"yarn.cjs");await zv.xfs.writeFilePromise(fe,ne);let{stdout:ue}=await qv.execUtils.execvp(process.execPath,[zv.npath.fromPortablePath(fe),"--version"],{cwd:ce,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=ue.trim(),!Nhl.default.valid(t))throw new Error(`Invalid semver version. ${qv.formatUtils.pretty(e,"yarn --version",qv.formatUtils.Type.CODE)} returned: +${t}`)})}let A=e.projectCwd??e.startingCwd,f=zv.ppath.resolve(A,".yarn/releases"),I=zv.ppath.resolve(f,`yarn-${t}.mjs`),C=zv.ppath.relative(e.startingCwd,I),b=qv.miscUtils.isTaggedYarnVersion(t),E=e.get("yarnPath"),N=!b,B=N||!!E||!!a;if(a===!1){if(N)throw new $G.ReportError($G.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");B=!1}else!B&&!process.env.COREPACK_ROOT&&(n.reportWarning($G.MessageName.UNNAMED,`You don't seem to have ${qv.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${qv.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),B=!0);if(B){let ne=await l();n.reportInfo($G.MessageName.UNNAMED,`Saving the new release in ${qv.formatUtils.pretty(e,C,"magenta")}`),await zv.xfs.removePromise(zv.ppath.dirname(I)),await zv.xfs.mkdirPromise(zv.ppath.dirname(I),{recursive:!0}),await zv.xfs.writeFilePromise(I,ne,{mode:493}),await $G.Configuration.updateConfiguration(A,{yarnPath:zv.ppath.relative(A,I)})}else await zv.xfs.removePromise(zv.ppath.dirname(I)),await $G.Configuration.updateConfiguration(A,{yarnPath:$G.Configuration.deleteProperty});let F=await $G.Manifest.tryFind(A)||new $G.Manifest;F.packageManager=`yarn@${b?t:await oxt(e,"stable")}`;let Q={};F.exportTo(Q);let X=zv.ppath.join(A,$G.Manifest.fileName),ae=`${JSON.stringify(Q,null,F.indent)} +`;return await zv.xfs.changeFilePromise(X,ae,{automaticNewlines:!0}),{bundleVersion:t}}});var Tcs=H(cxt=>{"use strict";Object.defineProperty(cxt,"__esModule",{value:!0});cxt.getErrorCodeDetails=wcs;var Dhl=(Pa(),vi(Va)),khl=el(),$v=yn(),dXr=($c(),vi(rg)),AXr=Dhl.__importStar((CZ(),vi(mZ))),xhl=axt();function Bcs(e){return $v.MessageName[(0,$v.parseMessageName)(e)]}var Ghl=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function wcs(e){let r=`https://repo.yarnpkg.com/${$v.miscUtils.isTaggedYarnVersion($v.YarnVersion)?$v.YarnVersion:await(0,xhl.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,n=await $v.httpUtils.get(r,{configuration:e});return new Map(Array.from(n.toString().matchAll(Ghl),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=Bcs(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var i6e=class extends khl.BaseCommand{constructor(){super(...arguments),this.code=dXr.Option.String({required:!1,validator:AXr.applyCascade(AXr.isString(),[AXr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=dXr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await $v.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=Bcs(this.code),n=$v.formatUtils.pretty(t,r,$v.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${n}`),l=(await wcs(t)).get(this.code),A=typeof l<"u"?$v.formatUtils.jsonOrPretty(this.json,t,$v.formatUtils.tuple($v.formatUtils.Type.MARKDOWN,{text:l,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. You can help us by editing this page on GitHub \u{1F642}: ${$v.formatUtils.jsonOrPretty(this.json,t,$v.formatUtils.tuple($v.formatUtils.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx"))} @@ -1328,25 +1328,25 @@ ${$v.formatUtils.jsonOrPretty(this.json,t,$v.formatUtils.tuple($v.formatUtils.Ty `):this.context.stdout.write(`${a} ${A} -`)}else{let r={children:$v.miscUtils.mapAndFilter(Object.entries($v.MessageName),([n,a])=>Number.isNaN(Number(n))?$v.miscUtils.mapAndFilter.skip:{label:(0,$v.stringifyMessageName)(Number(n)),value:$v.formatUtils.tuple($v.formatUtils.Type.CODE,a)})};$v.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};r6e.paths=[["explain"]];r6e.usage=oXr.Command.Usage({description:"explain an error code",details:` +`)}else{let r={children:$v.miscUtils.mapAndFilter(Object.entries($v.MessageName),([n,a])=>Number.isNaN(Number(n))?$v.miscUtils.mapAndFilter.skip:{label:(0,$v.stringifyMessageName)(Number(n)),value:$v.formatUtils.tuple($v.formatUtils.Type.CODE,a)})};$v.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};i6e.paths=[["explain"]];i6e.usage=dXr.Command.Usage({description:"explain an error code",details:` When the code argument is specified, this command prints its name and its details. When used without arguments, this command lists all error codes and their names. - `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});ixt.default=r6e});var pcs=H(aXr=>{"use strict";Object.defineProperty(aXr,"__esModule",{value:!0});var HIl=(Pa(),vi(Va)),dcs=el(),hI=Sn(),YIl=ro(),SH=($c(),vi(rg)),QIl=HIl.__importDefault(Ek()),n6e=class extends dcs.BaseCommand{constructor(){super(...arguments),this.all=SH.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=SH.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=SH.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=SH.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=SH.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=SH.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=SH.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=SH.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=SH.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=SH.Option.Rest()}async execute(){let t=await hI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hI.Project.find(t,this.context.cwd),a=await hI.Cache.find(t);if(!n&&!this.all)throw new dcs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let l=(ne,{recursive:ce})=>{let fe=ne.anchoredLocator.locatorHash,ue=new Map,de=[fe];for(;de.length>0;){let be=de.shift();if(ue.has(be))continue;let Se=r.storedPackages.get(be);if(typeof Se>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ue.set(be,Se),hI.structUtils.isVirtualLocator(Se)&&de.push(hI.structUtils.devirtualizeLocator(Se).locatorHash),!(!ce&&be!==fe))for(let De of Se.dependencies.values()){let k=r.storedResolutions.get(De.descriptorHash);if(typeof k>"u")throw new Error("Assertion failed: Expected the resolution to be registered");de.push(k)}}return ue.values()},A=({recursive:ne})=>{let ce=new Map;for(let fe of r.workspaces)for(let ue of l(fe,{recursive:ne}))ce.set(ue.locatorHash,ue);return ce.values()},f=({all:ne,recursive:ce})=>ne&&ce?r.storedPackages.values():ne?A({recursive:ce}):l(n,{recursive:ce}),I=({all:ne,recursive:ce})=>{let fe=f({all:ne,recursive:ce}),ue=this.patterns.map(Se=>{let De=hI.structUtils.parseLocator(Se),k=QIl.default.makeRe(hI.structUtils.stringifyIdent(De)),et=hI.structUtils.isVirtualLocator(De),ct=et?hI.structUtils.devirtualizeLocator(De):De;return Me=>{let je=hI.structUtils.stringifyIdent(Me);if(!k.test(je))return!1;if(De.reference==="unknown")return!0;let St=hI.structUtils.isVirtualLocator(Me),At=St?hI.structUtils.devirtualizeLocator(Me):Me;return!(et&&St&&De.reference!==Me.reference||ct.reference!==At.reference)}}),de=hI.miscUtils.sortMap([...fe],Se=>hI.structUtils.stringifyLocator(Se));return{selection:de.filter(Se=>ue.length===0||ue.some(De=>De(Se))),sortedLookup:de}},{selection:C,sortedLookup:b}=I({all:this.all,recursive:this.recursive});if(C.length===0)throw new SH.UsageError("No package matched your request");let E=new Map;if(this.dependents)for(let ne of b)for(let ce of ne.dependencies.values()){let fe=r.storedResolutions.get(ce.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");hI.miscUtils.getArrayWithDefault(E,fe).push(ne)}let N=new Map;for(let ne of b){if(!hI.structUtils.isVirtualLocator(ne))continue;let ce=hI.structUtils.devirtualizeLocator(ne);hI.miscUtils.getArrayWithDefault(N,ce.locatorHash).push(ne)}let B={},F={children:B},Q=t.makeFetcher(),X={project:r,fetcher:Q,cache:a,checksums:r.storedChecksums,report:new hI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},ae=[async(ne,ce,fe)=>{if(!ce.has("manifest"))return;let ue=await Q.fetch(ne,X),de;try{de=await hI.Manifest.find(ue.prefixPath,{baseFs:ue.packageFs})}finally{ue.releaseFs?.()}fe("Manifest",{License:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,de.license),Homepage:hI.formatUtils.tuple(hI.formatUtils.Type.URL,de.raw.homepage??null)})},async(ne,ce,fe)=>{if(!ce.has("cache"))return;let ue=r.storedChecksums.get(ne.locatorHash)??null,de=a.getLocatorPath(ne,ue),be;if(de!==null)try{be=await YIl.xfs.statPromise(de)}catch{}let Se=typeof be<"u"?[be.size,hI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,ue),Path:hI.formatUtils.tuple(hI.formatUtils.Type.PATH,de),Size:Se})}];for(let ne of C){let ce=hI.structUtils.isVirtualLocator(ne);if(!this.virtuals&&ce)continue;let fe={},ue={value:[ne,hI.formatUtils.Type.LOCATOR],children:fe};if(B[hI.structUtils.stringifyLocator(ne)]=ue,this.nameOnly){delete ue.children;continue}let de=N.get(ne.locatorHash);typeof de<"u"&&(fe.Instances={label:"Instances",value:hI.formatUtils.tuple(hI.formatUtils.Type.NUMBER,de.length)}),fe.Version={label:"Version",value:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,ne.version)};let be=(De,k)=>{let et={};if(fe[De]=et,Array.isArray(k))et.children=k.map(ct=>({value:ct}));else{let ct={};et.children=ct;for(let[Me,je]of Object.entries(k))typeof je>"u"||(ct[Me]={label:Me,value:je})}};if(!ce){for(let De of ae)await De(ne,o,be);await t.triggerHook(De=>De.fetchPackageInfo,ne,o,be)}ne.bin.size>0&&!ce&&be("Exported Binaries",[...ne.bin.keys()].map(De=>hI.formatUtils.tuple(hI.formatUtils.Type.PATH,De)));let Se=E.get(ne.locatorHash);typeof Se<"u"&&Se.length>0&&be("Dependents",Se.map(De=>hI.formatUtils.tuple(hI.formatUtils.Type.LOCATOR,De))),ne.dependencies.size>0&&!ce&&be("Dependencies",[...ne.dependencies.values()].map(De=>{let k=r.storedResolutions.get(De.descriptorHash),et=typeof k<"u"?r.storedPackages.get(k)??null:null;return hI.formatUtils.tuple(hI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:et})})),ne.peerDependencies.size>0&&ce&&be("Peer dependencies",[...ne.peerDependencies.values()].map(De=>{let k=ne.dependencies.get(De.identHash),et=typeof k<"u"?r.storedResolutions.get(k.descriptorHash)??null:null,ct=et!==null?r.storedPackages.get(et)??null:null;return hI.formatUtils.tuple(hI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:ct})}))}hI.treeUtils.emitTree(F,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};n6e.paths=[["info"]];n6e.usage=SH.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});aXr.default=n6e});var mcs=H(uXr=>{"use strict";Object.defineProperty(uXr,"__esModule",{value:!0});var lXr=(Pa(),vi(Va)),fcs=el(),WA=Sn(),a6=ro(),Ics=TW(),cXr=lXr.__importDefault(Nfe()),_T=($c(),vi(rg)),hcs=lXr.__importDefault(UC()),XIl=lXr.__importStar((CZ(),vi(mZ))),JIl=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"},{selector:e=>e<9,name:"approvedGitRepositories",value:["**"]},{selector:e=>e<9,name:"enableScripts",value:!0}],i6e=class extends fcs.BaseCommand{constructor(){super(...arguments),this.json=_T.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=_T.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=_T.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=_T.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=_T.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=_T.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=_T.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=_T.Option.String("--mode",{description:"Change what artifacts installs generate",validator:XIl.isEnum(WA.InstallMode)}),this.cacheFolder=_T.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=_T.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=_T.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=_T.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=_T.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=_T.Option.Boolean("--production",{hidden:!0}),this.registry=_T.Option.String("--registry",{hidden:!0}),this.silent=_T.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=_T.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await WA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,n=await(0,WA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!cXr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!cXr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!cXr.default.NETLIFY}]);if(n!==null)return n;let a=this.mode===WA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new _T.UsageError(`${WA.formatUtils.pretty(t,"--immutable",WA.formatUtils.Type.CODE)} and ${WA.formatUtils.pretty(t,"--immutable-cache",WA.formatUtils.Type.CODE)} cannot be used with ${WA.formatUtils.pretty(t,"--mode=update-lockfile",WA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,l=this.immutableCache&&!a;if(t.projectCwd!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q=!1;await jIl(t,o)&&(F.reportInfo(WA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),Q=!0),await KIl(t,o)&&(F.reportInfo(WA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),Q=!0),Q&&F.reportSeparator()});if(B.hasErrors())return B.exitCode()}if(t.projectCwd!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{if(WA.Configuration.telemetry?.isNew)WA.Configuration.telemetry.commitTips(),F.reportInfo(WA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),F.reportInfo(WA.MessageName.TELEMETRY_NOTICE,`Run ${WA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",WA.formatUtils.Type.CODE)} to disable`),F.reportSeparator();else if(WA.Configuration.telemetry?.shouldShowTips){let Q=await WA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(Q!==null){let X=null;if(WA.YarnVersion!==null){let ne=hcs.default.prerelease(WA.YarnVersion)?"canary":"stable",ce=Q.latest[ne];ce!==null&&hcs.default.gt(ce,WA.YarnVersion)&&(X=[ne,ce])}if(X)WA.Configuration.telemetry.commitTips(),F.reportInfo(WA.MessageName.VERSION_NOTICE,`${WA.formatUtils.applyStyle(t,`A new ${X[0]} version of Yarn is available:`,WA.formatUtils.Style.BOLD)} ${WA.structUtils.prettyReference(t,X[1])}!`),F.reportInfo(WA.MessageName.VERSION_NOTICE,`Upgrade now by running ${WA.formatUtils.pretty(t,`yarn set version ${X[1]}`,WA.formatUtils.Type.CODE)}`),F.reportSeparator();else{let ae=WA.Configuration.telemetry.selectTip(Q.tips);ae&&(F.reportInfo(WA.MessageName.TIPS_NOTICE,WA.formatUtils.pretty(t,ae.message,WA.formatUtils.Type.MARKDOWN_INLINE)),ae.url&&F.reportInfo(WA.MessageName.TIPS_NOTICE,`Learn more at ${ae.url}`),F.reportSeparator())}}}});if(B.hasErrors())return B.exitCode()}let{project:A,workspace:f}=await WA.Project.find(t,this.context.cwd),I=A.lockfileLastVersion;if(I!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q={};for(let X of JIl)X.selector(I)&&typeof t.sources.get(X.name)>"u"&&(t.use("",{[X.name]:X.value},A.cwd,{overwrite:!0}),Q[X.name]=X.value);Object.keys(Q).length>0&&(await WA.Configuration.updateConfiguration(A.cwd,Q),F.reportInfo(WA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),F.reportSeparator())});if(B.hasErrors())return B.exitCode()}let C=await WA.Cache.find(t,{immutable:l,check:this.checkCache});if(!f)throw new fcs.WorkspaceRequiredError(A.cwd,this.context.cwd);await A.restoreInstallState({restoreResolutions:!1});let b=t.get("enableHardenedMode");b&&typeof t.sources.get("enableHardenedMode")>"u"&&await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async B=>{B.reportWarning(WA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),B.reportWarning(WA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${WA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),B.reportSeparator()}),(this.refreshLockfile??b)&&(A.lockfileNeedsRefresh=!0);let E=this.checkResolutions??b;return(await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async B=>{await A.install({cache:C,report:B,immutable:o,checkResolutions:E,mode:this.mode})})).exitCode()}};i6e.paths=[["install"],_T.Command.Default];i6e.usage=_T.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});uXr.default=i6e;var UIl="<<<<<<<";async function KIl(e,t){if(!e.projectCwd)return!1;let r=a6.ppath.join(e.projectCwd,a6.Filename.lockfile);if(!await a6.xfs.existsPromise(r)||!(await a6.xfs.readFilePromise(r,"utf8")).includes(UIl))return!1;if(t)throw new WA.ReportError(WA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await WA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await WA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await WA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new WA.ReportError(WA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async A=>{let f=await WA.execUtils.execvp("git",["show",`${A}:./${a6.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new WA.ReportError(WA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${A}`);try{return(0,Ics.parseSyml)(f.stdout)}catch{throw new WA.ReportError(WA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(A=>!!A.__metadata);for(let A of o){if(A.__metadata.version<7)for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=WA.structUtils.parseDescriptor(f,!0),C=e.normalizeDependency(I),b=WA.structUtils.stringifyDescriptor(C);b!==f&&(A[b]=A[f],delete A[f])}for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=A[f].checksum;typeof I>"u"||I.includes("/")||(A[f].checksum=`${A.__metadata.cacheKey}/${I}`)}}let l=Object.assign({},...o);l.__metadata.version=`${Math.min(...o.map(A=>parseInt(A.__metadata.version??0)))}`,l.__metadata.cacheKey="merged";for(let[A,f]of Object.entries(l))typeof f=="string"&&delete l[A];return await a6.xfs.changeFilePromise(r,(0,Ics.stringifySyml)(l),{automaticNewlines:!0}),!0}async function jIl(e,t){if(!e.projectCwd)return!1;let r=[],n=a6.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await WA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let l=o.filter(A=>{if(!A.path)return!0;let f=a6.ppath.resolve(e.projectCwd,A.path),I=WA.LEGACY_PLUGINS.has(A.spec)&&a6.ppath.contains(n,f);return I&&r.push(f),!I});return l.length===0?WA.Configuration.deleteProperty:l.length===o.length?o:l}},{immutable:t})?(await Promise.all(r.map(async o=>{await a6.xfs.removePromise(o)})),!0):!1}});var Ccs=H(dXr=>{"use strict";Object.defineProperty(dXr,"__esModule",{value:!0});var gXr=el(),Kxe=Sn(),AXr=ro(),wte=($c(),vi(rg)),s6e=class extends gXr.BaseCommand{constructor(){super(...arguments),this.all=wte.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=wte.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=wte.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=wte.Option.Rest()}async execute(){let t=await Kxe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Kxe.Project.find(t,this.context.cwd),a=await Kxe.Cache.find(t);if(!n)throw new gXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,l=[];for(let A of this.destinations){let f=AXr.ppath.resolve(this.context.cwd,AXr.npath.toPortablePath(A)),I=await Kxe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await Kxe.Project.find(I,f);if(r.cwd===C.cwd)throw new wte.UsageError(`Invalid destination '${A}'; Can't link the project to itself`);if(!b)throw new gXr.WorkspaceRequiredError(C.cwd,f);if(this.all){let E=!1;for(let N of C.workspaces)N.manifest.name&&(!N.manifest.private||this.private)&&(l.push(N),E=!0);if(!E)throw new wte.UsageError(`No workspace found to be linked in the target project: ${A}`)}else{if(!b.manifest.name)throw new wte.UsageError(`The target workspace at '${A}' doesn't have a name and thus cannot be linked`);if(b.manifest.private&&!this.private)throw new wte.UsageError(`The target workspace at '${A}' is marked private - use the --private flag to link it anyway`);l.push(b)}}for(let A of l){let f=Kxe.structUtils.stringifyIdent(A.anchoredLocator),I=this.relative?AXr.ppath.relative(r.cwd,A.cwd):A.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${I}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};s6e.paths=[["link"]];s6e.usage=wte.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});dXr.default=s6e});var ycs=H(pXr=>{"use strict";Object.defineProperty(pXr,"__esModule",{value:!0});var zIl=el(),_cs=($c(),vi(rg)),o6e=class extends zIl.BaseCommand{constructor(){super(...arguments),this.args=_cs.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};o6e.paths=[["node"]];o6e.usage=_cs.Command.Usage({description:"run node with the hook already setup",details:` + `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});cxt.default=i6e});var Ncs=H(pXr=>{"use strict";Object.defineProperty(pXr,"__esModule",{value:!0});var Fhl=(Pa(),vi(Va)),Rcs=el(),hI=yn(),Zhl=zs(),SH=($c(),vi(rg)),Lhl=Fhl.__importDefault(Ek()),s6e=class extends Rcs.BaseCommand{constructor(){super(...arguments),this.all=SH.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=SH.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=SH.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=SH.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=SH.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=SH.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=SH.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=SH.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=SH.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=SH.Option.Rest()}async execute(){let t=await hI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hI.Project.find(t,this.context.cwd),a=await hI.Cache.find(t);if(!n&&!this.all)throw new Rcs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let l=(ne,{recursive:ce})=>{let fe=ne.anchoredLocator.locatorHash,ue=new Map,de=[fe];for(;de.length>0;){let be=de.shift();if(ue.has(be))continue;let Se=r.storedPackages.get(be);if(typeof Se>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ue.set(be,Se),hI.structUtils.isVirtualLocator(Se)&&de.push(hI.structUtils.devirtualizeLocator(Se).locatorHash),!(!ce&&be!==fe))for(let De of Se.dependencies.values()){let k=r.storedResolutions.get(De.descriptorHash);if(typeof k>"u")throw new Error("Assertion failed: Expected the resolution to be registered");de.push(k)}}return ue.values()},A=({recursive:ne})=>{let ce=new Map;for(let fe of r.workspaces)for(let ue of l(fe,{recursive:ne}))ce.set(ue.locatorHash,ue);return ce.values()},f=({all:ne,recursive:ce})=>ne&&ce?r.storedPackages.values():ne?A({recursive:ce}):l(n,{recursive:ce}),I=({all:ne,recursive:ce})=>{let fe=f({all:ne,recursive:ce}),ue=this.patterns.map(Se=>{let De=hI.structUtils.parseLocator(Se),k=Lhl.default.makeRe(hI.structUtils.stringifyIdent(De)),et=hI.structUtils.isVirtualLocator(De),ct=et?hI.structUtils.devirtualizeLocator(De):De;return Me=>{let je=hI.structUtils.stringifyIdent(Me);if(!k.test(je))return!1;if(De.reference==="unknown")return!0;let St=hI.structUtils.isVirtualLocator(Me),At=St?hI.structUtils.devirtualizeLocator(Me):Me;return!(et&&St&&De.reference!==Me.reference||ct.reference!==At.reference)}}),de=hI.miscUtils.sortMap([...fe],Se=>hI.structUtils.stringifyLocator(Se));return{selection:de.filter(Se=>ue.length===0||ue.some(De=>De(Se))),sortedLookup:de}},{selection:C,sortedLookup:b}=I({all:this.all,recursive:this.recursive});if(C.length===0)throw new SH.UsageError("No package matched your request");let E=new Map;if(this.dependents)for(let ne of b)for(let ce of ne.dependencies.values()){let fe=r.storedResolutions.get(ce.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");hI.miscUtils.getArrayWithDefault(E,fe).push(ne)}let N=new Map;for(let ne of b){if(!hI.structUtils.isVirtualLocator(ne))continue;let ce=hI.structUtils.devirtualizeLocator(ne);hI.miscUtils.getArrayWithDefault(N,ce.locatorHash).push(ne)}let B={},F={children:B},Q=t.makeFetcher(),X={project:r,fetcher:Q,cache:a,checksums:r.storedChecksums,report:new hI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},ae=[async(ne,ce,fe)=>{if(!ce.has("manifest"))return;let ue=await Q.fetch(ne,X),de;try{de=await hI.Manifest.find(ue.prefixPath,{baseFs:ue.packageFs})}finally{ue.releaseFs?.()}fe("Manifest",{License:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,de.license),Homepage:hI.formatUtils.tuple(hI.formatUtils.Type.URL,de.raw.homepage??null)})},async(ne,ce,fe)=>{if(!ce.has("cache"))return;let ue=r.storedChecksums.get(ne.locatorHash)??null,de=a.getLocatorPath(ne,ue),be;if(de!==null)try{be=await Zhl.xfs.statPromise(de)}catch{}let Se=typeof be<"u"?[be.size,hI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,ue),Path:hI.formatUtils.tuple(hI.formatUtils.Type.PATH,de),Size:Se})}];for(let ne of C){let ce=hI.structUtils.isVirtualLocator(ne);if(!this.virtuals&&ce)continue;let fe={},ue={value:[ne,hI.formatUtils.Type.LOCATOR],children:fe};if(B[hI.structUtils.stringifyLocator(ne)]=ue,this.nameOnly){delete ue.children;continue}let de=N.get(ne.locatorHash);typeof de<"u"&&(fe.Instances={label:"Instances",value:hI.formatUtils.tuple(hI.formatUtils.Type.NUMBER,de.length)}),fe.Version={label:"Version",value:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,ne.version)};let be=(De,k)=>{let et={};if(fe[De]=et,Array.isArray(k))et.children=k.map(ct=>({value:ct}));else{let ct={};et.children=ct;for(let[Me,je]of Object.entries(k))typeof je>"u"||(ct[Me]={label:Me,value:je})}};if(!ce){for(let De of ae)await De(ne,o,be);await t.triggerHook(De=>De.fetchPackageInfo,ne,o,be)}ne.bin.size>0&&!ce&&be("Exported Binaries",[...ne.bin.keys()].map(De=>hI.formatUtils.tuple(hI.formatUtils.Type.PATH,De)));let Se=E.get(ne.locatorHash);typeof Se<"u"&&Se.length>0&&be("Dependents",Se.map(De=>hI.formatUtils.tuple(hI.formatUtils.Type.LOCATOR,De))),ne.dependencies.size>0&&!ce&&be("Dependencies",[...ne.dependencies.values()].map(De=>{let k=r.storedResolutions.get(De.descriptorHash),et=typeof k<"u"?r.storedPackages.get(k)??null:null;return hI.formatUtils.tuple(hI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:et})})),ne.peerDependencies.size>0&&ce&&be("Peer dependencies",[...ne.peerDependencies.values()].map(De=>{let k=ne.dependencies.get(De.identHash),et=typeof k<"u"?r.storedResolutions.get(k.descriptorHash)??null:null,ct=et!==null?r.storedPackages.get(et)??null:null;return hI.formatUtils.tuple(hI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:ct})}))}hI.treeUtils.emitTree(F,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};s6e.paths=[["info"]];s6e.usage=SH.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});pXr.default=s6e});var Gcs=H(hXr=>{"use strict";Object.defineProperty(hXr,"__esModule",{value:!0});var IXr=(Pa(),vi(Va)),Dcs=el(),WA=yn(),a6=zs(),kcs=TW(),fXr=IXr.__importDefault(Dfe()),_T=($c(),vi(rg)),xcs=IXr.__importDefault(UC()),Vhl=IXr.__importStar((CZ(),vi(mZ))),Phl=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"},{selector:e=>e<9,name:"approvedGitRepositories",value:["**"]},{selector:e=>e<9,name:"enableScripts",value:!0}],o6e=class extends Dcs.BaseCommand{constructor(){super(...arguments),this.json=_T.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=_T.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=_T.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=_T.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=_T.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=_T.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=_T.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=_T.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Vhl.isEnum(WA.InstallMode)}),this.cacheFolder=_T.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=_T.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=_T.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=_T.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=_T.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=_T.Option.Boolean("--production",{hidden:!0}),this.registry=_T.Option.String("--registry",{hidden:!0}),this.silent=_T.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=_T.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await WA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,n=await(0,WA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!fXr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!fXr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!fXr.default.NETLIFY}]);if(n!==null)return n;let a=this.mode===WA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new _T.UsageError(`${WA.formatUtils.pretty(t,"--immutable",WA.formatUtils.Type.CODE)} and ${WA.formatUtils.pretty(t,"--immutable-cache",WA.formatUtils.Type.CODE)} cannot be used with ${WA.formatUtils.pretty(t,"--mode=update-lockfile",WA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,l=this.immutableCache&&!a;if(t.projectCwd!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q=!1;await Mhl(t,o)&&(F.reportInfo(WA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),Q=!0),await Ohl(t,o)&&(F.reportInfo(WA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),Q=!0),Q&&F.reportSeparator()});if(B.hasErrors())return B.exitCode()}if(t.projectCwd!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{if(WA.Configuration.telemetry?.isNew)WA.Configuration.telemetry.commitTips(),F.reportInfo(WA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),F.reportInfo(WA.MessageName.TELEMETRY_NOTICE,`Run ${WA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",WA.formatUtils.Type.CODE)} to disable`),F.reportSeparator();else if(WA.Configuration.telemetry?.shouldShowTips){let Q=await WA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(Q!==null){let X=null;if(WA.YarnVersion!==null){let ne=xcs.default.prerelease(WA.YarnVersion)?"canary":"stable",ce=Q.latest[ne];ce!==null&&xcs.default.gt(ce,WA.YarnVersion)&&(X=[ne,ce])}if(X)WA.Configuration.telemetry.commitTips(),F.reportInfo(WA.MessageName.VERSION_NOTICE,`${WA.formatUtils.applyStyle(t,`A new ${X[0]} version of Yarn is available:`,WA.formatUtils.Style.BOLD)} ${WA.structUtils.prettyReference(t,X[1])}!`),F.reportInfo(WA.MessageName.VERSION_NOTICE,`Upgrade now by running ${WA.formatUtils.pretty(t,`yarn set version ${X[1]}`,WA.formatUtils.Type.CODE)}`),F.reportSeparator();else{let ae=WA.Configuration.telemetry.selectTip(Q.tips);ae&&(F.reportInfo(WA.MessageName.TIPS_NOTICE,WA.formatUtils.pretty(t,ae.message,WA.formatUtils.Type.MARKDOWN_INLINE)),ae.url&&F.reportInfo(WA.MessageName.TIPS_NOTICE,`Learn more at ${ae.url}`),F.reportSeparator())}}}});if(B.hasErrors())return B.exitCode()}let{project:A,workspace:f}=await WA.Project.find(t,this.context.cwd),I=A.lockfileLastVersion;if(I!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q={};for(let X of Phl)X.selector(I)&&typeof t.sources.get(X.name)>"u"&&(t.use("",{[X.name]:X.value},A.cwd,{overwrite:!0}),Q[X.name]=X.value);Object.keys(Q).length>0&&(await WA.Configuration.updateConfiguration(A.cwd,Q),F.reportInfo(WA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),F.reportSeparator())});if(B.hasErrors())return B.exitCode()}let C=await WA.Cache.find(t,{immutable:l,check:this.checkCache});if(!f)throw new Dcs.WorkspaceRequiredError(A.cwd,this.context.cwd);await A.restoreInstallState({restoreResolutions:!1});let b=t.get("enableHardenedMode");b&&typeof t.sources.get("enableHardenedMode")>"u"&&await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async B=>{B.reportWarning(WA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),B.reportWarning(WA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${WA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),B.reportSeparator()}),(this.refreshLockfile??b)&&(A.lockfileNeedsRefresh=!0);let E=this.checkResolutions??b;return(await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async B=>{await A.install({cache:C,report:B,immutable:o,checkResolutions:E,mode:this.mode})})).exitCode()}};o6e.paths=[["install"],_T.Command.Default];o6e.usage=_T.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});hXr.default=o6e;var Whl="<<<<<<<";async function Ohl(e,t){if(!e.projectCwd)return!1;let r=a6.ppath.join(e.projectCwd,a6.Filename.lockfile);if(!await a6.xfs.existsPromise(r)||!(await a6.xfs.readFilePromise(r,"utf8")).includes(Whl))return!1;if(t)throw new WA.ReportError(WA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await WA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await WA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await WA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new WA.ReportError(WA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async A=>{let f=await WA.execUtils.execvp("git",["show",`${A}:./${a6.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new WA.ReportError(WA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${A}`);try{return(0,kcs.parseSyml)(f.stdout)}catch{throw new WA.ReportError(WA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(A=>!!A.__metadata);for(let A of o){if(A.__metadata.version<7)for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=WA.structUtils.parseDescriptor(f,!0),C=e.normalizeDependency(I),b=WA.structUtils.stringifyDescriptor(C);b!==f&&(A[b]=A[f],delete A[f])}for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=A[f].checksum;typeof I>"u"||I.includes("/")||(A[f].checksum=`${A.__metadata.cacheKey}/${I}`)}}let l=Object.assign({},...o);l.__metadata.version=`${Math.min(...o.map(A=>parseInt(A.__metadata.version??0)))}`,l.__metadata.cacheKey="merged";for(let[A,f]of Object.entries(l))typeof f=="string"&&delete l[A];return await a6.xfs.changeFilePromise(r,(0,kcs.stringifySyml)(l),{automaticNewlines:!0}),!0}async function Mhl(e,t){if(!e.projectCwd)return!1;let r=[],n=a6.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await WA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let l=o.filter(A=>{if(!A.path)return!0;let f=a6.ppath.resolve(e.projectCwd,A.path),I=WA.LEGACY_PLUGINS.has(A.spec)&&a6.ppath.contains(n,f);return I&&r.push(f),!I});return l.length===0?WA.Configuration.deleteProperty:l.length===o.length?o:l}},{immutable:t})?(await Promise.all(r.map(async o=>{await a6.xfs.removePromise(o)})),!0):!1}});var Fcs=H(_Xr=>{"use strict";Object.defineProperty(_Xr,"__esModule",{value:!0});var mXr=el(),zxe=yn(),CXr=zs(),Tte=($c(),vi(rg)),a6e=class extends mXr.BaseCommand{constructor(){super(...arguments),this.all=Tte.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=Tte.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=Tte.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=Tte.Option.Rest()}async execute(){let t=await zxe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await zxe.Project.find(t,this.context.cwd),a=await zxe.Cache.find(t);if(!n)throw new mXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,l=[];for(let A of this.destinations){let f=CXr.ppath.resolve(this.context.cwd,CXr.npath.toPortablePath(A)),I=await zxe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await zxe.Project.find(I,f);if(r.cwd===C.cwd)throw new Tte.UsageError(`Invalid destination '${A}'; Can't link the project to itself`);if(!b)throw new mXr.WorkspaceRequiredError(C.cwd,f);if(this.all){let E=!1;for(let N of C.workspaces)N.manifest.name&&(!N.manifest.private||this.private)&&(l.push(N),E=!0);if(!E)throw new Tte.UsageError(`No workspace found to be linked in the target project: ${A}`)}else{if(!b.manifest.name)throw new Tte.UsageError(`The target workspace at '${A}' doesn't have a name and thus cannot be linked`);if(b.manifest.private&&!this.private)throw new Tte.UsageError(`The target workspace at '${A}' is marked private - use the --private flag to link it anyway`);l.push(b)}}for(let A of l){let f=zxe.structUtils.stringifyIdent(A.anchoredLocator),I=this.relative?CXr.ppath.relative(r.cwd,A.cwd):A.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${I}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};a6e.paths=[["link"]];a6e.usage=Tte.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});_Xr.default=a6e});var Lcs=H(yXr=>{"use strict";Object.defineProperty(yXr,"__esModule",{value:!0});var Hhl=el(),Zcs=($c(),vi(rg)),c6e=class extends Hhl.BaseCommand{constructor(){super(...arguments),this.args=Zcs.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};c6e.paths=[["node"]];c6e.usage=Zcs.Command.Usage({description:"run node with the hook already setup",details:` This command simply runs Node. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). The Node process will use the exact same version of Node as the one used to run Yarn itself, which might be a good way to ensure that your commands always use a consistent Node version. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});pXr.default=o6e});var Ecs=H(fXr=>{"use strict";Object.defineProperty(fXr,"__esModule",{value:!0});var qIl=el(),c6=Sn(),bcs=($c(),vi(rg)),a6e=class extends qIl.BaseCommand{constructor(){super(...arguments),this.json=bcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await c6.Configuration.find(this.context.cwd,this.context.plugins),r=await c6.Configuration.findRcFiles(this.context.cwd);return(await c6.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let l of o.data.plugins){if(!l.checksum||!l.spec.match(/^https?:/))continue;let A=await c6.httpUtils.get(l.spec,{configuration:t}),f=c6.hashUtils.makeHash(A);if(l.checksum===f)continue;let I=c6.formatUtils.pretty(t,l.path,c6.formatUtils.Type.PATH),C=c6.formatUtils.pretty(t,l.spec,c6.formatUtils.Type.URL),b=`${I} is different from the file provided by ${C}`;a.reportJson({...l,newChecksum:f}),a.reportError(c6.MessageName.UNNAMED,b)}})).exitCode()}};a6e.paths=[["plugin","check"]];a6e.usage=bcs.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` + `,examples:[["Run a Node script","$0 node ./my-script.js"]]});yXr.default=c6e});var Pcs=H(bXr=>{"use strict";Object.defineProperty(bXr,"__esModule",{value:!0});var Yhl=el(),c6=yn(),Vcs=($c(),vi(rg)),l6e=class extends Yhl.BaseCommand{constructor(){super(...arguments),this.json=Vcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await c6.Configuration.find(this.context.cwd,this.context.plugins),r=await c6.Configuration.findRcFiles(this.context.cwd);return(await c6.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let l of o.data.plugins){if(!l.checksum||!l.spec.match(/^https?:/))continue;let A=await c6.httpUtils.get(l.spec,{configuration:t}),f=c6.hashUtils.makeHash(A);if(l.checksum===f)continue;let I=c6.formatUtils.pretty(t,l.path,c6.formatUtils.Type.PATH),C=c6.formatUtils.pretty(t,l.spec,c6.formatUtils.Type.URL),b=`${I} is different from the file provided by ${C}`;a.reportJson({...l,newChecksum:f}),a.reportError(c6.MessageName.UNNAMED,b)}})).exitCode()}};l6e.paths=[["plugin","check"]];l6e.usage=Vcs.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` Check only the plugins from https. If this command detects any plugin differences in the CI environment, it will throw an error. - `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});fXr.default=a6e});var u6e=H(sxt=>{"use strict";Object.defineProperty(sxt,"__esModule",{value:!0});sxt.getAvailablePlugins=vcs;var $Il=el(),c6e=Sn(),ehl=TW(),Scs=($c(),vi(rg)),thl="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function vcs(e,t){let r=await c6e.httpUtils.get(thl,{configuration:e}),n=(0,ehl.parseSyml)(r.toString());return Object.fromEntries(Object.entries(n).filter(([a,o])=>!t||c6e.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var l6e=class extends $Il.BaseCommand{constructor(){super(...arguments),this.json=Scs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await c6e.Configuration.find(this.context.cwd,this.context.plugins);return(await c6e.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{let a=await vcs(t,c6e.YarnVersion);for(let[o,{experimental:l,...A}]of Object.entries(a)){let f=o;l&&(f+=" [experimental]"),n.reportJson({name:o,experimental:l,...A}),n.reportInfo(null,f)}})).exitCode()}};l6e.paths=[["plugin","list"]];l6e.usage=Scs.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});sxt.default=l6e});var IXr=H(A6e=>{"use strict";Object.defineProperty(A6e,"__esModule",{value:!0});A6e.runWorkflow=oxt;A6e.prepareRepo=wcs;var rhl=el(),vH=Sn(),MV=ro(),Tte=($c(),vi(rg)),nhl=wt("os"),ihl=hXr(),shl=u6e(),ohl=nxt(),ahl=/^[0-9]+$/,chl=process.platform==="win32";function Bcs(e){return ahl.test(e)?`pull/${e}/head`:e}var lhl=({repository:e,branch:t},r)=>[["git","init",MV.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",Bcs(t)],["git","reset","--hard","FETCH_HEAD"]],uhl=({branch:e})=>[["git","fetch","origin","--depth=1",Bcs(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],ghl=({plugins:e,noMinify:t},r,n)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",MV.ppath.resolve(n,a)])),...t?["--no-minify"]:[],"|"],[chl?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",MV.npath.fromPortablePath(r),"|"]],g6e=class extends rhl.BaseCommand{constructor(){super(...arguments),this.installPath=Tte.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Tte.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Tte.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Tte.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Tte.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Tte.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Tte.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Tte.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await vH.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await vH.Project.find(t,this.context.cwd),n=typeof this.installPath<"u"?MV.ppath.resolve(this.context.cwd,MV.npath.toPortablePath(this.installPath)):MV.ppath.resolve(MV.npath.toPortablePath((0,nhl.tmpdir)()),"yarnpkg-sources",vH.hashUtils.makeHash(this.repository).slice(0,6));return(await vH.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await wcs(this,{configuration:t,report:o,target:n}),o.reportSeparator(),o.reportInfo(vH.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let l=await vH.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:n,strict:!0}),A=MV.ppath.join(n,`packages/yarnpkg-cli/bundles/yarn-${l.stdout.trim()}.js`);MV.xfs.existsSync(A)||(await oxt(ghl(this,A,n),{configuration:t,context:this.context,target:n}),o.reportSeparator());let f=await MV.xfs.readFilePromise(A);if(!this.dryRun){let{bundleVersion:I}=await(0,ohl.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await Ahl(this,I,{project:r,report:o,target:n})}})).exitCode()}};g6e.paths=[["set","version","from","sources"]];g6e.usage=Tte.Command.Usage({description:"build Yarn from master",details:` + `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});bXr.default=l6e});var A6e=H(lxt=>{"use strict";Object.defineProperty(lxt,"__esModule",{value:!0});lxt.getAvailablePlugins=Ocs;var Qhl=el(),u6e=yn(),Xhl=TW(),Wcs=($c(),vi(rg)),Jhl="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function Ocs(e,t){let r=await u6e.httpUtils.get(Jhl,{configuration:e}),n=(0,Xhl.parseSyml)(r.toString());return Object.fromEntries(Object.entries(n).filter(([a,o])=>!t||u6e.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var g6e=class extends Qhl.BaseCommand{constructor(){super(...arguments),this.json=Wcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await u6e.Configuration.find(this.context.cwd,this.context.plugins);return(await u6e.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{let a=await Ocs(t,u6e.YarnVersion);for(let[o,{experimental:l,...A}]of Object.entries(a)){let f=o;l&&(f+=" [experimental]"),n.reportJson({name:o,experimental:l,...A}),n.reportInfo(null,f)}})).exitCode()}};g6e.paths=[["plugin","list"]];g6e.usage=Wcs.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});lxt.default=g6e});var EXr=H(p6e=>{"use strict";Object.defineProperty(p6e,"__esModule",{value:!0});p6e.runWorkflow=uxt;p6e.prepareRepo=Hcs;var Uhl=el(),vH=yn(),MV=zs(),Rte=($c(),vi(rg)),Khl=wt("os"),jhl=SXr(),zhl=A6e(),qhl=axt(),$hl=/^[0-9]+$/,eml=process.platform==="win32";function Mcs(e){return $hl.test(e)?`pull/${e}/head`:e}var tml=({repository:e,branch:t},r)=>[["git","init",MV.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",Mcs(t)],["git","reset","--hard","FETCH_HEAD"]],rml=({branch:e})=>[["git","fetch","origin","--depth=1",Mcs(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],nml=({plugins:e,noMinify:t},r,n)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",MV.ppath.resolve(n,a)])),...t?["--no-minify"]:[],"|"],[eml?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",MV.npath.fromPortablePath(r),"|"]],d6e=class extends Uhl.BaseCommand{constructor(){super(...arguments),this.installPath=Rte.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Rte.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Rte.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Rte.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Rte.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Rte.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Rte.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Rte.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await vH.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await vH.Project.find(t,this.context.cwd),n=typeof this.installPath<"u"?MV.ppath.resolve(this.context.cwd,MV.npath.toPortablePath(this.installPath)):MV.ppath.resolve(MV.npath.toPortablePath((0,Khl.tmpdir)()),"yarnpkg-sources",vH.hashUtils.makeHash(this.repository).slice(0,6));return(await vH.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await Hcs(this,{configuration:t,report:o,target:n}),o.reportSeparator(),o.reportInfo(vH.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let l=await vH.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:n,strict:!0}),A=MV.ppath.join(n,`packages/yarnpkg-cli/bundles/yarn-${l.stdout.trim()}.js`);MV.xfs.existsSync(A)||(await uxt(nml(this,A,n),{configuration:t,context:this.context,target:n}),o.reportSeparator());let f=await MV.xfs.readFilePromise(A);if(!this.dryRun){let{bundleVersion:I}=await(0,qhl.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await iml(this,I,{project:r,report:o,target:n})}})).exitCode()}};d6e.paths=[["set","version","from","sources"]];d6e.usage=Rte.Command.Usage({description:"build Yarn from master",details:` This command will clone the Yarn repository into a temporary folder, then build it. The resulting bundle will then be copied into the local project. By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});A6e.default=g6e;async function oxt(e,{configuration:t,context:r,target:n}){for(let[a,...o]of e){let l=o[o.length-1]==="|";if(l&&o.pop(),l)await vH.execUtils.pipevp(a,o,{cwd:n,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${vH.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} -`);try{await vH.execUtils.execvp(a,o,{cwd:n,strict:!0})}catch(A){throw r.stdout.write(A.stdout||A.stack),A}}}}async function wcs(e,{configuration:t,report:r,target:n}){let a=!1;if(!e.force&&MV.xfs.existsSync(MV.ppath.join(n,".git"))){r.reportInfo(vH.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await oxt(uhl(e),{configuration:t,context:e.context,target:n}),a=!0}catch{r.reportSeparator(),r.reportWarning(vH.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(vH.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await MV.xfs.removePromise(n),await MV.xfs.mkdirPromise(n,{recursive:!0}),await oxt(lhl(e,n),{configuration:t,context:e.context,target:n}))}async function Ahl(e,t,{project:r,report:n,target:a}){let o=await(0,shl.getAvailablePlugins)(r.configuration,t),l=new Set(Object.keys(o));for(let A of r.configuration.plugins.keys())l.has(A)&&await(0,ihl.buildAndSavePlugin)(A,e,{project:r,report:n,target:a})}});var CXr=H(axt=>{"use strict";Object.defineProperty(axt,"__esModule",{value:!0});axt.savePlugin=Tcs;var dhl=(Pa(),vi(Va)),phl=el(),GO=Sn(),cx=Sn(),Rte=ro(),mXr=($c(),vi(rg)),fhl=dhl.__importDefault(UC()),Ihl=wt("vm"),hhl=u6e(),d6e=class extends phl.BaseCommand{constructor(){super(...arguments),this.name=mXr.Option.String(),this.checksum=mXr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await GO.Configuration.find(this.context.cwd,this.context.plugins);return(await GO.StreamReport.start({configuration:t,stdout:this.context.stdout},async n=>{let{project:a}=await GO.Project.find(t,this.context.cwd),o,l;if(this.name.match(/^\.{0,2}[\\/]/)||Rte.npath.isAbsolute(this.name)){let A=Rte.ppath.resolve(this.context.cwd,Rte.npath.toPortablePath(this.name));n.reportInfo(GO.MessageName.UNNAMED,`Reading ${cx.formatUtils.pretty(t,A,cx.formatUtils.Type.PATH)}`),o=Rte.ppath.relative(a.cwd,A),l=await Rte.xfs.readFilePromise(A)}else{let A;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new GO.ReportError(GO.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,A=this.name}else{let f=cx.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!fhl.default.valid(f.reference))throw new GO.ReportError(GO.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let I=cx.structUtils.stringifyIdent(f),C=await(0,hhl.getAvailablePlugins)(t,cx.YarnVersion);if(!Object.hasOwn(C,I)){let b=`Couldn't find a plugin named ${cx.structUtils.prettyIdent(t,f)} on the remote registry. -`;throw t.plugins.has(I)?b+=`A plugin named ${cx.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:b+=`Note that only the plugins referenced on our website (${cx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",cx.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${cx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",cx.formatUtils.Type.URL)}).`,new GO.ReportError(GO.MessageName.PLUGIN_NAME_NOT_FOUND,b)}o=I,A=C[I].url,f.reference!=="unknown"?A=A.replace(/\/master\//,`/${I}/${f.reference}/`):cx.YarnVersion!==null&&(A=A.replace(/\/master\//,`/@yarnpkg/cli/${cx.YarnVersion}/`))}n.reportInfo(GO.MessageName.UNNAMED,`Downloading ${cx.formatUtils.pretty(t,A,"green")}`),l=await cx.httpUtils.get(A,{configuration:t})}await Tcs(o,l,{checksum:this.checksum,project:a,report:n})})).exitCode()}};d6e.paths=[["plugin","import"]];d6e.usage=mXr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` + `,examples:[["Build Yarn from master","$0 set version from sources"]]});p6e.default=d6e;async function uxt(e,{configuration:t,context:r,target:n}){for(let[a,...o]of e){let l=o[o.length-1]==="|";if(l&&o.pop(),l)await vH.execUtils.pipevp(a,o,{cwd:n,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${vH.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} +`);try{await vH.execUtils.execvp(a,o,{cwd:n,strict:!0})}catch(A){throw r.stdout.write(A.stdout||A.stack),A}}}}async function Hcs(e,{configuration:t,report:r,target:n}){let a=!1;if(!e.force&&MV.xfs.existsSync(MV.ppath.join(n,".git"))){r.reportInfo(vH.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await uxt(rml(e),{configuration:t,context:e.context,target:n}),a=!0}catch{r.reportSeparator(),r.reportWarning(vH.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(vH.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await MV.xfs.removePromise(n),await MV.xfs.mkdirPromise(n,{recursive:!0}),await uxt(tml(e,n),{configuration:t,context:e.context,target:n}))}async function iml(e,t,{project:r,report:n,target:a}){let o=await(0,zhl.getAvailablePlugins)(r.configuration,t),l=new Set(Object.keys(o));for(let A of r.configuration.plugins.keys())l.has(A)&&await(0,jhl.buildAndSavePlugin)(A,e,{project:r,report:n,target:a})}});var BXr=H(gxt=>{"use strict";Object.defineProperty(gxt,"__esModule",{value:!0});gxt.savePlugin=Ycs;var sml=(Pa(),vi(Va)),oml=el(),GO=yn(),cx=yn(),Nte=zs(),vXr=($c(),vi(rg)),aml=sml.__importDefault(UC()),cml=wt("vm"),lml=A6e(),f6e=class extends oml.BaseCommand{constructor(){super(...arguments),this.name=vXr.Option.String(),this.checksum=vXr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await GO.Configuration.find(this.context.cwd,this.context.plugins);return(await GO.StreamReport.start({configuration:t,stdout:this.context.stdout},async n=>{let{project:a}=await GO.Project.find(t,this.context.cwd),o,l;if(this.name.match(/^\.{0,2}[\\/]/)||Nte.npath.isAbsolute(this.name)){let A=Nte.ppath.resolve(this.context.cwd,Nte.npath.toPortablePath(this.name));n.reportInfo(GO.MessageName.UNNAMED,`Reading ${cx.formatUtils.pretty(t,A,cx.formatUtils.Type.PATH)}`),o=Nte.ppath.relative(a.cwd,A),l=await Nte.xfs.readFilePromise(A)}else{let A;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new GO.ReportError(GO.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,A=this.name}else{let f=cx.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!aml.default.valid(f.reference))throw new GO.ReportError(GO.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let I=cx.structUtils.stringifyIdent(f),C=await(0,lml.getAvailablePlugins)(t,cx.YarnVersion);if(!Object.hasOwn(C,I)){let b=`Couldn't find a plugin named ${cx.structUtils.prettyIdent(t,f)} on the remote registry. +`;throw t.plugins.has(I)?b+=`A plugin named ${cx.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:b+=`Note that only the plugins referenced on our website (${cx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",cx.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${cx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",cx.formatUtils.Type.URL)}).`,new GO.ReportError(GO.MessageName.PLUGIN_NAME_NOT_FOUND,b)}o=I,A=C[I].url,f.reference!=="unknown"?A=A.replace(/\/master\//,`/${I}/${f.reference}/`):cx.YarnVersion!==null&&(A=A.replace(/\/master\//,`/@yarnpkg/cli/${cx.YarnVersion}/`))}n.reportInfo(GO.MessageName.UNNAMED,`Downloading ${cx.formatUtils.pretty(t,A,"green")}`),l=await cx.httpUtils.get(A,{configuration:t})}await Ycs(o,l,{checksum:this.checksum,project:a,report:n})})).exitCode()}};f6e.paths=[["plugin","import"]];f6e.usage=vXr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. Three types of plugin references are accepted: @@ -1358,23 +1358,23 @@ ${A} If the \`--no-checksum\` option is set, Yarn will no longer care if the plugin is modified. Plugins cannot be downloaded from the npm registry, and aren't allowed to have dependencies (they need to be bundled into a single file, possibly thanks to the \`@yarnpkg/builder\` package). - `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});axt.default=d6e;async function Tcs(e,t,{checksum:r=!0,project:n,report:a}){let{configuration:o}=n,l={},A={exports:l};(0,Ihl.runInNewContext)(t.toString(),{module:A,exports:l});let I=`.yarn/plugins/${A.exports.name}.cjs`,C=Rte.ppath.resolve(n.cwd,I);a.reportInfo(GO.MessageName.UNNAMED,`Saving the new plugin in ${cx.formatUtils.pretty(o,I,"magenta")}`),await Rte.xfs.mkdirPromise(Rte.ppath.dirname(C),{recursive:!0}),await Rte.xfs.writeFilePromise(C,t);let b={path:I,spec:e};r&&(b.checksum=cx.hashUtils.makeHash(t)),await GO.Configuration.addPlugin(n.cwd,[b])}});var hXr=H(lxt=>{"use strict";Object.defineProperty(lxt,"__esModule",{value:!0});lxt.buildAndSavePlugin=Ncs;var mhl=el(),cxt=Sn(),jxe=Sn(),zxe=ro(),L_e=($c(),vi(rg)),Chl=wt("os"),Rcs=IXr(),_hl=CXr(),yhl=u6e(),bhl=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],p6e=class extends mhl.BaseCommand{constructor(){super(...arguments),this.installPath=L_e.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=L_e.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=L_e.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=L_e.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=L_e.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=L_e.Option.String()}async execute(){let t=await jxe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?zxe.ppath.resolve(this.context.cwd,zxe.npath.toPortablePath(this.installPath)):zxe.ppath.resolve(zxe.npath.toPortablePath((0,Chl.tmpdir)()),"yarnpkg-sources",cxt.hashUtils.makeHash(this.repository).slice(0,6));return(await jxe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await jxe.Project.find(t,this.context.cwd),l=cxt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),A=cxt.structUtils.stringifyIdent(l),f=await(0,yhl.getAvailablePlugins)(t,cxt.YarnVersion);if(!Object.hasOwn(f,A))throw new jxe.ReportError(jxe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${A}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let I=A;await(0,Rcs.prepareRepo)(this,{configuration:t,report:a,target:r}),await Ncs(I,this,{project:o,report:a,target:r})})).exitCode()}};p6e.paths=[["plugin","import","from","sources"]];p6e.usage=L_e.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` + `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});gxt.default=f6e;async function Ycs(e,t,{checksum:r=!0,project:n,report:a}){let{configuration:o}=n,l={},A={exports:l};(0,cml.runInNewContext)(t.toString(),{module:A,exports:l});let I=`.yarn/plugins/${A.exports.name}.cjs`,C=Nte.ppath.resolve(n.cwd,I);a.reportInfo(GO.MessageName.UNNAMED,`Saving the new plugin in ${cx.formatUtils.pretty(o,I,"magenta")}`),await Nte.xfs.mkdirPromise(Nte.ppath.dirname(C),{recursive:!0}),await Nte.xfs.writeFilePromise(C,t);let b={path:I,spec:e};r&&(b.checksum=cx.hashUtils.makeHash(t)),await GO.Configuration.addPlugin(n.cwd,[b])}});var SXr=H(dxt=>{"use strict";Object.defineProperty(dxt,"__esModule",{value:!0});dxt.buildAndSavePlugin=Xcs;var uml=el(),Axt=yn(),qxe=yn(),$xe=zs(),V_e=($c(),vi(rg)),gml=wt("os"),Qcs=EXr(),Aml=BXr(),dml=A6e(),pml=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],I6e=class extends uml.BaseCommand{constructor(){super(...arguments),this.installPath=V_e.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=V_e.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=V_e.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=V_e.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=V_e.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=V_e.Option.String()}async execute(){let t=await qxe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?$xe.ppath.resolve(this.context.cwd,$xe.npath.toPortablePath(this.installPath)):$xe.ppath.resolve($xe.npath.toPortablePath((0,gml.tmpdir)()),"yarnpkg-sources",Axt.hashUtils.makeHash(this.repository).slice(0,6));return(await qxe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await qxe.Project.find(t,this.context.cwd),l=Axt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),A=Axt.structUtils.stringifyIdent(l),f=await(0,dml.getAvailablePlugins)(t,Axt.YarnVersion);if(!Object.hasOwn(f,A))throw new qxe.ReportError(qxe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${A}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let I=A;await(0,Qcs.prepareRepo)(this,{configuration:t,report:a,target:r}),await Xcs(I,this,{project:o,report:a,target:r})})).exitCode()}};I6e.paths=[["plugin","import","from","sources"]];I6e.usage=V_e.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` This command clones the Yarn repository into a temporary folder, builds the specified contrib plugin and updates the configuration to reference it in further CLI invocations. The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});lxt.default=p6e;async function Ncs(e,{context:t,noMinify:r},{project:n,report:a,target:o}){let l=e.replace(/@yarnpkg\//,""),{configuration:A}=n;a.reportSeparator(),a.reportInfo(jxe.MessageName.UNNAMED,`Building a fresh ${l}`),a.reportSeparator(),await(0,Rcs.runWorkflow)(bhl({pluginName:l,noMinify:r},o),{configuration:A,context:t,target:o}),a.reportSeparator();let f=zxe.ppath.resolve(o,`packages/${l}/bundles/${e}.js`),I=await zxe.xfs.readFilePromise(f);await(0,_hl.savePlugin)(e,I,{project:n,report:a})}});var Dcs=H(bXr=>{"use strict";Object.defineProperty(bXr,"__esModule",{value:!0});var Ehl=el(),O4=Sn(),_Xr=ro(),yXr=($c(),vi(rg)),f6e=class extends Ehl.BaseCommand{constructor(){super(...arguments),this.name=yXr.Option.String()}async execute(){let t=await O4.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await O4.Project.find(t,this.context.cwd);return(await O4.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,l=O4.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new yXr.UsageError(`${O4.structUtils.prettyIdent(t,l)} isn't referenced by the current configuration`);let A=`.yarn/plugins/${o}.cjs`,f=_Xr.ppath.resolve(r.cwd,A);_Xr.xfs.existsSync(f)&&(a.reportInfo(O4.MessageName.UNNAMED,`Removing ${O4.formatUtils.pretty(t,A,O4.formatUtils.Type.PATH)}...`),await _Xr.xfs.removePromise(f)),a.reportInfo(O4.MessageName.UNNAMED,"Updating the configuration..."),await O4.Configuration.updateConfiguration(r.cwd,{plugins:I=>{if(!Array.isArray(I))return I;let C=I.filter(b=>b.path!==A);return C.length===0?O4.Configuration.deleteProperty:C.length===I.length?I:C}})})).exitCode()}};f6e.paths=[["plugin","remove"]];f6e.usage=yXr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` + `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});dxt.default=I6e;async function Xcs(e,{context:t,noMinify:r},{project:n,report:a,target:o}){let l=e.replace(/@yarnpkg\//,""),{configuration:A}=n;a.reportSeparator(),a.reportInfo(qxe.MessageName.UNNAMED,`Building a fresh ${l}`),a.reportSeparator(),await(0,Qcs.runWorkflow)(pml({pluginName:l,noMinify:r},o),{configuration:A,context:t,target:o}),a.reportSeparator();let f=$xe.ppath.resolve(o,`packages/${l}/bundles/${e}.js`),I=await $xe.xfs.readFilePromise(f);await(0,Aml.savePlugin)(e,I,{project:n,report:a})}});var Jcs=H(RXr=>{"use strict";Object.defineProperty(RXr,"__esModule",{value:!0});var fml=el(),O4=yn(),wXr=zs(),TXr=($c(),vi(rg)),h6e=class extends fml.BaseCommand{constructor(){super(...arguments),this.name=TXr.Option.String()}async execute(){let t=await O4.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await O4.Project.find(t,this.context.cwd);return(await O4.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,l=O4.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new TXr.UsageError(`${O4.structUtils.prettyIdent(t,l)} isn't referenced by the current configuration`);let A=`.yarn/plugins/${o}.cjs`,f=wXr.ppath.resolve(r.cwd,A);wXr.xfs.existsSync(f)&&(a.reportInfo(O4.MessageName.UNNAMED,`Removing ${O4.formatUtils.pretty(t,A,O4.formatUtils.Type.PATH)}...`),await wXr.xfs.removePromise(f)),a.reportInfo(O4.MessageName.UNNAMED,"Updating the configuration..."),await O4.Configuration.updateConfiguration(r.cwd,{plugins:I=>{if(!Array.isArray(I))return I;let C=I.filter(b=>b.path!==A);return C.length===0?O4.Configuration.deleteProperty:C.length===I.length?I:C}})})).exitCode()}};h6e.paths=[["plugin","remove"]];h6e.usage=TXr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. **Note:** The plugins have to be referenced by their name property, which can be obtained using the \`yarn plugin runtime\` command. Shorthands are not allowed. - `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});bXr.default=f6e});var Gcs=H(EXr=>{"use strict";Object.defineProperty(EXr,"__esModule",{value:!0});var Shl=el(),kcs=Sn(),xcs=($c(),vi(rg)),I6e=class extends Shl.BaseCommand{constructor(){super(...arguments),this.json=xcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await kcs.Configuration.find(this.context.cwd,this.context.plugins);return(await kcs.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),l=a;o&&(l+=" [builtin]"),n.reportJson({name:a,builtin:o}),n.reportInfo(null,`${l}`)}})).exitCode()}};I6e.paths=[["plugin","runtime"]];I6e.usage=xcs.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` + `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});RXr.default=h6e});var jcs=H(NXr=>{"use strict";Object.defineProperty(NXr,"__esModule",{value:!0});var Iml=el(),Ucs=yn(),Kcs=($c(),vi(rg)),m6e=class extends Iml.BaseCommand{constructor(){super(...arguments),this.json=Kcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Ucs.Configuration.find(this.context.cwd,this.context.plugins);return(await Ucs.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),l=a;o&&(l+=" [builtin]"),n.reportJson({name:a,builtin:o}),n.reportInfo(null,`${l}`)}})).exitCode()}};m6e.paths=[["plugin","runtime"]];m6e.usage=Kcs.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});EXr.default=I6e});var Vcs=H(vXr=>{"use strict";Object.defineProperty(vXr,"__esModule",{value:!0});var Fcs=el(),Zcs=Sn(),SXr=Sn(),Lcs=($c(),vi(rg)),h6e=class extends Fcs.BaseCommand{constructor(){super(...arguments),this.idents=Lcs.Option.Rest()}async execute(){let t=await Zcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await SXr.Project.find(t,this.context.cwd),a=await Zcs.Cache.find(t);if(!n)throw new Fcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let l of this.idents)o.add(SXr.structUtils.parseIdent(l).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new SXr.ThrowReport}),o.size>0)for(let l of r.storedPackages.values())o.has(l.identHash)&&(r.storedBuildState.delete(l.locatorHash),r.skippedBuilds.delete(l.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};h6e.paths=[["rebuild"]];h6e.usage=Lcs.Command.Usage({description:"rebuild the project's native packages",details:` + `,examples:[["List the currently active plugins","$0 plugin runtime"]]});NXr.default=m6e});var els=H(kXr=>{"use strict";Object.defineProperty(kXr,"__esModule",{value:!0});var zcs=el(),qcs=yn(),DXr=yn(),$cs=($c(),vi(rg)),C6e=class extends zcs.BaseCommand{constructor(){super(...arguments),this.idents=$cs.Option.Rest()}async execute(){let t=await qcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await DXr.Project.find(t,this.context.cwd),a=await qcs.Cache.find(t);if(!n)throw new zcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let l of this.idents)o.add(DXr.structUtils.parseIdent(l).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new DXr.ThrowReport}),o.size>0)for(let l of r.storedPackages.values())o.has(l.identHash)&&(r.storedBuildState.delete(l.locatorHash),r.skippedBuilds.delete(l.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};C6e.paths=[["rebuild"]];C6e.usage=$cs.Command.Usage({description:"rebuild the project's native packages",details:` This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. Note that while Yarn forgets the compilation, the previous artifacts aren't erased from the filesystem and may affect the next builds (in good or bad). To avoid this, you may remove the .yarn/unplugged folder, or any other relevant location where packages might have been stored (Yarn may offer a way to do that automatically in the future). By default all packages will be rebuilt, but you can filter the list by specifying the names of the packages you want to clear from memory. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});vXr.default=h6e});var Ocs=H(TXr=>{"use strict";Object.defineProperty(TXr,"__esModule",{value:!0});var wXr=(Pa(),vi(Va)),Pcs=el(),m6e=Sn(),vhl=Sn(),uxt=Sn(),C6e=($c(),vi(rg)),Wcs=wXr.__importDefault(Ek()),Bhl=wXr.__importStar((CZ(),vi(mZ))),BXr=wXr.__importStar(Pje()),_6e=class extends Pcs.BaseCommand{constructor(){super(...arguments),this.all=C6e.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=C6e.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Bhl.isEnum(vhl.InstallMode)}),this.patterns=C6e.Option.Rest()}async execute(){let t=await m6e.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await m6e.Project.find(t,this.context.cwd),a=await m6e.Cache.find(t);if(!n)throw new Pcs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[n],l=[BXr.Target.REGULAR,BXr.Target.DEVELOPMENT,BXr.Target.PEER],A=[],f=!1,I=[];for(let N of this.patterns){let B=!1,F=uxt.structUtils.parseIdent(N);for(let Q of o){let X=[...Q.manifest.peerDependenciesMeta.keys()];for(let ae of(0,Wcs.default)(X,N))Q.manifest.peerDependenciesMeta.delete(ae),f=!0,B=!0;for(let ae of l){let ne=Q.manifest.getForScope(ae),ce=[...ne.values()].map(fe=>uxt.structUtils.stringifyIdent(fe));for(let fe of(0,Wcs.default)(ce,uxt.structUtils.stringifyIdent(F))){let{identHash:ue}=uxt.structUtils.parseIdent(fe),de=ne.get(ue);if(typeof de>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");Q.manifest[ae].delete(ue),I.push([Q,ae,de]),f=!0,B=!0}}}B||A.push(N)}let C=A.length>1?"Patterns":"Pattern",b=A.length>1?"don't":"doesn't",E=this.all?"any":"this";if(A.length>0)throw new C6e.UsageError(`${C} ${m6e.formatUtils.prettyList(t,A,m6e.formatUtils.Type.CODE)} ${b} match any packages referenced by ${E} workspace`);return f?(await t.triggerMultipleHooks(N=>N.afterWorkspaceDependencyRemoval,I),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};_6e.paths=[["remove"]];_6e.usage=C6e.Command.Usage({description:"remove dependencies from the project",details:` + `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});kXr.default=C6e});var nls=H(FXr=>{"use strict";Object.defineProperty(FXr,"__esModule",{value:!0});var GXr=(Pa(),vi(Va)),tls=el(),_6e=yn(),hml=yn(),pxt=yn(),y6e=($c(),vi(rg)),rls=GXr.__importDefault(Ek()),mml=GXr.__importStar((CZ(),vi(mZ))),xXr=GXr.__importStar(Oje()),b6e=class extends tls.BaseCommand{constructor(){super(...arguments),this.all=y6e.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=y6e.Option.String("--mode",{description:"Change what artifacts installs generate",validator:mml.isEnum(hml.InstallMode)}),this.patterns=y6e.Option.Rest()}async execute(){let t=await _6e.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await _6e.Project.find(t,this.context.cwd),a=await _6e.Cache.find(t);if(!n)throw new tls.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[n],l=[xXr.Target.REGULAR,xXr.Target.DEVELOPMENT,xXr.Target.PEER],A=[],f=!1,I=[];for(let N of this.patterns){let B=!1,F=pxt.structUtils.parseIdent(N);for(let Q of o){let X=[...Q.manifest.peerDependenciesMeta.keys()];for(let ae of(0,rls.default)(X,N))Q.manifest.peerDependenciesMeta.delete(ae),f=!0,B=!0;for(let ae of l){let ne=Q.manifest.getForScope(ae),ce=[...ne.values()].map(fe=>pxt.structUtils.stringifyIdent(fe));for(let fe of(0,rls.default)(ce,pxt.structUtils.stringifyIdent(F))){let{identHash:ue}=pxt.structUtils.parseIdent(fe),de=ne.get(ue);if(typeof de>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");Q.manifest[ae].delete(ue),I.push([Q,ae,de]),f=!0,B=!0}}}B||A.push(N)}let C=A.length>1?"Patterns":"Pattern",b=A.length>1?"don't":"doesn't",E=this.all?"any":"this";if(A.length>0)throw new y6e.UsageError(`${C} ${_6e.formatUtils.prettyList(t,A,_6e.formatUtils.Type.CODE)} ${b} match any packages referenced by ${E} workspace`);return f?(await t.triggerMultipleHooks(N=>N.afterWorkspaceDependencyRemoval,I),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};b6e.paths=[["remove"]];b6e.usage=y6e.Command.Usage({description:"remove dependencies from the project",details:` This command will remove the packages matching the specified patterns from the current workspace. If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: @@ -1384,7 +1384,7 @@ ${A} - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. - `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});TXr.default=_6e});var Hcs=H(NXr=>{"use strict";Object.defineProperty(NXr,"__esModule",{value:!0});var Mcs=el(),RXr=Sn(),whl=Sn(),Thl=($c(),vi(rg)),Rhl=wt("util"),gxt=class extends Mcs.BaseCommand{constructor(){super(...arguments),this.json=Thl.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await RXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await RXr.Project.find(t,this.context.cwd);if(!n)throw new Mcs.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await RXr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let l=n.manifest.scripts,A=whl.miscUtils.sortMap(l.keys(),C=>C),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},I=A.reduce((C,b)=>Math.max(C,b.length),0);for(let[C,b]of l.entries())o.reportInfo(null,`${C.padEnd(I," ")} ${(0,Rhl.inspect)(b,f)}`),o.reportJson({name:C,script:b})})).exitCode()}};gxt.paths=[["run"]];NXr.default=gxt});var Xcs=H(DXr=>{"use strict";Object.defineProperty(DXr,"__esModule",{value:!0});var Ycs=el(),Qcs=Sn(),V_e=Sn(),HV=($c(),vi(rg)),y6e=class extends Ycs.BaseCommand{constructor(){super(...arguments),this.inspect=HV.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=HV.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=HV.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=HV.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=HV.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=HV.Option.Boolean("--silent",{hidden:!0}),this.scriptName=HV.Option.String(),this.args=HV.Option.Proxy()}async execute(){let t=await Qcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n,locator:a}=await Qcs.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await V_e.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await V_e.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let l=await V_e.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(l.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await V_e.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:l})}if(!this.topLevel&&!this.binariesOnly&&n&&this.scriptName.includes(":")){let I=(await Promise.all(r.workspaces.map(async C=>C.manifest.scripts.has(this.scriptName)?C:null))).filter(C=>C!==null);if(I.length===1)return await V_e.scriptUtils.executeWorkspaceScript(I[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new HV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${V_e.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new HV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${V_e.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new HV.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[I,C]of Ycs.pluginCommands)for(let b of C)if(f.length>=b.length&&JSON.stringify(f.slice(0,b.length))===JSON.stringify(b))throw new HV.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${I} plugin. You can install it with "yarn plugin import ${I}".`);throw new HV.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};y6e.paths=[["run"]];y6e.usage=HV.Command.Usage({description:"run a script defined in the package.json",details:` + `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});FXr.default=b6e});var sls=H(LXr=>{"use strict";Object.defineProperty(LXr,"__esModule",{value:!0});var ils=el(),ZXr=yn(),Cml=yn(),_ml=($c(),vi(rg)),yml=wt("util"),fxt=class extends ils.BaseCommand{constructor(){super(...arguments),this.json=_ml.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await ZXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await ZXr.Project.find(t,this.context.cwd);if(!n)throw new ils.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await ZXr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let l=n.manifest.scripts,A=Cml.miscUtils.sortMap(l.keys(),C=>C),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},I=A.reduce((C,b)=>Math.max(C,b.length),0);for(let[C,b]of l.entries())o.reportInfo(null,`${C.padEnd(I," ")} ${(0,yml.inspect)(b,f)}`),o.reportJson({name:C,script:b})})).exitCode()}};fxt.paths=[["run"]];LXr.default=fxt});var cls=H(VXr=>{"use strict";Object.defineProperty(VXr,"__esModule",{value:!0});var ols=el(),als=yn(),P_e=yn(),HV=($c(),vi(rg)),E6e=class extends ols.BaseCommand{constructor(){super(...arguments),this.inspect=HV.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=HV.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=HV.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=HV.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=HV.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=HV.Option.Boolean("--silent",{hidden:!0}),this.scriptName=HV.Option.String(),this.args=HV.Option.Proxy()}async execute(){let t=await als.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n,locator:a}=await als.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await P_e.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await P_e.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let l=await P_e.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(l.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await P_e.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:l})}if(!this.topLevel&&!this.binariesOnly&&n&&this.scriptName.includes(":")){let I=(await Promise.all(r.workspaces.map(async C=>C.manifest.scripts.has(this.scriptName)?C:null))).filter(C=>C!==null);if(I.length===1)return await P_e.scriptUtils.executeWorkspaceScript(I[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new HV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${P_e.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new HV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${P_e.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new HV.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[I,C]of ols.pluginCommands)for(let b of C)if(f.length>=b.length&&JSON.stringify(f.slice(0,b.length))===JSON.stringify(b))throw new HV.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${I} plugin. You can install it with "yarn plugin import ${I}".`);throw new HV.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};E6e.paths=[["run"]];E6e.usage=HV.Command.Usage({description:"run a script defined in the package.json",details:` This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. @@ -1394,43 +1394,43 @@ ${A} - Otherwise, if the specified name contains a colon character and if one of the workspaces in the project contains exactly one script with a matching name, then this script will get executed. Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax). - `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});DXr.default=y6e});var Kcs=H(GXr=>{"use strict";Object.defineProperty(GXr,"__esModule",{value:!0});var Jcs=el(),kXr=Sn(),Ucs=Sn(),xXr=($c(),vi(rg)),b6e=class extends Jcs.BaseCommand{constructor(){super(...arguments),this.descriptor=xXr.Option.String(),this.resolution=xXr.Option.String()}async execute(){let t=await kXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kXr.Project.find(t,this.context.cwd),a=await kXr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!n)throw new Jcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=Ucs.structUtils.parseDescriptor(this.descriptor,!0),l=Ucs.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(l.descriptorHash,l),r.resolutionAliases.set(o.descriptorHash,l.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};b6e.paths=[["set","resolution"]];b6e.usage=xXr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 npm:1.5.0"]]});GXr.default=b6e});var zcs=H(ZXr=>{"use strict";Object.defineProperty(ZXr,"__esModule",{value:!0});var Nhl=(Pa(),vi(Va)),FXr=el(),cue=Sn(),jcs=ro(),E6e=($c(),vi(rg)),Dhl=Nhl.__importDefault(Ek()),S6e=class extends FXr.BaseCommand{constructor(){super(...arguments),this.all=E6e.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=E6e.Option.Rest()}async execute(){let t=await cue.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await cue.Project.find(t,this.context.cwd),a=await cue.Cache.find(t);if(!n)throw new FXr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,l=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:A,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&l.add(A.descriptor.fullName);if(this.leadingArguments.length>0)for(let A of this.leadingArguments){let f=jcs.ppath.resolve(this.context.cwd,jcs.npath.toPortablePath(A));if(cue.miscUtils.isPathLike(A)){let I=await cue.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await cue.Project.find(I,f);if(!b)throw new FXr.WorkspaceRequiredError(C.cwd,f);if(this.all){for(let E of C.workspaces)E.manifest.name&&l.add(cue.structUtils.stringifyIdent(E.anchoredLocator));if(l.size===0)throw new E6e.UsageError("No workspace found to be unlinked in the target project")}else{if(!b.manifest.name)throw new E6e.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");l.add(cue.structUtils.stringifyIdent(b.anchoredLocator))}}else{let I=[...o.manifest.resolutions.map(({pattern:C})=>C.descriptor.fullName)];for(let C of(0,Dhl.default)(I,A))l.add(C)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:A})=>!l.has(A.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};S6e.paths=[["unlink"]];S6e.usage=E6e.Command.Usage({description:"disconnect the local project from another one",details:` + `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});VXr.default=E6e});var gls=H(OXr=>{"use strict";Object.defineProperty(OXr,"__esModule",{value:!0});var lls=el(),PXr=yn(),uls=yn(),WXr=($c(),vi(rg)),S6e=class extends lls.BaseCommand{constructor(){super(...arguments),this.descriptor=WXr.Option.String(),this.resolution=WXr.Option.String()}async execute(){let t=await PXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await PXr.Project.find(t,this.context.cwd),a=await PXr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!n)throw new lls.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=uls.structUtils.parseDescriptor(this.descriptor,!0),l=uls.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(l.descriptorHash,l),r.resolutionAliases.set(o.descriptorHash,l.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};S6e.paths=[["set","resolution"]];S6e.usage=WXr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 npm:1.5.0"]]});OXr.default=S6e});var dls=H(HXr=>{"use strict";Object.defineProperty(HXr,"__esModule",{value:!0});var bml=(Pa(),vi(Va)),MXr=el(),lue=yn(),Als=zs(),v6e=($c(),vi(rg)),Eml=bml.__importDefault(Ek()),B6e=class extends MXr.BaseCommand{constructor(){super(...arguments),this.all=v6e.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=v6e.Option.Rest()}async execute(){let t=await lue.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await lue.Project.find(t,this.context.cwd),a=await lue.Cache.find(t);if(!n)throw new MXr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,l=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:A,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&l.add(A.descriptor.fullName);if(this.leadingArguments.length>0)for(let A of this.leadingArguments){let f=Als.ppath.resolve(this.context.cwd,Als.npath.toPortablePath(A));if(lue.miscUtils.isPathLike(A)){let I=await lue.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await lue.Project.find(I,f);if(!b)throw new MXr.WorkspaceRequiredError(C.cwd,f);if(this.all){for(let E of C.workspaces)E.manifest.name&&l.add(lue.structUtils.stringifyIdent(E.anchoredLocator));if(l.size===0)throw new v6e.UsageError("No workspace found to be unlinked in the target project")}else{if(!b.manifest.name)throw new v6e.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");l.add(lue.structUtils.stringifyIdent(b.anchoredLocator))}}else{let I=[...o.manifest.resolutions.map(({pattern:C})=>C.descriptor.fullName)];for(let C of(0,Eml.default)(I,A))l.add(C)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:A})=>!l.has(A.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};B6e.paths=[["unlink"]];B6e.usage=v6e.Command.Usage({description:"disconnect the local project from another one",details:` This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. - `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});ZXr.default=S6e});var $cs=H(OXr=>{"use strict";Object.defineProperty(OXr,"__esModule",{value:!0});var WXr=(Pa(),vi(Va)),LXr=el(),FO=Sn(),VXr=Sn(),BH=Sn(),wH=($c(),vi(rg)),khl=Zje(),qcs=WXr.__importDefault(Ek()),PXr=WXr.__importStar((CZ(),vi(mZ))),l6=WXr.__importStar(Pje()),qxe=class extends LXr.BaseCommand{constructor(){super(...arguments),this.interactive=wH.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=wH.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=wH.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=wH.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=wH.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=wH.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=wH.Option.String("--mode",{description:"Change what artifacts installs generate",validator:PXr.isEnum(VXr.InstallMode)}),this.patterns=wH.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await BH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await BH.Cache.find(t);if(!n)throw new LXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],l=o.map(I=>FO.structUtils.stringifyIdent(I)),A=new Set;for(let I of this.patterns){if(FO.structUtils.parseDescriptor(I).range!=="unknown")throw new wH.UsageError("Ranges aren't allowed when using --recursive");for(let C of(0,qcs.default)(l,I)){let b=FO.structUtils.parseIdent(C);A.add(b.identHash)}}let f=o.filter(I=>A.has(I.identHash));for(let I of f)r.storedDescriptors.delete(I.descriptorHash),r.storedResolutions.delete(I.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await BH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await BH.Cache.find(t);if(!n)throw new LXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l6.getModifier(this,r),f=l?[l6.Strategy.KEEP,l6.Strategy.REUSE,l6.Strategy.PROJECT,l6.Strategy.LATEST]:[l6.Strategy.PROJECT,l6.Strategy.LATEST],I=[],C=[];for(let F of this.patterns){let Q=!1,X=FO.structUtils.parseDescriptor(F),ae=FO.structUtils.stringifyIdent(X);for(let ne of r.workspaces)for(let ce of[l6.Target.REGULAR,l6.Target.DEVELOPMENT]){let ue=[...ne.manifest.getForScope(ce).values()].map(be=>FO.structUtils.stringifyIdent(be)),de=ae==="*"?ue:(0,qcs.default)(ue,ae);for(let be of de){let Se=FO.structUtils.parseIdent(be),De=ne.manifest[ce].get(Se.identHash);if(typeof De>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let k=FO.structUtils.makeDescriptor(Se,X.range);I.push(Promise.resolve().then(async()=>[ne,ce,De,await l6.getSuggestedDescriptors(k,{project:r,workspace:ne,cache:a,target:ce,fixed:o,modifier:A,strategies:f})])),Q=!0}}Q||C.push(F)}if(C.length>1)throw new wH.UsageError(`Patterns ${BH.formatUtils.prettyList(t,C,BH.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(C.length>0)throw new wH.UsageError(`Pattern ${BH.formatUtils.prettyList(t,C,BH.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let b=await Promise.all(I),E=await BH.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async F=>{for(let[,,Q,{suggestions:X,rejections:ae}]of b){let ne=X.filter(ce=>ce.descriptor!==null);if(ne.length===0){let[ce]=ae;if(typeof ce>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ce);r.configuration.get("enableNetwork")?F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range + `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});HXr.default=B6e});var fls=H(UXr=>{"use strict";Object.defineProperty(UXr,"__esModule",{value:!0});var JXr=(Pa(),vi(Va)),YXr=el(),FO=yn(),QXr=yn(),BH=yn(),wH=($c(),vi(rg)),Sml=Vje(),pls=JXr.__importDefault(Ek()),XXr=JXr.__importStar((CZ(),vi(mZ))),l6=JXr.__importStar(Oje()),eGe=class extends YXr.BaseCommand{constructor(){super(...arguments),this.interactive=wH.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=wH.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=wH.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=wH.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=wH.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=wH.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=wH.Option.String("--mode",{description:"Change what artifacts installs generate",validator:XXr.isEnum(QXr.InstallMode)}),this.patterns=wH.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await BH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await QXr.Project.find(t,this.context.cwd),a=await BH.Cache.find(t);if(!n)throw new YXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],l=o.map(I=>FO.structUtils.stringifyIdent(I)),A=new Set;for(let I of this.patterns){if(FO.structUtils.parseDescriptor(I).range!=="unknown")throw new wH.UsageError("Ranges aren't allowed when using --recursive");for(let C of(0,pls.default)(l,I)){let b=FO.structUtils.parseIdent(C);A.add(b.identHash)}}let f=o.filter(I=>A.has(I.identHash));for(let I of f)r.storedDescriptors.delete(I.descriptorHash),r.storedResolutions.delete(I.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await BH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await QXr.Project.find(t,this.context.cwd),a=await BH.Cache.find(t);if(!n)throw new YXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l6.getModifier(this,r),f=l?[l6.Strategy.KEEP,l6.Strategy.REUSE,l6.Strategy.PROJECT,l6.Strategy.LATEST]:[l6.Strategy.PROJECT,l6.Strategy.LATEST],I=[],C=[];for(let F of this.patterns){let Q=!1,X=FO.structUtils.parseDescriptor(F),ae=FO.structUtils.stringifyIdent(X);for(let ne of r.workspaces)for(let ce of[l6.Target.REGULAR,l6.Target.DEVELOPMENT]){let ue=[...ne.manifest.getForScope(ce).values()].map(be=>FO.structUtils.stringifyIdent(be)),de=ae==="*"?ue:(0,pls.default)(ue,ae);for(let be of de){let Se=FO.structUtils.parseIdent(be),De=ne.manifest[ce].get(Se.identHash);if(typeof De>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let k=FO.structUtils.makeDescriptor(Se,X.range);I.push(Promise.resolve().then(async()=>[ne,ce,De,await l6.getSuggestedDescriptors(k,{project:r,workspace:ne,cache:a,target:ce,fixed:o,modifier:A,strategies:f})])),Q=!0}}Q||C.push(F)}if(C.length>1)throw new wH.UsageError(`Patterns ${BH.formatUtils.prettyList(t,C,BH.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(C.length>0)throw new wH.UsageError(`Pattern ${BH.formatUtils.prettyList(t,C,BH.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let b=await Promise.all(I),E=await BH.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async F=>{for(let[,,Q,{suggestions:X,rejections:ae}]of b){let ne=X.filter(ce=>ce.descriptor!==null);if(ne.length===0){let[ce]=ae;if(typeof ce>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ce);r.configuration.get("enableNetwork")?F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range ${fe}`):F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range (note: network resolution has been disabled) -${fe}`)}else ne.length>1&&!l&&F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(E.hasErrors())return E.exitCode();let N=!1,B=[];for(let[F,Q,,{suggestions:X}]of b){let ae,ne=X.filter(de=>de.descriptor!==null),ce=ne[0].descriptor,fe=ne.every(de=>FO.structUtils.areDescriptorsEqual(de.descriptor,ce));ne.length===1||fe?ae=ce:(N=!0,{answer:ae}=await(0,khl.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${FO.structUtils.prettyWorkspace(t,F)} \u276F ${Q}?`,choices:X.map(({descriptor:de,name:be,reason:Se})=>de?{name:be,hint:Se,descriptor:de}:{name:be,hint:Se,disabled:!0}),onCancel:()=>process.exit(130),result(de){return this.find(de,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ue=F.manifest[Q].get(ae.identHash);if(typeof ue>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(ue.descriptorHash!==ae.descriptorHash)F.manifest[Q].set(ae.identHash,ae),B.push([F,Q,ue,ae]);else{let de=t.makeResolver(),be={project:r,resolver:de},Se=t.normalizeDependency(ue),De=de.bindDescriptor(Se,F.anchoredLocator,be);r.forgetResolution(De)}}return await t.triggerMultipleHooks(F=>F.afterWorkspaceDependencyReplacement,B),N&&this.context.stdout.write(` -`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};qxe.paths=[["up"]];qxe.usage=wH.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});qxe.schema=[PXr.hasKeyRelationship("recursive",PXr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];OXr.default=qxe});var tls=H(HXr=>{"use strict";Object.defineProperty(HXr,"__esModule",{value:!0});var els=el(),MXr=Sn(),WR=Sn(),$xe=($c(),vi(rg)),v6e=class extends els.BaseCommand{constructor(){super(...arguments),this.recursive=$xe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=$xe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=$xe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=$xe.Option.String()}async execute(){let t=await MXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await MXr.Project.find(t,this.context.cwd);if(!n)throw new els.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=WR.structUtils.parseDescriptor(this.package,!1);if(a.range!=="unknown"&&MXr.semverUtils.validRange(a.range)===null)throw new $xe.UsageError(`Expected a valid semver range, got ${a.range}`);let o=this.recursive?Ghl(r,a,{configuration:t,peers:this.peers}):xhl(r,a,{configuration:t,peers:this.peers});WR.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};v6e.paths=[["why"]];v6e.usage=$xe.Command.Usage({description:"display the reason why a package is needed",details:` +${fe}`)}else ne.length>1&&!l&&F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(E.hasErrors())return E.exitCode();let N=!1,B=[];for(let[F,Q,,{suggestions:X}]of b){let ae,ne=X.filter(de=>de.descriptor!==null),ce=ne[0].descriptor,fe=ne.every(de=>FO.structUtils.areDescriptorsEqual(de.descriptor,ce));ne.length===1||fe?ae=ce:(N=!0,{answer:ae}=await(0,Sml.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${FO.structUtils.prettyWorkspace(t,F)} \u276F ${Q}?`,choices:X.map(({descriptor:de,name:be,reason:Se})=>de?{name:be,hint:Se,descriptor:de}:{name:be,hint:Se,disabled:!0}),onCancel:()=>process.exit(130),result(de){return this.find(de,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ue=F.manifest[Q].get(ae.identHash);if(typeof ue>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(ue.descriptorHash!==ae.descriptorHash)F.manifest[Q].set(ae.identHash,ae),B.push([F,Q,ue,ae]);else{let de=t.makeResolver(),be={project:r,resolver:de},Se=t.normalizeDependency(ue),De=de.bindDescriptor(Se,F.anchoredLocator,be);r.forgetResolution(De)}}return await t.triggerMultipleHooks(F=>F.afterWorkspaceDependencyReplacement,B),N&&this.context.stdout.write(` +`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};eGe.paths=[["up"]];eGe.usage=wH.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});eGe.schema=[XXr.hasKeyRelationship("recursive",XXr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];UXr.default=eGe});var hls=H(jXr=>{"use strict";Object.defineProperty(jXr,"__esModule",{value:!0});var Ils=el(),KXr=yn(),WR=yn(),tGe=($c(),vi(rg)),w6e=class extends Ils.BaseCommand{constructor(){super(...arguments),this.recursive=tGe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=tGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=tGe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=tGe.Option.String()}async execute(){let t=await KXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await KXr.Project.find(t,this.context.cwd);if(!n)throw new Ils.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=WR.structUtils.parseDescriptor(this.package,!1);if(a.range!=="unknown"&&KXr.semverUtils.validRange(a.range)===null)throw new tGe.UsageError(`Expected a valid semver range, got ${a.range}`);let o=this.recursive?Bml(r,a,{configuration:t,peers:this.peers}):vml(r,a,{configuration:t,peers:this.peers});WR.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};w6e.paths=[["why"]];w6e.usage=tGe.Command.Usage({description:"display the reason why a package is needed",details:` This command prints the exact reasons why a package appears in the dependency tree. Specify a version or range to determine why the dependency tree contains a specific version of a package. This is particularly useful when trying to find out why your project depends on lower versions. If \`-R,--recursive\` is set, the listing will go in depth and will list, for each workspaces, what are all the paths that lead to the dependency. Note that the display is somewhat optimized in that it will not print the package listing twice for a single package, so if you see a leaf named "Foo" when looking for "Bar", it means that "Foo" already got printed higher in the tree. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"],["Explain why version 3.3.1 of lodash is in your project","$0 why lodash@3.3.1"],["Explain why version 3.X of lodash is in your project","$0 why lodash@^3"]]});HXr.default=v6e;function xhl(e,t,{configuration:r,peers:n}){let a=WR.miscUtils.sortMap(e.storedPackages.values(),A=>WR.structUtils.stringifyLocator(A)),o={},l={children:o};for(let A of a){let f={};for(let C of A.dependencies.values()){if(!n&&A.peerDependencies.has(C.identHash))continue;let b=e.storedResolutions.get(C.descriptorHash);if(!b)throw new Error("Assertion failed: The resolution should have been registered");let E=e.storedPackages.get(b);if(!E)throw new Error("Assertion failed: The package should have been registered");if(!WR.structUtils.areIdentsEqual(E,t)||!WR.structUtils.isPackageInRange(E,t.range))continue;{let B=WR.structUtils.stringifyLocator(A);o[B]={value:[A,WR.formatUtils.Type.LOCATOR],children:f}}let N=WR.structUtils.stringifyLocator(E);f[N]={value:[{descriptor:C,locator:E},WR.formatUtils.Type.DEPENDENT]}}}return l}function Ghl(e,t,{configuration:r,peers:n}){let a=WR.miscUtils.sortMap(e.workspaces,E=>WR.structUtils.stringifyLocator(E.anchoredLocator)),o=new Set,l=new Set,A=E=>{if(o.has(E.locatorHash))return l.has(E.locatorHash);if(o.add(E.locatorHash),WR.structUtils.areIdentsEqual(E,t)&&WR.structUtils.isPackageInRange(E,t.range))return l.add(E.locatorHash),!0;let N=!1;for(let B of E.dependencies.values()){if(!n&&E.peerDependencies.has(B.identHash))continue;let F=e.storedResolutions.get(B.descriptorHash);if(!F)throw new Error("Assertion failed: The resolution should have been registered");let Q=e.storedPackages.get(F);if(!Q)throw new Error("Assertion failed: The package should have been registered");A(Q)&&(N=!0)}return N&&l.add(E.locatorHash),N};for(let E of a)A(E.anchoredPackage);let f=new Set,I={},C={children:I},b=(E,N,B)=>{if(!l.has(E.locatorHash))return;let F=B!==null?WR.formatUtils.tuple(WR.formatUtils.Type.DEPENDENT,{locator:E,descriptor:B}):WR.formatUtils.tuple(WR.formatUtils.Type.LOCATOR,E),Q={},X={value:F,children:Q},ae=WR.structUtils.stringifyLocator(E);if(N[ae]=X,!(B!==null&&e.tryWorkspaceByLocator(E))&&!f.has(E.locatorHash)){f.add(E.locatorHash);for(let ne of E.dependencies.values()){if(!n&&E.peerDependencies.has(ne.identHash))continue;let ce=e.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");b(fe,Q,ne)}}};for(let E of a)b(E.anchoredPackage,I,null);return C}});var rls=H(YXr=>{"use strict";Object.defineProperty(YXr,"__esModule",{value:!0});var Fhl=el(),eGe=Sn(),Zhl=rDe(),tGe=($c(),vi(rg)),B6e=class extends Fhl.BaseCommand{constructor(){super(...arguments),this.since=tGe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=tGe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=tGe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=tGe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=tGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await eGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await eGe.Project.find(t,this.context.cwd);return(await eGe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await Zhl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,l=new Set(o);if(this.recursive)for(let A of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of A)l.add(f);for(let A of l){let{manifest:f}=A;if(f.private&&this.noPrivate)continue;let I;if(this.verbose){let C=new Set,b=new Set;for(let E of eGe.Manifest.hardDependencies)for(let[N,B]of f.getForScope(E)){let F=r.tryWorkspaceByDescriptor(B);F===null?r.workspacesByIdent.has(N)&&b.add(B):C.add(F)}I={workspaceDependencies:Array.from(C).map(E=>E.relativeCwd),mismatchedWorkspaceDependencies:Array.from(b).map(E=>eGe.structUtils.stringifyDescriptor(E))}}a.reportInfo(null,`${A.relativeCwd}`),a.reportJson({location:A.relativeCwd,name:f.name?eGe.structUtils.stringifyIdent(f.name):null,...I})}})).exitCode()}};B6e.paths=[["workspaces","list"]];B6e.usage=tGe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});YXr.default=B6e});var sls=H(QXr=>{"use strict";Object.defineProperty(QXr,"__esModule",{value:!0});var nls=el(),ils=Sn(),Lhl=Sn(),w6e=($c(),vi(rg)),T6e=class extends nls.BaseCommand{constructor(){super(...arguments),this.workspaceName=w6e.Option.String(),this.commandName=w6e.Option.String(),this.args=w6e.Option.Proxy()}async execute(){let t=await ils.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await ils.Project.find(t,this.context.cwd);if(!n)throw new nls.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(A=>[Lhl.structUtils.stringifyIdent(A.anchoredLocator),A])),l=o.get(this.workspaceName);if(l===void 0){let A=Array.from(o.keys()).sort();throw new w6e.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: + `,examples:[["Explain why lodash is used in your project","$0 why lodash"],["Explain why version 3.3.1 of lodash is in your project","$0 why lodash@3.3.1"],["Explain why version 3.X of lodash is in your project","$0 why lodash@^3"]]});jXr.default=w6e;function vml(e,t,{configuration:r,peers:n}){let a=WR.miscUtils.sortMap(e.storedPackages.values(),A=>WR.structUtils.stringifyLocator(A)),o={},l={children:o};for(let A of a){let f={};for(let C of A.dependencies.values()){if(!n&&A.peerDependencies.has(C.identHash))continue;let b=e.storedResolutions.get(C.descriptorHash);if(!b)throw new Error("Assertion failed: The resolution should have been registered");let E=e.storedPackages.get(b);if(!E)throw new Error("Assertion failed: The package should have been registered");if(!WR.structUtils.areIdentsEqual(E,t)||!WR.structUtils.isPackageInRange(E,t.range))continue;{let B=WR.structUtils.stringifyLocator(A);o[B]={value:[A,WR.formatUtils.Type.LOCATOR],children:f}}let N=WR.structUtils.stringifyLocator(E);f[N]={value:[{descriptor:C,locator:E},WR.formatUtils.Type.DEPENDENT]}}}return l}function Bml(e,t,{configuration:r,peers:n}){let a=WR.miscUtils.sortMap(e.workspaces,E=>WR.structUtils.stringifyLocator(E.anchoredLocator)),o=new Set,l=new Set,A=E=>{if(o.has(E.locatorHash))return l.has(E.locatorHash);if(o.add(E.locatorHash),WR.structUtils.areIdentsEqual(E,t)&&WR.structUtils.isPackageInRange(E,t.range))return l.add(E.locatorHash),!0;let N=!1;for(let B of E.dependencies.values()){if(!n&&E.peerDependencies.has(B.identHash))continue;let F=e.storedResolutions.get(B.descriptorHash);if(!F)throw new Error("Assertion failed: The resolution should have been registered");let Q=e.storedPackages.get(F);if(!Q)throw new Error("Assertion failed: The package should have been registered");A(Q)&&(N=!0)}return N&&l.add(E.locatorHash),N};for(let E of a)A(E.anchoredPackage);let f=new Set,I={},C={children:I},b=(E,N,B)=>{if(!l.has(E.locatorHash))return;let F=B!==null?WR.formatUtils.tuple(WR.formatUtils.Type.DEPENDENT,{locator:E,descriptor:B}):WR.formatUtils.tuple(WR.formatUtils.Type.LOCATOR,E),Q={},X={value:F,children:Q},ae=WR.structUtils.stringifyLocator(E);if(N[ae]=X,!(B!==null&&e.tryWorkspaceByLocator(E))&&!f.has(E.locatorHash)){f.add(E.locatorHash);for(let ne of E.dependencies.values()){if(!n&&E.peerDependencies.has(ne.identHash))continue;let ce=e.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");b(fe,Q,ne)}}};for(let E of a)b(E.anchoredPackage,I,null);return C}});var mls=H(zXr=>{"use strict";Object.defineProperty(zXr,"__esModule",{value:!0});var wml=el(),rGe=yn(),Tml=iDe(),nGe=($c(),vi(rg)),T6e=class extends wml.BaseCommand{constructor(){super(...arguments),this.since=nGe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=nGe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=nGe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=nGe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=nGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await rGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await rGe.Project.find(t,this.context.cwd);return(await rGe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await Tml.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,l=new Set(o);if(this.recursive)for(let A of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of A)l.add(f);for(let A of l){let{manifest:f}=A;if(f.private&&this.noPrivate)continue;let I;if(this.verbose){let C=new Set,b=new Set;for(let E of rGe.Manifest.hardDependencies)for(let[N,B]of f.getForScope(E)){let F=r.tryWorkspaceByDescriptor(B);F===null?r.workspacesByIdent.has(N)&&b.add(B):C.add(F)}I={workspaceDependencies:Array.from(C).map(E=>E.relativeCwd),mismatchedWorkspaceDependencies:Array.from(b).map(E=>rGe.structUtils.stringifyDescriptor(E))}}a.reportInfo(null,`${A.relativeCwd}`),a.reportJson({location:A.relativeCwd,name:f.name?rGe.structUtils.stringifyIdent(f.name):null,...I})}})).exitCode()}};T6e.paths=[["workspaces","list"]];T6e.usage=nGe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});zXr.default=T6e});var yls=H(qXr=>{"use strict";Object.defineProperty(qXr,"__esModule",{value:!0});var Cls=el(),_ls=yn(),Rml=yn(),R6e=($c(),vi(rg)),N6e=class extends Cls.BaseCommand{constructor(){super(...arguments),this.workspaceName=R6e.Option.String(),this.commandName=R6e.Option.String(),this.args=R6e.Option.Proxy()}async execute(){let t=await _ls.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await _ls.Project.find(t,this.context.cwd);if(!n)throw new Cls.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(A=>[Rml.structUtils.stringifyIdent(A.anchoredLocator),A])),l=o.get(this.workspaceName);if(l===void 0){let A=Array.from(o.keys()).sort();throw new R6e.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - ${A.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:l.cwd})}};T6e.paths=[["workspace"]];T6e.usage=w6e.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` + - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:l.cwd})}};N6e.paths=[["workspace"]];N6e.usage=R6e.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` This command will run a given sub-command on a single workspace. - `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});QXr.default=T6e});var Axt=H(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.suggestUtils=zu.dedupeUtils=zu.WorkspaceCommand=zu.WorkspacesListCommand=zu.WhyCommand=zu.UpCommand=zu.UnlinkCommand=zu.SetVersionCommand=zu.SetVersionSourcesCommand=zu.SetResolutionCommand=zu.RunCommand=zu.RunIndexCommand=zu.RemoveCommand=zu.RebuildCommand=zu.PluginRuntimeCommand=zu.PluginRemoveCommand=zu.PluginListCommand=zu.PluginImportCommand=zu.PluginCheckCommand=zu.PluginImportSourcesCommand=zu.NodeCommand=zu.LinkCommand=zu.YarnCommand=zu.InfoCommand=zu.ExplainCommand=zu.ExplainPeerRequirementsCommand=zu.ExecCommand=zu.VersionCommand=zu.EntryCommand=zu.HelpCommand=zu.ClipanionCommand=zu.DedupeCommand=zu.ConfigCommand=zu.ConfigUnsetCommand=zu.ConfigSetCommand=zu.ConfigGetCommand=zu.CacheCleanCommand=zu.BinCommand=zu.AddCommand=void 0;var am=(Pa(),vi(Va)),XXr=Sn(),Vhl=Nfe(),ols=am.__importDefault(Las());zu.AddCommand=ols.default;var als=am.__importDefault(Vas());zu.BinCommand=als.default;var cls=am.__importDefault(Was());zu.CacheCleanCommand=cls.default;var lls=am.__importDefault(Mas());zu.ConfigGetCommand=lls.default;var uls=am.__importDefault(Yas());zu.ConfigSetCommand=uls.default;var gls=am.__importDefault(Qas());zu.ConfigUnsetCommand=gls.default;var Als=am.__importDefault(Xas());zu.ConfigCommand=Als.default;var dls=am.__importDefault(Kas());zu.DedupeCommand=dls.default;var pls=am.__importDefault(jas());zu.ClipanionCommand=pls.default;var fls=am.__importDefault(zas());zu.HelpCommand=fls.default;var Ils=am.__importDefault(ecs());zu.EntryCommand=Ils.default;var hls=am.__importDefault(tcs());zu.VersionCommand=hls.default;var mls=am.__importDefault(ncs());zu.ExecCommand=mls.default;var Cls=am.__importDefault(acs());zu.ExplainPeerRequirementsCommand=Cls.default;var _ls=am.__importDefault(Acs());zu.ExplainCommand=_ls.default;var yls=am.__importDefault(pcs());zu.InfoCommand=yls.default;var bls=am.__importDefault(mcs());zu.YarnCommand=bls.default;var Els=am.__importDefault(Ccs());zu.LinkCommand=Els.default;var Sls=am.__importDefault(ycs());zu.NodeCommand=Sls.default;var vls=am.__importDefault(Ecs());zu.PluginCheckCommand=vls.default;var Bls=am.__importDefault(hXr());zu.PluginImportSourcesCommand=Bls.default;var wls=am.__importDefault(CXr());zu.PluginImportCommand=wls.default;var Tls=am.__importDefault(u6e());zu.PluginListCommand=Tls.default;var Rls=am.__importDefault(Dcs());zu.PluginRemoveCommand=Rls.default;var Nls=am.__importDefault(Gcs());zu.PluginRuntimeCommand=Nls.default;var Dls=am.__importDefault(Vcs());zu.RebuildCommand=Dls.default;var kls=am.__importDefault(Ocs());zu.RemoveCommand=kls.default;var xls=am.__importDefault(Hcs());zu.RunIndexCommand=xls.default;var Gls=am.__importDefault(Xcs());zu.RunCommand=Gls.default;var Fls=am.__importDefault(Kcs());zu.SetResolutionCommand=Fls.default;var Zls=am.__importDefault(IXr());zu.SetVersionSourcesCommand=Zls.default;var Lls=am.__importDefault(nxt());zu.SetVersionCommand=Lls.default;var Vls=am.__importDefault(zcs());zu.UnlinkCommand=Vls.default;var Pls=am.__importDefault($cs());zu.UpCommand=Pls.default;var Wls=am.__importDefault(tls());zu.WhyCommand=Wls.default;var Ols=am.__importDefault(rls());zu.WorkspacesListCommand=Ols.default;var Mls=am.__importDefault(sls());zu.WorkspaceCommand=Mls.default;var Phl=am.__importStar(UQr());zu.dedupeUtils=Phl;var Hls=am.__importStar(Pje());zu.suggestUtils=Hls;var Whl={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:XXr.SettingsType.BOOLEAN,default:Vhl.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:XXr.SettingsType.STRING,values:["^","~",""],default:Hls.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:XXr.SettingsType.BOOLEAN,default:!1}},commands:[cls.default,lls.default,uls.default,gls.default,Fls.default,Zls.default,Lls.default,Ols.default,pls.default,fls.default,Ils.default,hls.default,ols.default,als.default,Als.default,dls.default,mls.default,Cls.default,_ls.default,yls.default,bls.default,Els.default,Vls.default,Sls.default,vls.default,Bls.default,wls.default,Rls.default,Tls.default,Nls.default,Dls.default,kls.default,xls.default,Gls.default,Pls.default,Wls.default,Mls.default]};zu.default=Whl});var JXr=H(dxt=>{"use strict";Object.defineProperty(dxt,"__esModule",{value:!0});dxt.Pad=void 0;var Ohl=(Pa(),vi(Va)),Mhl=lH(),Hhl=Ohl.__importDefault(sC()),Yhl=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return Hhl.default.createElement(Mhl.Text,{dimColor:!t},r)};dxt.Pad=Yhl});var Yls=H(pxt=>{"use strict";Object.defineProperty(pxt,"__esModule",{value:!0});pxt.ItemOptions=void 0;var Qhl=(Pa(),vi(Va)),UXr=lH(),P_e=Qhl.__importDefault(sC()),Xhl=T1t(),Jhl=v1t(),Uhl=JXr(),Khl=function({active:e,skewer:t,options:r,value:n,onChange:a,sizes:o=[]}){let l=r.filter(({label:f})=>!!f).map(({value:f})=>f),A=r.findIndex(f=>f.value===n&&f.label!="");return(0,Xhl.useListInput)(n,l,{active:e,minus:"left",plus:"right",set:a}),P_e.default.createElement(P_e.default.Fragment,null,r.map(({label:f},I)=>{let C=I===A,b=o[I]-1||0,E=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),N=Math.max(0,b-E.length-2);return f?P_e.default.createElement(UXr.Box,{key:f,width:b,marginLeft:1},P_e.default.createElement(UXr.Text,{wrap:"truncate"},P_e.default.createElement(Jhl.Gem,{active:C})," ",f),t?P_e.default.createElement(Uhl.Pad,{active:e,length:N}):null):P_e.default.createElement(UXr.Box,{key:`spacer-${I}`,width:b,marginLeft:1})}))};pxt.ItemOptions=Khl});var Kls=H(KXr=>{"use strict";Object.defineProperty(KXr,"__esModule",{value:!0});var M4=(Pa(),vi(Va)),Qls=el(),ZO=Sn(),jhl=M4.__importStar(A1t()),zhl=Axt(),Jls=($c(),vi(rg)),qhl=kdr(),$hl=M4.__importDefault(UC()),eml=M4.__importStar((CZ(),vi(mZ))),Xls=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;function Uls(e,t){return e.length>0?[e.slice(0,t)].concat(Uls(e.slice(t),t)):[]}var R6e=class extends Qls.BaseCommand{constructor(){super(...arguments),this.mode=Jls.Option.String("--mode",{description:"Change what artifacts installs generate",validator:eml.isEnum(ZO.InstallMode)})}async execute(){jhl.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>M4.__importStar(Yls())),{Pad:r}=await Promise.resolve().then(()=>M4.__importStar(JXr())),{ScrollableItems:n}=await Promise.resolve().then(()=>M4.__importStar(N1t())),{useMinistore:a,useMinistoreSetAll:o}=await Promise.resolve().then(()=>M4.__importStar(OYr())),{useKeypress:l}=await Promise.resolve().then(()=>M4.__importStar(aDe())),{renderForm:A}=await Promise.resolve().then(()=>M4.__importStar(D1t())),{Box:f,Text:I}=await Promise.resolve().then(()=>M4.__importStar(lH())),{default:C,useCallback:b,useEffect:E,useRef:N,useState:B}=await Promise.resolve().then(()=>M4.__importStar(sC())),F=await ZO.Configuration.find(this.context.cwd,this.context.plugins),{project:Q,workspace:X}=await ZO.Project.find(F,this.context.cwd),ae=await ZO.Cache.find(F);if(!X)throw new Qls.WorkspaceRequiredError(Q.cwd,this.context.cwd);await Q.restoreInstallState({restoreResolutions:!1});let ne=this.context.stdout.rows-8,ce=(je,St)=>{let At=(0,qhl.diffWords)(je,St),Yt="";for(let Tr of At)Tr.added?Yt+=ZO.formatUtils.pretty(F,Tr.value,"green"):Tr.removed||(Yt+=Tr.value);return Yt},fe=(je,St)=>{if(je===St)return St;let At=ZO.structUtils.parseRange(je),Yt=ZO.structUtils.parseRange(St),Tr=At.selector.match(Xls),Nr=Yt.selector.match(Xls);if(!Tr||!Nr)return ce(je,St);let er=["gray","red","yellow","green","magenta"],vt=null,xt="";for(let Zr=1;Zr{let Yt=await zhl.suggestUtils.fetchDescriptorFrom(je,At,{project:Q,cache:ae,preserveModifier:St,workspace:X});return Yt!==null?Yt.range:je.range},de=async je=>{let St=$hl.default.valid(je.range)?`^${je.range}`:je.range,[At,Yt]=await Promise.all([ue(je,je.range,St).catch(()=>null),ue(je,je.range,"latest").catch(()=>null)]),Tr=[{value:null,label:je.range}];return At&&At!==je.range?Tr.push({value:At,label:fe(je.range,At)}):Tr.push({value:null,label:""}),Yt&&Yt!==At&&Yt!==je.range?Tr.push({value:Yt,label:fe(je.range,Yt)}):Tr.push({value:null,label:""}),Tr},be=()=>C.createElement(f,{flexDirection:"row"},C.createElement(f,{flexDirection:"column",width:49},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select packages.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select versions.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"c"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"r"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"l")," to select all ",C.createElement(I,{bold:!0,color:"cyanBright"},"current"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"range"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"latest"),"."))),C.createElement(f,{flexDirection:"column"},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to install.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to abort.")))),Se=()=>C.createElement(f,{flexDirection:"row",paddingTop:1,paddingBottom:1},C.createElement(f,{width:50},C.createElement(I,{bold:!0},C.createElement(I,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Current")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Range")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Latest"))),De=({active:je,descriptor:St,suggestions:At})=>{let[Yt,Tr]=a(St.descriptorHash,null),Nr=ZO.structUtils.stringifyIdent(St),er=Math.max(0,45-Nr.length);return C.createElement(C.Fragment,null,C.createElement(f,null,C.createElement(f,{width:45},C.createElement(I,{bold:!0},ZO.structUtils.prettyIdent(F,St)),C.createElement(r,{active:je,length:er})),C.createElement(t,{active:je,options:At,value:Yt,skewer:!0,onChange:Tr,sizes:[17,17,17]})))},k=({dependencies:je})=>{let St=o(),[At,Yt]=B(je.map(()=>null)),Tr=N(!0),Nr=async vt=>{let xt=await de(vt);return xt.filter(Zr=>Zr.label!=="").length<=1?null:{descriptor:vt,suggestions:xt}};E(()=>()=>{Tr.current=!1},[]),E(()=>{let vt=Math.trunc(ne*1.75),xt=je.slice(0,vt),Zr=je.slice(vt),qt=Uls(Zr,ne),Xt=xt.map(Nr).reduce(async(lr,cr)=>{await lr;let Ar=await cr;Ar!==null&&Tr.current&&Yt(qr=>{let _n=qr.findIndex(jt=>jt===null),ke=[...qr];return ke[_n]=Ar,ke})},Promise.resolve());qt.reduce((lr,cr)=>Promise.all(cr.map(Ar=>Promise.resolve().then(()=>Nr(Ar)))).then(async Ar=>{Ar=Ar.filter(qr=>qr!==null),await lr,Tr.current&&Yt(qr=>{let _n=qr.findIndex(ke=>ke===null);return qr.slice(0,_n).concat(Ar).concat(qr.slice(_n+Ar.length))})}),Xt).then(()=>{Tr.current&&Yt(lr=>lr.filter(cr=>cr!==null))})},[]);let er=b(vt=>{if(vt!=="c"&&vt!=="r"&&vt!=="l")return;let xt=[];for(let Zr of At){if(Zr===null)continue;let qt;vt==="c"?qt=null:vt==="r"?qt=Zr.suggestions[1].value:qt=Zr.suggestions[2].value??Zr.suggestions[1].value,xt.push([Zr.descriptor.descriptorHash,qt])}St(xt)},[At,St]);return l({active:!0},er,[er]),At.length?C.createElement(n,{radius:ne>>1,children:At.map((vt,xt)=>vt!==null?C.createElement(De,{key:xt,active:!1,descriptor:vt.descriptor,suggestions:vt.suggestions}):C.createElement(I,{key:xt},"Loading..."))}):C.createElement(I,null,"No upgrades found")},ct=await A(({useSubmit:je})=>{je(a());let St=new Map;for(let Yt of Q.workspaces)for(let Tr of["dependencies","devDependencies"])for(let Nr of Yt.manifest[Tr].values())Q.tryWorkspaceByDescriptor(Nr)===null&&(Nr.range.startsWith("link:")||St.set(Nr.descriptorHash,Nr));let At=ZO.miscUtils.sortMap(St.values(),Yt=>ZO.structUtils.stringifyDescriptor(Yt));return C.createElement(f,{flexDirection:"column"},C.createElement(be,null),C.createElement(Se,null),C.createElement(k,{dependencies:At}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ct>"u")return 1;let Me=!1;for(let je of Q.workspaces)for(let St of["dependencies","devDependencies"]){let At=je.manifest[St];for(let Yt of At.values()){let Tr=ct.get(Yt.descriptorHash);typeof Tr<"u"&&Tr!==null&&(At.set(Yt.identHash,ZO.structUtils.makeDescriptor(Yt,Tr)),Me=!0)}}return Me?await Q.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:ae,mode:this.mode}):0}};R6e.paths=[["upgrade-interactive"]];R6e.usage=Jls.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]});KXr.default=R6e});var $ls=H(W_e=>{"use strict";Object.defineProperty(W_e,"__esModule",{value:!0});W_e.UpgradeInteractiveCommand=W_e.SearchCommand=void 0;var jls=(Pa(),vi(Va)),zls=jls.__importDefault(Kss());W_e.SearchCommand=zls.default;var qls=jls.__importDefault(Kls());W_e.UpgradeInteractiveCommand=qls.default;var tml={commands:[zls.default,qls.default]};W_e.default=tml});var jXr=H(fxt=>{"use strict";Object.defineProperty(fxt,"__esModule",{value:!0});fxt.JSR_PROTOCOL=void 0;fxt.JSR_PROTOCOL="jsr:"});var Ixt=H(N6e=>{"use strict";Object.defineProperty(N6e,"__esModule",{value:!0});N6e.convertDescriptorFromJsrToNpm=nml;N6e.convertLocatorFromJsrToNpm=iml;N6e.convertLocatorFromNpmToJsr=sml;var rml=Sn(),H4=Sn();function nml(e){let t=e.range.slice(4);if(rml.semverUtils.validRange(t))return H4.structUtils.makeDescriptor(e,`npm:${H4.structUtils.stringifyIdent(H4.structUtils.wrapIdentIntoScope(e,"jsr"))}@${t}`);let r=H4.structUtils.tryParseDescriptor(t,!0);if(r!==null)return H4.structUtils.makeDescriptor(e,`npm:${H4.structUtils.stringifyIdent(H4.structUtils.wrapIdentIntoScope(r,"jsr"))}@${r.range}`);throw new Error(`Invalid range: ${e.range}`)}function iml(e){return H4.structUtils.makeLocator(H4.structUtils.wrapIdentIntoScope(e,"jsr"),`npm:${e.reference.slice(4)}`)}function sml(e){return H4.structUtils.makeLocator(H4.structUtils.unwrapIdentFromScope(e,"jsr"),`jsr:${e.reference.slice(4)}`)}});var tus=H(hxt=>{"use strict";Object.defineProperty(hxt,"__esModule",{value:!0});hxt.JsrFetcher=void 0;var oml=jXr(),eus=Ixt(),zXr=class{supports(t,r){return t.reference.startsWith(oml.JSR_PROTOCOL)}getLocalPath(t,r){let n=(0,eus.convertLocatorFromJsrToNpm)(t);return r.fetcher.getLocalPath(n,r)}fetch(t,r){let n=(0,eus.convertLocatorFromJsrToNpm)(t);return r.fetcher.fetch(n,r)}};hxt.JsrFetcher=zXr});var nus=H(mxt=>{"use strict";Object.defineProperty(mxt,"__esModule",{value:!0});mxt.JsrResolver=void 0;var rus=jXr(),O_e=Ixt(),qXr=class{supportsDescriptor(t,r){return!!t.range.startsWith(rus.JSR_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(rus.JSR_PROTOCOL)}shouldPersistResolution(t,r){let n=(0,O_e.convertLocatorFromJsrToNpm)(t);return r.resolver.shouldPersistResolution(n,r)}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{inner:(0,O_e.convertDescriptorFromJsrToNpm)(t)}}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency((0,O_e.convertDescriptorFromJsrToNpm)(t));return(await n.resolver.getCandidates(a,r,n)).map(l=>(0,O_e.convertLocatorFromNpmToJsr)(l))}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency((0,O_e.convertDescriptorFromJsrToNpm)(t));return a.resolver.getSatisfying(o,r,n,a)}async resolve(t,r){let n=(0,O_e.convertLocatorFromJsrToNpm)(t),a=await r.resolver.resolve(n,r);return{...a,...(0,O_e.convertLocatorFromNpmToJsr)(a)}}};mxt.JsrResolver=qXr});var sus=H($Xr=>{"use strict";Object.defineProperty($Xr,"__esModule",{value:!0});var ius=Sn(),aml=tus(),cml=nus(),lml=Ixt(),uml=["dependencies","devDependencies","peerDependencies"];function gml(e,t){for(let r of uml)for(let n of e.manifest.getForScope(r).values()){if(!n.range.startsWith("jsr:"))continue;let a=(0,lml.convertDescriptorFromJsrToNpm)(n),o=r==="dependencies"?ius.structUtils.makeDescriptor(n,"unknown"):null,l=o!==null&&e.manifest.ensureDependencyMeta(o).optional?"optionalDependencies":r;t[l][ius.structUtils.stringifyIdent(n)]=a.range}}var Aml={hooks:{beforeWorkspacePacking:gml},resolvers:[cml.JsrResolver],fetchers:[aml.JsrFetcher]};$Xr.default=Aml});var aus=H(e4r=>{"use strict";Object.defineProperty(e4r,"__esModule",{value:!0});var ous=el(),Cxt=Sn(),dml=Sn(),D6e=($c(),vi(rg)),k6e=class extends ous.BaseCommand{constructor(){super(...arguments),this.json=D6e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=D6e.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=D6e.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=D6e.Option.Rest()}async execute(){let t=await Cxt.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Cxt.Project.find(t,this.context.cwd),a=await Cxt.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!n)throw new ous.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([n])}else o=new Set(this.workspaces.map(l=>r.getWorkspaceByIdent(dml.structUtils.parseIdent(l))));for(let l of o)for(let A of this.production?["dependencies"]:Cxt.Manifest.hardDependencies)for(let f of l.manifest.getForScope(A).values()){let I=r.tryWorkspaceByDescriptor(f);I!==null&&o.add(I)}for(let l of r.workspaces)o.has(l)?this.production&&l.manifest.devDependencies.clear():(l.manifest.installConfig=l.manifest.installConfig||{},l.manifest.installConfig.selfReferences=!1,l.manifest.dependencies.clear(),l.manifest.devDependencies.clear(),l.manifest.peerDependencies.clear(),l.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};k6e.paths=[["workspaces","focus"]];k6e.usage=D6e.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});e4r.default=k6e});var uus=H(n4r=>{"use strict";Object.defineProperty(n4r,"__esModule",{value:!0});var r4r=(Pa(),vi(Va)),cus=el(),t4r=Sn(),_xt=Sn(),eF=Sn(),pml=rDe(),MR=($c(),vi(rg)),x6e=r4r.__importDefault(Ek()),fml=r4r.__importDefault(Dfe()),Nte=r4r.__importStar((CZ(),vi(mZ))),rGe=class extends cus.BaseCommand{constructor(){super(...arguments),this.from=MR.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=MR.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=MR.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=MR.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=MR.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=MR.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=MR.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=MR.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:Nte.isOneOf([Nte.isEnum(["unlimited"]),Nte.applyCascade(Nte.isNumber(),[Nte.isInteger(),Nte.isAtLeast(1)])])}),this.topological=MR.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=MR.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=MR.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=MR.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=MR.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=MR.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=MR.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=MR.Option.String(),this.args=MR.Option.Proxy()}async execute(){let t=await t4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await t4r.Project.find(t,this.context.cwd);if(!this.all&&!n)throw new cus.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new MR.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let l=Se=>{this.dryRun&&this.context.stdout.write(`${Se} -`)},A=()=>{let Se=this.from.map(De=>x6e.default.matcher(De));return r.workspaces.filter(De=>{let k=eF.structUtils.stringifyIdent(De.anchoredLocator),et=De.relativeCwd;return Se.some(ct=>ct(k)||ct(et))})},f=[];if(this.since?(l("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await pml.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(l("Option --from is set; selecting the specified workspaces"),f=[...A()]):this.worktree?(l("Option --worktree is set; selecting the current workspace"),f=[n]):this.recursive?(l("Option --recursive is set; selecting the current workspace"),f=[n]):this.all&&(l("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Se of f)l(` + `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});qXr.default=N6e});var Ixt=H(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.suggestUtils=zu.dedupeUtils=zu.WorkspaceCommand=zu.WorkspacesListCommand=zu.WhyCommand=zu.UpCommand=zu.UnlinkCommand=zu.SetVersionCommand=zu.SetVersionSourcesCommand=zu.SetResolutionCommand=zu.RunCommand=zu.RunIndexCommand=zu.RemoveCommand=zu.RebuildCommand=zu.PluginRuntimeCommand=zu.PluginRemoveCommand=zu.PluginListCommand=zu.PluginImportCommand=zu.PluginCheckCommand=zu.PluginImportSourcesCommand=zu.NodeCommand=zu.LinkCommand=zu.YarnCommand=zu.InfoCommand=zu.ExplainCommand=zu.ExplainPeerRequirementsCommand=zu.ExecCommand=zu.VersionCommand=zu.EntryCommand=zu.HelpCommand=zu.ClipanionCommand=zu.DedupeCommand=zu.ConfigCommand=zu.ConfigUnsetCommand=zu.ConfigSetCommand=zu.ConfigGetCommand=zu.CacheCleanCommand=zu.BinCommand=zu.AddCommand=void 0;var am=(Pa(),vi(Va)),$Xr=yn(),Nml=Dfe(),bls=am.__importDefault($as());zu.AddCommand=bls.default;var Els=am.__importDefault(ecs());zu.BinCommand=Els.default;var Sls=am.__importDefault(rcs());zu.CacheCleanCommand=Sls.default;var vls=am.__importDefault(ics());zu.ConfigGetCommand=vls.default;var Bls=am.__importDefault(ocs());zu.ConfigSetCommand=Bls.default;var wls=am.__importDefault(acs());zu.ConfigUnsetCommand=wls.default;var Tls=am.__importDefault(ccs());zu.ConfigCommand=Tls.default;var Rls=am.__importDefault(gcs());zu.DedupeCommand=Rls.default;var Nls=am.__importDefault(Acs());zu.ClipanionCommand=Nls.default;var Dls=am.__importDefault(dcs());zu.HelpCommand=Dls.default;var kls=am.__importDefault(Ics());zu.EntryCommand=kls.default;var xls=am.__importDefault(hcs());zu.VersionCommand=xls.default;var Gls=am.__importDefault(Ccs());zu.ExecCommand=Gls.default;var Fls=am.__importDefault(Ecs());zu.ExplainPeerRequirementsCommand=Fls.default;var Zls=am.__importDefault(Tcs());zu.ExplainCommand=Zls.default;var Lls=am.__importDefault(Ncs());zu.InfoCommand=Lls.default;var Vls=am.__importDefault(Gcs());zu.YarnCommand=Vls.default;var Pls=am.__importDefault(Fcs());zu.LinkCommand=Pls.default;var Wls=am.__importDefault(Lcs());zu.NodeCommand=Wls.default;var Ols=am.__importDefault(Pcs());zu.PluginCheckCommand=Ols.default;var Mls=am.__importDefault(SXr());zu.PluginImportSourcesCommand=Mls.default;var Hls=am.__importDefault(BXr());zu.PluginImportCommand=Hls.default;var Yls=am.__importDefault(A6e());zu.PluginListCommand=Yls.default;var Qls=am.__importDefault(Jcs());zu.PluginRemoveCommand=Qls.default;var Xls=am.__importDefault(jcs());zu.PluginRuntimeCommand=Xls.default;var Jls=am.__importDefault(els());zu.RebuildCommand=Jls.default;var Uls=am.__importDefault(nls());zu.RemoveCommand=Uls.default;var Kls=am.__importDefault(sls());zu.RunIndexCommand=Kls.default;var jls=am.__importDefault(cls());zu.RunCommand=jls.default;var zls=am.__importDefault(gls());zu.SetResolutionCommand=zls.default;var qls=am.__importDefault(EXr());zu.SetVersionSourcesCommand=qls.default;var $ls=am.__importDefault(axt());zu.SetVersionCommand=$ls.default;var eus=am.__importDefault(dls());zu.UnlinkCommand=eus.default;var tus=am.__importDefault(fls());zu.UpCommand=tus.default;var rus=am.__importDefault(hls());zu.WhyCommand=rus.default;var nus=am.__importDefault(mls());zu.WorkspacesListCommand=nus.default;var ius=am.__importDefault(yls());zu.WorkspaceCommand=ius.default;var Dml=am.__importStar(tXr());zu.dedupeUtils=Dml;var sus=am.__importStar(Oje());zu.suggestUtils=sus;var kml={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:$Xr.SettingsType.BOOLEAN,default:Nml.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:$Xr.SettingsType.STRING,values:["^","~",""],default:sus.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:$Xr.SettingsType.BOOLEAN,default:!1}},commands:[Sls.default,vls.default,Bls.default,wls.default,zls.default,qls.default,$ls.default,nus.default,Nls.default,Dls.default,kls.default,xls.default,bls.default,Els.default,Tls.default,Rls.default,Gls.default,Fls.default,Zls.default,Lls.default,Vls.default,Pls.default,eus.default,Wls.default,Ols.default,Mls.default,Hls.default,Qls.default,Yls.default,Xls.default,Jls.default,Uls.default,Kls.default,jls.default,tus.default,rus.default,ius.default]};zu.default=kml});var e4r=H(hxt=>{"use strict";Object.defineProperty(hxt,"__esModule",{value:!0});hxt.Pad=void 0;var xml=(Pa(),vi(Va)),Gml=lH(),Fml=xml.__importDefault(sC()),Zml=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return Fml.default.createElement(Gml.Text,{dimColor:!t},r)};hxt.Pad=Zml});var ous=H(mxt=>{"use strict";Object.defineProperty(mxt,"__esModule",{value:!0});mxt.ItemOptions=void 0;var Lml=(Pa(),vi(Va)),t4r=lH(),W_e=Lml.__importDefault(sC()),Vml=k1t(),Pml=R1t(),Wml=e4r(),Oml=function({active:e,skewer:t,options:r,value:n,onChange:a,sizes:o=[]}){let l=r.filter(({label:f})=>!!f).map(({value:f})=>f),A=r.findIndex(f=>f.value===n&&f.label!="");return(0,Vml.useListInput)(n,l,{active:e,minus:"left",plus:"right",set:a}),W_e.default.createElement(W_e.default.Fragment,null,r.map(({label:f},I)=>{let C=I===A,b=o[I]-1||0,E=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),N=Math.max(0,b-E.length-2);return f?W_e.default.createElement(t4r.Box,{key:f,width:b,marginLeft:1},W_e.default.createElement(t4r.Text,{wrap:"truncate"},W_e.default.createElement(Pml.Gem,{active:C})," ",f),t?W_e.default.createElement(Wml.Pad,{active:e,length:N}):null):W_e.default.createElement(t4r.Box,{key:`spacer-${I}`,width:b,marginLeft:1})}))};mxt.ItemOptions=Oml});var gus=H(r4r=>{"use strict";Object.defineProperty(r4r,"__esModule",{value:!0});var M4=(Pa(),vi(Va)),aus=el(),ZO=yn(),Mml=M4.__importStar(I1t()),Hml=Ixt(),lus=($c(),vi(rg)),Yml=Zdr(),Qml=M4.__importDefault(UC()),Xml=M4.__importStar((CZ(),vi(mZ))),cus=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;function uus(e,t){return e.length>0?[e.slice(0,t)].concat(uus(e.slice(t),t)):[]}var D6e=class extends aus.BaseCommand{constructor(){super(...arguments),this.mode=lus.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Xml.isEnum(ZO.InstallMode)})}async execute(){Mml.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>M4.__importStar(ous())),{Pad:r}=await Promise.resolve().then(()=>M4.__importStar(e4r())),{ScrollableItems:n}=await Promise.resolve().then(()=>M4.__importStar(G1t())),{useMinistore:a,useMinistoreSetAll:o}=await Promise.resolve().then(()=>M4.__importStar(UYr())),{useKeypress:l}=await Promise.resolve().then(()=>M4.__importStar(lDe())),{renderForm:A}=await Promise.resolve().then(()=>M4.__importStar(F1t())),{Box:f,Text:I}=await Promise.resolve().then(()=>M4.__importStar(lH())),{default:C,useCallback:b,useEffect:E,useRef:N,useState:B}=await Promise.resolve().then(()=>M4.__importStar(sC())),F=await ZO.Configuration.find(this.context.cwd,this.context.plugins),{project:Q,workspace:X}=await ZO.Project.find(F,this.context.cwd),ae=await ZO.Cache.find(F);if(!X)throw new aus.WorkspaceRequiredError(Q.cwd,this.context.cwd);await Q.restoreInstallState({restoreResolutions:!1});let ne=this.context.stdout.rows-8,ce=(je,St)=>{let At=(0,Yml.diffWords)(je,St),Yt="";for(let Tr of At)Tr.added?Yt+=ZO.formatUtils.pretty(F,Tr.value,"green"):Tr.removed||(Yt+=Tr.value);return Yt},fe=(je,St)=>{if(je===St)return St;let At=ZO.structUtils.parseRange(je),Yt=ZO.structUtils.parseRange(St),Tr=At.selector.match(cus),Nr=Yt.selector.match(cus);if(!Tr||!Nr)return ce(je,St);let er=["gray","red","yellow","green","magenta"],vt=null,xt="";for(let Zr=1;Zr{let Yt=await Hml.suggestUtils.fetchDescriptorFrom(je,At,{project:Q,cache:ae,preserveModifier:St,workspace:X});return Yt!==null?Yt.range:je.range},de=async je=>{let St=Qml.default.valid(je.range)?`^${je.range}`:je.range,[At,Yt]=await Promise.all([ue(je,je.range,St).catch(()=>null),ue(je,je.range,"latest").catch(()=>null)]),Tr=[{value:null,label:je.range}];return At&&At!==je.range?Tr.push({value:At,label:fe(je.range,At)}):Tr.push({value:null,label:""}),Yt&&Yt!==At&&Yt!==je.range?Tr.push({value:Yt,label:fe(je.range,Yt)}):Tr.push({value:null,label:""}),Tr},be=()=>C.createElement(f,{flexDirection:"row"},C.createElement(f,{flexDirection:"column",width:49},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select packages.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select versions.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"c"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"r"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"l")," to select all ",C.createElement(I,{bold:!0,color:"cyanBright"},"current"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"range"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"latest"),"."))),C.createElement(f,{flexDirection:"column"},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to install.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to abort.")))),Se=()=>C.createElement(f,{flexDirection:"row",paddingTop:1,paddingBottom:1},C.createElement(f,{width:50},C.createElement(I,{bold:!0},C.createElement(I,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Current")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Range")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Latest"))),De=({active:je,descriptor:St,suggestions:At})=>{let[Yt,Tr]=a(St.descriptorHash,null),Nr=ZO.structUtils.stringifyIdent(St),er=Math.max(0,45-Nr.length);return C.createElement(C.Fragment,null,C.createElement(f,null,C.createElement(f,{width:45},C.createElement(I,{bold:!0},ZO.structUtils.prettyIdent(F,St)),C.createElement(r,{active:je,length:er})),C.createElement(t,{active:je,options:At,value:Yt,skewer:!0,onChange:Tr,sizes:[17,17,17]})))},k=({dependencies:je})=>{let St=o(),[At,Yt]=B(je.map(()=>null)),Tr=N(!0),Nr=async vt=>{let xt=await de(vt);return xt.filter(Zr=>Zr.label!=="").length<=1?null:{descriptor:vt,suggestions:xt}};E(()=>()=>{Tr.current=!1},[]),E(()=>{let vt=Math.trunc(ne*1.75),xt=je.slice(0,vt),Zr=je.slice(vt),qt=uus(Zr,ne),Xt=xt.map(Nr).reduce(async(lr,cr)=>{await lr;let Ar=await cr;Ar!==null&&Tr.current&&Yt(qr=>{let _n=qr.findIndex(jt=>jt===null),ke=[...qr];return ke[_n]=Ar,ke})},Promise.resolve());qt.reduce((lr,cr)=>Promise.all(cr.map(Ar=>Promise.resolve().then(()=>Nr(Ar)))).then(async Ar=>{Ar=Ar.filter(qr=>qr!==null),await lr,Tr.current&&Yt(qr=>{let _n=qr.findIndex(ke=>ke===null);return qr.slice(0,_n).concat(Ar).concat(qr.slice(_n+Ar.length))})}),Xt).then(()=>{Tr.current&&Yt(lr=>lr.filter(cr=>cr!==null))})},[]);let er=b(vt=>{if(vt!=="c"&&vt!=="r"&&vt!=="l")return;let xt=[];for(let Zr of At){if(Zr===null)continue;let qt;vt==="c"?qt=null:vt==="r"?qt=Zr.suggestions[1].value:qt=Zr.suggestions[2].value??Zr.suggestions[1].value,xt.push([Zr.descriptor.descriptorHash,qt])}St(xt)},[At,St]);return l({active:!0},er,[er]),At.length?C.createElement(n,{radius:ne>>1,children:At.map((vt,xt)=>vt!==null?C.createElement(De,{key:xt,active:!1,descriptor:vt.descriptor,suggestions:vt.suggestions}):C.createElement(I,{key:xt},"Loading..."))}):C.createElement(I,null,"No upgrades found")},ct=await A(({useSubmit:je})=>{je(a());let St=new Map;for(let Yt of Q.workspaces)for(let Tr of["dependencies","devDependencies"])for(let Nr of Yt.manifest[Tr].values())Q.tryWorkspaceByDescriptor(Nr)===null&&(Nr.range.startsWith("link:")||St.set(Nr.descriptorHash,Nr));let At=ZO.miscUtils.sortMap(St.values(),Yt=>ZO.structUtils.stringifyDescriptor(Yt));return C.createElement(f,{flexDirection:"column"},C.createElement(be,null),C.createElement(Se,null),C.createElement(k,{dependencies:At}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ct>"u")return 1;let Me=!1;for(let je of Q.workspaces)for(let St of["dependencies","devDependencies"]){let At=je.manifest[St];for(let Yt of At.values()){let Tr=ct.get(Yt.descriptorHash);typeof Tr<"u"&&Tr!==null&&(At.set(Yt.identHash,ZO.structUtils.makeDescriptor(Yt,Tr)),Me=!0)}}return Me?await Q.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:ae,mode:this.mode}):0}};D6e.paths=[["upgrade-interactive"]];D6e.usage=lus.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]});r4r.default=D6e});var fus=H(O_e=>{"use strict";Object.defineProperty(O_e,"__esModule",{value:!0});O_e.UpgradeInteractiveCommand=O_e.SearchCommand=void 0;var Aus=(Pa(),vi(Va)),dus=Aus.__importDefault(gos());O_e.SearchCommand=dus.default;var pus=Aus.__importDefault(gus());O_e.UpgradeInteractiveCommand=pus.default;var Jml={commands:[dus.default,pus.default]};O_e.default=Jml});var n4r=H(Cxt=>{"use strict";Object.defineProperty(Cxt,"__esModule",{value:!0});Cxt.JSR_PROTOCOL=void 0;Cxt.JSR_PROTOCOL="jsr:"});var _xt=H(k6e=>{"use strict";Object.defineProperty(k6e,"__esModule",{value:!0});k6e.convertDescriptorFromJsrToNpm=Kml;k6e.convertLocatorFromJsrToNpm=jml;k6e.convertLocatorFromNpmToJsr=zml;var Uml=yn(),H4=yn();function Kml(e){let t=e.range.slice(4);if(Uml.semverUtils.validRange(t))return H4.structUtils.makeDescriptor(e,`npm:${H4.structUtils.stringifyIdent(H4.structUtils.wrapIdentIntoScope(e,"jsr"))}@${t}`);let r=H4.structUtils.tryParseDescriptor(t,!0);if(r!==null)return H4.structUtils.makeDescriptor(e,`npm:${H4.structUtils.stringifyIdent(H4.structUtils.wrapIdentIntoScope(r,"jsr"))}@${r.range}`);throw new Error(`Invalid range: ${e.range}`)}function jml(e){return H4.structUtils.makeLocator(H4.structUtils.wrapIdentIntoScope(e,"jsr"),`npm:${e.reference.slice(4)}`)}function zml(e){return H4.structUtils.makeLocator(H4.structUtils.unwrapIdentFromScope(e,"jsr"),`jsr:${e.reference.slice(4)}`)}});var hus=H(yxt=>{"use strict";Object.defineProperty(yxt,"__esModule",{value:!0});yxt.JsrFetcher=void 0;var qml=n4r(),Ius=_xt(),i4r=class{supports(t,r){return t.reference.startsWith(qml.JSR_PROTOCOL)}getLocalPath(t,r){let n=(0,Ius.convertLocatorFromJsrToNpm)(t);return r.fetcher.getLocalPath(n,r)}fetch(t,r){let n=(0,Ius.convertLocatorFromJsrToNpm)(t);return r.fetcher.fetch(n,r)}};yxt.JsrFetcher=i4r});var Cus=H(bxt=>{"use strict";Object.defineProperty(bxt,"__esModule",{value:!0});bxt.JsrResolver=void 0;var mus=n4r(),M_e=_xt(),s4r=class{supportsDescriptor(t,r){return!!t.range.startsWith(mus.JSR_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(mus.JSR_PROTOCOL)}shouldPersistResolution(t,r){let n=(0,M_e.convertLocatorFromJsrToNpm)(t);return r.resolver.shouldPersistResolution(n,r)}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{inner:(0,M_e.convertDescriptorFromJsrToNpm)(t)}}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency((0,M_e.convertDescriptorFromJsrToNpm)(t));return(await n.resolver.getCandidates(a,r,n)).map(l=>(0,M_e.convertLocatorFromNpmToJsr)(l))}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency((0,M_e.convertDescriptorFromJsrToNpm)(t));return a.resolver.getSatisfying(o,r,n,a)}async resolve(t,r){let n=(0,M_e.convertLocatorFromJsrToNpm)(t),a=await r.resolver.resolve(n,r);return{...a,...(0,M_e.convertLocatorFromNpmToJsr)(a)}}};bxt.JsrResolver=s4r});var yus=H(o4r=>{"use strict";Object.defineProperty(o4r,"__esModule",{value:!0});var _us=yn(),$ml=hus(),eCl=Cus(),tCl=_xt(),rCl=["dependencies","devDependencies","peerDependencies"];function nCl(e,t){for(let r of rCl)for(let n of e.manifest.getForScope(r).values()){if(!n.range.startsWith("jsr:"))continue;let a=(0,tCl.convertDescriptorFromJsrToNpm)(n),o=r==="dependencies"?_us.structUtils.makeDescriptor(n,"unknown"):null,l=o!==null&&e.manifest.ensureDependencyMeta(o).optional?"optionalDependencies":r;t[l][_us.structUtils.stringifyIdent(n)]=a.range}}var iCl={hooks:{beforeWorkspacePacking:nCl},resolvers:[eCl.JsrResolver],fetchers:[$ml.JsrFetcher]};o4r.default=iCl});var Eus=H(a4r=>{"use strict";Object.defineProperty(a4r,"__esModule",{value:!0});var bus=el(),Ext=yn(),sCl=yn(),x6e=($c(),vi(rg)),G6e=class extends bus.BaseCommand{constructor(){super(...arguments),this.json=x6e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=x6e.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=x6e.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=x6e.Option.Rest()}async execute(){let t=await Ext.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Ext.Project.find(t,this.context.cwd),a=await Ext.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!n)throw new bus.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([n])}else o=new Set(this.workspaces.map(l=>r.getWorkspaceByIdent(sCl.structUtils.parseIdent(l))));for(let l of o)for(let A of this.production?["dependencies"]:Ext.Manifest.hardDependencies)for(let f of l.manifest.getForScope(A).values()){let I=r.tryWorkspaceByDescriptor(f);I!==null&&o.add(I)}for(let l of r.workspaces)o.has(l)?this.production&&l.manifest.devDependencies.clear():(l.manifest.installConfig=l.manifest.installConfig||{},l.manifest.installConfig.selfReferences=!1,l.manifest.dependencies.clear(),l.manifest.devDependencies.clear(),l.manifest.peerDependencies.clear(),l.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};G6e.paths=[["workspaces","focus"]];G6e.usage=x6e.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});a4r.default=G6e});var Bus=H(u4r=>{"use strict";Object.defineProperty(u4r,"__esModule",{value:!0});var l4r=(Pa(),vi(Va)),Sus=el(),c4r=yn(),Sxt=yn(),eF=yn(),oCl=iDe(),MR=($c(),vi(rg)),F6e=l4r.__importDefault(Ek()),aCl=l4r.__importDefault(kfe()),Dte=l4r.__importStar((CZ(),vi(mZ))),iGe=class extends Sus.BaseCommand{constructor(){super(...arguments),this.from=MR.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=MR.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=MR.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=MR.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=MR.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=MR.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=MR.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=MR.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:Dte.isOneOf([Dte.isEnum(["unlimited"]),Dte.applyCascade(Dte.isNumber(),[Dte.isInteger(),Dte.isAtLeast(1)])])}),this.topological=MR.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=MR.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=MR.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=MR.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=MR.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=MR.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=MR.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=MR.Option.String(),this.args=MR.Option.Proxy()}async execute(){let t=await c4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await c4r.Project.find(t,this.context.cwd);if(!this.all&&!n)throw new Sus.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new MR.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let l=Se=>{this.dryRun&&this.context.stdout.write(`${Se} +`)},A=()=>{let Se=this.from.map(De=>F6e.default.matcher(De));return r.workspaces.filter(De=>{let k=eF.structUtils.stringifyIdent(De.anchoredLocator),et=De.relativeCwd;return Se.some(ct=>ct(k)||ct(et))})},f=[];if(this.since?(l("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await oCl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(l("Option --from is set; selecting the specified workspaces"),f=[...A()]):this.worktree?(l("Option --worktree is set; selecting the current workspace"),f=[n]):this.recursive?(l("Option --recursive is set; selecting the current workspace"),f=[n]):this.all&&(l("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Se of f)l(` - ${Se.relativeCwd} ${eF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);f.length>0&&l("")}let I;if(this.recursive?this.since?(l("Option --recursive --since is set; recursively selecting all dependent workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependents()]).flat())):(l("Option --recursive is set; recursively selecting all transitive dependencies"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(l("Option --worktree is set; recursively selecting all nested workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceChildren()]).flat())):I=null,I!==null&&(f=[...new Set([...f,...I])],this.dryRun))for(let Se of I)l(` - ${Se.relativeCwd} - ${eF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);let C=[],b=!1;if(o?.includes(":")){for(let Se of r.workspaces)if(Se.manifest.scripts.has(o)&&(b=!b,b===!1))break}for(let Se of f){if(o&&!Se.manifest.scripts.has(o)&&!b&&!(await t4r.scriptUtils.getWorkspaceAccessibleBinaries(Se)).has(o)){l(`Excluding ${Se.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Se.cwd===n.cwd)){if(this.include.length>0&&!x6e.default.isMatch(eF.structUtils.stringifyIdent(Se.anchoredLocator),this.include)&&!x6e.default.isMatch(Se.relativeCwd,this.include)){l(`Excluding ${Se.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(x6e.default.isMatch(eF.structUtils.stringifyIdent(Se.anchoredLocator),this.exclude)||x6e.default.isMatch(Se.relativeCwd,this.exclude))){l(`Excluding ${Se.relativeCwd} because it matches the --exclude filter`);continue}if(this.publicOnly&&Se.manifest.private===!0){l(`Excluding ${Se.relativeCwd} because it's a private workspace and --no-private was set`);continue}C.push(Se)}}if(C.sort((Se,De)=>eF.structUtils.stringifyIdent(Se.anchoredLocator).localeCompare(eF.structUtils.stringifyIdent(De.anchoredLocator))),this.dryRun)return 0;let E=this.verbose??(this.context.stdout.isTTY?1/0:0),N=E>0,B=E>1,F=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(eF.nodeUtils.availableParallelism()/2):1,Q=F===1?!1:this.parallel,X=Q?this.interlaced:!0,ae=(0,fml.default)(F),ne=new Map,ce=new Set,fe=0,ue=null,de=!1,be=await _xt.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Se=>{let De=async(k,{commandIndex:et})=>{if(de)return-1;!Q&&B&&et>1&&Se.reportSeparator();let ct=Iml(k,{configuration:t,label:N,commandIndex:et}),[Me,je]=lus(Se,{prefix:ct,interlaced:X}),[St,At]=lus(Se,{prefix:ct,interlaced:X});try{B&&Se.reportInfo(null,`${ct?`${ct} `:""}Process started`);let Yt=Date.now(),Tr=await this.cli.run([this.commandName,...this.args],{cwd:k.cwd,stdout:Me,stderr:St})||0;Me.end(),St.end(),await je,await At;let Nr=Date.now();if(B){let er=t.get("enableTimers")?`, completed in ${eF.formatUtils.pretty(t,Nr-Yt,eF.formatUtils.Type.DURATION)}`:"";Se.reportInfo(null,`${ct?`${ct} `:""}Process exited (exit code ${Tr})${er}`)}return Tr===130&&(de=!0,ue=Tr),Tr}catch(Yt){throw Me.end(),St.end(),await je,await At,Yt}};for(let k of C)ne.set(k.anchoredLocator.locatorHash,k);for(;ne.size>0&&!Se.hasErrors();){let k=[];for(let[je,St]of ne){if(ce.has(St.anchoredDescriptor.descriptorHash))continue;let At=!0;if(this.topological||this.topologicalDev){let Yt=this.topologicalDev?new Map([...St.manifest.dependencies,...St.manifest.devDependencies]):St.manifest.dependencies;for(let Tr of Yt.values()){let Nr=r.tryWorkspaceByDescriptor(Tr);if(At=Nr===null||!ne.has(Nr.anchoredLocator.locatorHash),!At)break}}if(At&&(ce.add(St.anchoredDescriptor.descriptorHash),k.push(ae(async()=>{let Yt=await De(St,{commandIndex:++fe});return ne.delete(je),ce.delete(St.anchoredDescriptor.descriptorHash),{workspace:St,exitCode:Yt}})),!Q))break}if(k.length===0){let je=Array.from(ne.values()).map(St=>eF.structUtils.prettyLocator(t,St.anchoredLocator)).join(", ");Se.reportError(_xt.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${je})`);return}let et=await Promise.all(k);et.forEach(({workspace:je,exitCode:St})=>{St!==0&&Se.reportError(_xt.MessageName.UNNAMED,`The command failed in workspace ${eF.structUtils.prettyLocator(t,je.anchoredLocator)} with exit code ${St}`)});let Me=et.map(je=>je.exitCode).find(je=>je!==0);(this.topological||this.topologicalDev)&&typeof Me<"u"&&Se.reportError(_xt.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return ue!==null?ue:be.exitCode()}};rGe.paths=[["workspaces","foreach"]];rGe.usage=MR.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. You can also use the `--no-private` flag to avoid running the command in private workspaces.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A --no-private npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});rGe.schema=[Nte.hasKeyRelationship("all",Nte.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),Nte.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];n4r.default=rGe;function lus(e,{prefix:t,interlaced:r}){let n=e.createStreamReporter(t),a=new eF.miscUtils.DefaultStream;a.pipe(n,{end:!1}),a.on("finish",()=>{n.end()});let o=new Promise(A=>{n.on("finish",()=>{A(a.active)})});if(r)return[a,o];let l=new eF.miscUtils.BufferStream;return l.pipe(a,{end:!1}),l.on("finish",()=>{a.end()}),[l,o]}function Iml(e,{configuration:t,commandIndex:r,label:n}){if(!n)return null;let o=`[${eF.structUtils.stringifyIdent(e.anchoredLocator)}]:`,l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[r%l.length];return eF.formatUtils.pretty(t,o,A)}});var pus=H(M_e=>{"use strict";Object.defineProperty(M_e,"__esModule",{value:!0});M_e.WorkspacesForeachCommand=M_e.WorkspacesFocusCommand=void 0;var gus=(Pa(),vi(Va)),Aus=gus.__importDefault(aus());M_e.WorkspacesFocusCommand=Aus.default;var dus=gus.__importDefault(uus());M_e.WorkspacesForeachCommand=dus.default;var hml={commands:[Aus.default,dus.default]};M_e.default=hml});var Ius=H(yxt=>{"use strict";Object.defineProperty(yxt,"__esModule",{value:!0});yxt.hasDefinitelyTyped=void 0;var mml=(Pa(),vi(Va)),fus=Sn(),Cml=mml.__importDefault(VYr()),_ml="e8e1bd300d860104bb8c58453ffa1eb4",yml="OFCNCOG2CU",bml=async(e,t)=>{let r=fus.structUtils.stringifyIdent(e),a=Eml(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};yxt.hasDefinitelyTyped=bml;var Eml=e=>{let t={async send(r){try{let n=await fus.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:n.body,isTimedOut:!1,status:n.statusCode}}catch(n){return{content:n.response.body,isTimedOut:!1,status:n.response.statusCode}}}};return(0,Cml.default)(yml,_ml,{requester:t})}});var Cus=H(s4r=>{"use strict";Object.defineProperty(s4r,"__esModule",{value:!0});var Sml=(Pa(),vi(Va)),i4r=Sn(),u6=Sn(),lue=ro(),hus=Axt(),vml=Sml.__importDefault(UC()),Bml=Ius(),mus=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,wml=async(e,t,r,n)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(lue.xfs.existsSync(lue.ppath.join(e.cwd,"tsconfig.json"))||lue.xfs.existsSync(lue.ppath.join(a.cwd,"tsconfig.json")))))return;let A=o.makeResolver(),f={project:a,resolver:A,report:new u6.ThrowReport};if(!await(0,Bml.hasDefinitelyTyped)(r,o))return;let C=mus(r),b=u6.structUtils.parseRange(r.range).selector;if(!u6.semverUtils.validRange(b)){let Q=o.normalizeDependency(r),X=await A.getCandidates(Q,{},f);b=u6.structUtils.parseRange(X[0].reference).selector}let E=vml.default.coerce(b);if(E===null)return;let N=`${hus.suggestUtils.Modifier.CARET}${E.major}`,B=u6.structUtils.makeDescriptor(u6.structUtils.makeIdent("types",C),N),F=u6.miscUtils.mapAndFind(a.workspaces,Q=>{let X=Q.manifest.dependencies.get(r.identHash)?.descriptorHash,ae=Q.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(X!==r.descriptorHash&&ae!==r.descriptorHash)return u6.miscUtils.mapAndFind.skip;let ne=[];for(let ce of i4r.Manifest.allDependencies){let fe=Q.manifest[ce].get(B.identHash);typeof fe>"u"||ne.push([ce,fe])}return ne.length===0?u6.miscUtils.mapAndFind.skip:ne});if(typeof F<"u")for(let[Q,X]of F)e.manifest[Q].set(X.identHash,X);else{try{let Q=o.normalizeDependency(B);if((await A.getCandidates(Q,{},f)).length===0)return}catch{return}e.manifest[hus.suggestUtils.Target.DEVELOPMENT].set(B.identHash,B)}},Tml=async(e,t,r)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n;if(!(a.get("tsEnableAutoTypes")??(lue.xfs.existsSync(lue.ppath.join(e.cwd,"tsconfig.json"))||lue.xfs.existsSync(lue.ppath.join(n.cwd,"tsconfig.json")))))return;let l=mus(r),A=u6.structUtils.makeIdent("types",l);for(let f of i4r.Manifest.allDependencies)typeof e.manifest[f].get(A.identHash)>"u"||e.manifest[f].delete(A.identHash)},Rml=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},Nml={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:i4r.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:wml,afterWorkspaceDependencyRemoval:Tml,beforeWorkspacePacking:Rml}};s4r.default=Nml});var _us=H(bxt=>{"use strict";Object.defineProperty(bxt,"__esModule",{value:!0});bxt.CATALOG_DESCRIPTOR_PREFIX=void 0;bxt.CATALOG_DESCRIPTOR_PREFIX="catalog:"});var Eus=H(TH=>{"use strict";Object.defineProperty(TH,"__esModule",{value:!0});TH.resolveDescriptorFromCatalog=TH.getCatalogEntryName=TH.getCatalogName=TH.isCatalogReference=void 0;var H_e=Sn(),bus=_us(),Dml=e=>e.startsWith(bus.CATALOG_DESCRIPTOR_PREFIX);TH.isCatalogReference=Dml;var kml=e=>e.range.slice(bus.CATALOG_DESCRIPTOR_PREFIX.length)||null;TH.getCatalogName=kml;var yus=e=>e===null?"default catalog":`catalog "${e}"`,xml=e=>e.scope?`@${e.scope}/${e.name}`:e.name;TH.getCatalogEntryName=xml;var Gml=(e,t,r,n)=>{let a=(0,TH.getCatalogName)(t),o;if(a===null)o=e.configuration.get("catalog");else try{let C=e.configuration.get("catalogs");C&&(o=C.get(a))}catch{o=void 0}if(!o||o.size===0)throw new H_e.ReportError(H_e.MessageName.RESOLUTION_FAILED,`${H_e.structUtils.prettyDescriptor(e.configuration,t)}: ${yus(a)} not found or empty`);let l=(0,TH.getCatalogEntryName)(t),A=o.get(l);if(!A)throw new H_e.ReportError(H_e.MessageName.RESOLUTION_FAILED,`${H_e.structUtils.prettyDescriptor(e.configuration,t)}: entry not found in ${yus(a)}`);let f=e.configuration.normalizeDependency(H_e.structUtils.makeDescriptor(t,A));return r.supportsDescriptor(f,n)?r.bindDescriptor(f,e.topLevelWorkspace.anchoredLocator,n):f};TH.resolveDescriptorFromCatalog=Gml});var Sus=H(o4r=>{"use strict";Object.defineProperty(o4r,"__esModule",{value:!0});var RH=Sn(),Ext=Eus(),Fml={configuration:{catalog:{description:"The default catalog of packages",type:RH.SettingsType.MAP,valueDefinition:{description:"The catalog of packages",type:RH.SettingsType.STRING}},catalogs:{description:"Named catalogs of packages",type:RH.SettingsType.MAP,valueDefinition:{description:"A named catalog",type:RH.SettingsType.MAP,valueDefinition:{description:"Package version in the catalog",type:RH.SettingsType.STRING}}}},hooks:{beforeWorkspacePacking:(e,t)=>{let r=e.project,n=r.configuration.makeResolver(),a={project:r,resolver:n,report:new RH.ThrowReport};for(let o of RH.Manifest.allDependencies){let l=t[o];if(l)for(let[A,f]of Object.entries(l)){if(typeof f!="string"||!(0,Ext.isCatalogReference)(f))continue;let I=RH.structUtils.parseIdent(A),C=RH.structUtils.makeDescriptor(I,f),b=(0,Ext.resolveDescriptorFromCatalog)(r,C,n,a),{protocol:E,source:N,params:B,selector:F}=RH.structUtils.parseRange(RH.structUtils.convertToManifestRange(b.range));E===e.project.configuration.get("defaultProtocol")&&(E=null),l[A]=RH.structUtils.makeRange({protocol:E,source:N,params:B,selector:F})}}},reduceDependency:async(e,t,r,n,{resolver:a,resolveOptions:o})=>(0,Ext.isCatalogReference)(e.range)?(0,Ext.resolveDescriptorFromCatalog)(t,e,a,o):e}};o4r.default=Fml});var vus=H(Sxt=>{"use strict";Object.defineProperty(Sxt,"__esModule",{value:!0});Sxt.packageExtensions=void 0;var Wl={optional:!0};Sxt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:Wl,zenObservable:Wl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:Wl,zenObservable:Wl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":Wl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":Wl,"postcss-jsx":Wl,"postcss-less":Wl,"postcss-markdown":Wl,"postcss-scss":Wl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:Wl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:Wl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:Wl,"vue-template-compiler":Wl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:Wl,"utf-8-validate":Wl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Wl,"vuetify-loader":Wl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Wl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":Wl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":Wl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:Wl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:Wl,tinyliquid:Wl,"liquid-node":Wl,jade:Wl,"then-jade":Wl,dust:Wl,"dustjs-helpers":Wl,"dustjs-linkedin":Wl,swig:Wl,"swig-templates":Wl,"razor-tmpl":Wl,atpl:Wl,liquor:Wl,twig:Wl,ejs:Wl,eco:Wl,jazz:Wl,jqtpl:Wl,hamljs:Wl,hamlet:Wl,whiskers:Wl,"haml-coffee":Wl,"hogan.js":Wl,templayed:Wl,handlebars:Wl,underscore:Wl,lodash:Wl,pug:Wl,"then-pug":Wl,qejs:Wl,walrus:Wl,mustache:Wl,just:Wl,ect:Wl,mote:Wl,toffee:Wl,dot:Wl,"bracket-template":Wl,ractive:Wl,nunjucks:Wl,htmling:Wl,"babel-core":Wl,plates:Wl,"react-dom":Wl,react:Wl,"arc-templates":Wl,vash:Wl,slm:Wl,marko:Wl,teacup:Wl,"coffee-script":Wl,squirrelly:Wl,twing:Wl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":Wl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":Wl,vue:Wl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:Wl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:Wl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":Wl,"webpack-command":Wl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":Wl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":Wl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:Wl,jimp:Wl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":Wl,"eslint-import-resolver-typescript":Wl,"eslint-import-resolver-webpack":Wl,"@typescript-eslint/parser":Wl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":Wl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":Wl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:Wl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:Wl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":Wl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:Wl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:Wl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:Wl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":Wl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}],["notistack@^3.0.0",{dependencies:{csstype:"^3.0.10"}}],["@fastify/type-provider-typebox@^5.0.0",{peerDependencies:{fastify:"^5.0.0"}}],["@fastify/type-provider-typebox@^4.0.0",{peerDependencies:{fastify:"^4.0.0"}}]]});var Bus=H(vxt=>{"use strict";Object.defineProperty(vxt,"__esModule",{value:!0});vxt.packageExtensions=void 0;var Zml=vus();Object.defineProperty(vxt,"packageExtensions",{enumerable:!0,get:function(){return Zml.packageExtensions}})});var wus=H(c4r=>{"use strict";Object.defineProperty(c4r,"__esModule",{value:!0});c4r.getPatch=Lml;var a4r;function Lml(){return typeof a4r>"u"&&(a4r=wt("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),a4r}});var Tus=H(u4r=>{"use strict";Object.defineProperty(u4r,"__esModule",{value:!0});u4r.getPatch=Vml;var l4r;function Vml(){return typeof l4r>"u"&&(l4r=wt("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),l4r}});var Rus=H(A4r=>{"use strict";Object.defineProperty(A4r,"__esModule",{value:!0});A4r.getPatch=Pml;var g4r;function Pml(){return typeof g4r>"u"&&(g4r=wt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),g4r}});var Dus=H(d4r=>{"use strict";Object.defineProperty(d4r,"__esModule",{value:!0});var Dte=Sn(),Wml=Bus(),Oml=wus(),Mml=Tus(),Hml=Rus(),Nus=new Map([[Dte.structUtils.makeIdent(null,"fsevents").identHash,Oml.getPatch],[Dte.structUtils.makeIdent(null,"resolve").identHash,Mml.getPatch],[Dte.structUtils.makeIdent(null,"typescript").identHash,Hml.getPatch]]),Yml={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,n]of Wml.packageExtensions)t(Dte.structUtils.parseDescriptor(r,!0),n)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let n=Dte.structUtils.parseIdent(t.slice(r.length)),a=Nus.get(n.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,n)=>typeof Nus.get(e.identHash)>"u"?e:Dte.structUtils.makeDescriptor(e,Dte.structUtils.makeRange({protocol:"patch:",source:Dte.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};d4r.default=Yml});var G6e=H(Y_e=>{"use strict";Object.defineProperty(Y_e,"__esModule",{value:!0});Y_e.Index=void 0;Y_e.normalizePath=Kml;Y_e.applyEngineReport=zml;Y_e.convertReportToRoot=qml;var Tm=Sn(),Bxt=kW(),p4r=class{constructor(t){this.indexedFields=t,this.items=[],this.indexes={},this.clear()}clear(){this.items=[];for(let t of this.indexedFields)this.indexes[t]=new Map}insert(t){this.items.push(t);for(let r of this.indexedFields){let n=Object.hasOwn(t,r)?t[r]:void 0;if(typeof n>"u")continue;Tm.miscUtils.getArrayWithDefault(this.indexes[r],n).push(t)}return t}find(t){if(typeof t>"u")return this.items;let r=Object.entries(t);if(r.length===0)return this.items;let n=[],a;for(let[l,A]of r){let f=l,I=Object.hasOwn(this.indexes,f)?this.indexes[f]:void 0;if(typeof I>"u"){n.push([f,A]);continue}let C=new Set(I.get(A)??[]);if(C.size===0)return[];if(typeof a>"u")a=C;else for(let b of a)C.has(b)||a.delete(b);if(a.size===0)break}let o=[...a??[]];return n.length>0&&(o=o.filter(l=>{for(let[A,f]of n)if(!(typeof f<"u"?Object.hasOwn(l,A)&&l[A]===f:Object.hasOwn(l,A)===!1))return!1;return!0})),o}};Y_e.Index=p4r;var Qml=/^[0-9]+$/,Xml=/^[a-zA-Z0-9_]+$/,Jml=new Set(["scripts",...Tm.Manifest.allDependencies]);function Uml(e,t){return t===1&&Jml.has(e[0])}function Kml(e){let t=Array.isArray(e)?e:(0,Bxt.toPath)(e);return t.map((n,a)=>Qml.test(n)?`[${n}]`:Xml.test(n)&&!Uml(t,a)?`.${n}`:`[${JSON.stringify(n)}]`).join("").replace(/^\./,"")}function jml(e,t){let r=[];if(t.methodName!==null&&r.push(Tm.formatUtils.pretty(e,t.methodName,Tm.formatUtils.Type.CODE)),t.file!==null){let n=[];n.push(Tm.formatUtils.pretty(e,t.file,Tm.formatUtils.Type.PATH)),t.line!==null&&(n.push(Tm.formatUtils.pretty(e,t.line,Tm.formatUtils.Type.NUMBER)),t.column!==null&&n.push(Tm.formatUtils.pretty(e,t.column,Tm.formatUtils.Type.NUMBER))),r.push(`(${n.join(Tm.formatUtils.pretty(e,":","grey"))})`)}return r.join(" ")}function zml(e,{manifestUpdates:t,reportedErrors:r},{fix:n}={}){let a=new Map,o=new Map,l=[...r.keys()].map(A=>[A,new Map]);for(let[A,f]of[...l,...t]){let I=r.get(A)?.map(N=>({text:N,fixable:!1}))??[],C=!1,b=e.getWorkspaceByCwd(A),E=b.manifest.exportTo({});for(let[N,B]of f){if(B.size>1){let F=[...B].map(([Q,X])=>{let ae=Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT),ne=X.size>0?jml(e.configuration,X.values().next().value):null;return ne!==null?` + ${eF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);let C=[],b=!1;if(o?.includes(":")){for(let Se of r.workspaces)if(Se.manifest.scripts.has(o)&&(b=!b,b===!1))break}for(let Se of f){if(o&&!Se.manifest.scripts.has(o)&&!b&&!(await c4r.scriptUtils.getWorkspaceAccessibleBinaries(Se)).has(o)){l(`Excluding ${Se.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Se.cwd===n.cwd)){if(this.include.length>0&&!F6e.default.isMatch(eF.structUtils.stringifyIdent(Se.anchoredLocator),this.include)&&!F6e.default.isMatch(Se.relativeCwd,this.include)){l(`Excluding ${Se.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(F6e.default.isMatch(eF.structUtils.stringifyIdent(Se.anchoredLocator),this.exclude)||F6e.default.isMatch(Se.relativeCwd,this.exclude))){l(`Excluding ${Se.relativeCwd} because it matches the --exclude filter`);continue}if(this.publicOnly&&Se.manifest.private===!0){l(`Excluding ${Se.relativeCwd} because it's a private workspace and --no-private was set`);continue}C.push(Se)}}if(C.sort((Se,De)=>eF.structUtils.stringifyIdent(Se.anchoredLocator).localeCompare(eF.structUtils.stringifyIdent(De.anchoredLocator))),this.dryRun)return 0;let E=this.verbose??(this.context.stdout.isTTY?1/0:0),N=E>0,B=E>1,F=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(eF.nodeUtils.availableParallelism()/2):1,Q=F===1?!1:this.parallel,X=Q?this.interlaced:!0,ae=(0,aCl.default)(F),ne=new Map,ce=new Set,fe=0,ue=null,de=!1,be=await Sxt.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Se=>{let De=async(k,{commandIndex:et})=>{if(de)return-1;!Q&&B&&et>1&&Se.reportSeparator();let ct=cCl(k,{configuration:t,label:N,commandIndex:et}),[Me,je]=vus(Se,{prefix:ct,interlaced:X}),[St,At]=vus(Se,{prefix:ct,interlaced:X});try{B&&Se.reportInfo(null,`${ct?`${ct} `:""}Process started`);let Yt=Date.now(),Tr=await this.cli.run([this.commandName,...this.args],{cwd:k.cwd,stdout:Me,stderr:St})||0;Me.end(),St.end(),await je,await At;let Nr=Date.now();if(B){let er=t.get("enableTimers")?`, completed in ${eF.formatUtils.pretty(t,Nr-Yt,eF.formatUtils.Type.DURATION)}`:"";Se.reportInfo(null,`${ct?`${ct} `:""}Process exited (exit code ${Tr})${er}`)}return Tr===130&&(de=!0,ue=Tr),Tr}catch(Yt){throw Me.end(),St.end(),await je,await At,Yt}};for(let k of C)ne.set(k.anchoredLocator.locatorHash,k);for(;ne.size>0&&!Se.hasErrors();){let k=[];for(let[je,St]of ne){if(ce.has(St.anchoredDescriptor.descriptorHash))continue;let At=!0;if(this.topological||this.topologicalDev){let Yt=this.topologicalDev?new Map([...St.manifest.dependencies,...St.manifest.devDependencies]):St.manifest.dependencies;for(let Tr of Yt.values()){let Nr=r.tryWorkspaceByDescriptor(Tr);if(At=Nr===null||!ne.has(Nr.anchoredLocator.locatorHash),!At)break}}if(At&&(ce.add(St.anchoredDescriptor.descriptorHash),k.push(ae(async()=>{let Yt=await De(St,{commandIndex:++fe});return ne.delete(je),ce.delete(St.anchoredDescriptor.descriptorHash),{workspace:St,exitCode:Yt}})),!Q))break}if(k.length===0){let je=Array.from(ne.values()).map(St=>eF.structUtils.prettyLocator(t,St.anchoredLocator)).join(", ");Se.reportError(Sxt.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${je})`);return}let et=await Promise.all(k);et.forEach(({workspace:je,exitCode:St})=>{St!==0&&Se.reportError(Sxt.MessageName.UNNAMED,`The command failed in workspace ${eF.structUtils.prettyLocator(t,je.anchoredLocator)} with exit code ${St}`)});let Me=et.map(je=>je.exitCode).find(je=>je!==0);(this.topological||this.topologicalDev)&&typeof Me<"u"&&Se.reportError(Sxt.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return ue!==null?ue:be.exitCode()}};iGe.paths=[["workspaces","foreach"]];iGe.usage=MR.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. You can also use the `--no-private` flag to avoid running the command in private workspaces.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A --no-private npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});iGe.schema=[Dte.hasKeyRelationship("all",Dte.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),Dte.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];u4r.default=iGe;function vus(e,{prefix:t,interlaced:r}){let n=e.createStreamReporter(t),a=new eF.miscUtils.DefaultStream;a.pipe(n,{end:!1}),a.on("finish",()=>{n.end()});let o=new Promise(A=>{n.on("finish",()=>{A(a.active)})});if(r)return[a,o];let l=new eF.miscUtils.BufferStream;return l.pipe(a,{end:!1}),l.on("finish",()=>{a.end()}),[l,o]}function cCl(e,{configuration:t,commandIndex:r,label:n}){if(!n)return null;let o=`[${eF.structUtils.stringifyIdent(e.anchoredLocator)}]:`,l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[r%l.length];return eF.formatUtils.pretty(t,o,A)}});var Nus=H(H_e=>{"use strict";Object.defineProperty(H_e,"__esModule",{value:!0});H_e.WorkspacesForeachCommand=H_e.WorkspacesFocusCommand=void 0;var wus=(Pa(),vi(Va)),Tus=wus.__importDefault(Eus());H_e.WorkspacesFocusCommand=Tus.default;var Rus=wus.__importDefault(Bus());H_e.WorkspacesForeachCommand=Rus.default;var lCl={commands:[Tus.default,Rus.default]};H_e.default=lCl});var kus=H(vxt=>{"use strict";Object.defineProperty(vxt,"__esModule",{value:!0});vxt.hasDefinitelyTyped=void 0;var uCl=(Pa(),vi(Va)),Dus=yn(),gCl=uCl.__importDefault(QYr()),ACl="e8e1bd300d860104bb8c58453ffa1eb4",dCl="OFCNCOG2CU",pCl=async(e,t)=>{let r=Dus.structUtils.stringifyIdent(e),a=fCl(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};vxt.hasDefinitelyTyped=pCl;var fCl=e=>{let t={async send(r){try{let n=await Dus.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:n.body,isTimedOut:!1,status:n.statusCode}}catch(n){return{content:n.response.body,isTimedOut:!1,status:n.response.statusCode}}}};return(0,gCl.default)(dCl,ACl,{requester:t})}});var Fus=H(A4r=>{"use strict";Object.defineProperty(A4r,"__esModule",{value:!0});var ICl=(Pa(),vi(Va)),g4r=yn(),u6=yn(),uue=zs(),xus=Ixt(),hCl=ICl.__importDefault(UC()),mCl=kus(),Gus=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,CCl=async(e,t,r,n)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(uue.xfs.existsSync(uue.ppath.join(e.cwd,"tsconfig.json"))||uue.xfs.existsSync(uue.ppath.join(a.cwd,"tsconfig.json")))))return;let A=o.makeResolver(),f={project:a,resolver:A,report:new u6.ThrowReport};if(!await(0,mCl.hasDefinitelyTyped)(r,o))return;let C=Gus(r),b=u6.structUtils.parseRange(r.range).selector;if(!u6.semverUtils.validRange(b)){let Q=o.normalizeDependency(r),X=await A.getCandidates(Q,{},f);b=u6.structUtils.parseRange(X[0].reference).selector}let E=hCl.default.coerce(b);if(E===null)return;let N=`${xus.suggestUtils.Modifier.CARET}${E.major}`,B=u6.structUtils.makeDescriptor(u6.structUtils.makeIdent("types",C),N),F=u6.miscUtils.mapAndFind(a.workspaces,Q=>{let X=Q.manifest.dependencies.get(r.identHash)?.descriptorHash,ae=Q.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(X!==r.descriptorHash&&ae!==r.descriptorHash)return u6.miscUtils.mapAndFind.skip;let ne=[];for(let ce of g4r.Manifest.allDependencies){let fe=Q.manifest[ce].get(B.identHash);typeof fe>"u"||ne.push([ce,fe])}return ne.length===0?u6.miscUtils.mapAndFind.skip:ne});if(typeof F<"u")for(let[Q,X]of F)e.manifest[Q].set(X.identHash,X);else{try{let Q=o.normalizeDependency(B);if((await A.getCandidates(Q,{},f)).length===0)return}catch{return}e.manifest[xus.suggestUtils.Target.DEVELOPMENT].set(B.identHash,B)}},_Cl=async(e,t,r)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n;if(!(a.get("tsEnableAutoTypes")??(uue.xfs.existsSync(uue.ppath.join(e.cwd,"tsconfig.json"))||uue.xfs.existsSync(uue.ppath.join(n.cwd,"tsconfig.json")))))return;let l=Gus(r),A=u6.structUtils.makeIdent("types",l);for(let f of g4r.Manifest.allDependencies)typeof e.manifest[f].get(A.identHash)>"u"||e.manifest[f].delete(A.identHash)},yCl=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},bCl={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:g4r.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:CCl,afterWorkspaceDependencyRemoval:_Cl,beforeWorkspacePacking:yCl}};A4r.default=bCl});var Zus=H(Bxt=>{"use strict";Object.defineProperty(Bxt,"__esModule",{value:!0});Bxt.CATALOG_DESCRIPTOR_PREFIX=void 0;Bxt.CATALOG_DESCRIPTOR_PREFIX="catalog:"});var Pus=H(TH=>{"use strict";Object.defineProperty(TH,"__esModule",{value:!0});TH.resolveDescriptorFromCatalog=TH.getCatalogEntryName=TH.getCatalogName=TH.isCatalogReference=void 0;var Y_e=yn(),Vus=Zus(),ECl=e=>e.startsWith(Vus.CATALOG_DESCRIPTOR_PREFIX);TH.isCatalogReference=ECl;var SCl=e=>e.range.slice(Vus.CATALOG_DESCRIPTOR_PREFIX.length)||null;TH.getCatalogName=SCl;var Lus=e=>e===null?"default catalog":`catalog "${e}"`,vCl=e=>e.scope?`@${e.scope}/${e.name}`:e.name;TH.getCatalogEntryName=vCl;var BCl=(e,t,r,n)=>{let a=(0,TH.getCatalogName)(t),o;if(a===null)o=e.configuration.get("catalog");else try{let C=e.configuration.get("catalogs");C&&(o=C.get(a))}catch{o=void 0}if(!o||o.size===0)throw new Y_e.ReportError(Y_e.MessageName.RESOLUTION_FAILED,`${Y_e.structUtils.prettyDescriptor(e.configuration,t)}: ${Lus(a)} not found or empty`);let l=(0,TH.getCatalogEntryName)(t),A=o.get(l);if(!A)throw new Y_e.ReportError(Y_e.MessageName.RESOLUTION_FAILED,`${Y_e.structUtils.prettyDescriptor(e.configuration,t)}: entry not found in ${Lus(a)}`);let f=e.configuration.normalizeDependency(Y_e.structUtils.makeDescriptor(t,A));return r.supportsDescriptor(f,n)?r.bindDescriptor(f,e.topLevelWorkspace.anchoredLocator,n):f};TH.resolveDescriptorFromCatalog=BCl});var Wus=H(d4r=>{"use strict";Object.defineProperty(d4r,"__esModule",{value:!0});var RH=yn(),wxt=Pus(),wCl={configuration:{catalog:{description:"The default catalog of packages",type:RH.SettingsType.MAP,valueDefinition:{description:"The catalog of packages",type:RH.SettingsType.STRING}},catalogs:{description:"Named catalogs of packages",type:RH.SettingsType.MAP,valueDefinition:{description:"A named catalog",type:RH.SettingsType.MAP,valueDefinition:{description:"Package version in the catalog",type:RH.SettingsType.STRING}}}},hooks:{beforeWorkspacePacking:(e,t)=>{let r=e.project,n=r.configuration.makeResolver(),a={project:r,resolver:n,report:new RH.ThrowReport};for(let o of RH.Manifest.allDependencies){let l=t[o];if(l)for(let[A,f]of Object.entries(l)){if(typeof f!="string"||!(0,wxt.isCatalogReference)(f))continue;let I=RH.structUtils.parseIdent(A),C=RH.structUtils.makeDescriptor(I,f),b=(0,wxt.resolveDescriptorFromCatalog)(r,C,n,a),{protocol:E,source:N,params:B,selector:F}=RH.structUtils.parseRange(RH.structUtils.convertToManifestRange(b.range));E===e.project.configuration.get("defaultProtocol")&&(E=null),l[A]=RH.structUtils.makeRange({protocol:E,source:N,params:B,selector:F})}}},reduceDependency:async(e,t,r,n,{resolver:a,resolveOptions:o})=>(0,wxt.isCatalogReference)(e.range)?(0,wxt.resolveDescriptorFromCatalog)(t,e,a,o):e}};d4r.default=wCl});var Ous=H(Txt=>{"use strict";Object.defineProperty(Txt,"__esModule",{value:!0});Txt.packageExtensions=void 0;var Wl={optional:!0};Txt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:Wl,zenObservable:Wl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:Wl,zenObservable:Wl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":Wl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":Wl,"postcss-jsx":Wl,"postcss-less":Wl,"postcss-markdown":Wl,"postcss-scss":Wl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:Wl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:Wl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:Wl,"vue-template-compiler":Wl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:Wl,"utf-8-validate":Wl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Wl,"vuetify-loader":Wl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Wl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":Wl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":Wl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:Wl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:Wl,tinyliquid:Wl,"liquid-node":Wl,jade:Wl,"then-jade":Wl,dust:Wl,"dustjs-helpers":Wl,"dustjs-linkedin":Wl,swig:Wl,"swig-templates":Wl,"razor-tmpl":Wl,atpl:Wl,liquor:Wl,twig:Wl,ejs:Wl,eco:Wl,jazz:Wl,jqtpl:Wl,hamljs:Wl,hamlet:Wl,whiskers:Wl,"haml-coffee":Wl,"hogan.js":Wl,templayed:Wl,handlebars:Wl,underscore:Wl,lodash:Wl,pug:Wl,"then-pug":Wl,qejs:Wl,walrus:Wl,mustache:Wl,just:Wl,ect:Wl,mote:Wl,toffee:Wl,dot:Wl,"bracket-template":Wl,ractive:Wl,nunjucks:Wl,htmling:Wl,"babel-core":Wl,plates:Wl,"react-dom":Wl,react:Wl,"arc-templates":Wl,vash:Wl,slm:Wl,marko:Wl,teacup:Wl,"coffee-script":Wl,squirrelly:Wl,twing:Wl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":Wl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":Wl,vue:Wl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:Wl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:Wl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":Wl,"webpack-command":Wl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":Wl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":Wl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:Wl,jimp:Wl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":Wl,"eslint-import-resolver-typescript":Wl,"eslint-import-resolver-webpack":Wl,"@typescript-eslint/parser":Wl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":Wl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":Wl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:Wl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:Wl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":Wl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:Wl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:Wl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:Wl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":Wl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}],["notistack@^3.0.0",{dependencies:{csstype:"^3.0.10"}}],["@fastify/type-provider-typebox@^5.0.0",{peerDependencies:{fastify:"^5.0.0"}}],["@fastify/type-provider-typebox@^4.0.0",{peerDependencies:{fastify:"^4.0.0"}}]]});var Mus=H(Rxt=>{"use strict";Object.defineProperty(Rxt,"__esModule",{value:!0});Rxt.packageExtensions=void 0;var TCl=Ous();Object.defineProperty(Rxt,"packageExtensions",{enumerable:!0,get:function(){return TCl.packageExtensions}})});var Hus=H(f4r=>{"use strict";Object.defineProperty(f4r,"__esModule",{value:!0});f4r.getPatch=RCl;var p4r;function RCl(){return typeof p4r>"u"&&(p4r=wt("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),p4r}});var Yus=H(h4r=>{"use strict";Object.defineProperty(h4r,"__esModule",{value:!0});h4r.getPatch=NCl;var I4r;function NCl(){return typeof I4r>"u"&&(I4r=wt("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),I4r}});var Qus=H(C4r=>{"use strict";Object.defineProperty(C4r,"__esModule",{value:!0});C4r.getPatch=DCl;var m4r;function DCl(){return typeof m4r>"u"&&(m4r=wt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),m4r}});var Jus=H(_4r=>{"use strict";Object.defineProperty(_4r,"__esModule",{value:!0});var kte=yn(),kCl=Mus(),xCl=Hus(),GCl=Yus(),FCl=Qus(),Xus=new Map([[kte.structUtils.makeIdent(null,"fsevents").identHash,xCl.getPatch],[kte.structUtils.makeIdent(null,"resolve").identHash,GCl.getPatch],[kte.structUtils.makeIdent(null,"typescript").identHash,FCl.getPatch]]),ZCl={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,n]of kCl.packageExtensions)t(kte.structUtils.parseDescriptor(r,!0),n)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let n=kte.structUtils.parseIdent(t.slice(r.length)),a=Xus.get(n.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,n)=>typeof Xus.get(e.identHash)>"u"?e:kte.structUtils.makeDescriptor(e,kte.structUtils.makeRange({protocol:"patch:",source:kte.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};_4r.default=ZCl});var Z6e=H(Q_e=>{"use strict";Object.defineProperty(Q_e,"__esModule",{value:!0});Q_e.Index=void 0;Q_e.normalizePath=OCl;Q_e.applyEngineReport=HCl;Q_e.convertReportToRoot=YCl;var Tm=yn(),Nxt=kW(),y4r=class{constructor(t){this.indexedFields=t,this.items=[],this.indexes={},this.clear()}clear(){this.items=[];for(let t of this.indexedFields)this.indexes[t]=new Map}insert(t){this.items.push(t);for(let r of this.indexedFields){let n=Object.hasOwn(t,r)?t[r]:void 0;if(typeof n>"u")continue;Tm.miscUtils.getArrayWithDefault(this.indexes[r],n).push(t)}return t}find(t){if(typeof t>"u")return this.items;let r=Object.entries(t);if(r.length===0)return this.items;let n=[],a;for(let[l,A]of r){let f=l,I=Object.hasOwn(this.indexes,f)?this.indexes[f]:void 0;if(typeof I>"u"){n.push([f,A]);continue}let C=new Set(I.get(A)??[]);if(C.size===0)return[];if(typeof a>"u")a=C;else for(let b of a)C.has(b)||a.delete(b);if(a.size===0)break}let o=[...a??[]];return n.length>0&&(o=o.filter(l=>{for(let[A,f]of n)if(!(typeof f<"u"?Object.hasOwn(l,A)&&l[A]===f:Object.hasOwn(l,A)===!1))return!1;return!0})),o}};Q_e.Index=y4r;var LCl=/^[0-9]+$/,VCl=/^[a-zA-Z0-9_]+$/,PCl=new Set(["scripts",...Tm.Manifest.allDependencies]);function WCl(e,t){return t===1&&PCl.has(e[0])}function OCl(e){let t=Array.isArray(e)?e:(0,Nxt.toPath)(e);return t.map((n,a)=>LCl.test(n)?`[${n}]`:VCl.test(n)&&!WCl(t,a)?`.${n}`:`[${JSON.stringify(n)}]`).join("").replace(/^\./,"")}function MCl(e,t){let r=[];if(t.methodName!==null&&r.push(Tm.formatUtils.pretty(e,t.methodName,Tm.formatUtils.Type.CODE)),t.file!==null){let n=[];n.push(Tm.formatUtils.pretty(e,t.file,Tm.formatUtils.Type.PATH)),t.line!==null&&(n.push(Tm.formatUtils.pretty(e,t.line,Tm.formatUtils.Type.NUMBER)),t.column!==null&&n.push(Tm.formatUtils.pretty(e,t.column,Tm.formatUtils.Type.NUMBER))),r.push(`(${n.join(Tm.formatUtils.pretty(e,":","grey"))})`)}return r.join(" ")}function HCl(e,{manifestUpdates:t,reportedErrors:r},{fix:n}={}){let a=new Map,o=new Map,l=[...r.keys()].map(A=>[A,new Map]);for(let[A,f]of[...l,...t]){let I=r.get(A)?.map(N=>({text:N,fixable:!1}))??[],C=!1,b=e.getWorkspaceByCwd(A),E=b.manifest.exportTo({});for(let[N,B]of f){if(B.size>1){let F=[...B].map(([Q,X])=>{let ae=Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT),ne=X.size>0?MCl(e.configuration,X.values().next().value):null;return ne!==null?` ${ae} at ${ne}`:` -${ae}`}).join("");I.push({text:`Conflict detected in constraint targeting ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; conflicting values are:${F}`,fixable:!1})}else{let[[F]]=B,Q=(0,Bxt.get)(E,N);if(JSON.stringify(Q)===JSON.stringify(F))continue;if(!n){let X=typeof Q>"u"?`Missing field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; expected ${Tm.formatUtils.pretty(e.configuration,F,Tm.formatUtils.Type.INSPECT)}`:typeof F>"u"?`Extraneous field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)} currently set to ${Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT)}`:`Invalid field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; expected ${Tm.formatUtils.pretty(e.configuration,F,Tm.formatUtils.Type.INSPECT)}, found ${Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT)}`;I.push({text:X,fixable:!0});continue}typeof F>"u"?(0,Bxt.unset)(E,N):(0,Bxt.set)(E,N,F),C=!0}C&&a.set(b,E)}I.length>0&&o.set(b,I)}return{changedWorkspaces:a,remainingErrors:o}}function qml(e,{configuration:t}){let r={children:[]};for(let[n,a]of e){let o=[];for(let A of a){let f=A.text.split(/\n/);A.fixable&&(f[0]=`${Tm.formatUtils.pretty(t,"\u2699","gray")} ${f[0]}`),o.push({value:Tm.formatUtils.tuple(Tm.formatUtils.Type.NO_HINT,f[0]),children:f.slice(1).map(I=>({value:Tm.formatUtils.tuple(Tm.formatUtils.Type.NO_HINT,I)}))})}let l={value:Tm.formatUtils.tuple(Tm.formatUtils.Type.LOCATOR,n.anchoredLocator),children:Tm.miscUtils.sortMap(o,A=>A.value[1])};r.children.push(l)}return r.children=Tm.miscUtils.sortMap(r.children,n=>n.value[1]),r}});var I4r=H(Txt=>{"use strict";Object.defineProperty(Txt,"__esModule",{value:!0});Txt.ModernEngine=void 0;var $ml=(Pa(),vi(Va)),YV=Sn(),wxt=$ml.__importStar(G6e()),f4r=class{constructor(t){this.project=t}createEnvironment(){let t=new wxt.Index(["cwd","ident"]),r=new wxt.Index(["workspace","type","ident"]),n=new wxt.Index(["ident"]),a={manifestUpdates:new Map,reportedErrors:new Map},o=new Map,l=new Map;for(let A of this.project.storedPackages.values()){let f=Array.from(A.peerDependencies.values(),I=>[YV.structUtils.stringifyIdent(I),I.range]);o.set(A.locatorHash,{workspace:null,ident:YV.structUtils.stringifyIdent(A),version:A.version,dependencies:new Map,peerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional!==!0)),optionalPeerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional===!0))})}for(let A of this.project.storedPackages.values()){let f=o.get(A.locatorHash);f.dependencies=new Map(Array.from(A.dependencies.values(),I=>{let C=this.project.storedResolutions.get(I.descriptorHash);if(typeof C>"u")throw new Error("Assertion failed: The resolution should have been registered");let b=o.get(C);if(typeof b>"u")throw new Error("Assertion failed: The package should have been registered");return[YV.structUtils.stringifyIdent(I),b]})),f.dependencies.delete(f.ident)}for(let A of this.project.workspaces){let f=YV.structUtils.stringifyIdent(A.anchoredLocator),I=A.manifest.exportTo({}),C=o.get(A.anchoredLocator.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");let b=(F,Q,{caller:X=YV.nodeUtils.getCaller()}={})=>{let ae=wxt.normalizePath(F),ne=YV.miscUtils.getMapWithDefault(a.manifestUpdates,A.cwd),ce=YV.miscUtils.getMapWithDefault(ne,ae),fe=YV.miscUtils.getSetWithDefault(ce,Q);X!==null&&fe.add(X)},E=F=>b(F,void 0,{caller:YV.nodeUtils.getCaller()}),N=F=>{YV.miscUtils.getArrayWithDefault(a.reportedErrors,A.cwd).push(F)},B=t.insert({cwd:A.relativeCwd,ident:f,manifest:I,pkg:C,set:b,unset:E,error:N});l.set(A,B);for(let F of YV.Manifest.allDependencies)for(let Q of A.manifest[F].values()){let X=YV.structUtils.stringifyIdent(Q),ae=()=>{b([F,X],void 0,{caller:YV.nodeUtils.getCaller()})},ne=fe=>{b([F,X],fe,{caller:YV.nodeUtils.getCaller()})},ce=null;if(F!=="peerDependencies"&&(F!=="dependencies"||!A.manifest.devDependencies.has(Q.identHash))){let fe=A.anchoredPackage.dependencies.get(Q.identHash);if(fe){if(typeof fe>"u")throw new Error("Assertion failed: The dependency should have been registered");let ue=this.project.storedResolutions.get(fe.descriptorHash);if(typeof ue>"u")throw new Error("Assertion failed: The resolution should have been registered");let de=o.get(ue);if(typeof de>"u")throw new Error("Assertion failed: The package should have been registered");ce=de}}r.insert({workspace:B,ident:X,range:Q.range,type:F,resolution:ce,update:ne,delete:ae,error:N})}}for(let A of this.project.storedPackages.values()){let f=this.project.tryWorkspaceByLocator(A);if(!f)continue;let I=l.get(f);if(typeof I>"u")throw new Error("Assertion failed: The workspace should have been registered");let C=o.get(A.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");C.workspace=I}return{workspaces:t,dependencies:r,packages:n,result:a}}async process(){let t=this.createEnvironment(),r={Yarn:{workspace:a=>t.workspaces.find(a)[0]??null,workspaces:a=>t.workspaces.find(a),dependency:a=>t.dependencies.find(a)[0]??null,dependencies:a=>t.dependencies.find(a),package:a=>t.packages.find(a)[0]??null,packages:a=>t.packages.find(a)}},n=await this.project.loadUserConfig();return n?.constraints?(await n.constraints(r),t.result):null}};Txt.ModernEngine=f4r});var kus=H((Wtg,h4r)=>{var eCl;(function(e){var t=function(){return{"append/2":[new e.type.Rule(new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("L")]),new e.type.Term("foldl",[new e.type.Term("append",[]),new e.type.Var("X"),new e.type.Term("[]",[]),new e.type.Var("L")]))],"append/3":[new e.type.Rule(new e.type.Term("append",[new e.type.Term("[]",[]),new e.type.Var("X"),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("append",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("append",[new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("S")]))],"member/2":[new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("_")])]),null),new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")])]),new e.type.Term("member",[new e.type.Var("X"),new e.type.Var("Xs")]))],"permutation/2":[new e.type.Rule(new e.type.Term("permutation",[new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("permutation",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("permutation",[new e.type.Var("T"),new e.type.Var("P")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("P")]),new e.type.Term("append",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("Y")]),new e.type.Var("S")])])]))],"maplist/2":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("X")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("Xs")])]))],"maplist/3":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs")])]))],"maplist/4":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs")])]))],"maplist/5":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds")])]))],"maplist/6":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es")])]))],"maplist/7":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs")])]))],"maplist/8":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")]),new e.type.Term(".",[new e.type.Var("G"),new e.type.Var("Gs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F"),new e.type.Var("G")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs"),new e.type.Var("Gs")])]))],"include/3":[new e.type.Rule(new e.type.Term("include",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("include",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("A")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("A"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("F"),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("F")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("L"),new e.type.Var("S")])]),new e.type.Term("include",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("S")])])])])]))],"exclude/3":[new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("E")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("Q")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("R"),new e.type.Var("Q")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("!",[]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("E")])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("E")])])])])])])]))],"foldl/4":[new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Var("I"),new e.type.Var("I")]),null),new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("I"),new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("I"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])])])]),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P2"),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P2")]),new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("R")])])])])]))],"select/3":[new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Xs")]),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term("select",[new e.type.Var("E"),new e.type.Var("Xs"),new e.type.Var("Ys")]))],"sum_list/2":[new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term("[]",[]),new e.type.Num(0,!1)]),null),new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("sum_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("+",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"max_list/2":[new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("max_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"min_list/2":[new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("min_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("=<",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"prod_list/2":[new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term("[]",[]),new e.type.Num(1,!1)]),null),new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("prod_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("*",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"last/2":[new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")]),new e.type.Var("X")]),new e.type.Term("last",[new e.type.Var("Xs"),new e.type.Var("X")]))],"prefix/2":[new e.type.Rule(new e.type.Term("prefix",[new e.type.Var("Part"),new e.type.Var("Whole")]),new e.type.Term("append",[new e.type.Var("Part"),new e.type.Var("_"),new e.type.Var("Whole")]))],"nth0/3":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth1/3":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth0/4":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth1/4":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth/5":[new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("N"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("X"),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("O"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("Y"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term(",",[new e.type.Term("is",[new e.type.Var("M"),new e.type.Term("+",[new e.type.Var("N"),new e.type.Num(1,!1)])]),new e.type.Term("nth",[new e.type.Var("M"),new e.type.Var("O"),new e.type.Var("Xs"),new e.type.Var("Y"),new e.type.Var("Ys")])]))],"length/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(!e.type.is_variable(A)&&!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(e.type.is_integer(A)&&A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else{var f=new e.type.Term("length",[l,new e.type.Num(0,!1),A]);e.type.is_integer(A)&&(f=new e.type.Term(",",[f,new e.type.Term("!",[])])),n.prepend([new e.type.State(a.goal.replace(f),a.substitution,a)])}},"length/3":[new e.type.Rule(new e.type.Term("length",[new e.type.Term("[]",[]),new e.type.Var("N"),new e.type.Var("N")]),null),new e.type.Rule(new e.type.Term("length",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("X")]),new e.type.Var("A"),new e.type.Var("N")]),new e.type.Term(",",[new e.type.Term("succ",[new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("length",[new e.type.Var("X"),new e.type.Var("B"),new e.type.Var("N")])]))],"replicate/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=new e.type.Term("[]"),C=0;C0;b--)C[b].equals(C[b-1])&&C.splice(b,1);for(var E=new e.type.Term("[]"),b=C.length-1;b>=0;b--)E=new e.type.Term(".",[C[b],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"msort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I=l;I.indicator==="./2";)f.push(I.args[0]),I=I.args[1];if(e.type.is_variable(I))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(I))n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=f.sort(e.compare),b=new e.type.Term("[]"),E=C.length-1;E>=0;E--)b=new e.type.Term(".",[C[E],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,A])),a.substitution,a)])}}},"keysort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I,C=l;C.indicator==="./2";){if(I=C.args[0],e.type.is_variable(I)){n.throw_error(e.error.instantiation(o.indicator));return}else if(!e.type.is_term(I)||I.indicator!=="-/2"){n.throw_error(e.error.type("pair",I,o.indicator));return}I.args[0].pair=I.args[1],f.push(I.args[0]),C=C.args[1]}if(e.type.is_variable(C))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(C))n.throw_error(e.error.type("list",l,o.indicator));else{for(var b=f.sort(e.compare),E=new e.type.Term("[]"),N=b.length-1;N>=0;N--)E=new e.type.Term(".",[new e.type.Term("-",[b[N],b[N].pair]),E]),delete b[N].pair;n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"take/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;if(I===0){for(var E=new e.type.Term("[]"),I=C.length-1;I>=0;I--)E=new e.type.Term(".",[C[I],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,f])),a.substitution,a)])}}},"drop/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;I===0&&n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f])),a.substitution,a)])}},"reverse/2":function(n,a,o){var l=o.args[0],A=o.args[1],f=e.type.is_instantiated_list(l),I=e.type.is_instantiated_list(A);if(e.type.is_variable(l)&&e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(l)&&!e.type.is_fully_list(l))n.throw_error(e.error.type("list",l,o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!f&&!I)n.throw_error(e.error.instantiation(o.indicator));else{for(var C=f?l:A,b=new e.type.Term("[]",[]);C.indicator==="./2";)b=new e.type.Term(".",[C.args[0],b]),C=C.args[1];n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f?A:l])),a.substitution,a)])}},"list_to_set/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else{for(var f=l,I=[];f.indicator==="./2";)I.push(f.args[0]),f=f.args[1];if(e.type.is_variable(f))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_term(f)||f.indicator!=="[]/0")n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=[],b=new e.type.Term("[]",[]),E,N=0;N=0;N--)b=new e.type.Term(".",[C[N],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[A,b])),a.substitution,a)])}}}}},r=["append/2","append/3","member/2","permutation/2","maplist/2","maplist/3","maplist/4","maplist/5","maplist/6","maplist/7","maplist/8","include/3","exclude/3","foldl/4","sum_list/2","max_list/2","min_list/2","prod_list/2","last/2","prefix/2","nth0/3","nth1/3","nth0/4","nth1/4","length/2","replicate/3","select/3","sort/2","msort/2","keysort/2","take/3","drop/3","reverse/2","list_to_set/2"];typeof h4r<"u"?h4r.exports=function(n){e=n,new e.type.Module("lists",t(),r)}:new e.type.Module("lists",t(),r)})(eCl)});var Jus=H(wh=>{"use strict";var X_e=process.platform==="win32",m4r="aes-256-cbc",tCl="sha256",Fus="The current environment doesn't support interactive reading from TTY.",Ab=wt("fs"),xus=process.binding("tty_wrap").TTY,_4r=wt("child_process"),gue=wt("path"),y4r={prompt:"> ",hideEchoBack:!1,mask:"*",limit:[],limitMessage:"Input another, please.$<( [)limit(])>",defaultInput:"",trueValue:[],falseValue:[],caseSensitive:!1,keepWhitespace:!1,encoding:"utf8",bufferSize:1024,print:void 0,history:!0,cd:!1,phContent:void 0,preCheck:void 0},kte="none",Y4,nGe,Gus=!1,uue,Rxt,C4r,rCl=0,B4r="",Q_e=[],Nxt,Zus=!1,b4r=!1,F6e=!1;function Lus(e){function t(r){return r.replace(/[^\w\u0080-\uFFFF]/g,function(n){return"#"+n.charCodeAt(0)+";"})}return Rxt.concat(function(r){var n=[];return Object.keys(r).forEach(function(a){r[a]==="boolean"?e[a]&&n.push("--"+a):r[a]==="string"&&e[a]&&n.push("--"+a,t(e[a]))}),n}({display:"string",displayOnly:"boolean",keyIn:"boolean",hideEchoBack:"boolean",mask:"string",limit:"string",caseSensitive:"boolean"}))}function nCl(e,t){function r(X){var ae,ne="",ce;for(C4r=C4r||wt("os").tmpdir();;){ae=gue.join(C4r,X+ne);try{ce=Ab.openSync(ae,"wx")}catch(fe){if(fe.code==="EEXIST"){ne++;continue}else throw fe}Ab.closeSync(ce);break}return ae}var n,a,o,l={},A,f,I=r("readline-sync.stdout"),C=r("readline-sync.stderr"),b=r("readline-sync.exit"),E=r("readline-sync.done"),N=wt("crypto"),B,F,Q;B=N.createHash(tCl),B.update(""+process.pid+rCl+++Math.random()),Q=B.digest("hex"),F=N.createDecipher(m4r,Q),n=Lus(e),X_e?(a=process.env.ComSpec||"cmd.exe",process.env.Q='"',o=["/V:ON","/S","/C","(%Q%"+a+"%Q% /V:ON /S /C %Q%%Q%"+uue+"%Q%"+n.map(function(X){return" %Q%"+X+"%Q%"}).join("")+" & (echo !ERRORLEVEL!)>%Q%"+b+"%Q%%Q%) 2>%Q%"+C+"%Q% |%Q%"+process.execPath+"%Q% %Q%"+__dirname+"\\encrypt.js%Q% %Q%"+m4r+"%Q% %Q%"+Q+"%Q% >%Q%"+I+"%Q% & (echo 1)>%Q%"+E+"%Q%"]):(a="/bin/sh",o=["-c",'("'+uue+'"'+n.map(function(X){return" '"+X.replace(/'/g,"'\\''")+"'"}).join("")+'; echo $?>"'+b+'") 2>"'+C+'" |"'+process.execPath+'" "'+__dirname+'/encrypt.js" "'+m4r+'" "'+Q+'" >"'+I+'"; echo 1 >"'+E+'"']),F6e&&F6e("_execFileSync",n);try{_4r.spawn(a,o,t)}catch(X){l.error=new Error(X.message),l.error.method="_execFileSync - spawn",l.error.program=a,l.error.args=o}for(;Ab.readFileSync(E,{encoding:e.encoding}).trim()!=="1";);return(A=Ab.readFileSync(b,{encoding:e.encoding}).trim())==="0"?l.input=F.update(Ab.readFileSync(I,{encoding:"binary"}),"hex",e.encoding)+F.final(e.encoding):(f=Ab.readFileSync(C,{encoding:e.encoding}).trim(),l.error=new Error(Fus+(f?` -`+f:"")),l.error.method="_execFileSync",l.error.program=a,l.error.args=o,l.error.extMessage=f,l.error.exitCode=+A),Ab.unlinkSync(I),Ab.unlinkSync(C),Ab.unlinkSync(b),Ab.unlinkSync(E),l}function iCl(e){var t,r={},n,a={env:process.env,encoding:e.encoding};if(uue||(X_e?process.env.PSModulePath?(uue="powershell.exe",Rxt=["-ExecutionPolicy","Bypass","-File",__dirname+"\\read.ps1"]):(uue="cscript.exe",Rxt=["//nologo",__dirname+"\\read.cs.js"]):(uue="/bin/sh",Rxt=[__dirname+"/read.sh"])),X_e&&!process.env.PSModulePath&&(a.stdio=[process.stdin]),_4r.execFileSync){t=Lus(e),F6e&&F6e("execFileSync",t);try{r.input=_4r.execFileSync(uue,t,a)}catch(o){n=o.stderr?(o.stderr+"").trim():"",r.error=new Error(Fus+(n?` -`+n:"")),r.error.method="execFileSync",r.error.program=uue,r.error.args=t,r.error.extMessage=n,r.error.exitCode=o.status,r.error.code=o.code,r.error.signal=o.signal}}else r=nCl(e,a);return r.error||(r.input=r.input.replace(/^\s*'|'\s*$/g,""),e.display=""),r}function E4r(e){var t="",r=e.display,n=!e.display&&e.keyIn&&e.hideEchoBack&&!e.mask;function a(){var o=iCl(e);if(o.error)throw o.error;return o.input}return b4r&&b4r(e),function(){var o,l,A;function f(){return o||(o=process.binding("fs"),l=process.binding("constants")),o}if(typeof kte=="string")if(kte=null,X_e){if(A=function(I){var C=I.replace(/^\D+/,"").split("."),b=0;return(C[0]=+C[0])&&(b+=C[0]*1e4),(C[1]=+C[1])&&(b+=C[1]*100),(C[2]=+C[2])&&(b+=C[2]),b}(process.version),!(A>=20302&&A<40204||A>=5e4&&A<50100||A>=50600&&A<60200)&&process.stdin.isTTY)process.stdin.pause(),kte=process.stdin.fd,nGe=process.stdin._handle;else try{kte=f().open("CONIN$",l.O_RDWR,parseInt("0666",8)),nGe=new xus(kte,!0)}catch{}if(process.stdout.isTTY)Y4=process.stdout.fd;else{try{Y4=Ab.openSync("\\\\.\\CON","w")}catch{}if(typeof Y4!="number")try{Y4=f().open("CONOUT$",l.O_RDWR,parseInt("0666",8))}catch{}}}else{if(process.stdin.isTTY){process.stdin.pause();try{kte=Ab.openSync("/dev/tty","r"),nGe=process.stdin._handle}catch{}}else try{kte=Ab.openSync("/dev/tty","r"),nGe=new xus(kte,!1)}catch{}if(process.stdout.isTTY)Y4=process.stdout.fd;else try{Y4=Ab.openSync("/dev/tty","w")}catch{}}}(),function(){var o,l,A=!e.hideEchoBack&&!e.keyIn,f,I,C,b,E;Nxt="";function N(B){return B===Gus?!0:nGe.setRawMode(B)!==0?!1:(Gus=B,!0)}if(Zus||!nGe||typeof Y4!="number"&&(e.display||!A)){t=a();return}if(e.display&&(Ab.writeSync(Y4,e.display),e.display=""),!e.displayOnly){if(!N(!A)){t=a();return}for(I=e.keyIn?1:e.bufferSize,f=Buffer.allocUnsafe&&Buffer.alloc?Buffer.alloc(I):new Buffer(I),e.keyIn&&e.limit&&(l=new RegExp("[^"+e.limit+"]","g"+(e.caseSensitive?"":"i")));;){C=0;try{C=Ab.readSync(kte,f,0,I)}catch(B){if(B.code!=="EOF"){N(!1),t+=a();return}}if(C>0?(b=f.toString(e.encoding,0,C),Nxt+=b):(b=` -`,Nxt+="\0"),b&&typeof(E=(b.match(/^(.*?)[\r\n]/)||[])[1])=="string"&&(b=E,o=!0),b&&(b=b.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"")),b&&l&&(b=b.replace(l,"")),b&&(A||(e.hideEchoBack?e.mask&&Ab.writeSync(Y4,new Array(b.length+1).join(e.mask)):Ab.writeSync(Y4,b)),t+=b),!e.keyIn&&o||e.keyIn&&t.length>=I)break}!A&&!n&&Ab.writeSync(Y4,` +${ae}`}).join("");I.push({text:`Conflict detected in constraint targeting ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; conflicting values are:${F}`,fixable:!1})}else{let[[F]]=B,Q=(0,Nxt.get)(E,N);if(JSON.stringify(Q)===JSON.stringify(F))continue;if(!n){let X=typeof Q>"u"?`Missing field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; expected ${Tm.formatUtils.pretty(e.configuration,F,Tm.formatUtils.Type.INSPECT)}`:typeof F>"u"?`Extraneous field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)} currently set to ${Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT)}`:`Invalid field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; expected ${Tm.formatUtils.pretty(e.configuration,F,Tm.formatUtils.Type.INSPECT)}, found ${Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT)}`;I.push({text:X,fixable:!0});continue}typeof F>"u"?(0,Nxt.unset)(E,N):(0,Nxt.set)(E,N,F),C=!0}C&&a.set(b,E)}I.length>0&&o.set(b,I)}return{changedWorkspaces:a,remainingErrors:o}}function YCl(e,{configuration:t}){let r={children:[]};for(let[n,a]of e){let o=[];for(let A of a){let f=A.text.split(/\n/);A.fixable&&(f[0]=`${Tm.formatUtils.pretty(t,"\u2699","gray")} ${f[0]}`),o.push({value:Tm.formatUtils.tuple(Tm.formatUtils.Type.NO_HINT,f[0]),children:f.slice(1).map(I=>({value:Tm.formatUtils.tuple(Tm.formatUtils.Type.NO_HINT,I)}))})}let l={value:Tm.formatUtils.tuple(Tm.formatUtils.Type.LOCATOR,n.anchoredLocator),children:Tm.miscUtils.sortMap(o,A=>A.value[1])};r.children.push(l)}return r.children=Tm.miscUtils.sortMap(r.children,n=>n.value[1]),r}});var E4r=H(kxt=>{"use strict";Object.defineProperty(kxt,"__esModule",{value:!0});kxt.ModernEngine=void 0;var QCl=(Pa(),vi(Va)),YV=yn(),Dxt=QCl.__importStar(Z6e()),b4r=class{constructor(t){this.project=t}createEnvironment(){let t=new Dxt.Index(["cwd","ident"]),r=new Dxt.Index(["workspace","type","ident"]),n=new Dxt.Index(["ident"]),a={manifestUpdates:new Map,reportedErrors:new Map},o=new Map,l=new Map;for(let A of this.project.storedPackages.values()){let f=Array.from(A.peerDependencies.values(),I=>[YV.structUtils.stringifyIdent(I),I.range]);o.set(A.locatorHash,{workspace:null,ident:YV.structUtils.stringifyIdent(A),version:A.version,dependencies:new Map,peerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional!==!0)),optionalPeerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional===!0))})}for(let A of this.project.storedPackages.values()){let f=o.get(A.locatorHash);f.dependencies=new Map(Array.from(A.dependencies.values(),I=>{let C=this.project.storedResolutions.get(I.descriptorHash);if(typeof C>"u")throw new Error("Assertion failed: The resolution should have been registered");let b=o.get(C);if(typeof b>"u")throw new Error("Assertion failed: The package should have been registered");return[YV.structUtils.stringifyIdent(I),b]})),f.dependencies.delete(f.ident)}for(let A of this.project.workspaces){let f=YV.structUtils.stringifyIdent(A.anchoredLocator),I=A.manifest.exportTo({}),C=o.get(A.anchoredLocator.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");let b=(F,Q,{caller:X=YV.nodeUtils.getCaller()}={})=>{let ae=Dxt.normalizePath(F),ne=YV.miscUtils.getMapWithDefault(a.manifestUpdates,A.cwd),ce=YV.miscUtils.getMapWithDefault(ne,ae),fe=YV.miscUtils.getSetWithDefault(ce,Q);X!==null&&fe.add(X)},E=F=>b(F,void 0,{caller:YV.nodeUtils.getCaller()}),N=F=>{YV.miscUtils.getArrayWithDefault(a.reportedErrors,A.cwd).push(F)},B=t.insert({cwd:A.relativeCwd,ident:f,manifest:I,pkg:C,set:b,unset:E,error:N});l.set(A,B);for(let F of YV.Manifest.allDependencies)for(let Q of A.manifest[F].values()){let X=YV.structUtils.stringifyIdent(Q),ae=()=>{b([F,X],void 0,{caller:YV.nodeUtils.getCaller()})},ne=fe=>{b([F,X],fe,{caller:YV.nodeUtils.getCaller()})},ce=null;if(F!=="peerDependencies"&&(F!=="dependencies"||!A.manifest.devDependencies.has(Q.identHash))){let fe=A.anchoredPackage.dependencies.get(Q.identHash);if(fe){if(typeof fe>"u")throw new Error("Assertion failed: The dependency should have been registered");let ue=this.project.storedResolutions.get(fe.descriptorHash);if(typeof ue>"u")throw new Error("Assertion failed: The resolution should have been registered");let de=o.get(ue);if(typeof de>"u")throw new Error("Assertion failed: The package should have been registered");ce=de}}r.insert({workspace:B,ident:X,range:Q.range,type:F,resolution:ce,update:ne,delete:ae,error:N})}}for(let A of this.project.storedPackages.values()){let f=this.project.tryWorkspaceByLocator(A);if(!f)continue;let I=l.get(f);if(typeof I>"u")throw new Error("Assertion failed: The workspace should have been registered");let C=o.get(A.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");C.workspace=I}return{workspaces:t,dependencies:r,packages:n,result:a}}async process(){let t=this.createEnvironment(),r={Yarn:{workspace:a=>t.workspaces.find(a)[0]??null,workspaces:a=>t.workspaces.find(a),dependency:a=>t.dependencies.find(a)[0]??null,dependencies:a=>t.dependencies.find(a),package:a=>t.packages.find(a)[0]??null,packages:a=>t.packages.find(a)}},n=await this.project.loadUserConfig();return n?.constraints?(await n.constraints(r),t.result):null}};kxt.ModernEngine=b4r});var Uus=H((zrg,S4r)=>{var XCl;(function(e){var t=function(){return{"append/2":[new e.type.Rule(new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("L")]),new e.type.Term("foldl",[new e.type.Term("append",[]),new e.type.Var("X"),new e.type.Term("[]",[]),new e.type.Var("L")]))],"append/3":[new e.type.Rule(new e.type.Term("append",[new e.type.Term("[]",[]),new e.type.Var("X"),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("append",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("append",[new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("S")]))],"member/2":[new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("_")])]),null),new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")])]),new e.type.Term("member",[new e.type.Var("X"),new e.type.Var("Xs")]))],"permutation/2":[new e.type.Rule(new e.type.Term("permutation",[new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("permutation",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("permutation",[new e.type.Var("T"),new e.type.Var("P")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("P")]),new e.type.Term("append",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("Y")]),new e.type.Var("S")])])]))],"maplist/2":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("X")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("Xs")])]))],"maplist/3":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs")])]))],"maplist/4":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs")])]))],"maplist/5":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds")])]))],"maplist/6":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es")])]))],"maplist/7":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs")])]))],"maplist/8":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")]),new e.type.Term(".",[new e.type.Var("G"),new e.type.Var("Gs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F"),new e.type.Var("G")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs"),new e.type.Var("Gs")])]))],"include/3":[new e.type.Rule(new e.type.Term("include",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("include",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("A")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("A"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("F"),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("F")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("L"),new e.type.Var("S")])]),new e.type.Term("include",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("S")])])])])]))],"exclude/3":[new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("E")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("Q")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("R"),new e.type.Var("Q")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("!",[]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("E")])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("E")])])])])])])]))],"foldl/4":[new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Var("I"),new e.type.Var("I")]),null),new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("I"),new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("I"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])])])]),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P2"),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P2")]),new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("R")])])])])]))],"select/3":[new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Xs")]),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term("select",[new e.type.Var("E"),new e.type.Var("Xs"),new e.type.Var("Ys")]))],"sum_list/2":[new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term("[]",[]),new e.type.Num(0,!1)]),null),new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("sum_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("+",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"max_list/2":[new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("max_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"min_list/2":[new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("min_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("=<",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"prod_list/2":[new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term("[]",[]),new e.type.Num(1,!1)]),null),new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("prod_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("*",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"last/2":[new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")]),new e.type.Var("X")]),new e.type.Term("last",[new e.type.Var("Xs"),new e.type.Var("X")]))],"prefix/2":[new e.type.Rule(new e.type.Term("prefix",[new e.type.Var("Part"),new e.type.Var("Whole")]),new e.type.Term("append",[new e.type.Var("Part"),new e.type.Var("_"),new e.type.Var("Whole")]))],"nth0/3":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth1/3":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth0/4":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth1/4":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth/5":[new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("N"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("X"),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("O"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("Y"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term(",",[new e.type.Term("is",[new e.type.Var("M"),new e.type.Term("+",[new e.type.Var("N"),new e.type.Num(1,!1)])]),new e.type.Term("nth",[new e.type.Var("M"),new e.type.Var("O"),new e.type.Var("Xs"),new e.type.Var("Y"),new e.type.Var("Ys")])]))],"length/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(!e.type.is_variable(A)&&!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(e.type.is_integer(A)&&A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else{var f=new e.type.Term("length",[l,new e.type.Num(0,!1),A]);e.type.is_integer(A)&&(f=new e.type.Term(",",[f,new e.type.Term("!",[])])),n.prepend([new e.type.State(a.goal.replace(f),a.substitution,a)])}},"length/3":[new e.type.Rule(new e.type.Term("length",[new e.type.Term("[]",[]),new e.type.Var("N"),new e.type.Var("N")]),null),new e.type.Rule(new e.type.Term("length",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("X")]),new e.type.Var("A"),new e.type.Var("N")]),new e.type.Term(",",[new e.type.Term("succ",[new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("length",[new e.type.Var("X"),new e.type.Var("B"),new e.type.Var("N")])]))],"replicate/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=new e.type.Term("[]"),C=0;C0;b--)C[b].equals(C[b-1])&&C.splice(b,1);for(var E=new e.type.Term("[]"),b=C.length-1;b>=0;b--)E=new e.type.Term(".",[C[b],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"msort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I=l;I.indicator==="./2";)f.push(I.args[0]),I=I.args[1];if(e.type.is_variable(I))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(I))n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=f.sort(e.compare),b=new e.type.Term("[]"),E=C.length-1;E>=0;E--)b=new e.type.Term(".",[C[E],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,A])),a.substitution,a)])}}},"keysort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I,C=l;C.indicator==="./2";){if(I=C.args[0],e.type.is_variable(I)){n.throw_error(e.error.instantiation(o.indicator));return}else if(!e.type.is_term(I)||I.indicator!=="-/2"){n.throw_error(e.error.type("pair",I,o.indicator));return}I.args[0].pair=I.args[1],f.push(I.args[0]),C=C.args[1]}if(e.type.is_variable(C))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(C))n.throw_error(e.error.type("list",l,o.indicator));else{for(var b=f.sort(e.compare),E=new e.type.Term("[]"),N=b.length-1;N>=0;N--)E=new e.type.Term(".",[new e.type.Term("-",[b[N],b[N].pair]),E]),delete b[N].pair;n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"take/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;if(I===0){for(var E=new e.type.Term("[]"),I=C.length-1;I>=0;I--)E=new e.type.Term(".",[C[I],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,f])),a.substitution,a)])}}},"drop/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;I===0&&n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f])),a.substitution,a)])}},"reverse/2":function(n,a,o){var l=o.args[0],A=o.args[1],f=e.type.is_instantiated_list(l),I=e.type.is_instantiated_list(A);if(e.type.is_variable(l)&&e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(l)&&!e.type.is_fully_list(l))n.throw_error(e.error.type("list",l,o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!f&&!I)n.throw_error(e.error.instantiation(o.indicator));else{for(var C=f?l:A,b=new e.type.Term("[]",[]);C.indicator==="./2";)b=new e.type.Term(".",[C.args[0],b]),C=C.args[1];n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f?A:l])),a.substitution,a)])}},"list_to_set/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else{for(var f=l,I=[];f.indicator==="./2";)I.push(f.args[0]),f=f.args[1];if(e.type.is_variable(f))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_term(f)||f.indicator!=="[]/0")n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=[],b=new e.type.Term("[]",[]),E,N=0;N=0;N--)b=new e.type.Term(".",[C[N],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[A,b])),a.substitution,a)])}}}}},r=["append/2","append/3","member/2","permutation/2","maplist/2","maplist/3","maplist/4","maplist/5","maplist/6","maplist/7","maplist/8","include/3","exclude/3","foldl/4","sum_list/2","max_list/2","min_list/2","prod_list/2","last/2","prefix/2","nth0/3","nth1/3","nth0/4","nth1/4","length/2","replicate/3","select/3","sort/2","msort/2","keysort/2","take/3","drop/3","reverse/2","list_to_set/2"];typeof S4r<"u"?S4r.exports=function(n){e=n,new e.type.Module("lists",t(),r)}:new e.type.Module("lists",t(),r)})(XCl)});var lgs=H(wh=>{"use strict";var J_e=process.platform==="win32",v4r="aes-256-cbc",JCl="sha256",zus="The current environment doesn't support interactive reading from TTY.",Ab=wt("fs"),Kus=process.binding("tty_wrap").TTY,w4r=wt("child_process"),Aue=wt("path"),T4r={prompt:"> ",hideEchoBack:!1,mask:"*",limit:[],limitMessage:"Input another, please.$<( [)limit(])>",defaultInput:"",trueValue:[],falseValue:[],caseSensitive:!1,keepWhitespace:!1,encoding:"utf8",bufferSize:1024,print:void 0,history:!0,cd:!1,phContent:void 0,preCheck:void 0},xte="none",Y4,sGe,jus=!1,gue,xxt,B4r,UCl=0,x4r="",X_e=[],Gxt,qus=!1,R4r=!1,L6e=!1;function $us(e){function t(r){return r.replace(/[^\w\u0080-\uFFFF]/g,function(n){return"#"+n.charCodeAt(0)+";"})}return xxt.concat(function(r){var n=[];return Object.keys(r).forEach(function(a){r[a]==="boolean"?e[a]&&n.push("--"+a):r[a]==="string"&&e[a]&&n.push("--"+a,t(e[a]))}),n}({display:"string",displayOnly:"boolean",keyIn:"boolean",hideEchoBack:"boolean",mask:"string",limit:"string",caseSensitive:"boolean"}))}function KCl(e,t){function r(X){var ae,ne="",ce;for(B4r=B4r||wt("os").tmpdir();;){ae=Aue.join(B4r,X+ne);try{ce=Ab.openSync(ae,"wx")}catch(fe){if(fe.code==="EEXIST"){ne++;continue}else throw fe}Ab.closeSync(ce);break}return ae}var n,a,o,l={},A,f,I=r("readline-sync.stdout"),C=r("readline-sync.stderr"),b=r("readline-sync.exit"),E=r("readline-sync.done"),N=wt("crypto"),B,F,Q;B=N.createHash(JCl),B.update(""+process.pid+UCl+++Math.random()),Q=B.digest("hex"),F=N.createDecipher(v4r,Q),n=$us(e),J_e?(a=process.env.ComSpec||"cmd.exe",process.env.Q='"',o=["/V:ON","/S","/C","(%Q%"+a+"%Q% /V:ON /S /C %Q%%Q%"+gue+"%Q%"+n.map(function(X){return" %Q%"+X+"%Q%"}).join("")+" & (echo !ERRORLEVEL!)>%Q%"+b+"%Q%%Q%) 2>%Q%"+C+"%Q% |%Q%"+process.execPath+"%Q% %Q%"+__dirname+"\\encrypt.js%Q% %Q%"+v4r+"%Q% %Q%"+Q+"%Q% >%Q%"+I+"%Q% & (echo 1)>%Q%"+E+"%Q%"]):(a="/bin/sh",o=["-c",'("'+gue+'"'+n.map(function(X){return" '"+X.replace(/'/g,"'\\''")+"'"}).join("")+'; echo $?>"'+b+'") 2>"'+C+'" |"'+process.execPath+'" "'+__dirname+'/encrypt.js" "'+v4r+'" "'+Q+'" >"'+I+'"; echo 1 >"'+E+'"']),L6e&&L6e("_execFileSync",n);try{w4r.spawn(a,o,t)}catch(X){l.error=new Error(X.message),l.error.method="_execFileSync - spawn",l.error.program=a,l.error.args=o}for(;Ab.readFileSync(E,{encoding:e.encoding}).trim()!=="1";);return(A=Ab.readFileSync(b,{encoding:e.encoding}).trim())==="0"?l.input=F.update(Ab.readFileSync(I,{encoding:"binary"}),"hex",e.encoding)+F.final(e.encoding):(f=Ab.readFileSync(C,{encoding:e.encoding}).trim(),l.error=new Error(zus+(f?` +`+f:"")),l.error.method="_execFileSync",l.error.program=a,l.error.args=o,l.error.extMessage=f,l.error.exitCode=+A),Ab.unlinkSync(I),Ab.unlinkSync(C),Ab.unlinkSync(b),Ab.unlinkSync(E),l}function jCl(e){var t,r={},n,a={env:process.env,encoding:e.encoding};if(gue||(J_e?process.env.PSModulePath?(gue="powershell.exe",xxt=["-ExecutionPolicy","Bypass","-File",__dirname+"\\read.ps1"]):(gue="cscript.exe",xxt=["//nologo",__dirname+"\\read.cs.js"]):(gue="/bin/sh",xxt=[__dirname+"/read.sh"])),J_e&&!process.env.PSModulePath&&(a.stdio=[process.stdin]),w4r.execFileSync){t=$us(e),L6e&&L6e("execFileSync",t);try{r.input=w4r.execFileSync(gue,t,a)}catch(o){n=o.stderr?(o.stderr+"").trim():"",r.error=new Error(zus+(n?` +`+n:"")),r.error.method="execFileSync",r.error.program=gue,r.error.args=t,r.error.extMessage=n,r.error.exitCode=o.status,r.error.code=o.code,r.error.signal=o.signal}}else r=KCl(e,a);return r.error||(r.input=r.input.replace(/^\s*'|'\s*$/g,""),e.display=""),r}function N4r(e){var t="",r=e.display,n=!e.display&&e.keyIn&&e.hideEchoBack&&!e.mask;function a(){var o=jCl(e);if(o.error)throw o.error;return o.input}return R4r&&R4r(e),function(){var o,l,A;function f(){return o||(o=process.binding("fs"),l=process.binding("constants")),o}if(typeof xte=="string")if(xte=null,J_e){if(A=function(I){var C=I.replace(/^\D+/,"").split("."),b=0;return(C[0]=+C[0])&&(b+=C[0]*1e4),(C[1]=+C[1])&&(b+=C[1]*100),(C[2]=+C[2])&&(b+=C[2]),b}(process.version),!(A>=20302&&A<40204||A>=5e4&&A<50100||A>=50600&&A<60200)&&process.stdin.isTTY)process.stdin.pause(),xte=process.stdin.fd,sGe=process.stdin._handle;else try{xte=f().open("CONIN$",l.O_RDWR,parseInt("0666",8)),sGe=new Kus(xte,!0)}catch{}if(process.stdout.isTTY)Y4=process.stdout.fd;else{try{Y4=Ab.openSync("\\\\.\\CON","w")}catch{}if(typeof Y4!="number")try{Y4=f().open("CONOUT$",l.O_RDWR,parseInt("0666",8))}catch{}}}else{if(process.stdin.isTTY){process.stdin.pause();try{xte=Ab.openSync("/dev/tty","r"),sGe=process.stdin._handle}catch{}}else try{xte=Ab.openSync("/dev/tty","r"),sGe=new Kus(xte,!1)}catch{}if(process.stdout.isTTY)Y4=process.stdout.fd;else try{Y4=Ab.openSync("/dev/tty","w")}catch{}}}(),function(){var o,l,A=!e.hideEchoBack&&!e.keyIn,f,I,C,b,E;Gxt="";function N(B){return B===jus?!0:sGe.setRawMode(B)!==0?!1:(jus=B,!0)}if(qus||!sGe||typeof Y4!="number"&&(e.display||!A)){t=a();return}if(e.display&&(Ab.writeSync(Y4,e.display),e.display=""),!e.displayOnly){if(!N(!A)){t=a();return}for(I=e.keyIn?1:e.bufferSize,f=Buffer.allocUnsafe&&Buffer.alloc?Buffer.alloc(I):new Buffer(I),e.keyIn&&e.limit&&(l=new RegExp("[^"+e.limit+"]","g"+(e.caseSensitive?"":"i")));;){C=0;try{C=Ab.readSync(xte,f,0,I)}catch(B){if(B.code!=="EOF"){N(!1),t+=a();return}}if(C>0?(b=f.toString(e.encoding,0,C),Gxt+=b):(b=` +`,Gxt+="\0"),b&&typeof(E=(b.match(/^(.*?)[\r\n]/)||[])[1])=="string"&&(b=E,o=!0),b&&(b=b.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"")),b&&l&&(b=b.replace(l,"")),b&&(A||(e.hideEchoBack?e.mask&&Ab.writeSync(Y4,new Array(b.length+1).join(e.mask)):Ab.writeSync(Y4,b)),t+=b),!e.keyIn&&o||e.keyIn&&t.length>=I)break}!A&&!n&&Ab.writeSync(Y4,` `),N(!1)}}(),e.print&&!n&&e.print(r+(e.displayOnly?"":(e.hideEchoBack?new Array(t.length+1).join(e.mask):t)+` -`),e.encoding),e.displayOnly?"":B4r=e.keepWhitespace||e.keyIn?t:t.trim()}function sCl(e,t){var r=[];function n(a){a!=null&&(Array.isArray(a)?a.forEach(n):(!t||t(a))&&r.push(a))}return n(e),r}function w4r(e){return e.replace(/[\x00-\x7f]/g,function(t){return"\\x"+("00"+t.charCodeAt().toString(16)).substr(-2)})}function _D(){var e=Array.prototype.slice.call(arguments),t,r;return e.length&&typeof e[0]=="boolean"&&(r=e.shift(),r&&(t=Object.keys(y4r),e.unshift(y4r))),e.reduce(function(n,a){return a==null||(a.hasOwnProperty("noEchoBack")&&!a.hasOwnProperty("hideEchoBack")&&(a.hideEchoBack=a.noEchoBack,delete a.noEchoBack),a.hasOwnProperty("noTrim")&&!a.hasOwnProperty("keepWhitespace")&&(a.keepWhitespace=a.noTrim,delete a.noTrim),r||(t=Object.keys(a)),t.forEach(function(o){var l;if(a.hasOwnProperty(o))switch(l=a[o],o){case"mask":case"limitMessage":case"defaultInput":case"encoding":l=l!=null?l+"":"",l&&o!=="limitMessage"&&(l=l.replace(/[\r\n]/g,"")),n[o]=l;break;case"bufferSize":!isNaN(l=parseInt(l,10))&&typeof l=="number"&&(n[o]=l);break;case"displayOnly":case"keyIn":case"hideEchoBack":case"caseSensitive":case"keepWhitespace":case"history":case"cd":n[o]=!!l;break;case"limit":case"trueValue":case"falseValue":n[o]=sCl(l,function(A){var f=typeof A;return f==="string"||f==="number"||f==="function"||A instanceof RegExp}).map(function(A){return typeof A=="string"?A.replace(/[\r\n]/g,""):A});break;case"print":case"phContent":case"preCheck":n[o]=typeof l=="function"?l:void 0;break;case"prompt":case"display":n[o]=l??"";break}})),n},{})}function S4r(e,t,r){return t.some(function(n){var a=typeof n;return a==="string"?r?e===n:e.toLowerCase()===n.toLowerCase():a==="number"?parseFloat(e)===n:a==="function"?n(e):n instanceof RegExp?n.test(e):!1})}function T4r(e,t){var r=gue.normalize(X_e?(process.env.HOMEDRIVE||"")+(process.env.HOMEPATH||""):process.env.HOME||"").replace(/[\/\\]+$/,"");return e=gue.normalize(e),t?e.replace(/^~(?=\/|\\|$)/,r):e.replace(new RegExp("^"+w4r(r)+"(?=\\/|\\\\|$)",X_e?"i":""),"~")}function iGe(e,t){var r="(?:\\(([\\s\\S]*?)\\))?(\\w+|.-.)(?:\\(([\\s\\S]*?)\\))?",n=new RegExp("(\\$)?(\\$<"+r+">)","g"),a=new RegExp("(\\$)?(\\$\\{"+r+"\\})","g");function o(l,A,f,I,C,b){var E;return A||typeof(E=t(C))!="string"?f:E?(I||"")+E+(b||""):""}return e.replace(n,o).replace(a,o)}function Vus(e,t,r){var n,a=[],o=-1,l=0,A="",f;function I(C,b){return b.length>3?(C.push(b[0]+"..."+b[b.length-1]),f=!0):b.length&&(C=C.concat(b)),C}return n=e.reduce(function(C,b){return C.concat((b+"").split(""))},[]).reduce(function(C,b){var E,N;return t||(b=b.toLowerCase()),E=/^\d$/.test(b)?1:/^[A-Z]$/.test(b)?2:/^[a-z]$/.test(b)?3:0,r&&E===0?A+=b:(N=b.charCodeAt(0),E&&E===o&&N===l+1?a.push(b):(C=I(C,a),a=[b],o=E),l=N),C},[]),n=I(n,a),A&&(n.push(A),f=!0),{values:n,suppressed:f}}function Pus(e,t){return e.join(e.length>2?", ":t?" / ":"/")}function Wus(e,t){var r,n,a={},o;if(t.phContent&&(r=t.phContent(e,t)),typeof r!="string")switch(e){case"hideEchoBack":case"mask":case"defaultInput":case"caseSensitive":case"keepWhitespace":case"encoding":case"bufferSize":case"history":case"cd":r=t.hasOwnProperty(e)?typeof t[e]=="boolean"?t[e]?"on":"off":t[e]+"":"";break;case"limit":case"trueValue":case"falseValue":n=t[t.hasOwnProperty(e+"Src")?e+"Src":e],t.keyIn?(a=Vus(n,t.caseSensitive),n=a.values):n=n.filter(function(l){var A=typeof l;return A==="string"||A==="number"}),r=Pus(n,a.suppressed);break;case"limitCount":case"limitCountNotZero":r=t[t.hasOwnProperty("limitSrc")?"limitSrc":"limit"].length,r=r||e!=="limitCountNotZero"?r+"":"";break;case"lastInput":r=B4r;break;case"cwd":case"CWD":case"cwdHome":r=process.cwd(),e==="CWD"?r=gue.basename(r):e==="cwdHome"&&(r=T4r(r));break;case"date":case"time":case"localeDate":case"localeTime":r=new Date()["to"+e.replace(/^./,function(l){return l.toUpperCase()})+"String"]();break;default:typeof(o=(e.match(/^history_m(\d+)$/)||[])[1])=="string"&&(r=Q_e[Q_e.length-o]||"")}return r}function Ous(e){var t=/^(.)-(.)$/.exec(e),r="",n,a,o,l;if(!t)return null;for(n=t[1].charCodeAt(0),a=t[2].charCodeAt(0),l=n -And the length must be: $`,trueValue:null,falseValue:null,caseSensitive:!0},t,{history:!1,cd:!1,phContent:function(N){return N==="charlist"?r.text:N==="length"?n+"..."+a:null}}),l,A,f,I,C,b,E;for(t=t||{},l=iGe(t.charlist?t.charlist+"":"$",Ous),(isNaN(n=parseInt(t.min,10))||typeof n!="number")&&(n=12),(isNaN(a=parseInt(t.max,10))||typeof a!="number")&&(a=24),I=new RegExp("^["+w4r(l)+"]{"+n+","+a+"}$"),r=Vus([l],o.caseSensitive,!0),r.text=Pus(r.values,r.suppressed),A=t.confirmMessage!=null?t.confirmMessage:"Reinput a same one to confirm it: ",f=t.unmatchMessage!=null?t.unmatchMessage:"It differs from first one. Hit only the Enter key if you want to retry from first one.",e==null&&(e="Input new password: "),C=o.limitMessage;!E;)o.limit=I,o.limitMessage=C,b=wh.question(e,o),o.limit=[b,""],o.limitMessage=f,E=wh.question(A,o);return b};function Yus(e,t,r){var n;function a(o){return n=r(o),!isNaN(n)&&typeof n=="number"}return wh.question(e,_D({limitMessage:"Input valid number, please."},t,{limit:a,cd:!1})),n}wh.questionInt=function(e,t){return Yus(e,t,function(r){return parseInt(r,10)})};wh.questionFloat=function(e,t){return Yus(e,t,parseFloat)};wh.questionPath=function(e,t){var r,n="",a=_D({hideEchoBack:!1,limitMessage:`$Input valid path, please.$<( Min:)min>$<( Max:)max>`,history:!0,cd:!0},t,{keepWhitespace:!1,limit:function(o){var l,A,f;o=T4r(o,!0),n="";function I(C){C.split(/\/|\\/).reduce(function(b,E){var N=gue.resolve(b+=E+gue.sep);if(!Ab.existsSync(N))Ab.mkdirSync(N);else if(!Ab.statSync(N).isDirectory())throw new Error("Non directory already exists: "+N);return b},"")}try{if(l=Ab.existsSync(o),r=l?Ab.realpathSync(o):gue.resolve(o),!t.hasOwnProperty("exists")&&!l||typeof t.exists=="boolean"&&t.exists!==l)return n=(l?"Already exists":"No such file or directory")+": "+r,!1;if(!l&&t.create&&(t.isDirectory?I(r):(I(gue.dirname(r)),Ab.closeSync(Ab.openSync(r,"w"))),r=Ab.realpathSync(r)),l&&(t.min||t.max||t.isFile||t.isDirectory)){if(A=Ab.statSync(r),t.isFile&&!A.isFile())return n="Not file: "+r,!1;if(t.isDirectory&&!A.isDirectory())return n="Not directory: "+r,!1;if(t.min&&A.size<+t.min||t.max&&A.size>+t.max)return n="Size "+A.size+" is out of range: "+r,!1}if(typeof t.validate=="function"&&(f=t.validate(r))!==!0)return typeof f=="string"&&(n=f),!1}catch(C){return n=C+"",!1}return!0},phContent:function(o){return o==="error"?n:o!=="min"&&o!=="max"?null:t.hasOwnProperty(o)?t[o]+"":""}});return t=t||{},e==null&&(e='Input path (you can "cd" and "pwd"): '),wh.question(e,a),r};function Qus(e,t){var r={},n={};return typeof e=="object"?(Object.keys(e).forEach(function(a){typeof e[a]=="function"&&(n[t.caseSensitive?a:a.toLowerCase()]=e[a])}),r.preCheck=function(a){var o;return r.args=v4r(a),o=r.args[0]||"",t.caseSensitive||(o=o.toLowerCase()),r.hRes=o!=="_"&&n.hasOwnProperty(o)?n[o].apply(a,r.args.slice(1)):n.hasOwnProperty("_")?n._.apply(a,r.args):null,{res:a,forceNext:!1}},n.hasOwnProperty("_")||(r.limit=function(){var a=r.args[0]||"";return t.caseSensitive||(a=a.toLowerCase()),n.hasOwnProperty(a)})):r.preCheck=function(a){return r.args=v4r(a),r.hRes=typeof e=="function"?e.apply(a,r.args):!0,{res:a,forceNext:!1}},r}wh.promptCL=function(e,t){var r=_D({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Qus(e,r);return r.limit=n.limit,r.preCheck=n.preCheck,wh.prompt(r),n.args};wh.promptLoop=function(e,t){for(var r=_D({hideEchoBack:!1,trueValue:null,falseValue:null,caseSensitive:!1,history:!0},t);!e(wh.prompt(r)););};wh.promptCLLoop=function(e,t){var r=_D({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Qus(e,r);for(r.limit=n.limit,r.preCheck=n.preCheck;wh.prompt(r),!n.hRes;);};wh.promptSimShell=function(e){return wh.prompt(_D({hideEchoBack:!1,history:!0},e,{prompt:function(){return X_e?"$>":(process.env.USER||"")+(process.env.HOSTNAME?"@"+process.env.HOSTNAME.replace(/\..*$/,""):"")+":$$ "}()}))};function Xus(e,t,r){var n;return e==null&&(e="Are you sure? "),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s*:?\s*$/,"")+" [y/n]: "),n=wh.keyIn(e,_D(t,{hideEchoBack:!1,limit:r,trueValue:"y",falseValue:"n",caseSensitive:!1})),typeof n=="boolean"?n:""}wh.keyInYN=function(e,t){return Xus(e,t)};wh.keyInYNStrict=function(e,t){return Xus(e,t,"yn")};wh.keyInPause=function(e,t){e==null&&(e="Continue..."),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s+$/,"")+" (Hit any key)"),wh.keyIn(e,_D({limit:null},t,{hideEchoBack:!0,mask:""}))};wh.keyInSelect=function(e,t,r){var n=_D({hideEchoBack:!1},r,{trueValue:null,falseValue:null,caseSensitive:!1,phContent:function(f){return f==="itemsCount"?e.length+"":f==="firstItem"?(e[0]+"").trim():f==="lastItem"?(e[e.length-1]+"").trim():null}}),a="",o={},l=49,A=` +`),e.encoding),e.displayOnly?"":x4r=e.keepWhitespace||e.keyIn?t:t.trim()}function zCl(e,t){var r=[];function n(a){a!=null&&(Array.isArray(a)?a.forEach(n):(!t||t(a))&&r.push(a))}return n(e),r}function G4r(e){return e.replace(/[\x00-\x7f]/g,function(t){return"\\x"+("00"+t.charCodeAt().toString(16)).substr(-2)})}function _D(){var e=Array.prototype.slice.call(arguments),t,r;return e.length&&typeof e[0]=="boolean"&&(r=e.shift(),r&&(t=Object.keys(T4r),e.unshift(T4r))),e.reduce(function(n,a){return a==null||(a.hasOwnProperty("noEchoBack")&&!a.hasOwnProperty("hideEchoBack")&&(a.hideEchoBack=a.noEchoBack,delete a.noEchoBack),a.hasOwnProperty("noTrim")&&!a.hasOwnProperty("keepWhitespace")&&(a.keepWhitespace=a.noTrim,delete a.noTrim),r||(t=Object.keys(a)),t.forEach(function(o){var l;if(a.hasOwnProperty(o))switch(l=a[o],o){case"mask":case"limitMessage":case"defaultInput":case"encoding":l=l!=null?l+"":"",l&&o!=="limitMessage"&&(l=l.replace(/[\r\n]/g,"")),n[o]=l;break;case"bufferSize":!isNaN(l=parseInt(l,10))&&typeof l=="number"&&(n[o]=l);break;case"displayOnly":case"keyIn":case"hideEchoBack":case"caseSensitive":case"keepWhitespace":case"history":case"cd":n[o]=!!l;break;case"limit":case"trueValue":case"falseValue":n[o]=zCl(l,function(A){var f=typeof A;return f==="string"||f==="number"||f==="function"||A instanceof RegExp}).map(function(A){return typeof A=="string"?A.replace(/[\r\n]/g,""):A});break;case"print":case"phContent":case"preCheck":n[o]=typeof l=="function"?l:void 0;break;case"prompt":case"display":n[o]=l??"";break}})),n},{})}function D4r(e,t,r){return t.some(function(n){var a=typeof n;return a==="string"?r?e===n:e.toLowerCase()===n.toLowerCase():a==="number"?parseFloat(e)===n:a==="function"?n(e):n instanceof RegExp?n.test(e):!1})}function F4r(e,t){var r=Aue.normalize(J_e?(process.env.HOMEDRIVE||"")+(process.env.HOMEPATH||""):process.env.HOME||"").replace(/[\/\\]+$/,"");return e=Aue.normalize(e),t?e.replace(/^~(?=\/|\\|$)/,r):e.replace(new RegExp("^"+G4r(r)+"(?=\\/|\\\\|$)",J_e?"i":""),"~")}function oGe(e,t){var r="(?:\\(([\\s\\S]*?)\\))?(\\w+|.-.)(?:\\(([\\s\\S]*?)\\))?",n=new RegExp("(\\$)?(\\$<"+r+">)","g"),a=new RegExp("(\\$)?(\\$\\{"+r+"\\})","g");function o(l,A,f,I,C,b){var E;return A||typeof(E=t(C))!="string"?f:E?(I||"")+E+(b||""):""}return e.replace(n,o).replace(a,o)}function egs(e,t,r){var n,a=[],o=-1,l=0,A="",f;function I(C,b){return b.length>3?(C.push(b[0]+"..."+b[b.length-1]),f=!0):b.length&&(C=C.concat(b)),C}return n=e.reduce(function(C,b){return C.concat((b+"").split(""))},[]).reduce(function(C,b){var E,N;return t||(b=b.toLowerCase()),E=/^\d$/.test(b)?1:/^[A-Z]$/.test(b)?2:/^[a-z]$/.test(b)?3:0,r&&E===0?A+=b:(N=b.charCodeAt(0),E&&E===o&&N===l+1?a.push(b):(C=I(C,a),a=[b],o=E),l=N),C},[]),n=I(n,a),A&&(n.push(A),f=!0),{values:n,suppressed:f}}function tgs(e,t){return e.join(e.length>2?", ":t?" / ":"/")}function rgs(e,t){var r,n,a={},o;if(t.phContent&&(r=t.phContent(e,t)),typeof r!="string")switch(e){case"hideEchoBack":case"mask":case"defaultInput":case"caseSensitive":case"keepWhitespace":case"encoding":case"bufferSize":case"history":case"cd":r=t.hasOwnProperty(e)?typeof t[e]=="boolean"?t[e]?"on":"off":t[e]+"":"";break;case"limit":case"trueValue":case"falseValue":n=t[t.hasOwnProperty(e+"Src")?e+"Src":e],t.keyIn?(a=egs(n,t.caseSensitive),n=a.values):n=n.filter(function(l){var A=typeof l;return A==="string"||A==="number"}),r=tgs(n,a.suppressed);break;case"limitCount":case"limitCountNotZero":r=t[t.hasOwnProperty("limitSrc")?"limitSrc":"limit"].length,r=r||e!=="limitCountNotZero"?r+"":"";break;case"lastInput":r=x4r;break;case"cwd":case"CWD":case"cwdHome":r=process.cwd(),e==="CWD"?r=Aue.basename(r):e==="cwdHome"&&(r=F4r(r));break;case"date":case"time":case"localeDate":case"localeTime":r=new Date()["to"+e.replace(/^./,function(l){return l.toUpperCase()})+"String"]();break;default:typeof(o=(e.match(/^history_m(\d+)$/)||[])[1])=="string"&&(r=X_e[X_e.length-o]||"")}return r}function ngs(e){var t=/^(.)-(.)$/.exec(e),r="",n,a,o,l;if(!t)return null;for(n=t[1].charCodeAt(0),a=t[2].charCodeAt(0),l=n +And the length must be: $`,trueValue:null,falseValue:null,caseSensitive:!0},t,{history:!1,cd:!1,phContent:function(N){return N==="charlist"?r.text:N==="length"?n+"..."+a:null}}),l,A,f,I,C,b,E;for(t=t||{},l=oGe(t.charlist?t.charlist+"":"$",ngs),(isNaN(n=parseInt(t.min,10))||typeof n!="number")&&(n=12),(isNaN(a=parseInt(t.max,10))||typeof a!="number")&&(a=24),I=new RegExp("^["+G4r(l)+"]{"+n+","+a+"}$"),r=egs([l],o.caseSensitive,!0),r.text=tgs(r.values,r.suppressed),A=t.confirmMessage!=null?t.confirmMessage:"Reinput a same one to confirm it: ",f=t.unmatchMessage!=null?t.unmatchMessage:"It differs from first one. Hit only the Enter key if you want to retry from first one.",e==null&&(e="Input new password: "),C=o.limitMessage;!E;)o.limit=I,o.limitMessage=C,b=wh.question(e,o),o.limit=[b,""],o.limitMessage=f,E=wh.question(A,o);return b};function ogs(e,t,r){var n;function a(o){return n=r(o),!isNaN(n)&&typeof n=="number"}return wh.question(e,_D({limitMessage:"Input valid number, please."},t,{limit:a,cd:!1})),n}wh.questionInt=function(e,t){return ogs(e,t,function(r){return parseInt(r,10)})};wh.questionFloat=function(e,t){return ogs(e,t,parseFloat)};wh.questionPath=function(e,t){var r,n="",a=_D({hideEchoBack:!1,limitMessage:`$Input valid path, please.$<( Min:)min>$<( Max:)max>`,history:!0,cd:!0},t,{keepWhitespace:!1,limit:function(o){var l,A,f;o=F4r(o,!0),n="";function I(C){C.split(/\/|\\/).reduce(function(b,E){var N=Aue.resolve(b+=E+Aue.sep);if(!Ab.existsSync(N))Ab.mkdirSync(N);else if(!Ab.statSync(N).isDirectory())throw new Error("Non directory already exists: "+N);return b},"")}try{if(l=Ab.existsSync(o),r=l?Ab.realpathSync(o):Aue.resolve(o),!t.hasOwnProperty("exists")&&!l||typeof t.exists=="boolean"&&t.exists!==l)return n=(l?"Already exists":"No such file or directory")+": "+r,!1;if(!l&&t.create&&(t.isDirectory?I(r):(I(Aue.dirname(r)),Ab.closeSync(Ab.openSync(r,"w"))),r=Ab.realpathSync(r)),l&&(t.min||t.max||t.isFile||t.isDirectory)){if(A=Ab.statSync(r),t.isFile&&!A.isFile())return n="Not file: "+r,!1;if(t.isDirectory&&!A.isDirectory())return n="Not directory: "+r,!1;if(t.min&&A.size<+t.min||t.max&&A.size>+t.max)return n="Size "+A.size+" is out of range: "+r,!1}if(typeof t.validate=="function"&&(f=t.validate(r))!==!0)return typeof f=="string"&&(n=f),!1}catch(C){return n=C+"",!1}return!0},phContent:function(o){return o==="error"?n:o!=="min"&&o!=="max"?null:t.hasOwnProperty(o)?t[o]+"":""}});return t=t||{},e==null&&(e='Input path (you can "cd" and "pwd"): '),wh.question(e,a),r};function ags(e,t){var r={},n={};return typeof e=="object"?(Object.keys(e).forEach(function(a){typeof e[a]=="function"&&(n[t.caseSensitive?a:a.toLowerCase()]=e[a])}),r.preCheck=function(a){var o;return r.args=k4r(a),o=r.args[0]||"",t.caseSensitive||(o=o.toLowerCase()),r.hRes=o!=="_"&&n.hasOwnProperty(o)?n[o].apply(a,r.args.slice(1)):n.hasOwnProperty("_")?n._.apply(a,r.args):null,{res:a,forceNext:!1}},n.hasOwnProperty("_")||(r.limit=function(){var a=r.args[0]||"";return t.caseSensitive||(a=a.toLowerCase()),n.hasOwnProperty(a)})):r.preCheck=function(a){return r.args=k4r(a),r.hRes=typeof e=="function"?e.apply(a,r.args):!0,{res:a,forceNext:!1}},r}wh.promptCL=function(e,t){var r=_D({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=ags(e,r);return r.limit=n.limit,r.preCheck=n.preCheck,wh.prompt(r),n.args};wh.promptLoop=function(e,t){for(var r=_D({hideEchoBack:!1,trueValue:null,falseValue:null,caseSensitive:!1,history:!0},t);!e(wh.prompt(r)););};wh.promptCLLoop=function(e,t){var r=_D({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=ags(e,r);for(r.limit=n.limit,r.preCheck=n.preCheck;wh.prompt(r),!n.hRes;);};wh.promptSimShell=function(e){return wh.prompt(_D({hideEchoBack:!1,history:!0},e,{prompt:function(){return J_e?"$>":(process.env.USER||"")+(process.env.HOSTNAME?"@"+process.env.HOSTNAME.replace(/\..*$/,""):"")+":$$ "}()}))};function cgs(e,t,r){var n;return e==null&&(e="Are you sure? "),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s*:?\s*$/,"")+" [y/n]: "),n=wh.keyIn(e,_D(t,{hideEchoBack:!1,limit:r,trueValue:"y",falseValue:"n",caseSensitive:!1})),typeof n=="boolean"?n:""}wh.keyInYN=function(e,t){return cgs(e,t)};wh.keyInYNStrict=function(e,t){return cgs(e,t,"yn")};wh.keyInPause=function(e,t){e==null&&(e="Continue..."),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s+$/,"")+" (Hit any key)"),wh.keyIn(e,_D({limit:null},t,{hideEchoBack:!0,mask:""}))};wh.keyInSelect=function(e,t,r){var n=_D({hideEchoBack:!1},r,{trueValue:null,falseValue:null,caseSensitive:!1,phContent:function(f){return f==="itemsCount"?e.length+"":f==="firstItem"?(e[0]+"").trim():f==="lastItem"?(e[e.length-1]+"").trim():null}}),a="",o={},l=49,A=` `;if(!Array.isArray(e)||!e.length||e.length>35)throw"`items` must be Array (max length: 35).";return e.forEach(function(f,I){var C=String.fromCharCode(l);a+=C,o[C]=I,A+="["+C+"] "+(f+"").trim()+` `,l=l===57?97:l+1}),(!r||r.cancel!==!1)&&(a+="0",o[0]=-1,A+="[0] "+(r&&r.cancel!=null&&typeof r.cancel!="boolean"?(r.cancel+"").trim():"CANCEL")+` `),n.limit=a,A+=` -`,t==null&&(t="Choose one from list: "),(t+="")&&((!r||r.guide!==!1)&&(t=t.replace(/\s*:?\s*$/,"")+" [$]: "),A+=t),o[wh.keyIn(A,n).toLowerCase()]};wh.getRawInput=function(){return Nxt};function Z6e(e,t){var r;return t.length&&(r={},r[e]=t[0]),wh.setDefaultOptions(r)[e]}wh.setPrint=function(){return Z6e("print",arguments)};wh.setPrompt=function(){return Z6e("prompt",arguments)};wh.setEncoding=function(){return Z6e("encoding",arguments)};wh.setMask=function(){return Z6e("mask",arguments)};wh.setBufferSize=function(){return Z6e("bufferSize",arguments)}});var R4r=H((exports,module)=>{(function(){var version={major:0,minor:2,patch:81,status:"beta"};tau_file_system={files:{},open:function(e,t,r){var n=tau_file_system.files[e];if(!n){if(r==="read")return null;n={path:e,text:"",type:t,get:function(a,o){return o===this.text.length||o>this.text.length?"end_of_file":this.text.substring(o,o+a)},put:function(a,o){return o==="end_of_file"?(this.text+=a,!0):o==="past_end_of_file"?null:(this.text=this.text.substring(0,o)+a+this.text.substring(o+a.length),!0)},get_byte:function(a){if(a==="end_of_stream")return-1;var o=Math.floor(a/2);if(this.text.length<=o)return-1;var l=codePointAt(this.text[Math.floor(a/2)],0);return a%2===0?l&255:l/256>>>0},put_byte:function(a,o){var l=o==="end_of_stream"?this.text.length:Math.floor(o/2);if(this.text.length>>0,A=(A&255)<<8|a&255):(A=A&255,A=(a&255)<<8|A&255),this.text.length===l?this.text+=fromCodePoint(A):this.text=this.text.substring(0,l)+fromCodePoint(A)+this.text.substring(l+1),!0},flush:function(){return!0},close:function(){var a=tau_file_system.files[this.path];return a?!0:null}},tau_file_system.files[e]=n}return r==="write"&&(n.text=""),n}},tau_user_input={buffer:"",get:function(e,t){for(var r;tau_user_input.buffer.length]: "),A+=t),o[wh.keyIn(A,n).toLowerCase()]};wh.getRawInput=function(){return Gxt};function V6e(e,t){var r;return t.length&&(r={},r[e]=t[0]),wh.setDefaultOptions(r)[e]}wh.setPrint=function(){return V6e("print",arguments)};wh.setPrompt=function(){return V6e("prompt",arguments)};wh.setEncoding=function(){return V6e("encoding",arguments)};wh.setMask=function(){return V6e("mask",arguments)};wh.setBufferSize=function(){return V6e("bufferSize",arguments)}});var Z4r=H((exports,module)=>{(function(){var version={major:0,minor:2,patch:81,status:"beta"};tau_file_system={files:{},open:function(e,t,r){var n=tau_file_system.files[e];if(!n){if(r==="read")return null;n={path:e,text:"",type:t,get:function(a,o){return o===this.text.length||o>this.text.length?"end_of_file":this.text.substring(o,o+a)},put:function(a,o){return o==="end_of_file"?(this.text+=a,!0):o==="past_end_of_file"?null:(this.text=this.text.substring(0,o)+a+this.text.substring(o+a.length),!0)},get_byte:function(a){if(a==="end_of_stream")return-1;var o=Math.floor(a/2);if(this.text.length<=o)return-1;var l=codePointAt(this.text[Math.floor(a/2)],0);return a%2===0?l&255:l/256>>>0},put_byte:function(a,o){var l=o==="end_of_stream"?this.text.length:Math.floor(o/2);if(this.text.length>>0,A=(A&255)<<8|a&255):(A=A&255,A=(a&255)<<8|A&255),this.text.length===l?this.text+=fromCodePoint(A):this.text=this.text.substring(0,l)+fromCodePoint(A)+this.text.substring(l+1),!0},flush:function(){return!0},close:function(){var a=tau_file_system.files[this.path];return a?!0:null}},tau_file_system.files[e]=n}return r==="write"&&(n.text=""),n}},tau_user_input={buffer:"",get:function(e,t){for(var r;tau_user_input.buffer.length\?\@\^\~\\]+|'(?:(?:'')|(?:\\')|[^'])*')/,number:/^(?:0o[0-7]+|0x[0-9a-fA-F]+|0b[01]+|0'(?:''|\\[abfnrtv\\'"`]|\\x?\d+\\|[^\\])|\d+(?:\.\d+(?:[eE][+-]?\d+)?)?)/,string:/^(?:"([^"]|""|\\")*"|`([^`]|``|\\`)*`)/,l_brace:/^(?:\[)/,r_brace:/^(?:\])/,l_bracket:/^(?:\{)/,r_bracket:/^(?:\})/,bar:/^(?:\|)/,l_paren:/^(?:\()/,r_paren:/^(?:\))/};function replace(e,t){return e.get_flag("char_conversion").id==="on"?t.replace(/./g,function(r){return e.get_char_conversion(r)}):t}function Tokenizer(e){this.thread=e,this.text="",this.tokens=[]}Tokenizer.prototype.set_last_tokens=function(e){return this.tokens=e},Tokenizer.prototype.new_text=function(e){this.text=e,this.tokens=[]},Tokenizer.prototype.get_tokens=function(e){var t,r=0,n=0,a=0,o=[],l=!1;if(e){var A=this.tokens[e-1];r=A.len,t=replace(this.thread,this.text.substr(A.len)),n=A.line,a=A.start}else t=this.text;if(/^\s*$/.test(t))return null;for(;t!=="";){var f=[],I=!1;if(/^\n/.exec(t)!==null){n++,a=0,r++,t=t.replace(/\n/,""),l=!0;continue}for(var C in rules)if(rules.hasOwnProperty(C)){var b=rules[C].exec(t);b&&f.push({value:b[0],name:C,matches:b})}if(!f.length)return this.set_last_tokens([{value:t,matches:[],name:"lexical",line:n,start:a}]);var A=reduce(f,function(Q,X){return Q.value.length>=X.value.length?Q:X});switch(A.start=a,A.line=n,t=t.replace(A.value,""),a+=A.value.length,r+=A.value.length,A.name){case"atom":A.raw=A.value,A.value.charAt(0)==="'"&&(A.value=escapeAtom(A.value.substr(1,A.value.length-2),"'"),A.value===null&&(A.name="lexical",A.value="unknown escape sequence"));break;case"number":A.float=A.value.substring(0,2)!=="0x"&&A.value.match(/[.eE]/)!==null&&A.value!=="0'.",A.value=convertNum(A.value),A.blank=I;break;case"string":var E=A.value.charAt(0);A.value=escapeAtom(A.value.substr(1,A.value.length-2),E),A.value===null&&(A.name="lexical",A.value="unknown escape sequence");break;case"whitespace":var N=o[o.length-1];N&&(N.space=!0),I=!0;continue;case"r_bracket":o.length>0&&o[o.length-1].name==="l_bracket"&&(A=o.pop(),A.name="atom",A.value="{}",A.raw="{}",A.space=!1);break;case"r_brace":o.length>0&&o[o.length-1].name==="l_brace"&&(A=o.pop(),A.name="atom",A.value="[]",A.raw="[]",A.space=!1);break}A.len=r,o.push(A),I=!1}var B=this.set_last_tokens(o);return B.length===0?null:B};function parseExpr(e,t,r,n,a){if(!t[r])return{type:ERROR,value:pl.error.syntax(t[r-1],"expression expected",!0)};var o;if(n==="0"){var l=t[r];switch(l.name){case"number":return{type:SUCCESS,len:r+1,value:new pl.type.Num(l.value,l.float)};case"variable":return{type:SUCCESS,len:r+1,value:new pl.type.Var(l.value)};case"string":var A;switch(e.get_flag("double_quotes").id){case"atom":A=new Term(l.value,[]);break;case"codes":A=new Term("[]",[]);for(var f=l.value.length-1;f>=0;f--)A=new Term(".",[new pl.type.Num(codePointAt(l.value,f),!1),A]);break;case"chars":A=new Term("[]",[]);for(var f=l.value.length-1;f>=0;f--)A=new Term(".",[new pl.type.Term(l.value.charAt(f),[]),A]);break}return{type:SUCCESS,len:r+1,value:A};case"l_paren":var B=parseExpr(e,t,r+1,e.__get_max_priority(),!0);return B.type!==SUCCESS?B:t[B.len]&&t[B.len].name==="r_paren"?(B.len++,B):{type:ERROR,derived:!0,value:pl.error.syntax(t[B.len]?t[B.len]:t[B.len-1],") or operator expected",!t[B.len])};case"l_bracket":var B=parseExpr(e,t,r+1,e.__get_max_priority(),!0);return B.type!==SUCCESS?B:t[B.len]&&t[B.len].name==="r_bracket"?(B.len++,B.value=new Term("{}",[B.value]),B):{type:ERROR,derived:!0,value:pl.error.syntax(t[B.len]?t[B.len]:t[B.len-1],"} or operator expected",!t[B.len])}}var I=parseTerm(e,t,r,a);return I.type===SUCCESS||I.derived||(I=parseList(e,t,r),I.type===SUCCESS||I.derived)?I:{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"unexpected token")}}var C=e.__get_max_priority(),b=e.__get_next_priority(n),E=r;if(t[r].name==="atom"&&t[r+1]&&(t[r].space||t[r+1].name!=="l_paren")){var l=t[r++],N=e.__lookup_operator_classes(n,l.value);if(N&&N.indexOf("fy")>-1){var B=parseExpr(e,t,r,n,a);if(B.type!==ERROR)return l.value==="-"&&!l.space&&pl.type.is_number(B.value)?{value:new pl.type.Num(-B.value.value,B.value.is_float),len:B.len,type:SUCCESS}:{value:new pl.type.Term(l.value,[B.value]),len:B.len,type:SUCCESS};o=B}else if(N&&N.indexOf("fx")>-1){var B=parseExpr(e,t,r,b,a);if(B.type!==ERROR)return{value:new pl.type.Term(l.value,[B.value]),len:B.len,type:SUCCESS};o=B}}r=E;var B=parseExpr(e,t,r,b,a);if(B.type===SUCCESS){r=B.len;var l=t[r];if(t[r]&&(t[r].name==="atom"&&e.__lookup_operator_classes(n,l.value)||t[r].name==="bar"&&e.__lookup_operator_classes(n,"|"))){var F=b,Q=n,N=e.__lookup_operator_classes(n,l.value);if(N.indexOf("xf")>-1)return{value:new pl.type.Term(l.value,[B.value]),len:++B.len,type:SUCCESS};if(N.indexOf("xfx")>-1){var X=parseExpr(e,t,r+1,F,a);return X.type===SUCCESS?{value:new pl.type.Term(l.value,[B.value,X.value]),len:X.len,type:SUCCESS}:(X.derived=!0,X)}else if(N.indexOf("xfy")>-1){var X=parseExpr(e,t,r+1,Q,a);return X.type===SUCCESS?{value:new pl.type.Term(l.value,[B.value,X.value]),len:X.len,type:SUCCESS}:(X.derived=!0,X)}else if(B.type!==ERROR)for(;;){r=B.len;var l=t[r];if(l&&l.name==="atom"&&e.__lookup_operator_classes(n,l.value)){var N=e.__lookup_operator_classes(n,l.value);if(N.indexOf("yf")>-1)B={value:new pl.type.Term(l.value,[B.value]),len:++r,type:SUCCESS};else if(N.indexOf("yfx")>-1){var X=parseExpr(e,t,++r,F,a);if(X.type===ERROR)return X.derived=!0,X;r=X.len,B={value:new pl.type.Term(l.value,[B.value,X.value]),len:r,type:SUCCESS}}else break}else break}}else o={type:ERROR,value:pl.error.syntax(t[B.len-1],"operator expected")};return B}return B}function parseTerm(e,t,r,n){if(!t[r]||t[r].name==="atom"&&t[r].raw==="."&&!n&&(t[r].space||!t[r+1]||t[r+1].name!=="l_paren"))return{type:ERROR,derived:!1,value:pl.error.syntax(t[r-1],"unfounded token")};var a=t[r],o=[];if(t[r].name==="atom"&&t[r].raw!==","){if(r++,t[r-1].space)return{type:SUCCESS,len:r,value:new pl.type.Term(a.value,o)};if(t[r]&&t[r].name==="l_paren"){if(t[r+1]&&t[r+1].name==="r_paren")return{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1],"argument expected")};var l=parseExpr(e,t,++r,"999",!0);if(l.type===ERROR)return l.derived?l:{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],"argument expected",!t[r])};for(o.push(l.value),r=l.len;t[r]&&t[r].name==="atom"&&t[r].value===",";){if(l=parseExpr(e,t,r+1,"999",!0),l.type===ERROR)return l.derived?l:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};o.push(l.value),r=l.len}if(t[r]&&t[r].name==="r_paren")r++;else return{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],", or ) expected",!t[r])}}return{type:SUCCESS,len:r,value:new pl.type.Term(a.value,o)}}return{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"term expected")}}function parseList(e,t,r){if(!t[r])return{type:ERROR,derived:!1,value:pl.error.syntax(t[r-1],"[ expected")};if(t[r]&&t[r].name==="l_brace"){var n=parseExpr(e,t,++r,"999",!0),a=[n.value],o=void 0;if(n.type===ERROR)return t[r]&&t[r].name==="r_brace"?{type:SUCCESS,len:r+1,value:new pl.type.Term("[]",[])}:{type:ERROR,derived:!0,value:pl.error.syntax(t[r],"] expected")};for(r=n.len;t[r]&&t[r].name==="atom"&&t[r].value===",";){if(n=parseExpr(e,t,r+1,"999",!0),n.type===ERROR)return n.derived?n:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};a.push(n.value),r=n.len}var l=!1;if(t[r]&&t[r].name==="bar"){if(l=!0,n=parseExpr(e,t,r+1,"999",!0),n.type===ERROR)return n.derived?n:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};o=n.value,r=n.len}return t[r]&&t[r].name==="r_brace"?{type:SUCCESS,len:r+1,value:arrayToList(a,o)}:{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],l?"] expected":", or | or ] expected",!t[r])}}return{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"list expected")}}function parseRule(e,t,r){var n=t[r].line,a=parseExpr(e,t,r,e.__get_max_priority(),!1),o=null,l;if(a.type!==ERROR)if(r=a.len,t[r]&&t[r].name==="atom"&&t[r].raw===".")if(r++,pl.type.is_term(a.value)){if(a.value.indicator===":-/2")o=new pl.type.Rule(a.value.args[0],body_conversion(a.value.args[1])),l={value:o,len:r,type:SUCCESS};else if(a.value.indicator==="-->/2"){if(o=rule_to_dcg(new pl.type.Rule(a.value.args[0],a.value.args[1]),e),!pl.type.is_rule(o))return{value:o,len:r,type:ERROR};o.body=body_conversion(o.body),l={value:o,len:r,type:pl.type.is_rule(o)?SUCCESS:ERROR}}else o=new pl.type.Rule(a.value,null),l={value:o,len:r,type:SUCCESS};if(o){var A=o.singleton_variables();A.length>0&&e.throw_warning(pl.warning.singleton(A,o.head.indicator,n))}return l}else return{type:ERROR,value:pl.error.syntax(t[r],"callable expected")};else return{type:ERROR,value:pl.error.syntax(t[r]?t[r]:t[r-1],". or operator expected")};return a}function parseProgram(e,t,r){r=r||{},r.from=r.from?r.from:"$tau-js",r.reconsult=r.reconsult!==void 0?r.reconsult:!0;var n=new Tokenizer(e),a={},o;n.new_text(t);for(var l=0,A=n.get_tokens(l);A!==null&&A[l];){var f=parseRule(e,A,l);if(f.type===ERROR)return new Term("throw",[f.value]);var I=e.session.rules["term_expansion/2"];if(I&&I.length>0){var C=new Thread(e.session),b=f.value.body?new Term(":-",[f.value.head,f.value.body]):f.value.head;b=b.rename(e.session),C.query("term_expansion("+b.toString()+", X)."),C.answer(function(E){if(E&&!pl.type.is_error(E)&&pl.type.is_term(E.links.X)){var N=E.links.X,B=N.indicator===":-/2"?new Rule(N.args[0],N.args[1]):new Rule(N,null);parseProgramExpansion(e,r,a,{value:B,len:f.len,type:f.type})}else parseProgramExpansion(e,r,a,f)})}else parseProgramExpansion(e,r,a,f);l=f.len,f.value.body===null&&f.value.head.indicator===":-/1"&&f.value.head.args[0].indicator==="char_conversion/2"&&(A=n.get_tokens(l),l=0)}return!0}function parseGoalExpansion(e,t,r,n,a){var o=new Thread(e.session);o.__goal_expansion=!0;var l=e.next_free_variable(),A=e.next_free_variable(),f=A+" = "+t+", goal_expansion("+r+", "+l+").";o.query(f),o.answer(function(I){I&&!pl.type.is_error(I)&&I.links[l]&&(n(I.links[A],body_conversion(I.links[l])),parseGoalExpansion(e,a.head(),a.term(),a.set,a))})}function parseQueryExpansion(e,t){var r=new Thread(e.session);r.__goal_expansion=!0;var n=e.next_free_variable(),a="goal_expansion("+t+", "+n+").";r.query(a);var o=r.head_point().substitution.domain();r.answer(function(l){if(l&&!pl.type.is_error(l)&&l.links[n]){for(var A=0;A0){e.renamed_variables={};var l={head:function(){return n.value.head},term:function(){return n.value.body},set:function(A,f){n.value.head=A,n.value.body=f}};parseGoalExpansion(e,n.value.head,body_conversion(n.value.body),l.set,l)}e.add_rule(n.value,t)}}function parseQuery(e,t){var r=new Tokenizer(e);r.new_text(t);var n=0;do{var a=r.get_tokens(n);if(a===null)break;var o=parseExpr(e,a,0,e.__get_max_priority(),!1);if(o.type!==ERROR){var l=o.len,A=l;if(a[l]&&a[l].name==="atom"&&a[l].raw==="."){o.value=body_conversion(o.value);var f=e.session.rules["goal_expansion/2"];!e.__goal_expansion&&f&&f.length>0?parseQueryExpansion(e,o.value):e.add_goal(o.value)}else{var I=a[l];return new Term("throw",[pl.error.syntax(I||a[l-1],". or operator expected",!I)])}n=o.len+1}else return new Term("throw",[o.value])}while(!0);return!0}function rule_to_dcg(e,t){e=e.rename(t);var r=t.next_free_variable(),n=body_to_dcg(e.body,r,t);if(n.error)return n.value;if(e.body=n.value,e.head.indicator===",/2"){var a=e.head.args[1];e.head=e.head.args[0];var o=t.next_free_variable(),l=a;if(!pl.type.is_list(l))return pl.error.type("list",l,"DCG/0");if(l.indicator==="[]/0")a=n.variable;else{for(;l.indicator==="./2"&&pl.type.is_list(l)&&l.args[1].indicator!=="[]/0";)l=l.args[1];if(pl.type.is_variable(l))return pl.error.instantiation("DCG/0");if(!pl.type.is_list(l))return pl.error.type("list",a,"DCG/0");l.args[1]=n.variable}e.body=new Term(",",[e.body,new Term("=",[o,a])]),e.head=new Term(e.head.id,e.head.args.concat([r,o]))}else{var A=e.body;pl.type.is_term(A)&&A.indicator===",/2"&&(A=A.args[0]),pl.type.is_term(A)&&A.indicator==="=/2"&&pl.type.is_variable(A.args[0])&&A.args[0]===r&&(r=A.args[1],e.body=e.body.replace(null)),e.head=new Term(e.head.id,e.head.args.concat([r,n.variable]))}return e}function body_to_dcg(e,t,r){var n;if(pl.type.is_term(e)&&e.indicator==="!/0")return n=r.next_free_variable(),{value:new Term(",",[e,new Term("=",[t,n])]),variable:n,error:!1};if(pl.type.is_term(e)&&e.indicator==="\\+/1"){var a=body_to_dcg(e.args[0],t,r);return a.error?a:{value:new Term(e.id,[a.value]),variable:t,error:!1}}else if(pl.type.is_term(e)&&(e.indicator===",/2"||e.indicator==="->/2")){var a=body_to_dcg(e.args[0],t,r);if(a.error)return a;var o=body_to_dcg(e.args[1],a.variable,r);return o.error?o:{value:new Term(e.id,[a.value,o.value]),variable:o.variable,error:!1}}else if(pl.type.is_term(e)&&e.indicator===";/2"){var a=body_to_dcg(e.args[0],t,r);if(a.error)return a;var o=body_to_dcg(e.args[1],t,r);return o.error?o:{value:new Term(",",[new Term(";",[a.value,o.value]),new Term("=",[a.variable,o.variable])]),variable:o.variable,error:!1}}else{if(pl.type.is_term(e)&&e.indicator==="{}/1")return n=r.next_free_variable(),{value:new Term(",",[e.args[0],new Term("=",[t,n])]),variable:n,error:!1};if(pl.type.is_empty_list(e))return{value:new Term("true",[]),variable:t,error:!1};if(pl.type.is_list(e)){n=r.next_free_variable();for(var l=e,A;l.indicator==="./2";)A=l,l=l.args[1];return pl.type.is_variable(l)?{value:pl.error.instantiation("DCG/0"),variable:t,error:!0}:pl.type.is_empty_list(l)?(A.args[1]=n,{value:new Term("=",[t,e]),variable:n,error:!1}):{value:pl.error.type("list",e,"DCG/0"),variable:t,error:!0}}else return pl.type.is_callable(e)?(n=r.next_free_variable(),e=new Term(e.id,e.args.concat([t,n])),{value:e,variable:n,error:!1}):{value:pl.error.type("callable",e,"DCG/0"),variable:t,error:!0}}}function body_conversion(e){return pl.type.is_variable(e)?new Term("call",[e]):pl.type.is_term(e)&&[",/2",";/2","->/2"].indexOf(e.indicator)!==-1?new Term(e.id,[body_conversion(e.args[0]),body_conversion(e.args[1])]):e}function arrayToList(e,t){for(var r=t||new Term("[]",[]),n=e.length-1;n>=0;n--)r=new Term(".",[e[n],r]);return r}function remove(e,t){for(var r=e.length-1;r>=0;r--)e[r]===t&&e.splice(r,1)}function nub(e){for(var t={},r=[],n=0;n=0;t--)if(e.charAt(t)==="/")return new Term("/",[new Term(e.substring(0,t)),new Num(parseInt(e.substring(t+1)),!1)])}function Var(e){this.id=e}function Num(e,t){this.is_float=t!==void 0?t:parseInt(e)!==e,this.value=this.is_float?e:parseInt(e)}var term_ref=0;function Term(e,t,r){term_ref++,this.ref=r||term_ref,this.id=e,this.args=t||[],this.indicator=e+"/"+this.args.length}var stream_ref=0;function Stream(e,t,r,n,a,o){this.id=stream_ref++,this.stream=e,this.mode=t,this.alias=r,this.type=n!==void 0?n:"text",this.reposition=a!==void 0?a:!0,this.eof_action=o!==void 0?o:"eof_code",this.position=this.mode==="append"?"end_of_stream":0,this.output=this.mode==="write"||this.mode==="append",this.input=this.mode==="read"}function Substitution(e,t){e=e||{},t=t||{},this.links=e,this.attrs=t}function State(e,t,r){t=t||new Substitution,r=r||null,this.goal=e,this.substitution=t,this.parent=r}function Rule(e,t,r){this.head=e,this.body=t,this.dynamic=r||!1}function Session(e){e=e===void 0||e<=0?1e3:e,this.rules={},this.src_predicates={},this.rename=0,this.modules=[],this.thread=new Thread(this),this.total_threads=1,this.renamed_variables={},this.public_predicates={},this.multifile_predicates={},this.limit=e,this.streams={user_input:new Stream(nodejs_flag?nodejs_user_input:tau_user_input,"read","user_input","text",!1,"reset"),user_output:new Stream(nodejs_flag?nodejs_user_output:tau_user_output,"write","user_output","text",!1,"eof_code")},this.file_system=nodejs_flag?nodejs_file_system:tau_file_system,this.standard_input=this.streams.user_input,this.standard_output=this.streams.user_output,this.current_input=this.streams.user_input,this.current_output=this.streams.user_output,this.format_success=function(t){return t.substitution},this.format_error=function(t){return t.goal},this.flag={bounded:pl.flag.bounded.value,max_integer:pl.flag.max_integer.value,min_integer:pl.flag.min_integer.value,integer_rounding_function:pl.flag.integer_rounding_function.value,char_conversion:pl.flag.char_conversion.value,debug:pl.flag.debug.value,max_arity:pl.flag.max_arity.value,unknown:pl.flag.unknown.value,double_quotes:pl.flag.double_quotes.value,occurs_check:pl.flag.occurs_check.value,dialect:pl.flag.dialect.value,version_data:pl.flag.version_data.value,nodejs:pl.flag.nodejs.value,argv:pl.flag.argv.value},this.__loaded_modules=[],this.__char_conversion={},this.__operators={1200:{":-":["fx","xfx"],"-->":["xfx"],"?-":["fx"]},1100:{";":["xfy"]},1050:{"->":["xfy"]},1e3:{",":["xfy"]},900:{"\\+":["fy"]},700:{"=":["xfx"],"\\=":["xfx"],"==":["xfx"],"\\==":["xfx"],"@<":["xfx"],"@=<":["xfx"],"@>":["xfx"],"@>=":["xfx"],"=..":["xfx"],is:["xfx"],"=:=":["xfx"],"=\\=":["xfx"],"<":["xfx"],"=<":["xfx"],">":["xfx"],">=":["xfx"]},600:{":":["xfy"]},500:{"+":["yfx"],"-":["yfx"],"/\\":["yfx"],"\\/":["yfx"]},400:{"*":["yfx"],"/":["yfx"],"//":["yfx"],rem:["yfx"],mod:["yfx"],"<<":["yfx"],">>":["yfx"]},200:{"**":["xfx"],"^":["xfy"],"-":["fy"],"+":["fy"],"\\":["fy"]}}}function Thread(e){this.epoch=Date.now(),this.session=e,this.session.total_threads++,this.total_steps=0,this.cpu_time=0,this.cpu_time_last=0,this.points=[],this.debugger=!1,this.debugger_states=[],this.level="top_level/0",this.__calls=[],this.current_limit=this.session.limit,this.warnings=[],this.__goal_expansion=!1}function Module(e,t,r){this.id=e,this.rules=t,this.exports=r,pl.module[e]=this}Module.prototype.exports_predicate=function(e){return this.exports.indexOf(e)!==-1},Var.prototype.unify=function(e,t){if(t&&indexOf(e.variables(),this.id)!==-1&&!pl.type.is_variable(e))return null;var r={};return r[this.id]=e,new Substitution(r)},Num.prototype.unify=function(e,t){return pl.type.is_number(e)&&this.value===e.value&&this.is_float===e.is_float?new Substitution:null},Term.prototype.unify=function(e,t){if(pl.type.is_term(e)&&this.indicator===e.indicator){for(var r=new Substitution,n=0;n=0){var n=this.args[0].value,a=Math.floor(n/26),o=n%26;return"ABCDEFGHIJKLMNOPQRSTUVWXYZ"[o]+(a!==0?a:"")}switch(this.indicator){case"[]/0":case"{}/0":case"!/0":return this.id;case"{}/1":return"{"+this.args[0].toString(e)+"}";case"./2":if(e.ignore_ops===!1){for(var l="["+this.args[0].toString(e),A=this.args[1];A.indicator==="./2";)l+=", "+A.args[0].toString(e),A=A.args[1];return A.indicator!=="[]/0"&&(l+="|"+A.toString(e)),l+="]",l}default:var f=this.id,I=e.session?e.session.lookup_operator(this.id,this.args.length):null;if(e.session===void 0||e.ignore_ops||I===null)return e.quoted&&!/^(!|[a-z][0-9a-zA-Z_]*)$/.test(f)&&f!=="{}"&&f!=="[]"&&(f="'"+redoEscape(f)+"'"),f+(this.args.length?"("+map(this.args,function(F){return F.toString(e)}).join(", ")+")":"");var C=parseInt(I.priority),b=parseInt(t.priority),E=C>b||C===b&&(I.class==="xfx"||I.class==="xfy"&&this.indicator!==t.indicator||I.class==="yfx"&&this.indicator!==t.indicator||this.indicator===t.indicator&&I.class==="yfx"&&r==="right"||this.indicator===t.indicator&&I.class==="xfy"&&r==="left");I.indicator=this.indicator;var N=E?"(":"",B=E?")":"";return this.args.length===0?"("+this.id+")":["fy","fx"].indexOf(I.class)!==-1?N+f+" "+this.args[0].toString(e,I)+B:["yf","xf"].indexOf(I.class)!==-1?N+this.args[0].toString(e,I)+" "+f+B:N+this.args[0].toString(e,I,"left")+" "+this.id+" "+this.args[1].toString(e,I,"right")+B}},Stream.prototype.toString=function(e){return"("+this.id+")"},Substitution.prototype.toString=function(e){var t="{";for(var r in this.links)this.links.hasOwnProperty(r)&&(t!=="{"&&(t+=", "),t+=r+"/"+this.links[r].toString(e));return t+="}",t},State.prototype.toString=function(e){return this.goal===null?"<"+this.substitution.toString(e)+">":"<"+this.goal.toString(e)+", "+this.substitution.toString(e)+">"},Rule.prototype.toString=function(e){return this.body?this.head.toString(e)+" :- "+this.body.toString(e)+".":this.head.toString(e)+"."},Session.prototype.toString=function(e){for(var t="",r=0;r`,trueValue:null,falseValue:null,caseSensitive: `,n+=`THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -`,n+="You should have received a copy of the BSD 3-Clause License along with this program. If not, see https://opensource.org/licenses/BSD-3-Clause",e.prepend([new State(t.goal.replace(new Term("write",[new Term(n,[])])),t.substitution,t)])}},flag:{bounded:{allowed:[new Term("true"),new Term("false")],value:new Term("true"),changeable:!1},max_integer:{allowed:[new Num(Number.MAX_SAFE_INTEGER)],value:new Num(Number.MAX_SAFE_INTEGER),changeable:!1},min_integer:{allowed:[new Num(Number.MIN_SAFE_INTEGER)],value:new Num(Number.MIN_SAFE_INTEGER),changeable:!1},integer_rounding_function:{allowed:[new Term("down"),new Term("toward_zero")],value:new Term("toward_zero"),changeable:!1},char_conversion:{allowed:[new Term("on"),new Term("off")],value:new Term("on"),changeable:!0},debug:{allowed:[new Term("on"),new Term("off")],value:new Term("off"),changeable:!0},max_arity:{allowed:[new Term("unbounded")],value:new Term("unbounded"),changeable:!1},unknown:{allowed:[new Term("error"),new Term("fail"),new Term("warning")],value:new Term("error"),changeable:!0},double_quotes:{allowed:[new Term("chars"),new Term("codes"),new Term("atom")],value:new Term("codes"),changeable:!0},occurs_check:{allowed:[new Term("false"),new Term("true")],value:new Term("false"),changeable:!0},dialect:{allowed:[new Term("tau")],value:new Term("tau"),changeable:!1},version_data:{allowed:[new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)])],value:new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)]),changeable:!1},nodejs:{allowed:[new Term("yes"),new Term("no")],value:new Term(nodejs_flag?"yes":"no"),changeable:!1},argv:{allowed:[nodejs_arguments],value:nodejs_arguments,changeble:!1}},unify:function(e,t,r){r=r===void 0?!1:r;for(var n=[{left:e,right:t}],a={};n.length!==0;){var o=n.pop();if(e=o.left,t=o.right,e!=t)if(pl.type.is_term(e)&&pl.type.is_term(t)){if(e.indicator!==t.indicator)return null;if(e.indicator==="./2"){for(var l=e,A=t;l.indicator==="./2"&&A.indicator==="./2";)n.push({left:l.args[0],right:A.args[0]}),l=l.args[1],A=A.args[1];n.push({left:l,right:A})}else for(var f=0;fa.value?1:0:a}else return n},operate:function(e,t){if(pl.type.is_operator(t)){for(var r=pl.type.is_operator(t),n=[],a,o=!1,l=0;le.get_flag("max_integer").value||a0?e.start+e.matches[0].length:e.start,a=r?new Term("token_not_found"):new Term("found",[new Term(e.value.toString())]),o=new Term(".",[new Term("line",[new Num(e.line+1)]),new Term(".",[new Term("column",[new Num(n+1)]),new Term(".",[a,new Term("[]",[])])])]);return new Term("error",[new Term("syntax_error",[new Term(t)]),o])},syntax_by_predicate:function(e,t){return new Term("error",[new Term("syntax_error",[new Term(e)]),str_indicator(t)])}},warning:{singleton:function(e,t,r){for(var n=new Term("[]"),a=e.length-1;a>=0;a--)n=new Term(".",[new Var(e[a]),n]);return new Term("warning",[new Term("singleton_variables",[n,str_indicator(t)]),new Term(".",[new Term("line",[new Num(r,!1)]),new Term("[]")])])},failed_goal:function(e,t){return new Term("warning",[new Term("failed_goal",[e]),new Term(".",[new Term("line",[new Num(t,!1)]),new Term("[]")])])}},format_variable:function(e){return"_"+e},format_answer:function(e,t,n){t instanceof Session&&(t=t.thread);var n=n||{};if(n.session=t?t.session:void 0,pl.type.is_error(e))return"uncaught exception: "+e.args[0].toString();if(e===!1)return"false.";if(e===null)return"limit exceeded ;";var a=0,o="";if(pl.type.is_substitution(e)){var l=e.domain(!0);e=e.filter(function(b,E){return!pl.type.is_variable(E)||pl.type.is_variable(E)&&e.has_attributes(b)||indexOf(l,E.id)!==-1&&b!==E.id})}for(var A in e.links)if(e.links.hasOwnProperty(A))if(pl.type.is_variable(e.links[A])&&A===e.links[A].id){var f=e.attrs[A];for(var I in f)f.hasOwnProperty(I)&&(a++,o!==""&&(o+=", "),o+="put_attr("+A+", "+I+", "+f[I].toString(n)+")")}else a++,o!==""&&(o+=", "),o+=A.toString(n)+" = "+e.links[A].toString(n,{priority:"700",class:"xfx",indicator:"=/2"},"right");var C=typeof t>"u"||t.points.length>0?" ;":".";return a===0?"true"+C:o+C},flatten_error:function(e){if(!pl.type.is_error(e))return null;e=e.args[0];var t={};return t.type=e.args[0].id,t.thrown=t.type==="syntax_error"?null:e.args[1].id,t.expected=null,t.found=null,t.representation=null,t.existence=null,t.existence_type=null,t.line=null,t.column=null,t.permission_operation=null,t.permission_type=null,t.evaluation_type=null,t.type==="type_error"||t.type==="domain_error"?(t.expected=e.args[0].args[0].id,t.found=e.args[0].args[1].toString()):t.type==="syntax_error"?e.args[1].indicator==="./2"?(t.expected=e.args[0].args[0].id,t.found=e.args[1].args[1].args[1].args[0],t.found=t.found.id==="token_not_found"?t.found.id:t.found.args[0].id,t.line=e.args[1].args[0].args[0].value,t.column=e.args[1].args[1].args[0].args[0].value):t.thrown=e.args[1].id:t.type==="permission_error"?(t.found=e.args[0].args[2].toString(),t.permission_operation=e.args[0].args[0].id,t.permission_type=e.args[0].args[1].id):t.type==="evaluation_error"?t.evaluation_type=e.args[0].args[0].id:t.type==="representation_error"?t.representation=e.args[0].args[0].id:t.type==="existence_error"&&(t.existence=e.args[0].args[1].toString(),t.existence_type=e.args[0].args[0].id),t},create:function(e){return new pl.type.Session(e)}};typeof module<"u"?module.exports=pl:window.pl=pl})()});var $us=H(D4r=>{"use strict";Object.defineProperty(D4r,"__esModule",{value:!0});D4r.linkProjectToSession=uCl;var zus=(Pa(),vi(Va)),Uus=Sn(),Kus=kW(),LO=zus.__importDefault(R4r()),oCl=zus.__importDefault(wt("vm")),{is_atom:Aue,is_variable:aCl,is_instantiated_list:cCl}=LO.default.type;function jus(e,t,r){e.prepend(r.map(n=>new LO.default.type.State(t.goal.replace(n),t.substitution,t)))}var qus=new WeakMap;function N4r(e){let t=qus.get(e.session);if(t==null)throw new Error("Assertion failed: A project should have been registered for the active session");return t}var lCl=new LO.default.type.Module("constraints",{"project_workspaces_by_descriptor/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Aue(n)||!Aue(a)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let l=Uus.structUtils.parseIdent(n.id),A=Uus.structUtils.makeDescriptor(l,a.id),I=N4r(e).tryWorkspaceByDescriptor(A);aCl(o)&&I!==null&&jus(e,t,[new LO.default.type.Term("=",[o,new LO.default.type.Term(String(I.relativeCwd))])]),Aue(o)&&I!==null&&I.relativeCwd===o.id&&e.success(t)},"workspace_field/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Aue(n)||!Aue(a)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let A=N4r(e).tryWorkspaceByCwd(n.id);if(A==null)return;let f=(0,Kus.get)(A.manifest.raw,a.id);typeof f>"u"||jus(e,t,[new LO.default.type.Term("=",[o,new LO.default.type.Term(typeof f=="object"?JSON.stringify(f):f)])])},"workspace_field_test/3":(e,t,r)=>{let[n,a,o]=r.args;e.prepend([new LO.default.type.State(t.goal.replace(new LO.default.type.Term("workspace_field_test",[n,a,o,new LO.default.type.Term("[]",[])])),t.substitution,t)])},"workspace_field_test/4":(e,t,r)=>{let[n,a,o,l]=r.args;if(!Aue(n)||!Aue(a)||!Aue(o)||!cCl(l)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let f=N4r(e).tryWorkspaceByCwd(n.id);if(f==null)return;let I=(0,Kus.get)(f.manifest.raw,a.id);if(typeof I>"u")return;let C={$$:I};for(let[E,N]of l.toJavaScript().entries())C[`$${E}`]=N;oCl.default.runInNewContext(o.id,C)&&e.success(t)}},["project_workspaces_by_descriptor/3","workspace_field/3","workspace_field_test/3","workspace_field_test/4"]);function uCl(e,t){qus.set(e,t),e.consult(`:- use_module(library(${lCl.id})).`)}});var P6e=H(sGe=>{"use strict";Object.defineProperty(sGe,"__esModule",{value:!0});sGe.Constraints=sGe.DependencyType=void 0;var G4r=(Pa(),vi(Va)),g6=Sn(),VO=Sn(),Dxt=ro(),gCl=G4r.__importDefault(kus()),L6e=G4r.__importDefault(R4r()),egs=G4r.__importStar(G6e()),ACl=$us();(0,gCl.default)(L6e.default);var V6e;(function(e){e.Dependencies="dependencies",e.DevDependencies="devDependencies",e.PeerDependencies="peerDependencies"})(V6e||(sGe.DependencyType=V6e={}));var tgs=[V6e.Dependencies,V6e.DevDependencies,V6e.PeerDependencies];function lx(e){if(e instanceof L6e.default.type.Num)return e.value;if(e instanceof L6e.default.type.Term)switch(e.indicator){case"throw/1":return lx(e.args[0]);case"error/1":return lx(e.args[0]);case"error/2":if(e.args[0]instanceof L6e.default.type.Term&&e.args[0].indicator==="syntax_error/1")return Object.assign(lx(e.args[0]),...lx(e.args[1]));{let t=lx(e.args[0]);return t.message+=` (in ${lx(e.args[1])})`,t}case"syntax_error/1":return new g6.ReportError(g6.MessageName.PROLOG_SYNTAX_ERROR,`Syntax error: ${lx(e.args[0])}`);case"existence_error/2":return new g6.ReportError(g6.MessageName.PROLOG_EXISTENCE_ERROR,`Existence error: ${lx(e.args[0])} ${lx(e.args[1])} not found`);case"instantiation_error/0":return new g6.ReportError(g6.MessageName.PROLOG_INSTANTIATION_ERROR,"Instantiation error: an argument is variable when an instantiated argument was expected");case"line/1":return{line:lx(e.args[0])};case"column/1":return{column:lx(e.args[0])};case"found/1":return{found:lx(e.args[0])};case"./2":return[lx(e.args[0])].concat(lx(e.args[1]));case"//2":return`${lx(e.args[0])}/${lx(e.args[1])}`;default:return e.id}throw`couldn't pretty print because of unsupported node ${e}`}function rgs(e){let t;try{t=lx(e)}catch(r){throw typeof r=="string"?new g6.ReportError(g6.MessageName.PROLOG_UNKNOWN_ERROR,`Unknown error: ${e} (note: ${r})`):r}return typeof t.line<"u"&&typeof t.column<"u"&&(t.message+=` at line ${t.line}, column ${t.column}`),t}var k4r=class{constructor(t,r){let n=1e3*t.workspaces.length;this.session=L6e.default.create(n),(0,ACl.linkProjectToSession)(this.session,t),this.session.consult(":- use_module(library(lists))."),this.session.consult(r)}fetchNextAnswer(){return new Promise(t=>{this.session.answer(r=>{t(r)})})}async*makeQuery(t){let r=this.session.query(t);if(r!==!0)throw rgs(r);for(;;){let n=await this.fetchNextAnswer();if(n===null)throw new g6.ReportError(g6.MessageName.PROLOG_LIMIT_EXCEEDED,"Resolution limit exceeded");if(!n)break;if(n.id==="throw")throw rgs(n);yield n}}};function J_e(e){return e.id==="null"?null:`${e.toJavaScript()}`}function dCl(e){if(e.id==="null")return null;{let t=e.toJavaScript();if(typeof t!="string")return JSON.stringify(t);try{return JSON.stringify(JSON.parse(t))}catch{return JSON.stringify(t)}}}var x4r=class e{static async find(t){return new e(t)}constructor(t){this.source="",this.project=t;let r=t.configuration.get("constraintsPath");Dxt.xfs.existsSync(r)&&(this.source=Dxt.xfs.readFileSync(r,"utf8"))}getProjectDatabase(){let t="";for(let r of tgs)t+=`dependency_type(${r}). -`;for(let r of this.project.workspacesByCwd.values()){let n=r.relativeCwd;t+=`workspace(${due(n)}). -`,t+=`workspace_ident(${due(n)}, ${due(VO.structUtils.stringifyIdent(r.anchoredLocator))}). -`,t+=`workspace_version(${due(n)}, ${due(r.manifest.version)}). -`;for(let a of tgs)for(let o of r.manifest[a].values())t+=`workspace_has_dependency(${due(n)}, ${due(VO.structUtils.stringifyIdent(o))}, ${due(o.range)}, ${a}). +`,n+="You should have received a copy of the BSD 3-Clause License along with this program. If not, see https://opensource.org/licenses/BSD-3-Clause",e.prepend([new State(t.goal.replace(new Term("write",[new Term(n,[])])),t.substitution,t)])}},flag:{bounded:{allowed:[new Term("true"),new Term("false")],value:new Term("true"),changeable:!1},max_integer:{allowed:[new Num(Number.MAX_SAFE_INTEGER)],value:new Num(Number.MAX_SAFE_INTEGER),changeable:!1},min_integer:{allowed:[new Num(Number.MIN_SAFE_INTEGER)],value:new Num(Number.MIN_SAFE_INTEGER),changeable:!1},integer_rounding_function:{allowed:[new Term("down"),new Term("toward_zero")],value:new Term("toward_zero"),changeable:!1},char_conversion:{allowed:[new Term("on"),new Term("off")],value:new Term("on"),changeable:!0},debug:{allowed:[new Term("on"),new Term("off")],value:new Term("off"),changeable:!0},max_arity:{allowed:[new Term("unbounded")],value:new Term("unbounded"),changeable:!1},unknown:{allowed:[new Term("error"),new Term("fail"),new Term("warning")],value:new Term("error"),changeable:!0},double_quotes:{allowed:[new Term("chars"),new Term("codes"),new Term("atom")],value:new Term("codes"),changeable:!0},occurs_check:{allowed:[new Term("false"),new Term("true")],value:new Term("false"),changeable:!0},dialect:{allowed:[new Term("tau")],value:new Term("tau"),changeable:!1},version_data:{allowed:[new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)])],value:new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)]),changeable:!1},nodejs:{allowed:[new Term("yes"),new Term("no")],value:new Term(nodejs_flag?"yes":"no"),changeable:!1},argv:{allowed:[nodejs_arguments],value:nodejs_arguments,changeble:!1}},unify:function(e,t,r){r=r===void 0?!1:r;for(var n=[{left:e,right:t}],a={};n.length!==0;){var o=n.pop();if(e=o.left,t=o.right,e!=t)if(pl.type.is_term(e)&&pl.type.is_term(t)){if(e.indicator!==t.indicator)return null;if(e.indicator==="./2"){for(var l=e,A=t;l.indicator==="./2"&&A.indicator==="./2";)n.push({left:l.args[0],right:A.args[0]}),l=l.args[1],A=A.args[1];n.push({left:l,right:A})}else for(var f=0;fa.value?1:0:a}else return n},operate:function(e,t){if(pl.type.is_operator(t)){for(var r=pl.type.is_operator(t),n=[],a,o=!1,l=0;le.get_flag("max_integer").value||a0?e.start+e.matches[0].length:e.start,a=r?new Term("token_not_found"):new Term("found",[new Term(e.value.toString())]),o=new Term(".",[new Term("line",[new Num(e.line+1)]),new Term(".",[new Term("column",[new Num(n+1)]),new Term(".",[a,new Term("[]",[])])])]);return new Term("error",[new Term("syntax_error",[new Term(t)]),o])},syntax_by_predicate:function(e,t){return new Term("error",[new Term("syntax_error",[new Term(e)]),str_indicator(t)])}},warning:{singleton:function(e,t,r){for(var n=new Term("[]"),a=e.length-1;a>=0;a--)n=new Term(".",[new Var(e[a]),n]);return new Term("warning",[new Term("singleton_variables",[n,str_indicator(t)]),new Term(".",[new Term("line",[new Num(r,!1)]),new Term("[]")])])},failed_goal:function(e,t){return new Term("warning",[new Term("failed_goal",[e]),new Term(".",[new Term("line",[new Num(t,!1)]),new Term("[]")])])}},format_variable:function(e){return"_"+e},format_answer:function(e,t,n){t instanceof Session&&(t=t.thread);var n=n||{};if(n.session=t?t.session:void 0,pl.type.is_error(e))return"uncaught exception: "+e.args[0].toString();if(e===!1)return"false.";if(e===null)return"limit exceeded ;";var a=0,o="";if(pl.type.is_substitution(e)){var l=e.domain(!0);e=e.filter(function(b,E){return!pl.type.is_variable(E)||pl.type.is_variable(E)&&e.has_attributes(b)||indexOf(l,E.id)!==-1&&b!==E.id})}for(var A in e.links)if(e.links.hasOwnProperty(A))if(pl.type.is_variable(e.links[A])&&A===e.links[A].id){var f=e.attrs[A];for(var I in f)f.hasOwnProperty(I)&&(a++,o!==""&&(o+=", "),o+="put_attr("+A+", "+I+", "+f[I].toString(n)+")")}else a++,o!==""&&(o+=", "),o+=A.toString(n)+" = "+e.links[A].toString(n,{priority:"700",class:"xfx",indicator:"=/2"},"right");var C=typeof t>"u"||t.points.length>0?" ;":".";return a===0?"true"+C:o+C},flatten_error:function(e){if(!pl.type.is_error(e))return null;e=e.args[0];var t={};return t.type=e.args[0].id,t.thrown=t.type==="syntax_error"?null:e.args[1].id,t.expected=null,t.found=null,t.representation=null,t.existence=null,t.existence_type=null,t.line=null,t.column=null,t.permission_operation=null,t.permission_type=null,t.evaluation_type=null,t.type==="type_error"||t.type==="domain_error"?(t.expected=e.args[0].args[0].id,t.found=e.args[0].args[1].toString()):t.type==="syntax_error"?e.args[1].indicator==="./2"?(t.expected=e.args[0].args[0].id,t.found=e.args[1].args[1].args[1].args[0],t.found=t.found.id==="token_not_found"?t.found.id:t.found.args[0].id,t.line=e.args[1].args[0].args[0].value,t.column=e.args[1].args[1].args[0].args[0].value):t.thrown=e.args[1].id:t.type==="permission_error"?(t.found=e.args[0].args[2].toString(),t.permission_operation=e.args[0].args[0].id,t.permission_type=e.args[0].args[1].id):t.type==="evaluation_error"?t.evaluation_type=e.args[0].args[0].id:t.type==="representation_error"?t.representation=e.args[0].args[0].id:t.type==="existence_error"&&(t.existence=e.args[0].args[1].toString(),t.existence_type=e.args[0].args[0].id),t},create:function(e){return new pl.type.Session(e)}};typeof module<"u"?module.exports=pl:window.pl=pl})()});var fgs=H(V4r=>{"use strict";Object.defineProperty(V4r,"__esModule",{value:!0});V4r.linkProjectToSession=r_l;var dgs=(Pa(),vi(Va)),ugs=yn(),ggs=kW(),LO=dgs.__importDefault(Z4r()),qCl=dgs.__importDefault(wt("vm")),{is_atom:due,is_variable:$Cl,is_instantiated_list:e_l}=LO.default.type;function Ags(e,t,r){e.prepend(r.map(n=>new LO.default.type.State(t.goal.replace(n),t.substitution,t)))}var pgs=new WeakMap;function L4r(e){let t=pgs.get(e.session);if(t==null)throw new Error("Assertion failed: A project should have been registered for the active session");return t}var t_l=new LO.default.type.Module("constraints",{"project_workspaces_by_descriptor/3":(e,t,r)=>{let[n,a,o]=r.args;if(!due(n)||!due(a)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let l=ugs.structUtils.parseIdent(n.id),A=ugs.structUtils.makeDescriptor(l,a.id),I=L4r(e).tryWorkspaceByDescriptor(A);$Cl(o)&&I!==null&&Ags(e,t,[new LO.default.type.Term("=",[o,new LO.default.type.Term(String(I.relativeCwd))])]),due(o)&&I!==null&&I.relativeCwd===o.id&&e.success(t)},"workspace_field/3":(e,t,r)=>{let[n,a,o]=r.args;if(!due(n)||!due(a)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let A=L4r(e).tryWorkspaceByCwd(n.id);if(A==null)return;let f=(0,ggs.get)(A.manifest.raw,a.id);typeof f>"u"||Ags(e,t,[new LO.default.type.Term("=",[o,new LO.default.type.Term(typeof f=="object"?JSON.stringify(f):f)])])},"workspace_field_test/3":(e,t,r)=>{let[n,a,o]=r.args;e.prepend([new LO.default.type.State(t.goal.replace(new LO.default.type.Term("workspace_field_test",[n,a,o,new LO.default.type.Term("[]",[])])),t.substitution,t)])},"workspace_field_test/4":(e,t,r)=>{let[n,a,o,l]=r.args;if(!due(n)||!due(a)||!due(o)||!e_l(l)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let f=L4r(e).tryWorkspaceByCwd(n.id);if(f==null)return;let I=(0,ggs.get)(f.manifest.raw,a.id);if(typeof I>"u")return;let C={$$:I};for(let[E,N]of l.toJavaScript().entries())C[`$${E}`]=N;qCl.default.runInNewContext(o.id,C)&&e.success(t)}},["project_workspaces_by_descriptor/3","workspace_field/3","workspace_field_test/3","workspace_field_test/4"]);function r_l(e,t){pgs.set(e,t),e.consult(`:- use_module(library(${t_l.id})).`)}});var O6e=H(aGe=>{"use strict";Object.defineProperty(aGe,"__esModule",{value:!0});aGe.Constraints=aGe.DependencyType=void 0;var O4r=(Pa(),vi(Va)),g6=yn(),VO=yn(),Fxt=zs(),n_l=O4r.__importDefault(Uus()),P6e=O4r.__importDefault(Z4r()),Igs=O4r.__importStar(Z6e()),i_l=fgs();(0,n_l.default)(P6e.default);var W6e;(function(e){e.Dependencies="dependencies",e.DevDependencies="devDependencies",e.PeerDependencies="peerDependencies"})(W6e||(aGe.DependencyType=W6e={}));var hgs=[W6e.Dependencies,W6e.DevDependencies,W6e.PeerDependencies];function lx(e){if(e instanceof P6e.default.type.Num)return e.value;if(e instanceof P6e.default.type.Term)switch(e.indicator){case"throw/1":return lx(e.args[0]);case"error/1":return lx(e.args[0]);case"error/2":if(e.args[0]instanceof P6e.default.type.Term&&e.args[0].indicator==="syntax_error/1")return Object.assign(lx(e.args[0]),...lx(e.args[1]));{let t=lx(e.args[0]);return t.message+=` (in ${lx(e.args[1])})`,t}case"syntax_error/1":return new g6.ReportError(g6.MessageName.PROLOG_SYNTAX_ERROR,`Syntax error: ${lx(e.args[0])}`);case"existence_error/2":return new g6.ReportError(g6.MessageName.PROLOG_EXISTENCE_ERROR,`Existence error: ${lx(e.args[0])} ${lx(e.args[1])} not found`);case"instantiation_error/0":return new g6.ReportError(g6.MessageName.PROLOG_INSTANTIATION_ERROR,"Instantiation error: an argument is variable when an instantiated argument was expected");case"line/1":return{line:lx(e.args[0])};case"column/1":return{column:lx(e.args[0])};case"found/1":return{found:lx(e.args[0])};case"./2":return[lx(e.args[0])].concat(lx(e.args[1]));case"//2":return`${lx(e.args[0])}/${lx(e.args[1])}`;default:return e.id}throw`couldn't pretty print because of unsupported node ${e}`}function mgs(e){let t;try{t=lx(e)}catch(r){throw typeof r=="string"?new g6.ReportError(g6.MessageName.PROLOG_UNKNOWN_ERROR,`Unknown error: ${e} (note: ${r})`):r}return typeof t.line<"u"&&typeof t.column<"u"&&(t.message+=` at line ${t.line}, column ${t.column}`),t}var P4r=class{constructor(t,r){let n=1e3*t.workspaces.length;this.session=P6e.default.create(n),(0,i_l.linkProjectToSession)(this.session,t),this.session.consult(":- use_module(library(lists))."),this.session.consult(r)}fetchNextAnswer(){return new Promise(t=>{this.session.answer(r=>{t(r)})})}async*makeQuery(t){let r=this.session.query(t);if(r!==!0)throw mgs(r);for(;;){let n=await this.fetchNextAnswer();if(n===null)throw new g6.ReportError(g6.MessageName.PROLOG_LIMIT_EXCEEDED,"Resolution limit exceeded");if(!n)break;if(n.id==="throw")throw mgs(n);yield n}}};function U_e(e){return e.id==="null"?null:`${e.toJavaScript()}`}function s_l(e){if(e.id==="null")return null;{let t=e.toJavaScript();if(typeof t!="string")return JSON.stringify(t);try{return JSON.stringify(JSON.parse(t))}catch{return JSON.stringify(t)}}}var W4r=class e{static async find(t){return new e(t)}constructor(t){this.source="",this.project=t;let r=t.configuration.get("constraintsPath");Fxt.xfs.existsSync(r)&&(this.source=Fxt.xfs.readFileSync(r,"utf8"))}getProjectDatabase(){let t="";for(let r of hgs)t+=`dependency_type(${r}). +`;for(let r of this.project.workspacesByCwd.values()){let n=r.relativeCwd;t+=`workspace(${pue(n)}). +`,t+=`workspace_ident(${pue(n)}, ${pue(VO.structUtils.stringifyIdent(r.anchoredLocator))}). +`,t+=`workspace_version(${pue(n)}, ${pue(r.manifest.version)}). +`;for(let a of hgs)for(let o of r.manifest[a].values())t+=`workspace_has_dependency(${pue(n)}, ${pue(VO.structUtils.stringifyIdent(o))}, ${pue(o.range)}, ${a}). `}return t+=`workspace(_) :- false. `,t+=`workspace_ident(_, _) :- false. `,t+=`workspace_version(_, _) :- false. @@ -1464,17 +1464,17 @@ And the length must be: $`,trueValue:null,falseValue:null,caseSensitive: `,t+=`gen_enforced_field(_, _, _) :- false. `,t}get fullSource(){return`${this.getProjectDatabase()} ${this.source} -${this.getDeclarations()}`}createSession(){return new k4r(this.project,this.fullSource)}async processClassic(){let t=this.createSession();return{enforcedDependencies:await this.genEnforcedDependencies(t),enforcedFields:await this.genEnforcedFields(t)}}async process(){let{enforcedDependencies:t,enforcedFields:r}=await this.processClassic(),n=new Map;for(let{workspace:a,dependencyIdent:o,dependencyRange:l,dependencyType:A}of t){let f=egs.normalizePath([A,VO.structUtils.stringifyIdent(o)]),I=VO.miscUtils.getMapWithDefault(n,a.cwd);VO.miscUtils.getMapWithDefault(I,f).set(l??void 0,new Set)}for(let{workspace:a,fieldPath:o,fieldValue:l}of r){let A=egs.normalizePath(o),f=VO.miscUtils.getMapWithDefault(n,a.cwd);VO.miscUtils.getMapWithDefault(f,A).set(JSON.parse(l)??void 0,new Set)}return{manifestUpdates:n,reportedErrors:new Map}}async genEnforcedDependencies(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), dependency_type(DependencyType), gen_enforced_dependency(WorkspaceCwd, DependencyIdent, DependencyRange, DependencyType).")){let a=Dxt.ppath.resolve(this.project.cwd,J_e(n.links.WorkspaceCwd)),o=J_e(n.links.DependencyIdent),l=J_e(n.links.DependencyRange),A=J_e(n.links.DependencyType);if(a===null||o===null)throw new Error("Invalid rule");let f=this.project.getWorkspaceByCwd(a),I=VO.structUtils.parseIdent(o);r.push({workspace:f,dependencyIdent:I,dependencyRange:l,dependencyType:A})}return VO.miscUtils.sortMap(r,[({dependencyRange:n})=>n!==null?"0":"1",({workspace:n})=>VO.structUtils.stringifyIdent(n.anchoredLocator),({dependencyIdent:n})=>VO.structUtils.stringifyIdent(n)])}async genEnforcedFields(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), gen_enforced_field(WorkspaceCwd, FieldPath, FieldValue).")){let a=Dxt.ppath.resolve(this.project.cwd,J_e(n.links.WorkspaceCwd)),o=J_e(n.links.FieldPath),l=dCl(n.links.FieldValue);if(a===null||o===null)throw new Error("Invalid rule");let A=this.project.getWorkspaceByCwd(a);r.push({workspace:A,fieldPath:o,fieldValue:l})}return VO.miscUtils.sortMap(r,[({workspace:n})=>VO.structUtils.stringifyIdent(n.anchoredLocator),({fieldPath:n})=>n])}async*query(t){let r=this.createSession();for await(let n of r.makeQuery(t)){let a={};for(let[o,l]of Object.entries(n.links))o!=="_"&&(a[o]=J_e(l));yield a}}};sGe.Constraints=x4r;function due(e){return typeof e=="string"?`'${e}'`:"[]"}});var igs=H(xte=>{"use strict";var pCl=xte&&xte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fCl=xte&&xte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ICl=xte&&xte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pCl(t,e,r);return fCl(t,e),t};Object.defineProperty(xte,"__esModule",{value:!0});var hCl=el(),ngs=Sn(),mCl=Sn(),F4r=($c(),vi(rg)),W6e=class extends hCl.BaseCommand{constructor(){super(...arguments),this.json=F4r.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.query=F4r.Option.String()}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>ICl(P6e())),r=await ngs.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await ngs.Project.find(r,this.context.cwd),a=await t.find(n),o=this.query;return o.endsWith(".")||(o=`${o}.`),(await mCl.StreamReport.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{for await(let f of a.query(o)){let I=Array.from(Object.entries(f)),C=I.length,b=I.reduce((E,[N])=>Math.max(E,N.length),0);for(let E=0;En!==null?"0":"1",({workspace:n})=>VO.structUtils.stringifyIdent(n.anchoredLocator),({dependencyIdent:n})=>VO.structUtils.stringifyIdent(n)])}async genEnforcedFields(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), gen_enforced_field(WorkspaceCwd, FieldPath, FieldValue).")){let a=Fxt.ppath.resolve(this.project.cwd,U_e(n.links.WorkspaceCwd)),o=U_e(n.links.FieldPath),l=s_l(n.links.FieldValue);if(a===null||o===null)throw new Error("Invalid rule");let A=this.project.getWorkspaceByCwd(a);r.push({workspace:A,fieldPath:o,fieldValue:l})}return VO.miscUtils.sortMap(r,[({workspace:n})=>VO.structUtils.stringifyIdent(n.anchoredLocator),({fieldPath:n})=>n])}async*query(t){let r=this.createSession();for await(let n of r.makeQuery(t)){let a={};for(let[o,l]of Object.entries(n.links))o!=="_"&&(a[o]=U_e(l));yield a}}};aGe.Constraints=W4r;function pue(e){return typeof e=="string"?`'${e}'`:"[]"}});var _gs=H(Gte=>{"use strict";var o_l=Gte&&Gte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),a_l=Gte&&Gte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),c_l=Gte&&Gte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&o_l(t,e,r);return a_l(t,e),t};Object.defineProperty(Gte,"__esModule",{value:!0});var l_l=el(),Cgs=yn(),u_l=yn(),M4r=($c(),vi(rg)),M6e=class extends l_l.BaseCommand{constructor(){super(...arguments),this.json=M4r.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.query=M4r.Option.String()}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>c_l(O6e())),r=await Cgs.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await Cgs.Project.find(r,this.context.cwd),a=await t.find(n),o=this.query;return o.endsWith(".")||(o=`${o}.`),(await u_l.StreamReport.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{for await(let f of a.query(o)){let I=Array.from(Object.entries(f)),C=I.length,b=I.reduce((E,[N])=>Math.max(E,N.length),0);for(let E=0;E{"use strict";var yCl=Gte&&Gte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bCl=Gte&&Gte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ECl=Gte&&Gte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yCl(t,e,r);return bCl(t,e),t};Object.defineProperty(Gte,"__esModule",{value:!0});var SCl=el(),sgs=Sn(),ogs=($c(),vi(rg)),O6e=class extends SCl.BaseCommand{constructor(){super(...arguments),this.verbose=ogs.Option.Boolean("-v,--verbose",!1,{description:"Also print the fact database automatically compiled from the workspace manifests"})}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>ECl(P6e())),r=await sgs.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await sgs.Project.find(r,this.context.cwd),a=await t.find(n);this.context.stdout.write(this.verbose?a.fullSource:a.source)}};O6e.paths=[["constraints","source"]];O6e.usage=ogs.Command.Usage({category:"Constraints-related commands",description:"print the source code for the constraints",details:"\n This command will print the Prolog source code used by the constraints engine. Adding the `-v,--verbose` flag will print the *full* source code, including the fact database automatically compiled from the workspace manifests.\n ",examples:[["Prints the source code","yarn constraints source"],["Print the source code and the fact database","yarn constraints source -v"]]});Gte.default=O6e});var ugs=H(L4r=>{"use strict";Object.defineProperty(L4r,"__esModule",{value:!0});var lgs=(Pa(),vi(Va)),vCl=el(),U_e=Sn(),kxt=Sn(),Z4r=($c(),vi(rg)),BCl=I4r(),cgs=lgs.__importStar(G6e()),M6e=class extends vCl.BaseCommand{constructor(){super(...arguments),this.fix=Z4r.Option.Boolean("--fix",!1,{description:"Attempt to automatically fix unambiguous issues, following a multi-pass process"}),this.json=Z4r.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await U_e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await U_e.Project.find(t,this.context.cwd);await r.restoreInstallState();let n=await r.loadUserConfig(),a;if(n?.constraints)a=new BCl.ModernEngine(r);else{let{Constraints:f}=await Promise.resolve().then(()=>lgs.__importStar(P6e()));a=await f.find(r)}let o,l=!1,A=!1;for(let f=this.fix?10:1;f>0;--f){let I=await a.process();if(!I)break;let{changedWorkspaces:C,remainingErrors:b}=cgs.applyEngineReport(r,I,{fix:this.fix}),E=[];for(let[N,B]of C){let F=N.manifest.indent;N.manifest=new U_e.Manifest,N.manifest.indent=F,N.manifest.load(B),E.push(N.persistManifest())}if(await Promise.all(E),!(C.size>0&&f>1)){o=cgs.convertReportToRoot(b,{configuration:t}),l=!1,A=!0;for(let[,N]of b)for(let B of N)B.fixable?l=!0:A=!1}}if(o.children.length===0)return 0;if(l){let f=A?`Those errors can all be fixed by running ${kxt.formatUtils.pretty(t,"yarn constraints --fix",kxt.formatUtils.Type.CODE)}`:`Errors prefixed by '\u2699' can be fixed by running ${kxt.formatUtils.pretty(t,"yarn constraints --fix",kxt.formatUtils.Type.CODE)}`;await U_e.StreamReport.start({configuration:t,stdout:this.context.stdout,includeNames:!1,includeFooter:!1},async I=>{I.reportInfo(U_e.MessageName.UNNAMED,f),I.reportSeparator()})}return o.children=U_e.miscUtils.sortMap(o.children,f=>f.value[1]),U_e.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1}),1}};M6e.paths=[["constraints"]];M6e.usage=Z4r.Command.Usage({category:"Constraints-related commands",description:"check that the project constraints are met",details:` + `,examples:[["List all dependencies throughout the workspace","yarn constraints query 'workspace_has_dependency(_, DependencyName, _, _).'"]]});Gte.default=M6e;function g_l(e){return typeof e!="string"?`${e}`:e.match(/^[a-zA-Z][a-zA-Z0-9_]+$/)?e:`'${e}'`}function A_l(e,t){let r=e===0,n=e===t-1;return r&&n?"":r?"\u250C ":n?"\u2514 ":"\u2502 "}});var Egs=H(Fte=>{"use strict";var d_l=Fte&&Fte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),p_l=Fte&&Fte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),f_l=Fte&&Fte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&d_l(t,e,r);return p_l(t,e),t};Object.defineProperty(Fte,"__esModule",{value:!0});var I_l=el(),ygs=yn(),bgs=($c(),vi(rg)),H6e=class extends I_l.BaseCommand{constructor(){super(...arguments),this.verbose=bgs.Option.Boolean("-v,--verbose",!1,{description:"Also print the fact database automatically compiled from the workspace manifests"})}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>f_l(O6e())),r=await ygs.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await ygs.Project.find(r,this.context.cwd),a=await t.find(n);this.context.stdout.write(this.verbose?a.fullSource:a.source)}};H6e.paths=[["constraints","source"]];H6e.usage=bgs.Command.Usage({category:"Constraints-related commands",description:"print the source code for the constraints",details:"\n This command will print the Prolog source code used by the constraints engine. Adding the `-v,--verbose` flag will print the *full* source code, including the fact database automatically compiled from the workspace manifests.\n ",examples:[["Prints the source code","yarn constraints source"],["Print the source code and the fact database","yarn constraints source -v"]]});Fte.default=H6e});var Bgs=H(Y4r=>{"use strict";Object.defineProperty(Y4r,"__esModule",{value:!0});var vgs=(Pa(),vi(Va)),h_l=el(),K_e=yn(),Zxt=yn(),H4r=($c(),vi(rg)),m_l=E4r(),Sgs=vgs.__importStar(Z6e()),Y6e=class extends h_l.BaseCommand{constructor(){super(...arguments),this.fix=H4r.Option.Boolean("--fix",!1,{description:"Attempt to automatically fix unambiguous issues, following a multi-pass process"}),this.json=H4r.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await K_e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await K_e.Project.find(t,this.context.cwd);await r.restoreInstallState();let n=await r.loadUserConfig(),a;if(n?.constraints)a=new m_l.ModernEngine(r);else{let{Constraints:f}=await Promise.resolve().then(()=>vgs.__importStar(O6e()));a=await f.find(r)}let o,l=!1,A=!1;for(let f=this.fix?10:1;f>0;--f){let I=await a.process();if(!I)break;let{changedWorkspaces:C,remainingErrors:b}=Sgs.applyEngineReport(r,I,{fix:this.fix}),E=[];for(let[N,B]of C){let F=N.manifest.indent;N.manifest=new K_e.Manifest,N.manifest.indent=F,N.manifest.load(B),E.push(N.persistManifest())}if(await Promise.all(E),!(C.size>0&&f>1)){o=Sgs.convertReportToRoot(b,{configuration:t}),l=!1,A=!0;for(let[,N]of b)for(let B of N)B.fixable?l=!0:A=!1}}if(o.children.length===0)return 0;if(l){let f=A?`Those errors can all be fixed by running ${Zxt.formatUtils.pretty(t,"yarn constraints --fix",Zxt.formatUtils.Type.CODE)}`:`Errors prefixed by '\u2699' can be fixed by running ${Zxt.formatUtils.pretty(t,"yarn constraints --fix",Zxt.formatUtils.Type.CODE)}`;await K_e.StreamReport.start({configuration:t,stdout:this.context.stdout,includeNames:!1,includeFooter:!1},async I=>{I.reportInfo(K_e.MessageName.UNNAMED,f),I.reportSeparator()})}return o.children=K_e.miscUtils.sortMap(o.children,f=>f.value[1]),K_e.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1}),1}};Y6e.paths=[["constraints"]];Y6e.usage=H4r.Command.Usage({category:"Constraints-related commands",description:"check that the project constraints are met",details:` This command will run constraints on your project and emit errors for each one that is found but isn't met. If any error is emitted the process will exit with a non-zero exit code. If the \`--fix\` flag is used, Yarn will attempt to automatically fix the issues the best it can, following a multi-pass process (with a maximum of 10 iterations). Some ambiguous patterns cannot be autofixed, in which case you'll have to manually specify the right resolution. For more information as to how to write constraints, please consult our dedicated page on our website: https://yarnpkg.com/features/constraints. - `,examples:[["Check that all constraints are satisfied","yarn constraints"],["Autofix all unmet constraints","yarn constraints --fix"]]});L4r.default=M6e});var pgs=H(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.ConstraintsCheckCommand=Fte.ConstraintsSourceCommand=Fte.ConstraintsQueryCommand=void 0;var H6e=(Pa(),vi(Va)),pue=Sn(),wCl=I4r(),ggs=H6e.__importDefault(igs());Fte.ConstraintsQueryCommand=ggs.default;var Ags=H6e.__importDefault(ags());Fte.ConstraintsSourceCommand=Ags.default;var dgs=H6e.__importDefault(ugs());Fte.ConstraintsCheckCommand=dgs.default;var TCl=H6e.__importStar(G6e()),RCl={configuration:{enableConstraintsChecks:{description:"If true, constraints will run during installs",type:pue.SettingsType.BOOLEAN,default:!1},constraintsPath:{description:"The path of the constraints file.",type:pue.SettingsType.ABSOLUTE_PATH,default:"./constraints.pro"}},commands:[ggs.default,Ags.default,dgs.default],hooks:{async validateProjectAfterInstall(e,{reportError:t}){if(!e.configuration.get("enableConstraintsChecks"))return;let r=await e.loadUserConfig(),n;if(r?.constraints)n=new wCl.ModernEngine(e);else{let{Constraints:l}=await Promise.resolve().then(()=>H6e.__importStar(P6e()));n=await l.find(e)}let a=await n.process();if(!a)return;let{remainingErrors:o}=TCl.applyEngineReport(e,a);if(o.size!==0)if(e.configuration.isCI)for(let[l,A]of o)for(let f of A)t(pue.MessageName.CONSTRAINTS_CHECK_FAILED,`${pue.formatUtils.pretty(e.configuration,l.anchoredLocator,pue.formatUtils.Type.IDENT)}: ${f.text}`);else t(pue.MessageName.CONSTRAINTS_CHECK_FAILED,`Constraint check failed; run ${pue.formatUtils.pretty(e.configuration,"yarn constraints",pue.formatUtils.Type.CODE)} for more details`)}}};Fte.default=RCl});var fgs=H(V4r=>{"use strict";Object.defineProperty(V4r,"__esModule",{value:!0});var NCl=el(),xxt=Sn(),Gxt=($c(),vi(rg)),Fxt=class extends NCl.BaseCommand{constructor(){super(...arguments),this.pkg=Gxt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=Gxt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=Gxt.Option.String(),this.args=Gxt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),n=xxt.structUtils.parseDescriptor(r),a=n.name.match(/^create(-|$)/)?n:n.scope?xxt.structUtils.makeIdent(n.scope,`create-${n.name}`):xxt.structUtils.makeIdent(null,`create-${n.name}`),o=xxt.structUtils.stringifyIdent(a);return n.range!=="unknown"&&(o+=`@${n.range}`),this.cli.run(["dlx",...t,o,...this.args])}};Fxt.paths=[["create"]];V4r.default=Fxt});var hgs=H(P4r=>{"use strict";Object.defineProperty(P4r,"__esModule",{value:!0});var Igs=el(),Zte=Sn(),Zxt=Sn(),lL=ro(),Y6e=($c(),vi(rg)),Q6e=class extends Igs.BaseCommand{constructor(){super(...arguments),this.packages=Y6e.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=Y6e.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=Y6e.Option.String(),this.args=Y6e.Option.Proxy()}async execute(){return Zte.Configuration.telemetry=null,await lL.xfs.mktempPromise(async t=>{let r=lL.ppath.join(t,`dlx-${process.pid}`);await lL.xfs.mkdirPromise(r),await lL.xfs.writeFilePromise(lL.ppath.join(r,"package.json"),`{} -`),await lL.xfs.writeFilePromise(lL.ppath.join(r,"yarn.lock"),"");let n=lL.ppath.join(r,".yarnrc.yml"),a=await Zte.Configuration.findProjectCwd(this.context.cwd),l={enableGlobalCache:!(await Zte.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,Zte.stringifyMessageName)(Zte.MessageName.UNUSED_PACKAGE_EXTENSION),level:Zxt.formatUtils.LogLevel.Discard}]},A=a!==null?lL.ppath.join(a,".yarnrc.yml"):null;A!==null&&lL.xfs.existsSync(A)?(await lL.xfs.copyFilePromise(A,n),await Zte.Configuration.updateConfiguration(r,F=>{let Q=Zte.miscUtils.toMerged(F,l);return Array.isArray(F.plugins)&&(Q.plugins=F.plugins.map(X=>{let ae=typeof X=="string"?X:X.path,ne=lL.npath.isAbsolute(ae)?ae:lL.npath.resolve(lL.npath.fromPortablePath(a),ae);return typeof X=="string"?ne:{path:ne,spec:X.spec}})),Q})):await lL.xfs.writeJsonPromise(n,l);let f=this.packages??[this.command],I=Zxt.structUtils.parseDescriptor(this.command).name,C=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(C!==0)return C;this.quiet||this.context.stdout.write(` -`);let b=await Zte.Configuration.find(r,this.context.plugins),{project:E,workspace:N}=await Zte.Project.find(b,r);if(N===null)throw new Igs.WorkspaceRequiredError(E.cwd,r);await E.restoreInstallState();let B=await Zxt.scriptUtils.getWorkspaceAccessibleBinaries(N);return B.has(I)===!1&&B.size===1&&typeof this.packages>"u"&&(I=Array.from(B)[0][0]),await Zxt.scriptUtils.executeWorkspaceAccessibleBinary(N,I,this.args,{packageAccessibleBinaries:B,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};Q6e.paths=[["dlx"]];Q6e.usage=Y6e.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-vite to scaffold a new Vite project","yarn dlx create-vite"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});P4r.default=Q6e});var ygs=H(K_e=>{"use strict";Object.defineProperty(K_e,"__esModule",{value:!0});K_e.DlxCommand=K_e.CreateCommand=void 0;var mgs=(Pa(),vi(Va)),Cgs=mgs.__importDefault(fgs());K_e.CreateCommand=Cgs.default;var _gs=mgs.__importDefault(hgs());K_e.DlxCommand=_gs.default;var DCl={commands:[Cgs.default,_gs.default]};K_e.default=DCl});var W4r=H(Lxt=>{"use strict";Object.defineProperty(Lxt,"__esModule",{value:!0});Lxt.PROTOCOL=void 0;Lxt.PROTOCOL="exec:"});var Vxt=H(aGe=>{"use strict";Object.defineProperty(aGe,"__esModule",{value:!0});aGe.parseSpec=kCl;aGe.makeSpec=bgs;aGe.makeLocator=xCl;aGe.loadGeneratorFile=GCl;var oGe=Sn(),Q4=ro();function kCl(e){let{params:t,selector:r}=oGe.structUtils.parseRange(e),n=Q4.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?oGe.structUtils.parseLocator(t.locator):null,path:n}}function bgs({parentLocator:e,path:t,generatorHash:r,protocol:n}){let a=e!==null?{locator:oGe.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return oGe.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function xCl(e,{parentLocator:t,path:r,generatorHash:n,protocol:a}){return oGe.structUtils.makeLocator(e,bgs({parentLocator:t,path:r,generatorHash:n,protocol:a}))}async function GCl(e,t,r){let{parentLocator:n,path:a}=oGe.structUtils.parseFileStyleRange(e,{protocol:t}),o=Q4.ppath.isAbsolute(a)?{packageFs:new Q4.CwdFS(Q4.PortablePath.root),prefixPath:Q4.PortablePath.dot,localPath:Q4.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new Q4.CwdFS(Q4.PortablePath.root),prefixPath:Q4.ppath.relative(Q4.PortablePath.root,o.localPath)}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=Q4.ppath.join(l.prefixPath,a);return await A.readFilePromise(f,"utf8")}});var vgs=H(Pxt=>{"use strict";Object.defineProperty(Pxt,"__esModule",{value:!0});Pxt.ExecFetcher=void 0;var X4=Sn(),Egs=Sn(),Sgs=Sn(),PS=ro(),O4r=W4r(),FCl=Vxt(),M4r=class{supports(t,r){return!!t.reference.startsWith(O4r.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=X4.structUtils.parseFileStyleRange(t.reference,{protocol:O4r.PROTOCOL});if(PS.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:PS.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:X4.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){let n=r.project.getDependencyMeta(t,null);if(!r.project.configuration.get("enableScripts")&&!n.built)throw new Sgs.ReportError(Sgs.MessageName.DISABLED_BUILD_SCRIPTS,`${X4.structUtils.prettyLocator(r.project.configuration,t)} can't be built with the exec: protocol because all scripts have been disabled.`);let a=await(0,FCl.loadGeneratorFile)(t.reference,O4r.PROTOCOL,r);return PS.xfs.mktempPromise(async o=>{let l=PS.ppath.join(o,"generator.js");return await PS.xfs.writeFilePromise(l,a),PS.xfs.mktempPromise(async A=>{if(await this.generatePackage(A,t,l,r),!PS.xfs.existsSync(PS.ppath.join(A,"build")))throw new Error("The script should have generated a build directory");return await X4.tgzUtils.makeArchiveFromDirectory(PS.ppath.join(A,"build"),{prefixPath:X4.structUtils.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel")})})})}async generatePackage(t,r,n,a){return await PS.xfs.mktempPromise(async o=>{let l=await X4.scriptUtils.makeScriptEnv({project:a.project,binFolder:o}),A=PS.ppath.join(t,"runtime.js");return await PS.xfs.mktempPromise(async f=>{let I=PS.ppath.join(f,"buildfile.log"),C=PS.ppath.join(t,"generator"),b=PS.ppath.join(t,"build");await PS.xfs.mkdirPromise(C),await PS.xfs.mkdirPromise(b);let E={tempDir:PS.npath.fromPortablePath(C),buildDir:PS.npath.fromPortablePath(b),locator:X4.structUtils.stringifyLocator(r)};await PS.xfs.writeFilePromise(A,` + `,examples:[["Check that all constraints are satisfied","yarn constraints"],["Autofix all unmet constraints","yarn constraints --fix"]]});Y4r.default=Y6e});var Ngs=H(Zte=>{"use strict";Object.defineProperty(Zte,"__esModule",{value:!0});Zte.ConstraintsCheckCommand=Zte.ConstraintsSourceCommand=Zte.ConstraintsQueryCommand=void 0;var Q6e=(Pa(),vi(Va)),fue=yn(),C_l=E4r(),wgs=Q6e.__importDefault(_gs());Zte.ConstraintsQueryCommand=wgs.default;var Tgs=Q6e.__importDefault(Egs());Zte.ConstraintsSourceCommand=Tgs.default;var Rgs=Q6e.__importDefault(Bgs());Zte.ConstraintsCheckCommand=Rgs.default;var __l=Q6e.__importStar(Z6e()),y_l={configuration:{enableConstraintsChecks:{description:"If true, constraints will run during installs",type:fue.SettingsType.BOOLEAN,default:!1},constraintsPath:{description:"The path of the constraints file.",type:fue.SettingsType.ABSOLUTE_PATH,default:"./constraints.pro"}},commands:[wgs.default,Tgs.default,Rgs.default],hooks:{async validateProjectAfterInstall(e,{reportError:t}){if(!e.configuration.get("enableConstraintsChecks"))return;let r=await e.loadUserConfig(),n;if(r?.constraints)n=new C_l.ModernEngine(e);else{let{Constraints:l}=await Promise.resolve().then(()=>Q6e.__importStar(O6e()));n=await l.find(e)}let a=await n.process();if(!a)return;let{remainingErrors:o}=__l.applyEngineReport(e,a);if(o.size!==0)if(e.configuration.isCI)for(let[l,A]of o)for(let f of A)t(fue.MessageName.CONSTRAINTS_CHECK_FAILED,`${fue.formatUtils.pretty(e.configuration,l.anchoredLocator,fue.formatUtils.Type.IDENT)}: ${f.text}`);else t(fue.MessageName.CONSTRAINTS_CHECK_FAILED,`Constraint check failed; run ${fue.formatUtils.pretty(e.configuration,"yarn constraints",fue.formatUtils.Type.CODE)} for more details`)}}};Zte.default=y_l});var Dgs=H(Q4r=>{"use strict";Object.defineProperty(Q4r,"__esModule",{value:!0});var b_l=el(),Lxt=yn(),Vxt=($c(),vi(rg)),Pxt=class extends b_l.BaseCommand{constructor(){super(...arguments),this.pkg=Vxt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=Vxt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=Vxt.Option.String(),this.args=Vxt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),n=Lxt.structUtils.parseDescriptor(r),a=n.name.match(/^create(-|$)/)?n:n.scope?Lxt.structUtils.makeIdent(n.scope,`create-${n.name}`):Lxt.structUtils.makeIdent(null,`create-${n.name}`),o=Lxt.structUtils.stringifyIdent(a);return n.range!=="unknown"&&(o+=`@${n.range}`),this.cli.run(["dlx",...t,o,...this.args])}};Pxt.paths=[["create"]];Q4r.default=Pxt});var xgs=H(X4r=>{"use strict";Object.defineProperty(X4r,"__esModule",{value:!0});var kgs=el(),Lte=yn(),Wxt=yn(),lL=zs(),X6e=($c(),vi(rg)),J6e=class extends kgs.BaseCommand{constructor(){super(...arguments),this.packages=X6e.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=X6e.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=X6e.Option.String(),this.args=X6e.Option.Proxy()}async execute(){return Lte.Configuration.telemetry=null,await lL.xfs.mktempPromise(async t=>{let r=lL.ppath.join(t,`dlx-${process.pid}`);await lL.xfs.mkdirPromise(r),await lL.xfs.writeFilePromise(lL.ppath.join(r,"package.json"),`{} +`),await lL.xfs.writeFilePromise(lL.ppath.join(r,"yarn.lock"),"");let n=lL.ppath.join(r,".yarnrc.yml"),a=await Lte.Configuration.findProjectCwd(this.context.cwd),l={enableGlobalCache:!(await Lte.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,Lte.stringifyMessageName)(Lte.MessageName.UNUSED_PACKAGE_EXTENSION),level:Wxt.formatUtils.LogLevel.Discard}]},A=a!==null?lL.ppath.join(a,".yarnrc.yml"):null;A!==null&&lL.xfs.existsSync(A)?(await lL.xfs.copyFilePromise(A,n),await Lte.Configuration.updateConfiguration(r,F=>{let Q=Lte.miscUtils.toMerged(F,l);return Array.isArray(F.plugins)&&(Q.plugins=F.plugins.map(X=>{let ae=typeof X=="string"?X:X.path,ne=lL.npath.isAbsolute(ae)?ae:lL.npath.resolve(lL.npath.fromPortablePath(a),ae);return typeof X=="string"?ne:{path:ne,spec:X.spec}})),Q})):await lL.xfs.writeJsonPromise(n,l);let f=this.packages??[this.command],I=Wxt.structUtils.parseDescriptor(this.command).name,C=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(C!==0)return C;this.quiet||this.context.stdout.write(` +`);let b=await Lte.Configuration.find(r,this.context.plugins),{project:E,workspace:N}=await Lte.Project.find(b,r);if(N===null)throw new kgs.WorkspaceRequiredError(E.cwd,r);await E.restoreInstallState();let B=await Wxt.scriptUtils.getWorkspaceAccessibleBinaries(N);return B.has(I)===!1&&B.size===1&&typeof this.packages>"u"&&(I=Array.from(B)[0][0]),await Wxt.scriptUtils.executeWorkspaceAccessibleBinary(N,I,this.args,{packageAccessibleBinaries:B,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};J6e.paths=[["dlx"]];J6e.usage=X6e.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-vite to scaffold a new Vite project","yarn dlx create-vite"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});X4r.default=J6e});var Lgs=H(j_e=>{"use strict";Object.defineProperty(j_e,"__esModule",{value:!0});j_e.DlxCommand=j_e.CreateCommand=void 0;var Ggs=(Pa(),vi(Va)),Fgs=Ggs.__importDefault(Dgs());j_e.CreateCommand=Fgs.default;var Zgs=Ggs.__importDefault(xgs());j_e.DlxCommand=Zgs.default;var E_l={commands:[Fgs.default,Zgs.default]};j_e.default=E_l});var J4r=H(Oxt=>{"use strict";Object.defineProperty(Oxt,"__esModule",{value:!0});Oxt.PROTOCOL=void 0;Oxt.PROTOCOL="exec:"});var Mxt=H(lGe=>{"use strict";Object.defineProperty(lGe,"__esModule",{value:!0});lGe.parseSpec=S_l;lGe.makeSpec=Vgs;lGe.makeLocator=v_l;lGe.loadGeneratorFile=B_l;var cGe=yn(),Q4=zs();function S_l(e){let{params:t,selector:r}=cGe.structUtils.parseRange(e),n=Q4.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?cGe.structUtils.parseLocator(t.locator):null,path:n}}function Vgs({parentLocator:e,path:t,generatorHash:r,protocol:n}){let a=e!==null?{locator:cGe.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return cGe.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function v_l(e,{parentLocator:t,path:r,generatorHash:n,protocol:a}){return cGe.structUtils.makeLocator(e,Vgs({parentLocator:t,path:r,generatorHash:n,protocol:a}))}async function B_l(e,t,r){let{parentLocator:n,path:a}=cGe.structUtils.parseFileStyleRange(e,{protocol:t}),o=Q4.ppath.isAbsolute(a)?{packageFs:new Q4.CwdFS(Q4.PortablePath.root),prefixPath:Q4.PortablePath.dot,localPath:Q4.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new Q4.CwdFS(Q4.PortablePath.root),prefixPath:Q4.ppath.relative(Q4.PortablePath.root,o.localPath)}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=Q4.ppath.join(l.prefixPath,a);return await A.readFilePromise(f,"utf8")}});var Ogs=H(Hxt=>{"use strict";Object.defineProperty(Hxt,"__esModule",{value:!0});Hxt.ExecFetcher=void 0;var X4=yn(),Pgs=yn(),Wgs=yn(),PS=zs(),U4r=J4r(),w_l=Mxt(),K4r=class{supports(t,r){return!!t.reference.startsWith(U4r.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=X4.structUtils.parseFileStyleRange(t.reference,{protocol:U4r.PROTOCOL});if(PS.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:PS.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:X4.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){let n=r.project.getDependencyMeta(t,null);if(!r.project.configuration.get("enableScripts")&&!n.built)throw new Wgs.ReportError(Wgs.MessageName.DISABLED_BUILD_SCRIPTS,`${X4.structUtils.prettyLocator(r.project.configuration,t)} can't be built with the exec: protocol because all scripts have been disabled.`);let a=await(0,w_l.loadGeneratorFile)(t.reference,U4r.PROTOCOL,r);return PS.xfs.mktempPromise(async o=>{let l=PS.ppath.join(o,"generator.js");return await PS.xfs.writeFilePromise(l,a),PS.xfs.mktempPromise(async A=>{if(await this.generatePackage(A,t,l,r),!PS.xfs.existsSync(PS.ppath.join(A,"build")))throw new Error("The script should have generated a build directory");return await X4.tgzUtils.makeArchiveFromDirectory(PS.ppath.join(A,"build"),{prefixPath:X4.structUtils.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel")})})})}async generatePackage(t,r,n,a){return await PS.xfs.mktempPromise(async o=>{let l=await X4.scriptUtils.makeScriptEnv({project:a.project,binFolder:o}),A=PS.ppath.join(t,"runtime.js");return await PS.xfs.mktempPromise(async f=>{let I=PS.ppath.join(f,"buildfile.log"),C=PS.ppath.join(t,"generator"),b=PS.ppath.join(t,"build");await PS.xfs.mkdirPromise(C),await PS.xfs.mkdirPromise(b);let E={tempDir:PS.npath.fromPortablePath(C),buildDir:PS.npath.fromPortablePath(b),locator:X4.structUtils.stringifyLocator(r)};await PS.xfs.writeFilePromise(A,` // Expose 'Module' as a global variable Object.defineProperty(global, 'Module', { get: () => require('module'), @@ -1499,55 +1499,55 @@ ${this.getDeclarations()}`}createSession(){return new k4r(this.project,this.full enumerable: true, }); `);let N=l.NODE_OPTIONS||"",B=/\s*--require\s+\S*\.pnp\.c?js\s*/g;N=N.replace(B," ").trim(),l.NODE_OPTIONS=N;let{stdout:F,stderr:Q}=a.project.configuration.getSubprocessStreams(I,{header:`# This file contains the result of Yarn generating a package (${X4.structUtils.stringifyLocator(r)}) -`,prefix:X4.structUtils.prettyLocator(a.project.configuration,r),report:a.report}),{code:X}=await X4.execUtils.pipevp(process.execPath,["--require",PS.npath.fromPortablePath(A),PS.npath.fromPortablePath(n),X4.structUtils.stringifyIdent(r)],{cwd:t,env:l,stdin:null,stdout:F,stderr:Q});if(X!==0)throw PS.xfs.detachTemp(f),new Error(`Package generation failed (exit code ${X}, logs can be found here: ${Egs.formatUtils.pretty(a.project.configuration,I,Egs.formatUtils.Type.PATH)})`)})})}};Pxt.ExecFetcher=M4r});var wgs=H(Wxt=>{"use strict";Object.defineProperty(Wxt,"__esModule",{value:!0});Wxt.ExecResolver=void 0;var ZCl=(Pa(),vi(Va)),LCl=Sn(),VCl=Sn(),Bgs=Sn(),fue=Sn(),X6e=W4r(),H4r=ZCl.__importStar(Vxt()),PCl=2,Y4r=class{supportsDescriptor(t,r){return!!t.range.startsWith(X6e.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(X6e.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){if(n.project.tryWorkspaceByLocator(r)===null)throw new Bgs.ReportError(Bgs.MessageName.INVALID_MANIFEST,`${fue.structUtils.prettyLocator(n.project.configuration,r)} lists ${fue.structUtils.prettyDescriptor(n.project.configuration,t)} as dependency, but only workspaces can depend on exec: packages.`);return fue.structUtils.bindDescriptor(t,{locator:fue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=H4r.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await H4r.loadGeneratorFile(fue.structUtils.makeRange({protocol:X6e.PROTOCOL,source:a,selector:a,params:{locator:fue.structUtils.stringifyLocator(o)}}),X6e.PROTOCOL,n.fetchOptions),A=fue.hashUtils.makeHash(`${PCl}`,l).slice(0,6);return[H4r.makeLocator(t,{parentLocator:o,path:a,generatorHash:A,protocol:X6e.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await fue.miscUtils.releaseAfterUseAsync(async()=>await LCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:VCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Wxt.ExecResolver=Y4r});var Ngs=H(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.ExecResolver=Lte.ExecFetcher=Lte.execUtils=void 0;var WCl=(Pa(),vi(Va)),Tgs=vgs();Object.defineProperty(Lte,"ExecFetcher",{enumerable:!0,get:function(){return Tgs.ExecFetcher}});var Rgs=wgs();Object.defineProperty(Lte,"ExecResolver",{enumerable:!0,get:function(){return Rgs.ExecResolver}});var OCl=WCl.__importStar(Vxt());Lte.execUtils=OCl;var MCl={fetchers:[Tgs.ExecFetcher],resolvers:[Rgs.ExecResolver]};Lte.default=MCl});var cGe=H(Iue=>{"use strict";Object.defineProperty(Iue,"__esModule",{value:!0});Iue.PROTOCOL=Iue.TARBALL_REGEXP=Iue.FILE_REGEXP=void 0;Iue.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;Iue.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;Iue.PROTOCOL="file:"});var lGe=H(hue=>{"use strict";Object.defineProperty(hue,"__esModule",{value:!0});hue.parseSpec=YCl;hue.makeSpec=Dgs;hue.makeLocator=QCl;hue.fetchArchiveFromLocator=XCl;hue.makeArchiveFromLocator=kgs;hue.makeBufferFromLocator=JCl;var J4=Sn(),uw=ro(),HCl=cGe();function YCl(e){let{params:t,selector:r}=J4.structUtils.parseRange(e),n=uw.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?J4.structUtils.parseLocator(t.locator):null,path:n}}function Dgs({parentLocator:e,path:t,hash:r,protocol:n}){let a=e!==null?{locator:J4.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return J4.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function QCl(e,{parentLocator:t,path:r,hash:n,protocol:a}){return J4.structUtils.makeLocator(e,Dgs({parentLocator:t,path:r,hash:n,protocol:a}))}async function XCl(e,t){let{parentLocator:r,path:n}=J4.structUtils.parseFileStyleRange(e.reference,{protocol:HCl.PROTOCOL}),a=uw.ppath.isAbsolute(n)?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.PortablePath.dot,localPath:uw.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.ppath.relative(uw.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let l=o.packageFs,A=uw.ppath.join(o.prefixPath,n);return await J4.miscUtils.releaseAfterUseAsync(async()=>await l.readFilePromise(A),o.releaseFs)}async function kgs(e,{protocol:t,fetchOptions:r,inMemory:n=!1}){let{parentLocator:a,path:o}=J4.structUtils.parseFileStyleRange(e.reference,{protocol:t}),l=uw.ppath.isAbsolute(o)?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.PortablePath.dot,localPath:uw.PortablePath.root}:await r.fetcher.fetch(a,r),A=l.localPath?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.ppath.relative(uw.PortablePath.root,l.localPath)}:l;l!==A&&l.releaseFs&&l.releaseFs();let f=A.packageFs,I=uw.ppath.join(A.prefixPath,o);return await J4.miscUtils.releaseAfterUseAsync(async()=>await J4.tgzUtils.makeArchiveFromDirectory(I,{baseFs:f,prefixPath:J4.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:n}),A.releaseFs)}async function JCl(e,{protocol:t,fetchOptions:r}){return(await kgs(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}});var Ggs=H(Oxt=>{"use strict";Object.defineProperty(Oxt,"__esModule",{value:!0});Oxt.FileFetcher=void 0;var UCl=(Pa(),vi(Va)),Q4r=Sn(),xgs=ro(),X4r=cGe(),KCl=UCl.__importStar(lGe()),J4r=class{supports(t,r){return!!t.reference.startsWith(X4r.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=Q4r.structUtils.parseFileStyleRange(t.reference,{protocol:X4r.PROTOCOL});if(xgs.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:xgs.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Q4r.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Q4r.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){return KCl.makeArchiveFromLocator(t,{protocol:X4r.PROTOCOL,fetchOptions:r})}};Oxt.FileFetcher=J4r});var Fgs=H(Mxt=>{"use strict";Object.defineProperty(Mxt,"__esModule",{value:!0});Mxt.FileResolver=void 0;var jCl=(Pa(),vi(Va)),mue=Sn(),zCl=Sn(),qCl=Sn(),Cue=cGe(),U4r=jCl.__importStar(lGe()),$Cl=2,K4r=class{supportsDescriptor(t,r){return t.range.match(Cue.FILE_REGEXP)?!0:!!t.range.startsWith(Cue.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Cue.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Cue.FILE_REGEXP.test(t.range)&&(t=mue.structUtils.makeDescriptor(t,`${Cue.PROTOCOL}${t.range}`)),mue.structUtils.bindDescriptor(t,{locator:mue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=U4r.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await U4r.makeBufferFromLocator(mue.structUtils.makeLocator(t,mue.structUtils.makeRange({protocol:Cue.PROTOCOL,source:a,selector:a,params:{locator:mue.structUtils.stringifyLocator(o)}})),{protocol:Cue.PROTOCOL,fetchOptions:n.fetchOptions}),A=mue.hashUtils.makeHash(`${$Cl}`,l).slice(0,6);return[U4r.makeLocator(t,{parentLocator:o,path:a,hash:A,protocol:Cue.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await mue.miscUtils.releaseAfterUseAsync(async()=>await qCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:zCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Mxt.FileResolver=K4r});var Lgs=H(Yxt=>{"use strict";Object.defineProperty(Yxt,"__esModule",{value:!0});Yxt.TarballFileFetcher=void 0;var e_l=(Pa(),vi(Va)),Hxt=Sn(),Zgs=cGe(),t_l=e_l.__importStar(lGe()),j4r=class{supports(t,r){return Zgs.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Zgs.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Hxt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Hxt.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromDisk(t,r){let n=await t_l.fetchArchiveFromLocator(t,r);return await Hxt.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:Hxt.structUtils.getIdentVendorPath(t),stripComponents:1})}};Yxt.TarballFileFetcher=j4r});var Vgs=H(Jxt=>{"use strict";Object.defineProperty(Jxt,"__esModule",{value:!0});Jxt.TarballFileResolver=void 0;var r_l=(Pa(),vi(Va)),n_l=Sn(),i_l=Sn(),s_l=Sn(),Qxt=Sn(),Vte=cGe(),Xxt=r_l.__importStar(lGe()),z4r=class{supportsDescriptor(t,r){return Vte.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith(Vte.PROTOCOL)||Vte.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return Vte.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Vte.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Vte.FILE_REGEXP.test(t.range)&&(t=Qxt.structUtils.makeDescriptor(t,`${Vte.PROTOCOL}${t.range}`)),Qxt.structUtils.bindDescriptor(t,{locator:Qxt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=Xxt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=Xxt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:Vte.PROTOCOL}),A=await Xxt.fetchArchiveFromLocator(l,n.fetchOptions),f=n_l.hashUtils.makeHash(A).slice(0,6);return[Xxt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:Vte.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Qxt.miscUtils.releaseAfterUseAsync(async()=>await i_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:s_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Jxt.TarballFileResolver=z4r});var Hgs=H(PO=>{"use strict";Object.defineProperty(PO,"__esModule",{value:!0});PO.TarballFileResolver=PO.TarballFileFetcher=PO.FileResolver=PO.FileFetcher=PO.fileUtils=void 0;var o_l=(Pa(),vi(Va)),Pgs=Ggs();Object.defineProperty(PO,"FileFetcher",{enumerable:!0,get:function(){return Pgs.FileFetcher}});var Wgs=Fgs();Object.defineProperty(PO,"FileResolver",{enumerable:!0,get:function(){return Wgs.FileResolver}});var Ogs=Lgs();Object.defineProperty(PO,"TarballFileFetcher",{enumerable:!0,get:function(){return Ogs.TarballFileFetcher}});var Mgs=Vgs();Object.defineProperty(PO,"TarballFileResolver",{enumerable:!0,get:function(){return Mgs.TarballFileResolver}});var a_l=o_l.__importStar(lGe());PO.fileUtils=a_l;var c_l={fetchers:[Ogs.TarballFileFetcher,Pgs.FileFetcher],resolvers:[Mgs.TarballFileResolver,Wgs.FileResolver]};PO.default=c_l});var q4r=H(J6e=>{"use strict";Object.defineProperty(J6e,"__esModule",{value:!0});J6e.isGithubUrl=g_l;J6e.parseGithubUrl=A_l;J6e.invalidGithubUrlMessage=Qgs;var l_l=(Pa(),vi(Va)),u_l=l_l.__importDefault(wt("querystring")),Ygs=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function g_l(e){return e?Ygs.some(t=>!!e.match(t)):!1}function A_l(e){let t;for(let A of Ygs)if(t=e.match(A),t)break;if(!t)throw new Error(Qgs(e));let[,r,n,a,o="master"]=t,{commit:l}=u_l.default.parse(o);return o=l||o.replace(/[^:]*:/,""),{auth:r,username:n,reponame:a,treeish:o}}function Qgs(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}});var Jgs=H(Kxt=>{"use strict";Object.defineProperty(Kxt,"__esModule",{value:!0});Kxt.GithubFetcher=void 0;var d_l=(Pa(),vi(Va)),j_e=Sn(),Uxt=ro(),p_l=rDe(),Xgs=d_l.__importStar(q4r()),$4r=class{supports(t,r){return!!Xgs.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${j_e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:j_e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await j_e.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await Uxt.xfs.mktempPromise(async a=>{let o=new Uxt.CwdFS(a);await j_e.tgzUtils.extractArchiveTo(n,o,{stripComponents:1});let l=p_l.gitUtils.splitRepoUrl(t.reference),A=Uxt.ppath.join(a,"package.tgz");await j_e.scriptUtils.prepareExternalProject(a,A,{configuration:r.project.configuration,report:r.report,workspace:l.extra.workspace,locator:t});let f=await Uxt.xfs.readFilePromise(A);return await j_e.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:j_e.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:n,username:a,reponame:o,treeish:l}=Xgs.parseGithubUrl(t.reference);return`https://${n?`${n}@`:""}github.com/${a}/${o}/archive/${l}.tar.gz`}};Kxt.GithubFetcher=$4r});var Kgs=H(z_e=>{"use strict";Object.defineProperty(z_e,"__esModule",{value:!0});z_e.GithubFetcher=z_e.githubUtils=void 0;var f_l=(Pa(),vi(Va)),Ugs=Jgs();Object.defineProperty(z_e,"GithubFetcher",{enumerable:!0,get:function(){return Ugs.GithubFetcher}});var I_l=f_l.__importStar(q4r());z_e.githubUtils=I_l;var h_l={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let n=new Ugs.GithubFetcher;if(!n.supports(t,r))return null;try{return await n.fetch(t,r)}catch{return null}}}};z_e.default=h_l});var tJr=H(eJr=>{"use strict";Object.defineProperty(eJr,"__esModule",{value:!0});eJr.isTgzUrl=m_l;function m_l(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}});var jgs=H(jxt=>{"use strict";Object.defineProperty(jxt,"__esModule",{value:!0});jxt.TarballHttpFetcher=void 0;var C_l=(Pa(),vi(Va)),U6e=Sn(),__l=C_l.__importStar(tJr()),rJr=class{supports(t,r){return __l.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${U6e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:U6e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await U6e.httpUtils.get(t.reference,{configuration:r.project.configuration});return await U6e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:U6e.structUtils.getIdentVendorPath(t),stripComponents:1})}};jxt.TarballHttpFetcher=rJr});var $gs=H(zxt=>{"use strict";Object.defineProperty(zxt,"__esModule",{value:!0});zxt.TarballHttpResolver=void 0;var y_l=(Pa(),vi(Va)),b_l=Sn(),E_l=Sn(),zgs=Sn(),qgs=y_l.__importStar(tJr()),nJr=class{supportsDescriptor(t,r){return qgs.isTgzUrl(t.range)}supportsLocator(t,r){return qgs.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[zgs.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await zgs.miscUtils.releaseAfterUseAsync(async()=>await b_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:E_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};zxt.TarballHttpResolver=nJr});var rAs=H(q_e=>{"use strict";Object.defineProperty(q_e,"__esModule",{value:!0});q_e.TarballHttpResolver=q_e.TarballHttpFetcher=void 0;var eAs=jgs();Object.defineProperty(q_e,"TarballHttpFetcher",{enumerable:!0,get:function(){return eAs.TarballHttpFetcher}});var tAs=$gs();Object.defineProperty(q_e,"TarballHttpResolver",{enumerable:!0,get:function(){return tAs.TarballHttpResolver}});var S_l={fetchers:[eAs.TarballHttpFetcher],resolvers:[tAs.TarballHttpResolver]};q_e.default=S_l});var sJr=H(iJr=>{"use strict";Object.defineProperty(iJr,"__esModule",{value:!0});var v_l=el(),A6=Sn(),$_e=Sn(),Q_=ro(),_ue=($c(),vi(rg)),K6e=class extends v_l.BaseCommand{constructor(){super(...arguments),this.private=_ue.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=_ue.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=_ue.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=_ue.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=_ue.Option.Boolean("-2",!1,{hidden:!0}),this.yes=_ue.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await A6.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new _ue.UsageError("Cannot use the --install flag from within a project subdirectory");Q_.xfs.existsSync(this.context.cwd)||await Q_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=Q_.ppath.join(this.context.cwd,Q_.Filename.lockfile);Q_.xfs.existsSync(n)||await Q_.xfs.writeFilePromise(n,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await Q_.xfs.mktempPromise(async l=>{let{code:A}=await $_e.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await $_e.scriptUtils.makeScriptEnv({binFolder:l})});return A})}async initialize(){}async executeRegular(t){let r=null;try{r=(await A6.Project.find(t,this.context.cwd)).project}catch{r=null}Q_.xfs.existsSync(this.context.cwd)||await Q_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=await A6.Manifest.tryFind(this.context.cwd),a=n??new A6.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??$_e.structUtils.makeIdent(t.get("initScope"),this.name??Q_.ppath.basename(this.context.cwd)),a.packageManager=A6.YarnVersion&&A6.miscUtils.isTaggedYarnVersion(A6.YarnVersion)?`yarn@${A6.YarnVersion}`:null,(!n&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await Q_.xfs.mkdirPromise(Q_.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let l={};a.exportTo(l);let A=Q_.ppath.join(this.context.cwd,A6.Manifest.fileName);await Q_.xfs.changeFilePromise(A,`${JSON.stringify(l,null,2)} -`,{automaticNewlines:!0});let f=[A],I=Q_.ppath.join(this.context.cwd,"README.md");if(Q_.xfs.existsSync(I)||(await Q_.xfs.writeFilePromise(I,`# ${$_e.structUtils.stringifyIdent(a.name)} +`,prefix:X4.structUtils.prettyLocator(a.project.configuration,r),report:a.report}),{code:X}=await X4.execUtils.pipevp(process.execPath,["--require",PS.npath.fromPortablePath(A),PS.npath.fromPortablePath(n),X4.structUtils.stringifyIdent(r)],{cwd:t,env:l,stdin:null,stdout:F,stderr:Q});if(X!==0)throw PS.xfs.detachTemp(f),new Error(`Package generation failed (exit code ${X}, logs can be found here: ${Pgs.formatUtils.pretty(a.project.configuration,I,Pgs.formatUtils.Type.PATH)})`)})})}};Hxt.ExecFetcher=K4r});var Hgs=H(Yxt=>{"use strict";Object.defineProperty(Yxt,"__esModule",{value:!0});Yxt.ExecResolver=void 0;var T_l=(Pa(),vi(Va)),R_l=yn(),N_l=yn(),Mgs=yn(),Iue=yn(),U6e=J4r(),j4r=T_l.__importStar(Mxt()),D_l=2,z4r=class{supportsDescriptor(t,r){return!!t.range.startsWith(U6e.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(U6e.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){if(n.project.tryWorkspaceByLocator(r)===null)throw new Mgs.ReportError(Mgs.MessageName.INVALID_MANIFEST,`${Iue.structUtils.prettyLocator(n.project.configuration,r)} lists ${Iue.structUtils.prettyDescriptor(n.project.configuration,t)} as dependency, but only workspaces can depend on exec: packages.`);return Iue.structUtils.bindDescriptor(t,{locator:Iue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=j4r.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await j4r.loadGeneratorFile(Iue.structUtils.makeRange({protocol:U6e.PROTOCOL,source:a,selector:a,params:{locator:Iue.structUtils.stringifyLocator(o)}}),U6e.PROTOCOL,n.fetchOptions),A=Iue.hashUtils.makeHash(`${D_l}`,l).slice(0,6);return[j4r.makeLocator(t,{parentLocator:o,path:a,generatorHash:A,protocol:U6e.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Iue.miscUtils.releaseAfterUseAsync(async()=>await R_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:N_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Yxt.ExecResolver=z4r});var Xgs=H(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});Vte.ExecResolver=Vte.ExecFetcher=Vte.execUtils=void 0;var k_l=(Pa(),vi(Va)),Ygs=Ogs();Object.defineProperty(Vte,"ExecFetcher",{enumerable:!0,get:function(){return Ygs.ExecFetcher}});var Qgs=Hgs();Object.defineProperty(Vte,"ExecResolver",{enumerable:!0,get:function(){return Qgs.ExecResolver}});var x_l=k_l.__importStar(Mxt());Vte.execUtils=x_l;var G_l={fetchers:[Ygs.ExecFetcher],resolvers:[Qgs.ExecResolver]};Vte.default=G_l});var uGe=H(hue=>{"use strict";Object.defineProperty(hue,"__esModule",{value:!0});hue.PROTOCOL=hue.TARBALL_REGEXP=hue.FILE_REGEXP=void 0;hue.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;hue.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;hue.PROTOCOL="file:"});var gGe=H(mue=>{"use strict";Object.defineProperty(mue,"__esModule",{value:!0});mue.parseSpec=Z_l;mue.makeSpec=Jgs;mue.makeLocator=L_l;mue.fetchArchiveFromLocator=V_l;mue.makeArchiveFromLocator=Ugs;mue.makeBufferFromLocator=P_l;var J4=yn(),uw=zs(),F_l=uGe();function Z_l(e){let{params:t,selector:r}=J4.structUtils.parseRange(e),n=uw.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?J4.structUtils.parseLocator(t.locator):null,path:n}}function Jgs({parentLocator:e,path:t,hash:r,protocol:n}){let a=e!==null?{locator:J4.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return J4.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function L_l(e,{parentLocator:t,path:r,hash:n,protocol:a}){return J4.structUtils.makeLocator(e,Jgs({parentLocator:t,path:r,hash:n,protocol:a}))}async function V_l(e,t){let{parentLocator:r,path:n}=J4.structUtils.parseFileStyleRange(e.reference,{protocol:F_l.PROTOCOL}),a=uw.ppath.isAbsolute(n)?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.PortablePath.dot,localPath:uw.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.ppath.relative(uw.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let l=o.packageFs,A=uw.ppath.join(o.prefixPath,n);return await J4.miscUtils.releaseAfterUseAsync(async()=>await l.readFilePromise(A),o.releaseFs)}async function Ugs(e,{protocol:t,fetchOptions:r,inMemory:n=!1}){let{parentLocator:a,path:o}=J4.structUtils.parseFileStyleRange(e.reference,{protocol:t}),l=uw.ppath.isAbsolute(o)?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.PortablePath.dot,localPath:uw.PortablePath.root}:await r.fetcher.fetch(a,r),A=l.localPath?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.ppath.relative(uw.PortablePath.root,l.localPath)}:l;l!==A&&l.releaseFs&&l.releaseFs();let f=A.packageFs,I=uw.ppath.join(A.prefixPath,o);return await J4.miscUtils.releaseAfterUseAsync(async()=>await J4.tgzUtils.makeArchiveFromDirectory(I,{baseFs:f,prefixPath:J4.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:n}),A.releaseFs)}async function P_l(e,{protocol:t,fetchOptions:r}){return(await Ugs(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}});var jgs=H(Qxt=>{"use strict";Object.defineProperty(Qxt,"__esModule",{value:!0});Qxt.FileFetcher=void 0;var W_l=(Pa(),vi(Va)),q4r=yn(),Kgs=zs(),$4r=uGe(),O_l=W_l.__importStar(gGe()),eJr=class{supports(t,r){return!!t.reference.startsWith($4r.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=q4r.structUtils.parseFileStyleRange(t.reference,{protocol:$4r.PROTOCOL});if(Kgs.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:Kgs.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${q4r.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:q4r.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){return O_l.makeArchiveFromLocator(t,{protocol:$4r.PROTOCOL,fetchOptions:r})}};Qxt.FileFetcher=eJr});var zgs=H(Xxt=>{"use strict";Object.defineProperty(Xxt,"__esModule",{value:!0});Xxt.FileResolver=void 0;var M_l=(Pa(),vi(Va)),Cue=yn(),H_l=yn(),Y_l=yn(),_ue=uGe(),tJr=M_l.__importStar(gGe()),Q_l=2,rJr=class{supportsDescriptor(t,r){return t.range.match(_ue.FILE_REGEXP)?!0:!!t.range.startsWith(_ue.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(_ue.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return _ue.FILE_REGEXP.test(t.range)&&(t=Cue.structUtils.makeDescriptor(t,`${_ue.PROTOCOL}${t.range}`)),Cue.structUtils.bindDescriptor(t,{locator:Cue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=tJr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await tJr.makeBufferFromLocator(Cue.structUtils.makeLocator(t,Cue.structUtils.makeRange({protocol:_ue.PROTOCOL,source:a,selector:a,params:{locator:Cue.structUtils.stringifyLocator(o)}})),{protocol:_ue.PROTOCOL,fetchOptions:n.fetchOptions}),A=Cue.hashUtils.makeHash(`${Q_l}`,l).slice(0,6);return[tJr.makeLocator(t,{parentLocator:o,path:a,hash:A,protocol:_ue.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Cue.miscUtils.releaseAfterUseAsync(async()=>await Y_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:H_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Xxt.FileResolver=rJr});var $gs=H(Uxt=>{"use strict";Object.defineProperty(Uxt,"__esModule",{value:!0});Uxt.TarballFileFetcher=void 0;var X_l=(Pa(),vi(Va)),Jxt=yn(),qgs=uGe(),J_l=X_l.__importStar(gGe()),nJr=class{supports(t,r){return qgs.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(qgs.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Jxt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Jxt.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromDisk(t,r){let n=await J_l.fetchArchiveFromLocator(t,r);return await Jxt.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:Jxt.structUtils.getIdentVendorPath(t),stripComponents:1})}};Uxt.TarballFileFetcher=nJr});var eAs=H(zxt=>{"use strict";Object.defineProperty(zxt,"__esModule",{value:!0});zxt.TarballFileResolver=void 0;var U_l=(Pa(),vi(Va)),K_l=yn(),j_l=yn(),z_l=yn(),Kxt=yn(),Pte=uGe(),jxt=U_l.__importStar(gGe()),iJr=class{supportsDescriptor(t,r){return Pte.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith(Pte.PROTOCOL)||Pte.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return Pte.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Pte.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Pte.FILE_REGEXP.test(t.range)&&(t=Kxt.structUtils.makeDescriptor(t,`${Pte.PROTOCOL}${t.range}`)),Kxt.structUtils.bindDescriptor(t,{locator:Kxt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=jxt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=jxt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:Pte.PROTOCOL}),A=await jxt.fetchArchiveFromLocator(l,n.fetchOptions),f=K_l.hashUtils.makeHash(A).slice(0,6);return[jxt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:Pte.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Kxt.miscUtils.releaseAfterUseAsync(async()=>await j_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:z_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};zxt.TarballFileResolver=iJr});var sAs=H(PO=>{"use strict";Object.defineProperty(PO,"__esModule",{value:!0});PO.TarballFileResolver=PO.TarballFileFetcher=PO.FileResolver=PO.FileFetcher=PO.fileUtils=void 0;var q_l=(Pa(),vi(Va)),tAs=jgs();Object.defineProperty(PO,"FileFetcher",{enumerable:!0,get:function(){return tAs.FileFetcher}});var rAs=zgs();Object.defineProperty(PO,"FileResolver",{enumerable:!0,get:function(){return rAs.FileResolver}});var nAs=$gs();Object.defineProperty(PO,"TarballFileFetcher",{enumerable:!0,get:function(){return nAs.TarballFileFetcher}});var iAs=eAs();Object.defineProperty(PO,"TarballFileResolver",{enumerable:!0,get:function(){return iAs.TarballFileResolver}});var $_l=q_l.__importStar(gGe());PO.fileUtils=$_l;var e0l={fetchers:[nAs.TarballFileFetcher,tAs.FileFetcher],resolvers:[iAs.TarballFileResolver,rAs.FileResolver]};PO.default=e0l});var sJr=H(K6e=>{"use strict";Object.defineProperty(K6e,"__esModule",{value:!0});K6e.isGithubUrl=n0l;K6e.parseGithubUrl=i0l;K6e.invalidGithubUrlMessage=aAs;var t0l=(Pa(),vi(Va)),r0l=t0l.__importDefault(wt("querystring")),oAs=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function n0l(e){return e?oAs.some(t=>!!e.match(t)):!1}function i0l(e){let t;for(let A of oAs)if(t=e.match(A),t)break;if(!t)throw new Error(aAs(e));let[,r,n,a,o="master"]=t,{commit:l}=r0l.default.parse(o);return o=l||o.replace(/[^:]*:/,""),{auth:r,username:n,reponame:a,treeish:o}}function aAs(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}});var lAs=H($xt=>{"use strict";Object.defineProperty($xt,"__esModule",{value:!0});$xt.GithubFetcher=void 0;var s0l=(Pa(),vi(Va)),z_e=yn(),qxt=zs(),o0l=iDe(),cAs=s0l.__importStar(sJr()),oJr=class{supports(t,r){return!!cAs.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${z_e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:z_e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await z_e.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await qxt.xfs.mktempPromise(async a=>{let o=new qxt.CwdFS(a);await z_e.tgzUtils.extractArchiveTo(n,o,{stripComponents:1});let l=o0l.gitUtils.splitRepoUrl(t.reference),A=qxt.ppath.join(a,"package.tgz");await z_e.scriptUtils.prepareExternalProject(a,A,{configuration:r.project.configuration,report:r.report,workspace:l.extra.workspace,locator:t});let f=await qxt.xfs.readFilePromise(A);return await z_e.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:z_e.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:n,username:a,reponame:o,treeish:l}=cAs.parseGithubUrl(t.reference);return`https://${n?`${n}@`:""}github.com/${a}/${o}/archive/${l}.tar.gz`}};$xt.GithubFetcher=oJr});var gAs=H(q_e=>{"use strict";Object.defineProperty(q_e,"__esModule",{value:!0});q_e.GithubFetcher=q_e.githubUtils=void 0;var a0l=(Pa(),vi(Va)),uAs=lAs();Object.defineProperty(q_e,"GithubFetcher",{enumerable:!0,get:function(){return uAs.GithubFetcher}});var c0l=a0l.__importStar(sJr());q_e.githubUtils=c0l;var l0l={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let n=new uAs.GithubFetcher;if(!n.supports(t,r))return null;try{return await n.fetch(t,r)}catch{return null}}}};q_e.default=l0l});var cJr=H(aJr=>{"use strict";Object.defineProperty(aJr,"__esModule",{value:!0});aJr.isTgzUrl=u0l;function u0l(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}});var AAs=H(eGt=>{"use strict";Object.defineProperty(eGt,"__esModule",{value:!0});eGt.TarballHttpFetcher=void 0;var g0l=(Pa(),vi(Va)),j6e=yn(),A0l=g0l.__importStar(cJr()),lJr=class{supports(t,r){return A0l.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${j6e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:j6e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await j6e.httpUtils.get(t.reference,{configuration:r.project.configuration});return await j6e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:j6e.structUtils.getIdentVendorPath(t),stripComponents:1})}};eGt.TarballHttpFetcher=lJr});var fAs=H(tGt=>{"use strict";Object.defineProperty(tGt,"__esModule",{value:!0});tGt.TarballHttpResolver=void 0;var d0l=(Pa(),vi(Va)),p0l=yn(),f0l=yn(),dAs=yn(),pAs=d0l.__importStar(cJr()),uJr=class{supportsDescriptor(t,r){return pAs.isTgzUrl(t.range)}supportsLocator(t,r){return pAs.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[dAs.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await dAs.miscUtils.releaseAfterUseAsync(async()=>await p0l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:f0l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};tGt.TarballHttpResolver=uJr});var mAs=H($_e=>{"use strict";Object.defineProperty($_e,"__esModule",{value:!0});$_e.TarballHttpResolver=$_e.TarballHttpFetcher=void 0;var IAs=AAs();Object.defineProperty($_e,"TarballHttpFetcher",{enumerable:!0,get:function(){return IAs.TarballHttpFetcher}});var hAs=fAs();Object.defineProperty($_e,"TarballHttpResolver",{enumerable:!0,get:function(){return hAs.TarballHttpResolver}});var I0l={fetchers:[IAs.TarballHttpFetcher],resolvers:[hAs.TarballHttpResolver]};$_e.default=I0l});var AJr=H(gJr=>{"use strict";Object.defineProperty(gJr,"__esModule",{value:!0});var h0l=el(),A6=yn(),e0e=yn(),Q_=zs(),yue=($c(),vi(rg)),z6e=class extends h0l.BaseCommand{constructor(){super(...arguments),this.private=yue.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=yue.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=yue.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=yue.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=yue.Option.Boolean("-2",!1,{hidden:!0}),this.yes=yue.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await A6.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new yue.UsageError("Cannot use the --install flag from within a project subdirectory");Q_.xfs.existsSync(this.context.cwd)||await Q_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=Q_.ppath.join(this.context.cwd,Q_.Filename.lockfile);Q_.xfs.existsSync(n)||await Q_.xfs.writeFilePromise(n,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await Q_.xfs.mktempPromise(async l=>{let{code:A}=await e0e.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await e0e.scriptUtils.makeScriptEnv({binFolder:l})});return A})}async initialize(){}async executeRegular(t){let r=null;try{r=(await A6.Project.find(t,this.context.cwd)).project}catch{r=null}Q_.xfs.existsSync(this.context.cwd)||await Q_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=await A6.Manifest.tryFind(this.context.cwd),a=n??new A6.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??e0e.structUtils.makeIdent(t.get("initScope"),this.name??Q_.ppath.basename(this.context.cwd)),a.packageManager=A6.YarnVersion&&A6.miscUtils.isTaggedYarnVersion(A6.YarnVersion)?`yarn@${A6.YarnVersion}`:null,(!n&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await Q_.xfs.mkdirPromise(Q_.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let l={};a.exportTo(l);let A=Q_.ppath.join(this.context.cwd,A6.Manifest.fileName);await Q_.xfs.changeFilePromise(A,`${JSON.stringify(l,null,2)} +`,{automaticNewlines:!0});let f=[A],I=Q_.ppath.join(this.context.cwd,"README.md");if(Q_.xfs.existsSync(I)||(await Q_.xfs.writeFilePromise(I,`# ${e0e.structUtils.stringifyIdent(a.name)} `),f.push(I)),!r||r.cwd===this.context.cwd){let C=Q_.ppath.join(this.context.cwd,Q_.Filename.lockfile);Q_.xfs.existsSync(C)||(await Q_.xfs.writeFilePromise(C,""),f.push(C));let E=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Whether you use PnP or not, the node_modules folder is often used to store","# build artifacts that should be gitignored","node_modules","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/caching#zero-installs","","#!.yarn/cache",".pnp.*"].map(ce=>`${ce} `).join(""),N=Q_.ppath.join(this.context.cwd,".gitignore");Q_.xfs.existsSync(N)||(await Q_.xfs.writeFilePromise(N,E),f.push(N));let F=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(ce=>`${ce} `).join(""),Q=Q_.ppath.join(this.context.cwd,".gitattributes");Q_.xfs.existsSync(Q)||(await Q_.xfs.writeFilePromise(Q,F),f.push(Q));let X={"*":{charset:"utf-8",endOfLine:"lf",indentSize:2,indentStyle:"space",insertFinalNewline:!0}};A6.miscUtils.mergeIntoTarget(X,t.get("initEditorConfig"));let ae=`root = true `;for(let[ce,fe]of Object.entries(X)){ae+=` [${ce}] `;for(let[ue,de]of Object.entries(fe)){let be=ue.replace(/[A-Z]/g,Se=>`_${Se.toLowerCase()}`);ae+=`${be} = ${de} -`}}let ne=Q_.ppath.join(this.context.cwd,".editorconfig");Q_.xfs.existsSync(ne)||(await Q_.xfs.writeFilePromise(ne,ae),f.push(ne)),await this.cli.run(["install"],{quiet:!0}),await this.initialize(),Q_.xfs.existsSync(Q_.ppath.join(this.context.cwd,".git"))||(await $_e.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await $_e.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await $_e.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};K6e.paths=[["init"]];K6e.usage=_ue.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});iJr.default=K6e});var iAs=H(oJr=>{"use strict";Object.defineProperty(oJr,"__esModule",{value:!0});var B_l=(Pa(),vi(Va)),nAs=($c(),vi(rg)),w_l=B_l.__importDefault(sJr()),qxt=class extends w_l.default{constructor(){super(...arguments),this.initializer=nAs.Option.String(),this.argv=nAs.Option.Proxy()}async initialize(){this.context.stdout.write(` -`),await this.cli.run(["dlx",this.initializer,...this.argv],{quiet:!0})}};qxt.paths=[["init"]];oJr.default=qxt});var cAs=H(e0e=>{"use strict";Object.defineProperty(e0e,"__esModule",{value:!0});e0e.InitInitializerCommand=e0e.InitCommand=void 0;var sAs=(Pa(),vi(Va)),j6e=Sn(),oAs=sAs.__importDefault(iAs());e0e.InitInitializerCommand=oAs.default;var aAs=sAs.__importDefault(sJr());e0e.InitCommand=aAs.default;var T_l={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:j6e.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:j6e.SettingsType.MAP,valueDefinition:{description:"",type:j6e.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:j6e.SettingsType.MAP,valueDefinition:{description:"",type:j6e.SettingsType.ANY}}},commands:[aAs.default,oAs.default]};e0e.default=T_l});var z6e=H(uGe=>{"use strict";Object.defineProperty(uGe,"__esModule",{value:!0});uGe.LINK_PROTOCOL=uGe.PORTAL_PROTOCOL=void 0;uGe.PORTAL_PROTOCOL="portal:";uGe.LINK_PROTOCOL="link:"});var uAs=H($xt=>{"use strict";Object.defineProperty($xt,"__esModule",{value:!0});$xt.LinkFetcher=void 0;var lAs=Sn(),ux=ro(),aJr=z6e(),cJr=class{supports(t,r){return!!t.reference.startsWith(aJr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=lAs.structUtils.parseFileStyleRange(t.reference,{protocol:aJr.LINK_PROTOCOL});if(ux.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:ux.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=lAs.structUtils.parseFileStyleRange(t.reference,{protocol:aJr.LINK_PROTOCOL}),o=ux.ppath.isAbsolute(a)?{packageFs:new ux.CwdFS(ux.PortablePath.root),prefixPath:ux.PortablePath.dot,localPath:ux.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new ux.CwdFS(ux.PortablePath.root),prefixPath:ux.ppath.relative(ux.PortablePath.root,o.localPath),localPath:ux.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=ux.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new ux.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:ux.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new ux.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:ux.PortablePath.dot,discardFromLookup:!0}}};$xt.LinkFetcher=cJr});var gAs=H(tGt=>{"use strict";Object.defineProperty(tGt,"__esModule",{value:!0});tGt.LinkResolver=void 0;var R_l=Sn(),lJr=Sn(),N_l=ro(),eGt=z6e(),uJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(eGt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(eGt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return lJr.structUtils.bindDescriptor(t,{locator:lJr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(eGt.LINK_PROTOCOL.length);return[lJr.structUtils.makeLocator(t,`${eGt.LINK_PROTOCOL}${N_l.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:R_l.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};tGt.LinkResolver=uJr});var dAs=H(rGt=>{"use strict";Object.defineProperty(rGt,"__esModule",{value:!0});rGt.PortalFetcher=void 0;var AAs=Sn(),gx=ro(),gJr=z6e(),AJr=class{supports(t,r){return!!t.reference.startsWith(gJr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=AAs.structUtils.parseFileStyleRange(t.reference,{protocol:gJr.PORTAL_PROTOCOL});if(gx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:gx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=AAs.structUtils.parseFileStyleRange(t.reference,{protocol:gJr.PORTAL_PROTOCOL}),o=gx.ppath.isAbsolute(a)?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.PortablePath.dot,localPath:gx.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.ppath.relative(gx.PortablePath.root,o.localPath),localPath:gx.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=gx.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new gx.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:gx.PortablePath.dot,localPath:f}:{packageFs:new gx.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:gx.PortablePath.dot}}};rGt.PortalFetcher=AJr});var pAs=H(sGt=>{"use strict";Object.defineProperty(sGt,"__esModule",{value:!0});sGt.PortalResolver=void 0;var D_l=Sn(),k_l=Sn(),nGt=Sn(),x_l=ro(),iGt=z6e(),dJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(iGt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(iGt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return nGt.structUtils.bindDescriptor(t,{locator:nGt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(iGt.PORTAL_PROTOCOL.length);return[nGt.structUtils.makeLocator(t,`${iGt.PORTAL_PROTOCOL}${x_l.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await nGt.miscUtils.releaseAfterUseAsync(async()=>await D_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:k_l.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};sGt.PortalResolver=dJr});var CAs=H(U4=>{"use strict";Object.defineProperty(U4,"__esModule",{value:!0});U4.LinkResolver=U4.LinkFetcher=U4.PortalResolver=U4.PortalFetcher=void 0;var fAs=uAs();Object.defineProperty(U4,"LinkFetcher",{enumerable:!0,get:function(){return fAs.LinkFetcher}});var IAs=gAs();Object.defineProperty(U4,"LinkResolver",{enumerable:!0,get:function(){return IAs.LinkResolver}});var hAs=dAs();Object.defineProperty(U4,"PortalFetcher",{enumerable:!0,get:function(){return hAs.PortalFetcher}});var mAs=pAs();Object.defineProperty(U4,"PortalResolver",{enumerable:!0,get:function(){return mAs.PortalResolver}});var G_l={fetchers:[fAs.LinkFetcher,hAs.PortalFetcher],resolvers:[IAs.LinkResolver,mAs.PortalResolver]};U4.default=G_l});var mJr=H(gGe=>{"use strict";Object.defineProperty(gGe,"__esModule",{value:!0});gGe.hoist=gGe.HoisterDependencyKind=void 0;var t0e;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(t0e||(gGe.HoisterDependencyKind=t0e={}));var Pte;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})(Pte||(Pte={}));var fJr=(e,t)=>`${e}@${t}`,_As=(e,t)=>{let r=t.indexOf("#"),n=r>=0?t.substring(r+1):t;return fJr(e,n)},K4;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(K4||(K4={}));var F_l=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||K4.NONE),n=t.check||r>=K4.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:n,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},l;o.debugLevel>=K4.PERF&&(l=Date.now());let A=M_l(e,o),f=!1,I=0;do{let C=IJr(A,[A],new Set([A.locator]),new Map,o);f=C.anotherRoundNeeded||C.isGraphChanged,o.fastLookupPossible=!1,I++}while(f);if(o.debugLevel>=K4.PERF&&console.log(`hoist time: ${Date.now()-l}ms, rounds: ${I}`),o.debugLevel>=K4.CHECK){let C=q6e(A);if(IJr(A,[A],new Set([A.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: +`}}let ne=Q_.ppath.join(this.context.cwd,".editorconfig");Q_.xfs.existsSync(ne)||(await Q_.xfs.writeFilePromise(ne,ae),f.push(ne)),await this.cli.run(["install"],{quiet:!0}),await this.initialize(),Q_.xfs.existsSync(Q_.ppath.join(this.context.cwd,".git"))||(await e0e.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await e0e.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await e0e.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};z6e.paths=[["init"]];z6e.usage=yue.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});gJr.default=z6e});var _As=H(dJr=>{"use strict";Object.defineProperty(dJr,"__esModule",{value:!0});var m0l=(Pa(),vi(Va)),CAs=($c(),vi(rg)),C0l=m0l.__importDefault(AJr()),rGt=class extends C0l.default{constructor(){super(...arguments),this.initializer=CAs.Option.String(),this.argv=CAs.Option.Proxy()}async initialize(){this.context.stdout.write(` +`),await this.cli.run(["dlx",this.initializer,...this.argv],{quiet:!0})}};rGt.paths=[["init"]];dJr.default=rGt});var SAs=H(t0e=>{"use strict";Object.defineProperty(t0e,"__esModule",{value:!0});t0e.InitInitializerCommand=t0e.InitCommand=void 0;var yAs=(Pa(),vi(Va)),q6e=yn(),bAs=yAs.__importDefault(_As());t0e.InitInitializerCommand=bAs.default;var EAs=yAs.__importDefault(AJr());t0e.InitCommand=EAs.default;var _0l={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:q6e.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:q6e.SettingsType.MAP,valueDefinition:{description:"",type:q6e.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:q6e.SettingsType.MAP,valueDefinition:{description:"",type:q6e.SettingsType.ANY}}},commands:[EAs.default,bAs.default]};t0e.default=_0l});var $6e=H(AGe=>{"use strict";Object.defineProperty(AGe,"__esModule",{value:!0});AGe.LINK_PROTOCOL=AGe.PORTAL_PROTOCOL=void 0;AGe.PORTAL_PROTOCOL="portal:";AGe.LINK_PROTOCOL="link:"});var BAs=H(nGt=>{"use strict";Object.defineProperty(nGt,"__esModule",{value:!0});nGt.LinkFetcher=void 0;var vAs=yn(),ux=zs(),pJr=$6e(),fJr=class{supports(t,r){return!!t.reference.startsWith(pJr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=vAs.structUtils.parseFileStyleRange(t.reference,{protocol:pJr.LINK_PROTOCOL});if(ux.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:ux.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=vAs.structUtils.parseFileStyleRange(t.reference,{protocol:pJr.LINK_PROTOCOL}),o=ux.ppath.isAbsolute(a)?{packageFs:new ux.CwdFS(ux.PortablePath.root),prefixPath:ux.PortablePath.dot,localPath:ux.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new ux.CwdFS(ux.PortablePath.root),prefixPath:ux.ppath.relative(ux.PortablePath.root,o.localPath),localPath:ux.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=ux.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new ux.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:ux.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new ux.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:ux.PortablePath.dot,discardFromLookup:!0}}};nGt.LinkFetcher=fJr});var wAs=H(sGt=>{"use strict";Object.defineProperty(sGt,"__esModule",{value:!0});sGt.LinkResolver=void 0;var y0l=yn(),IJr=yn(),b0l=zs(),iGt=$6e(),hJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(iGt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(iGt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return IJr.structUtils.bindDescriptor(t,{locator:IJr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(iGt.LINK_PROTOCOL.length);return[IJr.structUtils.makeLocator(t,`${iGt.LINK_PROTOCOL}${b0l.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:y0l.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};sGt.LinkResolver=hJr});var RAs=H(oGt=>{"use strict";Object.defineProperty(oGt,"__esModule",{value:!0});oGt.PortalFetcher=void 0;var TAs=yn(),gx=zs(),mJr=$6e(),CJr=class{supports(t,r){return!!t.reference.startsWith(mJr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=TAs.structUtils.parseFileStyleRange(t.reference,{protocol:mJr.PORTAL_PROTOCOL});if(gx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:gx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=TAs.structUtils.parseFileStyleRange(t.reference,{protocol:mJr.PORTAL_PROTOCOL}),o=gx.ppath.isAbsolute(a)?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.PortablePath.dot,localPath:gx.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.ppath.relative(gx.PortablePath.root,o.localPath),localPath:gx.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=gx.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new gx.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:gx.PortablePath.dot,localPath:f}:{packageFs:new gx.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:gx.PortablePath.dot}}};oGt.PortalFetcher=CJr});var NAs=H(lGt=>{"use strict";Object.defineProperty(lGt,"__esModule",{value:!0});lGt.PortalResolver=void 0;var E0l=yn(),S0l=yn(),aGt=yn(),v0l=zs(),cGt=$6e(),_Jr=class{supportsDescriptor(t,r){return!!t.range.startsWith(cGt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(cGt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return aGt.structUtils.bindDescriptor(t,{locator:aGt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(cGt.PORTAL_PROTOCOL.length);return[aGt.structUtils.makeLocator(t,`${cGt.PORTAL_PROTOCOL}${v0l.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await aGt.miscUtils.releaseAfterUseAsync(async()=>await E0l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:S0l.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};lGt.PortalResolver=_Jr});var FAs=H(U4=>{"use strict";Object.defineProperty(U4,"__esModule",{value:!0});U4.LinkResolver=U4.LinkFetcher=U4.PortalResolver=U4.PortalFetcher=void 0;var DAs=BAs();Object.defineProperty(U4,"LinkFetcher",{enumerable:!0,get:function(){return DAs.LinkFetcher}});var kAs=wAs();Object.defineProperty(U4,"LinkResolver",{enumerable:!0,get:function(){return kAs.LinkResolver}});var xAs=RAs();Object.defineProperty(U4,"PortalFetcher",{enumerable:!0,get:function(){return xAs.PortalFetcher}});var GAs=NAs();Object.defineProperty(U4,"PortalResolver",{enumerable:!0,get:function(){return GAs.PortalResolver}});var B0l={fetchers:[DAs.LinkFetcher,xAs.PortalFetcher],resolvers:[kAs.LinkResolver,GAs.PortalResolver]};U4.default=B0l});var vJr=H(dGe=>{"use strict";Object.defineProperty(dGe,"__esModule",{value:!0});dGe.hoist=dGe.HoisterDependencyKind=void 0;var r0e;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(r0e||(dGe.HoisterDependencyKind=r0e={}));var Wte;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})(Wte||(Wte={}));var bJr=(e,t)=>`${e}@${t}`,ZAs=(e,t)=>{let r=t.indexOf("#"),n=r>=0?t.substring(r+1):t;return bJr(e,n)},K4;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(K4||(K4={}));var w0l=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||K4.NONE),n=t.check||r>=K4.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:n,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},l;o.debugLevel>=K4.PERF&&(l=Date.now());let A=G0l(e,o),f=!1,I=0;do{let C=EJr(A,[A],new Set([A.locator]),new Map,o);f=C.anotherRoundNeeded||C.isGraphChanged,o.fastLookupPossible=!1,I++}while(f);if(o.debugLevel>=K4.PERF&&console.log(`hoist time: ${Date.now()-l}ms, rounds: ${I}`),o.debugLevel>=K4.CHECK){let C=e7e(A);if(EJr(A,[A],new Set([A.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: ${C}, next tree: -${q6e(A)}`);let E=EAs(A);if(E)throw new Error(`${E}, after hoisting finished: -${q6e(A)}`)}return o.debugLevel>=K4.REASONS&&console.log(q6e(A)),H_l(A)};gGe.hoist=F_l;var Z_l=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=o=>{if(!n.has(o)){n.add(o);for(let l of o.hoistedDependencies.values())r.set(l.name,l);for(let l of o.dependencies.values())o.peerNames.has(l.name)||a(l)}};return a(t),r},L_l=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=new Set,o=(l,A)=>{if(n.has(l))return;n.add(l);for(let I of l.hoistedDependencies.values())if(!A.has(I.name)){let C;for(let b of e)C=b.dependencies.get(I.name),C&&r.set(C.name,C)}let f=new Set;for(let I of l.dependencies.values())f.add(I.name);for(let I of l.dependencies.values())l.peerNames.has(I.name)||o(I,f)};return o(t,a),r},yAs=(e,t)=>{if(t.decoupled)return t;let{name:r,references:n,ident:a,locator:o,dependencies:l,originalDependencies:A,hoistedDependencies:f,peerNames:I,reasons:C,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:B,hoistedTo:F}=t,Q={name:r,references:new Set(n),ident:a,locator:o,dependencies:new Map(l),originalDependencies:new Map(A),hoistedDependencies:new Map(f),peerNames:new Set(I),reasons:new Map(C),decoupled:!0,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:new Map(B),hoistedTo:new Map(F)},X=Q.dependencies.get(r);return X&&X.ident==Q.ident&&Q.dependencies.set(r,Q),e.dependencies.set(Q.name,Q),Q},V_l=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let n=Array.from(t.keys());n.sort((a,o)=>{let l=t.get(a),A=t.get(o);if(A.hoistPriority!==l.hoistPriority)return A.hoistPriority-l.hoistPriority;{let f=l.dependents.size+l.peerDependents.size;return A.dependents.size+A.peerDependents.size-f}});for(let a of n){let o=a.substring(0,a.indexOf("@",1)),l=a.substring(o.length+1);if(!e.peerNames.has(o)){let A=r.get(o);A||(A=[],r.set(o,A)),A.indexOf(l)<0&&A.push(l)}}return r},pJr=e=>{let t=new Set,r=(n,a=new Set)=>{if(!a.has(n)){a.add(n);for(let o of n.peerNames)if(!e.peerNames.has(o)){let l=e.dependencies.get(o);l&&!t.has(l)&&r(l,a)}t.add(n)}};for(let n of e.dependencies.values())e.peerNames.has(n.name)||r(n);return t},IJr=(e,t,r,n,a,o=new Set)=>{let l=t[t.length-1];if(o.has(l))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(l);let A=Y_l(l),f=V_l(l,A),I=e==l?new Map:a.fastLookupPossible?Z_l(t):L_l(t),C,b=!1,E=!1,N=new Map(Array.from(f.entries()).map(([F,Q])=>[F,Q[0]])),B=new Map;do{let F=O_l(e,t,r,I,N,f,n,B,a);F.isGraphChanged&&(E=!0),F.anotherRoundNeeded&&(b=!0),C=!1;for(let[Q,X]of f)X.length>1&&!l.dependencies.has(Q)&&(N.delete(Q),X.shift(),N.set(Q,X[0]),C=!0)}while(C);for(let F of l.dependencies.values())if(!l.peerNames.has(F.name)&&!r.has(F.locator)){r.add(F.locator);let Q=IJr(e,[...t,F],r,B,a);Q.isGraphChanged&&(E=!0),Q.anotherRoundNeeded&&(b=!0),r.delete(F.locator)}return{anotherRoundNeeded:b,isGraphChanged:E}},P_l=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},W_l=(e,t,r,n,a,o,l,A,{outputReason:f,fastLookupPossible:I})=>{let C,b=null,E=new Set;f&&(C=`${Array.from(t).map(Q=>Ax(Q)).join("\u2192")}`);let N=r[r.length-1],F=!(n.ident===N.ident);if(f&&!F&&(b="- self-reference"),F&&(F=n.dependencyKind!==t0e.WORKSPACE,f&&!F&&(b="- workspace")),F&&n.dependencyKind===t0e.EXTERNAL_SOFT_LINK&&(F=!P_l(n),f&&!F&&(b="- external soft link with unhoisted dependencies")),F&&(F=!e.peerNames.has(n.name),f&&!F&&(b=`- cannot shadow peer: ${Ax(e.originalDependencies.get(n.name).locator)} at ${C}`)),F){let Q=!1,X=a.get(n.name);if(Q=!X||X.ident===n.ident,f&&!Q&&(b=`- filled by: ${Ax(X.locator)} at ${C}`),Q)for(let ae=r.length-1;ae>=1;ae--){let ce=r[ae].dependencies.get(n.name);if(ce&&ce.ident!==n.ident){Q=!1;let fe=A.get(N);fe||(fe=new Set,A.set(N,fe)),fe.add(n.name),f&&(b=`- filled by ${Ax(ce.locator)} at ${r.slice(0,ae).map(ue=>Ax(ue.locator)).join("\u2192")}`);break}}F=Q}if(F&&(F=o.get(n.name)===n.ident,f&&!F&&(b=`- filled by: ${Ax(l.get(n.name)[0])} at ${C}`)),F){let Q=!0,X=new Set(n.peerNames);for(let ae=r.length-1;ae>=1;ae--){let ne=r[ae];for(let ce of X){if(ne.peerNames.has(ce)&&ne.originalDependencies.has(ce))continue;let fe=ne.dependencies.get(ce);fe&&e.dependencies.get(ce)!==fe&&(ae===r.length-1?E.add(fe):(E=null,Q=!1,f&&(b=`- peer dependency ${Ax(fe.locator)} from parent ${Ax(ne.locator)} was not hoisted to ${C}`))),X.delete(ce)}if(!Q)break}F=Q}if(F&&!I)for(let Q of n.hoistedDependencies.values()){let X=a.get(Q.name)||e.dependencies.get(Q.name);if(!X||Q.ident!==X.ident){F=!1,f&&(b=`- previously hoisted dependency mismatch, needed: ${Ax(Q.locator)}, available: ${Ax(X?.locator)}`);break}}return E!==null&&E.size>0?{isHoistable:Pte.DEPENDS,dependsOn:E,reason:b}:{isHoistable:F?Pte.YES:Pte.NO,reason:b}},oGt=e=>`${e.name}@${e.locator}`,O_l=(e,t,r,n,a,o,l,A,f)=>{let I=t[t.length-1],C=new Set,b=!1,E=!1,N=(X,ae,ne,ce,fe)=>{if(C.has(ce))return;let ue=[...ae,oGt(ce)],de=[...ne,oGt(ce)],be=new Map,Se=new Map;for(let Me of pJr(ce)){let je=W_l(I,r,[I,...X,ce],Me,n,a,o,A,{outputReason:f.debugLevel>=K4.REASONS,fastLookupPossible:f.fastLookupPossible});if(Se.set(Me,je),je.isHoistable===Pte.DEPENDS)for(let St of je.dependsOn){let At=be.get(St.name)||new Set;At.add(Me.name),be.set(St.name,At)}}let De=new Set,k=(Me,je,St)=>{if(!De.has(Me)){De.add(Me),Se.set(Me,{isHoistable:Pte.NO,reason:St});for(let At of be.get(Me.name)||[])k(ce.dependencies.get(At),je,f.debugLevel>=K4.REASONS?`- peer dependency ${Ax(Me.locator)} from parent ${Ax(ce.locator)} was not hoisted`:"")}};for(let[Me,je]of Se)je.isHoistable===Pte.NO&&k(Me,je,je.reason);let et=!1;for(let Me of Se.keys())if(!De.has(Me)){E=!0;let je=l.get(ce);je&&je.has(Me.name)&&(b=!0),et=!0,ce.dependencies.delete(Me.name),ce.hoistedDependencies.set(Me.name,Me),ce.reasons.delete(Me.name);let St=I.dependencies.get(Me.name);if(f.debugLevel>=K4.REASONS){let At=Array.from(ae).concat([ce.locator]).map(Tr=>Ax(Tr)).join("\u2192"),Yt=I.hoistedFrom.get(Me.name);Yt||(Yt=[],I.hoistedFrom.set(Me.name,Yt)),Yt.push(At),ce.hoistedTo.set(Me.name,Array.from(t).map(Tr=>Ax(Tr.locator)).join("\u2192"))}if(!St)I.ident!==Me.ident&&(I.dependencies.set(Me.name,Me),fe.add(Me));else for(let At of Me.references)St.references.add(At)}if(ce.dependencyKind===t0e.EXTERNAL_SOFT_LINK&&et&&(b=!0),f.check){let Me=EAs(e);if(Me)throw new Error(`${Me}, after hoisting dependencies of ${[I,...X,ce].map(je=>Ax(je.locator)).join("\u2192")}: -${q6e(e)}`)}let ct=pJr(ce);for(let Me of ct)if(De.has(Me)){let je=Se.get(Me);if((a.get(Me.name)===Me.ident||!ce.reasons.has(Me.name))&&je.isHoistable!==Pte.YES&&ce.reasons.set(Me.name,je.reason),!Me.isHoistBorder&&de.indexOf(oGt(Me))<0){C.add(ce);let At=yAs(ce,Me);N([...X,ce],ue,de,At,F),C.delete(ce)}}},B,F=new Set(pJr(I)),Q=Array.from(t).map(X=>oGt(X));do{B=F,F=new Set;for(let X of B){if(X.locator===I.locator||X.isHoistBorder)continue;let ae=yAs(I,X);N([],Array.from(r),Q,ae,F)}}while(F.size>0);return{anotherRoundNeeded:b,isGraphChanged:E}},EAs=e=>{let t=[],r=new Set,n=new Set,a=(o,l,A)=>{if(r.has(o)||(r.add(o),n.has(o)))return;let f=new Map(l);for(let I of o.dependencies.values())o.peerNames.has(I.name)||f.set(I.name,I);for(let I of o.originalDependencies.values()){let C=f.get(I.name),b=()=>`${Array.from(n).concat([o]).map(E=>Ax(E.locator)).join("\u2192")}`;if(o.peerNames.has(I.name)){let E=l.get(I.name);(E!==C||!E||E.ident!==I.ident)&&t.push(`${b()} - broken peer promise: expected ${I.ident} but found ${E&&E.ident}`)}else{let E=A.hoistedFrom.get(o.name),N=o.hoistedTo.get(I.name),B=`${E?` hoisted from ${E.join(", ")}`:""}`,F=`${N?` hoisted to ${N}`:""}`,Q=`${b()}${B}`;C?C.ident!==I.ident&&t.push(`${Q} - broken require promise for ${I.name}${F}: expected ${I.ident}, but found: ${C.ident}`):t.push(`${Q} - broken require promise: no required dependency ${I.name}${F} found`)}}n.add(o);for(let I of o.dependencies.values())o.peerNames.has(I.name)||a(I,f,o);n.delete(o)};return a(e,e.dependencies,e),t.join(` -`)},M_l=(e,t)=>{let{identName:r,name:n,reference:a,peerNames:o}=e,l={name:n,references:new Set([a]),locator:fJr(r,a),ident:_As(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:t0e.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},A=new Map([[e,l]]),f=(I,C)=>{let b=A.get(I),E=!!b;if(!b){let{name:N,identName:B,reference:F,peerNames:Q,hoistPriority:X,dependencyKind:ae}=I,ne=t.hoistingLimits.get(C.locator);b={name:N,references:new Set([F]),locator:fJr(B,F),ident:_As(B,F),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(Q),reasons:new Map,decoupled:!0,isHoistBorder:ne?ne.has(N):!1,hoistPriority:X||0,dependencyKind:ae||t0e.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},A.set(I,b)}if(C.dependencies.set(I.name,b),C.originalDependencies.set(I.name,b),E){let N=new Set,B=F=>{if(!N.has(F)){N.add(F),F.decoupled=!1;for(let Q of F.dependencies.values())F.peerNames.has(Q.name)||B(Q)}};B(b)}else for(let N of I.dependencies)f(N,b)};for(let I of e.dependencies)f(I,l);return l},hJr=e=>e.substring(0,e.indexOf("@",1)),H_l=e=>{let t={name:e.name,identName:hJr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),n=(a,o,l)=>{let A=r.has(a),f;if(o===a)f=l;else{let{name:I,references:C,locator:b}=a;f={name:I,identName:hJr(b),references:C,dependencies:new Set}}if(l.dependencies.add(f),!A){r.add(a);for(let I of a.dependencies.values())a.peerNames.has(I.name)||n(I,a,f);r.delete(a)}};for(let a of e.dependencies.values())n(a,e,t);return t},Y_l=e=>{let t=new Map,r=new Set([e]),n=l=>`${l.name}@${l.ident}`,a=l=>{let A=n(l),f=t.get(A);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(A,f)),f},o=(l,A)=>{let f=!!r.has(A);if(a(A).dependents.add(l.ident),!f){r.add(A);for(let C of A.dependencies.values()){let b=a(C);b.hoistPriority=Math.max(b.hoistPriority,C.hoistPriority),A.peerNames.has(C.name)?b.peerDependents.add(A.ident):o(A,C)}}};for(let l of e.dependencies.values())e.peerNames.has(l.name)||o(e,l);return t},Ax=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let n=e.substring(t+1);if(n==="workspace:.")return".";if(n){let a=(n.indexOf("#")>0?n.split("#")[1]:n).replace("npm:","");return n.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},bAs=5e4,q6e=e=>{let t=0,r=(a,o,l="")=>{if(t>bAs||o.has(a))return"";t++;let A=Array.from(a.dependencies.values()).sort((I,C)=>I.name===C.name?0:I.name>C.name?1:-1),f="";o.add(a);for(let I=0;I":"")+(E!==C.name?`a:${C.name}:`:"")+Ax(C.locator)+(b?` ${b}`:"")} -`,f+=r(C,o,`${l}${IbAs?` +${e7e(A)}`);let E=PAs(A);if(E)throw new Error(`${E}, after hoisting finished: +${e7e(A)}`)}return o.debugLevel>=K4.REASONS&&console.log(e7e(A)),F0l(A)};dGe.hoist=w0l;var T0l=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=o=>{if(!n.has(o)){n.add(o);for(let l of o.hoistedDependencies.values())r.set(l.name,l);for(let l of o.dependencies.values())o.peerNames.has(l.name)||a(l)}};return a(t),r},R0l=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=new Set,o=(l,A)=>{if(n.has(l))return;n.add(l);for(let I of l.hoistedDependencies.values())if(!A.has(I.name)){let C;for(let b of e)C=b.dependencies.get(I.name),C&&r.set(C.name,C)}let f=new Set;for(let I of l.dependencies.values())f.add(I.name);for(let I of l.dependencies.values())l.peerNames.has(I.name)||o(I,f)};return o(t,a),r},LAs=(e,t)=>{if(t.decoupled)return t;let{name:r,references:n,ident:a,locator:o,dependencies:l,originalDependencies:A,hoistedDependencies:f,peerNames:I,reasons:C,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:B,hoistedTo:F}=t,Q={name:r,references:new Set(n),ident:a,locator:o,dependencies:new Map(l),originalDependencies:new Map(A),hoistedDependencies:new Map(f),peerNames:new Set(I),reasons:new Map(C),decoupled:!0,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:new Map(B),hoistedTo:new Map(F)},X=Q.dependencies.get(r);return X&&X.ident==Q.ident&&Q.dependencies.set(r,Q),e.dependencies.set(Q.name,Q),Q},N0l=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let n=Array.from(t.keys());n.sort((a,o)=>{let l=t.get(a),A=t.get(o);if(A.hoistPriority!==l.hoistPriority)return A.hoistPriority-l.hoistPriority;{let f=l.dependents.size+l.peerDependents.size;return A.dependents.size+A.peerDependents.size-f}});for(let a of n){let o=a.substring(0,a.indexOf("@",1)),l=a.substring(o.length+1);if(!e.peerNames.has(o)){let A=r.get(o);A||(A=[],r.set(o,A)),A.indexOf(l)<0&&A.push(l)}}return r},yJr=e=>{let t=new Set,r=(n,a=new Set)=>{if(!a.has(n)){a.add(n);for(let o of n.peerNames)if(!e.peerNames.has(o)){let l=e.dependencies.get(o);l&&!t.has(l)&&r(l,a)}t.add(n)}};for(let n of e.dependencies.values())e.peerNames.has(n.name)||r(n);return t},EJr=(e,t,r,n,a,o=new Set)=>{let l=t[t.length-1];if(o.has(l))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(l);let A=Z0l(l),f=N0l(l,A),I=e==l?new Map:a.fastLookupPossible?T0l(t):R0l(t),C,b=!1,E=!1,N=new Map(Array.from(f.entries()).map(([F,Q])=>[F,Q[0]])),B=new Map;do{let F=x0l(e,t,r,I,N,f,n,B,a);F.isGraphChanged&&(E=!0),F.anotherRoundNeeded&&(b=!0),C=!1;for(let[Q,X]of f)X.length>1&&!l.dependencies.has(Q)&&(N.delete(Q),X.shift(),N.set(Q,X[0]),C=!0)}while(C);for(let F of l.dependencies.values())if(!l.peerNames.has(F.name)&&!r.has(F.locator)){r.add(F.locator);let Q=EJr(e,[...t,F],r,B,a);Q.isGraphChanged&&(E=!0),Q.anotherRoundNeeded&&(b=!0),r.delete(F.locator)}return{anotherRoundNeeded:b,isGraphChanged:E}},D0l=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},k0l=(e,t,r,n,a,o,l,A,{outputReason:f,fastLookupPossible:I})=>{let C,b=null,E=new Set;f&&(C=`${Array.from(t).map(Q=>Ax(Q)).join("\u2192")}`);let N=r[r.length-1],F=!(n.ident===N.ident);if(f&&!F&&(b="- self-reference"),F&&(F=n.dependencyKind!==r0e.WORKSPACE,f&&!F&&(b="- workspace")),F&&n.dependencyKind===r0e.EXTERNAL_SOFT_LINK&&(F=!D0l(n),f&&!F&&(b="- external soft link with unhoisted dependencies")),F&&(F=!e.peerNames.has(n.name),f&&!F&&(b=`- cannot shadow peer: ${Ax(e.originalDependencies.get(n.name).locator)} at ${C}`)),F){let Q=!1,X=a.get(n.name);if(Q=!X||X.ident===n.ident,f&&!Q&&(b=`- filled by: ${Ax(X.locator)} at ${C}`),Q)for(let ae=r.length-1;ae>=1;ae--){let ce=r[ae].dependencies.get(n.name);if(ce&&ce.ident!==n.ident){Q=!1;let fe=A.get(N);fe||(fe=new Set,A.set(N,fe)),fe.add(n.name),f&&(b=`- filled by ${Ax(ce.locator)} at ${r.slice(0,ae).map(ue=>Ax(ue.locator)).join("\u2192")}`);break}}F=Q}if(F&&(F=o.get(n.name)===n.ident,f&&!F&&(b=`- filled by: ${Ax(l.get(n.name)[0])} at ${C}`)),F){let Q=!0,X=new Set(n.peerNames);for(let ae=r.length-1;ae>=1;ae--){let ne=r[ae];for(let ce of X){if(ne.peerNames.has(ce)&&ne.originalDependencies.has(ce))continue;let fe=ne.dependencies.get(ce);fe&&e.dependencies.get(ce)!==fe&&(ae===r.length-1?E.add(fe):(E=null,Q=!1,f&&(b=`- peer dependency ${Ax(fe.locator)} from parent ${Ax(ne.locator)} was not hoisted to ${C}`))),X.delete(ce)}if(!Q)break}F=Q}if(F&&!I)for(let Q of n.hoistedDependencies.values()){let X=a.get(Q.name)||e.dependencies.get(Q.name);if(!X||Q.ident!==X.ident){F=!1,f&&(b=`- previously hoisted dependency mismatch, needed: ${Ax(Q.locator)}, available: ${Ax(X?.locator)}`);break}}return E!==null&&E.size>0?{isHoistable:Wte.DEPENDS,dependsOn:E,reason:b}:{isHoistable:F?Wte.YES:Wte.NO,reason:b}},uGt=e=>`${e.name}@${e.locator}`,x0l=(e,t,r,n,a,o,l,A,f)=>{let I=t[t.length-1],C=new Set,b=!1,E=!1,N=(X,ae,ne,ce,fe)=>{if(C.has(ce))return;let ue=[...ae,uGt(ce)],de=[...ne,uGt(ce)],be=new Map,Se=new Map;for(let Me of yJr(ce)){let je=k0l(I,r,[I,...X,ce],Me,n,a,o,A,{outputReason:f.debugLevel>=K4.REASONS,fastLookupPossible:f.fastLookupPossible});if(Se.set(Me,je),je.isHoistable===Wte.DEPENDS)for(let St of je.dependsOn){let At=be.get(St.name)||new Set;At.add(Me.name),be.set(St.name,At)}}let De=new Set,k=(Me,je,St)=>{if(!De.has(Me)){De.add(Me),Se.set(Me,{isHoistable:Wte.NO,reason:St});for(let At of be.get(Me.name)||[])k(ce.dependencies.get(At),je,f.debugLevel>=K4.REASONS?`- peer dependency ${Ax(Me.locator)} from parent ${Ax(ce.locator)} was not hoisted`:"")}};for(let[Me,je]of Se)je.isHoistable===Wte.NO&&k(Me,je,je.reason);let et=!1;for(let Me of Se.keys())if(!De.has(Me)){E=!0;let je=l.get(ce);je&&je.has(Me.name)&&(b=!0),et=!0,ce.dependencies.delete(Me.name),ce.hoistedDependencies.set(Me.name,Me),ce.reasons.delete(Me.name);let St=I.dependencies.get(Me.name);if(f.debugLevel>=K4.REASONS){let At=Array.from(ae).concat([ce.locator]).map(Tr=>Ax(Tr)).join("\u2192"),Yt=I.hoistedFrom.get(Me.name);Yt||(Yt=[],I.hoistedFrom.set(Me.name,Yt)),Yt.push(At),ce.hoistedTo.set(Me.name,Array.from(t).map(Tr=>Ax(Tr.locator)).join("\u2192"))}if(!St)I.ident!==Me.ident&&(I.dependencies.set(Me.name,Me),fe.add(Me));else for(let At of Me.references)St.references.add(At)}if(ce.dependencyKind===r0e.EXTERNAL_SOFT_LINK&&et&&(b=!0),f.check){let Me=PAs(e);if(Me)throw new Error(`${Me}, after hoisting dependencies of ${[I,...X,ce].map(je=>Ax(je.locator)).join("\u2192")}: +${e7e(e)}`)}let ct=yJr(ce);for(let Me of ct)if(De.has(Me)){let je=Se.get(Me);if((a.get(Me.name)===Me.ident||!ce.reasons.has(Me.name))&&je.isHoistable!==Wte.YES&&ce.reasons.set(Me.name,je.reason),!Me.isHoistBorder&&de.indexOf(uGt(Me))<0){C.add(ce);let At=LAs(ce,Me);N([...X,ce],ue,de,At,F),C.delete(ce)}}},B,F=new Set(yJr(I)),Q=Array.from(t).map(X=>uGt(X));do{B=F,F=new Set;for(let X of B){if(X.locator===I.locator||X.isHoistBorder)continue;let ae=LAs(I,X);N([],Array.from(r),Q,ae,F)}}while(F.size>0);return{anotherRoundNeeded:b,isGraphChanged:E}},PAs=e=>{let t=[],r=new Set,n=new Set,a=(o,l,A)=>{if(r.has(o)||(r.add(o),n.has(o)))return;let f=new Map(l);for(let I of o.dependencies.values())o.peerNames.has(I.name)||f.set(I.name,I);for(let I of o.originalDependencies.values()){let C=f.get(I.name),b=()=>`${Array.from(n).concat([o]).map(E=>Ax(E.locator)).join("\u2192")}`;if(o.peerNames.has(I.name)){let E=l.get(I.name);(E!==C||!E||E.ident!==I.ident)&&t.push(`${b()} - broken peer promise: expected ${I.ident} but found ${E&&E.ident}`)}else{let E=A.hoistedFrom.get(o.name),N=o.hoistedTo.get(I.name),B=`${E?` hoisted from ${E.join(", ")}`:""}`,F=`${N?` hoisted to ${N}`:""}`,Q=`${b()}${B}`;C?C.ident!==I.ident&&t.push(`${Q} - broken require promise for ${I.name}${F}: expected ${I.ident}, but found: ${C.ident}`):t.push(`${Q} - broken require promise: no required dependency ${I.name}${F} found`)}}n.add(o);for(let I of o.dependencies.values())o.peerNames.has(I.name)||a(I,f,o);n.delete(o)};return a(e,e.dependencies,e),t.join(` +`)},G0l=(e,t)=>{let{identName:r,name:n,reference:a,peerNames:o}=e,l={name:n,references:new Set([a]),locator:bJr(r,a),ident:ZAs(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:r0e.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},A=new Map([[e,l]]),f=(I,C)=>{let b=A.get(I),E=!!b;if(!b){let{name:N,identName:B,reference:F,peerNames:Q,hoistPriority:X,dependencyKind:ae}=I,ne=t.hoistingLimits.get(C.locator);b={name:N,references:new Set([F]),locator:bJr(B,F),ident:ZAs(B,F),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(Q),reasons:new Map,decoupled:!0,isHoistBorder:ne?ne.has(N):!1,hoistPriority:X||0,dependencyKind:ae||r0e.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},A.set(I,b)}if(C.dependencies.set(I.name,b),C.originalDependencies.set(I.name,b),E){let N=new Set,B=F=>{if(!N.has(F)){N.add(F),F.decoupled=!1;for(let Q of F.dependencies.values())F.peerNames.has(Q.name)||B(Q)}};B(b)}else for(let N of I.dependencies)f(N,b)};for(let I of e.dependencies)f(I,l);return l},SJr=e=>e.substring(0,e.indexOf("@",1)),F0l=e=>{let t={name:e.name,identName:SJr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),n=(a,o,l)=>{let A=r.has(a),f;if(o===a)f=l;else{let{name:I,references:C,locator:b}=a;f={name:I,identName:SJr(b),references:C,dependencies:new Set}}if(l.dependencies.add(f),!A){r.add(a);for(let I of a.dependencies.values())a.peerNames.has(I.name)||n(I,a,f);r.delete(a)}};for(let a of e.dependencies.values())n(a,e,t);return t},Z0l=e=>{let t=new Map,r=new Set([e]),n=l=>`${l.name}@${l.ident}`,a=l=>{let A=n(l),f=t.get(A);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(A,f)),f},o=(l,A)=>{let f=!!r.has(A);if(a(A).dependents.add(l.ident),!f){r.add(A);for(let C of A.dependencies.values()){let b=a(C);b.hoistPriority=Math.max(b.hoistPriority,C.hoistPriority),A.peerNames.has(C.name)?b.peerDependents.add(A.ident):o(A,C)}}};for(let l of e.dependencies.values())e.peerNames.has(l.name)||o(e,l);return t},Ax=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let n=e.substring(t+1);if(n==="workspace:.")return".";if(n){let a=(n.indexOf("#")>0?n.split("#")[1]:n).replace("npm:","");return n.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},VAs=5e4,e7e=e=>{let t=0,r=(a,o,l="")=>{if(t>VAs||o.has(a))return"";t++;let A=Array.from(a.dependencies.values()).sort((I,C)=>I.name===C.name?0:I.name>C.name?1:-1),f="";o.add(a);for(let I=0;I":"")+(E!==C.name?`a:${C.name}:`:"")+Ax(C.locator)+(b?` ${b}`:"")} +`,f+=r(C,o,`${l}${IVAs?` Tree is too large, part of the tree has been dunped -`:"")}});var cGt=H(NH=>{"use strict";Object.defineProperty(NH,"__esModule",{value:!0});NH.buildLocatorMap=NH.buildNodeModulesTree=NH.getArchivePath=NH.NodeModulesHoistingLimits=NH.LinkType=void 0;var X_=Sn(),HR=ro(),SAs=ro(),AGe=mJr(),j4;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(j4||(NH.LinkType=j4={}));var $6e;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})($6e||(NH.NodeModulesHoistingLimits=$6e={}));var aGt="node_modules",yue="$wsroot$",Q_l=e=>e.indexOf(`.zip/${aGt}/`)>=0?HR.npath.toPortablePath(e.split(`/${aGt}/`)[0]):null;NH.getArchivePath=Q_l;var X_l=(e,t)=>{let{packageTree:r,hoistingLimits:n,errors:a,preserveSymlinksRequired:o}=K_l(e,t),l=null;if(a.length===0){let A=(0,AGe.hoist)(r,{hoistingLimits:n});l=z_l(e,A,t)}return{tree:l,errors:a,preserveSymlinksRequired:o}};NH.buildNodeModulesTree=X_l;var d6=e=>`${e.name}@${e.reference}`,J_l=e=>{let t=new Map;for(let[r,n]of e.entries())if(!n.dirList){let a=t.get(n.locator);a||(a={target:n.target,linkType:n.linkType,locations:[],aliases:n.aliases},t.set(n.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((n,a)=>{let o=n.split(HR.ppath.delimiter).length,l=a.split(HR.ppath.delimiter).length;return a===n?0:o!==l?l-o:a>n?1:-1});return t};NH.buildLocatorMap=J_l;var vAs=(e,t)=>{let r=X_.structUtils.isVirtualLocator(e)?X_.structUtils.devirtualizeLocator(e):e,n=X_.structUtils.isVirtualLocator(t)?X_.structUtils.devirtualizeLocator(t):t;return X_.structUtils.areLocatorsEqual(r,n)},CJr=(e,t,r,n)=>{if(e.linkType!==j4.SOFT)return!1;let a=HR.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return HR.ppath.contains(n,a)===null},U_l=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let n=HR.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},l=e.getDependencyTreeRoots(),A=new Map,f=new Set,I=(E,N)=>{let B=d6(E);if(f.has(B))return;f.add(B);let F=e.getPackageInformation(E);if(F){let Q=N?d6(N):"";if(d6(E)!==Q&&F.linkType===j4.SOFT&&!E.reference.startsWith("link:")&&!CJr(F,E,e,n)){let X=BAs(F,E,e);(!A.get(X)||E.reference.startsWith("workspace:"))&&A.set(X,E)}for(let[X,ae]of F.packageDependencies)ae!==null&&(F.packagePeers.has(X)||I(e.getLocator(X,ae),E))}};for(let E of l)I(E,null);let C=n.split(HR.ppath.sep);for(let E of A.values()){let N=e.getPackageInformation(E),F=HR.npath.toPortablePath(N.packageLocation.slice(0,-1)).split(HR.ppath.sep).slice(C.length),Q=o;for(let X of F){let ae=Q.children.get(X);ae||(ae={children:new Map},Q.children.set(X,ae)),Q=ae}Q.workspaceLocator=E}let b=(E,N)=>{if(E.workspaceLocator){let B=d6(N),F=a.get(B);F||(F=new Set,a.set(B,F)),F.add(E.workspaceLocator)}for(let B of E.children.values())b(B,E.workspaceLocator||N)};for(let E of o.children.values())b(E,o.workspaceLocator);return a},K_l=(e,t)=>{let r=[],n=!1,a=new Map,o=U_l(e),l=e.getPackageInformation(e.topLevel);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let A=e.findPackageLocator(l.packageLocation);if(A===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=HR.npath.toPortablePath(l.packageLocation.slice(0,-1)),I={name:A.name,identName:A.name,reference:A.reference,peerNames:l.packagePeers,dependencies:new Set,dependencyKind:AGe.HoisterDependencyKind.WORKSPACE},C=new Map,b=(N,B)=>`${d6(B)}:${N}`,E=(N,B,F,Q,X,ae,ne,ce)=>{let fe=b(N,F),ue=C.get(fe),de=!!ue;!de&&F.name===A.name&&F.reference===A.reference&&(ue=I,C.set(fe,I));let be=CJr(B,F,e,f);if(!ue){let Me=AGe.HoisterDependencyKind.REGULAR;be?Me=AGe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:B.linkType===j4.SOFT&&F.name.endsWith(yue)&&(Me=AGe.HoisterDependencyKind.WORKSPACE),ue={name:N,identName:F.name,reference:F.reference,dependencies:new Set,peerNames:Me===AGe.HoisterDependencyKind.WORKSPACE?new Set:B.packagePeers,dependencyKind:Me},C.set(fe,ue)}let Se;if(be?Se=2:X.linkType===j4.SOFT?Se=1:Se=0,ue.hoistPriority=Math.max(ue.hoistPriority||0,Se),ce&&!be){let Me=d6({name:Q.identName,reference:Q.reference}),je=a.get(Me)||new Set;a.set(Me,je),je.add(ue.name)}let De=new Map(B.packageDependencies);if(t.project){let Me=t.project.workspacesByCwd.get(HR.npath.toPortablePath(B.packageLocation.slice(0,-1)));if(Me){let je=new Set([...Array.from(Me.manifest.peerDependencies.values(),St=>X_.structUtils.stringifyIdent(St)),...Array.from(Me.manifest.peerDependenciesMeta.keys())]);for(let St of je)De.has(St)||(De.set(St,ae.get(St)||null),ue.peerNames.add(St))}}let k=d6({name:F.name.replace(yue,""),reference:F.reference}),et=o.get(k);if(et)for(let Me of et)De.set(`${Me.name}${yue}`,Me.reference);(B!==X||B.linkType!==j4.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ne)))&&Q.dependencies.add(ue);let ct=F!==A&&B.linkType===j4.SOFT&&!F.name.endsWith(yue)&&!be;if(!de&&!ct){let Me=new Map;for(let[je,St]of De)if(St!==null){let At=e.getLocator(je,St),Yt=e.getLocator(je.replace(yue,""),St),Tr=e.getPackageInformation(Yt);if(Tr===null)throw new Error("Assertion failed: Expected the package to have been registered");let Nr=CJr(Tr,At,e,f);if(t.validateExternalSoftLinks&&t.project&&Nr){Tr.packageDependencies.size>0&&(n=!0);for(let[qt,Xt]of Tr.packageDependencies)if(Xt!==null){let lr=X_.structUtils.parseLocator(Array.isArray(Xt)?`${Xt[0]}@${Xt[1]}`:`${qt}@${Xt}`);if(d6(lr)!==d6(At)){let cr=De.get(qt);if(cr){let Ar=X_.structUtils.parseLocator(Array.isArray(cr)?`${cr[0]}@${cr[1]}`:`${qt}@${cr}`);vAs(Ar,lr)||r.push({messageName:X_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(At.name))} into ${X_.structUtils.prettyLocator(t.project.configuration,X_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${X_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with parent dependency ${X_.structUtils.prettyLocator(t.project.configuration,Ar)}`})}else{let Ar=Me.get(qt);if(Ar){let qr=Ar.target,_n=X_.structUtils.parseLocator(Array.isArray(qr)?`${qr[0]}@${qr[1]}`:`${qt}@${qr}`);vAs(_n,lr)||r.push({messageName:X_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(At.name))} into ${X_.structUtils.prettyLocator(t.project.configuration,X_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${X_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with dependency ${X_.structUtils.prettyLocator(t.project.configuration,_n)} from sibling portal ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(Ar.portal.name))}`})}else Me.set(qt,{target:lr.reference,portal:At})}}}}let er=t.hoistingLimitsByCwd?.get(ne),vt=Nr?ne:HR.ppath.relative(f,HR.npath.toPortablePath(Tr.packageLocation))||SAs.PortablePath.dot,xt=t.hoistingLimitsByCwd?.get(vt),Zr=er===$6e.DEPENDENCIES||xt===$6e.DEPENDENCIES||xt===$6e.WORKSPACES;E(je,Tr,At,ue,B,De,vt,Zr)}}};return E(A.name,l,A,I,l,l.packageDependencies,SAs.PortablePath.dot,!1),{packageTree:I,hoistingLimits:a,errors:r,preserveSymlinksRequired:n}};function BAs(e,t,r){let n=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return HR.npath.toPortablePath(n||e.packageLocation)}function j_l(e,t,r){let n=t.getLocator(e.name.replace(yue,""),e.reference),a=t.getPackageInformation(n);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:j4.SOFT,target:HR.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:BAs(a,e,t)}}var z_l=(e,t,r)=>{let n=new Map,a=(C,b,E)=>{let{linkType:N,target:B}=j_l(C,e,r);return{locator:d6(C),nodePath:b,target:B,linkType:N,aliases:E}},o=C=>{let[b,E]=C.split("/");return E?{scope:b,name:E}:{scope:null,name:b}},l=new Set,A=(C,b,E)=>{if(l.has(C))return;l.add(C);let N=Array.from(C.references).sort().join("#");for(let B of C.dependencies){let F=Array.from(B.references).sort().join("#");if(B.identName===C.identName.replace(yue,"")&&F===N)continue;let Q=Array.from(B.references).sort(),X={name:B.identName,reference:Q[0]},{name:ae,scope:ne}=o(B.name),ce=ne?[ne,ae]:[ae],fe=HR.ppath.join(b,aGt),ue=HR.ppath.join(fe,...ce),de=`${E}/${X.name}`,be=a(X,E,Q.slice(1)),Se=!1;if(be.linkType===j4.SOFT&&r.project){let De=r.project.workspacesByCwd.get(be.target.slice(0,-1));Se=!!(De&&!De.manifest.name)}if(!B.name.endsWith(yue)&&!Se){let De=n.get(ue);if(De){if(De.dirList)throw new Error(`Assertion failed: ${ue} cannot merge dir node with leaf node`);{let ct=X_.structUtils.parseLocator(De.locator),Me=X_.structUtils.parseLocator(be.locator);if(De.linkType!==be.linkType)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different link types ${De.nodePath}/${X_.structUtils.stringifyLocator(ct)} and ${E}/${X_.structUtils.stringifyLocator(Me)}`);if(ct.identHash!==Me.identHash)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different idents ${De.nodePath}/${X_.structUtils.stringifyLocator(ct)} and ${E}/s${X_.structUtils.stringifyLocator(Me)}`);be.aliases=[...be.aliases,...De.aliases,X_.structUtils.parseLocator(De.locator).reference]}}n.set(ue,be);let k=ue.split("/"),et=k.indexOf(aGt);for(let ct=k.length-1;et>=0&&ct>et;ct--){let Me=HR.npath.toPortablePath(k.slice(0,ct).join(HR.ppath.sep)),je=k[ct],St=n.get(Me);if(!St)n.set(Me,{dirList:new Set([je])});else if(St.dirList){if(St.dirList.has(je))break;St.dirList.add(je)}}}A(B,be.linkType===j4.SOFT?be.target:ue,de)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),I=f.target;return n.set(I,f),A(t,I,""),n}});var e7e=H(QV=>{"use strict";Object.defineProperty(QV,"__esModule",{value:!0});QV.HoisterDependencyKind=QV.hoist=QV.getArchivePath=QV.buildLocatorMap=QV.buildNodeModulesTree=QV.NodeModulesHoistingLimits=void 0;var q_l=cGt();Object.defineProperty(QV,"getArchivePath",{enumerable:!0,get:function(){return q_l.getArchivePath}});var wAs=cGt();Object.defineProperty(QV,"buildNodeModulesTree",{enumerable:!0,get:function(){return wAs.buildNodeModulesTree}});Object.defineProperty(QV,"buildLocatorMap",{enumerable:!0,get:function(){return wAs.buildLocatorMap}});var $_l=cGt();Object.defineProperty(QV,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return $_l.NodeModulesHoistingLimits}});var TAs=mJr();Object.defineProperty(QV,"hoist",{enumerable:!0,get:function(){return TAs.hoist}});Object.defineProperty(QV,"HoisterDependencyKind",{enumerable:!0,get:function(){return TAs.HoisterDependencyKind}})});var LJr=H(z4=>{"use strict";Object.defineProperty(z4,"__esModule",{value:!0});var e0l=wt("zlib"),WAs=wt("path"),r0e=wt("module"),eB=wt("url"),RAs=wt("util"),t0l=wt("assert"),r0l=wt("fs"),n0l=wt("crypto"),i0l=wt("os"),fGt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},OAs=fGt(e0l),uGt=fGt(WAs),s0l=fGt(t0l),o0l=fGt(r0l),MAs=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(MAs||{}),a0l=456789e3,vJr={root:"/",dot:".",parent:".."},gGt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},Rc=Object.create(uGt.default),gh=Object.create(uGt.default.posix);Rc.cwd=()=>process.cwd();gh.cwd=process.platform==="win32"?()=>xJr(process.cwd()):process.cwd;process.platform==="win32"&&(gh.resolve=(...e)=>e.length>0&&gh.isAbsolute(e[0])?uGt.default.posix.resolve(...e):uGt.default.posix.resolve(gh.cwd(),...e));var HAs=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};Rc.contains=(e,t)=>HAs(Rc,e,t);gh.contains=(e,t)=>HAs(gh,e,t);var c0l=/^([a-zA-Z]:.*)$/,l0l=/^\/\/(\.\/)?(.*)$/,u0l=/^\/([a-zA-Z]:.*)$/,g0l=/^\/unc\/(\.dot\/)?(.*)$/;function A0l(e){let t,r;if(t=e.match(u0l))e=t[1];else if(r=e.match(g0l))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function d0l(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(c0l))?e=`/${t[1]}`:(r=e.match(l0l))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var xJr=process.platform==="win32"?d0l:e=>e,YAs=process.platform==="win32"?A0l:e=>e;Rc.fromPortablePath=YAs;Rc.toPortablePath=xJr;function QAs(e,t){return e===Rc?YAs(t):xJr(t)}var i0e=new Date(a0l*1e3),p0l=i0e.getTime();async function f0l(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:i0e,mtime:i0e}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await BJr(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function BJr(e,t,r,n,a,o,l){let A=l.didParentExist?await XAs(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:i0e,mtime:i0e}:f,b;switch(!0){case f.isDirectory():b=await I0l(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await C0l(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await _0l(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function XAs(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function I0l(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await BJr(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await BJr(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function h0l(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(ce=>{ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=1,X=await XAs(r,B);if(a){let ce=X&&a.dev===X.dev&&a.ino===X.ino,fe=X?.mtimeMs!==p0l;if(ce&&fe&&I.autoRepair&&(Q=0,X=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!X&&Q===1?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!X&&(Q===0&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===1&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{X||(await r.lutimesPromise(B,i0e,i0e),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function m0l(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function C0l(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?h0l(e,t,r,n,a,o,l,A,f,f.linkStrategy):m0l(e,t,r,n,a,o,l,A,f)}async function _0l(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(QAs(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}var AGt=class{pathUtils;constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=n0l.createHash(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await f0l(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync(QAs(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?NAs(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?NAs(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} +`:"")}});var AGt=H(NH=>{"use strict";Object.defineProperty(NH,"__esModule",{value:!0});NH.buildLocatorMap=NH.buildNodeModulesTree=NH.getArchivePath=NH.NodeModulesHoistingLimits=NH.LinkType=void 0;var X_=yn(),HR=zs(),WAs=zs(),pGe=vJr(),j4;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(j4||(NH.LinkType=j4={}));var t7e;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})(t7e||(NH.NodeModulesHoistingLimits=t7e={}));var gGt="node_modules",bue="$wsroot$",L0l=e=>e.indexOf(`.zip/${gGt}/`)>=0?HR.npath.toPortablePath(e.split(`/${gGt}/`)[0]):null;NH.getArchivePath=L0l;var V0l=(e,t)=>{let{packageTree:r,hoistingLimits:n,errors:a,preserveSymlinksRequired:o}=O0l(e,t),l=null;if(a.length===0){let A=(0,pGe.hoist)(r,{hoistingLimits:n});l=H0l(e,A,t)}return{tree:l,errors:a,preserveSymlinksRequired:o}};NH.buildNodeModulesTree=V0l;var d6=e=>`${e.name}@${e.reference}`,P0l=e=>{let t=new Map;for(let[r,n]of e.entries())if(!n.dirList){let a=t.get(n.locator);a||(a={target:n.target,linkType:n.linkType,locations:[],aliases:n.aliases},t.set(n.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((n,a)=>{let o=n.split(HR.ppath.delimiter).length,l=a.split(HR.ppath.delimiter).length;return a===n?0:o!==l?l-o:a>n?1:-1});return t};NH.buildLocatorMap=P0l;var OAs=(e,t)=>{let r=X_.structUtils.isVirtualLocator(e)?X_.structUtils.devirtualizeLocator(e):e,n=X_.structUtils.isVirtualLocator(t)?X_.structUtils.devirtualizeLocator(t):t;return X_.structUtils.areLocatorsEqual(r,n)},BJr=(e,t,r,n)=>{if(e.linkType!==j4.SOFT)return!1;let a=HR.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return HR.ppath.contains(n,a)===null},W0l=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let n=HR.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},l=e.getDependencyTreeRoots(),A=new Map,f=new Set,I=(E,N)=>{let B=d6(E);if(f.has(B))return;f.add(B);let F=e.getPackageInformation(E);if(F){let Q=N?d6(N):"";if(d6(E)!==Q&&F.linkType===j4.SOFT&&!E.reference.startsWith("link:")&&!BJr(F,E,e,n)){let X=MAs(F,E,e);(!A.get(X)||E.reference.startsWith("workspace:"))&&A.set(X,E)}for(let[X,ae]of F.packageDependencies)ae!==null&&(F.packagePeers.has(X)||I(e.getLocator(X,ae),E))}};for(let E of l)I(E,null);let C=n.split(HR.ppath.sep);for(let E of A.values()){let N=e.getPackageInformation(E),F=HR.npath.toPortablePath(N.packageLocation.slice(0,-1)).split(HR.ppath.sep).slice(C.length),Q=o;for(let X of F){let ae=Q.children.get(X);ae||(ae={children:new Map},Q.children.set(X,ae)),Q=ae}Q.workspaceLocator=E}let b=(E,N)=>{if(E.workspaceLocator){let B=d6(N),F=a.get(B);F||(F=new Set,a.set(B,F)),F.add(E.workspaceLocator)}for(let B of E.children.values())b(B,E.workspaceLocator||N)};for(let E of o.children.values())b(E,o.workspaceLocator);return a},O0l=(e,t)=>{let r=[],n=!1,a=new Map,o=W0l(e),l=e.getPackageInformation(e.topLevel);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let A=e.findPackageLocator(l.packageLocation);if(A===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=HR.npath.toPortablePath(l.packageLocation.slice(0,-1)),I={name:A.name,identName:A.name,reference:A.reference,peerNames:l.packagePeers,dependencies:new Set,dependencyKind:pGe.HoisterDependencyKind.WORKSPACE},C=new Map,b=(N,B)=>`${d6(B)}:${N}`,E=(N,B,F,Q,X,ae,ne,ce)=>{let fe=b(N,F),ue=C.get(fe),de=!!ue;!de&&F.name===A.name&&F.reference===A.reference&&(ue=I,C.set(fe,I));let be=BJr(B,F,e,f);if(!ue){let Me=pGe.HoisterDependencyKind.REGULAR;be?Me=pGe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:B.linkType===j4.SOFT&&F.name.endsWith(bue)&&(Me=pGe.HoisterDependencyKind.WORKSPACE),ue={name:N,identName:F.name,reference:F.reference,dependencies:new Set,peerNames:Me===pGe.HoisterDependencyKind.WORKSPACE?new Set:B.packagePeers,dependencyKind:Me},C.set(fe,ue)}let Se;if(be?Se=2:X.linkType===j4.SOFT?Se=1:Se=0,ue.hoistPriority=Math.max(ue.hoistPriority||0,Se),ce&&!be){let Me=d6({name:Q.identName,reference:Q.reference}),je=a.get(Me)||new Set;a.set(Me,je),je.add(ue.name)}let De=new Map(B.packageDependencies);if(t.project){let Me=t.project.workspacesByCwd.get(HR.npath.toPortablePath(B.packageLocation.slice(0,-1)));if(Me){let je=new Set([...Array.from(Me.manifest.peerDependencies.values(),St=>X_.structUtils.stringifyIdent(St)),...Array.from(Me.manifest.peerDependenciesMeta.keys())]);for(let St of je)De.has(St)||(De.set(St,ae.get(St)||null),ue.peerNames.add(St))}}let k=d6({name:F.name.replace(bue,""),reference:F.reference}),et=o.get(k);if(et)for(let Me of et)De.set(`${Me.name}${bue}`,Me.reference);(B!==X||B.linkType!==j4.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ne)))&&Q.dependencies.add(ue);let ct=F!==A&&B.linkType===j4.SOFT&&!F.name.endsWith(bue)&&!be;if(!de&&!ct){let Me=new Map;for(let[je,St]of De)if(St!==null){let At=e.getLocator(je,St),Yt=e.getLocator(je.replace(bue,""),St),Tr=e.getPackageInformation(Yt);if(Tr===null)throw new Error("Assertion failed: Expected the package to have been registered");let Nr=BJr(Tr,At,e,f);if(t.validateExternalSoftLinks&&t.project&&Nr){Tr.packageDependencies.size>0&&(n=!0);for(let[qt,Xt]of Tr.packageDependencies)if(Xt!==null){let lr=X_.structUtils.parseLocator(Array.isArray(Xt)?`${Xt[0]}@${Xt[1]}`:`${qt}@${Xt}`);if(d6(lr)!==d6(At)){let cr=De.get(qt);if(cr){let Ar=X_.structUtils.parseLocator(Array.isArray(cr)?`${cr[0]}@${cr[1]}`:`${qt}@${cr}`);OAs(Ar,lr)||r.push({messageName:X_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(At.name))} into ${X_.structUtils.prettyLocator(t.project.configuration,X_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${X_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with parent dependency ${X_.structUtils.prettyLocator(t.project.configuration,Ar)}`})}else{let Ar=Me.get(qt);if(Ar){let qr=Ar.target,_n=X_.structUtils.parseLocator(Array.isArray(qr)?`${qr[0]}@${qr[1]}`:`${qt}@${qr}`);OAs(_n,lr)||r.push({messageName:X_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(At.name))} into ${X_.structUtils.prettyLocator(t.project.configuration,X_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${X_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with dependency ${X_.structUtils.prettyLocator(t.project.configuration,_n)} from sibling portal ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(Ar.portal.name))}`})}else Me.set(qt,{target:lr.reference,portal:At})}}}}let er=t.hoistingLimitsByCwd?.get(ne),vt=Nr?ne:HR.ppath.relative(f,HR.npath.toPortablePath(Tr.packageLocation))||WAs.PortablePath.dot,xt=t.hoistingLimitsByCwd?.get(vt),Zr=er===t7e.DEPENDENCIES||xt===t7e.DEPENDENCIES||xt===t7e.WORKSPACES;E(je,Tr,At,ue,B,De,vt,Zr)}}};return E(A.name,l,A,I,l,l.packageDependencies,WAs.PortablePath.dot,!1),{packageTree:I,hoistingLimits:a,errors:r,preserveSymlinksRequired:n}};function MAs(e,t,r){let n=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return HR.npath.toPortablePath(n||e.packageLocation)}function M0l(e,t,r){let n=t.getLocator(e.name.replace(bue,""),e.reference),a=t.getPackageInformation(n);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:j4.SOFT,target:HR.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:MAs(a,e,t)}}var H0l=(e,t,r)=>{let n=new Map,a=(C,b,E)=>{let{linkType:N,target:B}=M0l(C,e,r);return{locator:d6(C),nodePath:b,target:B,linkType:N,aliases:E}},o=C=>{let[b,E]=C.split("/");return E?{scope:b,name:E}:{scope:null,name:b}},l=new Set,A=(C,b,E)=>{if(l.has(C))return;l.add(C);let N=Array.from(C.references).sort().join("#");for(let B of C.dependencies){let F=Array.from(B.references).sort().join("#");if(B.identName===C.identName.replace(bue,"")&&F===N)continue;let Q=Array.from(B.references).sort(),X={name:B.identName,reference:Q[0]},{name:ae,scope:ne}=o(B.name),ce=ne?[ne,ae]:[ae],fe=HR.ppath.join(b,gGt),ue=HR.ppath.join(fe,...ce),de=`${E}/${X.name}`,be=a(X,E,Q.slice(1)),Se=!1;if(be.linkType===j4.SOFT&&r.project){let De=r.project.workspacesByCwd.get(be.target.slice(0,-1));Se=!!(De&&!De.manifest.name)}if(!B.name.endsWith(bue)&&!Se){let De=n.get(ue);if(De){if(De.dirList)throw new Error(`Assertion failed: ${ue} cannot merge dir node with leaf node`);{let ct=X_.structUtils.parseLocator(De.locator),Me=X_.structUtils.parseLocator(be.locator);if(De.linkType!==be.linkType)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different link types ${De.nodePath}/${X_.structUtils.stringifyLocator(ct)} and ${E}/${X_.structUtils.stringifyLocator(Me)}`);if(ct.identHash!==Me.identHash)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different idents ${De.nodePath}/${X_.structUtils.stringifyLocator(ct)} and ${E}/s${X_.structUtils.stringifyLocator(Me)}`);be.aliases=[...be.aliases,...De.aliases,X_.structUtils.parseLocator(De.locator).reference]}}n.set(ue,be);let k=ue.split("/"),et=k.indexOf(gGt);for(let ct=k.length-1;et>=0&&ct>et;ct--){let Me=HR.npath.toPortablePath(k.slice(0,ct).join(HR.ppath.sep)),je=k[ct],St=n.get(Me);if(!St)n.set(Me,{dirList:new Set([je])});else if(St.dirList){if(St.dirList.has(je))break;St.dirList.add(je)}}}A(B,be.linkType===j4.SOFT?be.target:ue,de)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),I=f.target;return n.set(I,f),A(t,I,""),n}});var r7e=H(QV=>{"use strict";Object.defineProperty(QV,"__esModule",{value:!0});QV.HoisterDependencyKind=QV.hoist=QV.getArchivePath=QV.buildLocatorMap=QV.buildNodeModulesTree=QV.NodeModulesHoistingLimits=void 0;var Y0l=AGt();Object.defineProperty(QV,"getArchivePath",{enumerable:!0,get:function(){return Y0l.getArchivePath}});var HAs=AGt();Object.defineProperty(QV,"buildNodeModulesTree",{enumerable:!0,get:function(){return HAs.buildNodeModulesTree}});Object.defineProperty(QV,"buildLocatorMap",{enumerable:!0,get:function(){return HAs.buildLocatorMap}});var Q0l=AGt();Object.defineProperty(QV,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return Q0l.NodeModulesHoistingLimits}});var YAs=vJr();Object.defineProperty(QV,"hoist",{enumerable:!0,get:function(){return YAs.hoist}});Object.defineProperty(QV,"HoisterDependencyKind",{enumerable:!0,get:function(){return YAs.HoisterDependencyKind}})});var YJr=H(z4=>{"use strict";Object.defineProperty(z4,"__esModule",{value:!0});var X0l=wt("zlib"),rds=wt("path"),n0e=wt("module"),eB=wt("url"),QAs=wt("util"),J0l=wt("assert"),U0l=wt("fs"),K0l=wt("crypto"),j0l=wt("os"),CGt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},nds=CGt(X0l),pGt=CGt(rds),z0l=CGt(J0l),q0l=CGt(U0l),ids=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(ids||{}),$0l=456789e3,kJr={root:"/",dot:".",parent:".."},fGt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},Rc=Object.create(pGt.default),gh=Object.create(pGt.default.posix);Rc.cwd=()=>process.cwd();gh.cwd=process.platform==="win32"?()=>WJr(process.cwd()):process.cwd;process.platform==="win32"&&(gh.resolve=(...e)=>e.length>0&&gh.isAbsolute(e[0])?pGt.default.posix.resolve(...e):pGt.default.posix.resolve(gh.cwd(),...e));var sds=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};Rc.contains=(e,t)=>sds(Rc,e,t);gh.contains=(e,t)=>sds(gh,e,t);var eyl=/^([a-zA-Z]:.*)$/,tyl=/^\/\/(\.\/)?(.*)$/,ryl=/^\/([a-zA-Z]:.*)$/,nyl=/^\/unc\/(\.dot\/)?(.*)$/;function iyl(e){let t,r;if(t=e.match(ryl))e=t[1];else if(r=e.match(nyl))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function syl(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(eyl))?e=`/${t[1]}`:(r=e.match(tyl))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var WJr=process.platform==="win32"?syl:e=>e,ods=process.platform==="win32"?iyl:e=>e;Rc.fromPortablePath=ods;Rc.toPortablePath=WJr;function ads(e,t){return e===Rc?ods(t):WJr(t)}var s0e=new Date($0l*1e3),oyl=s0e.getTime();async function ayl(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:s0e,mtime:s0e}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await xJr(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function xJr(e,t,r,n,a,o,l){let A=l.didParentExist?await cds(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:s0e,mtime:s0e}:f,b;switch(!0){case f.isDirectory():b=await cyl(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await gyl(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await Ayl(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function cds(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function cyl(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await xJr(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await xJr(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function lyl(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(ce=>{ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=1,X=await cds(r,B);if(a){let ce=X&&a.dev===X.dev&&a.ino===X.ino,fe=X?.mtimeMs!==oyl;if(ce&&fe&&I.autoRepair&&(Q=0,X=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!X&&Q===1?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!X&&(Q===0&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===1&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{X||(await r.lutimesPromise(B,s0e,s0e),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function uyl(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function gyl(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?lyl(e,t,r,n,a,o,l,A,f,f.linkStrategy):uyl(e,t,r,n,a,o,l,A,f)}async function Ayl(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(ads(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}var IGt=class{pathUtils;constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=K0l.createHash(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await ayl(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync(ads(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?XAs(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?XAs(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} `)}writeJsonSync(t,r,{compact:n=!1}={}){let a=n?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}},wJr=class extends AGt{constructor(){super(gh)}};function y0l(e){let t=e.match(/\r?\n/g);if(t===null)return i0l.EOL;let r=t.filter(a=>a===`\r +`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}},GJr=class extends IGt{constructor(){super(gh)}};function dyl(e){let t=e.match(/\r?\n/g);if(t===null)return j0l.EOL;let r=t.filter(a=>a===`\r `).length,n=t.length-r;return r>n?`\r `:` -`}function NAs(e,t){return t.replace(/\r?\n/g,y0l(e))}var TJr=class extends AGt{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};function DAs(e){let t=e;return typeof e.path=="string"&&(t.path=Rc.toPortablePath(e.path)),t}var RJr=class extends wJr{realFs;constructor(t=o0l.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return vJr.root}resolve(t){return gh.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(Rc.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(Rc.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(Rc.fromPortablePath(t),r):this.realFs.opendirSync(Rc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(Rc.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}realpathSync(t){return Rc.toPortablePath(this.realFs.realpathSync(Rc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(Rc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(Rc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(Rc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(Rc.fromPortablePath(t),r):this.realFs.statSync(Rc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(Rc.fromPortablePath(t),r):this.realFs.lstatSync(Rc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(Rc.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(Rc.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(Rc.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(Rc.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(Rc.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(Rc.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(Rc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(Rc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(Rc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?Rc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?Rc.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(DAs)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Rc.toPortablePath)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(DAs):this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(Rc.toPortablePath):this.realFs.readdirSync(Rc.fromPortablePath(t),r):this.realFs.readdirSync(Rc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(Rc.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}readlinkSync(t){return Rc.toPortablePath(this.realFs.readlinkSync(Rc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(Rc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(Rc.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(Rc.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(Rc.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}},b0l=/^[0-9]+$/,_Jr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,E0l=/^([^/]+-)?[a-f0-9]+$/,dGt=class e extends TJr{baseFs;static makeVirtualPath(t,r,n){if(gh.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!gh.basename(r).match(E0l))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=gh.relative(gh.dirname(t),n).split("/"),l=0;for(;l"u"||(A!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=IGt(f,I,t,r).replace(/^ +/g,""),A+=1)}return a+="}",a}function w0l(e,t,r){let n=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ +`}function XAs(e,t){return t.replace(/\r?\n/g,dyl(e))}var FJr=class extends IGt{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};function JAs(e){let t=e;return typeof e.path=="string"&&(t.path=Rc.toPortablePath(e.path)),t}var ZJr=class extends GJr{realFs;constructor(t=q0l.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return kJr.root}resolve(t){return gh.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(Rc.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(Rc.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(Rc.fromPortablePath(t),r):this.realFs.opendirSync(Rc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(Rc.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}realpathSync(t){return Rc.toPortablePath(this.realFs.realpathSync(Rc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(Rc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(Rc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(Rc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(Rc.fromPortablePath(t),r):this.realFs.statSync(Rc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(Rc.fromPortablePath(t),r):this.realFs.lstatSync(Rc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(Rc.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(Rc.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(Rc.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(Rc.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(Rc.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(Rc.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(Rc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(Rc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(Rc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?Rc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?Rc.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(JAs)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Rc.toPortablePath)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(JAs):this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(Rc.toPortablePath):this.realFs.readdirSync(Rc.fromPortablePath(t),r):this.realFs.readdirSync(Rc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(Rc.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}readlinkSync(t){return Rc.toPortablePath(this.realFs.readlinkSync(Rc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(Rc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(Rc.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(Rc.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(Rc.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}},pyl=/^[0-9]+$/,wJr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,fyl=/^([^/]+-)?[a-f0-9]+$/,hGt=class e extends FJr{baseFs;static makeVirtualPath(t,r,n){if(gh.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!gh.basename(r).match(fyl))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=gh.relative(gh.dirname(t),n).split("/"),l=0;for(;l"u"||(A!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=_Gt(f,I,t,r).replace(/^ +/g,""),A+=1)}return a+="}",a}function Cyl(e,t,r){let n=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ `;let l=0;for(let A=0,f=n.length;A"u"||(l!==0&&(o+=",",o+=` -`),o+=a,o+=JSON.stringify(I),o+=": ",o+=IGt(I,C,t,a).replace(/^ +/g,""),l+=1)}return l!==0&&(o+=` -`),o+=r,o+="}",o}function IGt(e,t,r,n){let{next:a}=JAs[r],o=a[e]||a["*"];return UAs(t,o,n)}function UAs(e,t,r){let{collapsed:n}=JAs[t];return Array.isArray(e)?n?S0l(e,t,r):v0l(e,t,r):typeof e=="object"&&e!==null?n?B0l(e,t,r):w0l(e,t,r):JSON.stringify(e)}function KAs(e){return UAs(e,"TOP_LEVEL","")}function r7e(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function T0l(e){let t=new Map,r=r7e(e.fallbackExclusionList||[],[({name:n,reference:a})=>n,({name:n,reference:a})=>a]);for(let{name:n,reference:a}of r){let o=t.get(n);typeof o>"u"&&t.set(n,o=new Set),o.add(a)}return Array.from(t).map(([n,a])=>[n,Array.from(a)])}function R0l(e){return r7e(e.fallbackPool||[],([t])=>t)}function N0l(e){let t=[],r=e.dependencyTreeRoots.find(n=>e.packageRegistry.get(n.name)?.get(n.reference)?.packageLocation==="./");for(let[n,a]of r7e(e.packageRegistry,([o])=>o===null?"0":`1${o}`)){if(n===null)continue;let o=[];t.push([n,o]);for(let[l,{packageLocation:A,packageDependencies:f,packagePeers:I,linkType:C,discardFromLookup:b}]of r7e(a,([E])=>E===null?"0":`1${E}`)){if(l===null)continue;let E=[];n!==null&&l!==null&&!f.has(n)&&E.push([n,l]);for(let[X,ae]of f)E.push([X,ae]);let N=r7e(E,([X])=>X),B=I&&I.size>0?Array.from(I):void 0,Q={packageLocation:A,packageDependencies:N,packagePeers:B,linkType:C,discardFromLookup:b||void 0};o.push([l,Q]),r&&n===r.name&&l===r.reference&&t.unshift([null,[[null,Q]]])}}return t}function GJr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,pnpZipBackend:e.pnpZipBackend,fallbackExclusionList:T0l(e),fallbackPool:R0l(e),packageRegistryData:N0l(e)}}var yJr,D0l=()=>(typeof yJr>"u"&&(yJr=OAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),yJr);function FJr(e,t){return[e?`${e} +`),o+=a,o+=JSON.stringify(I),o+=": ",o+=_Gt(I,C,t,a).replace(/^ +/g,""),l+=1)}return l!==0&&(o+=` +`),o+=r,o+="}",o}function _Gt(e,t,r,n){let{next:a}=lds[r],o=a[e]||a["*"];return uds(t,o,n)}function uds(e,t,r){let{collapsed:n}=lds[t];return Array.isArray(e)?n?Iyl(e,t,r):hyl(e,t,r):typeof e=="object"&&e!==null?n?myl(e,t,r):Cyl(e,t,r):JSON.stringify(e)}function gds(e){return uds(e,"TOP_LEVEL","")}function i7e(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function _yl(e){let t=new Map,r=i7e(e.fallbackExclusionList||[],[({name:n,reference:a})=>n,({name:n,reference:a})=>a]);for(let{name:n,reference:a}of r){let o=t.get(n);typeof o>"u"&&t.set(n,o=new Set),o.add(a)}return Array.from(t).map(([n,a])=>[n,Array.from(a)])}function yyl(e){return i7e(e.fallbackPool||[],([t])=>t)}function byl(e){let t=[],r=e.dependencyTreeRoots.find(n=>e.packageRegistry.get(n.name)?.get(n.reference)?.packageLocation==="./");for(let[n,a]of i7e(e.packageRegistry,([o])=>o===null?"0":`1${o}`)){if(n===null)continue;let o=[];t.push([n,o]);for(let[l,{packageLocation:A,packageDependencies:f,packagePeers:I,linkType:C,discardFromLookup:b}]of i7e(a,([E])=>E===null?"0":`1${E}`)){if(l===null)continue;let E=[];n!==null&&l!==null&&!f.has(n)&&E.push([n,l]);for(let[X,ae]of f)E.push([X,ae]);let N=i7e(E,([X])=>X),B=I&&I.size>0?Array.from(I):void 0,Q={packageLocation:A,packageDependencies:N,packagePeers:B,linkType:C,discardFromLookup:b||void 0};o.push([l,Q]),r&&n===r.name&&l===r.reference&&t.unshift([null,[[null,Q]]])}}return t}function OJr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,pnpZipBackend:e.pnpZipBackend,fallbackExclusionList:_yl(e),fallbackPool:yyl(e),packageRegistryData:byl(e)}}var TJr,Eyl=()=>(typeof TJr>"u"&&(TJr=nds.default.brotliDecompressSync(Buffer.from("WyqmVsJ2xex2gL35r+y0F6ITdg9W9TlcgFJd0tc5gm7bboZQqDfzlvzE380XMlTVvKRDxrZfBxz0alVVNQRzeEAYmRKyyAcFB7sX3Ghw0paG3VnwZmGz3GGo2jxno2ogMKWGHeWRKT4npqgshBPefy1z6xPd9YBaF8zU+4Qt/WL5GwHh86Vfrc8ftE8ydiep18b6j3X8SadIIuk1gI7bXwkgxgRJjaIxHTqbxmbtzJO6uJgn/vxbqv09lxNmtSOQI3i4TUYbfbbXE4r9UA0uMi7ahv+aquksLtPZ/9k0tZtI1aDLWAtgsLf/GBGxzf4lHTaLoLD4Y6U731eX+y3TL8IEY3m+rUD2yY6jvq80LyqQ/Nef+l/fRim1YvHWsDi+Ih1j0HWB0DgLQ8aCfXO+9385Zdx8wEGXoWrLmV5s2ZWcFAYaAP/5e7X/78/Xqfs6mshy4929D7GtB4NpnJepsftiGaHAMVaDERfhtGQuvs3Mr1q8FcxxtvQkhPBW/qH7Xah2GHMOKfjlb9XXb86hNsOJM2esCjt7oiNNWEkeqe4+ZKqwVC37byriqwv85DKm9kPlODoOoFXgGFwSNg9QdF1L0+fXt9hJ9ARilmuMOohfy3CFdWmK/tZeO15RQ6ccJa1OmJGsuL5HvPUr0WfCrooiPPGJ1/HgoCjq+OZnfpJqMCU0vREMgtjN2ikEjsVqeTDfxkDDh4EPZoMDo2UgWLppvR/3rcBsJARhCfjSDzX6/Li7WzdJu9nPJ41mEAYcQcYx/nNxIyhJnF3cktSPb2wdD3uQynbt+OYz4KBQD6Sim+HyIXfDxN0v+VFDrT8edv8PtpUd+fhedTUUAuxGQYl8k+VJNVEmWEYJ0lhYbD4fPkzRWvuc3WxyAQ7MhYj0h7buhYiotj2i79vU43Xso7tFxzbVv/lLflBi0kFwBjyiqf44/Ha2U8cHECchUgqTPrqCMNOlH5oa2G6OhjABP8A89KWqx0Navf4dgMKs6qq53GzKHsh4pGvCl/j/7/ulVffIRIIsjFDCsUaTCZCjpWHO8vOfe/bdzC8LoVBMhe4kQK4GSqyiaCHvPufe90VEJCMSICcBsmuBKMVqqayR2vTaHsMbz4pM9ijtzd/3pdq3Pfe9RCJBUBRI0TZoeWDNYvkP8/YnAErWVMOs3+O42Ij3nvNu6917X5byvUyUMl8mvjNfJsLIBBmFzAR+EACZLxOgEhClACm5GqLtCkp2dVOy6wc91jCLIBVhinKESVp/kNyT7R6nVUfIfxinVVevxtj/Ye5xWP1973qx72WvF73r5fKvlr1YtkXL75XKztCQKiAnhu3dqS3FiJDpdVf31KX/pMycCSKz9x3eh4L/vv1YnfvlzWILoXuJejqtspzBPJmGSlWNjQaNkDNXy1LaPd3TfXX7n6V8r+xA4IRd5YyQNXPjcMHOKAVmAXpBISRoZBiQARXDBswcCBpVOJAGB6jHg0E3581mf/aBcCKBBhFdTP9mhu5BMk61/SQNLMFSif+nv5jungtf9c0ChRRQAtpkqlm1cjbV5h6V8pEIY26nJ8v/SSzqtTd7vfzlg0QrlEXiWWazkwQoWgPPiW4dpt9/AjejJi3SJchJdxfRKJAQ8CAhQBAvpcVriBaxhABdudcB3Kw6Oki3henrWNESQSJIIGiCBQ1QQTQBimgo1ZF/JwGS+/eyDeFDFOwnCHfT/qHdvvX7T5FiwChTBBlxOKYYuBFSTBEwcEFSbBFxixFeseDTv6Xr///fPfvQfP4LLDBgwIABVjTAwIoMDKzIShpYUQMDKzLoJzVoUKCBwR0eN+33KIEeEu7uSyfQQogJECOEgAfV0ggSoPVtZ5oIOGOmrv/nfXsvIP0fcEDAgoCoiqqAgACrCrCqAFcyGGC1BgYGIUwv1ycsLl7AmbqIf/++kwrogQMLFgQsCAiI1ICoCjAIMIhUgwADA1cyGFVp2+HfzWrRdpGycjLTJkHyIoqYlwo1tDJy5x8/ASJPVub/29afMdAnIO+1AT3B0FJDDJUlq+55+0vcWF0DxuW/Q4OYMLLK0WkL7bfDUCco/ynIHfCrRr4fH5xz3JQRF7kZNKo/SFqGtrdy121U+4Ujn2udEpH7bXNrDPmDV2r8t7p+10bmgSh3rtuofmC9mOWNGVBZzXzk4Wuw7IHXyD1tHYUMvX22uxg7UaW0sf7RGdfu32XJpyTNHVC6bnNjMW2RJ5arYaPCp2PkxnVNCen6feL4UxtzKX9L5TeDxuBFw8moEszSd5qTWIBFtsUniIlohX0avGmof1cLYOKeFM81nqRUHbU0XPaj+XVNivACL+v+7G9qspdVI9NSrdJ64Jvd6YiwPwkY7eK/Zw3Lk06Z4wPmckLSDr0YuLMac5j7j0F4q3qlMVoJfk726zXqpmveo2vH4v9Gy9hYG1f4PwDpSf/PexP7hftRjfIJEKlDqth2+bouYmDpEsVEa2k2fEViLEze/rX5aaoM9sL3S/nOgdXwl11bIvgQlFBb6n5lXaaXr8n7ilIIfkImDwrbZPZd74MTySAfxda5f0pUBp1w8F277lkjx6gJhyg0FU/pJoPO0vmUKBskHdnBlJgVj+YI02J1BFFuMCU+v2kyjAi+m9Ybo5DqnYsaq9Js4hFPgn83NnHdK9j/3QTVfG/k4TylZggrENA2m81VH6lY9Xb8MgvhhZl4X7WASH19GYemUxmFHNyD5Z3Pm8r1Awv4CmIUpN81nr5Js2AMrkI9VzVpQxL9mPYWo25mhOIuUgiRearphS/F2VOpGZd2KGAnYoedqR107Y+r2HE8a4ybP0rEE8SZHQ5hwLHDs0utMPQ684tbgA+SYsMU90tQu8Ymyx97Nb93nJGr1CEMPOrVGlIce6vg90D65b+46kmkgHHwd16BiXznpJJTUgkatri9+gmcLSs9/wfmEAaU0EIzklcwe+W/OMlBgWLDlGbHfPpMaA7iuag/MsrW2EflsGUqiviyVK57ib2ZC/9F6liKhFB2Q0FXspreHWrfJOZJ7L/gyd5vas2I8vHEuyEfLiB9gffy4hhitp6bsHA2yER/bU1m+FeWBgEclKN0Dppbjj5uailzKOzX7cfS8ArpRxbLo948V+X/shO/g91BypMI9YnLi+kz8lj6JYJVTOMnkAiMQ3zhAjeNQz0ubKl+pLA/WvPrPmhtZubD85eVXKWy1GIpj0hrZ+q+ytLAJ14FEwTdSqiCvaUyamLcJpkkhCmz1hcfrPyid9HWvFHeNtgCf1+ibyE7yEebnDr7vpFg/wlJtHokleMYtlmzqmeeOmf3Rx5MS+gLOqZeo4/zmzkpLswh3A82fXIAQXBCqgFHhMAbsNcV5ZSc0Bs4fQOnb/D0809fkhxJ6sGZok8OJSgpdaeV0uJCGTlvcoacS1sDnp6DQRri/5DCECn6sq3UYj9S+BW20joVqhZS/LqVarXenzic87V0LczFcm8fS+Xy+qrDlyZNB6XOf8RBTqNVhSeEv6OHbLpids6tbtjzP2R4cbYEvnvp/Dp77G7a3KEpPl9ii9lu3pLQIvJixk3w03t9OP9NLK026MkFGe70mXqRLSlyrJJW4exFmFP9qTxvdUD4OUKNMjRHn+zk+vAWoe4+L0bROtpCMi68fKIavsjCqm2KZeBvPepyChCCAptHm6LZiNIqMXHrZNPOV393x28Sxn7cP8F+eYva/xXq+GUinsVLssS+842CL6Z9Ue315YspX1TR0jwxNSUlhO+nhtxJwmEyfcBMRgrvQz9hrbIRdq2jtzSQrkud81iRAeukkAigO4YEFTXcQqfbuhf6ULhWt2JfSLykkGe1jGLVvu+29tc0IwO6gb9GYQ3oBsKqCxAEJrqRZRUaIqSpYaRa0yE2Gg4hQrUGOKDXD41qDgDc9gN8kIGK2kMqrdwQkZrpx+Y1H8dgP/ZDaVz8Aq3UfF3lP3erdqZEe5lJ2qa3obvNRwJ/Qx9oUf6h0wDW4HayKZGuT0saR029FDuh72BfqN1BvkBhPkUM0O/GIr2vbLmpq91anr/4tOzUDo36BEp8ibMoP78q/KWu6d3Fs6vW8G3x3ioBQPU39gr06j+rJXgv2D2pTefk30lazMZDuGcCPde28r8/23IPa6ybDU/+gJu17JU7vL4xg9PV6ue7opi6f5AkwfDcNnkscJp67IsFac+lR57k9tols+9j8eoWM3wrmKQ7IrUxI6rUDNJ6DAzd6MOVnFbsqaZ9A/8rg3U0nYyZB76hK8TPWmvuVzyZmAVtMC7Hbc5RV6B2SdXOsKbNaiL7a7HjjXv9meLmfSH/6h68Kw7t43bdyqk738Zprrakeznyt/ll+AOj0bCunRWL9hHyR4jMrbvMYnC3E56POz7gFzGkT4V490EL535TXa5mKq/G3bk5dLo6uDOVWUlox/hc3ME2kfQGX0VJzy09kQ2eGm5B1QPrmcoRVHQtkbq69v7QUYsGrJS753zdk8dnebF8N1uiRX//QU/MmhJVce7DvMv02Vktz2bVQ2n/XORbTlD185eWbUOG9lFmG+CPnDEPcpD+xXVFTNez417bNHS12WJUcf7P0q+oGEWUF5w1NKC19nPcpzPmN6RcM8KVOFWNLdBOE6hIEsNg7uihkB52P5jbx5WWtmeCzdL/0iUzdvL8brJ9fK6Ej1I94i/ojp0h/2kXspCsEIXkhQXrl5PKLntp9mJ4MKCg+5Fa+k0tgiXLUu/nX2vvSfTQD5MKLm75BWDM7hyME9RSECNaCYXrWMozith8RAjx2MPsdzAthQBdtCCXbnpvYvE8iQLamPSPQ7dviT8ySDKI/yN8ddJbcChFtlSEKtm92thEvVdI2UU3RJs2H2YqDTjbgu3VYi4lXjiwQAv8sJiL/UiahmCoXWr7khQVFWXxY4r6IRddoRGKFl8XMx8IhiFj49UsmqZhiJqgyY1kPtYRphq6H7RvVsCi9qH+TMUAqXujMHEZCD+uSHEug/cPe6tdpVN3+7lN3Om4N1271WXOKE3JWREgi+whsWUmUB63HaGiN7W3CGWZiHYWWEE45IhY15BPHmSNV6zGU9yiWymcxuHvN7O1HLwXsfajqg4z428W9ox9nA9k13qFQjTmJqFwruiK28SlLoeE/TDHCnz0YPS4LbqHrtDBiDneAeYN9uFkDi03d2ZW9s7LvYbbJ8EXrrWikzUl2eSqRmr91HHdz9i3zpmDOduCquxVVGQDyQPl/Xo2l4ZbHF2Knc3b04jcWKxjFsPnw77GiPmlP9jQLuXhZ9ahrVF+Sy4xXA3KSJ7vaixhNmc/sqqffV7lYW10f8xy9J3byzlnskwsuyTIo5tHzwAT72K2ILEvZ9k7Zuc3EIaILDkH1azWEdHjYI1Mqk2/zLZXlQTR2vdqKQxkdwokcnFMnx9b663AlulgiAiSzgoYdZdT1KubWktaoWr3Dbdq0/NtTHPJKBgg22inBkOwqvXquYuFdmD2TKPILyJ37qnzMyyoTLstn9B0sIq/gOeXcz2xMHc2SY5KupdNRFfiJsnYbN/ay15w0WjtTPbxg3he7cAG8ezHZ2sjWMxZP6Ln5OtAsywtfmRkTG8x4CyVx/xdzxtdLO4WlYWsOc4YapZsJs9y5OevyeFygay8yG0zSNegIsksFytwO5+HAYVhidP4czSva+9guazQ5p3vrvC5kqDDWrJNyrqzfd7CWB4cGY3P3VGtHoj4t2pYafbMZ2Hcusn9cM6cLTR00U1TZu9NGa/kkZzSUCb1diyuT7oj6QJsKIgxPWZG1d6GKL2yeYqglV94oXCop2dOIebjBTOlLmKq+c8Ka/vaHYGkg3BibVW0ATFlP097gawh5ArICh+7KjOoyeuQaw/0LqBhmVoN4hYbg2H8/jqArPUGcIFig6u9Q8/Mb1U6E39AXNq5lYEG9lVJ3LHo+VE+PhOyAVOtXmsSaXxnSyAMGfEKqKZVahPDFuzGjwc79gYscpmPdqxPlU0BlI/CUsP7sECD3FKIPuoxi1Wf7RDKZuTODrmUM2ORLdu4N4s2gpMP4vumZTbaTAvdhTmH1dkEh9/A1JQpBU91p/oNFze1QBd7LH5y7XkY8iNNgVH8nS+pAi852aE18FbFCzuTh4kS8Zid3ivZRQSS32Z7w4Hmg6+26JO8AK3+jJIhkkyRPJVNOhXX7XJg8r47h1tWcI4/+TNd+FZ4GvXz0ZDo3Mnizo7RXbQD+kiUd+xMV05mNLcsTm8FWt+Phvv1+N7qpAlUDnaJbP1FPJ7cpDm9Q8EMK1n9pVPUuREYdjnAnYX3IZukXSoqynx84cfFVNsE9JlZHTdvJp6xiYHdeX2LEh1cPplTMRwWVzq75x89Bcez2K61luirCu/7rD1isYwGo4/LY9I2zOTns9lhr855aGaB4DpAlz40AafsL8K6bS/fLNwrEl5bJwFvEQXfAnBSeqDIX1xdbgFJ8GGa7J+psAD7U64K+Xq8WIu0v7CD0IXGprUaylbQhkWUzfVahG1Utb/9hrQlse5ugzFTiSAFLzgEizscbORNJ3w+grxZwf5gHMyDmm0OjGzcYjQke6PyFcs40KatE9NENxcc2XeOlnTbtcU9Cry+hMzQtFlFs9S0PaSGogf9Yo5W32QIo22xRJUpUOfI7f60kDD67Y1soVvmMMlHkdlYjJ6BD4l3y4sjdLNhlaNr1qzjzBQ9CkWPlYbLLO3ljwQiVwdTEFNbiqGSXr5vcePIE8jIn7t+AGzIEGct5eCWjlOiactcnqXkwdeGh1BqOdqqs/ytHwhSSF3Z9cyIQQZ1c6faorY8Q0kLScKq1n4Vw8LJlVSzg4UiHWMbFN8b7IFmcbTVqu1xTifvP+3YKm0K9blPELMSAh6mlwsqO7b01X77mPt4GpZnnt75l3qHY20U+w3izWtjLJYLtDq10HmKRHll+zUg2jqdddqZ56DiXnXKCledj8Vdk/9k1HxZe992LRyR4DhSmZ0/yE0GiAVwlwZTbALqDYQDtu7p60FozDpPCDu27JLo80uWcFcoWT4LRjYfvo+GW7hE7ngJSKA0qHyvTeyYCwnMv7oXbA7eMXg5Wbu/j13pGgoxT16vQSTenx/ozvPrpG3+vIYLOFpr5/1Dyxk9HTX6BGM3y8kS/z4VS0xAc16Es9P1usW1N8O3P/NjlS+J6rAAnrmDtr/JcShSYfiMalgUIHvk652kNwUePcx2kg4r6PRWdvcRtHMP0gE9tAE/sCEuyh+tcnkz+KQAUmwCvSr6sPx4QpaOJsetaraZyf7MRYKMi4VEPmRZAJx9FhBzwAF/fADWplX7xtIwtrhr3L0uYg43sfaQypYNNDb5foKKr3ytnUR+LVK3CttBUbvBgGUBFz6cT/TsVFpgIz+WB4SsIbqonUzOmNaN8rO0qZjpEcv4WmMz+66/be64A7jsH6bJ6zJx7jJHvbiXI/8T98XL8deT/jh8qdcV45NYfut/9ea8HXOiPHrzlHjpfSNRfRW2x3D168eF66T6YHhXrvOuXU25YIcXb/96vvOrH75pFYz2ZO5d6YYSzTf2Btr3zpk1j5bnkStTfLvFPJmf/ucvWPb9ELsdwg/PdDS4x4TsOFzgPkI4gp4jbH9qAQ5fSD2Q0l+DO5NMw5kxlkZGzI1QULnTfNAayY0ucekZQwaroMDZgDt02kmW0xu1IXBcrDeX8tpT0vL/bhNRwTD55rG2+UQuEVGjLin9axtk+hbBm3KBYx896FcRJZIWcntspLRQTJqXCY75W8n5z8G0NA+EuUlF8E01GEVaTgvLi2f/P5OHrqUXfhJOzZ9XU4V+hzb6c1n1yRXeU//s5berAC6JWFpZn0JOU02SQ4B+tUN0laUpyaOLQsM6V/tI2o6HprzECerMnjRwNNiRDYlW+Xqfln2guQgdC/BsZMdEiMBhlLSi0RX3vuFx2meMI+bLabf1VHUcPds+9rF8kUY5abs8YF9+umrmzNd8DUOzemrx5CB8EezCFXbilZN+fdrZHF/tb8vXPlySvPP43vbM9t9+ho7clEjs6Ctnb9Tfo0dsfknYKzmTSRhRSKSrlWIayohhraDSNAS704XRAY4ROx2a/IcvaT4ZAt1xk9LNBYwJ8wJVcdrNxPm4Qwre6P9fCD255LRo1pOEZ5zGU8qVD6R+wIHVYstCro/w2w968DUSc/51hPs4U4nQpZaKSQe5Ss5GqO0oRb8+KXFJps9+fObeq5hk3Kvz2n0x/Sz3Rs/+qOQcy4NTxuI6kivjc1s8+iamrlmLfjWamrJb+e5dmt8MSFpbIYYRLwbnOuhTfF8H/JyDbkgkaZo0BybWZ/buCIzlaWTCv3cPEYqVMRei7IC3fq9Z5Vs6pdCrehwo1TYWnan6QDlC2+QANGaaARU+1Wg/q9DYzYoCf08Uh420v/7ELXtUQ7jIw5TBtlqAaQNnYPMFljIXHQy8cS4JbvdicIwPaGLrh8wAIiySsisAdXKfdwasP9g6nLudR0N/rqe1vIQbeWIuvjYnqvHInjUijVqTx0ItN/8/ZfPHbBZE3DzarAkaieenQr+xEi6nWhJmy6lhlEbSNW1KCQSY0kYyR/+a7/D4I1NVhwLuI39h21ixNxL7kWd6fTJbxWkDPdNLDpSVs8+6iitDdpIaGwDshM9AyWLhPGRjY1mw+lAz1NdVFUCjcJONggM+Mt6+TnNm0UrjWCm9hOgwuau5E0dwaS2h9BwgydMeMCuNJn7utIihD0FZnReFft/39beVQC9cnmtvVpZOBFc8pOgrshQXC2nOb0HBZcxD3hIQ48VrINixK3j0dsPXdcSu6HlKWsebI6Npka7bXStJVPXR6rGPqeHAsXTYhCjXtZ47olPtyoFvv1mXgHUuV+5g5Fs8xI74AsO+iNjaWkjE7vKMItioRAgntuwXnUPu84z7ZlzhIlyVXkWs4i7nBZdbz+SLuXsfT4f2ZVnizANY/znf2dehzKQOyOYRjRwDoJ//NWMYzTPypAPrWAhQn+GRfS7oENO/y87VyIMpbXEW/7+hFDEd55+M5+NXy9MD7J35J3a1x9w4dnk+Da7I4JY9l2u/rwvaQLvwH4qI5BjhPek9SbskjsjUTTfGTWI10w/bxPn+JAc5g1ib28BqQWHTf47NQma20CplRSpY6iuN5TNTH2ILTs7g369YTdIj3rNX/vCtvkacfOMycGOZ+0RSvzbWY9NSX6/+/EPOtqyQB+Zlhn2fuDyUBINmQV3fNjbIyK714bh+BWjV80rDelcIdrlLXcgdzEKQ0tluKzWyRyTbHhJOO1V3YeOENUfG9pn7pUJsGIuda6kjs+Bq+EHvs/T4eJH7bodHgIusAZ2BdGo+1/4rAve+sHfZ4kT06E+MffqPz8S9GsJsk5BksrTUNXcrpmSLJbkjga9MNz+PefHhiNoEFkJWZKlSWuAxrLXXK66vIefwlNW0rZ9O/CULI5DvUdMIMsvknLejcqepWK3xU4FJtkW3QEhbYpyfIaDYfq742RhR4a5HDZLTdjlw0RZO8SUnb0AN1BU2uWUR0uZzKyNQPD0ywnrsJI1ihqe1UV+eiOblldmtySuDM+DDBe+qg8Po8uGkLe/8A4nt413pfa6Mq/Aun67xAf1TYE2Z7iolkcnNV7+Fdn1E30S21ZexwcPQyFeBdK7YYHBcDAxvTHgBppJycwSWvGxGI20vqsTdJWVHiLGXa2zSP/7/merkcgmxuNa1k6D9lQFGR02ghgmNc91S96MH9MPbJiIkpg0VL6s6Ht9NgSXeP3MCN00AkH90gtuKD0VsAZZqBLQ3prKzlhcmY3C/gDe/ZqN37zq1rHGqXoWzLzzDs5E7ETj9iud1+Kk9hBLoHkXYZXD4kJ25IXw6H8IueBS2GRP+hK+In3WziFzoFk1sQRldK1hGG8fTDmKdgm6oevOAiLQUatE8PPx0bGy2U0Cb2QrjLbogNIekSTQfxsZoYzclyrp8MHz4H2z1H/injiR/dO9eNKM613n/QSPt6rchz8lWG9zs/s4+eq72eNuLStyoSsOgw/0tiOVwf8bVk9SLJQG8VoX6S3XsBDgcUCICB6VoxelELv+pbKb1QuWewuuJA6ejntXyJtyWiOg5A83W3M8s1GsV1YInOx0+HYGgvV2i9XKsvrbecJPSZVMYR7pdocCYwzxR+e81lqXz6dTWkHPELpo6thzBauvmGwpolgdZgieddFkBbkvR0u0HIiwEAyleIlNp5257ByMExzjaTrPO+q7pYIIrh9qCut+d67Rc9Et7E14X68E9u2edHlPgdxtRbuDjjyAOevjPkF98Luk6aCgTvq8ApbE1GPoPcnGek/c6+3+2mzVJyYuY8sR5ExLLCwj5gyb8RldTMNsiDJT9cMrGTa2VWsqc6U2sjnmv218Jc0n21z0Oh7daB2MFvcRrXq4FwTPSEMpGQ/EUPY9jQqdW29p42aNZgmPy+eWvrj1O/pChTmVOdH7GPygmwsW5eur7OWr/D0dp/eoR2SDl9uF8GpDKIx5VblUKMBDxOFJfxsK/qQ7sOm4rac2inzolqR+M1j4qpsP51cYN/xXhK1nQtdx5MBN2loBfG9ThsjTuVoc7yt6x4vvbJPE2WoQfOiNfuFJ074E6J+uc/7Zrt6iiIhQEpYK27F9Fmq15+KocUaU88UR6E+D0b+CNOKCtO3BDYcY98agFiAWnbg+JOeu1CoBs3DLg9Nd/qH9ObTzA2ZVzgPyVyVcq8MjmmuZj/7JdrlwqM7kKzvt0f7KgM/G3vfZIB+7BY1riyVp5G9p3m3f/4ZcWbXsP2eFXLConaa/kzxbxrqkSxIRsMouXovH+1bW4vyg2GLbfMn+ZjZ82bkBTPyy1nseBj8591Z9UdpflBPGMOlFMbGQsR70tLFsYzo56T/UYnijkqnGFlp+rN/CPdE1eUfEyRvcUX5GfceRPtoLfaMZTbUNMZrG0Rxk83A978bMFjZUSquF5PKWOVXjLvX7Hu1t/bxHT/cGJQNAm7u8DUyYrUqN64ez4vvpC7nHaZEfvEvxTHzcMzkacU/MMVctvLaKsLLex8DyCcdciJPUXimfwA9JhuzpuTvfN4K47EsfjWh4LxcjmdHcBV29bp8iQXwrnThq5mNvOoormdEdg3kf/sRa6V4y7vnK/OD4KvYAEh5kv4C2Ff7NP6grlxtWbWNsbvHi7wjWaFTyo6HeQxfHNP/1NZRlck7Gfowfo3hNxlSNUfWacN+sDQ3r/RzR9wPqlNz7pl+HKTxTHC1GtGkhEAoh7DAH2xgHeyc0N3JII2lSqdz11hs8njPU5gOoMzsp1XA2fZI5r6oOnqJz9KOEQuz9NxPPYHkZ+/t5UpFdDic959rOuDD3ef53r9kZhkTpFZOWoriylSMTEimOcTc5kZwkpJCqBmuR4p4Bv53ZKzrVttLoseE/mUwJRRVY72HlcSSnmAHvVIShC/vf3KEnZoFEpJyGJ1OOwiiYWfNzC2Xm0BptD8gGUfbkFCSuE3LvGrp9/ACpkfJCXkA0QmRCGLCJHX7z2zJL/8Wr8J1VQn0UpYjORy6To4/NtJudJ2SHBcTjp70yrGO2CgOyNpg8FMKvrV+AIF7oEu1XMuUp06FcAJHojYWWf5IfUsAWUg7lHcYhmPr0lLkqVnW1EXDEB3EgYLhX29rt/0TyS1iT0ChIjN0/ceCYRs2CrqyAesVCel306COm3EmYLNPetE03wSFeVwcTXFWYnRspubifrFAVLLzVk0Te3+yNgoKmSMH2t9UY/biL0wv6cY68mY20rkubRvEf15AyNk2PaKWIy5RksukyZMooMlJONCWh0qCg3+mXOE1vlIVp5WhJfd5wM482ScmvxhEp9aoSeFqGnSqi66TL8b3QHeexJzjCdJIZRZykjQdV/Oe+nP1dxRI2sTEKGF90wwT/Lds18WHT/0J31hp0oSMmvp/zGSeSpI8HVf3nvpz9Xe0aVbE1GrkP9fSIFtw+/svdlPMm9aOwDchYGtpmLEhTs5KK5QzcNeaSdFla30OT85eW5u9UqnqnZXqxegUAsVwLxZ7FCr84G1UWTy3cW8fAGdEYY6gp/SICyG1aVM4FqHCP2db8rkRE3BQEqZGw6D8DSh/PJlyP3g4ghBDA5BNgSyra5VckiVW+wOCI9gFAdQNh0jjc+/rFMLxLIYxlBisLl14l0gaILx/V8S0a/BEKXJ3R5QjxQN2mER8Q24LaRKWRm+X64ahWBiG3A/Yp9MlN90y4nXc65nHUZfHfLcrxyaHMgUGySiLI3GqAZmsUDkC0wxM/OhB8/apePfLTPTjaf3hwVbJ9QHCOZuNU0PXDAl/g4mGCvqRaPrGnZ0gEdAoHf+91/UH9r5s951/siajtj6fiuyCbk0m0Ux+9nTV9LZsgZMpnmBDw0ZRf4y9UF/Qd7/5MXOrh67oWhtDaMSq5sQY5Xom2sFfRGyyRIX7DUmEYWyLPgiW0ik/ejiEyJIjQrit04tuVd4GsDIM0GwNIHNrLXDD+BQmuZK7cVeqXI5F3iOLpKsSK6SMOkmLIf5jwPBWNsiGQfMud4hKdR9HlawuW3ZLL0Hil7MXoamN9EDYj3zQeSPD779Lz/xfQZm5fBZwF4dLtUhHVOu1hcCVizZDzOHtLdaBavfyB44QrIRSxYIVIpaOOU3c07172Jm74lTP8GnXIha29yXwjcC2W9e9USPPRE7V5W7jrem8OvDzzfIU7pooINyBIgMUlxrmdQ2UW0cnZjgG3jOQI9f27J+Udtg+jz9ajD0Sl4nsDeRzvsL2XUed8DYmhIHA4blfx5A0cdREQpJoqz2GoluMTzLDHhNixHem2BT62fcgxd2COp2GX5dbx2TOgE0p6aXb++V0yzltqprVLAHUEPh1uwTtmS6rSGF9SxhRyShUoGX72xgnsiBbPx2Ar5CelCq3Y2hJbKKSE9tG7reyqf58zs9MbG7jrfLFnSw/rfyL+a8xyWY5+tJ5wf6o90In7pZF+ZbG6oooQn4YUCIDJsV8SM2wN/p1F8IGjdjBRtkH3KGR5kdkAr2wrEgTyQBxDoDUxmV2UvFao7il+tLikz83+TVDWNRtG4K8yKO4vLyYskgQYkPQMG7His37MJew+SkwJ5xAhbXrtVGOVyMuA31XU7Ki0yogo2NdFlsn3ZzG+yXyC3RIOIRgCUywJbw7Bj38OTR0Daro2kLIAv0P6Ob+6jK1mhx4BL2YipQsiZH7T61m/rswoWYni6i5ytaBx0yu36DxfGUoN+1oY7hMG6nmmNpAe6vrWeximyCUz1rHat9/qSr0l8oC9HgI3KmGerB5oAVdENNnve8jZotYSb5mvbReb50ZFT08bQ3LUHjKnMNvtPMruKsB+u21BKaWitEVVHLrE7NqI/8JatNZcvDjsAfTL1F3pkYMvj6Gw6Oxpx6fzs49GF9mINa+0LROhaCX15hK6L0OUJ1Y3lDOzvzQYjkpnedvUdjEHdCPzZH/6aRkwq6TsvR46qZcPhxOyX12AWSTnKSN8xmlz4gV8ew1/TklFFfafrnLNqufE4X/ujg1qJT1hQVxLuXE1XZ9/BmyACA9dmh2+/5EG/FAU/1Vh0zp6mBbNTeRQHwCKS08ncmD/Hl1oZv7QYLKTwjnJYlOvOq/T7aTeydyfhgVn0DNIcjF3hviv+cjLPAzoAFvWFGv55iD6OnT7z3FCGkbnFQ33a5nn7p6QIQzhzCHgnh/R+D3+nN8j4J4qXib0kUYhqT2XYU+KW0aBZBVEAg7oahzk0e1WluQ+r+OV47YQuSOjyhPrbYfzK26OrLA1dLrbaRI6q6upvuVl/KW2nfgoAeEXQ31FEgSyKrTM5jTXNUWX5KX9tZjDVIp4IrNd40H9EK15RZcPd8MiWP9jhZuUKOIRNj38xjiT+iWmfIR4NhOeGR3/4kr4KINbxlmfUzfnvxHLeB/XgTl9Mj7j6sKDFvKfpIGBT8aWKyuXZAG43jSuUbkvXNndUkMPaBH3ZfLvt0DA6JyPbwW68w561cPcivI3rY07idJjCloYSCgkF4BkRllwyEen+hNV+5HViai/n3sfCX2mAU63uUGfc7murCX1KJVLH2XrvXLvzmvrqEe5vWyFKT+IyMtErORuWFaOgU42e0REPAjoAMFWBYZulT+0HKIKd/DTpT9zCmXNVVZVhK6dbZqQGOgbVtLeHMmoGwBhBQcVn2iYKmMDPqn+7KEEENQHjttF6uYhk94Mjb/Mz1sXIEW90Kg6U1BYTstFP2iZkb8ljs/I72HnfEujwusi/fnVuRP5l/sqPaHlw36YfqDUwt1zPel3V1m35venSHeIa3com6I6idABL08Fud5FMW13jAlP7bOtLb4hmcW8RAYhpl93a+v13e78mqZ0OiEVkcZ09Z5Qj1Po+3AquHnL/2hvS71gKw9fih7Ykp6Nbm/lti2UfKmsHiXE/Y7GiJffnw2XvN/a8l9WG5+zN5ytYsf0oPhiEdnbfrsniyK/1PjE/fpkDowyprXzcPnXiEG4H9kP4EA+fPSvbg4X05EBYJN1XvUG9svl7mrRtL81VhZHatgaA3yOFmrhk6MPvb8lm6ZOFQ+fj6jAfyPAxuUufNuxqf/59a1HmROVtA5YMyUYNM1b8fmtKGd1Mk+YXpLDnuoCJMQjaWR9oqy3SHGroiLomFr/fmtIwnbXVoIXxgN1DdHzybzJR02Qlv6+mlB1Fr7UhzMefa665/c8EjI/ln8/aT4ntb/hBgXLFjEQUbj3HUOrUNzGLVDQ6V/M6XklL2VnxT0UOTV1zRIgJX9lcl62qGDbCvbqqxw5mjdbVky8qdL+Y7PD4pRYCpHjrmnyUfs4ytNw+AthkKccJnZ5HuzU6mPpF+Xg8VrA5Xi/lPnFxQS4pT9JyKSvLupoaPM9zxrH9bHhtC25vBgF9eCUOXQn04Bj6vcRR8yVyem4Ttm9xXmOnOxXSHFRATykAYiXFSWzjE5A+gNShopfTKAWHlQ7QkGDD96ZJEvzxo0DYEjdUAhAb78icIzYcefj1y5WftDi2QH8iAH/iSAnMThiACahdAWD/pAkKg20ByNv+o8So7d3I637Clvr8Sb5qqJCX/qR9c5vmtzqgpAIPmdhJ8H503Lu5k8yPxwQy2xKfA/ewIuNr9ONA4f60iz9qmp+BOX+EgLLpkQIrN3w3rJ5kXIN+tBjGM7AthhPlK8r5oLU0s+zkzlP3aa7TNmlTB+MbklbU/iWH1mdT2xJFUW6Qn50p4dJVGZNMRLvbidGA0Dr9hv8BIaMIk8V7np084EAF40nEbIMD5o7h0n2w/D078a+vSFJeSJlRkqH09s9PiW83xSd5Tnk6GAfu5jFBnUk6KcDPu2z09QtThOxHRABUOUM9W3gHBOjVUd/R0N6SJZfpK8eBErIpz5Kx5xuw+sN1UtYxnCaup3HzPdv4p+05XT1h7xsqn5NgI37LRzpaHm6Q7K3PTaKgH01RTqzohTFH6uZYcnIveH4Fv8upigVGylzWpAwPbh2rc8Nzr6JxBUzlivWy6SnIXF8S/Cw3T6/BlER8OotKLCHMTg7rk5xWNzUpWf9yYKTAUN0Lkr8iBPSW3iHiTHPhOX/KrzdN2689MEkBqDW9e/k1KWh49BlR64w5js3y61SR9kcilc6IZku11so6SNhh4tXwjIeS2qdtmsnis7edB9tKaxRhJO8/fNWvPJA5FWxdnSZKhuU2qvO0GldK6EKEro/QtRB6NkL9Y7f8YU1q8fAQwBaO2UC4/4hhf5hUzqU+awsCjAw7Tz3zA03ZD/QLZYJc78Q0/0VOwQVItJyt/uls/ipRJLd4xRhCZJXir3q2GNivz7Ix0k59grZdkaB0MhhsGFUZGhT/+Xj+hqVG3d+4gFYKSLJ/vp6/kdFUfA0NCBez6DrPT+sZ6fNYn8hGVYI6XoxSo56NbRI7U1PxlFUaVi+2SqY6EazpqZiS+G+cS4qAp+vkVXI5+A1PNze5JoYd3Eg9eV9vwjdiN/3W96z25Kvev/weeR5DZc9uD0xIdKv7p9/HM+Yb921Y74jC96yf5fBN0/SSzE0IpTRataFPgOaaBHRSOjUHzUw+ddqcMrU8j6STNIWMUsegdsx4inEiMKDuxtrs0qOmoQTnz/DlIse7+bMhdRrt2sQf+sTPwPQVBIpogVzMjBayOFyl+6mIlr6S50kXCwIUDwx24DtpcrzxoPqlkP6HivuBKxN3DL8oga86kl/jehtaxSIm7z4BGRxp1Wa735BWxbuZqv82bQkCcwA/Izd5plfYN2uPenCN3FJb3+MQRM43dmSzvQ28MevIj08oN+cwEOfX3nviJXzABlYNMXAyN9yv6MURxquGL4VVXthI8L7FMA9gg1SIuzmCe9XkpWRNZVIcskMO7kRVQ6VOaca26GXJL8OJwkqZT+6H3Z8YEhmRAoxJdj3GU6bzDuf5t6dJX5L5Ke9i8vYF4j2BcOxRkJE+HBuykPv+pIQU++FmBQ0NnaGHsHcOvV7BLSVXF7Bu47+e2T/wRmNwNPd+b/3+JcymEPb5TN05yQJVTttwVr5vjrPGzLkGm1Ppix8Pcp2whICPlUNgODsEAsuGQG+pEMgYQu2T5v1lISXr1zwotNwfR4pVANA7AXBK4PWE79dfgwe/NsksAkm1f5y+X9NFWja9k0Q/w7SCOmMpuHpCFyd0zYSuj9BFCFnuR+A3AE3Zr3fQ6VvB7UhrAVDwAxLtgx9NteoTlFcDoNMHO9JaABT84I84rWe5XPJyyuVql2tcFi99T13ouxz0C7IqgD1fi9SAzfeIhnwtuZvXJUamAif+ak7ND3/wV9yGAPb8L5IEMDwQwlW1q4ws+tcUcuB5qIS/0Mu0/XBODXgShv2HSfh1XiJlgiP+Vk6jzs8zmNKMV9H3Ql7bgH0toBg4jWA93xlWskB3pSgYdKNIs0wU+M1RoNVR05n9/gKsMPbrMScFAHrNI//9GlUMTIUaMddE6z9dwL/PoERr8TC5sB1WynMyUPTfhM2vysjkbLB3yxfRMlZ+1IO/csX7QryNZ3+a9oQFBhlE0FA/c/YQXYjH8kMq/OoFhVVVrFkiG/icXsggFdB/+oUH5BQ6nNehmJZRYMgzPciHs3ISU4Mv+Z/o6lCoWgVHAsu3bLcnpuBLS0LYiUnH4x3cnB/vrZDWMDP52cEqTWyd5e+O2OJrs6LNS9tjLgMQ+N5e0SK2VZaSPEe7vPSsWtKlBGokNE7JWDhRRaOEvyP0iGoyhca7jG5JdDc8kl8KsXuDIjaP0SAyS0h3qDUch6OPARCshrBdlsJFx9EYuOhN767mYjzgrmyWNs0Rjl/E3caoqJQYLUYvEx+7bTNt6Xut7ESyEXBpxS3iBdNo5RIZ2dwZ5yGhjaU2OEpkgxV+TeW7APIpoarZXU5ldmRJLFxjOy4mNBdP0GjB/DUhFGT5Hmb4rmSMmMt3qIiCzmfjtZAoDliWLDZzmmotT53Jl6+kl2Z9A7zi3XJn2uzjzTyqYmgEe0pGPsNXS6RNZf6Wq9Zm+OFeyg7ZeF/9zL2mu3S21nKa21yOJRK5QGzxHdyhD4e+eT56ZmkMstMLdActKks84ax35r6LzNaeWl6GoM+KOt+iwpeUoRqHSUmoxM7Z54FNU/V/huQx17jJKuhL5+hES5MgsCoa/5jbljUCIUtzNYT9DH/eloVApUyb81rwEx2YG7U3cBmYPQT4MhAe5aA7JVaK5xt8t8JdoDqOevoNTvBwt0xTo74dl/XKDkRc70kuksfB+9TuY8OlYQeDJY8UDHzPSWRYBZ4GTssYmatGxdYAeT+3d0M14sbAg3oQc/OAU1dsj/X5NNBh9XDtK20j+YkrmOrt81lemyhLbiXWcVTyoDBUDPHBijHp7Nmu4+PAsWz5reB18YbgU4Y7++U5flrSdHBYeuau21drTFoflcBUzdlMIeVh9lb1aNriXcpMyfJf329AFMfisPAHIj1oXU1shGe1YInKjhwNs+ilygKyqg1Kba2nBAgRLiA1PPxTPwWvBP1z76IKSnZ4OoxNV0yV456Dff2+geUk380/mSX1iRef8/s5i7L4U3pRCJPLUlkuo+xHCq4CUw2nj5zB3bwBQ/TvT9CgZDhJwvJwfG73KmQ8+6OSexfS+UzDJTpdJmvMxYLr/Z+OdCpkXc3JroW6JmKHXcR2fSfZ+LzV0WKv/vsIFt7wBb+IgfXNvguRj/6cxDHzPxkrJNPZXcq7XT3CN5185x+9SCSHg/8XzmGBczX64KYjbU15MXZyIKa5OXEH/EFuaod7UyTxLsn5GT+Stz+shEsVMchHrC7vSRlTQagj3p4IBIVmZnxjr8j5+lkz0xc6mxWbBKHY9Pqrnkpi33yliyd8+rANq/ovgr+Sfww5r8FwUTZFqM67ngPXaN6WFJFF8ldsF1NRID7tljribzTlvO+/lQE99vrEosuu4kFpuLtUJ5uzVruer3gctCz0FjxVRIYz4xixj+zK7z6XF95M8xD2kLmJ6yHwC9Gb0CgWxHKli648E0LqyFljAGme4WwS1xElDpZdEIhXjBf5bfyqoeH1+pjVfKeqjtEFhKj2azNe6IxzNtkarZTQhPtlOzQSwV/A5cJmbsuW5S3A/XTag9J/fta8t9pd0DEAI9yx3FJiJ5xpNYdmIDAHBzH8cnMOTLMxb1AEPrWzQPaSz8TkAm5WfLRsAyCNz9Yl7pxI/M2aZfFgPWmUrgFXvIpTVCQ5zK0OHoYfWYYfglV3rDmRUbDhtb1gtOb5yrP7Iuv8y/Dmny5wJu7LscUMgKadBg5Ufzaz9j5UiSNZ8cSU9KlKP++p/f3FQvwh118wxETDpkMrB2awJ1+K5hsRvdQ+4AB6ONrZQMxRYPRN4t/9I4FCLk0cm43/fZEyRy4Y3+UBnxbwwfUSsMMdLKK2C12XV4mju0Ou0vr2ncQMmyLFrBesZzzmxF8T8utEzKkk1PKvu4UJBeJP9VzgWuqzwLHLBTHtK7ey+fRC6kuiPmCS7mq/dnHmm3VPEAOB3dQzZThqXDAHsIV21rkwo67WL08RfQfi9RIqmZcKp07R7MYZ+FhOf22vh/+Ii2PTJZ2crxFHmO7nEQvU4WygmgNCn7D++WxX4ivyHM3imRVQIOTlNLlNYbz3bi+ctoSf79zxmvQnvfiGzvR4Xp52twn289e1j9XsYfp4mOH7w5PZn00xPn3F5tKRvU2X4DKgHGnamBpZyhHceyFO5w9ocbRBBOWDsjmJR0W8mGDCn07Hke/pED7pxgLnZVX3iBu29QL/7/DbKDPmNKSthVbIj2eD9xzi/8WAr1DXPA3z1z4ns1c/J3O7Hz6hJ1bEQgi5LPOnEMBtBtgULqECZlrFR+7pfFQMArORpL396BO6G9N2ledRTc9RCevVA72OM9c6+ZzuF+fLKbG5ngSImaFoDmAJ3s8B+FUUmv+VD+mYBzLLoytFRUv+ttvVNtUKZ1nyQAi4rhk9sP9L8Hq8a8e8JWSWWWnW4Am6++tJ36/BOdWJaHNJNLPW319ZiP4GZ1oHWVeNiYHUd7CkddpPZ3WinK5e1Sq81HNi+bFTGQTORhfIuml806GcDHg0GIvtyzIf6kTc9B3BbXnAt9Nq7wwMk19sjgPFVgwUgpOSni87KQmVVEUkhQjKSzjwjNJxlW0e1GbrC6TlE6e0HyimBMt7it/ycr1O2F1QN1Z6ggex2WDxeS2nD5UXf/4V90rx3V4i41NLDm7NMR05gVMFf7ThTTBguVtqZ3PfjiZGc0bHG3MnRddBrRKV87dh9cqE7h5Sqh8MUJjqtFLzKNc2tR7ju5xmeNM5CWpSZG7KgA1AIlBSwE0ZcLCsDjwLAm9vEKgp2mrJVJZA+0SNrDHGrNuFuP5KHlpkJ/xwcGahRczjACC3DcDcNMD2vRp7Ef4Q/i+3TFyDYLfvfOTvQO3gaARrmcaoqeTnL9NYfKvQTdIcXjdZQLw1q6c2MxxkNDh9JFwNRZsu7W7tLp2E6MKnIPAofY3IPgVtvvTkwCy4dI/HCf8PrRQzSdMViRsaMCBD5pEPwvPooIx4GAWQbafE5grhpqqhAf4FV8JVmZKYJw8mc6CcU1BHOU1x16OE5h+httpVxJiPcrmvsoFYLfvBLedXtJEr/ulbdtAQjUeXWR1/sDJrsaI4OC0QD5az/GaY9Ao7Tn5Vxx4wu+GTFf1qDLYIGsa+MdZoMKOd4QkJWE6hkFEC9zTrRq44tTm3C/L3b2S5opFao61VWS3NEAenCswhXkOrJ7A6sWEyVVzO4esGXRAhF4daYH8TDpUK0ZXKBB8vw/JbqaqEUFSkFQ8EgkdfdawJy5vl+S57J/HVQqJrPbcFzrdfcM1Pdn78oMS2aI/NX7MAu/z2a1ZSc5BAV+1DwlN0TxuOR1RhwJ4DC2PTsc496+ib0mABticiKWlsupcOlMfibqiFV9ecFWOW1Hf21TfXVE5kT1gSeCAdho1X1HejQ2CbHr1U9CuobHRuiFVEN65UQy0nY+QtlWx+uJLwFUI0IS57rJte8ccpvLaCUpNZaloq0ZJ67Ujx0ow+6agYg4K2y6Dh0zygJuL2Wc344lVurCz28re9uxt7+QCYsH2OZZrN7kGeNCYDPnjLPGxXBnK6dnuezYn1W4Hbu+lWvutmHbfsuTIuSPsSzL4af6yDCUEPDilTvVOI+oBrTuNx5csEiKn73h0ZM+dusb9BQrzrfMjChH62j/3DfADuvfkpoj/hYwOOWfidp9FOlb4o/l3cfGdnX3n4oroxu3sGdtKy7cc5N2BrfWMY1sWg0pZVglze0/UOtdLSaq5m9aYEUXPDydGp8plGqIM+dgDv0HLszarizI1+6xvHEoWa5dQmqkvKCIwh4LswBCwOtwpMR0i95i7wHGfJqkB9pmtDI9HnVMNUc6A5wCjEiln+KLZ0smnqw+63XtQuvm9TxJbgjlAjZsBgqh9LwGZ6k9xIilT2oxFqArtME5hPdHWK2zY+8qZqYoVaQRxLDPU1oSC+jqLSmYeESalPTaTQuzgEwLACUBPQMzWBuKvqjKbhU3SeKPnOwMLF6WPHnxY06lFOSMt/RjnVfBAj/NByFi9fVGQe1Tf4nmIRcGB71U6xeAdNOAB8n3eewnqZIboGtvjC6VcK8NxCmLckFmMIPDJu+P1X9T3hCIF+ZIvcwW6Ziup7BTXoI3Re4pw193NuYAYaIkgj5TvVTrDAEHxd2hnsXiP4gaUqiBuRn0UiryI+RX9MRHUyarOJUuWCZ0QkGNbvz/6uygEMGCXZtgfWzOpmIugNqKsW4TCm/+iELNOdiQK30ec+8ijw9G3K+A515svHe+6iy7QZAwmzDScb5fraFM6x3exUCO0cDSRxYLjjxt+efgkdpM1evJ83yXmzxhdHaQfiKxrLl2Ai6yrUHg2xUWmtp7cGT+XCO4XdHGWekOQoSM6y1u/tqBpmf6UnusvXwEIpm/IRIvVQDYJEpfuWmyxlTr9SOnAuXwYNeZ/W0mCoO57rQ+hmhYaD3K0tMkd5/hJuebUKEaulTbG+Appmvd4IMqzZO2sjY2ayTlEe/jPLV94nnpSUMDLh+vLEFJepi7ILGSDclMTwFZ0ugJxu+6XL9uSQT5XiSJfyNyGF+NOKY5V5sxXQ5grZ1Gw3y+byAEOHxiVpGcS4uLZhpo0LtMa32v3/QwHnwRIe18dqGVbhKzUNeLR3BKUW5ujnMCWPT8aLYXNmu0XxhOUvGJcqFn9+xZZt0SflWHfxRVe9SGVVFB6wtYUiRZhgC1s57M+dp5e8bLPh/nRPzPbrVsVT00g2YFHSlxXAomYH8DGVKNr2BdVqNPLiF6mw9RKKXSBy3AbvTQ+TsQMAYQsfWmG/McMkIwQJtCxDMJqPvPO5Fyt0Q1cUm9UYVMNzLpJ1rRRkqRt6QvEmbeX9gQO6cuq/MFTyE6BzslQVgCoaUdLOq8COiLkXU1GSEi9BzQCgXrPLTp8sqrQ4Ui3v8dLu5oM4Dw3DHHW54wf6Bp2MNxGEQxODeOk4oEFjfTPlR524YjE1bM6LCF8vW04IdXjA+u/40ZqhLZ9NTGPyWzZxQWbictTeXkAOrorza2kazSyuw00rtO7JNKUYxg95okbhWD1h35yIFnnuFVtOXLGLQ3AiSKOqnEEqggcrhF6F/4Q894Xx+oKCixb1v8gETN9iBdM35MWuCc2DwTzGtqvJdI/FC8fgnSOLE/xycQUeKGZ6+X62Ns+Hxl1ySq+33lciXn1FvEavT4iq1bJaX4OhDSiSI2SuX2S7auRZAQasSbon6EFQrFZDzbOgLe5rvJZ9rAbppux6VSPsNAUZq18CMA27bundnq2knwu7487bjJRW6bLGJ5547FwlH3SGshTx6LUBxfbm1xwCDwGE3A0B8BC6AXgQduO8QIC86ETPKySLrLKmtLuifLemulwXqzeoSx9LyGs4NFY+6H592zlVoW9j5JqeaSLDW5ybAmJAGWipWOYPsDRoHkJ/MR7yHxjwQMN0Pb2RBdPpajVdwx+SUYRmSra7o03eRzC58KiF6lNBPsceKylkaNEPLtDJxXDtmr9jISFUX5WEIxozbbaZVotg1zEQ7rn+LhlZStdzgIUH06oNLvMOMrlokrYafG4LE3fkl/pAJCK02orgLKVj/hpDJN6Fx0CZp+/6UrG1vrFe96kG72u0D+zhqV2ijRsSUY2JjQufg3kUeTi3bigz6kZ0slD3Aj4OJ2RM79/d0f/nlckSlVnEgC+tu4g3DCD7IfZre3UUf4KU6ofqaSJGxs+wyyMbH/f+vV+QgiVwSY0pCkzrwoX9mdQxJPeuTYo49c87ntn7lNLWlE3gL/jWJDFJ5dW+csbtpQkDfxemh7Xqeia0m+wYH5Qono9ZcfcNf9CxTKo5dJTRBnlhZHQo0371Dnl16EjXTQjDySrDDJnnemWSxKx9KIJr6+pQlYvOhSnQ850F5JRkEpuNJYN3HSS51HxQaP/mjXZ6o9szXt567BiHxd2bjx9eLb+EqNcknGl2JgF8pJfCg3xIG11bn5HAASsPMqoApBDHIZNKafkdSj72tdtVzw/d6FK7XKGYwMONUfx4ch5nqTIRdD1kX39uGpJfTe9OyYQhnB06FUhVcKF0mkDIH8JzPJ3Z/TUOEcp88bUD8wIK4G4Ed7k/KZu0cIr27XIWM3ijE4sMncun+U05QQzj11Fw6xksTKHf4Kb4h4JYn/xOBjw/r3VKb72uliTdhQvFPqosXFc3Yb8wiho//+7cRFY91aOQ/7dMu/7l4Zv0/DORzFJPuVTTQi1+eCXQdg5g0cm60SQsiF/Ceqf7oCAk0JMM3wyi5G10R/vvB/nFSpuhzBX6AsF4DB+4DpzYcOCbJs+eobEvafBlA+kKorYqnV2Ssp33WjnpKn/es8wj7zfmOPNcZZ467T5bcasPd0PbDmX30X2D/j/q+Y9OtTUVp/clac+ljLNXRBWVnXlLOmPOrOpE8zDAY6Wo9skOyBfD9+QNJbK1sqMFm/6SjegMnPVcJJ0Lv1u8GSAUeOvrdvZqFubYFxyFjCSSxBJWe/bmHatNPLTaVBtQ/0Tsg5JqEPCcuqI08MwL7Cc7m4pM6W6GtW4Kw1pZ+LUwFlsUXt4U7FHLZ8M0Xm544G0mH2ZbIK7/PczDfd247pdqRAzegMuONvGkXoMs5sYwxe665KfSd1y567GgCac9GFQ7qeKhFGazuXa5tiNr6V0ScxS5CNzykverT9pKOexx6jo1dJxwwKhG4V5PC9Dyn+xP2R7E5+JnIzZzdOAEreHYoZwEFeCHT6mS7IxKNVq2vTf36uE7Nax0MB4ACYLPFbhKfzcFQJikI8uzl7gDgOZ1tDBT9UerUgUsVL6G2cqwF2HKr2O4uiOsMfFjdCYF//s6ha9RKLHFNvBaDtoVHCg3DazlnuJaW6CFHlZ35cknLsb7H5XGSxQ88DeEohpByUFwrmR4ErXTfYPuHj42kzTNdbxm/OQa/bI5+2RnP4rRKsKMZoaD9iMnxTAs4/GtZt4hhbJaY4bwsItS9cSzhVqn5oauLAZg1a0vj/Ol9bMzl7C68INEKx4/FuVPywSFzQFSio7iM3P0fPZEoCXWYs/67dP9My4WNf0V/3VNv4OmvNoegYfQbDnBVQbWoW8Z5pyxz5wToVEPGVEKLWHPOiiU82zV/NWe+OVrBoQWs4xv0dVf/hQDS1QoOsEzWnS8VwqayYogMd8tVfT1AkV8znOpEZcMb30WQOp/SlAQ4yz4wARJVYz3mJIvhG7Y1Vi1ft7XTLy8jtPLKPcQPMj4HrqA2FymkqOLjTz58HOPIIl9fyCVWk1oQnvvc4NX7fHgEmbtL4b/gnwwIdXpedECfhHx1wH6HTKk8BPcuw2PdXrkiyl/udIX6vAxwBvtbxYA8Y3JwmkXQI9NkEOMZVclozIc8/inPIcioa58DnlsJ8bcRZ7HFJhKFgjro8T/EimvmioLSrMw5khpRmSl0G49CDXPRZZXQ1jbtJWnZ0DcSWDmAlqFMLN5GJ2w72LJ1fhSYnkk8ulOK58n+6d3nA0Jw4EdEL1xazGvuSy441M8WOZ1MdOp3eXNs5M7h/WDq+meAPrtTN3sI/6OX182KLwfv4UtU15utwly/jtKaPRaAHA9YXVoWR1zlzKYwHlNA01pRPpT81DBJsIV6GKs9XMlXCxxPvBRjrljfYvpap3JKGyYD+wr7fOBfnNhNHPtTJGkCDdzPKs59PqoU6MPPD4xKazezQbAf9QZ/kn8gb94nLtaXrKMYID7ADkGLkcpYAfB3QDM99shx8B/jOv6j/iXpl0h+C+AZGn/Y5F4+/mfAlutFWzN9+Uqnxv9f5t35dciKCP7qL+LOSOQK+1KGEMEzaipdwqV5/pM0jXsRqVbWBv4Q4g5nsaqI7uTHD22Za4KDeFKLnCQUAQgEpbq+1RuEJtOrOOEhbv4Eor3pNGTUd8Av+Yw2DvyqLcsukBAx27EiKVcWU6YvzM6YLIfJMwwSA1BGukHab4fdEChtxspTMg5qMxwpRpUEqYPxHBDjhnvRGhXkK0yRuO4kiERauidXMMS/ElDSH1DHxKKE/HdoTS9m5l6GJ39OY6iMzF21e4W63MDuqf/0E4fLh8mPlzZ5IEtXMCOQ8Ch1dH+HgXwZncaH2D0/osFwP440mYYcmoefnE9XEag5LblGaY/MaRDlPpFsaoZtJ+bpf/ayFavPOWWywV4/5hohOKlkl1VZUe+dt/e+KYDIDbqyMIYMCMnoN5x4kwRClU7y9gZTQwzQI/XCax0b6ljbn/Mg6OFdfl+owtRoyhvjX/POxy+zvF+1kKGL3QkvdsrkYf5O5wgsevVs4/DJk1mEWYLy+wNIv/dUphXTHsvv9jLb2kOe9LpfkNsIuqPfaP5w6/D9k2k+PmyGpMzqlJSmGHFrxWUPvTZ+dRMFcrPiwSF/PtgCiD7IXPHxf7z7UKeD5HniPsdy/1kZd4H9PnoLMPCPB23+zmV5smlOoNckCqDc2/38vyBGjqG9RH/yXmOnbezPZ4zR7AokFPUXs9BkO46fYHNHFLpPZqeFd4ZUu0RZp0qEZ3Y1IGC5h8TZvbIZAVskYtXP8RkFcfovVq45ZROKhFmCcLyUwBpaZ10ll9Ak8CrpfBmAYOl8G7V8PH/wVOL46jesQZCA6FFgRfZ+0ZdQ7HuM7YolNaImnhx4d0gsEbEpkw0BWuS0IB7JaEgCKVbUUZXIiHizU0WrST6fdrNEbwS6oTzjNUJr1O+htp4BbWI1wU+W2nMMtYmUlNgtEAppkmsLVJMHa5BrK4wrROkZKYYklBJNgoxEKYirkm8Q6hVsFLNFFiDFsl0ibFMNgimKfnIQXOFqRAwXrNYjQRb8SiAAq9ZTFUsB4+LfbFe6EheI4kP9BxRvH4TfCr2XP7w1CfII9Hk3oo/WP5DNQl3E6upPMBfWP7H1oW7OV8h9BD8juVg2wgbZUSkd37A8i81wsb4dqFHS8dYPkQneYzwiuU5jQubgY8QevKQsCw0g9DWfCNiQaI1kuXMeSe0Hf9CaB3pEMs1q1ZoB66IXHv6xfKKVS20wWIqN5YCy5ecL4R2wX9EWtI3ltecz4Tbmr+ItMGJvZEi33Juwm1H43mDIXekv1jecj4KtyMfLrSJImM6UJvwkV+oFsLH8oVqLnxcvFDNJG1cUJX0e/LKj0bePBm3Xw8/19h9Rnpk//TE9wf92OXt7ftdz3GUDys7tr28e7plazJEumarcmLVyI+ejr1654fJ3KpnfkB+1Q/AnVe/8XvhzKtH7Gq6TesG5yO/eXWPc6JoqRLOShGKJwwrfqcuxzCzuV4viy5uulV5n9Z5DCm6pYaCkphwiOhpmjWQSDpNKAo5Lo/bgFOawwxFFmqTgSIKbmMSUx0NdgOFevww7ehqUTZQdIxogGM7NjAC29HQeYEMGh2I3Zo7llDUI+ojBSKLW/OecNvLnZns+37vUEdzsc6o9D3sfSvIKcqQC0rqRuT8oDdw9FhnR4EKb71BHIc9O6zCM+wG2ps1jg7BUI/oMpIHjQ5hA1V1U2waFzuQQW/g3sImiQ6BZfllaicURbCBohFNY1JCwCaBImClGFJhA0exzmADWfIpnTdQqKcVGMRSviyaI3kRNglEZTgToXHA4qzDCpZBUXs0l84Zk1mUfr/zeBpT2AukV3MQhdzAoYgR+T4acloKmsCviFUjS3qWEGGEsr+cUVfLuYHPjoRUeNuJSo0oaw+hVWVwMRy9ASFxatOJy49JQ2oXH+mQmf7HaZbQDhLKUMDeb4oOaLxBkR05/mj9nROHYCDBwW7gScEI+wSNN4QwOxrcLhTAAzVzA5RWwtsqUThzkYu4YS9K8m1RDPUtnBQsCluxsYOBUzoR1F8uQu2PuLErOmzKVYbTNCOFpatw3xj2MlvPDUXEHELhjZlrSawKUFjDz/Wc2DwLCbxIsUC7UXOItt5olnAYXYxFlA43xdOp9AMsiS2VXk2bUnJyIV1mr0tnd7hWfmhoZbD+as7kxTtNmKFM9VA3YicKqJOdMdutqA9uPjjaM0X8q3j/hQWViR/9Y3KfPE6wO5PT8hT8FN1syTZFY10pFGyUNGghE4iv96o3E7M5pvJlAP3VlgaSRRBXonCIUUkSzv4ZUC74vhUyj1PHAwcemqbILMEZvNr5arCSZ2ALVZ6VDXB87dk5cAPbFkcD3DxUv4r7huUqo2DpcYURCikWi8Wq6oaDJG7dsHS1Jv7xdPtOKd7ErXWieqTA5RZfWQKv48KQNziEFN4+79KVEt/tPRK4HZHhn3kkCx0EUERJXk73icn1eNKnQxrr4IpguemqfNDumD2+W1QmSmAm/VMiOuvSHfggoWiHLKZGzTkZhQYAeegZUDRHft5JIHI0lILD29lQyjrav7+JsEEuKEbEAgqZhL2Q+qHa+kJKr/a16ZHAZBKZmZNBZHk9pHcs5YvS11VDVHOTGzWkaB9KMwHWozbUaUlRHa8odhAO8H1GgTgBQbBQaOKhl/cU9b9t8TSNSFwY+N6pgcPvQpDQ3cBsII+hhwKOBFboyYEHNwOK8sti7ugARfxOsbj2sQRmKESCaP7yzZzVgqpUAVscoSz8DAKb134F8A0YLuP7NIKy8TQmFcv7C/hfpSaLicqFGopGukomkQKQuQODDa0wHVPy0gENFOpIXpwOzPl1Og4t0AaqXigsA6s4jcgjyMp4T1m04FLmylKJPAWLPumVp0PKPxN3uuZOQuHp+og1nS2qo0acprFhXwhSs4wlTzE1kJ1BCE7KiKTLC9IxAgctO1uyzEThYGX7XRj1iZPTNOmCQkH+C2wJenTQCRHwcwJTgdWPXRPZj+Ozo0A1A2zQDAA3WuG0aezL9D9Hgjl2wNIEoEo9FGihwBUQMQdsoSLotwaY+Lk55SPG69UPiNh+Wp8BTJTAnAjfqajXPR2xLSiSxdx3RDv/2YpDpKrKaVRPG3a1ukp9TTkuWkip3YL36ZYsIvNI92ay79fXZezPFsF0kOFQKdoM5i3R+9zd996wfUwb0McWJ6Myh9uOGkuQwMkMr++upX3MyUXGz7/di9aiQwcSBVOFDWVkTgIDpwtzJPChkgkRKOh8HIT206AgiddvooVOvO4LWeLhpGHYBijK2SCODmBsyfgwQj7dEutDD/h0dRoyVeL8kilRL/T2ZdoRbtOA7wE0PHCWlBLQj/VEen07O3P8YTR3x22Io4oJiG0BlriNR8D5DU7NjBIPkKHAROEnzK+ITOYeb4jTjz4GfCxbUbjUzq7RVCb82iNRLoy9oAMdJFAvWdFbkRB1Qe0PE2nWtCeYQGDi+J8NhyxOBvmBK9EMDc1IuRRrx1G5NBonweeSSDiPl2uKydkUCpH6cNLYbq1ueb5N7K/QhldVLBsuSTWjqTn9cIV/3om3nu6tb8RPX9pAxV77q2H8sJh7JGVswHTgDdTM6UThKCHOGVpGdDOASKnp1hkVc3tEYr/zNKOee5ebQRPOcCrlTefdoDcnBJKoSabtPoFJMIglFJ5nWCwuxLI7pIS46rQRTYHOLP1I1jrYRMBtrBZagMygIQl48DeGgKWJr6ssDNj746cqFOBTcUok5KiovY9y+OnKkhGMcPFTxsQ7tfj+pyIJmE8d6MRuRrDu0/4ilI0lToL3zTPAXr95BuABmBSTYMMW0EnogphHyVKH07JaqIiFd5MYgUkZD6QV4s3eHiYcy4cyvUs9YgHMUBQxww23dobmKabGgMCgppnUSJAxmED6IBePTrIqUdavrKIXM9+nMpQaXlFedh3E03MqObvuh064gwT8P0uHv9wML1dTupi5Z2q3cqHENrA4RJPOGaLbF2jVnDIaW2uPcc6YQdlniozzjKk8F0mqr/nMs0FOQmkJMea/kPMKRIKCeRluKAO/WTTYyOiZCaIw+EnIANHqwnIM8BEqK8jWJr6tvOQqbQuM0VOZRuwNHeZGNkDkQKK9AK4YX1D4cKetPKMjccabuSMFtqkp8xWE1dUGuiOWj2pSQkYSIpBLol6M6zqZcXXMRrEZDAdV7WEX1cReM6T/nwo8fBpZ1OWThakF5U9ISKF2gWlPgX1STwxFZ9kQdYebhJsCCpDEGcBw3sBnuhdVeYPTlmz14OI2eS7KfKjmfWjqTzF07Gi673P94B6PS4yqbgxH/GYf1xXwQZue+FQ5ud2cd+++++o9ttfgC37e1El3nQ1cmtE+3ZFwbKdRrnTUqkdGG/6eFUNXCSnJvQ0a+fltFccpSQg7Ro1BnLJ0HC68tYFLAsbyGmLNRDkbVlqBPUTBEFCTgcG61/S1Q/9uaLYx8+0fysnjVTcLwrtppK7YFzLAZs9yNO2oO51rYVCbht8jmeV7910Lzfk4RAQaibGLS8NeFv+ZP/Mmv55CEvOvWZbe1+AaiqaIT+tfFUgXisrNcMrHEQaVoWAMbwKy8zg7r3SSXPxYLBYLieaOqjdkhIfRX7BeC1XICCwSHWCvD2VMuIish8TtGMHeKptzJRlm5/ZyXu/Y5Woax5DCUKcVYps6LsqAOy4lvJoEqGntcCUYcf+At1KXyDMwMRxb/KIcQGorsVYc6TsXqFC9vBAXVSEvcfl9CyhvFUOV2f0FI+NVKHi82qZSIpGEUKyYRzdY6VLIP6Lx0AS1qj8X6CIdA5HCHPasmCH9/I4oE/1y0OicmEHhZMUwkUQV1Gstmwh97sKd0c3nRLZe2bz2cUG1thbhZEWRH51YpmYf8vmON2bC15V16zfzugi1b0qYUg00ybY2oh8aGrtQTmdcUz+/htCEBatFvJ8KcMSvvVkuFctXb80Y6Q4Zu7w/p3i4ls0UWvKNm3IGIo/TmMn4OxfxatGCPZx87rALaa+KK/BBXmsDRjCI1PU4EoodIyjgKLj9fZ3K+y40cWk4f5AJGX8po3rq2rX954gfU+RTBS50EiwScVQVfkLqiXxoQrHvejoodhApp3bEAOJr5lzbiFtR+iIo9Zbb+eGjViYvOkKRCVcybIcMMKqxggXR+VaOEFQUb86wC4XDhaoMHOaCJvWGQlXRC8tehApgmjyaefZCbtL3zYGWvthsSk3QM/xTv5TfCt4vWrSDQFGKS0+kO/1+SHcGd9mOKcc5o+AMZysxZZ/Gaf1irIFnODOBSjpamFSzQSdEmZK+B7CAQ+E8TgGDetxtgQRulYFcQdaKsZVPaelOw3lVA0I8/9ozKdC1jSFkzz3GQ/QyRxceOBLaTLwnDocFVpGa4bYCDto+WMQ4eMGhCTw7I7L/wr5akA1DhCHMXdC5+myxdhQ6AKcFmj11vxQtNhSGaaUJUWGASTlYCm738yLhoOB0QTTuCuwCGDUic57Zb78XoWhhIIjaIYSxZDB4M23uYCRyoHcPJtyK1Fwv7OYtoii4xfkVTPb3l5GEvz7ocxoEH/KdKYzekZ5MfPY4WPYfkzSJD/cGcVyZo8vOpiQc6FGAlc9fbyel9ttc1unYgMVZQOPtyXB0CK0IA6Rc2IgSWq2CaUnrkv8SV5pTMCDk43YMK+sQhoGaEkFNj3rEW90jY7XuV3hru7k3U1fnkkBBVQ/GjDcgQaF52ixIdi06yUUSPbiZcNHd9Io4peF4D+TkBDkKTFz+hyvQlzVfKfkftKfITPh2+uIIFrWSzRAmi6/g9vKEXf/rsDhFsGWnV9Oa0u+WArMb6Pq4lvga3razFqu8qHJgb3f58rn5tCKGuHhwXKnszycVwdieaSiiUG2RbtsM2mxqUGXWeRY26A7F997zh8ljDgsyWaa1eeyYPnwlws7rAPaB1DJglToBNACZB4Mmv1450meLcBpDEyx2HNlkTdlFdeB1f8jSriUkfIBZk2dqhEcrSGAINAAda1tLQgC/nqeggAoxNsNRfrMbqFk8AHedwXEAcrdqcGIQm3dqgw6hsz6CpcNfiNW78aKgMRmuwxdgPTxJA4N9SBZdMiNAptZZChf2wcXb7H7GyfcC20zFjQCkxY1FuJyuc4GjUnFuXk6JNA01XAQuUTICZij5mCfnQxjS+h5lgqEUM+Gu92L/i5NuRMmSBkuRREIE4VvSFFAMoTGqSml056cG1AbAeoChTYaxWR53esI5Ihh9ONbIPBqIdE0yBmdvfEEqx8yLCfxkiWYVleADLD8M0ub/CPOHHLiXIr3wPhjz/8Y3QIxh4oMAT/iSlWnj/AD+m8B0KE97IPNcU555HOpaZuNBHUUjk2sgXCsKq6s15UubbERZLLssED49ytFP6/KaiF8Cz7CMXQEfVBvcPyShitYROo7LsDXUmMhmKB0yKldcs+aJKyTZ/vfi0/qJDDWfyq6KzidlHNEz5HUEk89Kgsk7d+1l68ORFrRQ9jwjPsos1gCrGOzF4IHRwMqeXwIF3Jts0DQZ3YPbT6CRGivw6wVMQwc7MByiMUcJnD4s0Fnp1rTny8ltUjBeYpzr3466dKCCk+WPE3X7aIPp8mvEAfbi+OjKJe59ZATMe0Ywi86m+DbgajV5Ic5cfmm+XEleV0IH7p6MCwcUYgnLhNDRZBC9qrKXQNM4CR6Z1YTGSyt4rTnFJBWFgyR2YZJUGTqPb1bEpZh3oFSppc7FKhltnIp6MlRKwdtkZYOmFfSai/Dz1F1MreEm2/dUcsZ3B4kcQw8l+USXURhri/sptFdRgxqMybUh6LfuZlK8rdgt9SXTZlBxqr3vOM/l8mHns1cbHd6WkQK2zO0JG7oZMOIbQAKW4xwpTcy4RPHFAhehjYbaY39zbiaAwyVD6wtsVkKUUOAK5/hSfAzCxvy8+/o1Xo07Fbq1TXlvqUMXhxHgvmluiGSxX75Xuu0YJNh+4rIb+yT3E3rxKh4d4NUisGxhQdI0jcIE5i6X9w7hvC/fU0yuvX82FqejQwUElEwVUCvk59pdCUN90Q3AMm6AqdgG9a4NMeBWrqF4BeexNK+5u4OF19mIpNMTB8WfziNgmbJKPeWY0bAH+1yerIQSw4hgwSluk+cxhPo7ohgy/WjSTHJc8hachrWWTxjhqF48kw736kkt2pOEzv5Xt1t2iKmT/Rka5sY18XHgkJclk35d1d/vHW33vHQXfo3mJcIqNHu/4oVTMDKxQN0HJyosKbbtV58evOI9pMEnUIXqRIyCAb/xZ9AyL6aths2tzz68eGv5BH3jHn7jCSHtNDzSpmFz66MP/7+1wq1PKW0ezrf+9rS7YbV2tlkf1jRS7lYIK4zU7rBPrsoHCXGfkwlYWyXr7KuZqjrNZZ1ZdPhn+oM/daKLIpLXW0XBk+6rvJCHhgaqGPXG+dT4Ai9c5Kjxtg9FNMQkZl2Lnx1V3T5d1NoW64XotHCzoxJMgwM3KMW4HqeaO0BB8sC3L3W6ctN1JBfYL9yCujKV7xL+HYPfmTeuCklM/k5NGbA3vuzTBgPJB399WTwQrMnwQcidmkrBZpQAe7d4Q1EJnzd44vNN59jAyaoKuDRb89291HN580ckFWp1Ku28o8ViFdpteDB8+cwNt8LijtIazqQJLkfe1lnoyDp46FWfXDakVpeLYJ4N/zgWrtN+8cmsdjYExUtpqScHXET4UL7xi/dfpntleUaI0P5+ph90eVJHJpiROluuluKp9mEepeC3Qa3Bq3qaFEaM1PrSaBNREnzqgs0olWEhMqZaBh+meg101M6Qv0vTlcGzxMkDY9cGX+9FpNjbbPqDiAUn/VH9vfqy7/jLz/gBk5U4ORr6A9YL74RlLFVpn76ct7sLOXuaReXIaT/SqTSsPv34tFLE0DZKCEaew+aXs+fwvvbnBw9VKJAGAikJOo2GwYVRlr5gOgDFOHjB07Lbp4929f9Z/jQ+hcE5HbBYelwZrTnSs0S2VTk1C9/GiNcvArXGdTdIyxLGvJdaLmCVUSA5pjK4S1V+9nwTmeHSMOeQoGrHJmD1UP1IxJl8vN3fq8KF/37B6yN1AtaMn/b5jMAG6bip64zy7r2ZFIE41QEOSWnyd3LhCYG9EHbY31dY62/k88tIjB5Y7Nctc/foVtbyG9/lnTVO+DnC1T1+uxUmPljthL8jNEzsLDfxp8UJ/yrYKBeGvsWuKlXt+1alINKO3qv9cJGDvVy6G7q/76Cu5Axzl3MQhdjnN9UAPDo2UuUaC8jJn6sUSU/Pkf/yDVOHDqI4V5bcGhrB6/ligzn4GI5ynSMDW2x9U5zI4sv0jXdRBXSXSZc8kkeRzkpq96arNR8NnU4gtkDreyEUY06WNEa0LSDyX0Zy6Sh4IZjT8/XaWqDzfudjsDsADg+IjxDElC9IlKeXKbMhsQUU8fyx16w6OxhdEZ522wErX9m/+Ocg8a3AmngDcmuYl9z4+thKJ5o/7O/+2wc6zsH6v8VCzTFZFCWAUpky1HnpPslNgFU8ICLKkyiYUbvjr90t/WcTUjf+z2Hq9VImAXBs/x1Hlc7NgJLdDiG1Lox6bWA0xePk3r7AzVUU8wdrc2BoGY4SpSnqlvriQ7C8KI/zcHi0OpbcR6AoL+MI9OIzvQtNvdV7p/7L/RZ/nW3InFSajeNL+BSydU3Pf66kpgIYcnpyb9rmniJ/H8acmVCeRTrDXh7nuUOHeN5KVuxFXsZ9sNa1kMeRTY+JPMMRe5/69Xs8lO93gtsiq7FobSmOQXie4Ufu3J+XRo9CQSsjcnf56KbqKCtmeeZoOR2Tdj8HgkHP4zt/HMNiUU7hwu34aFSlRhvVNl/kLjT8Fwkser1Wcs8bjsPaQMGuQNuYYhF0WkyUxWskI77FL0jjEaATg9XC+5bAmsdLlSL3yNckei6mo2XDsA9VOKVLfayR9ZHMNwbZ6g5rc/YohNn/oCuHVvTQhFSGAgBjfHFBxh064gjst0vSbljS6Pq99+BfgJLzERBELfxbZQPimHoNdX2DP6ZRRL5+mYF43X9hx0KcO63vqHA4l3ujv5eR1DbH6QwOfsjVh0T04LxtNcnZdDiC3/P+eaL1au4fEls+9tuPYurdeM2Bi82jxaFMh6Pd7zO8GQNsq2hdA33zIMPBHoYBaYTleCwOETTe2SVgo8Z1ml/yAJtrICRwKiUaAKT150JY9kPhzaTSS9h3QLmIDkjYYHpuOra/YIUOBBFrgoGkiYDpkhXxJVAcWEObb1lfq7EBAgHd5O7tkLCheUhUiwcX+3z8pvRfdHp0fEufa0eDrWl65hmSJYs5BEO7Mm8VL9Mr+EIO8/sJRmZYdzdADw3cHwF8zVlF85p/n+0HU+3Pz8fAie9gDGWEsC9l8ohfAQLwgMG7tgCo2R9+TChiMYrii6388ofhDiC1GT8OuA7wiEFe6roi3pqb4n7C/j9niPxYIW8MyCK9xUdo94fmdD/tfy/K3a2FlXI2bSskLszoiHZEAToERWxOPtq6lscdUsgoFmrILVbMtYI9SXqsiRKq4smI31evsDiM2j4rFLZ9DsadR5RL/rqfso4B2QiG5ur5M7LBzjcD47BkdwNIO3A85Ajm1VqKWmHiD5Vzeap3A67CDkdeC68zCkR1naY1sOBoqhD089YXAgulol8QphObce5m+lTMgFicdffJKgrmC0KtkFRQmhuIw+bP8C76DathJOi2TRtiU0iq7kOhFEgGwe+P/r5BnH5/ra/2lc5N2abxcKpHvXeiFNr1ATJY5R7e8WP0O6BYnnUdywQadvMLuI35GsjZQQtDYvW78WlrQkf86OyLhdTvJWscWRHbJ4Tnyzp5vGKH+K0lqmuvaitG0IKeRRAwpf3ElBqP8IDmDrUljsnF+rT+yACB36wpc/F0G7C/zk0ifr9QTkME31Cnv0SXwoVWuYWg+2KluHruEJryhkvkrLl08somkdePshia+KXqopdW7RmTF0tujLlbKeUsuQuvm5Cml6ooRfs1Df3NFOl9k97t+G9YiLf/MxIwOSzSxWlBvsWHB1lI8X5xYkmtfTyPGccsTV9R9Xk7LWoeF7UdvPrRghu0ERa+GOvKiWhUGSC63MHXnncXM3VMBc3BBOOtYLwZS4/xsvIFWXJrBod6Xl5w8T1g7QJy92uiXcFmuff826raC/ZkhOys9eVzeYn2uT9c79Kfpas8B6RkOl9sqbhrzHvu7hxRMQrdGuMSgJEVroiPK+Q+Fk9V41+rSxQTUuhb5DubGotDxIBeicOFz8vczCG83BjaI/ZiZWPeZIBCqu9Pw/dO2wGUeNubVddydFPo1P56E6ugo015BDVR8GPcjPL5psgBJKlvC+xH4KS8jejHQ/CMzx8IreqVtzjC95vW3j6/gtN0AQNiLTjMN7AtG1zbCRtJGaS1B9cGC6IZPz8LXZlwcyKgVcJhJTWvc4t2wddVNBiQgTjrYXWXezYu7xgpj7pk4PUyYwXiG3qYepB1J+vgyhF3gCPrHeSv5GiXPXFs+G5N3K4drBStO/GxSVKmJ93AmFYpRVj0jbGcE5niBna8PvxraBh6ics17Zz46e21Cy2kQjCWIsYmOI117dKyAJ2G4L0jKRtqyAO5tJ+aq8XIrVcOEQdGzmSgnbaCCJkticRZIVwZDbalt1BGCXPuCi+/6n15JU+iK3R3UOkPA1vQW2zedKRkE16jevwBXcupAN7W0t3A/A21QwfkHrQ7Gg+jpIxFZle0vbCkO2VfFgsBa6JBvWFHra5xSGSFuBYlEaccIyus4Piliy9paklUZn+KnOc/EWjWHSbcliC2oHbwQB46zGrN6KkFFPkKlBLgrmkHKkMhhrkDI26JUMGpsEU3i9QbuipMJ3Pv481WW0R5pX1cBij5TXpJhP0P8YruQXuZxhSReN1d+41LqrpwMR5lPqN0Sp1c+yrogP/2ux7aQWHRvPEsR10nTMydRVk3VD9gB4xIiHx92DgmJ9TbfhlI7njnU+L8t/exR4GORKZy/CQRVC4tT1cbV2bNxrBu9jGFSQLeeanm4a5eYwvtF+VdDMTqSiuiciWxdp1lWETng6DLb10LkuVbcUvYWQUV9YGwcXrmZe1WCsNelkPs4fetNTG8DPoyQYC5+20mWbLxVpAjMvfBmr/Az2loxyQF4Fc0aS0hMr8a3qlwWXr7/m4kBulbsUdkqG2bGhlMvDI7V9tP89kKuDSDa+knQmwd6oIyLYdSIpb4vFK9Jk/K0gzHfw5CVXk5W+TWYFvFPIoZGnSIpDqzUHWds1SF2rOANWEDZ0KxT7N4Wzsn6KRWl9CNuiqVzzOYt2zWnhvUxaqXu3EPBSM+hP92uyc+MQuMKECqV/x1SOE6/Fvwb0f5fKGnuygebtbRE/eCm2kfrDY7TW94r+jWA3Xt03jfFYKrXg6jJgkcY5mujxgobfdtRndjkSJnvKtMo6uZ7N/DxcnvKD0o8ehEJ7YhXz8dL1uBlQuWNjJmvgL0VXrBRqECi7oVRqeOZHatKiltxPdxwhlJiRKPhIl9TnRIl0NUDGtacoMsh5nCqWB8JWZW8L3Ojfrd8u9nxOWzQy+/iYljobyfUxwqdg1t2EJScQ11mIWXKwxRFkE8R6QwN2oJTHSu5qoySq/4dfRhoDPP8x7BtmWujN8ekBwrr+cgZ+aWvJ7XqQO/BKaEAJAU44ua+CAkxz4onv9lYNWVwUT8+fnagO+uW+jIYu5fgWzlFhDvQFDWF6ivZPmrfYlQMldBi5oiOr/6nH55ZnMJqIJ8Trgz+MYIb4/sTWgppRJx0r7H2+M2cApsoEZzQmg67QpWSpRTKRo2gZSolNryauKqYVMpsqydGux11RQBCikXOoISZTnf4yFxY1PWLX6yPFAP+HSH6DfsxskhVAN+fZ28vagaEErPBGGCk8s4RUkxKFIeKGpkn3aGXVrUH4UDu1X7pvxf7UdPbIcoeByhAVLyinlkMtWVruDNNh/f9B5zYaQ9ic653rWP/PFqxGlp8lAMMtYOHp1UR//eH3fjsLZzq3i/W5snxbdk79flMKXlUVoTcRDoimpynfYvroS3s2Wli/VlLnFl8Siw9OlKCTTngMSpSEdmUNECF8ZqF0n4/kbifQTC1qGLFsgac6eOb7lWgMCV0wE9VNsr13yrBR3ahWF5nDQB2/mooArC4fcVVF8vVhGwSpJOkMTHsQLUXU5Y+IjHviKBtpSNJaVWOzr7BrmEnwwI+itPRYOZKaftCo/XEz+wtHQWAkj32iO593pDWcbSeYbcVsw1+LuPndFJYXaJ/37acCrQqnMlIEVDlxemdcxECURdGUk6YA2tktNBa2fVtYf62tJOO4gCDOkYSWnNjw2dKNIK5TTOFH1rlXldFwyHwVXnAIeST9PO8KcjavI4YV3UUe/1x4nAHa+U8Cc25JZSqhyX9++HqWyQ4Evz2DkEpnQA35VzCrGmaiWYyC/HcKdx7rT+pBTZ0S6P+HRwGwcXm+oMr/5tmndv56HVR/leV1cKvxHf+5D/wrRfUAxYUQbTC1A7MahJiC0dUL0E2xHUCQJHs3Q2Nhx2GinHZW6f5gzycuH+tGfxzSjP9ZpHYS9OhfZjJTCwmyG2h/aJMwii5qunzoGD30yk1VZDJtpFSNFGgVQsNbm5pEr0aLtqDLxZD+sbfrST49X3rBDdDA6ca7eYMevS65EE3kNgChfw+e2UEWfsfO3Jp/F5fiIEXLjmOywAg7cEvV1x6QHc4CX1MOmR+ITtHZAWDpc22mo19BVe64n5eDbtXUxylL0z1fLtPA+JEs4iCVZOZms1V2HQrOJEbclLH3oiHYLyoQLwu9WLg2j+YXkP9psUA27fmcCcAAmztspnwoqlQ0hWamMKfY4jEHqvY+qmKTp02+FgkCKxmFbTIkDicRsjb7dKR4hXC/uY7zFj6e4LgaG17C1s5KC6CP3tnHWUpqyfm+Ch+3/rTCxiUseJpXxDK8jVUFVvuRdsXZpFO2zYT3GehlwELR26jCqs402bBksJzjQtuUbqZ1mQZIkv76mobrG4bq5GCeYzofQmqUueDx2hEDk83DtMN7qUnOIj76wVoI1DtAYd9nYjmhVT6x3EFp2NR2Bj5oVqOeA6+/DGSkfkkS98zyyhi5mRfqL1t4Z5Egg7+3zcxQQS+/17lzzZdAx/45Eo53B/2ObU11EKx/nv2cS26/OpvpSqTAZu/cb1Jo3iIFIo7hp3Pzns8qkmj1UaUGZ0FfI4MQkuEA/z+RIs4chS7XuUt5LIS+1n9UAcTqMciS5jeItemaNMGXOsiavsOE1LkBwSyhdHFB3zzqkRVOUO08EvDMtc2VJiZC/eBHuBKiUmLlVKFlOdCWVmqQPHOcUsLHFzNwcJZtE3DIMtTjHO1UJpOK9je0sHyCQPxmQgftqJRzG7oEgHUntSroSojiaHesoQHIO/DchdDIQU3ibnJLJ576I4GQg2PGaxjvFUWJSGyr1a88EX4qDzrzXhLZe3NyGBbCijNu1qBSFOftyT/C12kuPSAwS2P98UZT6hdIsyAavEMnentQ44LSr2Dh3hTVfoELJWqfaLW+GecrUd6McwtiuSV0NGAaUjjBCqwajVCR7fQ064ztP2usdMUNBQqXBxgzp5taoQwOmAqXmg6pyvGhW2OEUjMQGxGJDzbebLF4WxwEOOIZEstcZ3NzIUYxtacQMEkSGZ5hg9zO0EeDlnssQ/Q4uqeRqSyZjeSJqxK+LEsEuuzLlU5QcCL9QMbxQGp+b0UGMGpwMw+TcBHzFZoToguAW+XrOZAMdYx/b3NvTy25Jigenvjs6qgfC3RF7BrDJoZW45BHXmozvM9eEdx1YhcZU98cTuZI29Vykb2HLsjkF0obrOU1WHb3NSrn4mJdxCNkJuIdCVgG8MxZcvhPGEPdqc5z6amq5VktttXgp7gU2ZVbPi/v2SLOa0RV5u49ZDOKgzkjGRE7QxSDHIng7a65y2JnioUNu5mUgOyfu+MisXIvXQgSHug0c7SBosDIoQSq85s2T4te5mCP8aCJYtErERR6CQhdw6cbFgqpAtH1UuzM83TIOIzwwyOSji9ZVgOFRW1Coi0u8hL9advZy5UxIPfd1F73tQr+0e7jVf1ok+9I7zmITWvVc4jyXR0PsFXtLSPSwt/OfF+If7AxJxSvfJXMwVX4MEwk/THWF+IWFpvUuE2Sf5uTRNvPjIxfPEmH2H83G03dDyyW3bVWgbtGcDa3/MtAyDPFa6ju7Tf+ZK/4ZdCdZoaDYTPfwNdaR7jLnGN1NBYMJcsLmINaxAHZAHom3+wp/HfV26+52rGBswMNV1XmID+o389anFkVas83K+rIfE6JFg1CbvaFkSZpo2zi3pGIJU6TQvdsBKDSR/vYA2LMyKjcXq+RkLL3ZslPdLAOIXWQhzdgslQfuyWoI/I3lUV+p2RlWlhWFbfXRWe1JqN0yw3CcYs3c7zLBKoSVODfm1Qrj4ivCmMphPTs5xa+6nfTHFCjWGk+rsnbI5ooWgL5YwhqMjOzQYJ0suqOng6HoVZ1pbXyrpFm4MiSwEy3MuZ/WkHaJYky+mh+DFx8ptgdC7eY3uRjYMVr9HpSIgyVM7m4sMRufmFNHU57Al1ckRgPaHYSec4eixPK3ZiZ7lrK7GxFS9MAJEZ7Fn2preduw4OrniwYFCqvvZfjvWC+Vk8SoYsUoK/bVO4VOZHY/yyOk5ZEUlNB/8BaCmW5K4QFDiVWzSGVW7YUPWC/m4EJ2OysbJTuvf1x1juRH4KlN+aC1PZiR2brehSCMV4eCs3SEYZn0u9Mot5wJPXlRstn5NieWCVRQN8htx3MdFTYsrhG8TPjsXfS6qD4BRKLjGPi09GkP/y2WoJyC44lGe0rEekkwqdqL+h8GiJOURfFOkINS/KcY/BbeKI40nJaxNg92s8trUnuQ1RdXKKtWhPH0CVtLhn6lJgtoSLINAbH07p30BXHwh65vMhw62Y9z66n90KUqyu6iOfTbamE6edVek/foM+6gRMPvKk/U+uLd/LwqLxAKSWO+niguVTLplCZx2v5uvrR9tf1rmJNP2t1Eeas172dhDCIog+A/6H5EJiUWd37akGPlpsS7c8b18m0GfKcfBlTvz1Kc/uFRBhWoBPaJ8BBi4/dwTcegGpQoZ8WRNIw5ekdx8ipjC6u4NYPrp83ABIM8jdsOcUiv4ikeL9DgjKFrpTJ8mdDYtPHTWbOq42J0MAeOKyAZJ0+VdGzNoQlMkaM6ZwPAYxJnvnwrRHt7DdFmFWFMLHn0h+vfFsjWufL7pws3wrOlcAy566WDZwpArgBHqamm4qGgJc+s4aSmwMzCTq7CzgCDyMsAG4V6u9EaSr6+18ecIv3epsbtaZHDlM7bzBpAvRxFAsapN+Zd3Dx0I8JuoHHeKgHMrNfyokAvy3SxClRYM3/cLT5DwZmPuKZzuMQmrbP3yRh6jg1uxUAEVm+nvgR9Ufm3AdH/lu5j6KBCIqvbPGi13vr8MKB5Oi4z8ZAvoGZm4WByDhsa57IAbqrkkP3WkJndWs8YooWenbxaHWXiZRqfBW56PopTuof318EVZt/23a48udJsCA616uzB4RyzNB6LDYcWOdLHND1RjA4ch2U2HkBeQkV91qDLlVjxxtNesYN5yNQEXPHCXyyZhvMMbsyk7FviOZMiWue/D6xc6sJFBnPd8N9UrfHgTYCdM7rhv1NBAYSMKxf7GdyD3vD0rdRLoJ5eHTHhc1ZLkOCmGfvD+gtRLAaUpvdKO29zq4K7Qu1nWp6OiyUbG7fkwXooBGxVusCLY51SpEXq/ZUyciNHYxFUNCq3OySxE8+5pBqPoa9xZxTIGJhKInpv0+xi8A3g2BL+QCfn/G8Jy9402IbwNDfZ+oU1W35l6Qp20e9BYrWYXFR2VnVAZUA1jIUXxhm4JM8wb1xdDpXxHvB2IEsWqvDJKKZ6P99NwSZjGHuBuSsaiiAVc2QOu/dfKsN4DvlXrgAHq9gdMX6EQQZTCIWw01G3GN8LBnsxTgLmOTyJ7FzC4RoOrNBdubWsHh09YY5+JoVeEWi2VtAI09ll+aAgAmxJ0hcJLvyGMAokJoHlXIg7c0gbgRSQlqkhEwQqJaohVapg98HqtEX879tTvSuX0h9JuaCVsWUKbDEqGxRgHILUGfPW3M/2Z/HjWJI8/409+plOSnii55DDAyxitOJGyz36kgK/eK6i9ougQiFjGKgYFofAyx6MWeH+k610VJj6zvC42CDFVoGhZA9iOJ4SHMtN1V89K7dmtagBAvyxZVl5V6EwOwUmYV00w5FSBwdgkY5QWzL7ttDzftbjMMrjm+YIQVCxDRAAgMWKGb1yA+abSIP/2r0oawH9D4H50Pt2MDCSyzsQbpGOEdIyXhjiq6bh7epVmJHupBsLdRDC3ClTnl2KQ0rEJQMWg9j7ZKr0QFwpOYhSho73qp5G6+sdd2TcwvsvhHv5BpnkAAxI3J/xLT9Hw60godb7LmtHtQylTf7ZkSS+Sx1NWOrqt5XIXStBlMD9dSv6eK+X0/AeXwf5sGl1MM7PiSmuXYymBJgCpVlNwzck+65mS5t6PG49rZJHTWEVAGa6GvNGPAEcFAhI3nzq1mvauqeQzk5Qyn9mG3rNBUEfMXByiWOOUBXcQHYwS9xvRjMoDVhDmlCaL/0lbQ1MMSHfj9r5Alk0VdwChqYouZuhKYBeCAvA1rxwkYKgISU41xGk7ygqUkUMVucKH1nlO9YtobylK2ilncUHrnoCMk0Im/3ocY9eaJICCiA3IA8g/NJeQir7YGImbj/upRAXIUD4DB0UYShYlmqfA3Sh9ddxX8ZhjttmTUPogqtegdC0r5p91INXwLRb8Py/lGLuyztOHJMMYicQfcY0W2fO8+w+l71uUobkr+F21Nt8WY1kzJj/D1yrSqQik6z9QgLLh8MlDtpiwWqYqADqA3eo3gpDV8oLW69EtxVKpiypQX/B41Cj+XUsOQMnba+Lgxxe59KikVFZzsUoDghXu7xQY8dfRWy2yHgxGzX5ExtjdUs8o9raL0hnFGsYzBMN9Nwipue6Bc+2TEep7YjR4C8VuyJePgjlRcKcOhYEv3yWQr5TRUHV38rGf5FxkUMMXpWr4SW6dZP2x/qxudZMgTWTuaTStZyDkVTfIpUMgeiLa+FM3Eg+w2kjwpBRF/pij3xtljW6Gc7NBgQvlLeHpQqmWXhPbegcNfzjDOejc7DRmz9hgR5rJlFeGVQ2+/Y8jxbNgWAm0uvhe9Y4JiodwrzDWAxaNGEPeRvBtgla+DO9BC2IbDz7iKnP11rt1riWBMWdZS0OPSzBy1XmmzTgQPD2QIrvzHO/FYRkcUmnEBib69BrlshwjW3zCMK+OtypkyDgYvLdgWEltPOhMN70o6QdR6J77mzZlydRYA67ZJfLoDwDnEsv1ZTjC1EL9SazwDUAVZJYKCAE5k3owTTM4SriCbEO0u0aD1G4lkhgxdSwaW9EZTs+h62jWzFMGxE2IDssNE4PkbR5OI43aM1pxO4fCk+uw4m/E7JyuPtVJLsuBMYFwidrdHInDAzX+GO6Khtqd0Jw53eFvmHeYErQjgkhBsEf5W4H53hwkKvhV0tlAlwK9wpef/vyWaPK87C4sSEsEPiQDOe2gjRrdkYKMCA/FigKns0J90Xdxbc1P7Vu3TuxcVpjQ5FqBRow0GjzDjWqAtitnOewuKcRfXo43GM+c5n0R2IaFmbAZpiWz8r6klTiID06STcdSdZeUfGwOfra5PfsA3IoG/GWWuVOJOAWttXeWZL3KBx4V7AXWsXFYXBj/dvDfq7N0n8uoflnBxR36aLmfPDaMn9Y/Ub8JBDkT8DehaAaTTzHZQJj0ONEmm2xBEm4GjUCEDGp7my9qK3HBu7qujvVljHrLT3l9Rbc/3PzWIK+oswTyam3XkZji5PXaQbYedqhqN+SHIHtZkwz3AxD4gilqHBSHRULb6xMaih7l3Oiat1WRNA0l5b+lPtGArxwh+j3kIyn532B+gZMNvxgNvdJHQv++qvfOTCW1b7PFZ+B6YAOWPSxf029mlwqKxFEgKiOLV7By18/lpfTUMDO8Cw5h1EJ7sIcZAzbn3TYUDgT9KQqMcp/0NFbYy5Rua1IKj9NvFG61FwgoHhxqhi7XWpwDybIyd4W5WNdrzAZ4yMp4YTcMyvFpax0d42OJxEPINryyiLcxxpVuGdOeOie7EVbRbKYnF9YX7F0NDoNuXirP3sV3a+nGl7ADcJrmMgAns3U/yg4pbqemLbXr9XB1RVfHK3dGsUCRJY4vPBxnR/aFztLoade4RJK3dKOau1Pa+pLrR6HMzY8Z8c48x2jmVdPeY0kUoZSqVbTRSVapkVljNov60rtaTlR9dbkCUbJ66NAhGqIxS6n1drncIDZqfa3JeoNnJNSsntODU/4mZ0tUqRAJiFXLxiBNXA2qmjqT7C8RgCzrYdHtLhShC5RMX8UnaAsQd3K2+EB02hqi4GaSBi9lHHgn6KXfbZ2m1xIDOGBpuMshAYHeNecGs1IKBiQTc+7kn6jwDbcvboBj5HWijqFRx2gssrDhFHKhMZyz684h6DesJedaOVcRYWnZjJs7jFD7UONG5ivBqpihSAFg20YczRdaR3MGooBjlIXDjbpjGjLSZw4WnKqvimRyz2JazDLw7qzVk1CnOCMslCumddV3Lo7HYmIiQS7TmeLp2RJrrjDaEswqg8ppxCRFgQS4lacLufVOVZFFFOSEOwTfFZPHSkdRyPNCpI1TgbaJgCRk5O1qZIqoHpFMyJy6zConri0uJqPzigiX2ZylIVgTA4WNkqVcsWDfeGXuOkzTQCvecOditpFxku1RDGJcVJ1KUkx0ODwxHN48FddLQ85ECNYUY+hMVZmBcC5XMEnNSJKOwhQlL/A/57MkxInEpkfY0AREo5iMX0pWII31903nrxcsGfGSHSgUS1L8kHpfHtYqTot+3Yai6svIWuxokAXAyMKCrJcgcXeaD718/gv0hXP+C03Blx40UXpzU9p6TGI2Pog0eXrK7AsvFtGR4zkL7T8x4Qobm5UHwnkVOYwN5ogTm2pqv3VdyqDqQIgOr0p1lONceXrjxLvL1XRxYWp+D9XvFt8ErA33NaitXFnV/6Sv/k6xEmgUO7808fnhahBHlgcLpnrm30iXzkY8OPZjlUnW6fhXiJffiV89hd7897XcHD4sudJIRxP7XyG2illQxb0ttUjAvzxa6GMeWzE6Y8cQ3cxEOZb+x1JUyhIB1wrqgFkQaSP1x70F0BPPrV8PqgiFHvp90qb86f2g/4WnAKxDeewv2N10FanDs4o1pPX+txkbA8E9loiAin3jieVXgIKNDM18jqzkZkSz1pHFj1upDfkdBtPqJGWgCwR8qaPHxYH2Lsr0DJxg1tT5ihvK5h+/mo0RRWVSyYoLmonqVWTM3LMKYfEThJI77ms4pd2RNoZ8HkSj0/uW85Fb0OTAooT8fpM3sHZgb1abCEODKysr83wBBxmbXaNiP+0EWiEu2V+VBdxpd5KWV2NWKJUPNqYrbHhgSIIS3FnkSVdKwf5Q5f5LoF7Dvgs7qJVhagbAaItGBXeVmkPWtjZQpGj1NZZ7XWeEccfu8/Pje1EamXTuR8fcN5wd99bS0yfxOuL+epSpBzaBGCGOr2h0+z56T57mQ6po9/X9aYKNEVgLw6U+AeyhYafQ8wCS7uW87IlkeTObNFwyj2OzS3P26FC7OjdT58jwYhaWY8z9/dUs5LTRCUpn60i4DPLTXJUN8/3NJTQo1swCcVIK85WGKUsMxjPme+p5EauQKRS3mHWUlNuGkXWh17ntMF6KMqz3Xl1/pmOfftr2wXqiOSHmcTLUm7xCaQjlHIb05x3DTYipLx0YhWF2bC9NrBvEt/Ar3DMlp0pNFjrna7HIAzbRzYBVcGkgQ89sBpl6tRExENp4ArTrFhu4LOi5omREepBlwTO/mx9dVpdWBlW+oAHOOVxGp7x0qflgURcXEdo1EuPA8WVqiRX0rdxmWyIuxl9j37wX/lCEDorFJSEZooD0DFaKYduqWwJWkVI/oIk2S7pIBWLzDyLEUcohrvJAA/4flNk8FkZpmD2Iv5q+n03dpSEorhs/GxncOeLVAA8NK+WlQ2Q1iAsjsXGgdc5sBmwHl0JPwrIZUAweCL8+QBMcfaAL7lcB3t97OFyOHIXyI2+pd7BGqFxcynGHJkLbhVKjmvl1mrcwJ2bON6Ch8rx0f5umsHCpoGM+pIR4p0Z9fcxQfBDBIzK0e9e0LO8IFkOwpTY4g1Z+C6jJZe7FwJJY7B6ACm2k4V6gJeFdhyo/Y+NPc3wLcb+q7Ua/mGDCpdcXKcFXeKsdJf07gJXp6QY3Y1kLrng46WjXlpIXQdnbwZhyMU3PMoetuUzGVXb5003ZsHc4hMylQ2/DRIMNRA0xZup8t9QGafGotUYUB97Z8Td+4y3nlyo//edxyGvVFlP1QlgiKWtjYqAqIbaJPKn8Y4vyEaXaWmbaIW92jiFbqj8N0XF1RMPQw+liNltDKzQOCANW6AzQClg+qEqUNOa6stipik5Z8opVGxqhgvjtuJniRPF7Wu1cz6IGFheEIMgdsaV/zzRVjXPV2yzbwqMdXYy0Q20Z9KX2giLrC6Ee7rEXPOf8JVXE2at/9QtZP8jp78MmGD2SAhs4GcV5WC7QFasb1KIdzyPQvEHR6uergYLDemHGIa3oPplTsvEMtg2FLGBROA4HyMdHcV5mfx2Zz86RXelj5qNb/A7LoOl1UnT30jP31545eY5kLKW6XLiwdnqR5il8aBe9gzm52/0GpMqcItJ1mraZkGUu6SfskGtoAibr2IA1BCCLIKBtHOS0TjAzP0JWMhhT17l5P9iCX98+pFgvUG5ude7PZBEk24nUhv4CSE/1sZ/TBQNplS9s/D5av8BX9KdlR/32FI7JXTFMx1y8rgEbKG4iZE3LUvzMQoIPlrmuldr1rN0+H7cxlWF/ZGdyd6eNoL5bOcrwu+/DxIaxwqZEhjppaxA5JQp+Lc4iQOvedf8eA9/qXpsht7Ugqu+L42hpWI7BH/lfVmt+Cz8GNC2YBEMqgtsh8nP5ZxHh3vydY06s6aE8X5K6OSusZdAkN8I96NJwKAfb7jtarOohIgBI6qJ0QRfoMGXzqc3FXayrKCeDZ7KrJsYENeDwupppXFa422FsW3hCeJCdKFzgbpCNHtkiCQyx9q2uX3PJ5QnVXVoxuVvbnLrbQJwAdKq99s6bDN6d5dMXn5TW/J6QeeF8hIC7Rb6rul49MyT1XZcNqavTkKd8ATiH4RJIck1AmfHL54N4q5++vmi9nhdaIEowZ8fSNIol4guGJVPREt9QXuAn7ROkxiUXKK6ALGyuSa6yNHTboBf2oitHa0Jajk3kMvNwqtUrtDWfsIExer7um0CR2GllGP5g4zuIVGbT067CJ0fL7HGVZUndlSPZWv9ukWFXCsm4a+OTtE578Gk1SU5lwBtyoUlg3gAFVFYKlwI5mDtARoRdO6wFF15noLW805yUtbUXopOBWhRCscIqklAFMFXJ4+49PFA2iJ2kCBTXKViSlzEYIuxXQvSIouPF9bF9njtkkVItHIzxkKi+8UATHTZcv5oVFAZP2yMkFKhQ7bC6go/dsHCUCDch8QX0d4y5+uTz2Trbw78aL60NaszOJx/8F5g61/NohrI9n0e2/rhuzM8RRj3eUN/9SxhoK+yGPHfoUBpdmtCeCFZVnIkwEROd4f4vGD0b7ozky3T/A9Z4Nnij7CdEXmFUCp4te1sLB+YPutYMXy5LvfbxKHRFct/f6Rv8EwYw7OcmDQpF6ywStNsNtq1o1sEF5chpK0OB1Wh4J1jJ4KpAq7iIUCtLHpXUobUwEnemYv+Zz86m+8mTWlfP/OTk0IOOivAvj723kuRhAj/fJGG3KnjG3GjycpxzyJK3s9+EJ0OetNiOxKiqTSeCNwao8avBaMhTY1mIT2FUKcJ9wlhK+uKsJWtNr1opXA62JfEw5Mx3LMCYrUVRw9peoYovdPXiDGrt0BwkPC6J/BAWrJuxUUxoJDFfAQF8z1o3C9xvcu2IKlkxe5jNOU5auh9zXdhIyLDp5Te+B2D7JZSAilu1NcBLb2EeY/A3st9gllaPoTKPMs5Ypiw8vWmNk4fC3WG0nq8rj1epZ2GvabLsyJag3i/WL0huEtrHVdno6PFrAh2OBnwD4IINOFLizl0KswapE/rAbWpOhOLrNURU3KClrAxWcpE4SlovxYk1rBA6ul7DpcfJHbgPKgZZeK55LS1tMZ5Jz9NNlamyVz6+uOVqofCEahL89qlJdUl4MGw8nOexuLXxmkaUN0LGXUsa7vZTe8OcBaXEOJmOlXwZxvfkYRKktJET5n2Wc3f79IDHWsI1s0+QAuFoJPhigSl242NHF7w1T8kEo8arqSh6vYYIjWSYNiyDoodNQ6CJnmsN6HR7/JgUxwvxJnuDYbiEA07FLTrIIg+uwX2Ag1u0ThKgSjk5fDw+Oi6BEqNxePmjLOj6rwOiaatj1HA4OpEn6cwbx82UZflrhxji77YBJCDvtLJlezp1VG3qPPZmLReQfTOKapOxuGLmYLxqsVyv+vszVuPOu0s2cYbwyXC88B4xb3VsthmYjsKb5VjFb0bBfQJwnXpoEO+w8N6KSbgx9mYtV9gK/U+aL3ufQBoPmSN3Tqc1jp9oDaI9fr3um0NS7gfl64jDvaDcQsgElHbYmRjc6cv0HsAMCUKPvqLCK/i5uc2J9G0NOVD88a2WoGC9ApGYEfP0WpbXBVf4hvcUMUJ4LKNRdL7H7kp7f00YPGDXumiGFDXpzQbr2qN9kwBFE//bth/fEEU7wnF857u8nFMku4GEcJQ7jdAzI82hUoJJHuJuzhZXq4pl8zI2TRlU8gAFm3jEHLRWIiI71vklsKEMiTsSvVkOEqE65Vb28jPOpghSqEAiXcWVs5TOVgRcbOgsfEilx1XLUT37qmWjTzFXFDHhvQeyFUURf3UZJNCH6uVfLgYfAFRO4gi/UkKtauLkxaLcneUbP/j7vPa0TCOrFY1U9EC63omMU01uBIqXc9rH+yFtZeh7xrZ5Ebdvr6ZENSjoFWIIBeOBsGwkRFffgjhqV9f2gr1NN82sEaoHZVwF+jJHS0JU2mLaqsyYo+loiGEBvQg3dL7qBduFScVUkb2j9+khX1U+xpwubuCqeTEqBWuwzcQMmvPQheIRI+exXidsXkee5ORd7Q2sYeTulnyDoBXN5XdeyrHJ6XSgMpfyR4W1WWrqgYwW4dDEfSPEpou77YzQ5+oPFGCRVRN/E50yIuQcoUIn7hlS25K0ETFpGXLZRrlrDCwSBirJOYNCZiYxW4Por8OWYSmAJ7tvhy2GczJf0Qt5ZddQhAIyNtwa2oY4mVZvNjmI1DAhfkiNP2th8GGTldH1fp/IbGIHyxJdELkOl0Zw09RDH/mI+13XK4m5qLFZzWO5ELgD3ip9H3M3P6Jc9JDnckoj6hnMwVHFN3mROzz8VTxJ/fU/uQV5XR8Dg+wgAtvHvdMc1NiDrSAm0dtbkUxwsagvBSV+a9H0H1FC7l2DVCfnIKruOJJl6qaSsK3pc2fbGtSlzq8pJl9PCiiy8zATE6JgwVakwm+m2DPvuZ+9iVfGBq2yLbmOTU0nDKWXFQON0nlSuX9siQ7qZiGVwUEo6KC39Lm7pFw7+hPXTpupxa5/lVZ/kdgXSRNK28tOznWEfCn37FCC5bg9myhSCh94OJAfIDlAD99NcudYtj7fRtYAArNVh6cK1NoGwPFm3gWhJRiwt/Bt3w1N76p/+Pssh7OGE/JgSu2VUAGi4149FinTcZBCr5fdYm+LqeUP6kV2mC9E6KYFnSXUNXpLxToPXbT8QayDdzWGE/lCr/DVVtLZ1tWCkvW6ztq6yn/4DBVLLZ921Q7UIpfMcuyJIKyy7/zxUg5Np4jU1QfgVZPXiYb16dvV966+CJBKaLgri15DEr3kgX7tH/jAFytvOtZ8VeN7oYKSX1UcnrCIHWi3MKk+QE6nGUJxontTQWmD9UumqjuiBE/Tut7OCE9SxJSMGWmUKfY+5IVrT7TI3jw1lJHsXHToG9fXcQbKZ4Jjy9mmjDf+mOex1gwvm01n0HKsy1esg6JwhZZgNpzPTQtaNc3gd1qa1LgKr9cPwbgnIrcakhi3GbnzOlbjYKqEI0sjpu08WBl0xGggtwXZTW0oCsxRvD7zfnM3cneXNH3ofkzndJfO6S7dpsfpNj1Ol3RNl3RNd+lJuktP0n16mu7TU7v7+fAbQ3BsT/6F9p5gBQoiQMP0tLWJhp34ZKlAkhKcnW+VDOFfsqdLOpULzDvnbBR9F3ga/2OnwMNuYegL5/cLnYR+cNDwXlQLbNSZk3910ks67aI30efTJoYpM/Exxw33pun5ZLth95v6fB3ab3NRBu0v9jL0eeBBBmOczLGzPXnYiLCdAQTgQsisDCKJ/gu/1uZV528YgQeQztdA+GZiCjExyEjmOkXp/pkyKyJGZ87mkXpGNjjizLD11hDCzSjXFVaQW3mElQuDgBQIQzlBi6anCJnyulwqqCy8O514+33dpAQo2q/0XF3iiKIFPTrb4YWb1rBPXZiSR7l/9rHV/G6wltNmNmfU8hsrjQYZgeYdY9EZHixnFHEF/me6e79lr3wUoktXONy6nia296SXSVLifF6kp58vaDBr086mLZ8S8ZpvYQ+MTfI3G5Uv+r8x8/yvrho6RnThGko2A4aEETCUmH8DgwbwNLG9J72kp/hVRxaN2SbcUCfaIb2CFhLtwp4aI2UEEj8frUqDpYCvcMWnyPoR2isse7I8+GUHizD4kkow1v6WNWGrVLNWOf3pfPg2oQBY6YRPc8bvtO3hZwunFNdPYU5pkOjoO4JNz+yGkL4HX31pmjTZP6oig35oyoTyDEmwRfWzRQcufN7NqQPaFgUZJRwr9f5iN6UGb9G+nJy+vZ8PaaKIIimCeKQ84zvZuy2Qwa0oZzmvoRh1ma0EbDQIrOSGPHX1ylYEfigEN13VAZ9jwA1meggfwOqv7Un9elV11joYKRe8Qb7F0lycSrcAe+CHgudTI9IDbfkbXGRWSueV79h6PLD35MPdOwR5LhRQhK3jUfAl+KgxLYVSepHXidV1e+p41q2RiF/qDxvyAkcAD5doJP4758iQaKs/eBOk2n6aXi18Wxja2un8IwwfTqZt+3n3cIdLrXZUXTndPbcfMJYJNgXLV4EOarveoNEEKLq3MYrcYcJgioWVelMFXJANcLtwvP9llF0HUcE8GoZKURkbzKsbWu2AmvczUl6mcYos14GNVwl03uu43V+7vkaeTrHV2F9aqhObiWr4q53gRwcxF7o0cQwidZLg9Tll7PJ4aUqGK+kNTJ08pCIjHK8ojLNhexlVzmoJQej4Zr0fLDJsRVWlG9sbRc7FjcTLJ9Xx/MuovzJj1lgogoeqD1fTQFFEaTSHFSPzTl1ASyPM/6odAYb8t9/58lTHsuAMreD25ZzigQeWO9ffiDaWDUGhf9kzOFk7LhAbuqaItckINnBKAQCPXGGYhi6W7zTCr2yd7ErpHroi2uNMBe8+KP2y1M3pOADgMoRP3q9l5MfONN9XduSCX7i7x4jw7be3maoNTAOuqGc23EMCW+P7Ir/fx5ctowYEx4G3qHnGY0Gpgvd7M93pTa1lVEmwSKwSXanDlIuFZ7CZz68cw/MmIrqFIUs3LX9F/qBu0RL3weiytvH3d4t1o93VXF3+G8KDX3muEsjo8EHIhYeWMLEXuwtXV366+sPtl2l/F9PiJ/xSX+0sdazVg/6O3zOmKvNHku5DKEJkXWFYMmOIk6C+NgoB2vrxfEhf/Jf3PtRidW24cx4vZzc9PnGwdJzHm6JnCrYYgFilI13AYTnfa8W9Y/vvYOMUfC/GTcPe6TL42fY/b+Zlnr9t01jdnAJ5SWq90wYMukGwVzubaQ27JQKzsUEsH+7Ishzx29SizER8WTIaA+/FuH0txq2DWxeX+adACaXgVeHJ6J7u0o+pSCaFl0331fxTomncVNPv2+BJvwbz8Tb5J2vjYypD2jHv0CsWR+nwcQvvQAZ9B+EW9MB0WVA6SSiiUeRYOQ/DLJ7/wIPgUDOGrGy1m1QejjO7neIdcODlsdX4AIuxHlg1sdAiMXoYSZrMHVk5iWdxILDTDu+JoIk/q3/cPrtpHC5LcBZPyrqBlMFNtefdtC9Hb/1tlQBDgXe7rUxn4KIDz1n0Xj4JJ6PFZ1BBQa6X/Sji0t5IXLzsxQu/27/FGa9tNjJ4eVXk6uL0QXIKVxoHyyDrQi/deZNX0pmVoZg3rBnuO5WWBnkGfrUNTWEQDw20f7KMm4I/b8N3ozHKb+l9hnL6c2/hF3gAGTx+NSfpp8EquQkVw1jwJ7QG6+k4ZHl+2wZClNqbRU1E4WvuHeli4+dHG6/JEuFGaYe/wGC09Irx42MDwazaoYXSlEOtxUcbB3T10UXjYIE6DcHf7Lk2iaDHftDljAQveYEOpx/WqRb5ae2IXRD5Dz4njT9rj4LIo+0sbgmquZ7eMU5ABui1Q9bkAZdzp2t69bAzLmWrbXLoiUhimYGoiPfEqBNPetruvP9rJTu3nqaB9tFJipT+d+lu9iVfloHcWskc9SReVvaLm7Gvmg8iz6CCOLMfpaN60HgnlaPE67QN3bs1401ZyzRXeDK6PFobvJQXcag9K50hDyWZa2ecedTAf/IZrVlzRsQxEIIlTtDUyOxiXLV9qsMGXPNw1sQWWqFIP7XlG4pj8ASdIEHP8YvNCmF0bkODGEPCnhYU2Q1DPAX9vDEo9tIV7xhiLzrQ6xDl9o/gk67Bh7qE7UYZIehvmOlKoZpH71emF/8kqqgpBTL1ZCyJcrOGTOs6eX6UL4pEQgjBWBJCCMYuAQjBWBJCCC0ZteWk7dYR0lMK+C4V4LtUgN8pAnwnpOwkgSr4JtfGyJPvJ5fD8Rgxt4Q2S7KF56Ks74ZpfJnAQz4woLAGafArf9xtwzBgwwCsNyHixRSLEbovPggvEgxn+G6NrtOK6bz6JCxNLzhcBXftsP1Gy0dlHrmGhOo4wwOJky9bGaNuG56TMkkvpt9I0z+wx2bw8cBaa6wHLjoR1sIE4+WhIkkJccFL2fsezF0sn10z8QVqCZ7aqSekDJ7q+Ph12l/mnN7MO/VYjFXs0jQztJsHXMpZs8IoN0rwbaNeMkpGMat2Ui3uxusfFeP7960MRqc0MIVoznk3O+EitvVBcgNNxFkxjc735eaZZyiq26ackeeMmuYacqPT7WoHbpjYuddMPtOUeSKBWWNFGWkXl32ESAP+XmHIRZP+lyJd47Y1EkaZlyEcOq/Y2nXOGCgNPSja0JK2NibIaRUiBO6Bz1Jh++xcGgoa+h4J0Sz3kjRN9FEyYhXF7XjLVUCremk5FLJ9mpc9YvgC9oxvtS3azI7ZHKpRn9oGjrfHNMb3KGqPCb+iIr1Qu+wQRbYnNS1WmgxEc4bInM2HPBnKKvlWazjL+rW6RUb08eGEkywemtyYTymicgCStslJGY9NXkwlz/HU5K8Z5C1eNLk1sxxQh3Y6h6mrFyCZH0kXfswjpnn4eWGmwU60waWvz+dYnwLiyXCLuPy8POj2CdDSC70x9T8v2m0QUgTBBKabfU88dTEqfeGOnoNXLeFlTSvlK6doTLwYucYDIkm0y1TRq6d4oau06ltKdaPTn3yWFFedVl7YvymMoGGVobNLUyeuKCcwFRbLPYxyL4uzVPBmqugBOFpiatxVyqaqQ578aCjPaZc7fIBPhNqX7d8Jy+2G4wthihkuwYDBq1wuDL7kU33ZJ/0PjJXcj1ZDCGsPkBuPPIEIUlIngfSdfeZTrsdCo4NeUtjI6xsc38h+S7A0f8gFZ42ee8BprgN1IFC2TwrRXsV4ADso0uKhyY35lDIqByBpm5w8x2OTF1PJWzw1+WsGOcSLJrdmxt7kqCA9ugK8gU3xAxnJLw8T/kawL6wxD1sXjY2WOOh2p1LSUyC/lRMaA5NG1yXXWItHS/CKsQSdv0B1Q7DBs1aMmCYrQ1OMhsLU0wcoBrEtiufIYZaMSf1H3w0guhk5rGvFpW1B2mZ5yeaKCUIiwEHg903Kh+6GGkHjYq7XlOK6ltteTNS2j9rPukJteMnYaRCdPvyOVx9Lo9+nzy94BVnBhvzddKdye8f9M9LOsGkrVS5av54tvgmofxIuvCWyFmBisk9nX1ZerHfWKvPAT3ZzOpY0Zt4D6AzoXIwS4dF0SREKrC5XaoDaqHWay75wpE5kkef8zNgatUZdUIaAq8XM3GNFDJRCxzPWIpM556DKhghc1YWxrPNPOJjOeaHPl9QB3LsRV2uC5Tt+tDpy+BS3Tq0Kr9jW3X9UwcL7oovBXr0s11xobLNlaN2zXimS18ku0WqBRMlwtYLM9sauLPCLTOZvrUr+AJnGSGibL0BMeVW9t681Ngbx2OL6kNiabeqqIqUcd5kUXegJmfehKXvSNL9iMkJrHBVqSk0qQw8TCAxBA7yYYGEQi8mI2tHkZVmv0IK8DQyqUcwWSRVeA67Iiewpa46yD0Tq5+gYeKNZC7lzT6RIjA+6/QdyZq2nK8vjyXfAlQqEE6Z0MwgcOK+HDrg0dH2F88H9DK9LpZA7AnTVh2wEq1gIXTeGGceo6vbpNeesFRxl1kc3V71jhHMLOnCKSb3KjzLr6ClVQVnvmDooAem+naG1rHkDnEGRw2L5/T6hXShsO2BtuzVbHNjIcoeDdyB9RfXoAowPmbqjZMwtzxSAr0GmgxkBKsAePd3NinbE4FnBzPU9vlCLgd81XuE1aEN8itm0jlEd8PM6Mk6+UaGJu0EMSM9ahnS6iOeMb4ZyFqiw6Zg+EIjkbblYOMB0CWoQ3gXGawCK/TYNvzdEfSQ/RLo1kpCQAsDTiQmbzkblpaCqnDKnYtKJaKakjzNST9aeStRU7+aMo81zy0TH3mKR09sRS3E/gpFiMEdfIKNiaHxb/UYbp1bOc+txtSFLrJw+blSwHYiEzaHZnWMk9kOiPqGKUwoCbxm6sRuy8TW/vFs0PpZ0ETHIvY2HZXUnBF7n6spIRsl1RkpU0dPozTufKa3lKI+Idjt12shrj1dEjnDwA2FkZGHhoz0Bm95+MWbToLKK0RkKaTar2nZc8/jGtj2kE8tRqpLxnvKaSMnjJD4xJKPkQZItvqgu3jlTpVlIiPBpBxuw2Xbh1KiVHmhUtdefBvGgpAUPsbggu8kV72VCYETNvD01a3hR63wZ1S0x/7B0Fu1ZKW/4sOG7EOA42MCUqVWb08jGvSCJ7IobnYw4h0Kb9wIR9FZo8p5IlCxanITkZadYg/JKDMkocZCyKEEZbi49TLBzBq3u36Jld0q0T5EpTKK1BJenOGkAdKQlaL/BRsKIvQnE67ev376jcHUxQrApi/Eg3Bkq0ehPl3OgBAGoviOT4QE7I0YwtL7PR5I/nGowCckzYCdsh6l3gabfHNbNna7j+rEckYRJIec75QVhdijLf64dvZeTJx3XioQPSGhxZDR/P6lUyqc52wA6CvDZKK/aQYw+HU7VLe+iRKGVa5xpP19ogcdr+o0pvypQciu6pXoaOm4M16LSFMVWR0Xah4fu22J7+O8Hc0jtzTzLlOTjtqrrHEPyjY4iQyeV+oOHxXzanxP4dXxoexY8/8X236Y7SlKGrmcjef8nmb8pS7pFerXXPqk1W1uL4vt4U1dfShPrppQp26nlsMQmgGFK3CdkSjosIOQTtf4DIkJWEN1DJWRwfsqLGsXKqZJYZtHrpxmoxsTuh5EPiOh5zDWU+qbn15yxxMiAL3o/d0DZFd/UWHPSo5ux96eVEduH1iec/q/Po/fp+/mliuP32fhzq/p30tWj/yFammTXRYumC5OZIV5hovOv7RLB1lF0HrKeeSwKy4bXQe7HYTP21yV9czaF1I7HKHt50v4JurJbzXb8TKaafNFOENcvvTLxqDfRe9KlLPYU9OnSAwlLt8GNcAu/vDCUAAfllMjB4B4MSG4KsgInJjBXf72u0J8FRY/KJF9oWqUTiQ7A1ysCRhUavSxnK5THYINDA6oh3AsKRbX+ifSgwLroDQ3kl79VN6QO4iK+uHqUw6TwZ0AKfvXPFIYK0yNXC+/4uJdARegmw+DY38zDxXHQbyi8cdYxO0YqZrPoPJfDVVoa+eyyfhYoEIHcX+huLwWPwAlY9Y1w7j8qvV0VWTc92Q6XuOls45VQCesPXHkRpWBTfkVIiinBZ5q4xTQAhWXH6TmZGL8bW9XcpFT/hhIOS0c6BrAx/cbuywz8YZixK3x0Gkon1qghCo87+7gNHoujWnAtyXOYDacT7La1l2R5VFRcaSYutlTb6+kNcPeOK+bxxB42k/XsY8hvcklnK6vAjs1BsVWbXqcRVUo4MpYZJ59h5R9EMg3zAxrkBBIwKI0K+TF9RBgrwV3yZYrJ60rcueYTnwV2iTwbYtZ5LTFO6bWnKKXpZoGiA/2hG0QkT0juyzIJJ+GLmYKcxqRqecAaLgnc+5jBqR4/ZoH7qghnJnsrPAANgPqxGdRrv/Z5Z7eE6c2sii0vBYRXU1Yw2Pm4cakdm/8HwFFMeDvpH/YXsLW2sxtR1w5e45pGd6eE2CCRsNJERpShKM1vmJpr9Uh6Ep1y7MIzkXiVj3NQpEtA+4eFectkNkqOSIsIQNgcsDegp9DYyrEXeeTLkZYhSERyY305RAzgEOC6Wr1CVxAvwX1A/MnHV5QiAvxUzHe8/KzyV2wMT5/CrCKeJNr+Ek+uqin656oQeazjjvj9T5gsDNZRTTheUeRHTUvHec6Cn1Raw5+xJ0mWtgRovXSWHtghbZizS/cOWFxu7g4lqke6Oz45nUO01f91nIgi4Wq4tkm5MIvo/MeJrCKUj4BkfKjpi8FxnidAa1G8KiZwHj1EhWP4DhkHhfiicEVESCESIBEhhSdCnntirH9InwsFVYiKtVmvGhRwDqgfV118J3t02XVki52mL6+EKHgvs2x9cTIvGFyyPD84AU9QHDyKu9vrn25ZccY0u3t43ACMHnwhvgqIQuWP8OK/vgVIok5rSRYnMnN3rQMNSXnCmX06VtoduHkkW+LJNNgvoJBWRlR6udSGRQa02KXA3YgVJUFBm7yysUyezOJt8mMW9YRmxxc+1kglfeOjeK3qtl6GA/bn9PmAjTtTsLdPIHc6iQMCLSuDNmiqC+LhVmo+G38nDirmsGULDGmA26D0uMbjDO0keJyYNz0sU95bVTDz2BcNWC0u0oHFAL0M8GHOmGP/t9ZP1gqesTjvTq/QFUnbYaYgm6X2/P9eUsQAqaCn2yoQzw0t7yCSOKjthVYittuIkhRivJYcg8swEyZPDbIvKMq2iQisrH/q2hqpOETueHWITuKWj1Eerf+WxkJlNfkaMpkV86fKf5ho64bGd8Prw0w04FNUU4JoMSscajiuk2e35OjNGaHKBNChq9DQZPzc4FDt8tlmZhuNgr63sz+xFw02HFqwZZwo4lnT48UsFOPbd4tdd7cc97ZnHgFqMUgT6NMYwHbtqg0AhtBa1rbLyDYuylboeuhKbNBhApKbhXU0IydmTlL+1zqKPOik1I7kUUpUFiHhI+FQZxpuXs+jWSXfUFfKZmhOkGiyapXmn4HvJ5SE3R4bzK0O8HwgvYkllDpNgSnBKPj6cKixLAemqvo/hBtvGlBXWmDTyBPcbbwap1av5t+JRz8YJu9Lh2koNPXiQjIa7Qq0kgNcV7OWSPvp5n5pfuYZDpLKEj/KfMmnAQEQOOsUrKjXI49Xp0jxARmaspSixKpxEJ2vr8Zsp5lRV64ZD+7IN320/0gk6wJveOK50+ca5LmWAY3vF0b0F+CfJ6gxDFVf6ubSuA0Y8cKeluTLXuRc2lgp/w+QhP2JO9efSixnOtcJCaXvqbBLQr+Vf88NBGvvx1J2vd2gRNGiCeYYGVy/RvAe47niyVVjXRC0FpYHB4jyFIILJUWuwmWF5f5XkcMWJaPPBxu3VH6M8qDTTSaI8XpOT4ARllWWSkZTpK462Y8CpoRjeIqe20bHfiuOm8II2/YJZ9treVw7VGtdMsT5tuxituVWMtBUewcPJqGA/oKDD5JB+qIY4pik/gAv7+dWj/jJosgAnH4GzgjnmdoY/zviSYBF3MFcNQZLknQmcgSmfxTbpxcDzh3bEWPTleLadyjnIEdpQvZh75fwZ4pldPxAImgwWi2CZgDnhGL+XDoCPcMa3xioAhRtJQrnos1IkGiaE5+qq8MeQqDsYgtcY3FfqM/gfwhUv1wZt2tzKLltLO2okOCAHlCdOq5lAnTs4KzHr6tbVQhaiTRAeNM4czM7awPOxivVOAcqMKBu9KVpRSdovu3+VCDpzDWvsjDJ01AopL9HN/jTBiwP3MfBMtiyckoAM1idM3jkOgVow6LF0R7btHqC8wvDuUyfeoCQwAqiEcO4BHO2iDNVLNBxIZOy8nrl+0JYsTBImhCKgUK4mHqSH8lFtAIqx6dyzlTkHp4ioVWcmCOhcJf6m0xAML4NaroZjoSQEwNQMvt3D3uGo5OeTo88vIosQn7uOs8GRHtz8sQCliGdA6WDYCEc6eIrgAb53ODao0z6oRlUzp2VPoqURjtfhRIW6ECKVUV6GYjFztK5x6N5PkF9ejyvav47Ru/c1rWDxqI0Kit6KUWNBksQCYZYCDPgOCmgEiYUq9fLwA4d3xPXWx34/MiD6ZFApWGwD8rEX3JPuvu6C8rKcxa9jNtIdhJGs5IQnZs5O8oa6TZbB8Mprt4huqZFly55W/C2EDyIZH2929PNHFlsY+4WxVazuUJHaE9Ne3feMnwmhy5B6AOKI/SG/58g1n+MoRmg1f8zdsaB1xTE3KC4VCQ17vXC16icEMjUuSXm3t4wzoQw3UNl7h3ccb+IX02LyWVeTLzM4hzwT89IzipuCoiqg5FikFoBpiVE9aTf5AjawP+TiBhYzESaFZC9nx7f/fGQQ4w6CUHVxR6lyznbMvsIK7gqRZH/PwsCe7Ahxwt3H2Sw+xHyO6OQ6BkfzHCvRHvSD6zt4z/V6abWzWARWZr+vB0M9CiG6sxb7NjDcJz0DAyVHwWOkFS4ZTvrFwKHxSxqu0IILVoeuSlParQS7kbEFSyMhF4zIxaye3K9/tCE6w4cEOJwQgkssYWyEIrwKx3P/XZl9UfuEhD3wuVk36i0blWAb4FTheT1gSfNKRHr2Cs8hfe+4k1hk7FqjtC6sbI9KfbXo8RpY4f2Pm1g43BjX1b9rB2Z47wqg0PIUVI9d26CeWh+Tg1eV3IqDtATQjvQpdFgCZOeXcy2cd77Jr9rLDG8kxCzoBZn6fgEV1JOCfgUcgO5pY2sB5GvExL/H7dh/ISOGSN44nhOFbwbEZvlNKwP/hBo3Npf1L+2roykOzq8gX3PYzwcecy3wLBdCbJ02s5ZyU+5Mvq2ooSgKJxO1z/g+ZcEM5ca1PVINepHn3MkKF5EMcJQboI9VLLacz+7vC6j7lEp2UVUbsh4aib5s2jZ1YHazUgkcMsQDK5moY2hmp4ZA6nJBKv9JyxPBc/vEUm2GM+MHTHZQ7CdkBiuY1jq+SumOPS0ziPlinndqSKIqKoHOfpnsY6ic1sg78sMIrjwxi1JIOVsjVFqe11VJi198xEbrJb6ylZA+JliMVPbRRiwJPZZ6kFhS++noq5Q0n/vH98XguWeYusLxQzDF330IkolAOPxxYSSL3Cw2k+ADG2fvBqMjS8Isgo0BY39wlNNeBrPGoKo+q5/A6NchhZ6Kk+3JF7niynurJh5q1xPZ5qd9e9kZc5INZTbU3EkD4xCH4u/S9xYEYw3g6B4/cwDwTstjnUP4D/90sqsFMvDMWrfcnAoil9jCz4QtqSxvpoSHI2dJwO8lb/JxBW0vFNmydhBgpGQiIFUU9BpGwg1Z7WphYPTX6+GAFNNyEsEgGNipiWNx3VFIqhIx844rzSvcVONCQYcHPUmpwI3rKhdeoE/rYIIb9Eny+fMqfGcdKwRUKqqicI/StOCTWMxSKJeGe1UVC1uhBd1ylPGTNFEmeggmelUAcNeE3/Y8TYRwoqNRIkguDNDf1rviT+ec/mbmDCUPBei51vxOpHiRBwSO144qAQAvETpVKRWfJWn5d/ffdpp5ZKHqcDesqQkOSupNXY5bI8qHJaAbn6JXuEeJEcIzDkiA1senmCFtRJwH+fyTfVP077Mbn08FN8op1EOW5RzDNzKTHaSVVo6LujCCHF/d9B4n82yMKCREfeVoshGcIy5Xe0LcoPFiZkExgObeTIWgSghVHmXDThpJ+SkPKq1ICDgIhbc7101gpbl9W5tLy3FCh0Fc2/w53hxmMrwNCb7iPRw6SNf0x4XHoDReLifOceIvrKf4EsnLAyLZ3eZz+le2Dr3icWKL66q1LhwQJvTGVv73QBkAEdw8sPyEUV+Grn0ns60Pi/nNAzXx3oCFutPgKcuH1DNIMIAeXW6pcWiO4Tis9aXfy8YierilFi4UhOp/FhVr2ob4xKKT4AkTy+2MRakReWiAbAGoDXbJ2E2/jA2Fssa4LEo7u9iSYMzpJyhub4PuQuFL4vPIUu5H6sNIIw1OfFHY477AMXyCOlUrJeQHeMaz0c2/Dq0YYqa3xOLX15K9qL/r/P2e2h0fmfzryMAemreYJN9pISbEGsBuPCABLIgjQ3UzdsLQEVlrz2YUpvR0HStKL76eU07t8BsX6ArdQFgAJPlb8ogLRxT3G1rEHaRPhhRSsV478fX/hjSOA4GMHn0aBig8pjgnj0p8Id4Gbsy9uFXdodTNQ0gvLvjpqeJ6V7jtUUHZDJ0rEZShwpMUERQJRf+/Ddfd5anZr2ajXkQyTWYOUpUy5ZIC8FFaNOYti5x7jny/AHYkUrpu0kGXbnywfGHzLEVoeI9MV+DmQlmFTcWYhXzAhBrUtdj/NDDS6UfW4ENeOWyW0tAUyz9er0l5RcAB7xggIbKPC3wpbT+xSNR/a5CHeZQeBWbfm5gG1o1tWnDP/1sDCqB844yjacPDOG5tTzgr+Y634bFAR4vd0q/Ir9JPl6gOIixSfyt9nl50UfLGxcuBktWhgkY8lLRgP/QUEhfcGpJ/aSBTubPY9ubq2koU89YjK1ZFn/VMXgszdZzp9P9hGidCmidHM8kRksI5Hv+2fEIoHJLE/iL/ceIyFOR72Nbb/tcCgJJWu0aMmm8pjwXmz//W6YmCWSWGxYc313S/zX9wwLoIEA3aY6oEml2TXK16Lbtzg7LLBHMt6Psr2Ns6n+lmaR1IacUs16kO87pUOvsuDiX4bo2lshho1EMT4Ftw+jKOKaDGDLiq5GfzBTIdPwM9KYK8NM+bZFHvPHL/rPhV9zcV8tvX3r3s/6wUG73aZ7FVI1B3vJLnRa/pWYQVwLCOGIN1n3dE+PuSQVMnWCk9AZ8YY8apoOAZWBMueaR6AbhAW82R9ISofegEo7bOyRoWidmKsUCueO6FozEtSGaa7pKn7VpMrBYtfxcT5UrpD5kBfNBh5RX9B6FR3nkFp7HP4dkJB8WAeTdjdSjtLHH8cWjrnjZs/fTCd3c7rwQsde4W9Ckwti6/ezgRqf21QvwUcOiy66pr1jf3jKd0fzkUubMcndosoBp9VNuce/uSRwaDa43Ugii11WvFlsTGZVXzMfyb2z94i6yIkm+KydCQjv6wo1nsIF+46ljE+TW9EM8fNo2gQXhEki0ETF+VucYfHHJgvZOp5KF2tPiL8w9J+0wVbOHwxg9Hg13uQ83ht2x9J3aybF3d5jO04qrtlPs+4mnRvbwR+/xgVgwitvreQV4t2mW43QEjX6Cb56ESmMB3TvxgAJ1KJHXuLT+UM5dEVK+dRpAbJ0tElT5Aqu/1aRgbAfKCuLXxUYI9hCOZpEGljxDkSezF7st0JncmsHWqw3a+DrcD1NRkxO9OGcXR6SUzyK94MsaUfH1oRWFc8SSOWkJohOTWXLh/KjIylju359idHzO9sg6FPQ7R7chvqcRosUaqOljnJQoez4acoYEziGDjh190iQjGkgx/6JZY0dZVqhbg2nJj3Bsr5qHLGvEtZ3lWjokIXgv5SLMVSCkBoLkqRNH+DhmQe2wRqcd7Mvjo643Gww6BoJgNBNgC9mo+xrYOUt685NOX2Q3Oc5kF9aKLhwOljkH+3eAUubpU8DedivNUrrhkwxpfv4+O+35/UZr/XFNYeFiyJLY4SVqvwRCO/RPPwhyGiOJ4zzf49/MQ6qJQ1wRMcK1C9yxfTjRnl2XR40/t7P59ssJO+BIX8pMar3/WZhnTubJyZcJGer36c5J6jbDv1fMTVWYk79vyc2vpu8ogfExOPjmfUmjlqrbKfEHjD+IFxIN4Ee8bSX3EznLKHmJz23m9LpS0jWE/UxPsDXs/XyICLHTCU9wBXzmHw6diiQzd1Ml4xmhg+Y5CjIAL5QUX5AvLJBzU5qbSjaxm/ca94wj3xve8K/jxKvM16V4Sw5v00EId8M8yNU6Z7Qqx2BbZeDEvwu9BLbA3Z+PcDgRbvyv+GVbn+O07dDKVMK3cZ2JhI1sABECyWugW2dEZpkMnReH2npIw8TqXvWCgs4a3xTxsFIa8ac1vcyxYTPGLuC5rnjODgdWWsZSV3JzU4zaEvj05kHiNxlJ1jSWHm6EWrOpaPtZx38x/fMhURUKhXSprLwtMM4jzGdEjyhXMoXozCLtYJ3UyAgGX4J61AayfHSYqCfMH+L+Eermna/MHgCFj4VtsIRxB4YPwS279KyhrQJIkOei54Y43xixiczexY5aS4lDESwQX8wzH6+mQ3zs1P1o67LBmrmztq+Vu52wqIIzC6ThJk/WB8DybhWCS593EuzqcUFp48NZ8llG6JnhOzJ0AqkR/Mnrx0wjQKmc8gDqj6l84oOixWv+EhVCdsEyox4gNCdYh6Bay/OuCYVpDrxgQgdwQu2ZWd7JjRTpIVHphhpUeicnpyku4aP46LMocf7zDbxjG8HPwEsZdIoD9QqojJsJcHaPznCp/9it2U+XaUVGWWuEuF/WEUiBbN42GayZ+iA3mkZS8E9IJ8jUlY7seA6UteGd8igJKhW4zVplee00o7iNxdRS3bkdU7SwyTS5Z3s0K9han+qZnogYtUvkOFx1nZ2eaqg261u8eDXLAcUzLwPC1AyQ4bWEzIKwIpc2CHXk+IsxlWLK7AfLWttqX8jmlCZCoh+aKotzf3DIqbw8spHZFx+lYvQL+FfCf7wW/+UWGWYWxXuAYrGvTN31VghFMWaFJJyYl4EmziCEFKE6UcBVfGHeSLHY8w+qKcnyyojLgt1iZlVybnWirhYb1PyipbNG+Z7MaWbAd4m68QvVmmLlh0SNhYwQwxDCJkuXVZkQqT7Ksmie2Ktu1W7hjtWZVhYZIslSURUDtNU31adpnV11W9Lj8ItgC2/bT0levSGts5A0K9uLrzr+oVJhgpF5tHtonjag1Vt8cS+UeWmWSxK2ZCZgcDpCXkmrRViUP9ehw2KVB1uZfaBFB9oa1oylICk0Swuv8ocUlRt00DSrs/Hp0A4Knz4Gy2j+0G2zcI7JAsiet9ncmck5BqjT6of2ZsO8Qh6BqNlv1GodX3iVTnB3Mo5DBLX9EDJKGZt6aTnizeYBK11Y9cL7ODK2+/5gI5ZKj5lMPd4cGuR+hd2yfxgAp8eFP9TAF9rcaZYtLv81w4xnfnCpe1El5/Q1yu2ksNKcGZDqAPRROykuaghswe5C7ZlzZysSC1zsw3QcltyPsPknAU1dHHp/7E94sNuRMK2wuXxw1weLP/QmUMj7EsIFyC7ltjsn+x97eXic+v4fpcF6TPLJmo5qYE38U4cjEdnSPx2Q4eMWObx/HFtoKG4rjWFnobWmdduacGmns8at2zy5yydrO24z+j+78cWeeY0lYuDq4XdVHcqYDLYWyLehCmVKhI4Zm6P08k7Qv3UmDXeq2M0viYY16B35fhW8FUsSAndX5xooiatsHDeKp7/pWmtNuPP7gzsrn1RiT9ZyQLBvRkO2ggikLf/Df2yz/ky2tRb2zaNQYaeXD3pySo50gWPyPXl3n3J7l4td3PU25ddpF3kasEPQjAYVaj0gQWs3ZsFBsc8hgEDBRtCExFH4IaOxhon+fCZX/85cZ+mt3ERRGPTkpVnldGEIipIMTCu6nzgtV1OjAN42mbPScejEXGvP+N1bBsxSGmss0PYLEbVkXbCZZWxoYZ8wHbYf9jqFyCfrO+4hxkz1Xk/4sxilQm57S0UKwr6woaHnMV9h71m+yrG8Klz08VXIzVpik2RmD9IpbemXBfBLsFnOUEmTy7ddUdqE/rSm0eJwKoHXKWhKYD69pl28RRqPACbJwgcJekpfbIPyPs0bLidE+FO0slSZAXSkg9JWNqggqgo/PrYYmVCuk8ls2IZ8JmZDPEgh2p6oZqhiPZHDabUlm7ofY8Qpc/lkjccdIk5pdvBKNo5eYGDBC+qvguQk+aLI5bk881E8RmrZGySKb3AkOFYnI9TWji0fT10pUy/HGDylyidrO1R+G2jDx6HrI221N63NCia4tepJHeEsMQJHZkyw68DvFqMy/PPOVwEhkRHMfHpt6XMowsQvZo6oVTv9dCchb7aRHPnrS65h4dF+8uT+H9b4K+mJ6Zbd+UOeH0UUXwj5xbG/qyzZ9uByQ067DDNzGI0pwf9Ny74nmTh1H3Ki71uQv1IT8kFrQ/q7WOnNdP5lHlgw9PeQn3IkvHspmtDcNlUuRMDmSfIRbI6Iob5AMzXx3w6r+f3/LFsHRs5ZDEjkjd16/SIrP8VZUpmnRa1zJAOsS1TDXHxWUJpm3AHMPVZvghkfkTKQsSHCFhceLIdEaSwSc8kT7QW3luRk3Qhg5sBg3UxCWoHG5y/TPA0umB7DCTDSikI3s9a1G3wWZniWPAcoHcVYLiwWA5EmNNGoefjv0sG4fY+LF1dJw6oTqczDF2fR2YMsJPKx8tVjxGJD2/rcMIhnZTT8+yvFIqpov8UVfLGek60p6kWGnjIg8hb8/olo4b6arw1bGAFFYq2+d3CR3zXVhSmQ6btXTgQSGEpoc4V3QBefMaYoj0ifDxZYZZQafFjK8FMw5oDslQ22EBp2QvOx/OdBg2yhGS9+xmMIoQ3h5xsZ8QOPeDVViOlx1Zb+L4yXhQF2Afp3acrXYy4EcCJU7+ifpGsILwvj9D50YTxyfDwX4dUiH0V8OFFaaRn/gVX9GHMTj8wdiI0sqlAw9fXl5FCAJF5Hb1G4ww3cUcoasJfGLKxTmOs420VUPo5VOAF0ZFoJCqLwPMw9/xyhuGjcvjOu75RGkkM3hurxQovQ4Kma7Q+AXgHJdAx6Uihlg3l2MszfB6FXMgQ9HLxCJoFY+8CkZMR6KR+W5943fOIhUBQsyAQTJzkNUkwaurqkzitK+b2ViTYZRsarxaqvdzC218bUuWgJVjwgjtk302DH1Tk4mgglorVFk0aVdVR1pgjX48JEAMngURS2/QldluKyQyta4IobjBQRtTpw6YeWScBb27OnGGwClDmILoIq6K7hFc1/qlHAnBHkfFN6tOv53zPp2X3KEDae81KdJi+FpBAzJZpiGrNmSosVp1erAYAIC4EjBgh/W+mvC3g1LlAXtxxLTTJG734GSGCsALsEOOrfuMkJ/7fCux2mEjCpQq+wZoiulk2eBTlRe3W8AWDv1dfD9/j9VeXhcKouFqG8HtJdmMxeOZPpobfeMnDn7o5nZIxoebRQff6JwOIQT8RChjZBxrRCLopwwDoyrzcASdf148P1709n2rsXWfynqrZPY5JdofC3tmaQSmM6YKVjxBLnJK3+hRIO0lfGgQMvvjJY4wRZ2E/YyA06fL6ujAnbImLav2cFmfKuEnW7D7cqxmq2NYi73d56YMzY1iKruwRJb2nWMg/Y953nS58g7J+RakLkCvS2MOiVf/pD+mDtysZftv7Ue+/RpaN3Tt4avDEycum3K+azhFfVsOyaFk0rTQz/RcC/Ci6VjjSy1+8R1gRPbkAdJPPHCf58sjwlNnJnmEumhDHHMYfP0eZoiqmLYTF5MZaiKXAwppKQsNKkPHfD/wLIRdRfiBxkRzPwLPU5Vs2uyIHV/gtH80O1SGSdOQCpLdTpEKI5MyAblv0fKDA/F2iMMqJ4Hgd+/VWNlv0XD/75LgbBCuk8ybmF/+KBH5It/R8to2+mSjzbS2WedebKWnGX8H/xaH+kXVM2Nk1Ik3CpIKSNJrlFNH9h0xR0XHTkvRnEgzVUElbo7x+WQ6OUsDS1gVMpirVtC3WZCtf+5QPjdlU1hUawxV+v38V/VZgOEnplrEsERBhzzTzWzLYmf2oCGueS0Z5H2CAXjqmvi8knenbb0XuMn+vGrMmdOF4nJMCg4N60SvkXOBB/V9IdWEUmvqFxx68Tpr7jbjU4viXpoN4JO4G7QStKOn2uC346boO8R1fLA5a8bVd0XuMzF7NWO5iUCVfVIvc4JUBiuXfezFMsNXYM3TZEjgVgfJwY+a6kkxiB/UlR7kFfpjChLrz4mxLwSFhqzHa15GA07VvZdRLCCzYb6ySKS8cTjSkg1u5Hek3LGEMjXa8EtviBGTK+iLrnfo44RIkoMr30t42EJYovP1UvsIqYHw/xJ1/WHZjCZpF4kTXDcedojVOFWuPRslB78oWF616MlOqTl6z9DUtLfr4to8zvfsZS5ENUQ869sooBorwYCOAGa/yA94BfdZRNOtadyvPbYWTqUvIMykHeYpMLH7c/iaQYlsBoQwFFVDzNkJwdeCiGY23kEPUTKhRW1GCmrwYAPPfWfBSWKUYBNPs8rvZ6iwx4UnbhKH6QdweWlaEvpz8PLozeOP60BZ234PMQPE9V0SCiF+FrSzgsHYQ/ppFNp+8KOPbXzeOi1I03to9MXXcaJW79KfAeSLUmq7sk465JFI7dyMNMi7deU/28RXhtJ5JU7mFSeO18ZOPthVKRZq2vpbX5+5mn2Qt3JnSnSKokpVvKSvckVvm3vb4MaKQb/t6YhVw03Ly7BjmdjVR5M5p0gxL05eQZUDT75FG22Ps5JqspkZnwk7AaJWovwjWqXhmJ0XOkeJeESkPMmOFVzBYxn2U5ig2mhXyHbeh7jeIdEh4xn0mQADjflpKaaRyyE1XuuuS0xzIO+oEus3Bjd9TCr+q9cNzcienJhHQSUR93TwkMeZepVH7g87MpBPHDjJCz1EAHeS6TEtc4LaOE/Z2zmKwY6KsR0QYK5YgqzXBuoapIoKjYwrBwBRChnNscN/eL4z2sQK1+6UOXn4sS3lbSjRmfHZlLNzRdq25HSkbWPzo31BqXzX69kB6lPHCNL37LvMf0WuVCeoN2ZWA4mTF4s2v2BWojAd+TUB9t+jdbome/AyVRcd86ImjFdLeCWAT5cTUqCxr3AzDBdS+FpNUwAZtGRdYq1RHkYqpcO4IaWV8sxvp1E8QokcMRebfefKaAOlSXYxugZ8Johx4JhAfOUyj52qqVHIulIWYCKvWSglykGPH0uqUu1Ys0Q5WYAgJXcp84C8UaGcpRVasbihI2yAr8h8MQfvd/KW3Has+kNVKGlzBKEP8AnHcZgWyl8/CjAMUx2j0F1czATJ6MvkBkS8SL9iM3z0G+5WwljBJcWQ9mNVAccrvaEFKXPnjjQwne9afEau7Ck65U4P5JMiGtiDDLSW6xvPAsmdC1KNskTTEK1FkAIr97pbaP1zH9dHF3aOeJXgcX/O0yyUMhMA4y0fEo2pmiAqRt4msCAqzBgHswziEW3kEbKjLhFTKOqS1iFEh42i07Q5Mc8PZ+C9Mt0YBnfegctLgNkryv1MKjQ5YWeyMhAx3kSnNMAWfqe+HgmCPBfwO0mFyGS3BvTgHIwlHEd4g52sFasJfTshep60UwNyOUpCgiQsvFf9lCpSgKvUwUnp7yVLNMmKQpaGlOkDRXDduLS5mPkTTLeZ95Ma373DQ127vxpY3v1vbs8dZW0gp0Nj2doAj+UZGvBANJ1GCpFKryqbfSOrx95mQ9qWfH7nMVHLOy5PgabhRAYdteZNTmuadsRPeuzDHFW5q4hHf7oaF2CyOHFavcD+iS28wb44LcYv2ycntTzPx3D7webkX2LrYP/NrXRzdj45at12/24t3WMRrlzcucHsc/v4+wR6NNbFSU6WwLlv01DX0p9x8+XsXwwnUa68LXULzJ7mZHClyxzJDPE72miCy96HCdOEZwX6qkrv9rt7gdW/2RfgXI34LennvZIQ9stWCKCAbrOlfRuhmbQufRPjd6gLXJbe0FTV2/1yRk2Ec+zswCiDHGdOepzKOrFH15Jr38mnd7ROnezWQ/BV4mW+NfKqVYEK5+izntQl2dwNj1puPhpqj4OjvSQVoh34z35YmFsbGuCPUVEIum3IySyKBk7GVD6SGwPhrUqsqiIDJBz707kTMq9meo9xI81/TvD+7g+LXHGq0kUIKHeEsv0nBUiMuJDMkrt+NKSeXLOoh0im+/ZCpUsW+O4bgty2MLSfwbEAaJ2O92a3qnFyT3t0eWOa6XJOTksjAPVbP5csSPKw91mi11g7BSKX62Y+CtagMn2CxExvLNhqI7eMlQp4iMh45E74BRSvlgv9RWzRENbtJk+YDefDtUeIIsUsoEfKO0TlvpaqtR5r4mTKlwMbL0GFg17ztzbQRYiAR9muGhwgmFMVZMRk1RamBsSoTHaXBGFHg2p8kN//pu+kZ5vRCbWaOWC1u3ITqNjGha1eAD8/f7qT47OjT5S3QUAc6C3T/wRkTkqRxn555vqy2Z84kRCBPnXVlKHxvTFgoRhkaE4U5j6s7xCvk8eXIsPgDeH2vtzQ99Fffs4UCj+gcfD4i67xMV1fuPvQ7XUmyW1arN0bvcZFJ9fzunoTxvANhBtn+/jJWwvNixh2U1lGwBHOj56Z5Me7812g1DWapmbVHDTwMran5YCrNu9TPZIR0QwZqlfYyEVKNoXGlDqkX2lM2ggDF/b872kdc2DqoN207C07PXr2T21ybEkmpgXtEdThnZc9xJVH9dJHq9KsY1QWKYWGMP8FoZlcnckqqYeOU90KcnHdVIHa2z2jUvagQGXDOLXslEdF2poaqxT7mG6tI5Wjg+csCWmutK9zHURWRQ/fxWIfr4cBW7Dh5fdIVcSQUWD/S0i0NQuNRPmVyqfQ/prMwMi8P653066/IE2rdvPOTB1VI6bIzcJX3ySUMs+znIhyENqzZ5m9Qs8NSqUkFgKLfM3eDeO91so7z/VPrIPGli+qdxOAwHjX/ENK01VsMTyzyujK/LuEl4eqEnJ47kk9PCKQK3ePxZQn7Kf4Y88Pru2Hnx29Bb/lY08h6z/oqoHbpUJJWJyiB8rP6qyYopd95sXg97IKKdRsZ0qisxHmJNdVunp+QT7HSZk1JYQv38qDgJtflLseyc+k6DSaXFx3Xvl3EtdOdt2HcSeqPcxy6Ma1usK0J0G+UU8ftVOm3wOl8Fs4N0miPg0NthIqp93AiKREONcoASsepkTlU2aoDx+l4vpZrmgqVT/ex2zY03eS4RavUfC7rBdV6Gt0bmenX92io00WzPV6AVsaQ1VTNxf5/KPG2wZnmGKUzzsjIrTkcb69wVChHIe4VBQDcenX33tBgqPCqN2CBmqqShFjabDQK0jjO2VmW+tnfbvY31TrQtx4yKU0oJFFtVKR8CFSd8hG1nT242S53e9TS0vGjNxC+B2Ah2Otg2r3c+bPpGCelt4ixmeZVco7U1eA05Ol9msz9d0A1Q8DpShjhmvbMne1Gf+F3jxKax4LMKW2IJMfex2r+P2AS8rXO0nDbu2BskG3P0vK/RFMToFbGnbN+B7u/S9xpZuDaTCK1cCRw/7/Gwe/E2LiaK1sumLyIslRhphOxR+3B0b5SVRtMYs/ciE8SrnMNXpICqgFPhWaZ2kyBSh6Dr/GqZtq9ZjeZyt0W4cibtEppzfHZGq24gHXXRkZKI+ybad73/p9x0y2nqBDUXOZ7ckm/rDSTu3d6VV39KsrQ+CUq6B0c74ZqHTlNdbPQJiYGGICkmr0u6k8j1yqgcVelqKMT2GjpI8nxlWLrp/Y8JrCzWMdlOAmuWyvGkJ6PswcYXM9HuzCHFxSvH8RjhDWDmRDdhOIJefWqS+j3CUqr5XBlZKQh1a6IyFM58oTXSbWvRGJ7t4MIgFc/RdNYN4ljVMDrs+PxET24gxdA6eNbIkb3tnrCjaCua0LaOppxuTWTcMaNT+Bv0pDTQ6X/XlA5e4Ihm6sXDf2s+PiqdXwpXGu32i4YqGNK0k6BKh2GHBBaLBd4E3OsOYq6o04NaRolKs6byDBLKNyoUnpIzDqWYhhnyqC7SdYvmR0CIrjsHdSyFBDUMYV54wRZgVRX0D2qZVbt9M4WVDJcIrAhfn9K+oYEkuDF+qCRbnqY/3jFlCz9cAHfPf8fGizzwJOEkUP6IIs2MvXAZh975069loTsnwWlLbrTaJwOxhlE6jJJSsJ86uzU0s2lHsm48rgwc1tFSiDcLRn1A2Iuu1ysf955PzioFppRSeS7FHaoTaq8SYj38bQwNnZUPV8nX4WJPSMN1gtAlP6w7kETa5y6Oe4KQefC3ZoBUUO8FxFCE2pymx6UZ2i4FAhVWCi8sGubiIMioaDqIiCQA1UlfHNmWoQhuxoY+3trYKtMx9AkLYA0csMQGyM6BRyA5Ti/IioC/48oIgs5riZ0SHknvJCmYjiqa7DxrcPi9DQu3ZZIEY5LAiN0NZD+nAfx1lEa15A5RpXgsemtHGMcYp1Ec5+Sn/XptQCSgNxPdFdAVCn/hUyUTPD+z/BzBIYELl0sZixyuAHbnh5bhQYfqUCkBR31F+QpWMNaBLXwnqN7b4go1Sm5W4nk0ps+MfZSp5SpER+ZCIY5R+cBqcLCwuTA26DkAC0Z4kzgToRAhxYWf9GC4EodH0XYUG1L6oWlsOdEWW7N7kraYjbNO7oqYA7QlppGwcetecHbvmdVglRQg/jgF0nNtnrgoqNSbhi5cuXd1KtfQk6OZMboZcQ7XUUcEQu5/a/nWzf5BerlDGwhjDGY9N4brUQWJDYSt/XGLjMMzhks7I5tvPpwKDatbdmlJXHfTbUmN4npmCkmRpUtkEhDtldTcXidXl0iJmEy1yWMBxftjy5t2fu7nHHV2lgVhPPv152D0Z08KlzP8G0zrS6O/K1k7+fSHdAplnOaRTQGVa9sGtV7e09UHUyl64e8QPWXSFhxmDlxmTAAs38LNWIPMc+gK5mqM/E3vs1/FVKMycntlri2lA2tH/0hOx234+b9g7R8Ndm6rBm0bFIBHMm5Z31zqRKo6o9T6fo5eC6nOnO0HyRx6DpuF0wqa/MHTr5K8w/hoDRujt1pdH21ofGT0hpMPx/HM4e1raeEX/ezPNFAlava+NrDU9AhzcGrC6gxk/AjiwPqIxCd9oJcXuMuURGzcxSdhAhojvQps2zFV7uItpTsR/MjsBkxLM6J/nzDOuBRfwwR2tXIqKDFJXHE6w4BHwmklpZt1R5vFgCZr6WDvN5dV+303EUqcJOYHTt6bkCaRCpVOlkZRuCzqJfPTfR6Btr+IU63x9qiufx4pPSx8yuitIYH9V/DsJehIquXp9TuIVr7mjUD9pGKYEnt1ci8osEn5sNaqbRqWREaz0bbGxumK9BxFeirLW7GLcHaNYJ3pp3ZYrZB/FqU30ZYBInssqwCv7LuoOI5/AQaE6+dy/2zDVT5uRaaJ2CWS5+j3DTxnQ/eVyDS3TG9r/AnkiqZ4QOIAUdKUG1fexJUfJDX1VM3hLY2/gI3Dv7SnGonBAf6Up9Yj22PtPZQevxnNP2yYXI1RJyH/Sp6mqXsqFOzlfr1fLA8nXcjvFqPpMz6hKIcgjJPTv0bEX8oleZw0nByq+7A5RaNdkoxPxBFT+7nqvoETTrlc7IYIMgW+lWqq6vEltYgOs0UW6S4veS6/RM9cOSrHUbb6rodoJ59r/O0bUvwtdMaIqcdnQZtFW/AeL9YgQwOW88pq2l3Y6HT0Pfyqc1FC0TuaOXc7bkum3dv22lEl17aE8D6X/bnI+ve1jdYK8SlX8mlEYrScIdSui9cxLUXg1EDmdhKbUIZVzs0WKlkc6gY5VTxeRvxVbPhjSqjtAzzy5DcvTOCrMj2jvMO1gqduwFQI433txbCz6bDCM0Q0MsfSJUUdgoSSCFkdsIDqwA4FAflQhy3SI1A0TJqKu1RSPVCL6/HCRC+YQ/rdpqtpMsDn3pq11ApttUHt3cMCBJGi402m/t+i4bk4mDeC3wm8dkBGaOK6FGxrATmhWq+AFegKpDaJScQ8ulxiBWWr3gR8zJ91qcX3ajmp+2zOToh5IRWikWdWWmcFUWA0c8FFRUZCo6NCwNzxPUGyMF8gqKejisrDhGIaoZNsrddTwQiML0ornHWcAO+nunAv1fDOhpPiKIH50VNRYksWvd4/iwLbqENkOs+DYzAvMT6i8ZEDIiWro+92cgyudJ51q+/drmweELCtNtoVVieeEzx8XKMFtJGt6cTTC8EVCtWED6lu/lk8Tr0Og7yjjcMVPp0XYqsbkvwfZb7eNKL/FUELwdraf2WaavFlFyre/nUKHvO2Xn+//wrf9u8BtmWDLRuw0bPzq6f1U9Bf07AEjkrwsQQm7v3+PKefW/jd5yjyOAd3x7WUo2tu1rvyHI3r2TZUIBWH0nYooyPsA8hgETUBdQpX/nxzFvE+aBQ/f8aVeZ9CMCVcL8lkhyhkX2Tiw/Z6sUT80FzO6lV79UJoBTi+DHJGUqKQKU2UgMNQIoLN39soCWkZmEWBnor0HGhZHZM6e5Xew8inDEykz8XiknlhT/8OaIAj2sategSfCv9Ha7T5sHvUgTi+1TUF805dG4aStiJg8dQsJfBZOWNmcOnzyuB8FcHwFCOvqgqRi1SVeFq7Rw6J+k1JeT4LRL3iuEN5uHQcUnTrTRgjKE91ipRVUVXJLH+c1mzMihNRfnOvxe1WDhTl+Xbz45/So5ILMdrWdh1SH8sEEZGIsIc6JVadvRwdVs2Jp7IpAWnCEsVRGvApPNrKXW0K7v+vz6kAhNbGmrHPC4hC26PHrNizhNLLvbVjiQ5QnBnTyXW0nMAxkePy0cRLg7ULwqv+4ih43objv3c4/XigmAZvvuBFtAWEdLJaS1wqFzoJ9JKI00SypTjt6cbRC8EYHAZONTBBkkQGVZhXn0YT/3VdY7sx0+L8u9wwdiuZyIQ0LHxrL3RF+UJheR4p0WgoUydTtssJySIIoySEORuYfzdWor8WdVqU5JhP2ReS5kAjSUwlrcX9dfYqyuwAzNaWv9CvS0nX9aT5/d5haUxRMBq4muZmcBYGkNX8UNewCNzLE8VETispGCDaaPHc3qcy64FBmvbrhJnmiNC4e1C15rJJ5aAK9sVV4rNUOLUjQ1BOo48bl8x/0HFLRSGnlEC3JDcW6B2zcfYsfBq5Cv/8VHvZRQ/4NI82TqLOo1iLe2WOacz2/CTyDiXgsotP92aFPPHJzUAdO/D6EbQFzAK61Qfs1die1WWlNP9Gfj04dmgcHbY2+jkKRDiBKVVDWGW8CxzfAdCjw7ee7iLy28CNmRtbN4hP95Wi/WGb10ryo7n6IF5wn4rZcvT9KSzKYI5j5t8y1eY6UfKNx1eydnwTsOlkRu/gFAUdbEt1Yov9SUB68fOLCDsLcTlcG0REhpu8VOFUMchTJZwyCrFKQWLLBvsJSTDgDXW4DS8WKi3GRpufdSwsI4w+RHbGvzKcD/7hkMXWwJqe6xPZl3eubmV34B5OymZvO9vHORt9/dBucmUkVK1abW3k8pOWOpfKQtaqI8vgOD8aRFvaWJNdUtASVzbRRntmiMntZZU4bkjduC4Cbcm0GsGEdTdjuGPUYjfGXxo/1Cqj39w1CoGw4RQNSFHGC7H2jB8FRTTUIjKJ8h4UuTtCBpdXG6XwwOyTR7FwMDGr80KrcTNjlEds1dRVsxCGYWIyaGiuBixo2Mvjgv4fp1sXPkRZG0nrAeK/Agcvs+H91i7CqdrP9UtnFeHwpdmnkndW/avYfDwAQjZWyBP80Ibdc3wyd1/bu7GqpEw4/1o+c00iWAxHAaEz9D5KtVgE48+MmZN1jx8oVFD4LdZ4ySSmqaixSnpFwja6G+5PMST+avZzkonJ1zIV9+DmvQLmRPpeq7W48yk57Vszb58P6OlEkWRwUFaWWdpwX1CaDFicFO7IWGK3fslJyxi+2oyUs60yyvtYe6eM22EWz5tm10HNHAolC0OGIMA0KOgarntQ2khuMSHH1uG2Su+X0g4BwofJZPZ0PSEqS3Q+JQWZWqfxQJH4fB/Kga+LfZ/GNbvOFb6wVp44630UBbKj+ZcUOylwThqbnwE9a8eng2TbydELbX6FL2X/EkUeevGLcQSD4+fXWL/Ncu0B0tKqy7H24vaOqCePrWVKDZbTTQO9IAbAXXI3R3zHJueKpS1PMAJ80uzVTDu5j/ClU+40wXACMk7jmLKNMI8khFYtp6Bec4HWQjyFFuuVHP2VIJJhkEyhLCe3x4puSPukqOAqid6FqVXpcARoDSjrlE0PwXj4smSeVpAU1o7+TJ/lWMA3VZeXC7dtIBKG1ySPjtE4+WWbkTF6uA9MWdAMM/cDAvbS0tz0vEiYujrZJRK4sstusjxgAnWRa3z+KlWurCkKv2P7IiGl48LJCpc7cy7HPjjHeX1UKj8Vq+/4MR37WqbyyJlwnDMjfEaVhgc0sJf/RcSZLUmFBlonoTYKQ6oqTI0pvopZwQ4gvzqtxJMmU3LYw/bTYFMJSccRETR8pYicAqWipT1BFLrBubCWmdB67TgJaBkg9/NknCRV6MT3uwyWAxMSj+lqC+ocqphZNb95uVoR0oX+eHrNw/VOVNXjCBtKCYnOaTjVPrrRREXA+j0mmrwDroCM3YbuzrQPsYHFCbkPSCOySNO6BJ5xsDuL1ad3w+VDbufSEScfMJZPSVuf1ObKfg3YqFiTl/C3J56flWfRi+QYHTW1s8i+SBbq+WRtAm4Fe61LpVyN4aLUfJSZpPyAmUGZM83iB9IwrjsOkFmszKR41RlCYgv7CRTGuHQv1VyeNQMHtYNsNEy8PNN92v21u0YUzRYrwzX9BlxQFy+VzrkXQmzQNrJjU5MTzDgR6/aP5rVCGp1WMm4+ir7bym002Jk0HBa8Z6mheTB/cQF2N9aa6eG740rNziFzHiQNWqCMcaBdVJknraxJwUIcV52RAoEQSMc5B2/tIw3w10RtVVtHOY0a83asE10uo+tOnWcIJ+EzBWwYctXSA6SasOMdVvRSBIFosS/iE7khWdCzw94tKQGjgKZF0edCgznbRWcfWaadqsz4uZozq39nsJcoOP6FGwNTQp6xOW6JR5vZt13sAS8dSO88o6bX/2R/U0fyH17j4htXOttKXLPLxRRGhCRRV6GyccVcNIObbby/XiERC4aSwKcig5wWFKPqns9ZCxsgYLzCzN37PWNsydUHnkS4IQV9cFyrPOs3UWGPYiB468T/za5jwbW6OLKvTE+lp7N2BplbetlKrU0uvF/xoXLlvJSa4r8hULeVGMNlGrTOrAUexPWcYl47U4TAqJIY5RutoxyFaPMhesCaY/PBGsLT/cTdyglpfqEDzKuax4DjQx3VXWyG60Ti+3rU9jZWWFjkaH/klMrXjjj7rzcScUicXtDHJVLTsH+JhQ86xEP3HSiUf3NsW67a9mzVMjsSHSLTcsyMzI7XlyWm2lc4PS45kP44SbbHN4mJOika5V+YQS0rJJk6eePcZ+gHlolvN88EwEUPoHEikr9vdkPAtnhSbCagiezNgiXHoBbWRuJCGVrRYxVThPS4rahmoOrzMshJhO2N4BBVUfuWMFGk1o3r6QihvyR11SpRy4tDQdINn6/yNRMqxs67PgGM/+vmjuNcirc69R0T+TLIoSeloN9WLd4kp0kyDD0gS/m2xl3BKgZQKo0KvFLiqPia5fmPS4aoAbSaZRbfWyi0iLZqqb3e8ru7K+5FZV9dA217esZNKu1dIIaZGFrTl4aIGYY0V/2rD9F39RCzXsSK92TyWb5tofuwmU7q5z2TJqlyhT6KR8dSA/MrZaSeuX59TFh/Il3oIwEWFy21rS/l7sCvi+8IP+6Wl4uUQ4wmYXI8N3gTX5kxzvzhrUrfKzEGoFeG3XvWhRSfbj0thBPvbaNJLXnijEJHH4/kiUIXPfeBFRMHqndnpvYmph/Hy/GiS1VnEJNe0NpHfE3Njp+KjI9jvvZf33Ux1YgMosPxdwGm9NVU44/ccoQ94kz1RZ2KovZy2HNmiKExW82EIFUz31+OC5tC78tsRODE6dl9iRxzH51eoN7j9RY9RXaYLjMnJUJnbEc5QckMCAYz+lGQ37bXBRvcFjMX0RcFM5KzXFJz43q2FCN4GajKodDPz5V0eT0kYkyi9HogGGIsN+nt+8YSkW6A3ympVS1Vp4rzqX1u8AVXtuAoMxTqeqzgk011hW2cYRhavkm8FqmJA1QE4yfn3SPZo3ixWJD/ExjsIGDUoo/sEGuBAS7vs+EDik53OO4fDe1skUFWaFLxY7BXKfnOHl3f507rOzgeMlnfdeLW9MgJf3nznGJ/f/wxwzuDdPtmbyA0y1EECXClNEhwvEpv7ix6Vg9/nqqnb+FLn55kDfBz3+bjj/0jLQowIWDglSz32ZEBaJTNDb+lmG0pn6HJBdJadZTH3OvzzVZopleV+kPDKTP9HGpa7eiJ3fcUrB9Y3q6LaTctz9d1d4RjWSbhz97JppHXx99TxCAyfp5HEj/UdkD1wUox2khGgJXyevPH+64La5RVn8xRmGxSHxxrf+tZDfYzyBRw5EdZWZHDVOOA7TvCcnVXTFElziLEwVXnzNp/fOm0MbLs6hOQdKtdAdqSFSm+MtpxFMj5Nl8Q+t0jnnixbu1ritaUEmpO7SY+dLemiCetiwMc8IHFGG84GDySqweNKqKIgjkTb3fdQ1bKl6uCNXzIEt+QCXvHeOXz74N1KrnZNwbxnhk8sYo8x/5gxGekH8k9KDvD85Eltlcb6ELxFhQauUdTgVBrTg+kGkjIHjeKQNjHIhDl+oeu58EoPLNBjczs96ot2wGnsfoBmBJECPavTNPtmbXy/HqtiPYJ1pdROZvozFAnX9Bn7z4+FYkb98gaAiGHED5cw3KCEop0wN52i7+6SlmfKA+qMNNs7FTi7lZlW+JbXOdC+xXZh24M7Tk2SrviHdQOSHV81ez3BECk3BFGAt2aIN2VMkfuaQDHmbcdFjzFIlw6zYH26aBtui4NStpGVFhme8/yi3ktY9Pa3gQhpSXu4Mz1EFHMLlrP6rV5NhyS8fGKRtiOIe/I4omNQP4cSKXcCLCqBVNlKZgs54EOLSiZnJZdWEt2zFXGImPwFnVcU/Kmg7chGukFk3YyCWXOiTuB98W/N1nY0/9JLbxN0nKirjmoGTFmwDXm2YClSXTruFT8sOvUiRFqZQVx5iF16FQ2P0ax8YguAmHCObsLuaHTH5Ylw0tnWXslETwQ2UOD2b1jkJ9Pl+3FYpbfG0Iuqw5tw9RMHz1CTHjbFLVjOLAlUE/cP+Pf6nLHSV9ADudFZxOd7SOmaYoW7yYjKB5ZCTh9ATOC1F1XDId8DFmITcoYZSrjS0M6ktkSOBm9psOhwxmKmS0t0/acwqRhoCSH81A7X8rz5k5TjcqmtHYBj34uyNiAKCXeAJqOQfFbY/PP7vxgzQx9xqvDyfNW6wgreH1XEUuKCrGCQ16PatShaTTugHpi60+3Z9VGy7KoQH9oWAn2RlhhAv4d+pDsgNkgMwZ6nFNK2iTl5UfyMoqDOcUU5/M5svAIGbDzFimhSl0Pw5rbV9V9ryppQTNA8WtSr0DATRc1lW8lqhOeEiHOVFPjMpRqp/wffwlWfBJhFX7IzdBO+1avQpOyxk8i4sX/xuWQCN2T8wNRKrH/AIHZy98hBAb3I8nZuw1d25uQSybvFA4/mulvPxWrcwyOthNo+KAuv7LVjRfrB8z/kgtBeHiCxuvkjZBdaPmZwVBbsyQsMLx3oZ18ei/k3diKL+v4QV2I9rHjdV/XK4bCiMd6591nUEjSU9sia3HpjimvoH3sCFie8OyQRSG4xwwIMw585OTYQ5ZRzoViXnIRLMbsHn0c01llfkfv9VIgk/mfxw5nDRvzqKsv3ppDeOMdAOhnOaNo0F8UhZTWuNJtF8YpBhVU+qWkQvWehFU5sB6vtKEshX22KEGBzmBBAtlG6CgoWWIfU+QIE36mp15wQKMSE4LyJF8yDCgxT5i8PbG8G1X3pNf0NElKHxKHOARIv2CnvsLUJb99bpCHJRp4jYwGjUStZX/x2aQBjGQS+aSjZoqRIh4nC72/K/7sqJNYXzZiUraMDPIbf2qYg09TVWGH4uFKwpr+uWSdw2Js1K9yj/W+81cZ/VzYCm7mWjzyMkfDlGVOKR7+dUbOeYXtYOlP1G/Hnc1cDKbE5wIP+u/9t3+5oNr8ZgztXoVYktFYxEctaurBCtnzUXrN1CbznI35+MUsfvMuE88pwuIZtshoXpJo3RXWNZiUjMJgxiysT9b5lFLFx4enF5KFoM5m07DIuyRqfSKlptffCl2SA6bTgd2iw2WnLPW7+uU96ItkwPzZtjMLU8yimDflXjZ96Tk5PhwHObxonYxMMiUbR7QV2qOnBlSV4HWJxgzFZAxvOJPaVcluzbeYPzdvdHMCuw2FRIF6QluhbF0mzscd4yaxJ/3vSFcl9/gjVZ61VKS69awSfN32uviTZzG2Wx5j9z79iOHOrwQ4SyrX3pyLlBrIo2bdagDiyMBwN/pqePcgjlTkEljqDSp0JCqn35Z6uc5zvt59l/Z8EmYiezA90+TYXjBllZQWc7vMQsaZbmb+gPeBaDuQnmxt0w3DjTFiMiOlHFGzxuKUZyt6Z8SyLxwk7lCKN7viXZy/9Js/hOwW8Kr74y9bmqlSIZ6uLTIOVuvEzh2BKHWYUoLl2mTdRLDKSDLhBL+YqGZwg4ym8DT2p8bUIfGHrdsliXXd4sH4yqoJnYXdTZkTVhiIbwLnHPqKau9fLlBe2EXzndnaRt7PYPGUWWk+K/KZeCxNRFMB6T7fU3i+HkEKZ77pSA2rz8SUK/6dWplQ8H3hPu0JtE9WtHeJJ1b2dsvG7JZGM7kqkH8Tg/jFu9vyYeJUyWwMC1J/sLbJGtFahdRtBxBT5+TPsx//silG/n2+xmmsvnPaB+b4tS7Xk6RwaeL04n3q8dO+sKnRhOIJf35aqtcmLnjDUXpORdGPTLgT8bIaghHkYuTb3s8kC38hhcTvrNbQSGRrlt1jKN5djkW1OIkLgmh/cZN7WZp7L2DEg0AtLK61FzmeOusgauricw2o35csDXmKq1rQiEMyFRndHpgw9bt+5wO9HKcmBceyry0jJyvdvU2Xn6xMlN6TBDsf/fzPE1ckGYED+fsIG+fH8b3xjlHXYT0SSo9qR2MsdeV5WMj7nIe7K4PhF/+IM7UvZdUxDK+N8aGZbfKEboTrYg3EH25UpR2s1A0YFh/wWL9hAuFdvH0uzESXRZYPTczwwl38yPrJS4PssQ/fPfAv+w6Z1Kw7ExtX3JWMzkYA/n8tyDcASdMB+3n7nZForS5XWM06hgG7RQG3ldX0mt1+/RfzFGSDOlebcJ084kb1MqZKidu1CkGt9pBUQuwb35niYZnMssw4sXybuHSYsHN7n2Hx5pOQjIDUTLK9x6XnzITGjPkjlhdkCZM3rEhM33Ri/rZo1jjcWInSNi7ijVmwyrDJxLoq6b4viwIqqv1b6bWEaOta6tXzjWEfLQIz1ylK4XWUBSg5SrT6+xNLSOCvjebn67XwT3iO/y6/z7D/bjrGljZnNV8EnRdYlvCbdNmZEAOfGUvWN9dXhhO7O0BkYZHZRACNVbmEw8sjsVd9DGcVSUU+Mh7Pim+86RNO4qxFFX4w85hNhh5PnrHhHEixJZthpWg1aru1N2p8mI1UrDZ5/IACBihjsh3PMiGCDjGroCuECxZV1yONcMrbFHNQ64kTzUsW2GEk5bICTmm0SxDPwSidUQQm5sN7V6fKhxM20PToaQ1/yLvfpZho0uDWJVcVHP1CbA3vBC2mP5XdoQpJ9+wi8a7GmyZP8+cLHqqLdW6z5r72/P28+xxLA+jeBtRsLdP52BMVvefrE4u89/WYK2nb80MnWjClmEMGCHsf+aO7YQrLMMNJh/vMBZs+495JZBh1bJ9D57E0WTgJHOS0syAKs05D5Zr7cEFLqVxyPRAN4kIoioEUBvkc9HTaI2mfuqxF7FHxUw7bxnlxuzMi31ZNo2C9BNv9/in21hOImuXIwDB7CqRa5zoOq+Mp7W/sQYZhHz+iBZsYuNXL+4pq3ckKcamFGRKIMGf3sAtUaomsCbkZk10NKrg8hZ3oYh9HP67Lp9IW24ifEfJo3Hs0YesaTXnbWUTCgia0ukR9gjb0udlzfdm0mDz2b5LUJlAKniS1R3j4BTj/UIUedMI0yFH3d85SburdUkkfPyaVUQhLp6B8hN61ZM4gTNgnJZY8aYFoCdJRINbCKetiNiml+HwH2EBwKMZuaNBZUUccgSsFxwXG2UVHbv1UlMT3jLr1N1v3LY/xT3eZ2r93p/dRHb6DY+8STrHvXwwCWBQZWzNk88V7LMYFeztDqXXmo5Z3jozt44reMMjzAz28HyB7Kc/0kuhnpwgPvP641Ovuf29EQbojxOK1pCKSYFVDVA7z2OJbxUaKrK5RrhkxpZyhLfzjFA5Zjv7SemZbUmiBmoyW5dHk1g7G9MpXWCB2e7aS83sUFxP0YuZI4TrhFRtIfoNzTE1wD+8DMz7UYyKJO8oL5NpPKlyTeaVJYhNYtSIJpA3aiEgOwF3zAfC6OnSa0iiZlShpHcAuaSmsr+EejlOImV8VwyELuVGMX9cWSTyLVjlAC6gPQjzU0iLXgeHj67wWP0u9D2VC5DE3puidNPet5c/bjGKDFSbfX8czwS3Q2nqABh0vpxtvtuxVkh4mJoP5fjopBrl/m1yEUVBjmzPlJ4AbIhkcZD+hobvOHUocbzYmHiYZlp2GllZJYRB+rMfcc/1lC18qhjKAJZX1mPlDDzjcimEdw3XQs2ih5VW+HZ+GtQPLbhsx5S2hg9VTSUi+phN9mVWVBpcRiagHSsW0kwZkQTs4Vn2E3PhQINyT4o0M4oWzpMd04rFHEvCRiEvkbFS8snOFslj14qgI2UWpWsx7/f/MLtZQYjpWQ07qnug1e/pbfgw93gNIV/n6dEa5jBdXXaR1T7ZWMh85HOM093QXQ8fxJisadc3YSkZF/nFsW+/UPlON5Z9ytKQwuud9YoHC/jRaPDCyYE3Eqzuhfy3FuDMlllRxwpZvP14wH7m3vrS1OuuDYYPNRog3WKt8STUuqVJhNdSvNXN7KSM/J9x0R7b5W0y7XldOaNp4jzoUDg1jW7J56Pp8lE/36jB/C8WtfKc6aoHBoVgu7vLkyz+ovibeH6kG6UzfjdbNIHIobkOZWY4cz1LsqOQQAhHjeywxF6jczLK+3F0vVsEEVu/xfP+Ff0TcPaIRWTGj83FKAhLh7I6PYMyd+ZjfcwPgQYwN2BEWraBr+UV2g+OLEDjxQJ39i2ibZV8cx4j5vymvh556zl91y5wo++AfCrKqqTuzR7cofA5BDFfXdXFUG/qkpHG3GtySFweENPi1dwdkYWvbNkA9wL0ce1lmnaSzGKGXI9eBUxJdlU31mA9iKbnrG7UWfm/FCTIrgQ8dJ59WtDtVI3H8Oq76cyqxEoX2cR2pD16P+QUPQtUCEHBIgh5NvTfcL9f17gw4S/nC8A5owpNiDMqGD/7CJwSTXNO7nn71K0T+Nd53TMLrxYZD23spMTik55bvbRczda6e3XxSiDKsen2T9Z1Ooi0wU3I8vhUlPlw3dOKPMaec/l6IRJRV3TP1SETOxQlbWRsY9C7iN3fjJzgeITvLzDmNHP6XiKIDxs3SzApRJHnYTvYS6eyDvwxpJGr8xryv2tVROD1N7tG0mC8J/wONL5/8j1GnZ7RLlgYfxcPiDiNlLtRUOvoo3BDDcfuiwcMAFI81Po3eiPCQjLg3DXIOE8BlRWwwHLrYbJOHtqdgfrsCRoN8itPvs9O93DiMi9YszGSKAz51VmAVL5BPRnrMT2NX+M0u7qXk7/Gfs0f9XkBXyif2TpGXgzyqF8zkm+tS0N+4U+K1KyvigQkdrPkBmVbHOW4Qxszvglsw8RudcJEnnYw50VEl1Zne8h5FEC9h3mrZsDDKrjb6BUPTexLaziQVS8mjOTdx5V5qWROZLV1MqrD0XkhHh0U8qv5+bSpNLoX1Kf0ZeVTzFgISTTlbNmzMYfnzqgkCiRbVKRpRWZRpj3nez9jdfonwenRu5lvDaKfWkKD4E9e7QFGoyj5/gnabacEMvFeC28OSbLtFIqZV++QQTbV6B/qAZGhdjP5H3+aUzp4iinDdR63glvF4UhAX/+9fufIGlQ7rVPHFy2aRoR09JnE5du5hHx8TrIQmdczVPiGcObGvqgjEldL+saIOgamixV2JRIipDu/M42QH64DIZaiU2xrkEn8ILBkNYdK+nJJtXOZecgB+KPZ9p2ZKDcE+DGytvEWXsXz01zBX15rardMeSuyW72IwHX5f0Q7BySOvGKmApyODqXGc8MQPxLSe1Px5sRUz66755EP+weMS83Muk6aGsZunzB/1dAf1irH/tTVGlXBUuRvLk2/FDA47+yTq5+ElouMTTjD1eHgX8ahe4eLWb7VPiJeFZ6Nj2gy+4vLfzF/ZjDo/uCZs3VRj4kcOi0Xw5R/qmPBgSsV8Ep7z4SuIjZnVp3iwhYlIkf+7fo0G8EnP6pLVY61ONuZ+wCtQiKw6topOtzMU4XrREbSZoKrCs8wyXAu6K+jQiRM9YPs7u6KzATqDE5WthpFHisW4U9/PP1lhUe8XGXdn08+VKsbJwY0H/dwUgJnwrKx8WrwcecK694joFzGLyH+29tXoaqB9ivigU3Eb5h8x6FNOa2QenIdZlCbbAGSwLoNRZXTeA05Ccrxc0FGO8/4iaOYMi/8hkIZh/72n7qEd1gd1udp7nU1pOUyxHN8bipM7xwjr/hlk72VNd1W5dr+Cy4t3un7hOcT13tndhthU1bPhZWHWPZcRdygceQPIaWuBF4zqu4sSdpc1DTm9j6uiPJLCstaDuywkEx7HsrFEBFSMWfoLM6mjYdkmWsjMG46hr2wQrjAR0+vHerPMoHPOp1SfMh4oGH+EWFPhEr9EL4ZE3wGLzvwDkTaxyLNrNVS4yagxzzRCG8JhgsMz4ul1d5RRaWmlddX5DPM6rckEjypJROjaIf+0oz4NbANb10Ru95hecVn4k5nS0GpgA1u8n/ygFPN9h49TJFYj63jyzNQ+mkqNlxVYTHTAmMzbfbsNDvbQxZKM4I1Jq5RI5AYkt+zl9txTQOzxLcIo3zBneTsaFvEa8LrmZIn0d5TL8lRDjkbFLIu5CMXyCfaSXmJBSbQOIYYZ3YJ46z3cUPdoVhQOS9jGGv3Zz7v66+5hEl4RsazoxkDnyZQgHOxS5cI8YyCZeSETD0J+0KdJpeMlORJ291MtLTe4HZz14E8pamd4J1ujigXuB4MiYfkfpcL9t8+5n0kpTgsQRznRjeAKIxjKo6XhH0tPeTNvOp9AioTSWVNjs06vX/i8+/Cue+8EzvWvTgTjLHaIsxcOqYxx1uEXXkVLB7VuDPIH0ZK7qj8VYF785SzNlkbw0BD3SdwvSvtfy+gJD2MBJBxTVtZ+NlGYt9K8nvFoxdUSpo80jf5+HNWDacfs0hC917xUZSSFYXaZTaHiqchVIMAsMFEIiIp9TiSeqdaHTUp8ip2t7GWM3ticzTM/B3FsmDmvRpdz7mvGT2MzCa/4djFmoxUbt7NNnv3X+enjaWSUh5kXEJnz05Ss4qRjCeXGo1M2ivLzbi/yfF3LG0KBnnyRD1k4ybIsA5E5ybIsyzIEoUiyLMsyW8Lcth16y7t5rixPHSkqyzDSS0cSBDjHSe6ANiAqPM/ekSQRUdJyHi9JIjyHV5t9l3t7tWINI4jODMuSZUtIEVvMwH4y4ygElJZ64H6mI/64/9x5LQmKfzgPDlWCZ4GVcyVGUSNjcDU0hDnqMViBqYfEhwjXLlcmeWm8iDGP/VxDGkPdKI84ydG3NqKiFj0eoyAr0YrxfSDUNMgmIorLUaq3ptv3T8KEciIOMwN69bVJVylC36YrYb0M8hmbvgCIvSDbDqQQPE3R4t+iA+m8wRSOt5l83thnuoEVnyQt00szx6mJSlNOmeocGBqGUR8rN2zGO11W6DEFmTiXVFvraljPVluwumBBv4mb7kRehGsi7de4iAw0Eh50CTJs8cskbvch0LZHkSTdqsZ7tPOkhwsglYsmM/848dzfnb5cWWKD9h+Ndb9CLm/EI0XPS3ShEEOU7z8rkE2uviQOZzQQg+iMxePQEQSWsAkaCPxugQsdLn6kKN04tF581476m+IgdeHJLS0urgX62wsKH0Ed2mwYYi6zaQVfWaw5CAi2sDU2u+12tHzgtwnDLY4SB83w/uFpeJZEoyvuyTwCUiIgj21jA0aSBD14v8kXOHV8sMOa1Y5YRrg7s4p4Dl9ImzC7ZqWVUbOEODgPiJhOXjGP8QXCQmIP1R3nZw8ZwdI7CAZXIQAcs+iHkRSs8C8pBUWdVYhViV71v/WVsyi/tgTbQm25JKfgbtkSsxmuEMrLPHgU7SgyuH+EvRdTtW9BAkF+emG5M06ZjWa1o9ggzjiYpm+MCM5OhPnrSjbZ7A6Zk9wLMxMIicaSw3cYF74VndGl7Ac+vKHsdVU0ghDYsKs3WOe0LabRp36yDSEJg4KYRoXIc7MpQ2hYhJnhL9jnkJP8W609Nzgy9+BrYRpjZ2gaLIQqSjSduPJZ5JAxXvCd6yAtqxvjkANxT6wk3QAciIU72+8aey8TQSUw0pypGaMeY1HsVftMSr4ZkbPI+dqOInf914j9Ge4l/FmhPWo4CyLb7/9B+3csbEFaW/k9ISnNKxznsumDm5ENI4M4Oa+SDtGzth7MT3/AKhpYReTzV9Cj+NFvkVzeVpsMXHQFkRC7KHeUI9J1wdAOZ4gryIUTAkgmW8VVUQYpuvT2OhvtpgnywZohRo6oXqumE/6nrSfYv8emwX2lmeK/6qLClJHmx0SrC6bjld3acHYoT6bHRUWKy0Y7jqC0a4o+efZjHYTf/F1GR2+FoBurZgSz4Zaajhv7jEByCFoFZDDBurDemivuRWIIHUNsu0GxaqmKfD+FjGzcSY66nVgmGu1m+7uA+PvQLgnYLkllvZIuJsZS6s1S0UzbtXfmVNZJZ1uU6TeJxaxeKOfsVKxixhncxTfq51FUJQB/L+4NixJXrAqfvcilxkQiWaYNHCinXt0euXEk89CM8aXwkTeIRbAnTwr8K0eYAqB/FI5jjxgWk5tbaILzlkacMFXixIRQpDIUp6FrC6+aMYqT5oFMq5jwAX9UdQSSs43XvR28gQvfnPYpacdn1bMWvo6PRXihuvE8zFPR09K/uPhO5Bverm1VpmvOcHmjGSdmKHfFYpm8fL8Ig/n7fgX8Eg6sapIe422AHtRTppGoyCODDxIU8ZgDjD9f0wpursTNfI/f6S8KyUxcajGcU03losxkypH3/guFIiJfD2P1WShLKqY+/3ra+qVoSuJIgAoMiZqiTDYsBXVKZl7MRaE2ZM1Ml+2FFDxngo5LZ09gIi/+mGINH7M4TFezasNTn5aqlCGYuEQffkfbyKCoX2UEJ9SB6Ap0KLuD5Sf6b/tearFA4q0Iq8JjF9fikyMXq/j3nYeuh6KB55VGbyZt7rZi9YpvX+n5xxaCfLTCFLKOsdNa6qpOONdWTCmWCqwBhShXS41tyqt+vOA27WxivM6mkS6dTiJU4P4cbiO+hx38wpRu8K4VaclpvgdhDaAx19/ptyWTupXSItbI3/PzqxIbJ4ZQ43vkMf+aaozdStkAJs/qUimbnB/i6n5gyL4tZSH8E1/FC3QhSEcJEEgUrm2aY3wdefyKt0f+7tVH8NEAHw8XoHeByexTsYfbHU6eiitTV9rPIcR96UBdc3xQnCGS43VwKbAutXL5w9PMN0lnj7jubl42woC2pV1ONxYbj0lSvOypg+e0L37UaCMRNFV85qTWkJ7BlbYmo3PmPcb4JLG+4bldbKiGTm1o8j1Jt6HYRvROLrDYvTblMKOWkyb+GlZ/5jo1PUA8f4HWuVu+VHpkZfzZu70T0ewaTprcASxpHcKTHPSp+CgycN3Z1nXVkG8GJB9CwOYv+JB2HMUEZcN1GNcDTB4HHNM8lU2hUOsbKpGFdMNYjpSVge3sDMZCkvX/hogUld8RfG7IQ0FIYvZ3mh7sohaCeGFOHBWR45Xqb/WyfBiLjdukgffOH64ck4RriGwGHqoT4ug+ROx++ZSx7ViJjortKlVfmuX4ohOmpylqirZtivpy1XZz92j+rs8NGdtgwE6vPz52ubmjwknxNT+H1eaQNvk5UhMA/Zz5sQn2IFVmaZ7d28VXFP+kQMKD0V0DGdNwLXe50nybpHPkZIcdCys218yPBpmSw8TN9F09O1jqZMrdTy0YSKXSI8QEyJeTdJm0hL2ofIdeCQ1qqcWwcdoOfBDg1KuTOvvR1nPmUNK15wOnaZW7F/GYB2t4zLNUENUlk/IPvWVFS/a+2WAvTxIeScF7e4v3kWrEURgJpFz0mBcVcWy+weJ806b4Lc1skILuTUSfnYoFwuNNQZ0Wi3QvgNRqpFdeZxt1r5YGWmfvAQfSdWVVvFSWmYCV34FtJojvkIgl/EpGkN4dxoBAMOZ6+vlfaAvxWUqdHKU1yHUtK26v9sIUkRNXVIo0DcAsE3cTuZ0MOIsbQoIRckboHMN7RPFX+UelgE6C39dee0RGaa4nNsenrfKFxmsKbfbliUvYMixL/DmFxINUAOj32Gu6yReV9xic0ISS3h12nR4OO9wNc3e05GGoBLszZXqcst9dv7xOM6XrE/AsjuI6GyBKmxTdkjRAGiZyGoilSKFkvGATKX6856AjLpNk9iVrdUuwFit2o4Mitos7hqchO9Zy+wtR6eaow5QJ5nk/SZPwGPcu02oWILypb2nBlRI6oYBVNNHIRpuNiM5eVmU2c92SOVITCm1khUlgqUVu5Omv4XT8vg0dfdzENNcIjl/TrnH7J3e7nEzHADNHWZGtNk/0IiD7t6TfE63Ao25CZ9Q8ONgOvPR8s7Zp+Iy4JKZN/3AyQN98Ww4MjTpHpbuv1/RntOTe0cgDjp6Jp9OhgxASIWKi4tRsMuH4I3Tl4YPMj7eO1QiQgCv+mMhZwC2t25hpwJLbpqKveO/ryxlUu8OJ6Wl3l+Ir1O1e8sxfUWBUIQh4qZgJuOeKJYalJ25/feZ899p0c/4tkUYCAp85B+uiFO6U7RdeJPhDJD87dZEC75I8+Z7KdafDKNPh0UWOakmrWNzscgMEhwGqUcN6ayPhDg8UgMTRs/mWNGnQdqulbVOm94zSLjCjJU3reSqw1BrXbJ8OkFM9IeKwQ6A+WjdFYIQu7ZChp37+qXxsTH+aCgCWLZ5k71tDfovfJWwNY0gdQ8lSeQEiXBOGVEhRMNcFzzU7ugpOjWmB5/0q+Nq6n/UCMi+lSe9tq3hZEBr5GkQfV3iLJth4ftR0uWBr8VL6nayWHpyXXfh1XnYKHqR48E/ZhZY3oWkXLgqo/AwQdcE0HRdSSN7agKk9Urc7NHvPr/0kNyMKZSqaWo1Moch4OM3p+j0PFUYr8Yy6dsDIE/to6H4A+qmqgF0wDnRcuHdGoKstQjF71+/9XHpnyn4emorYqD4G1LdGofECrEyAEm7wagaSp9RjqSPsRx2vAyqQzLRI8H3DyN5x2kod6Xz4nF7Tyh7aoVb1nKxsMClunPSDO/WmMvgURtKIX7x6i8h9brCaYhWtY3a5AVsZb1Cw76UEPkiYu94I32iYvdI7J+5fegYsBX8s0Odj8uXScUpQsDDeopKOO41SRkmADgWg6xUMx1/m+PtnTQbemHQS+TduqiPOCBK+sbtx+TkYsBM2+ik35ZRvvVHLet6CxnHXE3MMz29LT0V2ca04cIqQ/5b44Mj/YgOW3cPTnqutSeFPvNEyOD5vY6nr83LOZyxiflekBrxPxBpwVV6o7Wef/hjLN85Y3KT83L44Zr0jxTWoBFOykOjCNoknJ4al8rdDgT0YG3swe9vgmAGGeRhpjKDkBb8XBpMlqFvqvyYqXj/zGRUH2eko7WKXyjZkdrddm0xTcQ/qJGXOa/JbZy+LdbrSY/lpIL3Onk27XZ+Crv1+JMxhDq/8WxaG2AZsenO4TX+eQ8m56PJNHHMZzjXpp3NpKJ/IVXSpF9fewz5cZO7s0IdLasUmgFfXMaDw1UTtw+W47/K4KV37r094VY9lrcF/EigpP4DI/DXsrVzTAcxnsolsk3madoJ9jnhx/oHNjXzCdbDoyneSHxPUyFMSDnVLr/hc0vLENwc4q0pc6E9HEe2RncO0/+0WNvB2IDlLJE6/E+6ZD9eeStMTMwsN61ZFDeXOf67At8r/mS0jw2FINxdRlQJnxaAbX3q11RVM6+UTRi0mCtzNCMtw2lTSgpUrnQv7KsOBIrFHj1jLTaS9jluu1dsW2Fhhd6Hq+GzYFD0Lt/TuAm3TxsK0GV0ZGwGJim/gFUvdCw580sHI7gVJsVD7O2nHAPcD3TCg4jPzsC+LkZiFbH+LVJG8D4pLlO/XYWmaJMO+xjZWl6zuQ5rENo14HbT/+88IchtvgwPJLAYqtQ3Ex6TE1Mapm2RDWwugZV3vKJisA2+1j+YWYmFf69sKVCHU0Obnk590cjMWXSibFTvvFQ7v9Z10hCD9O0L6cn1/K5y63ZmgiK1mwYtiYRTIDdGApuvkQYZt/qTOUzg0llDl1sQbErbQ+pTIxnJAWXkF6djawJLOeV7CxlGIt3LBoelwd7jtHcgGBnDeLg0OwqhMh+cOw943SuzJuo7E0t4jI34SVBtyybY1RReSNT/K2RqaEUQdiCoXS9QzozQg7MZ+S19hCF7eChzEne4RGHmXm6U23/kQJR6QXYF1UCPEGlPE1Lt9ub44s7ZqeikdNmCVb/c93GcBnjit6t+kmCLwdUPmT24GM7VFJCDhWATb9XIsW3E68nH8fY2oEf2V795FyiMwpTQ2InF8UWjiz6SnQ15oxIN23r2W2AwM/5+ePIwjeHLJLd3KOQZT+TK3QcivizMSOyBczEsgr75/ORK3UeYS38wmK10vlZqIFy7dk7yWsnxesf3WUyM8azoz8Fn/KCHBtG7TIqPgdohIXmaZSzBI0W+3AYggBnJ88iKQoZw0rHS7knFbFnndTd5lMEzNASfFwfRAdaab4NdoeZAKYQcJJsQmFf+vIda9mUEuZn6qx6qKC8UKWguC9RlkjMI+jEB/3RozD6mj4zWJl56QOXQasQmhR4p33PkC8ouO6QfZ7PE4103+woiaVT86wcIjKLi2XuAKTFZs1ZNw0eZJsljSn6G2ibpn6e106KUbdksgXdeRctf3Qinp9EqxD2O2eFEsY/nyjMr0bhHtLpSJCboqDkymx+HexSaNPXefAJqLMQO9NtMw+vpXxSR2czhnYbbokOJ5cEM/IysgGV7HUexx4lwFu3aTSmD+ADx6SEP+la7XXaKvlGjCilCZsQvruo/23iAufIruxCKsUNDwUhxu4P7yD8c8oEEDR7Tv3OdX47It5bX0Bb8/Zm4d0ttnj6bfmGlEnEpzVBNbUjjOlD9plHTC2DVA6VhU2EBjCYNpYaBiApihPBPn3+yc46OxOO0f/zth5+waWQ+RB9uB1DmHUrytxAK43Tvu25T1JPEtm/Mmo0i2D6A81XSkd4A8lttoUAq6ozi+KNsP6M+wEzEW368uzvJijSkyZ82ZDP0NoldsFkhKgvymr9l+feO4LzlAU4oJLr0KsZLp6TuzE3Fb5ehRYHoSjA9n0zcp598CjZJ7JRYJ6GSJ7ZX7ctwHmwRF6bbGk+YQmWEF8PMUzAboWVQYG79SI+40auTYKIx2Hctt3AytGYSRkBKPWCBsZpscHAjZcI6owfoZnkzEpCkpazBDtq1vQRe6n0WA1xOX2jDeYmdRbn9xLkH2v7C+bZiPNoKDOktYmy+CTGpNOnuhl20W1/Hw7lx6+3mhHS/nUObE1ds/Iwrl+Mj/46F4Scs88q+j9JG60SZzzcb2YrF/vopN9+Xj9+P/NKRdTBe8vGNGq9lZ6wLNpc5ZsCUoUy1FSLDU5Z4GH7Y9gAW2cpqzskQa6r4V6kBjhqghZGGhLHIRBR85oeFcHfbk2Ppd8cWQjYPbmHA0cMYIS9NLod5+9ielz1WkIPuQtjzVH19ghxD3yUk/LLGmeezBTrCNQ1GpaRuLVphJM2CusjZy4KmaEoXmkCUKzSFr9JWAdJWAGTW1K6Kn1PscHlEC1dQnKDCGosXNYyd7BnW010G4fb3ONdp5pxj3+O9MXtrGm9Z13uZs+DOz86YkbySdXROiNaEiDx9WTRnYqhBfKhWgG/+w3/DFrT9xzkXrnP4O36bXuwcOEIkF8nMUWPJ/seUtOce4OXU0dIb2IfkyKNqV+VdTtEYPiKQ0jpCogygh1S4puBtZMLYRq6MsDktq9N/WVr7EtGoNLdpdD9hKGeCYO91s8fSCIhrF/YVpAHSQtYrbngWhM3oOEezl+Zf5MRO6vIcWxb3hqvbw9LAMb6zMAgVsqMOvVl2ejab6qNWVT5HTaUPZLnW4eQfD2grQnCk0KmLesXF/l4gS3OKI+C295wvBTLBhAUu1P0HGa8/N1oANa7FCxLWdzNodNgEq18njphu+yIxlZN4OBRfTZEg0baZB5Ceee82zlCFrFzMaFYFXw8RA4MT0wckc5uwE8LPvgU2KW8FW1vNRBtgDCF7mE+5X45wa2nJWGLbQG4PZj5OXC7+jYt3yDKbPB/dM4moD+ppFRVXd3uTYrBJkM5HZQizdLrDFYGknQ5ahxtYbnktQryfJAoOkGsQwumD/ks7GWo1DkPEWdNt5d7vYcLYCV2X+NmO/pgDpFCOyU0nRv/HX5fRzgYlfUjY9tsEgqlsIJcgjXd/yDnXsyeNU+YPxif7Y0vzlZ1ZBlsk9mniASlgwmD7bNYKEEqjcVb6b/gF1Sp2hKmt53gY+3etUzDai6oP5vgrFo8aiTTRLK8V/Hq0T+DUEUW8dr3f9+dv01zfhHePlf/Fo9vOQRIyuxDUCFRLk8hoaUB04S+ORmsCf1sqG1934P8U+YgVW8uls/WXGyl10XJn3WxsIMKoKiqyIdtWQAe6IlX9NExJK0vGiZout9GW+CPOZKPrS9mKkscFQ8ZjxsjN80rorlTeyr2t3f6S0HyC/U2KRd5/66U+qoPdeEFGxsYlkjo5kL1xUFBBPlCQZkTnH342J1TzU/fU4/0gKs2JMiLKla18lOBNpWumssO5TI2Vw61B2GKMRqybFcEbNp6hDHyLPQ6DhvGcJ0TZZU+6AhlUe2+j7fOEbmdTtQkZ8c2BLNBGjeLYy92TX3oE9WAFcrkNiaQ1nBMe6wfWfS3/9UL2Z+oIbD4Zh+o+79iqqv9DJNl5gvy6pC4ZvBwYflh0GJpyBY1XAcpEOpWGXD1y64oYkJQTK4qcN+NdQzGzGCf5AM3F+jlDTOTox4bLE8VLIVYtNGyB6Z8bb1Cx8pqHQx70+r4oWTS/EqDj+jxoHrFp/dRmOqf7I/HW4i2PXqbRohV3jrQXbs08568l9s4oPTFrtkvMYc6Gsh8ew3v4Gdl0d5ZanXaIsx8hNzc0pjiJGZJlYd3t20dAPrSZQj5vNlxbtBGuXGyLMJotHy1hha02VhLFedGGU15LbwUNR6la8YE+wdhTdEGzAHmpFedwEit77DqJmmF3u8X0EWRXNe0bf0L41IoILfc8QTR/tPk3fsRqstgI3rBdR8yWCw8mtYfcifRZVSqBpsp0fDweA1SkPXjKeX1hygiP2EdsB7K9rZB2sr34RbyRuBzSR1/ELLrn9Dfl7Z6gH910GtJ8v0JEIDVHHujQOXfBLslTZYnNPn6aUlBtKdP4p5Seojnl6AX0peH8raFhYEQo7qmP/kQfaPmXEeVKNUe/9CbZ3O3/5LtKI3rf2U3iR02zR41/OA1IL1hcfQbSRj+wy3CZpMzJQaGiXHFUmoS46qSXFS+PIaLqqWMS+l1EwhmutNTyf+I4c0eg/7G9NfyELKAtY066ia+zkM7Cpc1BJuavk7kkRcTWzREGx3ZvMIaE4e4flJhpt5vJq8HdGFhlC8k1DzIKbQJZofMcRAxXu/Bwpmu1/gK/F/0WDfiQb7h3Fmf8qPNai/+GB/DNrH6745HPwrzWu1Sr/haT84X+bv4T2/gUYNPi/yI1RTDpN8txq/wtJ+FlqUPtYFJfL/+1vaNOqWA1KlAdftFFwjN+OYx5+sSCDxmb9Nbj8ZZ6QCaCO/vp5pMkkIVui54coQgf1trEiv6aglDuIi1G6riNavzKDozSn0SXi9G+uggu/X/7eZlgD5V9ayXkfLd+57aZktQfyPcGk0Ipt7uQKhFEwXrM3T+C9vdz52czdfuZr+yZPQfnfJKUzMs/kOhJoXtLz2YB2GWF1Xupz6R2RFnuKiCwuQL4XkOZMak627om011nlKMUE5EtHt9uryXn5OY356akDyrYQYUX29rRNHLB1nlv+T2oyfosnsBhhLwXT5uKzx94AKrMo6T5UsWoaq+aVdylJPsO+SzRvwIKFZ++JbVHct8dcHiRl5KfRVZ5vRRWSni93woogtuLA/pRyJEOi5mxVoK7y0PIDxf3Xn+XhKLbAutdp87OkE+M/1ZX/ts1HY6t8ecQJU4wCRKMmhjzV9HeVmtk4Ow6S7OUQrIjW4z6V9tY5byOp/BW2JuDceasi2YXPWeMd2+wCP5VPj3Yb9i7MBX4K9lJ6QFkwrb+190eIM/+uHwjJWq3xOm3q3o7sxXjCKcg40n9KQzLZSkh+jdVxSsX/nIsHFOMDqjnU/4NZF9sazYNL3e2a9mVJp9qfk6kI1EzwNUXKDx+XckgIQ1qFJ5lgLwfS7LWnl5C0IK5uoQncxKR12emm0FVfzJqB+g8HJL2jfobj/fvxfrQ/xuMX3tL3CfnSvH9dHGj2pTgUrX2maUwUHc5JJf1/umARNe1/M01jnM6Z4HvJVFcAi+86yCAKn8Wa+Bnh1gV76txpCtn1xL0u1BdHmrJTRCENOyFrWvtaljBnLQja6hTDcQyYrMlUw91iwpEFby94WrqUwRBWoQmc9s+MZ70xGJKUU7J74S0jMOldQ0QjidT1hBuOw7XqNAEx+dn919S64lZbQG2P2bLTmJxminxAY851BWFNwKvDqdP0fGVakUVH4iRaYOlWLFqChFvyruAS/gK1xom04/PRwuw4rlzxz3bYxEv6yotaNSSkg85WPalhonVidzLYS0/IxZ+vW4hqDUFf8IWLz9HE7CRLrZjdegdHV/25QFYL/f3jZii2jjCGmEAnI6w+Skf4wlpxQdenTdyBqlKGqsCAzL8GZ8fCk+q3Z7p0IzO1Va/ppiYgyM1sX8xA1Fa48ay+8VZEUkuyfCkaopPBSMU82FDZ07lEsGeXPaCedXNTJF4bVyxW1F7vUxWlM6YzHqpRlJGs83hVvrcRqtYESvWOa7Kl4b50O/Fjyfd5u/0G4wjtMlT+1CvxHlmnUlzsOtr06T7C/m+F4ADYF4NgAMumBpkn4CEyWGoGORGDyTPIXQ08SIADN2CqoPgjDj7J0HgJ6ScBlTuQvAKpBBjpoSQD3wJceQ8UixqKPQnw5j00Qw2KpwQcew+s6hLkVgz+MIAE1vtj2ikBYAAK8MkPKnIqzSoZAP+yD7EV/38Hwx48cyih1XXme6iK8WP3uX1ffnQf3c/Wl6+1H6bNavk4vNjrluXHSKetXyz/jvWD727rm/Cr8yfbeP+Xy3W9bV6GCa1eL17fufxZPsSLghe4pg5muGXpvMHO1vgDT1TwD56zClaC0jh/CMaFcUjRs4NjipFdcE8x48r5i4CZJLRhjWS0Yx1SowOdywoNHk0u0QUtsibXtCEtueXWZUN2nkzuiRMH5JE4ZxPiJKVzeSMZW5MPUs8J+iKNnIIm0owHp/8U0Jv8UDQ8QgdUHY9Bc6qBH06nVMGzyR6jftutYcHlwJ0XAzs4tuKT3ci3KEZ2C069mKiNnRVLLjt2HmZcdSy8OOVq4K8Id1wEF+c3ti1fP3zNk+LUil8eRu6tWHM+8st5n+LtL/iMVXCx9JdqgpzfOzaqqyi8n1+D71XvERW0VWM0Cr6Ka+Crgbk8z3Y6/K3p4dymps7ryxl+Gngt7T22BxyLv8e+gbxSwqPBvvgzUANjsWdoFFSUtvlfY/ry94yXw62mQWKtbnmduj+/F4l5Hgesf+K2jS/JKr7t479Yv+NHitfD3uPvIWyqrLcPxbHKjlY4WHq6g/h4AI723xF+eHFpK8NFtx4AAH7J0ZPNEtUlwSL31eXSIX0lSO5Bdyv4aEyAqR8jrzKWPuc3D0PloSLKuOnM2Ru/0zibia51EWA/BMNxobxxdhD0oqQ67smG9r1qu3JyQqhLP5Oue0Aj2D1LH3qx2G/gLMlZm9mkc6jusQOrX02T1Y4ZIUCiR0oQg+bBHeadzvw49rJgzMmCf3AiPixmcV5OeWD+V4YZVweTwISmC+a2mNj0AM7V7nPOXL3okwHy78CQPzHmsECh2ObLvIh81N2I50G8hGBM3G1EOf7YtIV0AKZ1p1Uo7w/XKbwOyl5zBJv3htOYTmFD4EOcX1KtQT+Skso/yvWlNtleuH186Ez3zHHKF2FnOWfyp4HWZhPM+O6S6C1cAD6bbMR1oDZoDyM0XWXRBgIcxu63Rh3bLuEvieSjFdR9+OTU8khVgY0le6JFcc8Qtc3ZPzGkSPQbtqMuJGSnl1wdIX9qR2nGWuDBWEJydgysCRWuDbuXk+r0mUJftEyG4UTa+K9Ny0iDPwDgtj0G1ArygCgZjloA5blol11LWoPxOLEjVIAyn6TN3M+ucXXAP817V+qk6oT0tkFm42QFf5Qd44+hR9uOkeJLiCqc0NkGgVNfxuFIQlKYX1XzcAlJS8w/RoWlDJ8Bt/0bEkdHIvnKYVXW3jl0b4GpIrZzM20cBNL7s7jz6sz1nVEUCyPz7L/xxcD2hJ9O7S35UYar7S5prRS9PGcVI0Jlw+MQu2/5cxh5fMsdZImmleAoysJVFORSY94bRjtSTK4Dz+dB3lueTs5shZVvkmOnsQwRHf2QcmxkAcnZeWan8yrbOwAvZoewMavOxfmFvUwRsL7qGSdJwnJIAhXpyDokflnoPKpX210Kn0P41qNO2qaiioSiMr61vGT3APT+7PPMZefL1pCe7aaHhTcnlmAFmScRvg5Let4swMp7Eb+nUep1s/3ejU/3r4EmajQvdQnWEOWNh3efi7zchFM6amLDCLDIXdSYiz5WNTu5Q8h2s1hB0D69bEN6pM/ncMgZWUUkz6XqMVGTfcyauZXO5ueOtrLNVNh/YhFYOLOo4ocPIzbDBo6uS1yWdmmkSFrshfDqZUGrYt5nPJ4A+FVzco08dwCdluRcekDV3Y9G7dXQS/27GdCEx3TVeVuS7F1CFSpZacYp7ZM1IBj7Q0rHR2dcGZynyM4yvANMG8wQUfyRJ6osRVss0uPLMmge13p2g7ciYUqJGhUn3vGDcvXKE817XMtO6ULFPUKiREch/rHoBg0IgtqKqLpoHPxJVSZqADbY/7tzRHv2XTNU6w+IrD85RzRPjhiePP69MUZHD0zpodfndTrIVksKh5OQthy589b6CuBIr+2bn5doSowW9GY6iGEYhnH7c06TF/mPXfOz6Y6q+/Rb0Om6O5w9SxiIVMByPUJwFCLzH7M3JgzRLi96fbf93N+d1D2nUgfYoS1UmlKzW8Iky1mSaEWdZiOB9PbRl9EIjKigX6f4fEz1xGwaKa5dmIaClJDYQ4fIsjR03/vX/DGw7hzhlMN4EmfNM52Z0wHZ1czwE2y/5IMMoQzz0LteMRAVFjFK0kRxIqH3nrySZG5BQDiWAlPWaBbUZWkWe37HNIUbcuTsITDf0iRIcgH/TmQGW86EZtI8P5yrGZYvH5+8sB+mTKbtCNwhDEj4c2JRnYlLwgnice9h2nhGL77NszYgvPvC9DyXYXdEJIkbj5khl88wl8F9DqIW7E4DrYvxoRayUj0/mh9JIN2mN5SdtWADLPxew5CRelnYIoMpauH7NW2J+RIPc5g0O3u+odtnCBvi9Nwo+sjgKI3oumGmlevmBYFXFsmh1OzxAjUlOnpGPTUdZG7fxXk4a+B0g3BMVvER3YcCL/2sSi7ZUFKMc0fU2XurJH1XHN8ZwrjsvSaO0vSNr+RetfdjyvwbNaGkvsp5Hysw41ZSuJctivy+Th12Gk7xRoJ8QjXq6Vvizf0o3qzZBunOI1JtuieS9OiYMHdQP5BF3nrETbcdofXu6P16CphPTsJ4yzw6T0NIDslqWA7oWAv8HkneWR7fy1DRuVV4Yi18Ai5VYkaGC2/vMxo4Szr2XEIXAPI90uY12eizO/3U8DDLoULz4qOipF+yY92NL73nUIsGevK2UIm/0n2adcglKoFA5tcVGwKGz143Ie+ML8rWsacB/rP9oEk2p9nl/E3o6FBZfNx87uBGTFYLnuyIaH5cWSaiR9WXMYtI2LPW29PDIskQGdCZJDGewh6lzKgFuujcQ7yUC98zPyAQeTt3eiQurTuU5n8OIpdliWKjZCIwXNiJ83hHIz9cFBrth/oDEiOqR5IezwMur+XoZK+zmAg2cuWEfg4Jcng7jUpkoCSalKqOwxdgksBAu+90mdOa+TvO1kMLIjBmrGrzvCwyi17cf/aMf5PnHgQueBo0vmtvz7YgNW+sQaDDtvg8mliBKbhAJSvkd1EfMEcgTQgR2amgyAc16WTotu9xfDbz8m1HhGAnnYQga5SbYSYoCr8zP6zlPzsYOGfX6Qki/d1O3pFrnCEdMWg5x/NcNeemxRi+mu3+dJ5eeujARTtcae8iIfv7pmPrXKK30fSJBXPAOeGD68RdGhskuZAiLL38sQWL8T3vkstzMx+8Ks7N/8L7MGOXZ7K+CaTfGoKODZ60PcGIrMJ10f2ar4jm1q8EZNuWaVoSRt0sNwl+buiFLrT9mCjkY5w0B9UmRC8X7oTZdD4SgjPiTxiGYRixY7CzftndhbYkjRZAMTNrIvpkAYTnLubg0u1hE+VMUNEU5tHZycUYOiaw2tKXVzEecLS/isQZCf41q51nIZ3W9C6CF4AfRVLCokWdX8xuJw49V3R3eOYFZw/5Tfsv76WzmpgCBhSxvNSNg68I2jvQgDdkGGYOAlvKO9GQCcrFmXw7nagqfAxRoylTE+n5Pn6CJPm2keuwI2MQIXJV3FUPVAmqxhIJcaO/Pwvs/dMBlTQgu4VEbYBczzD2HOUBlcwgN1VLvz1UZU/qcsb7ZfbzGx7h0fkgyTYxlgAZyAOpoB6aEwlkjSCo+eBeqqsQsmFPLklHUyLyaiHzTMuuPzgBfnJry5Bqo6xE3OKL1LCIG4ZJ4or/nmGT7dM/kfdaWl07fD3cLOgXeli5BnEIpJ4MimvOJO57hZEqJcYH62BoraqxWrrSdsFu0wP3px9z6U68zR6JeVE157PwhUSt1gi4Br1mYsLjrZUHN+7aFV/MAuSgbLPcZ01qP5wyKG11MzLEyfL9N2e+qUf3zz6TiHFFk8QnDXVcdOi5cI9OwtsP7jCnts+gYyc3cZj4ZiNsFbvH0Fb423pbBqnm8TU+a/+5vRTvu1+iJHiVmifzDnYtc3vuFdwu2oQrpLWb+Q7yvYvqoPos5a7zEKV+waFRelm8UY0qtBe9+km7QQP/dBBWyjix//1MrtaKxOOhwI8zxAtgDSfC5SEKkiXYuCEzFg/VMt1QFVTDEHD05fGeQT+zJXKoIfYit3KGqPyFTKPL9DtH7Y+Q2PGqpikkELW9vyyEb/JzQr2qs0VWXPLCrsFbY1oUc8KPxNzbRSrN6e3ayrIo/CudNGgPK0c5Nr7Bu8b8KfS53M+saT8LWp4XmBYQDsHOqJuxGj1PsNXsRp7cgM50+OFJec6EZzM+7MTOAmLxJe2d0KG9XzRlwbibtsayusU2gCsd8BP6ngVMMHa1A93bSeJULOfm+FiXXPHiUsot8znVfa2F5KBJsRQmWFsXtwsnpiaz47f+YhioPyreSeGPg4CHU40N6aFctUt1wQuf5K7UXrMfFL3eAlUcpbW8r9ZszDjnuXltDXYAp+XPd0yoGoyLv5TJ5c9Nk0ZZsSPK2Xpy8Jtnvg/zUvmocpjeOD9Fd4FJEFp4wFspsuhXJ/4M8CR2kUSBwOPVO/I2qIfONWeU/3F2mAL9S1+lPJwVfU1DBdUVFrQkFl/j9PoBhCUzt0WKBr1APFRq6i9grG27e1EauyVxUnqBT7Px0IPRcQNaQ957DTAp6mBG+9J5rrGexG0/imvkin4QUE7iQudzF7QYF2Ws8PWHfljW96lM7hfgFTardt9Ka1jXKkw0RMw4r7QZPzmhIptFM4vDMAzDt+eo3w1yB2ykl+21SDDR6DgiE7gSUTWDD1xHtryGuyIAJQzY2W8SePlsx6Cz4oD77z9x/52rnFLUDTWYJLFmXEC1v096oOV3Eo0XC/Jy6GpN0VGxlZhJNbWYmf/rf1Q/w67GRyM+TLac3KVpeGq4fBRuKGgqWn1fPoD5J4beSnEpWKKu/RCuJsEUM+ef3uSYx0j+4afjEAHsfZn+UGJbamjGimtO0w9EVx8uNdYhgU55omRG4Nt0ChH74NvXD3hsq8FeFRtGveWw4Ak+XAYEYz8W1CMBJ1MMG+RxeaqwQakRU/hyzUrEtu5afH2nlbIE8hpEMEudK9nAMtMSNoWCEE2R12Fl5FFOcbtzOulWjEdSuCVMjr8tQay89RHyV6iGmJmCcyQZKBuD8dFQblzsTR1JTV41dotmKLCtGhX3XKM6ZbV8ky64udItLfVMku0K1H7pPmDKelP7TIwcQs0M8KPvnLldrxuWRDE4rsUYx51q921Uv3ZjmYLSusnIKx9QvfU6KBBh1FivhL4DRzJiHycxvAwdQicwQM8VSLGUZZSOOh8L1nxAwvZ+FNK4vcZ9kSzCBEi5T2DfHicrKqPUq5unEOpxg7fxbF6F9f5gM88GwkOHmhrry7qKS5rgEFZJjL10vC8sn8iXz/fvcmQqhwt889YhSW7JNAZbgE2V7vvEOlYgcH0O7Nh/n65SvA8RTi0uaqy4xIsVH24AmB6/4bmNL2GD9eT+32P++h0OeMe0rI8IKbSQoUSgBJE6EZ/CYry63tIpFG19zv601XnE6fV5fCn7SKdC0oeVtqPrpSPqdR/aRDWEeDQ11HVq80b6fmVk/oLWj1MtVCeavXGH/oHVgjKvwECd+w1xpCc2iYCYgPBbQNgo03Do8MKOPrXlFm6H6fZ6LVhJnUBDkCrt39EqSQzfGoy1p8CoiJujWWjQQSivbFm4Jx9NKSYBhuqZWgnq4LpOfhAFKQv/jbsJai67maqXyxwFykU4NAt6ok+gm6qHNYJmC0+WvxogRXjrMIruk8kNfUJi6olNzk6A1exdFJTkbFO7ibPRw6TfoczzWXj1XgFiSD0QvER13/LTaFGAzpni63wyfFOl498QEJL8xHC8tYMP5CJlO+CLnoZL7DeNU2U/QHPB7ggYDiIHBdCQc2UDMppa4cNR/wf5TEITX1/MJxlnuXm/G5BHNJ7PJdSWem7sGgdoTAtd45ygID68naGqFy4ZDP3Wl40tVjaf9UdI7mp4gXFcQQhcpqG/txy5JrYCO1ey1zc1fgxSLK8oKV47x8l23W2C2mt2Hnpr4w30WzUynRWHSG/5egXnboxKSyeWwusjB9Nh6MB8dHfWBY7EXPUmR7UqMAzDMA51TS1VObbpCRG++v9XKAX2H/vtKOfvzR76eYqK24KVl62etlFJHUa7BN0euhnbhcJmAcKaY6oghwamS3U6uuKPezTOEVyE8kCh666uAVHkv2UN9qWHjwefj89f9/AgvwuLzmXnSrUXzn15dbotqs1EEeQT70kcRpu2+1C9fMtH4IATrXam1cCMr1YMwWJ2luWJmcitiSM2vX4vWKmM/B9XIWIA9GRCFRiXrBNxZhd5L4MLUbmxyflHsUrVyRuo4K/EBvfAkP8F8ZTUbp7yE15zyrGB2LKRVb9ZNpI7D9hJZzrkJujsVxyOgJXyRw+wHaPTGtor+vDcepPMg7QUSnFeXZi5/HS8qQVPFnx/cn6HY13VraCpfsBOpbAMb9qYkVolP7aGENkEXkXxL6sDV5+VS4BAd3OkFEqYCxM2UyK0ayYpm/707HODzL07SshL4azL4fci6gqAco0SbiJpyLvoYot3O8p/YgPQlSDdBTwN5DExJvLj/Bz822PyWCEQ/n768rQxy0hWabxMNU/Mn4yikR5WSJgpB653ogHOJHQa+xBseCHWq47r8jmV1jaITrLt5kna3Y+v56lUwQVFQCnPiMJlQfHSPTQeXCb5rzdbg0q7ORU6Mc/ffergn03mcfuwcKy3uJOYrkhPusqWHVQkntycj+bKjOsNIcvV672+7Qy30Dp8Pfn0OeI1zKTiqylXdP7FUheL9OdLZOXiFTEf2tZ5vaLGKdRJSTw59SMHEhmvLXVvLcCPYvz8hcGJnPA6ktqoc1g8uFxQA9Ech2g7AQU8lXg1aGiH271zlH9wKvB0G7+CvjNGS+HbC9YRYC0o9vdjbUD1MklI78I93KMofJ1rh5lrMuOmwS+NVipQVWIiNtKA5QY8iXfuGWdPfz+KpHRwTAyRKGQWtA4uoIzDZkOSCYxzhy+1ncFEN/ViHBvdCJvNciFwkLjJNS6aPxj2OyVSx17nDLL19ZRHX2muD5+lIDesvWXsQ2aPKWmb0g/FuUDaZs+++qAQFPuxzzESHol5AHRvJXTIQRA2c6PKcilrBFKNMyGtJi+mt0gjs9r8SW4sT7CTEY6omu+pfnwDQ3SyRuSWq3PQtIlf5RSnU3ZcTStRDHj0sAuBOQNmn8gfCFnC3eG36lzJg5VyRLdunIPfLyelksorioYI8GlsBWqloz8JvCfjpOaVFVkxjSFFW4rzhnKkyxS+rBciEdnMy3aF7XFEnJh9r5Vp4vp/JCjRgQ4Uk6DS97VeQ0X4QzZd54Xkmh1v3cQD5KzfV4hBVFH4hSyz1PGmmSGnPLtbr2O3+Ufz4pA8bWATahrfSk1CgM+5BKQiuMd0a7nH6l2WST+D0rJKW+a+JKLKioE+u8PX1Fj9Yq5MfEqDganeIRZhuGBjdIXg36O0IIgGxT3SZRD4iuIL0lkQTBOKBakHQetR/EaagiAWFO+RboJAoCiX5hRMCUUW6bwWtFcUvw+p1YK4RvFQpKta4D8UX11aasH0gyKclB8J2jmK/1yKkSD+oHjj0vVHAm9QHFzajQTTPYrrIl2MBO2E4ruRvCKIEsWtky47AgcUn1w66wimDxQ7J/WOoN2h+GVIU0cQhxRPLt10BK4pPrg0/y6YLikunHQ+F7RvFH8Nqc0F8YTipZOu5gLfUfzr0jIXTHsUBilnQRMUJ5NCBfGC4pWRrmeBWxSbSTsVTGsUl0a6UEHbofi7STaCWKK4M9LlQOATis8mnQ0E0xeKMyP1gaBtUfzapGkgiGOKdybdDAR2KFaT5gfBlFF0I523gvaO4o8mtVYQtygejXTVCvxC8c2kpRVMBxSTkfJnQbtA8b9JMRPEPxRvTbr+WeAJxdGk3UwwPaK4MdLFTNDOKH5qqTWEcc8Y2EKnN5JMbrDxcNLOVUNYccMYuAw6UyPJ0i82vkZ1loYw+WUM/L10bhpJxgU2IrSTXwlLK8bAXdCZv0pascLGf1GdmAjjC2Pgc+icT5Imf7HxJqpz/ZWw4i9j4CzotEnS0gM2DlGd3USYPDAGfl06V5Ok8Rcb1yftXEyEpVNj4F3oLJOkFadsfLfVsSeMhTGwhk7uJU0qbNyGdi57woqKMdCDTvSSlj6x8Smqc9YTJp+MgT+WzvVe0niJjV1op/eEpQ1j4DHo7HpJKzbY+GW1M/WE8Zsx8C10LnpJkyM2nqI6Nz1hxZExMAUdf0eydIWND1Gd+W9hcsUY+D90LheRjH+xcRHaOV8IS/8ZA29D52wRyYr/2PhrtdMWwnjPGDiGTl9EMnnGxsvQztVCWPHMGLgJOtMikqV9Nv6N6iwLYbKvB35anZtFJAN7BhYCLWSwZ2ZhhxacsGePBUULebDnHAtnTgteYc8LLExOCznY07AwD1qwYc9rLDSjhVzsucLCYrRgQlEhzZcEU4EiT6TzhqC9ofh9SWjGwINAUJoRhwyFlgwZAjJ60IITkRoxzqGldCJ0iHEHLYUTkTliCLSokWGAjC20iJGRFjEuoKUyMjSIcQMtKYjIBBkVtOQgoqX8BKpTOsEbFdos3pXifSHR3ycTf4E1+J9vwcfj3/JUpfg7oi6IvyNmF4X9r8znl+/+xlpcFfHu5kFY60v9qDtrs9htXre3+aW7e/fWTd71PA96g7+Vbbkevj1exvB3REy7SUX+/9kE/sZ6LNazd/FfAqyibBZOKcqTHd267f58FdO6/o7+uMGoI9X8h3QVA1J3MSB12Rs4Oo0DAusGUtcx8OdGWdhegKvhBQAaq8SfBrMNMUPYSoFmPCscC1qUZxJYcY6iZw7byj44etR9csQfLsG6m2v4/gdTHgzMBLYnvowjRTYprlWrAticuosRT/savkT75LrQuxZ87aWBpZGhnnCJEKItnTuc6UbNJ2jls6C6cfuUmUlTyzfUmZMF0ksGPVEOZL3q9pMTtLIDWG0Zxxj1JxwntFmpzc0qlu2lZZmxROxKsdmUATbDHzL/IgdOVYcgtmCGrlvXNYl+KT6qFNYQs1S4Pnzz146r8H8/OIh3Y/NDXoLrwPqbDv69VHahhMWasfJP7uAYdHZgvyZHDvY5cnfmAQlqS9F4aUI6joQ5vn24gv37V2S6GOCT9oZAoEWcAhw2zmEiGFeIosEBmSiCn/BEHfyNNrQhbxQNHvxG3TAPGKM6W9rjiloTdg3gcTsCjAWPVkN9JoA7FYNxX6ciFzQjheka7kYuhrE7Q/9H+ZakNCZCqbgVAipuKrgGzERcFQtRtOMaachwB0BKhJKMiD7fr3dk54D0JOiQgWTcQyMp+A4FBTxCMwyB0qDy7w2xug90skMDL7AG8hKix2x/jnwFkcDB/2iorf+19TlDosPaIc8gtphP/Q35DqJwOJqmiw5E6VAj+gRBwXONvIN4xmyvyEcIMXb29qY11XkgKoOaof/gVmKGdUB2iHtHKXKF0AHHUWNJEDmgevQPPLSDE9YF8gbi0c3Vv5BvIVLAYY6cIOoTrA36HkOiwXqNnIvHdN4wn/ovcu9EUeOomi4pEGWNekX/giDxnJDDEU9mtq+QLxwhIxxazSoLRDVCnaAfcCe7Busf5LkjHgx1jnx2Qj/CcaaxiCFyB3VnlriX3wbrIfLKEX2YR3+FfO2I1MFhQjZH1K9gLdFPGRID1ifk4ohtsOPpDfneiWKOY6/VSxmIco76Rv8Pwe94vkTeO+I5vGIP8mEgRO3stdDqpQpEpagderghMWJ9QeZA3NcoQZYROuP4qrGII/IAtUUf3L38TliPkdcD8VibR79GvjEiDXD4QYYh6g3WJfpiGBKG9Ra5M0Yim576H/LJiKLF8VzTpTBE2aLe0f84wQOeM/LWEE+j2b5GvjSEzHC416xqT4hqhjpDPxzuZNdj/Ye8MMTDiLpAfjBCf8bxRGPhhMgN1I3W5incy0+D9Rd5GYi+M49+hXwViNTA4QPphKgvYS3Qj4ch0WN9QJ4FYtux46lAvguimOB4p9WLnhDlBPUX/Z8TfIXnFfIuEM+d2T4jHwMhPYNCa6omEFUPdYT+624lFlg/kT0Q93NUhVyD0D0cvzWWZIi8QD2jf7qHdnjCuo+8CcTj3Fz9G/k2iLTAYQ85BaL+G+sV+v7EyILVkDMPUTXM1X+Qe4gCHEVjSY4oQTn6aATwDHJAPKnZvkS+gBCHw1prqssTonKoOfqsuZWdYh2R5xAPiqqRzxBacNxpLAKRDarV2vx9uZefCesMeQXRD+bRXyBfQySDwxeyQdQDVkU/aYaEY+2RC8R2YMfTDfI9RBFw3Gr1kgNRBtSE/m0EJ3hukPcQz4PZvkA+FEJqO3t905qqPiGqGvWDvjO3EhPWV2QW4r5FJWQ5oYnju8Yigcgj1D36u3losxPWE+R1IR5bc/VP5Bsn0giHA2Q4ov4I6zn6WTMkWqx3yJ2LgPnU/5FPThQdHC80XYpAlB3UB/pfI3gFzyXy1hFPM7P9EvnSETLH4VGzqgtENUftoR81d7KbsH4jLxzxMENdIj84ob/jeDYE6LV+abPasWkY7c0wJ2fbsmmYYW4MfQlbSzYN+7T+RQTeh3oGwedp5DgSOYLZQZXniebMwQFFckCZ58m/nzU8jJEZ9R5GvGcKj2NiR+R52j2KdI9jUMVTHOoZyqPo9iiSz1PtGcqDmhrV7UFle0T8f7FUpkFpBekzpjeyVspoSUWzGFsx1Wy3gswyLSbWUNIKL5ZroxdTV29LZMyY30mnGC0IGecgnYpGe0SmzNrXYj3JWpGXNnbGo1h2RauIZ6xp5UapaKWROhfGvZg22TeCkgEb6jWAT4F/HTqSE2GCoIGGwkgwB+MKrfwUVrZWktPqWpl+4ntbBqacxX9oUOMqvWir1pxLQDCsUoBk3QpYQbcG0LWu0XJ3aqxqm34zV2qtEf/8pOmUKQ6B/FQhcrI3k0JrtDpC3ZYtdPFts0wsFhaIUHGtsKKyqt3msKA3CLwz1LAGmlEUAGeXvJ8vNxSzdORVgdv5OUe9i1U84bJ3uSgf88Byq3h/wIWcw7IQQFUwvVCTD5G1IHOSGWbe0NfMuJRSzP1Wn18thjF44TN+Bzb7ArMCkXMgV3QblsVtJAPGdMopsjX4kyNynexvksN38Fz+4OzvlUUe+g1mydkh1V2/sD2HsMTHZGT/XbU/qb0OKhiPGTVPUHg2iJQOcywe001eSFLZhcuOZrmYwgXP5I1BU7vlEFkuWdQH2uQ+Mth3VYbXCkaHZQ9bYThssbzoPZ5DPH73Ucp7doZETeaASIZC+kBbeF7jDh1WJ7yr79d9RTfyWYAb8m13YpTgiq4ND0qS0c7f2t8kSliThTGkWcMq50g1Xm/W74gQaWnPuf3u0ImmXReXKAS73vXzIMNz3oK93MMCc5tRM9zCO9GNAqwLM5xwhO4cNcQZYD5RPdDIiewSdZhn+UtS9dymqCkGUfOP154cUi7kjs2+X8qAygJMSOKRhQX6iEfugiVuL2wusTtDsY7x7DQD1khvZnKJzw3u1BBQ+F1L9fPfIBOOKlWkaUE1o46fKOMby8PKmmCsWuiQ+Nl+I33GIVCEbyyi0lhCeh/AaKLY5kE4Jyi6Hu/+XUKog4cEsuQ2fHSD3IAQdVVYahO+DxDc1ZgQuyQO8M/1pSZW98lVPUpxyE5c4qFmgrTbC6vR7DTt+2XaVB41Iq4wWMUp5g6RsEQA/C0pmr3XMVp4/DVuxeFWP+MFNad6M6TpUJpoAsY/usEjJVskBj0ZclShllc5Z9HGsnNftsoX3SWc/DJg8IIqscMxbOvKEs06pha1dchkYAhRtDqjvPtsgzYZmRaknAMVjqE8ZJALHXwpIQ2ajy8RRTVeZT0PKnCDCjx4BRoztos2fY4t1jxEN74LDhGbF3I7NMROADLw4+cw0DE5yR5SI25f/XzDunlXGmH1YFTXjAGZpn4mu0cWsqAVFvJuCr1Ipdm8x0jaj1xEpJ98jt08QnMY/jjxPDR4sVcbg0A73PZKQ+zbaKhDRaO24nfNFEf28ZrFGFoz9VYIr7EQpnNzZCrUX2NbXkDs21YEB1480s9BagiEYIji4fLbY25yU1M1RodCYE2/0MJhUDxOAJfFm/YZjaLhdtvyAQ3xpfeYSj1FTDiBNNOs5u09XPvIKshLvvOABjrV6xuf0vgWGnjimEUmKEYJlcy6qjcnRfEIMejqAYtDUAQ8dQaQoglc0AkN44EOlO1C/ZLxvdSyNEZdmuqqdq2C0ZAxJ76cpquSeb17q1lquWTZTtEXvgNhhZBdTKXpkH6WCJK7N0VEYa5AZoKm55MY9hByjxVM57EyzoNSYybFkGRJ5XAnnSt0njDB+ZAAWE2/AMvm13hKHF/pHK27+0RWYm5TiJ882X5M85n1+liUpFVwFANhCwvNqPPJbGP7EvJUXH/XRJ9+rVy9NcGTx/h/zJlAevKX6F5eEcDW30ykmfmB2KZVvH0e8BmoIzN+cack22U8SnZj3Bfu32ZyPCcz2gkojHSRojjUjHEkKQUg98dDU5GK+VFLGhhrLJITC2jxQcJ7Xz3EbVwL3FYhOEDmJXcKM+WxddvcU5EvGnbHieJCZnr0TNV8tyJMlc3YvZ7pjocWr3i3zMhKwrGLX1UCKbVnfkwOFquEROqCn9eWxH4gJUOQT7r1Ju+rP6R6dtOrGrdX7lkOxq1wBRs25F73r15fDu11S+643SnXexloCT74o39+AZD++AX4JQDAyR4A8Bu/AP9i3XQz+3pPW/+jAjDitOc///WNf/E6CWD5I/iGS1g+D0JY/vg8++nbr1foj1x+VSWetMnAQCYbo6GND86knMbcIFrfEZd15nKcJ3PL0oZmixNFByv9qv/28/TY4YZHsLOJGxuSJQ/HZ2HsO/K4LoBqXvBAD2eKZBKEJ/y2A6hhpAZDtpS99OwY41upxdGggmklSz8NIBb4SoOjb/nrgVWY6rha7sQ5dfIOjpL+U+qBu2XohqIQbYd1mvuZDFKMGXg5KN+VUCcNMWZWEptqPnms7UhJZvvbh+cnN9Zpug9XJvBGaW1M6sJybGEPtqVzhotHCtiB5fTz7r24zGpLmiJrR9hwmcYKnhnRpRdyrTOMTx2zIA8fMCQgjYnZdHuqeYaDWn/w+JyGhbmhkETTogosakpR6EY9a8JiS/lfd9B+u6R/qgz8d4dOMQz8gNkJxcbjrSZ9hyTJL+FsOQH1k0B63QLaZJzscxosBwOmjFUEtAmMDvRbG1aoGpAcJ4DepGM1RKL54P9MBMoN9qXhnLixFmKlOWVohRStJEGWXXX2JM5aDTdx3w2qNoLoNg1aGxpbLRGL/XxqtICSYYotvsvIR9cxpDyhCZ3fB18cee1P03LCVuMOT/HrPsMmRwJmZr6Hz5UByQJ/llhv42SEjRSHU/jxHwGkF4yrTaZ5VHSPH08ncbMCkL49QrYzqwnvBl+qGGN1H1LSRlhiyLw0UNFE1ud+bQ/WZxTn1rHhnR8AT+3jIDSiT0+BZzvwLb4pTa2XPsv/V+Z9wuYrhC+HZZsdLFpyJlM+ILHXcemHMm9jGJ5OmsA4pfnWE6V6RKhXkB5GWdq7djhCRIuRoFeNa7RzPEuhPKmNVnfewuJTm9scDPfwdHJGB93ULCXAj2SpAPAU/44p/af6utI9netfQjqxcrxOpw/9U3qGiYuyIFZjFHSYUoP00PXqZ5q4250bAem6+usqmkeTlHQxzA7kRyyUCQOyHQjh6YGx9SCV5ke/Gj0QQXPnu6BfjPKW/ObiSqqWx5IDUcvkMB4BH+iHKohTrs5Q1HMX03IwBbSjB5k1D3JQ8RNZhqIFu5LdGP5wokT9+SL3/nu11pxH/3hnX5bPXOOj02oTnRCpSNyVCp/26PiSYEVcWNImFkxiE3+RQ5Znj/Yz92fx7ZIc7PtRoID4Te/2D/yNeMGO6XH/h2H4LP+mcL8RK7A3Pe7+JwIyeEsyOJs2S0A3mxwc53wxTeFTGLyfL5enxK8PHhhbWiDEz7+vbpbeYkjaC/4rnCvg/VXS13cQAmL+oImkP2HYASxhmckzo7/4ow1NvoAKT5uVyQ2cV4Ad753rT6neRX0QA8UzAKcZ9h6lLn++dUh9SKWE848Ccr43SOyosz9kS9nm+UQZU3eAbuiUG//3QAWGoh3U0mqsKT33WArupoVR8Xic2/eQ/0GPY7zyF8egWHO5rfeYmZ9LNQ/3UxybPgDSRb/B6C/sgCMxwPylOrqyR8Gcotp/Ky3dELBAz/9+890/gGuqLelADcvTiAiW85goyTi7wHHhKXhiYDH5Vz3IBTH0Skn9ITJu3XevaBFj/mmAtaqLqdf9iJ+wXzY9Qdp6cGrvp03hN+hrwPMnXwrxc/RWO74x/BMVLfGnznaN6syV/9A2RA4KaBvCV8C2mmI+gPapd08GdOUsa0sZ5rH1+L8DkZmgWXRIh/o25vYqZX6qRB7yWU/8DPTlcI7V9zjVWv1hLOnUQqDPRdHGoHs0K2w5sXRyU4HP77jUlbeE/xxH3VFot6Tv40+EsgTzvp/f+GsbZjIyY4v5ztwFQz0zozzy/veAm8/Q0IDjdNnfdITe7M9DZLiwTuG4ubti/KoYoVQk1UA2YaH1NiXaZNeHZzHHnDdrnDxFmBPpjsz+Wgk+zSrrv9FJC6fblihySF5a4VIdlQ3td5zpHBRJAFwac53VkpFc2FlEp32uqHvC/dZ3VVGVSriW8PoQyy7XEr2cWdcg4wFhQBievydjwJQZJAsfA+LDGbxUzkYHGOyZ/0iBjVvhkAkzf/AZ31GvLNVlXjq0+n83KOPoYPtssg6vO7vYOBvVnOcZgfk8PLBrHsNWEjcJHCBuSapTxQ0hZ3M3XYECmx9FC6qGMleUszduXdRp49wPGzjzur9Gfdq50cGv2aDkUcDorkhTF9r249SqUviWXUxz7Oobzj+mPuEdKvtRqU6LJ/cJTGp875rfOZnGdpN02SzgH8k2HvuLiafp3i+a5myH3g8j+WMAK+7t30a+/O/vOACqDjq7yF8sLvq14urIEc+/0bhMpwM0DZo3fQxvlNcBtkNgWF2xKPmfO5GHwTP3mSCvZgjr4nUJWfEOuJ+kdJ748ROl4rJmSskbrrs9vf3DRO8xwWaWudUgpE7uRfJFXFp2BKyOvCEGP0tzWokMfzZa8dpAl2uU33PXAvowxfMb6Ep9u8zvBmvwlpYFc2V45cGUVv+tA4ZbV3/PfdcB63nBkba9r5S6y/33UCv4Wq2q5YjxKOtUUcxvfraoqrceLYNWyujl2/ivb6zQy6RSIRhoR6HTGYW87k+3P4iFOhD2TaIv5HGuirRJ+AXVVoVt8As6Pbcqhf+NNmXVqk3FpSzbe2olIoqG/VKtZvaCOEr/5f/ncVxt5NnrdguFmWeM8frOCcKRvjfQ/7CxWhxJf/0zbFemCb/uE3LvvZsbo2qNsBRiw/76v05r5noT68K/m28c96KDXh8ntXNd4FlJVLgX9LXRvLvz8vlDIYGvBOwFcPCJ2xe7+LxhPT9MgptGVlgEF16xGamm0XvBKGOXkh7hwp+ExK32Aldx31ckKLJI4/kbWNsGqibGxa6bzzUgCRe8YXnUgiJBSLovfFuMgTavf2eaLP/d1zSJXv++FINdU0BRw/q6G8tjL+gWadR4duE4HbheYPiSn2Mu1ajUsL/hbdRhLpqwRe3iwrvAv+KOVXzDe8vbxvWGv/wrlL5+3W8+CEe1dO97C5bbr7YdC0PD5c4/+BQiDJOqCd9ZcXkkdNHTuD73NY8btYDwasP+LL3x8dBOa4QMbeR1Hg75fR0oNPLMAr5y4KcLdfnrgLIeVu0SqZ80OviTu9PtecbZY4jA7f6n+w1B4mcxzmsJOmfRMT9LKPukUYwYjromQQ+pdX5cg7lfoPtamqfi+NvqoFT1OBO4h+iW/KEg95BJl02lAklfggxTVDkQwYkYNV5jXqTGcy47HdLTHAyODYRjzWnr1UBUkc+Tbyx5GMo8dYR1jmBbV8Z4unq/8QSvCXE3mOP+EfmO0feLPzgxwvp9/hQ1gGHS50+2mLD3sA6vurJfP7TNyGCTrdgZTP2M0xfMIvSQgh76Y+psg04uyU/XfV4AHDDY1QJjUweOgMwjuu+txJ8dvn3EM3dzStg3DA+JwmO83ngqKOPZlBtyDv+lOTOYpVl7b1szUli9UkdBb4Lnua16XNiJp8BTZjFwHCPTyIzO/Mru8ne/oD+oGIrlgUhVxlc/64kNMUGvPSkXcJlJB7sjyJDwvEGOol4Q2UUYgEQGPXCtiEmHBpoavY/A+1GCWw8tVkIVFoI1WT0S50cNFHJoCCw3qDW8zKSDGUFMGBBaZNBBSFD5bBLemAKVLiQhSCj92ZMZZAErNZUfgSKdXmzXkRZuSGCQL3y3OcONZio97AidTx9KkU4PnuZEUkTkBpuk1cvtOIdz1EAjX5g9pDEIj1FqGtfwTS5o0aO7lnAoyqEi17HAVCPoxmVWf8OZSg+R0PQppEF26y5Cu/6290GKdHpVfWEnZd5DJ2n1rKz5zHHTlExVU363BVRXqYEVmfSgweho4Ic6RVvTR8Q8gRejVTWlk1ErEy1G0QOzyjrYSGaoaa+OIP62b5n8wBL9+IjNO7DjUy7/ngdnPpvCQibPj+0D7BfcicfXP0wc5Tej72g2Iw+1CPd7G7rmqII2xps9vsFjkP/mb9oQZkg3wcE3QxWtycSU7ooDau0nrZx/xDE8E+nzNKU+NcXaoYu5G6XhObIH0oVhE2nqmN3nwXpIhd27dTFT46132EKFEA19SMWYepGOcwNdd2F381+ei27UfFY1Y1fnIVEPSZVhMRI9PKXVScBhu/RBmEQqUzLn7SV5AVQQMqt726yI+i61UzGJ/bIJHHHN+sBMUoOt4Sv/g3wSf9iVemKTpJ/zw+IatMMk0p0oemX7kUmx73XxU4DLwiakbq5n1h8JUIleAQlHpSSxVw4UFpg9vYKVCuzTeXauhfXIVaKZyf2hNZM5UHLJ0KHoweFu60tctXRKXsbiUFxKBbrqfIP+vf/t6rlzoLXzKlHe+x+wZ/WjwD+JAnZuS2cM2ScWwvIHqXClROyJmK2jFVjDIb0fn/JzBzz4CPLKnN8mXGH+NvEuMr3tsV+qwKKkwATBukEWBt06xwoEAfGMl74h48IVAFEjE2T7IBI3nxwbJ1hOx1BxkPtpCyg6lyvQJ82xqrkIf06TcXaqCQDtCeZ87Q0F6tPNLqGPhRA3kJ05UZbwu5QVymmDlGOPd1IJFmUoN3q172q+lz341oy1N8/OpCefm3WF2cDOMo529jh/gL/RjwZ7Uy/dJ5c12orIE8+ENr43Ed6/hjx5zcuz99Rctf+Zux8+/q6aPiZZD5teuipskWUskZyvEG1FOWvs49r33rKZYJV4w6TkGw66Gpde77ksf8prbyB8r0BUrPlL5HDKyAsQz3v7+INaulauuk0UNeBrfDF/fQE42oJjZWVUZtim6WftgbFpvmsoVp6/uNtWs6MWEyjuEptHUteHpEqe0cbVTSG2PtjpMtoul8+UOl3mGRgY0yklfCE6wM3W4jsDRhsGxnPXVjc7XUY7oCOn4Nw13VjMC+mKWZCh7kHDN8XUYNlnFHPXbUhBwPUCyLNtXYnxrqTOCAVa3zwo1AJTgbsFhgyFuSloLJxPU9muqmFdv5NSJPFDloIja0VfFborC5KPTRIzmUTynVndjcsINVDtwYCW+7lmKCQholM12GDyyNJviwNoSIyNcYg5DRYo9hSVEdUObWnqvWDUvOZswo0Kq1IGdNug3sdsV0CpydfKxHEVdtPEtmYG6x4qeNmRwIAJOZgc2puExs/SdHHkyx5PQ7X2BErlOpvEse97SlJyp1GsFi55gGThoZrQVvEfPJtookuM0CZ+NxuHLMqc7/YD22zS18s1MM1xg6IWM7YRTIp4O88I1hchvVrHkvvdH9oVkaCgRUTULuudaiJe7AQ0kZUHzQl1z9A+GD+KouHQRHmxhhvqEVtbPa23uKMzHqHo0s8xZLFS89RlPTwIylmBCW4+jPQA0TYC55B/XOdMEh46LP2Sj4Fp+ApU9jDbvEC9++HoYeajVmCvV1iaB2WlttELCfce5pCfO/tAsVgG63UDFP5ayrrRQ1uL4YLMtLczEjJFnn1tdTQbiu1nXrHGR7w3oxiijxU2MoOdJcsMJ0fqXswbGICEcR6/JM2Jl7XYa0Q7rMsKYctkcbqjoDw+YK/pn1nIptnQynwIM1RGKSY2xJCEsWNuiQpdzk4eFTZ14mKhJb3If5+Yi6AyuS7OjztLQlwGbGHddrgxnQdFsPIewSwFRfkWS4cP5oedYSplAogQ8WqFt0IPwKFxnADVE1CjyaRO6VaoQqcj8pT58MRvLQI1HRLFX5drWdfiIXI29dwiTSRR37XVQZ2baMB2oFbUPC9Ry59g/lfd+Aofb1w9qlpYi6rLfPBzUSF4gr1OlNJGej1fEKTAVr/6t2MQZKE6OOmk2t0nL0RkjpAXzGNmKzZjD1bkQev1JrcUc2CUfaij0+6JpySeoX0eh1Zk4Dll2E9lFvkcZ4VWYda2eRTQoJXFULbnGKskd9Da0vGi1OvSOQvP3y4jL3bjAwAFdY1wsGWoVdKqYYZdXz/OJfjHpeef6mFtoNVrc/4RsRggz5ZWBplIzg/WvhfLZxSpTvASA9IkWcYqMEqVU1Ck+8T8r3aTcG7VTUGvSQGr2yJI2VlUYttQXnIZmVHkHcHoPMCYz6pOfq5rtOVWRNaPE426LWID81zdvp8p+hdqa5qRi0Qtfn8Hudjtdk+Q9+tdwe8jLYUf9+dxiNZfYerTfsGLwHVTZflwoJXH2++eLMjNOQcTKf3D3fDHga1SZgJ2hiqiNxCdK8g5XMRbLtVOHEqKFFY/Mg4HxH6pieyuqoGYPef+KphpKLUp2hFkj6Ul1TKzGx1R5ww+CdFpU1o0yRMTfxgambPJmH5yssyWdhZVmc2YismUNa0P6lFxUB3hNgrdiU6R0ka3e0ZZbWGlDiTEPibNbvCCpck4c6kMNa00w7MRvUInqYr7IiZny9nuv8tksvsJEGN87tNPghhc9fL+XhyjZyTPCZIM5Ryq9iF4M8fF/Lmm4ylPkC5bNTzXRXJubTqLUIxTyglbRAIKbA1pcwJq3LTR7FOL6IbM8Toy1/rnQ/duTE9cUR3lzMxijppOWotYy12uYJP1kXneo7hjHuM1c6KqTKXd/Drrg/kqeb9eCk14lo/iPZH0Y2t0LNR/mWI8H2/yTE0L88V32XDP2ZoIkEHd12EGAD16EsYyQH6vbnqGEX1QG/HgHpu8cDVRvENRR0lXQrs12Xrea3akjhycB2l3GrRTECxMD8PUuZ77JvabOKpeZENtWrUAlS3CpNCVzvkabFErq55dfL9AY+ZyQWFSbNgjG0VCZ1EIzBDpBJT4kK99HUb0tSQuKXWwIIt5nm36F20sdEyT6xumPMcnfXSA1MmAx21vjqk37KV6hx1nDS9egMH5SiakP/EXE5Js1yqMPMt4Rh055hUAbsrAyKovctrJwJtLbB/UbNn5bNGIIV2X27S3kfheU6jZTVz0Z8m1vjNwbUMVct9UKgbHNLLtG4ErvR6sG9ZvrrY6OmZAtiWkt4Qd5KWUm/gY4Ka7xid3fgzucalbL+aC4GbdyZfV++/L5FNtR6XaeKOuaOyNz2Pv9nMxnzBvyOi7Fe8ZufIbjZgTj8OtT+Cx6r9VxZO4A2EjtYpaDXna1xBHPd3SvzbwJ8RCMfcjpixOruJm6Tta0UTZ55kYlcLliXS9Op+4R87GR302Fo4L2tv0L0mkcTkOs/VEJG4ixE3UR/Qm8ONK0CAYZ5JZPVjb76gGH+0PtuWnRvbdYrFtKaQNmHUXgT59jbvdBUc5wLkiQQlyngRuHiZ3rf9JRU26FsaEqhv1qII6moYGvZF1DJ/pDttzUDG+BNEz0VY55Mhzv7Qjkcf4Slxq20YuNiz6OM9fmAIEn2Zh2+Wetug48Gx9Ttyfr7SyP6imfkQj79AG36zntXf23LnJ/Wp5M2xmfww8ZOHbN0KwYi0xBC8M4+AfAOI72rXcQxIrI+89/lEs4CNX+X4Mo1Bbj7IpCN8ivBjHL7TlryVnSrQLTIVy86S5HDtyaQF5JSR9cOGwCcuY8uJv++4nxAJoxoE/wCgvISUv6KNpU5KHouxefAyyYATdVlbbCoLuYf+QYgKYjh4Lo8fq5PsdT47L38H7maP/JR7+MIMDTzsfp7L2czoyC8j0awHyrcPuGtuAIztshiziHG++DSUg6vAcP2kgS6+SNuYpCfxRPISplstAIrrOShSa+8Gkw8ca2mL+RUSIJYRz2iCdm80a8cZywUhJEhvPpuPan5F8k9F3JznzSL8F+AYjcYoS7NDh1XBzkqAxVScZCOVbfhigMu5/Ulsc5MY7Eyn7HkrT4DZPYQNTjKUPWfQL6l5R1MKer7NgCaTb7+AcVe0esdhxU7zoUqe8ptxeW3yTrLicbrtCV7QVghbJEKgJ/KVlLke2jgYlTPwJY8CvGkBDnWsxnk/x3WgsMXcUQgffGnHKlO+EsVFIm5C/20ReWdIyRBfbOtTKZJzGtdBbp6lqJys7zD4j6JVRb5vussZrwPPkuLaju2SjoeDc5ou9xmUDT0fQN6FNQJZ/0qeBP6DYzQt0Lj4V1fLuM14UVT/rIybPl3NiD5jdPmX2XNhpOe49u9o0PXtii1Xn3jbywtsTRGIcXSb6AXSA3W6yRBXja9ds9VLMrnvsHlRxjSItCgOVXoyo4ONP9W3niDwqMzWIQV3FKfCYpRAMuXTXhPWjfwceCznc9AaOLH1OgYN2U6cW+vPIPJ25UFzvxBATxNcTEutQnDXKP9FQhUpuuRoVll2bDxmK2SfOzmTfoZ7C01Q37FXQBtgDl2+39IVulsncLOz0KQwz3PcYxBelR5ki93toCW/SEhvi9Pkfu4EVt+1o8xQlIgQSP8TKhqrHktcgoHXtBG3/4CQ4T9Px7reX9v4VFWiq2nFuInmMgS+9MY5NuD14pyDr39iH5R8dhV0kzsSF/eFevEjNLc19vDgCtcCJ0WLRuRm/57XPzV6vnYAGaiPxjq6gSGG1lD7o+OGJaieTo6PJhKXKnJX9eCDvKWarC52OLP3tNLq2ayklcLXqMGDPDJrNk9Hp4K8Ui2cwWR0iqVoxA5drKnUcPS9yq2ncFvqiiDW3T0+wKBgHYvt/V/sI9/nCUZsKKMJox2I5XzXAnnmdzmPrYox751MxEuV9x9RW4F4E5abLDqFxtPwtQpRTbE2TFULGThMUaLaO+1W/LXn5sdWyF/RRjeDrvWVJ8rorpA66td8qxIpx3oe7NirO6nbjkiSHXDQZxPS27mD7+ONTjRACHHO0sH6xNlJDQukP44Lol9TehtgUxUbIc6fQhf4wz8tWJpJuDRjSbhQ8pihGNG0ZDlMmdgom2RGSOw7n/7yco7kTQimYHOqG57DWm8tlOEWkS1+K/uQt0MydS/X6iplzQjdELCMB/aj4VdPgs1NQBQyOiS238Z/zuwL538uEaDqcjoqr3Nv8Hi6amu+aQ1dUrpo2d9K8aGimohjoEjdeSskfzeSCbjhZqbwonSM3p73WtMjonYh8VHLctRCKFyajlIFNakNYcKG2gseJN7ed8+GcHBlhzvEjy2Ki17NfX5oMkntMKaK/KeYUftNyNbehT2owOnbECK5hZFcDSNoMmdaFAW8x8p/O16mNuJTEP78Sa/fXCPePgrnJUOVW0gQtqYVYtRkFstDwe3ZQhDKlTU8kFueI5bLAYkAXFBPuKv5Rzz+K7BNzcA7ukn31Q6DfzuHX7xMr6kSk/84V8kW3PhHQGsACBcEu1UujkMulW07pPGnDtsWqhSkjigFj7MjiPakokX4UPWji0so/aNU5Odlz58wbb7N6E6gRRzU5nzPK+XY7OjGSiNauM9QH/M/n1w/9LZ29w+TutPHl2LvR39X7n/r3weFNtO/KczuEJpE+U8YK1eBnOXRf5WmhP38gM97z/c89+jraD9RLJ8IMPXkD4hDycM5VKutc1J28DgR7wjy+h0REZA5uAhb1Z16XHB+O2jjg39MjTYsJLqndK/Y73OL4/bybhNmLEVLJQS6Rz7S44uLMUR4JxbaeFLcCmYGh9/nX4I3L5LLPXrTwginurJD1s8eDXa7APmmuksmK308arTmRl44i5901x0qd/P8YwNykfPkPoeQCxotmyLsF3HbJnU6dXGOmEI4JfkmvLQ9t1CW8GEGV3ffQ20SljkC6vkltcm2Ui7lUONX6WwCyYiIyhVVxvPCoiZVAqoOpU6AQt1lfwtj21TvVW1v0uDq+1zNQKpJS31r7KtkNlLGKhrsQKG5EA9I9C1kyLUmeTwjEZ3kt1Ikh7Cm+R/vd28LYdyZR9Xw5N1SaNwhbrwqrhwq2hnAw/WQEkzH1P9K4oY6wPt+sYtDGYaeu1Td/6Aor9cWuPU+t9f3PbNj7PU36zqPvfyH0Hdz6IOtHIff/Yrbup7P1PYWtj7EdVnCj54n5EMYS8WHsQt57J5EQd1W8+6f5/imI0K9RKonviTB7UxKU9vcaJCLjIVIu+f+zSVkcIfLkmfssDejv+Hmn1hJF3kfnDCYiDJ6/ePkZ4Y1H9c/MVy5RHmw4G0iTMhJP8XqZL5G6b7P8PyUg/QJMrCZqNQlLLnSfXyW44+h1d7SZqrjjfIrfQy9igYp42DgRITsRmljK/ldEHnLYVaBeGXGT0VGY8uR8K5FZk6ARnkwKoOW0qfdp2BsjpgDfzSNy91IUJEqR7ypeGowg7somFMIaB77GAbVvZWspTYKZZby0Fcrv90E9Ib1/sq7+8rXdmejrysK74HYUtCL00edihPJ3zKp9gbBcCfvctJFEfc/2OzrOnzL0ABeALq6yBzr7eNynk8Z73dHLeLBg58q75O06HVn+Nye0rnxVo8AXoT3hap75Sv+Fb7YRl8wj0q+HChcAvV/r1c41ikC7xuBHfMH8UfSRmVKrBf4DWjVD8bZlTUdFsMjeLUl6LRSxRppGtM5DcFIpkhmrqpY9ynclVYh9X0loKaeMx92KiIzgpkO+mf6qj2B6PdpGYUGH28r5JTEvVCHoHPa2Q7XWCnvzmhHniToRa56mvMmMX6wXovIMUWfNYQ0lKaJnfEavVFRtyqcUMXwV8bW8RngBEwV9CzdkNX194AOn028jCmteXlCIkW5xFo5BY4nug+UGCkxGnpiEdkfvncObbjBsbUVDESYwXhcYX6HI78pzW+bNkbRFv/+MX0Ea1bF8u2aab3Zv3IAeEv+dxM61mtvCgNKGRHA2psRaUh1Ev2KvDaT/SVe99+6rHVoR2g+0xdOQs1LeZMZQGYFcoz0T/Xbay2HLGsxoiuIM9GrOcqO0+DEPz8CsizGHxr/8vg8JQ3RmeqhKMLJNa2KSmK3OpdmjGAoJ/2MUY4+I8rP4DEXalGmsE8GDRz4RSG8XR3q90jhxSDDIibQT0jbe2ZY1g2anQzdfLI3xKBaypFmwoc9amSmdNS3Wrzt9eNouYl/YRWo686SRNw+qtFEYOtMQnC4aLSdTvGftiq65ct6CniXndfXgCYHtSzWY3shMzS4IUnOOJeesGGEitBkt0Em1znungabiWOvFNxjw1ABLQ22XX52fjck5d82vEy3QneZlkI+sWommdDpnN13qm3HV3QMh70DvKWLdzIoVjZBPHWwPpHhFGjtSTddRE76V53VyvdPeNrXU3glzFtILtcWFBsdBnWtows7Ua281ZxUXdhNa/WBRFqoVJ+yevjNzx4ZZbMr43uzVg1FSaCLzbM0cWKTLv8P+7QWyVzbb04Phe82IYJ21w0SumQyPneyARB4AaCeuxX8IGbvvU4kOPYJ9GYMDDjjedRHGmEA0uYeMegxsQHE/slzQoL2nLDC3CgtZdKsHRGEP4jEnL82PDDyTO0g/J2LTxTn0WPZ2sA5KUyC/tZUh4gBP0bcjwP0nPRanOPytRoMgP7AFuP+hik5dfADB9hAAiAyrEhKxrAkHYhdakdAoPgA/r+GdqtmapENigoYS6jRdo8j4UiQPvx+JWYvfm96rtjmIeob0djTPszZOMHzky7ssVt60lLdy2Wv2hQ2EThG0fwuf/Jszh9rxswaTfBF+sGf2Yr2vg52Vr2+fITWQKM38NuFsYIvYDURVnboh9GwX0IGU9VP1qA00PjZrengGyvEJgIxzmVsw4Pjp1A/nSCyZAhbK9Qc2tqHp7zAPmbCAxSkNoGuPftkkTQ6ZyUuXNE2aM9V+O3nxJCqWqC1W0ThtrENKlh+l7eFI+RwuIf1KjSnXZIcy/8X0jBGXeOk59phdUDJdKpkdVfy9TcCMc3sHYZ8CYJDjFRxySzju+gQwvu+dc0acL9dCZEm4u1hfOp7rEVzxQOGLXsK33Um8y07SeWXUn9wDRh077eOC8TV5qlc0yGHwl2rFAJ3ahRojDTQXZWeN//K1r8J1i/iRNJ7J6nXasjOoiYj4rIaKO1axWr5KoeE8CE97kvG3PLZQ0Syny8exFsRc6n0J7dzcnGc9psgh7733zXA53+y2m/5cUJjGqL7LBTJPh8urA08N50PssfgjvGfkHOa95oQJj4/RnKPZoPaPLcL/BnWDd9BRzW/E9MdJn4UXchwDazwaaPIvSd5l/Y2dTL8jrRnROcgTXgiPxyw9Uh807+Px/aGdz3XP1QQG8qbd2dLztWNA19mEQ3HzxcRo+Cc7VKh56hzZJna5/vtLsqyYZsNI1zxb15LsB0YvIW1UotycRpofdQJcl2/7kdBPRY1fIz6py82HUOpH0R1K6yWMGmcx2UoqOO0sYR2300xmAOBNKlPpykJf5AJ3Vuls7E9uKRaGpiJutugJSS01mS0lMCAJMSir1F37bDP1y9ueMkz6Ymu5CVwQFmqDAq2bYlqUPnL50WgikTIZmZjfGlTm+ztK/OKyqfpupMuG/WKhNsbQN/Q1I4EMw4leSPH4+M8FKaSJbj4YWgiSikSwEEYogeoSCIj0rHSsq+D11Wyv2XEx1dmkYmW15iS69pi8rI35L/tedlpp08U8qH0p0QkDpXGgWbcnu27RCBti5xu3DHtzYFPSrkFP4RllAbi19s6tuxkDzCSkV2m8LItGkAg09p4Eh61ZvnmnOl9EJjJad83/IBuMpJn7/Ngv1OU9/+bDfdKuQfuKIYtEzyf0XfG3HVcNfGgaXbYe7Rc77gcCmoTEaRZ5LdpFSovHRTxjSNDBpPhUeQkaon7H/u6p/+zfVm4Xuz3t7VlvV7g94e3c22K0i4tyH+K4NnOzd2re11mPH6IKeVXNi+sVmKfjDlMRngD66AhADwoQpfkuljConB0jGwPcdbEJQJpcn61/3muZExMF0NuMPu5okdkFjQppfymyxapfqNGFlnl28uy2PmxQnOnj+4N6drWBeJiNon+rxhlE9vbJx23xDJhPRFCAGJdRXlKDI2qAKHqP/v2eeP6eLsy1Z0c9Dll1Z7AHQ1Qwx8ZCNXZ+hEyWRFCAM3NCO4LZqpF2tze3u450fk3naZZAWHvRo8jSFieSs6cqsZMHVcfXYFEDbqYJFTOo0mKpaOq0cD+ak95Ug3qfj9AG4aD/b1yInH+UqmFFRm3KEda5Ss34CbfTkqx7v8acLTlt0jv5eDoCgNxO+4CUPgoDnPSFRXTTc9YdFR+jHrWqXlf9OjonKmgNk/grVz2X9Rqz2wJXBuOxptD47+5MmlI5oN2kT3+Xw9ZIbvkd5GpvsEok3Kh2LNw7191pmre5vvT+7ObtXC5dOfgF0qPUNABQfrx6pkAWOPIzbFsfvtFfwya3b5gxCVxLenNM44MWeRFV86/fvwSDJ/7A4zaxvbGewJHZ3KjNL9CCHBn/qCD4Z8qUE4nK66OUA2UfrGh0AQRN7O+U6tNsazjH8SofUS7YhwnDEv0IXCasmU3qn9Odmhs5LKCak9bNldAMT1uWl3VfmenPWPCl1+g5UWZZg/w3hG0MLOBAdGsZav2GymiK6eM4ZgzhoN3dS8f0d4eXmodgvS6qvhhDAjJS0IBd8DziXTW3Wskz6n1gqdSFNVMUFcepkfYmmY8/U0FDnR2GqrVwqkACIl8R8fjkDeWwR1YiIr9Q8i4ot+CQ7xExtQaGH+e00YdLSAhRfFVtInwpklo6TfO2ymJ+moux9nCu4Oh+3YdFQFD9io1CP7BszFSru4hpE+EuN1gXH/6Yl60jcAEtNnmxqSoaFpAptK1f+E1DXbS4MXV4ET/bzgH1nzteBYI+nVwZ+zoULO+ImDTorvE/tpX2loOpyDL9sR3F4KfTCHZc80H4LpgeTh/6Gcc/dkpaKfK1Z7lXBamIZJPqu/YeEQ4+DXdA2pdv8Ri4QHLs47VFOIyNjwK75mviV5jIWa2+YlXUKJt4mw2yTdNWLpfViqFgpmjsxTg9yRRNL3pJsdEslpg4QoSLog/nc+5b+iyHhRYyBxOx1GIouRQBGxp3QCzGNgPDrMXfGN9JYKjPn2lCvylel76GiXUOYQv0T35fnXe5ghW6Orj37WZVvj/kM9aX0s5fnn7k0ESuOQTFGBiUB0y8JV8fs0wbUa9y6Ax3DMqVFO6pTzHMYv9hye/8wRlMacPE4kKHcQEDQWA/51IJWqd+Ct9n9IcWpZTqruSdTqclQypNuao3+Y3e7IJJ+VyWlxW7btTdTimSV2a4ZVv2TXnxTZ2nluasf55NJk465EVfZBd704XP0U4vW9iNpGQHqP3Y0LfH0d8F5zAJU3B3d7OKnzIH+AsuTYxjH8oqhWng/fFZaHxX7owxyTcCyJ5EfAfzcOfLPU9is9vIuH5I0T6sUtiDhs/6d7lA1/k4Y4H0z5LCBfc4g6E2eDHk9k5RKZIK1SlV3G++38M/Gqwku5ExNiYk3hBLHzRW/SX+Cmo6KV90xV8B29Z4GTTSkKRv8zPw8sOc+z42eet+I6+C3/TkLj6NyAT1yeDp1yYtBHMXmdXjE/VfSMx68ZioRa2Gi59XLRiLTn5DVh3Bfb13Wk1w4+h2S0ahU+P0exvUEP/uNweAqKPlhtICDsgqszJ33b6r4HwMI1q95jpmfsUj3ntf/Hj1Gdf+UJC2iNp337+1yX7jMgOIp73vdFGNrXljjUi8H9H9HwPuHxg7CaW/XChLKy47l9wBBYJ+HV9nPQoY5MQ/nkJosKbekczt6r7Ipw+uBsXFNTsOvT+78DXiP+9vPGNASDOlHKppiikczofn/MN4pZMD9MQ7UtwbbJDkXy6ubW6Ir+JOpytW/gt07iSsgMpqtF//iyYTeuQCpgIL2HyQBBfKixbfXMgEoZ3xsqAJQvLimNeyA2NaqRV2wDNk1/KGsIE7UUFm/1SU8HV4DmWzlORZ6oOuUIdMSFDYoBr64Ac/fB1UeD6kwmdYf6YGujHZERj2xqTecUfu+JZy+1uFFqmG/UyvRSx8LOxj74nEw59Ktj/rAEsCHbxn2Rujb2fYnLvXHrNwkfYqUZbnMBwf1Ai1w+6kfydN73JknbGtOSlLx49KIcWMC5iIuILyAGKEVb+z/7KhM92aLZ0IubUiKH/fDw0Lf1jkXbvYsLfQSm9lBpCPRcuoNd8IsTIaSLr3eQttWT+005vOcIHM4pqxKBE7lYvEKevHLs8u386UvFBMqxnik0AfUZeam0wu3AAieG9HNInbJDsT0tcCxf6kqMpocJTM53nPWd52swexcxvbpQ4oJ8ydxZyU4bnWYZjD6o3dPeeam/JpSjZEdya7zo2fZNAMy8lMyOGe/lL+/1wxuL1Btb8tWF2Fo+c1zNcOmRwAG0ej7urQV7eNsbe5pb56/irG+8641gLdJ+QlyA6c5j8SNLvamMpt63HRzhyVpn+on/Xj2fwWmLeLD2jka6hnEspUCZ5+w0L9QvaLeDavfMknJlFl5VMb8ScgNs4e7SsasbTPlppTGlAc08dPoFoXZcodI4tPo9q/n3ksyB7ZbaglCvro/LwFURhRajfJ3/7zCJECoYeq09xmQypiHfQjAtfjUazmdM9fBLbD3jK5vIwcv9xooMGHAo+n1MwPvfMnkcR/XtXeN87VfqElnL+Gjjv6EL8ZqYE7AzlHI5v4gEIqkUPliYeTQq6IdPp9Aa0wckdx7HaURLIo4bE+D8ADd47oxSpCnzm/jJaVd+mwf9pZ7u/yvNJbDUxtM4+DQ4PhCh0UsnOXu7TAZwADTdWdkABGAZ8rVOh6x3EAhZQ5TIHZWz800TKcgL1MHRBN2jccEfPucxADK5o8Q3ZpsOkUtKBWJeYNk1yaJsE8zegwWReUc15xZuG9Yds3CCpSi8SkyZv/uPDMf/vvU2Gy7vMUGdsLrJJGl/O/64sWH4nV1nXzTcuLgHpDLk3Ay0IYNZ83KbBVOVTqp5a/1KFLf69gxcDzE90PLkocHLGIgSq7QHy72UsvJhy8gwJZJbZ4QkkpiT/V/nRuqzAZx5UvS0XZBtnKfina/t1sVFQDEdjEdMUgdhCh5+3lyyNz1JkxVyjms9bDQ5D5+b7PaKBr+XCgdXj5+c16VKFIR8J9vDY7YX1LvpIwauy/rPOUURU/oGjTv+0QYcNRSZiMs6JdX3YybmGuPma+AxVULW9PFLFoKx7U1O7k760osNofAeL1UmxVmLmDhuA9OCXZWfmDerTGKZrDQfF4wiDtbMJXVaEww9eJGhojzp5nXDAFOM7cX9TvAiK8N3PCG/b6rkii8RAH1NcGkhuzc5wtex+pWl2QfSiT4mVeRpvjOVVMGM5LACkXn5K3TxhqOpbUHAbAXW4KN+zOqzxEA7Z+mRivqqVO3sA6orRhYylkpfPdMVrLJum8P/Iq91Uhy3fOG8DO9vSwUJ+1gvovjWFjBEuXff94ImM1Qh1r0I5zKmYwFYxv0InP8+1ZK5j0U0Y4kHd4RAJYDvunhXTBYXpYQAH8Ifv683nz6PqhCbeOcAwdx93+wc4rjsj5to94QLKit7pRxDCj1W24Oq5NLASkjmWpibIFRL8I91Tt0br/lMA1eauPEOr2qg3ZgJN3nao46YgqULiUZyI9qVUfniqQlOxgbCDJYVylJv4KBkJ/9Uzgwaf3T4PnI2HivUd+Bq6Zug3ekJRMvOkAILQC9szzmJEVLJ/X0YxjxWKL5niOslA/vK/mznXDjVP0ozFXnL0ZDIzX2c/p4nNey4gGvlzvvP1ygoC+epazVa3DNcZ/bpxbPxoDrFZzd441EfGhlnepiKJEVQSrCh/QEJQqRGz2M0a62tlpNOzMLvGVCyomngkUrHbQVC2fkU6OzBblacS21CCFwncb1ZdX6ct3FwPapLUWdlHMi7SsogY8zYwYNVFPGFRC8ir5SMQB88sPPNc8MfNHrXQMhNC6dez7jflmPNx40kCgcAuHUx28UxFqGC7O6guVA9rlX8UK1g4VbJ09CTAImVW+XW4r+HL2suVGpUcoh1EbOKfvMKv/K53c4eY15CDfs/4epC4wX5kVgSwNFPCBFgUWdXAZbVVWksnKan38RjLi5+hXOle0zDjrh9w8lMxUF8cSH8iimBXhFu7lLVlgstMaRtILvlsaW6ARhi4sI7PTEHDgxH/5vzbiXK8E27F+c6P06JTER/hjSwX9n1YW/FyRyar4Prya/QBMPmQOSpyj8pjhpKHqnMo+gpxtlng2idOJHvbj+4S59UghryCt+qts6U5WdsldddY2toWqZH5mnZl+v9/ENahgx7vtmCgCgioJcrSSBLpRwvK0NnMJiakVCmqHjRm7kdu6xdDOIzQ3D/4Ex4OCQQsaRycWIWRoHZntSxtaGIkol0epyK7G0cYmOeTsVO0T5ujCuaVBotXO/WNHXN8goq3HMqKlpistY4roig6R6g6IFG/pEfDPft0tCnn3xLDZu1/fIALk842rFCeXCI4p1h9wUyzK37/E8f2EieQCuRQdadaBcmJfh/UOHJUY00HhaIYm0GbA4NiyOVYBBuyNIRfWH0BOOz4kzo5GqvsdYjyjyW3SGAePLc7Ev+1X+eAHmrbWy37He8ymkrLEBiDP+CHRhpkcW/mObwER24OM2LmxzhGZuh/CLXorCkqEDhs6ncsp8PC8QUcEqpdtW8IkQ6NRfbNdhAWG6Ivn8ulBA2oazDkO+uKJJs7KGHbjb2v/Ka1t59nNBDKLwn7CEHzwi//CLjRVEuZu1979w+ry1182cVhRl35sZosQMwM+IR/gNQhV7P+xP5jSMsdCPyuhAXHnxSgnphqsHNWVD2I2NSwI47twaeLRDass5TljOSjpeLxZJOeAhuhDlOy7soZgUUf0qlCJvC5z6SAp26x2eVZ8wr+fCdqMMZymsUEwUsZIqiaDU0WisICTZw2YFYxNdxvqONSLLzdRSePiyBnGulQraqk4t9wefCdPojIVSvY0W3QpdADepbn4fJ6lMNgQ6kAesOvDeNx1ri9n9BHsncUUYDUaGKxW3wjl3vABPcRnTVEvEJfn+76XM+rd4Tatma8ADFoDNrxasgyt2R2oVe3pozGjscLplJqYuAUthUaKetjYGb8+t21omWbV3Qq63PZF47DY2UFqiqlEzJ0tps/knQ+uL1nmJt3evgMO7bqz9fNXAQ/MpEVTL/Z8tNFYw6mUx5gdpIospcqrlLoaoLqh862x0Ec4pE3sfOtrJc9v8puoNVl0dOsFSSAJKY5DQLMHGGa4uuLAkZlcP5A5tnzSUEU24O6MCQ/GLB3CAi3l+Wp0LhuQwe96FHAm3yU7la3fRlHkOVFhMazvRjKVFUFWrUxj0CvMiyYl5zFJ41radDlxBYQvNhjE1ahahm2yFd2FjMagjdRqwFqW/TST493KgIuXiizoal1P//YhUkjcdFojGVe+l9hftMutX03R2lALVGaIKOtA+qlE80PdteakGKeWfdH8RW2ax92ak6NhBpUzn9pfzc31a1ln1P40N/F0f+w8vu98dmDXOquK3/Ww3N6/qs8wkeA2+M+uHzDEOo8zGnx1/qkUxdpDwLgqiUdWO0fu+CFzqoy2K4RRy/aV8rt2cwXoI9J1fOpNpWXNj+cKq34FiFbdcPrNLLTZtrMjnlWrrASpOfoTdd2b7Diy0V4Ynuf87FOnxI6NmsGOdpfjcFkMqqnyXJSHJgyE4qIRbDxg8FFoiFInYyj4T+QSCON2GsZF7cDwoM4fjyZtZ87Bo0s6nqEHDM0hC3mKaqB7So45upBCxGcicsfw19tQznGEIfgROAG9m68haRRCwmf2bmgIuofvfqW3YBo8CyMTGJ9P00b1cgrIwIs8Ju25cJyofn9PU3Oq8rqDn2wAIbuCmOeuuhS3lKqOigOu7g4pRxydHkFsRsi605TlGCougfjsMcQZAW17x+oX+K5RypeOzb3HP0gF2KqSof8dUtLcN1UqZu6o/kI0JHvXoVRlgk9uAMAgHLt3Vin3QiEVO3MIr7K5ACpNsF1333U+v+2WHYbGh9FWi4yAhPbzQehK3DiRXBN7B+DKyHJAEMCDgmvjpvicP2C7q8qppZKJtSLouuNxi7vR1FPTnVbESqvjP27InHLp26fZPYYBcPmqIk3UtfcK+emeIVId8sLRwxiBY1VBi9tuAx8GYOFzMnXXSEfIjkBh/ZSxkLJ4As0PBeo85zfoA9rJc1iMuMMKQoFbb9dFsyWl7tXvi+OWECy31A5J6udxx8/35CIT3zIX65JlUXYsJTpb/LFC2IfqD5uEHtCbm9DtiLWaw10jMVJmES12FfnBazYy4vZ7iGpmkkzq756zYroXv3FfKiUzX7nHvq45XUGmSqf6xG10x9XzX4B4b2BbbV/bgvpFdrjKDDj5hONpwOo6sAVA9MAnpah+8VHw//7g1c7HQtFPcrgHMIg/KVpi+P73G7+M/PmF8OPZcz9gcGjbpUgXm0+Tu+8GF7rT4tOmIhquD7t2JQGiAL236ov6nO+1idhh+pMr6RWTpy8tQvpDpdJrboPV88y0VNSq54/X8x8y7ApVpRp1eYBMHhmgE/DBTBGszVeRVpVOh0yTyGBu5oFmvXiqKUoN6fcd+vhl7iUcP/Jrf1hcNt8hlNLE+pzU6GT+WLM3LuzMAKhQciMVK4pxXVrtjtfyL25YsdRnGOZQunCvFEIfTYki6iOFXt25/wkgqNGhSvigTqQGlIjJ53v74AFg+r/P7PInH0VUAivIE8P793vlXoZqxGCJQiIJ/vJSUR+3nImhpiXuVUPmFPeIfQYCoAU/dGLlLxdWjIbFFwbHiwTOwG4jTJ1ubIKaARxTfdUSmsRCEDsrl3QTFWDR/4GzojQJ0SKh+vhvMsJkEsl0ej1F1YdePUzAlSchfk4uFyP4ufLFCHhGxafQiho72T3UjsA4bOZJ9FGgEnwXoz9kApMXORvVXB4WrPoRSDJqnB7B68aiDgMrU87y6eJouah1CtmoaYbPqqYu0gbz5vxdANDCZhBZu0SjXH80wuyv1B9cQyofW9MZTlbEpSlgxDJiEvIT/TDIM7t0iQSgvEahzaY0iF9z4e75WMnfkvz9L/n47FIgnKC+Bt4Yvjkb+yn8MCP23Tm4w5EmZw4u7xuje+NIIgw/gcN4qiGMLrFWIYyGNL8XImxexDK7PCEWRycYYvpEC7oRsxcRwnXf7Ho2YfuWPZxcFC0HCeE4kYQ3vFlwAdpMc0uT7jMnUOpnEGQSnzP0XQYldutz665/2M4VRTy34fDy5A+crNGt3Fx5YGh758JjwBevA9j4xQ/XI2fsG7eM1p5isi9T4oQNH0EhJ1N6+MjBvR3RGB3u39ZQxOXEg33iADYJ1ZV3rJqYJDAH2jOj1R0geMZaUpj9+TgW/dA5O7uAAFf6n4IyjJKc0HbT6hFWkJgoRfmAvOuZpDczk8m8aXRaSWLAHYuFAwP/f1/52J97wMFk+aYlxHGupdJ+YsOBv/CBoulqNE25glr8B6zWoWKuypKqM8fIgsjOG5Jg6CeOcdHQANfsYk/s09ejQQCv+GwCVmD4TBldpczFl+3vnc9QKEZQ8qyD6RdWSpL8NGqUnT/r45ekKEltS7HphPZBlBR2wM3oGF8aLbdFnNdSEMFt4xRHFCs/OEjJcMvi4xPwhRqtl6nUvPuJA5s0Rud7vrbMCAbtjJkTmSgRgHuF2RbLfhAHIET7b8sE+aYlkvoqzg3cRvku3UuBabd9IEXAG4MqywJ4/YFXNL32XScJcJuLrSSH1MpqTE26MrD4WpSDmtK8+zBwSMQoK62Gm3yNhSRmu6IuGxPhFDhUrcR6BJD4eXf+GjLW40DpfTkQyEdmRxxAluqildLQwK3XIU5M5lROEFQVUkl403UNZuTFr2LiftYPca/p8IXIUnvQugpwM0MeDzGcNXj4kENkN+Uq0xaL3oLjvNkoq/VmhhCUm50peHbwvRjGIzkNhtUv8vMHMpUGmV4CCxnWm0Bf8DDF89WXcDMe/jx3aYPowT4Df7UMEhE8X4ZbvzbwVWVurO4/yynTDYfJDjAJxYDZq/XhbU2tD0FfQO/nDMBZDzcEIyIsxL2wqVJBJxS6+VtF2wDguLHez0akVOWfelSw7fJjpVSLacQlx/dbPx1Q73mB5IezNBOgOtVSS25ApxpivbHuVrsev4SYftc6UUI2da5NpnNhjxSYZh17mlnHyf9s/N6MbKeH4zUhC+idyWI4hly6geA4r7GAtEw1cK+MFDDCNSViT6PbQYT7kYzOQhIgy9IyWL2pm9nHBR1gJQwm8A0/k9S4pkw8In+4dEiAGib6oH96cu3Yf1Zvtx8jGhPfAfSGeqiJ7An+ebh66ZqgRYs94eT/nFPQDMZC5Kl5clanmLA1P8+1sTbW5tpY288ABNMpMwNqvND1h9N37qVh9TuuvWJQ4ioU5RD9zWGeVhpVFsssS07CsaG7JK4hYXUU6vaAo9PSON64H4S4zam3RolvMVRaPc6nt/MpilZ4Cnn6vtxdXOHtjZwwN3b/D9CzngX+rGd+POsbiSZ/d3ssRvsDDUOjv1HO9UDS9WhmYwsbI2LKQPVEjEOrkaRlo9YwiVm0axMWyxlstAr5eGnzXE1EeLVDVvGLJeAvgaxxsxS4Q0wCN6/Jc/30cVdDxPFwFQNpssgBN5ZHCsRKTOnCsofT5e+w5eWR4Z8kX1khLg9xnH51VC6sx3U7/ixoY2EfcmIn1KgpDcWKrRZKkx1Hbzq62QYqZWFLcPj8EOjCqY2sS8KCZRnE/DW7wzm8BIeY6ZdPFons7i5RfGrs8xjAc1JiGRrYkYmtrZsSM5sRMA11ArBXEAtFrkZgGupcpl/I6sNud5VrWTpTDbCdQM/70tHm2lsUlRsYKlTzwTgs00xitXW3TmVoM+Wgvjfn+Sc7EW15ewM4+R4lmq953Kw3uAT3RhTVjzUCL04twnsJLTKUfO5Lj2eQbtHuwlpdDwdbKypRj/gbRR+8w8m6zz3DynIJZzZp2yYjeDE5azLfm+SHcN7NlsXsgJfZd9aPP7DyGLN6sNadSxPQaIoTXLRb739mLMDiptu7EHJHXdSLDSkdMF5HBSuDGiyOJKGOFnb4zQ4LiCzJFKPRRV4Zg+PTxX1gGdT3MbyR+qZK94xRdpCfhx6T2p/YXVhpoAXlJvDrFG4Haztz9NnIu7iXdjT3xj4i1KbOdAvHY4SW2e8S9dgAtjJbIcUPu+EccIJXXpJGLGYTU0M2GWE3Xpz2l/G0wYa+6i3l7QatNMVlqg0QzkzQn1C5Z2ia3FpSGRP20XwknFjIrDS/VZaAu3sbEH8QJ+T9OA88fb9K2wvoUmSgDqbtAIdf4Rt2HEgvWhxMJnkBHZj/EADaoc0kqGmsxYyfw+jrjMIwzNJw07CT69lI5pFX5q3RgUPoXJYDbV4+/YL0wYCUHQ2kG39723RXQyNue1BXhmFpVp97nDG02x3GZ70K52yKnKE/rIk4tJRPY6hW2oIjMsZEuqU7SDJiNpynvJHCqk7Witetgy7OIwhmyg6Q8frH7iS22aiPwM6nIQrpcXg8cEJ49/rFNiaGuWEBVoxZ+DoviXc2MK27ABZKSEKnlRPtGRgzSLZ8yo03JAeMkXgpZIWjuY0ygpEcIB/gC6BhcmUqZXrMJbJ0dxX6IldkY/UgD6O8cSVu1AKRH91wUNYQFDXgfEwOPN2YTL2nL+sxWra4fWB5CgmMO5aG8R/SMeEbYIHdED8mYuXWVGT64BcromDiskbplJEy0U5BbWiAl6rpDQMbzlJ9R6Q69VpyluKdOV/JYSp8meLY2HjNigpfH/rGwu8EiRpjCv8Fd/iWpNWakXn21pFLMQWbWg22TE0rl7AyU/Lc9inQuAWWFqiK7hymKfkAlAsMaICUYJAaHjJ85XD5TP+O6ze6vr0WsS187hoJFgxGAPvuNIV6t6tGJ7145sZFRTz3Ue5kvK7XDIo5nxt4MWF+Pq7NtRdL2r9gIo94PZDfv7Q97oKML5ktz8WAT9KSU5f37cPwzrcTGhH+f8D13/JP1wq24u36GF7JgukRjIGdyWc+H2OO2ogHKYmApCUCSfTBvVR5LAK7iTutYu66LTfyT12bv+yKci0UgRgcf3H3ElUkTgFUjnOB2f5PJ4uW47BqPyDBzTIabbyVU0mkq250dqUCBmuocuS9etaA/S0UoU8KY4IIMzqD1gPpX1imMpy4AAA84lbpSLBopEL4KUwD5wgmGtZsQVrFWwtdceNs7PlmmbbKIUKPnuXaRac9bOfcW5eYd/Oa99BD7Z24MgXawtZSPx0Zjiwa298CJ3r9mzkiVok7qI10kGg9MfWHjuWYS5nYIHgJiaq+E1WLHWG5Kq2GkVOFWZRUQ3eiSNxaqep3iw2X0zxk/Gv5rbeRj/WMpHuRl/LWjnpaNQb2vLJG63nvE1WxiyR9MR4gdyBVs0Cc8v4kDMa84ezDL/f1ZoxOjGzMv9HwJiNP7zDiWog8+yZa3Uw846pXd4Ujz/YYeUifb4hPBjUBR6cvH22/Hy+z3fEHhNkRGBjgerYQ5WSjz85Oi+7oz7uCHIXrkPH1FBlt1ne6NEEWZrjYGn9QzhMAqTq5FdZwKOjYxPC95DjkH4x0iocARz5slLBvH62ZglwRhpbjZPeopGnn8PY5yEzdOXyT9OQ2xXdSgyJpCO0SkTGg3UO88fBTVNRCTtZDAYFw1tsQxW4iemEkK6adG8uEY3KGFvLs+P9P38tZvS3n8grKP8ZBcH5ZJ1gbIGFf1V0oh5htv39cDJrOLLO4M9uwPhA0aArmpzSfZ++wA7RXGBui2Bu6GdJJEX89SX8uR4XDI3vKl8KhHhG+j/+xpzdwOlSD9wIKTXqjppyjq4G38+FOu+hHkFiZDsa8ZA/ywCYsNMnAvyUmw5VD3Oy99gfYQsSAV7ebWYsM5PzAdKExZeOCXuOxPs41mKmMla2p+F5xUWYI9feioitr0hKZJg0zKm6MFQQyj4XrdU/42LlN56vQaXqYbSAFBBIsVF5K1iIyt6y0ATh39aheTjJVlXR0aoO23y8rUVXesVeecnU1qvI0fN/uQnlqfi7Z1eXVq0Y5S1W1JPPU2aW+0jrq+rq2Lg8nXd7VfPtMP5Wylj9vO7ImHe8T1RxKQV+JNVfG7r0z0Hwf0ffq9R7upw96eMWrOcmPUxrDwxcGnWUyJsc6hr15Z0qn8Jg1MHL2irP4Pj1zk8NWUM3kJ+ZctELlT3KFV+ljJ84TarN092nqU9NTCpTc09nmiHGSTYibCRNNyWe+vpuMM+0t3QUXUHwhvqYQak4EVuWI9j0kztIyO6hKc37Um7fyaWihdh/dpW8reGCc2cB7V2bc3wiH5i1QfX2AVcZkzWHV0s+wNwvZu09gBHvTvmvMXrBHwVvjpi6gY14sGvfyrOEXXWfUOOTm/akcM/aZf+/+cv+qpggi/sQG3BiKxjSORNvV8zsTHzE2nxfh1AQG6xGUTYi0jZws4ZwcuV/DmTPvVAuv19NTBp70M6XP6W/uZKjOXjOmZr5ZuxGOI+QlpDvU//yQUJ9EA498GzkRIvAA4g0sNvbm/pkcAdUJq0qZKrTl3YWmDAjYRQiEDKbOVlYwtDzdTNnXSlZYgC/KtFsr0Nfkbt6GVzBz89Eh681q8QHQrYu/I3M8KsQQ1mbyPAtUu+6rf35Am20uUrNt3367vzIIyMHNbPl20f5VQwrnccL+JVLGeL+S05zXvXZ6LkEsvZno/+jcz+kczYvBro8YRijWwOFIKjgt+F62ImTf4/A6szC9Db2x9MkE3hRDVU/ifk2h72rTUn+pScoqB7+/JLBHDuQJCICD+v8P3OvtkcASHg6g/w3JhoTey3K6VFlOYDK16uMy9x5CpsoEtDCjdpEYVlmGHTx4QLhO80KlrnI/YmZ4H1Jpu+zH/Y8KruyWBxCQMSygzODKrmnnJTg/C9XUFZJbwTPYtAXiytG4D7GUcGuQKoa7OKEbdlcw5g694GX3aoYMgAj8h+SENFIb9FO5X1FPZIV7U2JBztlWKphFiJxnoYIwWCDS6d5rypJTiJ5dLCbWv5oKMSaX2feb80bT2xmfRJUX2KuQNu8++fSeC8uM3sc0CvbZDtWfH5agNlXKaxF7O+x7YUBqJcEiNrHtfBjNDet4uvMTn0XgiwE5SqowDu61Aw9SzrVFeP9I5ntL+1G+TtUmjdPf5oqfNgtO1158LNmdmYqcdrQwVLzaOLOo4lTv7SRgtUTD9+4vj3uoyghMJGdUdar5hi2kGVJ9KTIMmodelFceSNlt71/2V5XqJlcKljUMWILJGFREGDAr/gU597q0/yPfgaU1cSIRGK1BTnWGPCgk4BqS+Q2WLufrxNxNaQyy1OtQuw+rMmBgDu4/B08kMwCgQBCC3P5iLICorms8qUoAy3PzGQVSHWbscD+7bxjqDBwUuDZNgacDTxCRDXdC8nRPMiWFkPo1xsEDbb4wE5Zt2poyYHS5FgEWEQd6TlljRWu8ZZqtat05qvbqbwTxn7pMdVEfsBBM50W953enryWLBnzIcrgSKCCqlnMdkrny+5OGff+5kdtxJRAam7Wc48+K7mwACVXYAbrr5jeMedZ/jeAkdVdlM7CGrYBSHHRN/k+IxMvUXMeEZRmlWfC0FUwWMb7bn4D7aTql0rt5xZVxtktjFQ2eSZLujqNCK2Mx9QfTPnYU2x/7EZsHDSv5F3QgzDhZ2IONKn9FHxduVloRsuwquI/ZIbPqUfkZWsI6zvOBDvNIsjyh9YpHFgK6yDetGVZnHiH7WcHnDFBlG2O+mrv+aBWCY0hVGHfKNvA5rYUAY2InR7yzuqrMXE301ziyHpyoy55YfeWTha1O0dRa4Ia7R2fryhHDPZl8ohUBU7RHxV7yg/92nVrfkdn79NDRAPJIX9svD9mLKmLvOmWNND6CHFlR0uF0OVByaBJKOPg6DbaBywFTBcdtwI7/j9jw77LGK5utAVOLRtMBVRkBryixkNdQVQVSFuzQUHxZ4/aqmrMy8xApgBEiKsF4a8eGu3DqXzb5JzMhK1VRBSLGkhYcKTjmaQXZKI+y+XT4QiHz9TPLMKEfJMlvQH+9jHXpi6rbCpxEMvwbOLa5HR4pvnogR6rjhzKZicjs0G8Skzx1cZWVoxBYsElXB+dwpczLxs02ChU1ET4uoXETwz/6G0e4y4ZFRLAacDSLbDhnVyhna4ve6pe9u1Zn51UG1xn97yrAddNchCbiDTji+LNPePdCdvyvhTWQcoEh2sY819I5ar5PqPEKGhf+msRmGubWFiW6hB9GSEX7n9VE7JvzDRMHIe7pR3/zDddFBteiy6u1/HAHzKC1PlMN1cUhdlz/ftp0Vs3pGhYRg8e80VbcDaO1OopVrkc7SmG4+JFise5PIv7bQDm7CI6K/8D3jVTFxgHUrQHmahOGPbWLiwYbxLgKxCEENJrMvF17+04Rusme17+DuNcmitQfPJxtcpYnX6Db37jler+HV5VJn93Uvtuu1rK4fi+N5lm23R58O23/U4Xk4FFDqgt3H357K7fPLR/p6axi9ZntalbFif+wgqsn7Kj3IucerPBk4oM5rbKH6P2eVt8eYBKKhh6g7VKoyqzVnpl720Qf2i57zDZq8d4zIrCBtSMpTHO32udDh0rN1LifZh4QHuTyrvTq+kBpxK3NVBlvL4D20S/gtbQUIawgS2vLPvFy2nMn2N3vP6BSWvdilZZq4Lb4oguNMg0X4gbdhN/gi7kiGr3nzYzvKANVjxkOQ3h/Yb5WNb5PVMMODisObAMWwUjX1jwqaIlYNzGzKuDgtQB7so49Dyj8cUHHVzHsUPCO9gX02lFa7GaYNBcrBJKXqyhqXcrJhqMhuJYWXUkbfHp69ZcvrUwi960EFPsZZIEhfg4BEmGJ8VFyVXdEhcNOc6fejvt3gEOaUNd7YDPMEqToBsmE9aCQkLF9xkVBPYa4Tv+l1CUXwSmTd5cXBuC0dHB2htzxKayaw/TYAAdj/aF2PBH8cBFNclxiLhbp4H50gFjf8isbrNqC20TNVd6ZczElg/sNtgJhWx/Zt8a4ADe0e5o24JdjHaGsxtIJthz9YP6x58xn2xWOwuL6z0U+y1opHlhJ2FVx9+6OOXJbuVbtPhcan99lAeB6FGvM+GcJ+N4VrbXVdJGaeHmz0pksq5rhoG5OVvIBlCCP4CCT8eEliKlCIT0L9LDLwUtdxYcxOvIg3bJYp7IqBeLtHEkue7dqVcihszg/KW+W06WpyocD/1PqoO5hyLMRxrps30cMeDBc+K+MLXywf9tqAqznID2iMswQu+E7X6MDtB0Pjp1umb5nG1mez7b8gKtL5q+3Lg8/9rls3PkuNeRToFAbA8shMQKGVkiysygcDTHN0h4eq16m2T3BJUWSTYB9pMuSA6fcpFP9eirDj6i5kK3axNrldFHc+FX2ujKaYF+EmX6/JO4We2R2sfRgIZgQLa1xE9nlv1Jl97gZGGm1JYtmUSPvSvh3KX7f/XgYhX77OACbj7vx2vNwnQNwr3E+Py6+L7uQhxYSpMYt/2ZY7XDK805gf+JieFHZQivAWy9mQm5FcM37/fW2PEkOnnV7k8Ql7vW59Zo8R/LzGDcCKNkiqoWWtHXl8BNp1nOfuTpv4HUAeQ8JWQ3ofaZ++c1neBxxExvOuaSeKq0bqxDNa77PFdfnezBShJ6R90GdemMcx4effqnmDUEcHkf3nJDo2W3Oc8zteq1B/i9n+jZfkjF/qNiW3cpKn5pCyxvDHucSQLuXCBqCOBEqCjwC6Tz7LX1+5qM69i/pS8mcUhzcWHTYzJ+qzkie3ebXaVP4MspJ9JG8r4emjpL2w7fh2FR8goE0rbGyqbxsQfWO/SCIutUwB/xwgCzxgv7+pOgiYJKWSq8GYiHgouna8zyMgMmM7KvRdxiFbLXC6ip9oluahKhfmBomz/SBMX0EXRDBN06o8bdUmCYTejsVPupwPEemKRnVIN/OJvHWm2cmhxpCbDfTkOjhYC4wTaytW+xsPvN9ekLBpJTc7aFBVVCgxrpdQPJNmKLlUJTdYHVrLMab2MqojiuMxz2cQrJh7tTGno0jwu4t4tUsk3Ag+QJT4L3Mp1rinbjmwIczh40ha7U5Ma/bOU7MNihlqFrzQXYz2c8UBo0Ch9B/uYAJoSSUxyClRjaEjAg0usRxBuCPWnP7H/aDN0QGtay2Ur1sBohzNQTrqLNaMiDVHGGrpwNOfKCN2R+bBeEuv6z4llqCRNnMsZyt241L42buc2NgZf0KB/VtT+FUpdHNjNQOiYPbKxG7jXj7IsCTsXWrSd1aVADflzT+atE1bvztyLMnYy+gxkmKBybvG+pHGUrKELaS8HlLJHGaUmeok9HCUzIcisdnQLJ7rnhpcAoNU+1HO+ZID7BzcalTRJ9x6xKL68fdREhIcYOPjIkhEhCS6AE0lxwZ2tbeNXL/7Qr28f+ELBEVtHrCuwnxMXIWslQD8uQkwnRLNKaTU/vye+UyrHFyaekFW4ziCsa0O3LerfSAi9Yxdz0Hmpm+qSPyoRznyAGAXUKgKkXGC6tTTL4lU6lxFYWIsoLxc9a5EHBPibADkz0jmgfyR0KY042Jkc9k4GYQ1BdnL3YyHlf71lxMjwRzGjVmDv4lnvPkGl/D9LVWJrzmYcHJYzNIjJtayh1qsCwDRLJxgvIilRsK6TU0p3PVTjhhL0b3u27CQTNZwmCQyCjN+uO9Jz2133toTttVSd6ZWMHWGEeHdR/6yh2PHcrUOpY7wjYfL3bCAqG34pGWXFJi9M8Az/fjf2DvACBIfmOex5cmU6jIToawcsE3Yg8oVHE5uzIsYjNg4pEj+SPG3PhNP/ULGsMpgF4YErapX0dd71Sg+g4OW3yUJ753glD6B38m5TlYubub0wUbsYtSLUvFCldDsaecFFjPahjUeHa7PZ76th94fTpStsvP/GX4dTLCGI4OpxX+DBv+R04oiTUODV5NrxvW5dQXVhvz9SNyE3Gxikb7VD6FRbOeRdqXzVH62mJji1NtF/Fcv01EmK4q/R0Jfd1RZApc45TeI+pGzaIPKwqVW9I7DdiNHg4V1dGNIHZVs4Dzs5hG1FC1jO//q900YbO706xWxUDhHjY+WMG0pUrrT9KaBX2SyfR+RGtP6nol4lc5TUj9LufYevUewERMoVZ19ag2kky4V9TDw3UrtqU7+g/tVEtpmiVPmf1cLXhdpLUDb1Z+QGi6tp8J6OS+nFfzmLZJDl3WNt/+Vl42OOag0lvRofrOHqgFA3plAI/0bMLmQ6n34Um2ckkXoJvMXrjOWgwmoXHnDu/xeJGibVEUBC0fClOTQsLH04dPv7A8VGW4Eq9IR/Axdrku2QZJCyv7lAoNE1ImzxL4pWrGSOxCspvcrHvN/D6ROwQVPn8LVzoM4kxjVvhXEnzS572MC/gWlTwB+HHmY5upkQBvg3bFlY4MUkr05oMckpsbEyip6nBYFeI48hnirWHm6KIX/Z5WFM/ZQCN7C4WxLEo5zAKdRIAOZxwsAa5lfNYGct+h9B6B+GdlKnGZZiJ5RhR6N0vmVLgrDXiEV+p0m9D661VpPUxyGVDdkI+RrY1JUSWV4Zk7lvW4OSOpbZGMoSKUh1yBYBmh6ROtEmD/RejWnX3Pgu2kYMWIto06WthBQZdX1N1YE4RRqjzsaqyZh8VSzAlWXvg08DF6Xa2rGE6HNufXyoExd46vdoFhP6cUE1ZrPc658i1Uc21PUYcLpyfp62zpfXZ6LQfTQR/zLDD0N73jSdkTwYqqsa4yMJ1vq0AhYPQ1CXpeMhxiLFCDHVr40GO4lt/7pK5k2lXWUKD+KTeNReBCluH3u2Nc+b3rsLrQiDYQG7r8G563+8vcsyGblO3cWEBmpsntvJ4MoptiNSHdBparuM3+0Env8OBdaO9d/7vTMmwbISku53rFBH1f42Vel0/gbKyM6+5jicyd7nfow29/b3ampx4cqfjqTA1/YQ2AqarS+8A6ii/opKYdriBIjqea2w96eqWm6DyAFCPVMNQcctsGk4XVsddZlzDFNivzCCkh6HabBpDWjZAIlnb6hUoeufvDDU2bxgcA2jkIWMB4yOgFn+Iig+aWWm81VjVXr9ZCqTbUtRVMy1WSIohm8/7IwYRT4/VO+c9gEq57eVDwYdVlT4uSd26RJ2CZRHMZ1SIN6Y3Ian9rAbnkgqOqBn7b0OT/Cykh8UovoqufOpJJHrvcQtljJcviwVIcbOSdU5Fu9TiOct1Za609ZbIlU2Ixl/0XYtq7a9yOA7PR52Es+5hRgiw7f+Dj8xp150havWDzi+OOpdGe/WaVVYqDszab9KHaHiLrjItdWzuWqkUGJkgifWqV2wVZa5DuXIQg8pFURM1JO32s5wv7JPSdM3+WDHwtxS63WzkDcUGOJ2aLi4W1wqWwy6lmwwIg3niKigVlXhzAijvgUgYDI6CP9vEbjdpRnbRQBjg1a2qO7/G25Jq+7bHI8X2mGZf47Hncy7X92hdbu30ttdRC+6yYMxm+MLrNLpFlI+k2mi9626supFZGECH8mYLiFfxVkDsv1xKeDjA/9aS5mSp7lYif7yy1Qtep9EeJzzH9TlJfFlCtzBmc13XTqcGLIKGJKxx+Jvpw2+I5JrzK8gfhMu5f5++6u9a/yqmvNRm5MIDmucxFelC74N/dC+0CnLvHlQO3rVwe/ei1tOpU3LxGj0eOiWe1R8Fnph//HTDYj5evnBff//iWEGI4vHQSygpdXadSHCx2ht5tkd0ShXUNsoSa2rCeIoWUDnyOr3J6JhKRC6UQj8E13ho3YDLFrgm9p3l0VyJ9POXZrWjm9Ty55eGdXXK7jMPRG+p0Yu0tRRGv8mvUUtu9LVEOuhzP0no06eCPKLNW/xOBsfuMnt2PRbcd5bgAao/MlaKAlPBaXu9CEG5/4hFMG8eK6fqY+fRFqATiNAVvZadKEWV4hW9/pSNVqD3x9PxPuf4hNhnbALIg8xMLj0U7N3N2To6rfosSIimybck+36vIO6oHKybU2YtQTQgrrxon+29PtDNl5ZPbSqPB9lJWlHP2gNQauYJ9rmnNorZ0ZeYUTdOk5n7d9J+oQyRpqf1tGOM2FYGNaVqZunJolXSQBnikgjFm+53Tbw0cHkx9bv5LNP7jGY7JqBc/RseBdvDVBHPSxehcmgp+nNIIY8rbhqgFXIxir5brKV9TTkc+w4/21UALmeFMYtcSM8YUuV2dBslhuVdihUknufWMDEzVoot0L/+E8rZVl+H/bzr3+Uf8rKVd80vl1a18pXZsp5m2l4joJq6xTZ+mwyMiUrnNWltd1MUi3ypxoaMR6yVgKentc0tXVZb8wMezNCsrLJID0Pm7GAvT+8svkJuoEJDjHqKgfn/eBa6OgObXePjYydCIl9jhnSOLatvYBRIi6X+1eY4TVyhvsi4viG50HM71P2pRcU6S/2+6uLi9/eJnvLBhonj55/4HtLzWz0j/d0nvb50xolTY5eJHuauXabZF1ngLHSidzbvcqY2MjEinHDJrE+yG54Rh21T88Ix8Kp7++vEQ5/iRDIxor5Mn9cxS92pHVbVHOPjXkSD7weyZziMOW8ZRKxOaZvtSVgjqr89UNo7m25rofCXx0IY8NKCrcHPoafx4O4UeYzQzW36zKqadDvPHqousPIJUSh4Chd7hmYem7OXPIIha43PgoVD303JQJDsPVl6K3Sd+KnIGCFwSV5LW+v02FZR6WVmPif8/9ks5lms2ifzCWvFx4ANAjXKleT9jC/PJRAaz5YBZqqmYYeYwXnpMfPv3Tr2qhAoHOVLUfo3r4zEWsGUA6SgHm9f+JCiwL0zUp60ffAKxc8RW2BsqnZAi52umts6I0nCZbnl2LBBTHzfAWDk9/YG7uRYPzrAGybYwxRdx3rg6dwx+Gg10BZE+Atzv30tGaCU+00km9rGgbP8Oe0RqCWazGCSvMD+k0xsxG0wbFh0zcwy9pOy+gcAeEF0hR20aYuOON/6KRudFATDCvx7ZDOA2cmgIJXLOD5cDrEEb6xm8W5kpLYMuawmQvXv/ouVQa+QwkEgyxEZ4TSZXLQ4vhn2El8QzeuGnXKe/sKFxdWD5KbjLLYjPdbXWvljggss8Ooe8gvNck7NK8dHSzJj/k/kae70t8LuBytIb4UVN2aSmbDS0G/KP3YdlEwSEsUdyCvR4ROANlIrH5yMPHyRUnVRvYmqgKjYlnSK8NwFUDlYz+HFCianCmrWy2bI6U98hnuGMLsB/8OVmfqOxvTd3ty8Rqu2zD92XA2bIeK8imuXV/iZUaIyBgROo2U7c54cjDHI3yvl7/b3dmK1WBpxx0S42rXo19eMdSBcpVQ7L0dZDWW9WcsWvEBRAAkp86pgZ68jzXrQXb/b2wPLLbnrtFl1GMy+agcsfGXFsuceJFW71pBqyogR3Y/z3ysGPuEQeT7s47dfM44+BoS4ny/F3MT3i/B9PS4fSiC6U8L8iYxJRvLeVXFptfhc8QOzpCX2WviDp3OvoDJAajYe/aJTBp87tVp/Szf+zljgFZXHM3kqvJTxBst1kgdtHlq+NMoYiHt3FvOZtxeuPH0Amj6TWZtABTPW2Q+oSW1VGKPxTvrBjPESxFMAY81z7zk/1OmNPn3wGLesokGFd/cMQE8FTu7Yco+twh6dwiaklp51QEpDCZy+86ubnVqj33eHk28PekwNg41l36elgB9Px7UXG9k85meV1xio2/SlxKmd9Fed0QGqPDkJzefHwzALxoFEqQcqbiHgRkwFxmFiFl/2pYIT+edsj1dLxR3GJ85QJTqv12chgSenBxJwnyKGpOmkk2M6gZFLE2Ijg/jvX7PY5n2BLH/ENh/ss1jpOvOBbf4U/5KnF8kdxn4GMrVfpPwzEsh4oZUDAwCVm9lVUbd6YLdaevMV5IiduP2MQH8a3070T2OaKbmbV7KYSO4kUug+a37zJHrteYy1f70hs1vcND7umN7SLozvNcxq0qoKX40PEsv9x0rxE6nwSPDrQ8QtIOM02aGzIlOy+PHqWJk71VvIYjtXGP2+XzaEH2LQnH2/k+DxqQeeD2EpFhiCLV96gnQ+BudLpEDdc5tC7oMXzYNC/SQv/2r3dpuwDgw3NjYBGK7okE+QdxAlO94ZztqUznxXv+ZgZ+ThrQwuSOZS6FFmk1SFTllxkpAU0qr0kFwpT4tG6kiev4dnIlQHSmbBmO111Q4QgeYNbn6YwCO+p+w5E3+JI3J2kcLGPpy0O0HGJW2gAzrFNXQHZWhhqSBrd4p82lfAyq3lFzmHt0820SN+RyyPlE398fznH6hPRaFeCHPGdFbU53sy7kiiU27YetiSHzgJDEFQWKp8deTx29Yt1yBZ0DYt9aga0kTYu7VU1jtp42T90dM00qX9YGY79QlMvGwoini/R2MOyQkx4mjKVZB3pFC+B7bHsQyd5yUfc9vvPgYztAcTpqUZiRD0n5rLF3w17/B4i0WPaOT5RbB5/AOr8LEupdyeYBto0sTtVhl/kywDkzgc4ihNfz9GcUHX5t3dcyoVRH3iAyFV7+NB/miMSVPhZYyNvuEkXDvp4SzlBVGSKavvbrHmYnFOXNrIX8XzXj+bA+XaXtFE5WUT7dAelCBxdCGdgnG46o1N1A8Q8w7U1H5Sng99SPmmrdsLkO8BdWSOBl8uxXJOIwkykoWpyE4A6KMjvR3tA9pHze29eAwOdrrqXPoXoRFVOqpwrxrjcmoG/e7iXTtH860W2wQVUnCnF3EpYtkcy2TtsLps3PvPu1JEKH+vtqFCcti6iwfgjx0tA4JEqN3Vik3TswqDonnvDrmcDRgyqLX6y0kjzMR4kxdtF6LbOFEgI+e9dUa0CB8mYx2m5+xWGK8a3PQPHNR4oE+oO3PBX1u2PsbQ+llv1ivtAIh4sD9fuKBlPtNQ/DbDuOWLHO938lQLl1rUF1uUVSZ1Wt1EfrxM+LT1hrLMpgIKIR9Y754JR1X6caAYqlTcNYPFCONtluQnKMQQYxGQrtGF26HUYqjM6/VE5O8CmfCzX8bp4gkYOgI8z5/yVMbDUaTcSyBPpyYM+md18X1M07riF9nvu3mcw+lEsFE/tqQiIA9ILr8Wo+Q3ADivWEv7BVd9M9Tn2o/fXg7PWj7fecBXO9mU/NV/As6s1gVdf6R2vNHKJSBzuMVdJ+hKlyW5aEaRLJ1CbIDEIqoST4tTb6zSyBhxQw4LvIlZ5Coy48PIAXrLuiJtJTnzJYE1WxlH3gwKtI7Dgh54UkdjHG6JIOJvOOrvnWs5sDgPtsPjO9R+OEHZkbc/Z+orTaSBPKFSGW85Y1lRR99OrPUwW1uYZHwFUlOZoAMTi94GIGR9H+5gc+Yl5JFphf5zEH+h3LAm9xd71ksWv8o0dXJM3BOaypVpJ+WFGWVD82dyP65feD0lmCc1WSyuGOt9TXVh8fbYpo8GNFxK/JEJ/we/5oUMLOenemlxcC7h0HQAXQXPZtDO8NJVAL91FORulNni6OkztRYGp/nTlL/a0Au9e/lpNN0Z9THvb93gCeltVm/gj8fF8GDHe00ql1VPOtZloe+gI69DKa/+7WGCVFd/3zMsaND0wzbavj4EYRykQbsS3OoQSXkCblnsap6NX8vBMQ+XF/jf2kOP9mjOP05CsRtLutZzcrg9w9Ovt3STrutq3YnUWeYdC9hThpqcsUop/kULACmUmDncS7mn3OIpOzdKF/d3pIttteAjrUDz79jWAVNaDveznN4QqQyl4ol7nBvjhteeg31Agn0MuQOw4cjnzBSLwVmpn9ks1HpI/t7dHVw+ufgUgILCfyeHcuZa/52P8y2F7CWpReouU7JSQS3EjIueykokevLx38hnkhxmmcKBPJ4IvQWggryp6ybIXS/t4PwJR+Mxk/Lum1M3GZHSwa0WT4SGJhJE7nOz9QpIiH7wIwuVvBBkdM131SDekonEq9U2mjLDgTOlTpKePlkM+Ois4j8BaLB8TMzyVojztUrlLQcaXrFhwrRPDMBtEjvcTBamVo7ObKsARD8qPybGXX74OeGE0SnfDJEATnd3Qcel2+TL5elCjsq46ylCQpRPJ+Kd9HMxyNhaU5dRZvNGcuMavCCvWhOOMm25K/as60/GFMElNdkRdHVnQdbAdhBKLqADPWjkTudjJOKizabvWhG/YTw7x5gdslfFRmE2ZMyf/DT01d6641+oUuY8/0nTrAQ19FFlnW2oMmqhqP8yOGTNuoyaJhmQiwZVm1kjhwk8Yxa9zxZ8fmRVVYFQGEA5cB7TeCKKdWUIBZqxD/FFi9Ft7rTGvD8/4GoeLnLgumLZuRK/0AG/cq/s98xyLl+r/oV/AVn9IIEoQqCwY7N0WBWW/WdqsfOAPH/U4p3jtU02oR5uGwZ7kmChNhe9lAoF5YhpWcyc7RRUOOUZQmmB7aN2cGhdsXYjQctcBWDKquL2YeGgvygD1XYzsAd7MkcXWJVrQE82v/GsStuFRq7BzTwIh+6wRms67fyhG+0C20Hbr7jkgYXg+lZfXuO5wc/hpPfW20DsFn+KaTou93DwKjM0Ms0hQnkpfpz9+DHMQcJ+aQm8/vqJWt8R4+BG3mtXHuKcdV7d6fGCxD1goV3JOZHX2Byddfbs/3asaCVdFw2UrzVJRdVLpZqeK8ynJdNSsMzEl3ndi8GeWAaFTleMAUrstwJZalvDjjQJYffFu1ncN/d4m1NEJbvaGF3ytVO4w3aAXImvnOWGzg1S3wC3h8FxfNvOg/4zt8X9IF02WcjQN","base64")).toString()),TJr);function MJr(e,t){return[e?`${e} `:"",`/* eslint-disable */ `,`// @ts-nocheck `,`"use strict"; `,` `,t,` -`,D0l()].join("")}function k0l(e){return JSON.stringify(e,null,2)}function x0l(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ -`)}'`}function G0l(e){return[`const RAW_RUNTIME_STATE = -`,`${x0l(KAs(e))}; +`,Eyl()].join("")}function Syl(e){return JSON.stringify(e,null,2)}function vyl(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ +`)}'`}function Byl(e){return[`const RAW_RUNTIME_STATE = +`,`${vyl(gds(e))}; `,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,` return hydrateRuntimeState(JSON.parse(RAW_RUNTIME_STATE), {basePath: basePath || __dirname}); `,`} -`].join("")}function F0l(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { +`].join("")}function wyl(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,` const fs = require('fs'); `,` const path = require('path'); -`,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(gGt.pnpData)}); +`,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(fGt.pnpData)}); `,` return hydrateRuntimeState(JSON.parse(fs.readFileSync(pnpDataFilepath, 'utf8')), {basePath: basePath || __dirname}); `,`} -`].join("")}function Z0l(e){let t=GJr(e),r=G0l(t);return FJr(e.shebang,r)}function L0l(e){let t=GJr(e),r=F0l(),n=FJr(e.shebang,r);return{dataFile:k0l(t),loaderFile:n}}function jAs(e,{basePath:t}){let r=Rc.toPortablePath(t),n=gh.resolve(r),a=e.ignorePatternData!==null?new RegExp(e.ignorePatternData):null,o=new Map,l=new Map(e.packageRegistryData.map(([b,E])=>[b,new Map(E.map(([N,B])=>{if(b===null!=(N===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let F=B.discardFromLookup??!1,Q={name:b,reference:N},X=o.get(B.packageLocation);X?(X.discardFromLookup=X.discardFromLookup&&F,F||(X.locator=Q)):o.set(B.packageLocation,{locator:Q,discardFromLookup:F});let ae=null;return[N,{packageDependencies:new Map(B.packageDependencies),packagePeers:new Set(B.packagePeers),linkType:B.linkType,discardFromLookup:F,get packageLocation(){return ae||(ae=gh.join(n,B.packageLocation))}}]}))])),A=new Map(e.fallbackExclusionList.map(([b,E])=>[b,new Set(E)])),f=new Map(e.fallbackPool),I=e.dependencyTreeRoots,C=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:I,enableTopLevelFallback:C,fallbackExclusionList:A,pnpZipBackend:e.pnpZipBackend,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:l}}var zAs=Array.isArray,NJr=JSON.stringify,hGt=Object.getOwnPropertyNames,mGt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),kAs=(e,t)=>RegExp.prototype.exec.call(e,t),xAs=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),dGe=(e,...t)=>String.prototype.endsWith.apply(e,t),qAs=(e,...t)=>String.prototype.includes.apply(e,t),$As=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),pGt=(e,...t)=>String.prototype.indexOf.apply(e,t),V0l=(e,...t)=>String.prototype.replace.apply(e,t),n0e=(e,...t)=>String.prototype.slice.apply(e,t),bue=(e,...t)=>String.prototype.startsWith.apply(e,t),P0l=Map,W0l=JSON.parse;function i7e(e,t,r){return class extends r{constructor(...n){super(t(...n)),this.code=e,this.name=`${r.name} [${e}]`}}}var O0l=i7e("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),eds=i7e("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),M0l=i7e("ERR_INVALID_PACKAGE_TARGET",(e,t,r,n=!1,a=void 0)=>{let o=typeof r=="string"&&!n&&r.length&&!bue(r,"./");return t==="."?(s0l.default(n===!1),`Invalid "exports" main target ${NJr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${n?"imports":"exports"}" target ${NJr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),ZJr=i7e("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),H0l=i7e("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function Y0l(e,t){let r=Object.create(null);for(let n=0;nt):e+t}t7e(r,e,n,l,a)}kAs(GAs,n0e(e,2))!==null&&t7e(r,e,n,l,a);let f=new URL(e,n),I=f.pathname,C=new URL(".",n).pathname;if(bue(I,C)||t7e(r,e,n,l,a),t==="")return f;if(kAs(GAs,t)!==null){let b=o?V0l(r,"*",()=>t):r+t;U0l(b,n,l,a)}return o?new URL(xAs(FAs,f.href,()=>t)):new URL(t,f)}function j0l(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function pGe(e,t,r,n,a,o,l,A){if(typeof t=="string")return K0l(t,r,n,e,a,o,l);if(zAs(t)){if(t.length===0)return null;let f;for(let I=0;Io?-1:o>a||r===-1?1:n===-1||e.length>t.length?-1:t.length>e.length?1:0}function z0l(e,t,r){if(typeof e=="string"||zAs(e))return!0;if(typeof e!="object"||e===null)return!1;let n=hGt(e),a=!1,o=0;for(let l=0;l=I.length&&dGe(t,b)&&tds(o,I)===1&&$As(I,"*")===C&&(o=I,l=n0e(t,C,t.length-b.length))}}if(o){let f=r[o],I=pGe(e,f,l,o,n,!0,!1,a);return I==null&&bJr(t,e,n),I}bJr(t,e,n)}function eyl({name:e,base:t,conditions:r,readFileSyncFn:n}){if(e==="#"||bue(e,"#/")||dGe(e,"/")){let l="is not a valid internal imports specifier name";throw new eds(e,l,eB.fileURLToPath(t))}let a,o=X0l(t,n);if(o.exists){a=eB.pathToFileURL(o.pjsonPath);let l=o.imports;if(l)if(mGt(l,e)&&!qAs(e,"*")){let A=pGe(a,l[e],"",e,t,!1,!0,r);if(A!=null)return A}else{let A="",f,I=hGt(l);for(let C=0;C=b.length&&dGe(e,N)&&tds(A,b)===1&&$As(b,"*")===E&&(A=b,f=n0e(e,E,e.length-N.length))}}if(A){let C=l[A],b=pGe(a,C,f,A,t,!0,!0,r);if(b!=null)return b}}}J0l(e,a,t)}var yT=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(yT||{}),tyl=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function YR(e,t,r={},n){n??=tyl.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:n},pnpCode:{...a,value:e},data:{...a,value:r}})}function p6(e){return Rc.normalize(Rc.fromPortablePath(e))}var DJr=Symbol("arg flag"),DH=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function n7e(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:n=!1}={}){if(!e)throw new DH("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},l={};for(let A of Object.keys(e)){if(!A)throw new DH("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(A[0]!=="-")throw new DH(`argument key must start with '-' but found: '${A}'`,"ARG_CONFIG_NONOPT_KEY");if(A.length===1)throw new DH(`argument key must have a name; singular '-' keys are not allowed: ${A}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[A]=="string"){o[A]=e[A];continue}let f=e[A],I=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[C]=f;f=(b,E,N=[])=>(N.push(C(b,E,N[N.length-1])),N),I=C===Boolean||C[DJr]===!0}else if(typeof f=="function")I=f===Boolean||f[DJr]===!0;else throw new DH(`type missing or not a function or valid array type: ${A}`,"ARG_CONFIG_VAD_TYPE");if(A[1]!=="-"&&A.length>2)throw new DH(`short argument keys (with a single hyphen) must have only one character: ${A}`,"ARG_CONFIG_SHORTOPT_TOOLONG");l[A]=[f,I]}for(let A=0,f=t.length;A0){a._=a._.concat(t.slice(A));break}if(I==="--"){a._=a._.concat(t.slice(A+1));break}if(I.length>1&&I[0]==="-"){let C=I[1]==="-"||I.length===2?[I]:I.slice(1).split("").map(b=>`-${b}`);for(let b=0;b1&&t[A+1][0]==="-"&&!(t[A+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(Q===Number||typeof BigInt<"u"&&Q===BigInt))){let ae=N===F?"":` (alias for ${F})`;throw new DH(`option requires argument: ${N}${ae}`,"ARG_MISSING_REQUIRED_LONGARG")}a[F]=Q(t[A+1],F,a[F]),++A}else a[F]=Q(B,F,a[F])}}else a._.push(I)}return a}n7e.flag=e=>(e[DJr]=!0,e);n7e.COUNT=n7e.flag((e,t,r)=>(r||0)+1);n7e.ArgError=DH;var ryl=n7e;function nyl(e){return iyl(),kJr[e]}var kJr;function iyl(){kJr||(kJr={"--conditions":[],...LAs(syl()),...LAs(process.execArgv)})}function LAs(e){return ryl({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function syl(){let e=[],t=oyl(process.env.NODE_OPTIONS||"",e);return e.length,t}function oyl(e,t){let r=[],n=!1,a=!0;for(let o=0;o[b,new Map(E.map(([N,B])=>{if(b===null!=(N===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let F=B.discardFromLookup??!1,Q={name:b,reference:N},X=o.get(B.packageLocation);X?(X.discardFromLookup=X.discardFromLookup&&F,F||(X.locator=Q)):o.set(B.packageLocation,{locator:Q,discardFromLookup:F});let ae=null;return[N,{packageDependencies:new Map(B.packageDependencies),packagePeers:new Set(B.packagePeers),linkType:B.linkType,discardFromLookup:F,get packageLocation(){return ae||(ae=gh.join(n,B.packageLocation))}}]}))])),A=new Map(e.fallbackExclusionList.map(([b,E])=>[b,new Set(E)])),f=new Map(e.fallbackPool),I=e.dependencyTreeRoots,C=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:I,enableTopLevelFallback:C,fallbackExclusionList:A,pnpZipBackend:e.pnpZipBackend,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:l}}var dds=Array.isArray,LJr=JSON.stringify,yGt=Object.getOwnPropertyNames,bGt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),UAs=(e,t)=>RegExp.prototype.exec.call(e,t),KAs=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),fGe=(e,...t)=>String.prototype.endsWith.apply(e,t),pds=(e,...t)=>String.prototype.includes.apply(e,t),fds=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),mGt=(e,...t)=>String.prototype.indexOf.apply(e,t),Nyl=(e,...t)=>String.prototype.replace.apply(e,t),i0e=(e,...t)=>String.prototype.slice.apply(e,t),Eue=(e,...t)=>String.prototype.startsWith.apply(e,t),Dyl=Map,kyl=JSON.parse;function o7e(e,t,r){return class extends r{constructor(...n){super(t(...n)),this.code=e,this.name=`${r.name} [${e}]`}}}var xyl=o7e("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),Ids=o7e("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),Gyl=o7e("ERR_INVALID_PACKAGE_TARGET",(e,t,r,n=!1,a=void 0)=>{let o=typeof r=="string"&&!n&&r.length&&!Eue(r,"./");return t==="."?(z0l.default(n===!1),`Invalid "exports" main target ${LJr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${n?"imports":"exports"}" target ${LJr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),HJr=o7e("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),Fyl=o7e("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function Zyl(e,t){let r=Object.create(null);for(let n=0;nt):e+t}n7e(r,e,n,l,a)}UAs(jAs,i0e(e,2))!==null&&n7e(r,e,n,l,a);let f=new URL(e,n),I=f.pathname,C=new URL(".",n).pathname;if(Eue(I,C)||n7e(r,e,n,l,a),t==="")return f;if(UAs(jAs,t)!==null){let b=o?Nyl(r,"*",()=>t):r+t;Wyl(b,n,l,a)}return o?new URL(KAs(zAs,f.href,()=>t)):new URL(t,f)}function Myl(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function IGe(e,t,r,n,a,o,l,A){if(typeof t=="string")return Oyl(t,r,n,e,a,o,l);if(dds(t)){if(t.length===0)return null;let f;for(let I=0;Io?-1:o>a||r===-1?1:n===-1||e.length>t.length?-1:t.length>e.length?1:0}function Hyl(e,t,r){if(typeof e=="string"||dds(e))return!0;if(typeof e!="object"||e===null)return!1;let n=yGt(e),a=!1,o=0;for(let l=0;l=I.length&&fGe(t,b)&&hds(o,I)===1&&fds(I,"*")===C&&(o=I,l=i0e(t,C,t.length-b.length))}}if(o){let f=r[o],I=IGe(e,f,l,o,n,!0,!1,a);return I==null&&RJr(t,e,n),I}RJr(t,e,n)}function Xyl({name:e,base:t,conditions:r,readFileSyncFn:n}){if(e==="#"||Eue(e,"#/")||fGe(e,"/")){let l="is not a valid internal imports specifier name";throw new Ids(e,l,eB.fileURLToPath(t))}let a,o=Vyl(t,n);if(o.exists){a=eB.pathToFileURL(o.pjsonPath);let l=o.imports;if(l)if(bGt(l,e)&&!pds(e,"*")){let A=IGe(a,l[e],"",e,t,!1,!0,r);if(A!=null)return A}else{let A="",f,I=yGt(l);for(let C=0;C=b.length&&fGe(e,N)&&hds(A,b)===1&&fds(b,"*")===E&&(A=b,f=i0e(e,E,e.length-N.length))}}if(A){let C=l[A],b=IGe(a,C,f,A,t,!0,!0,r);if(b!=null)return b}}}Pyl(e,a,t)}var yT=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(yT||{}),Jyl=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function YR(e,t,r={},n){n??=Jyl.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:n},pnpCode:{...a,value:e},data:{...a,value:r}})}function p6(e){return Rc.normalize(Rc.fromPortablePath(e))}var VJr=Symbol("arg flag"),DH=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function s7e(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:n=!1}={}){if(!e)throw new DH("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},l={};for(let A of Object.keys(e)){if(!A)throw new DH("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(A[0]!=="-")throw new DH(`argument key must start with '-' but found: '${A}'`,"ARG_CONFIG_NONOPT_KEY");if(A.length===1)throw new DH(`argument key must have a name; singular '-' keys are not allowed: ${A}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[A]=="string"){o[A]=e[A];continue}let f=e[A],I=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[C]=f;f=(b,E,N=[])=>(N.push(C(b,E,N[N.length-1])),N),I=C===Boolean||C[VJr]===!0}else if(typeof f=="function")I=f===Boolean||f[VJr]===!0;else throw new DH(`type missing or not a function or valid array type: ${A}`,"ARG_CONFIG_VAD_TYPE");if(A[1]!=="-"&&A.length>2)throw new DH(`short argument keys (with a single hyphen) must have only one character: ${A}`,"ARG_CONFIG_SHORTOPT_TOOLONG");l[A]=[f,I]}for(let A=0,f=t.length;A0){a._=a._.concat(t.slice(A));break}if(I==="--"){a._=a._.concat(t.slice(A+1));break}if(I.length>1&&I[0]==="-"){let C=I[1]==="-"||I.length===2?[I]:I.slice(1).split("").map(b=>`-${b}`);for(let b=0;b1&&t[A+1][0]==="-"&&!(t[A+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(Q===Number||typeof BigInt<"u"&&Q===BigInt))){let ae=N===F?"":` (alias for ${F})`;throw new DH(`option requires argument: ${N}${ae}`,"ARG_MISSING_REQUIRED_LONGARG")}a[F]=Q(t[A+1],F,a[F]),++A}else a[F]=Q(B,F,a[F])}}else a._.push(I)}return a}s7e.flag=e=>(e[VJr]=!0,e);s7e.COUNT=s7e.flag((e,t,r)=>(r||0)+1);s7e.ArgError=DH;var Uyl=s7e;function Kyl(e){return jyl(),PJr[e]}var PJr;function jyl(){PJr||(PJr={"--conditions":[],...$As(zyl()),...$As(process.execArgv)})}function $As(e){return Uyl({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function zyl(){let e=[],t=qyl(process.env.NODE_OPTIONS||"",e);return e.length,t}function qyl(e,t){let r=[],n=!1,a=!0;for(let o=0;oparseInt(e,10)),ayl=EJr>19||EJr===19&&VAs>=2||EJr===18&&VAs>=13;function PAs(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send){let t=e.map(r=>Rc.fromPortablePath(dGt.resolveVirtual(r)));if(ayl)process.send({"watch:require":t});else for(let r of t)process.send({"watch:require":r})}}function rds(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,n=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,A=/^\.{0,2}\//,f={name:null,reference:null},I=[],C=new Set;if(e.enableTopLevelFallback===!0&&I.push(f),t.compatibilityMode!==!1)for(let vt of["react-scripts","gatsby"]){let xt=e.packageRegistry.get(vt);if(xt)for(let Zr of xt.keys()){if(Zr===null)throw new Error("Assertion failed: This reference shouldn't be null");I.push({name:vt,reference:Zr})}}let{ignorePattern:b,packageRegistry:E,packageLocatorsByLocations:N}=e;function B(vt,xt){return{fn:vt,args:xt,error:null,result:null}}function F(vt){let xt=process.stderr?.hasColors?.()??process.stdout.isTTY,Zr=(lr,cr)=>`\x1B[${lr}m${cr}\x1B[0m`,qt=vt.error;console.error(qt?Zr("31;1",`\u2716 ${vt.error?.message.replace(/\n.*/s,"")}`):Zr("33;1","\u203C Resolution")),vt.args.length>0&&console.error();for(let lr of vt.args)console.error(` ${Zr("37;1","In \u2190")} ${RAs.inspect(lr,{colors:xt,compact:!0})}`);vt.result&&(console.error(),console.error(` ${Zr("37;1","Out \u2192")} ${RAs.inspect(vt.result,{colors:xt,compact:!0})}`));let Xt=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Xt.length>0){console.error();for(let lr of Xt)console.error(` ${Zr("38;5;244",lr)}`)}console.error()}function Q(vt,xt){if(t.allowDebug===!1)return xt;if(Number.isFinite(n)){if(n>=2)return(...Zr)=>{let qt=B(vt,Zr);try{return qt.result=xt(...Zr)}catch(Xt){throw qt.error=Xt}finally{F(qt)}};if(n>=1)return(...Zr)=>{try{return xt(...Zr)}catch(qt){let Xt=B(vt,Zr);throw Xt.error=qt,F(Xt),qt}}}return xt}function X(vt){let xt=k(vt);if(!xt)throw YR(yT.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return xt}function ae(vt){if(vt.name===null)return!0;for(let xt of e.dependencyTreeRoots)if(xt.name===vt.name&&xt.reference===vt.reference)return!0;return!1}let ne=new Set(["node","require",...nyl("--conditions")]);function ce(vt,xt=ne,Zr){let qt=Me(gh.join(vt,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(qt===null)throw YR(yT.INTERNAL,`The locator that owns the "${vt}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Xt}=X(qt),lr=gh.join(Xt,gGt.manifest);if(!t.fakeFs.existsSync(lr))return null;let cr=JSON.parse(t.fakeFs.readFileSync(lr,"utf8"));if(cr.exports==null)return null;let Ar=gh.contains(Xt,vt);if(Ar===null)throw YR(yT.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");Ar!=="."&&!A.test(Ar)&&(Ar=`./${Ar}`);try{let qr=$0l({packageJSONUrl:eB.pathToFileURL(Rc.fromPortablePath(lr)),packageSubpath:Ar,exports:cr.exports,base:Zr?eB.pathToFileURL(Rc.fromPortablePath(Zr)):null,conditions:xt});return Rc.toPortablePath(eB.fileURLToPath(qr))}catch(qr){throw YR(yT.EXPORTS_RESOLUTION_FAILED,qr.message,{unqualifiedPath:p6(vt),locator:qt,pkgJson:cr,subpath:p6(Ar),conditions:xt},qr.code)}}function fe(vt,xt,{extensions:Zr}){let qt;try{xt.push(vt),qt=t.fakeFs.statSync(vt)}catch{}if(qt&&!qt.isDirectory())return t.fakeFs.realpathSync(vt);if(qt&&qt.isDirectory()){let Xt;try{Xt=JSON.parse(t.fakeFs.readFileSync(gh.join(vt,gGt.manifest),"utf8"))}catch{}let lr;if(Xt&&Xt.main&&(lr=gh.resolve(vt,Xt.main)),lr&&lr!==vt){let cr=fe(lr,xt,{extensions:Zr});if(cr!==null)return cr}}for(let Xt=0,lr=Zr.length;Xt{let Ar=JSON.stringify(cr.name);if(qt.has(Ar))return;qt.add(Ar);let qr=et(cr);for(let _n of qr)if(X(_n).packagePeers.has(vt))Xt(_n);else{let jt=Zr.get(_n.name);typeof jt>"u"&&Zr.set(_n.name,jt=new Set),jt.add(_n.reference)}};Xt(xt);let lr=[];for(let cr of[...Zr.keys()].sort())for(let Ar of[...Zr.get(cr)].sort())lr.push({name:cr,reference:Ar});return lr}function Me(vt,{resolveIgnored:xt=!1,includeDiscardFromLookup:Zr=!1}={}){if(be(vt)&&!xt)return null;let qt=gh.relative(e.basePath,vt);qt.match(o)||(qt=`./${qt}`),qt.endsWith("/")||(qt=`${qt}/`);do{let Xt=N.get(qt);if(typeof Xt>"u"||Xt.discardFromLookup&&!Zr){qt=qt.substring(0,qt.lastIndexOf("/",qt.length-2)+1);continue}return Xt.locator}while(qt!=="");return null}function je(vt){try{return t.fakeFs.readFileSync(Rc.toPortablePath(vt),"utf8")}catch(xt){if(xt.code==="ENOENT")return;throw xt}}function St(vt,xt,{considerBuiltins:Zr=!0}={}){if(vt.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(vt==="pnpapi")return Rc.toPortablePath(t.pnpapiResolution);if(Zr&&r0e.isBuiltin(vt))return null;let qt=p6(vt),Xt=xt&&p6(xt);if(xt&&be(xt)&&(!gh.isAbsolute(vt)||Me(vt)===null)){let Ar=de(vt,xt);if(Ar===!1)throw YR(yT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) +`),r}var[NJr,eds]=process.versions.node.split(".").map(e=>parseInt(e,10)),$yl=NJr>19||NJr===19&&eds>=2||NJr===18&&eds>=13;function tds(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send){let t=e.map(r=>Rc.fromPortablePath(hGt.resolveVirtual(r)));if($yl)process.send({"watch:require":t});else for(let r of t)process.send({"watch:require":r})}}function mds(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,n=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,A=/^\.{0,2}\//,f={name:null,reference:null},I=[],C=new Set;if(e.enableTopLevelFallback===!0&&I.push(f),t.compatibilityMode!==!1)for(let vt of["react-scripts","gatsby"]){let xt=e.packageRegistry.get(vt);if(xt)for(let Zr of xt.keys()){if(Zr===null)throw new Error("Assertion failed: This reference shouldn't be null");I.push({name:vt,reference:Zr})}}let{ignorePattern:b,packageRegistry:E,packageLocatorsByLocations:N}=e;function B(vt,xt){return{fn:vt,args:xt,error:null,result:null}}function F(vt){let xt=process.stderr?.hasColors?.()??process.stdout.isTTY,Zr=(lr,cr)=>`\x1B[${lr}m${cr}\x1B[0m`,qt=vt.error;console.error(qt?Zr("31;1",`\u2716 ${vt.error?.message.replace(/\n.*/s,"")}`):Zr("33;1","\u203C Resolution")),vt.args.length>0&&console.error();for(let lr of vt.args)console.error(` ${Zr("37;1","In \u2190")} ${QAs.inspect(lr,{colors:xt,compact:!0})}`);vt.result&&(console.error(),console.error(` ${Zr("37;1","Out \u2192")} ${QAs.inspect(vt.result,{colors:xt,compact:!0})}`));let Xt=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Xt.length>0){console.error();for(let lr of Xt)console.error(` ${Zr("38;5;244",lr)}`)}console.error()}function Q(vt,xt){if(t.allowDebug===!1)return xt;if(Number.isFinite(n)){if(n>=2)return(...Zr)=>{let qt=B(vt,Zr);try{return qt.result=xt(...Zr)}catch(Xt){throw qt.error=Xt}finally{F(qt)}};if(n>=1)return(...Zr)=>{try{return xt(...Zr)}catch(qt){let Xt=B(vt,Zr);throw Xt.error=qt,F(Xt),qt}}}return xt}function X(vt){let xt=k(vt);if(!xt)throw YR(yT.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return xt}function ae(vt){if(vt.name===null)return!0;for(let xt of e.dependencyTreeRoots)if(xt.name===vt.name&&xt.reference===vt.reference)return!0;return!1}let ne=new Set(["node","require",...Kyl("--conditions")]);function ce(vt,xt=ne,Zr){let qt=Me(gh.join(vt,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(qt===null)throw YR(yT.INTERNAL,`The locator that owns the "${vt}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Xt}=X(qt),lr=gh.join(Xt,fGt.manifest);if(!t.fakeFs.existsSync(lr))return null;let cr=JSON.parse(t.fakeFs.readFileSync(lr,"utf8"));if(cr.exports==null)return null;let Ar=gh.contains(Xt,vt);if(Ar===null)throw YR(yT.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");Ar!=="."&&!A.test(Ar)&&(Ar=`./${Ar}`);try{let qr=Qyl({packageJSONUrl:eB.pathToFileURL(Rc.fromPortablePath(lr)),packageSubpath:Ar,exports:cr.exports,base:Zr?eB.pathToFileURL(Rc.fromPortablePath(Zr)):null,conditions:xt});return Rc.toPortablePath(eB.fileURLToPath(qr))}catch(qr){throw YR(yT.EXPORTS_RESOLUTION_FAILED,qr.message,{unqualifiedPath:p6(vt),locator:qt,pkgJson:cr,subpath:p6(Ar),conditions:xt},qr.code)}}function fe(vt,xt,{extensions:Zr}){let qt;try{xt.push(vt),qt=t.fakeFs.statSync(vt)}catch{}if(qt&&!qt.isDirectory())return t.fakeFs.realpathSync(vt);if(qt&&qt.isDirectory()){let Xt;try{Xt=JSON.parse(t.fakeFs.readFileSync(gh.join(vt,fGt.manifest),"utf8"))}catch{}let lr;if(Xt&&Xt.main&&(lr=gh.resolve(vt,Xt.main)),lr&&lr!==vt){let cr=fe(lr,xt,{extensions:Zr});if(cr!==null)return cr}}for(let Xt=0,lr=Zr.length;Xt{let Ar=JSON.stringify(cr.name);if(qt.has(Ar))return;qt.add(Ar);let qr=et(cr);for(let _n of qr)if(X(_n).packagePeers.has(vt))Xt(_n);else{let jt=Zr.get(_n.name);typeof jt>"u"&&Zr.set(_n.name,jt=new Set),jt.add(_n.reference)}};Xt(xt);let lr=[];for(let cr of[...Zr.keys()].sort())for(let Ar of[...Zr.get(cr)].sort())lr.push({name:cr,reference:Ar});return lr}function Me(vt,{resolveIgnored:xt=!1,includeDiscardFromLookup:Zr=!1}={}){if(be(vt)&&!xt)return null;let qt=gh.relative(e.basePath,vt);qt.match(o)||(qt=`./${qt}`),qt.endsWith("/")||(qt=`${qt}/`);do{let Xt=N.get(qt);if(typeof Xt>"u"||Xt.discardFromLookup&&!Zr){qt=qt.substring(0,qt.lastIndexOf("/",qt.length-2)+1);continue}return Xt.locator}while(qt!=="");return null}function je(vt){try{return t.fakeFs.readFileSync(Rc.toPortablePath(vt),"utf8")}catch(xt){if(xt.code==="ENOENT")return;throw xt}}function St(vt,xt,{considerBuiltins:Zr=!0}={}){if(vt.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(vt==="pnpapi")return Rc.toPortablePath(t.pnpapiResolution);if(Zr&&n0e.isBuiltin(vt))return null;let qt=p6(vt),Xt=xt&&p6(xt);if(xt&&be(xt)&&(!gh.isAbsolute(vt)||Me(vt)===null)){let Ar=de(vt,xt);if(Ar===!1)throw YR(yT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) Require request: "${qt}" Required by: ${Xt} @@ -1572,7 +1572,7 @@ Required by: ${_n.name}@${_n.reference} (via ${Xt}) ${xi.map(io=>`Ancestor breaking the chain: ${io.name}@${io.reference} `).join("")} -`,{request:qt,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar,brokenAncestors:xi})}else jt===void 0&&(!Zr&&r0e.isBuiltin(vt)?ae(_n)?Nn=YR(yT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. +`,{request:qt,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar,brokenAncestors:xi})}else jt===void 0&&(!Zr&&n0e.isBuiltin(vt)?ae(_n)?Nn=YR(yT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} Required by: ${Xt} @@ -1592,7 +1592,7 @@ Required by: ${_n.name}@${_n.reference} (via ${Xt}) Required package: ${Hi.name}@${Hi.reference}${Hi.name!==qt?` (via "${qt}")`:""} Required by: ${_n.name}@${_n.reference} (via ${Xt}) -`,{request:qt,issuer:Xt,dependencyLocator:Object.assign({},Hi)});let Vr=po.packageLocation;qr?lr=gh.join(Vr,qr):lr=Vr}else if(gh.isAbsolute(vt))lr=gh.normalize(vt);else{if(!xt)throw YR(yT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:qt,issuer:Xt});let Ar=gh.resolve(xt);xt.match(l)?lr=gh.normalize(gh.join(Ar,vt)):lr=gh.normalize(gh.join(gh.dirname(Ar),vt))}return gh.normalize(lr)}function At(vt,xt,Zr=ne,qt){if(o.test(vt))return xt;let Xt=ce(xt,Zr,qt);return Xt?gh.normalize(Xt):xt}function Yt(vt,{extensions:xt=Object.keys(r0e.Module._extensions)}={}){let Zr=[],qt=fe(vt,Zr,{extensions:xt});if(qt)return PAs([qt]),gh.normalize(qt);{PAs(Zr);let Xt=p6(vt),lr=Me(vt);if(lr){let{packageLocation:cr}=X(lr),Ar=!0;try{t.fakeFs.accessSync(cr)}catch(qr){if(qr?.code==="ENOENT")Ar=!1;else{let _n=(qr?.message??qr??"empty exception thrown").replace(/^[A-Z]/,ke=>ke.toLowerCase());throw YR(yT.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${_n}). +`,{request:qt,issuer:Xt,dependencyLocator:Object.assign({},Hi)});let Vr=po.packageLocation;qr?lr=gh.join(Vr,qr):lr=Vr}else if(gh.isAbsolute(vt))lr=gh.normalize(vt);else{if(!xt)throw YR(yT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:qt,issuer:Xt});let Ar=gh.resolve(xt);xt.match(l)?lr=gh.normalize(gh.join(Ar,vt)):lr=gh.normalize(gh.join(gh.dirname(Ar),vt))}return gh.normalize(lr)}function At(vt,xt,Zr=ne,qt){if(o.test(vt))return xt;let Xt=ce(xt,Zr,qt);return Xt?gh.normalize(Xt):xt}function Yt(vt,{extensions:xt=Object.keys(n0e.Module._extensions)}={}){let Zr=[],qt=fe(vt,Zr,{extensions:xt});if(qt)return tds([qt]),gh.normalize(qt);{tds(Zr);let Xt=p6(vt),lr=Me(vt);if(lr){let{packageLocation:cr}=X(lr),Ar=!0;try{t.fakeFs.accessSync(cr)}catch(qr){if(qr?.code==="ENOENT")Ar=!1;else{let _n=(qr?.message??qr??"empty exception thrown").replace(/^[A-Z]/,ke=>ke.toLowerCase());throw YR(yT.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${_n}). Missing package: ${lr.name}@${lr.reference} Expected package location: ${p6(cr)} @@ -1604,8 +1604,8 @@ Expected package location: ${p6(cr)} Source path: ${Xt} ${Zr.map(cr=>`Not found: ${p6(cr)} -`).join("")}`,{unqualifiedPath:Xt,extensions:xt})}}function Tr(vt,xt,Zr){if(!xt)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let qt=eyl({name:vt,base:eB.pathToFileURL(Rc.fromPortablePath(xt)),conditions:Zr.conditions??ne,readFileSyncFn:je});if(qt instanceof URL)return Yt(Rc.toPortablePath(eB.fileURLToPath(qt)),{extensions:Zr.extensions});if(qt.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Nr(qt,xt,Zr)}function Nr(vt,xt,Zr={}){try{if(vt.startsWith("#"))return Tr(vt,xt,Zr);let{considerBuiltins:qt,extensions:Xt,conditions:lr}=Zr,cr=St(vt,xt,{considerBuiltins:qt});if(vt==="pnpapi")return cr;if(cr===null)return null;let Ar=()=>xt!==null?be(xt):!1,qr=(!qt||!r0e.isBuiltin(vt))&&!Ar()?At(vt,cr,lr,xt):cr;return Yt(qr,{extensions:Xt})}catch(qt){throw Object.hasOwn(qt,"pnpCode")&&Object.assign(qt.data,{request:p6(vt),issuer:xt&&p6(xt)}),qt}}function er(vt){let xt=gh.normalize(vt),Zr=dGt.resolveVirtual(xt);return Zr!==xt?Zr:null}return{VERSIONS:Se,topLevel:De,getLocator:(vt,xt)=>Array.isArray(xt)?{name:xt[0],reference:xt[1]}:{name:vt,reference:xt},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let vt=[];for(let[xt,Zr]of E)for(let qt of Zr.keys())xt!==null&&qt!==null&&vt.push({name:xt,reference:qt});return vt},getPackageInformation:vt=>{let xt=k(vt);if(xt===null)return null;let Zr=Rc.fromPortablePath(xt.packageLocation);return{...xt,packageLocation:Zr}},findPackageLocator:vt=>Me(Rc.toPortablePath(vt)),resolveToUnqualified:Q("resolveToUnqualified",(vt,xt,Zr)=>{let qt=xt!==null?Rc.toPortablePath(xt):null,Xt=St(Rc.toPortablePath(vt),qt,Zr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveUnqualified:Q("resolveUnqualified",(vt,xt)=>Rc.fromPortablePath(Yt(Rc.toPortablePath(vt),xt))),resolveRequest:Q("resolveRequest",(vt,xt,Zr)=>{let qt=xt!==null?Rc.toPortablePath(xt):null,Xt=Nr(Rc.toPortablePath(vt),qt,Zr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveVirtual:Q("resolveVirtual",vt=>{let xt=er(Rc.toPortablePath(vt));return xt!==null?Rc.fromPortablePath(xt):null})}}async function cyl(e,{fakeFs:t,pnpapiResolution:r}){let n=await t.readFilePromise(e,"utf8");return nds(n,{basePath:WAs.dirname(e),fakeFs:t,pnpapiResolution:r})}function nds(e,{basePath:t,fakeFs:r,pnpapiResolution:n}){let a=JSON.parse(e),o=jAs(a,{basePath:t});return rds(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:n})}var lyl=(e,t,r)=>{let n=GJr(e),a=jAs(n,{basePath:t}),o=Rc.join(t,gGt.pnpCjs);return rds(a,{fakeFs:r,pnpapiResolution:o})},SJr,uyl=()=>(typeof SJr>"u"&&(SJr=OAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),SJr);z4.LinkType=MAs;z4.generateInlinedScript=Z0l;z4.generateLoader=FJr;z4.generatePrettyJson=KAs;z4.generateSplitScript=L0l;z4.getESMLoaderTemplate=uyl;z4.hydratePnpFile=cyl;z4.hydratePnpSource=nds;z4.makeRuntimeApi=lyl});var VJr=H(fGe=>{"use strict";Object.defineProperty(fGe,"__esModule",{value:!0});fGe.checkManifestCompatibility=ids;fGe.extractBuildRequest=Ayl;fGe.getExtractHint=pyl;fGe.hasBindingGyp=fyl;var XV=Sn(),gyl=ro();function ids(e){return XV.structUtils.isPackageCompatible(e,XV.nodeUtils.getArchitectureSet())}function Ayl(e,t,r,{configuration:n}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:XV.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:XV.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==XV.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.SOFT_LINK_BUILD,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(XV.MessageName.BUILD_DISABLED,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!n.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.DISABLED_BUILD_SCRIPTS,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but all build scripts have been disabled.`)}:ids(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.INCOMPATIBLE_ARCHITECTURE,`${XV.structUtils.prettyLocator(n,e)} The ${XV.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var dyl=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function pyl(e){return e.packageFs.getExtractHint({relevantExtensions:dyl})}function fyl(e){let t=gyl.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var CGt=H(PJr=>{"use strict";Object.defineProperty(PJr,"__esModule",{value:!0});PJr.getUnpluggedPath=myl;var Iyl=Sn(),hyl=ro();function myl(e,{configuration:t}){return hyl.ppath.resolve(t.get("pnpUnpluggedFolder"),Iyl.structUtils.slugifyLocator(e))}});var HJr=H(IGe=>{"use strict";Object.defineProperty(IGe,"__esModule",{value:!0});IGe.PnpInstaller=IGe.PnpLinker=void 0;var ods=(Pa(),vi(Va)),cC=Sn(),Eue=Sn(),Pm=ro(),WJr=LJr(),sds=($c(),vi(rg)),_Gt=hGe(),yGt=ods.__importStar(VJr()),Cyl=ods.__importStar(CGt()),_yl=new Set([cC.structUtils.makeIdent(null,"open").identHash,cC.structUtils.makeIdent(null,"opn").identHash]),MJr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let n=(0,_Gt.getPnpPath)(r.project).cjs;if(!Pm.xfs.existsSync(n))throw new sds.UsageError(`The project in ${cC.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,cC.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=cC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>cC.miscUtils.dynamicRequire(n,{cachingStrategy:cC.miscUtils.CachingStrategy.FsTime})),o={name:cC.structUtils.stringifyIdent(t),reference:t.reference},l=a.getPackageInformation(o);if(!l)throw new sds.UsageError(`Couldn't find ${cC.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return Pm.npath.toPortablePath(l.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=(0,_Gt.getPnpPath)(r.project).cjs;if(!Pm.xfs.existsSync(n))return null;let o=cC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>cC.miscUtils.dynamicRequire(n,{cachingStrategy:cC.miscUtils.CachingStrategy.FsTime})).findPackageLocator(Pm.npath.fromPortablePath(t));return o?cC.structUtils.makeLocator(cC.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new bGt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};IGe.PnpLinker=MJr;var bGt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new cC.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,n){let a=cC.structUtils.stringifyIdent(t),o=t.reference,l=!!this.opts.project.tryWorkspaceByLocator(t),A=cC.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!A,I=!f&&!l,C=!f&&t.linkType!==Eue.LinkType.SOFT,b,E;if(I||C){let ne=A?cC.structUtils.devirtualizeLocator(t):t;b=this.customData.store.get(ne.locatorHash),typeof b>"u"&&(b=await yyl(r),t.linkType===Eue.LinkType.HARD&&this.customData.store.set(ne.locatorHash,b)),b.manifest.type==="module"&&(this.isESMLoaderRequired=!0),E=this.opts.project.getDependencyMeta(ne,t.version)}let N=I?yGt.extractBuildRequest(t,b,E,{configuration:this.opts.project.configuration}):null,B=C?await this.unplugPackageIfNeeded(t,b,r,E,n):r.packageFs;if(Pm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let F=Pm.ppath.resolve(B.getRealPath(),r.prefixPath),Q=OJr(this.opts.project.cwd,F),X=new Map,ae=new Set;if(A){for(let ne of t.peerDependencies.values())X.set(cC.structUtils.stringifyIdent(ne),null),ae.add(cC.structUtils.stringifyIdent(ne));if(!l){let ne=cC.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ne.locatorHash,{location:OJr(this.opts.project.cwd,Pm.VirtualFS.resolveVirtual(F)),locator:ne})}}return cC.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:Q,packageDependencies:X,packagePeers:ae,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:F,buildRequest:N}}async attachInternalDependencies(t,r){let n=this.getPackageInformation(t);for(let[a,o]of r){let l=cC.structUtils.areIdentsEqual(a,o)?o.reference:[cC.structUtils.stringifyIdent(o),o.reference];n.packageDependencies.set(cC.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){for(let n of r)this.getDiskInformation(n).packageDependencies.set(cC.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,_Gt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await Pm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await Pm.xfs.removePromise(t.cjs),await Pm.xfs.removePromise(t.data),await Pm.xfs.removePromise(t.esmLoader),await Pm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:b,location:E}of this.virtualTemplates.values())cC.miscUtils.getMapWithDefault(this.packageRegistry,cC.structUtils.stringifyIdent(b)).set(b.reference,{packageLocation:E,packageDependencies:new Map,packagePeers:new Set,linkType:Eue.LinkType.SOFT,discardFromLookup:!1});let r=this.opts.project.configuration.get("pnpFallbackMode"),n=this.opts.project.workspaces.map(({anchoredLocator:b})=>({name:cC.structUtils.stringifyIdent(b),reference:b.reference})),a=r!=="none",o=[],l=new Map,A=cC.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,I=this.opts.project.configuration.get("pnpShebang"),C=this.opts.project.configuration.get("pnpZipBackend");if(r==="dependencies-only")for(let b of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(b)&&o.push({name:cC.structUtils.stringifyIdent(b),reference:b.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:n,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:l,ignorePattern:A,pnpZipBackend:C,packageRegistry:f,shebang:I}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,_Gt.getPnpPath)(this.opts.project),n=await this.locateNodeModules(t.ignorePattern);if(n.length>0){this.opts.report.reportWarning(Eue.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await Pm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,WJr.generateInlinedScript)(t);await Pm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await Pm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:l}=(0,WJr.generateSplitScript)(t);await Pm.xfs.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await Pm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(Eue.MessageName.EXPERIMENTAL,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await Pm.xfs.changeFilePromise(r.esmLoader,(0,WJr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await Pm.xfs.removePromise(a);else for(let o of await Pm.xfs.readdirPromise(a)){let l=Pm.ppath.resolve(a,o);this.unpluggedPaths.has(l)||await Pm.xfs.removePromise(l)}}async locateNodeModules(t){let r=[],n=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=Pm.ppath.join(a.cwd,"node_modules");if(n&&n.test(Pm.ppath.relative(this.opts.project.cwd,a.cwd))||!Pm.xfs.existsSync(o))continue;let l=await Pm.xfs.readdirPromise(o,{withFileTypes:!0}),A=l.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(A.length===l.length)r.push(o);else for(let f of A)r.push(Pm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,n,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,n,o):n.packageFs}shouldBeUnplugged(t,r,n){return typeof n.unplugged<"u"?n.unplugged:_yl.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(yGt.extractBuildRequest(t,r,n,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,n){let a=Cyl.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new Pm.AliasFS(a,{baseFs:r.packageFs,pathUtils:Pm.ppath}):(this.unpluggedPaths.add(a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=Pm.ppath.join(a,r.prefixPath,".ready");await Pm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await Pm.xfs.mkdirPromise(a,{recursive:!0}),await Pm.xfs.copyPromise(a,Pm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await Pm.xfs.writeFilePromise(o,""))})),new Pm.CwdFS(a))}getPackageInformation(t){let r=cC.structUtils.stringifyIdent(t),n=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${cC.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(n);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${cC.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=cC.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),n=OJr(this.opts.project.cwd,t);return cC.miscUtils.getFactoryWithDefault(r,n,()=>({packageLocation:n,packageDependencies:new Map,packagePeers:new Set,linkType:Eue.LinkType.SOFT,discardFromLookup:!1}))}};IGe.PnpInstaller=bGt;function OJr(e,t){let r=Pm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function yyl(e){let t=await Eue.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Eue.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let n of t.scripts.keys())r.has(n)||t.scripts.delete(n);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:yGt.getExtractHint(e),hasBindingGyp:yGt.hasBindingGyp(e)}}}});var lds=H(YJr=>{"use strict";Object.defineProperty(YJr,"__esModule",{value:!0});var cds=(Pa(),vi(Va)),ads=el(),kH=Sn(),xH=Sn(),Wte=($c(),vi(rg)),byl=cds.__importDefault(Ek()),Eyl=cds.__importStar(CGt()),s7e=class extends ads.BaseCommand{constructor(){super(...arguments),this.all=Wte.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=Wte.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=Wte.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=Wte.Option.Rest()}async execute(){let t=await kH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kH.Project.find(t,this.context.cwd),a=await kH.Cache.find(t);if(!n)throw new ads.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new Wte.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),l=this.patterns.map(E=>{let N=xH.structUtils.parseDescriptor(E),B=N.range!=="unknown"?N:xH.structUtils.makeDescriptor(N,"*");if(!xH.semverUtils.validRange(B.range))throw new Wte.UsageError(`The range of the descriptor patterns must be a valid semver range (${xH.structUtils.prettyDescriptor(t,B)})`);return F=>{let Q=xH.structUtils.stringifyIdent(F);return!byl.default.isMatch(Q,xH.structUtils.stringifyIdent(B))||F.version&&!xH.semverUtils.satisfiesWithPrereleases(F.version,B.range)?!1:(o.delete(E),!0)}}),A=()=>{let E=[];for(let N of r.storedPackages.values())!r.tryWorkspaceByLocator(N)&&!xH.structUtils.isVirtualLocator(N)&&l.some(B=>B(N))&&E.push(N);return E},f=E=>{let N=new Set,B=[],F=(Q,X)=>{if(N.has(Q.locatorHash))return;let ae=!!r.tryWorkspaceByLocator(Q);if(!(X>0&&!this.recursive&&ae)&&(N.add(Q.locatorHash),!r.tryWorkspaceByLocator(Q)&&l.some(ne=>ne(Q))&&B.push(Q),!(X>0&&!this.recursive)))for(let ne of Q.dependencies.values()){let ce=r.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");F(fe,X+1)}};for(let Q of E)F(Q.anchoredPackage,0);return B},I,C;if(this.all&&this.recursive?(I=A(),C="the project"):this.all?(I=f(r.workspaces),C="any workspace"):(I=f([n]),C="this workspace"),o.size>1)throw new Wte.UsageError(`Patterns ${kH.formatUtils.prettyList(t,o,kH.formatUtils.Type.CODE)} don't match any packages referenced by ${C}`);if(o.size>0)throw new Wte.UsageError(`Pattern ${kH.formatUtils.prettyList(t,o,kH.formatUtils.Type.CODE)} doesn't match any packages referenced by ${C}`);I=kH.miscUtils.sortMap(I,E=>xH.structUtils.stringifyLocator(E));let b=await kH.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async E=>{for(let N of I){let B=N.version??"unknown",F=r.topLevelWorkspace.manifest.ensureDependencyMeta(xH.structUtils.makeDescriptor(N,B));F.unplugged=!0,E.reportInfo(kH.MessageName.UNNAMED,`Will unpack ${xH.structUtils.prettyLocator(t,N)} to ${kH.formatUtils.pretty(t,Eyl.getUnpluggedPath(N,{configuration:t}),kH.formatUtils.Type.PATH)}`),E.reportJson({locator:xH.structUtils.stringifyLocator(N),version:B})}await r.topLevelWorkspace.persistManifest(),this.json||E.reportSeparator()});return b.hasErrors()?b.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};s7e.paths=[["unplug"]];s7e.usage=Wte.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});YJr.default=s7e});var hGe=H(bT=>{"use strict";Object.defineProperty(bT,"__esModule",{value:!0});bT.PnpLinker=bT.PnpInstaller=bT.quotePathIfNeeded=bT.getPnpPath=bT.pnpUtils=bT.jsInstallUtils=bT.UnplugCommand=void 0;var QJr=(Pa(),vi(Va)),JV=Sn(),f6=ro(),Syl=wt("url"),vyl=HJr(),uds=QJr.__importDefault(lds());bT.UnplugCommand=uds.default;var Byl=QJr.__importStar(VJr());bT.jsInstallUtils=Byl;var wyl=QJr.__importStar(CGt());bT.pnpUtils=wyl;var Tyl=e=>({cjs:f6.ppath.join(e.cwd,f6.Filename.pnpCjs),data:f6.ppath.join(e.cwd,f6.Filename.pnpData),esmLoader:f6.ppath.join(e.cwd,f6.Filename.pnpEsmLoader)});bT.getPnpPath=Tyl;var Ryl=e=>/\s/.test(e)?JSON.stringify(e):e;bT.quotePathIfNeeded=Ryl;async function Nyl(e,t,r){let n=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(n," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let l=(0,bT.getPnpPath)(e),A=`--require ${(0,bT.quotePathIfNeeded)(f6.npath.fromPortablePath(l.cjs))}`;f6.xfs.existsSync(l.esmLoader)&&(A=`${A} --experimental-loader ${(0,Syl.pathToFileURL)(f6.npath.fromPortablePath(l.esmLoader)).href}`),f6.xfs.existsSync(l.cjs)&&(t.NODE_OPTIONS=o?`${A} ${o}`:A)}async function Dyl(e,t){let r=(0,bT.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var kyl={hooks:{populateYarnPaths:Dyl,setupScriptEnvironment:Nyl},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:JV.SettingsType.STRING,default:"pnp"},minizip:{description:"Whether Yarn should use minizip to extract archives",type:JV.SettingsType.BOOLEAN,default:!1},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:JV.SettingsType.STRING,values:[JV.WindowsLinkType.JUNCTIONS,JV.WindowsLinkType.SYMLINKS],default:JV.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:JV.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:JV.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:JV.SettingsType.STRING,default:[],isArray:!0},pnpZipBackend:{description:"Whether to use the experimental js implementation for the ZipFS",type:JV.SettingsType.STRING,values:["libzip","js"],default:"libzip"},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:JV.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:JV.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:JV.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:JV.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[vyl.PnpLinker],commands:[uds.default]},gds=HJr();Object.defineProperty(bT,"PnpInstaller",{enumerable:!0,get:function(){return gds.PnpInstaller}});Object.defineProperty(bT,"PnpLinker",{enumerable:!0,get:function(){return gds.PnpLinker}});bT.default=kyl});var Ads=H((XJr,JJr)=>{(function(e){XJr&&typeof XJr=="object"&&typeof JJr<"u"?JJr.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var fds=H((Zrg,pds)=>{"use strict";var xyl=wt("path"),dds;process.env.PATHEXT&&(dds=process.env.PATHEXT.split(xyl.delimiter).find(e=>e.toUpperCase()===".CMD"));pds.exports=dds||".cmd"});var hds=H((Lrg,Ids)=>{var Sue=wt("constants"),Gyl=process.cwd,EGt=null,Fyl=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return EGt||(EGt=Gyl.call(process)),EGt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(UJr=process.chdir,process.chdir=function(e){EGt=null,UJr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,UJr));var UJr;Ids.exports=Zyl;function Zyl(e){Sue.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=n(e.chmod),e.fchmod=n(e.fchmod),e.lchmod=n(e.lchmod),e.chownSync=l(e.chownSync),e.fchownSync=l(e.fchownSync),e.lchownSync=l(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=A(e.stat),e.fstat=A(e.fstat),e.lstat=A(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(C,b,E){E&&process.nextTick(E)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(C,b,E,N){N&&process.nextTick(N)},e.lchownSync=function(){}),Fyl==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(C){function b(E,N,B){var F=Date.now(),Q=0;C(E,N,function X(ae){if(ae&&(ae.code==="EACCES"||ae.code==="EPERM"||ae.code==="EBUSY")&&Date.now()-F<6e4){setTimeout(function(){e.stat(N,function(ne,ce){ne&&ne.code==="ENOENT"?C(E,N,X):B(ae)})},Q),Q<100&&(Q+=10);return}B&&B(ae)})}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.rename)),e.read=typeof e.read!="function"?e.read:function(C){function b(E,N,B,F,Q,X){var ae;if(X&&typeof X=="function"){var ne=0;ae=function(ce,fe,ue){if(ce&&ce.code==="EAGAIN"&&ne<10)return ne++,C.call(e,E,N,B,F,Q,ae);X.apply(this,arguments)}}return C.call(e,E,N,B,F,Q,ae)}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(C){return function(b,E,N,B,F){for(var Q=0;;)try{return C.call(e,b,E,N,B,F)}catch(X){if(X.code==="EAGAIN"&&Q<10){Q++;continue}throw X}}}(e.readSync);function t(C){C.lchmod=function(b,E,N){C.open(b,Sue.O_WRONLY|Sue.O_SYMLINK,E,function(B,F){if(B){N&&N(B);return}C.fchmod(F,E,function(Q){C.close(F,function(X){N&&N(Q||X)})})})},C.lchmodSync=function(b,E){var N=C.openSync(b,Sue.O_WRONLY|Sue.O_SYMLINK,E),B=!0,F;try{F=C.fchmodSync(N,E),B=!1}finally{if(B)try{C.closeSync(N)}catch{}else C.closeSync(N)}return F}}function r(C){Sue.hasOwnProperty("O_SYMLINK")&&C.futimes?(C.lutimes=function(b,E,N,B){C.open(b,Sue.O_SYMLINK,function(F,Q){if(F){B&&B(F);return}C.futimes(Q,E,N,function(X){C.close(Q,function(ae){B&&B(X||ae)})})})},C.lutimesSync=function(b,E,N){var B=C.openSync(b,Sue.O_SYMLINK),F,Q=!0;try{F=C.futimesSync(B,E,N),Q=!1}finally{if(Q)try{C.closeSync(B)}catch{}else C.closeSync(B)}return F}):C.futimes&&(C.lutimes=function(b,E,N,B){B&&process.nextTick(B)},C.lutimesSync=function(){})}function n(C){return C&&function(b,E,N){return C.call(e,b,E,function(B){I(B)&&(B=null),N&&N.apply(this,arguments)})}}function a(C){return C&&function(b,E){try{return C.call(e,b,E)}catch(N){if(!I(N))throw N}}}function o(C){return C&&function(b,E,N,B){return C.call(e,b,E,N,function(F){I(F)&&(F=null),B&&B.apply(this,arguments)})}}function l(C){return C&&function(b,E,N){try{return C.call(e,b,E,N)}catch(B){if(!I(B))throw B}}}function A(C){return C&&function(b,E,N){typeof E=="function"&&(N=E,E=null);function B(F,Q){Q&&(Q.uid<0&&(Q.uid+=4294967296),Q.gid<0&&(Q.gid+=4294967296)),N&&N.apply(this,arguments)}return E?C.call(e,b,E,B):C.call(e,b,B)}}function f(C){return C&&function(b,E){var N=E?C.call(e,b,E):C.call(e,b);return N&&(N.uid<0&&(N.uid+=4294967296),N.gid<0&&(N.gid+=4294967296)),N}}function I(C){if(!C||C.code==="ENOSYS")return!0;var b=!process.getuid||process.getuid()!==0;return!!(b&&(C.code==="EINVAL"||C.code==="EPERM"))}}});var _ds=H((Vrg,Cds)=>{var mds=wt("stream").Stream;Cds.exports=Lyl;function Lyl(e){return{ReadStream:t,WriteStream:r};function t(n,a){if(!(this instanceof t))return new t(n,a);mds.call(this);var o=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var l=Object.keys(a),A=0,f=l.length;Athis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(C,b){if(C){o.emit("error",C),o.readable=!1;return}o.fd=b,o.emit("open",b),o._read()})}function r(n,a){if(!(this instanceof r))return new r(n,a);mds.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),l=0,A=o.length;l= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var bds=H((Prg,yds)=>{"use strict";yds.exports=Pyl;var Vyl=Object.getPrototypeOf||function(e){return e.__proto__};function Pyl(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:Vyl(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var Bds=H((Wrg,zJr)=>{var WS=wt("fs"),Wyl=hds(),Oyl=_ds(),Myl=bds(),SGt=wt("util"),dx,BGt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(dx=Symbol.for("graceful-fs.queue"),BGt=Symbol.for("graceful-fs.previous")):(dx="___graceful-fs.queue",BGt="___graceful-fs.previous");function Hyl(){}function vds(e,t){Object.defineProperty(e,dx,{get:function(){return t}})}var s0e=Hyl;SGt.debuglog?s0e=SGt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(s0e=function(){var e=SGt.format.apply(SGt,arguments);e="GFS4: "+e.split(/\n/).join(` -GFS4: `),console.error(e)});WS[dx]||(Eds=global[dx]||[],vds(WS,Eds),WS.close=function(e){function t(r,n){return e.call(WS,r,function(a){a||Sds(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(t,BGt,{value:e}),t}(WS.close),WS.closeSync=function(e){function t(r){e.apply(WS,arguments),Sds()}return Object.defineProperty(t,BGt,{value:e}),t}(WS.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){s0e(WS[dx]),wt("assert").equal(WS[dx].length,0)}));var Eds;global[dx]||vds(global,WS[dx]);zJr.exports=KJr(Myl(WS));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!WS.__patched&&(zJr.exports=KJr(WS),WS.__patched=!0);function KJr(e){Wyl(e),e.gracefulify=KJr,e.createReadStream=fe,e.createWriteStream=ue;var t=e.readFile;e.readFile=r;function r(Se,De,k){return typeof De=="function"&&(k=De,De=null),et(Se,De,k);function et(ct,Me,je,St){return t(ct,Me,function(At){At&&(At.code==="EMFILE"||At.code==="ENFILE")?mGe([et,[ct,Me,je],At,St||Date.now(),Date.now()]):typeof je=="function"&&je.apply(this,arguments)})}}var n=e.writeFile;e.writeFile=a;function a(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return n(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=l);function l(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return o(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var A=e.copyFile;A&&(e.copyFile=f);function f(Se,De,k,et){return typeof k=="function"&&(et=k,k=0),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return A(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var I=e.readdir;e.readdir=b;var C=/^v[0-5]\./;function b(Se,De,k){typeof De=="function"&&(k=De,De=null);var et=C.test(process.version)?function(je,St,At,Yt){return I(je,ct(je,St,At,Yt))}:function(je,St,At,Yt){return I(je,St,ct(je,St,At,Yt))};return et(Se,De,k);function ct(Me,je,St,At){return function(Yt,Tr){Yt&&(Yt.code==="EMFILE"||Yt.code==="ENFILE")?mGe([et,[Me,je,St],Yt,At||Date.now(),Date.now()]):(Tr&&Tr.sort&&Tr.sort(),typeof St=="function"&&St.call(this,Yt,Tr))}}}if(process.version.substr(0,4)==="v0.8"){var E=Oyl(e);X=E.ReadStream,ne=E.WriteStream}var N=e.ReadStream;N&&(X.prototype=Object.create(N.prototype),X.prototype.open=ae);var B=e.WriteStream;B&&(ne.prototype=Object.create(B.prototype),ne.prototype.open=ce),Object.defineProperty(e,"ReadStream",{get:function(){return X},set:function(Se){X=Se},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ne},set:function(Se){ne=Se},enumerable:!0,configurable:!0});var F=X;Object.defineProperty(e,"FileReadStream",{get:function(){return F},set:function(Se){F=Se},enumerable:!0,configurable:!0});var Q=ne;Object.defineProperty(e,"FileWriteStream",{get:function(){return Q},set:function(Se){Q=Se},enumerable:!0,configurable:!0});function X(Se,De){return this instanceof X?(N.apply(this,arguments),this):X.apply(Object.create(X.prototype),arguments)}function ae(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.autoClose&&Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k),Se.read())})}function ne(Se,De){return this instanceof ne?(B.apply(this,arguments),this):ne.apply(Object.create(ne.prototype),arguments)}function ce(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k))})}function fe(Se,De){return new e.ReadStream(Se,De)}function ue(Se,De){return new e.WriteStream(Se,De)}var de=e.open;e.open=be;function be(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return de(Me,je,St,function(Tr,Nr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}return e}function mGe(e){s0e("ENQUEUE",e[0].name,e[1]),WS[dx].push(e),jJr()}var vGt;function Sds(){for(var e=Date.now(),t=0;t2&&(WS[dx][t][3]=e,WS[dx][t][4]=e);jJr()}function jJr(){if(clearTimeout(vGt),vGt=void 0,WS[dx].length!==0){var e=WS[dx].shift(),t=e[0],r=e[1],n=e[2],a=e[3],o=e[4];if(a===void 0)s0e("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){s0e("TIMEOUT",t.name,r);var l=r.pop();typeof l=="function"&&l.call(null,n)}else{var A=Date.now()-o,f=Math.max(o-a,1),I=Math.min(f*1.2,100);A>=I?(s0e("RETRY",t.name,r),t.apply(null,r.concat([a]))):WS[dx].push(e)}vGt===void 0&&(vGt=setTimeout(jJr,0))}}});var Rds=H((Org,Tds)=>{"use strict";$Jr.ifExists=Uyl;var CGe=wt("util"),WO=wt("path"),qJr=Ads(),Yyl=fds(),Qyl=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,Xyl={createPwshFile:!0,createCmdFile:qJr(),fs:Bds()},Jyl=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function wds(e){let t={...Xyl,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,CGe.promisify)(r.chmod):async()=>{},mkdir:(0,CGe.promisify)(r.mkdir),readFile:(0,CGe.promisify)(r.readFile),stat:(0,CGe.promisify)(r.stat),unlink:(0,CGe.promisify)(r.unlink),writeFile:(0,CGe.promisify)(r.writeFile)},t}async function $Jr(e,t,r){let n=wds(r);await jyl(e,t,n)}function Uyl(e,t,r){return $Jr(e,t,r).catch(()=>{})}function Kyl(e,t){return t.fs_.unlink(e).catch(()=>{})}async function jyl(e,t,r){let n=await tbl(e,r);return await zyl(t,r),qyl(e,t,n,r)}function zyl(e,t){return t.fs_.mkdir(WO.dirname(e),{recursive:!0})}function qyl(e,t,r,n){let a=wds(n),o=[{generator:sbl,extension:""}];return a.createCmdFile&&o.push({generator:ibl,extension:Yyl}),a.createPwshFile&&o.push({generator:obl,extension:".ps1"}),Promise.all(o.map(l=>nbl(e,t+l.extension,r,l.generator,a)))}function $yl(e,t){return Kyl(e,t)}function ebl(e,t){return abl(e,t)}async function tbl(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(Qyl);if(!a){let o=WO.extname(e).toLowerCase();return{program:Jyl.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!qJr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${rbl()}`))return{program:null,additionalArgs:""};throw r}}function rbl(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(WO.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function nbl(e,t,r,n,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",l=[r.additionalArgs,o].filter(A=>A).join(" ");return a=Object.assign({},a,{prog:r.program,args:l}),await $yl(t,a),await a.fs_.writeFile(t,n(e,t,a),"utf8"),ebl(t,a)}function ibl(e,t,r){let a=WO.relative(WO.dirname(t),e).split("/").join("\\"),o=WO.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,l,A=r.prog,f=r.args||"",I=o7e(r.nodePath).win32,C=o7e(r.prependToPath).win32;A?A==="node"&&r.nodeExecPath?(A=`"${r.nodeExecPath}"`,a=o):(l=`"%~dp0\\${A}.exe"`,a=o):(A=o,f="",a="");let b=r.progArgs?`${r.progArgs.join(" ")} `:"",E=`@SETLOCAL\r +`).join("")}`,{unqualifiedPath:Xt,extensions:xt})}}function Tr(vt,xt,Zr){if(!xt)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let qt=Xyl({name:vt,base:eB.pathToFileURL(Rc.fromPortablePath(xt)),conditions:Zr.conditions??ne,readFileSyncFn:je});if(qt instanceof URL)return Yt(Rc.toPortablePath(eB.fileURLToPath(qt)),{extensions:Zr.extensions});if(qt.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Nr(qt,xt,Zr)}function Nr(vt,xt,Zr={}){try{if(vt.startsWith("#"))return Tr(vt,xt,Zr);let{considerBuiltins:qt,extensions:Xt,conditions:lr}=Zr,cr=St(vt,xt,{considerBuiltins:qt});if(vt==="pnpapi")return cr;if(cr===null)return null;let Ar=()=>xt!==null?be(xt):!1,qr=(!qt||!n0e.isBuiltin(vt))&&!Ar()?At(vt,cr,lr,xt):cr;return Yt(qr,{extensions:Xt})}catch(qt){throw Object.hasOwn(qt,"pnpCode")&&Object.assign(qt.data,{request:p6(vt),issuer:xt&&p6(xt)}),qt}}function er(vt){let xt=gh.normalize(vt),Zr=hGt.resolveVirtual(xt);return Zr!==xt?Zr:null}return{VERSIONS:Se,topLevel:De,getLocator:(vt,xt)=>Array.isArray(xt)?{name:xt[0],reference:xt[1]}:{name:vt,reference:xt},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let vt=[];for(let[xt,Zr]of E)for(let qt of Zr.keys())xt!==null&&qt!==null&&vt.push({name:xt,reference:qt});return vt},getPackageInformation:vt=>{let xt=k(vt);if(xt===null)return null;let Zr=Rc.fromPortablePath(xt.packageLocation);return{...xt,packageLocation:Zr}},findPackageLocator:vt=>Me(Rc.toPortablePath(vt)),resolveToUnqualified:Q("resolveToUnqualified",(vt,xt,Zr)=>{let qt=xt!==null?Rc.toPortablePath(xt):null,Xt=St(Rc.toPortablePath(vt),qt,Zr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveUnqualified:Q("resolveUnqualified",(vt,xt)=>Rc.fromPortablePath(Yt(Rc.toPortablePath(vt),xt))),resolveRequest:Q("resolveRequest",(vt,xt,Zr)=>{let qt=xt!==null?Rc.toPortablePath(xt):null,Xt=Nr(Rc.toPortablePath(vt),qt,Zr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveVirtual:Q("resolveVirtual",vt=>{let xt=er(Rc.toPortablePath(vt));return xt!==null?Rc.fromPortablePath(xt):null})}}async function ebl(e,{fakeFs:t,pnpapiResolution:r}){let n=await t.readFilePromise(e,"utf8");return Cds(n,{basePath:rds.dirname(e),fakeFs:t,pnpapiResolution:r})}function Cds(e,{basePath:t,fakeFs:r,pnpapiResolution:n}){let a=JSON.parse(e),o=Ads(a,{basePath:t});return mds(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:n})}var tbl=(e,t,r)=>{let n=OJr(e),a=Ads(n,{basePath:t}),o=Rc.join(t,fGt.pnpCjs);return mds(a,{fakeFs:r,pnpapiResolution:o})},DJr,rbl=()=>(typeof DJr>"u"&&(DJr=nds.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),DJr);z4.LinkType=ids;z4.generateInlinedScript=Tyl;z4.generateLoader=MJr;z4.generatePrettyJson=gds;z4.generateSplitScript=Ryl;z4.getESMLoaderTemplate=rbl;z4.hydratePnpFile=ebl;z4.hydratePnpSource=Cds;z4.makeRuntimeApi=tbl});var QJr=H(hGe=>{"use strict";Object.defineProperty(hGe,"__esModule",{value:!0});hGe.checkManifestCompatibility=_ds;hGe.extractBuildRequest=ibl;hGe.getExtractHint=obl;hGe.hasBindingGyp=abl;var XV=yn(),nbl=zs();function _ds(e){return XV.structUtils.isPackageCompatible(e,XV.nodeUtils.getArchitectureSet())}function ibl(e,t,r,{configuration:n}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:XV.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:XV.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==XV.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.SOFT_LINK_BUILD,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(XV.MessageName.BUILD_DISABLED,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!n.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.DISABLED_BUILD_SCRIPTS,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but all build scripts have been disabled.`)}:_ds(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.INCOMPATIBLE_ARCHITECTURE,`${XV.structUtils.prettyLocator(n,e)} The ${XV.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var sbl=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function obl(e){return e.packageFs.getExtractHint({relevantExtensions:sbl})}function abl(e){let t=nbl.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var EGt=H(XJr=>{"use strict";Object.defineProperty(XJr,"__esModule",{value:!0});XJr.getUnpluggedPath=ubl;var cbl=yn(),lbl=zs();function ubl(e,{configuration:t}){return lbl.ppath.resolve(t.get("pnpUnpluggedFolder"),cbl.structUtils.slugifyLocator(e))}});var jJr=H(mGe=>{"use strict";Object.defineProperty(mGe,"__esModule",{value:!0});mGe.PnpInstaller=mGe.PnpLinker=void 0;var bds=(Pa(),vi(Va)),cC=yn(),Sue=yn(),Pm=zs(),JJr=YJr(),yds=($c(),vi(rg)),SGt=CGe(),vGt=bds.__importStar(QJr()),gbl=bds.__importStar(EGt()),Abl=new Set([cC.structUtils.makeIdent(null,"open").identHash,cC.structUtils.makeIdent(null,"opn").identHash]),KJr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let n=(0,SGt.getPnpPath)(r.project).cjs;if(!Pm.xfs.existsSync(n))throw new yds.UsageError(`The project in ${cC.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,cC.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=cC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>cC.miscUtils.dynamicRequire(n,{cachingStrategy:cC.miscUtils.CachingStrategy.FsTime})),o={name:cC.structUtils.stringifyIdent(t),reference:t.reference},l=a.getPackageInformation(o);if(!l)throw new yds.UsageError(`Couldn't find ${cC.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return Pm.npath.toPortablePath(l.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=(0,SGt.getPnpPath)(r.project).cjs;if(!Pm.xfs.existsSync(n))return null;let o=cC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>cC.miscUtils.dynamicRequire(n,{cachingStrategy:cC.miscUtils.CachingStrategy.FsTime})).findPackageLocator(Pm.npath.fromPortablePath(t));return o?cC.structUtils.makeLocator(cC.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new BGt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};mGe.PnpLinker=KJr;var BGt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new cC.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,n){let a=cC.structUtils.stringifyIdent(t),o=t.reference,l=!!this.opts.project.tryWorkspaceByLocator(t),A=cC.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!A,I=!f&&!l,C=!f&&t.linkType!==Sue.LinkType.SOFT,b,E;if(I||C){let ne=A?cC.structUtils.devirtualizeLocator(t):t;b=this.customData.store.get(ne.locatorHash),typeof b>"u"&&(b=await dbl(r),t.linkType===Sue.LinkType.HARD&&this.customData.store.set(ne.locatorHash,b)),b.manifest.type==="module"&&(this.isESMLoaderRequired=!0),E=this.opts.project.getDependencyMeta(ne,t.version)}let N=I?vGt.extractBuildRequest(t,b,E,{configuration:this.opts.project.configuration}):null,B=C?await this.unplugPackageIfNeeded(t,b,r,E,n):r.packageFs;if(Pm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let F=Pm.ppath.resolve(B.getRealPath(),r.prefixPath),Q=UJr(this.opts.project.cwd,F),X=new Map,ae=new Set;if(A){for(let ne of t.peerDependencies.values())X.set(cC.structUtils.stringifyIdent(ne),null),ae.add(cC.structUtils.stringifyIdent(ne));if(!l){let ne=cC.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ne.locatorHash,{location:UJr(this.opts.project.cwd,Pm.VirtualFS.resolveVirtual(F)),locator:ne})}}return cC.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:Q,packageDependencies:X,packagePeers:ae,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:F,buildRequest:N}}async attachInternalDependencies(t,r){let n=this.getPackageInformation(t);for(let[a,o]of r){let l=cC.structUtils.areIdentsEqual(a,o)?o.reference:[cC.structUtils.stringifyIdent(o),o.reference];n.packageDependencies.set(cC.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){for(let n of r)this.getDiskInformation(n).packageDependencies.set(cC.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,SGt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await Pm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await Pm.xfs.removePromise(t.cjs),await Pm.xfs.removePromise(t.data),await Pm.xfs.removePromise(t.esmLoader),await Pm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:b,location:E}of this.virtualTemplates.values())cC.miscUtils.getMapWithDefault(this.packageRegistry,cC.structUtils.stringifyIdent(b)).set(b.reference,{packageLocation:E,packageDependencies:new Map,packagePeers:new Set,linkType:Sue.LinkType.SOFT,discardFromLookup:!1});let r=this.opts.project.configuration.get("pnpFallbackMode"),n=this.opts.project.workspaces.map(({anchoredLocator:b})=>({name:cC.structUtils.stringifyIdent(b),reference:b.reference})),a=r!=="none",o=[],l=new Map,A=cC.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,I=this.opts.project.configuration.get("pnpShebang"),C=this.opts.project.configuration.get("pnpZipBackend");if(r==="dependencies-only")for(let b of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(b)&&o.push({name:cC.structUtils.stringifyIdent(b),reference:b.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:n,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:l,ignorePattern:A,pnpZipBackend:C,packageRegistry:f,shebang:I}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,SGt.getPnpPath)(this.opts.project),n=await this.locateNodeModules(t.ignorePattern);if(n.length>0){this.opts.report.reportWarning(Sue.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await Pm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,JJr.generateInlinedScript)(t);await Pm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await Pm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:l}=(0,JJr.generateSplitScript)(t);await Pm.xfs.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await Pm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(Sue.MessageName.EXPERIMENTAL,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await Pm.xfs.changeFilePromise(r.esmLoader,(0,JJr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await Pm.xfs.removePromise(a);else for(let o of await Pm.xfs.readdirPromise(a)){let l=Pm.ppath.resolve(a,o);this.unpluggedPaths.has(l)||await Pm.xfs.removePromise(l)}}async locateNodeModules(t){let r=[],n=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=Pm.ppath.join(a.cwd,"node_modules");if(n&&n.test(Pm.ppath.relative(this.opts.project.cwd,a.cwd))||!Pm.xfs.existsSync(o))continue;let l=await Pm.xfs.readdirPromise(o,{withFileTypes:!0}),A=l.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(A.length===l.length)r.push(o);else for(let f of A)r.push(Pm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,n,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,n,o):n.packageFs}shouldBeUnplugged(t,r,n){return typeof n.unplugged<"u"?n.unplugged:Abl.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(vGt.extractBuildRequest(t,r,n,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,n){let a=gbl.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new Pm.AliasFS(a,{baseFs:r.packageFs,pathUtils:Pm.ppath}):(this.unpluggedPaths.add(a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=Pm.ppath.join(a,r.prefixPath,".ready");await Pm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await Pm.xfs.mkdirPromise(a,{recursive:!0}),await Pm.xfs.copyPromise(a,Pm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await Pm.xfs.writeFilePromise(o,""))})),new Pm.CwdFS(a))}getPackageInformation(t){let r=cC.structUtils.stringifyIdent(t),n=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${cC.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(n);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${cC.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=cC.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),n=UJr(this.opts.project.cwd,t);return cC.miscUtils.getFactoryWithDefault(r,n,()=>({packageLocation:n,packageDependencies:new Map,packagePeers:new Set,linkType:Sue.LinkType.SOFT,discardFromLookup:!1}))}};mGe.PnpInstaller=BGt;function UJr(e,t){let r=Pm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function dbl(e){let t=await Sue.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Sue.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let n of t.scripts.keys())r.has(n)||t.scripts.delete(n);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:vGt.getExtractHint(e),hasBindingGyp:vGt.hasBindingGyp(e)}}}});var vds=H(zJr=>{"use strict";Object.defineProperty(zJr,"__esModule",{value:!0});var Sds=(Pa(),vi(Va)),Eds=el(),kH=yn(),xH=yn(),Ote=($c(),vi(rg)),pbl=Sds.__importDefault(Ek()),fbl=Sds.__importStar(EGt()),a7e=class extends Eds.BaseCommand{constructor(){super(...arguments),this.all=Ote.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=Ote.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=Ote.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=Ote.Option.Rest()}async execute(){let t=await kH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kH.Project.find(t,this.context.cwd),a=await kH.Cache.find(t);if(!n)throw new Eds.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new Ote.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),l=this.patterns.map(E=>{let N=xH.structUtils.parseDescriptor(E),B=N.range!=="unknown"?N:xH.structUtils.makeDescriptor(N,"*");if(!xH.semverUtils.validRange(B.range))throw new Ote.UsageError(`The range of the descriptor patterns must be a valid semver range (${xH.structUtils.prettyDescriptor(t,B)})`);return F=>{let Q=xH.structUtils.stringifyIdent(F);return!pbl.default.isMatch(Q,xH.structUtils.stringifyIdent(B))||F.version&&!xH.semverUtils.satisfiesWithPrereleases(F.version,B.range)?!1:(o.delete(E),!0)}}),A=()=>{let E=[];for(let N of r.storedPackages.values())!r.tryWorkspaceByLocator(N)&&!xH.structUtils.isVirtualLocator(N)&&l.some(B=>B(N))&&E.push(N);return E},f=E=>{let N=new Set,B=[],F=(Q,X)=>{if(N.has(Q.locatorHash))return;let ae=!!r.tryWorkspaceByLocator(Q);if(!(X>0&&!this.recursive&&ae)&&(N.add(Q.locatorHash),!r.tryWorkspaceByLocator(Q)&&l.some(ne=>ne(Q))&&B.push(Q),!(X>0&&!this.recursive)))for(let ne of Q.dependencies.values()){let ce=r.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");F(fe,X+1)}};for(let Q of E)F(Q.anchoredPackage,0);return B},I,C;if(this.all&&this.recursive?(I=A(),C="the project"):this.all?(I=f(r.workspaces),C="any workspace"):(I=f([n]),C="this workspace"),o.size>1)throw new Ote.UsageError(`Patterns ${kH.formatUtils.prettyList(t,o,kH.formatUtils.Type.CODE)} don't match any packages referenced by ${C}`);if(o.size>0)throw new Ote.UsageError(`Pattern ${kH.formatUtils.prettyList(t,o,kH.formatUtils.Type.CODE)} doesn't match any packages referenced by ${C}`);I=kH.miscUtils.sortMap(I,E=>xH.structUtils.stringifyLocator(E));let b=await kH.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async E=>{for(let N of I){let B=N.version??"unknown",F=r.topLevelWorkspace.manifest.ensureDependencyMeta(xH.structUtils.makeDescriptor(N,B));F.unplugged=!0,E.reportInfo(kH.MessageName.UNNAMED,`Will unpack ${xH.structUtils.prettyLocator(t,N)} to ${kH.formatUtils.pretty(t,fbl.getUnpluggedPath(N,{configuration:t}),kH.formatUtils.Type.PATH)}`),E.reportJson({locator:xH.structUtils.stringifyLocator(N),version:B})}await r.topLevelWorkspace.persistManifest(),this.json||E.reportSeparator()});return b.hasErrors()?b.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};a7e.paths=[["unplug"]];a7e.usage=Ote.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});zJr.default=a7e});var CGe=H(bT=>{"use strict";Object.defineProperty(bT,"__esModule",{value:!0});bT.PnpLinker=bT.PnpInstaller=bT.quotePathIfNeeded=bT.getPnpPath=bT.pnpUtils=bT.jsInstallUtils=bT.UnplugCommand=void 0;var qJr=(Pa(),vi(Va)),JV=yn(),f6=zs(),Ibl=wt("url"),hbl=jJr(),Bds=qJr.__importDefault(vds());bT.UnplugCommand=Bds.default;var mbl=qJr.__importStar(QJr());bT.jsInstallUtils=mbl;var Cbl=qJr.__importStar(EGt());bT.pnpUtils=Cbl;var _bl=e=>({cjs:f6.ppath.join(e.cwd,f6.Filename.pnpCjs),data:f6.ppath.join(e.cwd,f6.Filename.pnpData),esmLoader:f6.ppath.join(e.cwd,f6.Filename.pnpEsmLoader)});bT.getPnpPath=_bl;var ybl=e=>/\s/.test(e)?JSON.stringify(e):e;bT.quotePathIfNeeded=ybl;async function bbl(e,t,r){let n=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(n," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let l=(0,bT.getPnpPath)(e),A=`--require ${(0,bT.quotePathIfNeeded)(f6.npath.fromPortablePath(l.cjs))}`;f6.xfs.existsSync(l.esmLoader)&&(A=`${A} --experimental-loader ${(0,Ibl.pathToFileURL)(f6.npath.fromPortablePath(l.esmLoader)).href}`),f6.xfs.existsSync(l.cjs)&&(t.NODE_OPTIONS=o?`${A} ${o}`:A)}async function Ebl(e,t){let r=(0,bT.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var Sbl={hooks:{populateYarnPaths:Ebl,setupScriptEnvironment:bbl},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:JV.SettingsType.STRING,default:"pnp"},minizip:{description:"Whether Yarn should use minizip to extract archives",type:JV.SettingsType.BOOLEAN,default:!1},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:JV.SettingsType.STRING,values:[JV.WindowsLinkType.JUNCTIONS,JV.WindowsLinkType.SYMLINKS],default:JV.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:JV.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:JV.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:JV.SettingsType.STRING,default:[],isArray:!0},pnpZipBackend:{description:"Whether to use the experimental js implementation for the ZipFS",type:JV.SettingsType.STRING,values:["libzip","js"],default:"libzip"},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:JV.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:JV.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:JV.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:JV.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[hbl.PnpLinker],commands:[Bds.default]},wds=jJr();Object.defineProperty(bT,"PnpInstaller",{enumerable:!0,get:function(){return wds.PnpInstaller}});Object.defineProperty(bT,"PnpLinker",{enumerable:!0,get:function(){return wds.PnpLinker}});bT.default=Sbl});var Tds=H(($Jr,eUr)=>{(function(e){$Jr&&typeof $Jr=="object"&&typeof eUr<"u"?eUr.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var Dds=H((Xng,Nds)=>{"use strict";var vbl=wt("path"),Rds;process.env.PATHEXT&&(Rds=process.env.PATHEXT.split(vbl.delimiter).find(e=>e.toUpperCase()===".CMD"));Nds.exports=Rds||".cmd"});var xds=H((Jng,kds)=>{var vue=wt("constants"),Bbl=process.cwd,wGt=null,wbl=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return wGt||(wGt=Bbl.call(process)),wGt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(tUr=process.chdir,process.chdir=function(e){wGt=null,tUr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,tUr));var tUr;kds.exports=Tbl;function Tbl(e){vue.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=n(e.chmod),e.fchmod=n(e.fchmod),e.lchmod=n(e.lchmod),e.chownSync=l(e.chownSync),e.fchownSync=l(e.fchownSync),e.lchownSync=l(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=A(e.stat),e.fstat=A(e.fstat),e.lstat=A(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(C,b,E){E&&process.nextTick(E)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(C,b,E,N){N&&process.nextTick(N)},e.lchownSync=function(){}),wbl==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(C){function b(E,N,B){var F=Date.now(),Q=0;C(E,N,function X(ae){if(ae&&(ae.code==="EACCES"||ae.code==="EPERM"||ae.code==="EBUSY")&&Date.now()-F<6e4){setTimeout(function(){e.stat(N,function(ne,ce){ne&&ne.code==="ENOENT"?C(E,N,X):B(ae)})},Q),Q<100&&(Q+=10);return}B&&B(ae)})}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.rename)),e.read=typeof e.read!="function"?e.read:function(C){function b(E,N,B,F,Q,X){var ae;if(X&&typeof X=="function"){var ne=0;ae=function(ce,fe,ue){if(ce&&ce.code==="EAGAIN"&&ne<10)return ne++,C.call(e,E,N,B,F,Q,ae);X.apply(this,arguments)}}return C.call(e,E,N,B,F,Q,ae)}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(C){return function(b,E,N,B,F){for(var Q=0;;)try{return C.call(e,b,E,N,B,F)}catch(X){if(X.code==="EAGAIN"&&Q<10){Q++;continue}throw X}}}(e.readSync);function t(C){C.lchmod=function(b,E,N){C.open(b,vue.O_WRONLY|vue.O_SYMLINK,E,function(B,F){if(B){N&&N(B);return}C.fchmod(F,E,function(Q){C.close(F,function(X){N&&N(Q||X)})})})},C.lchmodSync=function(b,E){var N=C.openSync(b,vue.O_WRONLY|vue.O_SYMLINK,E),B=!0,F;try{F=C.fchmodSync(N,E),B=!1}finally{if(B)try{C.closeSync(N)}catch{}else C.closeSync(N)}return F}}function r(C){vue.hasOwnProperty("O_SYMLINK")&&C.futimes?(C.lutimes=function(b,E,N,B){C.open(b,vue.O_SYMLINK,function(F,Q){if(F){B&&B(F);return}C.futimes(Q,E,N,function(X){C.close(Q,function(ae){B&&B(X||ae)})})})},C.lutimesSync=function(b,E,N){var B=C.openSync(b,vue.O_SYMLINK),F,Q=!0;try{F=C.futimesSync(B,E,N),Q=!1}finally{if(Q)try{C.closeSync(B)}catch{}else C.closeSync(B)}return F}):C.futimes&&(C.lutimes=function(b,E,N,B){B&&process.nextTick(B)},C.lutimesSync=function(){})}function n(C){return C&&function(b,E,N){return C.call(e,b,E,function(B){I(B)&&(B=null),N&&N.apply(this,arguments)})}}function a(C){return C&&function(b,E){try{return C.call(e,b,E)}catch(N){if(!I(N))throw N}}}function o(C){return C&&function(b,E,N,B){return C.call(e,b,E,N,function(F){I(F)&&(F=null),B&&B.apply(this,arguments)})}}function l(C){return C&&function(b,E,N){try{return C.call(e,b,E,N)}catch(B){if(!I(B))throw B}}}function A(C){return C&&function(b,E,N){typeof E=="function"&&(N=E,E=null);function B(F,Q){Q&&(Q.uid<0&&(Q.uid+=4294967296),Q.gid<0&&(Q.gid+=4294967296)),N&&N.apply(this,arguments)}return E?C.call(e,b,E,B):C.call(e,b,B)}}function f(C){return C&&function(b,E){var N=E?C.call(e,b,E):C.call(e,b);return N&&(N.uid<0&&(N.uid+=4294967296),N.gid<0&&(N.gid+=4294967296)),N}}function I(C){if(!C||C.code==="ENOSYS")return!0;var b=!process.getuid||process.getuid()!==0;return!!(b&&(C.code==="EINVAL"||C.code==="EPERM"))}}});var Zds=H((Ung,Fds)=>{var Gds=wt("stream").Stream;Fds.exports=Rbl;function Rbl(e){return{ReadStream:t,WriteStream:r};function t(n,a){if(!(this instanceof t))return new t(n,a);Gds.call(this);var o=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var l=Object.keys(a),A=0,f=l.length;Athis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(C,b){if(C){o.emit("error",C),o.readable=!1;return}o.fd=b,o.emit("open",b),o._read()})}function r(n,a){if(!(this instanceof r))return new r(n,a);Gds.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),l=0,A=o.length;l= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var Vds=H((Kng,Lds)=>{"use strict";Lds.exports=Dbl;var Nbl=Object.getPrototypeOf||function(e){return e.__proto__};function Dbl(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:Nbl(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var Mds=H((jng,iUr)=>{var WS=wt("fs"),kbl=xds(),xbl=Zds(),Gbl=Vds(),TGt=wt("util"),dx,NGt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(dx=Symbol.for("graceful-fs.queue"),NGt=Symbol.for("graceful-fs.previous")):(dx="___graceful-fs.queue",NGt="___graceful-fs.previous");function Fbl(){}function Ods(e,t){Object.defineProperty(e,dx,{get:function(){return t}})}var o0e=Fbl;TGt.debuglog?o0e=TGt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(o0e=function(){var e=TGt.format.apply(TGt,arguments);e="GFS4: "+e.split(/\n/).join(` +GFS4: `),console.error(e)});WS[dx]||(Pds=global[dx]||[],Ods(WS,Pds),WS.close=function(e){function t(r,n){return e.call(WS,r,function(a){a||Wds(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(t,NGt,{value:e}),t}(WS.close),WS.closeSync=function(e){function t(r){e.apply(WS,arguments),Wds()}return Object.defineProperty(t,NGt,{value:e}),t}(WS.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){o0e(WS[dx]),wt("assert").equal(WS[dx].length,0)}));var Pds;global[dx]||Ods(global,WS[dx]);iUr.exports=rUr(Gbl(WS));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!WS.__patched&&(iUr.exports=rUr(WS),WS.__patched=!0);function rUr(e){kbl(e),e.gracefulify=rUr,e.createReadStream=fe,e.createWriteStream=ue;var t=e.readFile;e.readFile=r;function r(Se,De,k){return typeof De=="function"&&(k=De,De=null),et(Se,De,k);function et(ct,Me,je,St){return t(ct,Me,function(At){At&&(At.code==="EMFILE"||At.code==="ENFILE")?_Ge([et,[ct,Me,je],At,St||Date.now(),Date.now()]):typeof je=="function"&&je.apply(this,arguments)})}}var n=e.writeFile;e.writeFile=a;function a(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return n(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?_Ge([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=l);function l(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return o(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?_Ge([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var A=e.copyFile;A&&(e.copyFile=f);function f(Se,De,k,et){return typeof k=="function"&&(et=k,k=0),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return A(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?_Ge([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var I=e.readdir;e.readdir=b;var C=/^v[0-5]\./;function b(Se,De,k){typeof De=="function"&&(k=De,De=null);var et=C.test(process.version)?function(je,St,At,Yt){return I(je,ct(je,St,At,Yt))}:function(je,St,At,Yt){return I(je,St,ct(je,St,At,Yt))};return et(Se,De,k);function ct(Me,je,St,At){return function(Yt,Tr){Yt&&(Yt.code==="EMFILE"||Yt.code==="ENFILE")?_Ge([et,[Me,je,St],Yt,At||Date.now(),Date.now()]):(Tr&&Tr.sort&&Tr.sort(),typeof St=="function"&&St.call(this,Yt,Tr))}}}if(process.version.substr(0,4)==="v0.8"){var E=xbl(e);X=E.ReadStream,ne=E.WriteStream}var N=e.ReadStream;N&&(X.prototype=Object.create(N.prototype),X.prototype.open=ae);var B=e.WriteStream;B&&(ne.prototype=Object.create(B.prototype),ne.prototype.open=ce),Object.defineProperty(e,"ReadStream",{get:function(){return X},set:function(Se){X=Se},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ne},set:function(Se){ne=Se},enumerable:!0,configurable:!0});var F=X;Object.defineProperty(e,"FileReadStream",{get:function(){return F},set:function(Se){F=Se},enumerable:!0,configurable:!0});var Q=ne;Object.defineProperty(e,"FileWriteStream",{get:function(){return Q},set:function(Se){Q=Se},enumerable:!0,configurable:!0});function X(Se,De){return this instanceof X?(N.apply(this,arguments),this):X.apply(Object.create(X.prototype),arguments)}function ae(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.autoClose&&Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k),Se.read())})}function ne(Se,De){return this instanceof ne?(B.apply(this,arguments),this):ne.apply(Object.create(ne.prototype),arguments)}function ce(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k))})}function fe(Se,De){return new e.ReadStream(Se,De)}function ue(Se,De){return new e.WriteStream(Se,De)}var de=e.open;e.open=be;function be(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return de(Me,je,St,function(Tr,Nr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?_Ge([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}return e}function _Ge(e){o0e("ENQUEUE",e[0].name,e[1]),WS[dx].push(e),nUr()}var RGt;function Wds(){for(var e=Date.now(),t=0;t2&&(WS[dx][t][3]=e,WS[dx][t][4]=e);nUr()}function nUr(){if(clearTimeout(RGt),RGt=void 0,WS[dx].length!==0){var e=WS[dx].shift(),t=e[0],r=e[1],n=e[2],a=e[3],o=e[4];if(a===void 0)o0e("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){o0e("TIMEOUT",t.name,r);var l=r.pop();typeof l=="function"&&l.call(null,n)}else{var A=Date.now()-o,f=Math.max(o-a,1),I=Math.min(f*1.2,100);A>=I?(o0e("RETRY",t.name,r),t.apply(null,r.concat([a]))):WS[dx].push(e)}RGt===void 0&&(RGt=setTimeout(nUr,0))}}});var Qds=H((zng,Yds)=>{"use strict";oUr.ifExists=Wbl;var yGe=wt("util"),WO=wt("path"),sUr=Tds(),Zbl=Dds(),Lbl=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,Vbl={createPwshFile:!0,createCmdFile:sUr(),fs:Mds()},Pbl=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function Hds(e){let t={...Vbl,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,yGe.promisify)(r.chmod):async()=>{},mkdir:(0,yGe.promisify)(r.mkdir),readFile:(0,yGe.promisify)(r.readFile),stat:(0,yGe.promisify)(r.stat),unlink:(0,yGe.promisify)(r.unlink),writeFile:(0,yGe.promisify)(r.writeFile)},t}async function oUr(e,t,r){let n=Hds(r);await Mbl(e,t,n)}function Wbl(e,t,r){return oUr(e,t,r).catch(()=>{})}function Obl(e,t){return t.fs_.unlink(e).catch(()=>{})}async function Mbl(e,t,r){let n=await Jbl(e,r);return await Hbl(t,r),Ybl(e,t,n,r)}function Hbl(e,t){return t.fs_.mkdir(WO.dirname(e),{recursive:!0})}function Ybl(e,t,r,n){let a=Hds(n),o=[{generator:zbl,extension:""}];return a.createCmdFile&&o.push({generator:jbl,extension:Zbl}),a.createPwshFile&&o.push({generator:qbl,extension:".ps1"}),Promise.all(o.map(l=>Kbl(e,t+l.extension,r,l.generator,a)))}function Qbl(e,t){return Obl(e,t)}function Xbl(e,t){return $bl(e,t)}async function Jbl(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(Lbl);if(!a){let o=WO.extname(e).toLowerCase();return{program:Pbl.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!sUr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${Ubl()}`))return{program:null,additionalArgs:""};throw r}}function Ubl(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(WO.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function Kbl(e,t,r,n,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",l=[r.additionalArgs,o].filter(A=>A).join(" ");return a=Object.assign({},a,{prog:r.program,args:l}),await Qbl(t,a),await a.fs_.writeFile(t,n(e,t,a),"utf8"),Xbl(t,a)}function jbl(e,t,r){let a=WO.relative(WO.dirname(t),e).split("/").join("\\"),o=WO.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,l,A=r.prog,f=r.args||"",I=c7e(r.nodePath).win32,C=c7e(r.prependToPath).win32;A?A==="node"&&r.nodeExecPath?(A=`"${r.nodeExecPath}"`,a=o):(l=`"%~dp0\\${A}.exe"`,a=o):(A=o,f="",a="");let b=r.progArgs?`${r.progArgs.join(" ")} `:"",E=`@SETLOCAL\r `;return C&&(E+=`@SET "PATH=${C}:%PATH%"\r `),I&&(E+=`@IF NOT DEFINED NODE_PATH (\r @SET "NODE_PATH=${I}"\r @@ -1619,7 +1619,7 @@ GFS4: `),console.error(e)});WS[dx]||(Eds=global[dx]||[],vds(WS,Eds),WS.close=fun ${A} ${f} ${a} ${b}%*\r )\r `:E+=`@${A} ${f} ${a} ${b}%*\r -`,E}function sbl(e,t,r){let n=WO.relative(WO.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;n=n.split("\\").join("/");let l=WO.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,A=r.args||"",f=o7e(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,n=l):(o=`"$basedir/${r.prog}"`,n=l):(a=l,A="",n="");let I=r.progArgs?`${r.progArgs.join(" ")} `:"",C=`#!/bin/sh +`,E}function zbl(e,t,r){let n=WO.relative(WO.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;n=n.split("\\").join("/");let l=WO.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,A=r.args||"",f=c7e(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,n=l):(o=`"$basedir/${r.prog}"`,n=l):(a=l,A="",n="");let I=r.progArgs?`${r.progArgs.join(" ")} `:"",C=`#!/bin/sh basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") case \`uname\` in @@ -1639,7 +1639,7 @@ else fi `:C+=`${a} ${A} ${n} ${I}"$@" exit $? -`,C}function obl(e,t,r){let n=WO.relative(WO.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,l;n=n.split("\\").join("/");let A=WO.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,f=r.args||"",I=o7e(r.nodePath),C=I.win32,b=I.posix,E=o7e(r.prependToPath),N=E.win32,B=E.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,n=A):(l=`"$basedir/${r.prog}$exe"`,n=A):(o=A,f="",n="");let F=r.progArgs?`${r.progArgs.join(" ")} `:"",Q=`#!/usr/bin/env pwsh +`,C}function qbl(e,t,r){let n=WO.relative(WO.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,l;n=n.split("\\").join("/");let A=WO.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,f=r.args||"",I=c7e(r.nodePath),C=I.win32,b=I.posix,E=c7e(r.prependToPath),N=E.win32,B=E.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,n=A):(l=`"$basedir/${r.prog}$exe"`,n=A):(o=A,f="",n="");let F=r.progArgs?`${r.progArgs.join(" ")} `:"",Q=`#!/usr/bin/env pwsh $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent $exe="" @@ -1696,11 +1696,11 @@ if ($MyInvocation.ExpectingInput) { ${C?`$env:NODE_PATH=$env_node_path `:""}${N?`$env:PATH=$env_path `:""}exit $LASTEXITCODE -`,Q}function abl(e,t){return t.fs_.chmod(e,493)}function o7e(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(WO.delimiter):Array.from(e),r={};for(let n=0;n`/mnt/${A.toLowerCase()}`):t[n];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[n]={win32:a,posix:o}}return r}Tds.exports=$Jr});var aUr=H(o0e=>{"use strict";Object.defineProperty(o0e,"__esModule",{value:!0});o0e.NodeModulesLinker=o0e.NodeModulesMode=void 0;o0e.getGlobalHardlinksStore=Ods;var sUr=(Pa(),vi(Va)),rp=Sn(),xds=Sn(),q4=Sn(),tUr=Sn(),Fu=ro(),Op=ro(),cbl=zK(),lbl=e7e(),eUr=e7e(),ubl=TW(),Gds=hGe(),gbl=sUr.__importDefault(Rds()),Nds=($c(),vi(rg)),Fds=sUr.__importDefault(wt("crypto")),Abl=sUr.__importDefault(wt("fs")),Zds=1,V2="node_modules",wGt=".bin",Lds=".yarn-state.yml",dbl=1e3,OO;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(OO||(o0e.NodeModulesMode=OO={}));var rUr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let n=r.project.tryWorkspaceByLocator(t);if(n)return n.cwd;let a=await rp.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await iUr(r.project,{unrollAliases:!0}));if(a===null)throw new Nds.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(rp.structUtils.stringifyLocator(t));if(!o){let f=new Nds.UsageError(`Couldn't find ${rp.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let l=o.locations.sort((f,I)=>f.split(Fu.ppath.sep).length-I.split(Fu.ppath.sep).length),A=Fu.ppath.join(r.project.configuration.startingCwd,V2);return l.find(f=>Fu.ppath.contains(A,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=await rp.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await iUr(r.project,{unrollAliases:!0}));if(n===null)return null;let{locationRoot:a,segments:o}=TGt(Fu.ppath.resolve(t),{skipPrefix:r.project.cwd}),l=n.locationTree.get(a);if(!l)return null;let A=l.locator;for(let f of o){if(l=l.children.get(f),!l)break;A=l.locator||A}return rp.structUtils.parseLocator(A)}makeInstaller(t){return new nUr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};o0e.NodeModulesLinker=rUr;var nUr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let n=Fu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await pbl(t,r),t.linkType===q4.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!rp.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,l=new Set;o.has(rp.structUtils.stringifyIdent(t))||o.set(rp.structUtils.stringifyIdent(t),t.reference);let A=t;if(rp.structUtils.isVirtualLocator(t)){A=rp.structUtils.devirtualizeLocator(t);for(let C of t.peerDependencies.values())o.set(rp.structUtils.stringifyIdent(C),null),l.add(rp.structUtils.stringifyIdent(C))}let f={packageLocation:`${Fu.npath.fromPortablePath(n)}/`,packageDependencies:o,packagePeers:l,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let I=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(A.locatorHash,I),{packageLocation:n,buildRequest:null}}async attachInternalDependencies(t,r){let n=this.localStore.get(t.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let l=rp.structUtils.areIdentsEqual(a,o)?o.reference:[rp.structUtils.stringifyIdent(o),o.reference];n.pnpNode.packageDependencies.set(rp.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Op.VirtualFS({baseFs:new cbl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await iUr(this.opts.project),n=this.opts.project.configuration.get("nmMode");(r===null||n!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:n,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmHoistingLimits");try{N=rp.miscUtils.validateEnum(eUr.NodeModulesHoistingLimits,E.manifest.installConfig?.hoistingLimits??N)}catch{let B=rp.structUtils.prettyWorkspace(this.opts.project.configuration,E);this.opts.report.reportWarning(tUr.MessageName.INVALID_MANIFEST,`${B}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(eUr.NodeModulesHoistingLimits).join(", ")}, using default: "${N}"`)}return[E.relativeCwd,N]})),o=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmSelfReferences");return N=E.manifest.installConfig?.selfReferences??N,[E.relativeCwd,N]})),l={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(E,N)=>Array.isArray(N)?{name:N[0],reference:N[1]}:{name:E,reference:N},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(E=>{let N=E.anchoredLocator;return{name:rp.structUtils.stringifyIdent(N),reference:N.reference}}),getPackageInformation:E=>{let N=E.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:rp.structUtils.makeLocator(rp.structUtils.parseIdent(E.name),E.reference),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return B.pnpNode},findPackageLocator:E=>{let N=this.opts.project.tryWorkspaceByCwd(Fu.npath.toPortablePath(E));if(N!==null){let B=N.anchoredLocator;return{name:rp.structUtils.stringifyIdent(B),reference:B.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:E=>Fu.npath.fromPortablePath(Op.VirtualFS.resolveVirtual(Fu.npath.toPortablePath(E)))},{tree:A,errors:f,preserveSymlinksRequired:I}=(0,lbl.buildNodeModulesTree)(l,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!A){for(let{messageName:E,text:N}of f)this.opts.report.reportError(E,N);return}let C=(0,eUr.buildLocatorMap)(A);await ybl(r,C,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async E=>{let N=rp.structUtils.parseLocator(E),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the slot to exist");return B.customPackageData.manifest}});let b=[];for(let[E,N]of C.entries()){if(Wds(E))continue;let B=rp.structUtils.parseLocator(E),F=this.localStore.get(B.locatorHash);if(typeof F>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(F.pkg))continue;let Q=Gds.jsInstallUtils.extractBuildRequest(F.pkg,F.customPackageData,F.dependencyMeta,{configuration:this.opts.project.configuration});Q&&b.push({buildLocations:N.locations,locator:B,buildRequest:Q})}return I&&this.opts.report.reportWarning(tUr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${rp.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",rp.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:b}}};async function pbl(e,t){let r=await rp.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new rp.Manifest,n=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())n.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:Gds.jsInstallUtils.hasBindingGyp(t)}}}async function fbl(e,t,r,n,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will +`,Q}function $bl(e,t){return t.fs_.chmod(e,493)}function c7e(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(WO.delimiter):Array.from(e),r={};for(let n=0;n`/mnt/${A.toLowerCase()}`):t[n];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[n]={win32:a,posix:o}}return r}Yds.exports=oUr});var pUr=H(a0e=>{"use strict";Object.defineProperty(a0e,"__esModule",{value:!0});a0e.NodeModulesLinker=a0e.NodeModulesMode=void 0;a0e.getGlobalHardlinksStore=nps;var AUr=(Pa(),vi(Va)),rp=yn(),Kds=yn(),q4=yn(),cUr=yn(),Fu=zs(),Op=zs(),eEl=zK(),tEl=r7e(),aUr=r7e(),rEl=TW(),jds=CGe(),nEl=AUr.__importDefault(Qds()),Xds=($c(),vi(rg)),zds=AUr.__importDefault(wt("crypto")),iEl=AUr.__importDefault(wt("fs")),qds=1,V2="node_modules",DGt=".bin",$ds=".yarn-state.yml",sEl=1e3,OO;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(OO||(a0e.NodeModulesMode=OO={}));var lUr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let n=r.project.tryWorkspaceByLocator(t);if(n)return n.cwd;let a=await rp.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await gUr(r.project,{unrollAliases:!0}));if(a===null)throw new Xds.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(rp.structUtils.stringifyLocator(t));if(!o){let f=new Xds.UsageError(`Couldn't find ${rp.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let l=o.locations.sort((f,I)=>f.split(Fu.ppath.sep).length-I.split(Fu.ppath.sep).length),A=Fu.ppath.join(r.project.configuration.startingCwd,V2);return l.find(f=>Fu.ppath.contains(A,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=await rp.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await gUr(r.project,{unrollAliases:!0}));if(n===null)return null;let{locationRoot:a,segments:o}=kGt(Fu.ppath.resolve(t),{skipPrefix:r.project.cwd}),l=n.locationTree.get(a);if(!l)return null;let A=l.locator;for(let f of o){if(l=l.children.get(f),!l)break;A=l.locator||A}return rp.structUtils.parseLocator(A)}makeInstaller(t){return new uUr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};a0e.NodeModulesLinker=lUr;var uUr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let n=Fu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await oEl(t,r),t.linkType===q4.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!rp.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,l=new Set;o.has(rp.structUtils.stringifyIdent(t))||o.set(rp.structUtils.stringifyIdent(t),t.reference);let A=t;if(rp.structUtils.isVirtualLocator(t)){A=rp.structUtils.devirtualizeLocator(t);for(let C of t.peerDependencies.values())o.set(rp.structUtils.stringifyIdent(C),null),l.add(rp.structUtils.stringifyIdent(C))}let f={packageLocation:`${Fu.npath.fromPortablePath(n)}/`,packageDependencies:o,packagePeers:l,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let I=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(A.locatorHash,I),{packageLocation:n,buildRequest:null}}async attachInternalDependencies(t,r){let n=this.localStore.get(t.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let l=rp.structUtils.areIdentsEqual(a,o)?o.reference:[rp.structUtils.stringifyIdent(o),o.reference];n.pnpNode.packageDependencies.set(rp.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Op.VirtualFS({baseFs:new eEl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await gUr(this.opts.project),n=this.opts.project.configuration.get("nmMode");(r===null||n!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:n,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmHoistingLimits");try{N=rp.miscUtils.validateEnum(aUr.NodeModulesHoistingLimits,E.manifest.installConfig?.hoistingLimits??N)}catch{let B=rp.structUtils.prettyWorkspace(this.opts.project.configuration,E);this.opts.report.reportWarning(cUr.MessageName.INVALID_MANIFEST,`${B}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(aUr.NodeModulesHoistingLimits).join(", ")}, using default: "${N}"`)}return[E.relativeCwd,N]})),o=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmSelfReferences");return N=E.manifest.installConfig?.selfReferences??N,[E.relativeCwd,N]})),l={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(E,N)=>Array.isArray(N)?{name:N[0],reference:N[1]}:{name:E,reference:N},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(E=>{let N=E.anchoredLocator;return{name:rp.structUtils.stringifyIdent(N),reference:N.reference}}),getPackageInformation:E=>{let N=E.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:rp.structUtils.makeLocator(rp.structUtils.parseIdent(E.name),E.reference),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return B.pnpNode},findPackageLocator:E=>{let N=this.opts.project.tryWorkspaceByCwd(Fu.npath.toPortablePath(E));if(N!==null){let B=N.anchoredLocator;return{name:rp.structUtils.stringifyIdent(B),reference:B.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:E=>Fu.npath.fromPortablePath(Op.VirtualFS.resolveVirtual(Fu.npath.toPortablePath(E)))},{tree:A,errors:f,preserveSymlinksRequired:I}=(0,tEl.buildNodeModulesTree)(l,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!A){for(let{messageName:E,text:N}of f)this.opts.report.reportError(E,N);return}let C=(0,aUr.buildLocatorMap)(A);await dEl(r,C,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async E=>{let N=rp.structUtils.parseLocator(E),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the slot to exist");return B.customPackageData.manifest}});let b=[];for(let[E,N]of C.entries()){if(rps(E))continue;let B=rp.structUtils.parseLocator(E),F=this.localStore.get(B.locatorHash);if(typeof F>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(F.pkg))continue;let Q=jds.jsInstallUtils.extractBuildRequest(F.pkg,F.customPackageData,F.dependencyMeta,{configuration:this.opts.project.configuration});Q&&b.push({buildLocations:N.locations,locator:B,buildRequest:Q})}return I&&this.opts.report.reportWarning(cUr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${rp.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",rp.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:b}}};async function oEl(e,t){let r=await rp.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new rp.Manifest,n=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())n.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:jds.jsInstallUtils.hasBindingGyp(t)}}}async function aEl(e,t,r,n,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will `,o+=`# cause your node_modules installation to become invalidated. `,o+=` `,o+=`__metadata: -`,o+=` version: ${Zds} +`,o+=` version: ${qds} `,o+=` nmMode: ${n.value} `;let l=Array.from(t.keys()).sort(),A=rp.structUtils.stringifyLocator(e.topLevelWorkspace.anchoredLocator);for(let C of l){let b=t.get(C);o+=` `,o+=`${JSON.stringify(C)}: @@ -1711,52 +1711,52 @@ ${C?`$env:NODE_PATH=$env_node_path `}if(C===A&&r.size>0){o+=` bin: `;for(let[E,N]of r){let B=Fu.ppath.contains(e.cwd,E);if(B===null)throw new Error(`Assertion failed: Expected the path to be within the project (${E})`);o+=` ${JSON.stringify(B)}: `;for(let[F,Q]of N){let X=Fu.ppath.relative(Fu.ppath.join(E,V2),Q);o+=` ${JSON.stringify(F)}: ${JSON.stringify(X)} -`}}}}let f=e.cwd,I=Fu.ppath.join(f,V2,Lds);a&&await Op.xfs.removePromise(I),await Op.xfs.changeFilePromise(I,o,{automaticNewlines:!0})}async function iUr(e,{unrollAliases:t=!1}={}){let r=e.cwd,n=Fu.ppath.join(r,V2,Lds),a;try{a=await Op.xfs.statPromise(n)}catch{}if(!a)return null;let o=(0,ubl.parseSyml)(await Op.xfs.readFilePromise(n,"utf8"));if(o.__metadata.version>Zds)return null;let l=o.__metadata.nmMode||OO.CLASSIC,A=new Map,f=new Map;delete o.__metadata;for(let[I,C]of Object.entries(o)){let b=C.locations.map(N=>Fu.ppath.join(r,N)),E=C.bin;if(E)for(let[N,B]of Object.entries(E)){let F=Fu.ppath.join(r,Fu.npath.toPortablePath(N)),Q=rp.miscUtils.getMapWithDefault(f,F);for(let[X,ae]of Object.entries(B))Q.set(X,Fu.npath.toPortablePath([F,V2,ae].join(Fu.ppath.sep)))}if(A.set(I,{target:Fu.PortablePath.dot,linkType:q4.LinkType.HARD,locations:b,aliases:C.aliases||[]}),t&&C.aliases)for(let N of C.aliases){let{scope:B,name:F}=rp.structUtils.parseLocator(I),Q=rp.structUtils.makeLocator(rp.structUtils.makeIdent(B,F),N),X=rp.structUtils.stringifyLocator(Q);A.set(X,{target:Fu.PortablePath.dot,linkType:q4.LinkType.HARD,locations:b,aliases:[]})}}return{locatorMap:A,binSymlinks:f,locationTree:Vds(A,{skipPrefix:e.cwd}),nmMode:l,mtimeMs:a.mtimeMs}}var _Ge=async(e,t)=>{if(e.split(Fu.ppath.sep).indexOf(V2)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Op.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Op.xfs.unlinkPromise(e);return}let n=await Op.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of n){let l=Fu.ppath.join(e,o.name);o.isDirectory()?(o.name!==V2||t&&t.innerLoop)&&await _Ge(l,{innerLoop:!0,contentsOnly:!1}):await Op.xfs.unlinkPromise(l)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Op.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},Dds=4,TGt=(e,{skipPrefix:t})=>{let r=Fu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let n=r.split(Fu.ppath.sep).filter(f=>f!==""),a=n.indexOf(V2),o=n.slice(0,a).join(Fu.ppath.sep),l=Fu.ppath.join(t,o),A=n.slice(a);return{locationRoot:l,segments:A}},Vds=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let n=()=>({children:new Map,linkType:q4.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===q4.LinkType.SOFT&&Fu.ppath.contains(t,o.target)!==null){let A=rp.miscUtils.getFactoryWithDefault(r,o.target,n);A.locator=a,A.linkType=o.linkType}for(let l of o.locations){let{locationRoot:A,segments:f}=TGt(l,{skipPrefix:t}),I=rp.miscUtils.getFactoryWithDefault(r,A,n);for(let C=0;C{if(process.platform==="win32"&&r===q4.WindowsLinkType.JUNCTIONS){let n;try{n=await Op.xfs.lstatPromise(e)}catch{}if(!n||n.isDirectory()){await Op.xfs.symlinkPromise(e,t,"junction");return}}await Op.xfs.symlinkPromise(Fu.ppath.relative(Fu.ppath.dirname(t),e),t)};async function Pds(e,t,r){let n=Fu.ppath.join(e,`${Fds.default.randomBytes(16).toString("hex")}.tmp`);try{await Op.xfs.writeFilePromise(n,r);try{await Op.xfs.linkPromise(n,t)}catch{}}finally{await Op.xfs.unlinkPromise(n)}}async function Ibl({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:n,baseFs:a,nmMode:o}){if(r.kind===Ote.FILE){if(o.value===OO.HARDLINKS_GLOBAL&&n&&r.digest){let A=Fu.ppath.join(n,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let I=await Op.xfs.statPromise(A);if(I&&(!r.mtimeMs||I.mtimeMs>r.mtimeMs||I.mtimeMs{await Op.xfs.mkdirPromise(e,{recursive:!0});let A=async(C=Fu.PortablePath.dot)=>{let b=Fu.ppath.join(t,C),E=await r.readdirPromise(b,{withFileTypes:!0}),N=new Map;for(let B of E){let F=Fu.ppath.join(C,B.name),Q,X=Fu.ppath.join(b,B.name);if(B.isFile()){if(Q={kind:Ote.FILE,mode:(await r.lstatPromise(X)).mode},a.value===OO.HARDLINKS_GLOBAL){let ae=await xds.hashUtils.checksumFile(X,{baseFs:r,algorithm:"sha1"});Q.digest=ae}}else if(B.isDirectory())Q={kind:Ote.DIRECTORY};else if(B.isSymbolicLink())Q={kind:Ote.SYMLINK,symlinkTo:await r.readlinkPromise(X)};else throw new Error(`Unsupported file type (file: ${X}, mode: 0o${await r.statSync(X).mode.toString(8).padStart(6,"0")})`);if(N.set(F,Q),B.isDirectory()&&F!==V2){let ae=await A(F);for(let[ne,ce]of ae)N.set(ne,ce)}}return N},f;if(a.value===OO.HARDLINKS_GLOBAL&&n&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Op.xfs.readFilePromise(C,"utf8"))))}catch{f=await A()}}else f=await A();let I=!1;for(let[C,b]of f){let E=Fu.ppath.join(t,C),N=Fu.ppath.join(e,C);if(b.kind===Ote.DIRECTORY)await Op.xfs.mkdirPromise(N,{recursive:!0});else if(b.kind===Ote.FILE){let B=b.mtimeMs;await Ibl({srcPath:E,dstPath:N,entry:b,nmMode:a,baseFs:r,globalHardlinksStore:n}),b.mtimeMs!==B&&(I=!0)}else b.kind===Ote.SYMLINK&&await oUr(Fu.ppath.resolve(Fu.ppath.dirname(N),b.symlinkTo),N,o)}if(a.value===OO.HARDLINKS_GLOBAL&&n&&I&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);await Op.xfs.removePromise(C),await Pds(n,C,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function mbl(e,t,r,n){let a=new Map,o=new Map,l=new Map,A=!1,f=(I,C,b,E,N)=>{let B=!0,F=Fu.ppath.join(I,C),Q=new Set;if(C===V2||C.startsWith("@")){let ae;try{ae=Op.xfs.statSync(F)}catch{}B=!!ae,ae?ae.mtimeMs>r?(A=!0,Q=new Set(Op.xfs.readdirSync(F))):Q=new Set(b.children.get(C).children.keys()):A=!0;let ne=t.get(I);if(ne){let ce=Fu.ppath.join(I,V2,wGt),fe;try{fe=Op.xfs.statSync(ce)}catch{}if(!fe)A=!0;else if(fe.mtimeMs>r){A=!0;let ue=new Set(Op.xfs.readdirSync(ce)),de=new Map;o.set(I,de);for(let[be,Se]of ne)ue.has(be)&&de.set(be,Se)}else o.set(I,ne)}}else B=N.has(C);let X=b.children.get(C);if(B){let{linkType:ae,locator:ne}=X,ce={children:new Map,linkType:ae,locator:ne};if(E.children.set(C,ce),ne){let fe=rp.miscUtils.getSetWithDefault(l,ne);fe.add(F),l.set(ne,fe)}for(let fe of X.children.keys())f(F,fe,X,ce,Q)}else X.locator&&n.storedBuildState.delete(rp.structUtils.parseLocator(X.locator).locatorHash)};for(let[I,C]of e){let{linkType:b,locator:E}=C,N={children:new Map,linkType:b,locator:E};if(a.set(I,N),E){let B=rp.miscUtils.getSetWithDefault(l,C.locator);B.add(I),l.set(C.locator,B)}C.children.has(V2)&&f(I,V2,C,N,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:l,installChangedByUser:A}}function Wds(e){let t=rp.structUtils.parseDescriptor(e);return rp.structUtils.isVirtualDescriptor(t)&&(t=rp.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function Cbl(e,t,r,{loadManifest:n}){let a=new Map;for(let[A,{locations:f}]of e){let I=Wds(A)?null:await n(A,f[0]),C=new Map;if(I)for(let[b,E]of I.bin){let N=Fu.ppath.join(f[0],E);E!==""&&Op.xfs.existsSync(N)&&C.set(b,E)}a.set(A,C)}let o=new Map,l=(A,f,I)=>{let C=new Map,b=Fu.ppath.contains(r,A);if(I.locator&&b!==null){let E=a.get(I.locator);for(let[N,B]of E){let F=Fu.ppath.join(A,Fu.npath.toPortablePath(B));C.set(N,F)}for(let[N,B]of I.children){let F=Fu.ppath.join(A,N),Q=l(F,F,B);Q.size>0&&o.set(A,new Map([...o.get(A)||new Map,...Q]))}}else for(let[E,N]of I.children){let B=l(Fu.ppath.join(A,E),f,N);for(let[F,Q]of B)C.set(F,Q)}return C};for(let[A,f]of t){let I=l(A,A,f);I.size>0&&o.set(A,new Map([...o.get(A)||new Map,...I]))}return o}var kds=(e,t)=>{if(!e||!t)return e===t;let r=rp.structUtils.parseLocator(e);rp.structUtils.isVirtualLocator(r)&&(r=rp.structUtils.devirtualizeLocator(r));let n=rp.structUtils.parseLocator(t);return rp.structUtils.isVirtualLocator(n)&&(n=rp.structUtils.devirtualizeLocator(n)),rp.structUtils.areLocatorsEqual(r,n)};function Ods(e){return Fu.ppath.join(e.get("globalFolder"),"store")}function _bl(e,t){let r=n=>{let a=n.split(Fu.ppath.sep),o=a.lastIndexOf(V2);if(o<0||o==a.length-1)throw new Error(`Assertion failed. Path is outside of any node_modules package ${n}`);return a.slice(0,o+(a[o+1].startsWith("@")?3:2)).join(Fu.ppath.sep)};for(let n of e.values())for(let[a,o]of n)t.has(r(o))&&n.delete(a)}async function ybl(e,t,{baseFs:r,project:n,report:a,loadManifest:o,realLocatorChecksums:l}){let A=Fu.ppath.join(n.cwd,V2),{locationTree:f,binSymlinks:I,locatorLocations:C,installChangedByUser:b}=mbl(e.locationTree,e.binSymlinks,e.mtimeMs,n),E=Vds(t,{skipPrefix:n.cwd}),N=[],B=async({srcDir:Se,dstDir:De,linkType:k,globalHardlinksStore:et,nmMode:ct,windowsLinkType:Me,packageChecksum:je})=>{let St=(async()=>{try{k===q4.LinkType.SOFT?(await Op.xfs.mkdirPromise(Fu.ppath.dirname(De),{recursive:!0}),await oUr(Fu.ppath.resolve(Se),De,Me)):await hbl(De,Se,{baseFs:r,globalHardlinksStore:et,nmMode:ct,windowsLinkType:Me,packageChecksum:je})}catch(At){throw At.message=`While persisting ${Se} -> ${De} ${At.message}`,At}finally{ce.tick()}})().then(()=>N.splice(N.indexOf(St),1));N.push(St),N.length>Dds&&await Promise.race(N)},F=async(Se,De,k)=>{let et=(async()=>{let ct=async(Me,je,St)=>{try{St.innerLoop||await Op.xfs.mkdirPromise(je,{recursive:!0});let At=await Op.xfs.readdirPromise(Me,{withFileTypes:!0});for(let Yt of At){if(!St.innerLoop&&Yt.name===wGt)continue;let Tr=Fu.ppath.join(Me,Yt.name),Nr=Fu.ppath.join(je,Yt.name);Yt.isDirectory()?(Yt.name!==V2||St&&St.innerLoop)&&(await Op.xfs.mkdirPromise(Nr,{recursive:!0}),await ct(Tr,Nr,{...St,innerLoop:!0})):de.value===OO.HARDLINKS_LOCAL||de.value===OO.HARDLINKS_GLOBAL?await Op.xfs.linkPromise(Tr,Nr):await Op.xfs.copyFilePromise(Tr,Nr,Abl.default.constants.COPYFILE_FICLONE)}}catch(At){throw St.innerLoop||(At.message=`While cloning ${Me} -> ${je} ${At.message}`),At}finally{St.innerLoop||ce.tick()}};await ct(Se,De,k)})().then(()=>N.splice(N.indexOf(et),1));N.push(et),N.length>Dds&&await Promise.race(N)},Q=async(Se,De,k)=>{if(k)for(let[et,ct]of De.children){let Me=k.children.get(et);await Q(Fu.ppath.join(Se,et),ct,Me)}else{De.children.has(V2)&&await _Ge(Fu.ppath.join(Se,V2),{contentsOnly:!1});let et=Fu.ppath.basename(Se)===V2&&f.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await _Ge(Se,{contentsOnly:Se===A,isWorkspaceDir:et})}};for(let[Se,De]of f){let k=E.get(Se);for(let[et,ct]of De.children){if(et===".")continue;let Me=k&&k.children.get(et),je=Fu.ppath.join(Se,et);await Q(je,ct,Me)}}let X=async(Se,De,k)=>{if(k){kds(De.locator,k.locator)||await _Ge(Se,{contentsOnly:De.linkType===q4.LinkType.HARD});for(let[et,ct]of De.children){let Me=k.children.get(et);await X(Fu.ppath.join(Se,et),ct,Me)}}else{De.children.has(V2)&&await _Ge(Fu.ppath.join(Se,V2),{contentsOnly:!0});let et=Fu.ppath.basename(Se)===V2&&E.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await _Ge(Se,{contentsOnly:De.linkType===q4.LinkType.HARD,isWorkspaceDir:et})}};for(let[Se,De]of E){let k=f.get(Se);for(let[et,ct]of De.children){if(et===".")continue;let Me=k&&k.children.get(et);await X(Fu.ppath.join(Se,et),ct,Me)}}let ae=new Map,ne=[];for(let[Se,De]of C)for(let k of De){let{locationRoot:et,segments:ct}=TGt(k,{skipPrefix:n.cwd}),Me=E.get(et),je=et;if(Me){for(let St of ct)if(je=Fu.ppath.join(je,St),Me=Me.children.get(St),!Me)break;if(Me){let St=kds(Me.locator,Se),At=t.get(Me.locator),Yt=At.target,Tr=je,Nr=At.linkType;if(St)ae.has(Yt)||ae.set(Yt,Tr);else if(Yt!==Tr){let er=rp.structUtils.parseLocator(Me.locator);rp.structUtils.isVirtualLocator(er)&&(er=rp.structUtils.devirtualizeLocator(er)),ne.push({srcDir:Yt,dstDir:Tr,linkType:Nr,realLocatorHash:er.locatorHash})}}}}for(let[Se,{locations:De}]of t.entries())for(let k of De){let{locationRoot:et,segments:ct}=TGt(k,{skipPrefix:n.cwd}),Me=f.get(et),je=E.get(et),St=et,At=t.get(Se),Yt=rp.structUtils.parseLocator(Se);rp.structUtils.isVirtualLocator(Yt)&&(Yt=rp.structUtils.devirtualizeLocator(Yt));let Tr=Yt.locatorHash,Nr=At.target,er=k;if(Nr===er)continue;let vt=At.linkType;for(let xt of ct)je=je.children.get(xt);if(!Me)ne.push({srcDir:Nr,dstDir:er,linkType:vt,realLocatorHash:Tr});else for(let xt of ct)if(St=Fu.ppath.join(St,xt),Me=Me.children.get(xt),!Me){ne.push({srcDir:Nr,dstDir:er,linkType:vt,realLocatorHash:Tr});break}}let ce=rp.Report.progressViaCounter(ne.length),fe=a.reportProgress(ce),ue=n.configuration.get("nmMode"),de={value:ue},be=n.configuration.get("winLinkType");try{let Se=de.value===OO.HARDLINKS_GLOBAL?`${Ods(n.configuration)}/v1`:null;if(Se&&!await Op.xfs.existsPromise(Se)){await Op.xfs.mkdirpPromise(Se);for(let k=0;k<256;k++)await Op.xfs.mkdirPromise(Fu.ppath.join(Se,k.toString(16).padStart(2,"0")))}for(let k of ne)(k.linkType===q4.LinkType.SOFT||!ae.has(k.srcDir))&&(ae.set(k.srcDir,k.dstDir),await B({...k,globalHardlinksStore:Se,nmMode:de,windowsLinkType:be,packageChecksum:l.get(k.realLocatorHash)||null}));await Promise.all(N),N.length=0;for(let k of ne){let et=ae.get(k.srcDir);k.linkType!==q4.LinkType.SOFT&&k.dstDir!==et&&await F(et,k.dstDir,{nmMode:de})}await Promise.all(N),await Op.xfs.mkdirPromise(A,{recursive:!0}),_bl(I,new Set(ne.map(k=>k.dstDir)));let De=await Cbl(t,E,n.cwd,{loadManifest:o});await bbl(I,De,n.cwd,be),await fbl(n,t,De,de,{installChangedByUser:b}),ue==OO.HARDLINKS_GLOBAL&&de.value==OO.HARDLINKS_LOCAL&&a.reportWarningOnce(tUr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function bbl(e,t,r,n){for(let a of e.keys()){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=Fu.ppath.join(a,V2,wGt);await Op.xfs.removePromise(o)}}for(let[a,o]of t){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let l=Fu.ppath.join(a,V2,wGt),A=e.get(a)||new Map;await Op.xfs.mkdirPromise(l,{recursive:!0});for(let f of A.keys())o.has(f)||(await Op.xfs.removePromise(Fu.ppath.join(l,f)),process.platform==="win32"&&await Op.xfs.removePromise(Fu.ppath.join(l,`${f}.cmd`)));for(let[f,I]of o){let C=A.get(f),b=Fu.ppath.join(l,f);C!==I&&(process.platform==="win32"?await(0,gbl.default)(Fu.npath.fromPortablePath(I),Fu.npath.fromPortablePath(b),{createPwshFile:!1}):(await Op.xfs.removePromise(b),await oUr(I,b,n),Fu.ppath.contains(r,await Op.xfs.realpathPromise(I))!==null&&await Op.xfs.chmodPromise(I,493)))}}}});var Yds=H(RGt=>{"use strict";Object.defineProperty(RGt,"__esModule",{value:!0});RGt.PnpLooseLinker=void 0;var Mds=Sn(),a7e=ro(),Ebl=zK(),Sbl=e7e(),Hds=hGe(),vbl=LJr(),cUr=class extends Hds.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new lUr(t)}};RGt.PnpLooseLinker=cUr;var lUr=class extends Hds.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new a7e.VirtualFS({baseFs:new Ebl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),n=(0,vbl.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,Sbl.buildNodeModulesTree)(n,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:C,text:b}of o)this.opts.report.reportError(C,b);return}let l=new Map;t.fallbackPool=l;let A=(C,b)=>{let E=Mds.structUtils.parseLocator(b.locator),N=Mds.structUtils.stringifyIdent(E);N===C?l.set(C,E.reference):l.set(C,[N,E.reference])},f=a7e.ppath.join(this.opts.project.cwd,a7e.Filename.nodeModules),I=a.get(f);if(!(typeof I>"u")){if("target"in I)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let C of I.dirList){let b=a7e.ppath.join(f,C),E=a.get(b);if(typeof E>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in E)A(C,E);else for(let N of E.dirList){let B=a7e.ppath.join(b,N),F=a.get(B);if(typeof F>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in F)A(`${C}/${N}`,F);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var Xds=H(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.PnpLooseLinker=Mte.NodeModulesMode=Mte.NodeModulesLinker=void 0;var uUr=Sn(),Bbl=ro(),NGt=e7e(),a0e=aUr();Object.defineProperty(Mte,"NodeModulesLinker",{enumerable:!0,get:function(){return a0e.NodeModulesLinker}});Object.defineProperty(Mte,"NodeModulesMode",{enumerable:!0,get:function(){return a0e.NodeModulesMode}});var wbl=aUr(),Qds=Yds();Object.defineProperty(Mte,"PnpLooseLinker",{enumerable:!0,get:function(){return Qds.PnpLooseLinker}});var Tbl={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,wbl.getGlobalHardlinksStore)(e);await Bbl.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:uUr.SettingsType.STRING,values:[NGt.NodeModulesHoistingLimits.WORKSPACES,NGt.NodeModulesHoistingLimits.DEPENDENCIES,NGt.NodeModulesHoistingLimits.NONE],default:NGt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:uUr.SettingsType.STRING,values:[a0e.NodeModulesMode.CLASSIC,a0e.NodeModulesMode.HARDLINKS_LOCAL,a0e.NodeModulesMode.HARDLINKS_GLOBAL],default:a0e.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:uUr.SettingsType.BOOLEAN,default:!0}},linkers:[a0e.NodeModulesLinker,Qds.PnpLooseLinker]};Mte.default=Tbl});var yGe=H(DGt=>{"use strict";Object.defineProperty(DGt,"__esModule",{value:!0});DGt.PROTOCOL=void 0;DGt.PROTOCOL="npm:"});var c0e=H(MO=>{"use strict";Object.defineProperty(MO,"__esModule",{value:!0});MO.RegistryType=void 0;MO.normalizeRegistry=bGe;MO.getAuditRegistry=Dbl;MO.getPublishRegistry=kbl;MO.getScopeRegistry=Jds;MO.getDefaultRegistry=c7e;MO.getRegistryConfiguration=Uds;MO.getScopeConfiguration=gUr;MO.getAuthConfiguration=Gbl;MO.isPackageApproved=Vbl;var Rbl=(Pa(),vi(Va)),kGt=Sn(),Nbl=Rbl.__importDefault(Ek()),vue;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(vue||(MO.RegistryType=vue={}));function bGe(e){return e.replace(/\/$/,"")}function Dbl({configuration:e}){return c7e({configuration:e,type:vue.AUDIT_REGISTRY})}function kbl(e,{configuration:t}){return e.publishConfig?.registry?bGe(e.publishConfig.registry):e.name?Jds(e.name.scope,{configuration:t,type:vue.PUBLISH_REGISTRY}):c7e({configuration:t,type:vue.PUBLISH_REGISTRY})}function Jds(e,{configuration:t,type:r=vue.FETCH_REGISTRY}){let n=gUr(e,{configuration:t});if(n===null)return c7e({configuration:t,type:r});let a=n.get(r);return a===null?c7e({configuration:t,type:r}):bGe(a)}function c7e({configuration:e,type:t=vue.FETCH_REGISTRY}){let r=e.get(t);return bGe(r!==null?r:e.get(vue.FETCH_REGISTRY))}function Uds(e,{configuration:t}){let r=t.get("npmRegistries"),n=bGe(e),a=r.get(n);if(typeof a<"u")return a;let o=r.get(n.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}var xbl=new Map([["npmRegistryServer","https://npm.jsr.io/"]]);function gUr(e,{configuration:t}){if(e===null)return null;let n=t.get("npmScopes").get(e);return n||(e==="jsr"?xbl:null)}function Gbl(e,{configuration:t,ident:r}){let n=r&&gUr(r.scope,{configuration:t});return n?.get("npmAuthIdent")||n?.get("npmAuthToken")?n:Uds(e,{configuration:t})||t}function Fbl({configuration:e,version:t,publishTimes:r}){let n=e.get("npmMinimalAgeGate");if(n){let a=r?.[t];if(typeof a>"u"||(new Date().getTime()-new Date(a).getTime())/60/1e3Zbl(t,r,n))}function Vbl(e){return!Fbl(e)||Lbl(e)}});var SGe=H(FH=>{"use strict";Object.defineProperty(FH,"__esModule",{value:!0});FH.AuthType=void 0;FH.handleInvalidAuthenticationError=wue;FH.customPackageError=zds;FH.getIdentUrl=dUr;FH.getPackageMetadata=Qbl;FH.get=eps;FH.post=jbl;FH.put=zbl;FH.del=qbl;var jds=(Pa(),vi(Va)),ET=Sn(),Bue=Sn(),Hte=ro(),Kds=Zje(),Pbl=kW(),Wbl=jds.__importDefault(UC()),AUr=jds.__importStar(c0e()),GH;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(GH||(FH.AuthType=GH={}));async function wue(e,{attemptedAs:t,registry:r,headers:n,configuration:a}){if(GGt(e))throw new Bue.ReportError(Bue.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new Bue.ReportError(Bue.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await eEl(r,n,{configuration:a})}`:`attempted as ${t}`})`)}function zds(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${ET.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}function dUr(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}var qds=new Map,Obl=new Map;async function Mbl(e){return await ET.miscUtils.getFactoryWithDefault(qds,e,async()=>{let t=null;try{t=await Hte.xfs.readJsonPromise(e)}catch{}return t})}async function Hbl(e,t,{configuration:r,cached:n,registry:a,headers:o,version:l,...A}){return await ET.miscUtils.getFactoryWithDefault(Obl,e,async()=>await eps(dUr(t),{...A,customErrorMessage:zds,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":n?.etag,"If-Modified-Since":n?.lastModified},wrapNetworkRequest:async f=>async()=>{let I=await f();if(I.statusCode===304){if(n===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...I,body:n.metadata}}let C=Xbl(JSON.parse(I.body.toString())),b={metadata:C,etag:I.headers.etag,lastModified:I.headers["last-modified"]};return qds.set(e,Promise.resolve(b)),Promise.resolve().then(async()=>{let E=`${e}-${process.pid}.tmp`;await Hte.xfs.mkdirPromise(Hte.ppath.dirname(E),{recursive:!0}),await Hte.xfs.writeJsonPromise(E,b,{compact:!0}),await Hte.xfs.renamePromise(E,e)}).catch(()=>{}),{...I,body:C}}}))}function Ybl(e){return e.scope!==null?`@${e.scope}-${e.name}-${e.scope.length}`:e.name}async function Qbl(e,{cache:t,project:r,registry:n,headers:a,version:o,...l}){let{configuration:A}=r;n=l7e(A,{ident:e,registry:n});let f=Ubl(A,n),I=Hte.ppath.join(f,`${Ybl(e)}.json`),C=null;if(!r.lockfileNeedsRefresh&&(C=await Mbl(I),C)){if(typeof o<"u"&&typeof C.metadata.versions[o]<"u")return C.metadata;if(A.get("enableOfflineMode")){let b=structuredClone(C.metadata),E=new Set;if(t){for(let B of Object.keys(b.versions)){let F=ET.structUtils.makeLocator(e,`npm:${B}`),Q=t.getLocatorMirrorPath(F);(!Q||!Hte.xfs.existsSync(Q))&&(delete b.versions[B],E.add(B))}let N=b["dist-tags"].latest;if(E.has(N)){let B=Object.keys(C.metadata.versions).sort(Wbl.default.compare),F=B.indexOf(N);for(;E.has(B[F])&&F>=0;)F-=1;F>=0?b["dist-tags"].latest=B[F]:delete b["dist-tags"].latest}}return b}}return await Hbl(I,e,{...l,configuration:A,cached:C,registry:n,headers:a,version:o})}var $ds=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function Xbl(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,Pbl.pick)(r,$ds)])),time:e.time}}var Jbl=ET.hashUtils.makeHash("time",...$ds).slice(0,6);function Ubl(e,t){let r=Kbl(e),n=new URL(t);return Hte.ppath.join(r,Jbl,n.hostname)}function Kbl(e){return Hte.ppath.join(e.get("globalFolder"),"metadata/npm")}async function eps(e,{configuration:t,headers:r,ident:n,authType:a,allowOidc:o,registry:l,...A}){l=l7e(t,{ident:n,registry:l}),n&&n.scope&&typeof a>"u"&&(a=GH.BEST_EFFORT);let f=await xGt(l,{authType:a,allowOidc:o,configuration:t,ident:n});f&&(r={...r,authorization:f});try{return await ET.httpUtils.get(e.charAt(0)==="/"?`${l}${e}`:e,{configuration:t,headers:r,...A})}catch(I){throw await wue(I,{registry:l,configuration:t,headers:r}),I}}async function jbl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=GH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=l7e(n,{ident:o,registry:f});let b=await xGt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...EGe(I)});try{return await ET.httpUtils.post(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!GGt(E)||I)throw await wue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await pUr(E,{configuration:n});let N={...a,...EGe(I)};try{return await ET.httpUtils.post(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await wue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function zbl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=GH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=l7e(n,{ident:o,registry:f});let b=await xGt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...EGe(I)});try{return await ET.httpUtils.put(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!GGt(E))throw await wue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await pUr(E,{configuration:n});let N={...a,...EGe(I)};try{return await ET.httpUtils.put(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await wue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function qbl(e,{attemptedAs:t,configuration:r,headers:n,ident:a,authType:o=GH.ALWAYS_AUTH,allowOidc:l,registry:A,otp:f,...I}){A=l7e(r,{ident:a,registry:A});let C=await xGt(A,{authType:o,allowOidc:l,configuration:r,ident:a});C&&(n={...n,authorization:C}),f&&(n={...n,...EGe(f)});try{return await ET.httpUtils.del(A+e,{configuration:r,headers:n,...I})}catch(b){if(!GGt(b)||f)throw await wue(b,{attemptedAs:t,registry:A,configuration:r,headers:n}),b;f=await pUr(b,{configuration:r});let E={...n,...EGe(f)};try{return await ET.httpUtils.del(`${A}${e}`,{configuration:r,headers:E,...I})}catch(N){throw await wue(N,{attemptedAs:t,registry:A,configuration:r,headers:n}),N}}}function l7e(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return AUr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return AUr.normalizeRegistry(r)}async function xGt(e,{authType:t=GH.CONFIGURATION,allowOidc:r=!1,configuration:n,ident:a}){let o=AUr.getAuthConfiguration(e,{configuration:n,ident:a}),l=$bl(o,t);if(!l)return null;let A=await n.reduceHook(f=>f.getNpmAuthenticationHeader,void 0,e,{configuration:n,ident:a});if(A)return A;if(o.get("npmAuthToken"))return`Bearer ${o.get("npmAuthToken")}`;if(o.get("npmAuthIdent")){let f=o.get("npmAuthIdent");return f.includes(":")?`Basic ${Buffer.from(f).toString("base64")}`:`Basic ${f}`}if(r&&a){let f=await tEl(e,{configuration:n,ident:a});if(f)return`Bearer ${f}`}if(l&&t!==GH.BEST_EFFORT)throw new Bue.ReportError(Bue.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function $bl(e,t){switch(t){case GH.CONFIGURATION:return e.get("npmAlwaysAuth");case GH.BEST_EFFORT:case GH.ALWAYS_AUTH:return!0;case GH.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function eEl(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await ET.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function pUr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await ET.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(Bue.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,ET.formatUtils.pretty(t,"$1",ET.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&ET.nodeUtils.openUrl){let{openNow:l}=await(0,Kds.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});l&&(await ET.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(Bue.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` -`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:n}=await(0,Kds.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` -`),n}function GGt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function EGe(e){return{"npm-otp":e}}async function tEl(e,{configuration:t,ident:r}){let n=null;if(process.env.GITLAB_CI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.CIRCLECI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.GITHUB_ACTIONS){if(!(process.env.ACTIONS_ID_TOKEN_REQUEST_URL&&process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN))return null;let a=`npm:${new URL(e).host.replace("registry.yarnpkg.com","registry.npmjs.org").replace("yarn.npmjs.org","registry.npmjs.org")}`,o=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);o.searchParams.append("audience",a),n=(await ET.httpUtils.get(o.href,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).value}if(!n)return null;try{return(await ET.httpUtils.post(`${e}/-/npm/v1/oidc/token/exchange/package${dUr(r)}`,null,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${n}`}})).token||null}catch{}return null}});var nps=H(FGt=>{"use strict";Object.defineProperty(FGt,"__esModule",{value:!0});FGt.NpmHttpFetcher=void 0;var rps=(Pa(),vi(Va)),vGe=Sn(),rEl=rps.__importDefault(UC()),nEl=yGe(),tps=rps.__importStar(SGe()),fUr=class{supports(t,r){if(!t.reference.startsWith(nEl.PROTOCOL))return!1;let{selector:n,params:a}=vGe.structUtils.parseRange(t.reference);return!(!rEl.default.valid(n)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${vGe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:vGe.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let{params:n}=vGe.structUtils.parseRange(t.reference);if(n===null||typeof n.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await tps.get(n.__archiveUrl,{customErrorMessage:tps.customPackageError,configuration:r.project.configuration,ident:t});return await vGe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:vGe.structUtils.getIdentVendorPath(t),stripComponents:1})}};FGt.NpmHttpFetcher=fUr});var ips=H(LGt=>{"use strict";Object.defineProperty(LGt,"__esModule",{value:!0});LGt.NpmRemapResolver=void 0;var ZGt=Sn(),u7e=yGe(),IUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(u7e.PROTOCOL)||!ZGt.structUtils.tryParseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){let n=r.project.configuration.normalizeDependency(ZGt.structUtils.parseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(n,r)}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency(ZGt.structUtils.parseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0));return await n.resolver.getCandidates(a,r,n)}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency(ZGt.structUtils.parseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,n,a)}resolve(t,r){throw new Error("Unreachable")}};LGt.NpmRemapResolver=IUr});var PGt=H(VGt=>{"use strict";Object.defineProperty(VGt,"__esModule",{value:!0});VGt.NpmSemverFetcher=void 0;var mUr=(Pa(),vi(Va)),g7e=Sn(),sps=Sn(),iEl=mUr.__importDefault(UC()),ops=yGe(),sEl=mUr.__importStar(c0e()),A7e=mUr.__importStar(SGe()),hUr=class e{supports(t,r){if(!t.reference.startsWith(ops.PROTOCOL))return!1;let n=new URL(t.reference);return!(!iEl.default.valid(n.pathname)||n.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${g7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:g7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n;try{n=await A7e.get(e.getLocatorUrl(t),{customErrorMessage:A7e.customPackageError,configuration:r.project.configuration,ident:t})}catch{n=await A7e.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:A7e.customPackageError,configuration:r.project.configuration,ident:t})}return await g7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:g7e.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:n}){let a=sEl.getScopeRegistry(t.scope,{configuration:n}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=g7e.semverUtils.clean(t.reference.slice(ops.PROTOCOL.length));if(r===null)throw new sps.ReportError(sps.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${A7e.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};VGt.NpmSemverFetcher=hUr});var ups=H(OGt=>{"use strict";Object.defineProperty(OGt,"__esModule",{value:!0});OGt.NpmSemverResolver=void 0;var lps=(Pa(),vi(Va)),uL=Sn(),BGe=Sn(),oEl=Sn(),l0e=Sn(),aps=lps.__importDefault(UC()),aEl=PGt(),I6=yGe(),cEl=c0e(),cps=lps.__importStar(SGe()),WGt=l0e.structUtils.makeIdent(null,"node-gyp"),lEl=/\b(node-gyp|prebuild-install)\b/,CUr=class{supportsDescriptor(t,r){return t.range.startsWith(I6.PROTOCOL)?!!BGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(I6.PROTOCOL))return!1;let{selector:n}=l0e.structUtils.parseRange(t.reference);return!!aps.default.valid(n)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=BGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(I6.PROTOCOL.length)}`);let o=await cps.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project,version:aps.default.valid(a.raw)?a.raw:void 0}),l=uL.miscUtils.mapAndFilter(Object.keys(o.versions),C=>{try{let b=new BGe.semverUtils.SemVer(C);if(a.test(b))return b}catch{}return uL.miscUtils.mapAndFilter.skip}),A=l.filter(C=>(0,cEl.isPackageApproved)({configuration:n.project.configuration,ident:t,version:C.raw,publishTimes:o.time}));if(l.length>0&&A.length===0)throw new uL.ReportError(uL.MessageName.REMOTE_NOT_FOUND,`All versions satisfying "${t.range.slice(I6.PROTOCOL.length)}" are quarantined`);let f=A.filter(C=>!o.versions[C.raw].deprecated),I=f.length>0?f:A;return I.sort((C,b)=>-C.compare(b)),I.map(C=>{let b=l0e.structUtils.makeLocator(t,`${I6.PROTOCOL}${C.raw}`),E=o.versions[C.raw].dist.tarball;return aEl.NpmSemverFetcher.isConventionalTarballUrl(b,E,{configuration:n.project.configuration})?b:l0e.structUtils.bindLocator(b,{__archiveUrl:E})})}async getSatisfying(t,r,n,a){let o=BGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(I6.PROTOCOL.length)}`);return{locators:uL.miscUtils.mapAndFilter(n,f=>{if(f.identHash!==t.identHash)return uL.miscUtils.mapAndFilter.skip;let I=l0e.structUtils.tryParseRange(f.reference,{requireProtocol:I6.PROTOCOL});if(!I)return uL.miscUtils.mapAndFilter.skip;let C=new BGe.semverUtils.SemVer(I.selector);return o.test(C)?{locator:f,version:C}:uL.miscUtils.mapAndFilter.skip}).sort((f,I)=>-f.version.compare(I.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:n}=l0e.structUtils.parseRange(t.reference),a=BGe.semverUtils.clean(n);if(a===null)throw new uL.ReportError(uL.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await cps.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new uL.ReportError(uL.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new uL.ReportError(uL.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let l=new uL.Manifest;if(l.load(o.versions[a]),!l.dependencies.has(WGt.identHash)&&!l.peerDependencies.has(WGt.identHash)){for(let A of l.scripts.values())if(A.match(lEl)){l.dependencies.set(WGt.identHash,l0e.structUtils.makeDescriptor(WGt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:oEl.LinkType.HARD,conditions:l.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(l.dependencies),peerDependencies:l.peerDependencies,dependenciesMeta:l.dependenciesMeta,peerDependenciesMeta:l.peerDependenciesMeta,bin:l.bin}}};OGt.NpmSemverResolver=CUr});var dps=H(MGt=>{"use strict";Object.defineProperty(MGt,"__esModule",{value:!0});MGt.NpmTagResolver=void 0;var Aps=(Pa(),vi(Va)),u0e=Sn(),d7e=Sn(),_Ur=Aps.__importDefault(UC()),uEl=PGt(),wGe=yGe(),gps=c0e(),gEl=Aps.__importStar(SGe()),yUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(wGe.PROTOCOL)||!u0e.TAG_REGEXP.test(t.range.slice(wGe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(wGe.PROTOCOL.length),o=await gEl.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project});if(!Object.hasOwn(o,"dist-tags"))throw new u0e.ReportError(u0e.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let l=o["dist-tags"];if(!Object.hasOwn(l,a))throw new u0e.ReportError(u0e.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let A=Object.keys(o.versions),f=o.time,I=l[a];if(a==="latest"&&!(0,gps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:I,publishTimes:f})){let E=I.includes("-"),N=_Ur.default.rsort(A).find(B=>_Ur.default.lt(B,I)&&(E||!B.includes("-"))&&(0,gps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:B,publishTimes:f}));if(!N)throw new u0e.ReportError(u0e.MessageName.REMOTE_NOT_FOUND,`The version for tag "${a}" is quarantined, and no lower version is available`);I=N}let C=d7e.structUtils.makeLocator(t,`${wGe.PROTOCOL}${I}`),b=o.versions[I].dist.tarball;return uEl.NpmSemverFetcher.isConventionalTarballUrl(C,b,{configuration:n.project.configuration})?[C]:[d7e.structUtils.bindLocator(C,{__archiveUrl:b})]}async getSatisfying(t,r,n,a){let o=[];for(let l of n){if(l.identHash!==t.identHash)continue;let A=d7e.structUtils.tryParseRange(l.reference,{requireProtocol:wGe.PROTOCOL});if(!(!A||!_Ur.default.valid(A.selector))){if(A.params?.__archiveUrl){let f=d7e.structUtils.makeRange({protocol:wGe.PROTOCOL,selector:A.selector,source:null,params:null}),[I]=await a.resolver.getCandidates(d7e.structUtils.makeDescriptor(t,f),r,a);if(l.reference!==I.reference)continue}o.push(l)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};MGt.NpmTagResolver=yUr});var rF=H(AL=>{"use strict";var AEl=AL&&AL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AL,"__esModule",{value:!0});AL.Minipass=AL.isWritable=AL.isReadable=AL.isStream=void 0;var pps=typeof process=="object"&&process?process:{stdout:null,stderr:null},TUr=wt("node:events"),mps=AEl(wt("node:stream")),dEl=wt("node:string_decoder"),pEl=e=>!!e&&typeof e=="object"&&(e instanceof KGt||e instanceof mps.default||(0,AL.isReadable)(e)||(0,AL.isWritable)(e));AL.isStream=pEl;var fEl=e=>!!e&&typeof e=="object"&&e instanceof TUr.EventEmitter&&typeof e.pipe=="function"&&e.pipe!==mps.default.Writable.prototype.pipe;AL.isReadable=fEl;var IEl=e=>!!e&&typeof e=="object"&&e instanceof TUr.EventEmitter&&typeof e.write=="function"&&typeof e.end=="function";AL.isWritable=IEl;var Yte=Symbol("EOF"),Qte=Symbol("maybeEmitEnd"),Tue=Symbol("emittedEnd"),HGt=Symbol("emittingEnd"),p7e=Symbol("emittedError"),YGt=Symbol("closed"),fps=Symbol("read"),QGt=Symbol("flush"),Ips=Symbol("flushChunk"),$4=Symbol("encoding"),TGe=Symbol("decoder"),yD=Symbol("flowing"),f7e=Symbol("paused"),RGe=Symbol("resume"),bD=Symbol("buffer"),gL=Symbol("pipes"),ED=Symbol("bufferLength"),bUr=Symbol("bufferPush"),XGt=Symbol("bufferShift"),tF=Symbol("objectMode"),gw=Symbol("destroyed"),EUr=Symbol("error"),SUr=Symbol("emitData"),hps=Symbol("emitEnd"),vUr=Symbol("emitEnd2"),h6=Symbol("async"),BUr=Symbol("abort"),JGt=Symbol("aborted"),I7e=Symbol("signal"),g0e=Symbol("dataListeners"),HO=Symbol("discarded"),h7e=e=>Promise.resolve().then(e),hEl=e=>e(),mEl=e=>e==="end"||e==="finish"||e==="prefinish",CEl=e=>e instanceof ArrayBuffer||!!e&&typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,_El=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),UGt=class{src;dest;opts;ondrain;constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[RGe](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},wUr=class extends UGt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},yEl=e=>!!e.objectMode,bEl=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer",KGt=class extends TUr.EventEmitter{[yD]=!1;[f7e]=!1;[gL]=[];[bD]=[];[tF];[$4];[h6];[TGe];[Yte]=!1;[Tue]=!1;[HGt]=!1;[YGt]=!1;[p7e]=null;[ED]=0;[gw]=!1;[I7e];[JGt]=!1;[g0e]=0;[HO]=!1;writable=!0;readable=!0;constructor(...t){let r=t[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");yEl(r)?(this[tF]=!0,this[$4]=null):bEl(r)?(this[$4]=r.encoding,this[tF]=!1):(this[tF]=!1,this[$4]=null),this[h6]=!!r.async,this[TGe]=this[$4]?new dEl.StringDecoder(this[$4]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[bD]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[gL]});let{signal:n}=r;n&&(this[I7e]=n,n.aborted?this[BUr]():n.addEventListener("abort",()=>this[BUr]()))}get bufferLength(){return this[ED]}get encoding(){return this[$4]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tF]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[h6]}set async(t){this[h6]=this[h6]||!!t}[BUr](){this[JGt]=!0,this.emit("abort",this[I7e]?.reason),this.destroy(this[I7e]?.reason)}get aborted(){return this[JGt]}set aborted(t){}write(t,r,n){if(this[JGt])return!1;if(this[Yte])throw new Error("write after end");if(this[gw])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[h6]?h7e:hEl;if(!this[tF]&&!Buffer.isBuffer(t)){if(_El(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(CEl(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tF]?(this[yD]&&this[ED]!==0&&this[QGt](!0),this[yD]?this.emit("data",t):this[bUr](t),this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD]):t.length?(typeof t=="string"&&!(r===this[$4]&&!this[TGe]?.lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[$4]&&(t=this[TGe].write(t)),this[yD]&&this[ED]!==0&&this[QGt](!0),this[yD]?this.emit("data",t):this[bUr](t),this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD]):(this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD])}read(t){if(this[gw])return null;if(this[HO]=!1,this[ED]===0||t===0||t&&t>this[ED])return this[Qte](),null;this[tF]&&(t=null),this[bD].length>1&&!this[tF]&&(this[bD]=[this[$4]?this[bD].join(""):Buffer.concat(this[bD],this[ED])]);let r=this[fps](t||null,this[bD][0]);return this[Qte](),r}[fps](t,r){if(this[tF])this[XGt]();else{let n=r;t===n.length||t===null?this[XGt]():typeof n=="string"?(this[bD][0]=n.slice(t),r=n.slice(0,t),this[ED]-=t):(this[bD][0]=n.subarray(t),r=n.subarray(0,t),this[ED]-=t)}return this.emit("data",r),!this[bD].length&&!this[Yte]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r="utf8"),t!==void 0&&this.write(t,r),n&&this.once("end",n),this[Yte]=!0,this.writable=!1,(this[yD]||!this[f7e])&&this[Qte](),this}[RGe](){this[gw]||(!this[g0e]&&!this[gL].length&&(this[HO]=!0),this[f7e]=!1,this[yD]=!0,this.emit("resume"),this[bD].length?this[QGt]():this[Yte]?this[Qte]():this.emit("drain"))}resume(){return this[RGe]()}pause(){this[yD]=!1,this[f7e]=!0,this[HO]=!1}get destroyed(){return this[gw]}get flowing(){return this[yD]}get paused(){return this[f7e]}[bUr](t){this[tF]?this[ED]+=1:this[ED]+=t.length,this[bD].push(t)}[XGt](){return this[tF]?this[ED]-=1:this[ED]-=this[bD][0].length,this[bD].shift()}[QGt](t=!1){do;while(this[Ips](this[XGt]())&&this[bD].length);!t&&!this[bD].length&&!this[Yte]&&this.emit("drain")}[Ips](t){return this.emit("data",t),this[yD]}pipe(t,r){if(this[gw])return t;this[HO]=!1;let n=this[Tue];return r=r||{},t===pps.stdout||t===pps.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this[gL].push(r.proxyErrors?new wUr(this,t,r):new UGt(this,t,r)),this[h6]?h7e(()=>this[RGe]()):this[RGe]()),t}unpipe(t){let r=this[gL].find(n=>n.dest===t);r&&(this[gL].length===1?(this[yD]&&this[g0e]===0&&(this[yD]=!1),this[gL]=[]):this[gL].splice(this[gL].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);if(t==="data")this[HO]=!1,this[g0e]++,!this[gL].length&&!this[yD]&&this[RGe]();else if(t==="readable"&&this[ED]!==0)super.emit("readable");else if(mEl(t)&&this[Tue])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[p7e]){let a=r;this[h6]?h7e(()=>a.call(this,this[p7e])):a.call(this,this[p7e])}return n}removeListener(t,r){return this.off(t,r)}off(t,r){let n=super.off(t,r);return t==="data"&&(this[g0e]=this.listeners("data").length,this[g0e]===0&&!this[HO]&&!this[gL].length&&(this[yD]=!1)),n}removeAllListeners(t){let r=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[g0e]=0,!this[HO]&&!this[gL].length&&(this[yD]=!1)),r}get emittedEnd(){return this[Tue]}[Qte](){!this[HGt]&&!this[Tue]&&!this[gw]&&this[bD].length===0&&this[Yte]&&(this[HGt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[YGt]&&this.emit("close"),this[HGt]=!1)}emit(t,...r){let n=r[0];if(t!=="error"&&t!=="close"&&t!==gw&&this[gw])return!1;if(t==="data")return!this[tF]&&!n?!1:this[h6]?(h7e(()=>this[SUr](n)),!0):this[SUr](n);if(t==="end")return this[hps]();if(t==="close"){if(this[YGt]=!0,!this[Tue]&&!this[gw])return!1;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[p7e]=n,super.emit(EUr,n);let o=!this[I7e]||this.listeners("error").length?super.emit("error",n):!1;return this[Qte](),o}else if(t==="resume"){let o=super.emit("resume");return this[Qte](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,...r);return this[Qte](),a}[SUr](t){for(let n of this[gL])n.dest.write(t)===!1&&this.pause();let r=this[HO]?!1:super.emit("data",t);return this[Qte](),r}[hps](){return this[Tue]?!1:(this[Tue]=!0,this.readable=!1,this[h6]?(h7e(()=>this[vUr]()),!0):this[vUr]())}[vUr](){if(this[TGe]){let r=this[TGe].end();if(r){for(let n of this[gL])n.dest.write(r);this[HO]||super.emit("data",r)}}for(let r of this[gL])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[tF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[tF]||(t.dataLength+=n.length)}),await r,t}async concat(){if(this[tF])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[$4]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,r)=>{this.on(gw,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[HO]=!1;let t=!1,r=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[Yte])return r();let o,l,A=b=>{this.off("data",f),this.off("end",I),this.off(gw,C),r(),l(b)},f=b=>{this.off("error",A),this.off("end",I),this.off(gw,C),this.pause(),o({value:b,done:!!this[Yte]})},I=()=>{this.off("error",A),this.off("data",f),this.off(gw,C),r(),o({done:!0,value:void 0})},C=()=>A(new Error("stream destroyed"));return new Promise((b,E)=>{l=E,o=b,this.once(gw,C),this.once("error",A),this.once("end",I),this.once("data",f)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[HO]=!1;let t=!1,r=()=>(this.pause(),this.off(EUr,r),this.off(gw,r),this.off("end",r),t=!0,{done:!0,value:void 0}),n=()=>{if(t)return r();let a=this.read();return a===null?r():{done:!1,value:a}};return this.once("end",r),this.once(EUr,r),this.once(gw,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(t){if(this[gw])return t?this.emit("error",t):this.emit(gw),this;this[gw]=!0,this[HO]=!0,this[bD].length=0,this[ED]=0;let r=this;return typeof r.close=="function"&&!this[YGt]&&r.close(),t?this.emit("error",t):this.emit(gw),this}static get isStream(){return AL.isStream}};AL.Minipass=KGt});var Jte=H((eng,m6)=>{"use strict";var C7e=wt("crypto"),{Minipass:EEl}=rF(),NUr=["sha512","sha384","sha256"],kUr=["sha512"],SEl=/^[a-z0-9+/]+(?:=?=?)$/i,vEl=/^([a-z0-9]+)-([^?]+)([?\S*]*)$/,BEl=/^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,wEl=/^[\x21-\x7E]+$/,_7e=e=>e?.length?`?${e.join("?")}`:"",DUr=class extends EEl{#e;#t;#n;constructor(t){super(),this.size=0,this.opts=t,this.#r(),t?.algorithms?this.algorithms=[...t.algorithms]:this.algorithms=[...kUr],this.algorithm!==null&&!this.algorithms.includes(this.algorithm)&&this.algorithms.push(this.algorithm),this.hashes=this.algorithms.map(C7e.createHash)}#r(){this.sri=this.opts?.integrity?YO(this.opts?.integrity,this.opts):null,this.expectedSize=this.opts?.size,this.sri?this.sri.isHash?(this.goodSri=!0,this.algorithm=this.sri.algorithm):(this.goodSri=!this.sri.isEmpty(),this.algorithm=this.sri.pickAlgorithm(this.opts)):this.algorithm=null,this.digests=this.goodSri?this.sri[this.algorithm]:null,this.optString=_7e(this.opts?.options)}on(t,r){return t==="size"&&this.#t?r(this.#t):t==="integrity"&&this.#e?r(this.#e):t==="verified"&&this.#n?r(this.#n):super.on(t,r)}emit(t,r){return t==="end"&&this.#i(),super.emit(t,r)}write(t){return this.size+=t.length,this.hashes.forEach(r=>r.update(t)),super.write(t)}#i(){this.goodSri||this.#r();let t=YO(this.hashes.map((n,a)=>`${this.algorithms[a]}-${n.digest("base64")}${this.optString}`).join(" "),this.opts),r=this.goodSri&&t.match(this.sri,this.opts);if(typeof this.expectedSize=="number"&&this.size!==this.expectedSize){let n=new Error(`stream size mismatch when checking ${this.sri}. +`}}}}let f=e.cwd,I=Fu.ppath.join(f,V2,$ds);a&&await Op.xfs.removePromise(I),await Op.xfs.changeFilePromise(I,o,{automaticNewlines:!0})}async function gUr(e,{unrollAliases:t=!1}={}){let r=e.cwd,n=Fu.ppath.join(r,V2,$ds),a;try{a=await Op.xfs.statPromise(n)}catch{}if(!a)return null;let o=(0,rEl.parseSyml)(await Op.xfs.readFilePromise(n,"utf8"));if(o.__metadata.version>qds)return null;let l=o.__metadata.nmMode||OO.CLASSIC,A=new Map,f=new Map;delete o.__metadata;for(let[I,C]of Object.entries(o)){let b=C.locations.map(N=>Fu.ppath.join(r,N)),E=C.bin;if(E)for(let[N,B]of Object.entries(E)){let F=Fu.ppath.join(r,Fu.npath.toPortablePath(N)),Q=rp.miscUtils.getMapWithDefault(f,F);for(let[X,ae]of Object.entries(B))Q.set(X,Fu.npath.toPortablePath([F,V2,ae].join(Fu.ppath.sep)))}if(A.set(I,{target:Fu.PortablePath.dot,linkType:q4.LinkType.HARD,locations:b,aliases:C.aliases||[]}),t&&C.aliases)for(let N of C.aliases){let{scope:B,name:F}=rp.structUtils.parseLocator(I),Q=rp.structUtils.makeLocator(rp.structUtils.makeIdent(B,F),N),X=rp.structUtils.stringifyLocator(Q);A.set(X,{target:Fu.PortablePath.dot,linkType:q4.LinkType.HARD,locations:b,aliases:[]})}}return{locatorMap:A,binSymlinks:f,locationTree:eps(A,{skipPrefix:e.cwd}),nmMode:l,mtimeMs:a.mtimeMs}}var bGe=async(e,t)=>{if(e.split(Fu.ppath.sep).indexOf(V2)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Op.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Op.xfs.unlinkPromise(e);return}let n=await Op.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of n){let l=Fu.ppath.join(e,o.name);o.isDirectory()?(o.name!==V2||t&&t.innerLoop)&&await bGe(l,{innerLoop:!0,contentsOnly:!1}):await Op.xfs.unlinkPromise(l)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Op.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},Jds=4,kGt=(e,{skipPrefix:t})=>{let r=Fu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let n=r.split(Fu.ppath.sep).filter(f=>f!==""),a=n.indexOf(V2),o=n.slice(0,a).join(Fu.ppath.sep),l=Fu.ppath.join(t,o),A=n.slice(a);return{locationRoot:l,segments:A}},eps=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let n=()=>({children:new Map,linkType:q4.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===q4.LinkType.SOFT&&Fu.ppath.contains(t,o.target)!==null){let A=rp.miscUtils.getFactoryWithDefault(r,o.target,n);A.locator=a,A.linkType=o.linkType}for(let l of o.locations){let{locationRoot:A,segments:f}=kGt(l,{skipPrefix:t}),I=rp.miscUtils.getFactoryWithDefault(r,A,n);for(let C=0;C{if(process.platform==="win32"&&r===q4.WindowsLinkType.JUNCTIONS){let n;try{n=await Op.xfs.lstatPromise(e)}catch{}if(!n||n.isDirectory()){await Op.xfs.symlinkPromise(e,t,"junction");return}}await Op.xfs.symlinkPromise(Fu.ppath.relative(Fu.ppath.dirname(t),e),t)};async function tps(e,t,r){let n=Fu.ppath.join(e,`${zds.default.randomBytes(16).toString("hex")}.tmp`);try{await Op.xfs.writeFilePromise(n,r);try{await Op.xfs.linkPromise(n,t)}catch{}}finally{await Op.xfs.unlinkPromise(n)}}async function cEl({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:n,baseFs:a,nmMode:o}){if(r.kind===Mte.FILE){if(o.value===OO.HARDLINKS_GLOBAL&&n&&r.digest){let A=Fu.ppath.join(n,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let I=await Op.xfs.statPromise(A);if(I&&(!r.mtimeMs||I.mtimeMs>r.mtimeMs||I.mtimeMs{await Op.xfs.mkdirPromise(e,{recursive:!0});let A=async(C=Fu.PortablePath.dot)=>{let b=Fu.ppath.join(t,C),E=await r.readdirPromise(b,{withFileTypes:!0}),N=new Map;for(let B of E){let F=Fu.ppath.join(C,B.name),Q,X=Fu.ppath.join(b,B.name);if(B.isFile()){if(Q={kind:Mte.FILE,mode:(await r.lstatPromise(X)).mode},a.value===OO.HARDLINKS_GLOBAL){let ae=await Kds.hashUtils.checksumFile(X,{baseFs:r,algorithm:"sha1"});Q.digest=ae}}else if(B.isDirectory())Q={kind:Mte.DIRECTORY};else if(B.isSymbolicLink())Q={kind:Mte.SYMLINK,symlinkTo:await r.readlinkPromise(X)};else throw new Error(`Unsupported file type (file: ${X}, mode: 0o${await r.statSync(X).mode.toString(8).padStart(6,"0")})`);if(N.set(F,Q),B.isDirectory()&&F!==V2){let ae=await A(F);for(let[ne,ce]of ae)N.set(ne,ce)}}return N},f;if(a.value===OO.HARDLINKS_GLOBAL&&n&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Op.xfs.readFilePromise(C,"utf8"))))}catch{f=await A()}}else f=await A();let I=!1;for(let[C,b]of f){let E=Fu.ppath.join(t,C),N=Fu.ppath.join(e,C);if(b.kind===Mte.DIRECTORY)await Op.xfs.mkdirPromise(N,{recursive:!0});else if(b.kind===Mte.FILE){let B=b.mtimeMs;await cEl({srcPath:E,dstPath:N,entry:b,nmMode:a,baseFs:r,globalHardlinksStore:n}),b.mtimeMs!==B&&(I=!0)}else b.kind===Mte.SYMLINK&&await dUr(Fu.ppath.resolve(Fu.ppath.dirname(N),b.symlinkTo),N,o)}if(a.value===OO.HARDLINKS_GLOBAL&&n&&I&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);await Op.xfs.removePromise(C),await tps(n,C,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function uEl(e,t,r,n){let a=new Map,o=new Map,l=new Map,A=!1,f=(I,C,b,E,N)=>{let B=!0,F=Fu.ppath.join(I,C),Q=new Set;if(C===V2||C.startsWith("@")){let ae;try{ae=Op.xfs.statSync(F)}catch{}B=!!ae,ae?ae.mtimeMs>r?(A=!0,Q=new Set(Op.xfs.readdirSync(F))):Q=new Set(b.children.get(C).children.keys()):A=!0;let ne=t.get(I);if(ne){let ce=Fu.ppath.join(I,V2,DGt),fe;try{fe=Op.xfs.statSync(ce)}catch{}if(!fe)A=!0;else if(fe.mtimeMs>r){A=!0;let ue=new Set(Op.xfs.readdirSync(ce)),de=new Map;o.set(I,de);for(let[be,Se]of ne)ue.has(be)&&de.set(be,Se)}else o.set(I,ne)}}else B=N.has(C);let X=b.children.get(C);if(B){let{linkType:ae,locator:ne}=X,ce={children:new Map,linkType:ae,locator:ne};if(E.children.set(C,ce),ne){let fe=rp.miscUtils.getSetWithDefault(l,ne);fe.add(F),l.set(ne,fe)}for(let fe of X.children.keys())f(F,fe,X,ce,Q)}else X.locator&&n.storedBuildState.delete(rp.structUtils.parseLocator(X.locator).locatorHash)};for(let[I,C]of e){let{linkType:b,locator:E}=C,N={children:new Map,linkType:b,locator:E};if(a.set(I,N),E){let B=rp.miscUtils.getSetWithDefault(l,C.locator);B.add(I),l.set(C.locator,B)}C.children.has(V2)&&f(I,V2,C,N,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:l,installChangedByUser:A}}function rps(e){let t=rp.structUtils.parseDescriptor(e);return rp.structUtils.isVirtualDescriptor(t)&&(t=rp.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function gEl(e,t,r,{loadManifest:n}){let a=new Map;for(let[A,{locations:f}]of e){let I=rps(A)?null:await n(A,f[0]),C=new Map;if(I)for(let[b,E]of I.bin){let N=Fu.ppath.join(f[0],E);E!==""&&Op.xfs.existsSync(N)&&C.set(b,E)}a.set(A,C)}let o=new Map,l=(A,f,I)=>{let C=new Map,b=Fu.ppath.contains(r,A);if(I.locator&&b!==null){let E=a.get(I.locator);for(let[N,B]of E){let F=Fu.ppath.join(A,Fu.npath.toPortablePath(B));C.set(N,F)}for(let[N,B]of I.children){let F=Fu.ppath.join(A,N),Q=l(F,F,B);Q.size>0&&o.set(A,new Map([...o.get(A)||new Map,...Q]))}}else for(let[E,N]of I.children){let B=l(Fu.ppath.join(A,E),f,N);for(let[F,Q]of B)C.set(F,Q)}return C};for(let[A,f]of t){let I=l(A,A,f);I.size>0&&o.set(A,new Map([...o.get(A)||new Map,...I]))}return o}var Uds=(e,t)=>{if(!e||!t)return e===t;let r=rp.structUtils.parseLocator(e);rp.structUtils.isVirtualLocator(r)&&(r=rp.structUtils.devirtualizeLocator(r));let n=rp.structUtils.parseLocator(t);return rp.structUtils.isVirtualLocator(n)&&(n=rp.structUtils.devirtualizeLocator(n)),rp.structUtils.areLocatorsEqual(r,n)};function nps(e){return Fu.ppath.join(e.get("globalFolder"),"store")}function AEl(e,t){let r=n=>{let a=n.split(Fu.ppath.sep),o=a.lastIndexOf(V2);if(o<0||o==a.length-1)throw new Error(`Assertion failed. Path is outside of any node_modules package ${n}`);return a.slice(0,o+(a[o+1].startsWith("@")?3:2)).join(Fu.ppath.sep)};for(let n of e.values())for(let[a,o]of n)t.has(r(o))&&n.delete(a)}async function dEl(e,t,{baseFs:r,project:n,report:a,loadManifest:o,realLocatorChecksums:l}){let A=Fu.ppath.join(n.cwd,V2),{locationTree:f,binSymlinks:I,locatorLocations:C,installChangedByUser:b}=uEl(e.locationTree,e.binSymlinks,e.mtimeMs,n),E=eps(t,{skipPrefix:n.cwd}),N=[],B=async({srcDir:Se,dstDir:De,linkType:k,globalHardlinksStore:et,nmMode:ct,windowsLinkType:Me,packageChecksum:je})=>{let St=(async()=>{try{k===q4.LinkType.SOFT?(await Op.xfs.mkdirPromise(Fu.ppath.dirname(De),{recursive:!0}),await dUr(Fu.ppath.resolve(Se),De,Me)):await lEl(De,Se,{baseFs:r,globalHardlinksStore:et,nmMode:ct,windowsLinkType:Me,packageChecksum:je})}catch(At){throw At.message=`While persisting ${Se} -> ${De} ${At.message}`,At}finally{ce.tick()}})().then(()=>N.splice(N.indexOf(St),1));N.push(St),N.length>Jds&&await Promise.race(N)},F=async(Se,De,k)=>{let et=(async()=>{let ct=async(Me,je,St)=>{try{St.innerLoop||await Op.xfs.mkdirPromise(je,{recursive:!0});let At=await Op.xfs.readdirPromise(Me,{withFileTypes:!0});for(let Yt of At){if(!St.innerLoop&&Yt.name===DGt)continue;let Tr=Fu.ppath.join(Me,Yt.name),Nr=Fu.ppath.join(je,Yt.name);Yt.isDirectory()?(Yt.name!==V2||St&&St.innerLoop)&&(await Op.xfs.mkdirPromise(Nr,{recursive:!0}),await ct(Tr,Nr,{...St,innerLoop:!0})):de.value===OO.HARDLINKS_LOCAL||de.value===OO.HARDLINKS_GLOBAL?await Op.xfs.linkPromise(Tr,Nr):await Op.xfs.copyFilePromise(Tr,Nr,iEl.default.constants.COPYFILE_FICLONE)}}catch(At){throw St.innerLoop||(At.message=`While cloning ${Me} -> ${je} ${At.message}`),At}finally{St.innerLoop||ce.tick()}};await ct(Se,De,k)})().then(()=>N.splice(N.indexOf(et),1));N.push(et),N.length>Jds&&await Promise.race(N)},Q=async(Se,De,k)=>{if(k)for(let[et,ct]of De.children){let Me=k.children.get(et);await Q(Fu.ppath.join(Se,et),ct,Me)}else{De.children.has(V2)&&await bGe(Fu.ppath.join(Se,V2),{contentsOnly:!1});let et=Fu.ppath.basename(Se)===V2&&f.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await bGe(Se,{contentsOnly:Se===A,isWorkspaceDir:et})}};for(let[Se,De]of f){let k=E.get(Se);for(let[et,ct]of De.children){if(et===".")continue;let Me=k&&k.children.get(et),je=Fu.ppath.join(Se,et);await Q(je,ct,Me)}}let X=async(Se,De,k)=>{if(k){Uds(De.locator,k.locator)||await bGe(Se,{contentsOnly:De.linkType===q4.LinkType.HARD});for(let[et,ct]of De.children){let Me=k.children.get(et);await X(Fu.ppath.join(Se,et),ct,Me)}}else{De.children.has(V2)&&await bGe(Fu.ppath.join(Se,V2),{contentsOnly:!0});let et=Fu.ppath.basename(Se)===V2&&E.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await bGe(Se,{contentsOnly:De.linkType===q4.LinkType.HARD,isWorkspaceDir:et})}};for(let[Se,De]of E){let k=f.get(Se);for(let[et,ct]of De.children){if(et===".")continue;let Me=k&&k.children.get(et);await X(Fu.ppath.join(Se,et),ct,Me)}}let ae=new Map,ne=[];for(let[Se,De]of C)for(let k of De){let{locationRoot:et,segments:ct}=kGt(k,{skipPrefix:n.cwd}),Me=E.get(et),je=et;if(Me){for(let St of ct)if(je=Fu.ppath.join(je,St),Me=Me.children.get(St),!Me)break;if(Me){let St=Uds(Me.locator,Se),At=t.get(Me.locator),Yt=At.target,Tr=je,Nr=At.linkType;if(St)ae.has(Yt)||ae.set(Yt,Tr);else if(Yt!==Tr){let er=rp.structUtils.parseLocator(Me.locator);rp.structUtils.isVirtualLocator(er)&&(er=rp.structUtils.devirtualizeLocator(er)),ne.push({srcDir:Yt,dstDir:Tr,linkType:Nr,realLocatorHash:er.locatorHash})}}}}for(let[Se,{locations:De}]of t.entries())for(let k of De){let{locationRoot:et,segments:ct}=kGt(k,{skipPrefix:n.cwd}),Me=f.get(et),je=E.get(et),St=et,At=t.get(Se),Yt=rp.structUtils.parseLocator(Se);rp.structUtils.isVirtualLocator(Yt)&&(Yt=rp.structUtils.devirtualizeLocator(Yt));let Tr=Yt.locatorHash,Nr=At.target,er=k;if(Nr===er)continue;let vt=At.linkType;for(let xt of ct)je=je.children.get(xt);if(!Me)ne.push({srcDir:Nr,dstDir:er,linkType:vt,realLocatorHash:Tr});else for(let xt of ct)if(St=Fu.ppath.join(St,xt),Me=Me.children.get(xt),!Me){ne.push({srcDir:Nr,dstDir:er,linkType:vt,realLocatorHash:Tr});break}}let ce=rp.Report.progressViaCounter(ne.length),fe=a.reportProgress(ce),ue=n.configuration.get("nmMode"),de={value:ue},be=n.configuration.get("winLinkType");try{let Se=de.value===OO.HARDLINKS_GLOBAL?`${nps(n.configuration)}/v1`:null;if(Se&&!await Op.xfs.existsPromise(Se)){await Op.xfs.mkdirpPromise(Se);for(let k=0;k<256;k++)await Op.xfs.mkdirPromise(Fu.ppath.join(Se,k.toString(16).padStart(2,"0")))}for(let k of ne)(k.linkType===q4.LinkType.SOFT||!ae.has(k.srcDir))&&(ae.set(k.srcDir,k.dstDir),await B({...k,globalHardlinksStore:Se,nmMode:de,windowsLinkType:be,packageChecksum:l.get(k.realLocatorHash)||null}));await Promise.all(N),N.length=0;for(let k of ne){let et=ae.get(k.srcDir);k.linkType!==q4.LinkType.SOFT&&k.dstDir!==et&&await F(et,k.dstDir,{nmMode:de})}await Promise.all(N),await Op.xfs.mkdirPromise(A,{recursive:!0}),AEl(I,new Set(ne.map(k=>k.dstDir)));let De=await gEl(t,E,n.cwd,{loadManifest:o});await pEl(I,De,n.cwd,be),await aEl(n,t,De,de,{installChangedByUser:b}),ue==OO.HARDLINKS_GLOBAL&&de.value==OO.HARDLINKS_LOCAL&&a.reportWarningOnce(cUr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function pEl(e,t,r,n){for(let a of e.keys()){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=Fu.ppath.join(a,V2,DGt);await Op.xfs.removePromise(o)}}for(let[a,o]of t){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let l=Fu.ppath.join(a,V2,DGt),A=e.get(a)||new Map;await Op.xfs.mkdirPromise(l,{recursive:!0});for(let f of A.keys())o.has(f)||(await Op.xfs.removePromise(Fu.ppath.join(l,f)),process.platform==="win32"&&await Op.xfs.removePromise(Fu.ppath.join(l,`${f}.cmd`)));for(let[f,I]of o){let C=A.get(f),b=Fu.ppath.join(l,f);C!==I&&(process.platform==="win32"?await(0,nEl.default)(Fu.npath.fromPortablePath(I),Fu.npath.fromPortablePath(b),{createPwshFile:!1}):(await Op.xfs.removePromise(b),await dUr(I,b,n),Fu.ppath.contains(r,await Op.xfs.realpathPromise(I))!==null&&await Op.xfs.chmodPromise(I,493)))}}}});var ops=H(xGt=>{"use strict";Object.defineProperty(xGt,"__esModule",{value:!0});xGt.PnpLooseLinker=void 0;var ips=yn(),l7e=zs(),fEl=zK(),IEl=r7e(),sps=CGe(),hEl=YJr(),fUr=class extends sps.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new IUr(t)}};xGt.PnpLooseLinker=fUr;var IUr=class extends sps.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new l7e.VirtualFS({baseFs:new fEl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),n=(0,hEl.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,IEl.buildNodeModulesTree)(n,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:C,text:b}of o)this.opts.report.reportError(C,b);return}let l=new Map;t.fallbackPool=l;let A=(C,b)=>{let E=ips.structUtils.parseLocator(b.locator),N=ips.structUtils.stringifyIdent(E);N===C?l.set(C,E.reference):l.set(C,[N,E.reference])},f=l7e.ppath.join(this.opts.project.cwd,l7e.Filename.nodeModules),I=a.get(f);if(!(typeof I>"u")){if("target"in I)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let C of I.dirList){let b=l7e.ppath.join(f,C),E=a.get(b);if(typeof E>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in E)A(C,E);else for(let N of E.dirList){let B=l7e.ppath.join(b,N),F=a.get(B);if(typeof F>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in F)A(`${C}/${N}`,F);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var cps=H(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.PnpLooseLinker=Hte.NodeModulesMode=Hte.NodeModulesLinker=void 0;var hUr=yn(),mEl=zs(),GGt=r7e(),c0e=pUr();Object.defineProperty(Hte,"NodeModulesLinker",{enumerable:!0,get:function(){return c0e.NodeModulesLinker}});Object.defineProperty(Hte,"NodeModulesMode",{enumerable:!0,get:function(){return c0e.NodeModulesMode}});var CEl=pUr(),aps=ops();Object.defineProperty(Hte,"PnpLooseLinker",{enumerable:!0,get:function(){return aps.PnpLooseLinker}});var _El={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,CEl.getGlobalHardlinksStore)(e);await mEl.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:hUr.SettingsType.STRING,values:[GGt.NodeModulesHoistingLimits.WORKSPACES,GGt.NodeModulesHoistingLimits.DEPENDENCIES,GGt.NodeModulesHoistingLimits.NONE],default:GGt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:hUr.SettingsType.STRING,values:[c0e.NodeModulesMode.CLASSIC,c0e.NodeModulesMode.HARDLINKS_LOCAL,c0e.NodeModulesMode.HARDLINKS_GLOBAL],default:c0e.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:hUr.SettingsType.BOOLEAN,default:!0}},linkers:[c0e.NodeModulesLinker,aps.PnpLooseLinker]};Hte.default=_El});var EGe=H(FGt=>{"use strict";Object.defineProperty(FGt,"__esModule",{value:!0});FGt.PROTOCOL=void 0;FGt.PROTOCOL="npm:"});var l0e=H(MO=>{"use strict";Object.defineProperty(MO,"__esModule",{value:!0});MO.RegistryType=void 0;MO.normalizeRegistry=SGe;MO.getAuditRegistry=EEl;MO.getPublishRegistry=SEl;MO.getScopeRegistry=lps;MO.getDefaultRegistry=u7e;MO.getRegistryConfiguration=ups;MO.getScopeConfiguration=mUr;MO.getAuthConfiguration=BEl;MO.isPackageApproved=NEl;var yEl=(Pa(),vi(Va)),ZGt=yn(),bEl=yEl.__importDefault(Ek()),Bue;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(Bue||(MO.RegistryType=Bue={}));function SGe(e){return e.replace(/\/$/,"")}function EEl({configuration:e}){return u7e({configuration:e,type:Bue.AUDIT_REGISTRY})}function SEl(e,{configuration:t}){return e.publishConfig?.registry?SGe(e.publishConfig.registry):e.name?lps(e.name.scope,{configuration:t,type:Bue.PUBLISH_REGISTRY}):u7e({configuration:t,type:Bue.PUBLISH_REGISTRY})}function lps(e,{configuration:t,type:r=Bue.FETCH_REGISTRY}){let n=mUr(e,{configuration:t});if(n===null)return u7e({configuration:t,type:r});let a=n.get(r);return a===null?u7e({configuration:t,type:r}):SGe(a)}function u7e({configuration:e,type:t=Bue.FETCH_REGISTRY}){let r=e.get(t);return SGe(r!==null?r:e.get(Bue.FETCH_REGISTRY))}function ups(e,{configuration:t}){let r=t.get("npmRegistries"),n=SGe(e),a=r.get(n);if(typeof a<"u")return a;let o=r.get(n.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}var vEl=new Map([["npmRegistryServer","https://npm.jsr.io/"]]);function mUr(e,{configuration:t}){if(e===null)return null;let n=t.get("npmScopes").get(e);return n||(e==="jsr"?vEl:null)}function BEl(e,{configuration:t,ident:r}){let n=r&&mUr(r.scope,{configuration:t});return n?.get("npmAuthIdent")||n?.get("npmAuthToken")?n:ups(e,{configuration:t})||t}function wEl({configuration:e,version:t,publishTimes:r}){let n=e.get("npmMinimalAgeGate");if(n){let a=r?.[t];if(typeof a>"u"||(new Date().getTime()-new Date(a).getTime())/60/1e3TEl(t,r,n))}function NEl(e){return!wEl(e)||REl(e)}});var BGe=H(FH=>{"use strict";Object.defineProperty(FH,"__esModule",{value:!0});FH.AuthType=void 0;FH.handleInvalidAuthenticationError=Tue;FH.customPackageError=dps;FH.getIdentUrl=_Ur;FH.getPackageMetadata=LEl;FH.get=Ips;FH.post=MEl;FH.put=HEl;FH.del=YEl;var Aps=(Pa(),vi(Va)),ET=yn(),wue=yn(),Yte=zs(),gps=Vje(),DEl=kW(),kEl=Aps.__importDefault(UC()),CUr=Aps.__importStar(l0e()),GH;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(GH||(FH.AuthType=GH={}));async function Tue(e,{attemptedAs:t,registry:r,headers:n,configuration:a}){if(VGt(e))throw new wue.ReportError(wue.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new wue.ReportError(wue.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await XEl(r,n,{configuration:a})}`:`attempted as ${t}`})`)}function dps(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${ET.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}function _Ur(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}var pps=new Map,xEl=new Map;async function GEl(e){return await ET.miscUtils.getFactoryWithDefault(pps,e,async()=>{let t=null;try{t=await Yte.xfs.readJsonPromise(e)}catch{}return t})}async function FEl(e,t,{configuration:r,cached:n,registry:a,headers:o,version:l,...A}){return await ET.miscUtils.getFactoryWithDefault(xEl,e,async()=>await Ips(_Ur(t),{...A,customErrorMessage:dps,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":n?.etag,"If-Modified-Since":n?.lastModified},wrapNetworkRequest:async f=>async()=>{let I=await f();if(I.statusCode===304){if(n===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...I,body:n.metadata}}let C=VEl(JSON.parse(I.body.toString())),b={metadata:C,etag:I.headers.etag,lastModified:I.headers["last-modified"]};return pps.set(e,Promise.resolve(b)),Promise.resolve().then(async()=>{let E=`${e}-${process.pid}.tmp`;await Yte.xfs.mkdirPromise(Yte.ppath.dirname(E),{recursive:!0}),await Yte.xfs.writeJsonPromise(E,b,{compact:!0}),await Yte.xfs.renamePromise(E,e)}).catch(()=>{}),{...I,body:C}}}))}function ZEl(e){return e.scope!==null?`@${e.scope}-${e.name}-${e.scope.length}`:e.name}async function LEl(e,{cache:t,project:r,registry:n,headers:a,version:o,...l}){let{configuration:A}=r;n=g7e(A,{ident:e,registry:n});let f=WEl(A,n),I=Yte.ppath.join(f,`${ZEl(e)}.json`),C=null;if(!r.lockfileNeedsRefresh&&(C=await GEl(I),C)){if(typeof o<"u"&&typeof C.metadata.versions[o]<"u")return C.metadata;if(A.get("enableOfflineMode")){let b=structuredClone(C.metadata),E=new Set;if(t){for(let B of Object.keys(b.versions)){let F=ET.structUtils.makeLocator(e,`npm:${B}`),Q=t.getLocatorMirrorPath(F);(!Q||!Yte.xfs.existsSync(Q))&&(delete b.versions[B],E.add(B))}let N=b["dist-tags"].latest;if(E.has(N)){let B=Object.keys(C.metadata.versions).sort(kEl.default.compare),F=B.indexOf(N);for(;E.has(B[F])&&F>=0;)F-=1;F>=0?b["dist-tags"].latest=B[F]:delete b["dist-tags"].latest}}return b}}return await FEl(I,e,{...l,configuration:A,cached:C,registry:n,headers:a,version:o})}var fps=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function VEl(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,DEl.pick)(r,fps)])),time:e.time}}var PEl=ET.hashUtils.makeHash("time",...fps).slice(0,6);function WEl(e,t){let r=OEl(e),n=new URL(t);return Yte.ppath.join(r,PEl,n.hostname)}function OEl(e){return Yte.ppath.join(e.get("globalFolder"),"metadata/npm")}async function Ips(e,{configuration:t,headers:r,ident:n,authType:a,allowOidc:o,registry:l,...A}){l=g7e(t,{ident:n,registry:l}),n&&n.scope&&typeof a>"u"&&(a=GH.BEST_EFFORT);let f=await LGt(l,{authType:a,allowOidc:o,configuration:t,ident:n});f&&(r={...r,authorization:f});try{return await ET.httpUtils.get(e.charAt(0)==="/"?`${l}${e}`:e,{configuration:t,headers:r,...A})}catch(I){throw await Tue(I,{registry:l,configuration:t,headers:r}),I}}async function MEl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=GH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=g7e(n,{ident:o,registry:f});let b=await LGt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...vGe(I)});try{return await ET.httpUtils.post(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!VGt(E)||I)throw await Tue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await yUr(E,{configuration:n});let N={...a,...vGe(I)};try{return await ET.httpUtils.post(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await Tue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function HEl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=GH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=g7e(n,{ident:o,registry:f});let b=await LGt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...vGe(I)});try{return await ET.httpUtils.put(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!VGt(E))throw await Tue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await yUr(E,{configuration:n});let N={...a,...vGe(I)};try{return await ET.httpUtils.put(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await Tue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function YEl(e,{attemptedAs:t,configuration:r,headers:n,ident:a,authType:o=GH.ALWAYS_AUTH,allowOidc:l,registry:A,otp:f,...I}){A=g7e(r,{ident:a,registry:A});let C=await LGt(A,{authType:o,allowOidc:l,configuration:r,ident:a});C&&(n={...n,authorization:C}),f&&(n={...n,...vGe(f)});try{return await ET.httpUtils.del(A+e,{configuration:r,headers:n,...I})}catch(b){if(!VGt(b)||f)throw await Tue(b,{attemptedAs:t,registry:A,configuration:r,headers:n}),b;f=await yUr(b,{configuration:r});let E={...n,...vGe(f)};try{return await ET.httpUtils.del(`${A}${e}`,{configuration:r,headers:E,...I})}catch(N){throw await Tue(N,{attemptedAs:t,registry:A,configuration:r,headers:n}),N}}}function g7e(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return CUr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return CUr.normalizeRegistry(r)}async function LGt(e,{authType:t=GH.CONFIGURATION,allowOidc:r=!1,configuration:n,ident:a}){let o=CUr.getAuthConfiguration(e,{configuration:n,ident:a}),l=QEl(o,t);if(!l)return null;let A=await n.reduceHook(f=>f.getNpmAuthenticationHeader,void 0,e,{configuration:n,ident:a});if(A)return A;if(o.get("npmAuthToken"))return`Bearer ${o.get("npmAuthToken")}`;if(o.get("npmAuthIdent")){let f=o.get("npmAuthIdent");return f.includes(":")?`Basic ${Buffer.from(f).toString("base64")}`:`Basic ${f}`}if(r&&a){let f=await JEl(e,{configuration:n,ident:a});if(f)return`Bearer ${f}`}if(l&&t!==GH.BEST_EFFORT)throw new wue.ReportError(wue.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function QEl(e,t){switch(t){case GH.CONFIGURATION:return e.get("npmAlwaysAuth");case GH.BEST_EFFORT:case GH.ALWAYS_AUTH:return!0;case GH.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function XEl(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await ET.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function yUr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await ET.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(wue.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,ET.formatUtils.pretty(t,"$1",ET.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&ET.nodeUtils.openUrl){let{openNow:l}=await(0,gps.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});l&&(await ET.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(wue.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` +`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:n}=await(0,gps.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` +`),n}function VGt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function vGe(e){return{"npm-otp":e}}async function JEl(e,{configuration:t,ident:r}){let n=null;if(process.env.GITLAB_CI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.CIRCLECI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.GITHUB_ACTIONS){if(!(process.env.ACTIONS_ID_TOKEN_REQUEST_URL&&process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN))return null;let a=`npm:${new URL(e).host.replace("registry.yarnpkg.com","registry.npmjs.org").replace("yarn.npmjs.org","registry.npmjs.org")}`,o=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);o.searchParams.append("audience",a),n=(await ET.httpUtils.get(o.href,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).value}if(!n)return null;try{return(await ET.httpUtils.post(`${e}/-/npm/v1/oidc/token/exchange/package${_Ur(r)}`,null,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${n}`}})).token||null}catch{}return null}});var Cps=H(PGt=>{"use strict";Object.defineProperty(PGt,"__esModule",{value:!0});PGt.NpmHttpFetcher=void 0;var mps=(Pa(),vi(Va)),wGe=yn(),UEl=mps.__importDefault(UC()),KEl=EGe(),hps=mps.__importStar(BGe()),bUr=class{supports(t,r){if(!t.reference.startsWith(KEl.PROTOCOL))return!1;let{selector:n,params:a}=wGe.structUtils.parseRange(t.reference);return!(!UEl.default.valid(n)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${wGe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:wGe.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let{params:n}=wGe.structUtils.parseRange(t.reference);if(n===null||typeof n.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await hps.get(n.__archiveUrl,{customErrorMessage:hps.customPackageError,configuration:r.project.configuration,ident:t});return await wGe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:wGe.structUtils.getIdentVendorPath(t),stripComponents:1})}};PGt.NpmHttpFetcher=bUr});var _ps=H(OGt=>{"use strict";Object.defineProperty(OGt,"__esModule",{value:!0});OGt.NpmRemapResolver=void 0;var WGt=yn(),A7e=EGe(),EUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(A7e.PROTOCOL)||!WGt.structUtils.tryParseDescriptor(t.range.slice(A7e.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){let n=r.project.configuration.normalizeDependency(WGt.structUtils.parseDescriptor(t.range.slice(A7e.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(n,r)}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency(WGt.structUtils.parseDescriptor(t.range.slice(A7e.PROTOCOL.length),!0));return await n.resolver.getCandidates(a,r,n)}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency(WGt.structUtils.parseDescriptor(t.range.slice(A7e.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,n,a)}resolve(t,r){throw new Error("Unreachable")}};OGt.NpmRemapResolver=EUr});var HGt=H(MGt=>{"use strict";Object.defineProperty(MGt,"__esModule",{value:!0});MGt.NpmSemverFetcher=void 0;var vUr=(Pa(),vi(Va)),d7e=yn(),yps=yn(),jEl=vUr.__importDefault(UC()),bps=EGe(),zEl=vUr.__importStar(l0e()),p7e=vUr.__importStar(BGe()),SUr=class e{supports(t,r){if(!t.reference.startsWith(bps.PROTOCOL))return!1;let n=new URL(t.reference);return!(!jEl.default.valid(n.pathname)||n.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${d7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:d7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n;try{n=await p7e.get(e.getLocatorUrl(t),{customErrorMessage:p7e.customPackageError,configuration:r.project.configuration,ident:t})}catch{n=await p7e.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:p7e.customPackageError,configuration:r.project.configuration,ident:t})}return await d7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:d7e.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:n}){let a=zEl.getScopeRegistry(t.scope,{configuration:n}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=d7e.semverUtils.clean(t.reference.slice(bps.PROTOCOL.length));if(r===null)throw new yps.ReportError(yps.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${p7e.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};MGt.NpmSemverFetcher=SUr});var Bps=H(QGt=>{"use strict";Object.defineProperty(QGt,"__esModule",{value:!0});QGt.NpmSemverResolver=void 0;var vps=(Pa(),vi(Va)),uL=yn(),TGe=yn(),qEl=yn(),u0e=yn(),Eps=vps.__importDefault(UC()),$El=HGt(),I6=EGe(),e1l=l0e(),Sps=vps.__importStar(BGe()),YGt=u0e.structUtils.makeIdent(null,"node-gyp"),t1l=/\b(node-gyp|prebuild-install)\b/,BUr=class{supportsDescriptor(t,r){return t.range.startsWith(I6.PROTOCOL)?!!TGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(I6.PROTOCOL))return!1;let{selector:n}=u0e.structUtils.parseRange(t.reference);return!!Eps.default.valid(n)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=TGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(I6.PROTOCOL.length)}`);let o=await Sps.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project,version:Eps.default.valid(a.raw)?a.raw:void 0}),l=uL.miscUtils.mapAndFilter(Object.keys(o.versions),C=>{try{let b=new TGe.semverUtils.SemVer(C);if(a.test(b))return b}catch{}return uL.miscUtils.mapAndFilter.skip}),A=l.filter(C=>(0,e1l.isPackageApproved)({configuration:n.project.configuration,ident:t,version:C.raw,publishTimes:o.time}));if(l.length>0&&A.length===0)throw new uL.ReportError(uL.MessageName.REMOTE_NOT_FOUND,`All versions satisfying "${t.range.slice(I6.PROTOCOL.length)}" are quarantined`);let f=A.filter(C=>!o.versions[C.raw].deprecated),I=f.length>0?f:A;return I.sort((C,b)=>-C.compare(b)),I.map(C=>{let b=u0e.structUtils.makeLocator(t,`${I6.PROTOCOL}${C.raw}`),E=o.versions[C.raw].dist.tarball;return $El.NpmSemverFetcher.isConventionalTarballUrl(b,E,{configuration:n.project.configuration})?b:u0e.structUtils.bindLocator(b,{__archiveUrl:E})})}async getSatisfying(t,r,n,a){let o=TGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(I6.PROTOCOL.length)}`);return{locators:uL.miscUtils.mapAndFilter(n,f=>{if(f.identHash!==t.identHash)return uL.miscUtils.mapAndFilter.skip;let I=u0e.structUtils.tryParseRange(f.reference,{requireProtocol:I6.PROTOCOL});if(!I)return uL.miscUtils.mapAndFilter.skip;let C=new TGe.semverUtils.SemVer(I.selector);return o.test(C)?{locator:f,version:C}:uL.miscUtils.mapAndFilter.skip}).sort((f,I)=>-f.version.compare(I.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:n}=u0e.structUtils.parseRange(t.reference),a=TGe.semverUtils.clean(n);if(a===null)throw new uL.ReportError(uL.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await Sps.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new uL.ReportError(uL.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new uL.ReportError(uL.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let l=new uL.Manifest;if(l.load(o.versions[a]),!l.dependencies.has(YGt.identHash)&&!l.peerDependencies.has(YGt.identHash)){for(let A of l.scripts.values())if(A.match(t1l)){l.dependencies.set(YGt.identHash,u0e.structUtils.makeDescriptor(YGt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:qEl.LinkType.HARD,conditions:l.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(l.dependencies),peerDependencies:l.peerDependencies,dependenciesMeta:l.dependenciesMeta,peerDependenciesMeta:l.peerDependenciesMeta,bin:l.bin}}};QGt.NpmSemverResolver=BUr});var Rps=H(XGt=>{"use strict";Object.defineProperty(XGt,"__esModule",{value:!0});XGt.NpmTagResolver=void 0;var Tps=(Pa(),vi(Va)),g0e=yn(),f7e=yn(),wUr=Tps.__importDefault(UC()),r1l=HGt(),RGe=EGe(),wps=l0e(),n1l=Tps.__importStar(BGe()),TUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(RGe.PROTOCOL)||!g0e.TAG_REGEXP.test(t.range.slice(RGe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(RGe.PROTOCOL.length),o=await n1l.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project});if(!Object.hasOwn(o,"dist-tags"))throw new g0e.ReportError(g0e.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let l=o["dist-tags"];if(!Object.hasOwn(l,a))throw new g0e.ReportError(g0e.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let A=Object.keys(o.versions),f=o.time,I=l[a];if(a==="latest"&&!(0,wps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:I,publishTimes:f})){let E=I.includes("-"),N=wUr.default.rsort(A).find(B=>wUr.default.lt(B,I)&&(E||!B.includes("-"))&&(0,wps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:B,publishTimes:f}));if(!N)throw new g0e.ReportError(g0e.MessageName.REMOTE_NOT_FOUND,`The version for tag "${a}" is quarantined, and no lower version is available`);I=N}let C=f7e.structUtils.makeLocator(t,`${RGe.PROTOCOL}${I}`),b=o.versions[I].dist.tarball;return r1l.NpmSemverFetcher.isConventionalTarballUrl(C,b,{configuration:n.project.configuration})?[C]:[f7e.structUtils.bindLocator(C,{__archiveUrl:b})]}async getSatisfying(t,r,n,a){let o=[];for(let l of n){if(l.identHash!==t.identHash)continue;let A=f7e.structUtils.tryParseRange(l.reference,{requireProtocol:RGe.PROTOCOL});if(!(!A||!wUr.default.valid(A.selector))){if(A.params?.__archiveUrl){let f=f7e.structUtils.makeRange({protocol:RGe.PROTOCOL,selector:A.selector,source:null,params:null}),[I]=await a.resolver.getCandidates(f7e.structUtils.makeDescriptor(t,f),r,a);if(l.reference!==I.reference)continue}o.push(l)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};XGt.NpmTagResolver=TUr});var rF=H(AL=>{"use strict";var i1l=AL&&AL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AL,"__esModule",{value:!0});AL.Minipass=AL.isWritable=AL.isReadable=AL.isStream=void 0;var Nps=typeof process=="object"&&process?process:{stdout:null,stderr:null},FUr=wt("node:events"),Gps=i1l(wt("node:stream")),s1l=wt("node:string_decoder"),o1l=e=>!!e&&typeof e=="object"&&(e instanceof $Gt||e instanceof Gps.default||(0,AL.isReadable)(e)||(0,AL.isWritable)(e));AL.isStream=o1l;var a1l=e=>!!e&&typeof e=="object"&&e instanceof FUr.EventEmitter&&typeof e.pipe=="function"&&e.pipe!==Gps.default.Writable.prototype.pipe;AL.isReadable=a1l;var c1l=e=>!!e&&typeof e=="object"&&e instanceof FUr.EventEmitter&&typeof e.write=="function"&&typeof e.end=="function";AL.isWritable=c1l;var Qte=Symbol("EOF"),Xte=Symbol("maybeEmitEnd"),Rue=Symbol("emittedEnd"),JGt=Symbol("emittingEnd"),I7e=Symbol("emittedError"),UGt=Symbol("closed"),Dps=Symbol("read"),KGt=Symbol("flush"),kps=Symbol("flushChunk"),$4=Symbol("encoding"),NGe=Symbol("decoder"),yD=Symbol("flowing"),h7e=Symbol("paused"),DGe=Symbol("resume"),bD=Symbol("buffer"),gL=Symbol("pipes"),ED=Symbol("bufferLength"),RUr=Symbol("bufferPush"),jGt=Symbol("bufferShift"),tF=Symbol("objectMode"),gw=Symbol("destroyed"),NUr=Symbol("error"),DUr=Symbol("emitData"),xps=Symbol("emitEnd"),kUr=Symbol("emitEnd2"),h6=Symbol("async"),xUr=Symbol("abort"),zGt=Symbol("aborted"),m7e=Symbol("signal"),A0e=Symbol("dataListeners"),HO=Symbol("discarded"),C7e=e=>Promise.resolve().then(e),l1l=e=>e(),u1l=e=>e==="end"||e==="finish"||e==="prefinish",g1l=e=>e instanceof ArrayBuffer||!!e&&typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,A1l=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),qGt=class{src;dest;opts;ondrain;constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[DGe](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},GUr=class extends qGt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},d1l=e=>!!e.objectMode,p1l=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer",$Gt=class extends FUr.EventEmitter{[yD]=!1;[h7e]=!1;[gL]=[];[bD]=[];[tF];[$4];[h6];[NGe];[Qte]=!1;[Rue]=!1;[JGt]=!1;[UGt]=!1;[I7e]=null;[ED]=0;[gw]=!1;[m7e];[zGt]=!1;[A0e]=0;[HO]=!1;writable=!0;readable=!0;constructor(...t){let r=t[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");d1l(r)?(this[tF]=!0,this[$4]=null):p1l(r)?(this[$4]=r.encoding,this[tF]=!1):(this[tF]=!1,this[$4]=null),this[h6]=!!r.async,this[NGe]=this[$4]?new s1l.StringDecoder(this[$4]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[bD]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[gL]});let{signal:n}=r;n&&(this[m7e]=n,n.aborted?this[xUr]():n.addEventListener("abort",()=>this[xUr]()))}get bufferLength(){return this[ED]}get encoding(){return this[$4]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tF]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[h6]}set async(t){this[h6]=this[h6]||!!t}[xUr](){this[zGt]=!0,this.emit("abort",this[m7e]?.reason),this.destroy(this[m7e]?.reason)}get aborted(){return this[zGt]}set aborted(t){}write(t,r,n){if(this[zGt])return!1;if(this[Qte])throw new Error("write after end");if(this[gw])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[h6]?C7e:l1l;if(!this[tF]&&!Buffer.isBuffer(t)){if(A1l(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(g1l(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tF]?(this[yD]&&this[ED]!==0&&this[KGt](!0),this[yD]?this.emit("data",t):this[RUr](t),this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD]):t.length?(typeof t=="string"&&!(r===this[$4]&&!this[NGe]?.lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[$4]&&(t=this[NGe].write(t)),this[yD]&&this[ED]!==0&&this[KGt](!0),this[yD]?this.emit("data",t):this[RUr](t),this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD]):(this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD])}read(t){if(this[gw])return null;if(this[HO]=!1,this[ED]===0||t===0||t&&t>this[ED])return this[Xte](),null;this[tF]&&(t=null),this[bD].length>1&&!this[tF]&&(this[bD]=[this[$4]?this[bD].join(""):Buffer.concat(this[bD],this[ED])]);let r=this[Dps](t||null,this[bD][0]);return this[Xte](),r}[Dps](t,r){if(this[tF])this[jGt]();else{let n=r;t===n.length||t===null?this[jGt]():typeof n=="string"?(this[bD][0]=n.slice(t),r=n.slice(0,t),this[ED]-=t):(this[bD][0]=n.subarray(t),r=n.subarray(0,t),this[ED]-=t)}return this.emit("data",r),!this[bD].length&&!this[Qte]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r="utf8"),t!==void 0&&this.write(t,r),n&&this.once("end",n),this[Qte]=!0,this.writable=!1,(this[yD]||!this[h7e])&&this[Xte](),this}[DGe](){this[gw]||(!this[A0e]&&!this[gL].length&&(this[HO]=!0),this[h7e]=!1,this[yD]=!0,this.emit("resume"),this[bD].length?this[KGt]():this[Qte]?this[Xte]():this.emit("drain"))}resume(){return this[DGe]()}pause(){this[yD]=!1,this[h7e]=!0,this[HO]=!1}get destroyed(){return this[gw]}get flowing(){return this[yD]}get paused(){return this[h7e]}[RUr](t){this[tF]?this[ED]+=1:this[ED]+=t.length,this[bD].push(t)}[jGt](){return this[tF]?this[ED]-=1:this[ED]-=this[bD][0].length,this[bD].shift()}[KGt](t=!1){do;while(this[kps](this[jGt]())&&this[bD].length);!t&&!this[bD].length&&!this[Qte]&&this.emit("drain")}[kps](t){return this.emit("data",t),this[yD]}pipe(t,r){if(this[gw])return t;this[HO]=!1;let n=this[Rue];return r=r||{},t===Nps.stdout||t===Nps.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this[gL].push(r.proxyErrors?new GUr(this,t,r):new qGt(this,t,r)),this[h6]?C7e(()=>this[DGe]()):this[DGe]()),t}unpipe(t){let r=this[gL].find(n=>n.dest===t);r&&(this[gL].length===1?(this[yD]&&this[A0e]===0&&(this[yD]=!1),this[gL]=[]):this[gL].splice(this[gL].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);if(t==="data")this[HO]=!1,this[A0e]++,!this[gL].length&&!this[yD]&&this[DGe]();else if(t==="readable"&&this[ED]!==0)super.emit("readable");else if(u1l(t)&&this[Rue])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[I7e]){let a=r;this[h6]?C7e(()=>a.call(this,this[I7e])):a.call(this,this[I7e])}return n}removeListener(t,r){return this.off(t,r)}off(t,r){let n=super.off(t,r);return t==="data"&&(this[A0e]=this.listeners("data").length,this[A0e]===0&&!this[HO]&&!this[gL].length&&(this[yD]=!1)),n}removeAllListeners(t){let r=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[A0e]=0,!this[HO]&&!this[gL].length&&(this[yD]=!1)),r}get emittedEnd(){return this[Rue]}[Xte](){!this[JGt]&&!this[Rue]&&!this[gw]&&this[bD].length===0&&this[Qte]&&(this[JGt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[UGt]&&this.emit("close"),this[JGt]=!1)}emit(t,...r){let n=r[0];if(t!=="error"&&t!=="close"&&t!==gw&&this[gw])return!1;if(t==="data")return!this[tF]&&!n?!1:this[h6]?(C7e(()=>this[DUr](n)),!0):this[DUr](n);if(t==="end")return this[xps]();if(t==="close"){if(this[UGt]=!0,!this[Rue]&&!this[gw])return!1;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[I7e]=n,super.emit(NUr,n);let o=!this[m7e]||this.listeners("error").length?super.emit("error",n):!1;return this[Xte](),o}else if(t==="resume"){let o=super.emit("resume");return this[Xte](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,...r);return this[Xte](),a}[DUr](t){for(let n of this[gL])n.dest.write(t)===!1&&this.pause();let r=this[HO]?!1:super.emit("data",t);return this[Xte](),r}[xps](){return this[Rue]?!1:(this[Rue]=!0,this.readable=!1,this[h6]?(C7e(()=>this[kUr]()),!0):this[kUr]())}[kUr](){if(this[NGe]){let r=this[NGe].end();if(r){for(let n of this[gL])n.dest.write(r);this[HO]||super.emit("data",r)}}for(let r of this[gL])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[tF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[tF]||(t.dataLength+=n.length)}),await r,t}async concat(){if(this[tF])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[$4]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,r)=>{this.on(gw,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[HO]=!1;let t=!1,r=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[Qte])return r();let o,l,A=b=>{this.off("data",f),this.off("end",I),this.off(gw,C),r(),l(b)},f=b=>{this.off("error",A),this.off("end",I),this.off(gw,C),this.pause(),o({value:b,done:!!this[Qte]})},I=()=>{this.off("error",A),this.off("data",f),this.off(gw,C),r(),o({done:!0,value:void 0})},C=()=>A(new Error("stream destroyed"));return new Promise((b,E)=>{l=E,o=b,this.once(gw,C),this.once("error",A),this.once("end",I),this.once("data",f)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[HO]=!1;let t=!1,r=()=>(this.pause(),this.off(NUr,r),this.off(gw,r),this.off("end",r),t=!0,{done:!0,value:void 0}),n=()=>{if(t)return r();let a=this.read();return a===null?r():{done:!1,value:a}};return this.once("end",r),this.once(NUr,r),this.once(gw,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(t){if(this[gw])return t?this.emit("error",t):this.emit(gw),this;this[gw]=!0,this[HO]=!0,this[bD].length=0,this[ED]=0;let r=this;return typeof r.close=="function"&&!this[UGt]&&r.close(),t?this.emit("error",t):this.emit(gw),this}static get isStream(){return AL.isStream}};AL.Minipass=$Gt});var Ute=H((uig,m6)=>{"use strict";var y7e=wt("crypto"),{Minipass:f1l}=rF(),LUr=["sha512","sha384","sha256"],PUr=["sha512"],I1l=/^[a-z0-9+/]+(?:=?=?)$/i,h1l=/^([a-z0-9]+)-([^?]+)([?\S*]*)$/,m1l=/^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,C1l=/^[\x21-\x7E]+$/,b7e=e=>e?.length?`?${e.join("?")}`:"",VUr=class extends f1l{#e;#t;#n;constructor(t){super(),this.size=0,this.opts=t,this.#r(),t?.algorithms?this.algorithms=[...t.algorithms]:this.algorithms=[...PUr],this.algorithm!==null&&!this.algorithms.includes(this.algorithm)&&this.algorithms.push(this.algorithm),this.hashes=this.algorithms.map(y7e.createHash)}#r(){this.sri=this.opts?.integrity?YO(this.opts?.integrity,this.opts):null,this.expectedSize=this.opts?.size,this.sri?this.sri.isHash?(this.goodSri=!0,this.algorithm=this.sri.algorithm):(this.goodSri=!this.sri.isEmpty(),this.algorithm=this.sri.pickAlgorithm(this.opts)):this.algorithm=null,this.digests=this.goodSri?this.sri[this.algorithm]:null,this.optString=b7e(this.opts?.options)}on(t,r){return t==="size"&&this.#t?r(this.#t):t==="integrity"&&this.#e?r(this.#e):t==="verified"&&this.#n?r(this.#n):super.on(t,r)}emit(t,r){return t==="end"&&this.#i(),super.emit(t,r)}write(t){return this.size+=t.length,this.hashes.forEach(r=>r.update(t)),super.write(t)}#i(){this.goodSri||this.#r();let t=YO(this.hashes.map((n,a)=>`${this.algorithms[a]}-${n.digest("base64")}${this.optString}`).join(" "),this.opts),r=this.goodSri&&t.match(this.sri,this.opts);if(typeof this.expectedSize=="number"&&this.size!==this.expectedSize){let n=new Error(`stream size mismatch when checking ${this.sri}. Wanted: ${this.expectedSize} - Found: ${this.size}`);n.code="EBADSIZE",n.found=this.size,n.expected=this.expectedSize,n.sri=this.sri,this.emit("error",n)}else if(this.sri&&!r){let n=new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${t}. (${this.size} bytes)`);n.code="EINTEGRITY",n.found=t,n.expected=this.digests,n.algorithm=this.algorithm,n.sri=this.sri,this.emit("error",n)}else this.#t=this.size,this.emit("size",this.size),this.#e=t,this.emit("integrity",t),r&&(this.#n=r,this.emit("verified",r))}},Xte=class{get isHash(){return!0}constructor(t,r){let n=r?.strict;this.source=t.trim(),this.digest="",this.algorithm="",this.options=[];let a=this.source.match(n?BEl:vEl);if(!a||n&&!NUr.includes(a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];o&&(this.options=o.slice(1).split("?"))}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}match(t,r){let n=YO(t,r);if(!n)return!1;if(n.isIntegrity){let a=n.pickAlgorithm(r,[this.algorithm]);if(!a)return!1;let o=n[a].find(l=>l.digest===this.digest);return o||!1}return n.digest===this.digest?n:!1}toString(t){return t?.strict&&!(NUr.includes(this.algorithm)&&this.digest.match(SEl)&&this.options.every(r=>r.match(wEl)))?"":`${this.algorithm}-${this.digest}${_7e(this.options)}`}};function Cps(e,t,r,n){let a=e!=="",o=!1,l="",A=n.length-1;for(let I=0;In[a].find(l=>o.digest===l.digest)))throw new Error("hashes do not match, cannot update integrity")}else this[a]=n[a]}match(t,r){let n=YO(t,r);if(!n)return!1;let a=n.pickAlgorithm(r,Object.keys(this));return!!a&&this[a]&&n[a]&&this[a].find(o=>n[a].find(l=>o.digest===l.digest))||!1}pickAlgorithm(t,r){let n=t?.pickAlgorithm||FEl,a=Object.keys(this).filter(o=>r?.length?r.includes(o):!0);return a.length?a.reduce((o,l)=>n(o,l)||o):null}};m6.exports.parse=YO;function YO(e,t){if(!e)return null;if(typeof e=="string")return RUr(e,t);if(e.algorithm&&e.digest){let r=new A0e;return r[e.algorithm]=[e],RUr(m7e(r,t),t)}else return RUr(m7e(e,t),t)}function RUr(e,t){if(t?.single)return new Xte(e,t);let r=e.trim().split(/\s+/).reduce((n,a)=>{let o=new Xte(a,t);if(o.algorithm&&o.digest){let l=o.algorithm;n[l]||(n[l]=[]),n[l].push(o)}return n},new A0e);return r.isEmpty()?null:r}m6.exports.stringify=m7e;function m7e(e,t){return e.algorithm&&e.digest?Xte.prototype.toString.call(e,t):typeof e=="string"?m7e(YO(e,t),t):A0e.prototype.toString.call(e,t)}m6.exports.fromHex=TEl;function TEl(e,t,r){let n=_7e(r?.options);return YO(`${t}-${Buffer.from(e,"hex").toString("base64")}${n}`,r)}m6.exports.fromData=REl;function REl(e,t){let r=t?.algorithms||[...kUr],n=_7e(t?.options);return r.reduce((a,o)=>{let l=C7e.createHash(o).update(e).digest("base64"),A=new Xte(`${o}-${l}${n}`,t);if(A.algorithm&&A.digest){let f=A.algorithm;a[f]||(a[f]=[]),a[f].push(A)}return a},new A0e)}m6.exports.fromStream=NEl;function NEl(e,t){let r=xUr(t);return new Promise((n,a)=>{e.pipe(r),e.on("error",a),r.on("error",a);let o;r.on("integrity",l=>{o=l}),r.on("end",()=>n(o)),r.resume()})}m6.exports.checkData=DEl;function DEl(e,t,r){if(t=YO(t,r),!t||!Object.keys(t).length){if(r?.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let n=t.pickAlgorithm(r),a=C7e.createHash(n).update(e).digest("base64"),o=YO({algorithm:n,digest:a}),l=o.match(t,r);if(r=r||{},l||!r.error)return l;if(typeof r.size=="number"&&e.length!==r.size){let A=new Error(`data size mismatch when checking ${t}. + Found: ${this.size}`);n.code="EBADSIZE",n.found=this.size,n.expected=this.expectedSize,n.sri=this.sri,this.emit("error",n)}else if(this.sri&&!r){let n=new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${t}. (${this.size} bytes)`);n.code="EINTEGRITY",n.found=t,n.expected=this.digests,n.algorithm=this.algorithm,n.sri=this.sri,this.emit("error",n)}else this.#t=this.size,this.emit("size",this.size),this.#e=t,this.emit("integrity",t),r&&(this.#n=r,this.emit("verified",r))}},Jte=class{get isHash(){return!0}constructor(t,r){let n=r?.strict;this.source=t.trim(),this.digest="",this.algorithm="",this.options=[];let a=this.source.match(n?m1l:h1l);if(!a||n&&!LUr.includes(a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];o&&(this.options=o.slice(1).split("?"))}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}match(t,r){let n=YO(t,r);if(!n)return!1;if(n.isIntegrity){let a=n.pickAlgorithm(r,[this.algorithm]);if(!a)return!1;let o=n[a].find(l=>l.digest===this.digest);return o||!1}return n.digest===this.digest?n:!1}toString(t){return t?.strict&&!(LUr.includes(this.algorithm)&&this.digest.match(I1l)&&this.options.every(r=>r.match(C1l)))?"":`${this.algorithm}-${this.digest}${b7e(this.options)}`}};function Fps(e,t,r,n){let a=e!=="",o=!1,l="",A=n.length-1;for(let I=0;In[a].find(l=>o.digest===l.digest)))throw new Error("hashes do not match, cannot update integrity")}else this[a]=n[a]}match(t,r){let n=YO(t,r);if(!n)return!1;let a=n.pickAlgorithm(r,Object.keys(this));return!!a&&this[a]&&n[a]&&this[a].find(o=>n[a].find(l=>o.digest===l.digest))||!1}pickAlgorithm(t,r){let n=t?.pickAlgorithm||w1l,a=Object.keys(this).filter(o=>r?.length?r.includes(o):!0);return a.length?a.reduce((o,l)=>n(o,l)||o):null}};m6.exports.parse=YO;function YO(e,t){if(!e)return null;if(typeof e=="string")return ZUr(e,t);if(e.algorithm&&e.digest){let r=new d0e;return r[e.algorithm]=[e],ZUr(_7e(r,t),t)}else return ZUr(_7e(e,t),t)}function ZUr(e,t){if(t?.single)return new Jte(e,t);let r=e.trim().split(/\s+/).reduce((n,a)=>{let o=new Jte(a,t);if(o.algorithm&&o.digest){let l=o.algorithm;n[l]||(n[l]=[]),n[l].push(o)}return n},new d0e);return r.isEmpty()?null:r}m6.exports.stringify=_7e;function _7e(e,t){return e.algorithm&&e.digest?Jte.prototype.toString.call(e,t):typeof e=="string"?_7e(YO(e,t),t):d0e.prototype.toString.call(e,t)}m6.exports.fromHex=_1l;function _1l(e,t,r){let n=b7e(r?.options);return YO(`${t}-${Buffer.from(e,"hex").toString("base64")}${n}`,r)}m6.exports.fromData=y1l;function y1l(e,t){let r=t?.algorithms||[...PUr],n=b7e(t?.options);return r.reduce((a,o)=>{let l=y7e.createHash(o).update(e).digest("base64"),A=new Jte(`${o}-${l}${n}`,t);if(A.algorithm&&A.digest){let f=A.algorithm;a[f]||(a[f]=[]),a[f].push(A)}return a},new d0e)}m6.exports.fromStream=b1l;function b1l(e,t){let r=WUr(t);return new Promise((n,a)=>{e.pipe(r),e.on("error",a),r.on("error",a);let o;r.on("integrity",l=>{o=l}),r.on("end",()=>n(o)),r.resume()})}m6.exports.checkData=E1l;function E1l(e,t,r){if(t=YO(t,r),!t||!Object.keys(t).length){if(r?.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let n=t.pickAlgorithm(r),a=y7e.createHash(n).update(e).digest("base64"),o=YO({algorithm:n,digest:a}),l=o.match(t,r);if(r=r||{},l||!r.error)return l;if(typeof r.size=="number"&&e.length!==r.size){let A=new Error(`data size mismatch when checking ${t}. Wanted: ${r.size} - Found: ${e.length}`);throw A.code="EBADSIZE",A.found=e.length,A.expected=r.size,A.sri=t,A}else{let A=new Error(`Integrity checksum failed when using ${n}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw A.code="EINTEGRITY",A.found=o,A.expected=t,A.algorithm=n,A.sri=t,A}}m6.exports.checkStream=kEl;function kEl(e,t,r){if(r=r||Object.create(null),r.integrity=t,t=YO(t,r),!t||!Object.keys(t).length)return Promise.reject(Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"}));let n=xUr(r);return new Promise((a,o)=>{e.pipe(n),e.on("error",o),n.on("error",o);let l;n.on("verified",A=>{l=A}),n.on("end",()=>a(l)),n.resume()})}m6.exports.integrityStream=xUr;function xUr(e=Object.create(null)){return new DUr(e)}m6.exports.create=xEl;function xEl(e){let t=e?.algorithms||[...kUr],r=_7e(e?.options),n=t.map(C7e.createHash);return{update:function(a,o){return n.forEach(l=>l.update(a,o)),this},digest:function(){return t.reduce((o,l)=>{let A=n.shift().digest("base64"),f=new Xte(`${l}-${A}${r}`,e);if(f.algorithm&&f.digest){let I=f.algorithm;o[I]||(o[I]=[]),o[I].push(f)}return o},new A0e)}}}var GEl=C7e.getHashes(),_ps=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>GEl.includes(e));function FEl(e,t){return _ps.indexOf(e.toLowerCase())>=_ps.indexOf(t.toLowerCase())?e:t}});var GUr=H(Rue=>{"use strict";Object.defineProperty(Rue,"__esModule",{value:!0});Rue.Signature=Rue.Envelope=void 0;Rue.Envelope={fromJSON(e){return{payload:jGt(e.payload)?Buffer.from(yps(e.payload)):Buffer.alloc(0),payloadType:jGt(e.payloadType)?globalThis.String(e.payloadType):"",signatures:globalThis.Array.isArray(e?.signatures)?e.signatures.map(t=>Rue.Signature.fromJSON(t)):[]}},toJSON(e){let t={};return e.payload.length!==0&&(t.payload=bps(e.payload)),e.payloadType!==""&&(t.payloadType=e.payloadType),e.signatures?.length&&(t.signatures=e.signatures.map(r=>Rue.Signature.toJSON(r))),t}};Rue.Signature={fromJSON(e){return{sig:jGt(e.sig)?Buffer.from(yps(e.sig)):Buffer.alloc(0),keyid:jGt(e.keyid)?globalThis.String(e.keyid):""}},toJSON(e){let t={};return e.sig.length!==0&&(t.sig=bps(e.sig)),e.keyid!==""&&(t.keyid=e.keyid),t}};function yps(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function bps(e){return globalThis.Buffer.from(e).toString("base64")}function jGt(e){return e!=null}});var Sps=H(zGt=>{"use strict";Object.defineProperty(zGt,"__esModule",{value:!0});zGt.Timestamp=void 0;zGt.Timestamp={fromJSON(e){return{seconds:Eps(e.seconds)?globalThis.String(e.seconds):"0",nanos:Eps(e.nanos)?globalThis.Number(e.nanos):0}},toJSON(e){let t={};return e.seconds!=="0"&&(t.seconds=e.seconds),e.nanos!==0&&(t.nanos=Math.round(e.nanos)),t}};function Eps(e){return e!=null}});var NGe=H(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});Vf.TimeRange=Vf.X509CertificateChain=Vf.SubjectAlternativeName=Vf.X509Certificate=Vf.DistinguishedName=Vf.ObjectIdentifierValuePair=Vf.ObjectIdentifier=Vf.PublicKeyIdentifier=Vf.PublicKey=Vf.RFC3161SignedTimestamp=Vf.LogId=Vf.MessageSignature=Vf.HashOutput=Vf.SubjectAlternativeNameType=Vf.PublicKeyDetails=Vf.HashAlgorithm=void 0;Vf.hashAlgorithmFromJSON=Bps;Vf.hashAlgorithmToJSON=wps;Vf.publicKeyDetailsFromJSON=Tps;Vf.publicKeyDetailsToJSON=Rps;Vf.subjectAlternativeNameTypeFromJSON=Nps;Vf.subjectAlternativeNameTypeToJSON=Dps;var ZEl=Sps(),UV;(function(e){e[e.HASH_ALGORITHM_UNSPECIFIED=0]="HASH_ALGORITHM_UNSPECIFIED",e[e.SHA2_256=1]="SHA2_256",e[e.SHA2_384=2]="SHA2_384",e[e.SHA2_512=3]="SHA2_512",e[e.SHA3_256=4]="SHA3_256",e[e.SHA3_384=5]="SHA3_384"})(UV||(Vf.HashAlgorithm=UV={}));function Bps(e){switch(e){case 0:case"HASH_ALGORITHM_UNSPECIFIED":return UV.HASH_ALGORITHM_UNSPECIFIED;case 1:case"SHA2_256":return UV.SHA2_256;case 2:case"SHA2_384":return UV.SHA2_384;case 3:case"SHA2_512":return UV.SHA2_512;case 4:case"SHA3_256":return UV.SHA3_256;case 5:case"SHA3_384":return UV.SHA3_384;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}function wps(e){switch(e){case UV.HASH_ALGORITHM_UNSPECIFIED:return"HASH_ALGORITHM_UNSPECIFIED";case UV.SHA2_256:return"SHA2_256";case UV.SHA2_384:return"SHA2_384";case UV.SHA2_512:return"SHA2_512";case UV.SHA3_256:return"SHA3_256";case UV.SHA3_384:return"SHA3_384";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}var Lf;(function(e){e[e.PUBLIC_KEY_DETAILS_UNSPECIFIED=0]="PUBLIC_KEY_DETAILS_UNSPECIFIED",e[e.PKCS1_RSA_PKCS1V5=1]="PKCS1_RSA_PKCS1V5",e[e.PKCS1_RSA_PSS=2]="PKCS1_RSA_PSS",e[e.PKIX_RSA_PKCS1V5=3]="PKIX_RSA_PKCS1V5",e[e.PKIX_RSA_PSS=4]="PKIX_RSA_PSS",e[e.PKIX_RSA_PKCS1V15_2048_SHA256=9]="PKIX_RSA_PKCS1V15_2048_SHA256",e[e.PKIX_RSA_PKCS1V15_3072_SHA256=10]="PKIX_RSA_PKCS1V15_3072_SHA256",e[e.PKIX_RSA_PKCS1V15_4096_SHA256=11]="PKIX_RSA_PKCS1V15_4096_SHA256",e[e.PKIX_RSA_PSS_2048_SHA256=16]="PKIX_RSA_PSS_2048_SHA256",e[e.PKIX_RSA_PSS_3072_SHA256=17]="PKIX_RSA_PSS_3072_SHA256",e[e.PKIX_RSA_PSS_4096_SHA256=18]="PKIX_RSA_PSS_4096_SHA256",e[e.PKIX_ECDSA_P256_HMAC_SHA_256=6]="PKIX_ECDSA_P256_HMAC_SHA_256",e[e.PKIX_ECDSA_P256_SHA_256=5]="PKIX_ECDSA_P256_SHA_256",e[e.PKIX_ECDSA_P384_SHA_384=12]="PKIX_ECDSA_P384_SHA_384",e[e.PKIX_ECDSA_P521_SHA_512=13]="PKIX_ECDSA_P521_SHA_512",e[e.PKIX_ED25519=7]="PKIX_ED25519",e[e.PKIX_ED25519_PH=8]="PKIX_ED25519_PH",e[e.PKIX_ECDSA_P384_SHA_256=19]="PKIX_ECDSA_P384_SHA_256",e[e.PKIX_ECDSA_P521_SHA_256=20]="PKIX_ECDSA_P521_SHA_256",e[e.LMS_SHA256=14]="LMS_SHA256",e[e.LMOTS_SHA256=15]="LMOTS_SHA256",e[e.ML_DSA_65=21]="ML_DSA_65",e[e.ML_DSA_87=22]="ML_DSA_87"})(Lf||(Vf.PublicKeyDetails=Lf={}));function Tps(e){switch(e){case 0:case"PUBLIC_KEY_DETAILS_UNSPECIFIED":return Lf.PUBLIC_KEY_DETAILS_UNSPECIFIED;case 1:case"PKCS1_RSA_PKCS1V5":return Lf.PKCS1_RSA_PKCS1V5;case 2:case"PKCS1_RSA_PSS":return Lf.PKCS1_RSA_PSS;case 3:case"PKIX_RSA_PKCS1V5":return Lf.PKIX_RSA_PKCS1V5;case 4:case"PKIX_RSA_PSS":return Lf.PKIX_RSA_PSS;case 9:case"PKIX_RSA_PKCS1V15_2048_SHA256":return Lf.PKIX_RSA_PKCS1V15_2048_SHA256;case 10:case"PKIX_RSA_PKCS1V15_3072_SHA256":return Lf.PKIX_RSA_PKCS1V15_3072_SHA256;case 11:case"PKIX_RSA_PKCS1V15_4096_SHA256":return Lf.PKIX_RSA_PKCS1V15_4096_SHA256;case 16:case"PKIX_RSA_PSS_2048_SHA256":return Lf.PKIX_RSA_PSS_2048_SHA256;case 17:case"PKIX_RSA_PSS_3072_SHA256":return Lf.PKIX_RSA_PSS_3072_SHA256;case 18:case"PKIX_RSA_PSS_4096_SHA256":return Lf.PKIX_RSA_PSS_4096_SHA256;case 6:case"PKIX_ECDSA_P256_HMAC_SHA_256":return Lf.PKIX_ECDSA_P256_HMAC_SHA_256;case 5:case"PKIX_ECDSA_P256_SHA_256":return Lf.PKIX_ECDSA_P256_SHA_256;case 12:case"PKIX_ECDSA_P384_SHA_384":return Lf.PKIX_ECDSA_P384_SHA_384;case 13:case"PKIX_ECDSA_P521_SHA_512":return Lf.PKIX_ECDSA_P521_SHA_512;case 7:case"PKIX_ED25519":return Lf.PKIX_ED25519;case 8:case"PKIX_ED25519_PH":return Lf.PKIX_ED25519_PH;case 19:case"PKIX_ECDSA_P384_SHA_256":return Lf.PKIX_ECDSA_P384_SHA_256;case 20:case"PKIX_ECDSA_P521_SHA_256":return Lf.PKIX_ECDSA_P521_SHA_256;case 14:case"LMS_SHA256":return Lf.LMS_SHA256;case 15:case"LMOTS_SHA256":return Lf.LMOTS_SHA256;case 21:case"ML_DSA_65":return Lf.ML_DSA_65;case 22:case"ML_DSA_87":return Lf.ML_DSA_87;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}function Rps(e){switch(e){case Lf.PUBLIC_KEY_DETAILS_UNSPECIFIED:return"PUBLIC_KEY_DETAILS_UNSPECIFIED";case Lf.PKCS1_RSA_PKCS1V5:return"PKCS1_RSA_PKCS1V5";case Lf.PKCS1_RSA_PSS:return"PKCS1_RSA_PSS";case Lf.PKIX_RSA_PKCS1V5:return"PKIX_RSA_PKCS1V5";case Lf.PKIX_RSA_PSS:return"PKIX_RSA_PSS";case Lf.PKIX_RSA_PKCS1V15_2048_SHA256:return"PKIX_RSA_PKCS1V15_2048_SHA256";case Lf.PKIX_RSA_PKCS1V15_3072_SHA256:return"PKIX_RSA_PKCS1V15_3072_SHA256";case Lf.PKIX_RSA_PKCS1V15_4096_SHA256:return"PKIX_RSA_PKCS1V15_4096_SHA256";case Lf.PKIX_RSA_PSS_2048_SHA256:return"PKIX_RSA_PSS_2048_SHA256";case Lf.PKIX_RSA_PSS_3072_SHA256:return"PKIX_RSA_PSS_3072_SHA256";case Lf.PKIX_RSA_PSS_4096_SHA256:return"PKIX_RSA_PSS_4096_SHA256";case Lf.PKIX_ECDSA_P256_HMAC_SHA_256:return"PKIX_ECDSA_P256_HMAC_SHA_256";case Lf.PKIX_ECDSA_P256_SHA_256:return"PKIX_ECDSA_P256_SHA_256";case Lf.PKIX_ECDSA_P384_SHA_384:return"PKIX_ECDSA_P384_SHA_384";case Lf.PKIX_ECDSA_P521_SHA_512:return"PKIX_ECDSA_P521_SHA_512";case Lf.PKIX_ED25519:return"PKIX_ED25519";case Lf.PKIX_ED25519_PH:return"PKIX_ED25519_PH";case Lf.PKIX_ECDSA_P384_SHA_256:return"PKIX_ECDSA_P384_SHA_256";case Lf.PKIX_ECDSA_P521_SHA_256:return"PKIX_ECDSA_P521_SHA_256";case Lf.LMS_SHA256:return"LMS_SHA256";case Lf.LMOTS_SHA256:return"LMOTS_SHA256";case Lf.ML_DSA_65:return"ML_DSA_65";case Lf.ML_DSA_87:return"ML_DSA_87";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}var C6;(function(e){e[e.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED=0]="SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED",e[e.EMAIL=1]="EMAIL",e[e.URI=2]="URI",e[e.OTHER_NAME=3]="OTHER_NAME"})(C6||(Vf.SubjectAlternativeNameType=C6={}));function Nps(e){switch(e){case 0:case"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED":return C6.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED;case 1:case"EMAIL":return C6.EMAIL;case 2:case"URI":return C6.URI;case 3:case"OTHER_NAME":return C6.OTHER_NAME;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}function Dps(e){switch(e){case C6.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED:return"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";case C6.EMAIL:return"EMAIL";case C6.URI:return"URI";case C6.OTHER_NAME:return"OTHER_NAME";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}Vf.HashOutput={fromJSON(e){return{algorithm:ST(e.algorithm)?Bps(e.algorithm):0,digest:ST(e.digest)?Buffer.from(d0e(e.digest)):Buffer.alloc(0)}},toJSON(e){let t={};return e.algorithm!==0&&(t.algorithm=wps(e.algorithm)),e.digest.length!==0&&(t.digest=p0e(e.digest)),t}};Vf.MessageSignature={fromJSON(e){return{messageDigest:ST(e.messageDigest)?Vf.HashOutput.fromJSON(e.messageDigest):void 0,signature:ST(e.signature)?Buffer.from(d0e(e.signature)):Buffer.alloc(0)}},toJSON(e){let t={};return e.messageDigest!==void 0&&(t.messageDigest=Vf.HashOutput.toJSON(e.messageDigest)),e.signature.length!==0&&(t.signature=p0e(e.signature)),t}};Vf.LogId={fromJSON(e){return{keyId:ST(e.keyId)?Buffer.from(d0e(e.keyId)):Buffer.alloc(0)}},toJSON(e){let t={};return e.keyId.length!==0&&(t.keyId=p0e(e.keyId)),t}};Vf.RFC3161SignedTimestamp={fromJSON(e){return{signedTimestamp:ST(e.signedTimestamp)?Buffer.from(d0e(e.signedTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedTimestamp.length!==0&&(t.signedTimestamp=p0e(e.signedTimestamp)),t}};Vf.PublicKey={fromJSON(e){return{rawBytes:ST(e.rawBytes)?Buffer.from(d0e(e.rawBytes)):void 0,keyDetails:ST(e.keyDetails)?Tps(e.keyDetails):0,validFor:ST(e.validFor)?Vf.TimeRange.fromJSON(e.validFor):void 0}},toJSON(e){let t={};return e.rawBytes!==void 0&&(t.rawBytes=p0e(e.rawBytes)),e.keyDetails!==0&&(t.keyDetails=Rps(e.keyDetails)),e.validFor!==void 0&&(t.validFor=Vf.TimeRange.toJSON(e.validFor)),t}};Vf.PublicKeyIdentifier={fromJSON(e){return{hint:ST(e.hint)?globalThis.String(e.hint):""}},toJSON(e){let t={};return e.hint!==""&&(t.hint=e.hint),t}};Vf.ObjectIdentifier={fromJSON(e){return{id:globalThis.Array.isArray(e?.id)?e.id.map(t=>globalThis.Number(t)):[]}},toJSON(e){let t={};return e.id?.length&&(t.id=e.id.map(r=>Math.round(r))),t}};Vf.ObjectIdentifierValuePair={fromJSON(e){return{oid:ST(e.oid)?Vf.ObjectIdentifier.fromJSON(e.oid):void 0,value:ST(e.value)?Buffer.from(d0e(e.value)):Buffer.alloc(0)}},toJSON(e){let t={};return e.oid!==void 0&&(t.oid=Vf.ObjectIdentifier.toJSON(e.oid)),e.value.length!==0&&(t.value=p0e(e.value)),t}};Vf.DistinguishedName={fromJSON(e){return{organization:ST(e.organization)?globalThis.String(e.organization):"",commonName:ST(e.commonName)?globalThis.String(e.commonName):""}},toJSON(e){let t={};return e.organization!==""&&(t.organization=e.organization),e.commonName!==""&&(t.commonName=e.commonName),t}};Vf.X509Certificate={fromJSON(e){return{rawBytes:ST(e.rawBytes)?Buffer.from(d0e(e.rawBytes)):Buffer.alloc(0)}},toJSON(e){let t={};return e.rawBytes.length!==0&&(t.rawBytes=p0e(e.rawBytes)),t}};Vf.SubjectAlternativeName={fromJSON(e){return{type:ST(e.type)?Nps(e.type):0,identity:ST(e.regexp)?{$case:"regexp",regexp:globalThis.String(e.regexp)}:ST(e.value)?{$case:"value",value:globalThis.String(e.value)}:void 0}},toJSON(e){let t={};return e.type!==0&&(t.type=Dps(e.type)),e.identity?.$case==="regexp"?t.regexp=e.identity.regexp:e.identity?.$case==="value"&&(t.value=e.identity.value),t}};Vf.X509CertificateChain={fromJSON(e){return{certificates:globalThis.Array.isArray(e?.certificates)?e.certificates.map(t=>Vf.X509Certificate.fromJSON(t)):[]}},toJSON(e){let t={};return e.certificates?.length&&(t.certificates=e.certificates.map(r=>Vf.X509Certificate.toJSON(r))),t}};Vf.TimeRange={fromJSON(e){return{start:ST(e.start)?vps(e.start):void 0,end:ST(e.end)?vps(e.end):void 0}},toJSON(e){let t={};return e.start!==void 0&&(t.start=e.start.toISOString()),e.end!==void 0&&(t.end=e.end.toISOString()),t}};function d0e(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function p0e(e){return globalThis.Buffer.from(e).toString("base64")}function LEl(e){let t=(globalThis.Number(e.seconds)||0)*1e3;return t+=(e.nanos||0)/1e6,new globalThis.Date(t)}function vps(e){return e instanceof globalThis.Date?e:typeof e=="string"?new globalThis.Date(e):LEl(ZEl.Timestamp.fromJSON(e))}function ST(e){return e!=null}});var FUr=H(vT=>{"use strict";Object.defineProperty(vT,"__esModule",{value:!0});vT.TransparencyLogEntry=vT.InclusionPromise=vT.InclusionProof=vT.Checkpoint=vT.KindVersion=void 0;var kps=NGe();vT.KindVersion={fromJSON(e){return{kind:dL(e.kind)?globalThis.String(e.kind):"",version:dL(e.version)?globalThis.String(e.version):""}},toJSON(e){let t={};return e.kind!==""&&(t.kind=e.kind),e.version!==""&&(t.version=e.version),t}};vT.Checkpoint={fromJSON(e){return{envelope:dL(e.envelope)?globalThis.String(e.envelope):""}},toJSON(e){let t={};return e.envelope!==""&&(t.envelope=e.envelope),t}};vT.InclusionProof={fromJSON(e){return{logIndex:dL(e.logIndex)?globalThis.String(e.logIndex):"0",rootHash:dL(e.rootHash)?Buffer.from(qGt(e.rootHash)):Buffer.alloc(0),treeSize:dL(e.treeSize)?globalThis.String(e.treeSize):"0",hashes:globalThis.Array.isArray(e?.hashes)?e.hashes.map(t=>Buffer.from(qGt(t))):[],checkpoint:dL(e.checkpoint)?vT.Checkpoint.fromJSON(e.checkpoint):void 0}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.rootHash.length!==0&&(t.rootHash=$Gt(e.rootHash)),e.treeSize!=="0"&&(t.treeSize=e.treeSize),e.hashes?.length&&(t.hashes=e.hashes.map(r=>$Gt(r))),e.checkpoint!==void 0&&(t.checkpoint=vT.Checkpoint.toJSON(e.checkpoint)),t}};vT.InclusionPromise={fromJSON(e){return{signedEntryTimestamp:dL(e.signedEntryTimestamp)?Buffer.from(qGt(e.signedEntryTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedEntryTimestamp.length!==0&&(t.signedEntryTimestamp=$Gt(e.signedEntryTimestamp)),t}};vT.TransparencyLogEntry={fromJSON(e){return{logIndex:dL(e.logIndex)?globalThis.String(e.logIndex):"0",logId:dL(e.logId)?kps.LogId.fromJSON(e.logId):void 0,kindVersion:dL(e.kindVersion)?vT.KindVersion.fromJSON(e.kindVersion):void 0,integratedTime:dL(e.integratedTime)?globalThis.String(e.integratedTime):"0",inclusionPromise:dL(e.inclusionPromise)?vT.InclusionPromise.fromJSON(e.inclusionPromise):void 0,inclusionProof:dL(e.inclusionProof)?vT.InclusionProof.fromJSON(e.inclusionProof):void 0,canonicalizedBody:dL(e.canonicalizedBody)?Buffer.from(qGt(e.canonicalizedBody)):Buffer.alloc(0)}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.logId!==void 0&&(t.logId=kps.LogId.toJSON(e.logId)),e.kindVersion!==void 0&&(t.kindVersion=vT.KindVersion.toJSON(e.kindVersion)),e.integratedTime!=="0"&&(t.integratedTime=e.integratedTime),e.inclusionPromise!==void 0&&(t.inclusionPromise=vT.InclusionPromise.toJSON(e.inclusionPromise)),e.inclusionProof!==void 0&&(t.inclusionProof=vT.InclusionProof.toJSON(e.inclusionProof)),e.canonicalizedBody.length!==0&&(t.canonicalizedBody=$Gt(e.canonicalizedBody)),t}};function qGt(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function $Gt(e){return globalThis.Buffer.from(e).toString("base64")}function dL(e){return e!=null}});var ZUr=H(ZH=>{"use strict";Object.defineProperty(ZH,"__esModule",{value:!0});ZH.Bundle=ZH.VerificationMaterial=ZH.TimestampVerificationData=void 0;var xps=GUr(),_6=NGe(),Gps=FUr();ZH.TimestampVerificationData={fromJSON(e){return{rfc3161Timestamps:globalThis.Array.isArray(e?.rfc3161Timestamps)?e.rfc3161Timestamps.map(t=>_6.RFC3161SignedTimestamp.fromJSON(t)):[]}},toJSON(e){let t={};return e.rfc3161Timestamps?.length&&(t.rfc3161Timestamps=e.rfc3161Timestamps.map(r=>_6.RFC3161SignedTimestamp.toJSON(r))),t}};ZH.VerificationMaterial={fromJSON(e){return{content:Nue(e.publicKey)?{$case:"publicKey",publicKey:_6.PublicKeyIdentifier.fromJSON(e.publicKey)}:Nue(e.x509CertificateChain)?{$case:"x509CertificateChain",x509CertificateChain:_6.X509CertificateChain.fromJSON(e.x509CertificateChain)}:Nue(e.certificate)?{$case:"certificate",certificate:_6.X509Certificate.fromJSON(e.certificate)}:void 0,tlogEntries:globalThis.Array.isArray(e?.tlogEntries)?e.tlogEntries.map(t=>Gps.TransparencyLogEntry.fromJSON(t)):[],timestampVerificationData:Nue(e.timestampVerificationData)?ZH.TimestampVerificationData.fromJSON(e.timestampVerificationData):void 0}},toJSON(e){let t={};return e.content?.$case==="publicKey"?t.publicKey=_6.PublicKeyIdentifier.toJSON(e.content.publicKey):e.content?.$case==="x509CertificateChain"?t.x509CertificateChain=_6.X509CertificateChain.toJSON(e.content.x509CertificateChain):e.content?.$case==="certificate"&&(t.certificate=_6.X509Certificate.toJSON(e.content.certificate)),e.tlogEntries?.length&&(t.tlogEntries=e.tlogEntries.map(r=>Gps.TransparencyLogEntry.toJSON(r))),e.timestampVerificationData!==void 0&&(t.timestampVerificationData=ZH.TimestampVerificationData.toJSON(e.timestampVerificationData)),t}};ZH.Bundle={fromJSON(e){return{mediaType:Nue(e.mediaType)?globalThis.String(e.mediaType):"",verificationMaterial:Nue(e.verificationMaterial)?ZH.VerificationMaterial.fromJSON(e.verificationMaterial):void 0,content:Nue(e.messageSignature)?{$case:"messageSignature",messageSignature:_6.MessageSignature.fromJSON(e.messageSignature)}:Nue(e.dsseEnvelope)?{$case:"dsseEnvelope",dsseEnvelope:xps.Envelope.fromJSON(e.dsseEnvelope)}:void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.verificationMaterial!==void 0&&(t.verificationMaterial=ZH.VerificationMaterial.toJSON(e.verificationMaterial)),e.content?.$case==="messageSignature"?t.messageSignature=_6.MessageSignature.toJSON(e.content.messageSignature):e.content?.$case==="dsseEnvelope"&&(t.dsseEnvelope=xps.Envelope.toJSON(e.content.dsseEnvelope)),t}};function Nue(e){return e!=null}});var LUr=H(ZI=>{"use strict";Object.defineProperty(ZI,"__esModule",{value:!0});ZI.ClientTrustConfig=ZI.ServiceConfiguration=ZI.Service=ZI.SigningConfig=ZI.TrustedRoot=ZI.CertificateAuthority=ZI.TransparencyLogInstance=ZI.ServiceSelector=void 0;ZI.serviceSelectorFromJSON=Fps;ZI.serviceSelectorToJSON=Zps;var nF=NGe(),y6;(function(e){e[e.SERVICE_SELECTOR_UNDEFINED=0]="SERVICE_SELECTOR_UNDEFINED",e[e.ALL=1]="ALL",e[e.ANY=2]="ANY",e[e.EXACT=3]="EXACT"})(y6||(ZI.ServiceSelector=y6={}));function Fps(e){switch(e){case 0:case"SERVICE_SELECTOR_UNDEFINED":return y6.SERVICE_SELECTOR_UNDEFINED;case 1:case"ALL":return y6.ALL;case 2:case"ANY":return y6.ANY;case 3:case"EXACT":return y6.EXACT;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}function Zps(e){switch(e){case y6.SERVICE_SELECTOR_UNDEFINED:return"SERVICE_SELECTOR_UNDEFINED";case y6.ALL:return"ALL";case y6.ANY:return"ANY";case y6.EXACT:return"EXACT";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}ZI.TransparencyLogInstance={fromJSON(e){return{baseUrl:P2(e.baseUrl)?globalThis.String(e.baseUrl):"",hashAlgorithm:P2(e.hashAlgorithm)?(0,nF.hashAlgorithmFromJSON)(e.hashAlgorithm):0,publicKey:P2(e.publicKey)?nF.PublicKey.fromJSON(e.publicKey):void 0,logId:P2(e.logId)?nF.LogId.fromJSON(e.logId):void 0,checkpointKeyId:P2(e.checkpointKeyId)?nF.LogId.fromJSON(e.checkpointKeyId):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.baseUrl!==""&&(t.baseUrl=e.baseUrl),e.hashAlgorithm!==0&&(t.hashAlgorithm=(0,nF.hashAlgorithmToJSON)(e.hashAlgorithm)),e.publicKey!==void 0&&(t.publicKey=nF.PublicKey.toJSON(e.publicKey)),e.logId!==void 0&&(t.logId=nF.LogId.toJSON(e.logId)),e.checkpointKeyId!==void 0&&(t.checkpointKeyId=nF.LogId.toJSON(e.checkpointKeyId)),e.operator!==""&&(t.operator=e.operator),t}};ZI.CertificateAuthority={fromJSON(e){return{subject:P2(e.subject)?nF.DistinguishedName.fromJSON(e.subject):void 0,uri:P2(e.uri)?globalThis.String(e.uri):"",certChain:P2(e.certChain)?nF.X509CertificateChain.fromJSON(e.certChain):void 0,validFor:P2(e.validFor)?nF.TimeRange.fromJSON(e.validFor):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.subject!==void 0&&(t.subject=nF.DistinguishedName.toJSON(e.subject)),e.uri!==""&&(t.uri=e.uri),e.certChain!==void 0&&(t.certChain=nF.X509CertificateChain.toJSON(e.certChain)),e.validFor!==void 0&&(t.validFor=nF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};ZI.TrustedRoot={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",tlogs:globalThis.Array.isArray(e?.tlogs)?e.tlogs.map(t=>ZI.TransparencyLogInstance.fromJSON(t)):[],certificateAuthorities:globalThis.Array.isArray(e?.certificateAuthorities)?e.certificateAuthorities.map(t=>ZI.CertificateAuthority.fromJSON(t)):[],ctlogs:globalThis.Array.isArray(e?.ctlogs)?e.ctlogs.map(t=>ZI.TransparencyLogInstance.fromJSON(t)):[],timestampAuthorities:globalThis.Array.isArray(e?.timestampAuthorities)?e.timestampAuthorities.map(t=>ZI.CertificateAuthority.fromJSON(t)):[]}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.tlogs?.length&&(t.tlogs=e.tlogs.map(r=>ZI.TransparencyLogInstance.toJSON(r))),e.certificateAuthorities?.length&&(t.certificateAuthorities=e.certificateAuthorities.map(r=>ZI.CertificateAuthority.toJSON(r))),e.ctlogs?.length&&(t.ctlogs=e.ctlogs.map(r=>ZI.TransparencyLogInstance.toJSON(r))),e.timestampAuthorities?.length&&(t.timestampAuthorities=e.timestampAuthorities.map(r=>ZI.CertificateAuthority.toJSON(r))),t}};ZI.SigningConfig={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",caUrls:globalThis.Array.isArray(e?.caUrls)?e.caUrls.map(t=>ZI.Service.fromJSON(t)):[],oidcUrls:globalThis.Array.isArray(e?.oidcUrls)?e.oidcUrls.map(t=>ZI.Service.fromJSON(t)):[],rekorTlogUrls:globalThis.Array.isArray(e?.rekorTlogUrls)?e.rekorTlogUrls.map(t=>ZI.Service.fromJSON(t)):[],rekorTlogConfig:P2(e.rekorTlogConfig)?ZI.ServiceConfiguration.fromJSON(e.rekorTlogConfig):void 0,tsaUrls:globalThis.Array.isArray(e?.tsaUrls)?e.tsaUrls.map(t=>ZI.Service.fromJSON(t)):[],tsaConfig:P2(e.tsaConfig)?ZI.ServiceConfiguration.fromJSON(e.tsaConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.caUrls?.length&&(t.caUrls=e.caUrls.map(r=>ZI.Service.toJSON(r))),e.oidcUrls?.length&&(t.oidcUrls=e.oidcUrls.map(r=>ZI.Service.toJSON(r))),e.rekorTlogUrls?.length&&(t.rekorTlogUrls=e.rekorTlogUrls.map(r=>ZI.Service.toJSON(r))),e.rekorTlogConfig!==void 0&&(t.rekorTlogConfig=ZI.ServiceConfiguration.toJSON(e.rekorTlogConfig)),e.tsaUrls?.length&&(t.tsaUrls=e.tsaUrls.map(r=>ZI.Service.toJSON(r))),e.tsaConfig!==void 0&&(t.tsaConfig=ZI.ServiceConfiguration.toJSON(e.tsaConfig)),t}};ZI.Service={fromJSON(e){return{url:P2(e.url)?globalThis.String(e.url):"",majorApiVersion:P2(e.majorApiVersion)?globalThis.Number(e.majorApiVersion):0,validFor:P2(e.validFor)?nF.TimeRange.fromJSON(e.validFor):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.url!==""&&(t.url=e.url),e.majorApiVersion!==0&&(t.majorApiVersion=Math.round(e.majorApiVersion)),e.validFor!==void 0&&(t.validFor=nF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};ZI.ServiceConfiguration={fromJSON(e){return{selector:P2(e.selector)?Fps(e.selector):0,count:P2(e.count)?globalThis.Number(e.count):0}},toJSON(e){let t={};return e.selector!==0&&(t.selector=Zps(e.selector)),e.count!==0&&(t.count=Math.round(e.count)),t}};ZI.ClientTrustConfig={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",trustedRoot:P2(e.trustedRoot)?ZI.TrustedRoot.fromJSON(e.trustedRoot):void 0,signingConfig:P2(e.signingConfig)?ZI.SigningConfig.fromJSON(e.signingConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.trustedRoot!==void 0&&(t.trustedRoot=ZI.TrustedRoot.toJSON(e.trustedRoot)),e.signingConfig!==void 0&&(t.signingConfig=ZI.SigningConfig.toJSON(e.signingConfig)),t}};function P2(e){return e!=null}});var Pps=H(LI=>{"use strict";Object.defineProperty(LI,"__esModule",{value:!0});LI.Input=LI.Artifact=LI.ArtifactVerificationOptions_ObserverTimestampOptions=LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions=LI.ArtifactVerificationOptions_TimestampAuthorityOptions=LI.ArtifactVerificationOptions_CtlogOptions=LI.ArtifactVerificationOptions_TlogOptions=LI.ArtifactVerificationOptions=LI.PublicKeyIdentities=LI.CertificateIdentities=LI.CertificateIdentity=void 0;var Lps=ZUr(),Due=NGe(),Vps=LUr();LI.CertificateIdentity={fromJSON(e){return{issuer:tE(e.issuer)?globalThis.String(e.issuer):"",san:tE(e.san)?Due.SubjectAlternativeName.fromJSON(e.san):void 0,oids:globalThis.Array.isArray(e?.oids)?e.oids.map(t=>Due.ObjectIdentifierValuePair.fromJSON(t)):[]}},toJSON(e){let t={};return e.issuer!==""&&(t.issuer=e.issuer),e.san!==void 0&&(t.san=Due.SubjectAlternativeName.toJSON(e.san)),e.oids?.length&&(t.oids=e.oids.map(r=>Due.ObjectIdentifierValuePair.toJSON(r))),t}};LI.CertificateIdentities={fromJSON(e){return{identities:globalThis.Array.isArray(e?.identities)?e.identities.map(t=>LI.CertificateIdentity.fromJSON(t)):[]}},toJSON(e){let t={};return e.identities?.length&&(t.identities=e.identities.map(r=>LI.CertificateIdentity.toJSON(r))),t}};LI.PublicKeyIdentities={fromJSON(e){return{publicKeys:globalThis.Array.isArray(e?.publicKeys)?e.publicKeys.map(t=>Due.PublicKey.fromJSON(t)):[]}},toJSON(e){let t={};return e.publicKeys?.length&&(t.publicKeys=e.publicKeys.map(r=>Due.PublicKey.toJSON(r))),t}};LI.ArtifactVerificationOptions={fromJSON(e){return{signers:tE(e.certificateIdentities)?{$case:"certificateIdentities",certificateIdentities:LI.CertificateIdentities.fromJSON(e.certificateIdentities)}:tE(e.publicKeys)?{$case:"publicKeys",publicKeys:LI.PublicKeyIdentities.fromJSON(e.publicKeys)}:void 0,tlogOptions:tE(e.tlogOptions)?LI.ArtifactVerificationOptions_TlogOptions.fromJSON(e.tlogOptions):void 0,ctlogOptions:tE(e.ctlogOptions)?LI.ArtifactVerificationOptions_CtlogOptions.fromJSON(e.ctlogOptions):void 0,tsaOptions:tE(e.tsaOptions)?LI.ArtifactVerificationOptions_TimestampAuthorityOptions.fromJSON(e.tsaOptions):void 0,integratedTsOptions:tE(e.integratedTsOptions)?LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.fromJSON(e.integratedTsOptions):void 0,observerOptions:tE(e.observerOptions)?LI.ArtifactVerificationOptions_ObserverTimestampOptions.fromJSON(e.observerOptions):void 0}},toJSON(e){let t={};return e.signers?.$case==="certificateIdentities"?t.certificateIdentities=LI.CertificateIdentities.toJSON(e.signers.certificateIdentities):e.signers?.$case==="publicKeys"&&(t.publicKeys=LI.PublicKeyIdentities.toJSON(e.signers.publicKeys)),e.tlogOptions!==void 0&&(t.tlogOptions=LI.ArtifactVerificationOptions_TlogOptions.toJSON(e.tlogOptions)),e.ctlogOptions!==void 0&&(t.ctlogOptions=LI.ArtifactVerificationOptions_CtlogOptions.toJSON(e.ctlogOptions)),e.tsaOptions!==void 0&&(t.tsaOptions=LI.ArtifactVerificationOptions_TimestampAuthorityOptions.toJSON(e.tsaOptions)),e.integratedTsOptions!==void 0&&(t.integratedTsOptions=LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.toJSON(e.integratedTsOptions)),e.observerOptions!==void 0&&(t.observerOptions=LI.ArtifactVerificationOptions_ObserverTimestampOptions.toJSON(e.observerOptions)),t}};LI.ArtifactVerificationOptions_TlogOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,performOnlineVerification:tE(e.performOnlineVerification)?globalThis.Boolean(e.performOnlineVerification):!1,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.performOnlineVerification!==!1&&(t.performOnlineVerification=e.performOnlineVerification),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_CtlogOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_TimestampAuthorityOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_ObserverTimestampOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.Artifact={fromJSON(e){return{data:tE(e.artifactUri)?{$case:"artifactUri",artifactUri:globalThis.String(e.artifactUri)}:tE(e.artifact)?{$case:"artifact",artifact:Buffer.from(VEl(e.artifact))}:tE(e.artifactDigest)?{$case:"artifactDigest",artifactDigest:Due.HashOutput.fromJSON(e.artifactDigest)}:void 0}},toJSON(e){let t={};return e.data?.$case==="artifactUri"?t.artifactUri=e.data.artifactUri:e.data?.$case==="artifact"?t.artifact=PEl(e.data.artifact):e.data?.$case==="artifactDigest"&&(t.artifactDigest=Due.HashOutput.toJSON(e.data.artifactDigest)),t}};LI.Input={fromJSON(e){return{artifactTrustRoot:tE(e.artifactTrustRoot)?Vps.TrustedRoot.fromJSON(e.artifactTrustRoot):void 0,artifactVerificationOptions:tE(e.artifactVerificationOptions)?LI.ArtifactVerificationOptions.fromJSON(e.artifactVerificationOptions):void 0,bundle:tE(e.bundle)?Lps.Bundle.fromJSON(e.bundle):void 0,artifact:tE(e.artifact)?LI.Artifact.fromJSON(e.artifact):void 0}},toJSON(e){let t={};return e.artifactTrustRoot!==void 0&&(t.artifactTrustRoot=Vps.TrustedRoot.toJSON(e.artifactTrustRoot)),e.artifactVerificationOptions!==void 0&&(t.artifactVerificationOptions=LI.ArtifactVerificationOptions.toJSON(e.artifactVerificationOptions)),e.bundle!==void 0&&(t.bundle=Lps.Bundle.toJSON(e.bundle)),e.artifact!==void 0&&(t.artifact=LI.Artifact.toJSON(e.artifact)),t}};function VEl(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function PEl(e){return globalThis.Buffer.from(e).toString("base64")}function tE(e){return e!=null}});var y7e=H(LH=>{"use strict";var WEl=LH&&LH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),DGe=LH&&LH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&WEl(t,e,r)};Object.defineProperty(LH,"__esModule",{value:!0});DGe(GUr(),LH);DGe(ZUr(),LH);DGe(NGe(),LH);DGe(FUr(),LH);DGe(LUr(),LH);DGe(Pps(),LH)});var eFt=H(KV=>{"use strict";Object.defineProperty(KV,"__esModule",{value:!0});KV.BUNDLE_V03_MEDIA_TYPE=KV.BUNDLE_V03_LEGACY_MEDIA_TYPE=KV.BUNDLE_V02_MEDIA_TYPE=KV.BUNDLE_V01_MEDIA_TYPE=void 0;KV.isBundleWithCertificateChain=OEl;KV.isBundleWithPublicKey=MEl;KV.isBundleWithMessageSignature=HEl;KV.isBundleWithDsseEnvelope=YEl;KV.BUNDLE_V01_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.1";KV.BUNDLE_V02_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.2";KV.BUNDLE_V03_LEGACY_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.3";KV.BUNDLE_V03_MEDIA_TYPE="application/vnd.dev.sigstore.bundle.v0.3+json";function OEl(e){return e.verificationMaterial.content.$case==="x509CertificateChain"}function MEl(e){return e.verificationMaterial.content.$case==="publicKey"}function HEl(e){return e.content.$case==="messageSignature"}function YEl(e){return e.content.$case==="dsseEnvelope"}});var Ops=H(rFt=>{"use strict";Object.defineProperty(rFt,"__esModule",{value:!0});rFt.toMessageSignatureBundle=XEl;rFt.toDSSEBundle=JEl;var QEl=y7e(),tFt=eFt();function XEl(e){return{mediaType:e.certificateChain?tFt.BUNDLE_V02_MEDIA_TYPE:tFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"messageSignature",messageSignature:{messageDigest:{algorithm:QEl.HashAlgorithm.SHA2_256,digest:e.digest},signature:e.signature}},verificationMaterial:Wps(e)}}function JEl(e){return{mediaType:e.certificateChain?tFt.BUNDLE_V02_MEDIA_TYPE:tFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"dsseEnvelope",dsseEnvelope:UEl(e)},verificationMaterial:Wps(e)}}function UEl(e){return{payloadType:e.artifactType,payload:e.artifact,signatures:[KEl(e)]}}function KEl(e){return{keyid:e.keyHint||"",sig:e.signature}}function Wps(e){return{content:jEl(e),tlogEntries:[],timestampVerificationData:{rfc3161Timestamps:[]}}}function jEl(e){return e.certificate?e.certificateChain?{$case:"x509CertificateChain",x509CertificateChain:{certificates:[{rawBytes:e.certificate}]}}:{$case:"certificate",certificate:{rawBytes:e.certificate}}:{$case:"publicKey",publicKey:{hint:e.keyHint||""}}}});var PUr=H(nFt=>{"use strict";Object.defineProperty(nFt,"__esModule",{value:!0});nFt.ValidationError=void 0;var VUr=class extends Error{constructor(t,r){super(t),this.fields=r}};nFt.ValidationError=VUr});var WUr=H(f0e=>{"use strict";Object.defineProperty(f0e,"__esModule",{value:!0});f0e.assertBundle=zEl;f0e.assertBundleV01=Mps;f0e.isBundleV01=qEl;f0e.assertBundleV02=$El;f0e.assertBundleLatest=e1l;var iFt=PUr();function zEl(e){let t=sFt(e);if(t.length>0)throw new iFt.ValidationError("invalid bundle",t)}function Mps(e){let t=[];if(t.push(...sFt(e)),t.push(...t1l(e)),t.length>0)throw new iFt.ValidationError("invalid v0.1 bundle",t)}function qEl(e){try{return Mps(e),!0}catch{return!1}}function $El(e){let t=[];if(t.push(...sFt(e)),t.push(...Hps(e)),t.length>0)throw new iFt.ValidationError("invalid v0.2 bundle",t)}function e1l(e){let t=[];if(t.push(...sFt(e)),t.push(...Hps(e)),t.push(...r1l(e)),t.length>0)throw new iFt.ValidationError("invalid bundle",t)}function sFt(e){let t=[];if((e.mediaType===void 0||!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\+json;version=\d\.\d/)&&!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\.v\d\.\d\+json/))&&t.push("mediaType"),e.content===void 0)t.push("content");else switch(e.content.$case){case"messageSignature":e.content.messageSignature.messageDigest===void 0?t.push("content.messageSignature.messageDigest"):e.content.messageSignature.messageDigest.digest.length===0&&t.push("content.messageSignature.messageDigest.digest"),e.content.messageSignature.signature.length===0&&t.push("content.messageSignature.signature");break;case"dsseEnvelope":e.content.dsseEnvelope.payload.length===0&&t.push("content.dsseEnvelope.payload"),e.content.dsseEnvelope.signatures.length!==1?t.push("content.dsseEnvelope.signatures"):e.content.dsseEnvelope.signatures[0].sig.length===0&&t.push("content.dsseEnvelope.signatures[0].sig");break}if(e.verificationMaterial===void 0)t.push("verificationMaterial");else{if(e.verificationMaterial.content===void 0)t.push("verificationMaterial.content");else switch(e.verificationMaterial.content.$case){case"x509CertificateChain":e.verificationMaterial.content.x509CertificateChain.certificates.length===0&&t.push("verificationMaterial.content.x509CertificateChain.certificates"),e.verificationMaterial.content.x509CertificateChain.certificates.forEach((r,n)=>{r.rawBytes.length===0&&t.push(`verificationMaterial.content.x509CertificateChain.certificates[${n}].rawBytes`)});break;case"certificate":e.verificationMaterial.content.certificate.rawBytes.length===0&&t.push("verificationMaterial.content.certificate.rawBytes");break}e.verificationMaterial.tlogEntries===void 0?t.push("verificationMaterial.tlogEntries"):e.verificationMaterial.tlogEntries.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.logId===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].logId`),r.kindVersion===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].kindVersion`)})}return t}function t1l(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionPromise===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionPromise`)}),t}function Hps(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionProof===void 0?t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof`):r.inclusionProof.checkpoint===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof.checkpoint`)}),t}function r1l(e){let t=[];return e.verificationMaterial?.content?.$case==="x509CertificateChain"&&t.push("verificationMaterial.content.$case"),t}});var Qps=H(b6=>{"use strict";Object.defineProperty(b6,"__esModule",{value:!0});b6.envelopeToJSON=b6.envelopeFromJSON=b6.bundleToJSON=b6.bundleFromJSON=void 0;var oFt=y7e(),Yps=eFt(),OUr=WUr(),n1l=e=>{let t=oFt.Bundle.fromJSON(e);switch(t.mediaType){case Yps.BUNDLE_V01_MEDIA_TYPE:(0,OUr.assertBundleV01)(t);break;case Yps.BUNDLE_V02_MEDIA_TYPE:(0,OUr.assertBundleV02)(t);break;default:(0,OUr.assertBundleLatest)(t);break}return t};b6.bundleFromJSON=n1l;var i1l=e=>oFt.Bundle.toJSON(e);b6.bundleToJSON=i1l;var s1l=e=>oFt.Envelope.fromJSON(e);b6.envelopeFromJSON=s1l;var o1l=e=>oFt.Envelope.toJSON(e);b6.envelopeToJSON=o1l});var E7e=H(Ah=>{"use strict";Object.defineProperty(Ah,"__esModule",{value:!0});Ah.isBundleV01=Ah.assertBundleV02=Ah.assertBundleV01=Ah.assertBundleLatest=Ah.assertBundle=Ah.envelopeToJSON=Ah.envelopeFromJSON=Ah.bundleToJSON=Ah.bundleFromJSON=Ah.ValidationError=Ah.isBundleWithPublicKey=Ah.isBundleWithMessageSignature=Ah.isBundleWithDsseEnvelope=Ah.isBundleWithCertificateChain=Ah.BUNDLE_V03_MEDIA_TYPE=Ah.BUNDLE_V03_LEGACY_MEDIA_TYPE=Ah.BUNDLE_V02_MEDIA_TYPE=Ah.BUNDLE_V01_MEDIA_TYPE=Ah.toMessageSignatureBundle=Ah.toDSSEBundle=void 0;var Xps=Ops();Object.defineProperty(Ah,"toDSSEBundle",{enumerable:!0,get:function(){return Xps.toDSSEBundle}});Object.defineProperty(Ah,"toMessageSignatureBundle",{enumerable:!0,get:function(){return Xps.toMessageSignatureBundle}});var kue=eFt();Object.defineProperty(Ah,"BUNDLE_V01_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V01_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V02_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V02_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V03_LEGACY_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V03_LEGACY_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V03_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V03_MEDIA_TYPE}});Object.defineProperty(Ah,"isBundleWithCertificateChain",{enumerable:!0,get:function(){return kue.isBundleWithCertificateChain}});Object.defineProperty(Ah,"isBundleWithDsseEnvelope",{enumerable:!0,get:function(){return kue.isBundleWithDsseEnvelope}});Object.defineProperty(Ah,"isBundleWithMessageSignature",{enumerable:!0,get:function(){return kue.isBundleWithMessageSignature}});Object.defineProperty(Ah,"isBundleWithPublicKey",{enumerable:!0,get:function(){return kue.isBundleWithPublicKey}});var a1l=PUr();Object.defineProperty(Ah,"ValidationError",{enumerable:!0,get:function(){return a1l.ValidationError}});var aFt=Qps();Object.defineProperty(Ah,"bundleFromJSON",{enumerable:!0,get:function(){return aFt.bundleFromJSON}});Object.defineProperty(Ah,"bundleToJSON",{enumerable:!0,get:function(){return aFt.bundleToJSON}});Object.defineProperty(Ah,"envelopeFromJSON",{enumerable:!0,get:function(){return aFt.envelopeFromJSON}});Object.defineProperty(Ah,"envelopeToJSON",{enumerable:!0,get:function(){return aFt.envelopeToJSON}});var b7e=WUr();Object.defineProperty(Ah,"assertBundle",{enumerable:!0,get:function(){return b7e.assertBundle}});Object.defineProperty(Ah,"assertBundleLatest",{enumerable:!0,get:function(){return b7e.assertBundleLatest}});Object.defineProperty(Ah,"assertBundleV01",{enumerable:!0,get:function(){return b7e.assertBundleV01}});Object.defineProperty(Ah,"assertBundleV02",{enumerable:!0,get:function(){return b7e.assertBundleV02}});Object.defineProperty(Ah,"isBundleV01",{enumerable:!0,get:function(){return b7e.isBundleV01}})});var S7e=H(lFt=>{"use strict";Object.defineProperty(lFt,"__esModule",{value:!0});lFt.ByteStream=void 0;var MUr=class extends Error{},cFt=class e{constructor(t){this.start=0,t?(this.buf=t,this.view=Buffer.from(t)):(this.buf=new ArrayBuffer(0),this.view=Buffer.from(this.buf))}get buffer(){return this.view.subarray(0,this.start)}get length(){return this.view.byteLength}get position(){return this.start}seek(t){this.start=t}slice(t,r){let n=t+r;if(n>this.length)throw new MUr("request past end of buffer");return this.view.subarray(t,n)}appendChar(t){this.ensureCapacity(1),this.view[this.start]=t,this.start+=1}appendUint16(t){this.ensureCapacity(2);let r=new Uint16Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[1],this.view[this.start+1]=n[0],this.start+=2}appendUint24(t){this.ensureCapacity(3);let r=new Uint32Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[2],this.view[this.start+1]=n[1],this.view[this.start+2]=n[0],this.start+=3}appendView(t){this.ensureCapacity(t.length),this.view.set(t,this.start),this.start+=t.length}getBlock(t){if(t<=0)return Buffer.alloc(0);if(this.start+t>this.view.length)throw new Error("request past end of buffer");let r=this.view.subarray(this.start,this.start+t);return this.start+=t,r}getUint8(){return this.getBlock(1)[0]}getUint16(){let t=this.getBlock(2);return t[0]<<8|t[1]}ensureCapacity(t){if(this.start+t>this.view.byteLength){let r=e.BLOCK_SIZE+(t>e.BLOCK_SIZE?t:0);this.realloc(this.view.byteLength+r)}}realloc(t){let r=new ArrayBuffer(t),n=Buffer.from(r);n.set(this.view),this.buf=r,this.view=n}};lFt.ByteStream=cFt;cFt.BLOCK_SIZE=1024});var uFt=H(kGe=>{"use strict";Object.defineProperty(kGe,"__esModule",{value:!0});kGe.ASN1TypeError=kGe.ASN1ParseError=void 0;var HUr=class extends Error{};kGe.ASN1ParseError=HUr;var YUr=class extends Error{};kGe.ASN1TypeError=YUr});var Ups=H(gFt=>{"use strict";Object.defineProperty(gFt,"__esModule",{value:!0});gFt.decodeLength=c1l;gFt.encodeLength=l1l;var Jps=uFt();function c1l(e){let t=e.getUint8();if(!(t&128))return t;let r=t&127;if(r>6)throw new Jps.ASN1ParseError("length exceeds 6 byte limit");let n=0;for(let a=0;a0n;)r.unshift(Number(t&255n)),t=t>>8n;return Buffer.from([128|r.length,...r])}});var jps=H(xue=>{"use strict";Object.defineProperty(xue,"__esModule",{value:!0});xue.parseInteger=A1l;xue.parseStringASCII=Kps;xue.parseTime=d1l;xue.parseOID=p1l;xue.parseBoolean=f1l;xue.parseBitString=I1l;var u1l=/^(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/,g1l=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;function A1l(e){let t=0,r=e.length,n=e[t],a=n>127,o=a?255:0;for(;n==o&&++t=50?1900:2e3,n[1]=a.toString()}return new Date(`${n[1]}-${n[2]}-${n[3]}T${n[4]}:${n[5]}:${n[6]}Z`)}function p1l(e){let t=0,r=e.length,n=e[t++],a=Math.floor(n/40),o=n%40,l=`${a}.${o}`,A=0;for(;t=A;--f)a.push(l>>f&1)}return a}});var qps=H(AFt=>{"use strict";Object.defineProperty(AFt,"__esModule",{value:!0});AFt.ASN1Tag=void 0;var zps=uFt(),I0e={BOOLEAN:1,INTEGER:2,BIT_STRING:3,OCTET_STRING:4,OBJECT_IDENTIFIER:6,SEQUENCE:16,SET:17,PRINTABLE_STRING:19,UTC_TIME:23,GENERALIZED_TIME:24},QUr={UNIVERSAL:0,APPLICATION:1,CONTEXT_SPECIFIC:2,PRIVATE:3},XUr=class{constructor(t){if(this.number=t&31,this.constructed=(t&32)===32,this.class=t>>6,this.number===31)throw new zps.ASN1ParseError("long form tags not supported");if(this.class===QUr.UNIVERSAL&&this.number===0)throw new zps.ASN1ParseError("unsupported tag 0x00")}isUniversal(){return this.class===QUr.UNIVERSAL}isContextSpecific(t){let r=this.class===QUr.CONTEXT_SPECIFIC;return t!==void 0?r&&this.number===t:r}isBoolean(){return this.isUniversal()&&this.number===I0e.BOOLEAN}isInteger(){return this.isUniversal()&&this.number===I0e.INTEGER}isBitString(){return this.isUniversal()&&this.number===I0e.BIT_STRING}isOctetString(){return this.isUniversal()&&this.number===I0e.OCTET_STRING}isOID(){return this.isUniversal()&&this.number===I0e.OBJECT_IDENTIFIER}isUTCTime(){return this.isUniversal()&&this.number===I0e.UTC_TIME}isGeneralizedTime(){return this.isUniversal()&&this.number===I0e.GENERALIZED_TIME}toDER(){return this.number|(this.constructed?32:0)|this.class<<6}};AFt.ASN1Tag=XUr});var rfs=H(pFt=>{"use strict";Object.defineProperty(pFt,"__esModule",{value:!0});pFt.ASN1Obj=void 0;var JUr=S7e(),h0e=uFt(),efs=Ups(),xGe=jps(),h1l=qps(),dFt=class{constructor(t,r,n){this.tag=t,this.value=r,this.subs=n}static parseBuffer(t){return tfs(new JUr.ByteStream(t))}toDER(){let t=new JUr.ByteStream;if(this.subs.length>0)for(let a of this.subs)t.appendView(a.toDER());else t.appendView(this.value);let r=t.buffer,n=new JUr.ByteStream;return n.appendChar(this.tag.toDER()),n.appendView((0,efs.encodeLength)(r.length)),n.appendView(r),n.buffer}toBoolean(){if(!this.tag.isBoolean())throw new h0e.ASN1TypeError("not a boolean");return(0,xGe.parseBoolean)(this.value)}toInteger(){if(!this.tag.isInteger())throw new h0e.ASN1TypeError("not an integer");return(0,xGe.parseInteger)(this.value)}toOID(){if(!this.tag.isOID())throw new h0e.ASN1TypeError("not an OID");return(0,xGe.parseOID)(this.value)}toDate(){switch(!0){case this.tag.isUTCTime():return(0,xGe.parseTime)(this.value,!0);case this.tag.isGeneralizedTime():return(0,xGe.parseTime)(this.value,!1);default:throw new h0e.ASN1TypeError("not a date")}}toBitString(){if(!this.tag.isBitString())throw new h0e.ASN1TypeError("not a bit string");return(0,xGe.parseBitString)(this.value)}};pFt.ASN1Obj=dFt;function tfs(e){let t=new h1l.ASN1Tag(e.getUint8()),r=(0,efs.decodeLength)(e),n=e.slice(e.position,r),a=e.position,o=[];if(t.constructed)o=$ps(e,r);else if(t.isOctetString())try{o=$ps(e,r)}catch{}return o.length===0&&e.seek(a+r),new dFt(t,n,o)}function $ps(e,t){let r=e.position+t;if(r>e.length)throw new h0e.ASN1ParseError("invalid length");let n=[];for(;e.position{"use strict";Object.defineProperty(fFt,"__esModule",{value:!0});fFt.ASN1Obj=void 0;var m1l=rfs();Object.defineProperty(fFt,"ASN1Obj",{enumerable:!0,get:function(){return m1l.ASN1Obj}})});var GGe=H(Gue=>{"use strict";var C1l=Gue&&Gue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Gue,"__esModule",{value:!0});Gue.createPublicKey=_1l;Gue.digest=y1l;Gue.verify=b1l;Gue.bufferEqual=E1l;var v7e=C1l(wt("crypto"));function _1l(e,t="spki"){return typeof e=="string"?v7e.default.createPublicKey(e):v7e.default.createPublicKey({key:e,format:"der",type:t})}function y1l(e,...t){let r=v7e.default.createHash(e);for(let n of t)r.update(n);return r.digest()}function b1l(e,t,r,n){try{return v7e.default.verify(n,e,t,r)}catch{return!1}}function E1l(e,t){try{return v7e.default.timingSafeEqual(e,t)}catch{return!1}}});var nfs=H(UUr=>{"use strict";Object.defineProperty(UUr,"__esModule",{value:!0});UUr.preAuthEncoding=v1l;var S1l="DSSEv1";function v1l(e,t){let r=[S1l,e.length,e,t.length,""].join(" ");return Buffer.concat([Buffer.from(r,"ascii"),t])}});var ofs=H(hFt=>{"use strict";Object.defineProperty(hFt,"__esModule",{value:!0});hFt.base64Encode=B1l;hFt.base64Decode=w1l;var ifs="base64",sfs="utf-8";function B1l(e){return Buffer.from(e,sfs).toString(ifs)}function w1l(e){return Buffer.from(e,ifs).toString(sfs)}});var afs=H(jUr=>{"use strict";Object.defineProperty(jUr,"__esModule",{value:!0});jUr.canonicalize=KUr;function KUr(e){let t="";if(e===null||typeof e!="object"||e.toJSON!=null)t+=JSON.stringify(e);else if(Array.isArray(e)){t+="[";let r=!0;e.forEach(n=>{r||(t+=","),r=!1,t+=KUr(n)}),t+="]"}else{t+="{";let r=!0;Object.keys(e).sort().forEach(n=>{r||(t+=","),r=!1,t+=JSON.stringify(n),t+=":",t+=KUr(e[n])}),t+="}"}return t}});var zUr=H(mFt=>{"use strict";Object.defineProperty(mFt,"__esModule",{value:!0});mFt.toDER=N1l;mFt.fromDER=D1l;var T1l=/-----BEGIN (.*)-----/,R1l=/-----END (.*)-----/;function N1l(e){let t="";return e.split(` -`).forEach(r=>{r.match(T1l)||r.match(R1l)||(t+=r)}),Buffer.from(t,"base64")}function D1l(e,t="CERTIFICATE"){let n=e.toString("base64").match(/.{1,64}/g)||"";return[`-----BEGIN ${t}-----`,...n,`-----END ${t}-----`].join(` + Found: ${e.length}`);throw A.code="EBADSIZE",A.found=e.length,A.expected=r.size,A.sri=t,A}else{let A=new Error(`Integrity checksum failed when using ${n}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw A.code="EINTEGRITY",A.found=o,A.expected=t,A.algorithm=n,A.sri=t,A}}m6.exports.checkStream=S1l;function S1l(e,t,r){if(r=r||Object.create(null),r.integrity=t,t=YO(t,r),!t||!Object.keys(t).length)return Promise.reject(Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"}));let n=WUr(r);return new Promise((a,o)=>{e.pipe(n),e.on("error",o),n.on("error",o);let l;n.on("verified",A=>{l=A}),n.on("end",()=>a(l)),n.resume()})}m6.exports.integrityStream=WUr;function WUr(e=Object.create(null)){return new VUr(e)}m6.exports.create=v1l;function v1l(e){let t=e?.algorithms||[...PUr],r=b7e(e?.options),n=t.map(y7e.createHash);return{update:function(a,o){return n.forEach(l=>l.update(a,o)),this},digest:function(){return t.reduce((o,l)=>{let A=n.shift().digest("base64"),f=new Jte(`${l}-${A}${r}`,e);if(f.algorithm&&f.digest){let I=f.algorithm;o[I]||(o[I]=[]),o[I].push(f)}return o},new d0e)}}}var B1l=y7e.getHashes(),Zps=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>B1l.includes(e));function w1l(e,t){return Zps.indexOf(e.toLowerCase())>=Zps.indexOf(t.toLowerCase())?e:t}});var OUr=H(Nue=>{"use strict";Object.defineProperty(Nue,"__esModule",{value:!0});Nue.Signature=Nue.Envelope=void 0;Nue.Envelope={fromJSON(e){return{payload:eFt(e.payload)?Buffer.from(Lps(e.payload)):Buffer.alloc(0),payloadType:eFt(e.payloadType)?globalThis.String(e.payloadType):"",signatures:globalThis.Array.isArray(e?.signatures)?e.signatures.map(t=>Nue.Signature.fromJSON(t)):[]}},toJSON(e){let t={};return e.payload.length!==0&&(t.payload=Vps(e.payload)),e.payloadType!==""&&(t.payloadType=e.payloadType),e.signatures?.length&&(t.signatures=e.signatures.map(r=>Nue.Signature.toJSON(r))),t}};Nue.Signature={fromJSON(e){return{sig:eFt(e.sig)?Buffer.from(Lps(e.sig)):Buffer.alloc(0),keyid:eFt(e.keyid)?globalThis.String(e.keyid):""}},toJSON(e){let t={};return e.sig.length!==0&&(t.sig=Vps(e.sig)),e.keyid!==""&&(t.keyid=e.keyid),t}};function Lps(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function Vps(e){return globalThis.Buffer.from(e).toString("base64")}function eFt(e){return e!=null}});var Wps=H(tFt=>{"use strict";Object.defineProperty(tFt,"__esModule",{value:!0});tFt.Timestamp=void 0;tFt.Timestamp={fromJSON(e){return{seconds:Pps(e.seconds)?globalThis.String(e.seconds):"0",nanos:Pps(e.nanos)?globalThis.Number(e.nanos):0}},toJSON(e){let t={};return e.seconds!=="0"&&(t.seconds=e.seconds),e.nanos!==0&&(t.nanos=Math.round(e.nanos)),t}};function Pps(e){return e!=null}});var kGe=H(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});Vf.TimeRange=Vf.X509CertificateChain=Vf.SubjectAlternativeName=Vf.X509Certificate=Vf.DistinguishedName=Vf.ObjectIdentifierValuePair=Vf.ObjectIdentifier=Vf.PublicKeyIdentifier=Vf.PublicKey=Vf.RFC3161SignedTimestamp=Vf.LogId=Vf.MessageSignature=Vf.HashOutput=Vf.SubjectAlternativeNameType=Vf.PublicKeyDetails=Vf.HashAlgorithm=void 0;Vf.hashAlgorithmFromJSON=Mps;Vf.hashAlgorithmToJSON=Hps;Vf.publicKeyDetailsFromJSON=Yps;Vf.publicKeyDetailsToJSON=Qps;Vf.subjectAlternativeNameTypeFromJSON=Xps;Vf.subjectAlternativeNameTypeToJSON=Jps;var T1l=Wps(),UV;(function(e){e[e.HASH_ALGORITHM_UNSPECIFIED=0]="HASH_ALGORITHM_UNSPECIFIED",e[e.SHA2_256=1]="SHA2_256",e[e.SHA2_384=2]="SHA2_384",e[e.SHA2_512=3]="SHA2_512",e[e.SHA3_256=4]="SHA3_256",e[e.SHA3_384=5]="SHA3_384"})(UV||(Vf.HashAlgorithm=UV={}));function Mps(e){switch(e){case 0:case"HASH_ALGORITHM_UNSPECIFIED":return UV.HASH_ALGORITHM_UNSPECIFIED;case 1:case"SHA2_256":return UV.SHA2_256;case 2:case"SHA2_384":return UV.SHA2_384;case 3:case"SHA2_512":return UV.SHA2_512;case 4:case"SHA3_256":return UV.SHA3_256;case 5:case"SHA3_384":return UV.SHA3_384;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}function Hps(e){switch(e){case UV.HASH_ALGORITHM_UNSPECIFIED:return"HASH_ALGORITHM_UNSPECIFIED";case UV.SHA2_256:return"SHA2_256";case UV.SHA2_384:return"SHA2_384";case UV.SHA2_512:return"SHA2_512";case UV.SHA3_256:return"SHA3_256";case UV.SHA3_384:return"SHA3_384";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}var Lf;(function(e){e[e.PUBLIC_KEY_DETAILS_UNSPECIFIED=0]="PUBLIC_KEY_DETAILS_UNSPECIFIED",e[e.PKCS1_RSA_PKCS1V5=1]="PKCS1_RSA_PKCS1V5",e[e.PKCS1_RSA_PSS=2]="PKCS1_RSA_PSS",e[e.PKIX_RSA_PKCS1V5=3]="PKIX_RSA_PKCS1V5",e[e.PKIX_RSA_PSS=4]="PKIX_RSA_PSS",e[e.PKIX_RSA_PKCS1V15_2048_SHA256=9]="PKIX_RSA_PKCS1V15_2048_SHA256",e[e.PKIX_RSA_PKCS1V15_3072_SHA256=10]="PKIX_RSA_PKCS1V15_3072_SHA256",e[e.PKIX_RSA_PKCS1V15_4096_SHA256=11]="PKIX_RSA_PKCS1V15_4096_SHA256",e[e.PKIX_RSA_PSS_2048_SHA256=16]="PKIX_RSA_PSS_2048_SHA256",e[e.PKIX_RSA_PSS_3072_SHA256=17]="PKIX_RSA_PSS_3072_SHA256",e[e.PKIX_RSA_PSS_4096_SHA256=18]="PKIX_RSA_PSS_4096_SHA256",e[e.PKIX_ECDSA_P256_HMAC_SHA_256=6]="PKIX_ECDSA_P256_HMAC_SHA_256",e[e.PKIX_ECDSA_P256_SHA_256=5]="PKIX_ECDSA_P256_SHA_256",e[e.PKIX_ECDSA_P384_SHA_384=12]="PKIX_ECDSA_P384_SHA_384",e[e.PKIX_ECDSA_P521_SHA_512=13]="PKIX_ECDSA_P521_SHA_512",e[e.PKIX_ED25519=7]="PKIX_ED25519",e[e.PKIX_ED25519_PH=8]="PKIX_ED25519_PH",e[e.PKIX_ECDSA_P384_SHA_256=19]="PKIX_ECDSA_P384_SHA_256",e[e.PKIX_ECDSA_P521_SHA_256=20]="PKIX_ECDSA_P521_SHA_256",e[e.LMS_SHA256=14]="LMS_SHA256",e[e.LMOTS_SHA256=15]="LMOTS_SHA256",e[e.ML_DSA_65=21]="ML_DSA_65",e[e.ML_DSA_87=22]="ML_DSA_87"})(Lf||(Vf.PublicKeyDetails=Lf={}));function Yps(e){switch(e){case 0:case"PUBLIC_KEY_DETAILS_UNSPECIFIED":return Lf.PUBLIC_KEY_DETAILS_UNSPECIFIED;case 1:case"PKCS1_RSA_PKCS1V5":return Lf.PKCS1_RSA_PKCS1V5;case 2:case"PKCS1_RSA_PSS":return Lf.PKCS1_RSA_PSS;case 3:case"PKIX_RSA_PKCS1V5":return Lf.PKIX_RSA_PKCS1V5;case 4:case"PKIX_RSA_PSS":return Lf.PKIX_RSA_PSS;case 9:case"PKIX_RSA_PKCS1V15_2048_SHA256":return Lf.PKIX_RSA_PKCS1V15_2048_SHA256;case 10:case"PKIX_RSA_PKCS1V15_3072_SHA256":return Lf.PKIX_RSA_PKCS1V15_3072_SHA256;case 11:case"PKIX_RSA_PKCS1V15_4096_SHA256":return Lf.PKIX_RSA_PKCS1V15_4096_SHA256;case 16:case"PKIX_RSA_PSS_2048_SHA256":return Lf.PKIX_RSA_PSS_2048_SHA256;case 17:case"PKIX_RSA_PSS_3072_SHA256":return Lf.PKIX_RSA_PSS_3072_SHA256;case 18:case"PKIX_RSA_PSS_4096_SHA256":return Lf.PKIX_RSA_PSS_4096_SHA256;case 6:case"PKIX_ECDSA_P256_HMAC_SHA_256":return Lf.PKIX_ECDSA_P256_HMAC_SHA_256;case 5:case"PKIX_ECDSA_P256_SHA_256":return Lf.PKIX_ECDSA_P256_SHA_256;case 12:case"PKIX_ECDSA_P384_SHA_384":return Lf.PKIX_ECDSA_P384_SHA_384;case 13:case"PKIX_ECDSA_P521_SHA_512":return Lf.PKIX_ECDSA_P521_SHA_512;case 7:case"PKIX_ED25519":return Lf.PKIX_ED25519;case 8:case"PKIX_ED25519_PH":return Lf.PKIX_ED25519_PH;case 19:case"PKIX_ECDSA_P384_SHA_256":return Lf.PKIX_ECDSA_P384_SHA_256;case 20:case"PKIX_ECDSA_P521_SHA_256":return Lf.PKIX_ECDSA_P521_SHA_256;case 14:case"LMS_SHA256":return Lf.LMS_SHA256;case 15:case"LMOTS_SHA256":return Lf.LMOTS_SHA256;case 21:case"ML_DSA_65":return Lf.ML_DSA_65;case 22:case"ML_DSA_87":return Lf.ML_DSA_87;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}function Qps(e){switch(e){case Lf.PUBLIC_KEY_DETAILS_UNSPECIFIED:return"PUBLIC_KEY_DETAILS_UNSPECIFIED";case Lf.PKCS1_RSA_PKCS1V5:return"PKCS1_RSA_PKCS1V5";case Lf.PKCS1_RSA_PSS:return"PKCS1_RSA_PSS";case Lf.PKIX_RSA_PKCS1V5:return"PKIX_RSA_PKCS1V5";case Lf.PKIX_RSA_PSS:return"PKIX_RSA_PSS";case Lf.PKIX_RSA_PKCS1V15_2048_SHA256:return"PKIX_RSA_PKCS1V15_2048_SHA256";case Lf.PKIX_RSA_PKCS1V15_3072_SHA256:return"PKIX_RSA_PKCS1V15_3072_SHA256";case Lf.PKIX_RSA_PKCS1V15_4096_SHA256:return"PKIX_RSA_PKCS1V15_4096_SHA256";case Lf.PKIX_RSA_PSS_2048_SHA256:return"PKIX_RSA_PSS_2048_SHA256";case Lf.PKIX_RSA_PSS_3072_SHA256:return"PKIX_RSA_PSS_3072_SHA256";case Lf.PKIX_RSA_PSS_4096_SHA256:return"PKIX_RSA_PSS_4096_SHA256";case Lf.PKIX_ECDSA_P256_HMAC_SHA_256:return"PKIX_ECDSA_P256_HMAC_SHA_256";case Lf.PKIX_ECDSA_P256_SHA_256:return"PKIX_ECDSA_P256_SHA_256";case Lf.PKIX_ECDSA_P384_SHA_384:return"PKIX_ECDSA_P384_SHA_384";case Lf.PKIX_ECDSA_P521_SHA_512:return"PKIX_ECDSA_P521_SHA_512";case Lf.PKIX_ED25519:return"PKIX_ED25519";case Lf.PKIX_ED25519_PH:return"PKIX_ED25519_PH";case Lf.PKIX_ECDSA_P384_SHA_256:return"PKIX_ECDSA_P384_SHA_256";case Lf.PKIX_ECDSA_P521_SHA_256:return"PKIX_ECDSA_P521_SHA_256";case Lf.LMS_SHA256:return"LMS_SHA256";case Lf.LMOTS_SHA256:return"LMOTS_SHA256";case Lf.ML_DSA_65:return"ML_DSA_65";case Lf.ML_DSA_87:return"ML_DSA_87";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}var C6;(function(e){e[e.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED=0]="SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED",e[e.EMAIL=1]="EMAIL",e[e.URI=2]="URI",e[e.OTHER_NAME=3]="OTHER_NAME"})(C6||(Vf.SubjectAlternativeNameType=C6={}));function Xps(e){switch(e){case 0:case"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED":return C6.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED;case 1:case"EMAIL":return C6.EMAIL;case 2:case"URI":return C6.URI;case 3:case"OTHER_NAME":return C6.OTHER_NAME;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}function Jps(e){switch(e){case C6.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED:return"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";case C6.EMAIL:return"EMAIL";case C6.URI:return"URI";case C6.OTHER_NAME:return"OTHER_NAME";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}Vf.HashOutput={fromJSON(e){return{algorithm:ST(e.algorithm)?Mps(e.algorithm):0,digest:ST(e.digest)?Buffer.from(p0e(e.digest)):Buffer.alloc(0)}},toJSON(e){let t={};return e.algorithm!==0&&(t.algorithm=Hps(e.algorithm)),e.digest.length!==0&&(t.digest=f0e(e.digest)),t}};Vf.MessageSignature={fromJSON(e){return{messageDigest:ST(e.messageDigest)?Vf.HashOutput.fromJSON(e.messageDigest):void 0,signature:ST(e.signature)?Buffer.from(p0e(e.signature)):Buffer.alloc(0)}},toJSON(e){let t={};return e.messageDigest!==void 0&&(t.messageDigest=Vf.HashOutput.toJSON(e.messageDigest)),e.signature.length!==0&&(t.signature=f0e(e.signature)),t}};Vf.LogId={fromJSON(e){return{keyId:ST(e.keyId)?Buffer.from(p0e(e.keyId)):Buffer.alloc(0)}},toJSON(e){let t={};return e.keyId.length!==0&&(t.keyId=f0e(e.keyId)),t}};Vf.RFC3161SignedTimestamp={fromJSON(e){return{signedTimestamp:ST(e.signedTimestamp)?Buffer.from(p0e(e.signedTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedTimestamp.length!==0&&(t.signedTimestamp=f0e(e.signedTimestamp)),t}};Vf.PublicKey={fromJSON(e){return{rawBytes:ST(e.rawBytes)?Buffer.from(p0e(e.rawBytes)):void 0,keyDetails:ST(e.keyDetails)?Yps(e.keyDetails):0,validFor:ST(e.validFor)?Vf.TimeRange.fromJSON(e.validFor):void 0}},toJSON(e){let t={};return e.rawBytes!==void 0&&(t.rawBytes=f0e(e.rawBytes)),e.keyDetails!==0&&(t.keyDetails=Qps(e.keyDetails)),e.validFor!==void 0&&(t.validFor=Vf.TimeRange.toJSON(e.validFor)),t}};Vf.PublicKeyIdentifier={fromJSON(e){return{hint:ST(e.hint)?globalThis.String(e.hint):""}},toJSON(e){let t={};return e.hint!==""&&(t.hint=e.hint),t}};Vf.ObjectIdentifier={fromJSON(e){return{id:globalThis.Array.isArray(e?.id)?e.id.map(t=>globalThis.Number(t)):[]}},toJSON(e){let t={};return e.id?.length&&(t.id=e.id.map(r=>Math.round(r))),t}};Vf.ObjectIdentifierValuePair={fromJSON(e){return{oid:ST(e.oid)?Vf.ObjectIdentifier.fromJSON(e.oid):void 0,value:ST(e.value)?Buffer.from(p0e(e.value)):Buffer.alloc(0)}},toJSON(e){let t={};return e.oid!==void 0&&(t.oid=Vf.ObjectIdentifier.toJSON(e.oid)),e.value.length!==0&&(t.value=f0e(e.value)),t}};Vf.DistinguishedName={fromJSON(e){return{organization:ST(e.organization)?globalThis.String(e.organization):"",commonName:ST(e.commonName)?globalThis.String(e.commonName):""}},toJSON(e){let t={};return e.organization!==""&&(t.organization=e.organization),e.commonName!==""&&(t.commonName=e.commonName),t}};Vf.X509Certificate={fromJSON(e){return{rawBytes:ST(e.rawBytes)?Buffer.from(p0e(e.rawBytes)):Buffer.alloc(0)}},toJSON(e){let t={};return e.rawBytes.length!==0&&(t.rawBytes=f0e(e.rawBytes)),t}};Vf.SubjectAlternativeName={fromJSON(e){return{type:ST(e.type)?Xps(e.type):0,identity:ST(e.regexp)?{$case:"regexp",regexp:globalThis.String(e.regexp)}:ST(e.value)?{$case:"value",value:globalThis.String(e.value)}:void 0}},toJSON(e){let t={};return e.type!==0&&(t.type=Jps(e.type)),e.identity?.$case==="regexp"?t.regexp=e.identity.regexp:e.identity?.$case==="value"&&(t.value=e.identity.value),t}};Vf.X509CertificateChain={fromJSON(e){return{certificates:globalThis.Array.isArray(e?.certificates)?e.certificates.map(t=>Vf.X509Certificate.fromJSON(t)):[]}},toJSON(e){let t={};return e.certificates?.length&&(t.certificates=e.certificates.map(r=>Vf.X509Certificate.toJSON(r))),t}};Vf.TimeRange={fromJSON(e){return{start:ST(e.start)?Ops(e.start):void 0,end:ST(e.end)?Ops(e.end):void 0}},toJSON(e){let t={};return e.start!==void 0&&(t.start=e.start.toISOString()),e.end!==void 0&&(t.end=e.end.toISOString()),t}};function p0e(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function f0e(e){return globalThis.Buffer.from(e).toString("base64")}function R1l(e){let t=(globalThis.Number(e.seconds)||0)*1e3;return t+=(e.nanos||0)/1e6,new globalThis.Date(t)}function Ops(e){return e instanceof globalThis.Date?e:typeof e=="string"?new globalThis.Date(e):R1l(T1l.Timestamp.fromJSON(e))}function ST(e){return e!=null}});var MUr=H(vT=>{"use strict";Object.defineProperty(vT,"__esModule",{value:!0});vT.TransparencyLogEntry=vT.InclusionPromise=vT.InclusionProof=vT.Checkpoint=vT.KindVersion=void 0;var Ups=kGe();vT.KindVersion={fromJSON(e){return{kind:dL(e.kind)?globalThis.String(e.kind):"",version:dL(e.version)?globalThis.String(e.version):""}},toJSON(e){let t={};return e.kind!==""&&(t.kind=e.kind),e.version!==""&&(t.version=e.version),t}};vT.Checkpoint={fromJSON(e){return{envelope:dL(e.envelope)?globalThis.String(e.envelope):""}},toJSON(e){let t={};return e.envelope!==""&&(t.envelope=e.envelope),t}};vT.InclusionProof={fromJSON(e){return{logIndex:dL(e.logIndex)?globalThis.String(e.logIndex):"0",rootHash:dL(e.rootHash)?Buffer.from(rFt(e.rootHash)):Buffer.alloc(0),treeSize:dL(e.treeSize)?globalThis.String(e.treeSize):"0",hashes:globalThis.Array.isArray(e?.hashes)?e.hashes.map(t=>Buffer.from(rFt(t))):[],checkpoint:dL(e.checkpoint)?vT.Checkpoint.fromJSON(e.checkpoint):void 0}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.rootHash.length!==0&&(t.rootHash=nFt(e.rootHash)),e.treeSize!=="0"&&(t.treeSize=e.treeSize),e.hashes?.length&&(t.hashes=e.hashes.map(r=>nFt(r))),e.checkpoint!==void 0&&(t.checkpoint=vT.Checkpoint.toJSON(e.checkpoint)),t}};vT.InclusionPromise={fromJSON(e){return{signedEntryTimestamp:dL(e.signedEntryTimestamp)?Buffer.from(rFt(e.signedEntryTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedEntryTimestamp.length!==0&&(t.signedEntryTimestamp=nFt(e.signedEntryTimestamp)),t}};vT.TransparencyLogEntry={fromJSON(e){return{logIndex:dL(e.logIndex)?globalThis.String(e.logIndex):"0",logId:dL(e.logId)?Ups.LogId.fromJSON(e.logId):void 0,kindVersion:dL(e.kindVersion)?vT.KindVersion.fromJSON(e.kindVersion):void 0,integratedTime:dL(e.integratedTime)?globalThis.String(e.integratedTime):"0",inclusionPromise:dL(e.inclusionPromise)?vT.InclusionPromise.fromJSON(e.inclusionPromise):void 0,inclusionProof:dL(e.inclusionProof)?vT.InclusionProof.fromJSON(e.inclusionProof):void 0,canonicalizedBody:dL(e.canonicalizedBody)?Buffer.from(rFt(e.canonicalizedBody)):Buffer.alloc(0)}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.logId!==void 0&&(t.logId=Ups.LogId.toJSON(e.logId)),e.kindVersion!==void 0&&(t.kindVersion=vT.KindVersion.toJSON(e.kindVersion)),e.integratedTime!=="0"&&(t.integratedTime=e.integratedTime),e.inclusionPromise!==void 0&&(t.inclusionPromise=vT.InclusionPromise.toJSON(e.inclusionPromise)),e.inclusionProof!==void 0&&(t.inclusionProof=vT.InclusionProof.toJSON(e.inclusionProof)),e.canonicalizedBody.length!==0&&(t.canonicalizedBody=nFt(e.canonicalizedBody)),t}};function rFt(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function nFt(e){return globalThis.Buffer.from(e).toString("base64")}function dL(e){return e!=null}});var HUr=H(ZH=>{"use strict";Object.defineProperty(ZH,"__esModule",{value:!0});ZH.Bundle=ZH.VerificationMaterial=ZH.TimestampVerificationData=void 0;var Kps=OUr(),_6=kGe(),jps=MUr();ZH.TimestampVerificationData={fromJSON(e){return{rfc3161Timestamps:globalThis.Array.isArray(e?.rfc3161Timestamps)?e.rfc3161Timestamps.map(t=>_6.RFC3161SignedTimestamp.fromJSON(t)):[]}},toJSON(e){let t={};return e.rfc3161Timestamps?.length&&(t.rfc3161Timestamps=e.rfc3161Timestamps.map(r=>_6.RFC3161SignedTimestamp.toJSON(r))),t}};ZH.VerificationMaterial={fromJSON(e){return{content:Due(e.publicKey)?{$case:"publicKey",publicKey:_6.PublicKeyIdentifier.fromJSON(e.publicKey)}:Due(e.x509CertificateChain)?{$case:"x509CertificateChain",x509CertificateChain:_6.X509CertificateChain.fromJSON(e.x509CertificateChain)}:Due(e.certificate)?{$case:"certificate",certificate:_6.X509Certificate.fromJSON(e.certificate)}:void 0,tlogEntries:globalThis.Array.isArray(e?.tlogEntries)?e.tlogEntries.map(t=>jps.TransparencyLogEntry.fromJSON(t)):[],timestampVerificationData:Due(e.timestampVerificationData)?ZH.TimestampVerificationData.fromJSON(e.timestampVerificationData):void 0}},toJSON(e){let t={};return e.content?.$case==="publicKey"?t.publicKey=_6.PublicKeyIdentifier.toJSON(e.content.publicKey):e.content?.$case==="x509CertificateChain"?t.x509CertificateChain=_6.X509CertificateChain.toJSON(e.content.x509CertificateChain):e.content?.$case==="certificate"&&(t.certificate=_6.X509Certificate.toJSON(e.content.certificate)),e.tlogEntries?.length&&(t.tlogEntries=e.tlogEntries.map(r=>jps.TransparencyLogEntry.toJSON(r))),e.timestampVerificationData!==void 0&&(t.timestampVerificationData=ZH.TimestampVerificationData.toJSON(e.timestampVerificationData)),t}};ZH.Bundle={fromJSON(e){return{mediaType:Due(e.mediaType)?globalThis.String(e.mediaType):"",verificationMaterial:Due(e.verificationMaterial)?ZH.VerificationMaterial.fromJSON(e.verificationMaterial):void 0,content:Due(e.messageSignature)?{$case:"messageSignature",messageSignature:_6.MessageSignature.fromJSON(e.messageSignature)}:Due(e.dsseEnvelope)?{$case:"dsseEnvelope",dsseEnvelope:Kps.Envelope.fromJSON(e.dsseEnvelope)}:void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.verificationMaterial!==void 0&&(t.verificationMaterial=ZH.VerificationMaterial.toJSON(e.verificationMaterial)),e.content?.$case==="messageSignature"?t.messageSignature=_6.MessageSignature.toJSON(e.content.messageSignature):e.content?.$case==="dsseEnvelope"&&(t.dsseEnvelope=Kps.Envelope.toJSON(e.content.dsseEnvelope)),t}};function Due(e){return e!=null}});var YUr=H(ZI=>{"use strict";Object.defineProperty(ZI,"__esModule",{value:!0});ZI.ClientTrustConfig=ZI.ServiceConfiguration=ZI.Service=ZI.SigningConfig=ZI.TrustedRoot=ZI.CertificateAuthority=ZI.TransparencyLogInstance=ZI.ServiceSelector=void 0;ZI.serviceSelectorFromJSON=zps;ZI.serviceSelectorToJSON=qps;var nF=kGe(),y6;(function(e){e[e.SERVICE_SELECTOR_UNDEFINED=0]="SERVICE_SELECTOR_UNDEFINED",e[e.ALL=1]="ALL",e[e.ANY=2]="ANY",e[e.EXACT=3]="EXACT"})(y6||(ZI.ServiceSelector=y6={}));function zps(e){switch(e){case 0:case"SERVICE_SELECTOR_UNDEFINED":return y6.SERVICE_SELECTOR_UNDEFINED;case 1:case"ALL":return y6.ALL;case 2:case"ANY":return y6.ANY;case 3:case"EXACT":return y6.EXACT;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}function qps(e){switch(e){case y6.SERVICE_SELECTOR_UNDEFINED:return"SERVICE_SELECTOR_UNDEFINED";case y6.ALL:return"ALL";case y6.ANY:return"ANY";case y6.EXACT:return"EXACT";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}ZI.TransparencyLogInstance={fromJSON(e){return{baseUrl:P2(e.baseUrl)?globalThis.String(e.baseUrl):"",hashAlgorithm:P2(e.hashAlgorithm)?(0,nF.hashAlgorithmFromJSON)(e.hashAlgorithm):0,publicKey:P2(e.publicKey)?nF.PublicKey.fromJSON(e.publicKey):void 0,logId:P2(e.logId)?nF.LogId.fromJSON(e.logId):void 0,checkpointKeyId:P2(e.checkpointKeyId)?nF.LogId.fromJSON(e.checkpointKeyId):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.baseUrl!==""&&(t.baseUrl=e.baseUrl),e.hashAlgorithm!==0&&(t.hashAlgorithm=(0,nF.hashAlgorithmToJSON)(e.hashAlgorithm)),e.publicKey!==void 0&&(t.publicKey=nF.PublicKey.toJSON(e.publicKey)),e.logId!==void 0&&(t.logId=nF.LogId.toJSON(e.logId)),e.checkpointKeyId!==void 0&&(t.checkpointKeyId=nF.LogId.toJSON(e.checkpointKeyId)),e.operator!==""&&(t.operator=e.operator),t}};ZI.CertificateAuthority={fromJSON(e){return{subject:P2(e.subject)?nF.DistinguishedName.fromJSON(e.subject):void 0,uri:P2(e.uri)?globalThis.String(e.uri):"",certChain:P2(e.certChain)?nF.X509CertificateChain.fromJSON(e.certChain):void 0,validFor:P2(e.validFor)?nF.TimeRange.fromJSON(e.validFor):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.subject!==void 0&&(t.subject=nF.DistinguishedName.toJSON(e.subject)),e.uri!==""&&(t.uri=e.uri),e.certChain!==void 0&&(t.certChain=nF.X509CertificateChain.toJSON(e.certChain)),e.validFor!==void 0&&(t.validFor=nF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};ZI.TrustedRoot={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",tlogs:globalThis.Array.isArray(e?.tlogs)?e.tlogs.map(t=>ZI.TransparencyLogInstance.fromJSON(t)):[],certificateAuthorities:globalThis.Array.isArray(e?.certificateAuthorities)?e.certificateAuthorities.map(t=>ZI.CertificateAuthority.fromJSON(t)):[],ctlogs:globalThis.Array.isArray(e?.ctlogs)?e.ctlogs.map(t=>ZI.TransparencyLogInstance.fromJSON(t)):[],timestampAuthorities:globalThis.Array.isArray(e?.timestampAuthorities)?e.timestampAuthorities.map(t=>ZI.CertificateAuthority.fromJSON(t)):[]}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.tlogs?.length&&(t.tlogs=e.tlogs.map(r=>ZI.TransparencyLogInstance.toJSON(r))),e.certificateAuthorities?.length&&(t.certificateAuthorities=e.certificateAuthorities.map(r=>ZI.CertificateAuthority.toJSON(r))),e.ctlogs?.length&&(t.ctlogs=e.ctlogs.map(r=>ZI.TransparencyLogInstance.toJSON(r))),e.timestampAuthorities?.length&&(t.timestampAuthorities=e.timestampAuthorities.map(r=>ZI.CertificateAuthority.toJSON(r))),t}};ZI.SigningConfig={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",caUrls:globalThis.Array.isArray(e?.caUrls)?e.caUrls.map(t=>ZI.Service.fromJSON(t)):[],oidcUrls:globalThis.Array.isArray(e?.oidcUrls)?e.oidcUrls.map(t=>ZI.Service.fromJSON(t)):[],rekorTlogUrls:globalThis.Array.isArray(e?.rekorTlogUrls)?e.rekorTlogUrls.map(t=>ZI.Service.fromJSON(t)):[],rekorTlogConfig:P2(e.rekorTlogConfig)?ZI.ServiceConfiguration.fromJSON(e.rekorTlogConfig):void 0,tsaUrls:globalThis.Array.isArray(e?.tsaUrls)?e.tsaUrls.map(t=>ZI.Service.fromJSON(t)):[],tsaConfig:P2(e.tsaConfig)?ZI.ServiceConfiguration.fromJSON(e.tsaConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.caUrls?.length&&(t.caUrls=e.caUrls.map(r=>ZI.Service.toJSON(r))),e.oidcUrls?.length&&(t.oidcUrls=e.oidcUrls.map(r=>ZI.Service.toJSON(r))),e.rekorTlogUrls?.length&&(t.rekorTlogUrls=e.rekorTlogUrls.map(r=>ZI.Service.toJSON(r))),e.rekorTlogConfig!==void 0&&(t.rekorTlogConfig=ZI.ServiceConfiguration.toJSON(e.rekorTlogConfig)),e.tsaUrls?.length&&(t.tsaUrls=e.tsaUrls.map(r=>ZI.Service.toJSON(r))),e.tsaConfig!==void 0&&(t.tsaConfig=ZI.ServiceConfiguration.toJSON(e.tsaConfig)),t}};ZI.Service={fromJSON(e){return{url:P2(e.url)?globalThis.String(e.url):"",majorApiVersion:P2(e.majorApiVersion)?globalThis.Number(e.majorApiVersion):0,validFor:P2(e.validFor)?nF.TimeRange.fromJSON(e.validFor):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.url!==""&&(t.url=e.url),e.majorApiVersion!==0&&(t.majorApiVersion=Math.round(e.majorApiVersion)),e.validFor!==void 0&&(t.validFor=nF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};ZI.ServiceConfiguration={fromJSON(e){return{selector:P2(e.selector)?zps(e.selector):0,count:P2(e.count)?globalThis.Number(e.count):0}},toJSON(e){let t={};return e.selector!==0&&(t.selector=qps(e.selector)),e.count!==0&&(t.count=Math.round(e.count)),t}};ZI.ClientTrustConfig={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",trustedRoot:P2(e.trustedRoot)?ZI.TrustedRoot.fromJSON(e.trustedRoot):void 0,signingConfig:P2(e.signingConfig)?ZI.SigningConfig.fromJSON(e.signingConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.trustedRoot!==void 0&&(t.trustedRoot=ZI.TrustedRoot.toJSON(e.trustedRoot)),e.signingConfig!==void 0&&(t.signingConfig=ZI.SigningConfig.toJSON(e.signingConfig)),t}};function P2(e){return e!=null}});var tfs=H(LI=>{"use strict";Object.defineProperty(LI,"__esModule",{value:!0});LI.Input=LI.Artifact=LI.ArtifactVerificationOptions_ObserverTimestampOptions=LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions=LI.ArtifactVerificationOptions_TimestampAuthorityOptions=LI.ArtifactVerificationOptions_CtlogOptions=LI.ArtifactVerificationOptions_TlogOptions=LI.ArtifactVerificationOptions=LI.PublicKeyIdentities=LI.CertificateIdentities=LI.CertificateIdentity=void 0;var $ps=HUr(),kue=kGe(),efs=YUr();LI.CertificateIdentity={fromJSON(e){return{issuer:tE(e.issuer)?globalThis.String(e.issuer):"",san:tE(e.san)?kue.SubjectAlternativeName.fromJSON(e.san):void 0,oids:globalThis.Array.isArray(e?.oids)?e.oids.map(t=>kue.ObjectIdentifierValuePair.fromJSON(t)):[]}},toJSON(e){let t={};return e.issuer!==""&&(t.issuer=e.issuer),e.san!==void 0&&(t.san=kue.SubjectAlternativeName.toJSON(e.san)),e.oids?.length&&(t.oids=e.oids.map(r=>kue.ObjectIdentifierValuePair.toJSON(r))),t}};LI.CertificateIdentities={fromJSON(e){return{identities:globalThis.Array.isArray(e?.identities)?e.identities.map(t=>LI.CertificateIdentity.fromJSON(t)):[]}},toJSON(e){let t={};return e.identities?.length&&(t.identities=e.identities.map(r=>LI.CertificateIdentity.toJSON(r))),t}};LI.PublicKeyIdentities={fromJSON(e){return{publicKeys:globalThis.Array.isArray(e?.publicKeys)?e.publicKeys.map(t=>kue.PublicKey.fromJSON(t)):[]}},toJSON(e){let t={};return e.publicKeys?.length&&(t.publicKeys=e.publicKeys.map(r=>kue.PublicKey.toJSON(r))),t}};LI.ArtifactVerificationOptions={fromJSON(e){return{signers:tE(e.certificateIdentities)?{$case:"certificateIdentities",certificateIdentities:LI.CertificateIdentities.fromJSON(e.certificateIdentities)}:tE(e.publicKeys)?{$case:"publicKeys",publicKeys:LI.PublicKeyIdentities.fromJSON(e.publicKeys)}:void 0,tlogOptions:tE(e.tlogOptions)?LI.ArtifactVerificationOptions_TlogOptions.fromJSON(e.tlogOptions):void 0,ctlogOptions:tE(e.ctlogOptions)?LI.ArtifactVerificationOptions_CtlogOptions.fromJSON(e.ctlogOptions):void 0,tsaOptions:tE(e.tsaOptions)?LI.ArtifactVerificationOptions_TimestampAuthorityOptions.fromJSON(e.tsaOptions):void 0,integratedTsOptions:tE(e.integratedTsOptions)?LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.fromJSON(e.integratedTsOptions):void 0,observerOptions:tE(e.observerOptions)?LI.ArtifactVerificationOptions_ObserverTimestampOptions.fromJSON(e.observerOptions):void 0}},toJSON(e){let t={};return e.signers?.$case==="certificateIdentities"?t.certificateIdentities=LI.CertificateIdentities.toJSON(e.signers.certificateIdentities):e.signers?.$case==="publicKeys"&&(t.publicKeys=LI.PublicKeyIdentities.toJSON(e.signers.publicKeys)),e.tlogOptions!==void 0&&(t.tlogOptions=LI.ArtifactVerificationOptions_TlogOptions.toJSON(e.tlogOptions)),e.ctlogOptions!==void 0&&(t.ctlogOptions=LI.ArtifactVerificationOptions_CtlogOptions.toJSON(e.ctlogOptions)),e.tsaOptions!==void 0&&(t.tsaOptions=LI.ArtifactVerificationOptions_TimestampAuthorityOptions.toJSON(e.tsaOptions)),e.integratedTsOptions!==void 0&&(t.integratedTsOptions=LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.toJSON(e.integratedTsOptions)),e.observerOptions!==void 0&&(t.observerOptions=LI.ArtifactVerificationOptions_ObserverTimestampOptions.toJSON(e.observerOptions)),t}};LI.ArtifactVerificationOptions_TlogOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,performOnlineVerification:tE(e.performOnlineVerification)?globalThis.Boolean(e.performOnlineVerification):!1,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.performOnlineVerification!==!1&&(t.performOnlineVerification=e.performOnlineVerification),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_CtlogOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_TimestampAuthorityOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_ObserverTimestampOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.Artifact={fromJSON(e){return{data:tE(e.artifactUri)?{$case:"artifactUri",artifactUri:globalThis.String(e.artifactUri)}:tE(e.artifact)?{$case:"artifact",artifact:Buffer.from(N1l(e.artifact))}:tE(e.artifactDigest)?{$case:"artifactDigest",artifactDigest:kue.HashOutput.fromJSON(e.artifactDigest)}:void 0}},toJSON(e){let t={};return e.data?.$case==="artifactUri"?t.artifactUri=e.data.artifactUri:e.data?.$case==="artifact"?t.artifact=D1l(e.data.artifact):e.data?.$case==="artifactDigest"&&(t.artifactDigest=kue.HashOutput.toJSON(e.data.artifactDigest)),t}};LI.Input={fromJSON(e){return{artifactTrustRoot:tE(e.artifactTrustRoot)?efs.TrustedRoot.fromJSON(e.artifactTrustRoot):void 0,artifactVerificationOptions:tE(e.artifactVerificationOptions)?LI.ArtifactVerificationOptions.fromJSON(e.artifactVerificationOptions):void 0,bundle:tE(e.bundle)?$ps.Bundle.fromJSON(e.bundle):void 0,artifact:tE(e.artifact)?LI.Artifact.fromJSON(e.artifact):void 0}},toJSON(e){let t={};return e.artifactTrustRoot!==void 0&&(t.artifactTrustRoot=efs.TrustedRoot.toJSON(e.artifactTrustRoot)),e.artifactVerificationOptions!==void 0&&(t.artifactVerificationOptions=LI.ArtifactVerificationOptions.toJSON(e.artifactVerificationOptions)),e.bundle!==void 0&&(t.bundle=$ps.Bundle.toJSON(e.bundle)),e.artifact!==void 0&&(t.artifact=LI.Artifact.toJSON(e.artifact)),t}};function N1l(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function D1l(e){return globalThis.Buffer.from(e).toString("base64")}function tE(e){return e!=null}});var E7e=H(LH=>{"use strict";var k1l=LH&&LH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xGe=LH&&LH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&k1l(t,e,r)};Object.defineProperty(LH,"__esModule",{value:!0});xGe(OUr(),LH);xGe(HUr(),LH);xGe(kGe(),LH);xGe(MUr(),LH);xGe(YUr(),LH);xGe(tfs(),LH)});var iFt=H(KV=>{"use strict";Object.defineProperty(KV,"__esModule",{value:!0});KV.BUNDLE_V03_MEDIA_TYPE=KV.BUNDLE_V03_LEGACY_MEDIA_TYPE=KV.BUNDLE_V02_MEDIA_TYPE=KV.BUNDLE_V01_MEDIA_TYPE=void 0;KV.isBundleWithCertificateChain=x1l;KV.isBundleWithPublicKey=G1l;KV.isBundleWithMessageSignature=F1l;KV.isBundleWithDsseEnvelope=Z1l;KV.BUNDLE_V01_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.1";KV.BUNDLE_V02_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.2";KV.BUNDLE_V03_LEGACY_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.3";KV.BUNDLE_V03_MEDIA_TYPE="application/vnd.dev.sigstore.bundle.v0.3+json";function x1l(e){return e.verificationMaterial.content.$case==="x509CertificateChain"}function G1l(e){return e.verificationMaterial.content.$case==="publicKey"}function F1l(e){return e.content.$case==="messageSignature"}function Z1l(e){return e.content.$case==="dsseEnvelope"}});var nfs=H(oFt=>{"use strict";Object.defineProperty(oFt,"__esModule",{value:!0});oFt.toMessageSignatureBundle=V1l;oFt.toDSSEBundle=P1l;var L1l=E7e(),sFt=iFt();function V1l(e){return{mediaType:e.certificateChain?sFt.BUNDLE_V02_MEDIA_TYPE:sFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"messageSignature",messageSignature:{messageDigest:{algorithm:L1l.HashAlgorithm.SHA2_256,digest:e.digest},signature:e.signature}},verificationMaterial:rfs(e)}}function P1l(e){return{mediaType:e.certificateChain?sFt.BUNDLE_V02_MEDIA_TYPE:sFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"dsseEnvelope",dsseEnvelope:W1l(e)},verificationMaterial:rfs(e)}}function W1l(e){return{payloadType:e.artifactType,payload:e.artifact,signatures:[O1l(e)]}}function O1l(e){return{keyid:e.keyHint||"",sig:e.signature}}function rfs(e){return{content:M1l(e),tlogEntries:[],timestampVerificationData:{rfc3161Timestamps:[]}}}function M1l(e){return e.certificate?e.certificateChain?{$case:"x509CertificateChain",x509CertificateChain:{certificates:[{rawBytes:e.certificate}]}}:{$case:"certificate",certificate:{rawBytes:e.certificate}}:{$case:"publicKey",publicKey:{hint:e.keyHint||""}}}});var XUr=H(aFt=>{"use strict";Object.defineProperty(aFt,"__esModule",{value:!0});aFt.ValidationError=void 0;var QUr=class extends Error{constructor(t,r){super(t),this.fields=r}};aFt.ValidationError=QUr});var JUr=H(I0e=>{"use strict";Object.defineProperty(I0e,"__esModule",{value:!0});I0e.assertBundle=H1l;I0e.assertBundleV01=ifs;I0e.isBundleV01=Y1l;I0e.assertBundleV02=Q1l;I0e.assertBundleLatest=X1l;var cFt=XUr();function H1l(e){let t=lFt(e);if(t.length>0)throw new cFt.ValidationError("invalid bundle",t)}function ifs(e){let t=[];if(t.push(...lFt(e)),t.push(...J1l(e)),t.length>0)throw new cFt.ValidationError("invalid v0.1 bundle",t)}function Y1l(e){try{return ifs(e),!0}catch{return!1}}function Q1l(e){let t=[];if(t.push(...lFt(e)),t.push(...sfs(e)),t.length>0)throw new cFt.ValidationError("invalid v0.2 bundle",t)}function X1l(e){let t=[];if(t.push(...lFt(e)),t.push(...sfs(e)),t.push(...U1l(e)),t.length>0)throw new cFt.ValidationError("invalid bundle",t)}function lFt(e){let t=[];if((e.mediaType===void 0||!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\+json;version=\d\.\d/)&&!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\.v\d\.\d\+json/))&&t.push("mediaType"),e.content===void 0)t.push("content");else switch(e.content.$case){case"messageSignature":e.content.messageSignature.messageDigest===void 0?t.push("content.messageSignature.messageDigest"):e.content.messageSignature.messageDigest.digest.length===0&&t.push("content.messageSignature.messageDigest.digest"),e.content.messageSignature.signature.length===0&&t.push("content.messageSignature.signature");break;case"dsseEnvelope":e.content.dsseEnvelope.payload.length===0&&t.push("content.dsseEnvelope.payload"),e.content.dsseEnvelope.signatures.length!==1?t.push("content.dsseEnvelope.signatures"):e.content.dsseEnvelope.signatures[0].sig.length===0&&t.push("content.dsseEnvelope.signatures[0].sig");break}if(e.verificationMaterial===void 0)t.push("verificationMaterial");else{if(e.verificationMaterial.content===void 0)t.push("verificationMaterial.content");else switch(e.verificationMaterial.content.$case){case"x509CertificateChain":e.verificationMaterial.content.x509CertificateChain.certificates.length===0&&t.push("verificationMaterial.content.x509CertificateChain.certificates"),e.verificationMaterial.content.x509CertificateChain.certificates.forEach((r,n)=>{r.rawBytes.length===0&&t.push(`verificationMaterial.content.x509CertificateChain.certificates[${n}].rawBytes`)});break;case"certificate":e.verificationMaterial.content.certificate.rawBytes.length===0&&t.push("verificationMaterial.content.certificate.rawBytes");break}e.verificationMaterial.tlogEntries===void 0?t.push("verificationMaterial.tlogEntries"):e.verificationMaterial.tlogEntries.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.logId===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].logId`),r.kindVersion===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].kindVersion`)})}return t}function J1l(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionPromise===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionPromise`)}),t}function sfs(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionProof===void 0?t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof`):r.inclusionProof.checkpoint===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof.checkpoint`)}),t}function U1l(e){let t=[];return e.verificationMaterial?.content?.$case==="x509CertificateChain"&&t.push("verificationMaterial.content.$case"),t}});var afs=H(b6=>{"use strict";Object.defineProperty(b6,"__esModule",{value:!0});b6.envelopeToJSON=b6.envelopeFromJSON=b6.bundleToJSON=b6.bundleFromJSON=void 0;var uFt=E7e(),ofs=iFt(),UUr=JUr(),K1l=e=>{let t=uFt.Bundle.fromJSON(e);switch(t.mediaType){case ofs.BUNDLE_V01_MEDIA_TYPE:(0,UUr.assertBundleV01)(t);break;case ofs.BUNDLE_V02_MEDIA_TYPE:(0,UUr.assertBundleV02)(t);break;default:(0,UUr.assertBundleLatest)(t);break}return t};b6.bundleFromJSON=K1l;var j1l=e=>uFt.Bundle.toJSON(e);b6.bundleToJSON=j1l;var z1l=e=>uFt.Envelope.fromJSON(e);b6.envelopeFromJSON=z1l;var q1l=e=>uFt.Envelope.toJSON(e);b6.envelopeToJSON=q1l});var v7e=H(Ah=>{"use strict";Object.defineProperty(Ah,"__esModule",{value:!0});Ah.isBundleV01=Ah.assertBundleV02=Ah.assertBundleV01=Ah.assertBundleLatest=Ah.assertBundle=Ah.envelopeToJSON=Ah.envelopeFromJSON=Ah.bundleToJSON=Ah.bundleFromJSON=Ah.ValidationError=Ah.isBundleWithPublicKey=Ah.isBundleWithMessageSignature=Ah.isBundleWithDsseEnvelope=Ah.isBundleWithCertificateChain=Ah.BUNDLE_V03_MEDIA_TYPE=Ah.BUNDLE_V03_LEGACY_MEDIA_TYPE=Ah.BUNDLE_V02_MEDIA_TYPE=Ah.BUNDLE_V01_MEDIA_TYPE=Ah.toMessageSignatureBundle=Ah.toDSSEBundle=void 0;var cfs=nfs();Object.defineProperty(Ah,"toDSSEBundle",{enumerable:!0,get:function(){return cfs.toDSSEBundle}});Object.defineProperty(Ah,"toMessageSignatureBundle",{enumerable:!0,get:function(){return cfs.toMessageSignatureBundle}});var xue=iFt();Object.defineProperty(Ah,"BUNDLE_V01_MEDIA_TYPE",{enumerable:!0,get:function(){return xue.BUNDLE_V01_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V02_MEDIA_TYPE",{enumerable:!0,get:function(){return xue.BUNDLE_V02_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V03_LEGACY_MEDIA_TYPE",{enumerable:!0,get:function(){return xue.BUNDLE_V03_LEGACY_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V03_MEDIA_TYPE",{enumerable:!0,get:function(){return xue.BUNDLE_V03_MEDIA_TYPE}});Object.defineProperty(Ah,"isBundleWithCertificateChain",{enumerable:!0,get:function(){return xue.isBundleWithCertificateChain}});Object.defineProperty(Ah,"isBundleWithDsseEnvelope",{enumerable:!0,get:function(){return xue.isBundleWithDsseEnvelope}});Object.defineProperty(Ah,"isBundleWithMessageSignature",{enumerable:!0,get:function(){return xue.isBundleWithMessageSignature}});Object.defineProperty(Ah,"isBundleWithPublicKey",{enumerable:!0,get:function(){return xue.isBundleWithPublicKey}});var $1l=XUr();Object.defineProperty(Ah,"ValidationError",{enumerable:!0,get:function(){return $1l.ValidationError}});var gFt=afs();Object.defineProperty(Ah,"bundleFromJSON",{enumerable:!0,get:function(){return gFt.bundleFromJSON}});Object.defineProperty(Ah,"bundleToJSON",{enumerable:!0,get:function(){return gFt.bundleToJSON}});Object.defineProperty(Ah,"envelopeFromJSON",{enumerable:!0,get:function(){return gFt.envelopeFromJSON}});Object.defineProperty(Ah,"envelopeToJSON",{enumerable:!0,get:function(){return gFt.envelopeToJSON}});var S7e=JUr();Object.defineProperty(Ah,"assertBundle",{enumerable:!0,get:function(){return S7e.assertBundle}});Object.defineProperty(Ah,"assertBundleLatest",{enumerable:!0,get:function(){return S7e.assertBundleLatest}});Object.defineProperty(Ah,"assertBundleV01",{enumerable:!0,get:function(){return S7e.assertBundleV01}});Object.defineProperty(Ah,"assertBundleV02",{enumerable:!0,get:function(){return S7e.assertBundleV02}});Object.defineProperty(Ah,"isBundleV01",{enumerable:!0,get:function(){return S7e.isBundleV01}})});var B7e=H(dFt=>{"use strict";Object.defineProperty(dFt,"__esModule",{value:!0});dFt.ByteStream=void 0;var KUr=class extends Error{},AFt=class e{constructor(t){this.start=0,t?(this.buf=t,this.view=Buffer.from(t)):(this.buf=new ArrayBuffer(0),this.view=Buffer.from(this.buf))}get buffer(){return this.view.subarray(0,this.start)}get length(){return this.view.byteLength}get position(){return this.start}seek(t){this.start=t}slice(t,r){let n=t+r;if(n>this.length)throw new KUr("request past end of buffer");return this.view.subarray(t,n)}appendChar(t){this.ensureCapacity(1),this.view[this.start]=t,this.start+=1}appendUint16(t){this.ensureCapacity(2);let r=new Uint16Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[1],this.view[this.start+1]=n[0],this.start+=2}appendUint24(t){this.ensureCapacity(3);let r=new Uint32Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[2],this.view[this.start+1]=n[1],this.view[this.start+2]=n[0],this.start+=3}appendView(t){this.ensureCapacity(t.length),this.view.set(t,this.start),this.start+=t.length}getBlock(t){if(t<=0)return Buffer.alloc(0);if(this.start+t>this.view.length)throw new Error("request past end of buffer");let r=this.view.subarray(this.start,this.start+t);return this.start+=t,r}getUint8(){return this.getBlock(1)[0]}getUint16(){let t=this.getBlock(2);return t[0]<<8|t[1]}ensureCapacity(t){if(this.start+t>this.view.byteLength){let r=e.BLOCK_SIZE+(t>e.BLOCK_SIZE?t:0);this.realloc(this.view.byteLength+r)}}realloc(t){let r=new ArrayBuffer(t),n=Buffer.from(r);n.set(this.view),this.buf=r,this.view=n}};dFt.ByteStream=AFt;AFt.BLOCK_SIZE=1024});var pFt=H(GGe=>{"use strict";Object.defineProperty(GGe,"__esModule",{value:!0});GGe.ASN1TypeError=GGe.ASN1ParseError=void 0;var jUr=class extends Error{};GGe.ASN1ParseError=jUr;var zUr=class extends Error{};GGe.ASN1TypeError=zUr});var ufs=H(fFt=>{"use strict";Object.defineProperty(fFt,"__esModule",{value:!0});fFt.decodeLength=e2l;fFt.encodeLength=t2l;var lfs=pFt();function e2l(e){let t=e.getUint8();if(!(t&128))return t;let r=t&127;if(r>6)throw new lfs.ASN1ParseError("length exceeds 6 byte limit");let n=0;for(let a=0;a0n;)r.unshift(Number(t&255n)),t=t>>8n;return Buffer.from([128|r.length,...r])}});var Afs=H(Gue=>{"use strict";Object.defineProperty(Gue,"__esModule",{value:!0});Gue.parseInteger=i2l;Gue.parseStringASCII=gfs;Gue.parseTime=s2l;Gue.parseOID=o2l;Gue.parseBoolean=a2l;Gue.parseBitString=c2l;var r2l=/^(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/,n2l=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;function i2l(e){let t=0,r=e.length,n=e[t],a=n>127,o=a?255:0;for(;n==o&&++t=50?1900:2e3,n[1]=a.toString()}return new Date(`${n[1]}-${n[2]}-${n[3]}T${n[4]}:${n[5]}:${n[6]}Z`)}function o2l(e){let t=0,r=e.length,n=e[t++],a=Math.floor(n/40),o=n%40,l=`${a}.${o}`,A=0;for(;t=A;--f)a.push(l>>f&1)}return a}});var pfs=H(IFt=>{"use strict";Object.defineProperty(IFt,"__esModule",{value:!0});IFt.ASN1Tag=void 0;var dfs=pFt(),h0e={BOOLEAN:1,INTEGER:2,BIT_STRING:3,OCTET_STRING:4,OBJECT_IDENTIFIER:6,SEQUENCE:16,SET:17,PRINTABLE_STRING:19,UTC_TIME:23,GENERALIZED_TIME:24},qUr={UNIVERSAL:0,APPLICATION:1,CONTEXT_SPECIFIC:2,PRIVATE:3},$Ur=class{constructor(t){if(this.number=t&31,this.constructed=(t&32)===32,this.class=t>>6,this.number===31)throw new dfs.ASN1ParseError("long form tags not supported");if(this.class===qUr.UNIVERSAL&&this.number===0)throw new dfs.ASN1ParseError("unsupported tag 0x00")}isUniversal(){return this.class===qUr.UNIVERSAL}isContextSpecific(t){let r=this.class===qUr.CONTEXT_SPECIFIC;return t!==void 0?r&&this.number===t:r}isBoolean(){return this.isUniversal()&&this.number===h0e.BOOLEAN}isInteger(){return this.isUniversal()&&this.number===h0e.INTEGER}isBitString(){return this.isUniversal()&&this.number===h0e.BIT_STRING}isOctetString(){return this.isUniversal()&&this.number===h0e.OCTET_STRING}isOID(){return this.isUniversal()&&this.number===h0e.OBJECT_IDENTIFIER}isUTCTime(){return this.isUniversal()&&this.number===h0e.UTC_TIME}isGeneralizedTime(){return this.isUniversal()&&this.number===h0e.GENERALIZED_TIME}toDER(){return this.number|(this.constructed?32:0)|this.class<<6}};IFt.ASN1Tag=$Ur});var mfs=H(mFt=>{"use strict";Object.defineProperty(mFt,"__esModule",{value:!0});mFt.ASN1Obj=void 0;var eKr=B7e(),m0e=pFt(),Ifs=ufs(),FGe=Afs(),l2l=pfs(),hFt=class{constructor(t,r,n){this.tag=t,this.value=r,this.subs=n}static parseBuffer(t){return hfs(new eKr.ByteStream(t))}toDER(){let t=new eKr.ByteStream;if(this.subs.length>0)for(let a of this.subs)t.appendView(a.toDER());else t.appendView(this.value);let r=t.buffer,n=new eKr.ByteStream;return n.appendChar(this.tag.toDER()),n.appendView((0,Ifs.encodeLength)(r.length)),n.appendView(r),n.buffer}toBoolean(){if(!this.tag.isBoolean())throw new m0e.ASN1TypeError("not a boolean");return(0,FGe.parseBoolean)(this.value)}toInteger(){if(!this.tag.isInteger())throw new m0e.ASN1TypeError("not an integer");return(0,FGe.parseInteger)(this.value)}toOID(){if(!this.tag.isOID())throw new m0e.ASN1TypeError("not an OID");return(0,FGe.parseOID)(this.value)}toDate(){switch(!0){case this.tag.isUTCTime():return(0,FGe.parseTime)(this.value,!0);case this.tag.isGeneralizedTime():return(0,FGe.parseTime)(this.value,!1);default:throw new m0e.ASN1TypeError("not a date")}}toBitString(){if(!this.tag.isBitString())throw new m0e.ASN1TypeError("not a bit string");return(0,FGe.parseBitString)(this.value)}};mFt.ASN1Obj=hFt;function hfs(e){let t=new l2l.ASN1Tag(e.getUint8()),r=(0,Ifs.decodeLength)(e),n=e.slice(e.position,r),a=e.position,o=[];if(t.constructed)o=ffs(e,r);else if(t.isOctetString())try{o=ffs(e,r)}catch{}return o.length===0&&e.seek(a+r),new hFt(t,n,o)}function ffs(e,t){let r=e.position+t;if(r>e.length)throw new m0e.ASN1ParseError("invalid length");let n=[];for(;e.position{"use strict";Object.defineProperty(CFt,"__esModule",{value:!0});CFt.ASN1Obj=void 0;var u2l=mfs();Object.defineProperty(CFt,"ASN1Obj",{enumerable:!0,get:function(){return u2l.ASN1Obj}})});var ZGe=H(Fue=>{"use strict";var g2l=Fue&&Fue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Fue,"__esModule",{value:!0});Fue.createPublicKey=A2l;Fue.digest=d2l;Fue.verify=p2l;Fue.bufferEqual=f2l;var w7e=g2l(wt("crypto"));function A2l(e,t="spki"){return typeof e=="string"?w7e.default.createPublicKey(e):w7e.default.createPublicKey({key:e,format:"der",type:t})}function d2l(e,...t){let r=w7e.default.createHash(e);for(let n of t)r.update(n);return r.digest()}function p2l(e,t,r,n){try{return w7e.default.verify(n,e,t,r)}catch{return!1}}function f2l(e,t){try{return w7e.default.timingSafeEqual(e,t)}catch{return!1}}});var Cfs=H(tKr=>{"use strict";Object.defineProperty(tKr,"__esModule",{value:!0});tKr.preAuthEncoding=h2l;var I2l="DSSEv1";function h2l(e,t){let r=[I2l,e.length,e,t.length,""].join(" ");return Buffer.concat([Buffer.from(r,"ascii"),t])}});var bfs=H(yFt=>{"use strict";Object.defineProperty(yFt,"__esModule",{value:!0});yFt.base64Encode=m2l;yFt.base64Decode=C2l;var _fs="base64",yfs="utf-8";function m2l(e){return Buffer.from(e,yfs).toString(_fs)}function C2l(e){return Buffer.from(e,_fs).toString(yfs)}});var Efs=H(nKr=>{"use strict";Object.defineProperty(nKr,"__esModule",{value:!0});nKr.canonicalize=rKr;function rKr(e){let t="";if(e===null||typeof e!="object"||e.toJSON!=null)t+=JSON.stringify(e);else if(Array.isArray(e)){t+="[";let r=!0;e.forEach(n=>{r||(t+=","),r=!1,t+=rKr(n)}),t+="]"}else{t+="{";let r=!0;Object.keys(e).sort().forEach(n=>{r||(t+=","),r=!1,t+=JSON.stringify(n),t+=":",t+=rKr(e[n])}),t+="}"}return t}});var iKr=H(bFt=>{"use strict";Object.defineProperty(bFt,"__esModule",{value:!0});bFt.toDER=b2l;bFt.fromDER=E2l;var _2l=/-----BEGIN (.*)-----/,y2l=/-----END (.*)-----/;function b2l(e){let t="";return e.split(` +`).forEach(r=>{r.match(_2l)||r.match(y2l)||(t+=r)}),Buffer.from(t,"base64")}function E2l(e,t="CERTIFICATE"){let n=e.toString("base64").match(/.{1,64}/g)||"";return[`-----BEGIN ${t}-----`,...n,`-----END ${t}-----`].join(` `).concat(` -`)}});var CFt=H(FGe=>{"use strict";Object.defineProperty(FGe,"__esModule",{value:!0});FGe.SHA2_HASH_ALGOS=FGe.ECDSA_SIGNATURE_ALGOS=void 0;FGe.ECDSA_SIGNATURE_ALGOS={"1.2.840.10045.4.3.1":"sha224","1.2.840.10045.4.3.2":"sha256","1.2.840.10045.4.3.3":"sha384","1.2.840.10045.4.3.4":"sha512"};FGe.SHA2_HASH_ALGOS={"2.16.840.1.101.3.4.2.1":"sha256","2.16.840.1.101.3.4.2.2":"sha384","2.16.840.1.101.3.4.2.3":"sha512"}});var $Ur=H(_Ft=>{"use strict";Object.defineProperty(_Ft,"__esModule",{value:!0});_Ft.RFC3161TimestampVerificationError=void 0;var qUr=class extends Error{};_Ft.RFC3161TimestampVerificationError=qUr});var lfs=H(E6=>{"use strict";var k1l=E6&&E6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),x1l=E6&&E6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),G1l=E6&&E6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&k1l(t,e,r);return x1l(t,e),t};Object.defineProperty(E6,"__esModule",{value:!0});E6.TSTInfo=void 0;var cfs=G1l(GGe()),F1l=CFt(),Z1l=$Ur(),eKr=class{constructor(t){this.root=t}get version(){return this.root.subs[0].toInteger()}get genTime(){return this.root.subs[4].toDate()}get messageImprintHashAlgorithm(){let t=this.messageImprintObj.subs[0].subs[0].toOID();return F1l.SHA2_HASH_ALGOS[t]}get messageImprintHashedMessage(){return this.messageImprintObj.subs[1].value}get raw(){return this.root.toDER()}verify(t){let r=cfs.digest(this.messageImprintHashAlgorithm,t);if(!cfs.bufferEqual(r,this.messageImprintHashedMessage))throw new Z1l.RFC3161TimestampVerificationError("message imprint does not match artifact")}get messageImprintObj(){return this.root.subs[2]}};E6.TSTInfo=eKr});var gfs=H(S6=>{"use strict";var L1l=S6&&S6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),V1l=S6&&S6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),P1l=S6&&S6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&L1l(t,e,r);return V1l(t,e),t};Object.defineProperty(S6,"__esModule",{value:!0});S6.RFC3161Timestamp=void 0;var W1l=IFt(),tKr=P1l(GGe()),ufs=CFt(),B7e=$Ur(),O1l=lfs(),M1l="1.2.840.113549.1.7.2",H1l="1.2.840.113549.1.9.16.1.4",Y1l="1.2.840.113549.1.9.4",rKr=class e{constructor(t){this.root=t}static parse(t){let r=W1l.ASN1Obj.parseBuffer(t);return new e(r)}get status(){return this.pkiStatusInfoObj.subs[0].toInteger()}get contentType(){return this.contentTypeObj.toOID()}get eContentType(){return this.eContentTypeObj.toOID()}get signingTime(){return this.tstInfo.genTime}get signerIssuer(){return this.signerSidObj.subs[0].value}get signerSerialNumber(){return this.signerSidObj.subs[1].value}get signerDigestAlgorithm(){let t=this.signerDigestAlgorithmObj.subs[0].toOID();return ufs.SHA2_HASH_ALGOS[t]}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return ufs.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value}get tstInfo(){return new O1l.TSTInfo(this.eContentObj.subs[0].subs[0])}verify(t,r){if(!this.timeStampTokenObj)throw new B7e.RFC3161TimestampVerificationError("timeStampToken is missing");if(this.contentType!==M1l)throw new B7e.RFC3161TimestampVerificationError(`incorrect content type: ${this.contentType}`);if(this.eContentType!==H1l)throw new B7e.RFC3161TimestampVerificationError(`incorrect encapsulated content type: ${this.eContentType}`);this.tstInfo.verify(t),this.verifyMessageDigest(),this.verifySignature(r)}verifyMessageDigest(){let t=tKr.digest(this.signerDigestAlgorithm,this.tstInfo.raw),r=this.messageDigestAttributeObj.subs[1].subs[0].value;if(!tKr.bufferEqual(t,r))throw new B7e.RFC3161TimestampVerificationError("signed data does not match tstInfo")}verifySignature(t){let r=this.signedAttrsObj.toDER();if(r[0]=49,!tKr.verify(r,t,this.signatureValue,this.signatureAlgorithm))throw new B7e.RFC3161TimestampVerificationError("signature verification failed")}get pkiStatusInfoObj(){return this.root.subs[0]}get timeStampTokenObj(){return this.root.subs[1]}get contentTypeObj(){return this.timeStampTokenObj.subs[0]}get signedDataObj(){return this.timeStampTokenObj.subs.find(r=>r.tag.isContextSpecific(0)).subs[0]}get encapContentInfoObj(){return this.signedDataObj.subs[2]}get signerInfosObj(){let t=this.signedDataObj;return t.subs[t.subs.length-1]}get signerInfoObj(){return this.signerInfosObj.subs[0]}get eContentTypeObj(){return this.encapContentInfoObj.subs[0]}get eContentObj(){return this.encapContentInfoObj.subs[1]}get signedAttrsObj(){return this.signerInfoObj.subs.find(r=>r.tag.isContextSpecific(0))}get messageDigestAttributeObj(){return this.signedAttrsObj.subs.find(r=>r.subs[0].tag.isOID()&&r.subs[0].toOID()===Y1l)}get signerSidObj(){return this.signerInfoObj.subs[1]}get signerDigestAlgorithmObj(){return this.signerInfoObj.subs[2]}get signatureAlgorithmObj(){return this.signerInfoObj.subs[4]}get signatureValueObj(){return this.signerInfoObj.subs[5]}};S6.RFC3161Timestamp=rKr});var Afs=H(yFt=>{"use strict";Object.defineProperty(yFt,"__esModule",{value:!0});yFt.RFC3161Timestamp=void 0;var Q1l=gfs();Object.defineProperty(yFt,"RFC3161Timestamp",{enumerable:!0,get:function(){return Q1l.RFC3161Timestamp}})});var pfs=H(v6=>{"use strict";var X1l=v6&&v6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),J1l=v6&&v6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),U1l=v6&&v6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&X1l(t,e,r);return J1l(t,e),t};Object.defineProperty(v6,"__esModule",{value:!0});v6.SignedCertificateTimestamp=void 0;var K1l=U1l(GGe()),dfs=S7e(),nKr=class e{constructor(t){this.version=t.version,this.logID=t.logID,this.timestamp=t.timestamp,this.extensions=t.extensions,this.hashAlgorithm=t.hashAlgorithm,this.signatureAlgorithm=t.signatureAlgorithm,this.signature=t.signature}get datetime(){return new Date(Number(this.timestamp.readBigInt64BE()))}get algorithm(){switch(this.hashAlgorithm){case 0:return"none";case 1:return"md5";case 2:return"sha1";case 3:return"sha224";case 4:return"sha256";case 5:return"sha384";case 6:return"sha512";default:return"unknown"}}verify(t,r){let n=new dfs.ByteStream;return n.appendChar(this.version),n.appendChar(0),n.appendView(this.timestamp),n.appendUint16(1),n.appendView(t),n.appendUint16(this.extensions.byteLength),this.extensions.byteLength>0&&n.appendView(this.extensions),K1l.verify(n.buffer,r,this.signature,this.algorithm)}static parse(t){let r=new dfs.ByteStream(t),n=r.getUint8(),a=r.getBlock(32),o=r.getBlock(8),l=r.getUint16(),A=r.getBlock(l),f=r.getUint8(),I=r.getUint8(),C=r.getUint16(),b=r.getBlock(C);if(r.position!==t.length)throw new Error("SCT buffer length mismatch");return new e({version:n,logID:a,timestamp:o,extensions:A,hashAlgorithm:f,signatureAlgorithm:I,signature:b})}};v6.SignedCertificateTimestamp=nKr});var uKr=H(iF=>{"use strict";Object.defineProperty(iF,"__esModule",{value:!0});iF.X509SCTExtension=iF.X509SubjectKeyIDExtension=iF.X509AuthorityKeyIDExtension=iF.X509SubjectAlternativeNameExtension=iF.X509KeyUsageExtension=iF.X509BasicConstraintsExtension=iF.X509Extension=void 0;var j1l=S7e(),z1l=pfs(),Ute=class{constructor(t){this.root=t}get oid(){return this.root.subs[0].toOID()}get critical(){return this.root.subs.length===3?this.root.subs[1].toBoolean():!1}get value(){return this.extnValueObj.value}get valueObj(){return this.extnValueObj}get extnValueObj(){return this.root.subs[this.root.subs.length-1]}};iF.X509Extension=Ute;var iKr=class extends Ute{get isCA(){return this.sequence.subs[0]?.toBoolean()??!1}get pathLenConstraint(){return this.sequence.subs.length>1?this.sequence.subs[1].toInteger():void 0}get sequence(){return this.extnValueObj.subs[0]}};iF.X509BasicConstraintsExtension=iKr;var sKr=class extends Ute{get digitalSignature(){return this.bitString[0]===1}get keyCertSign(){return this.bitString[5]===1}get crlSign(){return this.bitString[6]===1}get bitString(){return this.extnValueObj.subs[0].toBitString()}};iF.X509KeyUsageExtension=sKr;var oKr=class extends Ute{get rfc822Name(){return this.findGeneralName(1)?.value.toString("ascii")}get uri(){return this.findGeneralName(6)?.value.toString("ascii")}otherName(t){let r=this.findGeneralName(0);return r===void 0||r.subs[0].toOID()!==t?void 0:r.subs[1].subs[0].value.toString("ascii")}findGeneralName(t){return this.generalNames.find(r=>r.tag.isContextSpecific(t))}get generalNames(){return this.extnValueObj.subs[0].subs}};iF.X509SubjectAlternativeNameExtension=oKr;var aKr=class extends Ute{get keyIdentifier(){return this.findSequenceMember(0)?.value}findSequenceMember(t){return this.sequence.subs.find(r=>r.tag.isContextSpecific(t))}get sequence(){return this.extnValueObj.subs[0]}};iF.X509AuthorityKeyIDExtension=aKr;var cKr=class extends Ute{get keyIdentifier(){return this.extnValueObj.subs[0].value}};iF.X509SubjectKeyIDExtension=cKr;var lKr=class extends Ute{constructor(t){super(t)}get signedCertificateTimestamps(){let t=this.extnValueObj.subs[0].value,r=new j1l.ByteStream(t),n=r.getUint16()+2,a=[];for(;r.position{"use strict";var q1l=QO&&QO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$1l=QO&&QO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ifs=QO&&QO.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&q1l(t,e,r);return $1l(t,e),t};Object.defineProperty(QO,"__esModule",{value:!0});QO.X509Certificate=QO.EXTENSION_OID_SCT=void 0;var e2l=IFt(),ffs=Ifs(GGe()),t2l=CFt(),r2l=Ifs(zUr()),m0e=uKr(),n2l="2.5.29.14",i2l="2.5.29.15",s2l="2.5.29.17",o2l="2.5.29.19",a2l="2.5.29.35";QO.EXTENSION_OID_SCT="1.3.6.1.4.1.11129.2.4.2";var gKr=class e{constructor(t){this.root=t}static parse(t){let r=typeof t=="string"?r2l.toDER(t):t,n=e2l.ASN1Obj.parseBuffer(r);return new e(n)}get tbsCertificate(){return this.tbsCertificateObj}get version(){return`v${(this.versionObj.subs[0].toInteger()+BigInt(1)).toString()}`}get serialNumber(){return this.serialNumberObj.value}get notBefore(){return this.validityObj.subs[0].toDate()}get notAfter(){return this.validityObj.subs[1].toDate()}get issuer(){return this.issuerObj.value}get subject(){return this.subjectObj.value}get publicKey(){return this.subjectPublicKeyInfoObj.toDER()}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return t2l.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value.subarray(1)}get subjectAltName(){let t=this.extSubjectAltName;return t?.uri||t?.rfc822Name}get extensions(){return this.extensionsObj?.subs[0]?.subs||[]}get extKeyUsage(){let t=this.findExtension(i2l);return t?new m0e.X509KeyUsageExtension(t):void 0}get extBasicConstraints(){let t=this.findExtension(o2l);return t?new m0e.X509BasicConstraintsExtension(t):void 0}get extSubjectAltName(){let t=this.findExtension(s2l);return t?new m0e.X509SubjectAlternativeNameExtension(t):void 0}get extAuthorityKeyID(){let t=this.findExtension(a2l);return t?new m0e.X509AuthorityKeyIDExtension(t):void 0}get extSubjectKeyID(){let t=this.findExtension(n2l);return t?new m0e.X509SubjectKeyIDExtension(t):void 0}get extSCT(){let t=this.findExtension(QO.EXTENSION_OID_SCT);return t?new m0e.X509SCTExtension(t):void 0}get isCA(){let t=this.extBasicConstraints?.isCA||!1;return this.extKeyUsage?t&&this.extKeyUsage.keyCertSign:t}extension(t){let r=this.findExtension(t);return r?new m0e.X509Extension(r):void 0}verify(t){let r=t?.publicKey||this.publicKey,n=ffs.createPublicKey(r);return ffs.verify(this.tbsCertificate.toDER(),n,this.signatureValue,this.signatureAlgorithm)}validForDate(t){return this.notBefore<=t&&t<=this.notAfter}equals(t){return this.root.toDER().equals(t.root.toDER())}clone(){let t=this.root.toDER(),r=Buffer.alloc(t.length);return t.copy(r),e.parse(r)}findExtension(t){return this.extensions.find(r=>r.subs[0].toOID()===t)}get tbsCertificateObj(){return this.root.subs[0]}get signatureAlgorithmObj(){return this.root.subs[1]}get signatureValueObj(){return this.root.subs[2]}get versionObj(){return this.tbsCertificateObj.subs[0]}get serialNumberObj(){return this.tbsCertificateObj.subs[1]}get issuerObj(){return this.tbsCertificateObj.subs[3]}get validityObj(){return this.tbsCertificateObj.subs[4]}get subjectObj(){return this.tbsCertificateObj.subs[5]}get subjectPublicKeyInfoObj(){return this.tbsCertificateObj.subs[6]}get extensionsObj(){return this.tbsCertificateObj.subs.find(t=>t.tag.isContextSpecific(3))}};QO.X509Certificate=gKr});var Cfs=H(Fue=>{"use strict";Object.defineProperty(Fue,"__esModule",{value:!0});Fue.X509SCTExtension=Fue.X509Certificate=Fue.EXTENSION_OID_SCT=void 0;var mfs=hfs();Object.defineProperty(Fue,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return mfs.EXTENSION_OID_SCT}});Object.defineProperty(Fue,"X509Certificate",{enumerable:!0,get:function(){return mfs.X509Certificate}});var c2l=uKr();Object.defineProperty(Fue,"X509SCTExtension",{enumerable:!0,get:function(){return c2l.X509SCTExtension}})});var jV=H(j0=>{"use strict";var l2l=j0&&j0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),u2l=j0&&j0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),w7e=j0&&j0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&l2l(t,e,r);return u2l(t,e),t};Object.defineProperty(j0,"__esModule",{value:!0});j0.X509SCTExtension=j0.X509Certificate=j0.EXTENSION_OID_SCT=j0.ByteStream=j0.RFC3161Timestamp=j0.pem=j0.json=j0.encoding=j0.dsse=j0.crypto=j0.ASN1Obj=void 0;var g2l=IFt();Object.defineProperty(j0,"ASN1Obj",{enumerable:!0,get:function(){return g2l.ASN1Obj}});j0.crypto=w7e(GGe());j0.dsse=w7e(nfs());j0.encoding=w7e(ofs());j0.json=w7e(afs());j0.pem=w7e(zUr());var A2l=Afs();Object.defineProperty(j0,"RFC3161Timestamp",{enumerable:!0,get:function(){return A2l.RFC3161Timestamp}});var d2l=S7e();Object.defineProperty(j0,"ByteStream",{enumerable:!0,get:function(){return d2l.ByteStream}});var AKr=Cfs();Object.defineProperty(j0,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return AKr.EXTENSION_OID_SCT}});Object.defineProperty(j0,"X509Certificate",{enumerable:!0,get:function(){return AKr.X509Certificate}});Object.defineProperty(j0,"X509SCTExtension",{enumerable:!0,get:function(){return AKr.X509SCTExtension}})});var _fs=H(dKr=>{"use strict";Object.defineProperty(dKr,"__esModule",{value:!0});dKr.extractJWTSubject=f2l;var p2l=jV();function f2l(e){let t=e.split(".",3),r=JSON.parse(p2l.encoding.base64Decode(t[1]));switch(r.iss){case"https://accounts.google.com":case"https://oauth2.sigstore.dev/auth":return r.email;default:return r.sub}}});var yfs=H((Vng,I2l)=>{I2l.exports={name:"@sigstore/sign",version:"3.1.0",description:"Sigstore signing library",main:"dist/index.js",types:"dist/index.d.ts",scripts:{clean:"shx rm -rf dist *.tsbuildinfo",build:"tsc --build",test:"jest"},files:["dist"],author:"bdehamer@github.com",license:"Apache-2.0",repository:{type:"git",url:"git+https://github.com/sigstore/sigstore-js.git"},bugs:{url:"https://github.com/sigstore/sigstore-js/issues"},homepage:"https://github.com/sigstore/sigstore-js/tree/main/packages/sign#readme",publishConfig:{provenance:!0},devDependencies:{"@sigstore/jest":"^0.0.0","@sigstore/mock":"^0.10.0","@sigstore/rekor-types":"^3.0.0","@types/make-fetch-happen":"^10.0.4","@types/promise-retry":"^1.1.6"},dependencies:{"@sigstore/bundle":"^3.1.0","@sigstore/core":"^2.0.0","@sigstore/protobuf-specs":"^0.4.0","make-fetch-happen":"^14.0.2","proc-log":"^5.0.0","promise-retry":"^2.0.1"},engines:{node:"^18.17.0 || >=20.5.0"}}});var Efs=H(ZGe=>{"use strict";var h2l=ZGe&&ZGe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZGe,"__esModule",{value:!0});ZGe.getUserAgent=void 0;var bfs=h2l(wt("os")),m2l=()=>{let e=yfs().version,t=process.version,r=bfs.default.platform(),n=bfs.default.arch();return`sigstore-js/${e} (Node ${t}) (${r}/${n})`};ZGe.getUserAgent=m2l});var Zue=H(tB=>{"use strict";var C2l=tB&&tB.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_2l=tB&&tB.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Sfs=tB&&tB.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(bFt,"__esModule",{value:!0});bFt.BaseBundleBuilder=void 0;var pKr=class{constructor(t){this.signer=t.signer,this.witnesses=t.witnesses}async create(t){let r=await this.prepare(t).then(A=>this.signer.sign(A)),n=await this.package(t,r),a=await Promise.all(this.witnesses.map(A=>A.testify(n.content,y2l(r.key)))),o=[],l=[];return a.forEach(({tlogEntries:A,rfc3161Timestamps:f})=>{o.push(...A??[]),l.push(...f??[])}),n.verificationMaterial.tlogEntries=o,n.verificationMaterial.timestampVerificationData={rfc3161Timestamps:l},n}async prepare(t){return t.data}};bFt.BaseBundleBuilder=pKr;function y2l(e){switch(e.$case){case"publicKey":return e.publicKey;case"x509Certificate":return e.certificate}}});var hKr=H(B6=>{"use strict";var b2l=B6&&B6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),E2l=B6&&B6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S2l=B6&&B6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(EFt,"__esModule",{value:!0});EFt.DSSEBundleBuilder=void 0;var w2l=Zue(),T2l=fKr(),R2l=hKr(),mKr=class extends T2l.BaseBundleBuilder{constructor(t){super(t),this.certificateChain=t.certificateChain??!1}async prepare(t){let r=Bfs(t);return w2l.dsse.preAuthEncoding(r.type,r.data)}async package(t,r){return(0,R2l.toDSSEBundle)(Bfs(t),r,this.certificateChain)}};EFt.DSSEBundleBuilder=mKr;function Bfs(e){return{...e,type:e.type??""}}});var Tfs=H(SFt=>{"use strict";Object.defineProperty(SFt,"__esModule",{value:!0});SFt.MessageSignatureBundleBuilder=void 0;var N2l=fKr(),D2l=hKr(),CKr=class extends N2l.BaseBundleBuilder{constructor(t){super(t)}async package(t,r){return(0,D2l.toMessageSignatureBundle)(t,r)}};SFt.MessageSignatureBundleBuilder=CKr});var Rfs=H(LGe=>{"use strict";Object.defineProperty(LGe,"__esModule",{value:!0});LGe.MessageSignatureBundleBuilder=LGe.DSSEBundleBuilder=void 0;var k2l=wfs();Object.defineProperty(LGe,"DSSEBundleBuilder",{enumerable:!0,get:function(){return k2l.DSSEBundleBuilder}});var x2l=Tfs();Object.defineProperty(LGe,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return x2l.MessageSignatureBundleBuilder}})});var BFt=H(vFt=>{"use strict";Object.defineProperty(vFt,"__esModule",{value:!0});vFt.HTTPError=void 0;var _Kr=class extends Error{constructor({status:t,message:r,location:n}){super(`(${t}) ${r}`),this.statusCode=t,this.location=n}};vFt.HTTPError=_Kr});var VGe=H(R7e=>{"use strict";Object.defineProperty(R7e,"__esModule",{value:!0});R7e.InternalError=void 0;R7e.internalError=F2l;var G2l=BFt(),wFt=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.name=this.constructor.name,this.cause=n,this.code=t}};R7e.InternalError=wFt;function F2l(e,t,r){throw e instanceof G2l.HTTPError&&(r+=` - ${e.message}`),new wFt({code:t,message:r,cause:e})}});var yKr=H(PGe=>{"use strict";var Z2l=PGe&&PGe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PGe,"__esModule",{value:!0});PGe.constants=void 0;var L2l=Z2l(wt("zlib")),V2l=L2l.default.constants||{ZLIB_VERNUM:4736};PGe.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},V2l))});var kfs=H(Rm=>{"use strict";var P2l=Rm&&Rm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),W2l=Rm&&Rm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),O2l=Rm&&Rm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;ae,bKr=Dfs?.writable===!0||Dfs?.set!==void 0?e=>{C0e.Buffer.concat=e?X2l:Q2l}:e=>{},_0e=Symbol("_superWrite"),y0e=class extends Error{code;errno;constructor(t,r){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,r??this.constructor)}get name(){return"ZlibError"}};Rm.ZlibError=y0e;var EKr=Symbol("flushFlag"),N7e=class extends H2l.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#n=t.flush??0,this.#r=t.finishFlush??0,this.#i=t.fullFlushFlag??0,typeof Nfs[r]!="function")throw new TypeError("Compression method not supported: "+r);try{this.#s=new Nfs[r](t)}catch(n){throw new y0e(n,this.constructor)}this.#o=n=>{this.#e||(this.#e=!0,this.close(),this.emit("error",n))},this.#s?.on("error",n=>this.#o(new y0e(n))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,SKr.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#i),this.write(Object.assign(C0e.Buffer.alloc(0),{[EKr]:t})))}end(t,r,n){return typeof t=="function"&&(n=t,r=void 0,t=void 0),typeof r=="function"&&(n=r,r=void 0),t&&(r?this.write(t,r):this.write(t)),this.flush(this.#r),this.#t=!0,super.end(n)}get ended(){return this.#t}[_0e](t){return super.write(t)}write(t,r,n){if(typeof r=="function"&&(n=r,r="utf8"),typeof t=="string"&&(t=C0e.Buffer.from(t,r)),this.#e)return;(0,SKr.default)(this.#s,"zlib binding closed");let a=this.#s._handle,o=a.close;a.close=()=>{};let l=this.#s.close;this.#s.close=()=>{},bKr(!0);let A;try{let I=typeof t[EKr]=="number"?t[EKr]:this.#n;A=this.#s._processChunk(t,I),bKr(!1)}catch(I){bKr(!1),this.#o(new y0e(I,this.write))}finally{this.#s&&(this.#s._handle=a,a.close=o,this.#s.close=l,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",I=>this.#o(new y0e(I,this.write)));let f;if(A)if(Array.isArray(A)&&A.length>0){let I=A[0];f=this[_0e](C0e.Buffer.from(I));for(let C=1;C{typeof a=="function"&&(o=a,a=this.flushFlag),this.flush(a),o?.()};try{this.handle.params(t,r)}finally{this.handle.flush=n}this.handle&&(this.#e=t,this.#t=r)}}}};Rm.Zlib=T6;var vKr=class extends T6{constructor(t){super(t,"Deflate")}};Rm.Deflate=vKr;var BKr=class extends T6{constructor(t){super(t,"Inflate")}};Rm.Inflate=BKr;var wKr=class extends T6{#e;constructor(t){super(t,"Gzip"),this.#e=t&&!!t.portable}[_0e](t){return this.#e?(this.#e=!1,t[9]=255,super[_0e](t)):super[_0e](t)}};Rm.Gzip=wKr;var TKr=class extends T6{constructor(t){super(t,"Gunzip")}};Rm.Gunzip=TKr;var RKr=class extends T6{constructor(t){super(t,"DeflateRaw")}};Rm.DeflateRaw=RKr;var NKr=class extends T6{constructor(t){super(t,"InflateRaw")}};Rm.InflateRaw=NKr;var DKr=class extends T6{constructor(t){super(t,"Unzip")}};Rm.Unzip=DKr;var TFt=class extends N7e{constructor(t,r){t=t||{},t.flush=t.flush||w6.constants.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||w6.constants.BROTLI_OPERATION_FINISH,t.fullFlushFlag=w6.constants.BROTLI_OPERATION_FLUSH,super(t,r)}},kKr=class extends TFt{constructor(t){super(t,"BrotliCompress")}};Rm.BrotliCompress=kKr;var xKr=class extends TFt{constructor(t){super(t,"BrotliDecompress")}};Rm.BrotliDecompress=xKr;var RFt=class extends N7e{constructor(t,r){t=t||{},t.flush=t.flush||w6.constants.ZSTD_e_continue,t.finishFlush=t.finishFlush||w6.constants.ZSTD_e_end,t.fullFlushFlag=w6.constants.ZSTD_e_flush,super(t,r)}},GKr=class extends RFt{constructor(t){super(t,"ZstdCompress")}};Rm.ZstdCompress=GKr;var FKr=class extends RFt{constructor(t){super(t,"ZstdDecompress")}};Rm.ZstdDecompress=FKr});var FFt=H((jng,Ofs)=>{"use strict";var xfs=typeof process=="object"&&process?process:{stdout:null,stderr:null},J2l=wt("events"),Gfs=wt("stream"),Ffs=wt("string_decoder").StringDecoder,Kte=Symbol("EOF"),jte=Symbol("maybeEmitEnd"),Lue=Symbol("emittedEnd"),NFt=Symbol("emittingEnd"),D7e=Symbol("emittedError"),DFt=Symbol("closed"),Zfs=Symbol("read"),kFt=Symbol("flush"),Lfs=Symbol("flushChunk"),zV=Symbol("encoding"),zte=Symbol("decoder"),xFt=Symbol("flowing"),k7e=Symbol("paused"),WGe=Symbol("resume"),SD=Symbol("bufferLength"),ZKr=Symbol("bufferPush"),LKr=Symbol("bufferShift"),sF=Symbol("objectMode"),oF=Symbol("destroyed"),VKr=Symbol("emitData"),Vfs=Symbol("emitEnd"),PKr=Symbol("emitEnd2"),qte=Symbol("async"),x7e=e=>Promise.resolve().then(e),Pfs=global._MP_NO_ITERATOR_SYMBOLS_!=="1",U2l=Pfs&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),K2l=Pfs&&Symbol.iterator||Symbol("iterator not implemented"),j2l=e=>e==="end"||e==="finish"||e==="prefinish",z2l=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,q2l=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),GFt=class{constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[WGe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},WKr=class extends GFt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};Ofs.exports=class Wfs extends Gfs{constructor(t){super(),this[xFt]=!1,this[k7e]=!1,this.pipes=[],this.buffer=[],this[sF]=t&&t.objectMode||!1,this[sF]?this[zV]=null:this[zV]=t&&t.encoding||null,this[zV]==="buffer"&&(this[zV]=null),this[qte]=t&&!!t.async||!1,this[zte]=this[zV]?new Ffs(this[zV]):null,this[Kte]=!1,this[Lue]=!1,this[NFt]=!1,this[DFt]=!1,this[D7e]=null,this.writable=!0,this.readable=!0,this[SD]=0,this[oF]=!1}get bufferLength(){return this[SD]}get encoding(){return this[zV]}set encoding(t){if(this[sF])throw new Error("cannot set encoding in objectMode");if(this[zV]&&t!==this[zV]&&(this[zte]&&this[zte].lastNeed||this[SD]))throw new Error("cannot change encoding");this[zV]!==t&&(this[zte]=t?new Ffs(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[zte].write(r)))),this[zV]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[sF]}set objectMode(t){this[sF]=this[sF]||!!t}get async(){return this[qte]}set async(t){this[qte]=this[qte]||!!t}write(t,r,n){if(this[Kte])throw new Error("write after end");if(this[oF])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[qte]?x7e:o=>o();return!this[sF]&&!Buffer.isBuffer(t)&&(q2l(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):z2l(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[sF]?(this.flowing&&this[SD]!==0&&this[kFt](!0),this.flowing?this.emit("data",t):this[ZKr](t),this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing):t.length?(typeof t=="string"&&!(r===this[zV]&&!this[zte].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[zV]&&(t=this[zte].write(t)),this.flowing&&this[SD]!==0&&this[kFt](!0),this.flowing?this.emit("data",t):this[ZKr](t),this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing):(this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing)}read(t){if(this[oF])return null;if(this[SD]===0||t===0||t>this[SD])return this[jte](),null;this[sF]&&(t=null),this.buffer.length>1&&!this[sF]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[SD])]);let r=this[Zfs](t||null,this.buffer[0]);return this[jte](),r}[Zfs](t,r){return t===r.length||t===null?this[LKr]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[SD]-=t),this.emit("data",r),!this.buffer.length&&!this[Kte]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r),n&&this.once("end",n),this[Kte]=!0,this.writable=!1,(this.flowing||!this[k7e])&&this[jte](),this}[WGe](){this[oF]||(this[k7e]=!1,this[xFt]=!0,this.emit("resume"),this.buffer.length?this[kFt]():this[Kte]?this[jte]():this.emit("drain"))}resume(){return this[WGe]()}pause(){this[xFt]=!1,this[k7e]=!0}get destroyed(){return this[oF]}get flowing(){return this[xFt]}get paused(){return this[k7e]}[ZKr](t){this[sF]?this[SD]+=1:this[SD]+=t.length,this.buffer.push(t)}[LKr](){return this.buffer.length&&(this[sF]?this[SD]-=1:this[SD]-=this.buffer[0].length),this.buffer.shift()}[kFt](t){do;while(this[Lfs](this[LKr]()));!t&&!this.buffer.length&&!this[Kte]&&this.emit("drain")}[Lfs](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[oF])return;let n=this[Lue];return r=r||{},t===xfs.stdout||t===xfs.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this.pipes.push(r.proxyErrors?new WKr(this,t,r):new GFt(this,t,r)),this[qte]?x7e(()=>this[WGe]()):this[WGe]()),t}unpipe(t){let r=this.pipes.find(n=>n.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[WGe]():t==="readable"&&this[SD]!==0?super.emit("readable"):j2l(t)&&this[Lue]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[D7e]&&(this[qte]?x7e(()=>r.call(this,this[D7e])):r.call(this,this[D7e])),n}get emittedEnd(){return this[Lue]}[jte](){!this[NFt]&&!this[Lue]&&!this[oF]&&this.buffer.length===0&&this[Kte]&&(this[NFt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[DFt]&&this.emit("close"),this[NFt]=!1)}emit(t,r,...n){if(t!=="error"&&t!=="close"&&t!==oF&&this[oF])return;if(t==="data")return r?this[qte]?x7e(()=>this[VKr](r)):this[VKr](r):!1;if(t==="end")return this[Vfs]();if(t==="close"){if(this[DFt]=!0,!this[Lue]&&!this[oF])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[D7e]=r;let o=super.emit("error",r);return this[jte](),o}else if(t==="resume"){let o=super.emit("resume");return this[jte](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...n);return this[jte](),a}[VKr](t){for(let n of this.pipes)n.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[jte](),r}[Vfs](){this[Lue]||(this[Lue]=!0,this.readable=!1,this[qte]?x7e(()=>this[PKr]()):this[PKr]())}[PKr](){if(this[zte]){let r=this[zte].end();if(r){for(let n of this.pipes)n.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[sF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[sF]||(t.dataLength+=n.length)}),r.then(()=>t)}concat(){return this[sF]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[sF]?Promise.reject(new Error("cannot concat in objectMode")):this[zV]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(oF,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[U2l](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[Kte])return Promise.resolve({done:!0});let n=null,a=null,o=I=>{this.removeListener("data",l),this.removeListener("end",A),a(I)},l=I=>{this.removeListener("error",o),this.removeListener("end",A),this.pause(),n({value:I,done:!!this[Kte]})},A=()=>{this.removeListener("error",o),this.removeListener("data",l),n({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((I,C)=>{a=C,n=I,this.once(oF,f),this.once("error",o),this.once("end",A),this.once("data",l)})}}}[K2l](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[oF]?(t?this.emit("error",t):this.emit(oF),this):(this[oF]=!0,this.buffer.length=0,this[SD]=0,typeof this.close=="function"&&!this[DFt]&&this.close(),t?this.emit("error",t):this.emit(oF),this)}static isStream(t){return!!t&&(t instanceof Wfs||t instanceof Gfs||t instanceof J2l&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var Hfs=H((zng,Mfs)=>{var $2l=FFt(),G7e=class extends Error{constructor(t,r){super(`Bad data size: expected ${r} bytes, but got ${t}`),this.expect=r,this.found=t,this.code="EBADSIZE",Error.captureStackTrace(this,this.constructor)}get name(){return"SizeError"}},ZFt=class extends $2l{constructor(t={}){if(super(t),t.objectMode)throw new TypeError(`${this.constructor.name} streams only work with string and buffer data`);if(this.found=0,this.expect=t.size,typeof this.expect!="number"||this.expect>Number.MAX_SAFE_INTEGER||isNaN(this.expect)||this.expect<0||!isFinite(this.expect)||this.expect!==Math.floor(this.expect))throw new Error("invalid expected size: "+this.expect)}write(t,r,n){let a=Buffer.isBuffer(t)?t:typeof t=="string"?Buffer.from(t,typeof r=="string"?r:"utf8"):t;return Buffer.isBuffer(a)?(this.found+=a.length,this.found>this.expect&&this.emit("error",new G7e(this.found,this.expect)),super.write(t,r,n)):(this.emit("error",new TypeError(`${this.constructor.name} streams only work with string and buffer data`)),!1)}emit(t,...r){return t==="end"&&this.found!==this.expect&&this.emit("error",new G7e(this.found,this.expect)),super.emit(t,...r)}};ZFt.SizeError=G7e;Mfs.exports=ZFt});var Qfs=H((qng,Yfs)=>{"use strict";var{Minipass:eSl}=rF(),OKr=Symbol("type"),$te=Symbol("buffer"),LFt=class e{constructor(t,r){this[OKr]="";let n=[],a=0;if(t){let l=t,A=Number(l.length);for(let f=0;f{"use strict";var MKr=class extends Error{constructor(t,r,n){super(t),this.code="FETCH_ERROR",n&&Object.assign(this,n),this.errno=this.code,this.type=this.code==="EBADSIZE"&&this.found>this.expect?"max-size":r,this.message=t,Error.captureStackTrace(this,this.constructor)}get name(){return"FetchError"}set name(t){}get[Symbol.toStringTag](){return"FetchError"}};Xfs.exports=MKr});var ere=H((eig,Jfs)=>{"use strict";var VFt=wt("buffer"),OGe=VFt.Buffer,VH={},PH;for(PH in VFt)VFt.hasOwnProperty(PH)&&(PH==="SlowBuffer"||PH==="Buffer"||(VH[PH]=VFt[PH]));var MGe=VH.Buffer={};for(PH in OGe)OGe.hasOwnProperty(PH)&&(PH==="allocUnsafe"||PH==="allocUnsafeSlow"||(MGe[PH]=OGe[PH]));VH.Buffer.prototype=OGe.prototype;(!MGe.from||MGe.from===Uint8Array.from)&&(MGe.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return OGe(e,t,r)});MGe.alloc||(MGe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=OGe(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!VH.kStringMaxLength)try{VH.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}VH.constants||(VH.constants={MAX_LENGTH:VH.kMaxLength},VH.kStringMaxLength&&(VH.constants.MAX_STRING_LENGTH=VH.kStringMaxLength));Jfs.exports=VH});var Kfs=H(XKr=>{"use strict";var Ufs="\uFEFF";XKr.PrependBOM=YKr;function YKr(e,t){this.encoder=e,this.addBOM=!0}YKr.prototype.write=function(e){return this.addBOM&&(e=Ufs+e,this.addBOM=!1),this.encoder.write(e)};YKr.prototype.end=function(){return this.encoder.end()};XKr.StripBOM=QKr;function QKr(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}QKr.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===Ufs&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};QKr.prototype.end=function(){return this.decoder.end()}});var zfs=H((rig,jfs)=>{"use strict";var b0e=ere().Buffer;jfs.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:UKr};function UKr(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=zKr:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=qKr,b0e.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=$Kr,this.defaultCharUnicode=t.defaultCharUnicode))}UKr.prototype.encoder=jKr;UKr.prototype.decoder=KKr;var JKr=wt("string_decoder").StringDecoder;JKr.prototype.end||(JKr.prototype.end=function(){});function KKr(e,t){this.decoder=new JKr(t.enc)}KKr.prototype.write=function(e){return b0e.isBuffer(e)||(e=b0e.from(e)),this.decoder.write(e)};KKr.prototype.end=function(){return this.decoder.end()};function jKr(e,t){this.enc=t.enc}jKr.prototype.write=function(e){return b0e.from(e,this.enc)};jKr.prototype.end=function(){};function zKr(e,t){this.prevStr=""}zKr.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),b0e.from(e,"base64")};zKr.prototype.end=function(){return b0e.from(this.prevStr,"base64")};function qKr(e,t){}qKr.prototype.write=function(e){for(var t=b0e.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(a&63)):(t[r++]=224+(a>>>12),t[r++]=128+(a>>>6&63),t[r++]=128+(a&63))}return t.slice(0,r)};qKr.prototype.end=function(){};function $Kr(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}$Kr.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,a="",o=0;o0&&(a+=this.defaultCharUnicode,r=0),l<128?a+=String.fromCharCode(l):l<224?(t=l&31,r=1,n=1):l<240?(t=l&15,r=2,n=1):a+=this.defaultCharUnicode):r>0?(t=t<<6|l&63,r--,n++,r===0&&(n===2&&t<128&&t>0?a+=this.defaultCharUnicode:n===3&&t<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(t))):a+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,a};$Kr.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var eIs=H(Vue=>{"use strict";var PFt=ere().Buffer;Vue._utf32=e8r;function e8r(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}Vue.utf32le={type:"_utf32",isLE:!0};Vue.utf32be={type:"_utf32",isLE:!1};Vue.ucs4le="utf32le";Vue.ucs4be="utf32be";e8r.prototype.encoder=t8r;e8r.prototype.decoder=r8r;function t8r(e,t){this.isLE=t.isLE,this.highSurrogate=0}t8r.prototype.write=function(e){for(var t=PFt.from(e,"ucs2"),r=PFt.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,o=0;o0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var a=55296|r>>10;e[t++]=a&255,e[t++]=a>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}r8r.prototype.end=function(){this.overflow.length=0};Vue.utf32=n8r;Vue.ucs4="utf32";function n8r(e,t){this.iconv=t}n8r.prototype.encoder=i8r;n8r.prototype.decoder=s8r;function i8r(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}i8r.prototype.write=function(e){return this.encoder.write(e)};i8r.prototype.end=function(){return this.encoder.end()};function s8r(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}s8r.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=$fs(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&o++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&A++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&l++,r.length=0,n++,n>=100)break e}return A-o>l-a?"utf-32be":A-o{"use strict";var tIs=ere().Buffer;g8r.utf16be=WFt;function WFt(){}WFt.prototype.encoder=o8r;WFt.prototype.decoder=a8r;WFt.prototype.bomAware=!0;function o8r(){}o8r.prototype.write=function(e){for(var t=tIs.from(e,"ucs2"),r=0;r=100)break e}return o>a?"utf-16be":o{"use strict";var R6=ere().Buffer;HFt.utf7=OFt;HFt.unicode11utf7="utf7";function OFt(e,t){this.iconv=t}OFt.prototype.encoder=d8r;OFt.prototype.decoder=p8r;OFt.prototype.bomAware=!0;var tSl=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function d8r(e,t){this.iconv=t.iconv}d8r.prototype.write=function(e){return R6.from(e.replace(tSl,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};d8r.prototype.end=function(){};function p8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var rSl=/[A-Za-z0-9\/+]/,f8r=[];for(F7e=0;F7e<256;F7e++)f8r[F7e]=rSl.test(String.fromCharCode(F7e));var F7e,nSl=43,E0e=45,A8r=38;p8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(R6.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};HFt.utf7imap=MFt;function MFt(e,t){this.iconv=t}MFt.prototype.encoder=I8r;MFt.prototype.decoder=h8r;MFt.prototype.bomAware=!0;function I8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=R6.alloc(6),this.base64AccumIdx=0}I8r.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,a=R6.alloc(e.length*5+10),o=0,l=0;l0&&(o+=a.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),o),n=0),a[o++]=E0e,t=!1),t||(a[o++]=A,A===A8r&&(a[o++]=E0e))):(t||(a[o++]=A8r,t=!0),t&&(r[n++]=A>>8,r[n++]=A&255,n==r.length&&(o+=a.write(r.toString("base64").replace(/\//g,","),o),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,a.slice(0,o)};I8r.prototype.end=function(){var e=R6.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=E0e,this.inBase64=!1),e.slice(0,t)};function h8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var iIs=f8r.slice();iIs[44]=!0;h8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(R6.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var aIs=H(oIs=>{"use strict";var YFt=ere().Buffer;oIs._sbcs=m8r;function m8r(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=YFt.from(e.chars,"ucs2");for(var a=YFt.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";cIs.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var gIs=H((cig,uIs)=>{"use strict";uIs.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b +`)}});var EFt=H(LGe=>{"use strict";Object.defineProperty(LGe,"__esModule",{value:!0});LGe.SHA2_HASH_ALGOS=LGe.ECDSA_SIGNATURE_ALGOS=void 0;LGe.ECDSA_SIGNATURE_ALGOS={"1.2.840.10045.4.3.1":"sha224","1.2.840.10045.4.3.2":"sha256","1.2.840.10045.4.3.3":"sha384","1.2.840.10045.4.3.4":"sha512"};LGe.SHA2_HASH_ALGOS={"2.16.840.1.101.3.4.2.1":"sha256","2.16.840.1.101.3.4.2.2":"sha384","2.16.840.1.101.3.4.2.3":"sha512"}});var oKr=H(SFt=>{"use strict";Object.defineProperty(SFt,"__esModule",{value:!0});SFt.RFC3161TimestampVerificationError=void 0;var sKr=class extends Error{};SFt.RFC3161TimestampVerificationError=sKr});var vfs=H(E6=>{"use strict";var S2l=E6&&E6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),v2l=E6&&E6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),B2l=E6&&E6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&S2l(t,e,r);return v2l(t,e),t};Object.defineProperty(E6,"__esModule",{value:!0});E6.TSTInfo=void 0;var Sfs=B2l(ZGe()),w2l=EFt(),T2l=oKr(),aKr=class{constructor(t){this.root=t}get version(){return this.root.subs[0].toInteger()}get genTime(){return this.root.subs[4].toDate()}get messageImprintHashAlgorithm(){let t=this.messageImprintObj.subs[0].subs[0].toOID();return w2l.SHA2_HASH_ALGOS[t]}get messageImprintHashedMessage(){return this.messageImprintObj.subs[1].value}get raw(){return this.root.toDER()}verify(t){let r=Sfs.digest(this.messageImprintHashAlgorithm,t);if(!Sfs.bufferEqual(r,this.messageImprintHashedMessage))throw new T2l.RFC3161TimestampVerificationError("message imprint does not match artifact")}get messageImprintObj(){return this.root.subs[2]}};E6.TSTInfo=aKr});var wfs=H(S6=>{"use strict";var R2l=S6&&S6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),N2l=S6&&S6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),D2l=S6&&S6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&R2l(t,e,r);return N2l(t,e),t};Object.defineProperty(S6,"__esModule",{value:!0});S6.RFC3161Timestamp=void 0;var k2l=_Ft(),cKr=D2l(ZGe()),Bfs=EFt(),T7e=oKr(),x2l=vfs(),G2l="1.2.840.113549.1.7.2",F2l="1.2.840.113549.1.9.16.1.4",Z2l="1.2.840.113549.1.9.4",lKr=class e{constructor(t){this.root=t}static parse(t){let r=k2l.ASN1Obj.parseBuffer(t);return new e(r)}get status(){return this.pkiStatusInfoObj.subs[0].toInteger()}get contentType(){return this.contentTypeObj.toOID()}get eContentType(){return this.eContentTypeObj.toOID()}get signingTime(){return this.tstInfo.genTime}get signerIssuer(){return this.signerSidObj.subs[0].value}get signerSerialNumber(){return this.signerSidObj.subs[1].value}get signerDigestAlgorithm(){let t=this.signerDigestAlgorithmObj.subs[0].toOID();return Bfs.SHA2_HASH_ALGOS[t]}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return Bfs.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value}get tstInfo(){return new x2l.TSTInfo(this.eContentObj.subs[0].subs[0])}verify(t,r){if(!this.timeStampTokenObj)throw new T7e.RFC3161TimestampVerificationError("timeStampToken is missing");if(this.contentType!==G2l)throw new T7e.RFC3161TimestampVerificationError(`incorrect content type: ${this.contentType}`);if(this.eContentType!==F2l)throw new T7e.RFC3161TimestampVerificationError(`incorrect encapsulated content type: ${this.eContentType}`);this.tstInfo.verify(t),this.verifyMessageDigest(),this.verifySignature(r)}verifyMessageDigest(){let t=cKr.digest(this.signerDigestAlgorithm,this.tstInfo.raw),r=this.messageDigestAttributeObj.subs[1].subs[0].value;if(!cKr.bufferEqual(t,r))throw new T7e.RFC3161TimestampVerificationError("signed data does not match tstInfo")}verifySignature(t){let r=this.signedAttrsObj.toDER();if(r[0]=49,!cKr.verify(r,t,this.signatureValue,this.signatureAlgorithm))throw new T7e.RFC3161TimestampVerificationError("signature verification failed")}get pkiStatusInfoObj(){return this.root.subs[0]}get timeStampTokenObj(){return this.root.subs[1]}get contentTypeObj(){return this.timeStampTokenObj.subs[0]}get signedDataObj(){return this.timeStampTokenObj.subs.find(r=>r.tag.isContextSpecific(0)).subs[0]}get encapContentInfoObj(){return this.signedDataObj.subs[2]}get signerInfosObj(){let t=this.signedDataObj;return t.subs[t.subs.length-1]}get signerInfoObj(){return this.signerInfosObj.subs[0]}get eContentTypeObj(){return this.encapContentInfoObj.subs[0]}get eContentObj(){return this.encapContentInfoObj.subs[1]}get signedAttrsObj(){return this.signerInfoObj.subs.find(r=>r.tag.isContextSpecific(0))}get messageDigestAttributeObj(){return this.signedAttrsObj.subs.find(r=>r.subs[0].tag.isOID()&&r.subs[0].toOID()===Z2l)}get signerSidObj(){return this.signerInfoObj.subs[1]}get signerDigestAlgorithmObj(){return this.signerInfoObj.subs[2]}get signatureAlgorithmObj(){return this.signerInfoObj.subs[4]}get signatureValueObj(){return this.signerInfoObj.subs[5]}};S6.RFC3161Timestamp=lKr});var Tfs=H(vFt=>{"use strict";Object.defineProperty(vFt,"__esModule",{value:!0});vFt.RFC3161Timestamp=void 0;var L2l=wfs();Object.defineProperty(vFt,"RFC3161Timestamp",{enumerable:!0,get:function(){return L2l.RFC3161Timestamp}})});var Nfs=H(v6=>{"use strict";var V2l=v6&&v6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),P2l=v6&&v6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),W2l=v6&&v6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&V2l(t,e,r);return P2l(t,e),t};Object.defineProperty(v6,"__esModule",{value:!0});v6.SignedCertificateTimestamp=void 0;var O2l=W2l(ZGe()),Rfs=B7e(),uKr=class e{constructor(t){this.version=t.version,this.logID=t.logID,this.timestamp=t.timestamp,this.extensions=t.extensions,this.hashAlgorithm=t.hashAlgorithm,this.signatureAlgorithm=t.signatureAlgorithm,this.signature=t.signature}get datetime(){return new Date(Number(this.timestamp.readBigInt64BE()))}get algorithm(){switch(this.hashAlgorithm){case 0:return"none";case 1:return"md5";case 2:return"sha1";case 3:return"sha224";case 4:return"sha256";case 5:return"sha384";case 6:return"sha512";default:return"unknown"}}verify(t,r){let n=new Rfs.ByteStream;return n.appendChar(this.version),n.appendChar(0),n.appendView(this.timestamp),n.appendUint16(1),n.appendView(t),n.appendUint16(this.extensions.byteLength),this.extensions.byteLength>0&&n.appendView(this.extensions),O2l.verify(n.buffer,r,this.signature,this.algorithm)}static parse(t){let r=new Rfs.ByteStream(t),n=r.getUint8(),a=r.getBlock(32),o=r.getBlock(8),l=r.getUint16(),A=r.getBlock(l),f=r.getUint8(),I=r.getUint8(),C=r.getUint16(),b=r.getBlock(C);if(r.position!==t.length)throw new Error("SCT buffer length mismatch");return new e({version:n,logID:a,timestamp:o,extensions:A,hashAlgorithm:f,signatureAlgorithm:I,signature:b})}};v6.SignedCertificateTimestamp=uKr});var hKr=H(iF=>{"use strict";Object.defineProperty(iF,"__esModule",{value:!0});iF.X509SCTExtension=iF.X509SubjectKeyIDExtension=iF.X509AuthorityKeyIDExtension=iF.X509SubjectAlternativeNameExtension=iF.X509KeyUsageExtension=iF.X509BasicConstraintsExtension=iF.X509Extension=void 0;var M2l=B7e(),H2l=Nfs(),Kte=class{constructor(t){this.root=t}get oid(){return this.root.subs[0].toOID()}get critical(){return this.root.subs.length===3?this.root.subs[1].toBoolean():!1}get value(){return this.extnValueObj.value}get valueObj(){return this.extnValueObj}get extnValueObj(){return this.root.subs[this.root.subs.length-1]}};iF.X509Extension=Kte;var gKr=class extends Kte{get isCA(){return this.sequence.subs[0]?.toBoolean()??!1}get pathLenConstraint(){return this.sequence.subs.length>1?this.sequence.subs[1].toInteger():void 0}get sequence(){return this.extnValueObj.subs[0]}};iF.X509BasicConstraintsExtension=gKr;var AKr=class extends Kte{get digitalSignature(){return this.bitString[0]===1}get keyCertSign(){return this.bitString[5]===1}get crlSign(){return this.bitString[6]===1}get bitString(){return this.extnValueObj.subs[0].toBitString()}};iF.X509KeyUsageExtension=AKr;var dKr=class extends Kte{get rfc822Name(){return this.findGeneralName(1)?.value.toString("ascii")}get uri(){return this.findGeneralName(6)?.value.toString("ascii")}otherName(t){let r=this.findGeneralName(0);return r===void 0||r.subs[0].toOID()!==t?void 0:r.subs[1].subs[0].value.toString("ascii")}findGeneralName(t){return this.generalNames.find(r=>r.tag.isContextSpecific(t))}get generalNames(){return this.extnValueObj.subs[0].subs}};iF.X509SubjectAlternativeNameExtension=dKr;var pKr=class extends Kte{get keyIdentifier(){return this.findSequenceMember(0)?.value}findSequenceMember(t){return this.sequence.subs.find(r=>r.tag.isContextSpecific(t))}get sequence(){return this.extnValueObj.subs[0]}};iF.X509AuthorityKeyIDExtension=pKr;var fKr=class extends Kte{get keyIdentifier(){return this.extnValueObj.subs[0].value}};iF.X509SubjectKeyIDExtension=fKr;var IKr=class extends Kte{constructor(t){super(t)}get signedCertificateTimestamps(){let t=this.extnValueObj.subs[0].value,r=new M2l.ByteStream(t),n=r.getUint16()+2,a=[];for(;r.position{"use strict";var Y2l=QO&&QO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Q2l=QO&&QO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),kfs=QO&&QO.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Y2l(t,e,r);return Q2l(t,e),t};Object.defineProperty(QO,"__esModule",{value:!0});QO.X509Certificate=QO.EXTENSION_OID_SCT=void 0;var X2l=_Ft(),Dfs=kfs(ZGe()),J2l=EFt(),U2l=kfs(iKr()),C0e=hKr(),K2l="2.5.29.14",j2l="2.5.29.15",z2l="2.5.29.17",q2l="2.5.29.19",$2l="2.5.29.35";QO.EXTENSION_OID_SCT="1.3.6.1.4.1.11129.2.4.2";var mKr=class e{constructor(t){this.root=t}static parse(t){let r=typeof t=="string"?U2l.toDER(t):t,n=X2l.ASN1Obj.parseBuffer(r);return new e(n)}get tbsCertificate(){return this.tbsCertificateObj}get version(){return`v${(this.versionObj.subs[0].toInteger()+BigInt(1)).toString()}`}get serialNumber(){return this.serialNumberObj.value}get notBefore(){return this.validityObj.subs[0].toDate()}get notAfter(){return this.validityObj.subs[1].toDate()}get issuer(){return this.issuerObj.value}get subject(){return this.subjectObj.value}get publicKey(){return this.subjectPublicKeyInfoObj.toDER()}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return J2l.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value.subarray(1)}get subjectAltName(){let t=this.extSubjectAltName;return t?.uri||t?.rfc822Name}get extensions(){return this.extensionsObj?.subs[0]?.subs||[]}get extKeyUsage(){let t=this.findExtension(j2l);return t?new C0e.X509KeyUsageExtension(t):void 0}get extBasicConstraints(){let t=this.findExtension(q2l);return t?new C0e.X509BasicConstraintsExtension(t):void 0}get extSubjectAltName(){let t=this.findExtension(z2l);return t?new C0e.X509SubjectAlternativeNameExtension(t):void 0}get extAuthorityKeyID(){let t=this.findExtension($2l);return t?new C0e.X509AuthorityKeyIDExtension(t):void 0}get extSubjectKeyID(){let t=this.findExtension(K2l);return t?new C0e.X509SubjectKeyIDExtension(t):void 0}get extSCT(){let t=this.findExtension(QO.EXTENSION_OID_SCT);return t?new C0e.X509SCTExtension(t):void 0}get isCA(){let t=this.extBasicConstraints?.isCA||!1;return this.extKeyUsage?t&&this.extKeyUsage.keyCertSign:t}extension(t){let r=this.findExtension(t);return r?new C0e.X509Extension(r):void 0}verify(t){let r=t?.publicKey||this.publicKey,n=Dfs.createPublicKey(r);return Dfs.verify(this.tbsCertificate.toDER(),n,this.signatureValue,this.signatureAlgorithm)}validForDate(t){return this.notBefore<=t&&t<=this.notAfter}equals(t){return this.root.toDER().equals(t.root.toDER())}clone(){let t=this.root.toDER(),r=Buffer.alloc(t.length);return t.copy(r),e.parse(r)}findExtension(t){return this.extensions.find(r=>r.subs[0].toOID()===t)}get tbsCertificateObj(){return this.root.subs[0]}get signatureAlgorithmObj(){return this.root.subs[1]}get signatureValueObj(){return this.root.subs[2]}get versionObj(){return this.tbsCertificateObj.subs[0]}get serialNumberObj(){return this.tbsCertificateObj.subs[1]}get issuerObj(){return this.tbsCertificateObj.subs[3]}get validityObj(){return this.tbsCertificateObj.subs[4]}get subjectObj(){return this.tbsCertificateObj.subs[5]}get subjectPublicKeyInfoObj(){return this.tbsCertificateObj.subs[6]}get extensionsObj(){return this.tbsCertificateObj.subs.find(t=>t.tag.isContextSpecific(3))}};QO.X509Certificate=mKr});var Ffs=H(Zue=>{"use strict";Object.defineProperty(Zue,"__esModule",{value:!0});Zue.X509SCTExtension=Zue.X509Certificate=Zue.EXTENSION_OID_SCT=void 0;var Gfs=xfs();Object.defineProperty(Zue,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return Gfs.EXTENSION_OID_SCT}});Object.defineProperty(Zue,"X509Certificate",{enumerable:!0,get:function(){return Gfs.X509Certificate}});var eSl=hKr();Object.defineProperty(Zue,"X509SCTExtension",{enumerable:!0,get:function(){return eSl.X509SCTExtension}})});var jV=H(j0=>{"use strict";var tSl=j0&&j0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rSl=j0&&j0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),R7e=j0&&j0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tSl(t,e,r);return rSl(t,e),t};Object.defineProperty(j0,"__esModule",{value:!0});j0.X509SCTExtension=j0.X509Certificate=j0.EXTENSION_OID_SCT=j0.ByteStream=j0.RFC3161Timestamp=j0.pem=j0.json=j0.encoding=j0.dsse=j0.crypto=j0.ASN1Obj=void 0;var nSl=_Ft();Object.defineProperty(j0,"ASN1Obj",{enumerable:!0,get:function(){return nSl.ASN1Obj}});j0.crypto=R7e(ZGe());j0.dsse=R7e(Cfs());j0.encoding=R7e(bfs());j0.json=R7e(Efs());j0.pem=R7e(iKr());var iSl=Tfs();Object.defineProperty(j0,"RFC3161Timestamp",{enumerable:!0,get:function(){return iSl.RFC3161Timestamp}});var sSl=B7e();Object.defineProperty(j0,"ByteStream",{enumerable:!0,get:function(){return sSl.ByteStream}});var CKr=Ffs();Object.defineProperty(j0,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return CKr.EXTENSION_OID_SCT}});Object.defineProperty(j0,"X509Certificate",{enumerable:!0,get:function(){return CKr.X509Certificate}});Object.defineProperty(j0,"X509SCTExtension",{enumerable:!0,get:function(){return CKr.X509SCTExtension}})});var Zfs=H(_Kr=>{"use strict";Object.defineProperty(_Kr,"__esModule",{value:!0});_Kr.extractJWTSubject=aSl;var oSl=jV();function aSl(e){let t=e.split(".",3),r=JSON.parse(oSl.encoding.base64Decode(t[1]));switch(r.iss){case"https://accounts.google.com":case"https://oauth2.sigstore.dev/auth":return r.email;default:return r.sub}}});var Lfs=H((Uig,cSl)=>{cSl.exports={name:"@sigstore/sign",version:"3.1.0",description:"Sigstore signing library",main:"dist/index.js",types:"dist/index.d.ts",scripts:{clean:"shx rm -rf dist *.tsbuildinfo",build:"tsc --build",test:"jest"},files:["dist"],author:"bdehamer@github.com",license:"Apache-2.0",repository:{type:"git",url:"git+https://github.com/sigstore/sigstore-js.git"},bugs:{url:"https://github.com/sigstore/sigstore-js/issues"},homepage:"https://github.com/sigstore/sigstore-js/tree/main/packages/sign#readme",publishConfig:{provenance:!0},devDependencies:{"@sigstore/jest":"^0.0.0","@sigstore/mock":"^0.10.0","@sigstore/rekor-types":"^3.0.0","@types/make-fetch-happen":"^10.0.4","@types/promise-retry":"^1.1.6"},dependencies:{"@sigstore/bundle":"^3.1.0","@sigstore/core":"^2.0.0","@sigstore/protobuf-specs":"^0.4.0","make-fetch-happen":"^14.0.2","proc-log":"^5.0.0","promise-retry":"^2.0.1"},engines:{node:"^18.17.0 || >=20.5.0"}}});var Pfs=H(VGe=>{"use strict";var lSl=VGe&&VGe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VGe,"__esModule",{value:!0});VGe.getUserAgent=void 0;var Vfs=lSl(wt("os")),uSl=()=>{let e=Lfs().version,t=process.version,r=Vfs.default.platform(),n=Vfs.default.arch();return`sigstore-js/${e} (Node ${t}) (${r}/${n})`};VGe.getUserAgent=uSl});var Lue=H(tB=>{"use strict";var gSl=tB&&tB.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ASl=tB&&tB.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wfs=tB&&tB.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(BFt,"__esModule",{value:!0});BFt.BaseBundleBuilder=void 0;var yKr=class{constructor(t){this.signer=t.signer,this.witnesses=t.witnesses}async create(t){let r=await this.prepare(t).then(A=>this.signer.sign(A)),n=await this.package(t,r),a=await Promise.all(this.witnesses.map(A=>A.testify(n.content,dSl(r.key)))),o=[],l=[];return a.forEach(({tlogEntries:A,rfc3161Timestamps:f})=>{o.push(...A??[]),l.push(...f??[])}),n.verificationMaterial.tlogEntries=o,n.verificationMaterial.timestampVerificationData={rfc3161Timestamps:l},n}async prepare(t){return t.data}};BFt.BaseBundleBuilder=yKr;function dSl(e){switch(e.$case){case"publicKey":return e.publicKey;case"x509Certificate":return e.certificate}}});var SKr=H(B6=>{"use strict";var pSl=B6&&B6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fSl=B6&&B6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ISl=B6&&B6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(wFt,"__esModule",{value:!0});wFt.DSSEBundleBuilder=void 0;var CSl=Lue(),_Sl=bKr(),ySl=SKr(),vKr=class extends _Sl.BaseBundleBuilder{constructor(t){super(t),this.certificateChain=t.certificateChain??!1}async prepare(t){let r=Mfs(t);return CSl.dsse.preAuthEncoding(r.type,r.data)}async package(t,r){return(0,ySl.toDSSEBundle)(Mfs(t),r,this.certificateChain)}};wFt.DSSEBundleBuilder=vKr;function Mfs(e){return{...e,type:e.type??""}}});var Yfs=H(TFt=>{"use strict";Object.defineProperty(TFt,"__esModule",{value:!0});TFt.MessageSignatureBundleBuilder=void 0;var bSl=bKr(),ESl=SKr(),BKr=class extends bSl.BaseBundleBuilder{constructor(t){super(t)}async package(t,r){return(0,ESl.toMessageSignatureBundle)(t,r)}};TFt.MessageSignatureBundleBuilder=BKr});var Qfs=H(PGe=>{"use strict";Object.defineProperty(PGe,"__esModule",{value:!0});PGe.MessageSignatureBundleBuilder=PGe.DSSEBundleBuilder=void 0;var SSl=Hfs();Object.defineProperty(PGe,"DSSEBundleBuilder",{enumerable:!0,get:function(){return SSl.DSSEBundleBuilder}});var vSl=Yfs();Object.defineProperty(PGe,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return vSl.MessageSignatureBundleBuilder}})});var NFt=H(RFt=>{"use strict";Object.defineProperty(RFt,"__esModule",{value:!0});RFt.HTTPError=void 0;var wKr=class extends Error{constructor({status:t,message:r,location:n}){super(`(${t}) ${r}`),this.statusCode=t,this.location=n}};RFt.HTTPError=wKr});var WGe=H(D7e=>{"use strict";Object.defineProperty(D7e,"__esModule",{value:!0});D7e.InternalError=void 0;D7e.internalError=wSl;var BSl=NFt(),DFt=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.name=this.constructor.name,this.cause=n,this.code=t}};D7e.InternalError=DFt;function wSl(e,t,r){throw e instanceof BSl.HTTPError&&(r+=` - ${e.message}`),new DFt({code:t,message:r,cause:e})}});var TKr=H(OGe=>{"use strict";var TSl=OGe&&OGe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OGe,"__esModule",{value:!0});OGe.constants=void 0;var RSl=TSl(wt("zlib")),NSl=RSl.default.constants||{ZLIB_VERNUM:4736};OGe.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},NSl))});var Ufs=H(Rm=>{"use strict";var DSl=Rm&&Rm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kSl=Rm&&Rm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xSl=Rm&&Rm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;ae,RKr=Jfs?.writable===!0||Jfs?.set!==void 0?e=>{_0e.Buffer.concat=e?VSl:LSl}:e=>{},y0e=Symbol("_superWrite"),b0e=class extends Error{code;errno;constructor(t,r){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,r??this.constructor)}get name(){return"ZlibError"}};Rm.ZlibError=b0e;var NKr=Symbol("flushFlag"),k7e=class extends FSl.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#n=t.flush??0,this.#r=t.finishFlush??0,this.#i=t.fullFlushFlag??0,typeof Xfs[r]!="function")throw new TypeError("Compression method not supported: "+r);try{this.#s=new Xfs[r](t)}catch(n){throw new b0e(n,this.constructor)}this.#o=n=>{this.#e||(this.#e=!0,this.close(),this.emit("error",n))},this.#s?.on("error",n=>this.#o(new b0e(n))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,DKr.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#i),this.write(Object.assign(_0e.Buffer.alloc(0),{[NKr]:t})))}end(t,r,n){return typeof t=="function"&&(n=t,r=void 0,t=void 0),typeof r=="function"&&(n=r,r=void 0),t&&(r?this.write(t,r):this.write(t)),this.flush(this.#r),this.#t=!0,super.end(n)}get ended(){return this.#t}[y0e](t){return super.write(t)}write(t,r,n){if(typeof r=="function"&&(n=r,r="utf8"),typeof t=="string"&&(t=_0e.Buffer.from(t,r)),this.#e)return;(0,DKr.default)(this.#s,"zlib binding closed");let a=this.#s._handle,o=a.close;a.close=()=>{};let l=this.#s.close;this.#s.close=()=>{},RKr(!0);let A;try{let I=typeof t[NKr]=="number"?t[NKr]:this.#n;A=this.#s._processChunk(t,I),RKr(!1)}catch(I){RKr(!1),this.#o(new b0e(I,this.write))}finally{this.#s&&(this.#s._handle=a,a.close=o,this.#s.close=l,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",I=>this.#o(new b0e(I,this.write)));let f;if(A)if(Array.isArray(A)&&A.length>0){let I=A[0];f=this[y0e](_0e.Buffer.from(I));for(let C=1;C{typeof a=="function"&&(o=a,a=this.flushFlag),this.flush(a),o?.()};try{this.handle.params(t,r)}finally{this.handle.flush=n}this.handle&&(this.#e=t,this.#t=r)}}}};Rm.Zlib=T6;var kKr=class extends T6{constructor(t){super(t,"Deflate")}};Rm.Deflate=kKr;var xKr=class extends T6{constructor(t){super(t,"Inflate")}};Rm.Inflate=xKr;var GKr=class extends T6{#e;constructor(t){super(t,"Gzip"),this.#e=t&&!!t.portable}[y0e](t){return this.#e?(this.#e=!1,t[9]=255,super[y0e](t)):super[y0e](t)}};Rm.Gzip=GKr;var FKr=class extends T6{constructor(t){super(t,"Gunzip")}};Rm.Gunzip=FKr;var ZKr=class extends T6{constructor(t){super(t,"DeflateRaw")}};Rm.DeflateRaw=ZKr;var LKr=class extends T6{constructor(t){super(t,"InflateRaw")}};Rm.InflateRaw=LKr;var VKr=class extends T6{constructor(t){super(t,"Unzip")}};Rm.Unzip=VKr;var kFt=class extends k7e{constructor(t,r){t=t||{},t.flush=t.flush||w6.constants.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||w6.constants.BROTLI_OPERATION_FINISH,t.fullFlushFlag=w6.constants.BROTLI_OPERATION_FLUSH,super(t,r)}},PKr=class extends kFt{constructor(t){super(t,"BrotliCompress")}};Rm.BrotliCompress=PKr;var WKr=class extends kFt{constructor(t){super(t,"BrotliDecompress")}};Rm.BrotliDecompress=WKr;var xFt=class extends k7e{constructor(t,r){t=t||{},t.flush=t.flush||w6.constants.ZSTD_e_continue,t.finishFlush=t.finishFlush||w6.constants.ZSTD_e_end,t.fullFlushFlag=w6.constants.ZSTD_e_flush,super(t,r)}},OKr=class extends xFt{constructor(t){super(t,"ZstdCompress")}};Rm.ZstdCompress=OKr;var MKr=class extends xFt{constructor(t){super(t,"ZstdDecompress")}};Rm.ZstdDecompress=MKr});var PFt=H((osg,nIs)=>{"use strict";var Kfs=typeof process=="object"&&process?process:{stdout:null,stderr:null},PSl=wt("events"),jfs=wt("stream"),zfs=wt("string_decoder").StringDecoder,jte=Symbol("EOF"),zte=Symbol("maybeEmitEnd"),Vue=Symbol("emittedEnd"),GFt=Symbol("emittingEnd"),x7e=Symbol("emittedError"),FFt=Symbol("closed"),qfs=Symbol("read"),ZFt=Symbol("flush"),$fs=Symbol("flushChunk"),zV=Symbol("encoding"),qte=Symbol("decoder"),LFt=Symbol("flowing"),G7e=Symbol("paused"),MGe=Symbol("resume"),SD=Symbol("bufferLength"),HKr=Symbol("bufferPush"),YKr=Symbol("bufferShift"),sF=Symbol("objectMode"),oF=Symbol("destroyed"),QKr=Symbol("emitData"),eIs=Symbol("emitEnd"),XKr=Symbol("emitEnd2"),$te=Symbol("async"),F7e=e=>Promise.resolve().then(e),tIs=global._MP_NO_ITERATOR_SYMBOLS_!=="1",WSl=tIs&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),OSl=tIs&&Symbol.iterator||Symbol("iterator not implemented"),MSl=e=>e==="end"||e==="finish"||e==="prefinish",HSl=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,YSl=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),VFt=class{constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[MGe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},JKr=class extends VFt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};nIs.exports=class rIs extends jfs{constructor(t){super(),this[LFt]=!1,this[G7e]=!1,this.pipes=[],this.buffer=[],this[sF]=t&&t.objectMode||!1,this[sF]?this[zV]=null:this[zV]=t&&t.encoding||null,this[zV]==="buffer"&&(this[zV]=null),this[$te]=t&&!!t.async||!1,this[qte]=this[zV]?new zfs(this[zV]):null,this[jte]=!1,this[Vue]=!1,this[GFt]=!1,this[FFt]=!1,this[x7e]=null,this.writable=!0,this.readable=!0,this[SD]=0,this[oF]=!1}get bufferLength(){return this[SD]}get encoding(){return this[zV]}set encoding(t){if(this[sF])throw new Error("cannot set encoding in objectMode");if(this[zV]&&t!==this[zV]&&(this[qte]&&this[qte].lastNeed||this[SD]))throw new Error("cannot change encoding");this[zV]!==t&&(this[qte]=t?new zfs(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[qte].write(r)))),this[zV]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[sF]}set objectMode(t){this[sF]=this[sF]||!!t}get async(){return this[$te]}set async(t){this[$te]=this[$te]||!!t}write(t,r,n){if(this[jte])throw new Error("write after end");if(this[oF])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[$te]?F7e:o=>o();return!this[sF]&&!Buffer.isBuffer(t)&&(YSl(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):HSl(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[sF]?(this.flowing&&this[SD]!==0&&this[ZFt](!0),this.flowing?this.emit("data",t):this[HKr](t),this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing):t.length?(typeof t=="string"&&!(r===this[zV]&&!this[qte].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[zV]&&(t=this[qte].write(t)),this.flowing&&this[SD]!==0&&this[ZFt](!0),this.flowing?this.emit("data",t):this[HKr](t),this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing):(this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing)}read(t){if(this[oF])return null;if(this[SD]===0||t===0||t>this[SD])return this[zte](),null;this[sF]&&(t=null),this.buffer.length>1&&!this[sF]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[SD])]);let r=this[qfs](t||null,this.buffer[0]);return this[zte](),r}[qfs](t,r){return t===r.length||t===null?this[YKr]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[SD]-=t),this.emit("data",r),!this.buffer.length&&!this[jte]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r),n&&this.once("end",n),this[jte]=!0,this.writable=!1,(this.flowing||!this[G7e])&&this[zte](),this}[MGe](){this[oF]||(this[G7e]=!1,this[LFt]=!0,this.emit("resume"),this.buffer.length?this[ZFt]():this[jte]?this[zte]():this.emit("drain"))}resume(){return this[MGe]()}pause(){this[LFt]=!1,this[G7e]=!0}get destroyed(){return this[oF]}get flowing(){return this[LFt]}get paused(){return this[G7e]}[HKr](t){this[sF]?this[SD]+=1:this[SD]+=t.length,this.buffer.push(t)}[YKr](){return this.buffer.length&&(this[sF]?this[SD]-=1:this[SD]-=this.buffer[0].length),this.buffer.shift()}[ZFt](t){do;while(this[$fs](this[YKr]()));!t&&!this.buffer.length&&!this[jte]&&this.emit("drain")}[$fs](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[oF])return;let n=this[Vue];return r=r||{},t===Kfs.stdout||t===Kfs.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this.pipes.push(r.proxyErrors?new JKr(this,t,r):new VFt(this,t,r)),this[$te]?F7e(()=>this[MGe]()):this[MGe]()),t}unpipe(t){let r=this.pipes.find(n=>n.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[MGe]():t==="readable"&&this[SD]!==0?super.emit("readable"):MSl(t)&&this[Vue]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[x7e]&&(this[$te]?F7e(()=>r.call(this,this[x7e])):r.call(this,this[x7e])),n}get emittedEnd(){return this[Vue]}[zte](){!this[GFt]&&!this[Vue]&&!this[oF]&&this.buffer.length===0&&this[jte]&&(this[GFt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[FFt]&&this.emit("close"),this[GFt]=!1)}emit(t,r,...n){if(t!=="error"&&t!=="close"&&t!==oF&&this[oF])return;if(t==="data")return r?this[$te]?F7e(()=>this[QKr](r)):this[QKr](r):!1;if(t==="end")return this[eIs]();if(t==="close"){if(this[FFt]=!0,!this[Vue]&&!this[oF])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[x7e]=r;let o=super.emit("error",r);return this[zte](),o}else if(t==="resume"){let o=super.emit("resume");return this[zte](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...n);return this[zte](),a}[QKr](t){for(let n of this.pipes)n.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[zte](),r}[eIs](){this[Vue]||(this[Vue]=!0,this.readable=!1,this[$te]?F7e(()=>this[XKr]()):this[XKr]())}[XKr](){if(this[qte]){let r=this[qte].end();if(r){for(let n of this.pipes)n.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[sF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[sF]||(t.dataLength+=n.length)}),r.then(()=>t)}concat(){return this[sF]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[sF]?Promise.reject(new Error("cannot concat in objectMode")):this[zV]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(oF,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[WSl](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[jte])return Promise.resolve({done:!0});let n=null,a=null,o=I=>{this.removeListener("data",l),this.removeListener("end",A),a(I)},l=I=>{this.removeListener("error",o),this.removeListener("end",A),this.pause(),n({value:I,done:!!this[jte]})},A=()=>{this.removeListener("error",o),this.removeListener("data",l),n({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((I,C)=>{a=C,n=I,this.once(oF,f),this.once("error",o),this.once("end",A),this.once("data",l)})}}}[OSl](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[oF]?(t?this.emit("error",t):this.emit(oF),this):(this[oF]=!0,this.buffer.length=0,this[SD]=0,typeof this.close=="function"&&!this[FFt]&&this.close(),t?this.emit("error",t):this.emit(oF),this)}static isStream(t){return!!t&&(t instanceof rIs||t instanceof jfs||t instanceof PSl&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var sIs=H((asg,iIs)=>{var QSl=PFt(),Z7e=class extends Error{constructor(t,r){super(`Bad data size: expected ${r} bytes, but got ${t}`),this.expect=r,this.found=t,this.code="EBADSIZE",Error.captureStackTrace(this,this.constructor)}get name(){return"SizeError"}},WFt=class extends QSl{constructor(t={}){if(super(t),t.objectMode)throw new TypeError(`${this.constructor.name} streams only work with string and buffer data`);if(this.found=0,this.expect=t.size,typeof this.expect!="number"||this.expect>Number.MAX_SAFE_INTEGER||isNaN(this.expect)||this.expect<0||!isFinite(this.expect)||this.expect!==Math.floor(this.expect))throw new Error("invalid expected size: "+this.expect)}write(t,r,n){let a=Buffer.isBuffer(t)?t:typeof t=="string"?Buffer.from(t,typeof r=="string"?r:"utf8"):t;return Buffer.isBuffer(a)?(this.found+=a.length,this.found>this.expect&&this.emit("error",new Z7e(this.found,this.expect)),super.write(t,r,n)):(this.emit("error",new TypeError(`${this.constructor.name} streams only work with string and buffer data`)),!1)}emit(t,...r){return t==="end"&&this.found!==this.expect&&this.emit("error",new Z7e(this.found,this.expect)),super.emit(t,...r)}};WFt.SizeError=Z7e;iIs.exports=WFt});var aIs=H((csg,oIs)=>{"use strict";var{Minipass:XSl}=rF(),UKr=Symbol("type"),ere=Symbol("buffer"),OFt=class e{constructor(t,r){this[UKr]="";let n=[],a=0;if(t){let l=t,A=Number(l.length);for(let f=0;f{"use strict";var KKr=class extends Error{constructor(t,r,n){super(t),this.code="FETCH_ERROR",n&&Object.assign(this,n),this.errno=this.code,this.type=this.code==="EBADSIZE"&&this.found>this.expect?"max-size":r,this.message=t,Error.captureStackTrace(this,this.constructor)}get name(){return"FetchError"}set name(t){}get[Symbol.toStringTag](){return"FetchError"}};cIs.exports=KKr});var tre=H((usg,lIs)=>{"use strict";var MFt=wt("buffer"),HGe=MFt.Buffer,VH={},PH;for(PH in MFt)MFt.hasOwnProperty(PH)&&(PH==="SlowBuffer"||PH==="Buffer"||(VH[PH]=MFt[PH]));var YGe=VH.Buffer={};for(PH in HGe)HGe.hasOwnProperty(PH)&&(PH==="allocUnsafe"||PH==="allocUnsafeSlow"||(YGe[PH]=HGe[PH]));VH.Buffer.prototype=HGe.prototype;(!YGe.from||YGe.from===Uint8Array.from)&&(YGe.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return HGe(e,t,r)});YGe.alloc||(YGe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=HGe(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!VH.kStringMaxLength)try{VH.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}VH.constants||(VH.constants={MAX_LENGTH:VH.kMaxLength},VH.kStringMaxLength&&(VH.constants.MAX_STRING_LENGTH=VH.kStringMaxLength));lIs.exports=VH});var gIs=H($Kr=>{"use strict";var uIs="\uFEFF";$Kr.PrependBOM=zKr;function zKr(e,t){this.encoder=e,this.addBOM=!0}zKr.prototype.write=function(e){return this.addBOM&&(e=uIs+e,this.addBOM=!1),this.encoder.write(e)};zKr.prototype.end=function(){return this.encoder.end()};$Kr.StripBOM=qKr;function qKr(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}qKr.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===uIs&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};qKr.prototype.end=function(){return this.decoder.end()}});var dIs=H((Asg,AIs)=>{"use strict";var E0e=tre().Buffer;AIs.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:t8r};function t8r(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=i8r:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=s8r,E0e.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=o8r,this.defaultCharUnicode=t.defaultCharUnicode))}t8r.prototype.encoder=n8r;t8r.prototype.decoder=r8r;var e8r=wt("string_decoder").StringDecoder;e8r.prototype.end||(e8r.prototype.end=function(){});function r8r(e,t){this.decoder=new e8r(t.enc)}r8r.prototype.write=function(e){return E0e.isBuffer(e)||(e=E0e.from(e)),this.decoder.write(e)};r8r.prototype.end=function(){return this.decoder.end()};function n8r(e,t){this.enc=t.enc}n8r.prototype.write=function(e){return E0e.from(e,this.enc)};n8r.prototype.end=function(){};function i8r(e,t){this.prevStr=""}i8r.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),E0e.from(e,"base64")};i8r.prototype.end=function(){return E0e.from(this.prevStr,"base64")};function s8r(e,t){}s8r.prototype.write=function(e){for(var t=E0e.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(a&63)):(t[r++]=224+(a>>>12),t[r++]=128+(a>>>6&63),t[r++]=128+(a&63))}return t.slice(0,r)};s8r.prototype.end=function(){};function o8r(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}o8r.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,a="",o=0;o0&&(a+=this.defaultCharUnicode,r=0),l<128?a+=String.fromCharCode(l):l<224?(t=l&31,r=1,n=1):l<240?(t=l&15,r=2,n=1):a+=this.defaultCharUnicode):r>0?(t=t<<6|l&63,r--,n++,r===0&&(n===2&&t<128&&t>0?a+=this.defaultCharUnicode:n===3&&t<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(t))):a+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,a};o8r.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var IIs=H(Pue=>{"use strict";var HFt=tre().Buffer;Pue._utf32=a8r;function a8r(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}Pue.utf32le={type:"_utf32",isLE:!0};Pue.utf32be={type:"_utf32",isLE:!1};Pue.ucs4le="utf32le";Pue.ucs4be="utf32be";a8r.prototype.encoder=c8r;a8r.prototype.decoder=l8r;function c8r(e,t){this.isLE=t.isLE,this.highSurrogate=0}c8r.prototype.write=function(e){for(var t=HFt.from(e,"ucs2"),r=HFt.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,o=0;o0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var a=55296|r>>10;e[t++]=a&255,e[t++]=a>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}l8r.prototype.end=function(){this.overflow.length=0};Pue.utf32=u8r;Pue.ucs4="utf32";function u8r(e,t){this.iconv=t}u8r.prototype.encoder=g8r;u8r.prototype.decoder=A8r;function g8r(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}g8r.prototype.write=function(e){return this.encoder.write(e)};g8r.prototype.end=function(){return this.encoder.end()};function A8r(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}A8r.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=fIs(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&o++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&A++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&l++,r.length=0,n++,n>=100)break e}return A-o>l-a?"utf-32be":A-o{"use strict";var hIs=tre().Buffer;m8r.utf16be=YFt;function YFt(){}YFt.prototype.encoder=d8r;YFt.prototype.decoder=p8r;YFt.prototype.bomAware=!0;function d8r(){}d8r.prototype.write=function(e){for(var t=hIs.from(e,"ucs2"),r=0;r=100)break e}return o>a?"utf-16be":o{"use strict";var R6=tre().Buffer;JFt.utf7=QFt;JFt.unicode11utf7="utf7";function QFt(e,t){this.iconv=t}QFt.prototype.encoder=_8r;QFt.prototype.decoder=y8r;QFt.prototype.bomAware=!0;var JSl=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function _8r(e,t){this.iconv=t.iconv}_8r.prototype.write=function(e){return R6.from(e.replace(JSl,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};_8r.prototype.end=function(){};function y8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var USl=/[A-Za-z0-9\/+]/,b8r=[];for(L7e=0;L7e<256;L7e++)b8r[L7e]=USl.test(String.fromCharCode(L7e));var L7e,KSl=43,S0e=45,C8r=38;y8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(R6.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};JFt.utf7imap=XFt;function XFt(e,t){this.iconv=t}XFt.prototype.encoder=E8r;XFt.prototype.decoder=S8r;XFt.prototype.bomAware=!0;function E8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=R6.alloc(6),this.base64AccumIdx=0}E8r.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,a=R6.alloc(e.length*5+10),o=0,l=0;l0&&(o+=a.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),o),n=0),a[o++]=S0e,t=!1),t||(a[o++]=A,A===C8r&&(a[o++]=S0e))):(t||(a[o++]=C8r,t=!0),t&&(r[n++]=A>>8,r[n++]=A&255,n==r.length&&(o+=a.write(r.toString("base64").replace(/\//g,","),o),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,a.slice(0,o)};E8r.prototype.end=function(){var e=R6.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=S0e,this.inBase64=!1),e.slice(0,t)};function S8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var _Is=b8r.slice();_Is[44]=!0;S8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(R6.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var EIs=H(bIs=>{"use strict";var UFt=tre().Buffer;bIs._sbcs=v8r;function v8r(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=UFt.from(e.chars,"ucs2");for(var a=UFt.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";SIs.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var wIs=H((msg,BIs)=>{"use strict";BIs.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b \v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var pIs=H(dIs=>{"use strict";var y8r=ere().Buffer;dIs._dbcs=tre;var px=-1,AIs=-2,WH=-10,pL=-1e3,HGe=new Array(256),Z7e=-1;for(QFt=0;QFt<256;QFt++)HGe[QFt]=px;var QFt;function tre(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=HGe.slice(0),this.decodeTableSeq=[];for(var n=0;npL)throw new Error("gb18030 decode tables conflict at byte 2");for(var I=this.decodeTables[pL-A[f]],C=129;C<=254;C++){if(I[C]===px)I[C]=pL-o;else{if(I[C]===pL-o)continue;if(I[C]>pL)throw new Error("gb18030 decode tables conflict at byte 3")}for(var b=this.decodeTables[pL-I[C]],E=48;E<=57;E++)b[E]===px&&(b[E]=AIs)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var N={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var a=r[t[n]];if(a==px)r[t[n]]=pL-this.decodeTables.length,this.decodeTables.push(r=HGe.slice(0));else if(a<=pL)r=this.decodeTables[pL-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};tre.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};tre.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=HGe.slice(0)),this.encodeTable[t]};tre.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=WH?this.encodeTableSeq[WH-r[n]][Z7e]=t:r[n]==px&&(r[n]=t)};tre.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),a=r&255,o;n[a]<=WH?o=this.encodeTableSeq[WH-n[a]]:(o={},n[a]!==px&&(o[Z7e]=n[a]),n[a]=WH-this.encodeTableSeq.length,this.encodeTableSeq.push(o));for(var l=1;l=0)this._setEncodeChar(A,f),a=!0;else if(A<=pL){var I=pL-A;if(!o[I]){var C=f<<8>>>0;this._fillEncodeTable(I,C,r)?a=!0:o[I]=!0}}else A<=WH&&(this._setEncodeSequence(this.decodeTableSeq[WH-A],f),a=!0)}return a};function XFt(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}XFt.prototype.write=function(e){for(var t=y8r.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,a=-1,o=0,l=0;;){if(a===-1){if(o==e.length)break;var A=e.charCodeAt(o++)}else{var A=a;a=-1}if(55296<=A&&A<57344)if(A<56320)if(r===-1){r=A;continue}else r=A,A=px;else r!==-1?(A=65536+(r-55296)*1024+(A-56320),r=-1):A=px;else r!==-1&&(a=A,A=px,r=-1);var f=px;if(n!==void 0&&A!=px){var I=n[A];if(typeof I=="object"){n=I;continue}else typeof I=="number"?f=I:I==null&&(I=n[Z7e],I!==void 0&&(f=I,a=A));n=void 0}else if(A>=0){var C=this.encodeTable[A>>8];if(C!==void 0&&(f=C[A&255]),f<=WH){n=this.encodeTableSeq[WH-f];continue}if(f==px&&this.gb18030){var b=E8r(this.gb18030.uChars,A);if(b!=-1){var f=this.gb18030.gbChars[b]+(A-this.gb18030.uChars[b]);t[l++]=129+Math.floor(f/12600),f=f%12600,t[l++]=48+Math.floor(f/1260),f=f%1260,t[l++]=129+Math.floor(f/10),f=f%10,t[l++]=48+f;continue}}}f===px&&(f=this.defaultCharSingleByte),f<256?t[l++]=f:f<65536?(t[l++]=f>>8,t[l++]=f&255):f<16777216?(t[l++]=f>>16,t[l++]=f>>8&255,t[l++]=f&255):(t[l++]=f>>>24,t[l++]=f>>>16&255,t[l++]=f>>>8&255,t[l++]=f&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,l)};XFt.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=y8r.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[Z7e];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};XFt.prototype.findIdx=E8r;function b8r(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}b8r.prototype.write=function(e){for(var t=y8r.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,a=this.prevBytes.length,o=-this.prevBytes.length,l,A=0,f=0;A=0?e[A]:n[A+a],l=this.decodeTables[r][I];if(!(l>=0))if(l===px)l=this.defaultCharUnicode.charCodeAt(0),A=o;else if(l===AIs){if(A>=3)var C=(e[A-3]-129)*12600+(e[A-2]-48)*1260+(e[A-1]-129)*10+(I-48);else var C=(n[A-3+a]-129)*12600+((A-2>=0?e[A-2]:n[A-2+a])-48)*1260+((A-1>=0?e[A-1]:n[A-1+a])-129)*10+(I-48);var b=E8r(this.gb18030.gbChars,C);l=this.gb18030.uChars[b]+C-this.gb18030.gbChars[b]}else if(l<=pL){r=pL-l;continue}else if(l<=WH){for(var E=this.decodeTableSeq[WH-l],N=0;N>8;l=E[E.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+l+" at "+r+"/"+I);if(l>=65536){l-=65536;var B=55296|l>>10;t[f++]=B&255,t[f++]=B>>8,l=56320|l&1023}t[f++]=l&255,t[f++]=l>>8,r=0,o=A+1}return this.nodeIdx=r,this.prevBytes=o>=0?Array.prototype.slice.call(e,o):n.slice(o+a).concat(Array.prototype.slice.call(e)),t.slice(0,f).toString("ucs2")};b8r.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function E8r(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[a]<=t?r=a:n=a}return r}});var fIs=H((uig,iSl)=>{iSl.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var IIs=H((gig,sSl)=>{sSl.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var JFt=H((Aig,oSl)=>{oSl.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var S8r=H((dig,aSl)=>{aSl.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var hIs=H((pig,cSl)=>{cSl.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var mIs=H((fig,lSl)=>{lSl.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var v8r=H((Iig,uSl)=>{uSl.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var CIs=H((hig,gSl)=>{gSl.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var yIs=H((mig,_Is)=>{"use strict";_Is.exports={shiftjis:{type:"_dbcs",table:function(){return fIs()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return IIs()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return JFt()}},gbk:{type:"_dbcs",table:function(){return JFt().concat(S8r())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return JFt().concat(S8r())},gb18030:function(){return hIs()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return mIs()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return v8r()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return v8r().concat(CIs())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var SIs=H((EIs,YGe)=>{"use strict";var bIs=[zfs(),eIs(),nIs(),sIs(),aIs(),lIs(),gIs(),pIs(),yIs()];for(UFt=0;UFt{"use strict";var vIs=ere().Buffer;BIs.exports=function(e){var t=e.Transform;function r(a,o){this.conv=a,o=o||{},o.decodeStrings=!1,t.call(this,o)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,o,l){if(typeof a!="string")return l(new Error("Iconv encoding stream needs strings as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A),l()}catch(f){l(f)}},r.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o),a()}catch(l){a(l)}},r.prototype.collect=function(a){var o=[];return this.on("error",a),this.on("data",function(l){o.push(l)}),this.on("end",function(){a(null,vIs.concat(o))}),this};function n(a,o){this.conv=a,o=o||{},o.encoding=this.encoding="utf8",t.call(this,o)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(a,o,l){if(!vIs.isBuffer(a)&&!(a instanceof Uint8Array))return l(new Error("Iconv decoding stream needs buffers as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A,this.encoding),l()}catch(f){l(f)}},n.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o,this.encoding),a()}catch(l){a(l)}},n.prototype.collect=function(a){var o="";return this.on("error",a),this.on("data",function(l){o+=l}),this.on("end",function(){a(null,o)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var DIs=H((_ig,NIs)=>{"use strict";var TIs=ere().Buffer,RIs=Kfs(),zI=NIs.exports;zI.encodings=null;zI.defaultCharUnicode="\uFFFD";zI.defaultCharSingleByte="?";zI.encode=function(t,r,n){t=""+(t||"");var a=zI.getEncoder(r,n),o=a.write(t),l=a.end();return l&&l.length>0?TIs.concat([o,l]):o};zI.decode=function(t,r,n){typeof t=="string"&&(zI.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),zI.skipDecodeWarning=!0),t=TIs.from(""+(t||""),"binary"));var a=zI.getDecoder(r,n),o=a.write(t),l=a.end();return l?o+l:o};zI.encodingExists=function(t){try{return zI.getCodec(t),!0}catch{return!1}};zI.toEncoding=zI.encode;zI.fromEncoding=zI.decode;zI._codecDataCache={};zI.getCodec=function(t){zI.encodings||(zI.encodings=SIs());for(var r=zI._canonicalizeEncoding(t),n={};;){var a=zI._codecDataCache[r];if(a)return a;var o=zI.encodings[r];switch(typeof o){case"string":r=o;break;case"object":for(var l in o)n[l]=o[l];n.encodingName||(n.encodingName=r),r=o.type;break;case"function":return n.encodingName||(n.encodingName=r),a=new o(n,zI),zI._codecDataCache[n.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};zI._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};zI.getEncoder=function(t,r){var n=zI.getCodec(t),a=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(a=new RIs.PrependBOM(a,r)),a};zI.getDecoder=function(t,r){var n=zI.getCodec(t),a=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(a=new RIs.StripBOM(a,r)),a};zI.enableStreamingAPI=function(t){if(!zI.supportsStreams){var r=wIs()(t);zI.IconvLiteEncoderStream=r.IconvLiteEncoderStream,zI.IconvLiteDecoderStream=r.IconvLiteDecoderStream,zI.encodeStream=function(a,o){return new zI.IconvLiteEncoderStream(zI.getEncoder(a,o),o)},zI.decodeStream=function(a,o){return new zI.IconvLiteDecoderStream(zI.getDecoder(a,o),o)},zI.supportsStreams=!0}};var jFt;try{jFt=wt("stream")}catch{}jFt&&jFt.Transform?zI.enableStreamingAPI(jFt):zI.encodeStream=zI.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var GIs=H((yig,xIs)=>{"use strict";var zFt=DIs();xIs.exports.convert=ASl;function ASl(e,t,r){r=kIs(r||"UTF-8"),t=kIs(t||"UTF-8"),e=e||"";var n;if(r!=="UTF-8"&&typeof e=="string"&&(e=Buffer.from(e,"binary")),r===t)typeof e=="string"?n=Buffer.from(e):n=e;else try{n=dSl(e,t,r)}catch(a){console.error(a),n=e}return typeof n=="string"&&(n=Buffer.from(n,"utf-8")),n}function dSl(e,t,r){return t==="UTF-8"?zFt.decode(e,r):r==="UTF-8"?zFt.encode(e,t):zFt.encode(zFt.decode(e,r),t)}function kIs(e){return(e||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}});var $Ft=H((big,LIs)=>{"use strict";var{Minipass:N6}=rF(),B8r=Hfs(),ZIs=Qfs(),{BUFFER:pSl}=ZIs,L7e=HKr(),w8r;try{w8r=GIs().convert}catch{}var rre=Symbol("Body internals"),S0e=Symbol("consumeBody"),qFt=class{constructor(t,r={}){let{size:n=0,timeout:a=0}=r,o=t==null?null:FIs(t)?Buffer.from(t.toString()):V7e(t)||Buffer.isBuffer(t)?t:Object.prototype.toString.call(t)==="[object ArrayBuffer]"?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):N6.isStream(t)?t:Buffer.from(String(t));this[rre]={body:o,disturbed:!1,error:null},this.size=n,this.timeout=a,N6.isStream(o)&&o.on("error",l=>{let A=l.name==="AbortError"?l:new L7e(`Invalid response while trying to fetch ${this.url}: ${l.message}`,"system",l);this[rre].error=A})}get body(){return this[rre].body}get bodyUsed(){return this[rre].disturbed}arrayBuffer(){return this[S0e]().then(t=>t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength))}blob(){let t=this.headers&&this.headers.get("content-type")||"";return this[S0e]().then(r=>Object.assign(new ZIs([],{type:t.toLowerCase()}),{[pSl]:r}))}async json(){let t=await this[S0e]();try{return JSON.parse(t.toString())}catch(r){throw new L7e(`invalid json response body at ${this.url} reason: ${r.message}`,"invalid-json")}}text(){return this[S0e]().then(t=>t.toString())}buffer(){return this[S0e]()}textConverted(){return this[S0e]().then(t=>fSl(t,this.headers))}[S0e](){if(this[rre].disturbed)return Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[rre].disturbed=!0,this[rre].error)return Promise.reject(this[rre].error);if(this.body===null)return Promise.resolve(Buffer.alloc(0));if(Buffer.isBuffer(this.body))return Promise.resolve(this.body);let t=V7e(this.body)?this.body.stream():this.body;if(!N6.isStream(t))return Promise.resolve(Buffer.alloc(0));let r=this.size&&t instanceof B8r||!this.size&&t instanceof N6&&!(t instanceof B8r)?t:this.size?new B8r({size:this.size}):new N6,n=this.timeout&&r.writable?setTimeout(()=>{r.emit("error",new L7e(`Response timeout while trying to fetch ${this.url} (over ${this.timeout}ms)`,"body-timeout"))},this.timeout):null;return n&&n.unref&&n.unref(),new Promise(a=>{r!==t&&(t.on("error",o=>r.emit("error",o)),t.pipe(r)),a()}).then(()=>r.concat()).then(a=>(clearTimeout(n),a)).catch(a=>{throw clearTimeout(n),a.name==="AbortError"||a.name==="FetchError"?a:a.name==="RangeError"?new L7e(`Could not create Buffer from response body for ${this.url}: ${a.message}`,"system",a):new L7e(`Invalid response body while trying to fetch ${this.url}: ${a.message}`,"system",a)})}static clone(t){if(t.bodyUsed)throw new Error("cannot clone body after it is used");let r=t.body;if(N6.isStream(r)&&typeof r.getBoundary!="function"){let n=new N6,a=new N6,o=new N6;return n.on("error",l=>{a.emit("error",l),o.emit("error",l)}),r.on("error",l=>n.emit("error",l)),n.pipe(a),n.pipe(o),r.pipe(n),t[rre].body=a,o}else return t.body}static extractContentType(t){return t==null?null:typeof t=="string"?"text/plain;charset=UTF-8":FIs(t)?"application/x-www-form-urlencoded;charset=UTF-8":V7e(t)?t.type||null:Buffer.isBuffer(t)||Object.prototype.toString.call(t)==="[object ArrayBuffer]"||ArrayBuffer.isView(t)?null:typeof t.getBoundary=="function"?`multipart/form-data;boundary=${t.getBoundary()}`:N6.isStream(t)?null:"text/plain;charset=UTF-8"}static getTotalBytes(t){let{body:r}=t;return r==null?0:V7e(r)?r.size:Buffer.isBuffer(r)?r.length:r&&typeof r.getLengthSync=="function"&&(r._lengthRetrievers&&r._lengthRetrievers.length===0||r.hasKnownLength&&r.hasKnownLength())?r.getLengthSync():null}static writeToStream(t,r){let{body:n}=r;return n==null?t.end():Buffer.isBuffer(n)||typeof n=="string"?t.end(n):(V7e(n)?n.stream():n).on("error",o=>t.emit("error",o)).pipe(t),t}};Object.defineProperties(qFt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});var FIs=e=>typeof e!="object"||typeof e.append!="function"||typeof e.delete!="function"||typeof e.get!="function"||typeof e.getAll!="function"||typeof e.has!="function"||typeof e.set!="function"?!1:e.constructor.name==="URLSearchParams"||Object.prototype.toString.call(e)==="[object URLSearchParams]"||typeof e.sort=="function",V7e=e=>typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&typeof e.constructor.name=="string"&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag]),fSl=(e,t)=>{if(typeof w8r!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=t&&t.get("content-type"),n="utf-8",a;r&&(a=/charset=([^;]*)/i.exec(r));let o=e.slice(0,1024).toString();return!a&&o&&(a=/{"use strict";var PIs=/[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/,R8r=/[^\t\x20-\x7e\x80-\xff]/,P7e=e=>{if(e=`${e}`,PIs.test(e)||e==="")throw new TypeError(`${e} is not a legal HTTP header name`)},VIs=e=>{if(e=`${e}`,R8r.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)},QGe=(e,t)=>{t=t.toLowerCase();for(let r in e)if(r.toLowerCase()===t)return r},Aw=Symbol("map"),eZt=class e{constructor(t=void 0){if(this[Aw]=Object.create(null),t instanceof e){let r=t.raw(),n=Object.keys(r);for(let a of n)for(let o of r[a])this.append(a,o);return}if(t!=null)if(typeof t=="object"){let r=t[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let n=[];for(let a of t){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");let o=Array.from(a);if(o.length!==2)throw new TypeError("Each header pair must be a name/value tuple");n.push(o)}for(let a of n)this.append(a[0],a[1])}else for(let n of Object.keys(t))this.append(n,t[n])}else throw new TypeError("Provided initializer must be an object")}get(t){t=`${t}`,P7e(t);let r=QGe(this[Aw],t);return r===void 0?null:this[Aw][r].join(", ")}forEach(t,r=void 0){let n=N8r(this);for(let a=0;aObject.keys(e[Aw]).sort().map(t==="key"?r=>r.toLowerCase():t==="value"?r=>e[Aw][r].join(", "):r=>[r.toLowerCase(),e[Aw][r].join(", ")]),T8r=Symbol("internal"),v0e=class e{constructor(t,r){this[T8r]={target:t,kind:r,index:0}}get[Symbol.toStringTag](){return"HeadersIterator"}next(){if(!this||Object.getPrototypeOf(this)!==e.prototype)throw new TypeError("Value of `this` is not a HeadersIterator");let{target:t,kind:r,index:n}=this[T8r],a=N8r(t,r),o=a.length;return n>=o?{value:void 0,done:!0}:(this[T8r].index++,{value:a[n],done:!1})}};Object.setPrototypeOf(v0e.prototype,Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));WIs.exports=eZt});var YIs=H((Sig,HIs)=>{"use strict";var ISl=wt("http"),{STATUS_CODES:hSl}=ISl,OIs=tZt(),MIs=$Ft(),{clone:mSl,extractContentType:CSl}=MIs,nre=Symbol("Response internals"),rZt=class e extends MIs{constructor(t=null,r={}){super(t,r);let n=r.status||200,a=new OIs(r.headers);if(t!=null&&!a.has("Content-Type")){let o=CSl(t);o&&a.append("Content-Type",o)}this[nre]={url:r.url,status:n,statusText:r.statusText||hSl[n],headers:a,counter:r.counter,trailer:Promise.resolve(r.trailer||new OIs)}}get trailer(){return this[nre].trailer}get url(){return this[nre].url||""}get status(){return this[nre].status}get ok(){return this[nre].status>=200&&this[nre].status<300}get redirected(){return this[nre].counter>0}get statusText(){return this[nre].statusText}get headers(){return this[nre].headers}clone(){return new e(mSl(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,trailer:this.trailer})}get[Symbol.toStringTag](){return"Response"}};HIs.exports=rZt;Object.defineProperties(rZt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var QIs=H((vig,_Sl)=>{_Sl.exports={name:"minipass-fetch",version:"4.0.1",description:"An implementation of window.fetch in Node.js using Minipass streams",license:"MIT",main:"lib/index.js",scripts:{"test:tls-fixtures":"./test/fixtures/tls/setup.sh",test:"tap",snap:"tap",lint:"npm run eslint",postlint:"template-oss-check",lintfix:"npm run eslint -- --fix",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},tap:{"coverage-map":"map.js","check-coverage":!0,"nyc-arg":["--exclude","tap-snapshots/**"]},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3","@ungap/url-search-params":"^0.2.2","abort-controller":"^3.0.0","abortcontroller-polyfill":"~1.7.3",encoding:"^0.1.13","form-data":"^4.0.0",nock:"^13.2.4",parted:"^0.1.1","string-to-arraybuffer":"^1.0.2",tap:"^16.0.0"},dependencies:{minipass:"^7.0.3","minipass-sized":"^1.0.3",minizlib:"^3.0.1"},optionalDependencies:{encoding:"^0.1.13"},repository:{type:"git",url:"git+https://github.com/npm/minipass-fetch.git"},keywords:["fetch","minipass","node-fetch","window.fetch"],files:["bin/","lib/"],engines:{node:"^18.17.0 || >=20.5.0"},author:"GitHub Inc.",templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.3",publish:"true"}}});var UIs=H((Big,JIs)=>{"use strict";var{URL:D8r}=wt("url"),{Minipass:ySl}=rF(),k8r=tZt(),{exportNodeCompatibleHeaders:bSl}=k8r,XIs=$Ft(),{clone:ESl,extractContentType:SSl,getTotalBytes:vSl}=XIs,BSl=QIs().version,wSl=`minipass-fetch/${BSl} (+https://github.com/isaacs/minipass-fetch)`,eJ=Symbol("Request internals"),nZt=e=>typeof e=="object"&&typeof e[eJ]=="object",TSl=e=>{let t=e&&typeof e=="object"&&Object.getPrototypeOf(e);return!!(t&&t.constructor.name==="AbortSignal")},iZt=class e extends XIs{constructor(t,r={}){let n=nZt(t)?new D8r(t.url):t&&t.href?new D8r(t.href):new D8r(`${t}`);nZt(t)?r={...t[eJ],...r}:(!t||typeof t=="string")&&(t={});let a=(r.method||t.method||"GET").toUpperCase(),o=a==="GET"||a==="HEAD";if((r.body!==null&&r.body!==void 0||nZt(t)&&t.body!==null)&&o)throw new TypeError("Request with GET/HEAD method cannot have body");let l=r.body!==null&&r.body!==void 0?r.body:nZt(t)&&t.body!==null?ESl(t):null;super(l,{timeout:r.timeout||t.timeout||0,size:r.size||t.size||0});let A=new k8r(r.headers||t.headers||{});if(l!=null&&!A.has("Content-Type")){let De=SSl(l);De&&A.append("Content-Type",De)}let f="signal"in r?r.signal:null;if(f!=null&&!TSl(f))throw new TypeError("Expected signal must be an instanceof AbortSignal");let{ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:X,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0",secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se}=r;this[eJ]={method:a,redirect:r.redirect||t.redirect||"follow",headers:A,parsedURL:n,signal:f,ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:X,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe,secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se},this.follow=r.follow!==void 0?r.follow:t.follow!==void 0?t.follow:20,this.compress=r.compress!==void 0?r.compress:t.compress!==void 0?t.compress:!0,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent}get method(){return this[eJ].method}get url(){return this[eJ].parsedURL.toString()}get headers(){return this[eJ].headers}get redirect(){return this[eJ].redirect}get signal(){return this[eJ].signal}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}static getNodeRequestOptions(t){let r=t[eJ].parsedURL,n=new k8r(t[eJ].headers);if(n.has("Accept")||n.set("Accept","*/*"),!/^https?:$/.test(r.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&ySl.isStream(t.body)&&typeof t.body.destroy!="function")throw new Error("Cancellation of streamed requests with AbortSignal is not supported");let a=(t.body===null||t.body===void 0)&&/^(POST|PUT)$/i.test(t.method)?"0":t.body!==null&&t.body!==void 0?vSl(t):null;a&&n.set("Content-Length",a+""),n.has("User-Agent")||n.set("User-Agent",wSl),t.compress&&!n.has("Accept-Encoding")&&n.set("Accept-Encoding","gzip,deflate");let o=typeof t.agent=="function"?t.agent(r):t.agent;!n.has("Connection")&&!o&&n.set("Connection","close");let{ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:X,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue}=t[eJ];return{...{auth:r.username||r.password?`${r.username}:${r.password}`:"",host:r.host,hostname:r.hostname,path:`${r.pathname}${r.search}`,port:r.port,protocol:r.protocol},method:t.method,headers:bSl(n),agent:o,ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:X,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue,timeout:t.timeout}}};JIs.exports=iZt;Object.defineProperties(iZt.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}})});var jIs=H((wig,KIs)=>{"use strict";var x8r=class extends Error{constructor(t){super(t),this.code="FETCH_ABORTED",this.type="aborted",Error.captureStackTrace(this,this.constructor)}get name(){return"AbortError"}set name(t){}};KIs.exports=x8r});var M7e=H((Tig,$Is)=>{"use strict";var{URL:W7e}=wt("url"),RSl=wt("http"),NSl=wt("https"),XGe=kfs(),{Minipass:zIs}=rF(),DSl=$Ft(),{writeToStream:kSl,getTotalBytes:xSl}=DSl,B0e=YIs(),F8r=tZt(),{createHeadersLenient:qIs}=F8r,O7e=UIs(),{getNodeRequestOptions:GSl}=O7e,Pue=HKr(),G8r=jIs(),ire=async(e,t)=>{if(/^data:/.test(e)){let r=new O7e(e,t);return Promise.resolve().then(()=>new Promise((n,a)=>{let o,l;try{let{pathname:I,search:C}=new W7e(e),b=I.split(",");if(b.length<2)throw new Error("invalid data: URI");let E=b.shift(),N=/;base64$/.test(E);o=N?E.slice(0,-1*7):E;let B=decodeURIComponent(b.join(",")+C);l=N?Buffer.from(B,"base64"):Buffer.from(B)}catch(I){return a(new Pue(`[${r.method}] ${r.url} invalid URL, ${I.message}`,"system",I))}let{signal:A}=r;if(A&&A.aborted)return a(new G8r("The user aborted a request."));let f={"Content-Length":l.length};return o&&(f["Content-Type"]=o),n(new B0e(l,{headers:f}))}))}return new Promise((r,n)=>{let a=new O7e(e,t),o;try{o=GSl(a)}catch(B){return n(B)}let l=(o.protocol==="https:"?NSl:RSl).request,{signal:A}=a,f=null,I=()=>{let B=new G8r("The user aborted a request.");n(B),zIs.isStream(a.body)&&typeof a.body.destroy=="function"&&a.body.destroy(B),f&&f.body&&f.body.emit("error",B)};if(A&&A.aborted)return I();let C=()=>{I(),b()},b=()=>{E.abort(),A&&A.removeEventListener("abort",C),clearTimeout(N)},E=l(o);A&&A.addEventListener("abort",C);let N=null;a.timeout&&E.once("socket",()=>{N=setTimeout(()=>{n(new Pue(`network timeout at: ${a.url}`,"request-timeout")),b()},a.timeout)}),E.on("error",B=>{E.res&&E.res.emit("error",B),n(new Pue(`request to ${a.url} failed, reason: ${B.message}`,"system",B)),b()}),E.on("response",B=>{clearTimeout(N);let F=qIs(B.headers);if(ire.isRedirect(B.statusCode)){let fe=F.get("Location"),ue=null;try{ue=fe===null?null:new W7e(fe,a.url).toString()}catch{if(a.redirect!=="manual"){n(new Pue(`uri requested responds with an invalid redirect URL: ${fe}`,"invalid-redirect")),b();return}}if(a.redirect==="error"){n(new Pue(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),b();return}else if(a.redirect==="manual"){if(ue!==null)try{F.set("Location",ue)}catch(de){n(de)}}else if(a.redirect==="follow"&&ue!==null){if(a.counter>=a.follow){n(new Pue(`maximum redirect reached at: ${a.url}`,"max-redirect")),b();return}if(B.statusCode!==303&&a.body&&xSl(a)===null){n(new Pue("Cannot follow redirect with body being a readable stream","unsupported-redirect")),b();return}a.headers.set("host",new W7e(ue).host);let de={headers:new F8r(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout},be=new W7e(a.url),Se=new W7e(ue);be.hostname!==Se.hostname&&(de.headers.delete("authorization"),de.headers.delete("cookie")),(B.statusCode===303||(B.statusCode===301||B.statusCode===302)&&a.method==="POST")&&(de.method="GET",de.body=void 0,de.headers.delete("content-length")),r(ire(new O7e(ue,de))),b();return}}B.once("end",()=>A&&A.removeEventListener("abort",C));let Q=new zIs;Q.on("error",b),B.on("error",fe=>Q.emit("error",fe)),B.on("data",fe=>Q.write(fe)),B.on("end",()=>Q.end());let X={url:a.url,status:B.statusCode,statusText:B.statusMessage,headers:F,size:a.size,timeout:a.timeout,counter:a.counter,trailer:new Promise(fe=>B.on("end",()=>fe(qIs(B.trailers))))},ae=F.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||ae===null||B.statusCode===204||B.statusCode===304){f=new B0e(Q,X),r(f);return}let ne={flush:XGe.constants.Z_SYNC_FLUSH,finishFlush:XGe.constants.Z_SYNC_FLUSH};if(ae==="gzip"||ae==="x-gzip"){let fe=new XGe.Gunzip(ne);f=new B0e(Q.on("error",ue=>fe.emit("error",ue)).pipe(fe),X),r(f);return}if(ae==="deflate"||ae==="x-deflate"){B.once("data",fe=>{let ue=(fe[0]&15)===8?new XGe.Inflate:new XGe.InflateRaw;Q.on("error",de=>ue.emit("error",de)).pipe(ue),f=new B0e(ue,X),r(f)});return}if(ae==="br"){try{var ce=new XGe.BrotliDecompress}catch(fe){n(fe),b();return}Q.on("error",fe=>ce.emit("error",fe)).pipe(ce),f=new B0e(ce,X),r(f);return}f=new B0e(Q,X),r(f)}),kSl(E,a)})};$Is.exports=ire;ire.isRedirect=e=>e===301||e===302||e===303||e===307||e===308;ire.Headers=F8r;ire.Request=O7e;ire.Response=B0e;ire.FetchError=Pue;ire.AbortError=G8r});var ths=H((Rig,ehs)=>{var FSl=wt("dns"),ZSl=["if-modified-since","if-none-match","if-unmodified-since","if-match","if-range"],LSl=e=>{let{strictSSL:t,...r}={...e};if(r.method=r.method?r.method.toUpperCase():"GET",t==null?r.rejectUnauthorized=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0":r.rejectUnauthorized=t!==!1,!r.retry)r.retry={retries:0};else if(typeof r.retry=="string"){let n=parseInt(r.retry,10);isFinite(n)?r.retry={retries:n}:r.retry={retries:0}}else typeof r.retry=="number"?r.retry={retries:r.retry}:r.retry={retries:0,...r.retry};return r.dns={ttl:5*60*1e3,lookup:FSl.lookup,...r.dns},r.cache=r.cache||"default",r.cache==="default"&&Object.keys(r.headers||{}).some(a=>ZSl.includes(a.toLowerCase()))&&(r.cache="no-store"),r.cacheAdditionalHeaders=r.cacheAdditionalHeaders||[],r.cacheManager&&!r.cachePath&&(r.cachePath=r.cacheManager),r};ehs.exports=LSl});var shs=H((Nig,Z8r)=>{"use strict";Z8r.exports=ihs;Z8r.exports.preferredCharsets=ihs;var VSl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function PSl(e){for(var t=e.split(","),r=0,n=0;r0}});var lhs=H((Dig,L8r)=>{"use strict";L8r.exports=chs;L8r.exports.preferredEncodings=chs;var YSl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function QSl(e){for(var t=e.split(","),r=!1,n=1,a=0,o=0;a0}});var phs=H((kig,V8r)=>{"use strict";V8r.exports=dhs;V8r.exports.preferredLanguages=dhs;var jSl=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function zSl(e){for(var t=e.split(","),r=0,n=0;r0}});var _hs=H((xig,P8r)=>{"use strict";P8r.exports=mhs;P8r.exports.preferredMediaTypes=mhs;var tvl=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function rvl(e){for(var t=avl(e),r=0,n=0;r0)if(o.every(function(l){return t.params[l]=="*"||(t.params[l]||"").toLowerCase()==(n.params[l]||"").toLowerCase()}))a|=1;else return null;return{i:r,o:t.i,q:t.q,s:a}}function mhs(e,t){var r=rvl(e===void 0?"*/*":e||"");if(!t)return r.filter(Ihs).sort(fhs).map(svl);var n=t.map(function(o,l){return nvl(o,r,l)});return n.filter(Ihs).sort(fhs).map(function(o){return t[n.indexOf(o)]})}function fhs(e,t){return t.q-e.q||t.s-e.s||e.o-t.o||e.i-t.i||0}function svl(e){return e.type+"/"+e.subtype}function Ihs(e){return e.q>0}function Chs(e){for(var t=0,r=0;(r=e.indexOf('"',r))!==-1;)t++,r++;return t}function ovl(e){var t=e.indexOf("="),r,n;return t===-1?r=e:(r=e.slice(0,t),n=e.slice(t+1)),[r,n]}function avl(e){for(var t=e.split(","),r=1,n=0;r{"use strict";var lvl=shs(),uvl=lhs(),gvl=phs(),Avl=_hs();W8r.exports=db;W8r.exports.Negotiator=db;function db(e){if(!(this instanceof db))return new db(e);this.request=e}db.prototype.charset=function(t){var r=this.charsets(t);return r&&r[0]};db.prototype.charsets=function(t){return lvl(this.request.headers["accept-charset"],t)};db.prototype.encoding=function(t,r){var n=this.encodings(t,r);return n&&n[0]};db.prototype.encodings=function(t,r){var n=r||{};return uvl(this.request.headers["accept-encoding"],t,n.preferred)};db.prototype.language=function(t){var r=this.languages(t);return r&&r[0]};db.prototype.languages=function(t){return gvl(this.request.headers["accept-language"],t)};db.prototype.mediaType=function(t){var r=this.mediaTypes(t);return r&&r[0]};db.prototype.mediaTypes=function(t){return Avl(this.request.headers.accept,t)};db.prototype.preferredCharset=db.prototype.charset;db.prototype.preferredCharsets=db.prototype.charsets;db.prototype.preferredEncoding=db.prototype.encoding;db.prototype.preferredEncodings=db.prototype.encodings;db.prototype.preferredLanguage=db.prototype.language;db.prototype.preferredLanguages=db.prototype.languages;db.prototype.preferredMediaType=db.prototype.mediaType;db.prototype.preferredMediaTypes=db.prototype.mediaTypes});var M8r=H((Fig,Bhs)=>{var bhs=jur(),Ehs=yhs(),dvl=Jte(),Shs={shared:!1,ignoreCargoCult:!0},pvl={status:200,headers:{}},JGe=e=>{let t={method:e.method,url:e.url,headers:{},compress:e.compress};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},vhs=e=>{let t={status:e.status,headers:{}};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},O8r=class{constructor({entry:t,request:r,response:n,options:a}){this.entry=t,this.request=JGe(r),this.response=vhs(n),this.options=a,this.policy=new bhs(this.request,this.response,Shs),this.entry&&(this.policy._responseTime=this.entry.metadata.time)}static storable(t,r){return!r.cachePath||r.cache==="no-store"||!["GET","HEAD"].includes(t.method)?!1:new bhs(JGe(t),pvl,Shs).storable()}satisfies(t){let r=JGe(t);if(this.request.headers.host!==r.headers.host||this.request.compress!==r.compress)return!1;let n=new Ehs(this.request),a=new Ehs(r);return JSON.stringify(n.mediaTypes())!==JSON.stringify(a.mediaTypes())||JSON.stringify(n.languages())!==JSON.stringify(a.languages())||JSON.stringify(n.encodings())!==JSON.stringify(a.encodings())?!1:this.options.integrity?dvl.parse(this.options.integrity).match(this.entry.integrity):!0}storable(){return this.policy.storable()}get mustRevalidate(){return!!this.policy._rescc["must-revalidate"]}needsRevalidation(t){let r=JGe(t);return r.method="GET",!this.policy.satisfiesWithoutRevalidation(r)}responseHeaders(){return this.policy.responseHeaders()}revalidationHeaders(t){let r=JGe(t);return this.policy.revalidationHeaders(r)}revalidated(t,r){let n=JGe(t),a=vhs(r);return!this.policy.revalidatedPolicy(n,a).modified}};Bhs.exports=O8r});var Ths=H((Zig,whs)=>{var H8r=class extends Error{constructor(t){super(`request to ${t} failed: cache mode is 'only-if-cached' but no cached response is available.`),this.code="ENOTCACHED"}};whs.exports={NotCachedError:H8r}});var sZt=H((Lig,khs)=>{var fvl=FFt(),Rhs=Symbol("_flush"),Nhs=Symbol("_flushed"),Dhs=Symbol("_flushing"),Y8r=class extends fvl{constructor(t={}){if(typeof t=="function"&&(t={flush:t}),super(t),typeof t.flush!="function"&&typeof this.flush!="function")throw new TypeError("must provide flush function in options");this[Rhs]=t.flush||this.flush}emit(t,...r){if(t!=="end"&&t!=="finish"||this[Nhs])return super.emit(t,...r);if(this[Dhs])return;this[Dhs]=!0;let n=o=>{this[Nhs]=!0,o?super.emit("error",o):super.emit("end")},a=this[Rhs](n);a&&a.then&&a.then(()=>n(),o=>n(o))}};khs.exports=Y8r});var U8r=H((Vig,J8r)=>{var{Minipass:xhs}=rF(),UGe=Symbol("_data"),KGe=Symbol("_length"),Q8r=class extends xhs{constructor(t){super(t),this[UGe]=[],this[KGe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[UGe].push(a),this[KGe]+=a.length,n&&n(),!0}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[UGe],this[KGe]);return super.write(a),super.end(n)}};J8r.exports=Q8r;var X8r=class extends xhs{constructor(t){super(t),this[UGe]=[],this[KGe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[UGe].push(a),this[KGe]+=a.length,super.write(t,r,n)}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[UGe],this[KGe]);return this.emit("collect",a),super.end(n)}};J8r.exports.PassThrough=X8r});var jGe=H((Pig,Lhs)=>{var Ivl=FFt(),hvl=wt("events"),mvl=e=>e&&e instanceof hvl&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"),w0e=Symbol("_head"),XO=Symbol("_tail"),K8r=Symbol("_linkStreams"),j8r=Symbol("_setHead"),z8r=Symbol("_setTail"),Ghs=Symbol("_onError"),Fhs=Symbol("_onData"),q8r=Symbol("_onEnd"),Zhs=Symbol("_onDrain"),oZt=Symbol("_streams"),$8r=class extends Ivl{constructor(t,...r){mvl(t)&&(r.unshift(t),t={}),super(t),this[oZt]=[],r.length&&this.push(...r)}[K8r](t){return t.reduce((r,n)=>(r.on("error",a=>n.emit("error",a)),r.pipe(n),n))}push(...t){this[oZt].push(...t),this[XO]&&t.unshift(this[XO]);let r=this[K8r](t);this[z8r](r),this[w0e]||this[j8r](t[0])}unshift(...t){this[oZt].unshift(...t),this[w0e]&&t.push(this[w0e]);let r=this[K8r](t);this[j8r](t[0]),this[XO]||this[z8r](r)}destroy(t){return this[oZt].forEach(r=>typeof r.destroy=="function"&&r.destroy()),super.destroy(t)}[z8r](t){this[XO]=t,t.on("error",r=>this[Ghs](t,r)),t.on("data",r=>this[Fhs](t,r)),t.on("end",()=>this[q8r](t)),t.on("finish",()=>this[q8r](t))}[Ghs](t,r){t===this[XO]&&this.emit("error",r)}[Fhs](t,r){t===this[XO]&&super.write(r)}[q8r](t){t===this[XO]&&super.end()}pause(){return super.pause(),this[XO]&&this[XO].pause&&this[XO].pause()}emit(t,...r){return t==="resume"&&this[XO]&&this[XO].resume&&this[XO].resume(),super.emit(t,...r)}[j8r](t){this[w0e]=t,t.on("drain",()=>this[Zhs](t))}[Zhs](t){t===this[w0e]&&this.emit("drain")}write(t,r,n){return this[w0e].write(t,r,n)&&(this.flowing||this.buffer.length===0)}end(t,r,n){return this[w0e].end(t,r,n),this}};Lhs.exports=$8r});var Vhs=H((Wig,ejr)=>{(function(){var e;function t(r,n){var a=this instanceof t?this:e;if(a.reset(n),typeof r=="string"&&r.length>0&&a.hash(r),a!==this)return a}t.prototype.hash=function(r){var n,a,o,l,A;switch(A=r.length,this.len+=A,a=this.k1,o=0,this.rem){case 0:a^=A>o?r.charCodeAt(o++)&65535:0;case 1:a^=A>o?(r.charCodeAt(o++)&65535)<<8:0;case 2:a^=A>o?(r.charCodeAt(o++)&65535)<<16:0;case 3:a^=A>o?(r.charCodeAt(o)&255)<<24:0,a^=A>o?(r.charCodeAt(o++)&65280)>>8:0}if(this.rem=A+this.rem&3,A-=this.rem,A>0){for(n=this.h1;a=a*11601+(a&65535)*3432906752&4294967295,a=a<<15|a>>>17,a=a*13715+(a&65535)*461832192&4294967295,n^=a,n=n<<13|n>>>19,n=n*5+3864292196&4294967295,!(o>=A);)a=r.charCodeAt(o++)&65535^(r.charCodeAt(o++)&65535)<<8^(r.charCodeAt(o++)&65535)<<16,l=r.charCodeAt(o++),a^=(l&255)<<24^(l&65280)>>8;switch(a=0,this.rem){case 3:a^=(r.charCodeAt(o+2)&65535)<<16;case 2:a^=(r.charCodeAt(o+1)&65535)<<8;case 1:a^=r.charCodeAt(o)&65535}this.h1=n}return this.k1=a,this},t.prototype.result=function(){var r,n;return r=this.k1,n=this.h1,r>0&&(r=r*11601+(r&65535)*3432906752&4294967295,r=r<<15|r>>>17,r=r*13715+(r&65535)*461832192&4294967295,n^=r),n^=this.len,n^=n>>>16,n=n*51819+(n&65535)*2246770688&4294967295,n^=n>>>13,n=n*44597+(n&65535)*3266445312&4294967295,n^=n>>>16,n>>>0},t.prototype.reset=function(r){return this.h1=typeof r=="number"?r:0,this.rem=this.k1=this.len=0,this},e=new t,typeof ejr<"u"?ejr.exports=t:this.MurmurHash3=t})()});var Whs=H((Oig,Phs)=>{"use strict";var Cvl=Vhs();Phs.exports=function(e){if(e){var t=new Cvl(e);return("00000000"+t.result().toString(16)).slice(-8)}else return(Math.random().toString(16)+"0000000").slice(2,10)}});var tjr=H((Mig,Ohs)=>{var _vl=wt("path"),yvl=Whs();Ohs.exports=function(e,t,r){return _vl.join(e,(t?t+"-":"")+yvl(r))}});var rjr=H((Hig,bvl)=>{bvl.exports={name:"cacache",version:"19.0.1","cache-version":{content:"2",index:"5"},description:"Fast, fault-tolerant, cross-platform, disk-based, data-agnostic, content-addressable cache.",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",snap:"tap",coverage:"tap","test-docker":'docker run -it --rm --name pacotest -v "$PWD":/tmp -w /tmp node:latest npm test',lint:"npm run eslint",npmclilint:"npmcli-lint",lintfix:"npm run eslint -- --fix",postsnap:"npm run lintfix --",postlint:"template-oss-check",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},repository:{type:"git",url:"git+https://github.com/npm/cacache.git"},keywords:["cache","caching","content-addressable","sri","sri hash","subresource integrity","cache","storage","store","file store","filesystem","disk cache","disk storage"],license:"ISC",dependencies:{"@npmcli/fs":"^4.0.0","fs-minipass":"^3.0.0",glob:"^10.2.2","lru-cache":"^10.0.1",minipass:"^7.0.3","minipass-collect":"^2.0.1","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4","p-map":"^7.0.2",ssri:"^12.0.0",tar:"^7.4.3","unique-filename":"^4.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",windowsCI:!1,version:"4.23.3",publish:"true"},author:"GitHub Inc.",tap:{"nyc-arg":["--exclude","tap-snapshots/**"]}}});var njr=H((Yig,Mhs)=>{"use strict";Mhs.exports=Evl;function Evl(e){return[e.slice(0,2),e.slice(2,4),e.slice(4)]}});var zGe=H((Qig,ijr)=>{"use strict";var Svl=rjr()["cache-version"].content,vvl=njr(),Hhs=wt("path"),Bvl=Jte();ijr.exports=wvl;function wvl(e,t){let r=Bvl.parse(t,{single:!0});return Hhs.join(Yhs(e),r.algorithm,...vvl(r.hexDigest()))}ijr.exports.contentDir=Yhs;function Yhs(e){return Hhs.join(e,`content-v${Svl}`)}});var sjr=H((Xig,Qhs)=>{var Tvl=(e,{copy:t,wrap:r})=>{let n={};if(e&&typeof e=="object")for(let a of t)e[a]!==void 0&&(n[a]=e[a]);else n[r]=e;return n};Qhs.exports=Tvl});var Jhs=H((Jig,Xhs)=>{var Rvl=UC(),Nvl=e=>Rvl.satisfies(process.version,e,{includePrerelease:!0});Xhs.exports={satisfies:Nvl}});var Uhs=H((jig,ajr)=>{"use strict";var{inspect:Dvl}=wt("util"),ojr=class{constructor(t,r,n){let a=`${r}: ${n.syscall} returned ${n.code} (${n.message})`;n.path!==void 0&&(a+=` ${n.path}`),n.dest!==void 0&&(a+=` => ${n.dest}`),this.code=t,Object.defineProperties(this,{name:{value:"SystemError",enumerable:!1,writable:!0,configurable:!0},message:{value:a,enumerable:!1,writable:!0,configurable:!0},info:{value:n,enumerable:!0,configurable:!0,writable:!1},errno:{get(){return n.errno},set(o){n.errno=o},enumerable:!0,configurable:!0},syscall:{get(){return n.syscall},set(o){n.syscall=o},enumerable:!0,configurable:!0}}),n.path!==void 0&&Object.defineProperty(this,"path",{get(){return n.path},set(o){n.path=o},enumerable:!0,configurable:!0}),n.dest!==void 0&&Object.defineProperty(this,"dest",{get(){return n.dest},set(o){n.dest=o},enumerable:!0,configurable:!0})}toString(){return`${this.name} [${this.code}]: ${this.message}`}[Symbol.for("nodejs.util.inspect.custom")](t,r){return Dvl(this,{...r,getters:!0,customInspect:!1})}};function sre(e,t){ajr.exports[e]=class extends ojr{constructor(n){super(e,t,n)}}}sre("ERR_FS_CP_DIR_TO_NON_DIR","Cannot overwrite directory with non-directory");sre("ERR_FS_CP_EEXIST","Target already exists");sre("ERR_FS_CP_EINVAL","Invalid src or dest");sre("ERR_FS_CP_FIFO_PIPE","Cannot copy a FIFO pipe");sre("ERR_FS_CP_NON_DIR_TO_DIR","Cannot overwrite non-directory with directory");sre("ERR_FS_CP_SOCKET","Cannot copy a socket file");sre("ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY","Cannot overwrite symlink in subdirectory of self");sre("ERR_FS_CP_UNKNOWN","Cannot copy an unknown file type");sre("ERR_FS_EISDIR","Path is a directory");ajr.exports.ERR_INVALID_ARG_TYPE=class extends Error{constructor(t,r,n){super(),this.code="ERR_INVALID_ARG_TYPE",this.message=`The ${t} argument must be ${r}. Received ${typeof n}`}}});var dms=H((zig,Ams)=>{"use strict";var{ERR_FS_CP_DIR_TO_NON_DIR:kvl,ERR_FS_CP_EEXIST:xvl,ERR_FS_CP_EINVAL:aZt,ERR_FS_CP_FIFO_PIPE:Gvl,ERR_FS_CP_NON_DIR_TO_DIR:Fvl,ERR_FS_CP_SOCKET:Zvl,ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY:Lvl,ERR_FS_CP_UNKNOWN:Vvl,ERR_FS_EISDIR:Pvl,ERR_INVALID_ARG_TYPE:Wvl}=Uhs(),{constants:{errno:{EEXIST:Ovl,EISDIR:Mvl,EINVAL:ore,ENOTDIR:Hvl}}}=wt("os"),{chmod:Yvl,copyFile:Qvl,lstat:nms,mkdir:ims,readdir:Xvl,readlink:Khs,stat:qGe,symlink:cjr,unlink:sms,utimes:Jvl}=wt("fs/promises"),{dirname:H7e,isAbsolute:jhs,join:zhs,parse:Uvl,resolve:Y7e,sep:Kvl,toNamespacedPath:qhs}=wt("path"),{fileURLToPath:jvl}=wt("url"),zvl={dereference:!1,errorOnExist:!1,filter:void 0,force:!0,preserveTimestamps:!1,recursive:!1};async function qvl(e,t,r){if(r!=null&&typeof r!="object")throw new Wvl("options",["Object"],r);return $vl(qhs($hs(e)),qhs($hs(t)),{...zvl,...r})}function $hs(e){return e!=null&&e.href&&e.origin?jvl(e):e}async function $vl(e,t,r){r.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended","TimestampPrecisionWarning");let n=await oms(e,t,r),{srcStat:a,destStat:o}=n;return await cms(e,a,t),r.filter?lms(ems,o,e,t,r):ems(o,e,t,r)}async function oms(e,t,r){let{0:n,1:a}=await eBl(e,t,r);if(a){if(ams(n,a))throw new aZt({message:"src and dest cannot be the same",path:t,syscall:"cp",errno:ore});if(n.isDirectory()&&!a.isDirectory())throw new kvl({message:`cannot overwrite directory ${e} with non-directory ${t}`,path:t,syscall:"cp",errno:Mvl});if(!n.isDirectory()&&a.isDirectory())throw new Fvl({message:`cannot overwrite non-directory ${e} with directory ${t}`,path:t,syscall:"cp",errno:Hvl})}if(n.isDirectory()&&ljr(e,t))throw new aZt({message:`cannot copy ${e} to a subdirectory of self ${t}`,path:t,syscall:"cp",errno:ore});return{srcStat:n,destStat:a}}function ams(e,t){return t.ino&&t.dev&&t.ino===e.ino&&t.dev===e.dev}function eBl(e,t,r){let n=r.dereference?a=>qGe(a,{bigint:!0}):a=>nms(a,{bigint:!0});return Promise.all([n(e),n(t).catch(a=>{if(a.code==="ENOENT")return null;throw a})])}async function ems(e,t,r,n){let a=H7e(r);return await tBl(a)||await ims(a,{recursive:!0}),cZt(e,t,r,n)}function tBl(e){return qGe(e).then(()=>!0,t=>t.code==="ENOENT"?!1:Promise.reject(t))}async function cms(e,t,r){let n=Y7e(H7e(e)),a=Y7e(H7e(r));if(a===n||a===Uvl(a).root)return;let o;try{o=await qGe(a,{bigint:!0})}catch(l){if(l.code==="ENOENT")return;throw l}if(ams(t,o))throw new aZt({message:`cannot copy ${e} to a subdirectory of self ${r}`,path:r,syscall:"cp",errno:ore});return cms(e,t,a)}var tms=e=>Y7e(e).split(Kvl).filter(Boolean);function ljr(e,t){let r=tms(e),n=tms(t);return r.every((a,o)=>n[o]===a)}async function lms(e,t,r,n,a,o){if(await a.filter(r,n))return e(t,r,n,a,o)}function rBl(e,t,r,n){return n.filter?lms(cZt,e,t,r,n):cZt(e,t,r,n)}async function cZt(e,t,r,n){let o=await(n.dereference?qGe:nms)(t);if(o.isDirectory()&&n.recursive)return lBl(o,e,t,r,n);if(o.isDirectory())throw new Pvl({message:`${t} is a directory (not copied)`,path:t,syscall:"cp",errno:ore});if(o.isFile()||o.isCharacterDevice()||o.isBlockDevice())return nBl(o,e,t,r,n);if(o.isSymbolicLink())return gBl(e,t,r);throw o.isSocket()?new Zvl({message:`cannot copy a socket file: ${r}`,path:r,syscall:"cp",errno:ore}):o.isFIFO()?new Gvl({message:`cannot copy a FIFO pipe: ${r}`,path:r,syscall:"cp",errno:ore}):new Vvl({message:`cannot copy an unknown file type: ${r}`,path:r,syscall:"cp",errno:ore})}function nBl(e,t,r,n,a){return t?iBl(e,r,n,a):ums(e,r,n,a)}async function iBl(e,t,r,n){if(n.force)return await sms(r),ums(e,t,r,n);if(n.errorOnExist)throw new xvl({message:`${r} already exists`,path:r,syscall:"cp",errno:Ovl})}async function ums(e,t,r,n){return await Qvl(t,r),n.preserveTimestamps?sBl(e.mode,t,r):lZt(r,e.mode)}async function sBl(e,t,r){return oBl(e)&&await aBl(r,e),rms(e,t,r)}function oBl(e){return(e&128)===0}function aBl(e,t){return lZt(e,t|128)}async function rms(e,t,r){return await cBl(t,r),lZt(r,e)}function lZt(e,t){return Yvl(e,t)}async function cBl(e,t){let r=await qGe(e);return Jvl(t,r.atime,r.mtime)}function lBl(e,t,r,n,a){return t?gms(r,n,a):uBl(e.mode,r,n,a)}async function uBl(e,t,r,n){return await ims(r),await gms(t,r,n),lZt(r,e)}async function gms(e,t,r){let n=await Xvl(e);for(let a=0;a{var dBl=wt("fs/promises"),pBl=sjr(),fBl=Jhs(),IBl=dms(),hBl=fBl.satisfies(">=16.7.0"),mBl=async(e,t,r)=>{let n=pBl(r,{copy:["dereference","errorOnExist","filter","force","preserveTimestamps","recursive"]});return hBl?dBl.cp(e,t,n):IBl(e,t,n)};pms.exports=mBl});var hms=H(($ig,Ims)=>{var{join:CBl,sep:_Bl}=wt("path"),yBl=sjr(),{mkdir:bBl,mkdtemp:EBl,rm:SBl}=wt("fs/promises"),vBl=async(e,t,r)=>{let n=yBl(r,{copy:["tmpPrefix"]});await bBl(e,{recursive:!0});let a=await EBl(CBl(`${e}${_Bl}`,n.tmpPrefix||"")),o,l;try{l=await t(a)}catch(A){o=A}try{await SBl(a,{force:!0,recursive:!0})}catch{}if(o)throw o;return l};Ims.exports=vBl});var yms=H((esg,_ms)=>{var{readdir:mms}=wt("fs/promises"),{join:Cms}=wt("path"),BBl=async e=>{let t=[];for(let r of await mms(e))if(r.startsWith("@"))for(let n of await mms(Cms(e,r)))t.push(Cms(r,n));else t.push(r);return t};_ms.exports=BBl});var wms=H((tsg,Bms)=>{var{dirname:bms,join:Ems,resolve:Sms,relative:wBl,isAbsolute:TBl}=wt("path"),D6=wt("fs/promises"),RBl=async e=>{try{return await D6.access(e),!0}catch(t){return t.code!=="ENOENT"}},vms=async(e,t,r={},n=!0,a=[])=>{if(!e||!t)throw new TypeError("`source` and `destination` file required");if(r={overwrite:!0,...r},!r.overwrite&&await RBl(t))throw new Error(`The destination file exists: ${t}`);await D6.mkdir(bms(t),{recursive:!0});try{await D6.rename(e,t)}catch(o){if(o.code==="EXDEV"||o.code==="EPERM"){let l=await D6.lstat(e);if(l.isDirectory()){let A=await D6.readdir(e);await Promise.all(A.map(f=>vms(Ems(e,f),Ems(t,f),r,!1,a)))}else l.isSymbolicLink()?a.push({source:e,destination:t}):await D6.copyFile(e,t)}else throw o}n&&(await Promise.all(a.map(async({source:o,destination:l})=>{let A=await D6.readlink(o);TBl(A)&&(A=Sms(l,wBl(o,A)));let f="file";try{f=await D6.stat(Sms(bms(o),A)),f.isDirectory()&&(f="junction")}catch{}await D6.symlink(A,l,f)})),await D6.rm(e,{recursive:!0,force:!0}))};Bms.exports=vms});var uZt=H((rsg,Tms)=>{"use strict";var NBl=fms(),DBl=hms(),kBl=yms(),xBl=wms();Tms.exports={cp:NBl,withTempDir:DBl,readdirScoped:kBl,moveFile:xBl}});var gZt={};sI(gZt,{default:()=>Rms,pMapIterable:()=>GBl,pMapSkip:()=>Q7e});async function Rms(e,t,{concurrency:r=Number.POSITIVE_INFINITY,stopOnError:n=!0,signal:a}={}){return new Promise((o,l)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!(Number.isSafeInteger(r)&&r>=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);let A=[],f=[],I=new Map,C=!1,b=!1,E=!1,N=0,B=0,F=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),Q=()=>{ne(a.reason)},X=()=>{a?.removeEventListener("abort",Q)},ae=fe=>{o(fe),X()},ne=fe=>{C=!0,b=!0,l(fe),X()};a&&(a.aborted&&ne(a.reason),a.addEventListener("abort",Q,{once:!0}));let ce=async()=>{if(b)return;let fe=await F.next(),ue=B;if(B++,fe.done){if(E=!0,N===0&&!b){if(!n&&f.length>0){ne(new AggregateError(f));return}if(b=!0,I.size===0){ae(A);return}let de=[];for(let[be,Se]of A.entries())I.get(be)!==Q7e&&de.push(Se);ae(de)}return}N++,(async()=>{try{let de=await fe.value;if(b)return;let be=await t(de,ue);be===Q7e&&I.set(ue,be),A[ue]=be,N--,await ce()}catch(de){if(n)ne(de);else{f.push(de),N--;try{await ce()}catch(be){ne(be)}}}})()};(async()=>{for(let fe=0;fe=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);if(!(Number.isSafeInteger(n)&&n>=r||n===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`backpressure\` to be an integer from \`concurrency\` (${r}) and up or \`Infinity\`, got \`${n}\` (${typeof n})`);return{async*[Symbol.asyncIterator](){let a=e[Symbol.asyncIterator]===void 0?e[Symbol.iterator]():e[Symbol.asyncIterator](),o=[],l=0,A=!1,f=0;function I(){if(A||!(l{let{done:b,value:E}=await a.next();if(b)return l--,{done:!0};I();try{let N=await t(await E,f++);if(l--,N===Q7e){let B=o.indexOf(C);B>0&&o.splice(B,1)}return I(),{done:!1,value:N}}catch(N){return l--,A=!0,{error:N}}})();o.push(C)}for(I();o.length>0;){let{error:C,done:b,value:E}=await o[0];if(o.shift(),C)throw C;if(b)return;I(),E!==Q7e&&(yield E)}}}}var Q7e,AZt=bc(()=>{Q7e=Symbol("skip")});var $Ge=H((isg,JO)=>{"use strict";var FBl=wt("crypto"),{appendFile:ZBl,mkdir:Ajr,readFile:LBl,readdir:VBl,rm:Nms,writeFile:PBl}=wt("fs/promises"),{Minipass:WBl}=rF(),k6=wt("path"),OBl=Jte(),MBl=tjr(),HBl=zGe(),YBl=njr(),QBl=rjr()["cache-version"].index,{moveFile:XBl}=uZt(),ujr=5;JO.exports.NotFoundError=class extends Error{constructor(t,r){super(`No cache entry for ${r} found in ${t}`),this.code="ENOENT",this.cache=t,this.key=r}};JO.exports.compact=JBl;async function JBl(e,t,r,n={}){let a=X7e(e,t),o=await dZt(a),l=[];for(let E=o.length-1;E>=0;--E){let N=o[E];if(N.integrity===null&&!n.validateEntry)break;(!n.validateEntry||n.validateEntry(N)===!0)&&(l.length===0||!l.find(B=>r(B,N)))&&l.unshift(N)}let A=` -`+l.map(E=>{let N=JSON.stringify(E);return`${pZt(N)} ${N}`}).join(` -`),f=async()=>{let E=MBl(k6.join(e,"tmp"),n.tmpPrefix);return await Ajr(k6.dirname(E),{recursive:!0}),{target:E,moved:!1}},I=async E=>{if(!E.moved)return Nms(E.target,{recursive:!0,force:!0})},C=async E=>{await PBl(E.target,A,{flag:"wx"}),await Ajr(k6.dirname(a),{recursive:!0}),await XBl(E.target,a),E.moved=!0},b=await f();try{await C(b)}finally{await I(b)}return l.reverse().map(E=>fZt(e,E,!0))}JO.exports.insert=Dms;async function Dms(e,t,r,n={}){let{metadata:a,size:o,time:l}=n,A=X7e(e,t),f={key:t,integrity:r&&OBl.stringify(r),time:l||Date.now(),size:o,metadata:a};try{await Ajr(k6.dirname(A),{recursive:!0});let I=JSON.stringify(f);await ZBl(A,` -${pZt(I)} ${I}`)}catch(I){if(I.code==="ENOENT")return;throw I}return fZt(e,f)}JO.exports.find=UBl;async function UBl(e,t){let r=X7e(e,t);try{return(await dZt(r)).reduce((a,o)=>o&&o.key===t?fZt(e,o):a,null)}catch(n){if(n.code==="ENOENT")return null;throw n}}JO.exports.delete=KBl;function KBl(e,t,r={}){if(!r.removeFully)return Dms(e,t,null,r);let n=X7e(e,t);return Nms(n,{recursive:!0,force:!0})}JO.exports.lsStream=kms;function kms(e){let t=djr(e),r=new WBl({objectMode:!0});return Promise.resolve().then(async()=>{let{default:n}=await Promise.resolve().then(()=>(AZt(),gZt)),a=await gjr(t);return await n(a,async o=>{let l=k6.join(t,o),A=await gjr(l);await n(A,async f=>{let I=k6.join(l,f),C=await gjr(I);await n(C,async b=>{let E=k6.join(I,b);try{let B=(await dZt(E)).reduce((F,Q)=>(F.set(Q.key,Q),F),new Map);for(let F of B.values()){let Q=fZt(e,F);Q&&r.write(Q)}}catch(N){if(N.code==="ENOENT")return;throw N}},{concurrency:ujr})},{concurrency:ujr})},{concurrency:ujr}),r.end(),r}).catch(n=>r.emit("error",n)),r}JO.exports.ls=jBl;async function jBl(e){return(await kms(e).collect()).reduce((r,n)=>(r[n.key]=n,r),{})}JO.exports.bucketEntries=dZt;async function dZt(e,t){let r=await LBl(e,"utf8");return zBl(r,t)}function zBl(e){let t=[];return e.split(` -`).forEach(r=>{if(!r)return;let n=r.split(" ");if(!n[1]||pZt(n[1])!==n[0])return;let a;try{a=JSON.parse(n[1])}catch{}a&&t.push(a)}),t}JO.exports.bucketDir=djr;function djr(e){return k6.join(e,`index-v${QBl}`)}JO.exports.bucketPath=X7e;function X7e(e,t){let r=xms(t);return k6.join.apply(k6,[djr(e)].concat(YBl(r)))}JO.exports.hashKey=xms;function xms(e){return Gms(e,"sha256")}JO.exports.hashEntry=pZt;function pZt(e){return Gms(e,"sha1")}function Gms(e,t){return FBl.createHash(t).update(e).digest("hex")}function fZt(e,t,r){return!t.integrity&&!r?null:{key:t.key,integrity:t.integrity,path:t.integrity?HBl(e,t.integrity):void 0,size:t.size,time:t.time,metadata:t.metadata}}function gjr(e){return VBl(e).catch(t=>{if(t.code==="ENOENT"||t.code==="ENOTDIR")return[];throw t})}});var J7e=H((ssg,eFe)=>{"use strict";var{LRUCache:qBl}=yIe(),IZt=new qBl({max:500,maxSize:50*1024*1024,ttl:3*60*1e3,sizeCalculation:(e,t)=>t.startsWith("key:")?e.data.length:e.length});eFe.exports.clearMemoized=$Bl;function $Bl(){let e={};return IZt.forEach((t,r)=>{e[r]=t}),IZt.clear(),e}eFe.exports.put=ewl;function ewl(e,t,r,n){hZt(n).set(`key:${e}:${t.key}`,{entry:t,data:r}),Fms(e,t.integrity,r,n)}eFe.exports.put.byDigest=Fms;function Fms(e,t,r,n){hZt(n).set(`digest:${e}:${t}`,r)}eFe.exports.get=twl;function twl(e,t,r){return hZt(r).get(`key:${e}:${t}`)}eFe.exports.get.byDigest=rwl;function rwl(e,t,r){return hZt(r).get(`digest:${e}:${t}`)}var pjr=class{constructor(t){this.obj=t}get(t){return this.obj[t]}set(t,r){this.obj[t]=r}};function hZt(e){return!e||!e.memoize?IZt:e.memoize.get&&e.memoize.set?e.memoize:typeof e.memoize=="object"?new pjr(e.memoize):IZt}});var vZt=H(K7e=>{"use strict";var{Minipass:nwl}=rF(),iwl=wt("events").EventEmitter,qV=wt("fs"),swl=qV.writev,sFe=Symbol("_autoClose"),tJ=Symbol("_close"),U7e=Symbol("_ended"),pb=Symbol("_fd"),Zms=Symbol("_finished"),Oue=Symbol("_flags"),fjr=Symbol("_flush"),hjr=Symbol("_handleChunk"),mjr=Symbol("_makeBuf"),bZt=Symbol("_mode"),mZt=Symbol("_needDrain"),nFe=Symbol("_onerror"),oFe=Symbol("_onopen"),Ijr=Symbol("_onread"),tFe=Symbol("_onwrite"),Mue=Symbol("_open"),are=Symbol("_path"),R0e=Symbol("_pos"),x6=Symbol("_queue"),rFe=Symbol("_read"),Lms=Symbol("_readSize"),Wue=Symbol("_reading"),CZt=Symbol("_remain"),Vms=Symbol("_size"),_Zt=Symbol("_write"),T0e=Symbol("_writing"),yZt=Symbol("_defaultFlag"),iFe=Symbol("_errored"),EZt=class extends nwl{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[iFe]=!1,this[pb]=typeof r.fd=="number"?r.fd:null,this[are]=t,this[Lms]=r.readSize||16*1024*1024,this[Wue]=!1,this[Vms]=typeof r.size=="number"?r.size:1/0,this[CZt]=this[Vms],this[sFe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[pb]=="number"?this[rFe]():this[Mue]()}get fd(){return this[pb]}get path(){return this[are]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Mue](){qV.open(this[are],"r",(t,r)=>this[oFe](t,r))}[oFe](t,r){t?this[nFe](t):(this[pb]=r,this.emit("open",r),this[rFe]())}[mjr](){return Buffer.allocUnsafe(Math.min(this[Lms],this[CZt]))}[rFe](){if(!this[Wue]){this[Wue]=!0;let t=this[mjr]();if(t.length===0)return process.nextTick(()=>this[Ijr](null,0,t));qV.read(this[pb],t,0,t.length,null,(r,n,a)=>this[Ijr](r,n,a))}}[Ijr](t,r,n){this[Wue]=!1,t?this[nFe](t):this[hjr](r,n)&&this[rFe]()}[tJ](){if(this[sFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[nFe](t){this[Wue]=!0,this[tJ](),this.emit("error",t)}[hjr](t,r){let n=!1;return this[CZt]-=t,t>0&&(n=super.write(tthis[oFe](t,r))}[oFe](t,r){this[yZt]&&this[Oue]==="r+"&&t&&t.code==="ENOENT"?(this[Oue]="w",this[Mue]()):t?this[nFe](t):(this[pb]=r,this.emit("open",r),this[T0e]||this[fjr]())}end(t,r){return t&&this.write(t,r),this[U7e]=!0,!this[T0e]&&!this[x6].length&&typeof this[pb]=="number"&&this[tFe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[U7e]?(this.emit("error",new Error("write() after end()")),!1):this[pb]===null||this[T0e]||this[x6].length?(this[x6].push(t),this[mZt]=!0,!1):(this[T0e]=!0,this[_Zt](t),!0)}[_Zt](t){qV.write(this[pb],t,0,t.length,this[R0e],(r,n)=>this[tFe](r,n))}[tFe](t,r){t?this[nFe](t):(this[R0e]!==null&&(this[R0e]+=r),this[x6].length?this[fjr]():(this[T0e]=!1,this[U7e]&&!this[Zms]?(this[Zms]=!0,this[tJ](),this.emit("finish")):this[mZt]&&(this[mZt]=!1,this.emit("drain"))))}[fjr](){if(this[x6].length===0)this[U7e]&&this[tFe](null,0);else if(this[x6].length===1)this[_Zt](this[x6].pop());else{let t=this[x6];this[x6]=[],swl(this[pb],t,this[R0e],(r,n)=>this[tFe](r,n))}}[tJ](){if(this[sFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},_jr=class extends SZt{[Mue](){let t;if(this[yZt]&&this[Oue]==="r+")try{t=qV.openSync(this[are],this[Oue],this[bZt])}catch(r){if(r.code==="ENOENT")return this[Oue]="w",this[Mue]();throw r}else t=qV.openSync(this[are],this[Oue],this[bZt]);this[oFe](null,t)}[tJ](){if(this[sFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.closeSync(t),this.emit("close")}}[_Zt](t){let r=!0;try{this[tFe](null,qV.writeSync(this[pb],t,0,t.length,this[R0e])),r=!1}finally{if(r)try{this[tJ]()}catch{}}}};K7e.ReadStream=EZt;K7e.ReadStreamSync=Cjr;K7e.WriteStream=SZt;K7e.WriteStreamSync=_jr});var bjr=H((asg,aFe)=>{"use strict";var j7e=wt("fs/promises"),owl=vZt(),yjr=Jte(),awl=zGe(),Pms=jGe();aFe.exports=cwl;var Wms=64*1024*1024;async function cwl(e,t,r={}){let{size:n}=r,{stat:a,cpath:o,sri:l}=await z7e(e,t,async(f,I)=>({stat:n?{size:n}:await j7e.stat(f),cpath:f,sri:I}));if(a.size>Wms)return Oms(o,a.size,l,new Pms).concat();let A=await j7e.readFile(o,{encoding:null});if(a.size!==A.length)throw gwl(a.size,A.length);if(!yjr.checkData(A,l))throw Awl(l,o);return A}var Oms=(e,t,r,n)=>(n.push(new owl.ReadStream(e,{size:t,readSize:Wms}),yjr.integrityStream({integrity:r,size:t})),n);aFe.exports.stream=Mms;aFe.exports.readStream=Mms;function Mms(e,t,r={}){let{size:n}=r,a=new Pms;return Promise.resolve().then(async()=>{let{stat:o,cpath:l,sri:A}=await z7e(e,t,async(f,I)=>({stat:n?{size:n}:await j7e.stat(f),cpath:f,sri:I}));return Oms(l,o.size,A,a)}).catch(o=>a.emit("error",o)),a}aFe.exports.copy=lwl;function lwl(e,t,r){return z7e(e,t,n=>j7e.copyFile(n,r))}aFe.exports.hasContent=uwl;async function uwl(e,t){if(!t)return!1;try{return await z7e(e,t,async(r,n)=>{let a=await j7e.stat(r);return{size:a.size,sri:n,stat:a}})}catch(r){if(r.code==="ENOENT")return!1;if(r.code==="EPERM"){if(process.platform!=="win32")throw r;return!1}}}async function z7e(e,t,r){let n=yjr.parse(t),a=n.pickAlgorithm(),o=n[a];if(o.length<=1){let l=awl(e,o[0]);return r(l,o[0])}else{let l=await Promise.all(o.map(async I=>{try{return await z7e(e,I,r)}catch(C){return C.code==="ENOENT"?Object.assign(new Error("No matching content found for "+n.toString()),{code:"ENOENT"}):C}})),A=l.find(I=>!(I instanceof Error));if(A)return A;let f=l.find(I=>I.code==="ENOENT");throw f||l.find(I=>I instanceof Error)}}function gwl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function Awl(e,t){let r=new Error(`Integrity verification failed for ${e} (${t})`);return r.code="EINTEGRITY",r.sri=e,r.path=t,r}});var Xms=H((csg,lre)=>{"use strict";var Hms=U8r(),{Minipass:Yms}=rF(),Qms=jGe(),N0e=$Ge(),cre=J7e(),D0e=bjr();async function dwl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=cre.get(e,t,r);if(l&&a!==!1)return{metadata:l.entry.metadata,data:l.data,integrity:l.entry.integrity,size:l.entry.size};let A=await N0e.find(e,t,r);if(!A)throw new N0e.NotFoundError(e,t);let f=await D0e(e,A.integrity,{integrity:n,size:o});return a&&cre.put(e,A,f,r),{data:f,metadata:A.metadata,size:A.size,integrity:A.integrity}}lre.exports=dwl;async function pwl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=cre.get.byDigest(e,t,r);if(l&&a!==!1)return l;let A=await D0e(e,t,{integrity:n,size:o});return a&&cre.put.byDigest(e,t,A,r),A}lre.exports.byDigest=pwl;var fwl=e=>{let t=new Yms;return t.on("newListener",function(r,n){r==="metadata"&&n(e.entry.metadata),r==="integrity"&&n(e.entry.integrity),r==="size"&&n(e.entry.size)}),t.end(e.data),t};function Iwl(e,t,r={}){let{memoize:n,size:a}=r,o=cre.get(e,t,r);if(o&&n!==!1)return fwl(o);let l=new Qms;return Promise.resolve().then(async()=>{let A=await N0e.find(e,t);if(!A)throw new N0e.NotFoundError(e,t);l.emit("metadata",A.metadata),l.emit("integrity",A.integrity),l.emit("size",A.size),l.on("newListener",function(I,C){I==="metadata"&&C(A.metadata),I==="integrity"&&C(A.integrity),I==="size"&&C(A.size)});let f=D0e.readStream(e,A.integrity,{...r,size:typeof a!="number"?A.size:a});if(n){let I=new Hms.PassThrough;I.on("collect",C=>cre.put(e,A,C,r)),l.unshift(I)}return l.unshift(f),l}).catch(A=>l.emit("error",A)),l}lre.exports.stream=Iwl;function hwl(e,t,r={}){let{memoize:n}=r,a=cre.get.byDigest(e,t,r);if(a&&n!==!1){let o=new Yms;return o.end(a),o}else{let o=D0e.readStream(e,t,r);if(!n)return o;let l=new Hms.PassThrough;return l.on("collect",A=>cre.put.byDigest(e,t,A,r)),new Qms(o,l)}}lre.exports.stream.byDigest=hwl;function mwl(e,t,r={}){let{memoize:n}=r,a=cre.get(e,t,r);return a&&n!==!1?Promise.resolve(a.entry):N0e.find(e,t)}lre.exports.info=mwl;async function Cwl(e,t,r,n={}){let a=await N0e.find(e,t,n);if(!a)throw new N0e.NotFoundError(e,t);return await D0e.copy(e,a.integrity,r,n),{metadata:a.metadata,size:a.size,integrity:a.integrity}}lre.exports.copy=Cwl;async function _wl(e,t,r,n={}){return await D0e.copy(e,t,r,n),t}lre.exports.copy.byDigest=_wl;lre.exports.hasContent=D0e.hasContent});var zms=H((lsg,Bjr)=>{"use strict";var Jms=wt("events"),ywl=zGe(),$7e=wt("fs/promises"),{moveFile:bwl}=uZt(),{Minipass:Ewl}=rF(),Ums=jGe(),Swl=sZt(),Ejr=wt("path"),Sjr=Jte(),vwl=tjr(),Bwl=vZt();Bjr.exports=wwl;var q7e=new Map;async function wwl(e,t,r={}){let{algorithms:n,size:a,integrity:o}=r;if(typeof a=="number"&&t.length!==a)throw Dwl(a,t.length);let l=Sjr.fromData(t,n?{algorithms:n}:{});if(o&&!Sjr.checkData(t,o,r))throw kwl(o,l);for(let A in l){let f=await Kms(e,r),I=l[A].toString();try{await $7e.writeFile(f.target,t,{flag:"wx"}),await jms(f,e,I,r)}finally{f.moved||await $7e.rm(f.target,{recursive:!0,force:!0})}}return{integrity:l,size:t.length}}Bjr.exports.stream=Twl;var vjr=class extends Swl{constructor(t,r){super(),this.opts=r,this.cache=t,this.inputStream=new Ewl,this.inputStream.on("error",n=>this.emit("error",n)),this.inputStream.on("drain",()=>this.emit("drain")),this.handleContentP=null}write(t,r,n){return this.handleContentP||(this.handleContentP=Rwl(this.inputStream,this.cache,this.opts),this.handleContentP.catch(a=>this.emit("error",a))),this.inputStream.write(t,r,n)}flush(t){this.inputStream.end(()=>{if(!this.handleContentP){let r=new Error("Cache input stream was empty");return r.code="ENODATA",Promise.reject(r).catch(t)}this.handleContentP.then(r=>{r.integrity&&this.emit("integrity",r.integrity),r.size!==null&&this.emit("size",r.size),t()},r=>t(r))})}};function Twl(e,t={}){return new vjr(e,t)}async function Rwl(e,t,r){let n=await Kms(t,r);try{let a=await Nwl(e,t,n.target,r);return await jms(n,t,a.integrity,r),a}finally{n.moved||await $7e.rm(n.target,{recursive:!0,force:!0})}}async function Nwl(e,t,r,n){let a=new Bwl.WriteStream(r,{flags:"wx"});if(n.integrityEmitter){let[I,C]=await Promise.all([Jms.once(n.integrityEmitter,"integrity").then(b=>b[0]),Jms.once(n.integrityEmitter,"size").then(b=>b[0]),new Ums(e,a).promise()]);return{integrity:I,size:C}}let o,l,A=Sjr.integrityStream({integrity:n.integrity,algorithms:n.algorithms,size:n.size});return A.on("integrity",I=>{o=I}),A.on("size",I=>{l=I}),await new Ums(e,A,a).promise(),{integrity:o,size:l}}async function Kms(e,t){let r=vwl(Ejr.join(e,"tmp"),t.tmpPrefix);return await $7e.mkdir(Ejr.dirname(r),{recursive:!0}),{target:r,moved:!1}}async function jms(e,t,r){let n=ywl(t,r),a=Ejr.dirname(n);return q7e.has(n)||q7e.set(n,$7e.mkdir(a,{recursive:!0}).then(async()=>(await bwl(e.target,n,{overwrite:!1}),e.moved=!0,e.moved)).catch(o=>{if(!o.message.startsWith("The destination file exists"))throw Object.assign(o,{code:"EEXIST"})}).finally(()=>{q7e.delete(n)})),q7e.get(n)}function Dwl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function kwl(e,t){let r=new Error(`Integrity check failed: +\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var NIs=H(RIs=>{"use strict";var T8r=tre().Buffer;RIs._dbcs=rre;var px=-1,TIs=-2,WH=-10,pL=-1e3,QGe=new Array(256),V7e=-1;for(KFt=0;KFt<256;KFt++)QGe[KFt]=px;var KFt;function rre(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=QGe.slice(0),this.decodeTableSeq=[];for(var n=0;npL)throw new Error("gb18030 decode tables conflict at byte 2");for(var I=this.decodeTables[pL-A[f]],C=129;C<=254;C++){if(I[C]===px)I[C]=pL-o;else{if(I[C]===pL-o)continue;if(I[C]>pL)throw new Error("gb18030 decode tables conflict at byte 3")}for(var b=this.decodeTables[pL-I[C]],E=48;E<=57;E++)b[E]===px&&(b[E]=TIs)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var N={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var a=r[t[n]];if(a==px)r[t[n]]=pL-this.decodeTables.length,this.decodeTables.push(r=QGe.slice(0));else if(a<=pL)r=this.decodeTables[pL-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};rre.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};rre.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=QGe.slice(0)),this.encodeTable[t]};rre.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=WH?this.encodeTableSeq[WH-r[n]][V7e]=t:r[n]==px&&(r[n]=t)};rre.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),a=r&255,o;n[a]<=WH?o=this.encodeTableSeq[WH-n[a]]:(o={},n[a]!==px&&(o[V7e]=n[a]),n[a]=WH-this.encodeTableSeq.length,this.encodeTableSeq.push(o));for(var l=1;l=0)this._setEncodeChar(A,f),a=!0;else if(A<=pL){var I=pL-A;if(!o[I]){var C=f<<8>>>0;this._fillEncodeTable(I,C,r)?a=!0:o[I]=!0}}else A<=WH&&(this._setEncodeSequence(this.decodeTableSeq[WH-A],f),a=!0)}return a};function jFt(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}jFt.prototype.write=function(e){for(var t=T8r.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,a=-1,o=0,l=0;;){if(a===-1){if(o==e.length)break;var A=e.charCodeAt(o++)}else{var A=a;a=-1}if(55296<=A&&A<57344)if(A<56320)if(r===-1){r=A;continue}else r=A,A=px;else r!==-1?(A=65536+(r-55296)*1024+(A-56320),r=-1):A=px;else r!==-1&&(a=A,A=px,r=-1);var f=px;if(n!==void 0&&A!=px){var I=n[A];if(typeof I=="object"){n=I;continue}else typeof I=="number"?f=I:I==null&&(I=n[V7e],I!==void 0&&(f=I,a=A));n=void 0}else if(A>=0){var C=this.encodeTable[A>>8];if(C!==void 0&&(f=C[A&255]),f<=WH){n=this.encodeTableSeq[WH-f];continue}if(f==px&&this.gb18030){var b=N8r(this.gb18030.uChars,A);if(b!=-1){var f=this.gb18030.gbChars[b]+(A-this.gb18030.uChars[b]);t[l++]=129+Math.floor(f/12600),f=f%12600,t[l++]=48+Math.floor(f/1260),f=f%1260,t[l++]=129+Math.floor(f/10),f=f%10,t[l++]=48+f;continue}}}f===px&&(f=this.defaultCharSingleByte),f<256?t[l++]=f:f<65536?(t[l++]=f>>8,t[l++]=f&255):f<16777216?(t[l++]=f>>16,t[l++]=f>>8&255,t[l++]=f&255):(t[l++]=f>>>24,t[l++]=f>>>16&255,t[l++]=f>>>8&255,t[l++]=f&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,l)};jFt.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=T8r.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[V7e];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};jFt.prototype.findIdx=N8r;function R8r(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}R8r.prototype.write=function(e){for(var t=T8r.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,a=this.prevBytes.length,o=-this.prevBytes.length,l,A=0,f=0;A=0?e[A]:n[A+a],l=this.decodeTables[r][I];if(!(l>=0))if(l===px)l=this.defaultCharUnicode.charCodeAt(0),A=o;else if(l===TIs){if(A>=3)var C=(e[A-3]-129)*12600+(e[A-2]-48)*1260+(e[A-1]-129)*10+(I-48);else var C=(n[A-3+a]-129)*12600+((A-2>=0?e[A-2]:n[A-2+a])-48)*1260+((A-1>=0?e[A-1]:n[A-1+a])-129)*10+(I-48);var b=N8r(this.gb18030.gbChars,C);l=this.gb18030.uChars[b]+C-this.gb18030.gbChars[b]}else if(l<=pL){r=pL-l;continue}else if(l<=WH){for(var E=this.decodeTableSeq[WH-l],N=0;N>8;l=E[E.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+l+" at "+r+"/"+I);if(l>=65536){l-=65536;var B=55296|l>>10;t[f++]=B&255,t[f++]=B>>8,l=56320|l&1023}t[f++]=l&255,t[f++]=l>>8,r=0,o=A+1}return this.nodeIdx=r,this.prevBytes=o>=0?Array.prototype.slice.call(e,o):n.slice(o+a).concat(Array.prototype.slice.call(e)),t.slice(0,f).toString("ucs2")};R8r.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function N8r(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[a]<=t?r=a:n=a}return r}});var DIs=H((_sg,jSl)=>{jSl.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var kIs=H((ysg,zSl)=>{zSl.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var zFt=H((bsg,qSl)=>{qSl.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var D8r=H((Esg,$Sl)=>{$Sl.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var xIs=H((Ssg,evl)=>{evl.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var GIs=H((vsg,tvl)=>{tvl.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var k8r=H((Bsg,rvl)=>{rvl.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var FIs=H((wsg,nvl)=>{nvl.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var LIs=H((Tsg,ZIs)=>{"use strict";ZIs.exports={shiftjis:{type:"_dbcs",table:function(){return DIs()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return kIs()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return zFt()}},gbk:{type:"_dbcs",table:function(){return zFt().concat(D8r())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return zFt().concat(D8r())},gb18030:function(){return xIs()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return GIs()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return k8r()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return k8r().concat(FIs())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var WIs=H((PIs,XGe)=>{"use strict";var VIs=[dIs(),IIs(),CIs(),yIs(),EIs(),vIs(),wIs(),NIs(),LIs()];for(qFt=0;qFt{"use strict";var OIs=tre().Buffer;MIs.exports=function(e){var t=e.Transform;function r(a,o){this.conv=a,o=o||{},o.decodeStrings=!1,t.call(this,o)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,o,l){if(typeof a!="string")return l(new Error("Iconv encoding stream needs strings as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A),l()}catch(f){l(f)}},r.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o),a()}catch(l){a(l)}},r.prototype.collect=function(a){var o=[];return this.on("error",a),this.on("data",function(l){o.push(l)}),this.on("end",function(){a(null,OIs.concat(o))}),this};function n(a,o){this.conv=a,o=o||{},o.encoding=this.encoding="utf8",t.call(this,o)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(a,o,l){if(!OIs.isBuffer(a)&&!(a instanceof Uint8Array))return l(new Error("Iconv decoding stream needs buffers as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A,this.encoding),l()}catch(f){l(f)}},n.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o,this.encoding),a()}catch(l){a(l)}},n.prototype.collect=function(a){var o="";return this.on("error",a),this.on("data",function(l){o+=l}),this.on("end",function(){a(null,o)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var JIs=H((Nsg,XIs)=>{"use strict";var YIs=tre().Buffer,QIs=gIs(),zI=XIs.exports;zI.encodings=null;zI.defaultCharUnicode="\uFFFD";zI.defaultCharSingleByte="?";zI.encode=function(t,r,n){t=""+(t||"");var a=zI.getEncoder(r,n),o=a.write(t),l=a.end();return l&&l.length>0?YIs.concat([o,l]):o};zI.decode=function(t,r,n){typeof t=="string"&&(zI.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),zI.skipDecodeWarning=!0),t=YIs.from(""+(t||""),"binary"));var a=zI.getDecoder(r,n),o=a.write(t),l=a.end();return l?o+l:o};zI.encodingExists=function(t){try{return zI.getCodec(t),!0}catch{return!1}};zI.toEncoding=zI.encode;zI.fromEncoding=zI.decode;zI._codecDataCache={};zI.getCodec=function(t){zI.encodings||(zI.encodings=WIs());for(var r=zI._canonicalizeEncoding(t),n={};;){var a=zI._codecDataCache[r];if(a)return a;var o=zI.encodings[r];switch(typeof o){case"string":r=o;break;case"object":for(var l in o)n[l]=o[l];n.encodingName||(n.encodingName=r),r=o.type;break;case"function":return n.encodingName||(n.encodingName=r),a=new o(n,zI),zI._codecDataCache[n.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};zI._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};zI.getEncoder=function(t,r){var n=zI.getCodec(t),a=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(a=new QIs.PrependBOM(a,r)),a};zI.getDecoder=function(t,r){var n=zI.getCodec(t),a=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(a=new QIs.StripBOM(a,r)),a};zI.enableStreamingAPI=function(t){if(!zI.supportsStreams){var r=HIs()(t);zI.IconvLiteEncoderStream=r.IconvLiteEncoderStream,zI.IconvLiteDecoderStream=r.IconvLiteDecoderStream,zI.encodeStream=function(a,o){return new zI.IconvLiteEncoderStream(zI.getEncoder(a,o),o)},zI.decodeStream=function(a,o){return new zI.IconvLiteDecoderStream(zI.getDecoder(a,o),o)},zI.supportsStreams=!0}};var eZt;try{eZt=wt("stream")}catch{}eZt&&eZt.Transform?zI.enableStreamingAPI(eZt):zI.encodeStream=zI.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var jIs=H((Dsg,KIs)=>{"use strict";var tZt=JIs();KIs.exports.convert=ivl;function ivl(e,t,r){r=UIs(r||"UTF-8"),t=UIs(t||"UTF-8"),e=e||"";var n;if(r!=="UTF-8"&&typeof e=="string"&&(e=Buffer.from(e,"binary")),r===t)typeof e=="string"?n=Buffer.from(e):n=e;else try{n=svl(e,t,r)}catch(a){console.error(a),n=e}return typeof n=="string"&&(n=Buffer.from(n,"utf-8")),n}function svl(e,t,r){return t==="UTF-8"?tZt.decode(e,r):r==="UTF-8"?tZt.encode(e,t):tZt.encode(tZt.decode(e,r),t)}function UIs(e){return(e||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}});var nZt=H((ksg,$Is)=>{"use strict";var{Minipass:N6}=rF(),x8r=sIs(),qIs=aIs(),{BUFFER:ovl}=qIs,P7e=jKr(),G8r;try{G8r=jIs().convert}catch{}var nre=Symbol("Body internals"),v0e=Symbol("consumeBody"),rZt=class{constructor(t,r={}){let{size:n=0,timeout:a=0}=r,o=t==null?null:zIs(t)?Buffer.from(t.toString()):W7e(t)||Buffer.isBuffer(t)?t:Object.prototype.toString.call(t)==="[object ArrayBuffer]"?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):N6.isStream(t)?t:Buffer.from(String(t));this[nre]={body:o,disturbed:!1,error:null},this.size=n,this.timeout=a,N6.isStream(o)&&o.on("error",l=>{let A=l.name==="AbortError"?l:new P7e(`Invalid response while trying to fetch ${this.url}: ${l.message}`,"system",l);this[nre].error=A})}get body(){return this[nre].body}get bodyUsed(){return this[nre].disturbed}arrayBuffer(){return this[v0e]().then(t=>t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength))}blob(){let t=this.headers&&this.headers.get("content-type")||"";return this[v0e]().then(r=>Object.assign(new qIs([],{type:t.toLowerCase()}),{[ovl]:r}))}async json(){let t=await this[v0e]();try{return JSON.parse(t.toString())}catch(r){throw new P7e(`invalid json response body at ${this.url} reason: ${r.message}`,"invalid-json")}}text(){return this[v0e]().then(t=>t.toString())}buffer(){return this[v0e]()}textConverted(){return this[v0e]().then(t=>avl(t,this.headers))}[v0e](){if(this[nre].disturbed)return Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[nre].disturbed=!0,this[nre].error)return Promise.reject(this[nre].error);if(this.body===null)return Promise.resolve(Buffer.alloc(0));if(Buffer.isBuffer(this.body))return Promise.resolve(this.body);let t=W7e(this.body)?this.body.stream():this.body;if(!N6.isStream(t))return Promise.resolve(Buffer.alloc(0));let r=this.size&&t instanceof x8r||!this.size&&t instanceof N6&&!(t instanceof x8r)?t:this.size?new x8r({size:this.size}):new N6,n=this.timeout&&r.writable?setTimeout(()=>{r.emit("error",new P7e(`Response timeout while trying to fetch ${this.url} (over ${this.timeout}ms)`,"body-timeout"))},this.timeout):null;return n&&n.unref&&n.unref(),new Promise(a=>{r!==t&&(t.on("error",o=>r.emit("error",o)),t.pipe(r)),a()}).then(()=>r.concat()).then(a=>(clearTimeout(n),a)).catch(a=>{throw clearTimeout(n),a.name==="AbortError"||a.name==="FetchError"?a:a.name==="RangeError"?new P7e(`Could not create Buffer from response body for ${this.url}: ${a.message}`,"system",a):new P7e(`Invalid response body while trying to fetch ${this.url}: ${a.message}`,"system",a)})}static clone(t){if(t.bodyUsed)throw new Error("cannot clone body after it is used");let r=t.body;if(N6.isStream(r)&&typeof r.getBoundary!="function"){let n=new N6,a=new N6,o=new N6;return n.on("error",l=>{a.emit("error",l),o.emit("error",l)}),r.on("error",l=>n.emit("error",l)),n.pipe(a),n.pipe(o),r.pipe(n),t[nre].body=a,o}else return t.body}static extractContentType(t){return t==null?null:typeof t=="string"?"text/plain;charset=UTF-8":zIs(t)?"application/x-www-form-urlencoded;charset=UTF-8":W7e(t)?t.type||null:Buffer.isBuffer(t)||Object.prototype.toString.call(t)==="[object ArrayBuffer]"||ArrayBuffer.isView(t)?null:typeof t.getBoundary=="function"?`multipart/form-data;boundary=${t.getBoundary()}`:N6.isStream(t)?null:"text/plain;charset=UTF-8"}static getTotalBytes(t){let{body:r}=t;return r==null?0:W7e(r)?r.size:Buffer.isBuffer(r)?r.length:r&&typeof r.getLengthSync=="function"&&(r._lengthRetrievers&&r._lengthRetrievers.length===0||r.hasKnownLength&&r.hasKnownLength())?r.getLengthSync():null}static writeToStream(t,r){let{body:n}=r;return n==null?t.end():Buffer.isBuffer(n)||typeof n=="string"?t.end(n):(W7e(n)?n.stream():n).on("error",o=>t.emit("error",o)).pipe(t),t}};Object.defineProperties(rZt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});var zIs=e=>typeof e!="object"||typeof e.append!="function"||typeof e.delete!="function"||typeof e.get!="function"||typeof e.getAll!="function"||typeof e.has!="function"||typeof e.set!="function"?!1:e.constructor.name==="URLSearchParams"||Object.prototype.toString.call(e)==="[object URLSearchParams]"||typeof e.sort=="function",W7e=e=>typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&typeof e.constructor.name=="string"&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag]),avl=(e,t)=>{if(typeof G8r!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=t&&t.get("content-type"),n="utf-8",a;r&&(a=/charset=([^;]*)/i.exec(r));let o=e.slice(0,1024).toString();return!a&&o&&(a=/{"use strict";var ths=/[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/,Z8r=/[^\t\x20-\x7e\x80-\xff]/,O7e=e=>{if(e=`${e}`,ths.test(e)||e==="")throw new TypeError(`${e} is not a legal HTTP header name`)},ehs=e=>{if(e=`${e}`,Z8r.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)},JGe=(e,t)=>{t=t.toLowerCase();for(let r in e)if(r.toLowerCase()===t)return r},Aw=Symbol("map"),iZt=class e{constructor(t=void 0){if(this[Aw]=Object.create(null),t instanceof e){let r=t.raw(),n=Object.keys(r);for(let a of n)for(let o of r[a])this.append(a,o);return}if(t!=null)if(typeof t=="object"){let r=t[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let n=[];for(let a of t){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");let o=Array.from(a);if(o.length!==2)throw new TypeError("Each header pair must be a name/value tuple");n.push(o)}for(let a of n)this.append(a[0],a[1])}else for(let n of Object.keys(t))this.append(n,t[n])}else throw new TypeError("Provided initializer must be an object")}get(t){t=`${t}`,O7e(t);let r=JGe(this[Aw],t);return r===void 0?null:this[Aw][r].join(", ")}forEach(t,r=void 0){let n=L8r(this);for(let a=0;aObject.keys(e[Aw]).sort().map(t==="key"?r=>r.toLowerCase():t==="value"?r=>e[Aw][r].join(", "):r=>[r.toLowerCase(),e[Aw][r].join(", ")]),F8r=Symbol("internal"),B0e=class e{constructor(t,r){this[F8r]={target:t,kind:r,index:0}}get[Symbol.toStringTag](){return"HeadersIterator"}next(){if(!this||Object.getPrototypeOf(this)!==e.prototype)throw new TypeError("Value of `this` is not a HeadersIterator");let{target:t,kind:r,index:n}=this[F8r],a=L8r(t,r),o=a.length;return n>=o?{value:void 0,done:!0}:(this[F8r].index++,{value:a[n],done:!1})}};Object.setPrototypeOf(B0e.prototype,Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));rhs.exports=iZt});var ohs=H((Gsg,shs)=>{"use strict";var cvl=wt("http"),{STATUS_CODES:lvl}=cvl,nhs=sZt(),ihs=nZt(),{clone:uvl,extractContentType:gvl}=ihs,ire=Symbol("Response internals"),oZt=class e extends ihs{constructor(t=null,r={}){super(t,r);let n=r.status||200,a=new nhs(r.headers);if(t!=null&&!a.has("Content-Type")){let o=gvl(t);o&&a.append("Content-Type",o)}this[ire]={url:r.url,status:n,statusText:r.statusText||lvl[n],headers:a,counter:r.counter,trailer:Promise.resolve(r.trailer||new nhs)}}get trailer(){return this[ire].trailer}get url(){return this[ire].url||""}get status(){return this[ire].status}get ok(){return this[ire].status>=200&&this[ire].status<300}get redirected(){return this[ire].counter>0}get statusText(){return this[ire].statusText}get headers(){return this[ire].headers}clone(){return new e(uvl(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,trailer:this.trailer})}get[Symbol.toStringTag](){return"Response"}};shs.exports=oZt;Object.defineProperties(oZt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var ahs=H((Fsg,Avl)=>{Avl.exports={name:"minipass-fetch",version:"4.0.1",description:"An implementation of window.fetch in Node.js using Minipass streams",license:"MIT",main:"lib/index.js",scripts:{"test:tls-fixtures":"./test/fixtures/tls/setup.sh",test:"tap",snap:"tap",lint:"npm run eslint",postlint:"template-oss-check",lintfix:"npm run eslint -- --fix",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},tap:{"coverage-map":"map.js","check-coverage":!0,"nyc-arg":["--exclude","tap-snapshots/**"]},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3","@ungap/url-search-params":"^0.2.2","abort-controller":"^3.0.0","abortcontroller-polyfill":"~1.7.3",encoding:"^0.1.13","form-data":"^4.0.0",nock:"^13.2.4",parted:"^0.1.1","string-to-arraybuffer":"^1.0.2",tap:"^16.0.0"},dependencies:{minipass:"^7.0.3","minipass-sized":"^1.0.3",minizlib:"^3.0.1"},optionalDependencies:{encoding:"^0.1.13"},repository:{type:"git",url:"git+https://github.com/npm/minipass-fetch.git"},keywords:["fetch","minipass","node-fetch","window.fetch"],files:["bin/","lib/"],engines:{node:"^18.17.0 || >=20.5.0"},author:"GitHub Inc.",templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.3",publish:"true"}}});var uhs=H((Zsg,lhs)=>{"use strict";var{URL:V8r}=wt("url"),{Minipass:dvl}=rF(),P8r=sZt(),{exportNodeCompatibleHeaders:pvl}=P8r,chs=nZt(),{clone:fvl,extractContentType:Ivl,getTotalBytes:hvl}=chs,mvl=ahs().version,Cvl=`minipass-fetch/${mvl} (+https://github.com/isaacs/minipass-fetch)`,eJ=Symbol("Request internals"),aZt=e=>typeof e=="object"&&typeof e[eJ]=="object",_vl=e=>{let t=e&&typeof e=="object"&&Object.getPrototypeOf(e);return!!(t&&t.constructor.name==="AbortSignal")},cZt=class e extends chs{constructor(t,r={}){let n=aZt(t)?new V8r(t.url):t&&t.href?new V8r(t.href):new V8r(`${t}`);aZt(t)?r={...t[eJ],...r}:(!t||typeof t=="string")&&(t={});let a=(r.method||t.method||"GET").toUpperCase(),o=a==="GET"||a==="HEAD";if((r.body!==null&&r.body!==void 0||aZt(t)&&t.body!==null)&&o)throw new TypeError("Request with GET/HEAD method cannot have body");let l=r.body!==null&&r.body!==void 0?r.body:aZt(t)&&t.body!==null?fvl(t):null;super(l,{timeout:r.timeout||t.timeout||0,size:r.size||t.size||0});let A=new P8r(r.headers||t.headers||{});if(l!=null&&!A.has("Content-Type")){let De=Ivl(l);De&&A.append("Content-Type",De)}let f="signal"in r?r.signal:null;if(f!=null&&!_vl(f))throw new TypeError("Expected signal must be an instanceof AbortSignal");let{ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:X,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0",secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se}=r;this[eJ]={method:a,redirect:r.redirect||t.redirect||"follow",headers:A,parsedURL:n,signal:f,ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:X,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe,secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se},this.follow=r.follow!==void 0?r.follow:t.follow!==void 0?t.follow:20,this.compress=r.compress!==void 0?r.compress:t.compress!==void 0?t.compress:!0,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent}get method(){return this[eJ].method}get url(){return this[eJ].parsedURL.toString()}get headers(){return this[eJ].headers}get redirect(){return this[eJ].redirect}get signal(){return this[eJ].signal}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}static getNodeRequestOptions(t){let r=t[eJ].parsedURL,n=new P8r(t[eJ].headers);if(n.has("Accept")||n.set("Accept","*/*"),!/^https?:$/.test(r.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&dvl.isStream(t.body)&&typeof t.body.destroy!="function")throw new Error("Cancellation of streamed requests with AbortSignal is not supported");let a=(t.body===null||t.body===void 0)&&/^(POST|PUT)$/i.test(t.method)?"0":t.body!==null&&t.body!==void 0?hvl(t):null;a&&n.set("Content-Length",a+""),n.has("User-Agent")||n.set("User-Agent",Cvl),t.compress&&!n.has("Accept-Encoding")&&n.set("Accept-Encoding","gzip,deflate");let o=typeof t.agent=="function"?t.agent(r):t.agent;!n.has("Connection")&&!o&&n.set("Connection","close");let{ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:X,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue}=t[eJ];return{...{auth:r.username||r.password?`${r.username}:${r.password}`:"",host:r.host,hostname:r.hostname,path:`${r.pathname}${r.search}`,port:r.port,protocol:r.protocol},method:t.method,headers:pvl(n),agent:o,ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:X,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue,timeout:t.timeout}}};lhs.exports=cZt;Object.defineProperties(cZt.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}})});var Ahs=H((Lsg,ghs)=>{"use strict";var W8r=class extends Error{constructor(t){super(t),this.code="FETCH_ABORTED",this.type="aborted",Error.captureStackTrace(this,this.constructor)}get name(){return"AbortError"}set name(t){}};ghs.exports=W8r});var Y7e=H((Vsg,fhs)=>{"use strict";var{URL:M7e}=wt("url"),yvl=wt("http"),bvl=wt("https"),UGe=Ufs(),{Minipass:dhs}=rF(),Evl=nZt(),{writeToStream:Svl,getTotalBytes:vvl}=Evl,w0e=ohs(),M8r=sZt(),{createHeadersLenient:phs}=M8r,H7e=uhs(),{getNodeRequestOptions:Bvl}=H7e,Wue=jKr(),O8r=Ahs(),sre=async(e,t)=>{if(/^data:/.test(e)){let r=new H7e(e,t);return Promise.resolve().then(()=>new Promise((n,a)=>{let o,l;try{let{pathname:I,search:C}=new M7e(e),b=I.split(",");if(b.length<2)throw new Error("invalid data: URI");let E=b.shift(),N=/;base64$/.test(E);o=N?E.slice(0,-1*7):E;let B=decodeURIComponent(b.join(",")+C);l=N?Buffer.from(B,"base64"):Buffer.from(B)}catch(I){return a(new Wue(`[${r.method}] ${r.url} invalid URL, ${I.message}`,"system",I))}let{signal:A}=r;if(A&&A.aborted)return a(new O8r("The user aborted a request."));let f={"Content-Length":l.length};return o&&(f["Content-Type"]=o),n(new w0e(l,{headers:f}))}))}return new Promise((r,n)=>{let a=new H7e(e,t),o;try{o=Bvl(a)}catch(B){return n(B)}let l=(o.protocol==="https:"?bvl:yvl).request,{signal:A}=a,f=null,I=()=>{let B=new O8r("The user aborted a request.");n(B),dhs.isStream(a.body)&&typeof a.body.destroy=="function"&&a.body.destroy(B),f&&f.body&&f.body.emit("error",B)};if(A&&A.aborted)return I();let C=()=>{I(),b()},b=()=>{E.abort(),A&&A.removeEventListener("abort",C),clearTimeout(N)},E=l(o);A&&A.addEventListener("abort",C);let N=null;a.timeout&&E.once("socket",()=>{N=setTimeout(()=>{n(new Wue(`network timeout at: ${a.url}`,"request-timeout")),b()},a.timeout)}),E.on("error",B=>{E.res&&E.res.emit("error",B),n(new Wue(`request to ${a.url} failed, reason: ${B.message}`,"system",B)),b()}),E.on("response",B=>{clearTimeout(N);let F=phs(B.headers);if(sre.isRedirect(B.statusCode)){let fe=F.get("Location"),ue=null;try{ue=fe===null?null:new M7e(fe,a.url).toString()}catch{if(a.redirect!=="manual"){n(new Wue(`uri requested responds with an invalid redirect URL: ${fe}`,"invalid-redirect")),b();return}}if(a.redirect==="error"){n(new Wue(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),b();return}else if(a.redirect==="manual"){if(ue!==null)try{F.set("Location",ue)}catch(de){n(de)}}else if(a.redirect==="follow"&&ue!==null){if(a.counter>=a.follow){n(new Wue(`maximum redirect reached at: ${a.url}`,"max-redirect")),b();return}if(B.statusCode!==303&&a.body&&vvl(a)===null){n(new Wue("Cannot follow redirect with body being a readable stream","unsupported-redirect")),b();return}a.headers.set("host",new M7e(ue).host);let de={headers:new M8r(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout},be=new M7e(a.url),Se=new M7e(ue);be.hostname!==Se.hostname&&(de.headers.delete("authorization"),de.headers.delete("cookie")),(B.statusCode===303||(B.statusCode===301||B.statusCode===302)&&a.method==="POST")&&(de.method="GET",de.body=void 0,de.headers.delete("content-length")),r(sre(new H7e(ue,de))),b();return}}B.once("end",()=>A&&A.removeEventListener("abort",C));let Q=new dhs;Q.on("error",b),B.on("error",fe=>Q.emit("error",fe)),B.on("data",fe=>Q.write(fe)),B.on("end",()=>Q.end());let X={url:a.url,status:B.statusCode,statusText:B.statusMessage,headers:F,size:a.size,timeout:a.timeout,counter:a.counter,trailer:new Promise(fe=>B.on("end",()=>fe(phs(B.trailers))))},ae=F.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||ae===null||B.statusCode===204||B.statusCode===304){f=new w0e(Q,X),r(f);return}let ne={flush:UGe.constants.Z_SYNC_FLUSH,finishFlush:UGe.constants.Z_SYNC_FLUSH};if(ae==="gzip"||ae==="x-gzip"){let fe=new UGe.Gunzip(ne);f=new w0e(Q.on("error",ue=>fe.emit("error",ue)).pipe(fe),X),r(f);return}if(ae==="deflate"||ae==="x-deflate"){B.once("data",fe=>{let ue=(fe[0]&15)===8?new UGe.Inflate:new UGe.InflateRaw;Q.on("error",de=>ue.emit("error",de)).pipe(ue),f=new w0e(ue,X),r(f)});return}if(ae==="br"){try{var ce=new UGe.BrotliDecompress}catch(fe){n(fe),b();return}Q.on("error",fe=>ce.emit("error",fe)).pipe(ce),f=new w0e(ce,X),r(f);return}f=new w0e(Q,X),r(f)}),Svl(E,a)})};fhs.exports=sre;sre.isRedirect=e=>e===301||e===302||e===303||e===307||e===308;sre.Headers=M8r;sre.Request=H7e;sre.Response=w0e;sre.FetchError=Wue;sre.AbortError=O8r});var hhs=H((Psg,Ihs)=>{var wvl=wt("dns"),Tvl=["if-modified-since","if-none-match","if-unmodified-since","if-match","if-range"],Rvl=e=>{let{strictSSL:t,...r}={...e};if(r.method=r.method?r.method.toUpperCase():"GET",t==null?r.rejectUnauthorized=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0":r.rejectUnauthorized=t!==!1,!r.retry)r.retry={retries:0};else if(typeof r.retry=="string"){let n=parseInt(r.retry,10);isFinite(n)?r.retry={retries:n}:r.retry={retries:0}}else typeof r.retry=="number"?r.retry={retries:r.retry}:r.retry={retries:0,...r.retry};return r.dns={ttl:5*60*1e3,lookup:wvl.lookup,...r.dns},r.cache=r.cache||"default",r.cache==="default"&&Object.keys(r.headers||{}).some(a=>Tvl.includes(a.toLowerCase()))&&(r.cache="no-store"),r.cacheAdditionalHeaders=r.cacheAdditionalHeaders||[],r.cacheManager&&!r.cachePath&&(r.cachePath=r.cacheManager),r};Ihs.exports=Rvl});var yhs=H((Wsg,H8r)=>{"use strict";H8r.exports=_hs;H8r.exports.preferredCharsets=_hs;var Nvl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function Dvl(e){for(var t=e.split(","),r=0,n=0;r0}});var vhs=H((Osg,Y8r)=>{"use strict";Y8r.exports=Shs;Y8r.exports.preferredEncodings=Shs;var Zvl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function Lvl(e){for(var t=e.split(","),r=!1,n=1,a=0,o=0;a0}});var Nhs=H((Msg,Q8r)=>{"use strict";Q8r.exports=Rhs;Q8r.exports.preferredLanguages=Rhs;var Mvl=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function Hvl(e){for(var t=e.split(","),r=0,n=0;r0}});var Zhs=H((Hsg,X8r)=>{"use strict";X8r.exports=Ghs;X8r.exports.preferredMediaTypes=Ghs;var Jvl=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function Uvl(e){for(var t=$vl(e),r=0,n=0;r0)if(o.every(function(l){return t.params[l]=="*"||(t.params[l]||"").toLowerCase()==(n.params[l]||"").toLowerCase()}))a|=1;else return null;return{i:r,o:t.i,q:t.q,s:a}}function Ghs(e,t){var r=Uvl(e===void 0?"*/*":e||"");if(!t)return r.filter(khs).sort(Dhs).map(zvl);var n=t.map(function(o,l){return Kvl(o,r,l)});return n.filter(khs).sort(Dhs).map(function(o){return t[n.indexOf(o)]})}function Dhs(e,t){return t.q-e.q||t.s-e.s||e.o-t.o||e.i-t.i||0}function zvl(e){return e.type+"/"+e.subtype}function khs(e){return e.q>0}function Fhs(e){for(var t=0,r=0;(r=e.indexOf('"',r))!==-1;)t++,r++;return t}function qvl(e){var t=e.indexOf("="),r,n;return t===-1?r=e:(r=e.slice(0,t),n=e.slice(t+1)),[r,n]}function $vl(e){for(var t=e.split(","),r=1,n=0;r{"use strict";var tBl=yhs(),rBl=vhs(),nBl=Nhs(),iBl=Zhs();J8r.exports=db;J8r.exports.Negotiator=db;function db(e){if(!(this instanceof db))return new db(e);this.request=e}db.prototype.charset=function(t){var r=this.charsets(t);return r&&r[0]};db.prototype.charsets=function(t){return tBl(this.request.headers["accept-charset"],t)};db.prototype.encoding=function(t,r){var n=this.encodings(t,r);return n&&n[0]};db.prototype.encodings=function(t,r){var n=r||{};return rBl(this.request.headers["accept-encoding"],t,n.preferred)};db.prototype.language=function(t){var r=this.languages(t);return r&&r[0]};db.prototype.languages=function(t){return nBl(this.request.headers["accept-language"],t)};db.prototype.mediaType=function(t){var r=this.mediaTypes(t);return r&&r[0]};db.prototype.mediaTypes=function(t){return iBl(this.request.headers.accept,t)};db.prototype.preferredCharset=db.prototype.charset;db.prototype.preferredCharsets=db.prototype.charsets;db.prototype.preferredEncoding=db.prototype.encoding;db.prototype.preferredEncodings=db.prototype.encodings;db.prototype.preferredLanguage=db.prototype.language;db.prototype.preferredLanguages=db.prototype.languages;db.prototype.preferredMediaType=db.prototype.mediaType;db.prototype.preferredMediaTypes=db.prototype.mediaTypes});var K8r=H((Qsg,Mhs)=>{var Vhs=egr(),Phs=Lhs(),sBl=Ute(),Whs={shared:!1,ignoreCargoCult:!0},oBl={status:200,headers:{}},KGe=e=>{let t={method:e.method,url:e.url,headers:{},compress:e.compress};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},Ohs=e=>{let t={status:e.status,headers:{}};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},U8r=class{constructor({entry:t,request:r,response:n,options:a}){this.entry=t,this.request=KGe(r),this.response=Ohs(n),this.options=a,this.policy=new Vhs(this.request,this.response,Whs),this.entry&&(this.policy._responseTime=this.entry.metadata.time)}static storable(t,r){return!r.cachePath||r.cache==="no-store"||!["GET","HEAD"].includes(t.method)?!1:new Vhs(KGe(t),oBl,Whs).storable()}satisfies(t){let r=KGe(t);if(this.request.headers.host!==r.headers.host||this.request.compress!==r.compress)return!1;let n=new Phs(this.request),a=new Phs(r);return JSON.stringify(n.mediaTypes())!==JSON.stringify(a.mediaTypes())||JSON.stringify(n.languages())!==JSON.stringify(a.languages())||JSON.stringify(n.encodings())!==JSON.stringify(a.encodings())?!1:this.options.integrity?sBl.parse(this.options.integrity).match(this.entry.integrity):!0}storable(){return this.policy.storable()}get mustRevalidate(){return!!this.policy._rescc["must-revalidate"]}needsRevalidation(t){let r=KGe(t);return r.method="GET",!this.policy.satisfiesWithoutRevalidation(r)}responseHeaders(){return this.policy.responseHeaders()}revalidationHeaders(t){let r=KGe(t);return this.policy.revalidationHeaders(r)}revalidated(t,r){let n=KGe(t),a=Ohs(r);return!this.policy.revalidatedPolicy(n,a).modified}};Mhs.exports=U8r});var Yhs=H((Xsg,Hhs)=>{var j8r=class extends Error{constructor(t){super(`request to ${t} failed: cache mode is 'only-if-cached' but no cached response is available.`),this.code="ENOTCACHED"}};Hhs.exports={NotCachedError:j8r}});var lZt=H((Jsg,Uhs)=>{var aBl=PFt(),Qhs=Symbol("_flush"),Xhs=Symbol("_flushed"),Jhs=Symbol("_flushing"),z8r=class extends aBl{constructor(t={}){if(typeof t=="function"&&(t={flush:t}),super(t),typeof t.flush!="function"&&typeof this.flush!="function")throw new TypeError("must provide flush function in options");this[Qhs]=t.flush||this.flush}emit(t,...r){if(t!=="end"&&t!=="finish"||this[Xhs])return super.emit(t,...r);if(this[Jhs])return;this[Jhs]=!0;let n=o=>{this[Xhs]=!0,o?super.emit("error",o):super.emit("end")},a=this[Qhs](n);a&&a.then&&a.then(()=>n(),o=>n(o))}};Uhs.exports=z8r});var tjr=H((Usg,ejr)=>{var{Minipass:Khs}=rF(),jGe=Symbol("_data"),zGe=Symbol("_length"),q8r=class extends Khs{constructor(t){super(t),this[jGe]=[],this[zGe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[jGe].push(a),this[zGe]+=a.length,n&&n(),!0}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[jGe],this[zGe]);return super.write(a),super.end(n)}};ejr.exports=q8r;var $8r=class extends Khs{constructor(t){super(t),this[jGe]=[],this[zGe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[jGe].push(a),this[zGe]+=a.length,super.write(t,r,n)}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[jGe],this[zGe]);return this.emit("collect",a),super.end(n)}};ejr.exports.PassThrough=$8r});var qGe=H((Ksg,$hs)=>{var cBl=PFt(),lBl=wt("events"),uBl=e=>e&&e instanceof lBl&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"),T0e=Symbol("_head"),XO=Symbol("_tail"),rjr=Symbol("_linkStreams"),njr=Symbol("_setHead"),ijr=Symbol("_setTail"),jhs=Symbol("_onError"),zhs=Symbol("_onData"),sjr=Symbol("_onEnd"),qhs=Symbol("_onDrain"),uZt=Symbol("_streams"),ojr=class extends cBl{constructor(t,...r){uBl(t)&&(r.unshift(t),t={}),super(t),this[uZt]=[],r.length&&this.push(...r)}[rjr](t){return t.reduce((r,n)=>(r.on("error",a=>n.emit("error",a)),r.pipe(n),n))}push(...t){this[uZt].push(...t),this[XO]&&t.unshift(this[XO]);let r=this[rjr](t);this[ijr](r),this[T0e]||this[njr](t[0])}unshift(...t){this[uZt].unshift(...t),this[T0e]&&t.push(this[T0e]);let r=this[rjr](t);this[njr](t[0]),this[XO]||this[ijr](r)}destroy(t){return this[uZt].forEach(r=>typeof r.destroy=="function"&&r.destroy()),super.destroy(t)}[ijr](t){this[XO]=t,t.on("error",r=>this[jhs](t,r)),t.on("data",r=>this[zhs](t,r)),t.on("end",()=>this[sjr](t)),t.on("finish",()=>this[sjr](t))}[jhs](t,r){t===this[XO]&&this.emit("error",r)}[zhs](t,r){t===this[XO]&&super.write(r)}[sjr](t){t===this[XO]&&super.end()}pause(){return super.pause(),this[XO]&&this[XO].pause&&this[XO].pause()}emit(t,...r){return t==="resume"&&this[XO]&&this[XO].resume&&this[XO].resume(),super.emit(t,...r)}[njr](t){this[T0e]=t,t.on("drain",()=>this[qhs](t))}[qhs](t){t===this[T0e]&&this.emit("drain")}write(t,r,n){return this[T0e].write(t,r,n)&&(this.flowing||this.buffer.length===0)}end(t,r,n){return this[T0e].end(t,r,n),this}};$hs.exports=ojr});var ems=H((jsg,ajr)=>{(function(){var e;function t(r,n){var a=this instanceof t?this:e;if(a.reset(n),typeof r=="string"&&r.length>0&&a.hash(r),a!==this)return a}t.prototype.hash=function(r){var n,a,o,l,A;switch(A=r.length,this.len+=A,a=this.k1,o=0,this.rem){case 0:a^=A>o?r.charCodeAt(o++)&65535:0;case 1:a^=A>o?(r.charCodeAt(o++)&65535)<<8:0;case 2:a^=A>o?(r.charCodeAt(o++)&65535)<<16:0;case 3:a^=A>o?(r.charCodeAt(o)&255)<<24:0,a^=A>o?(r.charCodeAt(o++)&65280)>>8:0}if(this.rem=A+this.rem&3,A-=this.rem,A>0){for(n=this.h1;a=a*11601+(a&65535)*3432906752&4294967295,a=a<<15|a>>>17,a=a*13715+(a&65535)*461832192&4294967295,n^=a,n=n<<13|n>>>19,n=n*5+3864292196&4294967295,!(o>=A);)a=r.charCodeAt(o++)&65535^(r.charCodeAt(o++)&65535)<<8^(r.charCodeAt(o++)&65535)<<16,l=r.charCodeAt(o++),a^=(l&255)<<24^(l&65280)>>8;switch(a=0,this.rem){case 3:a^=(r.charCodeAt(o+2)&65535)<<16;case 2:a^=(r.charCodeAt(o+1)&65535)<<8;case 1:a^=r.charCodeAt(o)&65535}this.h1=n}return this.k1=a,this},t.prototype.result=function(){var r,n;return r=this.k1,n=this.h1,r>0&&(r=r*11601+(r&65535)*3432906752&4294967295,r=r<<15|r>>>17,r=r*13715+(r&65535)*461832192&4294967295,n^=r),n^=this.len,n^=n>>>16,n=n*51819+(n&65535)*2246770688&4294967295,n^=n>>>13,n=n*44597+(n&65535)*3266445312&4294967295,n^=n>>>16,n>>>0},t.prototype.reset=function(r){return this.h1=typeof r=="number"?r:0,this.rem=this.k1=this.len=0,this},e=new t,typeof ajr<"u"?ajr.exports=t:this.MurmurHash3=t})()});var rms=H((zsg,tms)=>{"use strict";var gBl=ems();tms.exports=function(e){if(e){var t=new gBl(e);return("00000000"+t.result().toString(16)).slice(-8)}else return(Math.random().toString(16)+"0000000").slice(2,10)}});var cjr=H((qsg,nms)=>{var ABl=wt("path"),dBl=rms();nms.exports=function(e,t,r){return ABl.join(e,(t?t+"-":"")+dBl(r))}});var ljr=H(($sg,pBl)=>{pBl.exports={name:"cacache",version:"19.0.1","cache-version":{content:"2",index:"5"},description:"Fast, fault-tolerant, cross-platform, disk-based, data-agnostic, content-addressable cache.",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",snap:"tap",coverage:"tap","test-docker":'docker run -it --rm --name pacotest -v "$PWD":/tmp -w /tmp node:latest npm test',lint:"npm run eslint",npmclilint:"npmcli-lint",lintfix:"npm run eslint -- --fix",postsnap:"npm run lintfix --",postlint:"template-oss-check",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},repository:{type:"git",url:"git+https://github.com/npm/cacache.git"},keywords:["cache","caching","content-addressable","sri","sri hash","subresource integrity","cache","storage","store","file store","filesystem","disk cache","disk storage"],license:"ISC",dependencies:{"@npmcli/fs":"^4.0.0","fs-minipass":"^3.0.0",glob:"^10.2.2","lru-cache":"^10.0.1",minipass:"^7.0.3","minipass-collect":"^2.0.1","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4","p-map":"^7.0.2",ssri:"^12.0.0",tar:"^7.4.3","unique-filename":"^4.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",windowsCI:!1,version:"4.23.3",publish:"true"},author:"GitHub Inc.",tap:{"nyc-arg":["--exclude","tap-snapshots/**"]}}});var ujr=H((eog,ims)=>{"use strict";ims.exports=fBl;function fBl(e){return[e.slice(0,2),e.slice(2,4),e.slice(4)]}});var $Ge=H((tog,gjr)=>{"use strict";var IBl=ljr()["cache-version"].content,hBl=ujr(),sms=wt("path"),mBl=Ute();gjr.exports=CBl;function CBl(e,t){let r=mBl.parse(t,{single:!0});return sms.join(oms(e),r.algorithm,...hBl(r.hexDigest()))}gjr.exports.contentDir=oms;function oms(e){return sms.join(e,`content-v${IBl}`)}});var Ajr=H((rog,ams)=>{var _Bl=(e,{copy:t,wrap:r})=>{let n={};if(e&&typeof e=="object")for(let a of t)e[a]!==void 0&&(n[a]=e[a]);else n[r]=e;return n};ams.exports=_Bl});var lms=H((nog,cms)=>{var yBl=UC(),bBl=e=>yBl.satisfies(process.version,e,{includePrerelease:!0});cms.exports={satisfies:bBl}});var ums=H((oog,pjr)=>{"use strict";var{inspect:EBl}=wt("util"),djr=class{constructor(t,r,n){let a=`${r}: ${n.syscall} returned ${n.code} (${n.message})`;n.path!==void 0&&(a+=` ${n.path}`),n.dest!==void 0&&(a+=` => ${n.dest}`),this.code=t,Object.defineProperties(this,{name:{value:"SystemError",enumerable:!1,writable:!0,configurable:!0},message:{value:a,enumerable:!1,writable:!0,configurable:!0},info:{value:n,enumerable:!0,configurable:!0,writable:!1},errno:{get(){return n.errno},set(o){n.errno=o},enumerable:!0,configurable:!0},syscall:{get(){return n.syscall},set(o){n.syscall=o},enumerable:!0,configurable:!0}}),n.path!==void 0&&Object.defineProperty(this,"path",{get(){return n.path},set(o){n.path=o},enumerable:!0,configurable:!0}),n.dest!==void 0&&Object.defineProperty(this,"dest",{get(){return n.dest},set(o){n.dest=o},enumerable:!0,configurable:!0})}toString(){return`${this.name} [${this.code}]: ${this.message}`}[Symbol.for("nodejs.util.inspect.custom")](t,r){return EBl(this,{...r,getters:!0,customInspect:!1})}};function ore(e,t){pjr.exports[e]=class extends djr{constructor(n){super(e,t,n)}}}ore("ERR_FS_CP_DIR_TO_NON_DIR","Cannot overwrite directory with non-directory");ore("ERR_FS_CP_EEXIST","Target already exists");ore("ERR_FS_CP_EINVAL","Invalid src or dest");ore("ERR_FS_CP_FIFO_PIPE","Cannot copy a FIFO pipe");ore("ERR_FS_CP_NON_DIR_TO_DIR","Cannot overwrite non-directory with directory");ore("ERR_FS_CP_SOCKET","Cannot copy a socket file");ore("ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY","Cannot overwrite symlink in subdirectory of self");ore("ERR_FS_CP_UNKNOWN","Cannot copy an unknown file type");ore("ERR_FS_EISDIR","Path is a directory");pjr.exports.ERR_INVALID_ARG_TYPE=class extends Error{constructor(t,r,n){super(),this.code="ERR_INVALID_ARG_TYPE",this.message=`The ${t} argument must be ${r}. Received ${typeof n}`}}});var Rms=H((aog,Tms)=>{"use strict";var{ERR_FS_CP_DIR_TO_NON_DIR:SBl,ERR_FS_CP_EEXIST:vBl,ERR_FS_CP_EINVAL:gZt,ERR_FS_CP_FIFO_PIPE:BBl,ERR_FS_CP_NON_DIR_TO_DIR:wBl,ERR_FS_CP_SOCKET:TBl,ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY:RBl,ERR_FS_CP_UNKNOWN:NBl,ERR_FS_EISDIR:DBl,ERR_INVALID_ARG_TYPE:kBl}=ums(),{constants:{errno:{EEXIST:xBl,EISDIR:GBl,EINVAL:are,ENOTDIR:FBl}}}=wt("os"),{chmod:ZBl,copyFile:LBl,lstat:Cms,mkdir:_ms,readdir:VBl,readlink:gms,stat:eFe,symlink:fjr,unlink:yms,utimes:PBl}=wt("fs/promises"),{dirname:Q7e,isAbsolute:Ams,join:dms,parse:WBl,resolve:X7e,sep:OBl,toNamespacedPath:pms}=wt("path"),{fileURLToPath:MBl}=wt("url"),HBl={dereference:!1,errorOnExist:!1,filter:void 0,force:!0,preserveTimestamps:!1,recursive:!1};async function YBl(e,t,r){if(r!=null&&typeof r!="object")throw new kBl("options",["Object"],r);return QBl(pms(fms(e)),pms(fms(t)),{...HBl,...r})}function fms(e){return e!=null&&e.href&&e.origin?MBl(e):e}async function QBl(e,t,r){r.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended","TimestampPrecisionWarning");let n=await bms(e,t,r),{srcStat:a,destStat:o}=n;return await Sms(e,a,t),r.filter?vms(Ims,o,e,t,r):Ims(o,e,t,r)}async function bms(e,t,r){let{0:n,1:a}=await XBl(e,t,r);if(a){if(Ems(n,a))throw new gZt({message:"src and dest cannot be the same",path:t,syscall:"cp",errno:are});if(n.isDirectory()&&!a.isDirectory())throw new SBl({message:`cannot overwrite directory ${e} with non-directory ${t}`,path:t,syscall:"cp",errno:GBl});if(!n.isDirectory()&&a.isDirectory())throw new wBl({message:`cannot overwrite non-directory ${e} with directory ${t}`,path:t,syscall:"cp",errno:FBl})}if(n.isDirectory()&&Ijr(e,t))throw new gZt({message:`cannot copy ${e} to a subdirectory of self ${t}`,path:t,syscall:"cp",errno:are});return{srcStat:n,destStat:a}}function Ems(e,t){return t.ino&&t.dev&&t.ino===e.ino&&t.dev===e.dev}function XBl(e,t,r){let n=r.dereference?a=>eFe(a,{bigint:!0}):a=>Cms(a,{bigint:!0});return Promise.all([n(e),n(t).catch(a=>{if(a.code==="ENOENT")return null;throw a})])}async function Ims(e,t,r,n){let a=Q7e(r);return await JBl(a)||await _ms(a,{recursive:!0}),AZt(e,t,r,n)}function JBl(e){return eFe(e).then(()=>!0,t=>t.code==="ENOENT"?!1:Promise.reject(t))}async function Sms(e,t,r){let n=X7e(Q7e(e)),a=X7e(Q7e(r));if(a===n||a===WBl(a).root)return;let o;try{o=await eFe(a,{bigint:!0})}catch(l){if(l.code==="ENOENT")return;throw l}if(Ems(t,o))throw new gZt({message:`cannot copy ${e} to a subdirectory of self ${r}`,path:r,syscall:"cp",errno:are});return Sms(e,t,a)}var hms=e=>X7e(e).split(OBl).filter(Boolean);function Ijr(e,t){let r=hms(e),n=hms(t);return r.every((a,o)=>n[o]===a)}async function vms(e,t,r,n,a,o){if(await a.filter(r,n))return e(t,r,n,a,o)}function UBl(e,t,r,n){return n.filter?vms(AZt,e,t,r,n):AZt(e,t,r,n)}async function AZt(e,t,r,n){let o=await(n.dereference?eFe:Cms)(t);if(o.isDirectory()&&n.recursive)return twl(o,e,t,r,n);if(o.isDirectory())throw new DBl({message:`${t} is a directory (not copied)`,path:t,syscall:"cp",errno:are});if(o.isFile()||o.isCharacterDevice()||o.isBlockDevice())return KBl(o,e,t,r,n);if(o.isSymbolicLink())return nwl(e,t,r);throw o.isSocket()?new TBl({message:`cannot copy a socket file: ${r}`,path:r,syscall:"cp",errno:are}):o.isFIFO()?new BBl({message:`cannot copy a FIFO pipe: ${r}`,path:r,syscall:"cp",errno:are}):new NBl({message:`cannot copy an unknown file type: ${r}`,path:r,syscall:"cp",errno:are})}function KBl(e,t,r,n,a){return t?jBl(e,r,n,a):Bms(e,r,n,a)}async function jBl(e,t,r,n){if(n.force)return await yms(r),Bms(e,t,r,n);if(n.errorOnExist)throw new vBl({message:`${r} already exists`,path:r,syscall:"cp",errno:xBl})}async function Bms(e,t,r,n){return await LBl(t,r),n.preserveTimestamps?zBl(e.mode,t,r):dZt(r,e.mode)}async function zBl(e,t,r){return qBl(e)&&await $Bl(r,e),mms(e,t,r)}function qBl(e){return(e&128)===0}function $Bl(e,t){return dZt(e,t|128)}async function mms(e,t,r){return await ewl(t,r),dZt(r,e)}function dZt(e,t){return ZBl(e,t)}async function ewl(e,t){let r=await eFe(e);return PBl(t,r.atime,r.mtime)}function twl(e,t,r,n,a){return t?wms(r,n,a):rwl(e.mode,r,n,a)}async function rwl(e,t,r,n){return await _ms(r),await wms(t,r,n),dZt(r,e)}async function wms(e,t,r){let n=await VBl(e);for(let a=0;a{var swl=wt("fs/promises"),owl=Ajr(),awl=lms(),cwl=Rms(),lwl=awl.satisfies(">=16.7.0"),uwl=async(e,t,r)=>{let n=owl(r,{copy:["dereference","errorOnExist","filter","force","preserveTimestamps","recursive"]});return lwl?swl.cp(e,t,n):cwl(e,t,n)};Nms.exports=uwl});var xms=H((log,kms)=>{var{join:gwl,sep:Awl}=wt("path"),dwl=Ajr(),{mkdir:pwl,mkdtemp:fwl,rm:Iwl}=wt("fs/promises"),hwl=async(e,t,r)=>{let n=dwl(r,{copy:["tmpPrefix"]});await pwl(e,{recursive:!0});let a=await fwl(gwl(`${e}${Awl}`,n.tmpPrefix||"")),o,l;try{l=await t(a)}catch(A){o=A}try{await Iwl(a,{force:!0,recursive:!0})}catch{}if(o)throw o;return l};kms.exports=hwl});var Lms=H((uog,Zms)=>{var{readdir:Gms}=wt("fs/promises"),{join:Fms}=wt("path"),mwl=async e=>{let t=[];for(let r of await Gms(e))if(r.startsWith("@"))for(let n of await Gms(Fms(e,r)))t.push(Fms(r,n));else t.push(r);return t};Zms.exports=mwl});var Hms=H((gog,Mms)=>{var{dirname:Vms,join:Pms,resolve:Wms,relative:Cwl,isAbsolute:_wl}=wt("path"),D6=wt("fs/promises"),ywl=async e=>{try{return await D6.access(e),!0}catch(t){return t.code!=="ENOENT"}},Oms=async(e,t,r={},n=!0,a=[])=>{if(!e||!t)throw new TypeError("`source` and `destination` file required");if(r={overwrite:!0,...r},!r.overwrite&&await ywl(t))throw new Error(`The destination file exists: ${t}`);await D6.mkdir(Vms(t),{recursive:!0});try{await D6.rename(e,t)}catch(o){if(o.code==="EXDEV"||o.code==="EPERM"){let l=await D6.lstat(e);if(l.isDirectory()){let A=await D6.readdir(e);await Promise.all(A.map(f=>Oms(Pms(e,f),Pms(t,f),r,!1,a)))}else l.isSymbolicLink()?a.push({source:e,destination:t}):await D6.copyFile(e,t)}else throw o}n&&(await Promise.all(a.map(async({source:o,destination:l})=>{let A=await D6.readlink(o);_wl(A)&&(A=Wms(l,Cwl(o,A)));let f="file";try{f=await D6.stat(Wms(Vms(o),A)),f.isDirectory()&&(f="junction")}catch{}await D6.symlink(A,l,f)})),await D6.rm(e,{recursive:!0,force:!0}))};Mms.exports=Oms});var pZt=H((Aog,Yms)=>{"use strict";var bwl=Dms(),Ewl=xms(),Swl=Lms(),vwl=Hms();Yms.exports={cp:bwl,withTempDir:Ewl,readdirScoped:Swl,moveFile:vwl}});var fZt={};sI(fZt,{default:()=>Qms,pMapIterable:()=>Bwl,pMapSkip:()=>J7e});async function Qms(e,t,{concurrency:r=Number.POSITIVE_INFINITY,stopOnError:n=!0,signal:a}={}){return new Promise((o,l)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!(Number.isSafeInteger(r)&&r>=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);let A=[],f=[],I=new Map,C=!1,b=!1,E=!1,N=0,B=0,F=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),Q=()=>{ne(a.reason)},X=()=>{a?.removeEventListener("abort",Q)},ae=fe=>{o(fe),X()},ne=fe=>{C=!0,b=!0,l(fe),X()};a&&(a.aborted&&ne(a.reason),a.addEventListener("abort",Q,{once:!0}));let ce=async()=>{if(b)return;let fe=await F.next(),ue=B;if(B++,fe.done){if(E=!0,N===0&&!b){if(!n&&f.length>0){ne(new AggregateError(f));return}if(b=!0,I.size===0){ae(A);return}let de=[];for(let[be,Se]of A.entries())I.get(be)!==J7e&&de.push(Se);ae(de)}return}N++,(async()=>{try{let de=await fe.value;if(b)return;let be=await t(de,ue);be===J7e&&I.set(ue,be),A[ue]=be,N--,await ce()}catch(de){if(n)ne(de);else{f.push(de),N--;try{await ce()}catch(be){ne(be)}}}})()};(async()=>{for(let fe=0;fe=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);if(!(Number.isSafeInteger(n)&&n>=r||n===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`backpressure\` to be an integer from \`concurrency\` (${r}) and up or \`Infinity\`, got \`${n}\` (${typeof n})`);return{async*[Symbol.asyncIterator](){let a=e[Symbol.asyncIterator]===void 0?e[Symbol.iterator]():e[Symbol.asyncIterator](),o=[],l=0,A=!1,f=0;function I(){if(A||!(l{let{done:b,value:E}=await a.next();if(b)return l--,{done:!0};I();try{let N=await t(await E,f++);if(l--,N===J7e){let B=o.indexOf(C);B>0&&o.splice(B,1)}return I(),{done:!1,value:N}}catch(N){return l--,A=!0,{error:N}}})();o.push(C)}for(I();o.length>0;){let{error:C,done:b,value:E}=await o[0];if(o.shift(),C)throw C;if(b)return;I(),E!==J7e&&(yield E)}}}}var J7e,IZt=bc(()=>{J7e=Symbol("skip")});var tFe=H((pog,JO)=>{"use strict";var wwl=wt("crypto"),{appendFile:Twl,mkdir:Cjr,readFile:Rwl,readdir:Nwl,rm:Xms,writeFile:Dwl}=wt("fs/promises"),{Minipass:kwl}=rF(),k6=wt("path"),xwl=Ute(),Gwl=cjr(),Fwl=$Ge(),Zwl=ujr(),Lwl=ljr()["cache-version"].index,{moveFile:Vwl}=pZt(),hjr=5;JO.exports.NotFoundError=class extends Error{constructor(t,r){super(`No cache entry for ${r} found in ${t}`),this.code="ENOENT",this.cache=t,this.key=r}};JO.exports.compact=Pwl;async function Pwl(e,t,r,n={}){let a=U7e(e,t),o=await hZt(a),l=[];for(let E=o.length-1;E>=0;--E){let N=o[E];if(N.integrity===null&&!n.validateEntry)break;(!n.validateEntry||n.validateEntry(N)===!0)&&(l.length===0||!l.find(B=>r(B,N)))&&l.unshift(N)}let A=` +`+l.map(E=>{let N=JSON.stringify(E);return`${mZt(N)} ${N}`}).join(` +`),f=async()=>{let E=Gwl(k6.join(e,"tmp"),n.tmpPrefix);return await Cjr(k6.dirname(E),{recursive:!0}),{target:E,moved:!1}},I=async E=>{if(!E.moved)return Xms(E.target,{recursive:!0,force:!0})},C=async E=>{await Dwl(E.target,A,{flag:"wx"}),await Cjr(k6.dirname(a),{recursive:!0}),await Vwl(E.target,a),E.moved=!0},b=await f();try{await C(b)}finally{await I(b)}return l.reverse().map(E=>CZt(e,E,!0))}JO.exports.insert=Jms;async function Jms(e,t,r,n={}){let{metadata:a,size:o,time:l}=n,A=U7e(e,t),f={key:t,integrity:r&&xwl.stringify(r),time:l||Date.now(),size:o,metadata:a};try{await Cjr(k6.dirname(A),{recursive:!0});let I=JSON.stringify(f);await Twl(A,` +${mZt(I)} ${I}`)}catch(I){if(I.code==="ENOENT")return;throw I}return CZt(e,f)}JO.exports.find=Wwl;async function Wwl(e,t){let r=U7e(e,t);try{return(await hZt(r)).reduce((a,o)=>o&&o.key===t?CZt(e,o):a,null)}catch(n){if(n.code==="ENOENT")return null;throw n}}JO.exports.delete=Owl;function Owl(e,t,r={}){if(!r.removeFully)return Jms(e,t,null,r);let n=U7e(e,t);return Xms(n,{recursive:!0,force:!0})}JO.exports.lsStream=Ums;function Ums(e){let t=_jr(e),r=new kwl({objectMode:!0});return Promise.resolve().then(async()=>{let{default:n}=await Promise.resolve().then(()=>(IZt(),fZt)),a=await mjr(t);return await n(a,async o=>{let l=k6.join(t,o),A=await mjr(l);await n(A,async f=>{let I=k6.join(l,f),C=await mjr(I);await n(C,async b=>{let E=k6.join(I,b);try{let B=(await hZt(E)).reduce((F,Q)=>(F.set(Q.key,Q),F),new Map);for(let F of B.values()){let Q=CZt(e,F);Q&&r.write(Q)}}catch(N){if(N.code==="ENOENT")return;throw N}},{concurrency:hjr})},{concurrency:hjr})},{concurrency:hjr}),r.end(),r}).catch(n=>r.emit("error",n)),r}JO.exports.ls=Mwl;async function Mwl(e){return(await Ums(e).collect()).reduce((r,n)=>(r[n.key]=n,r),{})}JO.exports.bucketEntries=hZt;async function hZt(e,t){let r=await Rwl(e,"utf8");return Hwl(r,t)}function Hwl(e){let t=[];return e.split(` +`).forEach(r=>{if(!r)return;let n=r.split(" ");if(!n[1]||mZt(n[1])!==n[0])return;let a;try{a=JSON.parse(n[1])}catch{}a&&t.push(a)}),t}JO.exports.bucketDir=_jr;function _jr(e){return k6.join(e,`index-v${Lwl}`)}JO.exports.bucketPath=U7e;function U7e(e,t){let r=Kms(t);return k6.join.apply(k6,[_jr(e)].concat(Zwl(r)))}JO.exports.hashKey=Kms;function Kms(e){return jms(e,"sha256")}JO.exports.hashEntry=mZt;function mZt(e){return jms(e,"sha1")}function jms(e,t){return wwl.createHash(t).update(e).digest("hex")}function CZt(e,t,r){return!t.integrity&&!r?null:{key:t.key,integrity:t.integrity,path:t.integrity?Fwl(e,t.integrity):void 0,size:t.size,time:t.time,metadata:t.metadata}}function mjr(e){return Nwl(e).catch(t=>{if(t.code==="ENOENT"||t.code==="ENOTDIR")return[];throw t})}});var K7e=H((fog,rFe)=>{"use strict";var{LRUCache:Ywl}=bIe(),_Zt=new Ywl({max:500,maxSize:50*1024*1024,ttl:3*60*1e3,sizeCalculation:(e,t)=>t.startsWith("key:")?e.data.length:e.length});rFe.exports.clearMemoized=Qwl;function Qwl(){let e={};return _Zt.forEach((t,r)=>{e[r]=t}),_Zt.clear(),e}rFe.exports.put=Xwl;function Xwl(e,t,r,n){yZt(n).set(`key:${e}:${t.key}`,{entry:t,data:r}),zms(e,t.integrity,r,n)}rFe.exports.put.byDigest=zms;function zms(e,t,r,n){yZt(n).set(`digest:${e}:${t}`,r)}rFe.exports.get=Jwl;function Jwl(e,t,r){return yZt(r).get(`key:${e}:${t}`)}rFe.exports.get.byDigest=Uwl;function Uwl(e,t,r){return yZt(r).get(`digest:${e}:${t}`)}var yjr=class{constructor(t){this.obj=t}get(t){return this.obj[t]}set(t,r){this.obj[t]=r}};function yZt(e){return!e||!e.memoize?_Zt:e.memoize.get&&e.memoize.set?e.memoize:typeof e.memoize=="object"?new yjr(e.memoize):_Zt}});var RZt=H(z7e=>{"use strict";var{Minipass:Kwl}=rF(),jwl=wt("events").EventEmitter,qV=wt("fs"),zwl=qV.writev,aFe=Symbol("_autoClose"),tJ=Symbol("_close"),j7e=Symbol("_ended"),pb=Symbol("_fd"),qms=Symbol("_finished"),Mue=Symbol("_flags"),bjr=Symbol("_flush"),Sjr=Symbol("_handleChunk"),vjr=Symbol("_makeBuf"),BZt=Symbol("_mode"),bZt=Symbol("_needDrain"),sFe=Symbol("_onerror"),cFe=Symbol("_onopen"),Ejr=Symbol("_onread"),nFe=Symbol("_onwrite"),Hue=Symbol("_open"),cre=Symbol("_path"),N0e=Symbol("_pos"),x6=Symbol("_queue"),iFe=Symbol("_read"),$ms=Symbol("_readSize"),Oue=Symbol("_reading"),EZt=Symbol("_remain"),eCs=Symbol("_size"),SZt=Symbol("_write"),R0e=Symbol("_writing"),vZt=Symbol("_defaultFlag"),oFe=Symbol("_errored"),wZt=class extends Kwl{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[oFe]=!1,this[pb]=typeof r.fd=="number"?r.fd:null,this[cre]=t,this[$ms]=r.readSize||16*1024*1024,this[Oue]=!1,this[eCs]=typeof r.size=="number"?r.size:1/0,this[EZt]=this[eCs],this[aFe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[pb]=="number"?this[iFe]():this[Hue]()}get fd(){return this[pb]}get path(){return this[cre]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Hue](){qV.open(this[cre],"r",(t,r)=>this[cFe](t,r))}[cFe](t,r){t?this[sFe](t):(this[pb]=r,this.emit("open",r),this[iFe]())}[vjr](){return Buffer.allocUnsafe(Math.min(this[$ms],this[EZt]))}[iFe](){if(!this[Oue]){this[Oue]=!0;let t=this[vjr]();if(t.length===0)return process.nextTick(()=>this[Ejr](null,0,t));qV.read(this[pb],t,0,t.length,null,(r,n,a)=>this[Ejr](r,n,a))}}[Ejr](t,r,n){this[Oue]=!1,t?this[sFe](t):this[Sjr](r,n)&&this[iFe]()}[tJ](){if(this[aFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[sFe](t){this[Oue]=!0,this[tJ](),this.emit("error",t)}[Sjr](t,r){let n=!1;return this[EZt]-=t,t>0&&(n=super.write(tthis[cFe](t,r))}[cFe](t,r){this[vZt]&&this[Mue]==="r+"&&t&&t.code==="ENOENT"?(this[Mue]="w",this[Hue]()):t?this[sFe](t):(this[pb]=r,this.emit("open",r),this[R0e]||this[bjr]())}end(t,r){return t&&this.write(t,r),this[j7e]=!0,!this[R0e]&&!this[x6].length&&typeof this[pb]=="number"&&this[nFe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[j7e]?(this.emit("error",new Error("write() after end()")),!1):this[pb]===null||this[R0e]||this[x6].length?(this[x6].push(t),this[bZt]=!0,!1):(this[R0e]=!0,this[SZt](t),!0)}[SZt](t){qV.write(this[pb],t,0,t.length,this[N0e],(r,n)=>this[nFe](r,n))}[nFe](t,r){t?this[sFe](t):(this[N0e]!==null&&(this[N0e]+=r),this[x6].length?this[bjr]():(this[R0e]=!1,this[j7e]&&!this[qms]?(this[qms]=!0,this[tJ](),this.emit("finish")):this[bZt]&&(this[bZt]=!1,this.emit("drain"))))}[bjr](){if(this[x6].length===0)this[j7e]&&this[nFe](null,0);else if(this[x6].length===1)this[SZt](this[x6].pop());else{let t=this[x6];this[x6]=[],zwl(this[pb],t,this[N0e],(r,n)=>this[nFe](r,n))}}[tJ](){if(this[aFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},wjr=class extends TZt{[Hue](){let t;if(this[vZt]&&this[Mue]==="r+")try{t=qV.openSync(this[cre],this[Mue],this[BZt])}catch(r){if(r.code==="ENOENT")return this[Mue]="w",this[Hue]();throw r}else t=qV.openSync(this[cre],this[Mue],this[BZt]);this[cFe](null,t)}[tJ](){if(this[aFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.closeSync(t),this.emit("close")}}[SZt](t){let r=!0;try{this[nFe](null,qV.writeSync(this[pb],t,0,t.length,this[N0e])),r=!1}finally{if(r)try{this[tJ]()}catch{}}}};z7e.ReadStream=wZt;z7e.ReadStreamSync=Bjr;z7e.WriteStream=TZt;z7e.WriteStreamSync=wjr});var Rjr=H((hog,lFe)=>{"use strict";var q7e=wt("fs/promises"),qwl=RZt(),Tjr=Ute(),$wl=$Ge(),tCs=qGe();lFe.exports=eTl;var rCs=64*1024*1024;async function eTl(e,t,r={}){let{size:n}=r,{stat:a,cpath:o,sri:l}=await $7e(e,t,async(f,I)=>({stat:n?{size:n}:await q7e.stat(f),cpath:f,sri:I}));if(a.size>rCs)return nCs(o,a.size,l,new tCs).concat();let A=await q7e.readFile(o,{encoding:null});if(a.size!==A.length)throw nTl(a.size,A.length);if(!Tjr.checkData(A,l))throw iTl(l,o);return A}var nCs=(e,t,r,n)=>(n.push(new qwl.ReadStream(e,{size:t,readSize:rCs}),Tjr.integrityStream({integrity:r,size:t})),n);lFe.exports.stream=iCs;lFe.exports.readStream=iCs;function iCs(e,t,r={}){let{size:n}=r,a=new tCs;return Promise.resolve().then(async()=>{let{stat:o,cpath:l,sri:A}=await $7e(e,t,async(f,I)=>({stat:n?{size:n}:await q7e.stat(f),cpath:f,sri:I}));return nCs(l,o.size,A,a)}).catch(o=>a.emit("error",o)),a}lFe.exports.copy=tTl;function tTl(e,t,r){return $7e(e,t,n=>q7e.copyFile(n,r))}lFe.exports.hasContent=rTl;async function rTl(e,t){if(!t)return!1;try{return await $7e(e,t,async(r,n)=>{let a=await q7e.stat(r);return{size:a.size,sri:n,stat:a}})}catch(r){if(r.code==="ENOENT")return!1;if(r.code==="EPERM"){if(process.platform!=="win32")throw r;return!1}}}async function $7e(e,t,r){let n=Tjr.parse(t),a=n.pickAlgorithm(),o=n[a];if(o.length<=1){let l=$wl(e,o[0]);return r(l,o[0])}else{let l=await Promise.all(o.map(async I=>{try{return await $7e(e,I,r)}catch(C){return C.code==="ENOENT"?Object.assign(new Error("No matching content found for "+n.toString()),{code:"ENOENT"}):C}})),A=l.find(I=>!(I instanceof Error));if(A)return A;let f=l.find(I=>I.code==="ENOENT");throw f||l.find(I=>I instanceof Error)}}function nTl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function iTl(e,t){let r=new Error(`Integrity verification failed for ${e} (${t})`);return r.code="EINTEGRITY",r.sri=e,r.path=t,r}});var cCs=H((mog,ure)=>{"use strict";var sCs=tjr(),{Minipass:oCs}=rF(),aCs=qGe(),D0e=tFe(),lre=K7e(),k0e=Rjr();async function sTl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=lre.get(e,t,r);if(l&&a!==!1)return{metadata:l.entry.metadata,data:l.data,integrity:l.entry.integrity,size:l.entry.size};let A=await D0e.find(e,t,r);if(!A)throw new D0e.NotFoundError(e,t);let f=await k0e(e,A.integrity,{integrity:n,size:o});return a&&lre.put(e,A,f,r),{data:f,metadata:A.metadata,size:A.size,integrity:A.integrity}}ure.exports=sTl;async function oTl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=lre.get.byDigest(e,t,r);if(l&&a!==!1)return l;let A=await k0e(e,t,{integrity:n,size:o});return a&&lre.put.byDigest(e,t,A,r),A}ure.exports.byDigest=oTl;var aTl=e=>{let t=new oCs;return t.on("newListener",function(r,n){r==="metadata"&&n(e.entry.metadata),r==="integrity"&&n(e.entry.integrity),r==="size"&&n(e.entry.size)}),t.end(e.data),t};function cTl(e,t,r={}){let{memoize:n,size:a}=r,o=lre.get(e,t,r);if(o&&n!==!1)return aTl(o);let l=new aCs;return Promise.resolve().then(async()=>{let A=await D0e.find(e,t);if(!A)throw new D0e.NotFoundError(e,t);l.emit("metadata",A.metadata),l.emit("integrity",A.integrity),l.emit("size",A.size),l.on("newListener",function(I,C){I==="metadata"&&C(A.metadata),I==="integrity"&&C(A.integrity),I==="size"&&C(A.size)});let f=k0e.readStream(e,A.integrity,{...r,size:typeof a!="number"?A.size:a});if(n){let I=new sCs.PassThrough;I.on("collect",C=>lre.put(e,A,C,r)),l.unshift(I)}return l.unshift(f),l}).catch(A=>l.emit("error",A)),l}ure.exports.stream=cTl;function lTl(e,t,r={}){let{memoize:n}=r,a=lre.get.byDigest(e,t,r);if(a&&n!==!1){let o=new oCs;return o.end(a),o}else{let o=k0e.readStream(e,t,r);if(!n)return o;let l=new sCs.PassThrough;return l.on("collect",A=>lre.put.byDigest(e,t,A,r)),new aCs(o,l)}}ure.exports.stream.byDigest=lTl;function uTl(e,t,r={}){let{memoize:n}=r,a=lre.get(e,t,r);return a&&n!==!1?Promise.resolve(a.entry):D0e.find(e,t)}ure.exports.info=uTl;async function gTl(e,t,r,n={}){let a=await D0e.find(e,t,n);if(!a)throw new D0e.NotFoundError(e,t);return await k0e.copy(e,a.integrity,r,n),{metadata:a.metadata,size:a.size,integrity:a.integrity}}ure.exports.copy=gTl;async function ATl(e,t,r,n={}){return await k0e.copy(e,t,r,n),t}ure.exports.copy.byDigest=ATl;ure.exports.hasContent=k0e.hasContent});var dCs=H((Cog,xjr)=>{"use strict";var lCs=wt("events"),dTl=$Ge(),tze=wt("fs/promises"),{moveFile:pTl}=pZt(),{Minipass:fTl}=rF(),uCs=qGe(),ITl=lZt(),Njr=wt("path"),Djr=Ute(),hTl=cjr(),mTl=RZt();xjr.exports=CTl;var eze=new Map;async function CTl(e,t,r={}){let{algorithms:n,size:a,integrity:o}=r;if(typeof a=="number"&&t.length!==a)throw ETl(a,t.length);let l=Djr.fromData(t,n?{algorithms:n}:{});if(o&&!Djr.checkData(t,o,r))throw STl(o,l);for(let A in l){let f=await gCs(e,r),I=l[A].toString();try{await tze.writeFile(f.target,t,{flag:"wx"}),await ACs(f,e,I,r)}finally{f.moved||await tze.rm(f.target,{recursive:!0,force:!0})}}return{integrity:l,size:t.length}}xjr.exports.stream=_Tl;var kjr=class extends ITl{constructor(t,r){super(),this.opts=r,this.cache=t,this.inputStream=new fTl,this.inputStream.on("error",n=>this.emit("error",n)),this.inputStream.on("drain",()=>this.emit("drain")),this.handleContentP=null}write(t,r,n){return this.handleContentP||(this.handleContentP=yTl(this.inputStream,this.cache,this.opts),this.handleContentP.catch(a=>this.emit("error",a))),this.inputStream.write(t,r,n)}flush(t){this.inputStream.end(()=>{if(!this.handleContentP){let r=new Error("Cache input stream was empty");return r.code="ENODATA",Promise.reject(r).catch(t)}this.handleContentP.then(r=>{r.integrity&&this.emit("integrity",r.integrity),r.size!==null&&this.emit("size",r.size),t()},r=>t(r))})}};function _Tl(e,t={}){return new kjr(e,t)}async function yTl(e,t,r){let n=await gCs(t,r);try{let a=await bTl(e,t,n.target,r);return await ACs(n,t,a.integrity,r),a}finally{n.moved||await tze.rm(n.target,{recursive:!0,force:!0})}}async function bTl(e,t,r,n){let a=new mTl.WriteStream(r,{flags:"wx"});if(n.integrityEmitter){let[I,C]=await Promise.all([lCs.once(n.integrityEmitter,"integrity").then(b=>b[0]),lCs.once(n.integrityEmitter,"size").then(b=>b[0]),new uCs(e,a).promise()]);return{integrity:I,size:C}}let o,l,A=Djr.integrityStream({integrity:n.integrity,algorithms:n.algorithms,size:n.size});return A.on("integrity",I=>{o=I}),A.on("size",I=>{l=I}),await new uCs(e,A,a).promise(),{integrity:o,size:l}}async function gCs(e,t){let r=hTl(Njr.join(e,"tmp"),t.tmpPrefix);return await tze.mkdir(Njr.dirname(r),{recursive:!0}),{target:r,moved:!1}}async function ACs(e,t,r){let n=dTl(t,r),a=Njr.dirname(n);return eze.has(n)||eze.set(n,tze.mkdir(a,{recursive:!0}).then(async()=>(await pTl(e.target,n,{overwrite:!1}),e.moved=!0,e.moved)).catch(o=>{if(!o.message.startsWith("The destination file exists"))throw Object.assign(o,{code:"EEXIST"})}).finally(()=>{eze.delete(n)})),eze.get(n)}function ETl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function STl(e,t){let r=new Error(`Integrity check failed: Wanted: ${e} - Found: ${t}`);return r.code="EINTEGRITY",r.expected=e,r.found=t,r}});var rCs=H((usg,wjr)=>{"use strict";var qms=$Ge(),$ms=J7e(),eCs=zms(),xwl=sZt(),{PassThrough:Gwl}=U8r(),Fwl=jGe(),tCs=e=>({algorithms:["sha512"],...e});wjr.exports=Zwl;async function Zwl(e,t,r,n={}){let{memoize:a}=n;n=tCs(n);let o=await eCs(e,r,n),l=await qms.insert(e,t,o.integrity,{...n,size:o.size});return a&&$ms.put(e,l,r,n),o.integrity}wjr.exports.stream=Lwl;function Lwl(e,t,r={}){let{memoize:n}=r;r=tCs(r);let a,o,l,A,f=new Fwl;if(n){let C=new Gwl().on("collect",b=>{A=b});f.push(C)}let I=eCs.stream(e,r).on("integrity",C=>{a=C}).on("size",C=>{o=C}).on("error",C=>{l=C});return f.push(I),f.push(new xwl({async flush(){if(!l){let C=await qms.insert(e,t,a,{...r,size:o});n&&A&&$ms.put(e,C,A,r),f.emit("integrity",a),f.emit("size",o)}}})),f}});var Tjr=H((gsg,oCs)=>{"use strict";oCs.exports=iCs;function iCs(e,t,r){e instanceof RegExp&&(e=nCs(e,r)),t instanceof RegExp&&(t=nCs(t,r));var n=sCs(e,t,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+e.length,n[1]),post:r.slice(n[1]+t.length)}}function nCs(e,t){var r=t.match(e);return r?r[0]:null}iCs.range=sCs;function sCs(e,t,r){var n,a,o,l,A,f=r.indexOf(e),I=r.indexOf(t,f+1),C=f;if(f>=0&&I>0){if(e===t)return[f,I];for(n=[],o=r.length;C>=0&&!A;)C==f?(n.push(C),f=r.indexOf(e,C+1)):n.length==1?A=[n.pop(),I]:(a=n.pop(),a=0?f:I;n.length&&(A=[o,l])}return A}});var pCs=H((Asg,dCs)=>{var aCs=Tjr();dCs.exports=Wwl;var cCs="\0SLASH"+Math.random()+"\0",lCs="\0OPEN"+Math.random()+"\0",Njr="\0CLOSE"+Math.random()+"\0",uCs="\0COMMA"+Math.random()+"\0",gCs="\0PERIOD"+Math.random()+"\0";function Rjr(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function Vwl(e){return e.split("\\\\").join(cCs).split("\\{").join(lCs).split("\\}").join(Njr).split("\\,").join(uCs).split("\\.").join(gCs)}function Pwl(e){return e.split(cCs).join("\\").split(lCs).join("{").split(Njr).join("}").split(uCs).join(",").split(gCs).join(".")}function ACs(e){if(!e)return[""];var t=[],r=aCs("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=ACs(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function Wwl(e){return e?(e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),eze(Vwl(e),!0).map(Pwl)):[]}function Owl(e){return"{"+e+"}"}function Mwl(e){return/^-?0\d/.test(e)}function Hwl(e,t){return e<=t}function Ywl(e,t){return e>=t}function eze(e,t){var r=[],n=aCs("{","}",e);if(!n)return[e];var a=n.pre,o=n.post.length?eze(n.post,!1):[""];if(/\$$/.test(n.pre))for(var l=0;l=0;if(!C&&!b)return n.post.match(/,.*\}/)?(e=n.pre+"{"+n.body+Njr+n.post,eze(e)):[e];var E;if(C)E=n.body.split(/\.\./);else if(E=ACs(n.body),E.length===1&&(E=eze(E[0],!1).map(Owl),E.length===1))return o.map(function(De){return n.pre+E[0]+De});var N;if(C){var B=Rjr(E[0]),F=Rjr(E[1]),Q=Math.max(E[0].length,E[1].length),X=E.length==3?Math.abs(Rjr(E[2])):1,ae=Hwl,ne=F0){var be=new Array(de+1).join("0");fe<0?ue="-"+be+ue.slice(1):ue=be+ue}}N.push(ue)}}else{N=[];for(var Se=0;Se{"use strict";Object.defineProperty(BZt,"__esModule",{value:!0});BZt.assertValidPattern=void 0;var Qwl=1024*64,Xwl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>Qwl)throw new TypeError("pattern is too long")};BZt.assertValidPattern=Xwl});var hCs=H(wZt=>{"use strict";Object.defineProperty(wZt,"__esModule",{value:!0});wZt.parseClass=void 0;var Jwl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},tze=e=>e.replace(/[[\]\\-]/g,"\\$&"),Uwl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ICs=e=>e.join(""),Kwl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(tze(b)+"-"+tze(F)):F===b&&n.push(tze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(tze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(tze(F)),o++}if(C{"use strict";Object.defineProperty(TZt,"__esModule",{value:!0});TZt.unescape=void 0;var jwl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");TZt.unescape=jwl});var xjr=H(kZt=>{"use strict";Object.defineProperty(kZt,"__esModule",{value:!0});kZt.AST=void 0;var zwl=hCs(),NZt=RZt(),qwl=new Set(["!","?","+","*","@"]),mCs=e=>qwl.has(e),$wl="(?!(?:^|/)\\.\\.?(?:$|/))",DZt="(?!\\.)",eTl=new Set(["[","."]),tTl=new Set(["..","."]),rTl=new Set("().*{}+?[]^$\\!"),nTl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),kjr="[^/]",CCs=kjr+"*?",_Cs=kjr+"+?",Djr=class e{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,X]=typeof N=="string"?e.#d(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||X,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&tTl.has(this.#r[0]))){let B=eTl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?$wl:Q?DZt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,NZt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#I(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString();return this.#r=[f],this.type=null,this.#t=void 0,[f,(0,NZt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!DZt?"":this.#I(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?DZt:"")+_Cs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?DZt:"")+CCs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,NZt.unescape)(o),this.#t=!!this.#t,this.#n]}#I(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#d(t,r,n=!1){let a=!1,o="",l=!1;for(let A=0;A{"use strict";Object.defineProperty(xZt,"__esModule",{value:!0});xZt.escape=void 0;var iTl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");xZt.escape=iTl});var Hue=H(cd=>{"use strict";var sTl=cd&&cd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cd,"__esModule",{value:!0});cd.unescape=cd.escape=cd.AST=cd.Minimatch=cd.match=cd.makeRe=cd.braceExpand=cd.defaults=cd.filter=cd.GLOBSTAR=cd.sep=cd.minimatch=void 0;var oTl=sTl(pCs()),GZt=fCs(),ECs=xjr(),aTl=Gjr(),cTl=RZt(),lTl=(e,t,r={})=>((0,GZt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new k0e(t,r).match(e));cd.minimatch=lTl;var uTl=/^\*+([^+@!?\*\[\(]*)$/,gTl=e=>t=>!t.startsWith(".")&&t.endsWith(e),ATl=e=>t=>t.endsWith(e),dTl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),pTl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),fTl=/^\*+\.\*+$/,ITl=e=>!e.startsWith(".")&&e.includes("."),hTl=e=>e!=="."&&e!==".."&&e.includes("."),mTl=/^\.\*+$/,CTl=e=>e!=="."&&e!==".."&&e.startsWith("."),_Tl=/^\*+$/,yTl=e=>e.length!==0&&!e.startsWith("."),bTl=e=>e.length!==0&&e!=="."&&e!=="..",ETl=/^\?+([^+@!?\*\[\(]*)?$/,STl=([e,t=""])=>{let r=SCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},vTl=([e,t=""])=>{let r=vCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},BTl=([e,t=""])=>{let r=vCs([e]);return t?n=>r(n)&&n.endsWith(t):r},wTl=([e,t=""])=>{let r=SCs([e]);return t?n=>r(n)&&n.endsWith(t):r},SCs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},vCs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},BCs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",yCs={win32:{sep:"\\"},posix:{sep:"/"}};cd.sep=BCs==="win32"?yCs.win32.sep:yCs.posix.sep;cd.minimatch.sep=cd.sep;cd.GLOBSTAR=Symbol("globstar **");cd.minimatch.GLOBSTAR=cd.GLOBSTAR;var TTl="[^/]",RTl=TTl+"*?",NTl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",DTl="(?:(?!(?:\\/|^)\\.).)*?",kTl=(e,t={})=>r=>(0,cd.minimatch)(r,e,t);cd.filter=kTl;cd.minimatch.filter=cd.filter;var OH=(e,t={})=>Object.assign({},e,t),xTl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return cd.minimatch;let t=cd.minimatch;return Object.assign((n,a,o={})=>t(n,a,OH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,OH(e,o))}static defaults(a){return t.defaults(OH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,OH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,OH(e,o))}},unescape:(n,a={})=>t.unescape(n,OH(e,a)),escape:(n,a={})=>t.escape(n,OH(e,a)),filter:(n,a={})=>t.filter(n,OH(e,a)),defaults:n=>t.defaults(OH(e,n)),makeRe:(n,a={})=>t.makeRe(n,OH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,OH(e,a)),match:(n,a,o={})=>t.match(n,a,OH(e,o)),sep:t.sep,GLOBSTAR:cd.GLOBSTAR})};cd.defaults=xTl;cd.minimatch.defaults=cd.defaults;var GTl=(e,t={})=>((0,GZt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,oTl.default)(e));cd.braceExpand=GTl;cd.minimatch.braceExpand=cd.braceExpand;var FTl=(e,t={})=>new k0e(e,t).makeRe();cd.makeRe=FTl;cd.minimatch.makeRe=cd.makeRe;var ZTl=(e,t,r={})=>{let n=new k0e(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};cd.match=ZTl;cd.minimatch.match=cd.match;var bCs=/[?*]|[+@!]\(.*?\)|\[|\]/,LTl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),k0e=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,r={}){(0,GZt.assertValidPattern)(t),r=r||{},this.options=r,this.pattern=t,this.platform=r.platform||BCs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!bCs.test(o[2]))&&!bCs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;ane?r=r.slice(ce):ne>ce&&(t=t.slice(ne)))}}let{optimizationLevel:o=1}=this.options;o>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:r}),this.debug("matchOne",t.length,r.length);for(var l=0,A=0,f=t.length,I=r.length;l{"use strict";var pCs=tFe(),fCs=K7e(),ICs=dCs(),vTl=lZt(),{PassThrough:BTl}=tjr(),wTl=qGe(),hCs=e=>({algorithms:["sha512"],...e});Gjr.exports=TTl;async function TTl(e,t,r,n={}){let{memoize:a}=n;n=hCs(n);let o=await ICs(e,r,n),l=await pCs.insert(e,t,o.integrity,{...n,size:o.size});return a&&fCs.put(e,l,r,n),o.integrity}Gjr.exports.stream=RTl;function RTl(e,t,r={}){let{memoize:n}=r;r=hCs(r);let a,o,l,A,f=new wTl;if(n){let C=new BTl().on("collect",b=>{A=b});f.push(C)}let I=ICs.stream(e,r).on("integrity",C=>{a=C}).on("size",C=>{o=C}).on("error",C=>{l=C});return f.push(I),f.push(new vTl({async flush(){if(!l){let C=await pCs.insert(e,t,a,{...r,size:o});n&&A&&fCs.put(e,C,A,r),f.emit("integrity",a),f.emit("size",o)}}})),f}});var Fjr=H((yog,bCs)=>{"use strict";bCs.exports=_Cs;function _Cs(e,t,r){e instanceof RegExp&&(e=CCs(e,r)),t instanceof RegExp&&(t=CCs(t,r));var n=yCs(e,t,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+e.length,n[1]),post:r.slice(n[1]+t.length)}}function CCs(e,t){var r=t.match(e);return r?r[0]:null}_Cs.range=yCs;function yCs(e,t,r){var n,a,o,l,A,f=r.indexOf(e),I=r.indexOf(t,f+1),C=f;if(f>=0&&I>0){if(e===t)return[f,I];for(n=[],o=r.length;C>=0&&!A;)C==f?(n.push(C),f=r.indexOf(e,C+1)):n.length==1?A=[n.pop(),I]:(a=n.pop(),a=0?f:I;n.length&&(A=[o,l])}return A}});var NCs=H((bog,RCs)=>{var ECs=Fjr();RCs.exports=kTl;var SCs="\0SLASH"+Math.random()+"\0",vCs="\0OPEN"+Math.random()+"\0",Ljr="\0CLOSE"+Math.random()+"\0",BCs="\0COMMA"+Math.random()+"\0",wCs="\0PERIOD"+Math.random()+"\0";function Zjr(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function NTl(e){return e.split("\\\\").join(SCs).split("\\{").join(vCs).split("\\}").join(Ljr).split("\\,").join(BCs).split("\\.").join(wCs)}function DTl(e){return e.split(SCs).join("\\").split(vCs).join("{").split(Ljr).join("}").split(BCs).join(",").split(wCs).join(".")}function TCs(e){if(!e)return[""];var t=[],r=ECs("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=TCs(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function kTl(e){return e?(e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),rze(NTl(e),!0).map(DTl)):[]}function xTl(e){return"{"+e+"}"}function GTl(e){return/^-?0\d/.test(e)}function FTl(e,t){return e<=t}function ZTl(e,t){return e>=t}function rze(e,t){var r=[],n=ECs("{","}",e);if(!n)return[e];var a=n.pre,o=n.post.length?rze(n.post,!1):[""];if(/\$$/.test(n.pre))for(var l=0;l=0;if(!C&&!b)return n.post.match(/,.*\}/)?(e=n.pre+"{"+n.body+Ljr+n.post,rze(e)):[e];var E;if(C)E=n.body.split(/\.\./);else if(E=TCs(n.body),E.length===1&&(E=rze(E[0],!1).map(xTl),E.length===1))return o.map(function(De){return n.pre+E[0]+De});var N;if(C){var B=Zjr(E[0]),F=Zjr(E[1]),Q=Math.max(E[0].length,E[1].length),X=E.length==3?Math.abs(Zjr(E[2])):1,ae=FTl,ne=F0){var be=new Array(de+1).join("0");fe<0?ue="-"+be+ue.slice(1):ue=be+ue}}N.push(ue)}}else{N=[];for(var Se=0;Se{"use strict";Object.defineProperty(NZt,"__esModule",{value:!0});NZt.assertValidPattern=void 0;var LTl=1024*64,VTl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>LTl)throw new TypeError("pattern is too long")};NZt.assertValidPattern=VTl});var xCs=H(DZt=>{"use strict";Object.defineProperty(DZt,"__esModule",{value:!0});DZt.parseClass=void 0;var PTl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},nze=e=>e.replace(/[[\]\\-]/g,"\\$&"),WTl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),kCs=e=>e.join(""),OTl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(nze(b)+"-"+nze(F)):F===b&&n.push(nze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(nze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(nze(F)),o++}if(C{"use strict";Object.defineProperty(kZt,"__esModule",{value:!0});kZt.unescape=void 0;var MTl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");kZt.unescape=MTl});var Wjr=H(ZZt=>{"use strict";Object.defineProperty(ZZt,"__esModule",{value:!0});ZZt.AST=void 0;var HTl=xCs(),GZt=xZt(),YTl=new Set(["!","?","+","*","@"]),GCs=e=>YTl.has(e),QTl="(?!(?:^|/)\\.\\.?(?:$|/))",FZt="(?!\\.)",XTl=new Set(["[","."]),JTl=new Set(["..","."]),UTl=new Set("().*{}+?[]^$\\!"),KTl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Pjr="[^/]",FCs=Pjr+"*?",ZCs=Pjr+"+?",Vjr=class e{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,X]=typeof N=="string"?e.#d(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||X,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&JTl.has(this.#r[0]))){let B=XTl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?QTl:Q?FZt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,GZt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#I(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString();return this.#r=[f],this.type=null,this.#t=void 0,[f,(0,GZt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!FZt?"":this.#I(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?FZt:"")+ZCs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?FZt:"")+FCs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,GZt.unescape)(o),this.#t=!!this.#t,this.#n]}#I(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#d(t,r,n=!1){let a=!1,o="",l=!1;for(let A=0;A{"use strict";Object.defineProperty(LZt,"__esModule",{value:!0});LZt.escape=void 0;var jTl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");LZt.escape=jTl});var Yue=H(cd=>{"use strict";var zTl=cd&&cd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cd,"__esModule",{value:!0});cd.unescape=cd.escape=cd.AST=cd.Minimatch=cd.match=cd.makeRe=cd.braceExpand=cd.defaults=cd.filter=cd.GLOBSTAR=cd.sep=cd.minimatch=void 0;var qTl=zTl(NCs()),VZt=DCs(),PCs=Wjr(),$Tl=Ojr(),eRl=xZt(),tRl=(e,t,r={})=>((0,VZt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new x0e(t,r).match(e));cd.minimatch=tRl;var rRl=/^\*+([^+@!?\*\[\(]*)$/,nRl=e=>t=>!t.startsWith(".")&&t.endsWith(e),iRl=e=>t=>t.endsWith(e),sRl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),oRl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),aRl=/^\*+\.\*+$/,cRl=e=>!e.startsWith(".")&&e.includes("."),lRl=e=>e!=="."&&e!==".."&&e.includes("."),uRl=/^\.\*+$/,gRl=e=>e!=="."&&e!==".."&&e.startsWith("."),ARl=/^\*+$/,dRl=e=>e.length!==0&&!e.startsWith("."),pRl=e=>e.length!==0&&e!=="."&&e!=="..",fRl=/^\?+([^+@!?\*\[\(]*)?$/,IRl=([e,t=""])=>{let r=WCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},hRl=([e,t=""])=>{let r=OCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},mRl=([e,t=""])=>{let r=OCs([e]);return t?n=>r(n)&&n.endsWith(t):r},CRl=([e,t=""])=>{let r=WCs([e]);return t?n=>r(n)&&n.endsWith(t):r},WCs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},OCs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},MCs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",LCs={win32:{sep:"\\"},posix:{sep:"/"}};cd.sep=MCs==="win32"?LCs.win32.sep:LCs.posix.sep;cd.minimatch.sep=cd.sep;cd.GLOBSTAR=Symbol("globstar **");cd.minimatch.GLOBSTAR=cd.GLOBSTAR;var _Rl="[^/]",yRl=_Rl+"*?",bRl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",ERl="(?:(?!(?:\\/|^)\\.).)*?",SRl=(e,t={})=>r=>(0,cd.minimatch)(r,e,t);cd.filter=SRl;cd.minimatch.filter=cd.filter;var OH=(e,t={})=>Object.assign({},e,t),vRl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return cd.minimatch;let t=cd.minimatch;return Object.assign((n,a,o={})=>t(n,a,OH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,OH(e,o))}static defaults(a){return t.defaults(OH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,OH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,OH(e,o))}},unescape:(n,a={})=>t.unescape(n,OH(e,a)),escape:(n,a={})=>t.escape(n,OH(e,a)),filter:(n,a={})=>t.filter(n,OH(e,a)),defaults:n=>t.defaults(OH(e,n)),makeRe:(n,a={})=>t.makeRe(n,OH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,OH(e,a)),match:(n,a,o={})=>t.match(n,a,OH(e,o)),sep:t.sep,GLOBSTAR:cd.GLOBSTAR})};cd.defaults=vRl;cd.minimatch.defaults=cd.defaults;var BRl=(e,t={})=>((0,VZt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,qTl.default)(e));cd.braceExpand=BRl;cd.minimatch.braceExpand=cd.braceExpand;var wRl=(e,t={})=>new x0e(e,t).makeRe();cd.makeRe=wRl;cd.minimatch.makeRe=cd.makeRe;var TRl=(e,t,r={})=>{let n=new x0e(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};cd.match=TRl;cd.minimatch.match=cd.match;var VCs=/[?*]|[+@!]\(.*?\)|\[|\]/,RRl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),x0e=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,r={}){(0,VZt.assertValidPattern)(t),r=r||{},this.options=r,this.pattern=t,this.platform=r.platform||MCs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!VCs.test(o[2]))&&!VCs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;ane?r=r.slice(ce):ne>ce&&(t=t.slice(ne)))}}let{optimizationLevel:o=1}=this.options;o>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:r}),this.debug("matchOne",t.length,r.length);for(var l=0,A=0,f=t.length,I=r.length;l>> no match, partial?`,t,E,r,N),E===f))}let F;if(typeof C=="string"?(F=b===C,this.debug("string match",C,b,F)):(F=C.test(b),this.debug("pattern match",C,b,F)),!F)return!1}if(l===f&&A===I)return!0;if(l===f)return n;if(A===I)return l===f-1&&t[l]==="";throw new Error("wtf?")}braceExpand(){return(0,cd.braceExpand)(this.pattern,this.options)}parse(t){(0,GZt.assertValidPattern)(t);let r=this.options;if(t==="**")return cd.GLOBSTAR;if(t==="")return"";let n,a=null;(n=t.match(_Tl))?a=r.dot?bTl:yTl:(n=t.match(uTl))?a=(r.nocase?r.dot?pTl:dTl:r.dot?ATl:gTl)(n[1]):(n=t.match(ETl))?a=(r.nocase?r.dot?vTl:STl:r.dot?BTl:wTl)(n):(n=t.match(fTl))?a=r.dot?hTl:ITl:(n=t.match(mTl))&&(a=CTl);let o=ECs.AST.fromGlob(t,this.options).toMMPattern();return a&&typeof o=="object"&&Reflect.defineProperty(o,"test",{value:a}),o}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?RTl:r.dot?NTl:DTl,a=new Set(r.nocase?["i"]:[]),o=t.map(f=>{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?LTl(C):C===cd.GLOBSTAR?cd.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==cd.GLOBSTAR||N===cd.GLOBSTAR||(N===void 0?E!==void 0&&E!==cd.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==cd.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=cd.GLOBSTAR))}),I.filter(C=>C!==cd.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var OTl=z0&&z0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),MTl=z0&&z0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),HTl=z0&&z0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&OTl(t,e,r);return MTl(t,e),t};Object.defineProperty(z0,"__esModule",{value:!0});z0.PathScurry=z0.Path=z0.PathScurryDarwin=z0.PathScurryPosix=z0.PathScurryWin32=z0.PathScurryBase=z0.PathPosix=z0.PathWin32=z0.PathBase=z0.ChildrenCache=z0.ResolveCache=void 0;var kCs=yIe(),PZt=wt("node:path"),YTl=wt("node:url"),nze=wt("fs"),QTl=HTl(wt("node:fs")),XTl=nze.realpathSync.native,FZt=wt("node:fs/promises"),wCs=rF(),ize={lstatSync:nze.lstatSync,readdir:nze.readdir,readdirSync:nze.readdirSync,readlinkSync:nze.readlinkSync,realpathSync:XTl,promises:{lstat:FZt.lstat,readdir:FZt.readdir,readlink:FZt.readlink,realpath:FZt.realpath}},xCs=e=>!e||e===ize||e===QTl?ize:{...ize,...e,promises:{...ize.promises,...e.promises||{}}},GCs=/^\\\\\?\\([a-z]:)\\?$/i,JTl=e=>e.replace(/\//g,"\\").replace(GCs,"$1\\"),UTl=/[\\\/]/,HH=0,FCs=1,ZCs=2,G6=4,LCs=6,VCs=8,x0e=10,PCs=12,MH=15,rze=~MH,Fjr=16,TCs=32,sze=64,rJ=128,ZZt=256,VZt=512,RCs=sze|rJ|VZt,KTl=1023,Zjr=e=>e.isFile()?VCs:e.isDirectory()?G6:e.isSymbolicLink()?x0e:e.isCharacterDevice()?ZCs:e.isBlockDevice()?LCs:e.isSocket()?PCs:e.isFIFO()?FCs:HH,NCs=new Map,oze=e=>{let t=NCs.get(e);if(t)return t;let r=e.normalize("NFKD");return NCs.set(e,r),r},DCs=new Map,LZt=e=>{let t=DCs.get(e);if(t)return t;let r=oze(e.toLowerCase());return DCs.set(e,r),r},aze=class extends kCs.LRUCache{constructor(){super({max:256})}};z0.ResolveCache=aze;var WZt=class extends kCs.LRUCache{constructor(t=16*1024){super({maxSize:t,sizeCalculation:r=>r.length+1})}};z0.ChildrenCache=WZt;var WCs=Symbol("PathScurry setAsCwd"),fx=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#i;get uid(){return this.#i}#s;get gid(){return this.#s}#o;get rdev(){return this.#o}#g;get blksize(){return this.#g}#l;get ino(){return this.#l}#u;get size(){return this.#u}#a;get blocks(){return this.#a}#m;get atimeMs(){return this.#m}#f;get mtimeMs(){return this.#f}#I;get ctimeMs(){return this.#I}#d;get birthtimeMs(){return this.#d}#b;get atime(){return this.#b}#h;get mtime(){return this.#h}#S;get ctime(){return this.#S}#v;get birthtime(){return this.#v}#C;#E;#_;#p;#B;#w;#c;#k;#y;#N;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,r=HH,n,a,o,l,A){this.name=t,this.#C=o?LZt(t):oze(t),this.#c=r&KTl,this.nocase=o,this.roots=a,this.root=n||this,this.#k=l,this.#_=A.fullpath,this.#B=A.relative,this.#w=A.relativePosix,this.parent=A.parent,this.parent?this.#e=this.parent.#e:this.#e=xCs(A.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#k}resolve(t){if(!t)return this;let r=this.getRootString(t),a=t.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#x(a):this.#x(a)}#x(t){let r=this;for(let n of t)r=r.child(n);return r}children(){let t=this.#k.get(this);if(t)return t;let r=Object.assign([],{provisional:0});return this.#k.set(this,r),this.#c&=~Fjr,r}child(t,r){if(t===""||t===".")return this;if(t==="..")return this.parent||this;let n=this.children(),a=this.nocase?LZt(t):oze(t);for(let f of n)if(f.#C===a)return f;let o=this.parent?this.sep:"",l=this.#_?this.#_+o+t:void 0,A=this.newChild(t,HH,{...r,parent:this,fullpath:l});return this.canReaddir()||(A.#c|=rJ),n.push(A),A}relative(){if(this.isCWD)return"";if(this.#B!==void 0)return this.#B;let t=this.name,r=this.parent;if(!r)return this.#B=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+t}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#w!==void 0)return this.#w;let t=this.name,r=this.parent;if(!r)return this.#w=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+t}fullpath(){if(this.#_!==void 0)return this.#_;let t=this.name,r=this.parent;if(!r)return this.#_=this.name;let a=r.fullpath()+(r.parent?this.sep:"")+t;return this.#_=a}fullpathPosix(){if(this.#p!==void 0)return this.#p;if(this.sep==="/")return this.#p=this.fullpath();if(!this.parent){let a=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(a)?this.#p=`//?/${a}`:this.#p=a}let t=this.parent,r=t.fullpathPosix(),n=r+(!r||!t.parent?"":"/")+this.name;return this.#p=n}isUnknown(){return(this.#c&MH)===HH}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#c&MH)===VCs}isDirectory(){return(this.#c&MH)===G6}isCharacterDevice(){return(this.#c&MH)===ZCs}isBlockDevice(){return(this.#c&MH)===LCs}isFIFO(){return(this.#c&MH)===FCs}isSocket(){return(this.#c&MH)===PCs}isSymbolicLink(){return(this.#c&x0e)===x0e}lstatCached(){return this.#c&TCs?this:void 0}readlinkCached(){return this.#y}realpathCached(){return this.#N}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#y)return!0;if(!this.parent)return!1;let t=this.#c&MH;return!(t!==HH&&t!==x0e||this.#c&ZZt||this.#c&rJ)}calledReaddir(){return!!(this.#c&Fjr)}isENOENT(){return!!(this.#c&rJ)}isNamed(t){return this.nocase?this.#C===LZt(t):this.#C===oze(t)}async readlink(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}readlinkSync(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}#G(t){this.#c|=Fjr;for(let r=t.provisional;rn(null,t))}readdirCB(t,r=!1){if(!this.canReaddir()){r?t(null,[]):queueMicrotask(()=>t(null,[]));return}let n=this.children();if(this.calledReaddir()){let o=n.slice(0,n.provisional);r?t(null,o):queueMicrotask(()=>t(null,o));return}if(this.#H.push(t),this.#Y)return;this.#Y=!0;let a=this.fullpath();this.#e.readdir(a,{withFileTypes:!0},(o,l)=>{if(o)this.#L(o.code),n.provisional=0;else{for(let A of l)this.#P(A,n);this.#G(n)}this.#X(n.slice(0,n.provisional))})}#M;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();if(this.#M)await this.#M;else{let n=()=>{};this.#M=new Promise(a=>n=a);try{for(let a of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#P(a,t);this.#G(t)}catch(a){this.#L(a.code),t.provisional=0}this.#M=void 0,n()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#P(n,t);this.#G(t)}catch(n){this.#L(n.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(this.#c&RCs)return!1;let t=MH&this.#c;return t===HH||t===G6||t===x0e}shouldWalk(t,r){return(this.#c&G6)===G6&&!(this.#c&RCs)&&!t.has(this)&&(!r||r(this))}async realpath(){if(this.#N)return this.#N;if(!((VZt|ZZt|rJ)&this.#c))try{let t=await this.#e.promises.realpath(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}realpathSync(){if(this.#N)return this.#N;if(!((VZt|ZZt|rJ)&this.#c))try{let t=this.#e.realpathSync(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}[WCs](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],a=this;for(;a&&a.parent;)r.add(a),a.#B=n.join(this.sep),a.#w=n.join("/"),a=a.parent,n.push("..");for(a=t;a&&a.parent&&!r.has(a);)a.#B=void 0,a.#w=void 0,a=a.parent}};z0.PathBase=fx;var cze=class e extends fx{sep="\\";splitSep=UTl;constructor(t,r=HH,n,a,o,l,A){super(t,r,n,a,o,l,A)}newChild(t,r=HH,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(t){return PZt.win32.parse(t).root}getRoot(t){if(t=JTl(t.toUpperCase()),t===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(t,r))return this.roots[t]=n;return this.roots[t]=new gze(t,this).root}sameRoot(t,r=this.root.name){return t=t.toUpperCase().replace(/\//g,"\\").replace(GCs,"$1\\"),t===r}};z0.PathWin32=cze;var lze=class e extends fx{splitSep="/";sep="/";constructor(t,r=HH,n,a,o,l,A){super(t,r,n,a,o,l,A)}getRootString(t){return t.startsWith("/")?"/":""}getRoot(t){return this.root}newChild(t,r=HH,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}};z0.PathPosix=lze;var uze=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(t=process.cwd(),r,n,{nocase:a,childrenCacheSize:o=16*1024,fs:l=ize}={}){this.#r=xCs(l),(t instanceof URL||t.startsWith("file://"))&&(t=(0,YTl.fileURLToPath)(t));let A=r.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(A),this.#e=new aze,this.#t=new aze,this.#n=new WZt(o);let f=A.substring(this.rootPath.length).split(n);if(f.length===1&&!f[0]&&f.pop(),a===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=a,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let I=this.root,C=f.length-1,b=r.sep,E=this.rootPath,N=!1;for(let B of f){let F=C--;I=I.child(B,{relative:new Array(F).fill("..").join(b),relativePosix:new Array(F).fill("..").join("/"),fullpath:E+=(N?"":b)+B}),N=!0}this.cwd=I}depth(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#n}resolve(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#e.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpath();return this.#e.set(r,a),a}resolvePosix(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#t.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,a),a}relative(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n}=r;if(t.canReaddir()){let a=await t.readdir();return n?a:a.map(o=>o.name)}else return[]}readdirSync(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0}=r;return t.canReaddir()?n?t.readdirSync():t.readdirSync().map(a=>a.name):[]}async lstat(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=await t.readlink();return r?n:n?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=t.readlinkSync();return r?n:n?.fullpath()}async realpath(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=await t.realpath();return r?n:n?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=t.realpathSync();return r?n:n?.fullpath()}async walk(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set,I=(b,E)=>{f.add(b),b.readdirCB((N,B)=>{if(N)return E(N);let F=B.length;if(!F)return E();let Q=()=>{--F===0&&E()};for(let X of B)(!o||o(X))&&A.push(n?X:X.fullpath()),a&&X.isSymbolicLink()?X.realpath().then(ae=>ae?.isUnknown()?ae.lstat():ae).then(ae=>ae?.shouldWalk(f,l)?I(ae,Q):Q()):X.shouldWalk(f,l)?I(X,Q):Q()},!0)},C=t;return new Promise((b,E)=>{I(C,N=>{if(N)return E(N);b(A)})})}walkSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set([t]);for(let I of f){let C=I.readdirSync();for(let b of C){(!o||o(b))&&A.push(n?b:b.fullpath());let E=b;if(b.isSymbolicLink()){if(!(a&&(E=b.realpathSync())))continue;E.isUnknown()&&E.lstatSync()}E.shouldWalk(f,l)&&f.add(E)}}return A}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,r={}){return typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd),this.stream(t,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r;(!o||o(t))&&(yield n?t:t.fullpath());let A=new Set([t]);for(let f of A){let I=f.readdirSync();for(let C of I){(!o||o(C))&&(yield n?C:C.fullpath());let b=C;if(C.isSymbolicLink()){if(!(a&&(b=C.realpathSync())))continue;b.isUnknown()&&b.lstatSync()}b.shouldWalk(A,l)&&A.add(b)}}}stream(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new wCs.Minipass({objectMode:!0});(!o||o(t))&&A.write(n?t:t.fullpath());let f=new Set,I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=(Q,X,ae=!1)=>{if(Q)return A.emit("error",Q);if(a&&!ae){let ne=[];for(let ce of X)ce.isSymbolicLink()&&ne.push(ce.realpath().then(fe=>fe?.isUnknown()?fe.lstat():fe));if(ne.length){Promise.all(ne).then(()=>B(null,X,!0));return}}for(let ne of X)ne&&(!o||o(ne))&&(A.write(n?ne:ne.fullpath())||(E=!0));C--;for(let ne of X){let ce=ne.realpathCached()||ne;ce.shouldWalk(f,l)&&I.push(ce)}E&&!A.flowing?A.once("drain",b):F||b()},F=!0;N.readdirCB(B,!0),F=!1}};return b(),A}streamSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new wCs.Minipass({objectMode:!0}),f=new Set;(!o||o(t))&&A.write(n?t:t.fullpath());let I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=N.readdirSync();for(let F of B)(!o||o(F))&&(A.write(n?F:F.fullpath())||(E=!0));C--;for(let F of B){let Q=F;if(F.isSymbolicLink()){if(!(a&&(Q=F.realpathSync())))continue;Q.isUnknown()&&Q.lstatSync()}Q.shouldWalk(f,l)&&I.push(Q)}}E&&!A.flowing&&A.once("drain",b)};return b(),A}chdir(t=this.cwd){let r=this.cwd;this.cwd=typeof t=="string"?this.cwd.resolve(t):t,this.cwd[WCs](r)}};z0.PathScurryBase=uze;var gze=class extends uze{sep="\\";constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,PZt.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let a=this.cwd;a;a=a.parent)a.nocase=this.nocase}parseRootPath(t){return PZt.win32.parse(t).root.toUpperCase()}newRoot(t){return new cze(this.rootPath,G6,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}};z0.PathScurryWin32=gze;var Aze=class extends uze{sep="/";constructor(t=process.cwd(),r={}){let{nocase:n=!1}=r;super(t,PZt.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(t){return"/"}newRoot(t){return new lze(this.rootPath,G6,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}};z0.PathScurryPosix=Aze;var OZt=class extends Aze{constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,{...r,nocase:n})}};z0.PathScurryDarwin=OZt;z0.Path=process.platform==="win32"?cze:lze;z0.PathScurry=process.platform==="win32"?gze:process.platform==="darwin"?OZt:Aze});var Vjr=H(MZt=>{"use strict";Object.defineProperty(MZt,"__esModule",{value:!0});MZt.Pattern=void 0;var jTl=Hue(),zTl=e=>e.length>=1,qTl=e=>e.length>=1,Ljr=class e{#e;#t;#n;length;#r;#i;#s;#o;#g;#l;#u=!0;constructor(t,r,n,a){if(!zTl(t))throw new TypeError("empty pattern list");if(!qTl(r))throw new TypeError("empty glob list");if(r.length!==t.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=t,this.#t=r,this.#n=n,this.#r=a,this.#n===0){if(this.isUNC()){let[o,l,A,f,...I]=this.#e,[C,b,E,N,...B]=this.#t;I[0]===""&&(I.shift(),B.shift());let F=[o,l,A,f,""].join("/"),Q=[C,b,E,N,""].join("/");this.#e=[F,...I],this.#t=[Q,...B],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[o,...l]=this.#e,[A,...f]=this.#t;l[0]===""&&(l.shift(),f.shift());let I=o+"/",C=A+"/";this.#e=[I,...l],this.#t=[C,...f],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===jTl.GLOBSTAR}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#s=this.#s||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#i!==void 0?this.#i:this.hasMore()?(this.#i=new e(this.#e,this.#t,this.#n+1,this.#r),this.#i.#l=this.#l,this.#i.#g=this.#g,this.#i.#o=this.#o,this.#i):this.#i=null}isUNC(){let t=this.#e;return this.#g!==void 0?this.#g:this.#g=this.#r==="win32"&&this.#n===0&&t[0]===""&&t[1]===""&&typeof t[2]=="string"&&!!t[2]&&typeof t[3]=="string"&&!!t[3]}isDrive(){let t=this.#e;return this.#o!==void 0?this.#o:this.#o=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0])}isAbsolute(){let t=this.#e;return this.#l!==void 0?this.#l:this.#l=t[0]===""&&t.length>1||this.isDrive()||this.isUNC()}root(){let t=this.#e[0];return typeof t=="string"&&this.isAbsolute()&&this.#n===0?t:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#u?!1:(this.#u=!1,!0)}};MZt.Pattern=Ljr});var Wjr=H(HZt=>{"use strict";Object.defineProperty(HZt,"__esModule",{value:!0});HZt.Ignore=void 0;var MCs=Hue(),$Tl=Vjr(),eRl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Pjr=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:r,nocase:n,noext:a,noglobstar:o,platform:l=eRl}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=l,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:a,noglobstar:o,optimizationLevel:2,platform:l,nocomment:!0,nonegate:!0};for(let A of t)this.add(A)}add(t){let r=new MCs.Minimatch(t,this.mmopts);for(let n=0;n{"use strict";Object.defineProperty(F6,"__esModule",{value:!0});F6.Processor=F6.SubWalks=F6.MatchRecord=F6.HasWalkedCache=void 0;var HCs=Hue(),YZt=class e{store;constructor(t=new Map){this.store=t}copy(){return new e(new Map(this.store))}hasWalked(t,r){return this.store.get(t.fullpath())?.has(r.globString())}storeWalked(t,r){let n=t.fullpath(),a=this.store.get(n);a?a.add(r.globString()):this.store.set(n,new Set([r.globString()]))}};F6.HasWalkedCache=YZt;var QZt=class{store=new Map;add(t,r,n){let a=(r?2:0)|(n?1:0),o=this.store.get(t);this.store.set(t,o===void 0?a:a&o)}entries(){return[...this.store.entries()].map(([t,r])=>[t,!!(r&2),!!(r&1)])}};F6.MatchRecord=QZt;var XZt=class{store=new Map;add(t,r){if(!t.canReaddir())return;let n=this.store.get(t);n?n.find(a=>a.globString()===r.globString())||n.push(r):this.store.set(t,[r])}get(t){let r=this.store.get(t);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}};F6.SubWalks=XZt;var Ojr=class e{hasWalkedCache;matches=new QZt;subwalks=new XZt;patterns;follow;dot;opts;constructor(t,r){this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=r?r.copy():new YZt}processPatterns(t,r){this.patterns=r;let n=r.map(a=>[t,a]);for(let[a,o]of n){this.hasWalkedCache.storeWalked(a,o);let l=o.root(),A=o.isAbsolute()&&this.opts.absolute!==!1;if(l){a=a.resolve(l==="/"&&this.opts.root!==void 0?this.opts.root:l);let b=o.rest();if(b)o=b;else{this.matches.add(a,!0,!1);continue}}if(a.isENOENT())continue;let f,I,C=!1;for(;typeof(f=o.pattern())=="string"&&(I=o.rest());)a=a.resolve(f),o=I,C=!0;if(f=o.pattern(),I=o.rest(),C){if(this.hasWalkedCache.hasWalked(a,o))continue;this.hasWalkedCache.storeWalked(a,o)}if(typeof f=="string"){let b=f===".."||f===""||f===".";this.matches.add(a.resolve(f),A,b);continue}else if(f===HCs.GLOBSTAR){(!a.isSymbolicLink()||this.follow||o.checkFollowGlobstar())&&this.subwalks.add(a,o);let b=I?.pattern(),E=I?.rest();if(!I||(b===""||b===".")&&!E)this.matches.add(a,A,b===""||b===".");else if(b===".."){let N=a.parent||a;E?this.hasWalkedCache.hasWalked(N,E)||this.subwalks.add(N,E):this.matches.add(N,A,!0)}}else f instanceof RegExp&&this.subwalks.add(a,o)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new e(this.opts,this.hasWalkedCache)}filterEntries(t,r){let n=this.subwalks.get(t),a=this.child();for(let o of r)for(let l of n){let A=l.isAbsolute(),f=l.pattern(),I=l.rest();f===HCs.GLOBSTAR?a.testGlobstar(o,l,I,A):f instanceof RegExp?a.testRegExp(o,f,I,A):a.testString(o,f,I,A)}return a}testGlobstar(t,r,n,a){if((this.dot||!t.name.startsWith("."))&&(r.hasMore()||this.matches.add(t,a,!1),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,r):t.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(t,n):r.markFollowGlobstar()&&this.subwalks.add(t,r)))),n){let o=n.pattern();if(typeof o=="string"&&o!==".."&&o!==""&&o!==".")this.testString(t,o,n.rest(),a);else if(o===".."){let l=t.parent||t;this.subwalks.add(l,n)}else o instanceof RegExp&&this.testRegExp(t,o,n.rest(),a)}}testRegExp(t,r,n,a){r.test(t.name)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}testString(t,r,n,a){t.isNamed(r)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}};F6.Processor=Ojr});var JCs=H(Yue=>{"use strict";Object.defineProperty(Yue,"__esModule",{value:!0});Yue.GlobStream=Yue.GlobWalker=Yue.GlobUtil=void 0;var tRl=rF(),QCs=Wjr(),XCs=YCs(),rRl=(e,t)=>typeof e=="string"?new QCs.Ignore([e],t):Array.isArray(e)?new QCs.Ignore(e,t):e,dze=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(t,r,n){if(this.patterns=t,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=rRl(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let a="cannot ignore child matches, ignore lacks add() method.";throw new Error(a)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(t){return this.seen.has(t)||!!this.#t?.ignored?.(t)}#i(t){return!!this.#t?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let t;for(;!this.paused&&(t=this.#e.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#e.push(t):t())}async matchCheck(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||await t.realpath(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=await o.realpath();l&&(l.isUnknown()||this.opts.stat)&&await l.lstat()}return this.matchCheckTest(o,r)}matchCheckTest(t,r){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!r||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#r(t)?t:void 0}matchCheckSync(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||t.realpathSync(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=o.realpathSync();l&&(l?.isUnknown()||this.opts.stat)&&l.lstatSync()}return this.matchCheckTest(o,r)}matchFinish(t,r){if(this.#r(t))return;if(!this.includeChildMatches&&this.#t?.add){let o=`${t.relativePosix()}/**`;this.#t.add(o)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(t);let a=this.opts.mark&&t.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(n){let o=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(o+a)}else{let o=this.opts.posix?t.relativePosix():t.relative(),l=this.opts.dotRelative&&!o.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(o?l+o+a:"."+a)}}async match(t,r,n){let a=await this.matchCheck(t,n);a&&this.matchFinish(a,r)}matchSync(t,r,n){let a=this.matchCheckSync(t,n);a&&this.matchFinish(a,r)}walkCB(t,r,n){this.signal?.aborted&&n(),this.walkCB2(t,r,new XCs.Processor(this.opts),n)}walkCB2(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirCached();A.calledReaddir()?this.walkCB3(A,f,n,l):A.readdirCB((I,C)=>this.walkCB3(A,C,n,l),!0)}l()}walkCB3(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let[A,f]of n.subwalks.entries())o++,this.walkCB2(A,f,n.child(),l);l()}walkCBSync(t,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(t,r,new XCs.Processor(this.opts),n)}walkCB2Sync(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2Sync(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirSync();this.walkCB3Sync(A,f,n,l)}l()}walkCB3Sync(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let[A,f]of n.subwalks.entries())o++,this.walkCB2Sync(A,f,n.child(),l);l()}};Yue.GlobUtil=dze;var Mjr=class extends dze{matches=new Set;constructor(t,r,n){super(t,r,n)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}};Yue.GlobWalker=Mjr;var Hjr=class extends dze{results;constructor(t,r,n){super(t,r,n),this.results=new tRl.Minipass({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};Yue.GlobStream=Hjr});var Qjr=H(KZt=>{"use strict";Object.defineProperty(KZt,"__esModule",{value:!0});KZt.Glob=void 0;var nRl=Hue(),iRl=wt("node:url"),JZt=OCs(),sRl=Vjr(),UZt=JCs(),oRl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Yjr=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,iRl.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof t=="string"&&(t=[t]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(t=t.map(f=>f.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");t=t.map(f=>f.includes("/")?f:`./**/${f}`)}if(this.pattern=t,this.platform=r.platform||oRl,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let f=r.platform==="win32"?JZt.PathScurryWin32:r.platform==="darwin"?JZt.PathScurryDarwin:r.platform?JZt.PathScurryPosix:JZt.PathScurry;this.scurry=new f(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",a={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},o=this.pattern.map(f=>new nRl.Minimatch(f,a)),[l,A]=o.reduce((f,I)=>(f[0].push(...I.set),f[1].push(...I.globParts),f),[[],[]]);this.patterns=l.map((f,I)=>{let C=A[I];if(!C)throw new Error("invalid pattern object");return new sRl.Pattern(f,C,0,this.platform)})}async walk(){return[...await new UZt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new UZt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new UZt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new UZt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};KZt.Glob=Yjr});var Xjr=H(jZt=>{"use strict";Object.defineProperty(jZt,"__esModule",{value:!0});jZt.hasMagic=void 0;var aRl=Hue(),cRl=(e,t={})=>{Array.isArray(e)||(e=[e]);for(let r of e)if(new aRl.Minimatch(r,t).hasMagic())return!0;return!1};jZt.hasMagic=cRl});var zCs=H(lC=>{"use strict";Object.defineProperty(lC,"__esModule",{value:!0});lC.glob=lC.sync=lC.iterate=lC.iterateSync=lC.stream=lC.streamSync=lC.Ignore=lC.hasMagic=lC.Glob=lC.unescape=lC.escape=void 0;lC.globStreamSync=pze;lC.globStream=Jjr;lC.globSync=Ujr;lC.globIterateSync=fze;lC.globIterate=Kjr;var UCs=Hue(),G0e=Qjr(),lRl=Xjr(),jCs=Hue();Object.defineProperty(lC,"escape",{enumerable:!0,get:function(){return jCs.escape}});Object.defineProperty(lC,"unescape",{enumerable:!0,get:function(){return jCs.unescape}});var uRl=Qjr();Object.defineProperty(lC,"Glob",{enumerable:!0,get:function(){return uRl.Glob}});var gRl=Xjr();Object.defineProperty(lC,"hasMagic",{enumerable:!0,get:function(){return gRl.hasMagic}});var ARl=Wjr();Object.defineProperty(lC,"Ignore",{enumerable:!0,get:function(){return ARl.Ignore}});function pze(e,t={}){return new G0e.Glob(e,t).streamSync()}function Jjr(e,t={}){return new G0e.Glob(e,t).stream()}function Ujr(e,t={}){return new G0e.Glob(e,t).walkSync()}async function KCs(e,t={}){return new G0e.Glob(e,t).walk()}function fze(e,t={}){return new G0e.Glob(e,t).iterateSync()}function Kjr(e,t={}){return new G0e.Glob(e,t).iterate()}lC.streamSync=pze;lC.stream=Object.assign(Jjr,{sync:pze});lC.iterateSync=fze;lC.iterate=Object.assign(Kjr,{sync:fze});lC.sync=Object.assign(Ujr,{stream:pze,iterate:fze});lC.glob=Object.assign(KCs,{glob:KCs,globSync:Ujr,sync:lC.sync,globStream:Jjr,stream:lC.stream,globStreamSync:pze,streamSync:lC.streamSync,globIterate:Kjr,iterate:lC.iterate,globIterateSync:fze,iterateSync:lC.iterateSync,Glob:G0e.Glob,hasMagic:lRl.hasMagic,escape:UCs.escape,unescape:UCs.unescape});lC.glob.glob=lC.glob});var jjr=H((Rsg,$Cs)=>{"use strict";var{glob:dRl}=zCs(),qCs=wt("path"),pRl=e=>e.split(qCs.win32.sep).join(qCs.posix.sep);$Cs.exports=(e,t)=>dRl(pRl(e),t)});var t_s=H((Nsg,e_s)=>{"use strict";var fRl=wt("fs/promises"),IRl=zGe(),{hasContent:hRl}=bjr();e_s.exports=mRl;async function mRl(e,t){let r=await hRl(e,t);return r&&r.sri?(await fRl.rm(IRl(e,r.sri),{recursive:!0,force:!0}),!0):!1}});var n_s=H((Dsg,Ize)=>{"use strict";var{rm:CRl}=wt("fs/promises"),_Rl=jjr(),yRl=$Ge(),zjr=J7e(),bRl=wt("path"),ERl=t_s();Ize.exports=r_s;Ize.exports.entry=r_s;function r_s(e,t,r){return zjr.clearMemoized(),yRl.delete(e,t,r)}Ize.exports.content=SRl;function SRl(e,t){return zjr.clearMemoized(),ERl(e,t)}Ize.exports.all=vRl;async function vRl(e){zjr.clearMemoized();let t=await _Rl(bRl.join(e,"*(content-*|index-*)"),{silent:!0,nosort:!0});return Promise.all(t.map(r=>CRl(r,{recursive:!0,force:!0})))}});var s_s=H((ksg,t6r)=>{"use strict";var{mkdir:BRl,readFile:wRl,rm:$jr,stat:e6r,truncate:TRl,writeFile:RRl}=wt("fs/promises"),i_s=zGe(),NRl=vZt(),DRl=jjr(),cFe=$Ge(),zZt=wt("path"),qjr=Jte(),kRl=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),xRl=e=>({concurrency:20,log:{silly(){}},...e});t6r.exports=GRl;async function GRl(e,t){t=xRl(t),t.log.silly("verify","verifying cache at",e);let r=[FRl,LRl,VRl,WRl,MRl,HRl,ZRl],n={};for(let a of r){let o=a.name,l=new Date,A=await a(e,t);A&&Object.keys(A).forEach(I=>{n[I]=A[I]});let f=new Date;n.runTime||(n.runTime={}),n.runTime[o]=f-l}return n.runTime.total=n.endTime-n.startTime,t.log.silly("verify","verification finished for",e,"in",`${n.runTime.total}ms`),n}async function FRl(){return{startTime:new Date}}async function ZRl(){return{endTime:new Date}}async function LRl(e,t){return t.log.silly("verify","fixing cache permissions"),await BRl(e,{recursive:!0}),null}async function VRl(e,t){t.log.silly("verify","garbage collecting content");let{default:r}=await Promise.resolve().then(()=>(AZt(),gZt)),n=cFe.lsStream(e),a=new Set;n.on("data",f=>{if(t.filter&&!t.filter(f))return;let I=qjr.parse(f.integrity);for(let C in I)a.add(I[C].toString())}),await new Promise((f,I)=>{n.on("end",f).on("error",I)});let o=i_s.contentDir(e),l=await DRl(zZt.join(o,"**"),{follow:!1,nodir:!0,nosort:!0}),A={verifiedContent:0,reclaimedCount:0,reclaimedSize:0,badContentCount:0,keptSize:0};return await r(l,async f=>{let I=f.split(/[/\\]/),C=I.slice(I.length-3).join(""),b=I[I.length-4],E=qjr.fromHex(C,b);if(a.has(E.toString())){let N=await PRl(f,E);N.valid?(A.verifiedContent++,A.keptSize+=N.size):(A.reclaimedCount++,A.badContentCount++,A.reclaimedSize+=N.size)}else{A.reclaimedCount++;let N=await e6r(f);await $jr(f,{recursive:!0,force:!0}),A.reclaimedSize+=N.size}return A},{concurrency:t.concurrency}),A}async function PRl(e,t){let r={};try{let{size:n}=await e6r(e);r.size=n,r.valid=!0,await qjr.checkStream(new NRl.ReadStream(e),t)}catch(n){if(n.code==="ENOENT")return{size:0,valid:!1};if(n.code!=="EINTEGRITY")throw n;await $jr(e,{recursive:!0,force:!0}),r.valid=!1}return r}async function WRl(e,t){t.log.silly("verify","rebuilding index");let{default:r}=await Promise.resolve().then(()=>(AZt(),gZt)),n=await cFe.ls(e),a={missingContent:0,rejectedEntries:0,totalEntries:0},o={};for(let l in n)if(kRl(n,l)){let A=cFe.hashKey(l),f=n[l],I=t.filter&&!t.filter(f);I&&a.rejectedEntries++,o[A]&&!I?o[A].push(f):o[A]&&I||(I?(o[A]=[],o[A]._path=cFe.bucketPath(e,l)):(o[A]=[f],o[A]._path=cFe.bucketPath(e,l)))}return await r(Object.keys(o),l=>ORl(e,o[l],a,t),{concurrency:t.concurrency}),a}async function ORl(e,t,r){await TRl(t._path);for(let n of t){let a=i_s(e,n.integrity);try{await e6r(a),await cFe.insert(e,n.key,n.integrity,{metadata:n.metadata,size:n.size,time:n.time}),r.totalEntries++}catch(o){if(o.code==="ENOENT")r.rejectedEntries++,r.missingContent++;else throw o}}}function MRl(e,t){return t.log.silly("verify","cleaning tmp directory"),$jr(zZt.join(e,"tmp"),{recursive:!0,force:!0})}async function HRl(e,t){let r=zZt.join(e,"_lastverified");return t.log.silly("verify","writing verifile to "+r),RRl(r,`${Date.now()}`)}t6r.exports.lastRun=YRl;async function YRl(e){let t=await wRl(zZt.join(e,"_lastverified"),{encoding:"utf8"});return new Date(+t)}});var a_s=H((xsg,n6r)=>{"use strict";var{withTempDir:QRl}=uZt(),o_s=wt("fs/promises"),r6r=wt("path");n6r.exports.mkdir=XRl;async function XRl(e,t={}){let{tmpPrefix:r}=t,n=r6r.join(e,"tmp");await o_s.mkdir(n,{recursive:!0,owner:"inherit"});let a=`${n}${r6r.sep}${r||""}`;return o_s.mkdtemp(a,{owner:"inherit"})}n6r.exports.withTmp=JRl;function JRl(e,t,r){return r||(r=t,t={}),QRl(r6r.join(e,"tmp"),r,t)}});var g_s=H((Gsg,rE)=>{"use strict";var Que=Xms(),c_s=rCs(),i6r=n_s(),l_s=s_s(),{clearMemoized:URl}=J7e(),u_s=a_s(),qZt=$Ge();rE.exports.index={};rE.exports.index.compact=qZt.compact;rE.exports.index.insert=qZt.insert;rE.exports.ls=qZt.ls;rE.exports.ls.stream=qZt.lsStream;rE.exports.get=Que;rE.exports.get.byDigest=Que.byDigest;rE.exports.get.stream=Que.stream;rE.exports.get.stream.byDigest=Que.stream.byDigest;rE.exports.get.copy=Que.copy;rE.exports.get.copy.byDigest=Que.copy.byDigest;rE.exports.get.info=Que.info;rE.exports.get.hasContent=Que.hasContent;rE.exports.put=c_s;rE.exports.put.stream=c_s.stream;rE.exports.rm=i6r.entry;rE.exports.rm.all=i6r.all;rE.exports.rm.entry=rE.exports.rm;rE.exports.rm.content=i6r.content;rE.exports.clearMemoized=URl;rE.exports.tmp={};rE.exports.tmp.mkdir=u_s.mkdir;rE.exports.tmp.withTmp=u_s.withTmp;rE.exports.verify=l_s;rE.exports.verify.lastRun=l_s.lastRun});var o6r=H((Fsg,A_s)=>{"use strict";var KRl=jGe(),s6r=class extends KRl{#e=[];#t=new Map;constructor(t,...r){super(),this.#e=t.events,r.length&&this.push(...r)}on(t,r){return this.#e.includes(t)&&this.#t.has(t)?r(...this.#t.get(t)):super.on(t,r)}emit(t,...r){return this.#e.includes(t)&&this.#t.set(t,r),super.emit(t,...r)}};A_s.exports=s6r});var p_s=H((Zsg,d_s)=>{var{URL:jRl,format:zRl}=wt("url"),qRl={auth:!1,fragment:!1,search:!0,unicode:!1},$Rl=e=>{let t=new jRl(e.url);return`make-fetch-happen:request-cache:${zRl(t,qRl)}`};d_s.exports=$Rl});var h_s=H((Lsg,I_s)=>{"use strict";function f_s(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function eNl(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=void 0),t!=null&&(r.code=t);try{return f_s(e,r)}catch{r.message=e.message,r.stack=e.stack;let a=function(){};return a.prototype=Object.create(Object.getPrototypeOf(e)),f_s(new a,r)}}I_s.exports=eNl});var C_s=H((Vsg,m_s)=>{function YH(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}m_s.exports=YH;YH.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};YH.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};YH.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,a=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&a.unref(),!0};YH.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};YH.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};YH.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};YH.prototype.start=YH.prototype.try;YH.prototype.errors=function(){return this._errors};YH.prototype.attempts=function(){return this._attempts};YH.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=a,r=l)}return t}});var __s=H(F0e=>{var tNl=C_s();F0e.operation=function(e){var t=F0e.timeouts(e);return new tNl(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};F0e.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],a=0;a{y_s.exports=__s()});var a6r=H((Osg,S_s)=>{"use strict";var rNl=h_s(),nNl=b_s(),iNl=Object.prototype.hasOwnProperty;function E_s(e){return e&&e.code==="EPROMISERETRY"&&iNl.call(e,"retried")}function sNl(e,t){var r,n;return typeof e=="object"&&typeof t=="function"&&(r=t,t=e,e=r),n=nNl.operation(t),new Promise(function(a,o){n.attempt(function(l){Promise.resolve().then(function(){return e(function(A){throw E_s(A)&&(A=A.retried),rNl(new Error("Retrying"),"EPROMISERETRY",{retried:A})},l)}).then(a,function(A){E_s(A)&&(A=A.retried,n.retry(A||new Error))||o(A)})})})}S_s.exports=sNl});var c6r=H((Msg,v_s)=>{var oNl=Symbol("proc-log.meta");v_s.exports={META:oNl,output:{LEVELS:["standard","error","buffer","flush"],KEYS:{standard:"standard",error:"error",buffer:"buffer",flush:"flush"},standard:function(...e){return process.emit("output","standard",...e)},error:function(...e){return process.emit("output","error",...e)},buffer:function(...e){return process.emit("output","buffer",...e)},flush:function(...e){return process.emit("output","flush",...e)}},log:{LEVELS:["notice","error","warn","info","verbose","http","silly","timing","pause","resume"],KEYS:{notice:"notice",error:"error",warn:"warn",info:"info",verbose:"verbose",http:"http",silly:"silly",timing:"timing",pause:"pause",resume:"resume"},error:function(...e){return process.emit("log","error",...e)},notice:function(...e){return process.emit("log","notice",...e)},warn:function(...e){return process.emit("log","warn",...e)},info:function(...e){return process.emit("log","info",...e)},verbose:function(...e){return process.emit("log","verbose",...e)},http:function(...e){return process.emit("log","http",...e)},silly:function(...e){return process.emit("log","silly",...e)},timing:function(...e){return process.emit("log","timing",...e)},pause:function(){return process.emit("log","pause")},resume:function(){return process.emit("log","resume")}},time:{LEVELS:["start","end"],KEYS:{start:"start",end:"end"},start:function(e,t){process.emit("time","start",e);function r(){return process.emit("time","end",e)}if(typeof t=="function"){let n=t();return n&&n.finally?n.finally(r):(r(),n)}return r},end:function(e){return process.emit("time","end",e)}},input:{LEVELS:["start","end","read"],KEYS:{start:"start",end:"end",read:"read"},start:function(e){process.emit("input","start");function t(){return process.emit("input","end")}if(typeof e=="function"){let r=e();return r&&r.finally?r.finally(t):(t(),r)}return t},end:function(){return process.emit("input","end")},read:function(...e){let t,r,n=new Promise((a,o)=>{t=a,r=o});return process.emit("input","read",t,r,...e),n}}}});var l6r=H((Hsg,w_s)=>{"use strict";var{LRUCache:aNl}=yIe(),B_s=wt("dns"),$Zt=new aNl({max:50}),cNl=({family:e=0,hints:t=B_s.ADDRCONFIG,all:r=!1,verbatim:n=void 0,ttl:a=5*60*1e3,lookup:o=B_s.lookup})=>({hints:t,lookup:(l,...A)=>{let f=A.pop(),I=A[0]??{},C={family:e,hints:t,all:r,verbatim:n,...typeof I=="number"?{family:I}:I},b=JSON.stringify({hostname:l,...C});if($Zt.has(b)){let E=$Zt.get(b);return process.nextTick(f,null,...E)}o(l,C,(E,...N)=>E?f(E):($Zt.set(b,N,{ttl:a}),f(null,...N)))}});w_s.exports={cache:$Zt,getOptions:cNl}});var u6r=H((Ysg,R_s)=>{"use strict";var lNl=l6r(),uNl=e=>{let t=parseInt(e.family??"0",10),r=e.keepAlive??!0,n={keepAliveMsecs:r?1e3:void 0,maxSockets:e.maxSockets??15,maxTotalSockets:1/0,maxFreeSockets:r?256:void 0,scheduling:"fifo",...e,family:t,keepAlive:r,timeouts:{idle:e.timeout??0,connection:0,response:0,transfer:0,...e.timeouts},...lNl.getOptions({family:t,...e.dns})};return delete n.timeout,n},T_s=e=>{let t="",r=Object.entries(e).sort((n,a)=>n[0]-a[0]);for(let[n,a]of r)a==null?a="null":a instanceof URL?a=a.toString():typeof a=="object"&&(a=T_s(a)),t+=`${n}:${a}:`;return t},gNl=({secureEndpoint:e,...t})=>T_s({secureEndpoint:!!e,family:t.family,hints:t.hints,localAddress:t.localAddress,strictSsl:e?!!t.rejectUnauthorized:!1,ca:e?t.ca:null,cert:e?t.cert:null,key:e?t.key:null,keepAlive:t.keepAlive,keepAliveMsecs:t.keepAliveMsecs,maxSockets:t.maxSockets,maxTotalSockets:t.maxTotalSockets,maxFreeSockets:t.maxFreeSockets,scheduling:t.scheduling,timeouts:t.timeouts,proxy:t.proxy});R_s.exports={normalizeOptions:uNl,cacheOptions:gNl}});var k_s=H($V=>{"use strict";var ANl=$V&&$V.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dNl=$V&&$V.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),N_s=$V&&$V.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ANl(t,e,r);return dNl(t,e),t};Object.defineProperty($V,"__esModule",{value:!0});$V.req=$V.json=$V.toBuffer=void 0;var pNl=N_s(wt("http")),fNl=N_s(wt("https"));async function D_s(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}$V.toBuffer=D_s;async function INl(e){let r=(await D_s(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let a=n;throw a.message+=` (input: ${r})`,a}}$V.json=INl;function hNl(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?fNl:pNl).request(e,t),a=new Promise((o,l)=>{n.once("response",o).once("error",l).end()});return n.then=a.then.bind(a),n}$V.req=hNl});var hze=H(UO=>{"use strict";var G_s=UO&&UO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mNl=UO&&UO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),F_s=UO&&UO.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&G_s(t,e,r);return mNl(t,e),t},CNl=UO&&UO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&G_s(t,e,r)};Object.defineProperty(UO,"__esModule",{value:!0});UO.Agent=void 0;var _Nl=F_s(wt("net")),x_s=F_s(wt("http")),yNl=wt("https");CNl(k_s(),UO);var Z6=Symbol("AgentBaseInternalState"),g6r=class extends x_s.Agent{constructor(t){super(t),this[Z6]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new _Nl.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],a=n.indexOf(r);a!==-1&&(n.splice(a,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return(typeof t.secureEndpoint=="boolean"?t.secureEndpoint:this.isSecureEndpoint(t))?yNl.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let a={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(a),l=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(t,a)).then(A=>{if(this.decrementSockets(o,l),A instanceof x_s.Agent)return A.addRequest(t,a);this[Z6].currentSocket=A,super.createSocket(t,r,n)},A=>{this.decrementSockets(o,l),n(A)})}createConnection(){let t=this[Z6].currentSocket;if(this[Z6].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[Z6].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[Z6]&&(this[Z6].defaultPort=t)}get protocol(){return this[Z6].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[Z6]&&(this[Z6].protocol=t)}};UO.Agent=g6r});var V_s=H(QH=>{"use strict";var bNl=QH&&QH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ENl=QH&&QH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),L_s=QH&&QH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&bNl(t,e,r);return ENl(t,e),t},SNl=QH&&QH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QH,"__esModule",{value:!0});QH.HttpProxyAgent=void 0;var vNl=L_s(wt("net")),BNl=L_s(wt("tls")),wNl=SNl(uT()),TNl=wt("events"),RNl=hze(),Z_s=wt("url"),lFe=(0,wNl.default)("http-proxy-agent"),eLt=class extends RNl.Agent{constructor(t,r){super(r),this.proxy=typeof t=="string"?new Z_s.URL(t):t,this.proxyHeaders=r?.headers??{},lFe("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?NNl(r,"headers"):null,host:n,port:a}}addRequest(t,r){t._header=null,this.setRequestProps(t,r),super.addRequest(t,r)}setRequestProps(t,r){let{proxy:n}=this,a=r.secureEndpoint?"https:":"http:",o=t.getHeader("host")||"localhost",l=`${a}//${o}`,A=new Z_s.URL(t.path,l);r.port!==80&&(A.port=String(r.port)),t.path=String(A);let f=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let I=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;f["Proxy-Authorization"]=`Basic ${Buffer.from(I).toString("base64")}`}f["Proxy-Connection"]||(f["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let I of Object.keys(f)){let C=f[I];C&&t.setHeader(I,C)}}async connect(t,r){t._header=null,t.path.includes("://")||this.setRequestProps(t,r);let n,a;lFe("Regenerating stored HTTP header string for request"),t._implicitHeader(),t.outputData&&t.outputData.length>0&&(lFe("Patching connection write() output buffer with updated header"),n=t.outputData[0].data,a=n.indexOf(`\r +>>> no match, partial?`,t,E,r,N),E===f))}let F;if(typeof C=="string"?(F=b===C,this.debug("string match",C,b,F)):(F=C.test(b),this.debug("pattern match",C,b,F)),!F)return!1}if(l===f&&A===I)return!0;if(l===f)return n;if(A===I)return l===f-1&&t[l]==="";throw new Error("wtf?")}braceExpand(){return(0,cd.braceExpand)(this.pattern,this.options)}parse(t){(0,VZt.assertValidPattern)(t);let r=this.options;if(t==="**")return cd.GLOBSTAR;if(t==="")return"";let n,a=null;(n=t.match(ARl))?a=r.dot?pRl:dRl:(n=t.match(rRl))?a=(r.nocase?r.dot?oRl:sRl:r.dot?iRl:nRl)(n[1]):(n=t.match(fRl))?a=(r.nocase?r.dot?hRl:IRl:r.dot?mRl:CRl)(n):(n=t.match(aRl))?a=r.dot?lRl:cRl:(n=t.match(uRl))&&(a=gRl);let o=PCs.AST.fromGlob(t,this.options).toMMPattern();return a&&typeof o=="object"&&Reflect.defineProperty(o,"test",{value:a}),o}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?yRl:r.dot?bRl:ERl,a=new Set(r.nocase?["i"]:[]),o=t.map(f=>{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?RRl(C):C===cd.GLOBSTAR?cd.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==cd.GLOBSTAR||N===cd.GLOBSTAR||(N===void 0?E!==void 0&&E!==cd.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==cd.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=cd.GLOBSTAR))}),I.filter(C=>C!==cd.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var xRl=z0&&z0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),GRl=z0&&z0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),FRl=z0&&z0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&xRl(t,e,r);return GRl(t,e),t};Object.defineProperty(z0,"__esModule",{value:!0});z0.PathScurry=z0.Path=z0.PathScurryDarwin=z0.PathScurryPosix=z0.PathScurryWin32=z0.PathScurryBase=z0.PathPosix=z0.PathWin32=z0.PathBase=z0.ChildrenCache=z0.ResolveCache=void 0;var UCs=bIe(),HZt=wt("node:path"),ZRl=wt("node:url"),sze=wt("fs"),LRl=FRl(wt("node:fs")),VRl=sze.realpathSync.native,PZt=wt("node:fs/promises"),HCs=rF(),oze={lstatSync:sze.lstatSync,readdir:sze.readdir,readdirSync:sze.readdirSync,readlinkSync:sze.readlinkSync,realpathSync:VRl,promises:{lstat:PZt.lstat,readdir:PZt.readdir,readlink:PZt.readlink,realpath:PZt.realpath}},KCs=e=>!e||e===oze||e===LRl?oze:{...oze,...e,promises:{...oze.promises,...e.promises||{}}},jCs=/^\\\\\?\\([a-z]:)\\?$/i,PRl=e=>e.replace(/\//g,"\\").replace(jCs,"$1\\"),WRl=/[\\\/]/,HH=0,zCs=1,qCs=2,G6=4,$Cs=6,e_s=8,G0e=10,t_s=12,MH=15,ize=~MH,Mjr=16,YCs=32,aze=64,rJ=128,WZt=256,MZt=512,QCs=aze|rJ|MZt,ORl=1023,Hjr=e=>e.isFile()?e_s:e.isDirectory()?G6:e.isSymbolicLink()?G0e:e.isCharacterDevice()?qCs:e.isBlockDevice()?$Cs:e.isSocket()?t_s:e.isFIFO()?zCs:HH,XCs=new Map,cze=e=>{let t=XCs.get(e);if(t)return t;let r=e.normalize("NFKD");return XCs.set(e,r),r},JCs=new Map,OZt=e=>{let t=JCs.get(e);if(t)return t;let r=cze(e.toLowerCase());return JCs.set(e,r),r},lze=class extends UCs.LRUCache{constructor(){super({max:256})}};z0.ResolveCache=lze;var YZt=class extends UCs.LRUCache{constructor(t=16*1024){super({maxSize:t,sizeCalculation:r=>r.length+1})}};z0.ChildrenCache=YZt;var r_s=Symbol("PathScurry setAsCwd"),fx=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#i;get uid(){return this.#i}#s;get gid(){return this.#s}#o;get rdev(){return this.#o}#g;get blksize(){return this.#g}#l;get ino(){return this.#l}#u;get size(){return this.#u}#a;get blocks(){return this.#a}#m;get atimeMs(){return this.#m}#f;get mtimeMs(){return this.#f}#I;get ctimeMs(){return this.#I}#d;get birthtimeMs(){return this.#d}#b;get atime(){return this.#b}#h;get mtime(){return this.#h}#S;get ctime(){return this.#S}#v;get birthtime(){return this.#v}#C;#E;#_;#p;#B;#w;#c;#k;#y;#N;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,r=HH,n,a,o,l,A){this.name=t,this.#C=o?OZt(t):cze(t),this.#c=r&ORl,this.nocase=o,this.roots=a,this.root=n||this,this.#k=l,this.#_=A.fullpath,this.#B=A.relative,this.#w=A.relativePosix,this.parent=A.parent,this.parent?this.#e=this.parent.#e:this.#e=KCs(A.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#k}resolve(t){if(!t)return this;let r=this.getRootString(t),a=t.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#x(a):this.#x(a)}#x(t){let r=this;for(let n of t)r=r.child(n);return r}children(){let t=this.#k.get(this);if(t)return t;let r=Object.assign([],{provisional:0});return this.#k.set(this,r),this.#c&=~Mjr,r}child(t,r){if(t===""||t===".")return this;if(t==="..")return this.parent||this;let n=this.children(),a=this.nocase?OZt(t):cze(t);for(let f of n)if(f.#C===a)return f;let o=this.parent?this.sep:"",l=this.#_?this.#_+o+t:void 0,A=this.newChild(t,HH,{...r,parent:this,fullpath:l});return this.canReaddir()||(A.#c|=rJ),n.push(A),A}relative(){if(this.isCWD)return"";if(this.#B!==void 0)return this.#B;let t=this.name,r=this.parent;if(!r)return this.#B=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+t}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#w!==void 0)return this.#w;let t=this.name,r=this.parent;if(!r)return this.#w=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+t}fullpath(){if(this.#_!==void 0)return this.#_;let t=this.name,r=this.parent;if(!r)return this.#_=this.name;let a=r.fullpath()+(r.parent?this.sep:"")+t;return this.#_=a}fullpathPosix(){if(this.#p!==void 0)return this.#p;if(this.sep==="/")return this.#p=this.fullpath();if(!this.parent){let a=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(a)?this.#p=`//?/${a}`:this.#p=a}let t=this.parent,r=t.fullpathPosix(),n=r+(!r||!t.parent?"":"/")+this.name;return this.#p=n}isUnknown(){return(this.#c&MH)===HH}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#c&MH)===e_s}isDirectory(){return(this.#c&MH)===G6}isCharacterDevice(){return(this.#c&MH)===qCs}isBlockDevice(){return(this.#c&MH)===$Cs}isFIFO(){return(this.#c&MH)===zCs}isSocket(){return(this.#c&MH)===t_s}isSymbolicLink(){return(this.#c&G0e)===G0e}lstatCached(){return this.#c&YCs?this:void 0}readlinkCached(){return this.#y}realpathCached(){return this.#N}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#y)return!0;if(!this.parent)return!1;let t=this.#c&MH;return!(t!==HH&&t!==G0e||this.#c&WZt||this.#c&rJ)}calledReaddir(){return!!(this.#c&Mjr)}isENOENT(){return!!(this.#c&rJ)}isNamed(t){return this.nocase?this.#C===OZt(t):this.#C===cze(t)}async readlink(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}readlinkSync(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}#G(t){this.#c|=Mjr;for(let r=t.provisional;rn(null,t))}readdirCB(t,r=!1){if(!this.canReaddir()){r?t(null,[]):queueMicrotask(()=>t(null,[]));return}let n=this.children();if(this.calledReaddir()){let o=n.slice(0,n.provisional);r?t(null,o):queueMicrotask(()=>t(null,o));return}if(this.#H.push(t),this.#Y)return;this.#Y=!0;let a=this.fullpath();this.#e.readdir(a,{withFileTypes:!0},(o,l)=>{if(o)this.#L(o.code),n.provisional=0;else{for(let A of l)this.#P(A,n);this.#G(n)}this.#X(n.slice(0,n.provisional))})}#M;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();if(this.#M)await this.#M;else{let n=()=>{};this.#M=new Promise(a=>n=a);try{for(let a of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#P(a,t);this.#G(t)}catch(a){this.#L(a.code),t.provisional=0}this.#M=void 0,n()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#P(n,t);this.#G(t)}catch(n){this.#L(n.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(this.#c&QCs)return!1;let t=MH&this.#c;return t===HH||t===G6||t===G0e}shouldWalk(t,r){return(this.#c&G6)===G6&&!(this.#c&QCs)&&!t.has(this)&&(!r||r(this))}async realpath(){if(this.#N)return this.#N;if(!((MZt|WZt|rJ)&this.#c))try{let t=await this.#e.promises.realpath(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}realpathSync(){if(this.#N)return this.#N;if(!((MZt|WZt|rJ)&this.#c))try{let t=this.#e.realpathSync(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}[r_s](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],a=this;for(;a&&a.parent;)r.add(a),a.#B=n.join(this.sep),a.#w=n.join("/"),a=a.parent,n.push("..");for(a=t;a&&a.parent&&!r.has(a);)a.#B=void 0,a.#w=void 0,a=a.parent}};z0.PathBase=fx;var uze=class e extends fx{sep="\\";splitSep=WRl;constructor(t,r=HH,n,a,o,l,A){super(t,r,n,a,o,l,A)}newChild(t,r=HH,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(t){return HZt.win32.parse(t).root}getRoot(t){if(t=PRl(t.toUpperCase()),t===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(t,r))return this.roots[t]=n;return this.roots[t]=new dze(t,this).root}sameRoot(t,r=this.root.name){return t=t.toUpperCase().replace(/\//g,"\\").replace(jCs,"$1\\"),t===r}};z0.PathWin32=uze;var gze=class e extends fx{splitSep="/";sep="/";constructor(t,r=HH,n,a,o,l,A){super(t,r,n,a,o,l,A)}getRootString(t){return t.startsWith("/")?"/":""}getRoot(t){return this.root}newChild(t,r=HH,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}};z0.PathPosix=gze;var Aze=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(t=process.cwd(),r,n,{nocase:a,childrenCacheSize:o=16*1024,fs:l=oze}={}){this.#r=KCs(l),(t instanceof URL||t.startsWith("file://"))&&(t=(0,ZRl.fileURLToPath)(t));let A=r.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(A),this.#e=new lze,this.#t=new lze,this.#n=new YZt(o);let f=A.substring(this.rootPath.length).split(n);if(f.length===1&&!f[0]&&f.pop(),a===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=a,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let I=this.root,C=f.length-1,b=r.sep,E=this.rootPath,N=!1;for(let B of f){let F=C--;I=I.child(B,{relative:new Array(F).fill("..").join(b),relativePosix:new Array(F).fill("..").join("/"),fullpath:E+=(N?"":b)+B}),N=!0}this.cwd=I}depth(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#n}resolve(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#e.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpath();return this.#e.set(r,a),a}resolvePosix(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#t.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,a),a}relative(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n}=r;if(t.canReaddir()){let a=await t.readdir();return n?a:a.map(o=>o.name)}else return[]}readdirSync(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0}=r;return t.canReaddir()?n?t.readdirSync():t.readdirSync().map(a=>a.name):[]}async lstat(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=await t.readlink();return r?n:n?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=t.readlinkSync();return r?n:n?.fullpath()}async realpath(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=await t.realpath();return r?n:n?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=t.realpathSync();return r?n:n?.fullpath()}async walk(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set,I=(b,E)=>{f.add(b),b.readdirCB((N,B)=>{if(N)return E(N);let F=B.length;if(!F)return E();let Q=()=>{--F===0&&E()};for(let X of B)(!o||o(X))&&A.push(n?X:X.fullpath()),a&&X.isSymbolicLink()?X.realpath().then(ae=>ae?.isUnknown()?ae.lstat():ae).then(ae=>ae?.shouldWalk(f,l)?I(ae,Q):Q()):X.shouldWalk(f,l)?I(X,Q):Q()},!0)},C=t;return new Promise((b,E)=>{I(C,N=>{if(N)return E(N);b(A)})})}walkSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set([t]);for(let I of f){let C=I.readdirSync();for(let b of C){(!o||o(b))&&A.push(n?b:b.fullpath());let E=b;if(b.isSymbolicLink()){if(!(a&&(E=b.realpathSync())))continue;E.isUnknown()&&E.lstatSync()}E.shouldWalk(f,l)&&f.add(E)}}return A}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,r={}){return typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd),this.stream(t,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r;(!o||o(t))&&(yield n?t:t.fullpath());let A=new Set([t]);for(let f of A){let I=f.readdirSync();for(let C of I){(!o||o(C))&&(yield n?C:C.fullpath());let b=C;if(C.isSymbolicLink()){if(!(a&&(b=C.realpathSync())))continue;b.isUnknown()&&b.lstatSync()}b.shouldWalk(A,l)&&A.add(b)}}}stream(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new HCs.Minipass({objectMode:!0});(!o||o(t))&&A.write(n?t:t.fullpath());let f=new Set,I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=(Q,X,ae=!1)=>{if(Q)return A.emit("error",Q);if(a&&!ae){let ne=[];for(let ce of X)ce.isSymbolicLink()&&ne.push(ce.realpath().then(fe=>fe?.isUnknown()?fe.lstat():fe));if(ne.length){Promise.all(ne).then(()=>B(null,X,!0));return}}for(let ne of X)ne&&(!o||o(ne))&&(A.write(n?ne:ne.fullpath())||(E=!0));C--;for(let ne of X){let ce=ne.realpathCached()||ne;ce.shouldWalk(f,l)&&I.push(ce)}E&&!A.flowing?A.once("drain",b):F||b()},F=!0;N.readdirCB(B,!0),F=!1}};return b(),A}streamSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new HCs.Minipass({objectMode:!0}),f=new Set;(!o||o(t))&&A.write(n?t:t.fullpath());let I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=N.readdirSync();for(let F of B)(!o||o(F))&&(A.write(n?F:F.fullpath())||(E=!0));C--;for(let F of B){let Q=F;if(F.isSymbolicLink()){if(!(a&&(Q=F.realpathSync())))continue;Q.isUnknown()&&Q.lstatSync()}Q.shouldWalk(f,l)&&I.push(Q)}}E&&!A.flowing&&A.once("drain",b)};return b(),A}chdir(t=this.cwd){let r=this.cwd;this.cwd=typeof t=="string"?this.cwd.resolve(t):t,this.cwd[r_s](r)}};z0.PathScurryBase=Aze;var dze=class extends Aze{sep="\\";constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,HZt.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let a=this.cwd;a;a=a.parent)a.nocase=this.nocase}parseRootPath(t){return HZt.win32.parse(t).root.toUpperCase()}newRoot(t){return new uze(this.rootPath,G6,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}};z0.PathScurryWin32=dze;var pze=class extends Aze{sep="/";constructor(t=process.cwd(),r={}){let{nocase:n=!1}=r;super(t,HZt.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(t){return"/"}newRoot(t){return new gze(this.rootPath,G6,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}};z0.PathScurryPosix=pze;var QZt=class extends pze{constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,{...r,nocase:n})}};z0.PathScurryDarwin=QZt;z0.Path=process.platform==="win32"?uze:gze;z0.PathScurry=process.platform==="win32"?dze:process.platform==="darwin"?QZt:pze});var Qjr=H(XZt=>{"use strict";Object.defineProperty(XZt,"__esModule",{value:!0});XZt.Pattern=void 0;var MRl=Yue(),HRl=e=>e.length>=1,YRl=e=>e.length>=1,Yjr=class e{#e;#t;#n;length;#r;#i;#s;#o;#g;#l;#u=!0;constructor(t,r,n,a){if(!HRl(t))throw new TypeError("empty pattern list");if(!YRl(r))throw new TypeError("empty glob list");if(r.length!==t.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=t,this.#t=r,this.#n=n,this.#r=a,this.#n===0){if(this.isUNC()){let[o,l,A,f,...I]=this.#e,[C,b,E,N,...B]=this.#t;I[0]===""&&(I.shift(),B.shift());let F=[o,l,A,f,""].join("/"),Q=[C,b,E,N,""].join("/");this.#e=[F,...I],this.#t=[Q,...B],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[o,...l]=this.#e,[A,...f]=this.#t;l[0]===""&&(l.shift(),f.shift());let I=o+"/",C=A+"/";this.#e=[I,...l],this.#t=[C,...f],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===MRl.GLOBSTAR}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#s=this.#s||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#i!==void 0?this.#i:this.hasMore()?(this.#i=new e(this.#e,this.#t,this.#n+1,this.#r),this.#i.#l=this.#l,this.#i.#g=this.#g,this.#i.#o=this.#o,this.#i):this.#i=null}isUNC(){let t=this.#e;return this.#g!==void 0?this.#g:this.#g=this.#r==="win32"&&this.#n===0&&t[0]===""&&t[1]===""&&typeof t[2]=="string"&&!!t[2]&&typeof t[3]=="string"&&!!t[3]}isDrive(){let t=this.#e;return this.#o!==void 0?this.#o:this.#o=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0])}isAbsolute(){let t=this.#e;return this.#l!==void 0?this.#l:this.#l=t[0]===""&&t.length>1||this.isDrive()||this.isUNC()}root(){let t=this.#e[0];return typeof t=="string"&&this.isAbsolute()&&this.#n===0?t:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#u?!1:(this.#u=!1,!0)}};XZt.Pattern=Yjr});var Jjr=H(JZt=>{"use strict";Object.defineProperty(JZt,"__esModule",{value:!0});JZt.Ignore=void 0;var i_s=Yue(),QRl=Qjr(),XRl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Xjr=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:r,nocase:n,noext:a,noglobstar:o,platform:l=XRl}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=l,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:a,noglobstar:o,optimizationLevel:2,platform:l,nocomment:!0,nonegate:!0};for(let A of t)this.add(A)}add(t){let r=new i_s.Minimatch(t,this.mmopts);for(let n=0;n{"use strict";Object.defineProperty(F6,"__esModule",{value:!0});F6.Processor=F6.SubWalks=F6.MatchRecord=F6.HasWalkedCache=void 0;var s_s=Yue(),UZt=class e{store;constructor(t=new Map){this.store=t}copy(){return new e(new Map(this.store))}hasWalked(t,r){return this.store.get(t.fullpath())?.has(r.globString())}storeWalked(t,r){let n=t.fullpath(),a=this.store.get(n);a?a.add(r.globString()):this.store.set(n,new Set([r.globString()]))}};F6.HasWalkedCache=UZt;var KZt=class{store=new Map;add(t,r,n){let a=(r?2:0)|(n?1:0),o=this.store.get(t);this.store.set(t,o===void 0?a:a&o)}entries(){return[...this.store.entries()].map(([t,r])=>[t,!!(r&2),!!(r&1)])}};F6.MatchRecord=KZt;var jZt=class{store=new Map;add(t,r){if(!t.canReaddir())return;let n=this.store.get(t);n?n.find(a=>a.globString()===r.globString())||n.push(r):this.store.set(t,[r])}get(t){let r=this.store.get(t);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}};F6.SubWalks=jZt;var Ujr=class e{hasWalkedCache;matches=new KZt;subwalks=new jZt;patterns;follow;dot;opts;constructor(t,r){this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=r?r.copy():new UZt}processPatterns(t,r){this.patterns=r;let n=r.map(a=>[t,a]);for(let[a,o]of n){this.hasWalkedCache.storeWalked(a,o);let l=o.root(),A=o.isAbsolute()&&this.opts.absolute!==!1;if(l){a=a.resolve(l==="/"&&this.opts.root!==void 0?this.opts.root:l);let b=o.rest();if(b)o=b;else{this.matches.add(a,!0,!1);continue}}if(a.isENOENT())continue;let f,I,C=!1;for(;typeof(f=o.pattern())=="string"&&(I=o.rest());)a=a.resolve(f),o=I,C=!0;if(f=o.pattern(),I=o.rest(),C){if(this.hasWalkedCache.hasWalked(a,o))continue;this.hasWalkedCache.storeWalked(a,o)}if(typeof f=="string"){let b=f===".."||f===""||f===".";this.matches.add(a.resolve(f),A,b);continue}else if(f===s_s.GLOBSTAR){(!a.isSymbolicLink()||this.follow||o.checkFollowGlobstar())&&this.subwalks.add(a,o);let b=I?.pattern(),E=I?.rest();if(!I||(b===""||b===".")&&!E)this.matches.add(a,A,b===""||b===".");else if(b===".."){let N=a.parent||a;E?this.hasWalkedCache.hasWalked(N,E)||this.subwalks.add(N,E):this.matches.add(N,A,!0)}}else f instanceof RegExp&&this.subwalks.add(a,o)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new e(this.opts,this.hasWalkedCache)}filterEntries(t,r){let n=this.subwalks.get(t),a=this.child();for(let o of r)for(let l of n){let A=l.isAbsolute(),f=l.pattern(),I=l.rest();f===s_s.GLOBSTAR?a.testGlobstar(o,l,I,A):f instanceof RegExp?a.testRegExp(o,f,I,A):a.testString(o,f,I,A)}return a}testGlobstar(t,r,n,a){if((this.dot||!t.name.startsWith("."))&&(r.hasMore()||this.matches.add(t,a,!1),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,r):t.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(t,n):r.markFollowGlobstar()&&this.subwalks.add(t,r)))),n){let o=n.pattern();if(typeof o=="string"&&o!==".."&&o!==""&&o!==".")this.testString(t,o,n.rest(),a);else if(o===".."){let l=t.parent||t;this.subwalks.add(l,n)}else o instanceof RegExp&&this.testRegExp(t,o,n.rest(),a)}}testRegExp(t,r,n,a){r.test(t.name)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}testString(t,r,n,a){t.isNamed(r)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}};F6.Processor=Ujr});var l_s=H(Que=>{"use strict";Object.defineProperty(Que,"__esModule",{value:!0});Que.GlobStream=Que.GlobWalker=Que.GlobUtil=void 0;var JRl=rF(),a_s=Jjr(),c_s=o_s(),URl=(e,t)=>typeof e=="string"?new a_s.Ignore([e],t):Array.isArray(e)?new a_s.Ignore(e,t):e,fze=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(t,r,n){if(this.patterns=t,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=URl(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let a="cannot ignore child matches, ignore lacks add() method.";throw new Error(a)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(t){return this.seen.has(t)||!!this.#t?.ignored?.(t)}#i(t){return!!this.#t?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let t;for(;!this.paused&&(t=this.#e.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#e.push(t):t())}async matchCheck(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||await t.realpath(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=await o.realpath();l&&(l.isUnknown()||this.opts.stat)&&await l.lstat()}return this.matchCheckTest(o,r)}matchCheckTest(t,r){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!r||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#r(t)?t:void 0}matchCheckSync(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||t.realpathSync(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=o.realpathSync();l&&(l?.isUnknown()||this.opts.stat)&&l.lstatSync()}return this.matchCheckTest(o,r)}matchFinish(t,r){if(this.#r(t))return;if(!this.includeChildMatches&&this.#t?.add){let o=`${t.relativePosix()}/**`;this.#t.add(o)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(t);let a=this.opts.mark&&t.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(n){let o=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(o+a)}else{let o=this.opts.posix?t.relativePosix():t.relative(),l=this.opts.dotRelative&&!o.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(o?l+o+a:"."+a)}}async match(t,r,n){let a=await this.matchCheck(t,n);a&&this.matchFinish(a,r)}matchSync(t,r,n){let a=this.matchCheckSync(t,n);a&&this.matchFinish(a,r)}walkCB(t,r,n){this.signal?.aborted&&n(),this.walkCB2(t,r,new c_s.Processor(this.opts),n)}walkCB2(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirCached();A.calledReaddir()?this.walkCB3(A,f,n,l):A.readdirCB((I,C)=>this.walkCB3(A,C,n,l),!0)}l()}walkCB3(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let[A,f]of n.subwalks.entries())o++,this.walkCB2(A,f,n.child(),l);l()}walkCBSync(t,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(t,r,new c_s.Processor(this.opts),n)}walkCB2Sync(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2Sync(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirSync();this.walkCB3Sync(A,f,n,l)}l()}walkCB3Sync(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let[A,f]of n.subwalks.entries())o++,this.walkCB2Sync(A,f,n.child(),l);l()}};Que.GlobUtil=fze;var Kjr=class extends fze{matches=new Set;constructor(t,r,n){super(t,r,n)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}};Que.GlobWalker=Kjr;var jjr=class extends fze{results;constructor(t,r,n){super(t,r,n),this.results=new JRl.Minipass({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};Que.GlobStream=jjr});var qjr=H($Zt=>{"use strict";Object.defineProperty($Zt,"__esModule",{value:!0});$Zt.Glob=void 0;var KRl=Yue(),jRl=wt("node:url"),zZt=n_s(),zRl=Qjr(),qZt=l_s(),qRl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",zjr=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,jRl.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof t=="string"&&(t=[t]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(t=t.map(f=>f.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");t=t.map(f=>f.includes("/")?f:`./**/${f}`)}if(this.pattern=t,this.platform=r.platform||qRl,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let f=r.platform==="win32"?zZt.PathScurryWin32:r.platform==="darwin"?zZt.PathScurryDarwin:r.platform?zZt.PathScurryPosix:zZt.PathScurry;this.scurry=new f(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",a={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},o=this.pattern.map(f=>new KRl.Minimatch(f,a)),[l,A]=o.reduce((f,I)=>(f[0].push(...I.set),f[1].push(...I.globParts),f),[[],[]]);this.patterns=l.map((f,I)=>{let C=A[I];if(!C)throw new Error("invalid pattern object");return new zRl.Pattern(f,C,0,this.platform)})}async walk(){return[...await new qZt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new qZt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new qZt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new qZt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};$Zt.Glob=zjr});var $jr=H(eLt=>{"use strict";Object.defineProperty(eLt,"__esModule",{value:!0});eLt.hasMagic=void 0;var $Rl=Yue(),eNl=(e,t={})=>{Array.isArray(e)||(e=[e]);for(let r of e)if(new $Rl.Minimatch(r,t).hasMagic())return!0;return!1};eLt.hasMagic=eNl});var d_s=H(lC=>{"use strict";Object.defineProperty(lC,"__esModule",{value:!0});lC.glob=lC.sync=lC.iterate=lC.iterateSync=lC.stream=lC.streamSync=lC.Ignore=lC.hasMagic=lC.Glob=lC.unescape=lC.escape=void 0;lC.globStreamSync=Ize;lC.globStream=e6r;lC.globSync=t6r;lC.globIterateSync=hze;lC.globIterate=r6r;var u_s=Yue(),F0e=qjr(),tNl=$jr(),A_s=Yue();Object.defineProperty(lC,"escape",{enumerable:!0,get:function(){return A_s.escape}});Object.defineProperty(lC,"unescape",{enumerable:!0,get:function(){return A_s.unescape}});var rNl=qjr();Object.defineProperty(lC,"Glob",{enumerable:!0,get:function(){return rNl.Glob}});var nNl=$jr();Object.defineProperty(lC,"hasMagic",{enumerable:!0,get:function(){return nNl.hasMagic}});var iNl=Jjr();Object.defineProperty(lC,"Ignore",{enumerable:!0,get:function(){return iNl.Ignore}});function Ize(e,t={}){return new F0e.Glob(e,t).streamSync()}function e6r(e,t={}){return new F0e.Glob(e,t).stream()}function t6r(e,t={}){return new F0e.Glob(e,t).walkSync()}async function g_s(e,t={}){return new F0e.Glob(e,t).walk()}function hze(e,t={}){return new F0e.Glob(e,t).iterateSync()}function r6r(e,t={}){return new F0e.Glob(e,t).iterate()}lC.streamSync=Ize;lC.stream=Object.assign(e6r,{sync:Ize});lC.iterateSync=hze;lC.iterate=Object.assign(r6r,{sync:hze});lC.sync=Object.assign(t6r,{stream:Ize,iterate:hze});lC.glob=Object.assign(g_s,{glob:g_s,globSync:t6r,sync:lC.sync,globStream:e6r,stream:lC.stream,globStreamSync:Ize,streamSync:lC.streamSync,globIterate:r6r,iterate:lC.iterate,globIterateSync:hze,iterateSync:lC.iterateSync,Glob:F0e.Glob,hasMagic:tNl.hasMagic,escape:u_s.escape,unescape:u_s.unescape});lC.glob.glob=lC.glob});var n6r=H((Pog,f_s)=>{"use strict";var{glob:sNl}=d_s(),p_s=wt("path"),oNl=e=>e.split(p_s.win32.sep).join(p_s.posix.sep);f_s.exports=(e,t)=>sNl(oNl(e),t)});var h_s=H((Wog,I_s)=>{"use strict";var aNl=wt("fs/promises"),cNl=$Ge(),{hasContent:lNl}=Rjr();I_s.exports=uNl;async function uNl(e,t){let r=await lNl(e,t);return r&&r.sri?(await aNl.rm(cNl(e,r.sri),{recursive:!0,force:!0}),!0):!1}});var C_s=H((Oog,mze)=>{"use strict";var{rm:gNl}=wt("fs/promises"),ANl=n6r(),dNl=tFe(),i6r=K7e(),pNl=wt("path"),fNl=h_s();mze.exports=m_s;mze.exports.entry=m_s;function m_s(e,t,r){return i6r.clearMemoized(),dNl.delete(e,t,r)}mze.exports.content=INl;function INl(e,t){return i6r.clearMemoized(),fNl(e,t)}mze.exports.all=hNl;async function hNl(e){i6r.clearMemoized();let t=await ANl(pNl.join(e,"*(content-*|index-*)"),{silent:!0,nosort:!0});return Promise.all(t.map(r=>gNl(r,{recursive:!0,force:!0})))}});var y_s=H((Mog,c6r)=>{"use strict";var{mkdir:mNl,readFile:CNl,rm:o6r,stat:a6r,truncate:_Nl,writeFile:yNl}=wt("fs/promises"),__s=$Ge(),bNl=RZt(),ENl=n6r(),uFe=tFe(),tLt=wt("path"),s6r=Ute(),SNl=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),vNl=e=>({concurrency:20,log:{silly(){}},...e});c6r.exports=BNl;async function BNl(e,t){t=vNl(t),t.log.silly("verify","verifying cache at",e);let r=[wNl,RNl,NNl,kNl,GNl,FNl,TNl],n={};for(let a of r){let o=a.name,l=new Date,A=await a(e,t);A&&Object.keys(A).forEach(I=>{n[I]=A[I]});let f=new Date;n.runTime||(n.runTime={}),n.runTime[o]=f-l}return n.runTime.total=n.endTime-n.startTime,t.log.silly("verify","verification finished for",e,"in",`${n.runTime.total}ms`),n}async function wNl(){return{startTime:new Date}}async function TNl(){return{endTime:new Date}}async function RNl(e,t){return t.log.silly("verify","fixing cache permissions"),await mNl(e,{recursive:!0}),null}async function NNl(e,t){t.log.silly("verify","garbage collecting content");let{default:r}=await Promise.resolve().then(()=>(IZt(),fZt)),n=uFe.lsStream(e),a=new Set;n.on("data",f=>{if(t.filter&&!t.filter(f))return;let I=s6r.parse(f.integrity);for(let C in I)a.add(I[C].toString())}),await new Promise((f,I)=>{n.on("end",f).on("error",I)});let o=__s.contentDir(e),l=await ENl(tLt.join(o,"**"),{follow:!1,nodir:!0,nosort:!0}),A={verifiedContent:0,reclaimedCount:0,reclaimedSize:0,badContentCount:0,keptSize:0};return await r(l,async f=>{let I=f.split(/[/\\]/),C=I.slice(I.length-3).join(""),b=I[I.length-4],E=s6r.fromHex(C,b);if(a.has(E.toString())){let N=await DNl(f,E);N.valid?(A.verifiedContent++,A.keptSize+=N.size):(A.reclaimedCount++,A.badContentCount++,A.reclaimedSize+=N.size)}else{A.reclaimedCount++;let N=await a6r(f);await o6r(f,{recursive:!0,force:!0}),A.reclaimedSize+=N.size}return A},{concurrency:t.concurrency}),A}async function DNl(e,t){let r={};try{let{size:n}=await a6r(e);r.size=n,r.valid=!0,await s6r.checkStream(new bNl.ReadStream(e),t)}catch(n){if(n.code==="ENOENT")return{size:0,valid:!1};if(n.code!=="EINTEGRITY")throw n;await o6r(e,{recursive:!0,force:!0}),r.valid=!1}return r}async function kNl(e,t){t.log.silly("verify","rebuilding index");let{default:r}=await Promise.resolve().then(()=>(IZt(),fZt)),n=await uFe.ls(e),a={missingContent:0,rejectedEntries:0,totalEntries:0},o={};for(let l in n)if(SNl(n,l)){let A=uFe.hashKey(l),f=n[l],I=t.filter&&!t.filter(f);I&&a.rejectedEntries++,o[A]&&!I?o[A].push(f):o[A]&&I||(I?(o[A]=[],o[A]._path=uFe.bucketPath(e,l)):(o[A]=[f],o[A]._path=uFe.bucketPath(e,l)))}return await r(Object.keys(o),l=>xNl(e,o[l],a,t),{concurrency:t.concurrency}),a}async function xNl(e,t,r){await _Nl(t._path);for(let n of t){let a=__s(e,n.integrity);try{await a6r(a),await uFe.insert(e,n.key,n.integrity,{metadata:n.metadata,size:n.size,time:n.time}),r.totalEntries++}catch(o){if(o.code==="ENOENT")r.rejectedEntries++,r.missingContent++;else throw o}}}function GNl(e,t){return t.log.silly("verify","cleaning tmp directory"),o6r(tLt.join(e,"tmp"),{recursive:!0,force:!0})}async function FNl(e,t){let r=tLt.join(e,"_lastverified");return t.log.silly("verify","writing verifile to "+r),yNl(r,`${Date.now()}`)}c6r.exports.lastRun=ZNl;async function ZNl(e){let t=await CNl(tLt.join(e,"_lastverified"),{encoding:"utf8"});return new Date(+t)}});var E_s=H((Hog,u6r)=>{"use strict";var{withTempDir:LNl}=pZt(),b_s=wt("fs/promises"),l6r=wt("path");u6r.exports.mkdir=VNl;async function VNl(e,t={}){let{tmpPrefix:r}=t,n=l6r.join(e,"tmp");await b_s.mkdir(n,{recursive:!0,owner:"inherit"});let a=`${n}${l6r.sep}${r||""}`;return b_s.mkdtemp(a,{owner:"inherit"})}u6r.exports.withTmp=PNl;function PNl(e,t,r){return r||(r=t,t={}),LNl(l6r.join(e,"tmp"),r,t)}});var w_s=H((Yog,rE)=>{"use strict";var Xue=cCs(),S_s=mCs(),g6r=C_s(),v_s=y_s(),{clearMemoized:WNl}=K7e(),B_s=E_s(),rLt=tFe();rE.exports.index={};rE.exports.index.compact=rLt.compact;rE.exports.index.insert=rLt.insert;rE.exports.ls=rLt.ls;rE.exports.ls.stream=rLt.lsStream;rE.exports.get=Xue;rE.exports.get.byDigest=Xue.byDigest;rE.exports.get.stream=Xue.stream;rE.exports.get.stream.byDigest=Xue.stream.byDigest;rE.exports.get.copy=Xue.copy;rE.exports.get.copy.byDigest=Xue.copy.byDigest;rE.exports.get.info=Xue.info;rE.exports.get.hasContent=Xue.hasContent;rE.exports.put=S_s;rE.exports.put.stream=S_s.stream;rE.exports.rm=g6r.entry;rE.exports.rm.all=g6r.all;rE.exports.rm.entry=rE.exports.rm;rE.exports.rm.content=g6r.content;rE.exports.clearMemoized=WNl;rE.exports.tmp={};rE.exports.tmp.mkdir=B_s.mkdir;rE.exports.tmp.withTmp=B_s.withTmp;rE.exports.verify=v_s;rE.exports.verify.lastRun=v_s.lastRun});var d6r=H((Qog,T_s)=>{"use strict";var ONl=qGe(),A6r=class extends ONl{#e=[];#t=new Map;constructor(t,...r){super(),this.#e=t.events,r.length&&this.push(...r)}on(t,r){return this.#e.includes(t)&&this.#t.has(t)?r(...this.#t.get(t)):super.on(t,r)}emit(t,...r){return this.#e.includes(t)&&this.#t.set(t,r),super.emit(t,...r)}};T_s.exports=A6r});var N_s=H((Xog,R_s)=>{var{URL:MNl,format:HNl}=wt("url"),YNl={auth:!1,fragment:!1,search:!0,unicode:!1},QNl=e=>{let t=new MNl(e.url);return`make-fetch-happen:request-cache:${HNl(t,YNl)}`};R_s.exports=QNl});var x_s=H((Jog,k_s)=>{"use strict";function D_s(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function XNl(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=void 0),t!=null&&(r.code=t);try{return D_s(e,r)}catch{r.message=e.message,r.stack=e.stack;let a=function(){};return a.prototype=Object.create(Object.getPrototypeOf(e)),D_s(new a,r)}}k_s.exports=XNl});var F_s=H((Uog,G_s)=>{function YH(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}G_s.exports=YH;YH.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};YH.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};YH.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,a=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&a.unref(),!0};YH.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};YH.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};YH.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};YH.prototype.start=YH.prototype.try;YH.prototype.errors=function(){return this._errors};YH.prototype.attempts=function(){return this._attempts};YH.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=a,r=l)}return t}});var Z_s=H(Z0e=>{var JNl=F_s();Z0e.operation=function(e){var t=Z0e.timeouts(e);return new JNl(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};Z0e.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],a=0;a{L_s.exports=Z_s()});var p6r=H((zog,W_s)=>{"use strict";var UNl=x_s(),KNl=V_s(),jNl=Object.prototype.hasOwnProperty;function P_s(e){return e&&e.code==="EPROMISERETRY"&&jNl.call(e,"retried")}function zNl(e,t){var r,n;return typeof e=="object"&&typeof t=="function"&&(r=t,t=e,e=r),n=KNl.operation(t),new Promise(function(a,o){n.attempt(function(l){Promise.resolve().then(function(){return e(function(A){throw P_s(A)&&(A=A.retried),UNl(new Error("Retrying"),"EPROMISERETRY",{retried:A})},l)}).then(a,function(A){P_s(A)&&(A=A.retried,n.retry(A||new Error))||o(A)})})})}W_s.exports=zNl});var f6r=H((qog,O_s)=>{var qNl=Symbol("proc-log.meta");O_s.exports={META:qNl,output:{LEVELS:["standard","error","buffer","flush"],KEYS:{standard:"standard",error:"error",buffer:"buffer",flush:"flush"},standard:function(...e){return process.emit("output","standard",...e)},error:function(...e){return process.emit("output","error",...e)},buffer:function(...e){return process.emit("output","buffer",...e)},flush:function(...e){return process.emit("output","flush",...e)}},log:{LEVELS:["notice","error","warn","info","verbose","http","silly","timing","pause","resume"],KEYS:{notice:"notice",error:"error",warn:"warn",info:"info",verbose:"verbose",http:"http",silly:"silly",timing:"timing",pause:"pause",resume:"resume"},error:function(...e){return process.emit("log","error",...e)},notice:function(...e){return process.emit("log","notice",...e)},warn:function(...e){return process.emit("log","warn",...e)},info:function(...e){return process.emit("log","info",...e)},verbose:function(...e){return process.emit("log","verbose",...e)},http:function(...e){return process.emit("log","http",...e)},silly:function(...e){return process.emit("log","silly",...e)},timing:function(...e){return process.emit("log","timing",...e)},pause:function(){return process.emit("log","pause")},resume:function(){return process.emit("log","resume")}},time:{LEVELS:["start","end"],KEYS:{start:"start",end:"end"},start:function(e,t){process.emit("time","start",e);function r(){return process.emit("time","end",e)}if(typeof t=="function"){let n=t();return n&&n.finally?n.finally(r):(r(),n)}return r},end:function(e){return process.emit("time","end",e)}},input:{LEVELS:["start","end","read"],KEYS:{start:"start",end:"end",read:"read"},start:function(e){process.emit("input","start");function t(){return process.emit("input","end")}if(typeof e=="function"){let r=e();return r&&r.finally?r.finally(t):(t(),r)}return t},end:function(){return process.emit("input","end")},read:function(...e){let t,r,n=new Promise((a,o)=>{t=a,r=o});return process.emit("input","read",t,r,...e),n}}}});var I6r=H(($og,H_s)=>{"use strict";var{LRUCache:$Nl}=bIe(),M_s=wt("dns"),nLt=new $Nl({max:50}),eDl=({family:e=0,hints:t=M_s.ADDRCONFIG,all:r=!1,verbatim:n=void 0,ttl:a=5*60*1e3,lookup:o=M_s.lookup})=>({hints:t,lookup:(l,...A)=>{let f=A.pop(),I=A[0]??{},C={family:e,hints:t,all:r,verbatim:n,...typeof I=="number"?{family:I}:I},b=JSON.stringify({hostname:l,...C});if(nLt.has(b)){let E=nLt.get(b);return process.nextTick(f,null,...E)}o(l,C,(E,...N)=>E?f(E):(nLt.set(b,N,{ttl:a}),f(null,...N)))}});H_s.exports={cache:nLt,getOptions:eDl}});var h6r=H((eag,Q_s)=>{"use strict";var tDl=I6r(),rDl=e=>{let t=parseInt(e.family??"0",10),r=e.keepAlive??!0,n={keepAliveMsecs:r?1e3:void 0,maxSockets:e.maxSockets??15,maxTotalSockets:1/0,maxFreeSockets:r?256:void 0,scheduling:"fifo",...e,family:t,keepAlive:r,timeouts:{idle:e.timeout??0,connection:0,response:0,transfer:0,...e.timeouts},...tDl.getOptions({family:t,...e.dns})};return delete n.timeout,n},Y_s=e=>{let t="",r=Object.entries(e).sort((n,a)=>n[0]-a[0]);for(let[n,a]of r)a==null?a="null":a instanceof URL?a=a.toString():typeof a=="object"&&(a=Y_s(a)),t+=`${n}:${a}:`;return t},nDl=({secureEndpoint:e,...t})=>Y_s({secureEndpoint:!!e,family:t.family,hints:t.hints,localAddress:t.localAddress,strictSsl:e?!!t.rejectUnauthorized:!1,ca:e?t.ca:null,cert:e?t.cert:null,key:e?t.key:null,keepAlive:t.keepAlive,keepAliveMsecs:t.keepAliveMsecs,maxSockets:t.maxSockets,maxTotalSockets:t.maxTotalSockets,maxFreeSockets:t.maxFreeSockets,scheduling:t.scheduling,timeouts:t.timeouts,proxy:t.proxy});Q_s.exports={normalizeOptions:rDl,cacheOptions:nDl}});var U_s=H($V=>{"use strict";var iDl=$V&&$V.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),sDl=$V&&$V.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),X_s=$V&&$V.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&iDl(t,e,r);return sDl(t,e),t};Object.defineProperty($V,"__esModule",{value:!0});$V.req=$V.json=$V.toBuffer=void 0;var oDl=X_s(wt("http")),aDl=X_s(wt("https"));async function J_s(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}$V.toBuffer=J_s;async function cDl(e){let r=(await J_s(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let a=n;throw a.message+=` (input: ${r})`,a}}$V.json=cDl;function lDl(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?aDl:oDl).request(e,t),a=new Promise((o,l)=>{n.once("response",o).once("error",l).end()});return n.then=a.then.bind(a),n}$V.req=lDl});var Cze=H(UO=>{"use strict";var j_s=UO&&UO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uDl=UO&&UO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),z_s=UO&&UO.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&j_s(t,e,r);return uDl(t,e),t},gDl=UO&&UO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&j_s(t,e,r)};Object.defineProperty(UO,"__esModule",{value:!0});UO.Agent=void 0;var ADl=z_s(wt("net")),K_s=z_s(wt("http")),dDl=wt("https");gDl(U_s(),UO);var Z6=Symbol("AgentBaseInternalState"),m6r=class extends K_s.Agent{constructor(t){super(t),this[Z6]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new ADl.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],a=n.indexOf(r);a!==-1&&(n.splice(a,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return(typeof t.secureEndpoint=="boolean"?t.secureEndpoint:this.isSecureEndpoint(t))?dDl.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let a={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(a),l=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(t,a)).then(A=>{if(this.decrementSockets(o,l),A instanceof K_s.Agent)return A.addRequest(t,a);this[Z6].currentSocket=A,super.createSocket(t,r,n)},A=>{this.decrementSockets(o,l),n(A)})}createConnection(){let t=this[Z6].currentSocket;if(this[Z6].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[Z6].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[Z6]&&(this[Z6].defaultPort=t)}get protocol(){return this[Z6].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[Z6]&&(this[Z6].protocol=t)}};UO.Agent=m6r});var e0s=H(QH=>{"use strict";var pDl=QH&&QH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fDl=QH&&QH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$_s=QH&&QH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pDl(t,e,r);return fDl(t,e),t},IDl=QH&&QH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QH,"__esModule",{value:!0});QH.HttpProxyAgent=void 0;var hDl=$_s(wt("net")),mDl=$_s(wt("tls")),CDl=IDl(uT()),_Dl=wt("events"),yDl=Cze(),q_s=wt("url"),gFe=(0,CDl.default)("http-proxy-agent"),iLt=class extends yDl.Agent{constructor(t,r){super(r),this.proxy=typeof t=="string"?new q_s.URL(t):t,this.proxyHeaders=r?.headers??{},gFe("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?bDl(r,"headers"):null,host:n,port:a}}addRequest(t,r){t._header=null,this.setRequestProps(t,r),super.addRequest(t,r)}setRequestProps(t,r){let{proxy:n}=this,a=r.secureEndpoint?"https:":"http:",o=t.getHeader("host")||"localhost",l=`${a}//${o}`,A=new q_s.URL(t.path,l);r.port!==80&&(A.port=String(r.port)),t.path=String(A);let f=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let I=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;f["Proxy-Authorization"]=`Basic ${Buffer.from(I).toString("base64")}`}f["Proxy-Connection"]||(f["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let I of Object.keys(f)){let C=f[I];C&&t.setHeader(I,C)}}async connect(t,r){t._header=null,t.path.includes("://")||this.setRequestProps(t,r);let n,a;gFe("Regenerating stored HTTP header string for request"),t._implicitHeader(),t.outputData&&t.outputData.length>0&&(gFe("Patching connection write() output buffer with updated header"),n=t.outputData[0].data,a=n.indexOf(`\r \r -`)+4,t.outputData[0].data=t._header+n.substring(a),lFe("Output buffer: %o",t.outputData[0].data));let o;return this.proxy.protocol==="https:"?(lFe("Creating `tls.Socket`: %o",this.connectOpts),o=BNl.connect(this.connectOpts)):(lFe("Creating `net.Socket`: %o",this.connectOpts),o=vNl.connect(this.connectOpts)),await(0,TNl.once)(o,"connect"),o}};eLt.protocols=["http","https"];QH.HttpProxyAgent=eLt;function NNl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var P_s=H(uFe=>{"use strict";var DNl=uFe&&uFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uFe,"__esModule",{value:!0});uFe.parseProxyResponse=void 0;var kNl=DNl(uT()),tLt=(0,kNl.default)("https-proxy-agent:parse-proxy-response");function xNl(e){return new Promise((t,r)=>{let n=0,a=[];function o(){let C=e.read();C?I(C):e.once("readable",o)}function l(){e.removeListener("end",A),e.removeListener("error",f),e.removeListener("readable",o)}function A(){l(),tLt("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function f(C){l(),tLt("onerror %o",C),r(C)}function I(C){a.push(C),n+=C.length;let b=Buffer.concat(a,n),E=b.indexOf(`\r +`)+4,t.outputData[0].data=t._header+n.substring(a),gFe("Output buffer: %o",t.outputData[0].data));let o;return this.proxy.protocol==="https:"?(gFe("Creating `tls.Socket`: %o",this.connectOpts),o=mDl.connect(this.connectOpts)):(gFe("Creating `net.Socket`: %o",this.connectOpts),o=hDl.connect(this.connectOpts)),await(0,_Dl.once)(o,"connect"),o}};iLt.protocols=["http","https"];QH.HttpProxyAgent=iLt;function bDl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var t0s=H(AFe=>{"use strict";var EDl=AFe&&AFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AFe,"__esModule",{value:!0});AFe.parseProxyResponse=void 0;var SDl=EDl(uT()),sLt=(0,SDl.default)("https-proxy-agent:parse-proxy-response");function vDl(e){return new Promise((t,r)=>{let n=0,a=[];function o(){let C=e.read();C?I(C):e.once("readable",o)}function l(){e.removeListener("end",A),e.removeListener("error",f),e.removeListener("readable",o)}function A(){l(),sLt("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function f(C){l(),sLt("onerror %o",C),r(C)}function I(C){a.push(C),n+=C.length;let b=Buffer.concat(a,n),E=b.indexOf(`\r \r -`);if(E===-1){tLt("have not received end of HTTP headers yet..."),o();return}let N=b.slice(0,E).toString("ascii").split(`\r -`),B=N.shift();if(!B)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let F=B.split(" "),Q=+F[1],X=F.slice(2).join(" "),ae={};for(let ne of N){if(!ne)continue;let ce=ne.indexOf(":");if(ce===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${ne}"`));let fe=ne.slice(0,ce).toLowerCase(),ue=ne.slice(ce+1).trimStart(),de=ae[fe];typeof de=="string"?ae[fe]=[de,ue]:Array.isArray(de)?de.push(ue):ae[fe]=ue}tLt("got proxy server response: %o %o",B,ae),l(),t({connect:{statusCode:Q,statusText:X,headers:ae},buffered:b})}e.on("error",f),e.on("end",A),o()})}uFe.parseProxyResponse=xNl});var Y_s=H(XH=>{"use strict";var GNl=XH&&XH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),FNl=XH&&XH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),M_s=XH&&XH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&GNl(t,e,r);return FNl(t,e),t},H_s=XH&&XH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XH,"__esModule",{value:!0});XH.HttpsProxyAgent=void 0;var A6r=M_s(wt("net")),W_s=M_s(wt("tls")),ZNl=H_s(wt("assert")),LNl=H_s(uT()),VNl=hze(),PNl=wt("url"),WNl=P_s(),mze=(0,LNl.default)("https-proxy-agent"),rLt=class extends VNl.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new PNl.URL(t):t,this.proxyHeaders=r?.headers??{},mze("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?O_s(r,"headers"):null,host:n,port:a}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let a;if(n.protocol==="https:"){mze("Creating `tls.Socket`: %o",this.connectOpts);let E=this.connectOpts.servername||this.connectOpts.host;a=W_s.connect({...this.connectOpts,servername:E})}else mze("Creating `net.Socket`: %o",this.connectOpts),a=A6r.connect(this.connectOpts);let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},l=A6r.isIPv6(r.host)?`[${r.host}]`:r.host,A=`CONNECT ${l}:${r.port} HTTP/1.1\r +`);if(E===-1){sLt("have not received end of HTTP headers yet..."),o();return}let N=b.slice(0,E).toString("ascii").split(`\r +`),B=N.shift();if(!B)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let F=B.split(" "),Q=+F[1],X=F.slice(2).join(" "),ae={};for(let ne of N){if(!ne)continue;let ce=ne.indexOf(":");if(ce===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${ne}"`));let fe=ne.slice(0,ce).toLowerCase(),ue=ne.slice(ce+1).trimStart(),de=ae[fe];typeof de=="string"?ae[fe]=[de,ue]:Array.isArray(de)?de.push(ue):ae[fe]=ue}sLt("got proxy server response: %o %o",B,ae),l(),t({connect:{statusCode:Q,statusText:X,headers:ae},buffered:b})}e.on("error",f),e.on("end",A),o()})}AFe.parseProxyResponse=vDl});var o0s=H(XH=>{"use strict";var BDl=XH&&XH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wDl=XH&&XH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i0s=XH&&XH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&BDl(t,e,r);return wDl(t,e),t},s0s=XH&&XH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XH,"__esModule",{value:!0});XH.HttpsProxyAgent=void 0;var C6r=i0s(wt("net")),r0s=i0s(wt("tls")),TDl=s0s(wt("assert")),RDl=s0s(uT()),NDl=Cze(),DDl=wt("url"),kDl=t0s(),_ze=(0,RDl.default)("https-proxy-agent"),oLt=class extends NDl.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new DDl.URL(t):t,this.proxyHeaders=r?.headers??{},_ze("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?n0s(r,"headers"):null,host:n,port:a}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let a;if(n.protocol==="https:"){_ze("Creating `tls.Socket`: %o",this.connectOpts);let E=this.connectOpts.servername||this.connectOpts.host;a=r0s.connect({...this.connectOpts,servername:E})}else _ze("Creating `net.Socket`: %o",this.connectOpts),a=C6r.connect(this.connectOpts);let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},l=C6r.isIPv6(r.host)?`[${r.host}]`:r.host,A=`CONNECT ${l}:${r.port} HTTP/1.1\r `;if(n.username||n.password){let E=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(E).toString("base64")}`}o.Host=`${l}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let E of Object.keys(o))A+=`${E}: ${o[E]}\r -`;let f=(0,WNl.parseProxyResponse)(a);a.write(`${A}\r -`);let{connect:I,buffered:C}=await f;if(t.emit("proxyConnect",I),this.emit("proxyConnect",I,t),I.statusCode===200){if(t.once("socket",ONl),r.secureEndpoint){mze("Upgrading socket connection to TLS");let E=r.servername||r.host;return W_s.connect({...O_s(r,"host","path","port"),socket:a,servername:E})}return a}a.destroy();let b=new A6r.Socket({writable:!1});return b.readable=!0,t.once("socket",E=>{mze("Replaying proxy buffer for failed request"),(0,ZNl.default)(E.listenerCount("data")>0),E.push(C),E.push(null)}),b}};rLt.protocols=["http","https"];XH.HttpsProxyAgent=rLt;function ONl(e){e.resume()}function O_s(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var U_s=H(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});var Q_s=wt("buffer"),Z0e={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};ure.ERRORS=Z0e;function MNl(e){if(!Q_s.Buffer.isEncoding(e))throw new Error(Z0e.INVALID_ENCODING)}ure.checkEncoding=MNl;function X_s(e){return typeof e=="number"&&isFinite(e)&&XNl(e)}ure.isFiniteInteger=X_s;function J_s(e,t){if(typeof e=="number"){if(!X_s(e)||e<0)throw new Error(t?Z0e.INVALID_OFFSET:Z0e.INVALID_LENGTH)}else throw new Error(t?Z0e.INVALID_OFFSET_NON_NUMBER:Z0e.INVALID_LENGTH_NON_NUMBER)}function HNl(e){J_s(e,!1)}ure.checkLengthValue=HNl;function YNl(e){J_s(e,!0)}ure.checkOffsetValue=YNl;function QNl(e,t){if(e<0||e>t.length)throw new Error(Z0e.INVALID_TARGET_OFFSET)}ure.checkTargetOffset=QNl;function XNl(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e}function JNl(e){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof Q_s.Buffer.prototype[e]>"u")throw new Error(`Platform does not support Buffer.prototype.${e}.`)}ure.bigIntAndBufferInt64Check=JNl});var j_s=H(p6r=>{"use strict";Object.defineProperty(p6r,"__esModule",{value:!0});var Yh=U_s(),K_s=4096,UNl="utf8",d6r=class e{constructor(t){if(this.length=0,this._encoding=UNl,this._writeOffset=0,this._readOffset=0,e.isSmartBufferOptions(t))if(t.encoding&&(Yh.checkEncoding(t.encoding),this._encoding=t.encoding),t.size)if(Yh.isFiniteInteger(t.size)&&t.size>0)this._buff=Buffer.allocUnsafe(t.size);else throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(t.buff)if(Buffer.isBuffer(t.buff))this._buff=t.buff,this.length=t.buff.length;else throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(K_s);else{if(typeof t<"u")throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(K_s)}}static fromSize(t,r){return new this({size:t,encoding:r})}static fromBuffer(t,r){return new this({buff:t,encoding:r})}static fromOptions(t){return new this(t)}static isSmartBufferOptions(t){let r=t;return r&&(r.encoding!==void 0||r.size!==void 0||r.buff!==void 0)}readInt8(t){return this._readNumberValue(Buffer.prototype.readInt8,1,t)}readInt16BE(t){return this._readNumberValue(Buffer.prototype.readInt16BE,2,t)}readInt16LE(t){return this._readNumberValue(Buffer.prototype.readInt16LE,2,t)}readInt32BE(t){return this._readNumberValue(Buffer.prototype.readInt32BE,4,t)}readInt32LE(t){return this._readNumberValue(Buffer.prototype.readInt32LE,4,t)}readBigInt64BE(t){return Yh.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,t)}readBigInt64LE(t){return Yh.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,t)}writeInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeInt8,1,t,r),this}insertInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeInt8,1,t,r)}writeInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}insertInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}writeInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}insertInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}writeInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}insertInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}writeInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}insertInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}writeBigInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}insertBigInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}writeBigInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}insertBigInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}readUInt8(t){return this._readNumberValue(Buffer.prototype.readUInt8,1,t)}readUInt16BE(t){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,t)}readUInt16LE(t){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,t)}readUInt32BE(t){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,t)}readUInt32LE(t){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,t)}readBigUInt64BE(t){return Yh.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,t)}readBigUInt64LE(t){return Yh.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,t)}writeUInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,t,r)}insertUInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,t,r)}writeUInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}insertUInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}writeUInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}insertUInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}writeUInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}insertUInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}writeUInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}insertUInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}writeBigUInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}insertBigUInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}writeBigUInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}insertBigUInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}readFloatBE(t){return this._readNumberValue(Buffer.prototype.readFloatBE,4,t)}readFloatLE(t){return this._readNumberValue(Buffer.prototype.readFloatLE,4,t)}writeFloatBE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}insertFloatBE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}writeFloatLE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}insertFloatLE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}readDoubleBE(t){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,t)}readDoubleLE(t){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,t)}writeDoubleBE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}insertDoubleBE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}writeDoubleLE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}insertDoubleLE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}readString(t,r){let n;typeof t=="number"?(Yh.checkLengthValue(t),n=Math.min(t,this.length-this._readOffset)):(r=t,n=this.length-this._readOffset),typeof r<"u"&&Yh.checkEncoding(r);let a=this._buff.slice(this._readOffset,this._readOffset+n).toString(r||this._encoding);return this._readOffset+=n,a}insertString(t,r,n){return Yh.checkOffsetValue(r),this._handleString(t,!0,r,n)}writeString(t,r,n){return this._handleString(t,!1,r,n)}readStringNT(t){typeof t<"u"&&Yh.checkEncoding(t);let r=this.length;for(let a=this._readOffset;athis.length)throw new Error(Yh.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(t,r){Yh.checkOffsetValue(r),this._ensureCapacity(this.length+t),rthis.length?this.length=r+t:this.length+=t}_ensureWriteable(t,r){let n=typeof r=="number"?r:this._writeOffset;this._ensureCapacity(n+t),n+t>this.length&&(this.length=n+t)}_ensureCapacity(t){let r=this._buff.length;if(t>r){let n=this._buff,a=r*3/2+1;a"u"&&(this._readOffset+=r),a}_insertNumberValue(t,r,n,a){return Yh.checkOffsetValue(a),this.ensureInsertable(r,a),t.call(this._buff,n,a),this._writeOffset+=r,this}_writeNumberValue(t,r,n,a){if(typeof a=="number"){if(a<0)throw new Error(Yh.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);Yh.checkOffsetValue(a)}let o=typeof a=="number"?a:this._writeOffset;return this._ensureWriteable(r,o),t.call(this._buff,n,o),typeof a=="number"?this._writeOffset=Math.max(this._writeOffset,o+r):this._writeOffset+=r,this}};p6r.SmartBuffer=d6r});var f6r=H(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});HE.SOCKS5_NO_ACCEPTABLE_AUTH=HE.SOCKS5_CUSTOM_AUTH_END=HE.SOCKS5_CUSTOM_AUTH_START=HE.SOCKS_INCOMING_PACKET_SIZES=HE.SocksClientState=HE.Socks5Response=HE.Socks5HostType=HE.Socks5Auth=HE.Socks4Response=HE.SocksCommand=HE.ERRORS=HE.DEFAULT_TIMEOUT=void 0;var KNl=3e4;HE.DEFAULT_TIMEOUT=KNl;var jNl={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};HE.ERRORS=jNl;var zNl={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:e=>e+7,Socks4Response:8};HE.SOCKS_INCOMING_PACKET_SIZES=zNl;var z_s;(function(e){e[e.connect=1]="connect",e[e.bind=2]="bind",e[e.associate=3]="associate"})(z_s||(HE.SocksCommand=z_s={}));var q_s;(function(e){e[e.Granted=90]="Granted",e[e.Failed=91]="Failed",e[e.Rejected=92]="Rejected",e[e.RejectedIdent=93]="RejectedIdent"})(q_s||(HE.Socks4Response=q_s={}));var $_s;(function(e){e[e.NoAuth=0]="NoAuth",e[e.GSSApi=1]="GSSApi",e[e.UserPass=2]="UserPass"})($_s||(HE.Socks5Auth=$_s={}));var qNl=128;HE.SOCKS5_CUSTOM_AUTH_START=qNl;var $Nl=254;HE.SOCKS5_CUSTOM_AUTH_END=$Nl;var eDl=255;HE.SOCKS5_NO_ACCEPTABLE_AUTH=eDl;var e0s;(function(e){e[e.Granted=0]="Granted",e[e.Failure=1]="Failure",e[e.NotAllowed=2]="NotAllowed",e[e.NetworkUnreachable=3]="NetworkUnreachable",e[e.HostUnreachable=4]="HostUnreachable",e[e.ConnectionRefused=5]="ConnectionRefused",e[e.TTLExpired=6]="TTLExpired",e[e.CommandNotSupported=7]="CommandNotSupported",e[e.AddressNotSupported=8]="AddressNotSupported"})(e0s||(HE.Socks5Response=e0s={}));var t0s;(function(e){e[e.IPv4=1]="IPv4",e[e.Hostname=3]="Hostname",e[e.IPv6=4]="IPv6"})(t0s||(HE.Socks5HostType=t0s={}));var r0s;(function(e){e[e.Created=0]="Created",e[e.Connecting=1]="Connecting",e[e.Connected=2]="Connected",e[e.SentInitialHandshake=3]="SentInitialHandshake",e[e.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",e[e.SentAuthentication=5]="SentAuthentication",e[e.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",e[e.SentFinalHandshake=7]="SentFinalHandshake",e[e.ReceivedFinalResponse=8]="ReceivedFinalResponse",e[e.BoundWaitingForConnection=9]="BoundWaitingForConnection",e[e.Established=10]="Established",e[e.Disconnected=11]="Disconnected",e[e.Error=99]="Error"})(r0s||(HE.SocksClientState=r0s={}))});var h6r=H(gFe=>{"use strict";Object.defineProperty(gFe,"__esModule",{value:!0});gFe.shuffleArray=gFe.SocksClientError=void 0;var I6r=class extends Error{constructor(t,r){super(t),this.options=r}};gFe.SocksClientError=I6r;function tDl(e){for(let t=e.length-1;t>0;t--){let r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}}gFe.shuffleArray=tDl});var m6r=H(AFe=>{"use strict";Object.defineProperty(AFe,"__esModule",{value:!0});AFe.isCorrect=AFe.isInSubnet=void 0;function rDl(e){return this.subnetMask{"use strict";Object.defineProperty(L6,"__esModule",{value:!0});L6.RE_SUBNET_STRING=L6.RE_ADDRESS=L6.GROUPS=L6.BITS=void 0;L6.BITS=32;L6.GROUPS=4;L6.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;L6.RE_SUBNET_STRING=/\/\d{1,2}$/});var iLt=H(nLt=>{"use strict";Object.defineProperty(nLt,"__esModule",{value:!0});nLt.AddressError=void 0;var _6r=class extends Error{constructor(t,r){super(t),this.name="AddressError",r!==null&&(this.parseMessage=r)}};nLt.AddressError=_6r});var y6r=H((sLt,n0s)=>{(function(){var e,t=0xdeadbeefcafe,r=(t&16777215)==15715070;function n(Er,Zt,yn){Er!=null&&(typeof Er=="number"?this.fromNumber(Er,Zt,yn):Zt==null&&typeof Er!="string"?this.fromString(Er,256):this.fromString(Er,Zt))}function a(){return new n(null)}function o(Er,Zt,yn,ls,oa,Fs){for(;--Fs>=0;){var Wa=Zt*this[Er++]+yn[ls]+oa;oa=Math.floor(Wa/67108864),yn[ls++]=Wa&67108863}return oa}function l(Er,Zt,yn,ls,oa,Fs){for(var Wa=Zt&32767,Ca=Zt>>15;--Fs>=0;){var ld=this[Er]&32767,Rp=this[Er++]>>15,np=Ca*ld+Rp*Wa;ld=Wa*ld+((np&32767)<<15)+yn[ls]+(oa&1073741823),oa=(ld>>>30)+(np>>>15)+Ca*Rp+(oa>>>30),yn[ls++]=ld&1073741823}return oa}function A(Er,Zt,yn,ls,oa,Fs){for(var Wa=Zt&16383,Ca=Zt>>14;--Fs>=0;){var ld=this[Er]&16383,Rp=this[Er++]>>14,np=Ca*ld+Rp*Wa;ld=Wa*ld+((np&16383)<<14)+yn[ls]+oa,oa=(ld>>28)+(np>>14)+Ca*Rp,yn[ls++]=ld&268435455}return oa}var f=typeof navigator<"u";f&&r&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=l,e=30):f&&r&&navigator.appName!="Netscape"?(n.prototype.am=o,e=26):(n.prototype.am=A,e=28),n.prototype.DB=e,n.prototype.DM=(1<=0;--Zt)Er[Zt]=this[Zt];Er.t=this.t,Er.s=this.s}function X(Er){this.t=1,this.s=Er<0?-1:0,Er>0?this[0]=Er:Er<-1?this[0]=Er+this.DV:this.t=0}function ae(Er){var Zt=a();return Zt.fromInt(Er),Zt}function ne(Er,Zt){var yn;if(Zt==16)yn=4;else if(Zt==8)yn=3;else if(Zt==256)yn=8;else if(Zt==2)yn=1;else if(Zt==32)yn=5;else if(Zt==4)yn=2;else{this.fromRadix(Er,Zt);return}this.t=0,this.s=0;for(var ls=Er.length,oa=!1,Fs=0;--ls>=0;){var Wa=yn==8?Er[ls]&255:F(Er,ls);if(Wa<0){Er.charAt(ls)=="-"&&(oa=!0);continue}oa=!1,Fs==0?this[this.t++]=Wa:Fs+yn>this.DB?(this[this.t-1]|=(Wa&(1<>this.DB-Fs):this[this.t-1]|=Wa<=this.DB&&(Fs-=this.DB)}yn==8&&Er[0]&128&&(this.s=-1,Fs>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==Er;)--this.t}function fe(Er){if(this.s<0)return"-"+this.negate().toString(Er);var Zt;if(Er==16)Zt=4;else if(Er==8)Zt=3;else if(Er==2)Zt=1;else if(Er==32)Zt=5;else if(Er==4)Zt=2;else return this.toRadix(Er);var yn=(1<0)for(Ca>Ca)>0&&(oa=!0,Fs=B(ls));Wa>=0;)Ca>(Ca+=this.DB-Zt)):(ls=this[Wa]>>(Ca-=Zt)&yn,Ca<=0&&(Ca+=this.DB,--Wa)),ls>0&&(oa=!0),oa&&(Fs+=B(ls));return oa?Fs:"0"}function ue(){var Er=a();return n.ZERO.subTo(this,Er),Er}function de(){return this.s<0?this.negate():this}function be(Er){var Zt=this.s-Er.s;if(Zt!=0)return Zt;var yn=this.t;if(Zt=yn-Er.t,Zt!=0)return this.s<0?-Zt:Zt;for(;--yn>=0;)if((Zt=this[yn]-Er[yn])!=0)return Zt;return 0}function Se(Er){var Zt=1,yn;return(yn=Er>>>16)!=0&&(Er=yn,Zt+=16),(yn=Er>>8)!=0&&(Er=yn,Zt+=8),(yn=Er>>4)!=0&&(Er=yn,Zt+=4),(yn=Er>>2)!=0&&(Er=yn,Zt+=2),(yn=Er>>1)!=0&&(Er=yn,Zt+=1),Zt}function De(){return this.t<=0?0:this.DB*(this.t-1)+Se(this[this.t-1]^this.s&this.DM)}function k(Er,Zt){var yn;for(yn=this.t-1;yn>=0;--yn)Zt[yn+Er]=this[yn];for(yn=Er-1;yn>=0;--yn)Zt[yn]=0;Zt.t=this.t+Er,Zt.s=this.s}function et(Er,Zt){for(var yn=Er;yn=0;--Ca)Zt[Ca+Fs+1]=this[Ca]>>ls|Wa,Wa=(this[Ca]&oa)<=0;--Ca)Zt[Ca]=0;Zt[Fs]=Wa,Zt.t=this.t+Fs+1,Zt.s=this.s,Zt.clamp()}function Me(Er,Zt){Zt.s=this.s;var yn=Math.floor(Er/this.DB);if(yn>=this.t){Zt.t=0;return}var ls=Er%this.DB,oa=this.DB-ls,Fs=(1<>ls;for(var Wa=yn+1;Wa>ls;ls>0&&(Zt[this.t-yn-1]|=(this.s&Fs)<>=this.DB;if(Er.t>=this.DB;ls+=this.s}else{for(ls+=this.s;yn>=this.DB;ls-=Er.s}Zt.s=ls<0?-1:0,ls<-1?Zt[yn++]=this.DV+ls:ls>0&&(Zt[yn++]=ls),Zt.t=yn,Zt.clamp()}function St(Er,Zt){var yn=this.abs(),ls=Er.abs(),oa=yn.t;for(Zt.t=oa+ls.t;--oa>=0;)Zt[oa]=0;for(oa=0;oa=0;)Er[yn]=0;for(yn=0;yn=Zt.DV&&(Er[yn+Zt.t]-=Zt.DV,Er[yn+Zt.t+1]=1)}Er.t>0&&(Er[Er.t-1]+=Zt.am(yn,Zt[yn],Er,2*yn,0,1)),Er.s=0,Er.clamp()}function Yt(Er,Zt,yn){var ls=Er.abs();if(!(ls.t<=0)){var oa=this.abs();if(oa.t0?(ls.lShiftTo(ld,Fs),oa.lShiftTo(ld,yn)):(ls.copyTo(Fs),oa.copyTo(yn));var Rp=Fs.t,np=Fs[Rp-1];if(np!=0){var HA=np*(1<1?Fs[Rp-2]>>this.F2:0),df=this.FV/HA,Zs=(1<=0&&(yn[yn.t++]=1,yn.subTo(Dr,yn)),n.ONE.dlShiftTo(Rp,Dr),Dr.subTo(Fs,Fs);Fs.t=0;){var Wn=yn[--Ea]==np?this.DM:Math.floor(yn[Ea]*df+(yn[Ea-1]+so)*Zs);if((yn[Ea]+=Fs.am(0,Wn,yn,Ml,0,Rp))0&&yn.rShiftTo(ld,yn),Wa<0&&n.ZERO.subTo(yn,yn)}}}function Tr(Er){var Zt=a();return this.abs().divRemTo(Er,null,Zt),this.s<0&&Zt.compareTo(n.ZERO)>0&&Er.subTo(Zt,Zt),Zt}function Nr(Er){this.m=Er}function er(Er){return Er.s<0||Er.compareTo(this.m)>=0?Er.mod(this.m):Er}function vt(Er){return Er}function xt(Er){Er.divRemTo(this.m,null,Er)}function Zr(Er,Zt,yn){Er.multiplyTo(Zt,yn),this.reduce(yn)}function qt(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}Nr.prototype.convert=er,Nr.prototype.revert=vt,Nr.prototype.reduce=xt,Nr.prototype.mulTo=Zr,Nr.prototype.sqrTo=qt;function Xt(){if(this.t<1)return 0;var Er=this[0];if(!(Er&1))return 0;var Zt=Er&3;return Zt=Zt*(2-(Er&15)*Zt)&15,Zt=Zt*(2-(Er&255)*Zt)&255,Zt=Zt*(2-((Er&65535)*Zt&65535))&65535,Zt=Zt*(2-Er*Zt%this.DV)%this.DV,Zt>0?this.DV-Zt:-Zt}function lr(Er){this.m=Er,this.mp=Er.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(Zt,Zt),Zt}function Ar(Er){var Zt=a();return Er.copyTo(Zt),this.reduce(Zt),Zt}function qr(Er){for(;Er.t<=this.mt2;)Er[Er.t++]=0;for(var Zt=0;Zt>15)*this.mpl&this.um)<<15)&Er.DM;for(yn=Zt+this.m.t,Er[yn]+=this.m.am(0,ls,Er,Zt,0,this.m.t);Er[yn]>=Er.DV;)Er[yn]-=Er.DV,Er[++yn]++}Er.clamp(),Er.drShiftTo(this.m.t,Er),Er.compareTo(this.m)>=0&&Er.subTo(this.m,Er)}function _n(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}function ke(Er,Zt,yn){Er.multiplyTo(Zt,yn),this.reduce(yn)}lr.prototype.convert=cr,lr.prototype.revert=Ar,lr.prototype.reduce=qr,lr.prototype.mulTo=ke,lr.prototype.sqrTo=_n;function jt(){return(this.t>0?this[0]&1:this.s)==0}function Fn(Er,Zt){if(Er>4294967295||Er<1)return n.ONE;var yn=a(),ls=a(),oa=Zt.convert(this),Fs=Se(Er)-1;for(oa.copyTo(yn);--Fs>=0;)if(Zt.sqrTo(yn,ls),(Er&1<0)Zt.mulTo(ls,oa,yn);else{var Wa=yn;yn=ls,ls=Wa}return Zt.revert(yn)}function Nn(Er,Zt){var yn;return Er<256||Zt.isEven()?yn=new Nr(Zt):yn=new lr(Zt),this.exp(Er,yn)}n.prototype.copyTo=Q,n.prototype.fromInt=X,n.prototype.fromString=ne,n.prototype.clamp=ce,n.prototype.dlShiftTo=k,n.prototype.drShiftTo=et,n.prototype.lShiftTo=ct,n.prototype.rShiftTo=Me,n.prototype.subTo=je,n.prototype.multiplyTo=St,n.prototype.squareTo=At,n.prototype.divRemTo=Yt,n.prototype.invDigit=Xt,n.prototype.isEven=jt,n.prototype.exp=Fn,n.prototype.toString=fe,n.prototype.negate=ue,n.prototype.abs=de,n.prototype.compareTo=be,n.prototype.bitLength=De,n.prototype.mod=Tr,n.prototype.modPowInt=Nn,n.ZERO=ae(0),n.ONE=ae(1);function Hi(){var Er=a();return this.copyTo(Er),Er}function po(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function xi(){return this.t==0?this.s:this[0]<<16>>16}function io(Er){return Math.floor(Math.LN2*this.DB/Math.log(Er))}function ga(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Ya(Er){if(Er==null&&(Er=10),this.signum()==0||Er<2||Er>36)return"0";var Zt=this.chunkSize(Er),yn=Math.pow(Er,Zt),ls=ae(yn),oa=a(),Fs=a(),Wa="";for(this.divRemTo(ls,oa,Fs);oa.signum()>0;)Wa=(yn+Fs.intValue()).toString(Er).substr(1)+Wa,oa.divRemTo(ls,oa,Fs);return Fs.intValue().toString(Er)+Wa}function Gc(Er,Zt){this.fromInt(0),Zt==null&&(Zt=10);for(var yn=this.chunkSize(Zt),ls=Math.pow(Zt,yn),oa=!1,Fs=0,Wa=0,Ca=0;Ca=yn&&(this.dMultiply(ls),this.dAddOffset(Wa,0),Fs=0,Wa=0)}Fs>0&&(this.dMultiply(Math.pow(Zt,Fs)),this.dAddOffset(Wa,0)),oa&&n.ZERO.subTo(this,this)}function cl(Er,Zt,yn){if(typeof Zt=="number")if(Er<2)this.fromInt(1);else for(this.fromNumber(Er,yn),this.testBit(Er-1)||this.bitwiseTo(n.ONE.shiftLeft(Er-1),Qi,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(Zt);)this.dAddOffset(2,0),this.bitLength()>Er&&this.subTo(n.ONE.shiftLeft(Er-1),this);else{var ls=new Array,oa=Er&7;ls.length=(Er>>3)+1,Zt.nextBytes(ls),oa>0?ls[0]&=(1<0)for(yn>yn)!=(this.s&this.DM)>>yn&&(Zt[oa++]=ls|this.s<=0;)yn<8?(ls=(this[Er]&(1<>(yn+=this.DB-8)):(ls=this[Er]>>(yn-=8)&255,yn<=0&&(yn+=this.DB,--Er)),ls&128&&(ls|=-256),oa==0&&(this.s&128)!=(ls&128)&&++oa,(oa>0||ls!=this.s)&&(Zt[oa++]=ls);return Zt}function Hr(Er){return this.compareTo(Er)==0}function Wr(Er){return this.compareTo(Er)<0?this:Er}function Ft(Er){return this.compareTo(Er)>0?this:Er}function zr(Er,Zt,yn){var ls,oa,Fs=Math.min(Er.t,this.t);for(ls=0;ls>=16,Zt+=16),Er&255||(Er>>=8,Zt+=8),Er&15||(Er>>=4,Zt+=4),Er&3||(Er>>=2,Zt+=2),Er&1||++Zt,Zt}function vu(){for(var Er=0;Er=this.t?this.s!=0:(this[Zt]&1<>=this.DB;if(Er.t>=this.DB;ls+=this.s}else{for(ls+=this.s;yn>=this.DB;ls+=Er.s}Zt.s=ls<0?-1:0,ls>0?Zt[yn++]=ls:ls<-1&&(Zt[yn++]=this.DV+ls),Zt.t=yn,Zt.clamp()}function Ul(Er){var Zt=a();return this.addTo(Er,Zt),Zt}function Xu(Er){var Zt=a();return this.subTo(Er,Zt),Zt}function Da(Er){var Zt=a();return this.multiplyTo(Er,Zt),Zt}function pu(){var Er=a();return this.squareTo(Er),Er}function _g(Er){var Zt=a();return this.divRemTo(Er,Zt,null),Zt}function mI(Er){var Zt=a();return this.divRemTo(Er,null,Zt),Zt}function Qh(Er){var Zt=a(),yn=a();return this.divRemTo(Er,Zt,yn),new Array(Zt,yn)}function Ri(Er){this[this.t]=this.am(0,Er-1,this,0,0,this.t),++this.t,this.clamp()}function Do(Er,Zt){if(Er!=0){for(;this.t<=Zt;)this[this.t++]=0;for(this[Zt]+=Er;this[Zt]>=this.DV;)this[Zt]-=this.DV,++Zt>=this.t&&(this[this.t++]=0),++this[Zt]}}function Wt(){}function Hu(Er){return Er}function Ru(Er,Zt,yn){Er.multiplyTo(Zt,yn)}function Vs(Er,Zt){Er.squareTo(Zt)}Wt.prototype.convert=Hu,Wt.prototype.revert=Hu,Wt.prototype.mulTo=Ru,Wt.prototype.sqrTo=Vs;function Ju(Er){return this.exp(Er,new Wt)}function Yn(Er,Zt,yn){var ls=Math.min(this.t+Er.t,Zt);for(yn.s=0,yn.t=ls;ls>0;)yn[--ls]=0;var oa;for(oa=yn.t-this.t;ls=0;)yn[ls]=0;for(ls=Math.max(Zt-this.t,0);ls2*this.m.t)return Er.mod(this.m);if(Er.compareTo(this.m)<0)return Er;var Zt=a();return Er.copyTo(Zt),this.reduce(Zt),Zt}function GA(Er){return Er}function $i(Er){for(Er.drShiftTo(this.m.t-1,this.r2),Er.t>this.m.t+1&&(Er.t=this.m.t+1,Er.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);Er.compareTo(this.r2)<0;)Er.dAddOffset(1,this.m.t+1);for(Er.subTo(this.r2,Er);Er.compareTo(this.m)>=0;)Er.subTo(this.m,Er)}function dl(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}function Uf(Er,Zt,yn){Er.multiplyTo(Zt,yn),this.reduce(yn)}Eg.prototype.convert=OA,Eg.prototype.revert=GA,Eg.prototype.reduce=$i,Eg.prototype.mulTo=Uf,Eg.prototype.sqrTo=dl;function Kd(Er,Zt){var yn=Er.bitLength(),ls,oa=ae(1),Fs;if(yn<=0)return oa;yn<18?ls=1:yn<48?ls=3:yn<144?ls=4:yn<768?ls=5:ls=6,yn<8?Fs=new Nr(Zt):Zt.isEven()?Fs=new Eg(Zt):Fs=new lr(Zt);var Wa=new Array,Ca=3,ld=ls-1,Rp=(1<1){var np=a();for(Fs.sqrTo(Wa[1],np);Ca<=Rp;)Wa[Ca]=a(),Fs.mulTo(np,Wa[Ca-2],Wa[Ca]),Ca+=2}var HA=Er.t-1,df,Zs=!0,so=a(),Ea;for(yn=Se(Er[HA])-1;HA>=0;){for(yn>=ld?df=Er[HA]>>yn-ld&Rp:(df=(Er[HA]&(1<0&&(df|=Er[HA-1]>>this.DB+yn-ld)),Ca=ls;!(df&1);)df>>=1,--Ca;if((yn-=Ca)<0&&(yn+=this.DB,--HA),Zs)Wa[df].copyTo(oa),Zs=!1;else{for(;Ca>1;)Fs.sqrTo(oa,so),Fs.sqrTo(so,oa),Ca-=2;Ca>0?Fs.sqrTo(oa,so):(Ea=oa,oa=so,so=Ea),Fs.mulTo(so,Wa[df],oa)}for(;HA>=0&&!(Er[HA]&1<0&&(Zt.rShiftTo(Fs,Zt),yn.rShiftTo(Fs,yn));Zt.signum()>0;)(oa=Zt.getLowestSetBit())>0&&Zt.rShiftTo(oa,Zt),(oa=yn.getLowestSetBit())>0&&yn.rShiftTo(oa,yn),Zt.compareTo(yn)>=0?(Zt.subTo(yn,Zt),Zt.rShiftTo(1,Zt)):(yn.subTo(Zt,yn),yn.rShiftTo(1,yn));return Fs>0&&yn.lShiftTo(Fs,yn),yn}function oo(Er){if(Er<=0)return 0;var Zt=this.DV%Er,yn=this.s<0?Er-1:0;if(this.t>0)if(Zt==0)yn=this[0]%Er;else for(var ls=this.t-1;ls>=0;--ls)yn=(Zt*yn+this[ls])%Er;return yn}function Ki(Er){var Zt=Er.isEven();if(this.isEven()&&Zt||Er.signum()==0)return n.ZERO;for(var yn=Er.clone(),ls=this.clone(),oa=ae(1),Fs=ae(0),Wa=ae(0),Ca=ae(1);yn.signum()!=0;){for(;yn.isEven();)yn.rShiftTo(1,yn),Zt?((!oa.isEven()||!Fs.isEven())&&(oa.addTo(this,oa),Fs.subTo(Er,Fs)),oa.rShiftTo(1,oa)):Fs.isEven()||Fs.subTo(Er,Fs),Fs.rShiftTo(1,Fs);for(;ls.isEven();)ls.rShiftTo(1,ls),Zt?((!Wa.isEven()||!Ca.isEven())&&(Wa.addTo(this,Wa),Ca.subTo(Er,Ca)),Wa.rShiftTo(1,Wa)):Ca.isEven()||Ca.subTo(Er,Ca),Ca.rShiftTo(1,Ca);yn.compareTo(ls)>=0?(yn.subTo(ls,yn),Zt&&oa.subTo(Wa,oa),Fs.subTo(Ca,Fs)):(ls.subTo(yn,ls),Zt&&Wa.subTo(oa,Wa),Ca.subTo(Fs,Ca))}if(ls.compareTo(n.ONE)!=0)return n.ZERO;if(Ca.compareTo(Er)>=0)return Ca.subtract(Er);if(Ca.signum()<0)Ca.addTo(Er,Ca);else return Ca;return Ca.signum()<0?Ca.add(Er):Ca}var cc=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Xs=(1<<26)/cc[cc.length-1];function ws(Er){var Zt,yn=this.abs();if(yn.t==1&&yn[0]<=cc[cc.length-1]){for(Zt=0;Zt>1,Er>cc.length&&(Er=cc.length);for(var oa=a(),Fs=0;Fs>8&255,Dc[As++]^=Er>>16&255,Dc[As++]^=Er>>24&255,As>=MA&&(As-=MA)}function cm(){Tf(new Date().getTime())}if(Dc==null){Dc=new Array,As=0;var Fl;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var rc=new Uint8Array(32);for(window.crypto.getRandomValues(rc),Fl=0;Fl<32;++Fl)Dc[As++]=rc[Fl]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var sd=window.crypto.random(32);for(Fl=0;Fl>>8,Dc[As++]=Fl&255;As=0,cm()}function Om(){if(Ma==null){for(cm(),Ma=Mp(),Ma.init(Dc),As=0;As{(function(){"use strict";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(l){return n(o(l),arguments)}function r(l,A){return t.apply(null,[l].concat(A||[]))}function n(l,A){var f=1,I=l.length,C,b="",E,N,B,F,Q,X,ae,ne;for(E=0;E=0),B.type){case"b":C=parseInt(C,10).toString(2);break;case"c":C=String.fromCharCode(parseInt(C,10));break;case"d":case"i":C=parseInt(C,10);break;case"j":C=JSON.stringify(C,null,B.width?parseInt(B.width):0);break;case"e":C=B.precision?parseFloat(C).toExponential(B.precision):parseFloat(C).toExponential();break;case"f":C=B.precision?parseFloat(C).toFixed(B.precision):parseFloat(C);break;case"g":C=B.precision?String(Number(C.toPrecision(B.precision))):parseFloat(C);break;case"o":C=(parseInt(C,10)>>>0).toString(8);break;case"s":C=String(C),C=B.precision?C.substring(0,B.precision):C;break;case"t":C=String(!!C),C=B.precision?C.substring(0,B.precision):C;break;case"T":C=Object.prototype.toString.call(C).slice(8,-1).toLowerCase(),C=B.precision?C.substring(0,B.precision):C;break;case"u":C=parseInt(C,10)>>>0;break;case"v":C=C.valueOf(),C=B.precision?C.substring(0,B.precision):C;break;case"x":C=(parseInt(C,10)>>>0).toString(16);break;case"X":C=(parseInt(C,10)>>>0).toString(16).toUpperCase();break}e.json.test(B.type)?b+=C:(e.number.test(B.type)&&(!ae||B.sign)?(ne=ae?"+":"-",C=C.toString().replace(e.sign,"")):ne="",Q=B.pad_char?B.pad_char==="0"?"0":B.pad_char.charAt(1):" ",X=B.width-(ne+C).length,F=B.width&&X>0?Q.repeat(X):"",b+=B.align?ne+C+F:Q==="0"?ne+F+C:F+ne+C)}return b}var a=Object.create(null);function o(l){if(a[l])return a[l];for(var A=l,f,I=[],C=0;A;){if((f=e.text.exec(A))!==null)I.push(f[0]);else if((f=e.modulo.exec(A))!==null)I.push("%");else if((f=e.placeholder.exec(A))!==null){if(f[2]){C|=1;var b=[],E=f[2],N=[];if((N=e.key.exec(E))!==null)for(b.push(N[1]);(E=E.substring(N[0].length))!=="";)if((N=e.key_access.exec(E))!==null)b.push(N[1]);else if((N=e.index_access.exec(E))!==null)b.push(N[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=b}else C|=2;if(C===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");I.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");A=A.substring(f[0].length)}return a[l]=I}typeof oLt<"u"&&(oLt.sprintf=t,oLt.vsprintf=r),typeof window<"u"&&(window.sprintf=t,window.vsprintf=r,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:r}}))})()});var E6r=H(V6=>{"use strict";var iDl=V6&&V6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),sDl=V6&&V6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o0s=V6&&V6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&iDl(t,e,r);return sDl(t,e),t};Object.defineProperty(V6,"__esModule",{value:!0});V6.Address4=void 0;var i0s=o0s(m6r()),nJ=o0s(C6r()),s0s=iLt(),_ze=y6r(),dFe=Cze(),b6r=class e{constructor(t){this.groups=nJ.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=i0s.isCorrect(nJ.BITS),this.isInSubnet=i0s.isInSubnet,this.address=t;let r=nJ.RE_SUBNET_STRING.exec(t);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>nJ.BITS)throw new s0s.AddressError("Invalid subnet mask.");t=t.replace(nJ.RE_SUBNET_STRING,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new e(t),!0}catch{return!1}}parse(t){let r=t.split(".");if(!t.match(nJ.RE_ADDRESS))throw new s0s.AddressError("Invalid IPv4 address.");return r}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let r=t.replace(/:/g,"").padStart(8,"0"),n=[],a;for(a=0;a<8;a+=2){let o=r.slice(a,a+2);n.push(parseInt(o,16))}return new e(n.join("."))}static fromInteger(t){return e.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new e(n)}toHex(){return this.parsedAddress.map(t=>(0,dFe.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],r;for(r=0;r(0,dFe.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new _ze.BigInteger(this.mask()+"0".repeat(nJ.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new _ze.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new _ze.BigInteger(this.mask()+"1".repeat(nJ.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new _ze.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return e.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}reverseForm(t){t||(t={});let r=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?r:(0,dFe.sprintf)("%s.in-addr.arpa.",r)}isMulticast(){return this.isInSubnet(new e("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(nJ.BITS,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(nJ.RE_ADDRESS,(0,dFe.sprintf)('%s.%s',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};V6.Address4=b6r});var S6r=H(rB=>{"use strict";Object.defineProperty(rB,"__esModule",{value:!0});rB.RE_URL_WITH_PORT=rB.RE_URL=rB.RE_ZONE_STRING=rB.RE_SUBNET_STRING=rB.RE_BAD_ADDRESS=rB.RE_BAD_CHARACTERS=rB.TYPES=rB.SCOPES=rB.GROUPS=rB.BITS=void 0;rB.BITS=128;rB.GROUPS=8;rB.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};rB.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};rB.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;rB.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;rB.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;rB.RE_ZONE_STRING=/%.*$/;rB.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/);rB.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)});var v6r=H(P6=>{"use strict";Object.defineProperty(P6,"__esModule",{value:!0});P6.simpleGroup=P6.spanLeadingZeroes=P6.spanAll=P6.spanAllZeroes=void 0;var a0s=Cze();function c0s(e){return e.replace(/(0+)/g,'$1')}P6.spanAllZeroes=c0s;function oDl(e,t=0){return e.split("").map((n,a)=>(0,a0s.sprintf)('%s',n,a+t,c0s(n))).join("")}P6.spanAll=oDl;function l0s(e){return e.replace(/^(0+)/,'$1')}function aDl(e){return e.split(":").map(r=>l0s(r)).join(":")}P6.spanLeadingZeroes=aDl;function cDl(e,t=0){return e.split(":").map((n,a)=>/group-v4/.test(n)?n:(0,a0s.sprintf)('%s',a+t,l0s(n)))}P6.simpleGroup=cDl});var u0s=H(vD=>{"use strict";var lDl=vD&&vD.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uDl=vD&&vD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gDl=vD&&vD.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&lDl(t,e,r);return uDl(t,e),t};Object.defineProperty(vD,"__esModule",{value:!0});vD.possibleElisions=vD.simpleRegularExpression=vD.ADDRESS_BOUNDARY=vD.padGroup=vD.groupPossibilities=void 0;var ADl=gDl(S6r()),pFe=Cze();function cLt(e){return(0,pFe.sprintf)("(%s)",e.join("|"))}vD.groupPossibilities=cLt;function aLt(e){return e.length<4?(0,pFe.sprintf)("0{0,%d}%s",4-e.length,e):e}vD.padGroup=aLt;vD.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function dDl(e){let t=[];e.forEach((n,a)=>{parseInt(n,16)===0&&t.push(a)});let r=t.map(n=>e.map((a,o)=>{if(o===n){let l=o===0||o===ADl.GROUPS-1?":":"";return cLt([aLt(a),l])}return aLt(a)}).join(":"));return r.push(e.map(aLt).join(":")),cLt(r)}vD.simpleRegularExpression=dDl;function pDl(e,t,r){let n=t?"":":",a=r?"":":",o=[];!t&&!r&&o.push("::"),t&&r&&o.push(""),(r&&!t||!r&&t)&&o.push(":"),o.push((0,pFe.sprintf)("%s(:0{1,4}){1,%d}",n,e-1)),o.push((0,pFe.sprintf)("(0{1,4}:){1,%d}%s",e-1,a)),o.push((0,pFe.sprintf)("(0{1,4}:){%d}0{1,4}",e-1));for(let l=1;l{"use strict";var fDl=W6&&W6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),IDl=W6&&W6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),uLt=W6&&W6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&fDl(t,e,r);return IDl(t,e),t};Object.defineProperty(W6,"__esModule",{value:!0});W6.Address6=void 0;var g0s=uLt(m6r()),B6r=uLt(C6r()),YE=uLt(S6r()),w6r=uLt(v6r()),L0e=E6r(),V0e=u0s(),gre=iLt(),fL=y6r(),IL=Cze();function lLt(e){if(!e)throw new Error("Assertion failed.")}function hDl(e){let t=/(\d+)(\d{3})/;for(;t.test(e);)e=e.replace(t,"$1,$2");return e}function mDl(e){return e=e.replace(/^(0{1,})([1-9]+)$/,'$1$2'),e=e.replace(/^(0{1,})(0)$/,'$1$2'),e}function CDl(e,t){let r=[],n=[],a;for(a=0;at[1]&&n.push(e[a]);return r.concat(["compact"]).concat(n)}function A0s(e){return(0,IL.sprintf)("%04x",parseInt(e,16))}function d0s(e){return e&255}var T6r=class e{constructor(t,r){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=g0s.isInSubnet,this.isCorrect=g0s.isCorrect(YE.BITS),r===void 0?this.groups=YE.GROUPS:this.groups=r,this.address=t;let n=YE.RE_SUBNET_STRING.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>YE.BITS)throw new gre.AddressError("Invalid subnet mask.");t=t.replace(YE.RE_SUBNET_STRING,"")}else if(/\//.test(t))throw new gre.AddressError("Invalid subnet mask.");let a=YE.RE_ZONE_STRING.exec(t);a&&(this.zone=a[0],t=t.replace(YE.RE_ZONE_STRING,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new e(t),!0}catch{return!1}}static fromBigInteger(t){let r=t.toString(16).padStart(32,"0"),n=[],a;for(a=0;a65536)&&(n=null)):n=null,{address:new e(r),port:n}}static fromAddress4(t){let r=new L0e.Address4(t),n=YE.BITS-(B6r.BITS-r.subnetMask);return new e(`::ffff:${r.correctForm()}/${n}`)}static fromArpa(t){let r=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(r.length!==63)throw new gre.AddressError("Invalid 'ip6.arpa' form.");let a=r.split(".").reverse();for(let o=n;o>0;o--){let l=o*4;a.splice(l,0,":")}return r=a.join(""),new e(r)}microsoftTranscription(){return(0,IL.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let r=YE.BITS-this.subnetMask,n=Math.abs(t-YE.BITS),a=r-n;return a<0?"0":hDl(new fL.BigInteger("2",10).pow(a).toString(10))}_startAddress(){return new fL.BigInteger(this.mask()+"0".repeat(YE.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new fL.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new fL.BigInteger(this.mask()+"1".repeat(YE.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new fL.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=YE.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(YE.TYPES))if(this.isInSubnet(new e(t)))return YE.TYPES[t];return"Global unicast"}getBits(t,r){return new fL.BigInteger(this.getBitsBase2(t,r),2)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}getBitsBase16(t,r){let n=r-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,r).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,YE.BITS)}reverseForm(t){t||(t={});let r=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,r).reverse().join(".");return r>0?t.omitSuffix?n:(0,IL.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,r=[],n=0,a=[];for(t=0;t0&&(n>1&&a.push([t-n,t-1]),n=0)}n>1&&a.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=a.map(A=>A[1]-A[0]+1);if(a.length>0){let A=o.indexOf(Math.max(...o));r=CDl(this.parsedAddress,a[A])}else r=this.parsedAddress;for(t=0;t1?"s":"",r.join("")),t.replace(YE.RE_BAD_CHARACTERS,'$1'));let n=t.match(YE.RE_BAD_ADDRESS);if(n)throw new gre.AddressError((0,IL.sprintf)("Address failed regex: %s",n.join("")),t.replace(YE.RE_BAD_ADDRESS,'$1'));let a=[],o=t.split("::");if(o.length===2){let l=o[0].split(":"),A=o[1].split(":");l.length===1&&l[0]===""&&(l=[]),A.length===1&&A[0]===""&&(A=[]);let f=this.groups-(l.length+A.length);if(!f)throw new gre.AddressError("Error parsing groups");this.elidedGroups=f,this.elisionBegin=l.length,this.elisionEnd=l.length+this.elidedGroups,a=a.concat(l);for(let I=0;I(0,IL.sprintf)("%x",parseInt(l,16))),a.length!==this.groups)throw new gre.AddressError("Incorrect number of groups found");return a}canonicalForm(){return this.parsedAddress.map(A0s).join(":")}decimal(){return this.parsedAddress.map(t=>(0,IL.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new fL.BigInteger(this.parsedAddress.map(A0s).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return L0e.Address4.fromHex(new fL.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new e(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),a="";return/:$/.test(n)||(a=":"),n+a+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),r=this.getBits(80,96).xor(new fL.BigInteger("ffff",16)).toString(),n=L0e.Address4.fromHex(this.getBitsBase16(32,64)),a=L0e.Address4.fromHex(this.getBits(96,128).xor(new fL.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),l=this.getBitsBase2(64,80),A=o.testBit(15),f=o.testBit(14),I=o.testBit(8),C=o.testBit(9),b=new fL.BigInteger(l.slice(2,6)+l.slice(8,16),2).toString(10);return{prefix:(0,IL.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:a.address,flags:l,coneNat:A,microsoft:{reserved:f,universalLocal:C,groupIndividual:I,nonce:b},udpPort:r}}inspect6to4(){let t=this.getBitsBase16(0,16),r=L0e.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,IL.sprintf)("%s",t.slice(0,4)),gateway:r.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new e(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(d0s)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(d0s))}static fromUnsignedByteArray(t){let r=new fL.BigInteger("256",10),n=new fL.BigInteger("0",10),a=new fL.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(a.multiply(new fL.BigInteger(t[o].toString(10),10))),a=a.multiply(r);return e.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new e("2001::/32"))}is6to4(){return this.isInSubnet(new e("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,IL.sprintf)(":%s",t),(0,IL.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let r=this.correctForm;return t.v4&&(r=this.to4in6),t.className?(0,IL.sprintf)('%2$s',t.prefix,r.call(this),t.className):(0,IL.sprintf)('%2$s',t.prefix,r.call(this))}group(){if(this.elidedGroups===0)return w6r.simpleGroup(this.address).join(":");lLt(typeof this.elidedGroups=="number"),lLt(typeof this.elisionBegin=="number");let t=[],[r,n]=this.address.split("::");r.length?t.push(...w6r.simpleGroup(r)):t.push("");let a=["hover-group"];for(let o=this.elisionBegin;o',a.join(" "))),n.length?t.push(...w6r.simpleGroup(n,this.elisionEnd)):t.push(""),this.is4()&&(lLt(this.address4 instanceof L0e.Address4),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let r=[],n=new e(this.correctForm());if(n.elidedGroups===0)r.push((0,V0e.simpleRegularExpression)(n.parsedAddress));else if(n.elidedGroups===YE.GROUPS)r.push((0,V0e.possibleElisions)(YE.GROUPS));else{let a=n.address.split("::");a[0].length&&r.push((0,V0e.simpleRegularExpression)(a[0].split(":"))),lLt(typeof n.elidedGroups=="number"),r.push((0,V0e.possibleElisions)(n.elidedGroups,a[0].length!==0,a[1].length!==0)),a[1].length&&r.push((0,V0e.simpleRegularExpression)(a[1].split(":"))),r=[r.join(":")]}return t||(r=["(?=^|",V0e.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...r,")(?=[^\\w\\:]|",V0e.ADDRESS_BOUNDARY,"|$)"]),r.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};W6.Address6=T6r});var R6r=H(aF=>{"use strict";var _Dl=aF&&aF.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yDl=aF&&aF.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bDl=aF&&aF.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&_Dl(t,e,r);return yDl(t,e),t};Object.defineProperty(aF,"__esModule",{value:!0});aF.v6=aF.AddressError=aF.Address6=aF.Address4=void 0;var EDl=E6r();Object.defineProperty(aF,"Address4",{enumerable:!0,get:function(){return EDl.Address4}});var SDl=p0s();Object.defineProperty(aF,"Address6",{enumerable:!0,get:function(){return SDl.Address6}});var vDl=iLt();Object.defineProperty(aF,"AddressError",{enumerable:!0,get:function(){return vDl.AddressError}});var BDl=bDl(v6r());aF.v6={helpers:BDl}});var _0s=H(JH=>{"use strict";Object.defineProperty(JH,"__esModule",{value:!0});JH.ipToBuffer=JH.int32ToIpv4=JH.ipv4ToInt32=JH.validateSocksClientChainOptions=JH.validateSocksClientOptions=void 0;var hL=h6r(),BD=f6r(),wDl=wt("stream"),N6r=R6r(),f0s=wt("net");function TDl(e,t=["connect","bind","associate"]){if(!BD.SocksCommand[e.command])throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommand,e);if(t.indexOf(e.command)===-1)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommandForOperation,e);if(!h0s(e.destination))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!m0s(e.proxy))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxy,e);if(I0s(e.proxy,e),e.timeout&&!C0s(e.timeout))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsTimeout,e);if(e.existing_socket&&!(e.existing_socket instanceof wDl.Duplex))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsExistingSocket,e)}JH.validateSocksClientOptions=TDl;function RDl(e){if(e.command!=="connect")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommandChain,e);if(!h0s(e.destination))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!(e.proxies&&Array.isArray(e.proxies)&&e.proxies.length>=2))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxiesLength,e);if(e.proxies.forEach(t=>{if(!m0s(t))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxy,e);I0s(t,e)}),e.timeout&&!C0s(e.timeout))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsTimeout,e)}JH.validateSocksClientChainOptions=RDl;function I0s(e,t){if(e.custom_auth_method!==void 0){if(e.custom_auth_methodBD.SOCKS5_CUSTOM_AUTH_END)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthRange,t);if(e.custom_auth_request_handler===void 0||typeof e.custom_auth_request_handler!="function")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_size===void 0)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_handler===void 0||typeof e.custom_auth_response_handler!="function")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t)}}function h0s(e){return e&&typeof e.host=="string"&&typeof e.port=="number"&&e.port>=0&&e.port<=65535}function m0s(e){return e&&(typeof e.host=="string"||typeof e.ipaddress=="string")&&typeof e.port=="number"&&e.port>=0&&e.port<=65535&&(e.type===4||e.type===5)}function C0s(e){return typeof e=="number"&&e>0}function NDl(e){return new N6r.Address4(e).toArray().reduce((r,n)=>(r<<8)+n,0)}JH.ipv4ToInt32=NDl;function DDl(e){let t=e>>>24&255,r=e>>>16&255,n=e>>>8&255,a=e&255;return[t,r,n,a].join(".")}JH.int32ToIpv4=DDl;function kDl(e){if(f0s.isIPv4(e)){let t=new N6r.Address4(e);return Buffer.from(t.toArray())}else if(f0s.isIPv6(e)){let t=new N6r.Address6(e);return Buffer.from(t.canonicalForm().split(":").map(r=>r.padStart(4,"0")).join(""),"hex")}else throw new Error("Invalid IP address format")}JH.ipToBuffer=kDl});var y0s=H(gLt=>{"use strict";Object.defineProperty(gLt,"__esModule",{value:!0});gLt.ReceiveBuffer=void 0;var D6r=class{constructor(t=4096){this.buffer=Buffer.allocUnsafe(t),this.offset=0,this.originalSize=t}get length(){return this.offset}append(t){if(!Buffer.isBuffer(t))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+t.length>=this.buffer.length){let r=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+t.length)),r.copy(this.buffer)}return t.copy(this.buffer,this.offset),this.offset+=t.length}peek(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,t)}get(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let r=Buffer.allocUnsafe(t);return this.buffer.slice(0,t).copy(r),this.buffer.copyWithin(0,t,t+this.offset-t),this.offset-=t,r}};gLt.ReceiveBuffer=D6r});var b0s=H(Xue=>{"use strict";var fFe=Xue&&Xue.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(Xue,"__esModule",{value:!0});Xue.SocksClientError=Xue.SocksClient=void 0;var xDl=wt("events"),IFe=wt("net"),eP=j_s(),lu=f6r(),KO=_0s(),GDl=y0s(),x6r=h6r();Object.defineProperty(Xue,"SocksClientError",{enumerable:!0,get:function(){return x6r.SocksClientError}});var k6r=R6r(),G6r=class e extends xDl.EventEmitter{constructor(t){super(),this.options=Object.assign({},t),(0,KO.validateSocksClientOptions)(t),this.setState(lu.SocksClientState.Created)}static createConnection(t,r){return new Promise((n,a)=>{try{(0,KO.validateSocksClientOptions)(t,["connect"])}catch(l){return typeof r=="function"?(r(l),n(l)):a(l)}let o=new e(t);o.connect(t.existing_socket),o.once("established",l=>{o.removeAllListeners(),typeof r=="function"&&r(null,l),n(l)}),o.once("error",l=>{o.removeAllListeners(),typeof r=="function"?(r(l),n(l)):a(l)})})}static createConnectionChain(t,r){return new Promise((n,a)=>fFe(this,void 0,void 0,function*(){try{(0,KO.validateSocksClientChainOptions)(t)}catch(o){return typeof r=="function"?(r(o),n(o)):a(o)}t.randomizeChain&&(0,x6r.shuffleArray)(t.proxies);try{let o;for(let l=0;lthis.onDataReceivedHandler(n),this.onClose=()=>this.onCloseHandler(),this.onError=n=>this.onErrorHandler(n),this.onConnect=()=>this.onConnectHandler();let r=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||lu.DEFAULT_TIMEOUT);r.unref&&typeof r.unref=="function"&&r.unref(),t?this.socket=t:this.socket=new IFe.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(lu.SocksClientState.Connecting),this.receiveBuffer=new GDl.ReceiveBuffer,t?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",n=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let a=this.receiveBuffer.get(this.receiveBuffer.length);n.socket.emit("data",a)}n.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==lu.SocksClientState.Established&&this.state!==lu.SocksClientState.BoundWaitingForConnection&&this.closeSocket(lu.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(lu.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(lu.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(t){this.receiveBuffer.append(t),this.processData()}processData(){for(;this.state!==lu.SocksClientState.Established&&this.state!==lu.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===lu.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===lu.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===lu.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===lu.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(lu.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(lu.ERRORS.SocketClosed)}onErrorHandler(t){this.closeSocket(t.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(t){this.state!==lu.SocksClientState.Error&&(this.setState(lu.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new x6r.SocksClientError(t,this.options)))}sendSocks4InitialHandshake(){let t=this.options.proxy.userId||"",r=new eP.SmartBuffer;r.writeUInt8(4),r.writeUInt8(lu.SocksCommand[this.options.command]),r.writeUInt16BE(this.options.destination.port),IFe.isIPv4(this.options.destination.host)?(r.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host)),r.writeStringNT(t)):(r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(1),r.writeStringNT(t),r.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(r.toBuffer())}handleSocks4FinalHandshakeResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==lu.Socks4Response.Granted)this.closeSocket(`${lu.ERRORS.Socks4ProxyRejectedConnection} - (${lu.Socks4Response[t[1]]})`);else if(lu.SocksCommand[this.options.command]===lu.SocksCommand.bind){let r=eP.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,KO.int32ToIpv4)(r.readUInt32BE())};n.host==="0.0.0.0"&&(n.host=this.options.proxy.ipaddress),this.setState(lu.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:n,socket:this.socket})}else this.setState(lu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==lu.Socks4Response.Granted)this.closeSocket(`${lu.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${lu.Socks4Response[t[1]]})`);else{let r=eP.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,KO.int32ToIpv4)(r.readUInt32BE())};this.setState(lu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:n,socket:this.socket})}}sendSocks5InitialHandshake(){let t=new eP.SmartBuffer,r=[lu.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&r.push(lu.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&r.push(this.options.proxy.custom_auth_method),t.writeUInt8(5),t.writeUInt8(r.length);for(let n of r)t.writeUInt8(n);this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(t.toBuffer()),this.setState(lu.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let t=this.receiveBuffer.get(2);t[0]!==5?this.closeSocket(lu.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):t[1]===lu.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(lu.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):t[1]===lu.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=lu.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):t[1]===lu.Socks5Auth.UserPass?(this.socks5ChosenAuthType=lu.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):t[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(lu.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let t=this.options.proxy.userId||"",r=this.options.proxy.password||"",n=new eP.SmartBuffer;n.writeUInt8(1),n.writeUInt8(Buffer.byteLength(t)),n.writeString(t),n.writeUInt8(Buffer.byteLength(r)),n.writeString(r),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(n.toBuffer()),this.setState(lu.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return fFe(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(lu.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(t){return fFe(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(t)})}handleSocks5AuthenticationNoAuthHandshakeResponse(t){return fFe(this,void 0,void 0,function*(){return t[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(t){return fFe(this,void 0,void 0,function*(){return t[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return fFe(this,void 0,void 0,function*(){this.setState(lu.SocksClientState.ReceivedAuthenticationResponse);let t=!1;this.socks5ChosenAuthType===lu.Socks5Auth.NoAuth?t=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===lu.Socks5Auth.UserPass?t=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(t=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),t?this.sendSocks5CommandRequest():this.closeSocket(lu.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let t=new eP.SmartBuffer;t.writeUInt8(5),t.writeUInt8(lu.SocksCommand[this.options.command]),t.writeUInt8(0),IFe.isIPv4(this.options.destination.host)?(t.writeUInt8(lu.Socks5HostType.IPv4),t.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host))):IFe.isIPv6(this.options.destination.host)?(t.writeUInt8(lu.Socks5HostType.IPv6),t.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host))):(t.writeUInt8(lu.Socks5HostType.Hostname),t.writeUInt8(this.options.destination.host.length),t.writeString(this.options.destination.host)),t.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(t.toBuffer()),this.setState(lu.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let t=this.receiveBuffer.peek(5);if(t[0]!==5||t[1]!==lu.Socks5Response.Granted)this.closeSocket(`${lu.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${lu.Socks5Response[t[1]]}`);else{let r=t[3],n,a;if(r===lu.Socks5HostType.IPv4){let o=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var FDl=P0e&&P0e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ZDl=P0e&&P0e.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&FDl(t,e,r)};Object.defineProperty(P0e,"__esModule",{value:!0});ZDl(b0s(),P0e)});var v0s=H(UH=>{"use strict";var LDl=UH&&UH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),VDl=UH&&UH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S0s=UH&&UH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&LDl(t,e,r);return VDl(t,e),t},PDl=UH&&UH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UH,"__esModule",{value:!0});UH.SocksProxyAgent=void 0;var WDl=E0s(),ODl=hze(),MDl=PDl(uT()),HDl=S0s(wt("dns")),YDl=S0s(wt("tls")),QDl=wt("url"),ALt=(0,MDl.default)("socks-proxy-agent");function XDl(e){let t=!1,r=5,n=e.hostname,a=parseInt(e.port,10)||1080;switch(e.protocol.replace(":","")){case"socks4":t=!0,r=4;break;case"socks4a":r=4;break;case"socks5":t=!0,r=5;break;case"socks":r=5;break;case"socks5h":r=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(e.protocol)}`)}let o={host:n,port:a,type:r};return e.username&&Object.defineProperty(o,"userId",{value:decodeURIComponent(e.username),enumerable:!1}),e.password!=null&&Object.defineProperty(o,"password",{value:decodeURIComponent(e.password),enumerable:!1}),{lookup:t,proxy:o}}var dLt=class extends ODl.Agent{constructor(t,r){super(r);let n=typeof t=="string"?new QDl.URL(t):t,{proxy:a,lookup:o}=XDl(n);this.shouldLookup=o,this.proxy=a,this.timeout=r?.timeout??null,this.socketOptions=r?.socketOptions??null}async connect(t,r){let{shouldLookup:n,proxy:a,timeout:o}=this;if(!r.host)throw new Error("No `host` defined!");let{host:l}=r,{port:A,lookup:f=HDl.lookup}=r;n&&(l=await new Promise((E,N)=>{f(l,{},(B,F)=>{B?N(B):E(F)})}));let I={proxy:a,destination:{host:l,port:typeof A=="number"?A:parseInt(A,10)},command:"connect",timeout:o??void 0,socket_options:this.socketOptions??void 0},C=E=>{t.destroy(),b.destroy(),E&&E.destroy()};ALt("Creating socks proxy connection: %o",I);let{socket:b}=await WDl.SocksClient.createConnection(I);if(ALt("Successfully created socks proxy connection"),o!==null&&(b.setTimeout(o),b.on("timeout",()=>C())),r.secureEndpoint){ALt("Upgrading socket connection to TLS");let E=r.servername||r.host,N=YDl.connect({...JDl(r,"host","path","port"),socket:b,servername:E});return N.once("error",B=>{ALt("Socket TLS error",B.message),C(N)}),N}return b}};dLt.protocols=["socks","socks4","socks4a","socks5","socks5h"];UH.SocksProxyAgent=dLt;function JDl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var W6r=H((fog,B0s)=>{"use strict";var F6r=class extends Error{constructor(t){super(`Invalid protocol \`${t.protocol}\` connecting to proxy \`${t.host}\``),this.code="EINVALIDPROXY",this.proxy=t}},Z6r=class extends Error{constructor(t){super(`Timeout connecting to host \`${t}\``),this.code="ECONNECTIONTIMEOUT",this.host=t}},L6r=class extends Error{constructor(t){super(`Idle timeout reached for host \`${t}\``),this.code="EIDLETIMEOUT",this.host=t}},V6r=class extends Error{constructor(t,r){let n="Response timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`connecting to host \`${t.host}\``,super(n),this.code="ERESPONSETIMEOUT",this.proxy=r,this.request=t}},P6r=class extends Error{constructor(t,r){let n="Transfer timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`for \`${t.host}\``,super(n),this.code="ETRANSFERTIMEOUT",this.proxy=r,this.request=t}};B0s.exports={InvalidProxyProtocolError:F6r,ConnectionTimeoutError:Z6r,IdleTimeoutError:L6r,ResponseTimeoutError:V6r,TransferTimeoutError:P6r}});var O6r=H((Iog,T0s)=>{"use strict";var{HttpProxyAgent:UDl}=V_s(),{HttpsProxyAgent:KDl}=Y_s(),{SocksProxyAgent:w0s}=v0s(),{LRUCache:jDl}=yIe(),{InvalidProxyProtocolError:zDl}=W6r(),qDl=new jDl({max:20}),$Dl=new Set(w0s.protocols),ekl=new Set(["https_proxy","http_proxy","proxy","no_proxy"]),yze=Object.entries(process.env).reduce((e,[t,r])=>(t=t.toLowerCase(),ekl.has(t)&&(e[t]=r),e),{}),tkl=e=>{e=new URL(e);let t=e.protocol.slice(0,-1);if($Dl.has(t))return w0s;if(t==="https"||t==="http")return[UDl,KDl];throw new zDl(e)},rkl=(e,t)=>{if(typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),!t||!t.length)return!1;let r=e.hostname.split(".").reverse();return t.some(n=>{let a=n.split(".").filter(Boolean).reverse();if(!a.length)return!1;for(let o=0;o(e=new URL(e),t||(t=e.protocol==="https:"?yze.https_proxy:yze.https_proxy||yze.http_proxy||yze.proxy),r||(r=yze.no_proxy),!t||rkl(e,r)?null:new URL(t));T0s.exports={getProxyAgent:tkl,getProxy:nkl,proxyCache:qDl}});var D0s=H((mog,N0s)=>{"use strict";var ikl=wt("net"),skl=wt("tls"),{once:R0s}=wt("events"),okl=wt("timers/promises"),{normalizeOptions:akl,cacheOptions:ckl}=u6r(),{getProxy:lkl,getProxyAgent:ukl,proxyCache:M6r}=O6r(),pLt=W6r(),{Agent:gkl}=hze();N0s.exports=class extends gkl{#e;#t;#n;#r;#i;constructor(t={}){let{timeouts:r,proxy:n,noProxy:a,...o}=akl(t);super(o),this.#e=o,this.#t=r,n&&(this.#n=new URL(n),this.#r=a,this.#i=ukl(n))}get proxy(){return this.#n?{url:this.#n}:{}}#s(t){if(!this.#n)return;let r=lkl(`${t.protocol}//${t.host}:${t.port}`,{proxy:this.#n,noProxy:this.#r});if(!r)return;let n=ckl({...t,...this.#e,timeouts:this.#t,proxy:r});if(M6r.has(n))return M6r.get(n);let a=this.#i;Array.isArray(a)&&(a=this.isSecureEndpoint(t)?a[1]:a[0]);let o=new a(r,{...this.#e,socketOptions:{family:this.#e.family}});return M6r.set(n,o),o}async#o({promises:t,options:r,timeout:n},a=new AbortController){if(n){let l=okl.setTimeout(n,null,{signal:a.signal}).then(()=>{throw new pLt.ConnectionTimeoutError(`${r.host}:${r.port}`)}).catch(A=>{if(A.name!=="AbortError")throw A});t.push(l)}let o;try{o=await Promise.race(t),a.abort()}catch(l){throw a.abort(),l}return o}async connect(t,r){r.lookup??=this.#e.lookup;let n,a=this.#t.connection,o=this.isSecureEndpoint(r),l=this.#s(r);if(l){let C=Date.now();n=await this.#o({options:r,timeout:a,promises:[l.connect(t,r)]}),a&&(a=a-(Date.now()-C))}else n=(o?skl:ikl).connect(r);n.setKeepAlive(this.keepAlive,this.keepAliveMsecs),n.setNoDelay(this.keepAlive);let A=new AbortController,{signal:f}=A,I=n[o?"secureConnecting":"connecting"]?R0s(n,o?"secureConnect":"connect",{signal:f}):Promise.resolve();return await this.#o({options:r,timeout:a,promises:[I,R0s(n,"error",{signal:f}).then(C=>{throw C[0]})]},A),this.#t.idle&&n.setTimeout(this.#t.idle,()=>{n.destroy(new pLt.IdleTimeoutError(`${r.host}:${r.port}`))}),n}addRequest(t,r){let n=this.#s(r);if(n?.setRequestProps&&n.setRequestProps(t,r),t.setHeader("connection",this.keepAlive?"keep-alive":"close"),this.#t.response){let a;t.once("finish",()=>{setTimeout(()=>{t.destroy(new pLt.ResponseTimeoutError(t,this.#n))},this.#t.response)}),t.once("response",()=>{clearTimeout(a)})}if(this.#t.transfer){let a;t.once("response",o=>{setTimeout(()=>{o.destroy(new pLt.TransferTimeoutError(t,this.#n))},this.#t.transfer),o.once("close",()=>{clearTimeout(a)})})}return super.addRequest(t,r)}}});var F0s=H((Cog,G0s)=>{"use strict";var{LRUCache:Akl}=yIe(),{normalizeOptions:dkl,cacheOptions:pkl}=u6r(),{getProxy:fkl,proxyCache:k0s}=O6r(),x0s=l6r(),fLt=D0s(),bze=new Akl({max:20}),Ikl=(e,{agent:t,proxy:r,noProxy:n,...a}={})=>{if(t!=null)return t;e=new URL(e);let o=fkl(e,{proxy:r,noProxy:n}),l={...dkl(a),proxy:o},A=pkl({...l,secureEndpoint:e.protocol==="https:"});if(bze.has(A))return bze.get(A);let f=new fLt(l);return bze.set(A,f),f};G0s.exports={getAgent:Ikl,Agent:fLt,HttpAgent:fLt,HttpsAgent:fLt,cache:{proxy:k0s,agent:bze,dns:x0s.cache,clear:()=>{k0s.clear(),bze.clear(),x0s.cache.clear()}}}});var Z0s=H((_og,hkl)=>{hkl.exports={name:"make-fetch-happen",version:"14.0.3",description:"Opinionated, caching, retrying fetch client",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",posttest:"npm run lint",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',lint:"npm run eslint",lintfix:"npm run eslint -- --fix",postlint:"template-oss-check",snap:"tap","template-oss-apply":"template-oss-apply --force"},repository:{type:"git",url:"git+https://github.com/npm/make-fetch-happen.git"},keywords:["http","request","fetch","mean girls","caching","cache","subresource integrity"],author:"GitHub Inc.",license:"ISC",dependencies:{"@npmcli/agent":"^3.0.0",cacache:"^19.0.1","http-cache-semantics":"^4.1.1",minipass:"^7.0.2","minipass-fetch":"^4.0.0","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4",negotiator:"^1.0.0","proc-log":"^5.0.0","promise-retry":"^2.0.1",ssri:"^12.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.4",nock:"^13.2.4","safe-buffer":"^5.2.1","standard-version":"^9.3.2",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},tap:{color:1,files:"test/*.js","check-coverage":!0,timeout:60,"nyc-arg":["--exclude","tap-snapshots/**"]},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.4",publish:"true"}}});var hLt=H((yog,V0s)=>{var{Minipass:mkl}=rF(),ILt=M7e(),Ckl=a6r(),_kl=Jte(),{log:L0s}=c6r(),ykl=o6r(),{getAgent:bkl}=F0s(),H6r=Z0s(),Ekl=`${H6r.name}/${H6r.version} (+https://npm.im/${H6r.name})`,Skl=["ECONNRESET","ECONNREFUSED","EADDRINUSE","ETIMEDOUT","ECONNECTIONTIMEOUT","EIDLETIMEOUT","ERESPONSETIMEOUT","ETRANSFERTIMEOUT"],vkl=["request-timeout"],Bkl=(e,t)=>{let r=bkl(e.url,{...t,signal:void 0});e.headers.has("connection")||e.headers.set("connection",r?"keep-alive":"close"),e.headers.has("user-agent")||e.headers.set("user-agent",Ekl);let n={...t,agent:r,redirect:"manual"};return Ckl(async(a,o)=>{let l=new ILt.Request(e,n);try{let A=await ILt(l,n);if(n.integrity&&A.status===200){let C=_kl.integrityStream({algorithms:n.algorithms,integrity:n.integrity,size:n.size}),b=new ykl({events:["integrity","size"]},A.body,C);C.on("integrity",E=>b.emit("integrity",E)),C.on("size",E=>b.emit("size",E)),A=new ILt.Response(b,A),A.body.hasIntegrityEmitter=!0}A.headers.set("x-fetch-attempts",o);let f=mkl.isStream(l.body);return l.method!=="POST"&&!f&&([408,420,429].includes(A.status)||A.status>=500)?(typeof t.onRetry=="function"&&t.onRetry(A),L0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.status}`),a(A)):A}catch(A){let f=A.code==="EPROMISERETRY"?A.retried.code:A.code,I=A.retried instanceof ILt.Response||Skl.includes(f)&&vkl.includes(A.type);if(l.method==="POST"||I)throw A;return typeof t.onRetry=="function"&&t.onRetry(A),L0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.code}`),a(A)}},t.retry).catch(a=>{if(a.status>=400&&a.type!=="system")return a;throw a})};V0s.exports=Bkl});var Y0s=H((bog,H0s)=>{var{Request:P0s,Response:Y6r}=M7e(),{Minipass:W0s}=rF(),wkl=sZt(),W0e=g_s(),Tkl=wt("url"),Rkl=o6r(),Nkl=M8r(),Q6r=p_s(),Dkl=hLt(),Eze=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),kkl=["accept-charset","accept-encoding","accept-language","accept","cache-control"],M0s=["cache-control","content-encoding","content-language","content-type","date","etag","expires","last-modified","link","location","pragma","vary"],O0s=(e,t,r)=>{let n={time:Date.now(),url:e.url,reqHeaders:{},resHeaders:{},options:{compress:r.compress!=null?r.compress:e.compress}};t.status!==200&&t.status!==304&&(n.status=t.status);for(let l of kkl)e.headers.has(l)&&(n.reqHeaders[l]=e.headers.get(l));let a=e.headers.get("host"),o=new Tkl.URL(e.url);if(a&&o.host!==a&&(n.reqHeaders.host=a),t.headers.has("vary")){let l=t.headers.get("vary");if(l!=="*"){let A=l.trim().toLowerCase().split(/\s*,\s*/);for(let f of A)e.headers.has(f)&&(n.reqHeaders[f]=e.headers.get(f))}}for(let l of M0s)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));for(let l of r.cacheAdditionalHeaders)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));return n},mLt=Symbol("request"),CLt=Symbol("response"),_Lt=Symbol("policy"),X6r=class e{constructor({entry:t,request:r,response:n,options:a}){t?(this.key=t.key,this.entry=t,this.entry.metadata.time=this.entry.metadata.time||this.entry.time):this.key=Q6r(r),this.options=a,this[mLt]=r,this[CLt]=n,this[_Lt]=null}static async find(t,r){try{var n=await W0e.index.compact(r.cachePath,Q6r(t),(o,l)=>{let A=new e({entry:o,options:r}),f=new e({entry:l,options:r});return A.policy.satisfies(f.request)},{validateEntry:o=>o.metadata&&o.metadata.resHeaders&&o.metadata.resHeaders["content-encoding"]===null?!1:o.integrity===null?!!(o.metadata&&o.metadata.status):!0})}catch{return}if(r.cache==="reload")return;let a;for(let o of n){let l=new e({entry:o,options:r});if(l.policy.satisfies(t)){a=l;break}}return a}static async invalidate(t,r){let n=Q6r(t);try{await W0e.rm.entry(r.cachePath,n,{removeFully:!0})}catch{}}get request(){return this[mLt]||(this[mLt]=new P0s(this.entry.metadata.url,{method:"GET",headers:this.entry.metadata.reqHeaders,...this.entry.metadata.options})),this[mLt]}get response(){return this[CLt]||(this[CLt]=new Y6r(null,{url:this.entry.metadata.url,counter:this.options.counter,status:this.entry.metadata.status||200,headers:{...this.entry.metadata.resHeaders,"content-length":this.entry.size}})),this[CLt]}get policy(){return this[_Lt]||(this[_Lt]=new Nkl({entry:this.entry,request:this.request,response:this.response,options:this.options})),this[_Lt]}async store(t){if(this.request.method!=="GET"||![200,301,308].includes(this.response.status)||!this.policy.storable())return this.response.headers.set("x-local-cache-status","skip"),this.response;let r=this.response.headers.get("content-length"),n={algorithms:this.options.algorithms,metadata:O0s(this.request,this.response,this.options),size:r,integrity:this.options.integrity,integrityEmitter:this.response.body.hasIntegrityEmitter&&this.response.body},a=null;if(this.response.status===200){let l,A,f=new Promise((C,b)=>{l=C,A=b}).catch(C=>{a.emit("error",C)});a=new Rkl({events:["integrity","size"]},new wkl({flush(){return f}})),a.hasIntegrityEmitter=!0;let I=()=>{let C=new W0s,b=W0e.put.stream(this.options.cachePath,this.key,n);b.on("integrity",E=>a.emit("integrity",E)),b.on("size",E=>a.emit("size",E)),C.pipe(b),b.promise().then(l,A),a.unshift(C),a.unshift(this.response.body)};a.once("resume",I),a.once("end",()=>a.removeListener("resume",I))}else await W0e.index.insert(this.options.cachePath,this.key,null,n);return this.response.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),this.response.headers.set("x-local-cache-key",encodeURIComponent(this.key)),this.response.headers.set("x-local-cache-mode","stream"),this.response.headers.set("x-local-cache-status",t),this.response.headers.set("x-local-cache-time",new Date().toISOString()),new Y6r(a,{url:this.response.url,status:this.response.status,headers:this.response.headers,counter:this.options.counter})}async respond(t,r,n){let a;if(t==="HEAD"||[301,308].includes(this.response.status))a=this.response;else{let o=new W0s,l={...this.policy.responseHeaders()},A=()=>{let f=W0e.get.stream.byDigest(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize});f.on("error",async I=>{f.pause(),I.code==="EINTEGRITY"&&await W0e.rm.content(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize}),(I.code==="ENOENT"||I.code==="EINTEGRITY")&&await e.invalidate(this.request,this.options),o.emit("error",I),f.resume()}),o.emit("integrity",this.entry.integrity),o.emit("size",Number(l["content-length"])),f.pipe(o)};o.once("resume",A),o.once("end",()=>o.removeListener("resume",A)),a=new Y6r(o,{url:this.entry.metadata.url,counter:r.counter,status:200,headers:l})}return a.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),a.headers.set("x-local-cache-hash",encodeURIComponent(this.entry.integrity)),a.headers.set("x-local-cache-key",encodeURIComponent(this.key)),a.headers.set("x-local-cache-mode","stream"),a.headers.set("x-local-cache-status",n),a.headers.set("x-local-cache-time",new Date(this.entry.metadata.time).toUTCString()),a}async revalidate(t,r){let n=new P0s(t,{headers:this.policy.revalidationHeaders(t)});try{var a=await Dkl(n,{...r,headers:void 0})}catch(l){if(!this.policy.mustRevalidate)return this.respond(t.method,r,"stale");throw l}if(this.policy.revalidated(n,a)){let l=O0s(t,a,r);for(let A of M0s)!Eze(l.resHeaders,A)&&Eze(this.entry.metadata.resHeaders,A)&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]);for(let A of r.cacheAdditionalHeaders){let f=Eze(l.resHeaders,A),I=Eze(this.entry.metadata.resHeaders,A),C=Eze(this.policy.response.headers,A);!f&&I&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]),!C&&f&&(this.policy.response.headers[A]=l.resHeaders[A])}try{await W0e.index.insert(r.cachePath,this.key,this.entry.integrity,{size:this.entry.size,metadata:l})}catch{}return this.respond(t.method,r,"revalidated")}return new e({request:t,response:a,options:r}).store("updated")}};H0s.exports=X6r});var J0s=H((Eog,X0s)=>{var{NotCachedError:xkl}=Ths(),J6r=Y0s(),Gkl=hLt(),Q0s=async(e,t)=>{let r=await J6r.find(e,t);if(!r){if(t.cache==="only-if-cached")throw new xkl(e.url);let a=await Gkl(e,t);return new J6r({request:e,response:a,options:t}).store("miss")}if(t.cache==="no-cache")return r.revalidate(e,t);let n=r.policy.needsRevalidation(e);return t.cache==="force-cache"||t.cache==="only-if-cached"||!n?r.respond(e.method,t,n?"stale":"hit"):r.revalidate(e,t)};Q0s.invalidate=async(e,t)=>{if(t.cachePath)return J6r.invalidate(e,t)};X0s.exports=Q0s});var z0s=H((Sog,j0s)=>{"use strict";var{FetchError:U6r,Request:Fkl,isRedirect:Zkl}=M7e(),K6r=wt("url"),Lkl=M8r(),U0s=J0s(),Vkl=hLt(),Pkl=(e,t,r)=>{if(!Zkl(t.status)||r.redirect==="manual")return!1;if(r.redirect==="error")throw new U6r(`redirect mode is set to error: ${e.url}`,"no-redirect",{code:"ENOREDIRECT"});if(!t.headers.has("location"))throw new U6r(`redirect location header missing for: ${e.url}`,"no-location",{code:"EINVALIDREDIRECT"});if(e.counter>=e.follow)throw new U6r(`maximum redirect reached at: ${e.url}`,"max-redirect",{code:"EMAXREDIRECT"});return!0},Wkl=(e,t,r)=>{let n={...r},a=t.headers.get("location"),o=new K6r.URL(a,/^https?:/.test(a)?void 0:e.url);return new K6r.URL(e.url).hostname!==o.hostname&&(e.headers.delete("authorization"),e.headers.delete("cookie")),(t.status===303||e.method==="POST"&&[301,302].includes(t.status))&&(n.method="GET",n.body=null,e.headers.delete("content-length")),n.headers={},e.headers.forEach((A,f)=>{n.headers[f]=A}),n.counter=++e.counter,{request:new Fkl(K6r.format(o),n),options:n}},K0s=async(e,t)=>{let r=Lkl.storable(e,t)?await U0s(e,t):await Vkl(e,t);if(!["GET","HEAD"].includes(e.method)&&r.status>=200&&r.status<=399&&await U0s.invalidate(e,t),!Pkl(e,r,t))return r;let n=Wkl(e,r,t);return K0s(n.request,n.options)};j0s.exports=K0s});var bLt=H((vog,hFe)=>{var{FetchError:Okl,Headers:Mkl,Request:q0s,Response:Hkl}=M7e(),Ykl=ths(),Qkl=z0s(),yLt=(e,t)=>{let r=Ykl(t),n=new q0s(e,r);return Qkl(n,r)};yLt.defaults=(e,t={},r=yLt)=>{typeof e=="object"&&(t=e,e=null);let n=(a,o={})=>{let l=a||e,A={...t,...o,headers:{...t.headers,...o.headers}};return r(l,A)};return n.defaults=(a,o={})=>yLt.defaults(a,o,n),n};hFe.exports=yLt;hFe.exports.FetchError=Okl;hFe.exports.Headers=Mkl;hFe.exports.Request=q0s;hFe.exports.Response=Hkl});var $0s=H(mFe=>{"use strict";var Xkl=mFe&&mFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mFe,"__esModule",{value:!0});mFe.CIContextProvider=void 0;var Jkl=Xkl(bLt()),Ukl=[Kkl,jkl],j6r=class{constructor(t="sigstore"){this.audience=t}async getToken(){return Promise.any(Ukl.map(t=>t(this.audience))).catch(()=>Promise.reject("CI: no tokens available"))}};mFe.CIContextProvider=j6r;async function Kkl(e){if(!process.env.ACTIONS_ID_TOKEN_REQUEST_URL||!process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN)return Promise.reject("no token available");let t=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);return t.searchParams.append("audience",e),(await(0,Jkl.default)(t.href,{retry:2,headers:{Accept:"application/json",Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).json().then(n=>n.value)}async function jkl(){return process.env.SIGSTORE_ID_TOKEN?process.env.SIGSTORE_ID_TOKEN:Promise.reject("no token available")}});var eys=H(ELt=>{"use strict";Object.defineProperty(ELt,"__esModule",{value:!0});ELt.CIContextProvider=void 0;var zkl=$0s();Object.defineProperty(ELt,"CIContextProvider",{enumerable:!0,get:function(){return zkl.CIContextProvider}})});var SLt=H(Sze=>{"use strict";var rys=Sze&&Sze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Sze,"__esModule",{value:!0});Sze.fetchWithRetry=lxl;var qkl=wt("http2"),$kl=rys(bLt()),tys=c6r(),exl=rys(a6r()),txl=Zue(),rxl=BFt(),{HTTP2_HEADER_LOCATION:nxl,HTTP2_HEADER_CONTENT_TYPE:ixl,HTTP2_HEADER_USER_AGENT:sxl,HTTP_STATUS_INTERNAL_SERVER_ERROR:oxl,HTTP_STATUS_TOO_MANY_REQUESTS:axl,HTTP_STATUS_REQUEST_TIMEOUT:cxl}=qkl.constants;async function lxl(e,t){return(0,exl.default)(async(r,n)=>{let a=t.method||"POST",o={[sxl]:txl.ua.getUserAgent(),...t.headers},l=await(0,$kl.default)(e,{method:a,headers:o,body:t.body,timeout:t.timeout,retry:!1}).catch(A=>(tys.log.http("fetch",`${a} ${e} attempt ${n} failed with ${A}`),r(A)));if(l.ok)return l;{let A=await uxl(l);if(tys.log.http("fetch",`${a} ${e} attempt ${n} failed with ${l.status}`),gxl(l.status))return r(A);throw A}},Axl(t.retry))}var uxl=async e=>{let t=e.statusText,r=e.headers.get(nxl)||void 0;if(e.headers.get(ixl)?.includes("application/json"))try{t=(await e.json()).message||t}catch{}return new rxl.HTTPError({status:e.status,message:t,location:r})},gxl=e=>[cxl,axl].includes(e)||e>=oxl,Axl=e=>typeof e=="boolean"?{retries:e?1:0}:typeof e=="number"?{retries:e}:{retries:0,...e}});var nys=H(vLt=>{"use strict";Object.defineProperty(vLt,"__esModule",{value:!0});vLt.Fulcio=void 0;var dxl=SLt(),z6r=class{constructor(t){this.options=t}async createSigningCertificate(t){let{baseURL:r,retry:n,timeout:a}=this.options,o=`${r}/api/v2/signingCert`;return(await(0,dxl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:a,retry:n})).json()}};vLt.Fulcio=z6r});var iys=H(BLt=>{"use strict";Object.defineProperty(BLt,"__esModule",{value:!0});BLt.CAClient=void 0;var pxl=VGe(),fxl=nys(),q6r=class{constructor(t){this.fulcio=new fxl.Fulcio({baseURL:t.fulcioBaseURL,retry:t.retry,timeout:t.timeout})}async createSigningCertificate(t,r,n){let a=Ixl(t,r,n);try{let o=await this.fulcio.createSigningCertificate(a);return(o.signedCertificateEmbeddedSct?o.signedCertificateEmbeddedSct:o.signedCertificateDetachedSct).chain.certificates}catch(o){(0,pxl.internalError)(o,"CA_CREATE_SIGNING_CERTIFICATE_ERROR","error creating signing certificate")}}};BLt.CAClient=q6r;function Ixl(e,t,r){return{credentials:{oidcIdentityToken:e},publicKeyRequest:{publicKey:{algorithm:"ECDSA",content:t},proofOfPossession:r.toString("base64")}}}});var oys=H(CFe=>{"use strict";var hxl=CFe&&CFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CFe,"__esModule",{value:!0});CFe.EphemeralSigner=void 0;var sys=hxl(wt("crypto")),mxl="ec",Cxl="P-256",$6r=class{constructor(){this.keypair=sys.default.generateKeyPairSync(mxl,{namedCurve:Cxl})}async sign(t){let r=sys.default.sign(null,t,this.keypair.privateKey),n=this.keypair.publicKey.export({format:"pem",type:"spki"}).toString("ascii");return{signature:r,key:{$case:"publicKey",publicKey:n}}}};CFe.EphemeralSigner=$6r});var ays=H(O0e=>{"use strict";Object.defineProperty(O0e,"__esModule",{value:!0});O0e.FulcioSigner=O0e.DEFAULT_FULCIO_URL=void 0;var e7r=VGe(),_xl=Zue(),yxl=iys(),bxl=oys();O0e.DEFAULT_FULCIO_URL="https://fulcio.sigstore.dev";var t7r=class{constructor(t){this.ca=new yxl.CAClient({...t,fulcioBaseURL:t.fulcioBaseURL||O0e.DEFAULT_FULCIO_URL}),this.identityProvider=t.identityProvider,this.keyHolder=t.keyHolder||new bxl.EphemeralSigner}async sign(t){let r=await this.getIdentityToken(),n;try{n=_xl.oidc.extractJWTSubject(r)}catch(A){throw new e7r.InternalError({code:"IDENTITY_TOKEN_PARSE_ERROR",message:`invalid identity token: ${r}`,cause:A})}let a=await this.keyHolder.sign(Buffer.from(n));if(a.key.$case!=="publicKey")throw new e7r.InternalError({code:"CA_CREATE_SIGNING_CERTIFICATE_ERROR",message:"unexpected format for signing key"});let o=await this.ca.createSigningCertificate(r,a.key.publicKey,a.signature);return{signature:(await this.keyHolder.sign(t)).signature,key:{$case:"x509Certificate",certificate:o[0]}}}async getIdentityToken(){try{return await this.identityProvider.getToken()}catch(t){throw new e7r.InternalError({code:"IDENTITY_TOKEN_READ_ERROR",message:"error retrieving identity token",cause:t})}}};O0e.FulcioSigner=t7r});var lys=H(_Fe=>{"use strict";Object.defineProperty(_Fe,"__esModule",{value:!0});_Fe.FulcioSigner=_Fe.DEFAULT_FULCIO_URL=void 0;var cys=ays();Object.defineProperty(_Fe,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return cys.DEFAULT_FULCIO_URL}});Object.defineProperty(_Fe,"FulcioSigner",{enumerable:!0,get:function(){return cys.FulcioSigner}})});var Ays=H(wLt=>{"use strict";Object.defineProperty(wLt,"__esModule",{value:!0});wLt.Rekor=void 0;var uys=SLt(),r7r=class{constructor(t){this.options=t}async createEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries`,A=await(await(0,uys.fetchWithRetry)(o,{headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).json();return gys(A)}async getEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries/${t}`,A=await(await(0,uys.fetchWithRetry)(o,{method:"GET",headers:{Accept:"application/json"},timeout:n,retry:a})).json();return gys(A)}};wLt.Rekor=r7r;function gys(e){let t=Object.entries(e);if(t.length!=1)throw new Error("Received multiple entries in Rekor response");let[r,n]=t[0];return{...n,uuid:r}}});var pys=H(TLt=>{"use strict";Object.defineProperty(TLt,"__esModule",{value:!0});TLt.TLogClient=void 0;var dys=VGe(),Exl=BFt(),Sxl=Ays(),n7r=class{constructor(t){this.fetchOnConflict=t.fetchOnConflict??!1,this.rekor=new Sxl.Rekor({baseURL:t.rekorBaseURL,retry:t.retry,timeout:t.timeout})}async createEntry(t){let r;try{r=await this.rekor.createEntry(t)}catch(n){if(vxl(n)&&this.fetchOnConflict){let a=n.location.split("/").pop()||"";try{r=await this.rekor.getEntry(a)}catch(o){(0,dys.internalError)(o,"TLOG_FETCH_ENTRY_ERROR","error fetching tlog entry")}}else(0,dys.internalError)(n,"TLOG_CREATE_ENTRY_ERROR","error creating tlog entry")}return r}};TLt.TLogClient=n7r;function vxl(e){return e instanceof Exl.HTTPError&&e.statusCode===409&&e.location!==void 0}});var fys=H(i7r=>{"use strict";Object.defineProperty(i7r,"__esModule",{value:!0});i7r.toProposedEntry=wxl;var Bxl=E7e(),Jue=Zue(),vze="sha256";function wxl(e,t,r="dsse"){switch(e.$case){case"dsseEnvelope":return r==="intoto"?Nxl(e.dsseEnvelope,t):Rxl(e.dsseEnvelope,t);case"messageSignature":return Txl(e.messageSignature,t)}}function Txl(e,t){let r=e.messageDigest.digest.toString("hex"),n=e.signature.toString("base64"),a=Jue.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"hashedrekord",spec:{data:{hash:{algorithm:vze,value:r}},signature:{content:n,publicKey:{content:a}}}}}function Rxl(e,t){let r=JSON.stringify((0,Bxl.envelopeToJSON)(e)),n=Jue.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"dsse",spec:{proposedContent:{envelope:r,verifiers:[n]}}}}function Nxl(e,t){let r=Jue.crypto.digest(vze,e.payload).toString("hex"),n=Dxl(e,t),a=Jue.encoding.base64Encode(e.payload.toString("base64")),o=Jue.encoding.base64Encode(e.signatures[0].sig.toString("base64")),l=e.signatures[0].keyid,A=Jue.encoding.base64Encode(t),f={payloadType:e.payloadType,payload:a,signatures:[{sig:o,publicKey:A}]};return l.length>0&&(f.signatures[0].keyid=l),{apiVersion:"0.0.2",kind:"intoto",spec:{content:{envelope:f,hash:{algorithm:vze,value:n},payloadHash:{algorithm:vze,value:r}}}}}function Dxl(e,t){let r={payloadType:e.payloadType,payload:e.payload.toString("base64"),signatures:[{sig:e.signatures[0].sig.toString("base64"),publicKey:t}]};return e.signatures[0].keyid.length>0&&(r.signatures[0].keyid=e.signatures[0].keyid),Jue.crypto.digest(vze,Jue.json.canonicalize(r)).toString("hex")}});var Iys=H(M0e=>{"use strict";Object.defineProperty(M0e,"__esModule",{value:!0});M0e.RekorWitness=M0e.DEFAULT_REKOR_URL=void 0;var kxl=Zue(),xxl=pys(),Gxl=fys();M0e.DEFAULT_REKOR_URL="https://rekor.sigstore.dev";var s7r=class{constructor(t){this.entryType=t.entryType,this.tlog=new xxl.TLogClient({...t,rekorBaseURL:t.rekorBaseURL||M0e.DEFAULT_REKOR_URL})}async testify(t,r){let n=(0,Gxl.toProposedEntry)(t,r,this.entryType),a=await this.tlog.createEntry(n);return Fxl(a)}};M0e.RekorWitness=s7r;function Fxl(e){let t=Buffer.from(e.logID,"hex"),r=kxl.encoding.base64Decode(e.body),n=JSON.parse(r),a=e?.verification?.signedEntryTimestamp?Zxl(e.verification.signedEntryTimestamp):void 0,o=e?.verification?.inclusionProof?Lxl(e.verification.inclusionProof):void 0;return{tlogEntries:[{logIndex:e.logIndex.toString(),logId:{keyId:t},integratedTime:e.integratedTime.toString(),kindVersion:{kind:n.kind,version:n.apiVersion},inclusionPromise:a,inclusionProof:o,canonicalizedBody:Buffer.from(e.body,"base64")}]}}function Zxl(e){return{signedEntryTimestamp:Buffer.from(e,"base64")}}function Lxl(e){return{logIndex:e.logIndex.toString(),treeSize:e.treeSize.toString(),rootHash:Buffer.from(e.rootHash,"hex"),hashes:e.hashes.map(t=>Buffer.from(t,"hex")),checkpoint:{envelope:e.checkpoint}}}});var hys=H(RLt=>{"use strict";Object.defineProperty(RLt,"__esModule",{value:!0});RLt.TimestampAuthority=void 0;var Vxl=SLt(),o7r=class{constructor(t){this.options=t}async createTimestamp(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/timestamp`;return(await(0,Vxl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).buffer()}};RLt.TimestampAuthority=o7r});var Cys=H(NLt=>{"use strict";Object.defineProperty(NLt,"__esModule",{value:!0});NLt.TSAClient=void 0;var Pxl=VGe(),Wxl=hys(),Oxl=Zue(),mys="sha256",a7r=class{constructor(t){this.tsa=new Wxl.TimestampAuthority({baseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async createTimestamp(t){let r={artifactHash:Oxl.crypto.digest(mys,t).toString("base64"),hashAlgorithm:mys};try{return await this.tsa.createTimestamp(r)}catch(n){(0,Pxl.internalError)(n,"TSA_CREATE_TIMESTAMP_ERROR","error creating timestamp")}}};NLt.TSAClient=a7r});var _ys=H(DLt=>{"use strict";Object.defineProperty(DLt,"__esModule",{value:!0});DLt.TSAWitness=void 0;var Mxl=Cys(),c7r=class{constructor(t){this.tsa=new Mxl.TSAClient({tsaBaseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async testify(t){let r=Hxl(t);return{rfc3161Timestamps:[{signedTimestamp:await this.tsa.createTimestamp(r)}]}}};DLt.TSAWitness=c7r;function Hxl(e){switch(e.$case){case"dsseEnvelope":return e.dsseEnvelope.signatures[0].sig;case"messageSignature":return e.messageSignature.signature}}});var bys=H(Uue=>{"use strict";Object.defineProperty(Uue,"__esModule",{value:!0});Uue.TSAWitness=Uue.RekorWitness=Uue.DEFAULT_REKOR_URL=void 0;var yys=Iys();Object.defineProperty(Uue,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return yys.DEFAULT_REKOR_URL}});Object.defineProperty(Uue,"RekorWitness",{enumerable:!0,get:function(){return yys.RekorWitness}});var Yxl=_ys();Object.defineProperty(Uue,"TSAWitness",{enumerable:!0,get:function(){return Yxl.TSAWitness}})});var u7r=H(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.TSAWitness=BT.RekorWitness=BT.DEFAULT_REKOR_URL=BT.FulcioSigner=BT.DEFAULT_FULCIO_URL=BT.CIContextProvider=BT.InternalError=BT.MessageSignatureBundleBuilder=BT.DSSEBundleBuilder=void 0;var Eys=Rfs();Object.defineProperty(BT,"DSSEBundleBuilder",{enumerable:!0,get:function(){return Eys.DSSEBundleBuilder}});Object.defineProperty(BT,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return Eys.MessageSignatureBundleBuilder}});var Qxl=VGe();Object.defineProperty(BT,"InternalError",{enumerable:!0,get:function(){return Qxl.InternalError}});var Xxl=eys();Object.defineProperty(BT,"CIContextProvider",{enumerable:!0,get:function(){return Xxl.CIContextProvider}});var Sys=lys();Object.defineProperty(BT,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return Sys.DEFAULT_FULCIO_URL}});Object.defineProperty(BT,"FulcioSigner",{enumerable:!0,get:function(){return Sys.FulcioSigner}});var l7r=bys();Object.defineProperty(BT,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return l7r.DEFAULT_REKOR_URL}});Object.defineProperty(BT,"RekorWitness",{enumerable:!0,get:function(){return l7r.RekorWitness}});Object.defineProperty(BT,"TSAWitness",{enumerable:!0,get:function(){return l7r.TSAWitness}})});var Bys=H(Bze=>{"use strict";var vys=Bze&&Bze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bze,"__esModule",{value:!0});Bze.appDataPath=Uxl;var Jxl=vys(wt("os")),yFe=vys(wt("path"));function Uxl(e){let t=Jxl.default.homedir();switch(process.platform){case"darwin":{let r=yFe.default.join(t,"Library","Application Support");return yFe.default.join(r,e)}case"win32":{let r=process.env.LOCALAPPDATA||yFe.default.join(t,"AppData","Local");return yFe.default.join(r,e,"Data")}default:{let r=process.env.XDG_DATA_HOME||yFe.default.join(t,".local","share");return yFe.default.join(r,e)}}}});var O6=H(tP=>{"use strict";Object.defineProperty(tP,"__esModule",{value:!0});tP.UnsupportedAlgorithmError=tP.CryptoError=tP.LengthOrHashMismatchError=tP.UnsignedMetadataError=tP.RepositoryError=tP.ValueError=void 0;var g7r=class extends Error{};tP.ValueError=g7r;var wze=class extends Error{};tP.RepositoryError=wze;var A7r=class extends wze{};tP.UnsignedMetadataError=A7r;var d7r=class extends wze{};tP.LengthOrHashMismatchError=d7r;var kLt=class extends Error{};tP.CryptoError=kLt;var p7r=class extends kLt{};tP.UnsupportedAlgorithmError=p7r});var Tys=H(Kue=>{"use strict";Object.defineProperty(Kue,"__esModule",{value:!0});Kue.isDefined=Kxl;Kue.isObject=wys;Kue.isStringArray=jxl;Kue.isObjectArray=zxl;Kue.isStringRecord=qxl;Kue.isObjectRecord=$xl;function Kxl(e){return e!==void 0}function wys(e){return typeof e=="object"&&e!==null}function jxl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function zxl(e){return Array.isArray(e)&&e.every(wys)}function qxl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="string")}function $xl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="object"&&t!==null)}});var I7r=H((Xog,Dys)=>{var Rys=",",eGl=":",tGl="[",rGl="]",nGl="{",iGl="}";function f7r(e){let t=[];if(typeof e=="string")t.push(Nys(e));else if(typeof e=="boolean")t.push(JSON.stringify(e));else if(Number.isInteger(e))t.push(JSON.stringify(e));else if(e===null)t.push(JSON.stringify(e));else if(Array.isArray(e)){t.push(tGl);let r=!0;e.forEach(n=>{r||t.push(Rys),r=!1,t.push(f7r(n))}),t.push(rGl)}else if(typeof e=="object"){t.push(nGl);let r=!0;Object.keys(e).sort().forEach(n=>{r||t.push(Rys),r=!1,t.push(Nys(n)),t.push(eGl),t.push(f7r(e[n]))}),t.push(iGl)}else throw new TypeError("cannot encode "+e.toString());return t.join("")}function Nys(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'}Dys.exports={canonicalize:f7r}});var kys=H(bFe=>{"use strict";var sGl=bFe&&bFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bFe,"__esModule",{value:!0});bFe.verifySignature=void 0;var oGl=I7r(),aGl=sGl(wt("crypto")),cGl=(e,t,r)=>{let n=Buffer.from((0,oGl.canonicalize)(e));return aGl.default.verify(void 0,n,t,Buffer.from(r,"hex"))};bFe.verifySignature=cGl});var iJ=H(KH=>{"use strict";var lGl=KH&&KH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uGl=KH&&KH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xys=KH&&KH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&lGl(t,e,r);return uGl(t,e),t};Object.defineProperty(KH,"__esModule",{value:!0});KH.crypto=KH.guard=void 0;KH.guard=xys(Tys());KH.crypto=xys(kys())});var H0e=H(Are=>{"use strict";var gGl=Are&&Are.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Are,"__esModule",{value:!0});Are.Signed=Are.MetadataKind=void 0;Are.isMetadataKind=dGl;var AGl=gGl(wt("util")),Tze=O6(),h7r=iJ(),Gys=["1","0","31"],m7r;(function(e){e.Root="root",e.Timestamp="timestamp",e.Snapshot="snapshot",e.Targets="targets"})(m7r||(Are.MetadataKind=m7r={}));function dGl(e){return typeof e=="string"&&Object.values(m7r).includes(e)}var C7r=class e{constructor(t){this.specVersion=t.specVersion||Gys.join(".");let r=this.specVersion.split(".");if(!(r.length===2||r.length===3)||!r.every(n=>pGl(n)))throw new Tze.ValueError("Failed to parse specVersion");if(r[0]!=Gys[0])throw new Tze.ValueError("Unsupported specVersion");this.expires=t.expires,this.version=t.version,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.specVersion===t.specVersion&&this.expires===t.expires&&this.version===t.version&&AGl.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}isExpired(t){return t||(t=new Date),t>=new Date(this.expires)}static commonFieldsFromJSON(t){let{spec_version:r,expires:n,version:a,...o}=t;if(h7r.guard.isDefined(r)){if(typeof r!="string")throw new TypeError("spec_version must be a string")}else throw new Tze.ValueError("spec_version is not defined");if(h7r.guard.isDefined(n)){if(typeof n!="string")throw new TypeError("expires must be a string")}else throw new Tze.ValueError("expires is not defined");if(h7r.guard.isDefined(a)){if(typeof a!="number")throw new TypeError("version must be a number")}else throw new Tze.ValueError("version is not defined");return{specVersion:r,expires:n,version:a,unrecognizedFields:o}}};Are.Signed=C7r;function pGl(e){return!isNaN(Number(e))}});var Rze=H(zue=>{"use strict";var Fys=zue&&zue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zue,"__esModule",{value:!0});zue.TargetFile=zue.MetaFile=void 0;var Zys=Fys(wt("crypto")),GLt=Fys(wt("util")),jue=O6(),xLt=iJ(),_7r=class e{constructor(t){if(t.version<=0)throw new jue.ValueError("Metafile version must be at least 1");t.length!==void 0&&Lys(t.length),this.version=t.version,this.length=t.length,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.version===t.version&&this.length===t.length&&GLt.default.isDeepStrictEqual(this.hashes,t.hashes)&&GLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}verify(t){if(this.length!==void 0&&t.length!==this.length)throw new jue.LengthOrHashMismatchError(`Expected length ${this.length} but got ${t.length}`);this.hashes&&Object.entries(this.hashes).forEach(([r,n])=>{let a;try{a=Zys.default.createHash(r)}catch{throw new jue.LengthOrHashMismatchError(`Hash algorithm ${r} not supported`)}let o=a.update(t).digest("hex");if(o!==n)throw new jue.LengthOrHashMismatchError(`Expected hash ${n} but got ${o}`)})}toJSON(){let t={version:this.version,...this.unrecognizedFields};return this.length!==void 0&&(t.length=this.length),this.hashes&&(t.hashes=this.hashes),t}static fromJSON(t){let{version:r,length:n,hashes:a,...o}=t;if(typeof r!="number")throw new TypeError("version must be a number");if(xLt.guard.isDefined(n)&&typeof n!="number")throw new TypeError("length must be a number");if(xLt.guard.isDefined(a)&&!xLt.guard.isStringRecord(a))throw new TypeError("hashes must be string keys and values");return new e({version:r,length:n,hashes:a,unrecognizedFields:o})}};zue.MetaFile=_7r;var y7r=class e{constructor(t){Lys(t.length),this.length=t.length,this.path=t.path,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}get custom(){let t=this.unrecognizedFields.custom;return!t||Array.isArray(t)||typeof t!="object"?{}:t}equals(t){return t instanceof e?this.length===t.length&&this.path===t.path&&GLt.default.isDeepStrictEqual(this.hashes,t.hashes)&&GLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}async verify(t){let r=0,n=Object.keys(this.hashes).reduce((a,o)=>{try{a[o]=Zys.default.createHash(o)}catch{throw new jue.LengthOrHashMismatchError(`Hash algorithm ${o} not supported`)}return a},{});for await(let a of t)r+=a.length,Object.values(n).forEach(o=>{o.update(a)});if(r!==this.length)throw new jue.LengthOrHashMismatchError(`Expected length ${this.length} but got ${r}`);Object.entries(n).forEach(([a,o])=>{let l=this.hashes[a],A=o.digest("hex");if(A!==l)throw new jue.LengthOrHashMismatchError(`Expected hash ${l} but got ${A}`)})}toJSON(){return{length:this.length,hashes:this.hashes,...this.unrecognizedFields}}static fromJSON(t,r){let{length:n,hashes:a,...o}=r;if(typeof n!="number")throw new TypeError("length must be a number");if(!xLt.guard.isStringRecord(a))throw new TypeError("hashes must have string keys and values");return new e({length:n,path:t,hashes:a,unrecognizedFields:o})}};zue.TargetFile=y7r;function Lys(e){if(e<0)throw new jue.ValueError("Length must be at least 0")}});var Vys=H(b7r=>{"use strict";Object.defineProperty(b7r,"__esModule",{value:!0});b7r.encodeOIDString=IGl;var fGl=6;function IGl(e){let t=e.split("."),r=parseInt(t[0],10)*40+parseInt(t[1],10),n=[];t.slice(2).forEach(o=>{let l=hGl(parseInt(o,10));n.push(...l)});let a=Buffer.from([r,...n]);return Buffer.from([fGl,a.length,...a])}function hGl(e){let t=[],r=0;for(;e>0;)t.unshift(e&127|r),e>>=7,r=128;return t}});var Mys=H(Dze=>{"use strict";var mGl=Dze&&Dze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Dze,"__esModule",{value:!0});Dze.getPublicKey=bGl;var EFe=mGl(wt("crypto")),Nze=O6(),E7r=Vys(),FLt=48,Pys=3,Wys=0,CGl="1.3.101.112",_Gl="1.2.840.10045.2.1",yGl="1.2.840.10045.3.1.7",S7r="-----BEGIN PUBLIC KEY-----";function bGl(e){switch(e.keyType){case"rsa":return EGl(e);case"ed25519":return SGl(e);case"ecdsa":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":return vGl(e);default:throw new Nze.UnsupportedAlgorithmError(`Unsupported key type: ${e.keyType}`)}}function EGl(e){if(!e.keyVal.startsWith(S7r))throw new Nze.CryptoError("Invalid key format");let t=EFe.default.createPublicKey(e.keyVal);switch(e.scheme){case"rsassa-pss-sha256":return{key:t,padding:EFe.default.constants.RSA_PKCS1_PSS_PADDING};default:throw new Nze.UnsupportedAlgorithmError(`Unsupported RSA scheme: ${e.scheme}`)}}function SGl(e){let t;if(e.keyVal.startsWith(S7r))t=EFe.default.createPublicKey(e.keyVal);else{if(!Oys(e.keyVal))throw new Nze.CryptoError("Invalid key format");t=EFe.default.createPublicKey({key:BGl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}function vGl(e){let t;if(e.keyVal.startsWith(S7r))t=EFe.default.createPublicKey(e.keyVal);else{if(!Oys(e.keyVal))throw new Nze.CryptoError("Invalid key format");t=EFe.default.createPublicKey({key:wGl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}var BGl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=(0,E7r.encodeOIDString)(CGl),n=Buffer.concat([Buffer.concat([Buffer.from([FLt]),Buffer.from([r.length]),r]),Buffer.concat([Buffer.from([Pys]),Buffer.from([t.length+1]),Buffer.from([Wys]),t])]);return Buffer.concat([Buffer.from([FLt]),Buffer.from([n.length]),n])}},wGl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=Buffer.concat([Buffer.from([Pys]),Buffer.from([t.length+1]),Buffer.from([Wys]),t]),n=Buffer.concat([(0,E7r.encodeOIDString)(_Gl),(0,E7r.encodeOIDString)(yGl)]),a=Buffer.concat([Buffer.from([FLt]),Buffer.from([n.length]),n]);return Buffer.concat([Buffer.from([FLt]),Buffer.from([a.length+r.length]),a,r])}},Oys=e=>/^[0-9a-fA-F]+$/.test(e)});var ZLt=H(SFe=>{"use strict";var TGl=SFe&&SFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SFe,"__esModule",{value:!0});SFe.Key=void 0;var Hys=TGl(wt("util")),kze=O6(),Yys=iJ(),RGl=Mys(),v7r=class e{constructor(t){let{keyID:r,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l}=t;this.keyID=r,this.keyType=n,this.scheme=a,this.keyVal=o,this.unrecognizedFields=l||{}}verifySignature(t){let r=t.signatures[this.keyID];if(!r)throw new kze.UnsignedMetadataError("no signature for key found in metadata");if(!this.keyVal.public)throw new kze.UnsignedMetadataError("no public key found");let n=(0,RGl.getPublicKey)({keyType:this.keyType,scheme:this.scheme,keyVal:this.keyVal.public}),a=t.signed.toJSON();try{if(!Yys.crypto.verifySignature(a,n,r.sig))throw new kze.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}catch(o){throw o instanceof kze.UnsignedMetadataError?o:new kze.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}}equals(t){return t instanceof e?this.keyID===t.keyID&&this.keyType===t.keyType&&this.scheme===t.scheme&&Hys.default.isDeepStrictEqual(this.keyVal,t.keyVal)&&Hys.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keytype:this.keyType,scheme:this.scheme,keyval:this.keyVal,...this.unrecognizedFields}}static fromJSON(t,r){let{keytype:n,scheme:a,keyval:o,...l}=r;if(typeof n!="string")throw new TypeError("keytype must be a string");if(typeof a!="string")throw new TypeError("scheme must be a string");if(!Yys.guard.isStringRecord(o))throw new TypeError("keyval must be a string record");return new e({keyID:t,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l})}};SFe.Key=v7r});var qys=H((eag,zys)=>{var Qys=Tjr();zys.exports=kGl;var Xys="\0SLASH"+Math.random()+"\0",Jys="\0OPEN"+Math.random()+"\0",w7r="\0CLOSE"+Math.random()+"\0",Uys="\0COMMA"+Math.random()+"\0",Kys="\0PERIOD"+Math.random()+"\0";function B7r(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function NGl(e){return e.split("\\\\").join(Xys).split("\\{").join(Jys).split("\\}").join(w7r).split("\\,").join(Uys).split("\\.").join(Kys)}function DGl(e){return e.split(Xys).join("\\").split(Jys).join("{").split(w7r).join("}").split(Uys).join(",").split(Kys).join(".")}function jys(e){if(!e)return[""];var t=[],r=Qys("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=jys(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function kGl(e,t){if(!e)return[];t=t||{};var r=t.max==null?1/0:t.max;return e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),xze(NGl(e),r,!0).map(DGl)}function xGl(e){return"{"+e+"}"}function GGl(e){return/^-?0\d/.test(e)}function FGl(e,t){return e<=t}function ZGl(e,t){return e>=t}function xze(e,t,r){var n=[],a=Qys("{","}",e);if(!a)return[e];var o=a.pre,l=a.post.length?xze(a.post,t,!1):[""];if(/\$$/.test(a.pre))for(var A=0;A=0;if(!b&&!E)return a.post.match(/,(?!,).*\}/)?(e=a.pre+"{"+a.body+w7r+a.post,xze(e,t,!0)):[e];var N;if(b)N=a.body.split(/\.\./);else if(N=jys(a.body),N.length===1&&(N=xze(N[0],t,!1).map(xGl),N.length===1))return l.map(function(k){return a.pre+N[0]+k});var B;if(b){var F=B7r(N[0]),Q=B7r(N[1]),X=Math.max(N[0].length,N[1].length),ae=N.length==3?Math.max(Math.abs(B7r(N[2])),1):1,ne=FGl,ce=Q0){var Se=new Array(be+1).join("0");ue<0?de="-"+Se+de.slice(1):de=Se+de}}B.push(de)}}else{B=[];for(var De=0;De{"use strict";Object.defineProperty(LLt,"__esModule",{value:!0});LLt.assertValidPattern=void 0;var LGl=1024*64,VGl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>LGl)throw new TypeError("pattern is too long")};LLt.assertValidPattern=VGl});var tbs=H(VLt=>{"use strict";Object.defineProperty(VLt,"__esModule",{value:!0});VLt.parseClass=void 0;var PGl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Gze=e=>e.replace(/[[\]\\-]/g,"\\$&"),WGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ebs=e=>e.join(""),OGl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(Gze(b)+"-"+Gze(F)):F===b&&n.push(Gze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(Gze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(Gze(F)),o++}if(C{"use strict";Object.defineProperty(PLt,"__esModule",{value:!0});PLt.unescape=void 0;var MGl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");PLt.unescape=MGl});var N7r=H(YLt=>{"use strict";var rP;Object.defineProperty(YLt,"__esModule",{value:!0});YLt.AST=void 0;var HGl=tbs(),OLt=WLt(),YGl=new Set(["!","?","+","*","@"]),T7r=e=>YGl.has(e),rbs=e=>T7r(e.type),QGl=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),XGl=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),JGl=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),nbs=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),UGl="(?!(?:^|/)\\.\\.?(?:$|/))",MLt="(?!\\.)",KGl=new Set(["[","."]),jGl=new Set(["..","."]),zGl=new Set("().*{}+?[]^$\\!"),qGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),R7r="[^/]",ibs=R7r+"*?",sbs=R7r+"+?",HLt=class{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,X]=typeof N=="string"?rP.#B(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||X,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&jGl.has(this.#r[0]))){let B=KGl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?UGl:Q?MLt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,OLt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#p(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString(),I=this;return I.#r=[f],I.type=null,I.#t=void 0,[f,(0,OLt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!MLt?"":this.#p(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?MLt:"")+sbs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?MLt:"")+ibs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,OLt.unescape)(o),this.#t=!!this.#t,this.#n]}#p(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#B(t,r,n=!1){let a=!1,o="",l=!1,A=!1;for(let f=0;f{"use strict";Object.defineProperty(QLt,"__esModule",{value:!0});QLt.escape=void 0;var $Gl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");QLt.escape=$Gl});var Abs=H(xA=>{"use strict";var eFl=xA&&xA.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xA,"__esModule",{value:!0});xA.unescape=xA.escape=xA.AST=xA.Minimatch=xA.match=xA.makeRe=xA.braceExpand=xA.defaults=xA.filter=xA.GLOBSTAR=xA.sep=xA.minimatch=void 0;var tFl=eFl(qys()),XLt=$ys(),cbs=N7r(),rFl=D7r(),nFl=WLt(),iFl=(e,t,r={})=>((0,XLt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new Y0e(t,r).match(e));xA.minimatch=iFl;var sFl=/^\*+([^+@!?\*\[\(]*)$/,oFl=e=>t=>!t.startsWith(".")&&t.endsWith(e),aFl=e=>t=>t.endsWith(e),cFl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),lFl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),uFl=/^\*+\.\*+$/,gFl=e=>!e.startsWith(".")&&e.includes("."),AFl=e=>e!=="."&&e!==".."&&e.includes("."),dFl=/^\.\*+$/,pFl=e=>e!=="."&&e!==".."&&e.startsWith("."),fFl=/^\*+$/,IFl=e=>e.length!==0&&!e.startsWith("."),hFl=e=>e.length!==0&&e!=="."&&e!=="..",mFl=/^\?+([^+@!?\*\[\(]*)?$/,CFl=([e,t=""])=>{let r=lbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},_Fl=([e,t=""])=>{let r=ubs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},yFl=([e,t=""])=>{let r=ubs([e]);return t?n=>r(n)&&n.endsWith(t):r},bFl=([e,t=""])=>{let r=lbs([e]);return t?n=>r(n)&&n.endsWith(t):r},lbs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},ubs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},gbs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",obs={win32:{sep:"\\"},posix:{sep:"/"}};xA.sep=gbs==="win32"?obs.win32.sep:obs.posix.sep;xA.minimatch.sep=xA.sep;xA.GLOBSTAR=Symbol("globstar **");xA.minimatch.GLOBSTAR=xA.GLOBSTAR;var EFl="[^/]",SFl=EFl+"*?",vFl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",BFl="(?:(?!(?:\\/|^)\\.).)*?",wFl=(e,t={})=>r=>(0,xA.minimatch)(r,e,t);xA.filter=wFl;xA.minimatch.filter=xA.filter;var jH=(e,t={})=>Object.assign({},e,t),TFl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return xA.minimatch;let t=xA.minimatch;return Object.assign((n,a,o={})=>t(n,a,jH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,jH(e,o))}static defaults(a){return t.defaults(jH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,jH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,jH(e,o))}},unescape:(n,a={})=>t.unescape(n,jH(e,a)),escape:(n,a={})=>t.escape(n,jH(e,a)),filter:(n,a={})=>t.filter(n,jH(e,a)),defaults:n=>t.defaults(jH(e,n)),makeRe:(n,a={})=>t.makeRe(n,jH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,jH(e,a)),match:(n,a,o={})=>t.match(n,a,jH(e,o)),sep:t.sep,GLOBSTAR:xA.GLOBSTAR})};xA.defaults=TFl;xA.minimatch.defaults=xA.defaults;var RFl=(e,t={})=>((0,XLt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,tFl.default)(e));xA.braceExpand=RFl;xA.minimatch.braceExpand=xA.braceExpand;var NFl=(e,t={})=>new Y0e(e,t).makeRe();xA.makeRe=NFl;xA.minimatch.makeRe=xA.makeRe;var DFl=(e,t,r={})=>{let n=new Y0e(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};xA.match=DFl;xA.minimatch.match=xA.match;var abs=/[?*]|[+@!]\(.*?\)|\[|\]/,kFl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Y0e=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(t,r={}){(0,XLt.assertValidPattern)(t),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=t,this.platform=r.platform||gbs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!abs.test(o[2]))&&!abs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;a=2&&(t=this.levelTwoFileOptimize(t)),r.includes(xA.GLOBSTAR)?this.#e(t,r,n,a,o):this.#n(t,r,n,a,o)}#e(t,r,n,a,o){let l=r.indexOf(xA.GLOBSTAR,o),A=r.lastIndexOf(xA.GLOBSTAR),[f,I,C]=n?[r.slice(o,l),r.slice(l+1),[]]:[r.slice(o,l),r.slice(l+1,A),r.slice(A+1)];if(f.length){let ae=t.slice(a,a+f.length);if(!this.#n(ae,f,n,0,0))return!1;a+=f.length}let b=0;if(C.length){if(C.length+a>t.length)return!1;let ae=t.length-C.length;if(this.#n(t,C,n,ae,0))b=C.length;else{if(t[t.length-1]!==""||a+C.length===t.length||(ae--,!this.#n(t,C,n,ae,0)))return!1;b=C.length+1}}if(!I.length){let ae=!!b;for(let ne=a;ne{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?kFl(C):C===xA.GLOBSTAR?xA.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==xA.GLOBSTAR||N===xA.GLOBSTAR||(N===void 0?E!==void 0&&E!==xA.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==xA.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=xA.GLOBSTAR))}),I.filter(C=>C!==xA.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var dbs=zH&&zH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zH,"__esModule",{value:!0});zH.SuccinctRoles=zH.DelegatedRole=zH.Role=zH.TOP_LEVEL_ROLE_NAMES=void 0;var pbs=dbs(wt("crypto")),ZFl=Abs(),JLt=dbs(wt("util")),ULt=O6(),Q0e=iJ();zH.TOP_LEVEL_ROLE_NAMES=["root","targets","snapshot","timestamp"];var Fze=class e{constructor(t){let{keyIDs:r,threshold:n,unrecognizedFields:a}=t;if(LFl(r))throw new ULt.ValueError("duplicate key IDs found");if(n<1)throw new ULt.ValueError("threshold must be at least 1");this.keyIDs=r,this.threshold=n,this.unrecognizedFields=a||{}}equals(t){return t instanceof e?this.threshold===t.threshold&&JLt.default.isDeepStrictEqual(this.keyIDs,t.keyIDs)&&JLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keyids:this.keyIDs,threshold:this.threshold,...this.unrecognizedFields}}static fromJSON(t){let{keyids:r,threshold:n,...a}=t;if(!Q0e.guard.isStringArray(r))throw new TypeError("keyids must be an array");if(typeof n!="number")throw new TypeError("threshold must be a number");return new e({keyIDs:r,threshold:n,unrecognizedFields:a})}};zH.Role=Fze;function LFl(e){return new Set(e).size!==e.length}var k7r=class e extends Fze{constructor(t){super(t);let{name:r,terminating:n,paths:a,pathHashPrefixes:o}=t;if(this.name=r,this.terminating=n,t.paths&&t.pathHashPrefixes)throw new ULt.ValueError("paths and pathHashPrefixes are mutually exclusive");this.paths=a,this.pathHashPrefixes=o}equals(t){return t instanceof e?super.equals(t)&&this.name===t.name&&this.terminating===t.terminating&&JLt.default.isDeepStrictEqual(this.paths,t.paths)&&JLt.default.isDeepStrictEqual(this.pathHashPrefixes,t.pathHashPrefixes):!1}isDelegatedPath(t){if(this.paths)return this.paths.some(r=>PFl(t,r));if(this.pathHashPrefixes){let n=pbs.default.createHash("sha256").update(t).digest("hex");return this.pathHashPrefixes.some(a=>n.startsWith(a))}return!1}toJSON(){let t={...super.toJSON(),name:this.name,terminating:this.terminating};return this.paths&&(t.paths=this.paths),this.pathHashPrefixes&&(t.path_hash_prefixes=this.pathHashPrefixes),t}static fromJSON(t){let{keyids:r,threshold:n,name:a,terminating:o,paths:l,path_hash_prefixes:A,...f}=t;if(!Q0e.guard.isStringArray(r))throw new TypeError("keyids must be an array of strings");if(typeof n!="number")throw new TypeError("threshold must be a number");if(typeof a!="string")throw new TypeError("name must be a string");if(typeof o!="boolean")throw new TypeError("terminating must be a boolean");if(Q0e.guard.isDefined(l)&&!Q0e.guard.isStringArray(l))throw new TypeError("paths must be an array of strings");if(Q0e.guard.isDefined(A)&&!Q0e.guard.isStringArray(A))throw new TypeError("path_hash_prefixes must be an array of strings");return new e({keyIDs:r,threshold:n,name:a,terminating:o,paths:l,pathHashPrefixes:A,unrecognizedFields:f})}};zH.DelegatedRole=k7r;var VFl=(e,t)=>e.map((r,n)=>[r,t[n]]);function PFl(e,t){let r=e.split("/"),n=t.split("/");return n.length!=r.length?!1:VFl(r,n).every(([a,o])=>(0,ZFl.minimatch)(a,o))}var x7r=class e extends Fze{constructor(t){super(t);let{bitLength:r,namePrefix:n}=t;if(r<=0||r>32)throw new ULt.ValueError("bitLength must be between 1 and 32");this.bitLength=r,this.namePrefix=n,this.numberOfBins=Math.pow(2,r),this.suffixLen=(this.numberOfBins-1).toString(16).length}equals(t){return t instanceof e?super.equals(t)&&this.bitLength===t.bitLength&&this.namePrefix===t.namePrefix:!1}getRoleForTarget(t){let a=pbs.default.createHash("sha256").update(t).digest().subarray(0,4),o=32-this.bitLength,A=(a.readUInt32BE()>>>o).toString(16).padStart(this.suffixLen,"0");return`${this.namePrefix}-${A}`}*getRoles(){for(let t=0;t{"use strict";var WFl=vFe&&vFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vFe,"__esModule",{value:!0});vFe.Root=void 0;var fbs=WFl(wt("util")),F7r=H0e(),Ibs=O6(),OFl=ZLt(),KLt=G7r(),jLt=iJ(),Z7r=class e extends F7r.Signed{constructor(t){if(super(t),this.type=F7r.MetadataKind.Root,this.keys=t.keys||{},this.consistentSnapshot=t.consistentSnapshot??!0,!t.roles)this.roles=KLt.TOP_LEVEL_ROLE_NAMES.reduce((r,n)=>({...r,[n]:new KLt.Role({keyIDs:[],threshold:1})}),{});else{let r=new Set(Object.keys(t.roles));if(!KLt.TOP_LEVEL_ROLE_NAMES.every(n=>r.has(n)))throw new Ibs.ValueError("missing top-level role");this.roles=t.roles}}addKey(t,r){if(!this.roles[r])throw new Ibs.ValueError(`role ${r} does not exist`);this.roles[r].keyIDs.includes(t.keyID)||this.roles[r].keyIDs.push(t.keyID),this.keys[t.keyID]=t}equals(t){return t instanceof e?super.equals(t)&&this.consistentSnapshot===t.consistentSnapshot&&fbs.default.isDeepStrictEqual(this.keys,t.keys)&&fbs.default.isDeepStrictEqual(this.roles,t.roles):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,keys:MFl(this.keys),roles:HFl(this.roles),consistent_snapshot:this.consistentSnapshot,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=F7r.Signed.commonFieldsFromJSON(t),{keys:a,roles:o,consistent_snapshot:l,...A}=r;if(typeof l!="boolean")throw new TypeError("consistent_snapshot must be a boolean");return new e({...n,keys:YFl(a),roles:QFl(o),consistentSnapshot:l,unrecognizedFields:A})}};vFe.Root=Z7r;function MFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function HFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function YFl(e){let t;if(jLt.guard.isDefined(e)){if(!jLt.guard.isObjectRecord(e))throw new TypeError("keys must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:OFl.Key.fromJSON(n,a)}),{})}return t}function QFl(e){let t;if(jLt.guard.isDefined(e)){if(!jLt.guard.isObjectRecord(e))throw new TypeError("roles must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:KLt.Role.fromJSON(a)}),{})}return t}});var P7r=H(zLt=>{"use strict";Object.defineProperty(zLt,"__esModule",{value:!0});zLt.Signature=void 0;var V7r=class e{constructor(t){let{keyID:r,sig:n}=t;this.keyID=r,this.sig=n}toJSON(){return{keyid:this.keyID,sig:this.sig}}static fromJSON(t){let{keyid:r,sig:n}=t;if(typeof r!="string")throw new TypeError("keyid must be a string");if(typeof n!="string")throw new TypeError("sig must be a string");return new e({keyID:r,sig:n})}};zLt.Signature=V7r});var M7r=H(BFe=>{"use strict";var XFl=BFe&&BFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BFe,"__esModule",{value:!0});BFe.Snapshot=void 0;var JFl=XFl(wt("util")),W7r=H0e(),mbs=Rze(),hbs=iJ(),O7r=class e extends W7r.Signed{constructor(t){super(t),this.type=W7r.MetadataKind.Snapshot,this.meta=t.meta||{"targets.json":new mbs.MetaFile({version:1})}}equals(t){return t instanceof e?super.equals(t)&&JFl.default.isDeepStrictEqual(this.meta,t.meta):!1}toJSON(){return{_type:this.type,meta:UFl(this.meta),spec_version:this.specVersion,version:this.version,expires:this.expires,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=W7r.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,meta:KFl(a),unrecognizedFields:o})}};BFe.Snapshot=O7r;function UFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function KFl(e){let t;if(hbs.guard.isDefined(e))if(hbs.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:mbs.MetaFile.fromJSON(a)}),{});else throw new TypeError("meta field is malformed");return t}});var Cbs=H(wFe=>{"use strict";var jFl=wFe&&wFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wFe,"__esModule",{value:!0});wFe.Delegations=void 0;var qLt=jFl(wt("util")),zFl=O6(),qFl=ZLt(),H7r=G7r(),$Lt=iJ(),Y7r=class e{constructor(t){if(this.keys=t.keys,this.unrecognizedFields=t.unrecognizedFields||{},t.roles&&Object.keys(t.roles).some(r=>H7r.TOP_LEVEL_ROLE_NAMES.includes(r)))throw new zFl.ValueError("Delegated role name conflicts with top-level role name");this.succinctRoles=t.succinctRoles,this.roles=t.roles}equals(t){return t instanceof e?qLt.default.isDeepStrictEqual(this.keys,t.keys)&&qLt.default.isDeepStrictEqual(this.roles,t.roles)&&qLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields)&&qLt.default.isDeepStrictEqual(this.succinctRoles,t.succinctRoles):!1}*rolesForTarget(t){if(this.roles)for(let r of Object.values(this.roles))r.isDelegatedPath(t)&&(yield{role:r.name,terminating:r.terminating});else this.succinctRoles&&(yield{role:this.succinctRoles.getRoleForTarget(t),terminating:!0})}toJSON(){let t={keys:$Fl(this.keys),...this.unrecognizedFields};return this.roles?t.roles=eZl(this.roles):this.succinctRoles&&(t.succinct_roles=this.succinctRoles.toJSON()),t}static fromJSON(t){let{keys:r,roles:n,succinct_roles:a,...o}=t,l;return $Lt.guard.isObject(a)&&(l=H7r.SuccinctRoles.fromJSON(a)),new e({keys:tZl(r),roles:rZl(n),unrecognizedFields:o,succinctRoles:l})}};wFe.Delegations=Y7r;function $Fl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function eZl(e){return Object.values(e).map(t=>t.toJSON())}function tZl(e){if(!$Lt.guard.isObjectRecord(e))throw new TypeError("keys is malformed");return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:qFl.Key.fromJSON(r,n)}),{})}function rZl(e){let t;if($Lt.guard.isDefined(e)){if(!$Lt.guard.isObjectArray(e))throw new TypeError("roles is malformed");t=e.reduce((r,n)=>{let a=H7r.DelegatedRole.fromJSON(n);return{...r,[a.name]:a}},{})}return t}});var J7r=H(TFe=>{"use strict";var nZl=TFe&&TFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TFe,"__esModule",{value:!0});TFe.Targets=void 0;var _bs=nZl(wt("util")),Q7r=H0e(),iZl=Cbs(),sZl=Rze(),e9t=iJ(),X7r=class e extends Q7r.Signed{constructor(t){super(t),this.type=Q7r.MetadataKind.Targets,this.targets=t.targets||{},this.delegations=t.delegations}addTarget(t){this.targets[t.path]=t}equals(t){return t instanceof e?super.equals(t)&&_bs.default.isDeepStrictEqual(this.targets,t.targets)&&_bs.default.isDeepStrictEqual(this.delegations,t.delegations):!1}toJSON(){let t={_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,targets:oZl(this.targets),...this.unrecognizedFields};return this.delegations&&(t.delegations=this.delegations.toJSON()),t}static fromJSON(t){let{unrecognizedFields:r,...n}=Q7r.Signed.commonFieldsFromJSON(t),{targets:a,delegations:o,...l}=r;return new e({...n,targets:aZl(a),delegations:cZl(o),unrecognizedFields:l})}};TFe.Targets=X7r;function oZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function aZl(e){let t;if(e9t.guard.isDefined(e))if(e9t.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:sZl.TargetFile.fromJSON(n,a)}),{});else throw new TypeError("targets must be an object");return t}function cZl(e){let t;if(e9t.guard.isDefined(e))if(e9t.guard.isObject(e))t=iZl.Delegations.fromJSON(e);else throw new TypeError("delegations must be an object");return t}});var z7r=H(t9t=>{"use strict";Object.defineProperty(t9t,"__esModule",{value:!0});t9t.Timestamp=void 0;var U7r=H0e(),ybs=Rze(),K7r=iJ(),j7r=class e extends U7r.Signed{constructor(t){super(t),this.type=U7r.MetadataKind.Timestamp,this.snapshotMeta=t.snapshotMeta||new ybs.MetaFile({version:1})}equals(t){return t instanceof e?super.equals(t)&&this.snapshotMeta.equals(t.snapshotMeta):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,meta:{"snapshot.json":this.snapshotMeta.toJSON()},...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=U7r.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,snapshotMeta:lZl(a),unrecognizedFields:o})}};t9t.Timestamp=j7r;function lZl(e){let t;if(K7r.guard.isDefined(e)){let r=e["snapshot.json"];if(!K7r.guard.isDefined(r)||!K7r.guard.isObject(r))throw new TypeError("missing snapshot.json in meta");t=ybs.MetaFile.fromJSON(r)}return t}});var Ebs=H(NFe=>{"use strict";var uZl=NFe&&NFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NFe,"__esModule",{value:!0});NFe.Metadata=void 0;var gZl=I7r(),bbs=uZl(wt("util")),RFe=H0e(),Zze=O6(),AZl=L7r(),dZl=P7r(),pZl=M7r(),fZl=J7r(),IZl=z7r(),q7r=iJ(),$7r=class e{constructor(t,r,n){this.signed=t,this.signatures=r||{},this.unrecognizedFields=n||{}}sign(t,r=!0){let n=Buffer.from((0,gZl.canonicalize)(this.signed.toJSON())),a=t(n);r||(this.signatures={}),this.signatures[a.keyID]=a}verifyDelegate(t,r){let n,a={};switch(this.signed.type){case RFe.MetadataKind.Root:a=this.signed.keys,n=this.signed.roles[t];break;case RFe.MetadataKind.Targets:if(!this.signed.delegations)throw new Zze.ValueError(`No delegations found for ${t}`);a=this.signed.delegations.keys,this.signed.delegations.roles?n=this.signed.delegations.roles[t]:this.signed.delegations.succinctRoles&&this.signed.delegations.succinctRoles.isDelegatedRole(t)&&(n=this.signed.delegations.succinctRoles);break;default:throw new TypeError("invalid metadata type")}if(!n)throw new Zze.ValueError(`no delegation found for ${t}`);let o=new Set;if(n.keyIDs.forEach(l=>{let A=a[l];if(A)try{A.verifySignature(r),o.add(A.keyID)}catch{}}),o.sizer.toJSON()),signed:this.signed.toJSON(),...this.unrecognizedFields}}static fromJSON(t,r){let{signed:n,signatures:a,...o}=r;if(!q7r.guard.isDefined(n)||!q7r.guard.isObject(n))throw new TypeError("signed is not defined");if(t!==n._type)throw new Zze.ValueError(`expected '${t}', got ${n._type}`);if(!q7r.guard.isObjectArray(a))throw new TypeError("signatures is not an array");let l;switch(t){case RFe.MetadataKind.Root:l=AZl.Root.fromJSON(n);break;case RFe.MetadataKind.Timestamp:l=IZl.Timestamp.fromJSON(n);break;case RFe.MetadataKind.Snapshot:l=pZl.Snapshot.fromJSON(n);break;case RFe.MetadataKind.Targets:l=fZl.Targets.fromJSON(n);break;default:throw new TypeError("invalid metadata type")}let A={};return a.forEach(f=>{let I=dZl.Signature.fromJSON(f);if(A[I.keyID])throw new Zze.ValueError(`multiple signatures found for keyid: ${I.keyID}`);A[I.keyID]=I}),new e(l,A,o)}};NFe.Metadata=$7r});var r9t=H(W2=>{"use strict";Object.defineProperty(W2,"__esModule",{value:!0});W2.Timestamp=W2.Targets=W2.Snapshot=W2.Signature=W2.Root=W2.Metadata=W2.Key=W2.TargetFile=W2.MetaFile=W2.ValueError=W2.MetadataKind=void 0;var hZl=H0e();Object.defineProperty(W2,"MetadataKind",{enumerable:!0,get:function(){return hZl.MetadataKind}});var mZl=O6();Object.defineProperty(W2,"ValueError",{enumerable:!0,get:function(){return mZl.ValueError}});var Sbs=Rze();Object.defineProperty(W2,"MetaFile",{enumerable:!0,get:function(){return Sbs.MetaFile}});Object.defineProperty(W2,"TargetFile",{enumerable:!0,get:function(){return Sbs.TargetFile}});var CZl=ZLt();Object.defineProperty(W2,"Key",{enumerable:!0,get:function(){return CZl.Key}});var _Zl=Ebs();Object.defineProperty(W2,"Metadata",{enumerable:!0,get:function(){return _Zl.Metadata}});var yZl=L7r();Object.defineProperty(W2,"Root",{enumerable:!0,get:function(){return yZl.Root}});var bZl=P7r();Object.defineProperty(W2,"Signature",{enumerable:!0,get:function(){return bZl.Signature}});var EZl=M7r();Object.defineProperty(W2,"Snapshot",{enumerable:!0,get:function(){return EZl.Snapshot}});var SZl=J7r();Object.defineProperty(W2,"Targets",{enumerable:!0,get:function(){return SZl.Targets}});var vZl=z7r();Object.defineProperty(W2,"Timestamp",{enumerable:!0,get:function(){return vZl.Timestamp}})});var ezr=H((mag,vbs)=>{function BZl(e){r.debug=r,r.default=r,r.coerce=f,r.disable=l,r.enable=a,r.enabled=A,r.humanize=X2r(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b=(typeof C=="string"?C:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let E of b)E[0]==="-"?r.skips.push(E.slice(1)):r.names.push(E)}function o(C,b){let E=0,N=0,B=-1,F=0;for(;E"-"+b)].join(",");return r.enable(""),C}function A(C){for(let b of r.skips)if(o(C,b))return!1;for(let b of r.names)if(o(C,b))return!0;return!1}function f(C){return C instanceof Error?C.stack||C.message:C}function I(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}vbs.exports=BZl});var Bbs=H((nP,n9t)=>{nP.formatArgs=TZl;nP.save=RZl;nP.load=NZl;nP.useColors=wZl;nP.storage=DZl();nP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();nP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function wZl(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function TZl(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+n9t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}nP.log=console.debug||console.log||(()=>{});function RZl(e){try{e?nP.storage.setItem("debug",e):nP.storage.removeItem("debug")}catch{}}function NZl(){let e;try{e=nP.storage.getItem("debug")||nP.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function DZl(){try{return localStorage}catch{}}n9t.exports=ezr()(nP);var{formatters:kZl}=n9t.exports;kZl.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Tbs=H((wD,s9t)=>{var xZl=wt("tty"),i9t=wt("util");wD.init=WZl;wD.log=LZl;wD.formatArgs=FZl;wD.save=VZl;wD.load=PZl;wD.useColors=GZl;wD.destroy=i9t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");wD.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(wD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}wD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function GZl(){return"colors"in wD.inspectOpts?!!wD.inspectOpts.colors:xZl.isatty(process.stderr.fd)}function FZl(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`;let f=(0,kDl.parseProxyResponse)(a);a.write(`${A}\r +`);let{connect:I,buffered:C}=await f;if(t.emit("proxyConnect",I),this.emit("proxyConnect",I,t),I.statusCode===200){if(t.once("socket",xDl),r.secureEndpoint){_ze("Upgrading socket connection to TLS");let E=r.servername||r.host;return r0s.connect({...n0s(r,"host","path","port"),socket:a,servername:E})}return a}a.destroy();let b=new C6r.Socket({writable:!1});return b.readable=!0,t.once("socket",E=>{_ze("Replaying proxy buffer for failed request"),(0,TDl.default)(E.listenerCount("data")>0),E.push(C),E.push(null)}),b}};oLt.protocols=["http","https"];XH.HttpsProxyAgent=oLt;function xDl(e){e.resume()}function n0s(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var u0s=H(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});var a0s=wt("buffer"),L0e={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};gre.ERRORS=L0e;function GDl(e){if(!a0s.Buffer.isEncoding(e))throw new Error(L0e.INVALID_ENCODING)}gre.checkEncoding=GDl;function c0s(e){return typeof e=="number"&&isFinite(e)&&VDl(e)}gre.isFiniteInteger=c0s;function l0s(e,t){if(typeof e=="number"){if(!c0s(e)||e<0)throw new Error(t?L0e.INVALID_OFFSET:L0e.INVALID_LENGTH)}else throw new Error(t?L0e.INVALID_OFFSET_NON_NUMBER:L0e.INVALID_LENGTH_NON_NUMBER)}function FDl(e){l0s(e,!1)}gre.checkLengthValue=FDl;function ZDl(e){l0s(e,!0)}gre.checkOffsetValue=ZDl;function LDl(e,t){if(e<0||e>t.length)throw new Error(L0e.INVALID_TARGET_OFFSET)}gre.checkTargetOffset=LDl;function VDl(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e}function PDl(e){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof a0s.Buffer.prototype[e]>"u")throw new Error(`Platform does not support Buffer.prototype.${e}.`)}gre.bigIntAndBufferInt64Check=PDl});var A0s=H(y6r=>{"use strict";Object.defineProperty(y6r,"__esModule",{value:!0});var Yh=u0s(),g0s=4096,WDl="utf8",_6r=class e{constructor(t){if(this.length=0,this._encoding=WDl,this._writeOffset=0,this._readOffset=0,e.isSmartBufferOptions(t))if(t.encoding&&(Yh.checkEncoding(t.encoding),this._encoding=t.encoding),t.size)if(Yh.isFiniteInteger(t.size)&&t.size>0)this._buff=Buffer.allocUnsafe(t.size);else throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(t.buff)if(Buffer.isBuffer(t.buff))this._buff=t.buff,this.length=t.buff.length;else throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(g0s);else{if(typeof t<"u")throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(g0s)}}static fromSize(t,r){return new this({size:t,encoding:r})}static fromBuffer(t,r){return new this({buff:t,encoding:r})}static fromOptions(t){return new this(t)}static isSmartBufferOptions(t){let r=t;return r&&(r.encoding!==void 0||r.size!==void 0||r.buff!==void 0)}readInt8(t){return this._readNumberValue(Buffer.prototype.readInt8,1,t)}readInt16BE(t){return this._readNumberValue(Buffer.prototype.readInt16BE,2,t)}readInt16LE(t){return this._readNumberValue(Buffer.prototype.readInt16LE,2,t)}readInt32BE(t){return this._readNumberValue(Buffer.prototype.readInt32BE,4,t)}readInt32LE(t){return this._readNumberValue(Buffer.prototype.readInt32LE,4,t)}readBigInt64BE(t){return Yh.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,t)}readBigInt64LE(t){return Yh.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,t)}writeInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeInt8,1,t,r),this}insertInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeInt8,1,t,r)}writeInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}insertInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}writeInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}insertInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}writeInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}insertInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}writeInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}insertInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}writeBigInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}insertBigInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}writeBigInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}insertBigInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}readUInt8(t){return this._readNumberValue(Buffer.prototype.readUInt8,1,t)}readUInt16BE(t){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,t)}readUInt16LE(t){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,t)}readUInt32BE(t){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,t)}readUInt32LE(t){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,t)}readBigUInt64BE(t){return Yh.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,t)}readBigUInt64LE(t){return Yh.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,t)}writeUInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,t,r)}insertUInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,t,r)}writeUInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}insertUInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}writeUInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}insertUInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}writeUInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}insertUInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}writeUInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}insertUInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}writeBigUInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}insertBigUInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}writeBigUInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}insertBigUInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}readFloatBE(t){return this._readNumberValue(Buffer.prototype.readFloatBE,4,t)}readFloatLE(t){return this._readNumberValue(Buffer.prototype.readFloatLE,4,t)}writeFloatBE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}insertFloatBE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}writeFloatLE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}insertFloatLE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}readDoubleBE(t){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,t)}readDoubleLE(t){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,t)}writeDoubleBE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}insertDoubleBE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}writeDoubleLE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}insertDoubleLE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}readString(t,r){let n;typeof t=="number"?(Yh.checkLengthValue(t),n=Math.min(t,this.length-this._readOffset)):(r=t,n=this.length-this._readOffset),typeof r<"u"&&Yh.checkEncoding(r);let a=this._buff.slice(this._readOffset,this._readOffset+n).toString(r||this._encoding);return this._readOffset+=n,a}insertString(t,r,n){return Yh.checkOffsetValue(r),this._handleString(t,!0,r,n)}writeString(t,r,n){return this._handleString(t,!1,r,n)}readStringNT(t){typeof t<"u"&&Yh.checkEncoding(t);let r=this.length;for(let a=this._readOffset;athis.length)throw new Error(Yh.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(t,r){Yh.checkOffsetValue(r),this._ensureCapacity(this.length+t),rthis.length?this.length=r+t:this.length+=t}_ensureWriteable(t,r){let n=typeof r=="number"?r:this._writeOffset;this._ensureCapacity(n+t),n+t>this.length&&(this.length=n+t)}_ensureCapacity(t){let r=this._buff.length;if(t>r){let n=this._buff,a=r*3/2+1;a"u"&&(this._readOffset+=r),a}_insertNumberValue(t,r,n,a){return Yh.checkOffsetValue(a),this.ensureInsertable(r,a),t.call(this._buff,n,a),this._writeOffset+=r,this}_writeNumberValue(t,r,n,a){if(typeof a=="number"){if(a<0)throw new Error(Yh.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);Yh.checkOffsetValue(a)}let o=typeof a=="number"?a:this._writeOffset;return this._ensureWriteable(r,o),t.call(this._buff,n,o),typeof a=="number"?this._writeOffset=Math.max(this._writeOffset,o+r):this._writeOffset+=r,this}};y6r.SmartBuffer=_6r});var b6r=H(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});HE.SOCKS5_NO_ACCEPTABLE_AUTH=HE.SOCKS5_CUSTOM_AUTH_END=HE.SOCKS5_CUSTOM_AUTH_START=HE.SOCKS_INCOMING_PACKET_SIZES=HE.SocksClientState=HE.Socks5Response=HE.Socks5HostType=HE.Socks5Auth=HE.Socks4Response=HE.SocksCommand=HE.ERRORS=HE.DEFAULT_TIMEOUT=void 0;var ODl=3e4;HE.DEFAULT_TIMEOUT=ODl;var MDl={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};HE.ERRORS=MDl;var HDl={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:e=>e+7,Socks4Response:8};HE.SOCKS_INCOMING_PACKET_SIZES=HDl;var d0s;(function(e){e[e.connect=1]="connect",e[e.bind=2]="bind",e[e.associate=3]="associate"})(d0s||(HE.SocksCommand=d0s={}));var p0s;(function(e){e[e.Granted=90]="Granted",e[e.Failed=91]="Failed",e[e.Rejected=92]="Rejected",e[e.RejectedIdent=93]="RejectedIdent"})(p0s||(HE.Socks4Response=p0s={}));var f0s;(function(e){e[e.NoAuth=0]="NoAuth",e[e.GSSApi=1]="GSSApi",e[e.UserPass=2]="UserPass"})(f0s||(HE.Socks5Auth=f0s={}));var YDl=128;HE.SOCKS5_CUSTOM_AUTH_START=YDl;var QDl=254;HE.SOCKS5_CUSTOM_AUTH_END=QDl;var XDl=255;HE.SOCKS5_NO_ACCEPTABLE_AUTH=XDl;var I0s;(function(e){e[e.Granted=0]="Granted",e[e.Failure=1]="Failure",e[e.NotAllowed=2]="NotAllowed",e[e.NetworkUnreachable=3]="NetworkUnreachable",e[e.HostUnreachable=4]="HostUnreachable",e[e.ConnectionRefused=5]="ConnectionRefused",e[e.TTLExpired=6]="TTLExpired",e[e.CommandNotSupported=7]="CommandNotSupported",e[e.AddressNotSupported=8]="AddressNotSupported"})(I0s||(HE.Socks5Response=I0s={}));var h0s;(function(e){e[e.IPv4=1]="IPv4",e[e.Hostname=3]="Hostname",e[e.IPv6=4]="IPv6"})(h0s||(HE.Socks5HostType=h0s={}));var m0s;(function(e){e[e.Created=0]="Created",e[e.Connecting=1]="Connecting",e[e.Connected=2]="Connected",e[e.SentInitialHandshake=3]="SentInitialHandshake",e[e.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",e[e.SentAuthentication=5]="SentAuthentication",e[e.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",e[e.SentFinalHandshake=7]="SentFinalHandshake",e[e.ReceivedFinalResponse=8]="ReceivedFinalResponse",e[e.BoundWaitingForConnection=9]="BoundWaitingForConnection",e[e.Established=10]="Established",e[e.Disconnected=11]="Disconnected",e[e.Error=99]="Error"})(m0s||(HE.SocksClientState=m0s={}))});var S6r=H(dFe=>{"use strict";Object.defineProperty(dFe,"__esModule",{value:!0});dFe.shuffleArray=dFe.SocksClientError=void 0;var E6r=class extends Error{constructor(t,r){super(t),this.options=r}};dFe.SocksClientError=E6r;function JDl(e){for(let t=e.length-1;t>0;t--){let r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}}dFe.shuffleArray=JDl});var v6r=H(pFe=>{"use strict";Object.defineProperty(pFe,"__esModule",{value:!0});pFe.isCorrect=pFe.isInSubnet=void 0;function UDl(e){return this.subnetMask{"use strict";Object.defineProperty(L6,"__esModule",{value:!0});L6.RE_SUBNET_STRING=L6.RE_ADDRESS=L6.GROUPS=L6.BITS=void 0;L6.BITS=32;L6.GROUPS=4;L6.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;L6.RE_SUBNET_STRING=/\/\d{1,2}$/});var cLt=H(aLt=>{"use strict";Object.defineProperty(aLt,"__esModule",{value:!0});aLt.AddressError=void 0;var w6r=class extends Error{constructor(t,r){super(t),this.name="AddressError",r!==null&&(this.parseMessage=r)}};aLt.AddressError=w6r});var T6r=H((lLt,C0s)=>{(function(){var e,t=0xdeadbeefcafe,r=(t&16777215)==15715070;function n(Er,Zt,bn){Er!=null&&(typeof Er=="number"?this.fromNumber(Er,Zt,bn):Zt==null&&typeof Er!="string"?this.fromString(Er,256):this.fromString(Er,Zt))}function a(){return new n(null)}function o(Er,Zt,bn,ls,oa,Fs){for(;--Fs>=0;){var Wa=Zt*this[Er++]+bn[ls]+oa;oa=Math.floor(Wa/67108864),bn[ls++]=Wa&67108863}return oa}function l(Er,Zt,bn,ls,oa,Fs){for(var Wa=Zt&32767,Ca=Zt>>15;--Fs>=0;){var ld=this[Er]&32767,Rp=this[Er++]>>15,np=Ca*ld+Rp*Wa;ld=Wa*ld+((np&32767)<<15)+bn[ls]+(oa&1073741823),oa=(ld>>>30)+(np>>>15)+Ca*Rp+(oa>>>30),bn[ls++]=ld&1073741823}return oa}function A(Er,Zt,bn,ls,oa,Fs){for(var Wa=Zt&16383,Ca=Zt>>14;--Fs>=0;){var ld=this[Er]&16383,Rp=this[Er++]>>14,np=Ca*ld+Rp*Wa;ld=Wa*ld+((np&16383)<<14)+bn[ls]+oa,oa=(ld>>28)+(np>>14)+Ca*Rp,bn[ls++]=ld&268435455}return oa}var f=typeof navigator<"u";f&&r&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=l,e=30):f&&r&&navigator.appName!="Netscape"?(n.prototype.am=o,e=26):(n.prototype.am=A,e=28),n.prototype.DB=e,n.prototype.DM=(1<=0;--Zt)Er[Zt]=this[Zt];Er.t=this.t,Er.s=this.s}function X(Er){this.t=1,this.s=Er<0?-1:0,Er>0?this[0]=Er:Er<-1?this[0]=Er+this.DV:this.t=0}function ae(Er){var Zt=a();return Zt.fromInt(Er),Zt}function ne(Er,Zt){var bn;if(Zt==16)bn=4;else if(Zt==8)bn=3;else if(Zt==256)bn=8;else if(Zt==2)bn=1;else if(Zt==32)bn=5;else if(Zt==4)bn=2;else{this.fromRadix(Er,Zt);return}this.t=0,this.s=0;for(var ls=Er.length,oa=!1,Fs=0;--ls>=0;){var Wa=bn==8?Er[ls]&255:F(Er,ls);if(Wa<0){Er.charAt(ls)=="-"&&(oa=!0);continue}oa=!1,Fs==0?this[this.t++]=Wa:Fs+bn>this.DB?(this[this.t-1]|=(Wa&(1<>this.DB-Fs):this[this.t-1]|=Wa<=this.DB&&(Fs-=this.DB)}bn==8&&Er[0]&128&&(this.s=-1,Fs>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==Er;)--this.t}function fe(Er){if(this.s<0)return"-"+this.negate().toString(Er);var Zt;if(Er==16)Zt=4;else if(Er==8)Zt=3;else if(Er==2)Zt=1;else if(Er==32)Zt=5;else if(Er==4)Zt=2;else return this.toRadix(Er);var bn=(1<0)for(Ca>Ca)>0&&(oa=!0,Fs=B(ls));Wa>=0;)Ca>(Ca+=this.DB-Zt)):(ls=this[Wa]>>(Ca-=Zt)&bn,Ca<=0&&(Ca+=this.DB,--Wa)),ls>0&&(oa=!0),oa&&(Fs+=B(ls));return oa?Fs:"0"}function ue(){var Er=a();return n.ZERO.subTo(this,Er),Er}function de(){return this.s<0?this.negate():this}function be(Er){var Zt=this.s-Er.s;if(Zt!=0)return Zt;var bn=this.t;if(Zt=bn-Er.t,Zt!=0)return this.s<0?-Zt:Zt;for(;--bn>=0;)if((Zt=this[bn]-Er[bn])!=0)return Zt;return 0}function Se(Er){var Zt=1,bn;return(bn=Er>>>16)!=0&&(Er=bn,Zt+=16),(bn=Er>>8)!=0&&(Er=bn,Zt+=8),(bn=Er>>4)!=0&&(Er=bn,Zt+=4),(bn=Er>>2)!=0&&(Er=bn,Zt+=2),(bn=Er>>1)!=0&&(Er=bn,Zt+=1),Zt}function De(){return this.t<=0?0:this.DB*(this.t-1)+Se(this[this.t-1]^this.s&this.DM)}function k(Er,Zt){var bn;for(bn=this.t-1;bn>=0;--bn)Zt[bn+Er]=this[bn];for(bn=Er-1;bn>=0;--bn)Zt[bn]=0;Zt.t=this.t+Er,Zt.s=this.s}function et(Er,Zt){for(var bn=Er;bn=0;--Ca)Zt[Ca+Fs+1]=this[Ca]>>ls|Wa,Wa=(this[Ca]&oa)<=0;--Ca)Zt[Ca]=0;Zt[Fs]=Wa,Zt.t=this.t+Fs+1,Zt.s=this.s,Zt.clamp()}function Me(Er,Zt){Zt.s=this.s;var bn=Math.floor(Er/this.DB);if(bn>=this.t){Zt.t=0;return}var ls=Er%this.DB,oa=this.DB-ls,Fs=(1<>ls;for(var Wa=bn+1;Wa>ls;ls>0&&(Zt[this.t-bn-1]|=(this.s&Fs)<>=this.DB;if(Er.t>=this.DB;ls+=this.s}else{for(ls+=this.s;bn>=this.DB;ls-=Er.s}Zt.s=ls<0?-1:0,ls<-1?Zt[bn++]=this.DV+ls:ls>0&&(Zt[bn++]=ls),Zt.t=bn,Zt.clamp()}function St(Er,Zt){var bn=this.abs(),ls=Er.abs(),oa=bn.t;for(Zt.t=oa+ls.t;--oa>=0;)Zt[oa]=0;for(oa=0;oa=0;)Er[bn]=0;for(bn=0;bn=Zt.DV&&(Er[bn+Zt.t]-=Zt.DV,Er[bn+Zt.t+1]=1)}Er.t>0&&(Er[Er.t-1]+=Zt.am(bn,Zt[bn],Er,2*bn,0,1)),Er.s=0,Er.clamp()}function Yt(Er,Zt,bn){var ls=Er.abs();if(!(ls.t<=0)){var oa=this.abs();if(oa.t0?(ls.lShiftTo(ld,Fs),oa.lShiftTo(ld,bn)):(ls.copyTo(Fs),oa.copyTo(bn));var Rp=Fs.t,np=Fs[Rp-1];if(np!=0){var HA=np*(1<1?Fs[Rp-2]>>this.F2:0),df=this.FV/HA,Zs=(1<=0&&(bn[bn.t++]=1,bn.subTo(Dr,bn)),n.ONE.dlShiftTo(Rp,Dr),Dr.subTo(Fs,Fs);Fs.t=0;){var Wn=bn[--Ea]==np?this.DM:Math.floor(bn[Ea]*df+(bn[Ea-1]+so)*Zs);if((bn[Ea]+=Fs.am(0,Wn,bn,Ml,0,Rp))0&&bn.rShiftTo(ld,bn),Wa<0&&n.ZERO.subTo(bn,bn)}}}function Tr(Er){var Zt=a();return this.abs().divRemTo(Er,null,Zt),this.s<0&&Zt.compareTo(n.ZERO)>0&&Er.subTo(Zt,Zt),Zt}function Nr(Er){this.m=Er}function er(Er){return Er.s<0||Er.compareTo(this.m)>=0?Er.mod(this.m):Er}function vt(Er){return Er}function xt(Er){Er.divRemTo(this.m,null,Er)}function Zr(Er,Zt,bn){Er.multiplyTo(Zt,bn),this.reduce(bn)}function qt(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}Nr.prototype.convert=er,Nr.prototype.revert=vt,Nr.prototype.reduce=xt,Nr.prototype.mulTo=Zr,Nr.prototype.sqrTo=qt;function Xt(){if(this.t<1)return 0;var Er=this[0];if(!(Er&1))return 0;var Zt=Er&3;return Zt=Zt*(2-(Er&15)*Zt)&15,Zt=Zt*(2-(Er&255)*Zt)&255,Zt=Zt*(2-((Er&65535)*Zt&65535))&65535,Zt=Zt*(2-Er*Zt%this.DV)%this.DV,Zt>0?this.DV-Zt:-Zt}function lr(Er){this.m=Er,this.mp=Er.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(Zt,Zt),Zt}function Ar(Er){var Zt=a();return Er.copyTo(Zt),this.reduce(Zt),Zt}function qr(Er){for(;Er.t<=this.mt2;)Er[Er.t++]=0;for(var Zt=0;Zt>15)*this.mpl&this.um)<<15)&Er.DM;for(bn=Zt+this.m.t,Er[bn]+=this.m.am(0,ls,Er,Zt,0,this.m.t);Er[bn]>=Er.DV;)Er[bn]-=Er.DV,Er[++bn]++}Er.clamp(),Er.drShiftTo(this.m.t,Er),Er.compareTo(this.m)>=0&&Er.subTo(this.m,Er)}function _n(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}function ke(Er,Zt,bn){Er.multiplyTo(Zt,bn),this.reduce(bn)}lr.prototype.convert=cr,lr.prototype.revert=Ar,lr.prototype.reduce=qr,lr.prototype.mulTo=ke,lr.prototype.sqrTo=_n;function jt(){return(this.t>0?this[0]&1:this.s)==0}function Fn(Er,Zt){if(Er>4294967295||Er<1)return n.ONE;var bn=a(),ls=a(),oa=Zt.convert(this),Fs=Se(Er)-1;for(oa.copyTo(bn);--Fs>=0;)if(Zt.sqrTo(bn,ls),(Er&1<0)Zt.mulTo(ls,oa,bn);else{var Wa=bn;bn=ls,ls=Wa}return Zt.revert(bn)}function Nn(Er,Zt){var bn;return Er<256||Zt.isEven()?bn=new Nr(Zt):bn=new lr(Zt),this.exp(Er,bn)}n.prototype.copyTo=Q,n.prototype.fromInt=X,n.prototype.fromString=ne,n.prototype.clamp=ce,n.prototype.dlShiftTo=k,n.prototype.drShiftTo=et,n.prototype.lShiftTo=ct,n.prototype.rShiftTo=Me,n.prototype.subTo=je,n.prototype.multiplyTo=St,n.prototype.squareTo=At,n.prototype.divRemTo=Yt,n.prototype.invDigit=Xt,n.prototype.isEven=jt,n.prototype.exp=Fn,n.prototype.toString=fe,n.prototype.negate=ue,n.prototype.abs=de,n.prototype.compareTo=be,n.prototype.bitLength=De,n.prototype.mod=Tr,n.prototype.modPowInt=Nn,n.ZERO=ae(0),n.ONE=ae(1);function Hi(){var Er=a();return this.copyTo(Er),Er}function po(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function xi(){return this.t==0?this.s:this[0]<<16>>16}function io(Er){return Math.floor(Math.LN2*this.DB/Math.log(Er))}function ga(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Ya(Er){if(Er==null&&(Er=10),this.signum()==0||Er<2||Er>36)return"0";var Zt=this.chunkSize(Er),bn=Math.pow(Er,Zt),ls=ae(bn),oa=a(),Fs=a(),Wa="";for(this.divRemTo(ls,oa,Fs);oa.signum()>0;)Wa=(bn+Fs.intValue()).toString(Er).substr(1)+Wa,oa.divRemTo(ls,oa,Fs);return Fs.intValue().toString(Er)+Wa}function Gc(Er,Zt){this.fromInt(0),Zt==null&&(Zt=10);for(var bn=this.chunkSize(Zt),ls=Math.pow(Zt,bn),oa=!1,Fs=0,Wa=0,Ca=0;Ca=bn&&(this.dMultiply(ls),this.dAddOffset(Wa,0),Fs=0,Wa=0)}Fs>0&&(this.dMultiply(Math.pow(Zt,Fs)),this.dAddOffset(Wa,0)),oa&&n.ZERO.subTo(this,this)}function cl(Er,Zt,bn){if(typeof Zt=="number")if(Er<2)this.fromInt(1);else for(this.fromNumber(Er,bn),this.testBit(Er-1)||this.bitwiseTo(n.ONE.shiftLeft(Er-1),Qi,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(Zt);)this.dAddOffset(2,0),this.bitLength()>Er&&this.subTo(n.ONE.shiftLeft(Er-1),this);else{var ls=new Array,oa=Er&7;ls.length=(Er>>3)+1,Zt.nextBytes(ls),oa>0?ls[0]&=(1<0)for(bn>bn)!=(this.s&this.DM)>>bn&&(Zt[oa++]=ls|this.s<=0;)bn<8?(ls=(this[Er]&(1<>(bn+=this.DB-8)):(ls=this[Er]>>(bn-=8)&255,bn<=0&&(bn+=this.DB,--Er)),ls&128&&(ls|=-256),oa==0&&(this.s&128)!=(ls&128)&&++oa,(oa>0||ls!=this.s)&&(Zt[oa++]=ls);return Zt}function Hr(Er){return this.compareTo(Er)==0}function Wr(Er){return this.compareTo(Er)<0?this:Er}function Ft(Er){return this.compareTo(Er)>0?this:Er}function zr(Er,Zt,bn){var ls,oa,Fs=Math.min(Er.t,this.t);for(ls=0;ls>=16,Zt+=16),Er&255||(Er>>=8,Zt+=8),Er&15||(Er>>=4,Zt+=4),Er&3||(Er>>=2,Zt+=2),Er&1||++Zt,Zt}function vu(){for(var Er=0;Er=this.t?this.s!=0:(this[Zt]&1<>=this.DB;if(Er.t>=this.DB;ls+=this.s}else{for(ls+=this.s;bn>=this.DB;ls+=Er.s}Zt.s=ls<0?-1:0,ls>0?Zt[bn++]=ls:ls<-1&&(Zt[bn++]=this.DV+ls),Zt.t=bn,Zt.clamp()}function Ul(Er){var Zt=a();return this.addTo(Er,Zt),Zt}function Xu(Er){var Zt=a();return this.subTo(Er,Zt),Zt}function Da(Er){var Zt=a();return this.multiplyTo(Er,Zt),Zt}function pu(){var Er=a();return this.squareTo(Er),Er}function _g(Er){var Zt=a();return this.divRemTo(Er,Zt,null),Zt}function mI(Er){var Zt=a();return this.divRemTo(Er,null,Zt),Zt}function Qh(Er){var Zt=a(),bn=a();return this.divRemTo(Er,Zt,bn),new Array(Zt,bn)}function Ri(Er){this[this.t]=this.am(0,Er-1,this,0,0,this.t),++this.t,this.clamp()}function Do(Er,Zt){if(Er!=0){for(;this.t<=Zt;)this[this.t++]=0;for(this[Zt]+=Er;this[Zt]>=this.DV;)this[Zt]-=this.DV,++Zt>=this.t&&(this[this.t++]=0),++this[Zt]}}function Wt(){}function Hu(Er){return Er}function Ru(Er,Zt,bn){Er.multiplyTo(Zt,bn)}function Vs(Er,Zt){Er.squareTo(Zt)}Wt.prototype.convert=Hu,Wt.prototype.revert=Hu,Wt.prototype.mulTo=Ru,Wt.prototype.sqrTo=Vs;function Ju(Er){return this.exp(Er,new Wt)}function Yn(Er,Zt,bn){var ls=Math.min(this.t+Er.t,Zt);for(bn.s=0,bn.t=ls;ls>0;)bn[--ls]=0;var oa;for(oa=bn.t-this.t;ls=0;)bn[ls]=0;for(ls=Math.max(Zt-this.t,0);ls2*this.m.t)return Er.mod(this.m);if(Er.compareTo(this.m)<0)return Er;var Zt=a();return Er.copyTo(Zt),this.reduce(Zt),Zt}function GA(Er){return Er}function $i(Er){for(Er.drShiftTo(this.m.t-1,this.r2),Er.t>this.m.t+1&&(Er.t=this.m.t+1,Er.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);Er.compareTo(this.r2)<0;)Er.dAddOffset(1,this.m.t+1);for(Er.subTo(this.r2,Er);Er.compareTo(this.m)>=0;)Er.subTo(this.m,Er)}function dl(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}function Uf(Er,Zt,bn){Er.multiplyTo(Zt,bn),this.reduce(bn)}Eg.prototype.convert=OA,Eg.prototype.revert=GA,Eg.prototype.reduce=$i,Eg.prototype.mulTo=Uf,Eg.prototype.sqrTo=dl;function Kd(Er,Zt){var bn=Er.bitLength(),ls,oa=ae(1),Fs;if(bn<=0)return oa;bn<18?ls=1:bn<48?ls=3:bn<144?ls=4:bn<768?ls=5:ls=6,bn<8?Fs=new Nr(Zt):Zt.isEven()?Fs=new Eg(Zt):Fs=new lr(Zt);var Wa=new Array,Ca=3,ld=ls-1,Rp=(1<1){var np=a();for(Fs.sqrTo(Wa[1],np);Ca<=Rp;)Wa[Ca]=a(),Fs.mulTo(np,Wa[Ca-2],Wa[Ca]),Ca+=2}var HA=Er.t-1,df,Zs=!0,so=a(),Ea;for(bn=Se(Er[HA])-1;HA>=0;){for(bn>=ld?df=Er[HA]>>bn-ld&Rp:(df=(Er[HA]&(1<0&&(df|=Er[HA-1]>>this.DB+bn-ld)),Ca=ls;!(df&1);)df>>=1,--Ca;if((bn-=Ca)<0&&(bn+=this.DB,--HA),Zs)Wa[df].copyTo(oa),Zs=!1;else{for(;Ca>1;)Fs.sqrTo(oa,so),Fs.sqrTo(so,oa),Ca-=2;Ca>0?Fs.sqrTo(oa,so):(Ea=oa,oa=so,so=Ea),Fs.mulTo(so,Wa[df],oa)}for(;HA>=0&&!(Er[HA]&1<0&&(Zt.rShiftTo(Fs,Zt),bn.rShiftTo(Fs,bn));Zt.signum()>0;)(oa=Zt.getLowestSetBit())>0&&Zt.rShiftTo(oa,Zt),(oa=bn.getLowestSetBit())>0&&bn.rShiftTo(oa,bn),Zt.compareTo(bn)>=0?(Zt.subTo(bn,Zt),Zt.rShiftTo(1,Zt)):(bn.subTo(Zt,bn),bn.rShiftTo(1,bn));return Fs>0&&bn.lShiftTo(Fs,bn),bn}function oo(Er){if(Er<=0)return 0;var Zt=this.DV%Er,bn=this.s<0?Er-1:0;if(this.t>0)if(Zt==0)bn=this[0]%Er;else for(var ls=this.t-1;ls>=0;--ls)bn=(Zt*bn+this[ls])%Er;return bn}function Ki(Er){var Zt=Er.isEven();if(this.isEven()&&Zt||Er.signum()==0)return n.ZERO;for(var bn=Er.clone(),ls=this.clone(),oa=ae(1),Fs=ae(0),Wa=ae(0),Ca=ae(1);bn.signum()!=0;){for(;bn.isEven();)bn.rShiftTo(1,bn),Zt?((!oa.isEven()||!Fs.isEven())&&(oa.addTo(this,oa),Fs.subTo(Er,Fs)),oa.rShiftTo(1,oa)):Fs.isEven()||Fs.subTo(Er,Fs),Fs.rShiftTo(1,Fs);for(;ls.isEven();)ls.rShiftTo(1,ls),Zt?((!Wa.isEven()||!Ca.isEven())&&(Wa.addTo(this,Wa),Ca.subTo(Er,Ca)),Wa.rShiftTo(1,Wa)):Ca.isEven()||Ca.subTo(Er,Ca),Ca.rShiftTo(1,Ca);bn.compareTo(ls)>=0?(bn.subTo(ls,bn),Zt&&oa.subTo(Wa,oa),Fs.subTo(Ca,Fs)):(ls.subTo(bn,ls),Zt&&Wa.subTo(oa,Wa),Ca.subTo(Fs,Ca))}if(ls.compareTo(n.ONE)!=0)return n.ZERO;if(Ca.compareTo(Er)>=0)return Ca.subtract(Er);if(Ca.signum()<0)Ca.addTo(Er,Ca);else return Ca;return Ca.signum()<0?Ca.add(Er):Ca}var cc=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Xs=(1<<26)/cc[cc.length-1];function ws(Er){var Zt,bn=this.abs();if(bn.t==1&&bn[0]<=cc[cc.length-1]){for(Zt=0;Zt>1,Er>cc.length&&(Er=cc.length);for(var oa=a(),Fs=0;Fs>8&255,Dc[As++]^=Er>>16&255,Dc[As++]^=Er>>24&255,As>=MA&&(As-=MA)}function cm(){Tf(new Date().getTime())}if(Dc==null){Dc=new Array,As=0;var Fl;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var rc=new Uint8Array(32);for(window.crypto.getRandomValues(rc),Fl=0;Fl<32;++Fl)Dc[As++]=rc[Fl]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var sd=window.crypto.random(32);for(Fl=0;Fl>>8,Dc[As++]=Fl&255;As=0,cm()}function Om(){if(Ma==null){for(cm(),Ma=Mp(),Ma.init(Dc),As=0;As{(function(){"use strict";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(l){return n(o(l),arguments)}function r(l,A){return t.apply(null,[l].concat(A||[]))}function n(l,A){var f=1,I=l.length,C,b="",E,N,B,F,Q,X,ae,ne;for(E=0;E=0),B.type){case"b":C=parseInt(C,10).toString(2);break;case"c":C=String.fromCharCode(parseInt(C,10));break;case"d":case"i":C=parseInt(C,10);break;case"j":C=JSON.stringify(C,null,B.width?parseInt(B.width):0);break;case"e":C=B.precision?parseFloat(C).toExponential(B.precision):parseFloat(C).toExponential();break;case"f":C=B.precision?parseFloat(C).toFixed(B.precision):parseFloat(C);break;case"g":C=B.precision?String(Number(C.toPrecision(B.precision))):parseFloat(C);break;case"o":C=(parseInt(C,10)>>>0).toString(8);break;case"s":C=String(C),C=B.precision?C.substring(0,B.precision):C;break;case"t":C=String(!!C),C=B.precision?C.substring(0,B.precision):C;break;case"T":C=Object.prototype.toString.call(C).slice(8,-1).toLowerCase(),C=B.precision?C.substring(0,B.precision):C;break;case"u":C=parseInt(C,10)>>>0;break;case"v":C=C.valueOf(),C=B.precision?C.substring(0,B.precision):C;break;case"x":C=(parseInt(C,10)>>>0).toString(16);break;case"X":C=(parseInt(C,10)>>>0).toString(16).toUpperCase();break}e.json.test(B.type)?b+=C:(e.number.test(B.type)&&(!ae||B.sign)?(ne=ae?"+":"-",C=C.toString().replace(e.sign,"")):ne="",Q=B.pad_char?B.pad_char==="0"?"0":B.pad_char.charAt(1):" ",X=B.width-(ne+C).length,F=B.width&&X>0?Q.repeat(X):"",b+=B.align?ne+C+F:Q==="0"?ne+F+C:F+ne+C)}return b}var a=Object.create(null);function o(l){if(a[l])return a[l];for(var A=l,f,I=[],C=0;A;){if((f=e.text.exec(A))!==null)I.push(f[0]);else if((f=e.modulo.exec(A))!==null)I.push("%");else if((f=e.placeholder.exec(A))!==null){if(f[2]){C|=1;var b=[],E=f[2],N=[];if((N=e.key.exec(E))!==null)for(b.push(N[1]);(E=E.substring(N[0].length))!=="";)if((N=e.key_access.exec(E))!==null)b.push(N[1]);else if((N=e.index_access.exec(E))!==null)b.push(N[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=b}else C|=2;if(C===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");I.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");A=A.substring(f[0].length)}return a[l]=I}typeof uLt<"u"&&(uLt.sprintf=t,uLt.vsprintf=r),typeof window<"u"&&(window.sprintf=t,window.vsprintf=r,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:r}}))})()});var N6r=H(V6=>{"use strict";var jDl=V6&&V6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zDl=V6&&V6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),b0s=V6&&V6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&jDl(t,e,r);return zDl(t,e),t};Object.defineProperty(V6,"__esModule",{value:!0});V6.Address4=void 0;var _0s=b0s(v6r()),nJ=b0s(B6r()),y0s=cLt(),bze=T6r(),fFe=yze(),R6r=class e{constructor(t){this.groups=nJ.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=_0s.isCorrect(nJ.BITS),this.isInSubnet=_0s.isInSubnet,this.address=t;let r=nJ.RE_SUBNET_STRING.exec(t);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>nJ.BITS)throw new y0s.AddressError("Invalid subnet mask.");t=t.replace(nJ.RE_SUBNET_STRING,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new e(t),!0}catch{return!1}}parse(t){let r=t.split(".");if(!t.match(nJ.RE_ADDRESS))throw new y0s.AddressError("Invalid IPv4 address.");return r}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let r=t.replace(/:/g,"").padStart(8,"0"),n=[],a;for(a=0;a<8;a+=2){let o=r.slice(a,a+2);n.push(parseInt(o,16))}return new e(n.join("."))}static fromInteger(t){return e.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new e(n)}toHex(){return this.parsedAddress.map(t=>(0,fFe.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],r;for(r=0;r(0,fFe.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new bze.BigInteger(this.mask()+"0".repeat(nJ.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new bze.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new bze.BigInteger(this.mask()+"1".repeat(nJ.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new bze.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return e.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}reverseForm(t){t||(t={});let r=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?r:(0,fFe.sprintf)("%s.in-addr.arpa.",r)}isMulticast(){return this.isInSubnet(new e("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(nJ.BITS,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(nJ.RE_ADDRESS,(0,fFe.sprintf)('%s.%s',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};V6.Address4=R6r});var D6r=H(rB=>{"use strict";Object.defineProperty(rB,"__esModule",{value:!0});rB.RE_URL_WITH_PORT=rB.RE_URL=rB.RE_ZONE_STRING=rB.RE_SUBNET_STRING=rB.RE_BAD_ADDRESS=rB.RE_BAD_CHARACTERS=rB.TYPES=rB.SCOPES=rB.GROUPS=rB.BITS=void 0;rB.BITS=128;rB.GROUPS=8;rB.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};rB.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};rB.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;rB.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;rB.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;rB.RE_ZONE_STRING=/%.*$/;rB.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/);rB.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)});var k6r=H(P6=>{"use strict";Object.defineProperty(P6,"__esModule",{value:!0});P6.simpleGroup=P6.spanLeadingZeroes=P6.spanAll=P6.spanAllZeroes=void 0;var E0s=yze();function S0s(e){return e.replace(/(0+)/g,'$1')}P6.spanAllZeroes=S0s;function qDl(e,t=0){return e.split("").map((n,a)=>(0,E0s.sprintf)('%s',n,a+t,S0s(n))).join("")}P6.spanAll=qDl;function v0s(e){return e.replace(/^(0+)/,'$1')}function $Dl(e){return e.split(":").map(r=>v0s(r)).join(":")}P6.spanLeadingZeroes=$Dl;function ekl(e,t=0){return e.split(":").map((n,a)=>/group-v4/.test(n)?n:(0,E0s.sprintf)('%s',a+t,v0s(n)))}P6.simpleGroup=ekl});var B0s=H(vD=>{"use strict";var tkl=vD&&vD.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rkl=vD&&vD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nkl=vD&&vD.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tkl(t,e,r);return rkl(t,e),t};Object.defineProperty(vD,"__esModule",{value:!0});vD.possibleElisions=vD.simpleRegularExpression=vD.ADDRESS_BOUNDARY=vD.padGroup=vD.groupPossibilities=void 0;var ikl=nkl(D6r()),IFe=yze();function ALt(e){return(0,IFe.sprintf)("(%s)",e.join("|"))}vD.groupPossibilities=ALt;function gLt(e){return e.length<4?(0,IFe.sprintf)("0{0,%d}%s",4-e.length,e):e}vD.padGroup=gLt;vD.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function skl(e){let t=[];e.forEach((n,a)=>{parseInt(n,16)===0&&t.push(a)});let r=t.map(n=>e.map((a,o)=>{if(o===n){let l=o===0||o===ikl.GROUPS-1?":":"";return ALt([gLt(a),l])}return gLt(a)}).join(":"));return r.push(e.map(gLt).join(":")),ALt(r)}vD.simpleRegularExpression=skl;function okl(e,t,r){let n=t?"":":",a=r?"":":",o=[];!t&&!r&&o.push("::"),t&&r&&o.push(""),(r&&!t||!r&&t)&&o.push(":"),o.push((0,IFe.sprintf)("%s(:0{1,4}){1,%d}",n,e-1)),o.push((0,IFe.sprintf)("(0{1,4}:){1,%d}%s",e-1,a)),o.push((0,IFe.sprintf)("(0{1,4}:){%d}0{1,4}",e-1));for(let l=1;l{"use strict";var akl=W6&&W6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ckl=W6&&W6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pLt=W6&&W6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&akl(t,e,r);return ckl(t,e),t};Object.defineProperty(W6,"__esModule",{value:!0});W6.Address6=void 0;var w0s=pLt(v6r()),x6r=pLt(B6r()),YE=pLt(D6r()),G6r=pLt(k6r()),V0e=N6r(),P0e=B0s(),Are=cLt(),fL=T6r(),IL=yze();function dLt(e){if(!e)throw new Error("Assertion failed.")}function lkl(e){let t=/(\d+)(\d{3})/;for(;t.test(e);)e=e.replace(t,"$1,$2");return e}function ukl(e){return e=e.replace(/^(0{1,})([1-9]+)$/,'$1$2'),e=e.replace(/^(0{1,})(0)$/,'$1$2'),e}function gkl(e,t){let r=[],n=[],a;for(a=0;at[1]&&n.push(e[a]);return r.concat(["compact"]).concat(n)}function T0s(e){return(0,IL.sprintf)("%04x",parseInt(e,16))}function R0s(e){return e&255}var F6r=class e{constructor(t,r){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=w0s.isInSubnet,this.isCorrect=w0s.isCorrect(YE.BITS),r===void 0?this.groups=YE.GROUPS:this.groups=r,this.address=t;let n=YE.RE_SUBNET_STRING.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>YE.BITS)throw new Are.AddressError("Invalid subnet mask.");t=t.replace(YE.RE_SUBNET_STRING,"")}else if(/\//.test(t))throw new Are.AddressError("Invalid subnet mask.");let a=YE.RE_ZONE_STRING.exec(t);a&&(this.zone=a[0],t=t.replace(YE.RE_ZONE_STRING,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new e(t),!0}catch{return!1}}static fromBigInteger(t){let r=t.toString(16).padStart(32,"0"),n=[],a;for(a=0;a65536)&&(n=null)):n=null,{address:new e(r),port:n}}static fromAddress4(t){let r=new V0e.Address4(t),n=YE.BITS-(x6r.BITS-r.subnetMask);return new e(`::ffff:${r.correctForm()}/${n}`)}static fromArpa(t){let r=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(r.length!==63)throw new Are.AddressError("Invalid 'ip6.arpa' form.");let a=r.split(".").reverse();for(let o=n;o>0;o--){let l=o*4;a.splice(l,0,":")}return r=a.join(""),new e(r)}microsoftTranscription(){return(0,IL.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let r=YE.BITS-this.subnetMask,n=Math.abs(t-YE.BITS),a=r-n;return a<0?"0":lkl(new fL.BigInteger("2",10).pow(a).toString(10))}_startAddress(){return new fL.BigInteger(this.mask()+"0".repeat(YE.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new fL.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new fL.BigInteger(this.mask()+"1".repeat(YE.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new fL.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=YE.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(YE.TYPES))if(this.isInSubnet(new e(t)))return YE.TYPES[t];return"Global unicast"}getBits(t,r){return new fL.BigInteger(this.getBitsBase2(t,r),2)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}getBitsBase16(t,r){let n=r-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,r).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,YE.BITS)}reverseForm(t){t||(t={});let r=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,r).reverse().join(".");return r>0?t.omitSuffix?n:(0,IL.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,r=[],n=0,a=[];for(t=0;t0&&(n>1&&a.push([t-n,t-1]),n=0)}n>1&&a.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=a.map(A=>A[1]-A[0]+1);if(a.length>0){let A=o.indexOf(Math.max(...o));r=gkl(this.parsedAddress,a[A])}else r=this.parsedAddress;for(t=0;t1?"s":"",r.join("")),t.replace(YE.RE_BAD_CHARACTERS,'$1'));let n=t.match(YE.RE_BAD_ADDRESS);if(n)throw new Are.AddressError((0,IL.sprintf)("Address failed regex: %s",n.join("")),t.replace(YE.RE_BAD_ADDRESS,'$1'));let a=[],o=t.split("::");if(o.length===2){let l=o[0].split(":"),A=o[1].split(":");l.length===1&&l[0]===""&&(l=[]),A.length===1&&A[0]===""&&(A=[]);let f=this.groups-(l.length+A.length);if(!f)throw new Are.AddressError("Error parsing groups");this.elidedGroups=f,this.elisionBegin=l.length,this.elisionEnd=l.length+this.elidedGroups,a=a.concat(l);for(let I=0;I(0,IL.sprintf)("%x",parseInt(l,16))),a.length!==this.groups)throw new Are.AddressError("Incorrect number of groups found");return a}canonicalForm(){return this.parsedAddress.map(T0s).join(":")}decimal(){return this.parsedAddress.map(t=>(0,IL.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new fL.BigInteger(this.parsedAddress.map(T0s).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return V0e.Address4.fromHex(new fL.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new e(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),a="";return/:$/.test(n)||(a=":"),n+a+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),r=this.getBits(80,96).xor(new fL.BigInteger("ffff",16)).toString(),n=V0e.Address4.fromHex(this.getBitsBase16(32,64)),a=V0e.Address4.fromHex(this.getBits(96,128).xor(new fL.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),l=this.getBitsBase2(64,80),A=o.testBit(15),f=o.testBit(14),I=o.testBit(8),C=o.testBit(9),b=new fL.BigInteger(l.slice(2,6)+l.slice(8,16),2).toString(10);return{prefix:(0,IL.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:a.address,flags:l,coneNat:A,microsoft:{reserved:f,universalLocal:C,groupIndividual:I,nonce:b},udpPort:r}}inspect6to4(){let t=this.getBitsBase16(0,16),r=V0e.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,IL.sprintf)("%s",t.slice(0,4)),gateway:r.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new e(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(R0s)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(R0s))}static fromUnsignedByteArray(t){let r=new fL.BigInteger("256",10),n=new fL.BigInteger("0",10),a=new fL.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(a.multiply(new fL.BigInteger(t[o].toString(10),10))),a=a.multiply(r);return e.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new e("2001::/32"))}is6to4(){return this.isInSubnet(new e("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,IL.sprintf)(":%s",t),(0,IL.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let r=this.correctForm;return t.v4&&(r=this.to4in6),t.className?(0,IL.sprintf)('%2$s',t.prefix,r.call(this),t.className):(0,IL.sprintf)('%2$s',t.prefix,r.call(this))}group(){if(this.elidedGroups===0)return G6r.simpleGroup(this.address).join(":");dLt(typeof this.elidedGroups=="number"),dLt(typeof this.elisionBegin=="number");let t=[],[r,n]=this.address.split("::");r.length?t.push(...G6r.simpleGroup(r)):t.push("");let a=["hover-group"];for(let o=this.elisionBegin;o',a.join(" "))),n.length?t.push(...G6r.simpleGroup(n,this.elisionEnd)):t.push(""),this.is4()&&(dLt(this.address4 instanceof V0e.Address4),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let r=[],n=new e(this.correctForm());if(n.elidedGroups===0)r.push((0,P0e.simpleRegularExpression)(n.parsedAddress));else if(n.elidedGroups===YE.GROUPS)r.push((0,P0e.possibleElisions)(YE.GROUPS));else{let a=n.address.split("::");a[0].length&&r.push((0,P0e.simpleRegularExpression)(a[0].split(":"))),dLt(typeof n.elidedGroups=="number"),r.push((0,P0e.possibleElisions)(n.elidedGroups,a[0].length!==0,a[1].length!==0)),a[1].length&&r.push((0,P0e.simpleRegularExpression)(a[1].split(":"))),r=[r.join(":")]}return t||(r=["(?=^|",P0e.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...r,")(?=[^\\w\\:]|",P0e.ADDRESS_BOUNDARY,"|$)"]),r.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};W6.Address6=F6r});var Z6r=H(aF=>{"use strict";var Akl=aF&&aF.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dkl=aF&&aF.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pkl=aF&&aF.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Akl(t,e,r);return dkl(t,e),t};Object.defineProperty(aF,"__esModule",{value:!0});aF.v6=aF.AddressError=aF.Address6=aF.Address4=void 0;var fkl=N6r();Object.defineProperty(aF,"Address4",{enumerable:!0,get:function(){return fkl.Address4}});var Ikl=N0s();Object.defineProperty(aF,"Address6",{enumerable:!0,get:function(){return Ikl.Address6}});var hkl=cLt();Object.defineProperty(aF,"AddressError",{enumerable:!0,get:function(){return hkl.AddressError}});var mkl=pkl(k6r());aF.v6={helpers:mkl}});var Z0s=H(JH=>{"use strict";Object.defineProperty(JH,"__esModule",{value:!0});JH.ipToBuffer=JH.int32ToIpv4=JH.ipv4ToInt32=JH.validateSocksClientChainOptions=JH.validateSocksClientOptions=void 0;var hL=S6r(),BD=b6r(),Ckl=wt("stream"),L6r=Z6r(),D0s=wt("net");function _kl(e,t=["connect","bind","associate"]){if(!BD.SocksCommand[e.command])throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommand,e);if(t.indexOf(e.command)===-1)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommandForOperation,e);if(!x0s(e.destination))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!G0s(e.proxy))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxy,e);if(k0s(e.proxy,e),e.timeout&&!F0s(e.timeout))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsTimeout,e);if(e.existing_socket&&!(e.existing_socket instanceof Ckl.Duplex))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsExistingSocket,e)}JH.validateSocksClientOptions=_kl;function ykl(e){if(e.command!=="connect")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommandChain,e);if(!x0s(e.destination))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!(e.proxies&&Array.isArray(e.proxies)&&e.proxies.length>=2))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxiesLength,e);if(e.proxies.forEach(t=>{if(!G0s(t))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxy,e);k0s(t,e)}),e.timeout&&!F0s(e.timeout))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsTimeout,e)}JH.validateSocksClientChainOptions=ykl;function k0s(e,t){if(e.custom_auth_method!==void 0){if(e.custom_auth_methodBD.SOCKS5_CUSTOM_AUTH_END)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthRange,t);if(e.custom_auth_request_handler===void 0||typeof e.custom_auth_request_handler!="function")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_size===void 0)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_handler===void 0||typeof e.custom_auth_response_handler!="function")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t)}}function x0s(e){return e&&typeof e.host=="string"&&typeof e.port=="number"&&e.port>=0&&e.port<=65535}function G0s(e){return e&&(typeof e.host=="string"||typeof e.ipaddress=="string")&&typeof e.port=="number"&&e.port>=0&&e.port<=65535&&(e.type===4||e.type===5)}function F0s(e){return typeof e=="number"&&e>0}function bkl(e){return new L6r.Address4(e).toArray().reduce((r,n)=>(r<<8)+n,0)}JH.ipv4ToInt32=bkl;function Ekl(e){let t=e>>>24&255,r=e>>>16&255,n=e>>>8&255,a=e&255;return[t,r,n,a].join(".")}JH.int32ToIpv4=Ekl;function Skl(e){if(D0s.isIPv4(e)){let t=new L6r.Address4(e);return Buffer.from(t.toArray())}else if(D0s.isIPv6(e)){let t=new L6r.Address6(e);return Buffer.from(t.canonicalForm().split(":").map(r=>r.padStart(4,"0")).join(""),"hex")}else throw new Error("Invalid IP address format")}JH.ipToBuffer=Skl});var L0s=H(fLt=>{"use strict";Object.defineProperty(fLt,"__esModule",{value:!0});fLt.ReceiveBuffer=void 0;var V6r=class{constructor(t=4096){this.buffer=Buffer.allocUnsafe(t),this.offset=0,this.originalSize=t}get length(){return this.offset}append(t){if(!Buffer.isBuffer(t))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+t.length>=this.buffer.length){let r=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+t.length)),r.copy(this.buffer)}return t.copy(this.buffer,this.offset),this.offset+=t.length}peek(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,t)}get(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let r=Buffer.allocUnsafe(t);return this.buffer.slice(0,t).copy(r),this.buffer.copyWithin(0,t,t+this.offset-t),this.offset-=t,r}};fLt.ReceiveBuffer=V6r});var V0s=H(Jue=>{"use strict";var hFe=Jue&&Jue.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(Jue,"__esModule",{value:!0});Jue.SocksClientError=Jue.SocksClient=void 0;var vkl=wt("events"),mFe=wt("net"),eP=A0s(),lu=b6r(),KO=Z0s(),Bkl=L0s(),W6r=S6r();Object.defineProperty(Jue,"SocksClientError",{enumerable:!0,get:function(){return W6r.SocksClientError}});var P6r=Z6r(),O6r=class e extends vkl.EventEmitter{constructor(t){super(),this.options=Object.assign({},t),(0,KO.validateSocksClientOptions)(t),this.setState(lu.SocksClientState.Created)}static createConnection(t,r){return new Promise((n,a)=>{try{(0,KO.validateSocksClientOptions)(t,["connect"])}catch(l){return typeof r=="function"?(r(l),n(l)):a(l)}let o=new e(t);o.connect(t.existing_socket),o.once("established",l=>{o.removeAllListeners(),typeof r=="function"&&r(null,l),n(l)}),o.once("error",l=>{o.removeAllListeners(),typeof r=="function"?(r(l),n(l)):a(l)})})}static createConnectionChain(t,r){return new Promise((n,a)=>hFe(this,void 0,void 0,function*(){try{(0,KO.validateSocksClientChainOptions)(t)}catch(o){return typeof r=="function"?(r(o),n(o)):a(o)}t.randomizeChain&&(0,W6r.shuffleArray)(t.proxies);try{let o;for(let l=0;lthis.onDataReceivedHandler(n),this.onClose=()=>this.onCloseHandler(),this.onError=n=>this.onErrorHandler(n),this.onConnect=()=>this.onConnectHandler();let r=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||lu.DEFAULT_TIMEOUT);r.unref&&typeof r.unref=="function"&&r.unref(),t?this.socket=t:this.socket=new mFe.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(lu.SocksClientState.Connecting),this.receiveBuffer=new Bkl.ReceiveBuffer,t?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",n=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let a=this.receiveBuffer.get(this.receiveBuffer.length);n.socket.emit("data",a)}n.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==lu.SocksClientState.Established&&this.state!==lu.SocksClientState.BoundWaitingForConnection&&this.closeSocket(lu.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(lu.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(lu.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(t){this.receiveBuffer.append(t),this.processData()}processData(){for(;this.state!==lu.SocksClientState.Established&&this.state!==lu.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===lu.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===lu.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===lu.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===lu.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(lu.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(lu.ERRORS.SocketClosed)}onErrorHandler(t){this.closeSocket(t.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(t){this.state!==lu.SocksClientState.Error&&(this.setState(lu.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new W6r.SocksClientError(t,this.options)))}sendSocks4InitialHandshake(){let t=this.options.proxy.userId||"",r=new eP.SmartBuffer;r.writeUInt8(4),r.writeUInt8(lu.SocksCommand[this.options.command]),r.writeUInt16BE(this.options.destination.port),mFe.isIPv4(this.options.destination.host)?(r.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host)),r.writeStringNT(t)):(r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(1),r.writeStringNT(t),r.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(r.toBuffer())}handleSocks4FinalHandshakeResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==lu.Socks4Response.Granted)this.closeSocket(`${lu.ERRORS.Socks4ProxyRejectedConnection} - (${lu.Socks4Response[t[1]]})`);else if(lu.SocksCommand[this.options.command]===lu.SocksCommand.bind){let r=eP.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,KO.int32ToIpv4)(r.readUInt32BE())};n.host==="0.0.0.0"&&(n.host=this.options.proxy.ipaddress),this.setState(lu.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:n,socket:this.socket})}else this.setState(lu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==lu.Socks4Response.Granted)this.closeSocket(`${lu.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${lu.Socks4Response[t[1]]})`);else{let r=eP.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,KO.int32ToIpv4)(r.readUInt32BE())};this.setState(lu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:n,socket:this.socket})}}sendSocks5InitialHandshake(){let t=new eP.SmartBuffer,r=[lu.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&r.push(lu.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&r.push(this.options.proxy.custom_auth_method),t.writeUInt8(5),t.writeUInt8(r.length);for(let n of r)t.writeUInt8(n);this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(t.toBuffer()),this.setState(lu.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let t=this.receiveBuffer.get(2);t[0]!==5?this.closeSocket(lu.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):t[1]===lu.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(lu.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):t[1]===lu.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=lu.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):t[1]===lu.Socks5Auth.UserPass?(this.socks5ChosenAuthType=lu.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):t[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(lu.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let t=this.options.proxy.userId||"",r=this.options.proxy.password||"",n=new eP.SmartBuffer;n.writeUInt8(1),n.writeUInt8(Buffer.byteLength(t)),n.writeString(t),n.writeUInt8(Buffer.byteLength(r)),n.writeString(r),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(n.toBuffer()),this.setState(lu.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return hFe(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(lu.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(t){return hFe(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(t)})}handleSocks5AuthenticationNoAuthHandshakeResponse(t){return hFe(this,void 0,void 0,function*(){return t[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(t){return hFe(this,void 0,void 0,function*(){return t[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return hFe(this,void 0,void 0,function*(){this.setState(lu.SocksClientState.ReceivedAuthenticationResponse);let t=!1;this.socks5ChosenAuthType===lu.Socks5Auth.NoAuth?t=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===lu.Socks5Auth.UserPass?t=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(t=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),t?this.sendSocks5CommandRequest():this.closeSocket(lu.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let t=new eP.SmartBuffer;t.writeUInt8(5),t.writeUInt8(lu.SocksCommand[this.options.command]),t.writeUInt8(0),mFe.isIPv4(this.options.destination.host)?(t.writeUInt8(lu.Socks5HostType.IPv4),t.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host))):mFe.isIPv6(this.options.destination.host)?(t.writeUInt8(lu.Socks5HostType.IPv6),t.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host))):(t.writeUInt8(lu.Socks5HostType.Hostname),t.writeUInt8(this.options.destination.host.length),t.writeString(this.options.destination.host)),t.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(t.toBuffer()),this.setState(lu.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let t=this.receiveBuffer.peek(5);if(t[0]!==5||t[1]!==lu.Socks5Response.Granted)this.closeSocket(`${lu.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${lu.Socks5Response[t[1]]}`);else{let r=t[3],n,a;if(r===lu.Socks5HostType.IPv4){let o=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var wkl=W0e&&W0e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Tkl=W0e&&W0e.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&wkl(t,e,r)};Object.defineProperty(W0e,"__esModule",{value:!0});Tkl(V0s(),W0e)});var O0s=H(UH=>{"use strict";var Rkl=UH&&UH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Nkl=UH&&UH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),W0s=UH&&UH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Rkl(t,e,r);return Nkl(t,e),t},Dkl=UH&&UH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UH,"__esModule",{value:!0});UH.SocksProxyAgent=void 0;var kkl=P0s(),xkl=Cze(),Gkl=Dkl(uT()),Fkl=W0s(wt("dns")),Zkl=W0s(wt("tls")),Lkl=wt("url"),ILt=(0,Gkl.default)("socks-proxy-agent");function Vkl(e){let t=!1,r=5,n=e.hostname,a=parseInt(e.port,10)||1080;switch(e.protocol.replace(":","")){case"socks4":t=!0,r=4;break;case"socks4a":r=4;break;case"socks5":t=!0,r=5;break;case"socks":r=5;break;case"socks5h":r=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(e.protocol)}`)}let o={host:n,port:a,type:r};return e.username&&Object.defineProperty(o,"userId",{value:decodeURIComponent(e.username),enumerable:!1}),e.password!=null&&Object.defineProperty(o,"password",{value:decodeURIComponent(e.password),enumerable:!1}),{lookup:t,proxy:o}}var hLt=class extends xkl.Agent{constructor(t,r){super(r);let n=typeof t=="string"?new Lkl.URL(t):t,{proxy:a,lookup:o}=Vkl(n);this.shouldLookup=o,this.proxy=a,this.timeout=r?.timeout??null,this.socketOptions=r?.socketOptions??null}async connect(t,r){let{shouldLookup:n,proxy:a,timeout:o}=this;if(!r.host)throw new Error("No `host` defined!");let{host:l}=r,{port:A,lookup:f=Fkl.lookup}=r;n&&(l=await new Promise((E,N)=>{f(l,{},(B,F)=>{B?N(B):E(F)})}));let I={proxy:a,destination:{host:l,port:typeof A=="number"?A:parseInt(A,10)},command:"connect",timeout:o??void 0,socket_options:this.socketOptions??void 0},C=E=>{t.destroy(),b.destroy(),E&&E.destroy()};ILt("Creating socks proxy connection: %o",I);let{socket:b}=await kkl.SocksClient.createConnection(I);if(ILt("Successfully created socks proxy connection"),o!==null&&(b.setTimeout(o),b.on("timeout",()=>C())),r.secureEndpoint){ILt("Upgrading socket connection to TLS");let E=r.servername||r.host,N=Zkl.connect({...Pkl(r,"host","path","port"),socket:b,servername:E});return N.once("error",B=>{ILt("Socket TLS error",B.message),C(N)}),N}return b}};hLt.protocols=["socks","socks4","socks4a","socks5","socks5h"];UH.SocksProxyAgent=hLt;function Pkl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var J6r=H((vag,M0s)=>{"use strict";var M6r=class extends Error{constructor(t){super(`Invalid protocol \`${t.protocol}\` connecting to proxy \`${t.host}\``),this.code="EINVALIDPROXY",this.proxy=t}},H6r=class extends Error{constructor(t){super(`Timeout connecting to host \`${t}\``),this.code="ECONNECTIONTIMEOUT",this.host=t}},Y6r=class extends Error{constructor(t){super(`Idle timeout reached for host \`${t}\``),this.code="EIDLETIMEOUT",this.host=t}},Q6r=class extends Error{constructor(t,r){let n="Response timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`connecting to host \`${t.host}\``,super(n),this.code="ERESPONSETIMEOUT",this.proxy=r,this.request=t}},X6r=class extends Error{constructor(t,r){let n="Transfer timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`for \`${t.host}\``,super(n),this.code="ETRANSFERTIMEOUT",this.proxy=r,this.request=t}};M0s.exports={InvalidProxyProtocolError:M6r,ConnectionTimeoutError:H6r,IdleTimeoutError:Y6r,ResponseTimeoutError:Q6r,TransferTimeoutError:X6r}});var U6r=H((Bag,Y0s)=>{"use strict";var{HttpProxyAgent:Wkl}=e0s(),{HttpsProxyAgent:Okl}=o0s(),{SocksProxyAgent:H0s}=O0s(),{LRUCache:Mkl}=bIe(),{InvalidProxyProtocolError:Hkl}=J6r(),Ykl=new Mkl({max:20}),Qkl=new Set(H0s.protocols),Xkl=new Set(["https_proxy","http_proxy","proxy","no_proxy"]),Eze=Object.entries(process.env).reduce((e,[t,r])=>(t=t.toLowerCase(),Xkl.has(t)&&(e[t]=r),e),{}),Jkl=e=>{e=new URL(e);let t=e.protocol.slice(0,-1);if(Qkl.has(t))return H0s;if(t==="https"||t==="http")return[Wkl,Okl];throw new Hkl(e)},Ukl=(e,t)=>{if(typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),!t||!t.length)return!1;let r=e.hostname.split(".").reverse();return t.some(n=>{let a=n.split(".").filter(Boolean).reverse();if(!a.length)return!1;for(let o=0;o(e=new URL(e),t||(t=e.protocol==="https:"?Eze.https_proxy:Eze.https_proxy||Eze.http_proxy||Eze.proxy),r||(r=Eze.no_proxy),!t||Ukl(e,r)?null:new URL(t));Y0s.exports={getProxyAgent:Jkl,getProxy:Kkl,proxyCache:Ykl}});var J0s=H((Tag,X0s)=>{"use strict";var jkl=wt("net"),zkl=wt("tls"),{once:Q0s}=wt("events"),qkl=wt("timers/promises"),{normalizeOptions:$kl,cacheOptions:exl}=h6r(),{getProxy:txl,getProxyAgent:rxl,proxyCache:K6r}=U6r(),mLt=J6r(),{Agent:nxl}=Cze();X0s.exports=class extends nxl{#e;#t;#n;#r;#i;constructor(t={}){let{timeouts:r,proxy:n,noProxy:a,...o}=$kl(t);super(o),this.#e=o,this.#t=r,n&&(this.#n=new URL(n),this.#r=a,this.#i=rxl(n))}get proxy(){return this.#n?{url:this.#n}:{}}#s(t){if(!this.#n)return;let r=txl(`${t.protocol}//${t.host}:${t.port}`,{proxy:this.#n,noProxy:this.#r});if(!r)return;let n=exl({...t,...this.#e,timeouts:this.#t,proxy:r});if(K6r.has(n))return K6r.get(n);let a=this.#i;Array.isArray(a)&&(a=this.isSecureEndpoint(t)?a[1]:a[0]);let o=new a(r,{...this.#e,socketOptions:{family:this.#e.family}});return K6r.set(n,o),o}async#o({promises:t,options:r,timeout:n},a=new AbortController){if(n){let l=qkl.setTimeout(n,null,{signal:a.signal}).then(()=>{throw new mLt.ConnectionTimeoutError(`${r.host}:${r.port}`)}).catch(A=>{if(A.name!=="AbortError")throw A});t.push(l)}let o;try{o=await Promise.race(t),a.abort()}catch(l){throw a.abort(),l}return o}async connect(t,r){r.lookup??=this.#e.lookup;let n,a=this.#t.connection,o=this.isSecureEndpoint(r),l=this.#s(r);if(l){let C=Date.now();n=await this.#o({options:r,timeout:a,promises:[l.connect(t,r)]}),a&&(a=a-(Date.now()-C))}else n=(o?zkl:jkl).connect(r);n.setKeepAlive(this.keepAlive,this.keepAliveMsecs),n.setNoDelay(this.keepAlive);let A=new AbortController,{signal:f}=A,I=n[o?"secureConnecting":"connecting"]?Q0s(n,o?"secureConnect":"connect",{signal:f}):Promise.resolve();return await this.#o({options:r,timeout:a,promises:[I,Q0s(n,"error",{signal:f}).then(C=>{throw C[0]})]},A),this.#t.idle&&n.setTimeout(this.#t.idle,()=>{n.destroy(new mLt.IdleTimeoutError(`${r.host}:${r.port}`))}),n}addRequest(t,r){let n=this.#s(r);if(n?.setRequestProps&&n.setRequestProps(t,r),t.setHeader("connection",this.keepAlive?"keep-alive":"close"),this.#t.response){let a;t.once("finish",()=>{setTimeout(()=>{t.destroy(new mLt.ResponseTimeoutError(t,this.#n))},this.#t.response)}),t.once("response",()=>{clearTimeout(a)})}if(this.#t.transfer){let a;t.once("response",o=>{setTimeout(()=>{o.destroy(new mLt.TransferTimeoutError(t,this.#n))},this.#t.transfer),o.once("close",()=>{clearTimeout(a)})})}return super.addRequest(t,r)}}});var z0s=H((Rag,j0s)=>{"use strict";var{LRUCache:ixl}=bIe(),{normalizeOptions:sxl,cacheOptions:oxl}=h6r(),{getProxy:axl,proxyCache:U0s}=U6r(),K0s=I6r(),CLt=J0s(),Sze=new ixl({max:20}),cxl=(e,{agent:t,proxy:r,noProxy:n,...a}={})=>{if(t!=null)return t;e=new URL(e);let o=axl(e,{proxy:r,noProxy:n}),l={...sxl(a),proxy:o},A=oxl({...l,secureEndpoint:e.protocol==="https:"});if(Sze.has(A))return Sze.get(A);let f=new CLt(l);return Sze.set(A,f),f};j0s.exports={getAgent:cxl,Agent:CLt,HttpAgent:CLt,HttpsAgent:CLt,cache:{proxy:U0s,agent:Sze,dns:K0s.cache,clear:()=>{U0s.clear(),Sze.clear(),K0s.cache.clear()}}}});var q0s=H((Nag,lxl)=>{lxl.exports={name:"make-fetch-happen",version:"14.0.3",description:"Opinionated, caching, retrying fetch client",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",posttest:"npm run lint",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',lint:"npm run eslint",lintfix:"npm run eslint -- --fix",postlint:"template-oss-check",snap:"tap","template-oss-apply":"template-oss-apply --force"},repository:{type:"git",url:"git+https://github.com/npm/make-fetch-happen.git"},keywords:["http","request","fetch","mean girls","caching","cache","subresource integrity"],author:"GitHub Inc.",license:"ISC",dependencies:{"@npmcli/agent":"^3.0.0",cacache:"^19.0.1","http-cache-semantics":"^4.1.1",minipass:"^7.0.2","minipass-fetch":"^4.0.0","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4",negotiator:"^1.0.0","proc-log":"^5.0.0","promise-retry":"^2.0.1",ssri:"^12.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.4",nock:"^13.2.4","safe-buffer":"^5.2.1","standard-version":"^9.3.2",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},tap:{color:1,files:"test/*.js","check-coverage":!0,timeout:60,"nyc-arg":["--exclude","tap-snapshots/**"]},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.4",publish:"true"}}});var yLt=H((Dag,eys)=>{var{Minipass:uxl}=rF(),_Lt=Y7e(),gxl=p6r(),Axl=Ute(),{log:$0s}=f6r(),dxl=d6r(),{getAgent:pxl}=z0s(),j6r=q0s(),fxl=`${j6r.name}/${j6r.version} (+https://npm.im/${j6r.name})`,Ixl=["ECONNRESET","ECONNREFUSED","EADDRINUSE","ETIMEDOUT","ECONNECTIONTIMEOUT","EIDLETIMEOUT","ERESPONSETIMEOUT","ETRANSFERTIMEOUT"],hxl=["request-timeout"],mxl=(e,t)=>{let r=pxl(e.url,{...t,signal:void 0});e.headers.has("connection")||e.headers.set("connection",r?"keep-alive":"close"),e.headers.has("user-agent")||e.headers.set("user-agent",fxl);let n={...t,agent:r,redirect:"manual"};return gxl(async(a,o)=>{let l=new _Lt.Request(e,n);try{let A=await _Lt(l,n);if(n.integrity&&A.status===200){let C=Axl.integrityStream({algorithms:n.algorithms,integrity:n.integrity,size:n.size}),b=new dxl({events:["integrity","size"]},A.body,C);C.on("integrity",E=>b.emit("integrity",E)),C.on("size",E=>b.emit("size",E)),A=new _Lt.Response(b,A),A.body.hasIntegrityEmitter=!0}A.headers.set("x-fetch-attempts",o);let f=uxl.isStream(l.body);return l.method!=="POST"&&!f&&([408,420,429].includes(A.status)||A.status>=500)?(typeof t.onRetry=="function"&&t.onRetry(A),$0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.status}`),a(A)):A}catch(A){let f=A.code==="EPROMISERETRY"?A.retried.code:A.code,I=A.retried instanceof _Lt.Response||Ixl.includes(f)&&hxl.includes(A.type);if(l.method==="POST"||I)throw A;return typeof t.onRetry=="function"&&t.onRetry(A),$0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.code}`),a(A)}},t.retry).catch(a=>{if(a.status>=400&&a.type!=="system")return a;throw a})};eys.exports=mxl});var oys=H((kag,sys)=>{var{Request:tys,Response:z6r}=Y7e(),{Minipass:rys}=rF(),Cxl=lZt(),O0e=w_s(),_xl=wt("url"),yxl=d6r(),bxl=K8r(),q6r=N_s(),Exl=yLt(),vze=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Sxl=["accept-charset","accept-encoding","accept-language","accept","cache-control"],iys=["cache-control","content-encoding","content-language","content-type","date","etag","expires","last-modified","link","location","pragma","vary"],nys=(e,t,r)=>{let n={time:Date.now(),url:e.url,reqHeaders:{},resHeaders:{},options:{compress:r.compress!=null?r.compress:e.compress}};t.status!==200&&t.status!==304&&(n.status=t.status);for(let l of Sxl)e.headers.has(l)&&(n.reqHeaders[l]=e.headers.get(l));let a=e.headers.get("host"),o=new _xl.URL(e.url);if(a&&o.host!==a&&(n.reqHeaders.host=a),t.headers.has("vary")){let l=t.headers.get("vary");if(l!=="*"){let A=l.trim().toLowerCase().split(/\s*,\s*/);for(let f of A)e.headers.has(f)&&(n.reqHeaders[f]=e.headers.get(f))}}for(let l of iys)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));for(let l of r.cacheAdditionalHeaders)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));return n},bLt=Symbol("request"),ELt=Symbol("response"),SLt=Symbol("policy"),$6r=class e{constructor({entry:t,request:r,response:n,options:a}){t?(this.key=t.key,this.entry=t,this.entry.metadata.time=this.entry.metadata.time||this.entry.time):this.key=q6r(r),this.options=a,this[bLt]=r,this[ELt]=n,this[SLt]=null}static async find(t,r){try{var n=await O0e.index.compact(r.cachePath,q6r(t),(o,l)=>{let A=new e({entry:o,options:r}),f=new e({entry:l,options:r});return A.policy.satisfies(f.request)},{validateEntry:o=>o.metadata&&o.metadata.resHeaders&&o.metadata.resHeaders["content-encoding"]===null?!1:o.integrity===null?!!(o.metadata&&o.metadata.status):!0})}catch{return}if(r.cache==="reload")return;let a;for(let o of n){let l=new e({entry:o,options:r});if(l.policy.satisfies(t)){a=l;break}}return a}static async invalidate(t,r){let n=q6r(t);try{await O0e.rm.entry(r.cachePath,n,{removeFully:!0})}catch{}}get request(){return this[bLt]||(this[bLt]=new tys(this.entry.metadata.url,{method:"GET",headers:this.entry.metadata.reqHeaders,...this.entry.metadata.options})),this[bLt]}get response(){return this[ELt]||(this[ELt]=new z6r(null,{url:this.entry.metadata.url,counter:this.options.counter,status:this.entry.metadata.status||200,headers:{...this.entry.metadata.resHeaders,"content-length":this.entry.size}})),this[ELt]}get policy(){return this[SLt]||(this[SLt]=new bxl({entry:this.entry,request:this.request,response:this.response,options:this.options})),this[SLt]}async store(t){if(this.request.method!=="GET"||![200,301,308].includes(this.response.status)||!this.policy.storable())return this.response.headers.set("x-local-cache-status","skip"),this.response;let r=this.response.headers.get("content-length"),n={algorithms:this.options.algorithms,metadata:nys(this.request,this.response,this.options),size:r,integrity:this.options.integrity,integrityEmitter:this.response.body.hasIntegrityEmitter&&this.response.body},a=null;if(this.response.status===200){let l,A,f=new Promise((C,b)=>{l=C,A=b}).catch(C=>{a.emit("error",C)});a=new yxl({events:["integrity","size"]},new Cxl({flush(){return f}})),a.hasIntegrityEmitter=!0;let I=()=>{let C=new rys,b=O0e.put.stream(this.options.cachePath,this.key,n);b.on("integrity",E=>a.emit("integrity",E)),b.on("size",E=>a.emit("size",E)),C.pipe(b),b.promise().then(l,A),a.unshift(C),a.unshift(this.response.body)};a.once("resume",I),a.once("end",()=>a.removeListener("resume",I))}else await O0e.index.insert(this.options.cachePath,this.key,null,n);return this.response.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),this.response.headers.set("x-local-cache-key",encodeURIComponent(this.key)),this.response.headers.set("x-local-cache-mode","stream"),this.response.headers.set("x-local-cache-status",t),this.response.headers.set("x-local-cache-time",new Date().toISOString()),new z6r(a,{url:this.response.url,status:this.response.status,headers:this.response.headers,counter:this.options.counter})}async respond(t,r,n){let a;if(t==="HEAD"||[301,308].includes(this.response.status))a=this.response;else{let o=new rys,l={...this.policy.responseHeaders()},A=()=>{let f=O0e.get.stream.byDigest(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize});f.on("error",async I=>{f.pause(),I.code==="EINTEGRITY"&&await O0e.rm.content(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize}),(I.code==="ENOENT"||I.code==="EINTEGRITY")&&await e.invalidate(this.request,this.options),o.emit("error",I),f.resume()}),o.emit("integrity",this.entry.integrity),o.emit("size",Number(l["content-length"])),f.pipe(o)};o.once("resume",A),o.once("end",()=>o.removeListener("resume",A)),a=new z6r(o,{url:this.entry.metadata.url,counter:r.counter,status:200,headers:l})}return a.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),a.headers.set("x-local-cache-hash",encodeURIComponent(this.entry.integrity)),a.headers.set("x-local-cache-key",encodeURIComponent(this.key)),a.headers.set("x-local-cache-mode","stream"),a.headers.set("x-local-cache-status",n),a.headers.set("x-local-cache-time",new Date(this.entry.metadata.time).toUTCString()),a}async revalidate(t,r){let n=new tys(t,{headers:this.policy.revalidationHeaders(t)});try{var a=await Exl(n,{...r,headers:void 0})}catch(l){if(!this.policy.mustRevalidate)return this.respond(t.method,r,"stale");throw l}if(this.policy.revalidated(n,a)){let l=nys(t,a,r);for(let A of iys)!vze(l.resHeaders,A)&&vze(this.entry.metadata.resHeaders,A)&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]);for(let A of r.cacheAdditionalHeaders){let f=vze(l.resHeaders,A),I=vze(this.entry.metadata.resHeaders,A),C=vze(this.policy.response.headers,A);!f&&I&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]),!C&&f&&(this.policy.response.headers[A]=l.resHeaders[A])}try{await O0e.index.insert(r.cachePath,this.key,this.entry.integrity,{size:this.entry.size,metadata:l})}catch{}return this.respond(t.method,r,"revalidated")}return new e({request:t,response:a,options:r}).store("updated")}};sys.exports=$6r});var lys=H((xag,cys)=>{var{NotCachedError:vxl}=Yhs(),e7r=oys(),Bxl=yLt(),ays=async(e,t)=>{let r=await e7r.find(e,t);if(!r){if(t.cache==="only-if-cached")throw new vxl(e.url);let a=await Bxl(e,t);return new e7r({request:e,response:a,options:t}).store("miss")}if(t.cache==="no-cache")return r.revalidate(e,t);let n=r.policy.needsRevalidation(e);return t.cache==="force-cache"||t.cache==="only-if-cached"||!n?r.respond(e.method,t,n?"stale":"hit"):r.revalidate(e,t)};ays.invalidate=async(e,t)=>{if(t.cachePath)return e7r.invalidate(e,t)};cys.exports=ays});var dys=H((Gag,Ays)=>{"use strict";var{FetchError:t7r,Request:wxl,isRedirect:Txl}=Y7e(),r7r=wt("url"),Rxl=K8r(),uys=lys(),Nxl=yLt(),Dxl=(e,t,r)=>{if(!Txl(t.status)||r.redirect==="manual")return!1;if(r.redirect==="error")throw new t7r(`redirect mode is set to error: ${e.url}`,"no-redirect",{code:"ENOREDIRECT"});if(!t.headers.has("location"))throw new t7r(`redirect location header missing for: ${e.url}`,"no-location",{code:"EINVALIDREDIRECT"});if(e.counter>=e.follow)throw new t7r(`maximum redirect reached at: ${e.url}`,"max-redirect",{code:"EMAXREDIRECT"});return!0},kxl=(e,t,r)=>{let n={...r},a=t.headers.get("location"),o=new r7r.URL(a,/^https?:/.test(a)?void 0:e.url);return new r7r.URL(e.url).hostname!==o.hostname&&(e.headers.delete("authorization"),e.headers.delete("cookie")),(t.status===303||e.method==="POST"&&[301,302].includes(t.status))&&(n.method="GET",n.body=null,e.headers.delete("content-length")),n.headers={},e.headers.forEach((A,f)=>{n.headers[f]=A}),n.counter=++e.counter,{request:new wxl(r7r.format(o),n),options:n}},gys=async(e,t)=>{let r=Rxl.storable(e,t)?await uys(e,t):await Nxl(e,t);if(!["GET","HEAD"].includes(e.method)&&r.status>=200&&r.status<=399&&await uys.invalidate(e,t),!Dxl(e,r,t))return r;let n=kxl(e,r,t);return gys(n.request,n.options)};Ays.exports=gys});var BLt=H((Fag,CFe)=>{var{FetchError:xxl,Headers:Gxl,Request:pys,Response:Fxl}=Y7e(),Zxl=hhs(),Lxl=dys(),vLt=(e,t)=>{let r=Zxl(t),n=new pys(e,r);return Lxl(n,r)};vLt.defaults=(e,t={},r=vLt)=>{typeof e=="object"&&(t=e,e=null);let n=(a,o={})=>{let l=a||e,A={...t,...o,headers:{...t.headers,...o.headers}};return r(l,A)};return n.defaults=(a,o={})=>vLt.defaults(a,o,n),n};CFe.exports=vLt;CFe.exports.FetchError=xxl;CFe.exports.Headers=Gxl;CFe.exports.Request=pys;CFe.exports.Response=Fxl});var fys=H(_Fe=>{"use strict";var Vxl=_Fe&&_Fe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_Fe,"__esModule",{value:!0});_Fe.CIContextProvider=void 0;var Pxl=Vxl(BLt()),Wxl=[Oxl,Mxl],n7r=class{constructor(t="sigstore"){this.audience=t}async getToken(){return Promise.any(Wxl.map(t=>t(this.audience))).catch(()=>Promise.reject("CI: no tokens available"))}};_Fe.CIContextProvider=n7r;async function Oxl(e){if(!process.env.ACTIONS_ID_TOKEN_REQUEST_URL||!process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN)return Promise.reject("no token available");let t=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);return t.searchParams.append("audience",e),(await(0,Pxl.default)(t.href,{retry:2,headers:{Accept:"application/json",Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).json().then(n=>n.value)}async function Mxl(){return process.env.SIGSTORE_ID_TOKEN?process.env.SIGSTORE_ID_TOKEN:Promise.reject("no token available")}});var Iys=H(wLt=>{"use strict";Object.defineProperty(wLt,"__esModule",{value:!0});wLt.CIContextProvider=void 0;var Hxl=fys();Object.defineProperty(wLt,"CIContextProvider",{enumerable:!0,get:function(){return Hxl.CIContextProvider}})});var TLt=H(Bze=>{"use strict";var mys=Bze&&Bze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bze,"__esModule",{value:!0});Bze.fetchWithRetry=tGl;var Yxl=wt("http2"),Qxl=mys(BLt()),hys=f6r(),Xxl=mys(p6r()),Jxl=Lue(),Uxl=NFt(),{HTTP2_HEADER_LOCATION:Kxl,HTTP2_HEADER_CONTENT_TYPE:jxl,HTTP2_HEADER_USER_AGENT:zxl,HTTP_STATUS_INTERNAL_SERVER_ERROR:qxl,HTTP_STATUS_TOO_MANY_REQUESTS:$xl,HTTP_STATUS_REQUEST_TIMEOUT:eGl}=Yxl.constants;async function tGl(e,t){return(0,Xxl.default)(async(r,n)=>{let a=t.method||"POST",o={[zxl]:Jxl.ua.getUserAgent(),...t.headers},l=await(0,Qxl.default)(e,{method:a,headers:o,body:t.body,timeout:t.timeout,retry:!1}).catch(A=>(hys.log.http("fetch",`${a} ${e} attempt ${n} failed with ${A}`),r(A)));if(l.ok)return l;{let A=await rGl(l);if(hys.log.http("fetch",`${a} ${e} attempt ${n} failed with ${l.status}`),nGl(l.status))return r(A);throw A}},iGl(t.retry))}var rGl=async e=>{let t=e.statusText,r=e.headers.get(Kxl)||void 0;if(e.headers.get(jxl)?.includes("application/json"))try{t=(await e.json()).message||t}catch{}return new Uxl.HTTPError({status:e.status,message:t,location:r})},nGl=e=>[eGl,$xl].includes(e)||e>=qxl,iGl=e=>typeof e=="boolean"?{retries:e?1:0}:typeof e=="number"?{retries:e}:{retries:0,...e}});var Cys=H(RLt=>{"use strict";Object.defineProperty(RLt,"__esModule",{value:!0});RLt.Fulcio=void 0;var sGl=TLt(),i7r=class{constructor(t){this.options=t}async createSigningCertificate(t){let{baseURL:r,retry:n,timeout:a}=this.options,o=`${r}/api/v2/signingCert`;return(await(0,sGl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:a,retry:n})).json()}};RLt.Fulcio=i7r});var _ys=H(NLt=>{"use strict";Object.defineProperty(NLt,"__esModule",{value:!0});NLt.CAClient=void 0;var oGl=WGe(),aGl=Cys(),s7r=class{constructor(t){this.fulcio=new aGl.Fulcio({baseURL:t.fulcioBaseURL,retry:t.retry,timeout:t.timeout})}async createSigningCertificate(t,r,n){let a=cGl(t,r,n);try{let o=await this.fulcio.createSigningCertificate(a);return(o.signedCertificateEmbeddedSct?o.signedCertificateEmbeddedSct:o.signedCertificateDetachedSct).chain.certificates}catch(o){(0,oGl.internalError)(o,"CA_CREATE_SIGNING_CERTIFICATE_ERROR","error creating signing certificate")}}};NLt.CAClient=s7r;function cGl(e,t,r){return{credentials:{oidcIdentityToken:e},publicKeyRequest:{publicKey:{algorithm:"ECDSA",content:t},proofOfPossession:r.toString("base64")}}}});var bys=H(yFe=>{"use strict";var lGl=yFe&&yFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yFe,"__esModule",{value:!0});yFe.EphemeralSigner=void 0;var yys=lGl(wt("crypto")),uGl="ec",gGl="P-256",o7r=class{constructor(){this.keypair=yys.default.generateKeyPairSync(uGl,{namedCurve:gGl})}async sign(t){let r=yys.default.sign(null,t,this.keypair.privateKey),n=this.keypair.publicKey.export({format:"pem",type:"spki"}).toString("ascii");return{signature:r,key:{$case:"publicKey",publicKey:n}}}};yFe.EphemeralSigner=o7r});var Eys=H(M0e=>{"use strict";Object.defineProperty(M0e,"__esModule",{value:!0});M0e.FulcioSigner=M0e.DEFAULT_FULCIO_URL=void 0;var a7r=WGe(),AGl=Lue(),dGl=_ys(),pGl=bys();M0e.DEFAULT_FULCIO_URL="https://fulcio.sigstore.dev";var c7r=class{constructor(t){this.ca=new dGl.CAClient({...t,fulcioBaseURL:t.fulcioBaseURL||M0e.DEFAULT_FULCIO_URL}),this.identityProvider=t.identityProvider,this.keyHolder=t.keyHolder||new pGl.EphemeralSigner}async sign(t){let r=await this.getIdentityToken(),n;try{n=AGl.oidc.extractJWTSubject(r)}catch(A){throw new a7r.InternalError({code:"IDENTITY_TOKEN_PARSE_ERROR",message:`invalid identity token: ${r}`,cause:A})}let a=await this.keyHolder.sign(Buffer.from(n));if(a.key.$case!=="publicKey")throw new a7r.InternalError({code:"CA_CREATE_SIGNING_CERTIFICATE_ERROR",message:"unexpected format for signing key"});let o=await this.ca.createSigningCertificate(r,a.key.publicKey,a.signature);return{signature:(await this.keyHolder.sign(t)).signature,key:{$case:"x509Certificate",certificate:o[0]}}}async getIdentityToken(){try{return await this.identityProvider.getToken()}catch(t){throw new a7r.InternalError({code:"IDENTITY_TOKEN_READ_ERROR",message:"error retrieving identity token",cause:t})}}};M0e.FulcioSigner=c7r});var vys=H(bFe=>{"use strict";Object.defineProperty(bFe,"__esModule",{value:!0});bFe.FulcioSigner=bFe.DEFAULT_FULCIO_URL=void 0;var Sys=Eys();Object.defineProperty(bFe,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return Sys.DEFAULT_FULCIO_URL}});Object.defineProperty(bFe,"FulcioSigner",{enumerable:!0,get:function(){return Sys.FulcioSigner}})});var Tys=H(DLt=>{"use strict";Object.defineProperty(DLt,"__esModule",{value:!0});DLt.Rekor=void 0;var Bys=TLt(),l7r=class{constructor(t){this.options=t}async createEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries`,A=await(await(0,Bys.fetchWithRetry)(o,{headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).json();return wys(A)}async getEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries/${t}`,A=await(await(0,Bys.fetchWithRetry)(o,{method:"GET",headers:{Accept:"application/json"},timeout:n,retry:a})).json();return wys(A)}};DLt.Rekor=l7r;function wys(e){let t=Object.entries(e);if(t.length!=1)throw new Error("Received multiple entries in Rekor response");let[r,n]=t[0];return{...n,uuid:r}}});var Nys=H(kLt=>{"use strict";Object.defineProperty(kLt,"__esModule",{value:!0});kLt.TLogClient=void 0;var Rys=WGe(),fGl=NFt(),IGl=Tys(),u7r=class{constructor(t){this.fetchOnConflict=t.fetchOnConflict??!1,this.rekor=new IGl.Rekor({baseURL:t.rekorBaseURL,retry:t.retry,timeout:t.timeout})}async createEntry(t){let r;try{r=await this.rekor.createEntry(t)}catch(n){if(hGl(n)&&this.fetchOnConflict){let a=n.location.split("/").pop()||"";try{r=await this.rekor.getEntry(a)}catch(o){(0,Rys.internalError)(o,"TLOG_FETCH_ENTRY_ERROR","error fetching tlog entry")}}else(0,Rys.internalError)(n,"TLOG_CREATE_ENTRY_ERROR","error creating tlog entry")}return r}};kLt.TLogClient=u7r;function hGl(e){return e instanceof fGl.HTTPError&&e.statusCode===409&&e.location!==void 0}});var Dys=H(g7r=>{"use strict";Object.defineProperty(g7r,"__esModule",{value:!0});g7r.toProposedEntry=CGl;var mGl=v7e(),Uue=Lue(),wze="sha256";function CGl(e,t,r="dsse"){switch(e.$case){case"dsseEnvelope":return r==="intoto"?bGl(e.dsseEnvelope,t):yGl(e.dsseEnvelope,t);case"messageSignature":return _Gl(e.messageSignature,t)}}function _Gl(e,t){let r=e.messageDigest.digest.toString("hex"),n=e.signature.toString("base64"),a=Uue.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"hashedrekord",spec:{data:{hash:{algorithm:wze,value:r}},signature:{content:n,publicKey:{content:a}}}}}function yGl(e,t){let r=JSON.stringify((0,mGl.envelopeToJSON)(e)),n=Uue.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"dsse",spec:{proposedContent:{envelope:r,verifiers:[n]}}}}function bGl(e,t){let r=Uue.crypto.digest(wze,e.payload).toString("hex"),n=EGl(e,t),a=Uue.encoding.base64Encode(e.payload.toString("base64")),o=Uue.encoding.base64Encode(e.signatures[0].sig.toString("base64")),l=e.signatures[0].keyid,A=Uue.encoding.base64Encode(t),f={payloadType:e.payloadType,payload:a,signatures:[{sig:o,publicKey:A}]};return l.length>0&&(f.signatures[0].keyid=l),{apiVersion:"0.0.2",kind:"intoto",spec:{content:{envelope:f,hash:{algorithm:wze,value:n},payloadHash:{algorithm:wze,value:r}}}}}function EGl(e,t){let r={payloadType:e.payloadType,payload:e.payload.toString("base64"),signatures:[{sig:e.signatures[0].sig.toString("base64"),publicKey:t}]};return e.signatures[0].keyid.length>0&&(r.signatures[0].keyid=e.signatures[0].keyid),Uue.crypto.digest(wze,Uue.json.canonicalize(r)).toString("hex")}});var kys=H(H0e=>{"use strict";Object.defineProperty(H0e,"__esModule",{value:!0});H0e.RekorWitness=H0e.DEFAULT_REKOR_URL=void 0;var SGl=Lue(),vGl=Nys(),BGl=Dys();H0e.DEFAULT_REKOR_URL="https://rekor.sigstore.dev";var A7r=class{constructor(t){this.entryType=t.entryType,this.tlog=new vGl.TLogClient({...t,rekorBaseURL:t.rekorBaseURL||H0e.DEFAULT_REKOR_URL})}async testify(t,r){let n=(0,BGl.toProposedEntry)(t,r,this.entryType),a=await this.tlog.createEntry(n);return wGl(a)}};H0e.RekorWitness=A7r;function wGl(e){let t=Buffer.from(e.logID,"hex"),r=SGl.encoding.base64Decode(e.body),n=JSON.parse(r),a=e?.verification?.signedEntryTimestamp?TGl(e.verification.signedEntryTimestamp):void 0,o=e?.verification?.inclusionProof?RGl(e.verification.inclusionProof):void 0;return{tlogEntries:[{logIndex:e.logIndex.toString(),logId:{keyId:t},integratedTime:e.integratedTime.toString(),kindVersion:{kind:n.kind,version:n.apiVersion},inclusionPromise:a,inclusionProof:o,canonicalizedBody:Buffer.from(e.body,"base64")}]}}function TGl(e){return{signedEntryTimestamp:Buffer.from(e,"base64")}}function RGl(e){return{logIndex:e.logIndex.toString(),treeSize:e.treeSize.toString(),rootHash:Buffer.from(e.rootHash,"hex"),hashes:e.hashes.map(t=>Buffer.from(t,"hex")),checkpoint:{envelope:e.checkpoint}}}});var xys=H(xLt=>{"use strict";Object.defineProperty(xLt,"__esModule",{value:!0});xLt.TimestampAuthority=void 0;var NGl=TLt(),d7r=class{constructor(t){this.options=t}async createTimestamp(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/timestamp`;return(await(0,NGl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).buffer()}};xLt.TimestampAuthority=d7r});var Fys=H(GLt=>{"use strict";Object.defineProperty(GLt,"__esModule",{value:!0});GLt.TSAClient=void 0;var DGl=WGe(),kGl=xys(),xGl=Lue(),Gys="sha256",p7r=class{constructor(t){this.tsa=new kGl.TimestampAuthority({baseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async createTimestamp(t){let r={artifactHash:xGl.crypto.digest(Gys,t).toString("base64"),hashAlgorithm:Gys};try{return await this.tsa.createTimestamp(r)}catch(n){(0,DGl.internalError)(n,"TSA_CREATE_TIMESTAMP_ERROR","error creating timestamp")}}};GLt.TSAClient=p7r});var Zys=H(FLt=>{"use strict";Object.defineProperty(FLt,"__esModule",{value:!0});FLt.TSAWitness=void 0;var GGl=Fys(),f7r=class{constructor(t){this.tsa=new GGl.TSAClient({tsaBaseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async testify(t){let r=FGl(t);return{rfc3161Timestamps:[{signedTimestamp:await this.tsa.createTimestamp(r)}]}}};FLt.TSAWitness=f7r;function FGl(e){switch(e.$case){case"dsseEnvelope":return e.dsseEnvelope.signatures[0].sig;case"messageSignature":return e.messageSignature.signature}}});var Vys=H(Kue=>{"use strict";Object.defineProperty(Kue,"__esModule",{value:!0});Kue.TSAWitness=Kue.RekorWitness=Kue.DEFAULT_REKOR_URL=void 0;var Lys=kys();Object.defineProperty(Kue,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return Lys.DEFAULT_REKOR_URL}});Object.defineProperty(Kue,"RekorWitness",{enumerable:!0,get:function(){return Lys.RekorWitness}});var ZGl=Zys();Object.defineProperty(Kue,"TSAWitness",{enumerable:!0,get:function(){return ZGl.TSAWitness}})});var h7r=H(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.TSAWitness=BT.RekorWitness=BT.DEFAULT_REKOR_URL=BT.FulcioSigner=BT.DEFAULT_FULCIO_URL=BT.CIContextProvider=BT.InternalError=BT.MessageSignatureBundleBuilder=BT.DSSEBundleBuilder=void 0;var Pys=Qfs();Object.defineProperty(BT,"DSSEBundleBuilder",{enumerable:!0,get:function(){return Pys.DSSEBundleBuilder}});Object.defineProperty(BT,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return Pys.MessageSignatureBundleBuilder}});var LGl=WGe();Object.defineProperty(BT,"InternalError",{enumerable:!0,get:function(){return LGl.InternalError}});var VGl=Iys();Object.defineProperty(BT,"CIContextProvider",{enumerable:!0,get:function(){return VGl.CIContextProvider}});var Wys=vys();Object.defineProperty(BT,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return Wys.DEFAULT_FULCIO_URL}});Object.defineProperty(BT,"FulcioSigner",{enumerable:!0,get:function(){return Wys.FulcioSigner}});var I7r=Vys();Object.defineProperty(BT,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return I7r.DEFAULT_REKOR_URL}});Object.defineProperty(BT,"RekorWitness",{enumerable:!0,get:function(){return I7r.RekorWitness}});Object.defineProperty(BT,"TSAWitness",{enumerable:!0,get:function(){return I7r.TSAWitness}})});var Mys=H(Tze=>{"use strict";var Oys=Tze&&Tze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Tze,"__esModule",{value:!0});Tze.appDataPath=WGl;var PGl=Oys(wt("os")),EFe=Oys(wt("path"));function WGl(e){let t=PGl.default.homedir();switch(process.platform){case"darwin":{let r=EFe.default.join(t,"Library","Application Support");return EFe.default.join(r,e)}case"win32":{let r=process.env.LOCALAPPDATA||EFe.default.join(t,"AppData","Local");return EFe.default.join(r,e,"Data")}default:{let r=process.env.XDG_DATA_HOME||EFe.default.join(t,".local","share");return EFe.default.join(r,e)}}}});var O6=H(tP=>{"use strict";Object.defineProperty(tP,"__esModule",{value:!0});tP.UnsupportedAlgorithmError=tP.CryptoError=tP.LengthOrHashMismatchError=tP.UnsignedMetadataError=tP.RepositoryError=tP.ValueError=void 0;var m7r=class extends Error{};tP.ValueError=m7r;var Rze=class extends Error{};tP.RepositoryError=Rze;var C7r=class extends Rze{};tP.UnsignedMetadataError=C7r;var _7r=class extends Rze{};tP.LengthOrHashMismatchError=_7r;var ZLt=class extends Error{};tP.CryptoError=ZLt;var y7r=class extends ZLt{};tP.UnsupportedAlgorithmError=y7r});var Yys=H(jue=>{"use strict";Object.defineProperty(jue,"__esModule",{value:!0});jue.isDefined=OGl;jue.isObject=Hys;jue.isStringArray=MGl;jue.isObjectArray=HGl;jue.isStringRecord=YGl;jue.isObjectRecord=QGl;function OGl(e){return e!==void 0}function Hys(e){return typeof e=="object"&&e!==null}function MGl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function HGl(e){return Array.isArray(e)&&e.every(Hys)}function YGl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="string")}function QGl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="object"&&t!==null)}});var E7r=H((rcg,Jys)=>{var Qys=",",XGl=":",JGl="[",UGl="]",KGl="{",jGl="}";function b7r(e){let t=[];if(typeof e=="string")t.push(Xys(e));else if(typeof e=="boolean")t.push(JSON.stringify(e));else if(Number.isInteger(e))t.push(JSON.stringify(e));else if(e===null)t.push(JSON.stringify(e));else if(Array.isArray(e)){t.push(JGl);let r=!0;e.forEach(n=>{r||t.push(Qys),r=!1,t.push(b7r(n))}),t.push(UGl)}else if(typeof e=="object"){t.push(KGl);let r=!0;Object.keys(e).sort().forEach(n=>{r||t.push(Qys),r=!1,t.push(Xys(n)),t.push(XGl),t.push(b7r(e[n]))}),t.push(jGl)}else throw new TypeError("cannot encode "+e.toString());return t.join("")}function Xys(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'}Jys.exports={canonicalize:b7r}});var Uys=H(SFe=>{"use strict";var zGl=SFe&&SFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SFe,"__esModule",{value:!0});SFe.verifySignature=void 0;var qGl=E7r(),$Gl=zGl(wt("crypto")),eFl=(e,t,r)=>{let n=Buffer.from((0,qGl.canonicalize)(e));return $Gl.default.verify(void 0,n,t,Buffer.from(r,"hex"))};SFe.verifySignature=eFl});var iJ=H(KH=>{"use strict";var tFl=KH&&KH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rFl=KH&&KH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Kys=KH&&KH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tFl(t,e,r);return rFl(t,e),t};Object.defineProperty(KH,"__esModule",{value:!0});KH.crypto=KH.guard=void 0;KH.guard=Kys(Yys());KH.crypto=Kys(Uys())});var Y0e=H(dre=>{"use strict";var nFl=dre&&dre.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(dre,"__esModule",{value:!0});dre.Signed=dre.MetadataKind=void 0;dre.isMetadataKind=sFl;var iFl=nFl(wt("util")),Nze=O6(),S7r=iJ(),jys=["1","0","31"],v7r;(function(e){e.Root="root",e.Timestamp="timestamp",e.Snapshot="snapshot",e.Targets="targets"})(v7r||(dre.MetadataKind=v7r={}));function sFl(e){return typeof e=="string"&&Object.values(v7r).includes(e)}var B7r=class e{constructor(t){this.specVersion=t.specVersion||jys.join(".");let r=this.specVersion.split(".");if(!(r.length===2||r.length===3)||!r.every(n=>oFl(n)))throw new Nze.ValueError("Failed to parse specVersion");if(r[0]!=jys[0])throw new Nze.ValueError("Unsupported specVersion");this.expires=t.expires,this.version=t.version,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.specVersion===t.specVersion&&this.expires===t.expires&&this.version===t.version&&iFl.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}isExpired(t){return t||(t=new Date),t>=new Date(this.expires)}static commonFieldsFromJSON(t){let{spec_version:r,expires:n,version:a,...o}=t;if(S7r.guard.isDefined(r)){if(typeof r!="string")throw new TypeError("spec_version must be a string")}else throw new Nze.ValueError("spec_version is not defined");if(S7r.guard.isDefined(n)){if(typeof n!="string")throw new TypeError("expires must be a string")}else throw new Nze.ValueError("expires is not defined");if(S7r.guard.isDefined(a)){if(typeof a!="number")throw new TypeError("version must be a number")}else throw new Nze.ValueError("version is not defined");return{specVersion:r,expires:n,version:a,unrecognizedFields:o}}};dre.Signed=B7r;function oFl(e){return!isNaN(Number(e))}});var Dze=H(que=>{"use strict";var zys=que&&que.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(que,"__esModule",{value:!0});que.TargetFile=que.MetaFile=void 0;var qys=zys(wt("crypto")),VLt=zys(wt("util")),zue=O6(),LLt=iJ(),w7r=class e{constructor(t){if(t.version<=0)throw new zue.ValueError("Metafile version must be at least 1");t.length!==void 0&&$ys(t.length),this.version=t.version,this.length=t.length,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.version===t.version&&this.length===t.length&&VLt.default.isDeepStrictEqual(this.hashes,t.hashes)&&VLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}verify(t){if(this.length!==void 0&&t.length!==this.length)throw new zue.LengthOrHashMismatchError(`Expected length ${this.length} but got ${t.length}`);this.hashes&&Object.entries(this.hashes).forEach(([r,n])=>{let a;try{a=qys.default.createHash(r)}catch{throw new zue.LengthOrHashMismatchError(`Hash algorithm ${r} not supported`)}let o=a.update(t).digest("hex");if(o!==n)throw new zue.LengthOrHashMismatchError(`Expected hash ${n} but got ${o}`)})}toJSON(){let t={version:this.version,...this.unrecognizedFields};return this.length!==void 0&&(t.length=this.length),this.hashes&&(t.hashes=this.hashes),t}static fromJSON(t){let{version:r,length:n,hashes:a,...o}=t;if(typeof r!="number")throw new TypeError("version must be a number");if(LLt.guard.isDefined(n)&&typeof n!="number")throw new TypeError("length must be a number");if(LLt.guard.isDefined(a)&&!LLt.guard.isStringRecord(a))throw new TypeError("hashes must be string keys and values");return new e({version:r,length:n,hashes:a,unrecognizedFields:o})}};que.MetaFile=w7r;var T7r=class e{constructor(t){$ys(t.length),this.length=t.length,this.path=t.path,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}get custom(){let t=this.unrecognizedFields.custom;return!t||Array.isArray(t)||typeof t!="object"?{}:t}equals(t){return t instanceof e?this.length===t.length&&this.path===t.path&&VLt.default.isDeepStrictEqual(this.hashes,t.hashes)&&VLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}async verify(t){let r=0,n=Object.keys(this.hashes).reduce((a,o)=>{try{a[o]=qys.default.createHash(o)}catch{throw new zue.LengthOrHashMismatchError(`Hash algorithm ${o} not supported`)}return a},{});for await(let a of t)r+=a.length,Object.values(n).forEach(o=>{o.update(a)});if(r!==this.length)throw new zue.LengthOrHashMismatchError(`Expected length ${this.length} but got ${r}`);Object.entries(n).forEach(([a,o])=>{let l=this.hashes[a],A=o.digest("hex");if(A!==l)throw new zue.LengthOrHashMismatchError(`Expected hash ${l} but got ${A}`)})}toJSON(){return{length:this.length,hashes:this.hashes,...this.unrecognizedFields}}static fromJSON(t,r){let{length:n,hashes:a,...o}=r;if(typeof n!="number")throw new TypeError("length must be a number");if(!LLt.guard.isStringRecord(a))throw new TypeError("hashes must have string keys and values");return new e({length:n,path:t,hashes:a,unrecognizedFields:o})}};que.TargetFile=T7r;function $ys(e){if(e<0)throw new zue.ValueError("Length must be at least 0")}});var ebs=H(R7r=>{"use strict";Object.defineProperty(R7r,"__esModule",{value:!0});R7r.encodeOIDString=cFl;var aFl=6;function cFl(e){let t=e.split("."),r=parseInt(t[0],10)*40+parseInt(t[1],10),n=[];t.slice(2).forEach(o=>{let l=lFl(parseInt(o,10));n.push(...l)});let a=Buffer.from([r,...n]);return Buffer.from([aFl,a.length,...a])}function lFl(e){let t=[],r=0;for(;e>0;)t.unshift(e&127|r),e>>=7,r=128;return t}});var ibs=H(xze=>{"use strict";var uFl=xze&&xze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xze,"__esModule",{value:!0});xze.getPublicKey=pFl;var vFe=uFl(wt("crypto")),kze=O6(),N7r=ebs(),PLt=48,tbs=3,rbs=0,gFl="1.3.101.112",AFl="1.2.840.10045.2.1",dFl="1.2.840.10045.3.1.7",D7r="-----BEGIN PUBLIC KEY-----";function pFl(e){switch(e.keyType){case"rsa":return fFl(e);case"ed25519":return IFl(e);case"ecdsa":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":return hFl(e);default:throw new kze.UnsupportedAlgorithmError(`Unsupported key type: ${e.keyType}`)}}function fFl(e){if(!e.keyVal.startsWith(D7r))throw new kze.CryptoError("Invalid key format");let t=vFe.default.createPublicKey(e.keyVal);switch(e.scheme){case"rsassa-pss-sha256":return{key:t,padding:vFe.default.constants.RSA_PKCS1_PSS_PADDING};default:throw new kze.UnsupportedAlgorithmError(`Unsupported RSA scheme: ${e.scheme}`)}}function IFl(e){let t;if(e.keyVal.startsWith(D7r))t=vFe.default.createPublicKey(e.keyVal);else{if(!nbs(e.keyVal))throw new kze.CryptoError("Invalid key format");t=vFe.default.createPublicKey({key:mFl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}function hFl(e){let t;if(e.keyVal.startsWith(D7r))t=vFe.default.createPublicKey(e.keyVal);else{if(!nbs(e.keyVal))throw new kze.CryptoError("Invalid key format");t=vFe.default.createPublicKey({key:CFl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}var mFl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=(0,N7r.encodeOIDString)(gFl),n=Buffer.concat([Buffer.concat([Buffer.from([PLt]),Buffer.from([r.length]),r]),Buffer.concat([Buffer.from([tbs]),Buffer.from([t.length+1]),Buffer.from([rbs]),t])]);return Buffer.concat([Buffer.from([PLt]),Buffer.from([n.length]),n])}},CFl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=Buffer.concat([Buffer.from([tbs]),Buffer.from([t.length+1]),Buffer.from([rbs]),t]),n=Buffer.concat([(0,N7r.encodeOIDString)(AFl),(0,N7r.encodeOIDString)(dFl)]),a=Buffer.concat([Buffer.from([PLt]),Buffer.from([n.length]),n]);return Buffer.concat([Buffer.from([PLt]),Buffer.from([a.length+r.length]),a,r])}},nbs=e=>/^[0-9a-fA-F]+$/.test(e)});var WLt=H(BFe=>{"use strict";var _Fl=BFe&&BFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BFe,"__esModule",{value:!0});BFe.Key=void 0;var sbs=_Fl(wt("util")),Gze=O6(),obs=iJ(),yFl=ibs(),k7r=class e{constructor(t){let{keyID:r,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l}=t;this.keyID=r,this.keyType=n,this.scheme=a,this.keyVal=o,this.unrecognizedFields=l||{}}verifySignature(t){let r=t.signatures[this.keyID];if(!r)throw new Gze.UnsignedMetadataError("no signature for key found in metadata");if(!this.keyVal.public)throw new Gze.UnsignedMetadataError("no public key found");let n=(0,yFl.getPublicKey)({keyType:this.keyType,scheme:this.scheme,keyVal:this.keyVal.public}),a=t.signed.toJSON();try{if(!obs.crypto.verifySignature(a,n,r.sig))throw new Gze.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}catch(o){throw o instanceof Gze.UnsignedMetadataError?o:new Gze.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}}equals(t){return t instanceof e?this.keyID===t.keyID&&this.keyType===t.keyType&&this.scheme===t.scheme&&sbs.default.isDeepStrictEqual(this.keyVal,t.keyVal)&&sbs.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keytype:this.keyType,scheme:this.scheme,keyval:this.keyVal,...this.unrecognizedFields}}static fromJSON(t,r){let{keytype:n,scheme:a,keyval:o,...l}=r;if(typeof n!="string")throw new TypeError("keytype must be a string");if(typeof a!="string")throw new TypeError("scheme must be a string");if(!obs.guard.isStringRecord(o))throw new TypeError("keyval must be a string record");return new e({keyID:t,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l})}};BFe.Key=k7r});var pbs=H((ucg,dbs)=>{var abs=Fjr();dbs.exports=SFl;var cbs="\0SLASH"+Math.random()+"\0",lbs="\0OPEN"+Math.random()+"\0",G7r="\0CLOSE"+Math.random()+"\0",ubs="\0COMMA"+Math.random()+"\0",gbs="\0PERIOD"+Math.random()+"\0";function x7r(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function bFl(e){return e.split("\\\\").join(cbs).split("\\{").join(lbs).split("\\}").join(G7r).split("\\,").join(ubs).split("\\.").join(gbs)}function EFl(e){return e.split(cbs).join("\\").split(lbs).join("{").split(G7r).join("}").split(ubs).join(",").split(gbs).join(".")}function Abs(e){if(!e)return[""];var t=[],r=abs("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=Abs(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function SFl(e,t){if(!e)return[];t=t||{};var r=t.max==null?1/0:t.max;return e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),Fze(bFl(e),r,!0).map(EFl)}function vFl(e){return"{"+e+"}"}function BFl(e){return/^-?0\d/.test(e)}function wFl(e,t){return e<=t}function TFl(e,t){return e>=t}function Fze(e,t,r){var n=[],a=abs("{","}",e);if(!a)return[e];var o=a.pre,l=a.post.length?Fze(a.post,t,!1):[""];if(/\$$/.test(a.pre))for(var A=0;A=0;if(!b&&!E)return a.post.match(/,(?!,).*\}/)?(e=a.pre+"{"+a.body+G7r+a.post,Fze(e,t,!0)):[e];var N;if(b)N=a.body.split(/\.\./);else if(N=Abs(a.body),N.length===1&&(N=Fze(N[0],t,!1).map(vFl),N.length===1))return l.map(function(k){return a.pre+N[0]+k});var B;if(b){var F=x7r(N[0]),Q=x7r(N[1]),X=Math.max(N[0].length,N[1].length),ae=N.length==3?Math.max(Math.abs(x7r(N[2])),1):1,ne=wFl,ce=Q0){var Se=new Array(be+1).join("0");ue<0?de="-"+Se+de.slice(1):de=Se+de}}B.push(de)}}else{B=[];for(var De=0;De{"use strict";Object.defineProperty(OLt,"__esModule",{value:!0});OLt.assertValidPattern=void 0;var RFl=1024*64,NFl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>RFl)throw new TypeError("pattern is too long")};OLt.assertValidPattern=NFl});var hbs=H(MLt=>{"use strict";Object.defineProperty(MLt,"__esModule",{value:!0});MLt.parseClass=void 0;var DFl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Zze=e=>e.replace(/[[\]\\-]/g,"\\$&"),kFl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ibs=e=>e.join(""),xFl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(Zze(b)+"-"+Zze(F)):F===b&&n.push(Zze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(Zze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(Zze(F)),o++}if(C{"use strict";Object.defineProperty(HLt,"__esModule",{value:!0});HLt.unescape=void 0;var GFl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");HLt.unescape=GFl});var L7r=H(ULt=>{"use strict";var rP;Object.defineProperty(ULt,"__esModule",{value:!0});ULt.AST=void 0;var FFl=hbs(),QLt=YLt(),ZFl=new Set(["!","?","+","*","@"]),F7r=e=>ZFl.has(e),mbs=e=>F7r(e.type),LFl=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),VFl=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),PFl=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),Cbs=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),WFl="(?!(?:^|/)\\.\\.?(?:$|/))",XLt="(?!\\.)",OFl=new Set(["[","."]),MFl=new Set(["..","."]),HFl=new Set("().*{}+?[]^$\\!"),YFl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Z7r="[^/]",_bs=Z7r+"*?",ybs=Z7r+"+?",JLt=class{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,X]=typeof N=="string"?rP.#B(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||X,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&MFl.has(this.#r[0]))){let B=OFl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?WFl:Q?XLt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,QLt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#p(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString(),I=this;return I.#r=[f],I.type=null,I.#t=void 0,[f,(0,QLt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!XLt?"":this.#p(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?XLt:"")+ybs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?XLt:"")+_bs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,QLt.unescape)(o),this.#t=!!this.#t,this.#n]}#p(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#B(t,r,n=!1){let a=!1,o="",l=!1,A=!1;for(let f=0;f{"use strict";Object.defineProperty(KLt,"__esModule",{value:!0});KLt.escape=void 0;var QFl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");KLt.escape=QFl});var Tbs=H(xA=>{"use strict";var XFl=xA&&xA.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xA,"__esModule",{value:!0});xA.unescape=xA.escape=xA.AST=xA.Minimatch=xA.match=xA.makeRe=xA.braceExpand=xA.defaults=xA.filter=xA.GLOBSTAR=xA.sep=xA.minimatch=void 0;var JFl=XFl(pbs()),jLt=fbs(),Sbs=L7r(),UFl=V7r(),KFl=YLt(),jFl=(e,t,r={})=>((0,jLt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new Q0e(t,r).match(e));xA.minimatch=jFl;var zFl=/^\*+([^+@!?\*\[\(]*)$/,qFl=e=>t=>!t.startsWith(".")&&t.endsWith(e),$Fl=e=>t=>t.endsWith(e),eZl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),tZl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),rZl=/^\*+\.\*+$/,nZl=e=>!e.startsWith(".")&&e.includes("."),iZl=e=>e!=="."&&e!==".."&&e.includes("."),sZl=/^\.\*+$/,oZl=e=>e!=="."&&e!==".."&&e.startsWith("."),aZl=/^\*+$/,cZl=e=>e.length!==0&&!e.startsWith("."),lZl=e=>e.length!==0&&e!=="."&&e!=="..",uZl=/^\?+([^+@!?\*\[\(]*)?$/,gZl=([e,t=""])=>{let r=vbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},AZl=([e,t=""])=>{let r=Bbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},dZl=([e,t=""])=>{let r=Bbs([e]);return t?n=>r(n)&&n.endsWith(t):r},pZl=([e,t=""])=>{let r=vbs([e]);return t?n=>r(n)&&n.endsWith(t):r},vbs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},Bbs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},wbs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",bbs={win32:{sep:"\\"},posix:{sep:"/"}};xA.sep=wbs==="win32"?bbs.win32.sep:bbs.posix.sep;xA.minimatch.sep=xA.sep;xA.GLOBSTAR=Symbol("globstar **");xA.minimatch.GLOBSTAR=xA.GLOBSTAR;var fZl="[^/]",IZl=fZl+"*?",hZl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",mZl="(?:(?!(?:\\/|^)\\.).)*?",CZl=(e,t={})=>r=>(0,xA.minimatch)(r,e,t);xA.filter=CZl;xA.minimatch.filter=xA.filter;var jH=(e,t={})=>Object.assign({},e,t),_Zl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return xA.minimatch;let t=xA.minimatch;return Object.assign((n,a,o={})=>t(n,a,jH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,jH(e,o))}static defaults(a){return t.defaults(jH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,jH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,jH(e,o))}},unescape:(n,a={})=>t.unescape(n,jH(e,a)),escape:(n,a={})=>t.escape(n,jH(e,a)),filter:(n,a={})=>t.filter(n,jH(e,a)),defaults:n=>t.defaults(jH(e,n)),makeRe:(n,a={})=>t.makeRe(n,jH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,jH(e,a)),match:(n,a,o={})=>t.match(n,a,jH(e,o)),sep:t.sep,GLOBSTAR:xA.GLOBSTAR})};xA.defaults=_Zl;xA.minimatch.defaults=xA.defaults;var yZl=(e,t={})=>((0,jLt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,JFl.default)(e));xA.braceExpand=yZl;xA.minimatch.braceExpand=xA.braceExpand;var bZl=(e,t={})=>new Q0e(e,t).makeRe();xA.makeRe=bZl;xA.minimatch.makeRe=xA.makeRe;var EZl=(e,t,r={})=>{let n=new Q0e(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};xA.match=EZl;xA.minimatch.match=xA.match;var Ebs=/[?*]|[+@!]\(.*?\)|\[|\]/,SZl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Q0e=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(t,r={}){(0,jLt.assertValidPattern)(t),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=t,this.platform=r.platform||wbs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!Ebs.test(o[2]))&&!Ebs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;a=2&&(t=this.levelTwoFileOptimize(t)),r.includes(xA.GLOBSTAR)?this.#e(t,r,n,a,o):this.#n(t,r,n,a,o)}#e(t,r,n,a,o){let l=r.indexOf(xA.GLOBSTAR,o),A=r.lastIndexOf(xA.GLOBSTAR),[f,I,C]=n?[r.slice(o,l),r.slice(l+1),[]]:[r.slice(o,l),r.slice(l+1,A),r.slice(A+1)];if(f.length){let ae=t.slice(a,a+f.length);if(!this.#n(ae,f,n,0,0))return!1;a+=f.length}let b=0;if(C.length){if(C.length+a>t.length)return!1;let ae=t.length-C.length;if(this.#n(t,C,n,ae,0))b=C.length;else{if(t[t.length-1]!==""||a+C.length===t.length||(ae--,!this.#n(t,C,n,ae,0)))return!1;b=C.length+1}}if(!I.length){let ae=!!b;for(let ne=a;ne{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?SZl(C):C===xA.GLOBSTAR?xA.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==xA.GLOBSTAR||N===xA.GLOBSTAR||(N===void 0?E!==void 0&&E!==xA.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==xA.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=xA.GLOBSTAR))}),I.filter(C=>C!==xA.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var Rbs=zH&&zH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zH,"__esModule",{value:!0});zH.SuccinctRoles=zH.DelegatedRole=zH.Role=zH.TOP_LEVEL_ROLE_NAMES=void 0;var Nbs=Rbs(wt("crypto")),TZl=Tbs(),zLt=Rbs(wt("util")),qLt=O6(),X0e=iJ();zH.TOP_LEVEL_ROLE_NAMES=["root","targets","snapshot","timestamp"];var Lze=class e{constructor(t){let{keyIDs:r,threshold:n,unrecognizedFields:a}=t;if(RZl(r))throw new qLt.ValueError("duplicate key IDs found");if(n<1)throw new qLt.ValueError("threshold must be at least 1");this.keyIDs=r,this.threshold=n,this.unrecognizedFields=a||{}}equals(t){return t instanceof e?this.threshold===t.threshold&&zLt.default.isDeepStrictEqual(this.keyIDs,t.keyIDs)&&zLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keyids:this.keyIDs,threshold:this.threshold,...this.unrecognizedFields}}static fromJSON(t){let{keyids:r,threshold:n,...a}=t;if(!X0e.guard.isStringArray(r))throw new TypeError("keyids must be an array");if(typeof n!="number")throw new TypeError("threshold must be a number");return new e({keyIDs:r,threshold:n,unrecognizedFields:a})}};zH.Role=Lze;function RZl(e){return new Set(e).size!==e.length}var P7r=class e extends Lze{constructor(t){super(t);let{name:r,terminating:n,paths:a,pathHashPrefixes:o}=t;if(this.name=r,this.terminating=n,t.paths&&t.pathHashPrefixes)throw new qLt.ValueError("paths and pathHashPrefixes are mutually exclusive");this.paths=a,this.pathHashPrefixes=o}equals(t){return t instanceof e?super.equals(t)&&this.name===t.name&&this.terminating===t.terminating&&zLt.default.isDeepStrictEqual(this.paths,t.paths)&&zLt.default.isDeepStrictEqual(this.pathHashPrefixes,t.pathHashPrefixes):!1}isDelegatedPath(t){if(this.paths)return this.paths.some(r=>DZl(t,r));if(this.pathHashPrefixes){let n=Nbs.default.createHash("sha256").update(t).digest("hex");return this.pathHashPrefixes.some(a=>n.startsWith(a))}return!1}toJSON(){let t={...super.toJSON(),name:this.name,terminating:this.terminating};return this.paths&&(t.paths=this.paths),this.pathHashPrefixes&&(t.path_hash_prefixes=this.pathHashPrefixes),t}static fromJSON(t){let{keyids:r,threshold:n,name:a,terminating:o,paths:l,path_hash_prefixes:A,...f}=t;if(!X0e.guard.isStringArray(r))throw new TypeError("keyids must be an array of strings");if(typeof n!="number")throw new TypeError("threshold must be a number");if(typeof a!="string")throw new TypeError("name must be a string");if(typeof o!="boolean")throw new TypeError("terminating must be a boolean");if(X0e.guard.isDefined(l)&&!X0e.guard.isStringArray(l))throw new TypeError("paths must be an array of strings");if(X0e.guard.isDefined(A)&&!X0e.guard.isStringArray(A))throw new TypeError("path_hash_prefixes must be an array of strings");return new e({keyIDs:r,threshold:n,name:a,terminating:o,paths:l,pathHashPrefixes:A,unrecognizedFields:f})}};zH.DelegatedRole=P7r;var NZl=(e,t)=>e.map((r,n)=>[r,t[n]]);function DZl(e,t){let r=e.split("/"),n=t.split("/");return n.length!=r.length?!1:NZl(r,n).every(([a,o])=>(0,TZl.minimatch)(a,o))}var W7r=class e extends Lze{constructor(t){super(t);let{bitLength:r,namePrefix:n}=t;if(r<=0||r>32)throw new qLt.ValueError("bitLength must be between 1 and 32");this.bitLength=r,this.namePrefix=n,this.numberOfBins=Math.pow(2,r),this.suffixLen=(this.numberOfBins-1).toString(16).length}equals(t){return t instanceof e?super.equals(t)&&this.bitLength===t.bitLength&&this.namePrefix===t.namePrefix:!1}getRoleForTarget(t){let a=Nbs.default.createHash("sha256").update(t).digest().subarray(0,4),o=32-this.bitLength,A=(a.readUInt32BE()>>>o).toString(16).padStart(this.suffixLen,"0");return`${this.namePrefix}-${A}`}*getRoles(){for(let t=0;t{"use strict";var kZl=wFe&&wFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wFe,"__esModule",{value:!0});wFe.Root=void 0;var Dbs=kZl(wt("util")),M7r=Y0e(),kbs=O6(),xZl=WLt(),$Lt=O7r(),e9t=iJ(),H7r=class e extends M7r.Signed{constructor(t){if(super(t),this.type=M7r.MetadataKind.Root,this.keys=t.keys||{},this.consistentSnapshot=t.consistentSnapshot??!0,!t.roles)this.roles=$Lt.TOP_LEVEL_ROLE_NAMES.reduce((r,n)=>({...r,[n]:new $Lt.Role({keyIDs:[],threshold:1})}),{});else{let r=new Set(Object.keys(t.roles));if(!$Lt.TOP_LEVEL_ROLE_NAMES.every(n=>r.has(n)))throw new kbs.ValueError("missing top-level role");this.roles=t.roles}}addKey(t,r){if(!this.roles[r])throw new kbs.ValueError(`role ${r} does not exist`);this.roles[r].keyIDs.includes(t.keyID)||this.roles[r].keyIDs.push(t.keyID),this.keys[t.keyID]=t}equals(t){return t instanceof e?super.equals(t)&&this.consistentSnapshot===t.consistentSnapshot&&Dbs.default.isDeepStrictEqual(this.keys,t.keys)&&Dbs.default.isDeepStrictEqual(this.roles,t.roles):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,keys:GZl(this.keys),roles:FZl(this.roles),consistent_snapshot:this.consistentSnapshot,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=M7r.Signed.commonFieldsFromJSON(t),{keys:a,roles:o,consistent_snapshot:l,...A}=r;if(typeof l!="boolean")throw new TypeError("consistent_snapshot must be a boolean");return new e({...n,keys:ZZl(a),roles:LZl(o),consistentSnapshot:l,unrecognizedFields:A})}};wFe.Root=H7r;function GZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function FZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function ZZl(e){let t;if(e9t.guard.isDefined(e)){if(!e9t.guard.isObjectRecord(e))throw new TypeError("keys must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:xZl.Key.fromJSON(n,a)}),{})}return t}function LZl(e){let t;if(e9t.guard.isDefined(e)){if(!e9t.guard.isObjectRecord(e))throw new TypeError("roles must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:$Lt.Role.fromJSON(a)}),{})}return t}});var X7r=H(t9t=>{"use strict";Object.defineProperty(t9t,"__esModule",{value:!0});t9t.Signature=void 0;var Q7r=class e{constructor(t){let{keyID:r,sig:n}=t;this.keyID=r,this.sig=n}toJSON(){return{keyid:this.keyID,sig:this.sig}}static fromJSON(t){let{keyid:r,sig:n}=t;if(typeof r!="string")throw new TypeError("keyid must be a string");if(typeof n!="string")throw new TypeError("sig must be a string");return new e({keyID:r,sig:n})}};t9t.Signature=Q7r});var K7r=H(TFe=>{"use strict";var VZl=TFe&&TFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TFe,"__esModule",{value:!0});TFe.Snapshot=void 0;var PZl=VZl(wt("util")),J7r=Y0e(),Gbs=Dze(),xbs=iJ(),U7r=class e extends J7r.Signed{constructor(t){super(t),this.type=J7r.MetadataKind.Snapshot,this.meta=t.meta||{"targets.json":new Gbs.MetaFile({version:1})}}equals(t){return t instanceof e?super.equals(t)&&PZl.default.isDeepStrictEqual(this.meta,t.meta):!1}toJSON(){return{_type:this.type,meta:WZl(this.meta),spec_version:this.specVersion,version:this.version,expires:this.expires,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=J7r.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,meta:OZl(a),unrecognizedFields:o})}};TFe.Snapshot=U7r;function WZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function OZl(e){let t;if(xbs.guard.isDefined(e))if(xbs.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:Gbs.MetaFile.fromJSON(a)}),{});else throw new TypeError("meta field is malformed");return t}});var Fbs=H(RFe=>{"use strict";var MZl=RFe&&RFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RFe,"__esModule",{value:!0});RFe.Delegations=void 0;var r9t=MZl(wt("util")),HZl=O6(),YZl=WLt(),j7r=O7r(),n9t=iJ(),z7r=class e{constructor(t){if(this.keys=t.keys,this.unrecognizedFields=t.unrecognizedFields||{},t.roles&&Object.keys(t.roles).some(r=>j7r.TOP_LEVEL_ROLE_NAMES.includes(r)))throw new HZl.ValueError("Delegated role name conflicts with top-level role name");this.succinctRoles=t.succinctRoles,this.roles=t.roles}equals(t){return t instanceof e?r9t.default.isDeepStrictEqual(this.keys,t.keys)&&r9t.default.isDeepStrictEqual(this.roles,t.roles)&&r9t.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields)&&r9t.default.isDeepStrictEqual(this.succinctRoles,t.succinctRoles):!1}*rolesForTarget(t){if(this.roles)for(let r of Object.values(this.roles))r.isDelegatedPath(t)&&(yield{role:r.name,terminating:r.terminating});else this.succinctRoles&&(yield{role:this.succinctRoles.getRoleForTarget(t),terminating:!0})}toJSON(){let t={keys:QZl(this.keys),...this.unrecognizedFields};return this.roles?t.roles=XZl(this.roles):this.succinctRoles&&(t.succinct_roles=this.succinctRoles.toJSON()),t}static fromJSON(t){let{keys:r,roles:n,succinct_roles:a,...o}=t,l;return n9t.guard.isObject(a)&&(l=j7r.SuccinctRoles.fromJSON(a)),new e({keys:JZl(r),roles:UZl(n),unrecognizedFields:o,succinctRoles:l})}};RFe.Delegations=z7r;function QZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function XZl(e){return Object.values(e).map(t=>t.toJSON())}function JZl(e){if(!n9t.guard.isObjectRecord(e))throw new TypeError("keys is malformed");return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:YZl.Key.fromJSON(r,n)}),{})}function UZl(e){let t;if(n9t.guard.isDefined(e)){if(!n9t.guard.isObjectArray(e))throw new TypeError("roles is malformed");t=e.reduce((r,n)=>{let a=j7r.DelegatedRole.fromJSON(n);return{...r,[a.name]:a}},{})}return t}});var ezr=H(NFe=>{"use strict";var KZl=NFe&&NFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NFe,"__esModule",{value:!0});NFe.Targets=void 0;var Zbs=KZl(wt("util")),q7r=Y0e(),jZl=Fbs(),zZl=Dze(),i9t=iJ(),$7r=class e extends q7r.Signed{constructor(t){super(t),this.type=q7r.MetadataKind.Targets,this.targets=t.targets||{},this.delegations=t.delegations}addTarget(t){this.targets[t.path]=t}equals(t){return t instanceof e?super.equals(t)&&Zbs.default.isDeepStrictEqual(this.targets,t.targets)&&Zbs.default.isDeepStrictEqual(this.delegations,t.delegations):!1}toJSON(){let t={_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,targets:qZl(this.targets),...this.unrecognizedFields};return this.delegations&&(t.delegations=this.delegations.toJSON()),t}static fromJSON(t){let{unrecognizedFields:r,...n}=q7r.Signed.commonFieldsFromJSON(t),{targets:a,delegations:o,...l}=r;return new e({...n,targets:$Zl(a),delegations:eLl(o),unrecognizedFields:l})}};NFe.Targets=$7r;function qZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function $Zl(e){let t;if(i9t.guard.isDefined(e))if(i9t.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:zZl.TargetFile.fromJSON(n,a)}),{});else throw new TypeError("targets must be an object");return t}function eLl(e){let t;if(i9t.guard.isDefined(e))if(i9t.guard.isObject(e))t=jZl.Delegations.fromJSON(e);else throw new TypeError("delegations must be an object");return t}});var izr=H(s9t=>{"use strict";Object.defineProperty(s9t,"__esModule",{value:!0});s9t.Timestamp=void 0;var tzr=Y0e(),Lbs=Dze(),rzr=iJ(),nzr=class e extends tzr.Signed{constructor(t){super(t),this.type=tzr.MetadataKind.Timestamp,this.snapshotMeta=t.snapshotMeta||new Lbs.MetaFile({version:1})}equals(t){return t instanceof e?super.equals(t)&&this.snapshotMeta.equals(t.snapshotMeta):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,meta:{"snapshot.json":this.snapshotMeta.toJSON()},...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=tzr.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,snapshotMeta:tLl(a),unrecognizedFields:o})}};s9t.Timestamp=nzr;function tLl(e){let t;if(rzr.guard.isDefined(e)){let r=e["snapshot.json"];if(!rzr.guard.isDefined(r)||!rzr.guard.isObject(r))throw new TypeError("missing snapshot.json in meta");t=Lbs.MetaFile.fromJSON(r)}return t}});var Pbs=H(kFe=>{"use strict";var rLl=kFe&&kFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kFe,"__esModule",{value:!0});kFe.Metadata=void 0;var nLl=E7r(),Vbs=rLl(wt("util")),DFe=Y0e(),Vze=O6(),iLl=Y7r(),sLl=X7r(),oLl=K7r(),aLl=ezr(),cLl=izr(),szr=iJ(),ozr=class e{constructor(t,r,n){this.signed=t,this.signatures=r||{},this.unrecognizedFields=n||{}}sign(t,r=!0){let n=Buffer.from((0,nLl.canonicalize)(this.signed.toJSON())),a=t(n);r||(this.signatures={}),this.signatures[a.keyID]=a}verifyDelegate(t,r){let n,a={};switch(this.signed.type){case DFe.MetadataKind.Root:a=this.signed.keys,n=this.signed.roles[t];break;case DFe.MetadataKind.Targets:if(!this.signed.delegations)throw new Vze.ValueError(`No delegations found for ${t}`);a=this.signed.delegations.keys,this.signed.delegations.roles?n=this.signed.delegations.roles[t]:this.signed.delegations.succinctRoles&&this.signed.delegations.succinctRoles.isDelegatedRole(t)&&(n=this.signed.delegations.succinctRoles);break;default:throw new TypeError("invalid metadata type")}if(!n)throw new Vze.ValueError(`no delegation found for ${t}`);let o=new Set;if(n.keyIDs.forEach(l=>{let A=a[l];if(A)try{A.verifySignature(r),o.add(A.keyID)}catch{}}),o.sizer.toJSON()),signed:this.signed.toJSON(),...this.unrecognizedFields}}static fromJSON(t,r){let{signed:n,signatures:a,...o}=r;if(!szr.guard.isDefined(n)||!szr.guard.isObject(n))throw new TypeError("signed is not defined");if(t!==n._type)throw new Vze.ValueError(`expected '${t}', got ${n._type}`);if(!szr.guard.isObjectArray(a))throw new TypeError("signatures is not an array");let l;switch(t){case DFe.MetadataKind.Root:l=iLl.Root.fromJSON(n);break;case DFe.MetadataKind.Timestamp:l=cLl.Timestamp.fromJSON(n);break;case DFe.MetadataKind.Snapshot:l=oLl.Snapshot.fromJSON(n);break;case DFe.MetadataKind.Targets:l=aLl.Targets.fromJSON(n);break;default:throw new TypeError("invalid metadata type")}let A={};return a.forEach(f=>{let I=sLl.Signature.fromJSON(f);if(A[I.keyID])throw new Vze.ValueError(`multiple signatures found for keyid: ${I.keyID}`);A[I.keyID]=I}),new e(l,A,o)}};kFe.Metadata=ozr});var o9t=H(W2=>{"use strict";Object.defineProperty(W2,"__esModule",{value:!0});W2.Timestamp=W2.Targets=W2.Snapshot=W2.Signature=W2.Root=W2.Metadata=W2.Key=W2.TargetFile=W2.MetaFile=W2.ValueError=W2.MetadataKind=void 0;var lLl=Y0e();Object.defineProperty(W2,"MetadataKind",{enumerable:!0,get:function(){return lLl.MetadataKind}});var uLl=O6();Object.defineProperty(W2,"ValueError",{enumerable:!0,get:function(){return uLl.ValueError}});var Wbs=Dze();Object.defineProperty(W2,"MetaFile",{enumerable:!0,get:function(){return Wbs.MetaFile}});Object.defineProperty(W2,"TargetFile",{enumerable:!0,get:function(){return Wbs.TargetFile}});var gLl=WLt();Object.defineProperty(W2,"Key",{enumerable:!0,get:function(){return gLl.Key}});var ALl=Pbs();Object.defineProperty(W2,"Metadata",{enumerable:!0,get:function(){return ALl.Metadata}});var dLl=Y7r();Object.defineProperty(W2,"Root",{enumerable:!0,get:function(){return dLl.Root}});var pLl=X7r();Object.defineProperty(W2,"Signature",{enumerable:!0,get:function(){return pLl.Signature}});var fLl=K7r();Object.defineProperty(W2,"Snapshot",{enumerable:!0,get:function(){return fLl.Snapshot}});var ILl=ezr();Object.defineProperty(W2,"Targets",{enumerable:!0,get:function(){return ILl.Targets}});var hLl=izr();Object.defineProperty(W2,"Timestamp",{enumerable:!0,get:function(){return hLl.Timestamp}})});var azr=H((Tcg,Obs)=>{function mLl(e){r.debug=r,r.default=r,r.coerce=f,r.disable=l,r.enable=a,r.enabled=A,r.humanize=j2r(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b=(typeof C=="string"?C:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let E of b)E[0]==="-"?r.skips.push(E.slice(1)):r.names.push(E)}function o(C,b){let E=0,N=0,B=-1,F=0;for(;E"-"+b)].join(",");return r.enable(""),C}function A(C){for(let b of r.skips)if(o(C,b))return!1;for(let b of r.names)if(o(C,b))return!0;return!1}function f(C){return C instanceof Error?C.stack||C.message:C}function I(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Obs.exports=mLl});var Mbs=H((nP,a9t)=>{nP.formatArgs=_Ll;nP.save=yLl;nP.load=bLl;nP.useColors=CLl;nP.storage=ELl();nP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();nP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function CLl(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function _Ll(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+a9t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}nP.log=console.debug||console.log||(()=>{});function yLl(e){try{e?nP.storage.setItem("debug",e):nP.storage.removeItem("debug")}catch{}}function bLl(){let e;try{e=nP.storage.getItem("debug")||nP.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function ELl(){try{return localStorage}catch{}}a9t.exports=azr()(nP);var{formatters:SLl}=a9t.exports;SLl.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Ybs=H((wD,l9t)=>{var vLl=wt("tty"),c9t=wt("util");wD.init=kLl;wD.log=RLl;wD.formatArgs=wLl;wD.save=NLl;wD.load=DLl;wD.useColors=BLl;wD.destroy=c9t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");wD.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(wD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}wD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function BLl(){return"colors"in wD.inspectOpts?!!wD.inspectOpts.colors:vLl.isatty(process.stderr.fd)}function wLl(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+s9t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=ZZl()+t+" "+e[0]}function ZZl(){return wD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function LZl(...e){return process.stderr.write(i9t.formatWithOptions(wD.inspectOpts,...e)+` -`)}function VZl(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function PZl(){return process.env.DEBUG}function WZl(e){e.inspectOpts={};let t=Object.keys(wD.inspectOpts);for(let r=0;rt.trim()).join(" ")};wbs.O=function(e){return this.inspectOpts.colors=this.useColors,i9t.inspect(e,this.inspectOpts)}});var rzr=H((Cag,tzr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?tzr.exports=Bbs():tzr.exports=Tbs()});var a9t=H(nB=>{"use strict";Object.defineProperty(nB,"__esModule",{value:!0});nB.DownloadHTTPError=nB.DownloadLengthMismatchError=nB.DownloadError=nB.ExpiredMetadataError=nB.EqualVersionError=nB.BadVersionError=nB.RepositoryError=nB.PersistError=nB.RuntimeError=nB.ValueError=void 0;var nzr=class extends Error{};nB.ValueError=nzr;var izr=class extends Error{};nB.RuntimeError=izr;var szr=class extends Error{};nB.PersistError=szr;var Lze=class extends Error{};nB.RepositoryError=Lze;var o9t=class extends Lze{};nB.BadVersionError=o9t;var ozr=class extends o9t{};nB.EqualVersionError=ozr;var azr=class extends Lze{};nB.ExpiredMetadataError=azr;var Vze=class extends Error{};nB.DownloadError=Vze;var czr=class extends Vze{};nB.DownloadLengthMismatchError=czr;var lzr=class extends Vze{statusCode;constructor(t,r){super(t),this.statusCode=r}};nB.DownloadHTTPError=lzr});var Nbs=H(DFe=>{"use strict";var gzr=DFe&&DFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DFe,"__esModule",{value:!0});DFe.withTempFile=void 0;var uzr=gzr(wt("fs/promises")),OZl=gzr(wt("os")),Rbs=gzr(wt("path")),MZl=async e=>HZl(async t=>e(Rbs.default.join(t,"tempfile")));DFe.withTempFile=MZl;var HZl=async e=>{let t=await uzr.default.realpath(OZl.default.tmpdir()),r=await uzr.default.mkdtemp(t+Rbs.default.sep);try{return await e(r)}finally{await uzr.default.rm(r,{force:!0,recursive:!0,maxRetries:3})}}});var dzr=H(que=>{"use strict";var l9t=que&&que.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(que,"__esModule",{value:!0});que.DefaultFetcher=que.BaseFetcher=void 0;var YZl=l9t(rzr()),Dbs=l9t(wt("fs")),QZl=l9t(bLt()),XZl=l9t(wt("util")),kbs=a9t(),JZl=Nbs(),UZl=(0,YZl.default)("tuf:fetch"),c9t=class{async downloadFile(t,r,n){return(0,JZl.withTempFile)(async a=>{let o=await this.fetch(t),l=0,A=Dbs.default.createWriteStream(a);try{for await(let f of o){if(l+=f.length,l>r)throw new kbs.DownloadLengthMismatchError("Max length reached");await KZl(A,f)}}finally{await XZl.default.promisify(A.close).bind(A)()}return n(a)})}async downloadBytes(t,r){return this.downloadFile(t,r,async n=>{let a=Dbs.default.createReadStream(n),o=[];for await(let l of a)o.push(l);return Buffer.concat(o)})}};que.BaseFetcher=c9t;var Azr=class extends c9t{timeout;retry;constructor(t={}){super(),this.timeout=t.timeout,this.retry=t.retry}async fetch(t){UZl("GET %s",t);let r=await(0,QZl.default)(t,{timeout:this.timeout,retry:this.retry});if(!r.ok||!r?.body)throw new kbs.DownloadHTTPError("Failed to download",r.status);return r.body}};que.DefaultFetcher=Azr;var KZl=async(e,t)=>new Promise((r,n)=>{e.write(t,a=>{a&&n(a),r(!0)})})});var xbs=H(u9t=>{"use strict";Object.defineProperty(u9t,"__esModule",{value:!0});u9t.defaultConfig=void 0;u9t.defaultConfig={maxRootRotations:256,maxDelegations:32,rootMaxLength:512e3,timestampMaxLength:16384,snapshotMaxLength:2e6,targetsMaxLength:5e6,prefixTargetsWithHash:!0,fetchTimeout:1e5,fetchRetries:void 0,fetchRetry:2}});var Gbs=H(g9t=>{"use strict";Object.defineProperty(g9t,"__esModule",{value:!0});g9t.TrustedMetadataStore=void 0;var wT=r9t(),OS=a9t(),pzr=class{trustedSet={};referenceTime;constructor(t){this.referenceTime=new Date,this.loadTrustedRoot(t)}get root(){if(!this.trustedSet.root)throw new ReferenceError("No trusted root metadata");return this.trustedSet.root}get timestamp(){return this.trustedSet.timestamp}get snapshot(){return this.trustedSet.snapshot}get targets(){return this.trustedSet.targets}getRole(t){return this.trustedSet[t]}updateRoot(t){let r=JSON.parse(t.toString("utf8")),n=wT.Metadata.fromJSON(wT.MetadataKind.Root,r);if(n.signed.type!=wT.MetadataKind.Root)throw new OS.RepositoryError(`Expected 'root', got ${n.signed.type}`);if(this.root.verifyDelegate(wT.MetadataKind.Root,n),n.signed.version!=this.root.signed.version+1)throw new OS.BadVersionError(`Expected version ${this.root.signed.version+1}, got ${n.signed.version}`);return n.verifyDelegate(wT.MetadataKind.Root,n),this.trustedSet.root=n,n}updateTimestamp(t){if(this.snapshot)throw new OS.RuntimeError("Cannot update timestamp after snapshot");if(this.root.signed.isExpired(this.referenceTime))throw new OS.ExpiredMetadataError("Final root.json is expired");let r=JSON.parse(t.toString("utf8")),n=wT.Metadata.fromJSON(wT.MetadataKind.Timestamp,r);if(n.signed.type!=wT.MetadataKind.Timestamp)throw new OS.RepositoryError(`Expected 'timestamp', got ${n.signed.type}`);if(this.root.verifyDelegate(wT.MetadataKind.Timestamp,n),this.timestamp){if(n.signed.version{let f=o.signed.meta[l];if(!f)throw new OS.RepositoryError(`Missing file ${l} in new snapshot`);if(f.version{"use strict";Object.defineProperty(fzr,"__esModule",{value:!0});fzr.join=zZl;var jZl=wt("url");function zZl(e,t){return new jZl.URL(qZl(e)+$Zl(t)).toString()}function qZl(e){return e.endsWith("/")?e:e+"/"}function $Zl(e){return e.startsWith("/")?e.slice(1):e}});var Zbs=H(qH=>{"use strict";var eLl=qH&&qH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tLl=qH&&qH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mzr=qH&&qH.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{await t.verify(kFe.createReadStream(f)),Izr("WRITE %s",a),kFe.copyFileSync(f,a)}),a}async findCachedTarget(t,r){r||(r=this.generateTargetPath(t));try{if(kFe.existsSync(r))return await t.verify(kFe.createReadStream(r)),r}catch{return}}loadLocalMetadata(t){let r=A9t.join(this.dir,`${t}.json`);return Izr("READ %s",r),kFe.readFileSync(r)}async loadRoot(){let r=this.trustedSet.root.signed.version+1,n=r+this.config.maxRootRotations;for(let a=r;a0;){let{roleName:a,parentRoleName:o}=r.pop();if(n.has(a))continue;let l=(await this.loadTargets(a,o))?.signed;if(!l)continue;let A=l.targets?.[t];if(A)return A;if(n.add(a),l.delegations){let f=[],I=l.delegations.rolesForTarget(t);for(let{role:C,terminating:b}of I)if(f.push({roleName:C,parentRoleName:a}),b){r.splice(0);break}f.reverse(),r.push(...f)}}}generateTargetPath(t){if(!this.targetDir)throw new X0e.ValueError("Target directory not set");let r=encodeURIComponent(t.path);return A9t.join(this.targetDir,r)}persistMetadata(t,r){let n=encodeURIComponent(t);try{let a=A9t.join(this.dir,`${n}.json`);Izr("WRITE %s",a),kFe.writeFileSync(a,r.toString("utf8"))}catch(a){throw new X0e.PersistError(`Failed to persist metadata ${n} error: ${a}`)}}};qH.Updater=hzr});var Lbs=H($ue=>{"use strict";Object.defineProperty($ue,"__esModule",{value:!0});$ue.Updater=$ue.BaseFetcher=$ue.TargetFile=void 0;var aLl=r9t();Object.defineProperty($ue,"TargetFile",{enumerable:!0,get:function(){return aLl.TargetFile}});var cLl=dzr();Object.defineProperty($ue,"BaseFetcher",{enumerable:!0,get:function(){return cLl.BaseFetcher}});var lLl=Zbs();Object.defineProperty($ue,"Updater",{enumerable:!0,get:function(){return lLl.Updater}})});var _zr=H(d9t=>{"use strict";Object.defineProperty(d9t,"__esModule",{value:!0});d9t.TUFError=void 0;var Czr=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}};d9t.TUFError=Czr});var Vbs=H(Wze=>{"use strict";var uLl=Wze&&Wze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Wze,"__esModule",{value:!0});Wze.readTarget=ALl;var gLl=uLl(wt("fs")),p9t=_zr();async function ALl(e,t){let r=await dLl(e,t);return new Promise((n,a)=>{gLl.default.readFile(r,"utf-8",(o,l)=>{o?a(new p9t.TUFError({code:"TUF_READ_TARGET_ERROR",message:`error reading target ${r}`,cause:o})):n(l)})})}async function dLl(e,t){let r;try{r=await e.getTargetInfo(t)}catch(a){throw new p9t.TUFError({code:"TUF_REFRESH_METADATA_ERROR",message:"error refreshing TUF metadata",cause:a})}if(!r)throw new p9t.TUFError({code:"TUF_FIND_TARGET_ERROR",message:`target ${t} not found`});let n=await e.findCachedTarget(r);if(!n)try{n=await e.downloadTarget(r)}catch(a){throw new p9t.TUFError({code:"TUF_DOWNLOAD_TARGET_ERROR",message:`error downloading target ${n}`,cause:a})}return n}});var Pbs=H((Nag,pLl)=>{pLl.exports={"https://tuf-repo-cdn.sigstore.dev":{"root.json":"ewogInNpZ25hdHVyZXMiOiBbCiAgewogICAia2V5aWQiOiAiNmYyNjAwODlkNTkyM2RhZjIwMTY2Y2E2NTdjNTQzYWY2MTgzNDZhYjk3MTg4NGE5OTk2MmIwMTk4OGJiZTBjMyIsCiAgICJzaWciOiAiIgogIH0sCiAgewogICAia2V5aWQiOiAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICJzaWciOiAiMzA0NTAyMjEwMGIwYmNmMTg5Y2UxYjkzZTdkYjk2NDlkNWJlNTEyYTE4ODBjMGUzNTg4NzBlMzkzM2U0MjZjNWFmYjhhNDA2MTAwMjIwNmQyMTRiZDc5YjA5ZjQ1OGNjYzUyMWEyOTBhYTk2MGM0MTcwMTRmYzE2ZTYwNmY4MjA5MWI1ZTMxODE0ODg2YSIKICB9LAogIHsKICAgImtleWlkIjogIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAic2lnIjogIiIKICB9LAogIHsKICAgImtleWlkIjogIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAic2lnIjogIjMwNDUwMjIxMDBhOWI5ZTI5NGVjMjFiNjJkZmNhNmExNmExOWQwODQxODJjMTI1NzJlMzNkOWM0ZGNhYjUzMTdmYTFlOGE0NTlkMDIyMDY5ZjY4ZTU1ZWExZjk1YzVhMzY3YWFjN2E2MWE2NTc1N2Y5M2RhNWEwMDZhNWY0ZDFjZjk5NWJlODEyZDc2MDIiCiAgfSwKICB7CiAgICJrZXlpZCI6ICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIiwKICAgInNpZyI6ICIzMDQ0MDIyMDc4MTE3OGVjMzkxNWNiMTZhY2E3NTdkNDBlMjg0MzVhYzUzNzhkNmI0ODdhY2IxMTFkMWVlYjMzOTM5N2Y3OWEwMjIwNzgxY2NlNDhhZTQ2ZjllNDdiOTdhODQxNGZjZjQ2NmE5ODY3MjZhNTg5NmM3MmEwZTRhYmEzMTYyY2I4MjZkZCIKICB9CiBdLAogInNpZ25lZCI6IHsKICAiX3R5cGUiOiAicm9vdCIsCiAgImNvbnNpc3RlbnRfc25hcHNob3QiOiB0cnVlLAogICJleHBpcmVzIjogIjIwMjUtMDgtMTlUMTQ6MzM6MDlaIiwKICAia2V5cyI6IHsKICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVXUmlHcjUraiszSjVTc0grWnRyNW5FMkgyd083XG5CVituTzNzOTNnTGNhMThxVE96SFkxb1d5QUdEeWtNU3NHVFVCU3Q5RCtBbjBLZktzRDJtZlNNNDJRPT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2ktb25saW5lLXVyaSI6ICJnY3BrbXM6cHJvamVjdHMvc2lnc3RvcmUtcm9vdC1zaWduaW5nL2xvY2F0aW9ucy9nbG9iYWwva2V5UmluZ3Mvcm9vdC9jcnlwdG9LZXlzL3RpbWVzdGFtcC9jcnlwdG9LZXlWZXJzaW9ucy8xIgogICB9LAogICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiI6IHsKICAgICJrZXlpZF9oYXNoX2FsZ29yaXRobXMiOiBbCiAgICAgInNoYTI1NiIsCiAgICAgInNoYTUxMiIKICAgIF0sCiAgICAia2V5dHlwZSI6ICJlY2RzYSIsCiAgICAia2V5dmFsIjogewogICAgICJwdWJsaWMiOiAiLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS1cbk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRXpCelZPbUhDUG9qTVZMU0kzNjRXaWlWOE5QckRcbjZJZ1J4Vmxpc2t6L3YreTNKRVI1bWNWR2NPTmxpRGNXTUM1SjJsZkhtalBOUGhiNEg3eG04THpmU0E9PVxuLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tXG4iCiAgICB9LAogICAgInNjaGVtZSI6ICJlY2RzYS1zaGEyLW5pc3RwMjU2IiwKICAgICJ4LXR1Zi1vbi1jaS1rZXlvd25lciI6ICJAc2FudGlhZ290b3JyZXMiCiAgIH0sCiAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaW5pa1NzQVFtWWtOZUg1ZVlxL0NuSXpMYWFjT1xueGxTYWF3UURPd3FLeS90Q3F4cTV4eFBTSmMyMUs0V0loczlHeU9rS2Z6dWVZM0dJTHpjTUpaNGNXdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBib2JjYWxsYXdheSIKICAgfSwKICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUV5OFhLc21oQllESThKYzBHd3pCeGVLYXgwY201XG5TVEtFVTY1SFBGdW5VbjQxc1Q4cGkwRmpNNElrSHovWVVtd21MVU8wV3Q3bHhoajZCa0xJSzRxWUF3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQGRsb3JlbmMiCiAgIH0sCiAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFMGdocmg5Mkx3MVlyM2lkR1Y1V3FDdE1EQjhDeFxuK0Q4aGRDNHcyWkxOSXBsVlJvVkdMc2tZYTNnaGVNeU9qaUo4a1BpMTVhUTIvLzdQK29qN1V2SlBHdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBqb3NodWFnbCIKICAgfSwKICAgImU3MWE1NGQ1NDM4MzViYTg2YWRhZDk0NjAzNzljNzY0MWZiODcyNmQxNjRlYTc2NjgwMWExYzUyMmFiYTdlYTIiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVFWHN6M1NaWEZiOGpNVjQyajZwSmx5amJqUjhLXG5OM0J3b2NleHE2TE1JYjVxc1dLT1F2TE4xNk5VZWZMYzRIc3dPb3VtUnNWVmFhalNwUVM2Zm9ia1J3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQG1ubTY3OCIKICAgfQogIH0sCiAgInJvbGVzIjogewogICAicm9vdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiLAogICAgICJlNzFhNTRkNTQzODM1YmE4NmFkYWQ5NDYwMzc5Yzc2NDFmYjg3MjZkMTY0ZWE3NjY4MDFhMWM1MjJhYmE3ZWEyIiwKICAgICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiIsCiAgICAgIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIgogICAgXSwKICAgICJ0aHJlc2hvbGQiOiAzCiAgIH0sCiAgICJzbmFwc2hvdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiCiAgICBdLAogICAgInRocmVzaG9sZCI6IDEsCiAgICAieC10dWYtb24tY2ktZXhwaXJ5LXBlcmlvZCI6IDM2NTAsCiAgICAieC10dWYtb24tY2ktc2lnbmluZy1wZXJpb2QiOiAzNjUKICAgfSwKICAgInRhcmdldHMiOiB7CiAgICAia2V5aWRzIjogWwogICAgICI2ZjI2MDA4OWQ1OTIzZGFmMjAxNjZjYTY1N2M1NDNhZjYxODM0NmFiOTcxODg0YTk5OTYyYjAxOTg4YmJlMGMzIiwKICAgICAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICAgIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIiwKICAgICAiYTY4N2U1YmY0ZmFiODJiMGVlNThkNDZlMDVjOTUzNTE0NWEyYzlhZmI0NThmNDNkNDJiNDVjYTBmZGNlMmE3MCIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMwogICB9LAogICAidGltZXN0YW1wIjogewogICAgImtleWlkcyI6IFsKICAgICAiMGM4NzQzMmMzYmYwOWZkOTkxODlmZGMzMmZhNWVhZWRmNGU0YTVmYWM3YmFiNzNmYTA0YTJlMGZjNjRhZjZmNSIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMSwKICAgICJ4LXR1Zi1vbi1jaS1leHBpcnktcGVyaW9kIjogNywKICAgICJ4LXR1Zi1vbi1jaS1zaWduaW5nLXBlcmlvZCI6IDYKICAgfQogIH0sCiAgInNwZWNfdmVyc2lvbiI6ICIxLjAiLAogICJ2ZXJzaW9uIjogMTIsCiAgIngtdHVmLW9uLWNpLWV4cGlyeS1wZXJpb2QiOiAxOTcsCiAgIngtdHVmLW9uLWNpLXNpZ25pbmctcGVyaW9kIjogNDYKIH0KfQ==",targets:{"trusted_root.json":"ewogICJtZWRpYVR5cGUiOiAiYXBwbGljYXRpb24vdm5kLmRldi5zaWdzdG9yZS50cnVzdGVkcm9vdCtqc29uO3ZlcnNpb249MC4xIiwKICAidGxvZ3MiOiBbCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vcmVrb3Iuc2lnc3RvcmUuZGV2IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUyRzJZKzJ0YWJkVFY1QmNHaUJJeDBhOWZBRndya0JibUxTR3RrczRMM3FYNnlZWTB6dWZCbmhDOFVyL2l5NTVHaFdQLzlBL2JZMkxoQzMwTTkrUll0dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDEtMTJUMTE6NTM6MjcuMDAwWiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAid05JOWF0UUdseitWV2ZPNkxSeWdINFFVZlkvOFc0UkZ3aVQ1aTVXUmdCMD0iCiAgICAgIH0KICAgIH0KICBdLAogICJjZXJ0aWZpY2F0ZUF1dGhvcml0aWVzIjogWwogICAgewogICAgICAic3ViamVjdCI6IHsKICAgICAgICAib3JnYW5pemF0aW9uIjogInNpZ3N0b3JlLmRldiIsCiAgICAgICAgImNvbW1vbk5hbWUiOiAic2lnc3RvcmUiCiAgICAgIH0sCiAgICAgICJ1cmkiOiAiaHR0cHM6Ly9mdWxjaW8uc2lnc3RvcmUuZGV2IiwKICAgICAgImNlcnRDaGFpbiI6IHsKICAgICAgICAiY2VydGlmaWNhdGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAicmF3Qnl0ZXMiOiAiTUlJQitEQ0NBWDZnQXdJQkFnSVROVmtEWm9DaW9mUERzeTdkZm02Z2VMYnVoekFLQmdncWhrak9QUVFEQXpBcU1SVXdFd1lEVlFRS0V3eHphV2R6ZEc5eVpTNWtaWFl4RVRBUEJnTlZCQU1UQ0hOcFozTjBiM0psTUI0WERUSXhNRE13TnpBek1qQXlPVm9YRFRNeE1ESXlNekF6TWpBeU9Wb3dLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQjJNQkFHQnlxR1NNNDlBZ0VHQlN1QkJBQWlBMklBQkxTeUE3SWk1aytwTk84WkVXWTB5bGVtV0Rvd09rTmEza0wrR1pFNVo1R1dlaEw5L0E5YlJOQTNSYnJzWjVpMEpjYXN0YVJMN1NwNWZwL2pENWR4cWMvVWRUVm5sdlMxNmFuKzJZZnN3ZS9RdUxvbFJVQ3JjT0UyKzJpQTUrdHpkNk5tTUdRd0RnWURWUjBQQVFIL0JBUURBZ0VHTUJJR0ExVWRFd0VCL3dRSU1BWUJBZjhDQVFFd0hRWURWUjBPQkJZRUZNakZIUUJCbWlRcE1sRWs2dzJ1U3UxS0J0UHNNQjhHQTFVZEl3UVlNQmFBRk1qRkhRQkJtaVFwTWxFazZ3MnVTdTFLQnRQc01Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01IOGxpV0pmTXVpNnZYWEJoakRnWTRNd3NsbU4vVEp4VmUvODNXckZvbXdtTmYwNTZ5MVg0OEY5YzRtM2Ezb3pYQUl4QUtqUmF5NS9hai9qc0tLR0lrbVFhdGpJOHV1cEhyLytDeEZ2YUpXbXBZcU5rTERHUlUrOW9yemg1aEkyUnJjdWFRPT0iCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMDdUMDM6MjA6MjkuMDAwWiIsCiAgICAgICAgImVuZCI6ICIyMDIyLTEyLTMxVDIzOjU5OjU5Ljk5OVoiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJzdWJqZWN0IjogewogICAgICAgICJvcmdhbml6YXRpb24iOiAic2lnc3RvcmUuZGV2IiwKICAgICAgICAiY29tbW9uTmFtZSI6ICJzaWdzdG9yZSIKICAgICAgfSwKICAgICAgInVyaSI6ICJodHRwczovL2Z1bGNpby5zaWdzdG9yZS5kZXYiLAogICAgICAiY2VydENoYWluIjogewogICAgICAgICJjZXJ0aWZpY2F0ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNSUlDR2pDQ0FhR2dBd0lCQWdJVUFMblZpVmZuVTBickphc21Sa0hybi9VbmZhUXdDZ1lJS29aSXpqMEVBd013S2pFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUkV3RHdZRFZRUURFd2h6YVdkemRHOXlaVEFlRncweU1qQTBNVE15TURBMk1UVmFGdzB6TVRFd01EVXhNelUyTlRoYU1EY3hGVEFUQmdOVkJBb1RESE5wWjNOMGIzSmxMbVJsZGpFZU1Cd0dBMVVFQXhNVmMybG5jM1J2Y21VdGFXNTBaWEp0WldScFlYUmxNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRThSVlMveXNIK05PdnVEWnlQSVp0aWxnVUY5TmxhcllwQWQ5SFAxdkJCSDFVNUNWNzdMU1M3czBaaUg0bkU3SHY3cHRTNkx2dlIvU1RrNzk4TFZnTXpMbEo0SGVJZkYzdEhTYWV4TGNZcFNBU3Ixa1MwTi9SZ0JKei85aldDaVhubzNzd2VUQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0V3WURWUjBsQkF3d0NnWUlLd1lCQlFVSEF3TXdFZ1lEVlIwVEFRSC9CQWd3QmdFQi93SUJBREFkQmdOVkhRNEVGZ1FVMzlQcHoxWWtFWmI1cU5qcEtGV2l4aTRZWkQ4d0h3WURWUjBqQkJnd0ZvQVVXTUFlWDVGRnBXYXBlc3lRb1pNaTBDckZ4Zm93Q2dZSUtvWkl6ajBFQXdNRFp3QXdaQUl3UENzUUs0RFlpWllEUElhRGk1SEZLbmZ4WHg2QVNTVm1FUmZzeW5ZQmlYMlg2U0pSblpVODQvOURaZG5GdnZ4bUFqQk90NlFwQmxjNEovMER4dmtUQ3FwY2x2emlMNkJDQ1BuamRsSUIzUHUzQnhzUG15Z1VZN0lpMnpiZENkbGlpb3c9IgogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgInJhd0J5dGVzIjogIk1JSUI5ekNDQVh5Z0F3SUJBZ0lVQUxaTkFQRmR4SFB3amVEbG9Ed3lZQ2hBTy80d0NnWUlLb1pJemowRUF3TXdLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQWVGdzB5TVRFd01EY3hNelUyTlRsYUZ3MHpNVEV3TURVeE16VTJOVGhhTUNveEZUQVRCZ05WQkFvVERITnBaM04wYjNKbExtUmxkakVSTUE4R0ExVUVBeE1JYzJsbmMzUnZjbVV3ZGpBUUJnY3Foa2pPUFFJQkJnVXJnUVFBSWdOaUFBVDdYZUZUNHJiM1BRR3dTNElhanRMazMvT2xucGdhbmdhQmNsWXBzWUJyNWkrNHluQjA3Y2ViM0xQME9JT1pkeGV4WDY5YzVpVnV5SlJRK0h6MDV5aStVRjN1QldBbEhwaVM1c2gwK0gyR0hFN1NYcmsxRUM1bTFUcjE5TDlnZzkyall6QmhNQTRHQTFVZER3RUIvd1FFQXdJQkJqQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01CMEdBMVVkRGdRV0JCUll3QjVma1VXbFpxbDZ6SkNoa3lMUUtzWEYrakFmQmdOVkhTTUVHREFXZ0JSWXdCNWZrVVdsWnFsNnpKQ2hreUxRS3NYRitqQUtCZ2dxaGtqT1BRUURBd05wQURCbUFqRUFqMW5IZVhacCsxM05XQk5hK0VEc0RQOEcxV1dnMXRDTVdQL1dIUHFwYVZvMGpoc3dlTkZaZ1NzMGVFN3dZSTRxQWpFQTJXQjlvdDk4c0lrb0YzdlpZZGQzL1Z0V0I1YjlUTk1lYTdJeC9zdEo1VGZjTExlQUJMRTRCTkpPc1E0dm5CSEoiCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjItMDQtMTNUMjA6MDY6MTUuMDAwWiIKICAgICAgfQogICAgfQogIF0sCiAgImN0bG9ncyI6IFsKICAgIHsKICAgICAgImJhc2VVcmwiOiAiaHR0cHM6Ly9jdGZlLnNpZ3N0b3JlLmRldi90ZXN0IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUViZndSK1JKdWRYc2NnUkJScEtYMVhGRHkzUHl1ZER4ei9TZm5SaTFmVDhla3BmQmQyTzF1b3o3anIzWjhuS3p4QTY5RVVRK2VGQ0ZJM3pldWJQV1U3dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMTRUMDA6MDA6MDAuMDAwWiIsCiAgICAgICAgICAiZW5kIjogIjIwMjItMTAtMzFUMjM6NTk6NTkuOTk5WiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAiQ0dDUzhDaFMvMmhGMGRGcko0U2NSV2NZckJZOXd6alNiZWE4SWdZMmIzST0iCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vY3RmZS5zaWdzdG9yZS5kZXYvMjAyMiIsCiAgICAgICJoYXNoQWxnb3JpdGhtIjogIlNIQTJfMjU2IiwKICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAicmF3Qnl0ZXMiOiAiTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaVBTbEZpMENtRlRmRWpDVXFGOUh1Q0VjWVhOS0FhWWFsSUptQlo4eXllelBqVHFoeHJLQnBNbmFvY1Z0TEpCSTFlTTN1WG5RelFHQUpkSjRnczlGeXc9PSIsCiAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICJzdGFydCI6ICIyMDIyLTEwLTIwVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgfQogICAgICB9LAogICAgICAibG9nSWQiOiB7CiAgICAgICAgImtleUlkIjogIjNUMHdhc2JIRVRKakdSNGNtV2MzQXFKS1hyamVQSzMvaDRweWdDOHA3bzQ9IgogICAgICB9CiAgICB9CiAgXQp9Cg==","registry.npmjs.org%2Fkeys.json":"ewogICAgImtleXMiOiBbCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OmpsM2J3c3d1ODBQampva0NnaDBvMnc1YzJVNExoUUFFNTdnajljejFrekEiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTFPbGIzek1BRkZ4WEtIaUlrUU81Y0ozWWhsNWk2VVBwK0lodXRlQkpidUhjQTVVb2dLbzBFV3RsV3dXNktTYUtvVE5FWUw3SmxDUWlWbmtoQmt0VWdnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIxOTk5LTAxLTAxVDAwOjAwOjAwLjAwMFoiLAogICAgICAgICAgICAgICAgICAgICJlbmQiOiAiMjAyNS0wMS0yOVQwMDowMDowMC4wMDBaIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgICJrZXlJZCI6ICJTSEEyNTY6amwzYndzd3U4MFBqam9rQ2doMG8ydzVjMlU0TGhRQUU1N2dqOWN6MWt6QSIsCiAgICAgICAgICAgICJrZXlVc2FnZSI6ICJucG06YXR0ZXN0YXRpb25zIiwKICAgICAgICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUxT2xiM3pNQUZGeFhLSGlJa1FPNWNKM1lobDVpNlVQcCtJaHV0ZUJKYnVIY0E1VW9nS28wRVd0bFd3VzZLU2FLb1RORVlMN0psQ1FpVm5raEJrdFVnZz09IiwKICAgICAgICAgICAgICAgICJrZXlEZXRhaWxzIjogIlBLSVhfRUNEU0FfUDI1Nl9TSEFfMjU2IiwKICAgICAgICAgICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICAgICAgICAgICAic3RhcnQiOiAiMjAyMi0xMi0wMVQwMDowMDowMC4wMDBaIiwKICAgICAgICAgICAgICAgICAgICAiZW5kIjogIjIwMjUtMDEtMjlUMDA6MDA6MDAuMDAwWiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OkRoUTh3UjVBUEJ2RkhMRi8rVGMrQVl2UE9kVHBjSURxT2h4c0JIUndDN1UiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgImtleUlkIjogIlNIQTI1NjpEaFE4d1I1QVBCdkZITEYvK1RjK0FZdlBPZFRwY0lEcU9oeHNCSFJ3QzdVIiwKICAgICAgICAgICAgImtleVVzYWdlIjogIm5wbTphdHRlc3RhdGlvbnMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICBdCn0K"}}}});var Obs=H(xFe=>{"use strict";var Wbs=xFe&&xFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xFe,"__esModule",{value:!0});xFe.TUFClient=void 0;var ege=Wbs(wt("fs")),Oze=Wbs(wt("path")),fLl=Lbs(),ILl=f9t(),hLl=Vbs(),bzr="targets",yzr=class{constructor(t){let r=new URL(t.mirrorURL),n=encodeURIComponent(r.host+r.pathname.replace(/\/$/,"")),a=Oze.default.join(t.cachePath,n);mLl(a),CLl({cachePath:a,mirrorURL:t.mirrorURL,tufRootPath:t.rootPath,forceInit:t.forceInit}),this.updater=_Ll({mirrorURL:t.mirrorURL,cachePath:a,forceCache:t.forceCache,retry:t.retry,timeout:t.timeout})}async refresh(){return this.updater.refresh()}getTarget(t){return(0,hLl.readTarget)(this.updater,t)}};xFe.TUFClient=yzr;function mLl(e){let t=Oze.default.join(e,bzr);ege.default.existsSync(e)||ege.default.mkdirSync(e,{recursive:!0}),ege.default.existsSync(t)||ege.default.mkdirSync(t)}function CLl({cachePath:e,mirrorURL:t,tufRootPath:r,forceInit:n}){let a=Oze.default.join(e,"root.json");if(!ege.default.existsSync(a)||n)if(r)ege.default.copyFileSync(r,a);else{let l=Pbs()[t];if(!l)throw new ILl.TUFError({code:"TUF_INIT_CACHE_ERROR",message:`No root.json found for mirror: ${t}`});ege.default.writeFileSync(a,Buffer.from(l["root.json"],"base64")),Object.entries(l.targets).forEach(([A,f])=>{ege.default.writeFileSync(Oze.default.join(e,bzr,A),Buffer.from(f,"base64"))})}}function _Ll(e){let t={fetchTimeout:e.timeout,fetchRetry:e.retry};return new fLl.Updater({metadataBaseUrl:e.mirrorURL,targetBaseUrl:`${e.mirrorURL}/targets`,metadataDir:e.cachePath,targetDir:Oze.default.join(e.cachePath,bzr),forceCache:e.forceCache,config:t})}});var f9t=H(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});dre.TUFError=dre.DEFAULT_MIRROR_URL=void 0;dre.getTrustedRoot=TLl;dre.initTUF=RLl;var yLl=y7e(),bLl=Bys(),ELl=Obs();dre.DEFAULT_MIRROR_URL="https://tuf-repo-cdn.sigstore.dev";var SLl="sigstore-js",vLl={retries:2},BLl=5e3,wLl="trusted_root.json";async function TLl(e={}){let r=await Mbs(e).getTarget(wLl);return yLl.TrustedRoot.fromJSON(JSON.parse(r))}async function RLl(e={}){let t=Mbs(e);return t.refresh().then(()=>t)}function Mbs(e){return new ELl.TUFClient({cachePath:e.cachePath||(0,bLl.appDataPath)(SLl),rootPath:e.rootPath,mirrorURL:e.mirrorURL||dre.DEFAULT_MIRROR_URL,retry:e.retry??vLl,timeout:e.timeout??BLl,forceCache:e.forceCache??!1,forceInit:e.forceInit??e.force??!1})}var NLl=_zr();Object.defineProperty(dre,"TUFError",{enumerable:!0,get:function(){return NLl.TUFError}})});var Hbs=H(I9t=>{"use strict";Object.defineProperty(I9t,"__esModule",{value:!0});I9t.DSSESignatureContent=void 0;var Mze=jV(),Ezr=class{constructor(t){this.env=t}compareDigest(t){return Mze.crypto.bufferEqual(t,Mze.crypto.digest("sha256",this.env.payload))}compareSignature(t){return Mze.crypto.bufferEqual(t,this.signature)}verifySignature(t){return Mze.crypto.verify(this.preAuthEncoding,t,this.signature)}get signature(){return this.env.signatures.length>0?this.env.signatures[0].sig:Buffer.from("")}get preAuthEncoding(){return Mze.dsse.preAuthEncoding(this.env.payloadType,this.env.payload)}};I9t.DSSESignatureContent=Ezr});var Ybs=H(h9t=>{"use strict";Object.defineProperty(h9t,"__esModule",{value:!0});h9t.MessageSignatureContent=void 0;var Szr=jV(),vzr=class{constructor(t,r){this.signature=t.signature,this.messageDigest=t.messageDigest.digest,this.artifact=r}compareSignature(t){return Szr.crypto.bufferEqual(t,this.signature)}compareDigest(t){return Szr.crypto.bufferEqual(t,this.messageDigest)}verifySignature(t){return Szr.crypto.verify(this.artifact,t,this.signature)}};h9t.MessageSignatureContent=vzr});var Xbs=H(m9t=>{"use strict";Object.defineProperty(m9t,"__esModule",{value:!0});m9t.toSignedEntity=xLl;m9t.signatureContent=Qbs;var Bzr=jV(),DLl=Hbs(),kLl=Ybs();function xLl(e,t){let{tlogEntries:r,timestampVerificationData:n}=e.verificationMaterial,a=[];for(let o of r)a.push({$case:"transparency-log",tlogEntry:o});for(let o of n?.rfc3161Timestamps??[])a.push({$case:"timestamp-authority",timestamp:Bzr.RFC3161Timestamp.parse(o.signedTimestamp)});return{signature:Qbs(e,t),key:GLl(e),tlogEntries:r,timestamps:a}}function Qbs(e,t){switch(e.content.$case){case"dsseEnvelope":return new DLl.DSSESignatureContent(e.content.dsseEnvelope);case"messageSignature":return new kLl.MessageSignatureContent(e.content.messageSignature,t)}}function GLl(e){switch(e.verificationMaterial.content.$case){case"publicKey":return{$case:"public-key",hint:e.verificationMaterial.content.publicKey.hint};case"x509CertificateChain":return{$case:"certificate",certificate:Bzr.X509Certificate.parse(e.verificationMaterial.content.x509CertificateChain.certificates[0].rawBytes)};case"certificate":return{$case:"certificate",certificate:Bzr.X509Certificate.parse(e.verificationMaterial.content.certificate.rawBytes)}}}});var Ix=H(GFe=>{"use strict";Object.defineProperty(GFe,"__esModule",{value:!0});GFe.PolicyError=GFe.VerificationError=void 0;var C9t=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}},wzr=class extends C9t{};GFe.VerificationError=wzr;var Tzr=class extends C9t{};GFe.PolicyError=Tzr});var Jbs=H(_9t=>{"use strict";Object.defineProperty(_9t,"__esModule",{value:!0});_9t.filterCertAuthorities=FLl;_9t.filterTLogAuthorities=ZLl;function FLl(e,t){return e.filter(r=>r.validFor.start<=t&&r.validFor.end>=t)}function ZLl(e,t){return e.filter(r=>t.logID&&!r.logID.equals(t.logID)?!1:r.validFor.start<=t.targetDate&&t.targetDate<=r.validFor.end)}});var U0e=H(J0e=>{"use strict";Object.defineProperty(J0e,"__esModule",{value:!0});J0e.filterTLogAuthorities=J0e.filterCertAuthorities=void 0;J0e.toTrustMaterial=VLl;var Rzr=jV(),Hze=y7e(),LLl=Ix(),Nzr=new Date(0),Dzr=new Date(864e13),jbs=Jbs();Object.defineProperty(J0e,"filterCertAuthorities",{enumerable:!0,get:function(){return jbs.filterCertAuthorities}});Object.defineProperty(J0e,"filterTLogAuthorities",{enumerable:!0,get:function(){return jbs.filterTLogAuthorities}});function VLl(e,t){let r=typeof t=="function"?t:PLl(t);return{certificateAuthorities:e.certificateAuthorities.map(Kbs),timestampAuthorities:e.timestampAuthorities.map(Kbs),tlogs:e.tlogs.map(Ubs),ctlogs:e.ctlogs.map(Ubs),publicKey:r}}function Ubs(e){let t=e.publicKey.keyDetails,r=t===Hze.PublicKeyDetails.PKCS1_RSA_PKCS1V5||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V5||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256?"pkcs1":"spki";return{logID:e.logId.keyId,publicKey:Rzr.crypto.createPublicKey(e.publicKey.rawBytes,r),validFor:{start:e.publicKey.validFor?.start||Nzr,end:e.publicKey.validFor?.end||Dzr}}}function Kbs(e){return{certChain:e.certChain.certificates.map(t=>Rzr.X509Certificate.parse(t.rawBytes)),validFor:{start:e.validFor?.start||Nzr,end:e.validFor?.end||Dzr}}}function PLl(e){return t=>{let r=(e||{})[t];if(!r)throw new LLl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:Rzr.crypto.createPublicKey(r.rawBytes),validFor:n=>(r.validFor?.start||Nzr)<=n&&(r.validFor?.end||Dzr)>=n}}}});var kzr=H(Yze=>{"use strict";Object.defineProperty(Yze,"__esModule",{value:!0});Yze.CertificateChainVerifier=void 0;Yze.verifyCertificateChain=OLl;var tge=Ix(),WLl=U0e();function OLl(e,t,r){let n=(0,WLl.filterCertAuthorities)(r,e),a;for(let o of n)try{return new y9t({trustedCerts:o.certChain,untrustedCert:t,timestamp:e}).verify()}catch(l){a=l}throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"Failed to verify certificate chain",cause:a})}var y9t=class{constructor(t){this.untrustedCert=t.untrustedCert,this.trustedCerts=t.trustedCerts,this.localCerts=MLl([...t.trustedCerts,t.untrustedCert]),this.timestamp=t.timestamp}verify(){let t=this.sort();if(this.checkPath(t),!t.every(n=>n.validForDate(this.timestamp)))throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate is not valid or expired at the specified date"});return t}sort(){let t=this.untrustedCert,r=this.buildPaths(t);if(r=r.filter(a=>a.some(o=>this.trustedCerts.includes(o))),r.length===0)throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"no trusted certificate path found"});let n=r.reduce((a,o)=>a.length{if(n&&a.extSubjectKeyID){a.extSubjectKeyID.keyIdentifier.equals(n)&&r.push(a);return}a.subject.equals(t.issuer)&&r.push(a)}),r=r.filter(a=>{try{return t.verify(a)}catch{return!1}}),r)}checkPath(t){if(t.length<1)throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate chain must contain at least one certificate"});if(!t.slice(1).every(n=>n.isCA))throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"intermediate certificate is not a CA"});for(let n=t.length-2;n>=0;n--)if(!t[n].issuer.equals(t[n+1].subject))throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"incorrect certificate name chaining"});for(let n=0;n{"use strict";Object.defineProperty(xzr,"__esModule",{value:!0});xzr.verifySCTs=QLl;var b9t=jV(),HLl=Ix(),YLl=U0e();function QLl(e,t,r){let n,a=e.clone();for(let f=0;f{if(!(0,YLl.filterTLogAuthorities)(r,{logID:f.logID,targetDate:f.datetime}).some(b=>f.verify(o.buffer,b.publicKey)))throw new HLl.VerificationError({code:"CERTIFICATE_ERROR",message:"SCT verification failed"});return f.logID})}});var qbs=H(E9t=>{"use strict";Object.defineProperty(E9t,"__esModule",{value:!0});E9t.verifyPublicKey=qLl;E9t.verifyCertificate=$Ll;var XLl=jV(),JLl=Ix(),ULl=kzr(),KLl=zbs(),jLl="1.3.6.1.4.1.57264.1.1",zLl="1.3.6.1.4.1.57264.1.8";function qLl(e,t,r){let n=r.publicKey(e);return t.forEach(a=>{if(!n.validFor(a))throw new JLl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`Public key is not valid for timestamp: ${a.toISOString()}`})}),{key:n.publicKey}}function $Ll(e,t,r){let n=[];return t.forEach(a=>{n=(0,ULl.verifyCertificateChain)(a,e,r.certificateAuthorities)}),{scts:(0,KLl.verifySCTs)(n[0],n[1],r.ctlogs),signer:e9l(n[0])}}function e9l(e){let t,r=e.extension(zLl);r?t=r.valueObj.subs?.[0]?.value.toString("ascii"):t=e.extension(jLl)?.value.toString("ascii");let n={extensions:{issuer:t},subjectAlternativeName:e.subjectAltName};return{key:XLl.crypto.createPublicKey(e.publicKey),identity:n}}});var eEs=H(S9t=>{"use strict";Object.defineProperty(S9t,"__esModule",{value:!0});S9t.verifySubjectAlternativeName=t9l;S9t.verifyExtensions=r9l;var $bs=Ix();function t9l(e,t){if(t===void 0||!t.match(e))throw new $bs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`certificate identity error - expected ${e}, got ${t}`})}function r9l(e,t={}){let r;for(r in e)if(t[r]!==e[r])throw new $bs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`invalid certificate extension - expected ${r}=${e[r]}, got ${r}=${t[r]}`})}});var tEs=H(Vzr=>{"use strict";Object.defineProperty(Vzr,"__esModule",{value:!0});Vzr.verifyCheckpoint=s9l;var Fzr=jV(),FFe=Ix(),n9l=U0e(),Gzr=` - -`,i9l=/\u2014 (\S+) (\S+)\n/g;function s9l(e,t){let r=(0,n9l.filterTLogAuthorities)(t,{targetDate:new Date(Number(e.integratedTime)*1e3)}),n=e.inclusionProof,a=Zzr.fromString(n.checkpoint.envelope),o=Lzr.fromString(a.note);if(!o9l(a,r))throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid checkpoint signature"});if(!Fzr.crypto.bufferEqual(o.logHash,n.rootHash))throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"root hash mismatch"})}function o9l(e,t){let r=Buffer.from(e.note,"utf-8");return e.signatures.every(n=>{let a=t.find(o=>Fzr.crypto.bufferEqual(o.logID.subarray(0,4),n.keyHint));return a?Fzr.crypto.verify(r,a.publicKey,n.signature):!1})}var Zzr=class e{constructor(t,r){this.note=t,this.signatures=r}static fromString(t){if(!t.includes(Gzr))throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"missing checkpoint separator"});let r=t.indexOf(Gzr),n=t.slice(0,r+1),o=t.slice(r+Gzr.length).matchAll(i9l),l=Array.from(o,A=>{let[,f,I]=A,C=Buffer.from(I,"base64");if(C.length<5)throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"malformed checkpoint signature"});return{name:f,keyHint:C.subarray(0,4),signature:C.subarray(4)}});if(l.length===0)throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"no signatures found in checkpoint"});return new e(n,l)}},Lzr=class e{constructor(t,r,n,a){this.origin=t,this.logSize=r,this.logHash=n,this.rest=a}static fromString(t){let r=t.trimEnd().split(` -`);if(r.length<3)throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"too few lines in checkpoint header"});let n=r[0],a=BigInt(r[1]),o=Buffer.from(r[2],"base64"),l=r.slice(3);return new e(n,a,o,l)}}});var rEs=H(Mzr=>{"use strict";Object.defineProperty(Mzr,"__esModule",{value:!0});Mzr.verifyMerkleInclusion=l9l;var Ozr=jV(),Pzr=Ix(),a9l=Buffer.from([0]),c9l=Buffer.from([1]);function l9l(e){let t=e.inclusionProof,r=BigInt(t.logIndex),n=BigInt(t.treeSize);if(r<0n||r>=n)throw new Pzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:`invalid index: ${r}`});let{inner:a,border:o}=u9l(r,n);if(t.hashes.length!==a+o)throw new Pzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid hash count"});let l=t.hashes.slice(0,a),A=t.hashes.slice(a),f=I9l(e.canonicalizedBody),I=A9l(g9l(f,l,r),A);if(!Ozr.crypto.bufferEqual(I,t.rootHash))throw new Pzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"calculated root hash does not match inclusion proof"})}function u9l(e,t){let r=d9l(e,t),n=p9l(e>>BigInt(r));return{inner:r,border:n}}function g9l(e,t,r){return t.reduce((n,a,o)=>r>>BigInt(o)&BigInt(1)?Wzr(a,n):Wzr(n,a),e)}function A9l(e,t){return t.reduce((r,n)=>Wzr(n,r),e)}function d9l(e,t){return f9l(e^t-BigInt(1))}function p9l(e){return e.toString(2).split("1").length-1}function f9l(e){return e===0n?0:e.toString(2).length}function Wzr(e,t){return Ozr.crypto.digest("sha256",c9l,e,t)}function I9l(e){return Ozr.crypto.digest("sha256",a9l,e)}});var iEs=H(Hzr=>{"use strict";Object.defineProperty(Hzr,"__esModule",{value:!0});Hzr.verifyTLogSET=C9l;var nEs=jV(),h9l=Ix(),m9l=U0e();function C9l(e,t){if(!(0,m9l.filterTLogAuthorities)(t,{logID:e.logId.keyId,targetDate:new Date(Number(e.integratedTime)*1e3)}).some(a=>{let o=_9l(e),l=Buffer.from(nEs.json.canonicalize(o),"utf8"),A=e.inclusionPromise.signedEntryTimestamp;return nEs.crypto.verify(l,a.publicKey,A)}))throw new h9l.VerificationError({code:"TLOG_INCLUSION_PROMISE_ERROR",message:"inclusion promise could not be verified"})}function _9l(e){let{integratedTime:t,logIndex:r,logId:n,canonicalizedBody:a}=e;return{body:a.toString("base64"),integratedTime:Number(t),logIndex:Number(r),logID:n.keyId.toString("hex")}}});var oEs=H(Qzr=>{"use strict";Object.defineProperty(Qzr,"__esModule",{value:!0});Qzr.verifyRFC3161Timestamp=E9l;var Yzr=jV(),sEs=Ix(),y9l=kzr(),b9l=U0e();function E9l(e,t,r){let n=e.signingTime;if(r=(0,b9l.filterCertAuthorities)(r,n),r=v9l(r,{serialNumber:e.signerSerialNumber,issuer:e.signerIssuer}),!r.some(o=>{try{return S9l(e,t,o),!0}catch{return!1}}))throw new sEs.VerificationError({code:"TIMESTAMP_ERROR",message:"timestamp could not be verified"})}function S9l(e,t,r){let[n,...a]=r.certChain,o=Yzr.crypto.createPublicKey(n.publicKey),l=e.signingTime;try{new y9l.CertificateChainVerifier({untrustedCert:n,trustedCerts:a,timestamp:l}).verify()}catch{throw new sEs.VerificationError({code:"TIMESTAMP_ERROR",message:"invalid certificate chain"})}e.verify(t,o)}function v9l(e,t){return e.filter(r=>r.certChain.length>0&&Yzr.crypto.bufferEqual(r.certChain[0].serialNumber,t.serialNumber)&&Yzr.crypto.bufferEqual(r.certChain[0].issuer,t.issuer))}});var aEs=H(v9t=>{"use strict";Object.defineProperty(v9t,"__esModule",{value:!0});v9t.verifyTSATimestamp=D9l;v9t.verifyTLogTimestamp=k9l;var B9l=Ix(),w9l=tEs(),T9l=rEs(),R9l=iEs(),N9l=oEs();function D9l(e,t,r){return(0,N9l.verifyRFC3161Timestamp)(e,t,r),{type:"timestamp-authority",logID:e.signerSerialNumber,timestamp:e.signingTime}}function k9l(e,t){let r=!1;if(x9l(e)&&((0,R9l.verifyTLogSET)(e,t),r=!0),G9l(e)&&((0,T9l.verifyMerkleInclusion)(e),(0,w9l.verifyCheckpoint)(e,t),r=!0),!r)throw new B9l.VerificationError({code:"TLOG_MISSING_INCLUSION_ERROR",message:"inclusion could not be verified"});return{type:"transparency-log",logID:e.logId.keyId,timestamp:new Date(Number(e.integratedTime)*1e3)}}function x9l(e){return e.inclusionPromise!==void 0}function G9l(e){return e.inclusionProof!==void 0}});var cEs=H(Xzr=>{"use strict";Object.defineProperty(Xzr,"__esModule",{value:!0});Xzr.verifyDSSETLogBody=F9l;var B9t=Ix();function F9l(e,t){switch(e.apiVersion){case"0.0.1":return Z9l(e,t);default:throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported dsse version: ${e.apiVersion}`})}}function Z9l(e,t){if(e.spec.signatures?.length!==1)throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=e.spec.signatures[0].signature;if(!t.compareSignature(Buffer.from(r,"base64")))throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}});var lEs=H(Uzr=>{"use strict";Object.defineProperty(Uzr,"__esModule",{value:!0});Uzr.verifyHashedRekordTLogBody=L9l;var Jzr=Ix();function L9l(e,t){switch(e.apiVersion){case"0.0.1":return V9l(e,t);default:throw new Jzr.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported hashedrekord version: ${e.apiVersion}`})}}function V9l(e,t){let r=e.spec.signature.content||"";if(!t.compareSignature(Buffer.from(r,"base64")))throw new Jzr.VerificationError({code:"TLOG_BODY_ERROR",message:"signature mismatch"});let n=e.spec.data.hash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new Jzr.VerificationError({code:"TLOG_BODY_ERROR",message:"digest mismatch"})}});var uEs=H(Kzr=>{"use strict";Object.defineProperty(Kzr,"__esModule",{value:!0});Kzr.verifyIntotoTLogBody=P9l;var w9t=Ix();function P9l(e,t){switch(e.apiVersion){case"0.0.2":return W9l(e,t);default:throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported intoto version: ${e.apiVersion}`})}}function W9l(e,t){if(e.spec.content.envelope.signatures?.length!==1)throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=O9l(e.spec.content.envelope.signatures[0].sig);if(!t.compareSignature(Buffer.from(r,"base64")))throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.content.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}function O9l(e){return Buffer.from(e,"base64").toString("utf-8")}});var AEs=H(jzr=>{"use strict";Object.defineProperty(jzr,"__esModule",{value:!0});jzr.verifyTLogBody=Q9l;var gEs=Ix(),M9l=cEs(),H9l=lEs(),Y9l=uEs();function Q9l(e,t){let{kind:r,version:n}=e.kindVersion,a=JSON.parse(e.canonicalizedBody.toString("utf8"));if(r!==a.kind||n!==a.apiVersion)throw new gEs.VerificationError({code:"TLOG_BODY_ERROR",message:`kind/version mismatch - expected: ${r}/${n}, received: ${a.kind}/${a.apiVersion}`});switch(a.kind){case"dsse":return(0,M9l.verifyDSSETLogBody)(a,t);case"intoto":return(0,Y9l.verifyIntotoTLogBody)(a,t);case"hashedrekord":return(0,H9l.verifyHashedRekordTLogBody)(a,t);default:throw new gEs.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported kind: ${r}`})}}});var hEs=H(T9t=>{"use strict";Object.defineProperty(T9t,"__esModule",{value:!0});T9t.Verifier=void 0;var X9l=wt("util"),ZFe=Ix(),dEs=qbs(),pEs=eEs(),fEs=aEs(),J9l=AEs(),zzr=class{constructor(t,r={}){this.trustMaterial=t,this.options={ctlogThreshold:r.ctlogThreshold??1,tlogThreshold:r.tlogThreshold??1,tsaThreshold:r.tsaThreshold??0}}verify(t,r){let n=this.verifyTimestamps(t),a=this.verifySigningKey(t,n);return this.verifyTLogs(t),this.verifySignature(t,a),r&&this.verifyPolicy(r,a.identity||{}),a}verifyTimestamps(t){let r=0,n=0,a=t.timestamps.map(o=>{switch(o.$case){case"timestamp-authority":return n++,(0,fEs.verifyTSATimestamp)(o.timestamp,t.signature.signature,this.trustMaterial.timestampAuthorities);case"transparency-log":return r++,(0,fEs.verifyTLogTimestamp)(o.tlogEntry,this.trustMaterial.tlogs)}});if(IEs(a))throw new ZFe.VerificationError({code:"TIMESTAMP_ERROR",message:"duplicate timestamp"});if(ro.timestamp)}verifySigningKey({key:t},r){switch(t.$case){case"public-key":return(0,dEs.verifyPublicKey)(t.hint,r,this.trustMaterial);case"certificate":{let n=(0,dEs.verifyCertificate)(t.certificate,r,this.trustMaterial);if(IEs(n.scts))throw new ZFe.VerificationError({code:"CERTIFICATE_ERROR",message:"duplicate SCT"});if(n.scts.length(0,J9l.verifyTLogBody)(n,t))}verifySignature(t,r){if(!t.signature.verifySignature(r.key))throw new ZFe.VerificationError({code:"SIGNATURE_ERROR",message:"signature verification failed"})}verifyPolicy(t,r){t.subjectAlternativeName&&(0,pEs.verifySubjectAlternativeName)(t.subjectAlternativeName,r.subjectAlternativeName),t.extensions&&(0,pEs.verifyExtensions)(t.extensions,r.extensions)}};T9t.Verifier=zzr;function IEs(e){for(let t=0;t{"use strict";Object.defineProperty($H,"__esModule",{value:!0});$H.Verifier=$H.toTrustMaterial=$H.VerificationError=$H.PolicyError=$H.toSignedEntity=void 0;var U9l=Xbs();Object.defineProperty($H,"toSignedEntity",{enumerable:!0,get:function(){return U9l.toSignedEntity}});var mEs=Ix();Object.defineProperty($H,"PolicyError",{enumerable:!0,get:function(){return mEs.PolicyError}});Object.defineProperty($H,"VerificationError",{enumerable:!0,get:function(){return mEs.VerificationError}});var K9l=U0e();Object.defineProperty($H,"toTrustMaterial",{enumerable:!0,get:function(){return K9l.toTrustMaterial}});var j9l=hEs();Object.defineProperty($H,"Verifier",{enumerable:!0,get:function(){return j9l.Verifier}})});var CEs=H(mL=>{"use strict";Object.defineProperty(mL,"__esModule",{value:!0});mL.DEFAULT_TIMEOUT=mL.DEFAULT_RETRY=void 0;mL.createBundleBuilder=$9l;mL.createKeyFinder=eVl;mL.createVerificationPolicy=tVl;var z9l=jV(),LFe=u7r(),q9l=R9t();mL.DEFAULT_RETRY={retries:2};mL.DEFAULT_TIMEOUT=5e3;function $9l(e,t){let r={signer:rVl(t),witnesses:iVl(t)};switch(e){case"messageSignature":return new LFe.MessageSignatureBundleBuilder(r);case"dsseEnvelope":return new LFe.DSSEBundleBuilder({...r,certificateChain:t.legacyCompatibility})}}function eVl(e){return t=>{let r=e(t);if(!r)throw new q9l.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:z9l.crypto.createPublicKey(r),validFor:()=>!0}}}function tVl(e){let t={},r=e.certificateIdentityEmail||e.certificateIdentityURI;return r&&(t.subjectAlternativeName=r),e.certificateIssuer&&(t.extensions={issuer:e.certificateIssuer}),t}function rVl(e){return new LFe.FulcioSigner({fulcioBaseURL:e.fulcioURL,identityProvider:e.identityProvider||nVl(e),retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})}function nVl(e){let t=e.identityToken;return t?{getToken:()=>Promise.resolve(t)}:new LFe.CIContextProvider("sigstore")}function iVl(e){let t=[];return sVl(e)&&t.push(new LFe.RekorWitness({rekorBaseURL:e.rekorURL,entryType:e.legacyCompatibility?"intoto":"dsse",fetchOnConflict:!1,retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})),oVl(e)&&t.push(new LFe.TSAWitness({tsaBaseURL:e.tsaServerURL,retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})),t}function sVl(e){return e.tlogUpload!==!1}function oVl(e){return e.tsaServerURL!==void 0}});var bEs=H(eY=>{"use strict";var aVl=eY&&eY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),cVl=eY&&eY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),_Es=eY&&eY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aa.verify(e,n))}async function yEs(e={}){let t=await lVl.getTrustedRoot({mirrorURL:e.tufMirrorURL,rootPath:e.tufRootPath,cachePath:e.tufCachePath,forceCache:e.tufForceCache,retry:e.retry??VFe.DEFAULT_RETRY,timeout:e.timeout??VFe.DEFAULT_TIMEOUT}),r=e.keySelector?VFe.createKeyFinder(e.keySelector):void 0,n=(0,qzr.toTrustMaterial)(t,r),a={ctlogThreshold:e.ctLogThreshold,tlogThreshold:e.tlogThreshold},o=new qzr.Verifier(n,a),l=VFe.createVerificationPolicy(e);return{verify:(A,f)=>{let I=(0,$zr.bundleFromJSON)(A),C=(0,qzr.toSignedEntity)(I,f);o.verify(C,l)}}}});var SEs=H(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.verify=O2.sign=O2.createVerifier=O2.attest=O2.VerificationError=O2.PolicyError=O2.TUFError=O2.InternalError=O2.DEFAULT_REKOR_URL=O2.DEFAULT_FULCIO_URL=O2.ValidationError=void 0;var dVl=E7e();Object.defineProperty(O2,"ValidationError",{enumerable:!0,get:function(){return dVl.ValidationError}});var eqr=u7r();Object.defineProperty(O2,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return eqr.DEFAULT_FULCIO_URL}});Object.defineProperty(O2,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return eqr.DEFAULT_REKOR_URL}});Object.defineProperty(O2,"InternalError",{enumerable:!0,get:function(){return eqr.InternalError}});var pVl=f9t();Object.defineProperty(O2,"TUFError",{enumerable:!0,get:function(){return pVl.TUFError}});var EEs=R9t();Object.defineProperty(O2,"PolicyError",{enumerable:!0,get:function(){return EEs.PolicyError}});Object.defineProperty(O2,"VerificationError",{enumerable:!0,get:function(){return EEs.VerificationError}});var N9t=bEs();Object.defineProperty(O2,"attest",{enumerable:!0,get:function(){return N9t.attest}});Object.defineProperty(O2,"createVerifier",{enumerable:!0,get:function(){return N9t.createVerifier}});Object.defineProperty(O2,"sign",{enumerable:!0,get:function(){return N9t.sign}});Object.defineProperty(O2,"verify",{enumerable:!0,get:function(){return N9t.verify}})});var vEs=H(D9t=>{"use strict";Object.defineProperty(D9t,"__esModule",{value:!0});D9t.generateProvenance=void 0;var fVl=(Pa(),vi(Va)),PFe=Sn(),IVl=fVl.__importStar(SEs()),{env:zc}=process,hVl="application/vnd.in-toto+json",mVl="https://in-toto.io/Statement/v0.1",CVl="https://in-toto.io/Statement/v1",_Vl="https://slsa.dev/provenance/v0.2",yVl="https://slsa.dev/provenance/v1",bVl="https://github.com/actions/runner",EVl="https://slsa-framework.github.io/github-actions-buildtypes/workflow/v1",SVl="https://github.com/npm/cli/gitlab",vVl="v0alpha1",BVl=async(e,t)=>{let r;if(zc.GITHUB_ACTIONS){if(!zc.ACTIONS_ID_TOKEN_REQUEST_URL)throw new PFe.ReportError(PFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,'Provenance generation in GitHub Actions requires "write" access to the "id-token" permission');let n=(zc.GITHUB_WORKFLOW_REF||"").replace(`${zc.GITHUB_REPOSITORY}/`,""),a=n.indexOf("@"),o=n.slice(0,a),l=n.slice(a+1);r={_type:CVl,subject:e,predicateType:yVl,predicate:{buildDefinition:{buildType:EVl,externalParameters:{workflow:{ref:l,repository:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}`,path:o}},internalParameters:{github:{event_name:zc.GITHUB_EVENT_NAME,repository_id:zc.GITHUB_REPOSITORY_ID,repository_owner_id:zc.GITHUB_REPOSITORY_OWNER_ID}},resolvedDependencies:[{uri:`git+${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}@${zc.GITHUB_REF}`,digest:{gitCommit:zc.GITHUB_SHA}}]},runDetails:{builder:{id:`${bVl}/${zc.RUNNER_ENVIRONMENT}`},metadata:{invocationId:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}/actions/runs/${zc.GITHUB_RUN_ID}/attempts/${zc.GITHUB_RUN_ATTEMPT}`}}}}}else if(zc.GITLAB_CI){if(!zc.SIGSTORE_ID_TOKEN)throw new PFe.ReportError(PFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,`Provenance generation in GitLab CI requires "SIGSTORE_ID_TOKEN" with "sigstore" audience to be present in "id_tokens". For more info see: -https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:mVl,subject:e,predicateType:_Vl,predicate:{buildType:`${SVl}/${vVl}`,builder:{id:`${zc.CI_PROJECT_URL}/-/runners/${zc.CI_RUNNER_ID}`},invocation:{configSource:{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA},entryPoint:zc.CI_JOB_NAME},parameters:{CI:zc.CI,CI_API_GRAPHQL_URL:zc.CI_API_GRAPHQL_URL,CI_API_V4_URL:zc.CI_API_V4_URL,CI_BUILD_BEFORE_SHA:zc.CI_BUILD_BEFORE_SHA,CI_BUILD_ID:zc.CI_BUILD_ID,CI_BUILD_NAME:zc.CI_BUILD_NAME,CI_BUILD_REF:zc.CI_BUILD_REF,CI_BUILD_REF_NAME:zc.CI_BUILD_REF_NAME,CI_BUILD_REF_SLUG:zc.CI_BUILD_REF_SLUG,CI_BUILD_STAGE:zc.CI_BUILD_STAGE,CI_COMMIT_BEFORE_SHA:zc.CI_COMMIT_BEFORE_SHA,CI_COMMIT_BRANCH:zc.CI_COMMIT_BRANCH,CI_COMMIT_REF_NAME:zc.CI_COMMIT_REF_NAME,CI_COMMIT_REF_PROTECTED:zc.CI_COMMIT_REF_PROTECTED,CI_COMMIT_REF_SLUG:zc.CI_COMMIT_REF_SLUG,CI_COMMIT_SHA:zc.CI_COMMIT_SHA,CI_COMMIT_SHORT_SHA:zc.CI_COMMIT_SHORT_SHA,CI_COMMIT_TIMESTAMP:zc.CI_COMMIT_TIMESTAMP,CI_COMMIT_TITLE:zc.CI_COMMIT_TITLE,CI_CONFIG_PATH:zc.CI_CONFIG_PATH,CI_DEFAULT_BRANCH:zc.CI_DEFAULT_BRANCH,CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_SERVER:zc.CI_DEPENDENCY_PROXY_SERVER,CI_DEPENDENCY_PROXY_USER:zc.CI_DEPENDENCY_PROXY_USER,CI_JOB_ID:zc.CI_JOB_ID,CI_JOB_NAME:zc.CI_JOB_NAME,CI_JOB_NAME_SLUG:zc.CI_JOB_NAME_SLUG,CI_JOB_STAGE:zc.CI_JOB_STAGE,CI_JOB_STARTED_AT:zc.CI_JOB_STARTED_AT,CI_JOB_URL:zc.CI_JOB_URL,CI_NODE_TOTAL:zc.CI_NODE_TOTAL,CI_PAGES_DOMAIN:zc.CI_PAGES_DOMAIN,CI_PAGES_URL:zc.CI_PAGES_URL,CI_PIPELINE_CREATED_AT:zc.CI_PIPELINE_CREATED_AT,CI_PIPELINE_ID:zc.CI_PIPELINE_ID,CI_PIPELINE_IID:zc.CI_PIPELINE_IID,CI_PIPELINE_SOURCE:zc.CI_PIPELINE_SOURCE,CI_PIPELINE_URL:zc.CI_PIPELINE_URL,CI_PROJECT_CLASSIFICATION_LABEL:zc.CI_PROJECT_CLASSIFICATION_LABEL,CI_PROJECT_DESCRIPTION:zc.CI_PROJECT_DESCRIPTION,CI_PROJECT_ID:zc.CI_PROJECT_ID,CI_PROJECT_NAME:zc.CI_PROJECT_NAME,CI_PROJECT_NAMESPACE:zc.CI_PROJECT_NAMESPACE,CI_PROJECT_NAMESPACE_ID:zc.CI_PROJECT_NAMESPACE_ID,CI_PROJECT_PATH:zc.CI_PROJECT_PATH,CI_PROJECT_PATH_SLUG:zc.CI_PROJECT_PATH_SLUG,CI_PROJECT_REPOSITORY_LANGUAGES:zc.CI_PROJECT_REPOSITORY_LANGUAGES,CI_PROJECT_ROOT_NAMESPACE:zc.CI_PROJECT_ROOT_NAMESPACE,CI_PROJECT_TITLE:zc.CI_PROJECT_TITLE,CI_PROJECT_URL:zc.CI_PROJECT_URL,CI_PROJECT_VISIBILITY:zc.CI_PROJECT_VISIBILITY,CI_REGISTRY:zc.CI_REGISTRY,CI_REGISTRY_IMAGE:zc.CI_REGISTRY_IMAGE,CI_REGISTRY_USER:zc.CI_REGISTRY_USER,CI_RUNNER_DESCRIPTION:zc.CI_RUNNER_DESCRIPTION,CI_RUNNER_ID:zc.CI_RUNNER_ID,CI_RUNNER_TAGS:zc.CI_RUNNER_TAGS,CI_SERVER_HOST:zc.CI_SERVER_HOST,CI_SERVER_NAME:zc.CI_SERVER_NAME,CI_SERVER_PORT:zc.CI_SERVER_PORT,CI_SERVER_PROTOCOL:zc.CI_SERVER_PROTOCOL,CI_SERVER_REVISION:zc.CI_SERVER_REVISION,CI_SERVER_SHELL_SSH_HOST:zc.CI_SERVER_SHELL_SSH_HOST,CI_SERVER_SHELL_SSH_PORT:zc.CI_SERVER_SHELL_SSH_PORT,CI_SERVER_URL:zc.CI_SERVER_URL,CI_SERVER_VERSION:zc.CI_SERVER_VERSION,CI_SERVER_VERSION_MAJOR:zc.CI_SERVER_VERSION_MAJOR,CI_SERVER_VERSION_MINOR:zc.CI_SERVER_VERSION_MINOR,CI_SERVER_VERSION_PATCH:zc.CI_SERVER_VERSION_PATCH,CI_TEMPLATE_REGISTRY_HOST:zc.CI_TEMPLATE_REGISTRY_HOST,GITLAB_CI:zc.GITLAB_CI,GITLAB_FEATURES:zc.GITLAB_FEATURES,GITLAB_USER_ID:zc.GITLAB_USER_ID,GITLAB_USER_LOGIN:zc.GITLAB_USER_LOGIN,RUNNER_GENERATE_ARTIFACTS_METADATA:zc.RUNNER_GENERATE_ARTIFACTS_METADATA},environment:{name:zc.CI_RUNNER_DESCRIPTION,architecture:zc.CI_RUNNER_EXECUTABLE_ARCH,server:zc.CI_SERVER_URL,project:zc.CI_PROJECT_PATH,job:{id:zc.CI_JOB_ID},pipeline:{id:zc.CI_PIPELINE_ID,ref:zc.CI_CONFIG_PATH}}},metadata:{buildInvocationId:`${zc.CI_JOB_URL}`,completeness:{parameters:!0,environment:!0,materials:!1},reproducible:!1},materials:[{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA}}]}}}else throw new PFe.ReportError(PFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,"Provenance generation is only supported in GitHub Actions and GitLab CI");return IVl.attest(Buffer.from(JSON.stringify(r)),hVl,t)};D9t.generateProvenance=BVl});var NEs=H(WFe=>{"use strict";Object.defineProperty(WFe,"__esModule",{value:!0});WFe.makePublishBody=xVl;WFe.getGitHead=GVl;WFe.getPublishAccess=TEs;WFe.getReadmeContent=REs;var wVl=(Pa(),vi(Va)),TVl=Sn(),wEs=Sn(),BEs=ro(),RVl=$he(),NVl=wVl.__importDefault(Jte()),DVl=c0e(),kVl=vEs();async function xVl(e,t,{access:r,tag:n,registry:a,gitHead:o,provenance:l}){let A=e.manifest.name,f=e.manifest.version,I=wEs.structUtils.stringifyIdent(A),C=NVl.default.fromData(t,{algorithms:["sha1","sha512"]}),b=r??TEs(e,A),E=await REs(e),N=await RVl.packUtils.genPackageManifest(e),B=`${I}-${f}.tgz`,F=new URL(`${(0,DVl.normalizeRegistry)(a)}/${I}/-/${B}`),Q={[B]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}};if(l){let X={name:`pkg:npm/${I.replace(/^@/,"%40")}@${f}`,digest:{sha512:C.sha512[0].hexDigest()}},ae=await(0,kVl.generateProvenance)([X]),ne=JSON.stringify(ae);Q[`${I}-${f}.sigstore`]={content_type:ae.mediaType,data:ne,length:ne.length}}return{_id:I,_attachments:Q,name:I,access:b,"dist-tags":{[n]:f},versions:{[f]:{...N,_id:`${I}@${f}`,name:I,version:f,gitHead:o,dist:{shasum:C.sha1[0].hexDigest(),integrity:C.sha512[0].toString(),tarball:F.toString()}}},readme:E}}async function GVl(e){try{let{stdout:t}=await TVl.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}function TEs(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}async function REs(e){let t=BEs.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${wEs.structUtils.stringifyIdent(r)} -`;try{a=await BEs.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}});var sJ=H(QR=>{"use strict";Object.defineProperty(QR,"__esModule",{value:!0});QR.NpmTagResolver=QR.NpmSemverResolver=QR.NpmSemverFetcher=QR.NpmRemapResolver=QR.NpmHttpFetcher=QR.npmPublishUtils=QR.npmHttpUtils=QR.npmConfigUtils=void 0;var rqr=(Pa(),vi(Va)),jO=Sn(),kEs=nps();Object.defineProperty(QR,"NpmHttpFetcher",{enumerable:!0,get:function(){return kEs.NpmHttpFetcher}});var xEs=ips();Object.defineProperty(QR,"NpmRemapResolver",{enumerable:!0,get:function(){return xEs.NpmRemapResolver}});var GEs=PGt();Object.defineProperty(QR,"NpmSemverFetcher",{enumerable:!0,get:function(){return GEs.NpmSemverFetcher}});var FEs=ups();Object.defineProperty(QR,"NpmSemverResolver",{enumerable:!0,get:function(){return FEs.NpmSemverResolver}});var ZEs=dps();Object.defineProperty(QR,"NpmTagResolver",{enumerable:!0,get:function(){return ZEs.NpmTagResolver}});var LEs=rqr.__importStar(c0e());QR.npmConfigUtils=LEs;var FVl=rqr.__importStar(SGe());QR.npmHttpUtils=FVl;var ZVl=rqr.__importStar(NEs());QR.npmPublishUtils=ZVl;var tqr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:jO.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:jO.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:jO.SettingsType.SECRET,default:null}},DEs={npmAuditRegistry:{description:"Registry to query for audit reports",type:jO.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:jO.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:jO.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},LVl={npmMinimalAgeGate:{description:"Minimum age of a package version according to the publish date on the npm registry to be considered for installation",type:jO.SettingsType.DURATION,unit:jO.DurationUnit.MINUTES,default:"0m"},npmPreapprovedPackages:{description:"Array of package descriptors or package name glob patterns to exclude from the minimum release age check",type:jO.SettingsType.STRING,isArray:!0,default:[]}},VVl={configuration:{...tqr,...DEs,...LVl,npmScopes:{description:"Settings per package scope",type:jO.SettingsType.MAP,valueDefinition:{description:"",type:jO.SettingsType.SHAPE,properties:{...tqr,...DEs}}},npmRegistries:{description:"Settings per registry",type:jO.SettingsType.MAP,normalizeKeys:LEs.normalizeRegistry,valueDefinition:{description:"",type:jO.SettingsType.SHAPE,properties:{...tqr}}}},fetchers:[kEs.NpmHttpFetcher,GEs.NpmSemverFetcher],resolvers:[xEs.NpmRemapResolver,FEs.NpmSemverResolver,ZEs.NpmTagResolver]};QR.default=VVl});var k9t=H(OFe=>{"use strict";Object.defineProperty(OFe,"__esModule",{value:!0});OFe.Severity=OFe.Environment=void 0;var VEs;(function(e){e.All="all",e.Production="production",e.Development="development"})(VEs||(OFe.Environment=VEs={}));var PEs;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(PEs||(OFe.Severity=PEs={}))});var nqr=H(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.allSeverities=void 0;oJ.getSeverityInclusions=WVl;oJ.getReportTree=OVl;oJ.getTopLevelDependencies=MVl;oJ.getPackages=HVl;var WEs=(Pa(),vi(Va)),QE=Sn(),PVl=WEs.__importDefault(UC()),pre=WEs.__importStar(k9t());oJ.allSeverities=[pre.Severity.Info,pre.Severity.Low,pre.Severity.Moderate,pre.Severity.High,pre.Severity.Critical];function WVl(e){if(typeof e>"u")return new Set(oJ.allSeverities);let t=oJ.allSeverities.indexOf(e),r=oJ.allSeverities.slice(t);return new Set(r)}function OVl(e){let t={},r={children:t};for(let[n,a]of QE.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of QE.miscUtils.sortMap(a,l=>`${l.id}`))t[`${n}/${o.id}`]={value:QE.formatUtils.tuple(QE.formatUtils.Type.IDENT,QE.structUtils.parseIdent(n)),children:{ID:typeof o.id<"u"&&{label:"ID",value:QE.formatUtils.tuple(QE.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:QE.formatUtils.tuple(QE.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:QE.formatUtils.tuple(QE.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:QE.formatUtils.tuple(QE.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:QE.formatUtils.tuple(QE.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort(PVl.default.compare).map(l=>({value:QE.formatUtils.tuple(QE.formatUtils.Type.REFERENCE,l)}))},Dependents:{label:"Dependents",children:QE.miscUtils.sortMap(o.dependents,l=>QE.structUtils.stringifyLocator(l)).map(l=>({value:QE.formatUtils.tuple(QE.formatUtils.Type.LOCATOR,l)}))}}};return r}function MVl(e,t,{all:r,environment:n}){let a=[],o=r?e.workspaces:[t],l=[pre.Environment.All,pre.Environment.Production].includes(n),A=[pre.Environment.All,pre.Environment.Development].includes(n);for(let f of o)for(let I of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(I.identHash)?!A:!l)||a.push({workspace:f,dependency:I});return a}function HVl(e,t,{recursive:r}){let n=new Map,a=new Set,o=[],l=e.configuration.makeResolver(),A={project:e,resolver:l},f=(I,C)=>{let b=e.storedResolutions.get(C.descriptorHash);if(typeof b>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(b))a.add(b);else return;let E=e.storedPackages.get(b);if(typeof E>"u")throw new Error("Assertion failed: The package should have been registered");let N=QE.structUtils.ensureDevirtualizedDescriptor(C);if(l.supportsDescriptor(N,A)){let F=l.getResolutionDependencies(N,A);if(Object.keys(F).length>0)for(let Q of Object.values(F))f(I,Q)}if(QE.structUtils.ensureDevirtualizedLocator(E).reference.startsWith("npm:")&&E.version!==null){let F=QE.structUtils.stringifyIdent(E),Q=QE.miscUtils.getMapWithDefault(n,F);QE.miscUtils.getArrayWithDefault(Q,E.version).push(I)}if(r)for(let F of E.dependencies.values())o.push([E,F])};for(let{workspace:I,dependency:C}of t)o.push([I.anchoredLocator,C]);for(;o.length>0;){let[I,C]=o.shift();f(I,C)}return n}});var YEs=H(iqr=>{"use strict";Object.defineProperty(iqr,"__esModule",{value:!0});var G9t=(Pa(),vi(Va)),OEs=el(),H6=Sn(),YVl=Sn(),x9t=sJ(),fre=($c(),vi(rg)),MEs=G9t.__importDefault(Ek()),HEs=G9t.__importStar((CZ(),vi(mZ))),Qze=G9t.__importStar(k9t()),Xze=G9t.__importStar(nqr()),Jze=class extends OEs.BaseCommand{constructor(){super(...arguments),this.all=fre.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=fre.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=fre.Option.String("--environment",Qze.Environment.All,{description:"Which environments to cover",validator:HEs.isEnum(Qze.Environment)}),this.json=fre.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=fre.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=fre.Option.String("--severity",Qze.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:HEs.isEnum(Qze.Severity)}),this.excludes=fre.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=fre.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await H6.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await H6.Project.find(t,this.context.cwd);if(!n)throw new OEs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=Xze.getTopLevelDependencies(r,n,{all:this.all,environment:this.environment}),o=Xze.getPackages(r,a,{recursive:this.recursive}),l=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),A=Object.create(null);for(let[F,Q]of o)l.some(X=>MEs.default.isMatch(F,X))||(A[F]=[...Q.keys()]);let f=x9t.npmConfigUtils.getAuditRegistry({configuration:t}),I,C=await H6.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let F=x9t.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",A,{authType:x9t.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),Q=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(A),async([ae,ne])=>{let ce=await x9t.npmHttpUtils.getPackageMetadata(YVl.structUtils.parseIdent(ae),{project:r});return H6.miscUtils.mapAndFilter(ne,fe=>{let{deprecated:ue}=ce.versions[fe];return ue?[ae,fe,ue]:H6.miscUtils.mapAndFilter.skip})})),X=await F;for(let[ae,ne,ce]of Q.flat(1))Object.hasOwn(X,ae)&&X[ae].some(fe=>H6.semverUtils.satisfiesWithPrereleases(ne,fe.vulnerable_versions))||(X[ae]??=[],X[ae].push({id:`${ae} (deprecation)`,title:(typeof ce=="string"?ce:"").trim()||"This package has been deprecated.",severity:Qze.Severity.Moderate,vulnerable_versions:ne}));I=X});if(C.hasErrors())return C.exitCode();let b=Xze.getSeverityInclusions(this.severity),E=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),N=Object.create(null);for(let[F,Q]of Object.entries(I)){let X=Q.filter(ae=>!MEs.default.isMatch(`${ae.id}`,E)&&b.has(ae.severity));X.length>0&&(N[F]=X.map(ae=>{let ne=o.get(F);if(typeof ne>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ce=[...ne.keys()].filter(ue=>H6.semverUtils.satisfiesWithPrereleases(ue,ae.vulnerable_versions)),fe=new Map;for(let ue of ce)for(let de of ne.get(ue))fe.set(de.locatorHash,de);return{...ae,versions:ce,dependents:[...fe.values()]}}))}let B=Object.keys(N).length>0;return B?(H6.treeUtils.emitTree(Xze.getReportTree(N),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await H6.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async F=>{F.reportInfo(H6.MessageName.EXCEPTION,"No audit suggestions")}),B?1:0)}};Jze.paths=[["npm","audit"]];Jze.usage=fre.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` +`+o),e.push(a+"m+"+l9t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=TLl()+t+" "+e[0]}function TLl(){return wD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function RLl(...e){return process.stderr.write(c9t.formatWithOptions(wD.inspectOpts,...e)+` +`)}function NLl(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function DLl(){return process.env.DEBUG}function kLl(e){e.inspectOpts={};let t=Object.keys(wD.inspectOpts);for(let r=0;rt.trim()).join(" ")};Hbs.O=function(e){return this.inspectOpts.colors=this.useColors,c9t.inspect(e,this.inspectOpts)}});var lzr=H((Rcg,czr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?czr.exports=Mbs():czr.exports=Ybs()});var g9t=H(nB=>{"use strict";Object.defineProperty(nB,"__esModule",{value:!0});nB.DownloadHTTPError=nB.DownloadLengthMismatchError=nB.DownloadError=nB.ExpiredMetadataError=nB.EqualVersionError=nB.BadVersionError=nB.RepositoryError=nB.PersistError=nB.RuntimeError=nB.ValueError=void 0;var uzr=class extends Error{};nB.ValueError=uzr;var gzr=class extends Error{};nB.RuntimeError=gzr;var Azr=class extends Error{};nB.PersistError=Azr;var Pze=class extends Error{};nB.RepositoryError=Pze;var u9t=class extends Pze{};nB.BadVersionError=u9t;var dzr=class extends u9t{};nB.EqualVersionError=dzr;var pzr=class extends Pze{};nB.ExpiredMetadataError=pzr;var Wze=class extends Error{};nB.DownloadError=Wze;var fzr=class extends Wze{};nB.DownloadLengthMismatchError=fzr;var Izr=class extends Wze{statusCode;constructor(t,r){super(t),this.statusCode=r}};nB.DownloadHTTPError=Izr});var Xbs=H(xFe=>{"use strict";var mzr=xFe&&xFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xFe,"__esModule",{value:!0});xFe.withTempFile=void 0;var hzr=mzr(wt("fs/promises")),xLl=mzr(wt("os")),Qbs=mzr(wt("path")),GLl=async e=>FLl(async t=>e(Qbs.default.join(t,"tempfile")));xFe.withTempFile=GLl;var FLl=async e=>{let t=await hzr.default.realpath(xLl.default.tmpdir()),r=await hzr.default.mkdtemp(t+Qbs.default.sep);try{return await e(r)}finally{await hzr.default.rm(r,{force:!0,recursive:!0,maxRetries:3})}}});var _zr=H($ue=>{"use strict";var d9t=$ue&&$ue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($ue,"__esModule",{value:!0});$ue.DefaultFetcher=$ue.BaseFetcher=void 0;var ZLl=d9t(lzr()),Jbs=d9t(wt("fs")),LLl=d9t(BLt()),VLl=d9t(wt("util")),Ubs=g9t(),PLl=Xbs(),WLl=(0,ZLl.default)("tuf:fetch"),A9t=class{async downloadFile(t,r,n){return(0,PLl.withTempFile)(async a=>{let o=await this.fetch(t),l=0,A=Jbs.default.createWriteStream(a);try{for await(let f of o){if(l+=f.length,l>r)throw new Ubs.DownloadLengthMismatchError("Max length reached");await OLl(A,f)}}finally{await VLl.default.promisify(A.close).bind(A)()}return n(a)})}async downloadBytes(t,r){return this.downloadFile(t,r,async n=>{let a=Jbs.default.createReadStream(n),o=[];for await(let l of a)o.push(l);return Buffer.concat(o)})}};$ue.BaseFetcher=A9t;var Czr=class extends A9t{timeout;retry;constructor(t={}){super(),this.timeout=t.timeout,this.retry=t.retry}async fetch(t){WLl("GET %s",t);let r=await(0,LLl.default)(t,{timeout:this.timeout,retry:this.retry});if(!r.ok||!r?.body)throw new Ubs.DownloadHTTPError("Failed to download",r.status);return r.body}};$ue.DefaultFetcher=Czr;var OLl=async(e,t)=>new Promise((r,n)=>{e.write(t,a=>{a&&n(a),r(!0)})})});var Kbs=H(p9t=>{"use strict";Object.defineProperty(p9t,"__esModule",{value:!0});p9t.defaultConfig=void 0;p9t.defaultConfig={maxRootRotations:256,maxDelegations:32,rootMaxLength:512e3,timestampMaxLength:16384,snapshotMaxLength:2e6,targetsMaxLength:5e6,prefixTargetsWithHash:!0,fetchTimeout:1e5,fetchRetries:void 0,fetchRetry:2}});var jbs=H(f9t=>{"use strict";Object.defineProperty(f9t,"__esModule",{value:!0});f9t.TrustedMetadataStore=void 0;var wT=o9t(),OS=g9t(),yzr=class{trustedSet={};referenceTime;constructor(t){this.referenceTime=new Date,this.loadTrustedRoot(t)}get root(){if(!this.trustedSet.root)throw new ReferenceError("No trusted root metadata");return this.trustedSet.root}get timestamp(){return this.trustedSet.timestamp}get snapshot(){return this.trustedSet.snapshot}get targets(){return this.trustedSet.targets}getRole(t){return this.trustedSet[t]}updateRoot(t){let r=JSON.parse(t.toString("utf8")),n=wT.Metadata.fromJSON(wT.MetadataKind.Root,r);if(n.signed.type!=wT.MetadataKind.Root)throw new OS.RepositoryError(`Expected 'root', got ${n.signed.type}`);if(this.root.verifyDelegate(wT.MetadataKind.Root,n),n.signed.version!=this.root.signed.version+1)throw new OS.BadVersionError(`Expected version ${this.root.signed.version+1}, got ${n.signed.version}`);return n.verifyDelegate(wT.MetadataKind.Root,n),this.trustedSet.root=n,n}updateTimestamp(t){if(this.snapshot)throw new OS.RuntimeError("Cannot update timestamp after snapshot");if(this.root.signed.isExpired(this.referenceTime))throw new OS.ExpiredMetadataError("Final root.json is expired");let r=JSON.parse(t.toString("utf8")),n=wT.Metadata.fromJSON(wT.MetadataKind.Timestamp,r);if(n.signed.type!=wT.MetadataKind.Timestamp)throw new OS.RepositoryError(`Expected 'timestamp', got ${n.signed.type}`);if(this.root.verifyDelegate(wT.MetadataKind.Timestamp,n),this.timestamp){if(n.signed.version{let f=o.signed.meta[l];if(!f)throw new OS.RepositoryError(`Missing file ${l} in new snapshot`);if(f.version{"use strict";Object.defineProperty(bzr,"__esModule",{value:!0});bzr.join=HLl;var MLl=wt("url");function HLl(e,t){return new MLl.URL(YLl(e)+QLl(t)).toString()}function YLl(e){return e.endsWith("/")?e:e+"/"}function QLl(e){return e.startsWith("/")?e.slice(1):e}});var qbs=H(qH=>{"use strict";var XLl=qH&&qH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),JLl=qH&&qH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),vzr=qH&&qH.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{await t.verify(GFe.createReadStream(f)),Ezr("WRITE %s",a),GFe.copyFileSync(f,a)}),a}async findCachedTarget(t,r){r||(r=this.generateTargetPath(t));try{if(GFe.existsSync(r))return await t.verify(GFe.createReadStream(r)),r}catch{return}}loadLocalMetadata(t){let r=I9t.join(this.dir,`${t}.json`);return Ezr("READ %s",r),GFe.readFileSync(r)}async loadRoot(){let r=this.trustedSet.root.signed.version+1,n=r+this.config.maxRootRotations;for(let a=r;a0;){let{roleName:a,parentRoleName:o}=r.pop();if(n.has(a))continue;let l=(await this.loadTargets(a,o))?.signed;if(!l)continue;let A=l.targets?.[t];if(A)return A;if(n.add(a),l.delegations){let f=[],I=l.delegations.rolesForTarget(t);for(let{role:C,terminating:b}of I)if(f.push({roleName:C,parentRoleName:a}),b){r.splice(0);break}f.reverse(),r.push(...f)}}}generateTargetPath(t){if(!this.targetDir)throw new J0e.ValueError("Target directory not set");let r=encodeURIComponent(t.path);return I9t.join(this.targetDir,r)}persistMetadata(t,r){let n=encodeURIComponent(t);try{let a=I9t.join(this.dir,`${n}.json`);Ezr("WRITE %s",a),GFe.writeFileSync(a,r.toString("utf8"))}catch(a){throw new J0e.PersistError(`Failed to persist metadata ${n} error: ${a}`)}}};qH.Updater=Szr});var $bs=H(ege=>{"use strict";Object.defineProperty(ege,"__esModule",{value:!0});ege.Updater=ege.BaseFetcher=ege.TargetFile=void 0;var $Ll=o9t();Object.defineProperty(ege,"TargetFile",{enumerable:!0,get:function(){return $Ll.TargetFile}});var e9l=_zr();Object.defineProperty(ege,"BaseFetcher",{enumerable:!0,get:function(){return e9l.BaseFetcher}});var t9l=qbs();Object.defineProperty(ege,"Updater",{enumerable:!0,get:function(){return t9l.Updater}})});var wzr=H(h9t=>{"use strict";Object.defineProperty(h9t,"__esModule",{value:!0});h9t.TUFError=void 0;var Bzr=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}};h9t.TUFError=Bzr});var eEs=H(Mze=>{"use strict";var r9l=Mze&&Mze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Mze,"__esModule",{value:!0});Mze.readTarget=i9l;var n9l=r9l(wt("fs")),m9t=wzr();async function i9l(e,t){let r=await s9l(e,t);return new Promise((n,a)=>{n9l.default.readFile(r,"utf-8",(o,l)=>{o?a(new m9t.TUFError({code:"TUF_READ_TARGET_ERROR",message:`error reading target ${r}`,cause:o})):n(l)})})}async function s9l(e,t){let r;try{r=await e.getTargetInfo(t)}catch(a){throw new m9t.TUFError({code:"TUF_REFRESH_METADATA_ERROR",message:"error refreshing TUF metadata",cause:a})}if(!r)throw new m9t.TUFError({code:"TUF_FIND_TARGET_ERROR",message:`target ${t} not found`});let n=await e.findCachedTarget(r);if(!n)try{n=await e.downloadTarget(r)}catch(a){throw new m9t.TUFError({code:"TUF_DOWNLOAD_TARGET_ERROR",message:`error downloading target ${n}`,cause:a})}return n}});var tEs=H((Wcg,o9l)=>{o9l.exports={"https://tuf-repo-cdn.sigstore.dev":{"root.json":"ewogInNpZ25hdHVyZXMiOiBbCiAgewogICAia2V5aWQiOiAiNmYyNjAwODlkNTkyM2RhZjIwMTY2Y2E2NTdjNTQzYWY2MTgzNDZhYjk3MTg4NGE5OTk2MmIwMTk4OGJiZTBjMyIsCiAgICJzaWciOiAiIgogIH0sCiAgewogICAia2V5aWQiOiAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICJzaWciOiAiMzA0NTAyMjEwMGIwYmNmMTg5Y2UxYjkzZTdkYjk2NDlkNWJlNTEyYTE4ODBjMGUzNTg4NzBlMzkzM2U0MjZjNWFmYjhhNDA2MTAwMjIwNmQyMTRiZDc5YjA5ZjQ1OGNjYzUyMWEyOTBhYTk2MGM0MTcwMTRmYzE2ZTYwNmY4MjA5MWI1ZTMxODE0ODg2YSIKICB9LAogIHsKICAgImtleWlkIjogIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAic2lnIjogIiIKICB9LAogIHsKICAgImtleWlkIjogIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAic2lnIjogIjMwNDUwMjIxMDBhOWI5ZTI5NGVjMjFiNjJkZmNhNmExNmExOWQwODQxODJjMTI1NzJlMzNkOWM0ZGNhYjUzMTdmYTFlOGE0NTlkMDIyMDY5ZjY4ZTU1ZWExZjk1YzVhMzY3YWFjN2E2MWE2NTc1N2Y5M2RhNWEwMDZhNWY0ZDFjZjk5NWJlODEyZDc2MDIiCiAgfSwKICB7CiAgICJrZXlpZCI6ICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIiwKICAgInNpZyI6ICIzMDQ0MDIyMDc4MTE3OGVjMzkxNWNiMTZhY2E3NTdkNDBlMjg0MzVhYzUzNzhkNmI0ODdhY2IxMTFkMWVlYjMzOTM5N2Y3OWEwMjIwNzgxY2NlNDhhZTQ2ZjllNDdiOTdhODQxNGZjZjQ2NmE5ODY3MjZhNTg5NmM3MmEwZTRhYmEzMTYyY2I4MjZkZCIKICB9CiBdLAogInNpZ25lZCI6IHsKICAiX3R5cGUiOiAicm9vdCIsCiAgImNvbnNpc3RlbnRfc25hcHNob3QiOiB0cnVlLAogICJleHBpcmVzIjogIjIwMjUtMDgtMTlUMTQ6MzM6MDlaIiwKICAia2V5cyI6IHsKICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVXUmlHcjUraiszSjVTc0grWnRyNW5FMkgyd083XG5CVituTzNzOTNnTGNhMThxVE96SFkxb1d5QUdEeWtNU3NHVFVCU3Q5RCtBbjBLZktzRDJtZlNNNDJRPT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2ktb25saW5lLXVyaSI6ICJnY3BrbXM6cHJvamVjdHMvc2lnc3RvcmUtcm9vdC1zaWduaW5nL2xvY2F0aW9ucy9nbG9iYWwva2V5UmluZ3Mvcm9vdC9jcnlwdG9LZXlzL3RpbWVzdGFtcC9jcnlwdG9LZXlWZXJzaW9ucy8xIgogICB9LAogICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiI6IHsKICAgICJrZXlpZF9oYXNoX2FsZ29yaXRobXMiOiBbCiAgICAgInNoYTI1NiIsCiAgICAgInNoYTUxMiIKICAgIF0sCiAgICAia2V5dHlwZSI6ICJlY2RzYSIsCiAgICAia2V5dmFsIjogewogICAgICJwdWJsaWMiOiAiLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS1cbk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRXpCelZPbUhDUG9qTVZMU0kzNjRXaWlWOE5QckRcbjZJZ1J4Vmxpc2t6L3YreTNKRVI1bWNWR2NPTmxpRGNXTUM1SjJsZkhtalBOUGhiNEg3eG04THpmU0E9PVxuLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tXG4iCiAgICB9LAogICAgInNjaGVtZSI6ICJlY2RzYS1zaGEyLW5pc3RwMjU2IiwKICAgICJ4LXR1Zi1vbi1jaS1rZXlvd25lciI6ICJAc2FudGlhZ290b3JyZXMiCiAgIH0sCiAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaW5pa1NzQVFtWWtOZUg1ZVlxL0NuSXpMYWFjT1xueGxTYWF3UURPd3FLeS90Q3F4cTV4eFBTSmMyMUs0V0loczlHeU9rS2Z6dWVZM0dJTHpjTUpaNGNXdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBib2JjYWxsYXdheSIKICAgfSwKICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUV5OFhLc21oQllESThKYzBHd3pCeGVLYXgwY201XG5TVEtFVTY1SFBGdW5VbjQxc1Q4cGkwRmpNNElrSHovWVVtd21MVU8wV3Q3bHhoajZCa0xJSzRxWUF3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQGRsb3JlbmMiCiAgIH0sCiAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFMGdocmg5Mkx3MVlyM2lkR1Y1V3FDdE1EQjhDeFxuK0Q4aGRDNHcyWkxOSXBsVlJvVkdMc2tZYTNnaGVNeU9qaUo4a1BpMTVhUTIvLzdQK29qN1V2SlBHdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBqb3NodWFnbCIKICAgfSwKICAgImU3MWE1NGQ1NDM4MzViYTg2YWRhZDk0NjAzNzljNzY0MWZiODcyNmQxNjRlYTc2NjgwMWExYzUyMmFiYTdlYTIiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVFWHN6M1NaWEZiOGpNVjQyajZwSmx5amJqUjhLXG5OM0J3b2NleHE2TE1JYjVxc1dLT1F2TE4xNk5VZWZMYzRIc3dPb3VtUnNWVmFhalNwUVM2Zm9ia1J3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQG1ubTY3OCIKICAgfQogIH0sCiAgInJvbGVzIjogewogICAicm9vdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiLAogICAgICJlNzFhNTRkNTQzODM1YmE4NmFkYWQ5NDYwMzc5Yzc2NDFmYjg3MjZkMTY0ZWE3NjY4MDFhMWM1MjJhYmE3ZWEyIiwKICAgICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiIsCiAgICAgIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIgogICAgXSwKICAgICJ0aHJlc2hvbGQiOiAzCiAgIH0sCiAgICJzbmFwc2hvdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiCiAgICBdLAogICAgInRocmVzaG9sZCI6IDEsCiAgICAieC10dWYtb24tY2ktZXhwaXJ5LXBlcmlvZCI6IDM2NTAsCiAgICAieC10dWYtb24tY2ktc2lnbmluZy1wZXJpb2QiOiAzNjUKICAgfSwKICAgInRhcmdldHMiOiB7CiAgICAia2V5aWRzIjogWwogICAgICI2ZjI2MDA4OWQ1OTIzZGFmMjAxNjZjYTY1N2M1NDNhZjYxODM0NmFiOTcxODg0YTk5OTYyYjAxOTg4YmJlMGMzIiwKICAgICAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICAgIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIiwKICAgICAiYTY4N2U1YmY0ZmFiODJiMGVlNThkNDZlMDVjOTUzNTE0NWEyYzlhZmI0NThmNDNkNDJiNDVjYTBmZGNlMmE3MCIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMwogICB9LAogICAidGltZXN0YW1wIjogewogICAgImtleWlkcyI6IFsKICAgICAiMGM4NzQzMmMzYmYwOWZkOTkxODlmZGMzMmZhNWVhZWRmNGU0YTVmYWM3YmFiNzNmYTA0YTJlMGZjNjRhZjZmNSIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMSwKICAgICJ4LXR1Zi1vbi1jaS1leHBpcnktcGVyaW9kIjogNywKICAgICJ4LXR1Zi1vbi1jaS1zaWduaW5nLXBlcmlvZCI6IDYKICAgfQogIH0sCiAgInNwZWNfdmVyc2lvbiI6ICIxLjAiLAogICJ2ZXJzaW9uIjogMTIsCiAgIngtdHVmLW9uLWNpLWV4cGlyeS1wZXJpb2QiOiAxOTcsCiAgIngtdHVmLW9uLWNpLXNpZ25pbmctcGVyaW9kIjogNDYKIH0KfQ==",targets:{"trusted_root.json":"ewogICJtZWRpYVR5cGUiOiAiYXBwbGljYXRpb24vdm5kLmRldi5zaWdzdG9yZS50cnVzdGVkcm9vdCtqc29uO3ZlcnNpb249MC4xIiwKICAidGxvZ3MiOiBbCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vcmVrb3Iuc2lnc3RvcmUuZGV2IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUyRzJZKzJ0YWJkVFY1QmNHaUJJeDBhOWZBRndya0JibUxTR3RrczRMM3FYNnlZWTB6dWZCbmhDOFVyL2l5NTVHaFdQLzlBL2JZMkxoQzMwTTkrUll0dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDEtMTJUMTE6NTM6MjcuMDAwWiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAid05JOWF0UUdseitWV2ZPNkxSeWdINFFVZlkvOFc0UkZ3aVQ1aTVXUmdCMD0iCiAgICAgIH0KICAgIH0KICBdLAogICJjZXJ0aWZpY2F0ZUF1dGhvcml0aWVzIjogWwogICAgewogICAgICAic3ViamVjdCI6IHsKICAgICAgICAib3JnYW5pemF0aW9uIjogInNpZ3N0b3JlLmRldiIsCiAgICAgICAgImNvbW1vbk5hbWUiOiAic2lnc3RvcmUiCiAgICAgIH0sCiAgICAgICJ1cmkiOiAiaHR0cHM6Ly9mdWxjaW8uc2lnc3RvcmUuZGV2IiwKICAgICAgImNlcnRDaGFpbiI6IHsKICAgICAgICAiY2VydGlmaWNhdGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAicmF3Qnl0ZXMiOiAiTUlJQitEQ0NBWDZnQXdJQkFnSVROVmtEWm9DaW9mUERzeTdkZm02Z2VMYnVoekFLQmdncWhrak9QUVFEQXpBcU1SVXdFd1lEVlFRS0V3eHphV2R6ZEc5eVpTNWtaWFl4RVRBUEJnTlZCQU1UQ0hOcFozTjBiM0psTUI0WERUSXhNRE13TnpBek1qQXlPVm9YRFRNeE1ESXlNekF6TWpBeU9Wb3dLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQjJNQkFHQnlxR1NNNDlBZ0VHQlN1QkJBQWlBMklBQkxTeUE3SWk1aytwTk84WkVXWTB5bGVtV0Rvd09rTmEza0wrR1pFNVo1R1dlaEw5L0E5YlJOQTNSYnJzWjVpMEpjYXN0YVJMN1NwNWZwL2pENWR4cWMvVWRUVm5sdlMxNmFuKzJZZnN3ZS9RdUxvbFJVQ3JjT0UyKzJpQTUrdHpkNk5tTUdRd0RnWURWUjBQQVFIL0JBUURBZ0VHTUJJR0ExVWRFd0VCL3dRSU1BWUJBZjhDQVFFd0hRWURWUjBPQkJZRUZNakZIUUJCbWlRcE1sRWs2dzJ1U3UxS0J0UHNNQjhHQTFVZEl3UVlNQmFBRk1qRkhRQkJtaVFwTWxFazZ3MnVTdTFLQnRQc01Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01IOGxpV0pmTXVpNnZYWEJoakRnWTRNd3NsbU4vVEp4VmUvODNXckZvbXdtTmYwNTZ5MVg0OEY5YzRtM2Ezb3pYQUl4QUtqUmF5NS9hai9qc0tLR0lrbVFhdGpJOHV1cEhyLytDeEZ2YUpXbXBZcU5rTERHUlUrOW9yemg1aEkyUnJjdWFRPT0iCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMDdUMDM6MjA6MjkuMDAwWiIsCiAgICAgICAgImVuZCI6ICIyMDIyLTEyLTMxVDIzOjU5OjU5Ljk5OVoiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJzdWJqZWN0IjogewogICAgICAgICJvcmdhbml6YXRpb24iOiAic2lnc3RvcmUuZGV2IiwKICAgICAgICAiY29tbW9uTmFtZSI6ICJzaWdzdG9yZSIKICAgICAgfSwKICAgICAgInVyaSI6ICJodHRwczovL2Z1bGNpby5zaWdzdG9yZS5kZXYiLAogICAgICAiY2VydENoYWluIjogewogICAgICAgICJjZXJ0aWZpY2F0ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNSUlDR2pDQ0FhR2dBd0lCQWdJVUFMblZpVmZuVTBickphc21Sa0hybi9VbmZhUXdDZ1lJS29aSXpqMEVBd013S2pFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUkV3RHdZRFZRUURFd2h6YVdkemRHOXlaVEFlRncweU1qQTBNVE15TURBMk1UVmFGdzB6TVRFd01EVXhNelUyTlRoYU1EY3hGVEFUQmdOVkJBb1RESE5wWjNOMGIzSmxMbVJsZGpFZU1Cd0dBMVVFQXhNVmMybG5jM1J2Y21VdGFXNTBaWEp0WldScFlYUmxNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRThSVlMveXNIK05PdnVEWnlQSVp0aWxnVUY5TmxhcllwQWQ5SFAxdkJCSDFVNUNWNzdMU1M3czBaaUg0bkU3SHY3cHRTNkx2dlIvU1RrNzk4TFZnTXpMbEo0SGVJZkYzdEhTYWV4TGNZcFNBU3Ixa1MwTi9SZ0JKei85aldDaVhubzNzd2VUQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0V3WURWUjBsQkF3d0NnWUlLd1lCQlFVSEF3TXdFZ1lEVlIwVEFRSC9CQWd3QmdFQi93SUJBREFkQmdOVkhRNEVGZ1FVMzlQcHoxWWtFWmI1cU5qcEtGV2l4aTRZWkQ4d0h3WURWUjBqQkJnd0ZvQVVXTUFlWDVGRnBXYXBlc3lRb1pNaTBDckZ4Zm93Q2dZSUtvWkl6ajBFQXdNRFp3QXdaQUl3UENzUUs0RFlpWllEUElhRGk1SEZLbmZ4WHg2QVNTVm1FUmZzeW5ZQmlYMlg2U0pSblpVODQvOURaZG5GdnZ4bUFqQk90NlFwQmxjNEovMER4dmtUQ3FwY2x2emlMNkJDQ1BuamRsSUIzUHUzQnhzUG15Z1VZN0lpMnpiZENkbGlpb3c9IgogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgInJhd0J5dGVzIjogIk1JSUI5ekNDQVh5Z0F3SUJBZ0lVQUxaTkFQRmR4SFB3amVEbG9Ed3lZQ2hBTy80d0NnWUlLb1pJemowRUF3TXdLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQWVGdzB5TVRFd01EY3hNelUyTlRsYUZ3MHpNVEV3TURVeE16VTJOVGhhTUNveEZUQVRCZ05WQkFvVERITnBaM04wYjNKbExtUmxkakVSTUE4R0ExVUVBeE1JYzJsbmMzUnZjbVV3ZGpBUUJnY3Foa2pPUFFJQkJnVXJnUVFBSWdOaUFBVDdYZUZUNHJiM1BRR3dTNElhanRMazMvT2xucGdhbmdhQmNsWXBzWUJyNWkrNHluQjA3Y2ViM0xQME9JT1pkeGV4WDY5YzVpVnV5SlJRK0h6MDV5aStVRjN1QldBbEhwaVM1c2gwK0gyR0hFN1NYcmsxRUM1bTFUcjE5TDlnZzkyall6QmhNQTRHQTFVZER3RUIvd1FFQXdJQkJqQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01CMEdBMVVkRGdRV0JCUll3QjVma1VXbFpxbDZ6SkNoa3lMUUtzWEYrakFmQmdOVkhTTUVHREFXZ0JSWXdCNWZrVVdsWnFsNnpKQ2hreUxRS3NYRitqQUtCZ2dxaGtqT1BRUURBd05wQURCbUFqRUFqMW5IZVhacCsxM05XQk5hK0VEc0RQOEcxV1dnMXRDTVdQL1dIUHFwYVZvMGpoc3dlTkZaZ1NzMGVFN3dZSTRxQWpFQTJXQjlvdDk4c0lrb0YzdlpZZGQzL1Z0V0I1YjlUTk1lYTdJeC9zdEo1VGZjTExlQUJMRTRCTkpPc1E0dm5CSEoiCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjItMDQtMTNUMjA6MDY6MTUuMDAwWiIKICAgICAgfQogICAgfQogIF0sCiAgImN0bG9ncyI6IFsKICAgIHsKICAgICAgImJhc2VVcmwiOiAiaHR0cHM6Ly9jdGZlLnNpZ3N0b3JlLmRldi90ZXN0IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUViZndSK1JKdWRYc2NnUkJScEtYMVhGRHkzUHl1ZER4ei9TZm5SaTFmVDhla3BmQmQyTzF1b3o3anIzWjhuS3p4QTY5RVVRK2VGQ0ZJM3pldWJQV1U3dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMTRUMDA6MDA6MDAuMDAwWiIsCiAgICAgICAgICAiZW5kIjogIjIwMjItMTAtMzFUMjM6NTk6NTkuOTk5WiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAiQ0dDUzhDaFMvMmhGMGRGcko0U2NSV2NZckJZOXd6alNiZWE4SWdZMmIzST0iCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vY3RmZS5zaWdzdG9yZS5kZXYvMjAyMiIsCiAgICAgICJoYXNoQWxnb3JpdGhtIjogIlNIQTJfMjU2IiwKICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAicmF3Qnl0ZXMiOiAiTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaVBTbEZpMENtRlRmRWpDVXFGOUh1Q0VjWVhOS0FhWWFsSUptQlo4eXllelBqVHFoeHJLQnBNbmFvY1Z0TEpCSTFlTTN1WG5RelFHQUpkSjRnczlGeXc9PSIsCiAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICJzdGFydCI6ICIyMDIyLTEwLTIwVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgfQogICAgICB9LAogICAgICAibG9nSWQiOiB7CiAgICAgICAgImtleUlkIjogIjNUMHdhc2JIRVRKakdSNGNtV2MzQXFKS1hyamVQSzMvaDRweWdDOHA3bzQ9IgogICAgICB9CiAgICB9CiAgXQp9Cg==","registry.npmjs.org%2Fkeys.json":"ewogICAgImtleXMiOiBbCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OmpsM2J3c3d1ODBQampva0NnaDBvMnc1YzJVNExoUUFFNTdnajljejFrekEiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTFPbGIzek1BRkZ4WEtIaUlrUU81Y0ozWWhsNWk2VVBwK0lodXRlQkpidUhjQTVVb2dLbzBFV3RsV3dXNktTYUtvVE5FWUw3SmxDUWlWbmtoQmt0VWdnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIxOTk5LTAxLTAxVDAwOjAwOjAwLjAwMFoiLAogICAgICAgICAgICAgICAgICAgICJlbmQiOiAiMjAyNS0wMS0yOVQwMDowMDowMC4wMDBaIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgICJrZXlJZCI6ICJTSEEyNTY6amwzYndzd3U4MFBqam9rQ2doMG8ydzVjMlU0TGhRQUU1N2dqOWN6MWt6QSIsCiAgICAgICAgICAgICJrZXlVc2FnZSI6ICJucG06YXR0ZXN0YXRpb25zIiwKICAgICAgICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUxT2xiM3pNQUZGeFhLSGlJa1FPNWNKM1lobDVpNlVQcCtJaHV0ZUJKYnVIY0E1VW9nS28wRVd0bFd3VzZLU2FLb1RORVlMN0psQ1FpVm5raEJrdFVnZz09IiwKICAgICAgICAgICAgICAgICJrZXlEZXRhaWxzIjogIlBLSVhfRUNEU0FfUDI1Nl9TSEFfMjU2IiwKICAgICAgICAgICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICAgICAgICAgICAic3RhcnQiOiAiMjAyMi0xMi0wMVQwMDowMDowMC4wMDBaIiwKICAgICAgICAgICAgICAgICAgICAiZW5kIjogIjIwMjUtMDEtMjlUMDA6MDA6MDAuMDAwWiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OkRoUTh3UjVBUEJ2RkhMRi8rVGMrQVl2UE9kVHBjSURxT2h4c0JIUndDN1UiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgImtleUlkIjogIlNIQTI1NjpEaFE4d1I1QVBCdkZITEYvK1RjK0FZdlBPZFRwY0lEcU9oeHNCSFJ3QzdVIiwKICAgICAgICAgICAgImtleVVzYWdlIjogIm5wbTphdHRlc3RhdGlvbnMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICBdCn0K"}}}});var nEs=H(FFe=>{"use strict";var rEs=FFe&&FFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FFe,"__esModule",{value:!0});FFe.TUFClient=void 0;var tge=rEs(wt("fs")),Hze=rEs(wt("path")),a9l=$bs(),c9l=C9t(),l9l=eEs(),Rzr="targets",Tzr=class{constructor(t){let r=new URL(t.mirrorURL),n=encodeURIComponent(r.host+r.pathname.replace(/\/$/,"")),a=Hze.default.join(t.cachePath,n);u9l(a),g9l({cachePath:a,mirrorURL:t.mirrorURL,tufRootPath:t.rootPath,forceInit:t.forceInit}),this.updater=A9l({mirrorURL:t.mirrorURL,cachePath:a,forceCache:t.forceCache,retry:t.retry,timeout:t.timeout})}async refresh(){return this.updater.refresh()}getTarget(t){return(0,l9l.readTarget)(this.updater,t)}};FFe.TUFClient=Tzr;function u9l(e){let t=Hze.default.join(e,Rzr);tge.default.existsSync(e)||tge.default.mkdirSync(e,{recursive:!0}),tge.default.existsSync(t)||tge.default.mkdirSync(t)}function g9l({cachePath:e,mirrorURL:t,tufRootPath:r,forceInit:n}){let a=Hze.default.join(e,"root.json");if(!tge.default.existsSync(a)||n)if(r)tge.default.copyFileSync(r,a);else{let l=tEs()[t];if(!l)throw new c9l.TUFError({code:"TUF_INIT_CACHE_ERROR",message:`No root.json found for mirror: ${t}`});tge.default.writeFileSync(a,Buffer.from(l["root.json"],"base64")),Object.entries(l.targets).forEach(([A,f])=>{tge.default.writeFileSync(Hze.default.join(e,Rzr,A),Buffer.from(f,"base64"))})}}function A9l(e){let t={fetchTimeout:e.timeout,fetchRetry:e.retry};return new a9l.Updater({metadataBaseUrl:e.mirrorURL,targetBaseUrl:`${e.mirrorURL}/targets`,metadataDir:e.cachePath,targetDir:Hze.default.join(e.cachePath,Rzr),forceCache:e.forceCache,config:t})}});var C9t=H(pre=>{"use strict";Object.defineProperty(pre,"__esModule",{value:!0});pre.TUFError=pre.DEFAULT_MIRROR_URL=void 0;pre.getTrustedRoot=_9l;pre.initTUF=y9l;var d9l=E7e(),p9l=Mys(),f9l=nEs();pre.DEFAULT_MIRROR_URL="https://tuf-repo-cdn.sigstore.dev";var I9l="sigstore-js",h9l={retries:2},m9l=5e3,C9l="trusted_root.json";async function _9l(e={}){let r=await iEs(e).getTarget(C9l);return d9l.TrustedRoot.fromJSON(JSON.parse(r))}async function y9l(e={}){let t=iEs(e);return t.refresh().then(()=>t)}function iEs(e){return new f9l.TUFClient({cachePath:e.cachePath||(0,p9l.appDataPath)(I9l),rootPath:e.rootPath,mirrorURL:e.mirrorURL||pre.DEFAULT_MIRROR_URL,retry:e.retry??h9l,timeout:e.timeout??m9l,forceCache:e.forceCache??!1,forceInit:e.forceInit??e.force??!1})}var b9l=wzr();Object.defineProperty(pre,"TUFError",{enumerable:!0,get:function(){return b9l.TUFError}})});var sEs=H(_9t=>{"use strict";Object.defineProperty(_9t,"__esModule",{value:!0});_9t.DSSESignatureContent=void 0;var Yze=jV(),Nzr=class{constructor(t){this.env=t}compareDigest(t){return Yze.crypto.bufferEqual(t,Yze.crypto.digest("sha256",this.env.payload))}compareSignature(t){return Yze.crypto.bufferEqual(t,this.signature)}verifySignature(t){return Yze.crypto.verify(this.preAuthEncoding,t,this.signature)}get signature(){return this.env.signatures.length>0?this.env.signatures[0].sig:Buffer.from("")}get preAuthEncoding(){return Yze.dsse.preAuthEncoding(this.env.payloadType,this.env.payload)}};_9t.DSSESignatureContent=Nzr});var oEs=H(y9t=>{"use strict";Object.defineProperty(y9t,"__esModule",{value:!0});y9t.MessageSignatureContent=void 0;var Dzr=jV(),kzr=class{constructor(t,r){this.signature=t.signature,this.messageDigest=t.messageDigest.digest,this.artifact=r}compareSignature(t){return Dzr.crypto.bufferEqual(t,this.signature)}compareDigest(t){return Dzr.crypto.bufferEqual(t,this.messageDigest)}verifySignature(t){return Dzr.crypto.verify(this.artifact,t,this.signature)}};y9t.MessageSignatureContent=kzr});var cEs=H(b9t=>{"use strict";Object.defineProperty(b9t,"__esModule",{value:!0});b9t.toSignedEntity=v9l;b9t.signatureContent=aEs;var xzr=jV(),E9l=sEs(),S9l=oEs();function v9l(e,t){let{tlogEntries:r,timestampVerificationData:n}=e.verificationMaterial,a=[];for(let o of r)a.push({$case:"transparency-log",tlogEntry:o});for(let o of n?.rfc3161Timestamps??[])a.push({$case:"timestamp-authority",timestamp:xzr.RFC3161Timestamp.parse(o.signedTimestamp)});return{signature:aEs(e,t),key:B9l(e),tlogEntries:r,timestamps:a}}function aEs(e,t){switch(e.content.$case){case"dsseEnvelope":return new E9l.DSSESignatureContent(e.content.dsseEnvelope);case"messageSignature":return new S9l.MessageSignatureContent(e.content.messageSignature,t)}}function B9l(e){switch(e.verificationMaterial.content.$case){case"publicKey":return{$case:"public-key",hint:e.verificationMaterial.content.publicKey.hint};case"x509CertificateChain":return{$case:"certificate",certificate:xzr.X509Certificate.parse(e.verificationMaterial.content.x509CertificateChain.certificates[0].rawBytes)};case"certificate":return{$case:"certificate",certificate:xzr.X509Certificate.parse(e.verificationMaterial.content.certificate.rawBytes)}}}});var Ix=H(ZFe=>{"use strict";Object.defineProperty(ZFe,"__esModule",{value:!0});ZFe.PolicyError=ZFe.VerificationError=void 0;var E9t=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}},Gzr=class extends E9t{};ZFe.VerificationError=Gzr;var Fzr=class extends E9t{};ZFe.PolicyError=Fzr});var lEs=H(S9t=>{"use strict";Object.defineProperty(S9t,"__esModule",{value:!0});S9t.filterCertAuthorities=w9l;S9t.filterTLogAuthorities=T9l;function w9l(e,t){return e.filter(r=>r.validFor.start<=t&&r.validFor.end>=t)}function T9l(e,t){return e.filter(r=>t.logID&&!r.logID.equals(t.logID)?!1:r.validFor.start<=t.targetDate&&t.targetDate<=r.validFor.end)}});var K0e=H(U0e=>{"use strict";Object.defineProperty(U0e,"__esModule",{value:!0});U0e.filterTLogAuthorities=U0e.filterCertAuthorities=void 0;U0e.toTrustMaterial=N9l;var Zzr=jV(),Qze=E7e(),R9l=Ix(),Lzr=new Date(0),Vzr=new Date(864e13),AEs=lEs();Object.defineProperty(U0e,"filterCertAuthorities",{enumerable:!0,get:function(){return AEs.filterCertAuthorities}});Object.defineProperty(U0e,"filterTLogAuthorities",{enumerable:!0,get:function(){return AEs.filterTLogAuthorities}});function N9l(e,t){let r=typeof t=="function"?t:D9l(t);return{certificateAuthorities:e.certificateAuthorities.map(gEs),timestampAuthorities:e.timestampAuthorities.map(gEs),tlogs:e.tlogs.map(uEs),ctlogs:e.ctlogs.map(uEs),publicKey:r}}function uEs(e){let t=e.publicKey.keyDetails,r=t===Qze.PublicKeyDetails.PKCS1_RSA_PKCS1V5||t===Qze.PublicKeyDetails.PKIX_RSA_PKCS1V5||t===Qze.PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256||t===Qze.PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256||t===Qze.PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256?"pkcs1":"spki";return{logID:e.logId.keyId,publicKey:Zzr.crypto.createPublicKey(e.publicKey.rawBytes,r),validFor:{start:e.publicKey.validFor?.start||Lzr,end:e.publicKey.validFor?.end||Vzr}}}function gEs(e){return{certChain:e.certChain.certificates.map(t=>Zzr.X509Certificate.parse(t.rawBytes)),validFor:{start:e.validFor?.start||Lzr,end:e.validFor?.end||Vzr}}}function D9l(e){return t=>{let r=(e||{})[t];if(!r)throw new R9l.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:Zzr.crypto.createPublicKey(r.rawBytes),validFor:n=>(r.validFor?.start||Lzr)<=n&&(r.validFor?.end||Vzr)>=n}}}});var Pzr=H(Xze=>{"use strict";Object.defineProperty(Xze,"__esModule",{value:!0});Xze.CertificateChainVerifier=void 0;Xze.verifyCertificateChain=x9l;var rge=Ix(),k9l=K0e();function x9l(e,t,r){let n=(0,k9l.filterCertAuthorities)(r,e),a;for(let o of n)try{return new v9t({trustedCerts:o.certChain,untrustedCert:t,timestamp:e}).verify()}catch(l){a=l}throw new rge.VerificationError({code:"CERTIFICATE_ERROR",message:"Failed to verify certificate chain",cause:a})}var v9t=class{constructor(t){this.untrustedCert=t.untrustedCert,this.trustedCerts=t.trustedCerts,this.localCerts=G9l([...t.trustedCerts,t.untrustedCert]),this.timestamp=t.timestamp}verify(){let t=this.sort();if(this.checkPath(t),!t.every(n=>n.validForDate(this.timestamp)))throw new rge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate is not valid or expired at the specified date"});return t}sort(){let t=this.untrustedCert,r=this.buildPaths(t);if(r=r.filter(a=>a.some(o=>this.trustedCerts.includes(o))),r.length===0)throw new rge.VerificationError({code:"CERTIFICATE_ERROR",message:"no trusted certificate path found"});let n=r.reduce((a,o)=>a.length{if(n&&a.extSubjectKeyID){a.extSubjectKeyID.keyIdentifier.equals(n)&&r.push(a);return}a.subject.equals(t.issuer)&&r.push(a)}),r=r.filter(a=>{try{return t.verify(a)}catch{return!1}}),r)}checkPath(t){if(t.length<1)throw new rge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate chain must contain at least one certificate"});if(!t.slice(1).every(n=>n.isCA))throw new rge.VerificationError({code:"CERTIFICATE_ERROR",message:"intermediate certificate is not a CA"});for(let n=t.length-2;n>=0;n--)if(!t[n].issuer.equals(t[n+1].subject))throw new rge.VerificationError({code:"CERTIFICATE_ERROR",message:"incorrect certificate name chaining"});for(let n=0;n{"use strict";Object.defineProperty(Wzr,"__esModule",{value:!0});Wzr.verifySCTs=L9l;var B9t=jV(),F9l=Ix(),Z9l=K0e();function L9l(e,t,r){let n,a=e.clone();for(let f=0;f{if(!(0,Z9l.filterTLogAuthorities)(r,{logID:f.logID,targetDate:f.datetime}).some(b=>f.verify(o.buffer,b.publicKey)))throw new F9l.VerificationError({code:"CERTIFICATE_ERROR",message:"SCT verification failed"});return f.logID})}});var pEs=H(w9t=>{"use strict";Object.defineProperty(w9t,"__esModule",{value:!0});w9t.verifyPublicKey=Y9l;w9t.verifyCertificate=Q9l;var V9l=jV(),P9l=Ix(),W9l=Pzr(),O9l=dEs(),M9l="1.3.6.1.4.1.57264.1.1",H9l="1.3.6.1.4.1.57264.1.8";function Y9l(e,t,r){let n=r.publicKey(e);return t.forEach(a=>{if(!n.validFor(a))throw new P9l.VerificationError({code:"PUBLIC_KEY_ERROR",message:`Public key is not valid for timestamp: ${a.toISOString()}`})}),{key:n.publicKey}}function Q9l(e,t,r){let n=[];return t.forEach(a=>{n=(0,W9l.verifyCertificateChain)(a,e,r.certificateAuthorities)}),{scts:(0,O9l.verifySCTs)(n[0],n[1],r.ctlogs),signer:X9l(n[0])}}function X9l(e){let t,r=e.extension(H9l);r?t=r.valueObj.subs?.[0]?.value.toString("ascii"):t=e.extension(M9l)?.value.toString("ascii");let n={extensions:{issuer:t},subjectAlternativeName:e.subjectAltName};return{key:V9l.crypto.createPublicKey(e.publicKey),identity:n}}});var IEs=H(T9t=>{"use strict";Object.defineProperty(T9t,"__esModule",{value:!0});T9t.verifySubjectAlternativeName=J9l;T9t.verifyExtensions=U9l;var fEs=Ix();function J9l(e,t){if(t===void 0||!t.match(e))throw new fEs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`certificate identity error - expected ${e}, got ${t}`})}function U9l(e,t={}){let r;for(r in e)if(t[r]!==e[r])throw new fEs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`invalid certificate extension - expected ${r}=${e[r]}, got ${r}=${t[r]}`})}});var hEs=H(Qzr=>{"use strict";Object.defineProperty(Qzr,"__esModule",{value:!0});Qzr.verifyCheckpoint=z9l;var Mzr=jV(),LFe=Ix(),K9l=K0e(),Ozr=` + +`,j9l=/\u2014 (\S+) (\S+)\n/g;function z9l(e,t){let r=(0,K9l.filterTLogAuthorities)(t,{targetDate:new Date(Number(e.integratedTime)*1e3)}),n=e.inclusionProof,a=Hzr.fromString(n.checkpoint.envelope),o=Yzr.fromString(a.note);if(!q9l(a,r))throw new LFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid checkpoint signature"});if(!Mzr.crypto.bufferEqual(o.logHash,n.rootHash))throw new LFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"root hash mismatch"})}function q9l(e,t){let r=Buffer.from(e.note,"utf-8");return e.signatures.every(n=>{let a=t.find(o=>Mzr.crypto.bufferEqual(o.logID.subarray(0,4),n.keyHint));return a?Mzr.crypto.verify(r,a.publicKey,n.signature):!1})}var Hzr=class e{constructor(t,r){this.note=t,this.signatures=r}static fromString(t){if(!t.includes(Ozr))throw new LFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"missing checkpoint separator"});let r=t.indexOf(Ozr),n=t.slice(0,r+1),o=t.slice(r+Ozr.length).matchAll(j9l),l=Array.from(o,A=>{let[,f,I]=A,C=Buffer.from(I,"base64");if(C.length<5)throw new LFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"malformed checkpoint signature"});return{name:f,keyHint:C.subarray(0,4),signature:C.subarray(4)}});if(l.length===0)throw new LFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"no signatures found in checkpoint"});return new e(n,l)}},Yzr=class e{constructor(t,r,n,a){this.origin=t,this.logSize=r,this.logHash=n,this.rest=a}static fromString(t){let r=t.trimEnd().split(` +`);if(r.length<3)throw new LFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"too few lines in checkpoint header"});let n=r[0],a=BigInt(r[1]),o=Buffer.from(r[2],"base64"),l=r.slice(3);return new e(n,a,o,l)}}});var mEs=H(Kzr=>{"use strict";Object.defineProperty(Kzr,"__esModule",{value:!0});Kzr.verifyMerkleInclusion=tVl;var Uzr=jV(),Xzr=Ix(),$9l=Buffer.from([0]),eVl=Buffer.from([1]);function tVl(e){let t=e.inclusionProof,r=BigInt(t.logIndex),n=BigInt(t.treeSize);if(r<0n||r>=n)throw new Xzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:`invalid index: ${r}`});let{inner:a,border:o}=rVl(r,n);if(t.hashes.length!==a+o)throw new Xzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid hash count"});let l=t.hashes.slice(0,a),A=t.hashes.slice(a),f=cVl(e.canonicalizedBody),I=iVl(nVl(f,l,r),A);if(!Uzr.crypto.bufferEqual(I,t.rootHash))throw new Xzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"calculated root hash does not match inclusion proof"})}function rVl(e,t){let r=sVl(e,t),n=oVl(e>>BigInt(r));return{inner:r,border:n}}function nVl(e,t,r){return t.reduce((n,a,o)=>r>>BigInt(o)&BigInt(1)?Jzr(a,n):Jzr(n,a),e)}function iVl(e,t){return t.reduce((r,n)=>Jzr(n,r),e)}function sVl(e,t){return aVl(e^t-BigInt(1))}function oVl(e){return e.toString(2).split("1").length-1}function aVl(e){return e===0n?0:e.toString(2).length}function Jzr(e,t){return Uzr.crypto.digest("sha256",eVl,e,t)}function cVl(e){return Uzr.crypto.digest("sha256",$9l,e)}});var _Es=H(jzr=>{"use strict";Object.defineProperty(jzr,"__esModule",{value:!0});jzr.verifyTLogSET=gVl;var CEs=jV(),lVl=Ix(),uVl=K0e();function gVl(e,t){if(!(0,uVl.filterTLogAuthorities)(t,{logID:e.logId.keyId,targetDate:new Date(Number(e.integratedTime)*1e3)}).some(a=>{let o=AVl(e),l=Buffer.from(CEs.json.canonicalize(o),"utf8"),A=e.inclusionPromise.signedEntryTimestamp;return CEs.crypto.verify(l,a.publicKey,A)}))throw new lVl.VerificationError({code:"TLOG_INCLUSION_PROMISE_ERROR",message:"inclusion promise could not be verified"})}function AVl(e){let{integratedTime:t,logIndex:r,logId:n,canonicalizedBody:a}=e;return{body:a.toString("base64"),integratedTime:Number(t),logIndex:Number(r),logID:n.keyId.toString("hex")}}});var bEs=H(qzr=>{"use strict";Object.defineProperty(qzr,"__esModule",{value:!0});qzr.verifyRFC3161Timestamp=fVl;var zzr=jV(),yEs=Ix(),dVl=Pzr(),pVl=K0e();function fVl(e,t,r){let n=e.signingTime;if(r=(0,pVl.filterCertAuthorities)(r,n),r=hVl(r,{serialNumber:e.signerSerialNumber,issuer:e.signerIssuer}),!r.some(o=>{try{return IVl(e,t,o),!0}catch{return!1}}))throw new yEs.VerificationError({code:"TIMESTAMP_ERROR",message:"timestamp could not be verified"})}function IVl(e,t,r){let[n,...a]=r.certChain,o=zzr.crypto.createPublicKey(n.publicKey),l=e.signingTime;try{new dVl.CertificateChainVerifier({untrustedCert:n,trustedCerts:a,timestamp:l}).verify()}catch{throw new yEs.VerificationError({code:"TIMESTAMP_ERROR",message:"invalid certificate chain"})}e.verify(t,o)}function hVl(e,t){return e.filter(r=>r.certChain.length>0&&zzr.crypto.bufferEqual(r.certChain[0].serialNumber,t.serialNumber)&&zzr.crypto.bufferEqual(r.certChain[0].issuer,t.issuer))}});var EEs=H(R9t=>{"use strict";Object.defineProperty(R9t,"__esModule",{value:!0});R9t.verifyTSATimestamp=EVl;R9t.verifyTLogTimestamp=SVl;var mVl=Ix(),CVl=hEs(),_Vl=mEs(),yVl=_Es(),bVl=bEs();function EVl(e,t,r){return(0,bVl.verifyRFC3161Timestamp)(e,t,r),{type:"timestamp-authority",logID:e.signerSerialNumber,timestamp:e.signingTime}}function SVl(e,t){let r=!1;if(vVl(e)&&((0,yVl.verifyTLogSET)(e,t),r=!0),BVl(e)&&((0,_Vl.verifyMerkleInclusion)(e),(0,CVl.verifyCheckpoint)(e,t),r=!0),!r)throw new mVl.VerificationError({code:"TLOG_MISSING_INCLUSION_ERROR",message:"inclusion could not be verified"});return{type:"transparency-log",logID:e.logId.keyId,timestamp:new Date(Number(e.integratedTime)*1e3)}}function vVl(e){return e.inclusionPromise!==void 0}function BVl(e){return e.inclusionProof!==void 0}});var SEs=H($zr=>{"use strict";Object.defineProperty($zr,"__esModule",{value:!0});$zr.verifyDSSETLogBody=wVl;var N9t=Ix();function wVl(e,t){switch(e.apiVersion){case"0.0.1":return TVl(e,t);default:throw new N9t.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported dsse version: ${e.apiVersion}`})}}function TVl(e,t){if(e.spec.signatures?.length!==1)throw new N9t.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=e.spec.signatures[0].signature;if(!t.compareSignature(Buffer.from(r,"base64")))throw new N9t.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new N9t.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}});var vEs=H(tqr=>{"use strict";Object.defineProperty(tqr,"__esModule",{value:!0});tqr.verifyHashedRekordTLogBody=RVl;var eqr=Ix();function RVl(e,t){switch(e.apiVersion){case"0.0.1":return NVl(e,t);default:throw new eqr.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported hashedrekord version: ${e.apiVersion}`})}}function NVl(e,t){let r=e.spec.signature.content||"";if(!t.compareSignature(Buffer.from(r,"base64")))throw new eqr.VerificationError({code:"TLOG_BODY_ERROR",message:"signature mismatch"});let n=e.spec.data.hash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new eqr.VerificationError({code:"TLOG_BODY_ERROR",message:"digest mismatch"})}});var BEs=H(rqr=>{"use strict";Object.defineProperty(rqr,"__esModule",{value:!0});rqr.verifyIntotoTLogBody=DVl;var D9t=Ix();function DVl(e,t){switch(e.apiVersion){case"0.0.2":return kVl(e,t);default:throw new D9t.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported intoto version: ${e.apiVersion}`})}}function kVl(e,t){if(e.spec.content.envelope.signatures?.length!==1)throw new D9t.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=xVl(e.spec.content.envelope.signatures[0].sig);if(!t.compareSignature(Buffer.from(r,"base64")))throw new D9t.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.content.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new D9t.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}function xVl(e){return Buffer.from(e,"base64").toString("utf-8")}});var TEs=H(nqr=>{"use strict";Object.defineProperty(nqr,"__esModule",{value:!0});nqr.verifyTLogBody=LVl;var wEs=Ix(),GVl=SEs(),FVl=vEs(),ZVl=BEs();function LVl(e,t){let{kind:r,version:n}=e.kindVersion,a=JSON.parse(e.canonicalizedBody.toString("utf8"));if(r!==a.kind||n!==a.apiVersion)throw new wEs.VerificationError({code:"TLOG_BODY_ERROR",message:`kind/version mismatch - expected: ${r}/${n}, received: ${a.kind}/${a.apiVersion}`});switch(a.kind){case"dsse":return(0,GVl.verifyDSSETLogBody)(a,t);case"intoto":return(0,ZVl.verifyIntotoTLogBody)(a,t);case"hashedrekord":return(0,FVl.verifyHashedRekordTLogBody)(a,t);default:throw new wEs.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported kind: ${r}`})}}});var xEs=H(k9t=>{"use strict";Object.defineProperty(k9t,"__esModule",{value:!0});k9t.Verifier=void 0;var VVl=wt("util"),VFe=Ix(),REs=pEs(),NEs=IEs(),DEs=EEs(),PVl=TEs(),iqr=class{constructor(t,r={}){this.trustMaterial=t,this.options={ctlogThreshold:r.ctlogThreshold??1,tlogThreshold:r.tlogThreshold??1,tsaThreshold:r.tsaThreshold??0}}verify(t,r){let n=this.verifyTimestamps(t),a=this.verifySigningKey(t,n);return this.verifyTLogs(t),this.verifySignature(t,a),r&&this.verifyPolicy(r,a.identity||{}),a}verifyTimestamps(t){let r=0,n=0,a=t.timestamps.map(o=>{switch(o.$case){case"timestamp-authority":return n++,(0,DEs.verifyTSATimestamp)(o.timestamp,t.signature.signature,this.trustMaterial.timestampAuthorities);case"transparency-log":return r++,(0,DEs.verifyTLogTimestamp)(o.tlogEntry,this.trustMaterial.tlogs)}});if(kEs(a))throw new VFe.VerificationError({code:"TIMESTAMP_ERROR",message:"duplicate timestamp"});if(ro.timestamp)}verifySigningKey({key:t},r){switch(t.$case){case"public-key":return(0,REs.verifyPublicKey)(t.hint,r,this.trustMaterial);case"certificate":{let n=(0,REs.verifyCertificate)(t.certificate,r,this.trustMaterial);if(kEs(n.scts))throw new VFe.VerificationError({code:"CERTIFICATE_ERROR",message:"duplicate SCT"});if(n.scts.length(0,PVl.verifyTLogBody)(n,t))}verifySignature(t,r){if(!t.signature.verifySignature(r.key))throw new VFe.VerificationError({code:"SIGNATURE_ERROR",message:"signature verification failed"})}verifyPolicy(t,r){t.subjectAlternativeName&&(0,NEs.verifySubjectAlternativeName)(t.subjectAlternativeName,r.subjectAlternativeName),t.extensions&&(0,NEs.verifyExtensions)(t.extensions,r.extensions)}};k9t.Verifier=iqr;function kEs(e){for(let t=0;t{"use strict";Object.defineProperty($H,"__esModule",{value:!0});$H.Verifier=$H.toTrustMaterial=$H.VerificationError=$H.PolicyError=$H.toSignedEntity=void 0;var WVl=cEs();Object.defineProperty($H,"toSignedEntity",{enumerable:!0,get:function(){return WVl.toSignedEntity}});var GEs=Ix();Object.defineProperty($H,"PolicyError",{enumerable:!0,get:function(){return GEs.PolicyError}});Object.defineProperty($H,"VerificationError",{enumerable:!0,get:function(){return GEs.VerificationError}});var OVl=K0e();Object.defineProperty($H,"toTrustMaterial",{enumerable:!0,get:function(){return OVl.toTrustMaterial}});var MVl=xEs();Object.defineProperty($H,"Verifier",{enumerable:!0,get:function(){return MVl.Verifier}})});var FEs=H(mL=>{"use strict";Object.defineProperty(mL,"__esModule",{value:!0});mL.DEFAULT_TIMEOUT=mL.DEFAULT_RETRY=void 0;mL.createBundleBuilder=QVl;mL.createKeyFinder=XVl;mL.createVerificationPolicy=JVl;var HVl=jV(),PFe=h7r(),YVl=x9t();mL.DEFAULT_RETRY={retries:2};mL.DEFAULT_TIMEOUT=5e3;function QVl(e,t){let r={signer:UVl(t),witnesses:jVl(t)};switch(e){case"messageSignature":return new PFe.MessageSignatureBundleBuilder(r);case"dsseEnvelope":return new PFe.DSSEBundleBuilder({...r,certificateChain:t.legacyCompatibility})}}function XVl(e){return t=>{let r=e(t);if(!r)throw new YVl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:HVl.crypto.createPublicKey(r),validFor:()=>!0}}}function JVl(e){let t={},r=e.certificateIdentityEmail||e.certificateIdentityURI;return r&&(t.subjectAlternativeName=r),e.certificateIssuer&&(t.extensions={issuer:e.certificateIssuer}),t}function UVl(e){return new PFe.FulcioSigner({fulcioBaseURL:e.fulcioURL,identityProvider:e.identityProvider||KVl(e),retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})}function KVl(e){let t=e.identityToken;return t?{getToken:()=>Promise.resolve(t)}:new PFe.CIContextProvider("sigstore")}function jVl(e){let t=[];return zVl(e)&&t.push(new PFe.RekorWitness({rekorBaseURL:e.rekorURL,entryType:e.legacyCompatibility?"intoto":"dsse",fetchOnConflict:!1,retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})),qVl(e)&&t.push(new PFe.TSAWitness({tsaBaseURL:e.tsaServerURL,retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})),t}function zVl(e){return e.tlogUpload!==!1}function qVl(e){return e.tsaServerURL!==void 0}});var VEs=H(eY=>{"use strict";var $Vl=eY&&eY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ePl=eY&&eY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ZEs=eY&&eY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aa.verify(e,n))}async function LEs(e={}){let t=await tPl.getTrustedRoot({mirrorURL:e.tufMirrorURL,rootPath:e.tufRootPath,cachePath:e.tufCachePath,forceCache:e.tufForceCache,retry:e.retry??WFe.DEFAULT_RETRY,timeout:e.timeout??WFe.DEFAULT_TIMEOUT}),r=e.keySelector?WFe.createKeyFinder(e.keySelector):void 0,n=(0,sqr.toTrustMaterial)(t,r),a={ctlogThreshold:e.ctLogThreshold,tlogThreshold:e.tlogThreshold},o=new sqr.Verifier(n,a),l=WFe.createVerificationPolicy(e);return{verify:(A,f)=>{let I=(0,oqr.bundleFromJSON)(A),C=(0,sqr.toSignedEntity)(I,f);o.verify(C,l)}}}});var WEs=H(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.verify=O2.sign=O2.createVerifier=O2.attest=O2.VerificationError=O2.PolicyError=O2.TUFError=O2.InternalError=O2.DEFAULT_REKOR_URL=O2.DEFAULT_FULCIO_URL=O2.ValidationError=void 0;var sPl=v7e();Object.defineProperty(O2,"ValidationError",{enumerable:!0,get:function(){return sPl.ValidationError}});var aqr=h7r();Object.defineProperty(O2,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return aqr.DEFAULT_FULCIO_URL}});Object.defineProperty(O2,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return aqr.DEFAULT_REKOR_URL}});Object.defineProperty(O2,"InternalError",{enumerable:!0,get:function(){return aqr.InternalError}});var oPl=C9t();Object.defineProperty(O2,"TUFError",{enumerable:!0,get:function(){return oPl.TUFError}});var PEs=x9t();Object.defineProperty(O2,"PolicyError",{enumerable:!0,get:function(){return PEs.PolicyError}});Object.defineProperty(O2,"VerificationError",{enumerable:!0,get:function(){return PEs.VerificationError}});var G9t=VEs();Object.defineProperty(O2,"attest",{enumerable:!0,get:function(){return G9t.attest}});Object.defineProperty(O2,"createVerifier",{enumerable:!0,get:function(){return G9t.createVerifier}});Object.defineProperty(O2,"sign",{enumerable:!0,get:function(){return G9t.sign}});Object.defineProperty(O2,"verify",{enumerable:!0,get:function(){return G9t.verify}})});var OEs=H(F9t=>{"use strict";Object.defineProperty(F9t,"__esModule",{value:!0});F9t.generateProvenance=void 0;var aPl=(Pa(),vi(Va)),OFe=yn(),cPl=aPl.__importStar(WEs()),{env:zc}=process,lPl="application/vnd.in-toto+json",uPl="https://in-toto.io/Statement/v0.1",gPl="https://in-toto.io/Statement/v1",APl="https://slsa.dev/provenance/v0.2",dPl="https://slsa.dev/provenance/v1",pPl="https://github.com/actions/runner",fPl="https://slsa-framework.github.io/github-actions-buildtypes/workflow/v1",IPl="https://github.com/npm/cli/gitlab",hPl="v0alpha1",mPl=async(e,t)=>{let r;if(zc.GITHUB_ACTIONS){if(!zc.ACTIONS_ID_TOKEN_REQUEST_URL)throw new OFe.ReportError(OFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,'Provenance generation in GitHub Actions requires "write" access to the "id-token" permission');let n=(zc.GITHUB_WORKFLOW_REF||"").replace(`${zc.GITHUB_REPOSITORY}/`,""),a=n.indexOf("@"),o=n.slice(0,a),l=n.slice(a+1);r={_type:gPl,subject:e,predicateType:dPl,predicate:{buildDefinition:{buildType:fPl,externalParameters:{workflow:{ref:l,repository:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}`,path:o}},internalParameters:{github:{event_name:zc.GITHUB_EVENT_NAME,repository_id:zc.GITHUB_REPOSITORY_ID,repository_owner_id:zc.GITHUB_REPOSITORY_OWNER_ID}},resolvedDependencies:[{uri:`git+${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}@${zc.GITHUB_REF}`,digest:{gitCommit:zc.GITHUB_SHA}}]},runDetails:{builder:{id:`${pPl}/${zc.RUNNER_ENVIRONMENT}`},metadata:{invocationId:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}/actions/runs/${zc.GITHUB_RUN_ID}/attempts/${zc.GITHUB_RUN_ATTEMPT}`}}}}}else if(zc.GITLAB_CI){if(!zc.SIGSTORE_ID_TOKEN)throw new OFe.ReportError(OFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,`Provenance generation in GitLab CI requires "SIGSTORE_ID_TOKEN" with "sigstore" audience to be present in "id_tokens". For more info see: +https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:uPl,subject:e,predicateType:APl,predicate:{buildType:`${IPl}/${hPl}`,builder:{id:`${zc.CI_PROJECT_URL}/-/runners/${zc.CI_RUNNER_ID}`},invocation:{configSource:{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA},entryPoint:zc.CI_JOB_NAME},parameters:{CI:zc.CI,CI_API_GRAPHQL_URL:zc.CI_API_GRAPHQL_URL,CI_API_V4_URL:zc.CI_API_V4_URL,CI_BUILD_BEFORE_SHA:zc.CI_BUILD_BEFORE_SHA,CI_BUILD_ID:zc.CI_BUILD_ID,CI_BUILD_NAME:zc.CI_BUILD_NAME,CI_BUILD_REF:zc.CI_BUILD_REF,CI_BUILD_REF_NAME:zc.CI_BUILD_REF_NAME,CI_BUILD_REF_SLUG:zc.CI_BUILD_REF_SLUG,CI_BUILD_STAGE:zc.CI_BUILD_STAGE,CI_COMMIT_BEFORE_SHA:zc.CI_COMMIT_BEFORE_SHA,CI_COMMIT_BRANCH:zc.CI_COMMIT_BRANCH,CI_COMMIT_REF_NAME:zc.CI_COMMIT_REF_NAME,CI_COMMIT_REF_PROTECTED:zc.CI_COMMIT_REF_PROTECTED,CI_COMMIT_REF_SLUG:zc.CI_COMMIT_REF_SLUG,CI_COMMIT_SHA:zc.CI_COMMIT_SHA,CI_COMMIT_SHORT_SHA:zc.CI_COMMIT_SHORT_SHA,CI_COMMIT_TIMESTAMP:zc.CI_COMMIT_TIMESTAMP,CI_COMMIT_TITLE:zc.CI_COMMIT_TITLE,CI_CONFIG_PATH:zc.CI_CONFIG_PATH,CI_DEFAULT_BRANCH:zc.CI_DEFAULT_BRANCH,CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_SERVER:zc.CI_DEPENDENCY_PROXY_SERVER,CI_DEPENDENCY_PROXY_USER:zc.CI_DEPENDENCY_PROXY_USER,CI_JOB_ID:zc.CI_JOB_ID,CI_JOB_NAME:zc.CI_JOB_NAME,CI_JOB_NAME_SLUG:zc.CI_JOB_NAME_SLUG,CI_JOB_STAGE:zc.CI_JOB_STAGE,CI_JOB_STARTED_AT:zc.CI_JOB_STARTED_AT,CI_JOB_URL:zc.CI_JOB_URL,CI_NODE_TOTAL:zc.CI_NODE_TOTAL,CI_PAGES_DOMAIN:zc.CI_PAGES_DOMAIN,CI_PAGES_URL:zc.CI_PAGES_URL,CI_PIPELINE_CREATED_AT:zc.CI_PIPELINE_CREATED_AT,CI_PIPELINE_ID:zc.CI_PIPELINE_ID,CI_PIPELINE_IID:zc.CI_PIPELINE_IID,CI_PIPELINE_SOURCE:zc.CI_PIPELINE_SOURCE,CI_PIPELINE_URL:zc.CI_PIPELINE_URL,CI_PROJECT_CLASSIFICATION_LABEL:zc.CI_PROJECT_CLASSIFICATION_LABEL,CI_PROJECT_DESCRIPTION:zc.CI_PROJECT_DESCRIPTION,CI_PROJECT_ID:zc.CI_PROJECT_ID,CI_PROJECT_NAME:zc.CI_PROJECT_NAME,CI_PROJECT_NAMESPACE:zc.CI_PROJECT_NAMESPACE,CI_PROJECT_NAMESPACE_ID:zc.CI_PROJECT_NAMESPACE_ID,CI_PROJECT_PATH:zc.CI_PROJECT_PATH,CI_PROJECT_PATH_SLUG:zc.CI_PROJECT_PATH_SLUG,CI_PROJECT_REPOSITORY_LANGUAGES:zc.CI_PROJECT_REPOSITORY_LANGUAGES,CI_PROJECT_ROOT_NAMESPACE:zc.CI_PROJECT_ROOT_NAMESPACE,CI_PROJECT_TITLE:zc.CI_PROJECT_TITLE,CI_PROJECT_URL:zc.CI_PROJECT_URL,CI_PROJECT_VISIBILITY:zc.CI_PROJECT_VISIBILITY,CI_REGISTRY:zc.CI_REGISTRY,CI_REGISTRY_IMAGE:zc.CI_REGISTRY_IMAGE,CI_REGISTRY_USER:zc.CI_REGISTRY_USER,CI_RUNNER_DESCRIPTION:zc.CI_RUNNER_DESCRIPTION,CI_RUNNER_ID:zc.CI_RUNNER_ID,CI_RUNNER_TAGS:zc.CI_RUNNER_TAGS,CI_SERVER_HOST:zc.CI_SERVER_HOST,CI_SERVER_NAME:zc.CI_SERVER_NAME,CI_SERVER_PORT:zc.CI_SERVER_PORT,CI_SERVER_PROTOCOL:zc.CI_SERVER_PROTOCOL,CI_SERVER_REVISION:zc.CI_SERVER_REVISION,CI_SERVER_SHELL_SSH_HOST:zc.CI_SERVER_SHELL_SSH_HOST,CI_SERVER_SHELL_SSH_PORT:zc.CI_SERVER_SHELL_SSH_PORT,CI_SERVER_URL:zc.CI_SERVER_URL,CI_SERVER_VERSION:zc.CI_SERVER_VERSION,CI_SERVER_VERSION_MAJOR:zc.CI_SERVER_VERSION_MAJOR,CI_SERVER_VERSION_MINOR:zc.CI_SERVER_VERSION_MINOR,CI_SERVER_VERSION_PATCH:zc.CI_SERVER_VERSION_PATCH,CI_TEMPLATE_REGISTRY_HOST:zc.CI_TEMPLATE_REGISTRY_HOST,GITLAB_CI:zc.GITLAB_CI,GITLAB_FEATURES:zc.GITLAB_FEATURES,GITLAB_USER_ID:zc.GITLAB_USER_ID,GITLAB_USER_LOGIN:zc.GITLAB_USER_LOGIN,RUNNER_GENERATE_ARTIFACTS_METADATA:zc.RUNNER_GENERATE_ARTIFACTS_METADATA},environment:{name:zc.CI_RUNNER_DESCRIPTION,architecture:zc.CI_RUNNER_EXECUTABLE_ARCH,server:zc.CI_SERVER_URL,project:zc.CI_PROJECT_PATH,job:{id:zc.CI_JOB_ID},pipeline:{id:zc.CI_PIPELINE_ID,ref:zc.CI_CONFIG_PATH}}},metadata:{buildInvocationId:`${zc.CI_JOB_URL}`,completeness:{parameters:!0,environment:!0,materials:!1},reproducible:!1},materials:[{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA}}]}}}else throw new OFe.ReportError(OFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,"Provenance generation is only supported in GitHub Actions and GitLab CI");return cPl.attest(Buffer.from(JSON.stringify(r)),lPl,t)};F9t.generateProvenance=mPl});var XEs=H(MFe=>{"use strict";Object.defineProperty(MFe,"__esModule",{value:!0});MFe.makePublishBody=vPl;MFe.getGitHead=BPl;MFe.getPublishAccess=YEs;MFe.getReadmeContent=QEs;var CPl=(Pa(),vi(Va)),_Pl=yn(),HEs=yn(),MEs=zs(),yPl=eme(),bPl=CPl.__importDefault(Ute()),EPl=l0e(),SPl=OEs();async function vPl(e,t,{access:r,tag:n,registry:a,gitHead:o,provenance:l}){let A=e.manifest.name,f=e.manifest.version,I=HEs.structUtils.stringifyIdent(A),C=bPl.default.fromData(t,{algorithms:["sha1","sha512"]}),b=r??YEs(e,A),E=await QEs(e),N=await yPl.packUtils.genPackageManifest(e),B=`${I}-${f}.tgz`,F=new URL(`${(0,EPl.normalizeRegistry)(a)}/${I}/-/${B}`),Q={[B]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}};if(l){let X={name:`pkg:npm/${I.replace(/^@/,"%40")}@${f}`,digest:{sha512:C.sha512[0].hexDigest()}},ae=await(0,SPl.generateProvenance)([X]),ne=JSON.stringify(ae);Q[`${I}-${f}.sigstore`]={content_type:ae.mediaType,data:ne,length:ne.length}}return{_id:I,_attachments:Q,name:I,access:b,"dist-tags":{[n]:f},versions:{[f]:{...N,_id:`${I}@${f}`,name:I,version:f,gitHead:o,dist:{shasum:C.sha1[0].hexDigest(),integrity:C.sha512[0].toString(),tarball:F.toString()}}},readme:E}}async function BPl(e){try{let{stdout:t}=await _Pl.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}function YEs(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}async function QEs(e){let t=MEs.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${HEs.structUtils.stringifyIdent(r)} +`;try{a=await MEs.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}});var sJ=H(QR=>{"use strict";Object.defineProperty(QR,"__esModule",{value:!0});QR.NpmTagResolver=QR.NpmSemverResolver=QR.NpmSemverFetcher=QR.NpmRemapResolver=QR.NpmHttpFetcher=QR.npmPublishUtils=QR.npmHttpUtils=QR.npmConfigUtils=void 0;var lqr=(Pa(),vi(Va)),jO=yn(),UEs=Cps();Object.defineProperty(QR,"NpmHttpFetcher",{enumerable:!0,get:function(){return UEs.NpmHttpFetcher}});var KEs=_ps();Object.defineProperty(QR,"NpmRemapResolver",{enumerable:!0,get:function(){return KEs.NpmRemapResolver}});var jEs=HGt();Object.defineProperty(QR,"NpmSemverFetcher",{enumerable:!0,get:function(){return jEs.NpmSemverFetcher}});var zEs=Bps();Object.defineProperty(QR,"NpmSemverResolver",{enumerable:!0,get:function(){return zEs.NpmSemverResolver}});var qEs=Rps();Object.defineProperty(QR,"NpmTagResolver",{enumerable:!0,get:function(){return qEs.NpmTagResolver}});var $Es=lqr.__importStar(l0e());QR.npmConfigUtils=$Es;var wPl=lqr.__importStar(BGe());QR.npmHttpUtils=wPl;var TPl=lqr.__importStar(XEs());QR.npmPublishUtils=TPl;var cqr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:jO.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:jO.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:jO.SettingsType.SECRET,default:null}},JEs={npmAuditRegistry:{description:"Registry to query for audit reports",type:jO.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:jO.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:jO.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},RPl={npmMinimalAgeGate:{description:"Minimum age of a package version according to the publish date on the npm registry to be considered for installation",type:jO.SettingsType.DURATION,unit:jO.DurationUnit.MINUTES,default:"0m"},npmPreapprovedPackages:{description:"Array of package descriptors or package name glob patterns to exclude from the minimum release age check",type:jO.SettingsType.STRING,isArray:!0,default:[]}},NPl={configuration:{...cqr,...JEs,...RPl,npmScopes:{description:"Settings per package scope",type:jO.SettingsType.MAP,valueDefinition:{description:"",type:jO.SettingsType.SHAPE,properties:{...cqr,...JEs}}},npmRegistries:{description:"Settings per registry",type:jO.SettingsType.MAP,normalizeKeys:$Es.normalizeRegistry,valueDefinition:{description:"",type:jO.SettingsType.SHAPE,properties:{...cqr}}}},fetchers:[UEs.NpmHttpFetcher,jEs.NpmSemverFetcher],resolvers:[KEs.NpmRemapResolver,zEs.NpmSemverResolver,qEs.NpmTagResolver]};QR.default=NPl});var Z9t=H(HFe=>{"use strict";Object.defineProperty(HFe,"__esModule",{value:!0});HFe.Severity=HFe.Environment=void 0;var e1s;(function(e){e.All="all",e.Production="production",e.Development="development"})(e1s||(HFe.Environment=e1s={}));var t1s;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(t1s||(HFe.Severity=t1s={}))});var uqr=H(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.allSeverities=void 0;oJ.getSeverityInclusions=kPl;oJ.getReportTree=xPl;oJ.getTopLevelDependencies=GPl;oJ.getPackages=FPl;var r1s=(Pa(),vi(Va)),QE=yn(),DPl=r1s.__importDefault(UC()),fre=r1s.__importStar(Z9t());oJ.allSeverities=[fre.Severity.Info,fre.Severity.Low,fre.Severity.Moderate,fre.Severity.High,fre.Severity.Critical];function kPl(e){if(typeof e>"u")return new Set(oJ.allSeverities);let t=oJ.allSeverities.indexOf(e),r=oJ.allSeverities.slice(t);return new Set(r)}function xPl(e){let t={},r={children:t};for(let[n,a]of QE.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of QE.miscUtils.sortMap(a,l=>`${l.id}`))t[`${n}/${o.id}`]={value:QE.formatUtils.tuple(QE.formatUtils.Type.IDENT,QE.structUtils.parseIdent(n)),children:{ID:typeof o.id<"u"&&{label:"ID",value:QE.formatUtils.tuple(QE.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:QE.formatUtils.tuple(QE.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:QE.formatUtils.tuple(QE.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:QE.formatUtils.tuple(QE.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:QE.formatUtils.tuple(QE.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort(DPl.default.compare).map(l=>({value:QE.formatUtils.tuple(QE.formatUtils.Type.REFERENCE,l)}))},Dependents:{label:"Dependents",children:QE.miscUtils.sortMap(o.dependents,l=>QE.structUtils.stringifyLocator(l)).map(l=>({value:QE.formatUtils.tuple(QE.formatUtils.Type.LOCATOR,l)}))}}};return r}function GPl(e,t,{all:r,environment:n}){let a=[],o=r?e.workspaces:[t],l=[fre.Environment.All,fre.Environment.Production].includes(n),A=[fre.Environment.All,fre.Environment.Development].includes(n);for(let f of o)for(let I of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(I.identHash)?!A:!l)||a.push({workspace:f,dependency:I});return a}function FPl(e,t,{recursive:r}){let n=new Map,a=new Set,o=[],l=e.configuration.makeResolver(),A={project:e,resolver:l},f=(I,C)=>{let b=e.storedResolutions.get(C.descriptorHash);if(typeof b>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(b))a.add(b);else return;let E=e.storedPackages.get(b);if(typeof E>"u")throw new Error("Assertion failed: The package should have been registered");let N=QE.structUtils.ensureDevirtualizedDescriptor(C);if(l.supportsDescriptor(N,A)){let F=l.getResolutionDependencies(N,A);if(Object.keys(F).length>0)for(let Q of Object.values(F))f(I,Q)}if(QE.structUtils.ensureDevirtualizedLocator(E).reference.startsWith("npm:")&&E.version!==null){let F=QE.structUtils.stringifyIdent(E),Q=QE.miscUtils.getMapWithDefault(n,F);QE.miscUtils.getArrayWithDefault(Q,E.version).push(I)}if(r)for(let F of E.dependencies.values())o.push([E,F])};for(let{workspace:I,dependency:C}of t)o.push([I.anchoredLocator,C]);for(;o.length>0;){let[I,C]=o.shift();f(I,C)}return n}});var o1s=H(gqr=>{"use strict";Object.defineProperty(gqr,"__esModule",{value:!0});var V9t=(Pa(),vi(Va)),n1s=el(),H6=yn(),ZPl=yn(),L9t=sJ(),Ire=($c(),vi(rg)),i1s=V9t.__importDefault(Ek()),s1s=V9t.__importStar((CZ(),vi(mZ))),Jze=V9t.__importStar(Z9t()),Uze=V9t.__importStar(uqr()),Kze=class extends n1s.BaseCommand{constructor(){super(...arguments),this.all=Ire.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=Ire.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=Ire.Option.String("--environment",Jze.Environment.All,{description:"Which environments to cover",validator:s1s.isEnum(Jze.Environment)}),this.json=Ire.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=Ire.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=Ire.Option.String("--severity",Jze.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:s1s.isEnum(Jze.Severity)}),this.excludes=Ire.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=Ire.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await H6.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await H6.Project.find(t,this.context.cwd);if(!n)throw new n1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=Uze.getTopLevelDependencies(r,n,{all:this.all,environment:this.environment}),o=Uze.getPackages(r,a,{recursive:this.recursive}),l=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),A=Object.create(null);for(let[F,Q]of o)l.some(X=>i1s.default.isMatch(F,X))||(A[F]=[...Q.keys()]);let f=L9t.npmConfigUtils.getAuditRegistry({configuration:t}),I,C=await H6.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let F=L9t.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",A,{authType:L9t.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),Q=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(A),async([ae,ne])=>{let ce=await L9t.npmHttpUtils.getPackageMetadata(ZPl.structUtils.parseIdent(ae),{project:r});return H6.miscUtils.mapAndFilter(ne,fe=>{let{deprecated:ue}=ce.versions[fe];return ue?[ae,fe,ue]:H6.miscUtils.mapAndFilter.skip})})),X=await F;for(let[ae,ne,ce]of Q.flat(1))Object.hasOwn(X,ae)&&X[ae].some(fe=>H6.semverUtils.satisfiesWithPrereleases(ne,fe.vulnerable_versions))||(X[ae]??=[],X[ae].push({id:`${ae} (deprecation)`,title:(typeof ce=="string"?ce:"").trim()||"This package has been deprecated.",severity:Jze.Severity.Moderate,vulnerable_versions:ne}));I=X});if(C.hasErrors())return C.exitCode();let b=Uze.getSeverityInclusions(this.severity),E=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),N=Object.create(null);for(let[F,Q]of Object.entries(I)){let X=Q.filter(ae=>!i1s.default.isMatch(`${ae.id}`,E)&&b.has(ae.severity));X.length>0&&(N[F]=X.map(ae=>{let ne=o.get(F);if(typeof ne>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ce=[...ne.keys()].filter(ue=>H6.semverUtils.satisfiesWithPrereleases(ue,ae.vulnerable_versions)),fe=new Map;for(let ue of ce)for(let de of ne.get(ue))fe.set(de.locatorHash,de);return{...ae,versions:ce,dependents:[...fe.values()]}}))}let B=Object.keys(N).length>0;return B?(H6.treeUtils.emitTree(Uze.getReportTree(N),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await H6.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async F=>{F.reportInfo(H6.MessageName.EXCEPTION,"No audit suggestions")}),B?1:0)}};Kze.paths=[["npm","audit"]];Kze.usage=Ire.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${Xze.allSeverities.map(e=>`\`${e}\``).join(", ")}. + Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${Uze.allSeverities.map(e=>`\`${e}\``).join(", ")}. If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. @@ -1765,38 +1765,38 @@ https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:mV If particular advisories are needed to be ignored, the \`--ignore\` flag can be used with Advisory ID's to ignore any number of advisories in the audit report. This can also be set in the configuration file with the \`npmAuditIgnoreAdvisories\` option. To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why package\` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});iqr.default=Jze});var JEs=H(cqr=>{"use strict";Object.defineProperty(cqr,"__esModule",{value:!0});var QVl=(Pa(),vi(Va)),XVl=el(),aJ=Sn(),Uze=Sn(),sqr=ro(),oqr=sJ(),Kze=($c(),vi(rg)),QEs=QVl.__importDefault(UC()),XEs=wt("util"),jze=class extends XVl.BaseCommand{constructor(){super(...arguments),this.fields=Kze.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=Kze.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=Kze.Option.Rest()}async execute(){let t=await aJ.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await aJ.Project.find(t,this.context.cwd),n=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,l=await Uze.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async A=>{for(let f of this.packages){let I;if(f==="."){let ne=r.topLevelWorkspace;if(!ne.manifest.name)throw new Kze.UsageError(`Missing ${aJ.formatUtils.pretty(t,"name",aJ.formatUtils.Type.CODE)} field in ${sqr.npath.fromPortablePath(sqr.ppath.join(ne.cwd,sqr.Filename.manifest))}`);I=aJ.structUtils.makeDescriptor(ne.manifest.name,"unknown")}else I=aJ.structUtils.parseDescriptor(f);let C=oqr.npmHttpUtils.getIdentUrl(I),b=aqr(await oqr.npmHttpUtils.get(C,{configuration:t,ident:I,jsonResponse:!0,customErrorMessage:oqr.npmHttpUtils.customPackageError})),E=Object.keys(b.versions).sort(QEs.default.compareLoose),B=b["dist-tags"].latest||E[E.length-1],F=Uze.semverUtils.validRange(I.range);if(F){let ne=QEs.default.maxSatisfying(E,F);ne!==null?B=ne:(A.reportWarning(Uze.MessageName.UNNAMED,`Unmet range ${aJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(b["dist-tags"],I.range)?B=b["dist-tags"][I.range]:I.range!=="unknown"&&(A.reportWarning(Uze.MessageName.UNNAMED,`Unknown tag ${aJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0);let Q=b.versions[B],X={...b,...Q,version:B,versions:E},ae;if(n!==null){ae={};for(let ne of n){let ce=X[ne];if(typeof ce<"u")ae[ne]=ce;else{A.reportWarning(Uze.MessageName.EXCEPTION,`The ${aJ.formatUtils.pretty(t,ne,aJ.formatUtils.Type.CODE)} field doesn't exist inside ${aJ.structUtils.prettyIdent(t,I)}'s information`),o=!0;continue}}}else this.json||(delete X.dist,delete X.readme,delete X.users),ae=X;A.reportJson(ae),this.json||a.push(ae)}});XEs.inspect.styles.name="cyan";for(let A of a)(A!==a[0]||o)&&this.context.stdout.write(` -`),this.context.stdout.write(`${(0,XEs.inspect)(A,{depth:1/0,colors:!0,compact:!1})} -`);return l.exitCode()}};jze.paths=[["npm","info"]];jze.usage=Kze.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});cqr.default=jze;function aqr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=aqr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let n=aqr(e[r]);n&&(t[r]=n)}return t}else return e||null}});var lqr=H(F9t=>{"use strict";Object.defineProperty(F9t,"__esModule",{value:!0});F9t.getRegistry=jEs;var UEs=el(),hx=Sn(),JVl=Sn(),tY=sJ(),zze=($c(),vi(rg)),KEs=Zje(),qze=class extends UEs.BaseCommand{constructor(){super(...arguments),this.scope=zze.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=zze.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=zze.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"}),this.webLogin=zze.Option.Boolean("--web-login",{description:"Enable web login"})}async execute(){let t=await hx.Configuration.find(this.context.cwd,this.context.plugins),r=await jEs({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await JVl.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await qVl({registry:r,configuration:t,report:a,webLogin:this.webLogin,stdin:this.context.stdin,stdout:this.context.stdout});return await ePl(r,o,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(hx.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};qze.paths=[["npm","login"]];qze.usage=zze.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});F9t.default=qze;async function jEs({scope:e,publish:t,configuration:r,cwd:n}){return e&&t?tY.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:tY.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?tY.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?tY.npmConfigUtils.getPublishRegistry((await(0,UEs.openWorkspace)(r,n)).manifest,{configuration:r}):tY.npmConfigUtils.getDefaultRegistry({configuration:r})}async function UVl(e,t){let r;try{r=await tY.npmHttpUtils.post("/-/v1/login",null,{configuration:t,registry:e,authType:tY.npmHttpUtils.AuthType.NO_AUTH,jsonResponse:!0,headers:{"npm-auth-type":"web"}})}catch{return null}return r}async function KVl(e,t){let r=await hx.httpUtils.request(e,null,{configuration:t,jsonResponse:!0});if(r.statusCode===202){let n=r.headers["retry-after"]??"1";return{type:"waiting",sleep:parseInt(n,10)}}return r.statusCode===200?{type:"success",token:r.body.token}:null}async function jVl({registry:e,configuration:t,report:r}){let n=await UVl(e,t);if(!n)return null;if(hx.nodeUtils.openUrl){r.reportInfo(hx.MessageName.UNNAMED,"Starting the web login process..."),r.reportSeparator();let{openNow:a}=await(0,KEs.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open your browser now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});r.reportSeparator(),(!a||!await hx.nodeUtils.openUrl(n.loginUrl))&&(r.reportWarning(hx.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice:"),r.reportWarning(hx.MessageName.UNNAMED,hx.formatUtils.pretty(t,n.loginUrl,hx.formatUtils.Type.URL)),r.reportSeparator())}for(;;){let a=await KVl(n.doneUrl,t);if(a===null)return null;if(a.type==="waiting")await new Promise(o=>setTimeout(o,a.sleep*1e3));else return a.token}}var zVl=["https://registry.yarnpkg.com","https://registry.npmjs.org"];async function qVl(e){if(e.webLogin??zVl.includes(e.registry)){let t=await jVl(e);if(t!==null)return t}return await $Vl(e)}async function $Vl({registry:e,configuration:t,report:r,stdin:n,stdout:a}){let o=await tPl({configuration:t,registry:e,report:r,stdin:n,stdout:a}),l=`/-/user/org.couchdb.user:${encodeURIComponent(o.name)}`,A={_id:`org.couchdb.user:${o.name}`,name:o.name,password:o.password,type:"user",roles:[],date:new Date().toISOString()},f={attemptedAs:o.name,configuration:t,registry:e,jsonResponse:!0,authType:tY.npmHttpUtils.AuthType.NO_AUTH};try{return(await tY.npmHttpUtils.put(l,A,f)).token}catch(N){if(!(N.originalError?.name==="HTTPError"&&N.originalError?.response.statusCode===409))throw N}let I={...f,authType:tY.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${o.name}:${o.password}`).toString("base64")}`}},C=await tY.npmHttpUtils.get(l,I);for(let[N,B]of Object.entries(C))(!A[N]||N==="roles")&&(A[N]=B);let b=`${l}/-rev/${A._rev}`;return(await tY.npmHttpUtils.put(b,A,I)).token}async function ePl(e,t,{alwaysAuth:r,scope:n}){let a=l=>A=>{let f=hx.miscUtils.isIndexableObject(A)?A:{},I=f[l],C=hx.miscUtils.isIndexableObject(I)?I:{};return{...f,[l]:{...C,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=n?{npmScopes:a(n)}:{npmRegistries:a(e)};return await hx.Configuration.updateHomeConfiguration(o)}async function tPl({configuration:e,registry:t,report:r,stdin:n,stdout:a}){r.reportInfo(hx.MessageName.UNNAMED,`Logging in to ${hx.formatUtils.pretty(e,t,hx.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(hx.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let l=await(0,KEs.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a}]);return r.reportSeparator(),l}});var $Es=H(uqr=>{"use strict";Object.defineProperty(uqr,"__esModule",{value:!0});var rPl=el(),iP=Sn(),nPl=Sn(),iPl=sJ(),Z9t=($c(),vi(rg)),zEs=lqr(),MFe=new Set(["npmAuthIdent","npmAuthToken"]),$ze=class extends rPl.BaseCommand{constructor(){super(...arguments),this.scope=Z9t.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=Z9t.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=Z9t.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await iP.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,zEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await iP.Configuration.find(this.context.cwd,this.context.plugins),l=iP.structUtils.makeIdent(this.scope??null,"pkg");return!iPl.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:l}).get("npmAuthToken")};return(await nPl.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await oPl(),a.reportInfo(iP.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await qEs("npmScopes",this.scope),await r()?a.reportInfo(iP.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(iP.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,zEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await qEs("npmRegistries",o),await r()?a.reportInfo(iP.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(iP.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};$ze.paths=[["npm","logout"]];$ze.usage=Z9t.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});uqr.default=$ze;function sPl(e,t){let r=e[t];if(!iP.miscUtils.isIndexableObject(r))return!1;let n=new Set(Object.keys(r));if([...MFe].every(o=>!n.has(o)))return!1;for(let o of MFe)n.delete(o);if(n.size===0)return e[t]=void 0,!0;let a={...r};for(let o of MFe)delete a[o];return e[t]=a,!0}async function oPl(){let e=t=>{let r=!1,n=iP.miscUtils.isIndexableObject(t)?{...t}:{};n.npmAuthToken&&(delete n.npmAuthToken,r=!0);for(let a of Object.keys(n))sPl(n,a)&&(r=!0);if(Object.keys(n).length!==0)return r?n:t};return await iP.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function qEs(e,t){return await iP.Configuration.updateHomeConfiguration({[e]:r=>{let n=iP.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(n,t))return r;let a=n[t],o=iP.miscUtils.isIndexableObject(a)?a:{},l=new Set(Object.keys(o));if([...MFe].every(f=>!l.has(f)))return r;for(let f of MFe)l.delete(f);if(l.size===0)return Object.keys(n).length===1?void 0:{...n,[t]:void 0};let A={};for(let f of MFe)A[f]=void 0;return{...n,[t]:{...o,...A}}}})}});var t1s=H(dqr=>{"use strict";Object.defineProperty(dqr,"__esModule",{value:!0});var e1s=el(),rY=Sn(),gqr=ro(),K0e=sJ(),Aqr=$he(),Y6=($c(),vi(rg)),eqe=class extends e1s.BaseCommand{constructor(){super(...arguments),this.access=Y6.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=Y6.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=Y6.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=Y6.Option.String("--otp",{description:"The OTP token to use with the command"}),this.provenance=Y6.Option.Boolean("--provenance",!1,{description:"Generate provenance for the package. Only available in GitHub Actions and GitLab CI. Can be set globally through the `npmPublishProvenance` setting or the `YARN_NPM_CONFIG_PROVENANCE` environment variable, or per-package through the `publishConfig.provenance` field in package.json."}),this.dryRun=Y6.Option.Boolean("-n,--dry-run",!1,{description:"Show what would be published without actually publishing"}),this.json=Y6.Option.Boolean("--json",!1,{description:"Output the result in JSON format"})}async execute(){let t=await rY.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await rY.Project.find(t,this.context.cwd);if(!n)throw new e1s.WorkspaceRequiredError(r.cwd,this.context.cwd);if(n.manifest.private)throw new Y6.UsageError("Private workspaces cannot be published");if(n.manifest.name===null||n.manifest.version===null)throw new Y6.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=n.manifest.name,o=n.manifest.version,l=K0e.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t});return(await rY.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async f=>{if(f.reportInfo(rY.MessageName.UNNAMED,`Publishing to ${l} with tag ${this.tag}`),this.tolerateRepublish)try{let I=await K0e.npmHttpUtils.get(K0e.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:l,ident:a,jsonResponse:!0});if(!Object.hasOwn(I,"versions"))throw new rY.ReportError(rY.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(I.versions,o)){let C=`Registry already knows about version ${o}; skipping.`;f.reportWarning(rY.MessageName.UNNAMED,C),f.reportJson({name:rY.structUtils.stringifyIdent(a),version:o,registry:l,warning:C,skipped:!0});return}}catch(I){if(I.originalError?.response?.statusCode!==404)throw I}await rY.scriptUtils.maybeExecuteWorkspaceLifecycleScript(n,"prepublish",{report:f}),await Aqr.packUtils.prepareForPack(n,{report:f},async()=>{let I=await Aqr.packUtils.genPackList(n);for(let X of I)f.reportInfo(null,gqr.npath.fromPortablePath(X)),f.reportJson({file:gqr.npath.fromPortablePath(X)});let C=await Aqr.packUtils.genPackStream(n,I),b=await rY.miscUtils.bufferStream(C),E=await K0e.npmPublishUtils.getGitHead(n.cwd),N=!1,B="";n.manifest.publishConfig&&"provenance"in n.manifest.publishConfig?(N=!!n.manifest.publishConfig.provenance,B=N?"Generating provenance statement because `publishConfig.provenance` field is set.":"Skipping provenance statement because `publishConfig.provenance` field is set to false."):this.provenance?(N=!0,B="Generating provenance statement because `--provenance` flag is set."):t.get("npmPublishProvenance")&&(N=!0,B="Generating provenance statement because `npmPublishProvenance` setting is set."),B&&(f.reportInfo(null,B),f.reportJson({type:"provenance",enabled:N,provenanceMessage:B}));let F=await K0e.npmPublishUtils.makePublishBody(n,b,{access:this.access,tag:this.tag,registry:l,gitHead:E,provenance:N});this.dryRun||await K0e.npmHttpUtils.put(K0e.npmHttpUtils.getIdentUrl(a),F,{configuration:t,registry:l,ident:a,otp:this.otp,jsonResponse:!0,allowOidc:!!(process.env.CI&&(process.env.GITHUB_ACTIONS||process.env.GITLAB_CI))});let Q=this.dryRun?"Package archive not published (dry run)":"Package archive published";f.reportInfo(rY.MessageName.UNNAMED,Q),f.reportJson({name:rY.structUtils.stringifyIdent(a),version:o,registry:l,tag:this.tag||"latest",files:I.map(X=>gqr.npath.fromPortablePath(X)),access:this.access||null,dryRun:this.dryRun,published:!this.dryRun,message:Q,provenance:!!N})})})).exitCode()}};eqe.paths=[["npm","publish"]];eqe.usage=Y6.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});dqr.default=eqe});var P9t=H(V9t=>{"use strict";Object.defineProperty(V9t,"__esModule",{value:!0});V9t.getDistTags=n1s;var r1s=el(),Ire=Sn(),pqr=ro(),fqr=sJ(),L9t=($c(),vi(rg)),tqe=class extends r1s.BaseCommand{constructor(){super(...arguments),this.json=L9t.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=L9t.Option.String({required:!1})}async execute(){let t=await Ire.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Ire.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=Ire.structUtils.parseIdent(this.package);else{if(!n)throw new r1s.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!n.manifest.name)throw new L9t.UsageError(`Missing 'name' field in ${pqr.npath.fromPortablePath(pqr.ppath.join(n.cwd,pqr.Filename.manifest))}`);a=n.manifest.name}let o=await n1s(a,t),A={children:Ire.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,I])=>({value:Ire.formatUtils.tuple(Ire.formatUtils.Type.RESOLUTION,{descriptor:Ire.structUtils.makeDescriptor(a,f),locator:Ire.structUtils.makeLocator(a,I)})}))};return Ire.treeUtils.emitTree(A,{configuration:t,json:this.json,stdout:this.context.stdout})}};tqe.paths=[["npm","tag","list"]];tqe.usage=L9t.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` + `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});gqr.default=Kze});var l1s=H(fqr=>{"use strict";Object.defineProperty(fqr,"__esModule",{value:!0});var LPl=(Pa(),vi(Va)),VPl=el(),aJ=yn(),jze=yn(),Aqr=zs(),dqr=sJ(),zze=($c(),vi(rg)),a1s=LPl.__importDefault(UC()),c1s=wt("util"),qze=class extends VPl.BaseCommand{constructor(){super(...arguments),this.fields=zze.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=zze.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=zze.Option.Rest()}async execute(){let t=await aJ.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await aJ.Project.find(t,this.context.cwd),n=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,l=await jze.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async A=>{for(let f of this.packages){let I;if(f==="."){let ne=r.topLevelWorkspace;if(!ne.manifest.name)throw new zze.UsageError(`Missing ${aJ.formatUtils.pretty(t,"name",aJ.formatUtils.Type.CODE)} field in ${Aqr.npath.fromPortablePath(Aqr.ppath.join(ne.cwd,Aqr.Filename.manifest))}`);I=aJ.structUtils.makeDescriptor(ne.manifest.name,"unknown")}else I=aJ.structUtils.parseDescriptor(f);let C=dqr.npmHttpUtils.getIdentUrl(I),b=pqr(await dqr.npmHttpUtils.get(C,{configuration:t,ident:I,jsonResponse:!0,customErrorMessage:dqr.npmHttpUtils.customPackageError})),E=Object.keys(b.versions).sort(a1s.default.compareLoose),B=b["dist-tags"].latest||E[E.length-1],F=jze.semverUtils.validRange(I.range);if(F){let ne=a1s.default.maxSatisfying(E,F);ne!==null?B=ne:(A.reportWarning(jze.MessageName.UNNAMED,`Unmet range ${aJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(b["dist-tags"],I.range)?B=b["dist-tags"][I.range]:I.range!=="unknown"&&(A.reportWarning(jze.MessageName.UNNAMED,`Unknown tag ${aJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0);let Q=b.versions[B],X={...b,...Q,version:B,versions:E},ae;if(n!==null){ae={};for(let ne of n){let ce=X[ne];if(typeof ce<"u")ae[ne]=ce;else{A.reportWarning(jze.MessageName.EXCEPTION,`The ${aJ.formatUtils.pretty(t,ne,aJ.formatUtils.Type.CODE)} field doesn't exist inside ${aJ.structUtils.prettyIdent(t,I)}'s information`),o=!0;continue}}}else this.json||(delete X.dist,delete X.readme,delete X.users),ae=X;A.reportJson(ae),this.json||a.push(ae)}});c1s.inspect.styles.name="cyan";for(let A of a)(A!==a[0]||o)&&this.context.stdout.write(` +`),this.context.stdout.write(`${(0,c1s.inspect)(A,{depth:1/0,colors:!0,compact:!1})} +`);return l.exitCode()}};qze.paths=[["npm","info"]];qze.usage=zze.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});fqr.default=qze;function pqr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=pqr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let n=pqr(e[r]);n&&(t[r]=n)}return t}else return e||null}});var Iqr=H(P9t=>{"use strict";Object.defineProperty(P9t,"__esModule",{value:!0});P9t.getRegistry=A1s;var u1s=el(),hx=yn(),PPl=yn(),tY=sJ(),$ze=($c(),vi(rg)),g1s=Vje(),eqe=class extends u1s.BaseCommand{constructor(){super(...arguments),this.scope=$ze.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=$ze.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=$ze.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"}),this.webLogin=$ze.Option.Boolean("--web-login",{description:"Enable web login"})}async execute(){let t=await hx.Configuration.find(this.context.cwd,this.context.plugins),r=await A1s({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await PPl.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await YPl({registry:r,configuration:t,report:a,webLogin:this.webLogin,stdin:this.context.stdin,stdout:this.context.stdout});return await XPl(r,o,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(hx.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};eqe.paths=[["npm","login"]];eqe.usage=$ze.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});P9t.default=eqe;async function A1s({scope:e,publish:t,configuration:r,cwd:n}){return e&&t?tY.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:tY.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?tY.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?tY.npmConfigUtils.getPublishRegistry((await(0,u1s.openWorkspace)(r,n)).manifest,{configuration:r}):tY.npmConfigUtils.getDefaultRegistry({configuration:r})}async function WPl(e,t){let r;try{r=await tY.npmHttpUtils.post("/-/v1/login",null,{configuration:t,registry:e,authType:tY.npmHttpUtils.AuthType.NO_AUTH,jsonResponse:!0,headers:{"npm-auth-type":"web"}})}catch{return null}return r}async function OPl(e,t){let r=await hx.httpUtils.request(e,null,{configuration:t,jsonResponse:!0});if(r.statusCode===202){let n=r.headers["retry-after"]??"1";return{type:"waiting",sleep:parseInt(n,10)}}return r.statusCode===200?{type:"success",token:r.body.token}:null}async function MPl({registry:e,configuration:t,report:r}){let n=await WPl(e,t);if(!n)return null;if(hx.nodeUtils.openUrl){r.reportInfo(hx.MessageName.UNNAMED,"Starting the web login process..."),r.reportSeparator();let{openNow:a}=await(0,g1s.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open your browser now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});r.reportSeparator(),(!a||!await hx.nodeUtils.openUrl(n.loginUrl))&&(r.reportWarning(hx.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice:"),r.reportWarning(hx.MessageName.UNNAMED,hx.formatUtils.pretty(t,n.loginUrl,hx.formatUtils.Type.URL)),r.reportSeparator())}for(;;){let a=await OPl(n.doneUrl,t);if(a===null)return null;if(a.type==="waiting")await new Promise(o=>setTimeout(o,a.sleep*1e3));else return a.token}}var HPl=["https://registry.yarnpkg.com","https://registry.npmjs.org"];async function YPl(e){if(e.webLogin??HPl.includes(e.registry)){let t=await MPl(e);if(t!==null)return t}return await QPl(e)}async function QPl({registry:e,configuration:t,report:r,stdin:n,stdout:a}){let o=await JPl({configuration:t,registry:e,report:r,stdin:n,stdout:a}),l=`/-/user/org.couchdb.user:${encodeURIComponent(o.name)}`,A={_id:`org.couchdb.user:${o.name}`,name:o.name,password:o.password,type:"user",roles:[],date:new Date().toISOString()},f={attemptedAs:o.name,configuration:t,registry:e,jsonResponse:!0,authType:tY.npmHttpUtils.AuthType.NO_AUTH};try{return(await tY.npmHttpUtils.put(l,A,f)).token}catch(N){if(!(N.originalError?.name==="HTTPError"&&N.originalError?.response.statusCode===409))throw N}let I={...f,authType:tY.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${o.name}:${o.password}`).toString("base64")}`}},C=await tY.npmHttpUtils.get(l,I);for(let[N,B]of Object.entries(C))(!A[N]||N==="roles")&&(A[N]=B);let b=`${l}/-rev/${A._rev}`;return(await tY.npmHttpUtils.put(b,A,I)).token}async function XPl(e,t,{alwaysAuth:r,scope:n}){let a=l=>A=>{let f=hx.miscUtils.isIndexableObject(A)?A:{},I=f[l],C=hx.miscUtils.isIndexableObject(I)?I:{};return{...f,[l]:{...C,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=n?{npmScopes:a(n)}:{npmRegistries:a(e)};return await hx.Configuration.updateHomeConfiguration(o)}async function JPl({configuration:e,registry:t,report:r,stdin:n,stdout:a}){r.reportInfo(hx.MessageName.UNNAMED,`Logging in to ${hx.formatUtils.pretty(e,t,hx.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(hx.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let l=await(0,g1s.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a}]);return r.reportSeparator(),l}});var f1s=H(hqr=>{"use strict";Object.defineProperty(hqr,"__esModule",{value:!0});var UPl=el(),iP=yn(),KPl=yn(),jPl=sJ(),W9t=($c(),vi(rg)),d1s=Iqr(),YFe=new Set(["npmAuthIdent","npmAuthToken"]),tqe=class extends UPl.BaseCommand{constructor(){super(...arguments),this.scope=W9t.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=W9t.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=W9t.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await iP.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,d1s.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await iP.Configuration.find(this.context.cwd,this.context.plugins),l=iP.structUtils.makeIdent(this.scope??null,"pkg");return!jPl.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:l}).get("npmAuthToken")};return(await KPl.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await qPl(),a.reportInfo(iP.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await p1s("npmScopes",this.scope),await r()?a.reportInfo(iP.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(iP.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,d1s.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await p1s("npmRegistries",o),await r()?a.reportInfo(iP.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(iP.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};tqe.paths=[["npm","logout"]];tqe.usage=W9t.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});hqr.default=tqe;function zPl(e,t){let r=e[t];if(!iP.miscUtils.isIndexableObject(r))return!1;let n=new Set(Object.keys(r));if([...YFe].every(o=>!n.has(o)))return!1;for(let o of YFe)n.delete(o);if(n.size===0)return e[t]=void 0,!0;let a={...r};for(let o of YFe)delete a[o];return e[t]=a,!0}async function qPl(){let e=t=>{let r=!1,n=iP.miscUtils.isIndexableObject(t)?{...t}:{};n.npmAuthToken&&(delete n.npmAuthToken,r=!0);for(let a of Object.keys(n))zPl(n,a)&&(r=!0);if(Object.keys(n).length!==0)return r?n:t};return await iP.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function p1s(e,t){return await iP.Configuration.updateHomeConfiguration({[e]:r=>{let n=iP.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(n,t))return r;let a=n[t],o=iP.miscUtils.isIndexableObject(a)?a:{},l=new Set(Object.keys(o));if([...YFe].every(f=>!l.has(f)))return r;for(let f of YFe)l.delete(f);if(l.size===0)return Object.keys(n).length===1?void 0:{...n,[t]:void 0};let A={};for(let f of YFe)A[f]=void 0;return{...n,[t]:{...o,...A}}}})}});var h1s=H(_qr=>{"use strict";Object.defineProperty(_qr,"__esModule",{value:!0});var I1s=el(),rY=yn(),mqr=zs(),j0e=sJ(),Cqr=eme(),Y6=($c(),vi(rg)),rqe=class extends I1s.BaseCommand{constructor(){super(...arguments),this.access=Y6.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=Y6.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=Y6.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=Y6.Option.String("--otp",{description:"The OTP token to use with the command"}),this.provenance=Y6.Option.Boolean("--provenance",!1,{description:"Generate provenance for the package. Only available in GitHub Actions and GitLab CI. Can be set globally through the `npmPublishProvenance` setting or the `YARN_NPM_CONFIG_PROVENANCE` environment variable, or per-package through the `publishConfig.provenance` field in package.json."}),this.dryRun=Y6.Option.Boolean("-n,--dry-run",!1,{description:"Show what would be published without actually publishing"}),this.json=Y6.Option.Boolean("--json",!1,{description:"Output the result in JSON format"})}async execute(){let t=await rY.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await rY.Project.find(t,this.context.cwd);if(!n)throw new I1s.WorkspaceRequiredError(r.cwd,this.context.cwd);if(n.manifest.private)throw new Y6.UsageError("Private workspaces cannot be published");if(n.manifest.name===null||n.manifest.version===null)throw new Y6.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=n.manifest.name,o=n.manifest.version,l=j0e.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t});return(await rY.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async f=>{if(f.reportInfo(rY.MessageName.UNNAMED,`Publishing to ${l} with tag ${this.tag}`),this.tolerateRepublish)try{let I=await j0e.npmHttpUtils.get(j0e.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:l,ident:a,jsonResponse:!0});if(!Object.hasOwn(I,"versions"))throw new rY.ReportError(rY.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(I.versions,o)){let C=`Registry already knows about version ${o}; skipping.`;f.reportWarning(rY.MessageName.UNNAMED,C),f.reportJson({name:rY.structUtils.stringifyIdent(a),version:o,registry:l,warning:C,skipped:!0});return}}catch(I){if(I.originalError?.response?.statusCode!==404)throw I}await rY.scriptUtils.maybeExecuteWorkspaceLifecycleScript(n,"prepublish",{report:f}),await Cqr.packUtils.prepareForPack(n,{report:f},async()=>{let I=await Cqr.packUtils.genPackList(n);for(let X of I)f.reportInfo(null,mqr.npath.fromPortablePath(X)),f.reportJson({file:mqr.npath.fromPortablePath(X)});let C=await Cqr.packUtils.genPackStream(n,I),b=await rY.miscUtils.bufferStream(C),E=await j0e.npmPublishUtils.getGitHead(n.cwd),N=!1,B="";n.manifest.publishConfig&&"provenance"in n.manifest.publishConfig?(N=!!n.manifest.publishConfig.provenance,B=N?"Generating provenance statement because `publishConfig.provenance` field is set.":"Skipping provenance statement because `publishConfig.provenance` field is set to false."):this.provenance?(N=!0,B="Generating provenance statement because `--provenance` flag is set."):t.get("npmPublishProvenance")&&(N=!0,B="Generating provenance statement because `npmPublishProvenance` setting is set."),B&&(f.reportInfo(null,B),f.reportJson({type:"provenance",enabled:N,provenanceMessage:B}));let F=await j0e.npmPublishUtils.makePublishBody(n,b,{access:this.access,tag:this.tag,registry:l,gitHead:E,provenance:N});this.dryRun||await j0e.npmHttpUtils.put(j0e.npmHttpUtils.getIdentUrl(a),F,{configuration:t,registry:l,ident:a,otp:this.otp,jsonResponse:!0,allowOidc:!!(process.env.CI&&(process.env.GITHUB_ACTIONS||process.env.GITLAB_CI))});let Q=this.dryRun?"Package archive not published (dry run)":"Package archive published";f.reportInfo(rY.MessageName.UNNAMED,Q),f.reportJson({name:rY.structUtils.stringifyIdent(a),version:o,registry:l,tag:this.tag||"latest",files:I.map(X=>mqr.npath.fromPortablePath(X)),access:this.access||null,dryRun:this.dryRun,published:!this.dryRun,message:Q,provenance:!!N})})})).exitCode()}};rqe.paths=[["npm","publish"]];rqe.usage=Y6.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});_qr.default=rqe});var H9t=H(M9t=>{"use strict";Object.defineProperty(M9t,"__esModule",{value:!0});M9t.getDistTags=C1s;var m1s=el(),hre=yn(),yqr=zs(),bqr=sJ(),O9t=($c(),vi(rg)),nqe=class extends m1s.BaseCommand{constructor(){super(...arguments),this.json=O9t.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=O9t.Option.String({required:!1})}async execute(){let t=await hre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hre.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=hre.structUtils.parseIdent(this.package);else{if(!n)throw new m1s.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!n.manifest.name)throw new O9t.UsageError(`Missing 'name' field in ${yqr.npath.fromPortablePath(yqr.ppath.join(n.cwd,yqr.Filename.manifest))}`);a=n.manifest.name}let o=await C1s(a,t),A={children:hre.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,I])=>({value:hre.formatUtils.tuple(hre.formatUtils.Type.RESOLUTION,{descriptor:hre.structUtils.makeDescriptor(a,f),locator:hre.structUtils.makeLocator(a,I)})}))};return hre.treeUtils.emitTree(A,{configuration:t,json:this.json,stdout:this.context.stdout})}};nqe.paths=[["npm","tag","list"]];nqe.usage=O9t.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` This command will list all tags of a package from the npm registry. If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});V9t.default=tqe;async function n1s(e,t){let r=`/-/package${fqr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return fqr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:fqr.npmHttpUtils.customPackageError})}});var s1s=H(hqr=>{"use strict";Object.defineProperty(hqr,"__esModule",{value:!0});var aPl=(Pa(),vi(Va)),i1s=el(),sP=Sn(),Iqr=sJ(),W9t=($c(),vi(rg)),cPl=aPl.__importDefault(UC()),lPl=P9t(),rqe=class extends i1s.BaseCommand{constructor(){super(...arguments),this.package=W9t.Option.String(),this.tag=W9t.Option.String()}async execute(){let t=await sP.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sP.Project.find(t,this.context.cwd);if(!n)throw new i1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=sP.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!cPl.default.valid(o))throw new W9t.UsageError(`The range ${sP.formatUtils.pretty(t,a.range,sP.formatUtils.Type.RANGE)} must be a valid semver version`);let l=Iqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),A=sP.formatUtils.pretty(t,a,sP.formatUtils.Type.IDENT),f=sP.formatUtils.pretty(t,o,sP.formatUtils.Type.RANGE),I=sP.formatUtils.pretty(t,this.tag,sP.formatUtils.Type.CODE);return(await sP.StreamReport.start({configuration:t,stdout:this.context.stdout},async b=>{let E=await(0,lPl.getDistTags)(a,t);Object.hasOwn(E,this.tag)&&E[this.tag]===o&&b.reportWarning(sP.MessageName.UNNAMED,`Tag ${I} is already set to version ${f}`);let N=`/-/package${Iqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Iqr.npmHttpUtils.put(N,o,{configuration:t,registry:l,ident:a,jsonRequest:!0,jsonResponse:!0}),b.reportInfo(sP.MessageName.UNNAMED,`Tag ${I} added to version ${f} of package ${A}`)})).exitCode()}};rqe.paths=[["npm","tag","add"]];rqe.usage=W9t.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` + `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});M9t.default=nqe;async function C1s(e,t){let r=`/-/package${bqr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return bqr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:bqr.npmHttpUtils.customPackageError})}});var y1s=H(Sqr=>{"use strict";Object.defineProperty(Sqr,"__esModule",{value:!0});var $Pl=(Pa(),vi(Va)),_1s=el(),sP=yn(),Eqr=sJ(),Y9t=($c(),vi(rg)),eWl=$Pl.__importDefault(UC()),tWl=H9t(),iqe=class extends _1s.BaseCommand{constructor(){super(...arguments),this.package=Y9t.Option.String(),this.tag=Y9t.Option.String()}async execute(){let t=await sP.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sP.Project.find(t,this.context.cwd);if(!n)throw new _1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=sP.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!eWl.default.valid(o))throw new Y9t.UsageError(`The range ${sP.formatUtils.pretty(t,a.range,sP.formatUtils.Type.RANGE)} must be a valid semver version`);let l=Eqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),A=sP.formatUtils.pretty(t,a,sP.formatUtils.Type.IDENT),f=sP.formatUtils.pretty(t,o,sP.formatUtils.Type.RANGE),I=sP.formatUtils.pretty(t,this.tag,sP.formatUtils.Type.CODE);return(await sP.StreamReport.start({configuration:t,stdout:this.context.stdout},async b=>{let E=await(0,tWl.getDistTags)(a,t);Object.hasOwn(E,this.tag)&&E[this.tag]===o&&b.reportWarning(sP.MessageName.UNNAMED,`Tag ${I} is already set to version ${f}`);let N=`/-/package${Eqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Eqr.npmHttpUtils.put(N,o,{configuration:t,registry:l,ident:a,jsonRequest:!0,jsonResponse:!0}),b.reportInfo(sP.MessageName.UNNAMED,`Tag ${I} added to version ${f} of package ${A}`)})).exitCode()}};iqe.paths=[["npm","tag","add"]];iqe.usage=Y9t.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});hqr.default=rqe});var a1s=H(Cqr=>{"use strict";Object.defineProperty(Cqr,"__esModule",{value:!0});var o1s=el(),hre=Sn(),mqr=sJ(),nqe=($c(),vi(rg)),uPl=P9t(),iqe=class extends o1s.BaseCommand{constructor(){super(...arguments),this.package=nqe.Option.String(),this.tag=nqe.Option.String()}async execute(){if(this.tag==="latest")throw new nqe.UsageError("The 'latest' tag cannot be removed.");let t=await hre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hre.Project.find(t,this.context.cwd);if(!n)throw new o1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=hre.structUtils.parseIdent(this.package),o=mqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),l=hre.formatUtils.pretty(t,this.tag,hre.formatUtils.Type.CODE),A=hre.formatUtils.pretty(t,a,hre.formatUtils.Type.IDENT),f=await(0,uPl.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new nqe.UsageError(`${l} is not a tag of package ${A}`);return(await hre.StreamReport.start({configuration:t,stdout:this.context.stdout},async C=>{let b=`/-/package${mqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await mqr.npmHttpUtils.del(b,{configuration:t,registry:o,ident:a,jsonResponse:!0}),C.reportInfo(hre.MessageName.UNNAMED,`Tag ${l} removed from package ${A}`)})).exitCode()}};iqe.paths=[["npm","tag","remove"]];iqe.usage=nqe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` + `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});Sqr.default=iqe});var E1s=H(Bqr=>{"use strict";Object.defineProperty(Bqr,"__esModule",{value:!0});var b1s=el(),mre=yn(),vqr=sJ(),sqe=($c(),vi(rg)),rWl=H9t(),oqe=class extends b1s.BaseCommand{constructor(){super(...arguments),this.package=sqe.Option.String(),this.tag=sqe.Option.String()}async execute(){if(this.tag==="latest")throw new sqe.UsageError("The 'latest' tag cannot be removed.");let t=await mre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await mre.Project.find(t,this.context.cwd);if(!n)throw new b1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=mre.structUtils.parseIdent(this.package),o=vqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),l=mre.formatUtils.pretty(t,this.tag,mre.formatUtils.Type.CODE),A=mre.formatUtils.pretty(t,a,mre.formatUtils.Type.IDENT),f=await(0,rWl.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new sqe.UsageError(`${l} is not a tag of package ${A}`);return(await mre.StreamReport.start({configuration:t,stdout:this.context.stdout},async C=>{let b=`/-/package${vqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await vqr.npmHttpUtils.del(b,{configuration:t,registry:o,ident:a,jsonResponse:!0}),C.reportInfo(mre.MessageName.UNNAMED,`Tag ${l} removed from package ${A}`)})).exitCode()}};oqe.paths=[["npm","tag","remove"]];oqe.usage=sqe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});Cqr.default=iqe});var u1s=H(bqr=>{"use strict";Object.defineProperty(bqr,"__esModule",{value:!0});var c1s=el(),_qr=Sn(),l1s=Sn(),j0e=sJ(),yqr=($c(),vi(rg)),sqe=class extends c1s.BaseCommand{constructor(){super(...arguments),this.scope=yqr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=yqr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await _qr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=j0e.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:j0e.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=j0e.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=j0e.npmConfigUtils.getPublishRegistry((await(0,c1s.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=j0e.npmConfigUtils.getDefaultRegistry({configuration:t}),(await l1s.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await j0e.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:j0e.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?l1s.structUtils.makeIdent(this.scope,""):void 0})}catch(l){if(l.response?.statusCode===401||l.response?.statusCode===403){a.reportError(_qr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}a.reportInfo(_qr.MessageName.UNNAMED,o.username)})).exitCode()}};sqe.paths=[["npm","whoami"]];sqe.usage=yqr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});bqr.default=sqe});var _1s=H(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});U1.NpmWhoamiCommand=U1.NpmTagRemoveCommand=U1.NpmTagListCommand=U1.NpmTagAddCommand=U1.NpmPublishCommand=U1.NpmLogoutCommand=U1.NpmLoginCommand=U1.NpmInfoCommand=U1.NpmAuditCommand=U1.npmAuditUtils=U1.npmAuditTypes=void 0;var cJ=(Pa(),vi(Va)),O9t=Sn(),g1s=cJ.__importDefault(YEs());U1.NpmAuditCommand=g1s.default;var A1s=cJ.__importDefault(JEs());U1.NpmInfoCommand=A1s.default;var d1s=cJ.__importDefault(lqr());U1.NpmLoginCommand=d1s.default;var p1s=cJ.__importDefault($Es());U1.NpmLogoutCommand=p1s.default;var f1s=cJ.__importDefault(t1s());U1.NpmPublishCommand=f1s.default;var I1s=cJ.__importDefault(s1s());U1.NpmTagAddCommand=I1s.default;var h1s=cJ.__importDefault(P9t());U1.NpmTagListCommand=h1s.default;var m1s=cJ.__importDefault(a1s());U1.NpmTagRemoveCommand=m1s.default;var C1s=cJ.__importDefault(u1s());U1.NpmWhoamiCommand=C1s.default;var gPl=cJ.__importStar(k9t());U1.npmAuditTypes=gPl;var APl=cJ.__importStar(nqr());U1.npmAuditUtils=APl;var dPl={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:O9t.SettingsType.STRING,default:null},npmPublishProvenance:{description:"Whether to generate provenance for the published packages",type:O9t.SettingsType.BOOLEAN,default:!1},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:O9t.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:O9t.SettingsType.STRING,default:[],isArray:!0}},commands:[g1s.default,A1s.default,d1s.default,p1s.default,f1s.default,I1s.default,h1s.default,m1s.default,C1s.default]};U1.default=dPl});var y1s=H(M9t=>{"use strict";Object.defineProperty(M9t,"__esModule",{value:!0});M9t.CACHE_VERSION=void 0;M9t.CACHE_VERSION=3});var Y9t=H(CL=>{"use strict";Object.defineProperty(CL,"__esModule",{value:!0});CL.PatchMutationType=CL.EXECUTABLE_FILE_MODE=CL.NON_EXECUTABLE_FILE_MODE=void 0;CL.getPath=z0e;CL.parseHunkHeaderLine=E1s;CL.interpretParsedPatchFile=S1s;CL.parsePatchFile=mPl;CL.verifyHunkIntegrity=v1s;var Eqr=Sn(),oqe=ro(),pPl=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function z0e(e){return oqe.ppath.relative(oqe.PortablePath.root,oqe.ppath.resolve(oqe.PortablePath.root,oqe.npath.toPortablePath(e)))}function E1s(e){let t=e.trim().match(pPl);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}CL.NON_EXECUTABLE_FILE_MODE=420;CL.EXECUTABLE_FILE_MODE=493;var nY;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(nY||(CL.PatchMutationType=nY={}));var b1s=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),fPl=e=>({header:E1s(e),parts:[]}),IPl={"@":"header","-":nY.Deletion,"+":nY.Insertion," ":nY.Context,"\\":"pragma",undefined:nY.Context};function hPl(e){let t=[],r=b1s(),n="parsing header",a=null,o=null;function l(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function A(){l(),t.push(r),r=b1s()}for(let f=0;f0?"patch":"mode change",ae=null;switch(X){case"rename":{if(!C||!b)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:n,fromPath:z0e(C),toPath:z0e(b)}),ae=b}break;case"file deletion":{let ne=a||B;if(!ne)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:n,hunk:Q&&Q[0]||null,path:z0e(ne),mode:H9t(f),hash:E})}break;case"file creation":{let ne=o||F;if(!ne)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:n,hunk:Q&&Q[0]||null,path:z0e(ne),mode:H9t(I),hash:N})}break;case"patch":case"mode change":ae=F||o;break;default:Eqr.miscUtils.assertNever(X);break}ae&&l&&A&&l!==A&&t.push({type:"mode change",semverExclusivity:n,path:z0e(ae),oldMode:H9t(l),newMode:H9t(A)}),ae&&Q&&Q.length&&t.push({type:"patch",semverExclusivity:n,path:z0e(ae),hunks:Q,beforeHash:E,afterHash:N})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}function H9t(e){let t=parseInt(e,8)&511;if(t!==CL.NON_EXECUTABLE_FILE_MODE&&t!==CL.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function mPl(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),S1s(hPl(t))}function v1s(e){let t=0,r=0;for(let{type:n,lines:a}of e.parts)switch(n){case nY.Context:r+=a.length,t+=a.length;break;case nY.Deletion:t+=a.length;break;case nY.Insertion:r+=a.length;break;default:Eqr.miscUtils.assertNever(n);break}if(t!==e.header.original.length||r!==e.header.patched.length){let n=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${n(e.header.original.length)} ${n(e.header.patched.length)} @@, got @@ ${n(t)} ${n(r)} @@)`)}}});var vqr=H(Q9t=>{"use strict";Object.defineProperty(Q9t,"__esModule",{value:!0});Q9t.UnmatchedHunkError=void 0;var Sqr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};Q9t.UnmatchedHunkError=Sqr});var N1s=H(U9t=>{"use strict";Object.defineProperty(U9t,"__esModule",{value:!0});U9t.applyPatchFile=_Pl;U9t.applyPatch=R1s;var J9t=Sn(),mre=ro(),CPl=vqr(),X9t=Y9t();async function HFe(e,t,r){let n=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,n.atime,n.mtime)}async function _Pl(e,{baseFs:t=new mre.NodeFS,dryRun:r=!1,version:n=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&n!==null&&!J9t.semverUtils.satisfiesWithPrereleases(n,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await HFe(t,mre.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await HFe(t,mre.ppath.dirname(a.fromPath),async()=>{await HFe(t,mre.ppath.dirname(a.toPath),async()=>{await HFe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` + `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});Bqr.default=oqe});var B1s=H(Rqr=>{"use strict";Object.defineProperty(Rqr,"__esModule",{value:!0});var S1s=el(),wqr=yn(),v1s=yn(),z0e=sJ(),Tqr=($c(),vi(rg)),aqe=class extends S1s.BaseCommand{constructor(){super(...arguments),this.scope=Tqr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=Tqr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await wqr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=z0e.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:z0e.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=z0e.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=z0e.npmConfigUtils.getPublishRegistry((await(0,S1s.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=z0e.npmConfigUtils.getDefaultRegistry({configuration:t}),(await v1s.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await z0e.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:z0e.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?v1s.structUtils.makeIdent(this.scope,""):void 0})}catch(l){if(l.response?.statusCode===401||l.response?.statusCode===403){a.reportError(wqr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}a.reportInfo(wqr.MessageName.UNNAMED,o.username)})).exitCode()}};aqe.paths=[["npm","whoami"]];aqe.usage=Tqr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});Rqr.default=aqe});var Z1s=H(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});U1.NpmWhoamiCommand=U1.NpmTagRemoveCommand=U1.NpmTagListCommand=U1.NpmTagAddCommand=U1.NpmPublishCommand=U1.NpmLogoutCommand=U1.NpmLoginCommand=U1.NpmInfoCommand=U1.NpmAuditCommand=U1.npmAuditUtils=U1.npmAuditTypes=void 0;var cJ=(Pa(),vi(Va)),Q9t=yn(),w1s=cJ.__importDefault(o1s());U1.NpmAuditCommand=w1s.default;var T1s=cJ.__importDefault(l1s());U1.NpmInfoCommand=T1s.default;var R1s=cJ.__importDefault(Iqr());U1.NpmLoginCommand=R1s.default;var N1s=cJ.__importDefault(f1s());U1.NpmLogoutCommand=N1s.default;var D1s=cJ.__importDefault(h1s());U1.NpmPublishCommand=D1s.default;var k1s=cJ.__importDefault(y1s());U1.NpmTagAddCommand=k1s.default;var x1s=cJ.__importDefault(H9t());U1.NpmTagListCommand=x1s.default;var G1s=cJ.__importDefault(E1s());U1.NpmTagRemoveCommand=G1s.default;var F1s=cJ.__importDefault(B1s());U1.NpmWhoamiCommand=F1s.default;var nWl=cJ.__importStar(Z9t());U1.npmAuditTypes=nWl;var iWl=cJ.__importStar(uqr());U1.npmAuditUtils=iWl;var sWl={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:Q9t.SettingsType.STRING,default:null},npmPublishProvenance:{description:"Whether to generate provenance for the published packages",type:Q9t.SettingsType.BOOLEAN,default:!1},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:Q9t.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:Q9t.SettingsType.STRING,default:[],isArray:!0}},commands:[w1s.default,T1s.default,R1s.default,N1s.default,D1s.default,k1s.default,x1s.default,G1s.default,F1s.default]};U1.default=sWl});var L1s=H(X9t=>{"use strict";Object.defineProperty(X9t,"__esModule",{value:!0});X9t.CACHE_VERSION=void 0;X9t.CACHE_VERSION=3});var U9t=H(CL=>{"use strict";Object.defineProperty(CL,"__esModule",{value:!0});CL.PatchMutationType=CL.EXECUTABLE_FILE_MODE=CL.NON_EXECUTABLE_FILE_MODE=void 0;CL.getPath=q0e;CL.parseHunkHeaderLine=P1s;CL.interpretParsedPatchFile=W1s;CL.parsePatchFile=uWl;CL.verifyHunkIntegrity=O1s;var Nqr=yn(),cqe=zs(),oWl=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function q0e(e){return cqe.ppath.relative(cqe.PortablePath.root,cqe.ppath.resolve(cqe.PortablePath.root,cqe.npath.toPortablePath(e)))}function P1s(e){let t=e.trim().match(oWl);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}CL.NON_EXECUTABLE_FILE_MODE=420;CL.EXECUTABLE_FILE_MODE=493;var nY;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(nY||(CL.PatchMutationType=nY={}));var V1s=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),aWl=e=>({header:P1s(e),parts:[]}),cWl={"@":"header","-":nY.Deletion,"+":nY.Insertion," ":nY.Context,"\\":"pragma",undefined:nY.Context};function lWl(e){let t=[],r=V1s(),n="parsing header",a=null,o=null;function l(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function A(){l(),t.push(r),r=V1s()}for(let f=0;f0?"patch":"mode change",ae=null;switch(X){case"rename":{if(!C||!b)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:n,fromPath:q0e(C),toPath:q0e(b)}),ae=b}break;case"file deletion":{let ne=a||B;if(!ne)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:n,hunk:Q&&Q[0]||null,path:q0e(ne),mode:J9t(f),hash:E})}break;case"file creation":{let ne=o||F;if(!ne)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:n,hunk:Q&&Q[0]||null,path:q0e(ne),mode:J9t(I),hash:N})}break;case"patch":case"mode change":ae=F||o;break;default:Nqr.miscUtils.assertNever(X);break}ae&&l&&A&&l!==A&&t.push({type:"mode change",semverExclusivity:n,path:q0e(ae),oldMode:J9t(l),newMode:J9t(A)}),ae&&Q&&Q.length&&t.push({type:"patch",semverExclusivity:n,path:q0e(ae),hunks:Q,beforeHash:E,afterHash:N})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}function J9t(e){let t=parseInt(e,8)&511;if(t!==CL.NON_EXECUTABLE_FILE_MODE&&t!==CL.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function uWl(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),W1s(lWl(t))}function O1s(e){let t=0,r=0;for(let{type:n,lines:a}of e.parts)switch(n){case nY.Context:r+=a.length,t+=a.length;break;case nY.Deletion:t+=a.length;break;case nY.Insertion:r+=a.length;break;default:Nqr.miscUtils.assertNever(n);break}if(t!==e.header.original.length||r!==e.header.patched.length){let n=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${n(e.header.original.length)} ${n(e.header.patched.length)} @@, got @@ ${n(t)} ${n(r)} @@)`)}}});var kqr=H(K9t=>{"use strict";Object.defineProperty(K9t,"__esModule",{value:!0});K9t.UnmatchedHunkError=void 0;var Dqr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};K9t.UnmatchedHunkError=Dqr});var X1s=H(q9t=>{"use strict";Object.defineProperty(q9t,"__esModule",{value:!0});q9t.applyPatchFile=AWl;q9t.applyPatch=Q1s;var z9t=yn(),Cre=zs(),gWl=kqr(),j9t=U9t();async function QFe(e,t,r){let n=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,n.atime,n.mtime)}async function AWl(e,{baseFs:t=new Cre.NodeFS,dryRun:r=!1,version:n=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&n!==null&&!z9t.semverUtils.satisfiesWithPrereleases(n,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await QFe(t,Cre.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await QFe(t,Cre.ppath.dirname(a.fromPath),async()=>{await QFe(t,Cre.ppath.dirname(a.toPath),async()=>{await QFe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` `)+(a.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await t.mkdirpPromise(mre.ppath.dirname(a.path),{chmod:493,utimes:[mre.constants.SAFE_TIME,mre.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,mre.constants.SAFE_TIME,mre.constants.SAFE_TIME)}break;case"patch":await HFe(t,a.path,async()=>{await R1s(a,{baseFs:t,dryRun:r})});break;case"mode change":{let l=(await t.statPromise(a.path)).mode;if(B1s(a.newMode)!==B1s(l))continue;await HFe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:J9t.miscUtils.assertNever(a);break}}function B1s(e){return(e&64)>0}function w1s(e){return e.replace(/\s+$/,"")}function yPl(e,t){return w1s(e)===w1s(t)}async function R1s({hunks:e,path:t},{baseFs:r,dryRun:n=!1}){let a=await r.statSync(t).mode,l=(await r.readFileSync(t,"utf8")).split(/\n/),A=[],f=0,I=0;for(let b of e){let E=Math.max(I,b.header.patched.start+f),N=Math.max(0,E-I),B=Math.max(0,l.length-E-b.header.original.length),F=Math.max(N,B),Q=0,X=0,ae=null;for(;Q<=F;){if(Q<=N&&(X=E-Q,ae=T1s(b,l,X),ae!==null)){Q=-Q;break}if(Q<=B&&(X=E+Q,ae=T1s(b,l,X),ae!==null))break;Q+=1}if(ae===null)throw new CPl.UnmatchedHunkError(e.indexOf(b),b);A.push(ae),f+=Q,I=X+b.header.original.length}if(n)return;let C=0;for(let b of A)for(let E of b)switch(E.type){case"splice":{let N=E.index+C;l.splice(N,E.numToDelete,...E.linesToInsert),C+=E.linesToInsert.length-E.numToDelete}break;case"pop":l.pop();break;case"push":l.push(E.line);break;default:J9t.miscUtils.assertNever(E);break}await r.writeFilePromise(t,l.join(` -`),{mode:a})}function T1s(e,t,r){let n=[];for(let a of e.parts)switch(a.type){case X9t.PatchMutationType.Context:case X9t.PatchMutationType.Deletion:{for(let o of a.lines){let l=t[r];if(l==null||!yPl(l,o))return null;r+=1}a.type===X9t.PatchMutationType.Deletion&&(n.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&n.push({type:"push",line:""}))}break;case X9t.PatchMutationType.Insertion:n.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&n.push({type:"pop"});break;default:J9t.miscUtils.assertNever(a.type);break}return n}});var QFe=H(iB=>{"use strict";Object.defineProperty(iB,"__esModule",{value:!0});iB.parsePatchFile=iB.applyPatchFile=void 0;iB.isPatchDescriptor=k1s;iB.isPatchLocator=x1s;iB.parseDescriptor=vPl;iB.parseLocator=BPl;iB.unpatchDescriptor=wPl;iB.unpatchLocator=TPl;iB.ensureUnpatchedDescriptor=RPl;iB.ensureUnpatchedLocator=G1s;iB.makeDescriptor=NPl;iB.makeLocator=DPl;iB.extractPatchFlags=L1s;iB.isParentRequired=kPl;iB.loadPatchFiles=xPl;iB.extractPackageToDisk=GPl;iB.diffFolders=FPl;iB.makePatchHash=ZPl;var M2=Sn(),dw=ro(),bPl=y1s(),D1s=Y9t();Object.defineProperty(iB,"parsePatchFile",{enumerable:!0,get:function(){return D1s.parsePatchFile}});var EPl=N1s();Object.defineProperty(iB,"applyPatchFile",{enumerable:!0,get:function(){return EPl.applyPatchFile}});var SPl=/^builtin<([^>]+)>$/;function YFe(e,t){let{protocol:r,source:n,selector:a,params:o}=M2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(n===null)throw new Error("Patch locators must explicitly define their source");let l=a?a.split(/&/).map(C=>dw.npath.toPortablePath(C)):[],A=o&&typeof o.locator=="string"?M2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,I=t(n);return{parentLocator:A,sourceItem:I,patchPaths:l,sourceVersion:f}}function k1s(e){return e.range.startsWith("patch:")}function x1s(e){return e.reference.startsWith("patch:")}function vPl(e){let{sourceItem:t,...r}=YFe(e.range,M2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}function BPl(e){let{sourceItem:t,...r}=YFe(e.reference,M2.structUtils.parseLocator);return{...r,sourceLocator:t}}function wPl(e){let{sourceItem:t}=YFe(e.range,M2.structUtils.parseDescriptor);return t}function TPl(e){let{sourceItem:t}=YFe(e.reference,M2.structUtils.parseLocator);return t}function RPl(e){if(!k1s(e))return e;let{sourceItem:t}=YFe(e.range,M2.structUtils.parseDescriptor);return t}function G1s(e){if(!x1s(e))return e;let{sourceItem:t}=YFe(e.reference,M2.structUtils.parseLocator);return t}function F1s({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:n,patchHash:a},o){let l=e!==null?{locator:M2.structUtils.stringifyLocator(e)}:{},A=typeof n<"u"?{version:n}:{},f=typeof a<"u"?{hash:a}:{};return M2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...A,...f,...l}})}function NPl(e,{parentLocator:t,sourceDescriptor:r,patchPaths:n}){return M2.structUtils.makeDescriptor(e,F1s({parentLocator:t,sourceItem:r,patchPaths:n},M2.structUtils.stringifyDescriptor))}function DPl(e,{parentLocator:t,sourcePackage:r,patchPaths:n,patchHash:a}){return M2.structUtils.makeLocator(e,F1s({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:n,patchHash:a},M2.structUtils.stringifyLocator))}function Z1s({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:n},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let l=a.match(SPl);return l!==null?n(l[1]):a.startsWith("~/")?r(a.slice(2)):dw.ppath.isAbsolute(a)?e(a):t(a)}function L1s(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}function kPl(e){return Z1s({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}async function xPl(e,t,r){let n=e!==null?await r.fetcher.fetch(e,r):null,a=n&&n.localPath?{packageFs:new dw.CwdFS(dw.PortablePath.root),prefixPath:dw.ppath.relative(dw.PortablePath.root,n.localPath)}:n;n&&n!==a&&n.releaseFs&&n.releaseFs();let o=await M2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async l=>{let A=L1s(l),f=await Z1s({onAbsolute:async I=>await dw.xfs.readFilePromise(I,"utf8"),onRelative:async I=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(dw.ppath.join(a.prefixPath,I),"utf8")},onProject:async I=>await dw.xfs.readFilePromise(dw.ppath.join(r.project.cwd,I),"utf8"),onBuiltin:async I=>await r.project.configuration.firstHook(C=>C.getBuiltinPatch,r.project,I)},l);return{...A,source:f}})));for(let l of o)typeof l.source=="string"&&(l.source=l.source.replace(/\r\n?/g,` -`));return o}async function GPl(e,{cache:t,project:r}){let n=r.storedPackages.get(e.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=G1s(e),o=r.storedChecksums,l=new M2.ThrowReport,A=await dw.xfs.mktempPromise(),f=dw.ppath.join(A,"source"),I=dw.ppath.join(A,"user"),C=dw.ppath.join(A,".yarn-patch.json"),b=r.configuration.makeFetcher(),E=[];try{let N,B;if(e.locatorHash===a.locatorHash){let F=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l});E.push(()=>F.releaseFs?.()),N=F,B=F}else N=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>N.releaseFs?.()),B=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>B.releaseFs?.());await Promise.all([dw.xfs.copyPromise(f,N.prefixPath,{baseFs:N.packageFs}),dw.xfs.copyPromise(I,B.prefixPath,{baseFs:B.packageFs}),dw.xfs.writeJsonPromise(C,{locator:M2.structUtils.stringifyLocator(e),version:n.version})])}finally{for(let N of E)N()}return dw.xfs.detachTemp(A),I}async function FPl(e,t){let r=dw.npath.fromPortablePath(e).replace(/\\/g,"/"),n=dw.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await M2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,n],{cwd:dw.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. +`):"";await t.mkdirpPromise(Cre.ppath.dirname(a.path),{chmod:493,utimes:[Cre.constants.SAFE_TIME,Cre.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,Cre.constants.SAFE_TIME,Cre.constants.SAFE_TIME)}break;case"patch":await QFe(t,a.path,async()=>{await Q1s(a,{baseFs:t,dryRun:r})});break;case"mode change":{let l=(await t.statPromise(a.path)).mode;if(M1s(a.newMode)!==M1s(l))continue;await QFe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:z9t.miscUtils.assertNever(a);break}}function M1s(e){return(e&64)>0}function H1s(e){return e.replace(/\s+$/,"")}function dWl(e,t){return H1s(e)===H1s(t)}async function Q1s({hunks:e,path:t},{baseFs:r,dryRun:n=!1}){let a=await r.statSync(t).mode,l=(await r.readFileSync(t,"utf8")).split(/\n/),A=[],f=0,I=0;for(let b of e){let E=Math.max(I,b.header.patched.start+f),N=Math.max(0,E-I),B=Math.max(0,l.length-E-b.header.original.length),F=Math.max(N,B),Q=0,X=0,ae=null;for(;Q<=F;){if(Q<=N&&(X=E-Q,ae=Y1s(b,l,X),ae!==null)){Q=-Q;break}if(Q<=B&&(X=E+Q,ae=Y1s(b,l,X),ae!==null))break;Q+=1}if(ae===null)throw new gWl.UnmatchedHunkError(e.indexOf(b),b);A.push(ae),f+=Q,I=X+b.header.original.length}if(n)return;let C=0;for(let b of A)for(let E of b)switch(E.type){case"splice":{let N=E.index+C;l.splice(N,E.numToDelete,...E.linesToInsert),C+=E.linesToInsert.length-E.numToDelete}break;case"pop":l.pop();break;case"push":l.push(E.line);break;default:z9t.miscUtils.assertNever(E);break}await r.writeFilePromise(t,l.join(` +`),{mode:a})}function Y1s(e,t,r){let n=[];for(let a of e.parts)switch(a.type){case j9t.PatchMutationType.Context:case j9t.PatchMutationType.Deletion:{for(let o of a.lines){let l=t[r];if(l==null||!dWl(l,o))return null;r+=1}a.type===j9t.PatchMutationType.Deletion&&(n.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&n.push({type:"push",line:""}))}break;case j9t.PatchMutationType.Insertion:n.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&n.push({type:"pop"});break;default:z9t.miscUtils.assertNever(a.type);break}return n}});var JFe=H(iB=>{"use strict";Object.defineProperty(iB,"__esModule",{value:!0});iB.parsePatchFile=iB.applyPatchFile=void 0;iB.isPatchDescriptor=U1s;iB.isPatchLocator=K1s;iB.parseDescriptor=hWl;iB.parseLocator=mWl;iB.unpatchDescriptor=CWl;iB.unpatchLocator=_Wl;iB.ensureUnpatchedDescriptor=yWl;iB.ensureUnpatchedLocator=j1s;iB.makeDescriptor=bWl;iB.makeLocator=EWl;iB.extractPatchFlags=$1s;iB.isParentRequired=SWl;iB.loadPatchFiles=vWl;iB.extractPackageToDisk=BWl;iB.diffFolders=wWl;iB.makePatchHash=TWl;var M2=yn(),dw=zs(),pWl=L1s(),J1s=U9t();Object.defineProperty(iB,"parsePatchFile",{enumerable:!0,get:function(){return J1s.parsePatchFile}});var fWl=X1s();Object.defineProperty(iB,"applyPatchFile",{enumerable:!0,get:function(){return fWl.applyPatchFile}});var IWl=/^builtin<([^>]+)>$/;function XFe(e,t){let{protocol:r,source:n,selector:a,params:o}=M2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(n===null)throw new Error("Patch locators must explicitly define their source");let l=a?a.split(/&/).map(C=>dw.npath.toPortablePath(C)):[],A=o&&typeof o.locator=="string"?M2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,I=t(n);return{parentLocator:A,sourceItem:I,patchPaths:l,sourceVersion:f}}function U1s(e){return e.range.startsWith("patch:")}function K1s(e){return e.reference.startsWith("patch:")}function hWl(e){let{sourceItem:t,...r}=XFe(e.range,M2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}function mWl(e){let{sourceItem:t,...r}=XFe(e.reference,M2.structUtils.parseLocator);return{...r,sourceLocator:t}}function CWl(e){let{sourceItem:t}=XFe(e.range,M2.structUtils.parseDescriptor);return t}function _Wl(e){let{sourceItem:t}=XFe(e.reference,M2.structUtils.parseLocator);return t}function yWl(e){if(!U1s(e))return e;let{sourceItem:t}=XFe(e.range,M2.structUtils.parseDescriptor);return t}function j1s(e){if(!K1s(e))return e;let{sourceItem:t}=XFe(e.reference,M2.structUtils.parseLocator);return t}function z1s({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:n,patchHash:a},o){let l=e!==null?{locator:M2.structUtils.stringifyLocator(e)}:{},A=typeof n<"u"?{version:n}:{},f=typeof a<"u"?{hash:a}:{};return M2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...A,...f,...l}})}function bWl(e,{parentLocator:t,sourceDescriptor:r,patchPaths:n}){return M2.structUtils.makeDescriptor(e,z1s({parentLocator:t,sourceItem:r,patchPaths:n},M2.structUtils.stringifyDescriptor))}function EWl(e,{parentLocator:t,sourcePackage:r,patchPaths:n,patchHash:a}){return M2.structUtils.makeLocator(e,z1s({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:n,patchHash:a},M2.structUtils.stringifyLocator))}function q1s({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:n},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let l=a.match(IWl);return l!==null?n(l[1]):a.startsWith("~/")?r(a.slice(2)):dw.ppath.isAbsolute(a)?e(a):t(a)}function $1s(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}function SWl(e){return q1s({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}async function vWl(e,t,r){let n=e!==null?await r.fetcher.fetch(e,r):null,a=n&&n.localPath?{packageFs:new dw.CwdFS(dw.PortablePath.root),prefixPath:dw.ppath.relative(dw.PortablePath.root,n.localPath)}:n;n&&n!==a&&n.releaseFs&&n.releaseFs();let o=await M2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async l=>{let A=$1s(l),f=await q1s({onAbsolute:async I=>await dw.xfs.readFilePromise(I,"utf8"),onRelative:async I=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(dw.ppath.join(a.prefixPath,I),"utf8")},onProject:async I=>await dw.xfs.readFilePromise(dw.ppath.join(r.project.cwd,I),"utf8"),onBuiltin:async I=>await r.project.configuration.firstHook(C=>C.getBuiltinPatch,r.project,I)},l);return{...A,source:f}})));for(let l of o)typeof l.source=="string"&&(l.source=l.source.replace(/\r\n?/g,` +`));return o}async function BWl(e,{cache:t,project:r}){let n=r.storedPackages.get(e.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=j1s(e),o=r.storedChecksums,l=new M2.ThrowReport,A=await dw.xfs.mktempPromise(),f=dw.ppath.join(A,"source"),I=dw.ppath.join(A,"user"),C=dw.ppath.join(A,".yarn-patch.json"),b=r.configuration.makeFetcher(),E=[];try{let N,B;if(e.locatorHash===a.locatorHash){let F=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l});E.push(()=>F.releaseFs?.()),N=F,B=F}else N=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>N.releaseFs?.()),B=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>B.releaseFs?.());await Promise.all([dw.xfs.copyPromise(f,N.prefixPath,{baseFs:N.packageFs}),dw.xfs.copyPromise(I,B.prefixPath,{baseFs:B.packageFs}),dw.xfs.writeJsonPromise(C,{locator:M2.structUtils.stringifyLocator(e),version:n.version})])}finally{for(let N of E)N()}return dw.xfs.detachTemp(A),I}async function wWl(e,t){let r=dw.npath.fromPortablePath(e).replace(/\\/g,"/"),n=dw.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await M2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,n],{cwd:dw.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. The following error was reported by 'git': -${o}`);let l=r.startsWith("/")?A=>A.slice(1):A=>A;return a.replace(new RegExp(`(a|b)(${M2.miscUtils.escapeRegExp(`/${l(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${M2.miscUtils.escapeRegExp(`/${l(n)}/`)}`,"g"),"$1/").replace(new RegExp(M2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(M2.miscUtils.escapeRegExp(`${n}/`),"g"),"")}function ZPl(e,t){let r=[];for(let{source:n}of e){if(n===null)continue;let a=(0,D1s.parsePatchFile)(n);for(let o of a){let{semverExclusivity:l,...A}=o;l!==null&&t!==null&&!M2.semverUtils.satisfiesWithPrereleases(t,l)||r.push(JSON.stringify(A))}}return M2.hashUtils.makeHash(`${bPl.CACHE_VERSION}`,...r).slice(0,6)}});var V1s=H(wqr=>{"use strict";Object.defineProperty(wqr,"__esModule",{value:!0});wqr.reportHunk=LPl;var rge=Sn(),Bqr=Y9t();function LPl(e,{configuration:t,report:r}){for(let n of e.parts)for(let a of n.lines)switch(n.type){case Bqr.PatchMutationType.Context:r.reportInfo(null,` ${rge.formatUtils.pretty(t,a,"grey")}`);break;case Bqr.PatchMutationType.Deletion:r.reportError(rge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${rge.formatUtils.pretty(t,a,rge.formatUtils.Type.REMOVED)}`);break;case Bqr.PatchMutationType.Insertion:r.reportError(rge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${rge.formatUtils.pretty(t,a,rge.formatUtils.Type.ADDED)}`);break;default:rge.miscUtils.assertNever(n.type)}}});var P1s=H(K9t=>{"use strict";Object.defineProperty(K9t,"__esModule",{value:!0});K9t.PatchFetcher=void 0;var VPl=(Pa(),vi(Va)),Tqr=Sn(),aqe=Sn(),cqe=ro(),Rqr=zK(),lqe=VPl.__importStar(QFe()),PPl=vqr(),WPl=V1s(),Nqr=class{supports(t,r){return!!lqe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${aqe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:aqe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async patchPackage(t,r){let{parentLocator:n,sourceLocator:a,sourceVersion:o,patchPaths:l}=lqe.parseLocator(t),A=await lqe.loadPatchFiles(n,l,r),f=await cqe.xfs.mktempPromise(),I=cqe.ppath.join(f,"current.zip"),C=await r.fetcher.fetch(a,r),b=aqe.structUtils.getIdentVendorPath(t),E=new Rqr.ZipFS(I,{create:!0,level:r.project.configuration.get("compressionLevel")});await aqe.miscUtils.releaseAfterUseAsync(async()=>{await E.copyPromise(b,C.prefixPath,{baseFs:C.packageFs,stableSort:!0})},C.releaseFs),E.saveAndClose();for(let{source:N,optional:B}of A){if(N===null)continue;let F=new Rqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")}),Q=new cqe.CwdFS(cqe.ppath.resolve(cqe.PortablePath.root,b),{baseFs:F});try{await lqe.applyPatchFile(lqe.parsePatchFile(N),{baseFs:Q,version:o})}catch(X){if(!(X instanceof PPl.UnmatchedHunkError))throw X;let ae=r.project.configuration.get("enableInlineHunks"),ne=!ae&&!B?" (set enableInlineHunks for details)":"",ce=`${aqe.structUtils.prettyLocator(r.project.configuration,t)}: ${X.message}${ne}`,fe=ue=>{ae&&(0,WPl.reportHunk)(X.hunk,{configuration:r.project.configuration,report:ue})};if(F.discardAndClose(),B){r.report.reportWarningOnce(Tqr.MessageName.PATCH_HUNK_FAILED,ce,{reportExtra:fe});continue}else throw new Tqr.ReportError(Tqr.MessageName.PATCH_HUNK_FAILED,ce,fe)}F.saveAndClose()}return new Rqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")})}};K9t.PatchFetcher=Nqr});var O1s=H(j9t=>{"use strict";Object.defineProperty(j9t,"__esModule",{value:!0});j9t.PatchResolver=void 0;var OPl=(Pa(),vi(Va)),W1s=Sn(),Q6=OPl.__importStar(QFe()),Dqr=class{supportsDescriptor(t,r){return!!Q6.isPatchDescriptor(t)}supportsLocator(t,r){return!!Q6.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){let{patchPaths:a}=Q6.parseDescriptor(t);return a.every(o=>!Q6.isParentRequired(o))?t:W1s.structUtils.bindDescriptor(t,{locator:W1s.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:n}=Q6.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(n)}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=Q6.parseDescriptor(t),l=await Q6.loadPatchFiles(a,o,n.fetchOptions),A=r.sourceDescriptor;if(typeof A>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=Q6.makePatchHash(l,A.version);return[Q6.makeLocator(t,{parentLocator:a,sourcePackage:A,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:n}=Q6.parseLocator(t);return{...await r.resolver.resolve(n,r),...t}}};j9t.PatchResolver=Dqr});var H1s=H(kqr=>{"use strict";Object.defineProperty(kqr,"__esModule",{value:!0});var MPl=(Pa(),vi(Va)),M1s=el(),X6=Sn(),_L=ro(),uqe=($c(),vi(rg)),z9t=MPl.__importStar(QFe()),gqe=class extends M1s.BaseCommand{constructor(){super(...arguments),this.save=uqe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=uqe.Option.String()}async execute(){let t=await X6.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await X6.Project.find(t,this.context.cwd);if(!n)throw new M1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=_L.ppath.resolve(this.context.cwd,_L.npath.toPortablePath(this.patchFolder)),o=_L.ppath.join(a,"../source"),l=_L.ppath.join(a,"../.yarn-patch.json");if(!_L.xfs.existsSync(o))throw new uqe.UsageError("The argument folder didn't get created by 'yarn patch'");let A=await z9t.diffFolders(o,a),f=await _L.xfs.readJsonPromise(l),I=X6.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(I.locatorHash))throw new uqe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(A);return}let C=t.get("patchFolder"),b=_L.ppath.join(C,`${X6.structUtils.slugifyLocator(I)}.patch`);await _L.xfs.mkdirPromise(C,{recursive:!0}),await _L.xfs.writeFilePromise(b,A);let E=[],N=new Map;for(let B of r.storedPackages.values()){if(X6.structUtils.isVirtualLocator(B))continue;let F=B.dependencies.get(I.identHash);if(!F)continue;let Q=X6.structUtils.ensureDevirtualizedDescriptor(F),X=z9t.ensureUnpatchedDescriptor(Q),ae=r.storedResolutions.get(X.descriptorHash);if(!ae)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(ae))throw new Error("Assertion failed: Expected the package to have been registered");let ce=r.tryWorkspaceByLocator(B);if(ce)E.push(ce);else{let fe=r.originalPackages.get(B.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let ue=fe.dependencies.get(F.identHash);if(!ue)throw new Error("Assertion failed: Expected the original dependency to have been registered");N.set(ue.descriptorHash,ue)}}for(let B of E)for(let F of X6.Manifest.hardDependencies){let Q=B.manifest[F].get(I.identHash);if(!Q)continue;let X=z9t.makeDescriptor(Q,{parentLocator:null,sourceDescriptor:X6.structUtils.convertLocatorToDescriptor(I),patchPaths:[_L.ppath.join(_L.Filename.home,_L.ppath.relative(r.cwd,b))]});B.manifest[F].set(Q.identHash,X)}for(let B of N.values()){let F=z9t.makeDescriptor(B,{parentLocator:null,sourceDescriptor:X6.structUtils.convertLocatorToDescriptor(I),patchPaths:[_L.ppath.join(_L.Filename.home,_L.ppath.relative(r.cwd,b))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:X6.structUtils.stringifyIdent(F),description:B.range}},reference:F.range})}await r.persist()}};gqe.paths=[["patch-commit"]];gqe.usage=uqe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});kqr.default=gqe});var Q1s=H(Fqr=>{"use strict";Object.defineProperty(Fqr,"__esModule",{value:!0});var HPl=(Pa(),vi(Va)),Y1s=el(),TD=Sn(),xqr=ro(),q0e=($c(),vi(rg)),Gqr=HPl.__importStar(QFe()),Aqe=class extends Y1s.BaseCommand{constructor(){super(...arguments),this.update=q0e.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=q0e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=q0e.Option.String()}async execute(){let t=await TD.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await TD.Project.find(t,this.context.cwd),a=await TD.Cache.find(t);if(!n)throw new Y1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=TD.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let l=TD.miscUtils.mapAndFilter([...r.storedPackages.values()],A=>A.identHash!==o.identHash||TD.structUtils.isVirtualLocator(A)||Gqr.isPatchLocator(A)!==this.update?TD.miscUtils.mapAndFilter.skip:A);if(l.length===0)throw new q0e.UsageError("No package found in the project for the given locator");if(l.length>1)throw new q0e.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): +${o}`);let l=r.startsWith("/")?A=>A.slice(1):A=>A;return a.replace(new RegExp(`(a|b)(${M2.miscUtils.escapeRegExp(`/${l(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${M2.miscUtils.escapeRegExp(`/${l(n)}/`)}`,"g"),"$1/").replace(new RegExp(M2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(M2.miscUtils.escapeRegExp(`${n}/`),"g"),"")}function TWl(e,t){let r=[];for(let{source:n}of e){if(n===null)continue;let a=(0,J1s.parsePatchFile)(n);for(let o of a){let{semverExclusivity:l,...A}=o;l!==null&&t!==null&&!M2.semverUtils.satisfiesWithPrereleases(t,l)||r.push(JSON.stringify(A))}}return M2.hashUtils.makeHash(`${pWl.CACHE_VERSION}`,...r).slice(0,6)}});var e2s=H(Gqr=>{"use strict";Object.defineProperty(Gqr,"__esModule",{value:!0});Gqr.reportHunk=RWl;var nge=yn(),xqr=U9t();function RWl(e,{configuration:t,report:r}){for(let n of e.parts)for(let a of n.lines)switch(n.type){case xqr.PatchMutationType.Context:r.reportInfo(null,` ${nge.formatUtils.pretty(t,a,"grey")}`);break;case xqr.PatchMutationType.Deletion:r.reportError(nge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${nge.formatUtils.pretty(t,a,nge.formatUtils.Type.REMOVED)}`);break;case xqr.PatchMutationType.Insertion:r.reportError(nge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${nge.formatUtils.pretty(t,a,nge.formatUtils.Type.ADDED)}`);break;default:nge.miscUtils.assertNever(n.type)}}});var t2s=H($9t=>{"use strict";Object.defineProperty($9t,"__esModule",{value:!0});$9t.PatchFetcher=void 0;var NWl=(Pa(),vi(Va)),Fqr=yn(),lqe=yn(),uqe=zs(),Zqr=zK(),gqe=NWl.__importStar(JFe()),DWl=kqr(),kWl=e2s(),Lqr=class{supports(t,r){return!!gqe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${lqe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:lqe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async patchPackage(t,r){let{parentLocator:n,sourceLocator:a,sourceVersion:o,patchPaths:l}=gqe.parseLocator(t),A=await gqe.loadPatchFiles(n,l,r),f=await uqe.xfs.mktempPromise(),I=uqe.ppath.join(f,"current.zip"),C=await r.fetcher.fetch(a,r),b=lqe.structUtils.getIdentVendorPath(t),E=new Zqr.ZipFS(I,{create:!0,level:r.project.configuration.get("compressionLevel")});await lqe.miscUtils.releaseAfterUseAsync(async()=>{await E.copyPromise(b,C.prefixPath,{baseFs:C.packageFs,stableSort:!0})},C.releaseFs),E.saveAndClose();for(let{source:N,optional:B}of A){if(N===null)continue;let F=new Zqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")}),Q=new uqe.CwdFS(uqe.ppath.resolve(uqe.PortablePath.root,b),{baseFs:F});try{await gqe.applyPatchFile(gqe.parsePatchFile(N),{baseFs:Q,version:o})}catch(X){if(!(X instanceof DWl.UnmatchedHunkError))throw X;let ae=r.project.configuration.get("enableInlineHunks"),ne=!ae&&!B?" (set enableInlineHunks for details)":"",ce=`${lqe.structUtils.prettyLocator(r.project.configuration,t)}: ${X.message}${ne}`,fe=ue=>{ae&&(0,kWl.reportHunk)(X.hunk,{configuration:r.project.configuration,report:ue})};if(F.discardAndClose(),B){r.report.reportWarningOnce(Fqr.MessageName.PATCH_HUNK_FAILED,ce,{reportExtra:fe});continue}else throw new Fqr.ReportError(Fqr.MessageName.PATCH_HUNK_FAILED,ce,fe)}F.saveAndClose()}return new Zqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")})}};$9t.PatchFetcher=Lqr});var n2s=H(eVt=>{"use strict";Object.defineProperty(eVt,"__esModule",{value:!0});eVt.PatchResolver=void 0;var xWl=(Pa(),vi(Va)),r2s=yn(),Q6=xWl.__importStar(JFe()),Vqr=class{supportsDescriptor(t,r){return!!Q6.isPatchDescriptor(t)}supportsLocator(t,r){return!!Q6.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){let{patchPaths:a}=Q6.parseDescriptor(t);return a.every(o=>!Q6.isParentRequired(o))?t:r2s.structUtils.bindDescriptor(t,{locator:r2s.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:n}=Q6.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(n)}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=Q6.parseDescriptor(t),l=await Q6.loadPatchFiles(a,o,n.fetchOptions),A=r.sourceDescriptor;if(typeof A>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=Q6.makePatchHash(l,A.version);return[Q6.makeLocator(t,{parentLocator:a,sourcePackage:A,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:n}=Q6.parseLocator(t);return{...await r.resolver.resolve(n,r),...t}}};eVt.PatchResolver=Vqr});var s2s=H(Pqr=>{"use strict";Object.defineProperty(Pqr,"__esModule",{value:!0});var GWl=(Pa(),vi(Va)),i2s=el(),X6=yn(),_L=zs(),Aqe=($c(),vi(rg)),tVt=GWl.__importStar(JFe()),dqe=class extends i2s.BaseCommand{constructor(){super(...arguments),this.save=Aqe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=Aqe.Option.String()}async execute(){let t=await X6.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await X6.Project.find(t,this.context.cwd);if(!n)throw new i2s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=_L.ppath.resolve(this.context.cwd,_L.npath.toPortablePath(this.patchFolder)),o=_L.ppath.join(a,"../source"),l=_L.ppath.join(a,"../.yarn-patch.json");if(!_L.xfs.existsSync(o))throw new Aqe.UsageError("The argument folder didn't get created by 'yarn patch'");let A=await tVt.diffFolders(o,a),f=await _L.xfs.readJsonPromise(l),I=X6.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(I.locatorHash))throw new Aqe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(A);return}let C=t.get("patchFolder"),b=_L.ppath.join(C,`${X6.structUtils.slugifyLocator(I)}.patch`);await _L.xfs.mkdirPromise(C,{recursive:!0}),await _L.xfs.writeFilePromise(b,A);let E=[],N=new Map;for(let B of r.storedPackages.values()){if(X6.structUtils.isVirtualLocator(B))continue;let F=B.dependencies.get(I.identHash);if(!F)continue;let Q=X6.structUtils.ensureDevirtualizedDescriptor(F),X=tVt.ensureUnpatchedDescriptor(Q),ae=r.storedResolutions.get(X.descriptorHash);if(!ae)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(ae))throw new Error("Assertion failed: Expected the package to have been registered");let ce=r.tryWorkspaceByLocator(B);if(ce)E.push(ce);else{let fe=r.originalPackages.get(B.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let ue=fe.dependencies.get(F.identHash);if(!ue)throw new Error("Assertion failed: Expected the original dependency to have been registered");N.set(ue.descriptorHash,ue)}}for(let B of E)for(let F of X6.Manifest.hardDependencies){let Q=B.manifest[F].get(I.identHash);if(!Q)continue;let X=tVt.makeDescriptor(Q,{parentLocator:null,sourceDescriptor:X6.structUtils.convertLocatorToDescriptor(I),patchPaths:[_L.ppath.join(_L.Filename.home,_L.ppath.relative(r.cwd,b))]});B.manifest[F].set(Q.identHash,X)}for(let B of N.values()){let F=tVt.makeDescriptor(B,{parentLocator:null,sourceDescriptor:X6.structUtils.convertLocatorToDescriptor(I),patchPaths:[_L.ppath.join(_L.Filename.home,_L.ppath.relative(r.cwd,b))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:X6.structUtils.stringifyIdent(F),description:B.range}},reference:F.range})}await r.persist()}};dqe.paths=[["patch-commit"]];dqe.usage=Aqe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});Pqr.default=dqe});var a2s=H(Mqr=>{"use strict";Object.defineProperty(Mqr,"__esModule",{value:!0});var FWl=(Pa(),vi(Va)),o2s=el(),TD=yn(),Wqr=zs(),$0e=($c(),vi(rg)),Oqr=FWl.__importStar(JFe()),pqe=class extends o2s.BaseCommand{constructor(){super(...arguments),this.update=$0e.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=$0e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=$0e.Option.String()}async execute(){let t=await TD.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await TD.Project.find(t,this.context.cwd),a=await TD.Cache.find(t);if(!n)throw new o2s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=TD.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let l=TD.miscUtils.mapAndFilter([...r.storedPackages.values()],A=>A.identHash!==o.identHash||TD.structUtils.isVirtualLocator(A)||Oqr.isPatchLocator(A)!==this.update?TD.miscUtils.mapAndFilter.skip:A);if(l.length===0)throw new $0e.UsageError("No package found in the project for the given locator");if(l.length>1)throw new $0e.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): ${l.map(A=>` -- ${TD.structUtils.prettyLocator(t,A)}`).join("")}`);o=l[0]}if(!r.storedPackages.has(o.locatorHash))throw new q0e.UsageError("No package found in the project for the given locator");await TD.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=Gqr.ensureUnpatchedLocator(o),f=await Gqr.extractPackageToDisk(o,{cache:a,project:r});l.reportJson({locator:TD.structUtils.stringifyLocator(A),path:xqr.npath.fromPortablePath(f)});let I=this.update?" along with its current modifications":"";l.reportInfo(TD.MessageName.UNNAMED,`Package ${TD.structUtils.prettyLocator(t,A)} got extracted with success${I}!`),l.reportInfo(TD.MessageName.UNNAMED,`You can now edit the following folder: ${TD.formatUtils.pretty(t,xqr.npath.fromPortablePath(f),"magenta")}`),l.reportInfo(TD.MessageName.UNNAMED,`Once you are done run ${TD.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${xqr.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};Aqe.paths=[["patch"]];Aqe.usage=q0e.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});Fqr.default=Aqe});var z1s=H(zO=>{"use strict";Object.defineProperty(zO,"__esModule",{value:!0});zO.patchUtils=zO.PatchCommand=zO.PatchCommitCommand=zO.PatchResolver=zO.PatchFetcher=void 0;var Zqr=(Pa(),vi(Va)),X1s=Sn(),J1s=P1s();Object.defineProperty(zO,"PatchFetcher",{enumerable:!0,get:function(){return J1s.PatchFetcher}});var U1s=O1s();Object.defineProperty(zO,"PatchResolver",{enumerable:!0,get:function(){return U1s.PatchResolver}});var K1s=Zqr.__importDefault(H1s());zO.PatchCommitCommand=K1s.default;var j1s=Zqr.__importDefault(Q1s());zO.PatchCommand=j1s.default;var YPl=Zqr.__importStar(QFe());zO.patchUtils=YPl;var QPl={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:X1s.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:X1s.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[K1s.default,j1s.default],fetchers:[J1s.PatchFetcher],resolvers:[U1s.PatchResolver]};zO.default=QPl});var t2s=H(q9t=>{"use strict";Object.defineProperty(q9t,"__esModule",{value:!0});q9t.PnpmLinker=void 0;var MS=Sn(),Wm=ro(),q1s=hGe(),Lqr=($c(),vi(rg)),Vqr=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new Lqr.UsageError(`The project in ${MS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,MS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new Lqr.UsageError(`Couldn't find ${MS.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new Lqr.UsageError(`The project in ${MS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,MS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let l=t,A=t;do{A=l,l=Wm.ppath.dirname(A);let f=a.locatorByPath.get(A);if(f)return f}while(l!==A);return null}makeInstaller(t){return new Pqr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};q9t.PnpmLinker=Vqr;var Pqr=class{constructor(t){this.opts=t,this.asyncActions=new MS.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,Wm.setupCopyIndex)(Wm.xfs,{indexPath:Wm.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,n){switch(t.linkType){case MS.LinkType.SOFT:return this.installPackageSoft(t,r,n);case MS.LinkType.HARD:return this.installPackageHard(t,r,n)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,n){let a=Wm.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?Wm.ppath.join(a,Wm.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,n){let a=JPl(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,MS.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await Wm.xfs.mkdirPromise(o,{recursive:!0}),await Wm.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let A=MS.structUtils.isVirtualLocator(t)?MS.structUtils.devirtualizeLocator(t):t,f={manifest:await MS.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new MS.Manifest,misc:{hasBindingGyp:q1s.jsInstallUtils.hasBindingGyp(r)}},I=this.opts.project.getDependencyMeta(A,t.version),C=q1s.jsInstallUtils.extractBuildRequest(t,f,I,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:C}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!$1s(t,{project:this.opts.project}))return;let n=this.customData.pathsByLocator.get(t.locatorHash);if(typeof n>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${MS.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=n;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await Wm.xfs.mkdirPromise(a,{recursive:!0});let l=await UPl(a),A=new Map(l),f=[o],I=(b,E)=>{let N=E;$1s(E,{project:this.opts.project})||(this.opts.report.reportWarningOnce(MS.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),N=MS.structUtils.devirtualizeLocator(E));let B=this.customData.pathsByLocator.get(N.locatorHash);if(typeof B>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${MS.structUtils.stringifyLocator(E)})`);let F=MS.structUtils.stringifyIdent(b),Q=Wm.ppath.join(a,F),X=Wm.ppath.relative(Wm.ppath.dirname(Q),B.packageLocation),ae=A.get(F);A.delete(F),f.push(Promise.resolve().then(async()=>{if(ae){if(ae.isSymbolicLink()&&await Wm.xfs.readlinkPromise(Q)===X)return;await Wm.xfs.removePromise(Q)}await Wm.xfs.mkdirpPromise(Wm.ppath.dirname(Q)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===MS.WindowsLinkType.JUNCTIONS?await Wm.xfs.symlinkPromise(B.packageLocation,Q,"junction"):await Wm.xfs.symlinkPromise(X,Q)}))},C=!1;for(let[b,E]of r)b.identHash===t.identHash&&(C=!0),I(b,E);!C&&!this.opts.project.tryWorkspaceByLocator(t)&&I(MS.structUtils.convertLocatorToDescriptor(t),t),f.push(KPl(a,A)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=e2s(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await Wm.xfs.removePromise(t);else{let r;try{r=new Set(await Wm.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:n}of this.customData.pathsByLocator.values()){if(!n)continue;let a=Wm.ppath.contains(t,n);if(a===null)continue;let[o]=a.split(Wm.ppath.sep);r.delete(o)}await Promise.all([...r].map(async n=>{await Wm.xfs.removePromise(Wm.ppath.join(t,n))}))}return await this.asyncActions.wait(),await Wqr(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await Wqr(XPl(this.opts.project)),{customData:this.customData}}};function XPl(e){return Wm.ppath.join(e.cwd,Wm.Filename.nodeModules)}function e2s(e){return e.configuration.get("pnpmStoreFolder")}function JPl(e,{project:t}){let r=MS.structUtils.slugifyLocator(e),n=e2s(t),a=Wm.ppath.join(n,r,"package"),o=Wm.ppath.join(n,r,Wm.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function $1s(e,{project:t}){return!MS.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function UPl(e){let t=new Map,r=[];try{r=await Wm.xfs.readdirPromise(e,{withFileTypes:!0})}catch(n){if(n.code!=="ENOENT")throw n}try{for(let n of r)if(!n.name.startsWith("."))if(n.name.startsWith("@")){let a=await Wm.xfs.readdirPromise(Wm.ppath.join(e,n.name),{withFileTypes:!0});if(a.length===0)t.set(n.name,n);else for(let o of a)t.set(`${n.name}/${o.name}`,o)}else t.set(n.name,n)}catch(n){if(n.code!=="ENOENT")throw n}return t}async function KPl(e,t){let r=[],n=new Set;for(let a of t.keys()){r.push(Wm.xfs.removePromise(Wm.ppath.join(e,a)));let o=MS.structUtils.tryParseIdent(a)?.scope;o&&n.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...n].map(a=>Wqr(Wm.ppath.join(e,a)))))}async function Wqr(e){try{await Wm.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY"&&t.code!=="EBUSY")throw t}}});var n2s=H(dqe=>{"use strict";Object.defineProperty(dqe,"__esModule",{value:!0});dqe.PnpmLinker=void 0;var jPl=Sn(),r2s=t2s();Object.defineProperty(dqe,"PnpmLinker",{enumerable:!0,get:function(){return r2s.PnpmLinker}});var zPl={configuration:{pnpmStoreFolder:{description:"By default, the store is stored in the 'node_modules/.store' of the project. Sometimes in CI scenario's it is convenient to store this in a different location so it can be cached and reused.",type:jPl.SettingsType.ABSOLUTE_PATH,default:"./node_modules/.store"}},linkers:[r2s.PnpmLinker]};dqe.default=zPl});var Oqr=H(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.ActionType=void 0;lJ.findVcsRoot=qPl;lJ.isYarnFile=$Pl;lJ.expandDirectory=eWl;lJ.checkConsensus=$9t;lJ.findConsensus=tWl;lJ.getCommitPrefix=i2s;lJ.genCommitMessage=nWl;var nge=ro(),$0e;(function(e){e[e.CREATE=0]="CREATE",e[e.DELETE=1]="DELETE",e[e.ADD=2]="ADD",e[e.REMOVE=3]="REMOVE",e[e.MODIFY=4]="MODIFY"})($0e||(lJ.ActionType=$0e={}));async function qPl(e,{marker:t}){do if(!nge.xfs.existsSync(nge.ppath.join(e,t)))e=nge.ppath.dirname(e);else return e;while(e!=="/");return null}function $Pl(e,{roots:t,names:r}){if(r.has(nge.ppath.basename(e)))return!0;do if(!t.has(e))e=nge.ppath.dirname(e);else return!0;while(e!=="/");return!1}function eWl(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop(),a=nge.xfs.readdirSync(n);for(let o of a){let l=nge.ppath.resolve(n,o);nge.xfs.lstatSync(l).isDirectory()?r.push(l):t.push(l)}}return t}function $9t(e,t){let r=0,n=0;for(let a of e)a!=="wip"&&(t.test(a)?r+=1:n+=1);return r>=n}function tWl(e){let t=$9t(e,/^(\w\(\w+\):\s*)?\w+s/),r=$9t(e,/^(\w\(\w+\):\s*)?[A-Z]/),n=$9t(e,/^\w\(\w+\):/);return{useThirdPerson:t,useUpperCase:r,useComponent:n}}function i2s(e){return e.useComponent?"chore(yarn): ":""}var rWl=new Map([[$0e.CREATE,"create"],[$0e.DELETE,"delete"],[$0e.ADD,"add"],[$0e.REMOVE,"remove"],[$0e.MODIFY,"update"]]);function nWl(e,t){let r=i2s(e),n=[],a=t.slice().sort((o,l)=>o[0]-l[0]);for(;a.length>0;){let[o,l]=a.shift(),A=rWl.get(o);e.useUpperCase&&n.length===0&&(A=`${A[0].toUpperCase()}${A.slice(1)}`),e.useThirdPerson&&(A+="s");let f=[l];for(;a.length>0&&a[0][0]===o;){let[,C]=a.shift();f.push(C)}f.sort();let I=f.shift();f.length===1?I+=" (and one other)":f.length>1&&(I+=` (and ${f.length} others)`),n.push(`${A} ${I}`)}return`${r}${n.join(", ")}`}});var o2s=H(eVt=>{"use strict";Object.defineProperty(eVt,"__esModule",{value:!0});eVt.Driver=void 0;var iWl=(Pa(),vi(Va)),mx=Sn(),XFe=ro(),K1=iWl.__importStar(Oqr()),sWl="Commit generated via `yarn stage`",oWl=11;async function s2s(e){let{code:t,stdout:r}=await mx.execUtils.execvp("git",["log","-1","--pretty=format:%H"],{cwd:e});return t===0?r.trim():null}async function aWl(e,t){let r=[],n=t.filter(I=>XFe.ppath.basename(I.path)==="package.json");for(let{action:I,path:C}of n){let b=XFe.ppath.relative(e,C);if(I===K1.ActionType.MODIFY){let E=await s2s(e),{stdout:N}=await mx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await mx.Manifest.fromText(N),F=await mx.Manifest.fromFile(C),Q=new Map([...F.dependencies,...F.devDependencies]),X=new Map([...B.dependencies,...B.devDependencies]);for(let[ae,ne]of X){let ce=mx.structUtils.stringifyIdent(ne),fe=Q.get(ae);fe?fe.range!==ne.range&&r.push([K1.ActionType.MODIFY,`${ce} to ${fe.range}`]):r.push([K1.ActionType.REMOVE,ce])}for(let[ae,ne]of Q)X.has(ae)||r.push([K1.ActionType.ADD,mx.structUtils.stringifyIdent(ne)])}else if(I===K1.ActionType.CREATE){let E=await mx.Manifest.fromFile(C);E.name?r.push([K1.ActionType.CREATE,mx.structUtils.stringifyIdent(E.name)]):r.push([K1.ActionType.CREATE,"a package"])}else if(I===K1.ActionType.DELETE){let E=await s2s(e),{stdout:N}=await mx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await mx.Manifest.fromText(N);B.name?r.push([K1.ActionType.DELETE,mx.structUtils.stringifyIdent(B.name)]):r.push([K1.ActionType.DELETE,"a package"])}else throw new Error("Assertion failed: Unsupported action type")}let{code:a,stdout:o}=await mx.execUtils.execvp("git",["log",`-${oWl}`,"--pretty=format:%s"],{cwd:e}),l=a===0?o.split(/\n/g).filter(I=>I!==""):[],A=K1.findConsensus(l);return K1.genCommitMessage(A,r)}var cWl={[K1.ActionType.CREATE]:[" A ","?? "],[K1.ActionType.MODIFY]:[" M "],[K1.ActionType.DELETE]:[" D "]},lWl={[K1.ActionType.CREATE]:["A "],[K1.ActionType.MODIFY]:["M "],[K1.ActionType.DELETE]:["D "]};eVt.Driver={async findRoot(e){return await K1.findVcsRoot(e,{marker:".git"})},async filterChanges(e,t,r,n){let{stdout:a}=await mx.execUtils.execvp("git",["status","-s"],{cwd:e,strict:!0}),o=a.toString().split(/\n/g),l=n?.staged?lWl:cWl;return[].concat(...o.map(f=>{if(f==="")return[];let I=f.slice(0,3),C=XFe.ppath.resolve(e,f.slice(3));if(!n?.staged&&I==="?? "&&f.endsWith("/"))return K1.expandDirectory(C).map(b=>({action:K1.ActionType.CREATE,path:b}));{let E=[K1.ActionType.CREATE,K1.ActionType.MODIFY,K1.ActionType.DELETE].find(N=>l[N].includes(I));return E!==void 0?[{action:E,path:C}]:[]}})).filter(f=>K1.isYarnFile(f.path,{roots:t,names:r}))},async genCommitMessage(e,t){return await aWl(e,t)},async makeStage(e,t){let r=t.map(n=>XFe.npath.fromPortablePath(n.path));await mx.execUtils.execvp("git",["add","--",...r],{cwd:e,strict:!0})},async makeCommit(e,t,r){let n=t.map(a=>XFe.npath.fromPortablePath(a.path));await mx.execUtils.execvp("git",["add","-N","--",...n],{cwd:e,strict:!0}),await mx.execUtils.execvp("git",["commit","-m",`${r} +- ${TD.structUtils.prettyLocator(t,A)}`).join("")}`);o=l[0]}if(!r.storedPackages.has(o.locatorHash))throw new $0e.UsageError("No package found in the project for the given locator");await TD.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=Oqr.ensureUnpatchedLocator(o),f=await Oqr.extractPackageToDisk(o,{cache:a,project:r});l.reportJson({locator:TD.structUtils.stringifyLocator(A),path:Wqr.npath.fromPortablePath(f)});let I=this.update?" along with its current modifications":"";l.reportInfo(TD.MessageName.UNNAMED,`Package ${TD.structUtils.prettyLocator(t,A)} got extracted with success${I}!`),l.reportInfo(TD.MessageName.UNNAMED,`You can now edit the following folder: ${TD.formatUtils.pretty(t,Wqr.npath.fromPortablePath(f),"magenta")}`),l.reportInfo(TD.MessageName.UNNAMED,`Once you are done run ${TD.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${Wqr.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};pqe.paths=[["patch"]];pqe.usage=$0e.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});Mqr.default=pqe});var d2s=H(zO=>{"use strict";Object.defineProperty(zO,"__esModule",{value:!0});zO.patchUtils=zO.PatchCommand=zO.PatchCommitCommand=zO.PatchResolver=zO.PatchFetcher=void 0;var Hqr=(Pa(),vi(Va)),c2s=yn(),l2s=t2s();Object.defineProperty(zO,"PatchFetcher",{enumerable:!0,get:function(){return l2s.PatchFetcher}});var u2s=n2s();Object.defineProperty(zO,"PatchResolver",{enumerable:!0,get:function(){return u2s.PatchResolver}});var g2s=Hqr.__importDefault(s2s());zO.PatchCommitCommand=g2s.default;var A2s=Hqr.__importDefault(a2s());zO.PatchCommand=A2s.default;var ZWl=Hqr.__importStar(JFe());zO.patchUtils=ZWl;var LWl={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:c2s.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:c2s.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[g2s.default,A2s.default],fetchers:[l2s.PatchFetcher],resolvers:[u2s.PatchResolver]};zO.default=LWl});var h2s=H(rVt=>{"use strict";Object.defineProperty(rVt,"__esModule",{value:!0});rVt.PnpmLinker=void 0;var MS=yn(),Wm=zs(),p2s=CGe(),Yqr=($c(),vi(rg)),Qqr=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new Yqr.UsageError(`The project in ${MS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,MS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new Yqr.UsageError(`Couldn't find ${MS.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new Yqr.UsageError(`The project in ${MS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,MS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let l=t,A=t;do{A=l,l=Wm.ppath.dirname(A);let f=a.locatorByPath.get(A);if(f)return f}while(l!==A);return null}makeInstaller(t){return new Xqr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};rVt.PnpmLinker=Qqr;var Xqr=class{constructor(t){this.opts=t,this.asyncActions=new MS.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,Wm.setupCopyIndex)(Wm.xfs,{indexPath:Wm.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,n){switch(t.linkType){case MS.LinkType.SOFT:return this.installPackageSoft(t,r,n);case MS.LinkType.HARD:return this.installPackageHard(t,r,n)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,n){let a=Wm.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?Wm.ppath.join(a,Wm.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,n){let a=PWl(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,MS.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await Wm.xfs.mkdirPromise(o,{recursive:!0}),await Wm.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let A=MS.structUtils.isVirtualLocator(t)?MS.structUtils.devirtualizeLocator(t):t,f={manifest:await MS.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new MS.Manifest,misc:{hasBindingGyp:p2s.jsInstallUtils.hasBindingGyp(r)}},I=this.opts.project.getDependencyMeta(A,t.version),C=p2s.jsInstallUtils.extractBuildRequest(t,f,I,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:C}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!f2s(t,{project:this.opts.project}))return;let n=this.customData.pathsByLocator.get(t.locatorHash);if(typeof n>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${MS.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=n;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await Wm.xfs.mkdirPromise(a,{recursive:!0});let l=await WWl(a),A=new Map(l),f=[o],I=(b,E)=>{let N=E;f2s(E,{project:this.opts.project})||(this.opts.report.reportWarningOnce(MS.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),N=MS.structUtils.devirtualizeLocator(E));let B=this.customData.pathsByLocator.get(N.locatorHash);if(typeof B>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${MS.structUtils.stringifyLocator(E)})`);let F=MS.structUtils.stringifyIdent(b),Q=Wm.ppath.join(a,F),X=Wm.ppath.relative(Wm.ppath.dirname(Q),B.packageLocation),ae=A.get(F);A.delete(F),f.push(Promise.resolve().then(async()=>{if(ae){if(ae.isSymbolicLink()&&await Wm.xfs.readlinkPromise(Q)===X)return;await Wm.xfs.removePromise(Q)}await Wm.xfs.mkdirpPromise(Wm.ppath.dirname(Q)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===MS.WindowsLinkType.JUNCTIONS?await Wm.xfs.symlinkPromise(B.packageLocation,Q,"junction"):await Wm.xfs.symlinkPromise(X,Q)}))},C=!1;for(let[b,E]of r)b.identHash===t.identHash&&(C=!0),I(b,E);!C&&!this.opts.project.tryWorkspaceByLocator(t)&&I(MS.structUtils.convertLocatorToDescriptor(t),t),f.push(OWl(a,A)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=I2s(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await Wm.xfs.removePromise(t);else{let r;try{r=new Set(await Wm.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:n}of this.customData.pathsByLocator.values()){if(!n)continue;let a=Wm.ppath.contains(t,n);if(a===null)continue;let[o]=a.split(Wm.ppath.sep);r.delete(o)}await Promise.all([...r].map(async n=>{await Wm.xfs.removePromise(Wm.ppath.join(t,n))}))}return await this.asyncActions.wait(),await Jqr(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await Jqr(VWl(this.opts.project)),{customData:this.customData}}};function VWl(e){return Wm.ppath.join(e.cwd,Wm.Filename.nodeModules)}function I2s(e){return e.configuration.get("pnpmStoreFolder")}function PWl(e,{project:t}){let r=MS.structUtils.slugifyLocator(e),n=I2s(t),a=Wm.ppath.join(n,r,"package"),o=Wm.ppath.join(n,r,Wm.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function f2s(e,{project:t}){return!MS.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function WWl(e){let t=new Map,r=[];try{r=await Wm.xfs.readdirPromise(e,{withFileTypes:!0})}catch(n){if(n.code!=="ENOENT")throw n}try{for(let n of r)if(!n.name.startsWith("."))if(n.name.startsWith("@")){let a=await Wm.xfs.readdirPromise(Wm.ppath.join(e,n.name),{withFileTypes:!0});if(a.length===0)t.set(n.name,n);else for(let o of a)t.set(`${n.name}/${o.name}`,o)}else t.set(n.name,n)}catch(n){if(n.code!=="ENOENT")throw n}return t}async function OWl(e,t){let r=[],n=new Set;for(let a of t.keys()){r.push(Wm.xfs.removePromise(Wm.ppath.join(e,a)));let o=MS.structUtils.tryParseIdent(a)?.scope;o&&n.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...n].map(a=>Jqr(Wm.ppath.join(e,a)))))}async function Jqr(e){try{await Wm.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY"&&t.code!=="EBUSY")throw t}}});var C2s=H(fqe=>{"use strict";Object.defineProperty(fqe,"__esModule",{value:!0});fqe.PnpmLinker=void 0;var MWl=yn(),m2s=h2s();Object.defineProperty(fqe,"PnpmLinker",{enumerable:!0,get:function(){return m2s.PnpmLinker}});var HWl={configuration:{pnpmStoreFolder:{description:"By default, the store is stored in the 'node_modules/.store' of the project. Sometimes in CI scenario's it is convenient to store this in a different location so it can be cached and reused.",type:MWl.SettingsType.ABSOLUTE_PATH,default:"./node_modules/.store"}},linkers:[m2s.PnpmLinker]};fqe.default=HWl});var Uqr=H(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.ActionType=void 0;lJ.findVcsRoot=YWl;lJ.isYarnFile=QWl;lJ.expandDirectory=XWl;lJ.checkConsensus=nVt;lJ.findConsensus=JWl;lJ.getCommitPrefix=_2s;lJ.genCommitMessage=KWl;var ige=zs(),eye;(function(e){e[e.CREATE=0]="CREATE",e[e.DELETE=1]="DELETE",e[e.ADD=2]="ADD",e[e.REMOVE=3]="REMOVE",e[e.MODIFY=4]="MODIFY"})(eye||(lJ.ActionType=eye={}));async function YWl(e,{marker:t}){do if(!ige.xfs.existsSync(ige.ppath.join(e,t)))e=ige.ppath.dirname(e);else return e;while(e!=="/");return null}function QWl(e,{roots:t,names:r}){if(r.has(ige.ppath.basename(e)))return!0;do if(!t.has(e))e=ige.ppath.dirname(e);else return!0;while(e!=="/");return!1}function XWl(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop(),a=ige.xfs.readdirSync(n);for(let o of a){let l=ige.ppath.resolve(n,o);ige.xfs.lstatSync(l).isDirectory()?r.push(l):t.push(l)}}return t}function nVt(e,t){let r=0,n=0;for(let a of e)a!=="wip"&&(t.test(a)?r+=1:n+=1);return r>=n}function JWl(e){let t=nVt(e,/^(\w\(\w+\):\s*)?\w+s/),r=nVt(e,/^(\w\(\w+\):\s*)?[A-Z]/),n=nVt(e,/^\w\(\w+\):/);return{useThirdPerson:t,useUpperCase:r,useComponent:n}}function _2s(e){return e.useComponent?"chore(yarn): ":""}var UWl=new Map([[eye.CREATE,"create"],[eye.DELETE,"delete"],[eye.ADD,"add"],[eye.REMOVE,"remove"],[eye.MODIFY,"update"]]);function KWl(e,t){let r=_2s(e),n=[],a=t.slice().sort((o,l)=>o[0]-l[0]);for(;a.length>0;){let[o,l]=a.shift(),A=UWl.get(o);e.useUpperCase&&n.length===0&&(A=`${A[0].toUpperCase()}${A.slice(1)}`),e.useThirdPerson&&(A+="s");let f=[l];for(;a.length>0&&a[0][0]===o;){let[,C]=a.shift();f.push(C)}f.sort();let I=f.shift();f.length===1?I+=" (and one other)":f.length>1&&(I+=` (and ${f.length} others)`),n.push(`${A} ${I}`)}return`${r}${n.join(", ")}`}});var b2s=H(iVt=>{"use strict";Object.defineProperty(iVt,"__esModule",{value:!0});iVt.Driver=void 0;var jWl=(Pa(),vi(Va)),mx=yn(),UFe=zs(),K1=jWl.__importStar(Uqr()),zWl="Commit generated via `yarn stage`",qWl=11;async function y2s(e){let{code:t,stdout:r}=await mx.execUtils.execvp("git",["log","-1","--pretty=format:%H"],{cwd:e});return t===0?r.trim():null}async function $Wl(e,t){let r=[],n=t.filter(I=>UFe.ppath.basename(I.path)==="package.json");for(let{action:I,path:C}of n){let b=UFe.ppath.relative(e,C);if(I===K1.ActionType.MODIFY){let E=await y2s(e),{stdout:N}=await mx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await mx.Manifest.fromText(N),F=await mx.Manifest.fromFile(C),Q=new Map([...F.dependencies,...F.devDependencies]),X=new Map([...B.dependencies,...B.devDependencies]);for(let[ae,ne]of X){let ce=mx.structUtils.stringifyIdent(ne),fe=Q.get(ae);fe?fe.range!==ne.range&&r.push([K1.ActionType.MODIFY,`${ce} to ${fe.range}`]):r.push([K1.ActionType.REMOVE,ce])}for(let[ae,ne]of Q)X.has(ae)||r.push([K1.ActionType.ADD,mx.structUtils.stringifyIdent(ne)])}else if(I===K1.ActionType.CREATE){let E=await mx.Manifest.fromFile(C);E.name?r.push([K1.ActionType.CREATE,mx.structUtils.stringifyIdent(E.name)]):r.push([K1.ActionType.CREATE,"a package"])}else if(I===K1.ActionType.DELETE){let E=await y2s(e),{stdout:N}=await mx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await mx.Manifest.fromText(N);B.name?r.push([K1.ActionType.DELETE,mx.structUtils.stringifyIdent(B.name)]):r.push([K1.ActionType.DELETE,"a package"])}else throw new Error("Assertion failed: Unsupported action type")}let{code:a,stdout:o}=await mx.execUtils.execvp("git",["log",`-${qWl}`,"--pretty=format:%s"],{cwd:e}),l=a===0?o.split(/\n/g).filter(I=>I!==""):[],A=K1.findConsensus(l);return K1.genCommitMessage(A,r)}var eOl={[K1.ActionType.CREATE]:[" A ","?? "],[K1.ActionType.MODIFY]:[" M "],[K1.ActionType.DELETE]:[" D "]},tOl={[K1.ActionType.CREATE]:["A "],[K1.ActionType.MODIFY]:["M "],[K1.ActionType.DELETE]:["D "]};iVt.Driver={async findRoot(e){return await K1.findVcsRoot(e,{marker:".git"})},async filterChanges(e,t,r,n){let{stdout:a}=await mx.execUtils.execvp("git",["status","-s"],{cwd:e,strict:!0}),o=a.toString().split(/\n/g),l=n?.staged?tOl:eOl;return[].concat(...o.map(f=>{if(f==="")return[];let I=f.slice(0,3),C=UFe.ppath.resolve(e,f.slice(3));if(!n?.staged&&I==="?? "&&f.endsWith("/"))return K1.expandDirectory(C).map(b=>({action:K1.ActionType.CREATE,path:b}));{let E=[K1.ActionType.CREATE,K1.ActionType.MODIFY,K1.ActionType.DELETE].find(N=>l[N].includes(I));return E!==void 0?[{action:E,path:C}]:[]}})).filter(f=>K1.isYarnFile(f.path,{roots:t,names:r}))},async genCommitMessage(e,t){return await $Wl(e,t)},async makeStage(e,t){let r=t.map(n=>UFe.npath.fromPortablePath(n.path));await mx.execUtils.execvp("git",["add","--",...r],{cwd:e,strict:!0})},async makeCommit(e,t,r){let n=t.map(a=>UFe.npath.fromPortablePath(a.path));await mx.execUtils.execvp("git",["add","-N","--",...n],{cwd:e,strict:!0}),await mx.execUtils.execvp("git",["commit","-m",`${r} -${sWl} -`,"--",...n],{cwd:e,strict:!0})},async makeReset(e,t){let r=t.map(n=>XFe.npath.fromPortablePath(n.path));await mx.execUtils.execvp("git",["reset","HEAD","--",...r],{cwd:e,strict:!0})}}});var c2s=H(Mqr=>{"use strict";Object.defineProperty(Mqr,"__esModule",{value:!0});var uWl=el(),a2s=Sn(),eye=ro(),JFe=($c(),vi(rg)),gWl=o2s(),AWl=[gWl.Driver],pqe=class extends uWl.BaseCommand{constructor(){super(...arguments),this.commit=JFe.Option.Boolean("-c,--commit",!1,{description:"Commit the staged files"}),this.reset=JFe.Option.Boolean("-r,--reset",!1,{description:"Remove all files from the staging area"}),this.dryRun=JFe.Option.Boolean("-n,--dry-run",!1,{description:"Print the commit message and the list of modified files without staging / committing"}),this.update=JFe.Option.Boolean("-u,--update",!1,{hidden:!0})}async execute(){let t=await a2s.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await a2s.Project.find(t,this.context.cwd),{driver:n,root:a}=await dWl(r.cwd),o=[t.get("cacheFolder"),t.get("globalFolder"),t.get("virtualFolder"),t.get("yarnPath")];await t.triggerHook(C=>C.populateYarnPaths,r,C=>{o.push(C)});let l=new Set;for(let C of o)for(let b of pWl(a,C))l.add(b);let A=new Set([t.get("rcFilename"),eye.Filename.lockfile,eye.Filename.manifest]),f=await n.filterChanges(a,l,A),I=await n.genCommitMessage(a,f);if(this.dryRun)if(this.commit)this.context.stdout.write(`${I} -`);else for(let C of f)this.context.stdout.write(`${eye.npath.fromPortablePath(C.path)} -`);else if(this.reset){let C=await n.filterChanges(a,l,A,{staged:!0});C.length===0?this.context.stdout.write("No staged changes found!"):await n.makeReset(a,C)}else f.length===0?this.context.stdout.write("No changes found!"):this.commit?await n.makeCommit(a,f,I):(await n.makeStage(a,f),this.context.stdout.write(I))}};pqe.paths=[["stage"]];pqe.usage=JFe.Command.Usage({description:"add all yarn files to your vcs",details:"\n This command will add to your staging area the files belonging to Yarn (typically any modified `package.json` and `.yarnrc.yml` files, but also linker-generated files, cache data, etc). It will take your ignore list into account, so the cache files won't be added if the cache is ignored in a `.gitignore` file (assuming you use Git).\n\n Running `--reset` will instead remove them from the staging area (the changes will still be there, but won't be committed until you stage them back).\n\n Since the staging area is a non-existent concept in Mercurial, Yarn will always create a new commit when running this command on Mercurial repositories. You can get this behavior when using Git by using the `--commit` flag which will directly create a commit.\n ",examples:[["Adds all modified project files to the staging area","yarn stage"],["Creates a new commit containing all modified project files","yarn stage --commit"]]});Mqr.default=pqe;async function dWl(e){let t=null,r=null;for(let n of AWl)if((r=await n.findRoot(e))!==null){t=n;break}if(t===null||r===null)throw new JFe.UsageError("No stage driver has been found for your current project");return{driver:t,root:r}}function pWl(e,t){let r=[];if(t===null)return r;for(;;){(t===e||t.startsWith(`${e}/`))&&r.push(t);let n;try{n=eye.xfs.statSync(t)}catch{break}if(n.isSymbolicLink())t=eye.ppath.resolve(eye.ppath.dirname(t),eye.xfs.readlinkSync(t));else break}return r}});var g2s=H(tye=>{"use strict";Object.defineProperty(tye,"__esModule",{value:!0});tye.stageUtils=tye.StageCommand=void 0;var l2s=(Pa(),vi(Va)),u2s=l2s.__importDefault(c2s());tye.StageCommand=u2s.default;var fWl=l2s.__importStar(Oqr());tye.stageUtils=fWl;var IWl={commands:[u2s.default]};tye.default=IWl});var Yqr=Nt(el(),1),Qqr=Nt(ro(),1),Xqr=Nt(ro(),1);var hWl=Nt(el()),mWl=Nt(Sn()),CWl=Nt(ro()),_Wl=Nt(zK()),yWl=Nt(TW()),bWl=Nt(C5e());$c();var EWl=Nt(UC());CZ();var opr={};sI(opr,{BadgesCommand:()=>j5e,default:()=>aVn});var tVn=Nt(el(),1),rVn=Nt(el(),1),nVn=Nt(Sn(),1),iVn=Nt(Sn(),1),sVn=Nt(Sn(),1),K5e=Nt(Sn(),1),oVn=Nt(Sn(),1);import{readFileSync as lHo}from"node:fs";import{writeFileSync as uHo}from"node:fs";import{join as eVn}from"node:path";var q9n=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],ipr={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var $9n=Nt(Sn(),1),spr=Nt(Sn(),1),edt=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=spr.formatUtils.pretty(this.configuration,`YN${$9n.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${spr.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} -`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var j5e=class e extends tVn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await iVn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sVn.Project.find(t,this.context.cwd);if(!n)throw new rVn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await nVn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let l=new edt(this.context.stdout,t);l.start();let A=X=>{let ae=X.anchoredLocator.locatorHash,ne=new Map,ce=[ae];for(;ce.length>0;){let fe=ce.shift();if(fe){if(ne.has(fe))continue;let ue=r.storedPackages.get(fe);if(typeof ue>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ne.set(fe,ue),K5e.structUtils.isVirtualLocator(ue)&&ce.push(K5e.structUtils.devirtualizeLocator(ue).locatorHash),fe!==ae)continue;for(let de of ue.dependencies.values()){let be=r.storedResolutions.get(de.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ce.push(be)}}}return ne.values()},I=(()=>{let X=new Map;for(let ae of r.workspaces)for(let ne of A(ae))X.set(ne.locatorHash,ne);return X.values()})(),C=oVn.miscUtils.sortMap([...I],X=>K5e.structUtils.stringifyLocator(X)),b=async X=>{let ae=K5e.structUtils.parseDescriptor(X),ne=C.filter(ce=>ce.scope===ae.scope&&ce.name===ae.name);return ne.length>0&&ne.shift()?.version||""},E=eVn(process.cwd(),"README.md"),B=lHo(E).toString("utf-8").split(e.VERSIONS_SEPARATOR),F=await Promise.all(q9n.map(async X=>({name:X,version:await b(X)}))),Q=(X,ae)=>{let ne=()=>{let ce=ue=>({labelColor:ue.labelColor.replace("#",""),color:ue.color.replace("#","")}),fe=Object.entries(ipr).find(([ue])=>ae.name.search(ue)!==-1);if(fe){let[,ue]=fe;return ce(ue)}return ce(ipr.tools)};if(ae.version){let ce=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${ae.name}`;eVn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,ae.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:ae.name,message:ae.version,...ne()}),ue=`badge`;return`${X}${((be,Se)=>`[${be}](${Se})`)(ue,ce)} `}return X};B[1]=F.reduce(Q,""),B[1]=` +${zWl} +`,"--",...n],{cwd:e,strict:!0})},async makeReset(e,t){let r=t.map(n=>UFe.npath.fromPortablePath(n.path));await mx.execUtils.execvp("git",["reset","HEAD","--",...r],{cwd:e,strict:!0})}}});var S2s=H(Kqr=>{"use strict";Object.defineProperty(Kqr,"__esModule",{value:!0});var rOl=el(),E2s=yn(),tye=zs(),KFe=($c(),vi(rg)),nOl=b2s(),iOl=[nOl.Driver],Iqe=class extends rOl.BaseCommand{constructor(){super(...arguments),this.commit=KFe.Option.Boolean("-c,--commit",!1,{description:"Commit the staged files"}),this.reset=KFe.Option.Boolean("-r,--reset",!1,{description:"Remove all files from the staging area"}),this.dryRun=KFe.Option.Boolean("-n,--dry-run",!1,{description:"Print the commit message and the list of modified files without staging / committing"}),this.update=KFe.Option.Boolean("-u,--update",!1,{hidden:!0})}async execute(){let t=await E2s.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await E2s.Project.find(t,this.context.cwd),{driver:n,root:a}=await sOl(r.cwd),o=[t.get("cacheFolder"),t.get("globalFolder"),t.get("virtualFolder"),t.get("yarnPath")];await t.triggerHook(C=>C.populateYarnPaths,r,C=>{o.push(C)});let l=new Set;for(let C of o)for(let b of oOl(a,C))l.add(b);let A=new Set([t.get("rcFilename"),tye.Filename.lockfile,tye.Filename.manifest]),f=await n.filterChanges(a,l,A),I=await n.genCommitMessage(a,f);if(this.dryRun)if(this.commit)this.context.stdout.write(`${I} +`);else for(let C of f)this.context.stdout.write(`${tye.npath.fromPortablePath(C.path)} +`);else if(this.reset){let C=await n.filterChanges(a,l,A,{staged:!0});C.length===0?this.context.stdout.write("No staged changes found!"):await n.makeReset(a,C)}else f.length===0?this.context.stdout.write("No changes found!"):this.commit?await n.makeCommit(a,f,I):(await n.makeStage(a,f),this.context.stdout.write(I))}};Iqe.paths=[["stage"]];Iqe.usage=KFe.Command.Usage({description:"add all yarn files to your vcs",details:"\n This command will add to your staging area the files belonging to Yarn (typically any modified `package.json` and `.yarnrc.yml` files, but also linker-generated files, cache data, etc). It will take your ignore list into account, so the cache files won't be added if the cache is ignored in a `.gitignore` file (assuming you use Git).\n\n Running `--reset` will instead remove them from the staging area (the changes will still be there, but won't be committed until you stage them back).\n\n Since the staging area is a non-existent concept in Mercurial, Yarn will always create a new commit when running this command on Mercurial repositories. You can get this behavior when using Git by using the `--commit` flag which will directly create a commit.\n ",examples:[["Adds all modified project files to the staging area","yarn stage"],["Creates a new commit containing all modified project files","yarn stage --commit"]]});Kqr.default=Iqe;async function sOl(e){let t=null,r=null;for(let n of iOl)if((r=await n.findRoot(e))!==null){t=n;break}if(t===null||r===null)throw new KFe.UsageError("No stage driver has been found for your current project");return{driver:t,root:r}}function oOl(e,t){let r=[];if(t===null)return r;for(;;){(t===e||t.startsWith(`${e}/`))&&r.push(t);let n;try{n=tye.xfs.statSync(t)}catch{break}if(n.isSymbolicLink())t=tye.ppath.resolve(tye.ppath.dirname(t),tye.xfs.readlinkSync(t));else break}return r}});var w2s=H(rye=>{"use strict";Object.defineProperty(rye,"__esModule",{value:!0});rye.stageUtils=rye.StageCommand=void 0;var v2s=(Pa(),vi(Va)),B2s=v2s.__importDefault(S2s());rye.StageCommand=B2s.default;var aOl=v2s.__importStar(Uqr());rye.stageUtils=aOl;var cOl={commands:[B2s.default]};rye.default=cOl});var zqr=Nt(el(),1),qqr=Nt(zs(),1),$qr=Nt(zs(),1);var lOl=Nt(el()),uOl=Nt(yn()),gOl=Nt(zs()),AOl=Nt(zK()),dOl=Nt(TW()),pOl=Nt(y5e());$c();var fOl=Nt(UC());CZ();var upr={};sI(upr,{BadgesCommand:()=>q5e,default:()=>pVn});var cVn=Nt(el(),1),lVn=Nt(el(),1),uVn=Nt(yn(),1),gVn=Nt(yn(),1),AVn=Nt(yn(),1),z5e=Nt(yn(),1),dVn=Nt(yn(),1);import{readFileSync as vHo}from"node:fs";import{writeFileSync as BHo}from"node:fs";import{join as aVn}from"node:path";var sVn=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],cpr={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var oVn=Nt(yn(),1),lpr=Nt(yn(),1),rdt=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=lpr.formatUtils.pretty(this.configuration,`YN${oVn.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${lpr.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} +`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var q5e=class e extends cVn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await gVn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await AVn.Project.find(t,this.context.cwd);if(!n)throw new lVn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await uVn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let l=new rdt(this.context.stdout,t);l.start();let A=X=>{let ae=X.anchoredLocator.locatorHash,ne=new Map,ce=[ae];for(;ce.length>0;){let fe=ce.shift();if(fe){if(ne.has(fe))continue;let ue=r.storedPackages.get(fe);if(typeof ue>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ne.set(fe,ue),z5e.structUtils.isVirtualLocator(ue)&&ce.push(z5e.structUtils.devirtualizeLocator(ue).locatorHash),fe!==ae)continue;for(let de of ue.dependencies.values()){let be=r.storedResolutions.get(de.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ce.push(be)}}}return ne.values()},I=(()=>{let X=new Map;for(let ae of r.workspaces)for(let ne of A(ae))X.set(ne.locatorHash,ne);return X.values()})(),C=dVn.miscUtils.sortMap([...I],X=>z5e.structUtils.stringifyLocator(X)),b=async X=>{let ae=z5e.structUtils.parseDescriptor(X),ne=C.filter(ce=>ce.scope===ae.scope&&ce.name===ae.name);return ne.length>0&&ne.shift()?.version||""},E=aVn(process.cwd(),"README.md"),B=vHo(E).toString("utf-8").split(e.VERSIONS_SEPARATOR),F=await Promise.all(sVn.map(async X=>({name:X,version:await b(X)}))),Q=(X,ae)=>{let ne=()=>{let ce=ue=>({labelColor:ue.labelColor.replace("#",""),color:ue.color.replace("#","")}),fe=Object.entries(cpr).find(([ue])=>ae.name.search(ue)!==-1);if(fe){let[,ue]=fe;return ce(ue)}return ce(cpr.tools)};if(ae.version){let ce=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${ae.name}`;aVn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,ae.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:ae.name,message:ae.version,...ne()}),ue=`badge`;return`${X}${((be,Se)=>`[${be}](${Se})`)(ue,ce)} `}return X};B[1]=F.reduce(Q,""),B[1]=` ${B[1]} -`,uHo(E,B.join("[//]: # (VERSIONS)")),l.end()})})).exitCode()}};var aVn={commands:[j5e]};var Ufr={};sI(Ufr,{default:()=>Y3n});var P3n=Nt(el(),1),W3n=Nt(el(),1),O3n=Nt(Sn(),1),M3n=Nt(Sn(),1),H3n=Nt(Sn(),1);$c();import{relative as GJo}from"node:path";import{readFile as DJo}from"node:fs/promises";import{writeFile as kJo}from"node:fs/promises";import{join as V3n}from"node:path";import{dirname as xJo}from"node:path";var S3n=Nt(AVn(),1);import{Readable as b3n,Transform as E3n}from"stream";import{execFileSync as _Jo}from"child_process";import{Readable as bHo}from"stream";import{spawn as gHo}from"child_process";function AHo(e){return new Promise(t=>{let r="",n=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{n=a}),e.on("close",()=>{r&&(n=new Error(r)),t(n)})})}async function*rdt(e,t,r){let n=gHo(e,t,r),a=AHo(n);yield*n.stdout;let o=await a;if(o)throw o}async function dIe(e,t,r){let n=rdt(e,t,r),a,o=[];for await(a of n)o.push(a);return Buffer.concat(o)}async function*dVn(e,t){let r,n,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(n=a.split(t),a=n.pop()||"",yield*n);a&&(yield a)}function tdt(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function dHo(e){let t=[],r,n,a;for(r in e)if(n=e[r],n===!0)t.push(tdt(r));else if(n===!1)t.push(tdt(`no-${r}`));else if(Array.isArray(n))for(a of n)t.push(tdt(r,a));else n&&t.push(tdt(r,n));return t}function upr(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(...upr(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...dHo(r)):t.push(String(r)));return t}var pVn="------------------------ >8 ------------------------",Vve=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=upr(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:n="",to:a="HEAD",format:o="%B",ignore:l,...A}=t,f=l?N=>!l.test(N):()=>!0,I=this.formatArgs("log",`--format=${o}%n${pVn}`,[n,a].filter(Boolean).join(".."),A,r&&["--",r]),C=rdt("git",I,{cwd:this.cwd}),b=dVn(C,`${pVn} -`),E;for await(E of b)f(E)&&(yield E)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,n=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=rdt("git",n,{cwd:this.cwd}),o,l,A;for await(o of a){l=o.toString().trim().matchAll(r);for([,A]of l)yield A}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let n=this.formatArgs("check-ignore",t,r);try{return await dIe("git",n,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let n=this.formatArgs("add",t,r);await dIe("git",n,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:n=!1,files:a=[],message:o,...l}=t,A=this.formatArgs("commit",!r&&"--no-verify",n&&"-S",a,"-m",o,l);await dIe("git",A,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:n,message:a,...o}=t;r&&(a="");let l=this.formatArgs("tag",r&&"-s",a&&"-a",n,a&&["-m",a],o);await dIe("git",l,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await dIe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let n=this.formatArgs("push","--follow-tags","origin",t,r);await dIe("git",n,{cwd:this.cwd})}};var $5e=Nt(UC(),1);function xVn(e){return e?`${e}@`:/^.+@/}var ndt=class extends Vve{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(fpr(),wVn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(mpr(),kVn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:n,...a}=t,[o,l]=await this.loadDeps();if(n){yield*l(this.getCommits(a,r));return}let A=o(r),f=this.getRawCommits(a);yield*A(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:n,clean:a,...o}=t,l=this.getTags(o),A=/.+-\w+\.\d+$/,f=a?(b,E)=>$5e.default.clean(E||b):b=>b,I,C;for await(C of l)n&&A.test(C)||(r?(typeof r=="string"?C.startsWith(r):r.test(C))&&(I=C.replace(r,""),$5e.default.valid(I)&&(C=f(C,I),C&&(yield C))):$5e.default.valid(C)&&(C=f(C),C&&(yield C)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),n=[];for await(let a of r)n.push(a);return n.length&&n.sort($5e.default.rcompare)[0]||null}};function EHo(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: -git `+r.join(" "))}),t}async function*SHo(e){let{cwd:t,debug:r,...n}=EHo(e),a=new Vve(t,r),o;typeof n.ignore=="string"&&(n.ignore=new RegExp(n.ignore));for await(o of a.getRawCommits(n))yield o}function Cpr(e){return bHo.from(SHo(e))}fpr();var ZVn=Nt(UC(),1);function GVn(e){return new Date(e).toISOString().slice(0,10)}function FVn(e){let t=[],r=[],n;function a(l){return t[0]===l?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(l)).join(".")}]`}function o(l,A){let f=A;return t.length>0?(n=t.indexOf(this),n!==-1?(t.splice(n+1),r.splice(n,1/0,l)):(t.push(this),r.push(l)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function eMe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let n="",a="";for(let o of e)n+=t[o]||"",a+=r[o]||"";return n.localeCompare(a)}:e}var vHo=7,BHo=100;function LVn(e,t,r){let{hash:n,header:a,committerDate:o}=e;return{hash:typeof n=="string"?n.substring(0,vHo):n,header:typeof a=="string"?a.substring(0,BHo):a,committerDate:o&&r.formatDate(o)}}function VVn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:LVn,generateOn:a=>!!(0,ZVn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:GVn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:eMe(r.commitGroupsSort),commitsSort:eMe(r.commitsSort),noteGroupsSort:eMe(r.noteGroupsSort),notesSort:eMe(r.notesSort)}}function PVn(e,t){let{generateOn:r}=t;return typeof r=="string"?n=>typeof n[r]<"u":typeof r!="function"?()=>!1:(n,a)=>r(n,a,e,t)}import{Transform as bXo}from"stream";var Kve=Nt(NWn(),1);mpr();var gfr=Nt(UC(),1);function mXo(e,t){let{groupBy:r,commitGroupsSort:n,commitsSort:a}=t,o=[],l=e.reduce((A,f)=>{let I=f[r]||"";return A[I]?A[I].push(f):A[I]=[f],A},{});return Object.entries(l).forEach(([A,f])=>{a&&f.sort(a),o.push({title:A,commits:f})}),n&&o.sort(n),o}function CXo(e,t){let{noteGroupsSort:r,notesSort:n}=t,a=[];return e.forEach(o=>{let{title:l}=o,A=!1;a.forEach(f=>{f.title===l&&(A=!0,f.notes.push(o))}),A||a.push({title:l,notes:[o]})}),r&&a.sort(r),n&&a.forEach(o=>{o.notes.sort(n)}),a}function _Xo(e,t,r){return{commitGroups:mXo(e,r),noteGroups:CXo(t,r)}}function DWn(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function kWn(e,t,r,n,a,o){let l={...a,...e,..._Xo(r,n,o)};return e?.committerDate&&(l.date=e.committerDate),l.version&&gfr.default.valid(l.version)&&(l.isPatch=l.isPatch||gfr.default.patch(l.version)!==0),l=await o.finalizeContext(l,o,r,e,t),o.debug(`Your final context is: -${FVn(l)}`),l}async function xWn(e={}){let t=` +`,BHo(E,B.join("[//]: # (VERSIONS)")),l.end()})})).exitCode()}};var pVn={commands:[q5e]};var qfr={};sI(qfr,{default:()=>z3n});var X3n=Nt(el(),1),J3n=Nt(el(),1),U3n=Nt(yn(),1),K3n=Nt(yn(),1),j3n=Nt(yn(),1);$c();import{relative as jJo}from"node:path";import{readFile as JJo}from"node:fs/promises";import{writeFile as UJo}from"node:fs/promises";import{join as Q3n}from"node:path";import{dirname as KJo}from"node:path";var D3n=Nt(CVn(),1);import{Readable as R3n,Transform as N3n}from"stream";import{execFileSync as ZJo}from"child_process";import{Readable as VHo}from"stream";import{spawn as wHo}from"child_process";function THo(e){return new Promise(t=>{let r="",n=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{n=a}),e.on("close",()=>{r&&(n=new Error(r)),t(n)})})}async function*idt(e,t,r){let n=wHo(e,t,r),a=THo(n);yield*n.stdout;let o=await a;if(o)throw o}async function pIe(e,t,r){let n=idt(e,t,r),a,o=[];for await(a of n)o.push(a);return Buffer.concat(o)}async function*_Vn(e,t){let r,n,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(n=a.split(t),a=n.pop()||"",yield*n);a&&(yield a)}function ndt(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function RHo(e){let t=[],r,n,a;for(r in e)if(n=e[r],n===!0)t.push(ndt(r));else if(n===!1)t.push(ndt(`no-${r}`));else if(Array.isArray(n))for(a of n)t.push(ndt(r,a));else n&&t.push(ndt(r,n));return t}function ppr(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(...ppr(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...RHo(r)):t.push(String(r)));return t}var yVn="------------------------ >8 ------------------------",Pve=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=ppr(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:n="",to:a="HEAD",format:o="%B",ignore:l,...A}=t,f=l?N=>!l.test(N):()=>!0,I=this.formatArgs("log",`--format=${o}%n${yVn}`,[n,a].filter(Boolean).join(".."),A,r&&["--",r]),C=idt("git",I,{cwd:this.cwd}),b=_Vn(C,`${yVn} +`),E;for await(E of b)f(E)&&(yield E)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,n=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=idt("git",n,{cwd:this.cwd}),o,l,A;for await(o of a){l=o.toString().trim().matchAll(r);for([,A]of l)yield A}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let n=this.formatArgs("check-ignore",t,r);try{return await pIe("git",n,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let n=this.formatArgs("add",t,r);await pIe("git",n,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:n=!1,files:a=[],message:o,...l}=t,A=this.formatArgs("commit",!r&&"--no-verify",n&&"-S",a,"-m",o,l);await pIe("git",A,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:n,message:a,...o}=t;r&&(a="");let l=this.formatArgs("tag",r&&"-s",a&&"-a",n,a&&["-m",a],o);await pIe("git",l,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await pIe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let n=this.formatArgs("push","--follow-tags","origin",t,r);await pIe("git",n,{cwd:this.cwd})}};var tMe=Nt(UC(),1);function WVn(e){return e?`${e}@`:/^.+@/}var sdt=class extends Pve{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(Cpr(),GVn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(bpr(),PVn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:n,...a}=t,[o,l]=await this.loadDeps();if(n){yield*l(this.getCommits(a,r));return}let A=o(r),f=this.getRawCommits(a);yield*A(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:n,clean:a,...o}=t,l=this.getTags(o),A=/.+-\w+\.\d+$/,f=a?(b,E)=>tMe.default.clean(E||b):b=>b,I,C;for await(C of l)n&&A.test(C)||(r?(typeof r=="string"?C.startsWith(r):r.test(C))&&(I=C.replace(r,""),tMe.default.valid(I)&&(C=f(C,I),C&&(yield C))):tMe.default.valid(C)&&(C=f(C),C&&(yield C)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),n=[];for await(let a of r)n.push(a);return n.length&&n.sort(tMe.default.rcompare)[0]||null}};function PHo(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: +git `+r.join(" "))}),t}async function*WHo(e){let{cwd:t,debug:r,...n}=PHo(e),a=new Pve(t,r),o;typeof n.ignore=="string"&&(n.ignore=new RegExp(n.ignore));for await(o of a.getRawCommits(n))yield o}function Epr(e){return VHo.from(WHo(e))}Cpr();var HVn=Nt(UC(),1);function OVn(e){return new Date(e).toISOString().slice(0,10)}function MVn(e){let t=[],r=[],n;function a(l){return t[0]===l?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(l)).join(".")}]`}function o(l,A){let f=A;return t.length>0?(n=t.indexOf(this),n!==-1?(t.splice(n+1),r.splice(n,1/0,l)):(t.push(this),r.push(l)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function rMe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let n="",a="";for(let o of e)n+=t[o]||"",a+=r[o]||"";return n.localeCompare(a)}:e}var OHo=7,MHo=100;function YVn(e,t,r){let{hash:n,header:a,committerDate:o}=e;return{hash:typeof n=="string"?n.substring(0,OHo):n,header:typeof a=="string"?a.substring(0,MHo):a,committerDate:o&&r.formatDate(o)}}function QVn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:YVn,generateOn:a=>!!(0,HVn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:OVn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:rMe(r.commitGroupsSort),commitsSort:rMe(r.commitsSort),noteGroupsSort:rMe(r.noteGroupsSort),notesSort:rMe(r.notesSort)}}function XVn(e,t){let{generateOn:r}=t;return typeof r=="string"?n=>typeof n[r]<"u":typeof r!="function"?()=>!1:(n,a)=>r(n,a,e,t)}import{Transform as VXo}from"stream";var jve=Nt(LWn(),1);bpr();var ffr=Nt(UC(),1);function GXo(e,t){let{groupBy:r,commitGroupsSort:n,commitsSort:a}=t,o=[],l=e.reduce((A,f)=>{let I=f[r]||"";return A[I]?A[I].push(f):A[I]=[f],A},{});return Object.entries(l).forEach(([A,f])=>{a&&f.sort(a),o.push({title:A,commits:f})}),n&&o.sort(n),o}function FXo(e,t){let{noteGroupsSort:r,notesSort:n}=t,a=[];return e.forEach(o=>{let{title:l}=o,A=!1;a.forEach(f=>{f.title===l&&(A=!0,f.notes.push(o))}),A||a.push({title:l,notes:[o]})}),r&&a.sort(r),n&&a.forEach(o=>{o.notes.sort(n)}),a}function ZXo(e,t,r){return{commitGroups:GXo(e,r),noteGroups:FXo(t,r)}}function VWn(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function PWn(e,t,r,n,a,o){let l={...a,...e,...ZXo(r,n,o)};return e?.committerDate&&(l.date=e.committerDate),l.version&&ffr.default.valid(l.version)&&(l.isPatch=l.isPatch||ffr.default.patch(l.version)!==0),l=await o.finalizeContext(l,o,r,e,t),o.debug(`Your final context is: +${MVn(l)}`),l}async function WWn(e={}){let t=` {{> header}} {{#each commitGroups}} @@ -1884,7 +1884,7 @@ ${FVn(l)}`),l}async function xWn(e={}){let t=` {{/each}} {{/each}} {{/if}} - `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,l,A,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:l,commitPartial:A,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a}}function yXo(e){let{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a,partials:o}=e;return Kve.default.registerPartial("header",r),Kve.default.registerPartial("commit",n),Kve.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([l,A])=>{typeof A=="string"&&Kve.default.registerPartial(l,A)}),Kve.default.compile(t,{noEscape:!0})}function GWn(e,t){let{ignoreReverted:r}=t,n=yXo(t);return async(a,o)=>{let l=[],A=(r?Array.from(hpr(a)):a).map(I=>({...I,notes:I.notes.map(C=>{let b={...C,commit:I};return l.push(b),b})})),f=await kWn(o,a,A,l,e,t);return n(f)}}function FWn(e){return new Proxy(e,{get(t,r){let n=t[r];return typeof n=="object"&&n!==null?FWn(n):n},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function ZWn(e,t,r,n){let a={};return typeof t=="function"&&(a=await t(FWn(e),r,n),!a)?null:{...e,...a,raw:e}}async function EXo(e={},t={}){let r=await xWn(t),n=VVn(t,r),a=DWn(e,n),o=PVn(a,n),l=GWn(a,n);return{finalContext:a,finalOptions:n,generateOn:o,renderTemplate:l}}function SXo(e={},t={},r=!1){let n=EXo(e,t),a=r?(o,l)=>({log:o,keyCommit:l}):o=>o;return async function*(l){let{finalContext:A,finalOptions:f,generateOn:I,renderTemplate:C}=await n,{transform:b,reverse:E,doFlush:N}=f,B,F,Q,X=[],ae=!0,ne,ce=null,fe=!0;for await(B of l)F=await ZWn(B,b,A,f),Q=F||B,E?(F&&X.push(F),I(Q,X)&&(ae=!1,ne=await C(X,Q),X=[],yield a(ne,Q))):(I(Q,X)&&(ae=!1,ne=await C(X,ce),X=[],(!fe||N)&&(yield a(ne,ce)),fe=!1,ce=Q),F&&X.push(F));!N&&(E||ae)||(ne=await C(X,ce),yield a(ne,ce))}}function LWn(e,t,r=!1){return bXo.from(SXo(e,t,r))}var C3n=Nt(mfr(),1),_3n=Nt(zWn(),1);import AJo from"fs/promises";import{exec as dJo}from"child_process";import{URL as pJo}from"url";function MXo(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?xVn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function qWn(e={}){let{cwd:t,...r}=MXo(e),n=new ndt(t),a=[];for await(let o of n.getSemverTags(r))a.push(o);return a}var y3n=Nt(wfr(),1);var xOn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var GOn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var FOn={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var fJo=/github|bitbucket|gitlab/i,IJo=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function hJo(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function mJo(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function CJo(e){return new Promise((t,r)=>{dJo("git config --get remote.origin.url",{cwd:e},(n,a)=>{n?r(n):t(a.trim())})})}async function Hfr(e,t,r,n,a,o){let l;e=mJo(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let A=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ne,ce){if(typeof ne.gitTags=="string"){let fe=A.exec(ne.gitTags);A.lastIndex=0,fe&&(ne.version=fe[1])}ne.committerDate&&(ne.committerDate=IJo.format(new Date(ne.committerDate))),ce(null,ne)},lernaPackage:null,...e,pkg:{transform:function(ne){return ne},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?l=Promise.resolve().then(()=>(Mfr(),g3n)).then(async({parsePackage:ne})=>{let ce=await AJo.readFile(e.pkg.path,"utf-8");return ne(ce)}):l=Promise.resolve().then(()=>(m3n(),h3n)).then(async({readPackageUp:ne})=>{let{packageJson:ce}=await ne({cwd:e.cwd});return ce}));let f=typeof e.config=="function"?e.config():e.config,[I,C,b,E]=await Promise.allSettled([f,l,qWn({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),CJo(e.cwd)]),N,B,F,Q,X,ae=[];if(e.config?I.status==="fulfilled"?N=I.value:(e.warn(I.reason.toString()),N={}):N={},t={...t,...N.context},e.pkg&&(C.status==="fulfilled"?(B=C.value||{},B=e.pkg.transform(B)):e.pkg.path&&e.warn(C.reason.toString())),(!B||!B.repository||!B.repository.url)&&E.status==="fulfilled"&&(B=B||{},B.repository=B.repository||{},B.repository.url=E.value,(0,y3n.default)(B)),B){t.version=t.version||B.version;try{let ne=typeof B.repository=="string"?B.repository:B.repository.url;ne&&(Q=C3n.default.fromUrl(ne)||(0,_3n.default)(ne))}catch{Q={}}if(Q.browse){let ne=Q.browse();if(!t.host)if(Q.domain){let ce=new pJo(ne);ce.origin.indexOf("//")!==-1?t.host=ce.protocol+"//"+Q.domain:t.host=ce.protocol+Q.domain}else t.host=null;t.owner=t.owner||Q.user||"",t.repository=t.repository||Q.project,Q.host&&Q.project&&Q.user?t.repoUrl=ne:t.repoUrl=t.host}t.packageData=B}if(t.version=t.version||"",b.status==="fulfilled"){ae=t.gitSemverTags=b.value,F=ae[e.releaseCount-1];let ne=ae[0];(ne===t.version||ne==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!n||!n.referenceActions)){let ne;if(t.host){let ce=t.host.match(fJo);ce&&(ne=ce[0])}else Q&&Q.type&&(ne=Q.type);if(ne){switch(ne){case"gitlab":X=GOn;break;case"bitbucket":X=FOn;break;default:X=xOn;break}t={issue:X.issue,commit:X.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),X={}}else X={};return t.resetChangelog&&(F=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:F,merges:!1,debug:e.debug,...N.commits,...r},e.append&&(r.reverse=r.reverse||!0),n={...N.parser,warn:e.warn,...n},X.referenceActions&&n&&(n.referenceActions=X.referenceActions),!n.issuePrefixes?.length&&X.issuePrefixes&&(n.issuePrefixes=X.issuePrefixes),a={finalizeContext:function(ne,ce,fe,ue,de){let be=de[0],Se=de[de.length-1],De=be?be.hash:null,k=Se?Se.hash:null;if((!ne.currentTag||!ne.previousTag)&&ue){let et=/tag:\s*(.+?)[,)]/gi.exec(ue.gitTags),ct=ne.currentTag;ne.currentTag=ct||et?et[1]:null;let Me=ae.indexOf(ne.currentTag);Me===-1?ne.currentTag=ct||null:(ne.previousTag=ae[Me+1])||(e.append?ne.previousTag=ne.previousTag||De:ne.previousTag=ne.previousTag||k)}else ne.previousTag=ne.previousTag||ae[0],ne.version==="Unreleased"?e.append?ne.currentTag=ne.currentTag||k:ne.currentTag=ne.currentTag||De:ne.currentTag||(e.lernaPackage?ne.currentTag=e.lernaPackage+"@"+ne.version:e.tagPrefix?ne.currentTag=e.tagPrefix+ne.version:ne.currentTag=hJo(ae[0],ne.version));return typeof ne.linkCompare!="boolean"&&ne.previousTag&&ne.currentTag&&(ne.linkCompare=!0),ne},debug:e.debug,...N.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:n,writerOpts:a,gitRawExecOpts:o}}function Yfr(e,t,r,n,a,o){let l=e?.cwd;a=a||{};let A=new b3n({objectMode:a.includeDetails});A._read=function(){};let f=!1,I=new b3n({objectMode:!0});I._read=function(){};function C(b,E){return Cpr({...r,from:b,to:E,cwd:l}).on("error",function(N){f||(setImmediate(I.emit.bind(I),"error",N),f=!0)})}return Hfr(e,t,r,n,a,o).then(function(b){e=b.options,t=b.context,r=b.gitRawCommitsOpts,n=b.parserOpts,a=b.writerOpts,o=b.gitRawExecOpts;try{_Jo("git",["rev-parse","--verify","HEAD"],{cwd:l,stdio:"ignore"});let E=t.gitSemverTags.slice(0).reverse();E.push("HEAD"),r.from&&(E.indexOf(r.from)!==-1?E=E.slice(E.indexOf(r.from)):E=[r.from,"HEAD"]);let N=E.map((B,F)=>{let Q=F>0?E[F-1]:"";return C(Q,B)});r.from&&(N=N.splice(1)),r.reverse&&N.reverse(),N.reduce((B,F)=>F.pipe((0,S3n.default)(B))).on("data",function(B){setImmediate(I.emit.bind(I),"data",B)}).on("end",function(){setImmediate(I.emit.bind(I),"end")})}catch{I=Cpr({...r,...o})}I.on("error",function(E){E.message="Error in git-raw-commits: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(ppr(n)).on("error",function(E){E.message="Error in conventional-commits-parser: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new E3n({objectMode:!0,highWaterMark:16,transform(E,N,B){try{e.transform.call(this,E,B)}catch(F){B(F)}}})).on("error",function(E){E.message="Error in options.transform: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(LWn(t,a,a.includeDetails)).on("error",function(E){E.message="Error in conventional-changelog-writer: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new E3n({objectMode:a.includeDetails,transform(E,N,B){try{A.push(E)}catch(F){setImmediate(function(){throw F})}B()},flush(E){A.push(null),E()}}))}).catch(function(b){setImmediate(A.emit.bind(A),"error",b)}),A}import yJo from"path";function bJo(e){if(yJo.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let n=`${t}${r}`;return n!==e?[n,e]:[e]}function EJo(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function SJo(e,t){let r=null;for(let n of t)try{return EJo(await e(n))}catch(a){r||(r=a)}throw r}function vJo(e){return async function(r){let n="",a=null;if(typeof r=="string")n=r;else if(typeof r=="object"&&typeof r.name=="string")n=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=bJo(n),l=null;try{l=await SJo(e,o)}catch(A){throw new Error(`Unable to load the "${n}" preset. Please make sure it's installed.`,{cause:A})}if(typeof l!="function")throw new Error(`The "${n}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await l(a):await l()}}var v3n=vJo(e=>import(e));function Qfr(e,t,r,n,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=v3n(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return Yfr(e,t,r,n,a)}function B3n(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var F3n=Nt(Xfr(),1);async function Z3n(){let e=` + `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,l,A,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:l,commitPartial:A,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a}}function LXo(e){let{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a,partials:o}=e;return jve.default.registerPartial("header",r),jve.default.registerPartial("commit",n),jve.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([l,A])=>{typeof A=="string"&&jve.default.registerPartial(l,A)}),jve.default.compile(t,{noEscape:!0})}function OWn(e,t){let{ignoreReverted:r}=t,n=LXo(t);return async(a,o)=>{let l=[],A=(r?Array.from(ypr(a)):a).map(I=>({...I,notes:I.notes.map(C=>{let b={...C,commit:I};return l.push(b),b})})),f=await PWn(o,a,A,l,e,t);return n(f)}}function MWn(e){return new Proxy(e,{get(t,r){let n=t[r];return typeof n=="object"&&n!==null?MWn(n):n},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function HWn(e,t,r,n){let a={};return typeof t=="function"&&(a=await t(MWn(e),r,n),!a)?null:{...e,...a,raw:e}}async function PXo(e={},t={}){let r=await WWn(t),n=QVn(t,r),a=VWn(e,n),o=XVn(a,n),l=OWn(a,n);return{finalContext:a,finalOptions:n,generateOn:o,renderTemplate:l}}function WXo(e={},t={},r=!1){let n=PXo(e,t),a=r?(o,l)=>({log:o,keyCommit:l}):o=>o;return async function*(l){let{finalContext:A,finalOptions:f,generateOn:I,renderTemplate:C}=await n,{transform:b,reverse:E,doFlush:N}=f,B,F,Q,X=[],ae=!0,ne,ce=null,fe=!0;for await(B of l)F=await HWn(B,b,A,f),Q=F||B,E?(F&&X.push(F),I(Q,X)&&(ae=!1,ne=await C(X,Q),X=[],yield a(ne,Q))):(I(Q,X)&&(ae=!1,ne=await C(X,ce),X=[],(!fe||N)&&(yield a(ne,ce)),fe=!1,ce=Q),F&&X.push(F));!N&&(E||ae)||(ne=await C(X,ce),yield a(ne,ce))}}function YWn(e,t,r=!1){return VXo.from(WXo(e,t,r))}var B3n=Nt(bfr(),1),w3n=Nt(iOn(),1);import TJo from"fs/promises";import{exec as RJo}from"child_process";import{URL as NJo}from"url";function i4o(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?WVn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function sOn(e={}){let{cwd:t,...r}=i4o(e),n=new sdt(t),a=[];for await(let o of n.getSemverTags(r))a.push(o);return a}var T3n=Nt(Dfr(),1);var WOn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var OOn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var MOn={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var DJo=/github|bitbucket|gitlab/i,kJo=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function xJo(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function GJo(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function FJo(e){return new Promise((t,r)=>{RJo("git config --get remote.origin.url",{cwd:e},(n,a)=>{n?r(n):t(a.trim())})})}async function Jfr(e,t,r,n,a,o){let l;e=GJo(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let A=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ne,ce){if(typeof ne.gitTags=="string"){let fe=A.exec(ne.gitTags);A.lastIndex=0,fe&&(ne.version=fe[1])}ne.committerDate&&(ne.committerDate=kJo.format(new Date(ne.committerDate))),ce(null,ne)},lernaPackage:null,...e,pkg:{transform:function(ne){return ne},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?l=Promise.resolve().then(()=>(Xfr(),m3n)).then(async({parsePackage:ne})=>{let ce=await TJo.readFile(e.pkg.path,"utf-8");return ne(ce)}):l=Promise.resolve().then(()=>(v3n(),S3n)).then(async({readPackageUp:ne})=>{let{packageJson:ce}=await ne({cwd:e.cwd});return ce}));let f=typeof e.config=="function"?e.config():e.config,[I,C,b,E]=await Promise.allSettled([f,l,sOn({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),FJo(e.cwd)]),N,B,F,Q,X,ae=[];if(e.config?I.status==="fulfilled"?N=I.value:(e.warn(I.reason.toString()),N={}):N={},t={...t,...N.context},e.pkg&&(C.status==="fulfilled"?(B=C.value||{},B=e.pkg.transform(B)):e.pkg.path&&e.warn(C.reason.toString())),(!B||!B.repository||!B.repository.url)&&E.status==="fulfilled"&&(B=B||{},B.repository=B.repository||{},B.repository.url=E.value,(0,T3n.default)(B)),B){t.version=t.version||B.version;try{let ne=typeof B.repository=="string"?B.repository:B.repository.url;ne&&(Q=B3n.default.fromUrl(ne)||(0,w3n.default)(ne))}catch{Q={}}if(Q.browse){let ne=Q.browse();if(!t.host)if(Q.domain){let ce=new NJo(ne);ce.origin.indexOf("//")!==-1?t.host=ce.protocol+"//"+Q.domain:t.host=ce.protocol+Q.domain}else t.host=null;t.owner=t.owner||Q.user||"",t.repository=t.repository||Q.project,Q.host&&Q.project&&Q.user?t.repoUrl=ne:t.repoUrl=t.host}t.packageData=B}if(t.version=t.version||"",b.status==="fulfilled"){ae=t.gitSemverTags=b.value,F=ae[e.releaseCount-1];let ne=ae[0];(ne===t.version||ne==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!n||!n.referenceActions)){let ne;if(t.host){let ce=t.host.match(DJo);ce&&(ne=ce[0])}else Q&&Q.type&&(ne=Q.type);if(ne){switch(ne){case"gitlab":X=OOn;break;case"bitbucket":X=MOn;break;default:X=WOn;break}t={issue:X.issue,commit:X.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),X={}}else X={};return t.resetChangelog&&(F=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:F,merges:!1,debug:e.debug,...N.commits,...r},e.append&&(r.reverse=r.reverse||!0),n={...N.parser,warn:e.warn,...n},X.referenceActions&&n&&(n.referenceActions=X.referenceActions),!n.issuePrefixes?.length&&X.issuePrefixes&&(n.issuePrefixes=X.issuePrefixes),a={finalizeContext:function(ne,ce,fe,ue,de){let be=de[0],Se=de[de.length-1],De=be?be.hash:null,k=Se?Se.hash:null;if((!ne.currentTag||!ne.previousTag)&&ue){let et=/tag:\s*(.+?)[,)]/gi.exec(ue.gitTags),ct=ne.currentTag;ne.currentTag=ct||et?et[1]:null;let Me=ae.indexOf(ne.currentTag);Me===-1?ne.currentTag=ct||null:(ne.previousTag=ae[Me+1])||(e.append?ne.previousTag=ne.previousTag||De:ne.previousTag=ne.previousTag||k)}else ne.previousTag=ne.previousTag||ae[0],ne.version==="Unreleased"?e.append?ne.currentTag=ne.currentTag||k:ne.currentTag=ne.currentTag||De:ne.currentTag||(e.lernaPackage?ne.currentTag=e.lernaPackage+"@"+ne.version:e.tagPrefix?ne.currentTag=e.tagPrefix+ne.version:ne.currentTag=xJo(ae[0],ne.version));return typeof ne.linkCompare!="boolean"&&ne.previousTag&&ne.currentTag&&(ne.linkCompare=!0),ne},debug:e.debug,...N.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:n,writerOpts:a,gitRawExecOpts:o}}function Ufr(e,t,r,n,a,o){let l=e?.cwd;a=a||{};let A=new R3n({objectMode:a.includeDetails});A._read=function(){};let f=!1,I=new R3n({objectMode:!0});I._read=function(){};function C(b,E){return Epr({...r,from:b,to:E,cwd:l}).on("error",function(N){f||(setImmediate(I.emit.bind(I),"error",N),f=!0)})}return Jfr(e,t,r,n,a,o).then(function(b){e=b.options,t=b.context,r=b.gitRawCommitsOpts,n=b.parserOpts,a=b.writerOpts,o=b.gitRawExecOpts;try{ZJo("git",["rev-parse","--verify","HEAD"],{cwd:l,stdio:"ignore"});let E=t.gitSemverTags.slice(0).reverse();E.push("HEAD"),r.from&&(E.indexOf(r.from)!==-1?E=E.slice(E.indexOf(r.from)):E=[r.from,"HEAD"]);let N=E.map((B,F)=>{let Q=F>0?E[F-1]:"";return C(Q,B)});r.from&&(N=N.splice(1)),r.reverse&&N.reverse(),N.reduce((B,F)=>F.pipe((0,D3n.default)(B))).on("data",function(B){setImmediate(I.emit.bind(I),"data",B)}).on("end",function(){setImmediate(I.emit.bind(I),"end")})}catch{I=Epr({...r,...o})}I.on("error",function(E){E.message="Error in git-raw-commits: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(mpr(n)).on("error",function(E){E.message="Error in conventional-commits-parser: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new N3n({objectMode:!0,highWaterMark:16,transform(E,N,B){try{e.transform.call(this,E,B)}catch(F){B(F)}}})).on("error",function(E){E.message="Error in options.transform: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(YWn(t,a,a.includeDetails)).on("error",function(E){E.message="Error in conventional-changelog-writer: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new N3n({objectMode:a.includeDetails,transform(E,N,B){try{A.push(E)}catch(F){setImmediate(function(){throw F})}B()},flush(E){A.push(null),E()}}))}).catch(function(b){setImmediate(A.emit.bind(A),"error",b)}),A}import LJo from"path";function VJo(e){if(LJo.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let n=`${t}${r}`;return n!==e?[n,e]:[e]}function PJo(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function WJo(e,t){let r=null;for(let n of t)try{return PJo(await e(n))}catch(a){r||(r=a)}throw r}function OJo(e){return async function(r){let n="",a=null;if(typeof r=="string")n=r;else if(typeof r=="object"&&typeof r.name=="string")n=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=VJo(n),l=null;try{l=await WJo(e,o)}catch(A){throw new Error(`Unable to load the "${n}" preset. Please make sure it's installed.`,{cause:A})}if(typeof l!="function")throw new Error(`The "${n}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await l(a):await l()}}var k3n=OJo(e=>import(e));function Kfr(e,t,r,n,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=k3n(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return Ufr(e,t,r,n,a)}function x3n(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var M3n=Nt(jfr(),1);async function H3n(){let e=` {{> header}} {{#each commitGroups}} @@ -1999,150 +1999,150 @@ ${FVn(l)}`),l}async function xWn(e={}){let t=` {{/each}} {{/if}} -`,a=NJo();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=n,a}function NJo(){return{transform:(e,t)=>{let r=!0,n=e.notes.map(C=>(r=!1,{...C,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,l=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,A=[],f=e.subject;if(typeof f=="string"){let C=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;C&&(C=`${C}/issues/`,f=f.replace(/#([0-9]+)/g,(b,E)=>(A.push(E),`[#${E}](${C}${E})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(b,E)=>E.includes("/")?`@${E}`:`[@${E}](${t.host}/${E})`))}let I=e.references.filter(C=>!A.includes(C.issue));return{notes:n,type:a,scope:o,shortHash:l,subject:f,references:I}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:F3n.default}}function L3n(e){let t=2,r=0,n=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(n+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${n} features`:`There are ${r} BREAKING CHANGES and ${n} features`}}async function Jfr(){return{parser:B3n(),writer:await Z3n(),whatBump:L3n}}var $dt=class{async generate({path:t,packageName:r,debug:n,tagPrefix:a,file:o,releaseCount:l}){let A={lernaPackage:`${r}`,tagPrefix:a,debug:n?console.debug:void 0,warn:console.warn,append:!0,releaseCount:l,pkg:{path:V3n(t,"package.json")},config:Jfr};return o?this.generateToFile(A,t):this.generateToStdOut(A)}async generateToStdOut(t){return new Promise((r,n)=>{let a=Qfr(t,void 0,{path:xJo(t.pkg?.path??"./")}),o="";a.on("data",l=>{o+=l.toString()}),a.on("end",()=>{r(o)}),a.on("error",l=>{n(l)})})}async generateToFile(t,r){let n=V3n(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await DJo(n,"utf8")}catch(A){let f=A;if(f.code!=="ENOENT")throw f}let l=o?`${a} -${o}`:a;return await kJo(n,l,"utf8"),l}catch(a){throw console.error("Error generating changelog:",a),a}}};var ept=class extends P3n.BaseCommand{static paths=[["changelog","generate"]];debug=Su.Boolean("--debug");tagPrefix=Su.String("-t,--tag-prefix");stdOut=Su.Boolean("--stdout",!1);async execute(){let t=await O3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await H3n.Project.find(t,this.context.cwd);if(!n)throw new W3n.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await M3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Generating changelog",async()=>{let A="";n.manifest.name?.scope&&(A+=`@${n.manifest.name.scope}/`),A+=`${n.manifest.name?.name}`;let f=GJo(r.cwd,this.context.cwd);a=await new $dt().generate({path:f,packageName:A,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var Y3n={commands:[ept]};var Kfr={};sI(Kfr,{CheckCommand:()=>mMe,default:()=>X3n});var Q3n=Nt(el(),1),mMe=class extends Q3n.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var X3n={commands:[mMe]};var r1r={};sI(r1r,{ChecksLintCommand:()=>uQe,ChecksTestIntegrationCommand:()=>IQe,ChecksTestUnitCommand:()=>hQe,ChecksTypeCheckCommand:()=>mQe,default:()=>Eii});var bni=Nt(el(),1),Eni=Nt(Sn(),1),TEr=Nt(Sn(),1),Sni=Nt(Sn(),1),REr=Nt(Sn(),1),NEr=Nt(ro(),1),vni=Nt(oIr(),1),Bni=Nt(Sn(),1),DEr=Nt(ro(),1),wni=Nt(ro(),1);$c();import{readFileSync as nba}from"node:fs";import{resolve as iba}from"node:path";var Bhr=Nt(Al(),1),Moe=Nt(Al(),1);var Ehr=Nt(Al(),1),Shr=Nt(Pc(),1),A8=({children:e,line:t=0,column:r=0})=>(0,Shr.jsxs)(Ehr.Text,{color:"cyan",children:[e,(0,Shr.jsxs)(Ehr.Text,{color:"yellow",children:[":",t,":",r]})]});var hYn=Nt(Al(),1),mYn=Nt(Pc(),1),J9=({offset:e=0})=>(0,mYn.jsx)(hYn.Text,{color:"gray",children:Array.from({length:process.stdout.columns-e},()=>"\u2500").join("")});var yYn=Nt(oIr(),1),bYn=Nt(Al(),1);import vhr from"node:process";import Kjo from"node:os";import CYn from"node:tty";function bM(e,t=globalThis.Deno?globalThis.Deno.args:vhr.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function qjo(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=jjo();n!==void 0&&(Opt=n);let a=r?Opt:n;if(a===0)return 0;if(r){if(bM("color=16m")||bM("color=full")||bM("color=truecolor"))return 3;if(bM("color=256"))return 2}if("TF_BUILD"in wS&&"AGENT_NAME"in wS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(wS.TERM==="dumb")return o;if(vhr.platform==="win32"){let l=Kjo.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in wS)return"GITHUB_ACTIONS"in wS||"GITEA_ACTIONS"in wS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in wS)||wS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in wS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(wS.TEAMCITY_VERSION)?1:0;if(wS.COLORTERM==="truecolor"||wS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in wS){let l=Number.parseInt((wS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(wS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(wS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(wS.TERM)||"COLORTERM"in wS?1:o}function Mpt(e,t={}){let r=qjo(e,{streamIsTTY:e&&e.isTTY,...t});return zjo(r)}var Vru={stdout:Mpt({isTTY:CYn.isatty(1)}),stderr:Mpt({isTTY:CYn.isatty(2)})};var EYn=Nt(Pc(),1),{level:$jo}=Mpt({isTTY:!0})||{level:0},_Yn=$jo>=1,e6o=(e,t,r,n)=>(0,yYn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:_Yn,forceColor:_Yn,message:n}),d8=({children:e,line:t,column:r,message:n})=>(0,EYn.jsx)(bYn.Text,{children:e6o(e,t,r,n)});var qN=Nt(Pc(),1),SYn=({filePath:e,message:t,source:r})=>(0,qN.jsxs)(Moe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,qN.jsxs)(Moe.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,qN.jsx)(Moe.Box,{flexDirection:"row",flexGrow:1,children:(0,qN.jsx)(A8,{line:t.line,column:t.column,children:e})}),(0,qN.jsx)(Moe.Box,{children:(0,qN.jsxs)(Bhr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,qN.jsx)(Moe.Box,{children:(0,qN.jsx)(J9,{offset:2})}),!!r&&(0,qN.jsxs)(qN.Fragment,{children:[(0,qN.jsx)(Moe.Box,{children:(0,qN.jsx)(d8,{line:t.line,column:t.column,children:r})}),(0,qN.jsx)(J9,{offset:2})]}),(0,qN.jsx)(Moe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,qN.jsxs)(Bhr.Text,{color:"white",children:[" ",t.message]})})]});var wYn=Nt(Al(),1);import{isAbsolute as n6o}from"node:path";import{relative as i6o}from"node:path";import{webcrypto as BYn}from"node:crypto";var vYn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var t6o=128,DIe,fBe;function r6o(e){!DIe||DIe.lengthDIe.length&&(BYn.getRandomValues(DIe),fBe=0),fBe+=e}function OW(e=21){r6o(e-=0);let t="";for(let r=fBe-e;r{let a=(0,TYn.useMemo)(()=>n6o(e)?i6o(n,e):e,[e]);return r.length===0?null:(0,whr.jsx)(wYn.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,whr.jsx)(SYn,{filePath:a,message:o,source:t},OW()))})};import P6o from"node:events";import{readFileSync as W6o}from"node:fs";import{readFile as O6o}from"node:fs/promises";import{writeFile as M6o}from"node:fs/promises";import{relative as H6o}from"node:path";import{join as AQn}from"node:path";var $Yn=Nt(Xcr(),1),AHe=Nt(nve(),1),gHe=Nt(ZYn(),1);import N6o from"node:fs";import D6o from"node:path";var Lhr=Nt(nve(),1),XYn=Nt(lHe(),1);import B6o from"node:process";import QYn from"node:fs";import hBe from"node:path";function IBe(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as S6o}from"node:url";import{Transform as v6o}from"node:stream";var uHe=e=>e instanceof URL?S6o(e):e,Ypt=class extends v6o{constructor(t){super({objectMode:!0,transform(r,n,a){a(void 0,t(r)?r:void 0)}})}},Qpt=e=>e[0]==="!";var JYn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},UYn="**/.gitignore",w6o=(e,t)=>Qpt(e)?"!"+hBe.posix.join(t,e.slice(1)):hBe.posix.join(t,e),T6o=(e,t)=>{let r=IBe(hBe.relative(t,hBe.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>w6o(n,r))},R6o=(e,t)=>{if(t=IBe(t),hBe.isAbsolute(e)){if(IBe(e).startsWith(t))return hBe.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},KYn=(e,t)=>{let r=e.flatMap(a=>T6o(a,t)),n=(0,XYn.default)().add(r);return a=>(a=uHe(a),a=R6o(a,t),a?n.ignores(IBe(a)):!1)},jYn=(e={})=>({cwd:uHe(e.cwd)||B6o.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),zYn=async(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=jYn(t),o=await(0,Lhr.default)(e,{cwd:r,suppressErrors:n,deep:a,...JYn}),l=await Promise.all(o.map(async A=>({filePath:A,content:await QYn.promises.readFile(A,"utf8")})));return KYn(l,r)},qYn=(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=jYn(t),l=Lhr.default.sync(e,{cwd:r,suppressErrors:n,deep:a,...JYn}).map(A=>({filePath:A,content:QYn.readFileSync(A,"utf8")}));return KYn(l,r)};var k6o=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},Vhr=e=>(e=[...new Set([e].flat())],k6o(e),e),x6o=e=>{if(!e.cwd)return;let t;try{t=N6o.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},eQn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:uHe(e.cwd)},x6o(e),e),tQn=e=>async(t,r)=>e(Vhr(t),eQn(r)),Xpt=e=>(t,r)=>e(Vhr(t),eQn(r)),rQn=e=>{let{ignoreFiles:t,gitignore:r}=e,n=t?Vhr(t):[];return r&&n.push(UYn),n},G6o=async e=>{let t=rQn(e);return iQn(t.length>0&&await zYn(t,e))},nQn=e=>{let t=rQn(e);return iQn(t.length>0&&qYn(t,e))},iQn=e=>{let t=new Set;return r=>{let n=r.path||r,a=D6o.normalize(n),o=t.has(a)||e&&e(n);return t.add(a),!o}},sQn=(e,t)=>e.flat().filter(r=>t(r)),F6o=(e,t)=>(0,$Yn.default)(e).pipe(new Ypt(r=>t(r))),oQn=(e,t)=>{let r=[];for(;e.length>0;){let n=e.findIndex(o=>Qpt(o));if(n===-1){r.push({patterns:e,options:t});break}let a=e[n].slice(1);for(let o of r)o.options.ignore.push(a);n!==0&&r.push({patterns:e.slice(0,n),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(n+1)}return r},aQn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),cQn=async(e,t)=>{let r=oQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=aQn(a,n),l=n?{cwd:n}:void 0;return Promise.all(r.map(async A=>{let{patterns:f,options:I}=A;return[f,I.ignore]=await Promise.all([(0,gHe.default)(f,o),(0,gHe.default)(I.ignore,l)]),{patterns:f,options:I}}))},Phr=(e,t)=>{let r=oQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=aQn(a,n),l=n?{cwd:n}:void 0;return r.map(A=>{let{patterns:f,options:I}=A;return f=gHe.default.sync(f,o),I.ignore=gHe.default.sync(I.ignore,l),{patterns:f,options:I}})},b$=tQn(async(e,t)=>{let[r,n]=await Promise.all([cQn(e,t),G6o(t)]),a=await Promise.all(r.map(o=>(0,AHe.default)(o.patterns,o.options)));return sQn(a,n)}),lQn=Xpt((e,t)=>{let r=Phr(e,t),n=nQn(t),a=r.map(o=>AHe.default.sync(o.patterns,o.options));return sQn(a,n)}),vnu=Xpt((e,t)=>{let r=Phr(e,t),n=nQn(t),a=r.map(o=>AHe.default.stream(o.patterns,o.options));return F6o(a,n)}),Bnu=Xpt((e,t)=>e.some(r=>AHe.default.isDynamicPattern(r,t))),wnu=tQn(cQn),Tnu=Xpt(Phr);var dQn=Nt(lHe(),1);import{join as Z6o}from"node:path";var uQn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen",".yarn",".vscode",".next","**/**/dist/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],L6o=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],V6o=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],gQn=e=>[...L6o.map(t=>Z6o(e,t)),...V6o];var Whr=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(n=>n.severity===1).length,fatalErrorCount:r.filter(n=>n.fatal).length,warningCount:r.filter(n=>n.severity===2).length});var mBe=class e extends P6o{constructor(r,n,a,o){super();this.linter=r;this.cacheLinter=n;this.config=a;this.cwd=o;this.ignore=dQn.default.default().add(uQn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,n){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:l}=await import("@atls/code-runtime/eslint"),A=new a({configType:"flat"}),f=l.map(C=>({...C,languageOptions:{...C.languageOptions||{},parserOptions:{...C.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),I=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:n,cacheLocation:AQn(r,".config/eslint/.eslintcache")});return new e(A,I,f,n)}async lintFile(r,n){let a=await O6o(r,"utf8");if(n?.fix){let{messages:o,fixed:l,output:A}=this.linter.verifyAndFix(a,this.config,{filename:r});return l&&await M6o(r,A,"utf8"),Whr(r,A,o)}return Whr(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],n){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let l=await this.lintFile(o,n);a.push(l),this.emit("lint:end",{result:l})}return this.emit("end",{results:a}),a}async lint(r,n){let o=(r&&r.length>0?r:await b$(gQn(this.cwd),{dot:!0})).filter(l=>this.ignore.filter([H6o(this.cwd,l)]).length!==0);return n?.cache?this.lintWithCache(o):this.lintFiles(o,n)}async lintWithCache(r=[]){this.emit("start",{files:r});let n=await this.cacheLinter.lintFiles(r);for(let a of n)this.emit("lint:end",{result:a});return this.emit("end",{results:n}),n}getProjectIgnorePatterns(){let r=W6o(AQn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var pQn=Nt(Al(),1);import{EventEmitter as Y6o}from"node:events";var Jpt=class extends Y6o{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},xE=e=>{let t=new Jpt,r=new Jpt,{cleanup:n}=(0,pQn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return n(),[...t.frames,...r.frames].join(` -`)};var SEr={};sI(SEr,{FilesChangedListCommand:()=>aQe,default:()=>Ini,getChangedCommmits:()=>Pmt,getChangedFiles:()=>oO,getCommitData:()=>lni,getEventCommmits:()=>cni,getGithubChangedFiles:()=>uni});var gni=Nt(el(),1),Ani=Nt(el(),1),dni=Nt(Sn(),1),pni=Nt(Sn(),1),fni=Nt(Sn(),1);$c();var sO=Nt(iTe(),1),Vmt=Nt(iTe(),1),ani=Nt(Sn(),1),Hya=100,cni=async()=>{if(sO.context.eventName==="push")return sO.context.payload.commits;if(sO.context.eventName==="pull_request"&&sO.context.payload.pull_request){let e=sO.context.payload.pull_request.commits_url;return(0,Vmt.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,sO.context.repo)}return console.log(`Unknown event "${sO.context.eventName}". Only "push" and "pull_request" supported.`),[]},lni=async e=>{let t=(0,Vmt.getOctokit)(process.env.GITHUB_TOKEN),r=[],n;for await(let a of t.paginate.iterator(t.rest.repos.getCommit,{...sO.context.repo,ref:e,per_page:Hya})){let o=a;n??=o,r.push(...o.data.files??[])}if(!n)throw new Error(`Could not resolve commit "${e}"`);return{...n,data:{...n.data,files:r}}},Pmt=async()=>{let e=await cni();return Promise.all(e.map(async t=>lni(t.id||t.sha)))},uni=async()=>{if(sO.context.eventName==="pull_request"&&sO.context.payload.pull_request){let t=(0,Vmt.getOctokit)(process.env.GITHUB_TOKEN);return(await t.paginate(t.rest.pulls.listFiles,{...sO.context.repo,pull_number:sO.context.payload.pull_request.number,per_page:100})).map(n=>n.filename).filter(Boolean)}return(await Pmt()).map(t=>t.data.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat()},oO=async(e,t)=>{let{stdout:r}=await ani.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0}),n=r.split(/\r?\n/).filter(Boolean);return n.length>0?n:!t&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?uni():[]};var aQe=class extends gni.BaseCommand{static paths=[["files","changed","list"]];json=Su.Boolean("--json",!1);async execute(){let t=await dni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await pni.Project.find(t,this.context.cwd);if(!n)throw new Ani.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await fni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await oO(r);for(let A of l)o.reportInfo(null,A),o.reportJson({location:A})})).exitCode()}};var Ini={commands:[aQe]};var _ni=Nt(Sn(),1),vEr=Nt(ro(),1),lQe=Nt(ro(),1),BEr=Nt(ro(),1);import{join as zya}from"node:path";var cQe="RAIJIN_NODE_LOADER",hni="--import",Yya="data:text/javascript,import%20%7B%20register%20%7D%20from%20%22node%3Amodule%22%3B",Qya=new Set(["--experimental-loader","--loader"]),Xya=e=>`data:text/javascript,${encodeURIComponent(['import { register } from "node:module";','import { pathToFileURL } from "node:url";',`register(${JSON.stringify(e)}, pathToFileURL("./"));`].join(" "))}`,Jya=(e,t,r)=>[e,t,r].filter(Boolean).join(" "),Uya=e=>e?.startsWith(Yya)??!1,Kya=e=>e?.includes(".pnp.loader.mjs")??!1,jya=e=>{if(!e)return;let t=e.split(/\s+/).filter(Boolean),r=[];for(let n=0;n0?r.join(" "):void 0},Wmt=e=>{let t=e[cQe];if(!t)return;let r=jya(e.NODE_OPTIONS);e.NODE_OPTIONS=Jya(r,hni,Xya(t))};var qya=process.platform==="win32"?"yarn.cmd":"yarn",$ya=process.platform==="win32"?"node.cmd":"node",eba=process.platform==="win32"?["yarn.cmd","yarnpkg.cmd"]:["yarn","yarnpkg"],mni=e=>`'${e.replaceAll("'","'\\''")}'`,Cni=(e,t)=>process.platform==="win32"?`@echo off\r +`,a=XJo();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=n,a}function XJo(){return{transform:(e,t)=>{let r=!0,n=e.notes.map(C=>(r=!1,{...C,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,l=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,A=[],f=e.subject;if(typeof f=="string"){let C=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;C&&(C=`${C}/issues/`,f=f.replace(/#([0-9]+)/g,(b,E)=>(A.push(E),`[#${E}](${C}${E})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(b,E)=>E.includes("/")?`@${E}`:`[@${E}](${t.host}/${E})`))}let I=e.references.filter(C=>!A.includes(C.issue));return{notes:n,type:a,scope:o,shortHash:l,subject:f,references:I}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:M3n.default}}function Y3n(e){let t=2,r=0,n=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(n+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${n} features`:`There are ${r} BREAKING CHANGES and ${n} features`}}async function zfr(){return{parser:x3n(),writer:await H3n(),whatBump:Y3n}}var tpt=class{async generate({path:t,packageName:r,debug:n,tagPrefix:a,file:o,releaseCount:l}){let A={lernaPackage:`${r}`,tagPrefix:a,debug:n?console.debug:void 0,warn:console.warn,append:!0,releaseCount:l,pkg:{path:Q3n(t,"package.json")},config:zfr};return o?this.generateToFile(A,t):this.generateToStdOut(A)}async generateToStdOut(t){return new Promise((r,n)=>{let a=Kfr(t,void 0,{path:KJo(t.pkg?.path??"./")}),o="";a.on("data",l=>{o+=l.toString()}),a.on("end",()=>{r(o)}),a.on("error",l=>{n(l)})})}async generateToFile(t,r){let n=Q3n(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await JJo(n,"utf8")}catch(A){let f=A;if(f.code!=="ENOENT")throw f}let l=o?`${a} +${o}`:a;return await UJo(n,l,"utf8"),l}catch(a){throw console.error("Error generating changelog:",a),a}}};var rpt=class extends X3n.BaseCommand{static paths=[["changelog","generate"]];debug=Su.Boolean("--debug");tagPrefix=Su.String("-t,--tag-prefix");stdOut=Su.Boolean("--stdout",!1);async execute(){let t=await U3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await j3n.Project.find(t,this.context.cwd);if(!n)throw new J3n.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await K3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Generating changelog",async()=>{let A="";n.manifest.name?.scope&&(A+=`@${n.manifest.name.scope}/`),A+=`${n.manifest.name?.name}`;let f=jJo(r.cwd,this.context.cwd);a=await new tpt().generate({path:f,packageName:A,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var z3n={commands:[rpt]};var $fr={};sI($fr,{CheckCommand:()=>_Me,default:()=>$3n});var q3n=Nt(el(),1),_Me=class extends q3n.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var $3n={commands:[_Me]};var o1r={};sI(o1r,{ChecksLintCommand:()=>AQe,ChecksTestIntegrationCommand:()=>mQe,ChecksTestUnitCommand:()=>CQe,ChecksTypeCheckCommand:()=>_Qe,default:()=>Nii});var Rni=Nt(el(),1),Nni=Nt(yn(),1),kEr=Nt(yn(),1),Dni=Nt(yn(),1),xEr=Nt(yn(),1),GEr=Nt(zs(),1),kni=Nt(uIr(),1),xni=Nt(yn(),1),FEr=Nt(zs(),1),Gni=Nt(zs(),1);$c();import{readFileSync as Cba}from"node:fs";import{resolve as _ba}from"node:path";var Nhr=Nt(Al(),1),Hoe=Nt(Al(),1);var whr=Nt(Al(),1),Thr=Nt(Pc(),1),A8=({children:e,line:t=0,column:r=0})=>(0,Thr.jsxs)(whr.Text,{color:"cyan",children:[e,(0,Thr.jsxs)(whr.Text,{color:"yellow",children:[":",t,":",r]})]});var SYn=Nt(Al(),1),vYn=Nt(Pc(),1),J9=({offset:e=0})=>(0,vYn.jsx)(SYn.Text,{color:"gray",children:Array.from({length:process.stdout.columns-e},()=>"\u2500").join("")});var TYn=Nt(uIr(),1),RYn=Nt(Al(),1);import Rhr from"node:process";import g6o from"node:os";import BYn from"node:tty";function bM(e,t=globalThis.Deno?globalThis.Deno.args:Rhr.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function p6o(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=A6o();n!==void 0&&(Hpt=n);let a=r?Hpt:n;if(a===0)return 0;if(r){if(bM("color=16m")||bM("color=full")||bM("color=truecolor"))return 3;if(bM("color=256"))return 2}if("TF_BUILD"in wS&&"AGENT_NAME"in wS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(wS.TERM==="dumb")return o;if(Rhr.platform==="win32"){let l=g6o.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in wS)return"GITHUB_ACTIONS"in wS||"GITEA_ACTIONS"in wS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in wS)||wS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in wS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(wS.TEAMCITY_VERSION)?1:0;if(wS.COLORTERM==="truecolor"||wS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in wS){let l=Number.parseInt((wS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(wS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(wS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(wS.TERM)||"COLORTERM"in wS?1:o}function Ypt(e,t={}){let r=p6o(e,{streamIsTTY:e&&e.isTTY,...t});return d6o(r)}var Nnu={stdout:Ypt({isTTY:BYn.isatty(1)}),stderr:Ypt({isTTY:BYn.isatty(2)})};var NYn=Nt(Pc(),1),{level:f6o}=Ypt({isTTY:!0})||{level:0},wYn=f6o>=1,I6o=(e,t,r,n)=>(0,TYn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:wYn,forceColor:wYn,message:n}),d8=({children:e,line:t,column:r,message:n})=>(0,NYn.jsx)(RYn.Text,{children:I6o(e,t,r,n)});var qN=Nt(Pc(),1),DYn=({filePath:e,message:t,source:r})=>(0,qN.jsxs)(Hoe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,qN.jsxs)(Hoe.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,qN.jsx)(Hoe.Box,{flexDirection:"row",flexGrow:1,children:(0,qN.jsx)(A8,{line:t.line,column:t.column,children:e})}),(0,qN.jsx)(Hoe.Box,{children:(0,qN.jsxs)(Nhr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,qN.jsx)(Hoe.Box,{children:(0,qN.jsx)(J9,{offset:2})}),!!r&&(0,qN.jsxs)(qN.Fragment,{children:[(0,qN.jsx)(Hoe.Box,{children:(0,qN.jsx)(d8,{line:t.line,column:t.column,children:r})}),(0,qN.jsx)(J9,{offset:2})]}),(0,qN.jsx)(Hoe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,qN.jsxs)(Nhr.Text,{color:"white",children:[" ",t.message]})})]});var GYn=Nt(Al(),1);import{isAbsolute as C6o}from"node:path";import{relative as _6o}from"node:path";import{webcrypto as xYn}from"node:crypto";var kYn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var h6o=128,kIe,IBe;function m6o(e){!kIe||kIe.lengthkIe.length&&(xYn.getRandomValues(kIe),IBe=0),IBe+=e}function OW(e=21){m6o(e-=0);let t="";for(let r=IBe-e;r{let a=(0,FYn.useMemo)(()=>C6o(e)?_6o(n,e):e,[e]);return r.length===0?null:(0,Dhr.jsx)(GYn.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,Dhr.jsx)(DYn,{filePath:a,message:o,source:t},OW()))})};import t7o from"node:events";import{readFileSync as r7o}from"node:fs";import{readFile as n7o}from"node:fs/promises";import{writeFile as i7o}from"node:fs/promises";import{relative as s7o}from"node:path";import{join as CQn}from"node:path";var oQn=Nt(jcr(),1),pHe=Nt(ive(),1),dHe=Nt(HYn(),1);import X6o from"node:fs";import J6o from"node:path";var Ohr=Nt(ive(),1),$Yn=Nt(gHe(),1);import M6o from"node:process";import qYn from"node:fs";import mBe from"node:path";function hBe(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as W6o}from"node:url";import{Transform as O6o}from"node:stream";var AHe=e=>e instanceof URL?W6o(e):e,Xpt=class extends O6o{constructor(t){super({objectMode:!0,transform(r,n,a){a(void 0,t(r)?r:void 0)}})}},Jpt=e=>e[0]==="!";var eQn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},tQn="**/.gitignore",H6o=(e,t)=>Jpt(e)?"!"+mBe.posix.join(t,e.slice(1)):mBe.posix.join(t,e),Y6o=(e,t)=>{let r=hBe(mBe.relative(t,mBe.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>H6o(n,r))},Q6o=(e,t)=>{if(t=hBe(t),mBe.isAbsolute(e)){if(hBe(e).startsWith(t))return mBe.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},rQn=(e,t)=>{let r=e.flatMap(a=>Y6o(a,t)),n=(0,$Yn.default)().add(r);return a=>(a=AHe(a),a=Q6o(a,t),a?n.ignores(hBe(a)):!1)},nQn=(e={})=>({cwd:AHe(e.cwd)||M6o.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),iQn=async(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=nQn(t),o=await(0,Ohr.default)(e,{cwd:r,suppressErrors:n,deep:a,...eQn}),l=await Promise.all(o.map(async A=>({filePath:A,content:await qYn.promises.readFile(A,"utf8")})));return rQn(l,r)},sQn=(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=nQn(t),l=Ohr.default.sync(e,{cwd:r,suppressErrors:n,deep:a,...eQn}).map(A=>({filePath:A,content:qYn.readFileSync(A,"utf8")}));return rQn(l,r)};var U6o=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},Mhr=e=>(e=[...new Set([e].flat())],U6o(e),e),K6o=e=>{if(!e.cwd)return;let t;try{t=X6o.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},aQn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:AHe(e.cwd)},K6o(e),e),cQn=e=>async(t,r)=>e(Mhr(t),aQn(r)),Upt=e=>(t,r)=>e(Mhr(t),aQn(r)),lQn=e=>{let{ignoreFiles:t,gitignore:r}=e,n=t?Mhr(t):[];return r&&n.push(tQn),n},j6o=async e=>{let t=lQn(e);return gQn(t.length>0&&await iQn(t,e))},uQn=e=>{let t=lQn(e);return gQn(t.length>0&&sQn(t,e))},gQn=e=>{let t=new Set;return r=>{let n=r.path||r,a=J6o.normalize(n),o=t.has(a)||e&&e(n);return t.add(a),!o}},AQn=(e,t)=>e.flat().filter(r=>t(r)),z6o=(e,t)=>(0,oQn.default)(e).pipe(new Xpt(r=>t(r))),dQn=(e,t)=>{let r=[];for(;e.length>0;){let n=e.findIndex(o=>Jpt(o));if(n===-1){r.push({patterns:e,options:t});break}let a=e[n].slice(1);for(let o of r)o.options.ignore.push(a);n!==0&&r.push({patterns:e.slice(0,n),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(n+1)}return r},pQn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),fQn=async(e,t)=>{let r=dQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=pQn(a,n),l=n?{cwd:n}:void 0;return Promise.all(r.map(async A=>{let{patterns:f,options:I}=A;return[f,I.ignore]=await Promise.all([(0,dHe.default)(f,o),(0,dHe.default)(I.ignore,l)]),{patterns:f,options:I}}))},Hhr=(e,t)=>{let r=dQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=pQn(a,n),l=n?{cwd:n}:void 0;return r.map(A=>{let{patterns:f,options:I}=A;return f=dHe.default.sync(f,o),I.ignore=dHe.default.sync(I.ignore,l),{patterns:f,options:I}})},b$=cQn(async(e,t)=>{let[r,n]=await Promise.all([fQn(e,t),j6o(t)]),a=await Promise.all(r.map(o=>(0,pHe.default)(o.patterns,o.options)));return AQn(a,n)}),IQn=Upt((e,t)=>{let r=Hhr(e,t),n=uQn(t),a=r.map(o=>pHe.default.sync(o.patterns,o.options));return AQn(a,n)}),hiu=Upt((e,t)=>{let r=Hhr(e,t),n=uQn(t),a=r.map(o=>pHe.default.stream(o.patterns,o.options));return z6o(a,n)}),miu=Upt((e,t)=>e.some(r=>pHe.default.isDynamicPattern(r,t))),Ciu=cQn(fQn),_iu=Upt(Hhr);var _Qn=Nt(gHe(),1);import{join as q6o}from"node:path";var hQn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen",".yarn",".vscode",".next","**/**/dist/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],$6o=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],e7o=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],mQn=e=>[...$6o.map(t=>q6o(e,t)),...e7o];var Yhr=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(n=>n.severity===1).length,fatalErrorCount:r.filter(n=>n.fatal).length,warningCount:r.filter(n=>n.severity===2).length});var CBe=class e extends t7o{constructor(r,n,a,o){super();this.linter=r;this.cacheLinter=n;this.config=a;this.cwd=o;this.ignore=_Qn.default.default().add(hQn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,n){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:l}=await import("@atls/code-runtime/eslint"),A=new a({configType:"flat"}),f=l.map(C=>({...C,languageOptions:{...C.languageOptions||{},parserOptions:{...C.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),I=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:n,cacheLocation:CQn(r,".config/eslint/.eslintcache")});return new e(A,I,f,n)}async lintFile(r,n){let a=await n7o(r,"utf8");if(n?.fix){let{messages:o,fixed:l,output:A}=this.linter.verifyAndFix(a,this.config,{filename:r});return l&&await i7o(r,A,"utf8"),Yhr(r,A,o)}return Yhr(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],n){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let l=await this.lintFile(o,n);a.push(l),this.emit("lint:end",{result:l})}return this.emit("end",{results:a}),a}async lint(r,n){let o=(r&&r.length>0?r:await b$(mQn(this.cwd),{dot:!0})).filter(l=>this.ignore.filter([s7o(this.cwd,l)]).length!==0);return n?.cache?this.lintWithCache(o):this.lintFiles(o,n)}async lintWithCache(r=[]){this.emit("start",{files:r});let n=await this.cacheLinter.lintFiles(r);for(let a of n)this.emit("lint:end",{result:a});return this.emit("end",{results:n}),n}getProjectIgnorePatterns(){let r=r7o(CQn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var yQn=Nt(Al(),1);import{EventEmitter as o7o}from"node:events";var Kpt=class extends o7o{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},xE=e=>{let t=new Kpt,r=new Kpt,{cleanup:n}=(0,yQn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return n(),[...t.frames,...r.frames].join(` +`)};var TEr={};sI(TEr,{FilesChangedListCommand:()=>lQe,default:()=>Eni,getChangedCommmits:()=>Omt,getChangedFiles:()=>oO,getCommitData:()=>Ini,getEventCommmits:()=>fni,getGithubChangedFiles:()=>hni});var mni=Nt(el(),1),Cni=Nt(el(),1),_ni=Nt(yn(),1),yni=Nt(yn(),1),bni=Nt(yn(),1);$c();var sO=Nt(sTe(),1),Wmt=Nt(sTe(),1),pni=Nt(yn(),1),sba=100,fni=async()=>{if(sO.context.eventName==="push")return sO.context.payload.commits;if(sO.context.eventName==="pull_request"&&sO.context.payload.pull_request){let e=sO.context.payload.pull_request.commits_url;return(0,Wmt.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,sO.context.repo)}return console.log(`Unknown event "${sO.context.eventName}". Only "push" and "pull_request" supported.`),[]},Ini=async e=>{let t=(0,Wmt.getOctokit)(process.env.GITHUB_TOKEN),r=[],n;for await(let a of t.paginate.iterator(t.rest.repos.getCommit,{...sO.context.repo,ref:e,per_page:sba})){let o=a;n??=o,r.push(...o.data.files??[])}if(!n)throw new Error(`Could not resolve commit "${e}"`);return{...n,data:{...n.data,files:r}}},Omt=async()=>{let e=await fni();return Promise.all(e.map(async t=>Ini(t.id||t.sha)))},hni=async()=>{if(sO.context.eventName==="pull_request"&&sO.context.payload.pull_request){let t=(0,Wmt.getOctokit)(process.env.GITHUB_TOKEN);return(await t.paginate(t.rest.pulls.listFiles,{...sO.context.repo,pull_number:sO.context.payload.pull_request.number,per_page:100})).map(n=>n.filename).filter(Boolean)}return(await Omt()).map(t=>t.data.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat()},oO=async(e,t)=>{let{stdout:r}=await pni.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0}),n=r.split(/\r?\n/).filter(Boolean);return n.length>0?n:!t&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?hni():[]};var lQe=class extends mni.BaseCommand{static paths=[["files","changed","list"]];json=Su.Boolean("--json",!1);async execute(){let t=await _ni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await yni.Project.find(t,this.context.cwd);if(!n)throw new Cni.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await bni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await oO(r);for(let A of l)o.reportInfo(null,A),o.reportJson({location:A})})).exitCode()}};var Eni={commands:[lQe]};var wni=Nt(yn(),1),REr=Nt(zs(),1),gQe=Nt(zs(),1),NEr=Nt(zs(),1);import{join as dba}from"node:path";var uQe="RAIJIN_NODE_LOADER",Sni="--import",oba="data:text/javascript,import%20%7B%20register%20%7D%20from%20%22node%3Amodule%22%3B",aba=new Set(["--experimental-loader","--loader"]),cba=e=>`data:text/javascript,${encodeURIComponent(['import { register } from "node:module";','import { pathToFileURL } from "node:url";',`register(${JSON.stringify(e)}, pathToFileURL("./"));`].join(" "))}`,lba=(e,t,r)=>[e,t,r].filter(Boolean).join(" "),uba=e=>e?.startsWith(oba)??!1,gba=e=>e?.includes(".pnp.loader.mjs")??!1,Aba=e=>{if(!e)return;let t=e.split(/\s+/).filter(Boolean),r=[];for(let n=0;n0?r.join(" "):void 0},Mmt=e=>{let t=e[uQe];if(!t)return;let r=Aba(e.NODE_OPTIONS);e.NODE_OPTIONS=lba(r,Sni,cba(t))};var pba=process.platform==="win32"?"yarn.cmd":"yarn",fba=process.platform==="win32"?"node.cmd":"node",Iba=process.platform==="win32"?["yarn.cmd","yarnpkg.cmd"]:["yarn","yarnpkg"],vni=e=>`'${e.replaceAll("'","'\\''")}'`,Bni=(e,t)=>process.platform==="win32"?`@echo off\r "${e}" ${t.map(r=>`"${r.replaceAll('"','""')}"`).join(" ")} %*\r `:`#!/bin/sh -exec ${mni(e)} ${t.map(mni).join(" ")} "$@" -`,wEr=e=>{let t=e.configuration.get("yarnPath");return t?lQe.ppath.isAbsolute(t)?t:lQe.ppath.join(e.cwd,t):null},tba=async(e,t,r)=>{let n=wEr(t);if(!n)return;let a=vEr.npath.toPortablePath(e),o=Cni(process.execPath,[vEr.npath.fromPortablePath(n)]);await Promise.all([...r?[BEr.xfs.writeFilePromise(lQe.ppath.join(a,$ya),Cni(process.execPath,[]),{mode:493})]:[],...eba.map(async l=>BEr.xfs.writeFilePromise(lQe.ppath.join(a,l),o,{mode:493}))])},iC=async({binFolder:e,locator:t,project:r,env:n={},nodeLoader:a})=>{let o=await _ni.scriptUtils.makeScriptEnv({binFolder:e,locator:t,project:r,ignoreCorepack:!0}),l={...o,...n,...a?{[cQe]:a}:{}};return Wmt(l),await tba(o.BERRY_BIN_FOLDER,r,a),{executable:zya(o.BERRY_BIN_FOLDER,qya),env:l}};var yni=Nt(iTe(),1),sTe=Nt(iTe(),1);var WM=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,yni.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async update(t){return(await this.octokit.rest.checks.update(t)).data}async start(){let{payload:t}=sTe.context;return this.create({...sTe.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){return this.update({...sTe.context.repo,check_run_id:t,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t,r){let{payload:n}=sTe.context,a={...sTe.context.repo,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t};return r?this.update({...a,check_run_id:r}):this.create({...a,name:this.name,head_sha:n.after||n.pull_request?.head.sha||process.env.GITHUB_SHA})}};var Tni=Nt(Pc(),1),uQe=class extends bni.BaseCommand{static paths=[["checks","lint"]];changed=Su.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(NEr.Filename.pnpCjs)&&t.includes(NEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await TEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await REr.Project.find(t,this.context.cwd),n=await DEr.xfs.mktempPromise(),a=["checks","lint",...this.changed?["--changed"]:[]],{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Bni.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await TEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await REr.Project.find(t,this.context.cwd);return(await Eni.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new WM("Lint"),{id:l}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let A=await mBe.initialize(r.cwd,this.context.cwd),f=await this.getLintTargets(r),I=[];f===null?I=await A.lint():f.length>0&&(I=await A.lint(f)),I.filter(N=>N.messages.length>0).forEach(N=>{xE((0,Tni.jsx)(RYn,{...N})).split(` -`).forEach(F=>{a.reportInfo(Sni.MessageName.UNNAMED,F)})});let C=this.formatResults(I,r.cwd),b=C.filter(N=>N.annotation_level==="warning").length,E=C.filter(N=>N.annotation_level==="failure").length;await o.complete(l,{title:C.length>0?`Errors ${E}, Warnings ${b}`:"Successful",summary:C.length>0?`Found ${E} errors and ${b} warnings`:"All checks passed",annotations:C})}catch(A){await o.failure({title:"Lint run failed",summary:A instanceof Error?A.message:A},l)}})})).exitCode()}async getLintTargets(t){if(!this.changed)return null;let r=(await oO(t)).filter(a=>/\.(c|m)?(j|t)sx?$/.test(a)),n=await Promise.all(r.map(async a=>DEr.xfs.existsPromise(wni.npath.toPortablePath(iba(t.cwd,a)))));return r.filter((a,o)=>n[o])}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(n=>n.messages.length>0).map(n=>n.messages.map(a=>{let o=(a.line||0)+1;return{path:r?n.filePath.substring(r.length+1):n.filePath,start_line:o,end_line:o,annotation_level:this.getAnnotationLevel(a.severity),raw_details:(0,vni.codeFrameColumns)(nba(n.filePath).toString(),{start:{line:a.line||0,column:a.column||0}},{highlightCode:!1}),title:`(${a.ruleId||"unknown"}): ${a.message}`,message:a.message}})).flat()}};var Uni=Nt(el(),1),ZEr=Nt(Sn(),1),LEr=Nt(Sn(),1),VEr=Nt(ro(),1),Kni=Nt(Sn(),1),jni=Nt(ro(),1),zni=Nt(ro(),1);$c();$c();gQe();var FEr={};sI(FEr,{WorkspacesChangedForeachCommand:()=>AQe,WorkspacesChangedListCommand:()=>dQe,default:()=>Qni,getChangedWorkspaces:()=>She,getWorkspaceDependencies:()=>xEr,getWorkspaceDependents:()=>GEr});var xni=Nt(el(),1),Gni=Nt(el(),1),Fni=Nt(Sn(),1),Zni=Nt(Sn(),1),Lni=Nt(Sn(),1),Vni=Nt(Sn(),1);$c();var Dni=Nt(Sn(),1);var Nni=Nt(Sn(),1),xEr=e=>{let{project:t}=e,r=new Set,n=({manifest:a})=>{for(let o of Nni.Manifest.hardDependencies)for(let l of a.getForScope(o).values()){let A=t.tryWorkspaceByDescriptor(l);A&&!r.has(A)&&(r.add(A),n(A))}};return n(e),[...r]};var GEr=e=>{let t=new Set;for(let r of e.project.workspaces)xEr(r).some(a=>Dni.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var She=(e,t)=>{let r=new Set;for(let n of e.workspaces)if(t.some(o=>o.startsWith(n.relativeCwd))&&!r.has(n)){r.add(n);for(let o of GEr(n))r.add(o)}return[...r]};var kni=(e,t)=>{let r=["workspaces","foreach"];return e.forEach(n=>{r.push("--include"),r.push(n)}),r.push("--all"),t.exclude&&(r.push("--exclude"),r.push(t.exclude)),t.verbose&&r.push("--verbose"),t.parallel&&r.push("--parallel"),t.interlaced&&r.push("--interlaced"),t.publicOnly&&r.push("--no-private"),t.topological&&r.push("--topological"),t.topologicalDev&&r.push("--topological-dev"),t.jobs&&(r.push("--jobs"),r.push(String(t.jobs))),r};var AQe=class extends xni.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=Su.String("--exclude","");verbose=Su.Boolean("-v,--verbose",!1);parallel=Su.Boolean("-p,--parallel",!1);workTree=Su.Boolean("-W,--worktree",!0);all=Su.Boolean("-A,--all",!1);recursive=Su.Boolean("-R,--recursive",!1);since=Su.String("--since","");interlaced=Su.Boolean("-i,--interlaced",!1);publicOnly=Su.Boolean("--no-private",!1);topological=Su.Boolean("-t,--topological",!1);topologicalDev=Su.Boolean("--topological-dev",!1);jobs=Su.String("-j,--jobs");commandName=Su.String();args=Su.Proxy();async execute(){let t=await Fni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Zni.Project.find(t,this.context.cwd);if(!n)throw new Gni.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await oO(r,this.since),o=She(r,a);if(!o.length)return(await Lni.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let l=kni(o.map(A=>Vni.structUtils.stringifyIdent(A.anchoredLocator)),{exclude:this.exclude,verbose:this.verbose,parallel:this.parallel,interlaced:this.interlaced,publicOnly:this.publicOnly,topological:this.topological,topologicalDev:this.topologicalDev,jobs:this.jobs});return this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var Pni=Nt(el(),1),Wni=Nt(el(),1),Oni=Nt(Sn(),1),Mni=Nt(Sn(),1),Hni=Nt(Sn(),1),Yni=Nt(Sn(),1);$c();var dQe=class extends Pni.BaseCommand{static paths=[["workspaces","changed","list"]];json=Su.Boolean("--json",!1);async execute(){let t=await Oni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Mni.Project.find(t,this.context.cwd);if(!n)throw new Wni.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Hni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await oO(r),A=She(r,l);for(let f of A)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?Yni.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var Qni={commands:[AQe,dQe]};import{PassThrough as oba}from"node:stream";var pQe=class{stream=new oba;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var Omt=class{stdout;stderr;stdoutOutput=new pQe;stderrOutput=new pQe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` -`)}};var fQe={enabled:!0,privateWorkspaces:!0},Xni=e=>typeof e=="object"&&e!==null,Mmt=e=>{let t=e.topLevelWorkspace.manifest.raw.tools;if(!Xni(t?.checks))return fQe;let{release:r}=t.checks;if(r===!1)return{...fQe,enabled:!1};if(!Xni(r))return fQe;let n=r;return{enabled:n.enabled===!1?!1:fQe.enabled,privateWorkspaces:n.privateWorkspaces===!1?!1:fQe.privateWorkspaces}},Jni=(e,t)=>t.privateWorkspaces||!e.manifest.private;var aba=e=>["checks","release",...e?["--no-private"]:[]],Hmt=class extends Uni.BaseCommand{static paths=[["checks","release"]];static usage=_C.Usage({description:"run the release GitHub check for changed workspaces",details:` +exec ${vni(e)} ${t.map(vni).join(" ")} "$@" +`,DEr=e=>{let t=e.configuration.get("yarnPath");return t?gQe.ppath.isAbsolute(t)?t:gQe.ppath.join(e.cwd,t):null},hba=async(e,t,r)=>{let n=DEr(t);if(!n)return;let a=REr.npath.toPortablePath(e),o=Bni(process.execPath,[REr.npath.fromPortablePath(n)]);await Promise.all([...r?[NEr.xfs.writeFilePromise(gQe.ppath.join(a,fba),Bni(process.execPath,[]),{mode:493})]:[],...Iba.map(async l=>NEr.xfs.writeFilePromise(gQe.ppath.join(a,l),o,{mode:493}))])},iC=async({binFolder:e,locator:t,project:r,env:n={},nodeLoader:a})=>{let o=await wni.scriptUtils.makeScriptEnv({binFolder:e,locator:t,project:r,ignoreCorepack:!0}),l={...o,...n,...a?{[uQe]:a}:{}};return Mmt(l),await hba(o.BERRY_BIN_FOLDER,r,a),{executable:dba(o.BERRY_BIN_FOLDER,pba),env:l}};var Tni=Nt(sTe(),1),oTe=Nt(sTe(),1);var WM=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,Tni.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async update(t){return(await this.octokit.rest.checks.update(t)).data}async start(){let{payload:t}=oTe.context;return this.create({...oTe.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){return this.update({...oTe.context.repo,check_run_id:t,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t,r){let{payload:n}=oTe.context,a={...oTe.context.repo,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t};return r?this.update({...a,check_run_id:r}):this.create({...a,name:this.name,head_sha:n.after||n.pull_request?.head.sha||process.env.GITHUB_SHA})}};var Fni=Nt(Pc(),1),AQe=class extends Rni.BaseCommand{static paths=[["checks","lint"]];changed=Su.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(GEr.Filename.pnpCjs)&&t.includes(GEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await kEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await xEr.Project.find(t,this.context.cwd),n=await FEr.xfs.mktempPromise(),a=["checks","lint",...this.changed?["--changed"]:[]],{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await xni.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await kEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await xEr.Project.find(t,this.context.cwd);return(await Nni.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new WM("Lint"),{id:l}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let A=await CBe.initialize(r.cwd,this.context.cwd),f=await this.getLintTargets(r),I=[];f===null?I=await A.lint():f.length>0&&(I=await A.lint(f)),I.filter(N=>N.messages.length>0).forEach(N=>{xE((0,Fni.jsx)(ZYn,{...N})).split(` +`).forEach(F=>{a.reportInfo(Dni.MessageName.UNNAMED,F)})});let C=this.formatResults(I,r.cwd),b=C.filter(N=>N.annotation_level==="warning").length,E=C.filter(N=>N.annotation_level==="failure").length;await o.complete(l,{title:C.length>0?`Errors ${E}, Warnings ${b}`:"Successful",summary:C.length>0?`Found ${E} errors and ${b} warnings`:"All checks passed",annotations:C})}catch(A){await o.failure({title:"Lint run failed",summary:A instanceof Error?A.message:A},l)}})})).exitCode()}async getLintTargets(t){if(!this.changed)return null;let r=(await oO(t)).filter(a=>/\.(c|m)?(j|t)sx?$/.test(a)),n=await Promise.all(r.map(async a=>FEr.xfs.existsPromise(Gni.npath.toPortablePath(_ba(t.cwd,a)))));return r.filter((a,o)=>n[o])}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(n=>n.messages.length>0).map(n=>n.messages.map(a=>{let o=(a.line||0)+1;return{path:r?n.filePath.substring(r.length+1):n.filePath,start_line:o,end_line:o,annotation_level:this.getAnnotationLevel(a.severity),raw_details:(0,kni.codeFrameColumns)(Cba(n.filePath).toString(),{start:{line:a.line||0,column:a.column||0}},{highlightCode:!1}),title:`(${a.ruleId||"unknown"}): ${a.message}`,message:a.message}})).flat()}};var tii=Nt(el(),1),WEr=Nt(yn(),1),OEr=Nt(yn(),1),MEr=Nt(zs(),1),rii=Nt(yn(),1),nii=Nt(zs(),1),iii=Nt(zs(),1);$c();$c();dQe();var PEr={};sI(PEr,{WorkspacesChangedForeachCommand:()=>pQe,WorkspacesChangedListCommand:()=>fQe,default:()=>qni,getChangedWorkspaces:()=>vhe,getWorkspaceDependencies:()=>LEr,getWorkspaceDependents:()=>VEr});var Wni=Nt(el(),1),Oni=Nt(el(),1),Mni=Nt(yn(),1),Hni=Nt(yn(),1),Yni=Nt(yn(),1),Qni=Nt(yn(),1);$c();var Vni=Nt(yn(),1);var Lni=Nt(yn(),1),LEr=e=>{let{project:t}=e,r=new Set,n=({manifest:a})=>{for(let o of Lni.Manifest.hardDependencies)for(let l of a.getForScope(o).values()){let A=t.tryWorkspaceByDescriptor(l);A&&!r.has(A)&&(r.add(A),n(A))}};return n(e),[...r]};var VEr=e=>{let t=new Set;for(let r of e.project.workspaces)LEr(r).some(a=>Vni.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var vhe=(e,t)=>{let r=new Set;for(let n of e.workspaces)if(t.some(o=>o.startsWith(n.relativeCwd))&&!r.has(n)){r.add(n);for(let o of VEr(n))r.add(o)}return[...r]};var Pni=(e,t)=>{let r=["workspaces","foreach"];return e.forEach(n=>{r.push("--include"),r.push(n)}),r.push("--all"),t.exclude&&(r.push("--exclude"),r.push(t.exclude)),t.verbose&&r.push("--verbose"),t.parallel&&r.push("--parallel"),t.interlaced&&r.push("--interlaced"),t.publicOnly&&r.push("--no-private"),t.topological&&r.push("--topological"),t.topologicalDev&&r.push("--topological-dev"),t.jobs&&(r.push("--jobs"),r.push(String(t.jobs))),r};var pQe=class extends Wni.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=Su.String("--exclude","");verbose=Su.Boolean("-v,--verbose",!1);parallel=Su.Boolean("-p,--parallel",!1);workTree=Su.Boolean("-W,--worktree",!0);all=Su.Boolean("-A,--all",!1);recursive=Su.Boolean("-R,--recursive",!1);since=Su.String("--since","");interlaced=Su.Boolean("-i,--interlaced",!1);publicOnly=Su.Boolean("--no-private",!1);topological=Su.Boolean("-t,--topological",!1);topologicalDev=Su.Boolean("--topological-dev",!1);jobs=Su.String("-j,--jobs");commandName=Su.String();args=Su.Proxy();async execute(){let t=await Mni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Hni.Project.find(t,this.context.cwd);if(!n)throw new Oni.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await oO(r,this.since),o=vhe(r,a);if(!o.length)return(await Yni.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let l=Pni(o.map(A=>Qni.structUtils.stringifyIdent(A.anchoredLocator)),{exclude:this.exclude,verbose:this.verbose,parallel:this.parallel,interlaced:this.interlaced,publicOnly:this.publicOnly,topological:this.topological,topologicalDev:this.topologicalDev,jobs:this.jobs});return this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var Xni=Nt(el(),1),Jni=Nt(el(),1),Uni=Nt(yn(),1),Kni=Nt(yn(),1),jni=Nt(yn(),1),zni=Nt(yn(),1);$c();var fQe=class extends Xni.BaseCommand{static paths=[["workspaces","changed","list"]];json=Su.Boolean("--json",!1);async execute(){let t=await Uni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Kni.Project.find(t,this.context.cwd);if(!n)throw new Jni.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await jni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await oO(r),A=vhe(r,l);for(let f of A)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?zni.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var qni={commands:[pQe,fQe]};import{PassThrough as bba}from"node:stream";var IQe=class{stream=new bba;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var Hmt=class{stdout;stderr;stdoutOutput=new IQe;stderrOutput=new IQe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` +`)}};var hQe={enabled:!0,privateWorkspaces:!0},$ni=e=>typeof e=="object"&&e!==null,Ymt=e=>{let t=e.topLevelWorkspace.manifest.raw.tools;if(!$ni(t?.checks))return hQe;let{release:r}=t.checks;if(r===!1)return{...hQe,enabled:!1};if(!$ni(r))return hQe;let n=r;return{enabled:n.enabled===!1?!1:hQe.enabled,privateWorkspaces:n.privateWorkspaces===!1?!1:hQe.privateWorkspaces}},eii=(e,t)=>t.privateWorkspaces||!e.manifest.private;var Eba=e=>["checks","release",...e?["--no-private"]:[]],Qmt=class extends tii.BaseCommand{static paths=[["checks","release"]];static usage=_C.Usage({description:"run the release GitHub check for changed workspaces",details:` By default this keeps the existing release check behavior and builds every changed workspace with a build script. Use --no-private or top-level package.json tools.checks.release.privateWorkspaces=false when private application workspaces should not participate in release checks. Set top-level package.json tools.checks.release=false to disable this check from checks run. - `});noPrivate=Su.Boolean("--no-private",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(VEr.Filename.pnpCjs)&&t.includes(VEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await ZEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await LEr.Project.find(t,this.context.cwd),n=await zni.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await Kni.execUtils.pipevp(a,aba(this.noPrivate),{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let{project:t}=await LEr.Project.find(await ZEr.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=Mmt(t),n={...r,privateWorkspaces:this.noPrivate?!1:r.privateWorkspaces},a=r.enabled?She(t,await oO(t)).filter(A=>Jni(A,n)):[],o=new WM("Release"),{id:l}=await o.start();try{let A=[];for await(let f of a)if(f.manifest.scripts.get("build")){let I=new Omt,C=E=>this.context.stdout.write(E);I.stdout.on("data",C),I.stderr.on("data",C);let b=await this.cli.run(["workspace",f.manifest.raw.name,"build"],I);b>0&&A.push({annotation_level:"failure",title:`Error release workspace ${f.manifest.raw.name??f.relativeCwd}`,message:`Exit code ${b}`,raw_details:K$(I.output),path:jni.ppath.join(f.relativeCwd,"package.json"),start_line:1,end_line:1}),I.stdout.off("data",C),I.stderr.off("data",C)}await o.complete(l,{title:A.length>0?`Errors ${A.length}`:"Successful",summary:A.length>0?`Found ${A.length} errors`:"All checks passed",annotations:A})}catch(A){await o.failure({title:"Release run failed",summary:A instanceof Error?A.message:A},l)}return 0}};var qni=Nt(el(),1),$ni=Nt(Sn(),1),eii=Nt(Sn(),1),PEr=Nt(Sn(),1),tii=Nt(Sn(),1),rii=Nt(Sn(),1),nii=Nt(ro(),1);$c();$c();var Ymt=class extends qni.BaseCommand{static paths=[["checks","run"]];static usage=_C.Usage({description:"run the standard GitHub check sequence",details:` + `});noPrivate=Su.Boolean("--no-private",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(MEr.Filename.pnpCjs)&&t.includes(MEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await WEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await OEr.Project.find(t,this.context.cwd),n=await iii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await rii.execUtils.pipevp(a,Eba(this.noPrivate),{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let{project:t}=await OEr.Project.find(await WEr.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=Ymt(t),n={...r,privateWorkspaces:this.noPrivate?!1:r.privateWorkspaces},a=r.enabled?vhe(t,await oO(t)).filter(A=>eii(A,n)):[],o=new WM("Release"),{id:l}=await o.start();try{let A=[];for await(let f of a)if(f.manifest.scripts.get("build")){let I=new Hmt,C=E=>this.context.stdout.write(E);I.stdout.on("data",C),I.stderr.on("data",C);let b=await this.cli.run(["workspace",f.manifest.raw.name,"build"],I);b>0&&A.push({annotation_level:"failure",title:`Error release workspace ${f.manifest.raw.name??f.relativeCwd}`,message:`Exit code ${b}`,raw_details:K$(I.output),path:nii.ppath.join(f.relativeCwd,"package.json"),start_line:1,end_line:1}),I.stdout.off("data",C),I.stderr.off("data",C)}await o.complete(l,{title:A.length>0?`Errors ${A.length}`:"Successful",summary:A.length>0?`Found ${A.length} errors`:"All checks passed",annotations:A})}catch(A){await o.failure({title:"Release run failed",summary:A instanceof Error?A.message:A},l)}return 0}};var sii=Nt(el(),1),oii=Nt(yn(),1),aii=Nt(yn(),1),HEr=Nt(yn(),1),cii=Nt(yn(),1),lii=Nt(yn(),1),uii=Nt(zs(),1);$c();$c();var Xmt=class extends sii.BaseCommand{static paths=[["checks","run"]];static usage=_C.Usage({description:"run the standard GitHub check sequence",details:` The standard sequence is typecheck, lint, unit tests, integration tests, then release. Use --no-release for private application pipelines that need the standard checks without the Release check. The same release step can be disabled from top-level package.json with tools.checks.release=false. - `});changed=Su.Boolean("--changed",!1);noRelease=Su.Boolean("--no-release",!1);async execute(){let t=await eii.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await tii.Project.find(t,this.context.cwd),n=Mmt(r);return(await $ni.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await this.runCheck(r,r.cwd,["typecheck"],o)!==0||await this.runCheck(r,r.cwd,["lint"],o)!==0||(await Promise.all([this.runCheck(r,r.cwd,["test","unit"],o),this.runCheck(r,r.cwd,["test","integration"],o)])).some(A=>A!==0)||!this.noRelease&&n.enabled&&await this.runCheck(r,r.cwd,["release"],o)})).exitCode()}async runCheck(t,r,n,a){try{let l=this.changed&&(n[0]==="lint"||n[0]==="typecheck")&&!n.includes("--changed")?[...n,"--changed"]:n,A=await nii.xfs.mktempPromise(),{executable:f,env:I}=await iC({binFolder:A,project:t}),{code:C}=await rii.execUtils.pipevp(f,["checks",...l],{cwd:r,env:I,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return C!==0&&a.reportError(PEr.MessageName.UNNAMED,`Run check ${n.join(" ")} failed: ${C}`),C}catch(o){return a.reportError(PEr.MessageName.UNNAMED,`Run check ${n.join(" ")} error: ${o instanceof Error?o.message:o}`),1}}};var pii=Nt(Sn(),1),YEr=Nt(Sn(),1),QEr=Nt(Sn(),1),XEr=Nt(ro(),1),fii=Nt(Sn(),1),Iii=Nt(ro(),1);import Aba from"node:events";import{readFileSync as dba}from"node:fs";import{relative as WEr}from"node:path";import{join as pba}from"node:path";import{run as oii}from"node:test";import{tap as aii}from"node:test/reporters";var cii=Nt(lHe(),1);import{readFile as cba}from"node:fs/promises";var Qmt=class{static async load(t){return Promise.all(t.map(async r=>{let n=await cba(r,"utf8");return{file:r,source:n,tests:n.match(/test\(/gm)?.length||0}}))}};var lba="RAIJIN_TEST_EXEC_ARGV";var uba="@atls/code-runtime/runtime-exec-argv",gba=async()=>await import(uba);var iii=async e=>{let{createRuntimeExecArgv:t}=await gba();return t(e)},sii=(e=process.env[lba])=>{if(!e)return[];try{let t=JSON.parse(e);if(Array.isArray(t)&&t.every(r=>typeof r=="string"))return t}catch{return[]}return[]};var fba=1e3,oTe=(e,t)=>({type:e,data:t}),Iba=e=>!e.file,hba=e=>e.includes(` -not ok `)||/# (?:fail|cancelled) [1-9]\d*/.test(e),V8=class e extends Aba{constructor(r){super();this.cwd=r;this.ignore=cii.default.default().add(this.getProjectIgnorePatterns())}ignore;async run(r,n,a,o=!1,l){let A=sii(),f=A.length>0?A:await iii(this.cwd),I={files:r,timeout:n,concurrency:a,watch:o,...f.length>0?{execArgv:f}:{}};if(l==="tap"){let X=oii(I),ae=X.compose(aii);return ae.pipe(process.stdout),this.collectTestsStream(X,ae,o)}let C=await Qmt.load(r);this.emit("start",{tests:C});let b=oii(I),E=b.compose(aii),N=X=>{this.emit("test:pass",X)},B=X=>{this.emit("test:fail",X)},F=X=>{this.emit("test:stdout",X)},Q=X=>{this.emit("test:stderr",X)};b.on("test:pass",N),b.on("test:fail",B),b.on("test:stdout",F),b.on("test:stderr",Q);try{return await this.collectTestsStream(b,E,o)}finally{this.emit("end"),b.off("test:pass",N),b.off("test:fail",B),b.off("test:stdout",F),b.off("test:stderr",Q)}}static async initialize(r){return new e(r)}async collectTestsStream(r,n,a=!1){let o=[],l="",A=setInterval(()=>{},fba);return new Promise((f,I)=>{let C=()=>{};function b(){C(),f(o)}function E(fe){o.push(oTe("test:pass",fe))}function N(fe){o.push(oTe("test:fail",fe))}function B(fe){o.push(oTe("test:stdout",fe))}function F(fe){o.push(oTe("test:stderr",fe))}function Q(fe){o.push(oTe("test:summary",fe)),!a&&Iba(fe)&&b()}function X(fe){l+=fe.toString()}function ae(){hba(l)&&o.push(oTe("test:fail",{})),b()}function ne(){b()}function ce(fe){C(),I(fe)}C=()=>{clearInterval(A),r.off("test:pass",E),r.off("test:fail",N),r.off("test:stdout",B),r.off("test:stderr",F),r.off("test:summary",Q),r.off("end",ne),r.off("error",ce),n?.off("data",X),n?.off("end",ae),n?.off("error",ce)},r.on("test:pass",E),r.on("test:fail",N),r.on("test:stdout",B),r.on("test:stderr",F),r.on("test:summary",Q),r.once("end",ne),r.once("error",ce),n?.on("data",X),n?.once("end",ae),n?.once("error",ce)})}async unit(r,n){let o=(await this.collectTestFiles(r,"unit",n?.files)).filter(l=>this.ignore.filter([WEr(this.cwd,l)]).length!==0);return this.run(o,24e4,!0,n?.watch,n?.testReporter)}async integration(r,n){let o=(await this.collectTestFiles(r,"integration",n?.files)).filter(l=>this.ignore.filter([WEr(this.cwd,l)]).length!==0);return this.run(o,42e4,!1,n?.watch,n?.testReporter)}async general(r,n){let o=(await this.collectTestFiles(r,void 0,n?.files)).filter(l=>this.ignore.filter([WEr(this.cwd,l)]).length!==0);return this.run(o,42e4,!0,n?.watch,n?.testReporter)}async collectTestFiles(r,n,a){let o="*";return n!==void 0&&(o=n==="unit"?"!(integration)":"integration"),!a||a.length<1?b$([`**/${o}/*.test.{ts,tsx,js,jsx}`],{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):b$(a.map(l=>this.isFilename(l)?`**/${o}/*${l}*.test.{ts,tsx,js,jsx}`:this.isRootPath(l)?l:`**/${l}`),{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(r){let n=r.includes("/")||r.includes("\\"),a=/\.(js|jsx|ts|tsx)$/.test(r);return!n&&!a}isRootPath(r){return r.startsWith("/")||r.startsWith("\\")}getProjectIgnorePatterns(){let r=dba(pba(this.cwd,"package.json"),"utf-8"),{testIgnorePatterns:n=[]}=JSON.parse(r);return n}};var dii=Nt(el(),1);import{relative as mba}from"node:path";var Cba=1,_ba="failure",uii=new Set(["test failed"]),yba=["Error","AssertionError","TypeError:","SyntaxError:","ReferenceError:","RangeError:"],MEr=e=>typeof e=="object"&&e!==null,OEr=e=>typeof e=="string"&&e.length>0?e:void 0,vhe=e=>MEr(e)?OEr(e.message):OEr(e),lii=e=>{if(MEr(e))return OEr(e.stack)},Xmt=e=>{if(!MEr(e)||e.cause===void 0)return e;let t=Xmt(e.cause),r=vhe(t);return r&&!uii.has(r)?t:e},HEr=e=>e===void 0||uii.has(e),bba=e=>e.reduce((t,r)=>{if(r.type!=="test:stderr")return t;let{file:n,message:a}=r.data;return n&&a&&t.set(n,`${t.get(n)??""}${a}`),t},new Map),gii=e=>e?e.split(` -`).map(r=>r.trim()).filter(Boolean).find(r=>yba.some(n=>r.startsWith(n))):void 0,Eba=e=>e.reduce((t,r)=>(r.file&&t.set(r.file,(t.get(r.file)??0)+1),t),new Map),Sba=(e,t,r)=>{if(!t||r>1)return!1;let n=Xmt(e),a=vhe(n);return HEr(a)&&gii(t)!==void 0},vba=(e,t)=>{let r=Xmt(e),n=vhe(r),a=gii(t);return a&&HEr(n)?a:n??vhe(e)??"Test failed"},Bba=(e,t)=>{let r=Xmt(e),n=vhe(r);return t&&HEr(n)?t.trim():lii(r)??vhe(r)??lii(e)??vhe(e)??"Test failed"},Aii=(e,t,r=[])=>{let n=bba(r),a=Eba(e);return e.map(o=>{let l=o.file?n.get(o.file):void 0,A=o.file?a.get(o.file)??0:0,f=Sba(o.details.error,l,A)?l:void 0,I=vba(o.details.error,f),C=o.line??Cba;return{path:o.file?mba(t,o.file):t,start_line:C,end_line:C,annotation_level:_ba,raw_details:Bba(o.details.error,f),title:I,message:I}})};var aTe=class extends dii.BaseCommand{formatResults(t,r,n=[]){return Aii(t,r,n)}};var IQe=class extends aTe{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(XEr.Filename.pnpCjs)&&t.includes(XEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await YEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await QEr.Project.find(t,this.context.cwd),n=await Iii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await fii.execUtils.pipevp(a,["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){if(!process.env.GITHUB_TOKEN)return this.cli.run(["test","integration"]);let t=await YEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await QEr.Project.find(t,this.context.cwd);return(await pii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new WM("Test:Integration"),{id:o}=await a.start();try{let A=await(await V8.initialize(this.context.cwd)).integration(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Integration run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var hii=Nt(Sn(),1),JEr=Nt(Sn(),1),UEr=Nt(Sn(),1),KEr=Nt(ro(),1),mii=Nt(Sn(),1),Cii=Nt(ro(),1);var hQe=class extends aTe{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(KEr.Filename.pnpCjs)&&t.includes(KEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await JEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await UEr.Project.find(t,this.context.cwd),n=await Cii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await mii.execUtils.pipevp(a,["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){if(!process.env.GITHUB_TOKEN)return this.cli.run(["test","unit"]);let t=await JEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await UEr.Project.find(t,this.context.cwd);return(await hii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new WM("Test:Unit"),{id:o}=await a.start();try{let A=await(await V8.initialize(this.context.cwd)).unit(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Unit run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var _ii=Nt(el(),1),zEr=Nt(Sn(),1),qEr=Nt(Sn(),1),yii=Nt(Sn(),1),Jmt=Nt(Sn(),1),$Er=Nt(ro(),1),bii=Nt(Sn(),1),cTe=Nt(ro(),1),e1r=Nt(ro(),1),t1r=Nt(ro(),1);$c();import{spawn as wba}from"node:child_process";import{resolve as Tba}from"node:path";var jEr=5*60*1e3,mQe=class extends _ii.BaseCommand{static paths=[["checks","typecheck"]];changed=Su.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes($Er.Filename.pnpCjs)&&t.includes($Er.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await zEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qEr.Project.find(t,this.context.cwd),n=await cTe.xfs.mktempPromise(),a=["checks","typecheck",...this.changed?["--changed"]:[]],{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await bii.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await zEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qEr.Project.find(t,this.context.cwd);return(await yii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new WM("TypeCheck");try{let{id:l}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let A=await this.getIncludes(r);if(this.changed&&A.length===0){a.reportInfo(Jmt.MessageName.UNNAMED,"No TypeScript files changed"),await o.complete(l,{title:"Successful",summary:"No TypeScript files changed",annotations:[]});return}a.reportInfo(Jmt.MessageName.UNNAMED,`TypeCheck targets: ${A.length}`);let f=await this.runTypecheck(r,A);f===0?await o.complete(l,{title:"Successful",summary:"All checks passed",annotations:[]}):(await o.failure({title:"TypeCheck run failed",summary:f===124?`TypeCheck timed out after ${jEr/1e3}s`:`TypeCheck failed with exit code ${f}`},l),a.reportError(Jmt.MessageName.UNNAMED,f===124?`TypeCheck timed out after ${jEr/1e3}s`:`TypeCheck failed with exit code ${f}`))}catch(A){await o.failure({title:"TypeCheck run failed",summary:A instanceof Error?A.message:A},l)}})}catch(l){await o.failure({title:"TypeCheck start failed",summary:l instanceof Error?l.message:l})}})).exitCode()}async getIncludes(t){if(this.changed){let r=(await oO(t)).filter(a=>/\.(cts|mts|ts|tsx)$/.test(a)),n=await Promise.all(r.map(async a=>cTe.xfs.existsPromise(e1r.npath.toPortablePath(Tba(t.cwd,a)))));return r.filter((a,o)=>n[o])}if(await cTe.xfs.existsPromise(t1r.ppath.join(t.cwd,"tsconfig.json"))){let r=await cTe.xfs.readJsonPromise(t1r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}async runTypecheck(t,r){let n=await cTe.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:t,env:{COMMAND_PROXY_EXECUTION:"true"}}),l;return new Promise((A,f)=>{let I=!1,C=wba(a,["typecheck",...r],{cwd:e1r.npath.fromPortablePath(t.cwd),env:o,stdio:["ignore","pipe","pipe"]});C.stdout.pipe(this.context.stdout,{end:!1}),C.stderr.pipe(this.context.stderr,{end:!1}),l=setTimeout(()=>{I=!0,C.kill("SIGTERM"),setTimeout(()=>{C.killed||C.kill("SIGKILL")},5e3).unref()},jEr),C.on("error",f),C.on("close",b=>{l&&clearTimeout(l),A(I?124:b??1)})})}};var Eii={commands:[IQe,hQe,mQe,uQe,Hmt,Ymt]};var i1r={};sI(i1r,{beforeWorkspacePacking:()=>n1r,default:()=>Sii});var n1r=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var Sii={hooks:{beforeWorkspacePacking:n1r}};var TBr={};sI(TBr,{default:()=>phi});var Cli=Nt(el(),1),_li=Nt(Sn(),1),yli=Nt(Sn(),1);var Msi=Nt(Tii(),1);var Mii=Nt(Wii(),1);function Oii(e){let t=[];return new Promise((r,n)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",n).on("end",()=>r(t)))}async function Hii(e,t={}){return Oii((0,Mii.default)(e,{cwd:t.cwd}))}import qba from"path";import _Qe from"node:path";import Yba from"node:process";import Qba from"node:path";import Kuu,{promises as Yii}from"node:fs";import{fileURLToPath as Xba}from"node:url";var s1r=class{value;next;constructor(t){this.value=t}},CQe=class{#e;#t;#n;constructor(){this.clear()}enqueue(t){let r=new s1r(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#n++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#n--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#n=0}get size(){return this.#n}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function Kmt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new CQe,r=0,n=()=>{r--,t.size>0&&t.dequeue()()},a=async(A,f,I)=>{r++;let C=(async()=>A(...I))();f(C);try{await C}catch{}n()},o=(A,f,I)=>{t.enqueue(a.bind(void 0,A,f,I)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},l=(A,...f)=>new Promise(I=>{o(A,I,f)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),l}var jmt=class extends Error{constructor(t){super(),this.value=t}},Mba=async(e,t)=>t(await e),Hba=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new jmt(t[0]);return!1};async function o1r(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:n=!0}={}){let a=Kmt(r),o=[...e].map(A=>[A,a(Mba,A,t)]),l=Kmt(n?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(A=>l(Hba,A)))}catch(A){if(A instanceof jmt)return A.value;throw A}}var Qii={directory:"isDirectory",file:"isFile"};function Jba(e){if(!Object.hasOwnProperty.call(Qii,e))throw new Error(`Invalid type specified: ${e}`)}var Uba=(e,t)=>t[Qii[e]](),Kba=e=>e instanceof URL?Xba(e):e;async function a1r(e,{cwd:t=Yba.cwd(),type:r="file",allowSymlinks:n=!0,concurrency:a,preserveOrder:o}={}){Jba(r),t=Kba(t);let l=n?Yii.stat:Yii.lstat;return o1r(e,async A=>{try{let f=await l(Qba.resolve(t,A));return Uba(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}Vfr();var jba=Symbol("findUpStop");async function zba(e,t={}){let r=_Qe.resolve(hMe(t.cwd)??""),{root:n}=_Qe.parse(r),a=_Qe.resolve(r,hMe(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,l=[e].flat(),A=async I=>{if(typeof e!="function")return a1r(l,I);let C=await e(I.cwd);return typeof C=="string"?a1r([C],I):C},f=[];for(;;){let I=await A({...t,cwd:r});if(I===jba||(I&&f.push(_Qe.resolve(r,I)),r===a||f.length>=o))break;r=_Qe.dirname(r)}return f}async function c1r(e,t={}){return(await zba(e,{...t,limit:1}))[0]}var Xii=$ba;async function $ba(e){let t=await eEa(e);return typeof t!="string"?t:qba.join(t,"..")}async function eEa(e){let t=await c1r(".git",{cwd:e,type:"file"}),r=await c1r(".git",{cwd:e,type:"directory"});return t||r}import tEa from"fs/promises";import zmt from"path";import Jii from"fs/promises";async function Uii(e,t){if(typeof t=="string")return zmt.resolve(e,t);let r=zmt.join(e,".git");if((await Jii.lstat(r)).isDirectory())return zmt.join(e,".git/COMMIT_EDITMSG");let o=(await Jii.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` -`,"");return zmt.resolve(e,o,"COMMIT_EDITMSG")}async function Kii(e,t){let r=await Xii(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let n=await Uii(r,t);return[`${(await tEa.readFile(n)).toString("utf-8")} -`]}var Vsi=Nt(Zct(),1);import{Buffer as I1a}from"node:buffer";import h1a from"node:path";import x1r from"node:child_process";import ACt from"node:process";function l1r(e){let t=typeof e=="string"?` -`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import $mt from"node:process";import yQe from"node:path";import{fileURLToPath as jii}from"node:url";function qmt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"}var rEa=({cwd:e=$mt.cwd(),path:t=$mt.env[qmt()],preferLocal:r=!0,execPath:n=$mt.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?jii(e):e,l=yQe.resolve(o),A=[];return r&&nEa(A,l),a&&iEa(A,n,l),[...A,t].join(yQe.delimiter)},nEa=(e,t)=>{let r;for(;r!==t;)e.push(yQe.join(t,"node_modules/.bin")),r=t,t=yQe.resolve(t,"..")},iEa=(e,t,r)=>{let n=t instanceof URL?jii(t):t;e.push(yQe.resolve(r,n,".."))},zii=({env:e=$mt.env,...t}={})=>{e={...e};let r=qmt({env:e});return t.path=e[r],e[r]=rEa(t),e};var sEa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!oEa(a,o)&&n||Object.defineProperty(e,r,o)},oEa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},aEa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},cEa=(e,t)=>`/* Wrapped ${e}*/ -${t}`,lEa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),uEa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),gEa=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=cEa.bind(null,n,t.toString());Object.defineProperty(a,"name",uEa),Object.defineProperty(e,"toString",{...lEa,value:a})};function u1r(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))sEa(e,t,a,r);return aEa(e,t),gEa(e,t,n),e}var eCt=new WeakMap,qii=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(eCt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return u1r(o,e),eCt.set(o,n),o};qii.callCount=e=>{if(!eCt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return eCt.get(e)};var $ii=qii;import yEa from"node:process";import{constants as fEa}from"node:os";var esi=()=>{let e=rsi-tsi+1;return Array.from({length:e},AEa)},AEa=(e,t)=>({name:`SIGRT${t+1}`,number:tsi+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),tsi=34,rsi=64;import{constants as dEa}from"node:os";var nsi=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var g1r=()=>{let e=esi();return[...nsi,...e].map(pEa)},pEa=({name:e,number:t,description:r,action:n,forced:a=!1,standard:o})=>{let{signals:{[e]:l}}=dEa,A=l!==void 0;return{name:e,number:A?l:t,description:r,supported:A,action:n,forced:a,standard:o}};var IEa=()=>{let e=g1r();return Object.fromEntries(e.map(hEa))},hEa=({name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l})=>[e,{name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l}],isi=IEa(),mEa=()=>{let e=g1r(),t=65,r=Array.from({length:t},(n,a)=>CEa(a,e));return Object.assign({},...r)},CEa=(e,t)=>{let r=_Ea(e,t);if(r===void 0)return{};let{name:n,description:a,supported:o,action:l,forced:A,standard:f}=r;return{[e]:{name:n,number:e,description:a,supported:o,action:l,forced:A,standard:f}}},_Ea=(e,t)=>{let r=t.find(({name:n})=>fEa.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},Zgu=mEa();var bEa=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:a,exitCode:o,isCanceled:l})=>e?`timed out after ${t} milliseconds`:l?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",bQe=({stdout:e,stderr:t,all:r,error:n,signal:a,exitCode:o,command:l,escapedCommand:A,timedOut:f,isCanceled:I,killed:C,parsed:{options:{timeout:b,cwd:E=yEa.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let N=a===void 0?void 0:isi[a].description,B=n&&n.code,Q=`Command ${bEa({timedOut:f,timeout:b,errorCode:B,signal:a,signalDescription:N,exitCode:o,isCanceled:I})}: ${l}`,X=Object.prototype.toString.call(n)==="[object Error]",ae=X?`${Q} + `});changed=Su.Boolean("--changed",!1);noRelease=Su.Boolean("--no-release",!1);async execute(){let t=await aii.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await cii.Project.find(t,this.context.cwd),n=Ymt(r);return(await oii.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await this.runCheck(r,r.cwd,["typecheck"],o)!==0||await this.runCheck(r,r.cwd,["lint"],o)!==0||(await Promise.all([this.runCheck(r,r.cwd,["test","unit"],o),this.runCheck(r,r.cwd,["test","integration"],o)])).some(A=>A!==0)||!this.noRelease&&n.enabled&&await this.runCheck(r,r.cwd,["release"],o)})).exitCode()}async runCheck(t,r,n,a){try{let l=this.changed&&(n[0]==="lint"||n[0]==="typecheck")&&!n.includes("--changed")?[...n,"--changed"]:n,A=await uii.xfs.mktempPromise(),{executable:f,env:I}=await iC({binFolder:A,project:t}),{code:C}=await lii.execUtils.pipevp(f,["checks",...l],{cwd:r,env:I,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return C!==0&&a.reportError(HEr.MessageName.UNNAMED,`Run check ${n.join(" ")} failed: ${C}`),C}catch(o){return a.reportError(HEr.MessageName.UNNAMED,`Run check ${n.join(" ")} error: ${o instanceof Error?o.message:o}`),1}}};var yii=Nt(yn(),1),UEr=Nt(yn(),1),KEr=Nt(yn(),1),jEr=Nt(zs(),1),bii=Nt(yn(),1),Eii=Nt(zs(),1);import Tba from"node:events";import{readFileSync as Rba}from"node:fs";import{relative as YEr}from"node:path";import{join as Nba}from"node:path";import{run as dii}from"node:test";import{tap as pii}from"node:test/reporters";var fii=Nt(gHe(),1);import{readFile as Sba}from"node:fs/promises";var Jmt=class{static async load(t){return Promise.all(t.map(async r=>{let n=await Sba(r,"utf8");return{file:r,source:n,tests:n.match(/test\(/gm)?.length||0}}))}};var vba="RAIJIN_TEST_EXEC_ARGV";var Bba="@atls/code-runtime/runtime-exec-argv",wba=async()=>await import(Bba);var gii=async e=>{let{createRuntimeExecArgv:t}=await wba();return t(e)},Aii=(e=process.env[vba])=>{if(!e)return[];try{let t=JSON.parse(e);if(Array.isArray(t)&&t.every(r=>typeof r=="string"))return t}catch{return[]}return[]};var Dba=1e3,aTe=(e,t)=>({type:e,data:t}),kba=e=>!e.file,xba=e=>e.includes(` +not ok `)||/# (?:fail|cancelled) [1-9]\d*/.test(e),V8=class e extends Tba{constructor(r){super();this.cwd=r;this.ignore=fii.default.default().add(this.getProjectIgnorePatterns())}ignore;async run(r,n,a,o=!1,l){let A=Aii(),f=A.length>0?A:await gii(this.cwd),I={files:r,timeout:n,concurrency:a,watch:o,...f.length>0?{execArgv:f}:{}};if(l==="tap"){let X=dii(I),ae=X.compose(pii);return ae.pipe(process.stdout),this.collectTestsStream(X,ae,o)}let C=await Jmt.load(r);this.emit("start",{tests:C});let b=dii(I),E=b.compose(pii),N=X=>{this.emit("test:pass",X)},B=X=>{this.emit("test:fail",X)},F=X=>{this.emit("test:stdout",X)},Q=X=>{this.emit("test:stderr",X)};b.on("test:pass",N),b.on("test:fail",B),b.on("test:stdout",F),b.on("test:stderr",Q);try{return await this.collectTestsStream(b,E,o)}finally{this.emit("end"),b.off("test:pass",N),b.off("test:fail",B),b.off("test:stdout",F),b.off("test:stderr",Q)}}static async initialize(r){return new e(r)}async collectTestsStream(r,n,a=!1){let o=[],l="",A=setInterval(()=>{},Dba);return new Promise((f,I)=>{let C=()=>{};function b(){C(),f(o)}function E(fe){o.push(aTe("test:pass",fe))}function N(fe){o.push(aTe("test:fail",fe))}function B(fe){o.push(aTe("test:stdout",fe))}function F(fe){o.push(aTe("test:stderr",fe))}function Q(fe){o.push(aTe("test:summary",fe)),!a&&kba(fe)&&b()}function X(fe){l+=fe.toString()}function ae(){xba(l)&&o.push(aTe("test:fail",{})),b()}function ne(){b()}function ce(fe){C(),I(fe)}C=()=>{clearInterval(A),r.off("test:pass",E),r.off("test:fail",N),r.off("test:stdout",B),r.off("test:stderr",F),r.off("test:summary",Q),r.off("end",ne),r.off("error",ce),n?.off("data",X),n?.off("end",ae),n?.off("error",ce)},r.on("test:pass",E),r.on("test:fail",N),r.on("test:stdout",B),r.on("test:stderr",F),r.on("test:summary",Q),r.once("end",ne),r.once("error",ce),n?.on("data",X),n?.once("end",ae),n?.once("error",ce)})}async unit(r,n){let o=(await this.collectTestFiles(r,"unit",n?.files)).filter(l=>this.ignore.filter([YEr(this.cwd,l)]).length!==0);return this.run(o,24e4,!0,n?.watch,n?.testReporter)}async integration(r,n){let o=(await this.collectTestFiles(r,"integration",n?.files)).filter(l=>this.ignore.filter([YEr(this.cwd,l)]).length!==0);return this.run(o,42e4,!1,n?.watch,n?.testReporter)}async general(r,n){let o=(await this.collectTestFiles(r,void 0,n?.files)).filter(l=>this.ignore.filter([YEr(this.cwd,l)]).length!==0);return this.run(o,42e4,!0,n?.watch,n?.testReporter)}async collectTestFiles(r,n,a){let o="*";return n!==void 0&&(o=n==="unit"?"!(integration)":"integration"),!a||a.length<1?b$([`**/${o}/*.test.{ts,tsx,js,jsx}`],{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):b$(a.map(l=>this.isFilename(l)?`**/${o}/*${l}*.test.{ts,tsx,js,jsx}`:this.isRootPath(l)?l:`**/${l}`),{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(r){let n=r.includes("/")||r.includes("\\"),a=/\.(js|jsx|ts|tsx)$/.test(r);return!n&&!a}isRootPath(r){return r.startsWith("/")||r.startsWith("\\")}getProjectIgnorePatterns(){let r=Rba(Nba(this.cwd,"package.json"),"utf-8"),{testIgnorePatterns:n=[]}=JSON.parse(r);return n}};var _ii=Nt(el(),1);import{relative as Gba}from"node:path";var Fba=1,Zba="failure",hii=new Set(["test failed"]),Lba=["Error","AssertionError","TypeError:","SyntaxError:","ReferenceError:","RangeError:"],XEr=e=>typeof e=="object"&&e!==null,QEr=e=>typeof e=="string"&&e.length>0?e:void 0,Bhe=e=>XEr(e)?QEr(e.message):QEr(e),Iii=e=>{if(XEr(e))return QEr(e.stack)},Umt=e=>{if(!XEr(e)||e.cause===void 0)return e;let t=Umt(e.cause),r=Bhe(t);return r&&!hii.has(r)?t:e},JEr=e=>e===void 0||hii.has(e),Vba=e=>e.reduce((t,r)=>{if(r.type!=="test:stderr")return t;let{file:n,message:a}=r.data;return n&&a&&t.set(n,`${t.get(n)??""}${a}`),t},new Map),mii=e=>e?e.split(` +`).map(r=>r.trim()).filter(Boolean).find(r=>Lba.some(n=>r.startsWith(n))):void 0,Pba=e=>e.reduce((t,r)=>(r.file&&t.set(r.file,(t.get(r.file)??0)+1),t),new Map),Wba=(e,t,r)=>{if(!t||r>1)return!1;let n=Umt(e),a=Bhe(n);return JEr(a)&&mii(t)!==void 0},Oba=(e,t)=>{let r=Umt(e),n=Bhe(r),a=mii(t);return a&&JEr(n)?a:n??Bhe(e)??"Test failed"},Mba=(e,t)=>{let r=Umt(e),n=Bhe(r);return t&&JEr(n)?t.trim():Iii(r)??Bhe(r)??Iii(e)??Bhe(e)??"Test failed"},Cii=(e,t,r=[])=>{let n=Vba(r),a=Pba(e);return e.map(o=>{let l=o.file?n.get(o.file):void 0,A=o.file?a.get(o.file)??0:0,f=Wba(o.details.error,l,A)?l:void 0,I=Oba(o.details.error,f),C=o.line??Fba;return{path:o.file?Gba(t,o.file):t,start_line:C,end_line:C,annotation_level:Zba,raw_details:Mba(o.details.error,f),title:I,message:I}})};var cTe=class extends _ii.BaseCommand{formatResults(t,r,n=[]){return Cii(t,r,n)}};var mQe=class extends cTe{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(jEr.Filename.pnpCjs)&&t.includes(jEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await UEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await KEr.Project.find(t,this.context.cwd),n=await Eii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await bii.execUtils.pipevp(a,["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){if(!process.env.GITHUB_TOKEN)return this.cli.run(["test","integration"]);let t=await UEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await KEr.Project.find(t,this.context.cwd);return(await yii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new WM("Test:Integration"),{id:o}=await a.start();try{let A=await(await V8.initialize(this.context.cwd)).integration(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Integration run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var Sii=Nt(yn(),1),zEr=Nt(yn(),1),qEr=Nt(yn(),1),$Er=Nt(zs(),1),vii=Nt(yn(),1),Bii=Nt(zs(),1);var CQe=class extends cTe{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes($Er.Filename.pnpCjs)&&t.includes($Er.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await zEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qEr.Project.find(t,this.context.cwd),n=await Bii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await vii.execUtils.pipevp(a,["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){if(!process.env.GITHUB_TOKEN)return this.cli.run(["test","unit"]);let t=await zEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qEr.Project.find(t,this.context.cwd);return(await Sii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new WM("Test:Unit"),{id:o}=await a.start();try{let A=await(await V8.initialize(this.context.cwd)).unit(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Unit run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var wii=Nt(el(),1),t1r=Nt(yn(),1),r1r=Nt(yn(),1),Tii=Nt(yn(),1),Kmt=Nt(yn(),1),n1r=Nt(zs(),1),Rii=Nt(yn(),1),lTe=Nt(zs(),1),i1r=Nt(zs(),1),s1r=Nt(zs(),1);$c();import{spawn as Hba}from"node:child_process";import{resolve as Yba}from"node:path";var e1r=5*60*1e3,_Qe=class extends wii.BaseCommand{static paths=[["checks","typecheck"]];changed=Su.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(n1r.Filename.pnpCjs)&&t.includes(n1r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await t1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await r1r.Project.find(t,this.context.cwd),n=await lTe.xfs.mktempPromise(),a=["checks","typecheck",...this.changed?["--changed"]:[]],{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Rii.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await t1r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await r1r.Project.find(t,this.context.cwd);return(await Tii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new WM("TypeCheck");try{let{id:l}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let A=await this.getIncludes(r);if(this.changed&&A.length===0){a.reportInfo(Kmt.MessageName.UNNAMED,"No TypeScript files changed"),await o.complete(l,{title:"Successful",summary:"No TypeScript files changed",annotations:[]});return}a.reportInfo(Kmt.MessageName.UNNAMED,`TypeCheck targets: ${A.length}`);let f=await this.runTypecheck(r,A);f===0?await o.complete(l,{title:"Successful",summary:"All checks passed",annotations:[]}):(await o.failure({title:"TypeCheck run failed",summary:f===124?`TypeCheck timed out after ${e1r/1e3}s`:`TypeCheck failed with exit code ${f}`},l),a.reportError(Kmt.MessageName.UNNAMED,f===124?`TypeCheck timed out after ${e1r/1e3}s`:`TypeCheck failed with exit code ${f}`))}catch(A){await o.failure({title:"TypeCheck run failed",summary:A instanceof Error?A.message:A},l)}})}catch(l){await o.failure({title:"TypeCheck start failed",summary:l instanceof Error?l.message:l})}})).exitCode()}async getIncludes(t){if(this.changed){let r=(await oO(t)).filter(a=>/\.(cts|mts|ts|tsx)$/.test(a)),n=await Promise.all(r.map(async a=>lTe.xfs.existsPromise(i1r.npath.toPortablePath(Yba(t.cwd,a)))));return r.filter((a,o)=>n[o])}if(await lTe.xfs.existsPromise(s1r.ppath.join(t.cwd,"tsconfig.json"))){let r=await lTe.xfs.readJsonPromise(s1r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}async runTypecheck(t,r){let n=await lTe.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:t,env:{COMMAND_PROXY_EXECUTION:"true"}}),l;return new Promise((A,f)=>{let I=!1,C=Hba(a,["typecheck",...r],{cwd:i1r.npath.fromPortablePath(t.cwd),env:o,stdio:["ignore","pipe","pipe"]});C.stdout.pipe(this.context.stdout,{end:!1}),C.stderr.pipe(this.context.stderr,{end:!1}),l=setTimeout(()=>{I=!0,C.kill("SIGTERM"),setTimeout(()=>{C.killed||C.kill("SIGKILL")},5e3).unref()},e1r),C.on("error",f),C.on("close",b=>{l&&clearTimeout(l),A(I?124:b??1)})})}};var Nii={commands:[mQe,CQe,_Qe,AQe,Qmt,Xmt]};var c1r={};sI(c1r,{beforeWorkspacePacking:()=>a1r,default:()=>Dii});var a1r=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var Dii={hooks:{beforeWorkspacePacking:a1r}};var kBr={};sI(kBr,{default:()=>yhi});var Bli=Nt(el(),1),wli=Nt(yn(),1),Tli=Nt(yn(),1);var Ksi=Nt(Fii(),1);var Kii=Nt(Jii(),1);function Uii(e){let t=[];return new Promise((r,n)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",n).on("end",()=>r(t)))}async function jii(e,t={}){return Uii((0,Kii.default)(e,{cwd:t.cwd}))}import pEa from"path";import bQe from"node:path";import oEa from"node:process";import aEa from"node:path";import Ogu,{promises as zii}from"node:fs";import{fileURLToPath as cEa}from"node:url";var l1r=class{value;next;constructor(t){this.value=t}},yQe=class{#e;#t;#n;constructor(){this.clear()}enqueue(t){let r=new l1r(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#n++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#n--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#n=0}get size(){return this.#n}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function zmt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new yQe,r=0,n=()=>{r--,t.size>0&&t.dequeue()()},a=async(A,f,I)=>{r++;let C=(async()=>A(...I))();f(C);try{await C}catch{}n()},o=(A,f,I)=>{t.enqueue(a.bind(void 0,A,f,I)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},l=(A,...f)=>new Promise(I=>{o(A,I,f)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),l}var qmt=class extends Error{constructor(t){super(),this.value=t}},iEa=async(e,t)=>t(await e),sEa=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new qmt(t[0]);return!1};async function u1r(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:n=!0}={}){let a=zmt(r),o=[...e].map(A=>[A,a(iEa,A,t)]),l=zmt(n?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(A=>l(sEa,A)))}catch(A){if(A instanceof qmt)return A.value;throw A}}var qii={directory:"isDirectory",file:"isFile"};function lEa(e){if(!Object.hasOwnProperty.call(qii,e))throw new Error(`Invalid type specified: ${e}`)}var uEa=(e,t)=>t[qii[e]](),gEa=e=>e instanceof URL?cEa(e):e;async function g1r(e,{cwd:t=oEa.cwd(),type:r="file",allowSymlinks:n=!0,concurrency:a,preserveOrder:o}={}){lEa(r),t=gEa(t);let l=n?zii.stat:zii.lstat;return u1r(e,async A=>{try{let f=await l(aEa.resolve(t,A));return uEa(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}Mfr();var AEa=Symbol("findUpStop");async function dEa(e,t={}){let r=bQe.resolve(CMe(t.cwd)??""),{root:n}=bQe.parse(r),a=bQe.resolve(r,CMe(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,l=[e].flat(),A=async I=>{if(typeof e!="function")return g1r(l,I);let C=await e(I.cwd);return typeof C=="string"?g1r([C],I):C},f=[];for(;;){let I=await A({...t,cwd:r});if(I===AEa||(I&&f.push(bQe.resolve(r,I)),r===a||f.length>=o))break;r=bQe.dirname(r)}return f}async function A1r(e,t={}){return(await dEa(e,{...t,limit:1}))[0]}var $ii=fEa;async function fEa(e){let t=await IEa(e);return typeof t!="string"?t:pEa.join(t,"..")}async function IEa(e){let t=await A1r(".git",{cwd:e,type:"file"}),r=await A1r(".git",{cwd:e,type:"directory"});return t||r}import hEa from"fs/promises";import $mt from"path";import esi from"fs/promises";async function tsi(e,t){if(typeof t=="string")return $mt.resolve(e,t);let r=$mt.join(e,".git");if((await esi.lstat(r)).isDirectory())return $mt.join(e,".git/COMMIT_EDITMSG");let o=(await esi.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` +`,"");return $mt.resolve(e,o,"COMMIT_EDITMSG")}async function rsi(e,t){let r=await $ii(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let n=await tsi(r,t);return[`${(await hEa.readFile(n)).toString("utf-8")} +`]}var Qsi=Nt(Vct(),1);import{Buffer as k1a}from"node:buffer";import x1a from"node:path";import L1r from"node:child_process";import pCt from"node:process";function d1r(e){let t=typeof e=="string"?` +`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import tCt from"node:process";import EQe from"node:path";import{fileURLToPath as nsi}from"node:url";function eCt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"}var mEa=({cwd:e=tCt.cwd(),path:t=tCt.env[eCt()],preferLocal:r=!0,execPath:n=tCt.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?nsi(e):e,l=EQe.resolve(o),A=[];return r&&CEa(A,l),a&&_Ea(A,n,l),[...A,t].join(EQe.delimiter)},CEa=(e,t)=>{let r;for(;r!==t;)e.push(EQe.join(t,"node_modules/.bin")),r=t,t=EQe.resolve(t,"..")},_Ea=(e,t,r)=>{let n=t instanceof URL?nsi(t):t;e.push(EQe.resolve(r,n,".."))},isi=({env:e=tCt.env,...t}={})=>{e={...e};let r=eCt({env:e});return t.path=e[r],e[r]=mEa(t),e};var yEa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!bEa(a,o)&&n||Object.defineProperty(e,r,o)},bEa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},EEa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},SEa=(e,t)=>`/* Wrapped ${e}*/ +${t}`,vEa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),BEa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),wEa=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=SEa.bind(null,n,t.toString());Object.defineProperty(a,"name",BEa),Object.defineProperty(e,"toString",{...vEa,value:a})};function p1r(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))yEa(e,t,a,r);return EEa(e,t),wEa(e,t,n),e}var rCt=new WeakMap,ssi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(rCt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return p1r(o,e),rCt.set(o,n),o};ssi.callCount=e=>{if(!rCt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return rCt.get(e)};var osi=ssi;import LEa from"node:process";import{constants as DEa}from"node:os";var asi=()=>{let e=lsi-csi+1;return Array.from({length:e},TEa)},TEa=(e,t)=>({name:`SIGRT${t+1}`,number:csi+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),csi=34,lsi=64;import{constants as REa}from"node:os";var usi=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var f1r=()=>{let e=asi();return[...usi,...e].map(NEa)},NEa=({name:e,number:t,description:r,action:n,forced:a=!1,standard:o})=>{let{signals:{[e]:l}}=REa,A=l!==void 0;return{name:e,number:A?l:t,description:r,supported:A,action:n,forced:a,standard:o}};var kEa=()=>{let e=f1r();return Object.fromEntries(e.map(xEa))},xEa=({name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l})=>[e,{name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l}],gsi=kEa(),GEa=()=>{let e=f1r(),t=65,r=Array.from({length:t},(n,a)=>FEa(a,e));return Object.assign({},...r)},FEa=(e,t)=>{let r=ZEa(e,t);if(r===void 0)return{};let{name:n,description:a,supported:o,action:l,forced:A,standard:f}=r;return{[e]:{name:n,number:e,description:a,supported:o,action:l,forced:A,standard:f}}},ZEa=(e,t)=>{let r=t.find(({name:n})=>DEa.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},TAu=GEa();var VEa=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:a,exitCode:o,isCanceled:l})=>e?`timed out after ${t} milliseconds`:l?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",SQe=({stdout:e,stderr:t,all:r,error:n,signal:a,exitCode:o,command:l,escapedCommand:A,timedOut:f,isCanceled:I,killed:C,parsed:{options:{timeout:b,cwd:E=LEa.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let N=a===void 0?void 0:gsi[a].description,B=n&&n.code,Q=`Command ${VEa({timedOut:f,timeout:b,errorCode:B,signal:a,signalDescription:N,exitCode:o,isCanceled:I})}: ${l}`,X=Object.prototype.toString.call(n)==="[object Error]",ae=X?`${Q} ${n.message}`:Q,ne=[ae,t,e].filter(Boolean).join(` -`);return X?(n.originalMessage=n.message,n.message=ne):n=new Error(ne),n.shortMessage=ae,n.command=l,n.escapedCommand=A,n.exitCode=o,n.signal=a,n.signalDescription=N,n.stdout=e,n.stderr=t,n.cwd=E,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!f,n.isCanceled=I,n.killed=C&&!f,n};var tCt=["stdin","stdout","stderr"],EEa=e=>tCt.some(t=>e[t]!==void 0),ssi=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return tCt.map(n=>e[n]);if(EEa(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${tCt.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,tCt.length);return Array.from({length:r},(n,a)=>t[a])};m1r();import BEa from"node:os";var wEa=1e3*5,asi=(e,t="SIGTERM",r={})=>{let n=e(t);return TEa(e,t,r,n),n},TEa=(e,t,r,n)=>{if(!REa(t,r,n))return;let a=DEa(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},REa=(e,{forceKillAfterTimeout:t},r)=>NEa(e)&&t!==!1&&r,NEa=e=>e===BEa.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",DEa=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return wEa;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},csi=(e,t)=>{e.kill()&&(t.isCanceled=!0)},kEa=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},lsi=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let a,o=new Promise((A,f)=>{a=setTimeout(()=>{kEa(e,r,f)},t)}),l=n.finally(()=>{clearTimeout(a)});return Promise.race([o,l])},usi=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},gsi=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let a=iCt(()=>{e.kill()});return n.finally(()=>{a()})};import{createWriteStream as xEa}from"node:fs";import{ChildProcess as GEa}from"node:child_process";function sCt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function C1r(e){return sCt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var FEa=e=>e instanceof GEa&&typeof e.then=="function",_1r=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(xEa(r)),e;if(C1r(r))return e[t].pipe(r),e;if(!FEa(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!C1r(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},Asi=e=>{e.stdout!==null&&(e.pipeStdout=_1r.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=_1r.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=_1r.bind(void 0,e,"all"))};import{createReadStream as e1a,readFileSync as t1a}from"node:fs";import{setTimeout as r1a}from"node:timers/promises";var EQe=async(e,{init:t,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,finalize:A},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!LEa(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let I=t();I.length=0;try{for await(let C of e){let b=VEa(C),E=r[b](C,I);fsi({convertedChunk:E,state:I,getSize:n,truncateChunk:a,addChunk:o,maxBuffer:f})}return ZEa({state:I,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,maxBuffer:f}),A(I)}catch(C){throw C.bufferedData=A(I),C}},ZEa=({state:e,getSize:t,truncateChunk:r,addChunk:n,getFinalChunk:a,maxBuffer:o})=>{let l=a(e);l!==void 0&&fsi({convertedChunk:l,state:e,getSize:t,truncateChunk:r,addChunk:n,maxBuffer:o})},fsi=({convertedChunk:e,state:t,getSize:r,truncateChunk:n,addChunk:a,maxBuffer:o})=>{let l=r(e),A=t.length+l;if(A<=o){dsi(e,t,a,A);return}let f=n(e,o-t.length);throw f!==void 0&&dsi(f,t,a,o),new oCt},dsi=(e,t,r,n)=>{t.contents=r(e,t,n),t.length=n},LEa=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",VEa=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=psi.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&psi.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:psi}=Object.prototype,oCt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var y1r=e=>e,b1r=()=>{},E1r=({contents:e})=>e,aCt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},cCt=e=>e.length;async function S1r(e,t){return EQe(e,JEa,t)}var PEa=()=>({contents:new ArrayBuffer(0)}),WEa=e=>OEa.encode(e),OEa=new TextEncoder,Isi=e=>new Uint8Array(e),hsi=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),MEa=(e,t)=>e.slice(0,t),HEa=(e,{contents:t,length:r},n)=>{let a=_si()?QEa(t,n):YEa(t,n);return new Uint8Array(a).set(e,r),a},YEa=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(Csi(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},QEa=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:Csi(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},Csi=e=>msi**Math.ceil(Math.log(e)/Math.log(msi)),msi=2,XEa=({contents:e,length:t})=>_si()?e:e.slice(0,t),_si=()=>"resize"in ArrayBuffer.prototype,JEa={init:PEa,convertChunk:{string:WEa,buffer:Isi,arrayBuffer:Isi,dataView:hsi,typedArray:hsi,others:aCt},getSize:cCt,truncateChunk:MEa,addChunk:HEa,getFinalChunk:b1r,finalize:XEa};async function lCt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return ysi(await S1r(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=ysi(r.bufferedData)),r}}var ysi=e=>globalThis.Buffer.from(e);async function v1r(e,t){return EQe(e,qEa,t)}var UEa=()=>({contents:"",textDecoder:new TextDecoder}),uCt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),KEa=(e,{contents:t})=>t+e,jEa=(e,t)=>e.slice(0,t),zEa=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},qEa={init:UEa,convertChunk:{string:y1r,buffer:uCt,arrayBuffer:uCt,dataView:uCt,typedArray:uCt,others:aCt},getSize:cCt,truncateChunk:jEa,addChunk:KEa,getFinalChunk:zEa,finalize:E1r};var Ssi=Nt(Esi(),1),vsi=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},n1a=({input:e,inputFile:t})=>typeof t!="string"?e:(vsi(e),t1a(t)),Bsi=e=>{let t=n1a(e);if(sCt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},i1a=({input:e,inputFile:t})=>typeof t!="string"?e:(vsi(e),e1a(t)),wsi=(e,t)=>{let r=i1a(t);r!==void 0&&(sCt(r)?r.pipe(e.stdin):e.stdin.end(r))},Tsi=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,Ssi.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},B1r=async(e,t)=>{if(!(!e||t===void 0)){await r1a(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},w1r=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?v1r(e,{maxBuffer:n}):t===null||t==="buffer"?lCt(e,{maxBuffer:n}):s1a(e,n,t)},s1a=async(e,t,r)=>(await lCt(e,{maxBuffer:t})).toString(r),Rsi=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:a,maxBuffer:o},l)=>{let A=w1r(e,{encoding:n,buffer:a,maxBuffer:o}),f=w1r(t,{encoding:n,buffer:a,maxBuffer:o}),I=w1r(r,{encoding:n,buffer:a,maxBuffer:o*2});try{return await Promise.all([l,A,f,I])}catch(C){return Promise.all([{error:C,signal:C.signal,timedOut:C.timedOut},B1r(e,A),B1r(t,f),B1r(r,I)])}};var o1a=(async()=>{})().constructor.prototype,a1a=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(o1a,e)]),T1r=(e,t)=>{for(let[r,n]of a1a){let a=typeof t=="function"?(...o)=>Reflect.apply(n.value,t(),o):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:a})}},Nsi=e=>new Promise((t,r)=>{e.on("exit",(n,a)=>{t({exitCode:n,signal:a})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});import{Buffer as c1a}from"node:buffer";import{ChildProcess as l1a}from"node:child_process";var xsi=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],u1a=/^[\w.-]+$/,g1a=e=>typeof e!="string"||u1a.test(e)?e:`"${e.replaceAll('"','\\"')}"`,R1r=(e,t)=>xsi(e,t).join(" "),N1r=(e,t)=>xsi(e,t).map(r=>g1a(r)).join(" "),Gsi=/ +/g,Fsi=e=>{let t=[];for(let r of e.trim().split(Gsi)){let n=t.at(-1);n&&n.endsWith("\\")?t[t.length-1]=`${n.slice(0,-1)} ${r}`:t.push(r)}return t},Dsi=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof l1a)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(c1a.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},ksi=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],A1a=({templates:e,expressions:t,tokens:r,index:n,template:a})=>{let o=a??e.raw[n],l=o.split(Gsi).filter(Boolean),A=ksi(r,l,o.startsWith(" "));if(n===t.length)return A;let f=t[n],I=Array.isArray(f)?f.map(C=>Dsi(C)):[Dsi(f)];return ksi(A,I,o.endsWith(" "))},D1r=(e,t)=>{let r=[];for(let[n,a]of e.entries())r=A1a({templates:e,expressions:t,tokens:r,index:n,template:a});return r};import{debuglog as d1a}from"node:util";import p1a from"node:process";var Zsi=d1a("execa").enabled,gCt=(e,t)=>String(e).padStart(t,"0"),f1a=()=>{let e=new Date;return`${gCt(e.getHours(),2)}:${gCt(e.getMinutes(),2)}:${gCt(e.getSeconds(),2)}.${gCt(e.getMilliseconds(),3)}`},k1r=(e,{verbose:t})=>{t&&p1a.stderr.write(`[${f1a()}] ${e} -`)};var m1a=1e3*1e3*100,C1a=({env:e,extendEnv:t,preferLocal:r,localDir:n,execPath:a})=>{let o=t?{...ACt.env,...e}:e;return r?zii({env:o,cwd:n,execPath:a}):o},Psi=(e,t,r={})=>{let n=Vsi.default._parse(e,t,r);return e=n.command,t=n.args,r=n.options,r={maxBuffer:m1a,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||ACt.cwd(),execPath:ACt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:Zsi,...r},r.env=C1a(r),r.stdio=ssi(r),ACt.platform==="win32"&&h1a.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},SQe=(e,t,r)=>typeof t!="string"&&!I1a.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?l1r(t):t;function j$(e,t,r){let n=Psi(e,t,r),a=R1r(e,t),o=N1r(e,t);k1r(o,n.options),usi(n.options);let l;try{l=x1r.spawn(n.file,n.args,n.options)}catch(N){let B=new x1r.ChildProcess,F=Promise.reject(bQe({error:N,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return T1r(B,F),B}let A=Nsi(l),f=lsi(l,n.options,A),I=gsi(l,n.options,f),C={isCanceled:!1};l.kill=asi.bind(null,l.kill.bind(l)),l.cancel=csi.bind(null,l,C);let E=$ii(async()=>{let[{error:N,exitCode:B,signal:F,timedOut:Q},X,ae,ne]=await Rsi(l,n.options,I),ce=SQe(n.options,X),fe=SQe(n.options,ae),ue=SQe(n.options,ne);if(N||B!==0||F!==null){let de=bQe({error:N,exitCode:B,signal:F,stdout:ce,stderr:fe,all:ue,command:a,escapedCommand:o,parsed:n,timedOut:Q,isCanceled:C.isCanceled||(n.options.signal?n.options.signal.aborted:!1),killed:l.killed});if(!n.options.reject)return de;throw de}return{command:a,escapedCommand:o,exitCode:0,stdout:ce,stderr:fe,all:ue,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return wsi(l,n.options),l.all=Tsi(l,n.options),Asi(l),T1r(l,E),l}function _1a(e,t,r){let n=Psi(e,t,r),a=R1r(e,t),o=N1r(e,t);k1r(o,n.options);let l=Bsi(n.options),A;try{A=x1r.spawnSync(n.file,n.args,{...n.options,input:l})}catch(C){throw bQe({error:C,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}let f=SQe(n.options,A.stdout,A.error),I=SQe(n.options,A.stderr,A.error);if(A.error||A.status!==0||A.signal!==null){let C=bQe({stdout:f,stderr:I,error:A.error,signal:A.signal,exitCode:A.status,command:a,escapedCommand:o,parsed:n,timedOut:A.error&&A.error.code==="ETIMEDOUT",isCanceled:!1,killed:A.signal!==null});if(!n.options.reject)return C;throw C}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:I,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var y1a=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},Lsi=(e={})=>({preferLocal:!0,...y1a(e),...e});function Wsi(e){function t(r,...n){if(!Array.isArray(r))return Wsi({...e,...r});let[a,...o]=D1r(r,n);return j$(a,o,Lsi(e))}return t.sync=(r,...n)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=D1r(r,n);return _1a(a,o,Lsi(e))},t}var jAu=Wsi();function Osi(e,t){let[r,...n]=Fsi(e);return j$(r,n,t)}async function dCt(e){let{cwd:t,fromLastTag:r,to:n,last:a,edit:o,gitLogArgs:l}=e,A=e.from;if(o)return Kii(t,o);if(a){let C=(await j$("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return C[0]=='"'&&C[C.length-1]=='"'&&(C=C.slice(1,-1)),[C]}if(!A&&r){let{stdout:I}=await j$("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(I.length===40)A=I;else{let C=I.lastIndexOf("-",I.length-43);A=I.slice(0,C)}}let f={from:A,to:n};return l&&(f={...(0,Msi.default)(l.split(" ")),from:A,to:n}),Hii(f,{cwd:t})}var pCt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(pCt||(pCt={}));var Hsi;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(Hsi||(Hsi={}));var Ysi=(e=0)=>t=>`\x1B[${t+e}m`,Qsi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Xsi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,w2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},Adu=Object.keys(w2.modifier),b1a=Object.keys(w2.color),E1a=Object.keys(w2.bgColor),ddu=[...b1a,...E1a];function S1a(){let e=new Map;for(let[t,r]of Object.entries(w2)){for(let[n,a]of Object.entries(r))w2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=w2[n],e.set(a[0],a[1]);Object.defineProperty(w2,t,{value:r,enumerable:!1})}return Object.defineProperty(w2,"codes",{value:e,enumerable:!1}),w2.color.close="\x1B[39m",w2.bgColor.close="\x1B[49m",w2.color.ansi=Ysi(),w2.color.ansi256=Qsi(),w2.color.ansi16m=Xsi(),w2.bgColor.ansi=Ysi(10),w2.bgColor.ansi256=Qsi(10),w2.bgColor.ansi16m=Xsi(10),Object.defineProperties(w2,{rgbToAnsi256:{value(t,r,n){return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>w2.rgbToAnsi256(...w2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>w2.ansi256ToAnsi(w2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>w2.ansi256ToAnsi(w2.hexToAnsi256(t)),enumerable:!1}}),w2}var v1a=S1a(),OX=v1a;import G1r from"node:process";import B1a from"node:os";import Jsi from"node:tty";function OM(e,t=globalThis.Deno?globalThis.Deno.args:G1r.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function R1a(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=w1a();n!==void 0&&(fCt=n);let a=r?fCt:n;if(a===0)return 0;if(r){if(OM("color=16m")||OM("color=full")||OM("color=truecolor"))return 3;if(OM("color=256"))return 2}if("TF_BUILD"in DS&&"AGENT_NAME"in DS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(DS.TERM==="dumb")return o;if(G1r.platform==="win32"){let l=B1a.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in DS)return"GITHUB_ACTIONS"in DS||"GITEA_ACTIONS"in DS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in DS)||DS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in DS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(DS.TEAMCITY_VERSION)?1:0;if(DS.COLORTERM==="truecolor"||DS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in DS){let l=Number.parseInt((DS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(DS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(DS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(DS.TERM)||"COLORTERM"in DS?1:o}function Usi(e,t={}){let r=R1a(e,{streamIsTTY:e&&e.isTTY,...t});return T1a(r)}var N1a={stdout:Usi({isTTY:Jsi.isatty(1)}),stderr:Usi({isTTY:Jsi.isatty(2)})},Ksi=N1a;function jsi(e,t,r){let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.slice(o,n)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.slice(o),l}function zsi(e,t,r,n){let a=0,o="";do{let l=e[n-1]==="\r";o+=e.slice(a,l?n-1:n)+t+(l?`\r +`);return X?(n.originalMessage=n.message,n.message=ne):n=new Error(ne),n.shortMessage=ae,n.command=l,n.escapedCommand=A,n.exitCode=o,n.signal=a,n.signalDescription=N,n.stdout=e,n.stderr=t,n.cwd=E,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!f,n.isCanceled=I,n.killed=C&&!f,n};var nCt=["stdin","stdout","stderr"],PEa=e=>nCt.some(t=>e[t]!==void 0),Asi=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return nCt.map(n=>e[n]);if(PEa(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${nCt.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,nCt.length);return Array.from({length:r},(n,a)=>t[a])};b1r();import MEa from"node:os";var HEa=1e3*5,psi=(e,t="SIGTERM",r={})=>{let n=e(t);return YEa(e,t,r,n),n},YEa=(e,t,r,n)=>{if(!QEa(t,r,n))return;let a=JEa(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},QEa=(e,{forceKillAfterTimeout:t},r)=>XEa(e)&&t!==!1&&r,XEa=e=>e===MEa.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",JEa=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return HEa;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},fsi=(e,t)=>{e.kill()&&(t.isCanceled=!0)},UEa=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},Isi=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let a,o=new Promise((A,f)=>{a=setTimeout(()=>{UEa(e,r,f)},t)}),l=n.finally(()=>{clearTimeout(a)});return Promise.race([o,l])},hsi=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},msi=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let a=oCt(()=>{e.kill()});return n.finally(()=>{a()})};import{createWriteStream as KEa}from"node:fs";import{ChildProcess as jEa}from"node:child_process";function aCt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function E1r(e){return aCt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var zEa=e=>e instanceof jEa&&typeof e.then=="function",S1r=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(KEa(r)),e;if(E1r(r))return e[t].pipe(r),e;if(!zEa(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!E1r(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},Csi=e=>{e.stdout!==null&&(e.pipeStdout=S1r.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=S1r.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=S1r.bind(void 0,e,"all"))};import{createReadStream as I1a,readFileSync as h1a}from"node:fs";import{setTimeout as m1a}from"node:timers/promises";var vQe=async(e,{init:t,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,finalize:A},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!$Ea(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let I=t();I.length=0;try{for await(let C of e){let b=e1a(C),E=r[b](C,I);bsi({convertedChunk:E,state:I,getSize:n,truncateChunk:a,addChunk:o,maxBuffer:f})}return qEa({state:I,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,maxBuffer:f}),A(I)}catch(C){throw C.bufferedData=A(I),C}},qEa=({state:e,getSize:t,truncateChunk:r,addChunk:n,getFinalChunk:a,maxBuffer:o})=>{let l=a(e);l!==void 0&&bsi({convertedChunk:l,state:e,getSize:t,truncateChunk:r,addChunk:n,maxBuffer:o})},bsi=({convertedChunk:e,state:t,getSize:r,truncateChunk:n,addChunk:a,maxBuffer:o})=>{let l=r(e),A=t.length+l;if(A<=o){_si(e,t,a,A);return}let f=n(e,o-t.length);throw f!==void 0&&_si(f,t,a,o),new cCt},_si=(e,t,r,n)=>{t.contents=r(e,t,n),t.length=n},$Ea=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",e1a=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=ysi.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&ysi.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:ysi}=Object.prototype,cCt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var v1r=e=>e,B1r=()=>{},w1r=({contents:e})=>e,lCt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},uCt=e=>e.length;async function T1r(e,t){return vQe(e,l1a,t)}var t1a=()=>({contents:new ArrayBuffer(0)}),r1a=e=>n1a.encode(e),n1a=new TextEncoder,Esi=e=>new Uint8Array(e),Ssi=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),i1a=(e,t)=>e.slice(0,t),s1a=(e,{contents:t,length:r},n)=>{let a=wsi()?a1a(t,n):o1a(t,n);return new Uint8Array(a).set(e,r),a},o1a=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(Bsi(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},a1a=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:Bsi(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},Bsi=e=>vsi**Math.ceil(Math.log(e)/Math.log(vsi)),vsi=2,c1a=({contents:e,length:t})=>wsi()?e:e.slice(0,t),wsi=()=>"resize"in ArrayBuffer.prototype,l1a={init:t1a,convertChunk:{string:r1a,buffer:Esi,arrayBuffer:Esi,dataView:Ssi,typedArray:Ssi,others:lCt},getSize:uCt,truncateChunk:i1a,addChunk:s1a,getFinalChunk:B1r,finalize:c1a};async function gCt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return Tsi(await T1r(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=Tsi(r.bufferedData)),r}}var Tsi=e=>globalThis.Buffer.from(e);async function R1r(e,t){return vQe(e,p1a,t)}var u1a=()=>({contents:"",textDecoder:new TextDecoder}),ACt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),g1a=(e,{contents:t})=>t+e,A1a=(e,t)=>e.slice(0,t),d1a=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},p1a={init:u1a,convertChunk:{string:v1r,buffer:ACt,arrayBuffer:ACt,dataView:ACt,typedArray:ACt,others:lCt},getSize:uCt,truncateChunk:A1a,addChunk:g1a,getFinalChunk:d1a,finalize:w1r};var Dsi=Nt(Nsi(),1),ksi=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},C1a=({input:e,inputFile:t})=>typeof t!="string"?e:(ksi(e),h1a(t)),xsi=e=>{let t=C1a(e);if(aCt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},_1a=({input:e,inputFile:t})=>typeof t!="string"?e:(ksi(e),I1a(t)),Gsi=(e,t)=>{let r=_1a(t);r!==void 0&&(aCt(r)?r.pipe(e.stdin):e.stdin.end(r))},Fsi=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,Dsi.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},N1r=async(e,t)=>{if(!(!e||t===void 0)){await m1a(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},D1r=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?R1r(e,{maxBuffer:n}):t===null||t==="buffer"?gCt(e,{maxBuffer:n}):y1a(e,n,t)},y1a=async(e,t,r)=>(await gCt(e,{maxBuffer:t})).toString(r),Zsi=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:a,maxBuffer:o},l)=>{let A=D1r(e,{encoding:n,buffer:a,maxBuffer:o}),f=D1r(t,{encoding:n,buffer:a,maxBuffer:o}),I=D1r(r,{encoding:n,buffer:a,maxBuffer:o*2});try{return await Promise.all([l,A,f,I])}catch(C){return Promise.all([{error:C,signal:C.signal,timedOut:C.timedOut},N1r(e,A),N1r(t,f),N1r(r,I)])}};var b1a=(async()=>{})().constructor.prototype,E1a=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(b1a,e)]),k1r=(e,t)=>{for(let[r,n]of E1a){let a=typeof t=="function"?(...o)=>Reflect.apply(n.value,t(),o):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:a})}},Lsi=e=>new Promise((t,r)=>{e.on("exit",(n,a)=>{t({exitCode:n,signal:a})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});import{Buffer as S1a}from"node:buffer";import{ChildProcess as v1a}from"node:child_process";var Wsi=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],B1a=/^[\w.-]+$/,w1a=e=>typeof e!="string"||B1a.test(e)?e:`"${e.replaceAll('"','\\"')}"`,x1r=(e,t)=>Wsi(e,t).join(" "),G1r=(e,t)=>Wsi(e,t).map(r=>w1a(r)).join(" "),Osi=/ +/g,Msi=e=>{let t=[];for(let r of e.trim().split(Osi)){let n=t.at(-1);n&&n.endsWith("\\")?t[t.length-1]=`${n.slice(0,-1)} ${r}`:t.push(r)}return t},Vsi=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof v1a)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(S1a.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},Psi=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],T1a=({templates:e,expressions:t,tokens:r,index:n,template:a})=>{let o=a??e.raw[n],l=o.split(Osi).filter(Boolean),A=Psi(r,l,o.startsWith(" "));if(n===t.length)return A;let f=t[n],I=Array.isArray(f)?f.map(C=>Vsi(C)):[Vsi(f)];return Psi(A,I,o.endsWith(" "))},F1r=(e,t)=>{let r=[];for(let[n,a]of e.entries())r=T1a({templates:e,expressions:t,tokens:r,index:n,template:a});return r};import{debuglog as R1a}from"node:util";import N1a from"node:process";var Hsi=R1a("execa").enabled,dCt=(e,t)=>String(e).padStart(t,"0"),D1a=()=>{let e=new Date;return`${dCt(e.getHours(),2)}:${dCt(e.getMinutes(),2)}:${dCt(e.getSeconds(),2)}.${dCt(e.getMilliseconds(),3)}`},Z1r=(e,{verbose:t})=>{t&&N1a.stderr.write(`[${D1a()}] ${e} +`)};var G1a=1e3*1e3*100,F1a=({env:e,extendEnv:t,preferLocal:r,localDir:n,execPath:a})=>{let o=t?{...pCt.env,...e}:e;return r?isi({env:o,cwd:n,execPath:a}):o},Xsi=(e,t,r={})=>{let n=Qsi.default._parse(e,t,r);return e=n.command,t=n.args,r=n.options,r={maxBuffer:G1a,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||pCt.cwd(),execPath:pCt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:Hsi,...r},r.env=F1a(r),r.stdio=Asi(r),pCt.platform==="win32"&&x1a.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},BQe=(e,t,r)=>typeof t!="string"&&!k1a.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?d1r(t):t;function j$(e,t,r){let n=Xsi(e,t,r),a=x1r(e,t),o=G1r(e,t);Z1r(o,n.options),hsi(n.options);let l;try{l=L1r.spawn(n.file,n.args,n.options)}catch(N){let B=new L1r.ChildProcess,F=Promise.reject(SQe({error:N,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return k1r(B,F),B}let A=Lsi(l),f=Isi(l,n.options,A),I=msi(l,n.options,f),C={isCanceled:!1};l.kill=psi.bind(null,l.kill.bind(l)),l.cancel=fsi.bind(null,l,C);let E=osi(async()=>{let[{error:N,exitCode:B,signal:F,timedOut:Q},X,ae,ne]=await Zsi(l,n.options,I),ce=BQe(n.options,X),fe=BQe(n.options,ae),ue=BQe(n.options,ne);if(N||B!==0||F!==null){let de=SQe({error:N,exitCode:B,signal:F,stdout:ce,stderr:fe,all:ue,command:a,escapedCommand:o,parsed:n,timedOut:Q,isCanceled:C.isCanceled||(n.options.signal?n.options.signal.aborted:!1),killed:l.killed});if(!n.options.reject)return de;throw de}return{command:a,escapedCommand:o,exitCode:0,stdout:ce,stderr:fe,all:ue,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return Gsi(l,n.options),l.all=Fsi(l,n.options),Csi(l),k1r(l,E),l}function Z1a(e,t,r){let n=Xsi(e,t,r),a=x1r(e,t),o=G1r(e,t);Z1r(o,n.options);let l=xsi(n.options),A;try{A=L1r.spawnSync(n.file,n.args,{...n.options,input:l})}catch(C){throw SQe({error:C,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}let f=BQe(n.options,A.stdout,A.error),I=BQe(n.options,A.stderr,A.error);if(A.error||A.status!==0||A.signal!==null){let C=SQe({stdout:f,stderr:I,error:A.error,signal:A.signal,exitCode:A.status,command:a,escapedCommand:o,parsed:n,timedOut:A.error&&A.error.code==="ETIMEDOUT",isCanceled:!1,killed:A.signal!==null});if(!n.options.reject)return C;throw C}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:I,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var L1a=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},Ysi=(e={})=>({preferLocal:!0,...L1a(e),...e});function Jsi(e){function t(r,...n){if(!Array.isArray(r))return Jsi({...e,...r});let[a,...o]=F1r(r,n);return j$(a,o,Ysi(e))}return t.sync=(r,...n)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=F1r(r,n);return Z1a(a,o,Ysi(e))},t}var Mdu=Jsi();function Usi(e,t){let[r,...n]=Msi(e);return j$(r,n,t)}async function fCt(e){let{cwd:t,fromLastTag:r,to:n,last:a,edit:o,gitLogArgs:l}=e,A=e.from;if(o)return rsi(t,o);if(a){let C=(await j$("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return C[0]=='"'&&C[C.length-1]=='"'&&(C=C.slice(1,-1)),[C]}if(!A&&r){let{stdout:I}=await j$("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(I.length===40)A=I;else{let C=I.lastIndexOf("-",I.length-43);A=I.slice(0,C)}}let f={from:A,to:n};return l&&(f={...(0,Ksi.default)(l.split(" ")),from:A,to:n}),jii(f,{cwd:t})}var ICt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(ICt||(ICt={}));var jsi;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(jsi||(jsi={}));var zsi=(e=0)=>t=>`\x1B[${t+e}m`,qsi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,$si=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,w2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},ipu=Object.keys(w2.modifier),V1a=Object.keys(w2.color),P1a=Object.keys(w2.bgColor),spu=[...V1a,...P1a];function W1a(){let e=new Map;for(let[t,r]of Object.entries(w2)){for(let[n,a]of Object.entries(r))w2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=w2[n],e.set(a[0],a[1]);Object.defineProperty(w2,t,{value:r,enumerable:!1})}return Object.defineProperty(w2,"codes",{value:e,enumerable:!1}),w2.color.close="\x1B[39m",w2.bgColor.close="\x1B[49m",w2.color.ansi=zsi(),w2.color.ansi256=qsi(),w2.color.ansi16m=$si(),w2.bgColor.ansi=zsi(10),w2.bgColor.ansi256=qsi(10),w2.bgColor.ansi16m=$si(10),Object.defineProperties(w2,{rgbToAnsi256:{value(t,r,n){return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>w2.rgbToAnsi256(...w2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>w2.ansi256ToAnsi(w2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>w2.ansi256ToAnsi(w2.hexToAnsi256(t)),enumerable:!1}}),w2}var O1a=W1a(),OX=O1a;import V1r from"node:process";import M1a from"node:os";import eoi from"node:tty";function OM(e,t=globalThis.Deno?globalThis.Deno.args:V1r.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function Q1a(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=H1a();n!==void 0&&(hCt=n);let a=r?hCt:n;if(a===0)return 0;if(r){if(OM("color=16m")||OM("color=full")||OM("color=truecolor"))return 3;if(OM("color=256"))return 2}if("TF_BUILD"in DS&&"AGENT_NAME"in DS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(DS.TERM==="dumb")return o;if(V1r.platform==="win32"){let l=M1a.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in DS)return"GITHUB_ACTIONS"in DS||"GITEA_ACTIONS"in DS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in DS)||DS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in DS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(DS.TEAMCITY_VERSION)?1:0;if(DS.COLORTERM==="truecolor"||DS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in DS){let l=Number.parseInt((DS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(DS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(DS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(DS.TERM)||"COLORTERM"in DS?1:o}function toi(e,t={}){let r=Q1a(e,{streamIsTTY:e&&e.isTTY,...t});return Y1a(r)}var X1a={stdout:toi({isTTY:eoi.isatty(1)}),stderr:toi({isTTY:eoi.isatty(2)})},roi=X1a;function noi(e,t,r){let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.slice(o,n)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.slice(o),l}function ioi(e,t,r,n){let a=0,o="";do{let l=e[n-1]==="\r";o+=e.slice(a,l?n-1:n)+t+(l?`\r `:` `)+r,a=n+1,n=e.indexOf(` -`,a)}while(n!==-1);return o+=e.slice(a),o}var{stdout:qsi,stderr:$si}=Ksi,F1r=Symbol("GENERATOR"),lTe=Symbol("STYLER"),vQe=Symbol("IS_EMPTY"),eoi=["ansi","ansi","ansi256","ansi16m"],uTe=Object.create(null),D1a=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=qsi?qsi.level:0;e.level=t.level===void 0?r:t.level};var k1a=e=>{let t=(...r)=>r.join(" ");return D1a(t,e),Object.setPrototypeOf(t,BQe.prototype),t};function BQe(e){return k1a(e)}Object.setPrototypeOf(BQe.prototype,Function.prototype);for(let[e,t]of Object.entries(OX))uTe[e]={get(){let r=ICt(this,L1r(t.open,t.close,this[lTe]),this[vQe]);return Object.defineProperty(this,e,{value:r}),r}};uTe.visible={get(){let e=ICt(this,this[lTe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var Z1r=(e,t,r,...n)=>e==="rgb"?t==="ansi16m"?OX[r].ansi16m(...n):t==="ansi256"?OX[r].ansi256(OX.rgbToAnsi256(...n)):OX[r].ansi(OX.rgbToAnsi(...n)):e==="hex"?Z1r("rgb",t,r,...OX.hexToRgb(...n)):OX[r][e](...n),x1a=["rgb","hex","ansi256"];for(let e of x1a){uTe[e]={get(){let{level:r}=this;return function(...n){let a=L1r(Z1r(e,eoi[r],"color",...n),OX.color.close,this[lTe]);return ICt(this,a,this[vQe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);uTe[t]={get(){let{level:r}=this;return function(...n){let a=L1r(Z1r(e,eoi[r],"bgColor",...n),OX.bgColor.close,this[lTe]);return ICt(this,a,this[vQe])}}}}var G1a=Object.defineProperties(()=>{},{...uTe,level:{enumerable:!0,get(){return this[F1r].level},set(e){this[F1r].level=e}}}),L1r=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},ICt=(e,t,r)=>{let n=(...a)=>F1a(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,G1a),n[F1r]=e,n[lTe]=t,n[vQe]=r,n},F1a=(e,t)=>{if(e.level<=0||!t)return e[vQe]?"":t;let r=e[lTe];if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=jsi(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=zsi(t,a,n,o)),n+t+a};Object.defineProperties(BQe.prototype,uTe);var Z1a=BQe(),Edu=BQe({level:$si?$si.level:0});var fp=Z1a;var L1a=[" ","\u26A0","\u2716"],V1a=["white","yellow","red"];function toi(e={},t={}){let{results:r=[]}=e,n=o=>P1a(o,t),a=o=>W1a(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...n(o),...a(o)]).reduce((o,l)=>Array.isArray(l)?[...o,...l]:[...o,l],[]).join(` -`)}function P1a(e,t={}){let{color:r=!0}=t,{errors:n=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let l="\u29D7",A=r?fp.gray(l):l,f=r?fp.bold(o):o,I=n.length>0||a.length>0;return t.verbose||I?[`${A} input: ${f}`]:[]}function W1a(e={},t={}){let{signs:r=L1a,colors:n=V1a,color:a=!0}=t,{errors:o=[],warnings:l=[]}=e,A=[...o,...l].map(X=>{let ae=r[X.level]||"",ne=n[X.level]||"white",ce=a?fp[ne](ae):ae,fe=a?fp.grey(`[${X.name}]`):`[${X.name}]`;return`${ce} ${X.message} ${fe}`}),f=O1a(e),I=M1a(e),C=a?fp[I](f):f,b=o.length,E=l.length,N=A.length>0,B=t.verbose||N?`${C} found ${b} problems, ${E} warnings`:void 0,F=a&&typeof B=="string"?fp.bold(B):B,Q=N&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...A,N?"":void 0,F,Q,N?"":void 0].filter(X=>typeof X=="string")}function O1a(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function M1a(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import ITe from"util";var roi=Nt(UC(),1),H1a=e=>{let t=e.split(` -`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return roi.default.valid(r)!==null},yae=e=>e.test.bind(e),noi=[yae(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),yae(/^(Merge tag (.*?))(?:\r?\n)*$/m),yae(/^(R|r)evert (.*)/),yae(/^(amend|fixup|squash)!/),H1a,yae(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),yae(/^Merge remote-tracking branch(\s*)(.*)/),yae(/^Automatic merge(.*)/),yae(/^Auto-merged (.*?) into (.*)/)];function hCt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let n=r.filter(o=>typeof o!="function");if(n.length>0)throw new Error(`ignores must be array of type function, received items of type: ${n.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:noi,...r].some(o=>o(e))}var Soi=Nt(doi(),1),voi=Nt(Eoi(),1);async function d2a(e,t=Soi.sync,r){let o={...(await(0,voi.default)()).parserOpts,fieldPattern:null,...r||{}},l=t(e,o);return l.raw=e,l}var Boi=d2a;var e2r=Nt(zoi(),1),Nci=Nt(_ai(),1),Dci=Nt(Hai(),1),t2r=Nt(ici(),1),kci=Nt(Rci(),1);function SCt(e,t){switch(t){case"camel-case":return(0,e2r.default)(e);case"kebab-case":return(0,Nci.default)(e);case"snake-case":return(0,Dci.default)(e);case"pascal-case":return(0,t2r.default)((0,e2r.default)(e));case"start-case":return(0,kci.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,t2r.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var MX=iwa;function iwa(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),n=SCt(r,t);return n===""||n.match(/^\d/)?!0:n===r}var wQe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var HZ=(e,t)=>typeof e=="string"&&e.length<=t;var TQe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>HZ(r,t));var aO=(e,t)=>typeof e=="string"&&e.length>=t;var HX=e=>typeof e=="string"&&e.length>0;function Jf(e=[]){return e.filter(Boolean).join(" ")}var r2r=e=>e==="never",xci=(e,t="always",r=[])=>{let{body:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return r2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[r2r(t)?!o:o,Jf(["body must",r2r(t)?"not":null,`be ${l}`])]};var Gci=(e,t="always")=>{let r=t==="never",n=HX(e.body||"");return[r?n:!n,Jf(["body",r?"may not":"must","be empty"])]};var Fci=(e,t="always",r=".")=>{let n=e.body;if(!n)return[!0];let a=t==="never",o=n[n.length-1]===r;return[a?!o:o,Jf(["body",a?"may not":"must","end with full stop"])]};function P8(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var Zci=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[n]=P8(e.raw).slice(1),a=n==="";return[r?!a:a,Jf(["body",r?"may not":"must","have leading blank line"])]};var Lci=(e,t=void 0,r=0)=>{let n=e.body;return n?[HZ(n,r),`body must not be longer than ${r} characters`]:[!0]};var Vci=(e,t=void 0,r=0)=>{let n=e.body;return n?[TQe(n,r),`body's lines must not be longer than ${r} characters`]:[!0]};var Pci=(e,t=void 0,r=0)=>e.body?[aO(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var Wci=(e,t="always")=>{let r=t==="never",n=HX(e.footer||"");return[r?n:!n,Jf(["footer",r?"may not":"must","be empty"])]};var Oci=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",n=P8(e.raw),a=P8(e.footer),o=n.indexOf(a[0]),[l]=n.slice(o-1),A=l==="";return[r?!A:A,Jf(["footer",r?"may not":"must","have leading blank line"])]};var Mci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[HZ(n,r),`footer must not be longer than ${r} characters`]:[!0]};var Hci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[TQe(n,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var Yci=(e,t=void 0,r=0)=>e.footer?[aO(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var n2r=e=>e==="never",Qci=(e,t="always",r=[])=>{let{header:n}=e;if(typeof n!="string"||!n.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return n2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[n2r(t)?!o:o,Jf(["header must",n2r(t)?"not":null,`be ${l}`])]};var Xci=(e,t="always",r=".")=>{let{header:n}=e,a=t==="never",o=n?.[n.length-1]===r;return[a?!o:o,Jf(["header",a?"may not":"must","end with full stop"])]};var Jci=(e,t=void 0,r=0)=>[HZ(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var Uci=(e,t=void 0,r=0)=>[aO(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var Kci=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),n=t!==t.trimEnd();switch(!0){case(r&&n):return[!1,Jf(["header","must not be surrounded by whitespace"])];case r:return[!1,Jf(["header","must not start with whitespace"])];case n:return[!1,Jf(["header","must not end with whitespace"])];default:return[!0]}};var jci=(e,t="never")=>{let r=t==="always",n=e.references.length>0;return[r?!n:n,Jf(["references",r?"must":"may not","be empty"])]};var i2r=e=>e==="never",zci=(e,t="always",r=[])=>{let{scope:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(I=>typeof I=="string"?{when:"always",case:I}:I),o=/\/|\\|, ?/g,l=n.split(o),A=a.some(I=>{let C=l.every(b=>o.test(b)||MX(b,I.case));return i2r(I.when)?!C:C}),f=a.map(I=>I.case).join(", ");return[i2r(t)?!A:A,Jf(["scope must",i2r(t)?"not":null,`be ${f}`])]};var qci=(e,t="never")=>{let r=t==="always",n=HX(e.scope||"");return[r?!n:n,Jf(["scope",r?"must":"may not","be empty"])]};var $ci=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let n=/\/|\\|, ?/g,a=e.split(n),o=["scope must",`be one of [${r.join(", ")}]`],l=f=>wQe(f,r),A;return t==="never"?(A=!a.some(l),o.splice(1,0,"not")):A=a.every(l),[A,Jf(o)]};var eli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[HZ(n,r),`scope must not be longer than ${r} characters`]:[!0]};var tli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[aO(n,r),`scope must not be shorter than ${r} characters`]:[!0]};var rli=(e,t="always",r="")=>{let n=P8(e.raw).filter(A=>!A.startsWith("#")&&!!A),a=n[n.length-1],o=t==="never",l=a?a.startsWith(r):!1;return[o?!l:l,Jf(["message",o?"must not":"must","be signed off"])]};var swa=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,s2r=e=>e==="never",nli=(e,t="always",r=[])=>{let{subject:n}=e;if(typeof n!="string"||!n.match(swa))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return s2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[s2r(t)?!o:o,Jf(["subject must",s2r(t)?"not":null,`be ${l}`])]};var ili=(e,t="always")=>{let r=t==="never",n=HX(e.subject||"");return[r?n:!n,Jf(["subject",r?"may not":"must","be empty"])]};var sli=(e,t="always",r=".")=>{let n=e.header?.indexOf(":")||0;if(n>0&&n===e.header.length-1)return[!0];let a=e.header,o=t==="never",l=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(l=!1),[o?!l:l,Jf(["subject",o?"may not":"must","end with full stop"])]};var oli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[HZ(n,r),`subject must not be longer than ${r} characters`]:[!0]};var ali=(e,t=void 0,r=0)=>{let n=e.subject;return n?[aO(n,r),`subject must not be shorter than ${r} characters`]:[!0]};var cli=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let n=t==="never",a=/!:/.test(r);return[n?!a:a,Jf(["subject",n?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as owa}from"child_process";var lli=(e,t="always",r="")=>{let n=owa("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=P8(n.toString()).filter(A=>A.startsWith(r)).length,o=t==="never",l=a>0;return[o?!l:l,Jf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var o2r=e=>e==="never",uli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return o2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[o2r(t)?!o:o,Jf(["type must",o2r(t)?"not":null,`be ${l}`])]};var gli=(e,t="always")=>{let r=t==="never",n=HX(e.type||"");return[r?n:!n,Jf(["type",r?"may not":"must","be empty"])]};var Ali=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=t==="never",o=wQe(n,r);return[a?!o:o,Jf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var dli=(e,t=void 0,r=0)=>{let n=e.type;return n?[HZ(n,r),`type must not be longer than ${r} characters`]:[!0]};var pli=(e,t=void 0,r=0)=>{let n=e.type;return n?[aO(n,r),`type must not be shorter than ${r} characters`]:[!0]};var fli={"body-case":xci,"body-empty":Gci,"body-full-stop":Fci,"body-leading-blank":Zci,"body-max-length":Lci,"body-max-line-length":Vci,"body-min-length":Pci,"footer-empty":Wci,"footer-leading-blank":Oci,"footer-max-length":Mci,"footer-max-line-length":Hci,"footer-min-length":Yci,"header-case":Qci,"header-full-stop":Xci,"header-max-length":Jci,"header-min-length":Uci,"header-trim":Kci,"references-empty":jci,"scope-case":zci,"scope-empty":qci,"scope-enum":$ci,"scope-max-length":eli,"scope-min-length":tli,"signed-off-by":rli,"subject-case":nli,"subject-empty":ili,"subject-full-stop":sli,"subject-max-length":oli,"subject-min-length":ali,"subject-exclamation-mark":cli,"trailer-exists":lli,"type-case":uli,"type-empty":gli,"type-enum":Ali,"type-max-length":dli,"type-min-length":pli};var fTe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(fTe||(fTe={}));var Ili;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(Ili||(Ili={}));var hli=({header:e,body:t,footer:r})=>{let n=e;return n=t?`${n} +`,a)}while(n!==-1);return o+=e.slice(a),o}var{stdout:soi,stderr:ooi}=roi,P1r=Symbol("GENERATOR"),uTe=Symbol("STYLER"),wQe=Symbol("IS_EMPTY"),aoi=["ansi","ansi","ansi256","ansi16m"],gTe=Object.create(null),J1a=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=soi?soi.level:0;e.level=t.level===void 0?r:t.level};var U1a=e=>{let t=(...r)=>r.join(" ");return J1a(t,e),Object.setPrototypeOf(t,TQe.prototype),t};function TQe(e){return U1a(e)}Object.setPrototypeOf(TQe.prototype,Function.prototype);for(let[e,t]of Object.entries(OX))gTe[e]={get(){let r=mCt(this,O1r(t.open,t.close,this[uTe]),this[wQe]);return Object.defineProperty(this,e,{value:r}),r}};gTe.visible={get(){let e=mCt(this,this[uTe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var W1r=(e,t,r,...n)=>e==="rgb"?t==="ansi16m"?OX[r].ansi16m(...n):t==="ansi256"?OX[r].ansi256(OX.rgbToAnsi256(...n)):OX[r].ansi(OX.rgbToAnsi(...n)):e==="hex"?W1r("rgb",t,r,...OX.hexToRgb(...n)):OX[r][e](...n),K1a=["rgb","hex","ansi256"];for(let e of K1a){gTe[e]={get(){let{level:r}=this;return function(...n){let a=O1r(W1r(e,aoi[r],"color",...n),OX.color.close,this[uTe]);return mCt(this,a,this[wQe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);gTe[t]={get(){let{level:r}=this;return function(...n){let a=O1r(W1r(e,aoi[r],"bgColor",...n),OX.bgColor.close,this[uTe]);return mCt(this,a,this[wQe])}}}}var j1a=Object.defineProperties(()=>{},{...gTe,level:{enumerable:!0,get(){return this[P1r].level},set(e){this[P1r].level=e}}}),O1r=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},mCt=(e,t,r)=>{let n=(...a)=>z1a(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,j1a),n[P1r]=e,n[uTe]=t,n[wQe]=r,n},z1a=(e,t)=>{if(e.level<=0||!t)return e[wQe]?"":t;let r=e[uTe];if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=noi(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=ioi(t,a,n,o)),n+t+a};Object.defineProperties(TQe.prototype,gTe);var q1a=TQe(),fpu=TQe({level:ooi?ooi.level:0});var fp=q1a;var $1a=[" ","\u26A0","\u2716"],e2a=["white","yellow","red"];function coi(e={},t={}){let{results:r=[]}=e,n=o=>t2a(o,t),a=o=>r2a(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...n(o),...a(o)]).reduce((o,l)=>Array.isArray(l)?[...o,...l]:[...o,l],[]).join(` +`)}function t2a(e,t={}){let{color:r=!0}=t,{errors:n=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let l="\u29D7",A=r?fp.gray(l):l,f=r?fp.bold(o):o,I=n.length>0||a.length>0;return t.verbose||I?[`${A} input: ${f}`]:[]}function r2a(e={},t={}){let{signs:r=$1a,colors:n=e2a,color:a=!0}=t,{errors:o=[],warnings:l=[]}=e,A=[...o,...l].map(X=>{let ae=r[X.level]||"",ne=n[X.level]||"white",ce=a?fp[ne](ae):ae,fe=a?fp.grey(`[${X.name}]`):`[${X.name}]`;return`${ce} ${X.message} ${fe}`}),f=n2a(e),I=i2a(e),C=a?fp[I](f):f,b=o.length,E=l.length,N=A.length>0,B=t.verbose||N?`${C} found ${b} problems, ${E} warnings`:void 0,F=a&&typeof B=="string"?fp.bold(B):B,Q=N&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...A,N?"":void 0,F,Q,N?"":void 0].filter(X=>typeof X=="string")}function n2a(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function i2a(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import hTe from"util";var loi=Nt(UC(),1),s2a=e=>{let t=e.split(` +`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return loi.default.valid(r)!==null},bae=e=>e.test.bind(e),uoi=[bae(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),bae(/^(Merge tag (.*?))(?:\r?\n)*$/m),bae(/^(R|r)evert (.*)/),bae(/^(amend|fixup|squash)!/),s2a,bae(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),bae(/^Merge remote-tracking branch(\s*)(.*)/),bae(/^Automatic merge(.*)/),bae(/^Auto-merged (.*?) into (.*)/)];function CCt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let n=r.filter(o=>typeof o!="function");if(n.length>0)throw new Error(`ignores must be array of type function, received items of type: ${n.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:uoi,...r].some(o=>o(e))}var Doi=Nt(_oi(),1),koi=Nt(Noi(),1);async function R2a(e,t=Doi.sync,r){let o={...(await(0,koi.default)()).parserOpts,fieldPattern:null,...r||{}},l=t(e,o);return l.raw=e,l}var xoi=R2a;var i2r=Nt(iai(),1),Lci=Nt(wai(),1),Vci=Nt(jai(),1),s2r=Nt(gci(),1),Pci=Nt(Zci(),1);function BCt(e,t){switch(t){case"camel-case":return(0,i2r.default)(e);case"kebab-case":return(0,Lci.default)(e);case"snake-case":return(0,Vci.default)(e);case"pascal-case":return(0,s2r.default)((0,i2r.default)(e));case"start-case":return(0,Pci.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,s2r.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var MX=_wa;function _wa(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),n=BCt(r,t);return n===""||n.match(/^\d/)?!0:n===r}var RQe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var HZ=(e,t)=>typeof e=="string"&&e.length<=t;var NQe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>HZ(r,t));var aO=(e,t)=>typeof e=="string"&&e.length>=t;var HX=e=>typeof e=="string"&&e.length>0;function Jf(e=[]){return e.filter(Boolean).join(" ")}var o2r=e=>e==="never",Wci=(e,t="always",r=[])=>{let{body:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return o2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[o2r(t)?!o:o,Jf(["body must",o2r(t)?"not":null,`be ${l}`])]};var Oci=(e,t="always")=>{let r=t==="never",n=HX(e.body||"");return[r?n:!n,Jf(["body",r?"may not":"must","be empty"])]};var Mci=(e,t="always",r=".")=>{let n=e.body;if(!n)return[!0];let a=t==="never",o=n[n.length-1]===r;return[a?!o:o,Jf(["body",a?"may not":"must","end with full stop"])]};function P8(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var Hci=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[n]=P8(e.raw).slice(1),a=n==="";return[r?!a:a,Jf(["body",r?"may not":"must","have leading blank line"])]};var Yci=(e,t=void 0,r=0)=>{let n=e.body;return n?[HZ(n,r),`body must not be longer than ${r} characters`]:[!0]};var Qci=(e,t=void 0,r=0)=>{let n=e.body;return n?[NQe(n,r),`body's lines must not be longer than ${r} characters`]:[!0]};var Xci=(e,t=void 0,r=0)=>e.body?[aO(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var Jci=(e,t="always")=>{let r=t==="never",n=HX(e.footer||"");return[r?n:!n,Jf(["footer",r?"may not":"must","be empty"])]};var Uci=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",n=P8(e.raw),a=P8(e.footer),o=n.indexOf(a[0]),[l]=n.slice(o-1),A=l==="";return[r?!A:A,Jf(["footer",r?"may not":"must","have leading blank line"])]};var Kci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[HZ(n,r),`footer must not be longer than ${r} characters`]:[!0]};var jci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[NQe(n,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var zci=(e,t=void 0,r=0)=>e.footer?[aO(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var a2r=e=>e==="never",qci=(e,t="always",r=[])=>{let{header:n}=e;if(typeof n!="string"||!n.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return a2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[a2r(t)?!o:o,Jf(["header must",a2r(t)?"not":null,`be ${l}`])]};var $ci=(e,t="always",r=".")=>{let{header:n}=e,a=t==="never",o=n?.[n.length-1]===r;return[a?!o:o,Jf(["header",a?"may not":"must","end with full stop"])]};var eli=(e,t=void 0,r=0)=>[HZ(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var tli=(e,t=void 0,r=0)=>[aO(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var rli=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),n=t!==t.trimEnd();switch(!0){case(r&&n):return[!1,Jf(["header","must not be surrounded by whitespace"])];case r:return[!1,Jf(["header","must not start with whitespace"])];case n:return[!1,Jf(["header","must not end with whitespace"])];default:return[!0]}};var nli=(e,t="never")=>{let r=t==="always",n=e.references.length>0;return[r?!n:n,Jf(["references",r?"must":"may not","be empty"])]};var c2r=e=>e==="never",ili=(e,t="always",r=[])=>{let{scope:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(I=>typeof I=="string"?{when:"always",case:I}:I),o=/\/|\\|, ?/g,l=n.split(o),A=a.some(I=>{let C=l.every(b=>o.test(b)||MX(b,I.case));return c2r(I.when)?!C:C}),f=a.map(I=>I.case).join(", ");return[c2r(t)?!A:A,Jf(["scope must",c2r(t)?"not":null,`be ${f}`])]};var sli=(e,t="never")=>{let r=t==="always",n=HX(e.scope||"");return[r?!n:n,Jf(["scope",r?"must":"may not","be empty"])]};var oli=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let n=/\/|\\|, ?/g,a=e.split(n),o=["scope must",`be one of [${r.join(", ")}]`],l=f=>RQe(f,r),A;return t==="never"?(A=!a.some(l),o.splice(1,0,"not")):A=a.every(l),[A,Jf(o)]};var ali=(e,t=void 0,r=0)=>{let n=e.scope;return n?[HZ(n,r),`scope must not be longer than ${r} characters`]:[!0]};var cli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[aO(n,r),`scope must not be shorter than ${r} characters`]:[!0]};var lli=(e,t="always",r="")=>{let n=P8(e.raw).filter(A=>!A.startsWith("#")&&!!A),a=n[n.length-1],o=t==="never",l=a?a.startsWith(r):!1;return[o?!l:l,Jf(["message",o?"must not":"must","be signed off"])]};var ywa=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,l2r=e=>e==="never",uli=(e,t="always",r=[])=>{let{subject:n}=e;if(typeof n!="string"||!n.match(ywa))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return l2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[l2r(t)?!o:o,Jf(["subject must",l2r(t)?"not":null,`be ${l}`])]};var gli=(e,t="always")=>{let r=t==="never",n=HX(e.subject||"");return[r?n:!n,Jf(["subject",r?"may not":"must","be empty"])]};var Ali=(e,t="always",r=".")=>{let n=e.header?.indexOf(":")||0;if(n>0&&n===e.header.length-1)return[!0];let a=e.header,o=t==="never",l=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(l=!1),[o?!l:l,Jf(["subject",o?"may not":"must","end with full stop"])]};var dli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[HZ(n,r),`subject must not be longer than ${r} characters`]:[!0]};var pli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[aO(n,r),`subject must not be shorter than ${r} characters`]:[!0]};var fli=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let n=t==="never",a=/!:/.test(r);return[n?!a:a,Jf(["subject",n?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as bwa}from"child_process";var Ili=(e,t="always",r="")=>{let n=bwa("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=P8(n.toString()).filter(A=>A.startsWith(r)).length,o=t==="never",l=a>0;return[o?!l:l,Jf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var u2r=e=>e==="never",hli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return u2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[u2r(t)?!o:o,Jf(["type must",u2r(t)?"not":null,`be ${l}`])]};var mli=(e,t="always")=>{let r=t==="never",n=HX(e.type||"");return[r?n:!n,Jf(["type",r?"may not":"must","be empty"])]};var Cli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=t==="never",o=RQe(n,r);return[a?!o:o,Jf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var _li=(e,t=void 0,r=0)=>{let n=e.type;return n?[HZ(n,r),`type must not be longer than ${r} characters`]:[!0]};var yli=(e,t=void 0,r=0)=>{let n=e.type;return n?[aO(n,r),`type must not be shorter than ${r} characters`]:[!0]};var bli={"body-case":Wci,"body-empty":Oci,"body-full-stop":Mci,"body-leading-blank":Hci,"body-max-length":Yci,"body-max-line-length":Qci,"body-min-length":Xci,"footer-empty":Jci,"footer-leading-blank":Uci,"footer-max-length":Kci,"footer-max-line-length":jci,"footer-min-length":zci,"header-case":qci,"header-full-stop":$ci,"header-max-length":eli,"header-min-length":tli,"header-trim":rli,"references-empty":nli,"scope-case":ili,"scope-empty":sli,"scope-enum":oli,"scope-max-length":ali,"scope-min-length":cli,"signed-off-by":lli,"subject-case":uli,"subject-empty":gli,"subject-full-stop":Ali,"subject-max-length":dli,"subject-min-length":pli,"subject-exclamation-mark":fli,"trailer-exists":Ili,"type-case":hli,"type-empty":mli,"type-enum":Cli,"type-max-length":_li,"type-min-length":yli};var ITe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(ITe||(ITe={}));var Eli;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(Eli||(Eli={}));var Sli=({header:e,body:t,footer:r})=>{let n=e;return n=t?`${n} ${t}`:n,n=r?`${n} -${r}`:n,n||""};async function a2r(e,t,r){let n=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(hCt(e,{defaults:n.defaultIgnores,ignores:n.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await Boi(e,void 0,n.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let l=new Map(Object.entries(fli));n.plugins&&Object.values(n.plugins).forEach(B=>{B.rules&&Object.keys(B.rules).forEach(F=>l.set(F,B.rules[F]))});let A=Object.keys(a).filter(B=>typeof l.get(B)!="function");if(A.length>0){let B=[...l.keys()];throw new RangeError([`Found rules without implementation: ${A.join(", ")}.`,`Supported rules are: ${B.join(", ")}.`].join(` -`))}let f=Object.entries(a).map(([B,F])=>{if(!Array.isArray(F))return new Error(`config for rule ${B} must be array, received ${ITe.inspect(F)} of type ${typeof F}`);let[Q]=F;if(Q===fTe.Disabled&&F.length===1)return null;let[,X]=F;return typeof Q!="number"||isNaN(Q)?new Error(`level for rule ${B} must be number, received ${ITe.inspect(Q)} of type ${typeof Q}`):F.length<2||F.length>3?new Error(`config for rule ${B} must be 2 or 3 items long, received ${ITe.inspect(F)} of length ${F.length}`):Q<0||Q>2?new RangeError(`level for rule ${B} must be between 0 and 2, received ${ITe.inspect(Q)}`):typeof X!="string"?new Error(`condition for rule ${B} must be string, received ${ITe.inspect(X)} of type ${typeof X}`):X!=="never"&&X!=="always"?new Error(`condition for rule ${B} must be "always" or "never", received ${ITe.inspect(X)}`):null}).filter(B=>B instanceof Error);if(f.length>0)throw new Error(f.map(B=>B.message).join(` -`));let I=Object.entries(a).filter(([,B])=>!!B&&B.length&&B[0]>0).map(async B=>{let[F,Q]=B,[X,ae,ne]=Q,ce=l.get(F);if(!ce)throw new Error(`Could not find rule implementation for ${F}`);let fe=ce,[ue,de]=await fe(o,ae,ne);return{level:X,valid:ue,name:F,message:de}}),C=(await Promise.all(I)).filter(B=>B!==null),b=C.filter(B=>B.level===fTe.Error&&!B.valid),E=C.filter(B=>B.level===fTe.Warning&&!B.valid);return{valid:b.length===0,errors:b,warnings:E,input:hli(o)}}var c2r={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},RQe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var mli={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(RQe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var awa={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},cwa={parserOpts:awa},vCt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(mli);return a2r(t,r,cwa)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return toi(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let n=["common","github",...r];return t["scope-enum"]=[pCt.Error,"always",n],t}};var BCt=class extends Cli.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await _li.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await yli.Project.find(t,this.context.cwd),n=new Set(r.map(({manifest:I})=>I.name?.name??"")),a=new Set(r.map(({manifest:I})=>I.name?.scope??"")),o=new vCt({scopes:Array.from(a),workspaceNames:Array.from(n)}),l=await dCt({edit:!0}),A=await Promise.all(l.map(async I=>o.lint(I))),f=o.format({results:A});return f!==""&&this.context.stdout.write(f),A.some(I=>!I.valid)?1:0}};var ugi=Nt(el(),1),ggi=Nt(ro(),1),Agi=Nt(wli(),1);$c();var dgi=Nt(Nli(),1),pgi=Nt(Al(),1),fgi=Nt(Ec(),1),Igi=Nt(Ec(),1),$Ct=Nt(kli(),1);var cgi=Nt(Ec(),1),Bae=Nt(Ec(),1);var BTe=Nt(Al(),1),vTe=Nt(Al(),1),Yui=Nt(Ec(),1),G2r=Nt(Wui(),1);import Oui from"node:process";function D2r(){let{env:e}=Oui,{TERM:t,TERM_PROGRAM:r}=e;return Oui.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Mui={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},Hui={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},yRa={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},bRa={...Mui,...Hui},ERa={...Mui,...yRa},SRa=D2r(),vRa=SRa?bRa:ERa,kI=vRa,Ehu=Object.entries(Hui);var k2r=Nt(Al(),1),x2r=Nt(Al(),1),ETe=Nt(Pc(),1),STe=({label:e,value:t})=>(0,ETe.jsxs)(x2r.Box,{children:[(0,ETe.jsx)(x2r.Box,{width:12,children:(0,ETe.jsx)(k2r.Text,{bold:!0,color:"#d7875f",children:t})}),(0,ETe.jsx)(k2r.Text,{children:e})]});var cO=Nt(Pc(),1),BRa=G2r.default.default||G2r.default,wRa=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],TRa=({isSelected:e=!1})=>(0,cO.jsx)(vTe.Box,{marginRight:1,children:e?(0,cO.jsx)(BTe.Text,{children:kI.circleFilled}):(0,cO.jsx)(BTe.Text,{children:" "})}),RRa=({isHighlighted:e=!1})=>(0,cO.jsx)(vTe.Box,{marginRight:1,children:e?(0,cO.jsx)(BTe.Text,{color:"cyanBright",children:kI.pointer}):(0,cO.jsx)(BTe.Text,{children:" "})}),Qui=({onSubmit:e})=>{let t=(0,Yui.useCallback)(r=>{e(r.reduce((n,a)=>({...n,[a.value]:!0}),{}))},[e]);return(0,cO.jsxs)(vTe.Box,{flexDirection:"column",children:[(0,cO.jsx)(vTe.Box,{children:(0,cO.jsx)(BTe.Text,{bold:!0,color:"cyanBright",children:"Please select additional actions:"})}),(0,cO.jsx)(vTe.Box,{children:(0,cO.jsx)(BRa,{items:wRa,indicatorComponent:RRa,itemComponent:STe,checkboxComponent:TRa,onSubmit:t})})]})};var F2r=Nt(Al(),1),wTe=Nt(Al(),1);var Sae=Nt(Ec(),1),XCt=Nt(Al(),1);function Xui({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A}){let[f,I]=(0,Sae.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:C,cursorWidth:b}=f;(0,Sae.useEffect)(()=>{I(Q=>{if(!r||!o)return Q;let X=e||"";return Q.cursorOffset>X.length-1?{cursorOffset:X.length,cursorWidth:0}:Q})},[e,r,o]);let E=a?b:0,N=n?n.repeat(e.length):e,B=N,F=t?fp.grey(t):void 0;if(o&&r){F=t.length>0?fp.inverse(t[0])+fp.grey(t.slice(1)):fp.inverse(" "),B=N.length>0?"":fp.inverse(" ");let Q=0;for(let X of N)B+=Q>=C-E&&Q<=C?fp.inverse(X):X,Q++;N.length>0&&C===N.length&&(B+=fp.inverse(" "))}return(0,XCt.useInput)((Q,X)=>{if(X.upArrow||X.downArrow||X.ctrl&&Q==="c"||X.tab||X.shift&&X.tab)return;if(X.return){A&&A(e);return}let ae=C,ne=e,ce=0;X.leftArrow?o&&ae--:X.rightArrow?o&&ae++:X.backspace||X.delete?C>0&&(ne=e.slice(0,C-1)+e.slice(C,e.length),ae--):(ne=e.slice(0,C)+Q+e.slice(C,e.length),ae+=Q.length,Q.length>1&&(ce=Q.length)),C<0&&(ae=0),C>e.length&&(ae=e.length),I({cursorOffset:ae,cursorWidth:ce}),ne!==e&&l(ne)},{isActive:r}),Sae.default.createElement(XCt.Text,null,t?N.length>0?B:F:B)}var JCt=Xui;function O8({initialValue:e="",...t}){let[r,n]=(0,Sae.useState)(e);return Sae.default.createElement(Xui,{...t,value:r,onChange:n})}var M8=Nt(Pc(),1),Jui=({onSubmit:e})=>(0,M8.jsxs)(wTe.Box,{flexDirection:"column",children:[(0,M8.jsx)(wTe.Box,{children:(0,M8.jsx)(F2r.Text,{bold:!0,color:"cyanBright",children:"Please give a long description:"})}),(0,M8.jsxs)(wTe.Box,{children:[(0,M8.jsx)(wTe.Box,{marginRight:1,children:(0,M8.jsx)(F2r.Text,{color:"gray",children:"\u2192"})}),(0,M8.jsx)(wTe.Box,{children:(0,M8.jsx)(O8,{onSubmit:e})})]})]});var Z2r=Nt(Al(),1),TTe=Nt(Al(),1);var H8=Nt(Pc(),1),Uui=({onSubmit:e})=>(0,H8.jsxs)(TTe.Box,{flexDirection:"column",children:[(0,H8.jsx)(TTe.Box,{children:(0,H8.jsx)(Z2r.Text,{bold:!0,color:"cyanBright",children:"Describe the breaking changes:"})}),(0,H8.jsxs)(TTe.Box,{children:[(0,H8.jsx)(TTe.Box,{marginRight:1,children:(0,H8.jsx)(Z2r.Text,{color:"gray",children:"\u2192"})}),(0,H8.jsx)(TTe.Box,{children:(0,H8.jsx)(O8,{onSubmit:e})})]})]});var L2r=Nt(Al(),1),RTe=Nt(Al(),1);var Y8=Nt(Pc(),1),Kui=({onSubmit:e})=>(0,Y8.jsxs)(RTe.Box,{flexDirection:"column",children:[(0,Y8.jsx)(RTe.Box,{children:(0,Y8.jsx)(L2r.Text,{bold:!0,color:"cyanBright",children:'Add issue references (e.g. "fix #123, re #124".):'})}),(0,Y8.jsxs)(RTe.Box,{children:[(0,Y8.jsx)(RTe.Box,{marginRight:1,children:(0,Y8.jsx)(L2r.Text,{color:"gray",children:kI.arrowRight})}),(0,Y8.jsx)(RTe.Box,{children:(0,Y8.jsx)(O8,{onSubmit:e})})]})]});var zCt=Nt(Al(),1),$$=Nt(Al(),1);var O2r=Nt(Ec(),1),M2r=Nt(Ec(),1),tgi=Nt(Ec(),1);var UCt=Nt(Ec(),1),LQe=Nt(Al(),1);function NRa({isSelected:e=!1}){return UCt.default.createElement(LQe.Box,{marginRight:1},e?UCt.default.createElement(LQe.Text,{color:"blue"},kI.pointer):UCt.default.createElement(LQe.Text,null," "))}var V2r=NRa;var jui=Nt(Ec(),1),zui=Nt(Al(),1);function DRa({isSelected:e=!1,label:t}){return jui.createElement(zui.Text,{color:e?"blue":void 0},t)}var P2r=DRa;var oV=Nt(Ec(),1),qui=Nt(b2r(),1);function NTe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let n=(t%r+r)%r;return n===0?[...e]:[...e.slice(-n),...e.slice(0,-n)]}var VQe=Nt(Al(),1);function kRa({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:n=V2r,itemComponent:a=P2r,limit:o,onSelect:l,onHighlight:A}){let f=typeof o=="number"&&e.length>o,I=f?Math.min(o,e.length):e.length,C=I-1,[b,E]=(0,oV.useState)(r>C?C-r:0),[N,B]=(0,oV.useState)(r?r>C?C:r:0),F=(0,oV.useRef)(e);(0,oV.useEffect)(()=>{(0,qui.default)(F.current.map(X=>X.value),e.map(X=>X.value))||(E(0),B(0)),F.current=e},[e]),(0,VQe.useInput)((0,oV.useCallback)((X,ae)=>{if(X==="k"||ae.upArrow){let ne=(f?I:e.length)-1,ce=N===0,fe=f?N:ne,ue=ce?b+1:b,de=ce?fe:N-1;E(ue),B(de);let be=f?NTe(e,ue).slice(0,I):e;typeof A=="function"&&A(be[de])}if(X==="j"||ae.downArrow){let ne=N===(f?I:e.length)-1,ce=f?N:0,fe=ne?b-1:b,ue=ne?ce:N+1;E(fe),B(ue);let de=f?NTe(e,fe).slice(0,I):e;typeof A=="function"&&A(de[ue])}if(ae.return){let ne=f?NTe(e,b).slice(0,I):e;typeof l=="function"&&l(ne[N])}},[f,I,b,N,e,l,A]),{isActive:t});let Q=f?NTe(e,b).slice(0,I):e;return oV.default.createElement(VQe.Box,{flexDirection:"column"},Q.map((X,ae)=>{let ne=ae===N;return oV.default.createElement(VQe.Box,{key:X.key??X.value},oV.default.createElement(n,{isSelected:ne}),oV.default.createElement(a,{...X,isSelected:ne}))}))}var PQe=kRa;var W2r=Nt(Al(),1),$ui=Nt(Al(),1);var KCt=Nt(Pc(),1),jCt=({isSelected:e=!1})=>(0,KCt.jsx)($ui.Box,{marginRight:1,children:e?(0,KCt.jsx)(W2r.Text,{color:"cyanBright",children:kI.pointer}):(0,KCt.jsx)(W2r.Text,{children:" "})});var vG=Nt(Pc(),1),egi=Object.keys(c2r).map(e=>({label:c2r[e].description,value:e})),rgi=({onSubmit:e})=>{let[t,r]=(0,O2r.useState)(!1),[n,a]=(0,O2r.useState)(""),o=(0,M2r.useMemo)(()=>n.length>0?egi.filter(f=>f.label.toLowerCase().includes(n.toLowerCase())):egi,[n]),l=(0,M2r.useMemo)(()=>o.length>0,[o]),A=(0,tgi.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?(0,vG.jsxs)($$.Box,{flexDirection:"column",children:[(0,vG.jsx)($$.Box,{children:(0,vG.jsx)(zCt.Text,{bold:!0,color:"cyanBright",children:"Please state the scope of the change:"})}),(0,vG.jsxs)($$.Box,{children:[(0,vG.jsx)($$.Box,{marginRight:1,children:(0,vG.jsx)(zCt.Text,{color:"gray",children:"\u2192"})}),(0,vG.jsx)($$.Box,{children:(0,vG.jsx)(O8,{onSubmit:e})})]})]}):(0,vG.jsxs)($$.Box,{flexDirection:"column",children:[(0,vG.jsxs)($$.Box,{children:[(0,vG.jsx)($$.Box,{marginRight:1,children:(0,vG.jsx)(zCt.Text,{bold:!0,color:"cyanBright",children:"Type of scope:"})}),(0,vG.jsx)(JCt,{value:n,onChange:a})]}),!!l&&(0,vG.jsx)(PQe,{items:o,indicatorComponent:jCt,itemComponent:STe,onSelect:A})]})};var H2r=Nt(Al(),1),DTe=Nt(Al(),1);var Q8=Nt(Pc(),1),ngi=({onSubmit:e})=>(0,Q8.jsxs)(DTe.Box,{flexDirection:"column",children:[(0,Q8.jsx)(DTe.Box,{children:(0,Q8.jsx)(H2r.Text,{bold:!0,color:"cyanBright",children:"Write a short description (max 93) chars):"})}),(0,Q8.jsxs)(DTe.Box,{children:[(0,Q8.jsx)(DTe.Box,{marginRight:1,children:(0,Q8.jsx)(H2r.Text,{color:"gray",children:"\u2192"})}),(0,Q8.jsx)(DTe.Box,{children:(0,Q8.jsx)(O8,{onSubmit:e})})]})]});var sgi=Nt(Al(),1),qCt=Nt(Al(),1),ogi=Nt(Ec(),1),Y2r=Nt(Ec(),1);var vae=Nt(Pc(),1),igi=Object.keys(RQe).map(e=>({label:RQe[e].description,value:e})),agi=({onSubmit:e})=>{let[t,r]=(0,ogi.useState)(""),n=(0,Y2r.useMemo)(()=>t.length>0?igi.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):igi,[t]),a=(0,Y2r.useMemo)(()=>n.length>0,[n]);return(0,vae.jsxs)(qCt.Box,{flexDirection:"column",children:[(0,vae.jsxs)(qCt.Box,{children:[(0,vae.jsx)(qCt.Box,{marginRight:1,children:(0,vae.jsx)(sgi.Text,{bold:!0,color:"cyanBright",children:"Type of commit:"})}),(0,vae.jsx)(JCt,{value:t,onChange:r})]}),!!a&&(0,vae.jsx)(PQe,{items:n,indicatorComponent:jCt,itemComponent:STe,onSelect:o=>{e(o.value)}})]})};var eee=Nt(Pc(),1),xRa=({onSubmit:e,...t})=>((0,cgi.useEffect)(()=>{e(t)},[t,e]),null),lgi=({onSubmit:e})=>{let[t,r]=(0,Bae.useState)(),[n,a]=(0,Bae.useState)(),[o,l]=(0,Bae.useState)(),[A,f]=(0,Bae.useState)(),[I,C]=(0,Bae.useState)(),[b,E]=(0,Bae.useState)(),[N,B]=(0,Bae.useState)();return t?o?N?N.scope&&!n?(0,eee.jsx)(rgi,{onSubmit:a}):N.issues&&!A?(0,eee.jsx)(Kui,{onSubmit:f}):N.body&&!I?(0,eee.jsx)(Jui,{onSubmit:C}):N.breaking&&!b?(0,eee.jsx)(Uui,{onSubmit:E}):(0,eee.jsx)(xRa,{type:t,scope:n,subject:o,issues:A,body:I,breaking:b,skipci:N.skipci,onSubmit:e}):(0,eee.jsx)(Qui,{onSubmit:B}):(0,eee.jsx)(ngi,{onSubmit:l}):(0,eee.jsx)(agi,{onSubmit:r})};var Q2r=Nt(Pc(),1),GRa=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,pgi.useStdin)();return t(e),(0,fgi.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},FRa=({useSubmit:e})=>{let[t,r]=(0,Igi.useState)();return t?(0,Q2r.jsx)(GRa,{commit:t,useSubmit:e}):(0,Q2r.jsx)(lgi,{onSubmit:r})},e_t=class extends ugi.BaseCommand{static paths=[["commit","message"]];args=Su.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let n=(0,dgi.forceStdinTty)(),a=await(0,Agi.renderForm)(FRa,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await ggi.xfs.writeFilePromise(t,this.formatCommit(a)),n&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` -`,indent:"",width:100},n=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(n+=" [skip ci]");let a=t.body?(0,$Ct.default)(t.body,r):!1,o=t.breaking?(0,$Ct.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,l=t.issues?(0,$Ct.default)(t.issues,r):!1;return[n,a,o,l].filter(Boolean).join(` +${r}`:n,n||""};async function g2r(e,t,r){let n=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(CCt(e,{defaults:n.defaultIgnores,ignores:n.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await xoi(e,void 0,n.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let l=new Map(Object.entries(bli));n.plugins&&Object.values(n.plugins).forEach(B=>{B.rules&&Object.keys(B.rules).forEach(F=>l.set(F,B.rules[F]))});let A=Object.keys(a).filter(B=>typeof l.get(B)!="function");if(A.length>0){let B=[...l.keys()];throw new RangeError([`Found rules without implementation: ${A.join(", ")}.`,`Supported rules are: ${B.join(", ")}.`].join(` +`))}let f=Object.entries(a).map(([B,F])=>{if(!Array.isArray(F))return new Error(`config for rule ${B} must be array, received ${hTe.inspect(F)} of type ${typeof F}`);let[Q]=F;if(Q===ITe.Disabled&&F.length===1)return null;let[,X]=F;return typeof Q!="number"||isNaN(Q)?new Error(`level for rule ${B} must be number, received ${hTe.inspect(Q)} of type ${typeof Q}`):F.length<2||F.length>3?new Error(`config for rule ${B} must be 2 or 3 items long, received ${hTe.inspect(F)} of length ${F.length}`):Q<0||Q>2?new RangeError(`level for rule ${B} must be between 0 and 2, received ${hTe.inspect(Q)}`):typeof X!="string"?new Error(`condition for rule ${B} must be string, received ${hTe.inspect(X)} of type ${typeof X}`):X!=="never"&&X!=="always"?new Error(`condition for rule ${B} must be "always" or "never", received ${hTe.inspect(X)}`):null}).filter(B=>B instanceof Error);if(f.length>0)throw new Error(f.map(B=>B.message).join(` +`));let I=Object.entries(a).filter(([,B])=>!!B&&B.length&&B[0]>0).map(async B=>{let[F,Q]=B,[X,ae,ne]=Q,ce=l.get(F);if(!ce)throw new Error(`Could not find rule implementation for ${F}`);let fe=ce,[ue,de]=await fe(o,ae,ne);return{level:X,valid:ue,name:F,message:de}}),C=(await Promise.all(I)).filter(B=>B!==null),b=C.filter(B=>B.level===ITe.Error&&!B.valid),E=C.filter(B=>B.level===ITe.Warning&&!B.valid);return{valid:b.length===0,errors:b,warnings:E,input:Sli(o)}}var A2r={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},DQe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var vli={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(DQe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var Ewa={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},Swa={parserOpts:Ewa},wCt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(vli);return g2r(t,r,Swa)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return coi(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let n=["common","github",...r];return t["scope-enum"]=[ICt.Error,"always",n],t}};var TCt=class extends Bli.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await wli.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await Tli.Project.find(t,this.context.cwd),n=new Set(r.map(({manifest:I})=>I.name?.name??"")),a=new Set(r.map(({manifest:I})=>I.name?.scope??"")),o=new wCt({scopes:Array.from(a),workspaceNames:Array.from(n)}),l=await fCt({edit:!0}),A=await Promise.all(l.map(async I=>o.lint(I))),f=o.format({results:A});return f!==""&&this.context.stdout.write(f),A.some(I=>!I.valid)?1:0}};var hgi=Nt(el(),1),mgi=Nt(zs(),1),Cgi=Nt(Gli(),1);$c();var _gi=Nt(Lli(),1),ygi=Nt(Al(),1),bgi=Nt(Ec(),1),Egi=Nt(Ec(),1),t_t=Nt(Pli(),1);var fgi=Nt(Ec(),1),wae=Nt(Ec(),1);var wTe=Nt(Al(),1),BTe=Nt(Al(),1),zui=Nt(Ec(),1),V2r=Nt(Jui(),1);import Uui from"node:process";function F2r(){let{env:e}=Uui,{TERM:t,TERM_PROGRAM:r}=e;return Uui.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Kui={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},jui={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},LRa={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},VRa={...Kui,...jui},PRa={...Kui,...LRa},WRa=F2r(),ORa=WRa?VRa:PRa,kI=ORa,fmu=Object.entries(jui);var Z2r=Nt(Al(),1),L2r=Nt(Al(),1),STe=Nt(Pc(),1),vTe=({label:e,value:t})=>(0,STe.jsxs)(L2r.Box,{children:[(0,STe.jsx)(L2r.Box,{width:12,children:(0,STe.jsx)(Z2r.Text,{bold:!0,color:"#d7875f",children:t})}),(0,STe.jsx)(Z2r.Text,{children:e})]});var cO=Nt(Pc(),1),MRa=V2r.default.default||V2r.default,HRa=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],YRa=({isSelected:e=!1})=>(0,cO.jsx)(BTe.Box,{marginRight:1,children:e?(0,cO.jsx)(wTe.Text,{children:kI.circleFilled}):(0,cO.jsx)(wTe.Text,{children:" "})}),QRa=({isHighlighted:e=!1})=>(0,cO.jsx)(BTe.Box,{marginRight:1,children:e?(0,cO.jsx)(wTe.Text,{color:"cyanBright",children:kI.pointer}):(0,cO.jsx)(wTe.Text,{children:" "})}),qui=({onSubmit:e})=>{let t=(0,zui.useCallback)(r=>{e(r.reduce((n,a)=>({...n,[a.value]:!0}),{}))},[e]);return(0,cO.jsxs)(BTe.Box,{flexDirection:"column",children:[(0,cO.jsx)(BTe.Box,{children:(0,cO.jsx)(wTe.Text,{bold:!0,color:"cyanBright",children:"Please select additional actions:"})}),(0,cO.jsx)(BTe.Box,{children:(0,cO.jsx)(MRa,{items:HRa,indicatorComponent:QRa,itemComponent:vTe,checkboxComponent:YRa,onSubmit:t})})]})};var P2r=Nt(Al(),1),TTe=Nt(Al(),1);var vae=Nt(Ec(),1),UCt=Nt(Al(),1);function $ui({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A}){let[f,I]=(0,vae.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:C,cursorWidth:b}=f;(0,vae.useEffect)(()=>{I(Q=>{if(!r||!o)return Q;let X=e||"";return Q.cursorOffset>X.length-1?{cursorOffset:X.length,cursorWidth:0}:Q})},[e,r,o]);let E=a?b:0,N=n?n.repeat(e.length):e,B=N,F=t?fp.grey(t):void 0;if(o&&r){F=t.length>0?fp.inverse(t[0])+fp.grey(t.slice(1)):fp.inverse(" "),B=N.length>0?"":fp.inverse(" ");let Q=0;for(let X of N)B+=Q>=C-E&&Q<=C?fp.inverse(X):X,Q++;N.length>0&&C===N.length&&(B+=fp.inverse(" "))}return(0,UCt.useInput)((Q,X)=>{if(X.upArrow||X.downArrow||X.ctrl&&Q==="c"||X.tab||X.shift&&X.tab)return;if(X.return){A&&A(e);return}let ae=C,ne=e,ce=0;X.leftArrow?o&&ae--:X.rightArrow?o&&ae++:X.backspace||X.delete?C>0&&(ne=e.slice(0,C-1)+e.slice(C,e.length),ae--):(ne=e.slice(0,C)+Q+e.slice(C,e.length),ae+=Q.length,Q.length>1&&(ce=Q.length)),C<0&&(ae=0),C>e.length&&(ae=e.length),I({cursorOffset:ae,cursorWidth:ce}),ne!==e&&l(ne)},{isActive:r}),vae.default.createElement(UCt.Text,null,t?N.length>0?B:F:B)}var KCt=$ui;function O8({initialValue:e="",...t}){let[r,n]=(0,vae.useState)(e);return vae.default.createElement($ui,{...t,value:r,onChange:n})}var M8=Nt(Pc(),1),egi=({onSubmit:e})=>(0,M8.jsxs)(TTe.Box,{flexDirection:"column",children:[(0,M8.jsx)(TTe.Box,{children:(0,M8.jsx)(P2r.Text,{bold:!0,color:"cyanBright",children:"Please give a long description:"})}),(0,M8.jsxs)(TTe.Box,{children:[(0,M8.jsx)(TTe.Box,{marginRight:1,children:(0,M8.jsx)(P2r.Text,{color:"gray",children:"\u2192"})}),(0,M8.jsx)(TTe.Box,{children:(0,M8.jsx)(O8,{onSubmit:e})})]})]});var W2r=Nt(Al(),1),RTe=Nt(Al(),1);var H8=Nt(Pc(),1),tgi=({onSubmit:e})=>(0,H8.jsxs)(RTe.Box,{flexDirection:"column",children:[(0,H8.jsx)(RTe.Box,{children:(0,H8.jsx)(W2r.Text,{bold:!0,color:"cyanBright",children:"Describe the breaking changes:"})}),(0,H8.jsxs)(RTe.Box,{children:[(0,H8.jsx)(RTe.Box,{marginRight:1,children:(0,H8.jsx)(W2r.Text,{color:"gray",children:"\u2192"})}),(0,H8.jsx)(RTe.Box,{children:(0,H8.jsx)(O8,{onSubmit:e})})]})]});var O2r=Nt(Al(),1),NTe=Nt(Al(),1);var Y8=Nt(Pc(),1),rgi=({onSubmit:e})=>(0,Y8.jsxs)(NTe.Box,{flexDirection:"column",children:[(0,Y8.jsx)(NTe.Box,{children:(0,Y8.jsx)(O2r.Text,{bold:!0,color:"cyanBright",children:'Add issue references (e.g. "fix #123, re #124".):'})}),(0,Y8.jsxs)(NTe.Box,{children:[(0,Y8.jsx)(NTe.Box,{marginRight:1,children:(0,Y8.jsx)(O2r.Text,{color:"gray",children:kI.arrowRight})}),(0,Y8.jsx)(NTe.Box,{children:(0,Y8.jsx)(O8,{onSubmit:e})})]})]});var $Ct=Nt(Al(),1),$$=Nt(Al(),1);var Q2r=Nt(Ec(),1),X2r=Nt(Ec(),1),cgi=Nt(Ec(),1);var jCt=Nt(Ec(),1),PQe=Nt(Al(),1);function XRa({isSelected:e=!1}){return jCt.default.createElement(PQe.Box,{marginRight:1},e?jCt.default.createElement(PQe.Text,{color:"blue"},kI.pointer):jCt.default.createElement(PQe.Text,null," "))}var M2r=XRa;var ngi=Nt(Ec(),1),igi=Nt(Al(),1);function JRa({isSelected:e=!1,label:t}){return ngi.createElement(igi.Text,{color:e?"blue":void 0},t)}var H2r=JRa;var oV=Nt(Ec(),1),sgi=Nt(B2r(),1);function DTe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let n=(t%r+r)%r;return n===0?[...e]:[...e.slice(-n),...e.slice(0,-n)]}var WQe=Nt(Al(),1);function URa({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:n=M2r,itemComponent:a=H2r,limit:o,onSelect:l,onHighlight:A}){let f=typeof o=="number"&&e.length>o,I=f?Math.min(o,e.length):e.length,C=I-1,[b,E]=(0,oV.useState)(r>C?C-r:0),[N,B]=(0,oV.useState)(r?r>C?C:r:0),F=(0,oV.useRef)(e);(0,oV.useEffect)(()=>{(0,sgi.default)(F.current.map(X=>X.value),e.map(X=>X.value))||(E(0),B(0)),F.current=e},[e]),(0,WQe.useInput)((0,oV.useCallback)((X,ae)=>{if(X==="k"||ae.upArrow){let ne=(f?I:e.length)-1,ce=N===0,fe=f?N:ne,ue=ce?b+1:b,de=ce?fe:N-1;E(ue),B(de);let be=f?DTe(e,ue).slice(0,I):e;typeof A=="function"&&A(be[de])}if(X==="j"||ae.downArrow){let ne=N===(f?I:e.length)-1,ce=f?N:0,fe=ne?b-1:b,ue=ne?ce:N+1;E(fe),B(ue);let de=f?DTe(e,fe).slice(0,I):e;typeof A=="function"&&A(de[ue])}if(ae.return){let ne=f?DTe(e,b).slice(0,I):e;typeof l=="function"&&l(ne[N])}},[f,I,b,N,e,l,A]),{isActive:t});let Q=f?DTe(e,b).slice(0,I):e;return oV.default.createElement(WQe.Box,{flexDirection:"column"},Q.map((X,ae)=>{let ne=ae===N;return oV.default.createElement(WQe.Box,{key:X.key??X.value},oV.default.createElement(n,{isSelected:ne}),oV.default.createElement(a,{...X,isSelected:ne}))}))}var OQe=URa;var Y2r=Nt(Al(),1),ogi=Nt(Al(),1);var zCt=Nt(Pc(),1),qCt=({isSelected:e=!1})=>(0,zCt.jsx)(ogi.Box,{marginRight:1,children:e?(0,zCt.jsx)(Y2r.Text,{color:"cyanBright",children:kI.pointer}):(0,zCt.jsx)(Y2r.Text,{children:" "})});var vG=Nt(Pc(),1),agi=Object.keys(A2r).map(e=>({label:A2r[e].description,value:e})),lgi=({onSubmit:e})=>{let[t,r]=(0,Q2r.useState)(!1),[n,a]=(0,Q2r.useState)(""),o=(0,X2r.useMemo)(()=>n.length>0?agi.filter(f=>f.label.toLowerCase().includes(n.toLowerCase())):agi,[n]),l=(0,X2r.useMemo)(()=>o.length>0,[o]),A=(0,cgi.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?(0,vG.jsxs)($$.Box,{flexDirection:"column",children:[(0,vG.jsx)($$.Box,{children:(0,vG.jsx)($Ct.Text,{bold:!0,color:"cyanBright",children:"Please state the scope of the change:"})}),(0,vG.jsxs)($$.Box,{children:[(0,vG.jsx)($$.Box,{marginRight:1,children:(0,vG.jsx)($Ct.Text,{color:"gray",children:"\u2192"})}),(0,vG.jsx)($$.Box,{children:(0,vG.jsx)(O8,{onSubmit:e})})]})]}):(0,vG.jsxs)($$.Box,{flexDirection:"column",children:[(0,vG.jsxs)($$.Box,{children:[(0,vG.jsx)($$.Box,{marginRight:1,children:(0,vG.jsx)($Ct.Text,{bold:!0,color:"cyanBright",children:"Type of scope:"})}),(0,vG.jsx)(KCt,{value:n,onChange:a})]}),!!l&&(0,vG.jsx)(OQe,{items:o,indicatorComponent:qCt,itemComponent:vTe,onSelect:A})]})};var J2r=Nt(Al(),1),kTe=Nt(Al(),1);var Q8=Nt(Pc(),1),ugi=({onSubmit:e})=>(0,Q8.jsxs)(kTe.Box,{flexDirection:"column",children:[(0,Q8.jsx)(kTe.Box,{children:(0,Q8.jsx)(J2r.Text,{bold:!0,color:"cyanBright",children:"Write a short description (max 93) chars):"})}),(0,Q8.jsxs)(kTe.Box,{children:[(0,Q8.jsx)(kTe.Box,{marginRight:1,children:(0,Q8.jsx)(J2r.Text,{color:"gray",children:"\u2192"})}),(0,Q8.jsx)(kTe.Box,{children:(0,Q8.jsx)(O8,{onSubmit:e})})]})]});var Agi=Nt(Al(),1),e_t=Nt(Al(),1),dgi=Nt(Ec(),1),U2r=Nt(Ec(),1);var Bae=Nt(Pc(),1),ggi=Object.keys(DQe).map(e=>({label:DQe[e].description,value:e})),pgi=({onSubmit:e})=>{let[t,r]=(0,dgi.useState)(""),n=(0,U2r.useMemo)(()=>t.length>0?ggi.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):ggi,[t]),a=(0,U2r.useMemo)(()=>n.length>0,[n]);return(0,Bae.jsxs)(e_t.Box,{flexDirection:"column",children:[(0,Bae.jsxs)(e_t.Box,{children:[(0,Bae.jsx)(e_t.Box,{marginRight:1,children:(0,Bae.jsx)(Agi.Text,{bold:!0,color:"cyanBright",children:"Type of commit:"})}),(0,Bae.jsx)(KCt,{value:t,onChange:r})]}),!!a&&(0,Bae.jsx)(OQe,{items:n,indicatorComponent:qCt,itemComponent:vTe,onSelect:o=>{e(o.value)}})]})};var eee=Nt(Pc(),1),KRa=({onSubmit:e,...t})=>((0,fgi.useEffect)(()=>{e(t)},[t,e]),null),Igi=({onSubmit:e})=>{let[t,r]=(0,wae.useState)(),[n,a]=(0,wae.useState)(),[o,l]=(0,wae.useState)(),[A,f]=(0,wae.useState)(),[I,C]=(0,wae.useState)(),[b,E]=(0,wae.useState)(),[N,B]=(0,wae.useState)();return t?o?N?N.scope&&!n?(0,eee.jsx)(lgi,{onSubmit:a}):N.issues&&!A?(0,eee.jsx)(rgi,{onSubmit:f}):N.body&&!I?(0,eee.jsx)(egi,{onSubmit:C}):N.breaking&&!b?(0,eee.jsx)(tgi,{onSubmit:E}):(0,eee.jsx)(KRa,{type:t,scope:n,subject:o,issues:A,body:I,breaking:b,skipci:N.skipci,onSubmit:e}):(0,eee.jsx)(qui,{onSubmit:B}):(0,eee.jsx)(ugi,{onSubmit:l}):(0,eee.jsx)(pgi,{onSubmit:r})};var K2r=Nt(Pc(),1),jRa=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,ygi.useStdin)();return t(e),(0,bgi.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},zRa=({useSubmit:e})=>{let[t,r]=(0,Egi.useState)();return t?(0,K2r.jsx)(jRa,{commit:t,useSubmit:e}):(0,K2r.jsx)(Igi,{onSubmit:r})},r_t=class extends hgi.BaseCommand{static paths=[["commit","message"]];args=Su.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let n=(0,_gi.forceStdinTty)(),a=await(0,Cgi.renderForm)(zRa,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await mgi.xfs.writeFilePromise(t,this.formatCommit(a)),n&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` +`,indent:"",width:100},n=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(n+=" [skip ci]");let a=t.body?(0,t_t.default)(t.body,r):!1,o=t.breaking?(0,t_t.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,l=t.issues?(0,t_t.default)(t.issues,r):!1;return[n,a,o,l].filter(Boolean).join(` -`)}};var dhi=Nt(el(),1);$c();import{execSync as Ahi}from"node:child_process";var uhi=Nt(uT(),1);var bgi=Nt(uT(),1);var rNa=(0,bgi.default)("lint-staged:execGit"),nNa=["-c","submodule.recurse=false"],iNa=[...nNa],QZ=async(e,t={})=>{rNa("Running git command",e);try{let{stdout:r}=await j$("git",iNa.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as KDa}from"node:util";var vgi=Nt(Sgi(),1);var Bgi=vgi.default;import*as o_t from"tty";var{env:wae={},argv:Tgi=[],platform:aNa=""}=typeof process>"u"?{}:process,cNa="NO_COLOR"in wae||Tgi.includes("--no-color"),lNa="FORCE_COLOR"in wae||Tgi.includes("--color"),uNa=aNa==="win32",Rgi=wae.TERM==="dumb",gNa=o_t&&o_t.isatty&&o_t.isatty(1)&&wae.TERM&&!Rgi,ANa="CI"in wae&&("GITHUB_ACTIONS"in wae||"GITLAB_CI"in wae||"CIRCLECI"in wae),dNa=!cNa&&(lNa||uNa&&!Rgi||gNa||ANa),Ngi=(e,t,r,n,a=t.substring(0,e)+n,o=t.substring(e+r.length),l=o.indexOf(r))=>a+(l<0?o:Ngi(l,o,r,n)),pNa=(e,t,r,n,a)=>e<0?r+t+n:r+Ngi(e,t,n,a)+n,fNa=(e,t,r=e,n=e.length+1)=>a=>a||!(a===""||a===void 0)?pNa((""+a).indexOf(t,n),a,e,t,r):"",Sh=(e,t,r)=>fNa(`\x1B[${e}m`,`\x1B[${t}m`,r),wgi={reset:Sh(0,0),bold:Sh(1,22,"\x1B[22m\x1B[1m"),dim:Sh(2,22,"\x1B[22m\x1B[2m"),italic:Sh(3,23),underline:Sh(4,24),inverse:Sh(7,27),hidden:Sh(8,28),strikethrough:Sh(9,29),black:Sh(30,39),red:Sh(31,39),green:Sh(32,39),yellow:Sh(33,39),blue:Sh(34,39),magenta:Sh(35,39),cyan:Sh(36,39),white:Sh(37,39),gray:Sh(90,39),bgBlack:Sh(40,49),bgRed:Sh(41,49),bgGreen:Sh(42,49),bgYellow:Sh(43,49),bgBlue:Sh(44,49),bgMagenta:Sh(45,49),bgCyan:Sh(46,49),bgWhite:Sh(47,49),blackBright:Sh(90,39),redBright:Sh(91,39),greenBright:Sh(92,39),yellowBright:Sh(93,39),blueBright:Sh(94,39),magentaBright:Sh(95,39),cyanBright:Sh(96,39),whiteBright:Sh(97,39),bgBlackBright:Sh(100,49),bgRedBright:Sh(101,49),bgGreenBright:Sh(102,49),bgYellowBright:Sh(103,49),bgBlueBright:Sh(104,49),bgMagentaBright:Sh(105,49),bgCyanBright:Sh(106,49),bgWhiteBright:Sh(107,49)},j2r=({useColor:e=dNa}={})=>e?wgi:Object.keys(wgi).reduce((t,r)=>({...t,[r]:String}),{}),{reset:Fmu,bold:Zmu,dim:Lmu,italic:Vmu,underline:Pmu,inverse:Wmu,hidden:Omu,strikethrough:Mmu,black:Hmu,red:Ymu,green:Qmu,yellow:Xmu,blue:Jmu,magenta:Umu,cyan:Kmu,white:jmu,gray:zmu,bgBlack:qmu,bgRed:$mu,bgGreen:eCu,bgYellow:tCu,bgBlue:rCu,bgMagenta:nCu,bgCyan:iCu,bgWhite:sCu,blackBright:oCu,redBright:aCu,greenBright:cCu,yellowBright:lCu,blueBright:uCu,magentaBright:gCu,cyanBright:ACu,whiteBright:dCu,bgBlackBright:pCu,bgRedBright:fCu,bgGreenBright:ICu,bgYellowBright:hCu,bgBlueBright:mCu,bgMagentaBright:CCu,bgCyanBright:_Cu,bgWhiteBright:yCu}=j2r();var WAi=Nt(kgi(),1);import{format as DDa}from"util";import{EOL as SAi}from"os";import{StringDecoder as kDa}from"string_decoder";import{EOL as m_t}from"os";import{Writable as xDa}from"stream";import{EOL as C_t}from"os";import{randomUUID as XDa}from"crypto";var wDa=Object.defineProperty,wp=(e,t)=>wDa(e,"name",{value:t,configurable:!0}),bAi="\x1B[",EAi={CURSOR_HIDE:bAi+"?25l",CURSOR_SHOW:bAi+"?25h"};var RAi=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(RAi||{}),NAi=class{static{wp(this,"EventManager")}emitter=new Bgi;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},D_u=class{static{wp(this,"BaseEventMap")}};function DAi(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}wp(DAi,"isObservable");function kAi(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}wp(kAi,"isReadable");function ySr(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}wp(ySr,"isUnicodeSupported");var TDa="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",RDa=/\u0007/;function PTe(e){return String(e).replace(new RegExp(TDa,"gmi"),"").replace(new RegExp(RDa,"gmi"),"").trim()}wp(PTe,"cleanseAnsi");var X0=j2r();function fSr(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}wp(fSr,"indent");var xAi={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},NDa={...xAi,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},sb=ySr()?xAi:NDa;function VTe(e,...t){return DDa(String(e),...t)}wp(VTe,"splat");var __t={icon:{STARTED:sb.pointer,FAILED:sb.cross,SKIPPED:sb.arrowDown,COMPLETED:sb.tick,OUTPUT:sb.pointerSmall,TITLE:sb.arrowRight,RETRY:sb.warning,ROLLBACK:sb.arrowLeft,PAUSED:sb.squareSmallFilled},color:{STARTED:X0.yellow,FAILED:X0.red,SKIPPED:X0.yellow,COMPLETED:X0.green,RETRY:X0.yellowBright,ROLLBACK:X0.redBright,PAUSED:X0.yellowBright}},GAi=["RETRY","ROLLBACK","FAILED"],WTe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new bSr}static{wp(this,"ListrLogger")}process;log(e,t,r){let n=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(n);return}this.process.toStdout(n)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:VTe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(SAi).filter(n=>!n||n.trim()!=="").map(n=>this.style(e,this.fields(n,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(SAi),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},ISr=class{constructor(e){this.options=e}static{wp(this,"ProcessOutputBuffer")}buffer=[];decoder=new kDa;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},vAi=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new ISr({stream:e})}static{wp(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},bSr=class{constructor(e,t,r){this.options=r,this.stream={stdout:new vAi(e??process.stdout),stderr:new vAi(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{wp(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(EAi.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:PTe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(m_t),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+m_t)})),this.stream.stdout.write(EAi.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+m_t),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+m_t),this.stream.stderr.write(e)}};function FAi(e){let t=new xDa;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}wp(FAi,"createWritable");var V_u=class{constructor(e,t){this.task=e,this.wrapper=t}static{wp(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new MAi("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},GDa=class{static{wp(this,"Spinner")}spinner=ySr()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var BAi={icon:{SKIPPED_WITH_COLLAPSE:sb.arrowDown,SKIPPED_WITHOUT_COLLAPSE:sb.warning,OUTPUT:sb.pointerSmall,OUTPUT_WITH_BOTTOMBAR:sb.pointerSmall,PENDING:sb.pointer,COMPLETED:sb.tick,COMPLETED_WITH_FAILED_SUBTASKS:sb.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:sb.squareSmallFilled,RETRY:sb.warning,ROLLING_BACK:sb.warning,ROLLED_BACK:sb.arrowLeft,FAILED:sb.cross,FAILED_WITH_SUBTASKS:sb.pointer,WAITING:sb.squareSmallFilled,PAUSED:sb.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:X0.yellow,SKIPPED_WITHOUT_COLLAPSE:X0.yellow,PENDING:X0.yellow,COMPLETED:X0.green,COMPLETED_WITH_FAILED_SUBTASKS:X0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:X0.red,RETRY:X0.yellowBright,ROLLING_BACK:X0.redBright,ROLLED_BACK:X0.redBright,FAILED:X0.red,FAILED_WITH_SUBTASKS:X0.red,WAITING:X0.dim,PAUSED:X0.yellowBright}};function ZAi(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),n;return t===0&&r===0&&(n=`0.${Math.floor(e/100)}s`),t>0&&(n=`${t%60}s`),r>0&&(n=`${r}m${n}`),n}wp(ZAi,"parseTimer");var ESr={condition:!0,field:ZAi,format:wp(()=>X0.dim,"format")};function FDa(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}wp(FDa,"parseTimestamp");var ZDa=class hSr{constructor(t,r,n){this.tasks=t,this.options=r,this.events=n,this.options={...hSr.rendererOptions,...this.options,icon:{...BAi.icon,...r?.icon??{}},color:{...BAi.color,...r?.color??{}}},this.spinner=this.options.spinner??new GDa,this.logger=this.options.logger??new WTe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{wp(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...ESr,format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(pAi(),dAi)),{default:r}=await Promise.resolve().then(()=>(yAi(),_Ai)),{default:n}=await Promise.resolve().then(()=>(oSr(),cAi));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=n,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],n=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&n.length>0&&r.push(...n),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(C_t)}style(t,r=!1){let n=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||n.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(n.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&n.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,n){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-n*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(C_t).map((l,A)=>this.truncate(this.indent(l,A),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(C_t).map((l,A)=>this.indent(l,A));break;default:throw new wAi("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(l=>fSr(l,n*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(n=>{if(!n.isEnabled())return[];if(this.cache.render.has(n.id))return this.cache.render.get(n.id);this.calculate(n),this.setupBuffer(n);let a=this.cache.rendererOptions.get(n.id),o=this.cache.rendererTaskOptions.get(n.id),l=[];if(n.isPrompt()){if(this.activePrompt&&this.activePrompt!==n.id)throw new wAi("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(n.on("PROMPT",A=>{let f=PTe(A);f&&(this.prompt=f)}),n.on("STATE",A=>{(A==="PROMPT_COMPLETED"||n.hasFinalized()||n.hasReset())&&(this.prompt=null,this.activePrompt=null,n.off("PROMPT"))}),this.activePrompt=n.id)}if(n.hasTitle()&&(t.some(A=>A.hasFailed())&&!n.hasFailed()&&n.options.exitOnError!==!1&&!(n.isCompleted()||n.isSkipped())?l.push(...this.format(n.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):n.hasFailed()&&a.collapseErrors?l.push(...this.format(!n.hasSubtasks()&&n.message.error&&a.showErrorMessage?n.message.error:n.title,this.style(n),r)):n.isSkipped()&&a.collapseSkips?l.push(...this.format(this.logger.suffix(n.message.skip&&a.showSkipMessage?n.message.skip:n.title,{field:"SKIPPED",condition:a.suffixSkips,format:wp(()=>X0.dim,"format")}),this.style(n),r)):n.isRetrying()?l.push(...this.format(this.logger.suffix(n.title,{field:`RETRY:${n.message.retry.count}`,format:wp(()=>X0.yellow,"format"),condition:a.suffixRetries}),this.style(n),r)):n.isCompleted()&&n.hasTitle()&&Lhe(o.timer?.condition,n.message.duration)?l.push(...this.format(this.logger.suffix(n?.title,{...o.timer,args:[n.message.duration]}),this.style(n),r)):n.isPaused()?l.push(...this.format(this.logger.suffix(n.title,{...a.pausedTimer,args:[n.message.paused-Date.now()]}),this.style(n),r)):l.push(...this.format(n.title,this.style(n),r))),(!n.hasSubtasks()||!a.showSubtasks)&&(n.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?l.push(...this.dump(n,r,"FAILED")):n.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&l.push(...this.dump(n,r,"SKIPPED"))),(n.isPending()||o.persistentOutput)&&l.push(...this.renderOutputBar(n,r)),a.showSubtasks!==!1&&n.hasSubtasks()&&(n.isPending()||n.hasFinalized()&&!n.hasTitle()||n.isCompleted()&&a.collapseSubtasks===!1&&!n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!0)||n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!1)||n.subtasks.some(A=>A.hasFailed())||n.subtasks.some(A=>A.hasRolledBack()))){let A=n.hasTitle()?r+1:r,f=this.renderer(n.subtasks,A);l.push(...f)}return n.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(n.id),this.buffer.output.delete(n.id))),n.isClosed()&&(this.cache.render.set(n.id,l),this.reset(n)),l})}renderOutputBar(t,r){let n=this.buffer.output.get(t.id);return n?n.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...hSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new ISr({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",n=>{let a=this.dump(t,-1,"OUTPUT",n);this.buffer.bottom.get(t.id).write(a.join(C_t))}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new ISr({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",n=>{this.buffer.output.get(t.id).write(n)}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,n="OUTPUT",a){if(!a)switch(n){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&n==="FAILED"&&a===t.title||typeof a!="string"?[]:(n==="OUTPUT"&&(a=PTe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?fSr(t.trim(),this.options.indentation):t.trim()}},LDa=class{constructor(e,t){this.tasks=e,this.options=t}static{wp(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},VDa=class mSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...mSr.rendererOptions,...r,icon:{...__t.icon,...r?.icon??{}},color:{...__t.color,...r?.color??{}}},this.logger=this.options.logger??new WTe({useIcons:!0,toStderr:GAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{wp(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...ESr,field:wp(t=>`PAUSED:${t}`,"field"),format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a?.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",l=>{this.logger.process.toStderr(l,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:wp(()=>X0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:wp(()=>X0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:wp(()=>X0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:wp(()=>X0.red,"format")}});else if(o.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...mSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},PDa=class{constructor(e){this.options=e}static{wp(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let n={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let l=r[o];return typeof l=="function"?[o,l.call(r)]:[o,l]}));Object.keys(r).length>0&&(n.task=a)}return n}},WDa=class LAi{constructor(t,r){this.tasks=t,this.options=r,this.options={...LAi.rendererOptions,...this.options},this.logger=this.options.logger??new WTe({useIcons:!1}),this.serializer=new PDa(this.options)}static{wp(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(RAi),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",n=>{this.renderer(n)}),this.options.state&&r.on("STATE",n=>{this.logger.toStdout(this.serializer.serialize("STATE",n,r))}),this.options.output&&r.on("OUTPUT",n=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",n,r))}),this.options.prompt&&r.on("PROMPT",n=>{this.logger.toStdout(this.serializer.serialize("PROMPT",n,r))}),this.options.title&&r.on("TITLE",n=>{this.logger.toStdout(this.serializer.serialize("TITLE",n,r))}),r.on("MESSAGE",n=>{let a=Object.fromEntries(Object.entries(n).map(([o,l])=>{if(this.options.messages.includes(o))return[o,l]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(l=>Object.keys(a).includes(l))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},ODa=class CSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...CSr.rendererOptions,...this.options,icon:{...__t.icon,...r?.icon??{}},color:{...__t.color,...r?.color??{}}},this.logger=this.options.logger??new WTe({useIcons:!1,toStderr:GAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{wp(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...ESr,format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let l=PTe(o);l&&this.logger.log("PROMPT",l)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...CSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},pSr={default:ZDa,simple:VDa,verbose:ODa,test:WDa,silent:LDa};function VAi(e){return process.stdout.isTTY===!0||e.nonTTY===!0}wp(VAi,"isRendererSupported");function QQe(e){return typeof e=="string"?pSr[e]??pSr.default:typeof e=="function"?e:pSr.default}wp(QQe,"getRendererClass");function PAi(e){if(Lhe(e?.silentRendererCondition))return{renderer:QQe("silent"),selection:"SILENT"};let t={renderer:QQe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!VAi(t.renderer)||Lhe(e?.fallbackRendererCondition)?{renderer:QQe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}wp(PAi,"getRenderer");function Lhe(e,...t){return typeof e=="function"?e(...t):e}wp(Lhe,"assertFunctionOrSelf");var MDa=(0,WAi.default)({circles:!0});function _Sr(e){return MDa(e)}wp(_Sr,"cloneObject");var HDa=class{static{wp(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=wp(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=wp(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function OAi(e){return new Promise(t=>{setTimeout(t,e)})}wp(OAi,"delay");var YDa=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=_Sr(r),this.ctx=_Sr(r.listr.ctx)),this.stack=e?.stack}static{wp(this,"ListrError")}path;ctx},wAi=class extends Error{static{wp(this,"ListrRendererError")}},MAi=class extends Error{static{wp(this,"PromptError")}},QDa=class{constructor(e){this.task=e}static{wp(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=VTe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=VTe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new y_t(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new YDa(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?VTe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return FAi(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},JDa=class extends NAi{static{wp(this,"ListrTaskEventManager")}},UDa=class extends JDa{constructor(e,t,r,n,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=n,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=VTe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{wp(this,"Task")}id=XDa();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),PTe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await Lhe(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await OAi(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=wp(o=>(o instanceof y_t?(o.options={...this.options,...o.options},o.rendererClass=QQe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):kAi(o)?o=new Promise((l,A)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>A(f)),o.on("end",()=>l(null))}):DAi(o)&&(o=new Promise((l,A)=>{o.subscribe({next:wp(f=>{this.output$=f},"next"),error:A,complete:l})})),o),"handleResult"),n=Date.now();this.state$="STARTED";let a=await Lhe(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,l=typeof this.task.retry=="object"&&this.task.retry.delay;for(let A=1;A<=o;A++)try{await r(this.taskFn(e,t));break}catch(f){if(A!==o)this.retry={count:A,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",l&&await this.pause(l);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-n},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof MAi&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(l){throw this.state$="FAILED",t.report(l,"HAS_FAILED_TO_ROLLBACK"),this.close(),l}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await Lhe(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},TAi=class extends NAi{static{wp(this,"ListrEventManager")}},y_t=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new HDa({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof TAi?this.events=this.parentTask.listr.events:this.events=new TAi;let n=PAi({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=n.renderer,this.rendererClassOptions=n.options,this.rendererSelection=n.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{wp(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new UDa(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new QDa(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var XQe=fp.blue(sb.arrowRight),HM=fp.redBright(sb.cross),OTe=fp.yellow(sb.warning);var JQe=(e,t,r)=>`${fp.redBright(`${HM} Validation Error:`)} +`)}};var _hi=Nt(el(),1);$c();import{execSync as Chi}from"node:child_process";var hhi=Nt(uT(),1);var Rgi=Nt(uT(),1);var mNa=(0,Rgi.default)("lint-staged:execGit"),CNa=["-c","submodule.recurse=false"],_Na=[...CNa],QZ=async(e,t={})=>{mNa("Running git command",e);try{let{stdout:r}=await j$("git",_Na.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as gka}from"node:util";var kgi=Nt(Dgi(),1);var xgi=kgi.default;import*as c_t from"tty";var{env:Tae={},argv:Fgi=[],platform:ENa=""}=typeof process>"u"?{}:process,SNa="NO_COLOR"in Tae||Fgi.includes("--no-color"),vNa="FORCE_COLOR"in Tae||Fgi.includes("--color"),BNa=ENa==="win32",Zgi=Tae.TERM==="dumb",wNa=c_t&&c_t.isatty&&c_t.isatty(1)&&Tae.TERM&&!Zgi,TNa="CI"in Tae&&("GITHUB_ACTIONS"in Tae||"GITLAB_CI"in Tae||"CIRCLECI"in Tae),RNa=!SNa&&(vNa||BNa&&!Zgi||wNa||TNa),Lgi=(e,t,r,n,a=t.substring(0,e)+n,o=t.substring(e+r.length),l=o.indexOf(r))=>a+(l<0?o:Lgi(l,o,r,n)),NNa=(e,t,r,n,a)=>e<0?r+t+n:r+Lgi(e,t,n,a)+n,DNa=(e,t,r=e,n=e.length+1)=>a=>a||!(a===""||a===void 0)?NNa((""+a).indexOf(t,n),a,e,t,r):"",Sh=(e,t,r)=>DNa(`\x1B[${e}m`,`\x1B[${t}m`,r),Ggi={reset:Sh(0,0),bold:Sh(1,22,"\x1B[22m\x1B[1m"),dim:Sh(2,22,"\x1B[22m\x1B[2m"),italic:Sh(3,23),underline:Sh(4,24),inverse:Sh(7,27),hidden:Sh(8,28),strikethrough:Sh(9,29),black:Sh(30,39),red:Sh(31,39),green:Sh(32,39),yellow:Sh(33,39),blue:Sh(34,39),magenta:Sh(35,39),cyan:Sh(36,39),white:Sh(37,39),gray:Sh(90,39),bgBlack:Sh(40,49),bgRed:Sh(41,49),bgGreen:Sh(42,49),bgYellow:Sh(43,49),bgBlue:Sh(44,49),bgMagenta:Sh(45,49),bgCyan:Sh(46,49),bgWhite:Sh(47,49),blackBright:Sh(90,39),redBright:Sh(91,39),greenBright:Sh(92,39),yellowBright:Sh(93,39),blueBright:Sh(94,39),magentaBright:Sh(95,39),cyanBright:Sh(96,39),whiteBright:Sh(97,39),bgBlackBright:Sh(100,49),bgRedBright:Sh(101,49),bgGreenBright:Sh(102,49),bgYellowBright:Sh(103,49),bgBlueBright:Sh(104,49),bgMagentaBright:Sh(105,49),bgCyanBright:Sh(106,49),bgWhiteBright:Sh(107,49)},eSr=({useColor:e=RNa}={})=>e?Ggi:Object.keys(Ggi).reduce((t,r)=>({...t,[r]:String}),{}),{reset:wCu,bold:TCu,dim:RCu,italic:NCu,underline:DCu,inverse:kCu,hidden:xCu,strikethrough:GCu,black:FCu,red:ZCu,green:LCu,yellow:VCu,blue:PCu,magenta:WCu,cyan:OCu,white:MCu,gray:HCu,bgBlack:YCu,bgRed:QCu,bgGreen:XCu,bgYellow:JCu,bgBlue:UCu,bgMagenta:KCu,bgCyan:jCu,bgWhite:zCu,blackBright:qCu,redBright:$Cu,greenBright:e_u,yellowBright:t_u,blueBright:r_u,magentaBright:n_u,cyanBright:i_u,whiteBright:s_u,bgBlackBright:o_u,bgRedBright:a_u,bgGreenBright:c_u,bgYellowBright:l_u,bgBlueBright:u_u,bgMagentaBright:g_u,bgCyanBright:A_u,bgWhiteBright:d_u}=eSr();var JAi=Nt(Pgi(),1);import{format as JDa}from"util";import{EOL as DAi}from"os";import{StringDecoder as UDa}from"string_decoder";import{EOL as __t}from"os";import{Writable as KDa}from"stream";import{EOL as y_t}from"os";import{randomUUID as cka}from"crypto";var HDa=Object.defineProperty,wp=(e,t)=>HDa(e,"name",{value:t,configurable:!0}),RAi="\x1B[",NAi={CURSOR_HIDE:RAi+"?25l",CURSOR_SHOW:RAi+"?25h"};var ZAi=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(ZAi||{}),LAi=class{static{wp(this,"EventManager")}emitter=new xgi;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},E0u=class{static{wp(this,"BaseEventMap")}};function VAi(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}wp(VAi,"isObservable");function PAi(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}wp(PAi,"isReadable");function vSr(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}wp(vSr,"isUnicodeSupported");var YDa="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",QDa=/\u0007/;function WTe(e){return String(e).replace(new RegExp(YDa,"gmi"),"").replace(new RegExp(QDa,"gmi"),"").trim()}wp(WTe,"cleanseAnsi");var X0=eSr();function CSr(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}wp(CSr,"indent");var WAi={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},XDa={...WAi,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},sb=vSr()?WAi:XDa;function PTe(e,...t){return JDa(String(e),...t)}wp(PTe,"splat");var b_t={icon:{STARTED:sb.pointer,FAILED:sb.cross,SKIPPED:sb.arrowDown,COMPLETED:sb.tick,OUTPUT:sb.pointerSmall,TITLE:sb.arrowRight,RETRY:sb.warning,ROLLBACK:sb.arrowLeft,PAUSED:sb.squareSmallFilled},color:{STARTED:X0.yellow,FAILED:X0.red,SKIPPED:X0.yellow,COMPLETED:X0.green,RETRY:X0.yellowBright,ROLLBACK:X0.redBright,PAUSED:X0.yellowBright}},OAi=["RETRY","ROLLBACK","FAILED"],OTe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new BSr}static{wp(this,"ListrLogger")}process;log(e,t,r){let n=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(n);return}this.process.toStdout(n)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:PTe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(DAi).filter(n=>!n||n.trim()!=="").map(n=>this.style(e,this.fields(n,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(DAi),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},_Sr=class{constructor(e){this.options=e}static{wp(this,"ProcessOutputBuffer")}buffer=[];decoder=new UDa;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},kAi=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new _Sr({stream:e})}static{wp(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},BSr=class{constructor(e,t,r){this.options=r,this.stream={stdout:new kAi(e??process.stdout),stderr:new kAi(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{wp(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(NAi.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:WTe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(__t),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+__t)})),this.stream.stdout.write(NAi.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+__t),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+__t),this.stream.stderr.write(e)}};function MAi(e){let t=new KDa;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}wp(MAi,"createWritable");var N0u=class{constructor(e,t){this.task=e,this.wrapper=t}static{wp(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new KAi("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},jDa=class{static{wp(this,"Spinner")}spinner=vSr()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var xAi={icon:{SKIPPED_WITH_COLLAPSE:sb.arrowDown,SKIPPED_WITHOUT_COLLAPSE:sb.warning,OUTPUT:sb.pointerSmall,OUTPUT_WITH_BOTTOMBAR:sb.pointerSmall,PENDING:sb.pointer,COMPLETED:sb.tick,COMPLETED_WITH_FAILED_SUBTASKS:sb.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:sb.squareSmallFilled,RETRY:sb.warning,ROLLING_BACK:sb.warning,ROLLED_BACK:sb.arrowLeft,FAILED:sb.cross,FAILED_WITH_SUBTASKS:sb.pointer,WAITING:sb.squareSmallFilled,PAUSED:sb.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:X0.yellow,SKIPPED_WITHOUT_COLLAPSE:X0.yellow,PENDING:X0.yellow,COMPLETED:X0.green,COMPLETED_WITH_FAILED_SUBTASKS:X0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:X0.red,RETRY:X0.yellowBright,ROLLING_BACK:X0.redBright,ROLLED_BACK:X0.redBright,FAILED:X0.red,FAILED_WITH_SUBTASKS:X0.red,WAITING:X0.dim,PAUSED:X0.yellowBright}};function HAi(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),n;return t===0&&r===0&&(n=`0.${Math.floor(e/100)}s`),t>0&&(n=`${t%60}s`),r>0&&(n=`${r}m${n}`),n}wp(HAi,"parseTimer");var wSr={condition:!0,field:HAi,format:wp(()=>X0.dim,"format")};function zDa(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}wp(zDa,"parseTimestamp");var qDa=class ySr{constructor(t,r,n){this.tasks=t,this.options=r,this.events=n,this.options={...ySr.rendererOptions,...this.options,icon:{...xAi.icon,...r?.icon??{}},color:{...xAi.color,...r?.color??{}}},this.spinner=this.options.spinner??new jDa,this.logger=this.options.logger??new OTe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{wp(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...wSr,format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(yAi(),_Ai)),{default:r}=await Promise.resolve().then(()=>(TAi(),wAi)),{default:n}=await Promise.resolve().then(()=>(uSr(),fAi));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=n,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],n=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&n.length>0&&r.push(...n),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(y_t)}style(t,r=!1){let n=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||n.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(n.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&n.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,n){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-n*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(y_t).map((l,A)=>this.truncate(this.indent(l,A),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(y_t).map((l,A)=>this.indent(l,A));break;default:throw new GAi("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(l=>CSr(l,n*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(n=>{if(!n.isEnabled())return[];if(this.cache.render.has(n.id))return this.cache.render.get(n.id);this.calculate(n),this.setupBuffer(n);let a=this.cache.rendererOptions.get(n.id),o=this.cache.rendererTaskOptions.get(n.id),l=[];if(n.isPrompt()){if(this.activePrompt&&this.activePrompt!==n.id)throw new GAi("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(n.on("PROMPT",A=>{let f=WTe(A);f&&(this.prompt=f)}),n.on("STATE",A=>{(A==="PROMPT_COMPLETED"||n.hasFinalized()||n.hasReset())&&(this.prompt=null,this.activePrompt=null,n.off("PROMPT"))}),this.activePrompt=n.id)}if(n.hasTitle()&&(t.some(A=>A.hasFailed())&&!n.hasFailed()&&n.options.exitOnError!==!1&&!(n.isCompleted()||n.isSkipped())?l.push(...this.format(n.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):n.hasFailed()&&a.collapseErrors?l.push(...this.format(!n.hasSubtasks()&&n.message.error&&a.showErrorMessage?n.message.error:n.title,this.style(n),r)):n.isSkipped()&&a.collapseSkips?l.push(...this.format(this.logger.suffix(n.message.skip&&a.showSkipMessage?n.message.skip:n.title,{field:"SKIPPED",condition:a.suffixSkips,format:wp(()=>X0.dim,"format")}),this.style(n),r)):n.isRetrying()?l.push(...this.format(this.logger.suffix(n.title,{field:`RETRY:${n.message.retry.count}`,format:wp(()=>X0.yellow,"format"),condition:a.suffixRetries}),this.style(n),r)):n.isCompleted()&&n.hasTitle()&&Vhe(o.timer?.condition,n.message.duration)?l.push(...this.format(this.logger.suffix(n?.title,{...o.timer,args:[n.message.duration]}),this.style(n),r)):n.isPaused()?l.push(...this.format(this.logger.suffix(n.title,{...a.pausedTimer,args:[n.message.paused-Date.now()]}),this.style(n),r)):l.push(...this.format(n.title,this.style(n),r))),(!n.hasSubtasks()||!a.showSubtasks)&&(n.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?l.push(...this.dump(n,r,"FAILED")):n.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&l.push(...this.dump(n,r,"SKIPPED"))),(n.isPending()||o.persistentOutput)&&l.push(...this.renderOutputBar(n,r)),a.showSubtasks!==!1&&n.hasSubtasks()&&(n.isPending()||n.hasFinalized()&&!n.hasTitle()||n.isCompleted()&&a.collapseSubtasks===!1&&!n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!0)||n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!1)||n.subtasks.some(A=>A.hasFailed())||n.subtasks.some(A=>A.hasRolledBack()))){let A=n.hasTitle()?r+1:r,f=this.renderer(n.subtasks,A);l.push(...f)}return n.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(n.id),this.buffer.output.delete(n.id))),n.isClosed()&&(this.cache.render.set(n.id,l),this.reset(n)),l})}renderOutputBar(t,r){let n=this.buffer.output.get(t.id);return n?n.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...ySr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new _Sr({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",n=>{let a=this.dump(t,-1,"OUTPUT",n);this.buffer.bottom.get(t.id).write(a.join(y_t))}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new _Sr({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",n=>{this.buffer.output.get(t.id).write(n)}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,n="OUTPUT",a){if(!a)switch(n){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&n==="FAILED"&&a===t.title||typeof a!="string"?[]:(n==="OUTPUT"&&(a=WTe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?CSr(t.trim(),this.options.indentation):t.trim()}},$Da=class{constructor(e,t){this.tasks=e,this.options=t}static{wp(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},eka=class bSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...bSr.rendererOptions,...r,icon:{...b_t.icon,...r?.icon??{}},color:{...b_t.color,...r?.color??{}}},this.logger=this.options.logger??new OTe({useIcons:!0,toStderr:OAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{wp(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...wSr,field:wp(t=>`PAUSED:${t}`,"field"),format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a?.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",l=>{this.logger.process.toStderr(l,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:wp(()=>X0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:wp(()=>X0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:wp(()=>X0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:wp(()=>X0.red,"format")}});else if(o.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...bSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},tka=class{constructor(e){this.options=e}static{wp(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let n={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let l=r[o];return typeof l=="function"?[o,l.call(r)]:[o,l]}));Object.keys(r).length>0&&(n.task=a)}return n}},rka=class YAi{constructor(t,r){this.tasks=t,this.options=r,this.options={...YAi.rendererOptions,...this.options},this.logger=this.options.logger??new OTe({useIcons:!1}),this.serializer=new tka(this.options)}static{wp(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(ZAi),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",n=>{this.renderer(n)}),this.options.state&&r.on("STATE",n=>{this.logger.toStdout(this.serializer.serialize("STATE",n,r))}),this.options.output&&r.on("OUTPUT",n=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",n,r))}),this.options.prompt&&r.on("PROMPT",n=>{this.logger.toStdout(this.serializer.serialize("PROMPT",n,r))}),this.options.title&&r.on("TITLE",n=>{this.logger.toStdout(this.serializer.serialize("TITLE",n,r))}),r.on("MESSAGE",n=>{let a=Object.fromEntries(Object.entries(n).map(([o,l])=>{if(this.options.messages.includes(o))return[o,l]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(l=>Object.keys(a).includes(l))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},nka=class ESr{constructor(t,r){this.tasks=t,this.options=r,this.options={...ESr.rendererOptions,...this.options,icon:{...b_t.icon,...r?.icon??{}},color:{...b_t.color,...r?.color??{}}},this.logger=this.options.logger??new OTe({useIcons:!1,toStderr:OAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{wp(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...wSr,format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let l=WTe(o);l&&this.logger.log("PROMPT",l)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...ESr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},mSr={default:qDa,simple:eka,verbose:nka,test:rka,silent:$Da};function QAi(e){return process.stdout.isTTY===!0||e.nonTTY===!0}wp(QAi,"isRendererSupported");function JQe(e){return typeof e=="string"?mSr[e]??mSr.default:typeof e=="function"?e:mSr.default}wp(JQe,"getRendererClass");function XAi(e){if(Vhe(e?.silentRendererCondition))return{renderer:JQe("silent"),selection:"SILENT"};let t={renderer:JQe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!QAi(t.renderer)||Vhe(e?.fallbackRendererCondition)?{renderer:JQe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}wp(XAi,"getRenderer");function Vhe(e,...t){return typeof e=="function"?e(...t):e}wp(Vhe,"assertFunctionOrSelf");var ika=(0,JAi.default)({circles:!0});function SSr(e){return ika(e)}wp(SSr,"cloneObject");var ska=class{static{wp(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=wp(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=wp(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function UAi(e){return new Promise(t=>{setTimeout(t,e)})}wp(UAi,"delay");var oka=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=SSr(r),this.ctx=SSr(r.listr.ctx)),this.stack=e?.stack}static{wp(this,"ListrError")}path;ctx},GAi=class extends Error{static{wp(this,"ListrRendererError")}},KAi=class extends Error{static{wp(this,"PromptError")}},aka=class{constructor(e){this.task=e}static{wp(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=PTe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=PTe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new E_t(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new oka(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?PTe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return MAi(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},lka=class extends LAi{static{wp(this,"ListrTaskEventManager")}},uka=class extends lka{constructor(e,t,r,n,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=n,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=PTe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{wp(this,"Task")}id=cka();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),WTe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await Vhe(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await UAi(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=wp(o=>(o instanceof E_t?(o.options={...this.options,...o.options},o.rendererClass=JQe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):PAi(o)?o=new Promise((l,A)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>A(f)),o.on("end",()=>l(null))}):VAi(o)&&(o=new Promise((l,A)=>{o.subscribe({next:wp(f=>{this.output$=f},"next"),error:A,complete:l})})),o),"handleResult"),n=Date.now();this.state$="STARTED";let a=await Vhe(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,l=typeof this.task.retry=="object"&&this.task.retry.delay;for(let A=1;A<=o;A++)try{await r(this.taskFn(e,t));break}catch(f){if(A!==o)this.retry={count:A,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",l&&await this.pause(l);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-n},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof KAi&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(l){throw this.state$="FAILED",t.report(l,"HAS_FAILED_TO_ROLLBACK"),this.close(),l}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await Vhe(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},FAi=class extends LAi{static{wp(this,"ListrEventManager")}},E_t=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new ska({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof FAi?this.events=this.parentTask.listr.events:this.events=new FAi;let n=XAi({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=n.renderer,this.rendererClassOptions=n.options,this.rendererSelection=n.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{wp(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new uka(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new aka(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var UQe=fp.blue(sb.arrowRight),HM=fp.redBright(sb.cross),MTe=fp.yellow(sb.warning);var KQe=(e,t,r)=>`${fp.redBright(`${HM} Validation Error:`)} - Invalid value for '${fp.bold(e)}': ${fp.bold(KDa(r))} + Invalid value for '${fp.bold(e)}': ${fp.bold(gka(r))} - ${t}`,HAi=fp.redBright(`${HM} Current directory is not a git directory!`),YAi=fp.redBright(`${HM} Failed to get staged files!`),QAi=(e,t)=>fp.yellow(`${OTe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` -`),XAi=`${HM} No valid configuration found.`,JAi=`${XQe} No staged files found.`,UAi=`${XQe} No staged files match any configured task.`,KAi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return fp.yellow(`${OTe} Skipping backup because ${r}. -`)},jAi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return fp.yellow(`${OTe} Skipping hiding unstaged changes from partially staged files because ${r}. -`)},zAi=fp.yellow(`${OTe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. -`),SSr="Skipped because of errors from tasks.",qAi="Skipped because of previous git error.",Tae=` - ${fp.redBright(`${HM} lint-staged failed due to a git error.`)}`,vSr=(e,t,r)=>`${fp.redBright(`${HM} Validation Error:`)} + ${t}`,jAi=fp.redBright(`${HM} Current directory is not a git directory!`),zAi=fp.redBright(`${HM} Failed to get staged files!`),qAi=(e,t)=>fp.yellow(`${MTe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` +`),$Ai=`${HM} No valid configuration found.`,edi=`${UQe} No staged files found.`,tdi=`${UQe} No staged files match any configured task.`,rdi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return fp.yellow(`${MTe} Skipping backup because ${r}. +`)},ndi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return fp.yellow(`${MTe} Skipping hiding unstaged changes from partially staged files because ${r}. +`)},idi=fp.yellow(`${MTe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. +`),TSr="Skipped because of errors from tasks.",sdi="Skipped because of previous git error.",Rae=` + ${fp.redBright(`${HM} lint-staged failed due to a git error.`)}`,RSr=(e,t,r)=>`${fp.redBright(`${HM} Validation Error:`)} Invalid value for option '${fp.bold(e)}': ${fp.bold(t)} ${r} -See https://github.com/okonet/lint-staged#command-line-flags`,$Ai=` - ${fp.yellow(`${OTe} lint-staged prevented an empty git commit. +See https://github.com/okonet/lint-staged#command-line-flags`,odi=` + ${fp.yellow(`${MTe} lint-staged prevented an empty git commit. Use the --allow-empty option to continue, or check your task configuration`)} -`,edi=` Any lost modifications can be restored from a git stash: +`,adi=` Any lost modifications can be restored from a git stash: > git stash list stash@{0}: automatic lint-staged backup > git stash apply --index stash@{0} -`,d0u=fp.redBright(`${HM} Failed to read config from stdin.`),tdi=e=>fp.redBright(`${HM} Failed to read config from file "${e}".`),BSr=(e,t)=>`${fp.redBright(`${t} Failed to parse config from file "${e}".`)} +`,syu=fp.redBright(`${HM} Failed to read config from stdin.`),cdi=e=>fp.redBright(`${HM} Failed to read config from file "${e}".`),NSr=(e,t)=>`${fp.redBright(`${t} Failed to parse config from file "${e}".`)} ${t} -See https://github.com/okonet/lint-staged#configuration.`;var wSr=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let n of e.output)r(n)};import DXe from"node:path";var ihi=Nt(uT(),1);var rdi=Nt(uT(),1);import qDa from"node:path";import UQe from"node:path";var jDa="\\\\?\\",zDa="\\\\.\\",wG=e=>{if(e===UQe.posix.sep||e===UQe.win32.sep)return UQe.posix.sep;let t=e.split(/[/\\]+/).join(UQe.posix.sep);return(e.startsWith(jDa)||e.startsWith(zDa))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith(UQe.posix.sep)&&(t=t.slice(0,-1)),t};var TSr=(0,rdi.default)("lint-staged:chunkFiles"),$Da=(e,t)=>{if(t===1)return[e];let r=[],n=0;for(let a=0;a{let a=e.map(A=>wG(n||!t?A:qDa.resolve(t,A)));if(!r)return TSr("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;TSr(`Resolved an argument string length of ${o} characters from ${a.length} files`);let l=Math.min(Math.ceil(o/r),a.length);return TSr(`Creating ${l} chunks for maxArgLength of ${r}`),$Da(a,l)};var idi=Nt(uT(),1),sdi=Nt(Ek(),1);import NSr from"node:path";var ndi=(0,idi.default)("lint-staged:generateTasks"),odi=({config:e,cwd:t=process.cwd(),files:r,relative:n=!1})=>{ndi("Generating linter tasks");let a=r.map(o=>wG(NSr.relative(t,o)));return Object.entries(e).map(([o,l])=>{let A=o.startsWith("../"),f=a.filter(E=>A?!0:!E.startsWith("..")&&!NSr.isAbsolute(E)),C=(0,sdi.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(E=>wG(n?E:NSr.resolve(t,E))),b={pattern:o,commands:l,fileList:C};return ndi(`Generated task: -%O`,b),b})};import{EOL as eka}from"node:os";import{Writable as tka}from"node:stream";var rka=new RegExp(eka+"$"),adi=e=>new tka({write:function(t,r,n){e(t.toString().replace(rka,"")),n()}}),nka=({debug:e,quiet:t},r,n)=>t?{renderer:"silent"}:n.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new WTe({processOutput:new bSr(adi(r.log),adi(r.error))})}}:e||n.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},ika=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",cdi=(e,t,r=process.env)=>{let n=nka(e,t,r);return{...n,fallbackRenderer:ika(n,r)}};import ska from"node:path";function b_t(e,t){let r=t!==void 0?t.trim():"ACMR",n=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...n]}var KQe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var ldi=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let n=await QZ(b_t(t,r),{cwd:e});return n?KQe(n).map(a=>wG(ska.resolve(e,a))):[]}catch{return null}};var _di=Nt(uT(),1);import qQe from"node:path";var udi=Nt(uT(),1);import DSr from"node:fs/promises";var jQe=(0,udi.default)("lint-staged:file"),E_t=async(e,t=!0)=>{jQe("Reading file `%s`",e);try{return await DSr.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return jQe("File `%s` doesn't exist, ignoring...",e),null;throw r}},kSr=async(e,t=!0)=>{jQe("Removing file `%s`",e);try{await DSr.unlink(e)}catch(r){if(t&&r.code==="ENOENT")jQe("File `%s` doesn't exist, ignoring...",e);else throw r}},S_t=async(e,t)=>{jQe("Writing file `%s`",e),await DSr.writeFile(e,t)};var Rae=Symbol("ApplyEmptyCommitError"),zQe=new Error("Configuration could not be found"),gdi=new Error("Configuration should be an object or a function"),Adi=new Error("Configuration should not be empty"),v_t=Symbol("GetBackupStashError"),xSr=Symbol("GetStagedFilesError"),QX=Symbol("GitError"),ddi=Symbol("GitRepoError"),pdi=Symbol("HideUnstagedChangesError"),GSr=new Error("Invalid Options"),fdi=Symbol("RestoreMergeStatusError"),B_t=Symbol("RestoreOriginalStateError"),MTe=Symbol("RestoreUnstagedChangesError"),Vhe=Symbol("TaskError");var R2=(0,_di.default)("lint-staged:GitWorkflow"),oka="MERGE_HEAD",aka="MERGE_MODE",cka="MERGE_MSG",Idi=/\x00/,hdi=(e,t=!0)=>e.reduce((r,n)=>{if(Idi.test(n)){let[a,o]=n.split(Idi);t&&r.push(o),r.push(a)}else r.push(n);return r},[]),mdi="lint-staged automatic backup",FSr="lint-staged_unstaged.patch",lka=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],Cdi=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],Phe=(e,t,r)=>{throw t.errors.add(QX),r&&t.errors.add(r),e},w_t=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:n,matchedFileChunks:a,diff:o,diffFilter:l}){this.execGit=(A,f={})=>QZ(A,{...f,cwd:n}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=n,this.diff=o,this.diffFilter=l,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=qQe.resolve(r,oka),this.mergeModeFilename=qQe.resolve(r,aka),this.mergeMsgFilename=qQe.resolve(r,cka)}getHiddenFilepath(t){return qQe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let n=(await this.execGit(["stash","list"])).split(` -`).findIndex(a=>a.includes(mdi));if(n===-1)throw t.errors.add(v_t),new Error("lint-staged automatic backup is missing!");return String(n)}async getDeletedFiles(){R2("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` -`).filter(Boolean).map(n=>qQe.resolve(this.topLevelDir,n));return R2("Found deleted files:",r),r}async backupMergeStatus(){R2("Backing up merge state..."),await Promise.all([E_t(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),E_t(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),E_t(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),R2("Done backing up merge state!")}async restoreMergeStatus(t){R2("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&S_t(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&S_t(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&S_t(this.mergeMsgFilename,this.mergeMsgBuffer)]),R2("Done restoring merge state!")}catch(r){R2("Failed restoring merge state with error:"),R2(r),Phe(new Error("Merge state could not be restored due to an error!"),t,fdi)}}async getPartiallyStagedFiles(){R2("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(n=>{let[a,o]=n;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(n=>n.substr(3)).filter(Boolean);return R2("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if(R2("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let n=this.getHiddenFilepath(FSr),a=hdi(this.partiallyStagedFiles);await this.execGit(["diff",...lka,"--output",n,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",mdi,r]),R2("Done backing up original state!")}catch(r){Phe(r,t)}}async hideUnstagedChanges(t){try{let r=hdi(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){Phe(r,t,pdi)}}async applyModifications(t){R2("Adding task modifications to index...");for(let n of this.matchedFileChunks)await this.execGit(["add","--",...n]);R2("Done adding task modifications to index!"),!await this.execGit(b_t(this.diff,this.diffFilter))&&!this.allowEmpty&&Phe(new Error("Prevented an empty git commit!"),t,Rae)}async restoreUnstagedChanges(t){R2("Restoring unstaged changes...");let r=this.getHiddenFilepath(FSr);try{await this.execGit(["apply",...Cdi,r])}catch(n){R2("Error while restoring changes:"),R2(n),R2("Retrying with 3-way merge");try{await this.execGit(["apply",...Cdi,"--3way",r])}catch(a){R2("Error while restoring unstaged changes using 3-way merge:"),R2(a),Phe(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,MTe)}}}async restoreOriginalState(t){try{R2("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>kSr(r))),await kSr(this.getHiddenFilepath(FSr)),R2("Done restoring original state!")}catch(r){Phe(r,t,B_t)}}async cleanup(t){try{R2("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),R2("Done dropping backup stash!")}catch(r){Phe(r,t)}}};var ydi=Nt(uT(),1);import T_t from"node:path";var uka=(0,ydi.default)("lint-staged:groupFilesByConfig"),bdi=async({configs:e,files:t,singleConfigMode:r})=>{uka("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let n=new Set(t),a={};for(let[o,l]of Object.entries(e)){if(r){a[o]={config:l,files:t};break}let A=T_t.normalize(T_t.dirname(o)),f=b=>{let E=T_t.relative(A,b);return E&&!E.startsWith("..")&&!T_t.isAbsolute(E)},I=Object.keys(l).some(b=>b.startsWith("..")),C=new Set(I?n:void 0);I||n.forEach(b=>{f(b)&&C.add(b)}),C.forEach(b=>{n.delete(b)}),a[o]={config:l,files:Array.from(C)}}return a};var Udi=Nt(uT(),1);var Hdi=Nt(uT(),1);function ZSr(e,t,r){var n=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var l;do l=n.exec(a),l!==null&&o.push(gka(l[1],l[6],l[0]));while(l!==null);return o}function gka(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new Tka,output:[],quiet:e}),PSr=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,Ldi=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(QX))return Tae;if(e.errors.has(Vhe))return SSr},Vdi=e=>{if(e.errors.has(QX))return Tae;if(e.errors.has(Vhe))return SSr},Pdi=e=>e.shouldBackup&&(e.errors.has(Vhe)||e.errors.has(Rae)||e.errors.has(MTe)),Wdi=e=>{if(e.errors.has(QX)&&!e.errors.has(Rae)&&!e.errors.has(MTe))return Tae},Odi=e=>e.shouldBackup,Mdi=e=>{if(e.errors.has(QX)&&!e.errors.has(Rae)&&!e.errors.has(MTe))return Tae;if(e.errors.has(B_t))return Tae};var WSr="lint-staged:taskError",$Qe=(0,Hdi.default)("lint-staged:resolveTaskFn"),Qdi=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",Xdi=(e,t,r,n=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let A=n?fp.redBright(`${HM} ${e}:`):`${XQe} ${e}:`,f=[].concat(r.quiet?[]:["",A]).concat(a||[]).concat(o||[]);r.output.push(f.join(` -`))}else if(n){let A=Qdi(t),f=fp.redBright(` -${HM} ${e} failed without output (${A}).`);r.quiet||r.output.push(f)}},Rka=async e=>{try{let t=await(0,Ydi.default)(e.pid);for(let r of t)try{process.kill(r)}catch(n){$Qe('Failed to kill process with pid "%d": %o',r,n)}}catch(t){$Qe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},Nka=(e,t)=>{let r,n=async()=>{r=Rka(t),await r};return e.events.on(WSr,n,{once:!0}),async()=>{e.events.off(WSr,n),await r}},Dka=(e,t,r)=>{r.errors.add(Vhe),r.events.emit(WSr,Vhe),Xdi(e,t,r,!0);let n=Qdi(t);return new Error(`${fp.redBright(e)} ${fp.dim(`[${n}]`)}`)},Jdi=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:n,isFn:a,shell:o=!1,verbose:l=!1})=>{let[A,...f]=ZSr(e);$Qe("cmd:",A),$Qe("args:",f);let I={cwd:/^git(\.exe)?/i.test(A)?n:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return $Qe("execaOptions:",I),async(C=R_t())=>{let b=o?Osi(a?e:`${e} ${r.join(" ")}`,I):j$(A,a?f:f.concat(r),I),E=Nka(C,b),N=await b;if(await E(),N.failed||N.killed||N.signal!=null)throw Dka(e,N,C);l&&Xdi(e,N,C)}};var kka=(0,Udi.default)("lint-staged:makeCmdTasks"),Kdi=async({commands:e,cwd:t,files:r,topLevelDir:n,shell:a,verbose:o})=>{kka("Creating listr tasks for commands %o",e);let l=Array.isArray(e)?e:[e],A=[];for(let f of l){let I=typeof f=="function",C=I?await f([...r]):f,b=Array.isArray(C)?C:[C];for(let E of b){if(I&&typeof E!="string")throw new Error(JQe("[Function]","Function task should return a string or an array of strings",C));let N=Jdi({command:E,cwd:t,files:r,topLevelDir:n,isFn:I,shell:a,verbose:o});A.push({title:E,command:E,task:N})}}return A};var jdi=Nt(uT(),1);import OSr from"node:path";var HTe=(0,jdi.default)("lint-staged:resolveGitRepo"),xka=async(e=process.cwd())=>{let t=QZ(["rev-parse","--show-toplevel"],{cwd:e}),r=QZ(["rev-parse","--absolute-git-dir"],{cwd:e}),[n,a]=await Promise.all([t,r]);return OSr.relative(n,a)},zdi=async(e=process.cwd())=>{try{HTe("Resolving git repo from `%s`",e),HTe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,HTe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await QZ(["rev-parse","--show-cdup"],{cwd:e}),r=wG(OSr.join(e,t));HTe("Resolved git repository top-level directory to be `%s`",r);let n=await xka(e),a=wG(OSr.join(r,n));return HTe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return HTe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var rhi=Nt(uT(),1);import thi from"node:path";var QIi=Nt(uT(),1),XIi=Nt(ZIi(),1);import oLa from"node:fs/promises";import nRe from"node:path";import{pathToFileURL as rLa}from"node:url";var E0t=e=>import(rLa(e)).then(t=>t.default);import{createRequire as nLa}from"node:module";function LIi(e){try{return nLa(import.meta.url).resolve(e)}catch{return e}}var S0t="lint-staged",v0t="package.json",bBr=["package.yaml","package.yml"],B0t=[v0t,...bBr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var rRe=(0,QIi.default)("lint-staged:loadConfig"),aLa=(e,t)=>{let r=v0t.includes(nRe.basename(e));try{let n=JSON.parse(t);return r?n[S0t]:n}catch(n){if(nRe.basename(e)===v0t){rRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},vBr=(e,t)=>{let r=bBr.includes(nRe.basename(e));try{let n=XIi.default.parse(t);return r?n[S0t]:n}catch(n){if(r){rRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},JIi="noExt",UIi={".js":E0t,".json":aLa,".mjs":E0t,".cjs":E0t,".yaml":vBr,".yml":vBr,[JIi]:vBr},cLa=async e=>{let t=nRe.resolve(e);return await(await oLa.readFile(t)).toString()},lLa=async e=>{e=nRe.resolve(e);let t=nRe.extname(e)||JIi,r=UIi[t],n=r.length>1?await cLa(e):void 0;return{config:await r(e,n),filepath:e}},D0t=async({configPath:e,cwd:t},r)=>{try{let n;if(e)rRe("Loading configuration from `%s`...",e),n=await lLa(LIi(e));else{rRe("Searching for configuration from `%s`...",t);let{lilconfig:l}=await Promise.resolve().then(()=>Nt(YIi(),1));n=await l(S0t,{searchPlaces:B0t,loaders:UIi}).search(t)}if(!n)return{};let a=await n.config??null,o=n.filepath;return rRe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(n){return rRe("Failed to load configuration from `%s` with error:\n",e,n),r.error(tdi(e)),{}}};var qIi=Nt(uT(),1);import{inspect as pLa}from"node:util";var uLa=/(?{let t=`${e}`,r=null;for(;r=uLa.exec(e);){let n=r[0],a=n.replace(/{/,"").replace(/}/,"");t=t.replace(n,a)}return t},ALa=/{{[^}{]*}}/,dLa=e=>{let t=`${e}`,r=ALa.exec(e)?.[0];if(r){let n=r.replace("{{","{").replace("}}","}");t=t.replace(r,n)}return t},KIi=(e,t)=>{let r=dLa(gLa(e));return r!==e&&t.warn(QAi(e,r)),r};var BBr=(0,qIi.default)("lint-staged:validateConfig"),jIi=e=>e&&typeof e=="object"&&!Array.isArray(e),zIi=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",jIi],["linters",jIi],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),fLa=(e,t,r)=>{if(BBr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw gdi;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw Adi;let n=[],a=Object.entries(e).reduce((o,[l,A])=>{if(zIi.has(l))return zIi.get(l)(A)&&n.push(JQe(l,"Advanced configuration has been deprecated.",A)),o;(!Array.isArray(A)||A.some(I=>typeof I!="string"&&typeof I!="function"))&&typeof A!="string"&&typeof A!="function"&&n.push(JQe(l,"Should be a string, a function, or an array of strings and functions.",A));let f=KIi(l,r);return{...o,[f]:A}},{});if(n.length){let o=n.join(` +See https://github.com/okonet/lint-staged#configuration.`;var DSr=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let n of e.output)r(n)};import xXe from"node:path";var ghi=Nt(uT(),1);var ldi=Nt(uT(),1);import pka from"node:path";import jQe from"node:path";var Aka="\\\\?\\",dka="\\\\.\\",wG=e=>{if(e===jQe.posix.sep||e===jQe.win32.sep)return jQe.posix.sep;let t=e.split(/[/\\]+/).join(jQe.posix.sep);return(e.startsWith(Aka)||e.startsWith(dka))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith(jQe.posix.sep)&&(t=t.slice(0,-1)),t};var kSr=(0,ldi.default)("lint-staged:chunkFiles"),fka=(e,t)=>{if(t===1)return[e];let r=[],n=0;for(let a=0;a{let a=e.map(A=>wG(n||!t?A:pka.resolve(t,A)));if(!r)return kSr("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;kSr(`Resolved an argument string length of ${o} characters from ${a.length} files`);let l=Math.min(Math.ceil(o/r),a.length);return kSr(`Creating ${l} chunks for maxArgLength of ${r}`),fka(a,l)};var gdi=Nt(uT(),1),Adi=Nt(Ek(),1);import GSr from"node:path";var udi=(0,gdi.default)("lint-staged:generateTasks"),ddi=({config:e,cwd:t=process.cwd(),files:r,relative:n=!1})=>{udi("Generating linter tasks");let a=r.map(o=>wG(GSr.relative(t,o)));return Object.entries(e).map(([o,l])=>{let A=o.startsWith("../"),f=a.filter(E=>A?!0:!E.startsWith("..")&&!GSr.isAbsolute(E)),C=(0,Adi.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(E=>wG(n?E:GSr.resolve(t,E))),b={pattern:o,commands:l,fileList:C};return udi(`Generated task: +%O`,b),b})};import{EOL as Ika}from"node:os";import{Writable as hka}from"node:stream";var mka=new RegExp(Ika+"$"),pdi=e=>new hka({write:function(t,r,n){e(t.toString().replace(mka,"")),n()}}),Cka=({debug:e,quiet:t},r,n)=>t?{renderer:"silent"}:n.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new OTe({processOutput:new BSr(pdi(r.log),pdi(r.error))})}}:e||n.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},_ka=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",fdi=(e,t,r=process.env)=>{let n=Cka(e,t,r);return{...n,fallbackRenderer:_ka(n,r)}};import yka from"node:path";function S_t(e,t){let r=t!==void 0?t.trim():"ACMR",n=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...n]}var zQe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var Idi=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let n=await QZ(S_t(t,r),{cwd:e});return n?zQe(n).map(a=>wG(yka.resolve(e,a))):[]}catch{return null}};var wdi=Nt(uT(),1);import eXe from"node:path";var hdi=Nt(uT(),1);import FSr from"node:fs/promises";var qQe=(0,hdi.default)("lint-staged:file"),v_t=async(e,t=!0)=>{qQe("Reading file `%s`",e);try{return await FSr.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return qQe("File `%s` doesn't exist, ignoring...",e),null;throw r}},ZSr=async(e,t=!0)=>{qQe("Removing file `%s`",e);try{await FSr.unlink(e)}catch(r){if(t&&r.code==="ENOENT")qQe("File `%s` doesn't exist, ignoring...",e);else throw r}},B_t=async(e,t)=>{qQe("Writing file `%s`",e),await FSr.writeFile(e,t)};var Nae=Symbol("ApplyEmptyCommitError"),$Qe=new Error("Configuration could not be found"),mdi=new Error("Configuration should be an object or a function"),Cdi=new Error("Configuration should not be empty"),w_t=Symbol("GetBackupStashError"),LSr=Symbol("GetStagedFilesError"),QX=Symbol("GitError"),_di=Symbol("GitRepoError"),ydi=Symbol("HideUnstagedChangesError"),VSr=new Error("Invalid Options"),bdi=Symbol("RestoreMergeStatusError"),T_t=Symbol("RestoreOriginalStateError"),HTe=Symbol("RestoreUnstagedChangesError"),Phe=Symbol("TaskError");var R2=(0,wdi.default)("lint-staged:GitWorkflow"),bka="MERGE_HEAD",Eka="MERGE_MODE",Ska="MERGE_MSG",Edi=/\x00/,Sdi=(e,t=!0)=>e.reduce((r,n)=>{if(Edi.test(n)){let[a,o]=n.split(Edi);t&&r.push(o),r.push(a)}else r.push(n);return r},[]),vdi="lint-staged automatic backup",PSr="lint-staged_unstaged.patch",vka=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],Bdi=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],Whe=(e,t,r)=>{throw t.errors.add(QX),r&&t.errors.add(r),e},R_t=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:n,matchedFileChunks:a,diff:o,diffFilter:l}){this.execGit=(A,f={})=>QZ(A,{...f,cwd:n}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=n,this.diff=o,this.diffFilter=l,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=eXe.resolve(r,bka),this.mergeModeFilename=eXe.resolve(r,Eka),this.mergeMsgFilename=eXe.resolve(r,Ska)}getHiddenFilepath(t){return eXe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let n=(await this.execGit(["stash","list"])).split(` +`).findIndex(a=>a.includes(vdi));if(n===-1)throw t.errors.add(w_t),new Error("lint-staged automatic backup is missing!");return String(n)}async getDeletedFiles(){R2("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` +`).filter(Boolean).map(n=>eXe.resolve(this.topLevelDir,n));return R2("Found deleted files:",r),r}async backupMergeStatus(){R2("Backing up merge state..."),await Promise.all([v_t(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),v_t(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),v_t(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),R2("Done backing up merge state!")}async restoreMergeStatus(t){R2("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&B_t(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&B_t(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&B_t(this.mergeMsgFilename,this.mergeMsgBuffer)]),R2("Done restoring merge state!")}catch(r){R2("Failed restoring merge state with error:"),R2(r),Whe(new Error("Merge state could not be restored due to an error!"),t,bdi)}}async getPartiallyStagedFiles(){R2("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(n=>{let[a,o]=n;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(n=>n.substr(3)).filter(Boolean);return R2("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if(R2("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let n=this.getHiddenFilepath(PSr),a=Sdi(this.partiallyStagedFiles);await this.execGit(["diff",...vka,"--output",n,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",vdi,r]),R2("Done backing up original state!")}catch(r){Whe(r,t)}}async hideUnstagedChanges(t){try{let r=Sdi(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){Whe(r,t,ydi)}}async applyModifications(t){R2("Adding task modifications to index...");for(let n of this.matchedFileChunks)await this.execGit(["add","--",...n]);R2("Done adding task modifications to index!"),!await this.execGit(S_t(this.diff,this.diffFilter))&&!this.allowEmpty&&Whe(new Error("Prevented an empty git commit!"),t,Nae)}async restoreUnstagedChanges(t){R2("Restoring unstaged changes...");let r=this.getHiddenFilepath(PSr);try{await this.execGit(["apply",...Bdi,r])}catch(n){R2("Error while restoring changes:"),R2(n),R2("Retrying with 3-way merge");try{await this.execGit(["apply",...Bdi,"--3way",r])}catch(a){R2("Error while restoring unstaged changes using 3-way merge:"),R2(a),Whe(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,HTe)}}}async restoreOriginalState(t){try{R2("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>ZSr(r))),await ZSr(this.getHiddenFilepath(PSr)),R2("Done restoring original state!")}catch(r){Whe(r,t,T_t)}}async cleanup(t){try{R2("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),R2("Done dropping backup stash!")}catch(r){Whe(r,t)}}};var Tdi=Nt(uT(),1);import N_t from"node:path";var Bka=(0,Tdi.default)("lint-staged:groupFilesByConfig"),Rdi=async({configs:e,files:t,singleConfigMode:r})=>{Bka("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let n=new Set(t),a={};for(let[o,l]of Object.entries(e)){if(r){a[o]={config:l,files:t};break}let A=N_t.normalize(N_t.dirname(o)),f=b=>{let E=N_t.relative(A,b);return E&&!E.startsWith("..")&&!N_t.isAbsolute(E)},I=Object.keys(l).some(b=>b.startsWith("..")),C=new Set(I?n:void 0);I||n.forEach(b=>{f(b)&&C.add(b)}),C.forEach(b=>{n.delete(b)}),a[o]={config:l,files:Array.from(C)}}return a};var tpi=Nt(uT(),1);var jdi=Nt(uT(),1);function WSr(e,t,r){var n=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var l;do l=n.exec(a),l!==null&&o.push(wka(l[1],l[6],l[0]));while(l!==null);return o}function wka(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new Yka,output:[],quiet:e}),HSr=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,Ydi=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(QX))return Rae;if(e.errors.has(Phe))return TSr},Qdi=e=>{if(e.errors.has(QX))return Rae;if(e.errors.has(Phe))return TSr},Xdi=e=>e.shouldBackup&&(e.errors.has(Phe)||e.errors.has(Nae)||e.errors.has(HTe)),Jdi=e=>{if(e.errors.has(QX)&&!e.errors.has(Nae)&&!e.errors.has(HTe))return Rae},Udi=e=>e.shouldBackup,Kdi=e=>{if(e.errors.has(QX)&&!e.errors.has(Nae)&&!e.errors.has(HTe))return Rae;if(e.errors.has(T_t))return Rae};var YSr="lint-staged:taskError",tXe=(0,jdi.default)("lint-staged:resolveTaskFn"),qdi=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",$di=(e,t,r,n=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let A=n?fp.redBright(`${HM} ${e}:`):`${UQe} ${e}:`,f=[].concat(r.quiet?[]:["",A]).concat(a||[]).concat(o||[]);r.output.push(f.join(` +`))}else if(n){let A=qdi(t),f=fp.redBright(` +${HM} ${e} failed without output (${A}).`);r.quiet||r.output.push(f)}},Qka=async e=>{try{let t=await(0,zdi.default)(e.pid);for(let r of t)try{process.kill(r)}catch(n){tXe('Failed to kill process with pid "%d": %o',r,n)}}catch(t){tXe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},Xka=(e,t)=>{let r,n=async()=>{r=Qka(t),await r};return e.events.on(YSr,n,{once:!0}),async()=>{e.events.off(YSr,n),await r}},Jka=(e,t,r)=>{r.errors.add(Phe),r.events.emit(YSr,Phe),$di(e,t,r,!0);let n=qdi(t);return new Error(`${fp.redBright(e)} ${fp.dim(`[${n}]`)}`)},epi=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:n,isFn:a,shell:o=!1,verbose:l=!1})=>{let[A,...f]=WSr(e);tXe("cmd:",A),tXe("args:",f);let I={cwd:/^git(\.exe)?/i.test(A)?n:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return tXe("execaOptions:",I),async(C=D_t())=>{let b=o?Usi(a?e:`${e} ${r.join(" ")}`,I):j$(A,a?f:f.concat(r),I),E=Xka(C,b),N=await b;if(await E(),N.failed||N.killed||N.signal!=null)throw Jka(e,N,C);l&&$di(e,N,C)}};var Uka=(0,tpi.default)("lint-staged:makeCmdTasks"),rpi=async({commands:e,cwd:t,files:r,topLevelDir:n,shell:a,verbose:o})=>{Uka("Creating listr tasks for commands %o",e);let l=Array.isArray(e)?e:[e],A=[];for(let f of l){let I=typeof f=="function",C=I?await f([...r]):f,b=Array.isArray(C)?C:[C];for(let E of b){if(I&&typeof E!="string")throw new Error(KQe("[Function]","Function task should return a string or an array of strings",C));let N=epi({command:E,cwd:t,files:r,topLevelDir:n,isFn:I,shell:a,verbose:o});A.push({title:E,command:E,task:N})}}return A};var npi=Nt(uT(),1);import QSr from"node:path";var YTe=(0,npi.default)("lint-staged:resolveGitRepo"),Kka=async(e=process.cwd())=>{let t=QZ(["rev-parse","--show-toplevel"],{cwd:e}),r=QZ(["rev-parse","--absolute-git-dir"],{cwd:e}),[n,a]=await Promise.all([t,r]);return QSr.relative(n,a)},ipi=async(e=process.cwd())=>{try{YTe("Resolving git repo from `%s`",e),YTe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,YTe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await QZ(["rev-parse","--show-cdup"],{cwd:e}),r=wG(QSr.join(e,t));YTe("Resolved git repository top-level directory to be `%s`",r);let n=await Kka(e),a=wG(QSr.join(r,n));return YTe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return YTe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var lhi=Nt(uT(),1);import chi from"node:path";var qIi=Nt(uT(),1),$Ii=Nt(HIi(),1);import bLa from"node:fs/promises";import iRe from"node:path";import{pathToFileURL as mLa}from"node:url";var v0t=e=>import(mLa(e)).then(t=>t.default);import{createRequire as CLa}from"node:module";function YIi(e){try{return CLa(import.meta.url).resolve(e)}catch{return e}}var B0t="lint-staged",w0t="package.json",BBr=["package.yaml","package.yml"],T0t=[w0t,...BBr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var nRe=(0,qIi.default)("lint-staged:loadConfig"),ELa=(e,t)=>{let r=w0t.includes(iRe.basename(e));try{let n=JSON.parse(t);return r?n[B0t]:n}catch(n){if(iRe.basename(e)===w0t){nRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},RBr=(e,t)=>{let r=BBr.includes(iRe.basename(e));try{let n=$Ii.default.parse(t);return r?n[B0t]:n}catch(n){if(r){nRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},ehi="noExt",thi={".js":v0t,".json":ELa,".mjs":v0t,".cjs":v0t,".yaml":RBr,".yml":RBr,[ehi]:RBr},SLa=async e=>{let t=iRe.resolve(e);return await(await bLa.readFile(t)).toString()},vLa=async e=>{e=iRe.resolve(e);let t=iRe.extname(e)||ehi,r=thi[t],n=r.length>1?await SLa(e):void 0;return{config:await r(e,n),filepath:e}},x0t=async({configPath:e,cwd:t},r)=>{try{let n;if(e)nRe("Loading configuration from `%s`...",e),n=await vLa(YIi(e));else{nRe("Searching for configuration from `%s`...",t);let{lilconfig:l}=await Promise.resolve().then(()=>Nt(zIi(),1));n=await l(B0t,{searchPlaces:T0t,loaders:thi}).search(t)}if(!n)return{};let a=await n.config??null,o=n.filepath;return nRe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(n){return nRe("Failed to load configuration from `%s` with error:\n",e,n),r.error(cdi(e)),{}}};var shi=Nt(uT(),1);import{inspect as NLa}from"node:util";var BLa=/(?{let t=`${e}`,r=null;for(;r=BLa.exec(e);){let n=r[0],a=n.replace(/{/,"").replace(/}/,"");t=t.replace(n,a)}return t},TLa=/{{[^}{]*}}/,RLa=e=>{let t=`${e}`,r=TLa.exec(e)?.[0];if(r){let n=r.replace("{{","{").replace("}}","}");t=t.replace(r,n)}return t},rhi=(e,t)=>{let r=RLa(wLa(e));return r!==e&&t.warn(qAi(e,r)),r};var NBr=(0,shi.default)("lint-staged:validateConfig"),nhi=e=>e&&typeof e=="object"&&!Array.isArray(e),ihi=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",nhi],["linters",nhi],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),DLa=(e,t,r)=>{if(NBr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw mdi;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw Cdi;let n=[],a=Object.entries(e).reduce((o,[l,A])=>{if(ihi.has(l))return ihi.get(l)(A)&&n.push(KQe(l,"Advanced configuration has been deprecated.",A)),o;(!Array.isArray(A)||A.some(I=>typeof I!="string"&&typeof I!="function"))&&typeof A!="string"&&typeof A!="function"&&n.push(KQe(l,"Should be a string, a function, or an array of strings and functions.",A));let f=rhi(l,r);return{...o,[f]:A}},{});if(n.length){let o=n.join(` -`);throw r.error(BSr(t,o)),new Error(o)}return BBr("Validated config from `%s`:",t),BBr(pLa(e,{compact:!1})),a},NXe=(e,t,r)=>{try{return fLa(e,t,r)}catch(n){throw r.error(BSr(t,n)),n}};var nee=(0,rhi.default)("lint-staged:searchConfigs"),$Ii=["ls-files","-z","--full-name","-t"],ILa=e=>B0t.includes(thi.basename(e)),ehi=e=>e.split("/").length,hLa=(e,t)=>ehi(e)>ehi(t)?-1:1,mLa=e=>t=>t.startsWith(wG(e)),nhi=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:n=r},a)=>{if(nee("Searching for configuration files..."),e)return nee("Using single direct configuration object..."),{"":NXe(e,"config object",a)};if(t){nee("Using single configuration path...");let{config:C,filepath:b}=await D0t({configPath:t},a);return C?{[t]:NXe(C,b,a)}:{}}let[o,l]=await Promise.all([QZ($Ii,{cwd:n}).then(KQe),QZ([...$Ii,"--others","--exclude-standard"],{cwd:n}).then(KQe)]),A=[...o,...l].flatMap(C=>C.startsWith("S ")?[]:[C.replace(/^[HSMRCK?U] /,"")]).filter(ILa).map(C=>wG(thi.join(n,C))).filter(mLa(r)).sort(hLa);nee("Found possible config files:",A);let f=A.reduce((C,b)=>Object.assign(C,{[b]:null}),{});await Promise.all(Object.keys(f).map(C=>D0t({configPath:C},a).then(({config:b,filepath:E})=>{b&&(C!==E&&nee('Config file "%s" resolved to "%s"',C,E),f[C]=NXe(b,E,a))})));let I=Object.entries(f).filter(([,C])=>!!C).reduce((C,[b,E])=>({...C,[b]:E}),{});if(!Object.keys(I).length){nee('Could not find config files inside "%s"',r);let{config:C,filepath:b}=await D0t({cwd:r},a);C?(nee('Found parent configuration file from "%s"',b),I[b]=NXe(C,b,a)):nee('Could not find parent configuration files from "%s"',r)}return nee("Found %d config files",Object.keys(I).length),I};var kXe=(0,ihi.default)("lint-staged:runAll"),k0t=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),shi=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1},F=console)=>{kXe("Running all linter scripts...");let Q=!!a;a=Q?DXe.resolve(a):process.cwd(),kXe("Using working directory `%s`",a);let X=R_t({quiet:I}),{topLevelDir:ae,gitConfigDir:ne}=await zdi(a);if(!ae)throw I||X.output.push(HAi),X.errors.add(ddi),k0t(X);let ce=await QZ(["log","-1"],{cwd:ae}).then(()=>!0).catch(()=>!1);X.shouldBackup=ce&&E,!X.shouldBackup&&!I&&F.warn(KAi(ce,l)),X.shouldHidePartiallyStaged=N,!X.shouldHidePartiallyStaged&&!I&&F.warn(jAi(ce&&E,l));let fe=await ldi({cwd:ae,diff:l,diffFilter:A});if(!fe)throw I||X.output.push(YAi),X.errors.add(xSr),k0t(X,xSr);if(kXe(`Loaded list of staged files in git: -%O`,fe),fe.length===0)return I||X.output.push(JAi),X;let ue=await nhi({configObject:r,configPath:n,cwd:a,topLevelDir:ae},F),de=Object.keys(ue).length;if(de===0)throw X.errors.add(zQe),k0t(X,zQe);let be=await bdi({configs:ue,files:fe,singleConfigMode:r||n!==void 0}),Se=de>1,De=!1,k={ctx:X,exitOnError:!1,registerSignalListeners:!1,...cdi({debug:o,quiet:I},F)},et=0,ct=[],Me=new Set;for(let[Yt,{config:Tr,files:Nr}]of Object.entries(be)){let er=Yt?wG(DXe.relative(a,Yt)):"Config object",vt=RSr({baseDir:ae,files:Nr,maxArgLength:f,relative:C}),xt=Se&&!Q?DXe.dirname(Yt):a,Zr=vt.length;Zr>1&&kXe("Chunked staged files from `%s` into %d part",Yt,Zr);for(let[qt,Xt]of vt.entries()){let lr=await Promise.all(odi({config:Tr,cwd:xt,files:Xt,relative:C}).map(cr=>Kdi({commands:cr.commands,cwd:xt,files:cr.fileList,topLevelDir:ae,shell:b,verbose:B}).then(Ar=>{cr.fileList.forEach(_n=>{let ke=DXe.isAbsolute(_n)?_n:wG(DXe.join(xt,_n));Me.add(ke)}),De=De||Ar.some(_n=>_n.command==="git add");let qr=cr.fileList.length;return{title:`${cr.pattern}${fp.dim(` \u2014 ${qr} ${qr===1?"file":"files"}`)}`,task:async(_n,ke)=>ke.newListr(Ar,{concurrent:!1,exitOnError:!0}),skip:()=>qr===0?`${cr.pattern}${fp.dim(" \u2014 no files")}`:!1}})));et+=lr.length,ct.push({title:`${er}${fp.dim(` \u2014 ${Xt.length} ${Xt.length>1?"files":"file"}`)}`+(Zr>1?fp.dim(` (chunk ${qt+1}/${Zr})...`):""),task:(cr,Ar)=>Ar.newListr(lr,{concurrent:t,exitOnError:!0}),skip:()=>X.errors.has(QX)?qAi:lr.every(cr=>cr.skip())?`${er}${fp.dim(" \u2014 no tasks to run")}`:!1})}}if(De&&!I&&F.warn(zAi),ct.every(Yt=>Yt.skip()))return I||X.output.push(UAi),X;let je=RSr({baseDir:a,files:Array.from(Me),maxArgLength:f,relative:!1}),St=new w_t({allowEmpty:e,gitConfigDir:ne,topLevelDir:ae,matchedFileChunks:je,diff:l,diffFilter:A}),At=new y_t([{title:"Preparing lint-staged...",task:Yt=>St.prepare(Yt)},{title:"Hiding unstaged changes to partially staged files...",task:Yt=>St.hideUnstagedChanges(Yt),enabled:PSr},{title:`Running tasks for ${l?"changed":"staged"} files...`,task:(Yt,Tr)=>Tr.newListr(ct,{concurrent:t}),skip:()=>ct.every(Yt=>Yt.skip())},{title:"Applying modifications from tasks...",task:Yt=>St.applyModifications(Yt),skip:Ldi},{title:"Restoring unstaged changes to partially staged files...",task:Yt=>St.restoreUnstagedChanges(Yt),enabled:PSr,skip:Vdi},{title:"Reverting to original state because of errors...",task:Yt=>St.restoreOriginalState(Yt),enabled:Pdi,skip:Wdi},{title:"Cleaning up temporary files...",task:Yt=>St.cleanup(Yt),enabled:Odi,skip:Mdi}],k);if(kXe("Set max event listeners to the number of tasks: %i",et),X.events.setMaxListeners(et),await At.run(),X.errors.size>0)throw k0t(X);return X};var chi=Nt(uT(),1);import{constants as ohi}from"node:fs";import ahi from"node:fs/promises";import CLa from"node:path";var x0t=(0,chi.default)("lint-staged:validateOptions"),lhi=async(e={},t)=>{if(x0t("Validating options..."),typeof e.cwd=="string")try{let r=CLa.resolve(e.cwd);await ahi.access(r,ohi.F_OK)}catch(r){throw x0t("Failed to validate options: %o",e),t.error(vSr("cwd",e.cwd,r.message)),GSr}if(typeof e.shell=="string")try{await ahi.access(e.shell,ohi.X_OK)}catch(r){throw x0t("Failed to validate options: %o",e),t.error(vSr("shell",e.shell,r.message)),GSr}x0t("Validated options: %o",e)};var wBr=(0,uhi.default)("lint-staged"),_La=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},yLa=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f=_La()/2,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1}={},F=console)=>{let Q=await QZ(["version","--build-options"],{cwd:a});wBr("%s",Q);let X={allowEmpty:e,concurrent:t,configObject:r,configPath:n,cwd:a,debug:o,diff:l,diffFilter:A,maxArgLength:f,quiet:I,relative:C,shell:b,stash:E,hidePartiallyStaged:N,verbose:B};await lhi(X,F),wBr("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let ae=await shi(X,F);return wBr("Tasks were executed successfully!"),wSr(ae,F),!0}catch(ae){if(ae?.ctx?.errors){let{ctx:ne}=ae;return ne.errors.has(zQe)?F.error(XAi):ne.errors.has(Rae)?F.warn($Ai):ne.errors.has(QX)&&!ne.errors.has(v_t)&&(F.error(Tae),ne.shouldBackup&&F.error(edi)),wSr(ne,F),!1}throw ae}},ghi=yLa;var bLa=()=>{try{return Ahi("git rev-parse --show-toplevel",{encoding:"utf-8"}).trim()}catch{return process.cwd()}},ELa=e=>JSON.stringify(e),SLa=()=>process.env.npm_execpath||process.argv[1]||"yarn",vLa=(e=SLa())=>{let t=r=>`${ELa(e)} ${r}`;return{"*.{yml,yaml,json,graphql,md}":t("format"),"*.{js,mjs,cjs,jsx,ts,tsx}":[t("format"),t("lint")],"*.{ts,tsx}":t("typecheck"),"*.{test,spec}.{ts,tsx}":t("test unit")}},G0t=class extends dhi.BaseCommand{static paths=[["commit","staged"]];args=Su.Rest({required:0});async execute(){try{let t=8190;try{let n=parseInt(Ahi("getconf ARG_MAX",{encoding:"utf-8"}),10);t=Math.floor(n*.5)}catch{}return await ghi({config:vLa(),cwd:bLa(),maxArgLength:t})?0:1}catch{return 1}}};var phi={commands:[e_t,BCt,G0t]};var NBr={};sI(NBr,{SetVersionCommand:()=>xXe,default:()=>yhi});var Chi=Nt(el(),1),_hi=Nt(Sn(),1);$c();import{access as BLa}from"node:fs/promises";import{writeFile as wLa}from"node:fs/promises";import{dirname as TLa}from"node:path";import{join as Ihi}from"node:path";var RLa="package.json",NLa="yarn.lock",DLa="Package manifest was not found in current directory or its ancestors",fhi="/unc/",kLa=/^\/([A-Za-z]:)(?=\/|$)/,xLa=/^([A-Za-z]:)(?=\/|$)/,GLa=e=>{if(!e.toLowerCase().startsWith(fhi))return null;let[t,r,...n]=e.slice(fhi.length).split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},FLa=e=>{if(!e.startsWith("\\\\")&&!e.startsWith("//"))return null;let[t,r,...n]=e.slice(2).replace(/\\/g,"/").split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},F0t=(e,t=process.platform)=>{if(t!=="win32")return e;let r=GLa(e);if(r){let[n,a,o]=r;return`\\\\${n}\\${a}${o.replace(/\//g,"\\")}`}return e.replace(kLa,"$1").replace(/\//g,"\\")},ZLa=(e,t=process.platform)=>{if(t!=="win32")return e;let r=FLa(e);if(r){let[n,a,o]=r;return`/unc/${n}/${a}${o.replace(/\\/g,"/")}`}return e.replace(/\\/g,"/").replace(xLa,"/$1")},hhi=async e=>{try{return await BLa(e),!0}catch{return!1}},RBr=async e=>{let t=F0t(e);if(await hhi(Ihi(t,RLa)))return e;let r=ZLa(TLa(t));if(r===e)throw new Error(DLa);return RBr(r)},mhi=async e=>{let t=Ihi(F0t(e),NLa);await hhi(t)||await wLa(t,"")};var xXe=class extends Chi.BaseCommand{static paths=[["set","version","atls"]];static usage=_C.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=await RBr(this.context.cwd),r=process.cwd();await mhi(t);try{process.chdir(F0t(t));let n=["set","version"];n.push("https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs");let a=await this.cli.run(n,{cwd:t}),o=["up","@atls/code-runtime"],l=await this.cli.run(o,{cwd:t}),A=await _hi.Configuration.find(t,this.context.plugins);return await A.triggerHook(f=>f.afterYarnVersionSet,A,{...this.context,cwd:t}),a||l}finally{process.chdir(r)}}};var yhi={commands:[xXe]};var nTr={};sI(nTr,{WorkspaceExportCommand:()=>c4e,default:()=>Q_i});var P_i=Nt(el(),1),W_i=Nt(el(),1),O_i=Nt(Sn(),1),M_i=Nt(Sn(),1),H_i=Nt(Sn(),1),Y_i=Nt(Sn(),1);$c();var Z0t=Nt(ro(),1),GXe=Nt(ro(),1);var bhi=async(e,t,r)=>{let n=e.configuration.get("rcFilename"),a=GXe.ppath.join(e.cwd,n);await Z0t.xfs.existsPromise(a)&&(r.reportInfo(null,n),await Z0t.xfs.copyPromise(GXe.ppath.join(t,n),a,{overwrite:!0}))},Ehi=async(e,t,r)=>{let n=e.configuration.get("yarnPath");if(!n)throw new Error("`yarnPath` is not set");let a=GXe.ppath.relative(e.cwd,n),o=GXe.ppath.join(t,a);r.reportInfo(null,a),await Z0t.xfs.copyPromise(o,n,{overwrite:!0})};var ERe={};sI(ERe,{IMAGE_PACK_NODE_LINKER:()=>rTr,pack:()=>OOa,resolveSupportedArchitectures:()=>V_i});var tTr=Nt(Sn(),1),k_i=Nt(Sn(),1),x_i=Nt(Sn(),1),G_i=Nt(ro(),1),F_i=Nt(Sn(),1),Z_i=Nt(ro(),1),L_i=Nt($he(),1);import{arch as N_i}from"node:os";var lCi=Nt(Sn(),1),uCi=Nt(Sn(),1),gCi=Nt(ro(),1),ACi=Nt(ro(),1),dCi=Nt(ro(),1),hwr=Nt(Sn(),1),mwr=Nt(ro(),1),pCi=Nt(ro(),1),oyt=class e extends lCi.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let n=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:n,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:n,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=n,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(hwr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await pCi.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let n;r.isDirectory()||!(n=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(n[1],mwr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:n}){let a=new ACi.NodeFS,o=async()=>{let l=mwr.ppath.resolve(this.cwd,"../workspaces",hwr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(l)){let C=await n();await a.copyPromise(l,dCi.PortablePath.root,{baseFs:C}),C.discardAndClose()}return l})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(uCi.WorkspaceResolver.protocol)){for(let A;A=this.workspaceMutexes.get(t.locatorHash);)await A;let l=await o();return[new gCi.JailFS(l,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:n})}};var E_i=Nt(Sn(),1),S_i=Nt(Sn(),1);var v_i=Nt(Sn(),1),zwr=Nt(ro(),1),ame=Nt(ro(),1),qwr=Nt($he(),1),FOa=Nt(I_i(),1);var Uwr=Nt(Sn(),1),myt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${Uwr.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${Uwr.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};var m_i=Nt(Sn(),1),Cyt=Nt(Sn(),1),C_i=Nt(UC(),1),h_i=/^(?!v)[a-z0-9._-]+$/i,_yt=class{supportsDescriptor(t,r){return!!(m_i.semverUtils.validRange(t.range)||h_i.test(t.range))}supportsLocator(t,r){return!!(C_i.default.valid(t.reference)||h_i.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,n){return n.resolver.bindDescriptor(this.forwardDescriptor(t,n),r,n)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,n){return n.resolver.getCandidates(this.forwardDescriptor(t,n),r,n)}async getSatisfying(t,r,n,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,n,a)}async resolve(t,r){let n=await r.resolver.resolve(this.forwardLocator(t,r),r);return Cyt.structUtils.renamePackage(n,t)}forwardDescriptor(t,r){return Cyt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return Cyt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var yyt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var Kwr=Nt(Sn(),1),__i=Nt(Sn(),1),y_i=Nt(ro(),1);var byt=class extends __i.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,n){return super.getLocalPath(r,this.rewriteOpts(r,n))}async fetch(r,n){if(r.reference.slice(Kwr.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,n);let a=n.checksums.get(r.locatorHash)||null,[o,l]=await n.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:l,localPath:this.getLocalPath(r,n),prefixPath:y_i.PortablePath.dot}}async packWorkspace(r){let n=this.originalProject.getWorkspaceByLocator(r);return await b_i(n,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,n){return r.reference.slice(Kwr.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var jwr=Nt(Sn(),1),Eyt=Nt(Sn(),1),Syt=class extends Eyt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,n){return super.supportsDescriptor(r,this.rewriteOpts(r,n))}supportsLocator(r,n){return super.supportsLocator(r,this.rewriteOpts(r,n))}shouldPersistResolution(r,n){return super.shouldPersistResolution(r,this.rewriteOpts(r,n))}bindDescriptor(r,n,a){return super.bindDescriptor(r,n,this.rewriteOpts(r,a))}getResolutionDependencies(r,n){return super.getResolutionDependencies(r,this.rewriteOpts(r,n))}async getCandidates(r,n,a){return await super.getCandidates(r,n,this.rewriteOpts(r,a))}async getSatisfying(r,n,a){return await super.getSatisfying(r,n,this.rewriteOpts(r,a))}async resolve(r,n){let a=r.reference.slice(Eyt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,n),l=o.getWorkspaceByCwd(a);return{...r,version:l.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?jwr.LinkType.SOFT:jwr.LinkType.HARD,dependencies:l.manifest.dependencies,peerDependencies:l.manifest.peerDependencies,dependenciesMeta:l.manifest.dependenciesMeta,peerDependenciesMeta:l.manifest.peerDependenciesMeta,bin:l.manifest.bin}}rewriteOpts(r,n){return("descriptorHash"in r?r.range:r.reference).slice(Eyt.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var B_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new S_i.MultiFetcher([new E_i.VirtualFetcher,new byt(e),...t])},w_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new myt([new yyt,new Syt(e),new _yt,...t])};var T_i=async e=>{let t=await ame.xfs.mktempPromise(),r=await qwr.packUtils.genPackStream(e),n=zwr.ppath.join(t,"package.tgz"),a=ame.xfs.createWriteStream(n);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),ame.xfs.readFilePromise(n)},b_i=async(e,t)=>await ame.xfs.mktempPromise(async r=>{let n=await qwr.packUtils.genPackStream(e),a=zwr.ppath.join(r,"package.tgz"),o=ame.xfs.createWriteStream(a);n.pipe(o),await new Promise(A=>{o.on("finish",A)});let l=await ame.xfs.readFilePromise(a);return await v_i.tgzUtils.convertToZip(l,t)});var $wr=Nt(ro(),1),eTr=Nt(ro(),1),R_i=async e=>{let t=$wr.ppath.join(e,".yarn","releases");if(!await eTr.xfs.existsPromise(t))return;let r=(await eTr.xfs.readdirPromise(t)).sort().find(n=>n.endsWith(".cjs")||n.endsWith(".mjs"));if(r)return $wr.ppath.join(".yarn","releases",r)};var ZOa="linux",LOa="glibc",rTr="pnp",VOa={386:"ia32",amd64:"x64",mips64le:"mips64el",ppc64le:"ppc64"},POa={windows:"win32"},D_i=e=>{if(e)return VOa[e]??e},WOa=e=>POa[e]??e,V_i=e=>{let[t,r]=e?.split("/").slice(0,2)??[],n=WOa(t||ZOa);return new Map([["os",[n]],["cpu",[D_i(r)??D_i(N_i())??N_i()]],["libc",n==="linux"?[LOa]:[]]])},OOa=async(e,t,r,n,a,o={})=>{process.env.IMAGE_PACK=!0;let l=await x_i.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await L_i.packUtils.prepareForPack(r,{report:n},async()=>{r.manifest.devDependencies.clear();let A=new G_i.CwdFS(a),f=await T_i(r);await F_i.tgzUtils.extractArchiveTo(f,A,{stripComponents:1}),await bhi(t,a,n),t.configuration.get("yarnPath")&&await Ehi(t,a,n);let I=tTr.Configuration.create(a,a,e.plugins);I.values.set("compressionLevel",t.configuration.get("compressionLevel")),I.values.set("enableGlobalCache",!1),I.values.set("enableMirror",!1),I.values.set("globalFolder",e.get("globalFolder")),I.values.set("nodeLinker",rTr),I.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),o.platform&&I.values.set("supportedArchitectures",V_i(o.platform)),I.values.set("cacheFolder",Z_i.ppath.join(a,".yarn/packages")),I.values.set("preferAggregateCacheInfo",!0),await tTr.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:I.get("compressionLevel"),enableGlobalCache:I.get("enableGlobalCache"),enableNetwork:I.get("enableNetwork"),enableMirror:I.get("enableMirror"),globalFolder:".yarn/berry",nodeLinker:rTr,yarnPath:await R_i(a)}),await I.getPackageExtensions();let{project:C,workspace:b}=await k_i.Project.find(I,a);if(!b)throw new Error("Workspace not found");b.manifest.dependencies=r.manifest.dependencies,b.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,b.manifest.devDependencies.clear(),await C.install({cache:await oyt.find(I,l),fetcher:B_i(t),resolver:w_i(t),persistProject:!0,report:n})})};var MOa=Nt($he(),1);var c4e=class extends P_i.BaseCommand{static paths=[["export"]];destination=Su.String("-d,--destination",{required:!0});async execute(){let t=await O_i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await M_i.Project.find(t,this.context.cwd);if(!n)throw new W_i.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await H_i.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await ERe.pack(t,r,n,o,this.destination),o.reportInfo(null,`Workspace ${n.manifest.name?Y_i.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var Q_i={commands:[c4e]};var kkr={};sI(kkr,{FormatCommand:()=>eUe,default:()=>HNi});var PNi=Nt(el(),1),WNi=Nt(Sn(),1),ONi=Nt(Sn(),1);$c();var MNi=Nt(Al(),1);var xyt=Nt(Al(),1),s0i=Nt(Al(),1);var vyt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var X_i=Nt(Fpt(),1);var J_i=e=>{let t=e.split(` -`),r=process.cwd(),n=new X_i.default({cwd:r}),a=t.reduce((o,l)=>{let A=n.parseLine(l.trim());return A&&o.push(A),o},[]);return new vyt(a)};var i0i=Nt(Al(),1),BRe=Nt(Al(),1);var Dyt=Nt(Ec(),1);var t0i=Nt(Al(),1),Ryt=Nt(Ec(),1);import{basename as QOa}from"node:path";import{isAbsolute as XOa}from"node:path";import{relative as JOa}from"node:path";var sTr=Nt(Ec(),1),Tyt=Nt(Al(),1),lme=Nt(hTe(),1);var yy="\x1B[",l4e="\x1B]",SRe="\x07",Byt=";",U_i=process.env.TERM_PROGRAM==="Apple_Terminal",SC={};SC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?yy+(e+1)+"G":yy+(t+1)+";"+(e+1)+"H"};SC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=yy+-e+"D":e>0&&(r+=yy+e+"C"),t<0?r+=yy+-t+"A":t>0&&(r+=yy+t+"B"),r};SC.cursorUp=(e=1)=>yy+e+"A";SC.cursorDown=(e=1)=>yy+e+"B";SC.cursorForward=(e=1)=>yy+e+"C";SC.cursorBackward=(e=1)=>yy+e+"D";SC.cursorLeft=yy+"G";SC.cursorSavePosition=U_i?"\x1B7":yy+"s";SC.cursorRestorePosition=U_i?"\x1B8":yy+"u";SC.cursorGetPosition=yy+"6n";SC.cursorNextLine=yy+"E";SC.cursorPrevLine=yy+"F";SC.cursorHide=yy+"?25l";SC.cursorShow=yy+"?25h";SC.eraseLines=e=>{let t="";for(let r=0;r[l4e,"8",Byt,Byt,t,SRe,e,l4e,"8",Byt,Byt,SRe].join("");SC.image=(e,t={})=>{let r=`${l4e}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+SRe};SC.iTerm={setCwd:(e=process.cwd())=>`${l4e}50;CurrentDir=${e}${SRe}`,annotation:(e,t={})=>{let r=`${l4e}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+SRe}};var K_i=SC;var wyt=Nt(q_i(),1);function cme(e,t,{target:r="stdout",...n}={}){return wyt.default[r]?K_i.link(e,t):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,t):`${e} (\u200B${t}\u200B)`}cme.isSupported=wyt.default.stdout;cme.stderr=(e,t,r={})=>cme(e,t,{target:"stderr",...r});cme.stderr.isSupported=wyt.default.stderr;var $_i=({children:e,url:t,fallback:r=!0})=>sTr.default.createElement(Tyt.Transform,{transform:n=>cme(n,t,{fallback:r})},sTr.default.createElement(Tyt.Text,null,e));$_i.propTypes={children:lme.default.oneOfType([lme.default.arrayOf(lme.default.node),lme.default.node]).isRequired,url:lme.default.string.isRequired,fallback:lme.default.bool};var e0i=$_i;var Nyt=Nt(Pc(),1),r0i=({url:e,cwd:t=process.cwd(),column:r=0,line:n=0})=>{let a=(0,Ryt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,Ryt.useMemo)(()=>XOa(a)?JOa(t,a):a,[a]),l=(0,Ryt.useMemo)(()=>o.includes("/node_modules/")?QOa(o):o,[o]);return(0,Nyt.jsx)(e0i,{url:e,children:(0,Nyt.jsxs)(t0i.Text,{color:"gray",children:[l,":",n,":",r]})})};import{readFileSync as UOa}from"node:fs";import{fileURLToPath as KOa}from"node:url";var n0i=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return UOa(e.file.startsWith("file:/")?KOa(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var ej=Nt(Pc(),1),kyt=({children:e,cwd:t})=>{let r=(0,Dyt.useMemo)(()=>J_i(e),[e]),n=(0,Dyt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,Dyt.useMemo)(()=>n?n0i(n):null,[n]);return(0,ej.jsxs)(BRe.Box,{flexDirection:"column",flexGrow:1,children:[!!a&&!!r.topFrame?.line&&(0,ej.jsx)(BRe.Box,{marginBottom:1,children:(0,ej.jsx)(d8,{line:r.topFrame.line,column:r.topFrame.column,children:a})}),r.frames.map(o=>(0,ej.jsxs)(BRe.Box,{flexDirection:"row",children:[(0,ej.jsx)(BRe.Box,{flexBasis:"30%",children:(0,ej.jsx)(i0i.Text,{children:o.function})}),(0,ej.jsx)(BRe.Box,{flexBasis:"70%",justifyContent:"flex-end",children:!!o.file&&(0,ej.jsx)(r0i,{cwd:t,url:o.file,line:o.line,column:o.column})})]},OW()))]})};var zae=Nt(Pc(),1),jOa=({children:e})=>e?(0,zae.jsx)(xyt.Box,{marginBottom:1,children:(0,zae.jsx)(s0i.Text,{bold:!0,color:"red",children:e})}):null,Fk=({error:e,cwd:t})=>(0,zae.jsxs)(xyt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,children:[(0,zae.jsx)(jOa,{children:e.message}),!!e.stack&&(0,zae.jsx)(xyt.Box,{children:(0,zae.jsx)(kyt,{cwd:t,children:e.stack})})]});var h4e=Nt(Al(),1),Q0i=Nt(Ec(),1),X0i=Nt(Ec(),1);var aTr=Nt(Al(),1),cTr=Nt(Ec(),1);var g4e=Nt(Ec(),1),v3a=Nt(oTr(),1);var l0i={info:"blue",success:"green",error:"red",warning:"yellow"},u3a={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:l0i[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:l0i[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=kI.info),e==="success"&&(t=kI.tick),e==="error"&&(t=kI.cross),e==="warning"&&(t=kI.warning),{icon:t}}},u0i=u3a;var g3a={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},g0i=g3a;var A3a={styles:{input:({isFocused:e})=>({dimColor:!e})}},A0i=A3a;var d3a={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},d0i=d3a;var p3a={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},p0i=p3a;var f3a={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:kI.square,remainingCharacter:kI.squareLightShade})},f0i=f3a;var I3a={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},I0i=I3a;var h3a={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},h0i=h3a;var m3a={success:"green",error:"red",warning:"yellow",info:"blue"},C3a={success:kI.tick,error:kI.cross,warning:kI.warning,info:kI.info},_3a={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:m3a[e]}),message:()=>({})},config:({variant:e})=>({icon:C3a[e]})},m0i=_3a;var y3a={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:kI.line})},C0i=y3a;var b3a={styles:{value:()=>({})}},_0i=b3a;var E3a={styles:{value:()=>({})}},y0i=E3a;var S3a={styles:{value:()=>({})}},b0i=S3a;var B3a={components:{Alert:u0i,Badge:g0i,ConfirmInput:A0i,MultiSelect:d0i,OrderedList:p0i,ProgressBar:f0i,Select:I0i,Spinner:h0i,StatusMessage:m0i,UnorderedList:C0i,TextInput:_0i,EmailInput:y0i,PasswordInput:b0i}},w3a=(0,g4e.createContext)(B3a);var xS=e=>(0,g4e.useContext)(w3a).components[e];function RG({children:e,color:t="magenta"}){let{styles:r}=xS("Badge"),n=e;return typeof e=="string"&&(n=e.toUpperCase()),cTr.default.createElement(aTr.Text,{...r.container({color:t})}," ",cTr.default.createElement(aTr.Text,{...r.label()},n)," ")}var T3a=Nt(Ec(),1),E0i=Nt(Al(),1);var w0i=Nt(Al(),1),cee=Nt(Ec(),1);var d4e=Nt(Al(),1),TRe=Nt(Ec(),1);var S0i=Nt(Ec(),1);var A4e=kI.line;var Gyt=(0,S0i.createContext)({marker:A4e});function v0i({children:e}){let{marker:t}=(0,TRe.useContext)(Gyt),{styles:r}=xS("UnorderedList");return TRe.default.createElement(d4e.Box,{...r.listItem()},TRe.default.createElement(d4e.Text,{...r.marker()},t),TRe.default.createElement(d4e.Box,{...r.content()},e))}var B0i=Nt(Ec(),1),lTr=(0,B0i.createContext)({depth:0});function R3a({children:e}){let{depth:t}=(0,cee.useContext)(lTr),{styles:r,config:n}=xS("UnorderedList"),a=(0,cee.useMemo)(()=>({depth:t+1}),[t]),o=(0,cee.useMemo)(()=>{let{marker:l}=n();return typeof l=="string"?{marker:l}:Array.isArray(l)?{marker:l[t]??l.at(-1)??A4e}:{marker:A4e}},[n,t]);return cee.default.createElement(lTr.Provider,{value:a},cee.default.createElement(Gyt.Provider,{value:o},cee.default.createElement(w0i.Box,{...r.list()},e)))}R3a.Item=v0i;var x3a=Nt(Ec(),1),R0i=Nt(Al(),1);var N3a=Nt(Ec(),1),T0i=Nt(Al(),1);var p4e=Nt(Ec(),1);var k3a=Nt(Al(),1);var ume=Nt(Ec(),1),gme=Nt(Al(),1);function JM({value:e}){let[t,r]=(0,ume.useState)(0),[n,a]=(0,ume.useState)(null);if(n){let C=(0,gme.measureElement)(n);C.width!==t&&r(C.width)}let o=Math.min(100,Math.max(0,e)),l=Math.round(o/100*t),A=t-l,{styles:f,config:I}=xS("ProgressBar");return ume.default.createElement(gme.Box,{ref:a,...f.container()},l>0&&ume.default.createElement(gme.Text,{...f.completed()},I().completedCharacter.repeat(l)),A>0&&ume.default.createElement(gme.Text,{...f.remaining()},I().remainingCharacter.repeat(A)))}var Z3a=Nt(Ec(),1),D0i=Nt(Al(),1);var G3a=Nt(Ec(),1),N0i=Nt(Al(),1);var f4e=Nt(Ec(),1);var F3a=Nt(Al(),1);var L3a=Nt(Ec(),1),x0i=Nt(Al(),1);var k0i=Nt(Ec(),1);var W3a=Nt(Ec(),1),O3a=Nt(Al(),1);var Fyt=Nt(Ec(),1);var V3a=Nt(Ec(),1),P3a=Nt(Al(),1);var lBu=fp.inverse(" ");var Z0i=Nt(Al(),1),jX=Nt(Ec(),1);var I4e=Nt(Al(),1),RRe=Nt(Ec(),1);var G0i=Nt(Ec(),1);var Zyt=(0,G0i.createContext)({marker:kI.line});function Lyt({children:e}){let{marker:t}=(0,RRe.useContext)(Zyt),{styles:r}=xS("OrderedList");return RRe.default.createElement(I4e.Box,{...r.listItem()},RRe.default.createElement(I4e.Text,{...r.marker()},t),RRe.default.createElement(I4e.Box,{...r.content()},e))}var F0i=Nt(Ec(),1),uTr=(0,F0i.createContext)({marker:""});function M3a({children:e}){let{marker:t}=(0,jX.useContext)(uTr),{styles:r}=xS("OrderedList"),n=0;for(let o of jX.default.Children.toArray(e))!(0,jX.isValidElement)(o)||o.type!==Lyt||n++;let a=String(n).length;return jX.default.createElement(Z0i.Box,{...r.list()},jX.default.Children.map(e,(o,l)=>{if(!(0,jX.isValidElement)(o)||o.type!==Lyt)return o;let A=`${String(l+1).padStart(a)}.`,f=`${t}${A}`;return jX.default.createElement(uTr.Provider,{value:{marker:f}},jX.default.createElement(Zyt.Provider,{value:{marker:f}},o))}))}M3a.Item=Lyt;var Q3a=Nt(Ec(),1),X3a=Nt(Al(),1);var gTr=Nt(Ec(),1);var H3a=Nt(Ec(),1),Y3a=Nt(Al(),1);var GBu=fp.inverse(" ");var J3a=Nt(Ec(),1),L0i=Nt(Al(),1);var U3a=Nt(Ec(),1),V0i=Nt(Al(),1);var z3a=Nt(Ec(),1),q3a=Nt(Al(),1);var Vyt=Nt(Ec(),1);var K3a=Nt(Ec(),1),j3a=Nt(Al(),1);var ewu=fp.inverse(" ");var P0i=Nt(Ec(),1),ATr=Nt(Ec(),1),O0i=Nt(Pc(),1),W0i=({formatter:e})=>{let[t,r]=(0,ATr.useState)(0),[n,a]=(0,ATr.useState)(0);return(0,P0i.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("format:end",l),e.on("end",A),()=>{e.off("start",o),e.off("format:end",l),e.off("end",A)}},[e,t,r,a]),(0,O0i.jsx)(JM,{value:t>0?n/t*100:0})};import{relative as M0i}from"node:path";var NRe=Nt(Al(),1),AO=Nt(Al(),1),H0i=Nt(Ec(),1),Pyt=Nt(Ec(),1);var GS=Nt(Pc(),1),$3a=({changed:e})=>e?(0,GS.jsx)(AO.Text,{color:"green",children:kI.tick}):(0,GS.jsx)(AO.Text,{color:"white",children:kI.circleDotted}),e5a=({changed:e,children:t})=>e?(0,GS.jsx)(AO.Text,{color:"white",children:t}):(0,GS.jsx)(AO.Text,{color:"gray",children:t}),Y0i=({cwd:e,formatter:t})=>{let[r,n]=(0,Pyt.useState)(void 0),[a,o]=(0,Pyt.useState)(0),[l,A]=(0,Pyt.useState)(0);return(0,H0i.useEffect)(()=>{let f=b=>{o(b.files.length)},I=b=>{n({changed:!1,file:M0i(e,b.file)})},C=b=>{n({changed:b.changed,file:M0i(e,b.file)}),b.changed&&A(E=>E+1)};return t.on("start",f),t.on("format:start",I),t.on("format:end",C),()=>{t.off("start",f),t.off("format:start",I),t.off("format:end",C)}},[t,n,o,A]),r?(0,GS.jsxs)(NRe.Box,{flexDirection:"row",width:"100%",children:[(0,GS.jsxs)(NRe.Box,{flexGrow:1,children:[(0,GS.jsx)(RG,{color:"cyan",children:"Format:"}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsx)(e5a,{changed:r.changed,children:r.file})]}),(0,GS.jsx)(NRe.Box,{flexDirection:"row",children:(0,GS.jsxs)(NRe.Box,{children:[(0,GS.jsx)($3a,{changed:r.changed}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsxs)(AO.Text,{color:"green",children:[l," Formatted"]}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsxs)(AO.Text,{color:"white",children:[a," Files"]}),(0,GS.jsx)(AO.Text,{children:" "})]})})]}):(0,GS.jsxs)(NRe.Box,{flexDirection:"row",children:[(0,GS.jsx)(RG,{color:"cyan",children:"Format:"}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsx)(AO.Text,{color:"white",children:"Loading files..."})]})};var qae=Nt(Pc(),1),J0i=({cwd:e,formatter:t})=>{let[r,n]=(0,Q0i.useState)(!1);return(0,X0i.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,qae.jsx)(h4e.Box,{position:"relative",height:7,children:(0,qae.jsxs)(h4e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,qae.jsx)(h4e.Box,{children:(0,qae.jsx)(Y0i,{cwd:e,formatter:t})}),(0,qae.jsx)(h4e.Box,{marginTop:1,marginBottom:1,children:(0,qae.jsx)(W0i,{formatter:t})})]})})};import Hgc from"node:events";import{writeFile as Ygc}from"node:fs/promises";import{readFile as LNi}from"node:fs/promises";import{relative as Qgc}from"node:path";import{join as Xgc}from"node:path";var GRe={};sI(GRe,{default:()=>pMa,parsers:()=>xRe});var t5a=Object.create,mTr=Object.defineProperty,r5a=Object.getOwnPropertyDescriptor,n5a=Object.getOwnPropertyNames,i5a=Object.getPrototypeOf,s5a=Object.prototype.hasOwnProperty,o5a=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),a5a=(e,t)=>{for(var r in t)mTr(e,r,{get:t[r],enumerable:!0})},c5a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of n5a(t))!s5a.call(e,a)&&a!==r&&mTr(e,a,{get:()=>t[a],enumerable:!(n=r5a(t,a))||n.enumerable});return e},syi=(e,t,r)=>(r=e!=null?t5a(i5a(e)):{},c5a(t||!e||!e.__esModule?mTr(r,"default",{value:e,enumerable:!0}):r,e)),oyi=o5a(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(se,O){if(se==null)return{};var K={};for(var we in se)if({}.hasOwnProperty.call(se,we)){if(O.includes(we))continue;K[we]=se[we]}return K}var r=class{constructor(se,O,K){this.line=void 0,this.column=void 0,this.index=void 0,this.line=se,this.column=O,this.index=K}},n=class{constructor(se,O){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=se,this.end=O}};function a(se,O){let{line:K,column:we,index:gt}=se;return new r(K,we+O,gt+O)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",l={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},A={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},f=se=>se.type==="UpdateExpression"?A.UpdateExpression[`${se.prefix}`]:A[se.type],I={AccessorIsGenerator:({kind:se})=>`A ${se}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:se})=>`Missing initializer in ${se} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:se})=>`\`${se}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:se})=>`'import.${se}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:se,exportName:O})=>`A string literal cannot be used as an exported binding without \`from\`. +`);throw r.error(NSr(t,o)),new Error(o)}return NBr("Validated config from `%s`:",t),NBr(NLa(e,{compact:!1})),a},kXe=(e,t,r)=>{try{return DLa(e,t,r)}catch(n){throw r.error(NSr(t,n)),n}};var nee=(0,lhi.default)("lint-staged:searchConfigs"),ohi=["ls-files","-z","--full-name","-t"],kLa=e=>T0t.includes(chi.basename(e)),ahi=e=>e.split("/").length,xLa=(e,t)=>ahi(e)>ahi(t)?-1:1,GLa=e=>t=>t.startsWith(wG(e)),uhi=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:n=r},a)=>{if(nee("Searching for configuration files..."),e)return nee("Using single direct configuration object..."),{"":kXe(e,"config object",a)};if(t){nee("Using single configuration path...");let{config:C,filepath:b}=await x0t({configPath:t},a);return C?{[t]:kXe(C,b,a)}:{}}let[o,l]=await Promise.all([QZ(ohi,{cwd:n}).then(zQe),QZ([...ohi,"--others","--exclude-standard"],{cwd:n}).then(zQe)]),A=[...o,...l].flatMap(C=>C.startsWith("S ")?[]:[C.replace(/^[HSMRCK?U] /,"")]).filter(kLa).map(C=>wG(chi.join(n,C))).filter(GLa(r)).sort(xLa);nee("Found possible config files:",A);let f=A.reduce((C,b)=>Object.assign(C,{[b]:null}),{});await Promise.all(Object.keys(f).map(C=>x0t({configPath:C},a).then(({config:b,filepath:E})=>{b&&(C!==E&&nee('Config file "%s" resolved to "%s"',C,E),f[C]=kXe(b,E,a))})));let I=Object.entries(f).filter(([,C])=>!!C).reduce((C,[b,E])=>({...C,[b]:E}),{});if(!Object.keys(I).length){nee('Could not find config files inside "%s"',r);let{config:C,filepath:b}=await x0t({cwd:r},a);C?(nee('Found parent configuration file from "%s"',b),I[b]=kXe(C,b,a)):nee('Could not find parent configuration files from "%s"',r)}return nee("Found %d config files",Object.keys(I).length),I};var GXe=(0,ghi.default)("lint-staged:runAll"),G0t=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),Ahi=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1},F=console)=>{GXe("Running all linter scripts...");let Q=!!a;a=Q?xXe.resolve(a):process.cwd(),GXe("Using working directory `%s`",a);let X=D_t({quiet:I}),{topLevelDir:ae,gitConfigDir:ne}=await ipi(a);if(!ae)throw I||X.output.push(jAi),X.errors.add(_di),G0t(X);let ce=await QZ(["log","-1"],{cwd:ae}).then(()=>!0).catch(()=>!1);X.shouldBackup=ce&&E,!X.shouldBackup&&!I&&F.warn(rdi(ce,l)),X.shouldHidePartiallyStaged=N,!X.shouldHidePartiallyStaged&&!I&&F.warn(ndi(ce&&E,l));let fe=await Idi({cwd:ae,diff:l,diffFilter:A});if(!fe)throw I||X.output.push(zAi),X.errors.add(LSr),G0t(X,LSr);if(GXe(`Loaded list of staged files in git: +%O`,fe),fe.length===0)return I||X.output.push(edi),X;let ue=await uhi({configObject:r,configPath:n,cwd:a,topLevelDir:ae},F),de=Object.keys(ue).length;if(de===0)throw X.errors.add($Qe),G0t(X,$Qe);let be=await Rdi({configs:ue,files:fe,singleConfigMode:r||n!==void 0}),Se=de>1,De=!1,k={ctx:X,exitOnError:!1,registerSignalListeners:!1,...fdi({debug:o,quiet:I},F)},et=0,ct=[],Me=new Set;for(let[Yt,{config:Tr,files:Nr}]of Object.entries(be)){let er=Yt?wG(xXe.relative(a,Yt)):"Config object",vt=xSr({baseDir:ae,files:Nr,maxArgLength:f,relative:C}),xt=Se&&!Q?xXe.dirname(Yt):a,Zr=vt.length;Zr>1&&GXe("Chunked staged files from `%s` into %d part",Yt,Zr);for(let[qt,Xt]of vt.entries()){let lr=await Promise.all(ddi({config:Tr,cwd:xt,files:Xt,relative:C}).map(cr=>rpi({commands:cr.commands,cwd:xt,files:cr.fileList,topLevelDir:ae,shell:b,verbose:B}).then(Ar=>{cr.fileList.forEach(_n=>{let ke=xXe.isAbsolute(_n)?_n:wG(xXe.join(xt,_n));Me.add(ke)}),De=De||Ar.some(_n=>_n.command==="git add");let qr=cr.fileList.length;return{title:`${cr.pattern}${fp.dim(` \u2014 ${qr} ${qr===1?"file":"files"}`)}`,task:async(_n,ke)=>ke.newListr(Ar,{concurrent:!1,exitOnError:!0}),skip:()=>qr===0?`${cr.pattern}${fp.dim(" \u2014 no files")}`:!1}})));et+=lr.length,ct.push({title:`${er}${fp.dim(` \u2014 ${Xt.length} ${Xt.length>1?"files":"file"}`)}`+(Zr>1?fp.dim(` (chunk ${qt+1}/${Zr})...`):""),task:(cr,Ar)=>Ar.newListr(lr,{concurrent:t,exitOnError:!0}),skip:()=>X.errors.has(QX)?sdi:lr.every(cr=>cr.skip())?`${er}${fp.dim(" \u2014 no tasks to run")}`:!1})}}if(De&&!I&&F.warn(idi),ct.every(Yt=>Yt.skip()))return I||X.output.push(tdi),X;let je=xSr({baseDir:a,files:Array.from(Me),maxArgLength:f,relative:!1}),St=new R_t({allowEmpty:e,gitConfigDir:ne,topLevelDir:ae,matchedFileChunks:je,diff:l,diffFilter:A}),At=new E_t([{title:"Preparing lint-staged...",task:Yt=>St.prepare(Yt)},{title:"Hiding unstaged changes to partially staged files...",task:Yt=>St.hideUnstagedChanges(Yt),enabled:HSr},{title:`Running tasks for ${l?"changed":"staged"} files...`,task:(Yt,Tr)=>Tr.newListr(ct,{concurrent:t}),skip:()=>ct.every(Yt=>Yt.skip())},{title:"Applying modifications from tasks...",task:Yt=>St.applyModifications(Yt),skip:Ydi},{title:"Restoring unstaged changes to partially staged files...",task:Yt=>St.restoreUnstagedChanges(Yt),enabled:HSr,skip:Qdi},{title:"Reverting to original state because of errors...",task:Yt=>St.restoreOriginalState(Yt),enabled:Xdi,skip:Jdi},{title:"Cleaning up temporary files...",task:Yt=>St.cleanup(Yt),enabled:Udi,skip:Kdi}],k);if(GXe("Set max event listeners to the number of tasks: %i",et),X.events.setMaxListeners(et),await At.run(),X.errors.size>0)throw G0t(X);return X};var fhi=Nt(uT(),1);import{constants as dhi}from"node:fs";import phi from"node:fs/promises";import FLa from"node:path";var F0t=(0,fhi.default)("lint-staged:validateOptions"),Ihi=async(e={},t)=>{if(F0t("Validating options..."),typeof e.cwd=="string")try{let r=FLa.resolve(e.cwd);await phi.access(r,dhi.F_OK)}catch(r){throw F0t("Failed to validate options: %o",e),t.error(RSr("cwd",e.cwd,r.message)),VSr}if(typeof e.shell=="string")try{await phi.access(e.shell,dhi.X_OK)}catch(r){throw F0t("Failed to validate options: %o",e),t.error(RSr("shell",e.shell,r.message)),VSr}F0t("Validated options: %o",e)};var DBr=(0,hhi.default)("lint-staged"),ZLa=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},LLa=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f=ZLa()/2,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1}={},F=console)=>{let Q=await QZ(["version","--build-options"],{cwd:a});DBr("%s",Q);let X={allowEmpty:e,concurrent:t,configObject:r,configPath:n,cwd:a,debug:o,diff:l,diffFilter:A,maxArgLength:f,quiet:I,relative:C,shell:b,stash:E,hidePartiallyStaged:N,verbose:B};await Ihi(X,F),DBr("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let ae=await Ahi(X,F);return DBr("Tasks were executed successfully!"),DSr(ae,F),!0}catch(ae){if(ae?.ctx?.errors){let{ctx:ne}=ae;return ne.errors.has($Qe)?F.error($Ai):ne.errors.has(Nae)?F.warn(odi):ne.errors.has(QX)&&!ne.errors.has(w_t)&&(F.error(Rae),ne.shouldBackup&&F.error(adi)),DSr(ne,F),!1}throw ae}},mhi=LLa;var VLa=()=>{try{return Chi("git rev-parse --show-toplevel",{encoding:"utf-8"}).trim()}catch{return process.cwd()}},PLa=e=>JSON.stringify(e),WLa=()=>process.env.npm_execpath||process.argv[1]||"yarn",OLa=(e=WLa())=>{let t=r=>`${PLa(e)} ${r}`;return{"*.{yml,yaml,json,graphql,md}":t("format"),"*.{js,mjs,cjs,jsx,ts,tsx}":[t("format"),t("lint")],"*.{ts,tsx}":t("typecheck"),"*.{test,spec}.{ts,tsx}":t("test unit")}},Z0t=class extends _hi.BaseCommand{static paths=[["commit","staged"]];args=Su.Rest({required:0});async execute(){try{let t=8190;try{let n=parseInt(Chi("getconf ARG_MAX",{encoding:"utf-8"}),10);t=Math.floor(n*.5)}catch{}return await mhi({config:OLa(),cwd:VLa(),maxArgLength:t})?0:1}catch{return 1}}};var yhi={commands:[r_t,TCt,Z0t]};var FBr={};sI(FBr,{SetVersionCommand:()=>FXe,default:()=>Zhi});var Fhi=Nt(el(),1),L0t=Nt(yn(),1);$c();var Nhi=Nt(yn(),1),GBr=Nt(yn(),1);import{createHash as $La}from"node:crypto";import{mkdir as e9a}from"node:fs/promises";import{readFile as t9a}from"node:fs/promises";import{writeFile as r9a}from"node:fs/promises";import{dirname as n9a}from"node:path";import{isAbsolute as i9a}from"node:path";import{join as Rhi}from"node:path";import{access as MLa}from"node:fs/promises";import{writeFile as HLa}from"node:fs/promises";import{dirname as YLa}from"node:path";import{join as Ehi}from"node:path";var QLa="package.json",XLa="yarn.lock",JLa="Package manifest was not found in current directory or its ancestors",bhi="/unc/",ULa=/^\/([A-Za-z]:)(?=\/|$)/,KLa=/^([A-Za-z]:)(?=\/|$)/,jLa=e=>{if(!e.toLowerCase().startsWith(bhi))return null;let[t,r,...n]=e.slice(bhi.length).split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},zLa=e=>{if(!e.startsWith("\\\\")&&!e.startsWith("//"))return null;let[t,r,...n]=e.slice(2).replace(/\\/g,"/").split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},iee=(e,t=process.platform)=>{if(t!=="win32")return e;let r=jLa(e);if(r){let[n,a,o]=r;return`\\\\${n}\\${a}${o.replace(/\//g,"\\")}`}return e.replace(ULa,"$1").replace(/\//g,"\\")},qLa=(e,t=process.platform)=>{if(t!=="win32")return e;let r=zLa(e);if(r){let[n,a,o]=r;return`/unc/${n}/${a}${o.replace(/\\/g,"/")}`}return e.replace(/\\/g,"/").replace(KLa,"/$1")},Shi=async e=>{try{return await MLa(e),!0}catch{return!1}},xBr=async e=>{let t=iee(e);if(await Shi(Ehi(t,QLa)))return e;let r=qLa(YLa(t));if(r===e)throw new Error(JLa);return xBr(r)},vhi=async e=>{let t=Ehi(iee(e),XLa);await Shi(t)||await HLa(t,"")};var s9a="https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/raijin-runtime.json",Bhi="@atls/yarn-cli",whi="yarn.mjs",Thi=1,o9a=/^[a-f0-9]{64}$/,a9a=e=>typeof e=="object"&&e!==null,sRe=(e,t)=>{let r=e[t];if(typeof r!="string"||r.length===0)throw new Error(`Invalid Raijin runtime manifest: missing ${t}`);return r},c9a=e=>{if(!a9a(e))throw new Error("Invalid Raijin runtime manifest: expected object");if(e.schemaVersion!==Thi)throw new Error("Invalid Raijin runtime manifest: unsupported schemaVersion");let t=sRe(e,"packageName"),r=sRe(e,"assetName"),n=sRe(e,"sha256");if(t!==Bhi)throw new Error(`Invalid Raijin runtime manifest: expected ${Bhi}`);if(r!==whi)throw new Error(`Invalid Raijin runtime manifest: expected ${whi}`);if(!o9a.test(n))throw new Error("Invalid Raijin runtime manifest: invalid sha256");return{assetName:r,assetUrl:sRe(e,"assetUrl"),packageName:t,schemaVersion:Thi,sha256:n,tagName:sRe(e,"tagName"),version:sRe(e,"version")}},Dhi=async e=>c9a(await GBr.httpUtils.get(s9a,{configuration:e,headers:{accept:"application/json","user-agent":"raijin-yarn-plugin-essentials"},jsonResponse:!0})),khi=e=>$La("sha256").update(e).digest("hex"),l9a=e=>`.yarn/releases/raijin-yarn-${e.version}.mjs`,u9a=async(e,t)=>{let r=await GBr.httpUtils.get(t.assetUrl,{configuration:e,headers:{accept:"application/octet-stream","user-agent":"raijin-yarn-plugin-essentials"},jsonResponse:!1});if(Buffer.isBuffer(r))return r;if(typeof r=="string")return Buffer.from(r);throw new Error("Invalid Raijin runtime asset response")},xhi=async(e,t,r)=>{let n=await u9a(e,r),a=khi(n);if(a!==r.sha256)throw new Error(`Downloaded Raijin runtime digest mismatch: expected ${r.sha256}, got ${a}`);let o=l9a(r),l=Rhi(iee(t),iee(o));await e9a(n9a(l),{recursive:!0}),await r9a(l,n),await Nhi.Configuration.updateConfiguration(t,{yarnPath:o})},g9a=(e,t)=>{if(!t)throw new Error("`yarnPath` is not set after Raijin runtime update");let r=iee(t);return i9a(r)?r:Rhi(iee(e),r)},Ghi=async(e,t,r)=>{let n=e.get("yarnPath"),a=g9a(t,n),o=khi(await t9a(a));if(o!==r.sha256)throw new Error(`Installed Raijin runtime digest mismatch: expected ${r.sha256}, got ${o}`)};var FXe=class extends Fhi.BaseCommand{static paths=[["set","version","atls"]];static usage=_C.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=await xBr(this.context.cwd),r=process.cwd();await vhi(t);try{process.chdir(iee(t));let n=await L0t.Configuration.find(t,this.context.plugins),a=await Dhi(n);await xhi(n,t,a);let o=await L0t.Configuration.find(t,this.context.plugins);await Ghi(o,t,a);let l=["up","@atls/code-runtime"],A=await this.cli.run(l,{cwd:t}),f=await L0t.Configuration.find(t,this.context.plugins);return await f.triggerHook(I=>I.afterYarnVersionSet,f,{...this.context,cwd:t}),A}finally{process.chdir(r)}}};var Zhi={commands:[FXe]};var cTr={};sI(cTr,{WorkspaceExportCommand:()=>u4e,default:()=>o0i});var e0i=Nt(el(),1),t0i=Nt(el(),1),r0i=Nt(yn(),1),n0i=Nt(yn(),1),i0i=Nt(yn(),1),s0i=Nt(yn(),1);$c();var V0t=Nt(zs(),1),ZXe=Nt(zs(),1);var Lhi=async(e,t,r)=>{let n=e.configuration.get("rcFilename"),a=ZXe.ppath.join(e.cwd,n);await V0t.xfs.existsPromise(a)&&(r.reportInfo(null,n),await V0t.xfs.copyPromise(ZXe.ppath.join(t,n),a,{overwrite:!0}))},Vhi=async(e,t,r)=>{let n=e.configuration.get("yarnPath");if(!n)throw new Error("`yarnPath` is not set");let a=ZXe.ppath.relative(e.cwd,n),o=ZXe.ppath.join(t,a);r.reportInfo(null,a),await V0t.xfs.copyPromise(o,n,{overwrite:!0})};var vRe={};sI(vRe,{IMAGE_PACK_NODE_LINKER:()=>aTr,pack:()=>I3a,resolveSupportedArchitectures:()=>$_i});var oTr=Nt(yn(),1),J_i=Nt(yn(),1),U_i=Nt(yn(),1),K_i=Nt(zs(),1),j_i=Nt(yn(),1),z_i=Nt(zs(),1),q_i=Nt(eme(),1);import{arch as Q_i}from"node:os";var SCi=Nt(yn(),1),vCi=Nt(yn(),1),BCi=Nt(zs(),1),wCi=Nt(zs(),1),TCi=Nt(zs(),1),bwr=Nt(yn(),1),Ewr=Nt(zs(),1),RCi=Nt(zs(),1),cyt=class e extends SCi.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let n=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:n,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:n,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=n,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(bwr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await RCi.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let n;r.isDirectory()||!(n=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(n[1],Ewr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:n}){let a=new wCi.NodeFS,o=async()=>{let l=Ewr.ppath.resolve(this.cwd,"../workspaces",bwr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(l)){let C=await n();await a.copyPromise(l,TCi.PortablePath.root,{baseFs:C}),C.discardAndClose()}return l})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(vCi.WorkspaceResolver.protocol)){for(let A;A=this.workspaceMutexes.get(t.locatorHash);)await A;let l=await o();return[new BCi.JailFS(l,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:n})}};var V_i=Nt(yn(),1),P_i=Nt(yn(),1);var W_i=Nt(yn(),1),rTr=Nt(zs(),1),cme=Nt(zs(),1),nTr=Nt(eme(),1),u3a=Nt(D_i(),1);var $wr=Nt(yn(),1),_yt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${$wr.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${$wr.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};var x_i=Nt(yn(),1),yyt=Nt(yn(),1),G_i=Nt(UC(),1),k_i=/^(?!v)[a-z0-9._-]+$/i,byt=class{supportsDescriptor(t,r){return!!(x_i.semverUtils.validRange(t.range)||k_i.test(t.range))}supportsLocator(t,r){return!!(G_i.default.valid(t.reference)||k_i.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,n){return n.resolver.bindDescriptor(this.forwardDescriptor(t,n),r,n)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,n){return n.resolver.getCandidates(this.forwardDescriptor(t,n),r,n)}async getSatisfying(t,r,n,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,n,a)}async resolve(t,r){let n=await r.resolver.resolve(this.forwardLocator(t,r),r);return yyt.structUtils.renamePackage(n,t)}forwardDescriptor(t,r){return yyt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return yyt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var Eyt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var eTr=Nt(yn(),1),F_i=Nt(yn(),1),Z_i=Nt(zs(),1);var Syt=class extends F_i.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,n){return super.getLocalPath(r,this.rewriteOpts(r,n))}async fetch(r,n){if(r.reference.slice(eTr.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,n);let a=n.checksums.get(r.locatorHash)||null,[o,l]=await n.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:l,localPath:this.getLocalPath(r,n),prefixPath:Z_i.PortablePath.dot}}async packWorkspace(r){let n=this.originalProject.getWorkspaceByLocator(r);return await L_i(n,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,n){return r.reference.slice(eTr.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var tTr=Nt(yn(),1),vyt=Nt(yn(),1),Byt=class extends vyt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,n){return super.supportsDescriptor(r,this.rewriteOpts(r,n))}supportsLocator(r,n){return super.supportsLocator(r,this.rewriteOpts(r,n))}shouldPersistResolution(r,n){return super.shouldPersistResolution(r,this.rewriteOpts(r,n))}bindDescriptor(r,n,a){return super.bindDescriptor(r,n,this.rewriteOpts(r,a))}getResolutionDependencies(r,n){return super.getResolutionDependencies(r,this.rewriteOpts(r,n))}async getCandidates(r,n,a){return await super.getCandidates(r,n,this.rewriteOpts(r,a))}async getSatisfying(r,n,a){return await super.getSatisfying(r,n,this.rewriteOpts(r,a))}async resolve(r,n){let a=r.reference.slice(vyt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,n),l=o.getWorkspaceByCwd(a);return{...r,version:l.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?tTr.LinkType.SOFT:tTr.LinkType.HARD,dependencies:l.manifest.dependencies,peerDependencies:l.manifest.peerDependencies,dependenciesMeta:l.manifest.dependenciesMeta,peerDependenciesMeta:l.manifest.peerDependenciesMeta,bin:l.manifest.bin}}rewriteOpts(r,n){return("descriptorHash"in r?r.range:r.reference).slice(vyt.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var O_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new P_i.MultiFetcher([new V_i.VirtualFetcher,new Syt(e),...t])},M_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new _yt([new Eyt,new Byt(e),new byt,...t])};var H_i=async e=>{let t=await cme.xfs.mktempPromise(),r=await nTr.packUtils.genPackStream(e),n=rTr.ppath.join(t,"package.tgz"),a=cme.xfs.createWriteStream(n);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),cme.xfs.readFilePromise(n)},L_i=async(e,t)=>await cme.xfs.mktempPromise(async r=>{let n=await nTr.packUtils.genPackStream(e),a=rTr.ppath.join(r,"package.tgz"),o=cme.xfs.createWriteStream(a);n.pipe(o),await new Promise(A=>{o.on("finish",A)});let l=await cme.xfs.readFilePromise(a);return await W_i.tgzUtils.convertToZip(l,t)});var iTr=Nt(zs(),1),sTr=Nt(zs(),1),Y_i=async e=>{let t=iTr.ppath.join(e,".yarn","releases");if(!await sTr.xfs.existsPromise(t))return;let r=(await sTr.xfs.readdirPromise(t)).sort().find(n=>n.endsWith(".cjs")||n.endsWith(".mjs"));if(r)return iTr.ppath.join(".yarn","releases",r)};var g3a="linux",A3a="glibc",aTr="pnp",d3a={386:"ia32",amd64:"x64",mips64le:"mips64el",ppc64le:"ppc64"},p3a={windows:"win32"},X_i=e=>{if(e)return d3a[e]??e},f3a=e=>p3a[e]??e,$_i=e=>{let[t,r]=e?.split("/").slice(0,2)??[],n=f3a(t||g3a);return new Map([["os",[n]],["cpu",[X_i(r)??X_i(Q_i())??Q_i()]],["libc",n==="linux"?[A3a]:[]]])},I3a=async(e,t,r,n,a,o={})=>{process.env.IMAGE_PACK=!0;let l=await U_i.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await q_i.packUtils.prepareForPack(r,{report:n},async()=>{r.manifest.devDependencies.clear();let A=new K_i.CwdFS(a),f=await H_i(r);await j_i.tgzUtils.extractArchiveTo(f,A,{stripComponents:1}),await Lhi(t,a,n),t.configuration.get("yarnPath")&&await Vhi(t,a,n);let I=oTr.Configuration.create(a,a,e.plugins);I.values.set("compressionLevel",t.configuration.get("compressionLevel")),I.values.set("enableGlobalCache",!1),I.values.set("enableMirror",!1),I.values.set("globalFolder",e.get("globalFolder")),I.values.set("nodeLinker",aTr),I.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),o.platform&&I.values.set("supportedArchitectures",$_i(o.platform)),I.values.set("cacheFolder",z_i.ppath.join(a,".yarn/packages")),I.values.set("preferAggregateCacheInfo",!0),await oTr.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:I.get("compressionLevel"),enableGlobalCache:I.get("enableGlobalCache"),enableNetwork:I.get("enableNetwork"),enableMirror:I.get("enableMirror"),globalFolder:".yarn/berry",nodeLinker:aTr,yarnPath:await Y_i(a)}),await I.getPackageExtensions();let{project:C,workspace:b}=await J_i.Project.find(I,a);if(!b)throw new Error("Workspace not found");b.manifest.dependencies=r.manifest.dependencies,b.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,b.manifest.devDependencies.clear(),await C.install({cache:await cyt.find(I,l),fetcher:O_i(t),resolver:M_i(t),persistProject:!0,report:n})})};var h3a=Nt(eme(),1);var u4e=class extends e0i.BaseCommand{static paths=[["export"]];destination=Su.String("-d,--destination",{required:!0});async execute(){let t=await r0i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await n0i.Project.find(t,this.context.cwd);if(!n)throw new t0i.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await i0i.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await vRe.pack(t,r,n,o,this.destination),o.reportInfo(null,`Workspace ${n.manifest.name?s0i.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var o0i={commands:[u4e]};var Lkr={};sI(Lkr,{FormatCommand:()=>rUe,default:()=>iDi});var eDi=Nt(el(),1),tDi=Nt(yn(),1),rDi=Nt(yn(),1);$c();var nDi=Nt(Al(),1);var Fyt=Nt(Al(),1),_0i=Nt(Al(),1);var wyt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var a0i=Nt(Lpt(),1);var c0i=e=>{let t=e.split(` +`),r=process.cwd(),n=new a0i.default({cwd:r}),a=t.reduce((o,l)=>{let A=n.parseLine(l.trim());return A&&o.push(A),o},[]);return new wyt(a)};var C0i=Nt(Al(),1),TRe=Nt(Al(),1);var xyt=Nt(Ec(),1);var I0i=Nt(Al(),1),Dyt=Nt(Ec(),1);import{basename as _3a}from"node:path";import{isAbsolute as y3a}from"node:path";import{relative as b3a}from"node:path";var uTr=Nt(Ec(),1),Nyt=Nt(Al(),1),ume=Nt(mTe(),1);var yy="\x1B[",g4e="\x1B]",BRe="\x07",Tyt=";",l0i=process.env.TERM_PROGRAM==="Apple_Terminal",SC={};SC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?yy+(e+1)+"G":yy+(t+1)+";"+(e+1)+"H"};SC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=yy+-e+"D":e>0&&(r+=yy+e+"C"),t<0?r+=yy+-t+"A":t>0&&(r+=yy+t+"B"),r};SC.cursorUp=(e=1)=>yy+e+"A";SC.cursorDown=(e=1)=>yy+e+"B";SC.cursorForward=(e=1)=>yy+e+"C";SC.cursorBackward=(e=1)=>yy+e+"D";SC.cursorLeft=yy+"G";SC.cursorSavePosition=l0i?"\x1B7":yy+"s";SC.cursorRestorePosition=l0i?"\x1B8":yy+"u";SC.cursorGetPosition=yy+"6n";SC.cursorNextLine=yy+"E";SC.cursorPrevLine=yy+"F";SC.cursorHide=yy+"?25l";SC.cursorShow=yy+"?25h";SC.eraseLines=e=>{let t="";for(let r=0;r[g4e,"8",Tyt,Tyt,t,BRe,e,g4e,"8",Tyt,Tyt,BRe].join("");SC.image=(e,t={})=>{let r=`${g4e}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+BRe};SC.iTerm={setCwd:(e=process.cwd())=>`${g4e}50;CurrentDir=${e}${BRe}`,annotation:(e,t={})=>{let r=`${g4e}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+BRe}};var u0i=SC;var Ryt=Nt(d0i(),1);function lme(e,t,{target:r="stdout",...n}={}){return Ryt.default[r]?u0i.link(e,t):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,t):`${e} (\u200B${t}\u200B)`}lme.isSupported=Ryt.default.stdout;lme.stderr=(e,t,r={})=>lme(e,t,{target:"stderr",...r});lme.stderr.isSupported=Ryt.default.stderr;var p0i=({children:e,url:t,fallback:r=!0})=>uTr.default.createElement(Nyt.Transform,{transform:n=>lme(n,t,{fallback:r})},uTr.default.createElement(Nyt.Text,null,e));p0i.propTypes={children:ume.default.oneOfType([ume.default.arrayOf(ume.default.node),ume.default.node]).isRequired,url:ume.default.string.isRequired,fallback:ume.default.bool};var f0i=p0i;var kyt=Nt(Pc(),1),h0i=({url:e,cwd:t=process.cwd(),column:r=0,line:n=0})=>{let a=(0,Dyt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,Dyt.useMemo)(()=>y3a(a)?b3a(t,a):a,[a]),l=(0,Dyt.useMemo)(()=>o.includes("/node_modules/")?_3a(o):o,[o]);return(0,kyt.jsx)(f0i,{url:e,children:(0,kyt.jsxs)(I0i.Text,{color:"gray",children:[l,":",n,":",r]})})};import{readFileSync as E3a}from"node:fs";import{fileURLToPath as S3a}from"node:url";var m0i=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return E3a(e.file.startsWith("file:/")?S3a(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var ej=Nt(Pc(),1),Gyt=({children:e,cwd:t})=>{let r=(0,xyt.useMemo)(()=>c0i(e),[e]),n=(0,xyt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,xyt.useMemo)(()=>n?m0i(n):null,[n]);return(0,ej.jsxs)(TRe.Box,{flexDirection:"column",flexGrow:1,children:[!!a&&!!r.topFrame?.line&&(0,ej.jsx)(TRe.Box,{marginBottom:1,children:(0,ej.jsx)(d8,{line:r.topFrame.line,column:r.topFrame.column,children:a})}),r.frames.map(o=>(0,ej.jsxs)(TRe.Box,{flexDirection:"row",children:[(0,ej.jsx)(TRe.Box,{flexBasis:"30%",children:(0,ej.jsx)(C0i.Text,{children:o.function})}),(0,ej.jsx)(TRe.Box,{flexBasis:"70%",justifyContent:"flex-end",children:!!o.file&&(0,ej.jsx)(h0i,{cwd:t,url:o.file,line:o.line,column:o.column})})]},OW()))]})};var qae=Nt(Pc(),1),v3a=({children:e})=>e?(0,qae.jsx)(Fyt.Box,{marginBottom:1,children:(0,qae.jsx)(_0i.Text,{bold:!0,color:"red",children:e})}):null,Fk=({error:e,cwd:t})=>(0,qae.jsxs)(Fyt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,children:[(0,qae.jsx)(v3a,{children:e.message}),!!e.stack&&(0,qae.jsx)(Fyt.Box,{children:(0,qae.jsx)(Gyt,{cwd:t,children:e.stack})})]});var C4e=Nt(Al(),1),oyi=Nt(Ec(),1),ayi=Nt(Ec(),1);var ATr=Nt(Al(),1),dTr=Nt(Ec(),1);var d4e=Nt(Ec(),1),e5a=Nt(gTr(),1);var S0i={info:"blue",success:"green",error:"red",warning:"yellow"},P3a={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:S0i[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:S0i[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=kI.info),e==="success"&&(t=kI.tick),e==="error"&&(t=kI.cross),e==="warning"&&(t=kI.warning),{icon:t}}},v0i=P3a;var W3a={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},B0i=W3a;var O3a={styles:{input:({isFocused:e})=>({dimColor:!e})}},w0i=O3a;var M3a={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},T0i=M3a;var H3a={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},R0i=H3a;var Y3a={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:kI.square,remainingCharacter:kI.squareLightShade})},N0i=Y3a;var Q3a={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},D0i=Q3a;var X3a={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},k0i=X3a;var J3a={success:"green",error:"red",warning:"yellow",info:"blue"},U3a={success:kI.tick,error:kI.cross,warning:kI.warning,info:kI.info},K3a={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:J3a[e]}),message:()=>({})},config:({variant:e})=>({icon:U3a[e]})},x0i=K3a;var j3a={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:kI.line})},G0i=j3a;var z3a={styles:{value:()=>({})}},F0i=z3a;var q3a={styles:{value:()=>({})}},Z0i=q3a;var $3a={styles:{value:()=>({})}},L0i=$3a;var t5a={components:{Alert:v0i,Badge:B0i,ConfirmInput:w0i,MultiSelect:T0i,OrderedList:R0i,ProgressBar:N0i,Select:D0i,Spinner:k0i,StatusMessage:x0i,UnorderedList:G0i,TextInput:F0i,EmailInput:Z0i,PasswordInput:L0i}},r5a=(0,d4e.createContext)(t5a);var xS=e=>(0,d4e.useContext)(r5a).components[e];function RG({children:e,color:t="magenta"}){let{styles:r}=xS("Badge"),n=e;return typeof e=="string"&&(n=e.toUpperCase()),dTr.default.createElement(ATr.Text,{...r.container({color:t})}," ",dTr.default.createElement(ATr.Text,{...r.label()},n)," ")}var n5a=Nt(Ec(),1),V0i=Nt(Al(),1);var M0i=Nt(Al(),1),lee=Nt(Ec(),1);var f4e=Nt(Al(),1),NRe=Nt(Ec(),1);var P0i=Nt(Ec(),1);var p4e=kI.line;var Zyt=(0,P0i.createContext)({marker:p4e});function W0i({children:e}){let{marker:t}=(0,NRe.useContext)(Zyt),{styles:r}=xS("UnorderedList");return NRe.default.createElement(f4e.Box,{...r.listItem()},NRe.default.createElement(f4e.Text,{...r.marker()},t),NRe.default.createElement(f4e.Box,{...r.content()},e))}var O0i=Nt(Ec(),1),pTr=(0,O0i.createContext)({depth:0});function i5a({children:e}){let{depth:t}=(0,lee.useContext)(pTr),{styles:r,config:n}=xS("UnorderedList"),a=(0,lee.useMemo)(()=>({depth:t+1}),[t]),o=(0,lee.useMemo)(()=>{let{marker:l}=n();return typeof l=="string"?{marker:l}:Array.isArray(l)?{marker:l[t]??l.at(-1)??p4e}:{marker:p4e}},[n,t]);return lee.default.createElement(pTr.Provider,{value:a},lee.default.createElement(Zyt.Provider,{value:o},lee.default.createElement(M0i.Box,{...r.list()},e)))}i5a.Item=W0i;var c5a=Nt(Ec(),1),Y0i=Nt(Al(),1);var s5a=Nt(Ec(),1),H0i=Nt(Al(),1);var I4e=Nt(Ec(),1);var a5a=Nt(Al(),1);var gme=Nt(Ec(),1),Ame=Nt(Al(),1);function JM({value:e}){let[t,r]=(0,gme.useState)(0),[n,a]=(0,gme.useState)(null);if(n){let C=(0,Ame.measureElement)(n);C.width!==t&&r(C.width)}let o=Math.min(100,Math.max(0,e)),l=Math.round(o/100*t),A=t-l,{styles:f,config:I}=xS("ProgressBar");return gme.default.createElement(Ame.Box,{ref:a,...f.container()},l>0&&gme.default.createElement(Ame.Text,{...f.completed()},I().completedCharacter.repeat(l)),A>0&&gme.default.createElement(Ame.Text,{...f.remaining()},I().remainingCharacter.repeat(A)))}var g5a=Nt(Ec(),1),X0i=Nt(Al(),1);var l5a=Nt(Ec(),1),Q0i=Nt(Al(),1);var h4e=Nt(Ec(),1);var u5a=Nt(Al(),1);var A5a=Nt(Ec(),1),U0i=Nt(Al(),1);var J0i=Nt(Ec(),1);var f5a=Nt(Ec(),1),I5a=Nt(Al(),1);var Lyt=Nt(Ec(),1);var d5a=Nt(Ec(),1),p5a=Nt(Al(),1);var dwu=fp.inverse(" ");var z0i=Nt(Al(),1),jX=Nt(Ec(),1);var m4e=Nt(Al(),1),DRe=Nt(Ec(),1);var K0i=Nt(Ec(),1);var Vyt=(0,K0i.createContext)({marker:kI.line});function Pyt({children:e}){let{marker:t}=(0,DRe.useContext)(Vyt),{styles:r}=xS("OrderedList");return DRe.default.createElement(m4e.Box,{...r.listItem()},DRe.default.createElement(m4e.Text,{...r.marker()},t),DRe.default.createElement(m4e.Box,{...r.content()},e))}var j0i=Nt(Ec(),1),fTr=(0,j0i.createContext)({marker:""});function h5a({children:e}){let{marker:t}=(0,jX.useContext)(fTr),{styles:r}=xS("OrderedList"),n=0;for(let o of jX.default.Children.toArray(e))!(0,jX.isValidElement)(o)||o.type!==Pyt||n++;let a=String(n).length;return jX.default.createElement(z0i.Box,{...r.list()},jX.default.Children.map(e,(o,l)=>{if(!(0,jX.isValidElement)(o)||o.type!==Pyt)return o;let A=`${String(l+1).padStart(a)}.`,f=`${t}${A}`;return jX.default.createElement(fTr.Provider,{value:{marker:f}},jX.default.createElement(Vyt.Provider,{value:{marker:f}},o))}))}h5a.Item=Pyt;var _5a=Nt(Ec(),1),y5a=Nt(Al(),1);var ITr=Nt(Ec(),1);var m5a=Nt(Ec(),1),C5a=Nt(Al(),1);var Vwu=fp.inverse(" ");var b5a=Nt(Ec(),1),q0i=Nt(Al(),1);var E5a=Nt(Ec(),1),$0i=Nt(Al(),1);var B5a=Nt(Ec(),1),w5a=Nt(Al(),1);var Wyt=Nt(Ec(),1);var S5a=Nt(Ec(),1),v5a=Nt(Al(),1);var iTu=fp.inverse(" ");var eyi=Nt(Ec(),1),hTr=Nt(Ec(),1),ryi=Nt(Pc(),1),tyi=({formatter:e})=>{let[t,r]=(0,hTr.useState)(0),[n,a]=(0,hTr.useState)(0);return(0,eyi.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("format:end",l),e.on("end",A),()=>{e.off("start",o),e.off("format:end",l),e.off("end",A)}},[e,t,r,a]),(0,ryi.jsx)(JM,{value:t>0?n/t*100:0})};import{relative as nyi}from"node:path";var kRe=Nt(Al(),1),AO=Nt(Al(),1),iyi=Nt(Ec(),1),Oyt=Nt(Ec(),1);var GS=Nt(Pc(),1),T5a=({changed:e})=>e?(0,GS.jsx)(AO.Text,{color:"green",children:kI.tick}):(0,GS.jsx)(AO.Text,{color:"white",children:kI.circleDotted}),R5a=({changed:e,children:t})=>e?(0,GS.jsx)(AO.Text,{color:"white",children:t}):(0,GS.jsx)(AO.Text,{color:"gray",children:t}),syi=({cwd:e,formatter:t})=>{let[r,n]=(0,Oyt.useState)(void 0),[a,o]=(0,Oyt.useState)(0),[l,A]=(0,Oyt.useState)(0);return(0,iyi.useEffect)(()=>{let f=b=>{o(b.files.length)},I=b=>{n({changed:!1,file:nyi(e,b.file)})},C=b=>{n({changed:b.changed,file:nyi(e,b.file)}),b.changed&&A(E=>E+1)};return t.on("start",f),t.on("format:start",I),t.on("format:end",C),()=>{t.off("start",f),t.off("format:start",I),t.off("format:end",C)}},[t,n,o,A]),r?(0,GS.jsxs)(kRe.Box,{flexDirection:"row",width:"100%",children:[(0,GS.jsxs)(kRe.Box,{flexGrow:1,children:[(0,GS.jsx)(RG,{color:"cyan",children:"Format:"}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsx)(R5a,{changed:r.changed,children:r.file})]}),(0,GS.jsx)(kRe.Box,{flexDirection:"row",children:(0,GS.jsxs)(kRe.Box,{children:[(0,GS.jsx)(T5a,{changed:r.changed}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsxs)(AO.Text,{color:"green",children:[l," Formatted"]}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsxs)(AO.Text,{color:"white",children:[a," Files"]}),(0,GS.jsx)(AO.Text,{children:" "})]})})]}):(0,GS.jsxs)(kRe.Box,{flexDirection:"row",children:[(0,GS.jsx)(RG,{color:"cyan",children:"Format:"}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsx)(AO.Text,{color:"white",children:"Loading files..."})]})};var $ae=Nt(Pc(),1),cyi=({cwd:e,formatter:t})=>{let[r,n]=(0,oyi.useState)(!1);return(0,ayi.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,$ae.jsx)(C4e.Box,{position:"relative",height:7,children:(0,$ae.jsxs)(C4e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,$ae.jsx)(C4e.Box,{children:(0,$ae.jsx)(syi,{cwd:e,formatter:t})}),(0,$ae.jsx)(C4e.Box,{marginTop:1,marginBottom:1,children:(0,$ae.jsx)(tyi,{formatter:t})})]})})};import mAc from"node:events";import{writeFile as CAc}from"node:fs/promises";import{readFile as qNi}from"node:fs/promises";import{relative as _Ac}from"node:path";import{join as yAc}from"node:path";var ZRe={};sI(ZRe,{default:()=>HMa,parsers:()=>FRe});var N5a=Object.create,ETr=Object.defineProperty,D5a=Object.getOwnPropertyDescriptor,k5a=Object.getOwnPropertyNames,x5a=Object.getPrototypeOf,G5a=Object.prototype.hasOwnProperty,F5a=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Z5a=(e,t)=>{for(var r in t)ETr(e,r,{get:t[r],enumerable:!0})},L5a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of k5a(t))!G5a.call(e,a)&&a!==r&&ETr(e,a,{get:()=>t[a],enumerable:!(n=D5a(t,a))||n.enumerable});return e},_yi=(e,t,r)=>(r=e!=null?N5a(x5a(e)):{},L5a(t||!e||!e.__esModule?ETr(r,"default",{value:e,enumerable:!0}):r,e)),yyi=F5a(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(se,O){if(se==null)return{};var K={};for(var we in se)if({}.hasOwnProperty.call(se,we)){if(O.includes(we))continue;K[we]=se[we]}return K}var r=class{constructor(se,O,K){this.line=void 0,this.column=void 0,this.index=void 0,this.line=se,this.column=O,this.index=K}},n=class{constructor(se,O){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=se,this.end=O}};function a(se,O){let{line:K,column:we,index:gt}=se;return new r(K,we+O,gt+O)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",l={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},A={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},f=se=>se.type==="UpdateExpression"?A.UpdateExpression[`${se.prefix}`]:A[se.type],I={AccessorIsGenerator:({kind:se})=>`A ${se}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:se})=>`Missing initializer in ${se} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:se})=>`\`${se}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:se})=>`'import.${se}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:se,exportName:O})=>`A string literal cannot be used as an exported binding without \`from\`. - Did you mean \`export { '${se}' as '${O}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:se})=>`'${se==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:se})=>`Unsyntactic ${se==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:se})=>`A string literal cannot be used as an imported binding. -- Did you mean \`import { "${se}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:se})=>`Expected number in radix ${se}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:se})=>`Escape sequence in keyword ${se}.`,InvalidIdentifier:({identifierName:se})=>`Invalid identifier ${se}.`,InvalidLhs:({ancestor:se})=>`Invalid left-hand side in ${f(se)}.`,InvalidLhsBinding:({ancestor:se})=>`Binding invalid left-hand side in ${f(se)}.`,InvalidLhsOptionalChaining:({ancestor:se})=>`Invalid optional chaining in the left-hand side of ${f(se)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:se})=>`Unexpected character '${se}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:se})=>`Private name #${se} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:se})=>`Label '${se}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:se})=>`This experimental syntax requires enabling the parser plugin: ${se.map(O=>JSON.stringify(O)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:se})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${se.map(O=>JSON.stringify(O)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:se})=>`Duplicate key "${se}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:se})=>`An export name cannot include a lone surrogate, found '\\u${se.toString(16)}'.`,ModuleExportUndefined:({localName:se})=>`Export '${se}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:se})=>`Private names are only allowed in property accesses (\`obj.#${se}\`) or in \`in\` expressions (\`#${se} in obj\`).`,PrivateNameRedeclaration:({identifierName:se})=>`Duplicate private name #${se}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:se})=>`Unexpected keyword '${se}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:se})=>`Unexpected reserved word '${se}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:se,unexpected:O})=>`Unexpected token${O?` '${O}'.`:""}${se?`, expected "${se}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:se,onlyValidPropertyName:O})=>`The only valid meta property for ${se} is ${se}.${O}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:se})=>`Identifier '${se}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},C={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:se})=>`Assigning to '${se}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:se})=>`Binding '${se}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},b=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),E=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:se})=>`Invalid topic token ${se}. In order to use ${se} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${se}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:se})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:se})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),N=["message"];function B(se,O,K){Object.defineProperty(se,O,{enumerable:!1,configurable:!0,value:K})}function F({toMessage:se,code:O,reasonCode:K,syntaxPlugin:we}){let gt=K==="MissingPlugin"||K==="MissingOneOfPlugins";{let sr={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};sr[K]&&(K=sr[K])}return function sr(Yr,Lr){let fi=new SyntaxError;return fi.code=O,fi.reasonCode=K,fi.loc=Yr,fi.pos=Yr.index,fi.syntaxPlugin=we,gt&&(fi.missingPlugin=Lr.missingPlugin),B(fi,"clone",function($n={}){var ra;let{line:kc,column:Nl,index:ca}=(ra=$n.loc)!=null?ra:Yr;return sr(new r(kc,Nl,ca),Object.assign({},Lr,$n.details))}),B(fi,"details",Lr),Object.defineProperty(fi,"message",{configurable:!0,get(){let $n=`${se(Lr)} (${Yr.line}:${Yr.column})`;return this.message=$n,$n},set($n){Object.defineProperty(this,"message",{value:$n,writable:!0})}}),fi}}function Q(se,O){if(Array.isArray(se))return we=>Q(we,se[0]);let K={};for(let we of Object.keys(se)){let gt=se[we],sr=typeof gt=="string"?{message:()=>gt}:typeof gt=="function"?{message:gt}:gt,{message:Yr}=sr,Lr=t(sr,N),fi=typeof Yr=="string"?()=>Yr:Yr;K[we]=F(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:we,toMessage:fi},O?{syntaxPlugin:O}:{},Lr))}return K}var X=Object.assign({},Q(l),Q(I),Q(C),Q`pipelineOperator`(E));function ae(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ne(se){let O=ae();if(se==null)return O;if(se.annexB!=null&&se.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let K of Object.keys(O))se[K]!=null&&(O[K]=se[K]);if(O.startLine===1)se.startIndex==null&&O.startColumn>0?O.startIndex=O.startColumn:se.startColumn==null&&O.startIndex>0&&(O.startColumn=O.startIndex);else if((se.startColumn==null||se.startIndex==null)&&se.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return O}var{defineProperty:ce}=Object,fe=(se,O)=>{se&&ce(se,O,{enumerable:!1,value:se[O]})};function ue(se){return fe(se.loc.start,"index"),fe(se.loc.end,"index"),se}var de=se=>class extends se{parse(){let O=ue(super.parse());return this.optionFlags&128&&(O.tokens=O.tokens.map(ue)),O}parseRegExpLiteral({pattern:O,flags:K}){let we=null;try{we=new RegExp(O,K)}catch{}let gt=this.estreeParseLiteral(we);return gt.regex={pattern:O,flags:K},gt}parseBigIntLiteral(O){let K;try{K=BigInt(O)}catch{K=null}let we=this.estreeParseLiteral(K);return we.bigint=String(we.value||O),we}parseDecimalLiteral(O){let K=this.estreeParseLiteral(null);return K.decimal=String(K.value||O),K}estreeParseLiteral(O){return this.parseLiteral(O,"Literal")}parseStringLiteral(O){return this.estreeParseLiteral(O)}parseNumericLiteral(O){return this.estreeParseLiteral(O)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(O){return this.estreeParseLiteral(O)}directiveToStmt(O){let K=O.value;delete O.value,K.type="Literal",K.raw=K.extra.raw,K.value=K.extra.expressionValue;let we=O;return we.type="ExpressionStatement",we.expression=K,we.directive=K.extra.rawValue,delete K.extra,we}initFunction(O,K){super.initFunction(O,K),O.expression=!1}checkDeclaration(O){O!=null&&this.isObjectProperty(O)?this.checkDeclaration(O.value):super.checkDeclaration(O)}getObjectOrClassMethodParams(O){return O.value.params}isValidDirective(O){var K;return O.type==="ExpressionStatement"&&O.expression.type==="Literal"&&typeof O.expression.value=="string"&&!((K=O.expression.extra)!=null&&K.parenthesized)}parseBlockBody(O,K,we,gt,sr){super.parseBlockBody(O,K,we,gt,sr);let Yr=O.directives.map(Lr=>this.directiveToStmt(Lr));O.body=Yr.concat(O.body),delete O.directives}parsePrivateName(){let O=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(O):O}convertPrivateNameToPrivateIdentifier(O){let K=super.getPrivateNameSV(O);return O=O,delete O.id,O.name=K,O.type="PrivateIdentifier",O}isPrivateName(O){return this.getPluginOption("estree","classFeatures")?O.type==="PrivateIdentifier":super.isPrivateName(O)}getPrivateNameSV(O){return this.getPluginOption("estree","classFeatures")?O.name:super.getPrivateNameSV(O)}parseLiteral(O,K){let we=super.parseLiteral(O,K);return we.raw=we.extra.raw,delete we.extra,we}parseFunctionBody(O,K,we=!1){super.parseFunctionBody(O,K,we),O.expression=O.body.type!=="BlockStatement"}parseMethod(O,K,we,gt,sr,Yr,Lr=!1){let fi=this.startNode();fi.kind=O.kind,fi=super.parseMethod(fi,K,we,gt,sr,Yr,Lr),fi.type="FunctionExpression",delete fi.kind,O.value=fi;let{typeParameters:$n}=O;return $n&&(delete O.typeParameters,fi.typeParameters=$n,this.resetStartLocationFromNode(fi,$n)),Yr==="ClassPrivateMethod"&&(O.computed=!1),this.finishNode(O,"MethodDefinition")}nameIsConstructor(O){return O.type==="Literal"?O.value==="constructor":super.nameIsConstructor(O)}parseClassProperty(...O){let K=super.parseClassProperty(...O);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition"),K}parseClassPrivateProperty(...O){let K=super.parseClassPrivateProperty(...O);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition",K.computed=!1),K}parseObjectMethod(O,K,we,gt,sr){let Yr=super.parseObjectMethod(O,K,we,gt,sr);return Yr&&(Yr.type="Property",Yr.kind==="method"&&(Yr.kind="init"),Yr.shorthand=!1),Yr}parseObjectProperty(O,K,we,gt){let sr=super.parseObjectProperty(O,K,we,gt);return sr&&(sr.kind="init",sr.type="Property"),sr}isValidLVal(O,K,we){return O==="Property"?"value":super.isValidLVal(O,K,we)}isAssignable(O,K){return O!=null&&this.isObjectProperty(O)?this.isAssignable(O.value,K):super.isAssignable(O,K)}toAssignable(O,K=!1){if(O!=null&&this.isObjectProperty(O)){let{key:we,value:gt}=O;this.isPrivateName(we)&&this.classScope.usePrivateName(this.getPrivateNameSV(we),we.loc.start),this.toAssignable(gt,K)}else super.toAssignable(O,K)}toAssignableObjectExpressionProp(O,K,we){O.type==="Property"&&(O.kind==="get"||O.kind==="set")?this.raise(X.PatternHasAccessor,O.key):O.type==="Property"&&O.method?this.raise(X.PatternHasMethod,O.key):super.toAssignableObjectExpressionProp(O,K,we)}finishCallExpression(O,K){let we=super.finishCallExpression(O,K);if(we.callee.type==="Import"){var gt,sr;we.type="ImportExpression",we.source=we.arguments[0],we.options=(gt=we.arguments[1])!=null?gt:null,we.attributes=(sr=we.arguments[1])!=null?sr:null,delete we.arguments,delete we.callee}return we}toReferencedArguments(O){O.type!=="ImportExpression"&&super.toReferencedArguments(O)}parseExport(O,K){let we=this.state.lastTokStartLoc,gt=super.parseExport(O,K);switch(gt.type){case"ExportAllDeclaration":gt.exported=null;break;case"ExportNamedDeclaration":gt.specifiers.length===1&>.specifiers[0].type==="ExportNamespaceSpecifier"&&(gt.type="ExportAllDeclaration",gt.exported=gt.specifiers[0].exported,delete gt.specifiers);case"ExportDefaultDeclaration":{var sr;let{declaration:Yr}=gt;Yr?.type==="ClassDeclaration"&&((sr=Yr.decorators)==null?void 0:sr.length)>0&&Yr.start===gt.start&&this.resetStartLocation(gt,we)}break}return gt}parseSubscript(O,K,we,gt){let sr=super.parseSubscript(O,K,we,gt);if(gt.optionalChainMember){if((sr.type==="OptionalMemberExpression"||sr.type==="OptionalCallExpression")&&(sr.type=sr.type.substring(8)),gt.stop){let Yr=this.startNodeAtNode(sr);return Yr.expression=sr,this.finishNode(Yr,"ChainExpression")}}else(sr.type==="MemberExpression"||sr.type==="CallExpression")&&(sr.optional=!1);return sr}isOptionalMemberExpression(O){return O.type==="ChainExpression"?O.expression.type==="MemberExpression":super.isOptionalMemberExpression(O)}hasPropertyAsPrivateName(O){return O.type==="ChainExpression"&&(O=O.expression),super.hasPropertyAsPrivateName(O)}isObjectProperty(O){return O.type==="Property"&&O.kind==="init"&&!O.method}isObjectMethod(O){return O.type==="Property"&&(O.method||O.kind==="get"||O.kind==="set")}finishNodeAt(O,K,we){return ue(super.finishNodeAt(O,K,we))}resetStartLocation(O,K){super.resetStartLocation(O,K),ue(O)}resetEndLocation(O,K=this.state.lastTokEndLoc){super.resetEndLocation(O,K),ue(O)}},be=class{constructor(se,O){this.token=void 0,this.preserveSpace=void 0,this.token=se,this.preserveSpace=!!O}},Se={brace:new be("{"),j_oTag:new be("...",!0)};Se.template=new be("`",!0);var De=!0,k=!0,et=!0,ct=!0,Me=!0,je=!0,St=class{constructor(se,O={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=se,this.keyword=O.keyword,this.beforeExpr=!!O.beforeExpr,this.startsExpr=!!O.startsExpr,this.rightAssociative=!!O.rightAssociative,this.isLoop=!!O.isLoop,this.isAssign=!!O.isAssign,this.prefix=!!O.prefix,this.postfix=!!O.postfix,this.binop=O.binop!=null?O.binop:null,this.updateContext=null}},At=new Map;function Yt(se,O={}){O.keyword=se;let K=lr(se,O);return At.set(se,K),K}function Tr(se,O){return lr(se,{beforeExpr:De,binop:O})}var Nr=-1,er=[],vt=[],xt=[],Zr=[],qt=[],Xt=[];function lr(se,O={}){var K,we,gt,sr;return++Nr,vt.push(se),xt.push((K=O.binop)!=null?K:-1),Zr.push((we=O.beforeExpr)!=null?we:!1),qt.push((gt=O.startsExpr)!=null?gt:!1),Xt.push((sr=O.prefix)!=null?sr:!1),er.push(new St(se,O)),Nr}function cr(se,O={}){var K,we,gt,sr;return++Nr,At.set(se,Nr),vt.push(se),xt.push((K=O.binop)!=null?K:-1),Zr.push((we=O.beforeExpr)!=null?we:!1),qt.push((gt=O.startsExpr)!=null?gt:!1),Xt.push((sr=O.prefix)!=null?sr:!1),er.push(new St("name",O)),Nr}var Ar={bracketL:lr("[",{beforeExpr:De,startsExpr:k}),bracketHashL:lr("#[",{beforeExpr:De,startsExpr:k}),bracketBarL:lr("[|",{beforeExpr:De,startsExpr:k}),bracketR:lr("]"),bracketBarR:lr("|]"),braceL:lr("{",{beforeExpr:De,startsExpr:k}),braceBarL:lr("{|",{beforeExpr:De,startsExpr:k}),braceHashL:lr("#{",{beforeExpr:De,startsExpr:k}),braceR:lr("}"),braceBarR:lr("|}"),parenL:lr("(",{beforeExpr:De,startsExpr:k}),parenR:lr(")"),comma:lr(",",{beforeExpr:De}),semi:lr(";",{beforeExpr:De}),colon:lr(":",{beforeExpr:De}),doubleColon:lr("::",{beforeExpr:De}),dot:lr("."),question:lr("?",{beforeExpr:De}),questionDot:lr("?."),arrow:lr("=>",{beforeExpr:De}),template:lr("template"),ellipsis:lr("...",{beforeExpr:De}),backQuote:lr("`",{startsExpr:k}),dollarBraceL:lr("${",{beforeExpr:De,startsExpr:k}),templateTail:lr("...`",{startsExpr:k}),templateNonTail:lr("...${",{beforeExpr:De,startsExpr:k}),at:lr("@"),hash:lr("#",{startsExpr:k}),interpreterDirective:lr("#!..."),eq:lr("=",{beforeExpr:De,isAssign:ct}),assign:lr("_=",{beforeExpr:De,isAssign:ct}),slashAssign:lr("_=",{beforeExpr:De,isAssign:ct}),xorAssign:lr("_=",{beforeExpr:De,isAssign:ct}),moduloAssign:lr("_=",{beforeExpr:De,isAssign:ct}),incDec:lr("++/--",{prefix:Me,postfix:je,startsExpr:k}),bang:lr("!",{beforeExpr:De,prefix:Me,startsExpr:k}),tilde:lr("~",{beforeExpr:De,prefix:Me,startsExpr:k}),doubleCaret:lr("^^",{startsExpr:k}),doubleAt:lr("@@",{startsExpr:k}),pipeline:Tr("|>",0),nullishCoalescing:Tr("??",1),logicalOR:Tr("||",1),logicalAND:Tr("&&",2),bitwiseOR:Tr("|",3),bitwiseXOR:Tr("^",4),bitwiseAND:Tr("&",5),equality:Tr("==/!=/===/!==",6),lt:Tr("/<=/>=",7),gt:Tr("/<=/>=",7),relational:Tr("/<=/>=",7),bitShift:Tr("<>/>>>",8),bitShiftL:Tr("<>/>>>",8),bitShiftR:Tr("<>/>>>",8),plusMin:lr("+/-",{beforeExpr:De,binop:9,prefix:Me,startsExpr:k}),modulo:lr("%",{binop:10,startsExpr:k}),star:lr("*",{binop:10}),slash:Tr("/",10),exponent:lr("**",{beforeExpr:De,binop:11,rightAssociative:!0}),_in:Yt("in",{beforeExpr:De,binop:7}),_instanceof:Yt("instanceof",{beforeExpr:De,binop:7}),_break:Yt("break"),_case:Yt("case",{beforeExpr:De}),_catch:Yt("catch"),_continue:Yt("continue"),_debugger:Yt("debugger"),_default:Yt("default",{beforeExpr:De}),_else:Yt("else",{beforeExpr:De}),_finally:Yt("finally"),_function:Yt("function",{startsExpr:k}),_if:Yt("if"),_return:Yt("return",{beforeExpr:De}),_switch:Yt("switch"),_throw:Yt("throw",{beforeExpr:De,prefix:Me,startsExpr:k}),_try:Yt("try"),_var:Yt("var"),_const:Yt("const"),_with:Yt("with"),_new:Yt("new",{beforeExpr:De,startsExpr:k}),_this:Yt("this",{startsExpr:k}),_super:Yt("super",{startsExpr:k}),_class:Yt("class",{startsExpr:k}),_extends:Yt("extends",{beforeExpr:De}),_export:Yt("export"),_import:Yt("import",{startsExpr:k}),_null:Yt("null",{startsExpr:k}),_true:Yt("true",{startsExpr:k}),_false:Yt("false",{startsExpr:k}),_typeof:Yt("typeof",{beforeExpr:De,prefix:Me,startsExpr:k}),_void:Yt("void",{beforeExpr:De,prefix:Me,startsExpr:k}),_delete:Yt("delete",{beforeExpr:De,prefix:Me,startsExpr:k}),_do:Yt("do",{isLoop:et,beforeExpr:De}),_for:Yt("for",{isLoop:et}),_while:Yt("while",{isLoop:et}),_as:cr("as",{startsExpr:k}),_assert:cr("assert",{startsExpr:k}),_async:cr("async",{startsExpr:k}),_await:cr("await",{startsExpr:k}),_defer:cr("defer",{startsExpr:k}),_from:cr("from",{startsExpr:k}),_get:cr("get",{startsExpr:k}),_let:cr("let",{startsExpr:k}),_meta:cr("meta",{startsExpr:k}),_of:cr("of",{startsExpr:k}),_sent:cr("sent",{startsExpr:k}),_set:cr("set",{startsExpr:k}),_source:cr("source",{startsExpr:k}),_static:cr("static",{startsExpr:k}),_using:cr("using",{startsExpr:k}),_yield:cr("yield",{startsExpr:k}),_asserts:cr("asserts",{startsExpr:k}),_checks:cr("checks",{startsExpr:k}),_exports:cr("exports",{startsExpr:k}),_global:cr("global",{startsExpr:k}),_implements:cr("implements",{startsExpr:k}),_intrinsic:cr("intrinsic",{startsExpr:k}),_infer:cr("infer",{startsExpr:k}),_is:cr("is",{startsExpr:k}),_mixins:cr("mixins",{startsExpr:k}),_proto:cr("proto",{startsExpr:k}),_require:cr("require",{startsExpr:k}),_satisfies:cr("satisfies",{startsExpr:k}),_keyof:cr("keyof",{startsExpr:k}),_readonly:cr("readonly",{startsExpr:k}),_unique:cr("unique",{startsExpr:k}),_abstract:cr("abstract",{startsExpr:k}),_declare:cr("declare",{startsExpr:k}),_enum:cr("enum",{startsExpr:k}),_module:cr("module",{startsExpr:k}),_namespace:cr("namespace",{startsExpr:k}),_interface:cr("interface",{startsExpr:k}),_type:cr("type",{startsExpr:k}),_opaque:cr("opaque",{startsExpr:k}),name:lr("name",{startsExpr:k}),placeholder:lr("%%",{startsExpr:!0}),string:lr("string",{startsExpr:k}),num:lr("num",{startsExpr:k}),bigint:lr("bigint",{startsExpr:k}),decimal:lr("decimal",{startsExpr:k}),regexp:lr("regexp",{startsExpr:k}),privateName:lr("#name",{startsExpr:k}),eof:lr("eof"),jsxName:lr("jsxName"),jsxText:lr("jsxText",{beforeExpr:!0}),jsxTagStart:lr("jsxTagStart",{startsExpr:!0}),jsxTagEnd:lr("jsxTagEnd")};function qr(se){return se>=93&&se<=133}function _n(se){return se<=92}function ke(se){return se>=58&&se<=133}function jt(se){return se>=58&&se<=137}function Fn(se){return Zr[se]}function Nn(se){return qt[se]}function Hi(se){return se>=29&&se<=33}function po(se){return se>=129&&se<=131}function Vr(se){return se>=90&&se<=92}function xi(se){return se>=58&&se<=92}function io(se){return se>=39&&se<=59}function ga(se){return se===34}function Ya(se){return Xt[se]}function Gc(se){return se>=121&&se<=123}function cl(se){return se>=124&&se<=130}function Sc(se){return vt[se]}function Hr(se){return xt[se]}function Wr(se){return se===57}function Ft(se){return se>=24&&se<=25}function zr(se){return er[se]}er[8].updateContext=se=>{se.pop()},er[5].updateContext=er[7].updateContext=er[23].updateContext=se=>{se.push(Se.brace)},er[22].updateContext=se=>{se[se.length-1]===Se.template?se.pop():se.push(Se.template)},er[143].updateContext=se=>{se.push(Se.j_expr,Se.j_oTag)};var Rn="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",Or="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Qi=new RegExp("["+Rn+"]"),ps=new RegExp("["+Rn+Or+"]");Rn=Or=null;var yo=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],bo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Qa(se,O){let K=65536;for(let we=0,gt=O.length;wese)return!1;if(K+=O[we+1],K>=se)return!0}return!1}function gc(se){return se<65?se===36:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&Qi.test(String.fromCharCode(se)):Qa(se,yo)}function Cg(se){return se<48?se===36:se<58?!0:se<65?!1:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&ps.test(String.fromCharCode(se)):Qa(se,yo)||Qa(se,bo)}var Nc={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},iA=new Set(Nc.keyword),ma=new Set(Nc.strict),vu=new Set(Nc.strictBind);function li(se,O){return O&&se==="await"||se==="enum"}function Ei(se,O){return li(se,O)||ma.has(se)}function Ps(se){return vu.has(se)}function Xa(se,O){return Ei(se,O)||Ps(se)}function ac(se){return iA.has(se)}function Yl(se,O,K){return se===64&&O===64&&gc(K)}var Wc=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Sg(se){return Wc.has(se)}var Ul=class{constructor(se){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=se}},Xu=class{constructor(se,O){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=se,this.inModule=O}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let se=this.currentThisScopeFlags();return(se&64)>0&&(se&2)===0}get inStaticBlock(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&128)return!0;if(O&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(se){return new Ul(se)}enter(se){this.scopeStack.push(this.createScope(se))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(se){return!!(se.flags&130||!this.parser.inModule&&se.flags&1)}declareName(se,O,K){let we=this.currentScope();if(O&8||O&16){this.checkRedeclarationInScope(we,se,O,K);let gt=we.names.get(se)||0;O&16?gt=gt|4:(we.firstLexicalName||(we.firstLexicalName=se),gt=gt|2),we.names.set(se,gt),O&8&&this.maybeExportDefined(we,se)}else if(O&4)for(let gt=this.scopeStack.length-1;gt>=0&&(we=this.scopeStack[gt],this.checkRedeclarationInScope(we,se,O,K),we.names.set(se,(we.names.get(se)||0)|1),this.maybeExportDefined(we,se),!(we.flags&387));--gt);this.parser.inModule&&we.flags&1&&this.undefinedExports.delete(se)}maybeExportDefined(se,O){this.parser.inModule&&se.flags&1&&this.undefinedExports.delete(O)}checkRedeclarationInScope(se,O,K,we){this.isRedeclaredInScope(se,O,K)&&this.parser.raise(X.VarRedeclaration,we,{identifierName:O})}isRedeclaredInScope(se,O,K){if(!(K&1))return!1;if(K&8)return se.names.has(O);let we=se.names.get(O);return K&16?(we&2)>0||!this.treatFunctionsAsVarInScope(se)&&(we&1)>0:(we&2)>0&&!(se.flags&8&&se.firstLexicalName===O)||!this.treatFunctionsAsVarInScope(se)&&(we&4)>0}checkLocalExport(se){let{name:O}=se;this.scopeStack[0].names.has(O)||this.undefinedExports.set(O,se.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&387)return O}}currentThisScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&451&&!(O&4))return O}}},Da=class extends Ul{constructor(...se){super(...se),this.declareFunctions=new Set}},pu=class extends Xu{createScope(se){return new Da(se)}declareName(se,O,K){let we=this.currentScope();if(O&2048){this.checkRedeclarationInScope(we,se,O,K),this.maybeExportDefined(we,se),we.declareFunctions.add(se);return}super.declareName(se,O,K)}isRedeclaredInScope(se,O,K){if(super.isRedeclaredInScope(se,O,K))return!0;if(K&2048&&!se.declareFunctions.has(O)){let we=se.names.get(O);return(we&4)>0||(we&2)>0}return!1}checkLocalExport(se){this.scopeStack[0].declareFunctions.has(se.name)||super.checkLocalExport(se)}},_g=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(se){return se+this.startIndex}offsetToSourcePos(se){return se-this.startIndex}hasPlugin(se){if(typeof se=="string")return this.plugins.has(se);{let[O,K]=se;if(!this.hasPlugin(O))return!1;let we=this.plugins.get(O);for(let gt of Object.keys(K))if(we?.[gt]!==K[gt])return!1;return!0}}getPluginOption(se,O){var K;return(K=this.plugins.get(se))==null?void 0:K[O]}};function mI(se,O){se.trailingComments===void 0?se.trailingComments=O:se.trailingComments.unshift(...O)}function Qh(se,O){se.leadingComments===void 0?se.leadingComments=O:se.leadingComments.unshift(...O)}function Ri(se,O){se.innerComments===void 0?se.innerComments=O:se.innerComments.unshift(...O)}function Do(se,O,K){let we=null,gt=O.length;for(;we===null&>>0;)we=O[--gt];we===null||we.start>K.start?Ri(se,K.comments):mI(we,K.comments)}var Wt=class extends _g{addComment(se){this.filename&&(se.loc.filename=this.filename);let{commentsLen:O}=this.state;this.comments.length!==O&&(this.comments.length=O),this.comments.push(se),this.state.commentsLen++}processComment(se){let{commentStack:O}=this.state,K=O.length;if(K===0)return;let we=K-1,gt=O[we];gt.start===se.end&&(gt.leadingNode=se,we--);let{start:sr}=se;for(;we>=0;we--){let Yr=O[we],Lr=Yr.end;if(Lr>sr)Yr.containingNode=se,this.finalizeComment(Yr),O.splice(we,1);else{Lr===sr&&(Yr.trailingNode=se);break}}}finalizeComment(se){let{comments:O}=se;if(se.leadingNode!==null||se.trailingNode!==null)se.leadingNode!==null&&mI(se.leadingNode,O),se.trailingNode!==null&&Qh(se.trailingNode,O);else{let{containingNode:K,start:we}=se;if(this.input.charCodeAt(this.offsetToSourcePos(we)-1)===44)switch(K.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Do(K,K.properties,se);break;case"CallExpression":case"OptionalCallExpression":Do(K,K.arguments,se);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Do(K,K.params,se);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Do(K,K.elements,se);break;case"ExportNamedDeclaration":case"ImportDeclaration":Do(K,K.specifiers,se);break;case"TSEnumDeclaration":Do(K,K.members,se);break;case"TSEnumBody":Do(K,K.members,se);break;default:Ri(K,O)}else Ri(K,O)}}finalizeRemainingComments(){let{commentStack:se}=this.state;for(let O=se.length-1;O>=0;O--)this.finalizeComment(se[O]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(se){let{commentStack:O}=this.state,{length:K}=O;if(K===0)return;let we=O[K-1];we.leadingNode===se&&(we.leadingNode=null)}resetPreviousIdentifierLeadingComments(se){let{commentStack:O}=this.state,{length:K}=O;K!==0&&(O[K-1].trailingNode===se?O[K-1].trailingNode=null:K>=2&&O[K-2].trailingNode===se&&(O[K-2].trailingNode=null))}takeSurroundingComments(se,O,K){let{commentStack:we}=this.state,gt=we.length;if(gt===0)return;let sr=gt-1;for(;sr>=0;sr--){let Yr=we[sr],Lr=Yr.end;if(Yr.start===K)Yr.leadingNode=se;else if(Lr===O)Yr.trailingNode=se;else if(Lr0}set strict(O){O?this.flags|=1:this.flags&=-2}init({strictMode:O,sourceType:K,startIndex:we,startLine:gt,startColumn:sr}){this.strict=O===!1?!1:O===!0?!0:K==="module",this.startIndex=we,this.curLine=gt,this.lineStart=-sr,this.startLoc=this.endLoc=new r(gt,sr,we)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(O){O?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(O){O?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(O){O?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(O){O?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(O){O?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(O){O?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(O){O?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(O){O?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(O){O?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(O){O?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(O){O?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(O){O?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let O=new ayi;return O.flags=this.flags,O.startIndex=this.startIndex,O.curLine=this.curLine,O.lineStart=this.lineStart,O.startLoc=this.startLoc,O.endLoc=this.endLoc,O.errors=this.errors.slice(),O.potentialArrowAt=this.potentialArrowAt,O.noArrowAt=this.noArrowAt.slice(),O.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),O.topicContext=this.topicContext,O.labels=this.labels.slice(),O.commentsLen=this.commentsLen,O.commentStack=this.commentStack.slice(),O.pos=this.pos,O.type=this.type,O.value=this.value,O.start=this.start,O.end=this.end,O.lastTokEndLoc=this.lastTokEndLoc,O.lastTokStartLoc=this.lastTokStartLoc,O.context=this.context.slice(),O.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,O.strictErrors=this.strictErrors,O.tokensLength=this.tokensLength,O}},GA=function(se){return se>=48&&se<=57},$i={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},dl={bin:se=>se===48||se===49,oct:se=>se>=48&&se<=55,dec:se=>se>=48&&se<=57,hex:se=>se>=48&&se<=57||se>=65&&se<=70||se>=97&&se<=102};function Uf(se,O,K,we,gt,sr){let Yr=K,Lr=we,fi=gt,$n="",ra=null,kc=K,{length:Nl}=O;for(;;){if(K>=Nl){sr.unterminated(Yr,Lr,fi),$n+=O.slice(kc,K);break}let ca=O.charCodeAt(K);if(Kd(se,ca,O,K)){$n+=O.slice(kc,K);break}if(ca===92){$n+=O.slice(kc,K);let Bl=oA(O,K,we,gt,se==="template",sr);Bl.ch===null&&!ra?ra={pos:K,lineStart:we,curLine:gt}:$n+=Bl.ch,{pos:K,lineStart:we,curLine:gt}=Bl,kc=K}else ca===8232||ca===8233?(++K,++gt,we=K):ca===10||ca===13?se==="template"?($n+=O.slice(kc,K)+` +- Did you mean \`import { "${se}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:se})=>`Expected number in radix ${se}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:se})=>`Escape sequence in keyword ${se}.`,InvalidIdentifier:({identifierName:se})=>`Invalid identifier ${se}.`,InvalidLhs:({ancestor:se})=>`Invalid left-hand side in ${f(se)}.`,InvalidLhsBinding:({ancestor:se})=>`Binding invalid left-hand side in ${f(se)}.`,InvalidLhsOptionalChaining:({ancestor:se})=>`Invalid optional chaining in the left-hand side of ${f(se)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:se})=>`Unexpected character '${se}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:se})=>`Private name #${se} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:se})=>`Label '${se}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:se})=>`This experimental syntax requires enabling the parser plugin: ${se.map(O=>JSON.stringify(O)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:se})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${se.map(O=>JSON.stringify(O)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:se})=>`Duplicate key "${se}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:se})=>`An export name cannot include a lone surrogate, found '\\u${se.toString(16)}'.`,ModuleExportUndefined:({localName:se})=>`Export '${se}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:se})=>`Private names are only allowed in property accesses (\`obj.#${se}\`) or in \`in\` expressions (\`#${se} in obj\`).`,PrivateNameRedeclaration:({identifierName:se})=>`Duplicate private name #${se}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:se})=>`Unexpected keyword '${se}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:se})=>`Unexpected reserved word '${se}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:se,unexpected:O})=>`Unexpected token${O?` '${O}'.`:""}${se?`, expected "${se}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:se,onlyValidPropertyName:O})=>`The only valid meta property for ${se} is ${se}.${O}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:se})=>`Identifier '${se}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},C={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:se})=>`Assigning to '${se}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:se})=>`Binding '${se}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},b=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),E=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:se})=>`Invalid topic token ${se}. In order to use ${se} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${se}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:se})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:se})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),N=["message"];function B(se,O,K){Object.defineProperty(se,O,{enumerable:!1,configurable:!0,value:K})}function F({toMessage:se,code:O,reasonCode:K,syntaxPlugin:we}){let gt=K==="MissingPlugin"||K==="MissingOneOfPlugins";{let sr={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};sr[K]&&(K=sr[K])}return function sr(Yr,Lr){let fi=new SyntaxError;return fi.code=O,fi.reasonCode=K,fi.loc=Yr,fi.pos=Yr.index,fi.syntaxPlugin=we,gt&&(fi.missingPlugin=Lr.missingPlugin),B(fi,"clone",function($n={}){var ra;let{line:kc,column:Nl,index:ca}=(ra=$n.loc)!=null?ra:Yr;return sr(new r(kc,Nl,ca),Object.assign({},Lr,$n.details))}),B(fi,"details",Lr),Object.defineProperty(fi,"message",{configurable:!0,get(){let $n=`${se(Lr)} (${Yr.line}:${Yr.column})`;return this.message=$n,$n},set($n){Object.defineProperty(this,"message",{value:$n,writable:!0})}}),fi}}function Q(se,O){if(Array.isArray(se))return we=>Q(we,se[0]);let K={};for(let we of Object.keys(se)){let gt=se[we],sr=typeof gt=="string"?{message:()=>gt}:typeof gt=="function"?{message:gt}:gt,{message:Yr}=sr,Lr=t(sr,N),fi=typeof Yr=="string"?()=>Yr:Yr;K[we]=F(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:we,toMessage:fi},O?{syntaxPlugin:O}:{},Lr))}return K}var X=Object.assign({},Q(l),Q(I),Q(C),Q`pipelineOperator`(E));function ae(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ne(se){let O=ae();if(se==null)return O;if(se.annexB!=null&&se.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let K of Object.keys(O))se[K]!=null&&(O[K]=se[K]);if(O.startLine===1)se.startIndex==null&&O.startColumn>0?O.startIndex=O.startColumn:se.startColumn==null&&O.startIndex>0&&(O.startColumn=O.startIndex);else if((se.startColumn==null||se.startIndex==null)&&se.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return O}var{defineProperty:ce}=Object,fe=(se,O)=>{se&&ce(se,O,{enumerable:!1,value:se[O]})};function ue(se){return fe(se.loc.start,"index"),fe(se.loc.end,"index"),se}var de=se=>class extends se{parse(){let O=ue(super.parse());return this.optionFlags&128&&(O.tokens=O.tokens.map(ue)),O}parseRegExpLiteral({pattern:O,flags:K}){let we=null;try{we=new RegExp(O,K)}catch{}let gt=this.estreeParseLiteral(we);return gt.regex={pattern:O,flags:K},gt}parseBigIntLiteral(O){let K;try{K=BigInt(O)}catch{K=null}let we=this.estreeParseLiteral(K);return we.bigint=String(we.value||O),we}parseDecimalLiteral(O){let K=this.estreeParseLiteral(null);return K.decimal=String(K.value||O),K}estreeParseLiteral(O){return this.parseLiteral(O,"Literal")}parseStringLiteral(O){return this.estreeParseLiteral(O)}parseNumericLiteral(O){return this.estreeParseLiteral(O)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(O){return this.estreeParseLiteral(O)}directiveToStmt(O){let K=O.value;delete O.value,K.type="Literal",K.raw=K.extra.raw,K.value=K.extra.expressionValue;let we=O;return we.type="ExpressionStatement",we.expression=K,we.directive=K.extra.rawValue,delete K.extra,we}initFunction(O,K){super.initFunction(O,K),O.expression=!1}checkDeclaration(O){O!=null&&this.isObjectProperty(O)?this.checkDeclaration(O.value):super.checkDeclaration(O)}getObjectOrClassMethodParams(O){return O.value.params}isValidDirective(O){var K;return O.type==="ExpressionStatement"&&O.expression.type==="Literal"&&typeof O.expression.value=="string"&&!((K=O.expression.extra)!=null&&K.parenthesized)}parseBlockBody(O,K,we,gt,sr){super.parseBlockBody(O,K,we,gt,sr);let Yr=O.directives.map(Lr=>this.directiveToStmt(Lr));O.body=Yr.concat(O.body),delete O.directives}parsePrivateName(){let O=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(O):O}convertPrivateNameToPrivateIdentifier(O){let K=super.getPrivateNameSV(O);return O=O,delete O.id,O.name=K,O.type="PrivateIdentifier",O}isPrivateName(O){return this.getPluginOption("estree","classFeatures")?O.type==="PrivateIdentifier":super.isPrivateName(O)}getPrivateNameSV(O){return this.getPluginOption("estree","classFeatures")?O.name:super.getPrivateNameSV(O)}parseLiteral(O,K){let we=super.parseLiteral(O,K);return we.raw=we.extra.raw,delete we.extra,we}parseFunctionBody(O,K,we=!1){super.parseFunctionBody(O,K,we),O.expression=O.body.type!=="BlockStatement"}parseMethod(O,K,we,gt,sr,Yr,Lr=!1){let fi=this.startNode();fi.kind=O.kind,fi=super.parseMethod(fi,K,we,gt,sr,Yr,Lr),fi.type="FunctionExpression",delete fi.kind,O.value=fi;let{typeParameters:$n}=O;return $n&&(delete O.typeParameters,fi.typeParameters=$n,this.resetStartLocationFromNode(fi,$n)),Yr==="ClassPrivateMethod"&&(O.computed=!1),this.finishNode(O,"MethodDefinition")}nameIsConstructor(O){return O.type==="Literal"?O.value==="constructor":super.nameIsConstructor(O)}parseClassProperty(...O){let K=super.parseClassProperty(...O);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition"),K}parseClassPrivateProperty(...O){let K=super.parseClassPrivateProperty(...O);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition",K.computed=!1),K}parseObjectMethod(O,K,we,gt,sr){let Yr=super.parseObjectMethod(O,K,we,gt,sr);return Yr&&(Yr.type="Property",Yr.kind==="method"&&(Yr.kind="init"),Yr.shorthand=!1),Yr}parseObjectProperty(O,K,we,gt){let sr=super.parseObjectProperty(O,K,we,gt);return sr&&(sr.kind="init",sr.type="Property"),sr}isValidLVal(O,K,we){return O==="Property"?"value":super.isValidLVal(O,K,we)}isAssignable(O,K){return O!=null&&this.isObjectProperty(O)?this.isAssignable(O.value,K):super.isAssignable(O,K)}toAssignable(O,K=!1){if(O!=null&&this.isObjectProperty(O)){let{key:we,value:gt}=O;this.isPrivateName(we)&&this.classScope.usePrivateName(this.getPrivateNameSV(we),we.loc.start),this.toAssignable(gt,K)}else super.toAssignable(O,K)}toAssignableObjectExpressionProp(O,K,we){O.type==="Property"&&(O.kind==="get"||O.kind==="set")?this.raise(X.PatternHasAccessor,O.key):O.type==="Property"&&O.method?this.raise(X.PatternHasMethod,O.key):super.toAssignableObjectExpressionProp(O,K,we)}finishCallExpression(O,K){let we=super.finishCallExpression(O,K);if(we.callee.type==="Import"){var gt,sr;we.type="ImportExpression",we.source=we.arguments[0],we.options=(gt=we.arguments[1])!=null?gt:null,we.attributes=(sr=we.arguments[1])!=null?sr:null,delete we.arguments,delete we.callee}return we}toReferencedArguments(O){O.type!=="ImportExpression"&&super.toReferencedArguments(O)}parseExport(O,K){let we=this.state.lastTokStartLoc,gt=super.parseExport(O,K);switch(gt.type){case"ExportAllDeclaration":gt.exported=null;break;case"ExportNamedDeclaration":gt.specifiers.length===1&>.specifiers[0].type==="ExportNamespaceSpecifier"&&(gt.type="ExportAllDeclaration",gt.exported=gt.specifiers[0].exported,delete gt.specifiers);case"ExportDefaultDeclaration":{var sr;let{declaration:Yr}=gt;Yr?.type==="ClassDeclaration"&&((sr=Yr.decorators)==null?void 0:sr.length)>0&&Yr.start===gt.start&&this.resetStartLocation(gt,we)}break}return gt}parseSubscript(O,K,we,gt){let sr=super.parseSubscript(O,K,we,gt);if(gt.optionalChainMember){if((sr.type==="OptionalMemberExpression"||sr.type==="OptionalCallExpression")&&(sr.type=sr.type.substring(8)),gt.stop){let Yr=this.startNodeAtNode(sr);return Yr.expression=sr,this.finishNode(Yr,"ChainExpression")}}else(sr.type==="MemberExpression"||sr.type==="CallExpression")&&(sr.optional=!1);return sr}isOptionalMemberExpression(O){return O.type==="ChainExpression"?O.expression.type==="MemberExpression":super.isOptionalMemberExpression(O)}hasPropertyAsPrivateName(O){return O.type==="ChainExpression"&&(O=O.expression),super.hasPropertyAsPrivateName(O)}isObjectProperty(O){return O.type==="Property"&&O.kind==="init"&&!O.method}isObjectMethod(O){return O.type==="Property"&&(O.method||O.kind==="get"||O.kind==="set")}finishNodeAt(O,K,we){return ue(super.finishNodeAt(O,K,we))}resetStartLocation(O,K){super.resetStartLocation(O,K),ue(O)}resetEndLocation(O,K=this.state.lastTokEndLoc){super.resetEndLocation(O,K),ue(O)}},be=class{constructor(se,O){this.token=void 0,this.preserveSpace=void 0,this.token=se,this.preserveSpace=!!O}},Se={brace:new be("{"),j_oTag:new be("...",!0)};Se.template=new be("`",!0);var De=!0,k=!0,et=!0,ct=!0,Me=!0,je=!0,St=class{constructor(se,O={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=se,this.keyword=O.keyword,this.beforeExpr=!!O.beforeExpr,this.startsExpr=!!O.startsExpr,this.rightAssociative=!!O.rightAssociative,this.isLoop=!!O.isLoop,this.isAssign=!!O.isAssign,this.prefix=!!O.prefix,this.postfix=!!O.postfix,this.binop=O.binop!=null?O.binop:null,this.updateContext=null}},At=new Map;function Yt(se,O={}){O.keyword=se;let K=lr(se,O);return At.set(se,K),K}function Tr(se,O){return lr(se,{beforeExpr:De,binop:O})}var Nr=-1,er=[],vt=[],xt=[],Zr=[],qt=[],Xt=[];function lr(se,O={}){var K,we,gt,sr;return++Nr,vt.push(se),xt.push((K=O.binop)!=null?K:-1),Zr.push((we=O.beforeExpr)!=null?we:!1),qt.push((gt=O.startsExpr)!=null?gt:!1),Xt.push((sr=O.prefix)!=null?sr:!1),er.push(new St(se,O)),Nr}function cr(se,O={}){var K,we,gt,sr;return++Nr,At.set(se,Nr),vt.push(se),xt.push((K=O.binop)!=null?K:-1),Zr.push((we=O.beforeExpr)!=null?we:!1),qt.push((gt=O.startsExpr)!=null?gt:!1),Xt.push((sr=O.prefix)!=null?sr:!1),er.push(new St("name",O)),Nr}var Ar={bracketL:lr("[",{beforeExpr:De,startsExpr:k}),bracketHashL:lr("#[",{beforeExpr:De,startsExpr:k}),bracketBarL:lr("[|",{beforeExpr:De,startsExpr:k}),bracketR:lr("]"),bracketBarR:lr("|]"),braceL:lr("{",{beforeExpr:De,startsExpr:k}),braceBarL:lr("{|",{beforeExpr:De,startsExpr:k}),braceHashL:lr("#{",{beforeExpr:De,startsExpr:k}),braceR:lr("}"),braceBarR:lr("|}"),parenL:lr("(",{beforeExpr:De,startsExpr:k}),parenR:lr(")"),comma:lr(",",{beforeExpr:De}),semi:lr(";",{beforeExpr:De}),colon:lr(":",{beforeExpr:De}),doubleColon:lr("::",{beforeExpr:De}),dot:lr("."),question:lr("?",{beforeExpr:De}),questionDot:lr("?."),arrow:lr("=>",{beforeExpr:De}),template:lr("template"),ellipsis:lr("...",{beforeExpr:De}),backQuote:lr("`",{startsExpr:k}),dollarBraceL:lr("${",{beforeExpr:De,startsExpr:k}),templateTail:lr("...`",{startsExpr:k}),templateNonTail:lr("...${",{beforeExpr:De,startsExpr:k}),at:lr("@"),hash:lr("#",{startsExpr:k}),interpreterDirective:lr("#!..."),eq:lr("=",{beforeExpr:De,isAssign:ct}),assign:lr("_=",{beforeExpr:De,isAssign:ct}),slashAssign:lr("_=",{beforeExpr:De,isAssign:ct}),xorAssign:lr("_=",{beforeExpr:De,isAssign:ct}),moduloAssign:lr("_=",{beforeExpr:De,isAssign:ct}),incDec:lr("++/--",{prefix:Me,postfix:je,startsExpr:k}),bang:lr("!",{beforeExpr:De,prefix:Me,startsExpr:k}),tilde:lr("~",{beforeExpr:De,prefix:Me,startsExpr:k}),doubleCaret:lr("^^",{startsExpr:k}),doubleAt:lr("@@",{startsExpr:k}),pipeline:Tr("|>",0),nullishCoalescing:Tr("??",1),logicalOR:Tr("||",1),logicalAND:Tr("&&",2),bitwiseOR:Tr("|",3),bitwiseXOR:Tr("^",4),bitwiseAND:Tr("&",5),equality:Tr("==/!=/===/!==",6),lt:Tr("/<=/>=",7),gt:Tr("/<=/>=",7),relational:Tr("/<=/>=",7),bitShift:Tr("<>/>>>",8),bitShiftL:Tr("<>/>>>",8),bitShiftR:Tr("<>/>>>",8),plusMin:lr("+/-",{beforeExpr:De,binop:9,prefix:Me,startsExpr:k}),modulo:lr("%",{binop:10,startsExpr:k}),star:lr("*",{binop:10}),slash:Tr("/",10),exponent:lr("**",{beforeExpr:De,binop:11,rightAssociative:!0}),_in:Yt("in",{beforeExpr:De,binop:7}),_instanceof:Yt("instanceof",{beforeExpr:De,binop:7}),_break:Yt("break"),_case:Yt("case",{beforeExpr:De}),_catch:Yt("catch"),_continue:Yt("continue"),_debugger:Yt("debugger"),_default:Yt("default",{beforeExpr:De}),_else:Yt("else",{beforeExpr:De}),_finally:Yt("finally"),_function:Yt("function",{startsExpr:k}),_if:Yt("if"),_return:Yt("return",{beforeExpr:De}),_switch:Yt("switch"),_throw:Yt("throw",{beforeExpr:De,prefix:Me,startsExpr:k}),_try:Yt("try"),_var:Yt("var"),_const:Yt("const"),_with:Yt("with"),_new:Yt("new",{beforeExpr:De,startsExpr:k}),_this:Yt("this",{startsExpr:k}),_super:Yt("super",{startsExpr:k}),_class:Yt("class",{startsExpr:k}),_extends:Yt("extends",{beforeExpr:De}),_export:Yt("export"),_import:Yt("import",{startsExpr:k}),_null:Yt("null",{startsExpr:k}),_true:Yt("true",{startsExpr:k}),_false:Yt("false",{startsExpr:k}),_typeof:Yt("typeof",{beforeExpr:De,prefix:Me,startsExpr:k}),_void:Yt("void",{beforeExpr:De,prefix:Me,startsExpr:k}),_delete:Yt("delete",{beforeExpr:De,prefix:Me,startsExpr:k}),_do:Yt("do",{isLoop:et,beforeExpr:De}),_for:Yt("for",{isLoop:et}),_while:Yt("while",{isLoop:et}),_as:cr("as",{startsExpr:k}),_assert:cr("assert",{startsExpr:k}),_async:cr("async",{startsExpr:k}),_await:cr("await",{startsExpr:k}),_defer:cr("defer",{startsExpr:k}),_from:cr("from",{startsExpr:k}),_get:cr("get",{startsExpr:k}),_let:cr("let",{startsExpr:k}),_meta:cr("meta",{startsExpr:k}),_of:cr("of",{startsExpr:k}),_sent:cr("sent",{startsExpr:k}),_set:cr("set",{startsExpr:k}),_source:cr("source",{startsExpr:k}),_static:cr("static",{startsExpr:k}),_using:cr("using",{startsExpr:k}),_yield:cr("yield",{startsExpr:k}),_asserts:cr("asserts",{startsExpr:k}),_checks:cr("checks",{startsExpr:k}),_exports:cr("exports",{startsExpr:k}),_global:cr("global",{startsExpr:k}),_implements:cr("implements",{startsExpr:k}),_intrinsic:cr("intrinsic",{startsExpr:k}),_infer:cr("infer",{startsExpr:k}),_is:cr("is",{startsExpr:k}),_mixins:cr("mixins",{startsExpr:k}),_proto:cr("proto",{startsExpr:k}),_require:cr("require",{startsExpr:k}),_satisfies:cr("satisfies",{startsExpr:k}),_keyof:cr("keyof",{startsExpr:k}),_readonly:cr("readonly",{startsExpr:k}),_unique:cr("unique",{startsExpr:k}),_abstract:cr("abstract",{startsExpr:k}),_declare:cr("declare",{startsExpr:k}),_enum:cr("enum",{startsExpr:k}),_module:cr("module",{startsExpr:k}),_namespace:cr("namespace",{startsExpr:k}),_interface:cr("interface",{startsExpr:k}),_type:cr("type",{startsExpr:k}),_opaque:cr("opaque",{startsExpr:k}),name:lr("name",{startsExpr:k}),placeholder:lr("%%",{startsExpr:!0}),string:lr("string",{startsExpr:k}),num:lr("num",{startsExpr:k}),bigint:lr("bigint",{startsExpr:k}),decimal:lr("decimal",{startsExpr:k}),regexp:lr("regexp",{startsExpr:k}),privateName:lr("#name",{startsExpr:k}),eof:lr("eof"),jsxName:lr("jsxName"),jsxText:lr("jsxText",{beforeExpr:!0}),jsxTagStart:lr("jsxTagStart",{startsExpr:!0}),jsxTagEnd:lr("jsxTagEnd")};function qr(se){return se>=93&&se<=133}function _n(se){return se<=92}function ke(se){return se>=58&&se<=133}function jt(se){return se>=58&&se<=137}function Fn(se){return Zr[se]}function Nn(se){return qt[se]}function Hi(se){return se>=29&&se<=33}function po(se){return se>=129&&se<=131}function Vr(se){return se>=90&&se<=92}function xi(se){return se>=58&&se<=92}function io(se){return se>=39&&se<=59}function ga(se){return se===34}function Ya(se){return Xt[se]}function Gc(se){return se>=121&&se<=123}function cl(se){return se>=124&&se<=130}function Sc(se){return vt[se]}function Hr(se){return xt[se]}function Wr(se){return se===57}function Ft(se){return se>=24&&se<=25}function zr(se){return er[se]}er[8].updateContext=se=>{se.pop()},er[5].updateContext=er[7].updateContext=er[23].updateContext=se=>{se.push(Se.brace)},er[22].updateContext=se=>{se[se.length-1]===Se.template?se.pop():se.push(Se.template)},er[143].updateContext=se=>{se.push(Se.j_expr,Se.j_oTag)};var Rn="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",Or="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Qi=new RegExp("["+Rn+"]"),ps=new RegExp("["+Rn+Or+"]");Rn=Or=null;var yo=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],bo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Qa(se,O){let K=65536;for(let we=0,gt=O.length;wese)return!1;if(K+=O[we+1],K>=se)return!0}return!1}function gc(se){return se<65?se===36:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&Qi.test(String.fromCharCode(se)):Qa(se,yo)}function Cg(se){return se<48?se===36:se<58?!0:se<65?!1:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&ps.test(String.fromCharCode(se)):Qa(se,yo)||Qa(se,bo)}var Nc={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},iA=new Set(Nc.keyword),ma=new Set(Nc.strict),vu=new Set(Nc.strictBind);function li(se,O){return O&&se==="await"||se==="enum"}function Ei(se,O){return li(se,O)||ma.has(se)}function Ps(se){return vu.has(se)}function Xa(se,O){return Ei(se,O)||Ps(se)}function ac(se){return iA.has(se)}function Yl(se,O,K){return se===64&&O===64&&gc(K)}var Wc=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Sg(se){return Wc.has(se)}var Ul=class{constructor(se){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=se}},Xu=class{constructor(se,O){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=se,this.inModule=O}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let se=this.currentThisScopeFlags();return(se&64)>0&&(se&2)===0}get inStaticBlock(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&128)return!0;if(O&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(se){return new Ul(se)}enter(se){this.scopeStack.push(this.createScope(se))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(se){return!!(se.flags&130||!this.parser.inModule&&se.flags&1)}declareName(se,O,K){let we=this.currentScope();if(O&8||O&16){this.checkRedeclarationInScope(we,se,O,K);let gt=we.names.get(se)||0;O&16?gt=gt|4:(we.firstLexicalName||(we.firstLexicalName=se),gt=gt|2),we.names.set(se,gt),O&8&&this.maybeExportDefined(we,se)}else if(O&4)for(let gt=this.scopeStack.length-1;gt>=0&&(we=this.scopeStack[gt],this.checkRedeclarationInScope(we,se,O,K),we.names.set(se,(we.names.get(se)||0)|1),this.maybeExportDefined(we,se),!(we.flags&387));--gt);this.parser.inModule&&we.flags&1&&this.undefinedExports.delete(se)}maybeExportDefined(se,O){this.parser.inModule&&se.flags&1&&this.undefinedExports.delete(O)}checkRedeclarationInScope(se,O,K,we){this.isRedeclaredInScope(se,O,K)&&this.parser.raise(X.VarRedeclaration,we,{identifierName:O})}isRedeclaredInScope(se,O,K){if(!(K&1))return!1;if(K&8)return se.names.has(O);let we=se.names.get(O);return K&16?(we&2)>0||!this.treatFunctionsAsVarInScope(se)&&(we&1)>0:(we&2)>0&&!(se.flags&8&&se.firstLexicalName===O)||!this.treatFunctionsAsVarInScope(se)&&(we&4)>0}checkLocalExport(se){let{name:O}=se;this.scopeStack[0].names.has(O)||this.undefinedExports.set(O,se.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&387)return O}}currentThisScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&451&&!(O&4))return O}}},Da=class extends Ul{constructor(...se){super(...se),this.declareFunctions=new Set}},pu=class extends Xu{createScope(se){return new Da(se)}declareName(se,O,K){let we=this.currentScope();if(O&2048){this.checkRedeclarationInScope(we,se,O,K),this.maybeExportDefined(we,se),we.declareFunctions.add(se);return}super.declareName(se,O,K)}isRedeclaredInScope(se,O,K){if(super.isRedeclaredInScope(se,O,K))return!0;if(K&2048&&!se.declareFunctions.has(O)){let we=se.names.get(O);return(we&4)>0||(we&2)>0}return!1}checkLocalExport(se){this.scopeStack[0].declareFunctions.has(se.name)||super.checkLocalExport(se)}},_g=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(se){return se+this.startIndex}offsetToSourcePos(se){return se-this.startIndex}hasPlugin(se){if(typeof se=="string")return this.plugins.has(se);{let[O,K]=se;if(!this.hasPlugin(O))return!1;let we=this.plugins.get(O);for(let gt of Object.keys(K))if(we?.[gt]!==K[gt])return!1;return!0}}getPluginOption(se,O){var K;return(K=this.plugins.get(se))==null?void 0:K[O]}};function mI(se,O){se.trailingComments===void 0?se.trailingComments=O:se.trailingComments.unshift(...O)}function Qh(se,O){se.leadingComments===void 0?se.leadingComments=O:se.leadingComments.unshift(...O)}function Ri(se,O){se.innerComments===void 0?se.innerComments=O:se.innerComments.unshift(...O)}function Do(se,O,K){let we=null,gt=O.length;for(;we===null&>>0;)we=O[--gt];we===null||we.start>K.start?Ri(se,K.comments):mI(we,K.comments)}var Wt=class extends _g{addComment(se){this.filename&&(se.loc.filename=this.filename);let{commentsLen:O}=this.state;this.comments.length!==O&&(this.comments.length=O),this.comments.push(se),this.state.commentsLen++}processComment(se){let{commentStack:O}=this.state,K=O.length;if(K===0)return;let we=K-1,gt=O[we];gt.start===se.end&&(gt.leadingNode=se,we--);let{start:sr}=se;for(;we>=0;we--){let Yr=O[we],Lr=Yr.end;if(Lr>sr)Yr.containingNode=se,this.finalizeComment(Yr),O.splice(we,1);else{Lr===sr&&(Yr.trailingNode=se);break}}}finalizeComment(se){let{comments:O}=se;if(se.leadingNode!==null||se.trailingNode!==null)se.leadingNode!==null&&mI(se.leadingNode,O),se.trailingNode!==null&&Qh(se.trailingNode,O);else{let{containingNode:K,start:we}=se;if(this.input.charCodeAt(this.offsetToSourcePos(we)-1)===44)switch(K.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Do(K,K.properties,se);break;case"CallExpression":case"OptionalCallExpression":Do(K,K.arguments,se);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Do(K,K.params,se);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Do(K,K.elements,se);break;case"ExportNamedDeclaration":case"ImportDeclaration":Do(K,K.specifiers,se);break;case"TSEnumDeclaration":Do(K,K.members,se);break;case"TSEnumBody":Do(K,K.members,se);break;default:Ri(K,O)}else Ri(K,O)}}finalizeRemainingComments(){let{commentStack:se}=this.state;for(let O=se.length-1;O>=0;O--)this.finalizeComment(se[O]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(se){let{commentStack:O}=this.state,{length:K}=O;if(K===0)return;let we=O[K-1];we.leadingNode===se&&(we.leadingNode=null)}resetPreviousIdentifierLeadingComments(se){let{commentStack:O}=this.state,{length:K}=O;K!==0&&(O[K-1].trailingNode===se?O[K-1].trailingNode=null:K>=2&&O[K-2].trailingNode===se&&(O[K-2].trailingNode=null))}takeSurroundingComments(se,O,K){let{commentStack:we}=this.state,gt=we.length;if(gt===0)return;let sr=gt-1;for(;sr>=0;sr--){let Yr=we[sr],Lr=Yr.end;if(Yr.start===K)Yr.leadingNode=se;else if(Lr===O)Yr.trailingNode=se;else if(Lr0}set strict(O){O?this.flags|=1:this.flags&=-2}init({strictMode:O,sourceType:K,startIndex:we,startLine:gt,startColumn:sr}){this.strict=O===!1?!1:O===!0?!0:K==="module",this.startIndex=we,this.curLine=gt,this.lineStart=-sr,this.startLoc=this.endLoc=new r(gt,sr,we)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(O){O?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(O){O?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(O){O?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(O){O?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(O){O?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(O){O?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(O){O?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(O){O?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(O){O?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(O){O?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(O){O?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(O){O?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let O=new byi;return O.flags=this.flags,O.startIndex=this.startIndex,O.curLine=this.curLine,O.lineStart=this.lineStart,O.startLoc=this.startLoc,O.endLoc=this.endLoc,O.errors=this.errors.slice(),O.potentialArrowAt=this.potentialArrowAt,O.noArrowAt=this.noArrowAt.slice(),O.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),O.topicContext=this.topicContext,O.labels=this.labels.slice(),O.commentsLen=this.commentsLen,O.commentStack=this.commentStack.slice(),O.pos=this.pos,O.type=this.type,O.value=this.value,O.start=this.start,O.end=this.end,O.lastTokEndLoc=this.lastTokEndLoc,O.lastTokStartLoc=this.lastTokStartLoc,O.context=this.context.slice(),O.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,O.strictErrors=this.strictErrors,O.tokensLength=this.tokensLength,O}},GA=function(se){return se>=48&&se<=57},$i={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},dl={bin:se=>se===48||se===49,oct:se=>se>=48&&se<=55,dec:se=>se>=48&&se<=57,hex:se=>se>=48&&se<=57||se>=65&&se<=70||se>=97&&se<=102};function Uf(se,O,K,we,gt,sr){let Yr=K,Lr=we,fi=gt,$n="",ra=null,kc=K,{length:Nl}=O;for(;;){if(K>=Nl){sr.unterminated(Yr,Lr,fi),$n+=O.slice(kc,K);break}let ca=O.charCodeAt(K);if(Kd(se,ca,O,K)){$n+=O.slice(kc,K);break}if(ca===92){$n+=O.slice(kc,K);let Bl=oA(O,K,we,gt,se==="template",sr);Bl.ch===null&&!ra?ra={pos:K,lineStart:we,curLine:gt}:$n+=Bl.ch,{pos:K,lineStart:we,curLine:gt}=Bl,kc=K}else ca===8232||ca===8233?(++K,++gt,we=K):ca===10||ca===13?se==="template"?($n+=O.slice(kc,K)+` `,++K,ca===13&&O.charCodeAt(K)===10&&++K,++gt,kc=we=K):sr.unterminated(Yr,Lr,fi):++K}return{pos:K,str:$n,firstInvalidLoc:ra,lineStart:we,curLine:gt,containsInvalid:!!ra}}function Kd(se,O,K,we){return se==="template"?O===96||O===36&&K.charCodeAt(we+1)===123:O===(se==="double"?34:39)}function oA(se,O,K,we,gt,sr){let Yr=!gt;O++;let Lr=$n=>({pos:O,ch:$n,lineStart:K,curLine:we}),fi=se.charCodeAt(O++);switch(fi){case 110:return Lr(` -`);case 114:return Lr("\r");case 120:{let $n;return{code:$n,pos:O}=oo(se,O,K,we,2,!1,Yr,sr),Lr($n===null?null:String.fromCharCode($n))}case 117:{let $n;return{code:$n,pos:O}=cc(se,O,K,we,Yr,sr),Lr($n===null?null:String.fromCodePoint($n))}case 116:return Lr(" ");case 98:return Lr("\b");case 118:return Lr("\v");case 102:return Lr("\f");case 13:se.charCodeAt(O)===10&&++O;case 10:K=O,++we;case 8232:case 8233:return Lr("");case 56:case 57:if(gt)return Lr(null);sr.strictNumericEscape(O-1,K,we);default:if(fi>=48&&fi<=55){let $n=O-1,ra=/^[0-7]+/.exec(se.slice($n,O+2))[0],kc=parseInt(ra,8);kc>255&&(ra=ra.slice(0,-1),kc=parseInt(ra,8)),O+=ra.length-1;let Nl=se.charCodeAt(O);if(ra!=="0"||Nl===56||Nl===57){if(gt)return Lr(null);sr.strictNumericEscape($n,K,we)}return Lr(String.fromCharCode(kc))}return Lr(String.fromCharCode(fi))}}function oo(se,O,K,we,gt,sr,Yr,Lr){let fi=O,$n;return{n:$n,pos:O}=Ki(se,O,K,we,16,gt,sr,!1,Lr,!Yr),$n===null&&(Yr?Lr.invalidEscapeSequence(fi,K,we):O=fi-1),{code:$n,pos:O}}function Ki(se,O,K,we,gt,sr,Yr,Lr,fi,$n){let ra=O,kc=gt===16?$i.hex:$i.decBinOct,Nl=gt===16?dl.hex:gt===10?dl.dec:gt===8?dl.oct:dl.bin,ca=!1,Bl=0;for(let $g=0,SA=sr??1/0;$g=97?lp=lI-97+10:lI>=65?lp=lI-65+10:GA(lI)?lp=lI-48:lp=1/0,lp>=gt){if(lp<=9&&$n)return{n:null,pos:O};if(lp<=9&&fi.invalidDigit(O,K,we,gt))lp=0;else if(Yr)lp=0,ca=!0;else break}++O,Bl=Bl*gt+lp}return O===ra||sr!=null&&O-ra!==sr||ca?{n:null,pos:O}:{n:Bl,pos:O}}function cc(se,O,K,we,gt,sr){let Yr=se.charCodeAt(O),Lr;if(Yr===123){if(++O,{code:Lr,pos:O}=oo(se,O,K,we,se.indexOf("}",O)-O,!0,gt,sr),++O,Lr!==null&&Lr>1114111)if(gt)sr.invalidCodePoint(O,K,we);else return{code:null,pos:O}}else({code:Lr,pos:O}=oo(se,O,K,we,4,!1,gt,sr));return{code:Lr,pos:O}}function Xs(se,O,K){return new r(K,se-O,se)}var ws=new Set([103,109,115,105,121,117,100,118]),Gs=class{constructor(se){let O=se.startIndex||0;this.type=se.type,this.value=se.value,this.start=O+se.start,this.end=O+se.end,this.loc=new n(se.startLoc,se.endLoc)}},Ma=class extends Wt{constructor(se,O){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(K,we,gt,sr)=>this.optionFlags&1024?(this.raise(X.InvalidDigit,Xs(K,we,gt),{radix:sr}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(X.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(X.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(X.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(X.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(K,we,gt)=>{this.recordStrictModeErrors(X.StrictNumericEscape,Xs(K,we,gt))},unterminated:(K,we,gt)=>{throw this.raise(X.UnterminatedString,Xs(K-1,we,gt))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(X.StrictNumericEscape),unterminated:(K,we,gt)=>{throw this.raise(X.UnterminatedTemplate,Xs(K,we,gt))}}),this.state=new OA,this.state.init(se),this.input=O,this.length=O.length,this.comments=[],this.isLookahead=!1}pushToken(se){this.tokens.length=this.state.tokensLength,this.tokens.push(se),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new Gs(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(se){return this.match(se)?(this.next(),!0):!1}match(se){return this.state.type===se}createLookaheadState(se){return{pos:se.pos,value:null,type:se.type,start:se.start,end:se.end,context:[this.curContext()],inType:se.inType,startLoc:se.startLoc,lastTokEndLoc:se.lastTokEndLoc,curLine:se.curLine,lineStart:se.lineStart,curPosition:se.curPosition}}lookahead(){let se=this.state;this.state=this.createLookaheadState(se),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let O=this.state;return this.state=se,O}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(se){return Yn.lastIndex=se,Yn.test(this.input)?Yn.lastIndex:se}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(se){return Ko.lastIndex=se,Ko.test(this.input)?Ko.lastIndex:se}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(se){let O=this.input.charCodeAt(se);if((O&64512)===55296&&++sethis.raise(O,K)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(se){let O;this.isLookahead||(O=this.state.curPosition());let K=this.state.pos,we=this.input.indexOf(se,K+2);if(we===-1)throw this.raise(X.UnterminatedComment,this.state.curPosition());for(this.state.pos=we+se.length,Ru.lastIndex=K+2;Ru.test(this.input)&&Ru.lastIndex<=we;)++this.state.curLine,this.state.lineStart=Ru.lastIndex;if(this.isLookahead)return;let gt={type:"CommentBlock",value:this.input.slice(K+2,we),start:this.sourceToOffsetPos(K),end:this.sourceToOffsetPos(we+se.length),loc:new n(O,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(gt),gt}skipLineComment(se){let O=this.state.pos,K;this.isLookahead||(K=this.state.curPosition());let we=this.input.charCodeAt(this.state.pos+=se);if(this.state.posse)){let gt=this.skipLineComment(3);gt!==void 0&&(this.addComment(gt),O?.push(gt))}else break e}else if(K===60&&!this.inModule&&this.optionFlags&4096){let we=this.state.pos;if(this.input.charCodeAt(we+1)===33&&this.input.charCodeAt(we+2)===45&&this.input.charCodeAt(we+3)===45){let gt=this.skipLineComment(4);gt!==void 0&&(this.addComment(gt),O?.push(gt))}else break e}else break e}}if(O?.length>0){let K=this.state.pos,we={start:this.sourceToOffsetPos(se),end:this.sourceToOffsetPos(K),comments:O,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(we)}}finishToken(se,O){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let K=this.state.type;this.state.type=se,this.state.value=O,this.isLookahead||this.updateContext(K)}replaceToken(se){this.state.type=se,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let se=this.state.pos+1,O=this.codePointAtPos(se);if(O>=48&&O<=57)throw this.raise(X.UnexpectedDigitAfterHash,this.state.curPosition());if(O===123||O===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(O===123?X.RecordExpressionHashIncorrectStartSyntaxType:X.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,O===123?this.finishToken(7):this.finishToken(1)}else gc(O)?(++this.state.pos,this.finishToken(139,this.readWord1(O))):O===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let se=this.input.charCodeAt(this.state.pos+1);if(se>=48&&se<=57){this.readNumber(!0);return}se===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let se=this.input.charCodeAt(this.state.pos+1);if(se!==33)return!1;let O=this.state.pos;for(this.state.pos+=1;!Vs(se)&&++this.state.pos=48&&O<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(se){switch(se){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(X.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(X.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let O=this.input.charCodeAt(this.state.pos+1);if(O===120||O===88){this.readRadixNumber(16);return}if(O===111||O===79){this.readRadixNumber(8);return}if(O===98||O===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(se);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(se);return;case 124:case 38:this.readToken_pipe_amp(se);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(se);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(se);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(gc(se)){this.readWord(se);return}}throw this.raise(X.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(se)})}finishOp(se,O){let K=this.input.slice(this.state.pos,this.state.pos+O);this.state.pos+=O,this.finishToken(se,K)}readRegexp(){let se=this.state.startLoc,O=this.state.start+1,K,we,{pos:gt}=this.state;for(;;++gt){if(gt>=this.length)throw this.raise(X.UnterminatedRegExp,a(se,1));let fi=this.input.charCodeAt(gt);if(Vs(fi))throw this.raise(X.UnterminatedRegExp,a(se,1));if(K)K=!1;else{if(fi===91)we=!0;else if(fi===93&&we)we=!1;else if(fi===47&&!we)break;K=fi===92}}let sr=this.input.slice(O,gt);++gt;let Yr="",Lr=()=>a(se,gt+2-O);for(;gt=2&&this.input.charCodeAt(O)===48;if(Lr){let Nl=this.input.slice(O,this.state.pos);if(this.recordStrictModeErrors(X.StrictOctalLiteral,K),!this.state.strict){let ca=Nl.indexOf("_");ca>0&&this.raise(X.ZeroDigitNumericSeparator,a(K,ca))}Yr=Lr&&!/[89]/.test(Nl)}let fi=this.input.charCodeAt(this.state.pos);if(fi===46&&!Yr&&(++this.state.pos,this.readInt(10),we=!0,fi=this.input.charCodeAt(this.state.pos)),(fi===69||fi===101)&&!Yr&&(fi=this.input.charCodeAt(++this.state.pos),(fi===43||fi===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(X.InvalidOrMissingExponent,K),we=!0,sr=!0,fi=this.input.charCodeAt(this.state.pos)),fi===110&&((we||Lr)&&this.raise(X.InvalidBigIntLiteral,K),++this.state.pos,gt=!0),fi===109){this.expectPlugin("decimal",this.state.curPosition()),(sr||Lr)&&this.raise(X.InvalidDecimal,K),++this.state.pos;var $n=!0}if(gc(this.codePointAtPos(this.state.pos)))throw this.raise(X.NumberIdentifier,this.state.curPosition());let ra=this.input.slice(O,this.state.pos).replace(/[_mn]/g,"");if(gt){this.finishToken(136,ra);return}if($n){this.finishToken(137,ra);return}let kc=Yr?parseInt(ra,8):parseFloat(ra);this.finishToken(135,kc)}readCodePoint(se){let{code:O,pos:K}=cc(this.input,this.state.pos,this.state.lineStart,this.state.curLine,se,this.errorHandlers_readCodePoint);return this.state.pos=K,O}readString(se){let{str:O,pos:K,curLine:we,lineStart:gt}=Uf(se===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=K+1,this.state.lineStart=gt,this.state.curLine=we,this.finishToken(134,O)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let se=this.input[this.state.pos],{str:O,firstInvalidLoc:K,pos:we,curLine:gt,lineStart:sr}=Uf("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=we+1,this.state.lineStart=sr,this.state.curLine=gt,K&&(this.state.firstInvalidTemplateEscapePos=new r(K.curLine,K.pos-K.lineStart,this.sourceToOffsetPos(K.pos))),this.input.codePointAt(we)===96?this.finishToken(24,K?null:se+O+"`"):(this.state.pos++,this.finishToken(25,K?null:se+O+"${"))}recordStrictModeErrors(se,O){let K=O.index;this.state.strict&&!this.state.strictErrors.has(K)?this.raise(se,O):this.state.strictErrors.set(K,[se,O])}readWord1(se){this.state.containsEsc=!1;let O="",K=this.state.pos,we=this.state.pos;for(se!==void 0&&(this.state.pos+=se<=65535?1:2);this.state.pos=0;Yr--){let Lr=sr[Yr];if(Lr.loc.index===gt)return sr[Yr]=se(we,K);if(Lr.loc.indexthis.hasPlugin(O)))throw this.raise(X.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:se})}errorBuilder(se){return(O,K,we)=>{this.raise(se,Xs(O,K,we))}}},Dc=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},As=class{constructor(se){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=se}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Dc)}exit(){let se=this.stack.pop(),O=this.current();for(let[K,we]of Array.from(se.undefinedPrivateNames))O?O.undefinedPrivateNames.has(K)||O.undefinedPrivateNames.set(K,we):this.parser.raise(X.InvalidPrivateFieldResolution,we,{identifierName:K})}declarePrivateName(se,O,K){let{privateNames:we,loneAccessors:gt,undefinedPrivateNames:sr}=this.current(),Yr=we.has(se);if(O&3){let Lr=Yr&>.get(se);if(Lr){let fi=Lr&4,$n=O&4,ra=Lr&3,kc=O&3;Yr=ra===kc||fi!==$n,Yr||gt.delete(se)}else Yr||gt.set(se,O)}Yr&&this.parser.raise(X.PrivateNameRedeclaration,K,{identifierName:se}),we.add(se),sr.delete(se)}usePrivateName(se,O){let K;for(K of this.stack)if(K.privateNames.has(se))return;K?K.undefinedPrivateNames.set(se,O):this.parser.raise(X.InvalidPrivateFieldResolution,O,{identifierName:se})}},Tf=class{constructor(se=0){this.type=se}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},cm=class extends Tf{constructor(se){super(se),this.declarationErrors=new Map}recordDeclarationError(se,O){let K=O.index;this.declarationErrors.set(K,[se,O])}clearDeclarationError(se){this.declarationErrors.delete(se)}iterateErrors(se){this.declarationErrors.forEach(se)}},Fl=class{constructor(se){this.parser=void 0,this.stack=[new Tf],this.parser=se}enter(se){this.stack.push(se)}exit(){this.stack.pop()}recordParameterInitializerError(se,O){let K=O.loc.start,{stack:we}=this,gt=we.length-1,sr=we[gt];for(;!sr.isCertainlyParameterDeclaration();){if(sr.canBeArrowParameterDeclaration())sr.recordDeclarationError(se,K);else return;sr=we[--gt]}this.parser.raise(se,K)}recordArrowParameterBindingError(se,O){let{stack:K}=this,we=K[K.length-1],gt=O.loc.start;if(we.isCertainlyParameterDeclaration())this.parser.raise(se,gt);else if(we.canBeArrowParameterDeclaration())we.recordDeclarationError(se,gt);else return}recordAsyncArrowParametersError(se){let{stack:O}=this,K=O.length-1,we=O[K];for(;we.canBeArrowParameterDeclaration();)we.type===2&&we.recordDeclarationError(X.AwaitBindingIdentifier,se),we=O[--K]}validateAsPattern(){let{stack:se}=this,O=se[se.length-1];O.canBeArrowParameterDeclaration()&&O.iterateErrors(([K,we])=>{this.parser.raise(K,we);let gt=se.length-2,sr=se[gt];for(;sr.canBeArrowParameterDeclaration();)sr.clearDeclarationError(we.index),sr=se[--gt]})}};function rc(){return new Tf(3)}function sd(){return new cm(1)}function Om(){return new cm(2)}function il(){return new Tf}var FA=class{constructor(){this.stacks=[]}enter(se){this.stacks.push(se)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function ZA(se,O){return(se?2:0)|(O?1:0)}var El=class extends Ma{addExtra(se,O,K,we=!0){if(!se)return;let{extra:gt}=se;gt==null&&(gt={},se.extra=gt),we?gt[O]=K:Object.defineProperty(gt,O,{enumerable:we,value:K})}isContextual(se){return this.state.type===se&&!this.state.containsEsc}isUnparsedContextual(se,O){let K=se+O.length;if(this.input.slice(se,K)===O){let we=this.input.charCodeAt(K);return!(Cg(we)||(we&64512)===55296)}return!1}isLookaheadContextual(se){let O=this.nextTokenStart();return this.isUnparsedContextual(O,se)}eatContextual(se){return this.isContextual(se)?(this.next(),!0):!1}expectContextual(se,O){if(!this.eatContextual(se)){if(O!=null)throw this.raise(O,this.state.startLoc);this.unexpected(null,se)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ju(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Ju(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(se=!0){(se?this.isLineTerminator():this.eat(13))||this.raise(X.MissingSemicolon,this.state.lastTokEndLoc)}expect(se,O){this.eat(se)||this.unexpected(O,se)}tryParse(se,O=this.state.clone()){let K={node:null};try{let we=se((gt=null)=>{throw K.node=gt,K});if(this.state.errors.length>O.errors.length){let gt=this.state;return this.state=O,this.state.tokensLength=gt.tokensLength,{node:we,error:gt.errors[O.errors.length],thrown:!1,aborted:!1,failState:gt}}return{node:we,error:null,thrown:!1,aborted:!1,failState:null}}catch(we){let gt=this.state;if(this.state=O,we instanceof SyntaxError)return{node:null,error:we,thrown:!0,aborted:!1,failState:gt};if(we===K)return{node:K.node,error:null,thrown:!1,aborted:!0,failState:gt};throw we}}checkExpressionErrors(se,O){if(!se)return!1;let{shorthandAssignLoc:K,doubleProtoLoc:we,privateKeyLoc:gt,optionalParametersLoc:sr}=se,Yr=!!K||!!we||!!sr||!!gt;if(!O)return Yr;K!=null&&this.raise(X.InvalidCoverInitializedName,K),we!=null&&this.raise(X.DuplicateProto,we),gt!=null&&this.raise(X.UnexpectedPrivateField,gt),sr!=null&&this.unexpected(sr)}isLiteralPropertyName(){return jt(this.state.type)}isPrivateName(se){return se.type==="PrivateName"}getPrivateNameSV(se){return se.id.name}hasPropertyAsPrivateName(se){return(se.type==="MemberExpression"||se.type==="OptionalMemberExpression")&&this.isPrivateName(se.property)}isObjectProperty(se){return se.type==="ObjectProperty"}isObjectMethod(se){return se.type==="ObjectMethod"}initializeScopes(se=this.options.sourceType==="module"){let O=this.state.labels;this.state.labels=[];let K=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let we=this.inModule;this.inModule=se;let gt=this.scope,sr=this.getScopeHandler();this.scope=new sr(this,se);let Yr=this.prodParam;this.prodParam=new FA;let Lr=this.classScope;this.classScope=new As(this);let fi=this.expressionScope;return this.expressionScope=new Fl(this),()=>{this.state.labels=O,this.exportedIdentifiers=K,this.inModule=we,this.scope=gt,this.prodParam=Yr,this.classScope=Lr,this.expressionScope=fi}}enterInitialScopes(){let se=0;this.inModule&&(se|=2),this.scope.enter(1),this.prodParam.enter(se)}checkDestructuringPrivate(se){let{privateKeyLoc:O}=se;O!==null&&this.expectPlugin("destructuringPrivate",O)}},yg=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Mp=class{constructor(se,O,K){this.type="",this.start=O,this.end=0,this.loc=new n(K),se?.optionFlags&64&&(this.range=[O,0]),se!=null&&se.filename&&(this.loc.filename=se.filename)}},MA=Mp.prototype;MA.__clone=function(){let se=new Mp(void 0,this.start,this.loc.start),O=Object.keys(this);for(let K=0,we=O.length;K`Cannot overwrite reserved type ${se}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:se,enumName:O})=>`Boolean enum members need to be initialized. Use either \`${se} = true,\` or \`${se} = false,\` in enum \`${O}\`.`,EnumDuplicateMemberName:({memberName:se,enumName:O})=>`Enum member names need to be unique, but the name \`${se}\` has already been used before in enum \`${O}\`.`,EnumInconsistentMemberValues:({enumName:se})=>`Enum \`${se}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:se,enumName:O})=>`Enum type \`${se}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${O}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:se})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${se}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:se,memberName:O,explicitType:K})=>`Enum \`${se}\` has type \`${K}\`, so the initializer of \`${O}\` needs to be a ${K} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:se,memberName:O})=>`Symbol enum members cannot be initialized. Use \`${O},\` in enum \`${se}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:se,memberName:O})=>`The enum member initializer for \`${O}\` needs to be a literal (either a boolean, number, or string) in enum \`${se}\`.`,EnumInvalidMemberName:({enumName:se,memberName:O,suggestion:K})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${O}\`, consider using \`${K}\`, in enum \`${se}\`.`,EnumNumberMemberNotInitialized:({enumName:se,memberName:O})=>`Number enum members need to be initialized, e.g. \`${O} = 1\` in enum \`${se}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:se})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${se}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:se})=>`Unexpected reserved type ${se}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:se,suggestion:O})=>`\`declare export ${se}\` is not supported. Use \`${O}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Wa(se){return se.type==="DeclareExportAllDeclaration"||se.type==="DeclareExportDeclaration"&&(!se.declaration||se.declaration.type!=="TypeAlias"&&se.declaration.type!=="InterfaceDeclaration")}function Ca(se){return se.importKind==="type"||se.importKind==="typeof"}var ld={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Rp(se,O){let K=[],we=[];for(let gt=0;gtclass extends se{constructor(...O){super(...O),this.flowPragma=void 0}getScopeHandler(){return pu}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(O,K){O!==134&&O!==13&&O!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(O,K)}addComment(O){if(this.flowPragma===void 0){let K=np.exec(O.value);if(K)if(K[1]==="flow")this.flowPragma="flow";else if(K[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(O)}flowParseTypeInitialiser(O){let K=this.state.inType;this.state.inType=!0,this.expect(O||14);let we=this.flowParseType();return this.state.inType=K,we}flowParsePredicate(){let O=this.startNode(),K=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>K.index+1&&this.raise(Fs.UnexpectedSpaceBetweenModuloChecks,K),this.eat(10)?(O.value=super.parseExpression(),this.expect(11),this.finishNode(O,"DeclaredPredicate")):this.finishNode(O,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let O=this.state.inType;this.state.inType=!0,this.expect(14);let K=null,we=null;return this.match(54)?(this.state.inType=O,we=this.flowParsePredicate()):(K=this.flowParseType(),this.state.inType=O,this.match(54)&&(we=this.flowParsePredicate())),[K,we]}flowParseDeclareClass(O){return this.next(),this.flowParseInterfaceish(O,!0),this.finishNode(O,"DeclareClass")}flowParseDeclareFunction(O){this.next();let K=O.id=this.parseIdentifier(),we=this.startNode(),gt=this.startNode();this.match(47)?we.typeParameters=this.flowParseTypeParameterDeclaration():we.typeParameters=null,this.expect(10);let sr=this.flowParseFunctionTypeParams();return we.params=sr.params,we.rest=sr.rest,we.this=sr._this,this.expect(11),[we.returnType,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),gt.typeAnnotation=this.finishNode(we,"FunctionTypeAnnotation"),K.typeAnnotation=this.finishNode(gt,"TypeAnnotation"),this.resetEndLocation(K),this.semicolon(),this.scope.declareName(O.id.name,2048,O.id.loc.start),this.finishNode(O,"DeclareFunction")}flowParseDeclare(O,K){if(this.match(80))return this.flowParseDeclareClass(O);if(this.match(68))return this.flowParseDeclareFunction(O);if(this.match(74))return this.flowParseDeclareVariable(O);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(O):(K&&this.raise(Fs.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(O));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(O);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(O);if(this.isContextual(129))return this.flowParseDeclareInterface(O);if(this.match(82))return this.flowParseDeclareExportDeclaration(O,K);this.unexpected()}flowParseDeclareVariable(O){return this.next(),O.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(O.id.name,5,O.id.loc.start),this.semicolon(),this.finishNode(O,"DeclareVariable")}flowParseDeclareModule(O){this.scope.enter(0),this.match(134)?O.id=super.parseExprAtom():O.id=this.parseIdentifier();let K=O.body=this.startNode(),we=K.body=[];for(this.expect(5);!this.match(8);){let Yr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(Fs.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Yr)):(this.expectContextual(125,Fs.UnsupportedStatementInDeclareModule),Yr=this.flowParseDeclare(Yr,!0)),we.push(Yr)}this.scope.exit(),this.expect(8),this.finishNode(K,"BlockStatement");let gt=null,sr=!1;return we.forEach(Yr=>{Wa(Yr)?(gt==="CommonJS"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),gt="ES"):Yr.type==="DeclareModuleExports"&&(sr&&this.raise(Fs.DuplicateDeclareModuleExports,Yr),gt==="ES"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),gt="CommonJS",sr=!0)}),O.kind=gt||"CommonJS",this.finishNode(O,"DeclareModule")}flowParseDeclareExportDeclaration(O,K){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?O.declaration=this.flowParseDeclare(this.startNode()):(O.declaration=this.flowParseType(),this.semicolon()),O.default=!0,this.finishNode(O,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!K){let we=this.state.value;throw this.raise(Fs.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:we,suggestion:ld[we]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return O.declaration=this.flowParseDeclare(this.startNode()),O.default=!1,this.finishNode(O,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return O=this.parseExport(O,null),O.type==="ExportNamedDeclaration"&&(O.type="ExportDeclaration",O.default=!1,delete O.exportKind),O.type="Declare"+O.type,O;this.unexpected()}flowParseDeclareModuleExports(O){return this.next(),this.expectContextual(111),O.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(O,"DeclareModuleExports")}flowParseDeclareTypeAlias(O){this.next();let K=this.flowParseTypeAlias(O);return K.type="DeclareTypeAlias",K}flowParseDeclareOpaqueType(O){this.next();let K=this.flowParseOpaqueType(O,!0);return K.type="DeclareOpaqueType",K}flowParseDeclareInterface(O){return this.next(),this.flowParseInterfaceish(O,!1),this.finishNode(O,"DeclareInterface")}flowParseInterfaceish(O,K){if(O.id=this.flowParseRestrictedIdentifier(!K,!0),this.scope.declareName(O.id.name,K?17:8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.extends=[],this.eat(81))do O.extends.push(this.flowParseInterfaceExtends());while(!K&&this.eat(12));if(K){if(O.implements=[],O.mixins=[],this.eatContextual(117))do O.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do O.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}O.body=this.flowParseObjectType({allowStatic:K,allowExact:!1,allowSpread:!1,allowProto:K,allowInexact:!1})}flowParseInterfaceExtends(){let O=this.startNode();return O.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?O.typeParameters=this.flowParseTypeParameterInstantiation():O.typeParameters=null,this.finishNode(O,"InterfaceExtends")}flowParseInterface(O){return this.flowParseInterfaceish(O,!1),this.finishNode(O,"InterfaceDeclaration")}checkNotUnderscore(O){O==="_"&&this.raise(Fs.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(O,K,we){oa.has(O)&&this.raise(we?Fs.AssignReservedType:Fs.UnexpectedReservedType,K,{reservedType:O})}flowParseRestrictedIdentifier(O,K){return this.checkReservedType(this.state.value,this.state.startLoc,K),this.parseIdentifier(O)}flowParseTypeAlias(O){return O.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(O.id.name,8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(O,"TypeAlias")}flowParseOpaqueType(O,K){return this.expectContextual(130),O.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(O.id.name,8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.supertype=null,this.match(14)&&(O.supertype=this.flowParseTypeInitialiser(14)),O.impltype=null,K||(O.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(O,"OpaqueType")}flowParseTypeParameter(O=!1){let K=this.state.startLoc,we=this.startNode(),gt=this.flowParseVariance(),sr=this.flowParseTypeAnnotatableIdentifier();return we.name=sr.name,we.variance=gt,we.bound=sr.typeAnnotation,this.match(29)?(this.eat(29),we.default=this.flowParseType()):O&&this.raise(Fs.MissingTypeParamDefault,K),this.finishNode(we,"TypeParameter")}flowParseTypeParameterDeclaration(){let O=this.state.inType,K=this.startNode();K.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let we=!1;do{let gt=this.flowParseTypeParameter(we);K.params.push(gt),gt.default&&(we=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=O,this.finishNode(K,"TypeParameterDeclaration")}flowInTopLevelContext(O){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return O()}finally{this.state.context=K}}else return O()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let O=this.startNode(),K=this.state.inType;return this.state.inType=!0,O.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let we=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)O.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=we}),this.state.inType=K,!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(O,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let O=this.startNode(),K=this.state.inType;for(O.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)O.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=K,this.finishNode(O,"TypeParameterInstantiation")}flowParseInterfaceType(){let O=this.startNode();if(this.expectContextual(129),O.extends=[],this.eat(81))do O.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return O.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(O,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(O,K,we){return O.static=K,this.lookahead().type===14?(O.id=this.flowParseObjectPropertyKey(),O.key=this.flowParseTypeInitialiser()):(O.id=null,O.key=this.flowParseType()),this.expect(3),O.value=this.flowParseTypeInitialiser(),O.variance=we,this.finishNode(O,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(O,K){return O.static=K,O.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(O.method=!0,O.optional=!1,O.value=this.flowParseObjectTypeMethodish(this.startNodeAt(O.loc.start))):(O.method=!1,this.eat(17)&&(O.optional=!0),O.value=this.flowParseTypeInitialiser()),this.finishNode(O,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(O){for(O.params=[],O.rest=null,O.typeParameters=null,O.this=null,this.match(47)&&(O.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(O.this=this.flowParseFunctionTypeParam(!0),O.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)O.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(O.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),O.returnType=this.flowParseTypeInitialiser(),this.finishNode(O,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(O,K){let we=this.startNode();return O.static=K,O.value=this.flowParseObjectTypeMethodish(we),this.finishNode(O,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:O,allowExact:K,allowSpread:we,allowProto:gt,allowInexact:sr}){let Yr=this.state.inType;this.state.inType=!0;let Lr=this.startNode();Lr.callProperties=[],Lr.properties=[],Lr.indexers=[],Lr.internalSlots=[];let fi,$n,ra=!1;for(K&&this.match(6)?(this.expect(6),fi=9,$n=!0):(this.expect(5),fi=8,$n=!1),Lr.exact=$n;!this.match(fi);){let Nl=!1,ca=null,Bl=null,$g=this.startNode();if(gt&&this.isContextual(118)){let lI=this.lookahead();lI.type!==14&&lI.type!==17&&(this.next(),ca=this.state.startLoc,O=!1)}if(O&&this.isContextual(106)){let lI=this.lookahead();lI.type!==14&&lI.type!==17&&(this.next(),Nl=!0)}let SA=this.flowParseVariance();if(this.eat(0))ca!=null&&this.unexpected(ca),this.eat(0)?(SA&&this.unexpected(SA.loc.start),Lr.internalSlots.push(this.flowParseObjectTypeInternalSlot($g,Nl))):Lr.indexers.push(this.flowParseObjectTypeIndexer($g,Nl,SA));else if(this.match(10)||this.match(47))ca!=null&&this.unexpected(ca),SA&&this.unexpected(SA.loc.start),Lr.callProperties.push(this.flowParseObjectTypeCallProperty($g,Nl));else{let lI="init";if(this.isContextual(99)||this.isContextual(104)){let Ib=this.lookahead();jt(Ib.type)&&(lI=this.state.value,this.next())}let lp=this.flowParseObjectTypeProperty($g,Nl,ca,SA,lI,we,sr??!$n);lp===null?(ra=!0,Bl=this.state.lastTokStartLoc):Lr.properties.push(lp)}this.flowObjectTypeSemicolon(),Bl&&!this.match(8)&&!this.match(9)&&this.raise(Fs.UnexpectedExplicitInexactInObject,Bl)}this.expect(fi),we&&(Lr.inexact=ra);let kc=this.finishNode(Lr,"ObjectTypeAnnotation");return this.state.inType=Yr,kc}flowParseObjectTypeProperty(O,K,we,gt,sr,Yr,Lr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Yr?Lr||this.raise(Fs.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Fs.InexactInsideNonObject,this.state.lastTokStartLoc),gt&&this.raise(Fs.InexactVariance,gt),null):(Yr||this.raise(Fs.UnexpectedSpreadType,this.state.lastTokStartLoc),we!=null&&this.unexpected(we),gt&&this.raise(Fs.SpreadVariance,gt),O.argument=this.flowParseType(),this.finishNode(O,"ObjectTypeSpreadProperty"));{O.key=this.flowParseObjectPropertyKey(),O.static=K,O.proto=we!=null,O.kind=sr;let fi=!1;return this.match(47)||this.match(10)?(O.method=!0,we!=null&&this.unexpected(we),gt&&this.unexpected(gt.loc.start),O.value=this.flowParseObjectTypeMethodish(this.startNodeAt(O.loc.start)),(sr==="get"||sr==="set")&&this.flowCheckGetterSetterParams(O),!Yr&&O.key.name==="constructor"&&O.value.this&&this.raise(Fs.ThisParamBannedInConstructor,O.value.this)):(sr!=="init"&&this.unexpected(),O.method=!1,this.eat(17)&&(fi=!0),O.value=this.flowParseTypeInitialiser(),O.variance=gt),O.optional=fi,this.finishNode(O,"ObjectTypeProperty")}}flowCheckGetterSetterParams(O){let K=O.kind==="get"?0:1,we=O.value.params.length+(O.value.rest?1:0);O.value.this&&this.raise(O.kind==="get"?Fs.GetterMayNotHaveThisParam:Fs.SetterMayNotHaveThisParam,O.value.this),we!==K&&this.raise(O.kind==="get"?X.BadGetterArity:X.BadSetterArity,O),O.kind==="set"&&O.value.rest&&this.raise(X.BadSetterRestParameter,O)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(O,K){var we;(we=O)!=null||(O=this.state.startLoc);let gt=K||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let sr=this.startNodeAt(O);sr.qualification=gt,sr.id=this.flowParseRestrictedIdentifier(!0),gt=this.finishNode(sr,"QualifiedTypeIdentifier")}return gt}flowParseGenericType(O,K){let we=this.startNodeAt(O);return we.typeParameters=null,we.id=this.flowParseQualifiedTypeIdentifier(O,K),this.match(47)&&(we.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(we,"GenericTypeAnnotation")}flowParseTypeofType(){let O=this.startNode();return this.expect(87),O.argument=this.flowParsePrimaryType(),this.finishNode(O,"TypeofTypeAnnotation")}flowParseTupleType(){let O=this.startNode();for(O.types=[],this.expect(0);this.state.possuper.parseFunctionBody(O,!0,we));return}super.parseFunctionBody(O,!1,we)}parseFunctionBodyAndFinish(O,K,we=!1){if(this.match(14)){let gt=this.startNode();[gt.typeAnnotation,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),O.returnType=gt.typeAnnotation?this.finishNode(gt,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(O,K,we)}parseStatementLike(O){if(this.state.strict&&this.isContextual(129)){let we=this.lookahead();if(ke(we.type)){let gt=this.startNode();return this.next(),this.flowParseInterface(gt)}}else if(this.isContextual(126)){let we=this.startNode();return this.next(),this.flowParseEnumDeclaration(we)}let K=super.parseStatementLike(O);return this.flowPragma===void 0&&!this.isValidDirective(K)&&(this.flowPragma=null),K}parseExpressionStatement(O,K,we){if(K.type==="Identifier"){if(K.name==="declare"){if(this.match(80)||qr(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(O)}else if(qr(this.state.type)){if(K.name==="interface")return this.flowParseInterface(O);if(K.name==="type")return this.flowParseTypeAlias(O);if(K.name==="opaque")return this.flowParseOpaqueType(O,!1)}}return super.parseExpressionStatement(O,K,we)}shouldParseExportDeclaration(){let{type:O}=this.state;return O===126||po(O)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:O}=this.state;return O===126||po(O)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let O=this.startNode();return this.next(),this.flowParseEnumDeclaration(O)}return super.parseExportDefaultExpression()}parseConditional(O,K,we){if(!this.match(17))return O;if(this.state.maybeInArrowParameters){let kc=this.lookaheadCharCode();if(kc===44||kc===61||kc===58||kc===41)return this.setOptionalParametersError(we),O}this.expect(17);let gt=this.state.clone(),sr=this.state.noArrowAt,Yr=this.startNodeAt(K),{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent(),[$n,ra]=this.getArrowLikeExpressions(Lr);if(fi||ra.length>0){let kc=[...sr];if(ra.length>0){this.state=gt,this.state.noArrowAt=kc;for(let Nl=0;Nl1&&this.raise(Fs.AmbiguousConditionalArrow,gt.startLoc),fi&&$n.length===1&&(this.state=gt,kc.push($n[0].start),this.state.noArrowAt=kc,{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(Lr,!0),this.state.noArrowAt=sr,this.expect(14),Yr.test=O,Yr.consequent=Lr,Yr.alternate=this.forwardNoArrowParamsConversionAt(Yr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Yr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let O=this.parseMaybeAssignAllowIn(),K=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:O,failed:K}}getArrowLikeExpressions(O,K){let we=[O],gt=[];for(;we.length!==0;){let sr=we.pop();sr.type==="ArrowFunctionExpression"&&sr.body.type!=="BlockStatement"?(sr.typeParameters||!sr.returnType?this.finishArrowValidation(sr):gt.push(sr),we.push(sr.body)):sr.type==="ConditionalExpression"&&(we.push(sr.consequent),we.push(sr.alternate))}return K?(gt.forEach(sr=>this.finishArrowValidation(sr)),[gt,[]]):Rp(gt,sr=>sr.params.every(Yr=>this.isAssignable(Yr,!0)))}finishArrowValidation(O){var K;this.toAssignableList(O.params,(K=O.extra)==null?void 0:K.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(O,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(O,K){let we;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),we=K(),this.state.noArrowParamsConversionAt.pop()):we=K(),we}parseParenItem(O,K){let we=super.parseParenItem(O,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(O)),this.match(14)){let gt=this.startNodeAt(K);return gt.expression=we,gt.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(gt,"TypeCastExpression")}return we}assertModuleNodeAllowed(O){O.type==="ImportDeclaration"&&(O.importKind==="type"||O.importKind==="typeof")||O.type==="ExportNamedDeclaration"&&O.exportKind==="type"||O.type==="ExportAllDeclaration"&&O.exportKind==="type"||super.assertModuleNodeAllowed(O)}parseExportDeclaration(O){if(this.isContextual(130)){O.exportKind="type";let K=this.startNode();return this.next(),this.match(5)?(O.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(O),null):this.flowParseTypeAlias(K)}else if(this.isContextual(131)){O.exportKind="type";let K=this.startNode();return this.next(),this.flowParseOpaqueType(K,!1)}else if(this.isContextual(129)){O.exportKind="type";let K=this.startNode();return this.next(),this.flowParseInterface(K)}else if(this.isContextual(126)){O.exportKind="value";let K=this.startNode();return this.next(),this.flowParseEnumDeclaration(K)}else return super.parseExportDeclaration(O)}eatExportStar(O){return super.eatExportStar(O)?!0:this.isContextual(130)&&this.lookahead().type===55?(O.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(O){let{startLoc:K}=this.state,we=super.maybeParseExportNamespaceSpecifier(O);return we&&O.exportKind==="type"&&this.unexpected(K),we}parseClassId(O,K,we){super.parseClassId(O,K,we),this.match(47)&&(O.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(O,K,we){let{startLoc:gt}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(O,K))return;K.declare=!0}super.parseClassMember(O,K,we),K.declare&&(K.type!=="ClassProperty"&&K.type!=="ClassPrivateProperty"&&K.type!=="PropertyDefinition"?this.raise(Fs.DeclareClassElement,gt):K.value&&this.raise(Fs.DeclareClassFieldInitializer,K.value))}isIterator(O){return O==="iterator"||O==="asyncIterator"}readIterator(){let O=super.readWord1(),K="@@"+O;(!this.isIterator(O)||!this.state.inType)&&this.raise(X.InvalidIdentifier,this.state.curPosition(),{identifierName:K}),this.finishToken(132,K)}getTokenFromCode(O){let K=this.input.charCodeAt(this.state.pos+1);O===123&&K===124?this.finishOp(6,2):this.state.inType&&(O===62||O===60)?this.finishOp(O===62?48:47,1):this.state.inType&&O===63?K===46?this.finishOp(18,2):this.finishOp(17,1):Yl(O,K,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(O)}isAssignable(O,K){return O.type==="TypeCastExpression"?this.isAssignable(O.expression,K):super.isAssignable(O,K)}toAssignable(O,K=!1){!K&&O.type==="AssignmentExpression"&&O.left.type==="TypeCastExpression"&&(O.left=this.typeCastToParameter(O.left)),super.toAssignable(O,K)}toAssignableList(O,K,we){for(let gt=0;gt1||!K)&&this.raise(Fs.TypeCastInPattern,sr.typeAnnotation)}return O}parseArrayLike(O,K,we,gt){let sr=super.parseArrayLike(O,K,we,gt);return K&&!this.state.maybeInArrowParameters&&this.toReferencedList(sr.elements),sr}isValidLVal(O,K,we){return O==="TypeCastExpression"||super.isValidLVal(O,K,we)}parseClassProperty(O){return this.match(14)&&(O.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(O)}parseClassPrivateProperty(O){return this.match(14)&&(O.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(O)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(O){return!this.match(14)&&super.isNonstaticConstructor(O)}pushClassMethod(O,K,we,gt,sr,Yr){if(K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(O,K,we,gt,sr,Yr),K.params&&sr){let Lr=K.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}else if(K.type==="MethodDefinition"&&sr&&K.value.params){let Lr=K.value.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}}pushClassPrivateMethod(O,K,we,gt){K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(O,K,we,gt)}parseClassSuper(O){if(super.parseClassSuper(O),O.superClass&&(this.match(47)||this.match(51))&&(O.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let K=O.implements=[];do{let we=this.startNode();we.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?we.typeParameters=this.flowParseTypeParameterInstantiation():we.typeParameters=null,K.push(this.finishNode(we,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(O){super.checkGetterSetterParams(O);let K=this.getObjectOrClassMethodParams(O);if(K.length>0){let we=K[0];this.isThisParam(we)&&O.kind==="get"?this.raise(Fs.GetterMayNotHaveThisParam,we):this.isThisParam(we)&&this.raise(Fs.SetterMayNotHaveThisParam,we)}}parsePropertyNamePrefixOperator(O){O.variance=this.flowParseVariance()}parseObjPropValue(O,K,we,gt,sr,Yr,Lr){O.variance&&this.unexpected(O.variance.loc.start),delete O.variance;let fi;this.match(47)&&!Yr&&(fi=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let $n=super.parseObjPropValue(O,K,we,gt,sr,Yr,Lr);return fi&&(($n.value||$n).typeParameters=fi),$n}parseFunctionParamType(O){return this.eat(17)&&(O.type!=="Identifier"&&this.raise(Fs.PatternIsOptional,O),this.isThisParam(O)&&this.raise(Fs.ThisParamMayNotBeOptional,O),O.optional=!0),this.match(14)?O.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(O)&&this.raise(Fs.ThisParamAnnotationRequired,O),this.match(29)&&this.isThisParam(O)&&this.raise(Fs.ThisParamNoDefault,O),this.resetEndLocation(O),O}parseMaybeDefault(O,K){let we=super.parseMaybeDefault(O,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startsuper.parseMaybeAssign(O,K),gt),!sr.error)return sr.node;let{context:fi}=this.state,$n=fi[fi.length-1];($n===Se.j_oTag||$n===Se.j_expr)&&fi.pop()}if((we=sr)!=null&&we.error||this.match(47)){var Yr,Lr;gt=gt||this.state.clone();let fi,$n=this.tryParse(kc=>{var Nl;fi=this.flowParseTypeParameterDeclaration();let ca=this.forwardNoArrowParamsConversionAt(fi,()=>{let $g=super.parseMaybeAssign(O,K);return this.resetStartLocationFromNode($g,fi),$g});(Nl=ca.extra)!=null&&Nl.parenthesized&&kc();let Bl=this.maybeUnwrapTypeCastExpression(ca);return Bl.type!=="ArrowFunctionExpression"&&kc(),Bl.typeParameters=fi,this.resetStartLocationFromNode(Bl,fi),ca},gt),ra=null;if($n.node&&this.maybeUnwrapTypeCastExpression($n.node).type==="ArrowFunctionExpression"){if(!$n.error&&!$n.aborted)return $n.node.async&&this.raise(Fs.UnexpectedTypeParameterBeforeAsyncArrowFunction,fi),$n.node;ra=$n.node}if((Yr=sr)!=null&&Yr.node)return this.state=sr.failState,sr.node;if(ra)return this.state=$n.failState,ra;throw(Lr=sr)!=null&&Lr.thrown?sr.error:$n.thrown?$n.error:this.raise(Fs.UnexpectedTokenAfterTypeParameter,fi)}return super.parseMaybeAssign(O,K)}parseArrow(O){if(this.match(14)){let K=this.tryParse(()=>{let we=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let gt=this.startNode();return[gt.typeAnnotation,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=we,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),gt});if(K.thrown)return null;K.error&&(this.state=K.failState),O.returnType=K.node.typeAnnotation?this.finishNode(K.node,"TypeAnnotation"):null}return super.parseArrow(O)}shouldParseArrow(O){return this.match(14)||super.shouldParseArrow(O)}setArrowFunctionParameters(O,K){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start))?O.params=K:super.setArrowFunctionParameters(O,K)}checkParams(O,K,we,gt=!0){if(!(we&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start)))){for(let sr=0;sr0&&this.raise(Fs.ThisParamMustBeFirst,O.params[sr]);super.checkParams(O,K,we,gt)}}parseParenAndDistinguishExpression(O){return super.parseParenAndDistinguishExpression(O&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(O,K,we){if(O.type==="Identifier"&&O.name==="async"&&this.state.noArrowAt.includes(K.index)){this.next();let gt=this.startNodeAt(K);gt.callee=O,gt.arguments=super.parseCallExpressionArguments(11),O=this.finishNode(gt,"CallExpression")}else if(O.type==="Identifier"&&O.name==="async"&&this.match(47)){let gt=this.state.clone(),sr=this.tryParse(Lr=>this.parseAsyncArrowWithTypeParameters(K)||Lr(),gt);if(!sr.error&&!sr.aborted)return sr.node;let Yr=this.tryParse(()=>super.parseSubscripts(O,K,we),gt);if(Yr.node&&!Yr.error)return Yr.node;if(sr.node)return this.state=sr.failState,sr.node;if(Yr.node)return this.state=Yr.failState,Yr.node;throw sr.error||Yr.error}return super.parseSubscripts(O,K,we)}parseSubscript(O,K,we,gt){if(this.match(18)&&this.isLookaheadToken_lt()){if(gt.optionalChainMember=!0,we)return gt.stop=!0,O;this.next();let sr=this.startNodeAt(K);return sr.callee=O,sr.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),sr.arguments=this.parseCallExpressionArguments(11),sr.optional=!0,this.finishCallExpression(sr,!0)}else if(!we&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let sr=this.startNodeAt(K);sr.callee=O;let Yr=this.tryParse(()=>(sr.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),sr.arguments=super.parseCallExpressionArguments(11),gt.optionalChainMember&&(sr.optional=!1),this.finishCallExpression(sr,gt.optionalChainMember)));if(Yr.node)return Yr.error&&(this.state=Yr.failState),Yr.node}return super.parseSubscript(O,K,we,gt)}parseNewCallee(O){super.parseNewCallee(O);let K=null;this.shouldParseTypes()&&this.match(47)&&(K=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),O.typeArguments=K}parseAsyncArrowWithTypeParameters(O){let K=this.startNodeAt(O);if(this.parseFunctionParams(K,!1),!!this.parseArrow(K))return super.parseArrowExpression(K,void 0,!0)}readToken_mult_modulo(O){let K=this.input.charCodeAt(this.state.pos+1);if(O===42&&K===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(O)}readToken_pipe_amp(O){let K=this.input.charCodeAt(this.state.pos+1);if(O===124&&K===125){this.finishOp(9,2);return}super.readToken_pipe_amp(O)}parseTopLevel(O,K){let we=super.parseTopLevel(O,K);return this.state.hasFlowComment&&this.raise(Fs.UnterminatedFlowComment,this.state.curPosition()),we}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Fs.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let O=this.skipFlowComment();O&&(this.state.pos+=O,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:O}=this.state,K=2;for(;[32,9].includes(this.input.charCodeAt(O+K));)K++;let we=this.input.charCodeAt(K+O),gt=this.input.charCodeAt(K+O+1);return we===58&>===58?K+2:this.input.slice(K+O,K+O+12)==="flow-include"?K+12:we===58&>!==58?K:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(X.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(O,{enumName:K,memberName:we}){this.raise(Fs.EnumBooleanMemberNotInitialized,O,{memberName:we,enumName:K})}flowEnumErrorInvalidMemberInitializer(O,K){return this.raise(K.explicitType?K.explicitType==="symbol"?Fs.EnumInvalidMemberInitializerSymbolType:Fs.EnumInvalidMemberInitializerPrimaryType:Fs.EnumInvalidMemberInitializerUnknownType,O,K)}flowEnumErrorNumberMemberNotInitialized(O,K){this.raise(Fs.EnumNumberMemberNotInitialized,O,K)}flowEnumErrorStringMemberInconsistentlyInitialized(O,K){this.raise(Fs.EnumStringMemberInconsistentlyInitialized,O,K)}flowEnumMemberInit(){let O=this.state.startLoc,K=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let we=this.parseNumericLiteral(this.state.value);return K()?{type:"number",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}case 134:{let we=this.parseStringLiteral(this.state.value);return K()?{type:"string",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}case 85:case 86:{let we=this.parseBooleanLiteral(this.match(85));return K()?{type:"boolean",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}default:return{type:"invalid",loc:O}}}flowEnumMemberRaw(){let O=this.state.startLoc,K=this.parseIdentifier(!0),we=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:O};return{id:K,init:we}}flowEnumCheckExplicitTypeMismatch(O,K,we){let{explicitType:gt}=K;gt!==null&>!==we&&this.flowEnumErrorInvalidMemberInitializer(O,K)}flowEnumMembers({enumName:O,explicitType:K}){let we=new Set,gt={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},sr=!1;for(;!this.match(8);){if(this.eat(21)){sr=!0;break}let Yr=this.startNode(),{id:Lr,init:fi}=this.flowEnumMemberRaw(),$n=Lr.name;if($n==="")continue;/^[a-z]/.test($n)&&this.raise(Fs.EnumInvalidMemberName,Lr,{memberName:$n,suggestion:$n[0].toUpperCase()+$n.slice(1),enumName:O}),we.has($n)&&this.raise(Fs.EnumDuplicateMemberName,Lr,{memberName:$n,enumName:O}),we.add($n);let ra={enumName:O,explicitType:K,memberName:$n};switch(Yr.id=Lr,fi.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"boolean"),Yr.init=fi.value,gt.booleanMembers.push(this.finishNode(Yr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"number"),Yr.init=fi.value,gt.numberMembers.push(this.finishNode(Yr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"string"),Yr.init=fi.value,gt.stringMembers.push(this.finishNode(Yr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(fi.loc,ra);case"none":switch(K){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(fi.loc,ra);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(fi.loc,ra);break;default:gt.defaultedMembers.push(this.finishNode(Yr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:gt,hasUnknownMembers:sr}}flowEnumStringMembers(O,K,{enumName:we}){if(O.length===0)return K;if(K.length===0)return O;if(K.length>O.length){for(let gt of O)this.flowEnumErrorStringMemberInconsistentlyInitialized(gt,{enumName:we});return K}else{for(let gt of K)this.flowEnumErrorStringMemberInconsistentlyInitialized(gt,{enumName:we});return O}}flowEnumParseExplicitType({enumName:O}){if(!this.eatContextual(102))return null;if(!qr(this.state.type))throw this.raise(Fs.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:O});let{value:K}=this.state;return this.next(),K!=="boolean"&&K!=="number"&&K!=="string"&&K!=="symbol"&&this.raise(Fs.EnumInvalidExplicitType,this.state.startLoc,{enumName:O,invalidEnumType:K}),K}flowEnumBody(O,K){let we=K.name,gt=K.loc.start,sr=this.flowEnumParseExplicitType({enumName:we});this.expect(5);let{members:Yr,hasUnknownMembers:Lr}=this.flowEnumMembers({enumName:we,explicitType:sr});switch(O.hasUnknownMembers=Lr,sr){case"boolean":return O.explicitType=!0,O.members=Yr.booleanMembers,this.expect(8),this.finishNode(O,"EnumBooleanBody");case"number":return O.explicitType=!0,O.members=Yr.numberMembers,this.expect(8),this.finishNode(O,"EnumNumberBody");case"string":return O.explicitType=!0,O.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(O,"EnumStringBody");case"symbol":return O.members=Yr.defaultedMembers,this.expect(8),this.finishNode(O,"EnumSymbolBody");default:{let fi=()=>(O.members=[],this.expect(8),this.finishNode(O,"EnumStringBody"));O.explicitType=!1;let $n=Yr.booleanMembers.length,ra=Yr.numberMembers.length,kc=Yr.stringMembers.length,Nl=Yr.defaultedMembers.length;if(!$n&&!ra&&!kc&&!Nl)return fi();if(!$n&&!ra)return O.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(O,"EnumStringBody");if(!ra&&!kc&&$n>=Nl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return O.members=Yr.booleanMembers,this.expect(8),this.finishNode(O,"EnumBooleanBody")}else if(!$n&&!kc&&ra>=Nl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return O.members=Yr.numberMembers,this.expect(8),this.finishNode(O,"EnumNumberBody")}else return this.raise(Fs.EnumInconsistentMemberValues,gt,{enumName:we}),fi()}}}flowParseEnumDeclaration(O){let K=this.parseIdentifier();return O.id=K,O.body=this.flowEnumBody(this.startNode(),K),this.finishNode(O,"EnumDeclaration")}jsxParseOpeningElementAfterName(O){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(O.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(O)}isLookaheadToken_lt(){let O=this.nextTokenStart();if(this.input.charCodeAt(O)===60){let K=this.input.charCodeAt(O+1);return K!==60&&K!==61}return!1}reScan_lt_gt(){let{type:O}=this.state;O===47?(this.state.pos-=1,this.readToken_lt()):O===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:O}=this.state;return O===51?(this.state.pos-=2,this.finishOp(47,1),47):O}maybeUnwrapTypeCastExpression(O){return O.type==="TypeCastExpression"?O.expression:O}},df=Q`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:se})=>`Expected corresponding JSX closing tag for <${se}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:se,HTMLEntity:O})=>`Unexpected token \`${se}\`. Did you mean \`${O}\` or \`{'${se}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?"});function Zs(se){return se?se.type==="JSXOpeningFragment"||se.type==="JSXClosingFragment":!1}function so(se){if(se.type==="JSXIdentifier")return se.name;if(se.type==="JSXNamespacedName")return se.namespace.name+":"+se.name.name;if(se.type==="JSXMemberExpression")return so(se.object)+"."+so(se.property);throw new Error("Node had unexpected type: "+se.type)}var Ea=se=>class extends se{jsxReadToken(){let O="",K=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(df.UnterminatedJsxContent,this.state.startLoc);let we=this.input.charCodeAt(this.state.pos);switch(we){case 60:case 123:if(this.state.pos===this.state.start){we===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(we);return}O+=this.input.slice(K,this.state.pos),this.finishToken(142,O);return;case 38:O+=this.input.slice(K,this.state.pos),O+=this.jsxReadEntity(),K=this.state.pos;break;case 62:case 125:default:Vs(we)?(O+=this.input.slice(K,this.state.pos),O+=this.jsxReadNewLine(!0),K=this.state.pos):++this.state.pos}}}jsxReadNewLine(O){let K=this.input.charCodeAt(this.state.pos),we;return++this.state.pos,K===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,we=O?` +`);case 114:return Lr("\r");case 120:{let $n;return{code:$n,pos:O}=oo(se,O,K,we,2,!1,Yr,sr),Lr($n===null?null:String.fromCharCode($n))}case 117:{let $n;return{code:$n,pos:O}=cc(se,O,K,we,Yr,sr),Lr($n===null?null:String.fromCodePoint($n))}case 116:return Lr(" ");case 98:return Lr("\b");case 118:return Lr("\v");case 102:return Lr("\f");case 13:se.charCodeAt(O)===10&&++O;case 10:K=O,++we;case 8232:case 8233:return Lr("");case 56:case 57:if(gt)return Lr(null);sr.strictNumericEscape(O-1,K,we);default:if(fi>=48&&fi<=55){let $n=O-1,ra=/^[0-7]+/.exec(se.slice($n,O+2))[0],kc=parseInt(ra,8);kc>255&&(ra=ra.slice(0,-1),kc=parseInt(ra,8)),O+=ra.length-1;let Nl=se.charCodeAt(O);if(ra!=="0"||Nl===56||Nl===57){if(gt)return Lr(null);sr.strictNumericEscape($n,K,we)}return Lr(String.fromCharCode(kc))}return Lr(String.fromCharCode(fi))}}function oo(se,O,K,we,gt,sr,Yr,Lr){let fi=O,$n;return{n:$n,pos:O}=Ki(se,O,K,we,16,gt,sr,!1,Lr,!Yr),$n===null&&(Yr?Lr.invalidEscapeSequence(fi,K,we):O=fi-1),{code:$n,pos:O}}function Ki(se,O,K,we,gt,sr,Yr,Lr,fi,$n){let ra=O,kc=gt===16?$i.hex:$i.decBinOct,Nl=gt===16?dl.hex:gt===10?dl.dec:gt===8?dl.oct:dl.bin,ca=!1,Bl=0;for(let $g=0,SA=sr??1/0;$g=97?lp=lI-97+10:lI>=65?lp=lI-65+10:GA(lI)?lp=lI-48:lp=1/0,lp>=gt){if(lp<=9&&$n)return{n:null,pos:O};if(lp<=9&&fi.invalidDigit(O,K,we,gt))lp=0;else if(Yr)lp=0,ca=!0;else break}++O,Bl=Bl*gt+lp}return O===ra||sr!=null&&O-ra!==sr||ca?{n:null,pos:O}:{n:Bl,pos:O}}function cc(se,O,K,we,gt,sr){let Yr=se.charCodeAt(O),Lr;if(Yr===123){if(++O,{code:Lr,pos:O}=oo(se,O,K,we,se.indexOf("}",O)-O,!0,gt,sr),++O,Lr!==null&&Lr>1114111)if(gt)sr.invalidCodePoint(O,K,we);else return{code:null,pos:O}}else({code:Lr,pos:O}=oo(se,O,K,we,4,!1,gt,sr));return{code:Lr,pos:O}}function Xs(se,O,K){return new r(K,se-O,se)}var ws=new Set([103,109,115,105,121,117,100,118]),Gs=class{constructor(se){let O=se.startIndex||0;this.type=se.type,this.value=se.value,this.start=O+se.start,this.end=O+se.end,this.loc=new n(se.startLoc,se.endLoc)}},Ma=class extends Wt{constructor(se,O){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(K,we,gt,sr)=>this.optionFlags&1024?(this.raise(X.InvalidDigit,Xs(K,we,gt),{radix:sr}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(X.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(X.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(X.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(X.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(K,we,gt)=>{this.recordStrictModeErrors(X.StrictNumericEscape,Xs(K,we,gt))},unterminated:(K,we,gt)=>{throw this.raise(X.UnterminatedString,Xs(K-1,we,gt))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(X.StrictNumericEscape),unterminated:(K,we,gt)=>{throw this.raise(X.UnterminatedTemplate,Xs(K,we,gt))}}),this.state=new OA,this.state.init(se),this.input=O,this.length=O.length,this.comments=[],this.isLookahead=!1}pushToken(se){this.tokens.length=this.state.tokensLength,this.tokens.push(se),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new Gs(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(se){return this.match(se)?(this.next(),!0):!1}match(se){return this.state.type===se}createLookaheadState(se){return{pos:se.pos,value:null,type:se.type,start:se.start,end:se.end,context:[this.curContext()],inType:se.inType,startLoc:se.startLoc,lastTokEndLoc:se.lastTokEndLoc,curLine:se.curLine,lineStart:se.lineStart,curPosition:se.curPosition}}lookahead(){let se=this.state;this.state=this.createLookaheadState(se),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let O=this.state;return this.state=se,O}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(se){return Yn.lastIndex=se,Yn.test(this.input)?Yn.lastIndex:se}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(se){return Ko.lastIndex=se,Ko.test(this.input)?Ko.lastIndex:se}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(se){let O=this.input.charCodeAt(se);if((O&64512)===55296&&++sethis.raise(O,K)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(se){let O;this.isLookahead||(O=this.state.curPosition());let K=this.state.pos,we=this.input.indexOf(se,K+2);if(we===-1)throw this.raise(X.UnterminatedComment,this.state.curPosition());for(this.state.pos=we+se.length,Ru.lastIndex=K+2;Ru.test(this.input)&&Ru.lastIndex<=we;)++this.state.curLine,this.state.lineStart=Ru.lastIndex;if(this.isLookahead)return;let gt={type:"CommentBlock",value:this.input.slice(K+2,we),start:this.sourceToOffsetPos(K),end:this.sourceToOffsetPos(we+se.length),loc:new n(O,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(gt),gt}skipLineComment(se){let O=this.state.pos,K;this.isLookahead||(K=this.state.curPosition());let we=this.input.charCodeAt(this.state.pos+=se);if(this.state.posse)){let gt=this.skipLineComment(3);gt!==void 0&&(this.addComment(gt),O?.push(gt))}else break e}else if(K===60&&!this.inModule&&this.optionFlags&4096){let we=this.state.pos;if(this.input.charCodeAt(we+1)===33&&this.input.charCodeAt(we+2)===45&&this.input.charCodeAt(we+3)===45){let gt=this.skipLineComment(4);gt!==void 0&&(this.addComment(gt),O?.push(gt))}else break e}else break e}}if(O?.length>0){let K=this.state.pos,we={start:this.sourceToOffsetPos(se),end:this.sourceToOffsetPos(K),comments:O,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(we)}}finishToken(se,O){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let K=this.state.type;this.state.type=se,this.state.value=O,this.isLookahead||this.updateContext(K)}replaceToken(se){this.state.type=se,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let se=this.state.pos+1,O=this.codePointAtPos(se);if(O>=48&&O<=57)throw this.raise(X.UnexpectedDigitAfterHash,this.state.curPosition());if(O===123||O===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(O===123?X.RecordExpressionHashIncorrectStartSyntaxType:X.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,O===123?this.finishToken(7):this.finishToken(1)}else gc(O)?(++this.state.pos,this.finishToken(139,this.readWord1(O))):O===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let se=this.input.charCodeAt(this.state.pos+1);if(se>=48&&se<=57){this.readNumber(!0);return}se===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let se=this.input.charCodeAt(this.state.pos+1);if(se!==33)return!1;let O=this.state.pos;for(this.state.pos+=1;!Vs(se)&&++this.state.pos=48&&O<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(se){switch(se){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(X.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(X.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let O=this.input.charCodeAt(this.state.pos+1);if(O===120||O===88){this.readRadixNumber(16);return}if(O===111||O===79){this.readRadixNumber(8);return}if(O===98||O===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(se);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(se);return;case 124:case 38:this.readToken_pipe_amp(se);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(se);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(se);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(gc(se)){this.readWord(se);return}}throw this.raise(X.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(se)})}finishOp(se,O){let K=this.input.slice(this.state.pos,this.state.pos+O);this.state.pos+=O,this.finishToken(se,K)}readRegexp(){let se=this.state.startLoc,O=this.state.start+1,K,we,{pos:gt}=this.state;for(;;++gt){if(gt>=this.length)throw this.raise(X.UnterminatedRegExp,a(se,1));let fi=this.input.charCodeAt(gt);if(Vs(fi))throw this.raise(X.UnterminatedRegExp,a(se,1));if(K)K=!1;else{if(fi===91)we=!0;else if(fi===93&&we)we=!1;else if(fi===47&&!we)break;K=fi===92}}let sr=this.input.slice(O,gt);++gt;let Yr="",Lr=()=>a(se,gt+2-O);for(;gt=2&&this.input.charCodeAt(O)===48;if(Lr){let Nl=this.input.slice(O,this.state.pos);if(this.recordStrictModeErrors(X.StrictOctalLiteral,K),!this.state.strict){let ca=Nl.indexOf("_");ca>0&&this.raise(X.ZeroDigitNumericSeparator,a(K,ca))}Yr=Lr&&!/[89]/.test(Nl)}let fi=this.input.charCodeAt(this.state.pos);if(fi===46&&!Yr&&(++this.state.pos,this.readInt(10),we=!0,fi=this.input.charCodeAt(this.state.pos)),(fi===69||fi===101)&&!Yr&&(fi=this.input.charCodeAt(++this.state.pos),(fi===43||fi===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(X.InvalidOrMissingExponent,K),we=!0,sr=!0,fi=this.input.charCodeAt(this.state.pos)),fi===110&&((we||Lr)&&this.raise(X.InvalidBigIntLiteral,K),++this.state.pos,gt=!0),fi===109){this.expectPlugin("decimal",this.state.curPosition()),(sr||Lr)&&this.raise(X.InvalidDecimal,K),++this.state.pos;var $n=!0}if(gc(this.codePointAtPos(this.state.pos)))throw this.raise(X.NumberIdentifier,this.state.curPosition());let ra=this.input.slice(O,this.state.pos).replace(/[_mn]/g,"");if(gt){this.finishToken(136,ra);return}if($n){this.finishToken(137,ra);return}let kc=Yr?parseInt(ra,8):parseFloat(ra);this.finishToken(135,kc)}readCodePoint(se){let{code:O,pos:K}=cc(this.input,this.state.pos,this.state.lineStart,this.state.curLine,se,this.errorHandlers_readCodePoint);return this.state.pos=K,O}readString(se){let{str:O,pos:K,curLine:we,lineStart:gt}=Uf(se===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=K+1,this.state.lineStart=gt,this.state.curLine=we,this.finishToken(134,O)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let se=this.input[this.state.pos],{str:O,firstInvalidLoc:K,pos:we,curLine:gt,lineStart:sr}=Uf("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=we+1,this.state.lineStart=sr,this.state.curLine=gt,K&&(this.state.firstInvalidTemplateEscapePos=new r(K.curLine,K.pos-K.lineStart,this.sourceToOffsetPos(K.pos))),this.input.codePointAt(we)===96?this.finishToken(24,K?null:se+O+"`"):(this.state.pos++,this.finishToken(25,K?null:se+O+"${"))}recordStrictModeErrors(se,O){let K=O.index;this.state.strict&&!this.state.strictErrors.has(K)?this.raise(se,O):this.state.strictErrors.set(K,[se,O])}readWord1(se){this.state.containsEsc=!1;let O="",K=this.state.pos,we=this.state.pos;for(se!==void 0&&(this.state.pos+=se<=65535?1:2);this.state.pos=0;Yr--){let Lr=sr[Yr];if(Lr.loc.index===gt)return sr[Yr]=se(we,K);if(Lr.loc.indexthis.hasPlugin(O)))throw this.raise(X.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:se})}errorBuilder(se){return(O,K,we)=>{this.raise(se,Xs(O,K,we))}}},Dc=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},As=class{constructor(se){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=se}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Dc)}exit(){let se=this.stack.pop(),O=this.current();for(let[K,we]of Array.from(se.undefinedPrivateNames))O?O.undefinedPrivateNames.has(K)||O.undefinedPrivateNames.set(K,we):this.parser.raise(X.InvalidPrivateFieldResolution,we,{identifierName:K})}declarePrivateName(se,O,K){let{privateNames:we,loneAccessors:gt,undefinedPrivateNames:sr}=this.current(),Yr=we.has(se);if(O&3){let Lr=Yr&>.get(se);if(Lr){let fi=Lr&4,$n=O&4,ra=Lr&3,kc=O&3;Yr=ra===kc||fi!==$n,Yr||gt.delete(se)}else Yr||gt.set(se,O)}Yr&&this.parser.raise(X.PrivateNameRedeclaration,K,{identifierName:se}),we.add(se),sr.delete(se)}usePrivateName(se,O){let K;for(K of this.stack)if(K.privateNames.has(se))return;K?K.undefinedPrivateNames.set(se,O):this.parser.raise(X.InvalidPrivateFieldResolution,O,{identifierName:se})}},Tf=class{constructor(se=0){this.type=se}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},cm=class extends Tf{constructor(se){super(se),this.declarationErrors=new Map}recordDeclarationError(se,O){let K=O.index;this.declarationErrors.set(K,[se,O])}clearDeclarationError(se){this.declarationErrors.delete(se)}iterateErrors(se){this.declarationErrors.forEach(se)}},Fl=class{constructor(se){this.parser=void 0,this.stack=[new Tf],this.parser=se}enter(se){this.stack.push(se)}exit(){this.stack.pop()}recordParameterInitializerError(se,O){let K=O.loc.start,{stack:we}=this,gt=we.length-1,sr=we[gt];for(;!sr.isCertainlyParameterDeclaration();){if(sr.canBeArrowParameterDeclaration())sr.recordDeclarationError(se,K);else return;sr=we[--gt]}this.parser.raise(se,K)}recordArrowParameterBindingError(se,O){let{stack:K}=this,we=K[K.length-1],gt=O.loc.start;if(we.isCertainlyParameterDeclaration())this.parser.raise(se,gt);else if(we.canBeArrowParameterDeclaration())we.recordDeclarationError(se,gt);else return}recordAsyncArrowParametersError(se){let{stack:O}=this,K=O.length-1,we=O[K];for(;we.canBeArrowParameterDeclaration();)we.type===2&&we.recordDeclarationError(X.AwaitBindingIdentifier,se),we=O[--K]}validateAsPattern(){let{stack:se}=this,O=se[se.length-1];O.canBeArrowParameterDeclaration()&&O.iterateErrors(([K,we])=>{this.parser.raise(K,we);let gt=se.length-2,sr=se[gt];for(;sr.canBeArrowParameterDeclaration();)sr.clearDeclarationError(we.index),sr=se[--gt]})}};function rc(){return new Tf(3)}function sd(){return new cm(1)}function Om(){return new cm(2)}function il(){return new Tf}var FA=class{constructor(){this.stacks=[]}enter(se){this.stacks.push(se)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function ZA(se,O){return(se?2:0)|(O?1:0)}var El=class extends Ma{addExtra(se,O,K,we=!0){if(!se)return;let{extra:gt}=se;gt==null&&(gt={},se.extra=gt),we?gt[O]=K:Object.defineProperty(gt,O,{enumerable:we,value:K})}isContextual(se){return this.state.type===se&&!this.state.containsEsc}isUnparsedContextual(se,O){let K=se+O.length;if(this.input.slice(se,K)===O){let we=this.input.charCodeAt(K);return!(Cg(we)||(we&64512)===55296)}return!1}isLookaheadContextual(se){let O=this.nextTokenStart();return this.isUnparsedContextual(O,se)}eatContextual(se){return this.isContextual(se)?(this.next(),!0):!1}expectContextual(se,O){if(!this.eatContextual(se)){if(O!=null)throw this.raise(O,this.state.startLoc);this.unexpected(null,se)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ju(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Ju(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(se=!0){(se?this.isLineTerminator():this.eat(13))||this.raise(X.MissingSemicolon,this.state.lastTokEndLoc)}expect(se,O){this.eat(se)||this.unexpected(O,se)}tryParse(se,O=this.state.clone()){let K={node:null};try{let we=se((gt=null)=>{throw K.node=gt,K});if(this.state.errors.length>O.errors.length){let gt=this.state;return this.state=O,this.state.tokensLength=gt.tokensLength,{node:we,error:gt.errors[O.errors.length],thrown:!1,aborted:!1,failState:gt}}return{node:we,error:null,thrown:!1,aborted:!1,failState:null}}catch(we){let gt=this.state;if(this.state=O,we instanceof SyntaxError)return{node:null,error:we,thrown:!0,aborted:!1,failState:gt};if(we===K)return{node:K.node,error:null,thrown:!1,aborted:!0,failState:gt};throw we}}checkExpressionErrors(se,O){if(!se)return!1;let{shorthandAssignLoc:K,doubleProtoLoc:we,privateKeyLoc:gt,optionalParametersLoc:sr}=se,Yr=!!K||!!we||!!sr||!!gt;if(!O)return Yr;K!=null&&this.raise(X.InvalidCoverInitializedName,K),we!=null&&this.raise(X.DuplicateProto,we),gt!=null&&this.raise(X.UnexpectedPrivateField,gt),sr!=null&&this.unexpected(sr)}isLiteralPropertyName(){return jt(this.state.type)}isPrivateName(se){return se.type==="PrivateName"}getPrivateNameSV(se){return se.id.name}hasPropertyAsPrivateName(se){return(se.type==="MemberExpression"||se.type==="OptionalMemberExpression")&&this.isPrivateName(se.property)}isObjectProperty(se){return se.type==="ObjectProperty"}isObjectMethod(se){return se.type==="ObjectMethod"}initializeScopes(se=this.options.sourceType==="module"){let O=this.state.labels;this.state.labels=[];let K=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let we=this.inModule;this.inModule=se;let gt=this.scope,sr=this.getScopeHandler();this.scope=new sr(this,se);let Yr=this.prodParam;this.prodParam=new FA;let Lr=this.classScope;this.classScope=new As(this);let fi=this.expressionScope;return this.expressionScope=new Fl(this),()=>{this.state.labels=O,this.exportedIdentifiers=K,this.inModule=we,this.scope=gt,this.prodParam=Yr,this.classScope=Lr,this.expressionScope=fi}}enterInitialScopes(){let se=0;this.inModule&&(se|=2),this.scope.enter(1),this.prodParam.enter(se)}checkDestructuringPrivate(se){let{privateKeyLoc:O}=se;O!==null&&this.expectPlugin("destructuringPrivate",O)}},yg=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Mp=class{constructor(se,O,K){this.type="",this.start=O,this.end=0,this.loc=new n(K),se?.optionFlags&64&&(this.range=[O,0]),se!=null&&se.filename&&(this.loc.filename=se.filename)}},MA=Mp.prototype;MA.__clone=function(){let se=new Mp(void 0,this.start,this.loc.start),O=Object.keys(this);for(let K=0,we=O.length;K`Cannot overwrite reserved type ${se}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:se,enumName:O})=>`Boolean enum members need to be initialized. Use either \`${se} = true,\` or \`${se} = false,\` in enum \`${O}\`.`,EnumDuplicateMemberName:({memberName:se,enumName:O})=>`Enum member names need to be unique, but the name \`${se}\` has already been used before in enum \`${O}\`.`,EnumInconsistentMemberValues:({enumName:se})=>`Enum \`${se}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:se,enumName:O})=>`Enum type \`${se}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${O}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:se})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${se}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:se,memberName:O,explicitType:K})=>`Enum \`${se}\` has type \`${K}\`, so the initializer of \`${O}\` needs to be a ${K} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:se,memberName:O})=>`Symbol enum members cannot be initialized. Use \`${O},\` in enum \`${se}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:se,memberName:O})=>`The enum member initializer for \`${O}\` needs to be a literal (either a boolean, number, or string) in enum \`${se}\`.`,EnumInvalidMemberName:({enumName:se,memberName:O,suggestion:K})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${O}\`, consider using \`${K}\`, in enum \`${se}\`.`,EnumNumberMemberNotInitialized:({enumName:se,memberName:O})=>`Number enum members need to be initialized, e.g. \`${O} = 1\` in enum \`${se}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:se})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${se}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:se})=>`Unexpected reserved type ${se}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:se,suggestion:O})=>`\`declare export ${se}\` is not supported. Use \`${O}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Wa(se){return se.type==="DeclareExportAllDeclaration"||se.type==="DeclareExportDeclaration"&&(!se.declaration||se.declaration.type!=="TypeAlias"&&se.declaration.type!=="InterfaceDeclaration")}function Ca(se){return se.importKind==="type"||se.importKind==="typeof"}var ld={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Rp(se,O){let K=[],we=[];for(let gt=0;gtclass extends se{constructor(...O){super(...O),this.flowPragma=void 0}getScopeHandler(){return pu}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(O,K){O!==134&&O!==13&&O!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(O,K)}addComment(O){if(this.flowPragma===void 0){let K=np.exec(O.value);if(K)if(K[1]==="flow")this.flowPragma="flow";else if(K[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(O)}flowParseTypeInitialiser(O){let K=this.state.inType;this.state.inType=!0,this.expect(O||14);let we=this.flowParseType();return this.state.inType=K,we}flowParsePredicate(){let O=this.startNode(),K=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>K.index+1&&this.raise(Fs.UnexpectedSpaceBetweenModuloChecks,K),this.eat(10)?(O.value=super.parseExpression(),this.expect(11),this.finishNode(O,"DeclaredPredicate")):this.finishNode(O,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let O=this.state.inType;this.state.inType=!0,this.expect(14);let K=null,we=null;return this.match(54)?(this.state.inType=O,we=this.flowParsePredicate()):(K=this.flowParseType(),this.state.inType=O,this.match(54)&&(we=this.flowParsePredicate())),[K,we]}flowParseDeclareClass(O){return this.next(),this.flowParseInterfaceish(O,!0),this.finishNode(O,"DeclareClass")}flowParseDeclareFunction(O){this.next();let K=O.id=this.parseIdentifier(),we=this.startNode(),gt=this.startNode();this.match(47)?we.typeParameters=this.flowParseTypeParameterDeclaration():we.typeParameters=null,this.expect(10);let sr=this.flowParseFunctionTypeParams();return we.params=sr.params,we.rest=sr.rest,we.this=sr._this,this.expect(11),[we.returnType,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),gt.typeAnnotation=this.finishNode(we,"FunctionTypeAnnotation"),K.typeAnnotation=this.finishNode(gt,"TypeAnnotation"),this.resetEndLocation(K),this.semicolon(),this.scope.declareName(O.id.name,2048,O.id.loc.start),this.finishNode(O,"DeclareFunction")}flowParseDeclare(O,K){if(this.match(80))return this.flowParseDeclareClass(O);if(this.match(68))return this.flowParseDeclareFunction(O);if(this.match(74))return this.flowParseDeclareVariable(O);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(O):(K&&this.raise(Fs.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(O));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(O);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(O);if(this.isContextual(129))return this.flowParseDeclareInterface(O);if(this.match(82))return this.flowParseDeclareExportDeclaration(O,K);this.unexpected()}flowParseDeclareVariable(O){return this.next(),O.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(O.id.name,5,O.id.loc.start),this.semicolon(),this.finishNode(O,"DeclareVariable")}flowParseDeclareModule(O){this.scope.enter(0),this.match(134)?O.id=super.parseExprAtom():O.id=this.parseIdentifier();let K=O.body=this.startNode(),we=K.body=[];for(this.expect(5);!this.match(8);){let Yr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(Fs.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Yr)):(this.expectContextual(125,Fs.UnsupportedStatementInDeclareModule),Yr=this.flowParseDeclare(Yr,!0)),we.push(Yr)}this.scope.exit(),this.expect(8),this.finishNode(K,"BlockStatement");let gt=null,sr=!1;return we.forEach(Yr=>{Wa(Yr)?(gt==="CommonJS"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),gt="ES"):Yr.type==="DeclareModuleExports"&&(sr&&this.raise(Fs.DuplicateDeclareModuleExports,Yr),gt==="ES"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),gt="CommonJS",sr=!0)}),O.kind=gt||"CommonJS",this.finishNode(O,"DeclareModule")}flowParseDeclareExportDeclaration(O,K){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?O.declaration=this.flowParseDeclare(this.startNode()):(O.declaration=this.flowParseType(),this.semicolon()),O.default=!0,this.finishNode(O,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!K){let we=this.state.value;throw this.raise(Fs.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:we,suggestion:ld[we]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return O.declaration=this.flowParseDeclare(this.startNode()),O.default=!1,this.finishNode(O,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return O=this.parseExport(O,null),O.type==="ExportNamedDeclaration"&&(O.type="ExportDeclaration",O.default=!1,delete O.exportKind),O.type="Declare"+O.type,O;this.unexpected()}flowParseDeclareModuleExports(O){return this.next(),this.expectContextual(111),O.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(O,"DeclareModuleExports")}flowParseDeclareTypeAlias(O){this.next();let K=this.flowParseTypeAlias(O);return K.type="DeclareTypeAlias",K}flowParseDeclareOpaqueType(O){this.next();let K=this.flowParseOpaqueType(O,!0);return K.type="DeclareOpaqueType",K}flowParseDeclareInterface(O){return this.next(),this.flowParseInterfaceish(O,!1),this.finishNode(O,"DeclareInterface")}flowParseInterfaceish(O,K){if(O.id=this.flowParseRestrictedIdentifier(!K,!0),this.scope.declareName(O.id.name,K?17:8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.extends=[],this.eat(81))do O.extends.push(this.flowParseInterfaceExtends());while(!K&&this.eat(12));if(K){if(O.implements=[],O.mixins=[],this.eatContextual(117))do O.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do O.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}O.body=this.flowParseObjectType({allowStatic:K,allowExact:!1,allowSpread:!1,allowProto:K,allowInexact:!1})}flowParseInterfaceExtends(){let O=this.startNode();return O.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?O.typeParameters=this.flowParseTypeParameterInstantiation():O.typeParameters=null,this.finishNode(O,"InterfaceExtends")}flowParseInterface(O){return this.flowParseInterfaceish(O,!1),this.finishNode(O,"InterfaceDeclaration")}checkNotUnderscore(O){O==="_"&&this.raise(Fs.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(O,K,we){oa.has(O)&&this.raise(we?Fs.AssignReservedType:Fs.UnexpectedReservedType,K,{reservedType:O})}flowParseRestrictedIdentifier(O,K){return this.checkReservedType(this.state.value,this.state.startLoc,K),this.parseIdentifier(O)}flowParseTypeAlias(O){return O.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(O.id.name,8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(O,"TypeAlias")}flowParseOpaqueType(O,K){return this.expectContextual(130),O.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(O.id.name,8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.supertype=null,this.match(14)&&(O.supertype=this.flowParseTypeInitialiser(14)),O.impltype=null,K||(O.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(O,"OpaqueType")}flowParseTypeParameter(O=!1){let K=this.state.startLoc,we=this.startNode(),gt=this.flowParseVariance(),sr=this.flowParseTypeAnnotatableIdentifier();return we.name=sr.name,we.variance=gt,we.bound=sr.typeAnnotation,this.match(29)?(this.eat(29),we.default=this.flowParseType()):O&&this.raise(Fs.MissingTypeParamDefault,K),this.finishNode(we,"TypeParameter")}flowParseTypeParameterDeclaration(){let O=this.state.inType,K=this.startNode();K.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let we=!1;do{let gt=this.flowParseTypeParameter(we);K.params.push(gt),gt.default&&(we=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=O,this.finishNode(K,"TypeParameterDeclaration")}flowInTopLevelContext(O){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return O()}finally{this.state.context=K}}else return O()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let O=this.startNode(),K=this.state.inType;return this.state.inType=!0,O.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let we=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)O.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=we}),this.state.inType=K,!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(O,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let O=this.startNode(),K=this.state.inType;for(O.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)O.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=K,this.finishNode(O,"TypeParameterInstantiation")}flowParseInterfaceType(){let O=this.startNode();if(this.expectContextual(129),O.extends=[],this.eat(81))do O.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return O.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(O,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(O,K,we){return O.static=K,this.lookahead().type===14?(O.id=this.flowParseObjectPropertyKey(),O.key=this.flowParseTypeInitialiser()):(O.id=null,O.key=this.flowParseType()),this.expect(3),O.value=this.flowParseTypeInitialiser(),O.variance=we,this.finishNode(O,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(O,K){return O.static=K,O.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(O.method=!0,O.optional=!1,O.value=this.flowParseObjectTypeMethodish(this.startNodeAt(O.loc.start))):(O.method=!1,this.eat(17)&&(O.optional=!0),O.value=this.flowParseTypeInitialiser()),this.finishNode(O,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(O){for(O.params=[],O.rest=null,O.typeParameters=null,O.this=null,this.match(47)&&(O.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(O.this=this.flowParseFunctionTypeParam(!0),O.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)O.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(O.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),O.returnType=this.flowParseTypeInitialiser(),this.finishNode(O,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(O,K){let we=this.startNode();return O.static=K,O.value=this.flowParseObjectTypeMethodish(we),this.finishNode(O,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:O,allowExact:K,allowSpread:we,allowProto:gt,allowInexact:sr}){let Yr=this.state.inType;this.state.inType=!0;let Lr=this.startNode();Lr.callProperties=[],Lr.properties=[],Lr.indexers=[],Lr.internalSlots=[];let fi,$n,ra=!1;for(K&&this.match(6)?(this.expect(6),fi=9,$n=!0):(this.expect(5),fi=8,$n=!1),Lr.exact=$n;!this.match(fi);){let Nl=!1,ca=null,Bl=null,$g=this.startNode();if(gt&&this.isContextual(118)){let lI=this.lookahead();lI.type!==14&&lI.type!==17&&(this.next(),ca=this.state.startLoc,O=!1)}if(O&&this.isContextual(106)){let lI=this.lookahead();lI.type!==14&&lI.type!==17&&(this.next(),Nl=!0)}let SA=this.flowParseVariance();if(this.eat(0))ca!=null&&this.unexpected(ca),this.eat(0)?(SA&&this.unexpected(SA.loc.start),Lr.internalSlots.push(this.flowParseObjectTypeInternalSlot($g,Nl))):Lr.indexers.push(this.flowParseObjectTypeIndexer($g,Nl,SA));else if(this.match(10)||this.match(47))ca!=null&&this.unexpected(ca),SA&&this.unexpected(SA.loc.start),Lr.callProperties.push(this.flowParseObjectTypeCallProperty($g,Nl));else{let lI="init";if(this.isContextual(99)||this.isContextual(104)){let Ib=this.lookahead();jt(Ib.type)&&(lI=this.state.value,this.next())}let lp=this.flowParseObjectTypeProperty($g,Nl,ca,SA,lI,we,sr??!$n);lp===null?(ra=!0,Bl=this.state.lastTokStartLoc):Lr.properties.push(lp)}this.flowObjectTypeSemicolon(),Bl&&!this.match(8)&&!this.match(9)&&this.raise(Fs.UnexpectedExplicitInexactInObject,Bl)}this.expect(fi),we&&(Lr.inexact=ra);let kc=this.finishNode(Lr,"ObjectTypeAnnotation");return this.state.inType=Yr,kc}flowParseObjectTypeProperty(O,K,we,gt,sr,Yr,Lr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Yr?Lr||this.raise(Fs.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Fs.InexactInsideNonObject,this.state.lastTokStartLoc),gt&&this.raise(Fs.InexactVariance,gt),null):(Yr||this.raise(Fs.UnexpectedSpreadType,this.state.lastTokStartLoc),we!=null&&this.unexpected(we),gt&&this.raise(Fs.SpreadVariance,gt),O.argument=this.flowParseType(),this.finishNode(O,"ObjectTypeSpreadProperty"));{O.key=this.flowParseObjectPropertyKey(),O.static=K,O.proto=we!=null,O.kind=sr;let fi=!1;return this.match(47)||this.match(10)?(O.method=!0,we!=null&&this.unexpected(we),gt&&this.unexpected(gt.loc.start),O.value=this.flowParseObjectTypeMethodish(this.startNodeAt(O.loc.start)),(sr==="get"||sr==="set")&&this.flowCheckGetterSetterParams(O),!Yr&&O.key.name==="constructor"&&O.value.this&&this.raise(Fs.ThisParamBannedInConstructor,O.value.this)):(sr!=="init"&&this.unexpected(),O.method=!1,this.eat(17)&&(fi=!0),O.value=this.flowParseTypeInitialiser(),O.variance=gt),O.optional=fi,this.finishNode(O,"ObjectTypeProperty")}}flowCheckGetterSetterParams(O){let K=O.kind==="get"?0:1,we=O.value.params.length+(O.value.rest?1:0);O.value.this&&this.raise(O.kind==="get"?Fs.GetterMayNotHaveThisParam:Fs.SetterMayNotHaveThisParam,O.value.this),we!==K&&this.raise(O.kind==="get"?X.BadGetterArity:X.BadSetterArity,O),O.kind==="set"&&O.value.rest&&this.raise(X.BadSetterRestParameter,O)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(O,K){var we;(we=O)!=null||(O=this.state.startLoc);let gt=K||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let sr=this.startNodeAt(O);sr.qualification=gt,sr.id=this.flowParseRestrictedIdentifier(!0),gt=this.finishNode(sr,"QualifiedTypeIdentifier")}return gt}flowParseGenericType(O,K){let we=this.startNodeAt(O);return we.typeParameters=null,we.id=this.flowParseQualifiedTypeIdentifier(O,K),this.match(47)&&(we.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(we,"GenericTypeAnnotation")}flowParseTypeofType(){let O=this.startNode();return this.expect(87),O.argument=this.flowParsePrimaryType(),this.finishNode(O,"TypeofTypeAnnotation")}flowParseTupleType(){let O=this.startNode();for(O.types=[],this.expect(0);this.state.possuper.parseFunctionBody(O,!0,we));return}super.parseFunctionBody(O,!1,we)}parseFunctionBodyAndFinish(O,K,we=!1){if(this.match(14)){let gt=this.startNode();[gt.typeAnnotation,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),O.returnType=gt.typeAnnotation?this.finishNode(gt,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(O,K,we)}parseStatementLike(O){if(this.state.strict&&this.isContextual(129)){let we=this.lookahead();if(ke(we.type)){let gt=this.startNode();return this.next(),this.flowParseInterface(gt)}}else if(this.isContextual(126)){let we=this.startNode();return this.next(),this.flowParseEnumDeclaration(we)}let K=super.parseStatementLike(O);return this.flowPragma===void 0&&!this.isValidDirective(K)&&(this.flowPragma=null),K}parseExpressionStatement(O,K,we){if(K.type==="Identifier"){if(K.name==="declare"){if(this.match(80)||qr(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(O)}else if(qr(this.state.type)){if(K.name==="interface")return this.flowParseInterface(O);if(K.name==="type")return this.flowParseTypeAlias(O);if(K.name==="opaque")return this.flowParseOpaqueType(O,!1)}}return super.parseExpressionStatement(O,K,we)}shouldParseExportDeclaration(){let{type:O}=this.state;return O===126||po(O)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:O}=this.state;return O===126||po(O)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let O=this.startNode();return this.next(),this.flowParseEnumDeclaration(O)}return super.parseExportDefaultExpression()}parseConditional(O,K,we){if(!this.match(17))return O;if(this.state.maybeInArrowParameters){let kc=this.lookaheadCharCode();if(kc===44||kc===61||kc===58||kc===41)return this.setOptionalParametersError(we),O}this.expect(17);let gt=this.state.clone(),sr=this.state.noArrowAt,Yr=this.startNodeAt(K),{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent(),[$n,ra]=this.getArrowLikeExpressions(Lr);if(fi||ra.length>0){let kc=[...sr];if(ra.length>0){this.state=gt,this.state.noArrowAt=kc;for(let Nl=0;Nl1&&this.raise(Fs.AmbiguousConditionalArrow,gt.startLoc),fi&&$n.length===1&&(this.state=gt,kc.push($n[0].start),this.state.noArrowAt=kc,{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(Lr,!0),this.state.noArrowAt=sr,this.expect(14),Yr.test=O,Yr.consequent=Lr,Yr.alternate=this.forwardNoArrowParamsConversionAt(Yr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Yr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let O=this.parseMaybeAssignAllowIn(),K=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:O,failed:K}}getArrowLikeExpressions(O,K){let we=[O],gt=[];for(;we.length!==0;){let sr=we.pop();sr.type==="ArrowFunctionExpression"&&sr.body.type!=="BlockStatement"?(sr.typeParameters||!sr.returnType?this.finishArrowValidation(sr):gt.push(sr),we.push(sr.body)):sr.type==="ConditionalExpression"&&(we.push(sr.consequent),we.push(sr.alternate))}return K?(gt.forEach(sr=>this.finishArrowValidation(sr)),[gt,[]]):Rp(gt,sr=>sr.params.every(Yr=>this.isAssignable(Yr,!0)))}finishArrowValidation(O){var K;this.toAssignableList(O.params,(K=O.extra)==null?void 0:K.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(O,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(O,K){let we;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),we=K(),this.state.noArrowParamsConversionAt.pop()):we=K(),we}parseParenItem(O,K){let we=super.parseParenItem(O,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(O)),this.match(14)){let gt=this.startNodeAt(K);return gt.expression=we,gt.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(gt,"TypeCastExpression")}return we}assertModuleNodeAllowed(O){O.type==="ImportDeclaration"&&(O.importKind==="type"||O.importKind==="typeof")||O.type==="ExportNamedDeclaration"&&O.exportKind==="type"||O.type==="ExportAllDeclaration"&&O.exportKind==="type"||super.assertModuleNodeAllowed(O)}parseExportDeclaration(O){if(this.isContextual(130)){O.exportKind="type";let K=this.startNode();return this.next(),this.match(5)?(O.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(O),null):this.flowParseTypeAlias(K)}else if(this.isContextual(131)){O.exportKind="type";let K=this.startNode();return this.next(),this.flowParseOpaqueType(K,!1)}else if(this.isContextual(129)){O.exportKind="type";let K=this.startNode();return this.next(),this.flowParseInterface(K)}else if(this.isContextual(126)){O.exportKind="value";let K=this.startNode();return this.next(),this.flowParseEnumDeclaration(K)}else return super.parseExportDeclaration(O)}eatExportStar(O){return super.eatExportStar(O)?!0:this.isContextual(130)&&this.lookahead().type===55?(O.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(O){let{startLoc:K}=this.state,we=super.maybeParseExportNamespaceSpecifier(O);return we&&O.exportKind==="type"&&this.unexpected(K),we}parseClassId(O,K,we){super.parseClassId(O,K,we),this.match(47)&&(O.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(O,K,we){let{startLoc:gt}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(O,K))return;K.declare=!0}super.parseClassMember(O,K,we),K.declare&&(K.type!=="ClassProperty"&&K.type!=="ClassPrivateProperty"&&K.type!=="PropertyDefinition"?this.raise(Fs.DeclareClassElement,gt):K.value&&this.raise(Fs.DeclareClassFieldInitializer,K.value))}isIterator(O){return O==="iterator"||O==="asyncIterator"}readIterator(){let O=super.readWord1(),K="@@"+O;(!this.isIterator(O)||!this.state.inType)&&this.raise(X.InvalidIdentifier,this.state.curPosition(),{identifierName:K}),this.finishToken(132,K)}getTokenFromCode(O){let K=this.input.charCodeAt(this.state.pos+1);O===123&&K===124?this.finishOp(6,2):this.state.inType&&(O===62||O===60)?this.finishOp(O===62?48:47,1):this.state.inType&&O===63?K===46?this.finishOp(18,2):this.finishOp(17,1):Yl(O,K,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(O)}isAssignable(O,K){return O.type==="TypeCastExpression"?this.isAssignable(O.expression,K):super.isAssignable(O,K)}toAssignable(O,K=!1){!K&&O.type==="AssignmentExpression"&&O.left.type==="TypeCastExpression"&&(O.left=this.typeCastToParameter(O.left)),super.toAssignable(O,K)}toAssignableList(O,K,we){for(let gt=0;gt1||!K)&&this.raise(Fs.TypeCastInPattern,sr.typeAnnotation)}return O}parseArrayLike(O,K,we,gt){let sr=super.parseArrayLike(O,K,we,gt);return K&&!this.state.maybeInArrowParameters&&this.toReferencedList(sr.elements),sr}isValidLVal(O,K,we){return O==="TypeCastExpression"||super.isValidLVal(O,K,we)}parseClassProperty(O){return this.match(14)&&(O.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(O)}parseClassPrivateProperty(O){return this.match(14)&&(O.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(O)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(O){return!this.match(14)&&super.isNonstaticConstructor(O)}pushClassMethod(O,K,we,gt,sr,Yr){if(K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(O,K,we,gt,sr,Yr),K.params&&sr){let Lr=K.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}else if(K.type==="MethodDefinition"&&sr&&K.value.params){let Lr=K.value.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}}pushClassPrivateMethod(O,K,we,gt){K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(O,K,we,gt)}parseClassSuper(O){if(super.parseClassSuper(O),O.superClass&&(this.match(47)||this.match(51))&&(O.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let K=O.implements=[];do{let we=this.startNode();we.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?we.typeParameters=this.flowParseTypeParameterInstantiation():we.typeParameters=null,K.push(this.finishNode(we,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(O){super.checkGetterSetterParams(O);let K=this.getObjectOrClassMethodParams(O);if(K.length>0){let we=K[0];this.isThisParam(we)&&O.kind==="get"?this.raise(Fs.GetterMayNotHaveThisParam,we):this.isThisParam(we)&&this.raise(Fs.SetterMayNotHaveThisParam,we)}}parsePropertyNamePrefixOperator(O){O.variance=this.flowParseVariance()}parseObjPropValue(O,K,we,gt,sr,Yr,Lr){O.variance&&this.unexpected(O.variance.loc.start),delete O.variance;let fi;this.match(47)&&!Yr&&(fi=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let $n=super.parseObjPropValue(O,K,we,gt,sr,Yr,Lr);return fi&&(($n.value||$n).typeParameters=fi),$n}parseFunctionParamType(O){return this.eat(17)&&(O.type!=="Identifier"&&this.raise(Fs.PatternIsOptional,O),this.isThisParam(O)&&this.raise(Fs.ThisParamMayNotBeOptional,O),O.optional=!0),this.match(14)?O.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(O)&&this.raise(Fs.ThisParamAnnotationRequired,O),this.match(29)&&this.isThisParam(O)&&this.raise(Fs.ThisParamNoDefault,O),this.resetEndLocation(O),O}parseMaybeDefault(O,K){let we=super.parseMaybeDefault(O,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startsuper.parseMaybeAssign(O,K),gt),!sr.error)return sr.node;let{context:fi}=this.state,$n=fi[fi.length-1];($n===Se.j_oTag||$n===Se.j_expr)&&fi.pop()}if((we=sr)!=null&&we.error||this.match(47)){var Yr,Lr;gt=gt||this.state.clone();let fi,$n=this.tryParse(kc=>{var Nl;fi=this.flowParseTypeParameterDeclaration();let ca=this.forwardNoArrowParamsConversionAt(fi,()=>{let $g=super.parseMaybeAssign(O,K);return this.resetStartLocationFromNode($g,fi),$g});(Nl=ca.extra)!=null&&Nl.parenthesized&&kc();let Bl=this.maybeUnwrapTypeCastExpression(ca);return Bl.type!=="ArrowFunctionExpression"&&kc(),Bl.typeParameters=fi,this.resetStartLocationFromNode(Bl,fi),ca},gt),ra=null;if($n.node&&this.maybeUnwrapTypeCastExpression($n.node).type==="ArrowFunctionExpression"){if(!$n.error&&!$n.aborted)return $n.node.async&&this.raise(Fs.UnexpectedTypeParameterBeforeAsyncArrowFunction,fi),$n.node;ra=$n.node}if((Yr=sr)!=null&&Yr.node)return this.state=sr.failState,sr.node;if(ra)return this.state=$n.failState,ra;throw(Lr=sr)!=null&&Lr.thrown?sr.error:$n.thrown?$n.error:this.raise(Fs.UnexpectedTokenAfterTypeParameter,fi)}return super.parseMaybeAssign(O,K)}parseArrow(O){if(this.match(14)){let K=this.tryParse(()=>{let we=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let gt=this.startNode();return[gt.typeAnnotation,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=we,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),gt});if(K.thrown)return null;K.error&&(this.state=K.failState),O.returnType=K.node.typeAnnotation?this.finishNode(K.node,"TypeAnnotation"):null}return super.parseArrow(O)}shouldParseArrow(O){return this.match(14)||super.shouldParseArrow(O)}setArrowFunctionParameters(O,K){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start))?O.params=K:super.setArrowFunctionParameters(O,K)}checkParams(O,K,we,gt=!0){if(!(we&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start)))){for(let sr=0;sr0&&this.raise(Fs.ThisParamMustBeFirst,O.params[sr]);super.checkParams(O,K,we,gt)}}parseParenAndDistinguishExpression(O){return super.parseParenAndDistinguishExpression(O&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(O,K,we){if(O.type==="Identifier"&&O.name==="async"&&this.state.noArrowAt.includes(K.index)){this.next();let gt=this.startNodeAt(K);gt.callee=O,gt.arguments=super.parseCallExpressionArguments(11),O=this.finishNode(gt,"CallExpression")}else if(O.type==="Identifier"&&O.name==="async"&&this.match(47)){let gt=this.state.clone(),sr=this.tryParse(Lr=>this.parseAsyncArrowWithTypeParameters(K)||Lr(),gt);if(!sr.error&&!sr.aborted)return sr.node;let Yr=this.tryParse(()=>super.parseSubscripts(O,K,we),gt);if(Yr.node&&!Yr.error)return Yr.node;if(sr.node)return this.state=sr.failState,sr.node;if(Yr.node)return this.state=Yr.failState,Yr.node;throw sr.error||Yr.error}return super.parseSubscripts(O,K,we)}parseSubscript(O,K,we,gt){if(this.match(18)&&this.isLookaheadToken_lt()){if(gt.optionalChainMember=!0,we)return gt.stop=!0,O;this.next();let sr=this.startNodeAt(K);return sr.callee=O,sr.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),sr.arguments=this.parseCallExpressionArguments(11),sr.optional=!0,this.finishCallExpression(sr,!0)}else if(!we&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let sr=this.startNodeAt(K);sr.callee=O;let Yr=this.tryParse(()=>(sr.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),sr.arguments=super.parseCallExpressionArguments(11),gt.optionalChainMember&&(sr.optional=!1),this.finishCallExpression(sr,gt.optionalChainMember)));if(Yr.node)return Yr.error&&(this.state=Yr.failState),Yr.node}return super.parseSubscript(O,K,we,gt)}parseNewCallee(O){super.parseNewCallee(O);let K=null;this.shouldParseTypes()&&this.match(47)&&(K=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),O.typeArguments=K}parseAsyncArrowWithTypeParameters(O){let K=this.startNodeAt(O);if(this.parseFunctionParams(K,!1),!!this.parseArrow(K))return super.parseArrowExpression(K,void 0,!0)}readToken_mult_modulo(O){let K=this.input.charCodeAt(this.state.pos+1);if(O===42&&K===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(O)}readToken_pipe_amp(O){let K=this.input.charCodeAt(this.state.pos+1);if(O===124&&K===125){this.finishOp(9,2);return}super.readToken_pipe_amp(O)}parseTopLevel(O,K){let we=super.parseTopLevel(O,K);return this.state.hasFlowComment&&this.raise(Fs.UnterminatedFlowComment,this.state.curPosition()),we}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Fs.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let O=this.skipFlowComment();O&&(this.state.pos+=O,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:O}=this.state,K=2;for(;[32,9].includes(this.input.charCodeAt(O+K));)K++;let we=this.input.charCodeAt(K+O),gt=this.input.charCodeAt(K+O+1);return we===58&>===58?K+2:this.input.slice(K+O,K+O+12)==="flow-include"?K+12:we===58&>!==58?K:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(X.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(O,{enumName:K,memberName:we}){this.raise(Fs.EnumBooleanMemberNotInitialized,O,{memberName:we,enumName:K})}flowEnumErrorInvalidMemberInitializer(O,K){return this.raise(K.explicitType?K.explicitType==="symbol"?Fs.EnumInvalidMemberInitializerSymbolType:Fs.EnumInvalidMemberInitializerPrimaryType:Fs.EnumInvalidMemberInitializerUnknownType,O,K)}flowEnumErrorNumberMemberNotInitialized(O,K){this.raise(Fs.EnumNumberMemberNotInitialized,O,K)}flowEnumErrorStringMemberInconsistentlyInitialized(O,K){this.raise(Fs.EnumStringMemberInconsistentlyInitialized,O,K)}flowEnumMemberInit(){let O=this.state.startLoc,K=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let we=this.parseNumericLiteral(this.state.value);return K()?{type:"number",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}case 134:{let we=this.parseStringLiteral(this.state.value);return K()?{type:"string",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}case 85:case 86:{let we=this.parseBooleanLiteral(this.match(85));return K()?{type:"boolean",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}default:return{type:"invalid",loc:O}}}flowEnumMemberRaw(){let O=this.state.startLoc,K=this.parseIdentifier(!0),we=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:O};return{id:K,init:we}}flowEnumCheckExplicitTypeMismatch(O,K,we){let{explicitType:gt}=K;gt!==null&>!==we&&this.flowEnumErrorInvalidMemberInitializer(O,K)}flowEnumMembers({enumName:O,explicitType:K}){let we=new Set,gt={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},sr=!1;for(;!this.match(8);){if(this.eat(21)){sr=!0;break}let Yr=this.startNode(),{id:Lr,init:fi}=this.flowEnumMemberRaw(),$n=Lr.name;if($n==="")continue;/^[a-z]/.test($n)&&this.raise(Fs.EnumInvalidMemberName,Lr,{memberName:$n,suggestion:$n[0].toUpperCase()+$n.slice(1),enumName:O}),we.has($n)&&this.raise(Fs.EnumDuplicateMemberName,Lr,{memberName:$n,enumName:O}),we.add($n);let ra={enumName:O,explicitType:K,memberName:$n};switch(Yr.id=Lr,fi.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"boolean"),Yr.init=fi.value,gt.booleanMembers.push(this.finishNode(Yr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"number"),Yr.init=fi.value,gt.numberMembers.push(this.finishNode(Yr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"string"),Yr.init=fi.value,gt.stringMembers.push(this.finishNode(Yr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(fi.loc,ra);case"none":switch(K){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(fi.loc,ra);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(fi.loc,ra);break;default:gt.defaultedMembers.push(this.finishNode(Yr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:gt,hasUnknownMembers:sr}}flowEnumStringMembers(O,K,{enumName:we}){if(O.length===0)return K;if(K.length===0)return O;if(K.length>O.length){for(let gt of O)this.flowEnumErrorStringMemberInconsistentlyInitialized(gt,{enumName:we});return K}else{for(let gt of K)this.flowEnumErrorStringMemberInconsistentlyInitialized(gt,{enumName:we});return O}}flowEnumParseExplicitType({enumName:O}){if(!this.eatContextual(102))return null;if(!qr(this.state.type))throw this.raise(Fs.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:O});let{value:K}=this.state;return this.next(),K!=="boolean"&&K!=="number"&&K!=="string"&&K!=="symbol"&&this.raise(Fs.EnumInvalidExplicitType,this.state.startLoc,{enumName:O,invalidEnumType:K}),K}flowEnumBody(O,K){let we=K.name,gt=K.loc.start,sr=this.flowEnumParseExplicitType({enumName:we});this.expect(5);let{members:Yr,hasUnknownMembers:Lr}=this.flowEnumMembers({enumName:we,explicitType:sr});switch(O.hasUnknownMembers=Lr,sr){case"boolean":return O.explicitType=!0,O.members=Yr.booleanMembers,this.expect(8),this.finishNode(O,"EnumBooleanBody");case"number":return O.explicitType=!0,O.members=Yr.numberMembers,this.expect(8),this.finishNode(O,"EnumNumberBody");case"string":return O.explicitType=!0,O.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(O,"EnumStringBody");case"symbol":return O.members=Yr.defaultedMembers,this.expect(8),this.finishNode(O,"EnumSymbolBody");default:{let fi=()=>(O.members=[],this.expect(8),this.finishNode(O,"EnumStringBody"));O.explicitType=!1;let $n=Yr.booleanMembers.length,ra=Yr.numberMembers.length,kc=Yr.stringMembers.length,Nl=Yr.defaultedMembers.length;if(!$n&&!ra&&!kc&&!Nl)return fi();if(!$n&&!ra)return O.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(O,"EnumStringBody");if(!ra&&!kc&&$n>=Nl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return O.members=Yr.booleanMembers,this.expect(8),this.finishNode(O,"EnumBooleanBody")}else if(!$n&&!kc&&ra>=Nl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return O.members=Yr.numberMembers,this.expect(8),this.finishNode(O,"EnumNumberBody")}else return this.raise(Fs.EnumInconsistentMemberValues,gt,{enumName:we}),fi()}}}flowParseEnumDeclaration(O){let K=this.parseIdentifier();return O.id=K,O.body=this.flowEnumBody(this.startNode(),K),this.finishNode(O,"EnumDeclaration")}jsxParseOpeningElementAfterName(O){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(O.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(O)}isLookaheadToken_lt(){let O=this.nextTokenStart();if(this.input.charCodeAt(O)===60){let K=this.input.charCodeAt(O+1);return K!==60&&K!==61}return!1}reScan_lt_gt(){let{type:O}=this.state;O===47?(this.state.pos-=1,this.readToken_lt()):O===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:O}=this.state;return O===51?(this.state.pos-=2,this.finishOp(47,1),47):O}maybeUnwrapTypeCastExpression(O){return O.type==="TypeCastExpression"?O.expression:O}},df=Q`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:se})=>`Expected corresponding JSX closing tag for <${se}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:se,HTMLEntity:O})=>`Unexpected token \`${se}\`. Did you mean \`${O}\` or \`{'${se}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?"});function Zs(se){return se?se.type==="JSXOpeningFragment"||se.type==="JSXClosingFragment":!1}function so(se){if(se.type==="JSXIdentifier")return se.name;if(se.type==="JSXNamespacedName")return se.namespace.name+":"+se.name.name;if(se.type==="JSXMemberExpression")return so(se.object)+"."+so(se.property);throw new Error("Node had unexpected type: "+se.type)}var Ea=se=>class extends se{jsxReadToken(){let O="",K=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(df.UnterminatedJsxContent,this.state.startLoc);let we=this.input.charCodeAt(this.state.pos);switch(we){case 60:case 123:if(this.state.pos===this.state.start){we===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(we);return}O+=this.input.slice(K,this.state.pos),this.finishToken(142,O);return;case 38:O+=this.input.slice(K,this.state.pos),O+=this.jsxReadEntity(),K=this.state.pos;break;case 62:case 125:default:Vs(we)?(O+=this.input.slice(K,this.state.pos),O+=this.jsxReadNewLine(!0),K=this.state.pos):++this.state.pos}}}jsxReadNewLine(O){let K=this.input.charCodeAt(this.state.pos),we;return++this.state.pos,K===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,we=O?` `:`\r `):we=String.fromCharCode(K),++this.state.curLine,this.state.lineStart=this.state.pos,we}jsxReadString(O){let K="",we=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(X.UnterminatedString,this.state.startLoc);let gt=this.input.charCodeAt(this.state.pos);if(gt===O)break;gt===38?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadEntity(),we=this.state.pos):Vs(gt)?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadNewLine(!1),we=this.state.pos):++this.state.pos}K+=this.input.slice(we,this.state.pos++),this.finishToken(134,K)}jsxReadEntity(){let O=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let K=10;this.codePointAtPos(this.state.pos)===120&&(K=16,++this.state.pos);let we=this.readInt(K,void 0,!1,"bail");if(we!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(we)}else{let K=0,we=!1;for(;K++<10&&this.state.pos1){for(let we=0;we0){if(K&256){let gt=!!(K&512),sr=(we&4)>0;return gt!==sr}return!0}return K&128&&(we&8)>0?se.names.get(O)&2?!!(K&1):!1:K&2&&(we&1)>0?!0:super.isRedeclaredInScope(se,O,K)}checkLocalExport(se){let{name:O}=se;if(this.hasImport(O))return;let K=this.scopeStack.length;for(let we=K-1;we>=0;we--){let gt=this.scopeStack[we].tsNames.get(O);if((gt&1)>0||(gt&16)>0)return}super.checkLocalExport(se)}},Wn=se=>se.type==="ParenthesizedExpression"?Wn(se.expression):se,di=class extends ls{toAssignable(se,O=!1){var K,we;let gt;switch((se.type==="ParenthesizedExpression"||(K=se.extra)!=null&&K.parenthesized)&&(gt=Wn(se),O?gt.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(X.InvalidParenthesizedAssignment,se):gt.type!=="MemberExpression"&&!this.isOptionalMemberExpression(gt)&&this.raise(X.InvalidParenthesizedAssignment,se):this.raise(X.InvalidParenthesizedAssignment,se)),se.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":se.type="ObjectPattern";for(let Yr=0,Lr=se.properties.length,fi=Lr-1;Yrwe.type!=="ObjectMethod"&&(gt===K||we.type!=="SpreadElement")&&this.isAssignable(we))}case"ObjectProperty":return this.isAssignable(se.value);case"SpreadElement":return this.isAssignable(se.argument);case"ArrayExpression":return se.elements.every(K=>K===null||this.isAssignable(K));case"AssignmentExpression":return se.operator==="=";case"ParenthesizedExpression":return this.isAssignable(se.expression);case"MemberExpression":case"OptionalMemberExpression":return!O;default:return!1}}toReferencedList(se,O){return se}toReferencedListDeep(se,O){this.toReferencedList(se,O);for(let K of se)K?.type==="ArrayExpression"&&this.toReferencedListDeep(K.elements)}parseSpread(se){let O=this.startNode();return this.next(),O.argument=this.parseMaybeAssignAllowIn(se,void 0),this.finishNode(O,"SpreadElement")}parseRestBinding(){let se=this.startNode();return this.next(),se.argument=this.parseBindingAtom(),this.finishNode(se,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let se=this.startNode();return this.next(),se.elements=this.parseBindingList(3,93,1),this.finishNode(se,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(se,O,K){let we=K&1,gt=[],sr=!0;for(;!this.eat(se);)if(sr?sr=!1:this.expect(12),we&&this.match(12))gt.push(null);else{if(this.eat(se))break;if(this.match(21)){let Yr=this.parseRestBinding();if((this.hasPlugin("flow")||K&2)&&(Yr=this.parseFunctionParamType(Yr)),gt.push(Yr),!this.checkCommaAfterRest(O)){this.expect(se);break}}else{let Yr=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(X.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)Yr.push(this.parseDecorator());gt.push(this.parseAssignableListItem(K,Yr))}}return gt}parseBindingRestProperty(se){return this.next(),se.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(se,"RestElement")}parseBindingProperty(){let{type:se,startLoc:O}=this.state;if(se===21)return this.parseBindingRestProperty(this.startNode());let K=this.startNode();return se===139?(this.expectPlugin("destructuringPrivate",O),this.classScope.usePrivateName(this.state.value,O),K.key=this.parsePrivateName()):this.parsePropertyName(K),K.method=!1,this.parseObjPropValue(K,O,!1,!1,!0,!1)}parseAssignableListItem(se,O){let K=this.parseMaybeDefault();(this.hasPlugin("flow")||se&2)&&this.parseFunctionParamType(K);let we=this.parseMaybeDefault(K.loc.start,K);return O.length&&(K.decorators=O),we}parseFunctionParamType(se){return se}parseMaybeDefault(se,O){var K,we;if((K=se)!=null||(se=this.state.startLoc),O=(we=O)!=null?we:this.parseBindingAtom(),!this.eat(29))return O;let gt=this.startNodeAt(se);return gt.left=O,gt.right=this.parseMaybeAssignAllowIn(),this.finishNode(gt,"AssignmentPattern")}isValidLVal(se,O,K){switch(se){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(se){return se.type==="OptionalMemberExpression"}checkLVal(se,O,K=64,we=!1,gt=!1,sr=!1){var Yr;let Lr=se.type;if(this.isObjectMethod(se))return;let fi=this.isOptionalMemberExpression(se);if(fi||Lr==="MemberExpression"){fi&&(this.expectPlugin("optionalChainingAssign",se.loc.start),O.type!=="AssignmentExpression"&&this.raise(X.InvalidLhsOptionalChaining,se,{ancestor:O})),K!==64&&this.raise(X.InvalidPropertyBindingPattern,se);return}if(Lr==="Identifier"){this.checkIdentifier(se,K,gt);let{name:Bl}=se;we&&(we.has(Bl)?this.raise(X.ParamDupe,se):we.add(Bl));return}let $n=this.isValidLVal(Lr,!(sr||(Yr=se.extra)!=null&&Yr.parenthesized)&&O.type==="AssignmentExpression",K);if($n===!0)return;if($n===!1){let Bl=K===64?X.InvalidLhs:X.InvalidLhsBinding;this.raise(Bl,se,{ancestor:O});return}let ra,kc;typeof $n=="string"?(ra=$n,kc=Lr==="ParenthesizedExpression"):[ra,kc]=$n;let Nl=Lr==="ArrayPattern"||Lr==="ObjectPattern"?{type:Lr}:O,ca=se[ra];if(Array.isArray(ca))for(let Bl of ca)Bl&&this.checkLVal(Bl,Nl,K,we,gt,kc);else ca&&this.checkLVal(ca,Nl,K,we,gt,kc)}checkIdentifier(se,O,K=!1){this.state.strict&&(K?Xa(se.name,this.inModule):Ps(se.name))&&(O===64?this.raise(X.StrictEvalArguments,se,{referenceName:se.name}):this.raise(X.StrictEvalArgumentsBinding,se,{bindingName:se.name})),O&8192&&se.name==="let"&&this.raise(X.LetInLexicalBinding,se),O&64||this.declareNameFromIdentifier(se,O)}declareNameFromIdentifier(se,O){this.scope.declareName(se.name,O,se.loc.start)}checkToRestConversion(se,O){switch(se.type){case"ParenthesizedExpression":this.checkToRestConversion(se.expression,O);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(O)break;default:this.raise(X.InvalidRestAssignmentPattern,se)}}checkCommaAfterRest(se){return this.match(12)?(this.raise(this.lookaheadCharCode()===se?X.RestTrailingComma:X.ElementAfterRest,this.state.startLoc),!0):!1}};function aa(se){if(se==null)throw new Error(`Unexpected ${se} value.`);return se}function Bo(se){if(!se)throw new Error("Assert fail")}var us=Q`typescript`({AbstractMethodHasImplementation:({methodName:se})=>`Method '${se}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:se})=>`Property '${se}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:se})=>`'declare' is not allowed in ${se}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:se})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:se})=>`Duplicate modifier: '${se}'.`,EmptyHeritageClauseType:({token:se})=>`'${se}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:se})=>`'${se[0]}' modifier cannot be used with '${se[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:se})=>`Index signatures cannot have an accessibility modifier ('${se}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:se})=>`'${se}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:se})=>`'${se}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:se})=>`'${se}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:se})=>`'${se[0]}' modifier must precede '${se[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:se})=>`Private elements cannot have an accessibility modifier ('${se}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:se})=>`Single type parameter ${se} should have a trailing comma. Example usage: <${se},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:se})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${se}.`});function Ql(se){switch(se){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function LA(se){return se==="private"||se==="public"||se==="protected"}function pf(se){return se==="in"||se==="out"}var ef=se=>class extends se{constructor(...O){super(...O),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:us.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter})}getScopeHandler(){return Dr}tsIsIdentifier(){return qr(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(O,K){if(!qr(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let we=this.state.value;if(O.includes(we)){if(K&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return we}}tsParseModifiers({allowedModifiers:O,disallowedModifiers:K,stopOnStartOfClassStaticBlock:we,errorTemplate:gt=us.InvalidModifierOnTypeMember},sr){let Yr=(fi,$n,ra,kc)=>{$n===ra&&sr[kc]&&this.raise(us.InvalidModifiersOrder,fi,{orderedModifiers:[ra,kc]})},Lr=(fi,$n,ra,kc)=>{(sr[ra]&&$n===kc||sr[kc]&&$n===ra)&&this.raise(us.IncompatibleModifiers,fi,{modifiers:[ra,kc]})};for(;;){let{startLoc:fi}=this.state,$n=this.tsParseModifier(O.concat(K??[]),we);if(!$n)break;LA($n)?sr.accessibility?this.raise(us.DuplicateAccessibilityModifier,fi,{modifier:$n}):(Yr(fi,$n,$n,"override"),Yr(fi,$n,$n,"static"),Yr(fi,$n,$n,"readonly"),sr.accessibility=$n):pf($n)?(sr[$n]&&this.raise(us.DuplicateModifier,fi,{modifier:$n}),sr[$n]=!0,Yr(fi,$n,"in","out")):(hasOwnProperty.call(sr,$n)?this.raise(us.DuplicateModifier,fi,{modifier:$n}):(Yr(fi,$n,"static","readonly"),Yr(fi,$n,"static","override"),Yr(fi,$n,"override","readonly"),Yr(fi,$n,"abstract","override"),Lr(fi,$n,"declare","override"),Lr(fi,$n,"static","abstract")),sr[$n]=!0),K!=null&&K.includes($n)&&this.raise(gt,fi,{modifier:$n})}}tsIsListTerminator(O){switch(O){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(O,K){let we=[];for(;!this.tsIsListTerminator(O);)we.push(K());return we}tsParseDelimitedList(O,K,we){return aa(this.tsParseDelimitedListWorker(O,K,!0,we))}tsParseDelimitedListWorker(O,K,we,gt){let sr=[],Yr=-1;for(;!this.tsIsListTerminator(O);){Yr=-1;let Lr=K();if(Lr==null)return;if(sr.push(Lr),this.eat(12)){Yr=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(O))break;we&&this.expect(12);return}return gt&&(gt.value=Yr),sr}tsParseBracketedList(O,K,we,gt,sr){gt||(we?this.expect(0):this.expect(47));let Yr=this.tsParseDelimitedList(O,K,sr);return we?this.expect(3):this.expect(48),Yr}tsParseImportType(){let O=this.startNode();return this.expect(83),this.expect(10),this.match(134)?O.argument=this.parseStringLiteral(this.state.value):(this.raise(us.UnsupportedImportTypeArgument,this.state.startLoc),O.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(O.options=super.parseMaybeAssignAllowIn(),this.eat(12)):O.options=null,this.expect(11),this.eat(16)&&(O.qualifier=this.tsParseEntityName(3)),this.match(47)&&(O.typeParameters=this.tsParseTypeArguments()),this.finishNode(O,"TSImportType")}tsParseEntityName(O){let K;if(O&1&&this.match(78))if(O&2)K=this.parseIdentifier(!0);else{let we=this.startNode();this.next(),K=this.finishNode(we,"ThisExpression")}else K=this.parseIdentifier(!!(O&1));for(;this.eat(16);){let we=this.startNodeAtNode(K);we.left=K,we.right=this.parseIdentifier(!!(O&1)),K=this.finishNode(we,"TSQualifiedName")}return K}tsParseTypeReference(){let O=this.startNode();return O.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(O.typeParameters=this.tsParseTypeArguments()),this.finishNode(O,"TSTypeReference")}tsParseThisTypePredicate(O){this.next();let K=this.startNodeAtNode(O);return K.parameterName=O,K.typeAnnotation=this.tsParseTypeAnnotation(!1),K.asserts=!1,this.finishNode(K,"TSTypePredicate")}tsParseThisTypeNode(){let O=this.startNode();return this.next(),this.finishNode(O,"TSThisType")}tsParseTypeQuery(){let O=this.startNode();return this.expect(87),this.match(83)?O.exprName=this.tsParseImportType():O.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(O.typeParameters=this.tsParseTypeArguments()),this.finishNode(O,"TSTypeQuery")}tsParseTypeParameter(O){let K=this.startNode();return O(K),K.name=this.tsParseTypeParameterName(),K.constraint=this.tsEatThenParseType(81),K.default=this.tsEatThenParseType(29),this.finishNode(K,"TSTypeParameter")}tsTryParseTypeParameters(O){if(this.match(47))return this.tsParseTypeParameters(O)}tsParseTypeParameters(O){let K=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let we={value:-1};return K.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,O),!1,!0,we),K.params.length===0&&this.raise(us.EmptyTypeParameters,K),we.value!==-1&&this.addExtra(K,"trailingComma",we.value),this.finishNode(K,"TSTypeParameterDeclaration")}tsFillSignature(O,K){let we=O===19,gt="parameters",sr="typeAnnotation";K.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),K[gt]=this.tsParseBindingListForSignature(),we?K[sr]=this.tsParseTypeOrTypePredicateAnnotation(O):this.match(O)&&(K[sr]=this.tsParseTypeOrTypePredicateAnnotation(O))}tsParseBindingListForSignature(){let O=super.parseBindingList(11,41,2);for(let K of O){let{type:we}=K;(we==="AssignmentPattern"||we==="TSParameterProperty")&&this.raise(us.UnsupportedSignatureParameterKind,K,{type:we})}return O}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(O,K){return this.tsFillSignature(14,K),this.tsParseTypeMemberSemicolon(),this.finishNode(K,O)}tsIsUnambiguouslyIndexSignature(){return this.next(),qr(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(O){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let K=this.parseIdentifier();K.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(K),this.expect(3),O.parameters=[K];let we=this.tsTryParseTypeAnnotation();return we&&(O.typeAnnotation=we),this.tsParseTypeMemberSemicolon(),this.finishNode(O,"TSIndexSignature")}tsParsePropertyOrMethodSignature(O,K){this.eat(17)&&(O.optional=!0);let we=O;if(this.match(10)||this.match(47)){K&&this.raise(us.ReadonlyForMethodSignature,O);let gt=we;gt.kind&&this.match(47)&&this.raise(us.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,gt),this.tsParseTypeMemberSemicolon();let sr="parameters",Yr="typeAnnotation";if(gt.kind==="get")gt[sr].length>0&&(this.raise(X.BadGetterArity,this.state.curPosition()),this.isThisParam(gt[sr][0])&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(gt.kind==="set"){if(gt[sr].length!==1)this.raise(X.BadSetterArity,this.state.curPosition());else{let Lr=gt[sr][0];this.isThisParam(Lr)&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()),Lr.type==="Identifier"&&Lr.optional&&this.raise(us.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),Lr.type==="RestElement"&&this.raise(us.SetAccessorCannotHaveRestParameter,this.state.curPosition())}gt[Yr]&&this.raise(us.SetAccessorCannotHaveReturnType,gt[Yr])}else gt.kind="method";return this.finishNode(gt,"TSMethodSignature")}else{let gt=we;K&&(gt.readonly=!0);let sr=this.tsTryParseTypeAnnotation();return sr&&(gt.typeAnnotation=sr),this.tsParseTypeMemberSemicolon(),this.finishNode(gt,"TSPropertySignature")}}tsParseTypeMember(){let O=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",O);if(this.match(77)){let we=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",O):(O.key=this.createIdentifier(we,"new"),this.tsParsePropertyOrMethodSignature(O,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},O),this.tsTryParseIndexSignature(O)||(super.parsePropertyName(O),!O.computed&&O.key.type==="Identifier"&&(O.key.name==="get"||O.key.name==="set")&&this.tsTokenCanFollowModifier()&&(O.kind=O.key.name,super.parsePropertyName(O)),this.tsParsePropertyOrMethodSignature(O,!!O.readonly))}tsParseTypeLiteral(){let O=this.startNode();return O.members=this.tsParseObjectTypeMembers(),this.finishNode(O,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let O=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),O}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let O=this.startNode();this.expect(5),this.match(53)?(O.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(O.readonly=!0),this.expect(0);{let K=this.startNode();K.name=this.tsParseTypeParameterName(),K.constraint=this.tsExpectThenParseType(58),O.typeParameter=this.finishNode(K,"TSTypeParameter")}return O.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(O.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(O.optional=!0),O.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(O,"TSMappedType")}tsParseTupleType(){let O=this.startNode();O.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let K=!1;return O.elementTypes.forEach(we=>{let{type:gt}=we;K&>!=="TSRestType"&>!=="TSOptionalType"&&!(gt==="TSNamedTupleMember"&&we.optional)&&this.raise(us.OptionalTypeBeforeRequired,we),K||(K=gt==="TSNamedTupleMember"&&we.optional||gt==="TSOptionalType")}),this.finishNode(O,"TSTupleType")}tsParseTupleElementType(){let O=this.state.startLoc,K=this.eat(21),{startLoc:we}=this.state,gt,sr,Yr,Lr,fi=ke(this.state.type)?this.lookaheadCharCode():null;if(fi===58)gt=!0,Yr=!1,sr=this.parseIdentifier(!0),this.expect(14),Lr=this.tsParseType();else if(fi===63){Yr=!0;let $n=this.state.value,ra=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(gt=!0,sr=this.createIdentifier(this.startNodeAt(we),$n),this.expect(17),this.expect(14),Lr=this.tsParseType()):(gt=!1,Lr=ra,this.expect(17))}else Lr=this.tsParseType(),Yr=this.eat(17),gt=this.eat(14);if(gt){let $n;sr?($n=this.startNodeAt(we),$n.optional=Yr,$n.label=sr,$n.elementType=Lr,this.eat(17)&&($n.optional=!0,this.raise(us.TupleOptionalAfterType,this.state.lastTokStartLoc))):($n=this.startNodeAt(we),$n.optional=Yr,this.raise(us.InvalidTupleMemberLabel,Lr),$n.label=Lr,$n.elementType=this.tsParseType()),Lr=this.finishNode($n,"TSNamedTupleMember")}else if(Yr){let $n=this.startNodeAt(we);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSOptionalType")}if(K){let $n=this.startNodeAt(O);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSRestType")}return Lr}tsParseParenthesizedType(){let O=this.startNode();return this.expect(10),O.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(O,"TSParenthesizedType")}tsParseFunctionOrConstructorType(O,K){let we=this.startNode();return O==="TSConstructorType"&&(we.abstract=!!K,K&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,we)),this.finishNode(we,O)}tsParseLiteralTypeNode(){let O=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:O.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(O,"TSLiteralType")}tsParseTemplateLiteralType(){{let O=this.startNode();return O.literal=super.parseTemplate(!1),this.finishNode(O,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let O=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(O):O}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let O=this.startNode(),K=this.lookahead();return K.type!==135&&K.type!==136&&this.unexpected(),O.literal=this.parseMaybeUnary(),this.finishNode(O,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:O}=this.state;if(qr(O)||O===88||O===84){let K=O===88?"TSVoidKeyword":O===84?"TSNullKeyword":Ql(this.state.value);if(K!==void 0&&this.lookaheadCharCode()!==46){let we=this.startNode();return this.next(),this.finishNode(we,K)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:O}=this.state,K=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let we=this.startNodeAt(O);we.elementType=K,this.expect(3),K=this.finishNode(we,"TSArrayType")}else{let we=this.startNodeAt(O);we.objectType=K,we.indexType=this.tsParseType(),this.expect(3),K=this.finishNode(we,"TSIndexedAccessType")}return K}tsParseTypeOperator(){let O=this.startNode(),K=this.state.value;return this.next(),O.operator=K,O.typeAnnotation=this.tsParseTypeOperatorOrHigher(),K==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(O),this.finishNode(O,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(O){switch(O.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(us.UnexpectedReadonly,O)}}tsParseInferType(){let O=this.startNode();this.expectContextual(115);let K=this.startNode();return K.name=this.tsParseTypeParameterName(),K.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),O.typeParameter=this.finishNode(K,"TSTypeParameter"),this.finishNode(O,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let O=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return O}}tsParseTypeOperatorOrHigher(){return Gc(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(O,K,we){let gt=this.startNode(),sr=this.eat(we),Yr=[];do Yr.push(K());while(this.eat(we));return Yr.length===1&&!sr?Yr[0]:(gt.types=Yr,this.finishNode(gt,O))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(qr(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:O}=this.state,K=O.length;try{return this.parseObjectLike(8,!0),O.length===K}catch{return!1}}if(this.match(0)){this.next();let{errors:O}=this.state,K=O.length;try{return super.parseBindingList(3,93,1),O.length===K}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(O){return this.tsInType(()=>{let K=this.startNode();this.expect(O);let we=this.startNode(),gt=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(gt&&this.match(78)){let Lr=this.tsParseThisTypeOrThisTypePredicate();return Lr.type==="TSThisType"?(we.parameterName=Lr,we.asserts=!0,we.typeAnnotation=null,Lr=this.finishNode(we,"TSTypePredicate")):(this.resetStartLocationFromNode(Lr,we),Lr.asserts=!0),K.typeAnnotation=Lr,this.finishNode(K,"TSTypeAnnotation")}let sr=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!sr)return gt?(we.parameterName=this.parseIdentifier(),we.asserts=gt,we.typeAnnotation=null,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,K);let Yr=this.tsParseTypeAnnotation(!1);return we.parameterName=sr,we.typeAnnotation=Yr,we.asserts=gt,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let O=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),O}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let O=this.state.containsEsc;return this.next(),!qr(this.state.type)&&!this.match(78)?!1:(O&&this.raise(X.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(O=!0,K=this.startNode()){return this.tsInType(()=>{O&&this.expect(14),K.typeAnnotation=this.tsParseType()}),this.finishNode(K,"TSTypeAnnotation")}tsParseType(){Bo(this.state.inType);let O=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return O;let K=this.startNodeAtNode(O);return K.checkType=O,K.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),K.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),K.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(K,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(us.ReservedTypeAssertion,this.state.startLoc);let O=this.startNode();return O.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),O.expression=this.parseMaybeUnary(),this.finishNode(O,"TSTypeAssertion")}tsParseHeritageClause(O){let K=this.state.startLoc,we=this.tsParseDelimitedList("HeritageClauseElement",()=>{let gt=this.startNode();return gt.expression=this.tsParseEntityName(3),this.match(47)&&(gt.typeParameters=this.tsParseTypeArguments()),this.finishNode(gt,"TSExpressionWithTypeArguments")});return we.length||this.raise(us.EmptyHeritageClauseType,K,{token:O}),we}tsParseInterfaceDeclaration(O,K={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),K.declare&&(O.declare=!0),qr(this.state.type)?(O.id=this.parseIdentifier(),this.checkIdentifier(O.id,130)):(O.id=null,this.raise(us.MissingInterfaceName,this.state.startLoc)),O.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(O.extends=this.tsParseHeritageClause("extends"));let we=this.startNode();return we.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),O.body=this.finishNode(we,"TSInterfaceBody"),this.finishNode(O,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(O){return O.id=this.parseIdentifier(),this.checkIdentifier(O.id,2),O.typeAnnotation=this.tsInType(()=>{if(O.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let K=this.startNode();return this.next(),this.finishNode(K,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(O,"TSTypeAliasDeclaration")}tsInTopLevelContext(O){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return O()}finally{this.state.context=K}}else return O()}tsInType(O){let K=this.state.inType;this.state.inType=!0;try{return O()}finally{this.state.inType=K}}tsInDisallowConditionalTypesContext(O){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return O()}finally{this.state.inDisallowConditionalTypesContext=K}}tsInAllowConditionalTypesContext(O){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return O()}finally{this.state.inDisallowConditionalTypesContext=K}}tsEatThenParseType(O){if(this.match(O))return this.tsNextThenParseType()}tsExpectThenParseType(O){return this.tsInType(()=>(this.expect(O),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let O=this.startNode();return O.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(O.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(O,"TSEnumMember")}tsParseEnumDeclaration(O,K={}){return K.const&&(O.const=!0),K.declare&&(O.declare=!0),this.expectContextual(126),O.id=this.parseIdentifier(),this.checkIdentifier(O.id,O.const?8971:8459),this.expect(5),O.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(O,"TSEnumDeclaration")}tsParseEnumBody(){let O=this.startNode();return this.expect(5),O.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(O,"TSEnumBody")}tsParseModuleBlock(){let O=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(O.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(O,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(O,K=!1){if(O.id=this.parseIdentifier(),K||this.checkIdentifier(O.id,1024),this.eat(16)){let we=this.startNode();this.tsParseModuleOrNamespaceDeclaration(we,!0),O.body=we}else this.scope.enter(256),this.prodParam.enter(0),O.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(O,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(O){return this.isContextual(112)?(O.kind="global",O.global=!0,O.id=this.parseIdentifier()):this.match(134)?(O.kind="module",O.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),O.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(O,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(O,K,we){O.isExport=we||!1,O.id=K||this.parseIdentifier(),this.checkIdentifier(O.id,4096),this.expect(29);let gt=this.tsParseModuleReference();return O.importKind==="type"&>.type!=="TSExternalModuleReference"&&this.raise(us.ImportAliasHasImportType,gt),O.moduleReference=gt,this.semicolon(),this.finishNode(O,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let O=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),O.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(O,"TSExternalModuleReference")}tsLookAhead(O){let K=this.state.clone(),we=O();return this.state=K,we}tsTryParseAndCatch(O){let K=this.tryParse(we=>O()||we());if(!(K.aborted||!K.node))return K.error&&(this.state=K.failState),K.node}tsTryParse(O){let K=this.state.clone(),we=O();if(we!==void 0&&we!==!1)return we;this.state=K}tsTryParseDeclare(O){if(this.isLineTerminator())return;let K=this.state.type,we;return this.isContextual(100)&&(K=74,we="let"),this.tsInAmbientContext(()=>{switch(K){case 68:return O.declare=!0,super.parseFunctionStatement(O,!1,!1);case 80:return O.declare=!0,this.parseClass(O,!0,!1);case 126:return this.tsParseEnumDeclaration(O,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(O);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(O.declare=!0,this.parseVarStatement(O,we||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(O,{const:!0,declare:!0}));case 129:{let gt=this.tsParseInterfaceDeclaration(O,{declare:!0});if(gt)return gt}default:if(qr(K))return this.tsParseDeclaration(O,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(O,K,we){switch(K.name){case"declare":{let gt=this.tsTryParseDeclare(O);return gt&&(gt.declare=!0),gt}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let gt=O;return gt.kind="global",O.global=!0,gt.id=K,gt.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(gt,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(O,K.name,!1,we)}}tsParseDeclaration(O,K,we,gt){switch(K){case"abstract":if(this.tsCheckLineTerminator(we)&&(this.match(80)||qr(this.state.type)))return this.tsParseAbstractDeclaration(O,gt);break;case"module":if(this.tsCheckLineTerminator(we)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(O);if(qr(this.state.type))return O.kind="module",this.tsParseModuleOrNamespaceDeclaration(O)}break;case"namespace":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return O.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(O);break;case"type":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return this.tsParseTypeAliasDeclaration(O);break}}tsCheckLineTerminator(O){return O?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(O){if(!this.match(47))return;let K=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let we=this.tsTryParseAndCatch(()=>{let gt=this.startNodeAt(O);return gt.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(gt),gt.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),gt});if(this.state.maybeInArrowParameters=K,!!we)return super.parseArrowExpression(we,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let O=this.startNode();return O.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),O.params.length===0?this.raise(us.EmptyTypeArguments,O):!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(O,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return cl(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(O,K){let we=this.state.startLoc,gt={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},gt);let sr=gt.accessibility,Yr=gt.override,Lr=gt.readonly;!(O&4)&&(sr||Lr||Yr)&&this.raise(us.UnexpectedParameterModifier,we);let fi=this.parseMaybeDefault();O&2&&this.parseFunctionParamType(fi);let $n=this.parseMaybeDefault(fi.loc.start,fi);if(sr||Lr||Yr){let ra=this.startNodeAt(we);return K.length&&(ra.decorators=K),sr&&(ra.accessibility=sr),Lr&&(ra.readonly=Lr),Yr&&(ra.override=Yr),$n.type!=="Identifier"&&$n.type!=="AssignmentPattern"&&this.raise(us.UnsupportedParameterPropertyKind,ra),ra.parameter=$n,this.finishNode(ra,"TSParameterProperty")}return K.length&&(fi.decorators=K),$n}isSimpleParameter(O){return O.type==="TSParameterProperty"&&super.isSimpleParameter(O.parameter)||super.isSimpleParameter(O)}tsDisallowOptionalPattern(O){for(let K of O.params)K.type!=="Identifier"&&K.optional&&!this.state.isAmbientContext&&this.raise(us.PatternIsOptional,K)}setArrowFunctionParameters(O,K,we){super.setArrowFunctionParameters(O,K,we),this.tsDisallowOptionalPattern(O)}parseFunctionBodyAndFinish(O,K,we=!1){this.match(14)&&(O.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let gt=K==="FunctionDeclaration"?"TSDeclareFunction":K==="ClassMethod"||K==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return gt&&!this.match(5)&&this.isLineTerminator()?this.finishNode(O,gt):gt==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(us.DeclareFunctionHasImplementation,O),O.declare)?super.parseFunctionBodyAndFinish(O,gt,we):(this.tsDisallowOptionalPattern(O),super.parseFunctionBodyAndFinish(O,K,we))}registerFunctionStatementId(O){!O.body&&O.id?this.checkIdentifier(O.id,1024):super.registerFunctionStatementId(O)}tsCheckForInvalidTypeCasts(O){O.forEach(K=>{K?.type==="TSTypeCastExpression"&&this.raise(us.UnexpectedTypeAnnotation,K.typeAnnotation)})}toReferencedList(O,K){return this.tsCheckForInvalidTypeCasts(O),O}parseArrayLike(O,K,we,gt){let sr=super.parseArrayLike(O,K,we,gt);return sr.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(sr.elements),sr}parseSubscript(O,K,we,gt){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let Yr=this.startNodeAt(K);return Yr.expression=O,this.finishNode(Yr,"TSNonNullExpression")}let sr=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(we)return gt.stop=!0,O;gt.optionalChainMember=sr=!0,this.next()}if(this.match(47)||this.match(51)){let Yr,Lr=this.tsTryParseAndCatch(()=>{if(!we&&this.atPossibleAsyncArrow(O)){let kc=this.tsTryParseGenericAsyncArrowFunction(K);if(kc)return kc}let fi=this.tsParseTypeArgumentsInExpression();if(!fi)return;if(sr&&!this.match(10)){Yr=this.state.curPosition();return}if(Ft(this.state.type)){let kc=super.parseTaggedTemplateExpression(O,K,gt);return kc.typeParameters=fi,kc}if(!we&&this.eat(10)){let kc=this.startNodeAt(K);return kc.callee=O,kc.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(kc.arguments),kc.typeParameters=fi,gt.optionalChainMember&&(kc.optional=sr),this.finishCallExpression(kc,gt.optionalChainMember)}let $n=this.state.type;if($n===48||$n===52||$n!==10&&Nn($n)&&!this.hasPrecedingLineBreak())return;let ra=this.startNodeAt(K);return ra.expression=O,ra.typeParameters=fi,this.finishNode(ra,"TSInstantiationExpression")});if(Yr&&this.unexpected(Yr,10),Lr)return Lr.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(us.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),Lr}return super.parseSubscript(O,K,we,gt)}parseNewCallee(O){var K;super.parseNewCallee(O);let{callee:we}=O;we.type==="TSInstantiationExpression"&&!((K=we.extra)!=null&&K.parenthesized)&&(O.typeParameters=we.typeParameters,O.callee=we.expression)}parseExprOp(O,K,we){let gt;if(Hr(58)>we&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(gt=this.isContextual(120)))){let sr=this.startNodeAt(K);return sr.expression=O,sr.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(gt&&this.raise(X.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(sr,gt?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(sr,K,we)}return super.parseExprOp(O,K,we)}checkReservedWord(O,K,we,gt){this.state.isAmbientContext||super.checkReservedWord(O,K,we,gt)}checkImportReflection(O){super.checkImportReflection(O),O.module&&O.importKind!=="value"&&this.raise(us.ImportReflectionHasImportType,O.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(O){if(super.isPotentialImportPhase(O))return!0;if(this.isContextual(130)){let K=this.lookaheadCharCode();return O?K===123||K===42:K!==61}return!O&&this.isContextual(87)}applyImportPhase(O,K,we,gt){super.applyImportPhase(O,K,we,gt),K?O.exportKind=we==="type"?"type":"value":O.importKind=we==="type"||we==="typeof"?we:"value"}parseImport(O){if(this.match(134))return O.importKind="value",super.parseImport(O);let K;if(qr(this.state.type)&&this.lookaheadCharCode()===61)return O.importKind="value",this.tsParseImportEqualsDeclaration(O);if(this.isContextual(130)){let we=this.parseMaybeImportPhase(O,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(O,we);K=super.parseImportSpecifiersAndAfter(O,we)}else K=super.parseImport(O);return K.importKind==="type"&&K.specifiers.length>1&&K.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(us.TypeImportCannotSpecifyDefaultAndNamed,K),K}parseExport(O,K){if(this.match(83)){let we=O;this.next();let gt=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?gt=this.parseMaybeImportPhase(we,!1):we.importKind="value",this.tsParseImportEqualsDeclaration(we,gt,!0)}else if(this.eat(29)){let we=O;return we.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(we,"TSExportAssignment")}else if(this.eatContextual(93)){let we=O;return this.expectContextual(128),we.id=this.parseIdentifier(),this.semicolon(),this.finishNode(we,"TSNamespaceExportDeclaration")}else return super.parseExport(O,K)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let O=this.startNode();return this.next(),O.abstract=!0,this.parseClass(O,!0,!0)}if(this.match(129)){let O=this.tsParseInterfaceDeclaration(this.startNode());if(O)return O}return super.parseExportDefaultExpression()}parseVarStatement(O,K,we=!1){let{isAmbientContext:gt}=this.state,sr=super.parseVarStatement(O,K,we||gt);if(!gt)return sr;for(let{id:Yr,init:Lr}of sr.declarations)Lr&&(K!=="const"||Yr.typeAnnotation?this.raise(us.InitializerNotAllowedInAmbientContext,Lr):_d(Lr,this.hasPlugin("estree"))||this.raise(us.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,Lr));return sr}parseStatementContent(O,K){if(this.match(75)&&this.isLookaheadContextual("enum")){let we=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(we,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let we=this.tsParseInterfaceDeclaration(this.startNode());if(we)return we}return super.parseStatementContent(O,K)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(O,K){return K.some(we=>LA(we)?O.accessibility===we:!!O[we])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(O,K,we){let gt=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:gt,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:us.InvalidModifierOnTypeParameterPositions},K);let sr=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(K,gt)&&this.raise(us.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(O,K)):this.parseClassMemberWithIsStatic(O,K,we,!!K.static)};K.declare?this.tsInAmbientContext(sr):sr()}parseClassMemberWithIsStatic(O,K,we,gt){let sr=this.tsTryParseIndexSignature(K);if(sr){O.body.push(sr),K.abstract&&this.raise(us.IndexSignatureHasAbstract,K),K.accessibility&&this.raise(us.IndexSignatureHasAccessibility,K,{modifier:K.accessibility}),K.declare&&this.raise(us.IndexSignatureHasDeclare,K),K.override&&this.raise(us.IndexSignatureHasOverride,K);return}!this.state.inAbstractClass&&K.abstract&&this.raise(us.NonAbstractClassHasAbstractMethod,K),K.override&&(we.hadSuperClass||this.raise(us.OverrideNotInSubClass,K)),super.parseClassMemberWithIsStatic(O,K,we,gt)}parsePostMemberNameModifiers(O){this.eat(17)&&(O.optional=!0),O.readonly&&this.match(10)&&this.raise(us.ClassMethodHasReadonly,O),O.declare&&this.match(10)&&this.raise(us.ClassMethodHasDeclare,O)}parseExpressionStatement(O,K,we){return(K.type==="Identifier"?this.tsParseExpressionStatement(O,K,we):void 0)||super.parseExpressionStatement(O,K,we)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(O,K,we){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(O,K,we);let gt=this.tryParse(()=>super.parseConditional(O,K));return gt.node?(gt.error&&(this.state=gt.failState),gt.node):(gt.error&&super.setOptionalParametersError(we,gt.error),O)}parseParenItem(O,K){let we=super.parseParenItem(O,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(O)),this.match(14)){let gt=this.startNodeAt(K);return gt.expression=O,gt.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(gt,"TSTypeCastExpression")}return O}parseExportDeclaration(O){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(O));let K=this.state.startLoc,we=this.eatContextual(125);if(we&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(us.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let gt=qr(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(O);return gt?((gt.type==="TSInterfaceDeclaration"||gt.type==="TSTypeAliasDeclaration"||we)&&(O.exportKind="type"),we&>.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(gt,K),gt.declare=!0),gt):null}parseClassId(O,K,we,gt){if((!K||we)&&this.isContextual(113))return;super.parseClassId(O,K,we,O.declare?1024:8331);let sr=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);sr&&(O.typeParameters=sr)}parseClassPropertyAnnotation(O){O.optional||(this.eat(35)?O.definite=!0:this.eat(17)&&(O.optional=!0));let K=this.tsTryParseTypeAnnotation();K&&(O.typeAnnotation=K)}parseClassProperty(O){if(this.parseClassPropertyAnnotation(O),this.state.isAmbientContext&&!(O.readonly&&!O.typeAnnotation)&&this.match(29)&&this.raise(us.DeclareClassFieldHasInitializer,this.state.startLoc),O.abstract&&this.match(29)){let{key:K}=O;this.raise(us.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:K.type==="Identifier"&&!O.computed?K.name:`[${this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end))}]`})}return super.parseClassProperty(O)}parseClassPrivateProperty(O){return O.abstract&&this.raise(us.PrivateElementHasAbstract,O),O.accessibility&&this.raise(us.PrivateElementHasAccessibility,O,{modifier:O.accessibility}),this.parseClassPropertyAnnotation(O),super.parseClassPrivateProperty(O)}parseClassAccessorProperty(O){return this.parseClassPropertyAnnotation(O),O.optional&&this.raise(us.AccessorCannotBeOptional,O),super.parseClassAccessorProperty(O)}pushClassMethod(O,K,we,gt,sr,Yr){let Lr=this.tsTryParseTypeParameters(this.tsParseConstModifier);Lr&&sr&&this.raise(us.ConstructorHasTypeParameters,Lr);let{declare:fi=!1,kind:$n}=K;fi&&($n==="get"||$n==="set")&&this.raise(us.DeclareAccessor,K,{kind:$n}),Lr&&(K.typeParameters=Lr),super.pushClassMethod(O,K,we,gt,sr,Yr)}pushClassPrivateMethod(O,K,we,gt){let sr=this.tsTryParseTypeParameters(this.tsParseConstModifier);sr&&(K.typeParameters=sr),super.pushClassPrivateMethod(O,K,we,gt)}declareClassPrivateMethodInScope(O,K){O.type!=="TSDeclareMethod"&&(O.type==="MethodDefinition"&&!hasOwnProperty.call(O.value,"body")||super.declareClassPrivateMethodInScope(O,K))}parseClassSuper(O){super.parseClassSuper(O),O.superClass&&(this.match(47)||this.match(51))&&(O.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(O.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(O,K,we,gt,sr,Yr,Lr){let fi=this.tsTryParseTypeParameters(this.tsParseConstModifier);return fi&&(O.typeParameters=fi),super.parseObjPropValue(O,K,we,gt,sr,Yr,Lr)}parseFunctionParams(O,K){let we=this.tsTryParseTypeParameters(this.tsParseConstModifier);we&&(O.typeParameters=we),super.parseFunctionParams(O,K)}parseVarId(O,K){super.parseVarId(O,K),O.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(O.definite=!0);let we=this.tsTryParseTypeAnnotation();we&&(O.id.typeAnnotation=we,this.resetEndLocation(O.id))}parseAsyncArrowFromCallExpression(O,K){return this.match(14)&&(O.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(O,K)}parseMaybeAssign(O,K){var we,gt,sr,Yr,Lr;let fi,$n,ra;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(fi=this.state.clone(),$n=this.tryParse(()=>super.parseMaybeAssign(O,K),fi),!$n.error)return $n.node;let{context:ca}=this.state,Bl=ca[ca.length-1];(Bl===Se.j_oTag||Bl===Se.j_expr)&&ca.pop()}if(!((we=$n)!=null&&we.error)&&!this.match(47))return super.parseMaybeAssign(O,K);(!fi||fi===this.state)&&(fi=this.state.clone());let kc,Nl=this.tryParse(ca=>{var Bl,$g;kc=this.tsParseTypeParameters(this.tsParseConstModifier);let SA=super.parseMaybeAssign(O,K);return(SA.type!=="ArrowFunctionExpression"||(Bl=SA.extra)!=null&&Bl.parenthesized)&&ca(),(($g=kc)==null?void 0:$g.params.length)!==0&&this.resetStartLocationFromNode(SA,kc),SA.typeParameters=kc,SA},fi);if(!Nl.error&&!Nl.aborted)return kc&&this.reportReservedArrowTypeParam(kc),Nl.node;if(!$n&&(Bo(!this.hasPlugin("jsx")),ra=this.tryParse(()=>super.parseMaybeAssign(O,K),fi),!ra.error))return ra.node;if((gt=$n)!=null&>.node)return this.state=$n.failState,$n.node;if(Nl.node)return this.state=Nl.failState,kc&&this.reportReservedArrowTypeParam(kc),Nl.node;if((sr=ra)!=null&&sr.node)return this.state=ra.failState,ra.node;throw((Yr=$n)==null?void 0:Yr.error)||Nl.error||((Lr=ra)==null?void 0:Lr.error)}reportReservedArrowTypeParam(O){var K;O.params.length===1&&!O.params[0].constraint&&!((K=O.extra)!=null&&K.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(us.ReservedArrowTypeParam,O)}parseMaybeUnary(O,K){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(O,K)}parseArrow(O){if(this.match(14)){let K=this.tryParse(we=>{let gt=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&we(),gt});if(K.aborted)return;K.thrown||(K.error&&(this.state=K.failState),O.returnType=K.node)}return super.parseArrow(O)}parseFunctionParamType(O){this.eat(17)&&(O.optional=!0);let K=this.tsTryParseTypeAnnotation();return K&&(O.typeAnnotation=K),this.resetEndLocation(O),O}isAssignable(O,K){switch(O.type){case"TSTypeCastExpression":return this.isAssignable(O.expression,K);case"TSParameterProperty":return!0;default:return super.isAssignable(O,K)}}toAssignable(O,K=!1){switch(O.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(O,K);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":K?this.expressionScope.recordArrowParameterBindingError(us.UnexpectedTypeCastInParameter,O):this.raise(us.UnexpectedTypeCastInParameter,O),this.toAssignable(O.expression,K);break;case"AssignmentExpression":!K&&O.left.type==="TSTypeCastExpression"&&(O.left=this.typeCastToParameter(O.left));default:super.toAssignable(O,K)}}toAssignableParenthesizedExpression(O,K){switch(O.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(O.expression,K);break;default:super.toAssignable(O,K)}}checkToRestConversion(O,K){switch(O.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(O.expression,!1);break;default:super.checkToRestConversion(O,K)}}isValidLVal(O,K,we){switch(O){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(we!==64||!K)&&["expression",!0];default:return super.isValidLVal(O,K,we)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(O,K){if(this.match(47)||this.match(51)){let we=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let gt=super.parseMaybeDecoratorArguments(O,K);return gt.typeParameters=we,gt}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(O,K)}checkCommaAfterRest(O){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===O?(this.next(),!1):super.checkCommaAfterRest(O)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(O,K){let we=super.parseMaybeDefault(O,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startthis.isAssignable(K,!0)):super.shouldParseArrow(O)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(O){if(this.match(47)||this.match(51)){let K=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());K&&(O.typeParameters=K)}return super.jsxParseOpeningElementAfterName(O)}getGetterSetterExpectedParamCount(O){let K=super.getGetterSetterExpectedParamCount(O),we=this.getObjectOrClassMethodParams(O)[0];return we&&this.isThisParam(we)?K+1:K}parseCatchClauseParam(){let O=super.parseCatchClauseParam(),K=this.tsTryParseTypeAnnotation();return K&&(O.typeAnnotation=K,this.resetEndLocation(O)),O}tsInAmbientContext(O){let{isAmbientContext:K,strict:we}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return O()}finally{this.state.isAmbientContext=K,this.state.strict=we}}parseClass(O,K,we){let gt=this.state.inAbstractClass;this.state.inAbstractClass=!!O.abstract;try{return super.parseClass(O,K,we)}finally{this.state.inAbstractClass=gt}}tsParseAbstractDeclaration(O,K){if(this.match(80))return O.abstract=!0,this.maybeTakeDecorators(K,this.parseClass(O,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return O.abstract=!0,this.raise(us.NonClassMethodPropertyHasAbstractModifer,O),this.tsParseInterfaceDeclaration(O)}else this.unexpected(null,80)}parseMethod(O,K,we,gt,sr,Yr,Lr){let fi=super.parseMethod(O,K,we,gt,sr,Yr,Lr);if(fi.abstract&&(this.hasPlugin("estree")?fi.value:fi).body){let{key:$n}=fi;this.raise(us.AbstractMethodHasImplementation,fi,{methodName:$n.type==="Identifier"&&!fi.computed?$n.name:`[${this.input.slice(this.offsetToSourcePos($n.start),this.offsetToSourcePos($n.end))}]`})}return fi}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(O,K,we,gt){return!K&>?(this.parseTypeOnlyImportExportSpecifier(O,!1,we),this.finishNode(O,"ExportSpecifier")):(O.exportKind="value",super.parseExportSpecifier(O,K,we,gt))}parseImportSpecifier(O,K,we,gt,sr){return!K&>?(this.parseTypeOnlyImportExportSpecifier(O,!0,we),this.finishNode(O,"ImportSpecifier")):(O.importKind="value",super.parseImportSpecifier(O,K,we,gt,we?4098:4096))}parseTypeOnlyImportExportSpecifier(O,K,we){let gt=K?"imported":"local",sr=K?"local":"exported",Yr=O[gt],Lr,fi=!1,$n=!0,ra=Yr.loc.start;if(this.isContextual(93)){let Nl=this.parseIdentifier();if(this.isContextual(93)){let ca=this.parseIdentifier();ke(this.state.type)?(fi=!0,Yr=Nl,Lr=K?this.parseIdentifier():this.parseModuleExportName(),$n=!1):(Lr=ca,$n=!1)}else ke(this.state.type)?($n=!1,Lr=K?this.parseIdentifier():this.parseModuleExportName()):(fi=!0,Yr=Nl)}else ke(this.state.type)&&(fi=!0,K?(Yr=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(Yr.name,Yr.loc.start,!0,!0)):Yr=this.parseModuleExportName());fi&&we&&this.raise(K?us.TypeModifierIsUsedInTypeImports:us.TypeModifierIsUsedInTypeExports,ra),O[gt]=Yr,O[sr]=Lr;let kc=K?"importKind":"exportKind";O[kc]=fi?"type":"value",$n&&this.eatContextual(93)&&(O[sr]=K?this.parseIdentifier():this.parseModuleExportName()),O[sr]||(O[sr]=Zt(O[gt])),K&&this.checkIdentifier(O[sr],fi?4098:4096)}};function ip(se){if(se.type!=="MemberExpression")return!1;let{computed:O,property:K}=se;return O&&K.type!=="StringLiteral"&&(K.type!=="TemplateLiteral"||K.expressions.length>0)?!1:YA(se.object)}function _d(se,O){var K;let{type:we}=se;if((K=se.extra)!=null&&K.parenthesized)return!1;if(O){if(we==="Literal"){let{value:gt}=se;if(typeof gt=="string"||typeof gt=="boolean")return!0}}else if(we==="StringLiteral"||we==="BooleanLiteral")return!0;return!!(j1(se,O)||pw(se,O)||we==="TemplateLiteral"&&se.expressions.length===0||ip(se))}function j1(se,O){return O?se.type==="Literal"&&(typeof se.value=="number"||"bigint"in se):se.type==="NumericLiteral"||se.type==="BigIntLiteral"}function pw(se,O){if(se.type==="UnaryExpression"){let{operator:K,argument:we}=se;if(K==="-"&&j1(we,O))return!0}return!1}function YA(se){return se.type==="Identifier"?!0:se.type!=="MemberExpression"||se.computed?!1:YA(se.object)}var Ac=Q`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Nm=se=>class extends se{parsePlaceholder(O){if(this.match(133)){let K=this.startNode();return this.next(),this.assertNoSpace(),K.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(K,O)}}finishPlaceholder(O,K){let we=O;return(!we.expectedNode||!we.type)&&(we=this.finishNode(we,"Placeholder")),we.expectedNode=K,we}getTokenFromCode(O){O===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(O)}parseExprAtom(O){return this.parsePlaceholder("Expression")||super.parseExprAtom(O)}parseIdentifier(O){return this.parsePlaceholder("Identifier")||super.parseIdentifier(O)}checkReservedWord(O,K,we,gt){O!==void 0&&super.checkReservedWord(O,K,we,gt)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(O,K,we){return O==="Placeholder"||super.isValidLVal(O,K,we)}toAssignable(O,K){O&&O.type==="Placeholder"&&O.expectedNode==="Expression"?O.expectedNode="Pattern":super.toAssignable(O,K)}chStartsBindingIdentifier(O,K){return!!(super.chStartsBindingIdentifier(O,K)||this.lookahead().type===133)}verifyBreakContinue(O,K){O.label&&O.label.type==="Placeholder"||super.verifyBreakContinue(O,K)}parseExpressionStatement(O,K){var we;if(K.type!=="Placeholder"||(we=K.extra)!=null&&we.parenthesized)return super.parseExpressionStatement(O,K);if(this.match(14)){let sr=O;return sr.label=this.finishPlaceholder(K,"Identifier"),this.next(),sr.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(sr,"LabeledStatement")}this.semicolon();let gt=O;return gt.name=K.name,this.finishPlaceholder(gt,"Statement")}parseBlock(O,K,we){return this.parsePlaceholder("BlockStatement")||super.parseBlock(O,K,we)}parseFunctionId(O){return this.parsePlaceholder("Identifier")||super.parseFunctionId(O)}parseClass(O,K,we){let gt=K?"ClassDeclaration":"ClassExpression";this.next();let sr=this.state.strict,Yr=this.parsePlaceholder("Identifier");if(Yr)if(this.match(81)||this.match(133)||this.match(5))O.id=Yr;else{if(we||!K)return O.id=null,O.body=this.finishPlaceholder(Yr,"ClassBody"),this.finishNode(O,gt);throw this.raise(Ac.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(O,K,we);return super.parseClassSuper(O),O.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!O.superClass,sr),this.finishNode(O,gt)}parseExport(O,K){let we=this.parsePlaceholder("Identifier");if(!we)return super.parseExport(O,K);let gt=O;if(!this.isContextual(98)&&!this.match(12))return gt.specifiers=[],gt.source=null,gt.declaration=this.finishPlaceholder(we,"Declaration"),this.finishNode(gt,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let sr=this.startNode();return sr.exported=we,gt.specifiers=[this.finishNode(sr,"ExportDefaultSpecifier")],super.parseExport(gt,K)}isExportDefaultSpecifier(){if(this.match(65)){let O=this.nextTokenStart();if(this.isUnparsedContextual(O,"from")&&this.input.startsWith(Sc(133),this.nextTokenStartSince(O+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(O,K){var we;return(we=O.specifiers)!=null&&we.length?!0:super.maybeParseExportDefaultSpecifier(O,K)}checkExport(O){let{specifiers:K}=O;K!=null&&K.length&&(O.specifiers=K.filter(we=>we.exported.type==="Placeholder")),super.checkExport(O),O.specifiers=K}parseImport(O){let K=this.parsePlaceholder("Identifier");if(!K)return super.parseImport(O);if(O.specifiers=[],!this.isContextual(98)&&!this.match(12))return O.source=this.finishPlaceholder(K,"StringLiteral"),this.semicolon(),this.finishNode(O,"ImportDeclaration");let we=this.startNodeAtNode(K);return we.local=K,O.specifiers.push(this.finishNode(we,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(O)||this.parseNamedImportSpecifiers(O)),this.expectContextual(98),O.source=this.parseImportSource(),this.semicolon(),this.finishNode(O,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Ac.UnexpectedSpace,this.state.lastTokEndLoc)}},HS=se=>class extends se{parseV8Intrinsic(){if(this.match(54)){let O=this.state.startLoc,K=this.startNode();if(this.next(),qr(this.state.type)){let we=this.parseIdentifierName(),gt=this.createIdentifier(K,we);if(gt.type="V8IntrinsicIdentifier",this.match(10))return gt}this.unexpected(O)}}parseExprAtom(O){return this.parseV8Intrinsic()||super.parseExprAtom(O)}},jd=["minimal","fsharp","hack","smart"],dh=["^^","@@","^","%","#"];function Hp(se){if(se.has("decorators")){if(se.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let K=se.get("decorators").decoratorsBeforeExport;if(K!=null&&typeof K!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let we=se.get("decorators").allowCallParenthesized;if(we!=null&&typeof we!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(se.has("flow")&&se.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(se.has("placeholders")&&se.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(se.has("pipelineOperator")){var O;let K=se.get("pipelineOperator").proposal;if(!jd.includes(K)){let gt=jd.map(sr=>`"${sr}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${gt}.`)}let we=((O=se.get("recordAndTuple"))==null?void 0:O.syntaxType)==="hash";if(K==="hack"){if(se.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(se.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let gt=se.get("pipelineOperator").topicToken;if(!dh.includes(gt)){let sr=dh.map(Yr=>`"${Yr}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${sr}.`)}if(gt==="#"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}else if(K==="smart"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}if(se.has("moduleAttributes")){if(se.has("deprecatedImportAssert")||se.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(se.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(se.has("importAssertions")&&se.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!se.has("deprecatedImportAssert")&&se.has("importAttributes")&&se.get("importAttributes").deprecatedAssertSyntax&&se.set("deprecatedImportAssert",{}),se.has("recordAndTuple")){let K=se.get("recordAndTuple").syntaxType;if(K!=null){let we=["hash","bar"];if(!we.includes(K))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+we.map(gt=>`'${gt}'`).join(", "))}}if(se.has("asyncDoExpressions")&&!se.has("doExpressions")){let K=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw K.missingPlugins="doExpressions",K}if(se.has("optionalChainingAssign")&&se.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var uC={estree:de,jsx:Ea,flow:HA,typescript:ef,v8intrinsic:HS,placeholders:Nm},nE=Object.keys(uC),J_=class extends di{checkProto(se,O,K,we){if(se.type==="SpreadElement"||this.isObjectMethod(se)||se.computed||se.shorthand)return;let gt=se.key;if((gt.type==="Identifier"?gt.name:gt.value)==="__proto__"){if(O){this.raise(X.RecordNoProto,gt);return}K.used&&(we?we.doubleProtoLoc===null&&(we.doubleProtoLoc=gt.loc.start):this.raise(X.DuplicateProto,gt)),K.used=!0}}shouldExitDescending(se,O){return se.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(se.start)===O}getExpression(){this.enterInitialScopes(),this.nextToken();let se=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),se.comments=this.comments,se.errors=this.state.errors,this.optionFlags&128&&(se.tokens=this.tokens),se}parseExpression(se,O){return se?this.disallowInAnd(()=>this.parseExpressionBase(O)):this.allowInAnd(()=>this.parseExpressionBase(O))}parseExpressionBase(se){let O=this.state.startLoc,K=this.parseMaybeAssign(se);if(this.match(12)){let we=this.startNodeAt(O);for(we.expressions=[K];this.eat(12);)we.expressions.push(this.parseMaybeAssign(se));return this.toReferencedList(we.expressions),this.finishNode(we,"SequenceExpression")}return K}parseMaybeAssignDisallowIn(se,O){return this.disallowInAnd(()=>this.parseMaybeAssign(se,O))}parseMaybeAssignAllowIn(se,O){return this.allowInAnd(()=>this.parseMaybeAssign(se,O))}setOptionalParametersError(se,O){var K;se.optionalParametersLoc=(K=O?.loc)!=null?K:this.state.startLoc}parseMaybeAssign(se,O){let K=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let Yr=this.parseYield();return O&&(Yr=O.call(this,Yr,K)),Yr}let we;se?we=!1:(se=new yg,we=!0);let{type:gt}=this.state;(gt===10||qr(gt))&&(this.state.potentialArrowAt=this.state.start);let sr=this.parseMaybeConditional(se);if(O&&(sr=O.call(this,sr,K)),Hi(this.state.type)){let Yr=this.startNodeAt(K),Lr=this.state.value;if(Yr.operator=Lr,this.match(29)){this.toAssignable(sr,!0),Yr.left=sr;let fi=K.index;se.doubleProtoLoc!=null&&se.doubleProtoLoc.index>=fi&&(se.doubleProtoLoc=null),se.shorthandAssignLoc!=null&&se.shorthandAssignLoc.index>=fi&&(se.shorthandAssignLoc=null),se.privateKeyLoc!=null&&se.privateKeyLoc.index>=fi&&(this.checkDestructuringPrivate(se),se.privateKeyLoc=null)}else Yr.left=sr;return this.next(),Yr.right=this.parseMaybeAssign(),this.checkLVal(sr,this.finishNode(Yr,"AssignmentExpression")),Yr}else we&&this.checkExpressionErrors(se,!0);return sr}parseMaybeConditional(se){let O=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprOps(se);return this.shouldExitDescending(we,K)?we:this.parseConditional(we,O,se)}parseConditional(se,O,K){if(this.eat(17)){let we=this.startNodeAt(O);return we.test=se,we.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),we.alternate=this.parseMaybeAssign(),this.finishNode(we,"ConditionalExpression")}return se}parseMaybeUnaryOrPrivate(se){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(se)}parseExprOps(se){let O=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseMaybeUnaryOrPrivate(se);return this.shouldExitDescending(we,K)?we:this.parseExprOp(we,O,-1)}parseExprOp(se,O,K){if(this.isPrivateName(se)){let gt=this.getPrivateNameSV(se);(K>=Hr(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(X.PrivateInExpectedIn,se,{identifierName:gt}),this.classScope.usePrivateName(gt,se.loc.start)}let we=this.state.type;if(io(we)&&(this.prodParam.hasIn||!this.match(58))){let gt=Hr(we);if(gt>K){if(we===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return se;this.checkPipelineAtInfixOperator(se,O)}let sr=this.startNodeAt(O);sr.left=se,sr.operator=this.state.value;let Yr=we===41||we===42,Lr=we===40;if(Lr&&(gt=Hr(42)),this.next(),we===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(X.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);sr.right=this.parseExprOpRightExpr(we,gt);let fi=this.finishNode(sr,Yr||Lr?"LogicalExpression":"BinaryExpression"),$n=this.state.type;if(Lr&&($n===41||$n===42)||Yr&&$n===40)throw this.raise(X.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(fi,O,K)}}return se}parseExprOpRightExpr(se,O){let K=this.state.startLoc;switch(se){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(O))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(X.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(se,O),K)});default:return this.parseExprOpBaseRightExpr(se,O)}}parseExprOpBaseRightExpr(se,O){let K=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),K,Wr(se)?O-1:O)}parseHackPipeBody(){var se;let{startLoc:O}=this.state,K=this.parseMaybeAssign();return b.has(K.type)&&!((se=K.extra)!=null&&se.parenthesized)&&this.raise(X.PipeUnparenthesizedBody,O,{type:K.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(X.PipeTopicUnused,O),K}checkExponentialAfterUnary(se){this.match(57)&&this.raise(X.UnexpectedTokenUnaryExponentiation,se.argument)}parseMaybeUnary(se,O){let K=this.state.startLoc,we=this.isContextual(96);if(we&&this.recordAwaitIfAllowed()){this.next();let Lr=this.parseAwait(K);return O||this.checkExponentialAfterUnary(Lr),Lr}let gt=this.match(34),sr=this.startNode();if(Ya(this.state.type)){sr.operator=this.state.value,sr.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let Lr=this.match(89);if(this.next(),sr.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(se,!0),this.state.strict&&Lr){let fi=sr.argument;fi.type==="Identifier"?this.raise(X.StrictDelete,sr):this.hasPropertyAsPrivateName(fi)&&this.raise(X.DeletePrivateField,sr)}if(!gt)return O||this.checkExponentialAfterUnary(sr),this.finishNode(sr,"UnaryExpression")}let Yr=this.parseUpdate(sr,gt,se);if(we){let{type:Lr}=this.state;if((this.hasPlugin("v8intrinsic")?Nn(Lr):Nn(Lr)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(X.AwaitNotInAsyncContext,K),this.parseAwait(K)}return Yr}parseUpdate(se,O,K){if(O){let sr=se;return this.checkLVal(sr.argument,this.finishNode(sr,"UpdateExpression")),se}let we=this.state.startLoc,gt=this.parseExprSubscripts(K);if(this.checkExpressionErrors(K,!1))return gt;for(;ga(this.state.type)&&!this.canInsertSemicolon();){let sr=this.startNodeAt(we);sr.operator=this.state.value,sr.prefix=!1,sr.argument=gt,this.next(),this.checkLVal(gt,gt=this.finishNode(sr,"UpdateExpression"))}return gt}parseExprSubscripts(se){let O=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprAtom(se);return this.shouldExitDescending(we,K)?we:this.parseSubscripts(we,O)}parseSubscripts(se,O,K){let we={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(se),stop:!1};do se=this.parseSubscript(se,O,K,we),we.maybeAsyncArrow=!1;while(!we.stop);return se}parseSubscript(se,O,K,we){let{type:gt}=this.state;if(!K&>===15)return this.parseBind(se,O,K,we);if(Ft(gt))return this.parseTaggedTemplateExpression(se,O,we);let sr=!1;if(gt===18){if(K&&(this.raise(X.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return we.stop=!0,se;we.optionalChainMember=sr=!0,this.next()}if(!K&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(se,O,we,sr);{let Yr=this.eat(0);return Yr||sr||this.eat(16)?this.parseMember(se,O,we,Yr,sr):(we.stop=!0,se)}}parseMember(se,O,K,we,gt){let sr=this.startNodeAt(O);return sr.object=se,sr.computed=we,we?(sr.property=this.parseExpression(),this.expect(3)):this.match(139)?(se.type==="Super"&&this.raise(X.SuperPrivateField,O),this.classScope.usePrivateName(this.state.value,this.state.startLoc),sr.property=this.parsePrivateName()):sr.property=this.parseIdentifier(!0),K.optionalChainMember?(sr.optional=gt,this.finishNode(sr,"OptionalMemberExpression")):this.finishNode(sr,"MemberExpression")}parseBind(se,O,K,we){let gt=this.startNodeAt(O);return gt.object=se,this.next(),gt.callee=this.parseNoCallExpr(),we.stop=!0,this.parseSubscripts(this.finishNode(gt,"BindExpression"),O,K)}parseCoverCallAndAsyncArrowHead(se,O,K,we){let gt=this.state.maybeInArrowParameters,sr=null;this.state.maybeInArrowParameters=!0,this.next();let Yr=this.startNodeAt(O);Yr.callee=se;let{maybeAsyncArrow:Lr,optionalChainMember:fi}=K;Lr&&(this.expressionScope.enter(Om()),sr=new yg),fi&&(Yr.optional=we),we?Yr.arguments=this.parseCallExpressionArguments(11):Yr.arguments=this.parseCallExpressionArguments(11,se.type!=="Super",Yr,sr);let $n=this.finishCallExpression(Yr,fi);return Lr&&this.shouldParseAsyncArrow()&&!we?(K.stop=!0,this.checkDestructuringPrivate(sr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),$n=this.parseAsyncArrowFromCallExpression(this.startNodeAt(O),$n)):(Lr&&(this.checkExpressionErrors(sr,!0),this.expressionScope.exit()),this.toReferencedArguments($n)),this.state.maybeInArrowParameters=gt,$n}toReferencedArguments(se,O){this.toReferencedListDeep(se.arguments,O)}parseTaggedTemplateExpression(se,O,K){let we=this.startNodeAt(O);return we.tag=se,we.quasi=this.parseTemplate(!0),K.optionalChainMember&&this.raise(X.OptionalChainingNoTemplate,O),this.finishNode(we,"TaggedTemplateExpression")}atPossibleAsyncArrow(se){return se.type==="Identifier"&&se.name==="async"&&this.state.lastTokEndLoc.index===se.end&&!this.canInsertSemicolon()&&se.end-se.start===5&&this.offsetToSourcePos(se.start)===this.state.potentialArrowAt}finishCallExpression(se,O){if(se.callee.type==="Import")if(se.arguments.length===0||se.arguments.length>2)this.raise(X.ImportCallArity,se);else for(let K of se.arguments)K.type==="SpreadElement"&&this.raise(X.ImportCallSpreadArgument,K);return this.finishNode(se,O?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(se,O,K,we){let gt=[],sr=!0,Yr=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(se);){if(sr)sr=!1;else if(this.expect(12),this.match(se)){K&&this.addTrailingCommaExtraToNode(K),this.next();break}gt.push(this.parseExprListItem(!1,we,O))}return this.state.inFSharpPipelineDirectBody=Yr,gt}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(se,O){var K;return this.resetPreviousNodeTrailingComments(O),this.expect(19),this.parseArrowExpression(se,O.arguments,!0,(K=O.extra)==null?void 0:K.trailingCommaLoc),O.innerComments&&Ri(se,O.innerComments),O.callee.trailingComments&&Ri(se,O.callee.trailingComments),se}parseNoCallExpr(){let se=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),se,!0)}parseExprAtom(se){let O,K=null,{type:we}=this.state;switch(we){case 79:return this.parseSuper();case 83:return O=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(O):this.match(10)?this.optionFlags&256?this.parseImportCall(O):this.finishNode(O,"Import"):(this.raise(X.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(O,"Import"));case 78:return O=this.startNode(),this.next(),this.finishNode(O,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let gt=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(gt)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,se);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,se);case 68:return this.parseFunctionOrFunctionSent();case 26:K=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(K,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{O=this.startNode(),this.next(),O.object=null;let gt=O.callee=this.parseNoCallExpr();if(gt.type==="MemberExpression")return this.finishNode(O,"BindExpression");throw this.raise(X.UnsupportedBind,gt)}case 139:return this.raise(X.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let gt=this.getPluginOption("pipelineOperator","proposal");if(gt)return this.parseTopicReference(gt);this.unexpected();break}case 47:{let gt=this.input.codePointAt(this.nextTokenStart());gc(gt)||gt===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(we===137)return this.parseDecimalLiteral(this.state.value);if(qr(we)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let gt=this.state.potentialArrowAt===this.state.start,sr=this.state.containsEsc,Yr=this.parseIdentifier();if(!sr&&Yr.name==="async"&&!this.canInsertSemicolon()){let{type:Lr}=this.state;if(Lr===68)return this.resetPreviousNodeTrailingComments(Yr),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(Yr));if(qr(Lr))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(Yr)):Yr;if(Lr===90)return this.resetPreviousNodeTrailingComments(Yr),this.parseDo(this.startNodeAtNode(Yr),!0)}return gt&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(Yr),[Yr],!1)):Yr}else this.unexpected()}}parseTopicReferenceThenEqualsSign(se,O){let K=this.getPluginOption("pipelineOperator","proposal");if(K)return this.state.type=se,this.state.value=O,this.state.pos--,this.state.end--,this.state.endLoc=a(this.state.endLoc,-1),this.parseTopicReference(K);this.unexpected()}parseTopicReference(se){let O=this.startNode(),K=this.state.startLoc,we=this.state.type;return this.next(),this.finishTopicReference(O,K,se,we)}finishTopicReference(se,O,K,we){if(this.testTopicReferenceConfiguration(K,O,we))return K==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(X.PipeTopicUnbound,O),this.registerTopicReference(),this.finishNode(se,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(X.PrimaryTopicNotAllowed,O),this.registerTopicReference(),this.finishNode(se,"PipelinePrimaryTopicReference"));throw this.raise(X.PipeTopicUnconfiguredToken,O,{token:Sc(we)})}testTopicReferenceConfiguration(se,O,K){switch(se){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Sc(K)}]);case"smart":return K===27;default:throw this.raise(X.PipeTopicRequiresHackPipes,O)}}parseAsyncArrowUnaryFunction(se){this.prodParam.enter(ZA(!0,this.prodParam.hasYield));let O=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(X.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(se,O,!0)}parseDo(se,O){this.expectPlugin("doExpressions"),O&&this.expectPlugin("asyncDoExpressions"),se.async=O,this.next();let K=this.state.labels;return this.state.labels=[],O?(this.prodParam.enter(2),se.body=this.parseBlock(),this.prodParam.exit()):se.body=this.parseBlock(),this.state.labels=K,this.finishNode(se,"DoExpression")}parseSuper(){let se=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(X.SuperNotAllowed,se):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(X.UnexpectedSuper,se),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(X.UnsupportedSuper,se),this.finishNode(se,"Super")}parsePrivateName(){let se=this.startNode(),O=this.startNodeAt(a(this.state.startLoc,1)),K=this.state.value;return this.next(),se.id=this.createIdentifier(O,K),this.finishNode(se,"PrivateName")}parseFunctionOrFunctionSent(){let se=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let O=this.createIdentifier(this.startNodeAtNode(se),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(se,O,"sent")}return this.parseFunction(se)}parseMetaProperty(se,O,K){se.meta=O;let we=this.state.containsEsc;return se.property=this.parseIdentifier(!0),(se.property.name!==K||we)&&this.raise(X.UnsupportedMetaProperty,se.property,{target:O.name,onlyValidPropertyName:K}),this.finishNode(se,"MetaProperty")}parseImportMetaProperty(se){let O=this.createIdentifier(this.startNodeAtNode(se),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(X.ImportMetaOutsideModule,O),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let K=this.isContextual(105);if(this.expectPlugin(K?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(X.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),se.phase=K?"source":"defer",this.parseImportCall(se)}return this.parseMetaProperty(se,O,"meta")}parseLiteralAtNode(se,O,K){return this.addExtra(K,"rawValue",se),this.addExtra(K,"raw",this.input.slice(this.offsetToSourcePos(K.start),this.state.end)),K.value=se,this.next(),this.finishNode(K,O)}parseLiteral(se,O){let K=this.startNode();return this.parseLiteralAtNode(se,O,K)}parseStringLiteral(se){return this.parseLiteral(se,"StringLiteral")}parseNumericLiteral(se){return this.parseLiteral(se,"NumericLiteral")}parseBigIntLiteral(se){return this.parseLiteral(se,"BigIntLiteral")}parseDecimalLiteral(se){return this.parseLiteral(se,"DecimalLiteral")}parseRegExpLiteral(se){let O=this.startNode();return this.addExtra(O,"raw",this.input.slice(this.offsetToSourcePos(O.start),this.state.end)),O.pattern=se.pattern,O.flags=se.flags,this.next(),this.finishNode(O,"RegExpLiteral")}parseBooleanLiteral(se){let O=this.startNode();return O.value=se,this.next(),this.finishNode(O,"BooleanLiteral")}parseNullLiteral(){let se=this.startNode();return this.next(),this.finishNode(se,"NullLiteral")}parseParenAndDistinguishExpression(se){let O=this.state.startLoc,K;this.next(),this.expressionScope.enter(sd());let we=this.state.maybeInArrowParameters,gt=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let sr=this.state.startLoc,Yr=[],Lr=new yg,fi=!0,$n,ra;for(;!this.match(11);){if(fi)fi=!1;else if(this.expect(12,Lr.optionalParametersLoc===null?null:Lr.optionalParametersLoc),this.match(11)){ra=this.state.startLoc;break}if(this.match(21)){let ca=this.state.startLoc;if($n=this.state.startLoc,Yr.push(this.parseParenItem(this.parseRestBinding(),ca)),!this.checkCommaAfterRest(41))break}else Yr.push(this.parseMaybeAssignAllowIn(Lr,this.parseParenItem))}let kc=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=we,this.state.inFSharpPipelineDirectBody=gt;let Nl=this.startNodeAt(O);return se&&this.shouldParseArrow(Yr)&&(Nl=this.parseArrow(Nl))?(this.checkDestructuringPrivate(Lr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(Nl,Yr,!1),Nl):(this.expressionScope.exit(),Yr.length||this.unexpected(this.state.lastTokStartLoc),ra&&this.unexpected(ra),$n&&this.unexpected($n),this.checkExpressionErrors(Lr,!0),this.toReferencedListDeep(Yr,!0),Yr.length>1?(K=this.startNodeAt(sr),K.expressions=Yr,this.finishNode(K,"SequenceExpression"),this.resetEndLocation(K,kc)):K=Yr[0],this.wrapParenthesis(O,K))}wrapParenthesis(se,O){if(!(this.optionFlags&512))return this.addExtra(O,"parenthesized",!0),this.addExtra(O,"parenStart",se.index),this.takeSurroundingComments(O,se.index,this.state.lastTokEndLoc.index),O;let K=this.startNodeAt(se);return K.expression=O,this.finishNode(K,"ParenthesizedExpression")}shouldParseArrow(se){return!this.canInsertSemicolon()}parseArrow(se){if(this.eat(19))return se}parseParenItem(se,O){return se}parseNewOrNewTarget(){let se=this.startNode();if(this.next(),this.match(16)){let O=this.createIdentifier(this.startNodeAtNode(se),"new");this.next();let K=this.parseMetaProperty(se,O,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(X.UnexpectedNewTarget,K),K}return this.parseNew(se)}parseNew(se){if(this.parseNewCallee(se),this.eat(10)){let O=this.parseExprList(11);this.toReferencedList(O),se.arguments=O}else se.arguments=[];return this.finishNode(se,"NewExpression")}parseNewCallee(se){let O=this.match(83),K=this.parseNoCallExpr();se.callee=K,O&&(K.type==="Import"||K.type==="ImportExpression")&&this.raise(X.ImportCallNotNewExpression,K)}parseTemplateElement(se){let{start:O,startLoc:K,end:we,value:gt}=this.state,sr=O+1,Yr=this.startNodeAt(a(K,1));gt===null&&(se||this.raise(X.InvalidEscapeSequenceTemplate,a(this.state.firstInvalidTemplateEscapePos,1)));let Lr=this.match(24),fi=Lr?-1:-2,$n=we+fi;Yr.value={raw:this.input.slice(sr,$n).replace(/\r\n?/g,` -`),cooked:gt===null?null:gt.slice(1,fi)},Yr.tail=Lr,this.next();let ra=this.finishNode(Yr,"TemplateElement");return this.resetEndLocation(ra,a(this.state.lastTokEndLoc,fi)),ra}parseTemplate(se){let O=this.startNode(),K=this.parseTemplateElement(se),we=[K],gt=[];for(;!K.tail;)gt.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),we.push(K=this.parseTemplateElement(se));return O.expressions=gt,O.quasis=we,this.finishNode(O,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(se,O,K,we){K&&this.expectPlugin("recordAndTuple");let gt=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=Object.create(null),Yr=!0,Lr=this.startNode();for(Lr.properties=[],this.next();!this.match(se);){if(Yr)Yr=!1;else if(this.expect(12),this.match(se)){this.addTrailingCommaExtraToNode(Lr);break}let $n;O?$n=this.parseBindingProperty():($n=this.parsePropertyDefinition(we),this.checkProto($n,K,sr,we)),K&&!this.isObjectProperty($n)&&$n.type!=="SpreadElement"&&this.raise(X.InvalidRecordProperty,$n),$n.shorthand&&this.addExtra($n,"shorthand",!0),Lr.properties.push($n)}this.next(),this.state.inFSharpPipelineDirectBody=gt;let fi="ObjectExpression";return O?fi="ObjectPattern":K&&(fi="RecordExpression"),this.finishNode(Lr,fi)}addTrailingCommaExtraToNode(se){this.addExtra(se,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(se,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(se){return!se.computed&&se.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(se){let O=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(X.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)O.push(this.parseDecorator());let K=this.startNode(),we=!1,gt=!1,sr;if(this.match(21))return O.length&&this.unexpected(),this.parseSpread();O.length&&(K.decorators=O,O=[]),K.method=!1,se&&(sr=this.state.startLoc);let Yr=this.eat(55);this.parsePropertyNamePrefixOperator(K);let Lr=this.state.containsEsc;if(this.parsePropertyName(K,se),!Yr&&!Lr&&this.maybeAsyncOrAccessorProp(K)){let{key:fi}=K,$n=fi.name;$n==="async"&&!this.hasPrecedingLineBreak()&&(we=!0,this.resetPreviousNodeTrailingComments(fi),Yr=this.eat(55),this.parsePropertyName(K)),($n==="get"||$n==="set")&&(gt=!0,this.resetPreviousNodeTrailingComments(fi),K.kind=$n,this.match(55)&&(Yr=!0,this.raise(X.AccessorIsGenerator,this.state.curPosition(),{kind:$n}),this.next()),this.parsePropertyName(K))}return this.parseObjPropValue(K,sr,Yr,we,!1,gt,se)}getGetterSetterExpectedParamCount(se){return se.kind==="get"?0:1}getObjectOrClassMethodParams(se){return se.params}checkGetterSetterParams(se){var O;let K=this.getGetterSetterExpectedParamCount(se),we=this.getObjectOrClassMethodParams(se);we.length!==K&&this.raise(se.kind==="get"?X.BadGetterArity:X.BadSetterArity,se),se.kind==="set"&&((O=we[we.length-1])==null?void 0:O.type)==="RestElement"&&this.raise(X.BadSetterRestParameter,se)}parseObjectMethod(se,O,K,we,gt){if(gt){let sr=this.parseMethod(se,O,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(sr),sr}if(K||O||this.match(10))return we&&this.unexpected(),se.kind="method",se.method=!0,this.parseMethod(se,O,K,!1,!1,"ObjectMethod")}parseObjectProperty(se,O,K,we){if(se.shorthand=!1,this.eat(14))return se.value=K?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(we),this.finishNode(se,"ObjectProperty");if(!se.computed&&se.key.type==="Identifier"){if(this.checkReservedWord(se.key.name,se.key.loc.start,!0,!1),K)se.value=this.parseMaybeDefault(O,Zt(se.key));else if(this.match(29)){let gt=this.state.startLoc;we!=null?we.shorthandAssignLoc===null&&(we.shorthandAssignLoc=gt):this.raise(X.InvalidCoverInitializedName,gt),se.value=this.parseMaybeDefault(O,Zt(se.key))}else se.value=Zt(se.key);return se.shorthand=!0,this.finishNode(se,"ObjectProperty")}}parseObjPropValue(se,O,K,we,gt,sr,Yr){let Lr=this.parseObjectMethod(se,K,we,gt,sr)||this.parseObjectProperty(se,O,gt,Yr);return Lr||this.unexpected(),Lr}parsePropertyName(se,O){if(this.eat(0))se.computed=!0,se.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:K,value:we}=this.state,gt;if(ke(K))gt=this.parseIdentifier(!0);else switch(K){case 135:gt=this.parseNumericLiteral(we);break;case 134:gt=this.parseStringLiteral(we);break;case 136:gt=this.parseBigIntLiteral(we);break;case 139:{let sr=this.state.startLoc;O!=null?O.privateKeyLoc===null&&(O.privateKeyLoc=sr):this.raise(X.UnexpectedPrivateField,sr),gt=this.parsePrivateName();break}default:if(K===137){gt=this.parseDecimalLiteral(we);break}this.unexpected()}se.key=gt,K!==139&&(se.computed=!1)}}initFunction(se,O){se.id=null,se.generator=!1,se.async=O}parseMethod(se,O,K,we,gt,sr,Yr=!1){this.initFunction(se,K),se.generator=O,this.scope.enter(18|(Yr?64:0)|(gt?32:0)),this.prodParam.enter(ZA(K,se.generator)),this.parseFunctionParams(se,we);let Lr=this.parseFunctionBodyAndFinish(se,sr,!0);return this.prodParam.exit(),this.scope.exit(),Lr}parseArrayLike(se,O,K,we){K&&this.expectPlugin("recordAndTuple");let gt=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=this.startNode();return this.next(),sr.elements=this.parseExprList(se,!K,we,sr),this.state.inFSharpPipelineDirectBody=gt,this.finishNode(sr,K?"TupleExpression":"ArrayExpression")}parseArrowExpression(se,O,K,we){this.scope.enter(6);let gt=ZA(K,!1);!this.match(5)&&this.prodParam.hasIn&&(gt|=8),this.prodParam.enter(gt),this.initFunction(se,K);let sr=this.state.maybeInArrowParameters;return O&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(se,O,we)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(se,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=sr,this.finishNode(se,"ArrowFunctionExpression")}setArrowFunctionParameters(se,O,K){this.toAssignableList(O,K,!1),se.params=O}parseFunctionBodyAndFinish(se,O,K=!1){return this.parseFunctionBody(se,!1,K),this.finishNode(se,O)}parseFunctionBody(se,O,K=!1){let we=O&&!this.match(5);if(this.expressionScope.enter(il()),we)se.body=this.parseMaybeAssign(),this.checkParams(se,!1,O,!1);else{let gt=this.state.strict,sr=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),se.body=this.parseBlock(!0,!1,Yr=>{let Lr=!this.isSimpleParamList(se.params);Yr&&Lr&&this.raise(X.IllegalLanguageModeDirective,(se.kind==="method"||se.kind==="constructor")&&se.key?se.key.loc.end:se);let fi=!gt&&this.state.strict;this.checkParams(se,!this.state.strict&&!O&&!K&&!Lr,O,fi),this.state.strict&&se.id&&this.checkIdentifier(se.id,65,fi)}),this.prodParam.exit(),this.state.labels=sr}this.expressionScope.exit()}isSimpleParameter(se){return se.type==="Identifier"}isSimpleParamList(se){for(let O=0,K=se.length;O10||!Sg(se))){if(K&&ac(se)){this.raise(X.UnexpectedKeyword,O,{keyword:se});return}if((this.state.strict?we?Xa:Ei:li)(se,this.inModule)){this.raise(X.UnexpectedReservedWord,O,{reservedWord:se});return}else if(se==="yield"){if(this.prodParam.hasYield){this.raise(X.YieldBindingIdentifier,O);return}}else if(se==="await"){if(this.prodParam.hasAwait){this.raise(X.AwaitBindingIdentifier,O);return}if(this.scope.inStaticBlock){this.raise(X.AwaitBindingIdentifierInStaticBlock,O);return}this.expressionScope.recordAsyncArrowParametersError(O)}else if(se==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(X.ArgumentsInClass,O);return}}}recordAwaitIfAllowed(){let se=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return se&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),se}parseAwait(se){let O=this.startNodeAt(se);return this.expressionScope.recordParameterInitializerError(X.AwaitExpressionFormalParameter,O),this.eat(55)&&this.raise(X.ObsoleteAwaitStar,O),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(O.argument=this.parseMaybeUnary(null,!0)),this.finishNode(O,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:se}=this.state;return se===53||se===10||se===0||Ft(se)||se===102&&!this.state.containsEsc||se===138||se===56||this.hasPlugin("v8intrinsic")&&se===54}parseYield(){let se=this.startNode();this.expressionScope.recordParameterInitializerError(X.YieldInParameter,se),this.next();let O=!1,K=null;if(!this.hasPrecedingLineBreak())switch(O=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!O)break;default:K=this.parseMaybeAssign()}return se.delegate=O,se.argument=K,this.finishNode(se,"YieldExpression")}parseImportCall(se){if(this.next(),se.source=this.parseMaybeAssignAllowIn(),se.options=null,this.eat(12)&&!this.match(11)&&(se.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(X.ImportCallArity,se)}return this.expect(11),this.finishNode(se,"ImportExpression")}checkPipelineAtInfixOperator(se,O){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&se.type==="SequenceExpression"&&this.raise(X.PipelineHeadSequenceExpression,O)}parseSmartPipelineBodyInStyle(se,O){if(this.isSimpleReference(se)){let K=this.startNodeAt(O);return K.callee=se,this.finishNode(K,"PipelineBareFunction")}else{let K=this.startNodeAt(O);return this.checkSmartPipeTopicBodyEarlyErrors(O),K.expression=se,this.finishNode(K,"PipelineTopicExpression")}}isSimpleReference(se){switch(se.type){case"MemberExpression":return!se.computed&&this.isSimpleReference(se.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(se){if(this.match(19))throw this.raise(X.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(X.PipelineTopicUnused,se)}withTopicBindingContext(se){let O=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=O}}withSmartMixTopicForbiddingContext(se){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let O=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=O}}else return se()}withSoloAwaitPermittingContext(se){let O=this.state.soloAwait;this.state.soloAwait=!0;try{return se()}finally{this.state.soloAwait=O}}allowInAnd(se){let O=this.prodParam.currentFlags();if(8&~O){this.prodParam.enter(O|8);try{return se()}finally{this.prodParam.exit()}}return se()}disallowInAnd(se){let O=this.prodParam.currentFlags();if(8&O){this.prodParam.enter(O&-9);try{return se()}finally{this.prodParam.exit()}}return se()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(se){let O=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let K=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let we=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),O,se);return this.state.inFSharpPipelineDirectBody=K,we}parseModuleExpression(){this.expectPlugin("moduleBlocks");let se=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let O=this.startNodeAt(this.state.endLoc);this.next();let K=this.initializeScopes(!0);this.enterInitialScopes();try{se.body=this.parseProgram(O,8,"module")}finally{K()}return this.finishNode(se,"ModuleExpression")}parsePropertyNamePrefixOperator(se){}},q0={kind:1},XE={kind:2},TC=/[\uD800-\uDFFF]/u,t_=/in(?:stanceof)?/y;function cp(se,O,K){for(let we=0;we0)for(let[gt,sr]of Array.from(this.scope.undefinedExports))this.raise(X.ModuleExportUndefined,sr,{localName:gt});this.addExtra(se,"topLevelAwait",this.state.hasTopLevelAwait)}let we;return O===140?we=this.finishNode(se,"Program"):we=this.finishNodeAt(se,"Program",a(this.state.startLoc,-1)),we}stmtToDirective(se){let O=se;O.type="Directive",O.value=O.expression,delete O.expression;let K=O.value,we=K.value,gt=this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end)),sr=K.value=gt.slice(1,-1);return this.addExtra(K,"raw",gt),this.addExtra(K,"rawValue",sr),this.addExtra(K,"expressionValue",we),K.type="DirectiveLiteral",O}parseInterpreterDirective(){if(!this.match(28))return null;let se=this.startNode();return se.value=this.state.value,this.next(),this.finishNode(se,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(se,O){if(gc(se)){if(t_.lastIndex=O,t_.test(this.input)){let K=this.codePointAtPos(t_.lastIndex);if(!Cg(K)&&K!==92)return!1}return!0}else return se===92}chStartsBindingPattern(se){return se===91||se===123}hasFollowingBindingAtom(){let se=this.nextTokenStart(),O=this.codePointAtPos(se);return this.chStartsBindingPattern(O)||this.chStartsBindingIdentifier(O,se)}hasInLineFollowingBindingIdentifierOrBrace(){let se=this.nextTokenInLineStart(),O=this.codePointAtPos(se);return O===123||this.chStartsBindingIdentifier(O,se)}startsUsingForOf(){let{type:se,containsEsc:O}=this.lookahead();if(se===102&&!O)return!1;if(qr(se)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let se=this.nextTokenInLineStart();if(this.isUnparsedContextual(se,"using")){se=this.nextTokenInLineStartSince(se+5);let O=this.codePointAtPos(se);if(this.chStartsBindingIdentifier(O,se))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(se=!1){let O=0;return this.options.annexB&&!this.state.strict&&(O|=4,se&&(O|=8)),this.parseStatementLike(O)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(se){let O=null;return this.match(26)&&(O=this.parseDecorators(!0)),this.parseStatementContent(se,O)}parseStatementContent(se,O){let K=this.state.type,we=this.startNode(),gt=!!(se&2),sr=!!(se&4),Yr=se&1;switch(K){case 60:return this.parseBreakContinueStatement(we,!0);case 63:return this.parseBreakContinueStatement(we,!1);case 64:return this.parseDebuggerStatement(we);case 90:return this.parseDoWhileStatement(we);case 91:return this.parseForStatement(we);case 68:if(this.lookaheadCharCode()===46)break;return sr||this.raise(this.state.strict?X.StrictFunction:this.options.annexB?X.SloppyFunctionAnnexB:X.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(we,!1,!gt&&sr);case 80:return gt||this.unexpected(),this.parseClass(this.maybeTakeDecorators(O,we),!0);case 69:return this.parseIfStatement(we);case 70:return this.parseReturnStatement(we);case 71:return this.parseSwitchStatement(we);case 72:return this.parseThrowStatement(we);case 73:return this.parseTryStatement(we);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?gt||this.raise(X.UnexpectedLexicalDeclaration,we):this.raise(X.AwaitUsingNotInAsyncContext,we),this.next(),this.parseVarStatement(we,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(X.UnexpectedUsingDeclaration,this.state.startLoc):gt||this.raise(X.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(we,"using");case 100:{if(this.state.containsEsc)break;let $n=this.nextTokenStart(),ra=this.codePointAtPos($n);if(ra!==91&&(!gt&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(ra,$n)&&ra!==123))break}case 75:gt||this.raise(X.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let $n=this.state.value;return this.parseVarStatement(we,$n)}case 92:return this.parseWhileStatement(we);case 76:return this.parseWithStatement(we);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(we);case 83:{let $n=this.lookaheadCharCode();if($n===40||$n===46)break}case 82:{!(this.optionFlags&8)&&!Yr&&this.raise(X.UnexpectedImportExport,this.state.startLoc),this.next();let $n;return K===83?($n=this.parseImport(we),$n.type==="ImportDeclaration"&&(!$n.importKind||$n.importKind==="value")&&(this.sawUnambiguousESM=!0)):($n=this.parseExport(we,O),($n.type==="ExportNamedDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportAllDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed($n),$n}default:if(this.isAsyncFunction())return gt||this.raise(X.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(we,!0,!gt&&sr)}let Lr=this.state.value,fi=this.parseExpression();return qr(K)&&fi.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(we,Lr,fi,se):this.parseExpressionStatement(we,fi,O)}assertModuleNodeAllowed(se){!(this.optionFlags&8)&&!this.inModule&&this.raise(X.ImportOutsideModule,se)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(se,O,K){if(se){var we;(we=O.decorators)!=null&&we.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(X.DecoratorsBeforeAfterExport,O.decorators[0]),O.decorators.unshift(...se)):O.decorators=se,this.resetStartLocationFromNode(O,se[0]),K&&this.resetStartLocationFromNode(K,O)}return O}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(se){let O=[];do O.push(this.parseDecorator());while(this.match(26));if(this.match(82))se||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(X.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(X.UnexpectedLeadingDecorator,this.state.startLoc);return O}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let se=this.startNode();if(this.next(),this.hasPlugin("decorators")){let O=this.state.startLoc,K;if(this.match(10)){let we=this.state.startLoc;this.next(),K=this.parseExpression(),this.expect(11),K=this.wrapParenthesis(we,K);let gt=this.state.startLoc;se.expression=this.parseMaybeDecoratorArguments(K,we),this.getPluginOption("decorators","allowCallParenthesized")===!1&&se.expression!==K&&this.raise(X.DecoratorArgumentsOutsideParentheses,gt)}else{for(K=this.parseIdentifier(!1);this.eat(16);){let we=this.startNodeAt(O);we.object=K,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),we.property=this.parsePrivateName()):we.property=this.parseIdentifier(!0),we.computed=!1,K=this.finishNode(we,"MemberExpression")}se.expression=this.parseMaybeDecoratorArguments(K,O)}}else se.expression=this.parseExprSubscripts();return this.finishNode(se,"Decorator")}parseMaybeDecoratorArguments(se,O){if(this.eat(10)){let K=this.startNodeAt(O);return K.callee=se,K.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(K.arguments),this.finishNode(K,"CallExpression")}return se}parseBreakContinueStatement(se,O){return this.next(),this.isLineTerminator()?se.label=null:(se.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(se,O),this.finishNode(se,O?"BreakStatement":"ContinueStatement")}verifyBreakContinue(se,O){let K;for(K=0;Kthis.parseStatement()),this.state.labels.pop(),this.expect(92),se.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(se,"DoWhileStatement")}parseForStatement(se){this.next(),this.state.labels.push(q0);let O=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(O=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return O!==null&&this.unexpected(O),this.parseFor(se,null);let K=this.isContextual(100);{let Lr=this.isContextual(96)&&this.startsAwaitUsing(),fi=Lr||this.isContextual(107)&&this.startsUsingForOf(),$n=K&&this.hasFollowingBindingAtom()||fi;if(this.match(74)||this.match(75)||$n){let ra=this.startNode(),kc;Lr?(kc="await using",this.recordAwaitIfAllowed()||this.raise(X.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):kc=this.state.value,this.next(),this.parseVar(ra,!0,kc);let Nl=this.finishNode(ra,"VariableDeclaration"),ca=this.match(58);return ca&&fi&&this.raise(X.ForInUsing,Nl),(ca||this.isContextual(102))&&Nl.declarations.length===1?this.parseForIn(se,Nl,O):(O!==null&&this.unexpected(O),this.parseFor(se,Nl))}}let we=this.isContextual(95),gt=new yg,sr=this.parseExpression(!0,gt),Yr=this.isContextual(102);if(Yr&&(K&&this.raise(X.ForOfLet,sr),O===null&&we&&sr.type==="Identifier"&&this.raise(X.ForOfAsync,sr)),Yr||this.match(58)){this.checkDestructuringPrivate(gt),this.toAssignable(sr,!0);let Lr=Yr?"ForOfStatement":"ForInStatement";return this.checkLVal(sr,{type:Lr}),this.parseForIn(se,sr,O)}else this.checkExpressionErrors(gt,!0);return O!==null&&this.unexpected(O),this.parseFor(se,sr)}parseFunctionStatement(se,O,K){return this.next(),this.parseFunction(se,1|(K?2:0)|(O?8:0))}parseIfStatement(se){return this.next(),se.test=this.parseHeaderExpression(),se.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),se.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(se,"IfStatement")}parseReturnStatement(se){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(X.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?se.argument=null:(se.argument=this.parseExpression(),this.semicolon()),this.finishNode(se,"ReturnStatement")}parseSwitchStatement(se){this.next(),se.discriminant=this.parseHeaderExpression();let O=se.cases=[];this.expect(5),this.state.labels.push(XE),this.scope.enter(0);let K;for(let we;!this.match(8);)if(this.match(61)||this.match(65)){let gt=this.match(61);K&&this.finishNode(K,"SwitchCase"),O.push(K=this.startNode()),K.consequent=[],this.next(),gt?K.test=this.parseExpression():(we&&this.raise(X.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),we=!0,K.test=null),this.expect(14)}else K?K.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),K&&this.finishNode(K,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(se,"SwitchStatement")}parseThrowStatement(se){return this.next(),this.hasPrecedingLineBreak()&&this.raise(X.NewlineAfterThrow,this.state.lastTokEndLoc),se.argument=this.parseExpression(),this.semicolon(),this.finishNode(se,"ThrowStatement")}parseCatchClauseParam(){let se=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&se.type==="Identifier"?8:0),this.checkLVal(se,{type:"CatchClause"},9),se}parseTryStatement(se){if(this.next(),se.block=this.parseBlock(),se.handler=null,this.match(62)){let O=this.startNode();this.next(),this.match(10)?(this.expect(10),O.param=this.parseCatchClauseParam(),this.expect(11)):(O.param=null,this.scope.enter(0)),O.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),se.handler=this.finishNode(O,"CatchClause")}return se.finalizer=this.eat(67)?this.parseBlock():null,!se.handler&&!se.finalizer&&this.raise(X.NoCatchOrFinally,se),this.finishNode(se,"TryStatement")}parseVarStatement(se,O,K=!1){return this.next(),this.parseVar(se,!1,O,K),this.semicolon(),this.finishNode(se,"VariableDeclaration")}parseWhileStatement(se){return this.next(),se.test=this.parseHeaderExpression(),this.state.labels.push(q0),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(se,"WhileStatement")}parseWithStatement(se){return this.state.strict&&this.raise(X.StrictWith,this.state.startLoc),this.next(),se.object=this.parseHeaderExpression(),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(se,"WithStatement")}parseEmptyStatement(se){return this.next(),this.finishNode(se,"EmptyStatement")}parseLabeledStatement(se,O,K,we){for(let sr of this.state.labels)sr.name===O&&this.raise(X.LabelRedeclaration,K,{labelName:O});let gt=Vr(this.state.type)?1:this.match(71)?2:null;for(let sr=this.state.labels.length-1;sr>=0;sr--){let Yr=this.state.labels[sr];if(Yr.statementStart===se.start)Yr.statementStart=this.sourceToOffsetPos(this.state.start),Yr.kind=gt;else break}return this.state.labels.push({name:O,kind:gt,statementStart:this.sourceToOffsetPos(this.state.start)}),se.body=we&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),se.label=K,this.finishNode(se,"LabeledStatement")}parseExpressionStatement(se,O,K){return se.expression=O,this.semicolon(),this.finishNode(se,"ExpressionStatement")}parseBlock(se=!1,O=!0,K){let we=this.startNode();return se&&this.state.strictErrors.clear(),this.expect(5),O&&this.scope.enter(0),this.parseBlockBody(we,se,!1,8,K),O&&this.scope.exit(),this.finishNode(we,"BlockStatement")}isValidDirective(se){return se.type==="ExpressionStatement"&&se.expression.type==="StringLiteral"&&!se.expression.extra.parenthesized}parseBlockBody(se,O,K,we,gt){let sr=se.body=[],Yr=se.directives=[];this.parseBlockOrModuleBlockBody(sr,O?Yr:void 0,K,we,gt)}parseBlockOrModuleBlockBody(se,O,K,we,gt){let sr=this.state.strict,Yr=!1,Lr=!1;for(;!this.match(we);){let fi=K?this.parseModuleItem():this.parseStatementListItem();if(O&&!Lr){if(this.isValidDirective(fi)){let $n=this.stmtToDirective(fi);O.push($n),!Yr&&$n.value.value==="use strict"&&(Yr=!0,this.setStrict(!0));continue}Lr=!0,this.state.strictErrors.clear()}se.push(fi)}gt?.call(this,Yr),sr||this.setStrict(!1),this.next()}parseFor(se,O){return se.init=O,this.semicolon(!1),se.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),se.update=this.match(11)?null:this.parseExpression(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,"ForStatement")}parseForIn(se,O,K){let we=this.match(58);return this.next(),we?K!==null&&this.unexpected(K):se.await=K!==null,O.type==="VariableDeclaration"&&O.declarations[0].init!=null&&(!we||!this.options.annexB||this.state.strict||O.kind!=="var"||O.declarations[0].id.type!=="Identifier")&&this.raise(X.ForInOfLoopInitializer,O,{type:we?"ForInStatement":"ForOfStatement"}),O.type==="AssignmentPattern"&&this.raise(X.InvalidLhs,O,{ancestor:{type:"ForStatement"}}),se.left=O,se.right=we?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,we?"ForInStatement":"ForOfStatement")}parseVar(se,O,K,we=!1){let gt=se.declarations=[];for(se.kind=K;;){let sr=this.startNode();if(this.parseVarId(sr,K),sr.init=this.eat(29)?O?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,sr.init===null&&!we&&(sr.id.type!=="Identifier"&&!(O&&(this.match(58)||this.isContextual(102)))?this.raise(X.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(K==="const"||K==="using"||K==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(X.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:K})),gt.push(this.finishNode(sr,"VariableDeclarator")),!this.eat(12))break}return se}parseVarId(se,O){let K=this.parseBindingAtom();(O==="using"||O==="await using")&&(K.type==="ArrayPattern"||K.type==="ObjectPattern")&&this.raise(X.UsingDeclarationHasBindingPattern,K.loc.start),this.checkLVal(K,{type:"VariableDeclarator"},O==="var"?5:8201),se.id=K}parseAsyncFunctionExpression(se){return this.parseFunction(se,8)}parseFunction(se,O=0){let K=O&2,we=!!(O&1),gt=we&&!(O&4),sr=!!(O&8);this.initFunction(se,sr),this.match(55)&&(K&&this.raise(X.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),se.generator=!0),we&&(se.id=this.parseFunctionId(gt));let Yr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(ZA(sr,se.generator)),we||(se.id=this.parseFunctionId()),this.parseFunctionParams(se,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(se,we?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),we&&!K&&this.registerFunctionStatementId(se),this.state.maybeInArrowParameters=Yr,se}parseFunctionId(se){return se||qr(this.state.type)?this.parseIdentifier():null}parseFunctionParams(se,O){this.expect(10),this.expressionScope.enter(rc()),se.params=this.parseBindingList(11,41,2|(O?4:0)),this.expressionScope.exit()}registerFunctionStatementId(se){se.id&&this.scope.declareName(se.id.name,!this.options.annexB||this.state.strict||se.generator||se.async?this.scope.treatFunctionsAsVar?5:8201:17,se.id.loc.start)}parseClass(se,O,K){this.next();let we=this.state.strict;return this.state.strict=!0,this.parseClassId(se,O,K),this.parseClassSuper(se),se.body=this.parseClassBody(!!se.superClass,we),this.finishNode(se,O?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(se){return se.type==="Identifier"&&se.name==="constructor"||se.type==="StringLiteral"&&se.value==="constructor"}isNonstaticConstructor(se){return!se.computed&&!se.static&&this.nameIsConstructor(se.key)}parseClassBody(se,O){this.classScope.enter();let K={hadConstructor:!1,hadSuperClass:se},we=[],gt=this.startNode();if(gt.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(we.length>0)throw this.raise(X.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){we.push(this.parseDecorator());continue}let sr=this.startNode();we.length&&(sr.decorators=we,this.resetStartLocationFromNode(sr,we[0]),we=[]),this.parseClassMember(gt,sr,K),sr.kind==="constructor"&&sr.decorators&&sr.decorators.length>0&&this.raise(X.DecoratorConstructor,sr)}}),this.state.strict=O,this.next(),we.length)throw this.raise(X.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(gt,"ClassBody")}parseClassMemberFromModifier(se,O){let K=this.parseIdentifier(!0);if(this.isClassMethod()){let we=O;return we.kind="method",we.computed=!1,we.key=K,we.static=!1,this.pushClassMethod(se,we,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let we=O;return we.computed=!1,we.key=K,we.static=!1,se.body.push(this.parseClassProperty(we)),!0}return this.resetPreviousNodeTrailingComments(K),!1}parseClassMember(se,O,K){let we=this.isContextual(106);if(we){if(this.parseClassMemberFromModifier(se,O))return;if(this.eat(5)){this.parseClassStaticBlock(se,O);return}}this.parseClassMemberWithIsStatic(se,O,K,we)}parseClassMemberWithIsStatic(se,O,K,we){let gt=O,sr=O,Yr=O,Lr=O,fi=O,$n=gt,ra=gt;if(O.static=we,this.parsePropertyNamePrefixOperator(O),this.eat(55)){$n.kind="method";let SA=this.match(139);if(this.parseClassElementName($n),SA){this.pushClassPrivateMethod(se,sr,!0,!1);return}this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsGenerator,gt.key),this.pushClassMethod(se,gt,!0,!1,!1,!1);return}let kc=!this.state.containsEsc&&qr(this.state.type),Nl=this.parseClassElementName(O),ca=kc?Nl.name:null,Bl=this.isPrivateName(Nl),$g=this.state.startLoc;if(this.parsePostMemberNameModifiers(ra),this.isClassMethod()){if($n.kind="method",Bl){this.pushClassPrivateMethod(se,sr,!1,!1);return}let SA=this.isNonstaticConstructor(gt),lI=!1;SA&&(gt.kind="constructor",K.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(X.DuplicateConstructor,Nl),SA&&this.hasPlugin("typescript")&&O.override&&this.raise(X.OverrideOnConstructor,Nl),K.hadConstructor=!0,lI=K.hadSuperClass),this.pushClassMethod(se,gt,!1,!1,SA,lI)}else if(this.isClassProperty())Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr);else if(ca==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Nl);let SA=this.eat(55);ra.optional&&this.unexpected($g),$n.kind="method";let lI=this.match(139);this.parseClassElementName($n),this.parsePostMemberNameModifiers(ra),lI?this.pushClassPrivateMethod(se,sr,SA,!0):(this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsAsync,gt.key),this.pushClassMethod(se,gt,SA,!0,!1,!1))}else if((ca==="get"||ca==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Nl),$n.kind=ca;let SA=this.match(139);this.parseClassElementName(gt),SA?this.pushClassPrivateMethod(se,sr,!1,!1):(this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsAccessor,gt.key),this.pushClassMethod(se,gt,!1,!1,!1,!1)),this.checkGetterSetterParams(gt)}else if(ca==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Nl);let SA=this.match(139);this.parseClassElementName(Yr),this.pushClassAccessorProperty(se,fi,SA)}else this.isLineTerminator()?Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr):this.unexpected()}parseClassElementName(se){let{type:O,value:K}=this.state;if((O===132||O===134)&&se.static&&K==="prototype"&&this.raise(X.StaticPrototype,this.state.startLoc),O===139){K==="constructor"&&this.raise(X.ConstructorClassPrivateField,this.state.startLoc);let we=this.parsePrivateName();return se.key=we,we}return this.parsePropertyName(se),se.key}parseClassStaticBlock(se,O){var K;this.scope.enter(208);let we=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let gt=O.body=[];this.parseBlockOrModuleBlockBody(gt,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=we,se.body.push(this.finishNode(O,"StaticBlock")),(K=O.decorators)!=null&&K.length&&this.raise(X.DecoratorStaticBlock,O)}pushClassProperty(se,O){!O.computed&&this.nameIsConstructor(O.key)&&this.raise(X.ConstructorClassField,O.key),se.body.push(this.parseClassProperty(O))}pushClassPrivateProperty(se,O){let K=this.parseClassPrivateProperty(O);se.body.push(K),this.classScope.declarePrivateName(this.getPrivateNameSV(K.key),0,K.key.loc.start)}pushClassAccessorProperty(se,O,K){!K&&!O.computed&&this.nameIsConstructor(O.key)&&this.raise(X.ConstructorClassField,O.key);let we=this.parseClassAccessorProperty(O);se.body.push(we),K&&this.classScope.declarePrivateName(this.getPrivateNameSV(we.key),0,we.key.loc.start)}pushClassMethod(se,O,K,we,gt,sr){se.body.push(this.parseMethod(O,K,we,gt,sr,"ClassMethod",!0))}pushClassPrivateMethod(se,O,K,we){let gt=this.parseMethod(O,K,we,!1,!1,"ClassPrivateMethod",!0);se.body.push(gt);let sr=gt.kind==="get"?gt.static?6:2:gt.kind==="set"?gt.static?5:1:0;this.declareClassPrivateMethodInScope(gt,sr)}declareClassPrivateMethodInScope(se,O){this.classScope.declarePrivateName(this.getPrivateNameSV(se.key),O,se.key.loc.start)}parsePostMemberNameModifiers(se){}parseClassPrivateProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassPrivateProperty")}parseClassProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassProperty")}parseClassAccessorProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassAccessorProperty")}parseInitializer(se){this.scope.enter(80),this.expressionScope.enter(il()),this.prodParam.enter(0),se.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(se,O,K,we=8331){if(qr(this.state.type))se.id=this.parseIdentifier(),O&&this.declareNameFromIdentifier(se.id,we);else if(K||!O)se.id=null;else throw this.raise(X.MissingClassName,this.state.startLoc)}parseClassSuper(se){se.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(se,O){let K=this.parseMaybeImportPhase(se,!0),we=this.maybeParseExportDefaultSpecifier(se,K),gt=!we||this.eat(12),sr=gt&&this.eatExportStar(se),Yr=sr&&this.maybeParseExportNamespaceSpecifier(se),Lr=gt&&(!Yr||this.eat(12)),fi=we||sr;if(sr&&!Yr){if(we&&this.unexpected(),O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.parseExportFrom(se,!0),this.finishNode(se,"ExportAllDeclaration")}let $n=this.maybeParseExportNamedSpecifiers(se);we&>&&!sr&&!$n&&this.unexpected(null,5),Yr&&Lr&&this.unexpected(null,98);let ra;if(fi||$n){if(ra=!1,O)throw this.raise(X.UnsupportedDecoratorExport,se);this.parseExportFrom(se,fi)}else ra=this.maybeParseExportDeclaration(se);if(fi||$n||ra){var kc;let Nl=se;if(this.checkExport(Nl,!0,!1,!!Nl.source),((kc=Nl.declaration)==null?void 0:kc.type)==="ClassDeclaration")this.maybeTakeDecorators(O,Nl.declaration,Nl);else if(O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.finishNode(Nl,"ExportNamedDeclaration")}if(this.eat(65)){let Nl=se,ca=this.parseExportDefaultExpression();if(Nl.declaration=ca,ca.type==="ClassDeclaration")this.maybeTakeDecorators(O,ca,Nl);else if(O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.checkExport(Nl,!0,!0),this.finishNode(Nl,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(se){return this.eat(55)}maybeParseExportDefaultSpecifier(se,O){if(O||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",O?.loc.start);let K=O||this.parseIdentifier(!0),we=this.startNodeAtNode(K);return we.exported=K,se.specifiers=[this.finishNode(we,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(se){if(this.isContextual(93)){var O,K;(K=(O=se).specifiers)!=null||(O.specifiers=[]);let we=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),we.exported=this.parseModuleExportName(),se.specifiers.push(this.finishNode(we,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(se){if(this.match(5)){let O=se;O.specifiers||(O.specifiers=[]);let K=O.exportKind==="type";return O.specifiers.push(...this.parseExportSpecifiers(K)),O.source=null,O.declaration=null,this.hasPlugin("importAssertions")&&(O.assertions=[]),!0}return!1}maybeParseExportDeclaration(se){return this.shouldParseExportDeclaration()?(se.specifiers=[],se.source=null,this.hasPlugin("importAssertions")&&(se.assertions=[]),se.declaration=this.parseExportDeclaration(se),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let se=this.nextTokenInLineStart();return this.isUnparsedContextual(se,"function")}parseExportDefaultExpression(){let se=this.startNode();if(this.match(68))return this.next(),this.parseFunction(se,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(se,13);if(this.match(80))return this.parseClass(se,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(X.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(X.UnsupportedDefaultExport,this.state.startLoc);let O=this.parseMaybeAssignAllowIn();return this.semicolon(),O}parseExportDeclaration(se){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:se}=this.state;if(qr(se)){if(se===95&&!this.state.containsEsc||se===100)return!1;if((se===130||se===129)&&!this.state.containsEsc){let{type:we}=this.lookahead();if(qr(we)&&we!==98||we===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let O=this.nextTokenStart(),K=this.isUnparsedContextual(O,"from");if(this.input.charCodeAt(O)===44||qr(this.state.type)&&K)return!0;if(this.match(65)&&K){let we=this.input.charCodeAt(this.nextTokenStartSince(O+4));return we===34||we===39}return!1}parseExportFrom(se,O){this.eatContextual(98)?(se.source=this.parseImportSource(),this.checkExport(se),this.maybeParseImportAttributes(se),this.checkJSONModuleImport(se)):O&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:se}=this.state;return se===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(X.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(X.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(X.UsingDeclarationExport,this.state.startLoc),!0):se===74||se===75||se===68||se===80||this.isLet()||this.isAsyncFunction()}checkExport(se,O,K,we){if(O){var gt;if(K){if(this.checkDuplicateExports(se,"default"),this.hasPlugin("exportDefaultFrom")){var sr;let Yr=se.declaration;Yr.type==="Identifier"&&Yr.name==="from"&&Yr.end-Yr.start===4&&!((sr=Yr.extra)!=null&&sr.parenthesized)&&this.raise(X.ExportDefaultFromAsIdentifier,Yr)}}else if((gt=se.specifiers)!=null&>.length)for(let Yr of se.specifiers){let{exported:Lr}=Yr,fi=Lr.type==="Identifier"?Lr.name:Lr.value;if(this.checkDuplicateExports(Yr,fi),!we&&Yr.local){let{local:$n}=Yr;$n.type!=="Identifier"?this.raise(X.ExportBindingIsString,Yr,{localName:$n.value,exportName:fi}):(this.checkReservedWord($n.name,$n.loc.start,!0,!1),this.scope.checkLocalExport($n))}}else if(se.declaration){let Yr=se.declaration;if(Yr.type==="FunctionDeclaration"||Yr.type==="ClassDeclaration"){let{id:Lr}=Yr;if(!Lr)throw new Error("Assertion failure");this.checkDuplicateExports(se,Lr.name)}else if(Yr.type==="VariableDeclaration")for(let Lr of Yr.declarations)this.checkDeclaration(Lr.id)}}}checkDeclaration(se){if(se.type==="Identifier")this.checkDuplicateExports(se,se.name);else if(se.type==="ObjectPattern")for(let O of se.properties)this.checkDeclaration(O);else if(se.type==="ArrayPattern")for(let O of se.elements)O&&this.checkDeclaration(O);else se.type==="ObjectProperty"?this.checkDeclaration(se.value):se.type==="RestElement"?this.checkDeclaration(se.argument):se.type==="AssignmentPattern"&&this.checkDeclaration(se.left)}checkDuplicateExports(se,O){this.exportedIdentifiers.has(O)&&(O==="default"?this.raise(X.DuplicateDefaultExport,se):this.raise(X.DuplicateExport,se,{exportName:O})),this.exportedIdentifiers.add(O)}parseExportSpecifiers(se){let O=[],K=!0;for(this.expect(5);!this.eat(8);){if(K)K=!1;else if(this.expect(12),this.eat(8))break;let we=this.isContextual(130),gt=this.match(134),sr=this.startNode();sr.local=this.parseModuleExportName(),O.push(this.parseExportSpecifier(sr,gt,se,we))}return O}parseExportSpecifier(se,O,K,we){return this.eatContextual(93)?se.exported=this.parseModuleExportName():O?se.exported=yn(se.local):se.exported||(se.exported=Zt(se.local)),this.finishNode(se,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let se=this.parseStringLiteral(this.state.value),O=TC.exec(se.value);return O&&this.raise(X.ModuleExportNameHasLoneSurrogate,se,{surrogateCharCode:O[0].charCodeAt(0)}),se}return this.parseIdentifier(!0)}isJSONModuleImport(se){return se.assertions!=null?se.assertions.some(({key:O,value:K})=>K.value==="json"&&(O.type==="Identifier"?O.name==="type":O.value==="type")):!1}checkImportReflection(se){let{specifiers:O}=se,K=O.length===1?O[0].type:null;if(se.phase==="source")K!=="ImportDefaultSpecifier"&&this.raise(X.SourcePhaseImportRequiresDefault,O[0].loc.start);else if(se.phase==="defer")K!=="ImportNamespaceSpecifier"&&this.raise(X.DeferImportRequiresNamespace,O[0].loc.start);else if(se.module){var we;K!=="ImportDefaultSpecifier"&&this.raise(X.ImportReflectionNotBinding,O[0].loc.start),((we=se.assertions)==null?void 0:we.length)>0&&this.raise(X.ImportReflectionHasAssertion,O[0].loc.start)}}checkJSONModuleImport(se){if(this.isJSONModuleImport(se)&&se.type!=="ExportAllDeclaration"){let{specifiers:O}=se;if(O!=null){let K=O.find(we=>{let gt;if(we.type==="ExportSpecifier"?gt=we.local:we.type==="ImportSpecifier"&&(gt=we.imported),gt!==void 0)return gt.type==="Identifier"?gt.name!=="default":gt.value!=="default"});K!==void 0&&this.raise(X.ImportJSONBindingNotDefault,K.loc.start)}}}isPotentialImportPhase(se){return se?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(se,O,K,we){O||(K==="module"?(this.expectPlugin("importReflection",we),se.module=!0):this.hasPlugin("importReflection")&&(se.module=!1),K==="source"?(this.expectPlugin("sourcePhaseImports",we),se.phase="source"):K==="defer"?(this.expectPlugin("deferredImportEvaluation",we),se.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(se.phase=null))}parseMaybeImportPhase(se,O){if(!this.isPotentialImportPhase(O))return this.applyImportPhase(se,O,null),null;let K=this.parseIdentifier(!0),{type:we}=this.state;return(ke(we)?we!==98||this.lookaheadCharCode()===102:we!==12)?(this.resetPreviousIdentifierLeadingComments(K),this.applyImportPhase(se,O,K.name,K.loc.start),null):(this.applyImportPhase(se,O,null),K)}isPrecedingIdImportPhase(se){let{type:O}=this.state;return qr(O)?O!==98||this.lookaheadCharCode()===102:O!==12}parseImport(se){return this.match(134)?this.parseImportSourceAndAttributes(se):this.parseImportSpecifiersAndAfter(se,this.parseMaybeImportPhase(se,!1))}parseImportSpecifiersAndAfter(se,O){se.specifiers=[];let K=!this.maybeParseDefaultImportSpecifier(se,O)||this.eat(12),we=K&&this.maybeParseStarImportSpecifier(se);return K&&!we&&this.parseNamedImportSpecifiers(se),this.expectContextual(98),this.parseImportSourceAndAttributes(se)}parseImportSourceAndAttributes(se){var O;return(O=se.specifiers)!=null||(se.specifiers=[]),se.source=this.parseImportSource(),this.maybeParseImportAttributes(se),this.checkImportReflection(se),this.checkJSONModuleImport(se),this.semicolon(),this.finishNode(se,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(se,O,K){O.local=this.parseIdentifier(),se.specifiers.push(this.finishImportSpecifier(O,K))}finishImportSpecifier(se,O,K=8201){return this.checkLVal(se.local,{type:O},K),this.finishNode(se,O)}parseImportAttributes(){this.expect(5);let se=[],O=new Set;do{if(this.match(8))break;let K=this.startNode(),we=this.state.value;if(O.has(we)&&this.raise(X.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:we}),O.add(we),this.match(134)?K.key=this.parseStringLiteral(we):K.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(X.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return this.expect(8),se}parseModuleAttributes(){let se=[],O=new Set;do{let K=this.startNode();if(K.key=this.parseIdentifier(!0),K.key.name!=="type"&&this.raise(X.ModuleAttributeDifferentFromType,K.key),O.has(K.key.name)&&this.raise(X.ModuleAttributesWithDuplicateKeys,K.key,{key:K.key.name}),O.add(K.key.name),this.expect(14),!this.match(134))throw this.raise(X.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return se}maybeParseImportAttributes(se){let O;var K=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?O=this.parseModuleAttributes():O=this.parseImportAttributes(),K=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(X.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(se,"deprecatedAssertSyntax",!0),this.next(),O=this.parseImportAttributes()):O=[];!K&&this.hasPlugin("importAssertions")?se.assertions=O:se.attributes=O}maybeParseDefaultImportSpecifier(se,O){if(O){let K=this.startNodeAtNode(O);return K.local=O,se.specifiers.push(this.finishImportSpecifier(K,"ImportDefaultSpecifier")),!0}else if(ke(this.state.type))return this.parseImportSpecifierLocal(se,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(se){if(this.match(55)){let O=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(se,O,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(se){let O=!0;for(this.expect(5);!this.eat(8);){if(O)O=!1;else{if(this.eat(14))throw this.raise(X.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let K=this.startNode(),we=this.match(134),gt=this.isContextual(130);K.imported=this.parseModuleExportName();let sr=this.parseImportSpecifier(K,we,se.importKind==="type"||se.importKind==="typeof",gt,void 0);se.specifiers.push(sr)}}parseImportSpecifier(se,O,K,we,gt){if(this.eatContextual(93))se.local=this.parseIdentifier();else{let{imported:sr}=se;if(O)throw this.raise(X.ImportBindingIsString,se,{importName:sr.value});this.checkReservedWord(sr.name,se.loc.start,!0,!0),se.local||(se.local=Zt(sr))}return this.finishImportSpecifier(se,"ImportSpecifier",gt)}isThisParam(se){return se.type==="Identifier"&&se.name==="this"}},fb=class extends Mm{constructor(se,O,K){se=ne(se),super(se,O),this.options=se,this.initializeScopes(),this.plugins=K,this.filename=se.sourceFilename,this.startIndex=se.startIndex;let we=0;se.allowAwaitOutsideFunction&&(we|=1),se.allowReturnOutsideFunction&&(we|=2),se.allowImportExportEverywhere&&(we|=8),se.allowSuperOutsideMethod&&(we|=16),se.allowUndeclaredExports&&(we|=32),se.allowNewTargetOutsideFunction&&(we|=4),se.ranges&&(we|=64),se.tokens&&(we|=128),se.createImportExpressions&&(we|=256),se.createParenthesizedExpressions&&(we|=512),se.errorRecovery&&(we|=1024),se.attachComment&&(we|=2048),se.annexB&&(we|=4096),this.optionFlags=we}getScopeHandler(){return Xu}parse(){this.enterInitialScopes();let se=this.startNode(),O=this.startNode();return this.nextToken(),se.errors=null,this.parseTopLevel(se,O),se.errors=this.state.errors,se.comments.length=this.state.commentsLen,se}};function pe(se,O){var K;if(((K=O)==null?void 0:K.sourceType)==="unambiguous"){O=Object.assign({},O);try{O.sourceType="module";let we=_I(O,se),gt=we.parse();if(we.sawUnambiguousESM)return gt;if(we.ambiguousScriptDifferentAst)try{return O.sourceType="script",_I(O,se).parse()}catch{}else gt.program.sourceType="script";return gt}catch(we){try{return O.sourceType="script",_I(O,se).parse()}catch{}throw we}}else return _I(O,se).parse()}function lm(se,O){let K=_I(O,se);return K.options.strictMode&&(K.state.strict=!0),K.getExpression()}function Kf(se){let O={};for(let K of Object.keys(se))O[K]=zr(se[K]);return O}var CI=Kf(Ar);function _I(se,O){let K=fb,we=new Map;if(se!=null&&se.plugins){for(let gt of se.plugins){let sr,Yr;typeof gt=="string"?sr=gt:[sr,Yr]=gt,we.has(sr)||we.set(sr,Yr||{})}Hp(we),K=iE(we)}return new K(se,O,we)}var H2=new Map;function iE(se){let O=[];for(let gt of nE)se.has(gt)&&O.push(gt);let K=O.join("|"),we=H2.get(K);if(!we){we=fb;for(let gt of O)we=uC[gt](we);H2.set(K,we)}return we}e.parse=pe,e.parseExpression=lm,e.tokTypes=CI}),cyi={};a5a(cyi,{parsers:()=>xRe});var U0i=syi(oyi(),1);function Oyt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{let Lr=!this.isSimpleParamList(se.params);Yr&&Lr&&this.raise(X.IllegalLanguageModeDirective,(se.kind==="method"||se.kind==="constructor")&&se.key?se.key.loc.end:se);let fi=!gt&&this.state.strict;this.checkParams(se,!this.state.strict&&!O&&!K&&!Lr,O,fi),this.state.strict&&se.id&&this.checkIdentifier(se.id,65,fi)}),this.prodParam.exit(),this.state.labels=sr}this.expressionScope.exit()}isSimpleParameter(se){return se.type==="Identifier"}isSimpleParamList(se){for(let O=0,K=se.length;O10||!Sg(se))){if(K&&ac(se)){this.raise(X.UnexpectedKeyword,O,{keyword:se});return}if((this.state.strict?we?Xa:Ei:li)(se,this.inModule)){this.raise(X.UnexpectedReservedWord,O,{reservedWord:se});return}else if(se==="yield"){if(this.prodParam.hasYield){this.raise(X.YieldBindingIdentifier,O);return}}else if(se==="await"){if(this.prodParam.hasAwait){this.raise(X.AwaitBindingIdentifier,O);return}if(this.scope.inStaticBlock){this.raise(X.AwaitBindingIdentifierInStaticBlock,O);return}this.expressionScope.recordAsyncArrowParametersError(O)}else if(se==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(X.ArgumentsInClass,O);return}}}recordAwaitIfAllowed(){let se=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return se&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),se}parseAwait(se){let O=this.startNodeAt(se);return this.expressionScope.recordParameterInitializerError(X.AwaitExpressionFormalParameter,O),this.eat(55)&&this.raise(X.ObsoleteAwaitStar,O),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(O.argument=this.parseMaybeUnary(null,!0)),this.finishNode(O,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:se}=this.state;return se===53||se===10||se===0||Ft(se)||se===102&&!this.state.containsEsc||se===138||se===56||this.hasPlugin("v8intrinsic")&&se===54}parseYield(){let se=this.startNode();this.expressionScope.recordParameterInitializerError(X.YieldInParameter,se),this.next();let O=!1,K=null;if(!this.hasPrecedingLineBreak())switch(O=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!O)break;default:K=this.parseMaybeAssign()}return se.delegate=O,se.argument=K,this.finishNode(se,"YieldExpression")}parseImportCall(se){if(this.next(),se.source=this.parseMaybeAssignAllowIn(),se.options=null,this.eat(12)&&!this.match(11)&&(se.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(X.ImportCallArity,se)}return this.expect(11),this.finishNode(se,"ImportExpression")}checkPipelineAtInfixOperator(se,O){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&se.type==="SequenceExpression"&&this.raise(X.PipelineHeadSequenceExpression,O)}parseSmartPipelineBodyInStyle(se,O){if(this.isSimpleReference(se)){let K=this.startNodeAt(O);return K.callee=se,this.finishNode(K,"PipelineBareFunction")}else{let K=this.startNodeAt(O);return this.checkSmartPipeTopicBodyEarlyErrors(O),K.expression=se,this.finishNode(K,"PipelineTopicExpression")}}isSimpleReference(se){switch(se.type){case"MemberExpression":return!se.computed&&this.isSimpleReference(se.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(se){if(this.match(19))throw this.raise(X.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(X.PipelineTopicUnused,se)}withTopicBindingContext(se){let O=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=O}}withSmartMixTopicForbiddingContext(se){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let O=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=O}}else return se()}withSoloAwaitPermittingContext(se){let O=this.state.soloAwait;this.state.soloAwait=!0;try{return se()}finally{this.state.soloAwait=O}}allowInAnd(se){let O=this.prodParam.currentFlags();if(8&~O){this.prodParam.enter(O|8);try{return se()}finally{this.prodParam.exit()}}return se()}disallowInAnd(se){let O=this.prodParam.currentFlags();if(8&O){this.prodParam.enter(O&-9);try{return se()}finally{this.prodParam.exit()}}return se()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(se){let O=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let K=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let we=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),O,se);return this.state.inFSharpPipelineDirectBody=K,we}parseModuleExpression(){this.expectPlugin("moduleBlocks");let se=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let O=this.startNodeAt(this.state.endLoc);this.next();let K=this.initializeScopes(!0);this.enterInitialScopes();try{se.body=this.parseProgram(O,8,"module")}finally{K()}return this.finishNode(se,"ModuleExpression")}parsePropertyNamePrefixOperator(se){}},q0={kind:1},XE={kind:2},TC=/[\uD800-\uDFFF]/u,t_=/in(?:stanceof)?/y;function cp(se,O,K){for(let we=0;we0)for(let[gt,sr]of Array.from(this.scope.undefinedExports))this.raise(X.ModuleExportUndefined,sr,{localName:gt});this.addExtra(se,"topLevelAwait",this.state.hasTopLevelAwait)}let we;return O===140?we=this.finishNode(se,"Program"):we=this.finishNodeAt(se,"Program",a(this.state.startLoc,-1)),we}stmtToDirective(se){let O=se;O.type="Directive",O.value=O.expression,delete O.expression;let K=O.value,we=K.value,gt=this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end)),sr=K.value=gt.slice(1,-1);return this.addExtra(K,"raw",gt),this.addExtra(K,"rawValue",sr),this.addExtra(K,"expressionValue",we),K.type="DirectiveLiteral",O}parseInterpreterDirective(){if(!this.match(28))return null;let se=this.startNode();return se.value=this.state.value,this.next(),this.finishNode(se,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(se,O){if(gc(se)){if(t_.lastIndex=O,t_.test(this.input)){let K=this.codePointAtPos(t_.lastIndex);if(!Cg(K)&&K!==92)return!1}return!0}else return se===92}chStartsBindingPattern(se){return se===91||se===123}hasFollowingBindingAtom(){let se=this.nextTokenStart(),O=this.codePointAtPos(se);return this.chStartsBindingPattern(O)||this.chStartsBindingIdentifier(O,se)}hasInLineFollowingBindingIdentifierOrBrace(){let se=this.nextTokenInLineStart(),O=this.codePointAtPos(se);return O===123||this.chStartsBindingIdentifier(O,se)}startsUsingForOf(){let{type:se,containsEsc:O}=this.lookahead();if(se===102&&!O)return!1;if(qr(se)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let se=this.nextTokenInLineStart();if(this.isUnparsedContextual(se,"using")){se=this.nextTokenInLineStartSince(se+5);let O=this.codePointAtPos(se);if(this.chStartsBindingIdentifier(O,se))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(se=!1){let O=0;return this.options.annexB&&!this.state.strict&&(O|=4,se&&(O|=8)),this.parseStatementLike(O)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(se){let O=null;return this.match(26)&&(O=this.parseDecorators(!0)),this.parseStatementContent(se,O)}parseStatementContent(se,O){let K=this.state.type,we=this.startNode(),gt=!!(se&2),sr=!!(se&4),Yr=se&1;switch(K){case 60:return this.parseBreakContinueStatement(we,!0);case 63:return this.parseBreakContinueStatement(we,!1);case 64:return this.parseDebuggerStatement(we);case 90:return this.parseDoWhileStatement(we);case 91:return this.parseForStatement(we);case 68:if(this.lookaheadCharCode()===46)break;return sr||this.raise(this.state.strict?X.StrictFunction:this.options.annexB?X.SloppyFunctionAnnexB:X.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(we,!1,!gt&&sr);case 80:return gt||this.unexpected(),this.parseClass(this.maybeTakeDecorators(O,we),!0);case 69:return this.parseIfStatement(we);case 70:return this.parseReturnStatement(we);case 71:return this.parseSwitchStatement(we);case 72:return this.parseThrowStatement(we);case 73:return this.parseTryStatement(we);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?gt||this.raise(X.UnexpectedLexicalDeclaration,we):this.raise(X.AwaitUsingNotInAsyncContext,we),this.next(),this.parseVarStatement(we,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(X.UnexpectedUsingDeclaration,this.state.startLoc):gt||this.raise(X.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(we,"using");case 100:{if(this.state.containsEsc)break;let $n=this.nextTokenStart(),ra=this.codePointAtPos($n);if(ra!==91&&(!gt&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(ra,$n)&&ra!==123))break}case 75:gt||this.raise(X.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let $n=this.state.value;return this.parseVarStatement(we,$n)}case 92:return this.parseWhileStatement(we);case 76:return this.parseWithStatement(we);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(we);case 83:{let $n=this.lookaheadCharCode();if($n===40||$n===46)break}case 82:{!(this.optionFlags&8)&&!Yr&&this.raise(X.UnexpectedImportExport,this.state.startLoc),this.next();let $n;return K===83?($n=this.parseImport(we),$n.type==="ImportDeclaration"&&(!$n.importKind||$n.importKind==="value")&&(this.sawUnambiguousESM=!0)):($n=this.parseExport(we,O),($n.type==="ExportNamedDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportAllDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed($n),$n}default:if(this.isAsyncFunction())return gt||this.raise(X.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(we,!0,!gt&&sr)}let Lr=this.state.value,fi=this.parseExpression();return qr(K)&&fi.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(we,Lr,fi,se):this.parseExpressionStatement(we,fi,O)}assertModuleNodeAllowed(se){!(this.optionFlags&8)&&!this.inModule&&this.raise(X.ImportOutsideModule,se)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(se,O,K){if(se){var we;(we=O.decorators)!=null&&we.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(X.DecoratorsBeforeAfterExport,O.decorators[0]),O.decorators.unshift(...se)):O.decorators=se,this.resetStartLocationFromNode(O,se[0]),K&&this.resetStartLocationFromNode(K,O)}return O}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(se){let O=[];do O.push(this.parseDecorator());while(this.match(26));if(this.match(82))se||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(X.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(X.UnexpectedLeadingDecorator,this.state.startLoc);return O}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let se=this.startNode();if(this.next(),this.hasPlugin("decorators")){let O=this.state.startLoc,K;if(this.match(10)){let we=this.state.startLoc;this.next(),K=this.parseExpression(),this.expect(11),K=this.wrapParenthesis(we,K);let gt=this.state.startLoc;se.expression=this.parseMaybeDecoratorArguments(K,we),this.getPluginOption("decorators","allowCallParenthesized")===!1&&se.expression!==K&&this.raise(X.DecoratorArgumentsOutsideParentheses,gt)}else{for(K=this.parseIdentifier(!1);this.eat(16);){let we=this.startNodeAt(O);we.object=K,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),we.property=this.parsePrivateName()):we.property=this.parseIdentifier(!0),we.computed=!1,K=this.finishNode(we,"MemberExpression")}se.expression=this.parseMaybeDecoratorArguments(K,O)}}else se.expression=this.parseExprSubscripts();return this.finishNode(se,"Decorator")}parseMaybeDecoratorArguments(se,O){if(this.eat(10)){let K=this.startNodeAt(O);return K.callee=se,K.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(K.arguments),this.finishNode(K,"CallExpression")}return se}parseBreakContinueStatement(se,O){return this.next(),this.isLineTerminator()?se.label=null:(se.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(se,O),this.finishNode(se,O?"BreakStatement":"ContinueStatement")}verifyBreakContinue(se,O){let K;for(K=0;Kthis.parseStatement()),this.state.labels.pop(),this.expect(92),se.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(se,"DoWhileStatement")}parseForStatement(se){this.next(),this.state.labels.push(q0);let O=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(O=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return O!==null&&this.unexpected(O),this.parseFor(se,null);let K=this.isContextual(100);{let Lr=this.isContextual(96)&&this.startsAwaitUsing(),fi=Lr||this.isContextual(107)&&this.startsUsingForOf(),$n=K&&this.hasFollowingBindingAtom()||fi;if(this.match(74)||this.match(75)||$n){let ra=this.startNode(),kc;Lr?(kc="await using",this.recordAwaitIfAllowed()||this.raise(X.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):kc=this.state.value,this.next(),this.parseVar(ra,!0,kc);let Nl=this.finishNode(ra,"VariableDeclaration"),ca=this.match(58);return ca&&fi&&this.raise(X.ForInUsing,Nl),(ca||this.isContextual(102))&&Nl.declarations.length===1?this.parseForIn(se,Nl,O):(O!==null&&this.unexpected(O),this.parseFor(se,Nl))}}let we=this.isContextual(95),gt=new yg,sr=this.parseExpression(!0,gt),Yr=this.isContextual(102);if(Yr&&(K&&this.raise(X.ForOfLet,sr),O===null&&we&&sr.type==="Identifier"&&this.raise(X.ForOfAsync,sr)),Yr||this.match(58)){this.checkDestructuringPrivate(gt),this.toAssignable(sr,!0);let Lr=Yr?"ForOfStatement":"ForInStatement";return this.checkLVal(sr,{type:Lr}),this.parseForIn(se,sr,O)}else this.checkExpressionErrors(gt,!0);return O!==null&&this.unexpected(O),this.parseFor(se,sr)}parseFunctionStatement(se,O,K){return this.next(),this.parseFunction(se,1|(K?2:0)|(O?8:0))}parseIfStatement(se){return this.next(),se.test=this.parseHeaderExpression(),se.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),se.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(se,"IfStatement")}parseReturnStatement(se){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(X.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?se.argument=null:(se.argument=this.parseExpression(),this.semicolon()),this.finishNode(se,"ReturnStatement")}parseSwitchStatement(se){this.next(),se.discriminant=this.parseHeaderExpression();let O=se.cases=[];this.expect(5),this.state.labels.push(XE),this.scope.enter(0);let K;for(let we;!this.match(8);)if(this.match(61)||this.match(65)){let gt=this.match(61);K&&this.finishNode(K,"SwitchCase"),O.push(K=this.startNode()),K.consequent=[],this.next(),gt?K.test=this.parseExpression():(we&&this.raise(X.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),we=!0,K.test=null),this.expect(14)}else K?K.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),K&&this.finishNode(K,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(se,"SwitchStatement")}parseThrowStatement(se){return this.next(),this.hasPrecedingLineBreak()&&this.raise(X.NewlineAfterThrow,this.state.lastTokEndLoc),se.argument=this.parseExpression(),this.semicolon(),this.finishNode(se,"ThrowStatement")}parseCatchClauseParam(){let se=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&se.type==="Identifier"?8:0),this.checkLVal(se,{type:"CatchClause"},9),se}parseTryStatement(se){if(this.next(),se.block=this.parseBlock(),se.handler=null,this.match(62)){let O=this.startNode();this.next(),this.match(10)?(this.expect(10),O.param=this.parseCatchClauseParam(),this.expect(11)):(O.param=null,this.scope.enter(0)),O.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),se.handler=this.finishNode(O,"CatchClause")}return se.finalizer=this.eat(67)?this.parseBlock():null,!se.handler&&!se.finalizer&&this.raise(X.NoCatchOrFinally,se),this.finishNode(se,"TryStatement")}parseVarStatement(se,O,K=!1){return this.next(),this.parseVar(se,!1,O,K),this.semicolon(),this.finishNode(se,"VariableDeclaration")}parseWhileStatement(se){return this.next(),se.test=this.parseHeaderExpression(),this.state.labels.push(q0),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(se,"WhileStatement")}parseWithStatement(se){return this.state.strict&&this.raise(X.StrictWith,this.state.startLoc),this.next(),se.object=this.parseHeaderExpression(),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(se,"WithStatement")}parseEmptyStatement(se){return this.next(),this.finishNode(se,"EmptyStatement")}parseLabeledStatement(se,O,K,we){for(let sr of this.state.labels)sr.name===O&&this.raise(X.LabelRedeclaration,K,{labelName:O});let gt=Vr(this.state.type)?1:this.match(71)?2:null;for(let sr=this.state.labels.length-1;sr>=0;sr--){let Yr=this.state.labels[sr];if(Yr.statementStart===se.start)Yr.statementStart=this.sourceToOffsetPos(this.state.start),Yr.kind=gt;else break}return this.state.labels.push({name:O,kind:gt,statementStart:this.sourceToOffsetPos(this.state.start)}),se.body=we&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),se.label=K,this.finishNode(se,"LabeledStatement")}parseExpressionStatement(se,O,K){return se.expression=O,this.semicolon(),this.finishNode(se,"ExpressionStatement")}parseBlock(se=!1,O=!0,K){let we=this.startNode();return se&&this.state.strictErrors.clear(),this.expect(5),O&&this.scope.enter(0),this.parseBlockBody(we,se,!1,8,K),O&&this.scope.exit(),this.finishNode(we,"BlockStatement")}isValidDirective(se){return se.type==="ExpressionStatement"&&se.expression.type==="StringLiteral"&&!se.expression.extra.parenthesized}parseBlockBody(se,O,K,we,gt){let sr=se.body=[],Yr=se.directives=[];this.parseBlockOrModuleBlockBody(sr,O?Yr:void 0,K,we,gt)}parseBlockOrModuleBlockBody(se,O,K,we,gt){let sr=this.state.strict,Yr=!1,Lr=!1;for(;!this.match(we);){let fi=K?this.parseModuleItem():this.parseStatementListItem();if(O&&!Lr){if(this.isValidDirective(fi)){let $n=this.stmtToDirective(fi);O.push($n),!Yr&&$n.value.value==="use strict"&&(Yr=!0,this.setStrict(!0));continue}Lr=!0,this.state.strictErrors.clear()}se.push(fi)}gt?.call(this,Yr),sr||this.setStrict(!1),this.next()}parseFor(se,O){return se.init=O,this.semicolon(!1),se.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),se.update=this.match(11)?null:this.parseExpression(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,"ForStatement")}parseForIn(se,O,K){let we=this.match(58);return this.next(),we?K!==null&&this.unexpected(K):se.await=K!==null,O.type==="VariableDeclaration"&&O.declarations[0].init!=null&&(!we||!this.options.annexB||this.state.strict||O.kind!=="var"||O.declarations[0].id.type!=="Identifier")&&this.raise(X.ForInOfLoopInitializer,O,{type:we?"ForInStatement":"ForOfStatement"}),O.type==="AssignmentPattern"&&this.raise(X.InvalidLhs,O,{ancestor:{type:"ForStatement"}}),se.left=O,se.right=we?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,we?"ForInStatement":"ForOfStatement")}parseVar(se,O,K,we=!1){let gt=se.declarations=[];for(se.kind=K;;){let sr=this.startNode();if(this.parseVarId(sr,K),sr.init=this.eat(29)?O?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,sr.init===null&&!we&&(sr.id.type!=="Identifier"&&!(O&&(this.match(58)||this.isContextual(102)))?this.raise(X.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(K==="const"||K==="using"||K==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(X.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:K})),gt.push(this.finishNode(sr,"VariableDeclarator")),!this.eat(12))break}return se}parseVarId(se,O){let K=this.parseBindingAtom();(O==="using"||O==="await using")&&(K.type==="ArrayPattern"||K.type==="ObjectPattern")&&this.raise(X.UsingDeclarationHasBindingPattern,K.loc.start),this.checkLVal(K,{type:"VariableDeclarator"},O==="var"?5:8201),se.id=K}parseAsyncFunctionExpression(se){return this.parseFunction(se,8)}parseFunction(se,O=0){let K=O&2,we=!!(O&1),gt=we&&!(O&4),sr=!!(O&8);this.initFunction(se,sr),this.match(55)&&(K&&this.raise(X.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),se.generator=!0),we&&(se.id=this.parseFunctionId(gt));let Yr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(ZA(sr,se.generator)),we||(se.id=this.parseFunctionId()),this.parseFunctionParams(se,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(se,we?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),we&&!K&&this.registerFunctionStatementId(se),this.state.maybeInArrowParameters=Yr,se}parseFunctionId(se){return se||qr(this.state.type)?this.parseIdentifier():null}parseFunctionParams(se,O){this.expect(10),this.expressionScope.enter(rc()),se.params=this.parseBindingList(11,41,2|(O?4:0)),this.expressionScope.exit()}registerFunctionStatementId(se){se.id&&this.scope.declareName(se.id.name,!this.options.annexB||this.state.strict||se.generator||se.async?this.scope.treatFunctionsAsVar?5:8201:17,se.id.loc.start)}parseClass(se,O,K){this.next();let we=this.state.strict;return this.state.strict=!0,this.parseClassId(se,O,K),this.parseClassSuper(se),se.body=this.parseClassBody(!!se.superClass,we),this.finishNode(se,O?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(se){return se.type==="Identifier"&&se.name==="constructor"||se.type==="StringLiteral"&&se.value==="constructor"}isNonstaticConstructor(se){return!se.computed&&!se.static&&this.nameIsConstructor(se.key)}parseClassBody(se,O){this.classScope.enter();let K={hadConstructor:!1,hadSuperClass:se},we=[],gt=this.startNode();if(gt.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(we.length>0)throw this.raise(X.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){we.push(this.parseDecorator());continue}let sr=this.startNode();we.length&&(sr.decorators=we,this.resetStartLocationFromNode(sr,we[0]),we=[]),this.parseClassMember(gt,sr,K),sr.kind==="constructor"&&sr.decorators&&sr.decorators.length>0&&this.raise(X.DecoratorConstructor,sr)}}),this.state.strict=O,this.next(),we.length)throw this.raise(X.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(gt,"ClassBody")}parseClassMemberFromModifier(se,O){let K=this.parseIdentifier(!0);if(this.isClassMethod()){let we=O;return we.kind="method",we.computed=!1,we.key=K,we.static=!1,this.pushClassMethod(se,we,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let we=O;return we.computed=!1,we.key=K,we.static=!1,se.body.push(this.parseClassProperty(we)),!0}return this.resetPreviousNodeTrailingComments(K),!1}parseClassMember(se,O,K){let we=this.isContextual(106);if(we){if(this.parseClassMemberFromModifier(se,O))return;if(this.eat(5)){this.parseClassStaticBlock(se,O);return}}this.parseClassMemberWithIsStatic(se,O,K,we)}parseClassMemberWithIsStatic(se,O,K,we){let gt=O,sr=O,Yr=O,Lr=O,fi=O,$n=gt,ra=gt;if(O.static=we,this.parsePropertyNamePrefixOperator(O),this.eat(55)){$n.kind="method";let SA=this.match(139);if(this.parseClassElementName($n),SA){this.pushClassPrivateMethod(se,sr,!0,!1);return}this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsGenerator,gt.key),this.pushClassMethod(se,gt,!0,!1,!1,!1);return}let kc=!this.state.containsEsc&&qr(this.state.type),Nl=this.parseClassElementName(O),ca=kc?Nl.name:null,Bl=this.isPrivateName(Nl),$g=this.state.startLoc;if(this.parsePostMemberNameModifiers(ra),this.isClassMethod()){if($n.kind="method",Bl){this.pushClassPrivateMethod(se,sr,!1,!1);return}let SA=this.isNonstaticConstructor(gt),lI=!1;SA&&(gt.kind="constructor",K.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(X.DuplicateConstructor,Nl),SA&&this.hasPlugin("typescript")&&O.override&&this.raise(X.OverrideOnConstructor,Nl),K.hadConstructor=!0,lI=K.hadSuperClass),this.pushClassMethod(se,gt,!1,!1,SA,lI)}else if(this.isClassProperty())Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr);else if(ca==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Nl);let SA=this.eat(55);ra.optional&&this.unexpected($g),$n.kind="method";let lI=this.match(139);this.parseClassElementName($n),this.parsePostMemberNameModifiers(ra),lI?this.pushClassPrivateMethod(se,sr,SA,!0):(this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsAsync,gt.key),this.pushClassMethod(se,gt,SA,!0,!1,!1))}else if((ca==="get"||ca==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Nl),$n.kind=ca;let SA=this.match(139);this.parseClassElementName(gt),SA?this.pushClassPrivateMethod(se,sr,!1,!1):(this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsAccessor,gt.key),this.pushClassMethod(se,gt,!1,!1,!1,!1)),this.checkGetterSetterParams(gt)}else if(ca==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Nl);let SA=this.match(139);this.parseClassElementName(Yr),this.pushClassAccessorProperty(se,fi,SA)}else this.isLineTerminator()?Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr):this.unexpected()}parseClassElementName(se){let{type:O,value:K}=this.state;if((O===132||O===134)&&se.static&&K==="prototype"&&this.raise(X.StaticPrototype,this.state.startLoc),O===139){K==="constructor"&&this.raise(X.ConstructorClassPrivateField,this.state.startLoc);let we=this.parsePrivateName();return se.key=we,we}return this.parsePropertyName(se),se.key}parseClassStaticBlock(se,O){var K;this.scope.enter(208);let we=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let gt=O.body=[];this.parseBlockOrModuleBlockBody(gt,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=we,se.body.push(this.finishNode(O,"StaticBlock")),(K=O.decorators)!=null&&K.length&&this.raise(X.DecoratorStaticBlock,O)}pushClassProperty(se,O){!O.computed&&this.nameIsConstructor(O.key)&&this.raise(X.ConstructorClassField,O.key),se.body.push(this.parseClassProperty(O))}pushClassPrivateProperty(se,O){let K=this.parseClassPrivateProperty(O);se.body.push(K),this.classScope.declarePrivateName(this.getPrivateNameSV(K.key),0,K.key.loc.start)}pushClassAccessorProperty(se,O,K){!K&&!O.computed&&this.nameIsConstructor(O.key)&&this.raise(X.ConstructorClassField,O.key);let we=this.parseClassAccessorProperty(O);se.body.push(we),K&&this.classScope.declarePrivateName(this.getPrivateNameSV(we.key),0,we.key.loc.start)}pushClassMethod(se,O,K,we,gt,sr){se.body.push(this.parseMethod(O,K,we,gt,sr,"ClassMethod",!0))}pushClassPrivateMethod(se,O,K,we){let gt=this.parseMethod(O,K,we,!1,!1,"ClassPrivateMethod",!0);se.body.push(gt);let sr=gt.kind==="get"?gt.static?6:2:gt.kind==="set"?gt.static?5:1:0;this.declareClassPrivateMethodInScope(gt,sr)}declareClassPrivateMethodInScope(se,O){this.classScope.declarePrivateName(this.getPrivateNameSV(se.key),O,se.key.loc.start)}parsePostMemberNameModifiers(se){}parseClassPrivateProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassPrivateProperty")}parseClassProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassProperty")}parseClassAccessorProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassAccessorProperty")}parseInitializer(se){this.scope.enter(80),this.expressionScope.enter(il()),this.prodParam.enter(0),se.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(se,O,K,we=8331){if(qr(this.state.type))se.id=this.parseIdentifier(),O&&this.declareNameFromIdentifier(se.id,we);else if(K||!O)se.id=null;else throw this.raise(X.MissingClassName,this.state.startLoc)}parseClassSuper(se){se.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(se,O){let K=this.parseMaybeImportPhase(se,!0),we=this.maybeParseExportDefaultSpecifier(se,K),gt=!we||this.eat(12),sr=gt&&this.eatExportStar(se),Yr=sr&&this.maybeParseExportNamespaceSpecifier(se),Lr=gt&&(!Yr||this.eat(12)),fi=we||sr;if(sr&&!Yr){if(we&&this.unexpected(),O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.parseExportFrom(se,!0),this.finishNode(se,"ExportAllDeclaration")}let $n=this.maybeParseExportNamedSpecifiers(se);we&>&&!sr&&!$n&&this.unexpected(null,5),Yr&&Lr&&this.unexpected(null,98);let ra;if(fi||$n){if(ra=!1,O)throw this.raise(X.UnsupportedDecoratorExport,se);this.parseExportFrom(se,fi)}else ra=this.maybeParseExportDeclaration(se);if(fi||$n||ra){var kc;let Nl=se;if(this.checkExport(Nl,!0,!1,!!Nl.source),((kc=Nl.declaration)==null?void 0:kc.type)==="ClassDeclaration")this.maybeTakeDecorators(O,Nl.declaration,Nl);else if(O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.finishNode(Nl,"ExportNamedDeclaration")}if(this.eat(65)){let Nl=se,ca=this.parseExportDefaultExpression();if(Nl.declaration=ca,ca.type==="ClassDeclaration")this.maybeTakeDecorators(O,ca,Nl);else if(O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.checkExport(Nl,!0,!0),this.finishNode(Nl,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(se){return this.eat(55)}maybeParseExportDefaultSpecifier(se,O){if(O||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",O?.loc.start);let K=O||this.parseIdentifier(!0),we=this.startNodeAtNode(K);return we.exported=K,se.specifiers=[this.finishNode(we,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(se){if(this.isContextual(93)){var O,K;(K=(O=se).specifiers)!=null||(O.specifiers=[]);let we=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),we.exported=this.parseModuleExportName(),se.specifiers.push(this.finishNode(we,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(se){if(this.match(5)){let O=se;O.specifiers||(O.specifiers=[]);let K=O.exportKind==="type";return O.specifiers.push(...this.parseExportSpecifiers(K)),O.source=null,O.declaration=null,this.hasPlugin("importAssertions")&&(O.assertions=[]),!0}return!1}maybeParseExportDeclaration(se){return this.shouldParseExportDeclaration()?(se.specifiers=[],se.source=null,this.hasPlugin("importAssertions")&&(se.assertions=[]),se.declaration=this.parseExportDeclaration(se),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let se=this.nextTokenInLineStart();return this.isUnparsedContextual(se,"function")}parseExportDefaultExpression(){let se=this.startNode();if(this.match(68))return this.next(),this.parseFunction(se,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(se,13);if(this.match(80))return this.parseClass(se,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(X.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(X.UnsupportedDefaultExport,this.state.startLoc);let O=this.parseMaybeAssignAllowIn();return this.semicolon(),O}parseExportDeclaration(se){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:se}=this.state;if(qr(se)){if(se===95&&!this.state.containsEsc||se===100)return!1;if((se===130||se===129)&&!this.state.containsEsc){let{type:we}=this.lookahead();if(qr(we)&&we!==98||we===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let O=this.nextTokenStart(),K=this.isUnparsedContextual(O,"from");if(this.input.charCodeAt(O)===44||qr(this.state.type)&&K)return!0;if(this.match(65)&&K){let we=this.input.charCodeAt(this.nextTokenStartSince(O+4));return we===34||we===39}return!1}parseExportFrom(se,O){this.eatContextual(98)?(se.source=this.parseImportSource(),this.checkExport(se),this.maybeParseImportAttributes(se),this.checkJSONModuleImport(se)):O&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:se}=this.state;return se===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(X.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(X.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(X.UsingDeclarationExport,this.state.startLoc),!0):se===74||se===75||se===68||se===80||this.isLet()||this.isAsyncFunction()}checkExport(se,O,K,we){if(O){var gt;if(K){if(this.checkDuplicateExports(se,"default"),this.hasPlugin("exportDefaultFrom")){var sr;let Yr=se.declaration;Yr.type==="Identifier"&&Yr.name==="from"&&Yr.end-Yr.start===4&&!((sr=Yr.extra)!=null&&sr.parenthesized)&&this.raise(X.ExportDefaultFromAsIdentifier,Yr)}}else if((gt=se.specifiers)!=null&>.length)for(let Yr of se.specifiers){let{exported:Lr}=Yr,fi=Lr.type==="Identifier"?Lr.name:Lr.value;if(this.checkDuplicateExports(Yr,fi),!we&&Yr.local){let{local:$n}=Yr;$n.type!=="Identifier"?this.raise(X.ExportBindingIsString,Yr,{localName:$n.value,exportName:fi}):(this.checkReservedWord($n.name,$n.loc.start,!0,!1),this.scope.checkLocalExport($n))}}else if(se.declaration){let Yr=se.declaration;if(Yr.type==="FunctionDeclaration"||Yr.type==="ClassDeclaration"){let{id:Lr}=Yr;if(!Lr)throw new Error("Assertion failure");this.checkDuplicateExports(se,Lr.name)}else if(Yr.type==="VariableDeclaration")for(let Lr of Yr.declarations)this.checkDeclaration(Lr.id)}}}checkDeclaration(se){if(se.type==="Identifier")this.checkDuplicateExports(se,se.name);else if(se.type==="ObjectPattern")for(let O of se.properties)this.checkDeclaration(O);else if(se.type==="ArrayPattern")for(let O of se.elements)O&&this.checkDeclaration(O);else se.type==="ObjectProperty"?this.checkDeclaration(se.value):se.type==="RestElement"?this.checkDeclaration(se.argument):se.type==="AssignmentPattern"&&this.checkDeclaration(se.left)}checkDuplicateExports(se,O){this.exportedIdentifiers.has(O)&&(O==="default"?this.raise(X.DuplicateDefaultExport,se):this.raise(X.DuplicateExport,se,{exportName:O})),this.exportedIdentifiers.add(O)}parseExportSpecifiers(se){let O=[],K=!0;for(this.expect(5);!this.eat(8);){if(K)K=!1;else if(this.expect(12),this.eat(8))break;let we=this.isContextual(130),gt=this.match(134),sr=this.startNode();sr.local=this.parseModuleExportName(),O.push(this.parseExportSpecifier(sr,gt,se,we))}return O}parseExportSpecifier(se,O,K,we){return this.eatContextual(93)?se.exported=this.parseModuleExportName():O?se.exported=bn(se.local):se.exported||(se.exported=Zt(se.local)),this.finishNode(se,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let se=this.parseStringLiteral(this.state.value),O=TC.exec(se.value);return O&&this.raise(X.ModuleExportNameHasLoneSurrogate,se,{surrogateCharCode:O[0].charCodeAt(0)}),se}return this.parseIdentifier(!0)}isJSONModuleImport(se){return se.assertions!=null?se.assertions.some(({key:O,value:K})=>K.value==="json"&&(O.type==="Identifier"?O.name==="type":O.value==="type")):!1}checkImportReflection(se){let{specifiers:O}=se,K=O.length===1?O[0].type:null;if(se.phase==="source")K!=="ImportDefaultSpecifier"&&this.raise(X.SourcePhaseImportRequiresDefault,O[0].loc.start);else if(se.phase==="defer")K!=="ImportNamespaceSpecifier"&&this.raise(X.DeferImportRequiresNamespace,O[0].loc.start);else if(se.module){var we;K!=="ImportDefaultSpecifier"&&this.raise(X.ImportReflectionNotBinding,O[0].loc.start),((we=se.assertions)==null?void 0:we.length)>0&&this.raise(X.ImportReflectionHasAssertion,O[0].loc.start)}}checkJSONModuleImport(se){if(this.isJSONModuleImport(se)&&se.type!=="ExportAllDeclaration"){let{specifiers:O}=se;if(O!=null){let K=O.find(we=>{let gt;if(we.type==="ExportSpecifier"?gt=we.local:we.type==="ImportSpecifier"&&(gt=we.imported),gt!==void 0)return gt.type==="Identifier"?gt.name!=="default":gt.value!=="default"});K!==void 0&&this.raise(X.ImportJSONBindingNotDefault,K.loc.start)}}}isPotentialImportPhase(se){return se?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(se,O,K,we){O||(K==="module"?(this.expectPlugin("importReflection",we),se.module=!0):this.hasPlugin("importReflection")&&(se.module=!1),K==="source"?(this.expectPlugin("sourcePhaseImports",we),se.phase="source"):K==="defer"?(this.expectPlugin("deferredImportEvaluation",we),se.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(se.phase=null))}parseMaybeImportPhase(se,O){if(!this.isPotentialImportPhase(O))return this.applyImportPhase(se,O,null),null;let K=this.parseIdentifier(!0),{type:we}=this.state;return(ke(we)?we!==98||this.lookaheadCharCode()===102:we!==12)?(this.resetPreviousIdentifierLeadingComments(K),this.applyImportPhase(se,O,K.name,K.loc.start),null):(this.applyImportPhase(se,O,null),K)}isPrecedingIdImportPhase(se){let{type:O}=this.state;return qr(O)?O!==98||this.lookaheadCharCode()===102:O!==12}parseImport(se){return this.match(134)?this.parseImportSourceAndAttributes(se):this.parseImportSpecifiersAndAfter(se,this.parseMaybeImportPhase(se,!1))}parseImportSpecifiersAndAfter(se,O){se.specifiers=[];let K=!this.maybeParseDefaultImportSpecifier(se,O)||this.eat(12),we=K&&this.maybeParseStarImportSpecifier(se);return K&&!we&&this.parseNamedImportSpecifiers(se),this.expectContextual(98),this.parseImportSourceAndAttributes(se)}parseImportSourceAndAttributes(se){var O;return(O=se.specifiers)!=null||(se.specifiers=[]),se.source=this.parseImportSource(),this.maybeParseImportAttributes(se),this.checkImportReflection(se),this.checkJSONModuleImport(se),this.semicolon(),this.finishNode(se,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(se,O,K){O.local=this.parseIdentifier(),se.specifiers.push(this.finishImportSpecifier(O,K))}finishImportSpecifier(se,O,K=8201){return this.checkLVal(se.local,{type:O},K),this.finishNode(se,O)}parseImportAttributes(){this.expect(5);let se=[],O=new Set;do{if(this.match(8))break;let K=this.startNode(),we=this.state.value;if(O.has(we)&&this.raise(X.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:we}),O.add(we),this.match(134)?K.key=this.parseStringLiteral(we):K.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(X.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return this.expect(8),se}parseModuleAttributes(){let se=[],O=new Set;do{let K=this.startNode();if(K.key=this.parseIdentifier(!0),K.key.name!=="type"&&this.raise(X.ModuleAttributeDifferentFromType,K.key),O.has(K.key.name)&&this.raise(X.ModuleAttributesWithDuplicateKeys,K.key,{key:K.key.name}),O.add(K.key.name),this.expect(14),!this.match(134))throw this.raise(X.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return se}maybeParseImportAttributes(se){let O;var K=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?O=this.parseModuleAttributes():O=this.parseImportAttributes(),K=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(X.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(se,"deprecatedAssertSyntax",!0),this.next(),O=this.parseImportAttributes()):O=[];!K&&this.hasPlugin("importAssertions")?se.assertions=O:se.attributes=O}maybeParseDefaultImportSpecifier(se,O){if(O){let K=this.startNodeAtNode(O);return K.local=O,se.specifiers.push(this.finishImportSpecifier(K,"ImportDefaultSpecifier")),!0}else if(ke(this.state.type))return this.parseImportSpecifierLocal(se,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(se){if(this.match(55)){let O=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(se,O,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(se){let O=!0;for(this.expect(5);!this.eat(8);){if(O)O=!1;else{if(this.eat(14))throw this.raise(X.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let K=this.startNode(),we=this.match(134),gt=this.isContextual(130);K.imported=this.parseModuleExportName();let sr=this.parseImportSpecifier(K,we,se.importKind==="type"||se.importKind==="typeof",gt,void 0);se.specifiers.push(sr)}}parseImportSpecifier(se,O,K,we,gt){if(this.eatContextual(93))se.local=this.parseIdentifier();else{let{imported:sr}=se;if(O)throw this.raise(X.ImportBindingIsString,se,{importName:sr.value});this.checkReservedWord(sr.name,se.loc.start,!0,!0),se.local||(se.local=Zt(sr))}return this.finishImportSpecifier(se,"ImportSpecifier",gt)}isThisParam(se){return se.type==="Identifier"&&se.name==="this"}},fb=class extends Mm{constructor(se,O,K){se=ne(se),super(se,O),this.options=se,this.initializeScopes(),this.plugins=K,this.filename=se.sourceFilename,this.startIndex=se.startIndex;let we=0;se.allowAwaitOutsideFunction&&(we|=1),se.allowReturnOutsideFunction&&(we|=2),se.allowImportExportEverywhere&&(we|=8),se.allowSuperOutsideMethod&&(we|=16),se.allowUndeclaredExports&&(we|=32),se.allowNewTargetOutsideFunction&&(we|=4),se.ranges&&(we|=64),se.tokens&&(we|=128),se.createImportExpressions&&(we|=256),se.createParenthesizedExpressions&&(we|=512),se.errorRecovery&&(we|=1024),se.attachComment&&(we|=2048),se.annexB&&(we|=4096),this.optionFlags=we}getScopeHandler(){return Xu}parse(){this.enterInitialScopes();let se=this.startNode(),O=this.startNode();return this.nextToken(),se.errors=null,this.parseTopLevel(se,O),se.errors=this.state.errors,se.comments.length=this.state.commentsLen,se}};function pe(se,O){var K;if(((K=O)==null?void 0:K.sourceType)==="unambiguous"){O=Object.assign({},O);try{O.sourceType="module";let we=_I(O,se),gt=we.parse();if(we.sawUnambiguousESM)return gt;if(we.ambiguousScriptDifferentAst)try{return O.sourceType="script",_I(O,se).parse()}catch{}else gt.program.sourceType="script";return gt}catch(we){try{return O.sourceType="script",_I(O,se).parse()}catch{}throw we}}else return _I(O,se).parse()}function lm(se,O){let K=_I(O,se);return K.options.strictMode&&(K.state.strict=!0),K.getExpression()}function Kf(se){let O={};for(let K of Object.keys(se))O[K]=zr(se[K]);return O}var CI=Kf(Ar);function _I(se,O){let K=fb,we=new Map;if(se!=null&&se.plugins){for(let gt of se.plugins){let sr,Yr;typeof gt=="string"?sr=gt:[sr,Yr]=gt,we.has(sr)||we.set(sr,Yr||{})}Hp(we),K=iE(we)}return new K(se,O,we)}var H2=new Map;function iE(se){let O=[];for(let gt of nE)se.has(gt)&&O.push(gt);let K=O.join("|"),we=H2.get(K);if(!we){we=fb;for(let gt of O)we=uC[gt](we);H2.set(K,we)}return we}e.parse=pe,e.parseExpression=lm,e.tokTypes=CI}),Eyi={};Z5a(Eyi,{parsers:()=>FRe});var lyi=_yi(yyi(),1);function Hyt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},K0i=b5a;function E5a(e){return Array.isArray(e)&&e.length>0}var CTr=E5a;function tj(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(tj(o),a):a}function Ame(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function S5a(e){let t=new Set(e);return r=>t.has(r?.type)}var v5a=S5a,B5a=v5a(["Block","CommentBlock","MultiLine"]),fTr=B5a;function w5a(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var j0i=w5a;function T5a(e){return fTr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var R5a=T5a,m4e=null;function _4e(e){if(m4e!==null&&typeof m4e.property){let t=m4e;return m4e=_4e.prototype=null,t}return m4e=_4e.prototype=e??Object.create(null),new _4e}var N5a=10;for(let e=0;e<=N5a;e++)_4e();function D5a(e){return _4e(e)}function k5a(e,t="type"){D5a(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var x5a=k5a,G5a={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},F5a=x5a(G5a),Z5a=F5a;function ITr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(R5a)&&a.add(tj(o))}),e=dTr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=tj(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=dTr(e,a=>{switch(a.type){case"LogicalExpression":if(uyi(a))return hTr(a);break;case"VariableDeclaration":{let o=K0i(!1,a.declarations,-1);o!=null&&o.init&&n[Ame(o)]!==";"&&(a.range=[tj(a),Ame(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=tj(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),CTr(e.comments)){let a=K0i(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Ame(l)===tj(a)&&fTr(l)&&fTr(a)&&j0i(l)&&j0i(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[tj(l),Ame(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function uyi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function hTr(e){return uyi(e)?hTr({type:"LogicalExpression",operator:e.operator,left:hTr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[tj(e.left),Ame(e.right.left)]}),right:e.right.right,range:[tj(e),Ame(e)]}):e}var V5a=L5a;function P5a(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var gyi=P5a;function W5a(e){let{message:t,loc:{line:r,column:n},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let l=` (${r}:${n})`;return t.endsWith(l)&&(t=t.slice(0,-l.length)),gyi(t,{loc:{start:{line:r,column:n+1}},cause:o})}var Ayi=W5a,O5a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Wyt=O5a,M5a=/\*\/$/,H5a=/^\/\*\*?/,Y5a=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Q5a=/(^|\s+)\/\/([^\n\r]*)/g,z0i=/^(\r?\n)+/,X5a=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,q0i=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,J5a=/(\r?\n|^) *\* ?/g,U5a=[];function K5a(e){let t=e.match(Y5a);return t?t[0].trimStart():""}function j5a(e){let t=` -`;e=Wyt(!1,e.replace(H5a,"").replace(M5a,""),J5a,"$1");let r="";for(;r!==e;)r=e,e=Wyt(!1,e,X5a,`${t}$1 $2${t}`);e=e.replace(z0i,"").trimEnd();let n=Object.create(null),a=Wyt(!1,e,q0i,"").replace(z0i,"").trimEnd(),o;for(;o=q0i.exec(e);){let l=Wyt(!1,o[2],Q5a,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...U5a,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function z5a(e){let t=lyi(e);t&&(e=e.slice(t.length+1));let r=K5a(e),{pragmas:n,comments:a}=j5a(r);return{shebang:t,text:e,pragmas:n,comments:a}}function q5a(e){let{pragmas:t}=z5a(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function $5a(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:q5a,locStart:tj,locEnd:Ame,...e}}var C4e=$5a;function eMa(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var tMa=eMa;function rMa(e,t){let{type:r="JsExpressionRoot",rootMarker:n,text:a}=t,{tokens:o,comments:l}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:l,type:r,node:e,range:[0,a.length],rootMarker:n}}var dyi=rMa,kRe=e=>C4e(aMa(e)),nMa={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},$0i="v8intrinsic",eyi=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],lee=(e,t=nMa)=>({...t,plugins:[...t.plugins,...e]}),iMa=/@(?:no)?flow\b/u;function sMa(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let n=lyi(e);n&&(e=e.slice(n.length));let a=m5a(e,0);return a!==!1&&(e=e.slice(0,a)),iMa.test(e)}function oMa(e,t,r){let n=e(t,r),a=n.errors.find(o=>!cMa.has(o.reasonCode));if(a)throw a;return n}function aMa({isExpression:e=!1,optionsCombinations:t}){return(r,n={})=>{if((n.parser==="babel"||n.parser==="__babel_estree")&&sMa(r,n))return n.parser="babel-flow",fyi.parse(r,n);let a=t;(n.__babelSourceType??tMa(n))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...eyi,$0i]:eyi).flatMap(f=>a.map(I=>lee([f],I))):o&&(a=a.map(f=>lee([$0i],f)));let l=e?U0i.parseExpression:U0i.parse,A;try{A=_5a(a.map(f=>()=>oMa(l,r,f)))}catch({errors:[f]}){throw Ayi(f)}return e&&(A=dyi(A,{text:r,rootMarker:n.rootMarker})),V5a(A,{parser:"babel",text:r})}}var cMa=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),pyi=[lee(["jsx"])],tyi=kRe({optionsCombinations:pyi}),ryi=kRe({optionsCombinations:[lee(["jsx","typescript"]),lee(["typescript"])]}),nyi=kRe({isExpression:!0,optionsCombinations:[lee(["jsx"])]}),iyi=kRe({isExpression:!0,optionsCombinations:[lee(["typescript"])]}),fyi=kRe({optionsCombinations:[lee(["jsx",["flow",{all:!0}],"flowComments"])]}),lMa=kRe({optionsCombinations:pyi.map(e=>lee(["estree"],e))}),uMa={babel:tyi,"babel-flow":fyi,"babel-ts":ryi,__js_expression:nyi,__ts_expression:iyi,__vue_expression:nyi,__vue_ts_expression:iyi,__vue_event_binding:tyi,__vue_ts_event_binding:ryi,__babel_estree:lMa},gMa=syi(oyi(),1);function Iyi(e={}){let{allowComments:t=!0}=e;return function(r){let n;try{n=(0,gMa.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw Ayi(a)}if(!t&&CTr(n.comments))throw $ae(n.comments[0],"Comment");return DRe(n),dyi(n,{type:"JsonRoot",text:r})}}function $ae(e,t){let[r,n]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return gyi(`${t} is not allowed in JSON.`,{loc:{start:r,end:n}})}function DRe(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&DRe(t);return;case"ObjectExpression":for(let t of e.properties)DRe(t);return;case"ObjectProperty":if(e.computed)throw $ae(e.key,"Computed key");if(e.shorthand)throw $ae(e.key,"Shorthand property");e.key.type!=="Identifier"&&DRe(e.key),DRe(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw $ae(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw $ae(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw $ae(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(CTr(e.expressions))throw $ae(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)DRe(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw $ae(e,`'${e.type}'`)}}var pTr=Iyi(),AMa={json:C4e({parse:pTr,hasPragma(){return!0}}),json5:C4e(pTr),jsonc:C4e(pTr),"json-stringify":C4e({parse:Iyi({allowComments:!1}),astFormat:"estree-json"})},dMa=AMa,xRe={...uMa,...dMa},pMa=cyi;var vme={};sI(vme,{default:()=>SJa,languages:()=>$Ei,options:()=>qEi,printers:()=>zRe});var fMa=Object.defineProperty,Myi=e=>{throw TypeError(e)},tbt=(e,t)=>{for(var r in t)fMa(e,r,{get:t[r],enumerable:!0})},Hyi=(e,t,r)=>t.has(e)||Myi("Cannot "+r),ece=(e,t,r)=>(Hyi(e,t,"read from private field"),r?r.call(e):t.get(e)),IMa=(e,t,r)=>t.has(e)?Myi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),hMa=(e,t,r,n)=>(Hyi(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),Yyi={};tbt(Yyi,{languages:()=>$Ei,options:()=>qEi,printers:()=>zRe});var mMa=[{linguistLanguageId:183,name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],Qyi={};tbt(Qyi,{canAttachComment:()=>SYa,embed:()=>gQa,experimentalFeatures:()=>fJa,getCommentChildNodes:()=>vYa,getVisitorKeys:()=>Kyi,handleComments:()=>Ibi,insertPragma:()=>SQa,isBlockComment:()=>zM,isGap:()=>BYa,massageAstNode:()=>EHa,print:()=>pJa,printComment:()=>MHa,willPrintOwnComments:()=>wbi});var CMa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Zk=CMa,_Ma=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},U0=_Ma;function yMa(e){return e!==null&&typeof e=="object"}var bMa=yMa;function*EMa(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>bMa(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*SMa(e,t){let r=[e];for(let n=0;n/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function wMa(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function TMa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var RMa=e=>!(wMa(e)||TMa(e)),NMa=/[^\x20-\x7F]/u;function DMa(e){if(!e)return 0;if(!NMa.test(e))return e.length;e=e.replace(BMa()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=RMa(n)?1:2)}return t}var PRe=DMa;function rbt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},uyi=z5a;function q5a(e){return Array.isArray(e)&&e.length>0}var STr=q5a;function tj(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(tj(o),a):a}function dme(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function $5a(e){let t=new Set(e);return r=>t.has(r?.type)}var eMa=$5a,tMa=eMa(["Block","CommentBlock","MultiLine"]),_Tr=tMa;function rMa(e){let t=`*${e.value}*`.split(` +`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var gyi=rMa;function nMa(e){return _Tr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var iMa=nMa,_4e=null;function b4e(e){if(_4e!==null&&typeof _4e.property){let t=_4e;return _4e=b4e.prototype=null,t}return _4e=b4e.prototype=e??Object.create(null),new b4e}var sMa=10;for(let e=0;e<=sMa;e++)b4e();function oMa(e){return b4e(e)}function aMa(e,t="type"){oMa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var cMa=aMa,lMa={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},uMa=cMa(lMa),gMa=uMa;function yTr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(iMa)&&a.add(tj(o))}),e=mTr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=tj(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=mTr(e,a=>{switch(a.type){case"LogicalExpression":if(vyi(a))return bTr(a);break;case"VariableDeclaration":{let o=uyi(!1,a.declarations,-1);o!=null&&o.init&&n[dme(o)]!==";"&&(a.range=[tj(a),dme(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=tj(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),STr(e.comments)){let a=uyi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];dme(l)===tj(a)&&_Tr(l)&&_Tr(a)&&gyi(l)&&gyi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[tj(l),dme(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function vyi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function bTr(e){return vyi(e)?bTr({type:"LogicalExpression",operator:e.operator,left:bTr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[tj(e.left),dme(e.right.left)]}),right:e.right.right,range:[tj(e),dme(e)]}):e}var dMa=AMa;function pMa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Byi=pMa;function fMa(e){let{message:t,loc:{line:r,column:n},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let l=` (${r}:${n})`;return t.endsWith(l)&&(t=t.slice(0,-l.length)),Byi(t,{loc:{start:{line:r,column:n+1}},cause:o})}var wyi=fMa,IMa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Myt=IMa,hMa=/\*\/$/,mMa=/^\/\*\*?/,CMa=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,_Ma=/(^|\s+)\/\/([^\n\r]*)/g,Ayi=/^(\r?\n)+/,yMa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,dyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,bMa=/(\r?\n|^) *\* ?/g,EMa=[];function SMa(e){let t=e.match(CMa);return t?t[0].trimStart():""}function vMa(e){let t=` +`;e=Myt(!1,e.replace(mMa,"").replace(hMa,""),bMa,"$1");let r="";for(;r!==e;)r=e,e=Myt(!1,e,yMa,`${t}$1 $2${t}`);e=e.replace(Ayi,"").trimEnd();let n=Object.create(null),a=Myt(!1,e,dyi,"").replace(Ayi,"").trimEnd(),o;for(;o=dyi.exec(e);){let l=Myt(!1,o[2],_Ma,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...EMa,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function BMa(e){let t=Syi(e);t&&(e=e.slice(t.length+1));let r=SMa(e),{pragmas:n,comments:a}=vMa(r);return{shebang:t,text:e,pragmas:n,comments:a}}function wMa(e){let{pragmas:t}=BMa(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function TMa(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:wMa,locStart:tj,locEnd:dme,...e}}var y4e=TMa;function RMa(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var NMa=RMa;function DMa(e,t){let{type:r="JsExpressionRoot",rootMarker:n,text:a}=t,{tokens:o,comments:l}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:l,type:r,node:e,range:[0,a.length],rootMarker:n}}var Tyi=DMa,GRe=e=>y4e(ZMa(e)),kMa={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},pyi="v8intrinsic",fyi=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],uee=(e,t=kMa)=>({...t,plugins:[...t.plugins,...e]}),xMa=/@(?:no)?flow\b/u;function GMa(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let n=Syi(e);n&&(e=e.slice(n.length));let a=J5a(e,0);return a!==!1&&(e=e.slice(0,a)),xMa.test(e)}function FMa(e,t,r){let n=e(t,r),a=n.errors.find(o=>!LMa.has(o.reasonCode));if(a)throw a;return n}function ZMa({isExpression:e=!1,optionsCombinations:t}){return(r,n={})=>{if((n.parser==="babel"||n.parser==="__babel_estree")&&GMa(r,n))return n.parser="babel-flow",Nyi.parse(r,n);let a=t;(n.__babelSourceType??NMa(n))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...fyi,pyi]:fyi).flatMap(f=>a.map(I=>uee([f],I))):o&&(a=a.map(f=>uee([pyi],f)));let l=e?lyi.parseExpression:lyi.parse,A;try{A=K5a(a.map(f=>()=>FMa(l,r,f)))}catch({errors:[f]}){throw wyi(f)}return e&&(A=Tyi(A,{text:r,rootMarker:n.rootMarker})),dMa(A,{parser:"babel",text:r})}}var LMa=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),Ryi=[uee(["jsx"])],Iyi=GRe({optionsCombinations:Ryi}),hyi=GRe({optionsCombinations:[uee(["jsx","typescript"]),uee(["typescript"])]}),myi=GRe({isExpression:!0,optionsCombinations:[uee(["jsx"])]}),Cyi=GRe({isExpression:!0,optionsCombinations:[uee(["typescript"])]}),Nyi=GRe({optionsCombinations:[uee(["jsx",["flow",{all:!0}],"flowComments"])]}),VMa=GRe({optionsCombinations:Ryi.map(e=>uee(["estree"],e))}),PMa={babel:Iyi,"babel-flow":Nyi,"babel-ts":hyi,__js_expression:myi,__ts_expression:Cyi,__vue_expression:myi,__vue_ts_expression:Cyi,__vue_event_binding:Iyi,__vue_ts_event_binding:hyi,__babel_estree:VMa},WMa=_yi(yyi(),1);function Dyi(e={}){let{allowComments:t=!0}=e;return function(r){let n;try{n=(0,WMa.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw wyi(a)}if(!t&&STr(n.comments))throw ece(n.comments[0],"Comment");return xRe(n),Tyi(n,{type:"JsonRoot",text:r})}}function ece(e,t){let[r,n]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return Byi(`${t} is not allowed in JSON.`,{loc:{start:r,end:n}})}function xRe(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&xRe(t);return;case"ObjectExpression":for(let t of e.properties)xRe(t);return;case"ObjectProperty":if(e.computed)throw ece(e.key,"Computed key");if(e.shorthand)throw ece(e.key,"Shorthand property");e.key.type!=="Identifier"&&xRe(e.key),xRe(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw ece(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw ece(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw ece(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(STr(e.expressions))throw ece(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)xRe(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw ece(e,`'${e.type}'`)}}var CTr=Dyi(),OMa={json:y4e({parse:CTr,hasPragma(){return!0}}),json5:y4e(CTr),jsonc:y4e(CTr),"json-stringify":y4e({parse:Dyi({allowComments:!1}),astFormat:"estree-json"})},MMa=OMa,FRe={...PMa,...MMa},HMa=Eyi;var Bme={};sI(Bme,{default:()=>$Ja,languages:()=>p1i,options:()=>d1i,printers:()=>$Re});var YMa=Object.defineProperty,nbi=e=>{throw TypeError(e)},nbt=(e,t)=>{for(var r in t)YMa(e,r,{get:t[r],enumerable:!0})},ibi=(e,t,r)=>t.has(e)||nbi("Cannot "+r),tce=(e,t,r)=>(ibi(e,t,"read from private field"),r?r.call(e):t.get(e)),QMa=(e,t,r)=>t.has(e)?nbi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),XMa=(e,t,r,n)=>(ibi(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),sbi={};nbt(sbi,{languages:()=>p1i,options:()=>d1i,printers:()=>$Re});var JMa=[{linguistLanguageId:183,name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],obi={};nbt(obi,{canAttachComment:()=>$Ya,embed:()=>WQa,experimentalFeatures:()=>YJa,getCommentChildNodes:()=>eQa,getVisitorKeys:()=>ubi,handleComments:()=>Dbi,insertPragma:()=>$Qa,isBlockComment:()=>zM,isGap:()=>tQa,massageAstNode:()=>qHa,print:()=>HJa,printComment:()=>hYa,willPrintOwnComments:()=>Mbi});var UMa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Zk=UMa,KMa=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},U0=KMa;function jMa(e){return e!==null&&typeof e=="object"}var zMa=jMa;function*qMa(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>zMa(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*$Ma(e,t){let r=[e];for(let n=0;n/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function rHa(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function nHa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var iHa=e=>!(rHa(e)||nHa(e)),sHa=/[^\x20-\x7F]/u;function oHa(e){if(!e)return 0;if(!sHa.test(e))return e.length;e=e.replace(tHa()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=iHa(n)?1:2)}return t}var ORe=oHa;function ibt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var H_=PMa,Xyi=new Proxy(()=>{},{get:()=>Xyi}),jTr=Xyi,Myt="'",hyi='"';function WMa(e,t){let r=t===!0||t===Myt?Myt:hyi,n=r===Myt?hyi:Myt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var Jyi=WMa;function OMa(e,t,r){let n=t==='"'?"'":'"',a=Zk(!1,e,/\\(.)|(["'])/gsu,(o,l,A)=>l===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var MMa=OMa;function HMa(e,t){jTr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),n=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":Jyi(r,t.singleQuote);return e.charAt(0)===n?e:MMa(r,n,!1)}var MRe=HMa;function ZS(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(ZS(o),a):a}function BC(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function nbt(e,t){let r=ZS(e);return Number.isInteger(r)&&r===ZS(t)}function YMa(e,t){let r=BC(e);return Number.isInteger(r)&&r===BC(t)}function QMa(e,t){return nbt(e,t)&&YMa(e,t)}var y4e=null;function S4e(e){if(y4e!==null&&typeof y4e.property){let t=y4e;return y4e=S4e.prototype=null,t}return y4e=S4e.prototype=e??Object.create(null),new S4e}var XMa=10;for(let e=0;e<=XMa;e++)S4e();function JMa(e){return S4e(e)}function UMa(e,t="type"){JMa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Uyi=UMa,KMa={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},jMa=Uyi(KMa),Kyi=jMa;function zMa(e){let t=new Set(e);return r=>t.has(r?.type)}var _0=zMa,qMa=_0(["Block","CommentBlock","MultiLine"]),zM=qMa,$Ma=_0(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),jyi=$Ma;function eHa(e,t){let r=t.split(".");for(let n=r.length-1;n>=0;n--){let a=r[n];if(n===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function tHa(e,t){return t.some(r=>eHa(e,r))}var rHa=tHa;function nHa({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var zyi=nHa;function DTr(e,t){return t(e)||vMa(e,{getVisitorKeys:Kyi,predicate:t})}function zTr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||b_(e)||Yv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||nj(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function iHa(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function qyi(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var QRe=_0(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),sHa=_0(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),Vk=_0(["ArrayExpression","TupleExpression"]),e4=_0(["ObjectExpression","RecordExpression"]);function oHa(e){return e.type==="LogicalExpression"&&e.operator==="??"}function uee(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function $yi(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&uee(e.argument)}function gV(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function ebi(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var qTr=_0(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),aHa=_0(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),nce=_0(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),w4e=_0(["FunctionExpression","ArrowFunctionExpression"]);function cHa(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function _Tr(e){return b_(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var nD=_0(["JSXElement","JSXFragment"]);function ibt(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function tbi(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function lHa(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!nbt(e,e.typeAnnotation)}var gee=_0(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function ZRe(e){return Yv(e)||e.type==="BindExpression"&&!!e.object}var uHa=_0(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function $Tr(e){return zyi(e)||jyi(e)||uHa(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function gHa(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var AHa=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function dHa(e){return rHa(e,AHa)}function sbt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=qM(e);if(r.length===1){if(_Tr(e)&&sbt(t))return w4e(r[0]);if(gHa(e.callee))return _Tr(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||gV(r[0]))&&dHa(e.callee))return r[2]&&!uee(r[2])?!1:(r.length===2?w4e(r[1]):cHa(r[1])&&NG(r[1]).length<=1)||_Tr(r[1]);return!1}var rbi=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),b_=rbi(_0(["CallExpression","OptionalCallExpression"])),Yv=rbi(_0(["MemberExpression","OptionalMemberExpression"]));function myi(e,t=5){return nbi(e,t)<=t}function nbi(e,t){let r=0;for(let n in e){let a=e[n];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=nbi(a,t-r)),r>t)return r}return r}var pHa=.25;function eRr(e,t){let{printWidth:r}=t;if(ig(e))return!1;let n=r*pHa;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=n||$yi(e)&&!ig(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=n:gV(e)?MRe(UM(e),t).length<=n:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=n&&!e.quasis[0].value.raw.includes(` -`):e.type==="UnaryExpression"?eRr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=n-2:qTr(e)}function ice(e,t){return nD(t)?obt(t):ig(t,fA.Leading,r=>dO(e,BC(r)))}function Cyi(e){return e.quasis.some(t=>t.value.raw.includes(` -`))}function ibi(e,t){return(e.type==="TemplateLiteral"&&Cyi(e)||e.type==="TaggedTemplateExpression"&&Cyi(e.quasi))&&!dO(t,ZS(e),{backwards:!0})}function sbi(e){if(!ig(e))return!1;let t=U0(!1,VRe(e,fA.Dangling),-1);return t&&!zM(t)}function fHa(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(w4e(r)){if(t+=1,t>1)return!0}else if(b_(r)){for(let n of qM(r))if(w4e(n))return!0}return!1}function obi(e){let{node:t,parent:r,key:n}=e;return n==="callee"&&b_(t)&&b_(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var IHa=new Set(["!","-","+","~"]);function qX(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return qX(e.expression,t);let r=n=>qX(n,t-1);if(ebi(e))return PRe(e.pattern??e.regex.pattern)<=5;if(qTr(e)||aHa(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(n=>!n.value.raw.includes(` -`))&&e.expressions.every(r);if(e4(e))return e.properties.every(n=>!n.computed&&(n.shorthand||n.value&&r(n.value)));if(Vk(e))return e.elements.every(n=>n===null||r(n));if(HRe(e)){if(e.type==="ImportExpression"||qX(e.callee,t)){let n=qM(e);return n.length<=t&&n.every(r)}return!1}return Yv(e)?qX(e.object,t)&&qX(e.property,t):e.type==="UnaryExpression"&&IHa.has(e.operator)||e.type==="UpdateExpression"?qX(e.argument,t):!1}function UM(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function hHa(e){return e}function pee(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function JZ(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return JZ(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return JZ(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:JZ(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:JZ(e.callee,t);case"ConditionalExpression":return JZ(e.test,t);case"UpdateExpression":return!e.prefix&&JZ(e.argument,t);case"BindExpression":return e.object&&JZ(e.object,t);case"SequenceExpression":return JZ(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return JZ(e.expression,t);default:return t(e)}}var _yi={"==":!0,"!=":!0,"===":!0,"!==":!0},Hyt={"*":!0,"/":!0,"%":!0},kTr={">>":!0,">>>":!0,"<<":!0};function tRr(e,t){return!(jyt(t)!==jyt(e)||e==="**"||_yi[e]&&_yi[t]||t==="%"&&Hyt[e]||e==="%"&&Hyt[t]||t!==e&&Hyt[t]&&Hyt[e]||kTr[e]&&kTr[t])}var mHa=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function jyt(e){return mHa.get(e)}function CHa(e){return!!kTr[e]||e==="|"||e==="^"||e==="&"}function _Ha(e){var t;if(e.rest)return!0;let r=NG(e);return((t=U0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var yTr=new WeakMap;function NG(e){if(yTr.has(e))return yTr.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),yTr.set(e,t),t}function yHa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var bTr=new WeakMap;function qM(e){if(bTr.has(e))return bTr.get(e);if(e.type==="ChainExpression")return qM(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),bTr.set(e,t),t}function zyt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>zyt(e,t),"expression");r.type==="ImportExpression"?(e.call(n=>t(n,0),"source"),r.options&&e.call(n=>t(n,1),"options")):e.each(t,"arguments")}function yyi(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function qyt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function obt(e){return e?.prettierIgnore||ig(e,fA.PrettierIgnore)}var fA={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},abi=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,n,a)=>!(e&fA.Leading&&!r.leading||e&fA.Trailing&&!r.trailing||e&fA.Dangling&&(r.leading||r.trailing)||e&fA.Block&&!zM(r)||e&fA.Line&&!QRe(r)||e&fA.First&&n!==0||e&fA.Last&&n!==a.length-1||e&fA.PrettierIgnore&&!qyt(r)||t&&!t(r))};function ig(e,t,r){if(!H_(e?.comments))return!1;let n=abi(t,r);return n?e.comments.some(n):!0}function VRe(e,t,r){if(!Array.isArray(e?.comments))return[];let n=abi(t,r);return n?e.comments.filter(n):e.comments}var fee=(e,{originalText:t})=>KTr(t,BC(e));function HRe(e){return b_(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function Iee(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!ibt(e))}var nj=_0(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),sce=_0(["TSUnionType","UnionTypeAnnotation"]),rRr=_0(["TSIntersectionType","IntersectionTypeAnnotation"]),oce=_0(["TSConditionalType","ConditionalTypeAnnotation"]),bHa=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),FRe=e=>{for(let t of e.quasis)delete t.value};function cbi(e,t,r){var n,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:l}=e;gV(l)||uee(l)?t.key=String(l.value):l.type==="Identifier"&&(t.key=l.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(l=>l.type==="JSXAttribute"&&l.name.name==="jsx"))for(let{type:l,expression:A}of t.children)l==="JSXExpressionContainer"&&A.type==="TemplateLiteral"&&FRe(A);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&FRe(t.value.expression),e.type==="JSXAttribute"&&((n=e.value)==null?void 0:n.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=Zk(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let l=e.expression.arguments[0].properties;for(let[A,f]of t.expression.arguments[0].properties.entries())switch(l[A].key.name){case"styles":Vk(f.value)&&FRe(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&FRe(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&FRe(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(l=>zM(l)&&["GraphQL","HTML"].some(A=>l.value===` ${A} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&FRe(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}cbi.ignoredProperties=bHa;var EHa=cbi,Ime="string",Aee="array",XRe="cursor",hme="indent",mme="align",Cme="trim",KM="group",cce="fill",ij="if-break",_me="indent-if-break",yme="line-suffix",lce="line-suffix-boundary",dV="line",hee="label",mee="break-parent",lbi=new Set([XRe,hme,mme,Cme,KM,cce,ij,_me,yme,lce,dV,hee,mee]);function SHa(e){if(typeof e=="string")return Ime;if(Array.isArray(e))return Aee;if(!e)return;let{type:t}=e;if(lbi.has(t))return t}var uce=SHa,vHa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function BHa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(uce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=vHa([...lbi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var wHa=class extends Error{name="InvalidDocError";constructor(e){super(BHa(e)),this.doc=e}},T4e=wHa,byi={};function THa(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===byi){r(a.pop());continue}r&&a.push(o,byi);let l=uce(o);if(!l)throw new T4e(o);if(t?.(o)!==!1)switch(l){case Aee:case cce:{let A=l===Aee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case ij:a.push(o.flatContents,o.breakContents);break;case KM:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case mme:case hme:case _me:case hee:case yme:a.push(o.contents);break;case Ime:case XRe:case Cme:case lce:case dV:case mee:break;default:throw new T4e(o)}}}var nRr=THa;function JRe(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(uce(o)){case Aee:return t(o.map(n));case cce:return t({...o,parts:o.parts.map(n)});case ij:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case KM:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case mme:case hme:case _me:case hee:case yme:return t({...o,contents:n(o.contents)});case Ime:case XRe:case Cme:case lce:case dV:case mee:return t(o);default:throw new T4e(o)}}}function ubi(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return nRr(e,o),n}function RHa(e){if(e.type===KM&&e.break||e.type===dV&&e.hard||e.type===mee)return!0}function UZ(e){return ubi(e,RHa,!1)}function Eyi(e){if(e.length>0){let t=U0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function NHa(e){let t=new Set,r=[];function n(o){if(o.type===mee&&Eyi(r),o.type===KM){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===KM&&r.pop().break&&Eyi(r)}nRr(e,n,a,!0)}function DHa(e){return e.type===dV&&!e.hard?e.soft?"":" ":e.type===ij?e.flatContents:e}function xTr(e){return JRe(e,DHa)}function kHa(e){switch(uce(e)){case cce:if(e.parts.every(t=>t===""))return"";break;case KM:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===KM&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case mme:case hme:case _me:case yme:if(!e.contents)return"";break;case ij:if(!e.flatContents&&!e.breakContents)return"";break;case Aee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof U0(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case Ime:case XRe:case Cme:case lce:case dV:case hee:case mee:break;default:throw new T4e(e)}return e}function iRr(e){return JRe(e,t=>kHa(t))}function pme(e,t=fbi){return JRe(e,r=>typeof r=="string"?vC(t,r.split(` -`)):r)}function xHa(e){if(e.type===dV)return!0}function GHa(e){return ubi(e,xHa,!1)}function GTr(e,t){return e.type===hee?{...e,contents:t(e.contents)}:t(e)}function FHa(e){let t=!0;return nRr(e,r=>{switch(uce(r)){case Ime:if(r==="")break;case Cme:case lce:case dV:case mee:return t=!1,!1}}),t}var sRr=()=>{},sj=sRr,gbi=sRr,ZHa=sRr;function Pl(e){return sj(e),{type:hme,contents:e}}function oj(e,t){return sj(t),{type:mme,contents:t,n:e}}function Ia(e,t={}){return sj(e),gbi(t.expandedStates,!0),{type:KM,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function LHa(e){return oj(Number.NEGATIVE_INFINITY,e)}function Abi(e){return oj(-1,e)}function dme(e,t){return Ia(e[0],{...t,expandedStates:e})}function dbi(e){return ZHa(e),{type:cce,parts:e}}function lh(e,t="",r={}){return sj(e),t!==""&&sj(t),{type:ij,breakContents:e,flatContents:t,groupId:r.groupId}}function abt(e,t){return sj(e),{type:_me,contents:e,groupId:t.groupId,negate:t.negate}}function Syi(e){return sj(e),{type:yme,contents:e}}var dee={type:lce},aj={type:mee},pbi={type:dV,hard:!0},VHa={type:dV,hard:!0,literal:!0},zg={type:dV},bl={type:dV,soft:!0},xl=[pbi,aj],fbi=[VHa,aj],Yyt={type:XRe};function vC(e,t){sj(e),gbi(t);let r=[];for(let n=0;n0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var OHa=WHa;function MHa(e,t){let r=e.node;if(QRe(r))return t.originalText.slice(ZS(r),BC(r)).trimEnd();if(zM(r))return OHa(r)?HHa(r):["/*",pme(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function HHa(e){let t=e.value.split(` -`);return["/*",vC(xl,t.map((r,n)=>n===0?r.trimEnd():" "+(njHa,ownLine:()=>KHa,remaining:()=>zHa});function YHa(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function oRr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=YHa(e)}function Pk(e,t){t.leading=!0,t.trailing=!1,oRr(e,t)}function jM(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),oRr(e,t)}function D2(e,t){t.leading=!1,t.trailing=!0,oRr(e,t)}function QHa(e,t){let r=null,n=t;for(;n!==r;)r=n,n=WRe(e,n),n=JTr(e,n),n=UTr(e,n),n=ORe(e,n);return n}var URe=QHa;function XHa(e,t){let r=URe(e,t);return r===!1?"":e.charAt(r)}var t4=XHa;function JHa(e,t,r){for(let n=t;nt(e))}function jHa(e){return[qHa,bbi,Cbi,Sbi,aRr,cRr,mbi,_bi,Ebi,lYa,gYa,uRr,IYa,lRr,CYa,_Ya,bYa].some(t=>t(e))}function zHa(e){return[vbi,aRr,cRr,tYa,aYa,ybi,uRr,oYa,sYa,mYa,lRr,hYa].some(t=>t(e))}function bme(e,t){let r=(e.body||e.properties).find(({type:n})=>n!=="EmptyStatement");r?Pk(r,t):jM(e,t)}function FTr(e,t){e.type==="BlockStatement"?bme(e,t):Pk(e,t)}function qHa({comment:e,followingNode:t}){return t&&hbi(e)?(Pk(t,e),!0):!1}function aRr({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){if(r?.type!=="IfStatement"||!n)return!1;if(t4(a,BC(e))===")")return D2(t,e),!0;if(t===r.consequent&&n===r.alternate){let o=URe(a,BC(r.consequent));if(ZS(e)"?(jM(t,e),!0):!1}function aYa({comment:e,enclosingNode:t,text:r}){return t4(r,BC(e))!==")"?!1:t&&(Bbi(t)&&NG(t).length===0||HRe(t)&&qM(t).length===0)?(jM(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&NG(t.value).length===0?(jM(t.value,e),!0):!1}function cYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&n?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&t4(a,BC(e))===")"?(D2(t,e),!0):!1}function bbi({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&n?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Bbi(r)&&t4(a,BC(e))===")"?(D2(t,e),!0):!zM(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&n?.type==="BlockStatement"&&r.body===n&&URe(a,BC(e))===ZS(n)?(bme(n,e),!0):!1}function Ebi({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(Pk(t,e),!0):!1}function lRr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(D2(t,e),!0):!1}function lYa({comment:e,precedingNode:t,enclosingNode:r}){return b_(r)&&t&&r.callee===t&&r.arguments.length>0?(Pk(r.arguments[0],e),!0):!1}function uYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return sce(r)?(qyt(e)&&(n.prettierIgnore=!0,e.unignore=!0),t?(D2(t,e),!0):!1):(sce(n)&&qyt(e)&&(n.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function gYa({comment:e,enclosingNode:t}){return Iee(t)?(Pk(t,e),!0):!1}function uRr({comment:e,enclosingNode:t,ast:r,isLastComment:n}){var a;return((a=r?.body)==null?void 0:a.length)===0?(n?jM(r,e):Pk(r,e),!0):t?.type==="Program"&&t.body.length===0&&!H_(t.directives)?(n?jM(t,e):Pk(t,e),!0):!1}function AYa({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(Pk(t,e),!0):!1}function Sbi({comment:e,precedingNode:t,enclosingNode:r,text:n}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return Pk(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&dO(n,BC(e))?(D2(t,e),!0):!1}function dYa({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(Pk(t,e),!0):!1}var pYa=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),fYa=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function IYa({comment:e,enclosingNode:t,followingNode:r}){return pYa.has(t?.type)&&r&&(fYa.has(r.type)||zM(e))?(Pk(r,e),!0):!1}function hYa({comment:e,enclosingNode:t,followingNode:r,text:n}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&t4(n,BC(e))===";"?(D2(t,e),!0):!1}function vbi({comment:e,enclosingNode:t,followingNode:r}){if(qyt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function mYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return r?.type!=="TSMappedType"?!1:n?.type==="TSTypeParameter"&&n.name?(Pk(n.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(D2(t.constraint,e),!0):!1}function CYa({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&QRe(e)?bme(r,e):jM(t,e),!0)}function _Ya({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return sce(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!n||rRr(r))?(D2(U0(!1,t.types,-1),e),!0):!1}function yYa({comment:e,enclosingNode:t,precedingNode:r,followingNode:n}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&n?.type==="TSTypeAnnotation")return r?D2(r,e):jM(t,e),!0}function bYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){var a;if(!n&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,l=QRe(e)||e.loc.start.line===e.loc.end.line,A=e.loc.start.line===t.right.loc.start.line;if(o&&l&&A)return D2(t.right,e),!0}return!1}var Bbi=_0(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),EYa=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function SYa(e){return!EYa.has(e.type)}function vYa(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&NG(e.value).length===0&&!e.value.returnType&&!H_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function wbi(e){let{node:t,parent:r}=e;return(nD(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||sce(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!obt(t)||sce(r))}function BYa(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=Zk(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function wYa(e){switch(e){case"cr":return"\r";case"crlf":return`\r +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var HRe=lHa;function uHa(e,t,r={}){let n=MRe(e,r.backwards?t-1:t,r),a=HRe(e,n,r);return n!==a}var dO=uHa;function gHa(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r0}var H_=pHa,abi=new Proxy(()=>{},{get:()=>abi}),tRr=abi,Yyt="'",kyi='"';function fHa(e,t){let r=t===!0||t===Yyt?Yyt:kyi,n=r===Yyt?kyi:Yyt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var cbi=fHa;function IHa(e,t,r){let n=t==='"'?"'":'"',a=Zk(!1,e,/\\(.)|(["'])/gsu,(o,l,A)=>l===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var hHa=IHa;function mHa(e,t){tRr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),n=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":cbi(r,t.singleQuote);return e.charAt(0)===n?e:hHa(r,n,!1)}var YRe=mHa;function ZS(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(ZS(o),a):a}function BC(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function sbt(e,t){let r=ZS(e);return Number.isInteger(r)&&r===ZS(t)}function CHa(e,t){let r=BC(e);return Number.isInteger(r)&&r===BC(t)}function _Ha(e,t){return sbt(e,t)&&CHa(e,t)}var E4e=null;function B4e(e){if(E4e!==null&&typeof E4e.property){let t=E4e;return E4e=B4e.prototype=null,t}return E4e=B4e.prototype=e??Object.create(null),new B4e}var yHa=10;for(let e=0;e<=yHa;e++)B4e();function bHa(e){return B4e(e)}function EHa(e,t="type"){bHa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var lbi=EHa,SHa={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},vHa=lbi(SHa),ubi=vHa;function BHa(e){let t=new Set(e);return r=>t.has(r?.type)}var _0=BHa,wHa=_0(["Block","CommentBlock","MultiLine"]),zM=wHa,THa=_0(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),gbi=THa;function RHa(e,t){let r=t.split(".");for(let n=r.length-1;n>=0;n--){let a=r[n];if(n===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function NHa(e,t){return t.some(r=>RHa(e,r))}var DHa=NHa;function kHa({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var Abi=kHa;function ZTr(e,t){return t(e)||eHa(e,{getVisitorKeys:ubi,predicate:t})}function rRr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||b_(e)||Yv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||nj(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function xHa(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function dbi(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var JRe=_0(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),GHa=_0(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),Vk=_0(["ArrayExpression","TupleExpression"]),e4=_0(["ObjectExpression","RecordExpression"]);function FHa(e){return e.type==="LogicalExpression"&&e.operator==="??"}function gee(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function pbi(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&gee(e.argument)}function gV(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function fbi(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var nRr=_0(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),ZHa=_0(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),ice=_0(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),R4e=_0(["FunctionExpression","ArrowFunctionExpression"]);function LHa(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function vTr(e){return b_(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var nD=_0(["JSXElement","JSXFragment"]);function obt(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function Ibi(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function VHa(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!sbt(e,e.typeAnnotation)}var Aee=_0(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function VRe(e){return Yv(e)||e.type==="BindExpression"&&!!e.object}var PHa=_0(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function iRr(e){return Abi(e)||gbi(e)||PHa(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function WHa(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var OHa=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function MHa(e){return DHa(e,OHa)}function abt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=qM(e);if(r.length===1){if(vTr(e)&&abt(t))return R4e(r[0]);if(WHa(e.callee))return vTr(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||gV(r[0]))&&MHa(e.callee))return r[2]&&!gee(r[2])?!1:(r.length===2?R4e(r[1]):LHa(r[1])&&NG(r[1]).length<=1)||vTr(r[1]);return!1}var hbi=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),b_=hbi(_0(["CallExpression","OptionalCallExpression"])),Yv=hbi(_0(["MemberExpression","OptionalMemberExpression"]));function xyi(e,t=5){return mbi(e,t)<=t}function mbi(e,t){let r=0;for(let n in e){let a=e[n];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=mbi(a,t-r)),r>t)return r}return r}var HHa=.25;function sRr(e,t){let{printWidth:r}=t;if(ig(e))return!1;let n=r*HHa;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=n||pbi(e)&&!ig(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=n:gV(e)?YRe(UM(e),t).length<=n:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=n&&!e.quasis[0].value.raw.includes(` +`):e.type==="UnaryExpression"?sRr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=n-2:nRr(e)}function sce(e,t){return nD(t)?cbt(t):ig(t,fA.Leading,r=>dO(e,BC(r)))}function Gyi(e){return e.quasis.some(t=>t.value.raw.includes(` +`))}function Cbi(e,t){return(e.type==="TemplateLiteral"&&Gyi(e)||e.type==="TaggedTemplateExpression"&&Gyi(e.quasi))&&!dO(t,ZS(e),{backwards:!0})}function _bi(e){if(!ig(e))return!1;let t=U0(!1,WRe(e,fA.Dangling),-1);return t&&!zM(t)}function YHa(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(R4e(r)){if(t+=1,t>1)return!0}else if(b_(r)){for(let n of qM(r))if(R4e(n))return!0}return!1}function ybi(e){let{node:t,parent:r,key:n}=e;return n==="callee"&&b_(t)&&b_(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var QHa=new Set(["!","-","+","~"]);function qX(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return qX(e.expression,t);let r=n=>qX(n,t-1);if(fbi(e))return ORe(e.pattern??e.regex.pattern)<=5;if(nRr(e)||ZHa(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(n=>!n.value.raw.includes(` +`))&&e.expressions.every(r);if(e4(e))return e.properties.every(n=>!n.computed&&(n.shorthand||n.value&&r(n.value)));if(Vk(e))return e.elements.every(n=>n===null||r(n));if(QRe(e)){if(e.type==="ImportExpression"||qX(e.callee,t)){let n=qM(e);return n.length<=t&&n.every(r)}return!1}return Yv(e)?qX(e.object,t)&&qX(e.property,t):e.type==="UnaryExpression"&&QHa.has(e.operator)||e.type==="UpdateExpression"?qX(e.argument,t):!1}function UM(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function XHa(e){return e}function fee(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function JZ(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return JZ(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return JZ(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:JZ(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:JZ(e.callee,t);case"ConditionalExpression":return JZ(e.test,t);case"UpdateExpression":return!e.prefix&&JZ(e.argument,t);case"BindExpression":return e.object&&JZ(e.object,t);case"SequenceExpression":return JZ(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return JZ(e.expression,t);default:return t(e)}}var Fyi={"==":!0,"!=":!0,"===":!0,"!==":!0},Qyt={"*":!0,"/":!0,"%":!0},LTr={">>":!0,">>>":!0,"<<":!0};function oRr(e,t){return!(qyt(t)!==qyt(e)||e==="**"||Fyi[e]&&Fyi[t]||t==="%"&&Qyt[e]||e==="%"&&Qyt[t]||t!==e&&Qyt[t]&&Qyt[e]||LTr[e]&<r[t])}var JHa=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function qyt(e){return JHa.get(e)}function UHa(e){return!!LTr[e]||e==="|"||e==="^"||e==="&"}function KHa(e){var t;if(e.rest)return!0;let r=NG(e);return((t=U0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var BTr=new WeakMap;function NG(e){if(BTr.has(e))return BTr.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),BTr.set(e,t),t}function jHa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var wTr=new WeakMap;function qM(e){if(wTr.has(e))return wTr.get(e);if(e.type==="ChainExpression")return qM(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),wTr.set(e,t),t}function $yt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>$yt(e,t),"expression");r.type==="ImportExpression"?(e.call(n=>t(n,0),"source"),r.options&&e.call(n=>t(n,1),"options")):e.each(t,"arguments")}function Zyi(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function ebt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function cbt(e){return e?.prettierIgnore||ig(e,fA.PrettierIgnore)}var fA={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},bbi=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,n,a)=>!(e&fA.Leading&&!r.leading||e&fA.Trailing&&!r.trailing||e&fA.Dangling&&(r.leading||r.trailing)||e&fA.Block&&!zM(r)||e&fA.Line&&!JRe(r)||e&fA.First&&n!==0||e&fA.Last&&n!==a.length-1||e&fA.PrettierIgnore&&!ebt(r)||t&&!t(r))};function ig(e,t,r){if(!H_(e?.comments))return!1;let n=bbi(t,r);return n?e.comments.some(n):!0}function WRe(e,t,r){if(!Array.isArray(e?.comments))return[];let n=bbi(t,r);return n?e.comments.filter(n):e.comments}var Iee=(e,{originalText:t})=>eRr(t,BC(e));function QRe(e){return b_(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function hee(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!obt(e))}var nj=_0(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),oce=_0(["TSUnionType","UnionTypeAnnotation"]),aRr=_0(["TSIntersectionType","IntersectionTypeAnnotation"]),ace=_0(["TSConditionalType","ConditionalTypeAnnotation"]),zHa=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),LRe=e=>{for(let t of e.quasis)delete t.value};function Ebi(e,t,r){var n,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:l}=e;gV(l)||gee(l)?t.key=String(l.value):l.type==="Identifier"&&(t.key=l.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(l=>l.type==="JSXAttribute"&&l.name.name==="jsx"))for(let{type:l,expression:A}of t.children)l==="JSXExpressionContainer"&&A.type==="TemplateLiteral"&&LRe(A);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&LRe(t.value.expression),e.type==="JSXAttribute"&&((n=e.value)==null?void 0:n.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=Zk(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let l=e.expression.arguments[0].properties;for(let[A,f]of t.expression.arguments[0].properties.entries())switch(l[A].key.name){case"styles":Vk(f.value)&&LRe(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&LRe(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&LRe(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(l=>zM(l)&&["GraphQL","HTML"].some(A=>l.value===` ${A} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&LRe(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}Ebi.ignoredProperties=zHa;var qHa=Ebi,hme="string",dee="array",URe="cursor",mme="indent",Cme="align",_me="trim",KM="group",lce="fill",ij="if-break",yme="indent-if-break",bme="line-suffix",uce="line-suffix-boundary",dV="line",mee="label",Cee="break-parent",Sbi=new Set([URe,mme,Cme,_me,KM,lce,ij,yme,bme,uce,dV,mee,Cee]);function $Ha(e){if(typeof e=="string")return hme;if(Array.isArray(e))return dee;if(!e)return;let{type:t}=e;if(Sbi.has(t))return t}var gce=$Ha,eYa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function tYa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(gce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=eYa([...Sbi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var rYa=class extends Error{name="InvalidDocError";constructor(e){super(tYa(e)),this.doc=e}},N4e=rYa,Lyi={};function nYa(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===Lyi){r(a.pop());continue}r&&a.push(o,Lyi);let l=gce(o);if(!l)throw new N4e(o);if(t?.(o)!==!1)switch(l){case dee:case lce:{let A=l===dee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case ij:a.push(o.flatContents,o.breakContents);break;case KM:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Cme:case mme:case yme:case mee:case bme:a.push(o.contents);break;case hme:case URe:case _me:case uce:case dV:case Cee:break;default:throw new N4e(o)}}}var cRr=nYa;function KRe(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(gce(o)){case dee:return t(o.map(n));case lce:return t({...o,parts:o.parts.map(n)});case ij:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case KM:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Cme:case mme:case yme:case mee:case bme:return t({...o,contents:n(o.contents)});case hme:case URe:case _me:case uce:case dV:case Cee:return t(o);default:throw new N4e(o)}}}function vbi(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return cRr(e,o),n}function iYa(e){if(e.type===KM&&e.break||e.type===dV&&e.hard||e.type===Cee)return!0}function UZ(e){return vbi(e,iYa,!1)}function Vyi(e){if(e.length>0){let t=U0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function sYa(e){let t=new Set,r=[];function n(o){if(o.type===Cee&&Vyi(r),o.type===KM){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===KM&&r.pop().break&&Vyi(r)}cRr(e,n,a,!0)}function oYa(e){return e.type===dV&&!e.hard?e.soft?"":" ":e.type===ij?e.flatContents:e}function VTr(e){return KRe(e,oYa)}function aYa(e){switch(gce(e)){case lce:if(e.parts.every(t=>t===""))return"";break;case KM:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===KM&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Cme:case mme:case yme:case bme:if(!e.contents)return"";break;case ij:if(!e.flatContents&&!e.breakContents)return"";break;case dee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof U0(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case hme:case URe:case _me:case uce:case dV:case mee:case Cee:break;default:throw new N4e(e)}return e}function lRr(e){return KRe(e,t=>aYa(t))}function fme(e,t=Nbi){return KRe(e,r=>typeof r=="string"?vC(t,r.split(` +`)):r)}function cYa(e){if(e.type===dV)return!0}function lYa(e){return vbi(e,cYa,!1)}function PTr(e,t){return e.type===mee?{...e,contents:t(e.contents)}:t(e)}function uYa(e){let t=!0;return cRr(e,r=>{switch(gce(r)){case hme:if(r==="")break;case _me:case uce:case dV:case Cee:return t=!1,!1}}),t}var uRr=()=>{},sj=uRr,Bbi=uRr,gYa=uRr;function Pl(e){return sj(e),{type:mme,contents:e}}function oj(e,t){return sj(t),{type:Cme,contents:t,n:e}}function Ia(e,t={}){return sj(e),Bbi(t.expandedStates,!0),{type:KM,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function AYa(e){return oj(Number.NEGATIVE_INFINITY,e)}function wbi(e){return oj(-1,e)}function pme(e,t){return Ia(e[0],{...t,expandedStates:e})}function Tbi(e){return gYa(e),{type:lce,parts:e}}function lh(e,t="",r={}){return sj(e),t!==""&&sj(t),{type:ij,breakContents:e,flatContents:t,groupId:r.groupId}}function lbt(e,t){return sj(e),{type:yme,contents:e,groupId:t.groupId,negate:t.negate}}function Pyi(e){return sj(e),{type:bme,contents:e}}var pee={type:uce},aj={type:Cee},Rbi={type:dV,hard:!0},dYa={type:dV,hard:!0,literal:!0},zg={type:dV},bl={type:dV,soft:!0},xl=[Rbi,aj],Nbi=[dYa,aj],Xyt={type:URe};function vC(e,t){sj(e),Bbi(t);let r=[];for(let n=0;n0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var IYa=fYa;function hYa(e,t){let r=e.node;if(JRe(r))return t.originalText.slice(ZS(r),BC(r)).trimEnd();if(zM(r))return IYa(r)?mYa(r):["/*",fme(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function mYa(e){let t=e.value.split(` +`);return["/*",vC(xl,t.map((r,n)=>n===0?r.trimEnd():" "+(nvYa,ownLine:()=>SYa,remaining:()=>BYa});function CYa(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function gRr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=CYa(e)}function Pk(e,t){t.leading=!0,t.trailing=!1,gRr(e,t)}function jM(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),gRr(e,t)}function D2(e,t){t.leading=!1,t.trailing=!0,gRr(e,t)}function _Ya(e,t){let r=null,n=t;for(;n!==r;)r=n,n=MRe(e,n),n=qTr(e,n),n=$Tr(e,n),n=HRe(e,n);return n}var jRe=_Ya;function yYa(e,t){let r=jRe(e,t);return r===!1?"":e.charAt(r)}var t4=yYa;function bYa(e,t,r){for(let n=t;nt(e))}function vYa(e){return[wYa,Lbi,Gbi,Pbi,ARr,dRr,xbi,Fbi,Vbi,VYa,WYa,fRr,QYa,pRr,UYa,KYa,zYa].some(t=>t(e))}function BYa(e){return[Wbi,ARr,dRr,NYa,ZYa,Zbi,fRr,FYa,GYa,JYa,pRr,XYa].some(t=>t(e))}function Eme(e,t){let r=(e.body||e.properties).find(({type:n})=>n!=="EmptyStatement");r?Pk(r,t):jM(e,t)}function WTr(e,t){e.type==="BlockStatement"?Eme(e,t):Pk(e,t)}function wYa({comment:e,followingNode:t}){return t&&kbi(e)?(Pk(t,e),!0):!1}function ARr({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){if(r?.type!=="IfStatement"||!n)return!1;if(t4(a,BC(e))===")")return D2(t,e),!0;if(t===r.consequent&&n===r.alternate){let o=jRe(a,BC(r.consequent));if(ZS(e)"?(jM(t,e),!0):!1}function ZYa({comment:e,enclosingNode:t,text:r}){return t4(r,BC(e))!==")"?!1:t&&(Obi(t)&&NG(t).length===0||QRe(t)&&qM(t).length===0)?(jM(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&NG(t.value).length===0?(jM(t.value,e),!0):!1}function LYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&n?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&t4(a,BC(e))===")"?(D2(t,e),!0):!1}function Lbi({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&n?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Obi(r)&&t4(a,BC(e))===")"?(D2(t,e),!0):!zM(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&n?.type==="BlockStatement"&&r.body===n&&jRe(a,BC(e))===ZS(n)?(Eme(n,e),!0):!1}function Vbi({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(Pk(t,e),!0):!1}function pRr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(D2(t,e),!0):!1}function VYa({comment:e,precedingNode:t,enclosingNode:r}){return b_(r)&&t&&r.callee===t&&r.arguments.length>0?(Pk(r.arguments[0],e),!0):!1}function PYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return oce(r)?(ebt(e)&&(n.prettierIgnore=!0,e.unignore=!0),t?(D2(t,e),!0):!1):(oce(n)&&ebt(e)&&(n.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function WYa({comment:e,enclosingNode:t}){return hee(t)?(Pk(t,e),!0):!1}function fRr({comment:e,enclosingNode:t,ast:r,isLastComment:n}){var a;return((a=r?.body)==null?void 0:a.length)===0?(n?jM(r,e):Pk(r,e),!0):t?.type==="Program"&&t.body.length===0&&!H_(t.directives)?(n?jM(t,e):Pk(t,e),!0):!1}function OYa({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(Pk(t,e),!0):!1}function Pbi({comment:e,precedingNode:t,enclosingNode:r,text:n}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return Pk(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&dO(n,BC(e))?(D2(t,e),!0):!1}function MYa({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(Pk(t,e),!0):!1}var HYa=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),YYa=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function QYa({comment:e,enclosingNode:t,followingNode:r}){return HYa.has(t?.type)&&r&&(YYa.has(r.type)||zM(e))?(Pk(r,e),!0):!1}function XYa({comment:e,enclosingNode:t,followingNode:r,text:n}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&t4(n,BC(e))===";"?(D2(t,e),!0):!1}function Wbi({comment:e,enclosingNode:t,followingNode:r}){if(ebt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function JYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return r?.type!=="TSMappedType"?!1:n?.type==="TSTypeParameter"&&n.name?(Pk(n.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(D2(t.constraint,e),!0):!1}function UYa({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&JRe(e)?Eme(r,e):jM(t,e),!0)}function KYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return oce(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!n||aRr(r))?(D2(U0(!1,t.types,-1),e),!0):!1}function jYa({comment:e,enclosingNode:t,precedingNode:r,followingNode:n}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&n?.type==="TSTypeAnnotation")return r?D2(r,e):jM(t,e),!0}function zYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){var a;if(!n&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,l=JRe(e)||e.loc.start.line===e.loc.end.line,A=e.loc.start.line===t.right.loc.start.line;if(o&&l&&A)return D2(t.right,e),!0}return!1}var Obi=_0(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),qYa=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function $Ya(e){return!qYa.has(e.type)}function eQa(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&NG(e.value).length===0&&!e.value.returnType&&!H_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function Mbi(e){let{node:t,parent:r}=e;return(nD(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||oce(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!cbt(t)||oce(r))}function tQa(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=Zk(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function rQa(e){switch(e){case"cr":return"\r";case"crlf":return`\r `;default:return` -`}}var uV=Symbol("MODE_BREAK"),rj=Symbol("MODE_FLAT"),LRe=Symbol("cursor"),ZTr=Symbol("DOC_FILL_PRINTED_LENGTH");function Tbi(){return{value:"",length:0,queue:[]}}function TYa(e,t){return LTr(e,{type:"indent"},t)}function RYa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Tbi():t<0?LTr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:LTr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function LTr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function VTr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===LRe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(LRe);return t}function Qyt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=uce(C);switch(b){case Ime:f.push(C),r-=PRe(C);break;case Aee:case cce:{let E=b===Aee?C:C.parts,N=C[ZTr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case hme:case mme:case _me:case hee:A.push({mode:I,doc:C.contents});break;case Cme:r+=VTr(f);break;case KM:{if(o&&C.break)return!1;let E=C.break?uV:I,N=C.expandedStates&&E===uV?U0(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case ij:{let E=(C.groupId?a[C.groupId]||rj:I)===uV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case dV:if(I===uV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case yme:n=!0;break;case lce:if(n)return!1;break}}return!1}function Rbi(e,t){let r={},n=t.printWidth,a=wYa(t.endOfLine),o=0,l=[{ind:Tbi(),mode:uV,doc:e}],A=[],f=!1,I=[],C=0;for(NHa(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(uce(B)){case Ime:{let F=a!==` +`}}var uV=Symbol("MODE_BREAK"),rj=Symbol("MODE_FLAT"),PRe=Symbol("cursor"),OTr=Symbol("DOC_FILL_PRINTED_LENGTH");function Hbi(){return{value:"",length:0,queue:[]}}function nQa(e,t){return MTr(e,{type:"indent"},t)}function iQa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Hbi():t<0?MTr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:MTr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function MTr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function HTr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===PRe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(PRe);return t}function Jyt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=gce(C);switch(b){case hme:f.push(C),r-=ORe(C);break;case dee:case lce:{let E=b===dee?C:C.parts,N=C[OTr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case mme:case Cme:case yme:case mee:A.push({mode:I,doc:C.contents});break;case _me:r+=HTr(f);break;case KM:{if(o&&C.break)return!1;let E=C.break?uV:I,N=C.expandedStates&&E===uV?U0(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case ij:{let E=(C.groupId?a[C.groupId]||rj:I)===uV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case dV:if(I===uV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case bme:n=!0;break;case uce:if(n)return!1;break}}return!1}function Ybi(e,t){let r={},n=t.printWidth,a=rQa(t.endOfLine),o=0,l=[{ind:Hbi(),mode:uV,doc:e}],A=[],f=!1,I=[],C=0;for(sYa(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(gce(B)){case hme:{let F=a!==` `?Zk(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=PRe(F));break}case Aee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case XRe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(LRe),C++;break;case hme:l.push({ind:TYa(E,t),mode:N,doc:B.contents});break;case mme:l.push({ind:RYa(E,B.n,t),mode:N,doc:B.contents});break;case Cme:o-=VTr(A);break;case KM:switch(N){case rj:if(!f){l.push({ind:E,mode:B.break?uV:rj,doc:B.contents});break}case uV:{f=!1;let F={ind:E,mode:rj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&Qyt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=U0(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:uV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:uV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:rj,doc:ce};if(Qyt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:uV,doc:B.contents});break}}B.id&&(r[B.id]=U0(!1,l,-1).mode);break;case cce:{let F=n-o,Q=B[ZTr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:rj,doc:ne},ue={ind:E,mode:uV,doc:ne},de=Qyt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:rj,doc:ce},Se={ind:E,mode:uV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[ZTr]:Q+2}};Qyt({ind:E,mode:rj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case ij:case _me:{let F=B.groupId?r[B.groupId]:N;if(F===uV){let Q=B.type===ij?B.breakContents:B.negate?B.contents:Pl(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===rj){let Q=B.type===ij?B.flatContents:B.negate?Pl(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case yme:I.push({ind:E,mode:N,doc:B.contents});break;case lce:I.length>0&&l.push({ind:E,mode:N,doc:pbi});break;case dV:switch(N){case rj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case uV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=VTr(A),A.push(a+E.value),o=E.length);break}break;case hee:l.push({ind:E,mode:N,doc:B.contents});break;case mee:break;default:throw new T4e(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(LRe);if(b!==-1){let E=A.indexOf(LRe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==LRe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function NYa(e,t,r=0){let n=0;for(let a=r;a{if(o.push(t()),I.tail)return;let{tabWidth:C}=r,b=I.value.raw,E=b.includes(` -`)?xYa(b,C):A;A=E;let N=l[f],B=n[a][f],F=ace(r.originalText,BC(I),ZS(n.quasis[f+1]));if(!F){let X=Rbi(N,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;X.includes(` -`)?F=!0:N=X}F&&(ig(B)||B.type==="Identifier"||Yv(B)||B.type==="ConditionalExpression"||B.type==="SequenceExpression"||nj(B)||gee(B))&&(N=[Pl([bl,N]),bl]);let Q=E===0&&b.endsWith(` -`)?oj(Number.NEGATIVE_INFINITY,N):PHa(N,E,C);o.push(Ia(["${",Q,dee,"}"]))},"quasis"),o.push("`"),o}function GYa(e,t){let r=t("quasi");return D4e(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),dee,r])}function FYa(e,t,r){let{node:n}=e,a=n.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let l=[],A=o.map(E=>"${"+Rbi(E,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let E=1;E0&&(o+=ORe(F));break}case dee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case URe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(PRe),C++;break;case mme:l.push({ind:nQa(E,t),mode:N,doc:B.contents});break;case Cme:l.push({ind:iQa(E,B.n,t),mode:N,doc:B.contents});break;case _me:o-=HTr(A);break;case KM:switch(N){case rj:if(!f){l.push({ind:E,mode:B.break?uV:rj,doc:B.contents});break}case uV:{f=!1;let F={ind:E,mode:rj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&Jyt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=U0(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:uV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:uV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:rj,doc:ce};if(Jyt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:uV,doc:B.contents});break}}B.id&&(r[B.id]=U0(!1,l,-1).mode);break;case lce:{let F=n-o,Q=B[OTr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:rj,doc:ne},ue={ind:E,mode:uV,doc:ne},de=Jyt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:rj,doc:ce},Se={ind:E,mode:uV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[OTr]:Q+2}};Jyt({ind:E,mode:rj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case ij:case yme:{let F=B.groupId?r[B.groupId]:N;if(F===uV){let Q=B.type===ij?B.breakContents:B.negate?B.contents:Pl(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===rj){let Q=B.type===ij?B.flatContents:B.negate?Pl(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case bme:I.push({ind:E,mode:N,doc:B.contents});break;case uce:I.length>0&&l.push({ind:E,mode:N,doc:Rbi});break;case dV:switch(N){case rj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case uV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=HTr(A),A.push(a+E.value),o=E.length);break}break;case mee:l.push({ind:E,mode:N,doc:B.contents});break;case Cee:break;default:throw new N4e(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(PRe);if(b!==-1){let E=A.indexOf(PRe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==PRe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function sQa(e,t,r=0){let n=0;for(let a=r;a{if(o.push(t()),I.tail)return;let{tabWidth:C}=r,b=I.value.raw,E=b.includes(` +`)?cQa(b,C):A;A=E;let N=l[f],B=n[a][f],F=cce(r.originalText,BC(I),ZS(n.quasis[f+1]));if(!F){let X=Ybi(N,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;X.includes(` +`)?F=!0:N=X}F&&(ig(B)||B.type==="Identifier"||Yv(B)||B.type==="ConditionalExpression"||B.type==="SequenceExpression"||nj(B)||Aee(B))&&(N=[Pl([bl,N]),bl]);let Q=E===0&&b.endsWith(` +`)?oj(Number.NEGATIVE_INFINITY,N):pYa(N,E,C);o.push(Ia(["${",Q,pee,"}"]))},"quasis"),o.push("`"),o}function lQa(e,t){let r=t("quasi");return x4e(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),pee,r])}function uQa(e,t,r){let{node:n}=e,a=n.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let l=[],A=o.map(E=>"${"+Ybi(E,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let E=1;EE.cells.length)),C=Array.from({length:I}).fill(0),b=[{cells:a},...f.filter(E=>E.cells.length>0)];for(let{cells:E}of b.filter(N=>!N.hasLineBreak))for(let[N,B]of E.entries())C[N]=Math.max(C[N],PRe(B));return l.push(dee,"`",Pl([xl,vC(xl,b.map(E=>vC(" | ",E.cells.map((N,B)=>E.hasLineBreak?N:N+" ".repeat(C[B]-PRe(N))))))]),xl,"`"),l}}function ZYa(e,t){let{node:r}=e,n=t();return ig(r)&&(n=Ia([Pl([bl,n]),bl])),["${",n,dee,"}"]}function gRr(e,t){return e.map(r=>ZYa(r,t),"expressions")}function Dbi(e,t){return JRe(e,r=>typeof r=="string"?t?Zk(!1,r,/(\\*)`/gu,"$1$1\\`"):kbi(r):r)}function kbi(e){return Zk(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function LYa({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var PTr=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function VYa(e){let t=n=>n.type==="TemplateLiteral",r=(n,a)=>Iee(n)&&!n.computed&&n.key.type==="Identifier"&&n.key.name==="styles"&&a==="value";return e.match(t,(n,a)=>Vk(n)&&a==="elements",r,...PTr)||e.match(t,r,...PTr)}function PYa(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>Iee(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...PTr)}function ETr(e,t){return ig(e,fA.Block|fA.Leading,({value:r})=>r===` ${t} `)}function xbi({node:e,parent:t},r){return ETr(e,r)||WYa(t)&&ETr(t,r)||t.type==="ExpressionStatement"&&ETr(t,r)}function WYa(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function OYa(e,t,r){let{node:n}=r,a=n.quasis.map(C=>C.value.raw),o=0,l=a.reduce((C,b,E)=>E===0?b:C+"@prettier-placeholder-"+o+++"-id"+b,""),A=await e(l,{parser:"scss"}),f=gRr(r,t),I=MYa(A,f);if(!I)throw new Error("Couldn't insert all the expressions");return["`",Pl([xl,I]),bl,"`"]}function MYa(e,t){if(!H_(t))return e;let r=0,n=JRe(iRr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,l)=>l%2===0?pme(o):(r++,t[o])));return t.length===r?n:null}function HYa({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(n=>n.type==="JSXAttribute"&&n.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function Xyt(e){return e.type==="Identifier"&&e.name==="styled"}function vyi(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function YYa({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return Xyt(t.object)||vyi(t);case"CallExpression":return Xyt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(Xyt(t.callee.object.object)||vyi(t.callee.object))||t.callee.object.type==="CallExpression"&&Xyt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function QYa({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function XYa(e){if(HYa(e)||YYa(e)||QYa(e)||VYa(e))return OYa}var JYa=XYa;async function UYa(e,t,r){let{node:n}=r,a=n.quasis.length,o=gRr(r,t),l=[];for(let A=0;A2&&E[0].trim()===""&&E[1].trim()==="",Q=N>2&&E[N-1].trim()===""&&E[N-2].trim()==="",X=E.every(ne=>/^\s*(?:#[^\n\r]*)?$/u.test(ne));if(!C&&/#[^\n\r]*$/u.test(E[N-1]))return null;let ae=null;X?ae=KYa(E):ae=await e(b,{parser:"graphql"}),ae?(ae=Dbi(ae,!1),!I&&F&&l.push(""),l.push(ae),!C&&Q&&l.push("")):!I&&!C&&F&&l.push(""),B&&l.push(B)}return["`",Pl([xl,vC(xl,l)]),xl,"`"]}function KYa(e){let t=[],r=!1,n=e.map(a=>a.trim());for(let[a,o]of n.entries())o!==""&&(n[a-1]===""&&r?t.push([xl,o]):t.push(o),r=!0);return t.length===0?null:vC(xl,t)}function jYa({node:e,parent:t}){return xbi({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function zYa(e){if(jYa(e))return UYa}var qYa=zYa,STr=0;async function Gbi(e,t,r,n,a){let{node:o}=n,l=STr;STr=STr+1>>>0;let A=X=>`PRETTIER_HTML_PLACEHOLDER_${X}_${l}_IN_JS`,f=o.quasis.map((X,ae,ne)=>ae===ne.length-1?X.value.cooked:X.value.cooked+A(ae)).join(""),I=gRr(n,r),C=new RegExp(A(String.raw`(\d+)`),"gu"),b=0,E=await t(f,{parser:e,__onHtmlRoot(X){b=X.children.length}}),N=JRe(E,X=>{if(typeof X!="string")return X;let ae=[],ne=X.split(C);for(let ce=0;ce1?Pl(Ia(N)):Ia(N),F,"`"]))}function $Ya(e){return xbi(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var eQa=Gbi.bind(void 0,"html"),tQa=Gbi.bind(void 0,"angular");function rQa(e){if($Ya(e))return eQa;if(PYa(e))return tQa}var nQa=rQa;async function iQa(e,t,r){let{node:n}=r,a=Zk(!1,n.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,I)=>"\\".repeat(I.length/2)+"`"),o=sQa(a),l=o!=="";l&&(a=Zk(!1,a,new RegExp(`^${o}`,"gmu"),""));let A=Dbi(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",l?Pl([bl,A]):[fbi,LHa(A)],bl,"`"]}function sQa(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function oQa(e){if(aQa(e))return iQa}function aQa({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var cQa=oQa;function lQa(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||uQa(t))return;let r;for(let n of[JYa,qYa,nQa,cQa])if(r=n(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&D4e({embed:!0,...o.label},o)}}function uQa({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var gQa=lQa,AQa=/\*\/$/,dQa=/^\/\*\*?/,Fbi=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,pQa=/(^|\s+)\/\/([^\n\r]*)/g,Byi=/^(\r?\n)+/,fQa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,wyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,IQa=/(\r?\n|^) *\* ?/g,Zbi=[];function hQa(e){let t=e.match(Fbi);return t?t[0].trimStart():""}function mQa(e){let t=e.match(Fbi),r=t?.[0];return r==null?e:e.slice(r.length)}function CQa(e){let t=` -`;e=Zk(!1,e.replace(dQa,"").replace(AQa,""),IQa,"$1");let r="";for(;r!==e;)r=e,e=Zk(!1,e,fQa,`${t}$1 $2${t}`);e=e.replace(Byi,"").trimEnd();let n=Object.create(null),a=Zk(!1,e,wyi,"").replace(Byi,"").trimEnd(),o;for(;o=wyi.exec(e);){let l=Zk(!1,o[2],pQa,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...Zbi,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function _Qa({comments:e="",pragmas:t={}}){let r=` -`,n="/**",a=" *",o=" */",l=Object.keys(t),A=l.flatMap(I=>Tyi(I,t[I])).map(I=>`${a} ${I}${r}`).join("");if(!e){if(l.length===0)return"";if(l.length===1&&!Array.isArray(t[l[0]])){let I=t[l[0]];return`${n} ${Tyi(l[0],I)[0]}${o}`}}let f=e.split(r).map(I=>`${a} ${I}`).join(r)+r;return n+r+(e?f:"")+(e&&l.length>0?a+r:"")+A+o}function Tyi(e,t){return[...Zbi,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function yQa(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var bQa=yQa;function EQa(e){let t=bQa(e);t&&(e=e.slice(t.length+1));let r=hQa(e),{pragmas:n,comments:a}=CQa(r);return{shebang:t,text:e,pragmas:n,comments:a}}function SQa(e){let{shebang:t,text:r,pragmas:n,comments:a}=EQa(e),o=mQa(r),l=_Qa({pragmas:{format:"",...n},comments:a.trimStart()});return(t?`${t} +`)&&f.push({hasLineBreak:!1,cells:[]})}let I=Math.max(a.length,...f.map(E=>E.cells.length)),C=Array.from({length:I}).fill(0),b=[{cells:a},...f.filter(E=>E.cells.length>0)];for(let{cells:E}of b.filter(N=>!N.hasLineBreak))for(let[N,B]of E.entries())C[N]=Math.max(C[N],ORe(B));return l.push(pee,"`",Pl([xl,vC(xl,b.map(E=>vC(" | ",E.cells.map((N,B)=>E.hasLineBreak?N:N+" ".repeat(C[B]-ORe(N))))))]),xl,"`"),l}}function gQa(e,t){let{node:r}=e,n=t();return ig(r)&&(n=Ia([Pl([bl,n]),bl])),["${",n,pee,"}"]}function IRr(e,t){return e.map(r=>gQa(r,t),"expressions")}function Xbi(e,t){return KRe(e,r=>typeof r=="string"?t?Zk(!1,r,/(\\*)`/gu,"$1$1\\`"):Jbi(r):r)}function Jbi(e){return Zk(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function AQa({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var YTr=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function dQa(e){let t=n=>n.type==="TemplateLiteral",r=(n,a)=>hee(n)&&!n.computed&&n.key.type==="Identifier"&&n.key.name==="styles"&&a==="value";return e.match(t,(n,a)=>Vk(n)&&a==="elements",r,...YTr)||e.match(t,r,...YTr)}function pQa(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>hee(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...YTr)}function TTr(e,t){return ig(e,fA.Block|fA.Leading,({value:r})=>r===` ${t} `)}function Ubi({node:e,parent:t},r){return TTr(e,r)||fQa(t)&&TTr(t,r)||t.type==="ExpressionStatement"&&TTr(t,r)}function fQa(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function IQa(e,t,r){let{node:n}=r,a=n.quasis.map(C=>C.value.raw),o=0,l=a.reduce((C,b,E)=>E===0?b:C+"@prettier-placeholder-"+o+++"-id"+b,""),A=await e(l,{parser:"scss"}),f=IRr(r,t),I=hQa(A,f);if(!I)throw new Error("Couldn't insert all the expressions");return["`",Pl([xl,I]),bl,"`"]}function hQa(e,t){if(!H_(t))return e;let r=0,n=KRe(lRr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,l)=>l%2===0?fme(o):(r++,t[o])));return t.length===r?n:null}function mQa({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(n=>n.type==="JSXAttribute"&&n.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function Uyt(e){return e.type==="Identifier"&&e.name==="styled"}function Wyi(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function CQa({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return Uyt(t.object)||Wyi(t);case"CallExpression":return Uyt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(Uyt(t.callee.object.object)||Wyi(t.callee.object))||t.callee.object.type==="CallExpression"&&Uyt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function _Qa({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function yQa(e){if(mQa(e)||CQa(e)||_Qa(e)||dQa(e))return IQa}var bQa=yQa;async function EQa(e,t,r){let{node:n}=r,a=n.quasis.length,o=IRr(r,t),l=[];for(let A=0;A2&&E[0].trim()===""&&E[1].trim()==="",Q=N>2&&E[N-1].trim()===""&&E[N-2].trim()==="",X=E.every(ne=>/^\s*(?:#[^\n\r]*)?$/u.test(ne));if(!C&&/#[^\n\r]*$/u.test(E[N-1]))return null;let ae=null;X?ae=SQa(E):ae=await e(b,{parser:"graphql"}),ae?(ae=Xbi(ae,!1),!I&&F&&l.push(""),l.push(ae),!C&&Q&&l.push("")):!I&&!C&&F&&l.push(""),B&&l.push(B)}return["`",Pl([xl,vC(xl,l)]),xl,"`"]}function SQa(e){let t=[],r=!1,n=e.map(a=>a.trim());for(let[a,o]of n.entries())o!==""&&(n[a-1]===""&&r?t.push([xl,o]):t.push(o),r=!0);return t.length===0?null:vC(xl,t)}function vQa({node:e,parent:t}){return Ubi({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function BQa(e){if(vQa(e))return EQa}var wQa=BQa,RTr=0;async function Kbi(e,t,r,n,a){let{node:o}=n,l=RTr;RTr=RTr+1>>>0;let A=X=>`PRETTIER_HTML_PLACEHOLDER_${X}_${l}_IN_JS`,f=o.quasis.map((X,ae,ne)=>ae===ne.length-1?X.value.cooked:X.value.cooked+A(ae)).join(""),I=IRr(n,r),C=new RegExp(A(String.raw`(\d+)`),"gu"),b=0,E=await t(f,{parser:e,__onHtmlRoot(X){b=X.children.length}}),N=KRe(E,X=>{if(typeof X!="string")return X;let ae=[],ne=X.split(C);for(let ce=0;ce1?Pl(Ia(N)):Ia(N),F,"`"]))}function TQa(e){return Ubi(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var RQa=Kbi.bind(void 0,"html"),NQa=Kbi.bind(void 0,"angular");function DQa(e){if(TQa(e))return RQa;if(pQa(e))return NQa}var kQa=DQa;async function xQa(e,t,r){let{node:n}=r,a=Zk(!1,n.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,I)=>"\\".repeat(I.length/2)+"`"),o=GQa(a),l=o!=="";l&&(a=Zk(!1,a,new RegExp(`^${o}`,"gmu"),""));let A=Xbi(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",l?Pl([bl,A]):[Nbi,AYa(A)],bl,"`"]}function GQa(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function FQa(e){if(ZQa(e))return xQa}function ZQa({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var LQa=FQa;function VQa(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||PQa(t))return;let r;for(let n of[bQa,wQa,kQa,LQa])if(r=n(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&x4e({embed:!0,...o.label},o)}}function PQa({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var WQa=VQa,OQa=/\*\/$/,MQa=/^\/\*\*?/,jbi=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,HQa=/(^|\s+)\/\/([^\n\r]*)/g,Oyi=/^(\r?\n)+/,YQa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,Myi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,QQa=/(\r?\n|^) *\* ?/g,zbi=[];function XQa(e){let t=e.match(jbi);return t?t[0].trimStart():""}function JQa(e){let t=e.match(jbi),r=t?.[0];return r==null?e:e.slice(r.length)}function UQa(e){let t=` +`;e=Zk(!1,e.replace(MQa,"").replace(OQa,""),QQa,"$1");let r="";for(;r!==e;)r=e,e=Zk(!1,e,YQa,`${t}$1 $2${t}`);e=e.replace(Oyi,"").trimEnd();let n=Object.create(null),a=Zk(!1,e,Myi,"").replace(Oyi,"").trimEnd(),o;for(;o=Myi.exec(e);){let l=Zk(!1,o[2],HQa,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...zbi,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function KQa({comments:e="",pragmas:t={}}){let r=` +`,n="/**",a=" *",o=" */",l=Object.keys(t),A=l.flatMap(I=>Hyi(I,t[I])).map(I=>`${a} ${I}${r}`).join("");if(!e){if(l.length===0)return"";if(l.length===1&&!Array.isArray(t[l[0]])){let I=t[l[0]];return`${n} ${Hyi(l[0],I)[0]}${o}`}}let f=e.split(r).map(I=>`${a} ${I}`).join(r)+r;return n+r+(e?f:"")+(e&&l.length>0?a+r:"")+A+o}function Hyi(e,t){return[...zbi,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function jQa(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` +`);return t===-1?e:e.slice(0,t)}var zQa=jQa;function qQa(e){let t=zQa(e);t&&(e=e.slice(t.length+1));let r=XQa(e),{pragmas:n,comments:a}=UQa(r);return{shebang:t,text:e,pragmas:n,comments:a}}function $Qa(e){let{shebang:t,text:r,pragmas:n,comments:a}=qQa(e),o=JQa(r),l=KQa({pragmas:{format:"",...n},comments:a.trimStart()});return(t?`${t} `:"")+l+(o.startsWith(` `)?` `:` -`)+o}function vQa(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var BQa=vQa;function WTr(e,t){var r,n,a,o,l,A,f,I,C;if(e.isRoot)return!1;let{node:b,key:E,parent:N}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&NQa(b)&&E4e(e))return!0;if(wQa(b))return!1;if(b.type==="Identifier"){if((r=b.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(b.name)||E==="left"&&(b.name==="async"&&!N.await||b.name==="let")&&N.type==="ForOfStatement")return!0;if(b.name==="let"){let B=(n=e.findAncestor(F=>F.type==="ForOfStatement"))==null?void 0:n.left;if(B&&JZ(B,F=>F===b))return!0}if(E==="object"&&b.name==="let"&&N.type==="MemberExpression"&&N.computed&&!N.optional){let B=e.findAncestor(Q=>Q.type==="ExpressionStatement"||Q.type==="ForStatement"||Q.type==="ForInStatement"),F=B?B.type==="ExpressionStatement"?B.expression:B.type==="ForStatement"?B.init:B.left:void 0;if(F&&JZ(F,Q=>Q===b))return!0}if(E==="expression")switch(b.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let B=e.findAncestor(F=>!nj(F));if(B!==N&&B.type==="ExpressionStatement")return!0}}return!1}if(b.type==="ObjectExpression"||b.type==="FunctionExpression"||b.type==="ClassExpression"||b.type==="DoExpression"){let B=(a=e.findAncestor(F=>F.type==="ExpressionStatement"))==null?void 0:a.expression;if(B&&JZ(B,F=>F===b))return!0}if(b.type==="ObjectExpression"){let B=(o=e.findAncestor(F=>F.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(B&&B.type!=="SequenceExpression"&&B.type!=="AssignmentExpression"&&JZ(B,F=>F===b))return!0}switch(N.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(E==="superClass"&&(b.type==="ArrowFunctionExpression"||b.type==="AssignmentExpression"||b.type==="AwaitExpression"||b.type==="BinaryExpression"||b.type==="ConditionalExpression"||b.type==="LogicalExpression"||b.type==="NewExpression"||b.type==="ObjectExpression"||b.type==="SequenceExpression"||b.type==="TaggedTemplateExpression"||b.type==="UnaryExpression"||b.type==="UpdateExpression"||b.type==="YieldExpression"||b.type==="TSNonNullExpression"||b.type==="ClassExpression"&&H_(b.decorators)))return!0;break;case"ExportDefaultDeclaration":return Lbi(e,t)||b.type==="SequenceExpression";case"Decorator":if(E==="expression"&&!kQa(b))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression")&&RQa(b))return!0;break;case"BinaryExpression":if(E==="left"&&(N.operator==="in"||N.operator==="instanceof")&&b.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(E==="init"&&e.match(void 0,void 0,(B,F)=>F==="declarations"&&B.type==="VariableDeclaration",(B,F)=>F==="left"&&B.type==="ForInStatement"))return!0;break}switch(b.type){case"UpdateExpression":if(N.type==="UnaryExpression")return b.prefix&&(b.operator==="++"&&N.operator==="+"||b.operator==="--"&&N.operator==="-");case"UnaryExpression":switch(N.type){case"UnaryExpression":return b.operator===N.operator&&(b.operator==="+"||b.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"BinaryExpression":return E==="left"&&N.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(N.type==="UpdateExpression"||b.operator==="in"&&TQa(e))return!0;if(b.operator==="|>"&&(l=b.extra)!=null&&l.parenthesized){let B=e.grandparent;if(B.type==="BinaryExpression"&&B.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(N.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!nj(b);case"ConditionalExpression":return nj(b)||oHa(b);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return E==="callee";case"ClassExpression":case"ClassDeclaration":return E==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"AssignmentExpression":case"AssignmentPattern":return E==="left"&&(b.type==="TSTypeAssertion"||nj(b));case"LogicalExpression":if(b.type==="LogicalExpression")return N.operator!==b.operator;case"BinaryExpression":{let{operator:B,type:F}=b;if(!B&&F!=="TSTypeAssertion")return!0;let Q=jyt(B),X=N.operator,ae=jyt(X);return ae>Q||E==="right"&&ae===Q||ae===Q&&!tRr(X,B)?!0:ae");default:return!1}case"TSFunctionType":if(e.match(B=>B.type==="TSFunctionType",(B,F)=>F==="typeAnnotation"&&B.type==="TSTypeAnnotation",(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(E==="extendsType"&&oce(b)&&N.type===b.type||E==="checkType"&&oce(N))return!0;if(E==="extendsType"&&N.type==="TSConditionalType"){let{typeAnnotation:B}=b.returnType||b.typeAnnotation;if(B.type==="TSTypePredicate"&&B.typeAnnotation&&(B=B.typeAnnotation.typeAnnotation),B.type==="TSInferType"&&B.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((sce(N)||rRr(N))&&N.types.length>1&&(!b.types||b.types.length>1))return!0;case"TSInferType":if(b.type==="TSInferType"){if(N.type==="TSRestType")return!1;if(E==="types"&&(N.type==="TSUnionType"||N.type==="TSIntersectionType")&&b.typeParameter.type==="TSTypeParameter"&&b.typeParameter.constraint)return!0}case"TSTypeOperator":return N.type==="TSArrayType"||N.type==="TSOptionalType"||N.type==="TSRestType"||E==="objectType"&&N.type==="TSIndexedAccessType"||N.type==="TSTypeOperator"||N.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return E==="objectType"&&N.type==="TSIndexedAccessType"||E==="elementType"&&N.type==="TSArrayType";case"TypeOperator":return N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||N.type==="TypeOperator";case"TypeofTypeAnnotation":return E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||E==="elementType"&&N.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return N.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return N.type==="TypeOperator"||N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||N.type==="IntersectionTypeAnnotation"||N.type==="UnionTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return N.type==="ArrayTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(b.type==="ComponentTypeAnnotation"&&(b.rendersType===null||b.rendersType===void 0))return!1;if(e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression")||e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypePredicate",(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression"))return!0;let B=N.type==="NullableTypeAnnotation"?e.grandparent:N;return B.type==="UnionTypeAnnotation"||B.type==="IntersectionTypeAnnotation"||B.type==="ArrayTypeAnnotation"||E==="objectType"&&(B.type==="IndexedAccessType"||B.type==="OptionalIndexedAccessType")||E==="checkType"&&N.type==="ConditionalTypeAnnotation"||E==="extendsType"&&N.type==="ConditionalTypeAnnotation"&&((A=b.returnType)==null?void 0:A.type)==="InferTypeAnnotation"&&((f=b.returnType)==null?void 0:f.typeParameter.bound)||B.type==="NullableTypeAnnotation"||N.type==="FunctionTypeParam"&&N.name===null&&NG(b).some(F=>{var Q;return((Q=F.typeAnnotation)==null?void 0:Q.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return E==="objectType"&&N.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof b.value=="string"&&N.type==="ExpressionStatement"&&!N.directive){let B=e.grandparent;return B.type==="Program"||B.type==="BlockStatement"}return E==="object"&&N.type==="MemberExpression"&&typeof b.value=="number";case"AssignmentExpression":{let B=e.grandparent;return E==="body"&&N.type==="ArrowFunctionExpression"?!0:E==="key"&&(N.type==="ClassProperty"||N.type==="PropertyDefinition")&&N.computed||(E==="init"||E==="update")&&N.type==="ForStatement"?!1:N.type==="ExpressionStatement"?b.left.type==="ObjectPattern":!(E==="key"&&N.type==="TSPropertySignature"||N.type==="AssignmentExpression"||N.type==="SequenceExpression"&&B.type==="ForStatement"&&(B.init===N||B.update===N)||E==="value"&&N.type==="Property"&&B.type==="ObjectPattern"&&B.properties.includes(N)||N.type==="NGChainedExpression"||E==="node"&&N.type==="JsExpressionRoot")}case"ConditionalExpression":switch(N.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:E==="test";case"MemberExpression":case"OptionalMemberExpression":return E==="object";default:return!1}case"FunctionExpression":switch(N.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(N.type){case"BinaryExpression":return N.operator!=="|>"||((I=b.extra)==null?void 0:I.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return E==="test";default:return!1}case"ClassExpression":switch(N.type){case"NewExpression":return E==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(DQa(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")){let B=b;for(;B;)switch(B.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":B=B.object;break;case"TaggedTemplateExpression":B=B.tag;break;case"TSNonNullExpression":B=B.expression;break;default:return!1}}return!1;case"BindExpression":return E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")||E==="object"&&Yv(N);case"NGPipeExpression":return!(N.type==="NGRoot"||N.type==="NGMicrosyntaxExpression"||N.type==="ObjectProperty"&&!((C=b.extra)!=null&&C.parenthesized)||Vk(N)||E==="arguments"&&b_(N)||E==="right"&&N.type==="NGPipeExpression"||E==="property"&&N.type==="MemberExpression"||N.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return E==="callee"||E==="left"&&N.type==="BinaryExpression"&&N.operator==="<"||!Vk(N)&&N.type!=="ArrowFunctionExpression"&&N.type!=="AssignmentExpression"&&N.type!=="AssignmentPattern"&&N.type!=="BinaryExpression"&&N.type!=="NewExpression"&&N.type!=="ConditionalExpression"&&N.type!=="ExpressionStatement"&&N.type!=="JsExpressionRoot"&&N.type!=="JSXAttribute"&&N.type!=="JSXElement"&&N.type!=="JSXExpressionContainer"&&N.type!=="JSXFragment"&&N.type!=="LogicalExpression"&&!b_(N)&&!Iee(N)&&N.type!=="ReturnStatement"&&N.type!=="ThrowStatement"&&N.type!=="TypeCastExpression"&&N.type!=="VariableDeclarator"&&N.type!=="YieldExpression";case"TSInstantiationExpression":return E==="object"&&Yv(N)}return!1}var wQa=_0(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function TQa(e){let t=0,{node:r}=e;for(;r;){let n=e.getParentNode(t++);if(n?.type==="ForStatement"&&n.init===r)return!0;r=n}return!1}function RQa(e){return DTr(e,t=>t.type==="ObjectTypeAnnotation"&&DTr(t,r=>r.type==="FunctionTypeAnnotation"))}function NQa(e){return e4(e)}function E4e(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(E4e);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(E4e);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(E4e);break;case"UnaryExpression":if(t.prefix)return e.callParent(E4e);break}return!1}function Lbi(e,t){let{node:r,parent:n}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?n.type==="ExportDefaultDeclaration"||!WTr(e,t):!zTr(r)||n.type!=="ExportDefaultDeclaration"&&WTr(e,t)?!1:e.call(()=>Lbi(e,t),...qyi(r))}function DQa(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function OTr(e){return e.type==="Identifier"?!0:Yv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&OTr(e.object):!1}function kQa(e){return e.type==="ChainExpression"&&(e=e.expression),OTr(e)||b_(e)&&!e.optional&&OTr(e.callee)}var Eme=WTr;function xQa(e,t){let r=t-1;r=WRe(e,r,{backwards:!0}),r=ORe(e,r,{backwards:!0}),r=WRe(e,r,{backwards:!0});let n=ORe(e,r,{backwards:!0});return r!==n}var GQa=xQa,FQa=()=>!0;function ARr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function ZQa(e,t){var r;let n=e.node,a=[ARr(e,t)],{printer:o,originalText:l,locStart:A,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,n)){let C=dO(l,f(n))?dO(l,A(n),{backwards:!0})?xl:zg:" ";a.push(C)}else a.push(xl);let I=ORe(l,WRe(l,f(n)));return I!==!1&&dO(l,I)&&a.push(xl),a}function LQa(e,t,r){var n;let a=e.node,o=ARr(e,t),{printer:l,originalText:A,locStart:f}=t,I=(n=l.isBlockComment)==null?void 0:n.call(l,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||dO(A,f(a),{backwards:!0})){let C=GQa(A,f(a));return{doc:Syi([xl,C?xl:"",o]),isBlock:I,hasLineSuffix:!0}}return!I||r!=null&&r.hasLineSuffix?{doc:[Syi([" ",o]),aj],isBlock:I,hasLineSuffix:!0}:{doc:[" ",o],isBlock:I,hasLineSuffix:!1}}function N2(e,t,r={}){let{node:n}=e;if(!H_(n?.comments))return"";let{indent:a=!1,marker:o,filter:l=FQa}=r,A=[];if(e.each(({node:I})=>{I.leading||I.trailing||I.marker!==o||!l(I)||A.push(ARr(e,t))},"comments"),A.length===0)return"";let f=vC(xl,A);return a?Pl([xl,f]):f}function Vbi(e,t){let r=e.node;if(!r)return{};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(A=>!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(ZQa(e,t)):I&&(l=LQa(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function $X(e,t,r){let{leading:n,trailing:a}=Vbi(e,r);return!n&&!a?t:GTr(t,o=>[n,o,a])}var VQa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},KRe=VQa;function PQa(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var zX,WQa=class{constructor(e){IMa(this,zX),hMa(this,zX,new Set(e))}getLeadingWhitespaceCount(e){let t=ece(this,zX),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return ece(this,zX).has(e.charAt(0))}hasTrailingWhitespace(e){return ece(this,zX).has(U0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${PQa([...ece(this,zX)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=ece(this,zX);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=ece(this,zX);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=ece(this,zX);return Array.prototype.every.call(e,r=>t.has(r))}};zX=new WeakMap;var OQa=WQa,Jyt=new OQa(` -\r `),vTr=e=>e===""||e===zg||e===xl||e===bl;function MQa(e,t,r){var n,a,o,l,A;let{node:f}=e;if(f.type==="JSXElement"&&nXa(f))return[r("openingElement"),r("closingElement")];let I=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),C=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[I,...e.map(r,"children"),C];f.children=f.children.map(be=>iXa(be)?{type:"JSXText",value:" ",raw:" "}:be);let b=f.children.some(nD),E=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,N=f.type==="JSXElement"&&f.openingElement.attributes.length>1,B=UZ(I)||b||N||E,F=e.parent.rootMarker==="mdx",Q=t.singleQuote?"{' '}":'{" "}',X=F?zg:lh([Q,bl]," "),ae=((a=(n=f.openingElement)==null?void 0:n.name)==null?void 0:a.name)==="fbt",ne=HQa(e,t,r,X,ae),ce=f.children.some(be=>R4e(be));for(let be=ne.length-2;be>=0;be--){let Se=ne[be]===""&&ne[be+1]==="",De=ne[be]===xl&&ne[be+1]===""&&ne[be+2]===xl,k=(ne[be]===bl||ne[be]===xl)&&ne[be+1]===""&&ne[be+2]===X,et=ne[be]===X&&ne[be+1]===""&&(ne[be+2]===bl||ne[be+2]===xl),ct=ne[be]===X&&ne[be+1]===""&&ne[be+2]===X,Me=ne[be]===bl&&ne[be+1]===""&&ne[be+2]===xl||ne[be]===xl&&ne[be+1]===""&&ne[be+2]===bl;De&&ce||Se||k||ct||Me?ne.splice(be,2):et&&ne.splice(be+1,2)}for(;ne.length>0&&vTr(U0(!1,ne,-1));)ne.pop();for(;ne.length>1&&vTr(ne[0])&&vTr(ne[1]);)ne.shift(),ne.shift();let fe=[""];for(let[be,Se]of ne.entries()){if(Se===X){if(be===1&&FHa(ne[be-1])){if(ne.length===2){fe.push([fe.pop(),Q]);continue}fe.push([Q,xl],"");continue}else if(be===ne.length-1){fe.push([fe.pop(),Q]);continue}else if(ne[be-1]===""&&ne[be-2]===xl){fe.push([fe.pop(),Q]);continue}}be%2===0?fe.push([fe.pop(),Se]):fe.push(Se,""),UZ(Se)&&(B=!0)}let ue=ce?dbi(fe):Ia(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?ue=[Yyt,ue,Yyt]:((l=t.nodeBeforeCursor)==null?void 0:l.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?ue=[Yyt,ue]:((A=t.nodeAfterCursor)==null?void 0:A.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(ue=[ue,Yyt]),F)return ue;let de=Ia([I,Pl([xl,ue]),xl,C]);return B?de:dme([Ia([I,...ne,C]),de])}function HQa(e,t,r,n,a){let o="",l=[o];function A(I){o=I,l.push([l.pop(),I])}function f(I){I!==""&&(o=I,l.push(I,""))}return e.each(({node:I,next:C})=>{if(I.type==="JSXText"){let b=UM(I);if(R4e(I)){let E=Jyt.split(b,!0);E[0]===""&&(E.shift(),/\n/u.test(E[0])?f(Nyi(a,E[1],I,C)):f(n),E.shift());let N;if(U0(!1,E,-1)===""&&(E.pop(),N=E.pop()),E.length===0)return;for(let[B,F]of E.entries())B%2===1?f(zg):A(F);N!==void 0?/\n/u.test(N)?f(Nyi(a,o,I,C)):f(n):f(Ryi(a,o,I,C))}else/\n/u.test(b)?b.match(/\n/gu).length>1&&f(xl):f(n)}else{let b=r();if(A(b),C&&R4e(C)){let E=Jyt.trim(UM(C)),[N]=Jyt.split(E);f(Ryi(a,N,I,C))}else f(xl)}},"children"),l}function Ryi(e,t,r,n){return e?"":r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?t.length===1?bl:xl:bl}function Nyi(e,t,r,n){return e?xl:t.length===1?r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?xl:bl:xl}var YQa=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function QQa(e,t,r){let{parent:n}=e;if(YQa.has(n.type))return t;let a=e.match(void 0,l=>l.type==="ArrowFunctionExpression",b_,l=>l.type==="JSXExpressionContainer"),o=Eme(e,r);return Ia([o?"":lh("("),Pl([bl,t]),bl,o?"":lh(")")],{shouldBreak:a})}function XQa(e,t,r){let{node:n}=e,a=[];if(a.push(r("name")),n.value){let o;if(gV(n.value)){let l=UM(n.value),A=Zk(!1,Zk(!1,l.slice(1,-1),"'","'"),""",'"'),f=Jyi(A,t.jsxSingleQuote);A=f==='"'?Zk(!1,A,'"',"""):Zk(!1,A,"'","'"),o=e.call(()=>$X(e,pme(f+A+f),t),"value")}else o=r("value");a.push("=",o)}return a}function JQa(e,t,r){let{node:n}=e,a=(o,l)=>o.type==="JSXEmptyExpression"||!ig(o)&&(Vk(o)||e4(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||b_(o)||o.type==="ChainExpression"&&b_(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||nD(l)&&(o.type==="ConditionalExpression"||gee(o)));return a(n.expression,e.parent)?Ia(["{",r("expression"),dee,"}"]):Ia(["{",Pl([bl,r("expression")]),bl,dee,"}"])}function UQa(e,t,r){var n,a;let{node:o}=e,l=ig(o.name)||ig(o.typeParameters)||ig(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!l)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((n=o.attributes)==null?void 0:n.length)===1&&gV(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` +`)+o}function eXa(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var tXa=eXa;function QTr(e,t){var r,n,a,o,l,A,f,I,C;if(e.isRoot)return!1;let{node:b,key:E,parent:N}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&sXa(b)&&v4e(e))return!0;if(rXa(b))return!1;if(b.type==="Identifier"){if((r=b.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(b.name)||E==="left"&&(b.name==="async"&&!N.await||b.name==="let")&&N.type==="ForOfStatement")return!0;if(b.name==="let"){let B=(n=e.findAncestor(F=>F.type==="ForOfStatement"))==null?void 0:n.left;if(B&&JZ(B,F=>F===b))return!0}if(E==="object"&&b.name==="let"&&N.type==="MemberExpression"&&N.computed&&!N.optional){let B=e.findAncestor(Q=>Q.type==="ExpressionStatement"||Q.type==="ForStatement"||Q.type==="ForInStatement"),F=B?B.type==="ExpressionStatement"?B.expression:B.type==="ForStatement"?B.init:B.left:void 0;if(F&&JZ(F,Q=>Q===b))return!0}if(E==="expression")switch(b.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let B=e.findAncestor(F=>!nj(F));if(B!==N&&B.type==="ExpressionStatement")return!0}}return!1}if(b.type==="ObjectExpression"||b.type==="FunctionExpression"||b.type==="ClassExpression"||b.type==="DoExpression"){let B=(a=e.findAncestor(F=>F.type==="ExpressionStatement"))==null?void 0:a.expression;if(B&&JZ(B,F=>F===b))return!0}if(b.type==="ObjectExpression"){let B=(o=e.findAncestor(F=>F.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(B&&B.type!=="SequenceExpression"&&B.type!=="AssignmentExpression"&&JZ(B,F=>F===b))return!0}switch(N.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(E==="superClass"&&(b.type==="ArrowFunctionExpression"||b.type==="AssignmentExpression"||b.type==="AwaitExpression"||b.type==="BinaryExpression"||b.type==="ConditionalExpression"||b.type==="LogicalExpression"||b.type==="NewExpression"||b.type==="ObjectExpression"||b.type==="SequenceExpression"||b.type==="TaggedTemplateExpression"||b.type==="UnaryExpression"||b.type==="UpdateExpression"||b.type==="YieldExpression"||b.type==="TSNonNullExpression"||b.type==="ClassExpression"&&H_(b.decorators)))return!0;break;case"ExportDefaultDeclaration":return qbi(e,t)||b.type==="SequenceExpression";case"Decorator":if(E==="expression"&&!aXa(b))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression")&&iXa(b))return!0;break;case"BinaryExpression":if(E==="left"&&(N.operator==="in"||N.operator==="instanceof")&&b.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(E==="init"&&e.match(void 0,void 0,(B,F)=>F==="declarations"&&B.type==="VariableDeclaration",(B,F)=>F==="left"&&B.type==="ForInStatement"))return!0;break}switch(b.type){case"UpdateExpression":if(N.type==="UnaryExpression")return b.prefix&&(b.operator==="++"&&N.operator==="+"||b.operator==="--"&&N.operator==="-");case"UnaryExpression":switch(N.type){case"UnaryExpression":return b.operator===N.operator&&(b.operator==="+"||b.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"BinaryExpression":return E==="left"&&N.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(N.type==="UpdateExpression"||b.operator==="in"&&nXa(e))return!0;if(b.operator==="|>"&&(l=b.extra)!=null&&l.parenthesized){let B=e.grandparent;if(B.type==="BinaryExpression"&&B.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(N.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!nj(b);case"ConditionalExpression":return nj(b)||FHa(b);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return E==="callee";case"ClassExpression":case"ClassDeclaration":return E==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"AssignmentExpression":case"AssignmentPattern":return E==="left"&&(b.type==="TSTypeAssertion"||nj(b));case"LogicalExpression":if(b.type==="LogicalExpression")return N.operator!==b.operator;case"BinaryExpression":{let{operator:B,type:F}=b;if(!B&&F!=="TSTypeAssertion")return!0;let Q=qyt(B),X=N.operator,ae=qyt(X);return ae>Q||E==="right"&&ae===Q||ae===Q&&!oRr(X,B)?!0:ae");default:return!1}case"TSFunctionType":if(e.match(B=>B.type==="TSFunctionType",(B,F)=>F==="typeAnnotation"&&B.type==="TSTypeAnnotation",(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(E==="extendsType"&&ace(b)&&N.type===b.type||E==="checkType"&&ace(N))return!0;if(E==="extendsType"&&N.type==="TSConditionalType"){let{typeAnnotation:B}=b.returnType||b.typeAnnotation;if(B.type==="TSTypePredicate"&&B.typeAnnotation&&(B=B.typeAnnotation.typeAnnotation),B.type==="TSInferType"&&B.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((oce(N)||aRr(N))&&N.types.length>1&&(!b.types||b.types.length>1))return!0;case"TSInferType":if(b.type==="TSInferType"){if(N.type==="TSRestType")return!1;if(E==="types"&&(N.type==="TSUnionType"||N.type==="TSIntersectionType")&&b.typeParameter.type==="TSTypeParameter"&&b.typeParameter.constraint)return!0}case"TSTypeOperator":return N.type==="TSArrayType"||N.type==="TSOptionalType"||N.type==="TSRestType"||E==="objectType"&&N.type==="TSIndexedAccessType"||N.type==="TSTypeOperator"||N.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return E==="objectType"&&N.type==="TSIndexedAccessType"||E==="elementType"&&N.type==="TSArrayType";case"TypeOperator":return N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||N.type==="TypeOperator";case"TypeofTypeAnnotation":return E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||E==="elementType"&&N.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return N.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return N.type==="TypeOperator"||N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||N.type==="IntersectionTypeAnnotation"||N.type==="UnionTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return N.type==="ArrayTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(b.type==="ComponentTypeAnnotation"&&(b.rendersType===null||b.rendersType===void 0))return!1;if(e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression")||e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypePredicate",(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression"))return!0;let B=N.type==="NullableTypeAnnotation"?e.grandparent:N;return B.type==="UnionTypeAnnotation"||B.type==="IntersectionTypeAnnotation"||B.type==="ArrayTypeAnnotation"||E==="objectType"&&(B.type==="IndexedAccessType"||B.type==="OptionalIndexedAccessType")||E==="checkType"&&N.type==="ConditionalTypeAnnotation"||E==="extendsType"&&N.type==="ConditionalTypeAnnotation"&&((A=b.returnType)==null?void 0:A.type)==="InferTypeAnnotation"&&((f=b.returnType)==null?void 0:f.typeParameter.bound)||B.type==="NullableTypeAnnotation"||N.type==="FunctionTypeParam"&&N.name===null&&NG(b).some(F=>{var Q;return((Q=F.typeAnnotation)==null?void 0:Q.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return E==="objectType"&&N.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof b.value=="string"&&N.type==="ExpressionStatement"&&!N.directive){let B=e.grandparent;return B.type==="Program"||B.type==="BlockStatement"}return E==="object"&&N.type==="MemberExpression"&&typeof b.value=="number";case"AssignmentExpression":{let B=e.grandparent;return E==="body"&&N.type==="ArrowFunctionExpression"?!0:E==="key"&&(N.type==="ClassProperty"||N.type==="PropertyDefinition")&&N.computed||(E==="init"||E==="update")&&N.type==="ForStatement"?!1:N.type==="ExpressionStatement"?b.left.type==="ObjectPattern":!(E==="key"&&N.type==="TSPropertySignature"||N.type==="AssignmentExpression"||N.type==="SequenceExpression"&&B.type==="ForStatement"&&(B.init===N||B.update===N)||E==="value"&&N.type==="Property"&&B.type==="ObjectPattern"&&B.properties.includes(N)||N.type==="NGChainedExpression"||E==="node"&&N.type==="JsExpressionRoot")}case"ConditionalExpression":switch(N.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:E==="test";case"MemberExpression":case"OptionalMemberExpression":return E==="object";default:return!1}case"FunctionExpression":switch(N.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(N.type){case"BinaryExpression":return N.operator!=="|>"||((I=b.extra)==null?void 0:I.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return E==="test";default:return!1}case"ClassExpression":switch(N.type){case"NewExpression":return E==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(oXa(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")){let B=b;for(;B;)switch(B.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":B=B.object;break;case"TaggedTemplateExpression":B=B.tag;break;case"TSNonNullExpression":B=B.expression;break;default:return!1}}return!1;case"BindExpression":return E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")||E==="object"&&Yv(N);case"NGPipeExpression":return!(N.type==="NGRoot"||N.type==="NGMicrosyntaxExpression"||N.type==="ObjectProperty"&&!((C=b.extra)!=null&&C.parenthesized)||Vk(N)||E==="arguments"&&b_(N)||E==="right"&&N.type==="NGPipeExpression"||E==="property"&&N.type==="MemberExpression"||N.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return E==="callee"||E==="left"&&N.type==="BinaryExpression"&&N.operator==="<"||!Vk(N)&&N.type!=="ArrowFunctionExpression"&&N.type!=="AssignmentExpression"&&N.type!=="AssignmentPattern"&&N.type!=="BinaryExpression"&&N.type!=="NewExpression"&&N.type!=="ConditionalExpression"&&N.type!=="ExpressionStatement"&&N.type!=="JsExpressionRoot"&&N.type!=="JSXAttribute"&&N.type!=="JSXElement"&&N.type!=="JSXExpressionContainer"&&N.type!=="JSXFragment"&&N.type!=="LogicalExpression"&&!b_(N)&&!hee(N)&&N.type!=="ReturnStatement"&&N.type!=="ThrowStatement"&&N.type!=="TypeCastExpression"&&N.type!=="VariableDeclarator"&&N.type!=="YieldExpression";case"TSInstantiationExpression":return E==="object"&&Yv(N)}return!1}var rXa=_0(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function nXa(e){let t=0,{node:r}=e;for(;r;){let n=e.getParentNode(t++);if(n?.type==="ForStatement"&&n.init===r)return!0;r=n}return!1}function iXa(e){return ZTr(e,t=>t.type==="ObjectTypeAnnotation"&&ZTr(t,r=>r.type==="FunctionTypeAnnotation"))}function sXa(e){return e4(e)}function v4e(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(v4e);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(v4e);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(v4e);break;case"UnaryExpression":if(t.prefix)return e.callParent(v4e);break}return!1}function qbi(e,t){let{node:r,parent:n}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?n.type==="ExportDefaultDeclaration"||!QTr(e,t):!rRr(r)||n.type!=="ExportDefaultDeclaration"&&QTr(e,t)?!1:e.call(()=>qbi(e,t),...dbi(r))}function oXa(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function XTr(e){return e.type==="Identifier"?!0:Yv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&XTr(e.object):!1}function aXa(e){return e.type==="ChainExpression"&&(e=e.expression),XTr(e)||b_(e)&&!e.optional&&XTr(e.callee)}var Sme=QTr;function cXa(e,t){let r=t-1;r=MRe(e,r,{backwards:!0}),r=HRe(e,r,{backwards:!0}),r=MRe(e,r,{backwards:!0});let n=HRe(e,r,{backwards:!0});return r!==n}var lXa=cXa,uXa=()=>!0;function hRr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function gXa(e,t){var r;let n=e.node,a=[hRr(e,t)],{printer:o,originalText:l,locStart:A,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,n)){let C=dO(l,f(n))?dO(l,A(n),{backwards:!0})?xl:zg:" ";a.push(C)}else a.push(xl);let I=HRe(l,MRe(l,f(n)));return I!==!1&&dO(l,I)&&a.push(xl),a}function AXa(e,t,r){var n;let a=e.node,o=hRr(e,t),{printer:l,originalText:A,locStart:f}=t,I=(n=l.isBlockComment)==null?void 0:n.call(l,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||dO(A,f(a),{backwards:!0})){let C=lXa(A,f(a));return{doc:Pyi([xl,C?xl:"",o]),isBlock:I,hasLineSuffix:!0}}return!I||r!=null&&r.hasLineSuffix?{doc:[Pyi([" ",o]),aj],isBlock:I,hasLineSuffix:!0}:{doc:[" ",o],isBlock:I,hasLineSuffix:!1}}function N2(e,t,r={}){let{node:n}=e;if(!H_(n?.comments))return"";let{indent:a=!1,marker:o,filter:l=uXa}=r,A=[];if(e.each(({node:I})=>{I.leading||I.trailing||I.marker!==o||!l(I)||A.push(hRr(e,t))},"comments"),A.length===0)return"";let f=vC(xl,A);return a?Pl([xl,f]):f}function $bi(e,t){let r=e.node;if(!r)return{};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(A=>!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(gXa(e,t)):I&&(l=AXa(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function $X(e,t,r){let{leading:n,trailing:a}=$bi(e,r);return!n&&!a?t:PTr(t,o=>[n,o,a])}var dXa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},zRe=dXa;function pXa(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var zX,fXa=class{constructor(e){QMa(this,zX),XMa(this,zX,new Set(e))}getLeadingWhitespaceCount(e){let t=tce(this,zX),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return tce(this,zX).has(e.charAt(0))}hasTrailingWhitespace(e){return tce(this,zX).has(U0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${pXa([...tce(this,zX)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=tce(this,zX);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=tce(this,zX);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=tce(this,zX);return Array.prototype.every.call(e,r=>t.has(r))}};zX=new WeakMap;var IXa=fXa,Kyt=new IXa(` +\r `),NTr=e=>e===""||e===zg||e===xl||e===bl;function hXa(e,t,r){var n,a,o,l,A;let{node:f}=e;if(f.type==="JSXElement"&&kXa(f))return[r("openingElement"),r("closingElement")];let I=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),C=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[I,...e.map(r,"children"),C];f.children=f.children.map(be=>xXa(be)?{type:"JSXText",value:" ",raw:" "}:be);let b=f.children.some(nD),E=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,N=f.type==="JSXElement"&&f.openingElement.attributes.length>1,B=UZ(I)||b||N||E,F=e.parent.rootMarker==="mdx",Q=t.singleQuote?"{' '}":'{" "}',X=F?zg:lh([Q,bl]," "),ae=((a=(n=f.openingElement)==null?void 0:n.name)==null?void 0:a.name)==="fbt",ne=mXa(e,t,r,X,ae),ce=f.children.some(be=>D4e(be));for(let be=ne.length-2;be>=0;be--){let Se=ne[be]===""&&ne[be+1]==="",De=ne[be]===xl&&ne[be+1]===""&&ne[be+2]===xl,k=(ne[be]===bl||ne[be]===xl)&&ne[be+1]===""&&ne[be+2]===X,et=ne[be]===X&&ne[be+1]===""&&(ne[be+2]===bl||ne[be+2]===xl),ct=ne[be]===X&&ne[be+1]===""&&ne[be+2]===X,Me=ne[be]===bl&&ne[be+1]===""&&ne[be+2]===xl||ne[be]===xl&&ne[be+1]===""&&ne[be+2]===bl;De&&ce||Se||k||ct||Me?ne.splice(be,2):et&&ne.splice(be+1,2)}for(;ne.length>0&&NTr(U0(!1,ne,-1));)ne.pop();for(;ne.length>1&&NTr(ne[0])&&NTr(ne[1]);)ne.shift(),ne.shift();let fe=[""];for(let[be,Se]of ne.entries()){if(Se===X){if(be===1&&uYa(ne[be-1])){if(ne.length===2){fe.push([fe.pop(),Q]);continue}fe.push([Q,xl],"");continue}else if(be===ne.length-1){fe.push([fe.pop(),Q]);continue}else if(ne[be-1]===""&&ne[be-2]===xl){fe.push([fe.pop(),Q]);continue}}be%2===0?fe.push([fe.pop(),Se]):fe.push(Se,""),UZ(Se)&&(B=!0)}let ue=ce?Tbi(fe):Ia(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?ue=[Xyt,ue,Xyt]:((l=t.nodeBeforeCursor)==null?void 0:l.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?ue=[Xyt,ue]:((A=t.nodeAfterCursor)==null?void 0:A.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(ue=[ue,Xyt]),F)return ue;let de=Ia([I,Pl([xl,ue]),xl,C]);return B?de:pme([Ia([I,...ne,C]),de])}function mXa(e,t,r,n,a){let o="",l=[o];function A(I){o=I,l.push([l.pop(),I])}function f(I){I!==""&&(o=I,l.push(I,""))}return e.each(({node:I,next:C})=>{if(I.type==="JSXText"){let b=UM(I);if(D4e(I)){let E=Kyt.split(b,!0);E[0]===""&&(E.shift(),/\n/u.test(E[0])?f(Qyi(a,E[1],I,C)):f(n),E.shift());let N;if(U0(!1,E,-1)===""&&(E.pop(),N=E.pop()),E.length===0)return;for(let[B,F]of E.entries())B%2===1?f(zg):A(F);N!==void 0?/\n/u.test(N)?f(Qyi(a,o,I,C)):f(n):f(Yyi(a,o,I,C))}else/\n/u.test(b)?b.match(/\n/gu).length>1&&f(xl):f(n)}else{let b=r();if(A(b),C&&D4e(C)){let E=Kyt.trim(UM(C)),[N]=Kyt.split(E);f(Yyi(a,N,I,C))}else f(xl)}},"children"),l}function Yyi(e,t,r,n){return e?"":r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?t.length===1?bl:xl:bl}function Qyi(e,t,r,n){return e?xl:t.length===1?r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?xl:bl:xl}var CXa=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function _Xa(e,t,r){let{parent:n}=e;if(CXa.has(n.type))return t;let a=e.match(void 0,l=>l.type==="ArrowFunctionExpression",b_,l=>l.type==="JSXExpressionContainer"),o=Sme(e,r);return Ia([o?"":lh("("),Pl([bl,t]),bl,o?"":lh(")")],{shouldBreak:a})}function yXa(e,t,r){let{node:n}=e,a=[];if(a.push(r("name")),n.value){let o;if(gV(n.value)){let l=UM(n.value),A=Zk(!1,Zk(!1,l.slice(1,-1),"'","'"),""",'"'),f=cbi(A,t.jsxSingleQuote);A=f==='"'?Zk(!1,A,'"',"""):Zk(!1,A,"'","'"),o=e.call(()=>$X(e,fme(f+A+f),t),"value")}else o=r("value");a.push("=",o)}return a}function bXa(e,t,r){let{node:n}=e,a=(o,l)=>o.type==="JSXEmptyExpression"||!ig(o)&&(Vk(o)||e4(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||b_(o)||o.type==="ChainExpression"&&b_(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||nD(l)&&(o.type==="ConditionalExpression"||Aee(o)));return a(n.expression,e.parent)?Ia(["{",r("expression"),pee,"}"]):Ia(["{",Pl([bl,r("expression")]),bl,pee,"}"])}function EXa(e,t,r){var n,a;let{node:o}=e,l=ig(o.name)||ig(o.typeParameters)||ig(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!l)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((n=o.attributes)==null?void 0:n.length)===1&&gV(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` `)&&!l&&!ig(o.attributes[0]))return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),o.selfClosing?" />":">"]);let A=(a=o.attributes)==null?void 0:a.some(I=>gV(I.value)&&I.value.value.includes(` -`)),f=t.singleAttributePerLine&&o.attributes.length>1?xl:zg;return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),Pl(e.map(()=>[f,r()],"attributes")),...KQa(o,t,l)],{shouldBreak:A})}function KQa(e,t,r){return e.selfClosing?[zg,"/>"]:jQa(e,t,r)?[">"]:[bl,">"]}function jQa(e,t,r){let n=e.attributes.length>0&&ig(U0(!1,e.attributes,-1),fA.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!n}function zQa(e,t,r){let{node:n}=e,a=[];a.push(""),a}function qQa(e,t){let{node:r}=e,n=ig(r),a=ig(r,fA.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function $Qa(e,t,r){let n=$X(e,MQa(e,t,r),t);return QQa(e,n,t)}function eXa(e,t){let{node:r}=e,n=ig(r,fA.Line);return[N2(e,t,{indent:n}),n?xl:""]}function tXa(e,t,r){let{node:n}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!ig(a)||!wbi(e)?o:[Pl([bl,$X(e,o,t)]),bl]},n.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function rXa(e,t,r){let{node:n}=e;if(n.type.startsWith("JSX"))switch(n.type){case"JSXAttribute":return XQa(e,t,r);case"JSXIdentifier":return n.name;case"JSXNamespacedName":return vC(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return vC(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return tXa(e,t,r);case"JSXExpressionContainer":return JQa(e,t,r);case"JSXFragment":case"JSXElement":return $Qa(e,t,r);case"JSXOpeningElement":return UQa(e,t,r);case"JSXClosingElement":return zQa(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return qQa(e,t);case"JSXEmptyExpression":return eXa(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new KRe(n,"JSX")}}function nXa(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!R4e(t)}function R4e(e){return e.type==="JSXText"&&(Jyt.hasNonWhitespaceCharacter(UM(e))||!/\n/u.test(UM(e)))}function iXa(e){return e.type==="JSXExpressionContainer"&&gV(e.expression)&&e.expression.value===" "&&!ig(e.expression)}function sXa(e){let{node:t,parent:r}=e;if(!nD(t)||!nD(r))return!1;let{index:n,siblings:a}=e,o;for(let l=n;l>0;l--){let A=a[l-1];if(!(A.type==="JSXText"&&!R4e(A))){o=A;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&obt(o.expression)}function oXa(e){return obt(e.node)||sXa(e)}var Pbi=oXa,aXa=0;function Wbi(e,t,r){var n;let{node:a,parent:o,grandparent:l,key:A}=e,f=A!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),I=a.operator==="|>"&&((n=e.root.extra)==null?void 0:n.__isUsingHackPipeline),C=MTr(e,r,t,!1,f);if(f)return C;if(I)return Ia(C);if(b_(o)&&o.callee===a||o.type==="UnaryExpression"||Yv(o)&&!o.computed)return Ia([Pl([bl,...C]),bl]);let b=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&l.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&l.type==="NGMicrosyntax"&&l.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&l.type!=="ReturnStatement"&&l.type!=="ThrowStatement"&&!b_(l)||o.type==="TemplateLiteral",E=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||Iee(o),N=gee(a.left)&&tRr(a.operator,a.left.operator);if(b||N4e(a)&&!N||!N4e(a)&&E)return Ia(C);if(C.length===0)return"";let B=nD(a.right),F=C.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===KM),Q=C.slice(0,F===-1?1:F+1),X=C.slice(Q.length,B?-1:void 0),ae=Symbol("logicalChain-"+ ++aXa),ne=Ia([...Q,Pl(X)],{id:ae});if(!B)return ne;let ce=U0(!1,C,-1);return Ia([ne,abt(ce,{groupId:ae})])}function MTr(e,t,r,n,a){var o;let{node:l}=e;if(!gee(l))return[Ia(t())];let A=[];tRr(l.operator,l.left.operator)?A=e.call(Q=>MTr(Q,t,r,!0,a),"left"):A.push(Ia(t("left")));let f=N4e(l),I=(l.operator==="|>"||l.type==="NGPipeExpression"||cXa(e,r))&&!ice(r.originalText,l.right),C=!ig(l.right,fA.Leading,hbi)&&ice(r.originalText,l.right),b=l.type==="NGPipeExpression"?"|":l.operator,E=l.type==="NGPipeExpression"&&l.arguments.length>0?Ia(Pl([bl,": ",vC([zg,": "],e.map(()=>oj(2,Ia(t())),"arguments"))])):"",N;if(f)N=[b," ",t("right"),E];else{let Q=b==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(X=>MTr(X,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let X="";if(C)switch(uce(Q)){case Aee:X=Q.splice(0,1)[0];break;case hee:X=Q.contents.splice(0,1)[0];break}N=[zg,X,b," ",Q,E]}else N=[I?zg:"",b,I?" ":zg,Q,E]}let{parent:B}=e,F=ig(l.left,fA.Trailing|fA.Line);if((F||!(a&&l.type==="LogicalExpression")&&B.type!==l.type&&l.left.type!==l.type&&l.right.type!==l.type)&&(N=Ia(N,{shouldBreak:F})),r.experimentalOperatorPosition==="start"?A.push(f||C?" ":"",N):A.push(I?"":" ",N),n&&ig(l)){let Q=iRr($X(e,A,r));return Q.type===cce?Q.parts:Array.isArray(Q)?Q:[Q]}return A}function N4e(e){return e.type!=="LogicalExpression"?!1:!!(e4(e.right)&&e.right.properties.length>0||Vk(e.right)&&e.right.elements.length>0||nD(e.right))}var Dyi=e=>e.type==="BinaryExpression"&&e.operator==="|";function cXa(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&Dyi(e.node)&&!e.hasAncestor(r=>!Dyi(r)&&r.type!=="JsExpressionRoot")}function lXa(e,t,r){let{node:n}=e;if(n.type.startsWith("NG"))switch(n.type){case"NGRoot":return[r("node"),ig(n.node)?" //"+VRe(n.node)[0].value.trimEnd():""];case"NGPipeExpression":return Wbi(e,t,r);case"NGChainedExpression":return Ia(vC([";",zg],e.map(()=>gXa(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":kyi(e)?" ":[";",zg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(n.name)?n.name:JSON.stringify(n.name);case"NGMicrosyntaxExpression":return[r("expression"),n.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,l=kyi(e)||(a===1&&(n.key.name==="then"||n.key.name==="else"||n.key.name==="as")||(a===2||a===3)&&(n.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||n.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),l?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),n.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new KRe(n,"Angular")}}function kyi({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var uXa=_0(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function gXa({node:e}){return DTr(e,uXa)}function Obi(e,t,r){let{node:n}=e;return Ia([vC(zg,e.map(r,"decorators")),Mbi(n,t)?xl:zg])}function AXa(e,t,r){return Hbi(e.node)?[vC(xl,e.map(r,"declaration","decorators")),xl]:""}function dXa(e,t,r){let{node:n,parent:a}=e,{decorators:o}=n;if(!H_(o)||Hbi(a)||Pbi(e))return"";let l=n.type==="ClassExpression"||n.type==="ClassDeclaration"||Mbi(n,t);return[e.key==="declaration"&&sHa(a)?xl:l?aj:"",vC(zg,e.map(r,"decorators")),zg]}function Mbi(e,t){return e.decorators.some(r=>dO(t.originalText,BC(r)))}function Hbi(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return H_(r)&&nbt(e,r[0])}var $yt=class extends Error{name="ArgExpansionBailout"};function pXa(e,t,r){let{node:n}=e,a=qM(n);if(a.length===0)return["(",N2(e,t),")"];let o=a.length-1;if(hXa(a)){let b=["("];return zyt(e,(E,N)=>{b.push(r()),N!==o&&b.push(", ")}),b.push(")"),b}let l=!1,A=[];zyt(e,({node:b},E)=>{let N=r();E===o||(fee(b,t)?(l=!0,N=[N,",",xl,xl]):N=[N,",",zg]),A.push(N)});let f=!t.parser.startsWith("__ng_")&&n.type!=="ImportExpression"&&pee(t,"all")?",":"";function I(){return Ia(["(",Pl([zg,...A]),f,zg,")"],{shouldBreak:!0})}if(l||e.parent.type!=="Decorator"&&fHa(a))return I();if(IXa(a)){let b=A.slice(1);if(b.some(UZ))return I();let E;try{E=r(yyi(n,0),{expandFirstArg:!0})}catch(N){if(N instanceof $yt)return I();throw N}return UZ(E)?[aj,dme([["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])]:dme([["(",E,", ",...b,")"],["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])}if(fXa(a,A,t)){let b=A.slice(0,-1);if(b.some(UZ))return I();let E;try{E=r(yyi(n,-1),{expandLastArg:!0})}catch(N){if(N instanceof $yt)return I();throw N}return UZ(E)?[aj,dme([["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])]:dme([["(",...b,E,")"],["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])}let C=["(",Pl([bl,...A]),lh(f),bl,")"];return obi(e)?C:Ia(C,{shouldBreak:A.some(UZ)||l})}function v4e(e,t=!1){return e4(e)&&(e.properties.length>0||ig(e))||Vk(e)&&(e.elements.length>0||ig(e))||e.type==="TSTypeAssertion"&&v4e(e.expression)||nj(e)&&v4e(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||mXa(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&v4e(e.body,!0)||e4(e.body)||Vk(e.body)||!t&&(b_(e.body)||e.body.type==="ConditionalExpression")||nD(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function fXa(e,t,r){var n,a;let o=U0(!1,e,-1);if(e.length===1){let A=U0(!1,t,-1);if((n=A.label)!=null&&n.embed&&((a=A.label)==null?void 0:a.hug)!==!1)return!0}let l=U0(!1,e,-2);return!ig(o,fA.Leading)&&!ig(o,fA.Trailing)&&v4e(o)&&(!l||l.type!==o.type)&&(e.length!==2||l.type!=="ArrowFunctionExpression"||!Vk(o))&&!(e.length>1&&fEi(o,r))}function IXa(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&CXa(r)?!0:!ig(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&Ybi(r)&&!v4e(r)}function Ybi(e){if(e.type==="ParenthesizedExpression")return Ybi(e.expression);if(nj(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return $Tr(t)&&qX(e.expression,1)}return HRe(e)&&qM(e).length>1?!1:gee(e)?qX(e.left,1)&&qX(e.right,1):ebi(e)||qX(e)}function hXa(e){return e.length===2?xyi(e,0):e.length===3?e[0].type==="Identifier"&&xyi(e,1):!1}function xyi(e,t){let r=e[t],n=e[t+1];return r.type==="ArrowFunctionExpression"&&NG(r).length===0&&r.body.type==="BlockStatement"&&n.type==="ArrayExpression"&&!e.some(a=>ig(a))}function mXa(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||ig(e,fA.Dangling))}function CXa(e){return e.type==="ObjectExpression"&&e.properties.length===1&&Iee(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&gV(e.properties[0].value)&&e.properties[0].value.value==="module"}var HTr=pXa,_Xa=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),b_(e)&&qM(e).length>0);function yXa(e,t,r){var n;let a=r("object"),o=Qbi(e,t,r),{node:l}=e,A=e.findAncestor(C=>!(Yv(C)||C.type==="TSNonNullExpression")),f=e.findAncestor(C=>!(C.type==="ChainExpression"||C.type==="TSNonNullExpression")),I=A&&(A.type==="NewExpression"||A.type==="BindExpression"||A.type==="AssignmentExpression"&&A.left.type!=="Identifier")||l.computed||l.object.type==="Identifier"&&l.property.type==="Identifier"&&!Yv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(_Xa(l.object)||((n=a.label)==null?void 0:n.memberChain));return D4e(a.label,[a,I?o:Ia(Pl([bl,o]))])}function Qbi(e,t,r){let n=r("property"),{node:a}=e,o=KZ(e);return a.computed?!a.property||uee(a.property)?[o,"[",n,"]"]:Ia([o,"[",Pl([bl,n]),bl,"]"]):[o,".",n]}function Xbi(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>Xbi(e,t,r),"expression");let{parent:n}=e,a=!n||n.type==="ExpressionStatement",o=[];function l(Me){let{originalText:je}=t,St=URe(je,BC(Me));return je.charAt(St)===")"?St!==!1&&KTr(je,St+1):fee(Me,t)}function A(){let{node:Me}=e;if(Me.type==="ChainExpression")return e.call(A,"expression");if(b_(Me)&&(ZRe(Me.callee)||b_(Me.callee))){let je=l(Me);o.unshift({node:Me,hasTrailingEmptyLine:je,printed:[$X(e,[KZ(e),fme(e,t,r),HTr(e,t,r)],t),je?xl:""]}),e.call(A,"callee")}else ZRe(Me)?(o.unshift({node:Me,needsParens:Eme(e,t),printed:$X(e,Yv(Me)?Qbi(e,t,r):dEi(e,t,r),t)}),e.call(A,"object")):Me.type==="TSNonNullExpression"?(o.unshift({node:Me,printed:$X(e,"!",t)}),e.call(A,"expression")):o.unshift({node:Me,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[KZ(e),fme(e,t,r),HTr(e,t,r)]}),f.callee&&e.call(A,"callee");let I=[],C=[o[0]],b=1;for(;b0&&I.push(C);function N(Me){return/^[A-Z]|^[$_]+$/u.test(Me)}function B(Me){return Me.length<=t.tabWidth}function F(Me){var je;let St=(je=Me[1][0])==null?void 0:je.node.computed;if(Me[0].length===1){let Yt=Me[0][0].node;return Yt.type==="ThisExpression"||Yt.type==="Identifier"&&(N(Yt.name)||a&&B(Yt.name)||St)}let At=U0(!1,Me[0],-1).node;return Yv(At)&&At.property.type==="Identifier"&&(N(At.property.name)||St)}let Q=I.length>=2&&!ig(I[1][0].node)&&F(I);function X(Me){let je=Me.map(St=>St.printed);return Me.length>0&&U0(!1,Me,-1).needsParens?["(",...je,")"]:je}function ae(Me){return Me.length===0?"":Pl([xl,vC(xl,Me.map(X))])}let ne=I.map(X),ce=ne,fe=Q?3:2,ue=I.flat(),de=ue.slice(1,-1).some(Me=>ig(Me.node,fA.Leading))||ue.slice(0,-1).some(Me=>ig(Me.node,fA.Trailing))||I[fe]&&ig(I[fe][0].node,fA.Leading);if(I.length<=fe&&!de&&!I.some(Me=>U0(!1,Me,-1).hasTrailingEmptyLine))return obi(e)?ce:Ia(ce);let be=U0(!1,I[Q?1:0],-1).node,Se=!b_(be)&&l(be),De=[X(I[0]),Q?I.slice(1,2).map(X):"",Se?xl:"",ae(I.slice(Q?2:1))],k=o.map(({node:Me})=>Me).filter(b_);function et(){let Me=U0(!1,U0(!1,I,-1),-1).node,je=U0(!1,ne,-1);return b_(Me)&&UZ(je)&&k.slice(0,-1).some(St=>St.arguments.some(w4e))}let ct;return de||k.length>2&&k.some(Me=>!Me.arguments.every(je=>qX(je)))||ne.slice(0,-1).some(UZ)||et()?ct=Ia(De):ct=[UZ(ce)||Se?aj:"",dme([ce,De])],D4e({memberChain:!0},ct)}var bXa=Xbi;function Jbi(e,t,r){var n;let{node:a}=e,o=a.type==="NewExpression",l=a.type==="ImportExpression",A=KZ(e),f=qM(a),I=f.length===1&&ibi(f[0],t.originalText);if(I||EXa(e)||sbt(a,e.parent)){let b=[];if(zyt(e,()=>{b.push(r())}),!(I&&(n=b[0].label)!=null&&n.embed))return[o?"new ":"",Gyi(e,r),A,fme(e,t,r),"(",vC(", ",b),")"]}if(!l&&!o&&ZRe(a.callee)&&!e.call(b=>Eme(b,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return bXa(e,t,r);let C=[o?"new ":"",Gyi(e,r),A,fme(e,t,r),HTr(e,t,r)];return l||b_(a.callee)?Ia(C):C}function Gyi(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function EXa(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=qM(t);return t.callee.name==="require"?r.length===1&&gV(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&gV(r[0])&&r[1].type==="ArrayExpression":!1}function k4e(e,t,r,n,a,o){let l=BXa(e,t,r,n,o),A=o?r(o,{assignmentLayout:l}):"";switch(l){case"break-after-operator":return Ia([Ia(n),a,Ia(Pl([zg,A]))]);case"never-break-after-operator":return Ia([Ia(n),a," ",A]);case"fluid":{let f=Symbol("assignment");return Ia([Ia(n),a,Ia(Pl(zg),{id:f}),dee,abt(A,{groupId:f})])}case"break-lhs":return Ia([n,a," ",Ia(A)]);case"chain":return[Ia(n),a,zg,A];case"chain-tail":return[Ia(n),a,Pl([zg,A])];case"chain-tail-arrow-chain":return[Ia(n),a,A];case"only-left":return n}}function SXa(e,t,r){let{node:n}=e;return k4e(e,t,r,r("left"),[" ",n.operator],"right")}function vXa(e,t,r){return k4e(e,t,r,r("id")," =","init")}function BXa(e,t,r,n,a){let{node:o}=e,l=o[a];if(!l)return"only-left";let A=!Uyt(l);if(e.match(Uyt,Ubi,C=>!A||C.type!=="ExpressionStatement"&&C.type!=="VariableDeclaration"))return A?l.type==="ArrowFunctionExpression"&&l.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!A&&Uyt(l.right)||ice(t.originalText,l))return"break-after-operator";if(o.type==="ImportAttribute"||l.type==="CallExpression"&&l.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=GHa(n);if(TXa(o)||kXa(o)||Kbi(o)&&f)return"break-lhs";let I=GXa(o,n,t);return e.call(()=>wXa(e,t,r,I),a)?"break-after-operator":RXa(o)?"break-lhs":!f&&(I||l.type==="TemplateLiteral"||l.type==="TaggedTemplateExpression"||l.type==="BooleanLiteral"||uee(l)||l.type==="ClassExpression")?"never-break-after-operator":"fluid"}function wXa(e,t,r,n){let a=e.node;if(gee(a)&&!N4e(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!LXa(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:I}=a;return gee(I)&&!N4e(I)}let{consequent:A,alternate:f}=a;return A.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return H_(a.decorators)}if(n)return!1;let o=a,l=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,l.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,l.push("expression");else break;return!!(gV(o)||e.call(()=>jbi(e,t,r),...l))}function TXa(e){if(Ubi(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var n;return Iee(r)&&(!r.shorthand||((n=r.value)==null?void 0:n.type)==="AssignmentPattern")})}return!1}function Uyt(e){return e.type==="AssignmentExpression"}function Ubi(e){return Uyt(e)||e.type==="VariableDeclarator"}function RXa(e){let t=DXa(e);if(H_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(n=>n[r]||n.default))return!0}return!1}var NXa=_0(["TSTypeAliasDeclaration","TypeAlias"]);function DXa(e){var t;if(NXa(e))return(t=e.typeParameters)==null?void 0:t.params}function kXa(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=Fyi(t.typeAnnotation);return H_(r)&&r.length>1&&r.some(n=>H_(Fyi(n))||n.type==="TSConditionalType")}function Kbi(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var xXa=_0(["TSTypeReference","GenericTypeAnnotation"]);function Fyi(e){var t;if(xXa(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function jbi(e,t,r,n=!1){var a;let{node:o}=e,l=()=>jbi(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(l,"expression");if(b_(o)){if((a=Jbi(e,t,r).label)!=null&&a.memberChain)return!1;let A=qM(o);return!(A.length===0||A.length===1&&eRr(A[0],t))||FXa(o,r)?!1:e.call(l,"callee")}return Yv(o)?e.call(l,"object"):n&&(o.type==="Identifier"||o.type==="ThisExpression")}function GXa(e,t,r){return Iee(e)?(t=iRr(t),typeof t=="string"&&PRe(t)1)return!0;if(r.length===1){let a=r[0];if(sce(a)||rRr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let n=e.typeParameters?"typeParameters":"typeArguments";if(UZ(t(n)))return!0}return!1}function ZXa(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function LXa(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function Sme(e,t,r,n,a){let o=e.node,l=NG(o),A=a?fme(e,r,t):"";if(l.length===0)return[A,"(",N2(e,r,{filter:N=>t4(r.originalText,BC(N))===")"}),")"];let{parent:f}=e,I=sbt(f),C=zbi(o),b=[];if(yHa(e,(N,B)=>{let F=B===l.length-1;F&&o.rest&&b.push("..."),b.push(t()),!F&&(b.push(","),I||C?b.push(" "):fee(l[B],r)?b.push(xl,xl):b.push(zg))}),n&&!PXa(e)){if(UZ(A)||UZ(b))throw new $yt;return Ia([xTr(A),"(",xTr(b),")"])}let E=l.every(N=>!H_(N.decorators));return C&&E?[A,"(",...b,")"]:I?[A,"(",...b,")"]:(tbi(f)||lHa(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&l.length===1&&l[0].name===null&&o.this!==l[0]&&l[0].typeAnnotation&&o.typeParameters===null&&$Tr(l[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...b,")"]:b:[A,"(",Pl([bl,...b]),lh(!_Ha(o)&&pee(r,"all")?",":""),bl,")"]}function zbi(e){if(!e)return!1;let t=NG(e);if(t.length!==1)return!1;let[r]=t;return!ig(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&nce(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&nce(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||e4(r.right)&&r.right.properties.length===0||Vk(r.right)&&r.right.elements.length===0))}function VXa(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function jRe(e,t){var r;let n=VXa(e);if(!n)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return NG(e).length===1&&(nce(n)||UZ(t))}function PXa(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let n=t.callee.callee;return n.type==="Identifier"||n.type==="MemberExpression"&&!n.computed&&n.object.type==="Identifier"&&n.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function WXa(e){let t=NG(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var OXa=_0(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),MXa=_0(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function HXa(e){let{types:t}=e;if(t.some(n=>ig(n)))return!1;let r=t.find(n=>MXa(n));return r?t.every(n=>n===r||OXa(n)):!1}function qbi(e){return $Tr(e)||nce(e)?!0:sce(e)?HXa(e):!1}function YXa(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[AV(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(n),o}function $bi(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[AV(e)];o.push("type ",r("id"),r("typeParameters"));let l=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[k4e(e,t,r,o," =",l),n]}function eEi(e,t,r){let n=!1;return Ia(e.map(({isFirst:a,previous:o,node:l,index:A})=>{let f=r();if(a)return f;let I=nce(l),C=nce(o);return C&&I?[" & ",n?Pl(f):f]:!C&&!I?t.experimentalOperatorPosition==="start"?Pl([zg,"& ",f]):Pl([" &",zg,f]):(A>1&&(n=!0),[" & ",A>1?Pl(f):f])},"types"))}function tEi(e,t,r){let{node:n}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!oce(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&ice(t.originalText,n)),l=qbi(n),A=e.map(C=>{let b=r();return l||(b=oj(2,b)),$X(C,b,t)},"types");if(l)return vC(" | ",A);let f=o&&!ice(t.originalText,n),I=[lh([f?zg:"","| "]),vC([zg,"| "],A)];return Eme(e,t)?Ia([Pl(I),bl]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?Ia([Pl([lh(["(",bl]),I]),bl,lh(")")]):Ia(o?Pl(I):I)}function QXa(e){var t;let{node:r,parent:n}=e;return r.type==="FunctionTypeAnnotation"&&(tbi(n)||!((n.type==="ObjectTypeProperty"||n.type==="ObjectTypeInternalSlot")&&!n.variance&&!n.optional&&nbt(n,r)||n.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function rEi(e,t,r){let{node:n}=e,a=[cbt(e)];(n.type==="TSConstructorType"||n.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=Sme(e,r,t,!1,!0),l=[];return n.type==="FunctionTypeAnnotation"?l.push(QXa(e)?" => ":": ",r("returnType")):l.push(Lk(e,r,n.returnType?"returnType":"typeAnnotation")),jRe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function nEi(e,t,r){return[r("objectType"),KZ(e),"[",r("indexType"),"]"]}function iEi(e,t,r){return["infer ",r("typeParameter")]}function Zyi(e,t,r){let{node:n}=e;return[n.postfix?"":r,Lk(e,t),n.postfix?r:""]}function sEi(e,t,r){let{node:n}=e;return["...",...n.type==="TupleTypeSpreadElement"&&n.label?[r("label"),": "]:[],r("typeAnnotation")]}function oEi(e,t,r){let{node:n}=e;return[n.variance?r("variance"):"",r("label"),n.optional?"?":"",": ",r("elementType")]}var XXa=new WeakSet;function Lk(e,t,r="typeAnnotation"){let{node:{[r]:n}}=e;if(!n)return"";let a=!1;if(n.type==="TSTypeAnnotation"||n.type==="TypeAnnotation"){let o=e.call(aEi,r);(o==="=>"||o===":"&&ig(n,fA.Leading))&&(a=!0),XXa.add(n)}return a?[" ",t(r)]:t(r)}var aEi=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function cEi(e,t,r){let n=aEi(e);return n?[n," ",r("typeAnnotation")]:r("typeAnnotation")}function lEi(e){return[e("elementType"),"[]"]}function uEi({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",n=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(n)]}function gEi(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",Lk(e,t)]:""]}function KZ(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":b_(t)||Yv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function AEi(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var JXa=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function AV(e){let{node:t}=e;return t.declare||JXa.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var UXa=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function cbt({node:e}){return e.abstract||UXa.has(e.type)?"abstract ":""}function fme(e,t,r){let n=e.node;return n.typeArguments?r("typeArguments"):n.typeParameters?r("typeParameters"):""}function dEi(e,t,r){return["::",r("callee")]}function tce(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:Pl([zg,t])}function pEi(e,t){return["...",t("argument"),Lk(e,t)]}function ebt(e){return e.accessibility?e.accessibility+" ":""}function KXa(e,t,r,n){let{node:a}=e,o=a.inexact?"...":"";return ig(a,fA.Dangling)?Ia([r,o,N2(e,t,{indent:!0}),bl,n]):[r,o,n]}function dRr(e,t,r){let{node:n}=e,a=[],o=n.type==="TupleExpression"?"#[":"[",l="]",A=n.type==="TupleTypeAnnotation"&&n.types?"types":n.type==="TSTupleType"||n.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=n[A];if(f.length===0)a.push(KXa(e,t,o,l));else{let I=U0(!1,f,-1),C=I?.type!=="RestElement"&&!n.inexact,b=I===null,E=Symbol("array"),N=!t.__inJestEach&&f.length>1&&f.every((Q,X,ae)=>{let ne=Q?.type;if(!Vk(Q)&&!e4(Q))return!1;let ce=ae[X+1];if(ce&&ne!==ce.type)return!1;let fe=Vk(Q)?"elements":"properties";return Q[fe]&&Q[fe].length>1}),B=fEi(n,t),F=C?b?",":pee(t)?B?lh(",","",{groupId:E}):lh(","):"":"";a.push(Ia([o,Pl([bl,B?zXa(e,t,r,F):[jXa(e,t,A,n.inexact,r),F],N2(e,t)]),bl,l],{shouldBreak:N,id:E}))}return a.push(KZ(e),Lk(e,r)),a}function fEi(e,t){return Vk(e)&&e.elements.length>1&&e.elements.every(r=>r&&(uee(r)||$yi(r)&&!ig(r.argument))&&!ig(r,fA.Trailing|fA.Line,n=>!dO(t.originalText,ZS(n),{backwards:!0})))}function IEi({node:e},{originalText:t}){let r=a=>JTr(t,UTr(t,a)),n=a=>t[a]===","?a:n(r(a+1));return KTr(t,n(BC(e)))}function jXa(e,t,r,n,a){let o=[];return e.each(({node:l,isLast:A})=>{o.push(l?Ia(a()):""),(!A||n)&&o.push([",",zg,l&&IEi(e,t)?bl:""])},r),n&&o.push("..."),o}function zXa(e,t,r,n){let a=[];return e.each(({isLast:o,next:l})=>{a.push([r(),o?n:","]),o||a.push(IEi(e,t)?[xl,xl]:ig(l,fA.Leading|fA.Line)?xl:zg)},"elements"),dbi(a)}var qXa=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/,$Xa=e=>qXa.test(e),e4a=$Xa;function t4a(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var YRe=t4a,Kyt=new WeakMap;function hEi(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function Lyi(e,t){return t.parser==="json"||t.parser==="jsonc"||!gV(e.key)||MRe(UM(e.key),t).slice(1,-1)!==e.key.value?!1:!!(e4a(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||hEi(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function r4a(e,t){let{key:r}=e.node;return(r.type==="Identifier"||uee(r)&&hEi(YRe(UM(r)))&&String(r.value)===YRe(UM(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&Kyt.get(e.parent))}function x4e(e,t,r){let{node:n}=e;if(n.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=n;if(t.quoteProps==="consistent"&&!Kyt.has(a)){let l=e.siblings.some(A=>!A.computed&&gV(A.key)&&!Lyi(A,t));Kyt.set(a,l)}if(r4a(e,t)){let l=MRe(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(A=>$X(A,l,t),"key")}return Lyi(n,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!Kyt.get(a))?e.call(l=>$X(l,/^\d/u.test(o.value)?YRe(o.value):o.value,t),"key"):r("key")}function BTr(e,t,r){let{node:n}=e;return n.shorthand?r("value"):k4e(e,t,r,x4e(e,t,r),":","value")}var n4a=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&ibt(r));function mEi(e,t,r,n){if(n4a(e))return pRr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&n!=null&&n.expandLastArg){let{parent:C}=e;b_(C)&&(qM(C).length>1||NG(a).every(b=>b.type==="Identifier"&&!b.typeAnnotation))&&(o=!0)}let l=[AV(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],A=Sme(e,t,r,o),f=lbt(e,t),I=jRe(a,f);return l.push(fme(e,r,t),Ia([I?Ia(A):A,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&l.push(";"),l}function YTr(e,t,r){let{node:n}=e,{kind:a}=n,o=n.value||n,l=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&l.push("async "):(jTr.ok(a==="get"||a==="set"),l.push(a," ")),o.generator&&l.push("*"),l.push(x4e(e,t,r),n.optional||n.key.optional?"?":"",n===o?pRr(e,t,r):r("value")),l}function pRr(e,t,r){let{node:n}=e,a=Sme(e,r,t),o=lbt(e,r),l=WXa(n),A=jRe(n,o),f=[fme(e,t,r),Ia([l?Ia(a,{shouldBreak:!0}):A?Ia(a):a,o])];return n.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function i4a(e){let t=NG(e);return t.length===1&&!e.typeParameters&&!ig(e,fA.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!ig(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function CEi(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return i4a(r)}return!1}function lbt(e,t){let{node:r}=e,n=[Lk(e,t,"returnType")];return r.predicate&&n.push(t("predicate")),n}function _Ei(e,t,r){let{node:n}=e,a=t.semi?";":"",o=[];if(n.argument){let f=r("argument");a4a(t,n.argument)?f=["(",Pl([xl,f]),xl,")"]:(gee(n.argument)||n.argument.type==="SequenceExpression"||t.experimentalTernaries&&n.argument.type==="ConditionalExpression"&&(n.argument.consequent.type==="ConditionalExpression"||n.argument.alternate.type==="ConditionalExpression"))&&(f=Ia([lh("("),Pl([bl,f]),bl,lh(")")])),o.push(" ",f)}let l=ig(n,fA.Dangling),A=a&&l&&ig(n,fA.Last|fA.Line);return A&&o.push(a),l&&o.push(" ",N2(e,t)),A||o.push(a),o}function s4a(e,t,r){return["return",_Ei(e,t,r)]}function o4a(e,t,r){return["throw",_Ei(e,t,r)]}function a4a(e,t){if(ice(e.originalText,t)||ig(t,fA.Leading,r=>ace(e.originalText,ZS(r),BC(r)))&&!nD(t))return!0;if(zTr(t)){let r=t,n;for(;n=iHa(r);)if(r=n,ice(e.originalText,r))return!0}return!1}var wTr=new WeakMap;function yEi(e){return wTr.has(e)||wTr.set(e,e.type==="ConditionalExpression"&&!JZ(e,t=>t.type==="ObjectExpression")),wTr.get(e)}var bEi=e=>e.type==="SequenceExpression";function c4a(e,t,r,n={}){let a=[],o,l=[],A=!1,f=!n.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",I;(function X(){let{node:ae}=e,ne=l4a(e,t,r,n);if(a.length===0)a.push(ne);else{let{leading:ce,trailing:fe}=Vbi(e,t);a.push([ce,ne]),l.unshift(fe)}f&&(A||(A=ae.returnType&&NG(ae).length>0||ae.typeParameters||NG(ae).some(ce=>ce.type!=="Identifier"))),!f||ae.body.type!=="ArrowFunctionExpression"?(o=r("body",n),I=ae.body):e.call(X,"body")})();let C=!ice(t.originalText,I)&&(bEi(I)||u4a(I,o,t)||!A&&yEi(I)),b=e.key==="callee"&&HRe(e.parent),E=Symbol("arrow-chain"),N=g4a(e,n,{signatureDocs:a,shouldBreak:A}),B=!1,F=!1,Q=!1;return f&&(b||n.assignmentLayout)&&(F=!0,Q=!ig(e.node,fA.Leading&fA.Line),B=n.assignmentLayout==="chain-tail-arrow-chain"||b&&!C),o=A4a(e,t,n,{bodyDoc:o,bodyComments:l,functionBody:I,shouldPutBodyOnSameLine:C}),Ia([Ia(F?Pl([Q?bl:"",N]):N,{shouldBreak:B,id:E})," =>",f?abt(o,{groupId:E}):Ia(o),f&&b?lh(bl,"",{groupId:E}):""])}function l4a(e,t,r,n){let{node:a}=e,o=[];if(a.async&&o.push("async "),CEi(e,t))o.push(r(["params",0]));else{let A=n.expandLastArg||n.expandFirstArg,f=lbt(e,r);if(A){if(UZ(f))throw new $yt;f=Ia(xTr(f))}o.push(Ia([Sme(e,r,t,A,!0),f]))}let l=N2(e,t,{filter(A){let f=URe(t.originalText,BC(A));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return l&&o.push(" ",l),o}function u4a(e,t,r){var n,a;return Vk(e)||e4(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||nD(e)||((n=t.label)==null?void 0:n.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||ibi(e,r.originalText))}function g4a(e,t,{signatureDocs:r,shouldBreak:n}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&HRe(a)||gee(a)?Ia([r[0]," =>",Pl([zg,vC([" =>",zg],r.slice(1))])],{shouldBreak:n}):o==="callee"&&HRe(a)||t.assignmentLayout?Ia(vC([" =>",zg],r),{shouldBreak:n}):Ia(Pl(vC([" =>",zg],r)),{shouldBreak:n})}function A4a(e,t,r,{bodyDoc:n,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:l}){let{node:A,parent:f}=e,I=r.expandLastArg&&pee(t,"all")?lh(","):"",C=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!ig(A)?bl:"";return l&&yEi(o)?[" ",Ia([lh("","("),Pl([bl,n]),lh("",")"),I,C]),a]:(bEi(o)&&(n=Ia(["(",Pl([bl,n]),bl,")"])),l?[" ",n,a]:[Pl([zg,n,a]),I,C])}var d4a=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},p4a=d4a;function QTr(e,t,r,n){let{node:a}=e,o=[],l=p4a(!1,a[n],A=>A.type!=="EmptyStatement");return e.each(({node:A})=>{A.type!=="EmptyStatement"&&(o.push(r()),A!==l&&(o.push(xl),fee(A,t)&&o.push(xl)))},n),o}function EEi(e,t,r){let n=f4a(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return n?[n,xl]:"";let l=[];if(a.type==="StaticBlock"&&l.push("static "),l.push("{"),n)l.push(Pl([xl,n]),xl);else{let A=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!A.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||l.push(xl)}return l.push("}"),l}function f4a(e,t,r){let{node:n}=e,a=H_(n.directives),o=n.body.some(f=>f.type!=="EmptyStatement"),l=ig(n,fA.Dangling);if(!a&&!o&&!l)return"";let A=[];return a&&(A.push(QTr(e,t,r,"directives")),(o||l)&&(A.push(xl),fee(U0(!1,n.directives,-1),t)&&A.push(xl))),o&&A.push(QTr(e,t,r,"body")),l&&A.push(N2(e,t)),A}function I4a(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var SEi=I4a;function h4a(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function m4a(e,t,r){let{node:n}=e;return Ia([n.variance?r("variance"):"","[",Pl([r("keyTparam")," in ",r("sourceType")]),"]",h4a(n.optional),": ",r("propType")])}function vEi(e,t){return e==="+"||e==="-"?e+t:t}function C4a(e,t,r){let{node:n}=e,a=t.objectWrap==="preserve"&&ace(t.originalText,ZS(n),ZS(n.typeParameter));return Ia(["{",Pl([t.bracketSpacing?zg:bl,Ia([r("typeParameter"),n.optional?vEi(n.optional,"?"):"",n.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?lh(";"):""]),N2(e,t),t.bracketSpacing?zg:bl,"}"],{shouldBreak:a})}var fRr=SEi("typeParameters");function _4a(e,t,r){let{node:n}=e;return NG(n).length===1&&n.type.startsWith("TS")&&!n[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function B4e(e,t,r,n){let{node:a}=e;if(!a[n])return"";if(!Array.isArray(a[n]))return r(n);let o=sbt(e.grandparent),l=e.match(f=>!(f[n].length===1&&nce(f[n][0])),void 0,(f,I)=>I==="typeAnnotation",f=>f.type==="Identifier",Kbi);if(a[n].length===0||!l&&(o||a[n].length===1&&(a[n][0].type==="NullableTypeAnnotation"||qbi(a[n][0]))))return["<",vC(", ",e.map(r,n)),y4a(e,t),">"];let A=a.type==="TSTypeParameterInstantiation"?"":_4a(e,t,n)?",":pee(t)?lh(","):"";return Ia(["<",Pl([bl,vC([",",zg],e.map(r,n))]),A,bl,">"],{id:fRr(a)})}function y4a(e,t){let{node:r}=e;if(!ig(r,fA.Dangling))return"";let n=!ig(r,fA.Line),a=N2(e,t,{indent:!n});return n?a:[a,xl]}function BEi(e,t,r){let{node:n,parent:a}=e,o=[n.const?"const ":""],l=n.type==="TSTypeParameter"?r("name"):n.name;if(a.type==="TSMappedType")return a.readonly&&o.push(vEi(a.readonly,"readonly")," "),o.push("[",l),n.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(n.variance&&o.push(r("variance")),n.in&&o.push("in "),n.out&&o.push("out "),o.push(l),n.bound&&(n.usesExtendsBound&&o.push(" extends "),o.push(Lk(e,r,"bound"))),n.constraint){let A=Symbol("constraint");o.push(" extends",Ia(Pl(zg),{id:A}),dee,abt(r("constraint"),{groupId:A}))}return n.default&&o.push(" = ",r("default")),Ia(o)}var wEi=_0(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function TEi(e,t,r){let{node:n}=e,a=[AV(e),cbt(e),"class"],o=ig(n.id,fA.Trailing)||ig(n.typeParameters,fA.Trailing)||ig(n.superClass)||H_(n.extends)||H_(n.mixins)||H_(n.implements),l=[],A=[];if(n.id&&l.push(" ",r("id")),l.push(r("typeParameters")),n.superClass){let C=[S4a(e,t,r),r(n.superTypeArguments?"superTypeArguments":"superTypeParameters")],b=e.call(E=>["extends ",$X(E,C,t)],"superClass");o?A.push(zg,Ia(b)):A.push(" ",b)}else A.push(TTr(e,t,r,"extends"));A.push(TTr(e,t,r,"mixins"),TTr(e,t,r,"implements"));let f;if(o){let C;NEi(n)?C=[...l,Pl(A)]:C=Pl([...l,A]),f=REi(n),a.push(Ia(C,{id:f}))}else a.push(...l,...A);let I=n.body;return o&&H_(I.body)?a.push(lh(xl," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var REi=SEi("heritageGroup");function b4a(e){return lh(xl,"",{groupId:REi(e)})}function E4a(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function NEi(e){return e.typeParameters&&!ig(e.typeParameters,fA.Trailing|fA.Line)&&!E4a(e)}function TTr(e,t,r,n){let{node:a}=e;if(!H_(a[n]))return"";let o=N2(e,t,{marker:n});return[NEi(a)?lh(" ",zg,{groupId:fRr(a.typeParameters)}):zg,o,o&&xl,n,Ia(Pl([zg,vC([",",zg],e.map(r,n))]))]}function S4a(e,t,r){let n=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?Ia(lh(["(",Pl([bl,n]),bl,")"],n)):n}function DEi(e,t,r){let{node:n}=e,a=[];return H_(n.decorators)&&a.push(Obi(e,t,r)),a.push(ebt(n)),n.static&&a.push("static "),a.push(cbt(e)),n.override&&a.push("override "),a.push(YTr(e,t,r)),a}function kEi(e,t,r){let{node:n}=e,a=[],o=t.semi?";":"";H_(n.decorators)&&a.push(Obi(e,t,r)),a.push(AV(e),ebt(n)),n.static&&a.push("static "),a.push(cbt(e)),n.override&&a.push("override "),n.readonly&&a.push("readonly "),n.variance&&a.push(r("variance")),(n.type==="ClassAccessorProperty"||n.type==="AccessorProperty"||n.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(x4e(e,t,r),KZ(e),AEi(e),Lk(e,r));let l=n.type==="TSAbstractPropertyDefinition"||n.type==="TSAbstractAccessorProperty";return[k4e(e,t,r,a," =",l?void 0:"value"),o]}function v4a(e,t,r){let{node:n}=e,a=[];return e.each(({node:o,next:l,isLast:A})=>{a.push(r()),!t.semi&&wEi(o)&&B4a(o,l)&&a.push(";"),A||(a.push(xl),fee(o,t)&&a.push(xl))},"body"),ig(n,fA.Dangling)&&a.push(N2(e,t)),["{",a.length>0?[Pl([xl,a]),xl]:"","}"]}function B4a(e,t){var r;let{type:n,name:a}=e.key;if(!e.computed&&n==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(wEi(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var w4a=_0(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function xEi(e){return w4a(e)?xEi(e.expression):e}var T4a=_0(["FunctionExpression","ArrowFunctionExpression"]);function R4a(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function N4a(e,t){if(t.semi||FEi(e,t)||ZEi(e,t))return!1;let{node:r,key:n,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(n==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||n==="consequent"&&a.type==="SwitchCase")&&e.call(()=>GEi(e,t),"expression"))}function GEi(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!CEi(e,t))return!0;break;case"UnaryExpression":{let{prefix:n,operator:a}=r;if(n&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(nD(r))return!0}return Eme(e,t)?!0:zTr(r)?e.call(()=>GEi(e,t),...qyi(r)):!1}function FEi({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&nD(e.expression)&&t.type==="Program"&&t.body.length===1}function ZEi({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function D4a(e,t,r){let n=[r("expression")];if(ZEi(e,t)){let a=xEi(e.node.expression);(T4a(a)||R4a(a))&&n.push(";")}else FEi(e,t)||t.semi&&n.push(";");return n}function k4a(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let n=e.map(r,"program","body",0,"params");if(n.length===1)return n[0];let a=vC([",",zg],n);return t.__isVueForBindingLeft?["(",Pl([bl,Ia(a)]),bl,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let n=e.map(r,"program","body",0,"typeParameters","params");return vC([",",zg],n)}}function x4a(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return Vyi(r);case"BigIntLiteral":return XTr(r.extra.raw);case"NumericLiteral":return YRe(r.extra.raw);case"StringLiteral":return pme(MRe(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return Pyi(r.extra.raw,t);case"Literal":{if(r.regex)return Vyi(r.regex);if(r.bigint)return XTr(r.raw);let{value:n}=r;return typeof n=="number"?YRe(r.raw):typeof n=="string"?G4a(e)?Pyi(r.raw,t):pme(MRe(r.raw,t)):String(n)}}}function G4a(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function XTr(e){return e.toLowerCase()}function Vyi({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function Pyi(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let n=t.singleQuote?"'":'"';return n+r+n}function F4a(e,t,r){let n=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=ZS(a);if(o>r)break;let l=BC(a);if(le.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function PEi(e,t,r){let{node:n}=e,a=[AXa(e,t,r),AV(e),"export",VEi(n)?" default":""],{declaration:o,exported:l}=n;return ig(n,fA.Dangling)&&(a.push(" ",N2(e,t)),sbi(n)&&a.push(xl)),o?a.push(" ",r("declaration")):(a.push(P4a(n)),n.type==="ExportAllDeclaration"||n.type==="DeclareExportAllDeclaration"?(a.push(" *"),l&&a.push(" as ",r("exported"))):a.push(MEi(e,t,r)),a.push(OEi(e,t,r),YEi(e,t,r))),a.push(V4a(n,t)),a}var L4a=_0(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function V4a(e,t){return t.semi&&(!e.declaration||VEi(e)&&!L4a(e.declaration))?";":""}function IRr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function WEi(e,t){return IRr(e.importKind,t)}function P4a(e){return IRr(e.exportKind)}function OEi(e,t,r){let{node:n}=e;if(!n.source)return"";let a=[];return HEi(n,t)&&a.push(" from"),a.push(" ",r("source")),a}function MEi(e,t,r){let{node:n}=e;if(!HEi(n,t))return"";let a=[" "];if(H_(n.specifiers)){let o=[],l=[];e.each(()=>{let A=e.node.type;if(A==="ExportNamespaceSpecifier"||A==="ExportDefaultSpecifier"||A==="ImportNamespaceSpecifier"||A==="ImportDefaultSpecifier")o.push(r());else if(A==="ExportSpecifier"||A==="ImportSpecifier")l.push(r());else throw new KRe(n,"specifier")},"specifiers"),a.push(vC(", ",o)),l.length>0&&(o.length>0&&a.push(", "),l.length>1||o.length>0||n.specifiers.some(A=>ig(A))?a.push(Ia(["{",Pl([t.bracketSpacing?zg:bl,vC([",",zg],l)]),lh(pee(t)?",":""),t.bracketSpacing?zg:bl,"}"])):a.push(["{",t.bracketSpacing?" ":"",...l,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function HEi(e,t){return e.type!=="ImportDeclaration"||H_(e.specifiers)||e.importKind==="type"?!0:LEi(t,ZS(e),ZS(e.source)).trimEnd().endsWith("from")}function W4a(e,t){var r,n;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=LEi(t,BC(e.source),(n=e.attributes)!=null&&n[0]?ZS(e.attributes[0]):BC(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||H_(e.attributes)?"with":void 0}function YEi(e,t,r){let{node:n}=e;if(!n.source)return"";let a=W4a(n,t);if(!a)return"";let o=[` ${a} {`];return H_(n.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(vC(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function O4a(e,t,r){let{node:n}=e,{type:a}=n,o=a.startsWith("Import"),l=o?"imported":"local",A=o?"local":"exported",f=n[l],I=n[A],C="",b="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?C="*":f&&(C=r(l)),I&&!M4a(n)&&(b=r(A)),[IRr(a==="ImportSpecifier"?n.importKind:n.exportKind,!1),C,C&&b?" as ":"",b]}function M4a(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!QMa(t,r))return!1;if(gV(t))return t.value===r.value&&UM(t)===UM(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function ubt(e,t,r){var n;let a=t.semi?";":"",{node:o}=e,l=o.type==="ObjectTypeAnnotation",A=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||A?"members":o.type==="TSInterfaceBody"?"body":"properties"];l&&f.push("indexers","callProperties","internalSlots");let I=f.flatMap(ue=>e.map(({node:de})=>({node:de,printed:r(),loc:ZS(de)}),ue));f.length>1&&I.sort((ue,de)=>ue.loc-de.loc);let{parent:C,key:b}=e,E=l&&b==="body"&&(C.type==="InterfaceDeclaration"||C.type==="DeclareInterface"||C.type==="DeclareClass"),N=o.type==="TSInterfaceBody"||A||E||o.type==="ObjectPattern"&&C.type!=="FunctionDeclaration"&&C.type!=="FunctionExpression"&&C.type!=="ArrowFunctionExpression"&&C.type!=="ObjectMethod"&&C.type!=="ClassMethod"&&C.type!=="ClassPrivateMethod"&&C.type!=="AssignmentPattern"&&C.type!=="CatchClause"&&o.properties.some(ue=>ue.value&&(ue.value.type==="ObjectPattern"||ue.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&I.length>0&&ace(t.originalText,ZS(o),I[0].loc),B=E?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?lh(a,";"):",",F=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",Q=o.exact?"|}":"}",X=[],ae=I.map(ue=>{let de=[...X,Ia(ue.printed)];return X=[B,zg],(ue.node.type==="TSPropertySignature"||ue.node.type==="TSMethodSignature"||ue.node.type==="TSConstructSignatureDeclaration"||ue.node.type==="TSCallSignatureDeclaration")&&ig(ue.node,fA.PrettierIgnore)&&X.shift(),fee(ue.node,t)&&X.push(xl),de});if(o.inexact||o.hasUnknownMembers){let ue;if(ig(o,fA.Dangling)){let de=ig(o,fA.Line);ue=[N2(e,t),de||dO(t.originalText,BC(U0(!1,VRe(o),-1)))?xl:zg,"..."]}else ue=["..."];ae.push([...X,...ue])}let ne=(n=U0(!1,I,-1))==null?void 0:n.node,ce=!(o.inexact||o.hasUnknownMembers||ne&&(ne.type==="RestElement"||(ne.type==="TSPropertySignature"||ne.type==="TSCallSignatureDeclaration"||ne.type==="TSMethodSignature"||ne.type==="TSConstructSignatureDeclaration")&&ig(ne,fA.PrettierIgnore))),fe;if(ae.length===0){if(!ig(o,fA.Dangling))return[F,Q,Lk(e,r)];fe=Ia([F,N2(e,t,{indent:!0}),bl,Q,KZ(e),Lk(e,r)])}else fe=[E&&H_(o.properties)?b4a(C):"",F,Pl([t.bracketSpacing?zg:bl,...ae]),lh(ce&&(B!==","||pee(t))?B:""),t.bracketSpacing?zg:bl,Q,KZ(e),Lk(e,r)];return e.match(ue=>ue.type==="ObjectPattern"&&!H_(ue.decorators),RTr)||nce(o)&&(e.match(void 0,(ue,de)=>de==="typeAnnotation",(ue,de)=>de==="typeAnnotation",RTr)||e.match(void 0,(ue,de)=>ue.type==="FunctionTypeParam"&&de==="typeAnnotation",RTr))||!N&&e.match(ue=>ue.type==="ObjectPattern",ue=>ue.type==="AssignmentExpression"||ue.type==="VariableDeclarator")?fe:Ia(fe,{shouldBreak:N})}function RTr(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&zbi(e)}function H4a(e){let t=[e];for(let r=0;rE[Se]===n),B=E.type===n.type&&!N,F,Q,X=0;do Q=F||n,F=e.getParentNode(X),X++;while(F&&F.type===n.type&&A.every(Se=>F[Se]!==Q));let ae=F||E,ne=Q;if(a&&(nD(n[A[0]])||nD(f)||nD(I)||H4a(ne))){b=!0,B=!0;let Se=k=>[lh("("),Pl([bl,k]),bl,lh(")")],De=k=>k.type==="NullLiteral"||k.type==="Literal"&&k.value===null||k.type==="Identifier"&&k.name==="undefined";C.push(" ? ",De(f)?r(o):Se(r(o))," : ",I.type===n.type||De(I)?r(l):Se(r(l)))}else{let Se=k=>t.useTabs?Pl(r(k)):oj(2,r(k)),De=[zg,"? ",f.type===n.type?lh("","("):"",Se(o),f.type===n.type?lh("",")"):"",zg,": ",Se(l)];C.push(E.type!==n.type||E[l]===n||N?De:t.useTabs?Abi(Pl(De)):oj(Math.max(0,t.tabWidth-2),De))}let ce=[o,l,...A].some(Se=>ig(n[Se],De=>zM(De)&&ace(t.originalText,ZS(De),BC(De)))),fe=Se=>E===ae?Ia(Se,{shouldBreak:ce}):ce?[Se,aj]:Se,ue=!b&&(Yv(E)||E.type==="NGPipeExpression"&&E.left===n)&&!E.computed,de=X4a(e),be=fe([Y4a(e,t,r),B?C:Pl(C),a&&ue&&!de?bl:""]);return N||de?Ia([Pl([bl,be]),bl]):be}function U4a(e,t){return(Yv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function K4a(e,t,r,n){return[...e.map(a=>VRe(a)),VRe(t),VRe(r)].flat().some(a=>zM(a)&&ace(n.originalText,ZS(a),BC(a)))}var j4a=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function z4a(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,n=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===n||b_(o)&&o.callee===n||Yv(o)&&o.object===n||o.type==="TSNonNullExpression"&&o.expression===n){n=o;continue}o.type==="NewExpression"&&o.callee===n||nj(o)&&o.expression===n?(r=e.getParentNode(a+1),n=o):r=o}return n===t?!1:r[j4a.get(r.type)]===n}var NTr=e=>[lh("("),Pl([bl,e]),bl,lh(")")];function hRr(e,t,r,n){if(!t.experimentalTernaries)return J4a(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",l=oce(a),A=o?"consequent":"trueType",f=o?"alternate":"falseType",I=o?["test"]:["checkType","extendsType"],C=a[A],b=a[f],E=I.map(ke=>a[ke]),{parent:N}=e,B=N.type===a.type,F=B&&I.some(ke=>N[ke]===a),Q=B&&N[f]===a,X=C.type===a.type,ae=b.type===a.type,ne=ae||Q,ce=t.tabWidth>2||t.useTabs,fe,ue,de=0;do ue=fe||a,fe=e.getParentNode(de),de++;while(fe&&fe.type===a.type&&I.every(ke=>fe[ke]!==ue));let be=fe||N,Se=n&&n.assignmentLayout&&n.assignmentLayout!=="break-after-operator"&&(N.type==="AssignmentExpression"||N.type==="VariableDeclarator"||N.type==="ClassProperty"||N.type==="PropertyDefinition"||N.type==="ClassPrivateProperty"||N.type==="ObjectProperty"||N.type==="Property"),De=(N.type==="ReturnStatement"||N.type==="ThrowStatement")&&!(X||ae),k=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",et=z4a(e),ct=U4a(a,N),Me=l&&Eme(e,t),je=ce?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",St=K4a(E,C,b,t)||X||ae,At=!ne&&!B&&!l&&(k?C.type==="NullLiteral"||C.type==="Literal"&&C.value===null:eRr(C,t)&&myi(a.test,3)),Yt=ne||Q||l&&!B||B&&o&&myi(a.test,1)||At,Tr=[];!X&&ig(C,fA.Dangling)&&e.call(ke=>{Tr.push(N2(ke,t),xl)},"consequent");let Nr=[];ig(a.test,fA.Dangling)&&e.call(ke=>{Nr.push(N2(ke,t))},"test"),!ae&&ig(b,fA.Dangling)&&e.call(ke=>{Nr.push(N2(ke,t))},"alternate"),ig(a,fA.Dangling)&&Nr.push(N2(e,t));let er=Symbol("test"),vt=Symbol("consequent"),xt=Symbol("test-and-consequent"),Zr=o?[NTr(r("test")),a.test.type==="ConditionalExpression"?aj:""]:[r("checkType")," ","extends"," ",oce(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):Ia(NTr(r("extendsType")))],qt=Ia([Zr," ?"],{id:er}),Xt=r(A),lr=Pl([X||k&&(nD(C)||B||ne)?xl:zg,Tr,Xt]),cr=Yt?Ia([qt,ne?lr:lh(lr,Ia(lr,{id:vt}),{groupId:er})],{id:xt}):[qt,lr],Ar=r(f),qr=At?lh(Ar,Abi(NTr(Ar)),{groupId:xt}):Ar,_n=[cr,Nr.length>0?[Pl([xl,Nr]),xl]:ae?xl:At?lh(zg," ",{groupId:xt}):zg,":",ae?" ":ce?Yt?lh(je,lh(ne||At?" ":je," "),{groupId:xt}):lh(je," "):" ",ae?qr:Ia([Pl(qr),k&&!At?bl:""]),ct&&!et?bl:"",St?aj:""];return Se&&!St?Ia(Pl([bl,Ia(_n)])):Se||De?Ia(Pl(_n)):et||l&&F?Ia([Pl([bl,_n]),Me?bl:""]):N===be?Ia(_n):_n}function q4a(e,t,r,n){let{node:a}=e;if(qTr(a))return x4a(e,t);let o=t.semi?";":"",l=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),xl];case"File":return k4a(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return D4a(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!ig(a.expression)&&(e4(a.expression)||Vk(a.expression))?["(",r("expression"),")"]:Ia(["(",Pl([bl,r("expression")]),bl,")"]);case"AssignmentExpression":return SXa(e,t,r);case"VariableDeclarator":return vXa(e,t,r);case"BinaryExpression":case"LogicalExpression":return Wbi(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return yXa(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&l.push(r("object")),l.push(Ia(Pl([bl,dEi(e,t,r)]))),l;case"Identifier":return[a.name,KZ(e),AEi(e),Lk(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return pEi(e,r);case"FunctionDeclaration":case"FunctionExpression":return mEi(e,r,t,n);case"ArrowFunctionExpression":return c4a(e,t,r,n);case"YieldExpression":return l.push("yield"),a.delegate&&l.push("*"),a.argument&&l.push(" ",r("argument")),l;case"AwaitExpression":if(l.push("await"),a.argument){l.push(" ",r("argument"));let{parent:A}=e;if(b_(A)&&A.callee===a||Yv(A)&&A.object===a){l=[Pl([bl,...l]),bl];let f=e.findAncestor(I=>I.type==="AwaitExpression"||I.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!JZ(f.argument,I=>I===a))return Ia(l)}}return l;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return PEi(e,t,r);case"ImportDeclaration":return Z4a(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return O4a(e,t,r);case"ImportAttribute":return BTr(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return EEi(e,t,r);case"ClassBody":return v4a(e,t,r);case"ThrowStatement":return o4a(e,t,r);case"ReturnStatement":return s4a(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return Jbi(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return ubt(e,t,r);case"Property":return ibt(a)?YTr(e,t,r):BTr(e,t,r);case"ObjectProperty":return BTr(e,t,r);case"ObjectMethod":return YTr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return dRr(e,t,r);case"SequenceExpression":{let{parent:A}=e;if(A.type==="ExpressionStatement"||A.type==="ForStatement"){let f=[];return e.each(({isFirst:I})=>{I?f.push(r()):f.push(",",Pl([zg,r()]))},"expressions"),Ia(f)}return Ia(vC([",",zg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return l.push(a.operator),/[a-z]$/u.test(a.operator)&&l.push(" "),ig(a.argument)?l.push(Ia(["(",Pl([bl,r("argument")]),bl,")"])):l.push(r("argument")),l;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return hRr(e,t,r,n);case"VariableDeclaration":{let A=e.map(r,"declarations"),f=e.parent,I=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",C=a.declarations.some(E=>E.init),b;return A.length===1&&!ig(a.declarations[0])?b=A[0]:A.length>0&&(b=Pl(A[0])),l=[AV(e),a.kind,b?[" ",b]:"",Pl(A.slice(1).map(E=>[",",C&&!I?xl:zg,E]))],I&&f.body!==a||l.push(o),Ia(l)}case"WithStatement":return Ia(["with (",r("object"),")",tce(a.body,r("body"))]);case"IfStatement":{let A=tce(a.consequent,r("consequent")),f=Ia(["if (",Ia([Pl([bl,r("test")]),bl]),")",A]);if(l.push(f),a.alternate){let I=ig(a.consequent,fA.Trailing|fA.Line)||sbi(a),C=a.consequent.type==="BlockStatement"&&!I;l.push(C?" ":xl),ig(a,fA.Dangling)&&l.push(N2(e,t),I?xl:" "),l.push("else",Ia(tce(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return l}case"ForStatement":{let A=tce(a.body,r("body")),f=N2(e,t),I=f?[f,bl]:"";return!a.init&&!a.test&&!a.update?[I,Ia(["for (;;)",A])]:[I,Ia(["for (",Ia([Pl([bl,r("init"),";",zg,r("test"),";",zg,r("update")]),bl]),")",A])]}case"WhileStatement":return Ia(["while (",Ia([Pl([bl,r("test")]),bl]),")",tce(a.body,r("body"))]);case"ForInStatement":return Ia(["for (",r("left")," in ",r("right"),")",tce(a.body,r("body"))]);case"ForOfStatement":return Ia(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",tce(a.body,r("body"))]);case"DoWhileStatement":{let A=tce(a.body,r("body"));return l=[Ia(["do",A])],a.body.type==="BlockStatement"?l.push(" "):l.push(xl),l.push("while (",Ia([Pl([bl,r("test")]),bl]),")",o),l}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return l.push(a.type==="BreakStatement"?"break":"continue"),a.label&&l.push(" ",r("label")),l.push(o),l;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let A=ig(a.param,I=>!zM(I)||I.leading&&dO(t.originalText,BC(I))||I.trailing&&dO(t.originalText,ZS(I),{backwards:!0})),f=r("param");return["catch ",A?["(",Pl([bl,f]),bl,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[Ia(["switch (",Pl([bl,r("discriminant")]),bl,")"])," {",a.cases.length>0?Pl([xl,vC(xl,e.map(({node:A,isLast:f})=>[r(),!f&&fee(A,t)?xl:""],"cases"))]):"",xl,"}"];case"SwitchCase":{a.test?l.push("case ",r("test"),":"):l.push("default:"),ig(a,fA.Dangling)&&l.push(" ",N2(e,t));let A=a.consequent.filter(f=>f.type!=="EmptyStatement");if(A.length>0){let f=QTr(e,t,r,"consequent");l.push(A.length===1&&A[0].type==="BlockStatement"?[" ",f]:Pl([xl,f]))}return l}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return TEi(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return DEi(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return kEi(e,t,r);case"TemplateElement":return pme(a.value.raw);case"TemplateLiteral":return Nbi(e,r,t);case"TaggedTemplateExpression":return GYa(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new KRe(a,"ESTree")}}function QEi(e,t,r){let{parent:n,node:a,key:o}=e,l=[r("expression")];switch(a.type){case"AsConstExpression":l.push(" as const");break;case"AsExpression":case"TSAsExpression":l.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":l.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&b_(n)||o==="object"&&Yv(n)?Ia([Pl([bl,...l]),bl]):l}function $4a(e,t,r){let{node:n}=e,a=[AV(e),"component"];n.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=eJa(e,r,t);return n.rendersType?a.push(Ia([o," ",r("rendersType")])):a.push(Ia([o])),n.body&&a.push(" ",r("body")),t.semi&&n.type==="DeclareComponent"&&a.push(";"),a}function eJa(e,t,r){let{node:n}=e,a=n.params;if(n.rest&&(a=[...a,n.rest]),a.length===0)return["(",N2(e,r,{filter:l=>t4(r.originalText,BC(l))===")"}),")"];let o=[];return rJa(e,(l,A)=>{let f=A===a.length-1;f&&n.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),fee(a[A],r)?o.push(xl,xl):o.push(zg))}),["(",Pl([bl,...o]),lh(pee(r,"all")&&!tJa(n,a)?",":""),bl,")"]}function tJa(e,t){var r;return e.rest||((r=U0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function rJa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function nJa(e,t,r){let{node:n}=e;return n.shorthand?r("local"):[r("name")," as ",r("local")]}function iJa(e,t,r){let{node:n}=e,a=[];return n.name&&a.push(r("name"),n.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function XEi(e,t,r){return ubt(e,r,t)}function JEi(e,t){let{node:r}=e,n=t("id");r.computed&&(n=["[",n,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[n," = ",a]:n}function sJa(e,t,r){let{node:n}=e,a;if(n.type==="EnumSymbolBody"||n.explicitType)switch(n.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",XEi(e,t,r)]}function UEi(e,t,r){let{node:n}=e;return[AV(e),n.const?"const ":"","enum ",t("id")," ",n.type==="TSEnumDeclaration"?XEi(e,t,r):t("body")]}function oJa(e,t,r){let{node:n}=e,a=["hook"];n.id&&a.push(" ",r("id"));let o=Sme(e,r,t,!1,!0),l=lbt(e,r),A=jRe(n,l);return a.push(Ia([A?Ia(o):o,l]),n.body?" ":"",r("body")),a}function aJa(e,t,r){let{node:n}=e,a=[AV(e),"hook"];return n.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function Wyi(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function cJa(e,t,r){let{node:n}=e,a=[];a.push(Wyi(e)?"":"hook ");let o=Sme(e,r,t,!1,!0),l=[];return l.push(Wyi(e)?": ":" => ",r("returnType")),jRe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function KEi(e,t,r){let{node:n}=e,a=[AV(e),"interface"],o=[],l=[];n.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let A=n.typeParameters&&!ig(n.typeParameters,fA.Trailing|fA.Line);return H_(n.extends)&&l.push(A?lh(" ",zg,{groupId:fRr(n.typeParameters)}):zg,"extends ",(n.extends.length===1?hHa:Pl)(vC([",",zg],e.map(r,"extends")))),ig(n.id,fA.Trailing)||H_(n.extends)?A?a.push(Ia([...o,Pl(l)])):a.push(Ia(Pl([...o,...l]))):a.push(...o,...l),a.push(" ",r("body")),Ia(a)}function lJa(e,t,r){let{node:n}=e;if(jyi(n))return n.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(n.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return $4a(e,t,r);case"ComponentParameter":return nJa(e,t,r);case"ComponentTypeParameter":return iJa(e,t,r);case"HookDeclaration":return oJa(e,t,r);case"DeclareHook":return aJa(e,t,r);case"HookTypeAnnotation":return cJa(e,t,r);case"DeclareClass":return TEi(e,t,r);case"DeclareFunction":return[AV(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",Lk(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[AV(e),n.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return PEi(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return YXa(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return $bi(e,t,r);case"IntersectionTypeAnnotation":return eEi(e,t,r);case"UnionTypeAnnotation":return tEi(e,t,r);case"ConditionalTypeAnnotation":return hRr(e,t,r);case"InferTypeAnnotation":return iEi(e,t,r);case"FunctionTypeAnnotation":return rEi(e,t,r);case"TupleTypeAnnotation":return dRr(e,t,r);case"TupleTypeLabeledElement":return oEi(e,t,r);case"TupleTypeSpreadElement":return sEi(e,t,r);case"GenericTypeAnnotation":return[r("id"),B4e(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return nEi(e,t,r);case"TypeAnnotation":return cEi(e,t,r);case"TypeParameter":return BEi(e,t,r);case"TypeofTypeAnnotation":return uEi(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return lEi(r);case"DeclareEnum":case"EnumDeclaration":return UEi(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return sJa(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return JEi(e,r);case"FunctionTypeParam":{let o=n.name?r("name"):e.parent.this===n?"this":"";return[o,KZ(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return KEi(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=n;return jTr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[n.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return m4a(e,t,r);case"ObjectTypeIndexer":return[n.static?"static ":"",n.variance?r("variance"):"","[",r("id"),n.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return n.proto?o="proto ":n.static&&(o="static "),[o,n.kind!=="init"?n.kind+" ":"",n.variance?r("variance"):"",x4e(e,t,r),KZ(e),ibt(n)?"":": ",r("value")]}case"ObjectTypeAnnotation":return ubt(e,t,r);case"ObjectTypeInternalSlot":return[n.static?"static ":"","[[",r("id"),"]]",KZ(e),n.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return pEi(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(n.value);case"StringLiteralTypeAnnotation":return pme(MRe(UM(n),t));case"NumberLiteralTypeAnnotation":return YRe(n.raw??n.extra.raw);case"BigIntLiteralTypeAnnotation":return XTr(n.raw??n.extra.raw);case"TypeCastExpression":return["(",r("expression"),Lk(e,r),")"];case"TypePredicate":return gEi(e,r);case"TypeOperator":return[n.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return B4e(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...n.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return QEi(e,t,r)}}function uJa(e,t,r){var n;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(zyi(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",l=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let A=!(Vk(a.expression)||e4(a.expression)),f=Ia(["<",Pl([bl,r("typeAnnotation")]),bl,">"]),I=[lh("("),Pl([bl,r("expression")]),bl,lh(")")];return A?dme([[f,r("expression")],[f,Ia(I,{shouldBreak:!0})],[f,r("expression")]]):Ia([f,r("expression")])}case"TSDeclareFunction":return mEi(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return EEi(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return ubt(e,t,r);case"TSTypeAliasDeclaration":return $bi(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return DEi(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return kEi(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return Nbi(e,r,t);case"TSNamedTupleMember":return oEi(e,t,r);case"TSRestType":return sEi(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return KEi(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return B4e(e,t,r,"params");case"TSTypeParameter":return BEi(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return QEi(e,t,r);case"TSArrayType":return lEi(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",x4e(e,t,r),KZ(e),Lk(e,r)];case"TSParameterProperty":return[ebt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return uEi(e,r);case"TSIndexSignature":{let A=a.parameters.length>1?lh(pee(t)?",":""):"",f=Ia([Pl([bl,vC([", ",bl],e.map(r,"parameters"))]),A,bl]),I=e.parent.type==="ClassBody"&&e.key==="body";return[I&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",Lk(e,r),I?o:""]}case"TSTypePredicate":return gEi(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",B4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return nEi(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return C4a(e,t,r);case"TSMethodSignature":{let A=a.kind&&a.kind!=="method"?`${a.kind} `:"";l.push(ebt(a),A,a.computed?"[":"",r("key"),a.computed?"]":"",KZ(e));let f=Sme(e,r,t,!1,!0),I=a.returnType?"returnType":"typeAnnotation",C=a[I],b=C?Lk(e,r,I):"",E=jRe(a,b);return l.push(E?Ia(f):f),C&&l.push(Ia(b)),Ia(l)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return UEi(e,r,t);case"TSEnumMember":return JEi(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",WEi(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:A}=e,f=A.type==="TSModuleDeclaration",I=((n=a.body)==null?void 0:n.type)==="TSModuleDeclaration";return f?l.push("."):(l.push(AV(e)),a.kind!=="global"&&l.push(a.kind," ")),l.push(r("id")),I?l.push(r("body")):a.body?l.push(" ",Ia(r("body"))):l.push(o),l}case"TSConditionalType":return hRr(e,t,r);case"TSInferType":return iEi(e,t,r);case"TSIntersectionType":return eEi(e,t,r);case"TSUnionType":return tEi(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return rEi(e,t,r);case"TSTupleType":return dRr(e,t,r);case"TSTypeReference":return[r("typeName"),B4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return cEi(e,t,r);case"TSEmptyBodyFunctionExpression":return pRr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return Zyi(e,r,"?");case"TSJSDocNonNullableType":return Zyi(e,r,"!");case"TSParenthesizedType":default:throw new KRe(a,"TypeScript")}}function gJa(e,t,r,n){if(Pbi(e))return BQa(e,t);for(let a of[lXa,rXa,lJa,uJa,q4a]){let o=a(e,t,r,n);if(o!==void 0)return o}}var AJa=_0(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function dJa(e,t,r,n){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=gJa(e,t,r,n);if(!o)return"";let{node:l}=e;if(AJa(l))return o;let A=H_(l.decorators),f=dXa(e,t,r),I=l.type==="ClassExpression";if(A&&!I)return GTr(o,E=>Ia([f,E]));let C=Eme(e,t),b=N4a(e,t);return!f&&!C&&!b?o:GTr(o,E=>[b?";":"",C?"(":"",C&&I&&A?[Pl([zg,f,E]),zg]:[f,E],C?")":""])}var pJa=dJa,fJa={avoidAstMutation:!0},IJa=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".code-workspace",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],jEi={};tbt(jEi,{getVisitorKeys:()=>_Ja,massageAstNode:()=>zEi,print:()=>yJa});var hJa={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},mJa=hJa,CJa=Uyi(mJa),_Ja=CJa;function yJa(e,t,r){let{node:n}=e;switch(n.type){case"JsonRoot":return[r("node"),xl];case"ArrayExpression":{if(n.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",Pl([xl,vC([",",xl],a)]),xl,"]"]}case"ObjectExpression":return n.properties.length===0?"{}":["{",Pl([xl,vC([",",xl],e.map(r,"properties"))]),xl,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[n.operator==="+"?"":n.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return n.value?"true":"false";case"StringLiteral":return JSON.stringify(n.value);case"NumericLiteral":return Oyi(e)?JSON.stringify(String(n.value)):JSON.stringify(n.value);case"Identifier":return Oyi(e)?JSON.stringify(n.name):n.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(n.value.cooked);default:throw new KRe(n,"JSON")}}function Oyi(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var bJa=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function zEi(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:n}=e;n.type==="Identifier"?t.key={type:"StringLiteral",value:n.name}:n.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(n.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[n,a]of e.elements.entries())a===null&&t.elements.splice(n,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}zEi.ignoredProperties=bJa;var b4e={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},rce="JavaScript",EJa={arrowParens:{category:rce,type:"choice",default:"always",description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:b4e.bracketSameLine,objectWrap:b4e.objectWrap,bracketSpacing:b4e.bracketSpacing,jsxBracketSameLine:{category:rce,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:rce,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:rce,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:rce,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:b4e.singleQuote,jsxSingleQuote:{category:rce,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:rce,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{category:rce,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:b4e.singleAttributePerLine},qEi=EJa,zRe={estree:Qyi,"estree-json":jEi},$Ei=[...mMa,...IJa],SJa=Yyi;var P4e={};sI(P4e,{default:()=>jUa,languages:()=>I1i,options:()=>h1i,parsers:()=>SRr,printers:()=>w1i});var vJa=Object.defineProperty,i1i=(e,t)=>{for(var r in t)vJa(e,r,{get:t[r],enumerable:!0})},s1i={};i1i(s1i,{languages:()=>I1i,options:()=>h1i,parsers:()=>SRr,printers:()=>w1i});var BJa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},mRr=BJa,wJa="indent",TJa="group",RJa="if-break",ERr="line",NJa="break-parent",o1i=()=>{},L4e=o1i,a1i=o1i;function pV(e){return L4e(e),{type:wJa,contents:e}}function $M(e,t={}){return L4e(e),a1i(t.expandedStates,!0),{type:TJa,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function lj(e,t="",r={}){return L4e(e),t!==""&&L4e(t),{type:RJa,breakContents:e,flatContents:t,groupId:r.groupId}}var DJa={type:NJa},kJa={type:ERr,hard:!0},$Re={type:ERr},Qv={type:ERr,soft:!0},AT=[kJa,DJa];function Wk(e,t){L4e(e),a1i(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l1?xl:zg;return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),Pl(e.map(()=>[f,r()],"attributes")),...SXa(o,t,l)],{shouldBreak:A})}function SXa(e,t,r){return e.selfClosing?[zg,"/>"]:vXa(e,t,r)?[">"]:[bl,">"]}function vXa(e,t,r){let n=e.attributes.length>0&&ig(U0(!1,e.attributes,-1),fA.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!n}function BXa(e,t,r){let{node:n}=e,a=[];a.push(""),a}function wXa(e,t){let{node:r}=e,n=ig(r),a=ig(r,fA.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function TXa(e,t,r){let n=$X(e,hXa(e,t,r),t);return _Xa(e,n,t)}function RXa(e,t){let{node:r}=e,n=ig(r,fA.Line);return[N2(e,t,{indent:n}),n?xl:""]}function NXa(e,t,r){let{node:n}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!ig(a)||!Mbi(e)?o:[Pl([bl,$X(e,o,t)]),bl]},n.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function DXa(e,t,r){let{node:n}=e;if(n.type.startsWith("JSX"))switch(n.type){case"JSXAttribute":return yXa(e,t,r);case"JSXIdentifier":return n.name;case"JSXNamespacedName":return vC(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return vC(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return NXa(e,t,r);case"JSXExpressionContainer":return bXa(e,t,r);case"JSXFragment":case"JSXElement":return TXa(e,t,r);case"JSXOpeningElement":return EXa(e,t,r);case"JSXClosingElement":return BXa(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return wXa(e,t);case"JSXEmptyExpression":return RXa(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new zRe(n,"JSX")}}function kXa(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!D4e(t)}function D4e(e){return e.type==="JSXText"&&(Kyt.hasNonWhitespaceCharacter(UM(e))||!/\n/u.test(UM(e)))}function xXa(e){return e.type==="JSXExpressionContainer"&&gV(e.expression)&&e.expression.value===" "&&!ig(e.expression)}function GXa(e){let{node:t,parent:r}=e;if(!nD(t)||!nD(r))return!1;let{index:n,siblings:a}=e,o;for(let l=n;l>0;l--){let A=a[l-1];if(!(A.type==="JSXText"&&!D4e(A))){o=A;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&cbt(o.expression)}function FXa(e){return cbt(e.node)||GXa(e)}var eEi=FXa,ZXa=0;function tEi(e,t,r){var n;let{node:a,parent:o,grandparent:l,key:A}=e,f=A!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),I=a.operator==="|>"&&((n=e.root.extra)==null?void 0:n.__isUsingHackPipeline),C=JTr(e,r,t,!1,f);if(f)return C;if(I)return Ia(C);if(b_(o)&&o.callee===a||o.type==="UnaryExpression"||Yv(o)&&!o.computed)return Ia([Pl([bl,...C]),bl]);let b=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&l.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&l.type==="NGMicrosyntax"&&l.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&l.type!=="ReturnStatement"&&l.type!=="ThrowStatement"&&!b_(l)||o.type==="TemplateLiteral",E=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||hee(o),N=Aee(a.left)&&oRr(a.operator,a.left.operator);if(b||k4e(a)&&!N||!k4e(a)&&E)return Ia(C);if(C.length===0)return"";let B=nD(a.right),F=C.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===KM),Q=C.slice(0,F===-1?1:F+1),X=C.slice(Q.length,B?-1:void 0),ae=Symbol("logicalChain-"+ ++ZXa),ne=Ia([...Q,Pl(X)],{id:ae});if(!B)return ne;let ce=U0(!1,C,-1);return Ia([ne,lbt(ce,{groupId:ae})])}function JTr(e,t,r,n,a){var o;let{node:l}=e;if(!Aee(l))return[Ia(t())];let A=[];oRr(l.operator,l.left.operator)?A=e.call(Q=>JTr(Q,t,r,!0,a),"left"):A.push(Ia(t("left")));let f=k4e(l),I=(l.operator==="|>"||l.type==="NGPipeExpression"||LXa(e,r))&&!sce(r.originalText,l.right),C=!ig(l.right,fA.Leading,kbi)&&sce(r.originalText,l.right),b=l.type==="NGPipeExpression"?"|":l.operator,E=l.type==="NGPipeExpression"&&l.arguments.length>0?Ia(Pl([bl,": ",vC([zg,": "],e.map(()=>oj(2,Ia(t())),"arguments"))])):"",N;if(f)N=[b," ",t("right"),E];else{let Q=b==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(X=>JTr(X,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let X="";if(C)switch(gce(Q)){case dee:X=Q.splice(0,1)[0];break;case mee:X=Q.contents.splice(0,1)[0];break}N=[zg,X,b," ",Q,E]}else N=[I?zg:"",b,I?" ":zg,Q,E]}let{parent:B}=e,F=ig(l.left,fA.Trailing|fA.Line);if((F||!(a&&l.type==="LogicalExpression")&&B.type!==l.type&&l.left.type!==l.type&&l.right.type!==l.type)&&(N=Ia(N,{shouldBreak:F})),r.experimentalOperatorPosition==="start"?A.push(f||C?" ":"",N):A.push(I?"":" ",N),n&&ig(l)){let Q=lRr($X(e,A,r));return Q.type===lce?Q.parts:Array.isArray(Q)?Q:[Q]}return A}function k4e(e){return e.type!=="LogicalExpression"?!1:!!(e4(e.right)&&e.right.properties.length>0||Vk(e.right)&&e.right.elements.length>0||nD(e.right))}var Xyi=e=>e.type==="BinaryExpression"&&e.operator==="|";function LXa(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&Xyi(e.node)&&!e.hasAncestor(r=>!Xyi(r)&&r.type!=="JsExpressionRoot")}function VXa(e,t,r){let{node:n}=e;if(n.type.startsWith("NG"))switch(n.type){case"NGRoot":return[r("node"),ig(n.node)?" //"+WRe(n.node)[0].value.trimEnd():""];case"NGPipeExpression":return tEi(e,t,r);case"NGChainedExpression":return Ia(vC([";",zg],e.map(()=>WXa(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":Jyi(e)?" ":[";",zg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(n.name)?n.name:JSON.stringify(n.name);case"NGMicrosyntaxExpression":return[r("expression"),n.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,l=Jyi(e)||(a===1&&(n.key.name==="then"||n.key.name==="else"||n.key.name==="as")||(a===2||a===3)&&(n.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||n.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),l?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),n.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new zRe(n,"Angular")}}function Jyi({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var PXa=_0(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function WXa({node:e}){return ZTr(e,PXa)}function rEi(e,t,r){let{node:n}=e;return Ia([vC(zg,e.map(r,"decorators")),nEi(n,t)?xl:zg])}function OXa(e,t,r){return iEi(e.node)?[vC(xl,e.map(r,"declaration","decorators")),xl]:""}function MXa(e,t,r){let{node:n,parent:a}=e,{decorators:o}=n;if(!H_(o)||iEi(a)||eEi(e))return"";let l=n.type==="ClassExpression"||n.type==="ClassDeclaration"||nEi(n,t);return[e.key==="declaration"&&GHa(a)?xl:l?aj:"",vC(zg,e.map(r,"decorators")),zg]}function nEi(e,t){return e.decorators.some(r=>dO(t.originalText,BC(r)))}function iEi(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return H_(r)&&sbt(e,r[0])}var tbt=class extends Error{name="ArgExpansionBailout"};function HXa(e,t,r){let{node:n}=e,a=qM(n);if(a.length===0)return["(",N2(e,t),")"];let o=a.length-1;if(XXa(a)){let b=["("];return $yt(e,(E,N)=>{b.push(r()),N!==o&&b.push(", ")}),b.push(")"),b}let l=!1,A=[];$yt(e,({node:b},E)=>{let N=r();E===o||(Iee(b,t)?(l=!0,N=[N,",",xl,xl]):N=[N,",",zg]),A.push(N)});let f=!t.parser.startsWith("__ng_")&&n.type!=="ImportExpression"&&fee(t,"all")?",":"";function I(){return Ia(["(",Pl([zg,...A]),f,zg,")"],{shouldBreak:!0})}if(l||e.parent.type!=="Decorator"&&YHa(a))return I();if(QXa(a)){let b=A.slice(1);if(b.some(UZ))return I();let E;try{E=r(Zyi(n,0),{expandFirstArg:!0})}catch(N){if(N instanceof tbt)return I();throw N}return UZ(E)?[aj,pme([["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])]:pme([["(",E,", ",...b,")"],["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])}if(YXa(a,A,t)){let b=A.slice(0,-1);if(b.some(UZ))return I();let E;try{E=r(Zyi(n,-1),{expandLastArg:!0})}catch(N){if(N instanceof tbt)return I();throw N}return UZ(E)?[aj,pme([["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])]:pme([["(",...b,E,")"],["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])}let C=["(",Pl([bl,...A]),lh(f),bl,")"];return ybi(e)?C:Ia(C,{shouldBreak:A.some(UZ)||l})}function w4e(e,t=!1){return e4(e)&&(e.properties.length>0||ig(e))||Vk(e)&&(e.elements.length>0||ig(e))||e.type==="TSTypeAssertion"&&w4e(e.expression)||nj(e)&&w4e(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||JXa(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&w4e(e.body,!0)||e4(e.body)||Vk(e.body)||!t&&(b_(e.body)||e.body.type==="ConditionalExpression")||nD(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function YXa(e,t,r){var n,a;let o=U0(!1,e,-1);if(e.length===1){let A=U0(!1,t,-1);if((n=A.label)!=null&&n.embed&&((a=A.label)==null?void 0:a.hug)!==!1)return!0}let l=U0(!1,e,-2);return!ig(o,fA.Leading)&&!ig(o,fA.Trailing)&&w4e(o)&&(!l||l.type!==o.type)&&(e.length!==2||l.type!=="ArrowFunctionExpression"||!Vk(o))&&!(e.length>1&&NEi(o,r))}function QXa(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&UXa(r)?!0:!ig(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&sEi(r)&&!w4e(r)}function sEi(e){if(e.type==="ParenthesizedExpression")return sEi(e.expression);if(nj(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return iRr(t)&&qX(e.expression,1)}return QRe(e)&&qM(e).length>1?!1:Aee(e)?qX(e.left,1)&&qX(e.right,1):fbi(e)||qX(e)}function XXa(e){return e.length===2?Uyi(e,0):e.length===3?e[0].type==="Identifier"&&Uyi(e,1):!1}function Uyi(e,t){let r=e[t],n=e[t+1];return r.type==="ArrowFunctionExpression"&&NG(r).length===0&&r.body.type==="BlockStatement"&&n.type==="ArrayExpression"&&!e.some(a=>ig(a))}function JXa(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||ig(e,fA.Dangling))}function UXa(e){return e.type==="ObjectExpression"&&e.properties.length===1&&hee(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&gV(e.properties[0].value)&&e.properties[0].value.value==="module"}var UTr=HXa,KXa=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),b_(e)&&qM(e).length>0);function jXa(e,t,r){var n;let a=r("object"),o=oEi(e,t,r),{node:l}=e,A=e.findAncestor(C=>!(Yv(C)||C.type==="TSNonNullExpression")),f=e.findAncestor(C=>!(C.type==="ChainExpression"||C.type==="TSNonNullExpression")),I=A&&(A.type==="NewExpression"||A.type==="BindExpression"||A.type==="AssignmentExpression"&&A.left.type!=="Identifier")||l.computed||l.object.type==="Identifier"&&l.property.type==="Identifier"&&!Yv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(KXa(l.object)||((n=a.label)==null?void 0:n.memberChain));return x4e(a.label,[a,I?o:Ia(Pl([bl,o]))])}function oEi(e,t,r){let n=r("property"),{node:a}=e,o=KZ(e);return a.computed?!a.property||gee(a.property)?[o,"[",n,"]"]:Ia([o,"[",Pl([bl,n]),bl,"]"]):[o,".",n]}function aEi(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>aEi(e,t,r),"expression");let{parent:n}=e,a=!n||n.type==="ExpressionStatement",o=[];function l(Me){let{originalText:je}=t,St=jRe(je,BC(Me));return je.charAt(St)===")"?St!==!1&&eRr(je,St+1):Iee(Me,t)}function A(){let{node:Me}=e;if(Me.type==="ChainExpression")return e.call(A,"expression");if(b_(Me)&&(VRe(Me.callee)||b_(Me.callee))){let je=l(Me);o.unshift({node:Me,hasTrailingEmptyLine:je,printed:[$X(e,[KZ(e),Ime(e,t,r),UTr(e,t,r)],t),je?xl:""]}),e.call(A,"callee")}else VRe(Me)?(o.unshift({node:Me,needsParens:Sme(e,t),printed:$X(e,Yv(Me)?oEi(e,t,r):TEi(e,t,r),t)}),e.call(A,"object")):Me.type==="TSNonNullExpression"?(o.unshift({node:Me,printed:$X(e,"!",t)}),e.call(A,"expression")):o.unshift({node:Me,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[KZ(e),Ime(e,t,r),UTr(e,t,r)]}),f.callee&&e.call(A,"callee");let I=[],C=[o[0]],b=1;for(;b0&&I.push(C);function N(Me){return/^[A-Z]|^[$_]+$/u.test(Me)}function B(Me){return Me.length<=t.tabWidth}function F(Me){var je;let St=(je=Me[1][0])==null?void 0:je.node.computed;if(Me[0].length===1){let Yt=Me[0][0].node;return Yt.type==="ThisExpression"||Yt.type==="Identifier"&&(N(Yt.name)||a&&B(Yt.name)||St)}let At=U0(!1,Me[0],-1).node;return Yv(At)&&At.property.type==="Identifier"&&(N(At.property.name)||St)}let Q=I.length>=2&&!ig(I[1][0].node)&&F(I);function X(Me){let je=Me.map(St=>St.printed);return Me.length>0&&U0(!1,Me,-1).needsParens?["(",...je,")"]:je}function ae(Me){return Me.length===0?"":Pl([xl,vC(xl,Me.map(X))])}let ne=I.map(X),ce=ne,fe=Q?3:2,ue=I.flat(),de=ue.slice(1,-1).some(Me=>ig(Me.node,fA.Leading))||ue.slice(0,-1).some(Me=>ig(Me.node,fA.Trailing))||I[fe]&&ig(I[fe][0].node,fA.Leading);if(I.length<=fe&&!de&&!I.some(Me=>U0(!1,Me,-1).hasTrailingEmptyLine))return ybi(e)?ce:Ia(ce);let be=U0(!1,I[Q?1:0],-1).node,Se=!b_(be)&&l(be),De=[X(I[0]),Q?I.slice(1,2).map(X):"",Se?xl:"",ae(I.slice(Q?2:1))],k=o.map(({node:Me})=>Me).filter(b_);function et(){let Me=U0(!1,U0(!1,I,-1),-1).node,je=U0(!1,ne,-1);return b_(Me)&&UZ(je)&&k.slice(0,-1).some(St=>St.arguments.some(R4e))}let ct;return de||k.length>2&&k.some(Me=>!Me.arguments.every(je=>qX(je)))||ne.slice(0,-1).some(UZ)||et()?ct=Ia(De):ct=[UZ(ce)||Se?aj:"",pme([ce,De])],x4e({memberChain:!0},ct)}var zXa=aEi;function cEi(e,t,r){var n;let{node:a}=e,o=a.type==="NewExpression",l=a.type==="ImportExpression",A=KZ(e),f=qM(a),I=f.length===1&&Cbi(f[0],t.originalText);if(I||qXa(e)||abt(a,e.parent)){let b=[];if($yt(e,()=>{b.push(r())}),!(I&&(n=b[0].label)!=null&&n.embed))return[o?"new ":"",Kyi(e,r),A,Ime(e,t,r),"(",vC(", ",b),")"]}if(!l&&!o&&VRe(a.callee)&&!e.call(b=>Sme(b,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return zXa(e,t,r);let C=[o?"new ":"",Kyi(e,r),A,Ime(e,t,r),UTr(e,t,r)];return l||b_(a.callee)?Ia(C):C}function Kyi(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function qXa(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=qM(t);return t.callee.name==="require"?r.length===1&&gV(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&gV(r[0])&&r[1].type==="ArrayExpression":!1}function G4e(e,t,r,n,a,o){let l=t4a(e,t,r,n,o),A=o?r(o,{assignmentLayout:l}):"";switch(l){case"break-after-operator":return Ia([Ia(n),a,Ia(Pl([zg,A]))]);case"never-break-after-operator":return Ia([Ia(n),a," ",A]);case"fluid":{let f=Symbol("assignment");return Ia([Ia(n),a,Ia(Pl(zg),{id:f}),pee,lbt(A,{groupId:f})])}case"break-lhs":return Ia([n,a," ",Ia(A)]);case"chain":return[Ia(n),a,zg,A];case"chain-tail":return[Ia(n),a,Pl([zg,A])];case"chain-tail-arrow-chain":return[Ia(n),a,A];case"only-left":return n}}function $Xa(e,t,r){let{node:n}=e;return G4e(e,t,r,r("left"),[" ",n.operator],"right")}function e4a(e,t,r){return G4e(e,t,r,r("id")," =","init")}function t4a(e,t,r,n,a){let{node:o}=e,l=o[a];if(!l)return"only-left";let A=!jyt(l);if(e.match(jyt,lEi,C=>!A||C.type!=="ExpressionStatement"&&C.type!=="VariableDeclaration"))return A?l.type==="ArrowFunctionExpression"&&l.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!A&&jyt(l.right)||sce(t.originalText,l))return"break-after-operator";if(o.type==="ImportAttribute"||l.type==="CallExpression"&&l.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=lYa(n);if(n4a(o)||a4a(o)||uEi(o)&&f)return"break-lhs";let I=l4a(o,n,t);return e.call(()=>r4a(e,t,r,I),a)?"break-after-operator":i4a(o)?"break-lhs":!f&&(I||l.type==="TemplateLiteral"||l.type==="TaggedTemplateExpression"||l.type==="BooleanLiteral"||gee(l)||l.type==="ClassExpression")?"never-break-after-operator":"fluid"}function r4a(e,t,r,n){let a=e.node;if(Aee(a)&&!k4e(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!A4a(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:I}=a;return Aee(I)&&!k4e(I)}let{consequent:A,alternate:f}=a;return A.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return H_(a.decorators)}if(n)return!1;let o=a,l=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,l.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,l.push("expression");else break;return!!(gV(o)||e.call(()=>gEi(e,t,r),...l))}function n4a(e){if(lEi(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var n;return hee(r)&&(!r.shorthand||((n=r.value)==null?void 0:n.type)==="AssignmentPattern")})}return!1}function jyt(e){return e.type==="AssignmentExpression"}function lEi(e){return jyt(e)||e.type==="VariableDeclarator"}function i4a(e){let t=o4a(e);if(H_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(n=>n[r]||n.default))return!0}return!1}var s4a=_0(["TSTypeAliasDeclaration","TypeAlias"]);function o4a(e){var t;if(s4a(e))return(t=e.typeParameters)==null?void 0:t.params}function a4a(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=jyi(t.typeAnnotation);return H_(r)&&r.length>1&&r.some(n=>H_(jyi(n))||n.type==="TSConditionalType")}function uEi(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var c4a=_0(["TSTypeReference","GenericTypeAnnotation"]);function jyi(e){var t;if(c4a(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function gEi(e,t,r,n=!1){var a;let{node:o}=e,l=()=>gEi(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(l,"expression");if(b_(o)){if((a=cEi(e,t,r).label)!=null&&a.memberChain)return!1;let A=qM(o);return!(A.length===0||A.length===1&&sRr(A[0],t))||u4a(o,r)?!1:e.call(l,"callee")}return Yv(o)?e.call(l,"object"):n&&(o.type==="Identifier"||o.type==="ThisExpression")}function l4a(e,t,r){return hee(e)?(t=lRr(t),typeof t=="string"&&ORe(t)1)return!0;if(r.length===1){let a=r[0];if(oce(a)||aRr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let n=e.typeParameters?"typeParameters":"typeArguments";if(UZ(t(n)))return!0}return!1}function g4a(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function A4a(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function vme(e,t,r,n,a){let o=e.node,l=NG(o),A=a?Ime(e,r,t):"";if(l.length===0)return[A,"(",N2(e,r,{filter:N=>t4(r.originalText,BC(N))===")"}),")"];let{parent:f}=e,I=abt(f),C=AEi(o),b=[];if(jHa(e,(N,B)=>{let F=B===l.length-1;F&&o.rest&&b.push("..."),b.push(t()),!F&&(b.push(","),I||C?b.push(" "):Iee(l[B],r)?b.push(xl,xl):b.push(zg))}),n&&!p4a(e)){if(UZ(A)||UZ(b))throw new tbt;return Ia([VTr(A),"(",VTr(b),")"])}let E=l.every(N=>!H_(N.decorators));return C&&E?[A,"(",...b,")"]:I?[A,"(",...b,")"]:(Ibi(f)||VHa(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&l.length===1&&l[0].name===null&&o.this!==l[0]&&l[0].typeAnnotation&&o.typeParameters===null&&iRr(l[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...b,")"]:b:[A,"(",Pl([bl,...b]),lh(!KHa(o)&&fee(r,"all")?",":""),bl,")"]}function AEi(e){if(!e)return!1;let t=NG(e);if(t.length!==1)return!1;let[r]=t;return!ig(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&ice(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&ice(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||e4(r.right)&&r.right.properties.length===0||Vk(r.right)&&r.right.elements.length===0))}function d4a(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function qRe(e,t){var r;let n=d4a(e);if(!n)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return NG(e).length===1&&(ice(n)||UZ(t))}function p4a(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let n=t.callee.callee;return n.type==="Identifier"||n.type==="MemberExpression"&&!n.computed&&n.object.type==="Identifier"&&n.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function f4a(e){let t=NG(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var I4a=_0(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),h4a=_0(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function m4a(e){let{types:t}=e;if(t.some(n=>ig(n)))return!1;let r=t.find(n=>h4a(n));return r?t.every(n=>n===r||I4a(n)):!1}function dEi(e){return iRr(e)||ice(e)?!0:oce(e)?m4a(e):!1}function C4a(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[AV(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(n),o}function pEi(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[AV(e)];o.push("type ",r("id"),r("typeParameters"));let l=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[G4e(e,t,r,o," =",l),n]}function fEi(e,t,r){let n=!1;return Ia(e.map(({isFirst:a,previous:o,node:l,index:A})=>{let f=r();if(a)return f;let I=ice(l),C=ice(o);return C&&I?[" & ",n?Pl(f):f]:!C&&!I?t.experimentalOperatorPosition==="start"?Pl([zg,"& ",f]):Pl([" &",zg,f]):(A>1&&(n=!0),[" & ",A>1?Pl(f):f])},"types"))}function IEi(e,t,r){let{node:n}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!ace(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&sce(t.originalText,n)),l=dEi(n),A=e.map(C=>{let b=r();return l||(b=oj(2,b)),$X(C,b,t)},"types");if(l)return vC(" | ",A);let f=o&&!sce(t.originalText,n),I=[lh([f?zg:"","| "]),vC([zg,"| "],A)];return Sme(e,t)?Ia([Pl(I),bl]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?Ia([Pl([lh(["(",bl]),I]),bl,lh(")")]):Ia(o?Pl(I):I)}function _4a(e){var t;let{node:r,parent:n}=e;return r.type==="FunctionTypeAnnotation"&&(Ibi(n)||!((n.type==="ObjectTypeProperty"||n.type==="ObjectTypeInternalSlot")&&!n.variance&&!n.optional&&sbt(n,r)||n.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function hEi(e,t,r){let{node:n}=e,a=[ubt(e)];(n.type==="TSConstructorType"||n.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=vme(e,r,t,!1,!0),l=[];return n.type==="FunctionTypeAnnotation"?l.push(_4a(e)?" => ":": ",r("returnType")):l.push(Lk(e,r,n.returnType?"returnType":"typeAnnotation")),qRe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function mEi(e,t,r){return[r("objectType"),KZ(e),"[",r("indexType"),"]"]}function CEi(e,t,r){return["infer ",r("typeParameter")]}function zyi(e,t,r){let{node:n}=e;return[n.postfix?"":r,Lk(e,t),n.postfix?r:""]}function _Ei(e,t,r){let{node:n}=e;return["...",...n.type==="TupleTypeSpreadElement"&&n.label?[r("label"),": "]:[],r("typeAnnotation")]}function yEi(e,t,r){let{node:n}=e;return[n.variance?r("variance"):"",r("label"),n.optional?"?":"",": ",r("elementType")]}var y4a=new WeakSet;function Lk(e,t,r="typeAnnotation"){let{node:{[r]:n}}=e;if(!n)return"";let a=!1;if(n.type==="TSTypeAnnotation"||n.type==="TypeAnnotation"){let o=e.call(bEi,r);(o==="=>"||o===":"&&ig(n,fA.Leading))&&(a=!0),y4a.add(n)}return a?[" ",t(r)]:t(r)}var bEi=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function EEi(e,t,r){let n=bEi(e);return n?[n," ",r("typeAnnotation")]:r("typeAnnotation")}function SEi(e){return[e("elementType"),"[]"]}function vEi({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",n=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(n)]}function BEi(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",Lk(e,t)]:""]}function KZ(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":b_(t)||Yv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function wEi(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var b4a=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function AV(e){let{node:t}=e;return t.declare||b4a.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var E4a=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function ubt({node:e}){return e.abstract||E4a.has(e.type)?"abstract ":""}function Ime(e,t,r){let n=e.node;return n.typeArguments?r("typeArguments"):n.typeParameters?r("typeParameters"):""}function TEi(e,t,r){return["::",r("callee")]}function rce(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:Pl([zg,t])}function REi(e,t){return["...",t("argument"),Lk(e,t)]}function rbt(e){return e.accessibility?e.accessibility+" ":""}function S4a(e,t,r,n){let{node:a}=e,o=a.inexact?"...":"";return ig(a,fA.Dangling)?Ia([r,o,N2(e,t,{indent:!0}),bl,n]):[r,o,n]}function mRr(e,t,r){let{node:n}=e,a=[],o=n.type==="TupleExpression"?"#[":"[",l="]",A=n.type==="TupleTypeAnnotation"&&n.types?"types":n.type==="TSTupleType"||n.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=n[A];if(f.length===0)a.push(S4a(e,t,o,l));else{let I=U0(!1,f,-1),C=I?.type!=="RestElement"&&!n.inexact,b=I===null,E=Symbol("array"),N=!t.__inJestEach&&f.length>1&&f.every((Q,X,ae)=>{let ne=Q?.type;if(!Vk(Q)&&!e4(Q))return!1;let ce=ae[X+1];if(ce&&ne!==ce.type)return!1;let fe=Vk(Q)?"elements":"properties";return Q[fe]&&Q[fe].length>1}),B=NEi(n,t),F=C?b?",":fee(t)?B?lh(",","",{groupId:E}):lh(","):"":"";a.push(Ia([o,Pl([bl,B?B4a(e,t,r,F):[v4a(e,t,A,n.inexact,r),F],N2(e,t)]),bl,l],{shouldBreak:N,id:E}))}return a.push(KZ(e),Lk(e,r)),a}function NEi(e,t){return Vk(e)&&e.elements.length>1&&e.elements.every(r=>r&&(gee(r)||pbi(r)&&!ig(r.argument))&&!ig(r,fA.Trailing|fA.Line,n=>!dO(t.originalText,ZS(n),{backwards:!0})))}function DEi({node:e},{originalText:t}){let r=a=>qTr(t,$Tr(t,a)),n=a=>t[a]===","?a:n(r(a+1));return eRr(t,n(BC(e)))}function v4a(e,t,r,n,a){let o=[];return e.each(({node:l,isLast:A})=>{o.push(l?Ia(a()):""),(!A||n)&&o.push([",",zg,l&&DEi(e,t)?bl:""])},r),n&&o.push("..."),o}function B4a(e,t,r,n){let a=[];return e.each(({isLast:o,next:l})=>{a.push([r(),o?n:","]),o||a.push(DEi(e,t)?[xl,xl]:ig(l,fA.Leading|fA.Line)?xl:zg)},"elements"),Tbi(a)}var w4a=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/,T4a=e=>w4a.test(e),R4a=T4a;function N4a(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var XRe=N4a,zyt=new WeakMap;function kEi(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function qyi(e,t){return t.parser==="json"||t.parser==="jsonc"||!gV(e.key)||YRe(UM(e.key),t).slice(1,-1)!==e.key.value?!1:!!(R4a(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||kEi(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function D4a(e,t){let{key:r}=e.node;return(r.type==="Identifier"||gee(r)&&kEi(XRe(UM(r)))&&String(r.value)===XRe(UM(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&zyt.get(e.parent))}function F4e(e,t,r){let{node:n}=e;if(n.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=n;if(t.quoteProps==="consistent"&&!zyt.has(a)){let l=e.siblings.some(A=>!A.computed&&gV(A.key)&&!qyi(A,t));zyt.set(a,l)}if(D4a(e,t)){let l=YRe(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(A=>$X(A,l,t),"key")}return qyi(n,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!zyt.get(a))?e.call(l=>$X(l,/^\d/u.test(o.value)?XRe(o.value):o.value,t),"key"):r("key")}function DTr(e,t,r){let{node:n}=e;return n.shorthand?r("value"):G4e(e,t,r,F4e(e,t,r),":","value")}var k4a=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&obt(r));function xEi(e,t,r,n){if(k4a(e))return CRr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&n!=null&&n.expandLastArg){let{parent:C}=e;b_(C)&&(qM(C).length>1||NG(a).every(b=>b.type==="Identifier"&&!b.typeAnnotation))&&(o=!0)}let l=[AV(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],A=vme(e,t,r,o),f=gbt(e,t),I=qRe(a,f);return l.push(Ime(e,r,t),Ia([I?Ia(A):A,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&l.push(";"),l}function KTr(e,t,r){let{node:n}=e,{kind:a}=n,o=n.value||n,l=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&l.push("async "):(tRr.ok(a==="get"||a==="set"),l.push(a," ")),o.generator&&l.push("*"),l.push(F4e(e,t,r),n.optional||n.key.optional?"?":"",n===o?CRr(e,t,r):r("value")),l}function CRr(e,t,r){let{node:n}=e,a=vme(e,r,t),o=gbt(e,r),l=f4a(n),A=qRe(n,o),f=[Ime(e,t,r),Ia([l?Ia(a,{shouldBreak:!0}):A?Ia(a):a,o])];return n.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function x4a(e){let t=NG(e);return t.length===1&&!e.typeParameters&&!ig(e,fA.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!ig(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function GEi(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return x4a(r)}return!1}function gbt(e,t){let{node:r}=e,n=[Lk(e,t,"returnType")];return r.predicate&&n.push(t("predicate")),n}function FEi(e,t,r){let{node:n}=e,a=t.semi?";":"",o=[];if(n.argument){let f=r("argument");Z4a(t,n.argument)?f=["(",Pl([xl,f]),xl,")"]:(Aee(n.argument)||n.argument.type==="SequenceExpression"||t.experimentalTernaries&&n.argument.type==="ConditionalExpression"&&(n.argument.consequent.type==="ConditionalExpression"||n.argument.alternate.type==="ConditionalExpression"))&&(f=Ia([lh("("),Pl([bl,f]),bl,lh(")")])),o.push(" ",f)}let l=ig(n,fA.Dangling),A=a&&l&&ig(n,fA.Last|fA.Line);return A&&o.push(a),l&&o.push(" ",N2(e,t)),A||o.push(a),o}function G4a(e,t,r){return["return",FEi(e,t,r)]}function F4a(e,t,r){return["throw",FEi(e,t,r)]}function Z4a(e,t){if(sce(e.originalText,t)||ig(t,fA.Leading,r=>cce(e.originalText,ZS(r),BC(r)))&&!nD(t))return!0;if(rRr(t)){let r=t,n;for(;n=xHa(r);)if(r=n,sce(e.originalText,r))return!0}return!1}var kTr=new WeakMap;function ZEi(e){return kTr.has(e)||kTr.set(e,e.type==="ConditionalExpression"&&!JZ(e,t=>t.type==="ObjectExpression")),kTr.get(e)}var LEi=e=>e.type==="SequenceExpression";function L4a(e,t,r,n={}){let a=[],o,l=[],A=!1,f=!n.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",I;(function X(){let{node:ae}=e,ne=V4a(e,t,r,n);if(a.length===0)a.push(ne);else{let{leading:ce,trailing:fe}=$bi(e,t);a.push([ce,ne]),l.unshift(fe)}f&&(A||(A=ae.returnType&&NG(ae).length>0||ae.typeParameters||NG(ae).some(ce=>ce.type!=="Identifier"))),!f||ae.body.type!=="ArrowFunctionExpression"?(o=r("body",n),I=ae.body):e.call(X,"body")})();let C=!sce(t.originalText,I)&&(LEi(I)||P4a(I,o,t)||!A&&ZEi(I)),b=e.key==="callee"&&QRe(e.parent),E=Symbol("arrow-chain"),N=W4a(e,n,{signatureDocs:a,shouldBreak:A}),B=!1,F=!1,Q=!1;return f&&(b||n.assignmentLayout)&&(F=!0,Q=!ig(e.node,fA.Leading&fA.Line),B=n.assignmentLayout==="chain-tail-arrow-chain"||b&&!C),o=O4a(e,t,n,{bodyDoc:o,bodyComments:l,functionBody:I,shouldPutBodyOnSameLine:C}),Ia([Ia(F?Pl([Q?bl:"",N]):N,{shouldBreak:B,id:E})," =>",f?lbt(o,{groupId:E}):Ia(o),f&&b?lh(bl,"",{groupId:E}):""])}function V4a(e,t,r,n){let{node:a}=e,o=[];if(a.async&&o.push("async "),GEi(e,t))o.push(r(["params",0]));else{let A=n.expandLastArg||n.expandFirstArg,f=gbt(e,r);if(A){if(UZ(f))throw new tbt;f=Ia(VTr(f))}o.push(Ia([vme(e,r,t,A,!0),f]))}let l=N2(e,t,{filter(A){let f=jRe(t.originalText,BC(A));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return l&&o.push(" ",l),o}function P4a(e,t,r){var n,a;return Vk(e)||e4(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||nD(e)||((n=t.label)==null?void 0:n.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||Cbi(e,r.originalText))}function W4a(e,t,{signatureDocs:r,shouldBreak:n}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&QRe(a)||Aee(a)?Ia([r[0]," =>",Pl([zg,vC([" =>",zg],r.slice(1))])],{shouldBreak:n}):o==="callee"&&QRe(a)||t.assignmentLayout?Ia(vC([" =>",zg],r),{shouldBreak:n}):Ia(Pl(vC([" =>",zg],r)),{shouldBreak:n})}function O4a(e,t,r,{bodyDoc:n,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:l}){let{node:A,parent:f}=e,I=r.expandLastArg&&fee(t,"all")?lh(","):"",C=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!ig(A)?bl:"";return l&&ZEi(o)?[" ",Ia([lh("","("),Pl([bl,n]),lh("",")"),I,C]),a]:(LEi(o)&&(n=Ia(["(",Pl([bl,n]),bl,")"])),l?[" ",n,a]:[Pl([zg,n,a]),I,C])}var M4a=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},H4a=M4a;function jTr(e,t,r,n){let{node:a}=e,o=[],l=H4a(!1,a[n],A=>A.type!=="EmptyStatement");return e.each(({node:A})=>{A.type!=="EmptyStatement"&&(o.push(r()),A!==l&&(o.push(xl),Iee(A,t)&&o.push(xl)))},n),o}function VEi(e,t,r){let n=Y4a(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return n?[n,xl]:"";let l=[];if(a.type==="StaticBlock"&&l.push("static "),l.push("{"),n)l.push(Pl([xl,n]),xl);else{let A=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!A.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||l.push(xl)}return l.push("}"),l}function Y4a(e,t,r){let{node:n}=e,a=H_(n.directives),o=n.body.some(f=>f.type!=="EmptyStatement"),l=ig(n,fA.Dangling);if(!a&&!o&&!l)return"";let A=[];return a&&(A.push(jTr(e,t,r,"directives")),(o||l)&&(A.push(xl),Iee(U0(!1,n.directives,-1),t)&&A.push(xl))),o&&A.push(jTr(e,t,r,"body")),l&&A.push(N2(e,t)),A}function Q4a(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var PEi=Q4a;function X4a(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function J4a(e,t,r){let{node:n}=e;return Ia([n.variance?r("variance"):"","[",Pl([r("keyTparam")," in ",r("sourceType")]),"]",X4a(n.optional),": ",r("propType")])}function WEi(e,t){return e==="+"||e==="-"?e+t:t}function U4a(e,t,r){let{node:n}=e,a=t.objectWrap==="preserve"&&cce(t.originalText,ZS(n),ZS(n.typeParameter));return Ia(["{",Pl([t.bracketSpacing?zg:bl,Ia([r("typeParameter"),n.optional?WEi(n.optional,"?"):"",n.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?lh(";"):""]),N2(e,t),t.bracketSpacing?zg:bl,"}"],{shouldBreak:a})}var _Rr=PEi("typeParameters");function K4a(e,t,r){let{node:n}=e;return NG(n).length===1&&n.type.startsWith("TS")&&!n[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function T4e(e,t,r,n){let{node:a}=e;if(!a[n])return"";if(!Array.isArray(a[n]))return r(n);let o=abt(e.grandparent),l=e.match(f=>!(f[n].length===1&&ice(f[n][0])),void 0,(f,I)=>I==="typeAnnotation",f=>f.type==="Identifier",uEi);if(a[n].length===0||!l&&(o||a[n].length===1&&(a[n][0].type==="NullableTypeAnnotation"||dEi(a[n][0]))))return["<",vC(", ",e.map(r,n)),j4a(e,t),">"];let A=a.type==="TSTypeParameterInstantiation"?"":K4a(e,t,n)?",":fee(t)?lh(","):"";return Ia(["<",Pl([bl,vC([",",zg],e.map(r,n))]),A,bl,">"],{id:_Rr(a)})}function j4a(e,t){let{node:r}=e;if(!ig(r,fA.Dangling))return"";let n=!ig(r,fA.Line),a=N2(e,t,{indent:!n});return n?a:[a,xl]}function OEi(e,t,r){let{node:n,parent:a}=e,o=[n.const?"const ":""],l=n.type==="TSTypeParameter"?r("name"):n.name;if(a.type==="TSMappedType")return a.readonly&&o.push(WEi(a.readonly,"readonly")," "),o.push("[",l),n.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(n.variance&&o.push(r("variance")),n.in&&o.push("in "),n.out&&o.push("out "),o.push(l),n.bound&&(n.usesExtendsBound&&o.push(" extends "),o.push(Lk(e,r,"bound"))),n.constraint){let A=Symbol("constraint");o.push(" extends",Ia(Pl(zg),{id:A}),pee,lbt(r("constraint"),{groupId:A}))}return n.default&&o.push(" = ",r("default")),Ia(o)}var MEi=_0(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function HEi(e,t,r){let{node:n}=e,a=[AV(e),ubt(e),"class"],o=ig(n.id,fA.Trailing)||ig(n.typeParameters,fA.Trailing)||ig(n.superClass)||H_(n.extends)||H_(n.mixins)||H_(n.implements),l=[],A=[];if(n.id&&l.push(" ",r("id")),l.push(r("typeParameters")),n.superClass){let C=[$4a(e,t,r),r(n.superTypeArguments?"superTypeArguments":"superTypeParameters")],b=e.call(E=>["extends ",$X(E,C,t)],"superClass");o?A.push(zg,Ia(b)):A.push(" ",b)}else A.push(xTr(e,t,r,"extends"));A.push(xTr(e,t,r,"mixins"),xTr(e,t,r,"implements"));let f;if(o){let C;QEi(n)?C=[...l,Pl(A)]:C=Pl([...l,A]),f=YEi(n),a.push(Ia(C,{id:f}))}else a.push(...l,...A);let I=n.body;return o&&H_(I.body)?a.push(lh(xl," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var YEi=PEi("heritageGroup");function z4a(e){return lh(xl,"",{groupId:YEi(e)})}function q4a(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function QEi(e){return e.typeParameters&&!ig(e.typeParameters,fA.Trailing|fA.Line)&&!q4a(e)}function xTr(e,t,r,n){let{node:a}=e;if(!H_(a[n]))return"";let o=N2(e,t,{marker:n});return[QEi(a)?lh(" ",zg,{groupId:_Rr(a.typeParameters)}):zg,o,o&&xl,n,Ia(Pl([zg,vC([",",zg],e.map(r,n))]))]}function $4a(e,t,r){let n=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?Ia(lh(["(",Pl([bl,n]),bl,")"],n)):n}function XEi(e,t,r){let{node:n}=e,a=[];return H_(n.decorators)&&a.push(rEi(e,t,r)),a.push(rbt(n)),n.static&&a.push("static "),a.push(ubt(e)),n.override&&a.push("override "),a.push(KTr(e,t,r)),a}function JEi(e,t,r){let{node:n}=e,a=[],o=t.semi?";":"";H_(n.decorators)&&a.push(rEi(e,t,r)),a.push(AV(e),rbt(n)),n.static&&a.push("static "),a.push(ubt(e)),n.override&&a.push("override "),n.readonly&&a.push("readonly "),n.variance&&a.push(r("variance")),(n.type==="ClassAccessorProperty"||n.type==="AccessorProperty"||n.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(F4e(e,t,r),KZ(e),wEi(e),Lk(e,r));let l=n.type==="TSAbstractPropertyDefinition"||n.type==="TSAbstractAccessorProperty";return[G4e(e,t,r,a," =",l?void 0:"value"),o]}function eJa(e,t,r){let{node:n}=e,a=[];return e.each(({node:o,next:l,isLast:A})=>{a.push(r()),!t.semi&&MEi(o)&&tJa(o,l)&&a.push(";"),A||(a.push(xl),Iee(o,t)&&a.push(xl))},"body"),ig(n,fA.Dangling)&&a.push(N2(e,t)),["{",a.length>0?[Pl([xl,a]),xl]:"","}"]}function tJa(e,t){var r;let{type:n,name:a}=e.key;if(!e.computed&&n==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(MEi(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var rJa=_0(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function UEi(e){return rJa(e)?UEi(e.expression):e}var nJa=_0(["FunctionExpression","ArrowFunctionExpression"]);function iJa(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function sJa(e,t){if(t.semi||jEi(e,t)||zEi(e,t))return!1;let{node:r,key:n,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(n==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||n==="consequent"&&a.type==="SwitchCase")&&e.call(()=>KEi(e,t),"expression"))}function KEi(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!GEi(e,t))return!0;break;case"UnaryExpression":{let{prefix:n,operator:a}=r;if(n&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(nD(r))return!0}return Sme(e,t)?!0:rRr(r)?e.call(()=>KEi(e,t),...dbi(r)):!1}function jEi({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&nD(e.expression)&&t.type==="Program"&&t.body.length===1}function zEi({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function oJa(e,t,r){let n=[r("expression")];if(zEi(e,t)){let a=UEi(e.node.expression);(nJa(a)||iJa(a))&&n.push(";")}else jEi(e,t)||t.semi&&n.push(";");return n}function aJa(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let n=e.map(r,"program","body",0,"params");if(n.length===1)return n[0];let a=vC([",",zg],n);return t.__isVueForBindingLeft?["(",Pl([bl,Ia(a)]),bl,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let n=e.map(r,"program","body",0,"typeParameters","params");return vC([",",zg],n)}}function cJa(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return $yi(r);case"BigIntLiteral":return zTr(r.extra.raw);case"NumericLiteral":return XRe(r.extra.raw);case"StringLiteral":return fme(YRe(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return ebi(r.extra.raw,t);case"Literal":{if(r.regex)return $yi(r.regex);if(r.bigint)return zTr(r.raw);let{value:n}=r;return typeof n=="number"?XRe(r.raw):typeof n=="string"?lJa(e)?ebi(r.raw,t):fme(YRe(r.raw,t)):String(n)}}}function lJa(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function zTr(e){return e.toLowerCase()}function $yi({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function ebi(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let n=t.singleQuote?"'":'"';return n+r+n}function uJa(e,t,r){let n=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=ZS(a);if(o>r)break;let l=BC(a);if(le.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function e1i(e,t,r){let{node:n}=e,a=[OXa(e,t,r),AV(e),"export",$Ei(n)?" default":""],{declaration:o,exported:l}=n;return ig(n,fA.Dangling)&&(a.push(" ",N2(e,t)),_bi(n)&&a.push(xl)),o?a.push(" ",r("declaration")):(a.push(pJa(n)),n.type==="ExportAllDeclaration"||n.type==="DeclareExportAllDeclaration"?(a.push(" *"),l&&a.push(" as ",r("exported"))):a.push(n1i(e,t,r)),a.push(r1i(e,t,r),s1i(e,t,r))),a.push(dJa(n,t)),a}var AJa=_0(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function dJa(e,t){return t.semi&&(!e.declaration||$Ei(e)&&!AJa(e.declaration))?";":""}function yRr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function t1i(e,t){return yRr(e.importKind,t)}function pJa(e){return yRr(e.exportKind)}function r1i(e,t,r){let{node:n}=e;if(!n.source)return"";let a=[];return i1i(n,t)&&a.push(" from"),a.push(" ",r("source")),a}function n1i(e,t,r){let{node:n}=e;if(!i1i(n,t))return"";let a=[" "];if(H_(n.specifiers)){let o=[],l=[];e.each(()=>{let A=e.node.type;if(A==="ExportNamespaceSpecifier"||A==="ExportDefaultSpecifier"||A==="ImportNamespaceSpecifier"||A==="ImportDefaultSpecifier")o.push(r());else if(A==="ExportSpecifier"||A==="ImportSpecifier")l.push(r());else throw new zRe(n,"specifier")},"specifiers"),a.push(vC(", ",o)),l.length>0&&(o.length>0&&a.push(", "),l.length>1||o.length>0||n.specifiers.some(A=>ig(A))?a.push(Ia(["{",Pl([t.bracketSpacing?zg:bl,vC([",",zg],l)]),lh(fee(t)?",":""),t.bracketSpacing?zg:bl,"}"])):a.push(["{",t.bracketSpacing?" ":"",...l,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function i1i(e,t){return e.type!=="ImportDeclaration"||H_(e.specifiers)||e.importKind==="type"?!0:qEi(t,ZS(e),ZS(e.source)).trimEnd().endsWith("from")}function fJa(e,t){var r,n;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=qEi(t,BC(e.source),(n=e.attributes)!=null&&n[0]?ZS(e.attributes[0]):BC(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||H_(e.attributes)?"with":void 0}function s1i(e,t,r){let{node:n}=e;if(!n.source)return"";let a=fJa(n,t);if(!a)return"";let o=[` ${a} {`];return H_(n.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(vC(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function IJa(e,t,r){let{node:n}=e,{type:a}=n,o=a.startsWith("Import"),l=o?"imported":"local",A=o?"local":"exported",f=n[l],I=n[A],C="",b="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?C="*":f&&(C=r(l)),I&&!hJa(n)&&(b=r(A)),[yRr(a==="ImportSpecifier"?n.importKind:n.exportKind,!1),C,C&&b?" as ":"",b]}function hJa(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!_Ha(t,r))return!1;if(gV(t))return t.value===r.value&&UM(t)===UM(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function Abt(e,t,r){var n;let a=t.semi?";":"",{node:o}=e,l=o.type==="ObjectTypeAnnotation",A=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||A?"members":o.type==="TSInterfaceBody"?"body":"properties"];l&&f.push("indexers","callProperties","internalSlots");let I=f.flatMap(ue=>e.map(({node:de})=>({node:de,printed:r(),loc:ZS(de)}),ue));f.length>1&&I.sort((ue,de)=>ue.loc-de.loc);let{parent:C,key:b}=e,E=l&&b==="body"&&(C.type==="InterfaceDeclaration"||C.type==="DeclareInterface"||C.type==="DeclareClass"),N=o.type==="TSInterfaceBody"||A||E||o.type==="ObjectPattern"&&C.type!=="FunctionDeclaration"&&C.type!=="FunctionExpression"&&C.type!=="ArrowFunctionExpression"&&C.type!=="ObjectMethod"&&C.type!=="ClassMethod"&&C.type!=="ClassPrivateMethod"&&C.type!=="AssignmentPattern"&&C.type!=="CatchClause"&&o.properties.some(ue=>ue.value&&(ue.value.type==="ObjectPattern"||ue.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&I.length>0&&cce(t.originalText,ZS(o),I[0].loc),B=E?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?lh(a,";"):",",F=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",Q=o.exact?"|}":"}",X=[],ae=I.map(ue=>{let de=[...X,Ia(ue.printed)];return X=[B,zg],(ue.node.type==="TSPropertySignature"||ue.node.type==="TSMethodSignature"||ue.node.type==="TSConstructSignatureDeclaration"||ue.node.type==="TSCallSignatureDeclaration")&&ig(ue.node,fA.PrettierIgnore)&&X.shift(),Iee(ue.node,t)&&X.push(xl),de});if(o.inexact||o.hasUnknownMembers){let ue;if(ig(o,fA.Dangling)){let de=ig(o,fA.Line);ue=[N2(e,t),de||dO(t.originalText,BC(U0(!1,WRe(o),-1)))?xl:zg,"..."]}else ue=["..."];ae.push([...X,...ue])}let ne=(n=U0(!1,I,-1))==null?void 0:n.node,ce=!(o.inexact||o.hasUnknownMembers||ne&&(ne.type==="RestElement"||(ne.type==="TSPropertySignature"||ne.type==="TSCallSignatureDeclaration"||ne.type==="TSMethodSignature"||ne.type==="TSConstructSignatureDeclaration")&&ig(ne,fA.PrettierIgnore))),fe;if(ae.length===0){if(!ig(o,fA.Dangling))return[F,Q,Lk(e,r)];fe=Ia([F,N2(e,t,{indent:!0}),bl,Q,KZ(e),Lk(e,r)])}else fe=[E&&H_(o.properties)?z4a(C):"",F,Pl([t.bracketSpacing?zg:bl,...ae]),lh(ce&&(B!==","||fee(t))?B:""),t.bracketSpacing?zg:bl,Q,KZ(e),Lk(e,r)];return e.match(ue=>ue.type==="ObjectPattern"&&!H_(ue.decorators),GTr)||ice(o)&&(e.match(void 0,(ue,de)=>de==="typeAnnotation",(ue,de)=>de==="typeAnnotation",GTr)||e.match(void 0,(ue,de)=>ue.type==="FunctionTypeParam"&&de==="typeAnnotation",GTr))||!N&&e.match(ue=>ue.type==="ObjectPattern",ue=>ue.type==="AssignmentExpression"||ue.type==="VariableDeclarator")?fe:Ia(fe,{shouldBreak:N})}function GTr(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&AEi(e)}function mJa(e){let t=[e];for(let r=0;rE[Se]===n),B=E.type===n.type&&!N,F,Q,X=0;do Q=F||n,F=e.getParentNode(X),X++;while(F&&F.type===n.type&&A.every(Se=>F[Se]!==Q));let ae=F||E,ne=Q;if(a&&(nD(n[A[0]])||nD(f)||nD(I)||mJa(ne))){b=!0,B=!0;let Se=k=>[lh("("),Pl([bl,k]),bl,lh(")")],De=k=>k.type==="NullLiteral"||k.type==="Literal"&&k.value===null||k.type==="Identifier"&&k.name==="undefined";C.push(" ? ",De(f)?r(o):Se(r(o))," : ",I.type===n.type||De(I)?r(l):Se(r(l)))}else{let Se=k=>t.useTabs?Pl(r(k)):oj(2,r(k)),De=[zg,"? ",f.type===n.type?lh("","("):"",Se(o),f.type===n.type?lh("",")"):"",zg,": ",Se(l)];C.push(E.type!==n.type||E[l]===n||N?De:t.useTabs?wbi(Pl(De)):oj(Math.max(0,t.tabWidth-2),De))}let ce=[o,l,...A].some(Se=>ig(n[Se],De=>zM(De)&&cce(t.originalText,ZS(De),BC(De)))),fe=Se=>E===ae?Ia(Se,{shouldBreak:ce}):ce?[Se,aj]:Se,ue=!b&&(Yv(E)||E.type==="NGPipeExpression"&&E.left===n)&&!E.computed,de=yJa(e),be=fe([CJa(e,t,r),B?C:Pl(C),a&&ue&&!de?bl:""]);return N||de?Ia([Pl([bl,be]),bl]):be}function EJa(e,t){return(Yv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function SJa(e,t,r,n){return[...e.map(a=>WRe(a)),WRe(t),WRe(r)].flat().some(a=>zM(a)&&cce(n.originalText,ZS(a),BC(a)))}var vJa=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function BJa(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,n=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===n||b_(o)&&o.callee===n||Yv(o)&&o.object===n||o.type==="TSNonNullExpression"&&o.expression===n){n=o;continue}o.type==="NewExpression"&&o.callee===n||nj(o)&&o.expression===n?(r=e.getParentNode(a+1),n=o):r=o}return n===t?!1:r[vJa.get(r.type)]===n}var FTr=e=>[lh("("),Pl([bl,e]),bl,lh(")")];function bRr(e,t,r,n){if(!t.experimentalTernaries)return bJa(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",l=ace(a),A=o?"consequent":"trueType",f=o?"alternate":"falseType",I=o?["test"]:["checkType","extendsType"],C=a[A],b=a[f],E=I.map(ke=>a[ke]),{parent:N}=e,B=N.type===a.type,F=B&&I.some(ke=>N[ke]===a),Q=B&&N[f]===a,X=C.type===a.type,ae=b.type===a.type,ne=ae||Q,ce=t.tabWidth>2||t.useTabs,fe,ue,de=0;do ue=fe||a,fe=e.getParentNode(de),de++;while(fe&&fe.type===a.type&&I.every(ke=>fe[ke]!==ue));let be=fe||N,Se=n&&n.assignmentLayout&&n.assignmentLayout!=="break-after-operator"&&(N.type==="AssignmentExpression"||N.type==="VariableDeclarator"||N.type==="ClassProperty"||N.type==="PropertyDefinition"||N.type==="ClassPrivateProperty"||N.type==="ObjectProperty"||N.type==="Property"),De=(N.type==="ReturnStatement"||N.type==="ThrowStatement")&&!(X||ae),k=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",et=BJa(e),ct=EJa(a,N),Me=l&&Sme(e,t),je=ce?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",St=SJa(E,C,b,t)||X||ae,At=!ne&&!B&&!l&&(k?C.type==="NullLiteral"||C.type==="Literal"&&C.value===null:sRr(C,t)&&xyi(a.test,3)),Yt=ne||Q||l&&!B||B&&o&&xyi(a.test,1)||At,Tr=[];!X&&ig(C,fA.Dangling)&&e.call(ke=>{Tr.push(N2(ke,t),xl)},"consequent");let Nr=[];ig(a.test,fA.Dangling)&&e.call(ke=>{Nr.push(N2(ke,t))},"test"),!ae&&ig(b,fA.Dangling)&&e.call(ke=>{Nr.push(N2(ke,t))},"alternate"),ig(a,fA.Dangling)&&Nr.push(N2(e,t));let er=Symbol("test"),vt=Symbol("consequent"),xt=Symbol("test-and-consequent"),Zr=o?[FTr(r("test")),a.test.type==="ConditionalExpression"?aj:""]:[r("checkType")," ","extends"," ",ace(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):Ia(FTr(r("extendsType")))],qt=Ia([Zr," ?"],{id:er}),Xt=r(A),lr=Pl([X||k&&(nD(C)||B||ne)?xl:zg,Tr,Xt]),cr=Yt?Ia([qt,ne?lr:lh(lr,Ia(lr,{id:vt}),{groupId:er})],{id:xt}):[qt,lr],Ar=r(f),qr=At?lh(Ar,wbi(FTr(Ar)),{groupId:xt}):Ar,_n=[cr,Nr.length>0?[Pl([xl,Nr]),xl]:ae?xl:At?lh(zg," ",{groupId:xt}):zg,":",ae?" ":ce?Yt?lh(je,lh(ne||At?" ":je," "),{groupId:xt}):lh(je," "):" ",ae?qr:Ia([Pl(qr),k&&!At?bl:""]),ct&&!et?bl:"",St?aj:""];return Se&&!St?Ia(Pl([bl,Ia(_n)])):Se||De?Ia(Pl(_n)):et||l&&F?Ia([Pl([bl,_n]),Me?bl:""]):N===be?Ia(_n):_n}function wJa(e,t,r,n){let{node:a}=e;if(nRr(a))return cJa(e,t);let o=t.semi?";":"",l=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),xl];case"File":return aJa(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return oJa(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!ig(a.expression)&&(e4(a.expression)||Vk(a.expression))?["(",r("expression"),")"]:Ia(["(",Pl([bl,r("expression")]),bl,")"]);case"AssignmentExpression":return $Xa(e,t,r);case"VariableDeclarator":return e4a(e,t,r);case"BinaryExpression":case"LogicalExpression":return tEi(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return jXa(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&l.push(r("object")),l.push(Ia(Pl([bl,TEi(e,t,r)]))),l;case"Identifier":return[a.name,KZ(e),wEi(e),Lk(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return REi(e,r);case"FunctionDeclaration":case"FunctionExpression":return xEi(e,r,t,n);case"ArrowFunctionExpression":return L4a(e,t,r,n);case"YieldExpression":return l.push("yield"),a.delegate&&l.push("*"),a.argument&&l.push(" ",r("argument")),l;case"AwaitExpression":if(l.push("await"),a.argument){l.push(" ",r("argument"));let{parent:A}=e;if(b_(A)&&A.callee===a||Yv(A)&&A.object===a){l=[Pl([bl,...l]),bl];let f=e.findAncestor(I=>I.type==="AwaitExpression"||I.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!JZ(f.argument,I=>I===a))return Ia(l)}}return l;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return e1i(e,t,r);case"ImportDeclaration":return gJa(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return IJa(e,t,r);case"ImportAttribute":return DTr(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return VEi(e,t,r);case"ClassBody":return eJa(e,t,r);case"ThrowStatement":return F4a(e,t,r);case"ReturnStatement":return G4a(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return cEi(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return Abt(e,t,r);case"Property":return obt(a)?KTr(e,t,r):DTr(e,t,r);case"ObjectProperty":return DTr(e,t,r);case"ObjectMethod":return KTr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return mRr(e,t,r);case"SequenceExpression":{let{parent:A}=e;if(A.type==="ExpressionStatement"||A.type==="ForStatement"){let f=[];return e.each(({isFirst:I})=>{I?f.push(r()):f.push(",",Pl([zg,r()]))},"expressions"),Ia(f)}return Ia(vC([",",zg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return l.push(a.operator),/[a-z]$/u.test(a.operator)&&l.push(" "),ig(a.argument)?l.push(Ia(["(",Pl([bl,r("argument")]),bl,")"])):l.push(r("argument")),l;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return bRr(e,t,r,n);case"VariableDeclaration":{let A=e.map(r,"declarations"),f=e.parent,I=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",C=a.declarations.some(E=>E.init),b;return A.length===1&&!ig(a.declarations[0])?b=A[0]:A.length>0&&(b=Pl(A[0])),l=[AV(e),a.kind,b?[" ",b]:"",Pl(A.slice(1).map(E=>[",",C&&!I?xl:zg,E]))],I&&f.body!==a||l.push(o),Ia(l)}case"WithStatement":return Ia(["with (",r("object"),")",rce(a.body,r("body"))]);case"IfStatement":{let A=rce(a.consequent,r("consequent")),f=Ia(["if (",Ia([Pl([bl,r("test")]),bl]),")",A]);if(l.push(f),a.alternate){let I=ig(a.consequent,fA.Trailing|fA.Line)||_bi(a),C=a.consequent.type==="BlockStatement"&&!I;l.push(C?" ":xl),ig(a,fA.Dangling)&&l.push(N2(e,t),I?xl:" "),l.push("else",Ia(rce(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return l}case"ForStatement":{let A=rce(a.body,r("body")),f=N2(e,t),I=f?[f,bl]:"";return!a.init&&!a.test&&!a.update?[I,Ia(["for (;;)",A])]:[I,Ia(["for (",Ia([Pl([bl,r("init"),";",zg,r("test"),";",zg,r("update")]),bl]),")",A])]}case"WhileStatement":return Ia(["while (",Ia([Pl([bl,r("test")]),bl]),")",rce(a.body,r("body"))]);case"ForInStatement":return Ia(["for (",r("left")," in ",r("right"),")",rce(a.body,r("body"))]);case"ForOfStatement":return Ia(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",rce(a.body,r("body"))]);case"DoWhileStatement":{let A=rce(a.body,r("body"));return l=[Ia(["do",A])],a.body.type==="BlockStatement"?l.push(" "):l.push(xl),l.push("while (",Ia([Pl([bl,r("test")]),bl]),")",o),l}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return l.push(a.type==="BreakStatement"?"break":"continue"),a.label&&l.push(" ",r("label")),l.push(o),l;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let A=ig(a.param,I=>!zM(I)||I.leading&&dO(t.originalText,BC(I))||I.trailing&&dO(t.originalText,ZS(I),{backwards:!0})),f=r("param");return["catch ",A?["(",Pl([bl,f]),bl,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[Ia(["switch (",Pl([bl,r("discriminant")]),bl,")"])," {",a.cases.length>0?Pl([xl,vC(xl,e.map(({node:A,isLast:f})=>[r(),!f&&Iee(A,t)?xl:""],"cases"))]):"",xl,"}"];case"SwitchCase":{a.test?l.push("case ",r("test"),":"):l.push("default:"),ig(a,fA.Dangling)&&l.push(" ",N2(e,t));let A=a.consequent.filter(f=>f.type!=="EmptyStatement");if(A.length>0){let f=jTr(e,t,r,"consequent");l.push(A.length===1&&A[0].type==="BlockStatement"?[" ",f]:Pl([xl,f]))}return l}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return HEi(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return XEi(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return JEi(e,t,r);case"TemplateElement":return fme(a.value.raw);case"TemplateLiteral":return Qbi(e,r,t);case"TaggedTemplateExpression":return lQa(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new zRe(a,"ESTree")}}function o1i(e,t,r){let{parent:n,node:a,key:o}=e,l=[r("expression")];switch(a.type){case"AsConstExpression":l.push(" as const");break;case"AsExpression":case"TSAsExpression":l.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":l.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&b_(n)||o==="object"&&Yv(n)?Ia([Pl([bl,...l]),bl]):l}function TJa(e,t,r){let{node:n}=e,a=[AV(e),"component"];n.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=RJa(e,r,t);return n.rendersType?a.push(Ia([o," ",r("rendersType")])):a.push(Ia([o])),n.body&&a.push(" ",r("body")),t.semi&&n.type==="DeclareComponent"&&a.push(";"),a}function RJa(e,t,r){let{node:n}=e,a=n.params;if(n.rest&&(a=[...a,n.rest]),a.length===0)return["(",N2(e,r,{filter:l=>t4(r.originalText,BC(l))===")"}),")"];let o=[];return DJa(e,(l,A)=>{let f=A===a.length-1;f&&n.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),Iee(a[A],r)?o.push(xl,xl):o.push(zg))}),["(",Pl([bl,...o]),lh(fee(r,"all")&&!NJa(n,a)?",":""),bl,")"]}function NJa(e,t){var r;return e.rest||((r=U0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function DJa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function kJa(e,t,r){let{node:n}=e;return n.shorthand?r("local"):[r("name")," as ",r("local")]}function xJa(e,t,r){let{node:n}=e,a=[];return n.name&&a.push(r("name"),n.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function a1i(e,t,r){return Abt(e,r,t)}function c1i(e,t){let{node:r}=e,n=t("id");r.computed&&(n=["[",n,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[n," = ",a]:n}function GJa(e,t,r){let{node:n}=e,a;if(n.type==="EnumSymbolBody"||n.explicitType)switch(n.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",a1i(e,t,r)]}function l1i(e,t,r){let{node:n}=e;return[AV(e),n.const?"const ":"","enum ",t("id")," ",n.type==="TSEnumDeclaration"?a1i(e,t,r):t("body")]}function FJa(e,t,r){let{node:n}=e,a=["hook"];n.id&&a.push(" ",r("id"));let o=vme(e,r,t,!1,!0),l=gbt(e,r),A=qRe(n,l);return a.push(Ia([A?Ia(o):o,l]),n.body?" ":"",r("body")),a}function ZJa(e,t,r){let{node:n}=e,a=[AV(e),"hook"];return n.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function tbi(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function LJa(e,t,r){let{node:n}=e,a=[];a.push(tbi(e)?"":"hook ");let o=vme(e,r,t,!1,!0),l=[];return l.push(tbi(e)?": ":" => ",r("returnType")),qRe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function u1i(e,t,r){let{node:n}=e,a=[AV(e),"interface"],o=[],l=[];n.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let A=n.typeParameters&&!ig(n.typeParameters,fA.Trailing|fA.Line);return H_(n.extends)&&l.push(A?lh(" ",zg,{groupId:_Rr(n.typeParameters)}):zg,"extends ",(n.extends.length===1?XHa:Pl)(vC([",",zg],e.map(r,"extends")))),ig(n.id,fA.Trailing)||H_(n.extends)?A?a.push(Ia([...o,Pl(l)])):a.push(Ia(Pl([...o,...l]))):a.push(...o,...l),a.push(" ",r("body")),Ia(a)}function VJa(e,t,r){let{node:n}=e;if(gbi(n))return n.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(n.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return TJa(e,t,r);case"ComponentParameter":return kJa(e,t,r);case"ComponentTypeParameter":return xJa(e,t,r);case"HookDeclaration":return FJa(e,t,r);case"DeclareHook":return ZJa(e,t,r);case"HookTypeAnnotation":return LJa(e,t,r);case"DeclareClass":return HEi(e,t,r);case"DeclareFunction":return[AV(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",Lk(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[AV(e),n.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return e1i(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return C4a(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return pEi(e,t,r);case"IntersectionTypeAnnotation":return fEi(e,t,r);case"UnionTypeAnnotation":return IEi(e,t,r);case"ConditionalTypeAnnotation":return bRr(e,t,r);case"InferTypeAnnotation":return CEi(e,t,r);case"FunctionTypeAnnotation":return hEi(e,t,r);case"TupleTypeAnnotation":return mRr(e,t,r);case"TupleTypeLabeledElement":return yEi(e,t,r);case"TupleTypeSpreadElement":return _Ei(e,t,r);case"GenericTypeAnnotation":return[r("id"),T4e(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return mEi(e,t,r);case"TypeAnnotation":return EEi(e,t,r);case"TypeParameter":return OEi(e,t,r);case"TypeofTypeAnnotation":return vEi(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return SEi(r);case"DeclareEnum":case"EnumDeclaration":return l1i(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return GJa(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return c1i(e,r);case"FunctionTypeParam":{let o=n.name?r("name"):e.parent.this===n?"this":"";return[o,KZ(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return u1i(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=n;return tRr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[n.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return J4a(e,t,r);case"ObjectTypeIndexer":return[n.static?"static ":"",n.variance?r("variance"):"","[",r("id"),n.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return n.proto?o="proto ":n.static&&(o="static "),[o,n.kind!=="init"?n.kind+" ":"",n.variance?r("variance"):"",F4e(e,t,r),KZ(e),obt(n)?"":": ",r("value")]}case"ObjectTypeAnnotation":return Abt(e,t,r);case"ObjectTypeInternalSlot":return[n.static?"static ":"","[[",r("id"),"]]",KZ(e),n.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return REi(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(n.value);case"StringLiteralTypeAnnotation":return fme(YRe(UM(n),t));case"NumberLiteralTypeAnnotation":return XRe(n.raw??n.extra.raw);case"BigIntLiteralTypeAnnotation":return zTr(n.raw??n.extra.raw);case"TypeCastExpression":return["(",r("expression"),Lk(e,r),")"];case"TypePredicate":return BEi(e,r);case"TypeOperator":return[n.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return T4e(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...n.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return o1i(e,t,r)}}function PJa(e,t,r){var n;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(Abi(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",l=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let A=!(Vk(a.expression)||e4(a.expression)),f=Ia(["<",Pl([bl,r("typeAnnotation")]),bl,">"]),I=[lh("("),Pl([bl,r("expression")]),bl,lh(")")];return A?pme([[f,r("expression")],[f,Ia(I,{shouldBreak:!0})],[f,r("expression")]]):Ia([f,r("expression")])}case"TSDeclareFunction":return xEi(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return VEi(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return Abt(e,t,r);case"TSTypeAliasDeclaration":return pEi(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return XEi(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return JEi(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return Qbi(e,r,t);case"TSNamedTupleMember":return yEi(e,t,r);case"TSRestType":return _Ei(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return u1i(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return T4e(e,t,r,"params");case"TSTypeParameter":return OEi(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return o1i(e,t,r);case"TSArrayType":return SEi(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",F4e(e,t,r),KZ(e),Lk(e,r)];case"TSParameterProperty":return[rbt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return vEi(e,r);case"TSIndexSignature":{let A=a.parameters.length>1?lh(fee(t)?",":""):"",f=Ia([Pl([bl,vC([", ",bl],e.map(r,"parameters"))]),A,bl]),I=e.parent.type==="ClassBody"&&e.key==="body";return[I&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",Lk(e,r),I?o:""]}case"TSTypePredicate":return BEi(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",T4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return mEi(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return U4a(e,t,r);case"TSMethodSignature":{let A=a.kind&&a.kind!=="method"?`${a.kind} `:"";l.push(rbt(a),A,a.computed?"[":"",r("key"),a.computed?"]":"",KZ(e));let f=vme(e,r,t,!1,!0),I=a.returnType?"returnType":"typeAnnotation",C=a[I],b=C?Lk(e,r,I):"",E=qRe(a,b);return l.push(E?Ia(f):f),C&&l.push(Ia(b)),Ia(l)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return l1i(e,r,t);case"TSEnumMember":return c1i(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",t1i(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:A}=e,f=A.type==="TSModuleDeclaration",I=((n=a.body)==null?void 0:n.type)==="TSModuleDeclaration";return f?l.push("."):(l.push(AV(e)),a.kind!=="global"&&l.push(a.kind," ")),l.push(r("id")),I?l.push(r("body")):a.body?l.push(" ",Ia(r("body"))):l.push(o),l}case"TSConditionalType":return bRr(e,t,r);case"TSInferType":return CEi(e,t,r);case"TSIntersectionType":return fEi(e,t,r);case"TSUnionType":return IEi(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return hEi(e,t,r);case"TSTupleType":return mRr(e,t,r);case"TSTypeReference":return[r("typeName"),T4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return EEi(e,t,r);case"TSEmptyBodyFunctionExpression":return CRr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return zyi(e,r,"?");case"TSJSDocNonNullableType":return zyi(e,r,"!");case"TSParenthesizedType":default:throw new zRe(a,"TypeScript")}}function WJa(e,t,r,n){if(eEi(e))return tXa(e,t);for(let a of[VXa,DXa,VJa,PJa,wJa]){let o=a(e,t,r,n);if(o!==void 0)return o}}var OJa=_0(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function MJa(e,t,r,n){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=WJa(e,t,r,n);if(!o)return"";let{node:l}=e;if(OJa(l))return o;let A=H_(l.decorators),f=MXa(e,t,r),I=l.type==="ClassExpression";if(A&&!I)return PTr(o,E=>Ia([f,E]));let C=Sme(e,t),b=sJa(e,t);return!f&&!C&&!b?o:PTr(o,E=>[b?";":"",C?"(":"",C&&I&&A?[Pl([zg,f,E]),zg]:[f,E],C?")":""])}var HJa=MJa,YJa={avoidAstMutation:!0},QJa=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".code-workspace",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],g1i={};nbt(g1i,{getVisitorKeys:()=>KJa,massageAstNode:()=>A1i,print:()=>jJa});var XJa={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},JJa=XJa,UJa=lbi(JJa),KJa=UJa;function jJa(e,t,r){let{node:n}=e;switch(n.type){case"JsonRoot":return[r("node"),xl];case"ArrayExpression":{if(n.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",Pl([xl,vC([",",xl],a)]),xl,"]"]}case"ObjectExpression":return n.properties.length===0?"{}":["{",Pl([xl,vC([",",xl],e.map(r,"properties"))]),xl,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[n.operator==="+"?"":n.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return n.value?"true":"false";case"StringLiteral":return JSON.stringify(n.value);case"NumericLiteral":return rbi(e)?JSON.stringify(String(n.value)):JSON.stringify(n.value);case"Identifier":return rbi(e)?JSON.stringify(n.name):n.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(n.value.cooked);default:throw new zRe(n,"JSON")}}function rbi(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var zJa=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function A1i(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:n}=e;n.type==="Identifier"?t.key={type:"StringLiteral",value:n.name}:n.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(n.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[n,a]of e.elements.entries())a===null&&t.elements.splice(n,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}A1i.ignoredProperties=zJa;var S4e={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},nce="JavaScript",qJa={arrowParens:{category:nce,type:"choice",default:"always",description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:S4e.bracketSameLine,objectWrap:S4e.objectWrap,bracketSpacing:S4e.bracketSpacing,jsxBracketSameLine:{category:nce,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:nce,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:nce,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:nce,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:S4e.singleQuote,jsxSingleQuote:{category:nce,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:nce,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{category:nce,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:S4e.singleAttributePerLine},d1i=qJa,$Re={estree:obi,"estree-json":g1i},p1i=[...JMa,...QJa],$Ja=sbi;var O4e={};sI(O4e,{default:()=>vKa,languages:()=>D1i,options:()=>k1i,parsers:()=>RRr,printers:()=>M1i});var eUa=Object.defineProperty,C1i=(e,t)=>{for(var r in t)eUa(e,r,{get:t[r],enumerable:!0})},_1i={};C1i(_1i,{languages:()=>D1i,options:()=>k1i,parsers:()=>RRr,printers:()=>M1i});var tUa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},ERr=tUa,rUa="indent",nUa="group",iUa="if-break",TRr="line",sUa="break-parent",y1i=()=>{},P4e=y1i,b1i=y1i;function pV(e){return P4e(e),{type:rUa,contents:e}}function $M(e,t={}){return P4e(e),b1i(t.expandedStates,!0),{type:nUa,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function lj(e,t="",r={}){return P4e(e),t!==""&&P4e(t),{type:iUa,breakContents:e,flatContents:t,groupId:r.groupId}}var oUa={type:sUa},aUa={type:TRr,hard:!0},tNe={type:TRr},Qv={type:TRr,soft:!0},AT=[aUa,oUa];function Wk(e,t){P4e(e),b1i(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var u1i=YJa,QJa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},XJa=QJa,G4e=null;function Z4e(e){if(G4e!==null&&typeof G4e.property){let t=G4e;return G4e=Z4e.prototype=null,t}return G4e=Z4e.prototype=e??Object.create(null),new Z4e}var JJa=10;for(let e=0;e<=JJa;e++)Z4e();function UJa(e){return Z4e(e)}function KJa(e,t="type"){UJa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var jJa=KJa,zJa=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},g1i=class{constructor(e,t,r,n,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},A1i={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},vTu=new Set(Object.keys(A1i)),qRe;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(qRe||(qRe={}));var qJa=jJa(A1i,"kind"),$Ja=qJa;function d1i(e){return e.loc.start}function p1i(e){return e.loc.end}function eUa(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function tUa(e){return`# @format +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var S1i=uUa;function gUa(e,t,r={}){let n=E1i(e,r.backwards?t-1:t,r),a=S1i(e,n,r);return n!==a}var AUa=gUa;function dUa(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r0}var v1i=CUa,_Ua=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},yUa=_Ua,Z4e=null;function V4e(e){if(Z4e!==null&&typeof Z4e.property){let t=Z4e;return Z4e=V4e.prototype=null,t}return Z4e=V4e.prototype=e??Object.create(null),new V4e}var bUa=10;for(let e=0;e<=bUa;e++)V4e();function EUa(e){return V4e(e)}function SUa(e,t="type"){EUa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var vUa=SUa,BUa=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},B1i=class{constructor(e,t,r,n,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},w1i={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},RRu=new Set(Object.keys(w1i)),eNe;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(eNe||(eNe={}));var wUa=vUa(w1i,"kind"),TUa=wUa;function T1i(e){return e.loc.start}function R1i(e){return e.loc.end}function RUa(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function NUa(e){return`# @format -`+e}function rUa(e,t,r){let{node:n}=e;if(!n.description)return"";let a=[r("description")];return n.kind==="InputValueDefinition"&&!n.description.block?a.push($Re):a.push(AT),a}var Cee=rUa;function nUa(e,t,r){let{node:n}=e;switch(n.kind){case"Document":return[...Wk(AT,cj(e,t,r,"definitions")),AT];case"OperationDefinition":{let a=t.originalText[d1i(n)]!=="{",o=!!n.name;return[a?n.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&u1i(n.variableDefinitions)?" ":"",e1i(e,r),jZ(e,r,n),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),e1i(e,r)," on ",r("typeCondition"),jZ(e,r,n)," ",r("selectionSet")];case"SelectionSet":return["{",pV([AT,Wk(AT,cj(e,t,r,"selections"))]),AT,"}"];case"Field":return $M([n.alias?[r("alias"),": "]:"",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",jZ(e,r,n),n.selectionSet?" ":"",r("selectionSet")]);case"Name":return n.value;case"StringValue":if(n.block){let a=mRr(!1,n.value,'"""',String.raw`\"""`).split(` -`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),Wk(AT,['"""',...a,'"""'])}return['"',mRr(!1,mRr(!1,n.value,/["\\]/gu,String.raw`\$&`),` -`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return n.value;case"BooleanValue":return n.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return $M(["[",pV([Qv,Wk([lj("",", "),Qv],e.map(r,"values"))]),Qv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&n.fields.length>0?" ":"";return $M(["{",a,pV([Qv,Wk([lj("",", "),Qv],e.map(r,"fields"))]),Qv,lj("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",jZ(e,r,n)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=n,o=[];return a.endsWith("TypeDefinition")?o.push(Cee(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&n.interfaces.length>0&&o.push(" implements ",...oUa(e,t,r)),o.push(jZ(e,r,n)),n.fields.length>0&&o.push([" {",pV([AT,Wk(AT,cj(e,t,r,"fields"))]),AT,"}"]),o}case"FieldDefinition":return[Cee(e,t,r),r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",": ",r("type"),jZ(e,r,n)];case"DirectiveDefinition":return[Cee(e,t,r),"directive ","@",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",n.repeatable?" repeatable":""," on ",...Wk(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[Cee(e,t,r),n.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),jZ(e,r,n),n.values.length>0?[" {",pV([AT,Wk(AT,cj(e,t,r,"values"))]),AT,"}"]:""];case"EnumValueDefinition":return[Cee(e,t,r),r("name"),jZ(e,r,n)];case"InputValueDefinition":return[Cee(e,t,r),r("name"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",jZ(e,r,n)];case"SchemaExtension":return["extend schema",jZ(e,r,n),...n.operationTypes.length>0?[" {",pV([AT,Wk(AT,cj(e,t,r,"operationTypes"))]),AT,"}"]:[]];case"SchemaDefinition":return[Cee(e,t,r),"schema",jZ(e,r,n)," {",n.operationTypes.length>0?pV([AT,Wk(AT,cj(e,t,r,"operationTypes"))]):"",AT,"}"];case"OperationTypeDefinition":return[n.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),jZ(e,r,n)];case"InlineFragment":return["...",n.typeCondition?[" on ",r("typeCondition")]:"",jZ(e,r,n)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return $M([Cee(e,t,r),$M([n.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),jZ(e,r,n),n.types.length>0?[" =",lj(""," "),pV([lj([$Re,"| "]),Wk([$Re,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[Cee(e,t,r),n.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),jZ(e,r,n)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new XJa(n,"Graphql","kind")}}function jZ(e,t,r){if(r.directives.length===0)return"";let n=Wk($Re,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?$M([$Re,n]):[" ",$M(pV([Qv,n]))]}function cj(e,t,r,n){return e.map(({isLast:a,node:o})=>{let l=r();return!a&&HJa(t.originalText,p1i(o))?[l,AT]:l},n)}function iUa(e){return e.kind!=="Comment"}function sUa(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function oUa(e,t,r){let{node:n}=e,a=[],{interfaces:o}=n,l=e.map(r,"interfaces");for(let A=0;An.value.trim()==="prettier-ignore")}var cUa={print:nUa,massageAstNode:f1i,hasPrettierIgnore:aUa,insertPragma:tUa,printComment:sUa,canAttachComment:iUa,getVisitorKeys:$Ja},lUa=cUa,I1i=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],uUa={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},gUa={bracketSpacing:uUa.bracketSpacing},h1i=gUa,SRr={};i1i(SRr,{graphql:()=>KUa});function AUa(e){return typeof e=="object"&&e!==null}function dUa(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var pUa=/\r\n|[\n\r]/g;function yRr(e,t){let r=0,n=1;for(let a of e.body.matchAll(pUa)){if(typeof a.index=="number"||dUa(!1),a.index>=t)break;r=a.index+a[0].length,n+=1}return{line:n,column:t+1-r}}function fUa(e){return m1i(e.source,yRr(e.source,e.start))}function m1i(e,t){let r=e.locationOffset.column-1,n="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,l=t.line+o,A=t.line===1?r:0,f=t.column+A,I=`${e.name}:${l}:${f} -`,C=n.split(/\r\n|[\n\r]/g),b=C[a];if(b.length>120){let E=Math.floor(f/80),N=f%80,B=[];for(let F=0;F["|",F]),["|","^".padStart(N)],["|",B[E+1]]])}return I+t1i([[`${l-1} |`,C[a-1]],[`${l} |`,b],["|","^".padStart(f)],[`${l+1} |`,C[a+1]]])}function t1i(e){let t=e.filter(([n,a])=>a!==void 0),r=Math.max(...t.map(([n])=>n.length));return t.map(([n,a])=>n.padStart(r)+(a?" "+a:"")).join(` -`)}function IUa(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var hUa=class C1i extends Error{constructor(t,...r){var n,a,o;let{nodes:l,source:A,positions:f,path:I,originalError:C,extensions:b}=IUa(r);super(t),this.name="GraphQLError",this.path=I??void 0,this.originalError=C??void 0,this.nodes=r1i(Array.isArray(l)?l:l?[l]:void 0);let E=r1i((n=this.nodes)===null||n===void 0?void 0:n.map(B=>B.loc).filter(B=>B!=null));this.source=A??(E==null||(a=E[0])===null||a===void 0?void 0:a.source),this.positions=f??E?.map(B=>B.start),this.locations=f&&A?f.map(B=>yRr(A,B)):E?.map(B=>yRr(B.source,B.start));let N=AUa(C?.extensions)?C?.extensions:void 0;this.extensions=(o=b??N)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),C!=null&&C.stack?Object.defineProperty(this,"stack",{value:C.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,C1i):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` +`+e}function DUa(e,t,r){let{node:n}=e;if(!n.description)return"";let a=[r("description")];return n.kind==="InputValueDefinition"&&!n.description.block?a.push(tNe):a.push(AT),a}var _ee=DUa;function kUa(e,t,r){let{node:n}=e;switch(n.kind){case"Document":return[...Wk(AT,cj(e,t,r,"definitions")),AT];case"OperationDefinition":{let a=t.originalText[T1i(n)]!=="{",o=!!n.name;return[a?n.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&v1i(n.variableDefinitions)?" ":"",f1i(e,r),jZ(e,r,n),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),f1i(e,r)," on ",r("typeCondition"),jZ(e,r,n)," ",r("selectionSet")];case"SelectionSet":return["{",pV([AT,Wk(AT,cj(e,t,r,"selections"))]),AT,"}"];case"Field":return $M([n.alias?[r("alias"),": "]:"",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",jZ(e,r,n),n.selectionSet?" ":"",r("selectionSet")]);case"Name":return n.value;case"StringValue":if(n.block){let a=ERr(!1,n.value,'"""',String.raw`\"""`).split(` +`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),Wk(AT,['"""',...a,'"""'])}return['"',ERr(!1,ERr(!1,n.value,/["\\]/gu,String.raw`\$&`),` +`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return n.value;case"BooleanValue":return n.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return $M(["[",pV([Qv,Wk([lj("",", "),Qv],e.map(r,"values"))]),Qv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&n.fields.length>0?" ":"";return $M(["{",a,pV([Qv,Wk([lj("",", "),Qv],e.map(r,"fields"))]),Qv,lj("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",jZ(e,r,n)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=n,o=[];return a.endsWith("TypeDefinition")?o.push(_ee(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&n.interfaces.length>0&&o.push(" implements ",...FUa(e,t,r)),o.push(jZ(e,r,n)),n.fields.length>0&&o.push([" {",pV([AT,Wk(AT,cj(e,t,r,"fields"))]),AT,"}"]),o}case"FieldDefinition":return[_ee(e,t,r),r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",": ",r("type"),jZ(e,r,n)];case"DirectiveDefinition":return[_ee(e,t,r),"directive ","@",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",n.repeatable?" repeatable":""," on ",...Wk(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[_ee(e,t,r),n.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),jZ(e,r,n),n.values.length>0?[" {",pV([AT,Wk(AT,cj(e,t,r,"values"))]),AT,"}"]:""];case"EnumValueDefinition":return[_ee(e,t,r),r("name"),jZ(e,r,n)];case"InputValueDefinition":return[_ee(e,t,r),r("name"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",jZ(e,r,n)];case"SchemaExtension":return["extend schema",jZ(e,r,n),...n.operationTypes.length>0?[" {",pV([AT,Wk(AT,cj(e,t,r,"operationTypes"))]),AT,"}"]:[]];case"SchemaDefinition":return[_ee(e,t,r),"schema",jZ(e,r,n)," {",n.operationTypes.length>0?pV([AT,Wk(AT,cj(e,t,r,"operationTypes"))]):"",AT,"}"];case"OperationTypeDefinition":return[n.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),jZ(e,r,n)];case"InlineFragment":return["...",n.typeCondition?[" on ",r("typeCondition")]:"",jZ(e,r,n)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return $M([_ee(e,t,r),$M([n.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),jZ(e,r,n),n.types.length>0?[" =",lj(""," "),pV([lj([tNe,"| "]),Wk([tNe,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[_ee(e,t,r),n.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),jZ(e,r,n)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new yUa(n,"Graphql","kind")}}function jZ(e,t,r){if(r.directives.length===0)return"";let n=Wk(tNe,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?$M([tNe,n]):[" ",$M(pV([Qv,n]))]}function cj(e,t,r,n){return e.map(({isLast:a,node:o})=>{let l=r();return!a&&mUa(t.originalText,R1i(o))?[l,AT]:l},n)}function xUa(e){return e.kind!=="Comment"}function GUa(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function FUa(e,t,r){let{node:n}=e,a=[],{interfaces:o}=n,l=e.map(r,"interfaces");for(let A=0;An.value.trim()==="prettier-ignore")}var LUa={print:kUa,massageAstNode:N1i,hasPrettierIgnore:ZUa,insertPragma:NUa,printComment:GUa,canAttachComment:xUa,getVisitorKeys:TUa},VUa=LUa,D1i=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],PUa={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},WUa={bracketSpacing:PUa.bracketSpacing},k1i=WUa,RRr={};C1i(RRr,{graphql:()=>SKa});function OUa(e){return typeof e=="object"&&e!==null}function MUa(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var HUa=/\r\n|[\n\r]/g;function BRr(e,t){let r=0,n=1;for(let a of e.body.matchAll(HUa)){if(typeof a.index=="number"||MUa(!1),a.index>=t)break;r=a.index+a[0].length,n+=1}return{line:n,column:t+1-r}}function YUa(e){return x1i(e.source,BRr(e.source,e.start))}function x1i(e,t){let r=e.locationOffset.column-1,n="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,l=t.line+o,A=t.line===1?r:0,f=t.column+A,I=`${e.name}:${l}:${f} +`,C=n.split(/\r\n|[\n\r]/g),b=C[a];if(b.length>120){let E=Math.floor(f/80),N=f%80,B=[];for(let F=0;F["|",F]),["|","^".padStart(N)],["|",B[E+1]]])}return I+I1i([[`${l-1} |`,C[a-1]],[`${l} |`,b],["|","^".padStart(f)],[`${l+1} |`,C[a+1]]])}function I1i(e){let t=e.filter(([n,a])=>a!==void 0),r=Math.max(...t.map(([n])=>n.length));return t.map(([n,a])=>n.padStart(r)+(a?" "+a:"")).join(` +`)}function QUa(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var XUa=class G1i extends Error{constructor(t,...r){var n,a,o;let{nodes:l,source:A,positions:f,path:I,originalError:C,extensions:b}=QUa(r);super(t),this.name="GraphQLError",this.path=I??void 0,this.originalError=C??void 0,this.nodes=h1i(Array.isArray(l)?l:l?[l]:void 0);let E=h1i((n=this.nodes)===null||n===void 0?void 0:n.map(B=>B.loc).filter(B=>B!=null));this.source=A??(E==null||(a=E[0])===null||a===void 0?void 0:a.source),this.positions=f??E?.map(B=>B.start),this.locations=f&&A?f.map(B=>BRr(A,B)):E?.map(B=>BRr(B.source,B.start));let N=OUa(C?.extensions)?C?.extensions:void 0;this.extensions=(o=b??N)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),C!=null&&C.stack?Object.defineProperty(this,"stack",{value:C.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,G1i):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` -`+fUa(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` +`+YUa(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` -`+m1i(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function r1i(e){return e===void 0||e.length===0?void 0:e}function iD(e,t,r){return new hUa(`Syntax Error: ${r}`,{source:e,positions:[t]})}var bRr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(bRr||(bRr={}));var Zf;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Zf||(Zf={}));function mUa(e){return e===9||e===32}function V4e(e){return e>=48&&e<=57}function _1i(e){return e>=97&&e<=122||e>=65&&e<=90}function y1i(e){return _1i(e)||e===95}function CUa(e){return _1i(e)||V4e(e)||e===95}function _Ua(e){var t;let r=Number.MAX_SAFE_INTEGER,n=null,a=-1;for(let l=0;lA===0?l:l.slice(r)).slice((t=n)!==null&&t!==void 0?t:0,a+1)}function yUa(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function dbt(e,t){return b1i(e.charCodeAt(t))&&E1i(e.charCodeAt(t+1))}function b1i(e){return e>=55296&&e<=56319}function E1i(e){return e>=56320&&e<=57343}function Bme(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return jc.EOF;if(r>=32&&r<=126){let n=String.fromCodePoint(r);return n==='"'?`'"'`:`"${n}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function dT(e,t,r,n,a){let o=e.line,l=1+r-e.lineStart;return new g1i(t,r,n,o,l,a)}function SUa(e,t){let r=e.source.body,n=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function NUa(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` -`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw iD(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function DUa(e,t){let r=e.source.body,n=r.length,a=e.lineStart,o=t+3,l=o,A="",f=[];for(;o2?"["+LUa(e)+"]":"{ "+r.map(([n,a])=>n+": "+pbt(a,t)).join(", ")+" }"}function ZUa(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),n=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${n} more items`),"["+a.join(", ")+"]"}function LUa(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var VUa=globalThis.process&&!0,PUa=VUa?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let n=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(n===a){let o=S1i(e);throw new Error(`Cannot use ${n} "${o}" from another module or realm. +`+x1i(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function h1i(e){return e===void 0||e.length===0?void 0:e}function iD(e,t,r){return new XUa(`Syntax Error: ${r}`,{source:e,positions:[t]})}var wRr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(wRr||(wRr={}));var Zf;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Zf||(Zf={}));function JUa(e){return e===9||e===32}function W4e(e){return e>=48&&e<=57}function F1i(e){return e>=97&&e<=122||e>=65&&e<=90}function Z1i(e){return F1i(e)||e===95}function UUa(e){return F1i(e)||W4e(e)||e===95}function KUa(e){var t;let r=Number.MAX_SAFE_INTEGER,n=null,a=-1;for(let l=0;lA===0?l:l.slice(r)).slice((t=n)!==null&&t!==void 0?t:0,a+1)}function jUa(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function fbt(e,t){return L1i(e.charCodeAt(t))&&V1i(e.charCodeAt(t+1))}function L1i(e){return e>=55296&&e<=56319}function V1i(e){return e>=56320&&e<=57343}function wme(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return jc.EOF;if(r>=32&&r<=126){let n=String.fromCodePoint(r);return n==='"'?`'"'`:`"${n}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function dT(e,t,r,n,a){let o=e.line,l=1+r-e.lineStart;return new B1i(t,r,n,o,l,a)}function $Ua(e,t){let r=e.source.body,n=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function sKa(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` +`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw iD(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function oKa(e,t){let r=e.source.body,n=r.length,a=e.lineStart,o=t+3,l=o,A="",f=[];for(;o2?"["+AKa(e)+"]":"{ "+r.map(([n,a])=>n+": "+Ibt(a,t)).join(", ")+" }"}function gKa(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),n=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${n} more items`),"["+a.join(", ")+"]"}function AKa(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var dKa=globalThis.process&&!0,pKa=dKa?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let n=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(n===a){let o=P1i(e);throw new Error(`Cannot use ${n} "${o}" from another module or realm. Ensure that there is only one instance of "graphql" in the node_modules directory. If different versions of "graphql" are the dependencies of other @@ -2153,93 +2153,93 @@ https://yarnpkg.com/en/docs/selective-version-resolutions Duplicate "graphql" modules cannot be used at the same time since different versions may have different capabilities and behavior. The data from one version used in the function from another could produce confusing and -spurious results.`)}}return!1},v1i=class{constructor(e,t="GraphQL request",r={line:1,column:1}){typeof e=="string"||_Rr(!1,`Body must be a string. Received: ${S1i(e)}.`),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||_Rr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||_Rr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function WUa(e){return PUa(e,v1i)}function OUa(e,t){let r=new MUa(e,t),n=r.parseDocument();return Object.defineProperty(n,"tokenCount",{enumerable:!1,value:r.tokenCount}),n}var MUa=class{constructor(e,t={}){let r=WUa(e)?e:new v1i(e);this._lexer=new bUa(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(jc.NAME);return this.node(e,{kind:Zf.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Zf.DOCUMENT,definitions:this.many(jc.SOF,this.parseDefinition,jc.EOF)})}parseDefinition(){if(this.peek(jc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===jc.NAME){switch(t.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw iD(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(jc.BRACE_L))return this.node(e,{kind:Zf.OPERATION_DEFINITION,operation:qRe.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(jc.NAME)&&(r=this.parseName()),this.node(e,{kind:Zf.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(jc.NAME);switch(e.value){case"query":return qRe.QUERY;case"mutation":return qRe.MUTATION;case"subscription":return qRe.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(jc.PAREN_L,this.parseVariableDefinition,jc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Zf.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(jc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(jc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(jc.DOLLAR),this.node(e,{kind:Zf.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Zf.SELECTION_SET,selections:this.many(jc.BRACE_L,this.parseSelection,jc.BRACE_R)})}parseSelection(){return this.peek(jc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,n;return this.expectOptionalToken(jc.COLON)?(r=t,n=this.parseName()):n=t,this.node(e,{kind:Zf.FIELD,alias:r,name:n,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(jc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(jc.PAREN_L,t,jc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Zf.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(jc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(jc.NAME)?this.node(e,{kind:Zf.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Zf.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Zf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Zf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case jc.BRACKET_L:return this.parseList(e);case jc.BRACE_L:return this.parseObject(e);case jc.INT:return this.advanceLexer(),this.node(t,{kind:Zf.INT,value:t.value});case jc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Zf.FLOAT,value:t.value});case jc.STRING:case jc.BLOCK_STRING:return this.parseStringLiteral();case jc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Zf.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Zf.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Zf.NULL});default:return this.node(t,{kind:Zf.ENUM,value:t.value})}case jc.DOLLAR:if(e)if(this.expectToken(jc.DOLLAR),this._lexer.token.kind===jc.NAME){let r=this._lexer.token.value;throw iD(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Zf.STRING,value:e.value,block:e.kind===jc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Zf.LIST,values:this.any(jc.BRACKET_L,t,jc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Zf.OBJECT,fields:this.any(jc.BRACE_L,t,jc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Zf.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(jc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(jc.AT),this.node(t,{kind:Zf.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(jc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(jc.BRACKET_R),t=this.node(e,{kind:Zf.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(jc.BANG)?this.node(e,{kind:Zf.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Zf.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(jc.STRING)||this.peek(jc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),n=this.many(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);return this.node(e,{kind:Zf.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(jc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Zf.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),n=this.parseConstDirectives();return this.node(e,{kind:Zf.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Zf.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(jc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseFieldDefinition,jc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(jc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Zf.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(jc.PAREN_L,this.parseInputValueDef,jc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(jc.COLON);let n=this.parseTypeReference(),a;this.expectOptionalToken(jc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Zf.INPUT_VALUE_DEFINITION,description:t,name:r,type:n,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Zf.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Zf.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(jc.EQUALS)?this.delimitedMany(jc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Zf.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a})}parseEnumValuesDefinition(){return this.optionalMany(jc.BRACE_L,this.parseEnumValueDefinition,jc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),n=this.parseConstDirectives();return this.node(e,{kind:Zf.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw iD(this._lexer.source,this._lexer.token.start,`${gbt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Zf.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseInputValueDef,jc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===jc.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Zf.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Zf.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Zf.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Zf.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseUnionMemberTypes();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.UNION_TYPE_EXTENSION,name:t,directives:r,types:n})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseEnumValuesDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseInputFieldsDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(jc.AT);let r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Zf.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(jc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(bRr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new zJa(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw iD(this._lexer.source,t.start,`Expected ${B1i(e)}, found ${gbt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===jc.NAME&&t.value===e)this.advanceLexer();else throw iD(this._lexer.source,t.start,`Expected "${e}", found ${gbt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===jc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return iD(this._lexer.source,t.start,`Unexpected ${gbt(t)}.`)}any(e,t,r){this.expectToken(e);let n=[];for(;!this.expectOptionalToken(r);)n.push(t.call(this));return n}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}return[]}many(e,t,r){this.expectToken(e);let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==jc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw iD(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function gbt(e){let t=e.value;return B1i(e.kind)+(t!=null?` "${t}"`:"")}function B1i(e){return EUa(e)?`"${e}"`:e}function HUa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var YUa=HUa;function QUa(e){let t=[],{startToken:r,endToken:n}=e.loc;for(let a=r;a!==n;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var XUa={allowLegacyFragmentVariables:!0};function JUa(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return YUa(t,{loc:{start:r},cause:e})}return e}function UUa(e){let t;try{t=OUa(e,XUa)}catch(r){throw JUa(r)}return t.comments=QUa(t),t}var KUa={parse:UUa,astFormat:"graphql",hasPragma:eUa,locStart:d1i,locEnd:p1i},w1i={graphql:lUa},jUa=s1i;var q4e={};sI(q4e,{default:()=>F6a,languages:()=>C2i,options:()=>_2i,parsers:()=>HRr,printers:()=>B2i});var zUa=Object.create,xRr=Object.defineProperty,qUa=Object.getOwnPropertyDescriptor,$Ua=Object.getOwnPropertyNames,eKa=Object.getPrototypeOf,tKa=Object.prototype.hasOwnProperty,X1i=e=>{throw TypeError(e)},ql=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),J1i=(e,t)=>{for(var r in t)xRr(e,r,{get:t[r],enumerable:!0})},rKa=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $Ua(t))!tKa.call(e,a)&&a!==r&&xRr(e,a,{get:()=>t[a],enumerable:!(n=qUa(t,a))||n.enumerable});return e},sNe=(e,t,r)=>(r=e!=null?zUa(eKa(e)):{},rKa(t||!e||!e.__esModule?xRr(r,"default",{value:e,enumerable:!0}):r,e)),U1i=(e,t,r)=>t.has(e)||X1i("Cannot "+r),gce=(e,t,r)=>(U1i(e,t,"read from private field"),r?r.call(e):t.get(e)),nKa=(e,t,r)=>t.has(e)?X1i("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),iKa=(e,t,r,n)=>(U1i(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),GRr=ql((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\s+/g," ")}}),sKa=ql((e,t)=>{"use strict";t.exports=B;var r=9,n=10,a=32,o=33,l=58,A=91,f=92,I=93,C=94,b=96,E=4,N=1024;function B(fe){var ue=this.Parser,de=this.Compiler;F(ue)&&X(ue,fe),Q(de)&&ae(de)}function F(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function Q(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function X(fe,ue){for(var de=ue||{},be=fe.prototype,Se=be.blockTokenizers,De=be.inlineTokenizers,k=be.blockMethods,et=be.inlineMethods,ct=Se.definition,Me=De.reference,je=[],St=-1,At=k.length,Yt;++StE&&(cl=void 0,Sc=jt);else{if(cl0&&(Wr=Hr[ke-1],Wr.contentStart===Wr.contentEnd);)ke--;for(io=Xt(lr.slice(0,Wr.contentEnd));++jt0||vRr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||vRr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function fKa(e){return pKa(e,W1i)}function IKa(e,t){let r=new hKa(e,t),n=r.parseDocument();return Object.defineProperty(n,"tokenCount",{enumerable:!1,value:r.tokenCount}),n}var hKa=class{constructor(e,t={}){let r=fKa(e)?e:new W1i(e);this._lexer=new zUa(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(jc.NAME);return this.node(e,{kind:Zf.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Zf.DOCUMENT,definitions:this.many(jc.SOF,this.parseDefinition,jc.EOF)})}parseDefinition(){if(this.peek(jc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===jc.NAME){switch(t.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw iD(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(jc.BRACE_L))return this.node(e,{kind:Zf.OPERATION_DEFINITION,operation:eNe.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(jc.NAME)&&(r=this.parseName()),this.node(e,{kind:Zf.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(jc.NAME);switch(e.value){case"query":return eNe.QUERY;case"mutation":return eNe.MUTATION;case"subscription":return eNe.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(jc.PAREN_L,this.parseVariableDefinition,jc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Zf.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(jc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(jc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(jc.DOLLAR),this.node(e,{kind:Zf.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Zf.SELECTION_SET,selections:this.many(jc.BRACE_L,this.parseSelection,jc.BRACE_R)})}parseSelection(){return this.peek(jc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,n;return this.expectOptionalToken(jc.COLON)?(r=t,n=this.parseName()):n=t,this.node(e,{kind:Zf.FIELD,alias:r,name:n,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(jc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(jc.PAREN_L,t,jc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Zf.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(jc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(jc.NAME)?this.node(e,{kind:Zf.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Zf.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Zf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Zf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case jc.BRACKET_L:return this.parseList(e);case jc.BRACE_L:return this.parseObject(e);case jc.INT:return this.advanceLexer(),this.node(t,{kind:Zf.INT,value:t.value});case jc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Zf.FLOAT,value:t.value});case jc.STRING:case jc.BLOCK_STRING:return this.parseStringLiteral();case jc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Zf.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Zf.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Zf.NULL});default:return this.node(t,{kind:Zf.ENUM,value:t.value})}case jc.DOLLAR:if(e)if(this.expectToken(jc.DOLLAR),this._lexer.token.kind===jc.NAME){let r=this._lexer.token.value;throw iD(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Zf.STRING,value:e.value,block:e.kind===jc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Zf.LIST,values:this.any(jc.BRACKET_L,t,jc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Zf.OBJECT,fields:this.any(jc.BRACE_L,t,jc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Zf.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(jc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(jc.AT),this.node(t,{kind:Zf.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(jc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(jc.BRACKET_R),t=this.node(e,{kind:Zf.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(jc.BANG)?this.node(e,{kind:Zf.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Zf.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(jc.STRING)||this.peek(jc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),n=this.many(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);return this.node(e,{kind:Zf.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(jc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Zf.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),n=this.parseConstDirectives();return this.node(e,{kind:Zf.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Zf.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(jc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseFieldDefinition,jc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(jc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Zf.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(jc.PAREN_L,this.parseInputValueDef,jc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(jc.COLON);let n=this.parseTypeReference(),a;this.expectOptionalToken(jc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Zf.INPUT_VALUE_DEFINITION,description:t,name:r,type:n,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Zf.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Zf.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(jc.EQUALS)?this.delimitedMany(jc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Zf.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a})}parseEnumValuesDefinition(){return this.optionalMany(jc.BRACE_L,this.parseEnumValueDefinition,jc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),n=this.parseConstDirectives();return this.node(e,{kind:Zf.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw iD(this._lexer.source,this._lexer.token.start,`${dbt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Zf.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseInputValueDef,jc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===jc.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Zf.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Zf.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Zf.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Zf.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseUnionMemberTypes();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.UNION_TYPE_EXTENSION,name:t,directives:r,types:n})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseEnumValuesDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseInputFieldsDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(jc.AT);let r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Zf.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(jc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(wRr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new BUa(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw iD(this._lexer.source,t.start,`Expected ${O1i(e)}, found ${dbt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===jc.NAME&&t.value===e)this.advanceLexer();else throw iD(this._lexer.source,t.start,`Expected "${e}", found ${dbt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===jc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return iD(this._lexer.source,t.start,`Unexpected ${dbt(t)}.`)}any(e,t,r){this.expectToken(e);let n=[];for(;!this.expectOptionalToken(r);)n.push(t.call(this));return n}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}return[]}many(e,t,r){this.expectToken(e);let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==jc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw iD(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function dbt(e){let t=e.value;return O1i(e.kind)+(t!=null?` "${t}"`:"")}function O1i(e){return qUa(e)?`"${e}"`:e}function mKa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var CKa=mKa;function _Ka(e){let t=[],{startToken:r,endToken:n}=e.loc;for(let a=r;a!==n;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var yKa={allowLegacyFragmentVariables:!0};function bKa(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return CKa(t,{loc:{start:r},cause:e})}return e}function EKa(e){let t;try{t=IKa(e,yKa)}catch(r){throw bKa(r)}return t.comments=_Ka(t),t}var SKa={parse:EKa,astFormat:"graphql",hasPragma:RUa,locStart:T1i,locEnd:R1i},M1i={graphql:VUa},vKa=_1i;var eJe={};sI(eJe,{default:()=>u7a,languages:()=>G2i,options:()=>F2i,parsers:()=>URr,printers:()=>O2i});var BKa=Object.create,VRr=Object.defineProperty,wKa=Object.getOwnPropertyDescriptor,TKa=Object.getOwnPropertyNames,RKa=Object.getPrototypeOf,NKa=Object.prototype.hasOwnProperty,a2i=e=>{throw TypeError(e)},ql=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),c2i=(e,t)=>{for(var r in t)VRr(e,r,{get:t[r],enumerable:!0})},DKa=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of TKa(t))!NKa.call(e,a)&&a!==r&&VRr(e,a,{get:()=>t[a],enumerable:!(n=wKa(t,a))||n.enumerable});return e},aNe=(e,t,r)=>(r=e!=null?BKa(RKa(e)):{},DKa(t||!e||!e.__esModule?VRr(r,"default",{value:e,enumerable:!0}):r,e)),l2i=(e,t,r)=>t.has(e)||a2i("Cannot "+r),Ace=(e,t,r)=>(l2i(e,t,"read from private field"),r?r.call(e):t.get(e)),kKa=(e,t,r)=>t.has(e)?a2i("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),xKa=(e,t,r,n)=>(l2i(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),PRr=ql((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\s+/g," ")}}),GKa=ql((e,t)=>{"use strict";t.exports=B;var r=9,n=10,a=32,o=33,l=58,A=91,f=92,I=93,C=94,b=96,E=4,N=1024;function B(fe){var ue=this.Parser,de=this.Compiler;F(ue)&&X(ue,fe),Q(de)&&ae(de)}function F(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function Q(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function X(fe,ue){for(var de=ue||{},be=fe.prototype,Se=be.blockTokenizers,De=be.inlineTokenizers,k=be.blockMethods,et=be.inlineMethods,ct=Se.definition,Me=De.reference,je=[],St=-1,At=k.length,Yt;++StE&&(cl=void 0,Sc=jt);else{if(cl0&&(Wr=Hr[ke-1],Wr.contentStart===Wr.contentEnd);)ke--;for(io=Xt(lr.slice(0,Wr.contentEnd));++jt{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(n){return!!(n&&n.prototype&&n.prototype.blockTokenizers)}function r(n){return!!(n&&n.prototype&&n.prototype.visitors)}}),oKa=ql((e,t)=>{var r=K1i();t.exports=b;var n=9,a=32,o=36,l=48,A=57,f=92,I=["math","math-inline"],C="math-display";function b(B){let F=this.Parser,Q=this.Compiler;r.isRemarkParser(F)&&E(F,B),r.isRemarkCompiler(Q)&&N(Q,B)}function E(B,F){let Q=B.prototype,X=Q.inlineMethods;ne.locator=ae,Q.inlineTokenizers.math=ne,X.splice(X.indexOf("text"),0,"math");function ae(ce,fe){return ce.indexOf("$",fe)}function ne(ce,fe,ue){let de=fe.length,be=!1,Se=!1,De=0,k,et,ct,Me,je,St,At;if(fe.charCodeAt(De)===f&&(Se=!0,De++),fe.charCodeAt(De)===o){if(De++,Se)return ue?!0:ce(fe.slice(0,De))({type:"text",value:"$"});if(fe.charCodeAt(De)===o&&(be=!0,De++),ct=fe.charCodeAt(De),!(ct===a||ct===n)){for(Me=De;DeA)&&(!be||ct===o)){je=De-1,De++,be&&De++,St=De;break}}else et===f&&(De++,ct=fe.charCodeAt(De+1));De++}if(St!==void 0)return ue?!0:(At=fe.slice(Me,je+1),ce(fe.slice(0,St))({type:"inlineMath",value:At,data:{hName:"span",hProperties:{className:I.concat(be&&F.inlineMathDouble?[C]:[])},hChildren:[{type:"text",value:At}]}}))}}}}function N(B){let F=B.prototype;F.visitors.inlineMath=Q;function Q(X){let ae="$";return(X.data&&X.data.hProperties&&X.data.hProperties.className||[]).includes(C)&&(ae="$$"),ae+X.value+ae}}}),aKa=ql((e,t)=>{var r=K1i();t.exports=C;var n=10,a=32,o=36,l=` +`)}}function ne(fe,ue,de){fe.splice(fe.indexOf(ue),0,de)}function ce(fe,ue,de,be){for(var Se=fe.length,De=-1;++De{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(n){return!!(n&&n.prototype&&n.prototype.blockTokenizers)}function r(n){return!!(n&&n.prototype&&n.prototype.visitors)}}),FKa=ql((e,t)=>{var r=u2i();t.exports=b;var n=9,a=32,o=36,l=48,A=57,f=92,I=["math","math-inline"],C="math-display";function b(B){let F=this.Parser,Q=this.Compiler;r.isRemarkParser(F)&&E(F,B),r.isRemarkCompiler(Q)&&N(Q,B)}function E(B,F){let Q=B.prototype,X=Q.inlineMethods;ne.locator=ae,Q.inlineTokenizers.math=ne,X.splice(X.indexOf("text"),0,"math");function ae(ce,fe){return ce.indexOf("$",fe)}function ne(ce,fe,ue){let de=fe.length,be=!1,Se=!1,De=0,k,et,ct,Me,je,St,At;if(fe.charCodeAt(De)===f&&(Se=!0,De++),fe.charCodeAt(De)===o){if(De++,Se)return ue?!0:ce(fe.slice(0,De))({type:"text",value:"$"});if(fe.charCodeAt(De)===o&&(be=!0,De++),ct=fe.charCodeAt(De),!(ct===a||ct===n)){for(Me=De;DeA)&&(!be||ct===o)){je=De-1,De++,be&&De++,St=De;break}}else et===f&&(De++,ct=fe.charCodeAt(De+1));De++}if(St!==void 0)return ue?!0:(At=fe.slice(Me,je+1),ce(fe.slice(0,St))({type:"inlineMath",value:At,data:{hName:"span",hProperties:{className:I.concat(be&&F.inlineMathDouble?[C]:[])},hChildren:[{type:"text",value:At}]}}))}}}}function N(B){let F=B.prototype;F.visitors.inlineMath=Q;function Q(X){let ae="$";return(X.data&&X.data.hProperties&&X.data.hProperties.className||[]).includes(C)&&(ae="$$"),ae+X.value+ae}}}),ZKa=ql((e,t)=>{var r=u2i();t.exports=C;var n=10,a=32,o=36,l=` `,A="$",f=2,I=["math","math-display"];function C(){let N=this.Parser,B=this.Compiler;r.isRemarkParser(N)&&b(N),r.isRemarkCompiler(B)&&E(B)}function b(N){let B=N.prototype,F=B.blockMethods,Q=B.interruptParagraph,X=B.interruptList,ae=B.interruptBlockquote;B.blockTokenizers.math=ne,F.splice(F.indexOf("fencedCode")+1,0,"math"),Q.splice(Q.indexOf("fencedCode")+1,0,["math"]),X.splice(X.indexOf("fencedCode")+1,0,["math"]),ae.splice(ae.indexOf("fencedCode")+1,0,["math"]);function ne(ce,fe,ue){var de=fe.length,be=0;let Se,De,k,et,ct,Me,je,St,At,Yt,Tr;for(;beYt&&fe.charCodeAt(et-1)===a;)et--;for(;et>Yt&&fe.charCodeAt(et-1)===o;)At++,et--;for(Me<=At&&fe.indexOf(A,Yt)===et&&(St=!0,Tr=et);Yt<=Tr&&Yt-beYt&&fe.charCodeAt(Tr-1)===a;)Tr--;if((!St||Yt!==Tr)&&De.push(fe.slice(Yt,Tr)),St)break;be=k+1,k=fe.indexOf(l,be+1),k=k===-1?de:k}return De=De.join(` `),ce(fe.slice(0,k))({type:"math",value:De,data:{hName:"div",hProperties:{className:I.concat()},hChildren:[{type:"text",value:De}]}})}}}}function E(N){let B=N.prototype;B.visitors.math=F;function F(Q){return`$$ `+Q.value+` -$$`}}}),cKa=ql((e,t)=>{var r=oKa(),n=aKa();t.exports=a;function a(o){var l=o||{};n.call(this,l),r.call(this,l)}}),oNe=ql((e,t)=>{t.exports=n;var r=Object.prototype.hasOwnProperty;function n(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,n){n&&(r.super_=n,r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,n){if(n){r.super_=n;var a=function(){};a.prototype=n.prototype,r.prototype=new a,r.prototype.constructor=r}}}),uKa=ql((e,t)=>{"use strict";var r=oNe(),n=lKa();t.exports=a;function a(o){var l,A,f;n(C,o),n(I,C),l=C.prototype;for(A in l)f=l[A],f&&typeof f=="object"&&(l[A]="concat"in f?f.concat():r(f));return C;function I(b){return o.apply(this,b)}function C(){return this instanceof C?o.apply(this,arguments):new I(arguments)}}}),gKa=ql((e,t)=>{"use strict";t.exports=r;function r(n,a,o){return l;function l(){var A=o||this,f=A[n];return A[n]=!a,I;function I(){A[n]=f}}}}),AKa=ql((e,t)=>{"use strict";t.exports=r;function r(n){for(var a=String(n),o=[],l=/\r?\n|\r/g;l.exec(a);)o.push(l.lastIndex);return o.push(a.length+1),{toPoint:A,toPosition:A,toOffset:f};function A(I){var C=-1;if(I>-1&&II)return{line:C+1,column:I-(o[C-1]||0)+1,offset:I}}return{}}function f(I){var C=I&&I.line,b=I&&I.column,E;return!isNaN(C)&&!isNaN(b)&&C-1 in o&&(E=(o[C-2]||0)+b-1||0),E>-1&&E{"use strict";t.exports=n;var r="\\";function n(a,o){return l;function l(A){for(var f=0,I=A.indexOf(r),C=a[o],b=[],E;I!==-1;)b.push(A.slice(f,I)),f=I+1,E=A.charAt(f),(!E||C.indexOf(E)===-1)&&b.push(r),I=A.indexOf(r,f+1);return b.push(A.slice(f)),b.join("")}}}),pKa=ql((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}),fKa=ql((e,t)=>{t.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}),aNe=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=48&&a<=57}}),IKa=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),X4e=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=122||a>=65&&a<=90}}),hKa=ql((e,t)=>{"use strict";var r=X4e(),n=aNe();t.exports=a;function a(o){return r(o)||n(o)}}),mKa=ql((e,t)=>{t.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` -`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}),CKa=ql((e,t)=>{"use strict";var r=mKa();t.exports=a;var n={}.hasOwnProperty;function a(o){return n.call(r,o)?r[o]:!1}}),vbt=ql((e,t)=>{"use strict";var r=pKa(),n=fKa(),a=aNe(),o=IKa(),l=hKa(),A=CKa();t.exports=er;var f={}.hasOwnProperty,I=String.fromCharCode,C=Function.prototype,b={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},E=9,N=10,B=12,F=32,Q=38,X=59,ae=60,ne=61,ce=35,fe=88,ue=120,de=65533,be="named",Se="hexadecimal",De="decimal",k={};k[Se]=16,k[De]=10;var et={};et[be]=l,et[De]=a,et[Se]=o;var ct=1,Me=2,je=3,St=4,At=5,Yt=6,Tr=7,Nr={};Nr[ct]="Named character references must be terminated by a semicolon",Nr[Me]="Numeric character references must be terminated by a semicolon",Nr[je]="Named character references cannot be empty",Nr[St]="Numeric character references cannot be empty",Nr[At]="Named character references must be known",Nr[Yt]="Numeric character references cannot be disallowed",Nr[Tr]="Numeric character references cannot be outside the permissible Unicode range";function er(qt,Xt){var lr={},cr,Ar;Xt||(Xt={});for(Ar in b)cr=Xt[Ar],lr[Ar]=cr??b[Ar];return(lr.position.indent||lr.position.start)&&(lr.indent=lr.position.indent||[],lr.position=lr.position.start),vt(qt,lr)}function vt(qt,Xt){var lr=Xt.additional,cr=Xt.nonTerminated,Ar=Xt.text,qr=Xt.reference,_n=Xt.warning,ke=Xt.textContext,jt=Xt.referenceContext,Fn=Xt.warningContext,Nn=Xt.position,Hi=Xt.indent||[],po=qt.length,Vr=0,xi=-1,io=Nn.column||1,ga=Nn.line||1,Ya="",Gc=[],cl,Sc,Hr,Wr,Ft,zr,Rn,Or,Qi,ps,yo,bo,Qa,gc,Cg,Nc,iA,ma,vu;for(typeof lr=="string"&&(lr=lr.charCodeAt(0)),Nc=li(),Or=_n?Ei:C,Vr--,po++;++Vr65535&&(zr-=65536,ps+=I(zr>>>10|55296),zr=56320|zr&1023),zr=ps+I(zr))):gc!==be&&Or(St,ma)),zr?(Ps(),Nc=li(),Vr=vu-1,io+=vu-Qa+1,Gc.push(zr),iA=li(),iA.offset++,qr&&qr.call(jt,zr,{start:Nc,end:iA},qt.slice(Qa-1,vu)),Nc=iA):(Wr=qt.slice(Qa-1,vu),Ya+=Wr,io+=Wr.length,Vr=vu-1)}else Ft===10&&(ga++,xi++,io=0),Ft===Ft?(Ya+=I(Ft),io++):Ps();return Gc.join("");function li(){return{line:ga,column:io,offset:Vr+(Nn.offset||0)}}function Ei(Xa,ac){var Yl=li();Yl.column+=ac,Yl.offset+=ac,_n.call(Fn,Nr[Xa],Yl,Xa)}function Ps(){Ya&&(Gc.push(Ya),Ar&&Ar.call(ke,Ya,{start:Nc,end:li()}),Ya="")}}function xt(qt){return qt>=55296&&qt<=57343||qt>1114111}function Zr(qt){return qt>=1&&qt<=8||qt===11||qt>=13&&qt<=31||qt>=127&&qt<=159||qt>=64976&&qt<=65007||(qt&65535)===65535||(qt&65535)===65534}}),_Ka=ql((e,t)=>{"use strict";var r=oNe(),n=vbt();t.exports=a;function a(o){return A.raw=f,A;function l(C){for(var b=o.offset,E=C.line,N=[];++E&&E in b;)N.push((b[E]||0)+1);return{start:C,indent:N}}function A(C,b,E){n(C,{position:l(b),warning:I,text:E,reference:E,textContext:o,referenceContext:o})}function f(C,b,E){return n(C,r(E,{position:l(b),warning:I}))}function I(C,b,E){E!==3&&o.file.message(C,b)}}}),yKa=ql((e,t)=>{"use strict";t.exports=r;function r(l){return A;function A(f,I){var C=this,b=C.offset,E=[],N=C[l+"Methods"],B=C[l+"Tokenizers"],F=I.line,Q=I.column,X,ae,ne,ce,fe,ue;if(!f)return E;for(Me.now=Se,Me.file=C.file,de("");f;){for(X=-1,ae=N.length,fe=!1;++X{var r=FKa(),n=ZKa();t.exports=a;function a(o){var l=o||{};n.call(this,l),r.call(this,l)}}),cNe=ql((e,t)=>{t.exports=n;var r=Object.prototype.hasOwnProperty;function n(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,n){n&&(r.super_=n,r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,n){if(n){r.super_=n;var a=function(){};a.prototype=n.prototype,r.prototype=new a,r.prototype.constructor=r}}}),PKa=ql((e,t)=>{"use strict";var r=cNe(),n=VKa();t.exports=a;function a(o){var l,A,f;n(C,o),n(I,C),l=C.prototype;for(A in l)f=l[A],f&&typeof f=="object"&&(l[A]="concat"in f?f.concat():r(f));return C;function I(b){return o.apply(this,b)}function C(){return this instanceof C?o.apply(this,arguments):new I(arguments)}}}),WKa=ql((e,t)=>{"use strict";t.exports=r;function r(n,a,o){return l;function l(){var A=o||this,f=A[n];return A[n]=!a,I;function I(){A[n]=f}}}}),OKa=ql((e,t)=>{"use strict";t.exports=r;function r(n){for(var a=String(n),o=[],l=/\r?\n|\r/g;l.exec(a);)o.push(l.lastIndex);return o.push(a.length+1),{toPoint:A,toPosition:A,toOffset:f};function A(I){var C=-1;if(I>-1&&II)return{line:C+1,column:I-(o[C-1]||0)+1,offset:I}}return{}}function f(I){var C=I&&I.line,b=I&&I.column,E;return!isNaN(C)&&!isNaN(b)&&C-1 in o&&(E=(o[C-2]||0)+b-1||0),E>-1&&E{"use strict";t.exports=n;var r="\\";function n(a,o){return l;function l(A){for(var f=0,I=A.indexOf(r),C=a[o],b=[],E;I!==-1;)b.push(A.slice(f,I)),f=I+1,E=A.charAt(f),(!E||C.indexOf(E)===-1)&&b.push(r),I=A.indexOf(r,f+1);return b.push(A.slice(f)),b.join("")}}}),HKa=ql((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}),YKa=ql((e,t)=>{t.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}),lNe=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=48&&a<=57}}),QKa=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),U4e=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=122||a>=65&&a<=90}}),XKa=ql((e,t)=>{"use strict";var r=U4e(),n=lNe();t.exports=a;function a(o){return r(o)||n(o)}}),JKa=ql((e,t)=>{t.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}),UKa=ql((e,t)=>{"use strict";var r=JKa();t.exports=a;var n={}.hasOwnProperty;function a(o){return n.call(r,o)?r[o]:!1}}),wbt=ql((e,t)=>{"use strict";var r=HKa(),n=YKa(),a=lNe(),o=QKa(),l=XKa(),A=UKa();t.exports=er;var f={}.hasOwnProperty,I=String.fromCharCode,C=Function.prototype,b={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},E=9,N=10,B=12,F=32,Q=38,X=59,ae=60,ne=61,ce=35,fe=88,ue=120,de=65533,be="named",Se="hexadecimal",De="decimal",k={};k[Se]=16,k[De]=10;var et={};et[be]=l,et[De]=a,et[Se]=o;var ct=1,Me=2,je=3,St=4,At=5,Yt=6,Tr=7,Nr={};Nr[ct]="Named character references must be terminated by a semicolon",Nr[Me]="Numeric character references must be terminated by a semicolon",Nr[je]="Named character references cannot be empty",Nr[St]="Numeric character references cannot be empty",Nr[At]="Named character references must be known",Nr[Yt]="Numeric character references cannot be disallowed",Nr[Tr]="Numeric character references cannot be outside the permissible Unicode range";function er(qt,Xt){var lr={},cr,Ar;Xt||(Xt={});for(Ar in b)cr=Xt[Ar],lr[Ar]=cr??b[Ar];return(lr.position.indent||lr.position.start)&&(lr.indent=lr.position.indent||[],lr.position=lr.position.start),vt(qt,lr)}function vt(qt,Xt){var lr=Xt.additional,cr=Xt.nonTerminated,Ar=Xt.text,qr=Xt.reference,_n=Xt.warning,ke=Xt.textContext,jt=Xt.referenceContext,Fn=Xt.warningContext,Nn=Xt.position,Hi=Xt.indent||[],po=qt.length,Vr=0,xi=-1,io=Nn.column||1,ga=Nn.line||1,Ya="",Gc=[],cl,Sc,Hr,Wr,Ft,zr,Rn,Or,Qi,ps,yo,bo,Qa,gc,Cg,Nc,iA,ma,vu;for(typeof lr=="string"&&(lr=lr.charCodeAt(0)),Nc=li(),Or=_n?Ei:C,Vr--,po++;++Vr65535&&(zr-=65536,ps+=I(zr>>>10|55296),zr=56320|zr&1023),zr=ps+I(zr))):gc!==be&&Or(St,ma)),zr?(Ps(),Nc=li(),Vr=vu-1,io+=vu-Qa+1,Gc.push(zr),iA=li(),iA.offset++,qr&&qr.call(jt,zr,{start:Nc,end:iA},qt.slice(Qa-1,vu)),Nc=iA):(Wr=qt.slice(Qa-1,vu),Ya+=Wr,io+=Wr.length,Vr=vu-1)}else Ft===10&&(ga++,xi++,io=0),Ft===Ft?(Ya+=I(Ft),io++):Ps();return Gc.join("");function li(){return{line:ga,column:io,offset:Vr+(Nn.offset||0)}}function Ei(Xa,ac){var Yl=li();Yl.column+=ac,Yl.offset+=ac,_n.call(Fn,Nr[Xa],Yl,Xa)}function Ps(){Ya&&(Gc.push(Ya),Ar&&Ar.call(ke,Ya,{start:Nc,end:li()}),Ya="")}}function xt(qt){return qt>=55296&&qt<=57343||qt>1114111}function Zr(qt){return qt>=1&&qt<=8||qt===11||qt>=13&&qt<=31||qt>=127&&qt<=159||qt>=64976&&qt<=65007||(qt&65535)===65535||(qt&65535)===65534}}),KKa=ql((e,t)=>{"use strict";var r=cNe(),n=wbt();t.exports=a;function a(o){return A.raw=f,A;function l(C){for(var b=o.offset,E=C.line,N=[];++E&&E in b;)N.push((b[E]||0)+1);return{start:C,indent:N}}function A(C,b,E){n(C,{position:l(b),warning:I,text:E,reference:E,textContext:o,referenceContext:o})}function f(C,b,E){return n(C,r(E,{position:l(b),warning:I}))}function I(C,b,E){E!==3&&o.file.message(C,b)}}}),jKa=ql((e,t)=>{"use strict";t.exports=r;function r(l){return A;function A(f,I){var C=this,b=C.offset,E=[],N=C[l+"Methods"],B=C[l+"Tokenizers"],F=I.line,Q=I.column,X,ae,ne,ce,fe,ue;if(!f)return E;for(Me.now=Se,Me.file=C.file,de("");f;){for(X=-1,ae=N.length,fe=!1;++X{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],n=r.concat(["~","|"]),a=n.concat([` -`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=n,o.commonmark=a;function o(l){var A=l||{};return A.commonmark?a:A.gfm?n:r}}),EKa=ql((e,t)=>{"use strict";t.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}),j1i=ql((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:EKa()}}),SKa=ql((e,t)=>{"use strict";var r=oNe(),n=bKa(),a=j1i();t.exports=o;function o(l){var A=this,f=A.options,I,C;if(l==null)l={};else if(typeof l=="object")l=r(l);else throw new Error("Invalid value `"+l+"` for setting `options`");for(I in a){if(C=l[I],C==null&&(C=f[I]),I!=="blocks"&&typeof C!="boolean"||I==="blocks"&&typeof C!="object")throw new Error("Invalid value `"+C+"` for setting `options."+I+"`");l[I]=C}return A.options=l,A.escape=n(l),A}}),vKa=ql((e,t)=>{"use strict";t.exports=r;function r(A){if(A==null)return l;if(typeof A=="string")return o(A);if(typeof A=="object")return"length"in A?a(A):n(A);if(typeof A=="function")return A;throw new Error("Expected function, string, or object as test")}function n(A){return f;function f(I){var C;for(C in A)if(I[C]!==A[C])return!1;return!0}}function a(A){for(var f=[],I=-1;++I{t.exports=r;function r(n){return n}}),wKa=ql((e,t)=>{"use strict";t.exports=A;var r=vKa(),n=BKa(),a=!0,o="skip",l=!1;A.CONTINUE=a,A.SKIP=o,A.EXIT=l;function A(I,C,b,E){var N,B;typeof C=="function"&&typeof b!="function"&&(E=b,b=C,C=null),B=r(C),N=E?-1:1,F(I,null,[])();function F(Q,X,ae){var ne=typeof Q=="object"&&Q!==null?Q:{},ce;return typeof ne.type=="string"&&(ce=typeof ne.tagName=="string"?ne.tagName:typeof ne.name=="string"?ne.name:void 0,fe.displayName="node ("+n(ne.type+(ce?"<"+ce+">":""))+")"),fe;function fe(){var ue=ae.concat(Q),de=[],be,Se;if((!C||B(Q,X,ae[ae.length-1]||null))&&(de=f(b(Q,ae)),de[0]===l))return de;if(Q.children&&de[0]!==o)for(Se=(E?Q.children.length:-1)+N;Se>-1&&Se{"use strict";t.exports=l;var r=wKa(),n=r.CONTINUE,a=r.SKIP,o=r.EXIT;l.CONTINUE=n,l.SKIP=a,l.EXIT=o;function l(A,f,I,C){typeof f=="function"&&typeof I!="function"&&(C=I,I=f,f=null),r(A,f,b,C);function b(E,N){var B=N[N.length-1],F=B?B.children.indexOf(E):null;return I(E,F,B)}}}),RKa=ql((e,t)=>{"use strict";var r=TKa();t.exports=n;function n(l,A){return r(l,A?a:o),l}function a(l){delete l.position}function o(l){l.position=void 0}}),NKa=ql((e,t)=>{"use strict";var r=oNe(),n=RKa();t.exports=l;var a=` -`,o=/\r\n|\r/g;function l(){var A=this,f=String(A.file),I={line:1,column:1,offset:0},C=r(I),b;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),C.column++,C.offset++),b={type:"root",children:A.tokenizeBlock(f,C),position:{start:I,end:A.eof||r(I)}},A.options.position||n(b,!0),b}}),DKa=ql((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=n;function n(a,o,l){for(var A,f="",I=0,C=o.length;I{"use strict";var r="",n;t.exports=a;function a(o,l){if(typeof o!="string")throw new TypeError("expected a string");if(l===1)return o;if(l===2)return o+o;var A=o.length*l;if(n!==o||typeof n>"u")n=o,r="";else if(r.length>=A)return r.substr(0,A);for(;A>r.length&&l>1;)l&1&&(r+=o),l>>=1,o+=o;return r+=o,r=r.substr(0,A),r}}),z1i=ql((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\n+$/,"")}}),kKa=ql((e,t)=>{"use strict";var r=FRr(),n=z1i();t.exports=I;var a=` -`,o=" ",l=" ",A=4,f=r(l,A);function I(C,b,E){for(var N=-1,B=b.length,F="",Q="",X="",ae="",ne,ce,fe;++N{"use strict";t.exports=I;var r=` -`,n=" ",a=" ",o="~",l="`",A=3,f=4;function I(C,b,E){var N=this,B=N.options.gfm,F=b.length+1,Q=0,X="",ae,ne,ce,fe,ue,de,be,Se,De,k,et,ct,Me;if(B){for(;Q=f)){for(be="";Q{e=t.exports=r;function r(n){return n.trim?n.trim():e.right(e.left(n))}e.left=function(n){return n.trimLeft?n.trimLeft():n.replace(/^\s\s*/,"")},e.right=function(n){if(n.trimRight)return n.trimRight();for(var a=/\s/,o=n.length;a.test(n.charAt(--o)););return n.slice(0,o+1)}}),ZRr=ql((e,t)=>{"use strict";t.exports=r;function r(n,a,o,l){for(var A=n.length,f=-1,I,C;++f{"use strict";var r=cNe(),n=ZRr();t.exports=f;var a=` -`,o=" ",l=" ",A=">";function f(I,C,b){for(var E=this,N=E.offset,B=E.blockTokenizers,F=E.interruptBlockquote,Q=I.now(),X=Q.line,ae=C.length,ne=[],ce=[],fe=[],ue,de=0,be,Se,De,k,et,ct,Me,je;de{"use strict";t.exports=A;var r=` -`,n=" ",a=" ",o="#",l=6;function A(f,I,C){for(var b=this,E=b.options.pedantic,N=I.length+1,B=-1,F=f.now(),Q="",X="",ae,ne,ce;++Bl)&&!(!ce||!E&&I.charAt(B+1)===o)){for(N=I.length+1,ne="";++B{"use strict";t.exports=I;var r=" ",n=` -`,a=" ",o="*",l="-",A="_",f=3;function I(C,b,E){for(var N=-1,B=b.length+1,F="",Q,X,ae,ne;++N=f&&(!Q||Q===n)?(F+=ne,E?!0:C(F)({type:"thematicBreak"})):void 0}}),q1i=ql((e,t)=>{"use strict";t.exports=l;var r=" ",n=" ",a=1,o=4;function l(A){for(var f=0,I=0,C=A.charAt(f),b={},E,N=0;C===r||C===n;){for(E=C===r?o:a,I+=E,E>1&&(I=Math.floor(I/E)*E);N{"use strict";var r=cNe(),n=FRr(),a=q1i();t.exports=f;var o=` -`,l=" ",A="!";function f(I,C){var b=I.split(o),E=b.length+1,N=1/0,B=[],F,Q,X;for(b.unshift(n(l,C)+A);E--;)if(Q=a(b[E]),B[E]=Q.stops,r(b[E]).length!==0)if(Q.indent)Q.indent>0&&Q.indent{"use strict";var r=cNe(),n=FRr(),a=aNe(),o=q1i(),l=LKa(),A=ZRr();t.exports=be;var f="*",I="_",C="+",b="-",E=".",N=" ",B=` -`,F=" ",Q=")",X="x",ae=4,ne=/\n\n(?!\s*$)/,ce=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,ue=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,de=/^( {1,4}|\t)?/gm;function be(et,ct,Me){for(var je=this,St=je.options.commonmark,At=je.options.pedantic,Yt=je.blockTokenizers,Tr=je.interruptList,Nr=0,er=ct.length,vt=null,xt,Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt,Fn,Nn,Hi,po,Vr,xi,io,ga,Ya=!1,Gc,cl,Sc,Hr;Nr=xi.indent&&(Hr=!0),Xt=ct.charAt(Nr),_n=null,!Hr){if(Xt===f||Xt===C||Xt===b)_n=Xt,Nr++,xt++;else{for(Zr="";Nr=xi.indent||xt>ae),qr=!1,Nr=Ar;if(jt=ct.slice(Ar,cr),ke=Ar===Nr?jt:ct.slice(Nr,cr),(_n===f||_n===I||_n===b)&&Yt.thematicBreak.call(je,et,jt,!0))break;if(Fn=Nn,Nn=!qr&&!r(ke).length,Hr&&xi)xi.value=xi.value.concat(Vr,jt),po=po.concat(Vr,jt),Vr=[];else if(qr)Vr.length!==0&&(Ya=!0,xi.value.push(""),xi.trail=Vr.concat()),xi={value:[jt],indent:xt,trail:[]},Hi.push(xi),po=po.concat(Vr,jt),Vr=[];else if(Nn){if(Fn&&!St)break;Vr.push(jt)}else{if(Fn||A(Tr,Yt,je,[et,jt,!0]))break;xi.value=xi.value.concat(Vr,jt),po=po.concat(Vr,jt),Vr=[]}Nr=cr+1}for(Gc=et(po.join(B)).reset({type:"list",ordered:qt,start:vt,spread:Ya,children:[]}),io=je.enterList(),ga=je.enterBlock(),Nr=-1,er=Hi.length;++Nr{"use strict";t.exports=C;var r=` -`,n=" ",a=" ",o="=",l="-",A=3,f=1,I=2;function C(b,E,N){for(var B=this,F=b.now(),Q=E.length,X=-1,ae="",ne,ce,fe,ue,de;++X=A){X--;break}ae+=fe}for(ne="",ce="";++X{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",n="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+n+"|"+a+")",l="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",A="<[A-Za-z][A-Za-z0-9\\-]*"+l+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",I="|",C="<[?].*?[?]>",b="]*>",E="";e.openCloseTag=new RegExp("^(?:"+A+"|"+f+")"),e.tag=new RegExp("^(?:"+A+"|"+f+"|"+I+"|"+C+"|"+b+"|"+E+")")}),WKa=ql((e,t)=>{"use strict";var r=$1i().openCloseTag;t.exports=ne;var n=" ",a=" ",o=` -`,l="<",A=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,I=/^/,b=/^<\?/,E=/\?>/,N=/^/,F=/^/,X=/^$/,ae=new RegExp(r.source+"\\s*$");function ne(ce,fe,ue){for(var de=this,be=de.options.blocks.join("|"),Se=new RegExp("^|$))","i"),De=fe.length,k=0,et,ct,Me,je,St,At,Yt,Tr=[[A,f,!0],[I,C,!0],[b,E,!0],[N,B,!0],[F,Q,!0],[Se,X,!0],[ae,X,!1]];k{"use strict";t.exports=a;var r=String.fromCharCode,n=/\s/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),e2i=ql((e,t)=>{"use strict";var r=GRr();t.exports=n;function n(a){return r(a).toLowerCase()}}),OKa=ql((e,t)=>{"use strict";var r=yee(),n=e2i();t.exports=X;var a='"',o="'",l="\\",A=` -`,f=" ",I=" ",C="[",b="]",E="(",N=")",B=":",F="<",Q=">";function X(ce,fe,ue){for(var de=this,be=de.options.commonmark,Se=0,De=fe.length,k="",et,ct,Me,je,St,At,Yt,Tr;Se{"use strict";var r=yee();t.exports=F;var n=" ",a=` -`,o=" ",l="-",A=":",f="\\",I="|",C=1,b=2,E="left",N="center",B="right";function F(Q,X,ae){var ne=this,ce,fe,ue,de,be,Se,De,k,et,ct,Me,je,St,At,Yt,Tr,Nr,er,vt,xt,Zr,qt;if(ne.options.gfm){for(ce=0,Tr=0,Se=X.length+1,De=[];cext){if(Tr1&&(et?(de+=k.slice(0,-1),k=k.charAt(k.length-1)):(de+=k,k="")),At=Q.now(),Q(de)({type:"tableCell",children:ne.tokenizeInline(je,At)},be)),Q(k+et),k="",je=""):(k&&(je+=k,k=""),je+=et,et===f&&ce!==Se-2&&(je+=Nr.charAt(ce+1),ce++)),St=!1,ce++}Yt||Q(a+fe)}return vt}}}}),HKa=ql((e,t)=>{"use strict";var r=cNe(),n=z1i(),a=ZRr();t.exports=I;var o=" ",l=` -`,A=" ",f=4;function I(C,b,E){for(var N=this,B=N.options,F=B.commonmark,Q=N.blockTokenizers,X=N.interruptParagraph,ae=b.indexOf(l),ne=b.length,ce,fe,ue,de,be;ae=f&&ue!==l){ae=b.indexOf(l,ae+1);continue}}if(fe=b.slice(ae+1),a(X,Q,N,[C,fe,!0]))break;if(ce=ae,ae=b.indexOf(l,ae+1),ae!==-1&&r(b.slice(ce,ae))===""){ae=ce;break}}return fe=b.slice(0,ae),E?!0:(be=C.now(),fe=n(fe),C(fe)({type:"paragraph",children:N.tokenizeInline(fe,be)}))}}),YKa=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("\\",a)}}),QKa=ql((e,t)=>{"use strict";var r=YKa();t.exports=o,o.locator=r;var n=` -`,a="\\";function o(l,A,f){var I=this,C,b;if(A.charAt(0)===a&&(C=A.charAt(1),I.escape.indexOf(C)!==-1))return f?!0:(C===n?b={type:"break"}:b={type:"text",value:C},l(a+C)(b))}}),t2i=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("<",a)}}),XKa=ql((e,t)=>{"use strict";var r=yee(),n=vbt(),a=t2i();t.exports=b,b.locator=a,b.notInLink=!0;var o="<",l=">",A="@",f="/",I="mailto:",C=I.length;function b(E,N,B){var F=this,Q="",X=N.length,ae=0,ne="",ce=!1,fe="",ue,de,be,Se,De;if(N.charAt(0)===o){for(ae++,Q=o;ae{"use strict";t.exports=r;function r(n,a){var o=String(n),l=0,A;if(typeof a!="string")throw new Error("Expected character");for(A=o.indexOf(a);A!==-1;)l++,A=o.indexOf(a,A+a.length);return l}}),UKa=ql((e,t)=>{"use strict";t.exports=n;var r=["www.","http://","https://"];function n(a,o){var l=-1,A,f,I;if(!this.options.gfm)return l;for(f=r.length,A=-1;++A{"use strict";var r=JKa(),n=vbt(),a=aNe(),o=X4e(),l=yee(),A=UKa();t.exports=de,de.locator=A,de.notInLink=!0;var f=33,I=38,C=41,b=42,E=44,N=45,B=46,F=58,Q=59,X=63,ae=60,ne=95,ce=126,fe="(",ue=")";function de(be,Se,De){var k=this,et=k.options.gfm,ct=k.inlineTokenizers,Me=Se.length,je=-1,St=!1,At,Yt,Tr,Nr,er,vt,xt,Zr,qt,Xt,lr,cr,Ar,qr;if(et){if(Se.slice(0,4)==="www.")St=!0,Nr=4;else if(Se.slice(0,7).toLowerCase()==="http://")Nr=7;else if(Se.slice(0,8).toLowerCase()==="https://")Nr=8;else return;for(je=Nr-1,Tr=Nr,At=[];Nrqt;)Nr=er+vt.lastIndexOf(ue),vt=Se.slice(er,Nr),Xt--;if(Se.charCodeAt(Nr-1)===Q&&(Nr--,o(Se.charCodeAt(Nr-1)))){for(Zr=Nr-2;o(Se.charCodeAt(Zr));)Zr--;Se.charCodeAt(Zr)===I&&(Nr=Zr)}return lr=Se.slice(0,Nr),Ar=n(lr,{nonTerminated:!1}),St&&(Ar="http://"+Ar),qr=k.enterLink(),k.inlineTokenizers={text:ct.text},cr=k.tokenizeInline(lr,be.now()),k.inlineTokenizers=ct,qr(),be(lr)({type:"link",title:null,url:Ar,children:cr})}}}}),jKa=ql((e,t)=>{"use strict";var r=aNe(),n=X4e(),a=43,o=45,l=46,A=95;t.exports=f;function f(C,b){var E=this,N,B;if(!this.options.gfm||(N=C.indexOf("@",b),N===-1))return-1;if(B=N,B===b||!I(C.charCodeAt(B-1)))return f.call(E,C,N+1);for(;B>b&&I(C.charCodeAt(B-1));)B--;return B}function I(C){return r(C)||n(C)||C===a||C===o||C===l||C===A}}),zKa=ql((e,t)=>{"use strict";var r=vbt(),n=aNe(),a=X4e(),o=jKa();t.exports=b,b.locator=o,b.notInLink=!0;var l=43,A=45,f=46,I=64,C=95;function b(E,N,B){var F=this,Q=F.options.gfm,X=F.inlineTokenizers,ae=0,ne=N.length,ce=-1,fe,ue,de,be;if(Q){for(fe=N.charCodeAt(ae);n(fe)||a(fe)||fe===l||fe===A||fe===f||fe===C;)fe=N.charCodeAt(++ae);if(ae!==0&&fe===I){for(ae++;ae{"use strict";var r=X4e(),n=t2i(),a=$1i().tag;t.exports=b,b.locator=n;var o="<",l="?",A="!",f="/",I=/^/i;function b(E,N,B){var F=this,Q=N.length,X,ae;if(!(N.charAt(0)!==o||Q<3)&&(X=N.charAt(1),!(!r(X)&&X!==l&&X!==A&&X!==f)&&(ae=N.match(a),!!ae)))return B?!0:(ae=ae[0],!F.inLink&&I.test(ae)?F.inLink=!0:F.inLink&&C.test(ae)&&(F.inLink=!1),E(ae)({type:"html",value:ae}))}}),r2i=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("[",a),l=n.indexOf("![",a);return l===-1||o{"use strict";var r=yee(),n=r2i();t.exports=Q,Q.locator=n;var a=` -`,o="!",l='"',A="'",f="(",I=")",C="<",b=">",E="[",N="\\",B="]",F="`";function Q(X,ae,ne){var ce=this,fe="",ue=0,de=ae.charAt(0),be=ce.options.pedantic,Se=ce.options.commonmark,De=ce.options.gfm,k,et,ct,Me,je,St,At,Yt,Tr,Nr,er,vt,xt,Zr,qt,Xt,lr,cr;if(de===o&&(Yt=!0,fe=de,de=ae.charAt(++ue)),de===E&&!(!Yt&&ce.inLink)){for(fe+=de,Zr="",ue++,er=ae.length,Xt=X.now(),xt=0,Xt.column+=ue,Xt.offset+=ue;ue=ct&&(ct=0):ct=et}else if(de===N)ue++,St+=ae.charAt(ue);else if((!ct||De)&&de===E)xt++;else if((!ct||De)&&de===B)if(xt)xt--;else{if(ae.charAt(ue+1)!==f)return;St+=f,k=!0,ue++;break}Zr+=St,St="",ue++}if(k){for(Tr=Zr,fe+=Zr+St,ue++;ue{"use strict";var r=yee(),n=r2i(),a=e2i();t.exports=B,B.locator=n;var o="link",l="image",A="shortcut",f="collapsed",I="full",C="!",b="[",E="\\",N="]";function B(F,Q,X){var ae=this,ne=ae.options.commonmark,ce=Q.charAt(0),fe=0,ue=Q.length,de="",be="",Se=o,De=A,k,et,ct,Me,je,St,At,Yt;if(ce===C&&(Se=l,be=ce,ce=Q.charAt(++fe)),ce===b){for(fe++,be+=ce,St="",Yt=0;fe{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("**",a),l=n.indexOf("__",a);return l===-1?o:o===-1||l{"use strict";var r=cNe(),n=yee(),a=t8a();t.exports=f,f.locator=a;var o="\\",l="*",A="_";function f(I,C,b){var E=this,N=0,B=C.charAt(N),F,Q,X,ae,ne,ce,fe;if(!(B!==l&&B!==A||C.charAt(++N)!==B)&&(Q=E.options.pedantic,X=B,ne=X+X,ce=C.length,N++,ae="",B="",!(Q&&n(C.charAt(N)))))for(;N{"use strict";t.exports=a;var r=String.fromCharCode,n=/\w/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),i8a=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("*",a),l=n.indexOf("_",a);return l===-1?o:o===-1||l{"use strict";var r=cNe(),n=n8a(),a=yee(),o=i8a();t.exports=I,I.locator=o;var l="*",A="_",f="\\";function I(C,b,E){var N=this,B=0,F=b.charAt(B),Q,X,ae,ne,ce,fe,ue;if(!(F!==l&&F!==A)&&(X=N.options.pedantic,ce=F,ae=F,fe=b.length,B++,ne="",F="",!(X&&a(b.charAt(B)))))for(;B{"use strict";t.exports=r;function r(n,a){return n.indexOf("~~",a)}}),a8a=ql((e,t)=>{"use strict";var r=yee(),n=o8a();t.exports=l,l.locator=n;var a="~",o="~~";function l(A,f,I){var C=this,b="",E="",N="",B="",F,Q,X;if(!(!C.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(F=1,Q=f.length,X=A.now(),X.column+=2,X.offset+=2;++F{"use strict";t.exports=r;function r(n,a){return n.indexOf("`",a)}}),l8a=ql((e,t)=>{"use strict";var r=c8a();t.exports=l,l.locator=r;var n=10,a=32,o=96;function l(A,f,I){for(var C=f.length,b=0,E,N,B,F,Q,X;b2&&(F===a||F===n)&&(Q===a||Q===n)){for(b++,C--;b{"use strict";t.exports=r;function r(n,a){for(var o=n.indexOf(` -`,a);o>a&&n.charAt(o-1)===" ";)o--;return o}}),g8a=ql((e,t)=>{"use strict";var r=u8a();t.exports=l,l.locator=r;var n=" ",a=` -`,o=2;function l(A,f,I){for(var C=f.length,b=-1,E="",N;++b{"use strict";t.exports=r;function r(n,a,o){var l=this,A,f,I,C,b,E,N,B,F,Q;if(o)return!0;for(A=l.inlineMethods,C=A.length,f=l.inlineTokenizers,I=-1,F=a.length;++I{"use strict";var r=oNe(),n=gKa(),a=AKa(),o=dKa(),l=_Ka(),A=yKa();t.exports=f;function f(b,E){this.file=E,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(E).toOffset,this.unescape=o(this,"escape"),this.decode=l(this)}var I=f.prototype;I.setOptions=SKa(),I.parse=NKa(),I.options=j1i(),I.exitStart=n("atStart",!0),I.enterList=n("inList",!1),I.enterLink=n("inLink",!1),I.enterBlock=n("inBlock",!1),I.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],I.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],I.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],I.blockTokenizers={blankLine:DKa(),indentedCode:kKa(),fencedCode:xKa(),blockquote:GKa(),atxHeading:FKa(),thematicBreak:ZKa(),list:VKa(),setextHeading:PKa(),html:WKa(),definition:OKa(),table:MKa(),paragraph:HKa()},I.inlineTokenizers={escape:QKa(),autoLink:XKa(),url:KKa(),email:zKa(),html:qKa(),link:$Ka(),reference:e8a(),strong:r8a(),emphasis:s8a(),deletion:a8a(),code:l8a(),break:g8a(),text:A8a()},I.blockMethods=C(I.blockTokenizers),I.inlineMethods=C(I.inlineTokenizers),I.tokenizeBlock=A("block"),I.tokenizeInline=A("inline"),I.tokenizeFactory=A;function C(b){var E=[],N;for(N in b)E.push(N);return E}}),p8a=ql((e,t)=>{"use strict";var r=uKa(),n=oNe(),a=d8a();t.exports=o,o.Parser=a;function o(l){var A=this.data("settings"),f=r(a);f.prototype.options=n(f.prototype.options,A,l),this.Parser=f}}),f8a=ql((e,t)=>{"use strict";t.exports=r;function r(n){if(n)throw n}}),n2i=ql((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),I8a=ql((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,n=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,l=function(C){return typeof Array.isArray=="function"?Array.isArray(C):n.call(C)==="[object Array]"},A=function(C){if(!C||n.call(C)!=="[object Object]")return!1;var b=r.call(C,"constructor"),E=C.constructor&&C.constructor.prototype&&r.call(C.constructor.prototype,"isPrototypeOf");if(C.constructor&&!b&&!E)return!1;var N;for(N in C);return typeof N>"u"||r.call(C,N)},f=function(C,b){a&&b.name==="__proto__"?a(C,b.name,{enumerable:!0,configurable:!0,value:b.newValue,writable:!0}):C[b.name]=b.newValue},I=function(C,b){if(b==="__proto__")if(r.call(C,b)){if(o)return o(C,b).value}else return;return C[b]};t.exports=function C(){var b,E,N,B,F,Q,X=arguments[0],ae=1,ne=arguments.length,ce=!1;for(typeof X=="boolean"&&(ce=X,X=arguments[1]||{},ae=2),(X==null||typeof X!="object"&&typeof X!="function")&&(X={});ae{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let n=Object.getPrototypeOf(r);return n===null||n===Object.prototype}}),m8a=ql((e,t)=>{"use strict";var r=[].slice;t.exports=n;function n(a,o){var l;return A;function A(){var C=r.call(arguments,0),b=a.length>C.length,E;b&&C.push(f);try{E=a.apply(null,C)}catch(N){if(b&&l)throw N;return f(N)}b||(E&&typeof E.then=="function"?E.then(I,f):E instanceof Error?f(E):I(E))}function f(){l||(l=!0,o.apply(null,arguments))}function I(C){f(null,C)}}}),C8a=ql((e,t)=>{"use strict";var r=m8a();t.exports=a,a.wrap=r;var n=[].slice;function a(){var o=[],l={};return l.run=A,l.use=f,l;function A(){var I=-1,C=n.call(arguments,0,-1),b=arguments[arguments.length-1];if(typeof b!="function")throw new Error("Expected function as last argument, not "+b);E.apply(null,[null].concat(C));function E(N){var B=o[++I],F=n.call(arguments,0),Q=F.slice(1),X=C.length,ae=-1;if(N){b(N);return}for(;++ae{"use strict";var r={}.hasOwnProperty;t.exports=n;function n(A){return!A||typeof A!="object"?"":r.call(A,"position")||r.call(A,"type")?o(A.position):r.call(A,"start")||r.call(A,"end")?o(A):r.call(A,"line")||r.call(A,"column")?a(A):""}function a(A){return(!A||typeof A!="object")&&(A={}),l(A.line)+":"+l(A.column)}function o(A){return(!A||typeof A!="object")&&(A={}),a(A.start)+"-"+a(A.end)}function l(A){return A&&typeof A=="number"?A:1}}),y8a=ql((e,t)=>{"use strict";var r=_8a();t.exports=o;function n(){}n.prototype=Error.prototype,o.prototype=new n;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(A,f,I){var C,b,E;typeof f=="string"&&(I=f,f=null),C=l(I),b=r(f)||"1:1",E={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(E=f,f=f.start):E.start=f),A.stack&&(this.stack=A.stack,A=A.message),this.message=A,this.name=b,this.reason=A,this.line=f?f.line:null,this.column=f?f.column:null,this.location=E,this.source=C[0],this.ruleId=C[1]}function l(A){var f=[null,null],I;return typeof A=="string"&&(I=A.indexOf(":"),I===-1?f[1]=A:(f[0]=A.slice(0,I),f[1]=A.slice(I+1))),f}}),b8a=ql(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=n,e.join=a,e.sep="/";function t(f,I){var C=0,b=-1,E,N,B,F;if(I!==void 0&&typeof I!="string")throw new TypeError('"ext" argument must be a string');if(A(f),E=f.length,I===void 0||!I.length||I.length>f.length){for(;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else b<0&&(B=!0,b=E+1);return b<0?"":f.slice(C,b)}if(I===f)return"";for(N=-1,F=I.length-1;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else N<0&&(B=!0,N=E+1),F>-1&&(f.charCodeAt(E)===I.charCodeAt(F--)?F<0&&(b=E):(F=-1,b=N));return C===b?b=N:b<0&&(b=f.length),f.slice(C,b)}function r(f){var I,C,b;if(A(f),!f.length)return".";for(I=-1,b=f.length;--b;)if(f.charCodeAt(b)===47){if(C){I=b;break}}else C||(C=!0);return I<0?f.charCodeAt(0)===47?"/":".":I===1&&f.charCodeAt(0)===47?"//":f.slice(0,I)}function n(f){var I=-1,C=0,b=-1,E=0,N,B,F;for(A(f),F=f.length;F--;){if(B=f.charCodeAt(F),B===47){if(N){C=F+1;break}continue}b<0&&(N=!0,b=F+1),B===46?I<0?I=F:E!==1&&(E=1):I>-1&&(E=-1)}return I<0||b<0||E===0||E===1&&I===b-1&&I===C+1?"":f.slice(I,b)}function a(){for(var f=-1,I;++f2){if(Q=C.lastIndexOf("/"),Q!==C.length-1){Q<0?(C="",b=0):(C=C.slice(0,Q),b=C.length-1-C.lastIndexOf("/")),E=B,N=0;continue}}else if(C.length){C="",b=0,E=B,N=0;continue}}I&&(C=C.length?C+"/..":"..",b=2)}else C.length?C+="/"+f.slice(E+1,B):C=f.slice(E+1,B),b=B-E-1;E=B,N=0}else F===46&&N>-1?N++:N=-1}return C}function A(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),E8a=ql(e=>{"use strict";e.cwd=t;function t(){return"/"}}),S8a=ql((e,t)=>{"use strict";var r=b8a(),n=E8a(),a=n2i();t.exports=A;var o={}.hasOwnProperty,l=["history","path","basename","stem","extname","dirname"];A.prototype.toString=ae,Object.defineProperty(A.prototype,"path",{get:f,set:I}),Object.defineProperty(A.prototype,"dirname",{get:C,set:b}),Object.defineProperty(A.prototype,"basename",{get:E,set:N}),Object.defineProperty(A.prototype,"extname",{get:B,set:F}),Object.defineProperty(A.prototype,"stem",{get:Q,set:X});function A(ue){var de,be;if(!ue)ue={};else if(typeof ue=="string"||a(ue))ue={contents:ue};else if("message"in ue&&"messages"in ue)return ue;if(!(this instanceof A))return new A(ue);for(this.data={},this.messages=[],this.history=[],this.cwd=n.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(ue||""))}function Q(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function X(ue){ce(ue,"stem"),ne(ue,"stem"),this.path=r.join(this.dirname||"",ue+(this.extname||""))}function ae(ue){return(this.contents||"").toString(ue)}function ne(ue,de){if(ue&&ue.indexOf(r.sep)>-1)throw new Error("`"+de+"` cannot be a path: did not expect `"+r.sep+"`")}function ce(ue,de){if(!ue)throw new Error("`"+de+"` cannot be empty")}function fe(ue,de){if(!ue)throw new Error("Setting `"+de+"` requires `path` to be set too")}}),v8a=ql((e,t)=>{"use strict";var r=y8a(),n=S8a();t.exports=n,n.prototype.message=a,n.prototype.info=l,n.prototype.fail=o;function a(A,f,I){var C=new r(A,f,I);return this.path&&(C.name=this.path+":"+C.name,C.file=this.path),C.fatal=!1,this.messages.push(C),C}function o(){var A=this.message.apply(this,arguments);throw A.fatal=!0,A}function l(){var A=this.message.apply(this,arguments);return A.fatal=null,A}}),B8a=ql((e,t)=>{"use strict";t.exports=v8a()}),w8a=ql((e,t)=>{"use strict";var r=f8a(),n=n2i(),a=I8a(),o=h8a(),l=C8a(),A=B8a();t.exports=B().freeze();var f=[].slice,I={}.hasOwnProperty,C=l().use(b).use(E).use(N);function b(ue,de){de.tree=ue.parse(de.file)}function E(ue,de,be){ue.run(de.tree,de.file,Se);function Se(De,k,et){De?be(De):(de.tree=k,de.file=et,be())}}function N(ue,de){var be=ue.stringify(de.tree,de.file);be==null||(typeof be=="string"||n(be)?("value"in de.file&&(de.file.value=be),de.file.contents=be):de.file.result=be)}function B(){var ue=[],de=l(),be={},Se=-1,De;return k.data=ct,k.freeze=et,k.attachers=ue,k.use=Me,k.parse=St,k.stringify=Tr,k.run=At,k.runSync=Yt,k.process=Nr,k.processSync=er,k;function k(){for(var vt=B(),xt=-1;++xtC2i,options:()=>_2i,parsers:()=>HRr,printers:()=>B2i});var T8a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},DG=T8a,R8a=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},n4=R8a,N8a=sNe(GRr(),1);function Bbt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var Tme="string",dce="array",wbt="cursor",lNe="indent",uNe="align",J4e="trim",pce="group",Rme="fill",Ace="if-break",U4e="indent-if-break",K4e="line-suffix",j4e="line-suffix-boundary",bee="line",z4e="label",gNe="break-parent",s2i=new Set([wbt,lNe,uNe,J4e,pce,Rme,Ace,U4e,K4e,j4e,bee,z4e,gNe]);function D8a(e){if(typeof e=="string")return Tme;if(Array.isArray(e))return dce;if(!e)return;let{type:t}=e;if(s2i.has(t))return t}var fce=D8a,k8a=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function x8a(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(fce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=k8a([...s2i].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var G8a=class extends Error{name="InvalidDocError";constructor(e){super(x8a(e)),this.doc=e}},Cbt=G8a,T1i={};function F8a(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===T1i){r(a.pop());continue}r&&a.push(o,T1i);let l=fce(o);if(!l)throw new Cbt(o);if(t?.(o)!==!1)switch(l){case dce:case Rme:{let A=l===dce?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case Ace:a.push(o.flatContents,o.breakContents);break;case pce:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case uNe:case lNe:case U4e:case z4e:case K4e:a.push(o.contents);break;case Tme:case wbt:case J4e:case j4e:case bee:case gNe:break;default:throw new Cbt(o)}}}var Z8a=F8a;function L8a(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(fce(o)){case dce:return t(o.map(n));case Rme:return t({...o,parts:o.parts.map(n)});case Ace:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case pce:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case uNe:case lNe:case U4e:case z4e:case K4e:return t({...o,contents:n(o.contents)});case Tme:case wbt:case J4e:case j4e:case bee:case gNe:return t(o);default:throw new Cbt(o)}}}function R1i(e){if(e.length>0){let t=n4(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function V8a(e){let t=new Set,r=[];function n(o){if(o.type===gNe&&R1i(r),o.type===pce){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===pce&&r.pop().break&&R1i(r)}Z8a(e,n,a,!0)}function tNe(e,t=TRr){return L8a(e,r=>typeof r=="string"?l2i(t,r.split(` -`)):r)}var LRr=()=>{},nNe=LRr,o2i=LRr,P8a=LRr;function wRr(e){return nNe(e),{type:lNe,contents:e}}function wme(e,t){return nNe(t),{type:uNe,contents:t,n:e}}function hbt(e,t={}){return nNe(e),o2i(t.expandedStates,!0),{type:pce,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function _bt(e){return wme({type:"root"},e)}function VRr(e){return P8a(e),{type:Rme,parts:e}}function W8a(e,t="",r={}){return nNe(e),t!==""&&nNe(t),{type:Ace,breakContents:e,flatContents:t,groupId:r.groupId}}var ybt={type:gNe},PRr={type:bee,hard:!0},O8a={type:bee,hard:!0,literal:!0},a2i={type:bee},c2i={type:bee,soft:!0},DR=[PRr,ybt],TRr=[O8a,ybt];function l2i(e,t){nNe(e),o2i(t);let r=[];for(let n=0;nMath.max(n,a.length/t.length),0)}var u2i=M8a;function H8a(e,t){let r=e.match(new RegExp(`(${Bbt(t)})+`,"gu"));if(r===null)return 0;let n=new Map,a=0;for(let o of r){let l=o.length/t.length;n.set(l,!0),l>a&&(a=l)}for(let o=1;oo?n:r}var X8a=Q8a,J8a=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},U8a=J8a,K8a=sNe(GRr(),1);function j8a(e){return e?.type==="front-matter"}var z8a=j8a,W4e=3;function q8a(e){let t=e.slice(0,W4e);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` -`,W4e);if(r===-1)return;let n=e.slice(W4e,r).trim(),a=e.indexOf(` +`,At+1);St===-1?Q+=je.length:Q=je.length-St,F in b&&(St!==-1?Q+=b[F]:Q<=b[F]&&(Q=b[F]+1))}function be(){var je=[],St=F+1;return function(){for(var At=F+1;St{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],n=r.concat(["~","|"]),a=n.concat([` +`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=n,o.commonmark=a;function o(l){var A=l||{};return A.commonmark?a:A.gfm?n:r}}),qKa=ql((e,t)=>{"use strict";t.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}),g2i=ql((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:qKa()}}),$Ka=ql((e,t)=>{"use strict";var r=cNe(),n=zKa(),a=g2i();t.exports=o;function o(l){var A=this,f=A.options,I,C;if(l==null)l={};else if(typeof l=="object")l=r(l);else throw new Error("Invalid value `"+l+"` for setting `options`");for(I in a){if(C=l[I],C==null&&(C=f[I]),I!=="blocks"&&typeof C!="boolean"||I==="blocks"&&typeof C!="object")throw new Error("Invalid value `"+C+"` for setting `options."+I+"`");l[I]=C}return A.options=l,A.escape=n(l),A}}),e8a=ql((e,t)=>{"use strict";t.exports=r;function r(A){if(A==null)return l;if(typeof A=="string")return o(A);if(typeof A=="object")return"length"in A?a(A):n(A);if(typeof A=="function")return A;throw new Error("Expected function, string, or object as test")}function n(A){return f;function f(I){var C;for(C in A)if(I[C]!==A[C])return!1;return!0}}function a(A){for(var f=[],I=-1;++I{t.exports=r;function r(n){return n}}),r8a=ql((e,t)=>{"use strict";t.exports=A;var r=e8a(),n=t8a(),a=!0,o="skip",l=!1;A.CONTINUE=a,A.SKIP=o,A.EXIT=l;function A(I,C,b,E){var N,B;typeof C=="function"&&typeof b!="function"&&(E=b,b=C,C=null),B=r(C),N=E?-1:1,F(I,null,[])();function F(Q,X,ae){var ne=typeof Q=="object"&&Q!==null?Q:{},ce;return typeof ne.type=="string"&&(ce=typeof ne.tagName=="string"?ne.tagName:typeof ne.name=="string"?ne.name:void 0,fe.displayName="node ("+n(ne.type+(ce?"<"+ce+">":""))+")"),fe;function fe(){var ue=ae.concat(Q),de=[],be,Se;if((!C||B(Q,X,ae[ae.length-1]||null))&&(de=f(b(Q,ae)),de[0]===l))return de;if(Q.children&&de[0]!==o)for(Se=(E?Q.children.length:-1)+N;Se>-1&&Se{"use strict";t.exports=l;var r=r8a(),n=r.CONTINUE,a=r.SKIP,o=r.EXIT;l.CONTINUE=n,l.SKIP=a,l.EXIT=o;function l(A,f,I,C){typeof f=="function"&&typeof I!="function"&&(C=I,I=f,f=null),r(A,f,b,C);function b(E,N){var B=N[N.length-1],F=B?B.children.indexOf(E):null;return I(E,F,B)}}}),i8a=ql((e,t)=>{"use strict";var r=n8a();t.exports=n;function n(l,A){return r(l,A?a:o),l}function a(l){delete l.position}function o(l){l.position=void 0}}),s8a=ql((e,t)=>{"use strict";var r=cNe(),n=i8a();t.exports=l;var a=` +`,o=/\r\n|\r/g;function l(){var A=this,f=String(A.file),I={line:1,column:1,offset:0},C=r(I),b;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),C.column++,C.offset++),b={type:"root",children:A.tokenizeBlock(f,C),position:{start:I,end:A.eof||r(I)}},A.options.position||n(b,!0),b}}),o8a=ql((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=n;function n(a,o,l){for(var A,f="",I=0,C=o.length;I{"use strict";var r="",n;t.exports=a;function a(o,l){if(typeof o!="string")throw new TypeError("expected a string");if(l===1)return o;if(l===2)return o+o;var A=o.length*l;if(n!==o||typeof n>"u")n=o,r="";else if(r.length>=A)return r.substr(0,A);for(;A>r.length&&l>1;)l&1&&(r+=o),l>>=1,o+=o;return r+=o,r=r.substr(0,A),r}}),A2i=ql((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\n+$/,"")}}),a8a=ql((e,t)=>{"use strict";var r=WRr(),n=A2i();t.exports=I;var a=` +`,o=" ",l=" ",A=4,f=r(l,A);function I(C,b,E){for(var N=-1,B=b.length,F="",Q="",X="",ae="",ne,ce,fe;++N{"use strict";t.exports=I;var r=` +`,n=" ",a=" ",o="~",l="`",A=3,f=4;function I(C,b,E){var N=this,B=N.options.gfm,F=b.length+1,Q=0,X="",ae,ne,ce,fe,ue,de,be,Se,De,k,et,ct,Me;if(B){for(;Q=f)){for(be="";Q{e=t.exports=r;function r(n){return n.trim?n.trim():e.right(e.left(n))}e.left=function(n){return n.trimLeft?n.trimLeft():n.replace(/^\s\s*/,"")},e.right=function(n){if(n.trimRight)return n.trimRight();for(var a=/\s/,o=n.length;a.test(n.charAt(--o)););return n.slice(0,o+1)}}),ORr=ql((e,t)=>{"use strict";t.exports=r;function r(n,a,o,l){for(var A=n.length,f=-1,I,C;++f{"use strict";var r=uNe(),n=ORr();t.exports=f;var a=` +`,o=" ",l=" ",A=">";function f(I,C,b){for(var E=this,N=E.offset,B=E.blockTokenizers,F=E.interruptBlockquote,Q=I.now(),X=Q.line,ae=C.length,ne=[],ce=[],fe=[],ue,de=0,be,Se,De,k,et,ct,Me,je;de{"use strict";t.exports=A;var r=` +`,n=" ",a=" ",o="#",l=6;function A(f,I,C){for(var b=this,E=b.options.pedantic,N=I.length+1,B=-1,F=f.now(),Q="",X="",ae,ne,ce;++Bl)&&!(!ce||!E&&I.charAt(B+1)===o)){for(N=I.length+1,ne="";++B{"use strict";t.exports=I;var r=" ",n=` +`,a=" ",o="*",l="-",A="_",f=3;function I(C,b,E){for(var N=-1,B=b.length+1,F="",Q,X,ae,ne;++N=f&&(!Q||Q===n)?(F+=ne,E?!0:C(F)({type:"thematicBreak"})):void 0}}),d2i=ql((e,t)=>{"use strict";t.exports=l;var r=" ",n=" ",a=1,o=4;function l(A){for(var f=0,I=0,C=A.charAt(f),b={},E,N=0;C===r||C===n;){for(E=C===r?o:a,I+=E,E>1&&(I=Math.floor(I/E)*E);N{"use strict";var r=uNe(),n=WRr(),a=d2i();t.exports=f;var o=` +`,l=" ",A="!";function f(I,C){var b=I.split(o),E=b.length+1,N=1/0,B=[],F,Q,X;for(b.unshift(n(l,C)+A);E--;)if(Q=a(b[E]),B[E]=Q.stops,r(b[E]).length!==0)if(Q.indent)Q.indent>0&&Q.indent{"use strict";var r=uNe(),n=WRr(),a=lNe(),o=d2i(),l=A8a(),A=ORr();t.exports=be;var f="*",I="_",C="+",b="-",E=".",N=" ",B=` +`,F=" ",Q=")",X="x",ae=4,ne=/\n\n(?!\s*$)/,ce=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,ue=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,de=/^( {1,4}|\t)?/gm;function be(et,ct,Me){for(var je=this,St=je.options.commonmark,At=je.options.pedantic,Yt=je.blockTokenizers,Tr=je.interruptList,Nr=0,er=ct.length,vt=null,xt,Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt,Fn,Nn,Hi,po,Vr,xi,io,ga,Ya=!1,Gc,cl,Sc,Hr;Nr=xi.indent&&(Hr=!0),Xt=ct.charAt(Nr),_n=null,!Hr){if(Xt===f||Xt===C||Xt===b)_n=Xt,Nr++,xt++;else{for(Zr="";Nr=xi.indent||xt>ae),qr=!1,Nr=Ar;if(jt=ct.slice(Ar,cr),ke=Ar===Nr?jt:ct.slice(Nr,cr),(_n===f||_n===I||_n===b)&&Yt.thematicBreak.call(je,et,jt,!0))break;if(Fn=Nn,Nn=!qr&&!r(ke).length,Hr&&xi)xi.value=xi.value.concat(Vr,jt),po=po.concat(Vr,jt),Vr=[];else if(qr)Vr.length!==0&&(Ya=!0,xi.value.push(""),xi.trail=Vr.concat()),xi={value:[jt],indent:xt,trail:[]},Hi.push(xi),po=po.concat(Vr,jt),Vr=[];else if(Nn){if(Fn&&!St)break;Vr.push(jt)}else{if(Fn||A(Tr,Yt,je,[et,jt,!0]))break;xi.value=xi.value.concat(Vr,jt),po=po.concat(Vr,jt),Vr=[]}Nr=cr+1}for(Gc=et(po.join(B)).reset({type:"list",ordered:qt,start:vt,spread:Ya,children:[]}),io=je.enterList(),ga=je.enterBlock(),Nr=-1,er=Hi.length;++Nr{"use strict";t.exports=C;var r=` +`,n=" ",a=" ",o="=",l="-",A=3,f=1,I=2;function C(b,E,N){for(var B=this,F=b.now(),Q=E.length,X=-1,ae="",ne,ce,fe,ue,de;++X=A){X--;break}ae+=fe}for(ne="",ce="";++X{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",n="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+n+"|"+a+")",l="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",A="<[A-Za-z][A-Za-z0-9\\-]*"+l+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",I="|",C="<[?].*?[?]>",b="]*>",E="";e.openCloseTag=new RegExp("^(?:"+A+"|"+f+")"),e.tag=new RegExp("^(?:"+A+"|"+f+"|"+I+"|"+C+"|"+b+"|"+E+")")}),f8a=ql((e,t)=>{"use strict";var r=p2i().openCloseTag;t.exports=ne;var n=" ",a=" ",o=` +`,l="<",A=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,I=/^/,b=/^<\?/,E=/\?>/,N=/^/,F=/^/,X=/^$/,ae=new RegExp(r.source+"\\s*$");function ne(ce,fe,ue){for(var de=this,be=de.options.blocks.join("|"),Se=new RegExp("^|$))","i"),De=fe.length,k=0,et,ct,Me,je,St,At,Yt,Tr=[[A,f,!0],[I,C,!0],[b,E,!0],[N,B,!0],[F,Q,!0],[Se,X,!0],[ae,X,!1]];k{"use strict";t.exports=a;var r=String.fromCharCode,n=/\s/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),f2i=ql((e,t)=>{"use strict";var r=PRr();t.exports=n;function n(a){return r(a).toLowerCase()}}),I8a=ql((e,t)=>{"use strict";var r=bee(),n=f2i();t.exports=X;var a='"',o="'",l="\\",A=` +`,f=" ",I=" ",C="[",b="]",E="(",N=")",B=":",F="<",Q=">";function X(ce,fe,ue){for(var de=this,be=de.options.commonmark,Se=0,De=fe.length,k="",et,ct,Me,je,St,At,Yt,Tr;Se{"use strict";var r=bee();t.exports=F;var n=" ",a=` +`,o=" ",l="-",A=":",f="\\",I="|",C=1,b=2,E="left",N="center",B="right";function F(Q,X,ae){var ne=this,ce,fe,ue,de,be,Se,De,k,et,ct,Me,je,St,At,Yt,Tr,Nr,er,vt,xt,Zr,qt;if(ne.options.gfm){for(ce=0,Tr=0,Se=X.length+1,De=[];cext){if(Tr1&&(et?(de+=k.slice(0,-1),k=k.charAt(k.length-1)):(de+=k,k="")),At=Q.now(),Q(de)({type:"tableCell",children:ne.tokenizeInline(je,At)},be)),Q(k+et),k="",je=""):(k&&(je+=k,k=""),je+=et,et===f&&ce!==Se-2&&(je+=Nr.charAt(ce+1),ce++)),St=!1,ce++}Yt||Q(a+fe)}return vt}}}}),m8a=ql((e,t)=>{"use strict";var r=uNe(),n=A2i(),a=ORr();t.exports=I;var o=" ",l=` +`,A=" ",f=4;function I(C,b,E){for(var N=this,B=N.options,F=B.commonmark,Q=N.blockTokenizers,X=N.interruptParagraph,ae=b.indexOf(l),ne=b.length,ce,fe,ue,de,be;ae=f&&ue!==l){ae=b.indexOf(l,ae+1);continue}}if(fe=b.slice(ae+1),a(X,Q,N,[C,fe,!0]))break;if(ce=ae,ae=b.indexOf(l,ae+1),ae!==-1&&r(b.slice(ce,ae))===""){ae=ce;break}}return fe=b.slice(0,ae),E?!0:(be=C.now(),fe=n(fe),C(fe)({type:"paragraph",children:N.tokenizeInline(fe,be)}))}}),C8a=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("\\",a)}}),_8a=ql((e,t)=>{"use strict";var r=C8a();t.exports=o,o.locator=r;var n=` +`,a="\\";function o(l,A,f){var I=this,C,b;if(A.charAt(0)===a&&(C=A.charAt(1),I.escape.indexOf(C)!==-1))return f?!0:(C===n?b={type:"break"}:b={type:"text",value:C},l(a+C)(b))}}),I2i=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("<",a)}}),y8a=ql((e,t)=>{"use strict";var r=bee(),n=wbt(),a=I2i();t.exports=b,b.locator=a,b.notInLink=!0;var o="<",l=">",A="@",f="/",I="mailto:",C=I.length;function b(E,N,B){var F=this,Q="",X=N.length,ae=0,ne="",ce=!1,fe="",ue,de,be,Se,De;if(N.charAt(0)===o){for(ae++,Q=o;ae{"use strict";t.exports=r;function r(n,a){var o=String(n),l=0,A;if(typeof a!="string")throw new Error("Expected character");for(A=o.indexOf(a);A!==-1;)l++,A=o.indexOf(a,A+a.length);return l}}),E8a=ql((e,t)=>{"use strict";t.exports=n;var r=["www.","http://","https://"];function n(a,o){var l=-1,A,f,I;if(!this.options.gfm)return l;for(f=r.length,A=-1;++A{"use strict";var r=b8a(),n=wbt(),a=lNe(),o=U4e(),l=bee(),A=E8a();t.exports=de,de.locator=A,de.notInLink=!0;var f=33,I=38,C=41,b=42,E=44,N=45,B=46,F=58,Q=59,X=63,ae=60,ne=95,ce=126,fe="(",ue=")";function de(be,Se,De){var k=this,et=k.options.gfm,ct=k.inlineTokenizers,Me=Se.length,je=-1,St=!1,At,Yt,Tr,Nr,er,vt,xt,Zr,qt,Xt,lr,cr,Ar,qr;if(et){if(Se.slice(0,4)==="www.")St=!0,Nr=4;else if(Se.slice(0,7).toLowerCase()==="http://")Nr=7;else if(Se.slice(0,8).toLowerCase()==="https://")Nr=8;else return;for(je=Nr-1,Tr=Nr,At=[];Nrqt;)Nr=er+vt.lastIndexOf(ue),vt=Se.slice(er,Nr),Xt--;if(Se.charCodeAt(Nr-1)===Q&&(Nr--,o(Se.charCodeAt(Nr-1)))){for(Zr=Nr-2;o(Se.charCodeAt(Zr));)Zr--;Se.charCodeAt(Zr)===I&&(Nr=Zr)}return lr=Se.slice(0,Nr),Ar=n(lr,{nonTerminated:!1}),St&&(Ar="http://"+Ar),qr=k.enterLink(),k.inlineTokenizers={text:ct.text},cr=k.tokenizeInline(lr,be.now()),k.inlineTokenizers=ct,qr(),be(lr)({type:"link",title:null,url:Ar,children:cr})}}}}),v8a=ql((e,t)=>{"use strict";var r=lNe(),n=U4e(),a=43,o=45,l=46,A=95;t.exports=f;function f(C,b){var E=this,N,B;if(!this.options.gfm||(N=C.indexOf("@",b),N===-1))return-1;if(B=N,B===b||!I(C.charCodeAt(B-1)))return f.call(E,C,N+1);for(;B>b&&I(C.charCodeAt(B-1));)B--;return B}function I(C){return r(C)||n(C)||C===a||C===o||C===l||C===A}}),B8a=ql((e,t)=>{"use strict";var r=wbt(),n=lNe(),a=U4e(),o=v8a();t.exports=b,b.locator=o,b.notInLink=!0;var l=43,A=45,f=46,I=64,C=95;function b(E,N,B){var F=this,Q=F.options.gfm,X=F.inlineTokenizers,ae=0,ne=N.length,ce=-1,fe,ue,de,be;if(Q){for(fe=N.charCodeAt(ae);n(fe)||a(fe)||fe===l||fe===A||fe===f||fe===C;)fe=N.charCodeAt(++ae);if(ae!==0&&fe===I){for(ae++;ae{"use strict";var r=U4e(),n=I2i(),a=p2i().tag;t.exports=b,b.locator=n;var o="<",l="?",A="!",f="/",I=/^/i;function b(E,N,B){var F=this,Q=N.length,X,ae;if(!(N.charAt(0)!==o||Q<3)&&(X=N.charAt(1),!(!r(X)&&X!==l&&X!==A&&X!==f)&&(ae=N.match(a),!!ae)))return B?!0:(ae=ae[0],!F.inLink&&I.test(ae)?F.inLink=!0:F.inLink&&C.test(ae)&&(F.inLink=!1),E(ae)({type:"html",value:ae}))}}),h2i=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("[",a),l=n.indexOf("![",a);return l===-1||o{"use strict";var r=bee(),n=h2i();t.exports=Q,Q.locator=n;var a=` +`,o="!",l='"',A="'",f="(",I=")",C="<",b=">",E="[",N="\\",B="]",F="`";function Q(X,ae,ne){var ce=this,fe="",ue=0,de=ae.charAt(0),be=ce.options.pedantic,Se=ce.options.commonmark,De=ce.options.gfm,k,et,ct,Me,je,St,At,Yt,Tr,Nr,er,vt,xt,Zr,qt,Xt,lr,cr;if(de===o&&(Yt=!0,fe=de,de=ae.charAt(++ue)),de===E&&!(!Yt&&ce.inLink)){for(fe+=de,Zr="",ue++,er=ae.length,Xt=X.now(),xt=0,Xt.column+=ue,Xt.offset+=ue;ue=ct&&(ct=0):ct=et}else if(de===N)ue++,St+=ae.charAt(ue);else if((!ct||De)&&de===E)xt++;else if((!ct||De)&&de===B)if(xt)xt--;else{if(ae.charAt(ue+1)!==f)return;St+=f,k=!0,ue++;break}Zr+=St,St="",ue++}if(k){for(Tr=Zr,fe+=Zr+St,ue++;ue{"use strict";var r=bee(),n=h2i(),a=f2i();t.exports=B,B.locator=n;var o="link",l="image",A="shortcut",f="collapsed",I="full",C="!",b="[",E="\\",N="]";function B(F,Q,X){var ae=this,ne=ae.options.commonmark,ce=Q.charAt(0),fe=0,ue=Q.length,de="",be="",Se=o,De=A,k,et,ct,Me,je,St,At,Yt;if(ce===C&&(Se=l,be=ce,ce=Q.charAt(++fe)),ce===b){for(fe++,be+=ce,St="",Yt=0;fe{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("**",a),l=n.indexOf("__",a);return l===-1?o:o===-1||l{"use strict";var r=uNe(),n=bee(),a=N8a();t.exports=f,f.locator=a;var o="\\",l="*",A="_";function f(I,C,b){var E=this,N=0,B=C.charAt(N),F,Q,X,ae,ne,ce,fe;if(!(B!==l&&B!==A||C.charAt(++N)!==B)&&(Q=E.options.pedantic,X=B,ne=X+X,ce=C.length,N++,ae="",B="",!(Q&&n(C.charAt(N)))))for(;N{"use strict";t.exports=a;var r=String.fromCharCode,n=/\w/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),x8a=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("*",a),l=n.indexOf("_",a);return l===-1?o:o===-1||l{"use strict";var r=uNe(),n=k8a(),a=bee(),o=x8a();t.exports=I,I.locator=o;var l="*",A="_",f="\\";function I(C,b,E){var N=this,B=0,F=b.charAt(B),Q,X,ae,ne,ce,fe,ue;if(!(F!==l&&F!==A)&&(X=N.options.pedantic,ce=F,ae=F,fe=b.length,B++,ne="",F="",!(X&&a(b.charAt(B)))))for(;B{"use strict";t.exports=r;function r(n,a){return n.indexOf("~~",a)}}),Z8a=ql((e,t)=>{"use strict";var r=bee(),n=F8a();t.exports=l,l.locator=n;var a="~",o="~~";function l(A,f,I){var C=this,b="",E="",N="",B="",F,Q,X;if(!(!C.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(F=1,Q=f.length,X=A.now(),X.column+=2,X.offset+=2;++F{"use strict";t.exports=r;function r(n,a){return n.indexOf("`",a)}}),V8a=ql((e,t)=>{"use strict";var r=L8a();t.exports=l,l.locator=r;var n=10,a=32,o=96;function l(A,f,I){for(var C=f.length,b=0,E,N,B,F,Q,X;b2&&(F===a||F===n)&&(Q===a||Q===n)){for(b++,C--;b{"use strict";t.exports=r;function r(n,a){for(var o=n.indexOf(` +`,a);o>a&&n.charAt(o-1)===" ";)o--;return o}}),W8a=ql((e,t)=>{"use strict";var r=P8a();t.exports=l,l.locator=r;var n=" ",a=` +`,o=2;function l(A,f,I){for(var C=f.length,b=-1,E="",N;++b{"use strict";t.exports=r;function r(n,a,o){var l=this,A,f,I,C,b,E,N,B,F,Q;if(o)return!0;for(A=l.inlineMethods,C=A.length,f=l.inlineTokenizers,I=-1,F=a.length;++I{"use strict";var r=cNe(),n=WKa(),a=OKa(),o=MKa(),l=KKa(),A=jKa();t.exports=f;function f(b,E){this.file=E,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(E).toOffset,this.unescape=o(this,"escape"),this.decode=l(this)}var I=f.prototype;I.setOptions=$Ka(),I.parse=s8a(),I.options=g2i(),I.exitStart=n("atStart",!0),I.enterList=n("inList",!1),I.enterLink=n("inLink",!1),I.enterBlock=n("inBlock",!1),I.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],I.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],I.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],I.blockTokenizers={blankLine:o8a(),indentedCode:a8a(),fencedCode:c8a(),blockquote:l8a(),atxHeading:u8a(),thematicBreak:g8a(),list:d8a(),setextHeading:p8a(),html:f8a(),definition:I8a(),table:h8a(),paragraph:m8a()},I.inlineTokenizers={escape:_8a(),autoLink:y8a(),url:S8a(),email:B8a(),html:w8a(),link:T8a(),reference:R8a(),strong:D8a(),emphasis:G8a(),deletion:Z8a(),code:V8a(),break:W8a(),text:O8a()},I.blockMethods=C(I.blockTokenizers),I.inlineMethods=C(I.inlineTokenizers),I.tokenizeBlock=A("block"),I.tokenizeInline=A("inline"),I.tokenizeFactory=A;function C(b){var E=[],N;for(N in b)E.push(N);return E}}),H8a=ql((e,t)=>{"use strict";var r=PKa(),n=cNe(),a=M8a();t.exports=o,o.Parser=a;function o(l){var A=this.data("settings"),f=r(a);f.prototype.options=n(f.prototype.options,A,l),this.Parser=f}}),Y8a=ql((e,t)=>{"use strict";t.exports=r;function r(n){if(n)throw n}}),m2i=ql((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),Q8a=ql((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,n=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,l=function(C){return typeof Array.isArray=="function"?Array.isArray(C):n.call(C)==="[object Array]"},A=function(C){if(!C||n.call(C)!=="[object Object]")return!1;var b=r.call(C,"constructor"),E=C.constructor&&C.constructor.prototype&&r.call(C.constructor.prototype,"isPrototypeOf");if(C.constructor&&!b&&!E)return!1;var N;for(N in C);return typeof N>"u"||r.call(C,N)},f=function(C,b){a&&b.name==="__proto__"?a(C,b.name,{enumerable:!0,configurable:!0,value:b.newValue,writable:!0}):C[b.name]=b.newValue},I=function(C,b){if(b==="__proto__")if(r.call(C,b)){if(o)return o(C,b).value}else return;return C[b]};t.exports=function C(){var b,E,N,B,F,Q,X=arguments[0],ae=1,ne=arguments.length,ce=!1;for(typeof X=="boolean"&&(ce=X,X=arguments[1]||{},ae=2),(X==null||typeof X!="object"&&typeof X!="function")&&(X={});ae{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let n=Object.getPrototypeOf(r);return n===null||n===Object.prototype}}),J8a=ql((e,t)=>{"use strict";var r=[].slice;t.exports=n;function n(a,o){var l;return A;function A(){var C=r.call(arguments,0),b=a.length>C.length,E;b&&C.push(f);try{E=a.apply(null,C)}catch(N){if(b&&l)throw N;return f(N)}b||(E&&typeof E.then=="function"?E.then(I,f):E instanceof Error?f(E):I(E))}function f(){l||(l=!0,o.apply(null,arguments))}function I(C){f(null,C)}}}),U8a=ql((e,t)=>{"use strict";var r=J8a();t.exports=a,a.wrap=r;var n=[].slice;function a(){var o=[],l={};return l.run=A,l.use=f,l;function A(){var I=-1,C=n.call(arguments,0,-1),b=arguments[arguments.length-1];if(typeof b!="function")throw new Error("Expected function as last argument, not "+b);E.apply(null,[null].concat(C));function E(N){var B=o[++I],F=n.call(arguments,0),Q=F.slice(1),X=C.length,ae=-1;if(N){b(N);return}for(;++ae{"use strict";var r={}.hasOwnProperty;t.exports=n;function n(A){return!A||typeof A!="object"?"":r.call(A,"position")||r.call(A,"type")?o(A.position):r.call(A,"start")||r.call(A,"end")?o(A):r.call(A,"line")||r.call(A,"column")?a(A):""}function a(A){return(!A||typeof A!="object")&&(A={}),l(A.line)+":"+l(A.column)}function o(A){return(!A||typeof A!="object")&&(A={}),a(A.start)+"-"+a(A.end)}function l(A){return A&&typeof A=="number"?A:1}}),j8a=ql((e,t)=>{"use strict";var r=K8a();t.exports=o;function n(){}n.prototype=Error.prototype,o.prototype=new n;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(A,f,I){var C,b,E;typeof f=="string"&&(I=f,f=null),C=l(I),b=r(f)||"1:1",E={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(E=f,f=f.start):E.start=f),A.stack&&(this.stack=A.stack,A=A.message),this.message=A,this.name=b,this.reason=A,this.line=f?f.line:null,this.column=f?f.column:null,this.location=E,this.source=C[0],this.ruleId=C[1]}function l(A){var f=[null,null],I;return typeof A=="string"&&(I=A.indexOf(":"),I===-1?f[1]=A:(f[0]=A.slice(0,I),f[1]=A.slice(I+1))),f}}),z8a=ql(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=n,e.join=a,e.sep="/";function t(f,I){var C=0,b=-1,E,N,B,F;if(I!==void 0&&typeof I!="string")throw new TypeError('"ext" argument must be a string');if(A(f),E=f.length,I===void 0||!I.length||I.length>f.length){for(;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else b<0&&(B=!0,b=E+1);return b<0?"":f.slice(C,b)}if(I===f)return"";for(N=-1,F=I.length-1;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else N<0&&(B=!0,N=E+1),F>-1&&(f.charCodeAt(E)===I.charCodeAt(F--)?F<0&&(b=E):(F=-1,b=N));return C===b?b=N:b<0&&(b=f.length),f.slice(C,b)}function r(f){var I,C,b;if(A(f),!f.length)return".";for(I=-1,b=f.length;--b;)if(f.charCodeAt(b)===47){if(C){I=b;break}}else C||(C=!0);return I<0?f.charCodeAt(0)===47?"/":".":I===1&&f.charCodeAt(0)===47?"//":f.slice(0,I)}function n(f){var I=-1,C=0,b=-1,E=0,N,B,F;for(A(f),F=f.length;F--;){if(B=f.charCodeAt(F),B===47){if(N){C=F+1;break}continue}b<0&&(N=!0,b=F+1),B===46?I<0?I=F:E!==1&&(E=1):I>-1&&(E=-1)}return I<0||b<0||E===0||E===1&&I===b-1&&I===C+1?"":f.slice(I,b)}function a(){for(var f=-1,I;++f2){if(Q=C.lastIndexOf("/"),Q!==C.length-1){Q<0?(C="",b=0):(C=C.slice(0,Q),b=C.length-1-C.lastIndexOf("/")),E=B,N=0;continue}}else if(C.length){C="",b=0,E=B,N=0;continue}}I&&(C=C.length?C+"/..":"..",b=2)}else C.length?C+="/"+f.slice(E+1,B):C=f.slice(E+1,B),b=B-E-1;E=B,N=0}else F===46&&N>-1?N++:N=-1}return C}function A(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),q8a=ql(e=>{"use strict";e.cwd=t;function t(){return"/"}}),$8a=ql((e,t)=>{"use strict";var r=z8a(),n=q8a(),a=m2i();t.exports=A;var o={}.hasOwnProperty,l=["history","path","basename","stem","extname","dirname"];A.prototype.toString=ae,Object.defineProperty(A.prototype,"path",{get:f,set:I}),Object.defineProperty(A.prototype,"dirname",{get:C,set:b}),Object.defineProperty(A.prototype,"basename",{get:E,set:N}),Object.defineProperty(A.prototype,"extname",{get:B,set:F}),Object.defineProperty(A.prototype,"stem",{get:Q,set:X});function A(ue){var de,be;if(!ue)ue={};else if(typeof ue=="string"||a(ue))ue={contents:ue};else if("message"in ue&&"messages"in ue)return ue;if(!(this instanceof A))return new A(ue);for(this.data={},this.messages=[],this.history=[],this.cwd=n.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(ue||""))}function Q(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function X(ue){ce(ue,"stem"),ne(ue,"stem"),this.path=r.join(this.dirname||"",ue+(this.extname||""))}function ae(ue){return(this.contents||"").toString(ue)}function ne(ue,de){if(ue&&ue.indexOf(r.sep)>-1)throw new Error("`"+de+"` cannot be a path: did not expect `"+r.sep+"`")}function ce(ue,de){if(!ue)throw new Error("`"+de+"` cannot be empty")}function fe(ue,de){if(!ue)throw new Error("Setting `"+de+"` requires `path` to be set too")}}),eja=ql((e,t)=>{"use strict";var r=j8a(),n=$8a();t.exports=n,n.prototype.message=a,n.prototype.info=l,n.prototype.fail=o;function a(A,f,I){var C=new r(A,f,I);return this.path&&(C.name=this.path+":"+C.name,C.file=this.path),C.fatal=!1,this.messages.push(C),C}function o(){var A=this.message.apply(this,arguments);throw A.fatal=!0,A}function l(){var A=this.message.apply(this,arguments);return A.fatal=null,A}}),tja=ql((e,t)=>{"use strict";t.exports=eja()}),rja=ql((e,t)=>{"use strict";var r=Y8a(),n=m2i(),a=Q8a(),o=X8a(),l=U8a(),A=tja();t.exports=B().freeze();var f=[].slice,I={}.hasOwnProperty,C=l().use(b).use(E).use(N);function b(ue,de){de.tree=ue.parse(de.file)}function E(ue,de,be){ue.run(de.tree,de.file,Se);function Se(De,k,et){De?be(De):(de.tree=k,de.file=et,be())}}function N(ue,de){var be=ue.stringify(de.tree,de.file);be==null||(typeof be=="string"||n(be)?("value"in de.file&&(de.file.value=be),de.file.contents=be):de.file.result=be)}function B(){var ue=[],de=l(),be={},Se=-1,De;return k.data=ct,k.freeze=et,k.attachers=ue,k.use=Me,k.parse=St,k.stringify=Tr,k.run=At,k.runSync=Yt,k.process=Nr,k.processSync=er,k;function k(){for(var vt=B(),xt=-1;++xtG2i,options:()=>F2i,parsers:()=>URr,printers:()=>O2i});var nja=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},DG=nja,ija=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},n4=ija,sja=aNe(PRr(),1);function Tbt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var Rme="string",pce="array",Rbt="cursor",gNe="indent",ANe="align",K4e="trim",fce="group",Nme="fill",dce="if-break",j4e="indent-if-break",z4e="line-suffix",q4e="line-suffix-boundary",Eee="line",$4e="label",dNe="break-parent",_2i=new Set([Rbt,gNe,ANe,K4e,fce,Nme,dce,j4e,z4e,q4e,Eee,$4e,dNe]);function oja(e){if(typeof e=="string")return Rme;if(Array.isArray(e))return pce;if(!e)return;let{type:t}=e;if(_2i.has(t))return t}var Ice=oja,aja=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function cja(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Ice(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=aja([..._2i].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var lja=class extends Error{name="InvalidDocError";constructor(e){super(cja(e)),this.doc=e}},ybt=lja,H1i={};function uja(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===H1i){r(a.pop());continue}r&&a.push(o,H1i);let l=Ice(o);if(!l)throw new ybt(o);if(t?.(o)!==!1)switch(l){case pce:case Nme:{let A=l===pce?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case dce:a.push(o.flatContents,o.breakContents);break;case fce:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case ANe:case gNe:case j4e:case $4e:case z4e:a.push(o.contents);break;case Rme:case Rbt:case K4e:case q4e:case Eee:case dNe:break;default:throw new ybt(o)}}}var gja=uja;function Aja(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Ice(o)){case pce:return t(o.map(n));case Nme:return t({...o,parts:o.parts.map(n)});case dce:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case fce:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case ANe:case gNe:case j4e:case $4e:case z4e:return t({...o,contents:n(o.contents)});case Rme:case Rbt:case K4e:case q4e:case Eee:case dNe:return t(o);default:throw new ybt(o)}}}function Y1i(e){if(e.length>0){let t=n4(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function dja(e){let t=new Set,r=[];function n(o){if(o.type===dNe&&Y1i(r),o.type===fce){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===fce&&r.pop().break&&Y1i(r)}gja(e,n,a,!0)}function nNe(e,t=xRr){return Aja(e,r=>typeof r=="string"?S2i(t,r.split(` +`)):r)}var MRr=()=>{},sNe=MRr,y2i=MRr,pja=MRr;function kRr(e){return sNe(e),{type:gNe,contents:e}}function Tme(e,t){return sNe(t),{type:ANe,contents:t,n:e}}function Cbt(e,t={}){return sNe(e),y2i(t.expandedStates,!0),{type:fce,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function bbt(e){return Tme({type:"root"},e)}function HRr(e){return pja(e),{type:Nme,parts:e}}function fja(e,t="",r={}){return sNe(e),t!==""&&sNe(t),{type:dce,breakContents:e,flatContents:t,groupId:r.groupId}}var Ebt={type:dNe},YRr={type:Eee,hard:!0},Ija={type:Eee,hard:!0,literal:!0},b2i={type:Eee},E2i={type:Eee,soft:!0},DR=[YRr,Ebt],xRr=[Ija,Ebt];function S2i(e,t){sNe(e),y2i(t);let r=[];for(let n=0;nMath.max(n,a.length/t.length),0)}var v2i=hja;function mja(e,t){let r=e.match(new RegExp(`(${Tbt(t)})+`,"gu"));if(r===null)return 0;let n=new Map,a=0;for(let o of r){let l=o.length/t.length;n.set(l,!0),l>a&&(a=l)}for(let o=1;oo?n:r}var yja=_ja,bja=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Eja=bja,Sja=aNe(PRr(),1);function vja(e){return e?.type==="front-matter"}var Bja=vja,M4e=3;function wja(e){let t=e.slice(0,M4e);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` +`,M4e);if(r===-1)return;let n=e.slice(M4e,r).trim(),a=e.indexOf(` ${t}`,r),o=n;if(o||(o=t==="+++"?"toml":"yaml"),a===-1&&t==="---"&&o==="yaml"&&(a=e.indexOf(` -...`,r)),a===-1)return;let l=a+1+W4e,A=e.charAt(l+1);if(!/\s?/u.test(A))return;let f=e.slice(0,l);return{type:"front-matter",language:o,explicitLanguage:n,value:e.slice(r+1,a),startDelimiter:t,endDelimiter:f.slice(-W4e),raw:f}}function $8a(e){let t=q8a(e);if(!t)return{content:e};let{raw:r}=t;return{frontMatter:t,content:DG(!1,r,/[^\n]/gu," ")+e.slice(r.length)}}var WRr=$8a,g2i=["format","prettier"];function A2i(e){let t=`@(${g2i.join("|")})`,r=new RegExp([``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``].join("|"),"mu"),n=e.match(r);return n?.index===0}var eja=e=>A2i(WRr(e).content.trimStart()),tja=e=>{let t=WRr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} +.*-->`].join("|"),"mu"),n=e.match(r);return n?.index===0}var Rja=e=>w2i(QRr(e).content.trimStart()),Nja=e=>{let t=QRr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} ${r} ${t.content}`:`${r} -${t.content}`},rja=new Set(["position","raw"]);function d2i(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=DG(!1,e.value,` -`," ")),e.type==="wikiLink"&&(t.value=DG(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,K8a.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let n of"<>")t.url=DG(!1,e.url,n,encodeURIComponent(n));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=DG(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||z8a(r.children[0])&&r.children[1]===e)&&e.type==="html"&&A2i(e.value))return null}d2i.ignoredProperties=rja;var nja=d2i,ija=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,M4e=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function sja(e,t){if(e.language==="yaml"){let r=e.value.trim(),n=r?await t(r,{parser:"yaml"}):"";return _bt([e.startDelimiter,e.explicitLanguage,DR,n,n?DR:"",e.endDelimiter])}}var oja=sja,aja=e=>String(e).split(/[/\\]/u).pop();function D1i(e,t){if(!t)return;let r=aja(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function cja(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function lja(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=cja(r,t.language)??D1i(r,t.physicalFile)??D1i(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var uja=lja,gja=new Proxy(()=>{},{get:()=>gja});function bbt(e){return e.position.start.offset}function Ebt(e){return e.position.end.offset}var p2i=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),f2i=new Set([...p2i,"tableCell","paragraph","heading"]),Q4e="non-cjk",_ee="cj-letter",iNe="k-letter",Sbt="cjk-punctuation",Aja=/\p{Script_Extensions=Hangul}/u;function I2i(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` -`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let l=o.split(new RegExp(`(${ija.source})`,"u"));for(let[A,f]of l.entries())if(!((A===0||A===l.length-1)&&f==="")){if(A%2===0){f!==""&&n({type:"word",value:f,kind:Q4e,isCJ:!1,hasLeadingPunctuation:M4e.test(f[0]),hasTrailingPunctuation:M4e.test(n4(!1,f,-1))});continue}if(M4e.test(f)){n({type:"word",value:f,kind:Sbt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(Aja.test(f)){n({type:"word",value:f,kind:iNe,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}n({type:"word",value:f,kind:_ee,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function n(a){let o=n4(!1,t,-1);o?.type==="word"&&!l(Q4e,Sbt)&&![o.value,a.value].some(A=>/\u3000/u.test(A))&&t.push({type:"whitespace",value:""}),t.push(a);function l(A,f){return o.kind===A&&a.kind===f||o.kind===f&&a.kind===A}}}function H4e(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:n,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(n),leadingSpaces:a}}function dja(e,t){return!e.ordered||e.children.length<2||H4e(e.children[1],t).number!==1?!1:H4e(e.children[0],t).number!==0?!0:e.children.length>2&&H4e(e.children[2],t).number===1}function h2i(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` +${t.content}`},Dja=new Set(["position","raw"]);function T2i(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=DG(!1,e.value,` +`," ")),e.type==="wikiLink"&&(t.value=DG(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,Sja.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let n of"<>")t.url=DG(!1,e.url,n,encodeURIComponent(n));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=DG(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||Bja(r.children[0])&&r.children[1]===e)&&e.type==="html"&&w2i(e.value))return null}T2i.ignoredProperties=Dja;var kja=T2i,xja=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,Y4e=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function Gja(e,t){if(e.language==="yaml"){let r=e.value.trim(),n=r?await t(r,{parser:"yaml"}):"";return bbt([e.startDelimiter,e.explicitLanguage,DR,n,n?DR:"",e.endDelimiter])}}var Fja=Gja,Zja=e=>String(e).split(/[/\\]/u).pop();function X1i(e,t){if(!t)return;let r=Zja(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function Lja(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Vja(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=Lja(r,t.language)??X1i(r,t.physicalFile)??X1i(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var Pja=Vja,Wja=new Proxy(()=>{},{get:()=>Wja});function Sbt(e){return e.position.start.offset}function vbt(e){return e.position.end.offset}var R2i=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),N2i=new Set([...R2i,"tableCell","paragraph","heading"]),J4e="non-cjk",yee="cj-letter",oNe="k-letter",Bbt="cjk-punctuation",Oja=/\p{Script_Extensions=Hangul}/u;function D2i(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` +`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let l=o.split(new RegExp(`(${xja.source})`,"u"));for(let[A,f]of l.entries())if(!((A===0||A===l.length-1)&&f==="")){if(A%2===0){f!==""&&n({type:"word",value:f,kind:J4e,isCJ:!1,hasLeadingPunctuation:Y4e.test(f[0]),hasTrailingPunctuation:Y4e.test(n4(!1,f,-1))});continue}if(Y4e.test(f)){n({type:"word",value:f,kind:Bbt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(Oja.test(f)){n({type:"word",value:f,kind:oNe,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}n({type:"word",value:f,kind:yee,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function n(a){let o=n4(!1,t,-1);o?.type==="word"&&!l(J4e,Bbt)&&![o.value,a.value].some(A=>/\u3000/u.test(A))&&t.push({type:"whitespace",value:""}),t.push(a);function l(A,f){return o.kind===A&&a.kind===f||o.kind===f&&a.kind===A}}}function Q4e(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:n,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(n),leadingSpaces:a}}function Mja(e,t){return!e.ordered||e.children.length<2||Q4e(e.children[1],t).number!==1?!1:Q4e(e.children[0],t).number!==0?!0:e.children.length>2&&Q4e(e.children[2],t).number===1}function k2i(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` `)&&t.endsWith(` -`)?r.slice(0,-1):r}function ANe(e,t){return function r(n,a,o){let l={...t(n,a,o)};return l.children&&(l.children=l.children.map((A,f)=>r(A,f,[l,...o]))),l}(e,null,[])}function k1i(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return bbt(e)===bbt(t)&&Ebt(e)===Ebt(t)}function pja(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let n=uja(t,{language:r.lang});if(n)return async a=>{let o=t.__inJsTemplate?"~":"`",l=o.repeat(Math.max(3,u2i(r.value,o)+1)),A={parser:n};r.lang==="ts"||r.lang==="typescript"?A.filepath="dummy.ts":r.lang==="tsx"&&(A.filepath="dummy.tsx");let f=await a(h2i(r,t.originalText),A);return _bt([l,r.lang,r.meta?" "+r.meta:"",DR,tNe(f),DR,l])}}switch(r.type){case"front-matter":return n=>oja(r,n);case"import":case"export":return n=>n(r.value,{parser:"babel"});case"jsx":return n=>n(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var fja=pja,O4e=null;function Y4e(e){if(O4e!==null&&typeof O4e.property){let t=O4e;return O4e=Y4e.prototype=null,t}return O4e=Y4e.prototype=e??Object.create(null),new Y4e}var Ija=10;for(let e=0;e<=Ija;e++)Y4e();function hja(e){return Y4e(e)}function mja(e,t="type"){hja(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Cja=mja,_ja={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},yja=_ja,bja=Cja(yja),Eja=bja;function Sja(e){switch(e){case"cr":return"\r";case"crlf":return`\r +`)?r.slice(0,-1):r}function pNe(e,t){return function r(n,a,o){let l={...t(n,a,o)};return l.children&&(l.children=l.children.map((A,f)=>r(A,f,[l,...o]))),l}(e,null,[])}function J1i(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return Sbt(e)===Sbt(t)&&vbt(e)===vbt(t)}function Hja(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let n=Pja(t,{language:r.lang});if(n)return async a=>{let o=t.__inJsTemplate?"~":"`",l=o.repeat(Math.max(3,v2i(r.value,o)+1)),A={parser:n};r.lang==="ts"||r.lang==="typescript"?A.filepath="dummy.ts":r.lang==="tsx"&&(A.filepath="dummy.tsx");let f=await a(k2i(r,t.originalText),A);return bbt([l,r.lang,r.meta?" "+r.meta:"",DR,nNe(f),DR,l])}}switch(r.type){case"front-matter":return n=>Fja(r,n);case"import":case"export":return n=>n(r.value,{parser:"babel"});case"jsx":return n=>n(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var Yja=Hja,H4e=null;function X4e(e){if(H4e!==null&&typeof H4e.property){let t=H4e;return H4e=X4e.prototype=null,t}return H4e=X4e.prototype=e??Object.create(null),new X4e}var Qja=10;for(let e=0;e<=Qja;e++)X4e();function Xja(e){return X4e(e)}function Jja(e,t="type"){Xja(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Uja=Jja,Kja={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},jja=Kja,zja=Uja(jja),qja=zja;function $ja(e){switch(e){case"cr":return"\r";case"crlf":return`\r `;default:return` -`}}var vja=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function Bja(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function wja(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Tja=e=>!(Bja(e)||wja(e)),Rja=/[^\x20-\x7F]/u;function Nja(e){if(!e)return 0;if(!Rja.test(e))return e.length;e=e.replace(vja()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Tja(n)?1:2)}return t}var ORr=Nja,IV=Symbol("MODE_BREAK"),uj=Symbol("MODE_FLAT"),rNe=Symbol("cursor"),RRr=Symbol("DOC_FILL_PRINTED_LENGTH");function m2i(){return{value:"",length:0,queue:[]}}function Dja(e,t){return NRr(e,{type:"indent"},t)}function kja(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||m2i():t<0?NRr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:NRr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function NRr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function DRr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===rNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(rNe);return t}function Ibt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=fce(C);switch(b){case Tme:f.push(C),r-=ORr(C);break;case dce:case Rme:{let E=b===dce?C:C.parts,N=C[RRr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case lNe:case uNe:case U4e:case z4e:A.push({mode:I,doc:C.contents});break;case J4e:r+=DRr(f);break;case pce:{if(o&&C.break)return!1;let E=C.break?IV:I,N=C.expandedStates&&E===IV?n4(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case Ace:{let E=(C.groupId?a[C.groupId]||uj:I)===IV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case bee:if(I===IV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case K4e:n=!0;break;case j4e:if(n)return!1;break}}return!1}function xja(e,t){let r={},n=t.printWidth,a=Sja(t.endOfLine),o=0,l=[{ind:m2i(),mode:IV,doc:e}],A=[],f=!1,I=[],C=0;for(V8a(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(fce(B)){case Tme:{let F=a!==` +`}}var e6a=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function t6a(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function r6a(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var n6a=e=>!(t6a(e)||r6a(e)),i6a=/[^\x20-\x7F]/u;function s6a(e){if(!e)return 0;if(!i6a.test(e))return e.length;e=e.replace(e6a()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=n6a(n)?1:2)}return t}var XRr=s6a,IV=Symbol("MODE_BREAK"),uj=Symbol("MODE_FLAT"),iNe=Symbol("cursor"),GRr=Symbol("DOC_FILL_PRINTED_LENGTH");function x2i(){return{value:"",length:0,queue:[]}}function o6a(e,t){return FRr(e,{type:"indent"},t)}function a6a(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||x2i():t<0?FRr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:FRr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function FRr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function ZRr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===iNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(iNe);return t}function mbt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=Ice(C);switch(b){case Rme:f.push(C),r-=XRr(C);break;case pce:case Nme:{let E=b===pce?C:C.parts,N=C[GRr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case gNe:case ANe:case j4e:case $4e:A.push({mode:I,doc:C.contents});break;case K4e:r+=ZRr(f);break;case fce:{if(o&&C.break)return!1;let E=C.break?IV:I,N=C.expandedStates&&E===IV?n4(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case dce:{let E=(C.groupId?a[C.groupId]||uj:I)===IV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Eee:if(I===IV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case z4e:n=!0;break;case q4e:if(n)return!1;break}}return!1}function c6a(e,t){let r={},n=t.printWidth,a=$ja(t.endOfLine),o=0,l=[{ind:x2i(),mode:IV,doc:e}],A=[],f=!1,I=[],C=0;for(dja(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(Ice(B)){case Rme:{let F=a!==` `?DG(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=ORr(F));break}case dce:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case wbt:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(rNe),C++;break;case lNe:l.push({ind:Dja(E,t),mode:N,doc:B.contents});break;case uNe:l.push({ind:kja(E,B.n,t),mode:N,doc:B.contents});break;case J4e:o-=DRr(A);break;case pce:switch(N){case uj:if(!f){l.push({ind:E,mode:B.break?IV:uj,doc:B.contents});break}case IV:{f=!1;let F={ind:E,mode:uj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&Ibt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=n4(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:IV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:IV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:uj,doc:ce};if(Ibt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:IV,doc:B.contents});break}}B.id&&(r[B.id]=n4(!1,l,-1).mode);break;case Rme:{let F=n-o,Q=B[RRr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:uj,doc:ne},ue={ind:E,mode:IV,doc:ne},de=Ibt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:uj,doc:ce},Se={ind:E,mode:IV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[RRr]:Q+2}};Ibt({ind:E,mode:uj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case Ace:case U4e:{let F=B.groupId?r[B.groupId]:N;if(F===IV){let Q=B.type===Ace?B.breakContents:B.negate?B.contents:wRr(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===uj){let Q=B.type===Ace?B.flatContents:B.negate?wRr(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case K4e:I.push({ind:E,mode:N,doc:B.contents});break;case j4e:I.length>0&&l.push({ind:E,mode:N,doc:PRr});break;case bee:switch(N){case uj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case IV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=DRr(A),A.push(a+E.value),o=E.length);break}break;case z4e:l.push({ind:E,mode:N,doc:B.contents});break;case gNe:break;default:throw new Cbt(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(rNe);if(b!==-1){let E=A.indexOf(rNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==rNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function Gja(e,t,r){let{node:n}=e,a=[],o=e.map(()=>e.map(({index:b})=>{let E=xja(r(),t).formatted,N=ORr(E);return a[b]=Math.max(a[b]??3,N),{text:E,width:N}},"children"),"children"),l=f(!1);if(t.proseWrap!=="never")return[ybt,l];let A=f(!0);return[ybt,hbt(W8a(A,l))];function f(b){return l2i(PRr,[C(o[0],b),I(b),...o.slice(1).map(E=>C(E,b))].map(E=>`| ${E.join(" | ")} |`))}function I(b){return a.map((E,N)=>{let B=n.align[N],F=B==="center"||B==="left"?":":"-",Q=B==="center"||B==="right"?":":"-",X=b?"-":"-".repeat(E-2);return`${F}${X}${Q}`})}function C(b,E){return b.map(({text:N,width:B},F)=>{if(E)return N;let Q=a[F]-B,X=n.align[F],ae=0;X==="right"?ae=Q:X==="center"&&(ae=Math.floor(Q/2));let ne=Q-ae;return`${" ".repeat(ae)}${N}${" ".repeat(ne)}`})}}function Fja(e,t,r){let n=e.map(r,"children");return Zja(n)}function Zja(e){let t=[""];return function r(n){for(let a of n){let o=fce(a);if(o===dce){r(a);continue}let l=a,A=[];o===Rme&&([l,...A]=a.parts),t.push([t.pop(),l],...A)}}(e),VRr(t)}var r4,Lja=class{constructor(e){nKa(this,r4),iKa(this,r4,new Set(e))}getLeadingWhitespaceCount(e){let t=gce(this,r4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return gce(this,r4).has(e.charAt(0))}hasTrailingWhitespace(e){return gce(this,r4).has(n4(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Bbt([...gce(this,r4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=gce(this,r4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=gce(this,r4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=gce(this,r4);return Array.prototype.every.call(e,r=>t.has(r))}};r4=new WeakMap;var Vja=Lja,Pja=[" ",` -`,"\f","\r"," "],Wja=new Vja(Pja),x1i=Wja,Oja=/^.$/su;function Mja(e,t){return e=Hja(e,t),e=Qja(e),e=Jja(e,t),e=Uja(e,t),e=Xja(e),e}function Hja(e,t){return ANe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!Oja.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function Yja(e,t,r){return ANe(e,n=>{if(!n.children)return n;let a=n.children.reduce((o,l)=>{let A=n4(!1,o,-1);return A&&t(A,l)?o.splice(-1,1,r(A,l)):o.push(l),o},[]);return{...n,children:a}})}function Qja(e){return Yja(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function Xja(e){return ANe(e,(t,r,[n])=>{if(t.type!=="text")return t;let{value:a}=t;return n.type==="paragraph"&&(r===0&&(a=x1i.trimStart(a)),r===n.children.length-1&&(a=x1i.trimEnd(a))),{type:"sentence",position:t.position,children:I2i(a)}})}function Jja(e,t){return ANe(e,(r,n,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let l=0;l{if(a.type==="list"&&a.children.length>0){for(let A=0;A1)return!0;let A=r(o);if(A===-1)return!1;if(a.children.length===1)return A%t.tabWidth===0;let f=r(l);return A!==f?!1:A%t.tabWidth===0?!0:H4e(l,t).leadingSpaces.length>1}}var Kja=Mja;function jja(e,t){let r=[""];return e.each(()=>{let{node:n}=e,a=t();switch(n.type){case"whitespace":if(fce(a)!==Tme){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),VRr(r)}var zja=new Set(["heading","tableCell","link","wikiLink"]),G1i=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function qja({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let n=1;nt[""]}return e.usesCJSpaces}function $ja(e,t){if(t)return!0;let{previous:r,next:n}=e;if(!r||!n)return!0;let a=r.kind,o=n.kind;return F1i(a)&&F1i(o)||a===iNe&&o===_ee||o===iNe&&a===_ee?!0:a===Sbt||o===Sbt||a===_ee&&o===_ee?!1:G1i.has(n.value[0])||G1i.has(n4(!1,r.value,-1))?!0:r.hasTrailingPunctuation||n.hasLeadingPunctuation?!1:qja(e)}function F1i(e){return e===Q4e||e===iNe}function e6a(e,t,r,n){if(r!=="always"||e.hasAncestor(l=>zja.has(l.type)))return!1;if(n)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===iNe&&o.kind===_ee||o.kind===iNe&&a.kind===_ee?!0:!(a.isCJ||o.isCJ)}function Z1i(e,t,r,n){if(r==="preserve"&&t===` +`,a):B;A.push(F),l.length>0&&(o+=XRr(F));break}case pce:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case Rbt:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(iNe),C++;break;case gNe:l.push({ind:o6a(E,t),mode:N,doc:B.contents});break;case ANe:l.push({ind:a6a(E,B.n,t),mode:N,doc:B.contents});break;case K4e:o-=ZRr(A);break;case fce:switch(N){case uj:if(!f){l.push({ind:E,mode:B.break?IV:uj,doc:B.contents});break}case IV:{f=!1;let F={ind:E,mode:uj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&mbt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=n4(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:IV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:IV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:uj,doc:ce};if(mbt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:IV,doc:B.contents});break}}B.id&&(r[B.id]=n4(!1,l,-1).mode);break;case Nme:{let F=n-o,Q=B[GRr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:uj,doc:ne},ue={ind:E,mode:IV,doc:ne},de=mbt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:uj,doc:ce},Se={ind:E,mode:IV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[GRr]:Q+2}};mbt({ind:E,mode:uj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case dce:case j4e:{let F=B.groupId?r[B.groupId]:N;if(F===IV){let Q=B.type===dce?B.breakContents:B.negate?B.contents:kRr(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===uj){let Q=B.type===dce?B.flatContents:B.negate?kRr(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case z4e:I.push({ind:E,mode:N,doc:B.contents});break;case q4e:I.length>0&&l.push({ind:E,mode:N,doc:YRr});break;case Eee:switch(N){case uj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case IV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=ZRr(A),A.push(a+E.value),o=E.length);break}break;case $4e:l.push({ind:E,mode:N,doc:B.contents});break;case dNe:break;default:throw new ybt(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(iNe);if(b!==-1){let E=A.indexOf(iNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==iNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function l6a(e,t,r){let{node:n}=e,a=[],o=e.map(()=>e.map(({index:b})=>{let E=c6a(r(),t).formatted,N=XRr(E);return a[b]=Math.max(a[b]??3,N),{text:E,width:N}},"children"),"children"),l=f(!1);if(t.proseWrap!=="never")return[Ebt,l];let A=f(!0);return[Ebt,Cbt(fja(A,l))];function f(b){return S2i(YRr,[C(o[0],b),I(b),...o.slice(1).map(E=>C(E,b))].map(E=>`| ${E.join(" | ")} |`))}function I(b){return a.map((E,N)=>{let B=n.align[N],F=B==="center"||B==="left"?":":"-",Q=B==="center"||B==="right"?":":"-",X=b?"-":"-".repeat(E-2);return`${F}${X}${Q}`})}function C(b,E){return b.map(({text:N,width:B},F)=>{if(E)return N;let Q=a[F]-B,X=n.align[F],ae=0;X==="right"?ae=Q:X==="center"&&(ae=Math.floor(Q/2));let ne=Q-ae;return`${" ".repeat(ae)}${N}${" ".repeat(ne)}`})}}function u6a(e,t,r){let n=e.map(r,"children");return g6a(n)}function g6a(e){let t=[""];return function r(n){for(let a of n){let o=Ice(a);if(o===pce){r(a);continue}let l=a,A=[];o===Nme&&([l,...A]=a.parts),t.push([t.pop(),l],...A)}}(e),HRr(t)}var r4,A6a=class{constructor(e){kKa(this,r4),xKa(this,r4,new Set(e))}getLeadingWhitespaceCount(e){let t=Ace(this,r4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return Ace(this,r4).has(e.charAt(0))}hasTrailingWhitespace(e){return Ace(this,r4).has(n4(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Tbt([...Ace(this,r4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=Ace(this,r4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=Ace(this,r4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=Ace(this,r4);return Array.prototype.every.call(e,r=>t.has(r))}};r4=new WeakMap;var d6a=A6a,p6a=[" ",` +`,"\f","\r"," "],f6a=new d6a(p6a),U1i=f6a,I6a=/^.$/su;function h6a(e,t){return e=m6a(e,t),e=_6a(e),e=b6a(e,t),e=E6a(e,t),e=y6a(e),e}function m6a(e,t){return pNe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!I6a.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function C6a(e,t,r){return pNe(e,n=>{if(!n.children)return n;let a=n.children.reduce((o,l)=>{let A=n4(!1,o,-1);return A&&t(A,l)?o.splice(-1,1,r(A,l)):o.push(l),o},[]);return{...n,children:a}})}function _6a(e){return C6a(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function y6a(e){return pNe(e,(t,r,[n])=>{if(t.type!=="text")return t;let{value:a}=t;return n.type==="paragraph"&&(r===0&&(a=U1i.trimStart(a)),r===n.children.length-1&&(a=U1i.trimEnd(a))),{type:"sentence",position:t.position,children:D2i(a)}})}function b6a(e,t){return pNe(e,(r,n,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let l=0;l{if(a.type==="list"&&a.children.length>0){for(let A=0;A1)return!0;let A=r(o);if(A===-1)return!1;if(a.children.length===1)return A%t.tabWidth===0;let f=r(l);return A!==f?!1:A%t.tabWidth===0?!0:Q4e(l,t).leadingSpaces.length>1}}var S6a=h6a;function v6a(e,t){let r=[""];return e.each(()=>{let{node:n}=e,a=t();switch(n.type){case"whitespace":if(Ice(a)!==Rme){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),HRr(r)}var B6a=new Set(["heading","tableCell","link","wikiLink"]),K1i=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function w6a({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let n=1;nt[""]}return e.usesCJSpaces}function T6a(e,t){if(t)return!0;let{previous:r,next:n}=e;if(!r||!n)return!0;let a=r.kind,o=n.kind;return j1i(a)&&j1i(o)||a===oNe&&o===yee||o===oNe&&a===yee?!0:a===Bbt||o===Bbt||a===yee&&o===yee?!1:K1i.has(n.value[0])||K1i.has(n4(!1,r.value,-1))?!0:r.hasTrailingPunctuation||n.hasLeadingPunctuation?!1:w6a(e)}function j1i(e){return e===J4e||e===oNe}function R6a(e,t,r,n){if(r!=="always"||e.hasAncestor(l=>B6a.has(l.type)))return!1;if(n)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===oNe&&o.kind===yee||o.kind===oNe&&a.kind===yee?!0:!(a.isCJ||o.isCJ)}function z1i(e,t,r,n){if(r==="preserve"&&t===` `)return DR;let a=t===" "||t===` -`&&$ja(e,n);return e6a(e,t,r,n)?a?a2i:c2i:a?" ":""}var t6a=new Set(["listItem","definition"]);function r6a(e,t,r){var n,a;let{node:o}=e;if(c6a(e)){let l=[""],A=I2i(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of A){if(f.type==="word"){l.push([l.pop(),f.value]);continue}let I=Z1i(e,f.value,t.proseWrap,!0);if(fce(I)===Tme){l.push([l.pop(),I]);continue}l.push(I,"")}return VRr(l)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[s6a(e,t,r),DR];case"paragraph":return Fja(e,t,r);case"sentence":return jja(e,r);case"word":{let l=DG(!1,DG(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${M4e.source})(_+)`,`(_+)(${M4e.source}|$)`].join("|"),"gu"),(I,C,b,E,N)=>DG(!1,b?`${C}${b}`:`${E}${N}`,"_",String.raw`\_`)),A=(I,C,b)=>I.type==="sentence"&&b===0,f=(I,C,b)=>k1i(I.children[b-1]);return l!==o.value&&(e.match(void 0,A,f)||e.match(void 0,A,(I,C,b)=>I.type==="emphasis"&&b===0,f))&&(l=l.replace(/^(\\?[*_])+/u,I=>DG(!1,I,"\\",""))),l}case"whitespace":{let{next:l}=e,A=l&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(l.value)?"never":t.proseWrap;return Z1i(e,o.value,A)}case"emphasis":{let l;if(k1i(o.children[0]))l=t.originalText[o.position.start.offset];else{let{previous:A,next:f}=e;l=A?.type==="sentence"&&((n=n4(!1,A.children,-1))==null?void 0:n.type)==="word"&&!n4(!1,A.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(I=>I.type==="emphasis")?"*":"_"}return[l,fV(e,t,r),l]}case"strong":return["**",fV(e,t,r),"**"];case"delete":return["~~",fV(e,t,r),"~~"];case"inlineCode":{let l=t.proseWrap==="preserve"?o.value:DG(!1,o.value,` -`," "),A=Y8a(l,"`"),f="`".repeat(A||1),I=l.startsWith("`")||l.endsWith("`")||/^[\n ]/u.test(l)&&/[\n ]$/u.test(l)&&/[^\n ]/u.test(l)?" ":"";return[f,I,l,I,f]}case"wikiLink":{let l="";return t.proseWrap==="preserve"?l=o.value:l=DG(!1,o.value,/[\t\n]+/gu," "),["[[",l,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let l="mailto:";return["<",o.url.startsWith(l)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+l.length)!==l?o.url.slice(l.length):o.url,">"]}case"[":return["[",fV(e,t,r),"](",vRr(o.url,")"),mbt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",vRr(o.url,")"),mbt(o.title,t),")"];case"blockquote":return["> ",wme("> ",fV(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",fV(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return wme(f,[f,tNe(o.value,DR)])}let l=t.__inJsTemplate?"~":"`",A=l.repeat(Math.max(3,u2i(o.value,l)+1));return[A,o.lang||"",o.meta?" "+o.meta:"",DR,tNe(h2i(o,t.originalText),DR),DR,A]}case"html":{let{parent:l,isLast:A}=e,f=l.type==="root"&&A?o.value.trimEnd():o.value,I=/^$/su.test(f);return tNe(f,I?DR:_bt(TRr))}case"list":{let l=V1i(o,e.parent),A=dja(o,t);return fV(e,t,r,{processor(f){let I=b(),C=f.node;if(C.children.length===2&&C.children[1].type==="html"&&C.children[0].position.start.column!==C.children[1].position.start.column)return[I,L1i(f,t,r,I)];return[I,wme(" ".repeat(I.length),L1i(f,t,r,I))];function b(){let E=o.ordered?(f.isFirst?o.start:A?1:o.start+f.index)+(l%2===0?". ":") "):l%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?n6a(E,t):E}}})}case"thematicBreak":{let{ancestors:l}=e,A=l.findIndex(f=>f.type==="list");return A===-1?"---":V1i(l[A],l[A+1])%2===0?"***":"---"}case"linkReference":return["[",fV(e,t,r),"]",o.referenceType==="full"?BRr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",BRr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let l=t.proseWrap==="always"?a2i:" ";return hbt([BRr(o),":",wRr([l,vRr(o.url),o.title===null?"":[l,mbt(o.title,t,!1)]])])}case"footnote":return["[^",fV(e,t,r),"]"];case"footnoteReference":return M1i(o);case"footnoteDefinition":{let l=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[M1i(o),": ",l?fV(e,t,r):hbt([wme(" ".repeat(4),fV(e,t,r,{processor:({isFirst:A})=>A?hbt([c2i,r()]):r()}))])]}case"table":return Gja(e,t,r);case"tableCell":return fV(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",_bt(TRr)]:["\\",DR];case"liquidNode":return tNe(o.value,DR);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",DR,o.value?[tNe(o.value,DR),DR]:"","$$"];case"inlineMath":return t.originalText.slice(bbt(o),Ebt(o));case"tableRow":case"listItem":case"text":default:throw new U8a(o,"Markdown")}}function L1i(e,t,r,n){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,fV(e,t,r,{processor({node:l,isFirst:A}){if(A&&l.type!=="list")return wme(" ".repeat(o.length),r());let f=" ".repeat(u6a(t.tabWidth-n.length,0,3));return[f,wme(f,r())]}})]}function n6a(e,t){let r=n();return e+" ".repeat(r>=4?0:r);function n(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function V1i(e,t){return i6a(e,t,r=>r.ordered===e.ordered)}function i6a(e,t,r){let n=-1;for(let a of t.children)if(a.type===e.type&&r(a)?n++:n=-1,a===e)return n}function s6a(e,t,r){let n=[],a=null,{children:o}=e.node;for(let[l,A]of o.entries())switch(MRr(A)){case"start":a===null&&(a={index:l,offset:A.position.end.offset});break;case"end":a!==null&&(n.push({start:a,end:{index:l,offset:A.position.start.offset}}),a=null);break;default:break}return fV(e,t,r,{processor({index:l}){if(n.length>0){let A=n[0];if(l===A.start.index)return[P1i(o[A.start.index]),t.originalText.slice(A.start.offset,A.end.offset),P1i(o[A.end.index])];if(A.start.index{let l=a(e);l!==!1&&(o.length>0&&o6a(e)&&(o.push(DR),(a6a(e,t)||O1i(e))&&o.push(DR),O1i(e)&&o.push(DR)),o.push(l))},"children"),o}function P1i(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function MRr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function o6a({node:e,parent:t}){let r=p2i.has(e.type),n=e.type==="html"&&f2i.has(t.type);return!r&&!n}function W1i(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` -`)}function a6a({node:e,previous:t,parent:r},n){if(W1i(t,n))return!0;let a=t.type===e.type&&t6a.has(e.type),o=r.type==="listItem"&&!W1i(r,n),l=MRr(t)==="next",A=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||l||A||f)}function O1i({node:e,previous:t}){let r=t.type==="list",n=e.type==="code"&&e.isIndented;return r&&n}function c6a(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var l6a=(e,t)=>{for(let r of t)e=DG(!1,e,r,encodeURIComponent(r));return e};function vRr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(n=>Bbt(n)).join("|"),"u").test(e)?`<${l6a(e,"<>")}>`:e}function mbt(e,t,r=!0){if(!e)return"";if(r)return" "+mbt(e,t,!1);if(e=DG(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let n=X8a(e,t.singleQuote);return e=DG(!1,e,"\\","\\\\"),e=DG(!1,e,n,`\\${n}`),`${n}${e}${n}`}function u6a(e,t,r){return Math.max(t,Math.min(e,r))}function g6a(e){return e.index>0&&MRr(e.previous)==="next"}function BRr(e){return`[${(0,N8a.default)(e.label)}]`}function M1i(e){return`[^${e.label}]`}var A6a={preprocess:Kja,print:r6a,embed:fja,massageAstNode:nja,hasPrettierIgnore:g6a,insertPragma:tja,getVisitorKeys:Eja},d6a=A6a,C2i=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],H1i={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},p6a={proseWrap:H1i.proseWrap,singleQuote:H1i.singleQuote},_2i=p6a,HRr={};J1i(HRr,{markdown:()=>Q1i,mdx:()=>G6a,remark:()=>Q1i});var f6a=sNe(sKa(),1),I6a=sNe(cKa(),1),h6a=sNe(p8a(),1),m6a=sNe(w8a(),1),C6a=/^import\s/u,_6a=/^export\s/u,y6a=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,b6a=/|/u,E6a=/^\{\s*\/\*(.*)\*\/\s*\}/u,S6a=` +`&&T6a(e,n);return R6a(e,t,r,n)?a?b2i:E2i:a?" ":""}var N6a=new Set(["listItem","definition"]);function D6a(e,t,r){var n,a;let{node:o}=e;if(L6a(e)){let l=[""],A=D2i(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of A){if(f.type==="word"){l.push([l.pop(),f.value]);continue}let I=z1i(e,f.value,t.proseWrap,!0);if(Ice(I)===Rme){l.push([l.pop(),I]);continue}l.push(I,"")}return HRr(l)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[G6a(e,t,r),DR];case"paragraph":return u6a(e,t,r);case"sentence":return v6a(e,r);case"word":{let l=DG(!1,DG(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${Y4e.source})(_+)`,`(_+)(${Y4e.source}|$)`].join("|"),"gu"),(I,C,b,E,N)=>DG(!1,b?`${C}${b}`:`${E}${N}`,"_",String.raw`\_`)),A=(I,C,b)=>I.type==="sentence"&&b===0,f=(I,C,b)=>J1i(I.children[b-1]);return l!==o.value&&(e.match(void 0,A,f)||e.match(void 0,A,(I,C,b)=>I.type==="emphasis"&&b===0,f))&&(l=l.replace(/^(\\?[*_])+/u,I=>DG(!1,I,"\\",""))),l}case"whitespace":{let{next:l}=e,A=l&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(l.value)?"never":t.proseWrap;return z1i(e,o.value,A)}case"emphasis":{let l;if(J1i(o.children[0]))l=t.originalText[o.position.start.offset];else{let{previous:A,next:f}=e;l=A?.type==="sentence"&&((n=n4(!1,A.children,-1))==null?void 0:n.type)==="word"&&!n4(!1,A.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(I=>I.type==="emphasis")?"*":"_"}return[l,fV(e,t,r),l]}case"strong":return["**",fV(e,t,r),"**"];case"delete":return["~~",fV(e,t,r),"~~"];case"inlineCode":{let l=t.proseWrap==="preserve"?o.value:DG(!1,o.value,` +`," "),A=Cja(l,"`"),f="`".repeat(A||1),I=l.startsWith("`")||l.endsWith("`")||/^[\n ]/u.test(l)&&/[\n ]$/u.test(l)&&/[^\n ]/u.test(l)?" ":"";return[f,I,l,I,f]}case"wikiLink":{let l="";return t.proseWrap==="preserve"?l=o.value:l=DG(!1,o.value,/[\t\n]+/gu," "),["[[",l,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let l="mailto:";return["<",o.url.startsWith(l)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+l.length)!==l?o.url.slice(l.length):o.url,">"]}case"[":return["[",fV(e,t,r),"](",NRr(o.url,")"),_bt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",NRr(o.url,")"),_bt(o.title,t),")"];case"blockquote":return["> ",Tme("> ",fV(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",fV(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return Tme(f,[f,nNe(o.value,DR)])}let l=t.__inJsTemplate?"~":"`",A=l.repeat(Math.max(3,v2i(o.value,l)+1));return[A,o.lang||"",o.meta?" "+o.meta:"",DR,nNe(k2i(o,t.originalText),DR),DR,A]}case"html":{let{parent:l,isLast:A}=e,f=l.type==="root"&&A?o.value.trimEnd():o.value,I=/^$/su.test(f);return nNe(f,I?DR:bbt(xRr))}case"list":{let l=$1i(o,e.parent),A=Mja(o,t);return fV(e,t,r,{processor(f){let I=b(),C=f.node;if(C.children.length===2&&C.children[1].type==="html"&&C.children[0].position.start.column!==C.children[1].position.start.column)return[I,q1i(f,t,r,I)];return[I,Tme(" ".repeat(I.length),q1i(f,t,r,I))];function b(){let E=o.ordered?(f.isFirst?o.start:A?1:o.start+f.index)+(l%2===0?". ":") "):l%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?k6a(E,t):E}}})}case"thematicBreak":{let{ancestors:l}=e,A=l.findIndex(f=>f.type==="list");return A===-1?"---":$1i(l[A],l[A+1])%2===0?"***":"---"}case"linkReference":return["[",fV(e,t,r),"]",o.referenceType==="full"?DRr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",DRr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let l=t.proseWrap==="always"?b2i:" ";return Cbt([DRr(o),":",kRr([l,NRr(o.url),o.title===null?"":[l,_bt(o.title,t,!1)]])])}case"footnote":return["[^",fV(e,t,r),"]"];case"footnoteReference":return n2i(o);case"footnoteDefinition":{let l=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[n2i(o),": ",l?fV(e,t,r):Cbt([Tme(" ".repeat(4),fV(e,t,r,{processor:({isFirst:A})=>A?Cbt([E2i,r()]):r()}))])]}case"table":return l6a(e,t,r);case"tableCell":return fV(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",bbt(xRr)]:["\\",DR];case"liquidNode":return nNe(o.value,DR);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",DR,o.value?[nNe(o.value,DR),DR]:"","$$"];case"inlineMath":return t.originalText.slice(Sbt(o),vbt(o));case"tableRow":case"listItem":case"text":default:throw new Eja(o,"Markdown")}}function q1i(e,t,r,n){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,fV(e,t,r,{processor({node:l,isFirst:A}){if(A&&l.type!=="list")return Tme(" ".repeat(o.length),r());let f=" ".repeat(P6a(t.tabWidth-n.length,0,3));return[f,Tme(f,r())]}})]}function k6a(e,t){let r=n();return e+" ".repeat(r>=4?0:r);function n(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function $1i(e,t){return x6a(e,t,r=>r.ordered===e.ordered)}function x6a(e,t,r){let n=-1;for(let a of t.children)if(a.type===e.type&&r(a)?n++:n=-1,a===e)return n}function G6a(e,t,r){let n=[],a=null,{children:o}=e.node;for(let[l,A]of o.entries())switch(JRr(A)){case"start":a===null&&(a={index:l,offset:A.position.end.offset});break;case"end":a!==null&&(n.push({start:a,end:{index:l,offset:A.position.start.offset}}),a=null);break;default:break}return fV(e,t,r,{processor({index:l}){if(n.length>0){let A=n[0];if(l===A.start.index)return[e2i(o[A.start.index]),t.originalText.slice(A.start.offset,A.end.offset),e2i(o[A.end.index])];if(A.start.index{let l=a(e);l!==!1&&(o.length>0&&F6a(e)&&(o.push(DR),(Z6a(e,t)||r2i(e))&&o.push(DR),r2i(e)&&o.push(DR)),o.push(l))},"children"),o}function e2i(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function JRr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function F6a({node:e,parent:t}){let r=R2i.has(e.type),n=e.type==="html"&&N2i.has(t.type);return!r&&!n}function t2i(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` +`)}function Z6a({node:e,previous:t,parent:r},n){if(t2i(t,n))return!0;let a=t.type===e.type&&N6a.has(e.type),o=r.type==="listItem"&&!t2i(r,n),l=JRr(t)==="next",A=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||l||A||f)}function r2i({node:e,previous:t}){let r=t.type==="list",n=e.type==="code"&&e.isIndented;return r&&n}function L6a(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var V6a=(e,t)=>{for(let r of t)e=DG(!1,e,r,encodeURIComponent(r));return e};function NRr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(n=>Tbt(n)).join("|"),"u").test(e)?`<${V6a(e,"<>")}>`:e}function _bt(e,t,r=!0){if(!e)return"";if(r)return" "+_bt(e,t,!1);if(e=DG(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let n=yja(e,t.singleQuote);return e=DG(!1,e,"\\","\\\\"),e=DG(!1,e,n,`\\${n}`),`${n}${e}${n}`}function P6a(e,t,r){return Math.max(t,Math.min(e,r))}function W6a(e){return e.index>0&&JRr(e.previous)==="next"}function DRr(e){return`[${(0,sja.default)(e.label)}]`}function n2i(e){return`[^${e.label}]`}var O6a={preprocess:S6a,print:D6a,embed:Yja,massageAstNode:kja,hasPrettierIgnore:W6a,insertPragma:Nja,getVisitorKeys:qja},M6a=O6a,G2i=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],i2i={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},H6a={proseWrap:i2i.proseWrap,singleQuote:i2i.singleQuote},F2i=H6a,URr={};c2i(URr,{markdown:()=>o2i,mdx:()=>l7a,remark:()=>o2i});var Y6a=aNe(GKa(),1),Q6a=aNe(LKa(),1),X6a=aNe(H8a(),1),J6a=aNe(rja(),1),U6a=/^import\s/u,K6a=/^export\s/u,j6a=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,z6a=/|/u,q6a=/^\{\s*\/\*(.*)\*\/\s*\}/u,$6a=` -`,y2i=e=>C6a.test(e),kRr=e=>_6a.test(e),b2i=(e,t)=>{let r=t.indexOf(S6a),n=t.slice(0,r);if(kRr(n)||y2i(n))return e(n)({type:kRr(n)?"export":"import",value:n})},E2i=(e,t)=>{let r=E6a.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};b2i.locator=e=>kRr(e)||y2i(e)?-1:1;E2i.locator=(e,t)=>e.indexOf("{",t);var v6a=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:n,inlineMethods:a}=e.prototype;t.esSyntax=b2i,n.esComment=E2i,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},B6a=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,n){let a=WRr(n);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},w6a=B6a;function T6a(){return e=>ANe(e,(t,r,[n])=>t.type!=="html"||b6a.test(t.value)||f2i.has(n.type)?t:{...t,type:"jsx"})}var R6a=T6a,N6a=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(n,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return n(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(n,a){return n.indexOf("{",a)}},D6a=N6a,k6a=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,n=r.inlineMethods;n.splice(n.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,l){let A=t.exec(l);if(A){let f=A.groups.linkContents.trim();return o(A[0])({type:e,value:f})}}a.locator=function(o,l){return o.indexOf("[",l)}},x6a=k6a;function S2i({isMDX:e}){return t=>{let r=(0,m6a.default)().use(h6a.default,{commonmark:!0,...e&&{blocks:[y6a]}}).use(f6a.default).use(w6a).use(I6a.default).use(e?v6a:Y1i).use(D6a).use(e?R6a:Y1i).use(x6a);return r.run(r.parse(t))}}function Y1i(){}var v2i={astFormat:"mdast",hasPragma:eja,locStart:bbt,locEnd:Ebt},Q1i={...v2i,parse:S2i({isMDX:!1})},G6a={...v2i,parse:S2i({isMDX:!0})},B2i={mdast:d6a},F6a=i2i;var Xme={};sI(Xme,{default:()=>Fnc,parsers:()=>Sce});var HSi=Object.defineProperty,YSi=e=>{throw TypeError(e)},Z6a=(e,t,r)=>t in e?HSi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,QSi=(e,t)=>{for(var r in t)HSi(e,r,{get:t[r],enumerable:!0})},$4e=(e,t,r)=>Z6a(e,typeof t!="symbol"?t+"":t,r),L6a=(e,t,r)=>t.has(e)||YSi("Cannot "+r),V6a=(e,t,r)=>t.has(e)?YSi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),fg=(e,t,r)=>(L6a(e,t,"access private method"),r),XSi={};QSi(XSi,{parsers:()=>Sce});var Sce={};QSi(Sce,{typescript:()=>Gnc});var P6a=()=>()=>{},TNr=P6a,W6a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},bNe=W6a,O6a="5.7",x2=[],M6a=new Map;function aJe(e){return e!==void 0?e.length:0}function hO(e,t){if(e!==void 0)for(let r=0;r0;return!1}function NNr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function J6a(e,t,r=kNr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;ne?.at(t):(e,t)=>{if(e!==void 0&&(t=sNr(e,t),t>1),f=r(e[A],A);switch(n(f,t)){case-1:o=A+1;break;case 0:return A;case 1:l=A-1;break}}return~o}function t7a(e,t,r,n,a){if(e&&e.length>0){let o=e.length;if(o>0){let l=n===void 0||n<0?0:n,A=a===void 0||l+a>o-1?o-1:l+a,f;for(arguments.length<=2?(f=e[l],l++):f=r;l<=A;)f=t(f,e[l],l),l++;return f}}return r}var jSi=Object.prototype.hasOwnProperty;function fj(e,t){return jSi.call(e,t)}function r7a(e){let t=[];for(let r in e)jSi.call(e,r)&&t.push(r);return t}function n7a(){let e=new Map;return e.add=i7a,e.remove=s7a,e}function i7a(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function s7a(e,t){let r=this.get(e);r!==void 0&&(p7a(r,t),r.length||this.delete(e))}function Tee(e){return Array.isArray(e)}function QRr(e){return Tee(e)?e:[e]}function o7a(e,t){return e!==void 0&&t(e)?e:void 0}function Aj(e,t){return e!==void 0&&t(e)?e:Zo.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Zo.getFunctionName(t)}'.`)}function RNe(e){}function a7a(){return!0}function VE(e){return e}function T2i(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function eH(e){let t=new Map;return r=>{let n=`${typeof r}:${r}`,a=t.get(n);return a===void 0&&!t.has(n)&&(a=e(r),t.set(n,a)),a}}function kNr(e,t){return e===t}function xNr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function c7a(e,t){return kNr(e,t)}function l7a(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?A-r:1),C=Math.floor(t.length>r+A?r+A:t.length);a[0]=A;let b=A;for(let N=1;Nr)return;let E=n;n=a,a=E}let l=n[t.length];return l>r?void 0:l}function A7a(e,t,r){let n=e.length-t.length;return n>=0&&(r?xNr(e.slice(n),t):e.indexOf(t,n)===n)}function d7a(e,t){e[t]=e[e.length-1],e.pop()}function p7a(e,t){return f7a(e,r=>r===t)}function f7a(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ft){return e.currentLogLevel<=Ft}e.shouldLog=r;function n(Ft,zr){e.loggingHost&&r(Ft)&&e.loggingHost.log(Ft,zr)}function a(Ft){n(3,Ft)}e.log=a,(Ft=>{function zr(ps){n(1,ps)}Ft.error=zr;function Rn(ps){n(2,ps)}Ft.warn=Rn;function Or(ps){n(3,ps)}Ft.log=Or;function Qi(ps){n(4,ps)}Ft.trace=Qi})(a=e.log||(e.log={}));let o={};function l(){return t}e.getAssertionLevel=l;function A(Ft){let zr=t;if(t=Ft,Ft>zr)for(let Rn of r7a(o)){let Or=o[Rn];Or!==void 0&&e[Rn]!==Or.assertion&&Ft>=Or.level&&(e[Rn]=Or,o[Rn]=void 0)}}e.setAssertionLevel=A;function f(Ft){return t>=Ft}e.shouldAssert=f;function I(Ft,zr){return f(Ft)?!0:(o[zr]={level:Ft,assertion:e[zr]},e[zr]=RNe,!1)}function C(Ft,zr){debugger;let Rn=new Error(Ft?`Debug Failure. ${Ft}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Rn,zr||C),Rn}e.fail=C;function b(Ft,zr,Rn){return C(`${zr||"Unexpected node."}\r +`,Z2i=e=>U6a.test(e),LRr=e=>K6a.test(e),L2i=(e,t)=>{let r=t.indexOf($6a),n=t.slice(0,r);if(LRr(n)||Z2i(n))return e(n)({type:LRr(n)?"export":"import",value:n})},V2i=(e,t)=>{let r=q6a.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};L2i.locator=e=>LRr(e)||Z2i(e)?-1:1;V2i.locator=(e,t)=>e.indexOf("{",t);var e7a=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:n,inlineMethods:a}=e.prototype;t.esSyntax=L2i,n.esComment=V2i,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},t7a=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,n){let a=QRr(n);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},r7a=t7a;function n7a(){return e=>pNe(e,(t,r,[n])=>t.type!=="html"||z6a.test(t.value)||N2i.has(n.type)?t:{...t,type:"jsx"})}var i7a=n7a,s7a=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(n,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return n(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(n,a){return n.indexOf("{",a)}},o7a=s7a,a7a=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,n=r.inlineMethods;n.splice(n.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,l){let A=t.exec(l);if(A){let f=A.groups.linkContents.trim();return o(A[0])({type:e,value:f})}}a.locator=function(o,l){return o.indexOf("[",l)}},c7a=a7a;function P2i({isMDX:e}){return t=>{let r=(0,J6a.default)().use(X6a.default,{commonmark:!0,...e&&{blocks:[j6a]}}).use(Y6a.default).use(r7a).use(Q6a.default).use(e?e7a:s2i).use(o7a).use(e?i7a:s2i).use(c7a);return r.run(r.parse(t))}}function s2i(){}var W2i={astFormat:"mdast",hasPragma:Rja,locStart:Sbt,locEnd:vbt},o2i={...W2i,parse:P2i({isMDX:!1})},l7a={...W2i,parse:P2i({isMDX:!0})},O2i={mdast:M6a},u7a=C2i;var Jme={};sI(Jme,{default:()=>uic,parsers:()=>vce});var ivi=Object.defineProperty,svi=e=>{throw TypeError(e)},g7a=(e,t,r)=>t in e?ivi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ovi=(e,t)=>{for(var r in t)ivi(e,r,{get:t[r],enumerable:!0})},tJe=(e,t,r)=>g7a(e,typeof t!="symbol"?t+"":t,r),A7a=(e,t,r)=>t.has(e)||svi("Cannot "+r),d7a=(e,t,r)=>t.has(e)?svi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),fg=(e,t,r)=>(A7a(e,t,"access private method"),r),avi={};ovi(avi,{parsers:()=>vce});var vce={};ovi(vce,{typescript:()=>lic});var p7a=()=>()=>{},xNr=p7a,f7a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},SNe=f7a,I7a="5.7",x2=[],h7a=new Map;function lJe(e){return e!==void 0?e.length:0}function hO(e,t){if(e!==void 0)for(let r=0;r0;return!1}function FNr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function b7a(e,t,r=LNr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;ne?.at(t):(e,t)=>{if(e!==void 0&&(t=uNr(e,t),t>1),f=r(e[A],A);switch(n(f,t)){case-1:o=A+1;break;case 0:return A;case 1:l=A-1;break}}return~o}function N7a(e,t,r,n,a){if(e&&e.length>0){let o=e.length;if(o>0){let l=n===void 0||n<0?0:n,A=a===void 0||l+a>o-1?o-1:l+a,f;for(arguments.length<=2?(f=e[l],l++):f=r;l<=A;)f=t(f,e[l],l),l++;return f}}return r}var gvi=Object.prototype.hasOwnProperty;function fj(e,t){return gvi.call(e,t)}function D7a(e){let t=[];for(let r in e)gvi.call(e,r)&&t.push(r);return t}function k7a(){let e=new Map;return e.add=x7a,e.remove=G7a,e}function x7a(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function G7a(e,t){let r=this.get(e);r!==void 0&&(H7a(r,t),r.length||this.delete(e))}function Ree(e){return Array.isArray(e)}function jRr(e){return Ree(e)?e:[e]}function F7a(e,t){return e!==void 0&&t(e)?e:void 0}function Aj(e,t){return e!==void 0&&t(e)?e:Zo.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Zo.getFunctionName(t)}'.`)}function DNe(e){}function Z7a(){return!0}function VE(e){return e}function H2i(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function eH(e){let t=new Map;return r=>{let n=`${typeof r}:${r}`,a=t.get(n);return a===void 0&&!t.has(n)&&(a=e(r),t.set(n,a)),a}}function LNr(e,t){return e===t}function VNr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function L7a(e,t){return LNr(e,t)}function V7a(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?A-r:1),C=Math.floor(t.length>r+A?r+A:t.length);a[0]=A;let b=A;for(let N=1;Nr)return;let E=n;n=a,a=E}let l=n[t.length];return l>r?void 0:l}function O7a(e,t,r){let n=e.length-t.length;return n>=0&&(r?VNr(e.slice(n),t):e.indexOf(t,n)===n)}function M7a(e,t){e[t]=e[e.length-1],e.pop()}function H7a(e,t){return Y7a(e,r=>r===t)}function Y7a(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ft){return e.currentLogLevel<=Ft}e.shouldLog=r;function n(Ft,zr){e.loggingHost&&r(Ft)&&e.loggingHost.log(Ft,zr)}function a(Ft){n(3,Ft)}e.log=a,(Ft=>{function zr(ps){n(1,ps)}Ft.error=zr;function Rn(ps){n(2,ps)}Ft.warn=Rn;function Or(ps){n(3,ps)}Ft.log=Or;function Qi(ps){n(4,ps)}Ft.trace=Qi})(a=e.log||(e.log={}));let o={};function l(){return t}e.getAssertionLevel=l;function A(Ft){let zr=t;if(t=Ft,Ft>zr)for(let Rn of D7a(o)){let Or=o[Rn];Or!==void 0&&e[Rn]!==Or.assertion&&Ft>=Or.level&&(e[Rn]=Or,o[Rn]=void 0)}}e.setAssertionLevel=A;function f(Ft){return t>=Ft}e.shouldAssert=f;function I(Ft,zr){return f(Ft)?!0:(o[zr]={level:Ft,assertion:e[zr]},e[zr]=DNe,!1)}function C(Ft,zr){debugger;let Rn=new Error(Ft?`Debug Failure. ${Ft}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Rn,zr||C),Rn}e.fail=C;function b(Ft,zr,Rn){return C(`${zr||"Unexpected node."}\r Node ${Yt(Ft.kind)} was unexpected.`,Rn||b)}e.failBadSyntaxKind=b;function E(Ft,zr,Rn,Or){Ft||(zr=zr?`False expression: ${zr}`:"False expression.",Rn&&(zr+=`\r -Verbose Debug Information: `+(typeof Rn=="string"?Rn:Rn())),C(zr,Or||E))}e.assert=E;function N(Ft,zr,Rn,Or,Qi){if(Ft!==zr){let ps=Rn?Or?`${Rn} ${Or}`:Rn:"";C(`Expected ${Ft} === ${zr}. ${ps}`,Qi||N)}}e.assertEqual=N;function B(Ft,zr,Rn,Or){Ft>=zr&&C(`Expected ${Ft} < ${zr}. ${Rn||""}`,Or||B)}e.assertLessThan=B;function F(Ft,zr,Rn){Ft>zr&&C(`Expected ${Ft} <= ${zr}`,Rn||F)}e.assertLessThanOrEqual=F;function Q(Ft,zr,Rn){Ft= ${zr}`,Rn||Q)}e.assertGreaterThanOrEqual=Q;function X(Ft,zr,Rn){Ft==null&&C(zr,Rn||X)}e.assertIsDefined=X;function ae(Ft,zr,Rn){return X(Ft,zr,Rn||ae),Ft}e.checkDefined=ae;function ne(Ft,zr,Rn){for(let Or of Ft)X(Or,zr,Rn||ne)}e.assertEachIsDefined=ne;function ce(Ft,zr,Rn){return ne(Ft,zr,Rn||ce),Ft}e.checkEachDefined=ce;function fe(Ft,zr="Illegal value:",Rn){let Or=typeof Ft=="object"&&fj(Ft,"kind")&&fj(Ft,"pos")?"SyntaxKind: "+Yt(Ft.kind):JSON.stringify(Ft);return C(`${zr} ${Or}`,Rn||fe)}e.assertNever=fe;function ue(Ft,zr,Rn,Or){I(1,"assertEachNode")&&E(zr===void 0||RNr(Ft,zr),Rn||"Unexpected node.",()=>`Node array did not pass test '${ct(zr)}'.`,Or||ue)}e.assertEachNode=ue;function de(Ft,zr,Rn,Or){I(1,"assertNode")&&E(Ft!==void 0&&(zr===void 0||zr(Ft)),Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} did not pass test '${ct(zr)}'.`,Or||de)}e.assertNode=de;function be(Ft,zr,Rn,Or){I(1,"assertNotNode")&&E(Ft===void 0||zr===void 0||!zr(Ft),Rn||"Unexpected node.",()=>`Node ${Yt(Ft.kind)} should not have passed test '${ct(zr)}'.`,Or||be)}e.assertNotNode=be;function Se(Ft,zr,Rn,Or){I(1,"assertOptionalNode")&&E(zr===void 0||Ft===void 0||zr(Ft),Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} did not pass test '${ct(zr)}'.`,Or||Se)}e.assertOptionalNode=Se;function De(Ft,zr,Rn,Or){I(1,"assertOptionalToken")&&E(zr===void 0||Ft===void 0||Ft.kind===zr,Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} was not a '${Yt(zr)}' token.`,Or||De)}e.assertOptionalToken=De;function k(Ft,zr,Rn){I(1,"assertMissingNode")&&E(Ft===void 0,zr||"Unexpected node.",()=>`Node ${Yt(Ft.kind)} was unexpected'.`,Rn||k)}e.assertMissingNode=k;function et(Ft){}e.type=et;function ct(Ft){if(typeof Ft!="function")return"";if(fj(Ft,"name"))return Ft.name;{let zr=Function.prototype.toString.call(Ft),Rn=/^function\s+([\w$]+)\s*\(/.exec(zr);return Rn?Rn[1]:""}}e.getFunctionName=ct;function Me(Ft){return`{ name: ${hJe(Ft.escapedName)}; flags: ${Xt(Ft.flags)}; declarations: ${iNr(Ft.declarations,zr=>Yt(zr.kind))} }`}e.formatSymbol=Me;function je(Ft=0,zr,Rn){let Or=At(zr);if(Ft===0)return Or.length>0&&Or[0][0]===0?Or[0][1]:"0";if(Rn){let Qi=[],ps=Ft;for(let[yo,bo]of Or){if(yo>Ft)break;yo!==0&&yo&Ft&&(Qi.push(bo),ps&=~yo)}if(ps===0)return Qi.join("|")}else for(let[Qi,ps]of Or)if(Qi===Ft)return ps;return Ft.toString()}e.formatEnum=je;let St=new Map;function At(Ft){let zr=St.get(Ft);if(zr)return zr;let Rn=[];for(let Qi in Ft){let ps=Ft[Qi];typeof ps=="number"&&Rn.push([ps,Qi])}let Or=j6a(Rn,(Qi,ps)=>zSi(Qi[0],ps[0]));return St.set(Ft,Or),Or}function Yt(Ft){return je(Ft,Tp,!1)}e.formatSyntaxKind=Yt;function Tr(Ft){return je(Ft,ovi,!1)}e.formatSnippetKind=Tr;function Nr(Ft){return je(Ft,Bee,!1)}e.formatScriptKind=Nr;function er(Ft){return je(Ft,IO,!0)}e.formatNodeFlags=er;function vt(Ft){return je(Ft,tvi,!0)}e.formatNodeCheckFlags=vt;function xt(Ft){return je(Ft,qSi,!0)}e.formatModifierFlags=xt;function Zr(Ft){return je(Ft,svi,!0)}e.formatTransformFlags=Zr;function qt(Ft){return je(Ft,avi,!0)}e.formatEmitFlags=qt;function Xt(Ft){return je(Ft,evi,!0)}e.formatSymbolFlags=Xt;function lr(Ft){return je(Ft,kG,!0)}e.formatTypeFlags=lr;function cr(Ft){return je(Ft,nvi,!0)}e.formatSignatureFlags=cr;function Ar(Ft){return je(Ft,rvi,!0)}e.formatObjectFlags=Ar;function qr(Ft){return je(Ft,aNr,!0)}e.formatFlowFlags=qr;function _n(Ft){return je(Ft,$Si,!0)}e.formatRelationComparisonResult=_n;function ke(Ft){return je(Ft,CheckMode,!0)}e.formatCheckMode=ke;function jt(Ft){return je(Ft,SignatureCheckMode,!0)}e.formatSignatureCheckMode=jt;function Fn(Ft){return je(Ft,TypeFacts,!0)}e.formatTypeFacts=Fn;let Nn=!1,Hi;function po(Ft){"__debugFlowFlags"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(){let zr=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Rn=this.flags&-2048;return`${zr}${Rn?` (${qr(Rn)})`:""}`}},__debugFlowFlags:{get(){return je(this.flags,aNr,!0)}},__debugToString:{value(){return Wr(this)}}})}function Vr(Ft){return Nn&&(typeof Object.setPrototypeOf=="function"?(Hi||(Hi=Object.create(Object.prototype),po(Hi)),Object.setPrototypeOf(Ft,Hi)):po(Ft)),Ft}e.attachFlowNodeDebugInfo=Vr;let xi;function io(Ft){"__tsDebuggerDisplay"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(zr){return zr=String(zr).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${zr}`}}})}function ga(Ft){Nn&&(typeof Object.setPrototypeOf=="function"?(xi||(xi=Object.create(Array.prototype),io(xi)),Object.setPrototypeOf(Ft,xi)):io(Ft))}e.attachNodeArrayDebugInfo=ga;function Ya(){if(Nn)return;let Ft=new WeakMap,zr=new WeakMap;Object.defineProperties(k2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Or=this.flags&33554432?"TransientSymbol":"Symbol",Qi=this.flags&-33554433;return`${Or} '${uNr(this)}'${Qi?` (${Xt(Qi)})`:""}`}},__debugFlags:{get(){return Xt(this.flags)}}}),Object.defineProperties(k2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Or=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Qi=this.flags&524288?this.objectFlags&-1344:0;return`${Or}${this.symbol?` '${uNr(this.symbol)}'`:""}${Qi?` (${Ar(Qi)})`:""}`}},__debugFlags:{get(){return lr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Ar(this.objectFlags):""}},__debugTypeToString:{value(){let Or=Ft.get(this);return Or===void 0&&(Or=this.checker.typeToString(this),Ft.set(this,Or)),Or}}}),Object.defineProperties(k2.getSignatureConstructor().prototype,{__debugFlags:{get(){return cr(this.flags)}},__debugSignatureToString:{value(){var Or;return(Or=this.checker)==null?void 0:Or.signatureToString(this)}}});let Rn=[k2.getNodeConstructor(),k2.getIdentifierConstructor(),k2.getTokenConstructor(),k2.getSourceFileConstructor()];for(let Or of Rn)fj(Or.prototype,"__debugKind")||Object.defineProperties(Or.prototype,{__tsDebuggerDisplay:{value(){return`${SNe(this)?"GeneratedIdentifier":$C(this)?`Identifier '${yV(this)}'`:Yme(this)?`PrivateIdentifier '${yV(this)}'`:tEt(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:DNe(this)?`NumericLiteral ${this.text}`:D$a(this)?`BigIntLiteral ${this.text}n`:tBi(this)?"TypeParameterDeclaration":Ubt(this)?"ParameterDeclaration":rBi(this)?"ConstructorDeclaration":hNr(this)?"GetAccessorDeclaration":jbt(this)?"SetAccessorDeclaration":P$a(this)?"CallSignatureDeclaration":W$a(this)?"ConstructSignatureDeclaration":nBi(this)?"IndexSignatureDeclaration":O$a(this)?"TypePredicateNode":iBi(this)?"TypeReferenceNode":sBi(this)?"FunctionTypeNode":oBi(this)?"ConstructorTypeNode":M$a(this)?"TypeQueryNode":H$a(this)?"TypeLiteralNode":Y$a(this)?"ArrayTypeNode":Q$a(this)?"TupleTypeNode":J$a(this)?"OptionalTypeNode":U$a(this)?"RestTypeNode":K$a(this)?"UnionTypeNode":j$a(this)?"IntersectionTypeNode":z$a(this)?"ConditionalTypeNode":q$a(this)?"InferTypeNode":$$a(this)?"ParenthesizedTypeNode":eec(this)?"ThisTypeNode":tec(this)?"TypeOperatorNode":rec(this)?"IndexedAccessTypeNode":nec(this)?"MappedTypeNode":iec(this)?"LiteralTypeNode":X$a(this)?"NamedTupleMember":sec(this)?"ImportTypeNode":Yt(this.kind)}${this.flags?` (${er(this.flags)})`:""}`}},__debugKind:{get(){return Yt(this.kind)}},__debugNodeFlags:{get(){return er(this.flags)}},__debugModifierFlags:{get(){return xt(Oqa(this))}},__debugTransformFlags:{get(){return Zr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return Qbt(this)}},__debugEmitFlags:{get(){return qt(TNe(this))}},__debugGetText:{value(Qi){if(mNe(this))return"";let ps=zr.get(this);if(ps===void 0){let yo=nza(this),bo=yo&&bce(yo);ps=bo?H2i(bo,yo,Qi):"",zr.set(this,ps)}return ps}}});Nn=!0}e.enableDebugInfo=Ya;function Gc(Ft){let zr=Ft&7,Rn=zr===0?"in out":zr===3?"[bivariant]":zr===2?"in":zr===1?"out":zr===4?"[independent]":"";return Ft&8?Rn+=" (unmeasurable)":Ft&16&&(Rn+=" (unreliable)"),Rn}e.formatVariance=Gc;class cl{__debugToString(){var zr;switch(this.kind){case 3:return((zr=this.debugInfo)==null?void 0:zr.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return w2i(this.sources,this.targets||iNr(this.sources,()=>"any"),(Rn,Or)=>`${Rn.__debugTypeToString()} -> ${typeof Or=="string"?Or:Or.__debugTypeToString()}`).join(", ");case 2:return w2i(this.sources,this.targets,(Rn,Or)=>`${Rn.__debugTypeToString()} -> ${Or().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +Verbose Debug Information: `+(typeof Rn=="string"?Rn:Rn())),C(zr,Or||E))}e.assert=E;function N(Ft,zr,Rn,Or,Qi){if(Ft!==zr){let ps=Rn?Or?`${Rn} ${Or}`:Rn:"";C(`Expected ${Ft} === ${zr}. ${ps}`,Qi||N)}}e.assertEqual=N;function B(Ft,zr,Rn,Or){Ft>=zr&&C(`Expected ${Ft} < ${zr}. ${Rn||""}`,Or||B)}e.assertLessThan=B;function F(Ft,zr,Rn){Ft>zr&&C(`Expected ${Ft} <= ${zr}`,Rn||F)}e.assertLessThanOrEqual=F;function Q(Ft,zr,Rn){Ft= ${zr}`,Rn||Q)}e.assertGreaterThanOrEqual=Q;function X(Ft,zr,Rn){Ft==null&&C(zr,Rn||X)}e.assertIsDefined=X;function ae(Ft,zr,Rn){return X(Ft,zr,Rn||ae),Ft}e.checkDefined=ae;function ne(Ft,zr,Rn){for(let Or of Ft)X(Or,zr,Rn||ne)}e.assertEachIsDefined=ne;function ce(Ft,zr,Rn){return ne(Ft,zr,Rn||ce),Ft}e.checkEachDefined=ce;function fe(Ft,zr="Illegal value:",Rn){let Or=typeof Ft=="object"&&fj(Ft,"kind")&&fj(Ft,"pos")?"SyntaxKind: "+Yt(Ft.kind):JSON.stringify(Ft);return C(`${zr} ${Or}`,Rn||fe)}e.assertNever=fe;function ue(Ft,zr,Rn,Or){I(1,"assertEachNode")&&E(zr===void 0||GNr(Ft,zr),Rn||"Unexpected node.",()=>`Node array did not pass test '${ct(zr)}'.`,Or||ue)}e.assertEachNode=ue;function de(Ft,zr,Rn,Or){I(1,"assertNode")&&E(Ft!==void 0&&(zr===void 0||zr(Ft)),Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} did not pass test '${ct(zr)}'.`,Or||de)}e.assertNode=de;function be(Ft,zr,Rn,Or){I(1,"assertNotNode")&&E(Ft===void 0||zr===void 0||!zr(Ft),Rn||"Unexpected node.",()=>`Node ${Yt(Ft.kind)} should not have passed test '${ct(zr)}'.`,Or||be)}e.assertNotNode=be;function Se(Ft,zr,Rn,Or){I(1,"assertOptionalNode")&&E(zr===void 0||Ft===void 0||zr(Ft),Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} did not pass test '${ct(zr)}'.`,Or||Se)}e.assertOptionalNode=Se;function De(Ft,zr,Rn,Or){I(1,"assertOptionalToken")&&E(zr===void 0||Ft===void 0||Ft.kind===zr,Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} was not a '${Yt(zr)}' token.`,Or||De)}e.assertOptionalToken=De;function k(Ft,zr,Rn){I(1,"assertMissingNode")&&E(Ft===void 0,zr||"Unexpected node.",()=>`Node ${Yt(Ft.kind)} was unexpected'.`,Rn||k)}e.assertMissingNode=k;function et(Ft){}e.type=et;function ct(Ft){if(typeof Ft!="function")return"";if(fj(Ft,"name"))return Ft.name;{let zr=Function.prototype.toString.call(Ft),Rn=/^function\s+([\w$]+)\s*\(/.exec(zr);return Rn?Rn[1]:""}}e.getFunctionName=ct;function Me(Ft){return`{ name: ${CJe(Ft.escapedName)}; flags: ${Xt(Ft.flags)}; declarations: ${lNr(Ft.declarations,zr=>Yt(zr.kind))} }`}e.formatSymbol=Me;function je(Ft=0,zr,Rn){let Or=At(zr);if(Ft===0)return Or.length>0&&Or[0][0]===0?Or[0][1]:"0";if(Rn){let Qi=[],ps=Ft;for(let[yo,bo]of Or){if(yo>Ft)break;yo!==0&&yo&Ft&&(Qi.push(bo),ps&=~yo)}if(ps===0)return Qi.join("|")}else for(let[Qi,ps]of Or)if(Qi===Ft)return ps;return Ft.toString()}e.formatEnum=je;let St=new Map;function At(Ft){let zr=St.get(Ft);if(zr)return zr;let Rn=[];for(let Qi in Ft){let ps=Ft[Qi];typeof ps=="number"&&Rn.push([ps,Qi])}let Or=v7a(Rn,(Qi,ps)=>Avi(Qi[0],ps[0]));return St.set(Ft,Or),Or}function Yt(Ft){return je(Ft,Tp,!1)}e.formatSyntaxKind=Yt;function Tr(Ft){return je(Ft,yvi,!1)}e.formatSnippetKind=Tr;function Nr(Ft){return je(Ft,wee,!1)}e.formatScriptKind=Nr;function er(Ft){return je(Ft,IO,!0)}e.formatNodeFlags=er;function vt(Ft){return je(Ft,Ivi,!0)}e.formatNodeCheckFlags=vt;function xt(Ft){return je(Ft,dvi,!0)}e.formatModifierFlags=xt;function Zr(Ft){return je(Ft,_vi,!0)}e.formatTransformFlags=Zr;function qt(Ft){return je(Ft,bvi,!0)}e.formatEmitFlags=qt;function Xt(Ft){return je(Ft,fvi,!0)}e.formatSymbolFlags=Xt;function lr(Ft){return je(Ft,kG,!0)}e.formatTypeFlags=lr;function cr(Ft){return je(Ft,mvi,!0)}e.formatSignatureFlags=cr;function Ar(Ft){return je(Ft,hvi,!0)}e.formatObjectFlags=Ar;function qr(Ft){return je(Ft,ANr,!0)}e.formatFlowFlags=qr;function _n(Ft){return je(Ft,pvi,!0)}e.formatRelationComparisonResult=_n;function ke(Ft){return je(Ft,CheckMode,!0)}e.formatCheckMode=ke;function jt(Ft){return je(Ft,SignatureCheckMode,!0)}e.formatSignatureCheckMode=jt;function Fn(Ft){return je(Ft,TypeFacts,!0)}e.formatTypeFacts=Fn;let Nn=!1,Hi;function po(Ft){"__debugFlowFlags"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(){let zr=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Rn=this.flags&-2048;return`${zr}${Rn?` (${qr(Rn)})`:""}`}},__debugFlowFlags:{get(){return je(this.flags,ANr,!0)}},__debugToString:{value(){return Wr(this)}}})}function Vr(Ft){return Nn&&(typeof Object.setPrototypeOf=="function"?(Hi||(Hi=Object.create(Object.prototype),po(Hi)),Object.setPrototypeOf(Ft,Hi)):po(Ft)),Ft}e.attachFlowNodeDebugInfo=Vr;let xi;function io(Ft){"__tsDebuggerDisplay"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(zr){return zr=String(zr).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${zr}`}}})}function ga(Ft){Nn&&(typeof Object.setPrototypeOf=="function"?(xi||(xi=Object.create(Array.prototype),io(xi)),Object.setPrototypeOf(Ft,xi)):io(Ft))}e.attachNodeArrayDebugInfo=ga;function Ya(){if(Nn)return;let Ft=new WeakMap,zr=new WeakMap;Object.defineProperties(k2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Or=this.flags&33554432?"TransientSymbol":"Symbol",Qi=this.flags&-33554433;return`${Or} '${fNr(this)}'${Qi?` (${Xt(Qi)})`:""}`}},__debugFlags:{get(){return Xt(this.flags)}}}),Object.defineProperties(k2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Or=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Qi=this.flags&524288?this.objectFlags&-1344:0;return`${Or}${this.symbol?` '${fNr(this.symbol)}'`:""}${Qi?` (${Ar(Qi)})`:""}`}},__debugFlags:{get(){return lr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Ar(this.objectFlags):""}},__debugTypeToString:{value(){let Or=Ft.get(this);return Or===void 0&&(Or=this.checker.typeToString(this),Ft.set(this,Or)),Or}}}),Object.defineProperties(k2.getSignatureConstructor().prototype,{__debugFlags:{get(){return cr(this.flags)}},__debugSignatureToString:{value(){var Or;return(Or=this.checker)==null?void 0:Or.signatureToString(this)}}});let Rn=[k2.getNodeConstructor(),k2.getIdentifierConstructor(),k2.getTokenConstructor(),k2.getSourceFileConstructor()];for(let Or of Rn)fj(Or.prototype,"__debugKind")||Object.defineProperties(Or.prototype,{__tsDebuggerDisplay:{value(){return`${BNe(this)?"GeneratedIdentifier":$C(this)?`Identifier '${yV(this)}'`:Qme(this)?`PrivateIdentifier '${yV(this)}'`:nEt(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:xNe(this)?`NumericLiteral ${this.text}`:oec(this)?`BigIntLiteral ${this.text}n`:IBi(this)?"TypeParameterDeclaration":jbt(this)?"ParameterDeclaration":hBi(this)?"ConstructorDeclaration":bNr(this)?"GetAccessorDeclaration":qbt(this)?"SetAccessorDeclaration":pec(this)?"CallSignatureDeclaration":fec(this)?"ConstructSignatureDeclaration":mBi(this)?"IndexSignatureDeclaration":Iec(this)?"TypePredicateNode":CBi(this)?"TypeReferenceNode":_Bi(this)?"FunctionTypeNode":yBi(this)?"ConstructorTypeNode":hec(this)?"TypeQueryNode":mec(this)?"TypeLiteralNode":Cec(this)?"ArrayTypeNode":_ec(this)?"TupleTypeNode":bec(this)?"OptionalTypeNode":Eec(this)?"RestTypeNode":Sec(this)?"UnionTypeNode":vec(this)?"IntersectionTypeNode":Bec(this)?"ConditionalTypeNode":wec(this)?"InferTypeNode":Tec(this)?"ParenthesizedTypeNode":Rec(this)?"ThisTypeNode":Nec(this)?"TypeOperatorNode":Dec(this)?"IndexedAccessTypeNode":kec(this)?"MappedTypeNode":xec(this)?"LiteralTypeNode":yec(this)?"NamedTupleMember":Gec(this)?"ImportTypeNode":Yt(this.kind)}${this.flags?` (${er(this.flags)})`:""}`}},__debugKind:{get(){return Yt(this.kind)}},__debugNodeFlags:{get(){return er(this.flags)}},__debugModifierFlags:{get(){return xt(I$a(this))}},__debugTransformFlags:{get(){return Zr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return Jbt(this)}},__debugEmitFlags:{get(){return qt(NNe(this))}},__debugGetText:{value(Qi){if(_Ne(this))return"";let ps=zr.get(this);if(ps===void 0){let yo=kza(this),bo=yo&&Ece(yo);ps=bo?iSi(bo,yo,Qi):"",zr.set(this,ps)}return ps}}});Nn=!0}e.enableDebugInfo=Ya;function Gc(Ft){let zr=Ft&7,Rn=zr===0?"in out":zr===3?"[bivariant]":zr===2?"in":zr===1?"out":zr===4?"[independent]":"";return Ft&8?Rn+=" (unmeasurable)":Ft&16&&(Rn+=" (unreliable)"),Rn}e.formatVariance=Gc;class cl{__debugToString(){var zr;switch(this.kind){case 3:return((zr=this.debugInfo)==null?void 0:zr.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return M2i(this.sources,this.targets||lNr(this.sources,()=>"any"),(Rn,Or)=>`${Rn.__debugTypeToString()} -> ${typeof Or=="string"?Or:Or.__debugTypeToString()}`).join(", ");case 2:return M2i(this.sources,this.targets,(Rn,Or)=>`${Rn.__debugTypeToString()} -> ${Or().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` `).join(` `)} m2: ${this.mapper2.__debugToString().split(` `).join(` - `)}`;default:return fe(this)}}}e.DebugTypeMapper=cl;function Sc(Ft){return e.isDebugging?Object.setPrototypeOf(Ft,cl.prototype):Ft}e.attachDebugPrototypeIfDebug=Sc;function Hr(Ft){return console.log(Wr(Ft))}e.printControlFlowGraph=Hr;function Wr(Ft){let zr=-1;function Rn(Wt){return Wt.id||(Wt.id=zr,zr--),Wt.id}let Or;(Wt=>{Wt.lr="\u2500",Wt.ud="\u2502",Wt.dr="\u256D",Wt.dl="\u256E",Wt.ul="\u256F",Wt.ur="\u2570",Wt.udr="\u251C",Wt.udl="\u2524",Wt.dlr="\u252C",Wt.ulr="\u2534",Wt.udlr="\u256B"})(Or||(Or={}));let Qi;(Wt=>{Wt[Wt.None=0]="None",Wt[Wt.Up=1]="Up",Wt[Wt.Down=2]="Down",Wt[Wt.Left=4]="Left",Wt[Wt.Right=8]="Right",Wt[Wt.UpDown=3]="UpDown",Wt[Wt.LeftRight=12]="LeftRight",Wt[Wt.UpLeft=5]="UpLeft",Wt[Wt.UpRight=9]="UpRight",Wt[Wt.DownLeft=6]="DownLeft",Wt[Wt.DownRight=10]="DownRight",Wt[Wt.UpDownLeft=7]="UpDownLeft",Wt[Wt.UpDownRight=11]="UpDownRight",Wt[Wt.UpLeftRight=13]="UpLeftRight",Wt[Wt.DownLeftRight=14]="DownLeftRight",Wt[Wt.UpDownLeftRight=15]="UpDownLeftRight",Wt[Wt.NoChildren=16]="NoChildren"})(Qi||(Qi={}));let ps=2032,yo=882,bo=Object.create(null),Qa=[],gc=[],Cg=ac(Ft,new Set);for(let Wt of Qa)Wt.text=_g(Wt.flowNode,Wt.circular),Wc(Wt);let Nc=Sg(Cg),iA=Ul(Nc);return Xu(Cg,0),mI();function ma(Wt){return!!(Wt.flags&128)}function vu(Wt){return!!(Wt.flags&12)&&!!Wt.antecedent}function li(Wt){return!!(Wt.flags&ps)}function Ei(Wt){return!!(Wt.flags&yo)}function Ps(Wt){let Hu=[];for(let Ru of Wt.edges)Ru.source===Wt&&Hu.push(Ru.target);return Hu}function Xa(Wt){let Hu=[];for(let Ru of Wt.edges)Ru.target===Wt&&Hu.push(Ru.source);return Hu}function ac(Wt,Hu){let Ru=Rn(Wt),Vs=bo[Ru];if(Vs&&Hu.has(Wt))return Vs.circular=!0,Vs={id:-1,flowNode:Wt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Qa.push(Vs),Vs;if(Hu.add(Wt),!Vs)if(bo[Ru]=Vs={id:Ru,flowNode:Wt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Qa.push(Vs),vu(Wt))for(let Ju of Wt.antecedent)Yl(Vs,Ju,Hu);else li(Wt)&&Yl(Vs,Wt.antecedent,Hu);return Hu.delete(Wt),Vs}function Yl(Wt,Hu,Ru){let Vs=ac(Hu,Ru),Ju={source:Wt,target:Vs};gc.push(Ju),Wt.edges.push(Ju),Vs.edges.push(Ju)}function Wc(Wt){if(Wt.level!==-1)return Wt.level;let Hu=0;for(let Ru of Xa(Wt))Hu=Math.max(Hu,Wc(Ru)+1);return Wt.level=Hu}function Sg(Wt){let Hu=0;for(let Ru of Ps(Wt))Hu=Math.max(Hu,Sg(Ru));return Hu+1}function Ul(Wt){let Hu=Ri(Array(Wt),0);for(let Ru of Qa)Hu[Ru.level]=Math.max(Hu[Ru.level],Ru.text.length);return Hu}function Xu(Wt,Hu){if(Wt.lane===-1){Wt.lane=Hu,Wt.endLane=Hu;let Ru=Ps(Wt);for(let Vs=0;Vs0&&Hu++;let Ju=Ru[Vs];Xu(Ju,Hu),Ju.endLane>Wt.endLane&&(Hu=Ju.endLane)}Wt.endLane=Hu}}function Da(Wt){if(Wt&2)return"Start";if(Wt&4)return"Branch";if(Wt&8)return"Loop";if(Wt&16)return"Assignment";if(Wt&32)return"True";if(Wt&64)return"False";if(Wt&128)return"SwitchClause";if(Wt&256)return"ArrayMutation";if(Wt&512)return"Call";if(Wt&1024)return"ReduceLabel";if(Wt&1)return"Unreachable";throw new Error}function pu(Wt){let Hu=bce(Wt);return H2i(Hu,Wt,!1)}function _g(Wt,Hu){let Ru=Da(Wt.flags);if(Hu&&(Ru=`${Ru}#${Rn(Wt)}`),ma(Wt)){let Vs=[],{switchStatement:Ju,clauseStart:Yn,clauseEnd:Ko}=Wt.node;for(let Eg=Yn;EgKo.lane)+1,Ru=Ri(Array(Hu),""),Vs=iA.map(()=>Array(Hu)),Ju=iA.map(()=>Ri(Array(Hu),0));for(let Ko of Qa){Vs[Ko.level][Ko.lane]=Ko;let Eg=Ps(Ko);for(let GA=0;GA0&&(dl|=1),GA0&&(dl|=1),GA0?Ju[Ko-1][Eg]:0,GA=Eg>0?Ju[Ko][Eg-1]:0,$i=Ju[Ko][Eg];$i||(OA&8&&($i|=12),GA&2&&($i|=3),Ju[Ko][Eg]=$i)}for(let Ko=0;Ko{Wt.lr="\u2500",Wt.ud="\u2502",Wt.dr="\u256D",Wt.dl="\u256E",Wt.ul="\u256F",Wt.ur="\u2570",Wt.udr="\u251C",Wt.udl="\u2524",Wt.dlr="\u252C",Wt.ulr="\u2534",Wt.udlr="\u256B"})(Or||(Or={}));let Qi;(Wt=>{Wt[Wt.None=0]="None",Wt[Wt.Up=1]="Up",Wt[Wt.Down=2]="Down",Wt[Wt.Left=4]="Left",Wt[Wt.Right=8]="Right",Wt[Wt.UpDown=3]="UpDown",Wt[Wt.LeftRight=12]="LeftRight",Wt[Wt.UpLeft=5]="UpLeft",Wt[Wt.UpRight=9]="UpRight",Wt[Wt.DownLeft=6]="DownLeft",Wt[Wt.DownRight=10]="DownRight",Wt[Wt.UpDownLeft=7]="UpDownLeft",Wt[Wt.UpDownRight=11]="UpDownRight",Wt[Wt.UpLeftRight=13]="UpLeftRight",Wt[Wt.DownLeftRight=14]="DownLeftRight",Wt[Wt.UpDownLeftRight=15]="UpDownLeftRight",Wt[Wt.NoChildren=16]="NoChildren"})(Qi||(Qi={}));let ps=2032,yo=882,bo=Object.create(null),Qa=[],gc=[],Cg=ac(Ft,new Set);for(let Wt of Qa)Wt.text=_g(Wt.flowNode,Wt.circular),Wc(Wt);let Nc=Sg(Cg),iA=Ul(Nc);return Xu(Cg,0),mI();function ma(Wt){return!!(Wt.flags&128)}function vu(Wt){return!!(Wt.flags&12)&&!!Wt.antecedent}function li(Wt){return!!(Wt.flags&ps)}function Ei(Wt){return!!(Wt.flags&yo)}function Ps(Wt){let Hu=[];for(let Ru of Wt.edges)Ru.source===Wt&&Hu.push(Ru.target);return Hu}function Xa(Wt){let Hu=[];for(let Ru of Wt.edges)Ru.target===Wt&&Hu.push(Ru.source);return Hu}function ac(Wt,Hu){let Ru=Rn(Wt),Vs=bo[Ru];if(Vs&&Hu.has(Wt))return Vs.circular=!0,Vs={id:-1,flowNode:Wt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Qa.push(Vs),Vs;if(Hu.add(Wt),!Vs)if(bo[Ru]=Vs={id:Ru,flowNode:Wt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Qa.push(Vs),vu(Wt))for(let Ju of Wt.antecedent)Yl(Vs,Ju,Hu);else li(Wt)&&Yl(Vs,Wt.antecedent,Hu);return Hu.delete(Wt),Vs}function Yl(Wt,Hu,Ru){let Vs=ac(Hu,Ru),Ju={source:Wt,target:Vs};gc.push(Ju),Wt.edges.push(Ju),Vs.edges.push(Ju)}function Wc(Wt){if(Wt.level!==-1)return Wt.level;let Hu=0;for(let Ru of Xa(Wt))Hu=Math.max(Hu,Wc(Ru)+1);return Wt.level=Hu}function Sg(Wt){let Hu=0;for(let Ru of Ps(Wt))Hu=Math.max(Hu,Sg(Ru));return Hu+1}function Ul(Wt){let Hu=Ri(Array(Wt),0);for(let Ru of Qa)Hu[Ru.level]=Math.max(Hu[Ru.level],Ru.text.length);return Hu}function Xu(Wt,Hu){if(Wt.lane===-1){Wt.lane=Hu,Wt.endLane=Hu;let Ru=Ps(Wt);for(let Vs=0;Vs0&&Hu++;let Ju=Ru[Vs];Xu(Ju,Hu),Ju.endLane>Wt.endLane&&(Hu=Ju.endLane)}Wt.endLane=Hu}}function Da(Wt){if(Wt&2)return"Start";if(Wt&4)return"Branch";if(Wt&8)return"Loop";if(Wt&16)return"Assignment";if(Wt&32)return"True";if(Wt&64)return"False";if(Wt&128)return"SwitchClause";if(Wt&256)return"ArrayMutation";if(Wt&512)return"Call";if(Wt&1024)return"ReduceLabel";if(Wt&1)return"Unreachable";throw new Error}function pu(Wt){let Hu=Ece(Wt);return iSi(Hu,Wt,!1)}function _g(Wt,Hu){let Ru=Da(Wt.flags);if(Hu&&(Ru=`${Ru}#${Rn(Wt)}`),ma(Wt)){let Vs=[],{switchStatement:Ju,clauseStart:Yn,clauseEnd:Ko}=Wt.node;for(let Eg=Yn;EgKo.lane)+1,Ru=Ri(Array(Hu),""),Vs=iA.map(()=>Array(Hu)),Ju=iA.map(()=>Ri(Array(Hu),0));for(let Ko of Qa){Vs[Ko.level][Ko.lane]=Ko;let Eg=Ps(Ko);for(let GA=0;GA0&&(dl|=1),GA0&&(dl|=1),GA0?Ju[Ko-1][Eg]:0,GA=Eg>0?Ju[Ko][Eg-1]:0,$i=Ju[Ko][Eg];$i||(OA&8&&($i|=12),GA&2&&($i|=3),Ju[Ko][Eg]=$i)}for(let Ko=0;Ko0?Wt.repeat(Hu):"";let Ru="";for(;Ru.length{},I7a=()=>{},Fbt,Tp=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.SourceFile=307]="SourceFile",e[e.Bundle=308]="Bundle",e[e.JSDocTypeExpression=309]="JSDocTypeExpression",e[e.JSDocNameReference=310]="JSDocNameReference",e[e.JSDocMemberName=311]="JSDocMemberName",e[e.JSDocAllType=312]="JSDocAllType",e[e.JSDocUnknownType=313]="JSDocUnknownType",e[e.JSDocNullableType=314]="JSDocNullableType",e[e.JSDocNonNullableType=315]="JSDocNonNullableType",e[e.JSDocOptionalType=316]="JSDocOptionalType",e[e.JSDocFunctionType=317]="JSDocFunctionType",e[e.JSDocVariadicType=318]="JSDocVariadicType",e[e.JSDocNamepathType=319]="JSDocNamepathType",e[e.JSDoc=320]="JSDoc",e[e.JSDocComment=320]="JSDocComment",e[e.JSDocText=321]="JSDocText",e[e.JSDocTypeLiteral=322]="JSDocTypeLiteral",e[e.JSDocSignature=323]="JSDocSignature",e[e.JSDocLink=324]="JSDocLink",e[e.JSDocLinkCode=325]="JSDocLinkCode",e[e.JSDocLinkPlain=326]="JSDocLinkPlain",e[e.JSDocTag=327]="JSDocTag",e[e.JSDocAugmentsTag=328]="JSDocAugmentsTag",e[e.JSDocImplementsTag=329]="JSDocImplementsTag",e[e.JSDocAuthorTag=330]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",e[e.JSDocClassTag=332]="JSDocClassTag",e[e.JSDocPublicTag=333]="JSDocPublicTag",e[e.JSDocPrivateTag=334]="JSDocPrivateTag",e[e.JSDocProtectedTag=335]="JSDocProtectedTag",e[e.JSDocReadonlyTag=336]="JSDocReadonlyTag",e[e.JSDocOverrideTag=337]="JSDocOverrideTag",e[e.JSDocCallbackTag=338]="JSDocCallbackTag",e[e.JSDocOverloadTag=339]="JSDocOverloadTag",e[e.JSDocEnumTag=340]="JSDocEnumTag",e[e.JSDocParameterTag=341]="JSDocParameterTag",e[e.JSDocReturnTag=342]="JSDocReturnTag",e[e.JSDocThisTag=343]="JSDocThisTag",e[e.JSDocTypeTag=344]="JSDocTypeTag",e[e.JSDocTemplateTag=345]="JSDocTemplateTag",e[e.JSDocTypedefTag=346]="JSDocTypedefTag",e[e.JSDocSeeTag=347]="JSDocSeeTag",e[e.JSDocPropertyTag=348]="JSDocPropertyTag",e[e.JSDocThrowsTag=349]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",e[e.JSDocImportTag=351]="JSDocImportTag",e[e.SyntaxList=352]="SyntaxList",e[e.NotEmittedStatement=353]="NotEmittedStatement",e[e.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=309]="FirstJSDocNode",e[e.LastJSDocNode=351]="LastJSDocNode",e[e.FirstJSDocTagNode=327]="FirstJSDocTagNode",e[e.LastJSDocTagNode=351]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(Tp||{}),IO=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(IO||{}),qSi=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(qSi||{}),$Si=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))($Si||{}),aNr=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(aNr||{}),evi=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=-1]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(evi||{}),tvi=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e[e.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(tvi||{}),kG=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.Reserved1=536870912]="Reserved1",e[e.Reserved2=1073741824]="Reserved2",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.Primitive=402784252]="Primitive",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=473694207]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.IncludesError=1073741824]="IncludesError",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(kG||{}),rvi=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.SingleSignatureType=134217728]="SingleSignatureType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(rvi||{}),nvi=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(nvi||{}),Bee=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(Bee||{}),GNr=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ES2023=10]="ES2023",e[e.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(GNr||{}),ivi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(ivi||{}),tH=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(tH||{}),svi=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(svi||{}),ovi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(ovi||{}),avi=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(avi||{}),eJe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},cvi={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},lJe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(lJe||{}),Hme="/",h7a="\\",N2i="://",m7a=/\\/g;function C7a(e){return e===47||e===92}function _7a(e,t){return e.length>t.length&&A7a(e,t)}function FNr(e){return e.length>0&&C7a(e.charCodeAt(e.length-1))}function D2i(e){return e>=97&&e<=122||e>=65&&e<=90}function y7a(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let n=e.charCodeAt(t+2);if(n===97||n===65)return t+3}return-1}function b7a(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let n=e.indexOf(t===47?Hme:h7a,2);return n<0?e.length:n+1}if(D2i(t)&&e.charCodeAt(1)===58){let n=e.charCodeAt(2);if(n===47||n===92)return 3;if(e.length===2)return 2}let r=e.indexOf(N2i);if(r!==-1){let n=r+N2i.length,a=e.indexOf(Hme,n);if(a!==-1){let o=e.slice(0,r),l=e.slice(n,a);if(o==="file"&&(l===""||l==="localhost")&&D2i(e.charCodeAt(a+1))){let A=y7a(e,a+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(a+1)}return~e.length}return 0}function Mbt(e){let t=b7a(e);return t<0?~t:t}function lvi(e,t,r){if(e=Hbt(e),Mbt(e)===e.length)return"";e=gvi(e);let n=e.slice(Math.max(Mbt(e),e.lastIndexOf(Hme)+1)),a=t!==void 0&&r!==void 0?uvi(n,t,r):void 0;return a?n.slice(0,n.length-a.length):n}function k2i(e,t,r){if(Obt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let n=e.slice(e.length-t.length);if(r(n,t))return n}}function E7a(e,t,r){if(typeof t=="string")return k2i(e,t,r)||"";for(let n of t){let a=k2i(e,n,r);if(a)return a}return""}function uvi(e,t,r){if(t)return E7a(gvi(e),t,r?xNr:c7a);let n=lvi(e),a=n.lastIndexOf(".");return a>=0?n.substring(a):""}function S7a(e,t){let r=e.substring(0,t),n=e.substring(t).split(Hme);return n.length&&!Vme(n)&&n.pop(),[r,...n]}function v7a(e,t=""){return e=T7a(t,e),S7a(e,Mbt(e))}function B7a(e,t){return e.length===0?"":(e[0]&&ZNr(e[0]))+e.slice(1,t).join(Hme)}function Hbt(e){return e.includes("\\")?e.replace(m7a,Hme):e}function w7a(e){if(!oD(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(n)}}return t}function T7a(e,...t){e&&(e=Hbt(e));for(let r of t)r&&(r=Hbt(r),!e||Mbt(r)!==0?e=r:e=ZNr(e)+r);return e}function R7a(e){if(e=Hbt(e),!x2i.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!x2i.test(e)))return e;let r=B7a(w7a(v7a(e)));return r&&FNr(e)?ZNr(r):r}function gvi(e){return FNr(e)?e.substr(0,e.length-1):e}function ZNr(e){return FNr(e)?e:e+Hme}var x2i=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function $(e,t,r,n,a,o,l){return{code:e,category:t,key:r,message:n,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:l}}var ts={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:$(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:$(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:$(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:$(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:$(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:$(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:$(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:$(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:$(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:$(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:$(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:$(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:$(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:$(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:$(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:$(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:$(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:$(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:$(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:$(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:$(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:$(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:$(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:$(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:$(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:$(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:$(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:$(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:$(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:$(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:$(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:$(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:$(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:$(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:$(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:$(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:$(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:$(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:$(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:$(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:$(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:$(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:$(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:$(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:$(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:$(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:$(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:$(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:$(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:$(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:$(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:$(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:$(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:$(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:$(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:$(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:$(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:$(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:$(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:$(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:$(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:$(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:$(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:$(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:$(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:$(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:$(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:$(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:$(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:$(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:$(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:$(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:$(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:$(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:$(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:$(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:$(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:$(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:$(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:$(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:$(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:$(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:$(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:$(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:$(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:$(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:$(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:$(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:$(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:$(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:$(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:$(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:$(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:$(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:$(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:$(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:$(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:$(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:$(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:$(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:$(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:$(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:$(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:$(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:$(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:$(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:$(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:$(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:$(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:$(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:$(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:$(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:$(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:$(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:$(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:$(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:$(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:$(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:$(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:$(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:$(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:$(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:$(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:$(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:$(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:$(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:$(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:$(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:$(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:$(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:$(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:$(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:$(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:$(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:$(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:$(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:$(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:$(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:$(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:$(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:$(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:$(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:$(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:$(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:$(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:$(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:$(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:$(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:$(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:$(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:$(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:$(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:$(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodenext_or_preserve:$(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:$(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:$(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:$(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:$(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:$(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:$(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:$(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:$(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:$(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:$(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:$(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:$(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:$(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:$(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:$(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:$(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:$(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:$(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:$(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:$(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:$(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:$(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:$(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:$(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:$(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:$(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:$(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:$(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:$(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:$(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:$(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:$(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:$(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:$(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:$(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:$(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:$(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:$(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:$(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:$(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:$(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:$(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:$(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:$(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:$(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:$(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:$(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:$(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:$(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:$(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:$(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:$(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:$(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:$(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:$(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:$(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:$(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:$(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:$(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:$(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:$(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:$(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:$(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:$(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:$(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:$(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:$(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:$(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:$(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:$(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:$(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:$(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:$(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:$(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:$(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:$(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:$(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:$(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:$(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:$(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:$(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:$(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:$(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:$(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:$(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:$(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:$(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:$(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:$(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:$(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:$(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:$(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:$(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:$(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:$(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:$(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:$(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:$(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:$(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:$(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:$(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:$(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:$(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:$(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:$(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:$(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:$(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:$(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:$(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:$(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:$(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:$(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:$(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:$(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:$(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:$(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:$(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:$(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:$(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:$(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:$(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:$(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:$(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:$(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:$(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:$(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:$(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:$(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:$(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:$(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:$(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:$(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:$(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:$(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:$(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:$(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:$(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:$(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:$(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:$(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:$(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:$(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:$(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:$(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:$(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:$(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:$(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:$(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:$(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:$(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:$(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:$(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:$(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:$(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:$(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:$(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:$(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:$(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:$(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:$(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:$(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:$(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Untyped_function_calls_may_not_accept_type_arguments:$(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:$(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:$(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:$(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:$(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:$(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:$(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:$(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:$(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:$(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:$(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:$(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:$(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:$(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:$(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:$(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:$(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:$(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:$(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:$(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:$(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:$(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:$(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:$(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:$(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:$(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:$(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:$(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:$(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:$(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:$(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:$(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:$(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:$(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:$(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:$(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:$(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:$(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:$(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:$(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:$(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:$(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:$(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:$(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:$(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:$(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:$(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:$(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:$(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:$(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:$(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:$(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:$(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:$(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:$(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:$(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:$(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:$(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:$(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:$(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:$(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:$(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:$(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:$(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:$(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:$(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:$(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:$(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:$(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:$(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:$(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:$(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:$(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:$(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:$(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:$(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:$(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:$(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:$(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:$(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:$(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:$(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:$(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:$(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:$(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:$(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:$(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:$(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:$(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:$(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:$(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:$(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:$(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:$(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:$(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:$(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:$(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:$(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:$(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:$(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:$(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:$(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:$(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:$(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:$(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:$(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:$(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:$(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:$(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:$(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:$(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:$(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:$(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:$(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:$(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:$(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:$(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:$(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:$(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:$(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:$(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:$(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:$(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:$(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:$(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:$(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:$(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:$(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:$(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:$(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:$(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:$(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:$(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:$(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:$(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:$(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:$(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:$(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:$(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:$(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:$(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:$(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:$(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:$(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:$(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:$(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:$(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:$(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:$(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:$(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:$(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:$(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:$(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:$(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:$(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:$(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:$(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:$(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:$(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:$(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:$(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:$(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:$(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:$(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:$(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:$(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:$(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:$(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:$(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:$(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:$(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:$(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:$(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:$(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:$(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:$(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:$(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:$(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:$(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:$(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:$(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:$(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:$(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:$(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:$(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:$(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:$(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:$(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:$(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:$(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:$(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:$(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:$(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:$(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:$(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:$(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:$(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:$(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:$(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:$(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:$(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:$(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:$(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:$(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:$(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:$(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:$(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:$(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:$(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:$(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:$(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:$(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:$(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:$(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:$(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:$(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:$(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:$(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:$(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:$(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:$(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:$(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:$(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:$(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:$(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:$(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:$(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:$(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:$(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:$(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:$(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:$(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:$(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:$(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:$(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:$(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:$(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:$(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:$(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:$(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:$(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:$(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:$(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:$(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:$(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:$(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:$(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:$(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:$(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:$(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:$(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:$(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:$(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:$(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:$(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:$(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:$(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:$(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:$(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:$(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:$(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:$(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:$(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:$(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:$(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:$(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:$(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:$(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:$(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:$(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:$(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:$(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:$(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:$(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:$(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:$(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:$(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:$(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:$(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:$(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:$(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:$(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:$(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:$(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:$(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:$(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:$(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:$(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:$(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:$(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:$(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:$(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:$(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:$(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:$(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:$(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:$(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:$(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:$(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:$(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:$(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:$(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:$(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:$(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:$(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:$(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:$(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:$(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:$(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:$(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:$(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:$(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:$(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:$(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:$(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:$(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:$(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:$(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:$(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:$(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:$(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:$(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:$(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:$(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:$(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:$(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:$(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:$(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:$(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:$(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:$(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:$(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:$(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:$(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:$(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:$(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:$(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:$(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:$(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:$(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:$(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:$(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:$(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:$(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:$(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:$(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:$(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:$(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:$(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:$(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:$(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:$(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:$(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:$(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:$(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:$(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:$(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:$(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:$(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:$(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:$(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:$(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:$(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:$(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:$(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:$(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:$(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:$(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:$(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:$(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:$(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:$(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:$(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:$(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:$(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:$(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:$(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:$(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:$(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:$(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:$(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:$(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:$(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:$(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:$(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:$(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:$(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:$(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:$(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:$(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:$(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:$(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:$(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:$(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:$(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:$(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:$(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:$(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:$(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:$(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:$(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:$(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:$(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:$(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:$(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:$(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:$(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:$(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:$(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:$(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:$(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:$(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:$(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:$(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:$(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:$(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:$(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:$(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:$(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:$(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:$(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:$(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:$(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:$(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:$(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:$(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:$(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:$(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:$(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:$(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:$(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:$(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:$(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:$(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:$(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:$(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:$(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:$(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:$(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:$(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected:$(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:$(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:$(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:$(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:$(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:$(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:$(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:$(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:$(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:$(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:$(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:$(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:$(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:$(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:$(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:$(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:$(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:$(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:$(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:$(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:$(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:$(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:$(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:$(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:$(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:$(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:$(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:$(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:$(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:$(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:$(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:$(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:$(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:$(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:$(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:$(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:$(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:$(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:$(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:$(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:$(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:$(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:$(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:$(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:$(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:$(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:$(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:$(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:$(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:$(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:$(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:$(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:$(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:$(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:$(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:$(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:$(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:$(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:$(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:$(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:$(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:$(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:$(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:$(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:$(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:$(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:$(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:$(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:$(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:$(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:$(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:$(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:$(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:$(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:$(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:$(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:$(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:$(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:$(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:$(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:$(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:$(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:$(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:$(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:$(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:$(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:$(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:$(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:$(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:$(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:$(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:$(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:$(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:$(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:$(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:$(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:$(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:$(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:$(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:$(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:$(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:$(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:$(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:$(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:$(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:$(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:$(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:$(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:$(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:$(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:$(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:$(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:$(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:$(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:$(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:$(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:$(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:$(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:$(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:$(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:$(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:$(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:$(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:$(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:$(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:$(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:$(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:$(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:$(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:$(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:$(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:$(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:$(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:$(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:$(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:$(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:$(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:$(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:$(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:$(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:$(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:$(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:$(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:$(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:$(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:$(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:$(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:$(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:$(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:$(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:$(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:$(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:$(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:$(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:$(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:$(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:$(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:$(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:$(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:$(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:$(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:$(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:$(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:$(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:$(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:$(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:$(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:$(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:$(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:$(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:$(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:$(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:$(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:$(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:$(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:$(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:$(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:$(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:$(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:$(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:$(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:$(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:$(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:$(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:$(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:$(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:$(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:$(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:$(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:$(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:$(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:$(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:$(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:$(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:$(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:$(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:$(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:$(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:$(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:$(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:$(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:$(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:$(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:$(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:$(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:$(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:$(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:$(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:$(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:$(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:$(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:$(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:$(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:$(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:$(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:$(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:$(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:$(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:$(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:$(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:$(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:$(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:$(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:$(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:$(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:$(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:$(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:$(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:$(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:$(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:$(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:$(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:$(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:$(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:$(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:$(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:$(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:$(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:$(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:$(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:$(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:$(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:$(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:$(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:$(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:$(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:$(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:$(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:$(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:$(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:$(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:$(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:$(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:$(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:$(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:$(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:$(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:$(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:$(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:$(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:$(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:$(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:$(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:$(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:$(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:$(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:$(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:$(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:$(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:$(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:$(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:$(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:$(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:$(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:$(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:$(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:$(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:$(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:$(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:$(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:$(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:$(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:$(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:$(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:$(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:$(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:$(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:$(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:$(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:$(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:$(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:$(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Skip_building_downstream_projects_on_error_in_upstream_project:$(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:$(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:$(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:$(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:$(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:$(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:$(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:$(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:$(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:$(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:$(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:$(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:$(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:$(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:$(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:$(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:$(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:$(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:$(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:$(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:$(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:$(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:$(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:$(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:$(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:$(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:$(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:$(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:$(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:$(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:$(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:$(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:$(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:$(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:$(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:$(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:$(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:$(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:$(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:$(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:$(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:$(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:$(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:$(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:$(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:$(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:$(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:$(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:$(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:$(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:$(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:$(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:$(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:$(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:$(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:$(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:$(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:$(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:$(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:$(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:$(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:$(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:$(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:$(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:$(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:$(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:$(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:$(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:$(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:$(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:$(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:$(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:$(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:$(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:$(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:$(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:$(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:$(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:$(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:$(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:$(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:$(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:$(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:$(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:$(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:$(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:$(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:$(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:$(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:$(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:$(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:$(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:$(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:$(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:$(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:$(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation:$(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:$(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:$(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:$(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:$(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:$(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:$(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:$(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:$(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:$(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:$(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:$(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:$(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:$(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:$(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:$(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:$(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:$(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:$(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:$(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:$(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:$(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:$(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:$(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:$(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:$(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:$(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:$(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:$(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:$(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:$(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:$(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:$(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:$(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:$(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:$(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:$(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:$(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:$(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:$(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:$(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:$(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:$(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:$(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:$(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:$(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:$(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:$(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:$(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:$(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:$(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:$(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:$(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:$(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:$(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:$(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:$(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:$(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:$(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:$(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:$(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:$(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:$(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:$(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:$(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:$(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:$(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:$(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:$(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:$(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:$(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:$(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:$(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:$(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:$(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:$(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:$(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:$(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:$(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:$(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:$(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:$(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:$(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:$(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:$(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:$(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:$(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:$(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:$(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:$(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:$(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:$(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:$(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:$(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:$(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:$(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:$(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:$(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:$(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:$(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:$(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:$(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:$(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:$(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:$(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:$(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:$(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:$(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:$(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:$(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:$(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:$(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:$(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:$(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:$(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:$(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:$(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:$(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:$(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:$(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:$(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:$(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:$(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:$(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:$(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:$(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:$(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:$(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:$(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:$(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:$(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:$(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:$(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:$(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:$(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:$(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:$(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:$(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:$(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:$(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:$(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:$(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:$(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:$(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:$(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:$(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:$(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:$(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:$(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:$(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:$(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:$(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:$(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:$(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:$(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:$(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:$(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:$(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:$(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:$(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:$(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:$(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:$(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:$(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:$(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:$(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:$(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:$(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:$(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:$(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:$(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:$(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:$(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:$(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:$(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:$(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:$(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:$(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function H1(e){return e>=80}function N7a(e){return e===32||H1(e)}var LNr={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},D7a=new Map(Object.entries(LNr)),Avi=new Map(Object.entries({...LNr,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),dvi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),k7a=new Map([[1,eJe.RegularExpressionFlagsHasIndices],[16,eJe.RegularExpressionFlagsDotAll],[32,eJe.RegularExpressionFlagsUnicode],[64,eJe.RegularExpressionFlagsUnicodeSets],[128,eJe.RegularExpressionFlagsSticky]]),x7a=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],G7a=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],F7a=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],Z7a=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L7a=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,V7a=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,P7a=/@(?:see|link)/i;function Ybt(e,t){if(e=2?Ybt(e,F7a):Ybt(e,x7a)}function O7a(e,t){return t>=2?Ybt(e,Z7a):Ybt(e,G7a)}function pvi(e){let t=[];return e.forEach((r,n)=>{t[r]=n}),t}var M7a=pvi(Avi);function by(e){return M7a[e]}function fvi(e){return Avi.get(e)}var LTu=pvi(dvi);function G2i(e){return dvi.get(e)}function Ivi(e){let t=[],r=0,n=0;for(;r127&&CV(a)&&(t.push(n),n=r);break}}return t.push(n),t}function H7a(e,t,r,n,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:Zo.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${n!==void 0?J6a(e,Ivi(n)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof n=="string"&&o>n.length?n.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function CV(e){return e===10||e===13||e===8232||e===8233}function mce(e){return e>=48&&e<=57}function XRr(e){return mce(e)||e>=65&&e<=70||e>=97&&e<=102}function VNr(e){return e>=65&&e<=90||e>=97&&e<=122}function mvi(e){return VNr(e)||mce(e)||e===95}function JRr(e){return e>=48&&e<=55}function dj(e,t,r,n,a){if(yJe(t))return t;let o=!1;for(;;){let l=e.charCodeAt(t);switch(l){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(n)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&vNe(l)){t++;continue}break}return t}}var Zbt=7;function Gme(e,t){if(Zo.assert(t>=0),t===0||CV(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+Zbt=0&&r127&&vNe(B)){b&&CV(B)&&(C=!0),r++;continue}break e}}return b&&(N=a(A,f,I,C,o,N)),N}function X7a(e,t,r,n){return $bt(!1,e,t,!1,r,n)}function J7a(e,t,r,n){return $bt(!1,e,t,!0,r,n)}function U7a(e,t,r,n,a){return $bt(!0,e,t,!1,r,n,a)}function K7a(e,t,r,n,a){return $bt(!0,e,t,!0,r,n,a)}function yvi(e,t,r,n,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),o}function lNr(e,t){return U7a(e,t,yvi,void 0,void 0)}function j7a(e,t){return K7a(e,t,yvi,void 0,void 0)}function bvi(e){let t=PNr.exec(e);if(t)return t[0]}function i4(e,t){return VNr(e)||e===36||e===95||e>127&&W7a(e,t)}function See(e,t,r){return mvi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&O7a(e,t)}function z7a(e,t,r){let n=Fme(e,0);if(!i4(n,t))return!1;for(let a=xR(n);aC,getStartPos:()=>C,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>E,getTokenStart:()=>b,getTokenPos:()=>b,getTokenText:()=>A.substring(b,f),getTokenValue:()=>N,hasUnicodeEscape:()=>(B&1024)!==0,hasExtendedUnicodeEscape:()=>(B&8)!==0,hasPrecedingLineBreak:()=>(B&1)!==0,hasPrecedingJSDocComment:()=>(B&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(B&32768)!==0,isIdentifier:()=>E===80||E>118,isReservedWord:()=>E>=83&&E<=118,isUnterminated:()=>(B&4)!==0,getCommentDirectives:()=>F,getNumericLiteralFlags:()=>B&25584,getTokenFlags:()=>B,reScanGreaterToken:qr,reScanAsteriskEqualsToken:_n,reScanSlashToken:ke,reScanTemplateToken:po,reScanTemplateHeadOrNoSubstitutionTemplate:Vr,scanJsxIdentifier:cl,scanJsxAttributeValue:Sc,reScanJsxAttributeValue:Hr,reScanJsxToken:xi,reScanLessThanToken:io,reScanHashToken:ga,reScanQuestionToken:Ya,reScanInvalidIdentifier:cr,scanJsxToken:Gc,scanJsDocToken:Ft,scanJSDocCommentTextToken:Wr,scan:Xt,getText:ps,clearCommentDirectives:yo,setText:bo,setScriptTarget:gc,setLanguageVariant:Cg,setScriptKind:Nc,setJSDocParsingMode:iA,setOnError:Qa,resetTokenState:ma,setTextPos:ma,setSkipJsDocLeadingAsterisks:vu,tryScan:Qi,lookAhead:Or,scanRange:Rn};return Zo.isDebugging&&Object.defineProperty(ne,"__debugShowCurrentPositionInText",{get:()=>{let li=ne.getText();return li.slice(0,ne.getTokenFullStart())+"\u2551"+li.slice(ne.getTokenFullStart())}}),ne;function ce(li){return Fme(A,li)}function fe(li){return li>=0&&li=0&&li=65&&Wc<=70)Wc+=32;else if(!(Wc>=48&&Wc<=57||Wc>=97&&Wc<=102))break;Xa.push(Wc),f++,Yl=!1}return Xa.length=I){Ps+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}let ac=ue(f);if(ac===Ei){Ps+=A.substring(Xa,f),f++;break}if(ac===92&&!li){Ps+=A.substring(Xa,f),Ps+=Yt(3),Xa=f;continue}if((ac===10||ac===13)&&!li){Ps+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}f++}return Ps}function At(li){let Ei=ue(f)===96;f++;let Ps=f,Xa="",ac;for(;;){if(f>=I){Xa+=A.substring(Ps,f),B|=4,be(ts.Unterminated_template_literal),ac=Ei?15:18;break}let Yl=ue(f);if(Yl===96){Xa+=A.substring(Ps,f),f++,ac=Ei?15:18;break}if(Yl===36&&f+1=I)return be(ts.Unexpected_end_of_text),"";let Ps=ue(f);switch(f++,Ps){case 48:if(f>=I||!mce(ue(f)))return"\0";case 49:case 50:case 51:f=55296&&Xa<=56319&&f+6=56320&&Sg<=57343)return f=Wc,ac+String.fromCharCode(Sg)}return ac;case 120:for(;f1114111&&(li&&be(ts.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Ps,f-Ps),Yl=!0),f>=I?(li&&be(ts.Unexpected_end_of_text),Yl=!0):ue(f)===125?f++:(li&&be(ts.Unterminated_Unicode_escape_sequence),Yl=!0),Yl?(B|=2048,A.substring(Ei,f)):(B|=8,F2i(ac))}function Nr(){if(f+5=0&&See(Ps,e)){li+=Tr(!0),Ei=f;continue}if(Ps=Nr(),!(Ps>=0&&See(Ps,e)))break;B|=1024,li+=A.substring(Ei,f),li+=F2i(Ps),f+=6,Ei=f}else break}return li+=A.substring(Ei,f),li}function xt(){let li=N.length;if(li>=2&&li<=12){let Ei=N.charCodeAt(0);if(Ei>=97&&Ei<=122){let Ps=D7a.get(N);if(Ps!==void 0)return E=Ps}}return E=80}function Zr(li){let Ei="",Ps=!1,Xa=!1;for(;;){let ac=ue(f);if(ac===95){B|=512,Ps?(Ps=!1,Xa=!0):be(Xa?ts.Multiple_consecutive_numeric_separators_are_not_permitted:ts.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if(Ps=!0,!mce(ac)||ac-48>=li)break;Ei+=A[f],f++,Xa=!1}return ue(f-1)===95&&be(ts.Numeric_separators_are_not_allowed_here,f-1,1),Ei}function qt(){return ue(f)===110?(N+="n",B&384&&(N=d$a(N)+"n"),f++,10):(N=""+(B&128?parseInt(N.slice(2),2):B&256?parseInt(N.slice(2),8):+N),9)}function Xt(){for(C=f,B=0;;){if(b=f,f>=I)return E=1;let li=ce(f);if(f===0&&li===35&&Cvi(A,f)){if(f=_vi(A,f),t)continue;return E=6}switch(li){case 10:case 13:if(B|=1,t){f++;continue}else return li===13&&f+1=0&&i4(Ei,e))return N=Tr(!0)+vt(),E=xt();let Ps=Nr();return Ps>=0&&i4(Ps,e)?(f+=6,B|=1024,N=String.fromCharCode(Ps)+vt(),E=xt()):(be(ts.Invalid_character),f++,E=0);case 35:if(f!==0&&A[f+1]==="!")return be(ts.can_only_be_used_at_the_start_of_a_file,f,2),f++,E=0;let Xa=ce(f+1);if(Xa===92){f++;let Wc=er();if(Wc>=0&&i4(Wc,e))return N="#"+Tr(!0)+vt(),E=81;let Sg=Nr();if(Sg>=0&&i4(Sg,e))return f+=6,B|=1024,N="#"+String.fromCharCode(Sg)+vt(),E=81;f--}return i4(Xa,e)?(f++,Ar(Xa,e)):(N="#",be(ts.Invalid_character,f++,xR(li))),E=81;case 65533:return be(ts.File_appears_to_be_binary,0,0),f=I,E=8;default:let ac=Ar(li,e);if(ac)return E=ac;if(uJe(li)){f+=xR(li);continue}else if(CV(li)){B|=1,f+=xR(li);continue}let Yl=xR(li);return be(ts.Invalid_character,f,Yl),f+=Yl,E=0}}}function lr(){switch(ae){case 0:return!0;case 1:return!1}return X!==3&&X!==4?!0:ae===3?!1:P7a.test(A.slice(C,f))}function cr(){Zo.assert(E===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=b=C,B=0;let li=ce(f),Ei=Ar(li,99);return Ei?E=Ei:(f+=xR(li),E)}function Ar(li,Ei){let Ps=li;if(i4(Ps,Ei)){for(f+=xR(Ps);f=I)return E=1;let Ei=ue(f);if(Ei===60)return ue(f+1)===47?(f+=2,E=31):(f++,E=30);if(Ei===123)return f++,E=19;let Ps=0;for(;f0)break;vNe(Ei)||(Ps=f)}f++}return N=A.substring(C,f),Ps===-1?13:12}function cl(){if(H1(E)){for(;f=I)return E=1;for(let Ei=ue(f);f=0&&uJe(ue(f-1))&&!(f+1=I)return E=1;let li=ce(f);switch(f+=xR(li),li){case 9:case 11:case 12:case 32:for(;f=0&&i4(Ei,e))return N=Tr(!0)+vt(),E=xt();let Ps=Nr();return Ps>=0&&i4(Ps,e)?(f+=6,B|=1024,N=String.fromCharCode(Ps)+vt(),E=xt()):(f++,E=0)}if(i4(li,e)){let Ei=li;for(;f=0),f=li,C=li,b=li,E=0,N=void 0,B=0}function vu(li){Q+=li?1:-1}}function Fme(e,t){return e.codePointAt(t)}function xR(e){return e>=65536?2:e===-1?0:1}function q7a(e){if(Zo.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}var $7a=String.fromCodePoint?e=>String.fromCodePoint(e):q7a;function F2i(e){return $7a(e)}var Z2i=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),L2i=new Set(["ASCII","ASCII_Hex_Digit","AHex","Alphabetic","Alpha","Any","Assigned","Bidi_Control","Bidi_C","Bidi_Mirrored","Bidi_M","Case_Ignorable","CI","Cased","Changes_When_Casefolded","CWCF","Changes_When_Casemapped","CWCM","Changes_When_Lowercased","CWL","Changes_When_NFKC_Casefolded","CWKCF","Changes_When_Titlecased","CWT","Changes_When_Uppercased","CWU","Dash","Default_Ignorable_Code_Point","DI","Deprecated","Dep","Diacritic","Dia","Emoji","Emoji_Component","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","Extender","Ext","Grapheme_Base","Gr_Base","Grapheme_Extend","Gr_Ext","Hex_Digit","Hex","IDS_Binary_Operator","IDSB","IDS_Trinary_Operator","IDST","ID_Continue","IDC","ID_Start","IDS","Ideographic","Ideo","Join_Control","Join_C","Logical_Order_Exception","LOE","Lowercase","Lower","Math","Noncharacter_Code_Point","NChar","Pattern_Syntax","Pat_Syn","Pattern_White_Space","Pat_WS","Quotation_Mark","QMark","Radical","Regional_Indicator","RI","Sentence_Terminal","STerm","Soft_Dotted","SD","Terminal_Punctuation","Term","Unified_Ideograph","UIdeo","Uppercase","Upper","Variation_Selector","VS","White_Space","space","XID_Continue","XIDC","XID_Start","XIDS"]),V2i=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),ENe={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};ENe.Script_Extensions=ENe.Script;function gj(e){return e.start+e.length}function eza(e){return e.length===0}function ONr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function tza(e,t){return ONr(e,t-e)}function tJe(e){return ONr(e.span.start,e.newLength)}function rza(e){return eza(e.span)&&e.newLength===0}function Evi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var VTu=Evi(ONr(0,0),0);function Svi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function Qbt(e){return(e.flags&16)===0}function nza(e,t){if(e===void 0||Qbt(e))return e;for(e=e.original;e;){if(Qbt(e))return!t||t(e)?e:void 0;e=e.original}}function hNe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function hJe(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function yV(e){return hJe(e.escapedText)}function vvi(e){let t=fvi(e.escapedText);return t?o7a(t,Cce):void 0}function uNr(e){return e.valueDeclaration&&Tza(e.valueDeclaration)?yV(e.valueDeclaration.name):hJe(e.escapedName)}function Bvi(e){let t=e.parent.parent;if(t){if(O2i(t))return Tbt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return Tbt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let n=r.argumentExpression;if($C(n))return n}break;case 217:return Tbt(t.expression);case 256:{if(O2i(t.statement)||Oza(t.statement))return Tbt(t.statement);break}}}}function Tbt(e){let t=wvi(e);return t&&$C(t)?t:void 0}function iza(e){return e.name||Bvi(e)}function sza(e){return!!e.name}function MNr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(JNr(r)){case 1:case 4:case 5:case 3:return UNr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return iza(e);case 340:return Bvi(e);case 277:{let{expression:r}=e;return $C(r)?r:void 0}case 212:let t=e;if(Hvi(t))return t.argumentExpression}return e.name}function wvi(e){if(e!==void 0)return MNr(e)||(lBi(e)||uBi(e)||mNr(e)?oza(e):void 0)}function oza(e){if(e.parent){if(Eec(e.parent)||oec(e.parent))return e.parent.name;if(NNe(e.parent)&&e===e.parent.right){if($C(e.parent.left))return e.parent.left;if(Kvi(e.parent.left))return UNr(e.parent.left)}else if(ABi(e.parent)&&$C(e.parent.name))return e.parent.name}else return}function aza(e){if(Fqa(e))return wee(e.modifiers,tDr)}function cza(e){if(SJe(e,98303))return wee(e.modifiers,Dza)}function Tvi(e,t){if(e.name)if($C(e.name)){let r=e.name.escapedText;return mJe(e.parent,t).filter(n=>nSi(n)&&$C(n.name)&&n.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Zo.assert(r>-1,"Parameters should always be in their parents' parameter list");let n=mJe(e.parent,t).filter(nSi);if(rVec(n)&&n.typeParameters.some(a=>a.name.escapedText===r))}function gza(e){return Rvi(e,!1)}function Aza(e){return Rvi(e,!0)}function dza(e){return vce(e,Rec)}function pza(e){return bza(e,Pec)}function fza(e){return vce(e,Nec,!0)}function Iza(e){return vce(e,Dec,!0)}function hza(e){return vce(e,kec,!0)}function mza(e){return vce(e,xec,!0)}function Cza(e){return vce(e,Gec,!0)}function _za(e){return vce(e,Zec,!0)}function yza(e){let t=vce(e,iDr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function mJe(e,t){var r;if(!KNr(e))return x2;let n=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(n===void 0||t){let a=Cqa(e,t);Zo.assert(a.length<2||a[0]!==a[1]),n=KSi(a,o=>yBi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=n)}return n}function Nvi(e){return mJe(e,!1)}function vce(e,t,r){return JSi(mJe(e,r),t)}function bza(e,t){return Nvi(e).filter(t)}function gNr(e){return e.kind===80||e.kind===81}function Eza(e){return Bce(e)&&!!(e.flags&64)}function Sza(e){return vJe(e)&&!!(e.flags&64)}function P2i(e){return cBi(e)&&!!(e.flags&64)}function HNr(e){return sDr(e,8)}function vza(e){return Vbt(e)&&!!(e.flags&64)}function YNr(e){return e>=166}function Dvi(e){return e>=0&&e<=165}function Bza(e){return Dvi(e.kind)}function _ce(e){return fj(e,"pos")&&fj(e,"end")}function wza(e){return 9<=e&&e<=15}function W2i(e){return 15<=e&&e<=18}function SNe(e){var t;return $C(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function kvi(e){var t;return Yme(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Tza(e){return(Kbt(e)||Gza(e))&&Yme(e.name)}function vee(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function Rza(e){return!!(Jvi(e)&31)}function Nza(e){return Rza(e)||e===126||e===164||e===129}function Dza(e){return vee(e.kind)}function xvi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function Gvi(e){return!!e&&xza(e.kind)}function kza(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function xza(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return kza(e)}}function BNe(e){return e&&(e.kind===263||e.kind===231)}function Gza(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function Fza(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function Zza(e){return Xqa(e.kind)}function Lza(e){if(e){let t=e.kind;return t===207||t===206}return!1}function Vza(e){let t=e.kind;return t===209||t===210}function Pza(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function wNe(e){return Fvi(HNr(e).kind)}function Fvi(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function Wza(e){return Zvi(HNr(e).kind)}function Zvi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return Fvi(e)}}function Oza(e){return Mza(HNr(e).kind)}function Mza(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return Zvi(e)}}function Hza(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function Lvi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function Vvi(e){return e===252||e===251||e===259||e===246||e===244||e===242||e===249||e===250||e===248||e===245||e===256||e===253||e===255||e===257||e===258||e===243||e===247||e===254||e===353}function O2i(e){return e.kind===168?e.parent&&e.parent.kind!==345||Qme(e):Hza(e.kind)}function Yza(e){let t=e.kind;return Vvi(t)||Lvi(t)||Qza(e)}function Qza(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!oqa(e)}function Xza(e){let t=e.kind;return Vvi(t)||Lvi(t)||t===241}function Pvi(e){return e.kind>=309&&e.kind<=351}function Jza(e){return e.kind===320||e.kind===319||e.kind===321||jza(e)||Uza(e)||Tec(e)||bBi(e)}function Uza(e){return e.kind>=327&&e.kind<=351}function Rbt(e){return e.kind===178}function Nbt(e){return e.kind===177}function Pme(e){if(!KNr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function Kza(e){return!!e.initializer}function QNr(e){return e.kind===11||e.kind===15}function jza(e){return e.kind===324||e.kind===325||e.kind===326}function M2i(e){return(e.flags&33554432)!==0}var PTu=zza();function zza(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,n)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&vNe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:RNe,decreaseIndent:RNe,clear:()=>e=""}}function qza(e,t){let r=e.entries();for(let[n,a]of r){let o=t(a,n);if(o)return o}}function $za(e){return e.end-e.pos}function Wvi(e){return eqa(e),(e.flags&1048576)!==0}function eqa(e){e.flags&2097152||((e.flags&262144||Ok(e,Wvi))&&(e.flags|=1048576),e.flags|=2097152)}function bce(e){for(;e&&e.kind!==307;)e=e.parent;return e}function Wme(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function ANr(e){return!Wme(e)}function Xbt(e,t,r){if(Wme(e))return e.pos;if(Pvi(e)||e.kind===12)return dj((t??bce(e)).text,e.pos,!1,!0);if(r&&Pme(e))return Xbt(e.jsDoc[0],t);if(e.kind===352){t??(t=bce(e));let n=DNr(EBi(e,t));if(n)return Xbt(n,t,r)}return dj((t??bce(e)).text,e.pos,!1,!1,aqa(e))}function H2i(e,t,r=!1){return gJe(e.text,t,r)}function tqa(e){return!!Svi(e,vec)}function gJe(e,t,r=!1){if(Wme(t))return"";let n=e.substring(r?t.pos:dj(e,t.pos),t.end);return tqa(t)&&(n=n.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` -`)),n}function TNe(e){let t=e.emitNode;return t&&t.flags||0}function rqa(e,t,r){Zo.assertGreaterThanOrEqual(t,0),Zo.assertGreaterThanOrEqual(r,0),Zo.assertLessThanOrEqual(t,e.length),Zo.assertLessThanOrEqual(t+r,e.length)}function Lbt(e){return e.kind===244&&e.expression.kind===11}function XNr(e){return!!(TNe(e)&2097152)}function Y2i(e){return XNr(e)&&dBi(e)}function nqa(e){return $C(e.name)&&!e.initializer}function Q2i(e){return XNr(e)&&rEt(e)&&RNr(e.declarationList.declarations,nqa)}function iqa(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?NNr(j7a(t,e.pos),lNr(t,e.pos)):lNr(t,e.pos);return wee(r,n=>n.end<=e.end&&t.charCodeAt(n.pos+1)===42&&t.charCodeAt(n.pos+2)===42&&t.charCodeAt(n.pos+3)!==47)}function sqa(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function oqa(e){return e&&e.kind===241&&Gvi(e.parent)}function X2i(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function Qme(e){return!!e&&!!(e.flags&524288)}function aqa(e){return!!e&&!!(e.flags&16777216)}function cqa(e){for(;Jbt(e,!0);)e=e.right;return e}function lqa(e){return $C(e)&&e.escapedText==="exports"}function uqa(e){return $C(e)&&e.escapedText==="module"}function Ovi(e){return(Bce(e)||Mvi(e))&&uqa(e.expression)&&_Je(e)==="exports"}function JNr(e){let t=Aqa(e);return t===5||Qme(e)?t:0}function gqa(e){return aJe(e.arguments)===3&&Bce(e.expression)&&$C(e.expression.expression)&&yV(e.expression.expression)==="Object"&&yV(e.expression.name)==="defineProperty"&&eEt(e.arguments[1])&&CJe(e.arguments[0],!0)}function Mvi(e){return vJe(e)&&eEt(e.argumentExpression)}function EJe(e,t){return Bce(e)&&(!t&&e.expression.kind===110||$C(e.name)&&CJe(e.expression,!0))||Hvi(e,t)}function Hvi(e,t){return Mvi(e)&&(!t&&e.expression.kind===110||qNr(e.expression)||EJe(e.expression,!0))}function CJe(e,t){return qNr(e)||EJe(e,t)}function Aqa(e){if(cBi(e)){if(!gqa(e))return 0;let t=e.arguments[0];return lqa(t)||Ovi(t)?8:EJe(t)&&_Je(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!Kvi(e.left)||dqa(cqa(e))?0:CJe(e.left.expression,!0)&&_Je(e.left)==="prototype"&&aBi(fqa(e))?6:pqa(e.left)}function dqa(e){return lec(e)&&DNe(e.expression)&&e.expression.text==="0"}function UNr(e){if(Bce(e))return e.name;let t=jNr(e.argumentExpression);return DNe(t)||QNr(t)?t:e}function _Je(e){let t=UNr(e);if(t){if($C(t))return t.escapedText;if(QNr(t)||DNe(t))return hNe(t.text)}}function pqa(e){if(e.expression.kind===110)return 4;if(Ovi(e))return 2;if(CJe(e.expression,!0)){if(Yqa(e.expression))return 3;let t=e;for(;!$C(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&_Je(t)==="exports")&&EJe(e))return 1;if(CJe(e,!0)||vJe(e)&&Rqa(e))return 5}return 0}function fqa(e){for(;NNe(e.right);)e=e.right;return e.right}function Iqa(e){return gBi(e)&&NNe(e.expression)&&JNr(e.expression)!==0&&NNe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function hqa(e){switch(e.kind){case 243:let t=dNr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function dNr(e){return rEt(e)?DNr(e.declarationList.declarations):void 0}function mqa(e){return bJe(e)&&e.body&&e.body.kind===267?e.body:void 0}function KNr(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 317:case 323:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Cqa(e,t){let r;sqa(e)&&Kza(e)&&Pme(e.initializer)&&(r=_V(r,J2i(e,e.initializer.jsDoc)));let n=e;for(;n&&n.parent;){if(Pme(n)&&(r=_V(r,J2i(e,n.jsDoc))),n.kind===169){r=_V(r,(t?uza:lza)(n));break}if(n.kind===168){r=_V(r,(t?Aza:gza)(n));break}n=yqa(n)}return r||x2}function J2i(e,t){let r=z6a(t);return KSi(t,n=>{if(n===r){let a=wee(n.tags,o=>_qa(e,o));return n.tags===a?[n]:a}else return wee(n.tags,Fec)})}function _qa(e,t){return!(iDr(t)||Wec(t))||!t.parent||!yBi(t.parent)||!rDr(t.parent.parent)||t.parent.parent===e}function yqa(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||mqa(t)||Jbt(e))return t;if(t.parent&&(dNr(t.parent)===e||Jbt(t)))return t.parent;if(t.parent&&t.parent.parent&&(dNr(t.parent.parent)||hqa(t.parent.parent)===e||Iqa(t.parent.parent)))return t.parent.parent}function jNr(e,t){return sDr(e,t?-2147483647:1)}function bqa(e){let t=Eqa(e);if(t&&Qme(e)){let r=dza(e);if(r)return r.class}return t}function Eqa(e){let t=zNr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function Sqa(e){if(Qme(e))return pza(e).map(t=>t.class);{let t=zNr(e.heritageClauses,119);return t?.types}}function vqa(e){return nDr(e)?Bqa(e)||x2:BNe(e)&&NNr(oNr(bqa(e)),Sqa(e))||x2}function Bqa(e){let t=zNr(e.heritageClauses,96);return t?t.types:void 0}function zNr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function Cce(e){return 83<=e&&e<=165}function wqa(e){return 19<=e&&e<=79}function URr(e){return Cce(e)||wqa(e)}function eEt(e){return QNr(e)||DNe(e)}function Tqa(e){return uec(e)&&(e.operator===40||e.operator===41)&&DNe(e.operand)}function Rqa(e){if(!(e.kind===167||e.kind===212))return!1;let t=vJe(e)?jNr(e.argumentExpression):e.expression;return!eEt(t)&&!Tqa(t)}function Nqa(e){return gNr(e)?yV(e):_Bi(e)?C$a(e):e.text}function mNe(e){return yJe(e.pos)||yJe(e.end)}function KRr(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function jRr(e){return!!((e.templateFlags||0)&2048)}function Dqa(e){return e&&!!(k$a(e)?jRr(e):jRr(e.head)||oD(e.templateSpans,t=>jRr(t.literal)))}var WTu=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),OTu=new Map(Object.entries({'"':""","'":"'"}));function kqa(e){return!!e&&e.kind===80&&xqa(e)}function xqa(e){return e.escapedText==="this"}function SJe(e,t){return!!Zqa(e,t)}function Gqa(e){return SJe(e,256)}function Fqa(e){return SJe(e,32768)}function Zqa(e,t){return Vqa(e)&t}function Lqa(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=Xvi(e)|536870912),r||t&&Qme(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=Yvi(e)|268435456),Qvi(e.modifierFlagsCache)):Pqa(e.modifierFlagsCache))}function Vqa(e){return Lqa(e,!1)}function Yvi(e){let t=0;return e.parent&&!Ubt(e)&&(Qme(e)&&(fza(e)&&(t|=8388608),Iza(e)&&(t|=16777216),hza(e)&&(t|=33554432),mza(e)&&(t|=67108864),Cza(e)&&(t|=134217728)),_za(e)&&(t|=65536)),t}function Pqa(e){return e&65535}function Qvi(e){return e&131071|(e&260046848)>>>23}function Wqa(e){return Qvi(Yvi(e))}function Oqa(e){return Xvi(e)|Wqa(e)}function Xvi(e){let t=oDr(e)?fO(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function fO(e){let t=0;if(e)for(let r of e)t|=Jvi(r.kind);return t}function Jvi(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function Mqa(e){return e===76||e===77||e===78}function Uvi(e){return e>=64&&e<=79}function Jbt(e,t){return NNe(e)&&(t?e.operatorToken.kind===64:Uvi(e.operatorToken.kind))&&wNe(e.left)}function qNr(e){return e.kind===80||Hqa(e)}function Hqa(e){return Bce(e)&&$C(e.name)&&qNr(e.expression)}function Yqa(e){return EJe(e)&&_Je(e)==="prototype"}function zRr(e){return e.flags&3899393?e.objectFlags:0}function Qqa(e){let t;return Ok(e,r=>{ANr(r)&&(t=r)},r=>{for(let n=r.length-1;n>=0;n--)if(ANr(r[n])){t=r[n];break}}),t}function Xqa(e){return e>=182&&e<=205||e===133||e===159||e===150||e===163||e===151||e===136||e===154||e===155||e===116||e===157||e===146||e===141||e===233||e===312||e===313||e===314||e===315||e===316||e===317||e===318}function Kvi(e){return e.kind===211||e.kind===212}function Jqa(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function Uqa(e,t){this.flags=t,(Zo.isDebugging||Fbt)&&(this.checker=e)}function Kqa(e,t){this.flags=t,Zo.isDebugging&&(this.checker=e)}function qRr(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function jqa(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function zqa(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function qqa(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}var k2={getNodeConstructor:()=>qRr,getTokenConstructor:()=>jqa,getIdentifierConstructor:()=>zqa,getPrivateIdentifierConstructor:()=>qRr,getSourceFileConstructor:()=>qRr,getSymbolConstructor:()=>Jqa,getTypeConstructor:()=>Uqa,getSignatureConstructor:()=>Kqa,getSourceMapSourceConstructor:()=>qqa},$qa=[];function e$a(e){Object.assign(k2,e),hO($qa,t=>t(k2))}function t$a(e,t){return e.replace(/\{(\d+)\}/g,(r,n)=>""+Zo.checkDefined(t[+n]))}var U2i;function r$a(e){return U2i&&U2i[e.key]||e.message}function dNe(e,t,r,n,a,...o){r+n>t.length&&(n=t.length-r),rqa(t,r,n);let l=r$a(a);return oD(o)&&(l=t$a(l,o)),{file:void 0,start:r,length:n,messageText:l,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function n$a(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function jvi(e,t){let r=t.fileName||"",n=t.text.length;Zo.assertEqual(e.fileName,r),Zo.assertLessThanOrEqual(e.start,n),Zo.assertLessThanOrEqual(e.start+e.length,n);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)n$a(o)&&o.fileName===r?(Zo.assertLessThanOrEqual(o.start,n),Zo.assertLessThanOrEqual(o.start+o.length,n),a.relatedInformation.push(jvi(o,t))):a.relatedInformation.push(o)}return a}function Nme(e,t){let r=[];for(let n of e)r.push(jvi(n,t));return r}function K2i(e){return e===4||e===2||e===1||e===6?1:0}var y0={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:y0.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(y0.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(y0.module.computeValue(e)===100||y0.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(y0.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:y0.esModuleInterop.computeValue(e)||y0.module.computeValue(e)===4||y0.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=y0.moduleResolution.computeValue(e);if(!j2i(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=y0.moduleResolution.computeValue(e);if(!j2i(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:y0.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||y0.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&y0.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?y0.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>Eee(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>Eee(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>Eee(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>Eee(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>Eee(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>Eee(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>Eee(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>Eee(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>Eee(e,"useUnknownInCatchVariables")}},MTu=y0.allowImportingTsExtensions.computeValue,HTu=y0.target.computeValue,YTu=y0.module.computeValue,QTu=y0.moduleResolution.computeValue,XTu=y0.moduleDetection.computeValue,JTu=y0.isolatedModules.computeValue,UTu=y0.esModuleInterop.computeValue,KTu=y0.allowSyntheticDefaultImports.computeValue,jTu=y0.resolvePackageJsonExports.computeValue,zTu=y0.resolvePackageJsonImports.computeValue,qTu=y0.resolveJsonModule.computeValue,$Tu=y0.declaration.computeValue,eRu=y0.preserveConstEnums.computeValue,tRu=y0.incremental.computeValue,rRu=y0.declarationMap.computeValue,nRu=y0.allowJs.computeValue,iRu=y0.useDefineForClassFields.computeValue;function j2i(e){return e>=3&&e<=99||e===100}function Eee(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function i$a(e){return qza(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var s$a=["node_modules","bower_components","jspm_packages"],zvi=`(?!(${s$a.join("|")})(/|$))`,o$a={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${zvi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>qvi(e,o$a.singleAsteriskRegexFragment)},a$a={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${zvi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>qvi(e,a$a.singleAsteriskRegexFragment)};function qvi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function c$a(e,t){return t||l$a(e)||3}function l$a(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var $vi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],sRu=USi($vi),oRu=[...$vi,[".json"]],u$a=[[".js",".jsx"],[".mjs"],[".cjs"]],aRu=USi(u$a),g$a=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],cRu=[...g$a,[".json"]],A$a=[".d.ts",".d.cts",".d.mts"];function yJe(e){return!(e>=0)}function Dbt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),Zo.assert(e.relatedInformation!==x2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function d$a(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:let I=e.length-1,C=0;for(;e.charCodeAt(C)===48;)C++;return e.slice(C,I)||"0"}let r=2,n=e.length-1,a=(n-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let I=n-1,C=0;I>=r;I--,C+=t){let b=C>>>4,E=e.charCodeAt(I),N=(E<=57?E-48:10+E-(E<=70?65:97))<<(C&15);o[b]|=N;let B=N>>>16;B&&(o[b+1]|=B)}let l="",A=o.length-1,f=!0;for(;f;){let I=0;f=!1;for(let C=A;C>=0;C--){let b=I<<16|o[C],E=b/10|0;o[C]=E,I=b-E*10,E&&!f&&(A=C,f=!0)}l=I+l}return l}function p$a({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function pNr(e,t){return e.pos=t,e}function f$a(e,t){return e.end=t,e}function Ece(e,t,r){return f$a(pNr(e,t),r)}function z2i(e,t,r){return Ece(e,t,t+r)}function $Nr(e,t){return e&&t&&(e.parent=t),e}function I$a(e,t){if(!e)return e;return BSi(e,Pvi(e)?r:a),e;function r(o,l){if(t&&o.parent===l)return"skip";$Nr(o,l)}function n(o){if(Pme(o))for(let l of o.jsDoc)r(l,o),BSi(l,r)}function a(o,l){return r(o,l)||n(o)}}function h$a(e){return!!(e.flags&262144&&e.isThisType)}function m$a(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function C$a(e){return`${yV(e.namespace)}:${yV(e.name)}`}var lRu=String.prototype.replace,fNr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],uRu=new Set(fNr),_$a=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),gRu=new Set([...fNr,...fNr.map(e=>`node:${e}`),..._$a]);function y$a(){let e,t,r,n,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:l,createBasePrivateIdentifierNode:A,createBaseTokenNode:f,createBaseNode:I};function o(C){return new(a||(a=k2.getSourceFileConstructor()))(C,-1,-1)}function l(C){return new(r||(r=k2.getIdentifierConstructor()))(C,-1,-1)}function A(C){return new(n||(n=k2.getPrivateIdentifierConstructor()))(C,-1,-1)}function f(C){return new(t||(t=k2.getTokenConstructor()))(C,-1,-1)}function I(C){return new(e||(e=k2.getNodeConstructor()))(C,-1,-1)}}var b$a={getParenthesizeLeftSideOfBinaryForOperator:e=>VE,getParenthesizeRightSideOfBinaryForOperator:e=>VE,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:VE,parenthesizeConditionOfConditionalExpression:VE,parenthesizeBranchOfConditionalExpression:VE,parenthesizeExpressionOfExportDefault:VE,parenthesizeExpressionOfNew:e=>Aj(e,wNe),parenthesizeLeftSideOfAccess:e=>Aj(e,wNe),parenthesizeOperandOfPostfixUnary:e=>Aj(e,wNe),parenthesizeOperandOfPrefixUnary:e=>Aj(e,Wza),parenthesizeExpressionsOfCommaDelimitedList:e=>Aj(e,_ce),parenthesizeExpressionForDisallowedComma:VE,parenthesizeExpressionOfExpressionStatement:VE,parenthesizeConciseBodyOfArrowFunction:VE,parenthesizeCheckTypeOfConditionalType:VE,parenthesizeExtendsTypeOfConditionalType:VE,parenthesizeConstituentTypesOfUnionType:e=>Aj(e,_ce),parenthesizeConstituentTypeOfUnionType:VE,parenthesizeConstituentTypesOfIntersectionType:e=>Aj(e,_ce),parenthesizeConstituentTypeOfIntersectionType:VE,parenthesizeOperandOfTypeOperator:VE,parenthesizeOperandOfReadonlyTypeOperator:VE,parenthesizeNonArrayTypeOfPostfixType:VE,parenthesizeElementTypesOfTupleType:e=>Aj(e,_ce),parenthesizeElementTypeOfTupleType:VE,parenthesizeTypeOfOptionalType:VE,parenthesizeTypeArguments:e=>e&&Aj(e,_ce),parenthesizeLeadingTypeArgument:VE},kbt=0,E$a=[];function eDr(e,t){let r=e&8?VE:T$a,n=T2i(()=>e&1?b$a:createParenthesizerRules(X)),a=T2i(()=>e&2?nullNodeConverters:createNodeConverters(X)),o=eH(z=>(ye,Ve)=>gt(ye,z,Ve)),l=eH(z=>ye=>se(z,ye)),A=eH(z=>ye=>K(ye,z)),f=eH(z=>()=>ND(z)),I=eH(z=>ye=>q_(z,ye)),C=eH(z=>(ye,Ve)=>UR(z,ye,Ve)),b=eH(z=>(ye,Ve)=>DD(z,ye,Ve)),E=eH(z=>(ye,Ve)=>kD(z,ye,Ve)),N=eH(z=>(ye,Ve)=>Mo(z,ye,Ve)),B=eH(z=>(ye,Ve,Ct)=>gp(z,ye,Ve,Ct)),F=eH(z=>(ye,Ve,Ct)=>lF(z,ye,Ve,Ct)),Q=eH(z=>(ye,Ve,Ct,wr)=>uF(z,ye,Ve,Ct,wr)),X={get parenthesizer(){return n()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:ae,createNumericLiteral:ue,createBigIntLiteral:de,createStringLiteral:Se,createStringLiteralFromNode:De,createRegularExpressionLiteral:k,createLiteralLikeNode:et,createIdentifier:je,createTempVariable:St,createLoopVariable:At,createUniqueName:Yt,getGeneratedNameForNode:Tr,createPrivateIdentifier:er,createUniquePrivateName:xt,getGeneratedPrivateNameForNode:Zr,createToken:Xt,createSuper:lr,createThis:cr,createNull:Ar,createTrue:qr,createFalse:_n,createModifier:ke,createModifiersFromModifierFlags:jt,createQualifiedName:Fn,updateQualifiedName:Nn,createComputedPropertyName:Hi,updateComputedPropertyName:po,createTypeParameterDeclaration:Vr,updateTypeParameterDeclaration:xi,createParameterDeclaration:io,updateParameterDeclaration:ga,createDecorator:Ya,updateDecorator:Gc,createPropertySignature:cl,updatePropertySignature:Sc,createPropertyDeclaration:Wr,updatePropertyDeclaration:Ft,createMethodSignature:zr,updateMethodSignature:Rn,createMethodDeclaration:Or,updateMethodDeclaration:Qi,createConstructorDeclaration:gc,updateConstructorDeclaration:Cg,createGetAccessorDeclaration:iA,updateGetAccessorDeclaration:ma,createSetAccessorDeclaration:li,updateSetAccessorDeclaration:Ei,createCallSignature:Xa,updateCallSignature:ac,createConstructSignature:Yl,updateConstructSignature:Wc,createIndexSignature:Sg,updateIndexSignature:Ul,createClassStaticBlockDeclaration:yo,updateClassStaticBlockDeclaration:bo,createTemplateLiteralTypeSpan:Xu,updateTemplateLiteralTypeSpan:Da,createKeywordTypeNode:pu,createTypePredicateNode:_g,updateTypePredicateNode:mI,createTypeReferenceNode:Qh,updateTypeReferenceNode:Ri,createFunctionTypeNode:Do,updateFunctionTypeNode:Wt,createConstructorTypeNode:Ru,updateConstructorTypeNode:Yn,createTypeQueryNode:OA,updateTypeQueryNode:GA,createTypeLiteralNode:$i,updateTypeLiteralNode:dl,createArrayTypeNode:Uf,updateArrayTypeNode:Kd,createTupleTypeNode:oA,updateTupleTypeNode:oo,createNamedTupleMember:Ki,updateNamedTupleMember:cc,createOptionalTypeNode:Xs,updateOptionalTypeNode:ws,createRestTypeNode:Gs,updateRestTypeNode:Ma,createUnionTypeNode:Tf,updateUnionTypeNode:cm,createIntersectionTypeNode:Fl,updateIntersectionTypeNode:rc,createConditionalTypeNode:sd,updateConditionalTypeNode:Om,createInferTypeNode:il,updateInferTypeNode:FA,createImportTypeNode:yg,updateImportTypeNode:Mp,createParenthesizedType:MA,updateParenthesizedType:Er,createThisTypeNode:Zt,createTypeOperatorNode:yn,updateTypeOperatorNode:ls,createIndexedAccessTypeNode:oa,updateIndexedAccessTypeNode:Fs,createMappedTypeNode:Wa,updateMappedTypeNode:Ca,createLiteralTypeNode:ld,updateLiteralTypeNode:Rp,createTemplateLiteralType:ZA,updateTemplateLiteralType:El,createObjectBindingPattern:np,updateObjectBindingPattern:HA,createArrayBindingPattern:df,updateArrayBindingPattern:Zs,createBindingElement:so,updateBindingElement:Ea,createArrayLiteralExpression:Ml,updateArrayLiteralExpression:Dr,createObjectLiteralExpression:Wn,updateObjectLiteralExpression:di,createPropertyAccessExpression:e&4?(z,ye)=>setEmitFlags(Bo(z,ye),262144):Bo,updatePropertyAccessExpression:us,createPropertyAccessChain:e&4?(z,ye,Ve)=>setEmitFlags(Ql(z,ye,Ve),262144):Ql,updatePropertyAccessChain:LA,createElementAccessExpression:ef,updateElementAccessExpression:ip,createElementAccessChain:_d,updateElementAccessChain:j1,createCallExpression:YA,updateCallExpression:Ac,createCallChain:Nm,updateCallChain:HS,createNewExpression:jd,updateNewExpression:dh,createTaggedTemplateExpression:Hp,updateTaggedTemplateExpression:uC,createTypeAssertion:nE,updateTypeAssertion:J_,createParenthesizedExpression:q0,updateParenthesizedExpression:XE,createFunctionExpression:TC,updateFunctionExpression:t_,createArrowFunction:cp,updateArrowFunction:Mm,createDeleteExpression:fb,updateDeleteExpression:pe,createTypeOfExpression:lm,updateTypeOfExpression:Kf,createVoidExpression:CI,updateVoidExpression:_I,createAwaitExpression:H2,updateAwaitExpression:iE,createPrefixUnaryExpression:se,updatePrefixUnaryExpression:O,createPostfixUnaryExpression:K,updatePostfixUnaryExpression:we,createBinaryExpression:gt,updateBinaryExpression:Yr,createConditionalExpression:Lr,updateConditionalExpression:fi,createTemplateExpression:$n,updateTemplateExpression:ra,createTemplateHead:SA,createTemplateMiddle:lI,createTemplateTail:lp,createNoSubstitutionTemplateLiteral:Ib,createTemplateLiteralLikeNode:$g,createYieldExpression:Na,updateYieldExpression:wd,createSpreadElement:z1,updateSpreadElement:T_,createClassExpression:RC,updateClassExpression:Hm,createOmittedExpression:YS,createExpressionWithTypeArguments:Fg,updateExpressionWithTypeArguments:hb,createAsExpression:gC,updateAsExpression:NC,createNonNullExpression:Y2,updateNonNullExpression:U_,createSatisfiesExpression:DC,updateSatisfiesExpression:kC,createNonNullChain:qI,updateNonNullChain:ph,createMetaProperty:vA,updateMetaProperty:Td,createTemplateSpan:Mc,updateTemplateSpan:Pf,createSemicolonClassElement:sE,createBlock:eA,updateBlock:QS,createVariableStatement:XS,updateVariableStatement:um,createEmptyStatement:gm,createExpressionStatement:cs,updateExpressionStatement:na,createIfStatement:ko,updateIfStatement:ki,createDoStatement:Kl,updateDoStatement:fd,createWhileStatement:jf,updateWhileStatement:Ld,createForStatement:AC,updateForStatement:JE,createForInStatement:Ym,updateForInStatement:vy,createForOfStatement:K_,updateForOfStatement:od,createContinueStatement:UE,updateContinueStatement:KE,createBreakStatement:Yp,updateBreakStatement:JS,createReturnStatement:By,updateReturnStatement:$0,createWithStatement:fw,updateWithStatement:Q2,createSwitchStatement:xc,updateSwitchStatement:ut,createLabeledStatement:ar,updateLabeledStatement:Jr,createThrowStatement:Gn,updateThrowStatement:Ts,createTryStatement:Qo,updateTryStatement:vg,createDebuggerStatement:Ng,createVariableDeclaration:Rf,updateVariableDeclaration:uI,createVariableDeclarationList:Th,updateVariableDeclarationList:oE,createFunctionDeclaration:TT,updateFunctionDeclaration:sB,createClassDeclaration:wy,updateClassDeclaration:jE,createInterfaceDeclaration:j_,updateInterfaceDeclaration:NT,createTypeAliasDeclaration:tf,updateTypeAliasDeclaration:Ty,createEnumDeclaration:US,updateEnumDeclaration:$I,createModuleDeclaration:BA,updateModuleDeclaration:$A,createModuleBlock:Qm,updateModuleBlock:zf,createCaseBlock:mb,updateCaseBlock:R_,createNamespaceExportDeclaration:Cb,updateNamespaceExportDeclaration:Ry,createImportEqualsDeclaration:_b,updateImportEqualsDeclaration:z_,createImportDeclaration:zE,updateImportDeclaration:oB,createImportClause:DT,updateImportClause:aB,createAssertClause:jS,updateAssertClause:XR,createAssertEntry:zS,updateAssertEntry:qE,createImportTypeAssertionContainer:X2,updateImportTypeAssertionContainer:kT,createImportAttributes:pn,updateImportAttributes:q1,createImportAttribute:J2,updateImportAttribute:ey,createNamespaceImport:up,updateNamespaceImport:Iw,createNamespaceExport:cB,updateNamespaceExport:RD,createNamedImports:Rd,updateNamedImports:JR,createImportSpecifier:ty,updateImportSpecifier:cF,createExportAssignment:$1,updateExportAssignment:$E,createExportDeclaration:N_,updateExportDeclaration:e1,createNamedExports:ry,updateNamedExports:xT,createExportSpecifier:yb,updateExportSpecifier:r_,createMissingDeclaration:Rh,createExternalModuleReference:bb,updateExternalModuleReference:lB,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return b(315)},get updateJSDocNonNullableType(){return E(315)},get createJSDocNullableType(){return b(314)},get updateJSDocNullableType(){return E(314)},get createJSDocOptionalType(){return I(316)},get updateJSDocOptionalType(){return C(316)},get createJSDocVariadicType(){return I(318)},get updateJSDocVariadicType(){return C(318)},get createJSDocNamepathType(){return I(319)},get updateJSDocNamepathType(){return C(319)},createJSDocFunctionType:lc,updateJSDocFunctionType:fh,createJSDocTypeLiteral:rf,updateJSDocTypeLiteral:yI,createJSDocTypeExpression:aE,updateJSDocTypeExpression:qS,createJSDocSignature:Qp,updateJSDocSignature:uB,createJSDocTemplateTag:r1,updateJSDocTemplateTag:gB,createJSDocTypedefTag:hw,updateJSDocTypedefTag:GT,createJSDocParameterTag:b0,updateJSDocParameterTag:ia,createJSDocPropertyTag:e2,updateJSDocPropertyTag:yd,createJSDocCallbackTag:bI,updateJSDocCallbackTag:ag,createJSDocOverloadTag:Eb,updateJSDocOverloadTag:n1,createJSDocAugmentsTag:U2,updateJSDocAugmentsTag:e0,createJSDocImplementsTag:n_,updateJSDocImplementsTag:Wf,createJSDocSeeTag:Xp,updateJSDocSeeTag:cE,createJSDocImportTag:Dp,updateJSDocImportTag:t2,createJSDocNameReference:lE,updateJSDocNameReference:Ip,createJSDocMemberName:Xh,updateJSDocMemberName:E0,createJSDocLink:aA,updateJSDocLink:fu,createJSDocLinkCode:Jp,updateJSDocLinkCode:dC,createJSDocLinkPlain:uE,updateJSDocLinkPlain:eh,get createJSDocTypeTag(){return F(344)},get updateJSDocTypeTag(){return Q(344)},get createJSDocReturnTag(){return F(342)},get updateJSDocReturnTag(){return Q(342)},get createJSDocThisTag(){return F(343)},get updateJSDocThisTag(){return Q(343)},get createJSDocAuthorTag(){return N(330)},get updateJSDocAuthorTag(){return B(330)},get createJSDocClassTag(){return N(332)},get updateJSDocClassTag(){return B(332)},get createJSDocPublicTag(){return N(333)},get updateJSDocPublicTag(){return B(333)},get createJSDocPrivateTag(){return N(334)},get updateJSDocPrivateTag(){return B(334)},get createJSDocProtectedTag(){return N(335)},get updateJSDocProtectedTag(){return B(335)},get createJSDocReadonlyTag(){return N(336)},get updateJSDocReadonlyTag(){return B(336)},get createJSDocOverrideTag(){return N(337)},get updateJSDocOverrideTag(){return B(337)},get createJSDocDeprecatedTag(){return N(331)},get updateJSDocDeprecatedTag(){return B(331)},get createJSDocThrowsTag(){return F(349)},get updateJSDocThrowsTag(){return Q(349)},get createJSDocSatisfiesTag(){return F(350)},get updateJSDocSatisfiesTag(){return Q(350)},createJSDocEnumTag:Np,updateJSDocEnumTag:Dm,createJSDocUnknownTag:gE,updateJSDocUnknownTag:FT,createJSDocText:Ro,updateJSDocText:AE,createJSDocComment:AB,updateJSDocComment:Xc,createJsxElement:iu,updateJsxElement:dE,createJsxSelfClosingElement:yL,updateJsxSelfClosingElement:KR,createJsxOpeningElement:Ou,updateJsxOpeningElement:ny,createJsxClosingElement:hp,updateJsxClosingElement:Am,createJsxFragment:K2,createJsxText:dB,updateJsxText:ZT,createJsxOpeningFragment:Cx,createJsxJsxClosingFragment:pB,updateJsxFragment:i_,createJsxAttribute:qf,updateJsxAttribute:Jh,createJsxAttributes:$S,updateJsxAttributes:Sb,createJsxSpreadAttribute:mp,updateJsxSpreadAttribute:r2,createJsxExpression:i1,updateJsxExpression:Of,createJsxNamespacedName:pE,updateJsxNamespacedName:Vd,createCaseClause:j,updateCaseClause:Z,createDefaultClause:Id,updateDefaultClause:fB,createHeritageClause:ev,updateHeritageClause:Ny,createCatchClause:vb,updateCatchClause:xD,createPropertyAssignment:IB,updatePropertyAssignment:Bb,createShorthandPropertyAssignment:gF,updateShorthandPropertyAssignment:x,createSpreadAssignment:te,updateSpreadAssignment:Re,createEnumMember:Le,updateEnumMember:ft,createSourceFile:dr,updateSourceFile:Ho,createRedirectedSourceFile:Ur,createBundle:Wg,updateBundle:cA,createSyntheticExpression:th,createSyntaxList:xn,createNotEmittedStatement:rn,createNotEmittedTypeElement:ec,createPartiallyEmittedExpression:Ci,updatePartiallyEmittedExpression:Po,createCommaListExpression:dc,updateCommaListExpression:Iu,createSyntheticReferenceExpression:Cl,updateSyntheticReferenceExpression:wl,cloneNode:tv,get createComma(){return o(28)},get createAssignment(){return o(64)},get createLogicalOr(){return o(57)},get createLogicalAnd(){return o(56)},get createBitwiseOr(){return o(52)},get createBitwiseXor(){return o(53)},get createBitwiseAnd(){return o(51)},get createStrictEquality(){return o(37)},get createStrictInequality(){return o(38)},get createEquality(){return o(35)},get createInequality(){return o(36)},get createLessThan(){return o(30)},get createLessThanEquals(){return o(33)},get createGreaterThan(){return o(32)},get createGreaterThanEquals(){return o(34)},get createLeftShift(){return o(48)},get createRightShift(){return o(49)},get createUnsignedRightShift(){return o(50)},get createAdd(){return o(40)},get createSubtract(){return o(41)},get createMultiply(){return o(42)},get createDivide(){return o(44)},get createModulo(){return o(45)},get createExponent(){return o(43)},get createPrefixPlus(){return l(40)},get createPrefixMinus(){return l(41)},get createPrefixIncrement(){return l(46)},get createPrefixDecrement(){return l(47)},get createBitwiseNot(){return l(55)},get createLogicalNot(){return l(54)},get createPostfixIncrement(){return A(46)},get createPostfixDecrement(){return A(47)},createImmediatelyInvokedFunctionExpression:Yu,createImmediatelyInvokedArrowFunction:qO,createVoidZero:hB,createExportDefault:mw,createExternalModuleExport:AF,createTypeCheck:$O,createIsNotTypeCheck:iY,createMethodCall:LT,createGlobalMethodCall:ff,createFunctionBindCall:GD,createFunctionCallCall:dF,createFunctionApplyCall:EL,createArraySliceCall:FD,createArrayConcatCall:fE,createObjectDefinePropertyCall:n2,createObjectGetOwnPropertyDescriptorCall:mB,createReflectGetCall:bd,createReflectSetCall:s1,createPropertyDescriptor:wb,createCallBinding:aY,createAssignmentTargetWrapper:tt,inlineExpressions:Jt,getInternalName:Xr,getLocalName:ui,getExportName:Is,getDeclarationName:Hs,getNamespaceMemberName:Rs,getExternalModuleOrNamespaceExportName:ja,restoreOuterExpressions:sY,restoreEnclosingLabel:oY,createUseStrictPrologue:Nd,copyPrologue:ho,copyStandardPrologue:ed,copyCustomPrologue:Og,ensureUseStrict:Nh,liftToBlock:o1,mergeLexicalEnvironment:q2,replaceModifiers:IE,replaceDecoratorsAndModifiers:zR,replacePropertyName:e3};return hO(E$a,z=>z(X)),X;function ae(z,ye){if(z===void 0||z===x2)z=[];else if(_ce(z)){if(ye===void 0||z.hasTrailingComma===ye)return z.transformFlags===void 0&&$2i(z),Zo.attachNodeArrayDebugInfo(z),z;let wr=z.slice();return wr.pos=z.pos,wr.end=z.end,wr.hasTrailingComma=ye,wr.transformFlags=z.transformFlags,Zo.attachNodeArrayDebugInfo(wr),wr}let Ve=z.length,Ct=Ve>=1&&Ve<=4?z.slice():z;return Ct.pos=-1,Ct.end=-1,Ct.hasTrailingComma=!!ye,Ct.transformFlags=0,$2i(Ct),Zo.attachNodeArrayDebugInfo(Ct),Ct}function ne(z){return t.createBaseNode(z)}function ce(z){let ye=ne(z);return ye.symbol=void 0,ye.localSymbol=void 0,ye}function fe(z,ye){return z!==ye&&(z.typeArguments=ye.typeArguments),Eo(z,ye)}function ue(z,ye=0){let Ve=typeof z=="number"?z+"":z;Zo.assert(Ve.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let Ct=ce(9);return Ct.text=Ve,Ct.numericLiteralFlags=ye,ye&384&&(Ct.transformFlags|=1024),Ct}function de(z){let ye=qt(10);return ye.text=typeof z=="string"?z:p$a(z)+"n",ye.transformFlags|=32,ye}function be(z,ye){let Ve=ce(11);return Ve.text=z,Ve.singleQuote=ye,Ve}function Se(z,ye,Ve){let Ct=be(z,ye);return Ct.hasExtendedUnicodeEscape=Ve,Ve&&(Ct.transformFlags|=1024),Ct}function De(z){let ye=be(Nqa(z),void 0);return ye.textSourceNode=z,ye}function k(z){let ye=qt(14);return ye.text=z,ye}function et(z,ye){switch(z){case 9:return ue(ye,0);case 10:return de(ye);case 11:return Se(ye,void 0);case 12:return dB(ye,!1);case 13:return dB(ye,!0);case 14:return k(ye);case 15:return $g(z,ye,void 0,0)}}function ct(z){let ye=t.createBaseIdentifierNode(80);return ye.escapedText=z,ye.jsDoc=void 0,ye.flowNode=void 0,ye.symbol=void 0,ye}function Me(z,ye,Ve,Ct){let wr=ct(hNe(z));return setIdentifierAutoGenerate(wr,{flags:ye,id:kbt,prefix:Ve,suffix:Ct}),kbt++,wr}function je(z,ye,Ve){ye===void 0&&z&&(ye=fvi(z)),ye===80&&(ye=void 0);let Ct=ct(hNe(z));return Ve&&(Ct.flags|=256),Ct.escapedText==="await"&&(Ct.transformFlags|=67108864),Ct.flags&256&&(Ct.transformFlags|=1024),Ct}function St(z,ye,Ve,Ct){let wr=1;ye&&(wr|=8);let ai=Me("",wr,Ve,Ct);return z&&z(ai),ai}function At(z){let ye=2;return z&&(ye|=8),Me("",ye,void 0,void 0)}function Yt(z,ye=0,Ve,Ct){return Zo.assert(!(ye&7),"Argument out of range: flags"),Zo.assert((ye&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Me(z,3|ye,Ve,Ct)}function Tr(z,ye=0,Ve,Ct){Zo.assert(!(ye&7),"Argument out of range: flags");let wr=z?gNr(z)?CNr(!1,Ve,z,Ct,yV):`generated@${getNodeId(z)}`:"";(Ve||Ct)&&(ye|=16);let ai=Me(wr,4|ye,Ve,Ct);return ai.original=z,ai}function Nr(z){let ye=t.createBasePrivateIdentifierNode(81);return ye.escapedText=z,ye.transformFlags|=16777216,ye}function er(z){return Obt(z,"#")||Zo.fail("First character of private identifier must be #: "+z),Nr(hNe(z))}function vt(z,ye,Ve,Ct){let wr=Nr(hNe(z));return setIdentifierAutoGenerate(wr,{flags:ye,id:kbt,prefix:Ve,suffix:Ct}),kbt++,wr}function xt(z,ye,Ve){z&&!Obt(z,"#")&&Zo.fail("First character of private identifier must be #: "+z);let Ct=8|(z?3:1);return vt(z??"",Ct,ye,Ve)}function Zr(z,ye,Ve){let Ct=gNr(z)?CNr(!0,ye,z,Ve,yV):`#generated@${getNodeId(z)}`,wr=vt(Ct,4|(ye||Ve?16:0),ye,Ve);return wr.original=z,wr}function qt(z){return t.createBaseTokenNode(z)}function Xt(z){Zo.assert(z>=0&&z<=165,"Invalid token"),Zo.assert(z<=15||z>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Zo.assert(z<=9||z>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Zo.assert(z!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let ye=qt(z),Ve=0;switch(z){case 134:Ve=384;break;case 160:Ve=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Ve=1;break;case 108:Ve=134218752,ye.flowNode=void 0;break;case 126:Ve=1024;break;case 129:Ve=16777216;break;case 110:Ve=16384,ye.flowNode=void 0;break}return Ve&&(ye.transformFlags|=Ve),ye}function lr(){return Xt(108)}function cr(){return Xt(110)}function Ar(){return Xt(106)}function qr(){return Xt(112)}function _n(){return Xt(97)}function ke(z){return Xt(z)}function jt(z){let ye=[];return z&32&&ye.push(ke(95)),z&128&&ye.push(ke(138)),z&2048&&ye.push(ke(90)),z&4096&&ye.push(ke(87)),z&1&&ye.push(ke(125)),z&2&&ye.push(ke(123)),z&4&&ye.push(ke(124)),z&64&&ye.push(ke(128)),z&256&&ye.push(ke(126)),z&16&&ye.push(ke(164)),z&8&&ye.push(ke(148)),z&512&&ye.push(ke(129)),z&1024&&ye.push(ke(134)),z&8192&&ye.push(ke(103)),z&16384&&ye.push(ke(147)),ye.length?ye:void 0}function Fn(z,ye){let Ve=ne(166);return Ve.left=z,Ve.right=EI(ye),Ve.transformFlags|=$o(Ve.left)|CNe(Ve.right),Ve.flowNode=void 0,Ve}function Nn(z,ye,Ve){return z.left!==ye||z.right!==Ve?Eo(Fn(ye,Ve),z):z}function Hi(z){let ye=ne(167);return ye.expression=n().parenthesizeExpressionOfComputedPropertyName(z),ye.transformFlags|=$o(ye.expression)|1024|131072,ye}function po(z,ye){return z.expression!==ye?Eo(Hi(ye),z):z}function Vr(z,ye,Ve,Ct){let wr=ce(168);return wr.modifiers=IA(z),wr.name=EI(ye),wr.constraint=Ve,wr.default=Ct,wr.transformFlags=1,wr.expression=void 0,wr.jsDoc=void 0,wr}function xi(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.constraint!==Ct||z.default!==wr?Eo(Vr(ye,Ve,Ct,wr),z):z}function io(z,ye,Ve,Ct,wr,ai){let Lo=ce(169);return Lo.modifiers=IA(z),Lo.dotDotDotToken=ye,Lo.name=EI(Ve),Lo.questionToken=Ct,Lo.type=wr,Lo.initializer=wA(ai),kqa(Lo.name)?Lo.transformFlags=1:Lo.transformFlags=qA(Lo.modifiers)|$o(Lo.dotDotDotToken)|pO(Lo.name)|$o(Lo.questionToken)|$o(Lo.initializer)|(Lo.questionToken??Lo.type?1:0)|(Lo.dotDotDotToken??Lo.initializer?1024:0)|(fO(Lo.modifiers)&31?8192:0),Lo.jsDoc=void 0,Lo}function ga(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.dotDotDotToken!==Ve||z.name!==Ct||z.questionToken!==wr||z.type!==ai||z.initializer!==Lo?Eo(io(ye,Ve,Ct,wr,ai,Lo),z):z}function Ya(z){let ye=ne(170);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1|8192|33554432,ye}function Gc(z,ye){return z.expression!==ye?Eo(Ya(ye),z):z}function cl(z,ye,Ve,Ct){let wr=ce(171);return wr.modifiers=IA(z),wr.name=EI(ye),wr.type=Ct,wr.questionToken=Ve,wr.transformFlags=1,wr.initializer=void 0,wr.jsDoc=void 0,wr}function Sc(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==Ct||z.type!==wr?Hr(cl(ye,Ve,Ct,wr),z):z}function Hr(z,ye){return z!==ye&&(z.initializer=ye.initializer),Eo(z,ye)}function Wr(z,ye,Ve,Ct,wr){let ai=ce(172);ai.modifiers=IA(z),ai.name=EI(ye),ai.questionToken=Ve&&tSi(Ve)?Ve:void 0,ai.exclamationToken=Ve&&eSi(Ve)?Ve:void 0,ai.type=Ct,ai.initializer=wA(wr);let Lo=ai.flags&33554432||fO(ai.modifiers)&128;return ai.transformFlags=qA(ai.modifiers)|pO(ai.name)|$o(ai.initializer)|(Lo||ai.questionToken||ai.exclamationToken||ai.type?1:0)|(eBi(ai.name)||fO(ai.modifiers)&256&&ai.initializer?8192:0)|16777216,ai.jsDoc=void 0,ai}function Ft(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==(Ct!==void 0&&tSi(Ct)?Ct:void 0)||z.exclamationToken!==(Ct!==void 0&&eSi(Ct)?Ct:void 0)||z.type!==wr||z.initializer!==ai?Eo(Wr(ye,Ve,Ct,wr,ai),z):z}function zr(z,ye,Ve,Ct,wr,ai){let Lo=ce(173);return Lo.modifiers=IA(z),Lo.name=EI(ye),Lo.questionToken=Ve,Lo.typeParameters=IA(Ct),Lo.parameters=IA(wr),Lo.type=ai,Lo.transformFlags=1,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.typeArguments=void 0,Lo}function Rn(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==Ct||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo?fe(zr(ye,Ve,Ct,wr,ai,Lo),z):z}function Or(z,ye,Ve,Ct,wr,ai,Lo,Hc){let ad=ce(174);if(ad.modifiers=IA(z),ad.asteriskToken=ye,ad.name=EI(Ve),ad.questionToken=Ct,ad.exclamationToken=void 0,ad.typeParameters=IA(wr),ad.parameters=ae(ai),ad.type=Lo,ad.body=Hc,!ad.body)ad.transformFlags=1;else{let dm=fO(ad.modifiers)&1024,rv=!!ad.asteriskToken,nv=dm&&rv;ad.transformFlags=qA(ad.modifiers)|$o(ad.asteriskToken)|pO(ad.name)|$o(ad.questionToken)|qA(ad.typeParameters)|qA(ad.parameters)|$o(ad.type)|$o(ad.body)&-67108865|(nv?128:dm?256:rv?2048:0)|(ad.questionToken||ad.typeParameters||ad.type?1:0)|1024}return ad.typeArguments=void 0,ad.jsDoc=void 0,ad.locals=void 0,ad.nextContainer=void 0,ad.flowNode=void 0,ad.endFlowNode=void 0,ad.returnFlowNode=void 0,ad}function Qi(z,ye,Ve,Ct,wr,ai,Lo,Hc,ad){return z.modifiers!==ye||z.asteriskToken!==Ve||z.name!==Ct||z.questionToken!==wr||z.typeParameters!==ai||z.parameters!==Lo||z.type!==Hc||z.body!==ad?ps(Or(ye,Ve,Ct,wr,ai,Lo,Hc,ad),z):z}function ps(z,ye){return z!==ye&&(z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function yo(z){let ye=ce(175);return ye.body=z,ye.transformFlags=$o(z)|16777216,ye.modifiers=void 0,ye.jsDoc=void 0,ye.locals=void 0,ye.nextContainer=void 0,ye.endFlowNode=void 0,ye.returnFlowNode=void 0,ye}function bo(z,ye){return z.body!==ye?Qa(yo(ye),z):z}function Qa(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function gc(z,ye,Ve){let Ct=ce(176);return Ct.modifiers=IA(z),Ct.parameters=ae(ye),Ct.body=Ve,Ct.body?Ct.transformFlags=qA(Ct.modifiers)|qA(Ct.parameters)|$o(Ct.body)&-67108865|1024:Ct.transformFlags=1,Ct.typeParameters=void 0,Ct.type=void 0,Ct.typeArguments=void 0,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.endFlowNode=void 0,Ct.returnFlowNode=void 0,Ct}function Cg(z,ye,Ve,Ct){return z.modifiers!==ye||z.parameters!==Ve||z.body!==Ct?Nc(gc(ye,Ve,Ct),z):z}function Nc(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function iA(z,ye,Ve,Ct,wr){let ai=ce(177);return ai.modifiers=IA(z),ai.name=EI(ye),ai.parameters=ae(Ve),ai.type=Ct,ai.body=wr,ai.body?ai.transformFlags=qA(ai.modifiers)|pO(ai.name)|qA(ai.parameters)|$o(ai.type)|$o(ai.body)&-67108865|(ai.type?1:0):ai.transformFlags=1,ai.typeArguments=void 0,ai.typeParameters=void 0,ai.jsDoc=void 0,ai.locals=void 0,ai.nextContainer=void 0,ai.flowNode=void 0,ai.endFlowNode=void 0,ai.returnFlowNode=void 0,ai}function ma(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.parameters!==Ct||z.type!==wr||z.body!==ai?vu(iA(ye,Ve,Ct,wr,ai),z):z}function vu(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters),fe(z,ye)}function li(z,ye,Ve,Ct){let wr=ce(178);return wr.modifiers=IA(z),wr.name=EI(ye),wr.parameters=ae(Ve),wr.body=Ct,wr.body?wr.transformFlags=qA(wr.modifiers)|pO(wr.name)|qA(wr.parameters)|$o(wr.body)&-67108865|(wr.type?1:0):wr.transformFlags=1,wr.typeArguments=void 0,wr.typeParameters=void 0,wr.type=void 0,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr.endFlowNode=void 0,wr.returnFlowNode=void 0,wr}function Ei(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.parameters!==Ct||z.body!==wr?Ps(li(ye,Ve,Ct,wr),z):z}function Ps(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function Xa(z,ye,Ve){let Ct=ce(179);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function ac(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?fe(Xa(ye,Ve,Ct),z):z}function Yl(z,ye,Ve){let Ct=ce(180);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Wc(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?fe(Yl(ye,Ve,Ct),z):z}function Sg(z,ye,Ve){let Ct=ce(181);return Ct.modifiers=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Ul(z,ye,Ve,Ct){return z.parameters!==Ve||z.type!==Ct||z.modifiers!==ye?fe(Sg(ye,Ve,Ct),z):z}function Xu(z,ye){let Ve=ne(204);return Ve.type=z,Ve.literal=ye,Ve.transformFlags=1,Ve}function Da(z,ye,Ve){return z.type!==ye||z.literal!==Ve?Eo(Xu(ye,Ve),z):z}function pu(z){return Xt(z)}function _g(z,ye,Ve){let Ct=ne(182);return Ct.assertsModifier=z,Ct.parameterName=EI(ye),Ct.type=Ve,Ct.transformFlags=1,Ct}function mI(z,ye,Ve,Ct){return z.assertsModifier!==ye||z.parameterName!==Ve||z.type!==Ct?Eo(_g(ye,Ve,Ct),z):z}function Qh(z,ye){let Ve=ne(183);return Ve.typeName=EI(z),Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ae(ye)),Ve.transformFlags=1,Ve}function Ri(z,ye,Ve){return z.typeName!==ye||z.typeArguments!==Ve?Eo(Qh(ye,Ve),z):z}function Do(z,ye,Ve){let Ct=ce(184);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.modifiers=void 0,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Wt(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?Hu(Do(ye,Ve,Ct),z):z}function Hu(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ru(...z){return z.length===4?Vs(...z):z.length===3?Ju(...z):Zo.fail("Incorrect number of arguments specified.")}function Vs(z,ye,Ve,Ct){let wr=ce(185);return wr.modifiers=IA(z),wr.typeParameters=IA(ye),wr.parameters=IA(Ve),wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.typeArguments=void 0,wr}function Ju(z,ye,Ve){return Vs(void 0,z,ye,Ve)}function Yn(...z){return z.length===5?Ko(...z):z.length===4?Eg(...z):Zo.fail("Incorrect number of arguments specified.")}function Ko(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.typeParameters!==Ve||z.parameters!==Ct||z.type!==wr?fe(Ru(ye,Ve,Ct,wr),z):z}function Eg(z,ye,Ve,Ct){return Ko(z,z.modifiers,ye,Ve,Ct)}function OA(z,ye){let Ve=ne(186);return Ve.exprName=z,Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ye),Ve.transformFlags=1,Ve}function GA(z,ye,Ve){return z.exprName!==ye||z.typeArguments!==Ve?Eo(OA(ye,Ve),z):z}function $i(z){let ye=ce(187);return ye.members=ae(z),ye.transformFlags=1,ye}function dl(z,ye){return z.members!==ye?Eo($i(ye),z):z}function Uf(z){let ye=ne(188);return ye.elementType=n().parenthesizeNonArrayTypeOfPostfixType(z),ye.transformFlags=1,ye}function Kd(z,ye){return z.elementType!==ye?Eo(Uf(ye),z):z}function oA(z){let ye=ne(189);return ye.elements=ae(n().parenthesizeElementTypesOfTupleType(z)),ye.transformFlags=1,ye}function oo(z,ye){return z.elements!==ye?Eo(oA(ye),z):z}function Ki(z,ye,Ve,Ct){let wr=ce(202);return wr.dotDotDotToken=z,wr.name=ye,wr.questionToken=Ve,wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr}function cc(z,ye,Ve,Ct,wr){return z.dotDotDotToken!==ye||z.name!==Ve||z.questionToken!==Ct||z.type!==wr?Eo(Ki(ye,Ve,Ct,wr),z):z}function Xs(z){let ye=ne(190);return ye.type=n().parenthesizeTypeOfOptionalType(z),ye.transformFlags=1,ye}function ws(z,ye){return z.type!==ye?Eo(Xs(ye),z):z}function Gs(z){let ye=ne(191);return ye.type=z,ye.transformFlags=1,ye}function Ma(z,ye){return z.type!==ye?Eo(Gs(ye),z):z}function Dc(z,ye,Ve){let Ct=ne(z);return Ct.types=X.createNodeArray(Ve(ye)),Ct.transformFlags=1,Ct}function As(z,ye,Ve){return z.types!==ye?Eo(Dc(z.kind,ye,Ve),z):z}function Tf(z){return Dc(192,z,n().parenthesizeConstituentTypesOfUnionType)}function cm(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfUnionType)}function Fl(z){return Dc(193,z,n().parenthesizeConstituentTypesOfIntersectionType)}function rc(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfIntersectionType)}function sd(z,ye,Ve,Ct){let wr=ne(194);return wr.checkType=n().parenthesizeCheckTypeOfConditionalType(z),wr.extendsType=n().parenthesizeExtendsTypeOfConditionalType(ye),wr.trueType=Ve,wr.falseType=Ct,wr.transformFlags=1,wr.locals=void 0,wr.nextContainer=void 0,wr}function Om(z,ye,Ve,Ct,wr){return z.checkType!==ye||z.extendsType!==Ve||z.trueType!==Ct||z.falseType!==wr?Eo(sd(ye,Ve,Ct,wr),z):z}function il(z){let ye=ne(195);return ye.typeParameter=z,ye.transformFlags=1,ye}function FA(z,ye){return z.typeParameter!==ye?Eo(il(ye),z):z}function ZA(z,ye){let Ve=ne(203);return Ve.head=z,Ve.templateSpans=ae(ye),Ve.transformFlags=1,Ve}function El(z,ye,Ve){return z.head!==ye||z.templateSpans!==Ve?Eo(ZA(ye,Ve),z):z}function yg(z,ye,Ve,Ct,wr=!1){let ai=ne(205);return ai.argument=z,ai.attributes=ye,ai.assertions&&ai.assertions.assertClause&&ai.attributes&&(ai.assertions.assertClause=ai.attributes),ai.qualifier=Ve,ai.typeArguments=Ct&&n().parenthesizeTypeArguments(Ct),ai.isTypeOf=wr,ai.transformFlags=1,ai}function Mp(z,ye,Ve,Ct,wr,ai=z.isTypeOf){return z.argument!==ye||z.attributes!==Ve||z.qualifier!==Ct||z.typeArguments!==wr||z.isTypeOf!==ai?Eo(yg(ye,Ve,Ct,wr,ai),z):z}function MA(z){let ye=ne(196);return ye.type=z,ye.transformFlags=1,ye}function Er(z,ye){return z.type!==ye?Eo(MA(ye),z):z}function Zt(){let z=ne(197);return z.transformFlags=1,z}function yn(z,ye){let Ve=ne(198);return Ve.operator=z,Ve.type=z===148?n().parenthesizeOperandOfReadonlyTypeOperator(ye):n().parenthesizeOperandOfTypeOperator(ye),Ve.transformFlags=1,Ve}function ls(z,ye){return z.type!==ye?Eo(yn(z.operator,ye),z):z}function oa(z,ye){let Ve=ne(199);return Ve.objectType=n().parenthesizeNonArrayTypeOfPostfixType(z),Ve.indexType=ye,Ve.transformFlags=1,Ve}function Fs(z,ye,Ve){return z.objectType!==ye||z.indexType!==Ve?Eo(oa(ye,Ve),z):z}function Wa(z,ye,Ve,Ct,wr,ai){let Lo=ce(200);return Lo.readonlyToken=z,Lo.typeParameter=ye,Lo.nameType=Ve,Lo.questionToken=Ct,Lo.type=wr,Lo.members=ai&&ae(ai),Lo.transformFlags=1,Lo.locals=void 0,Lo.nextContainer=void 0,Lo}function Ca(z,ye,Ve,Ct,wr,ai,Lo){return z.readonlyToken!==ye||z.typeParameter!==Ve||z.nameType!==Ct||z.questionToken!==wr||z.type!==ai||z.members!==Lo?Eo(Wa(ye,Ve,Ct,wr,ai,Lo),z):z}function ld(z){let ye=ne(201);return ye.literal=z,ye.transformFlags=1,ye}function Rp(z,ye){return z.literal!==ye?Eo(ld(ye),z):z}function np(z){let ye=ne(206);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements)|1024|524288,ye.transformFlags&32768&&(ye.transformFlags|=65664),ye}function HA(z,ye){return z.elements!==ye?Eo(np(ye),z):z}function df(z){let ye=ne(207);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements)|1024|524288,ye}function Zs(z,ye){return z.elements!==ye?Eo(df(ye),z):z}function so(z,ye,Ve,Ct){let wr=ce(208);return wr.dotDotDotToken=z,wr.propertyName=EI(ye),wr.name=EI(Ve),wr.initializer=wA(Ct),wr.transformFlags|=$o(wr.dotDotDotToken)|pO(wr.propertyName)|pO(wr.name)|$o(wr.initializer)|(wr.dotDotDotToken?32768:0)|1024,wr.flowNode=void 0,wr}function Ea(z,ye,Ve,Ct,wr){return z.propertyName!==Ve||z.dotDotDotToken!==ye||z.name!==Ct||z.initializer!==wr?Eo(so(ye,Ve,Ct,wr),z):z}function Ml(z,ye){let Ve=ne(209),Ct=z&&Vme(z),wr=ae(z,Ct&&Aec(Ct)?!0:void 0);return Ve.elements=n().parenthesizeExpressionsOfCommaDelimitedList(wr),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.elements),Ve}function Dr(z,ye){return z.elements!==ye?Eo(Ml(ye,z.multiLine),z):z}function Wn(z,ye){let Ve=ce(210);return Ve.properties=ae(z),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.properties),Ve.jsDoc=void 0,Ve}function di(z,ye){return z.properties!==ye?Eo(Wn(ye,z.multiLine),z):z}function aa(z,ye,Ve){let Ct=ce(211);return Ct.expression=z,Ct.questionDotToken=ye,Ct.name=Ve,Ct.transformFlags=$o(Ct.expression)|$o(Ct.questionDotToken)|($C(Ct.name)?CNe(Ct.name):$o(Ct.name)|536870912),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function Bo(z,ye){let Ve=aa(n().parenthesizeLeftSideOfAccess(z,!1),void 0,EI(ye));return $Rr(z)&&(Ve.transformFlags|=384),Ve}function us(z,ye,Ve){return Eza(z)?LA(z,ye,z.questionDotToken,Aj(Ve,$C)):z.expression!==ye||z.name!==Ve?Eo(Bo(ye,Ve),z):z}function Ql(z,ye,Ve){let Ct=aa(n().parenthesizeLeftSideOfAccess(z,!0),ye,EI(Ve));return Ct.flags|=64,Ct.transformFlags|=32,Ct}function LA(z,ye,Ve,Ct){return Zo.assert(!!(z.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),z.expression!==ye||z.questionDotToken!==Ve||z.name!==Ct?Eo(Ql(ye,Ve,Ct),z):z}function pf(z,ye,Ve){let Ct=ce(212);return Ct.expression=z,Ct.questionDotToken=ye,Ct.argumentExpression=Ve,Ct.transformFlags|=$o(Ct.expression)|$o(Ct.questionDotToken)|$o(Ct.argumentExpression),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function ef(z,ye){let Ve=pf(n().parenthesizeLeftSideOfAccess(z,!1),void 0,zd(ye));return $Rr(z)&&(Ve.transformFlags|=384),Ve}function ip(z,ye,Ve){return Sza(z)?j1(z,ye,z.questionDotToken,Ve):z.expression!==ye||z.argumentExpression!==Ve?Eo(ef(ye,Ve),z):z}function _d(z,ye,Ve){let Ct=pf(n().parenthesizeLeftSideOfAccess(z,!0),ye,zd(Ve));return Ct.flags|=64,Ct.transformFlags|=32,Ct}function j1(z,ye,Ve,Ct){return Zo.assert(!!(z.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),z.expression!==ye||z.questionDotToken!==Ve||z.argumentExpression!==Ct?Eo(_d(ye,Ve,Ct),z):z}function pw(z,ye,Ve,Ct){let wr=ce(213);return wr.expression=z,wr.questionDotToken=ye,wr.typeArguments=Ve,wr.arguments=Ct,wr.transformFlags|=$o(wr.expression)|$o(wr.questionDotToken)|qA(wr.typeArguments)|qA(wr.arguments),wr.typeArguments&&(wr.transformFlags|=1),X2i(wr.expression)&&(wr.transformFlags|=16384),wr}function YA(z,ye,Ve){let Ct=pw(n().parenthesizeLeftSideOfAccess(z,!1),void 0,IA(ye),n().parenthesizeExpressionsOfCommaDelimitedList(ae(Ve)));return F$a(Ct.expression)&&(Ct.transformFlags|=8388608),Ct}function Ac(z,ye,Ve,Ct){return P2i(z)?HS(z,ye,z.questionDotToken,Ve,Ct):z.expression!==ye||z.typeArguments!==Ve||z.arguments!==Ct?Eo(YA(ye,Ve,Ct),z):z}function Nm(z,ye,Ve,Ct){let wr=pw(n().parenthesizeLeftSideOfAccess(z,!0),ye,IA(Ve),n().parenthesizeExpressionsOfCommaDelimitedList(ae(Ct)));return wr.flags|=64,wr.transformFlags|=32,wr}function HS(z,ye,Ve,Ct,wr){return Zo.assert(!!(z.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),z.expression!==ye||z.questionDotToken!==Ve||z.typeArguments!==Ct||z.arguments!==wr?Eo(Nm(ye,Ve,Ct,wr),z):z}function jd(z,ye,Ve){let Ct=ce(214);return Ct.expression=n().parenthesizeExpressionOfNew(z),Ct.typeArguments=IA(ye),Ct.arguments=Ve?n().parenthesizeExpressionsOfCommaDelimitedList(Ve):void 0,Ct.transformFlags|=$o(Ct.expression)|qA(Ct.typeArguments)|qA(Ct.arguments)|32,Ct.typeArguments&&(Ct.transformFlags|=1),Ct}function dh(z,ye,Ve,Ct){return z.expression!==ye||z.typeArguments!==Ve||z.arguments!==Ct?Eo(jd(ye,Ve,Ct),z):z}function Hp(z,ye,Ve){let Ct=ne(215);return Ct.tag=n().parenthesizeLeftSideOfAccess(z,!1),Ct.typeArguments=IA(ye),Ct.template=Ve,Ct.transformFlags|=$o(Ct.tag)|qA(Ct.typeArguments)|$o(Ct.template)|1024,Ct.typeArguments&&(Ct.transformFlags|=1),Dqa(Ct.template)&&(Ct.transformFlags|=128),Ct}function uC(z,ye,Ve,Ct){return z.tag!==ye||z.typeArguments!==Ve||z.template!==Ct?Eo(Hp(ye,Ve,Ct),z):z}function nE(z,ye){let Ve=ne(216);return Ve.expression=n().parenthesizeOperandOfPrefixUnary(ye),Ve.type=z,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function J_(z,ye,Ve){return z.type!==ye||z.expression!==Ve?Eo(nE(ye,Ve),z):z}function q0(z){let ye=ne(217);return ye.expression=z,ye.transformFlags=$o(ye.expression),ye.jsDoc=void 0,ye}function XE(z,ye){return z.expression!==ye?Eo(q0(ye),z):z}function TC(z,ye,Ve,Ct,wr,ai,Lo){let Hc=ce(218);Hc.modifiers=IA(z),Hc.asteriskToken=ye,Hc.name=EI(Ve),Hc.typeParameters=IA(Ct),Hc.parameters=ae(wr),Hc.type=ai,Hc.body=Lo;let ad=fO(Hc.modifiers)&1024,dm=!!Hc.asteriskToken,rv=ad&&dm;return Hc.transformFlags=qA(Hc.modifiers)|$o(Hc.asteriskToken)|pO(Hc.name)|qA(Hc.typeParameters)|qA(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(rv?128:ad?256:dm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304,Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.flowNode=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function t_(z,ye,Ve,Ct,wr,ai,Lo,Hc){return z.name!==Ct||z.modifiers!==ye||z.asteriskToken!==Ve||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?fe(TC(ye,Ve,Ct,wr,ai,Lo,Hc),z):z}function cp(z,ye,Ve,Ct,wr,ai){let Lo=ce(219);Lo.modifiers=IA(z),Lo.typeParameters=IA(ye),Lo.parameters=ae(Ve),Lo.type=Ct,Lo.equalsGreaterThanToken=wr??Xt(39),Lo.body=n().parenthesizeConciseBodyOfArrowFunction(ai);let Hc=fO(Lo.modifiers)&1024;return Lo.transformFlags=qA(Lo.modifiers)|qA(Lo.typeParameters)|qA(Lo.parameters)|$o(Lo.type)|$o(Lo.equalsGreaterThanToken)|$o(Lo.body)&-67108865|(Lo.typeParameters||Lo.type?1:0)|(Hc?16640:0)|1024,Lo.typeArguments=void 0,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.flowNode=void 0,Lo.endFlowNode=void 0,Lo.returnFlowNode=void 0,Lo}function Mm(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.typeParameters!==Ve||z.parameters!==Ct||z.type!==wr||z.equalsGreaterThanToken!==ai||z.body!==Lo?fe(cp(ye,Ve,Ct,wr,ai,Lo),z):z}function fb(z){let ye=ne(220);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function pe(z,ye){return z.expression!==ye?Eo(fb(ye),z):z}function lm(z){let ye=ne(221);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function Kf(z,ye){return z.expression!==ye?Eo(lm(ye),z):z}function CI(z){let ye=ne(222);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function _I(z,ye){return z.expression!==ye?Eo(CI(ye),z):z}function H2(z){let ye=ne(223);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression)|256|128|2097152,ye}function iE(z,ye){return z.expression!==ye?Eo(H2(ye),z):z}function se(z,ye){let Ve=ne(224);return Ve.operator=z,Ve.operand=n().parenthesizeOperandOfPrefixUnary(ye),Ve.transformFlags|=$o(Ve.operand),(z===46||z===47)&&$C(Ve.operand)&&!SNe(Ve.operand)&&!sSi(Ve.operand)&&(Ve.transformFlags|=268435456),Ve}function O(z,ye){return z.operand!==ye?Eo(se(z.operator,ye),z):z}function K(z,ye){let Ve=ne(225);return Ve.operator=ye,Ve.operand=n().parenthesizeOperandOfPostfixUnary(z),Ve.transformFlags|=$o(Ve.operand),$C(Ve.operand)&&!SNe(Ve.operand)&&!sSi(Ve.operand)&&(Ve.transformFlags|=268435456),Ve}function we(z,ye){return z.operand!==ye?Eo(K(ye,z.operator),z):z}function gt(z,ye,Ve){let Ct=ce(226),wr=qR(ye),ai=wr.kind;return Ct.left=n().parenthesizeLeftSideOfBinary(ai,z),Ct.operatorToken=wr,Ct.right=n().parenthesizeRightSideOfBinary(ai,Ct.left,Ve),Ct.transformFlags|=$o(Ct.left)|$o(Ct.operatorToken)|$o(Ct.right),ai===61?Ct.transformFlags|=32:ai===64?aBi(Ct.left)?Ct.transformFlags|=5248|sr(Ct.left):aec(Ct.left)&&(Ct.transformFlags|=5120|sr(Ct.left)):ai===43||ai===68?Ct.transformFlags|=512:Mqa(ai)&&(Ct.transformFlags|=16),ai===103&&Yme(Ct.left)&&(Ct.transformFlags|=536870912),Ct.jsDoc=void 0,Ct}function sr(z){return vBi(z)?65536:0}function Yr(z,ye,Ve,Ct){return z.left!==ye||z.operatorToken!==Ve||z.right!==Ct?Eo(gt(ye,Ve,Ct),z):z}function Lr(z,ye,Ve,Ct,wr){let ai=ne(227);return ai.condition=n().parenthesizeConditionOfConditionalExpression(z),ai.questionToken=ye??Xt(58),ai.whenTrue=n().parenthesizeBranchOfConditionalExpression(Ve),ai.colonToken=Ct??Xt(59),ai.whenFalse=n().parenthesizeBranchOfConditionalExpression(wr),ai.transformFlags|=$o(ai.condition)|$o(ai.questionToken)|$o(ai.whenTrue)|$o(ai.colonToken)|$o(ai.whenFalse),ai}function fi(z,ye,Ve,Ct,wr,ai){return z.condition!==ye||z.questionToken!==Ve||z.whenTrue!==Ct||z.colonToken!==wr||z.whenFalse!==ai?Eo(Lr(ye,Ve,Ct,wr,ai),z):z}function $n(z,ye){let Ve=ne(228);return Ve.head=z,Ve.templateSpans=ae(ye),Ve.transformFlags|=$o(Ve.head)|qA(Ve.templateSpans)|1024,Ve}function ra(z,ye,Ve){return z.head!==ye||z.templateSpans!==Ve?Eo($n(ye,Ve),z):z}function kc(z,ye,Ve,Ct=0){Zo.assert(!(Ct&-7177),"Unsupported template flags.");let wr;if(Ve!==void 0&&Ve!==ye&&(wr=S$a(z,Ve),typeof wr=="object"))return Zo.fail("Invalid raw text");if(ye===void 0){if(wr===void 0)return Zo.fail("Arguments 'text' and 'rawText' may not both be undefined.");ye=wr}else wr!==void 0&&Zo.assert(ye===wr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return ye}function Nl(z){let ye=1024;return z&&(ye|=128),ye}function ca(z,ye,Ve,Ct){let wr=qt(z);return wr.text=ye,wr.rawText=Ve,wr.templateFlags=Ct&7176,wr.transformFlags=Nl(wr.templateFlags),wr}function Bl(z,ye,Ve,Ct){let wr=ce(z);return wr.text=ye,wr.rawText=Ve,wr.templateFlags=Ct&7176,wr.transformFlags=Nl(wr.templateFlags),wr}function $g(z,ye,Ve,Ct){return z===15?Bl(z,ye,Ve,Ct):ca(z,ye,Ve,Ct)}function SA(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(16,z,ye,Ve)}function lI(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(17,z,ye,Ve)}function lp(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(18,z,ye,Ve)}function Ib(z,ye,Ve){return z=kc(16,z,ye,Ve),Bl(15,z,ye,Ve)}function Na(z,ye){Zo.assert(!z||!!ye,"A `YieldExpression` with an asteriskToken must have an expression.");let Ve=ne(229);return Ve.expression=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.asteriskToken=z,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.asteriskToken)|1024|128|1048576,Ve}function wd(z,ye,Ve){return z.expression!==Ve||z.asteriskToken!==ye?Eo(Na(ye,Ve),z):z}function z1(z){let ye=ne(230);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|1024|32768,ye}function T_(z,ye){return z.expression!==ye?Eo(z1(ye),z):z}function RC(z,ye,Ve,Ct,wr){let ai=ce(231);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),ai.transformFlags|=qA(ai.modifiers)|pO(ai.name)|qA(ai.typeParameters)|qA(ai.heritageClauses)|qA(ai.members)|(ai.typeParameters?1:0)|1024,ai.jsDoc=void 0,ai}function Hm(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(RC(ye,Ve,Ct,wr,ai),z):z}function YS(){return ne(232)}function Fg(z,ye){let Ve=ne(233);return Ve.expression=n().parenthesizeLeftSideOfAccess(z,!1),Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ye),Ve.transformFlags|=$o(Ve.expression)|qA(Ve.typeArguments)|1024,Ve}function hb(z,ye,Ve){return z.expression!==ye||z.typeArguments!==Ve?Eo(Fg(ye,Ve),z):z}function gC(z,ye){let Ve=ne(234);return Ve.expression=z,Ve.type=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function NC(z,ye,Ve){return z.expression!==ye||z.type!==Ve?Eo(gC(ye,Ve),z):z}function Y2(z){let ye=ne(235);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1,ye}function U_(z,ye){return vza(z)?ph(z,ye):z.expression!==ye?Eo(Y2(ye),z):z}function DC(z,ye){let Ve=ne(238);return Ve.expression=z,Ve.type=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function kC(z,ye,Ve){return z.expression!==ye||z.type!==Ve?Eo(DC(ye,Ve),z):z}function qI(z){let ye=ne(235);return ye.flags|=64,ye.expression=n().parenthesizeLeftSideOfAccess(z,!0),ye.transformFlags|=$o(ye.expression)|1,ye}function ph(z,ye){return Zo.assert(!!(z.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),z.expression!==ye?Eo(qI(ye),z):z}function vA(z,ye){let Ve=ne(236);switch(Ve.keywordToken=z,Ve.name=ye,Ve.transformFlags|=$o(Ve.name),z){case 105:Ve.transformFlags|=1024;break;case 102:Ve.transformFlags|=32;break;default:return Zo.assertNever(z)}return Ve.flowNode=void 0,Ve}function Td(z,ye){return z.name!==ye?Eo(vA(z.keywordToken,ye),z):z}function Mc(z,ye){let Ve=ne(239);return Ve.expression=z,Ve.literal=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.literal)|1024,Ve}function Pf(z,ye,Ve){return z.expression!==ye||z.literal!==Ve?Eo(Mc(ye,Ve),z):z}function sE(){let z=ne(240);return z.transformFlags|=1024,z}function eA(z,ye){let Ve=ne(241);return Ve.statements=ae(z),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.statements),Ve.jsDoc=void 0,Ve.locals=void 0,Ve.nextContainer=void 0,Ve}function QS(z,ye){return z.statements!==ye?Eo(eA(ye,z.multiLine),z):z}function XS(z,ye){let Ve=ne(243);return Ve.modifiers=IA(z),Ve.declarationList=Tee(ye)?Th(ye):ye,Ve.transformFlags|=qA(Ve.modifiers)|$o(Ve.declarationList),fO(Ve.modifiers)&128&&(Ve.transformFlags=1),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function um(z,ye,Ve){return z.modifiers!==ye||z.declarationList!==Ve?Eo(XS(ye,Ve),z):z}function gm(){let z=ne(242);return z.jsDoc=void 0,z}function cs(z){let ye=ne(244);return ye.expression=n().parenthesizeExpressionOfExpressionStatement(z),ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function na(z,ye){return z.expression!==ye?Eo(cs(ye),z):z}function ko(z,ye,Ve){let Ct=ne(245);return Ct.expression=z,Ct.thenStatement=sy(ye),Ct.elseStatement=sy(Ve),Ct.transformFlags|=$o(Ct.expression)|$o(Ct.thenStatement)|$o(Ct.elseStatement),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function ki(z,ye,Ve,Ct){return z.expression!==ye||z.thenStatement!==Ve||z.elseStatement!==Ct?Eo(ko(ye,Ve,Ct),z):z}function Kl(z,ye){let Ve=ne(246);return Ve.statement=sy(z),Ve.expression=ye,Ve.transformFlags|=$o(Ve.statement)|$o(Ve.expression),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function fd(z,ye,Ve){return z.statement!==ye||z.expression!==Ve?Eo(Kl(ye,Ve),z):z}function jf(z,ye){let Ve=ne(247);return Ve.expression=z,Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.expression)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Ld(z,ye,Ve){return z.expression!==ye||z.statement!==Ve?Eo(jf(ye,Ve),z):z}function AC(z,ye,Ve,Ct){let wr=ne(248);return wr.initializer=z,wr.condition=ye,wr.incrementor=Ve,wr.statement=sy(Ct),wr.transformFlags|=$o(wr.initializer)|$o(wr.condition)|$o(wr.incrementor)|$o(wr.statement),wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr}function JE(z,ye,Ve,Ct,wr){return z.initializer!==ye||z.condition!==Ve||z.incrementor!==Ct||z.statement!==wr?Eo(AC(ye,Ve,Ct,wr),z):z}function Ym(z,ye,Ve){let Ct=ne(249);return Ct.initializer=z,Ct.expression=ye,Ct.statement=sy(Ve),Ct.transformFlags|=$o(Ct.initializer)|$o(Ct.expression)|$o(Ct.statement),Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.flowNode=void 0,Ct}function vy(z,ye,Ve,Ct){return z.initializer!==ye||z.expression!==Ve||z.statement!==Ct?Eo(Ym(ye,Ve,Ct),z):z}function K_(z,ye,Ve,Ct){let wr=ne(250);return wr.awaitModifier=z,wr.initializer=ye,wr.expression=n().parenthesizeExpressionForDisallowedComma(Ve),wr.statement=sy(Ct),wr.transformFlags|=$o(wr.awaitModifier)|$o(wr.initializer)|$o(wr.expression)|$o(wr.statement)|1024,z&&(wr.transformFlags|=128),wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr}function od(z,ye,Ve,Ct,wr){return z.awaitModifier!==ye||z.initializer!==Ve||z.expression!==Ct||z.statement!==wr?Eo(K_(ye,Ve,Ct,wr),z):z}function UE(z){let ye=ne(251);return ye.label=EI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function KE(z,ye){return z.label!==ye?Eo(UE(ye),z):z}function Yp(z){let ye=ne(252);return ye.label=EI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function JS(z,ye){return z.label!==ye?Eo(Yp(ye),z):z}function By(z){let ye=ne(253);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|128|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function $0(z,ye){return z.expression!==ye?Eo(By(ye),z):z}function fw(z,ye){let Ve=ne(254);return Ve.expression=z,Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.expression)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Q2(z,ye,Ve){return z.expression!==ye||z.statement!==Ve?Eo(fw(ye,Ve),z):z}function xc(z,ye){let Ve=ne(255);return Ve.expression=n().parenthesizeExpressionForDisallowedComma(z),Ve.caseBlock=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.caseBlock),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve.possiblyExhaustive=!1,Ve}function ut(z,ye,Ve){return z.expression!==ye||z.caseBlock!==Ve?Eo(xc(ye,Ve),z):z}function ar(z,ye){let Ve=ne(256);return Ve.label=EI(z),Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.label)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Jr(z,ye,Ve){return z.label!==ye||z.statement!==Ve?Eo(ar(ye,Ve),z):z}function Gn(z){let ye=ne(257);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function Ts(z,ye){return z.expression!==ye?Eo(Gn(ye),z):z}function Qo(z,ye,Ve){let Ct=ne(258);return Ct.tryBlock=z,Ct.catchClause=ye,Ct.finallyBlock=Ve,Ct.transformFlags|=$o(Ct.tryBlock)|$o(Ct.catchClause)|$o(Ct.finallyBlock),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function vg(z,ye,Ve,Ct){return z.tryBlock!==ye||z.catchClause!==Ve||z.finallyBlock!==Ct?Eo(Qo(ye,Ve,Ct),z):z}function Ng(){let z=ne(259);return z.jsDoc=void 0,z.flowNode=void 0,z}function Rf(z,ye,Ve,Ct){let wr=ce(260);return wr.name=EI(z),wr.exclamationToken=ye,wr.type=Ve,wr.initializer=wA(Ct),wr.transformFlags|=pO(wr.name)|$o(wr.initializer)|(wr.exclamationToken??wr.type?1:0),wr.jsDoc=void 0,wr}function uI(z,ye,Ve,Ct,wr){return z.name!==ye||z.type!==Ct||z.exclamationToken!==Ve||z.initializer!==wr?Eo(Rf(ye,Ve,Ct,wr),z):z}function Th(z,ye=0){let Ve=ne(261);return Ve.flags|=ye&7,Ve.declarations=ae(z),Ve.transformFlags|=qA(Ve.declarations)|4194304,ye&7&&(Ve.transformFlags|=263168),ye&4&&(Ve.transformFlags|=4),Ve}function oE(z,ye){return z.declarations!==ye?Eo(Th(ye,z.flags),z):z}function TT(z,ye,Ve,Ct,wr,ai,Lo){let Hc=ce(262);if(Hc.modifiers=IA(z),Hc.asteriskToken=ye,Hc.name=EI(Ve),Hc.typeParameters=IA(Ct),Hc.parameters=ae(wr),Hc.type=ai,Hc.body=Lo,!Hc.body||fO(Hc.modifiers)&128)Hc.transformFlags=1;else{let ad=fO(Hc.modifiers)&1024,dm=!!Hc.asteriskToken,rv=ad&&dm;Hc.transformFlags=qA(Hc.modifiers)|$o(Hc.asteriskToken)|pO(Hc.name)|qA(Hc.typeParameters)|qA(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(rv?128:ad?256:dm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304}return Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function sB(z,ye,Ve,Ct,wr,ai,Lo,Hc){return z.modifiers!==ye||z.asteriskToken!==Ve||z.name!==Ct||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?RT(TT(ye,Ve,Ct,wr,ai,Lo,Hc),z):z}function RT(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),fe(z,ye)}function wy(z,ye,Ve,Ct,wr){let ai=ce(263);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),fO(ai.modifiers)&128?ai.transformFlags=1:(ai.transformFlags|=qA(ai.modifiers)|pO(ai.name)|qA(ai.typeParameters)|qA(ai.heritageClauses)|qA(ai.members)|(ai.typeParameters?1:0)|1024,ai.transformFlags&8192&&(ai.transformFlags|=1)),ai.jsDoc=void 0,ai}function jE(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(wy(ye,Ve,Ct,wr,ai),z):z}function j_(z,ye,Ve,Ct,wr){let ai=ce(264);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),ai.transformFlags=1,ai.jsDoc=void 0,ai}function NT(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(j_(ye,Ve,Ct,wr,ai),z):z}function tf(z,ye,Ve,Ct){let wr=ce(265);return wr.modifiers=IA(z),wr.name=EI(ye),wr.typeParameters=IA(Ve),wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr}function Ty(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.type!==wr?Eo(tf(ye,Ve,Ct,wr),z):z}function US(z,ye,Ve){let Ct=ce(266);return Ct.modifiers=IA(z),Ct.name=EI(ye),Ct.members=ae(Ve),Ct.transformFlags|=qA(Ct.modifiers)|$o(Ct.name)|qA(Ct.members)|1,Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function $I(z,ye,Ve,Ct){return z.modifiers!==ye||z.name!==Ve||z.members!==Ct?Eo(US(ye,Ve,Ct),z):z}function BA(z,ye,Ve,Ct=0){let wr=ce(267);return wr.modifiers=IA(z),wr.flags|=Ct&2088,wr.name=ye,wr.body=Ve,fO(wr.modifiers)&128?wr.transformFlags=1:wr.transformFlags|=qA(wr.modifiers)|$o(wr.name)|$o(wr.body)|1,wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr}function $A(z,ye,Ve,Ct){return z.modifiers!==ye||z.name!==Ve||z.body!==Ct?Eo(BA(ye,Ve,Ct,z.flags),z):z}function Qm(z){let ye=ne(268);return ye.statements=ae(z),ye.transformFlags|=qA(ye.statements),ye.jsDoc=void 0,ye}function zf(z,ye){return z.statements!==ye?Eo(Qm(ye),z):z}function mb(z){let ye=ne(269);return ye.clauses=ae(z),ye.transformFlags|=qA(ye.clauses),ye.locals=void 0,ye.nextContainer=void 0,ye}function R_(z,ye){return z.clauses!==ye?Eo(mb(ye),z):z}function Cb(z){let ye=ce(270);return ye.name=EI(z),ye.transformFlags|=CNe(ye.name)|1,ye.modifiers=void 0,ye.jsDoc=void 0,ye}function Ry(z,ye){return z.name!==ye?KS(Cb(ye),z):z}function KS(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function _b(z,ye,Ve,Ct){let wr=ce(271);return wr.modifiers=IA(z),wr.name=EI(Ve),wr.isTypeOnly=ye,wr.moduleReference=Ct,wr.transformFlags|=qA(wr.modifiers)|CNe(wr.name)|$o(wr.moduleReference),CBi(wr.moduleReference)||(wr.transformFlags|=1),wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr}function z_(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.isTypeOnly!==Ve||z.name!==Ct||z.moduleReference!==wr?Eo(_b(ye,Ve,Ct,wr),z):z}function zE(z,ye,Ve,Ct){let wr=ne(272);return wr.modifiers=IA(z),wr.importClause=ye,wr.moduleSpecifier=Ve,wr.attributes=wr.assertClause=Ct,wr.transformFlags|=$o(wr.importClause)|$o(wr.moduleSpecifier),wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr}function oB(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.importClause!==Ve||z.moduleSpecifier!==Ct||z.attributes!==wr?Eo(zE(ye,Ve,Ct,wr),z):z}function DT(z,ye,Ve){let Ct=ce(273);return Ct.isTypeOnly=z,Ct.name=ye,Ct.namedBindings=Ve,Ct.transformFlags|=$o(Ct.name)|$o(Ct.namedBindings),z&&(Ct.transformFlags|=1),Ct.transformFlags&=-67108865,Ct}function aB(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.name!==Ve||z.namedBindings!==Ct?Eo(DT(ye,Ve,Ct),z):z}function jS(z,ye){let Ve=ne(300);return Ve.elements=ae(z),Ve.multiLine=ye,Ve.token=132,Ve.transformFlags|=4,Ve}function XR(z,ye,Ve){return z.elements!==ye||z.multiLine!==Ve?Eo(jS(ye,Ve),z):z}function zS(z,ye){let Ve=ne(301);return Ve.name=z,Ve.value=ye,Ve.transformFlags|=4,Ve}function qE(z,ye,Ve){return z.name!==ye||z.value!==Ve?Eo(zS(ye,Ve),z):z}function X2(z,ye){let Ve=ne(302);return Ve.assertClause=z,Ve.multiLine=ye,Ve}function kT(z,ye,Ve){return z.assertClause!==ye||z.multiLine!==Ve?Eo(X2(ye,Ve),z):z}function pn(z,ye,Ve){let Ct=ne(300);return Ct.token=Ve??118,Ct.elements=ae(z),Ct.multiLine=ye,Ct.transformFlags|=4,Ct}function q1(z,ye,Ve){return z.elements!==ye||z.multiLine!==Ve?Eo(pn(ye,Ve,z.token),z):z}function J2(z,ye){let Ve=ne(301);return Ve.name=z,Ve.value=ye,Ve.transformFlags|=4,Ve}function ey(z,ye,Ve){return z.name!==ye||z.value!==Ve?Eo(J2(ye,Ve),z):z}function up(z){let ye=ce(274);return ye.name=z,ye.transformFlags|=$o(ye.name),ye.transformFlags&=-67108865,ye}function Iw(z,ye){return z.name!==ye?Eo(up(ye),z):z}function cB(z){let ye=ce(280);return ye.name=z,ye.transformFlags|=$o(ye.name)|32,ye.transformFlags&=-67108865,ye}function RD(z,ye){return z.name!==ye?Eo(cB(ye),z):z}function Rd(z){let ye=ne(275);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements),ye.transformFlags&=-67108865,ye}function JR(z,ye){return z.elements!==ye?Eo(Rd(ye),z):z}function ty(z,ye,Ve){let Ct=ce(276);return Ct.isTypeOnly=z,Ct.propertyName=ye,Ct.name=Ve,Ct.transformFlags|=$o(Ct.propertyName)|$o(Ct.name),Ct.transformFlags&=-67108865,Ct}function cF(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.propertyName!==Ve||z.name!==Ct?Eo(ty(ye,Ve,Ct),z):z}function $1(z,ye,Ve){let Ct=ce(277);return Ct.modifiers=IA(z),Ct.isExportEquals=ye,Ct.expression=ye?n().parenthesizeRightSideOfBinary(64,void 0,Ve):n().parenthesizeExpressionOfExportDefault(Ve),Ct.transformFlags|=qA(Ct.modifiers)|$o(Ct.expression),Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function $E(z,ye,Ve){return z.modifiers!==ye||z.expression!==Ve?Eo($1(ye,z.isExportEquals,Ve),z):z}function N_(z,ye,Ve,Ct,wr){let ai=ce(278);return ai.modifiers=IA(z),ai.isTypeOnly=ye,ai.exportClause=Ve,ai.moduleSpecifier=Ct,ai.attributes=ai.assertClause=wr,ai.transformFlags|=qA(ai.modifiers)|$o(ai.exportClause)|$o(ai.moduleSpecifier),ai.transformFlags&=-67108865,ai.jsDoc=void 0,ai}function e1(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.isTypeOnly!==Ve||z.exportClause!==Ct||z.moduleSpecifier!==wr||z.attributes!==ai?t1(N_(ye,Ve,Ct,wr,ai),z):z}function t1(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),Eo(z,ye)}function ry(z){let ye=ne(279);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements),ye.transformFlags&=-67108865,ye}function xT(z,ye){return z.elements!==ye?Eo(ry(ye),z):z}function yb(z,ye,Ve){let Ct=ne(281);return Ct.isTypeOnly=z,Ct.propertyName=EI(ye),Ct.name=EI(Ve),Ct.transformFlags|=$o(Ct.propertyName)|$o(Ct.name),Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function r_(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.propertyName!==Ve||z.name!==Ct?Eo(yb(ye,Ve,Ct),z):z}function Rh(){let z=ce(282);return z.jsDoc=void 0,z}function bb(z){let ye=ne(283);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.transformFlags&=-67108865,ye}function lB(z,ye){return z.expression!==ye?Eo(bb(ye),z):z}function ND(z){return ne(z)}function DD(z,ye,Ve=!1){let Ct=q_(z,Ve?ye&&n().parenthesizeNonArrayTypeOfPostfixType(ye):ye);return Ct.postfix=Ve,Ct}function q_(z,ye){let Ve=ne(z);return Ve.type=ye,Ve}function kD(z,ye,Ve){return ye.type!==Ve?Eo(DD(z,Ve,ye.postfix),ye):ye}function UR(z,ye,Ve){return ye.type!==Ve?Eo(q_(z,Ve),ye):ye}function lc(z,ye){let Ve=ce(317);return Ve.parameters=IA(z),Ve.type=ye,Ve.transformFlags=qA(Ve.parameters)|(Ve.type?1:0),Ve.jsDoc=void 0,Ve.locals=void 0,Ve.nextContainer=void 0,Ve.typeArguments=void 0,Ve}function fh(z,ye,Ve){return z.parameters!==ye||z.type!==Ve?Eo(lc(ye,Ve),z):z}function rf(z,ye=!1){let Ve=ce(322);return Ve.jsDocPropertyTags=IA(z),Ve.isArrayType=ye,Ve}function yI(z,ye,Ve){return z.jsDocPropertyTags!==ye||z.isArrayType!==Ve?Eo(rf(ye,Ve),z):z}function aE(z){let ye=ne(309);return ye.type=z,ye}function qS(z,ye){return z.type!==ye?Eo(aE(ye),z):z}function Qp(z,ye,Ve){let Ct=ce(323);return Ct.typeParameters=IA(z),Ct.parameters=ae(ye),Ct.type=Ve,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct}function uB(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?Eo(Qp(ye,Ve,Ct),z):z}function Ih(z){let ye=xbt(z.kind);return z.tagName.escapedText===hNe(ye)?z.tagName:je(ye)}function xC(z,ye,Ve){let Ct=ne(z);return Ct.tagName=ye,Ct.comment=Ve,Ct}function $_(z,ye,Ve){let Ct=ce(z);return Ct.tagName=ye,Ct.comment=Ve,Ct}function r1(z,ye,Ve,Ct){let wr=xC(345,z??je("template"),Ct);return wr.constraint=ye,wr.typeParameters=ae(Ve),wr}function gB(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.constraint!==Ve||z.typeParameters!==Ct||z.comment!==wr?Eo(r1(ye,Ve,Ct,wr),z):z}function hw(z,ye,Ve,Ct){let wr=$_(346,z??je("typedef"),Ct);return wr.typeExpression=ye,wr.fullName=Ve,wr.name=oSi(Ve),wr.locals=void 0,wr.nextContainer=void 0,wr}function GT(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.typeExpression!==Ve||z.fullName!==Ct||z.comment!==wr?Eo(hw(ye,Ve,Ct,wr),z):z}function b0(z,ye,Ve,Ct,wr,ai){let Lo=$_(341,z??je("param"),ai);return Lo.typeExpression=Ct,Lo.name=ye,Lo.isNameFirst=!!wr,Lo.isBracketed=Ve,Lo}function ia(z,ye=Ih(z),Ve,Ct,wr,ai,Lo){return z.tagName!==ye||z.name!==Ve||z.isBracketed!==Ct||z.typeExpression!==wr||z.isNameFirst!==ai||z.comment!==Lo?Eo(b0(ye,Ve,Ct,wr,ai,Lo),z):z}function e2(z,ye,Ve,Ct,wr,ai){let Lo=$_(348,z??je("prop"),ai);return Lo.typeExpression=Ct,Lo.name=ye,Lo.isNameFirst=!!wr,Lo.isBracketed=Ve,Lo}function yd(z,ye=Ih(z),Ve,Ct,wr,ai,Lo){return z.tagName!==ye||z.name!==Ve||z.isBracketed!==Ct||z.typeExpression!==wr||z.isNameFirst!==ai||z.comment!==Lo?Eo(e2(ye,Ve,Ct,wr,ai,Lo),z):z}function bI(z,ye,Ve,Ct){let wr=$_(338,z??je("callback"),Ct);return wr.typeExpression=ye,wr.fullName=Ve,wr.name=oSi(Ve),wr.locals=void 0,wr.nextContainer=void 0,wr}function ag(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.typeExpression!==Ve||z.fullName!==Ct||z.comment!==wr?Eo(bI(ye,Ve,Ct,wr),z):z}function Eb(z,ye,Ve){let Ct=xC(339,z??je("overload"),Ve);return Ct.typeExpression=ye,Ct}function n1(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.typeExpression!==Ve||z.comment!==Ct?Eo(Eb(ye,Ve,Ct),z):z}function U2(z,ye,Ve){let Ct=xC(328,z??je("augments"),Ve);return Ct.class=ye,Ct}function e0(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.class!==Ve||z.comment!==Ct?Eo(U2(ye,Ve,Ct),z):z}function n_(z,ye,Ve){let Ct=xC(329,z??je("implements"),Ve);return Ct.class=ye,Ct}function Xp(z,ye,Ve){let Ct=xC(347,z??je("see"),Ve);return Ct.name=ye,Ct}function cE(z,ye,Ve,Ct){return z.tagName!==ye||z.name!==Ve||z.comment!==Ct?Eo(Xp(ye,Ve,Ct),z):z}function lE(z){let ye=ne(310);return ye.name=z,ye}function Ip(z,ye){return z.name!==ye?Eo(lE(ye),z):z}function Xh(z,ye){let Ve=ne(311);return Ve.left=z,Ve.right=ye,Ve.transformFlags|=$o(Ve.left)|$o(Ve.right),Ve}function E0(z,ye,Ve){return z.left!==ye||z.right!==Ve?Eo(Xh(ye,Ve),z):z}function aA(z,ye){let Ve=ne(324);return Ve.name=z,Ve.text=ye,Ve}function fu(z,ye,Ve){return z.name!==ye?Eo(aA(ye,Ve),z):z}function Jp(z,ye){let Ve=ne(325);return Ve.name=z,Ve.text=ye,Ve}function dC(z,ye,Ve){return z.name!==ye?Eo(Jp(ye,Ve),z):z}function uE(z,ye){let Ve=ne(326);return Ve.name=z,Ve.text=ye,Ve}function eh(z,ye,Ve){return z.name!==ye?Eo(uE(ye,Ve),z):z}function Wf(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.class!==Ve||z.comment!==Ct?Eo(n_(ye,Ve,Ct),z):z}function Mo(z,ye,Ve){return xC(z,ye??je(xbt(z)),Ve)}function gp(z,ye,Ve=Ih(ye),Ct){return ye.tagName!==Ve||ye.comment!==Ct?Eo(Mo(z,Ve,Ct),ye):ye}function lF(z,ye,Ve,Ct){let wr=xC(z,ye??je(xbt(z)),Ct);return wr.typeExpression=Ve,wr}function uF(z,ye,Ve=Ih(ye),Ct,wr){return ye.tagName!==Ve||ye.typeExpression!==Ct||ye.comment!==wr?Eo(lF(z,Ve,Ct,wr),ye):ye}function gE(z,ye){return xC(327,z,ye)}function FT(z,ye,Ve){return z.tagName!==ye||z.comment!==Ve?Eo(gE(ye,Ve),z):z}function Np(z,ye,Ve){let Ct=$_(340,z??je(xbt(340)),Ve);return Ct.typeExpression=ye,Ct.locals=void 0,Ct.nextContainer=void 0,Ct}function Dm(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.typeExpression!==Ve||z.comment!==Ct?Eo(Np(ye,Ve,Ct),z):z}function Dp(z,ye,Ve,Ct,wr){let ai=xC(351,z??je("import"),wr);return ai.importClause=ye,ai.moduleSpecifier=Ve,ai.attributes=Ct,ai.comment=wr,ai}function t2(z,ye,Ve,Ct,wr,ai){return z.tagName!==ye||z.comment!==ai||z.importClause!==Ve||z.moduleSpecifier!==Ct||z.attributes!==wr?Eo(Dp(ye,Ve,Ct,wr,ai),z):z}function Ro(z){let ye=ne(321);return ye.text=z,ye}function AE(z,ye){return z.text!==ye?Eo(Ro(ye),z):z}function AB(z,ye){let Ve=ne(320);return Ve.comment=z,Ve.tags=IA(ye),Ve}function Xc(z,ye,Ve){return z.comment!==ye||z.tags!==Ve?Eo(AB(ye,Ve),z):z}function iu(z,ye,Ve){let Ct=ne(284);return Ct.openingElement=z,Ct.children=ae(ye),Ct.closingElement=Ve,Ct.transformFlags|=$o(Ct.openingElement)|qA(Ct.children)|$o(Ct.closingElement)|2,Ct}function dE(z,ye,Ve,Ct){return z.openingElement!==ye||z.children!==Ve||z.closingElement!==Ct?Eo(iu(ye,Ve,Ct),z):z}function yL(z,ye,Ve){let Ct=ne(285);return Ct.tagName=z,Ct.typeArguments=IA(ye),Ct.attributes=Ve,Ct.transformFlags|=$o(Ct.tagName)|qA(Ct.typeArguments)|$o(Ct.attributes)|2,Ct.typeArguments&&(Ct.transformFlags|=1),Ct}function KR(z,ye,Ve,Ct){return z.tagName!==ye||z.typeArguments!==Ve||z.attributes!==Ct?Eo(yL(ye,Ve,Ct),z):z}function Ou(z,ye,Ve){let Ct=ne(286);return Ct.tagName=z,Ct.typeArguments=IA(ye),Ct.attributes=Ve,Ct.transformFlags|=$o(Ct.tagName)|qA(Ct.typeArguments)|$o(Ct.attributes)|2,ye&&(Ct.transformFlags|=1),Ct}function ny(z,ye,Ve,Ct){return z.tagName!==ye||z.typeArguments!==Ve||z.attributes!==Ct?Eo(Ou(ye,Ve,Ct),z):z}function hp(z){let ye=ne(287);return ye.tagName=z,ye.transformFlags|=$o(ye.tagName)|2,ye}function Am(z,ye){return z.tagName!==ye?Eo(hp(ye),z):z}function K2(z,ye,Ve){let Ct=ne(288);return Ct.openingFragment=z,Ct.children=ae(ye),Ct.closingFragment=Ve,Ct.transformFlags|=$o(Ct.openingFragment)|qA(Ct.children)|$o(Ct.closingFragment)|2,Ct}function i_(z,ye,Ve,Ct){return z.openingFragment!==ye||z.children!==Ve||z.closingFragment!==Ct?Eo(K2(ye,Ve,Ct),z):z}function dB(z,ye){let Ve=ne(12);return Ve.text=z,Ve.containsOnlyTriviaWhiteSpaces=!!ye,Ve.transformFlags|=2,Ve}function ZT(z,ye,Ve){return z.text!==ye||z.containsOnlyTriviaWhiteSpaces!==Ve?Eo(dB(ye,Ve),z):z}function Cx(){let z=ne(289);return z.transformFlags|=2,z}function pB(){let z=ne(290);return z.transformFlags|=2,z}function qf(z,ye){let Ve=ce(291);return Ve.name=z,Ve.initializer=ye,Ve.transformFlags|=$o(Ve.name)|$o(Ve.initializer)|2,Ve}function Jh(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?Eo(qf(ye,Ve),z):z}function $S(z){let ye=ce(292);return ye.properties=ae(z),ye.transformFlags|=qA(ye.properties)|2,ye}function Sb(z,ye){return z.properties!==ye?Eo($S(ye),z):z}function mp(z){let ye=ne(293);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|2,ye}function r2(z,ye){return z.expression!==ye?Eo(mp(ye),z):z}function i1(z,ye){let Ve=ne(294);return Ve.dotDotDotToken=z,Ve.expression=ye,Ve.transformFlags|=$o(Ve.dotDotDotToken)|$o(Ve.expression)|2,Ve}function Of(z,ye){return z.expression!==ye?Eo(i1(z.dotDotDotToken,ye),z):z}function pE(z,ye){let Ve=ne(295);return Ve.namespace=z,Ve.name=ye,Ve.transformFlags|=$o(Ve.namespace)|$o(Ve.name)|2,Ve}function Vd(z,ye,Ve){return z.namespace!==ye||z.name!==Ve?Eo(pE(ye,Ve),z):z}function j(z,ye){let Ve=ne(296);return Ve.expression=n().parenthesizeExpressionForDisallowedComma(z),Ve.statements=ae(ye),Ve.transformFlags|=$o(Ve.expression)|qA(Ve.statements),Ve.jsDoc=void 0,Ve}function Z(z,ye,Ve){return z.expression!==ye||z.statements!==Ve?Eo(j(ye,Ve),z):z}function Id(z){let ye=ne(297);return ye.statements=ae(z),ye.transformFlags=qA(ye.statements),ye}function fB(z,ye){return z.statements!==ye?Eo(Id(ye),z):z}function ev(z,ye){let Ve=ne(298);switch(Ve.token=z,Ve.types=ae(ye),Ve.transformFlags|=qA(Ve.types),z){case 96:Ve.transformFlags|=1024;break;case 119:Ve.transformFlags|=1;break;default:return Zo.assertNever(z)}return Ve}function Ny(z,ye){return z.types!==ye?Eo(ev(z.token,ye),z):z}function vb(z,ye){let Ve=ne(299);return Ve.variableDeclaration=$2(z),Ve.block=ye,Ve.transformFlags|=$o(Ve.variableDeclaration)|$o(Ve.block)|(z?0:64),Ve.locals=void 0,Ve.nextContainer=void 0,Ve}function xD(z,ye,Ve){return z.variableDeclaration!==ye||z.block!==Ve?Eo(vb(ye,Ve),z):z}function IB(z,ye){let Ve=ce(303);return Ve.name=EI(z),Ve.initializer=n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=pO(Ve.name)|$o(Ve.initializer),Ve.modifiers=void 0,Ve.questionToken=void 0,Ve.exclamationToken=void 0,Ve.jsDoc=void 0,Ve}function Bb(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?bL(IB(ye,Ve),z):z}function bL(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function gF(z,ye){let Ve=ce(304);return Ve.name=EI(z),Ve.objectAssignmentInitializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=CNe(Ve.name)|$o(Ve.objectAssignmentInitializer)|1024,Ve.equalsToken=void 0,Ve.modifiers=void 0,Ve.questionToken=void 0,Ve.exclamationToken=void 0,Ve.jsDoc=void 0,Ve}function x(z,ye,Ve){return z.name!==ye||z.objectAssignmentInitializer!==Ve?L(gF(ye,Ve),z):z}function L(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken,z.equalsToken=ye.equalsToken),Eo(z,ye)}function te(z){let ye=ce(305);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|128|65536,ye.jsDoc=void 0,ye}function Re(z,ye){return z.expression!==ye?Eo(te(ye),z):z}function Le(z,ye){let Ve=ce(306);return Ve.name=EI(z),Ve.initializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=$o(Ve.name)|$o(Ve.initializer)|1,Ve.jsDoc=void 0,Ve}function ft(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?Eo(Le(ye,Ve),z):z}function dr(z,ye,Ve){let Ct=t.createBaseSourceFileNode(307);return Ct.statements=ae(z),Ct.endOfFileToken=ye,Ct.flags|=Ve,Ct.text="",Ct.fileName="",Ct.path="",Ct.resolvedPath="",Ct.originalFileName="",Ct.languageVersion=1,Ct.languageVariant=0,Ct.scriptKind=0,Ct.isDeclarationFile=!1,Ct.hasNoDefaultLib=!1,Ct.transformFlags|=qA(Ct.statements)|$o(Ct.endOfFileToken),Ct.locals=void 0,Ct.nextContainer=void 0,Ct.endFlowNode=void 0,Ct.nodeCount=0,Ct.identifierCount=0,Ct.symbolCount=0,Ct.parseDiagnostics=void 0,Ct.bindDiagnostics=void 0,Ct.bindSuggestionDiagnostics=void 0,Ct.lineMap=void 0,Ct.externalModuleIndicator=void 0,Ct.setExternalModuleIndicator=void 0,Ct.pragmas=void 0,Ct.checkJsDirective=void 0,Ct.referencedFiles=void 0,Ct.typeReferenceDirectives=void 0,Ct.libReferenceDirectives=void 0,Ct.amdDependencies=void 0,Ct.commentDirectives=void 0,Ct.identifiers=void 0,Ct.packageJsonLocations=void 0,Ct.packageJsonScope=void 0,Ct.imports=void 0,Ct.moduleAugmentations=void 0,Ct.ambientModuleNames=void 0,Ct.classifiableNames=void 0,Ct.impliedNodeFormat=void 0,Ct}function Ur(z){let ye=Object.create(z.redirectTarget);return Object.defineProperties(ye,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Ve){this.redirectInfo.redirectTarget.id=Ve}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Ve){this.redirectInfo.redirectTarget.symbol=Ve}}}),ye.redirectInfo=z,ye}function mi(z){let ye=Ur(z.redirectInfo);return ye.flags|=z.flags&-17,ye.fileName=z.fileName,ye.path=z.path,ye.resolvedPath=z.resolvedPath,ye.originalFileName=z.originalFileName,ye.packageJsonLocations=z.packageJsonLocations,ye.packageJsonScope=z.packageJsonScope,ye.emitNode=void 0,ye}function Vi(z){let ye=t.createBaseSourceFileNode(307);ye.flags|=z.flags&-17;for(let Ve in z)if(!(fj(ye,Ve)||!fj(z,Ve))){if(Ve==="emitNode"){ye.emitNode=void 0;continue}ye[Ve]=z[Ve]}return ye}function Ta(z){let ye=z.redirectInfo?mi(z):Vi(z);return r(ye,z),ye}function Sl(z,ye,Ve,Ct,wr,ai,Lo){let Hc=Ta(z);return Hc.statements=ae(ye),Hc.isDeclarationFile=Ve,Hc.referencedFiles=Ct,Hc.typeReferenceDirectives=wr,Hc.hasNoDefaultLib=ai,Hc.libReferenceDirectives=Lo,Hc.transformFlags=qA(Hc.statements)|$o(Hc.endOfFileToken),Hc}function Ho(z,ye,Ve=z.isDeclarationFile,Ct=z.referencedFiles,wr=z.typeReferenceDirectives,ai=z.hasNoDefaultLib,Lo=z.libReferenceDirectives){return z.statements!==ye||z.isDeclarationFile!==Ve||z.referencedFiles!==Ct||z.typeReferenceDirectives!==wr||z.hasNoDefaultLib!==ai||z.libReferenceDirectives!==Lo?Eo(Sl(z,ye,Ve,Ct,wr,ai,Lo),z):z}function Wg(z){let ye=ne(308);return ye.sourceFiles=z,ye.syntheticFileReferences=void 0,ye.syntheticTypeReferences=void 0,ye.syntheticLibReferences=void 0,ye.hasNoDefaultLib=void 0,ye}function cA(z,ye){return z.sourceFiles!==ye?Eo(Wg(ye),z):z}function th(z,ye=!1,Ve){let Ct=ne(237);return Ct.type=z,Ct.isSpread=ye,Ct.tupleNameSource=Ve,Ct}function xn(z){let ye=ne(352);return ye._children=z,ye}function rn(z){let ye=ne(353);return ye.original=z,zZ(ye,z),ye}function Ci(z,ye){let Ve=ne(355);return Ve.expression=z,Ve.original=ye,Ve.transformFlags|=$o(Ve.expression)|1,zZ(Ve,ye),Ve}function Po(z,ye){return z.expression!==ye?Eo(Ci(ye,z.original),z):z}function ec(){return ne(354)}function Ra(z){if(mNe(z)&&!Qbt(z)&&!z.original&&!z.emitNode&&!z.id){if(fec(z))return z.elements;if(NNe(z)&&x$a(z.operatorToken))return[z.left,z.right]}return z}function dc(z){let ye=ne(356);return ye.elements=ae(Q6a(z,Ra)),ye.transformFlags|=qA(ye.elements),ye}function Iu(z,ye){return z.elements!==ye?Eo(dc(ye),z):z}function Cl(z,ye){let Ve=ne(357);return Ve.expression=z,Ve.thisArg=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.thisArg),Ve}function wl(z,ye,Ve){return z.expression!==ye||z.thisArg!==Ve?Eo(Cl(ye,Ve),z):z}function $f(z){let ye=ct(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function j2(z){let ye=ct(z.escapedText);ye.flags|=z.flags&-17,ye.jsDoc=z.jsDoc,ye.flowNode=z.flowNode,ye.symbol=z.symbol,ye.transformFlags=z.transformFlags,r(ye,z);let Ve=getIdentifierTypeArguments(z);return Ve&&setIdentifierTypeArguments(ye,Ve),ye}function _x(z){let ye=Nr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function z2(z){let ye=Nr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),ye}function tv(z){if(z===void 0)return z;if(Sec(z))return Ta(z);if(SNe(z))return $f(z);if($C(z))return j2(z);if(kvi(z))return _x(z);if(Yme(z))return z2(z);let ye=YNr(z.kind)?t.createBaseNode(z.kind):t.createBaseTokenNode(z.kind);ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z);for(let Ve in z)fj(ye,Ve)||!fj(z,Ve)||(ye[Ve]=z[Ve]);return ye}function Yu(z,ye,Ve){return YA(TC(void 0,void 0,void 0,void 0,ye?[ye]:[],void 0,eA(z,!0)),void 0,Ve?[Ve]:[])}function qO(z,ye,Ve){return YA(cp(void 0,void 0,ye?[ye]:[],void 0,void 0,eA(z,!0)),void 0,Ve?[Ve]:[])}function hB(){return CI(ue("0"))}function mw(z){return $1(void 0,!1,z)}function AF(z){return N_(void 0,!1,ry([yb(!1,void 0,z)]))}function $O(z,ye){return ye==="null"?X.createStrictEquality(z,Ar()):ye==="undefined"?X.createStrictEquality(z,hB()):X.createStrictEquality(lm(z),Se(ye))}function iY(z,ye){return ye==="null"?X.createStrictInequality(z,Ar()):ye==="undefined"?X.createStrictInequality(z,hB()):X.createStrictInequality(lm(z),Se(ye))}function LT(z,ye,Ve){return P2i(z)?Nm(Ql(z,void 0,ye),void 0,void 0,Ve):YA(Bo(z,ye),void 0,Ve)}function GD(z,ye,Ve){return LT(z,"bind",[ye,...Ve])}function dF(z,ye,Ve){return LT(z,"call",[ye,...Ve])}function EL(z,ye,Ve){return LT(z,"apply",[ye,Ve])}function ff(z,ye,Ve){return LT(je(z),ye,Ve)}function FD(z,ye){return LT(z,"slice",ye===void 0?[]:[zd(ye)])}function fE(z,ye){return LT(z,"concat",ye)}function n2(z,ye,Ve){return ff("Object","defineProperty",[z,zd(ye),Ve])}function mB(z,ye){return ff("Object","getOwnPropertyDescriptor",[z,zd(ye)])}function bd(z,ye,Ve){return ff("Reflect","get",Ve?[z,ye,Ve]:[z,ye])}function s1(z,ye,Ve,Ct){return ff("Reflect","set",Ct?[z,ye,Ve,Ct]:[z,ye,Ve])}function Uh(z,ye,Ve){return Ve?(z.push(IB(ye,Ve)),!0):!1}function wb(z,ye){let Ve=[];Uh(Ve,"enumerable",zd(z.enumerable)),Uh(Ve,"configurable",zd(z.configurable));let Ct=Uh(Ve,"writable",zd(z.writable));Ct=Uh(Ve,"value",z.value)||Ct;let wr=Uh(Ve,"get",z.get);return wr=Uh(Ve,"set",z.set)||wr,Zo.assert(!(Ct&&wr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Wn(Ve,!ye)}function Uu(z,ye){switch(z.kind){case 217:return XE(z,ye);case 216:return J_(z,z.type,ye);case 234:return NC(z,ye,z.type);case 238:return kC(z,ye,z.type);case 235:return U_(z,ye);case 233:return hb(z,ye,z.typeArguments);case 355:return Po(z,ye)}}function iy(z){return rDr(z)&&mNe(z)&&mNe(getSourceMapRange(z))&&mNe(getCommentRange(z))&&!oD(getSyntheticLeadingComments(z))&&!oD(getSyntheticTrailingComments(z))}function sY(z,ye,Ve=31){return z&&SBi(z,Ve)&&!iy(z)?Uu(z,sY(z.expression,ye)):ye}function oY(z,ye,Ve){if(!ye)return z;let Ct=Jr(ye,ye.label,Iec(ye.statement)?oY(z,ye.statement):z);return Ve&&Ve(ye),Ct}function jR(z,ye){let Ve=jNr(z);switch(Ve.kind){case 80:return ye;case 110:case 9:case 10:case 11:return!1;case 209:return Ve.elements.length!==0;case 210:return Ve.properties.length>0;default:return!0}}function aY(z,ye,Ve,Ct=!1){let wr=sDr(z,31),ai,Lo;return X2i(wr)?(ai=cr(),Lo=wr):$Rr(wr)?(ai=cr(),Lo=Ve!==void 0&&Ve<2?zZ(je("_super"),wr):wr):TNe(wr)&8192?(ai=hB(),Lo=n().parenthesizeLeftSideOfAccess(wr,!1)):Bce(wr)?jR(wr.expression,Ct)?(ai=St(ye),Lo=Bo(zZ(X.createAssignment(ai,wr.expression),wr.expression),wr.name),zZ(Lo,wr)):(ai=wr.expression,Lo=wr):vJe(wr)?jR(wr.expression,Ct)?(ai=St(ye),Lo=ef(zZ(X.createAssignment(ai,wr.expression),wr.expression),wr.argumentExpression),zZ(Lo,wr)):(ai=wr.expression,Lo=wr):(ai=hB(),Lo=n().parenthesizeLeftSideOfAccess(z,!1)),{target:Lo,thisArg:ai}}function tt(z,ye){return Bo(q0(Wn([li(void 0,"value",[io(void 0,void 0,z,void 0,void 0,void 0)],eA([cs(ye)]))])),"value")}function Jt(z){return z.length>10?dc(z):t7a(z,X.createComma)}function kr(z,ye,Ve,Ct=0,wr){let ai=wr?z&&MNr(z):wvi(z);if(ai&&$C(ai)&&!SNe(ai)){let Lo=$Nr(zZ(tv(ai),ai),ai.parent);return Ct|=TNe(ai),Ve||(Ct|=96),ye||(Ct|=3072),Ct&&setEmitFlags(Lo,Ct),Lo}return Tr(z)}function Xr(z,ye,Ve){return kr(z,ye,Ve,98304)}function ui(z,ye,Ve,Ct){return kr(z,ye,Ve,32768,Ct)}function Is(z,ye,Ve){return kr(z,ye,Ve,16384)}function Hs(z,ye,Ve){return kr(z,ye,Ve)}function Rs(z,ye,Ve,Ct){let wr=Bo(z,mNe(ye)?ye:tv(ye));zZ(wr,ye);let ai=0;return Ct||(ai|=96),Ve||(ai|=3072),ai&&setEmitFlags(wr,ai),wr}function ja(z,ye,Ve,Ct){return z&&SJe(ye,32)?Rs(z,kr(ye),Ve,Ct):Is(ye,Ve,Ct)}function ho(z,ye,Ve,Ct){let wr=ed(z,ye,0,Ve);return Og(z,ye,wr,Ct)}function sl(z){return tEt(z.expression)&&z.expression.text==="use strict"}function Nd(){return Xec(cs(Se("use strict")))}function ed(z,ye,Ve=0,Ct){Zo.assert(ye.length===0,"Prologue directives should be at the first statement in the target statements array");let wr=!1,ai=z.length;for(;VeHc&&dm.splice(wr,0,...ye.slice(Hc,ad)),Hc>Lo&&dm.splice(Ct,0,...ye.slice(Lo,Hc)),Lo>ai&&dm.splice(Ve,0,...ye.slice(ai,Lo)),ai>0)if(Ve===0)dm.splice(0,0,...ye.slice(0,ai));else{let rv=new Map;for(let nv=0;nv=0;nv--){let yx=ye[nv];rv.has(yx.expression.text)||dm.unshift(yx)}}return _ce(z)?zZ(ae(dm,z.hasTrailingComma),z):z}function IE(z,ye){let Ve;return typeof ye=="number"?Ve=jt(ye):Ve=ye,tBi(z)?xi(z,Ve,z.name,z.constraint,z.default):Ubt(z)?ga(z,Ve,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):oBi(z)?Ko(z,Ve,z.typeParameters,z.parameters,z.type):L$a(z)?Sc(z,Ve,z.name,z.questionToken,z.type):Kbt(z)?Ft(z,Ve,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):V$a(z)?Rn(z,Ve,z.name,z.questionToken,z.typeParameters,z.parameters,z.type):INr(z)?Qi(z,Ve,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):rBi(z)?Cg(z,Ve,z.parameters,z.body):hNr(z)?ma(z,Ve,z.name,z.parameters,z.type,z.body):jbt(z)?Ei(z,Ve,z.name,z.parameters,z.body):nBi(z)?Ul(z,Ve,z.parameters,z.type):lBi(z)?t_(z,Ve,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):uBi(z)?Mm(z,Ve,z.typeParameters,z.parameters,z.type,z.equalsGreaterThanToken,z.body):mNr(z)?Hm(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):rEt(z)?um(z,Ve,z.declarationList):dBi(z)?sB(z,Ve,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):zbt(z)?jE(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):nDr(z)?NT(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):pBi(z)?Ty(z,Ve,z.name,z.typeParameters,z.type):mec(z)?$I(z,Ve,z.name,z.members):bJe(z)?$A(z,Ve,z.name,z.body):fBi(z)?z_(z,Ve,z.isTypeOnly,z.name,z.moduleReference):IBi(z)?oB(z,Ve,z.importClause,z.moduleSpecifier,z.attributes):hBi(z)?$E(z,Ve,z.expression):mBi(z)?e1(z,Ve,z.isTypeOnly,z.exportClause,z.moduleSpecifier,z.attributes):Zo.assertNever(z)}function zR(z,ye){return Ubt(z)?ga(z,ye,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):Kbt(z)?Ft(z,ye,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):INr(z)?Qi(z,ye,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):hNr(z)?ma(z,ye,z.name,z.parameters,z.type,z.body):jbt(z)?Ei(z,ye,z.name,z.parameters,z.body):mNr(z)?Hm(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):zbt(z)?jE(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):Zo.assertNever(z)}function e3(z,ye){switch(z.kind){case 177:return ma(z,z.modifiers,ye,z.parameters,z.type,z.body);case 178:return Ei(z,z.modifiers,ye,z.parameters,z.body);case 174:return Qi(z,z.modifiers,z.asteriskToken,ye,z.questionToken,z.typeParameters,z.parameters,z.type,z.body);case 173:return Rn(z,z.modifiers,ye,z.questionToken,z.typeParameters,z.parameters,z.type);case 172:return Ft(z,z.modifiers,ye,z.questionToken??z.exclamationToken,z.type,z.initializer);case 171:return Sc(z,z.modifiers,ye,z.questionToken,z.type);case 303:return Bb(z,ye,z.initializer)}}function IA(z){return z?ae(z):void 0}function EI(z){return typeof z=="string"?je(z):z}function zd(z){return typeof z=="string"?Se(z):typeof z=="number"?ue(z):typeof z=="boolean"?z?qr():_n():z}function wA(z){return z&&n().parenthesizeExpressionForDisallowedComma(z)}function qR(z){return typeof z=="number"?Xt(z):z}function sy(z){return z&&_ec(z)?zZ(r(gm(),z),z):z}function $2(z){return typeof z=="string"||z&&!ABi(z)?Rf(z,void 0,void 0,void 0):z}function Eo(z,ye){return z!==ye&&(r(z,ye),zZ(z,ye)),z}}function xbt(e){switch(e){case 344:return"type";case 342:return"returns";case 343:return"this";case 340:return"enum";case 330:return"author";case 332:return"class";case 333:return"public";case 334:return"private";case 335:return"protected";case 336:return"readonly";case 337:return"override";case 345:return"template";case 346:return"typedef";case 341:return"param";case 348:return"prop";case 338:return"callback";case 339:return"overload";case 328:return"augments";case 329:return"implements";case 351:return"import";default:return Zo.fail(`Unsupported kind: ${Zo.formatSyntaxKind(e)}`)}}var hV,q2i={};function S$a(e,t){switch(hV||(hV=WNr(99,!1,0)),e){case 15:hV.setText("`"+t+"`");break;case 16:hV.setText("`"+t+"${");break;case 17:hV.setText("}"+t+"${");break;case 18:hV.setText("}"+t+"`");break}let r=hV.scan();if(r===20&&(r=hV.reScanTemplateToken(!1)),hV.isUnterminated())return hV.setText(void 0),q2i;let n;switch(r){case 15:case 16:case 17:case 18:n=hV.getTokenValue();break}return n===void 0||hV.scan()!==1?(hV.setText(void 0),q2i):(hV.setText(void 0),n)}function pO(e){return e&&$C(e)?CNe(e):$o(e)}function CNe(e){return $o(e)&-67108865}function v$a(e,t){return t|e.transformFlags&134234112}function $o(e){if(!e)return 0;let t=e.transformFlags&~B$a(e.kind);return sza(e)&&xvi(e.name)?v$a(e.name,t):t}function qA(e){return e?e.transformFlags:0}function $2i(e){let t=0;for(let r of e)t|=$o(r);e.transformFlags=t}function B$a(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var rJe=y$a();function nJe(e){return e.flags|=16,e}var w$a={createBaseSourceFileNode:e=>nJe(rJe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>nJe(rJe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>nJe(rJe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>nJe(rJe.createBaseTokenNode(e)),createBaseNode:e=>nJe(rJe.createBaseNode(e))},ARu=eDr(4,w$a);function T$a(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=R$a(r,e.emitNode))}return e}function R$a(e,t){let{flags:r,internalFlags:n,leadingComments:a,trailingComments:o,commentRange:l,sourceMapRange:A,tokenSourceMapRanges:f,constantValue:I,helpers:C,startsOnNewLine:b,snippetElement:E,classThis:N,assignedName:B}=e;if(t||(t={}),r&&(t.flags=r),n&&(t.internalFlags=n&-9),a&&(t.leadingComments=_V(a.slice(),t.leadingComments)),o&&(t.trailingComments=_V(o.slice(),t.trailingComments)),l&&(t.commentRange=l),A&&(t.sourceMapRange=A),f&&(t.tokenSourceMapRanges=N$a(f,t.tokenSourceMapRanges)),I!==void 0&&(t.constantValue=I),C)for(let F of C)t.helpers=K6a(t.helpers,F);return b!==void 0&&(t.startsOnNewLine=b),E!==void 0&&(t.snippetElement=E),N&&(t.classThis=N),B&&(t.assignedName=B),t}function N$a(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function DNe(e){return e.kind===9}function D$a(e){return e.kind===10}function tEt(e){return e.kind===11}function k$a(e){return e.kind===15}function x$a(e){return e.kind===28}function eSi(e){return e.kind===54}function tSi(e){return e.kind===58}function $C(e){return e.kind===80}function Yme(e){return e.kind===81}function G$a(e){return e.kind===95}function Gbt(e){return e.kind===134}function $Rr(e){return e.kind===108}function F$a(e){return e.kind===102}function Z$a(e){return e.kind===166}function eBi(e){return e.kind===167}function tBi(e){return e.kind===168}function Ubt(e){return e.kind===169}function tDr(e){return e.kind===170}function L$a(e){return e.kind===171}function Kbt(e){return e.kind===172}function V$a(e){return e.kind===173}function INr(e){return e.kind===174}function rBi(e){return e.kind===176}function hNr(e){return e.kind===177}function jbt(e){return e.kind===178}function P$a(e){return e.kind===179}function W$a(e){return e.kind===180}function nBi(e){return e.kind===181}function O$a(e){return e.kind===182}function iBi(e){return e.kind===183}function sBi(e){return e.kind===184}function oBi(e){return e.kind===185}function M$a(e){return e.kind===186}function H$a(e){return e.kind===187}function Y$a(e){return e.kind===188}function Q$a(e){return e.kind===189}function X$a(e){return e.kind===202}function J$a(e){return e.kind===190}function U$a(e){return e.kind===191}function K$a(e){return e.kind===192}function j$a(e){return e.kind===193}function z$a(e){return e.kind===194}function q$a(e){return e.kind===195}function $$a(e){return e.kind===196}function eec(e){return e.kind===197}function tec(e){return e.kind===198}function rec(e){return e.kind===199}function nec(e){return e.kind===200}function iec(e){return e.kind===201}function sec(e){return e.kind===205}function oec(e){return e.kind===208}function aec(e){return e.kind===209}function aBi(e){return e.kind===210}function Bce(e){return e.kind===211}function vJe(e){return e.kind===212}function cBi(e){return e.kind===213}function cec(e){return e.kind===215}function rDr(e){return e.kind===217}function lBi(e){return e.kind===218}function uBi(e){return e.kind===219}function lec(e){return e.kind===222}function uec(e){return e.kind===224}function NNe(e){return e.kind===226}function gec(e){return e.kind===230}function mNr(e){return e.kind===231}function Aec(e){return e.kind===232}function dec(e){return e.kind===233}function Vbt(e){return e.kind===235}function pec(e){return e.kind===236}function fec(e){return e.kind===356}function rEt(e){return e.kind===243}function gBi(e){return e.kind===244}function Iec(e){return e.kind===256}function ABi(e){return e.kind===260}function hec(e){return e.kind===261}function dBi(e){return e.kind===262}function zbt(e){return e.kind===263}function nDr(e){return e.kind===264}function pBi(e){return e.kind===265}function mec(e){return e.kind===266}function bJe(e){return e.kind===267}function fBi(e){return e.kind===271}function IBi(e){return e.kind===272}function hBi(e){return e.kind===277}function mBi(e){return e.kind===278}function Cec(e){return e.kind===279}function _ec(e){return e.kind===353}function CBi(e){return e.kind===283}function rSi(e){return e.kind===286}function yec(e){return e.kind===289}function _Bi(e){return e.kind===295}function bec(e){return e.kind===297}function Eec(e){return e.kind===303}function Sec(e){return e.kind===307}function vec(e){return e.kind===309}function Bec(e){return e.kind===314}function wec(e){return e.kind===317}function yBi(e){return e.kind===320}function Tec(e){return e.kind===322}function bBi(e){return e.kind===323}function Rec(e){return e.kind===328}function Nec(e){return e.kind===333}function Dec(e){return e.kind===334}function kec(e){return e.kind===335}function xec(e){return e.kind===336}function Gec(e){return e.kind===337}function Fec(e){return e.kind===339}function Zec(e){return e.kind===331}function nSi(e){return e.kind===341}function Lec(e){return e.kind===342}function iDr(e){return e.kind===344}function Vec(e){return e.kind===345}function Pec(e){return e.kind===329}function Wec(e){return e.kind===350}var Ome=new WeakMap;function EBi(e,t){var r;let n=e.kind;return YNr(n)?n===352?e._children:(r=Ome.get(t))==null?void 0:r.get(e):x2}function Oec(e,t,r){e.kind===352&&Zo.fail("Should not need to re-set the children of a SyntaxList.");let n=Ome.get(t);return n===void 0&&(n=new WeakMap,Ome.set(t,n)),n.set(e,r),r}function iSi(e,t){var r;e.kind===352&&Zo.fail("Did not expect to unset the children of a SyntaxList."),(r=Ome.get(t))==null||r.delete(e)}function Mec(e,t){let r=Ome.get(e);r!==void 0&&(Ome.delete(e),Ome.set(t,r))}function sSi(e){return(TNe(e)&32768)!==0}function Hec(e){return tEt(e.expression)&&e.expression.text==="use strict"}function Yec(e){for(let t of e)if(Lbt(t)){if(Hec(t))return t}else break}function Qec(e){return rDr(e)&&Qme(e)&&!!yza(e)}function SBi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&Qec(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function sDr(e,t=31){for(;SBi(e,t);)e=e.expression;return e}function Xec(e){return setStartsOnNewLine(e,!0)}function AJe(e){if(Pza(e))return e.name;if(Fza(e)){switch(e.kind){case 303:return AJe(e.initializer);case 304:return e.name;case 305:return AJe(e.expression)}return}return Jbt(e,!0)?AJe(e.left):gec(e)?AJe(e.expression):e}function Jec(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function oSi(e){if(e){let t=e;for(;;){if($C(t)||!t.body)return $C(t)?t:t.name;t=t.body}}}var aSi;(e=>{function t(C,b,E,N,B,F,Q){let X=b>0?B[b-1]:void 0;return Zo.assertEqual(E[b],t),B[b]=C.onEnter(N[b],X,Q),E[b]=A(C,t),b}e.enter=t;function r(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],r),Zo.assertIsDefined(C.onLeft),E[b]=A(C,r);let X=C.onLeft(N[b].left,B[b],N[b]);return X?(I(b,N,X),f(b,E,N,B,X)):b}e.left=r;function n(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],n),Zo.assertIsDefined(C.onOperator),E[b]=A(C,n),C.onOperator(N[b].operatorToken,B[b],N[b]),b}e.operator=n;function a(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],a),Zo.assertIsDefined(C.onRight),E[b]=A(C,a);let X=C.onRight(N[b].right,B[b],N[b]);return X?(I(b,N,X),f(b,E,N,B,X)):b}e.right=a;function o(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],o),E[b]=A(C,o);let X=C.onExit(N[b],B[b]);if(b>0){if(b--,C.foldState){let ae=E[b]===o?"right":"left";B[b]=C.foldState(B[b],X,ae)}}else F.value=X;return b}e.exit=o;function l(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],l),b}e.done=l;function A(C,b){switch(b){case t:if(C.onLeft)return r;case r:if(C.onOperator)return n;case n:if(C.onRight)return a;case a:return o;case o:return l;case l:return l;default:Zo.fail("Invalid state")}}e.nextState=A;function f(C,b,E,N,B){return C++,b[C]=t,E[C]=B,N[C]=void 0,C}function I(C,b,E){if(Zo.shouldAssert(2))for(;C>=0;)Zo.assert(b[C]!==E,"Circular traversal detected."),C--}})(aSi||(aSi={}));function cSi(e,t){return typeof e=="object"?CNr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function Uec(e,t){return typeof e=="string"?e:Kec(e,Zo.checkDefined(t))}function Kec(e,t){return kvi(e)?t(e).slice(1):SNe(e)?t(e):Yme(e)?e.escapedText.slice(1):yV(e)}function CNr(e,t,r,n,a){return t=cSi(t,a),n=cSi(n,a),r=Uec(r,a),`${e?"#":""}${t}${r}${n}`}function vBi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of Jec(e)){let r=AJe(t);if(r&&Vza(r)&&(r.transformFlags&65536||r.transformFlags&128&&vBi(r)))return!0}return!1}function zZ(e,t){return t?Ece(e,t.pos,t.end):e}function oDr(e){let t=e.kind;return t===168||t===169||t===171||t===172||t===173||t===174||t===176||t===177||t===178||t===181||t===185||t===218||t===219||t===231||t===243||t===262||t===263||t===264||t===265||t===266||t===267||t===271||t===272||t===277||t===278}function jec(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var lSi,uSi,gSi,ASi,dSi,zec={createBaseSourceFileNode:e=>new(dSi||(dSi=k2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(gSi||(gSi=k2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(ASi||(ASi=k2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(uSi||(uSi=k2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(lSi||(lSi=k2.getNodeConstructor()))(e,-1,-1)},dRu=eDr(1,zec);function wi(e,t){return t&&e(t)}function al(e,t,r){if(r){if(t)return t(r);for(let n of r){let a=e(n);if(a)return a}}}function qec(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function $ec(e){return hO(e.statements,etc)||ttc(e)}function etc(e){return oDr(e)&&rtc(e,95)||fBi(e)&&CBi(e.moduleReference)||IBi(e)||hBi(e)||mBi(e)?e:void 0}function ttc(e){return e.flags&8388608?BBi(e):void 0}function BBi(e){return ntc(e)?e:Ok(e,BBi)}function rtc(e,t){return oD(e.modifiers,r=>r.kind===t)}function ntc(e){return pec(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var itc={166:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},168:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.constraint)||wi(t,e.default)||wi(t,e.expression)},304:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.equalsToken)||wi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return wi(t,e.expression)},169:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},172:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},171:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},303:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.initializer)},260:function(e,t,r){return wi(t,e.name)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},208:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.propertyName)||wi(t,e.name)||wi(t,e.initializer)},181:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},185:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},184:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},179:pSi,180:pSi,174:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},173:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},176:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},177:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},178:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},262:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},218:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},219:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.equalsGreaterThanToken)||wi(t,e.body)},175:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.body)},183:function(e,t,r){return wi(t,e.typeName)||al(t,r,e.typeArguments)},182:function(e,t,r){return wi(t,e.assertsModifier)||wi(t,e.parameterName)||wi(t,e.type)},186:function(e,t,r){return wi(t,e.exprName)||al(t,r,e.typeArguments)},187:function(e,t,r){return al(t,r,e.members)},188:function(e,t,r){return wi(t,e.elementType)},189:function(e,t,r){return al(t,r,e.elements)},192:fSi,193:fSi,194:function(e,t,r){return wi(t,e.checkType)||wi(t,e.extendsType)||wi(t,e.trueType)||wi(t,e.falseType)},195:function(e,t,r){return wi(t,e.typeParameter)},205:function(e,t,r){return wi(t,e.argument)||wi(t,e.attributes)||wi(t,e.qualifier)||al(t,r,e.typeArguments)},302:function(e,t,r){return wi(t,e.assertClause)},196:ISi,198:ISi,199:function(e,t,r){return wi(t,e.objectType)||wi(t,e.indexType)},200:function(e,t,r){return wi(t,e.readonlyToken)||wi(t,e.typeParameter)||wi(t,e.nameType)||wi(t,e.questionToken)||wi(t,e.type)||al(t,r,e.members)},201:function(e,t,r){return wi(t,e.literal)},202:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)},206:hSi,207:hSi,209:function(e,t,r){return al(t,r,e.elements)},210:function(e,t,r){return al(t,r,e.properties)},211:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.name)},212:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.argumentExpression)},213:mSi,214:mSi,215:function(e,t,r){return wi(t,e.tag)||wi(t,e.questionDotToken)||al(t,r,e.typeArguments)||wi(t,e.template)},216:function(e,t,r){return wi(t,e.type)||wi(t,e.expression)},217:function(e,t,r){return wi(t,e.expression)},220:function(e,t,r){return wi(t,e.expression)},221:function(e,t,r){return wi(t,e.expression)},222:function(e,t,r){return wi(t,e.expression)},224:function(e,t,r){return wi(t,e.operand)},229:function(e,t,r){return wi(t,e.asteriskToken)||wi(t,e.expression)},223:function(e,t,r){return wi(t,e.expression)},225:function(e,t,r){return wi(t,e.operand)},226:function(e,t,r){return wi(t,e.left)||wi(t,e.operatorToken)||wi(t,e.right)},234:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},235:function(e,t,r){return wi(t,e.expression)},238:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},236:function(e,t,r){return wi(t,e.name)},227:function(e,t,r){return wi(t,e.condition)||wi(t,e.questionToken)||wi(t,e.whenTrue)||wi(t,e.colonToken)||wi(t,e.whenFalse)},230:function(e,t,r){return wi(t,e.expression)},241:CSi,268:CSi,307:function(e,t,r){return al(t,r,e.statements)||wi(t,e.endOfFileToken)},243:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.declarationList)},261:function(e,t,r){return al(t,r,e.declarations)},244:function(e,t,r){return wi(t,e.expression)},245:function(e,t,r){return wi(t,e.expression)||wi(t,e.thenStatement)||wi(t,e.elseStatement)},246:function(e,t,r){return wi(t,e.statement)||wi(t,e.expression)},247:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},248:function(e,t,r){return wi(t,e.initializer)||wi(t,e.condition)||wi(t,e.incrementor)||wi(t,e.statement)},249:function(e,t,r){return wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},250:function(e,t,r){return wi(t,e.awaitModifier)||wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},251:_Si,252:_Si,253:function(e,t,r){return wi(t,e.expression)},254:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},255:function(e,t,r){return wi(t,e.expression)||wi(t,e.caseBlock)},269:function(e,t,r){return al(t,r,e.clauses)},296:function(e,t,r){return wi(t,e.expression)||al(t,r,e.statements)},297:function(e,t,r){return al(t,r,e.statements)},256:function(e,t,r){return wi(t,e.label)||wi(t,e.statement)},257:function(e,t,r){return wi(t,e.expression)},258:function(e,t,r){return wi(t,e.tryBlock)||wi(t,e.catchClause)||wi(t,e.finallyBlock)},299:function(e,t,r){return wi(t,e.variableDeclaration)||wi(t,e.block)},170:function(e,t,r){return wi(t,e.expression)},263:ySi,231:ySi,264:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.heritageClauses)||al(t,r,e.members)},265:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||wi(t,e.type)},266:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.members)},306:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},267:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.body)},271:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.moduleReference)},272:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},273:function(e,t,r){return wi(t,e.name)||wi(t,e.namedBindings)},300:function(e,t,r){return al(t,r,e.elements)},301:function(e,t,r){return wi(t,e.name)||wi(t,e.value)},270:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)},274:function(e,t,r){return wi(t,e.name)},280:function(e,t,r){return wi(t,e.name)},275:bSi,279:bSi,278:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.exportClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},276:ESi,281:ESi,277:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.expression)},228:function(e,t,r){return wi(t,e.head)||al(t,r,e.templateSpans)},239:function(e,t,r){return wi(t,e.expression)||wi(t,e.literal)},203:function(e,t,r){return wi(t,e.head)||al(t,r,e.templateSpans)},204:function(e,t,r){return wi(t,e.type)||wi(t,e.literal)},167:function(e,t,r){return wi(t,e.expression)},298:function(e,t,r){return al(t,r,e.types)},233:function(e,t,r){return wi(t,e.expression)||al(t,r,e.typeArguments)},283:function(e,t,r){return wi(t,e.expression)},282:function(e,t,r){return al(t,r,e.modifiers)},356:function(e,t,r){return al(t,r,e.elements)},284:function(e,t,r){return wi(t,e.openingElement)||al(t,r,e.children)||wi(t,e.closingElement)},288:function(e,t,r){return wi(t,e.openingFragment)||al(t,r,e.children)||wi(t,e.closingFragment)},285:SSi,286:SSi,292:function(e,t,r){return al(t,r,e.properties)},291:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},293:function(e,t,r){return wi(t,e.expression)},294:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.expression)},287:function(e,t,r){return wi(t,e.tagName)},295:function(e,t,r){return wi(t,e.namespace)||wi(t,e.name)},190:Dme,191:Dme,309:Dme,315:Dme,314:Dme,316:Dme,318:Dme,317:function(e,t,r){return al(t,r,e.parameters)||wi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:al(t,r,e.comment))||al(t,r,e.tags)},347:function(e,t,r){return wi(t,e.tagName)||wi(t,e.name)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},310:function(e,t,r){return wi(t,e.name)},311:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},341:vSi,348:vSi,330:function(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},329:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},328:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},345:function(e,t,r){return wi(t,e.tagName)||wi(t,e.constraint)||al(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},346:function(e,t,r){return wi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?wi(t,e.typeExpression)||wi(t,e.fullName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment)):wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment)))},338:function(e,t,r){return wi(t,e.tagName)||wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},342:kme,344:kme,343:kme,340:kme,350:kme,349:kme,339:kme,323:function(e,t,r){return hO(e.typeParameters,t)||hO(e.parameters,t)||wi(t,e.type)},324:eNr,325:eNr,326:eNr,322:function(e,t,r){return hO(e.jsDocPropertyTags,t)},327:Ice,332:Ice,333:Ice,334:Ice,335:Ice,336:Ice,331:Ice,337:Ice,351:stc,355:otc};function pSi(e,t,r){return al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)}function fSi(e,t,r){return al(t,r,e.types)}function ISi(e,t,r){return wi(t,e.type)}function hSi(e,t,r){return al(t,r,e.elements)}function mSi(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||al(t,r,e.typeArguments)||al(t,r,e.arguments)}function CSi(e,t,r){return al(t,r,e.statements)}function _Si(e,t,r){return wi(t,e.label)}function ySi(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.heritageClauses)||al(t,r,e.members)}function bSi(e,t,r){return al(t,r,e.elements)}function ESi(e,t,r){return wi(t,e.propertyName)||wi(t,e.name)}function SSi(e,t,r){return wi(t,e.tagName)||al(t,r,e.typeArguments)||wi(t,e.attributes)}function Dme(e,t,r){return wi(t,e.type)}function vSi(e,t,r){return wi(t,e.tagName)||(e.isNameFirst?wi(t,e.name)||wi(t,e.typeExpression):wi(t,e.typeExpression)||wi(t,e.name))||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function kme(e,t,r){return wi(t,e.tagName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function eNr(e,t,r){return wi(t,e.name)}function Ice(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function stc(e,t,r){return wi(t,e.tagName)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function otc(e,t,r){return wi(t,e.expression)}function Ok(e,t,r){if(e===void 0||e.kind<=165)return;let n=itc[e.kind];return n===void 0?void 0:n(e,t,r)}function BSi(e,t,r){let n=wSi(e),a=[];for(;a.length=0;--A)n.push(o[A]),a.push(l)}else{let A=t(o,l);if(A){if(A==="skip")continue;return A}if(o.kind>=166)for(let f of wSi(o))n.push(f),a.push(o)}}}function wSi(e){let t=[];return Ok(e,r,r),t;function r(n){t.unshift(n)}}function wBi(e){e.externalModuleIndicator=$ec(e)}function atc(e,t,r,n=!1,a){var o,l;(o=Fbt)==null||o.push(Fbt.Phase.Parse,"createSourceFile",{path:e},!0),R2i("beforeParse");let A,{languageVersion:f,setExternalModuleIndicator:I,impliedNodeFormat:C,jsDocParsingMode:b}=typeof r=="object"?r:{languageVersion:r};if(f===100)A=Mme.parseSourceFile(e,t,f,void 0,n,6,RNe,b);else{let E=C===void 0?I:N=>(N.impliedNodeFormat=C,(I||wBi)(N));A=Mme.parseSourceFile(e,t,f,void 0,n,a,E,b)}return R2i("afterParse"),I7a("Parse","beforeParse","afterParse"),(l=Fbt)==null||l.pop(),A}function ctc(e){return e.externalModuleIndicator!==void 0}function ltc(e,t,r,n=!1){let a=qbt.updateSourceFile(e,t,r,n);return a.flags|=e.flags&12582912,a}var Mme;(e=>{var t=WNr(99,!0),r=40960,n,a,o,l,A;function f(tt){return _n++,tt}var I={createBaseSourceFileNode:tt=>f(new A(tt,0,0)),createBaseIdentifierNode:tt=>f(new o(tt,0,0)),createBasePrivateIdentifierNode:tt=>f(new l(tt,0,0)),createBaseTokenNode:tt=>f(new a(tt,0,0)),createBaseNode:tt=>f(new n(tt,0,0))},C=eDr(11,I),{createNodeArray:b,createNumericLiteral:E,createStringLiteral:N,createLiteralLikeNode:B,createIdentifier:F,createPrivateIdentifier:Q,createToken:X,createArrayLiteralExpression:ae,createObjectLiteralExpression:ne,createPropertyAccessExpression:ce,createPropertyAccessChain:fe,createElementAccessExpression:ue,createElementAccessChain:de,createCallExpression:be,createCallChain:Se,createNewExpression:De,createParenthesizedExpression:k,createBlock:et,createVariableStatement:ct,createExpressionStatement:Me,createIfStatement:je,createWhileStatement:St,createForStatement:At,createForOfStatement:Yt,createVariableDeclaration:Tr,createVariableDeclarationList:Nr}=C,er,vt,xt,Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt,Fn,Nn,Hi,po=!0,Vr=!1;function xi(tt,Jt,kr,Xr,ui=!1,Is,Hs,Rs=0){var ja;if(Is=c$a(tt,Is),Is===6){let sl=ga(tt,Jt,kr,Xr,ui);return convertToJson(sl,(ja=sl.statements[0])==null?void 0:ja.expression,sl.parseDiagnostics,!1,void 0),sl.referencedFiles=x2,sl.typeReferenceDirectives=x2,sl.libReferenceDirectives=x2,sl.amdDependencies=x2,sl.hasNoDefaultLib=!1,sl.pragmas=M6a,sl}Ya(tt,Jt,kr,Xr,Is,Rs);let ho=cl(kr,ui,Is,Hs||wBi,Rs);return Gc(),ho}e.parseSourceFile=xi;function io(tt,Jt){Ya("",tt,Jt,void 0,1,0),Vs();let kr=se(!0),Xr=Wt()===1&&!lr.length;return Gc(),Xr?kr:void 0}e.parseIsolatedEntityName=io;function ga(tt,Jt,kr=2,Xr,ui=!1){Ya(tt,Jt,kr,Xr,6,0),vt=Hi,Vs();let Is=Ri(),Hs,Rs;if(Wt()===1)Hs=Er([],Is,Is),Rs=ZA();else{let sl;for(;Wt()!==1;){let Og;switch(Wt()){case 23:Og=ag();break;case 112:case 97:case 106:Og=ZA();break;case 41:oo(()=>Vs()===9&&Vs()!==59)?Og=ey():Og=n1();break;case 9:case 11:if(oo(()=>Vs()!==59)){Og=ra();break}default:Og=n1();break}sl&&Tee(sl)?sl.push(Og):sl?sl=[sl,Og]:(sl=Og,Wt()!==1&&Da(ts.Unexpected_token))}let Nd=Tee(sl)?Zt(ae(sl),Is):Zo.checkDefined(sl),ed=Me(Nd);Zt(ed,Is),Hs=Er([ed],Is),Rs=il(1,ts.Unexpected_token)}let ja=zr(tt,2,6,!1,Hs,Rs,vt,RNe);ui&&Ft(ja),ja.nodeCount=_n,ja.identifierCount=jt,ja.identifiers=ke,ja.parseDiagnostics=Nme(lr,ja),cr&&(ja.jsDocDiagnostics=Nme(cr,ja));let ho=ja;return Gc(),ho}e.parseJsonText=ga;function Ya(tt,Jt,kr,Xr,ui,Is){switch(n=k2.getNodeConstructor(),a=k2.getTokenConstructor(),o=k2.getIdentifierConstructor(),l=k2.getPrivateIdentifierConstructor(),A=k2.getSourceFileConstructor(),er=R7a(tt),xt=Jt,Zr=kr,Ar=Xr,qt=ui,Xt=K2i(ui),lr=[],Fn=0,ke=new Map,jt=0,_n=0,vt=0,po=!0,qt){case 1:case 2:Hi=524288;break;case 6:Hi=134742016;break;default:Hi=0;break}Vr=!1,t.setText(xt),t.setOnError(Qh),t.setScriptTarget(Zr),t.setLanguageVariant(Xt),t.setScriptKind(qt),t.setJSDocParsingMode(Is)}function Gc(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),xt=void 0,Zr=void 0,Ar=void 0,qt=void 0,Xt=void 0,vt=0,lr=void 0,cr=void 0,Fn=0,ke=void 0,Nn=void 0,po=!0}function cl(tt,Jt,kr,Xr,ui){let Is=Atc(er);Is&&(Hi|=33554432),vt=Hi,Vs();let Hs=jd(0,Am);Zo.assert(Wt()===1);let Rs=Do(),ja=Hr(ZA(),Rs),ho=zr(er,tt,kr,Is,Hs,ja,vt,Xr);return ftc(ho,xt),Itc(ho,sl),ho.commentDirectives=t.getCommentDirectives(),ho.nodeCount=_n,ho.identifierCount=jt,ho.identifiers=ke,ho.parseDiagnostics=Nme(lr,ho),ho.jsDocParsingMode=ui,cr&&(ho.jsDocDiagnostics=Nme(cr,ho)),Jt&&Ft(ho),ho;function sl(Nd,ed,Og){lr.push(dNe(er,xt,Nd,ed,Og))}}let Sc=!1;function Hr(tt,Jt){if(!Jt)return tt;Zo.assert(!tt.jsDoc);let kr=X6a(iqa(tt,xt),Xr=>aY.parseJSDocComment(tt,Xr.pos,Xr.end-Xr.pos));return kr.length&&(tt.jsDoc=kr),Sc&&(Sc=!1,tt.flags|=536870912),tt}function Wr(tt){let Jt=Ar,kr=qbt.createSyntaxCursor(tt);Ar={currentNode:sl};let Xr=[],ui=lr;lr=[];let Is=0,Hs=ja(tt.statements,0);for(;Hs!==-1;){let Nd=tt.statements[Is],ed=tt.statements[Hs];_V(Xr,tt.statements,Is,Hs),Is=ho(tt.statements,Hs);let Og=YRr(ui,o1=>o1.start>=Nd.pos),Nh=Og>=0?YRr(ui,o1=>o1.start>=ed.pos,Og):-1;Og>=0&&_V(lr,ui,Og,Nh>=0?Nh:void 0),oA(()=>{let o1=Hi;for(Hi|=65536,t.resetTokenState(ed.pos),Vs();Wt()!==1;){let Tb=t.getTokenFullStart(),q2=dh(0,Am);if(Xr.push(q2),Tb===t.getTokenFullStart()&&Vs(),Is>=0){let IE=tt.statements[Is];if(q2.end===IE.pos)break;q2.end>IE.pos&&(Is=ho(tt.statements,Is+1))}}Hi=o1},2),Hs=Is>=0?ja(tt.statements,Is):-1}if(Is>=0){let Nd=tt.statements[Is];_V(Xr,tt.statements,Is);let ed=YRr(ui,Og=>Og.start>=Nd.pos);ed>=0&&_V(lr,ui,ed)}return Ar=Jt,C.updateSourceFile(tt,zZ(b(Xr),tt.statements));function Rs(Nd){return!(Nd.flags&65536)&&!!(Nd.transformFlags&67108864)}function ja(Nd,ed){for(let Og=ed;Og118}function Xs(){return Wt()===80?!0:Wt()===127&&Yl()||Wt()===135&&Xu()?!1:Wt()>118}function ws(tt,Jt,kr=!0){return Wt()===tt?(kr&&Vs(),!0):(Jt?Da(Jt):Da(ts._0_expected,by(tt)),!1)}let Gs=Object.keys(LNr).filter(tt=>tt.length>2);function Ma(tt){if(cec(tt)){_g(dj(xt,tt.template.pos),tt.template.end,ts.Module_declaration_names_may_only_use_or_quoted_strings);return}let Jt=$C(tt)?yV(tt):void 0;if(!Jt||!z7a(Jt,Zr)){Da(ts._0_expected,by(27));return}let kr=dj(xt,tt.pos);switch(Jt){case"const":case"let":case"var":_g(kr,tt.end,ts.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Dc(ts.Interface_name_cannot_be_0,ts.Interface_must_be_given_a_name,19);return;case"is":_g(kr,t.getTokenStart(),ts.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Dc(ts.Namespace_name_cannot_be_0,ts.Namespace_must_be_given_a_name,19);return;case"type":Dc(ts.Type_alias_name_cannot_be_0,ts.Type_alias_must_be_given_a_name,64);return}let Xr=cJe(Jt,Gs,VE)??As(Jt);if(Xr){_g(kr,tt.end,ts.Unknown_keyword_or_identifier_Did_you_mean_0,Xr);return}Wt()!==0&&_g(kr,tt.end,ts.Unexpected_keyword_or_identifier)}function Dc(tt,Jt,kr){Wt()===kr?Da(Jt):Da(tt,t.getTokenValue())}function As(tt){for(let Jt of Gs)if(tt.length>Jt.length+2&&Obt(tt,Jt))return`${Jt} ${tt.slice(Jt.length)}`}function Tf(tt,Jt,kr){if(Wt()===60&&!t.hasPrecedingLineBreak()){Da(ts.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Wt()===21){Da(ts.Cannot_start_a_function_call_in_a_type_annotation),Vs();return}if(Jt&&!yg()){kr?Da(ts._0_expected,by(27)):Da(ts.Expected_for_property_initializer);return}if(!Mp()){if(kr){Da(ts._0_expected,by(27));return}Ma(tt)}}function cm(tt){return Wt()===tt?(Ju(),!0):(Zo.assert(URr(tt)),Da(ts._0_expected,by(tt)),!1)}function Fl(tt,Jt,kr,Xr){if(Wt()===Jt){Vs();return}let ui=Da(ts._0_expected,by(Jt));kr&&ui&&Dbt(ui,dNe(er,xt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,by(tt),by(Jt)))}function rc(tt){return Wt()===tt?(Vs(),!0):!1}function sd(tt){if(Wt()===tt)return ZA()}function Om(tt){if(Wt()===tt)return El()}function il(tt,Jt,kr){return sd(tt)||yn(tt,!1,Jt||ts._0_expected,kr||by(tt))}function FA(tt){return Om(tt)||(Zo.assert(URr(tt)),yn(tt,!1,ts._0_expected,by(tt)))}function ZA(){let tt=Ri(),Jt=Wt();return Vs(),Zt(X(Jt),tt)}function El(){let tt=Ri(),Jt=Wt();return Ju(),Zt(X(Jt),tt)}function yg(){return Wt()===27?!0:Wt()===20||Wt()===1||t.hasPrecedingLineBreak()}function Mp(){return yg()?(Wt()===27&&Vs(),!0):!1}function MA(){return Mp()||ws(27)}function Er(tt,Jt,kr,Xr){let ui=b(tt,Xr);return Ece(ui,Jt,kr??t.getTokenFullStart()),ui}function Zt(tt,Jt,kr){return Ece(tt,Jt,kr??t.getTokenFullStart()),Hi&&(tt.flags|=Hi),Vr&&(Vr=!1,tt.flags|=262144),tt}function yn(tt,Jt,kr,...Xr){Jt?pu(t.getTokenFullStart(),0,kr,...Xr):kr&&Da(kr,...Xr);let ui=Ri(),Is=tt===80?F("",void 0):W2i(tt)?C.createTemplateLiteralLikeNode(tt,"","",void 0):tt===9?E("",void 0):tt===11?N("",void 0):tt===282?C.createMissingDeclaration():X(tt);return Zt(Is,ui)}function ls(tt){let Jt=ke.get(tt);return Jt===void 0&&ke.set(tt,Jt=tt),Jt}function oa(tt,Jt,kr){if(tt){jt++;let Rs=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():Ri(),ja=Wt(),ho=ls(t.getTokenValue()),sl=t.hasExtendedUnicodeEscape();return Hu(),Zt(F(ho,ja,sl),Rs)}if(Wt()===81)return Da(kr||ts.Private_identifiers_are_not_allowed_outside_class_bodies),oa(!0);if(Wt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return oa(!0);jt++;let Xr=Wt()===1,ui=t.isReservedWord(),Is=t.getTokenText(),Hs=ui?ts.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ts.Identifier_expected;return yn(80,Xr,Jt||Hs,Is)}function Fs(tt){return oa(cc(),void 0,tt)}function Wa(tt,Jt){return oa(Xs(),tt,Jt)}function Ca(tt){return oa(H1(Wt()),tt)}function ld(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&Da(ts.Unicode_escape_sequence_cannot_appear_here),oa(H1(Wt()))}function Rp(){return H1(Wt())||Wt()===11||Wt()===9||Wt()===10}function np(){return H1(Wt())||Wt()===11}function HA(tt){if(Wt()===11||Wt()===9||Wt()===10){let Jt=ra();return Jt.text=ls(Jt.text),Jt}return tt&&Wt()===23?Zs():Wt()===81?so():Ca()}function df(){return HA(!0)}function Zs(){let tt=Ri();ws(23);let Jt=gc($A);return ws(24),Zt(C.createComputedPropertyName(Jt),tt)}function so(){let tt=Ri(),Jt=Q(ls(t.getTokenValue()));return Vs(),Zt(Jt,tt)}function Ea(tt){return Wt()===tt&&Ki(Dr)}function Ml(){return Vs(),t.hasPrecedingLineBreak()?!1:Bo()}function Dr(){switch(Wt()){case 87:return Vs()===94;case 95:return Vs(),Wt()===90?oo(Ql):Wt()===156?oo(di):Wn();case 90:return Ql();case 126:return Vs(),Bo();case 139:case 153:return Vs(),us();default:return Ml()}}function Wn(){return Wt()===60||Wt()!==42&&Wt()!==130&&Wt()!==19&&Bo()}function di(){return Vs(),Wn()}function aa(){return vee(Wt())&&Ki(Dr)}function Bo(){return Wt()===23||Wt()===19||Wt()===42||Wt()===26||Rp()}function us(){return Wt()===23||Rp()}function Ql(){return Vs(),Wt()===86||Wt()===100||Wt()===120||Wt()===60||Wt()===128&&oo(Dp)||Wt()===134&&oo(t2)}function LA(tt,Jt){if(Hp(tt))return!0;switch(tt){case 0:case 1:case 3:return!(Wt()===27&&Jt)&&Xc();case 2:return Wt()===84||Wt()===90;case 4:return oo(gm);case 5:return oo(bL)||Wt()===27&&!Jt;case 6:return Wt()===23||Rp();case 12:switch(Wt()){case 23:case 42:case 26:case 25:return!0;default:return Rp()}case 18:return Rp();case 9:return Wt()===23||Wt()===26||Rp();case 24:return np();case 7:return Wt()===19?oo(pf):Jt?Xs()&&!j1():US()&&!j1();case 8:return i1();case 10:return Wt()===28||Wt()===26||i1();case 19:return Wt()===103||Wt()===87||Xs();case 15:switch(Wt()){case 28:case 25:return!0}case 11:return Wt()===26||$I();case 16:return NC(!1);case 17:return NC(!0);case 20:case 21:return Wt()===28||ut();case 22:return rn();case 23:return Wt()===161&&oo(Cx)?!1:Wt()===11?!0:H1(Wt());case 13:return H1(Wt())||Wt()===19;case 14:return!0;case 25:return!0;case 26:return Zo.fail("ParsingContext.Count used as a context");default:Zo.assertNever(tt,"Non-exhaustive case in 'isListElement'.")}}function pf(){if(Zo.assert(Wt()===19),Vs()===20){let tt=Vs();return tt===28||tt===19||tt===96||tt===119}return!0}function ef(){return Vs(),Xs()}function ip(){return Vs(),H1(Wt())}function _d(){return Vs(),N7a(Wt())}function j1(){return Wt()===119||Wt()===96?oo(pw):!1}function pw(){return Vs(),$I()}function YA(){return Vs(),ut()}function Ac(tt){if(Wt()===1)return!0;switch(tt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Wt()===20;case 3:return Wt()===20||Wt()===84||Wt()===90;case 7:return Wt()===19||Wt()===96||Wt()===119;case 8:return Nm();case 19:return Wt()===32||Wt()===21||Wt()===19||Wt()===96||Wt()===119;case 11:return Wt()===22||Wt()===27;case 15:case 21:case 10:return Wt()===24;case 17:case 16:case 18:return Wt()===22||Wt()===24;case 20:return Wt()!==28;case 22:return Wt()===19||Wt()===20;case 13:return Wt()===32||Wt()===44;case 14:return Wt()===30&&oo(tv);default:return!1}}function Nm(){return!!(yg()||qE(Wt())||Wt()===39)}function HS(){Zo.assert(Fn,"Missing parsing context");for(let tt=0;tt<26;tt++)if(Fn&1<=0)}function CI(tt){return tt===6?ts.An_enum_member_name_must_be_followed_by_a_or:void 0}function _I(){let tt=Er([],Ri());return tt.isMissingList=!0,tt}function H2(tt){return!!tt.isMissingList}function iE(tt,Jt,kr,Xr){if(ws(kr)){let ui=Kf(tt,Jt);return ws(Xr),ui}return _I()}function se(tt,Jt){let kr=Ri(),Xr=tt?Ca(Jt):Wa(Jt);for(;rc(25)&&Wt()!==30;)Xr=Zt(C.createQualifiedName(Xr,K(tt,!1,!0)),kr);return Xr}function O(tt,Jt){return Zt(C.createQualifiedName(tt,Jt),tt.pos)}function K(tt,Jt,kr){if(t.hasPrecedingLineBreak()&&H1(Wt())&&oo(Dm))return yn(80,!0,ts.Identifier_expected);if(Wt()===81){let Xr=so();return Jt?Xr:yn(80,!0,ts.Identifier_expected)}return tt?kr?Ca():ld():Wa()}function we(tt){let Jt=Ri(),kr=[],Xr;do Xr=$n(tt),kr.push(Xr);while(Xr.literal.kind===17);return Er(kr,Jt)}function gt(tt){let Jt=Ri();return Zt(C.createTemplateExpression(kc(tt),we(tt)),Jt)}function sr(){let tt=Ri();return Zt(C.createTemplateLiteralType(kc(!1),Yr()),tt)}function Yr(){let tt=Ri(),Jt=[],kr;do kr=Lr(),Jt.push(kr);while(kr.literal.kind===17);return Er(Jt,tt)}function Lr(){let tt=Ri();return Zt(C.createTemplateLiteralTypeSpan(tf(),fi(!1)),tt)}function fi(tt){return Wt()===20?(OA(tt),Nl()):il(18,ts._0_expected,by(20))}function $n(tt){let Jt=Ri();return Zt(C.createTemplateSpan(gc($A),fi(tt)),Jt)}function ra(){return Bl(Wt())}function kc(tt){!tt&&t.getTokenFlags()&26656&&OA(!1);let Jt=Bl(Wt());return Zo.assert(Jt.kind===16,"Template head has wrong token kind"),Jt}function Nl(){let tt=Bl(Wt());return Zo.assert(tt.kind===17||tt.kind===18,"Template fragment has wrong token kind"),tt}function ca(tt){let Jt=tt===15||tt===18,kr=t.getTokenText();return kr.substring(1,kr.length-(t.isUnterminated()?0:Jt?1:2))}function Bl(tt){let Jt=Ri(),kr=W2i(tt)?C.createTemplateLiteralLikeNode(tt,t.getTokenValue(),ca(tt),t.getTokenFlags()&7176):tt===9?E(t.getTokenValue(),t.getNumericLiteralFlags()):tt===11?N(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):wza(tt)?B(tt,t.getTokenValue()):Zo.fail();return t.hasExtendedUnicodeEscape()&&(kr.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(kr.isUnterminated=!0),Vs(),Zt(kr,Jt)}function $g(){return se(!0,ts.Type_expected)}function SA(){if(!t.hasPrecedingLineBreak()&&GA()===30)return iE(20,tf,30,32)}function lI(){let tt=Ri();return Zt(C.createTypeReferenceNode($g(),SA()),tt)}function lp(tt){switch(tt.kind){case 183:return Wme(tt.typeName);case 184:case 185:{let{parameters:Jt,type:kr}=tt;return H2(Jt)||lp(kr)}case 196:return lp(tt.type);default:return!1}}function Ib(tt){return Vs(),Zt(C.createTypePredicateNode(void 0,tt,tf()),tt.pos)}function Na(){let tt=Ri();return Vs(),Zt(C.createThisTypeNode(),tt)}function wd(){let tt=Ri();return Vs(),Zt(C.createJSDocAllType(),tt)}function z1(){let tt=Ri();return Vs(),Zt(C.createJSDocNonNullableType(xc(),!1),tt)}function T_(){let tt=Ri();return Vs(),Wt()===28||Wt()===20||Wt()===22||Wt()===32||Wt()===64||Wt()===52?Zt(C.createJSDocUnknownType(),tt):Zt(C.createJSDocNullableType(tf(),!1),tt)}function RC(){let tt=Ri(),Jt=Do();if(Ki(_x)){let kr=Mc(36),Xr=ph(59,!1);return Hr(Zt(C.createJSDocFunctionType(kr,Xr),tt),Jt)}return Zt(C.createTypeReferenceNode(Ca(),void 0),tt)}function Hm(){let tt=Ri(),Jt;return(Wt()===110||Wt()===105)&&(Jt=Ca(),ws(59)),Zt(C.createParameterDeclaration(void 0,void 0,Jt,void 0,YS(),void 0),tt)}function YS(){t.setSkipJsDocLeadingAsterisks(!0);let tt=Ri();if(rc(144)){let Xr=C.createJSDocNamepathType(void 0);e:for(;;)switch(Wt()){case 20:case 1:case 28:case 5:break e;default:Ju()}return t.setSkipJsDocLeadingAsterisks(!1),Zt(Xr,tt)}let Jt=rc(26),kr=jE();return t.setSkipJsDocLeadingAsterisks(!1),Jt&&(kr=Zt(C.createJSDocVariadicType(kr),tt)),Wt()===64?(Vs(),Zt(C.createJSDocOptionalType(kr),tt)):kr}function Fg(){let tt=Ri();ws(114);let Jt=se(!0),kr=t.hasPrecedingLineBreak()?void 0:xn();return Zt(C.createTypeQueryNode(Jt,kr),tt)}function hb(){let tt=Ri(),Jt=Le(!1,!0),kr=Wa(),Xr,ui;rc(96)&&(ut()||!$I()?Xr=tf():ui=JR());let Is=rc(64)?tf():void 0,Hs=C.createTypeParameterDeclaration(Jt,kr,Xr,Is);return Hs.expression=ui,Zt(Hs,tt)}function gC(){if(Wt()===30)return iE(19,hb,30,32)}function NC(tt){return Wt()===26||i1()||vee(Wt())||Wt()===60||ut(!tt)}function Y2(tt){let Jt=Of(ts.Private_identifiers_cannot_be_used_as_parameters);return $za(Jt)===0&&!oD(tt)&&vee(Wt())&&Vs(),Jt}function U_(){return cc()||Wt()===23||Wt()===19}function DC(tt){return qI(tt)}function kC(tt){return qI(tt,!1)}function qI(tt,Jt=!0){let kr=Ri(),Xr=Do(),ui=tt?li(()=>Le(!0)):Ei(()=>Le(!0));if(Wt()===110){let ja=C.createParameterDeclaration(ui,void 0,oa(!0),void 0,Ty(),void 0),ho=DNr(ui);return ho&&mI(ho,ts.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Hr(Zt(ja,kr),Xr)}let Is=po;po=!1;let Hs=sd(26);if(!Jt&&!U_())return;let Rs=Hr(Zt(C.createParameterDeclaration(ui,Hs,Y2(ui),sd(58),Ty(),Qm()),kr),Xr);return po=Is,Rs}function ph(tt,Jt){if(vA(tt,Jt))return Nc(jE)}function vA(tt,Jt){return tt===39?(ws(tt),!0):rc(59)?!0:Jt&&Wt()===39?(Da(ts._0_expected,by(59)),Vs(),!0):!1}function Td(tt,Jt){let kr=Yl(),Xr=Xu();Qi(!!(tt&1)),yo(!!(tt&2));let ui=tt&32?Kf(17,Hm):Kf(16,()=>Jt?DC(Xr):kC(Xr));return Qi(kr),yo(Xr),ui}function Mc(tt){if(!ws(21))return _I();let Jt=Td(tt,!0);return ws(22),Jt}function Pf(){rc(28)||MA()}function sE(tt){let Jt=Ri(),kr=Do();tt===180&&ws(105);let Xr=gC(),ui=Mc(4),Is=ph(59,!0);Pf();let Hs=tt===179?C.createCallSignature(Xr,ui,Is):C.createConstructSignature(Xr,ui,Is);return Hr(Zt(Hs,Jt),kr)}function eA(){return Wt()===23&&oo(QS)}function QS(){if(Vs(),Wt()===26||Wt()===24)return!0;if(vee(Wt())){if(Vs(),Xs())return!0}else if(Xs())Vs();else return!1;return Wt()===59||Wt()===28?!0:Wt()!==58?!1:(Vs(),Wt()===59||Wt()===28||Wt()===24)}function XS(tt,Jt,kr){let Xr=iE(16,()=>DC(!1),23,24),ui=Ty();Pf();let Is=C.createIndexSignature(kr,Xr,ui);return Hr(Zt(Is,tt),Jt)}function um(tt,Jt,kr){let Xr=df(),ui=sd(58),Is;if(Wt()===21||Wt()===30){let Hs=gC(),Rs=Mc(4),ja=ph(59,!0);Is=C.createMethodSignature(kr,Xr,ui,Hs,Rs,ja)}else{let Hs=Ty();Is=C.createPropertySignature(kr,Xr,ui,Hs),Wt()===64&&(Is.initializer=Qm())}return Pf(),Hr(Zt(Is,tt),Jt)}function gm(){if(Wt()===21||Wt()===30||Wt()===139||Wt()===153)return!0;let tt=!1;for(;vee(Wt());)tt=!0,Vs();return Wt()===23?!0:(Rp()&&(tt=!0,Vs()),tt?Wt()===21||Wt()===30||Wt()===58||Wt()===59||Wt()===28||yg():!1)}function cs(){if(Wt()===21||Wt()===30)return sE(179);if(Wt()===105&&oo(na))return sE(180);let tt=Ri(),Jt=Do(),kr=Le(!1);return Ea(139)?Bb(tt,Jt,kr,177,4):Ea(153)?Bb(tt,Jt,kr,178,4):eA()?XS(tt,Jt,kr):um(tt,Jt,kr)}function na(){return Vs(),Wt()===21||Wt()===30}function ko(){return Vs()===25}function ki(){switch(Vs()){case 21:case 30:case 25:return!0}return!1}function Kl(){let tt=Ri();return Zt(C.createTypeLiteralNode(fd()),tt)}function fd(){let tt;return ws(19)?(tt=jd(4,cs),ws(20)):tt=_I(),tt}function jf(){return Vs(),Wt()===40||Wt()===41?Vs()===148:(Wt()===148&&Vs(),Wt()===23&&ef()&&Vs()===103)}function Ld(){let tt=Ri(),Jt=Ca();ws(103);let kr=tf();return Zt(C.createTypeParameterDeclaration(void 0,Jt,kr,void 0),tt)}function AC(){let tt=Ri();ws(19);let Jt;(Wt()===148||Wt()===40||Wt()===41)&&(Jt=ZA(),Jt.kind!==148&&ws(148)),ws(23);let kr=Ld(),Xr=rc(130)?tf():void 0;ws(24);let ui;(Wt()===58||Wt()===40||Wt()===41)&&(ui=ZA(),ui.kind!==58&&ws(58));let Is=Ty();MA();let Hs=jd(4,cs);return ws(20),Zt(C.createMappedTypeNode(Jt,kr,Xr,ui,Is,Hs),tt)}function JE(){let tt=Ri();if(rc(26))return Zt(C.createRestTypeNode(tf()),tt);let Jt=tf();if(Bec(Jt)&&Jt.pos===Jt.type.pos){let kr=C.createOptionalTypeNode(Jt.type);return zZ(kr,Jt),kr.flags=Jt.flags,kr}return Jt}function Ym(){return Vs()===59||Wt()===58&&Vs()===59}function vy(){return Wt()===26?H1(Vs())&&Ym():H1(Wt())&&Ym()}function K_(){if(oo(vy)){let tt=Ri(),Jt=Do(),kr=sd(26),Xr=Ca(),ui=sd(58);ws(59);let Is=JE(),Hs=C.createNamedTupleMember(kr,Xr,ui,Is);return Hr(Zt(Hs,tt),Jt)}return JE()}function od(){let tt=Ri();return Zt(C.createTupleTypeNode(iE(21,K_,23,24)),tt)}function UE(){let tt=Ri();ws(21);let Jt=tf();return ws(22),Zt(C.createParenthesizedType(Jt),tt)}function KE(){let tt;if(Wt()===128){let Jt=Ri();Vs();let kr=Zt(X(128),Jt);tt=Er([kr],Jt)}return tt}function Yp(){let tt=Ri(),Jt=Do(),kr=KE(),Xr=rc(105);Zo.assert(!kr||Xr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let ui=gC(),Is=Mc(4),Hs=ph(39,!1),Rs=Xr?C.createConstructorTypeNode(kr,ui,Is,Hs):C.createFunctionTypeNode(ui,Is,Hs);return Hr(Zt(Rs,tt),Jt)}function JS(){let tt=ZA();return Wt()===25?void 0:tt}function By(tt){let Jt=Ri();tt&&Vs();let kr=Wt()===112||Wt()===97||Wt()===106?ZA():Bl(Wt());return tt&&(kr=Zt(C.createPrefixUnaryExpression(41,kr),Jt)),Zt(C.createLiteralTypeNode(kr),Jt)}function $0(){return Vs(),Wt()===102}function fw(){vt|=4194304;let tt=Ri(),Jt=rc(114);ws(102),ws(21);let kr=tf(),Xr;if(rc(28)){let Hs=t.getTokenStart();ws(19);let Rs=Wt();if(Rs===118||Rs===132?Vs():Da(ts._0_expected,by(118)),ws(59),Xr=$O(Rs,!0),!ws(20)){let ja=Vme(lr);ja&&ja.code===ts._0_expected.code&&Dbt(ja,dNe(er,xt,Hs,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ws(22);let ui=rc(25)?$g():void 0,Is=SA();return Zt(C.createImportTypeNode(kr,Xr,ui,Is,Jt),tt)}function Q2(){return Vs(),Wt()===9||Wt()===10}function xc(){switch(Wt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ki(JS)||lI();case 67:t.reScanAsteriskEqualsToken();case 42:return wd();case 61:t.reScanQuestionToken();case 58:return T_();case 100:return RC();case 54:return z1();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return By();case 41:return oo(Q2)?By(!0):lI();case 116:return ZA();case 110:{let tt=Na();return Wt()===142&&!t.hasPrecedingLineBreak()?Ib(tt):tt}case 114:return oo($0)?fw():Fg();case 19:return oo(jf)?AC():Kl();case 23:return od();case 21:return UE();case 102:return fw();case 131:return oo(Dm)?NT():lI();case 16:return sr();default:return lI()}}function ut(tt){switch(Wt()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!tt;case 41:return!tt&&oo(Q2);case 21:return!tt&&oo(ar);default:return Xs()}}function ar(){return Vs(),Wt()===22||NC(!1)||ut()}function Jr(){let tt=Ri(),Jt=xc();for(;!t.hasPrecedingLineBreak();)switch(Wt()){case 54:Vs(),Jt=Zt(C.createJSDocNonNullableType(Jt,!0),tt);break;case 58:if(oo(YA))return Jt;Vs(),Jt=Zt(C.createJSDocNullableType(Jt,!0),tt);break;case 23:if(ws(23),ut()){let kr=tf();ws(24),Jt=Zt(C.createIndexedAccessTypeNode(Jt,kr),tt)}else ws(24),Jt=Zt(C.createArrayTypeNode(Jt),tt);break;default:return Jt}return Jt}function Gn(tt){let Jt=Ri();return ws(tt),Zt(C.createTypeOperatorNode(tt,Ng()),Jt)}function Ts(){if(rc(96)){let tt=iA(tf);if(Sg()||Wt()!==58)return tt}}function Qo(){let tt=Ri(),Jt=Wa(),kr=Ki(Ts),Xr=C.createTypeParameterDeclaration(void 0,Jt,kr);return Zt(Xr,tt)}function vg(){let tt=Ri();return ws(140),Zt(C.createInferTypeNode(Qo()),tt)}function Ng(){let tt=Wt();switch(tt){case 143:case 158:case 148:return Gn(tt);case 140:return vg()}return Nc(Jr)}function Rf(tt){if(sB()){let Jt=Yp(),kr;return sBi(Jt)?kr=tt?ts.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:kr=tt?ts.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,mI(Jt,kr),Jt}}function uI(tt,Jt,kr){let Xr=Ri(),ui=tt===52,Is=rc(tt),Hs=Is&&Rf(ui)||Jt();if(Wt()===tt||Is){let Rs=[Hs];for(;rc(tt);)Rs.push(Rf(ui)||Jt());Hs=Zt(kr(Er(Rs,Xr)),Xr)}return Hs}function Th(){return uI(51,Ng,C.createIntersectionTypeNode)}function oE(){return uI(52,Th,C.createUnionTypeNode)}function TT(){return Vs(),Wt()===105}function sB(){return Wt()===30||Wt()===21&&oo(wy)?!0:Wt()===105||Wt()===128&&oo(TT)}function RT(){if(vee(Wt())&&Le(!1),Xs()||Wt()===110)return Vs(),!0;if(Wt()===23||Wt()===19){let tt=lr.length;return Of(),tt===lr.length}return!1}function wy(){return Vs(),!!(Wt()===22||Wt()===26||RT()&&(Wt()===59||Wt()===28||Wt()===58||Wt()===64||Wt()===22&&(Vs(),Wt()===39)))}function jE(){let tt=Ri(),Jt=Xs()&&Ki(j_),kr=tf();return Jt?Zt(C.createTypePredicateNode(void 0,Jt,kr),tt):kr}function j_(){let tt=Wa();if(Wt()===142&&!t.hasPrecedingLineBreak())return Vs(),tt}function NT(){let tt=Ri(),Jt=il(131),kr=Wt()===110?Na():Wa(),Xr=rc(142)?tf():void 0;return Zt(C.createTypePredicateNode(Jt,kr,Xr),tt)}function tf(){if(Hi&81920)return bo(81920,tf);if(sB())return Yp();let tt=Ri(),Jt=oE();if(!Sg()&&!t.hasPrecedingLineBreak()&&rc(96)){let kr=iA(tf);ws(58);let Xr=Nc(tf);ws(59);let ui=Nc(tf);return Zt(C.createConditionalTypeNode(Jt,kr,Xr,ui),tt)}return Jt}function Ty(){return rc(59)?tf():void 0}function US(){switch(Wt()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return oo(ki);default:return Xs()}}function $I(){if(US())return!0;switch(Wt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return kT()?!0:Xs()}}function BA(){return Wt()!==19&&Wt()!==100&&Wt()!==86&&Wt()!==60&&$I()}function $A(){let tt=Ul();tt&&ps(!1);let Jt=Ri(),kr=zf(!0),Xr;for(;Xr=sd(28);)kr=q1(kr,Xr,zf(!0),Jt);return tt&&ps(!0),kr}function Qm(){return rc(64)?zf(!0):void 0}function zf(tt){if(mb())return Cb();let Jt=KS(tt)||oB(tt);if(Jt)return Jt;let kr=Ri(),Xr=Do(),ui=zS(0);return ui.kind===80&&Wt()===39?Ry(kr,ui,tt,Xr,void 0):wNe(ui)&&Uvi(Ko())?q1(ui,ZA(),zf(tt),kr):XR(ui,kr,tt)}function mb(){return Wt()===127?Yl()?!0:oo(Ro):!1}function R_(){return Vs(),!t.hasPrecedingLineBreak()&&Xs()}function Cb(){let tt=Ri();return Vs(),!t.hasPrecedingLineBreak()&&(Wt()===42||$I())?Zt(C.createYieldExpression(sd(42),zf(!0)),tt):Zt(C.createYieldExpression(void 0,void 0),tt)}function Ry(tt,Jt,kr,Xr,ui){Zo.assert(Wt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Is=C.createParameterDeclaration(void 0,void 0,Jt,void 0,void 0,void 0);Zt(Is,Jt.pos);let Hs=Er([Is],Is.pos,Is.end),Rs=il(39),ja=jS(!!ui,kr),ho=C.createArrowFunction(ui,void 0,Hs,void 0,Rs,ja);return Hr(Zt(ho,tt),Xr)}function KS(tt){let Jt=_b();if(Jt!==0)return Jt===1?aB(!0,!0):Ki(()=>zE(tt))}function _b(){return Wt()===21||Wt()===30||Wt()===134?oo(z_):Wt()===39?1:0}function z_(){if(Wt()===134&&(Vs(),t.hasPrecedingLineBreak()||Wt()!==21&&Wt()!==30))return 0;let tt=Wt(),Jt=Vs();if(tt===21){if(Jt===22)switch(Vs()){case 39:case 59:case 19:return 1;default:return 0}if(Jt===23||Jt===19)return 2;if(Jt===26)return 1;if(vee(Jt)&&Jt!==134&&oo(ef))return Vs()===130?0:1;if(!Xs()&&Jt!==110)return 0;switch(Vs()){case 59:return 1;case 58:return Vs(),Wt()===59||Wt()===28||Wt()===64||Wt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return Zo.assert(tt===30),!Xs()&&Wt()!==87?0:Xt===1?oo(()=>{rc(87);let kr=Vs();if(kr===96)switch(Vs()){case 64:case 32:case 44:return!1;default:return!0}else if(kr===28||kr===64)return!0;return!1})?1:0:2}function zE(tt){let Jt=t.getTokenStart();if(Nn!=null&&Nn.has(Jt))return;let kr=aB(!1,tt);return kr||(Nn||(Nn=new Set)).add(Jt),kr}function oB(tt){if(Wt()===134&&oo(DT)===1){let Jt=Ri(),kr=Do(),Xr=ft(),ui=zS(0);return Ry(Jt,ui,tt,kr,Xr)}}function DT(){if(Wt()===134){if(Vs(),t.hasPrecedingLineBreak()||Wt()===39)return 0;let tt=zS(0);if(!t.hasPrecedingLineBreak()&&tt.kind===80&&Wt()===39)return 1}return 0}function aB(tt,Jt){let kr=Ri(),Xr=Do(),ui=ft(),Is=oD(ui,Gbt)?2:0,Hs=gC(),Rs;if(ws(21)){if(tt)Rs=Td(Is,tt);else{let Tb=Td(Is,tt);if(!Tb)return;Rs=Tb}if(!ws(22)&&!tt)return}else{if(!tt)return;Rs=_I()}let ja=Wt()===59,ho=ph(59,!1);if(ho&&!tt&&lp(ho))return;let sl=ho;for(;sl?.kind===196;)sl=sl.type;let Nd=sl&&wec(sl);if(!tt&&Wt()!==39&&(Nd||Wt()!==19))return;let ed=Wt(),Og=il(39),Nh=ed===39||ed===19?jS(oD(ui,Gbt),Jt):Wa();if(!Jt&&ja&&Wt()!==59)return;let o1=C.createArrowFunction(ui,Hs,Rs,ho,Og,Nh);return Hr(Zt(o1,kr),Xr)}function jS(tt,Jt){if(Wt()===19)return cE(tt?2:0);if(Wt()!==27&&Wt()!==100&&Wt()!==86&&Xc()&&!BA())return cE(16|(tt?2:0));let kr=po;po=!1;let Xr=tt?li(()=>zf(Jt)):Ei(()=>zf(Jt));return po=kr,Xr}function XR(tt,Jt,kr){let Xr=sd(58);if(!Xr)return tt;let ui;return Zt(C.createConditionalExpression(tt,Xr,bo(r,()=>zf(!1)),ui=il(59),ANr(ui)?zf(kr):yn(80,!1,ts._0_expected,by(59))),Jt)}function zS(tt){let Jt=Ri(),kr=JR();return X2(tt,kr,Jt)}function qE(tt){return tt===103||tt===165}function X2(tt,Jt,kr){for(;;){Ko();let Xr=KRr(Wt());if(!(Wt()===43?Xr>=tt:Xr>tt)||Wt()===103&&Wc())break;if(Wt()===130||Wt()===152){if(t.hasPrecedingLineBreak())break;{let ui=Wt();Vs(),Jt=ui===152?pn(Jt,tf()):J2(Jt,tf())}}else Jt=q1(Jt,ZA(),zS(Xr),kr)}return Jt}function kT(){return Wc()&&Wt()===103?!1:KRr(Wt())>0}function pn(tt,Jt){return Zt(C.createSatisfiesExpression(tt,Jt),tt.pos)}function q1(tt,Jt,kr,Xr){return Zt(C.createBinaryExpression(tt,Jt,kr),Xr)}function J2(tt,Jt){return Zt(C.createAsExpression(tt,Jt),tt.pos)}function ey(){let tt=Ri();return Zt(C.createPrefixUnaryExpression(Wt(),Ru(ty)),tt)}function up(){let tt=Ri();return Zt(C.createDeleteExpression(Ru(ty)),tt)}function Iw(){let tt=Ri();return Zt(C.createTypeOfExpression(Ru(ty)),tt)}function cB(){let tt=Ri();return Zt(C.createVoidExpression(Ru(ty)),tt)}function RD(){return Wt()===135?Xu()?!0:oo(Ro):!1}function Rd(){let tt=Ri();return Zt(C.createAwaitExpression(Ru(ty)),tt)}function JR(){if(cF()){let kr=Ri(),Xr=$1();return Wt()===43?X2(KRr(Wt()),Xr,kr):Xr}let tt=Wt(),Jt=ty();if(Wt()===43){let kr=dj(xt,Jt.pos),{end:Xr}=Jt;Jt.kind===216?_g(kr,Xr,ts.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(Zo.assert(URr(tt)),_g(kr,Xr,ts.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,by(tt)))}return Jt}function ty(){switch(Wt()){case 40:case 41:case 55:case 54:return ey();case 91:return up();case 114:return Iw();case 116:return cB();case 30:return Xt===1?t1(!0,void 0,void 0,!0):rf();case 135:if(RD())return Rd();default:return $1()}}function cF(){switch(Wt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Xt!==1)return!1;default:return!0}}function $1(){if(Wt()===46||Wt()===47){let Jt=Ri();return Zt(C.createPrefixUnaryExpression(Wt(),Ru($E)),Jt)}else if(Xt===1&&Wt()===30&&oo(_d))return t1(!0);let tt=$E();if(Zo.assert(wNe(tt)),(Wt()===46||Wt()===47)&&!t.hasPrecedingLineBreak()){let Jt=Wt();return Vs(),Zt(C.createPostfixUnaryExpression(tt,Jt),tt.pos)}return tt}function $E(){let tt=Ri(),Jt;return Wt()===102?oo(na)?(vt|=4194304,Jt=ZA()):oo(ko)?(Vs(),Vs(),Jt=Zt(C.createMetaProperty(102,Ca()),tt),vt|=8388608):Jt=N_():Jt=Wt()===108?e1():N_(),r1(tt,Jt)}function N_(){let tt=Ri(),Jt=b0();return Ih(tt,Jt,!0)}function e1(){let tt=Ri(),Jt=ZA();if(Wt()===30){let kr=Ri(),Xr=Ki(hw);Xr!==void 0&&(_g(kr,Ri(),ts.super_may_not_use_type_arguments),xC()||(Jt=C.createExpressionWithTypeArguments(Jt,Xr)))}return Wt()===21||Wt()===25||Wt()===23?Jt:(il(25,ts.super_must_be_followed_by_an_argument_list_or_member_access),Zt(ce(Jt,K(!0,!0,!0)),tt))}function t1(tt,Jt,kr,Xr=!1){let ui=Ri(),Is=Rh(tt),Hs;if(Is.kind===286){let Rs=yb(Is),ja,ho=Rs[Rs.length-1];if(ho?.kind===284&&!hce(ho.openingElement.tagName,ho.closingElement.tagName)&&hce(Is.tagName,ho.closingElement.tagName)){let sl=ho.children.end,Nd=Zt(C.createJsxElement(ho.openingElement,ho.children,Zt(C.createJsxClosingElement(Zt(F(""),sl,sl)),sl,sl)),ho.openingElement.pos,sl);Rs=Er([...Rs.slice(0,Rs.length-1),Nd],Rs.pos,sl),ja=ho.closingElement}else ja=lc(Is,tt),hce(Is.tagName,ja.tagName)||(kr&&rSi(kr)&&hce(ja.tagName,kr.tagName)?mI(Is.tagName,ts.JSX_element_0_has_no_corresponding_closing_tag,gJe(xt,Is.tagName)):mI(ja.tagName,ts.Expected_corresponding_JSX_closing_tag_for_0,gJe(xt,Is.tagName)));Hs=Zt(C.createJsxElement(Is,Rs,ja),ui)}else Is.kind===289?Hs=Zt(C.createJsxFragment(Is,yb(Is),fh(tt)),ui):(Zo.assert(Is.kind===285),Hs=Is);if(!Xr&&tt&&Wt()===30){let Rs=typeof Jt>"u"?Hs.pos:Jt,ja=Ki(()=>t1(!0,Rs));if(ja){let ho=yn(28,!1);return z2i(ho,ja.pos,0),_g(dj(xt,Rs),ja.end,ts.JSX_expressions_must_have_one_parent_element),Zt(C.createBinaryExpression(Hs,ho,ja),ui)}}return Hs}function ry(){let tt=Ri(),Jt=C.createJsxText(t.getTokenValue(),qr===13);return qr=t.scanJsxToken(),Zt(Jt,tt)}function xT(tt,Jt){switch(Jt){case 1:if(yec(tt))mI(tt,ts.JSX_fragment_has_no_corresponding_closing_tag);else{let kr=tt.tagName,Xr=Math.min(dj(xt,kr.pos),kr.end);_g(Xr,kr.end,ts.JSX_element_0_has_no_corresponding_closing_tag,gJe(xt,tt.tagName))}return;case 31:case 7:return;case 12:case 13:return ry();case 19:return ND(!1);case 30:return t1(!1,void 0,tt);default:return Zo.assertNever(Jt)}}function yb(tt){let Jt=[],kr=Ri(),Xr=Fn;for(Fn|=16384;;){let ui=xT(tt,qr=t.reScanJsxToken());if(!ui||(Jt.push(ui),rSi(tt)&&ui?.kind===284&&!hce(ui.openingElement.tagName,ui.closingElement.tagName)&&hce(tt.tagName,ui.closingElement.tagName)))break}return Fn=Xr,Er(Jt,kr)}function r_(){let tt=Ri();return Zt(C.createJsxAttributes(jd(13,DD)),tt)}function Rh(tt){let Jt=Ri();if(ws(30),Wt()===32)return Uf(),Zt(C.createJsxOpeningFragment(),Jt);let kr=bb(),Xr=Hi&524288?void 0:xn(),ui=r_(),Is;return Wt()===32?(Uf(),Is=C.createJsxOpeningElement(kr,Xr,ui)):(ws(44),ws(32,void 0,!1)&&(tt?Vs():Uf()),Is=C.createJsxSelfClosingElement(kr,Xr,ui)),Zt(Is,Jt)}function bb(){let tt=Ri(),Jt=lB();if(_Bi(Jt))return Jt;let kr=Jt;for(;rc(25);)kr=Zt(ce(kr,K(!0,!1,!1)),tt);return kr}function lB(){let tt=Ri();dl();let Jt=Wt()===110,kr=ld();return rc(59)?(dl(),Zt(C.createJsxNamespacedName(kr,ld()),tt)):Jt?Zt(C.createToken(110),tt):kr}function ND(tt){let Jt=Ri();if(!ws(19))return;let kr,Xr;return Wt()!==20&&(tt||(kr=sd(26)),Xr=$A()),tt?ws(20):ws(20,void 0,!1)&&Uf(),Zt(C.createJsxExpression(kr,Xr),Jt)}function DD(){if(Wt()===19)return UR();let tt=Ri();return Zt(C.createJsxAttribute(kD(),q_()),tt)}function q_(){if(Wt()===64){if(Kd()===11)return ra();if(Wt()===19)return ND(!0);if(Wt()===30)return t1(!0);Da(ts.or_JSX_element_expected)}}function kD(){let tt=Ri();dl();let Jt=ld();return rc(59)?(dl(),Zt(C.createJsxNamespacedName(Jt,ld()),tt)):Jt}function UR(){let tt=Ri();ws(19),ws(26);let Jt=$A();return ws(20),Zt(C.createJsxSpreadAttribute(Jt),tt)}function lc(tt,Jt){let kr=Ri();ws(31);let Xr=bb();return ws(32,void 0,!1)&&(Jt||!hce(tt.tagName,Xr)?Vs():Uf()),Zt(C.createJsxClosingElement(Xr),kr)}function fh(tt){let Jt=Ri();return ws(31),ws(32,ts.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(tt?Vs():Uf()),Zt(C.createJsxJsxClosingFragment(),Jt)}function rf(){Zo.assert(Xt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let tt=Ri();ws(30);let Jt=tf();ws(32);let kr=ty();return Zt(C.createTypeAssertion(Jt,kr),tt)}function yI(){return Vs(),H1(Wt())||Wt()===23||xC()}function aE(){return Wt()===29&&oo(yI)}function qS(tt){if(tt.flags&64)return!0;if(Vbt(tt)){let Jt=tt.expression;for(;Vbt(Jt)&&!(Jt.flags&64);)Jt=Jt.expression;if(Jt.flags&64){for(;Vbt(tt);)tt.flags|=64,tt=tt.expression;return!0}}return!1}function Qp(tt,Jt,kr){let Xr=K(!0,!0,!0),ui=kr||qS(Jt),Is=ui?fe(Jt,kr,Xr):ce(Jt,Xr);if(ui&&Yme(Is.name)&&mI(Is.name,ts.An_optional_chain_cannot_contain_private_identifiers),dec(Jt)&&Jt.typeArguments){let Hs=Jt.typeArguments.pos-1,Rs=dj(xt,Jt.typeArguments.end)+1;_g(Hs,Rs,ts.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Zt(Is,tt)}function uB(tt,Jt,kr){let Xr;if(Wt()===24)Xr=yn(80,!0,ts.An_element_access_expression_should_take_an_argument);else{let Is=gc($A);eEt(Is)&&(Is.text=ls(Is.text)),Xr=Is}ws(24);let ui=kr||qS(Jt)?de(Jt,kr,Xr):ue(Jt,Xr);return Zt(ui,tt)}function Ih(tt,Jt,kr){for(;;){let Xr,ui=!1;if(kr&&aE()?(Xr=il(29),ui=H1(Wt())):ui=rc(25),ui){Jt=Qp(tt,Jt,Xr);continue}if((Xr||!Ul())&&rc(23)){Jt=uB(tt,Jt,Xr);continue}if(xC()){Jt=!Xr&&Jt.kind===233?$_(tt,Jt.expression,Xr,Jt.typeArguments):$_(tt,Jt,Xr,void 0);continue}if(!Xr){if(Wt()===54&&!t.hasPrecedingLineBreak()){Vs(),Jt=Zt(C.createNonNullExpression(Jt),tt);continue}let Is=Ki(hw);if(Is){Jt=Zt(C.createExpressionWithTypeArguments(Jt,Is),tt);continue}}return Jt}}function xC(){return Wt()===15||Wt()===16}function $_(tt,Jt,kr,Xr){let ui=C.createTaggedTemplateExpression(Jt,Xr,Wt()===15?(OA(!0),ra()):gt(!0));return(kr||Jt.flags&64)&&(ui.flags|=64),ui.questionDotToken=kr,Zt(ui,tt)}function r1(tt,Jt){for(;;){Jt=Ih(tt,Jt,!0);let kr,Xr=sd(29);if(Xr&&(kr=Ki(hw),xC())){Jt=$_(tt,Jt,Xr,kr);continue}if(kr||Wt()===21){!Xr&&Jt.kind===233&&(kr=Jt.typeArguments,Jt=Jt.expression);let ui=gB(),Is=Xr||qS(Jt)?Se(Jt,Xr,kr,ui):be(Jt,kr,ui);Jt=Zt(Is,tt);continue}if(Xr){let ui=yn(80,!1,ts.Identifier_expected);Jt=Zt(fe(Jt,Xr,ui),tt)}break}return Jt}function gB(){ws(21);let tt=Kf(11,bI);return ws(22),tt}function hw(){if(Hi&524288||GA()!==30)return;Vs();let tt=Kf(20,tf);if(Ko()===32)return Vs(),tt&>()?tt:void 0}function GT(){switch(Wt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||kT()||!$I()}function b0(){switch(Wt()){case 15:t.getTokenFlags()&26656&&OA(!1);case 9:case 10:case 11:return ra();case 110:case 108:case 106:case 112:case 97:return ZA();case 21:return ia();case 23:return ag();case 19:return n1();case 134:if(!oo(t2))break;return U2();case 60:return Ur();case 86:return mi();case 100:return U2();case 105:return n_();case 44:case 69:if(Eg()===14)return ra();break;case 16:return gt(!1);case 81:return so()}return Wa(ts.Expression_expected)}function ia(){let tt=Ri(),Jt=Do();ws(21);let kr=gc($A);return ws(22),Hr(Zt(k(kr),tt),Jt)}function e2(){let tt=Ri();ws(26);let Jt=zf(!0);return Zt(C.createSpreadElement(Jt),tt)}function yd(){return Wt()===26?e2():Wt()===28?Zt(C.createOmittedExpression(),Ri()):zf(!0)}function bI(){return bo(r,yd)}function ag(){let tt=Ri(),Jt=t.getTokenStart(),kr=ws(23),Xr=t.hasPrecedingLineBreak(),ui=Kf(15,yd);return Fl(23,24,kr,Jt),Zt(ae(ui,Xr),tt)}function Eb(){let tt=Ri(),Jt=Do();if(sd(26)){let ho=zf(!0);return Hr(Zt(C.createSpreadAssignment(ho),tt),Jt)}let kr=Le(!0);if(Ea(139))return Bb(tt,Jt,kr,177,0);if(Ea(153))return Bb(tt,Jt,kr,178,0);let Xr=sd(42),ui=Xs(),Is=df(),Hs=sd(58),Rs=sd(54);if(Xr||Wt()===21||Wt()===30)return vb(tt,Jt,kr,Xr,Is,Hs,Rs);let ja;if(ui&&Wt()!==59){let ho=sd(64),sl=ho?gc(()=>zf(!0)):void 0;ja=C.createShorthandPropertyAssignment(Is,sl),ja.equalsToken=ho}else{ws(59);let ho=gc(()=>zf(!0));ja=C.createPropertyAssignment(Is,ho)}return ja.modifiers=kr,ja.questionToken=Hs,ja.exclamationToken=Rs,Hr(Zt(ja,tt),Jt)}function n1(){let tt=Ri(),Jt=t.getTokenStart(),kr=ws(19),Xr=t.hasPrecedingLineBreak(),ui=Kf(12,Eb,!0);return Fl(19,20,kr,Jt),Zt(ne(ui,Xr),tt)}function U2(){let tt=Ul();ps(!1);let Jt=Ri(),kr=Do(),Xr=Le(!1);ws(100);let ui=sd(42),Is=ui?1:0,Hs=oD(Xr,Gbt)?2:0,Rs=Is&&Hs?Ps(e0):Is?ma(e0):Hs?li(e0):e0(),ja=gC(),ho=Mc(Is|Hs),sl=ph(59,!1),Nd=cE(Is|Hs);ps(tt);let ed=C.createFunctionExpression(Xr,ui,Rs,ja,ho,sl,Nd);return Hr(Zt(ed,Jt),kr)}function e0(){return cc()?Fs():void 0}function n_(){let tt=Ri();if(ws(105),rc(25)){let Is=Ca();return Zt(C.createMetaProperty(105,Is),tt)}let Jt=Ri(),kr=Ih(Jt,b0(),!1),Xr;kr.kind===233&&(Xr=kr.typeArguments,kr=kr.expression),Wt()===29&&Da(ts.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,gJe(xt,kr));let ui=Wt()===21?gB():void 0;return Zt(De(kr,Xr,ui),tt)}function Xp(tt,Jt){let kr=Ri(),Xr=Do(),ui=t.getTokenStart(),Is=ws(19,Jt);if(Is||tt){let Hs=t.hasPrecedingLineBreak(),Rs=jd(1,Am);Fl(19,20,Is,ui);let ja=Hr(Zt(et(Rs,Hs),kr),Xr);return Wt()===64&&(Da(ts.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Vs()),ja}else{let Hs=_I();return Hr(Zt(et(Hs,void 0),kr),Xr)}}function cE(tt,Jt){let kr=Yl();Qi(!!(tt&1));let Xr=Xu();yo(!!(tt&2));let ui=po;po=!1;let Is=Ul();Is&&ps(!1);let Hs=Xp(!!(tt&16),Jt);return Is&&ps(!0),po=ui,Qi(kr),yo(Xr),Hs}function lE(){let tt=Ri(),Jt=Do();return ws(27),Hr(Zt(C.createEmptyStatement(),tt),Jt)}function Ip(){let tt=Ri(),Jt=Do();ws(101);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Am(),Hs=rc(93)?Am():void 0;return Hr(Zt(je(ui,Is,Hs),tt),Jt)}function Xh(){let tt=Ri(),Jt=Do();ws(92);let kr=Am();ws(117);let Xr=t.getTokenStart(),ui=ws(21),Is=gc($A);return Fl(21,22,ui,Xr),rc(27),Hr(Zt(C.createDoStatement(kr,Is),tt),Jt)}function E0(){let tt=Ri(),Jt=Do();ws(117);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Am();return Hr(Zt(St(ui,Is),tt),Jt)}function aA(){let tt=Ri(),Jt=Do();ws(99);let kr=sd(135);ws(21);let Xr;Wt()!==27&&(Wt()===115||Wt()===121||Wt()===87||Wt()===160&&oo(yL)||Wt()===135&&oo(ny)?Xr=j(!0):Xr=Cg($A));let ui;if(kr?ws(165):rc(165)){let Is=gc(()=>zf(!0));ws(22),ui=Yt(kr,Xr,Is,Am())}else if(rc(103)){let Is=gc($A);ws(22),ui=C.createForInStatement(Xr,Is,Am())}else{ws(27);let Is=Wt()!==27&&Wt()!==22?gc($A):void 0;ws(27);let Hs=Wt()!==22?gc($A):void 0;ws(22),ui=At(Xr,Is,Hs,Am())}return Hr(Zt(ui,tt),Jt)}function fu(tt){let Jt=Ri(),kr=Do();ws(tt===252?83:88);let Xr=yg()?void 0:Wa();MA();let ui=tt===252?C.createBreakStatement(Xr):C.createContinueStatement(Xr);return Hr(Zt(ui,Jt),kr)}function Jp(){let tt=Ri(),Jt=Do();ws(107);let kr=yg()?void 0:gc($A);return MA(),Hr(Zt(C.createReturnStatement(kr),tt),Jt)}function dC(){let tt=Ri(),Jt=Do();ws(118);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Qa(67108864,Am);return Hr(Zt(C.createWithStatement(ui,Is),tt),Jt)}function uE(){let tt=Ri(),Jt=Do();ws(84);let kr=gc($A);ws(59);let Xr=jd(3,Am);return Hr(Zt(C.createCaseClause(kr,Xr),tt),Jt)}function eh(){let tt=Ri();ws(90),ws(59);let Jt=jd(3,Am);return Zt(C.createDefaultClause(Jt),tt)}function Wf(){return Wt()===84?uE():eh()}function Mo(){let tt=Ri();ws(19);let Jt=jd(2,Wf);return ws(20),Zt(C.createCaseBlock(Jt),tt)}function gp(){let tt=Ri(),Jt=Do();ws(109),ws(21);let kr=gc($A);ws(22);let Xr=Mo();return Hr(Zt(C.createSwitchStatement(kr,Xr),tt),Jt)}function lF(){let tt=Ri(),Jt=Do();ws(111);let kr=t.hasPrecedingLineBreak()?void 0:gc($A);return kr===void 0&&(jt++,kr=Zt(F(""),Ri())),Mp()||Ma(kr),Hr(Zt(C.createThrowStatement(kr),tt),Jt)}function uF(){let tt=Ri(),Jt=Do();ws(113);let kr=Xp(!1),Xr=Wt()===85?gE():void 0,ui;return(!Xr||Wt()===98)&&(ws(98,ts.catch_or_finally_expected),ui=Xp(!1)),Hr(Zt(C.createTryStatement(kr,Xr,ui),tt),Jt)}function gE(){let tt=Ri();ws(85);let Jt;rc(21)?(Jt=Vd(),ws(22)):Jt=void 0;let kr=Xp(!1);return Zt(C.createCatchClause(Jt,kr),tt)}function FT(){let tt=Ri(),Jt=Do();return ws(89),MA(),Hr(Zt(C.createDebuggerStatement(),tt),Jt)}function Np(){let tt=Ri(),Jt=Do(),kr,Xr=Wt()===21,ui=gc($A);return $C(ui)&&rc(59)?kr=C.createLabeledStatement(ui,Am()):(Mp()||Ma(ui),kr=Me(ui),Xr&&(Jt=!1)),Hr(Zt(kr,tt),Jt)}function Dm(){return Vs(),H1(Wt())&&!t.hasPrecedingLineBreak()}function Dp(){return Vs(),Wt()===86&&!t.hasPrecedingLineBreak()}function t2(){return Vs(),Wt()===100&&!t.hasPrecedingLineBreak()}function Ro(){return Vs(),(H1(Wt())||Wt()===9||Wt()===10||Wt()===11)&&!t.hasPrecedingLineBreak()}function AE(){for(;;)switch(Wt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return Ou();case 135:return hp();case 120:case 156:return R_();case 144:case 145:return qf();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let tt=Wt();if(Vs(),t.hasPrecedingLineBreak())return!1;if(tt===138&&Wt()===156)return!0;continue;case 162:return Vs(),Wt()===19||Wt()===80||Wt()===95;case 102:return Vs(),Wt()===11||Wt()===42||Wt()===19||H1(Wt());case 95:let Jt=Vs();if(Jt===156&&(Jt=oo(Vs)),Jt===64||Jt===42||Jt===19||Jt===90||Jt===130||Jt===60)return!0;continue;case 126:Vs();continue;default:return!1}}function AB(){return oo(AE)}function Xc(){switch(Wt()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return AB()||oo(ki);case 87:case 95:return AB();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return AB()||!oo(Dm);default:return $I()}}function iu(){return Vs(),cc()||Wt()===19||Wt()===23}function dE(){return oo(iu)}function yL(){return KR(!0)}function KR(tt){return Vs(),tt&&Wt()===165?!1:(cc()||Wt()===19)&&!t.hasPrecedingLineBreak()}function Ou(){return oo(KR)}function ny(tt){return Vs()===160?KR(tt):!1}function hp(){return oo(ny)}function Am(){switch(Wt()){case 27:return lE();case 19:return Xp(!1);case 115:return Id(Ri(),Do(),void 0);case 121:if(dE())return Id(Ri(),Do(),void 0);break;case 135:if(hp())return Id(Ri(),Do(),void 0);break;case 160:if(Ou())return Id(Ri(),Do(),void 0);break;case 100:return fB(Ri(),Do(),void 0);case 86:return Vi(Ri(),Do(),void 0);case 101:return Ip();case 92:return Xh();case 117:return E0();case 99:return aA();case 88:return fu(251);case 83:return fu(252);case 107:return Jp();case 118:return dC();case 109:return gp();case 111:return lF();case 113:case 85:case 98:return uF();case 89:return FT();case 60:return i_();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(AB())return i_();break}return Np()}function K2(tt){return tt.kind===138}function i_(){let tt=Ri(),Jt=Do(),kr=Le(!0);if(oD(kr,K2)){let Xr=dB(tt);if(Xr)return Xr;for(let ui of kr)ui.flags|=33554432;return Qa(33554432,()=>ZT(tt,Jt,kr))}else return ZT(tt,Jt,kr)}function dB(tt){return Qa(33554432,()=>{let Jt=Hp(Fn,tt);if(Jt)return uC(Jt)})}function ZT(tt,Jt,kr){switch(Wt()){case 115:case 121:case 87:case 160:case 135:return Id(tt,Jt,kr);case 100:return fB(tt,Jt,kr);case 86:return Vi(tt,Jt,kr);case 120:return Po(tt,Jt,kr);case 156:return ec(tt,Jt,kr);case 94:return dc(tt,Jt,kr);case 162:case 144:case 145:return $f(tt,Jt,kr);case 102:return qO(tt,Jt,kr);case 95:switch(Vs(),Wt()){case 90:case 64:return sY(tt,Jt,kr);case 130:return Yu(tt,Jt,kr);default:return iy(tt,Jt,kr)}default:if(kr){let Xr=yn(282,!0,ts.Declaration_expected);return pNr(Xr,tt),Xr.modifiers=kr,Xr}return}}function Cx(){return Vs()===11}function pB(){return Vs(),Wt()===161||Wt()===64}function qf(){return Vs(),!t.hasPrecedingLineBreak()&&(Xs()||Wt()===11)}function Jh(tt,Jt){if(Wt()!==19){if(tt&4){Pf();return}if(yg()){MA();return}}return cE(tt,Jt)}function $S(){let tt=Ri();if(Wt()===28)return Zt(C.createOmittedExpression(),tt);let Jt=sd(26),kr=Of(),Xr=Qm();return Zt(C.createBindingElement(Jt,void 0,kr,Xr),tt)}function Sb(){let tt=Ri(),Jt=sd(26),kr=cc(),Xr=df(),ui;kr&&Wt()!==59?(ui=Xr,Xr=void 0):(ws(59),ui=Of());let Is=Qm();return Zt(C.createBindingElement(Jt,Xr,ui,Is),tt)}function mp(){let tt=Ri();ws(19);let Jt=gc(()=>Kf(9,Sb));return ws(20),Zt(C.createObjectBindingPattern(Jt),tt)}function r2(){let tt=Ri();ws(23);let Jt=gc(()=>Kf(10,$S));return ws(24),Zt(C.createArrayBindingPattern(Jt),tt)}function i1(){return Wt()===19||Wt()===23||Wt()===81||cc()}function Of(tt){return Wt()===23?r2():Wt()===19?mp():Fs(tt)}function pE(){return Vd(!0)}function Vd(tt){let Jt=Ri(),kr=Do(),Xr=Of(ts.Private_identifiers_are_not_allowed_in_variable_declarations),ui;tt&&Xr.kind===80&&Wt()===54&&!t.hasPrecedingLineBreak()&&(ui=ZA());let Is=Ty(),Hs=qE(Wt())?void 0:Qm(),Rs=Tr(Xr,ui,Is,Hs);return Hr(Zt(Rs,Jt),kr)}function j(tt){let Jt=Ri(),kr=0;switch(Wt()){case 115:break;case 121:kr|=1;break;case 87:kr|=2;break;case 160:kr|=4;break;case 135:Zo.assert(hp()),kr|=6,Vs();break;default:Zo.fail()}Vs();let Xr;if(Wt()===165&&oo(Z))Xr=_I();else{let ui=Wc();Or(tt),Xr=Kf(8,tt?Vd:pE),Or(ui)}return Zt(Nr(Xr,kr),Jt)}function Z(){return ef()&&Vs()===22}function Id(tt,Jt,kr){let Xr=j(!1);MA();let ui=ct(kr,Xr);return Hr(Zt(ui,tt),Jt)}function fB(tt,Jt,kr){let Xr=Xu(),ui=fO(kr);ws(100);let Is=sd(42),Hs=ui&2048?e0():Fs(),Rs=Is?1:0,ja=ui&1024?2:0,ho=gC();ui&32&&yo(!0);let sl=Mc(Rs|ja),Nd=ph(59,!1),ed=Jh(Rs|ja,ts.or_expected);yo(Xr);let Og=C.createFunctionDeclaration(kr,Is,Hs,ho,sl,Nd,ed);return Hr(Zt(Og,tt),Jt)}function ev(){if(Wt()===137)return ws(137);if(Wt()===11&&oo(Vs)===21)return Ki(()=>{let tt=ra();return tt.text==="constructor"?tt:void 0})}function Ny(tt,Jt,kr){return Ki(()=>{if(ev()){let Xr=gC(),ui=Mc(0),Is=ph(59,!1),Hs=Jh(0,ts.or_expected),Rs=C.createConstructorDeclaration(kr,ui,Hs);return Rs.typeParameters=Xr,Rs.type=Is,Hr(Zt(Rs,tt),Jt)}})}function vb(tt,Jt,kr,Xr,ui,Is,Hs,Rs){let ja=Xr?1:0,ho=oD(kr,Gbt)?2:0,sl=gC(),Nd=Mc(ja|ho),ed=ph(59,!1),Og=Jh(ja|ho,Rs),Nh=C.createMethodDeclaration(kr,Xr,ui,Is,sl,Nd,ed,Og);return Nh.exclamationToken=Hs,Hr(Zt(Nh,tt),Jt)}function xD(tt,Jt,kr,Xr,ui){let Is=!ui&&!t.hasPrecedingLineBreak()?sd(54):void 0,Hs=Ty(),Rs=bo(90112,Qm);Tf(Xr,Hs,Rs);let ja=C.createPropertyDeclaration(kr,Xr,ui||Is,Hs,Rs);return Hr(Zt(ja,tt),Jt)}function IB(tt,Jt,kr){let Xr=sd(42),ui=df(),Is=sd(58);return Xr||Wt()===21||Wt()===30?vb(tt,Jt,kr,Xr,ui,Is,void 0,ts.or_expected):xD(tt,Jt,kr,ui,Is)}function Bb(tt,Jt,kr,Xr,ui){let Is=df(),Hs=gC(),Rs=Mc(0),ja=ph(59,!1),ho=Jh(ui),sl=Xr===177?C.createGetAccessorDeclaration(kr,Is,Rs,ja,ho):C.createSetAccessorDeclaration(kr,Is,Rs,ho);return sl.typeParameters=Hs,jbt(sl)&&(sl.type=ja),Hr(Zt(sl,tt),Jt)}function bL(){let tt;if(Wt()===60)return!0;for(;vee(Wt());){if(tt=Wt(),Nza(tt))return!0;Vs()}if(Wt()===42||(Rp()&&(tt=Wt(),Vs()),Wt()===23))return!0;if(tt!==void 0){if(!Cce(tt)||tt===153||tt===139)return!0;switch(Wt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return yg()}}return!1}function gF(tt,Jt,kr){il(126);let Xr=x(),ui=Hr(Zt(C.createClassStaticBlockDeclaration(Xr),tt),Jt);return ui.modifiers=kr,ui}function x(){let tt=Yl(),Jt=Xu();Qi(!1),yo(!0);let kr=Xp(!1);return Qi(tt),yo(Jt),kr}function L(){if(Xu()&&Wt()===135){let tt=Ri(),Jt=Wa(ts.Expression_expected);Vs();let kr=Ih(tt,Jt,!0);return r1(tt,kr)}return $E()}function te(){let tt=Ri();if(!rc(60))return;let Jt=vu(L);return Zt(C.createDecorator(Jt),tt)}function Re(tt,Jt,kr){let Xr=Ri(),ui=Wt();if(Wt()===87&&Jt){if(!Ki(Ml))return}else if(kr&&Wt()===126&&oo(z2)||tt&&Wt()===126||!aa())return;return Zt(X(ui),Xr)}function Le(tt,Jt,kr){let Xr=Ri(),ui,Is,Hs,Rs=!1,ja=!1,ho=!1;if(tt&&Wt()===60)for(;Is=te();)ui=mV(ui,Is);for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=mV(ui,Hs),ja=!0;if(ja&&tt&&Wt()===60)for(;Is=te();)ui=mV(ui,Is),ho=!0;if(ho)for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=mV(ui,Hs);return ui&&Er(ui,Xr)}function ft(){let tt;if(Wt()===134){let Jt=Ri();Vs();let kr=Zt(X(134),Jt);tt=Er([kr],Jt)}return tt}function dr(){let tt=Ri(),Jt=Do();if(Wt()===27)return Vs(),Hr(Zt(C.createSemicolonClassElement(),tt),Jt);let kr=Le(!0,!0,!0);if(Wt()===126&&oo(z2))return gF(tt,Jt,kr);if(Ea(139))return Bb(tt,Jt,kr,177,0);if(Ea(153))return Bb(tt,Jt,kr,178,0);if(Wt()===137||Wt()===11){let Xr=Ny(tt,Jt,kr);if(Xr)return Xr}if(eA())return XS(tt,Jt,kr);if(H1(Wt())||Wt()===11||Wt()===9||Wt()===10||Wt()===42||Wt()===23)if(oD(kr,K2)){for(let Xr of kr)Xr.flags|=33554432;return Qa(33554432,()=>IB(tt,Jt,kr))}else return IB(tt,Jt,kr);if(kr){let Xr=yn(80,!0,ts.Declaration_expected);return xD(tt,Jt,kr,Xr,void 0)}return Zo.fail("Should not have attempted to parse class member declaration.")}function Ur(){let tt=Ri(),Jt=Do(),kr=Le(!0);if(Wt()===86)return Ta(tt,Jt,kr,231);let Xr=yn(282,!0,ts.Expression_expected);return pNr(Xr,tt),Xr.modifiers=kr,Xr}function mi(){return Ta(Ri(),Do(),void 0,231)}function Vi(tt,Jt,kr){return Ta(tt,Jt,kr,263)}function Ta(tt,Jt,kr,Xr){let ui=Xu();ws(86);let Is=Sl(),Hs=gC();oD(kr,G$a)&&yo(!0);let Rs=Wg(),ja;ws(19)?(ja=Ci(),ws(20)):ja=_I(),yo(ui);let ho=Xr===263?C.createClassDeclaration(kr,Is,Hs,Rs,ja):C.createClassExpression(kr,Is,Hs,Rs,ja);return Hr(Zt(ho,tt),Jt)}function Sl(){return cc()&&!Ho()?oa(cc()):void 0}function Ho(){return Wt()===119&&oo(ip)}function Wg(){if(rn())return jd(22,cA)}function cA(){let tt=Ri(),Jt=Wt();Zo.assert(Jt===96||Jt===119),Vs();let kr=Kf(7,th);return Zt(C.createHeritageClause(Jt,kr),tt)}function th(){let tt=Ri(),Jt=$E();if(Jt.kind===233)return Jt;let kr=xn();return Zt(C.createExpressionWithTypeArguments(Jt,kr),tt)}function xn(){return Wt()===30?iE(20,tf,30,32):void 0}function rn(){return Wt()===96||Wt()===119}function Ci(){return jd(5,dr)}function Po(tt,Jt,kr){ws(120);let Xr=Wa(),ui=gC(),Is=Wg(),Hs=fd(),Rs=C.createInterfaceDeclaration(kr,Xr,ui,Is,Hs);return Hr(Zt(Rs,tt),Jt)}function ec(tt,Jt,kr){ws(156),t.hasPrecedingLineBreak()&&Da(ts.Line_break_not_permitted_here);let Xr=Wa(),ui=gC();ws(64);let Is=Wt()===141&&Ki(JS)||tf();MA();let Hs=C.createTypeAliasDeclaration(kr,Xr,ui,Is);return Hr(Zt(Hs,tt),Jt)}function Ra(){let tt=Ri(),Jt=Do(),kr=df(),Xr=gc(Qm);return Hr(Zt(C.createEnumMember(kr,Xr),tt),Jt)}function dc(tt,Jt,kr){ws(94);let Xr=Wa(),ui;ws(19)?(ui=Xa(()=>Kf(6,Ra)),ws(20)):ui=_I();let Is=C.createEnumDeclaration(kr,Xr,ui);return Hr(Zt(Is,tt),Jt)}function Iu(){let tt=Ri(),Jt;return ws(19)?(Jt=jd(1,Am),ws(20)):Jt=_I(),Zt(C.createModuleBlock(Jt),tt)}function Cl(tt,Jt,kr,Xr){let ui=Xr&32,Is=Xr&8?Ca():Wa(),Hs=rc(25)?Cl(Ri(),!1,void 0,8|ui):Iu(),Rs=C.createModuleDeclaration(kr,Is,Hs,Xr);return Hr(Zt(Rs,tt),Jt)}function wl(tt,Jt,kr){let Xr=0,ui;Wt()===162?(ui=Wa(),Xr|=2048):(ui=ra(),ui.text=ls(ui.text));let Is;Wt()===19?Is=Iu():MA();let Hs=C.createModuleDeclaration(kr,ui,Is,Xr);return Hr(Zt(Hs,tt),Jt)}function $f(tt,Jt,kr){let Xr=0;if(Wt()===162)return wl(tt,Jt,kr);if(rc(145))Xr|=32;else if(ws(144),Wt()===11)return wl(tt,Jt,kr);return Cl(tt,Jt,kr,Xr)}function j2(){return Wt()===149&&oo(_x)}function _x(){return Vs()===21}function z2(){return Vs()===19}function tv(){return Vs()===44}function Yu(tt,Jt,kr){ws(130),ws(145);let Xr=Wa();MA();let ui=C.createNamespaceExportDeclaration(Xr);return ui.modifiers=kr,Hr(Zt(ui,tt),Jt)}function qO(tt,Jt,kr){ws(102);let Xr=t.getTokenFullStart(),ui;Xs()&&(ui=Wa());let Is=!1;if(ui?.escapedText==="type"&&(Wt()!==161||Xs()&&oo(pB))&&(Xs()||iY())&&(Is=!0,ui=Xs()?Wa():void 0),ui&&!LT())return GD(tt,Jt,kr,ui,Is);let Hs=hB(ui,Xr,Is),Rs=FD(),ja=mw();MA();let ho=C.createImportDeclaration(kr,Hs,Rs,ja);return Hr(Zt(ho,tt),Jt)}function hB(tt,Jt,kr,Xr=!1){let ui;return(tt||Wt()===42||Wt()===19)&&(ui=dF(tt,Jt,kr,Xr),ws(161)),ui}function mw(){let tt=Wt();if((tt===118||tt===132)&&!t.hasPrecedingLineBreak())return $O(tt)}function AF(){let tt=Ri(),Jt=H1(Wt())?Ca():Bl(11);ws(59);let kr=zf(!0);return Zt(C.createImportAttribute(Jt,kr),tt)}function $O(tt,Jt){let kr=Ri();Jt||ws(tt);let Xr=t.getTokenStart();if(ws(19)){let ui=t.hasPrecedingLineBreak(),Is=Kf(24,AF,!0);if(!ws(20)){let Hs=Vme(lr);Hs&&Hs.code===ts._0_expected.code&&Dbt(Hs,dNe(er,xt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Zt(C.createImportAttributes(Is,ui,tt),kr)}else{let ui=Er([],Ri(),void 0,!1);return Zt(C.createImportAttributes(ui,!1,tt),kr)}}function iY(){return Wt()===42||Wt()===19}function LT(){return Wt()===28||Wt()===161}function GD(tt,Jt,kr,Xr,ui){ws(64);let Is=EL();MA();let Hs=C.createImportEqualsDeclaration(kr,ui,Xr,Is);return Hr(Zt(Hs,tt),Jt)}function dF(tt,Jt,kr,Xr){let ui;return(!tt||rc(28))&&(Xr&&t.setSkipJsDocLeadingAsterisks(!0),ui=Wt()===42?fE():bd(275),Xr&&t.setSkipJsDocLeadingAsterisks(!1)),Zt(C.createImportClause(kr,tt,ui),Jt)}function EL(){return j2()?ff():se(!1)}function ff(){let tt=Ri();ws(149),ws(21);let Jt=FD();return ws(22),Zt(C.createExternalModuleReference(Jt),tt)}function FD(){if(Wt()===11){let tt=ra();return tt.text=ls(tt.text),tt}else return $A()}function fE(){let tt=Ri();ws(42),ws(130);let Jt=Wa();return Zt(C.createNamespaceImport(Jt),tt)}function n2(){return H1(Wt())||Wt()===11}function mB(tt){return Wt()===11?ra():tt()}function bd(tt){let Jt=Ri(),kr=tt===275?C.createNamedImports(iE(23,Uh,19,20)):C.createNamedExports(iE(23,s1,19,20));return Zt(kr,Jt)}function s1(){let tt=Do();return Hr(wb(281),tt)}function Uh(){return wb(276)}function wb(tt){let Jt=Ri(),kr=Cce(Wt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Is=!1,Hs,Rs=!0,ja=mB(Ca);if(ja.kind===80&&ja.escapedText==="type")if(Wt()===130){let Nd=Ca();if(Wt()===130){let ed=Ca();n2()?(Is=!0,Hs=Nd,ja=mB(sl),Rs=!1):(Hs=ja,ja=ed,Rs=!1)}else n2()?(Hs=ja,Rs=!1,ja=mB(sl)):(Is=!0,ja=Nd)}else n2()&&(Is=!0,ja=mB(sl));Rs&&Wt()===130&&(Hs=ja,ws(130),ja=mB(sl)),tt===276&&(ja.kind!==80?(_g(dj(xt,ja.pos),ja.end,ts.Identifier_expected),ja=Ece(yn(80,!1),ja.pos,ja.pos)):kr&&_g(Xr,ui,ts.Identifier_expected));let ho=tt===276?C.createImportSpecifier(Is,Hs,ja):C.createExportSpecifier(Is,Hs,ja);return Zt(ho,Jt);function sl(){return kr=Cce(Wt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Ca()}}function Uu(tt){return Zt(C.createNamespaceExport(mB(Ca)),tt)}function iy(tt,Jt,kr){let Xr=Xu();yo(!0);let ui,Is,Hs,Rs=rc(156),ja=Ri();rc(42)?(rc(130)&&(ui=Uu(ja)),ws(161),Is=FD()):(ui=bd(279),(Wt()===161||Wt()===11&&!t.hasPrecedingLineBreak())&&(ws(161),Is=FD()));let ho=Wt();Is&&(ho===118||ho===132)&&!t.hasPrecedingLineBreak()&&(Hs=$O(ho)),MA(),yo(Xr);let sl=C.createExportDeclaration(kr,Rs,ui,Is,Hs);return Hr(Zt(sl,tt),Jt)}function sY(tt,Jt,kr){let Xr=Xu();yo(!0);let ui;rc(64)?ui=!0:ws(90);let Is=zf(!0);MA(),yo(Xr);let Hs=C.createExportAssignment(kr,ui,Is);return Hr(Zt(Hs,tt),Jt)}let oY;(tt=>{tt[tt.SourceElements=0]="SourceElements",tt[tt.BlockStatements=1]="BlockStatements",tt[tt.SwitchClauses=2]="SwitchClauses",tt[tt.SwitchClauseStatements=3]="SwitchClauseStatements",tt[tt.TypeMembers=4]="TypeMembers",tt[tt.ClassMembers=5]="ClassMembers",tt[tt.EnumMembers=6]="EnumMembers",tt[tt.HeritageClauseElement=7]="HeritageClauseElement",tt[tt.VariableDeclarations=8]="VariableDeclarations",tt[tt.ObjectBindingElements=9]="ObjectBindingElements",tt[tt.ArrayBindingElements=10]="ArrayBindingElements",tt[tt.ArgumentExpressions=11]="ArgumentExpressions",tt[tt.ObjectLiteralMembers=12]="ObjectLiteralMembers",tt[tt.JsxAttributes=13]="JsxAttributes",tt[tt.JsxChildren=14]="JsxChildren",tt[tt.ArrayLiteralMembers=15]="ArrayLiteralMembers",tt[tt.Parameters=16]="Parameters",tt[tt.JSDocParameters=17]="JSDocParameters",tt[tt.RestProperties=18]="RestProperties",tt[tt.TypeParameters=19]="TypeParameters",tt[tt.TypeArguments=20]="TypeArguments",tt[tt.TupleElementTypes=21]="TupleElementTypes",tt[tt.HeritageClauses=22]="HeritageClauses",tt[tt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",tt[tt.ImportAttributes=24]="ImportAttributes",tt[tt.JSDocComment=25]="JSDocComment",tt[tt.Count=26]="Count"})(oY||(oY={}));let jR;(tt=>{tt[tt.False=0]="False",tt[tt.True=1]="True",tt[tt.Unknown=2]="Unknown"})(jR||(jR={}));let aY;(tt=>{function Jt(ho,sl,Nd){Ya("file.js",ho,99,void 0,1,0),t.setText(ho,sl,Nd),qr=t.scan();let ed=kr(),Og=zr("file.js",99,1,!1,[],X(1),0,RNe),Nh=Nme(lr,Og);return cr&&(Og.jsDocDiagnostics=Nme(cr,Og)),Gc(),ed?{jsDocTypeExpression:ed,diagnostics:Nh}:void 0}tt.parseJSDocTypeExpressionForTests=Jt;function kr(ho){let sl=Ri(),Nd=(ho?rc:ws)(19),ed=Qa(16777216,YS);(!ho||Nd)&&cm(20);let Og=C.createJSDocTypeExpression(ed);return Ft(Og),Zt(Og,sl)}tt.parseJSDocTypeExpression=kr;function Xr(){let ho=Ri(),sl=rc(19),Nd=Ri(),ed=se(!1);for(;Wt()===81;)$i(),Ju(),ed=Zt(C.createJSDocMemberName(ed,Wa()),Nd);sl&&cm(20);let Og=C.createJSDocNameReference(ed);return Ft(Og),Zt(Og,ho)}tt.parseJSDocNameReference=Xr;function ui(ho,sl,Nd){Ya("",ho,99,void 0,1,0);let ed=Qa(16777216,()=>ja(sl,Nd)),Og=Nme(lr,{languageVariant:0,text:ho});return Gc(),ed?{jsDoc:ed,diagnostics:Og}:void 0}tt.parseIsolatedJSDocComment=ui;function Is(ho,sl,Nd){let ed=qr,Og=lr.length,Nh=Vr,o1=Qa(16777216,()=>ja(sl,Nd));return $Nr(o1,ho),Hi&524288&&(cr||(cr=[]),_V(cr,lr,Og)),qr=ed,lr.length=Og,Vr=Nh,o1}tt.parseJSDocComment=Is;let Hs;(ho=>{ho[ho.BeginningOfLine=0]="BeginningOfLine",ho[ho.SawAsterisk=1]="SawAsterisk",ho[ho.SavingComments=2]="SavingComments",ho[ho.SavingBackticks=3]="SavingBackticks"})(Hs||(Hs={}));let Rs;(ho=>{ho[ho.Property=1]="Property",ho[ho.Parameter=2]="Parameter",ho[ho.CallbackParameter=4]="CallbackParameter"})(Rs||(Rs={}));function ja(ho=0,sl){let Nd=xt,ed=sl===void 0?Nd.length:ho+sl;if(sl=ed-ho,Zo.assert(ho>=0),Zo.assert(ho<=ed),Zo.assert(ed<=Nd.length),!qec(Nd,ho))return;let Og,Nh,o1,Tb,q2,IE=[],zR=[],e3=Fn;Fn|=1<<25;let IA=t.scanRange(ho+3,sl-5,EI);return Fn=e3,IA;function EI(){let Es=1,Aa,ha=ho-(Nd.lastIndexOf(` +`;function Yn(Ko,Eg){Ru[Ko]+=Eg}}function Qh(Wt){switch(Wt){case 3:return"\u2502";case 12:return"\u2500";case 5:return"\u256F";case 9:return"\u2570";case 6:return"\u256E";case 10:return"\u256D";case 7:return"\u2524";case 11:return"\u251C";case 13:return"\u2534";case 14:return"\u252C";case 15:return"\u256B"}return" "}function Ri(Wt,Hu){if(Wt.fill)Wt.fill(Hu);else for(let Ru=0;Ru0?Wt.repeat(Hu):"";let Ru="";for(;Ru.length{},Q7a=()=>{},Lbt,Tp=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.SourceFile=307]="SourceFile",e[e.Bundle=308]="Bundle",e[e.JSDocTypeExpression=309]="JSDocTypeExpression",e[e.JSDocNameReference=310]="JSDocNameReference",e[e.JSDocMemberName=311]="JSDocMemberName",e[e.JSDocAllType=312]="JSDocAllType",e[e.JSDocUnknownType=313]="JSDocUnknownType",e[e.JSDocNullableType=314]="JSDocNullableType",e[e.JSDocNonNullableType=315]="JSDocNonNullableType",e[e.JSDocOptionalType=316]="JSDocOptionalType",e[e.JSDocFunctionType=317]="JSDocFunctionType",e[e.JSDocVariadicType=318]="JSDocVariadicType",e[e.JSDocNamepathType=319]="JSDocNamepathType",e[e.JSDoc=320]="JSDoc",e[e.JSDocComment=320]="JSDocComment",e[e.JSDocText=321]="JSDocText",e[e.JSDocTypeLiteral=322]="JSDocTypeLiteral",e[e.JSDocSignature=323]="JSDocSignature",e[e.JSDocLink=324]="JSDocLink",e[e.JSDocLinkCode=325]="JSDocLinkCode",e[e.JSDocLinkPlain=326]="JSDocLinkPlain",e[e.JSDocTag=327]="JSDocTag",e[e.JSDocAugmentsTag=328]="JSDocAugmentsTag",e[e.JSDocImplementsTag=329]="JSDocImplementsTag",e[e.JSDocAuthorTag=330]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",e[e.JSDocClassTag=332]="JSDocClassTag",e[e.JSDocPublicTag=333]="JSDocPublicTag",e[e.JSDocPrivateTag=334]="JSDocPrivateTag",e[e.JSDocProtectedTag=335]="JSDocProtectedTag",e[e.JSDocReadonlyTag=336]="JSDocReadonlyTag",e[e.JSDocOverrideTag=337]="JSDocOverrideTag",e[e.JSDocCallbackTag=338]="JSDocCallbackTag",e[e.JSDocOverloadTag=339]="JSDocOverloadTag",e[e.JSDocEnumTag=340]="JSDocEnumTag",e[e.JSDocParameterTag=341]="JSDocParameterTag",e[e.JSDocReturnTag=342]="JSDocReturnTag",e[e.JSDocThisTag=343]="JSDocThisTag",e[e.JSDocTypeTag=344]="JSDocTypeTag",e[e.JSDocTemplateTag=345]="JSDocTemplateTag",e[e.JSDocTypedefTag=346]="JSDocTypedefTag",e[e.JSDocSeeTag=347]="JSDocSeeTag",e[e.JSDocPropertyTag=348]="JSDocPropertyTag",e[e.JSDocThrowsTag=349]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",e[e.JSDocImportTag=351]="JSDocImportTag",e[e.SyntaxList=352]="SyntaxList",e[e.NotEmittedStatement=353]="NotEmittedStatement",e[e.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=309]="FirstJSDocNode",e[e.LastJSDocNode=351]="LastJSDocNode",e[e.FirstJSDocTagNode=327]="FirstJSDocTagNode",e[e.LastJSDocTagNode=351]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(Tp||{}),IO=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(IO||{}),dvi=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(dvi||{}),pvi=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))(pvi||{}),ANr=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(ANr||{}),fvi=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=-1]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(fvi||{}),Ivi=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e[e.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(Ivi||{}),kG=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.Reserved1=536870912]="Reserved1",e[e.Reserved2=1073741824]="Reserved2",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.Primitive=402784252]="Primitive",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=473694207]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.IncludesError=1073741824]="IncludesError",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(kG||{}),hvi=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.SingleSignatureType=134217728]="SingleSignatureType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(hvi||{}),mvi=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(mvi||{}),wee=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(wee||{}),PNr=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ES2023=10]="ES2023",e[e.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(PNr||{}),Cvi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(Cvi||{}),tH=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(tH||{}),_vi=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(_vi||{}),yvi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(yvi||{}),bvi=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(bvi||{}),rJe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},Evi={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},gJe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(gJe||{}),Yme="/",X7a="\\",Q2i="://",J7a=/\\/g;function U7a(e){return e===47||e===92}function K7a(e,t){return e.length>t.length&&O7a(e,t)}function WNr(e){return e.length>0&&U7a(e.charCodeAt(e.length-1))}function X2i(e){return e>=97&&e<=122||e>=65&&e<=90}function j7a(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let n=e.charCodeAt(t+2);if(n===97||n===65)return t+3}return-1}function z7a(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let n=e.indexOf(t===47?Yme:X7a,2);return n<0?e.length:n+1}if(X2i(t)&&e.charCodeAt(1)===58){let n=e.charCodeAt(2);if(n===47||n===92)return 3;if(e.length===2)return 2}let r=e.indexOf(Q2i);if(r!==-1){let n=r+Q2i.length,a=e.indexOf(Yme,n);if(a!==-1){let o=e.slice(0,r),l=e.slice(n,a);if(o==="file"&&(l===""||l==="localhost")&&X2i(e.charCodeAt(a+1))){let A=j7a(e,a+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(a+1)}return~e.length}return 0}function Ybt(e){let t=z7a(e);return t<0?~t:t}function Svi(e,t,r){if(e=Qbt(e),Ybt(e)===e.length)return"";e=Bvi(e);let n=e.slice(Math.max(Ybt(e),e.lastIndexOf(Yme)+1)),a=t!==void 0&&r!==void 0?vvi(n,t,r):void 0;return a?n.slice(0,n.length-a.length):n}function J2i(e,t,r){if(Hbt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let n=e.slice(e.length-t.length);if(r(n,t))return n}}function q7a(e,t,r){if(typeof t=="string")return J2i(e,t,r)||"";for(let n of t){let a=J2i(e,n,r);if(a)return a}return""}function vvi(e,t,r){if(t)return q7a(Bvi(e),t,r?VNr:L7a);let n=Svi(e),a=n.lastIndexOf(".");return a>=0?n.substring(a):""}function $7a(e,t){let r=e.substring(0,t),n=e.substring(t).split(Yme);return n.length&&!Pme(n)&&n.pop(),[r,...n]}function eza(e,t=""){return e=nza(t,e),$7a(e,Ybt(e))}function tza(e,t){return e.length===0?"":(e[0]&&ONr(e[0]))+e.slice(1,t).join(Yme)}function Qbt(e){return e.includes("\\")?e.replace(J7a,Yme):e}function rza(e){if(!oD(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(n)}}return t}function nza(e,...t){e&&(e=Qbt(e));for(let r of t)r&&(r=Qbt(r),!e||Ybt(r)!==0?e=r:e=ONr(e)+r);return e}function iza(e){if(e=Qbt(e),!U2i.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!U2i.test(e)))return e;let r=tza(rza(eza(e)));return r&&WNr(e)?ONr(r):r}function Bvi(e){return WNr(e)?e.substr(0,e.length-1):e}function ONr(e){return WNr(e)?e:e+Yme}var U2i=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function $(e,t,r,n,a,o,l){return{code:e,category:t,key:r,message:n,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:l}}var ts={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:$(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:$(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:$(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:$(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:$(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:$(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:$(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:$(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:$(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:$(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:$(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:$(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:$(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:$(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:$(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:$(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:$(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:$(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:$(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:$(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:$(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:$(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:$(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:$(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:$(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:$(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:$(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:$(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:$(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:$(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:$(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:$(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:$(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:$(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:$(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:$(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:$(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:$(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:$(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:$(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:$(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:$(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:$(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:$(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:$(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:$(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:$(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:$(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:$(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:$(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:$(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:$(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:$(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:$(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:$(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:$(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:$(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:$(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:$(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:$(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:$(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:$(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:$(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:$(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:$(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:$(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:$(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:$(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:$(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:$(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:$(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:$(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:$(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:$(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:$(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:$(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:$(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:$(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:$(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:$(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:$(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:$(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:$(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:$(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:$(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:$(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:$(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:$(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:$(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:$(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:$(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:$(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:$(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:$(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:$(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:$(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:$(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:$(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:$(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:$(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:$(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:$(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:$(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:$(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:$(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:$(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:$(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:$(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:$(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:$(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:$(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:$(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:$(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:$(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:$(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:$(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:$(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:$(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:$(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:$(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:$(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:$(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:$(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:$(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:$(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:$(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:$(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:$(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:$(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:$(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:$(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:$(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:$(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:$(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:$(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:$(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:$(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:$(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:$(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:$(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:$(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:$(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:$(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:$(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:$(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:$(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:$(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:$(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:$(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:$(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:$(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:$(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:$(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodenext_or_preserve:$(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:$(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:$(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:$(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:$(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:$(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:$(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:$(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:$(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:$(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:$(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:$(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:$(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:$(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:$(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:$(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:$(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:$(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:$(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:$(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:$(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:$(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:$(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:$(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:$(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:$(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:$(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:$(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:$(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:$(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:$(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:$(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:$(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:$(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:$(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:$(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:$(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:$(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:$(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:$(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:$(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:$(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:$(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:$(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:$(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:$(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:$(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:$(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:$(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:$(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:$(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:$(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:$(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:$(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:$(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:$(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:$(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:$(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:$(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:$(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:$(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:$(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:$(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:$(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:$(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:$(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:$(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:$(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:$(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:$(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:$(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:$(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:$(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:$(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:$(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:$(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:$(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:$(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:$(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:$(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:$(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:$(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:$(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:$(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:$(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:$(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:$(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:$(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:$(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:$(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:$(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:$(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:$(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:$(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:$(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:$(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:$(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:$(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:$(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:$(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:$(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:$(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:$(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:$(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:$(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:$(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:$(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:$(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:$(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:$(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:$(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:$(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:$(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:$(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:$(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:$(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:$(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:$(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:$(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:$(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:$(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:$(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:$(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:$(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:$(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:$(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:$(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:$(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:$(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:$(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:$(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:$(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:$(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:$(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:$(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:$(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:$(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:$(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:$(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:$(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:$(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:$(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:$(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:$(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:$(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:$(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:$(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:$(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:$(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:$(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:$(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:$(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:$(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:$(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:$(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:$(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:$(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:$(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:$(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:$(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:$(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:$(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:$(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Untyped_function_calls_may_not_accept_type_arguments:$(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:$(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:$(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:$(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:$(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:$(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:$(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:$(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:$(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:$(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:$(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:$(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:$(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:$(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:$(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:$(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:$(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:$(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:$(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:$(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:$(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:$(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:$(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:$(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:$(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:$(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:$(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:$(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:$(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:$(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:$(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:$(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:$(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:$(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:$(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:$(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:$(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:$(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:$(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:$(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:$(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:$(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:$(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:$(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:$(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:$(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:$(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:$(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:$(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:$(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:$(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:$(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:$(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:$(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:$(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:$(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:$(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:$(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:$(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:$(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:$(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:$(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:$(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:$(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:$(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:$(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:$(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:$(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:$(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:$(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:$(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:$(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:$(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:$(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:$(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:$(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:$(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:$(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:$(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:$(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:$(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:$(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:$(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:$(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:$(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:$(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:$(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:$(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:$(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:$(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:$(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:$(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:$(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:$(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:$(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:$(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:$(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:$(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:$(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:$(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:$(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:$(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:$(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:$(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:$(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:$(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:$(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:$(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:$(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:$(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:$(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:$(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:$(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:$(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:$(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:$(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:$(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:$(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:$(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:$(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:$(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:$(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:$(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:$(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:$(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:$(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:$(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:$(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:$(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:$(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:$(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:$(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:$(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:$(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:$(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:$(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:$(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:$(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:$(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:$(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:$(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:$(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:$(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:$(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:$(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:$(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:$(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:$(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:$(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:$(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:$(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:$(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:$(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:$(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:$(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:$(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:$(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:$(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:$(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:$(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:$(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:$(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:$(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:$(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:$(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:$(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:$(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:$(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:$(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:$(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:$(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:$(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:$(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:$(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:$(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:$(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:$(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:$(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:$(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:$(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:$(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:$(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:$(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:$(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:$(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:$(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:$(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:$(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:$(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:$(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:$(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:$(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:$(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:$(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:$(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:$(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:$(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:$(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:$(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:$(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:$(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:$(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:$(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:$(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:$(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:$(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:$(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:$(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:$(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:$(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:$(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:$(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:$(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:$(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:$(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:$(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:$(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:$(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:$(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:$(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:$(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:$(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:$(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:$(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:$(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:$(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:$(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:$(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:$(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:$(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:$(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:$(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:$(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:$(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:$(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:$(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:$(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:$(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:$(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:$(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:$(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:$(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:$(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:$(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:$(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:$(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:$(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:$(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:$(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:$(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:$(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:$(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:$(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:$(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:$(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:$(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:$(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:$(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:$(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:$(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:$(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:$(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:$(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:$(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:$(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:$(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:$(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:$(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:$(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:$(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:$(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:$(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:$(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:$(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:$(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:$(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:$(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:$(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:$(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:$(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:$(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:$(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:$(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:$(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:$(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:$(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:$(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:$(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:$(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:$(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:$(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:$(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:$(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:$(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:$(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:$(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:$(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:$(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:$(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:$(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:$(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:$(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:$(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:$(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:$(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:$(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:$(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:$(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:$(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:$(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:$(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:$(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:$(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:$(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:$(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:$(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:$(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:$(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:$(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:$(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:$(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:$(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:$(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:$(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:$(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:$(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:$(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:$(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:$(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:$(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:$(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:$(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:$(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:$(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:$(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:$(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:$(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:$(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:$(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:$(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:$(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:$(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:$(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:$(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:$(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:$(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:$(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:$(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:$(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:$(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:$(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:$(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:$(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:$(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:$(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:$(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:$(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:$(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:$(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:$(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:$(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:$(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:$(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:$(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:$(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:$(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:$(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:$(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:$(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:$(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:$(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:$(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:$(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:$(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:$(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:$(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:$(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:$(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:$(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:$(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:$(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:$(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:$(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:$(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:$(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:$(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:$(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:$(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:$(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:$(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:$(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:$(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:$(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:$(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:$(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:$(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:$(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:$(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:$(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:$(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:$(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:$(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:$(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:$(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:$(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:$(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:$(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:$(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:$(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:$(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:$(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:$(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:$(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:$(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:$(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:$(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:$(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:$(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:$(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:$(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:$(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:$(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:$(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:$(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:$(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:$(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:$(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:$(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:$(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:$(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:$(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:$(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:$(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:$(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:$(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:$(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:$(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:$(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:$(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:$(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected:$(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:$(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:$(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:$(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:$(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:$(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:$(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:$(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:$(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:$(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:$(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:$(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:$(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:$(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:$(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:$(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:$(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:$(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:$(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:$(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:$(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:$(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:$(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:$(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:$(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:$(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:$(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:$(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:$(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:$(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:$(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:$(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:$(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:$(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:$(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:$(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:$(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:$(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:$(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:$(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:$(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:$(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:$(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:$(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:$(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:$(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:$(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:$(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:$(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:$(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:$(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:$(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:$(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:$(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:$(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:$(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:$(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:$(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:$(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:$(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:$(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:$(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:$(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:$(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:$(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:$(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:$(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:$(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:$(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:$(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:$(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:$(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:$(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:$(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:$(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:$(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:$(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:$(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:$(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:$(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:$(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:$(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:$(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:$(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:$(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:$(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:$(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:$(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:$(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:$(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:$(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:$(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:$(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:$(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:$(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:$(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:$(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:$(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:$(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:$(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:$(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:$(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:$(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:$(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:$(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:$(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:$(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:$(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:$(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:$(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:$(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:$(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:$(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:$(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:$(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:$(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:$(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:$(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:$(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:$(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:$(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:$(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:$(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:$(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:$(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:$(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:$(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:$(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:$(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:$(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:$(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:$(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:$(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:$(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:$(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:$(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:$(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:$(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:$(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:$(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:$(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:$(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:$(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:$(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:$(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:$(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:$(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:$(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:$(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:$(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:$(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:$(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:$(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:$(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:$(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:$(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:$(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:$(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:$(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:$(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:$(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:$(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:$(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:$(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:$(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:$(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:$(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:$(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:$(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:$(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:$(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:$(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:$(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:$(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:$(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:$(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:$(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:$(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:$(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:$(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:$(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:$(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:$(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:$(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:$(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:$(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:$(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:$(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:$(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:$(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:$(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:$(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:$(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:$(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:$(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:$(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:$(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:$(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:$(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:$(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:$(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:$(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:$(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:$(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:$(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:$(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:$(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:$(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:$(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:$(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:$(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:$(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:$(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:$(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:$(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:$(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:$(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:$(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:$(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:$(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:$(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:$(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:$(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:$(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:$(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:$(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:$(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:$(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:$(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:$(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:$(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:$(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:$(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:$(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:$(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:$(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:$(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:$(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:$(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:$(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:$(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:$(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:$(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:$(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:$(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:$(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:$(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:$(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:$(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:$(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:$(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:$(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:$(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:$(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:$(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:$(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:$(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:$(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:$(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:$(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:$(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:$(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:$(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:$(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:$(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:$(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:$(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:$(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:$(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:$(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:$(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:$(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:$(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:$(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:$(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:$(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:$(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:$(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:$(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:$(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:$(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:$(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:$(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:$(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:$(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:$(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:$(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:$(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:$(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:$(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:$(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:$(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Skip_building_downstream_projects_on_error_in_upstream_project:$(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:$(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:$(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:$(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:$(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:$(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:$(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:$(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:$(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:$(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:$(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:$(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:$(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:$(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:$(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:$(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:$(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:$(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:$(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:$(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:$(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:$(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:$(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:$(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:$(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:$(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:$(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:$(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:$(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:$(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:$(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:$(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:$(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:$(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:$(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:$(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:$(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:$(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:$(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:$(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:$(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:$(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:$(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:$(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:$(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:$(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:$(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:$(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:$(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:$(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:$(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:$(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:$(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:$(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:$(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:$(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:$(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:$(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:$(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:$(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:$(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:$(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:$(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:$(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:$(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:$(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:$(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:$(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:$(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:$(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:$(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:$(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:$(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:$(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:$(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:$(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:$(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:$(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:$(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:$(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:$(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:$(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:$(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:$(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:$(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:$(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:$(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:$(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:$(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:$(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:$(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:$(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:$(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:$(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:$(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:$(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation:$(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:$(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:$(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:$(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:$(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:$(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:$(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:$(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:$(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:$(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:$(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:$(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:$(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:$(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:$(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:$(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:$(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:$(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:$(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:$(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:$(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:$(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:$(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:$(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:$(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:$(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:$(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:$(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:$(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:$(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:$(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:$(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:$(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:$(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:$(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:$(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:$(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:$(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:$(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:$(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:$(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:$(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:$(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:$(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:$(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:$(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:$(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:$(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:$(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:$(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:$(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:$(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:$(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:$(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:$(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:$(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:$(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:$(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:$(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:$(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:$(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:$(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:$(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:$(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:$(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:$(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:$(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:$(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:$(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:$(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:$(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:$(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:$(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:$(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:$(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:$(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:$(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:$(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:$(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:$(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:$(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:$(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:$(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:$(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:$(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:$(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:$(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:$(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:$(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:$(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:$(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:$(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:$(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:$(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:$(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:$(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:$(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:$(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:$(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:$(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:$(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:$(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:$(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:$(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:$(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:$(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:$(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:$(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:$(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:$(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:$(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:$(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:$(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:$(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:$(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:$(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:$(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:$(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:$(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:$(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:$(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:$(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:$(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:$(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:$(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:$(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:$(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:$(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:$(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:$(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:$(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:$(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:$(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:$(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:$(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:$(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:$(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:$(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:$(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:$(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:$(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:$(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:$(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:$(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:$(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:$(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:$(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:$(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:$(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:$(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:$(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:$(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:$(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:$(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:$(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:$(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:$(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:$(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:$(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:$(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:$(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:$(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:$(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:$(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:$(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:$(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:$(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:$(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:$(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:$(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:$(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:$(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:$(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:$(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:$(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:$(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:$(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:$(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function H1(e){return e>=80}function sza(e){return e===32||H1(e)}var MNr={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},oza=new Map(Object.entries(MNr)),wvi=new Map(Object.entries({...MNr,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),Tvi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),aza=new Map([[1,rJe.RegularExpressionFlagsHasIndices],[16,rJe.RegularExpressionFlagsDotAll],[32,rJe.RegularExpressionFlagsUnicode],[64,rJe.RegularExpressionFlagsUnicodeSets],[128,rJe.RegularExpressionFlagsSticky]]),cza=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],lza=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],uza=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],gza=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],Aza=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,dza=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,pza=/@(?:see|link)/i;function Xbt(e,t){if(e=2?Xbt(e,uza):Xbt(e,cza)}function Iza(e,t){return t>=2?Xbt(e,gza):Xbt(e,lza)}function Rvi(e){let t=[];return e.forEach((r,n)=>{t[r]=n}),t}var hza=Rvi(wvi);function by(e){return hza[e]}function Nvi(e){return wvi.get(e)}var ORu=Rvi(Tvi);function K2i(e){return Tvi.get(e)}function Dvi(e){let t=[],r=0,n=0;for(;r127&&CV(a)&&(t.push(n),n=r);break}}return t.push(n),t}function mza(e,t,r,n,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:Zo.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${n!==void 0?b7a(e,Dvi(n)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof n=="string"&&o>n.length?n.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function CV(e){return e===10||e===13||e===8232||e===8233}function Cce(e){return e>=48&&e<=57}function zRr(e){return Cce(e)||e>=65&&e<=70||e>=97&&e<=102}function HNr(e){return e>=65&&e<=90||e>=97&&e<=122}function xvi(e){return HNr(e)||Cce(e)||e===95}function qRr(e){return e>=48&&e<=55}function dj(e,t,r,n,a){if(EJe(t))return t;let o=!1;for(;;){let l=e.charCodeAt(t);switch(l){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(n)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&wNe(l)){t++;continue}break}return t}}var Vbt=7;function Fme(e,t){if(Zo.assert(t>=0),t===0||CV(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+Vbt=0&&r127&&wNe(B)){b&&CV(B)&&(C=!0),r++;continue}break e}}return b&&(N=a(A,f,I,C,o,N)),N}function yza(e,t,r,n){return tEt(!1,e,t,!1,r,n)}function bza(e,t,r,n){return tEt(!1,e,t,!0,r,n)}function Eza(e,t,r,n,a){return tEt(!0,e,t,!1,r,n,a)}function Sza(e,t,r,n,a){return tEt(!0,e,t,!0,r,n,a)}function Zvi(e,t,r,n,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),o}function pNr(e,t){return Eza(e,t,Zvi,void 0,void 0)}function vza(e,t){return Sza(e,t,Zvi,void 0,void 0)}function Lvi(e){let t=YNr.exec(e);if(t)return t[0]}function i4(e,t){return HNr(e)||e===36||e===95||e>127&&fza(e,t)}function vee(e,t,r){return xvi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&Iza(e,t)}function Bza(e,t,r){let n=Zme(e,0);if(!i4(n,t))return!1;for(let a=xR(n);aC,getStartPos:()=>C,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>E,getTokenStart:()=>b,getTokenPos:()=>b,getTokenText:()=>A.substring(b,f),getTokenValue:()=>N,hasUnicodeEscape:()=>(B&1024)!==0,hasExtendedUnicodeEscape:()=>(B&8)!==0,hasPrecedingLineBreak:()=>(B&1)!==0,hasPrecedingJSDocComment:()=>(B&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(B&32768)!==0,isIdentifier:()=>E===80||E>118,isReservedWord:()=>E>=83&&E<=118,isUnterminated:()=>(B&4)!==0,getCommentDirectives:()=>F,getNumericLiteralFlags:()=>B&25584,getTokenFlags:()=>B,reScanGreaterToken:qr,reScanAsteriskEqualsToken:_n,reScanSlashToken:ke,reScanTemplateToken:po,reScanTemplateHeadOrNoSubstitutionTemplate:Vr,scanJsxIdentifier:cl,scanJsxAttributeValue:Sc,reScanJsxAttributeValue:Hr,reScanJsxToken:xi,reScanLessThanToken:io,reScanHashToken:ga,reScanQuestionToken:Ya,reScanInvalidIdentifier:cr,scanJsxToken:Gc,scanJsDocToken:Ft,scanJSDocCommentTextToken:Wr,scan:Xt,getText:ps,clearCommentDirectives:yo,setText:bo,setScriptTarget:gc,setLanguageVariant:Cg,setScriptKind:Nc,setJSDocParsingMode:iA,setOnError:Qa,resetTokenState:ma,setTextPos:ma,setSkipJsDocLeadingAsterisks:vu,tryScan:Qi,lookAhead:Or,scanRange:Rn};return Zo.isDebugging&&Object.defineProperty(ne,"__debugShowCurrentPositionInText",{get:()=>{let li=ne.getText();return li.slice(0,ne.getTokenFullStart())+"\u2551"+li.slice(ne.getTokenFullStart())}}),ne;function ce(li){return Zme(A,li)}function fe(li){return li>=0&&li=0&&li=65&&Wc<=70)Wc+=32;else if(!(Wc>=48&&Wc<=57||Wc>=97&&Wc<=102))break;Xa.push(Wc),f++,Yl=!1}return Xa.length=I){Ps+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}let ac=ue(f);if(ac===Ei){Ps+=A.substring(Xa,f),f++;break}if(ac===92&&!li){Ps+=A.substring(Xa,f),Ps+=Yt(3),Xa=f;continue}if((ac===10||ac===13)&&!li){Ps+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}f++}return Ps}function At(li){let Ei=ue(f)===96;f++;let Ps=f,Xa="",ac;for(;;){if(f>=I){Xa+=A.substring(Ps,f),B|=4,be(ts.Unterminated_template_literal),ac=Ei?15:18;break}let Yl=ue(f);if(Yl===96){Xa+=A.substring(Ps,f),f++,ac=Ei?15:18;break}if(Yl===36&&f+1=I)return be(ts.Unexpected_end_of_text),"";let Ps=ue(f);switch(f++,Ps){case 48:if(f>=I||!Cce(ue(f)))return"\0";case 49:case 50:case 51:f=55296&&Xa<=56319&&f+6=56320&&Sg<=57343)return f=Wc,ac+String.fromCharCode(Sg)}return ac;case 120:for(;f1114111&&(li&&be(ts.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Ps,f-Ps),Yl=!0),f>=I?(li&&be(ts.Unexpected_end_of_text),Yl=!0):ue(f)===125?f++:(li&&be(ts.Unterminated_Unicode_escape_sequence),Yl=!0),Yl?(B|=2048,A.substring(Ei,f)):(B|=8,j2i(ac))}function Nr(){if(f+5=0&&vee(Ps,e)){li+=Tr(!0),Ei=f;continue}if(Ps=Nr(),!(Ps>=0&&vee(Ps,e)))break;B|=1024,li+=A.substring(Ei,f),li+=j2i(Ps),f+=6,Ei=f}else break}return li+=A.substring(Ei,f),li}function xt(){let li=N.length;if(li>=2&&li<=12){let Ei=N.charCodeAt(0);if(Ei>=97&&Ei<=122){let Ps=oza.get(N);if(Ps!==void 0)return E=Ps}}return E=80}function Zr(li){let Ei="",Ps=!1,Xa=!1;for(;;){let ac=ue(f);if(ac===95){B|=512,Ps?(Ps=!1,Xa=!0):be(Xa?ts.Multiple_consecutive_numeric_separators_are_not_permitted:ts.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if(Ps=!0,!Cce(ac)||ac-48>=li)break;Ei+=A[f],f++,Xa=!1}return ue(f-1)===95&&be(ts.Numeric_separators_are_not_allowed_here,f-1,1),Ei}function qt(){return ue(f)===110?(N+="n",B&384&&(N=M$a(N)+"n"),f++,10):(N=""+(B&128?parseInt(N.slice(2),2):B&256?parseInt(N.slice(2),8):+N),9)}function Xt(){for(C=f,B=0;;){if(b=f,f>=I)return E=1;let li=ce(f);if(f===0&&li===35&&Gvi(A,f)){if(f=Fvi(A,f),t)continue;return E=6}switch(li){case 10:case 13:if(B|=1,t){f++;continue}else return li===13&&f+1=0&&i4(Ei,e))return N=Tr(!0)+vt(),E=xt();let Ps=Nr();return Ps>=0&&i4(Ps,e)?(f+=6,B|=1024,N=String.fromCharCode(Ps)+vt(),E=xt()):(be(ts.Invalid_character),f++,E=0);case 35:if(f!==0&&A[f+1]==="!")return be(ts.can_only_be_used_at_the_start_of_a_file,f,2),f++,E=0;let Xa=ce(f+1);if(Xa===92){f++;let Wc=er();if(Wc>=0&&i4(Wc,e))return N="#"+Tr(!0)+vt(),E=81;let Sg=Nr();if(Sg>=0&&i4(Sg,e))return f+=6,B|=1024,N="#"+String.fromCharCode(Sg)+vt(),E=81;f--}return i4(Xa,e)?(f++,Ar(Xa,e)):(N="#",be(ts.Invalid_character,f++,xR(li))),E=81;case 65533:return be(ts.File_appears_to_be_binary,0,0),f=I,E=8;default:let ac=Ar(li,e);if(ac)return E=ac;if(AJe(li)){f+=xR(li);continue}else if(CV(li)){B|=1,f+=xR(li);continue}let Yl=xR(li);return be(ts.Invalid_character,f,Yl),f+=Yl,E=0}}}function lr(){switch(ae){case 0:return!0;case 1:return!1}return X!==3&&X!==4?!0:ae===3?!1:pza.test(A.slice(C,f))}function cr(){Zo.assert(E===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=b=C,B=0;let li=ce(f),Ei=Ar(li,99);return Ei?E=Ei:(f+=xR(li),E)}function Ar(li,Ei){let Ps=li;if(i4(Ps,Ei)){for(f+=xR(Ps);f=I)return E=1;let Ei=ue(f);if(Ei===60)return ue(f+1)===47?(f+=2,E=31):(f++,E=30);if(Ei===123)return f++,E=19;let Ps=0;for(;f0)break;wNe(Ei)||(Ps=f)}f++}return N=A.substring(C,f),Ps===-1?13:12}function cl(){if(H1(E)){for(;f=I)return E=1;for(let Ei=ue(f);f=0&&AJe(ue(f-1))&&!(f+1=I)return E=1;let li=ce(f);switch(f+=xR(li),li){case 9:case 11:case 12:case 32:for(;f=0&&i4(Ei,e))return N=Tr(!0)+vt(),E=xt();let Ps=Nr();return Ps>=0&&i4(Ps,e)?(f+=6,B|=1024,N=String.fromCharCode(Ps)+vt(),E=xt()):(f++,E=0)}if(i4(li,e)){let Ei=li;for(;f=0),f=li,C=li,b=li,E=0,N=void 0,B=0}function vu(li){Q+=li?1:-1}}function Zme(e,t){return e.codePointAt(t)}function xR(e){return e>=65536?2:e===-1?0:1}function wza(e){if(Zo.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}var Tza=String.fromCodePoint?e=>String.fromCodePoint(e):wza;function j2i(e){return Tza(e)}var z2i=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),q2i=new Set(["ASCII","ASCII_Hex_Digit","AHex","Alphabetic","Alpha","Any","Assigned","Bidi_Control","Bidi_C","Bidi_Mirrored","Bidi_M","Case_Ignorable","CI","Cased","Changes_When_Casefolded","CWCF","Changes_When_Casemapped","CWCM","Changes_When_Lowercased","CWL","Changes_When_NFKC_Casefolded","CWKCF","Changes_When_Titlecased","CWT","Changes_When_Uppercased","CWU","Dash","Default_Ignorable_Code_Point","DI","Deprecated","Dep","Diacritic","Dia","Emoji","Emoji_Component","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","Extender","Ext","Grapheme_Base","Gr_Base","Grapheme_Extend","Gr_Ext","Hex_Digit","Hex","IDS_Binary_Operator","IDSB","IDS_Trinary_Operator","IDST","ID_Continue","IDC","ID_Start","IDS","Ideographic","Ideo","Join_Control","Join_C","Logical_Order_Exception","LOE","Lowercase","Lower","Math","Noncharacter_Code_Point","NChar","Pattern_Syntax","Pat_Syn","Pattern_White_Space","Pat_WS","Quotation_Mark","QMark","Radical","Regional_Indicator","RI","Sentence_Terminal","STerm","Soft_Dotted","SD","Terminal_Punctuation","Term","Unified_Ideograph","UIdeo","Uppercase","Upper","Variation_Selector","VS","White_Space","space","XID_Continue","XIDC","XID_Start","XIDS"]),$2i=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),vNe={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};vNe.Script_Extensions=vNe.Script;function gj(e){return e.start+e.length}function Rza(e){return e.length===0}function XNr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function Nza(e,t){return XNr(e,t-e)}function nJe(e){return XNr(e.span.start,e.newLength)}function Dza(e){return Rza(e.span)&&e.newLength===0}function Vvi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var MRu=Vvi(XNr(0,0),0);function Pvi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function Jbt(e){return(e.flags&16)===0}function kza(e,t){if(e===void 0||Jbt(e))return e;for(e=e.original;e;){if(Jbt(e))return!t||t(e)?e:void 0;e=e.original}}function CNe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function CJe(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function yV(e){return CJe(e.escapedText)}function Wvi(e){let t=Nvi(e.escapedText);return t?F7a(t,_ce):void 0}function fNr(e){return e.valueDeclaration&&nqa(e.valueDeclaration)?yV(e.valueDeclaration.name):CJe(e.escapedName)}function Ovi(e){let t=e.parent.parent;if(t){if(rSi(t))return Nbt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return Nbt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let n=r.argumentExpression;if($C(n))return n}break;case 217:return Nbt(t.expression);case 256:{if(rSi(t.statement)||Iqa(t.statement))return Nbt(t.statement);break}}}}function Nbt(e){let t=Mvi(e);return t&&$C(t)?t:void 0}function xza(e){return e.name||Ovi(e)}function Gza(e){return!!e.name}function JNr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(qNr(r)){case 1:case 4:case 5:case 3:return $Nr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return xza(e);case 340:return Ovi(e);case 277:{let{expression:r}=e;return $C(r)?r:void 0}case 212:let t=e;if(iBi(t))return t.argumentExpression}return e.name}function Mvi(e){if(e!==void 0)return JNr(e)||(SBi(e)||vBi(e)||ENr(e)?Fza(e):void 0)}function Fza(e){if(e.parent){if(qec(e.parent)||Fec(e.parent))return e.parent.name;if(kNe(e.parent)&&e===e.parent.right){if($C(e.parent.left))return e.parent.left;if(uBi(e.parent.left))return $Nr(e.parent.left)}else if(wBi(e.parent)&&$C(e.parent.name))return e.parent.name}else return}function Zza(e){if(u$a(e))return Tee(e.modifiers,oDr)}function Lza(e){if(BJe(e,98303))return Tee(e.modifiers,oqa)}function Hvi(e,t){if(e.name)if($C(e.name)){let r=e.name.escapedText;return _Je(e.parent,t).filter(n=>mSi(n)&&$C(n.name)&&n.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Zo.assert(r>-1,"Parameters should always be in their parents' parameter list");let n=_Je(e.parent,t).filter(mSi);if(rdtc(n)&&n.typeParameters.some(a=>a.name.escapedText===r))}function Wza(e){return Yvi(e,!1)}function Oza(e){return Yvi(e,!0)}function Mza(e){return Bce(e,itc)}function Hza(e){return zza(e,ptc)}function Yza(e){return Bce(e,stc,!0)}function Qza(e){return Bce(e,otc,!0)}function Xza(e){return Bce(e,atc,!0)}function Jza(e){return Bce(e,ctc,!0)}function Uza(e){return Bce(e,ltc,!0)}function Kza(e){return Bce(e,gtc,!0)}function jza(e){let t=Bce(e,lDr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function _Je(e,t){var r;if(!eDr(e))return x2;let n=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(n===void 0||t){let a=Uqa(e,t);Zo.assert(a.length<2||a[0]!==a[1]),n=uvi(a,o=>ZBi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=n)}return n}function Qvi(e){return _Je(e,!1)}function Bce(e,t,r){return cvi(_Je(e,r),t)}function zza(e,t){return Qvi(e).filter(t)}function INr(e){return e.kind===80||e.kind===81}function qza(e){return wce(e)&&!!(e.flags&64)}function $za(e){return wJe(e)&&!!(e.flags&64)}function eSi(e){return EBi(e)&&!!(e.flags&64)}function UNr(e){return uDr(e,8)}function eqa(e){return Wbt(e)&&!!(e.flags&64)}function KNr(e){return e>=166}function Xvi(e){return e>=0&&e<=165}function tqa(e){return Xvi(e.kind)}function yce(e){return fj(e,"pos")&&fj(e,"end")}function rqa(e){return 9<=e&&e<=15}function tSi(e){return 15<=e&&e<=18}function BNe(e){var t;return $C(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Jvi(e){var t;return Qme(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function nqa(e){return(zbt(e)||lqa(e))&&Qme(e.name)}function Bee(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function iqa(e){return!!(cBi(e)&31)}function sqa(e){return iqa(e)||e===126||e===164||e===129}function oqa(e){return Bee(e.kind)}function Uvi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function Kvi(e){return!!e&&cqa(e.kind)}function aqa(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function cqa(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return aqa(e)}}function TNe(e){return e&&(e.kind===263||e.kind===231)}function lqa(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function uqa(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function gqa(e){return y$a(e.kind)}function Aqa(e){if(e){let t=e.kind;return t===207||t===206}return!1}function dqa(e){let t=e.kind;return t===209||t===210}function pqa(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function RNe(e){return jvi(UNr(e).kind)}function jvi(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function fqa(e){return zvi(UNr(e).kind)}function zvi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return jvi(e)}}function Iqa(e){return hqa(UNr(e).kind)}function hqa(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return zvi(e)}}function mqa(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function qvi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function $vi(e){return e===252||e===251||e===259||e===246||e===244||e===242||e===249||e===250||e===248||e===245||e===256||e===253||e===255||e===257||e===258||e===243||e===247||e===254||e===353}function rSi(e){return e.kind===168?e.parent&&e.parent.kind!==345||Xme(e):mqa(e.kind)}function Cqa(e){let t=e.kind;return $vi(t)||qvi(t)||_qa(e)}function _qa(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!Fqa(e)}function yqa(e){let t=e.kind;return $vi(t)||qvi(t)||t===241}function eBi(e){return e.kind>=309&&e.kind<=351}function bqa(e){return e.kind===320||e.kind===319||e.kind===321||vqa(e)||Eqa(e)||ntc(e)||LBi(e)}function Eqa(e){return e.kind>=327&&e.kind<=351}function Dbt(e){return e.kind===178}function kbt(e){return e.kind===177}function Wme(e){if(!eDr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function Sqa(e){return!!e.initializer}function jNr(e){return e.kind===11||e.kind===15}function vqa(e){return e.kind===324||e.kind===325||e.kind===326}function nSi(e){return(e.flags&33554432)!==0}var HRu=Bqa();function Bqa(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,n)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&wNe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:DNe,decreaseIndent:DNe,clear:()=>e=""}}function wqa(e,t){let r=e.entries();for(let[n,a]of r){let o=t(a,n);if(o)return o}}function Tqa(e){return e.end-e.pos}function tBi(e){return Rqa(e),(e.flags&1048576)!==0}function Rqa(e){e.flags&2097152||((e.flags&262144||Ok(e,tBi))&&(e.flags|=1048576),e.flags|=2097152)}function Ece(e){for(;e&&e.kind!==307;)e=e.parent;return e}function Ome(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function hNr(e){return!Ome(e)}function Ubt(e,t,r){if(Ome(e))return e.pos;if(eBi(e)||e.kind===12)return dj((t??Ece(e)).text,e.pos,!1,!0);if(r&&Wme(e))return Ubt(e.jsDoc[0],t);if(e.kind===352){t??(t=Ece(e));let n=ZNr(VBi(e,t));if(n)return Ubt(n,t,r)}return dj((t??Ece(e)).text,e.pos,!1,!1,Zqa(e))}function iSi(e,t,r=!1){return dJe(e.text,t,r)}function Nqa(e){return!!Pvi(e,etc)}function dJe(e,t,r=!1){if(Ome(t))return"";let n=e.substring(r?t.pos:dj(e,t.pos),t.end);return Nqa(t)&&(n=n.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` +`)),n}function NNe(e){let t=e.emitNode;return t&&t.flags||0}function Dqa(e,t,r){Zo.assertGreaterThanOrEqual(t,0),Zo.assertGreaterThanOrEqual(r,0),Zo.assertLessThanOrEqual(t,e.length),Zo.assertLessThanOrEqual(t+r,e.length)}function Pbt(e){return e.kind===244&&e.expression.kind===11}function zNr(e){return!!(NNe(e)&2097152)}function sSi(e){return zNr(e)&&TBi(e)}function kqa(e){return $C(e.name)&&!e.initializer}function oSi(e){return zNr(e)&&iEt(e)&&GNr(e.declarationList.declarations,kqa)}function xqa(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?FNr(vza(t,e.pos),pNr(t,e.pos)):pNr(t,e.pos);return Tee(r,n=>n.end<=e.end&&t.charCodeAt(n.pos+1)===42&&t.charCodeAt(n.pos+2)===42&&t.charCodeAt(n.pos+3)!==47)}function Gqa(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function Fqa(e){return e&&e.kind===241&&Kvi(e.parent)}function aSi(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function Xme(e){return!!e&&!!(e.flags&524288)}function Zqa(e){return!!e&&!!(e.flags&16777216)}function Lqa(e){for(;Kbt(e,!0);)e=e.right;return e}function Vqa(e){return $C(e)&&e.escapedText==="exports"}function Pqa(e){return $C(e)&&e.escapedText==="module"}function rBi(e){return(wce(e)||nBi(e))&&Pqa(e.expression)&&bJe(e)==="exports"}function qNr(e){let t=Oqa(e);return t===5||Xme(e)?t:0}function Wqa(e){return lJe(e.arguments)===3&&wce(e.expression)&&$C(e.expression.expression)&&yV(e.expression.expression)==="Object"&&yV(e.expression.name)==="defineProperty"&&rEt(e.arguments[1])&&yJe(e.arguments[0],!0)}function nBi(e){return wJe(e)&&rEt(e.argumentExpression)}function vJe(e,t){return wce(e)&&(!t&&e.expression.kind===110||$C(e.name)&&yJe(e.expression,!0))||iBi(e,t)}function iBi(e,t){return nBi(e)&&(!t&&e.expression.kind===110||nDr(e.expression)||vJe(e.expression,!0))}function yJe(e,t){return nDr(e)||vJe(e,t)}function Oqa(e){if(EBi(e)){if(!Wqa(e))return 0;let t=e.arguments[0];return Vqa(t)||rBi(t)?8:vJe(t)&&bJe(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!uBi(e.left)||Mqa(Lqa(e))?0:yJe(e.left.expression,!0)&&bJe(e.left)==="prototype"&&bBi(Yqa(e))?6:Hqa(e.left)}function Mqa(e){return Vec(e)&&xNe(e.expression)&&e.expression.text==="0"}function $Nr(e){if(wce(e))return e.name;let t=tDr(e.argumentExpression);return xNe(t)||jNr(t)?t:e}function bJe(e){let t=$Nr(e);if(t){if($C(t))return t.escapedText;if(jNr(t)||xNe(t))return CNe(t.text)}}function Hqa(e){if(e.expression.kind===110)return 4;if(rBi(e))return 2;if(yJe(e.expression,!0)){if(C$a(e.expression))return 3;let t=e;for(;!$C(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&bJe(t)==="exports")&&vJe(e))return 1;if(yJe(e,!0)||wJe(e)&&i$a(e))return 5}return 0}function Yqa(e){for(;kNe(e.right);)e=e.right;return e.right}function Qqa(e){return BBi(e)&&kNe(e.expression)&&qNr(e.expression)!==0&&kNe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function Xqa(e){switch(e.kind){case 243:let t=mNr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function mNr(e){return iEt(e)?ZNr(e.declarationList.declarations):void 0}function Jqa(e){return SJe(e)&&e.body&&e.body.kind===267?e.body:void 0}function eDr(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 317:case 323:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Uqa(e,t){let r;Gqa(e)&&Sqa(e)&&Wme(e.initializer)&&(r=_V(r,cSi(e,e.initializer.jsDoc)));let n=e;for(;n&&n.parent;){if(Wme(n)&&(r=_V(r,cSi(e,n.jsDoc))),n.kind===169){r=_V(r,(t?Pza:Vza)(n));break}if(n.kind===168){r=_V(r,(t?Oza:Wza)(n));break}n=jqa(n)}return r||x2}function cSi(e,t){let r=B7a(t);return uvi(t,n=>{if(n===r){let a=Tee(n.tags,o=>Kqa(e,o));return n.tags===a?[n]:a}else return Tee(n.tags,utc)})}function Kqa(e,t){return!(lDr(t)||ftc(t))||!t.parent||!ZBi(t.parent)||!aDr(t.parent.parent)||t.parent.parent===e}function jqa(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||Jqa(t)||Kbt(e))return t;if(t.parent&&(mNr(t.parent)===e||Kbt(t)))return t.parent;if(t.parent&&t.parent.parent&&(mNr(t.parent.parent)||Xqa(t.parent.parent)===e||Qqa(t.parent.parent)))return t.parent.parent}function tDr(e,t){return uDr(e,t?-2147483647:1)}function zqa(e){let t=qqa(e);if(t&&Xme(e)){let r=Mza(e);if(r)return r.class}return t}function qqa(e){let t=rDr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function $qa(e){if(Xme(e))return Hza(e).map(t=>t.class);{let t=rDr(e.heritageClauses,119);return t?.types}}function e$a(e){return cDr(e)?t$a(e)||x2:TNe(e)&&FNr(gNr(zqa(e)),$qa(e))||x2}function t$a(e){let t=rDr(e.heritageClauses,96);return t?t.types:void 0}function rDr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function _ce(e){return 83<=e&&e<=165}function r$a(e){return 19<=e&&e<=79}function $Rr(e){return _ce(e)||r$a(e)}function rEt(e){return jNr(e)||xNe(e)}function n$a(e){return Pec(e)&&(e.operator===40||e.operator===41)&&xNe(e.operand)}function i$a(e){if(!(e.kind===167||e.kind===212))return!1;let t=wJe(e)?tDr(e.argumentExpression):e.expression;return!rEt(t)&&!n$a(t)}function s$a(e){return INr(e)?yV(e):FBi(e)?U$a(e):e.text}function _Ne(e){return EJe(e.pos)||EJe(e.end)}function eNr(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function tNr(e){return!!((e.templateFlags||0)&2048)}function o$a(e){return e&&!!(aec(e)?tNr(e):tNr(e.head)||oD(e.templateSpans,t=>tNr(t.literal)))}var YRu=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),QRu=new Map(Object.entries({'"':""","'":"'"}));function a$a(e){return!!e&&e.kind===80&&c$a(e)}function c$a(e){return e.escapedText==="this"}function BJe(e,t){return!!g$a(e,t)}function l$a(e){return BJe(e,256)}function u$a(e){return BJe(e,32768)}function g$a(e,t){return d$a(e)&t}function A$a(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=aBi(e)|536870912),r||t&&Xme(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=sBi(e)|268435456),oBi(e.modifierFlagsCache)):p$a(e.modifierFlagsCache))}function d$a(e){return A$a(e,!1)}function sBi(e){let t=0;return e.parent&&!jbt(e)&&(Xme(e)&&(Yza(e)&&(t|=8388608),Qza(e)&&(t|=16777216),Xza(e)&&(t|=33554432),Jza(e)&&(t|=67108864),Uza(e)&&(t|=134217728)),Kza(e)&&(t|=65536)),t}function p$a(e){return e&65535}function oBi(e){return e&131071|(e&260046848)>>>23}function f$a(e){return oBi(sBi(e))}function I$a(e){return aBi(e)|f$a(e)}function aBi(e){let t=gDr(e)?fO(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function fO(e){let t=0;if(e)for(let r of e)t|=cBi(r.kind);return t}function cBi(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function h$a(e){return e===76||e===77||e===78}function lBi(e){return e>=64&&e<=79}function Kbt(e,t){return kNe(e)&&(t?e.operatorToken.kind===64:lBi(e.operatorToken.kind))&&RNe(e.left)}function nDr(e){return e.kind===80||m$a(e)}function m$a(e){return wce(e)&&$C(e.name)&&nDr(e.expression)}function C$a(e){return vJe(e)&&bJe(e)==="prototype"}function rNr(e){return e.flags&3899393?e.objectFlags:0}function _$a(e){let t;return Ok(e,r=>{hNr(r)&&(t=r)},r=>{for(let n=r.length-1;n>=0;n--)if(hNr(r[n])){t=r[n];break}}),t}function y$a(e){return e>=182&&e<=205||e===133||e===159||e===150||e===163||e===151||e===136||e===154||e===155||e===116||e===157||e===146||e===141||e===233||e===312||e===313||e===314||e===315||e===316||e===317||e===318}function uBi(e){return e.kind===211||e.kind===212}function b$a(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function E$a(e,t){this.flags=t,(Zo.isDebugging||Lbt)&&(this.checker=e)}function S$a(e,t){this.flags=t,Zo.isDebugging&&(this.checker=e)}function nNr(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function v$a(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function B$a(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function w$a(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}var k2={getNodeConstructor:()=>nNr,getTokenConstructor:()=>v$a,getIdentifierConstructor:()=>B$a,getPrivateIdentifierConstructor:()=>nNr,getSourceFileConstructor:()=>nNr,getSymbolConstructor:()=>b$a,getTypeConstructor:()=>E$a,getSignatureConstructor:()=>S$a,getSourceMapSourceConstructor:()=>w$a},T$a=[];function R$a(e){Object.assign(k2,e),hO(T$a,t=>t(k2))}function N$a(e,t){return e.replace(/\{(\d+)\}/g,(r,n)=>""+Zo.checkDefined(t[+n]))}var lSi;function D$a(e){return lSi&&lSi[e.key]||e.message}function fNe(e,t,r,n,a,...o){r+n>t.length&&(n=t.length-r),Dqa(t,r,n);let l=D$a(a);return oD(o)&&(l=N$a(l,o)),{file:void 0,start:r,length:n,messageText:l,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function k$a(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function gBi(e,t){let r=t.fileName||"",n=t.text.length;Zo.assertEqual(e.fileName,r),Zo.assertLessThanOrEqual(e.start,n),Zo.assertLessThanOrEqual(e.start+e.length,n);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)k$a(o)&&o.fileName===r?(Zo.assertLessThanOrEqual(o.start,n),Zo.assertLessThanOrEqual(o.start+o.length,n),a.relatedInformation.push(gBi(o,t))):a.relatedInformation.push(o)}return a}function Dme(e,t){let r=[];for(let n of e)r.push(gBi(n,t));return r}function uSi(e){return e===4||e===2||e===1||e===6?1:0}var y0={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:y0.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(y0.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(y0.module.computeValue(e)===100||y0.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(y0.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:y0.esModuleInterop.computeValue(e)||y0.module.computeValue(e)===4||y0.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=y0.moduleResolution.computeValue(e);if(!gSi(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=y0.moduleResolution.computeValue(e);if(!gSi(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:y0.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||y0.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&y0.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?y0.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>See(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>See(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>See(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>See(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>See(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>See(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>See(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>See(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>See(e,"useUnknownInCatchVariables")}},XRu=y0.allowImportingTsExtensions.computeValue,JRu=y0.target.computeValue,URu=y0.module.computeValue,KRu=y0.moduleResolution.computeValue,jRu=y0.moduleDetection.computeValue,zRu=y0.isolatedModules.computeValue,qRu=y0.esModuleInterop.computeValue,$Ru=y0.allowSyntheticDefaultImports.computeValue,eNu=y0.resolvePackageJsonExports.computeValue,tNu=y0.resolvePackageJsonImports.computeValue,rNu=y0.resolveJsonModule.computeValue,nNu=y0.declaration.computeValue,iNu=y0.preserveConstEnums.computeValue,sNu=y0.incremental.computeValue,oNu=y0.declarationMap.computeValue,aNu=y0.allowJs.computeValue,cNu=y0.useDefineForClassFields.computeValue;function gSi(e){return e>=3&&e<=99||e===100}function See(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function x$a(e){return wqa(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var G$a=["node_modules","bower_components","jspm_packages"],ABi=`(?!(${G$a.join("|")})(/|$))`,F$a={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${ABi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>dBi(e,F$a.singleAsteriskRegexFragment)},Z$a={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${ABi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>dBi(e,Z$a.singleAsteriskRegexFragment)};function dBi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function L$a(e,t){return t||V$a(e)||3}function V$a(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var pBi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],lNu=lvi(pBi),uNu=[...pBi,[".json"]],P$a=[[".js",".jsx"],[".mjs"],[".cjs"]],gNu=lvi(P$a),W$a=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],ANu=[...W$a,[".json"]],O$a=[".d.ts",".d.cts",".d.mts"];function EJe(e){return!(e>=0)}function xbt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),Zo.assert(e.relatedInformation!==x2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function M$a(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:let I=e.length-1,C=0;for(;e.charCodeAt(C)===48;)C++;return e.slice(C,I)||"0"}let r=2,n=e.length-1,a=(n-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let I=n-1,C=0;I>=r;I--,C+=t){let b=C>>>4,E=e.charCodeAt(I),N=(E<=57?E-48:10+E-(E<=70?65:97))<<(C&15);o[b]|=N;let B=N>>>16;B&&(o[b+1]|=B)}let l="",A=o.length-1,f=!0;for(;f;){let I=0;f=!1;for(let C=A;C>=0;C--){let b=I<<16|o[C],E=b/10|0;o[C]=E,I=b-E*10,E&&!f&&(A=C,f=!0)}l=I+l}return l}function H$a({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function CNr(e,t){return e.pos=t,e}function Y$a(e,t){return e.end=t,e}function Sce(e,t,r){return Y$a(CNr(e,t),r)}function ASi(e,t,r){return Sce(e,t,t+r)}function iDr(e,t){return e&&t&&(e.parent=t),e}function Q$a(e,t){if(!e)return e;return OSi(e,eBi(e)?r:a),e;function r(o,l){if(t&&o.parent===l)return"skip";iDr(o,l)}function n(o){if(Wme(o))for(let l of o.jsDoc)r(l,o),OSi(l,r)}function a(o,l){return r(o,l)||n(o)}}function X$a(e){return!!(e.flags&262144&&e.isThisType)}function J$a(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function U$a(e){return`${yV(e.namespace)}:${yV(e.name)}`}var dNu=String.prototype.replace,_Nr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],pNu=new Set(_Nr),K$a=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),fNu=new Set([..._Nr,..._Nr.map(e=>`node:${e}`),...K$a]);function j$a(){let e,t,r,n,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:l,createBasePrivateIdentifierNode:A,createBaseTokenNode:f,createBaseNode:I};function o(C){return new(a||(a=k2.getSourceFileConstructor()))(C,-1,-1)}function l(C){return new(r||(r=k2.getIdentifierConstructor()))(C,-1,-1)}function A(C){return new(n||(n=k2.getPrivateIdentifierConstructor()))(C,-1,-1)}function f(C){return new(t||(t=k2.getTokenConstructor()))(C,-1,-1)}function I(C){return new(e||(e=k2.getNodeConstructor()))(C,-1,-1)}}var z$a={getParenthesizeLeftSideOfBinaryForOperator:e=>VE,getParenthesizeRightSideOfBinaryForOperator:e=>VE,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:VE,parenthesizeConditionOfConditionalExpression:VE,parenthesizeBranchOfConditionalExpression:VE,parenthesizeExpressionOfExportDefault:VE,parenthesizeExpressionOfNew:e=>Aj(e,RNe),parenthesizeLeftSideOfAccess:e=>Aj(e,RNe),parenthesizeOperandOfPostfixUnary:e=>Aj(e,RNe),parenthesizeOperandOfPrefixUnary:e=>Aj(e,fqa),parenthesizeExpressionsOfCommaDelimitedList:e=>Aj(e,yce),parenthesizeExpressionForDisallowedComma:VE,parenthesizeExpressionOfExpressionStatement:VE,parenthesizeConciseBodyOfArrowFunction:VE,parenthesizeCheckTypeOfConditionalType:VE,parenthesizeExtendsTypeOfConditionalType:VE,parenthesizeConstituentTypesOfUnionType:e=>Aj(e,yce),parenthesizeConstituentTypeOfUnionType:VE,parenthesizeConstituentTypesOfIntersectionType:e=>Aj(e,yce),parenthesizeConstituentTypeOfIntersectionType:VE,parenthesizeOperandOfTypeOperator:VE,parenthesizeOperandOfReadonlyTypeOperator:VE,parenthesizeNonArrayTypeOfPostfixType:VE,parenthesizeElementTypesOfTupleType:e=>Aj(e,yce),parenthesizeElementTypeOfTupleType:VE,parenthesizeTypeOfOptionalType:VE,parenthesizeTypeArguments:e=>e&&Aj(e,yce),parenthesizeLeadingTypeArgument:VE},Gbt=0,q$a=[];function sDr(e,t){let r=e&8?VE:nec,n=H2i(()=>e&1?z$a:createParenthesizerRules(X)),a=H2i(()=>e&2?nullNodeConverters:createNodeConverters(X)),o=eH(z=>(ye,Ve)=>gt(ye,z,Ve)),l=eH(z=>ye=>se(z,ye)),A=eH(z=>ye=>K(ye,z)),f=eH(z=>()=>ND(z)),I=eH(z=>ye=>q_(z,ye)),C=eH(z=>(ye,Ve)=>UR(z,ye,Ve)),b=eH(z=>(ye,Ve)=>DD(z,ye,Ve)),E=eH(z=>(ye,Ve)=>kD(z,ye,Ve)),N=eH(z=>(ye,Ve)=>Mo(z,ye,Ve)),B=eH(z=>(ye,Ve,Ct)=>gp(z,ye,Ve,Ct)),F=eH(z=>(ye,Ve,Ct)=>lF(z,ye,Ve,Ct)),Q=eH(z=>(ye,Ve,Ct,wr)=>uF(z,ye,Ve,Ct,wr)),X={get parenthesizer(){return n()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:ae,createNumericLiteral:ue,createBigIntLiteral:de,createStringLiteral:Se,createStringLiteralFromNode:De,createRegularExpressionLiteral:k,createLiteralLikeNode:et,createIdentifier:je,createTempVariable:St,createLoopVariable:At,createUniqueName:Yt,getGeneratedNameForNode:Tr,createPrivateIdentifier:er,createUniquePrivateName:xt,getGeneratedPrivateNameForNode:Zr,createToken:Xt,createSuper:lr,createThis:cr,createNull:Ar,createTrue:qr,createFalse:_n,createModifier:ke,createModifiersFromModifierFlags:jt,createQualifiedName:Fn,updateQualifiedName:Nn,createComputedPropertyName:Hi,updateComputedPropertyName:po,createTypeParameterDeclaration:Vr,updateTypeParameterDeclaration:xi,createParameterDeclaration:io,updateParameterDeclaration:ga,createDecorator:Ya,updateDecorator:Gc,createPropertySignature:cl,updatePropertySignature:Sc,createPropertyDeclaration:Wr,updatePropertyDeclaration:Ft,createMethodSignature:zr,updateMethodSignature:Rn,createMethodDeclaration:Or,updateMethodDeclaration:Qi,createConstructorDeclaration:gc,updateConstructorDeclaration:Cg,createGetAccessorDeclaration:iA,updateGetAccessorDeclaration:ma,createSetAccessorDeclaration:li,updateSetAccessorDeclaration:Ei,createCallSignature:Xa,updateCallSignature:ac,createConstructSignature:Yl,updateConstructSignature:Wc,createIndexSignature:Sg,updateIndexSignature:Ul,createClassStaticBlockDeclaration:yo,updateClassStaticBlockDeclaration:bo,createTemplateLiteralTypeSpan:Xu,updateTemplateLiteralTypeSpan:Da,createKeywordTypeNode:pu,createTypePredicateNode:_g,updateTypePredicateNode:mI,createTypeReferenceNode:Qh,updateTypeReferenceNode:Ri,createFunctionTypeNode:Do,updateFunctionTypeNode:Wt,createConstructorTypeNode:Ru,updateConstructorTypeNode:Yn,createTypeQueryNode:OA,updateTypeQueryNode:GA,createTypeLiteralNode:$i,updateTypeLiteralNode:dl,createArrayTypeNode:Uf,updateArrayTypeNode:Kd,createTupleTypeNode:oA,updateTupleTypeNode:oo,createNamedTupleMember:Ki,updateNamedTupleMember:cc,createOptionalTypeNode:Xs,updateOptionalTypeNode:ws,createRestTypeNode:Gs,updateRestTypeNode:Ma,createUnionTypeNode:Tf,updateUnionTypeNode:cm,createIntersectionTypeNode:Fl,updateIntersectionTypeNode:rc,createConditionalTypeNode:sd,updateConditionalTypeNode:Om,createInferTypeNode:il,updateInferTypeNode:FA,createImportTypeNode:yg,updateImportTypeNode:Mp,createParenthesizedType:MA,updateParenthesizedType:Er,createThisTypeNode:Zt,createTypeOperatorNode:bn,updateTypeOperatorNode:ls,createIndexedAccessTypeNode:oa,updateIndexedAccessTypeNode:Fs,createMappedTypeNode:Wa,updateMappedTypeNode:Ca,createLiteralTypeNode:ld,updateLiteralTypeNode:Rp,createTemplateLiteralType:ZA,updateTemplateLiteralType:El,createObjectBindingPattern:np,updateObjectBindingPattern:HA,createArrayBindingPattern:df,updateArrayBindingPattern:Zs,createBindingElement:so,updateBindingElement:Ea,createArrayLiteralExpression:Ml,updateArrayLiteralExpression:Dr,createObjectLiteralExpression:Wn,updateObjectLiteralExpression:di,createPropertyAccessExpression:e&4?(z,ye)=>setEmitFlags(Bo(z,ye),262144):Bo,updatePropertyAccessExpression:us,createPropertyAccessChain:e&4?(z,ye,Ve)=>setEmitFlags(Ql(z,ye,Ve),262144):Ql,updatePropertyAccessChain:LA,createElementAccessExpression:ef,updateElementAccessExpression:ip,createElementAccessChain:_d,updateElementAccessChain:j1,createCallExpression:YA,updateCallExpression:Ac,createCallChain:Nm,updateCallChain:HS,createNewExpression:jd,updateNewExpression:dh,createTaggedTemplateExpression:Hp,updateTaggedTemplateExpression:uC,createTypeAssertion:nE,updateTypeAssertion:J_,createParenthesizedExpression:q0,updateParenthesizedExpression:XE,createFunctionExpression:TC,updateFunctionExpression:t_,createArrowFunction:cp,updateArrowFunction:Mm,createDeleteExpression:fb,updateDeleteExpression:pe,createTypeOfExpression:lm,updateTypeOfExpression:Kf,createVoidExpression:CI,updateVoidExpression:_I,createAwaitExpression:H2,updateAwaitExpression:iE,createPrefixUnaryExpression:se,updatePrefixUnaryExpression:O,createPostfixUnaryExpression:K,updatePostfixUnaryExpression:we,createBinaryExpression:gt,updateBinaryExpression:Yr,createConditionalExpression:Lr,updateConditionalExpression:fi,createTemplateExpression:$n,updateTemplateExpression:ra,createTemplateHead:SA,createTemplateMiddle:lI,createTemplateTail:lp,createNoSubstitutionTemplateLiteral:Ib,createTemplateLiteralLikeNode:$g,createYieldExpression:Na,updateYieldExpression:wd,createSpreadElement:z1,updateSpreadElement:T_,createClassExpression:RC,updateClassExpression:Hm,createOmittedExpression:YS,createExpressionWithTypeArguments:Fg,updateExpressionWithTypeArguments:hb,createAsExpression:gC,updateAsExpression:NC,createNonNullExpression:Y2,updateNonNullExpression:U_,createSatisfiesExpression:DC,updateSatisfiesExpression:kC,createNonNullChain:qI,updateNonNullChain:ph,createMetaProperty:vA,updateMetaProperty:Td,createTemplateSpan:Mc,updateTemplateSpan:Pf,createSemicolonClassElement:sE,createBlock:eA,updateBlock:QS,createVariableStatement:XS,updateVariableStatement:um,createEmptyStatement:gm,createExpressionStatement:cs,updateExpressionStatement:na,createIfStatement:ko,updateIfStatement:ki,createDoStatement:Kl,updateDoStatement:fd,createWhileStatement:jf,updateWhileStatement:Ld,createForStatement:AC,updateForStatement:JE,createForInStatement:Ym,updateForInStatement:vy,createForOfStatement:K_,updateForOfStatement:od,createContinueStatement:UE,updateContinueStatement:KE,createBreakStatement:Yp,updateBreakStatement:JS,createReturnStatement:By,updateReturnStatement:$0,createWithStatement:fw,updateWithStatement:Q2,createSwitchStatement:xc,updateSwitchStatement:ut,createLabeledStatement:ar,updateLabeledStatement:Jr,createThrowStatement:Gn,updateThrowStatement:Ts,createTryStatement:Qo,updateTryStatement:vg,createDebuggerStatement:Ng,createVariableDeclaration:Rf,updateVariableDeclaration:uI,createVariableDeclarationList:Th,updateVariableDeclarationList:oE,createFunctionDeclaration:TT,updateFunctionDeclaration:sB,createClassDeclaration:wy,updateClassDeclaration:jE,createInterfaceDeclaration:j_,updateInterfaceDeclaration:NT,createTypeAliasDeclaration:tf,updateTypeAliasDeclaration:Ty,createEnumDeclaration:US,updateEnumDeclaration:$I,createModuleDeclaration:BA,updateModuleDeclaration:$A,createModuleBlock:Qm,updateModuleBlock:zf,createCaseBlock:mb,updateCaseBlock:R_,createNamespaceExportDeclaration:Cb,updateNamespaceExportDeclaration:Ry,createImportEqualsDeclaration:_b,updateImportEqualsDeclaration:z_,createImportDeclaration:zE,updateImportDeclaration:oB,createImportClause:DT,updateImportClause:aB,createAssertClause:jS,updateAssertClause:XR,createAssertEntry:zS,updateAssertEntry:qE,createImportTypeAssertionContainer:X2,updateImportTypeAssertionContainer:kT,createImportAttributes:pn,updateImportAttributes:q1,createImportAttribute:J2,updateImportAttribute:ey,createNamespaceImport:up,updateNamespaceImport:Iw,createNamespaceExport:cB,updateNamespaceExport:RD,createNamedImports:Rd,updateNamedImports:JR,createImportSpecifier:ty,updateImportSpecifier:cF,createExportAssignment:$1,updateExportAssignment:$E,createExportDeclaration:N_,updateExportDeclaration:e1,createNamedExports:ry,updateNamedExports:xT,createExportSpecifier:yb,updateExportSpecifier:r_,createMissingDeclaration:Rh,createExternalModuleReference:bb,updateExternalModuleReference:lB,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return b(315)},get updateJSDocNonNullableType(){return E(315)},get createJSDocNullableType(){return b(314)},get updateJSDocNullableType(){return E(314)},get createJSDocOptionalType(){return I(316)},get updateJSDocOptionalType(){return C(316)},get createJSDocVariadicType(){return I(318)},get updateJSDocVariadicType(){return C(318)},get createJSDocNamepathType(){return I(319)},get updateJSDocNamepathType(){return C(319)},createJSDocFunctionType:lc,updateJSDocFunctionType:fh,createJSDocTypeLiteral:rf,updateJSDocTypeLiteral:yI,createJSDocTypeExpression:aE,updateJSDocTypeExpression:qS,createJSDocSignature:Qp,updateJSDocSignature:uB,createJSDocTemplateTag:r1,updateJSDocTemplateTag:gB,createJSDocTypedefTag:hw,updateJSDocTypedefTag:GT,createJSDocParameterTag:b0,updateJSDocParameterTag:ia,createJSDocPropertyTag:e2,updateJSDocPropertyTag:yd,createJSDocCallbackTag:bI,updateJSDocCallbackTag:ag,createJSDocOverloadTag:Eb,updateJSDocOverloadTag:n1,createJSDocAugmentsTag:U2,updateJSDocAugmentsTag:e0,createJSDocImplementsTag:n_,updateJSDocImplementsTag:Wf,createJSDocSeeTag:Xp,updateJSDocSeeTag:cE,createJSDocImportTag:Dp,updateJSDocImportTag:t2,createJSDocNameReference:lE,updateJSDocNameReference:Ip,createJSDocMemberName:Xh,updateJSDocMemberName:E0,createJSDocLink:aA,updateJSDocLink:fu,createJSDocLinkCode:Jp,updateJSDocLinkCode:dC,createJSDocLinkPlain:uE,updateJSDocLinkPlain:eh,get createJSDocTypeTag(){return F(344)},get updateJSDocTypeTag(){return Q(344)},get createJSDocReturnTag(){return F(342)},get updateJSDocReturnTag(){return Q(342)},get createJSDocThisTag(){return F(343)},get updateJSDocThisTag(){return Q(343)},get createJSDocAuthorTag(){return N(330)},get updateJSDocAuthorTag(){return B(330)},get createJSDocClassTag(){return N(332)},get updateJSDocClassTag(){return B(332)},get createJSDocPublicTag(){return N(333)},get updateJSDocPublicTag(){return B(333)},get createJSDocPrivateTag(){return N(334)},get updateJSDocPrivateTag(){return B(334)},get createJSDocProtectedTag(){return N(335)},get updateJSDocProtectedTag(){return B(335)},get createJSDocReadonlyTag(){return N(336)},get updateJSDocReadonlyTag(){return B(336)},get createJSDocOverrideTag(){return N(337)},get updateJSDocOverrideTag(){return B(337)},get createJSDocDeprecatedTag(){return N(331)},get updateJSDocDeprecatedTag(){return B(331)},get createJSDocThrowsTag(){return F(349)},get updateJSDocThrowsTag(){return Q(349)},get createJSDocSatisfiesTag(){return F(350)},get updateJSDocSatisfiesTag(){return Q(350)},createJSDocEnumTag:Np,updateJSDocEnumTag:Dm,createJSDocUnknownTag:gE,updateJSDocUnknownTag:FT,createJSDocText:Ro,updateJSDocText:AE,createJSDocComment:AB,updateJSDocComment:Xc,createJsxElement:iu,updateJsxElement:dE,createJsxSelfClosingElement:yL,updateJsxSelfClosingElement:KR,createJsxOpeningElement:Ou,updateJsxOpeningElement:ny,createJsxClosingElement:hp,updateJsxClosingElement:Am,createJsxFragment:K2,createJsxText:dB,updateJsxText:ZT,createJsxOpeningFragment:Cx,createJsxJsxClosingFragment:pB,updateJsxFragment:i_,createJsxAttribute:qf,updateJsxAttribute:Jh,createJsxAttributes:$S,updateJsxAttributes:Sb,createJsxSpreadAttribute:mp,updateJsxSpreadAttribute:r2,createJsxExpression:i1,updateJsxExpression:Of,createJsxNamespacedName:pE,updateJsxNamespacedName:Vd,createCaseClause:j,updateCaseClause:Z,createDefaultClause:Id,updateDefaultClause:fB,createHeritageClause:ev,updateHeritageClause:Ny,createCatchClause:vb,updateCatchClause:xD,createPropertyAssignment:IB,updatePropertyAssignment:Bb,createShorthandPropertyAssignment:gF,updateShorthandPropertyAssignment:x,createSpreadAssignment:te,updateSpreadAssignment:Re,createEnumMember:Le,updateEnumMember:ft,createSourceFile:dr,updateSourceFile:Ho,createRedirectedSourceFile:Ur,createBundle:Wg,updateBundle:cA,createSyntheticExpression:th,createSyntaxList:xn,createNotEmittedStatement:rn,createNotEmittedTypeElement:ec,createPartiallyEmittedExpression:Ci,updatePartiallyEmittedExpression:Po,createCommaListExpression:dc,updateCommaListExpression:Iu,createSyntheticReferenceExpression:Cl,updateSyntheticReferenceExpression:wl,cloneNode:tv,get createComma(){return o(28)},get createAssignment(){return o(64)},get createLogicalOr(){return o(57)},get createLogicalAnd(){return o(56)},get createBitwiseOr(){return o(52)},get createBitwiseXor(){return o(53)},get createBitwiseAnd(){return o(51)},get createStrictEquality(){return o(37)},get createStrictInequality(){return o(38)},get createEquality(){return o(35)},get createInequality(){return o(36)},get createLessThan(){return o(30)},get createLessThanEquals(){return o(33)},get createGreaterThan(){return o(32)},get createGreaterThanEquals(){return o(34)},get createLeftShift(){return o(48)},get createRightShift(){return o(49)},get createUnsignedRightShift(){return o(50)},get createAdd(){return o(40)},get createSubtract(){return o(41)},get createMultiply(){return o(42)},get createDivide(){return o(44)},get createModulo(){return o(45)},get createExponent(){return o(43)},get createPrefixPlus(){return l(40)},get createPrefixMinus(){return l(41)},get createPrefixIncrement(){return l(46)},get createPrefixDecrement(){return l(47)},get createBitwiseNot(){return l(55)},get createLogicalNot(){return l(54)},get createPostfixIncrement(){return A(46)},get createPostfixDecrement(){return A(47)},createImmediatelyInvokedFunctionExpression:Yu,createImmediatelyInvokedArrowFunction:qO,createVoidZero:hB,createExportDefault:mw,createExternalModuleExport:AF,createTypeCheck:$O,createIsNotTypeCheck:iY,createMethodCall:LT,createGlobalMethodCall:ff,createFunctionBindCall:GD,createFunctionCallCall:dF,createFunctionApplyCall:EL,createArraySliceCall:FD,createArrayConcatCall:fE,createObjectDefinePropertyCall:n2,createObjectGetOwnPropertyDescriptorCall:mB,createReflectGetCall:bd,createReflectSetCall:s1,createPropertyDescriptor:wb,createCallBinding:aY,createAssignmentTargetWrapper:tt,inlineExpressions:Jt,getInternalName:Xr,getLocalName:ui,getExportName:Is,getDeclarationName:Hs,getNamespaceMemberName:Rs,getExternalModuleOrNamespaceExportName:ja,restoreOuterExpressions:sY,restoreEnclosingLabel:oY,createUseStrictPrologue:Nd,copyPrologue:ho,copyStandardPrologue:ed,copyCustomPrologue:Og,ensureUseStrict:Nh,liftToBlock:o1,mergeLexicalEnvironment:q2,replaceModifiers:IE,replaceDecoratorsAndModifiers:zR,replacePropertyName:e3};return hO(q$a,z=>z(X)),X;function ae(z,ye){if(z===void 0||z===x2)z=[];else if(yce(z)){if(ye===void 0||z.hasTrailingComma===ye)return z.transformFlags===void 0&&pSi(z),Zo.attachNodeArrayDebugInfo(z),z;let wr=z.slice();return wr.pos=z.pos,wr.end=z.end,wr.hasTrailingComma=ye,wr.transformFlags=z.transformFlags,Zo.attachNodeArrayDebugInfo(wr),wr}let Ve=z.length,Ct=Ve>=1&&Ve<=4?z.slice():z;return Ct.pos=-1,Ct.end=-1,Ct.hasTrailingComma=!!ye,Ct.transformFlags=0,pSi(Ct),Zo.attachNodeArrayDebugInfo(Ct),Ct}function ne(z){return t.createBaseNode(z)}function ce(z){let ye=ne(z);return ye.symbol=void 0,ye.localSymbol=void 0,ye}function fe(z,ye){return z!==ye&&(z.typeArguments=ye.typeArguments),Eo(z,ye)}function ue(z,ye=0){let Ve=typeof z=="number"?z+"":z;Zo.assert(Ve.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let Ct=ce(9);return Ct.text=Ve,Ct.numericLiteralFlags=ye,ye&384&&(Ct.transformFlags|=1024),Ct}function de(z){let ye=qt(10);return ye.text=typeof z=="string"?z:H$a(z)+"n",ye.transformFlags|=32,ye}function be(z,ye){let Ve=ce(11);return Ve.text=z,Ve.singleQuote=ye,Ve}function Se(z,ye,Ve){let Ct=be(z,ye);return Ct.hasExtendedUnicodeEscape=Ve,Ve&&(Ct.transformFlags|=1024),Ct}function De(z){let ye=be(s$a(z),void 0);return ye.textSourceNode=z,ye}function k(z){let ye=qt(14);return ye.text=z,ye}function et(z,ye){switch(z){case 9:return ue(ye,0);case 10:return de(ye);case 11:return Se(ye,void 0);case 12:return dB(ye,!1);case 13:return dB(ye,!0);case 14:return k(ye);case 15:return $g(z,ye,void 0,0)}}function ct(z){let ye=t.createBaseIdentifierNode(80);return ye.escapedText=z,ye.jsDoc=void 0,ye.flowNode=void 0,ye.symbol=void 0,ye}function Me(z,ye,Ve,Ct){let wr=ct(CNe(z));return setIdentifierAutoGenerate(wr,{flags:ye,id:Gbt,prefix:Ve,suffix:Ct}),Gbt++,wr}function je(z,ye,Ve){ye===void 0&&z&&(ye=Nvi(z)),ye===80&&(ye=void 0);let Ct=ct(CNe(z));return Ve&&(Ct.flags|=256),Ct.escapedText==="await"&&(Ct.transformFlags|=67108864),Ct.flags&256&&(Ct.transformFlags|=1024),Ct}function St(z,ye,Ve,Ct){let wr=1;ye&&(wr|=8);let ai=Me("",wr,Ve,Ct);return z&&z(ai),ai}function At(z){let ye=2;return z&&(ye|=8),Me("",ye,void 0,void 0)}function Yt(z,ye=0,Ve,Ct){return Zo.assert(!(ye&7),"Argument out of range: flags"),Zo.assert((ye&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Me(z,3|ye,Ve,Ct)}function Tr(z,ye=0,Ve,Ct){Zo.assert(!(ye&7),"Argument out of range: flags");let wr=z?INr(z)?SNr(!1,Ve,z,Ct,yV):`generated@${getNodeId(z)}`:"";(Ve||Ct)&&(ye|=16);let ai=Me(wr,4|ye,Ve,Ct);return ai.original=z,ai}function Nr(z){let ye=t.createBasePrivateIdentifierNode(81);return ye.escapedText=z,ye.transformFlags|=16777216,ye}function er(z){return Hbt(z,"#")||Zo.fail("First character of private identifier must be #: "+z),Nr(CNe(z))}function vt(z,ye,Ve,Ct){let wr=Nr(CNe(z));return setIdentifierAutoGenerate(wr,{flags:ye,id:Gbt,prefix:Ve,suffix:Ct}),Gbt++,wr}function xt(z,ye,Ve){z&&!Hbt(z,"#")&&Zo.fail("First character of private identifier must be #: "+z);let Ct=8|(z?3:1);return vt(z??"",Ct,ye,Ve)}function Zr(z,ye,Ve){let Ct=INr(z)?SNr(!0,ye,z,Ve,yV):`#generated@${getNodeId(z)}`,wr=vt(Ct,4|(ye||Ve?16:0),ye,Ve);return wr.original=z,wr}function qt(z){return t.createBaseTokenNode(z)}function Xt(z){Zo.assert(z>=0&&z<=165,"Invalid token"),Zo.assert(z<=15||z>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Zo.assert(z<=9||z>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Zo.assert(z!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let ye=qt(z),Ve=0;switch(z){case 134:Ve=384;break;case 160:Ve=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Ve=1;break;case 108:Ve=134218752,ye.flowNode=void 0;break;case 126:Ve=1024;break;case 129:Ve=16777216;break;case 110:Ve=16384,ye.flowNode=void 0;break}return Ve&&(ye.transformFlags|=Ve),ye}function lr(){return Xt(108)}function cr(){return Xt(110)}function Ar(){return Xt(106)}function qr(){return Xt(112)}function _n(){return Xt(97)}function ke(z){return Xt(z)}function jt(z){let ye=[];return z&32&&ye.push(ke(95)),z&128&&ye.push(ke(138)),z&2048&&ye.push(ke(90)),z&4096&&ye.push(ke(87)),z&1&&ye.push(ke(125)),z&2&&ye.push(ke(123)),z&4&&ye.push(ke(124)),z&64&&ye.push(ke(128)),z&256&&ye.push(ke(126)),z&16&&ye.push(ke(164)),z&8&&ye.push(ke(148)),z&512&&ye.push(ke(129)),z&1024&&ye.push(ke(134)),z&8192&&ye.push(ke(103)),z&16384&&ye.push(ke(147)),ye.length?ye:void 0}function Fn(z,ye){let Ve=ne(166);return Ve.left=z,Ve.right=EI(ye),Ve.transformFlags|=$o(Ve.left)|yNe(Ve.right),Ve.flowNode=void 0,Ve}function Nn(z,ye,Ve){return z.left!==ye||z.right!==Ve?Eo(Fn(ye,Ve),z):z}function Hi(z){let ye=ne(167);return ye.expression=n().parenthesizeExpressionOfComputedPropertyName(z),ye.transformFlags|=$o(ye.expression)|1024|131072,ye}function po(z,ye){return z.expression!==ye?Eo(Hi(ye),z):z}function Vr(z,ye,Ve,Ct){let wr=ce(168);return wr.modifiers=IA(z),wr.name=EI(ye),wr.constraint=Ve,wr.default=Ct,wr.transformFlags=1,wr.expression=void 0,wr.jsDoc=void 0,wr}function xi(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.constraint!==Ct||z.default!==wr?Eo(Vr(ye,Ve,Ct,wr),z):z}function io(z,ye,Ve,Ct,wr,ai){let Lo=ce(169);return Lo.modifiers=IA(z),Lo.dotDotDotToken=ye,Lo.name=EI(Ve),Lo.questionToken=Ct,Lo.type=wr,Lo.initializer=wA(ai),a$a(Lo.name)?Lo.transformFlags=1:Lo.transformFlags=qA(Lo.modifiers)|$o(Lo.dotDotDotToken)|pO(Lo.name)|$o(Lo.questionToken)|$o(Lo.initializer)|(Lo.questionToken??Lo.type?1:0)|(Lo.dotDotDotToken??Lo.initializer?1024:0)|(fO(Lo.modifiers)&31?8192:0),Lo.jsDoc=void 0,Lo}function ga(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.dotDotDotToken!==Ve||z.name!==Ct||z.questionToken!==wr||z.type!==ai||z.initializer!==Lo?Eo(io(ye,Ve,Ct,wr,ai,Lo),z):z}function Ya(z){let ye=ne(170);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1|8192|33554432,ye}function Gc(z,ye){return z.expression!==ye?Eo(Ya(ye),z):z}function cl(z,ye,Ve,Ct){let wr=ce(171);return wr.modifiers=IA(z),wr.name=EI(ye),wr.type=Ct,wr.questionToken=Ve,wr.transformFlags=1,wr.initializer=void 0,wr.jsDoc=void 0,wr}function Sc(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==Ct||z.type!==wr?Hr(cl(ye,Ve,Ct,wr),z):z}function Hr(z,ye){return z!==ye&&(z.initializer=ye.initializer),Eo(z,ye)}function Wr(z,ye,Ve,Ct,wr){let ai=ce(172);ai.modifiers=IA(z),ai.name=EI(ye),ai.questionToken=Ve&&ISi(Ve)?Ve:void 0,ai.exclamationToken=Ve&&fSi(Ve)?Ve:void 0,ai.type=Ct,ai.initializer=wA(wr);let Lo=ai.flags&33554432||fO(ai.modifiers)&128;return ai.transformFlags=qA(ai.modifiers)|pO(ai.name)|$o(ai.initializer)|(Lo||ai.questionToken||ai.exclamationToken||ai.type?1:0)|(fBi(ai.name)||fO(ai.modifiers)&256&&ai.initializer?8192:0)|16777216,ai.jsDoc=void 0,ai}function Ft(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==(Ct!==void 0&&ISi(Ct)?Ct:void 0)||z.exclamationToken!==(Ct!==void 0&&fSi(Ct)?Ct:void 0)||z.type!==wr||z.initializer!==ai?Eo(Wr(ye,Ve,Ct,wr,ai),z):z}function zr(z,ye,Ve,Ct,wr,ai){let Lo=ce(173);return Lo.modifiers=IA(z),Lo.name=EI(ye),Lo.questionToken=Ve,Lo.typeParameters=IA(Ct),Lo.parameters=IA(wr),Lo.type=ai,Lo.transformFlags=1,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.typeArguments=void 0,Lo}function Rn(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==Ct||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo?fe(zr(ye,Ve,Ct,wr,ai,Lo),z):z}function Or(z,ye,Ve,Ct,wr,ai,Lo,Hc){let ad=ce(174);if(ad.modifiers=IA(z),ad.asteriskToken=ye,ad.name=EI(Ve),ad.questionToken=Ct,ad.exclamationToken=void 0,ad.typeParameters=IA(wr),ad.parameters=ae(ai),ad.type=Lo,ad.body=Hc,!ad.body)ad.transformFlags=1;else{let dm=fO(ad.modifiers)&1024,rv=!!ad.asteriskToken,nv=dm&&rv;ad.transformFlags=qA(ad.modifiers)|$o(ad.asteriskToken)|pO(ad.name)|$o(ad.questionToken)|qA(ad.typeParameters)|qA(ad.parameters)|$o(ad.type)|$o(ad.body)&-67108865|(nv?128:dm?256:rv?2048:0)|(ad.questionToken||ad.typeParameters||ad.type?1:0)|1024}return ad.typeArguments=void 0,ad.jsDoc=void 0,ad.locals=void 0,ad.nextContainer=void 0,ad.flowNode=void 0,ad.endFlowNode=void 0,ad.returnFlowNode=void 0,ad}function Qi(z,ye,Ve,Ct,wr,ai,Lo,Hc,ad){return z.modifiers!==ye||z.asteriskToken!==Ve||z.name!==Ct||z.questionToken!==wr||z.typeParameters!==ai||z.parameters!==Lo||z.type!==Hc||z.body!==ad?ps(Or(ye,Ve,Ct,wr,ai,Lo,Hc,ad),z):z}function ps(z,ye){return z!==ye&&(z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function yo(z){let ye=ce(175);return ye.body=z,ye.transformFlags=$o(z)|16777216,ye.modifiers=void 0,ye.jsDoc=void 0,ye.locals=void 0,ye.nextContainer=void 0,ye.endFlowNode=void 0,ye.returnFlowNode=void 0,ye}function bo(z,ye){return z.body!==ye?Qa(yo(ye),z):z}function Qa(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function gc(z,ye,Ve){let Ct=ce(176);return Ct.modifiers=IA(z),Ct.parameters=ae(ye),Ct.body=Ve,Ct.body?Ct.transformFlags=qA(Ct.modifiers)|qA(Ct.parameters)|$o(Ct.body)&-67108865|1024:Ct.transformFlags=1,Ct.typeParameters=void 0,Ct.type=void 0,Ct.typeArguments=void 0,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.endFlowNode=void 0,Ct.returnFlowNode=void 0,Ct}function Cg(z,ye,Ve,Ct){return z.modifiers!==ye||z.parameters!==Ve||z.body!==Ct?Nc(gc(ye,Ve,Ct),z):z}function Nc(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function iA(z,ye,Ve,Ct,wr){let ai=ce(177);return ai.modifiers=IA(z),ai.name=EI(ye),ai.parameters=ae(Ve),ai.type=Ct,ai.body=wr,ai.body?ai.transformFlags=qA(ai.modifiers)|pO(ai.name)|qA(ai.parameters)|$o(ai.type)|$o(ai.body)&-67108865|(ai.type?1:0):ai.transformFlags=1,ai.typeArguments=void 0,ai.typeParameters=void 0,ai.jsDoc=void 0,ai.locals=void 0,ai.nextContainer=void 0,ai.flowNode=void 0,ai.endFlowNode=void 0,ai.returnFlowNode=void 0,ai}function ma(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.parameters!==Ct||z.type!==wr||z.body!==ai?vu(iA(ye,Ve,Ct,wr,ai),z):z}function vu(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters),fe(z,ye)}function li(z,ye,Ve,Ct){let wr=ce(178);return wr.modifiers=IA(z),wr.name=EI(ye),wr.parameters=ae(Ve),wr.body=Ct,wr.body?wr.transformFlags=qA(wr.modifiers)|pO(wr.name)|qA(wr.parameters)|$o(wr.body)&-67108865|(wr.type?1:0):wr.transformFlags=1,wr.typeArguments=void 0,wr.typeParameters=void 0,wr.type=void 0,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr.endFlowNode=void 0,wr.returnFlowNode=void 0,wr}function Ei(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.parameters!==Ct||z.body!==wr?Ps(li(ye,Ve,Ct,wr),z):z}function Ps(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function Xa(z,ye,Ve){let Ct=ce(179);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function ac(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?fe(Xa(ye,Ve,Ct),z):z}function Yl(z,ye,Ve){let Ct=ce(180);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Wc(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?fe(Yl(ye,Ve,Ct),z):z}function Sg(z,ye,Ve){let Ct=ce(181);return Ct.modifiers=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Ul(z,ye,Ve,Ct){return z.parameters!==Ve||z.type!==Ct||z.modifiers!==ye?fe(Sg(ye,Ve,Ct),z):z}function Xu(z,ye){let Ve=ne(204);return Ve.type=z,Ve.literal=ye,Ve.transformFlags=1,Ve}function Da(z,ye,Ve){return z.type!==ye||z.literal!==Ve?Eo(Xu(ye,Ve),z):z}function pu(z){return Xt(z)}function _g(z,ye,Ve){let Ct=ne(182);return Ct.assertsModifier=z,Ct.parameterName=EI(ye),Ct.type=Ve,Ct.transformFlags=1,Ct}function mI(z,ye,Ve,Ct){return z.assertsModifier!==ye||z.parameterName!==Ve||z.type!==Ct?Eo(_g(ye,Ve,Ct),z):z}function Qh(z,ye){let Ve=ne(183);return Ve.typeName=EI(z),Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ae(ye)),Ve.transformFlags=1,Ve}function Ri(z,ye,Ve){return z.typeName!==ye||z.typeArguments!==Ve?Eo(Qh(ye,Ve),z):z}function Do(z,ye,Ve){let Ct=ce(184);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.modifiers=void 0,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Wt(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?Hu(Do(ye,Ve,Ct),z):z}function Hu(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ru(...z){return z.length===4?Vs(...z):z.length===3?Ju(...z):Zo.fail("Incorrect number of arguments specified.")}function Vs(z,ye,Ve,Ct){let wr=ce(185);return wr.modifiers=IA(z),wr.typeParameters=IA(ye),wr.parameters=IA(Ve),wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.typeArguments=void 0,wr}function Ju(z,ye,Ve){return Vs(void 0,z,ye,Ve)}function Yn(...z){return z.length===5?Ko(...z):z.length===4?Eg(...z):Zo.fail("Incorrect number of arguments specified.")}function Ko(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.typeParameters!==Ve||z.parameters!==Ct||z.type!==wr?fe(Ru(ye,Ve,Ct,wr),z):z}function Eg(z,ye,Ve,Ct){return Ko(z,z.modifiers,ye,Ve,Ct)}function OA(z,ye){let Ve=ne(186);return Ve.exprName=z,Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ye),Ve.transformFlags=1,Ve}function GA(z,ye,Ve){return z.exprName!==ye||z.typeArguments!==Ve?Eo(OA(ye,Ve),z):z}function $i(z){let ye=ce(187);return ye.members=ae(z),ye.transformFlags=1,ye}function dl(z,ye){return z.members!==ye?Eo($i(ye),z):z}function Uf(z){let ye=ne(188);return ye.elementType=n().parenthesizeNonArrayTypeOfPostfixType(z),ye.transformFlags=1,ye}function Kd(z,ye){return z.elementType!==ye?Eo(Uf(ye),z):z}function oA(z){let ye=ne(189);return ye.elements=ae(n().parenthesizeElementTypesOfTupleType(z)),ye.transformFlags=1,ye}function oo(z,ye){return z.elements!==ye?Eo(oA(ye),z):z}function Ki(z,ye,Ve,Ct){let wr=ce(202);return wr.dotDotDotToken=z,wr.name=ye,wr.questionToken=Ve,wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr}function cc(z,ye,Ve,Ct,wr){return z.dotDotDotToken!==ye||z.name!==Ve||z.questionToken!==Ct||z.type!==wr?Eo(Ki(ye,Ve,Ct,wr),z):z}function Xs(z){let ye=ne(190);return ye.type=n().parenthesizeTypeOfOptionalType(z),ye.transformFlags=1,ye}function ws(z,ye){return z.type!==ye?Eo(Xs(ye),z):z}function Gs(z){let ye=ne(191);return ye.type=z,ye.transformFlags=1,ye}function Ma(z,ye){return z.type!==ye?Eo(Gs(ye),z):z}function Dc(z,ye,Ve){let Ct=ne(z);return Ct.types=X.createNodeArray(Ve(ye)),Ct.transformFlags=1,Ct}function As(z,ye,Ve){return z.types!==ye?Eo(Dc(z.kind,ye,Ve),z):z}function Tf(z){return Dc(192,z,n().parenthesizeConstituentTypesOfUnionType)}function cm(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfUnionType)}function Fl(z){return Dc(193,z,n().parenthesizeConstituentTypesOfIntersectionType)}function rc(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfIntersectionType)}function sd(z,ye,Ve,Ct){let wr=ne(194);return wr.checkType=n().parenthesizeCheckTypeOfConditionalType(z),wr.extendsType=n().parenthesizeExtendsTypeOfConditionalType(ye),wr.trueType=Ve,wr.falseType=Ct,wr.transformFlags=1,wr.locals=void 0,wr.nextContainer=void 0,wr}function Om(z,ye,Ve,Ct,wr){return z.checkType!==ye||z.extendsType!==Ve||z.trueType!==Ct||z.falseType!==wr?Eo(sd(ye,Ve,Ct,wr),z):z}function il(z){let ye=ne(195);return ye.typeParameter=z,ye.transformFlags=1,ye}function FA(z,ye){return z.typeParameter!==ye?Eo(il(ye),z):z}function ZA(z,ye){let Ve=ne(203);return Ve.head=z,Ve.templateSpans=ae(ye),Ve.transformFlags=1,Ve}function El(z,ye,Ve){return z.head!==ye||z.templateSpans!==Ve?Eo(ZA(ye,Ve),z):z}function yg(z,ye,Ve,Ct,wr=!1){let ai=ne(205);return ai.argument=z,ai.attributes=ye,ai.assertions&&ai.assertions.assertClause&&ai.attributes&&(ai.assertions.assertClause=ai.attributes),ai.qualifier=Ve,ai.typeArguments=Ct&&n().parenthesizeTypeArguments(Ct),ai.isTypeOf=wr,ai.transformFlags=1,ai}function Mp(z,ye,Ve,Ct,wr,ai=z.isTypeOf){return z.argument!==ye||z.attributes!==Ve||z.qualifier!==Ct||z.typeArguments!==wr||z.isTypeOf!==ai?Eo(yg(ye,Ve,Ct,wr,ai),z):z}function MA(z){let ye=ne(196);return ye.type=z,ye.transformFlags=1,ye}function Er(z,ye){return z.type!==ye?Eo(MA(ye),z):z}function Zt(){let z=ne(197);return z.transformFlags=1,z}function bn(z,ye){let Ve=ne(198);return Ve.operator=z,Ve.type=z===148?n().parenthesizeOperandOfReadonlyTypeOperator(ye):n().parenthesizeOperandOfTypeOperator(ye),Ve.transformFlags=1,Ve}function ls(z,ye){return z.type!==ye?Eo(bn(z.operator,ye),z):z}function oa(z,ye){let Ve=ne(199);return Ve.objectType=n().parenthesizeNonArrayTypeOfPostfixType(z),Ve.indexType=ye,Ve.transformFlags=1,Ve}function Fs(z,ye,Ve){return z.objectType!==ye||z.indexType!==Ve?Eo(oa(ye,Ve),z):z}function Wa(z,ye,Ve,Ct,wr,ai){let Lo=ce(200);return Lo.readonlyToken=z,Lo.typeParameter=ye,Lo.nameType=Ve,Lo.questionToken=Ct,Lo.type=wr,Lo.members=ai&&ae(ai),Lo.transformFlags=1,Lo.locals=void 0,Lo.nextContainer=void 0,Lo}function Ca(z,ye,Ve,Ct,wr,ai,Lo){return z.readonlyToken!==ye||z.typeParameter!==Ve||z.nameType!==Ct||z.questionToken!==wr||z.type!==ai||z.members!==Lo?Eo(Wa(ye,Ve,Ct,wr,ai,Lo),z):z}function ld(z){let ye=ne(201);return ye.literal=z,ye.transformFlags=1,ye}function Rp(z,ye){return z.literal!==ye?Eo(ld(ye),z):z}function np(z){let ye=ne(206);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements)|1024|524288,ye.transformFlags&32768&&(ye.transformFlags|=65664),ye}function HA(z,ye){return z.elements!==ye?Eo(np(ye),z):z}function df(z){let ye=ne(207);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements)|1024|524288,ye}function Zs(z,ye){return z.elements!==ye?Eo(df(ye),z):z}function so(z,ye,Ve,Ct){let wr=ce(208);return wr.dotDotDotToken=z,wr.propertyName=EI(ye),wr.name=EI(Ve),wr.initializer=wA(Ct),wr.transformFlags|=$o(wr.dotDotDotToken)|pO(wr.propertyName)|pO(wr.name)|$o(wr.initializer)|(wr.dotDotDotToken?32768:0)|1024,wr.flowNode=void 0,wr}function Ea(z,ye,Ve,Ct,wr){return z.propertyName!==Ve||z.dotDotDotToken!==ye||z.name!==Ct||z.initializer!==wr?Eo(so(ye,Ve,Ct,wr),z):z}function Ml(z,ye){let Ve=ne(209),Ct=z&&Pme(z),wr=ae(z,Ct&&Oec(Ct)?!0:void 0);return Ve.elements=n().parenthesizeExpressionsOfCommaDelimitedList(wr),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.elements),Ve}function Dr(z,ye){return z.elements!==ye?Eo(Ml(ye,z.multiLine),z):z}function Wn(z,ye){let Ve=ce(210);return Ve.properties=ae(z),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.properties),Ve.jsDoc=void 0,Ve}function di(z,ye){return z.properties!==ye?Eo(Wn(ye,z.multiLine),z):z}function aa(z,ye,Ve){let Ct=ce(211);return Ct.expression=z,Ct.questionDotToken=ye,Ct.name=Ve,Ct.transformFlags=$o(Ct.expression)|$o(Ct.questionDotToken)|($C(Ct.name)?yNe(Ct.name):$o(Ct.name)|536870912),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function Bo(z,ye){let Ve=aa(n().parenthesizeLeftSideOfAccess(z,!1),void 0,EI(ye));return iNr(z)&&(Ve.transformFlags|=384),Ve}function us(z,ye,Ve){return qza(z)?LA(z,ye,z.questionDotToken,Aj(Ve,$C)):z.expression!==ye||z.name!==Ve?Eo(Bo(ye,Ve),z):z}function Ql(z,ye,Ve){let Ct=aa(n().parenthesizeLeftSideOfAccess(z,!0),ye,EI(Ve));return Ct.flags|=64,Ct.transformFlags|=32,Ct}function LA(z,ye,Ve,Ct){return Zo.assert(!!(z.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),z.expression!==ye||z.questionDotToken!==Ve||z.name!==Ct?Eo(Ql(ye,Ve,Ct),z):z}function pf(z,ye,Ve){let Ct=ce(212);return Ct.expression=z,Ct.questionDotToken=ye,Ct.argumentExpression=Ve,Ct.transformFlags|=$o(Ct.expression)|$o(Ct.questionDotToken)|$o(Ct.argumentExpression),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function ef(z,ye){let Ve=pf(n().parenthesizeLeftSideOfAccess(z,!1),void 0,zd(ye));return iNr(z)&&(Ve.transformFlags|=384),Ve}function ip(z,ye,Ve){return $za(z)?j1(z,ye,z.questionDotToken,Ve):z.expression!==ye||z.argumentExpression!==Ve?Eo(ef(ye,Ve),z):z}function _d(z,ye,Ve){let Ct=pf(n().parenthesizeLeftSideOfAccess(z,!0),ye,zd(Ve));return Ct.flags|=64,Ct.transformFlags|=32,Ct}function j1(z,ye,Ve,Ct){return Zo.assert(!!(z.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),z.expression!==ye||z.questionDotToken!==Ve||z.argumentExpression!==Ct?Eo(_d(ye,Ve,Ct),z):z}function pw(z,ye,Ve,Ct){let wr=ce(213);return wr.expression=z,wr.questionDotToken=ye,wr.typeArguments=Ve,wr.arguments=Ct,wr.transformFlags|=$o(wr.expression)|$o(wr.questionDotToken)|qA(wr.typeArguments)|qA(wr.arguments),wr.typeArguments&&(wr.transformFlags|=1),aSi(wr.expression)&&(wr.transformFlags|=16384),wr}function YA(z,ye,Ve){let Ct=pw(n().parenthesizeLeftSideOfAccess(z,!1),void 0,IA(ye),n().parenthesizeExpressionsOfCommaDelimitedList(ae(Ve)));return uec(Ct.expression)&&(Ct.transformFlags|=8388608),Ct}function Ac(z,ye,Ve,Ct){return eSi(z)?HS(z,ye,z.questionDotToken,Ve,Ct):z.expression!==ye||z.typeArguments!==Ve||z.arguments!==Ct?Eo(YA(ye,Ve,Ct),z):z}function Nm(z,ye,Ve,Ct){let wr=pw(n().parenthesizeLeftSideOfAccess(z,!0),ye,IA(Ve),n().parenthesizeExpressionsOfCommaDelimitedList(ae(Ct)));return wr.flags|=64,wr.transformFlags|=32,wr}function HS(z,ye,Ve,Ct,wr){return Zo.assert(!!(z.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),z.expression!==ye||z.questionDotToken!==Ve||z.typeArguments!==Ct||z.arguments!==wr?Eo(Nm(ye,Ve,Ct,wr),z):z}function jd(z,ye,Ve){let Ct=ce(214);return Ct.expression=n().parenthesizeExpressionOfNew(z),Ct.typeArguments=IA(ye),Ct.arguments=Ve?n().parenthesizeExpressionsOfCommaDelimitedList(Ve):void 0,Ct.transformFlags|=$o(Ct.expression)|qA(Ct.typeArguments)|qA(Ct.arguments)|32,Ct.typeArguments&&(Ct.transformFlags|=1),Ct}function dh(z,ye,Ve,Ct){return z.expression!==ye||z.typeArguments!==Ve||z.arguments!==Ct?Eo(jd(ye,Ve,Ct),z):z}function Hp(z,ye,Ve){let Ct=ne(215);return Ct.tag=n().parenthesizeLeftSideOfAccess(z,!1),Ct.typeArguments=IA(ye),Ct.template=Ve,Ct.transformFlags|=$o(Ct.tag)|qA(Ct.typeArguments)|$o(Ct.template)|1024,Ct.typeArguments&&(Ct.transformFlags|=1),o$a(Ct.template)&&(Ct.transformFlags|=128),Ct}function uC(z,ye,Ve,Ct){return z.tag!==ye||z.typeArguments!==Ve||z.template!==Ct?Eo(Hp(ye,Ve,Ct),z):z}function nE(z,ye){let Ve=ne(216);return Ve.expression=n().parenthesizeOperandOfPrefixUnary(ye),Ve.type=z,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function J_(z,ye,Ve){return z.type!==ye||z.expression!==Ve?Eo(nE(ye,Ve),z):z}function q0(z){let ye=ne(217);return ye.expression=z,ye.transformFlags=$o(ye.expression),ye.jsDoc=void 0,ye}function XE(z,ye){return z.expression!==ye?Eo(q0(ye),z):z}function TC(z,ye,Ve,Ct,wr,ai,Lo){let Hc=ce(218);Hc.modifiers=IA(z),Hc.asteriskToken=ye,Hc.name=EI(Ve),Hc.typeParameters=IA(Ct),Hc.parameters=ae(wr),Hc.type=ai,Hc.body=Lo;let ad=fO(Hc.modifiers)&1024,dm=!!Hc.asteriskToken,rv=ad&&dm;return Hc.transformFlags=qA(Hc.modifiers)|$o(Hc.asteriskToken)|pO(Hc.name)|qA(Hc.typeParameters)|qA(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(rv?128:ad?256:dm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304,Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.flowNode=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function t_(z,ye,Ve,Ct,wr,ai,Lo,Hc){return z.name!==Ct||z.modifiers!==ye||z.asteriskToken!==Ve||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?fe(TC(ye,Ve,Ct,wr,ai,Lo,Hc),z):z}function cp(z,ye,Ve,Ct,wr,ai){let Lo=ce(219);Lo.modifiers=IA(z),Lo.typeParameters=IA(ye),Lo.parameters=ae(Ve),Lo.type=Ct,Lo.equalsGreaterThanToken=wr??Xt(39),Lo.body=n().parenthesizeConciseBodyOfArrowFunction(ai);let Hc=fO(Lo.modifiers)&1024;return Lo.transformFlags=qA(Lo.modifiers)|qA(Lo.typeParameters)|qA(Lo.parameters)|$o(Lo.type)|$o(Lo.equalsGreaterThanToken)|$o(Lo.body)&-67108865|(Lo.typeParameters||Lo.type?1:0)|(Hc?16640:0)|1024,Lo.typeArguments=void 0,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.flowNode=void 0,Lo.endFlowNode=void 0,Lo.returnFlowNode=void 0,Lo}function Mm(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.typeParameters!==Ve||z.parameters!==Ct||z.type!==wr||z.equalsGreaterThanToken!==ai||z.body!==Lo?fe(cp(ye,Ve,Ct,wr,ai,Lo),z):z}function fb(z){let ye=ne(220);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function pe(z,ye){return z.expression!==ye?Eo(fb(ye),z):z}function lm(z){let ye=ne(221);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function Kf(z,ye){return z.expression!==ye?Eo(lm(ye),z):z}function CI(z){let ye=ne(222);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function _I(z,ye){return z.expression!==ye?Eo(CI(ye),z):z}function H2(z){let ye=ne(223);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression)|256|128|2097152,ye}function iE(z,ye){return z.expression!==ye?Eo(H2(ye),z):z}function se(z,ye){let Ve=ne(224);return Ve.operator=z,Ve.operand=n().parenthesizeOperandOfPrefixUnary(ye),Ve.transformFlags|=$o(Ve.operand),(z===46||z===47)&&$C(Ve.operand)&&!BNe(Ve.operand)&&!_Si(Ve.operand)&&(Ve.transformFlags|=268435456),Ve}function O(z,ye){return z.operand!==ye?Eo(se(z.operator,ye),z):z}function K(z,ye){let Ve=ne(225);return Ve.operator=ye,Ve.operand=n().parenthesizeOperandOfPostfixUnary(z),Ve.transformFlags|=$o(Ve.operand),$C(Ve.operand)&&!BNe(Ve.operand)&&!_Si(Ve.operand)&&(Ve.transformFlags|=268435456),Ve}function we(z,ye){return z.operand!==ye?Eo(K(ye,z.operator),z):z}function gt(z,ye,Ve){let Ct=ce(226),wr=qR(ye),ai=wr.kind;return Ct.left=n().parenthesizeLeftSideOfBinary(ai,z),Ct.operatorToken=wr,Ct.right=n().parenthesizeRightSideOfBinary(ai,Ct.left,Ve),Ct.transformFlags|=$o(Ct.left)|$o(Ct.operatorToken)|$o(Ct.right),ai===61?Ct.transformFlags|=32:ai===64?bBi(Ct.left)?Ct.transformFlags|=5248|sr(Ct.left):Zec(Ct.left)&&(Ct.transformFlags|=5120|sr(Ct.left)):ai===43||ai===68?Ct.transformFlags|=512:h$a(ai)&&(Ct.transformFlags|=16),ai===103&&Qme(Ct.left)&&(Ct.transformFlags|=536870912),Ct.jsDoc=void 0,Ct}function sr(z){return WBi(z)?65536:0}function Yr(z,ye,Ve,Ct){return z.left!==ye||z.operatorToken!==Ve||z.right!==Ct?Eo(gt(ye,Ve,Ct),z):z}function Lr(z,ye,Ve,Ct,wr){let ai=ne(227);return ai.condition=n().parenthesizeConditionOfConditionalExpression(z),ai.questionToken=ye??Xt(58),ai.whenTrue=n().parenthesizeBranchOfConditionalExpression(Ve),ai.colonToken=Ct??Xt(59),ai.whenFalse=n().parenthesizeBranchOfConditionalExpression(wr),ai.transformFlags|=$o(ai.condition)|$o(ai.questionToken)|$o(ai.whenTrue)|$o(ai.colonToken)|$o(ai.whenFalse),ai}function fi(z,ye,Ve,Ct,wr,ai){return z.condition!==ye||z.questionToken!==Ve||z.whenTrue!==Ct||z.colonToken!==wr||z.whenFalse!==ai?Eo(Lr(ye,Ve,Ct,wr,ai),z):z}function $n(z,ye){let Ve=ne(228);return Ve.head=z,Ve.templateSpans=ae(ye),Ve.transformFlags|=$o(Ve.head)|qA(Ve.templateSpans)|1024,Ve}function ra(z,ye,Ve){return z.head!==ye||z.templateSpans!==Ve?Eo($n(ye,Ve),z):z}function kc(z,ye,Ve,Ct=0){Zo.assert(!(Ct&-7177),"Unsupported template flags.");let wr;if(Ve!==void 0&&Ve!==ye&&(wr=$$a(z,Ve),typeof wr=="object"))return Zo.fail("Invalid raw text");if(ye===void 0){if(wr===void 0)return Zo.fail("Arguments 'text' and 'rawText' may not both be undefined.");ye=wr}else wr!==void 0&&Zo.assert(ye===wr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return ye}function Nl(z){let ye=1024;return z&&(ye|=128),ye}function ca(z,ye,Ve,Ct){let wr=qt(z);return wr.text=ye,wr.rawText=Ve,wr.templateFlags=Ct&7176,wr.transformFlags=Nl(wr.templateFlags),wr}function Bl(z,ye,Ve,Ct){let wr=ce(z);return wr.text=ye,wr.rawText=Ve,wr.templateFlags=Ct&7176,wr.transformFlags=Nl(wr.templateFlags),wr}function $g(z,ye,Ve,Ct){return z===15?Bl(z,ye,Ve,Ct):ca(z,ye,Ve,Ct)}function SA(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(16,z,ye,Ve)}function lI(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(17,z,ye,Ve)}function lp(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(18,z,ye,Ve)}function Ib(z,ye,Ve){return z=kc(16,z,ye,Ve),Bl(15,z,ye,Ve)}function Na(z,ye){Zo.assert(!z||!!ye,"A `YieldExpression` with an asteriskToken must have an expression.");let Ve=ne(229);return Ve.expression=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.asteriskToken=z,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.asteriskToken)|1024|128|1048576,Ve}function wd(z,ye,Ve){return z.expression!==Ve||z.asteriskToken!==ye?Eo(Na(ye,Ve),z):z}function z1(z){let ye=ne(230);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|1024|32768,ye}function T_(z,ye){return z.expression!==ye?Eo(z1(ye),z):z}function RC(z,ye,Ve,Ct,wr){let ai=ce(231);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),ai.transformFlags|=qA(ai.modifiers)|pO(ai.name)|qA(ai.typeParameters)|qA(ai.heritageClauses)|qA(ai.members)|(ai.typeParameters?1:0)|1024,ai.jsDoc=void 0,ai}function Hm(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(RC(ye,Ve,Ct,wr,ai),z):z}function YS(){return ne(232)}function Fg(z,ye){let Ve=ne(233);return Ve.expression=n().parenthesizeLeftSideOfAccess(z,!1),Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ye),Ve.transformFlags|=$o(Ve.expression)|qA(Ve.typeArguments)|1024,Ve}function hb(z,ye,Ve){return z.expression!==ye||z.typeArguments!==Ve?Eo(Fg(ye,Ve),z):z}function gC(z,ye){let Ve=ne(234);return Ve.expression=z,Ve.type=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function NC(z,ye,Ve){return z.expression!==ye||z.type!==Ve?Eo(gC(ye,Ve),z):z}function Y2(z){let ye=ne(235);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1,ye}function U_(z,ye){return eqa(z)?ph(z,ye):z.expression!==ye?Eo(Y2(ye),z):z}function DC(z,ye){let Ve=ne(238);return Ve.expression=z,Ve.type=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function kC(z,ye,Ve){return z.expression!==ye||z.type!==Ve?Eo(DC(ye,Ve),z):z}function qI(z){let ye=ne(235);return ye.flags|=64,ye.expression=n().parenthesizeLeftSideOfAccess(z,!0),ye.transformFlags|=$o(ye.expression)|1,ye}function ph(z,ye){return Zo.assert(!!(z.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),z.expression!==ye?Eo(qI(ye),z):z}function vA(z,ye){let Ve=ne(236);switch(Ve.keywordToken=z,Ve.name=ye,Ve.transformFlags|=$o(Ve.name),z){case 105:Ve.transformFlags|=1024;break;case 102:Ve.transformFlags|=32;break;default:return Zo.assertNever(z)}return Ve.flowNode=void 0,Ve}function Td(z,ye){return z.name!==ye?Eo(vA(z.keywordToken,ye),z):z}function Mc(z,ye){let Ve=ne(239);return Ve.expression=z,Ve.literal=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.literal)|1024,Ve}function Pf(z,ye,Ve){return z.expression!==ye||z.literal!==Ve?Eo(Mc(ye,Ve),z):z}function sE(){let z=ne(240);return z.transformFlags|=1024,z}function eA(z,ye){let Ve=ne(241);return Ve.statements=ae(z),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.statements),Ve.jsDoc=void 0,Ve.locals=void 0,Ve.nextContainer=void 0,Ve}function QS(z,ye){return z.statements!==ye?Eo(eA(ye,z.multiLine),z):z}function XS(z,ye){let Ve=ne(243);return Ve.modifiers=IA(z),Ve.declarationList=Ree(ye)?Th(ye):ye,Ve.transformFlags|=qA(Ve.modifiers)|$o(Ve.declarationList),fO(Ve.modifiers)&128&&(Ve.transformFlags=1),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function um(z,ye,Ve){return z.modifiers!==ye||z.declarationList!==Ve?Eo(XS(ye,Ve),z):z}function gm(){let z=ne(242);return z.jsDoc=void 0,z}function cs(z){let ye=ne(244);return ye.expression=n().parenthesizeExpressionOfExpressionStatement(z),ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function na(z,ye){return z.expression!==ye?Eo(cs(ye),z):z}function ko(z,ye,Ve){let Ct=ne(245);return Ct.expression=z,Ct.thenStatement=sy(ye),Ct.elseStatement=sy(Ve),Ct.transformFlags|=$o(Ct.expression)|$o(Ct.thenStatement)|$o(Ct.elseStatement),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function ki(z,ye,Ve,Ct){return z.expression!==ye||z.thenStatement!==Ve||z.elseStatement!==Ct?Eo(ko(ye,Ve,Ct),z):z}function Kl(z,ye){let Ve=ne(246);return Ve.statement=sy(z),Ve.expression=ye,Ve.transformFlags|=$o(Ve.statement)|$o(Ve.expression),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function fd(z,ye,Ve){return z.statement!==ye||z.expression!==Ve?Eo(Kl(ye,Ve),z):z}function jf(z,ye){let Ve=ne(247);return Ve.expression=z,Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.expression)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Ld(z,ye,Ve){return z.expression!==ye||z.statement!==Ve?Eo(jf(ye,Ve),z):z}function AC(z,ye,Ve,Ct){let wr=ne(248);return wr.initializer=z,wr.condition=ye,wr.incrementor=Ve,wr.statement=sy(Ct),wr.transformFlags|=$o(wr.initializer)|$o(wr.condition)|$o(wr.incrementor)|$o(wr.statement),wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr}function JE(z,ye,Ve,Ct,wr){return z.initializer!==ye||z.condition!==Ve||z.incrementor!==Ct||z.statement!==wr?Eo(AC(ye,Ve,Ct,wr),z):z}function Ym(z,ye,Ve){let Ct=ne(249);return Ct.initializer=z,Ct.expression=ye,Ct.statement=sy(Ve),Ct.transformFlags|=$o(Ct.initializer)|$o(Ct.expression)|$o(Ct.statement),Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.flowNode=void 0,Ct}function vy(z,ye,Ve,Ct){return z.initializer!==ye||z.expression!==Ve||z.statement!==Ct?Eo(Ym(ye,Ve,Ct),z):z}function K_(z,ye,Ve,Ct){let wr=ne(250);return wr.awaitModifier=z,wr.initializer=ye,wr.expression=n().parenthesizeExpressionForDisallowedComma(Ve),wr.statement=sy(Ct),wr.transformFlags|=$o(wr.awaitModifier)|$o(wr.initializer)|$o(wr.expression)|$o(wr.statement)|1024,z&&(wr.transformFlags|=128),wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr}function od(z,ye,Ve,Ct,wr){return z.awaitModifier!==ye||z.initializer!==Ve||z.expression!==Ct||z.statement!==wr?Eo(K_(ye,Ve,Ct,wr),z):z}function UE(z){let ye=ne(251);return ye.label=EI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function KE(z,ye){return z.label!==ye?Eo(UE(ye),z):z}function Yp(z){let ye=ne(252);return ye.label=EI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function JS(z,ye){return z.label!==ye?Eo(Yp(ye),z):z}function By(z){let ye=ne(253);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|128|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function $0(z,ye){return z.expression!==ye?Eo(By(ye),z):z}function fw(z,ye){let Ve=ne(254);return Ve.expression=z,Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.expression)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Q2(z,ye,Ve){return z.expression!==ye||z.statement!==Ve?Eo(fw(ye,Ve),z):z}function xc(z,ye){let Ve=ne(255);return Ve.expression=n().parenthesizeExpressionForDisallowedComma(z),Ve.caseBlock=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.caseBlock),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve.possiblyExhaustive=!1,Ve}function ut(z,ye,Ve){return z.expression!==ye||z.caseBlock!==Ve?Eo(xc(ye,Ve),z):z}function ar(z,ye){let Ve=ne(256);return Ve.label=EI(z),Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.label)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Jr(z,ye,Ve){return z.label!==ye||z.statement!==Ve?Eo(ar(ye,Ve),z):z}function Gn(z){let ye=ne(257);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function Ts(z,ye){return z.expression!==ye?Eo(Gn(ye),z):z}function Qo(z,ye,Ve){let Ct=ne(258);return Ct.tryBlock=z,Ct.catchClause=ye,Ct.finallyBlock=Ve,Ct.transformFlags|=$o(Ct.tryBlock)|$o(Ct.catchClause)|$o(Ct.finallyBlock),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function vg(z,ye,Ve,Ct){return z.tryBlock!==ye||z.catchClause!==Ve||z.finallyBlock!==Ct?Eo(Qo(ye,Ve,Ct),z):z}function Ng(){let z=ne(259);return z.jsDoc=void 0,z.flowNode=void 0,z}function Rf(z,ye,Ve,Ct){let wr=ce(260);return wr.name=EI(z),wr.exclamationToken=ye,wr.type=Ve,wr.initializer=wA(Ct),wr.transformFlags|=pO(wr.name)|$o(wr.initializer)|(wr.exclamationToken??wr.type?1:0),wr.jsDoc=void 0,wr}function uI(z,ye,Ve,Ct,wr){return z.name!==ye||z.type!==Ct||z.exclamationToken!==Ve||z.initializer!==wr?Eo(Rf(ye,Ve,Ct,wr),z):z}function Th(z,ye=0){let Ve=ne(261);return Ve.flags|=ye&7,Ve.declarations=ae(z),Ve.transformFlags|=qA(Ve.declarations)|4194304,ye&7&&(Ve.transformFlags|=263168),ye&4&&(Ve.transformFlags|=4),Ve}function oE(z,ye){return z.declarations!==ye?Eo(Th(ye,z.flags),z):z}function TT(z,ye,Ve,Ct,wr,ai,Lo){let Hc=ce(262);if(Hc.modifiers=IA(z),Hc.asteriskToken=ye,Hc.name=EI(Ve),Hc.typeParameters=IA(Ct),Hc.parameters=ae(wr),Hc.type=ai,Hc.body=Lo,!Hc.body||fO(Hc.modifiers)&128)Hc.transformFlags=1;else{let ad=fO(Hc.modifiers)&1024,dm=!!Hc.asteriskToken,rv=ad&&dm;Hc.transformFlags=qA(Hc.modifiers)|$o(Hc.asteriskToken)|pO(Hc.name)|qA(Hc.typeParameters)|qA(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(rv?128:ad?256:dm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304}return Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function sB(z,ye,Ve,Ct,wr,ai,Lo,Hc){return z.modifiers!==ye||z.asteriskToken!==Ve||z.name!==Ct||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?RT(TT(ye,Ve,Ct,wr,ai,Lo,Hc),z):z}function RT(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),fe(z,ye)}function wy(z,ye,Ve,Ct,wr){let ai=ce(263);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),fO(ai.modifiers)&128?ai.transformFlags=1:(ai.transformFlags|=qA(ai.modifiers)|pO(ai.name)|qA(ai.typeParameters)|qA(ai.heritageClauses)|qA(ai.members)|(ai.typeParameters?1:0)|1024,ai.transformFlags&8192&&(ai.transformFlags|=1)),ai.jsDoc=void 0,ai}function jE(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(wy(ye,Ve,Ct,wr,ai),z):z}function j_(z,ye,Ve,Ct,wr){let ai=ce(264);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),ai.transformFlags=1,ai.jsDoc=void 0,ai}function NT(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(j_(ye,Ve,Ct,wr,ai),z):z}function tf(z,ye,Ve,Ct){let wr=ce(265);return wr.modifiers=IA(z),wr.name=EI(ye),wr.typeParameters=IA(Ve),wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr}function Ty(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.type!==wr?Eo(tf(ye,Ve,Ct,wr),z):z}function US(z,ye,Ve){let Ct=ce(266);return Ct.modifiers=IA(z),Ct.name=EI(ye),Ct.members=ae(Ve),Ct.transformFlags|=qA(Ct.modifiers)|$o(Ct.name)|qA(Ct.members)|1,Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function $I(z,ye,Ve,Ct){return z.modifiers!==ye||z.name!==Ve||z.members!==Ct?Eo(US(ye,Ve,Ct),z):z}function BA(z,ye,Ve,Ct=0){let wr=ce(267);return wr.modifiers=IA(z),wr.flags|=Ct&2088,wr.name=ye,wr.body=Ve,fO(wr.modifiers)&128?wr.transformFlags=1:wr.transformFlags|=qA(wr.modifiers)|$o(wr.name)|$o(wr.body)|1,wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr}function $A(z,ye,Ve,Ct){return z.modifiers!==ye||z.name!==Ve||z.body!==Ct?Eo(BA(ye,Ve,Ct,z.flags),z):z}function Qm(z){let ye=ne(268);return ye.statements=ae(z),ye.transformFlags|=qA(ye.statements),ye.jsDoc=void 0,ye}function zf(z,ye){return z.statements!==ye?Eo(Qm(ye),z):z}function mb(z){let ye=ne(269);return ye.clauses=ae(z),ye.transformFlags|=qA(ye.clauses),ye.locals=void 0,ye.nextContainer=void 0,ye}function R_(z,ye){return z.clauses!==ye?Eo(mb(ye),z):z}function Cb(z){let ye=ce(270);return ye.name=EI(z),ye.transformFlags|=yNe(ye.name)|1,ye.modifiers=void 0,ye.jsDoc=void 0,ye}function Ry(z,ye){return z.name!==ye?KS(Cb(ye),z):z}function KS(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function _b(z,ye,Ve,Ct){let wr=ce(271);return wr.modifiers=IA(z),wr.name=EI(Ve),wr.isTypeOnly=ye,wr.moduleReference=Ct,wr.transformFlags|=qA(wr.modifiers)|yNe(wr.name)|$o(wr.moduleReference),GBi(wr.moduleReference)||(wr.transformFlags|=1),wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr}function z_(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.isTypeOnly!==Ve||z.name!==Ct||z.moduleReference!==wr?Eo(_b(ye,Ve,Ct,wr),z):z}function zE(z,ye,Ve,Ct){let wr=ne(272);return wr.modifiers=IA(z),wr.importClause=ye,wr.moduleSpecifier=Ve,wr.attributes=wr.assertClause=Ct,wr.transformFlags|=$o(wr.importClause)|$o(wr.moduleSpecifier),wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr}function oB(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.importClause!==Ve||z.moduleSpecifier!==Ct||z.attributes!==wr?Eo(zE(ye,Ve,Ct,wr),z):z}function DT(z,ye,Ve){let Ct=ce(273);return Ct.isTypeOnly=z,Ct.name=ye,Ct.namedBindings=Ve,Ct.transformFlags|=$o(Ct.name)|$o(Ct.namedBindings),z&&(Ct.transformFlags|=1),Ct.transformFlags&=-67108865,Ct}function aB(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.name!==Ve||z.namedBindings!==Ct?Eo(DT(ye,Ve,Ct),z):z}function jS(z,ye){let Ve=ne(300);return Ve.elements=ae(z),Ve.multiLine=ye,Ve.token=132,Ve.transformFlags|=4,Ve}function XR(z,ye,Ve){return z.elements!==ye||z.multiLine!==Ve?Eo(jS(ye,Ve),z):z}function zS(z,ye){let Ve=ne(301);return Ve.name=z,Ve.value=ye,Ve.transformFlags|=4,Ve}function qE(z,ye,Ve){return z.name!==ye||z.value!==Ve?Eo(zS(ye,Ve),z):z}function X2(z,ye){let Ve=ne(302);return Ve.assertClause=z,Ve.multiLine=ye,Ve}function kT(z,ye,Ve){return z.assertClause!==ye||z.multiLine!==Ve?Eo(X2(ye,Ve),z):z}function pn(z,ye,Ve){let Ct=ne(300);return Ct.token=Ve??118,Ct.elements=ae(z),Ct.multiLine=ye,Ct.transformFlags|=4,Ct}function q1(z,ye,Ve){return z.elements!==ye||z.multiLine!==Ve?Eo(pn(ye,Ve,z.token),z):z}function J2(z,ye){let Ve=ne(301);return Ve.name=z,Ve.value=ye,Ve.transformFlags|=4,Ve}function ey(z,ye,Ve){return z.name!==ye||z.value!==Ve?Eo(J2(ye,Ve),z):z}function up(z){let ye=ce(274);return ye.name=z,ye.transformFlags|=$o(ye.name),ye.transformFlags&=-67108865,ye}function Iw(z,ye){return z.name!==ye?Eo(up(ye),z):z}function cB(z){let ye=ce(280);return ye.name=z,ye.transformFlags|=$o(ye.name)|32,ye.transformFlags&=-67108865,ye}function RD(z,ye){return z.name!==ye?Eo(cB(ye),z):z}function Rd(z){let ye=ne(275);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements),ye.transformFlags&=-67108865,ye}function JR(z,ye){return z.elements!==ye?Eo(Rd(ye),z):z}function ty(z,ye,Ve){let Ct=ce(276);return Ct.isTypeOnly=z,Ct.propertyName=ye,Ct.name=Ve,Ct.transformFlags|=$o(Ct.propertyName)|$o(Ct.name),Ct.transformFlags&=-67108865,Ct}function cF(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.propertyName!==Ve||z.name!==Ct?Eo(ty(ye,Ve,Ct),z):z}function $1(z,ye,Ve){let Ct=ce(277);return Ct.modifiers=IA(z),Ct.isExportEquals=ye,Ct.expression=ye?n().parenthesizeRightSideOfBinary(64,void 0,Ve):n().parenthesizeExpressionOfExportDefault(Ve),Ct.transformFlags|=qA(Ct.modifiers)|$o(Ct.expression),Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function $E(z,ye,Ve){return z.modifiers!==ye||z.expression!==Ve?Eo($1(ye,z.isExportEquals,Ve),z):z}function N_(z,ye,Ve,Ct,wr){let ai=ce(278);return ai.modifiers=IA(z),ai.isTypeOnly=ye,ai.exportClause=Ve,ai.moduleSpecifier=Ct,ai.attributes=ai.assertClause=wr,ai.transformFlags|=qA(ai.modifiers)|$o(ai.exportClause)|$o(ai.moduleSpecifier),ai.transformFlags&=-67108865,ai.jsDoc=void 0,ai}function e1(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.isTypeOnly!==Ve||z.exportClause!==Ct||z.moduleSpecifier!==wr||z.attributes!==ai?t1(N_(ye,Ve,Ct,wr,ai),z):z}function t1(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),Eo(z,ye)}function ry(z){let ye=ne(279);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements),ye.transformFlags&=-67108865,ye}function xT(z,ye){return z.elements!==ye?Eo(ry(ye),z):z}function yb(z,ye,Ve){let Ct=ne(281);return Ct.isTypeOnly=z,Ct.propertyName=EI(ye),Ct.name=EI(Ve),Ct.transformFlags|=$o(Ct.propertyName)|$o(Ct.name),Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function r_(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.propertyName!==Ve||z.name!==Ct?Eo(yb(ye,Ve,Ct),z):z}function Rh(){let z=ce(282);return z.jsDoc=void 0,z}function bb(z){let ye=ne(283);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.transformFlags&=-67108865,ye}function lB(z,ye){return z.expression!==ye?Eo(bb(ye),z):z}function ND(z){return ne(z)}function DD(z,ye,Ve=!1){let Ct=q_(z,Ve?ye&&n().parenthesizeNonArrayTypeOfPostfixType(ye):ye);return Ct.postfix=Ve,Ct}function q_(z,ye){let Ve=ne(z);return Ve.type=ye,Ve}function kD(z,ye,Ve){return ye.type!==Ve?Eo(DD(z,Ve,ye.postfix),ye):ye}function UR(z,ye,Ve){return ye.type!==Ve?Eo(q_(z,Ve),ye):ye}function lc(z,ye){let Ve=ce(317);return Ve.parameters=IA(z),Ve.type=ye,Ve.transformFlags=qA(Ve.parameters)|(Ve.type?1:0),Ve.jsDoc=void 0,Ve.locals=void 0,Ve.nextContainer=void 0,Ve.typeArguments=void 0,Ve}function fh(z,ye,Ve){return z.parameters!==ye||z.type!==Ve?Eo(lc(ye,Ve),z):z}function rf(z,ye=!1){let Ve=ce(322);return Ve.jsDocPropertyTags=IA(z),Ve.isArrayType=ye,Ve}function yI(z,ye,Ve){return z.jsDocPropertyTags!==ye||z.isArrayType!==Ve?Eo(rf(ye,Ve),z):z}function aE(z){let ye=ne(309);return ye.type=z,ye}function qS(z,ye){return z.type!==ye?Eo(aE(ye),z):z}function Qp(z,ye,Ve){let Ct=ce(323);return Ct.typeParameters=IA(z),Ct.parameters=ae(ye),Ct.type=Ve,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct}function uB(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?Eo(Qp(ye,Ve,Ct),z):z}function Ih(z){let ye=Fbt(z.kind);return z.tagName.escapedText===CNe(ye)?z.tagName:je(ye)}function xC(z,ye,Ve){let Ct=ne(z);return Ct.tagName=ye,Ct.comment=Ve,Ct}function $_(z,ye,Ve){let Ct=ce(z);return Ct.tagName=ye,Ct.comment=Ve,Ct}function r1(z,ye,Ve,Ct){let wr=xC(345,z??je("template"),Ct);return wr.constraint=ye,wr.typeParameters=ae(Ve),wr}function gB(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.constraint!==Ve||z.typeParameters!==Ct||z.comment!==wr?Eo(r1(ye,Ve,Ct,wr),z):z}function hw(z,ye,Ve,Ct){let wr=$_(346,z??je("typedef"),Ct);return wr.typeExpression=ye,wr.fullName=Ve,wr.name=ySi(Ve),wr.locals=void 0,wr.nextContainer=void 0,wr}function GT(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.typeExpression!==Ve||z.fullName!==Ct||z.comment!==wr?Eo(hw(ye,Ve,Ct,wr),z):z}function b0(z,ye,Ve,Ct,wr,ai){let Lo=$_(341,z??je("param"),ai);return Lo.typeExpression=Ct,Lo.name=ye,Lo.isNameFirst=!!wr,Lo.isBracketed=Ve,Lo}function ia(z,ye=Ih(z),Ve,Ct,wr,ai,Lo){return z.tagName!==ye||z.name!==Ve||z.isBracketed!==Ct||z.typeExpression!==wr||z.isNameFirst!==ai||z.comment!==Lo?Eo(b0(ye,Ve,Ct,wr,ai,Lo),z):z}function e2(z,ye,Ve,Ct,wr,ai){let Lo=$_(348,z??je("prop"),ai);return Lo.typeExpression=Ct,Lo.name=ye,Lo.isNameFirst=!!wr,Lo.isBracketed=Ve,Lo}function yd(z,ye=Ih(z),Ve,Ct,wr,ai,Lo){return z.tagName!==ye||z.name!==Ve||z.isBracketed!==Ct||z.typeExpression!==wr||z.isNameFirst!==ai||z.comment!==Lo?Eo(e2(ye,Ve,Ct,wr,ai,Lo),z):z}function bI(z,ye,Ve,Ct){let wr=$_(338,z??je("callback"),Ct);return wr.typeExpression=ye,wr.fullName=Ve,wr.name=ySi(Ve),wr.locals=void 0,wr.nextContainer=void 0,wr}function ag(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.typeExpression!==Ve||z.fullName!==Ct||z.comment!==wr?Eo(bI(ye,Ve,Ct,wr),z):z}function Eb(z,ye,Ve){let Ct=xC(339,z??je("overload"),Ve);return Ct.typeExpression=ye,Ct}function n1(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.typeExpression!==Ve||z.comment!==Ct?Eo(Eb(ye,Ve,Ct),z):z}function U2(z,ye,Ve){let Ct=xC(328,z??je("augments"),Ve);return Ct.class=ye,Ct}function e0(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.class!==Ve||z.comment!==Ct?Eo(U2(ye,Ve,Ct),z):z}function n_(z,ye,Ve){let Ct=xC(329,z??je("implements"),Ve);return Ct.class=ye,Ct}function Xp(z,ye,Ve){let Ct=xC(347,z??je("see"),Ve);return Ct.name=ye,Ct}function cE(z,ye,Ve,Ct){return z.tagName!==ye||z.name!==Ve||z.comment!==Ct?Eo(Xp(ye,Ve,Ct),z):z}function lE(z){let ye=ne(310);return ye.name=z,ye}function Ip(z,ye){return z.name!==ye?Eo(lE(ye),z):z}function Xh(z,ye){let Ve=ne(311);return Ve.left=z,Ve.right=ye,Ve.transformFlags|=$o(Ve.left)|$o(Ve.right),Ve}function E0(z,ye,Ve){return z.left!==ye||z.right!==Ve?Eo(Xh(ye,Ve),z):z}function aA(z,ye){let Ve=ne(324);return Ve.name=z,Ve.text=ye,Ve}function fu(z,ye,Ve){return z.name!==ye?Eo(aA(ye,Ve),z):z}function Jp(z,ye){let Ve=ne(325);return Ve.name=z,Ve.text=ye,Ve}function dC(z,ye,Ve){return z.name!==ye?Eo(Jp(ye,Ve),z):z}function uE(z,ye){let Ve=ne(326);return Ve.name=z,Ve.text=ye,Ve}function eh(z,ye,Ve){return z.name!==ye?Eo(uE(ye,Ve),z):z}function Wf(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.class!==Ve||z.comment!==Ct?Eo(n_(ye,Ve,Ct),z):z}function Mo(z,ye,Ve){return xC(z,ye??je(Fbt(z)),Ve)}function gp(z,ye,Ve=Ih(ye),Ct){return ye.tagName!==Ve||ye.comment!==Ct?Eo(Mo(z,Ve,Ct),ye):ye}function lF(z,ye,Ve,Ct){let wr=xC(z,ye??je(Fbt(z)),Ct);return wr.typeExpression=Ve,wr}function uF(z,ye,Ve=Ih(ye),Ct,wr){return ye.tagName!==Ve||ye.typeExpression!==Ct||ye.comment!==wr?Eo(lF(z,Ve,Ct,wr),ye):ye}function gE(z,ye){return xC(327,z,ye)}function FT(z,ye,Ve){return z.tagName!==ye||z.comment!==Ve?Eo(gE(ye,Ve),z):z}function Np(z,ye,Ve){let Ct=$_(340,z??je(Fbt(340)),Ve);return Ct.typeExpression=ye,Ct.locals=void 0,Ct.nextContainer=void 0,Ct}function Dm(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.typeExpression!==Ve||z.comment!==Ct?Eo(Np(ye,Ve,Ct),z):z}function Dp(z,ye,Ve,Ct,wr){let ai=xC(351,z??je("import"),wr);return ai.importClause=ye,ai.moduleSpecifier=Ve,ai.attributes=Ct,ai.comment=wr,ai}function t2(z,ye,Ve,Ct,wr,ai){return z.tagName!==ye||z.comment!==ai||z.importClause!==Ve||z.moduleSpecifier!==Ct||z.attributes!==wr?Eo(Dp(ye,Ve,Ct,wr,ai),z):z}function Ro(z){let ye=ne(321);return ye.text=z,ye}function AE(z,ye){return z.text!==ye?Eo(Ro(ye),z):z}function AB(z,ye){let Ve=ne(320);return Ve.comment=z,Ve.tags=IA(ye),Ve}function Xc(z,ye,Ve){return z.comment!==ye||z.tags!==Ve?Eo(AB(ye,Ve),z):z}function iu(z,ye,Ve){let Ct=ne(284);return Ct.openingElement=z,Ct.children=ae(ye),Ct.closingElement=Ve,Ct.transformFlags|=$o(Ct.openingElement)|qA(Ct.children)|$o(Ct.closingElement)|2,Ct}function dE(z,ye,Ve,Ct){return z.openingElement!==ye||z.children!==Ve||z.closingElement!==Ct?Eo(iu(ye,Ve,Ct),z):z}function yL(z,ye,Ve){let Ct=ne(285);return Ct.tagName=z,Ct.typeArguments=IA(ye),Ct.attributes=Ve,Ct.transformFlags|=$o(Ct.tagName)|qA(Ct.typeArguments)|$o(Ct.attributes)|2,Ct.typeArguments&&(Ct.transformFlags|=1),Ct}function KR(z,ye,Ve,Ct){return z.tagName!==ye||z.typeArguments!==Ve||z.attributes!==Ct?Eo(yL(ye,Ve,Ct),z):z}function Ou(z,ye,Ve){let Ct=ne(286);return Ct.tagName=z,Ct.typeArguments=IA(ye),Ct.attributes=Ve,Ct.transformFlags|=$o(Ct.tagName)|qA(Ct.typeArguments)|$o(Ct.attributes)|2,ye&&(Ct.transformFlags|=1),Ct}function ny(z,ye,Ve,Ct){return z.tagName!==ye||z.typeArguments!==Ve||z.attributes!==Ct?Eo(Ou(ye,Ve,Ct),z):z}function hp(z){let ye=ne(287);return ye.tagName=z,ye.transformFlags|=$o(ye.tagName)|2,ye}function Am(z,ye){return z.tagName!==ye?Eo(hp(ye),z):z}function K2(z,ye,Ve){let Ct=ne(288);return Ct.openingFragment=z,Ct.children=ae(ye),Ct.closingFragment=Ve,Ct.transformFlags|=$o(Ct.openingFragment)|qA(Ct.children)|$o(Ct.closingFragment)|2,Ct}function i_(z,ye,Ve,Ct){return z.openingFragment!==ye||z.children!==Ve||z.closingFragment!==Ct?Eo(K2(ye,Ve,Ct),z):z}function dB(z,ye){let Ve=ne(12);return Ve.text=z,Ve.containsOnlyTriviaWhiteSpaces=!!ye,Ve.transformFlags|=2,Ve}function ZT(z,ye,Ve){return z.text!==ye||z.containsOnlyTriviaWhiteSpaces!==Ve?Eo(dB(ye,Ve),z):z}function Cx(){let z=ne(289);return z.transformFlags|=2,z}function pB(){let z=ne(290);return z.transformFlags|=2,z}function qf(z,ye){let Ve=ce(291);return Ve.name=z,Ve.initializer=ye,Ve.transformFlags|=$o(Ve.name)|$o(Ve.initializer)|2,Ve}function Jh(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?Eo(qf(ye,Ve),z):z}function $S(z){let ye=ce(292);return ye.properties=ae(z),ye.transformFlags|=qA(ye.properties)|2,ye}function Sb(z,ye){return z.properties!==ye?Eo($S(ye),z):z}function mp(z){let ye=ne(293);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|2,ye}function r2(z,ye){return z.expression!==ye?Eo(mp(ye),z):z}function i1(z,ye){let Ve=ne(294);return Ve.dotDotDotToken=z,Ve.expression=ye,Ve.transformFlags|=$o(Ve.dotDotDotToken)|$o(Ve.expression)|2,Ve}function Of(z,ye){return z.expression!==ye?Eo(i1(z.dotDotDotToken,ye),z):z}function pE(z,ye){let Ve=ne(295);return Ve.namespace=z,Ve.name=ye,Ve.transformFlags|=$o(Ve.namespace)|$o(Ve.name)|2,Ve}function Vd(z,ye,Ve){return z.namespace!==ye||z.name!==Ve?Eo(pE(ye,Ve),z):z}function j(z,ye){let Ve=ne(296);return Ve.expression=n().parenthesizeExpressionForDisallowedComma(z),Ve.statements=ae(ye),Ve.transformFlags|=$o(Ve.expression)|qA(Ve.statements),Ve.jsDoc=void 0,Ve}function Z(z,ye,Ve){return z.expression!==ye||z.statements!==Ve?Eo(j(ye,Ve),z):z}function Id(z){let ye=ne(297);return ye.statements=ae(z),ye.transformFlags=qA(ye.statements),ye}function fB(z,ye){return z.statements!==ye?Eo(Id(ye),z):z}function ev(z,ye){let Ve=ne(298);switch(Ve.token=z,Ve.types=ae(ye),Ve.transformFlags|=qA(Ve.types),z){case 96:Ve.transformFlags|=1024;break;case 119:Ve.transformFlags|=1;break;default:return Zo.assertNever(z)}return Ve}function Ny(z,ye){return z.types!==ye?Eo(ev(z.token,ye),z):z}function vb(z,ye){let Ve=ne(299);return Ve.variableDeclaration=$2(z),Ve.block=ye,Ve.transformFlags|=$o(Ve.variableDeclaration)|$o(Ve.block)|(z?0:64),Ve.locals=void 0,Ve.nextContainer=void 0,Ve}function xD(z,ye,Ve){return z.variableDeclaration!==ye||z.block!==Ve?Eo(vb(ye,Ve),z):z}function IB(z,ye){let Ve=ce(303);return Ve.name=EI(z),Ve.initializer=n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=pO(Ve.name)|$o(Ve.initializer),Ve.modifiers=void 0,Ve.questionToken=void 0,Ve.exclamationToken=void 0,Ve.jsDoc=void 0,Ve}function Bb(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?bL(IB(ye,Ve),z):z}function bL(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function gF(z,ye){let Ve=ce(304);return Ve.name=EI(z),Ve.objectAssignmentInitializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=yNe(Ve.name)|$o(Ve.objectAssignmentInitializer)|1024,Ve.equalsToken=void 0,Ve.modifiers=void 0,Ve.questionToken=void 0,Ve.exclamationToken=void 0,Ve.jsDoc=void 0,Ve}function x(z,ye,Ve){return z.name!==ye||z.objectAssignmentInitializer!==Ve?L(gF(ye,Ve),z):z}function L(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken,z.equalsToken=ye.equalsToken),Eo(z,ye)}function te(z){let ye=ce(305);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|128|65536,ye.jsDoc=void 0,ye}function Re(z,ye){return z.expression!==ye?Eo(te(ye),z):z}function Le(z,ye){let Ve=ce(306);return Ve.name=EI(z),Ve.initializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=$o(Ve.name)|$o(Ve.initializer)|1,Ve.jsDoc=void 0,Ve}function ft(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?Eo(Le(ye,Ve),z):z}function dr(z,ye,Ve){let Ct=t.createBaseSourceFileNode(307);return Ct.statements=ae(z),Ct.endOfFileToken=ye,Ct.flags|=Ve,Ct.text="",Ct.fileName="",Ct.path="",Ct.resolvedPath="",Ct.originalFileName="",Ct.languageVersion=1,Ct.languageVariant=0,Ct.scriptKind=0,Ct.isDeclarationFile=!1,Ct.hasNoDefaultLib=!1,Ct.transformFlags|=qA(Ct.statements)|$o(Ct.endOfFileToken),Ct.locals=void 0,Ct.nextContainer=void 0,Ct.endFlowNode=void 0,Ct.nodeCount=0,Ct.identifierCount=0,Ct.symbolCount=0,Ct.parseDiagnostics=void 0,Ct.bindDiagnostics=void 0,Ct.bindSuggestionDiagnostics=void 0,Ct.lineMap=void 0,Ct.externalModuleIndicator=void 0,Ct.setExternalModuleIndicator=void 0,Ct.pragmas=void 0,Ct.checkJsDirective=void 0,Ct.referencedFiles=void 0,Ct.typeReferenceDirectives=void 0,Ct.libReferenceDirectives=void 0,Ct.amdDependencies=void 0,Ct.commentDirectives=void 0,Ct.identifiers=void 0,Ct.packageJsonLocations=void 0,Ct.packageJsonScope=void 0,Ct.imports=void 0,Ct.moduleAugmentations=void 0,Ct.ambientModuleNames=void 0,Ct.classifiableNames=void 0,Ct.impliedNodeFormat=void 0,Ct}function Ur(z){let ye=Object.create(z.redirectTarget);return Object.defineProperties(ye,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Ve){this.redirectInfo.redirectTarget.id=Ve}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Ve){this.redirectInfo.redirectTarget.symbol=Ve}}}),ye.redirectInfo=z,ye}function mi(z){let ye=Ur(z.redirectInfo);return ye.flags|=z.flags&-17,ye.fileName=z.fileName,ye.path=z.path,ye.resolvedPath=z.resolvedPath,ye.originalFileName=z.originalFileName,ye.packageJsonLocations=z.packageJsonLocations,ye.packageJsonScope=z.packageJsonScope,ye.emitNode=void 0,ye}function Vi(z){let ye=t.createBaseSourceFileNode(307);ye.flags|=z.flags&-17;for(let Ve in z)if(!(fj(ye,Ve)||!fj(z,Ve))){if(Ve==="emitNode"){ye.emitNode=void 0;continue}ye[Ve]=z[Ve]}return ye}function Ta(z){let ye=z.redirectInfo?mi(z):Vi(z);return r(ye,z),ye}function Sl(z,ye,Ve,Ct,wr,ai,Lo){let Hc=Ta(z);return Hc.statements=ae(ye),Hc.isDeclarationFile=Ve,Hc.referencedFiles=Ct,Hc.typeReferenceDirectives=wr,Hc.hasNoDefaultLib=ai,Hc.libReferenceDirectives=Lo,Hc.transformFlags=qA(Hc.statements)|$o(Hc.endOfFileToken),Hc}function Ho(z,ye,Ve=z.isDeclarationFile,Ct=z.referencedFiles,wr=z.typeReferenceDirectives,ai=z.hasNoDefaultLib,Lo=z.libReferenceDirectives){return z.statements!==ye||z.isDeclarationFile!==Ve||z.referencedFiles!==Ct||z.typeReferenceDirectives!==wr||z.hasNoDefaultLib!==ai||z.libReferenceDirectives!==Lo?Eo(Sl(z,ye,Ve,Ct,wr,ai,Lo),z):z}function Wg(z){let ye=ne(308);return ye.sourceFiles=z,ye.syntheticFileReferences=void 0,ye.syntheticTypeReferences=void 0,ye.syntheticLibReferences=void 0,ye.hasNoDefaultLib=void 0,ye}function cA(z,ye){return z.sourceFiles!==ye?Eo(Wg(ye),z):z}function th(z,ye=!1,Ve){let Ct=ne(237);return Ct.type=z,Ct.isSpread=ye,Ct.tupleNameSource=Ve,Ct}function xn(z){let ye=ne(352);return ye._children=z,ye}function rn(z){let ye=ne(353);return ye.original=z,zZ(ye,z),ye}function Ci(z,ye){let Ve=ne(355);return Ve.expression=z,Ve.original=ye,Ve.transformFlags|=$o(Ve.expression)|1,zZ(Ve,ye),Ve}function Po(z,ye){return z.expression!==ye?Eo(Ci(ye,z.original),z):z}function ec(){return ne(354)}function Ra(z){if(_Ne(z)&&!Jbt(z)&&!z.original&&!z.emitNode&&!z.id){if(Yec(z))return z.elements;if(kNe(z)&&cec(z.operatorToken))return[z.left,z.right]}return z}function dc(z){let ye=ne(356);return ye.elements=ae(_7a(z,Ra)),ye.transformFlags|=qA(ye.elements),ye}function Iu(z,ye){return z.elements!==ye?Eo(dc(ye),z):z}function Cl(z,ye){let Ve=ne(357);return Ve.expression=z,Ve.thisArg=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.thisArg),Ve}function wl(z,ye,Ve){return z.expression!==ye||z.thisArg!==Ve?Eo(Cl(ye,Ve),z):z}function $f(z){let ye=ct(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function j2(z){let ye=ct(z.escapedText);ye.flags|=z.flags&-17,ye.jsDoc=z.jsDoc,ye.flowNode=z.flowNode,ye.symbol=z.symbol,ye.transformFlags=z.transformFlags,r(ye,z);let Ve=getIdentifierTypeArguments(z);return Ve&&setIdentifierTypeArguments(ye,Ve),ye}function _x(z){let ye=Nr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function z2(z){let ye=Nr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),ye}function tv(z){if(z===void 0)return z;if($ec(z))return Ta(z);if(BNe(z))return $f(z);if($C(z))return j2(z);if(Jvi(z))return _x(z);if(Qme(z))return z2(z);let ye=KNr(z.kind)?t.createBaseNode(z.kind):t.createBaseTokenNode(z.kind);ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z);for(let Ve in z)fj(ye,Ve)||!fj(z,Ve)||(ye[Ve]=z[Ve]);return ye}function Yu(z,ye,Ve){return YA(TC(void 0,void 0,void 0,void 0,ye?[ye]:[],void 0,eA(z,!0)),void 0,Ve?[Ve]:[])}function qO(z,ye,Ve){return YA(cp(void 0,void 0,ye?[ye]:[],void 0,void 0,eA(z,!0)),void 0,Ve?[Ve]:[])}function hB(){return CI(ue("0"))}function mw(z){return $1(void 0,!1,z)}function AF(z){return N_(void 0,!1,ry([yb(!1,void 0,z)]))}function $O(z,ye){return ye==="null"?X.createStrictEquality(z,Ar()):ye==="undefined"?X.createStrictEquality(z,hB()):X.createStrictEquality(lm(z),Se(ye))}function iY(z,ye){return ye==="null"?X.createStrictInequality(z,Ar()):ye==="undefined"?X.createStrictInequality(z,hB()):X.createStrictInequality(lm(z),Se(ye))}function LT(z,ye,Ve){return eSi(z)?Nm(Ql(z,void 0,ye),void 0,void 0,Ve):YA(Bo(z,ye),void 0,Ve)}function GD(z,ye,Ve){return LT(z,"bind",[ye,...Ve])}function dF(z,ye,Ve){return LT(z,"call",[ye,...Ve])}function EL(z,ye,Ve){return LT(z,"apply",[ye,Ve])}function ff(z,ye,Ve){return LT(je(z),ye,Ve)}function FD(z,ye){return LT(z,"slice",ye===void 0?[]:[zd(ye)])}function fE(z,ye){return LT(z,"concat",ye)}function n2(z,ye,Ve){return ff("Object","defineProperty",[z,zd(ye),Ve])}function mB(z,ye){return ff("Object","getOwnPropertyDescriptor",[z,zd(ye)])}function bd(z,ye,Ve){return ff("Reflect","get",Ve?[z,ye,Ve]:[z,ye])}function s1(z,ye,Ve,Ct){return ff("Reflect","set",Ct?[z,ye,Ve,Ct]:[z,ye,Ve])}function Uh(z,ye,Ve){return Ve?(z.push(IB(ye,Ve)),!0):!1}function wb(z,ye){let Ve=[];Uh(Ve,"enumerable",zd(z.enumerable)),Uh(Ve,"configurable",zd(z.configurable));let Ct=Uh(Ve,"writable",zd(z.writable));Ct=Uh(Ve,"value",z.value)||Ct;let wr=Uh(Ve,"get",z.get);return wr=Uh(Ve,"set",z.set)||wr,Zo.assert(!(Ct&&wr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Wn(Ve,!ye)}function Uu(z,ye){switch(z.kind){case 217:return XE(z,ye);case 216:return J_(z,z.type,ye);case 234:return NC(z,ye,z.type);case 238:return kC(z,ye,z.type);case 235:return U_(z,ye);case 233:return hb(z,ye,z.typeArguments);case 355:return Po(z,ye)}}function iy(z){return aDr(z)&&_Ne(z)&&_Ne(getSourceMapRange(z))&&_Ne(getCommentRange(z))&&!oD(getSyntheticLeadingComments(z))&&!oD(getSyntheticTrailingComments(z))}function sY(z,ye,Ve=31){return z&&PBi(z,Ve)&&!iy(z)?Uu(z,sY(z.expression,ye)):ye}function oY(z,ye,Ve){if(!ye)return z;let Ct=Jr(ye,ye.label,Qec(ye.statement)?oY(z,ye.statement):z);return Ve&&Ve(ye),Ct}function jR(z,ye){let Ve=tDr(z);switch(Ve.kind){case 80:return ye;case 110:case 9:case 10:case 11:return!1;case 209:return Ve.elements.length!==0;case 210:return Ve.properties.length>0;default:return!0}}function aY(z,ye,Ve,Ct=!1){let wr=uDr(z,31),ai,Lo;return aSi(wr)?(ai=cr(),Lo=wr):iNr(wr)?(ai=cr(),Lo=Ve!==void 0&&Ve<2?zZ(je("_super"),wr):wr):NNe(wr)&8192?(ai=hB(),Lo=n().parenthesizeLeftSideOfAccess(wr,!1)):wce(wr)?jR(wr.expression,Ct)?(ai=St(ye),Lo=Bo(zZ(X.createAssignment(ai,wr.expression),wr.expression),wr.name),zZ(Lo,wr)):(ai=wr.expression,Lo=wr):wJe(wr)?jR(wr.expression,Ct)?(ai=St(ye),Lo=ef(zZ(X.createAssignment(ai,wr.expression),wr.expression),wr.argumentExpression),zZ(Lo,wr)):(ai=wr.expression,Lo=wr):(ai=hB(),Lo=n().parenthesizeLeftSideOfAccess(z,!1)),{target:Lo,thisArg:ai}}function tt(z,ye){return Bo(q0(Wn([li(void 0,"value",[io(void 0,void 0,z,void 0,void 0,void 0)],eA([cs(ye)]))])),"value")}function Jt(z){return z.length>10?dc(z):N7a(z,X.createComma)}function kr(z,ye,Ve,Ct=0,wr){let ai=wr?z&&JNr(z):Mvi(z);if(ai&&$C(ai)&&!BNe(ai)){let Lo=iDr(zZ(tv(ai),ai),ai.parent);return Ct|=NNe(ai),Ve||(Ct|=96),ye||(Ct|=3072),Ct&&setEmitFlags(Lo,Ct),Lo}return Tr(z)}function Xr(z,ye,Ve){return kr(z,ye,Ve,98304)}function ui(z,ye,Ve,Ct){return kr(z,ye,Ve,32768,Ct)}function Is(z,ye,Ve){return kr(z,ye,Ve,16384)}function Hs(z,ye,Ve){return kr(z,ye,Ve)}function Rs(z,ye,Ve,Ct){let wr=Bo(z,_Ne(ye)?ye:tv(ye));zZ(wr,ye);let ai=0;return Ct||(ai|=96),Ve||(ai|=3072),ai&&setEmitFlags(wr,ai),wr}function ja(z,ye,Ve,Ct){return z&&BJe(ye,32)?Rs(z,kr(ye),Ve,Ct):Is(ye,Ve,Ct)}function ho(z,ye,Ve,Ct){let wr=ed(z,ye,0,Ve);return Og(z,ye,wr,Ct)}function sl(z){return nEt(z.expression)&&z.expression.text==="use strict"}function Nd(){return ytc(cs(Se("use strict")))}function ed(z,ye,Ve=0,Ct){Zo.assert(ye.length===0,"Prologue directives should be at the first statement in the target statements array");let wr=!1,ai=z.length;for(;VeHc&&dm.splice(wr,0,...ye.slice(Hc,ad)),Hc>Lo&&dm.splice(Ct,0,...ye.slice(Lo,Hc)),Lo>ai&&dm.splice(Ve,0,...ye.slice(ai,Lo)),ai>0)if(Ve===0)dm.splice(0,0,...ye.slice(0,ai));else{let rv=new Map;for(let nv=0;nv=0;nv--){let yx=ye[nv];rv.has(yx.expression.text)||dm.unshift(yx)}}return yce(z)?zZ(ae(dm,z.hasTrailingComma),z):z}function IE(z,ye){let Ve;return typeof ye=="number"?Ve=jt(ye):Ve=ye,IBi(z)?xi(z,Ve,z.name,z.constraint,z.default):jbt(z)?ga(z,Ve,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):yBi(z)?Ko(z,Ve,z.typeParameters,z.parameters,z.type):Aec(z)?Sc(z,Ve,z.name,z.questionToken,z.type):zbt(z)?Ft(z,Ve,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):dec(z)?Rn(z,Ve,z.name,z.questionToken,z.typeParameters,z.parameters,z.type):yNr(z)?Qi(z,Ve,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):hBi(z)?Cg(z,Ve,z.parameters,z.body):bNr(z)?ma(z,Ve,z.name,z.parameters,z.type,z.body):qbt(z)?Ei(z,Ve,z.name,z.parameters,z.body):mBi(z)?Ul(z,Ve,z.parameters,z.type):SBi(z)?t_(z,Ve,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):vBi(z)?Mm(z,Ve,z.typeParameters,z.parameters,z.type,z.equalsGreaterThanToken,z.body):ENr(z)?Hm(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):iEt(z)?um(z,Ve,z.declarationList):TBi(z)?sB(z,Ve,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):$bt(z)?jE(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):cDr(z)?NT(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):RBi(z)?Ty(z,Ve,z.name,z.typeParameters,z.type):Jec(z)?$I(z,Ve,z.name,z.members):SJe(z)?$A(z,Ve,z.name,z.body):NBi(z)?z_(z,Ve,z.isTypeOnly,z.name,z.moduleReference):DBi(z)?oB(z,Ve,z.importClause,z.moduleSpecifier,z.attributes):kBi(z)?$E(z,Ve,z.expression):xBi(z)?e1(z,Ve,z.isTypeOnly,z.exportClause,z.moduleSpecifier,z.attributes):Zo.assertNever(z)}function zR(z,ye){return jbt(z)?ga(z,ye,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):zbt(z)?Ft(z,ye,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):yNr(z)?Qi(z,ye,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):bNr(z)?ma(z,ye,z.name,z.parameters,z.type,z.body):qbt(z)?Ei(z,ye,z.name,z.parameters,z.body):ENr(z)?Hm(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):$bt(z)?jE(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):Zo.assertNever(z)}function e3(z,ye){switch(z.kind){case 177:return ma(z,z.modifiers,ye,z.parameters,z.type,z.body);case 178:return Ei(z,z.modifiers,ye,z.parameters,z.body);case 174:return Qi(z,z.modifiers,z.asteriskToken,ye,z.questionToken,z.typeParameters,z.parameters,z.type,z.body);case 173:return Rn(z,z.modifiers,ye,z.questionToken,z.typeParameters,z.parameters,z.type);case 172:return Ft(z,z.modifiers,ye,z.questionToken??z.exclamationToken,z.type,z.initializer);case 171:return Sc(z,z.modifiers,ye,z.questionToken,z.type);case 303:return Bb(z,ye,z.initializer)}}function IA(z){return z?ae(z):void 0}function EI(z){return typeof z=="string"?je(z):z}function zd(z){return typeof z=="string"?Se(z):typeof z=="number"?ue(z):typeof z=="boolean"?z?qr():_n():z}function wA(z){return z&&n().parenthesizeExpressionForDisallowedComma(z)}function qR(z){return typeof z=="number"?Xt(z):z}function sy(z){return z&&Kec(z)?zZ(r(gm(),z),z):z}function $2(z){return typeof z=="string"||z&&!wBi(z)?Rf(z,void 0,void 0,void 0):z}function Eo(z,ye){return z!==ye&&(r(z,ye),zZ(z,ye)),z}}function Fbt(e){switch(e){case 344:return"type";case 342:return"returns";case 343:return"this";case 340:return"enum";case 330:return"author";case 332:return"class";case 333:return"public";case 334:return"private";case 335:return"protected";case 336:return"readonly";case 337:return"override";case 345:return"template";case 346:return"typedef";case 341:return"param";case 348:return"prop";case 338:return"callback";case 339:return"overload";case 328:return"augments";case 329:return"implements";case 351:return"import";default:return Zo.fail(`Unsupported kind: ${Zo.formatSyntaxKind(e)}`)}}var hV,dSi={};function $$a(e,t){switch(hV||(hV=QNr(99,!1,0)),e){case 15:hV.setText("`"+t+"`");break;case 16:hV.setText("`"+t+"${");break;case 17:hV.setText("}"+t+"${");break;case 18:hV.setText("}"+t+"`");break}let r=hV.scan();if(r===20&&(r=hV.reScanTemplateToken(!1)),hV.isUnterminated())return hV.setText(void 0),dSi;let n;switch(r){case 15:case 16:case 17:case 18:n=hV.getTokenValue();break}return n===void 0||hV.scan()!==1?(hV.setText(void 0),dSi):(hV.setText(void 0),n)}function pO(e){return e&&$C(e)?yNe(e):$o(e)}function yNe(e){return $o(e)&-67108865}function eec(e,t){return t|e.transformFlags&134234112}function $o(e){if(!e)return 0;let t=e.transformFlags&~tec(e.kind);return Gza(e)&&Uvi(e.name)?eec(e.name,t):t}function qA(e){return e?e.transformFlags:0}function pSi(e){let t=0;for(let r of e)t|=$o(r);e.transformFlags=t}function tec(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var iJe=j$a();function sJe(e){return e.flags|=16,e}var rec={createBaseSourceFileNode:e=>sJe(iJe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>sJe(iJe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>sJe(iJe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>sJe(iJe.createBaseTokenNode(e)),createBaseNode:e=>sJe(iJe.createBaseNode(e))},INu=sDr(4,rec);function nec(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=iec(r,e.emitNode))}return e}function iec(e,t){let{flags:r,internalFlags:n,leadingComments:a,trailingComments:o,commentRange:l,sourceMapRange:A,tokenSourceMapRanges:f,constantValue:I,helpers:C,startsOnNewLine:b,snippetElement:E,classThis:N,assignedName:B}=e;if(t||(t={}),r&&(t.flags=r),n&&(t.internalFlags=n&-9),a&&(t.leadingComments=_V(a.slice(),t.leadingComments)),o&&(t.trailingComments=_V(o.slice(),t.trailingComments)),l&&(t.commentRange=l),A&&(t.sourceMapRange=A),f&&(t.tokenSourceMapRanges=sec(f,t.tokenSourceMapRanges)),I!==void 0&&(t.constantValue=I),C)for(let F of C)t.helpers=S7a(t.helpers,F);return b!==void 0&&(t.startsOnNewLine=b),E!==void 0&&(t.snippetElement=E),N&&(t.classThis=N),B&&(t.assignedName=B),t}function sec(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function xNe(e){return e.kind===9}function oec(e){return e.kind===10}function nEt(e){return e.kind===11}function aec(e){return e.kind===15}function cec(e){return e.kind===28}function fSi(e){return e.kind===54}function ISi(e){return e.kind===58}function $C(e){return e.kind===80}function Qme(e){return e.kind===81}function lec(e){return e.kind===95}function Zbt(e){return e.kind===134}function iNr(e){return e.kind===108}function uec(e){return e.kind===102}function gec(e){return e.kind===166}function fBi(e){return e.kind===167}function IBi(e){return e.kind===168}function jbt(e){return e.kind===169}function oDr(e){return e.kind===170}function Aec(e){return e.kind===171}function zbt(e){return e.kind===172}function dec(e){return e.kind===173}function yNr(e){return e.kind===174}function hBi(e){return e.kind===176}function bNr(e){return e.kind===177}function qbt(e){return e.kind===178}function pec(e){return e.kind===179}function fec(e){return e.kind===180}function mBi(e){return e.kind===181}function Iec(e){return e.kind===182}function CBi(e){return e.kind===183}function _Bi(e){return e.kind===184}function yBi(e){return e.kind===185}function hec(e){return e.kind===186}function mec(e){return e.kind===187}function Cec(e){return e.kind===188}function _ec(e){return e.kind===189}function yec(e){return e.kind===202}function bec(e){return e.kind===190}function Eec(e){return e.kind===191}function Sec(e){return e.kind===192}function vec(e){return e.kind===193}function Bec(e){return e.kind===194}function wec(e){return e.kind===195}function Tec(e){return e.kind===196}function Rec(e){return e.kind===197}function Nec(e){return e.kind===198}function Dec(e){return e.kind===199}function kec(e){return e.kind===200}function xec(e){return e.kind===201}function Gec(e){return e.kind===205}function Fec(e){return e.kind===208}function Zec(e){return e.kind===209}function bBi(e){return e.kind===210}function wce(e){return e.kind===211}function wJe(e){return e.kind===212}function EBi(e){return e.kind===213}function Lec(e){return e.kind===215}function aDr(e){return e.kind===217}function SBi(e){return e.kind===218}function vBi(e){return e.kind===219}function Vec(e){return e.kind===222}function Pec(e){return e.kind===224}function kNe(e){return e.kind===226}function Wec(e){return e.kind===230}function ENr(e){return e.kind===231}function Oec(e){return e.kind===232}function Mec(e){return e.kind===233}function Wbt(e){return e.kind===235}function Hec(e){return e.kind===236}function Yec(e){return e.kind===356}function iEt(e){return e.kind===243}function BBi(e){return e.kind===244}function Qec(e){return e.kind===256}function wBi(e){return e.kind===260}function Xec(e){return e.kind===261}function TBi(e){return e.kind===262}function $bt(e){return e.kind===263}function cDr(e){return e.kind===264}function RBi(e){return e.kind===265}function Jec(e){return e.kind===266}function SJe(e){return e.kind===267}function NBi(e){return e.kind===271}function DBi(e){return e.kind===272}function kBi(e){return e.kind===277}function xBi(e){return e.kind===278}function Uec(e){return e.kind===279}function Kec(e){return e.kind===353}function GBi(e){return e.kind===283}function hSi(e){return e.kind===286}function jec(e){return e.kind===289}function FBi(e){return e.kind===295}function zec(e){return e.kind===297}function qec(e){return e.kind===303}function $ec(e){return e.kind===307}function etc(e){return e.kind===309}function ttc(e){return e.kind===314}function rtc(e){return e.kind===317}function ZBi(e){return e.kind===320}function ntc(e){return e.kind===322}function LBi(e){return e.kind===323}function itc(e){return e.kind===328}function stc(e){return e.kind===333}function otc(e){return e.kind===334}function atc(e){return e.kind===335}function ctc(e){return e.kind===336}function ltc(e){return e.kind===337}function utc(e){return e.kind===339}function gtc(e){return e.kind===331}function mSi(e){return e.kind===341}function Atc(e){return e.kind===342}function lDr(e){return e.kind===344}function dtc(e){return e.kind===345}function ptc(e){return e.kind===329}function ftc(e){return e.kind===350}var Mme=new WeakMap;function VBi(e,t){var r;let n=e.kind;return KNr(n)?n===352?e._children:(r=Mme.get(t))==null?void 0:r.get(e):x2}function Itc(e,t,r){e.kind===352&&Zo.fail("Should not need to re-set the children of a SyntaxList.");let n=Mme.get(t);return n===void 0&&(n=new WeakMap,Mme.set(t,n)),n.set(e,r),r}function CSi(e,t){var r;e.kind===352&&Zo.fail("Did not expect to unset the children of a SyntaxList."),(r=Mme.get(t))==null||r.delete(e)}function htc(e,t){let r=Mme.get(e);r!==void 0&&(Mme.delete(e),Mme.set(t,r))}function _Si(e){return(NNe(e)&32768)!==0}function mtc(e){return nEt(e.expression)&&e.expression.text==="use strict"}function Ctc(e){for(let t of e)if(Pbt(t)){if(mtc(t))return t}else break}function _tc(e){return aDr(e)&&Xme(e)&&!!jza(e)}function PBi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&_tc(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function uDr(e,t=31){for(;PBi(e,t);)e=e.expression;return e}function ytc(e){return setStartsOnNewLine(e,!0)}function pJe(e){if(pqa(e))return e.name;if(uqa(e)){switch(e.kind){case 303:return pJe(e.initializer);case 304:return e.name;case 305:return pJe(e.expression)}return}return Kbt(e,!0)?pJe(e.left):Wec(e)?pJe(e.expression):e}function btc(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function ySi(e){if(e){let t=e;for(;;){if($C(t)||!t.body)return $C(t)?t:t.name;t=t.body}}}var bSi;(e=>{function t(C,b,E,N,B,F,Q){let X=b>0?B[b-1]:void 0;return Zo.assertEqual(E[b],t),B[b]=C.onEnter(N[b],X,Q),E[b]=A(C,t),b}e.enter=t;function r(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],r),Zo.assertIsDefined(C.onLeft),E[b]=A(C,r);let X=C.onLeft(N[b].left,B[b],N[b]);return X?(I(b,N,X),f(b,E,N,B,X)):b}e.left=r;function n(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],n),Zo.assertIsDefined(C.onOperator),E[b]=A(C,n),C.onOperator(N[b].operatorToken,B[b],N[b]),b}e.operator=n;function a(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],a),Zo.assertIsDefined(C.onRight),E[b]=A(C,a);let X=C.onRight(N[b].right,B[b],N[b]);return X?(I(b,N,X),f(b,E,N,B,X)):b}e.right=a;function o(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],o),E[b]=A(C,o);let X=C.onExit(N[b],B[b]);if(b>0){if(b--,C.foldState){let ae=E[b]===o?"right":"left";B[b]=C.foldState(B[b],X,ae)}}else F.value=X;return b}e.exit=o;function l(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],l),b}e.done=l;function A(C,b){switch(b){case t:if(C.onLeft)return r;case r:if(C.onOperator)return n;case n:if(C.onRight)return a;case a:return o;case o:return l;case l:return l;default:Zo.fail("Invalid state")}}e.nextState=A;function f(C,b,E,N,B){return C++,b[C]=t,E[C]=B,N[C]=void 0,C}function I(C,b,E){if(Zo.shouldAssert(2))for(;C>=0;)Zo.assert(b[C]!==E,"Circular traversal detected."),C--}})(bSi||(bSi={}));function ESi(e,t){return typeof e=="object"?SNr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function Etc(e,t){return typeof e=="string"?e:Stc(e,Zo.checkDefined(t))}function Stc(e,t){return Jvi(e)?t(e).slice(1):BNe(e)?t(e):Qme(e)?e.escapedText.slice(1):yV(e)}function SNr(e,t,r,n,a){return t=ESi(t,a),n=ESi(n,a),r=Etc(r,a),`${e?"#":""}${t}${r}${n}`}function WBi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of btc(e)){let r=pJe(t);if(r&&dqa(r)&&(r.transformFlags&65536||r.transformFlags&128&&WBi(r)))return!0}return!1}function zZ(e,t){return t?Sce(e,t.pos,t.end):e}function gDr(e){let t=e.kind;return t===168||t===169||t===171||t===172||t===173||t===174||t===176||t===177||t===178||t===181||t===185||t===218||t===219||t===231||t===243||t===262||t===263||t===264||t===265||t===266||t===267||t===271||t===272||t===277||t===278}function vtc(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var SSi,vSi,BSi,wSi,TSi,Btc={createBaseSourceFileNode:e=>new(TSi||(TSi=k2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(BSi||(BSi=k2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(wSi||(wSi=k2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(vSi||(vSi=k2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(SSi||(SSi=k2.getNodeConstructor()))(e,-1,-1)},hNu=sDr(1,Btc);function wi(e,t){return t&&e(t)}function al(e,t,r){if(r){if(t)return t(r);for(let n of r){let a=e(n);if(a)return a}}}function wtc(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function Ttc(e){return hO(e.statements,Rtc)||Ntc(e)}function Rtc(e){return gDr(e)&&Dtc(e,95)||NBi(e)&&GBi(e.moduleReference)||DBi(e)||kBi(e)||xBi(e)?e:void 0}function Ntc(e){return e.flags&8388608?OBi(e):void 0}function OBi(e){return ktc(e)?e:Ok(e,OBi)}function Dtc(e,t){return oD(e.modifiers,r=>r.kind===t)}function ktc(e){return Hec(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var xtc={166:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},168:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.constraint)||wi(t,e.default)||wi(t,e.expression)},304:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.equalsToken)||wi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return wi(t,e.expression)},169:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},172:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},171:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},303:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.initializer)},260:function(e,t,r){return wi(t,e.name)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},208:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.propertyName)||wi(t,e.name)||wi(t,e.initializer)},181:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},185:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},184:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},179:RSi,180:RSi,174:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},173:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},176:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},177:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},178:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},262:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},218:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},219:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.equalsGreaterThanToken)||wi(t,e.body)},175:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.body)},183:function(e,t,r){return wi(t,e.typeName)||al(t,r,e.typeArguments)},182:function(e,t,r){return wi(t,e.assertsModifier)||wi(t,e.parameterName)||wi(t,e.type)},186:function(e,t,r){return wi(t,e.exprName)||al(t,r,e.typeArguments)},187:function(e,t,r){return al(t,r,e.members)},188:function(e,t,r){return wi(t,e.elementType)},189:function(e,t,r){return al(t,r,e.elements)},192:NSi,193:NSi,194:function(e,t,r){return wi(t,e.checkType)||wi(t,e.extendsType)||wi(t,e.trueType)||wi(t,e.falseType)},195:function(e,t,r){return wi(t,e.typeParameter)},205:function(e,t,r){return wi(t,e.argument)||wi(t,e.attributes)||wi(t,e.qualifier)||al(t,r,e.typeArguments)},302:function(e,t,r){return wi(t,e.assertClause)},196:DSi,198:DSi,199:function(e,t,r){return wi(t,e.objectType)||wi(t,e.indexType)},200:function(e,t,r){return wi(t,e.readonlyToken)||wi(t,e.typeParameter)||wi(t,e.nameType)||wi(t,e.questionToken)||wi(t,e.type)||al(t,r,e.members)},201:function(e,t,r){return wi(t,e.literal)},202:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)},206:kSi,207:kSi,209:function(e,t,r){return al(t,r,e.elements)},210:function(e,t,r){return al(t,r,e.properties)},211:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.name)},212:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.argumentExpression)},213:xSi,214:xSi,215:function(e,t,r){return wi(t,e.tag)||wi(t,e.questionDotToken)||al(t,r,e.typeArguments)||wi(t,e.template)},216:function(e,t,r){return wi(t,e.type)||wi(t,e.expression)},217:function(e,t,r){return wi(t,e.expression)},220:function(e,t,r){return wi(t,e.expression)},221:function(e,t,r){return wi(t,e.expression)},222:function(e,t,r){return wi(t,e.expression)},224:function(e,t,r){return wi(t,e.operand)},229:function(e,t,r){return wi(t,e.asteriskToken)||wi(t,e.expression)},223:function(e,t,r){return wi(t,e.expression)},225:function(e,t,r){return wi(t,e.operand)},226:function(e,t,r){return wi(t,e.left)||wi(t,e.operatorToken)||wi(t,e.right)},234:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},235:function(e,t,r){return wi(t,e.expression)},238:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},236:function(e,t,r){return wi(t,e.name)},227:function(e,t,r){return wi(t,e.condition)||wi(t,e.questionToken)||wi(t,e.whenTrue)||wi(t,e.colonToken)||wi(t,e.whenFalse)},230:function(e,t,r){return wi(t,e.expression)},241:GSi,268:GSi,307:function(e,t,r){return al(t,r,e.statements)||wi(t,e.endOfFileToken)},243:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.declarationList)},261:function(e,t,r){return al(t,r,e.declarations)},244:function(e,t,r){return wi(t,e.expression)},245:function(e,t,r){return wi(t,e.expression)||wi(t,e.thenStatement)||wi(t,e.elseStatement)},246:function(e,t,r){return wi(t,e.statement)||wi(t,e.expression)},247:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},248:function(e,t,r){return wi(t,e.initializer)||wi(t,e.condition)||wi(t,e.incrementor)||wi(t,e.statement)},249:function(e,t,r){return wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},250:function(e,t,r){return wi(t,e.awaitModifier)||wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},251:FSi,252:FSi,253:function(e,t,r){return wi(t,e.expression)},254:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},255:function(e,t,r){return wi(t,e.expression)||wi(t,e.caseBlock)},269:function(e,t,r){return al(t,r,e.clauses)},296:function(e,t,r){return wi(t,e.expression)||al(t,r,e.statements)},297:function(e,t,r){return al(t,r,e.statements)},256:function(e,t,r){return wi(t,e.label)||wi(t,e.statement)},257:function(e,t,r){return wi(t,e.expression)},258:function(e,t,r){return wi(t,e.tryBlock)||wi(t,e.catchClause)||wi(t,e.finallyBlock)},299:function(e,t,r){return wi(t,e.variableDeclaration)||wi(t,e.block)},170:function(e,t,r){return wi(t,e.expression)},263:ZSi,231:ZSi,264:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.heritageClauses)||al(t,r,e.members)},265:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||wi(t,e.type)},266:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.members)},306:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},267:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.body)},271:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.moduleReference)},272:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},273:function(e,t,r){return wi(t,e.name)||wi(t,e.namedBindings)},300:function(e,t,r){return al(t,r,e.elements)},301:function(e,t,r){return wi(t,e.name)||wi(t,e.value)},270:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)},274:function(e,t,r){return wi(t,e.name)},280:function(e,t,r){return wi(t,e.name)},275:LSi,279:LSi,278:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.exportClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},276:VSi,281:VSi,277:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.expression)},228:function(e,t,r){return wi(t,e.head)||al(t,r,e.templateSpans)},239:function(e,t,r){return wi(t,e.expression)||wi(t,e.literal)},203:function(e,t,r){return wi(t,e.head)||al(t,r,e.templateSpans)},204:function(e,t,r){return wi(t,e.type)||wi(t,e.literal)},167:function(e,t,r){return wi(t,e.expression)},298:function(e,t,r){return al(t,r,e.types)},233:function(e,t,r){return wi(t,e.expression)||al(t,r,e.typeArguments)},283:function(e,t,r){return wi(t,e.expression)},282:function(e,t,r){return al(t,r,e.modifiers)},356:function(e,t,r){return al(t,r,e.elements)},284:function(e,t,r){return wi(t,e.openingElement)||al(t,r,e.children)||wi(t,e.closingElement)},288:function(e,t,r){return wi(t,e.openingFragment)||al(t,r,e.children)||wi(t,e.closingFragment)},285:PSi,286:PSi,292:function(e,t,r){return al(t,r,e.properties)},291:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},293:function(e,t,r){return wi(t,e.expression)},294:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.expression)},287:function(e,t,r){return wi(t,e.tagName)},295:function(e,t,r){return wi(t,e.namespace)||wi(t,e.name)},190:kme,191:kme,309:kme,315:kme,314:kme,316:kme,318:kme,317:function(e,t,r){return al(t,r,e.parameters)||wi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:al(t,r,e.comment))||al(t,r,e.tags)},347:function(e,t,r){return wi(t,e.tagName)||wi(t,e.name)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},310:function(e,t,r){return wi(t,e.name)},311:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},341:WSi,348:WSi,330:function(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},329:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},328:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},345:function(e,t,r){return wi(t,e.tagName)||wi(t,e.constraint)||al(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},346:function(e,t,r){return wi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?wi(t,e.typeExpression)||wi(t,e.fullName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment)):wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment)))},338:function(e,t,r){return wi(t,e.tagName)||wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},342:xme,344:xme,343:xme,340:xme,350:xme,349:xme,339:xme,323:function(e,t,r){return hO(e.typeParameters,t)||hO(e.parameters,t)||wi(t,e.type)},324:sNr,325:sNr,326:sNr,322:function(e,t,r){return hO(e.jsDocPropertyTags,t)},327:hce,332:hce,333:hce,334:hce,335:hce,336:hce,331:hce,337:hce,351:Gtc,355:Ftc};function RSi(e,t,r){return al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)}function NSi(e,t,r){return al(t,r,e.types)}function DSi(e,t,r){return wi(t,e.type)}function kSi(e,t,r){return al(t,r,e.elements)}function xSi(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||al(t,r,e.typeArguments)||al(t,r,e.arguments)}function GSi(e,t,r){return al(t,r,e.statements)}function FSi(e,t,r){return wi(t,e.label)}function ZSi(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.heritageClauses)||al(t,r,e.members)}function LSi(e,t,r){return al(t,r,e.elements)}function VSi(e,t,r){return wi(t,e.propertyName)||wi(t,e.name)}function PSi(e,t,r){return wi(t,e.tagName)||al(t,r,e.typeArguments)||wi(t,e.attributes)}function kme(e,t,r){return wi(t,e.type)}function WSi(e,t,r){return wi(t,e.tagName)||(e.isNameFirst?wi(t,e.name)||wi(t,e.typeExpression):wi(t,e.typeExpression)||wi(t,e.name))||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function xme(e,t,r){return wi(t,e.tagName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function sNr(e,t,r){return wi(t,e.name)}function hce(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function Gtc(e,t,r){return wi(t,e.tagName)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function Ftc(e,t,r){return wi(t,e.expression)}function Ok(e,t,r){if(e===void 0||e.kind<=165)return;let n=xtc[e.kind];return n===void 0?void 0:n(e,t,r)}function OSi(e,t,r){let n=MSi(e),a=[];for(;a.length=0;--A)n.push(o[A]),a.push(l)}else{let A=t(o,l);if(A){if(A==="skip")continue;return A}if(o.kind>=166)for(let f of MSi(o))n.push(f),a.push(o)}}}function MSi(e){let t=[];return Ok(e,r,r),t;function r(n){t.unshift(n)}}function MBi(e){e.externalModuleIndicator=Ttc(e)}function Ztc(e,t,r,n=!1,a){var o,l;(o=Lbt)==null||o.push(Lbt.Phase.Parse,"createSourceFile",{path:e},!0),Y2i("beforeParse");let A,{languageVersion:f,setExternalModuleIndicator:I,impliedNodeFormat:C,jsDocParsingMode:b}=typeof r=="object"?r:{languageVersion:r};if(f===100)A=Hme.parseSourceFile(e,t,f,void 0,n,6,DNe,b);else{let E=C===void 0?I:N=>(N.impliedNodeFormat=C,(I||MBi)(N));A=Hme.parseSourceFile(e,t,f,void 0,n,a,E,b)}return Y2i("afterParse"),Q7a("Parse","beforeParse","afterParse"),(l=Lbt)==null||l.pop(),A}function Ltc(e){return e.externalModuleIndicator!==void 0}function Vtc(e,t,r,n=!1){let a=eEt.updateSourceFile(e,t,r,n);return a.flags|=e.flags&12582912,a}var Hme;(e=>{var t=QNr(99,!0),r=40960,n,a,o,l,A;function f(tt){return _n++,tt}var I={createBaseSourceFileNode:tt=>f(new A(tt,0,0)),createBaseIdentifierNode:tt=>f(new o(tt,0,0)),createBasePrivateIdentifierNode:tt=>f(new l(tt,0,0)),createBaseTokenNode:tt=>f(new a(tt,0,0)),createBaseNode:tt=>f(new n(tt,0,0))},C=sDr(11,I),{createNodeArray:b,createNumericLiteral:E,createStringLiteral:N,createLiteralLikeNode:B,createIdentifier:F,createPrivateIdentifier:Q,createToken:X,createArrayLiteralExpression:ae,createObjectLiteralExpression:ne,createPropertyAccessExpression:ce,createPropertyAccessChain:fe,createElementAccessExpression:ue,createElementAccessChain:de,createCallExpression:be,createCallChain:Se,createNewExpression:De,createParenthesizedExpression:k,createBlock:et,createVariableStatement:ct,createExpressionStatement:Me,createIfStatement:je,createWhileStatement:St,createForStatement:At,createForOfStatement:Yt,createVariableDeclaration:Tr,createVariableDeclarationList:Nr}=C,er,vt,xt,Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt,Fn,Nn,Hi,po=!0,Vr=!1;function xi(tt,Jt,kr,Xr,ui=!1,Is,Hs,Rs=0){var ja;if(Is=L$a(tt,Is),Is===6){let sl=ga(tt,Jt,kr,Xr,ui);return convertToJson(sl,(ja=sl.statements[0])==null?void 0:ja.expression,sl.parseDiagnostics,!1,void 0),sl.referencedFiles=x2,sl.typeReferenceDirectives=x2,sl.libReferenceDirectives=x2,sl.amdDependencies=x2,sl.hasNoDefaultLib=!1,sl.pragmas=h7a,sl}Ya(tt,Jt,kr,Xr,Is,Rs);let ho=cl(kr,ui,Is,Hs||MBi,Rs);return Gc(),ho}e.parseSourceFile=xi;function io(tt,Jt){Ya("",tt,Jt,void 0,1,0),Vs();let kr=se(!0),Xr=Wt()===1&&!lr.length;return Gc(),Xr?kr:void 0}e.parseIsolatedEntityName=io;function ga(tt,Jt,kr=2,Xr,ui=!1){Ya(tt,Jt,kr,Xr,6,0),vt=Hi,Vs();let Is=Ri(),Hs,Rs;if(Wt()===1)Hs=Er([],Is,Is),Rs=ZA();else{let sl;for(;Wt()!==1;){let Og;switch(Wt()){case 23:Og=ag();break;case 112:case 97:case 106:Og=ZA();break;case 41:oo(()=>Vs()===9&&Vs()!==59)?Og=ey():Og=n1();break;case 9:case 11:if(oo(()=>Vs()!==59)){Og=ra();break}default:Og=n1();break}sl&&Ree(sl)?sl.push(Og):sl?sl=[sl,Og]:(sl=Og,Wt()!==1&&Da(ts.Unexpected_token))}let Nd=Ree(sl)?Zt(ae(sl),Is):Zo.checkDefined(sl),ed=Me(Nd);Zt(ed,Is),Hs=Er([ed],Is),Rs=il(1,ts.Unexpected_token)}let ja=zr(tt,2,6,!1,Hs,Rs,vt,DNe);ui&&Ft(ja),ja.nodeCount=_n,ja.identifierCount=jt,ja.identifiers=ke,ja.parseDiagnostics=Dme(lr,ja),cr&&(ja.jsDocDiagnostics=Dme(cr,ja));let ho=ja;return Gc(),ho}e.parseJsonText=ga;function Ya(tt,Jt,kr,Xr,ui,Is){switch(n=k2.getNodeConstructor(),a=k2.getTokenConstructor(),o=k2.getIdentifierConstructor(),l=k2.getPrivateIdentifierConstructor(),A=k2.getSourceFileConstructor(),er=iza(tt),xt=Jt,Zr=kr,Ar=Xr,qt=ui,Xt=uSi(ui),lr=[],Fn=0,ke=new Map,jt=0,_n=0,vt=0,po=!0,qt){case 1:case 2:Hi=524288;break;case 6:Hi=134742016;break;default:Hi=0;break}Vr=!1,t.setText(xt),t.setOnError(Qh),t.setScriptTarget(Zr),t.setLanguageVariant(Xt),t.setScriptKind(qt),t.setJSDocParsingMode(Is)}function Gc(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),xt=void 0,Zr=void 0,Ar=void 0,qt=void 0,Xt=void 0,vt=0,lr=void 0,cr=void 0,Fn=0,ke=void 0,Nn=void 0,po=!0}function cl(tt,Jt,kr,Xr,ui){let Is=Otc(er);Is&&(Hi|=33554432),vt=Hi,Vs();let Hs=jd(0,Am);Zo.assert(Wt()===1);let Rs=Do(),ja=Hr(ZA(),Rs),ho=zr(er,tt,kr,Is,Hs,ja,vt,Xr);return Ytc(ho,xt),Qtc(ho,sl),ho.commentDirectives=t.getCommentDirectives(),ho.nodeCount=_n,ho.identifierCount=jt,ho.identifiers=ke,ho.parseDiagnostics=Dme(lr,ho),ho.jsDocParsingMode=ui,cr&&(ho.jsDocDiagnostics=Dme(cr,ho)),Jt&&Ft(ho),ho;function sl(Nd,ed,Og){lr.push(fNe(er,xt,Nd,ed,Og))}}let Sc=!1;function Hr(tt,Jt){if(!Jt)return tt;Zo.assert(!tt.jsDoc);let kr=y7a(xqa(tt,xt),Xr=>aY.parseJSDocComment(tt,Xr.pos,Xr.end-Xr.pos));return kr.length&&(tt.jsDoc=kr),Sc&&(Sc=!1,tt.flags|=536870912),tt}function Wr(tt){let Jt=Ar,kr=eEt.createSyntaxCursor(tt);Ar={currentNode:sl};let Xr=[],ui=lr;lr=[];let Is=0,Hs=ja(tt.statements,0);for(;Hs!==-1;){let Nd=tt.statements[Is],ed=tt.statements[Hs];_V(Xr,tt.statements,Is,Hs),Is=ho(tt.statements,Hs);let Og=KRr(ui,o1=>o1.start>=Nd.pos),Nh=Og>=0?KRr(ui,o1=>o1.start>=ed.pos,Og):-1;Og>=0&&_V(lr,ui,Og,Nh>=0?Nh:void 0),oA(()=>{let o1=Hi;for(Hi|=65536,t.resetTokenState(ed.pos),Vs();Wt()!==1;){let Tb=t.getTokenFullStart(),q2=dh(0,Am);if(Xr.push(q2),Tb===t.getTokenFullStart()&&Vs(),Is>=0){let IE=tt.statements[Is];if(q2.end===IE.pos)break;q2.end>IE.pos&&(Is=ho(tt.statements,Is+1))}}Hi=o1},2),Hs=Is>=0?ja(tt.statements,Is):-1}if(Is>=0){let Nd=tt.statements[Is];_V(Xr,tt.statements,Is);let ed=KRr(ui,Og=>Og.start>=Nd.pos);ed>=0&&_V(lr,ui,ed)}return Ar=Jt,C.updateSourceFile(tt,zZ(b(Xr),tt.statements));function Rs(Nd){return!(Nd.flags&65536)&&!!(Nd.transformFlags&67108864)}function ja(Nd,ed){for(let Og=ed;Og118}function Xs(){return Wt()===80?!0:Wt()===127&&Yl()||Wt()===135&&Xu()?!1:Wt()>118}function ws(tt,Jt,kr=!0){return Wt()===tt?(kr&&Vs(),!0):(Jt?Da(Jt):Da(ts._0_expected,by(tt)),!1)}let Gs=Object.keys(MNr).filter(tt=>tt.length>2);function Ma(tt){if(Lec(tt)){_g(dj(xt,tt.template.pos),tt.template.end,ts.Module_declaration_names_may_only_use_or_quoted_strings);return}let Jt=$C(tt)?yV(tt):void 0;if(!Jt||!Bza(Jt,Zr)){Da(ts._0_expected,by(27));return}let kr=dj(xt,tt.pos);switch(Jt){case"const":case"let":case"var":_g(kr,tt.end,ts.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Dc(ts.Interface_name_cannot_be_0,ts.Interface_must_be_given_a_name,19);return;case"is":_g(kr,t.getTokenStart(),ts.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Dc(ts.Namespace_name_cannot_be_0,ts.Namespace_must_be_given_a_name,19);return;case"type":Dc(ts.Type_alias_name_cannot_be_0,ts.Type_alias_must_be_given_a_name,64);return}let Xr=uJe(Jt,Gs,VE)??As(Jt);if(Xr){_g(kr,tt.end,ts.Unknown_keyword_or_identifier_Did_you_mean_0,Xr);return}Wt()!==0&&_g(kr,tt.end,ts.Unexpected_keyword_or_identifier)}function Dc(tt,Jt,kr){Wt()===kr?Da(Jt):Da(tt,t.getTokenValue())}function As(tt){for(let Jt of Gs)if(tt.length>Jt.length+2&&Hbt(tt,Jt))return`${Jt} ${tt.slice(Jt.length)}`}function Tf(tt,Jt,kr){if(Wt()===60&&!t.hasPrecedingLineBreak()){Da(ts.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Wt()===21){Da(ts.Cannot_start_a_function_call_in_a_type_annotation),Vs();return}if(Jt&&!yg()){kr?Da(ts._0_expected,by(27)):Da(ts.Expected_for_property_initializer);return}if(!Mp()){if(kr){Da(ts._0_expected,by(27));return}Ma(tt)}}function cm(tt){return Wt()===tt?(Ju(),!0):(Zo.assert($Rr(tt)),Da(ts._0_expected,by(tt)),!1)}function Fl(tt,Jt,kr,Xr){if(Wt()===Jt){Vs();return}let ui=Da(ts._0_expected,by(Jt));kr&&ui&&xbt(ui,fNe(er,xt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,by(tt),by(Jt)))}function rc(tt){return Wt()===tt?(Vs(),!0):!1}function sd(tt){if(Wt()===tt)return ZA()}function Om(tt){if(Wt()===tt)return El()}function il(tt,Jt,kr){return sd(tt)||bn(tt,!1,Jt||ts._0_expected,kr||by(tt))}function FA(tt){return Om(tt)||(Zo.assert($Rr(tt)),bn(tt,!1,ts._0_expected,by(tt)))}function ZA(){let tt=Ri(),Jt=Wt();return Vs(),Zt(X(Jt),tt)}function El(){let tt=Ri(),Jt=Wt();return Ju(),Zt(X(Jt),tt)}function yg(){return Wt()===27?!0:Wt()===20||Wt()===1||t.hasPrecedingLineBreak()}function Mp(){return yg()?(Wt()===27&&Vs(),!0):!1}function MA(){return Mp()||ws(27)}function Er(tt,Jt,kr,Xr){let ui=b(tt,Xr);return Sce(ui,Jt,kr??t.getTokenFullStart()),ui}function Zt(tt,Jt,kr){return Sce(tt,Jt,kr??t.getTokenFullStart()),Hi&&(tt.flags|=Hi),Vr&&(Vr=!1,tt.flags|=262144),tt}function bn(tt,Jt,kr,...Xr){Jt?pu(t.getTokenFullStart(),0,kr,...Xr):kr&&Da(kr,...Xr);let ui=Ri(),Is=tt===80?F("",void 0):tSi(tt)?C.createTemplateLiteralLikeNode(tt,"","",void 0):tt===9?E("",void 0):tt===11?N("",void 0):tt===282?C.createMissingDeclaration():X(tt);return Zt(Is,ui)}function ls(tt){let Jt=ke.get(tt);return Jt===void 0&&ke.set(tt,Jt=tt),Jt}function oa(tt,Jt,kr){if(tt){jt++;let Rs=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():Ri(),ja=Wt(),ho=ls(t.getTokenValue()),sl=t.hasExtendedUnicodeEscape();return Hu(),Zt(F(ho,ja,sl),Rs)}if(Wt()===81)return Da(kr||ts.Private_identifiers_are_not_allowed_outside_class_bodies),oa(!0);if(Wt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return oa(!0);jt++;let Xr=Wt()===1,ui=t.isReservedWord(),Is=t.getTokenText(),Hs=ui?ts.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ts.Identifier_expected;return bn(80,Xr,Jt||Hs,Is)}function Fs(tt){return oa(cc(),void 0,tt)}function Wa(tt,Jt){return oa(Xs(),tt,Jt)}function Ca(tt){return oa(H1(Wt()),tt)}function ld(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&Da(ts.Unicode_escape_sequence_cannot_appear_here),oa(H1(Wt()))}function Rp(){return H1(Wt())||Wt()===11||Wt()===9||Wt()===10}function np(){return H1(Wt())||Wt()===11}function HA(tt){if(Wt()===11||Wt()===9||Wt()===10){let Jt=ra();return Jt.text=ls(Jt.text),Jt}return tt&&Wt()===23?Zs():Wt()===81?so():Ca()}function df(){return HA(!0)}function Zs(){let tt=Ri();ws(23);let Jt=gc($A);return ws(24),Zt(C.createComputedPropertyName(Jt),tt)}function so(){let tt=Ri(),Jt=Q(ls(t.getTokenValue()));return Vs(),Zt(Jt,tt)}function Ea(tt){return Wt()===tt&&Ki(Dr)}function Ml(){return Vs(),t.hasPrecedingLineBreak()?!1:Bo()}function Dr(){switch(Wt()){case 87:return Vs()===94;case 95:return Vs(),Wt()===90?oo(Ql):Wt()===156?oo(di):Wn();case 90:return Ql();case 126:return Vs(),Bo();case 139:case 153:return Vs(),us();default:return Ml()}}function Wn(){return Wt()===60||Wt()!==42&&Wt()!==130&&Wt()!==19&&Bo()}function di(){return Vs(),Wn()}function aa(){return Bee(Wt())&&Ki(Dr)}function Bo(){return Wt()===23||Wt()===19||Wt()===42||Wt()===26||Rp()}function us(){return Wt()===23||Rp()}function Ql(){return Vs(),Wt()===86||Wt()===100||Wt()===120||Wt()===60||Wt()===128&&oo(Dp)||Wt()===134&&oo(t2)}function LA(tt,Jt){if(Hp(tt))return!0;switch(tt){case 0:case 1:case 3:return!(Wt()===27&&Jt)&&Xc();case 2:return Wt()===84||Wt()===90;case 4:return oo(gm);case 5:return oo(bL)||Wt()===27&&!Jt;case 6:return Wt()===23||Rp();case 12:switch(Wt()){case 23:case 42:case 26:case 25:return!0;default:return Rp()}case 18:return Rp();case 9:return Wt()===23||Wt()===26||Rp();case 24:return np();case 7:return Wt()===19?oo(pf):Jt?Xs()&&!j1():US()&&!j1();case 8:return i1();case 10:return Wt()===28||Wt()===26||i1();case 19:return Wt()===103||Wt()===87||Xs();case 15:switch(Wt()){case 28:case 25:return!0}case 11:return Wt()===26||$I();case 16:return NC(!1);case 17:return NC(!0);case 20:case 21:return Wt()===28||ut();case 22:return rn();case 23:return Wt()===161&&oo(Cx)?!1:Wt()===11?!0:H1(Wt());case 13:return H1(Wt())||Wt()===19;case 14:return!0;case 25:return!0;case 26:return Zo.fail("ParsingContext.Count used as a context");default:Zo.assertNever(tt,"Non-exhaustive case in 'isListElement'.")}}function pf(){if(Zo.assert(Wt()===19),Vs()===20){let tt=Vs();return tt===28||tt===19||tt===96||tt===119}return!0}function ef(){return Vs(),Xs()}function ip(){return Vs(),H1(Wt())}function _d(){return Vs(),sza(Wt())}function j1(){return Wt()===119||Wt()===96?oo(pw):!1}function pw(){return Vs(),$I()}function YA(){return Vs(),ut()}function Ac(tt){if(Wt()===1)return!0;switch(tt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Wt()===20;case 3:return Wt()===20||Wt()===84||Wt()===90;case 7:return Wt()===19||Wt()===96||Wt()===119;case 8:return Nm();case 19:return Wt()===32||Wt()===21||Wt()===19||Wt()===96||Wt()===119;case 11:return Wt()===22||Wt()===27;case 15:case 21:case 10:return Wt()===24;case 17:case 16:case 18:return Wt()===22||Wt()===24;case 20:return Wt()!==28;case 22:return Wt()===19||Wt()===20;case 13:return Wt()===32||Wt()===44;case 14:return Wt()===30&&oo(tv);default:return!1}}function Nm(){return!!(yg()||qE(Wt())||Wt()===39)}function HS(){Zo.assert(Fn,"Missing parsing context");for(let tt=0;tt<26;tt++)if(Fn&1<=0)}function CI(tt){return tt===6?ts.An_enum_member_name_must_be_followed_by_a_or:void 0}function _I(){let tt=Er([],Ri());return tt.isMissingList=!0,tt}function H2(tt){return!!tt.isMissingList}function iE(tt,Jt,kr,Xr){if(ws(kr)){let ui=Kf(tt,Jt);return ws(Xr),ui}return _I()}function se(tt,Jt){let kr=Ri(),Xr=tt?Ca(Jt):Wa(Jt);for(;rc(25)&&Wt()!==30;)Xr=Zt(C.createQualifiedName(Xr,K(tt,!1,!0)),kr);return Xr}function O(tt,Jt){return Zt(C.createQualifiedName(tt,Jt),tt.pos)}function K(tt,Jt,kr){if(t.hasPrecedingLineBreak()&&H1(Wt())&&oo(Dm))return bn(80,!0,ts.Identifier_expected);if(Wt()===81){let Xr=so();return Jt?Xr:bn(80,!0,ts.Identifier_expected)}return tt?kr?Ca():ld():Wa()}function we(tt){let Jt=Ri(),kr=[],Xr;do Xr=$n(tt),kr.push(Xr);while(Xr.literal.kind===17);return Er(kr,Jt)}function gt(tt){let Jt=Ri();return Zt(C.createTemplateExpression(kc(tt),we(tt)),Jt)}function sr(){let tt=Ri();return Zt(C.createTemplateLiteralType(kc(!1),Yr()),tt)}function Yr(){let tt=Ri(),Jt=[],kr;do kr=Lr(),Jt.push(kr);while(kr.literal.kind===17);return Er(Jt,tt)}function Lr(){let tt=Ri();return Zt(C.createTemplateLiteralTypeSpan(tf(),fi(!1)),tt)}function fi(tt){return Wt()===20?(OA(tt),Nl()):il(18,ts._0_expected,by(20))}function $n(tt){let Jt=Ri();return Zt(C.createTemplateSpan(gc($A),fi(tt)),Jt)}function ra(){return Bl(Wt())}function kc(tt){!tt&&t.getTokenFlags()&26656&&OA(!1);let Jt=Bl(Wt());return Zo.assert(Jt.kind===16,"Template head has wrong token kind"),Jt}function Nl(){let tt=Bl(Wt());return Zo.assert(tt.kind===17||tt.kind===18,"Template fragment has wrong token kind"),tt}function ca(tt){let Jt=tt===15||tt===18,kr=t.getTokenText();return kr.substring(1,kr.length-(t.isUnterminated()?0:Jt?1:2))}function Bl(tt){let Jt=Ri(),kr=tSi(tt)?C.createTemplateLiteralLikeNode(tt,t.getTokenValue(),ca(tt),t.getTokenFlags()&7176):tt===9?E(t.getTokenValue(),t.getNumericLiteralFlags()):tt===11?N(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):rqa(tt)?B(tt,t.getTokenValue()):Zo.fail();return t.hasExtendedUnicodeEscape()&&(kr.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(kr.isUnterminated=!0),Vs(),Zt(kr,Jt)}function $g(){return se(!0,ts.Type_expected)}function SA(){if(!t.hasPrecedingLineBreak()&&GA()===30)return iE(20,tf,30,32)}function lI(){let tt=Ri();return Zt(C.createTypeReferenceNode($g(),SA()),tt)}function lp(tt){switch(tt.kind){case 183:return Ome(tt.typeName);case 184:case 185:{let{parameters:Jt,type:kr}=tt;return H2(Jt)||lp(kr)}case 196:return lp(tt.type);default:return!1}}function Ib(tt){return Vs(),Zt(C.createTypePredicateNode(void 0,tt,tf()),tt.pos)}function Na(){let tt=Ri();return Vs(),Zt(C.createThisTypeNode(),tt)}function wd(){let tt=Ri();return Vs(),Zt(C.createJSDocAllType(),tt)}function z1(){let tt=Ri();return Vs(),Zt(C.createJSDocNonNullableType(xc(),!1),tt)}function T_(){let tt=Ri();return Vs(),Wt()===28||Wt()===20||Wt()===22||Wt()===32||Wt()===64||Wt()===52?Zt(C.createJSDocUnknownType(),tt):Zt(C.createJSDocNullableType(tf(),!1),tt)}function RC(){let tt=Ri(),Jt=Do();if(Ki(_x)){let kr=Mc(36),Xr=ph(59,!1);return Hr(Zt(C.createJSDocFunctionType(kr,Xr),tt),Jt)}return Zt(C.createTypeReferenceNode(Ca(),void 0),tt)}function Hm(){let tt=Ri(),Jt;return(Wt()===110||Wt()===105)&&(Jt=Ca(),ws(59)),Zt(C.createParameterDeclaration(void 0,void 0,Jt,void 0,YS(),void 0),tt)}function YS(){t.setSkipJsDocLeadingAsterisks(!0);let tt=Ri();if(rc(144)){let Xr=C.createJSDocNamepathType(void 0);e:for(;;)switch(Wt()){case 20:case 1:case 28:case 5:break e;default:Ju()}return t.setSkipJsDocLeadingAsterisks(!1),Zt(Xr,tt)}let Jt=rc(26),kr=jE();return t.setSkipJsDocLeadingAsterisks(!1),Jt&&(kr=Zt(C.createJSDocVariadicType(kr),tt)),Wt()===64?(Vs(),Zt(C.createJSDocOptionalType(kr),tt)):kr}function Fg(){let tt=Ri();ws(114);let Jt=se(!0),kr=t.hasPrecedingLineBreak()?void 0:xn();return Zt(C.createTypeQueryNode(Jt,kr),tt)}function hb(){let tt=Ri(),Jt=Le(!1,!0),kr=Wa(),Xr,ui;rc(96)&&(ut()||!$I()?Xr=tf():ui=JR());let Is=rc(64)?tf():void 0,Hs=C.createTypeParameterDeclaration(Jt,kr,Xr,Is);return Hs.expression=ui,Zt(Hs,tt)}function gC(){if(Wt()===30)return iE(19,hb,30,32)}function NC(tt){return Wt()===26||i1()||Bee(Wt())||Wt()===60||ut(!tt)}function Y2(tt){let Jt=Of(ts.Private_identifiers_cannot_be_used_as_parameters);return Tqa(Jt)===0&&!oD(tt)&&Bee(Wt())&&Vs(),Jt}function U_(){return cc()||Wt()===23||Wt()===19}function DC(tt){return qI(tt)}function kC(tt){return qI(tt,!1)}function qI(tt,Jt=!0){let kr=Ri(),Xr=Do(),ui=tt?li(()=>Le(!0)):Ei(()=>Le(!0));if(Wt()===110){let ja=C.createParameterDeclaration(ui,void 0,oa(!0),void 0,Ty(),void 0),ho=ZNr(ui);return ho&&mI(ho,ts.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Hr(Zt(ja,kr),Xr)}let Is=po;po=!1;let Hs=sd(26);if(!Jt&&!U_())return;let Rs=Hr(Zt(C.createParameterDeclaration(ui,Hs,Y2(ui),sd(58),Ty(),Qm()),kr),Xr);return po=Is,Rs}function ph(tt,Jt){if(vA(tt,Jt))return Nc(jE)}function vA(tt,Jt){return tt===39?(ws(tt),!0):rc(59)?!0:Jt&&Wt()===39?(Da(ts._0_expected,by(59)),Vs(),!0):!1}function Td(tt,Jt){let kr=Yl(),Xr=Xu();Qi(!!(tt&1)),yo(!!(tt&2));let ui=tt&32?Kf(17,Hm):Kf(16,()=>Jt?DC(Xr):kC(Xr));return Qi(kr),yo(Xr),ui}function Mc(tt){if(!ws(21))return _I();let Jt=Td(tt,!0);return ws(22),Jt}function Pf(){rc(28)||MA()}function sE(tt){let Jt=Ri(),kr=Do();tt===180&&ws(105);let Xr=gC(),ui=Mc(4),Is=ph(59,!0);Pf();let Hs=tt===179?C.createCallSignature(Xr,ui,Is):C.createConstructSignature(Xr,ui,Is);return Hr(Zt(Hs,Jt),kr)}function eA(){return Wt()===23&&oo(QS)}function QS(){if(Vs(),Wt()===26||Wt()===24)return!0;if(Bee(Wt())){if(Vs(),Xs())return!0}else if(Xs())Vs();else return!1;return Wt()===59||Wt()===28?!0:Wt()!==58?!1:(Vs(),Wt()===59||Wt()===28||Wt()===24)}function XS(tt,Jt,kr){let Xr=iE(16,()=>DC(!1),23,24),ui=Ty();Pf();let Is=C.createIndexSignature(kr,Xr,ui);return Hr(Zt(Is,tt),Jt)}function um(tt,Jt,kr){let Xr=df(),ui=sd(58),Is;if(Wt()===21||Wt()===30){let Hs=gC(),Rs=Mc(4),ja=ph(59,!0);Is=C.createMethodSignature(kr,Xr,ui,Hs,Rs,ja)}else{let Hs=Ty();Is=C.createPropertySignature(kr,Xr,ui,Hs),Wt()===64&&(Is.initializer=Qm())}return Pf(),Hr(Zt(Is,tt),Jt)}function gm(){if(Wt()===21||Wt()===30||Wt()===139||Wt()===153)return!0;let tt=!1;for(;Bee(Wt());)tt=!0,Vs();return Wt()===23?!0:(Rp()&&(tt=!0,Vs()),tt?Wt()===21||Wt()===30||Wt()===58||Wt()===59||Wt()===28||yg():!1)}function cs(){if(Wt()===21||Wt()===30)return sE(179);if(Wt()===105&&oo(na))return sE(180);let tt=Ri(),Jt=Do(),kr=Le(!1);return Ea(139)?Bb(tt,Jt,kr,177,4):Ea(153)?Bb(tt,Jt,kr,178,4):eA()?XS(tt,Jt,kr):um(tt,Jt,kr)}function na(){return Vs(),Wt()===21||Wt()===30}function ko(){return Vs()===25}function ki(){switch(Vs()){case 21:case 30:case 25:return!0}return!1}function Kl(){let tt=Ri();return Zt(C.createTypeLiteralNode(fd()),tt)}function fd(){let tt;return ws(19)?(tt=jd(4,cs),ws(20)):tt=_I(),tt}function jf(){return Vs(),Wt()===40||Wt()===41?Vs()===148:(Wt()===148&&Vs(),Wt()===23&&ef()&&Vs()===103)}function Ld(){let tt=Ri(),Jt=Ca();ws(103);let kr=tf();return Zt(C.createTypeParameterDeclaration(void 0,Jt,kr,void 0),tt)}function AC(){let tt=Ri();ws(19);let Jt;(Wt()===148||Wt()===40||Wt()===41)&&(Jt=ZA(),Jt.kind!==148&&ws(148)),ws(23);let kr=Ld(),Xr=rc(130)?tf():void 0;ws(24);let ui;(Wt()===58||Wt()===40||Wt()===41)&&(ui=ZA(),ui.kind!==58&&ws(58));let Is=Ty();MA();let Hs=jd(4,cs);return ws(20),Zt(C.createMappedTypeNode(Jt,kr,Xr,ui,Is,Hs),tt)}function JE(){let tt=Ri();if(rc(26))return Zt(C.createRestTypeNode(tf()),tt);let Jt=tf();if(ttc(Jt)&&Jt.pos===Jt.type.pos){let kr=C.createOptionalTypeNode(Jt.type);return zZ(kr,Jt),kr.flags=Jt.flags,kr}return Jt}function Ym(){return Vs()===59||Wt()===58&&Vs()===59}function vy(){return Wt()===26?H1(Vs())&&Ym():H1(Wt())&&Ym()}function K_(){if(oo(vy)){let tt=Ri(),Jt=Do(),kr=sd(26),Xr=Ca(),ui=sd(58);ws(59);let Is=JE(),Hs=C.createNamedTupleMember(kr,Xr,ui,Is);return Hr(Zt(Hs,tt),Jt)}return JE()}function od(){let tt=Ri();return Zt(C.createTupleTypeNode(iE(21,K_,23,24)),tt)}function UE(){let tt=Ri();ws(21);let Jt=tf();return ws(22),Zt(C.createParenthesizedType(Jt),tt)}function KE(){let tt;if(Wt()===128){let Jt=Ri();Vs();let kr=Zt(X(128),Jt);tt=Er([kr],Jt)}return tt}function Yp(){let tt=Ri(),Jt=Do(),kr=KE(),Xr=rc(105);Zo.assert(!kr||Xr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let ui=gC(),Is=Mc(4),Hs=ph(39,!1),Rs=Xr?C.createConstructorTypeNode(kr,ui,Is,Hs):C.createFunctionTypeNode(ui,Is,Hs);return Hr(Zt(Rs,tt),Jt)}function JS(){let tt=ZA();return Wt()===25?void 0:tt}function By(tt){let Jt=Ri();tt&&Vs();let kr=Wt()===112||Wt()===97||Wt()===106?ZA():Bl(Wt());return tt&&(kr=Zt(C.createPrefixUnaryExpression(41,kr),Jt)),Zt(C.createLiteralTypeNode(kr),Jt)}function $0(){return Vs(),Wt()===102}function fw(){vt|=4194304;let tt=Ri(),Jt=rc(114);ws(102),ws(21);let kr=tf(),Xr;if(rc(28)){let Hs=t.getTokenStart();ws(19);let Rs=Wt();if(Rs===118||Rs===132?Vs():Da(ts._0_expected,by(118)),ws(59),Xr=$O(Rs,!0),!ws(20)){let ja=Pme(lr);ja&&ja.code===ts._0_expected.code&&xbt(ja,fNe(er,xt,Hs,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ws(22);let ui=rc(25)?$g():void 0,Is=SA();return Zt(C.createImportTypeNode(kr,Xr,ui,Is,Jt),tt)}function Q2(){return Vs(),Wt()===9||Wt()===10}function xc(){switch(Wt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ki(JS)||lI();case 67:t.reScanAsteriskEqualsToken();case 42:return wd();case 61:t.reScanQuestionToken();case 58:return T_();case 100:return RC();case 54:return z1();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return By();case 41:return oo(Q2)?By(!0):lI();case 116:return ZA();case 110:{let tt=Na();return Wt()===142&&!t.hasPrecedingLineBreak()?Ib(tt):tt}case 114:return oo($0)?fw():Fg();case 19:return oo(jf)?AC():Kl();case 23:return od();case 21:return UE();case 102:return fw();case 131:return oo(Dm)?NT():lI();case 16:return sr();default:return lI()}}function ut(tt){switch(Wt()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!tt;case 41:return!tt&&oo(Q2);case 21:return!tt&&oo(ar);default:return Xs()}}function ar(){return Vs(),Wt()===22||NC(!1)||ut()}function Jr(){let tt=Ri(),Jt=xc();for(;!t.hasPrecedingLineBreak();)switch(Wt()){case 54:Vs(),Jt=Zt(C.createJSDocNonNullableType(Jt,!0),tt);break;case 58:if(oo(YA))return Jt;Vs(),Jt=Zt(C.createJSDocNullableType(Jt,!0),tt);break;case 23:if(ws(23),ut()){let kr=tf();ws(24),Jt=Zt(C.createIndexedAccessTypeNode(Jt,kr),tt)}else ws(24),Jt=Zt(C.createArrayTypeNode(Jt),tt);break;default:return Jt}return Jt}function Gn(tt){let Jt=Ri();return ws(tt),Zt(C.createTypeOperatorNode(tt,Ng()),Jt)}function Ts(){if(rc(96)){let tt=iA(tf);if(Sg()||Wt()!==58)return tt}}function Qo(){let tt=Ri(),Jt=Wa(),kr=Ki(Ts),Xr=C.createTypeParameterDeclaration(void 0,Jt,kr);return Zt(Xr,tt)}function vg(){let tt=Ri();return ws(140),Zt(C.createInferTypeNode(Qo()),tt)}function Ng(){let tt=Wt();switch(tt){case 143:case 158:case 148:return Gn(tt);case 140:return vg()}return Nc(Jr)}function Rf(tt){if(sB()){let Jt=Yp(),kr;return _Bi(Jt)?kr=tt?ts.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:kr=tt?ts.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,mI(Jt,kr),Jt}}function uI(tt,Jt,kr){let Xr=Ri(),ui=tt===52,Is=rc(tt),Hs=Is&&Rf(ui)||Jt();if(Wt()===tt||Is){let Rs=[Hs];for(;rc(tt);)Rs.push(Rf(ui)||Jt());Hs=Zt(kr(Er(Rs,Xr)),Xr)}return Hs}function Th(){return uI(51,Ng,C.createIntersectionTypeNode)}function oE(){return uI(52,Th,C.createUnionTypeNode)}function TT(){return Vs(),Wt()===105}function sB(){return Wt()===30||Wt()===21&&oo(wy)?!0:Wt()===105||Wt()===128&&oo(TT)}function RT(){if(Bee(Wt())&&Le(!1),Xs()||Wt()===110)return Vs(),!0;if(Wt()===23||Wt()===19){let tt=lr.length;return Of(),tt===lr.length}return!1}function wy(){return Vs(),!!(Wt()===22||Wt()===26||RT()&&(Wt()===59||Wt()===28||Wt()===58||Wt()===64||Wt()===22&&(Vs(),Wt()===39)))}function jE(){let tt=Ri(),Jt=Xs()&&Ki(j_),kr=tf();return Jt?Zt(C.createTypePredicateNode(void 0,Jt,kr),tt):kr}function j_(){let tt=Wa();if(Wt()===142&&!t.hasPrecedingLineBreak())return Vs(),tt}function NT(){let tt=Ri(),Jt=il(131),kr=Wt()===110?Na():Wa(),Xr=rc(142)?tf():void 0;return Zt(C.createTypePredicateNode(Jt,kr,Xr),tt)}function tf(){if(Hi&81920)return bo(81920,tf);if(sB())return Yp();let tt=Ri(),Jt=oE();if(!Sg()&&!t.hasPrecedingLineBreak()&&rc(96)){let kr=iA(tf);ws(58);let Xr=Nc(tf);ws(59);let ui=Nc(tf);return Zt(C.createConditionalTypeNode(Jt,kr,Xr,ui),tt)}return Jt}function Ty(){return rc(59)?tf():void 0}function US(){switch(Wt()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return oo(ki);default:return Xs()}}function $I(){if(US())return!0;switch(Wt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return kT()?!0:Xs()}}function BA(){return Wt()!==19&&Wt()!==100&&Wt()!==86&&Wt()!==60&&$I()}function $A(){let tt=Ul();tt&&ps(!1);let Jt=Ri(),kr=zf(!0),Xr;for(;Xr=sd(28);)kr=q1(kr,Xr,zf(!0),Jt);return tt&&ps(!0),kr}function Qm(){return rc(64)?zf(!0):void 0}function zf(tt){if(mb())return Cb();let Jt=KS(tt)||oB(tt);if(Jt)return Jt;let kr=Ri(),Xr=Do(),ui=zS(0);return ui.kind===80&&Wt()===39?Ry(kr,ui,tt,Xr,void 0):RNe(ui)&&lBi(Ko())?q1(ui,ZA(),zf(tt),kr):XR(ui,kr,tt)}function mb(){return Wt()===127?Yl()?!0:oo(Ro):!1}function R_(){return Vs(),!t.hasPrecedingLineBreak()&&Xs()}function Cb(){let tt=Ri();return Vs(),!t.hasPrecedingLineBreak()&&(Wt()===42||$I())?Zt(C.createYieldExpression(sd(42),zf(!0)),tt):Zt(C.createYieldExpression(void 0,void 0),tt)}function Ry(tt,Jt,kr,Xr,ui){Zo.assert(Wt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Is=C.createParameterDeclaration(void 0,void 0,Jt,void 0,void 0,void 0);Zt(Is,Jt.pos);let Hs=Er([Is],Is.pos,Is.end),Rs=il(39),ja=jS(!!ui,kr),ho=C.createArrowFunction(ui,void 0,Hs,void 0,Rs,ja);return Hr(Zt(ho,tt),Xr)}function KS(tt){let Jt=_b();if(Jt!==0)return Jt===1?aB(!0,!0):Ki(()=>zE(tt))}function _b(){return Wt()===21||Wt()===30||Wt()===134?oo(z_):Wt()===39?1:0}function z_(){if(Wt()===134&&(Vs(),t.hasPrecedingLineBreak()||Wt()!==21&&Wt()!==30))return 0;let tt=Wt(),Jt=Vs();if(tt===21){if(Jt===22)switch(Vs()){case 39:case 59:case 19:return 1;default:return 0}if(Jt===23||Jt===19)return 2;if(Jt===26)return 1;if(Bee(Jt)&&Jt!==134&&oo(ef))return Vs()===130?0:1;if(!Xs()&&Jt!==110)return 0;switch(Vs()){case 59:return 1;case 58:return Vs(),Wt()===59||Wt()===28||Wt()===64||Wt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return Zo.assert(tt===30),!Xs()&&Wt()!==87?0:Xt===1?oo(()=>{rc(87);let kr=Vs();if(kr===96)switch(Vs()){case 64:case 32:case 44:return!1;default:return!0}else if(kr===28||kr===64)return!0;return!1})?1:0:2}function zE(tt){let Jt=t.getTokenStart();if(Nn!=null&&Nn.has(Jt))return;let kr=aB(!1,tt);return kr||(Nn||(Nn=new Set)).add(Jt),kr}function oB(tt){if(Wt()===134&&oo(DT)===1){let Jt=Ri(),kr=Do(),Xr=ft(),ui=zS(0);return Ry(Jt,ui,tt,kr,Xr)}}function DT(){if(Wt()===134){if(Vs(),t.hasPrecedingLineBreak()||Wt()===39)return 0;let tt=zS(0);if(!t.hasPrecedingLineBreak()&&tt.kind===80&&Wt()===39)return 1}return 0}function aB(tt,Jt){let kr=Ri(),Xr=Do(),ui=ft(),Is=oD(ui,Zbt)?2:0,Hs=gC(),Rs;if(ws(21)){if(tt)Rs=Td(Is,tt);else{let Tb=Td(Is,tt);if(!Tb)return;Rs=Tb}if(!ws(22)&&!tt)return}else{if(!tt)return;Rs=_I()}let ja=Wt()===59,ho=ph(59,!1);if(ho&&!tt&&lp(ho))return;let sl=ho;for(;sl?.kind===196;)sl=sl.type;let Nd=sl&&rtc(sl);if(!tt&&Wt()!==39&&(Nd||Wt()!==19))return;let ed=Wt(),Og=il(39),Nh=ed===39||ed===19?jS(oD(ui,Zbt),Jt):Wa();if(!Jt&&ja&&Wt()!==59)return;let o1=C.createArrowFunction(ui,Hs,Rs,ho,Og,Nh);return Hr(Zt(o1,kr),Xr)}function jS(tt,Jt){if(Wt()===19)return cE(tt?2:0);if(Wt()!==27&&Wt()!==100&&Wt()!==86&&Xc()&&!BA())return cE(16|(tt?2:0));let kr=po;po=!1;let Xr=tt?li(()=>zf(Jt)):Ei(()=>zf(Jt));return po=kr,Xr}function XR(tt,Jt,kr){let Xr=sd(58);if(!Xr)return tt;let ui;return Zt(C.createConditionalExpression(tt,Xr,bo(r,()=>zf(!1)),ui=il(59),hNr(ui)?zf(kr):bn(80,!1,ts._0_expected,by(59))),Jt)}function zS(tt){let Jt=Ri(),kr=JR();return X2(tt,kr,Jt)}function qE(tt){return tt===103||tt===165}function X2(tt,Jt,kr){for(;;){Ko();let Xr=eNr(Wt());if(!(Wt()===43?Xr>=tt:Xr>tt)||Wt()===103&&Wc())break;if(Wt()===130||Wt()===152){if(t.hasPrecedingLineBreak())break;{let ui=Wt();Vs(),Jt=ui===152?pn(Jt,tf()):J2(Jt,tf())}}else Jt=q1(Jt,ZA(),zS(Xr),kr)}return Jt}function kT(){return Wc()&&Wt()===103?!1:eNr(Wt())>0}function pn(tt,Jt){return Zt(C.createSatisfiesExpression(tt,Jt),tt.pos)}function q1(tt,Jt,kr,Xr){return Zt(C.createBinaryExpression(tt,Jt,kr),Xr)}function J2(tt,Jt){return Zt(C.createAsExpression(tt,Jt),tt.pos)}function ey(){let tt=Ri();return Zt(C.createPrefixUnaryExpression(Wt(),Ru(ty)),tt)}function up(){let tt=Ri();return Zt(C.createDeleteExpression(Ru(ty)),tt)}function Iw(){let tt=Ri();return Zt(C.createTypeOfExpression(Ru(ty)),tt)}function cB(){let tt=Ri();return Zt(C.createVoidExpression(Ru(ty)),tt)}function RD(){return Wt()===135?Xu()?!0:oo(Ro):!1}function Rd(){let tt=Ri();return Zt(C.createAwaitExpression(Ru(ty)),tt)}function JR(){if(cF()){let kr=Ri(),Xr=$1();return Wt()===43?X2(eNr(Wt()),Xr,kr):Xr}let tt=Wt(),Jt=ty();if(Wt()===43){let kr=dj(xt,Jt.pos),{end:Xr}=Jt;Jt.kind===216?_g(kr,Xr,ts.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(Zo.assert($Rr(tt)),_g(kr,Xr,ts.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,by(tt)))}return Jt}function ty(){switch(Wt()){case 40:case 41:case 55:case 54:return ey();case 91:return up();case 114:return Iw();case 116:return cB();case 30:return Xt===1?t1(!0,void 0,void 0,!0):rf();case 135:if(RD())return Rd();default:return $1()}}function cF(){switch(Wt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Xt!==1)return!1;default:return!0}}function $1(){if(Wt()===46||Wt()===47){let Jt=Ri();return Zt(C.createPrefixUnaryExpression(Wt(),Ru($E)),Jt)}else if(Xt===1&&Wt()===30&&oo(_d))return t1(!0);let tt=$E();if(Zo.assert(RNe(tt)),(Wt()===46||Wt()===47)&&!t.hasPrecedingLineBreak()){let Jt=Wt();return Vs(),Zt(C.createPostfixUnaryExpression(tt,Jt),tt.pos)}return tt}function $E(){let tt=Ri(),Jt;return Wt()===102?oo(na)?(vt|=4194304,Jt=ZA()):oo(ko)?(Vs(),Vs(),Jt=Zt(C.createMetaProperty(102,Ca()),tt),vt|=8388608):Jt=N_():Jt=Wt()===108?e1():N_(),r1(tt,Jt)}function N_(){let tt=Ri(),Jt=b0();return Ih(tt,Jt,!0)}function e1(){let tt=Ri(),Jt=ZA();if(Wt()===30){let kr=Ri(),Xr=Ki(hw);Xr!==void 0&&(_g(kr,Ri(),ts.super_may_not_use_type_arguments),xC()||(Jt=C.createExpressionWithTypeArguments(Jt,Xr)))}return Wt()===21||Wt()===25||Wt()===23?Jt:(il(25,ts.super_must_be_followed_by_an_argument_list_or_member_access),Zt(ce(Jt,K(!0,!0,!0)),tt))}function t1(tt,Jt,kr,Xr=!1){let ui=Ri(),Is=Rh(tt),Hs;if(Is.kind===286){let Rs=yb(Is),ja,ho=Rs[Rs.length-1];if(ho?.kind===284&&!mce(ho.openingElement.tagName,ho.closingElement.tagName)&&mce(Is.tagName,ho.closingElement.tagName)){let sl=ho.children.end,Nd=Zt(C.createJsxElement(ho.openingElement,ho.children,Zt(C.createJsxClosingElement(Zt(F(""),sl,sl)),sl,sl)),ho.openingElement.pos,sl);Rs=Er([...Rs.slice(0,Rs.length-1),Nd],Rs.pos,sl),ja=ho.closingElement}else ja=lc(Is,tt),mce(Is.tagName,ja.tagName)||(kr&&hSi(kr)&&mce(ja.tagName,kr.tagName)?mI(Is.tagName,ts.JSX_element_0_has_no_corresponding_closing_tag,dJe(xt,Is.tagName)):mI(ja.tagName,ts.Expected_corresponding_JSX_closing_tag_for_0,dJe(xt,Is.tagName)));Hs=Zt(C.createJsxElement(Is,Rs,ja),ui)}else Is.kind===289?Hs=Zt(C.createJsxFragment(Is,yb(Is),fh(tt)),ui):(Zo.assert(Is.kind===285),Hs=Is);if(!Xr&&tt&&Wt()===30){let Rs=typeof Jt>"u"?Hs.pos:Jt,ja=Ki(()=>t1(!0,Rs));if(ja){let ho=bn(28,!1);return ASi(ho,ja.pos,0),_g(dj(xt,Rs),ja.end,ts.JSX_expressions_must_have_one_parent_element),Zt(C.createBinaryExpression(Hs,ho,ja),ui)}}return Hs}function ry(){let tt=Ri(),Jt=C.createJsxText(t.getTokenValue(),qr===13);return qr=t.scanJsxToken(),Zt(Jt,tt)}function xT(tt,Jt){switch(Jt){case 1:if(jec(tt))mI(tt,ts.JSX_fragment_has_no_corresponding_closing_tag);else{let kr=tt.tagName,Xr=Math.min(dj(xt,kr.pos),kr.end);_g(Xr,kr.end,ts.JSX_element_0_has_no_corresponding_closing_tag,dJe(xt,tt.tagName))}return;case 31:case 7:return;case 12:case 13:return ry();case 19:return ND(!1);case 30:return t1(!1,void 0,tt);default:return Zo.assertNever(Jt)}}function yb(tt){let Jt=[],kr=Ri(),Xr=Fn;for(Fn|=16384;;){let ui=xT(tt,qr=t.reScanJsxToken());if(!ui||(Jt.push(ui),hSi(tt)&&ui?.kind===284&&!mce(ui.openingElement.tagName,ui.closingElement.tagName)&&mce(tt.tagName,ui.closingElement.tagName)))break}return Fn=Xr,Er(Jt,kr)}function r_(){let tt=Ri();return Zt(C.createJsxAttributes(jd(13,DD)),tt)}function Rh(tt){let Jt=Ri();if(ws(30),Wt()===32)return Uf(),Zt(C.createJsxOpeningFragment(),Jt);let kr=bb(),Xr=Hi&524288?void 0:xn(),ui=r_(),Is;return Wt()===32?(Uf(),Is=C.createJsxOpeningElement(kr,Xr,ui)):(ws(44),ws(32,void 0,!1)&&(tt?Vs():Uf()),Is=C.createJsxSelfClosingElement(kr,Xr,ui)),Zt(Is,Jt)}function bb(){let tt=Ri(),Jt=lB();if(FBi(Jt))return Jt;let kr=Jt;for(;rc(25);)kr=Zt(ce(kr,K(!0,!1,!1)),tt);return kr}function lB(){let tt=Ri();dl();let Jt=Wt()===110,kr=ld();return rc(59)?(dl(),Zt(C.createJsxNamespacedName(kr,ld()),tt)):Jt?Zt(C.createToken(110),tt):kr}function ND(tt){let Jt=Ri();if(!ws(19))return;let kr,Xr;return Wt()!==20&&(tt||(kr=sd(26)),Xr=$A()),tt?ws(20):ws(20,void 0,!1)&&Uf(),Zt(C.createJsxExpression(kr,Xr),Jt)}function DD(){if(Wt()===19)return UR();let tt=Ri();return Zt(C.createJsxAttribute(kD(),q_()),tt)}function q_(){if(Wt()===64){if(Kd()===11)return ra();if(Wt()===19)return ND(!0);if(Wt()===30)return t1(!0);Da(ts.or_JSX_element_expected)}}function kD(){let tt=Ri();dl();let Jt=ld();return rc(59)?(dl(),Zt(C.createJsxNamespacedName(Jt,ld()),tt)):Jt}function UR(){let tt=Ri();ws(19),ws(26);let Jt=$A();return ws(20),Zt(C.createJsxSpreadAttribute(Jt),tt)}function lc(tt,Jt){let kr=Ri();ws(31);let Xr=bb();return ws(32,void 0,!1)&&(Jt||!mce(tt.tagName,Xr)?Vs():Uf()),Zt(C.createJsxClosingElement(Xr),kr)}function fh(tt){let Jt=Ri();return ws(31),ws(32,ts.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(tt?Vs():Uf()),Zt(C.createJsxJsxClosingFragment(),Jt)}function rf(){Zo.assert(Xt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let tt=Ri();ws(30);let Jt=tf();ws(32);let kr=ty();return Zt(C.createTypeAssertion(Jt,kr),tt)}function yI(){return Vs(),H1(Wt())||Wt()===23||xC()}function aE(){return Wt()===29&&oo(yI)}function qS(tt){if(tt.flags&64)return!0;if(Wbt(tt)){let Jt=tt.expression;for(;Wbt(Jt)&&!(Jt.flags&64);)Jt=Jt.expression;if(Jt.flags&64){for(;Wbt(tt);)tt.flags|=64,tt=tt.expression;return!0}}return!1}function Qp(tt,Jt,kr){let Xr=K(!0,!0,!0),ui=kr||qS(Jt),Is=ui?fe(Jt,kr,Xr):ce(Jt,Xr);if(ui&&Qme(Is.name)&&mI(Is.name,ts.An_optional_chain_cannot_contain_private_identifiers),Mec(Jt)&&Jt.typeArguments){let Hs=Jt.typeArguments.pos-1,Rs=dj(xt,Jt.typeArguments.end)+1;_g(Hs,Rs,ts.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Zt(Is,tt)}function uB(tt,Jt,kr){let Xr;if(Wt()===24)Xr=bn(80,!0,ts.An_element_access_expression_should_take_an_argument);else{let Is=gc($A);rEt(Is)&&(Is.text=ls(Is.text)),Xr=Is}ws(24);let ui=kr||qS(Jt)?de(Jt,kr,Xr):ue(Jt,Xr);return Zt(ui,tt)}function Ih(tt,Jt,kr){for(;;){let Xr,ui=!1;if(kr&&aE()?(Xr=il(29),ui=H1(Wt())):ui=rc(25),ui){Jt=Qp(tt,Jt,Xr);continue}if((Xr||!Ul())&&rc(23)){Jt=uB(tt,Jt,Xr);continue}if(xC()){Jt=!Xr&&Jt.kind===233?$_(tt,Jt.expression,Xr,Jt.typeArguments):$_(tt,Jt,Xr,void 0);continue}if(!Xr){if(Wt()===54&&!t.hasPrecedingLineBreak()){Vs(),Jt=Zt(C.createNonNullExpression(Jt),tt);continue}let Is=Ki(hw);if(Is){Jt=Zt(C.createExpressionWithTypeArguments(Jt,Is),tt);continue}}return Jt}}function xC(){return Wt()===15||Wt()===16}function $_(tt,Jt,kr,Xr){let ui=C.createTaggedTemplateExpression(Jt,Xr,Wt()===15?(OA(!0),ra()):gt(!0));return(kr||Jt.flags&64)&&(ui.flags|=64),ui.questionDotToken=kr,Zt(ui,tt)}function r1(tt,Jt){for(;;){Jt=Ih(tt,Jt,!0);let kr,Xr=sd(29);if(Xr&&(kr=Ki(hw),xC())){Jt=$_(tt,Jt,Xr,kr);continue}if(kr||Wt()===21){!Xr&&Jt.kind===233&&(kr=Jt.typeArguments,Jt=Jt.expression);let ui=gB(),Is=Xr||qS(Jt)?Se(Jt,Xr,kr,ui):be(Jt,kr,ui);Jt=Zt(Is,tt);continue}if(Xr){let ui=bn(80,!1,ts.Identifier_expected);Jt=Zt(fe(Jt,Xr,ui),tt)}break}return Jt}function gB(){ws(21);let tt=Kf(11,bI);return ws(22),tt}function hw(){if(Hi&524288||GA()!==30)return;Vs();let tt=Kf(20,tf);if(Ko()===32)return Vs(),tt&>()?tt:void 0}function GT(){switch(Wt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||kT()||!$I()}function b0(){switch(Wt()){case 15:t.getTokenFlags()&26656&&OA(!1);case 9:case 10:case 11:return ra();case 110:case 108:case 106:case 112:case 97:return ZA();case 21:return ia();case 23:return ag();case 19:return n1();case 134:if(!oo(t2))break;return U2();case 60:return Ur();case 86:return mi();case 100:return U2();case 105:return n_();case 44:case 69:if(Eg()===14)return ra();break;case 16:return gt(!1);case 81:return so()}return Wa(ts.Expression_expected)}function ia(){let tt=Ri(),Jt=Do();ws(21);let kr=gc($A);return ws(22),Hr(Zt(k(kr),tt),Jt)}function e2(){let tt=Ri();ws(26);let Jt=zf(!0);return Zt(C.createSpreadElement(Jt),tt)}function yd(){return Wt()===26?e2():Wt()===28?Zt(C.createOmittedExpression(),Ri()):zf(!0)}function bI(){return bo(r,yd)}function ag(){let tt=Ri(),Jt=t.getTokenStart(),kr=ws(23),Xr=t.hasPrecedingLineBreak(),ui=Kf(15,yd);return Fl(23,24,kr,Jt),Zt(ae(ui,Xr),tt)}function Eb(){let tt=Ri(),Jt=Do();if(sd(26)){let ho=zf(!0);return Hr(Zt(C.createSpreadAssignment(ho),tt),Jt)}let kr=Le(!0);if(Ea(139))return Bb(tt,Jt,kr,177,0);if(Ea(153))return Bb(tt,Jt,kr,178,0);let Xr=sd(42),ui=Xs(),Is=df(),Hs=sd(58),Rs=sd(54);if(Xr||Wt()===21||Wt()===30)return vb(tt,Jt,kr,Xr,Is,Hs,Rs);let ja;if(ui&&Wt()!==59){let ho=sd(64),sl=ho?gc(()=>zf(!0)):void 0;ja=C.createShorthandPropertyAssignment(Is,sl),ja.equalsToken=ho}else{ws(59);let ho=gc(()=>zf(!0));ja=C.createPropertyAssignment(Is,ho)}return ja.modifiers=kr,ja.questionToken=Hs,ja.exclamationToken=Rs,Hr(Zt(ja,tt),Jt)}function n1(){let tt=Ri(),Jt=t.getTokenStart(),kr=ws(19),Xr=t.hasPrecedingLineBreak(),ui=Kf(12,Eb,!0);return Fl(19,20,kr,Jt),Zt(ne(ui,Xr),tt)}function U2(){let tt=Ul();ps(!1);let Jt=Ri(),kr=Do(),Xr=Le(!1);ws(100);let ui=sd(42),Is=ui?1:0,Hs=oD(Xr,Zbt)?2:0,Rs=Is&&Hs?Ps(e0):Is?ma(e0):Hs?li(e0):e0(),ja=gC(),ho=Mc(Is|Hs),sl=ph(59,!1),Nd=cE(Is|Hs);ps(tt);let ed=C.createFunctionExpression(Xr,ui,Rs,ja,ho,sl,Nd);return Hr(Zt(ed,Jt),kr)}function e0(){return cc()?Fs():void 0}function n_(){let tt=Ri();if(ws(105),rc(25)){let Is=Ca();return Zt(C.createMetaProperty(105,Is),tt)}let Jt=Ri(),kr=Ih(Jt,b0(),!1),Xr;kr.kind===233&&(Xr=kr.typeArguments,kr=kr.expression),Wt()===29&&Da(ts.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,dJe(xt,kr));let ui=Wt()===21?gB():void 0;return Zt(De(kr,Xr,ui),tt)}function Xp(tt,Jt){let kr=Ri(),Xr=Do(),ui=t.getTokenStart(),Is=ws(19,Jt);if(Is||tt){let Hs=t.hasPrecedingLineBreak(),Rs=jd(1,Am);Fl(19,20,Is,ui);let ja=Hr(Zt(et(Rs,Hs),kr),Xr);return Wt()===64&&(Da(ts.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Vs()),ja}else{let Hs=_I();return Hr(Zt(et(Hs,void 0),kr),Xr)}}function cE(tt,Jt){let kr=Yl();Qi(!!(tt&1));let Xr=Xu();yo(!!(tt&2));let ui=po;po=!1;let Is=Ul();Is&&ps(!1);let Hs=Xp(!!(tt&16),Jt);return Is&&ps(!0),po=ui,Qi(kr),yo(Xr),Hs}function lE(){let tt=Ri(),Jt=Do();return ws(27),Hr(Zt(C.createEmptyStatement(),tt),Jt)}function Ip(){let tt=Ri(),Jt=Do();ws(101);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Am(),Hs=rc(93)?Am():void 0;return Hr(Zt(je(ui,Is,Hs),tt),Jt)}function Xh(){let tt=Ri(),Jt=Do();ws(92);let kr=Am();ws(117);let Xr=t.getTokenStart(),ui=ws(21),Is=gc($A);return Fl(21,22,ui,Xr),rc(27),Hr(Zt(C.createDoStatement(kr,Is),tt),Jt)}function E0(){let tt=Ri(),Jt=Do();ws(117);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Am();return Hr(Zt(St(ui,Is),tt),Jt)}function aA(){let tt=Ri(),Jt=Do();ws(99);let kr=sd(135);ws(21);let Xr;Wt()!==27&&(Wt()===115||Wt()===121||Wt()===87||Wt()===160&&oo(yL)||Wt()===135&&oo(ny)?Xr=j(!0):Xr=Cg($A));let ui;if(kr?ws(165):rc(165)){let Is=gc(()=>zf(!0));ws(22),ui=Yt(kr,Xr,Is,Am())}else if(rc(103)){let Is=gc($A);ws(22),ui=C.createForInStatement(Xr,Is,Am())}else{ws(27);let Is=Wt()!==27&&Wt()!==22?gc($A):void 0;ws(27);let Hs=Wt()!==22?gc($A):void 0;ws(22),ui=At(Xr,Is,Hs,Am())}return Hr(Zt(ui,tt),Jt)}function fu(tt){let Jt=Ri(),kr=Do();ws(tt===252?83:88);let Xr=yg()?void 0:Wa();MA();let ui=tt===252?C.createBreakStatement(Xr):C.createContinueStatement(Xr);return Hr(Zt(ui,Jt),kr)}function Jp(){let tt=Ri(),Jt=Do();ws(107);let kr=yg()?void 0:gc($A);return MA(),Hr(Zt(C.createReturnStatement(kr),tt),Jt)}function dC(){let tt=Ri(),Jt=Do();ws(118);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Qa(67108864,Am);return Hr(Zt(C.createWithStatement(ui,Is),tt),Jt)}function uE(){let tt=Ri(),Jt=Do();ws(84);let kr=gc($A);ws(59);let Xr=jd(3,Am);return Hr(Zt(C.createCaseClause(kr,Xr),tt),Jt)}function eh(){let tt=Ri();ws(90),ws(59);let Jt=jd(3,Am);return Zt(C.createDefaultClause(Jt),tt)}function Wf(){return Wt()===84?uE():eh()}function Mo(){let tt=Ri();ws(19);let Jt=jd(2,Wf);return ws(20),Zt(C.createCaseBlock(Jt),tt)}function gp(){let tt=Ri(),Jt=Do();ws(109),ws(21);let kr=gc($A);ws(22);let Xr=Mo();return Hr(Zt(C.createSwitchStatement(kr,Xr),tt),Jt)}function lF(){let tt=Ri(),Jt=Do();ws(111);let kr=t.hasPrecedingLineBreak()?void 0:gc($A);return kr===void 0&&(jt++,kr=Zt(F(""),Ri())),Mp()||Ma(kr),Hr(Zt(C.createThrowStatement(kr),tt),Jt)}function uF(){let tt=Ri(),Jt=Do();ws(113);let kr=Xp(!1),Xr=Wt()===85?gE():void 0,ui;return(!Xr||Wt()===98)&&(ws(98,ts.catch_or_finally_expected),ui=Xp(!1)),Hr(Zt(C.createTryStatement(kr,Xr,ui),tt),Jt)}function gE(){let tt=Ri();ws(85);let Jt;rc(21)?(Jt=Vd(),ws(22)):Jt=void 0;let kr=Xp(!1);return Zt(C.createCatchClause(Jt,kr),tt)}function FT(){let tt=Ri(),Jt=Do();return ws(89),MA(),Hr(Zt(C.createDebuggerStatement(),tt),Jt)}function Np(){let tt=Ri(),Jt=Do(),kr,Xr=Wt()===21,ui=gc($A);return $C(ui)&&rc(59)?kr=C.createLabeledStatement(ui,Am()):(Mp()||Ma(ui),kr=Me(ui),Xr&&(Jt=!1)),Hr(Zt(kr,tt),Jt)}function Dm(){return Vs(),H1(Wt())&&!t.hasPrecedingLineBreak()}function Dp(){return Vs(),Wt()===86&&!t.hasPrecedingLineBreak()}function t2(){return Vs(),Wt()===100&&!t.hasPrecedingLineBreak()}function Ro(){return Vs(),(H1(Wt())||Wt()===9||Wt()===10||Wt()===11)&&!t.hasPrecedingLineBreak()}function AE(){for(;;)switch(Wt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return Ou();case 135:return hp();case 120:case 156:return R_();case 144:case 145:return qf();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let tt=Wt();if(Vs(),t.hasPrecedingLineBreak())return!1;if(tt===138&&Wt()===156)return!0;continue;case 162:return Vs(),Wt()===19||Wt()===80||Wt()===95;case 102:return Vs(),Wt()===11||Wt()===42||Wt()===19||H1(Wt());case 95:let Jt=Vs();if(Jt===156&&(Jt=oo(Vs)),Jt===64||Jt===42||Jt===19||Jt===90||Jt===130||Jt===60)return!0;continue;case 126:Vs();continue;default:return!1}}function AB(){return oo(AE)}function Xc(){switch(Wt()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return AB()||oo(ki);case 87:case 95:return AB();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return AB()||!oo(Dm);default:return $I()}}function iu(){return Vs(),cc()||Wt()===19||Wt()===23}function dE(){return oo(iu)}function yL(){return KR(!0)}function KR(tt){return Vs(),tt&&Wt()===165?!1:(cc()||Wt()===19)&&!t.hasPrecedingLineBreak()}function Ou(){return oo(KR)}function ny(tt){return Vs()===160?KR(tt):!1}function hp(){return oo(ny)}function Am(){switch(Wt()){case 27:return lE();case 19:return Xp(!1);case 115:return Id(Ri(),Do(),void 0);case 121:if(dE())return Id(Ri(),Do(),void 0);break;case 135:if(hp())return Id(Ri(),Do(),void 0);break;case 160:if(Ou())return Id(Ri(),Do(),void 0);break;case 100:return fB(Ri(),Do(),void 0);case 86:return Vi(Ri(),Do(),void 0);case 101:return Ip();case 92:return Xh();case 117:return E0();case 99:return aA();case 88:return fu(251);case 83:return fu(252);case 107:return Jp();case 118:return dC();case 109:return gp();case 111:return lF();case 113:case 85:case 98:return uF();case 89:return FT();case 60:return i_();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(AB())return i_();break}return Np()}function K2(tt){return tt.kind===138}function i_(){let tt=Ri(),Jt=Do(),kr=Le(!0);if(oD(kr,K2)){let Xr=dB(tt);if(Xr)return Xr;for(let ui of kr)ui.flags|=33554432;return Qa(33554432,()=>ZT(tt,Jt,kr))}else return ZT(tt,Jt,kr)}function dB(tt){return Qa(33554432,()=>{let Jt=Hp(Fn,tt);if(Jt)return uC(Jt)})}function ZT(tt,Jt,kr){switch(Wt()){case 115:case 121:case 87:case 160:case 135:return Id(tt,Jt,kr);case 100:return fB(tt,Jt,kr);case 86:return Vi(tt,Jt,kr);case 120:return Po(tt,Jt,kr);case 156:return ec(tt,Jt,kr);case 94:return dc(tt,Jt,kr);case 162:case 144:case 145:return $f(tt,Jt,kr);case 102:return qO(tt,Jt,kr);case 95:switch(Vs(),Wt()){case 90:case 64:return sY(tt,Jt,kr);case 130:return Yu(tt,Jt,kr);default:return iy(tt,Jt,kr)}default:if(kr){let Xr=bn(282,!0,ts.Declaration_expected);return CNr(Xr,tt),Xr.modifiers=kr,Xr}return}}function Cx(){return Vs()===11}function pB(){return Vs(),Wt()===161||Wt()===64}function qf(){return Vs(),!t.hasPrecedingLineBreak()&&(Xs()||Wt()===11)}function Jh(tt,Jt){if(Wt()!==19){if(tt&4){Pf();return}if(yg()){MA();return}}return cE(tt,Jt)}function $S(){let tt=Ri();if(Wt()===28)return Zt(C.createOmittedExpression(),tt);let Jt=sd(26),kr=Of(),Xr=Qm();return Zt(C.createBindingElement(Jt,void 0,kr,Xr),tt)}function Sb(){let tt=Ri(),Jt=sd(26),kr=cc(),Xr=df(),ui;kr&&Wt()!==59?(ui=Xr,Xr=void 0):(ws(59),ui=Of());let Is=Qm();return Zt(C.createBindingElement(Jt,Xr,ui,Is),tt)}function mp(){let tt=Ri();ws(19);let Jt=gc(()=>Kf(9,Sb));return ws(20),Zt(C.createObjectBindingPattern(Jt),tt)}function r2(){let tt=Ri();ws(23);let Jt=gc(()=>Kf(10,$S));return ws(24),Zt(C.createArrayBindingPattern(Jt),tt)}function i1(){return Wt()===19||Wt()===23||Wt()===81||cc()}function Of(tt){return Wt()===23?r2():Wt()===19?mp():Fs(tt)}function pE(){return Vd(!0)}function Vd(tt){let Jt=Ri(),kr=Do(),Xr=Of(ts.Private_identifiers_are_not_allowed_in_variable_declarations),ui;tt&&Xr.kind===80&&Wt()===54&&!t.hasPrecedingLineBreak()&&(ui=ZA());let Is=Ty(),Hs=qE(Wt())?void 0:Qm(),Rs=Tr(Xr,ui,Is,Hs);return Hr(Zt(Rs,Jt),kr)}function j(tt){let Jt=Ri(),kr=0;switch(Wt()){case 115:break;case 121:kr|=1;break;case 87:kr|=2;break;case 160:kr|=4;break;case 135:Zo.assert(hp()),kr|=6,Vs();break;default:Zo.fail()}Vs();let Xr;if(Wt()===165&&oo(Z))Xr=_I();else{let ui=Wc();Or(tt),Xr=Kf(8,tt?Vd:pE),Or(ui)}return Zt(Nr(Xr,kr),Jt)}function Z(){return ef()&&Vs()===22}function Id(tt,Jt,kr){let Xr=j(!1);MA();let ui=ct(kr,Xr);return Hr(Zt(ui,tt),Jt)}function fB(tt,Jt,kr){let Xr=Xu(),ui=fO(kr);ws(100);let Is=sd(42),Hs=ui&2048?e0():Fs(),Rs=Is?1:0,ja=ui&1024?2:0,ho=gC();ui&32&&yo(!0);let sl=Mc(Rs|ja),Nd=ph(59,!1),ed=Jh(Rs|ja,ts.or_expected);yo(Xr);let Og=C.createFunctionDeclaration(kr,Is,Hs,ho,sl,Nd,ed);return Hr(Zt(Og,tt),Jt)}function ev(){if(Wt()===137)return ws(137);if(Wt()===11&&oo(Vs)===21)return Ki(()=>{let tt=ra();return tt.text==="constructor"?tt:void 0})}function Ny(tt,Jt,kr){return Ki(()=>{if(ev()){let Xr=gC(),ui=Mc(0),Is=ph(59,!1),Hs=Jh(0,ts.or_expected),Rs=C.createConstructorDeclaration(kr,ui,Hs);return Rs.typeParameters=Xr,Rs.type=Is,Hr(Zt(Rs,tt),Jt)}})}function vb(tt,Jt,kr,Xr,ui,Is,Hs,Rs){let ja=Xr?1:0,ho=oD(kr,Zbt)?2:0,sl=gC(),Nd=Mc(ja|ho),ed=ph(59,!1),Og=Jh(ja|ho,Rs),Nh=C.createMethodDeclaration(kr,Xr,ui,Is,sl,Nd,ed,Og);return Nh.exclamationToken=Hs,Hr(Zt(Nh,tt),Jt)}function xD(tt,Jt,kr,Xr,ui){let Is=!ui&&!t.hasPrecedingLineBreak()?sd(54):void 0,Hs=Ty(),Rs=bo(90112,Qm);Tf(Xr,Hs,Rs);let ja=C.createPropertyDeclaration(kr,Xr,ui||Is,Hs,Rs);return Hr(Zt(ja,tt),Jt)}function IB(tt,Jt,kr){let Xr=sd(42),ui=df(),Is=sd(58);return Xr||Wt()===21||Wt()===30?vb(tt,Jt,kr,Xr,ui,Is,void 0,ts.or_expected):xD(tt,Jt,kr,ui,Is)}function Bb(tt,Jt,kr,Xr,ui){let Is=df(),Hs=gC(),Rs=Mc(0),ja=ph(59,!1),ho=Jh(ui),sl=Xr===177?C.createGetAccessorDeclaration(kr,Is,Rs,ja,ho):C.createSetAccessorDeclaration(kr,Is,Rs,ho);return sl.typeParameters=Hs,qbt(sl)&&(sl.type=ja),Hr(Zt(sl,tt),Jt)}function bL(){let tt;if(Wt()===60)return!0;for(;Bee(Wt());){if(tt=Wt(),sqa(tt))return!0;Vs()}if(Wt()===42||(Rp()&&(tt=Wt(),Vs()),Wt()===23))return!0;if(tt!==void 0){if(!_ce(tt)||tt===153||tt===139)return!0;switch(Wt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return yg()}}return!1}function gF(tt,Jt,kr){il(126);let Xr=x(),ui=Hr(Zt(C.createClassStaticBlockDeclaration(Xr),tt),Jt);return ui.modifiers=kr,ui}function x(){let tt=Yl(),Jt=Xu();Qi(!1),yo(!0);let kr=Xp(!1);return Qi(tt),yo(Jt),kr}function L(){if(Xu()&&Wt()===135){let tt=Ri(),Jt=Wa(ts.Expression_expected);Vs();let kr=Ih(tt,Jt,!0);return r1(tt,kr)}return $E()}function te(){let tt=Ri();if(!rc(60))return;let Jt=vu(L);return Zt(C.createDecorator(Jt),tt)}function Re(tt,Jt,kr){let Xr=Ri(),ui=Wt();if(Wt()===87&&Jt){if(!Ki(Ml))return}else if(kr&&Wt()===126&&oo(z2)||tt&&Wt()===126||!aa())return;return Zt(X(ui),Xr)}function Le(tt,Jt,kr){let Xr=Ri(),ui,Is,Hs,Rs=!1,ja=!1,ho=!1;if(tt&&Wt()===60)for(;Is=te();)ui=mV(ui,Is);for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=mV(ui,Hs),ja=!0;if(ja&&tt&&Wt()===60)for(;Is=te();)ui=mV(ui,Is),ho=!0;if(ho)for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=mV(ui,Hs);return ui&&Er(ui,Xr)}function ft(){let tt;if(Wt()===134){let Jt=Ri();Vs();let kr=Zt(X(134),Jt);tt=Er([kr],Jt)}return tt}function dr(){let tt=Ri(),Jt=Do();if(Wt()===27)return Vs(),Hr(Zt(C.createSemicolonClassElement(),tt),Jt);let kr=Le(!0,!0,!0);if(Wt()===126&&oo(z2))return gF(tt,Jt,kr);if(Ea(139))return Bb(tt,Jt,kr,177,0);if(Ea(153))return Bb(tt,Jt,kr,178,0);if(Wt()===137||Wt()===11){let Xr=Ny(tt,Jt,kr);if(Xr)return Xr}if(eA())return XS(tt,Jt,kr);if(H1(Wt())||Wt()===11||Wt()===9||Wt()===10||Wt()===42||Wt()===23)if(oD(kr,K2)){for(let Xr of kr)Xr.flags|=33554432;return Qa(33554432,()=>IB(tt,Jt,kr))}else return IB(tt,Jt,kr);if(kr){let Xr=bn(80,!0,ts.Declaration_expected);return xD(tt,Jt,kr,Xr,void 0)}return Zo.fail("Should not have attempted to parse class member declaration.")}function Ur(){let tt=Ri(),Jt=Do(),kr=Le(!0);if(Wt()===86)return Ta(tt,Jt,kr,231);let Xr=bn(282,!0,ts.Expression_expected);return CNr(Xr,tt),Xr.modifiers=kr,Xr}function mi(){return Ta(Ri(),Do(),void 0,231)}function Vi(tt,Jt,kr){return Ta(tt,Jt,kr,263)}function Ta(tt,Jt,kr,Xr){let ui=Xu();ws(86);let Is=Sl(),Hs=gC();oD(kr,lec)&&yo(!0);let Rs=Wg(),ja;ws(19)?(ja=Ci(),ws(20)):ja=_I(),yo(ui);let ho=Xr===263?C.createClassDeclaration(kr,Is,Hs,Rs,ja):C.createClassExpression(kr,Is,Hs,Rs,ja);return Hr(Zt(ho,tt),Jt)}function Sl(){return cc()&&!Ho()?oa(cc()):void 0}function Ho(){return Wt()===119&&oo(ip)}function Wg(){if(rn())return jd(22,cA)}function cA(){let tt=Ri(),Jt=Wt();Zo.assert(Jt===96||Jt===119),Vs();let kr=Kf(7,th);return Zt(C.createHeritageClause(Jt,kr),tt)}function th(){let tt=Ri(),Jt=$E();if(Jt.kind===233)return Jt;let kr=xn();return Zt(C.createExpressionWithTypeArguments(Jt,kr),tt)}function xn(){return Wt()===30?iE(20,tf,30,32):void 0}function rn(){return Wt()===96||Wt()===119}function Ci(){return jd(5,dr)}function Po(tt,Jt,kr){ws(120);let Xr=Wa(),ui=gC(),Is=Wg(),Hs=fd(),Rs=C.createInterfaceDeclaration(kr,Xr,ui,Is,Hs);return Hr(Zt(Rs,tt),Jt)}function ec(tt,Jt,kr){ws(156),t.hasPrecedingLineBreak()&&Da(ts.Line_break_not_permitted_here);let Xr=Wa(),ui=gC();ws(64);let Is=Wt()===141&&Ki(JS)||tf();MA();let Hs=C.createTypeAliasDeclaration(kr,Xr,ui,Is);return Hr(Zt(Hs,tt),Jt)}function Ra(){let tt=Ri(),Jt=Do(),kr=df(),Xr=gc(Qm);return Hr(Zt(C.createEnumMember(kr,Xr),tt),Jt)}function dc(tt,Jt,kr){ws(94);let Xr=Wa(),ui;ws(19)?(ui=Xa(()=>Kf(6,Ra)),ws(20)):ui=_I();let Is=C.createEnumDeclaration(kr,Xr,ui);return Hr(Zt(Is,tt),Jt)}function Iu(){let tt=Ri(),Jt;return ws(19)?(Jt=jd(1,Am),ws(20)):Jt=_I(),Zt(C.createModuleBlock(Jt),tt)}function Cl(tt,Jt,kr,Xr){let ui=Xr&32,Is=Xr&8?Ca():Wa(),Hs=rc(25)?Cl(Ri(),!1,void 0,8|ui):Iu(),Rs=C.createModuleDeclaration(kr,Is,Hs,Xr);return Hr(Zt(Rs,tt),Jt)}function wl(tt,Jt,kr){let Xr=0,ui;Wt()===162?(ui=Wa(),Xr|=2048):(ui=ra(),ui.text=ls(ui.text));let Is;Wt()===19?Is=Iu():MA();let Hs=C.createModuleDeclaration(kr,ui,Is,Xr);return Hr(Zt(Hs,tt),Jt)}function $f(tt,Jt,kr){let Xr=0;if(Wt()===162)return wl(tt,Jt,kr);if(rc(145))Xr|=32;else if(ws(144),Wt()===11)return wl(tt,Jt,kr);return Cl(tt,Jt,kr,Xr)}function j2(){return Wt()===149&&oo(_x)}function _x(){return Vs()===21}function z2(){return Vs()===19}function tv(){return Vs()===44}function Yu(tt,Jt,kr){ws(130),ws(145);let Xr=Wa();MA();let ui=C.createNamespaceExportDeclaration(Xr);return ui.modifiers=kr,Hr(Zt(ui,tt),Jt)}function qO(tt,Jt,kr){ws(102);let Xr=t.getTokenFullStart(),ui;Xs()&&(ui=Wa());let Is=!1;if(ui?.escapedText==="type"&&(Wt()!==161||Xs()&&oo(pB))&&(Xs()||iY())&&(Is=!0,ui=Xs()?Wa():void 0),ui&&!LT())return GD(tt,Jt,kr,ui,Is);let Hs=hB(ui,Xr,Is),Rs=FD(),ja=mw();MA();let ho=C.createImportDeclaration(kr,Hs,Rs,ja);return Hr(Zt(ho,tt),Jt)}function hB(tt,Jt,kr,Xr=!1){let ui;return(tt||Wt()===42||Wt()===19)&&(ui=dF(tt,Jt,kr,Xr),ws(161)),ui}function mw(){let tt=Wt();if((tt===118||tt===132)&&!t.hasPrecedingLineBreak())return $O(tt)}function AF(){let tt=Ri(),Jt=H1(Wt())?Ca():Bl(11);ws(59);let kr=zf(!0);return Zt(C.createImportAttribute(Jt,kr),tt)}function $O(tt,Jt){let kr=Ri();Jt||ws(tt);let Xr=t.getTokenStart();if(ws(19)){let ui=t.hasPrecedingLineBreak(),Is=Kf(24,AF,!0);if(!ws(20)){let Hs=Pme(lr);Hs&&Hs.code===ts._0_expected.code&&xbt(Hs,fNe(er,xt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Zt(C.createImportAttributes(Is,ui,tt),kr)}else{let ui=Er([],Ri(),void 0,!1);return Zt(C.createImportAttributes(ui,!1,tt),kr)}}function iY(){return Wt()===42||Wt()===19}function LT(){return Wt()===28||Wt()===161}function GD(tt,Jt,kr,Xr,ui){ws(64);let Is=EL();MA();let Hs=C.createImportEqualsDeclaration(kr,ui,Xr,Is);return Hr(Zt(Hs,tt),Jt)}function dF(tt,Jt,kr,Xr){let ui;return(!tt||rc(28))&&(Xr&&t.setSkipJsDocLeadingAsterisks(!0),ui=Wt()===42?fE():bd(275),Xr&&t.setSkipJsDocLeadingAsterisks(!1)),Zt(C.createImportClause(kr,tt,ui),Jt)}function EL(){return j2()?ff():se(!1)}function ff(){let tt=Ri();ws(149),ws(21);let Jt=FD();return ws(22),Zt(C.createExternalModuleReference(Jt),tt)}function FD(){if(Wt()===11){let tt=ra();return tt.text=ls(tt.text),tt}else return $A()}function fE(){let tt=Ri();ws(42),ws(130);let Jt=Wa();return Zt(C.createNamespaceImport(Jt),tt)}function n2(){return H1(Wt())||Wt()===11}function mB(tt){return Wt()===11?ra():tt()}function bd(tt){let Jt=Ri(),kr=tt===275?C.createNamedImports(iE(23,Uh,19,20)):C.createNamedExports(iE(23,s1,19,20));return Zt(kr,Jt)}function s1(){let tt=Do();return Hr(wb(281),tt)}function Uh(){return wb(276)}function wb(tt){let Jt=Ri(),kr=_ce(Wt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Is=!1,Hs,Rs=!0,ja=mB(Ca);if(ja.kind===80&&ja.escapedText==="type")if(Wt()===130){let Nd=Ca();if(Wt()===130){let ed=Ca();n2()?(Is=!0,Hs=Nd,ja=mB(sl),Rs=!1):(Hs=ja,ja=ed,Rs=!1)}else n2()?(Hs=ja,Rs=!1,ja=mB(sl)):(Is=!0,ja=Nd)}else n2()&&(Is=!0,ja=mB(sl));Rs&&Wt()===130&&(Hs=ja,ws(130),ja=mB(sl)),tt===276&&(ja.kind!==80?(_g(dj(xt,ja.pos),ja.end,ts.Identifier_expected),ja=Sce(bn(80,!1),ja.pos,ja.pos)):kr&&_g(Xr,ui,ts.Identifier_expected));let ho=tt===276?C.createImportSpecifier(Is,Hs,ja):C.createExportSpecifier(Is,Hs,ja);return Zt(ho,Jt);function sl(){return kr=_ce(Wt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Ca()}}function Uu(tt){return Zt(C.createNamespaceExport(mB(Ca)),tt)}function iy(tt,Jt,kr){let Xr=Xu();yo(!0);let ui,Is,Hs,Rs=rc(156),ja=Ri();rc(42)?(rc(130)&&(ui=Uu(ja)),ws(161),Is=FD()):(ui=bd(279),(Wt()===161||Wt()===11&&!t.hasPrecedingLineBreak())&&(ws(161),Is=FD()));let ho=Wt();Is&&(ho===118||ho===132)&&!t.hasPrecedingLineBreak()&&(Hs=$O(ho)),MA(),yo(Xr);let sl=C.createExportDeclaration(kr,Rs,ui,Is,Hs);return Hr(Zt(sl,tt),Jt)}function sY(tt,Jt,kr){let Xr=Xu();yo(!0);let ui;rc(64)?ui=!0:ws(90);let Is=zf(!0);MA(),yo(Xr);let Hs=C.createExportAssignment(kr,ui,Is);return Hr(Zt(Hs,tt),Jt)}let oY;(tt=>{tt[tt.SourceElements=0]="SourceElements",tt[tt.BlockStatements=1]="BlockStatements",tt[tt.SwitchClauses=2]="SwitchClauses",tt[tt.SwitchClauseStatements=3]="SwitchClauseStatements",tt[tt.TypeMembers=4]="TypeMembers",tt[tt.ClassMembers=5]="ClassMembers",tt[tt.EnumMembers=6]="EnumMembers",tt[tt.HeritageClauseElement=7]="HeritageClauseElement",tt[tt.VariableDeclarations=8]="VariableDeclarations",tt[tt.ObjectBindingElements=9]="ObjectBindingElements",tt[tt.ArrayBindingElements=10]="ArrayBindingElements",tt[tt.ArgumentExpressions=11]="ArgumentExpressions",tt[tt.ObjectLiteralMembers=12]="ObjectLiteralMembers",tt[tt.JsxAttributes=13]="JsxAttributes",tt[tt.JsxChildren=14]="JsxChildren",tt[tt.ArrayLiteralMembers=15]="ArrayLiteralMembers",tt[tt.Parameters=16]="Parameters",tt[tt.JSDocParameters=17]="JSDocParameters",tt[tt.RestProperties=18]="RestProperties",tt[tt.TypeParameters=19]="TypeParameters",tt[tt.TypeArguments=20]="TypeArguments",tt[tt.TupleElementTypes=21]="TupleElementTypes",tt[tt.HeritageClauses=22]="HeritageClauses",tt[tt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",tt[tt.ImportAttributes=24]="ImportAttributes",tt[tt.JSDocComment=25]="JSDocComment",tt[tt.Count=26]="Count"})(oY||(oY={}));let jR;(tt=>{tt[tt.False=0]="False",tt[tt.True=1]="True",tt[tt.Unknown=2]="Unknown"})(jR||(jR={}));let aY;(tt=>{function Jt(ho,sl,Nd){Ya("file.js",ho,99,void 0,1,0),t.setText(ho,sl,Nd),qr=t.scan();let ed=kr(),Og=zr("file.js",99,1,!1,[],X(1),0,DNe),Nh=Dme(lr,Og);return cr&&(Og.jsDocDiagnostics=Dme(cr,Og)),Gc(),ed?{jsDocTypeExpression:ed,diagnostics:Nh}:void 0}tt.parseJSDocTypeExpressionForTests=Jt;function kr(ho){let sl=Ri(),Nd=(ho?rc:ws)(19),ed=Qa(16777216,YS);(!ho||Nd)&&cm(20);let Og=C.createJSDocTypeExpression(ed);return Ft(Og),Zt(Og,sl)}tt.parseJSDocTypeExpression=kr;function Xr(){let ho=Ri(),sl=rc(19),Nd=Ri(),ed=se(!1);for(;Wt()===81;)$i(),Ju(),ed=Zt(C.createJSDocMemberName(ed,Wa()),Nd);sl&&cm(20);let Og=C.createJSDocNameReference(ed);return Ft(Og),Zt(Og,ho)}tt.parseJSDocNameReference=Xr;function ui(ho,sl,Nd){Ya("",ho,99,void 0,1,0);let ed=Qa(16777216,()=>ja(sl,Nd)),Og=Dme(lr,{languageVariant:0,text:ho});return Gc(),ed?{jsDoc:ed,diagnostics:Og}:void 0}tt.parseIsolatedJSDocComment=ui;function Is(ho,sl,Nd){let ed=qr,Og=lr.length,Nh=Vr,o1=Qa(16777216,()=>ja(sl,Nd));return iDr(o1,ho),Hi&524288&&(cr||(cr=[]),_V(cr,lr,Og)),qr=ed,lr.length=Og,Vr=Nh,o1}tt.parseJSDocComment=Is;let Hs;(ho=>{ho[ho.BeginningOfLine=0]="BeginningOfLine",ho[ho.SawAsterisk=1]="SawAsterisk",ho[ho.SavingComments=2]="SavingComments",ho[ho.SavingBackticks=3]="SavingBackticks"})(Hs||(Hs={}));let Rs;(ho=>{ho[ho.Property=1]="Property",ho[ho.Parameter=2]="Parameter",ho[ho.CallbackParameter=4]="CallbackParameter"})(Rs||(Rs={}));function ja(ho=0,sl){let Nd=xt,ed=sl===void 0?Nd.length:ho+sl;if(sl=ed-ho,Zo.assert(ho>=0),Zo.assert(ho<=ed),Zo.assert(ed<=Nd.length),!wtc(Nd,ho))return;let Og,Nh,o1,Tb,q2,IE=[],zR=[],e3=Fn;Fn|=1<<25;let IA=t.scanRange(ho+3,sl-5,EI);return Fn=e3,IA;function EI(){let Es=1,Aa,ha=ho-(Nd.lastIndexOf(` `,ho)+1)+4;function Ua(Pd){Aa||(Aa=ha),IE.push(Pd),ha+=Pd.length}for(Ju();bx(5););bx(4)&&(Es=0,ha=0);e:for(;;){switch(Wt()){case 60:wA(IE),q2||(q2=Ri()),Hc(Eo(ha)),Es=0,Aa=void 0;break;case 4:IE.push(t.getTokenText()),Es=0,ha=0;break;case 42:let Pd=t.getTokenText();Es===1?(Es=2,Ua(Pd)):(Zo.assert(Es===0),Es=1,ha+=Pd.length);break;case 5:Zo.assert(Es!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let Kh=t.getTokenText();Aa!==void 0&&ha+Kh.length>Aa&&IE.push(Kh.slice(Aa-ha)),ha+=Kh.length;break;case 1:break e;case 82:Es=2,Ua(t.getTokenValue());break;case 19:Es=2;let i2=t.getTokenFullStart(),a1=t.getTokenEnd()-1,Nb=Ve(a1);if(Nb){Tb||zd(IE),zR.push(Zt(C.createJSDocText(IE.join("")),Tb??ho,i2)),zR.push(Nb),IE=[],Tb=t.getTokenEnd();break}default:Es=2,Ua(t.getTokenText());break}Es===2?Yn(!1):Ju()}let wc=IE.join("").trimEnd();zR.length&&wc.length&&zR.push(Zt(C.createJSDocText(wc),Tb??ho,q2)),zR.length&&Og&&Zo.assertIsDefined(q2,"having parsed tags implies that the end of the comment span should be set");let hA=Og&&Er(Og,Nh,o1);return Zt(C.createJSDocComment(zR.length?Er(zR,ho,q2):wc.length?wc:void 0,hA),ho,ed)}function zd(Es){for(;Es.length&&(Es[0]===` -`||Es[0]==="\r");)Es.shift()}function wA(Es){for(;Es.length;){let Aa=Es[Es.length-1].trimEnd();if(Aa==="")Es.pop();else if(Aa.lengthKh&&(Ua.push(sv.slice(Kh-Es)),Pd=2),Es+=sv.length;break;case 19:Pd=2;let oP=t.getTokenFullStart(),fF=t.getTokenEnd()-1,ov=Ve(fF);ov?(wc.push(Zt(C.createJSDocText(Ua.join("")),hA??ha,oP)),wc.push(ov),Ua=[],hA=t.getTokenEnd()):i2(t.getTokenText());break;case 62:Pd===3?Pd=2:Pd=3,i2(t.getTokenText());break;case 82:Pd!==3&&(Pd=2),i2(t.getTokenValue());break;case 42:if(Pd===0){Pd=1,Es+=1;break}default:Pd!==3&&(Pd=2),i2(t.getTokenText());break}Pd===2||Pd===3?a1=Yn(Pd===3):a1=Ju()}zd(Ua);let Nb=Ua.join("").trimEnd();if(wc.length)return Nb.length&&wc.push(Zt(C.createJSDocText(Nb),hA??ha)),Er(wc,ha,t.getTokenEnd());if(Nb.length)return Nb}function Ve(Es){let Aa=Ki(wr);if(!Aa)return;Ju(),sy();let ha=Ct(),Ua=[];for(;Wt()!==20&&Wt()!==4&&Wt()!==1;)Ua.push(t.getTokenText()),Ju();let wc=Aa==="link"?C.createJSDocLink:Aa==="linkcode"?C.createJSDocLinkCode:C.createJSDocLinkPlain;return Zt(wc(ha,Ua.join("")),Es,t.getTokenEnd())}function Ct(){if(H1(Wt())){let Es=Ri(),Aa=Ca();for(;rc(25);)Aa=Zt(C.createQualifiedName(Aa,Wt()===81?yn(80,!1):Ca()),Es);for(;Wt()===81;)$i(),Ju(),Aa=Zt(C.createJSDocMemberName(Aa,Wa()),Es);return Aa}}function wr(){if($2(),Wt()===19&&Ju()===60&&H1(Ju())){let Es=t.getTokenValue();if(ai(Es))return Es}}function ai(Es){return Es==="link"||Es==="linkcode"||Es==="linkplain"}function Lo(Es,Aa,ha,Ua){return Zt(C.createJSDocUnknownTag(Aa,z(Es,Ri(),ha,Ua)),Es)}function Hc(Es){Es&&(Og?Og.push(Es):(Og=[Es],Nh=Es.pos),o1=Es.end)}function ad(){return $2(),Wt()===19?kr():void 0}function dm(){let Es=bx(23);Es&&sy();let Aa=bx(62),ha=_re();return Aa&&FA(62),Es&&(sy(),sd(64)&&$A(),ws(24)),{name:ha,isBracketed:Es}}function rv(Es){switch(Es.kind){case 151:return!0;case 188:return rv(Es.elementType);default:return iBi(Es)&&$C(Es.typeName)&&Es.typeName.escapedText==="Object"&&!Es.typeArguments}}function nv(Es,Aa,ha,Ua){let wc=ad(),hA=!wc;$2();let{name:Pd,isBracketed:Kh}=dm(),i2=$2();hA&&!oo(wr)&&(wc=ad());let a1=z(Es,Ri(),Ua,i2),Nb=yx(wc,Pd,ha,Ua);Nb&&(wc=Nb,hA=!0);let sv=ha===1?C.createJSDocPropertyTag(Aa,Pd,Kh,wc,hA,a1):C.createJSDocParameterTag(Aa,Pd,Kh,wc,hA,a1);return Zt(sv,Es)}function yx(Es,Aa,ha,Ua){if(Es&&rv(Es.type)){let wc=Ri(),hA,Pd;for(;hA=Ki(()=>r3(ha,Ua,Aa));)hA.kind===341||hA.kind===348?Pd=mV(Pd,hA):hA.kind===345&&mI(hA.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Pd){let Kh=Zt(C.createJSDocTypeLiteral(Pd,Es.type.kind===188),wc);return Zt(C.createJSDocTypeExpression(Kh),wc)}}}function Dd(Es,Aa,ha,Ua){oD(Og,Lec)&&_g(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,hJe(Aa.escapedText));let wc=ad();return Zt(C.createJSDocReturnTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function ji(Es,Aa,ha,Ua){oD(Og,iDr)&&_g(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,hJe(Aa.escapedText));let wc=kr(!0),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocTypeTag(Aa,wc,hA),Es)}function SL(Es,Aa,ha,Ua){let wc=Wt()===23||oo(()=>Ju()===60&&H1(Ju())&&ai(t.getTokenValue()))?void 0:Xr(),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSeeTag(Aa,wc,hA),Es)}function $l(Es,Aa,ha,Ua){let wc=ad(),hA=z(Es,Ri(),ha,Ua);return Zt(C.createJSDocThrowsTag(Aa,wc,hA),Es)}function Ap(Es,Aa,ha,Ua){let wc=Ri(),hA=Bc(),Pd=t.getTokenFullStart(),Kh=z(Es,Pd,ha,Ua);Kh||(Pd=t.getTokenFullStart());let i2=typeof Kh!="string"?Er(NNr([Zt(hA,wc,Pd)],Kh),wc):hA.text+Kh;return Zt(C.createJSDocAuthorTag(Aa,i2),Es)}function Bc(){let Es=[],Aa=!1,ha=t.getToken();for(;ha!==1&&ha!==4;){if(ha===30)Aa=!0;else{if(ha===60&&!Aa)break;if(ha===32&&Aa){Es.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}Es.push(t.getTokenText()),ha=Ju()}return C.createJSDocText(Es.join(""))}function Vo(Es,Aa,ha,Ua){let wc=cY();return Zt(C.createJSDocImplementsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function iv(Es,Aa,ha,Ua){let wc=cY();return Zt(C.createJSDocAugmentsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function nf(Es,Aa,ha,Ua){let wc=kr(!1),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSatisfiesTag(Aa,wc,hA),Es)}function J6(Es,Aa,ha,Ua){let wc=t.getTokenFullStart(),hA;Xs()&&(hA=Wa());let Pd=hB(hA,wc,!0,!0),Kh=FD(),i2=mw(),a1=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocImportTag(Aa,Pd,Kh,i2,a1),Es)}function cY(){let Es=rc(19),Aa=Ri(),ha=t3();t.setSkipJsDocLeadingAsterisks(!0);let Ua=xn();t.setSkipJsDocLeadingAsterisks(!1);let wc=C.createExpressionWithTypeArguments(ha,Ua),hA=Zt(wc,Aa);return Es&&ws(20),hA}function t3(){let Es=Ri(),Aa=Ex();for(;rc(25);){let ha=Ex();Aa=Zt(ce(Aa,ha),Es)}return Aa}function pF(Es,Aa,ha,Ua,wc){return Zt(Aa(ha,z(Es,Ri(),Ua,wc)),Es)}function rh(Es,Aa,ha,Ua){let wc=kr(!0);return sy(),Zt(C.createJSDocThisTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Cw(Es,Aa,ha,Ua){let wc=kr(!0);return sy(),Zt(C.createJSDocEnumTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Il(Es,Aa,ha,Ua){let wc=ad();$2();let hA=CB();sy();let Pd=ye(ha),Kh;if(!wc||rv(wc.type)){let a1,Nb,sv,oP=!1;for(;(a1=Ki(()=>lY(ha)))&&a1.kind!==345;)if(oP=!0,a1.kind===344)if(Nb){let fF=Da(ts.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);fF&&Dbt(fF,dNe(er,xt,0,0,ts.The_tag_was_first_specified_here));break}else Nb=a1;else sv=mV(sv,a1);if(oP){let fF=wc&&wc.type.kind===188,ov=C.createJSDocTypeLiteral(sv,fF);wc=Nb&&Nb.typeExpression&&!rv(Nb.typeExpression.type)?Nb.typeExpression:Zt(ov,Es),Kh=wc.end}}Kh=Kh||Pd!==void 0?Ri():(hA??wc??Aa).end,Pd||(Pd=z(Es,Kh,ha,Ua));let i2=C.createJSDocTypedefTag(Aa,wc,hA,Pd);return Zt(i2,Es,Kh)}function CB(Es){let Aa=t.getTokenStart();if(!H1(Wt()))return;let ha=Ex();if(rc(25)){let Ua=CB(!0),wc=C.createModuleDeclaration(void 0,ha,Ua,Es?8:void 0);return Zt(wc,Aa)}return Es&&(ha.flags|=4096),ha}function Rb(Es){let Aa=Ri(),ha,Ua;for(;ha=Ki(()=>r3(4,Es));){if(ha.kind===345){mI(ha.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Ua=mV(Ua,ha)}return Er(Ua||[],Aa)}function $R(Es,Aa){let ha=Rb(Aa),Ua=Ki(()=>{if(bx(60)){let wc=Eo(Aa);if(wc&&wc.kind===342)return wc}});return Zt(C.createJSDocSignature(void 0,ha,Ua),Es)}function Cre(Es,Aa,ha,Ua){let wc=CB();sy();let hA=ye(ha),Pd=$R(Es,ha);hA||(hA=z(Es,Ri(),ha,Ua));let Kh=hA!==void 0?Ri():Pd.end;return Zt(C.createJSDocCallbackTag(Aa,Pd,wc,hA),Es,Kh)}function vL(Es,Aa,ha,Ua){sy();let wc=ye(ha),hA=$R(Es,ha);wc||(wc=z(Es,Ri(),ha,Ua));let Pd=wc!==void 0?Ri():hA.end;return Zt(C.createJSDocOverloadTag(Aa,hA,wc),Es,Pd)}function uJ(Es,Aa){for(;!$C(Es)||!$C(Aa);)if(!$C(Es)&&!$C(Aa)&&Es.right.escapedText===Aa.right.escapedText)Es=Es.left,Aa=Aa.left;else return!1;return Es.escapedText===Aa.escapedText}function lY(Es){return r3(1,Es)}function r3(Es,Aa,ha){let Ua=!0,wc=!1;for(;;)switch(Ju()){case 60:if(Ua){let hA=U6(Es,Aa);return hA&&(hA.kind===341||hA.kind===348)&&ha&&($C(hA.name)||!uJ(ha,hA.name.left))?!1:hA}wc=!1;break;case 4:Ua=!0,wc=!1;break;case 42:wc&&(Ua=!1),wc=!0;break;case 80:Ua=!1;break;case 1:return!1}}function U6(Es,Aa){Zo.assert(Wt()===60);let ha=t.getTokenFullStart();Ju();let Ua=Ex(),wc=$2(),hA;switch(Ua.escapedText){case"type":return Es===1&&ji(ha,Ua);case"prop":case"property":hA=1;break;case"arg":case"argument":case"param":hA=6;break;case"template":return uY(ha,Ua,Aa,wc);case"this":return rh(ha,Ua,Aa,wc);default:return!1}return Es&hA?nv(ha,Ua,Es,Aa):!1}function gJ(){let Es=Ri(),Aa=bx(23);Aa&&sy();let ha=Le(!1,!0),Ua=Ex(ts.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),wc;if(Aa&&(sy(),ws(64),wc=Qa(16777216,YS),ws(24)),!Wme(Ua))return Zt(C.createTypeParameterDeclaration(ha,Ua,void 0,wc),Es)}function K6(){let Es=Ri(),Aa=[];do{sy();let ha=gJ();ha!==void 0&&Aa.push(ha),$2()}while(bx(28));return Er(Aa,Es)}function uY(Es,Aa,ha,Ua){let wc=Wt()===19?kr():void 0,hA=K6();return Zt(C.createJSDocTemplateTag(Aa,wc,hA,z(Es,Ri(),ha,Ua)),Es)}function bx(Es){return Wt()===Es?(Ju(),!0):!1}function _re(){let Es=Ex();for(rc(23)&&ws(24);rc(25);){let Aa=Ex();rc(23)&&ws(24),Es=O(Es,Aa)}return Es}function Ex(Es){if(!H1(Wt()))return yn(80,!Es,Es||ts.Identifier_expected);jt++;let Aa=t.getTokenStart(),ha=t.getTokenEnd(),Ua=Wt(),wc=ls(t.getTokenValue()),hA=Zt(F(wc,Ua),Aa,ha);return Ju(),hA}}})(aY=e.JSDocParser||(e.JSDocParser={}))})(Mme||(Mme={}));var TSi=new WeakSet;function utc(e){TSi.has(e)&&Zo.fail("Source file has already been incrementally parsed"),TSi.add(e)}var TBi=new WeakSet;function gtc(e){return TBi.has(e)}function _Nr(e){TBi.add(e)}var qbt;(e=>{function t(N,B,F,Q){if(Q=Q||Zo.shouldAssert(2),C(N,B,F,Q),rza(F))return N;if(N.statements.length===0)return Mme.parseSourceFile(N.fileName,B,N.languageVersion,void 0,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);utc(N),Mme.fixupParentReferences(N);let X=N.text,ae=b(N),ne=f(N,F);C(N,B,ne,Q),Zo.assert(ne.span.start<=F.span.start),Zo.assert(gj(ne.span)===gj(F.span)),Zo.assert(gj(tJe(ne))===gj(tJe(F)));let ce=tJe(ne).length-ne.span.length;A(N,ne.span.start,gj(ne.span),gj(tJe(ne)),ce,X,B,Q);let fe=Mme.parseSourceFile(N.fileName,B,N.languageVersion,ae,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);return fe.commentDirectives=r(N.commentDirectives,fe.commentDirectives,ne.span.start,gj(ne.span),ce,X,B,Q),fe.impliedNodeFormat=N.impliedNodeFormat,Mec(N,fe),fe}e.updateSourceFile=t;function r(N,B,F,Q,X,ae,ne,ce){if(!N)return B;let fe,ue=!1;for(let be of N){let{range:Se,type:De}=be;if(Se.endQ){de();let k={range:{pos:Se.pos+X,end:Se.end+X},type:De};fe=mV(fe,k),ce&&Zo.assert(ae.substring(Se.pos,Se.end)===ne.substring(k.range.pos,k.range.end))}}return de(),fe;function de(){ue||(ue=!0,fe?B&&fe.push(...B):fe=B)}}function n(N,B,F,Q,X,ae,ne){F?fe(N):ce(N);return;function ce(ue){let de="";if(ne&&a(ue)&&(de=X.substring(ue.pos,ue.end)),iSi(ue,B),Ece(ue,ue.pos+Q,ue.end+Q),ne&&a(ue)&&Zo.assert(de===ae.substring(ue.pos,ue.end)),Ok(ue,ce,fe),Pme(ue))for(let be of ue.jsDoc)ce(be);l(ue,ne)}function fe(ue){Ece(ue,ue.pos+Q,ue.end+Q);for(let de of ue)ce(de)}}function a(N){switch(N.kind){case 11:case 9:case 80:return!0}return!1}function o(N,B,F,Q,X){Zo.assert(N.end>=B,"Adjusting an element that was entirely before the change range"),Zo.assert(N.pos<=F,"Adjusting an element that was entirely after the change range"),Zo.assert(N.pos<=N.end);let ae=Math.min(N.pos,Q),ne=N.end>=F?N.end+X:Math.min(N.end,Q);if(Zo.assert(ae<=ne),N.parent){let ce=N.parent;Zo.assertGreaterThanOrEqual(ae,ce.pos),Zo.assertLessThanOrEqual(ne,ce.end)}Ece(N,ae,ne)}function l(N,B){if(B){let F=N.pos,Q=X=>{Zo.assert(X.pos>=F),F=X.end};if(Pme(N))for(let X of N.jsDoc)Q(X);Ok(N,Q),Zo.assert(F<=N.end)}}function A(N,B,F,Q,X,ae,ne,ce){fe(N);return;function fe(de){if(Zo.assert(de.pos<=de.end),de.pos>F){n(de,N,!1,X,ae,ne,ce);return}let be=de.end;if(be>=B){if(_Nr(de),iSi(de,N),o(de,B,F,Q,X),Ok(de,fe,ue),Pme(de))for(let Se of de.jsDoc)fe(Se);l(de,ce);return}Zo.assert(beF){n(de,N,!0,X,ae,ne,ce);return}let be=de.end;if(be>=B){_Nr(de),o(de,B,F,Q,X);for(let Se of de)fe(Se);return}Zo.assert(be0&&ae<=1;ae++){let ne=I(N,F);Zo.assert(ne.pos<=F);let ce=ne.pos;F=Math.max(0,ce-1)}let Q=tza(F,gj(B.span)),X=B.newLength+(B.span.start-F);return Evi(Q,X)}function I(N,B){let F=N,Q;if(Ok(N,ae),Q){let ne=X(Q);ne.pos>F.pos&&(F=ne)}return F;function X(ne){for(;;){let ce=Qqa(ne);if(ce)ne=ce;else return ne}}function ae(ne){if(!Wme(ne))if(ne.pos<=B){if(ne.pos>=F.pos&&(F=ne),BB),!0}}function C(N,B,F,Q){let X=N.text;if(F&&(Zo.assert(X.length-F.span.length+F.newLength===B.length),Q||Zo.shouldAssert(3))){let ae=X.substr(0,F.span.start),ne=B.substr(0,F.span.start);Zo.assert(ae===ne);let ce=X.substring(gj(F.span),X.length),fe=B.substring(gj(tJe(F)),B.length);Zo.assert(ce===fe)}}function b(N){let B=N.statements,F=0;Zo.assert(F=ue.pos&&ne=ue.pos&&ne{N[N.Value=-1]="Value"})(E||(E={}))})(qbt||(qbt={}));function Atc(e){return dtc(e)!==void 0}function dtc(e){let t=uvi(e,A$a,!1);if(t)return t;if(_7a(e,".ts")){let r=lvi(e),n=r.lastIndexOf(".d.");if(n>=0)return r.substring(n)}}function ptc(e,t,r,n){if(e){if(e==="import")return 99;if(e==="require")return 1;n(t,r-t,ts.resolution_mode_should_be_either_require_or_import)}}function ftc(e,t){let r=[];for(let n of lNr(t,0)||x2){let a=t.substring(n.pos,n.end);_tc(r,n,a)}e.pragmas=new Map;for(let n of r){if(e.pragmas.has(n.name)){let a=e.pragmas.get(n.name);a instanceof Array?a.push(n.args):e.pragmas.set(n.name,[a,n.args]);continue}e.pragmas.set(n.name,n.args)}}function Itc(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,n)=>{switch(n){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,l=e.libReferenceDirectives;hO(QRr(r),A=>{let{types:f,lib:I,path:C,["resolution-mode"]:b,preserve:E}=A.arguments,N=E==="true"?!0:void 0;if(A.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let B=ptc(b,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...B?{resolutionMode:B}:{},...N?{preserve:N}:{}})}else I?l.push({pos:I.pos,end:I.end,fileName:I.value,...N?{preserve:N}:{}}):C?a.push({pos:C.pos,end:C.end,fileName:C.value,...N?{preserve:N}:{}}):t(A.range.pos,A.range.end-A.range.pos,ts.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=iNr(QRr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,ts.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{hO(QRr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:n==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Zo.fail("Unhandled pragma kind")}})}var tNr=new Map;function htc(e){if(tNr.has(e))return tNr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return tNr.set(e,t),t}var mtc=/^\/\/\/\s*<(\S+)\s.*?\/>/m,Ctc=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function _tc(e,t,r){let n=t.kind===2&&mtc.exec(r);if(n){let o=n[1].toLowerCase(),l=cvi[o];if(!l||!(l.kind&1))return;if(l.args){let A={};for(let f of l.args){let I=htc(f.name).exec(r);if(!I&&!f.optional)return;if(I){let C=I[2]||I[3];if(f.captureSpan){let b=t.pos+I.index+I[1].length+1;A[f.name]={value:C,pos:b,end:b+C.length}}else A[f.name]=C}}e.push({name:o,args:{arguments:A,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&Ctc.exec(r);if(a)return RSi(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,l;for(;l=o.exec(r);)RSi(e,t,4,l)}}function RSi(e,t,r,n){if(!n)return;let a=n[1].toLowerCase(),o=cvi[a];if(!o||!(o.kind&r))return;let l=n[2],A=ytc(o,l);A!=="fail"&&e.push({name:a,args:{arguments:A,range:t}})}function ytc(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),n={};for(let a=0;an.kind<309||n.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=Vme(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return Ok(this,e,t)}};function btc(e,t){let r=[];if(Jza(e))return e.forEachChild(l=>{r.push(l)}),r;pJe.setText((t||e.getSourceFile()).text);let n=e.pos,a=l=>{fJe(r,n,l.pos,e),r.push(l),n=l.end},o=l=>{fJe(r,n,l.pos,e),r.push(Etc(l,e)),n=l.end};return hO(e.jsDoc,a),n=e.pos,e.forEachChild(a,o),fJe(r,n,e.end,e),pJe.setText(void 0),r}function fJe(e,t,r,n){for(pJe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function Pbt(e,t){if(!e)return x2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(xBi))){let n=new Set;for(let a of e){let o=GBi(t,a,l=>{var A;if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualJsDocTags(a,t):((A=l.declarations)==null?void 0:A.length)===1?l.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function dJe(e,t){if(!e)return x2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(xBi))){let n=new Set;for(let a of e){let o=GBi(t,a,l=>{if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualDocumentationComment(a,t):l.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function GBi(e,t,r){var n;let a=((n=t.parent)==null?void 0:n.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=Gqa(t);return H6a(vqa(a),l=>{let A=e.getTypeAtLocation(l),f=o&&A.symbol?e.getTypeOfSymbol(A.symbol):A,I=e.getPropertyOfType(f,t.symbol.name);return I?r(I):void 0})}var wtc=class extends aDr{constructor(e,t,r){super(e,t,r)}update(e,t){return ltc(this,e,t)}getLineAndCharacterOfPosition(e){return hvi(this,e)}getLineStarts(){return cNr(this)}getPositionOfLineAndCharacter(e,t,r){return H7a(cNr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),n;t+1>=r.length&&(n=this.getEnd()),n||(n=r[t+1]-1);let a=this.getFullText();return a[n]===` -`&&a[n-1]==="\r"?n-1:n}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=n7a();return this.forEachChild(a),e;function t(o){let l=n(o);l&&e.add(l,o)}function r(o){let l=e.get(o);return l||e.set(o,l=[]),l}function n(o){let l=MNr(o);return l&&(eBi(l)&&Bce(l.expression)?l.expression.name.text:xvi(l)?getNameFromPropertyName(l):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let l=o,A=n(l);if(A){let C=r(A),b=Vme(C);b&&l.parent===b.parent&&l.symbol===b.symbol?l.body&&!b.body&&(C[C.length-1]=l):C.push(l)}Ok(o,a);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(o),Ok(o,a);break;case 169:if(!SJe(o,31))break;case 260:case 208:{let C=o;if(Lza(C.name)){Ok(C.name,a);break}C.initializer&&a(C.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(Cec(f.exportClause)?hO(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let I=o.importClause;I&&(I.name&&t(I.name),I.namedBindings&&(I.namedBindings.kind===274?t(I.namedBindings):hO(I.namedBindings.elements,a)));break;case 226:JNr(o)!==0&&t(o);default:Ok(o,a)}}}},Ttc=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}getLineAndCharacterOfPosition(e){return hvi(this,e)}};function Rtc(){return{getNodeConstructor:()=>aDr,getTokenConstructor:()=>NBi,getIdentifierConstructor:()=>DBi,getPrivateIdentifierConstructor:()=>kBi,getSourceFileConstructor:()=>wtc,getSymbolConstructor:()=>Stc,getTypeConstructor:()=>vtc,getSignatureConstructor:()=>Btc,getSourceMapSourceConstructor:()=>Ttc}}var Ntc=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],pRu=[...Ntc,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];e$a(Rtc());var FBi=new Proxy({},{get:()=>!0}),ZBi=FBi["4.8"];function Ij(e,t=!1){var r;if(e!=null){if(ZBi){if(t||oDr(e)){let n=cza(e);return n?[...n]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(n=>!tDr(n))}}function _Ne(e,t=!1){var r;if(e!=null){if(ZBi){if(t||jec(e)){let n=aza(e);return n?[...n]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(tDr)}}var Dtc={},LBi=new Proxy({},{get:(e,t)=>t}),ktc=LBi,xtc=LBi,hs=ktc,sD=xtc,VBi=FBi["5.0"],au=Tp,Gtc=new Set([au.AmpersandAmpersandToken,au.BarBarToken,au.QuestionQuestionToken]),Ftc=new Set([Tp.AmpersandAmpersandEqualsToken,Tp.AmpersandEqualsToken,Tp.AsteriskAsteriskEqualsToken,Tp.AsteriskEqualsToken,Tp.BarBarEqualsToken,Tp.BarEqualsToken,Tp.CaretEqualsToken,Tp.EqualsToken,Tp.GreaterThanGreaterThanEqualsToken,Tp.GreaterThanGreaterThanGreaterThanEqualsToken,Tp.LessThanLessThanEqualsToken,Tp.MinusEqualsToken,Tp.PercentEqualsToken,Tp.PlusEqualsToken,Tp.QuestionQuestionEqualsToken,Tp.SlashEqualsToken]),Ztc=new Set([au.AmpersandAmpersandToken,au.AmpersandToken,au.AsteriskAsteriskToken,au.AsteriskToken,au.BarBarToken,au.BarToken,au.CaretToken,au.EqualsEqualsEqualsToken,au.EqualsEqualsToken,au.ExclamationEqualsEqualsToken,au.ExclamationEqualsToken,au.GreaterThanEqualsToken,au.GreaterThanGreaterThanGreaterThanToken,au.GreaterThanGreaterThanToken,au.GreaterThanToken,au.InKeyword,au.InstanceOfKeyword,au.LessThanEqualsToken,au.LessThanLessThanToken,au.LessThanToken,au.MinusToken,au.PercentToken,au.PlusToken,au.SlashToken]);function Ltc(e){return Ftc.has(e.kind)}function Vtc(e){return Gtc.has(e.kind)}function Ptc(e){return Ztc.has(e.kind)}function yce(e){return by(e)}function Wtc(e){return e.kind!==au.SemicolonClassElement}function vh(e,t){let r=Ij(t);return r?.some(n=>n.kind===e)===!0}function Otc(e){let t=Ij(e);return t==null?null:t[t.length-1]??null}function Mtc(e){return e.kind===au.CommaToken}function Htc(e){return e.kind===au.SingleLineCommentTrivia||e.kind===au.MultiLineCommentTrivia}function Ytc(e){return e.kind===au.JSDocComment}function Qtc(e){if(Ltc(e))return{type:hs.AssignmentExpression,operator:yce(e.kind)};if(Vtc(e))return{type:hs.LogicalExpression,operator:yce(e.kind)};if(Ptc(e))return{type:hs.BinaryExpression,operator:yce(e.kind)};throw new Error(`Unexpected binary operator ${by(e.kind)}`)}function Wbt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function Zme(e,t){let[r,n]=e.map(a=>Wbt(a,t));return{end:n,start:r}}function Xtc(e){if(e.kind===Tp.Block)switch(e.parent.kind){case Tp.Constructor:case Tp.GetAccessor:case Tp.SetAccessor:case Tp.ArrowFunction:case Tp.FunctionExpression:case Tp.FunctionDeclaration:case Tp.MethodDeclaration:return!0;default:return!1}return!0}function iJe(e,t){return[e.getStart(t),e.getEnd()]}function Jtc(e){return e.kind>=au.FirstToken&&e.kind<=au.LastToken}function PBi(e){return e.kind>=au.JsxElement&&e.kind<=au.JsxAttribute}function yNr(e){return e.flags&IO.Let?"let":(e.flags&IO.AwaitUsing)===IO.AwaitUsing?"await using":e.flags&IO.Const?"const":e.flags&IO.Using?"using":"var"}function xme(e){let t=Ij(e);if(t!=null)for(let r of t)switch(r.kind){case au.PublicKeyword:return"public";case au.ProtectedKeyword:return"protected";case au.PrivateKeyword:return"private";default:break}}function pNe(e,t,r){return n(t);function n(a){return Bza(a)&&a.pos===e.end?a:nrc(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&rrc(o,r)?n(o):void 0)}}function Utc(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function Ktc(e){return!!Utc(e,PBi)}function NSi(e){return bNe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let n=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return n>1114111?t:String.fromCodePoint(n)}return Dtc[r]||t})}function fNe(e){return e.kind===au.ComputedPropertyName}function DSi(e){return!!e.questionToken}function WBi(e){return e.type===hs.ChainExpression}function jtc(e,t){return WBi(t)&&e.expression.kind!==Tp.ParenthesizedExpression}function ztc(e){let t;if(VBi&&e.kind===au.Identifier?t=vvi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===au.NullKeyword?sD.Null:t>=au.FirstFutureReservedWord&&t<=au.LastKeyword?sD.Identifier:sD.Keyword;if(e.kind>=au.FirstKeyword&&e.kind<=au.LastFutureReservedWord)return e.kind===au.FalseKeyword||e.kind===au.TrueKeyword?sD.Boolean:sD.Keyword;if(e.kind>=au.FirstPunctuation&&e.kind<=au.LastPunctuation)return sD.Punctuator;if(e.kind>=au.NoSubstitutionTemplateLiteral&&e.kind<=au.TemplateTail)return sD.Template;switch(e.kind){case au.NumericLiteral:return sD.Numeric;case au.JsxText:return sD.JSXText;case au.StringLiteral:return e.parent.kind===au.JsxAttribute||e.parent.kind===au.JsxElement?sD.JSXText:sD.String;case au.RegularExpressionLiteral:return sD.RegularExpression;case au.Identifier:case au.ConstructorKeyword:case au.GetKeyword:case au.SetKeyword:default:}return e.kind===au.Identifier&&(PBi(e.parent)||e.parent.kind===au.PropertyAccessExpression&&Ktc(e))?sD.JSXIdentifier:sD.Identifier}function qtc(e,t){let r=e.kind===au.JsxText?e.getFullStart():e.getStart(t),n=e.getEnd(),a=t.text.slice(r,n),o=ztc(e),l=[r,n],A=Zme(l,t);return o===sD.RegularExpression?{type:o,loc:A,range:l,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:A,range:l,value:a}}function $tc(e){let t=[];function r(n){Htc(n)||Ytc(n)||(Jtc(n)&&n.kind!==au.EndOfFileToken?t.push(qtc(n,e)):n.getChildren(e).forEach(r))}return r(e),t}var erc=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function OBi(e,t,r,n=r){let[a,o]=[r,n].map(l=>{let{character:A,line:f}=t.getLineAndCharacterOfPosition(l);return{column:A,line:f+1,offset:l}});return new erc(e,t.fileName,{end:o,start:a})}function trc(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function rrc(e,t){return e.kind===au.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function nrc(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==au.EndOfFileToken}function kSi(e){return!orc(e)}function arc(e){return Svi(e.parent,Gvi)}function crc(e){return vh(au.AbstractKeyword,e)}function lrc(e){if(e.parameters.length&&!bBi(e)){let t=e.parameters[0];if(urc(t))return t}return null}function urc(e){return MBi(e.name)}function grc(e){switch(e.kind){case au.ClassDeclaration:return!0;case au.ClassExpression:return!0;case au.PropertyDeclaration:{let{parent:t}=e;return!!(zbt(t)||BNe(t)&&!crc(e))}case au.GetAccessor:case au.SetAccessor:case au.MethodDeclaration:{let{parent:t}=e;return!!e.body&&(zbt(t)||BNe(t))}case au.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===au.Constructor||t.kind===au.MethodDeclaration||t.kind===au.SetAccessor)&&lrc(t)!==e&&!!r&&r.kind===au.ClassDeclaration}}return!1}function lDr(e){switch(e.kind){case au.Identifier:return!0;case au.PropertyAccessExpression:case au.ElementAccessExpression:return!(e.flags&IO.OptionalChain);case au.ParenthesizedExpression:case au.TypeAssertionExpression:case au.AsExpression:case au.SatisfiesExpression:case au.ExpressionWithTypeArguments:case au.NonNullExpression:return lDr(e.expression);default:return!1}}function Arc(e){let t=Ij(e),r=e;for(;(!t||t.length===0)&&bJe(r.parent);){let n=Ij(r.parent);n!=null&&n.length&&(t=n),r=r.parent}return t}var On=Tp;function drc(e){return OBi("message"in e&&e.message||e.messageText,e.file,e.start)}var sg,bNr,HBi,$p,kR,yNe,ENr,prc=class{constructor(e,t){V6a(this,sg),$4e(this,"allowPattern",!1),$4e(this,"ast"),$4e(this,"esTreeNodeToTSNodeMap",new WeakMap),$4e(this,"options"),$4e(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&fg(this,sg,kR).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==On.StringLiteral&&fg(this,sg,kR).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let n=this.convertPattern(e);return t&&(n.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(n,n.typeAnnotation.range)),n}convertBodyExpressions(e,t){let r=Xtc(t);return e.map(n=>{let a=this.convertChild(n);if(r){if(a!=null&&a.expression&&gBi(n)&&tEt(n.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(n=>n)}convertChainExpression(e,t){let{child:r,isOptional:n}=e.type===hs.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===hs.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=jtc(t,r);if(!a&&!n)return e;if(a&&WBi(r)){let o=r.expression;e.type===hs.MemberExpression?e.object=o:e.type===hs.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:hs.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===On.FunctionType||t?.kind===On.ConstructorType?2:1,n=[e.getFullStart()-r,e.end],a=Zme(n,this.ast);return{type:hs.TSTypeAnnotation,loc:a,range:n,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=pNe(e,this.ast,this.ast);return this.createNode(t,{type:hs.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(n=>this.convertChild(n))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=pNe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:hs.TSTypeParameterDeclaration,loc:Zme(r,this.ast),range:r,params:e.map(n=>this.convertChild(n))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let n=this.convertChild(t);return n.decorators=((r=_Ne(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],n}):[]}converter(e,t,r){if(!e)return null;fg(this,sg,HBi).call(this,e);let n=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=n,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:hs.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===Tp.JsxNamespacedName){let n=this.createNode(e,{type:hs.JSXNamespacedName,name:this.createNode(e.name,{type:hs.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:hs.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,n),n}let t=e.getText(),r=t.indexOf(":");if(r>0){let n=iJe(e,this.ast),a=this.createNode(e,{type:hs.JSXNamespacedName,range:n,name:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0]+r+1,n[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0],n[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case On.PropertyAccessExpression:e.name.kind===On.PrivateIdentifier&&fg(this,sg,$p).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:hs.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case On.ThisKeyword:case On.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:hs.TSMethodSignature,accessibility:xme(e),computed:fNe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case On.GetAccessor:return"get";case On.SetAccessor:return"set";case On.MethodSignature:return"method"}})(),optional:DSi(e),params:this.convertParameters(e.parameters),readonly:vh(On.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:vh(On.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=Wbt(e.range[1],this.ast))}convertNode(e,t){var r,n,a,o,l,A,f,I;switch(e.kind){case On.SourceFile:return this.createNode(e,{type:hs.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case On.Block:return this.createNode(e,{type:hs.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case On.Identifier:return src(e)?this.createNode(e,{type:hs.ThisExpression}):this.createNode(e,{type:hs.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case On.PrivateIdentifier:return this.createNode(e,{type:hs.PrivateIdentifier,name:e.text.slice(1)});case On.WithStatement:return this.createNode(e,{type:hs.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case On.ReturnStatement:return this.createNode(e,{type:hs.ReturnStatement,argument:this.convertChild(e.expression)});case On.LabeledStatement:return this.createNode(e,{type:hs.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case On.ContinueStatement:return this.createNode(e,{type:hs.ContinueStatement,label:this.convertChild(e.label)});case On.BreakStatement:return this.createNode(e,{type:hs.BreakStatement,label:this.convertChild(e.label)});case On.IfStatement:return this.createNode(e,{type:hs.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case On.SwitchStatement:return e.caseBlock.clauses.filter(C=>C.kind===On.DefaultClause).length>1&&fg(this,sg,$p).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:hs.SwitchStatement,cases:e.caseBlock.clauses.map(C=>this.convertChild(C)),discriminant:this.convertChild(e.expression)});case On.CaseClause:case On.DefaultClause:return this.createNode(e,{type:hs.SwitchCase,consequent:e.statements.map(C=>this.convertChild(C)),test:e.kind===On.CaseClause?this.convertChild(e.expression):null});case On.ThrowStatement:return e.expression.end===e.expression.pos&&fg(this,sg,kR).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:hs.ThrowStatement,argument:this.convertChild(e.expression)});case On.TryStatement:return this.createNode(e,{type:hs.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case On.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&fg(this,sg,$p).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:hs.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case On.WhileStatement:return this.createNode(e,{type:hs.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case On.DoStatement:return this.createNode(e,{type:hs.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case On.ForStatement:return this.createNode(e,{type:hs.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case On.ForInStatement:return fg(this,sg,bNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case On.ForOfStatement:return fg(this,sg,bNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===On.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case On.FunctionDeclaration:{let C=vh(On.DeclareKeyword,e),b=vh(On.AsyncKeyword,e),E=!!e.asteriskToken;C?e.body?fg(this,sg,$p).call(this,e,"An implementation cannot be declared in ambient contexts."):b?fg(this,sg,$p).call(this,e,"'async' modifier cannot be used in an ambient context."):E&&fg(this,sg,$p).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&E&&fg(this,sg,$p).call(this,e,"A function signature cannot be declared as a generator.");let N=this.createNode(e,{type:e.body?hs.FunctionDeclaration:hs.TSDeclareFunction,async:b,body:this.convertChild(e.body)||void 0,declare:C,expression:!1,generator:E,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,N)}case On.VariableDeclaration:{let C=!!e.exclamationToken,b=this.convertChild(e.initializer),E=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return C&&(b?fg(this,sg,$p).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(E.type!==hs.Identifier||!E.typeAnnotation)&&fg(this,sg,$p).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:hs.VariableDeclarator,definite:C,id:E,init:b})}case On.VariableStatement:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarationList.declarations.map(b=>this.convertChild(b)),declare:vh(On.DeclareKeyword,e),kind:yNr(e.declarationList)});return C.declarations.length||fg(this,sg,kR).call(this,e,"A variable declaration list must have at least one variable declarator."),(C.kind==="using"||C.kind==="await using")&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init==null&&fg(this,sg,$p).call(this,b,`'${C.kind}' declarations must be initialized.`),C.declarations[E].id.type!==hs.Identifier&&fg(this,sg,$p).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),(C.declare||["await using","const","using"].includes(C.kind))&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].definite&&fg(this,sg,$p).call(this,b,"A definite assignment assertion '!' is not permitted in this context.")}),C.declare&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init&&(["let","var"].includes(C.kind)||C.declarations[E].id.typeAnnotation)&&fg(this,sg,$p).call(this,b,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,C)}case On.VariableDeclarationList:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarations.map(b=>this.convertChild(b)),declare:!1,kind:yNr(e)});return(C.kind==="using"||C.kind==="await using")&&e.declarations.forEach((b,E)=>{C.declarations[E].init!=null&&fg(this,sg,$p).call(this,b,`'${C.kind}' declarations may not be initialized in for statement.`),C.declarations[E].id.type!==hs.Identifier&&fg(this,sg,$p).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),C}case On.ExpressionStatement:return this.createNode(e,{type:hs.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case On.ThisKeyword:return this.createNode(e,{type:hs.ThisExpression});case On.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:hs.ArrayExpression,elements:e.elements.map(C=>this.convertChild(C))});case On.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(b=>this.convertPattern(b)),typeAnnotation:void 0});let C=[];for(let b of e.properties)(b.kind===On.GetAccessor||b.kind===On.SetAccessor||b.kind===On.MethodDeclaration)&&!b.body&&fg(this,sg,kR).call(this,b.end-1,"'{' expected."),C.push(this.convertChild(b));return this.createNode(e,{type:hs.ObjectExpression,properties:C})}case On.PropertyAssignment:{let{exclamationToken:C,questionToken:b}=e;return b&&fg(this,sg,$p).call(this,b,"A property assignment cannot have a question token."),C&&fg(this,sg,$p).call(this,C,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:hs.Property,computed:fNe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case On.ShorthandPropertyAssignment:{let{exclamationToken:C,modifiers:b,questionToken:E}=e;return b&&fg(this,sg,$p).call(this,b[0],"A shorthand property assignment cannot have modifiers."),E&&fg(this,sg,$p).call(this,E,"A shorthand property assignment cannot have a question token."),C&&fg(this,sg,$p).call(this,C,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case On.ComputedPropertyName:return this.convertChild(e.expression);case On.PropertyDeclaration:{let C=vh(On.AbstractKeyword,e);C&&e.initializer&&fg(this,sg,$p).call(this,e.initializer,"Abstract property cannot have an initializer.");let b=vh(On.AccessorKeyword,e),E=b?C?hs.TSAbstractAccessorProperty:hs.AccessorProperty:C?hs.TSAbstractPropertyDefinition:hs.PropertyDefinition,N=this.convertChild(e.name);return this.createNode(e,{type:E,accessibility:xme(e),computed:fNe(e.name),declare:vh(On.DeclareKeyword,e),decorators:((n=_Ne(e))==null?void 0:n.map(B=>this.convertChild(B)))??[],definite:!!e.exclamationToken,key:N,optional:(N.type===hs.Literal||e.name.kind===On.Identifier||e.name.kind===On.ComputedPropertyName||e.name.kind===On.PrivateIdentifier)&&!!e.questionToken,override:vh(On.OverrideKeyword,e),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:C?null:this.convertChild(e.initializer)})}case On.GetAccessor:case On.SetAccessor:if(e.parent.kind===On.InterfaceDeclaration||e.parent.kind===On.TypeLiteral)return this.convertMethodSignature(e);case On.MethodDeclaration:{let C=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});C.typeParameters&&this.fixParentLocation(C,C.typeParameters.range);let b;if(t.kind===On.ObjectLiteralExpression)C.params=e.parameters.map(E=>this.convertChild(E)),b=this.createNode(e,{type:hs.Property,computed:fNe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===On.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:C});else{C.params=this.convertParameters(e.parameters);let E=vh(On.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition;b=this.createNode(e,{type:E,accessibility:xme(e),computed:fNe(e.name),decorators:((a=_Ne(e))==null?void 0:a.map(N=>this.convertChild(N)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:vh(On.OverrideKeyword,e),static:vh(On.StaticKeyword,e),value:C})}return e.kind===On.GetAccessor?b.kind="get":e.kind===On.SetAccessor?b.kind="set":!b.static&&e.name.kind===On.StringLiteral&&e.name.text==="constructor"&&b.type!==hs.Property&&(b.kind="constructor"),b}case On.Constructor:{let C=Otc(e),b=(C&&pNe(C,e,this.ast))??e.getFirstToken(),E=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});E.typeParameters&&this.fixParentLocation(E,E.typeParameters.range);let N=this.createNode(e,{type:hs.Identifier,range:[b.getStart(this.ast),b.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),B=vh(On.StaticKeyword,e);return this.createNode(e,{type:vh(On.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition,accessibility:xme(e),computed:!1,decorators:[],key:N,kind:B?"method":"constructor",optional:!1,override:!1,static:B,value:E})}case On.FunctionExpression:return this.createNode(e,{type:hs.FunctionExpression,async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.SuperKeyword:return this.createNode(e,{type:hs.Super});case On.ArrayBindingPattern:return this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0});case On.OmittedExpression:return null;case On.ObjectBindingPattern:return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(C=>this.convertPattern(C)),typeAnnotation:void 0});case On.BindingElement:{if(t.kind===On.ArrayBindingPattern){let b=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:b,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:hs.RestElement,argument:b,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):b}let C;return e.dotDotDotToken?C=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):C=this.createNode(e,{type:hs.Property,computed:!!(e.propertyName&&e.propertyName.kind===On.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(C.value=this.createNode(e,{type:hs.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),C}case On.ArrowFunction:return this.createNode(e,{type:hs.ArrowFunctionExpression,async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==On.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.YieldExpression:return this.createNode(e,{type:hs.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case On.AwaitExpression:return this.createNode(e,{type:hs.AwaitExpression,argument:this.convertChild(e.expression)});case On.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:hs.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case On.TemplateExpression:{let C=this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(b=>{C.expressions.push(this.convertChild(b.expression)),C.quasis.push(this.convertChild(b.literal))}),C}case On.TaggedTemplateExpression:return this.createNode(e,{type:hs.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.TemplateHead:case On.TemplateMiddle:case On.TemplateTail:{let C=e.kind===On.TemplateTail;return this.createNode(e,{type:hs.TemplateElement,tail:C,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(C?1:2))}})}case On.SpreadAssignment:case On.SpreadElement:return this.allowPattern?this.createNode(e,{type:hs.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:hs.SpreadElement,argument:this.convertChild(e.expression)});case On.Parameter:{let C,b;return e.dotDotDotToken?C=b=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(C=this.convertChild(e.name),b=this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:C,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),Ij(e)&&(b.range[0]=C.range[0],b.loc=Zme(b.range,this.ast))):C=b=this.convertChild(e.name,t),e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(C,C.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>C.range[1]&&(C.range[1]=e.questionToken.end,C.loc.end=Wbt(C.range[1],this.ast)),C.optional=!0),Ij(e)?this.createNode(e,{type:hs.TSParameterProperty,accessibility:xme(e),decorators:[],override:vh(On.OverrideKeyword,e),parameter:b,readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e)}):b}case On.ClassDeclaration:!e.name&&(!vh(Tp.ExportKeyword,e)||!vh(Tp.DefaultKeyword,e))&&fg(this,sg,kR).call(this,e,"A class declaration without the 'default' modifier must have a name.");case On.ClassExpression:{let C=e.heritageClauses??[],b=e.kind===On.ClassDeclaration?hs.ClassDeclaration:hs.ClassExpression,E,N;for(let F of C){let{token:Q,types:X}=F;X.length===0&&fg(this,sg,kR).call(this,F,`'${by(Q)}' list cannot be empty.`),Q===On.ExtendsKeyword?(E&&fg(this,sg,kR).call(this,F,"'extends' clause already seen."),N&&fg(this,sg,kR).call(this,F,"'extends' clause must precede 'implements' clause."),X.length>1&&fg(this,sg,kR).call(this,X[1],"Classes can only extend a single class."),E??(E=F)):Q===On.ImplementsKeyword&&(N&&fg(this,sg,kR).call(this,F,"'implements' clause already seen."),N??(N=F))}let B=this.createNode(e,{type:b,abstract:vh(On.AbstractKeyword,e),body:this.createNode(e,{type:hs.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(Wtc).map(F=>this.convertChild(F))}),declare:vh(On.DeclareKeyword,e),decorators:((o=_Ne(e))==null?void 0:o.map(F=>this.convertChild(F)))??[],id:this.convertChild(e.name),implements:N?.types.map(F=>this.convertChild(F))??[],superClass:E!=null&&E.types[0]?this.convertChild(E.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(l=E?.types[0])!=null&&l.typeArguments&&(B.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(E.types[0].typeArguments,E.types[0])),this.fixExports(e,B)}case On.ModuleBlock:return this.createNode(e,{type:hs.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case On.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let C=this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(C.importKind="type"),e.importClause.name&&C.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case On.NamespaceImport:C.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case On.NamedImports:C.specifiers.push(...e.importClause.namedBindings.elements.map(b=>this.convertChild(b)));break}return C}case On.NamespaceImport:return this.createNode(e,{type:hs.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case On.ImportSpecifier:return this.createNode(e,{type:hs.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case On.ImportClause:{let C=this.convertChild(e.name);return this.createNode(e,{type:hs.ImportDefaultSpecifier,range:C.range,local:C})}case On.ExportDeclaration:return((A=e.exportClause)==null?void 0:A.kind)===On.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(C=>this.convertChild(C,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===On.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case On.ExportSpecifier:{let C=e.propertyName??e.name;return C.kind===On.StringLiteral&&t.kind===On.ExportDeclaration&&((I=t.moduleSpecifier)==null?void 0:I.kind)!==On.StringLiteral&&fg(this,sg,$p).call(this,C,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:hs.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(C)})}case On.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:hs.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:hs.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case On.PrefixUnaryExpression:case On.PostfixUnaryExpression:{let C=yce(e.operator);return C==="++"||C==="--"?(lDr(e.operand)||fg(this,sg,kR).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:hs.UpdateExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===On.PrefixUnaryExpression})):this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===On.PrefixUnaryExpression})}case On.DeleteExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case On.VoidExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case On.TypeOfExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case On.TypeOperator:return this.createNode(e,{type:hs.TSTypeOperator,operator:yce(e.operator),typeAnnotation:this.convertChild(e.type)});case On.BinaryExpression:{if(Mtc(e.operatorToken)){let b=this.createNode(e,{type:hs.SequenceExpression,expressions:[]}),E=this.convertChild(e.left);return E.type===hs.SequenceExpression&&e.left.kind!==On.ParenthesizedExpression?b.expressions.push(...E.expressions):b.expressions.push(E),b.expressions.push(this.convertChild(e.right)),b}let C=Qtc(e.operatorToken);return this.allowPattern&&C.type===hs.AssignmentExpression?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...C,left:this.converter(e.left,e,C.type===hs.AssignmentExpression),right:this.convertChild(e.right)})}case On.PropertyAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.name),E=this.createNode(e,{type:hs.MemberExpression,computed:!1,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case On.ElementAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.argumentExpression),E=this.createNode(e,{type:hs.MemberExpression,computed:!0,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case On.CallExpression:{if(e.expression.kind===On.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&fg(this,sg,kR).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let C=this.convertChild(e.expression),b=e.arguments.map(B=>this.convertChild(B)),E=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),N=this.createNode(e,{type:hs.CallExpression,arguments:b,callee:C,optional:e.questionDotToken!=null,typeArguments:E});return this.convertChainExpression(N,e)}case On.NewExpression:{let C=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:hs.NewExpression,arguments:e.arguments?e.arguments.map(b=>this.convertChild(b)):[],callee:this.convertChild(e.expression),typeArguments:C})}case On.ConditionalExpression:return this.createNode(e,{type:hs.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case On.MetaProperty:return this.createNode(e,{type:hs.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:hs.Identifier,decorators:[],name:yce(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case On.Decorator:return this.createNode(e,{type:hs.Decorator,expression:this.convertChild(e.expression)});case On.StringLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:t.kind===On.JsxAttribute?NSi(e.text):e.text});case On.NumericLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:Number(e.text)});case On.BigIntLiteral:{let C=iJe(e,this.ast),b=this.ast.text.slice(C[0],C[1]),E=bNe(!1,b.slice(0,-1),"_",""),N=typeof BigInt<"u"?BigInt(E):null;return this.createNode(e,{type:hs.Literal,range:C,bigint:N==null?E:String(N),raw:b,value:N})}case On.RegularExpressionLiteral:{let C=e.text.slice(1,e.text.lastIndexOf("/")),b=e.text.slice(e.text.lastIndexOf("/")+1),E=null;try{E=new RegExp(C,b)}catch{}return this.createNode(e,{type:hs.Literal,raw:e.text,regex:{flags:b,pattern:C},value:E})}case On.TrueKeyword:return this.createNode(e,{type:hs.Literal,raw:"true",value:!0});case On.FalseKeyword:return this.createNode(e,{type:hs.Literal,raw:"false",value:!1});case On.NullKeyword:return this.createNode(e,{type:hs.Literal,raw:"null",value:null});case On.EmptyStatement:return this.createNode(e,{type:hs.EmptyStatement});case On.DebuggerStatement:return this.createNode(e,{type:hs.DebuggerStatement});case On.JsxElement:return this.createNode(e,{type:hs.JSXElement,children:e.children.map(C=>this.convertChild(C)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case On.JsxFragment:return this.createNode(e,{type:hs.JSXFragment,children:e.children.map(C=>this.convertChild(C)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case On.JsxSelfClosingElement:return this.createNode(e,{type:hs.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:hs.JSXOpeningElement,range:iJe(e,this.ast),attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case On.JsxOpeningElement:return this.createNode(e,{type:hs.JSXOpeningElement,attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.JsxClosingElement:return this.createNode(e,{type:hs.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case On.JsxOpeningFragment:return this.createNode(e,{type:hs.JSXOpeningFragment});case On.JsxClosingFragment:return this.createNode(e,{type:hs.JSXClosingFragment});case On.JsxExpression:{let C=e.expression?this.convertChild(e.expression):this.createNode(e,{type:hs.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:hs.JSXSpreadChild,expression:C}):this.createNode(e,{type:hs.JSXExpressionContainer,expression:C})}case On.JsxAttribute:return this.createNode(e,{type:hs.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case On.JsxText:{let C=e.getFullStart(),b=e.getEnd(),E=this.ast.text.slice(C,b);return this.createNode(e,{type:hs.JSXText,range:[C,b],raw:E,value:NSi(E)})}case On.JsxSpreadAttribute:return this.createNode(e,{type:hs.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case On.QualifiedName:return this.createNode(e,{type:hs.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case On.TypeReference:return this.createNode(e,{type:hs.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case On.TypeParameter:return this.createNode(e,{type:hs.TSTypeParameter,const:vh(On.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:vh(On.InKeyword,e),name:this.convertChild(e.name),out:vh(On.OutKeyword,e)});case On.ThisType:return this.createNode(e,{type:hs.TSThisType});case On.AnyKeyword:case On.BigIntKeyword:case On.BooleanKeyword:case On.NeverKeyword:case On.NumberKeyword:case On.ObjectKeyword:case On.StringKeyword:case On.SymbolKeyword:case On.UnknownKeyword:case On.VoidKeyword:case On.UndefinedKeyword:case On.IntrinsicKeyword:return this.createNode(e,{type:hs[`TS${On[e.kind]}`]});case On.NonNullExpression:{let C=this.createNode(e,{type:hs.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(C,e)}case On.TypeLiteral:return this.createNode(e,{type:hs.TSTypeLiteral,members:e.members.map(C=>this.convertChild(C))});case On.ArrayType:return this.createNode(e,{type:hs.TSArrayType,elementType:this.convertChild(e.elementType)});case On.IndexedAccessType:return this.createNode(e,{type:hs.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case On.ConditionalType:return this.createNode(e,{type:hs.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case On.TypeQuery:return this.createNode(e,{type:hs.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.MappedType:return e.members&&e.members.length>0&&fg(this,sg,kR).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,fg(this,sg,ENr).call(this,{type:hs.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===On.QuestionToken||yce(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===On.ReadonlyKeyword||yce(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case On.ParenthesizedExpression:return this.convertChild(e.expression,t);case On.TypeAliasDeclaration:{let C=this.createNode(e,{type:hs.TSTypeAliasDeclaration,declare:vh(On.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,C)}case On.MethodSignature:return this.convertMethodSignature(e);case On.PropertySignature:{let{initializer:C}=e;return C&&fg(this,sg,$p).call(this,C,"A property signature cannot have an initializer."),this.createNode(e,{type:hs.TSPropertySignature,accessibility:xme(e),computed:fNe(e.name),key:this.convertChild(e.name),optional:DSi(e),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case On.IndexSignature:return this.createNode(e,{type:hs.TSIndexSignature,accessibility:xme(e),parameters:e.parameters.map(C=>this.convertChild(C)),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case On.ConstructorType:return this.createNode(e,{type:hs.TSConstructorType,abstract:vh(On.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.FunctionType:{let{modifiers:C}=e;C&&fg(this,sg,$p).call(this,C[0],"A function type cannot have modifiers.")}case On.ConstructSignature:case On.CallSignature:{let C=e.kind===On.ConstructSignature?hs.TSConstructSignatureDeclaration:e.kind===On.CallSignature?hs.TSCallSignatureDeclaration:hs.TSFunctionType;return this.createNode(e,{type:C,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case On.ExpressionWithTypeArguments:{let C=t.kind,b=C===On.InterfaceDeclaration?hs.TSInterfaceHeritage:C===On.HeritageClause?hs.TSClassImplements:hs.TSInstantiationExpression;return this.createNode(e,{type:b,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case On.InterfaceDeclaration:{let C=e.heritageClauses??[],b=[];for(let N of C){N.token!==On.ExtendsKeyword&&fg(this,sg,$p).call(this,N,N.token===On.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let B of N.types)b.push(this.convertChild(B,e))}let E=this.createNode(e,{type:hs.TSInterfaceDeclaration,body:this.createNode(e,{type:hs.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(N=>this.convertChild(N))}),declare:vh(On.DeclareKeyword,e),extends:b,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,E)}case On.TypePredicate:{let C=this.createNode(e,{type:hs.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),C.typeAnnotation.loc=C.typeAnnotation.typeAnnotation.loc,C.typeAnnotation.range=C.typeAnnotation.typeAnnotation.range),C}case On.ImportType:{let C=iJe(e,this.ast);if(e.isTypeOf){let E=pNe(e.getFirstToken(),e,this.ast);C[0]=E.getStart(this.ast)}let b=this.createNode(e,{type:hs.TSImportType,range:C,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:hs.TSTypeQuery,exprName:b,typeArguments:void 0}):b}case On.EnumDeclaration:{let C=e.members.map(E=>this.convertChild(E)),b=this.createNode(e,fg(this,sg,ENr).call(this,{type:hs.TSEnumDeclaration,body:this.createNode(e,{type:hs.TSEnumBody,range:[e.members.pos-1,e.end],members:C}),const:vh(On.ConstKeyword,e),declare:vh(On.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(E=>this.convertChild(E))));return this.fixExports(e,b)}case On.EnumMember:return this.createNode(e,{type:hs.TSEnumMember,computed:e.name.kind===Tp.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case On.ModuleDeclaration:{let C=vh(On.DeclareKeyword,e),b=this.createNode(e,{type:hs.TSModuleDeclaration,...(()=>{if(e.flags&IO.GlobalAugmentation){let N=this.convertChild(e.name),B=this.convertChild(e.body);return(B==null||B.type===hs.TSModuleDeclaration)&&fg(this,sg,kR).call(this,e.body??e,"Expected a valid module body"),N.type!==hs.Identifier&&fg(this,sg,kR).call(this,e.name,"global module augmentation must have an Identifier id"),{body:B,declare:!1,global:!1,id:N,kind:"global"}}if(!(e.flags&IO.Namespace)){let N=this.convertChild(e.body);return{kind:"module",...N!=null?{body:N}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&fg(this,sg,kR).call(this,e,"Expected a module body"),e.name.kind!==Tp.Identifier&&fg(this,sg,kR).call(this,e.name,"`namespace`s must have an Identifier id");let E=this.createNode(e.name,{type:hs.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&bJe(e.body)&&e.body.name;){e=e.body,C||(C=vh(On.DeclareKeyword,e));let N=e.name,B=this.createNode(N,{type:hs.Identifier,range:[N.getStart(this.ast),N.getEnd()],decorators:[],name:N.text,optional:!1,typeAnnotation:void 0});E=this.createNode(N,{type:hs.TSQualifiedName,range:[E.range[0],B.range[1]],left:E,right:B})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:E,kind:"namespace"}})()});return b.declare=C,e.flags&IO.GlobalAugmentation&&(b.global=!0),this.fixExports(e,b)}case On.ParenthesizedType:return this.convertChild(e.type);case On.UnionType:return this.createNode(e,{type:hs.TSUnionType,types:e.types.map(C=>this.convertChild(C))});case On.IntersectionType:return this.createNode(e,{type:hs.TSIntersectionType,types:e.types.map(C=>this.convertChild(C))});case On.AsExpression:return this.createNode(e,{type:hs.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case On.InferType:return this.createNode(e,{type:hs.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case On.LiteralType:return e.literal.kind===On.NullKeyword?this.createNode(e.literal,{type:hs.TSNullKeyword}):this.createNode(e,{type:hs.TSLiteralType,literal:this.convertChild(e.literal)});case On.TypeAssertionExpression:return this.createNode(e,{type:hs.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case On.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:hs.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case On.ExternalModuleReference:return e.expression.kind!==On.StringLiteral&&fg(this,sg,$p).call(this,e.expression,"String literal expected."),this.createNode(e,{type:hs.TSExternalModuleReference,expression:this.convertChild(e.expression)});case On.NamespaceExportDeclaration:return this.createNode(e,{type:hs.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case On.AbstractKeyword:return this.createNode(e,{type:hs.TSAbstractKeyword});case On.TupleType:{let C=e.elements.map(b=>this.convertChild(b));return this.createNode(e,{type:hs.TSTupleType,elementTypes:C})}case On.NamedTupleMember:{let C=this.createNode(e,{type:hs.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(C.range[0]=C.label.range[0],C.loc.start=C.label.loc.start,this.createNode(e,{type:hs.TSRestType,typeAnnotation:C})):C}case On.OptionalType:return this.createNode(e,{type:hs.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case On.RestType:return this.createNode(e,{type:hs.TSRestType,typeAnnotation:this.convertChild(e.type)});case On.TemplateLiteralType:{let C=this.createNode(e,{type:hs.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(b=>{C.types.push(this.convertChild(b.type)),C.quasis.push(this.convertChild(b.literal))}),C}case On.ClassStaticBlockDeclaration:return this.createNode(e,{type:hs.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case On.AssertEntry:case On.ImportAttribute:return this.createNode(e,{type:hs.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case On.SatisfiesExpression:return this.createNode(e,{type:hs.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=iJe(e,this.ast)),r.loc??(r.loc=Zme(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===Tp.JSDocFunctionType&&fg(this,sg,$p).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${On[e.kind]}`;if(this.options.errorOnUnknownASTType&&!hs[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&Zza(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let n=_Ne(e);n!=null&&n.length&&(r.decorators=n.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,l])=>{Array.isArray(l)?r[o]=l.map(A=>this.convertChild(A)):l&&typeof l=="object"&&l.kind?r[o]=this.convertChild(l):r[o]=l}),r}fixExports(e,t){let r=bJe(e)&&e.flags&IO.Namespace?Arc(e):Ij(e);if(r?.[0].kind===On.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let n=r[0],a=r[1],o=a?.kind===On.DefaultKeyword,l=o?pNe(a,this.ast,this.ast):pNe(n,this.ast,this.ast);if(t.range[0]=l.getStart(this.ast),t.loc=Zme(t.range,this.ast),o)return this.createNode(e,{type:hs.ExportDefaultDeclaration,range:[n.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let A=t.type===hs.TSInterfaceDeclaration||t.type===hs.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ExportNamedDeclaration,range:[n.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:A||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};sg=new WeakSet,bNr=function(e,t){let r=t===Tp.ForInStatement?"for...in":"for...of";if(hec(e)){e.declarations.length!==1&&fg(this,sg,$p).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let n=e.declarations[0];n.initializer?fg(this,sg,$p).call(this,n,`The variable declaration of a '${r}' statement cannot have an initializer.`):n.type&&fg(this,sg,$p).call(this,n,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===Tp.ForInStatement&&e.flags&IO.Using&&fg(this,sg,$p).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!lDr(e)&&e.kind!==Tp.ObjectLiteralExpression&&e.kind!==Tp.ArrayLiteralExpression&&fg(this,sg,$p).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},HBi=function(e){if(!this.options.allowInvalidAST){trc(e)&&fg(this,sg,$p).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of _Ne(e,!0)??[])grc(e)||(INr(e)&&!kSi(e.body)?fg(this,sg,$p).call(this,t,"A decorator can only decorate a method implementation, not an overload."):fg(this,sg,$p).call(this,t,"Decorators are not valid here."));for(let t of Ij(e,!0)??[]){if(t.kind!==On.ReadonlyKeyword&&((e.kind===On.PropertySignature||e.kind===On.MethodSignature)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a type member`),e.kind===On.IndexSignature&&(t.kind!==On.StaticKeyword||!BNe(e.parent))&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==On.InKeyword&&t.kind!==On.OutKeyword&&t.kind!==On.ConstKeyword&&e.kind===On.TypeParameter&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===On.InKeyword||t.kind===On.OutKeyword)&&(e.kind!==On.TypeParameter||!(nDr(e.parent)||BNe(e.parent)||pBi(e.parent)))&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===On.ReadonlyKeyword&&e.kind!==On.PropertyDeclaration&&e.kind!==On.PropertySignature&&e.kind!==On.IndexSignature&&e.kind!==On.Parameter&&fg(this,sg,$p).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===On.DeclareKeyword&&BNe(e.parent)&&!Kbt(e)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===On.DeclareKeyword&&rEt(e)){let r=yNr(e.declarationList);(r==="using"||r==="await using")&&fg(this,sg,$p).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===On.AbstractKeyword&&e.kind!==On.ClassDeclaration&&e.kind!==On.ConstructorType&&e.kind!==On.MethodDeclaration&&e.kind!==On.PropertyDeclaration&&e.kind!==On.GetAccessor&&e.kind!==On.SetAccessor&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===On.StaticKeyword||t.kind===On.PublicKeyword||t.kind===On.ProtectedKeyword||t.kind===On.PrivateKeyword)&&(e.parent.kind===On.ModuleBlock||e.parent.kind===On.SourceFile)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===On.AccessorKeyword&&e.kind!==On.PropertyDeclaration&&fg(this,sg,$p).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===On.AsyncKeyword&&e.kind!==On.MethodDeclaration&&e.kind!==On.FunctionDeclaration&&e.kind!==On.FunctionExpression&&e.kind!==On.ArrowFunction&&fg(this,sg,$p).call(this,t,"'async' modifier cannot be used here."),e.kind===On.Parameter&&(t.kind===On.StaticKeyword||t.kind===On.ExportKeyword||t.kind===On.DeclareKeyword||t.kind===On.AsyncKeyword)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a parameter.`),t.kind===On.PublicKeyword||t.kind===On.ProtectedKeyword||t.kind===On.PrivateKeyword)for(let r of Ij(e)??[])r!==t&&(r.kind===On.PublicKeyword||r.kind===On.ProtectedKeyword||r.kind===On.PrivateKeyword)&&fg(this,sg,$p).call(this,r,"Accessibility modifier already seen.");if(e.kind===On.Parameter&&(t.kind===On.PublicKeyword||t.kind===On.PrivateKeyword||t.kind===On.ProtectedKeyword||t.kind===On.ReadonlyKeyword||t.kind===On.OverrideKeyword)){let r=arc(e);r.kind===On.Constructor&&kSi(r.body)||fg(this,sg,$p).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},$p=function(e,t){let r,n;throw typeof e=="number"?r=n=e:(r=e.getStart(this.ast),n=e.getEnd()),OBi(t,this.ast,r,n)},kR=function(e,t){this.options.allowInvalidAST||fg(this,sg,$p).call(this,e,t)},yNe=function(e,t,r,n=!1){let a=n;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},ENr=function(e,t,r,n){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>n:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),n),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function frc(e,t,r=e.getSourceFile()){let n=[];for(;;){if(Dvi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)n.push(a[o])}if(n.length===0)break;e=n.pop()}}function Irc(e,t,r=e.getSourceFile()){let n=r.text,a=r.languageVariant!==ivi.JSX;return frc(e,l=>{if(l.pos!==l.end&&(l.kind!==Tp.JsxText&&X7a(n,l.pos===0?(bvi(n)??"").length:l.pos,o),a||hrc(l)))return J7a(n,l.end,o)},r);function o(l,A,f){t(n,{end:A,kind:f,pos:l})}}function hrc(e){switch(e.kind){case Tp.CloseBraceToken:return e.parent.kind!==Tp.JsxExpression||!rNr(e.parent.parent);case Tp.GreaterThanToken:switch(e.parent.kind){case Tp.JsxClosingElement:case Tp.JsxClosingFragment:return!rNr(e.parent.parent.parent);case Tp.JsxOpeningElement:return e.end!==e.parent.end;case Tp.JsxOpeningFragment:return!1;case Tp.JsxSelfClosingElement:return e.end!==e.parent.end||!rNr(e.parent.parent)}}return!0}function rNr(e){return e.kind===Tp.JsxElement||e.kind===Tp.JsxFragment}var[fRu,IRu]=O6a.split(".").map(e=>Number.parseInt(e,10)),hRu=kG.Intrinsic??kG.Any|kG.Unknown|kG.String|kG.Number|kG.BigInt|kG.Boolean|kG.BooleanLiteral|kG.ESSymbol|kG.Void|kG.Undefined|kG.Null|kG.Never|kG.NonPrimitive;function mrc(e,t){let r=[];return Irc(e,(n,a)=>{let o=a.kind===Tp.SingleLineCommentTrivia?sD.Line:sD.Block,l=[a.pos,a.end],A=Zme(l,e),f=l[0]+2,I=a.kind===Tp.SingleLineCommentTrivia?l[1]-f:l[1]-f-2;r.push({type:o,loc:A,range:l,value:t.slice(f,f+I)})},e),r}var Crc=()=>{};function _rc(e,t,r){let{parseDiagnostics:n}=e;if(n.length)throw drc(n[0]);let a=new prc(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&Crc(o,{enter:l=>{t.range||delete l.range,t.loc||delete l.loc}}),t.tokens&&(o.tokens=$tc(e)),t.comment&&(o.comments=mrc(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function YBi(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===Tp.SourceFile&&typeof t.getFullText=="function"}var yrc=function(e){return e&&e.__esModule?e:{default:e}},brc=yrc({extname:e=>"."+e.split(".").pop()});function Erc(e,t){switch(brc.default.extname(e).toLowerCase()){case tH.Cjs:case tH.Js:case tH.Mjs:return Bee.JS;case tH.Cts:case tH.Mts:case tH.Ts:return Bee.TS;case tH.Json:return Bee.JSON;case tH.Jsx:return Bee.JSX;case tH.Tsx:return Bee.TSX;default:return t?Bee.TSX:Bee.TS}}var Src={default:TNr},vrc=(0,Src.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function Brc(e){return vrc("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),YBi(e.code)?e.code:atc(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:GNr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,Erc(e.filePath,e.jsx))}var wrc=()=>{},Trc=e=>e,Rrc=class{},Nrc=()=>!1,Drc=()=>{},krc=function(e){return e&&e.__esModule?e:{default:e}},SNr={default:TNr},xrc=krc({extname:e=>"."+e.split(".").pop()}),Grc=(0,SNr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),xSi,GSi=null,FSi,ZSi,LSi,VSi,sJe={ParseAll:(FSi=lJe)==null?void 0:FSi.ParseAll,ParseForTypeErrors:(ZSi=lJe)==null?void 0:ZSi.ParseForTypeErrors,ParseForTypeInfo:(LSi=lJe)==null?void 0:LSi.ParseForTypeInfo,ParseNone:(VSi=lJe)==null?void 0:VSi.ParseNone};function Frc(e,t={}){var r;let n=Zrc(e),a=Nrc(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",l=typeof t.loggerFn=="function",A=Trc(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:Lrc(t.jsx),o),f=xrc.default.extname(A).toLowerCase(),I=(()=>{switch(t.jsDocParsingMode){case"all":return sJe.ParseAll;case"none":return sJe.ParseNone;case"type-info":return sJe.ParseForTypeInfo;default:return sJe.ParseAll}})(),C={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:n,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(b=>typeof b=="string")?t.extraFileExtensions:[],filePath:A,jsDocParsingMode:I,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?GSi??(GSi=wrc(t.projectService,I,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===tH.Mjs||t.sourceType==null&&f===tH.Mts?b=>{b.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:xSi??(xSi=new Rrc(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(C.debugLevel.size>0){let b=[];C.debugLevel.has("typescript-eslint")&&b.push("typescript-eslint:*"),(C.debugLevel.has("eslint")||SNr.default.enabled("eslint:*,-eslint:code-path"))&&b.push("eslint:*,-eslint:code-path"),SNr.default.enable(b.join(","))}if(Array.isArray(t.programs)){if(!t.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");Grc("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!C.programs&&!C.projectService&&(C.projects=new Map),t.jsDocParsingMode==null&&C.projects.size===0&&C.programs==null&&C.projectService==null&&(C.jsDocParsingMode=sJe.ParseNone),Drc(C,l),C}function Zrc(e){return YBi(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function Lrc(e){return e?"estree.tsx":"estree.ts"}var Vrc={default:TNr},mRu=(0,Vrc.default)("typescript-eslint:typescript-estree:parser");function Prc(e,t){let{ast:r}=Wrc(e,t,!1);return r}function Wrc(e,t,r){let n=Frc(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=Brc(n),{astMaps:o,estree:l}=_rc(a,n,r);return{ast:l,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function Orc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Mrc=Orc;function Hrc(e){let t=[];for(let r of e)try{return r()}catch(n){t.push(n)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var Yrc=Hrc,Qrc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},PSi=Qrc;function Xrc(e){return Array.isArray(e)&&e.length>0}var Jrc=Xrc;function pj(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(pj(o),a):a}function Lme(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Urc(e){let t=new Set(e);return r=>t.has(r?.type)}var Krc=Urc,jrc=Krc(["Block","CommentBlock","MultiLine"]),vNr=jrc;function zrc(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var WSi=zrc;function qrc(e){return vNr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var $rc=qrc,oJe=null;function IJe(e){if(oJe!==null&&typeof oJe.property){let t=oJe;return oJe=IJe.prototype=null,t}return oJe=IJe.prototype=e??Object.create(null),new IJe}var enc=10;for(let e=0;e<=enc;e++)IJe();function tnc(e){return IJe(e)}function rnc(e,t="type"){tnc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var nnc=rnc,inc={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},snc=nnc(inc),onc=snc;function BNr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some($rc)&&a.add(pj(o))}),e=nNr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=pj(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=nNr(e,a=>{switch(a.type){case"LogicalExpression":if(QBi(a))return wNr(a);break;case"VariableDeclaration":{let o=PSi(!1,a.declarations,-1);o!=null&&o.init&&n[Lme(o)]!==";"&&(a.range=[pj(a),Lme(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=pj(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),Jrc(e.comments)){let a=PSi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Lme(l)===pj(a)&&vNr(l)&&vNr(a)&&WSi(l)&&WSi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[pj(l),Lme(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function QBi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function wNr(e){return QBi(e)?wNr({type:"LogicalExpression",operator:e.operator,left:wNr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[pj(e.left),Lme(e.right.left)]}),right:e.right.right,range:[pj(e),Lme(e)]}):e}var cnc=anc,lnc=/\*\/$/,unc=/^\/\*\*?/,gnc=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Anc=/(^|\s+)\/\/([^\n\r]*)/g,OSi=/^(\r?\n)+/,dnc=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,MSi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,pnc=/(\r?\n|^) *\* ?/g,fnc=[];function Inc(e){let t=e.match(gnc);return t?t[0].trimStart():""}function hnc(e){let t=` -`;e=bNe(!1,e.replace(unc,"").replace(lnc,""),pnc,"$1");let r="";for(;r!==e;)r=e,e=bNe(!1,e,dnc,`${t}$1 $2${t}`);e=e.replace(OSi,"").trimEnd();let n=Object.create(null),a=bNe(!1,e,MSi,"").replace(OSi,"").trimEnd(),o;for(;o=MSi.exec(e);){let l=bNe(!1,o[2],Anc,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...fnc,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function mnc(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var Cnc=mnc;function _nc(e){let t=Cnc(e);t&&(e=e.slice(t.length+1));let r=Inc(e),{pragmas:n,comments:a}=hnc(r);return{shebang:t,text:e,pragmas:n,comments:a}}function ync(e){let{pragmas:t}=_nc(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function bnc(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:ync,locStart:pj,locEnd:Lme,...e}}var Enc=bnc;function Snc(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var vnc=Snc;function Bnc(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var wnc=Bnc,Tnc={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function Rnc(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:n}}=e;return Mrc(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:n.line,column:n.column+1}},cause:e})}var Nnc=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function Dnc(e,t){let r=t?.filepath,n=[{...Tnc,filePath:r}],a=vnc(t);if(a?n=n.map(l=>({...l,sourceType:a})):n=["module","script"].flatMap(l=>n.map(A=>({...A,sourceType:l}))),r&&Nnc(r))return n;let o=xnc(e);return[o,!o].flatMap(l=>n.map(A=>({...A,jsx:l})))}function knc(e,t={}){let r=wnc(e),n=Dnc(e,t),a;try{a=Yrc(n.map(o=>()=>Prc(r,o)))}catch({errors:[o]}){throw Rnc(o)}return cnc(a,{text:e})}function xnc(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var Gnc=Enc(knc),Fnc=XSi;var xJe={};sI(xJe,{default:()=>poc,languages:()=>Pwi,options:()=>Wwi,parsers:()=>xDr,printers:()=>eTi});var Znc=Object.create,SDr=Object.defineProperty,Lnc=Object.getOwnPropertyDescriptor,Vnc=Object.getOwnPropertyNames,Pnc=Object.getPrototypeOf,Wnc=Object.prototype.hasOwnProperty,Dee=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),nwi=(e,t)=>{for(var r in t)SDr(e,r,{get:t[r],enumerable:!0})},Onc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Vnc(t))!Wnc.call(e,a)&&a!==r&&SDr(e,a,{get:()=>t[a],enumerable:!(n=Lnc(t,a))||n.enumerable});return e},iwi=(e,t,r)=>(r=e!=null?Znc(Pnc(e)):{},Onc(t||!e||!e.__esModule?SDr(r,"default",{value:e,enumerable:!0}):r,e)),Kme=Dee(e=>{"use strict";var t={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},n="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ne){let ce=[0],fe=ne.indexOf(` +`||Es[0]==="\r");)Es.shift()}function wA(Es){for(;Es.length;){let Aa=Es[Es.length-1].trimEnd();if(Aa==="")Es.pop();else if(Aa.lengthKh&&(Ua.push(sv.slice(Kh-Es)),Pd=2),Es+=sv.length;break;case 19:Pd=2;let oP=t.getTokenFullStart(),fF=t.getTokenEnd()-1,ov=Ve(fF);ov?(wc.push(Zt(C.createJSDocText(Ua.join("")),hA??ha,oP)),wc.push(ov),Ua=[],hA=t.getTokenEnd()):i2(t.getTokenText());break;case 62:Pd===3?Pd=2:Pd=3,i2(t.getTokenText());break;case 82:Pd!==3&&(Pd=2),i2(t.getTokenValue());break;case 42:if(Pd===0){Pd=1,Es+=1;break}default:Pd!==3&&(Pd=2),i2(t.getTokenText());break}Pd===2||Pd===3?a1=Yn(Pd===3):a1=Ju()}zd(Ua);let Nb=Ua.join("").trimEnd();if(wc.length)return Nb.length&&wc.push(Zt(C.createJSDocText(Nb),hA??ha)),Er(wc,ha,t.getTokenEnd());if(Nb.length)return Nb}function Ve(Es){let Aa=Ki(wr);if(!Aa)return;Ju(),sy();let ha=Ct(),Ua=[];for(;Wt()!==20&&Wt()!==4&&Wt()!==1;)Ua.push(t.getTokenText()),Ju();let wc=Aa==="link"?C.createJSDocLink:Aa==="linkcode"?C.createJSDocLinkCode:C.createJSDocLinkPlain;return Zt(wc(ha,Ua.join("")),Es,t.getTokenEnd())}function Ct(){if(H1(Wt())){let Es=Ri(),Aa=Ca();for(;rc(25);)Aa=Zt(C.createQualifiedName(Aa,Wt()===81?bn(80,!1):Ca()),Es);for(;Wt()===81;)$i(),Ju(),Aa=Zt(C.createJSDocMemberName(Aa,Wa()),Es);return Aa}}function wr(){if($2(),Wt()===19&&Ju()===60&&H1(Ju())){let Es=t.getTokenValue();if(ai(Es))return Es}}function ai(Es){return Es==="link"||Es==="linkcode"||Es==="linkplain"}function Lo(Es,Aa,ha,Ua){return Zt(C.createJSDocUnknownTag(Aa,z(Es,Ri(),ha,Ua)),Es)}function Hc(Es){Es&&(Og?Og.push(Es):(Og=[Es],Nh=Es.pos),o1=Es.end)}function ad(){return $2(),Wt()===19?kr():void 0}function dm(){let Es=bx(23);Es&&sy();let Aa=bx(62),ha=yre();return Aa&&FA(62),Es&&(sy(),sd(64)&&$A(),ws(24)),{name:ha,isBracketed:Es}}function rv(Es){switch(Es.kind){case 151:return!0;case 188:return rv(Es.elementType);default:return CBi(Es)&&$C(Es.typeName)&&Es.typeName.escapedText==="Object"&&!Es.typeArguments}}function nv(Es,Aa,ha,Ua){let wc=ad(),hA=!wc;$2();let{name:Pd,isBracketed:Kh}=dm(),i2=$2();hA&&!oo(wr)&&(wc=ad());let a1=z(Es,Ri(),Ua,i2),Nb=yx(wc,Pd,ha,Ua);Nb&&(wc=Nb,hA=!0);let sv=ha===1?C.createJSDocPropertyTag(Aa,Pd,Kh,wc,hA,a1):C.createJSDocParameterTag(Aa,Pd,Kh,wc,hA,a1);return Zt(sv,Es)}function yx(Es,Aa,ha,Ua){if(Es&&rv(Es.type)){let wc=Ri(),hA,Pd;for(;hA=Ki(()=>r3(ha,Ua,Aa));)hA.kind===341||hA.kind===348?Pd=mV(Pd,hA):hA.kind===345&&mI(hA.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Pd){let Kh=Zt(C.createJSDocTypeLiteral(Pd,Es.type.kind===188),wc);return Zt(C.createJSDocTypeExpression(Kh),wc)}}}function Dd(Es,Aa,ha,Ua){oD(Og,Atc)&&_g(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,CJe(Aa.escapedText));let wc=ad();return Zt(C.createJSDocReturnTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function ji(Es,Aa,ha,Ua){oD(Og,lDr)&&_g(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,CJe(Aa.escapedText));let wc=kr(!0),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocTypeTag(Aa,wc,hA),Es)}function SL(Es,Aa,ha,Ua){let wc=Wt()===23||oo(()=>Ju()===60&&H1(Ju())&&ai(t.getTokenValue()))?void 0:Xr(),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSeeTag(Aa,wc,hA),Es)}function $l(Es,Aa,ha,Ua){let wc=ad(),hA=z(Es,Ri(),ha,Ua);return Zt(C.createJSDocThrowsTag(Aa,wc,hA),Es)}function Ap(Es,Aa,ha,Ua){let wc=Ri(),hA=Bc(),Pd=t.getTokenFullStart(),Kh=z(Es,Pd,ha,Ua);Kh||(Pd=t.getTokenFullStart());let i2=typeof Kh!="string"?Er(FNr([Zt(hA,wc,Pd)],Kh),wc):hA.text+Kh;return Zt(C.createJSDocAuthorTag(Aa,i2),Es)}function Bc(){let Es=[],Aa=!1,ha=t.getToken();for(;ha!==1&&ha!==4;){if(ha===30)Aa=!0;else{if(ha===60&&!Aa)break;if(ha===32&&Aa){Es.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}Es.push(t.getTokenText()),ha=Ju()}return C.createJSDocText(Es.join(""))}function Vo(Es,Aa,ha,Ua){let wc=cY();return Zt(C.createJSDocImplementsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function iv(Es,Aa,ha,Ua){let wc=cY();return Zt(C.createJSDocAugmentsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function nf(Es,Aa,ha,Ua){let wc=kr(!1),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSatisfiesTag(Aa,wc,hA),Es)}function J6(Es,Aa,ha,Ua){let wc=t.getTokenFullStart(),hA;Xs()&&(hA=Wa());let Pd=hB(hA,wc,!0,!0),Kh=FD(),i2=mw(),a1=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocImportTag(Aa,Pd,Kh,i2,a1),Es)}function cY(){let Es=rc(19),Aa=Ri(),ha=t3();t.setSkipJsDocLeadingAsterisks(!0);let Ua=xn();t.setSkipJsDocLeadingAsterisks(!1);let wc=C.createExpressionWithTypeArguments(ha,Ua),hA=Zt(wc,Aa);return Es&&ws(20),hA}function t3(){let Es=Ri(),Aa=Ex();for(;rc(25);){let ha=Ex();Aa=Zt(ce(Aa,ha),Es)}return Aa}function pF(Es,Aa,ha,Ua,wc){return Zt(Aa(ha,z(Es,Ri(),Ua,wc)),Es)}function rh(Es,Aa,ha,Ua){let wc=kr(!0);return sy(),Zt(C.createJSDocThisTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Cw(Es,Aa,ha,Ua){let wc=kr(!0);return sy(),Zt(C.createJSDocEnumTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Il(Es,Aa,ha,Ua){let wc=ad();$2();let hA=CB();sy();let Pd=ye(ha),Kh;if(!wc||rv(wc.type)){let a1,Nb,sv,oP=!1;for(;(a1=Ki(()=>lY(ha)))&&a1.kind!==345;)if(oP=!0,a1.kind===344)if(Nb){let fF=Da(ts.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);fF&&xbt(fF,fNe(er,xt,0,0,ts.The_tag_was_first_specified_here));break}else Nb=a1;else sv=mV(sv,a1);if(oP){let fF=wc&&wc.type.kind===188,ov=C.createJSDocTypeLiteral(sv,fF);wc=Nb&&Nb.typeExpression&&!rv(Nb.typeExpression.type)?Nb.typeExpression:Zt(ov,Es),Kh=wc.end}}Kh=Kh||Pd!==void 0?Ri():(hA??wc??Aa).end,Pd||(Pd=z(Es,Kh,ha,Ua));let i2=C.createJSDocTypedefTag(Aa,wc,hA,Pd);return Zt(i2,Es,Kh)}function CB(Es){let Aa=t.getTokenStart();if(!H1(Wt()))return;let ha=Ex();if(rc(25)){let Ua=CB(!0),wc=C.createModuleDeclaration(void 0,ha,Ua,Es?8:void 0);return Zt(wc,Aa)}return Es&&(ha.flags|=4096),ha}function Rb(Es){let Aa=Ri(),ha,Ua;for(;ha=Ki(()=>r3(4,Es));){if(ha.kind===345){mI(ha.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Ua=mV(Ua,ha)}return Er(Ua||[],Aa)}function $R(Es,Aa){let ha=Rb(Aa),Ua=Ki(()=>{if(bx(60)){let wc=Eo(Aa);if(wc&&wc.kind===342)return wc}});return Zt(C.createJSDocSignature(void 0,ha,Ua),Es)}function _re(Es,Aa,ha,Ua){let wc=CB();sy();let hA=ye(ha),Pd=$R(Es,ha);hA||(hA=z(Es,Ri(),ha,Ua));let Kh=hA!==void 0?Ri():Pd.end;return Zt(C.createJSDocCallbackTag(Aa,Pd,wc,hA),Es,Kh)}function vL(Es,Aa,ha,Ua){sy();let wc=ye(ha),hA=$R(Es,ha);wc||(wc=z(Es,Ri(),ha,Ua));let Pd=wc!==void 0?Ri():hA.end;return Zt(C.createJSDocOverloadTag(Aa,hA,wc),Es,Pd)}function uJ(Es,Aa){for(;!$C(Es)||!$C(Aa);)if(!$C(Es)&&!$C(Aa)&&Es.right.escapedText===Aa.right.escapedText)Es=Es.left,Aa=Aa.left;else return!1;return Es.escapedText===Aa.escapedText}function lY(Es){return r3(1,Es)}function r3(Es,Aa,ha){let Ua=!0,wc=!1;for(;;)switch(Ju()){case 60:if(Ua){let hA=U6(Es,Aa);return hA&&(hA.kind===341||hA.kind===348)&&ha&&($C(hA.name)||!uJ(ha,hA.name.left))?!1:hA}wc=!1;break;case 4:Ua=!0,wc=!1;break;case 42:wc&&(Ua=!1),wc=!0;break;case 80:Ua=!1;break;case 1:return!1}}function U6(Es,Aa){Zo.assert(Wt()===60);let ha=t.getTokenFullStart();Ju();let Ua=Ex(),wc=$2(),hA;switch(Ua.escapedText){case"type":return Es===1&&ji(ha,Ua);case"prop":case"property":hA=1;break;case"arg":case"argument":case"param":hA=6;break;case"template":return uY(ha,Ua,Aa,wc);case"this":return rh(ha,Ua,Aa,wc);default:return!1}return Es&hA?nv(ha,Ua,Es,Aa):!1}function gJ(){let Es=Ri(),Aa=bx(23);Aa&&sy();let ha=Le(!1,!0),Ua=Ex(ts.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),wc;if(Aa&&(sy(),ws(64),wc=Qa(16777216,YS),ws(24)),!Ome(Ua))return Zt(C.createTypeParameterDeclaration(ha,Ua,void 0,wc),Es)}function K6(){let Es=Ri(),Aa=[];do{sy();let ha=gJ();ha!==void 0&&Aa.push(ha),$2()}while(bx(28));return Er(Aa,Es)}function uY(Es,Aa,ha,Ua){let wc=Wt()===19?kr():void 0,hA=K6();return Zt(C.createJSDocTemplateTag(Aa,wc,hA,z(Es,Ri(),ha,Ua)),Es)}function bx(Es){return Wt()===Es?(Ju(),!0):!1}function yre(){let Es=Ex();for(rc(23)&&ws(24);rc(25);){let Aa=Ex();rc(23)&&ws(24),Es=O(Es,Aa)}return Es}function Ex(Es){if(!H1(Wt()))return bn(80,!Es,Es||ts.Identifier_expected);jt++;let Aa=t.getTokenStart(),ha=t.getTokenEnd(),Ua=Wt(),wc=ls(t.getTokenValue()),hA=Zt(F(wc,Ua),Aa,ha);return Ju(),hA}}})(aY=e.JSDocParser||(e.JSDocParser={}))})(Hme||(Hme={}));var HSi=new WeakSet;function Ptc(e){HSi.has(e)&&Zo.fail("Source file has already been incrementally parsed"),HSi.add(e)}var HBi=new WeakSet;function Wtc(e){return HBi.has(e)}function vNr(e){HBi.add(e)}var eEt;(e=>{function t(N,B,F,Q){if(Q=Q||Zo.shouldAssert(2),C(N,B,F,Q),Dza(F))return N;if(N.statements.length===0)return Hme.parseSourceFile(N.fileName,B,N.languageVersion,void 0,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);Ptc(N),Hme.fixupParentReferences(N);let X=N.text,ae=b(N),ne=f(N,F);C(N,B,ne,Q),Zo.assert(ne.span.start<=F.span.start),Zo.assert(gj(ne.span)===gj(F.span)),Zo.assert(gj(nJe(ne))===gj(nJe(F)));let ce=nJe(ne).length-ne.span.length;A(N,ne.span.start,gj(ne.span),gj(nJe(ne)),ce,X,B,Q);let fe=Hme.parseSourceFile(N.fileName,B,N.languageVersion,ae,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);return fe.commentDirectives=r(N.commentDirectives,fe.commentDirectives,ne.span.start,gj(ne.span),ce,X,B,Q),fe.impliedNodeFormat=N.impliedNodeFormat,htc(N,fe),fe}e.updateSourceFile=t;function r(N,B,F,Q,X,ae,ne,ce){if(!N)return B;let fe,ue=!1;for(let be of N){let{range:Se,type:De}=be;if(Se.endQ){de();let k={range:{pos:Se.pos+X,end:Se.end+X},type:De};fe=mV(fe,k),ce&&Zo.assert(ae.substring(Se.pos,Se.end)===ne.substring(k.range.pos,k.range.end))}}return de(),fe;function de(){ue||(ue=!0,fe?B&&fe.push(...B):fe=B)}}function n(N,B,F,Q,X,ae,ne){F?fe(N):ce(N);return;function ce(ue){let de="";if(ne&&a(ue)&&(de=X.substring(ue.pos,ue.end)),CSi(ue,B),Sce(ue,ue.pos+Q,ue.end+Q),ne&&a(ue)&&Zo.assert(de===ae.substring(ue.pos,ue.end)),Ok(ue,ce,fe),Wme(ue))for(let be of ue.jsDoc)ce(be);l(ue,ne)}function fe(ue){Sce(ue,ue.pos+Q,ue.end+Q);for(let de of ue)ce(de)}}function a(N){switch(N.kind){case 11:case 9:case 80:return!0}return!1}function o(N,B,F,Q,X){Zo.assert(N.end>=B,"Adjusting an element that was entirely before the change range"),Zo.assert(N.pos<=F,"Adjusting an element that was entirely after the change range"),Zo.assert(N.pos<=N.end);let ae=Math.min(N.pos,Q),ne=N.end>=F?N.end+X:Math.min(N.end,Q);if(Zo.assert(ae<=ne),N.parent){let ce=N.parent;Zo.assertGreaterThanOrEqual(ae,ce.pos),Zo.assertLessThanOrEqual(ne,ce.end)}Sce(N,ae,ne)}function l(N,B){if(B){let F=N.pos,Q=X=>{Zo.assert(X.pos>=F),F=X.end};if(Wme(N))for(let X of N.jsDoc)Q(X);Ok(N,Q),Zo.assert(F<=N.end)}}function A(N,B,F,Q,X,ae,ne,ce){fe(N);return;function fe(de){if(Zo.assert(de.pos<=de.end),de.pos>F){n(de,N,!1,X,ae,ne,ce);return}let be=de.end;if(be>=B){if(vNr(de),CSi(de,N),o(de,B,F,Q,X),Ok(de,fe,ue),Wme(de))for(let Se of de.jsDoc)fe(Se);l(de,ce);return}Zo.assert(beF){n(de,N,!0,X,ae,ne,ce);return}let be=de.end;if(be>=B){vNr(de),o(de,B,F,Q,X);for(let Se of de)fe(Se);return}Zo.assert(be0&&ae<=1;ae++){let ne=I(N,F);Zo.assert(ne.pos<=F);let ce=ne.pos;F=Math.max(0,ce-1)}let Q=Nza(F,gj(B.span)),X=B.newLength+(B.span.start-F);return Vvi(Q,X)}function I(N,B){let F=N,Q;if(Ok(N,ae),Q){let ne=X(Q);ne.pos>F.pos&&(F=ne)}return F;function X(ne){for(;;){let ce=_$a(ne);if(ce)ne=ce;else return ne}}function ae(ne){if(!Ome(ne))if(ne.pos<=B){if(ne.pos>=F.pos&&(F=ne),BB),!0}}function C(N,B,F,Q){let X=N.text;if(F&&(Zo.assert(X.length-F.span.length+F.newLength===B.length),Q||Zo.shouldAssert(3))){let ae=X.substr(0,F.span.start),ne=B.substr(0,F.span.start);Zo.assert(ae===ne);let ce=X.substring(gj(F.span),X.length),fe=B.substring(gj(nJe(F)),B.length);Zo.assert(ce===fe)}}function b(N){let B=N.statements,F=0;Zo.assert(F=ue.pos&&ne=ue.pos&&ne{N[N.Value=-1]="Value"})(E||(E={}))})(eEt||(eEt={}));function Otc(e){return Mtc(e)!==void 0}function Mtc(e){let t=vvi(e,O$a,!1);if(t)return t;if(K7a(e,".ts")){let r=Svi(e),n=r.lastIndexOf(".d.");if(n>=0)return r.substring(n)}}function Htc(e,t,r,n){if(e){if(e==="import")return 99;if(e==="require")return 1;n(t,r-t,ts.resolution_mode_should_be_either_require_or_import)}}function Ytc(e,t){let r=[];for(let n of pNr(t,0)||x2){let a=t.substring(n.pos,n.end);Ktc(r,n,a)}e.pragmas=new Map;for(let n of r){if(e.pragmas.has(n.name)){let a=e.pragmas.get(n.name);a instanceof Array?a.push(n.args):e.pragmas.set(n.name,[a,n.args]);continue}e.pragmas.set(n.name,n.args)}}function Qtc(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,n)=>{switch(n){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,l=e.libReferenceDirectives;hO(jRr(r),A=>{let{types:f,lib:I,path:C,["resolution-mode"]:b,preserve:E}=A.arguments,N=E==="true"?!0:void 0;if(A.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let B=Htc(b,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...B?{resolutionMode:B}:{},...N?{preserve:N}:{}})}else I?l.push({pos:I.pos,end:I.end,fileName:I.value,...N?{preserve:N}:{}}):C?a.push({pos:C.pos,end:C.end,fileName:C.value,...N?{preserve:N}:{}}):t(A.range.pos,A.range.end-A.range.pos,ts.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=lNr(jRr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,ts.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{hO(jRr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:n==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Zo.fail("Unhandled pragma kind")}})}var oNr=new Map;function Xtc(e){if(oNr.has(e))return oNr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return oNr.set(e,t),t}var Jtc=/^\/\/\/\s*<(\S+)\s.*?\/>/m,Utc=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function Ktc(e,t,r){let n=t.kind===2&&Jtc.exec(r);if(n){let o=n[1].toLowerCase(),l=Evi[o];if(!l||!(l.kind&1))return;if(l.args){let A={};for(let f of l.args){let I=Xtc(f.name).exec(r);if(!I&&!f.optional)return;if(I){let C=I[2]||I[3];if(f.captureSpan){let b=t.pos+I.index+I[1].length+1;A[f.name]={value:C,pos:b,end:b+C.length}}else A[f.name]=C}}e.push({name:o,args:{arguments:A,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&Utc.exec(r);if(a)return YSi(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,l;for(;l=o.exec(r);)YSi(e,t,4,l)}}function YSi(e,t,r,n){if(!n)return;let a=n[1].toLowerCase(),o=Evi[a];if(!o||!(o.kind&r))return;let l=n[2],A=jtc(o,l);A!=="fail"&&e.push({name:a,args:{arguments:A,range:t}})}function jtc(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),n={};for(let a=0;an.kind<309||n.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=Pme(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return Ok(this,e,t)}};function ztc(e,t){let r=[];if(bqa(e))return e.forEachChild(l=>{r.push(l)}),r;IJe.setText((t||e.getSourceFile()).text);let n=e.pos,a=l=>{hJe(r,n,l.pos,e),r.push(l),n=l.end},o=l=>{hJe(r,n,l.pos,e),r.push(qtc(l,e)),n=l.end};return hO(e.jsDoc,a),n=e.pos,e.forEachChild(a,o),hJe(r,n,e.end,e),IJe.setText(void 0),r}function hJe(e,t,r,n){for(IJe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function Obt(e,t){if(!e)return x2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(UBi))){let n=new Set;for(let a of e){let o=KBi(t,a,l=>{var A;if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualJsDocTags(a,t):((A=l.declarations)==null?void 0:A.length)===1?l.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function fJe(e,t){if(!e)return x2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(UBi))){let n=new Set;for(let a of e){let o=KBi(t,a,l=>{if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualDocumentationComment(a,t):l.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function KBi(e,t,r){var n;let a=((n=t.parent)==null?void 0:n.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=l$a(t);return m7a(e$a(a),l=>{let A=e.getTypeAtLocation(l),f=o&&A.symbol?e.getTypeOfSymbol(A.symbol):A,I=e.getPropertyOfType(f,t.symbol.name);return I?r(I):void 0})}var rrc=class extends ADr{constructor(e,t,r){super(e,t,r)}update(e,t){return Vtc(this,e,t)}getLineAndCharacterOfPosition(e){return kvi(this,e)}getLineStarts(){return dNr(this)}getPositionOfLineAndCharacter(e,t,r){return mza(dNr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),n;t+1>=r.length&&(n=this.getEnd()),n||(n=r[t+1]-1);let a=this.getFullText();return a[n]===` +`&&a[n-1]==="\r"?n-1:n}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=k7a();return this.forEachChild(a),e;function t(o){let l=n(o);l&&e.add(l,o)}function r(o){let l=e.get(o);return l||e.set(o,l=[]),l}function n(o){let l=JNr(o);return l&&(fBi(l)&&wce(l.expression)?l.expression.name.text:Uvi(l)?getNameFromPropertyName(l):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let l=o,A=n(l);if(A){let C=r(A),b=Pme(C);b&&l.parent===b.parent&&l.symbol===b.symbol?l.body&&!b.body&&(C[C.length-1]=l):C.push(l)}Ok(o,a);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(o),Ok(o,a);break;case 169:if(!BJe(o,31))break;case 260:case 208:{let C=o;if(Aqa(C.name)){Ok(C.name,a);break}C.initializer&&a(C.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(Uec(f.exportClause)?hO(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let I=o.importClause;I&&(I.name&&t(I.name),I.namedBindings&&(I.namedBindings.kind===274?t(I.namedBindings):hO(I.namedBindings.elements,a)));break;case 226:qNr(o)!==0&&t(o);default:Ok(o,a)}}}},nrc=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}getLineAndCharacterOfPosition(e){return kvi(this,e)}};function irc(){return{getNodeConstructor:()=>ADr,getTokenConstructor:()=>QBi,getIdentifierConstructor:()=>XBi,getPrivateIdentifierConstructor:()=>JBi,getSourceFileConstructor:()=>rrc,getSymbolConstructor:()=>$tc,getTypeConstructor:()=>erc,getSignatureConstructor:()=>trc,getSourceMapSourceConstructor:()=>nrc}}var src=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],mNu=[...src,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];R$a(irc());var jBi=new Proxy({},{get:()=>!0}),zBi=jBi["4.8"];function Ij(e,t=!1){var r;if(e!=null){if(zBi){if(t||gDr(e)){let n=Lza(e);return n?[...n]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(n=>!oDr(n))}}function bNe(e,t=!1){var r;if(e!=null){if(zBi){if(t||vtc(e)){let n=Zza(e);return n?[...n]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(oDr)}}var orc={},qBi=new Proxy({},{get:(e,t)=>t}),arc=qBi,crc=qBi,hs=arc,sD=crc,$Bi=jBi["5.0"],au=Tp,lrc=new Set([au.AmpersandAmpersandToken,au.BarBarToken,au.QuestionQuestionToken]),urc=new Set([Tp.AmpersandAmpersandEqualsToken,Tp.AmpersandEqualsToken,Tp.AsteriskAsteriskEqualsToken,Tp.AsteriskEqualsToken,Tp.BarBarEqualsToken,Tp.BarEqualsToken,Tp.CaretEqualsToken,Tp.EqualsToken,Tp.GreaterThanGreaterThanEqualsToken,Tp.GreaterThanGreaterThanGreaterThanEqualsToken,Tp.LessThanLessThanEqualsToken,Tp.MinusEqualsToken,Tp.PercentEqualsToken,Tp.PlusEqualsToken,Tp.QuestionQuestionEqualsToken,Tp.SlashEqualsToken]),grc=new Set([au.AmpersandAmpersandToken,au.AmpersandToken,au.AsteriskAsteriskToken,au.AsteriskToken,au.BarBarToken,au.BarToken,au.CaretToken,au.EqualsEqualsEqualsToken,au.EqualsEqualsToken,au.ExclamationEqualsEqualsToken,au.ExclamationEqualsToken,au.GreaterThanEqualsToken,au.GreaterThanGreaterThanGreaterThanToken,au.GreaterThanGreaterThanToken,au.GreaterThanToken,au.InKeyword,au.InstanceOfKeyword,au.LessThanEqualsToken,au.LessThanLessThanToken,au.LessThanToken,au.MinusToken,au.PercentToken,au.PlusToken,au.SlashToken]);function Arc(e){return urc.has(e.kind)}function drc(e){return lrc.has(e.kind)}function prc(e){return grc.has(e.kind)}function bce(e){return by(e)}function frc(e){return e.kind!==au.SemicolonClassElement}function vh(e,t){let r=Ij(t);return r?.some(n=>n.kind===e)===!0}function Irc(e){let t=Ij(e);return t==null?null:t[t.length-1]??null}function hrc(e){return e.kind===au.CommaToken}function mrc(e){return e.kind===au.SingleLineCommentTrivia||e.kind===au.MultiLineCommentTrivia}function Crc(e){return e.kind===au.JSDocComment}function _rc(e){if(Arc(e))return{type:hs.AssignmentExpression,operator:bce(e.kind)};if(drc(e))return{type:hs.LogicalExpression,operator:bce(e.kind)};if(prc(e))return{type:hs.BinaryExpression,operator:bce(e.kind)};throw new Error(`Unexpected binary operator ${by(e.kind)}`)}function Mbt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function Lme(e,t){let[r,n]=e.map(a=>Mbt(a,t));return{end:n,start:r}}function yrc(e){if(e.kind===Tp.Block)switch(e.parent.kind){case Tp.Constructor:case Tp.GetAccessor:case Tp.SetAccessor:case Tp.ArrowFunction:case Tp.FunctionExpression:case Tp.FunctionDeclaration:case Tp.MethodDeclaration:return!0;default:return!1}return!0}function oJe(e,t){return[e.getStart(t),e.getEnd()]}function brc(e){return e.kind>=au.FirstToken&&e.kind<=au.LastToken}function ewi(e){return e.kind>=au.JsxElement&&e.kind<=au.JsxAttribute}function BNr(e){return e.flags&IO.Let?"let":(e.flags&IO.AwaitUsing)===IO.AwaitUsing?"await using":e.flags&IO.Const?"const":e.flags&IO.Using?"using":"var"}function Gme(e){let t=Ij(e);if(t!=null)for(let r of t)switch(r.kind){case au.PublicKeyword:return"public";case au.ProtectedKeyword:return"protected";case au.PrivateKeyword:return"private";default:break}}function INe(e,t,r){return n(t);function n(a){return tqa(a)&&a.pos===e.end?a:krc(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&Drc(o,r)?n(o):void 0)}}function Erc(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function Src(e){return!!Erc(e,ewi)}function QSi(e){return SNe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let n=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return n>1114111?t:String.fromCodePoint(n)}return orc[r]||t})}function hNe(e){return e.kind===au.ComputedPropertyName}function XSi(e){return!!e.questionToken}function twi(e){return e.type===hs.ChainExpression}function vrc(e,t){return twi(t)&&e.expression.kind!==Tp.ParenthesizedExpression}function Brc(e){let t;if($Bi&&e.kind===au.Identifier?t=Wvi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===au.NullKeyword?sD.Null:t>=au.FirstFutureReservedWord&&t<=au.LastKeyword?sD.Identifier:sD.Keyword;if(e.kind>=au.FirstKeyword&&e.kind<=au.LastFutureReservedWord)return e.kind===au.FalseKeyword||e.kind===au.TrueKeyword?sD.Boolean:sD.Keyword;if(e.kind>=au.FirstPunctuation&&e.kind<=au.LastPunctuation)return sD.Punctuator;if(e.kind>=au.NoSubstitutionTemplateLiteral&&e.kind<=au.TemplateTail)return sD.Template;switch(e.kind){case au.NumericLiteral:return sD.Numeric;case au.JsxText:return sD.JSXText;case au.StringLiteral:return e.parent.kind===au.JsxAttribute||e.parent.kind===au.JsxElement?sD.JSXText:sD.String;case au.RegularExpressionLiteral:return sD.RegularExpression;case au.Identifier:case au.ConstructorKeyword:case au.GetKeyword:case au.SetKeyword:default:}return e.kind===au.Identifier&&(ewi(e.parent)||e.parent.kind===au.PropertyAccessExpression&&Src(e))?sD.JSXIdentifier:sD.Identifier}function wrc(e,t){let r=e.kind===au.JsxText?e.getFullStart():e.getStart(t),n=e.getEnd(),a=t.text.slice(r,n),o=Brc(e),l=[r,n],A=Lme(l,t);return o===sD.RegularExpression?{type:o,loc:A,range:l,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:A,range:l,value:a}}function Trc(e){let t=[];function r(n){mrc(n)||Crc(n)||(brc(n)&&n.kind!==au.EndOfFileToken?t.push(wrc(n,e)):n.getChildren(e).forEach(r))}return r(e),t}var Rrc=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function rwi(e,t,r,n=r){let[a,o]=[r,n].map(l=>{let{character:A,line:f}=t.getLineAndCharacterOfPosition(l);return{column:A,line:f+1,offset:l}});return new Rrc(e,t.fileName,{end:o,start:a})}function Nrc(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function Drc(e,t){return e.kind===au.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function krc(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==au.EndOfFileToken}function JSi(e){return!Frc(e)}function Zrc(e){return Pvi(e.parent,Kvi)}function Lrc(e){return vh(au.AbstractKeyword,e)}function Vrc(e){if(e.parameters.length&&!LBi(e)){let t=e.parameters[0];if(Prc(t))return t}return null}function Prc(e){return nwi(e.name)}function Wrc(e){switch(e.kind){case au.ClassDeclaration:return!0;case au.ClassExpression:return!0;case au.PropertyDeclaration:{let{parent:t}=e;return!!($bt(t)||TNe(t)&&!Lrc(e))}case au.GetAccessor:case au.SetAccessor:case au.MethodDeclaration:{let{parent:t}=e;return!!e.body&&($bt(t)||TNe(t))}case au.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===au.Constructor||t.kind===au.MethodDeclaration||t.kind===au.SetAccessor)&&Vrc(t)!==e&&!!r&&r.kind===au.ClassDeclaration}}return!1}function pDr(e){switch(e.kind){case au.Identifier:return!0;case au.PropertyAccessExpression:case au.ElementAccessExpression:return!(e.flags&IO.OptionalChain);case au.ParenthesizedExpression:case au.TypeAssertionExpression:case au.AsExpression:case au.SatisfiesExpression:case au.ExpressionWithTypeArguments:case au.NonNullExpression:return pDr(e.expression);default:return!1}}function Orc(e){let t=Ij(e),r=e;for(;(!t||t.length===0)&&SJe(r.parent);){let n=Ij(r.parent);n!=null&&n.length&&(t=n),r=r.parent}return t}var On=Tp;function Mrc(e){return rwi("message"in e&&e.message||e.messageText,e.file,e.start)}var sg,wNr,iwi,$p,kR,ENe,TNr,Hrc=class{constructor(e,t){d7a(this,sg),tJe(this,"allowPattern",!1),tJe(this,"ast"),tJe(this,"esTreeNodeToTSNodeMap",new WeakMap),tJe(this,"options"),tJe(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&fg(this,sg,kR).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==On.StringLiteral&&fg(this,sg,kR).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let n=this.convertPattern(e);return t&&(n.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(n,n.typeAnnotation.range)),n}convertBodyExpressions(e,t){let r=yrc(t);return e.map(n=>{let a=this.convertChild(n);if(r){if(a!=null&&a.expression&&BBi(n)&&nEt(n.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(n=>n)}convertChainExpression(e,t){let{child:r,isOptional:n}=e.type===hs.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===hs.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=vrc(t,r);if(!a&&!n)return e;if(a&&twi(r)){let o=r.expression;e.type===hs.MemberExpression?e.object=o:e.type===hs.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:hs.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===On.FunctionType||t?.kind===On.ConstructorType?2:1,n=[e.getFullStart()-r,e.end],a=Lme(n,this.ast);return{type:hs.TSTypeAnnotation,loc:a,range:n,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=INe(e,this.ast,this.ast);return this.createNode(t,{type:hs.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(n=>this.convertChild(n))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=INe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:hs.TSTypeParameterDeclaration,loc:Lme(r,this.ast),range:r,params:e.map(n=>this.convertChild(n))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let n=this.convertChild(t);return n.decorators=((r=bNe(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],n}):[]}converter(e,t,r){if(!e)return null;fg(this,sg,iwi).call(this,e);let n=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=n,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:hs.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===Tp.JsxNamespacedName){let n=this.createNode(e,{type:hs.JSXNamespacedName,name:this.createNode(e.name,{type:hs.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:hs.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,n),n}let t=e.getText(),r=t.indexOf(":");if(r>0){let n=oJe(e,this.ast),a=this.createNode(e,{type:hs.JSXNamespacedName,range:n,name:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0]+r+1,n[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0],n[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case On.PropertyAccessExpression:e.name.kind===On.PrivateIdentifier&&fg(this,sg,$p).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:hs.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case On.ThisKeyword:case On.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:hs.TSMethodSignature,accessibility:Gme(e),computed:hNe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case On.GetAccessor:return"get";case On.SetAccessor:return"set";case On.MethodSignature:return"method"}})(),optional:XSi(e),params:this.convertParameters(e.parameters),readonly:vh(On.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:vh(On.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=Mbt(e.range[1],this.ast))}convertNode(e,t){var r,n,a,o,l,A,f,I;switch(e.kind){case On.SourceFile:return this.createNode(e,{type:hs.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case On.Block:return this.createNode(e,{type:hs.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case On.Identifier:return Grc(e)?this.createNode(e,{type:hs.ThisExpression}):this.createNode(e,{type:hs.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case On.PrivateIdentifier:return this.createNode(e,{type:hs.PrivateIdentifier,name:e.text.slice(1)});case On.WithStatement:return this.createNode(e,{type:hs.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case On.ReturnStatement:return this.createNode(e,{type:hs.ReturnStatement,argument:this.convertChild(e.expression)});case On.LabeledStatement:return this.createNode(e,{type:hs.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case On.ContinueStatement:return this.createNode(e,{type:hs.ContinueStatement,label:this.convertChild(e.label)});case On.BreakStatement:return this.createNode(e,{type:hs.BreakStatement,label:this.convertChild(e.label)});case On.IfStatement:return this.createNode(e,{type:hs.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case On.SwitchStatement:return e.caseBlock.clauses.filter(C=>C.kind===On.DefaultClause).length>1&&fg(this,sg,$p).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:hs.SwitchStatement,cases:e.caseBlock.clauses.map(C=>this.convertChild(C)),discriminant:this.convertChild(e.expression)});case On.CaseClause:case On.DefaultClause:return this.createNode(e,{type:hs.SwitchCase,consequent:e.statements.map(C=>this.convertChild(C)),test:e.kind===On.CaseClause?this.convertChild(e.expression):null});case On.ThrowStatement:return e.expression.end===e.expression.pos&&fg(this,sg,kR).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:hs.ThrowStatement,argument:this.convertChild(e.expression)});case On.TryStatement:return this.createNode(e,{type:hs.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case On.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&fg(this,sg,$p).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:hs.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case On.WhileStatement:return this.createNode(e,{type:hs.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case On.DoStatement:return this.createNode(e,{type:hs.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case On.ForStatement:return this.createNode(e,{type:hs.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case On.ForInStatement:return fg(this,sg,wNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case On.ForOfStatement:return fg(this,sg,wNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===On.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case On.FunctionDeclaration:{let C=vh(On.DeclareKeyword,e),b=vh(On.AsyncKeyword,e),E=!!e.asteriskToken;C?e.body?fg(this,sg,$p).call(this,e,"An implementation cannot be declared in ambient contexts."):b?fg(this,sg,$p).call(this,e,"'async' modifier cannot be used in an ambient context."):E&&fg(this,sg,$p).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&E&&fg(this,sg,$p).call(this,e,"A function signature cannot be declared as a generator.");let N=this.createNode(e,{type:e.body?hs.FunctionDeclaration:hs.TSDeclareFunction,async:b,body:this.convertChild(e.body)||void 0,declare:C,expression:!1,generator:E,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,N)}case On.VariableDeclaration:{let C=!!e.exclamationToken,b=this.convertChild(e.initializer),E=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return C&&(b?fg(this,sg,$p).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(E.type!==hs.Identifier||!E.typeAnnotation)&&fg(this,sg,$p).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:hs.VariableDeclarator,definite:C,id:E,init:b})}case On.VariableStatement:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarationList.declarations.map(b=>this.convertChild(b)),declare:vh(On.DeclareKeyword,e),kind:BNr(e.declarationList)});return C.declarations.length||fg(this,sg,kR).call(this,e,"A variable declaration list must have at least one variable declarator."),(C.kind==="using"||C.kind==="await using")&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init==null&&fg(this,sg,$p).call(this,b,`'${C.kind}' declarations must be initialized.`),C.declarations[E].id.type!==hs.Identifier&&fg(this,sg,$p).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),(C.declare||["await using","const","using"].includes(C.kind))&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].definite&&fg(this,sg,$p).call(this,b,"A definite assignment assertion '!' is not permitted in this context.")}),C.declare&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init&&(["let","var"].includes(C.kind)||C.declarations[E].id.typeAnnotation)&&fg(this,sg,$p).call(this,b,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,C)}case On.VariableDeclarationList:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarations.map(b=>this.convertChild(b)),declare:!1,kind:BNr(e)});return(C.kind==="using"||C.kind==="await using")&&e.declarations.forEach((b,E)=>{C.declarations[E].init!=null&&fg(this,sg,$p).call(this,b,`'${C.kind}' declarations may not be initialized in for statement.`),C.declarations[E].id.type!==hs.Identifier&&fg(this,sg,$p).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),C}case On.ExpressionStatement:return this.createNode(e,{type:hs.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case On.ThisKeyword:return this.createNode(e,{type:hs.ThisExpression});case On.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:hs.ArrayExpression,elements:e.elements.map(C=>this.convertChild(C))});case On.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(b=>this.convertPattern(b)),typeAnnotation:void 0});let C=[];for(let b of e.properties)(b.kind===On.GetAccessor||b.kind===On.SetAccessor||b.kind===On.MethodDeclaration)&&!b.body&&fg(this,sg,kR).call(this,b.end-1,"'{' expected."),C.push(this.convertChild(b));return this.createNode(e,{type:hs.ObjectExpression,properties:C})}case On.PropertyAssignment:{let{exclamationToken:C,questionToken:b}=e;return b&&fg(this,sg,$p).call(this,b,"A property assignment cannot have a question token."),C&&fg(this,sg,$p).call(this,C,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:hs.Property,computed:hNe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case On.ShorthandPropertyAssignment:{let{exclamationToken:C,modifiers:b,questionToken:E}=e;return b&&fg(this,sg,$p).call(this,b[0],"A shorthand property assignment cannot have modifiers."),E&&fg(this,sg,$p).call(this,E,"A shorthand property assignment cannot have a question token."),C&&fg(this,sg,$p).call(this,C,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case On.ComputedPropertyName:return this.convertChild(e.expression);case On.PropertyDeclaration:{let C=vh(On.AbstractKeyword,e);C&&e.initializer&&fg(this,sg,$p).call(this,e.initializer,"Abstract property cannot have an initializer.");let b=vh(On.AccessorKeyword,e),E=b?C?hs.TSAbstractAccessorProperty:hs.AccessorProperty:C?hs.TSAbstractPropertyDefinition:hs.PropertyDefinition,N=this.convertChild(e.name);return this.createNode(e,{type:E,accessibility:Gme(e),computed:hNe(e.name),declare:vh(On.DeclareKeyword,e),decorators:((n=bNe(e))==null?void 0:n.map(B=>this.convertChild(B)))??[],definite:!!e.exclamationToken,key:N,optional:(N.type===hs.Literal||e.name.kind===On.Identifier||e.name.kind===On.ComputedPropertyName||e.name.kind===On.PrivateIdentifier)&&!!e.questionToken,override:vh(On.OverrideKeyword,e),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:C?null:this.convertChild(e.initializer)})}case On.GetAccessor:case On.SetAccessor:if(e.parent.kind===On.InterfaceDeclaration||e.parent.kind===On.TypeLiteral)return this.convertMethodSignature(e);case On.MethodDeclaration:{let C=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});C.typeParameters&&this.fixParentLocation(C,C.typeParameters.range);let b;if(t.kind===On.ObjectLiteralExpression)C.params=e.parameters.map(E=>this.convertChild(E)),b=this.createNode(e,{type:hs.Property,computed:hNe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===On.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:C});else{C.params=this.convertParameters(e.parameters);let E=vh(On.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition;b=this.createNode(e,{type:E,accessibility:Gme(e),computed:hNe(e.name),decorators:((a=bNe(e))==null?void 0:a.map(N=>this.convertChild(N)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:vh(On.OverrideKeyword,e),static:vh(On.StaticKeyword,e),value:C})}return e.kind===On.GetAccessor?b.kind="get":e.kind===On.SetAccessor?b.kind="set":!b.static&&e.name.kind===On.StringLiteral&&e.name.text==="constructor"&&b.type!==hs.Property&&(b.kind="constructor"),b}case On.Constructor:{let C=Irc(e),b=(C&&INe(C,e,this.ast))??e.getFirstToken(),E=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});E.typeParameters&&this.fixParentLocation(E,E.typeParameters.range);let N=this.createNode(e,{type:hs.Identifier,range:[b.getStart(this.ast),b.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),B=vh(On.StaticKeyword,e);return this.createNode(e,{type:vh(On.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition,accessibility:Gme(e),computed:!1,decorators:[],key:N,kind:B?"method":"constructor",optional:!1,override:!1,static:B,value:E})}case On.FunctionExpression:return this.createNode(e,{type:hs.FunctionExpression,async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.SuperKeyword:return this.createNode(e,{type:hs.Super});case On.ArrayBindingPattern:return this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0});case On.OmittedExpression:return null;case On.ObjectBindingPattern:return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(C=>this.convertPattern(C)),typeAnnotation:void 0});case On.BindingElement:{if(t.kind===On.ArrayBindingPattern){let b=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:b,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:hs.RestElement,argument:b,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):b}let C;return e.dotDotDotToken?C=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):C=this.createNode(e,{type:hs.Property,computed:!!(e.propertyName&&e.propertyName.kind===On.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(C.value=this.createNode(e,{type:hs.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),C}case On.ArrowFunction:return this.createNode(e,{type:hs.ArrowFunctionExpression,async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==On.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.YieldExpression:return this.createNode(e,{type:hs.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case On.AwaitExpression:return this.createNode(e,{type:hs.AwaitExpression,argument:this.convertChild(e.expression)});case On.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:hs.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case On.TemplateExpression:{let C=this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(b=>{C.expressions.push(this.convertChild(b.expression)),C.quasis.push(this.convertChild(b.literal))}),C}case On.TaggedTemplateExpression:return this.createNode(e,{type:hs.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.TemplateHead:case On.TemplateMiddle:case On.TemplateTail:{let C=e.kind===On.TemplateTail;return this.createNode(e,{type:hs.TemplateElement,tail:C,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(C?1:2))}})}case On.SpreadAssignment:case On.SpreadElement:return this.allowPattern?this.createNode(e,{type:hs.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:hs.SpreadElement,argument:this.convertChild(e.expression)});case On.Parameter:{let C,b;return e.dotDotDotToken?C=b=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(C=this.convertChild(e.name),b=this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:C,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),Ij(e)&&(b.range[0]=C.range[0],b.loc=Lme(b.range,this.ast))):C=b=this.convertChild(e.name,t),e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(C,C.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>C.range[1]&&(C.range[1]=e.questionToken.end,C.loc.end=Mbt(C.range[1],this.ast)),C.optional=!0),Ij(e)?this.createNode(e,{type:hs.TSParameterProperty,accessibility:Gme(e),decorators:[],override:vh(On.OverrideKeyword,e),parameter:b,readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e)}):b}case On.ClassDeclaration:!e.name&&(!vh(Tp.ExportKeyword,e)||!vh(Tp.DefaultKeyword,e))&&fg(this,sg,kR).call(this,e,"A class declaration without the 'default' modifier must have a name.");case On.ClassExpression:{let C=e.heritageClauses??[],b=e.kind===On.ClassDeclaration?hs.ClassDeclaration:hs.ClassExpression,E,N;for(let F of C){let{token:Q,types:X}=F;X.length===0&&fg(this,sg,kR).call(this,F,`'${by(Q)}' list cannot be empty.`),Q===On.ExtendsKeyword?(E&&fg(this,sg,kR).call(this,F,"'extends' clause already seen."),N&&fg(this,sg,kR).call(this,F,"'extends' clause must precede 'implements' clause."),X.length>1&&fg(this,sg,kR).call(this,X[1],"Classes can only extend a single class."),E??(E=F)):Q===On.ImplementsKeyword&&(N&&fg(this,sg,kR).call(this,F,"'implements' clause already seen."),N??(N=F))}let B=this.createNode(e,{type:b,abstract:vh(On.AbstractKeyword,e),body:this.createNode(e,{type:hs.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(frc).map(F=>this.convertChild(F))}),declare:vh(On.DeclareKeyword,e),decorators:((o=bNe(e))==null?void 0:o.map(F=>this.convertChild(F)))??[],id:this.convertChild(e.name),implements:N?.types.map(F=>this.convertChild(F))??[],superClass:E!=null&&E.types[0]?this.convertChild(E.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(l=E?.types[0])!=null&&l.typeArguments&&(B.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(E.types[0].typeArguments,E.types[0])),this.fixExports(e,B)}case On.ModuleBlock:return this.createNode(e,{type:hs.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case On.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let C=this.createNode(e,fg(this,sg,ENe).call(this,{type:hs.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(C.importKind="type"),e.importClause.name&&C.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case On.NamespaceImport:C.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case On.NamedImports:C.specifiers.push(...e.importClause.namedBindings.elements.map(b=>this.convertChild(b)));break}return C}case On.NamespaceImport:return this.createNode(e,{type:hs.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case On.ImportSpecifier:return this.createNode(e,{type:hs.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case On.ImportClause:{let C=this.convertChild(e.name);return this.createNode(e,{type:hs.ImportDefaultSpecifier,range:C.range,local:C})}case On.ExportDeclaration:return((A=e.exportClause)==null?void 0:A.kind)===On.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,fg(this,sg,ENe).call(this,{type:hs.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(C=>this.convertChild(C,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,fg(this,sg,ENe).call(this,{type:hs.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===On.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case On.ExportSpecifier:{let C=e.propertyName??e.name;return C.kind===On.StringLiteral&&t.kind===On.ExportDeclaration&&((I=t.moduleSpecifier)==null?void 0:I.kind)!==On.StringLiteral&&fg(this,sg,$p).call(this,C,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:hs.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(C)})}case On.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:hs.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:hs.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case On.PrefixUnaryExpression:case On.PostfixUnaryExpression:{let C=bce(e.operator);return C==="++"||C==="--"?(pDr(e.operand)||fg(this,sg,kR).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:hs.UpdateExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===On.PrefixUnaryExpression})):this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===On.PrefixUnaryExpression})}case On.DeleteExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case On.VoidExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case On.TypeOfExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case On.TypeOperator:return this.createNode(e,{type:hs.TSTypeOperator,operator:bce(e.operator),typeAnnotation:this.convertChild(e.type)});case On.BinaryExpression:{if(hrc(e.operatorToken)){let b=this.createNode(e,{type:hs.SequenceExpression,expressions:[]}),E=this.convertChild(e.left);return E.type===hs.SequenceExpression&&e.left.kind!==On.ParenthesizedExpression?b.expressions.push(...E.expressions):b.expressions.push(E),b.expressions.push(this.convertChild(e.right)),b}let C=_rc(e.operatorToken);return this.allowPattern&&C.type===hs.AssignmentExpression?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...C,left:this.converter(e.left,e,C.type===hs.AssignmentExpression),right:this.convertChild(e.right)})}case On.PropertyAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.name),E=this.createNode(e,{type:hs.MemberExpression,computed:!1,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case On.ElementAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.argumentExpression),E=this.createNode(e,{type:hs.MemberExpression,computed:!0,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case On.CallExpression:{if(e.expression.kind===On.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&fg(this,sg,kR).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,fg(this,sg,ENe).call(this,{type:hs.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let C=this.convertChild(e.expression),b=e.arguments.map(B=>this.convertChild(B)),E=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),N=this.createNode(e,{type:hs.CallExpression,arguments:b,callee:C,optional:e.questionDotToken!=null,typeArguments:E});return this.convertChainExpression(N,e)}case On.NewExpression:{let C=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:hs.NewExpression,arguments:e.arguments?e.arguments.map(b=>this.convertChild(b)):[],callee:this.convertChild(e.expression),typeArguments:C})}case On.ConditionalExpression:return this.createNode(e,{type:hs.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case On.MetaProperty:return this.createNode(e,{type:hs.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:hs.Identifier,decorators:[],name:bce(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case On.Decorator:return this.createNode(e,{type:hs.Decorator,expression:this.convertChild(e.expression)});case On.StringLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:t.kind===On.JsxAttribute?QSi(e.text):e.text});case On.NumericLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:Number(e.text)});case On.BigIntLiteral:{let C=oJe(e,this.ast),b=this.ast.text.slice(C[0],C[1]),E=SNe(!1,b.slice(0,-1),"_",""),N=typeof BigInt<"u"?BigInt(E):null;return this.createNode(e,{type:hs.Literal,range:C,bigint:N==null?E:String(N),raw:b,value:N})}case On.RegularExpressionLiteral:{let C=e.text.slice(1,e.text.lastIndexOf("/")),b=e.text.slice(e.text.lastIndexOf("/")+1),E=null;try{E=new RegExp(C,b)}catch{}return this.createNode(e,{type:hs.Literal,raw:e.text,regex:{flags:b,pattern:C},value:E})}case On.TrueKeyword:return this.createNode(e,{type:hs.Literal,raw:"true",value:!0});case On.FalseKeyword:return this.createNode(e,{type:hs.Literal,raw:"false",value:!1});case On.NullKeyword:return this.createNode(e,{type:hs.Literal,raw:"null",value:null});case On.EmptyStatement:return this.createNode(e,{type:hs.EmptyStatement});case On.DebuggerStatement:return this.createNode(e,{type:hs.DebuggerStatement});case On.JsxElement:return this.createNode(e,{type:hs.JSXElement,children:e.children.map(C=>this.convertChild(C)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case On.JsxFragment:return this.createNode(e,{type:hs.JSXFragment,children:e.children.map(C=>this.convertChild(C)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case On.JsxSelfClosingElement:return this.createNode(e,{type:hs.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:hs.JSXOpeningElement,range:oJe(e,this.ast),attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case On.JsxOpeningElement:return this.createNode(e,{type:hs.JSXOpeningElement,attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.JsxClosingElement:return this.createNode(e,{type:hs.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case On.JsxOpeningFragment:return this.createNode(e,{type:hs.JSXOpeningFragment});case On.JsxClosingFragment:return this.createNode(e,{type:hs.JSXClosingFragment});case On.JsxExpression:{let C=e.expression?this.convertChild(e.expression):this.createNode(e,{type:hs.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:hs.JSXSpreadChild,expression:C}):this.createNode(e,{type:hs.JSXExpressionContainer,expression:C})}case On.JsxAttribute:return this.createNode(e,{type:hs.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case On.JsxText:{let C=e.getFullStart(),b=e.getEnd(),E=this.ast.text.slice(C,b);return this.createNode(e,{type:hs.JSXText,range:[C,b],raw:E,value:QSi(E)})}case On.JsxSpreadAttribute:return this.createNode(e,{type:hs.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case On.QualifiedName:return this.createNode(e,{type:hs.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case On.TypeReference:return this.createNode(e,{type:hs.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case On.TypeParameter:return this.createNode(e,{type:hs.TSTypeParameter,const:vh(On.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:vh(On.InKeyword,e),name:this.convertChild(e.name),out:vh(On.OutKeyword,e)});case On.ThisType:return this.createNode(e,{type:hs.TSThisType});case On.AnyKeyword:case On.BigIntKeyword:case On.BooleanKeyword:case On.NeverKeyword:case On.NumberKeyword:case On.ObjectKeyword:case On.StringKeyword:case On.SymbolKeyword:case On.UnknownKeyword:case On.VoidKeyword:case On.UndefinedKeyword:case On.IntrinsicKeyword:return this.createNode(e,{type:hs[`TS${On[e.kind]}`]});case On.NonNullExpression:{let C=this.createNode(e,{type:hs.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(C,e)}case On.TypeLiteral:return this.createNode(e,{type:hs.TSTypeLiteral,members:e.members.map(C=>this.convertChild(C))});case On.ArrayType:return this.createNode(e,{type:hs.TSArrayType,elementType:this.convertChild(e.elementType)});case On.IndexedAccessType:return this.createNode(e,{type:hs.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case On.ConditionalType:return this.createNode(e,{type:hs.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case On.TypeQuery:return this.createNode(e,{type:hs.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.MappedType:return e.members&&e.members.length>0&&fg(this,sg,kR).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,fg(this,sg,TNr).call(this,{type:hs.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===On.QuestionToken||bce(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===On.ReadonlyKeyword||bce(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case On.ParenthesizedExpression:return this.convertChild(e.expression,t);case On.TypeAliasDeclaration:{let C=this.createNode(e,{type:hs.TSTypeAliasDeclaration,declare:vh(On.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,C)}case On.MethodSignature:return this.convertMethodSignature(e);case On.PropertySignature:{let{initializer:C}=e;return C&&fg(this,sg,$p).call(this,C,"A property signature cannot have an initializer."),this.createNode(e,{type:hs.TSPropertySignature,accessibility:Gme(e),computed:hNe(e.name),key:this.convertChild(e.name),optional:XSi(e),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case On.IndexSignature:return this.createNode(e,{type:hs.TSIndexSignature,accessibility:Gme(e),parameters:e.parameters.map(C=>this.convertChild(C)),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case On.ConstructorType:return this.createNode(e,{type:hs.TSConstructorType,abstract:vh(On.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.FunctionType:{let{modifiers:C}=e;C&&fg(this,sg,$p).call(this,C[0],"A function type cannot have modifiers.")}case On.ConstructSignature:case On.CallSignature:{let C=e.kind===On.ConstructSignature?hs.TSConstructSignatureDeclaration:e.kind===On.CallSignature?hs.TSCallSignatureDeclaration:hs.TSFunctionType;return this.createNode(e,{type:C,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case On.ExpressionWithTypeArguments:{let C=t.kind,b=C===On.InterfaceDeclaration?hs.TSInterfaceHeritage:C===On.HeritageClause?hs.TSClassImplements:hs.TSInstantiationExpression;return this.createNode(e,{type:b,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case On.InterfaceDeclaration:{let C=e.heritageClauses??[],b=[];for(let N of C){N.token!==On.ExtendsKeyword&&fg(this,sg,$p).call(this,N,N.token===On.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let B of N.types)b.push(this.convertChild(B,e))}let E=this.createNode(e,{type:hs.TSInterfaceDeclaration,body:this.createNode(e,{type:hs.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(N=>this.convertChild(N))}),declare:vh(On.DeclareKeyword,e),extends:b,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,E)}case On.TypePredicate:{let C=this.createNode(e,{type:hs.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),C.typeAnnotation.loc=C.typeAnnotation.typeAnnotation.loc,C.typeAnnotation.range=C.typeAnnotation.typeAnnotation.range),C}case On.ImportType:{let C=oJe(e,this.ast);if(e.isTypeOf){let E=INe(e.getFirstToken(),e,this.ast);C[0]=E.getStart(this.ast)}let b=this.createNode(e,{type:hs.TSImportType,range:C,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:hs.TSTypeQuery,exprName:b,typeArguments:void 0}):b}case On.EnumDeclaration:{let C=e.members.map(E=>this.convertChild(E)),b=this.createNode(e,fg(this,sg,TNr).call(this,{type:hs.TSEnumDeclaration,body:this.createNode(e,{type:hs.TSEnumBody,range:[e.members.pos-1,e.end],members:C}),const:vh(On.ConstKeyword,e),declare:vh(On.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(E=>this.convertChild(E))));return this.fixExports(e,b)}case On.EnumMember:return this.createNode(e,{type:hs.TSEnumMember,computed:e.name.kind===Tp.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case On.ModuleDeclaration:{let C=vh(On.DeclareKeyword,e),b=this.createNode(e,{type:hs.TSModuleDeclaration,...(()=>{if(e.flags&IO.GlobalAugmentation){let N=this.convertChild(e.name),B=this.convertChild(e.body);return(B==null||B.type===hs.TSModuleDeclaration)&&fg(this,sg,kR).call(this,e.body??e,"Expected a valid module body"),N.type!==hs.Identifier&&fg(this,sg,kR).call(this,e.name,"global module augmentation must have an Identifier id"),{body:B,declare:!1,global:!1,id:N,kind:"global"}}if(!(e.flags&IO.Namespace)){let N=this.convertChild(e.body);return{kind:"module",...N!=null?{body:N}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&fg(this,sg,kR).call(this,e,"Expected a module body"),e.name.kind!==Tp.Identifier&&fg(this,sg,kR).call(this,e.name,"`namespace`s must have an Identifier id");let E=this.createNode(e.name,{type:hs.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&SJe(e.body)&&e.body.name;){e=e.body,C||(C=vh(On.DeclareKeyword,e));let N=e.name,B=this.createNode(N,{type:hs.Identifier,range:[N.getStart(this.ast),N.getEnd()],decorators:[],name:N.text,optional:!1,typeAnnotation:void 0});E=this.createNode(N,{type:hs.TSQualifiedName,range:[E.range[0],B.range[1]],left:E,right:B})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:E,kind:"namespace"}})()});return b.declare=C,e.flags&IO.GlobalAugmentation&&(b.global=!0),this.fixExports(e,b)}case On.ParenthesizedType:return this.convertChild(e.type);case On.UnionType:return this.createNode(e,{type:hs.TSUnionType,types:e.types.map(C=>this.convertChild(C))});case On.IntersectionType:return this.createNode(e,{type:hs.TSIntersectionType,types:e.types.map(C=>this.convertChild(C))});case On.AsExpression:return this.createNode(e,{type:hs.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case On.InferType:return this.createNode(e,{type:hs.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case On.LiteralType:return e.literal.kind===On.NullKeyword?this.createNode(e.literal,{type:hs.TSNullKeyword}):this.createNode(e,{type:hs.TSLiteralType,literal:this.convertChild(e.literal)});case On.TypeAssertionExpression:return this.createNode(e,{type:hs.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case On.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:hs.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case On.ExternalModuleReference:return e.expression.kind!==On.StringLiteral&&fg(this,sg,$p).call(this,e.expression,"String literal expected."),this.createNode(e,{type:hs.TSExternalModuleReference,expression:this.convertChild(e.expression)});case On.NamespaceExportDeclaration:return this.createNode(e,{type:hs.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case On.AbstractKeyword:return this.createNode(e,{type:hs.TSAbstractKeyword});case On.TupleType:{let C=e.elements.map(b=>this.convertChild(b));return this.createNode(e,{type:hs.TSTupleType,elementTypes:C})}case On.NamedTupleMember:{let C=this.createNode(e,{type:hs.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(C.range[0]=C.label.range[0],C.loc.start=C.label.loc.start,this.createNode(e,{type:hs.TSRestType,typeAnnotation:C})):C}case On.OptionalType:return this.createNode(e,{type:hs.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case On.RestType:return this.createNode(e,{type:hs.TSRestType,typeAnnotation:this.convertChild(e.type)});case On.TemplateLiteralType:{let C=this.createNode(e,{type:hs.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(b=>{C.types.push(this.convertChild(b.type)),C.quasis.push(this.convertChild(b.literal))}),C}case On.ClassStaticBlockDeclaration:return this.createNode(e,{type:hs.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case On.AssertEntry:case On.ImportAttribute:return this.createNode(e,{type:hs.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case On.SatisfiesExpression:return this.createNode(e,{type:hs.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=oJe(e,this.ast)),r.loc??(r.loc=Lme(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===Tp.JSDocFunctionType&&fg(this,sg,$p).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${On[e.kind]}`;if(this.options.errorOnUnknownASTType&&!hs[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&gqa(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let n=bNe(e);n!=null&&n.length&&(r.decorators=n.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,l])=>{Array.isArray(l)?r[o]=l.map(A=>this.convertChild(A)):l&&typeof l=="object"&&l.kind?r[o]=this.convertChild(l):r[o]=l}),r}fixExports(e,t){let r=SJe(e)&&e.flags&IO.Namespace?Orc(e):Ij(e);if(r?.[0].kind===On.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let n=r[0],a=r[1],o=a?.kind===On.DefaultKeyword,l=o?INe(a,this.ast,this.ast):INe(n,this.ast,this.ast);if(t.range[0]=l.getStart(this.ast),t.loc=Lme(t.range,this.ast),o)return this.createNode(e,{type:hs.ExportDefaultDeclaration,range:[n.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let A=t.type===hs.TSInterfaceDeclaration||t.type===hs.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,fg(this,sg,ENe).call(this,{type:hs.ExportNamedDeclaration,range:[n.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:A||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};sg=new WeakSet,wNr=function(e,t){let r=t===Tp.ForInStatement?"for...in":"for...of";if(Xec(e)){e.declarations.length!==1&&fg(this,sg,$p).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let n=e.declarations[0];n.initializer?fg(this,sg,$p).call(this,n,`The variable declaration of a '${r}' statement cannot have an initializer.`):n.type&&fg(this,sg,$p).call(this,n,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===Tp.ForInStatement&&e.flags&IO.Using&&fg(this,sg,$p).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!pDr(e)&&e.kind!==Tp.ObjectLiteralExpression&&e.kind!==Tp.ArrayLiteralExpression&&fg(this,sg,$p).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},iwi=function(e){if(!this.options.allowInvalidAST){Nrc(e)&&fg(this,sg,$p).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of bNe(e,!0)??[])Wrc(e)||(yNr(e)&&!JSi(e.body)?fg(this,sg,$p).call(this,t,"A decorator can only decorate a method implementation, not an overload."):fg(this,sg,$p).call(this,t,"Decorators are not valid here."));for(let t of Ij(e,!0)??[]){if(t.kind!==On.ReadonlyKeyword&&((e.kind===On.PropertySignature||e.kind===On.MethodSignature)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a type member`),e.kind===On.IndexSignature&&(t.kind!==On.StaticKeyword||!TNe(e.parent))&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==On.InKeyword&&t.kind!==On.OutKeyword&&t.kind!==On.ConstKeyword&&e.kind===On.TypeParameter&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===On.InKeyword||t.kind===On.OutKeyword)&&(e.kind!==On.TypeParameter||!(cDr(e.parent)||TNe(e.parent)||RBi(e.parent)))&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===On.ReadonlyKeyword&&e.kind!==On.PropertyDeclaration&&e.kind!==On.PropertySignature&&e.kind!==On.IndexSignature&&e.kind!==On.Parameter&&fg(this,sg,$p).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===On.DeclareKeyword&&TNe(e.parent)&&!zbt(e)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===On.DeclareKeyword&&iEt(e)){let r=BNr(e.declarationList);(r==="using"||r==="await using")&&fg(this,sg,$p).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===On.AbstractKeyword&&e.kind!==On.ClassDeclaration&&e.kind!==On.ConstructorType&&e.kind!==On.MethodDeclaration&&e.kind!==On.PropertyDeclaration&&e.kind!==On.GetAccessor&&e.kind!==On.SetAccessor&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===On.StaticKeyword||t.kind===On.PublicKeyword||t.kind===On.ProtectedKeyword||t.kind===On.PrivateKeyword)&&(e.parent.kind===On.ModuleBlock||e.parent.kind===On.SourceFile)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===On.AccessorKeyword&&e.kind!==On.PropertyDeclaration&&fg(this,sg,$p).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===On.AsyncKeyword&&e.kind!==On.MethodDeclaration&&e.kind!==On.FunctionDeclaration&&e.kind!==On.FunctionExpression&&e.kind!==On.ArrowFunction&&fg(this,sg,$p).call(this,t,"'async' modifier cannot be used here."),e.kind===On.Parameter&&(t.kind===On.StaticKeyword||t.kind===On.ExportKeyword||t.kind===On.DeclareKeyword||t.kind===On.AsyncKeyword)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a parameter.`),t.kind===On.PublicKeyword||t.kind===On.ProtectedKeyword||t.kind===On.PrivateKeyword)for(let r of Ij(e)??[])r!==t&&(r.kind===On.PublicKeyword||r.kind===On.ProtectedKeyword||r.kind===On.PrivateKeyword)&&fg(this,sg,$p).call(this,r,"Accessibility modifier already seen.");if(e.kind===On.Parameter&&(t.kind===On.PublicKeyword||t.kind===On.PrivateKeyword||t.kind===On.ProtectedKeyword||t.kind===On.ReadonlyKeyword||t.kind===On.OverrideKeyword)){let r=Zrc(e);r.kind===On.Constructor&&JSi(r.body)||fg(this,sg,$p).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},$p=function(e,t){let r,n;throw typeof e=="number"?r=n=e:(r=e.getStart(this.ast),n=e.getEnd()),rwi(t,this.ast,r,n)},kR=function(e,t){this.options.allowInvalidAST||fg(this,sg,$p).call(this,e,t)},ENe=function(e,t,r,n=!1){let a=n;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},TNr=function(e,t,r,n){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>n:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),n),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function Yrc(e,t,r=e.getSourceFile()){let n=[];for(;;){if(Xvi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)n.push(a[o])}if(n.length===0)break;e=n.pop()}}function Qrc(e,t,r=e.getSourceFile()){let n=r.text,a=r.languageVariant!==Cvi.JSX;return Yrc(e,l=>{if(l.pos!==l.end&&(l.kind!==Tp.JsxText&&yza(n,l.pos===0?(Lvi(n)??"").length:l.pos,o),a||Xrc(l)))return bza(n,l.end,o)},r);function o(l,A,f){t(n,{end:A,kind:f,pos:l})}}function Xrc(e){switch(e.kind){case Tp.CloseBraceToken:return e.parent.kind!==Tp.JsxExpression||!aNr(e.parent.parent);case Tp.GreaterThanToken:switch(e.parent.kind){case Tp.JsxClosingElement:case Tp.JsxClosingFragment:return!aNr(e.parent.parent.parent);case Tp.JsxOpeningElement:return e.end!==e.parent.end;case Tp.JsxOpeningFragment:return!1;case Tp.JsxSelfClosingElement:return e.end!==e.parent.end||!aNr(e.parent.parent)}}return!0}function aNr(e){return e.kind===Tp.JsxElement||e.kind===Tp.JsxFragment}var[CNu,_Nu]=I7a.split(".").map(e=>Number.parseInt(e,10)),yNu=kG.Intrinsic??kG.Any|kG.Unknown|kG.String|kG.Number|kG.BigInt|kG.Boolean|kG.BooleanLiteral|kG.ESSymbol|kG.Void|kG.Undefined|kG.Null|kG.Never|kG.NonPrimitive;function Jrc(e,t){let r=[];return Qrc(e,(n,a)=>{let o=a.kind===Tp.SingleLineCommentTrivia?sD.Line:sD.Block,l=[a.pos,a.end],A=Lme(l,e),f=l[0]+2,I=a.kind===Tp.SingleLineCommentTrivia?l[1]-f:l[1]-f-2;r.push({type:o,loc:A,range:l,value:t.slice(f,f+I)})},e),r}var Urc=()=>{};function Krc(e,t,r){let{parseDiagnostics:n}=e;if(n.length)throw Mrc(n[0]);let a=new Hrc(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&Urc(o,{enter:l=>{t.range||delete l.range,t.loc||delete l.loc}}),t.tokens&&(o.tokens=Trc(e)),t.comment&&(o.comments=Jrc(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function swi(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===Tp.SourceFile&&typeof t.getFullText=="function"}var jrc=function(e){return e&&e.__esModule?e:{default:e}},zrc=jrc({extname:e=>"."+e.split(".").pop()});function qrc(e,t){switch(zrc.default.extname(e).toLowerCase()){case tH.Cjs:case tH.Js:case tH.Mjs:return wee.JS;case tH.Cts:case tH.Mts:case tH.Ts:return wee.TS;case tH.Json:return wee.JSON;case tH.Jsx:return wee.JSX;case tH.Tsx:return wee.TSX;default:return t?wee.TSX:wee.TS}}var $rc={default:xNr},enc=(0,$rc.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function tnc(e){return enc("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),swi(e.code)?e.code:Ztc(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:PNr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,qrc(e.filePath,e.jsx))}var rnc=()=>{},nnc=e=>e,inc=class{},snc=()=>!1,onc=()=>{},anc=function(e){return e&&e.__esModule?e:{default:e}},RNr={default:xNr},cnc=anc({extname:e=>"."+e.split(".").pop()}),lnc=(0,RNr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),USi,KSi=null,jSi,zSi,qSi,$Si,aJe={ParseAll:(jSi=gJe)==null?void 0:jSi.ParseAll,ParseForTypeErrors:(zSi=gJe)==null?void 0:zSi.ParseForTypeErrors,ParseForTypeInfo:(qSi=gJe)==null?void 0:qSi.ParseForTypeInfo,ParseNone:($Si=gJe)==null?void 0:$Si.ParseNone};function unc(e,t={}){var r;let n=gnc(e),a=snc(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",l=typeof t.loggerFn=="function",A=nnc(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:Anc(t.jsx),o),f=cnc.default.extname(A).toLowerCase(),I=(()=>{switch(t.jsDocParsingMode){case"all":return aJe.ParseAll;case"none":return aJe.ParseNone;case"type-info":return aJe.ParseForTypeInfo;default:return aJe.ParseAll}})(),C={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:n,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(b=>typeof b=="string")?t.extraFileExtensions:[],filePath:A,jsDocParsingMode:I,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?KSi??(KSi=rnc(t.projectService,I,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===tH.Mjs||t.sourceType==null&&f===tH.Mts?b=>{b.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:USi??(USi=new inc(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(C.debugLevel.size>0){let b=[];C.debugLevel.has("typescript-eslint")&&b.push("typescript-eslint:*"),(C.debugLevel.has("eslint")||RNr.default.enabled("eslint:*,-eslint:code-path"))&&b.push("eslint:*,-eslint:code-path"),RNr.default.enable(b.join(","))}if(Array.isArray(t.programs)){if(!t.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");lnc("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!C.programs&&!C.projectService&&(C.projects=new Map),t.jsDocParsingMode==null&&C.projects.size===0&&C.programs==null&&C.projectService==null&&(C.jsDocParsingMode=aJe.ParseNone),onc(C,l),C}function gnc(e){return swi(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function Anc(e){return e?"estree.tsx":"estree.ts"}var dnc={default:xNr},bNu=(0,dnc.default)("typescript-eslint:typescript-estree:parser");function pnc(e,t){let{ast:r}=fnc(e,t,!1);return r}function fnc(e,t,r){let n=unc(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=tnc(n),{astMaps:o,estree:l}=Krc(a,n,r);return{ast:l,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function Inc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var hnc=Inc;function mnc(e){let t=[];for(let r of e)try{return r()}catch(n){t.push(n)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var Cnc=mnc,_nc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},evi=_nc;function ync(e){return Array.isArray(e)&&e.length>0}var bnc=ync;function pj(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(pj(o),a):a}function Vme(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Enc(e){let t=new Set(e);return r=>t.has(r?.type)}var Snc=Enc,vnc=Snc(["Block","CommentBlock","MultiLine"]),NNr=vnc;function Bnc(e){let t=`*${e.value}*`.split(` +`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var tvi=Bnc;function wnc(e){return NNr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var Tnc=wnc,cJe=null;function mJe(e){if(cJe!==null&&typeof cJe.property){let t=cJe;return cJe=mJe.prototype=null,t}return cJe=mJe.prototype=e??Object.create(null),new mJe}var Rnc=10;for(let e=0;e<=Rnc;e++)mJe();function Nnc(e){return mJe(e)}function Dnc(e,t="type"){Nnc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var knc=Dnc,xnc={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},Gnc=knc(xnc),Fnc=Gnc;function DNr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(Tnc)&&a.add(pj(o))}),e=cNr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=pj(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=cNr(e,a=>{switch(a.type){case"LogicalExpression":if(owi(a))return kNr(a);break;case"VariableDeclaration":{let o=evi(!1,a.declarations,-1);o!=null&&o.init&&n[Vme(o)]!==";"&&(a.range=[pj(a),Vme(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=pj(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),bnc(e.comments)){let a=evi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Vme(l)===pj(a)&&NNr(l)&&NNr(a)&&tvi(l)&&tvi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[pj(l),Vme(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function owi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function kNr(e){return owi(e)?kNr({type:"LogicalExpression",operator:e.operator,left:kNr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[pj(e.left),Vme(e.right.left)]}),right:e.right.right,range:[pj(e),Vme(e)]}):e}var Lnc=Znc,Vnc=/\*\/$/,Pnc=/^\/\*\*?/,Wnc=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Onc=/(^|\s+)\/\/([^\n\r]*)/g,rvi=/^(\r?\n)+/,Mnc=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,nvi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,Hnc=/(\r?\n|^) *\* ?/g,Ync=[];function Qnc(e){let t=e.match(Wnc);return t?t[0].trimStart():""}function Xnc(e){let t=` +`;e=SNe(!1,e.replace(Pnc,"").replace(Vnc,""),Hnc,"$1");let r="";for(;r!==e;)r=e,e=SNe(!1,e,Mnc,`${t}$1 $2${t}`);e=e.replace(rvi,"").trimEnd();let n=Object.create(null),a=SNe(!1,e,nvi,"").replace(rvi,"").trimEnd(),o;for(;o=nvi.exec(e);){let l=SNe(!1,o[2],Onc,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...Ync,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function Jnc(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` +`);return t===-1?e:e.slice(0,t)}var Unc=Jnc;function Knc(e){let t=Unc(e);t&&(e=e.slice(t.length+1));let r=Qnc(e),{pragmas:n,comments:a}=Xnc(r);return{shebang:t,text:e,pragmas:n,comments:a}}function jnc(e){let{pragmas:t}=Knc(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function znc(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:jnc,locStart:pj,locEnd:Vme,...e}}var qnc=znc;function $nc(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var eic=$nc;function tic(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var ric=tic,nic={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function iic(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:n}}=e;return hnc(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:n.line,column:n.column+1}},cause:e})}var sic=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function oic(e,t){let r=t?.filepath,n=[{...nic,filePath:r}],a=eic(t);if(a?n=n.map(l=>({...l,sourceType:a})):n=["module","script"].flatMap(l=>n.map(A=>({...A,sourceType:l}))),r&&sic(r))return n;let o=cic(e);return[o,!o].flatMap(l=>n.map(A=>({...A,jsx:l})))}function aic(e,t={}){let r=ric(e),n=oic(e,t),a;try{a=Cnc(n.map(o=>()=>pnc(r,o)))}catch({errors:[o]}){throw iic(o)}return Lnc(a,{text:e})}function cic(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var lic=qnc(aic),uic=avi;var FJe={};sI(FJe,{default:()=>Hoc,languages:()=>eTi,options:()=>tTi,parsers:()=>VDr,printers:()=>fTi});var gic=Object.create,RDr=Object.defineProperty,Aic=Object.getOwnPropertyDescriptor,dic=Object.getOwnPropertyNames,pic=Object.getPrototypeOf,fic=Object.prototype.hasOwnProperty,kee=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),mwi=(e,t)=>{for(var r in t)RDr(e,r,{get:t[r],enumerable:!0})},Iic=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of dic(t))!fic.call(e,a)&&a!==r&&RDr(e,a,{get:()=>t[a],enumerable:!(n=Aic(t,a))||n.enumerable});return e},Cwi=(e,t,r)=>(r=e!=null?gic(pic(e)):{},Iic(t||!e||!e.__esModule?RDr(r,"default",{value:e,enumerable:!0}):r,e)),jme=kee(e=>{"use strict";var t={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},n="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ne){let ce=[0],fe=ne.indexOf(` `);for(;fe!==-1;)fe+=1,ce.push(fe),fe=ne.indexOf(` `,fe);return ce}function l(ne){let ce,fe;return typeof ne=="string"?(ce=o(ne),fe=ne):(Array.isArray(ne)&&(ne=ne[0]),ne&&ne.context&&(ne.lineStarts||(ne.lineStarts=o(ne.context.src)),ce=ne.lineStarts,fe=ne.context.src)),{lineStarts:ce,src:fe}}function A(ne,ce){if(typeof ne!="number"||ne<0)return null;let{lineStarts:fe,src:ue}=l(ce);if(!fe||!ue||ne>ue.length)return null;for(let be=0;be=1)||ne>fe.length)return null;let de=fe[ne-1],be=fe[ne];for(;be&&be>de&&ue[be-1]===` `;)--be;return ue.slice(de,be)}function I({start:ne,end:ce},fe,ue=80){let de=f(ne.line,fe);if(!de)return null;let{col:be}=ne;if(de.length>ue)if(be<=ue-10)de=de.substr(0,ue-1)+"\u2026";else{let ct=Math.round(ue/2);de.length>be+ct&&(de=de.substr(0,be+ct-1)+"\u2026"),be-=de.length-ue,de="\u2026"+de.substr(1-ue)}let Se=1,De="";ce&&(ce.line===ne.line&&be+(ce.col-ne.col)<=ue+1?Se=ce.col-ne.col:(Se=Math.min(de.length+1,ue)-be,De="\u2026"));let k=be>1?" ".repeat(be-1):"",et="^".repeat(Se);return`${de} -${k}${et}${De}`}var C=class swi{static copy(ce){return new swi(ce.start,ce.end)}constructor(ce,fe){this.start=ce,this.end=fe||ce}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ce,fe){let{start:ue,end:de}=this;if(ce.length===0||de<=ce[0])return this.origStart=ue,this.origEnd=de,fe;let be=fe;for(;beue);)++be;this.origStart=ue+be;let Se=be;for(;be=de);)++be;return this.origEnd=de+be,Se}},b=class Ree{static addStringTerminator(ce,fe,ue){if(ue[ue.length-1]===` -`)return ue;let de=Ree.endOfWhiteSpace(ce,fe);return de>=ce.length||ce[de]===` +${k}${et}${De}`}var C=class _wi{static copy(ce){return new _wi(ce.start,ce.end)}constructor(ce,fe){this.start=ce,this.end=fe||ce}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ce,fe){let{start:ue,end:de}=this;if(ce.length===0||de<=ce[0])return this.origStart=ue,this.origEnd=de,fe;let be=fe;for(;beue);)++be;this.origStart=ue+be;let Se=be;for(;be=de);)++be;return this.origEnd=de+be,Se}},b=class Nee{static addStringTerminator(ce,fe,ue){if(ue[ue.length-1]===` +`)return ue;let de=Nee.endOfWhiteSpace(ce,fe);return de>=ce.length||ce[de]===` `?ue+` `:ue}static atDocumentBoundary(ce,fe,ue){let de=ce[fe];if(!de)return!0;let be=ce[fe-1];if(be&&be!==` `)return!1;if(ue){if(de!==ue)return!1}else if(de!==t.DIRECTIVES_END&&de!==t.DOCUMENT_END)return!1;let Se=ce[fe+1],De=ce[fe+2];if(Se!==de||De!==de)return!1;let k=ce[fe+3];return!k||k===` @@ -2248,40 +2248,40 @@ ${k}${et}${De}`}var C=class swi{static copy(ce){return new swi(ce.start,ce.end)} `," "," ","[","]","{","}",","];for(;ue&&be.indexOf(ue)===-1;)ue=ce[fe+=1];return de&&ue===">"&&(fe+=1),fe}static endOfIndent(ce,fe){let ue=ce[fe];for(;ue===" ";)ue=ce[fe+=1];return fe}static endOfLine(ce,fe){let ue=ce[fe];for(;ue&&ue!==` `;)ue=ce[fe+=1];return fe}static endOfWhiteSpace(ce,fe){let ue=ce[fe];for(;ue===" "||ue===" ";)ue=ce[fe+=1];return fe}static startOfLine(ce,fe){let ue=ce[fe-1];if(ue===` `)return fe;for(;ue&&ue!==` -`;)ue=ce[fe-=1];return fe+1}static endOfBlockIndent(ce,fe,ue){let de=Ree.endOfIndent(ce,ue);if(de>ue+fe)return de;{let be=Ree.endOfWhiteSpace(ce,de),Se=ce[be];if(!Se||Se===` +`;)ue=ce[fe-=1];return fe+1}static endOfBlockIndent(ce,fe,ue){let de=Nee.endOfIndent(ce,ue);if(de>ue+fe)return de;{let be=Nee.endOfWhiteSpace(ce,de),Se=ce[be];if(!Se||Se===` `)return be}return null}static atBlank(ce,fe,ue){let de=ce[fe];return de===` `||de===" "||de===" "||ue&&!de}static nextNodeIsIndented(ce,fe,ue){return!ce||fe<0?!1:fe>0?!0:ue&&ce==="-"}static normalizeOffset(ce,fe){let ue=ce[fe];return ue?ue!==` `&&ce[fe-1]===` -`?fe-1:Ree.endOfWhiteSpace(ce,fe):fe}static foldNewline(ce,fe,ue){let de=0,be=!1,Se="",De=ce[fe+1];for(;De===" "||De===" "||De===` +`?fe-1:Nee.endOfWhiteSpace(ce,fe):fe}static foldNewline(ce,fe,ue){let de=0,be=!1,Se="",De=ce[fe+1];for(;De===" "||De===" "||De===` `;){switch(De){case` `:de=0,fe+=1,Se+=` -`;break;case" ":de<=ue&&(be=!0),fe=Ree.endOfWhiteSpace(ce,fe+2)-1;break;case" ":de+=1,fe+=1;break}De=ce[fe+1]}return Se||(Se=" "),De&&de<=ue&&(be=!0),{fold:Se,offset:fe,error:be}}constructor(ce,fe,ue){Object.defineProperty(this,"context",{value:ue||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ce,this.value=null}getPropValue(ce,fe,ue){if(!this.context)return null;let{src:de}=this.context,be=this.props[ce];return be&&de[be.start]===fe?de.slice(be.start+(ue?1:0),be.end):null}get anchor(){for(let ce=0;ce0?ce.join(` -`):null}commentHasRequiredWhitespace(ce){let{src:fe}=this.context;if(this.header&&ce===this.header.end||!this.valueRange)return!1;let{end:ue}=this.valueRange;return ce!==ue||Ree.atBlank(fe,ue-1)}get hasComment(){if(this.context){let{src:ce}=this.context;for(let fe=0;feue.setOrigRange(ce,fe)),fe}toString(){let{context:{src:ce},range:fe,value:ue}=this;if(ue!=null)return ue;let de=ce.slice(fe.start,fe.end);return Ree.addStringTerminator(ce,fe.end,de)}},E=class extends Error{constructor(ne,ce,fe){if(!fe||!(ce instanceof b))throw new Error(`Invalid arguments for new ${ne}`);super(),this.name=ne,this.message=fe,this.source=ce}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ne=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new C(this.offset,this.offset+1);let ce=ne&&A(this.offset,ne);if(ce){let fe={line:ce.line,col:ce.col+1};this.linePos={start:ce,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ce,col:fe}=this.linePos.start;this.message+=` at line ${ce}, column ${fe}`;let ue=ne&&I(this.linePos,ne);ue&&(this.message+=`: +`;break;case" ":de<=ue&&(be=!0),fe=Nee.endOfWhiteSpace(ce,fe+2)-1;break;case" ":de+=1,fe+=1;break}De=ce[fe+1]}return Se||(Se=" "),De&&de<=ue&&(be=!0),{fold:Se,offset:fe,error:be}}constructor(ce,fe,ue){Object.defineProperty(this,"context",{value:ue||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ce,this.value=null}getPropValue(ce,fe,ue){if(!this.context)return null;let{src:de}=this.context,be=this.props[ce];return be&&de[be.start]===fe?de.slice(be.start+(ue?1:0),be.end):null}get anchor(){for(let ce=0;ce0?ce.join(` +`):null}commentHasRequiredWhitespace(ce){let{src:fe}=this.context;if(this.header&&ce===this.header.end||!this.valueRange)return!1;let{end:ue}=this.valueRange;return ce!==ue||Nee.atBlank(fe,ue-1)}get hasComment(){if(this.context){let{src:ce}=this.context;for(let fe=0;feue.setOrigRange(ce,fe)),fe}toString(){let{context:{src:ce},range:fe,value:ue}=this;if(ue!=null)return ue;let de=ce.slice(fe.start,fe.end);return Nee.addStringTerminator(ce,fe.end,de)}},E=class extends Error{constructor(ne,ce,fe){if(!fe||!(ce instanceof b))throw new Error(`Invalid arguments for new ${ne}`);super(),this.name=ne,this.message=fe,this.source=ce}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ne=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new C(this.offset,this.offset+1);let ce=ne&&A(this.offset,ne);if(ce){let fe={line:ce.line,col:ce.col+1};this.linePos={start:ce,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ce,col:fe}=this.linePos.start;this.message+=` at line ${ce}, column ${fe}`;let ue=ne&&I(this.linePos,ne);ue&&(this.message+=`: ${ue} -`)}delete this.source}},N=class extends E{constructor(ne,ce){super("YAMLReferenceError",ne,ce)}},B=class extends E{constructor(ne,ce){super("YAMLSemanticError",ne,ce)}},F=class extends E{constructor(ne,ce){super("YAMLSyntaxError",ne,ce)}},Q=class extends E{constructor(ne,ce){super("YAMLWarning",ne,ce)}};function X(ne,ce,fe){return ce in ne?Object.defineProperty(ne,ce,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ne[ce]=fe,ne}var ae=class pDr extends b{static endOfLine(ce,fe,ue){let de=ce[fe],be=fe;for(;de&&de!==` +`)}delete this.source}},N=class extends E{constructor(ne,ce){super("YAMLReferenceError",ne,ce)}},B=class extends E{constructor(ne,ce){super("YAMLSemanticError",ne,ce)}},F=class extends E{constructor(ne,ce){super("YAMLSyntaxError",ne,ce)}},Q=class extends E{constructor(ne,ce){super("YAMLWarning",ne,ce)}};function X(ne,ce,fe){return ce in ne?Object.defineProperty(ne,ce,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ne[ce]=fe,ne}var ae=class CDr extends b{static endOfLine(ce,fe,ue){let de=ce[fe],be=fe;for(;de&&de!==` `&&!(ue&&(de==="["||de==="]"||de==="{"||de==="}"||de===","));){let Se=ce[be+1];if(de===":"&&(!Se||Se===` `||Se===" "||Se===" "||ue&&Se===",")||(de===" "||de===" ")&&Se==="#")break;be+=1,de=Se}return be}get strValue(){if(!this.valueRange||!this.context)return null;let{start:ce,end:fe}=this.valueRange,{src:ue}=this.context,de=ue[fe-1];for(;ceet?ue.slice(et,De+1):k)}else be+=k}let Se=ue[ce];switch(Se){case" ":{let De="Plain value cannot start with a tab character";return{errors:[new B(this,De)],str:be}}case"@":case"`":{let De=`Plain value cannot start with reserved character ${Se}`;return{errors:[new B(this,De)],str:be}}default:return be}}parseBlockValue(ce){let{indent:fe,inFlow:ue,src:de}=this.context,be=ce,Se=ce;for(let De=de[be];De===` `&&!b.atDocumentBoundary(de,be+1);De=de[be]){let k=b.endOfBlockIndent(de,fe,be+1);if(k===null||de[k]==="#")break;de[k]===` -`?be=k:(Se=pDr.endOfLine(de,k,ue),be=Se)}return this.valueRange.isEmpty()&&(this.valueRange.start=ce),this.valueRange.end=Se,Se}parse(ce,fe){this.context=ce;let{inFlow:ue,src:de}=ce,be=fe,Se=de[be];return Se&&Se!=="#"&&Se!==` -`&&(be=pDr.endOfLine(de,fe,ue)),this.valueRange=new C(fe,be),be=b.endOfWhiteSpace(de,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=b,e.PlainValue=ae,e.Range=C,e.Type=r,e.YAMLError=E,e.YAMLReferenceError=N,e.YAMLSemanticError=B,e.YAMLSyntaxError=F,e.YAMLWarning=Q,e._defineProperty=X,e.defaultTagPrefix=n,e.defaultTags=a}),Mnc=Dee(e=>{"use strict";var t=Kme(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(ae,ne){return this.context=ae,this.range=new t.Range(ne,ne+1),ne+1}},n=class extends t.Node{constructor(ae,ne){super(ae,ne),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(ae,ne){this.context=ae;let{parseNode:ce,src:fe}=ae,{atLineStart:ue,lineStart:de}=ae;!ue&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=ue?ne-de:ae.indent,Se=t.Node.endOfWhiteSpace(fe,ne+1),De=fe[Se],k=De==="#",et=[],ct=null;for(;De===` +`?be=k:(Se=CDr.endOfLine(de,k,ue),be=Se)}return this.valueRange.isEmpty()&&(this.valueRange.start=ce),this.valueRange.end=Se,Se}parse(ce,fe){this.context=ce;let{inFlow:ue,src:de}=ce,be=fe,Se=de[be];return Se&&Se!=="#"&&Se!==` +`&&(be=CDr.endOfLine(de,fe,ue)),this.valueRange=new C(fe,be),be=b.endOfWhiteSpace(de,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=b,e.PlainValue=ae,e.Range=C,e.Type=r,e.YAMLError=E,e.YAMLReferenceError=N,e.YAMLSemanticError=B,e.YAMLSyntaxError=F,e.YAMLWarning=Q,e._defineProperty=X,e.defaultTagPrefix=n,e.defaultTags=a}),hic=kee(e=>{"use strict";var t=jme(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(ae,ne){return this.context=ae,this.range=new t.Range(ne,ne+1),ne+1}},n=class extends t.Node{constructor(ae,ne){super(ae,ne),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(ae,ne){this.context=ae;let{parseNode:ce,src:fe}=ae,{atLineStart:ue,lineStart:de}=ae;!ue&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=ue?ne-de:ae.indent,Se=t.Node.endOfWhiteSpace(fe,ne+1),De=fe[Se],k=De==="#",et=[],ct=null;for(;De===` `||De==="#";){if(De==="#"){let je=t.Node.endOfLine(fe,Se+1);et.push(new t.Range(Se,je)),Se=je}else{ue=!0,de=Se+1;let je=t.Node.endOfWhiteSpace(fe,de);fe[je]===` -`&&et.length===0&&(ct=new r,de=ct.parse({src:fe},de)),Se=t.Node.endOfIndent(fe,de)}De=fe[Se]}if(t.Node.nextNodeIsIndented(De,Se-(de+be),this.type!==t.Type.SEQ_ITEM)?this.node=ce({atLineStart:ue,inCollection:!1,indent:be,lineStart:de,parent:this},Se):De&&de>ne+1&&(Se=de-1),this.node){if(ct){let je=ae.parent.items||ae.parent.contents;je&&je.push(ct)}et.length&&Array.prototype.push.apply(this.props,et),Se=this.node.range.end}else if(k){let je=et[0];this.props.push(je),Se=je.end}else Se=t.Node.endOfLine(fe,ne+1);let Me=this.node?this.node.valueRange.end:Se;return this.valueRange=new t.Range(ne,Me),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.node?this.node.setOrigRanges(ae,ne):ne}toString(){let{context:{src:ae},node:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne?ae.slice(ce.start,ne.range.start)+String(ne):ae.slice(ce.start,ce.end);return t.Node.addStringTerminator(ae,ce.end,ue)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(ae,ne){this.context=ae;let ce=this.parseComment(ne);return this.range=new t.Range(ne,ce),ce}};function o(ae){let ne=ae;for(;ne instanceof n;)ne=ne.node;if(!(ne instanceof l))return null;let ce=ne.items.length,fe=-1;for(let be=ce-1;be>=0;--be){let Se=ne.items[be];if(Se.type===t.Type.COMMENT){let{indent:De,lineStart:k}=Se.context;if(De>0&&Se.range.start>=k+De)break;fe=be}else if(Se.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let ue=ne.items.splice(fe,ce-fe),de=ue[0].range.start;for(;ne.range.end=de,ne.valueRange&&ne.valueRange.end>de&&(ne.valueRange.end=de),ne!==ae;)ne=ne.context.parent;return ue}var l=class fDr extends t.Node{static nextContentHasIndent(ne,ce,fe){let ue=t.Node.endOfLine(ne,ce)+1;ce=t.Node.endOfWhiteSpace(ne,ue);let de=ne[ce];return de?ce>=ue+fe?!0:de!=="#"&&de!==` -`?!1:fDr.nextContentHasIndent(ne,ce,fe):!1}constructor(ne){super(ne.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ne.props.length-1;fe>=0;--fe)if(ne.props[fe].start0}parse(ne,ce){this.context=ne;let{parseNode:fe,src:ue}=ne,de=t.Node.startOfLine(ue,ce),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Se=be.range.start-be.context.lineStart,De=ce;De=t.Node.normalizeOffset(ue,De);let k=ue[De],et=t.Node.endOfWhiteSpace(ue,de)===De,ct=!1;for(;k;){for(;k===` +`&&et.length===0&&(ct=new r,de=ct.parse({src:fe},de)),Se=t.Node.endOfIndent(fe,de)}De=fe[Se]}if(t.Node.nextNodeIsIndented(De,Se-(de+be),this.type!==t.Type.SEQ_ITEM)?this.node=ce({atLineStart:ue,inCollection:!1,indent:be,lineStart:de,parent:this},Se):De&&de>ne+1&&(Se=de-1),this.node){if(ct){let je=ae.parent.items||ae.parent.contents;je&&je.push(ct)}et.length&&Array.prototype.push.apply(this.props,et),Se=this.node.range.end}else if(k){let je=et[0];this.props.push(je),Se=je.end}else Se=t.Node.endOfLine(fe,ne+1);let Me=this.node?this.node.valueRange.end:Se;return this.valueRange=new t.Range(ne,Me),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.node?this.node.setOrigRanges(ae,ne):ne}toString(){let{context:{src:ae},node:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne?ae.slice(ce.start,ne.range.start)+String(ne):ae.slice(ce.start,ce.end);return t.Node.addStringTerminator(ae,ce.end,ue)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(ae,ne){this.context=ae;let ce=this.parseComment(ne);return this.range=new t.Range(ne,ce),ce}};function o(ae){let ne=ae;for(;ne instanceof n;)ne=ne.node;if(!(ne instanceof l))return null;let ce=ne.items.length,fe=-1;for(let be=ce-1;be>=0;--be){let Se=ne.items[be];if(Se.type===t.Type.COMMENT){let{indent:De,lineStart:k}=Se.context;if(De>0&&Se.range.start>=k+De)break;fe=be}else if(Se.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let ue=ne.items.splice(fe,ce-fe),de=ue[0].range.start;for(;ne.range.end=de,ne.valueRange&&ne.valueRange.end>de&&(ne.valueRange.end=de),ne!==ae;)ne=ne.context.parent;return ue}var l=class _Dr extends t.Node{static nextContentHasIndent(ne,ce,fe){let ue=t.Node.endOfLine(ne,ce)+1;ce=t.Node.endOfWhiteSpace(ne,ue);let de=ne[ce];return de?ce>=ue+fe?!0:de!=="#"&&de!==` +`?!1:_Dr.nextContentHasIndent(ne,ce,fe):!1}constructor(ne){super(ne.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ne.props.length-1;fe>=0;--fe)if(ne.props[fe].start0}parse(ne,ce){this.context=ne;let{parseNode:fe,src:ue}=ne,de=t.Node.startOfLine(ue,ce),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Se=be.range.start-be.context.lineStart,De=ce;De=t.Node.normalizeOffset(ue,De);let k=ue[De],et=t.Node.endOfWhiteSpace(ue,de)===De,ct=!1;for(;k;){for(;k===` `||k==="#";){if(et&&k===` -`&&!ct){let St=new r;if(De=St.parse({src:ue},De),this.valueRange.end=De,De>=ue.length){k=null;break}this.items.push(St),De-=1}else if(k==="#"){if(De=ue.length){k=null;break}}if(de=De+1,De=t.Node.endOfIndent(ue,de),t.Node.atBlank(ue,De)){let St=t.Node.endOfWhiteSpace(ue,De),At=ue[St];(!At||At===` +`&&!ct){let St=new r;if(De=St.parse({src:ue},De),this.valueRange.end=De,De>=ue.length){k=null;break}this.items.push(St),De-=1}else if(k==="#"){if(De=ue.length){k=null;break}}if(de=De+1,De=t.Node.endOfIndent(ue,de),t.Node.atBlank(ue,De)){let St=t.Node.endOfWhiteSpace(ue,De),At=ue[St];(!At||At===` `||At==="#")&&(De=St)}k=ue[De],et=!0}if(!k)break;if(De!==de+Se&&(et||k!==":")){if(Dece&&(De=de);break}else if(!this.error){let St="All collection items must start at the same column";this.error=new t.YAMLSyntaxError(this,St)}}if(be.type===t.Type.SEQ_ITEM){if(k!=="-"){de>ce&&(De=de);break}}else if(k==="-"&&!this.error){let St=ue[De+1];if(!St||St===` `||St===" "||St===" "){let At="A collection cannot be both a mapping and a sequence";this.error=new t.YAMLSyntaxError(this,At)}}let Me=fe({atLineStart:et,inCollection:!0,indent:Se,lineStart:de,parent:this},De);if(!Me)return De;if(this.items.push(Me),this.valueRange.end=Me.valueRange.end,De=t.Node.normalizeOffset(ue,Me.range.end),k=ue[De],et=!1,ct=Me.includesTrailingLines,k){let St=De-1,At=ue[St];for(;At===" "||At===" ";)At=ue[--St];At===` `&&(de=St+1,et=!0)}let je=o(Me);je&&Array.prototype.push.apply(this.items,je)}return De}setOrigRanges(ne,ce){return ce=super.setOrigRanges(ne,ce),this.items.forEach(fe=>{ce=fe.setOrigRanges(ne,ce)}),ce}toString(){let{context:{src:ne},items:ce,range:fe,value:ue}=this;if(ue!=null)return ue;let de=ne.slice(fe.start,ce[0].range.start)+String(ce[0]);for(let be=1;be0&&(this.contents=this.directives,this.directives=[]),de}return ce[de]?(this.directivesEndMarker=new t.Range(de,de+3),de+3):(ue?this.error=new t.YAMLSemanticError(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),de)}parseContents(ne){let{parseNode:ce,src:fe}=this.context;this.contents||(this.contents=[]);let ue=ne;for(;fe[ue-1]==="-";)ue-=1;let de=t.Node.endOfWhiteSpace(fe,ne),be=ue===ne;for(this.valueRange=new t.Range(de);!t.Node.atDocumentBoundary(fe,de,t.Char.DOCUMENT_END);){switch(fe[de]){case` -`:if(be){let Se=new r;de=Se.parse({src:fe},de),de{ce=fe.setOrigRanges(ne,ce)}),this.directivesEndMarker&&(ce=this.directivesEndMarker.setOrigRange(ne,ce)),this.contents.forEach(fe=>{ce=fe.setOrigRanges(ne,ce)}),this.documentEndMarker&&(ce=this.documentEndMarker.setOrigRange(ne,ce)),ce}toString(){let{contents:ne,directives:ce,value:fe}=this;if(fe!=null)return fe;let ue=ce.join("");return ne.length>0&&((ce.length>0||ne[0].type===t.Type.COMMENT)&&(ue+=`--- `),ue+=ne.join("")),ue[ue.length-1]!==` `&&(ue+=` @@ -2307,37 +2307,37 @@ ${ue} `||De===" "||De===" "||De===","||be===":"&&this.prevNodeIsJsonLike()){this.items.push({char:be,offset:Se}),Se+=1;break}}default:{let De=ce({atLineStart:!1,inCollection:!1,inFlow:!0,indent:-1,lineStart:de,parent:this},Se);if(!De)return this.valueRange=new t.Range(ne,Se),Se;this.items.push(De),Se=t.Node.normalizeOffset(fe,De.range.end)}}Se=t.Node.endOfWhiteSpace(fe,Se),be=fe[Se]}return this.valueRange=new t.Range(ne,Se+1),be&&(this.items.push({char:be,offset:Se}),Se=t.Node.endOfWhiteSpace(fe,Se+1),Se=this.parseComment(Se)),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.items.forEach(ce=>{if(ce instanceof t.Node)ne=ce.setOrigRanges(ae,ne);else if(ae.length===0)ce.origOffset=ce.offset;else{let fe=ne;for(;fece.offset);)++fe;ce.origOffset=ce.offset+fe,ne=fe}}),ne}toString(){let{context:{src:ae},items:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne.filter(Se=>Se instanceof t.Node),de="",be=ce.start;return ue.forEach(Se=>{let De=ae.slice(be,Se.range.start);be=Se.range.end,de+=De+String(Se),de[de.length-1]===` `&&ae[be-1]!==` `&&ae[be]===` -`&&(be+=1)}),de+=ae.slice(be,ce.end),t.Node.addStringTerminator(ae,ce.end,de)}},N=class owi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe&&fe!=='"';)ce+=fe==="\\"?2:1,fe=ne[ce];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=='"'&&ne.push(new t.YAMLSyntaxError(this,'Missing closing "quote'));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parseCharCode(ne,ce,fe){let{src:ue}=this.context,de=ue.substr(ne,ce),be=de.length===ce&&/^[0-9a-fA-F]+$/.test(de)?parseInt(de,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${ue.substr(ne-2,ce+2)}`)),ue.substr(ne-2,ce+2)):String.fromCodePoint(be)}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=owi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}},B=class awi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe;)if(fe==="'"){if(ne[ce+1]!=="'")break;fe=ne[ce+=2]}else fe=ne[ce+=1];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=="'"&&ne.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parseCharCode(ne,ce,fe){let{src:ue}=this.context,de=ue.substr(ne,ce),be=de.length===ce&&/^[0-9a-fA-F]+$/.test(de)?parseInt(de,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${ue.substr(ne-2,ce+2)}`)),ue.substr(ne-2,ce+2)):String.fromCodePoint(be)}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=ywi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}},B=class bwi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe;)if(fe==="'"){if(ne[ce+1]!=="'")break;fe=ne[ce+=2]}else fe=ne[ce+=1];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=="'"&&ne.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=awi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}};function F(ae,ne){switch(ae){case t.Type.ALIAS:return new I(ae,ne);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new b(ae,ne);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new E(ae,ne);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new n(ae,ne);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(ae,ne);case t.Type.QUOTE_DOUBLE:return new N(ae,ne);case t.Type.QUOTE_SINGLE:return new B(ae,ne);default:return null}}var Q=class iEt{static parseType(ne,ce,fe){switch(ne[ce]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ne={},{atLineStart:ce,inCollection:fe,inFlow:ue,indent:de,lineStart:be,parent:Se}={}){t._defineProperty(this,"parseNode",(De,k)=>{if(t.Node.atDocumentBoundary(this.src,k))return null;let et=new iEt(this,De),{props:ct,type:Me,valueStart:je}=et.parseProps(k),St=F(Me,ct),At=St.parse(et,je);if(St.range=new t.Range(k,At),At<=k&&(St.error=new Error("Node#parse consumed no characters"),St.error.parseEnd=At,St.error.source=St,St.range.end=k+1),et.nodeStartsCollection(St)){!St.error&&!et.atLineStart&&et.parent.type===t.Type.DOCUMENT&&(St.error=new t.YAMLSyntaxError(St,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let Yt=new l(St);return At=Yt.parse(new iEt(et),At),Yt.range=new t.Range(k,At),Yt}return St}),this.atLineStart=ce??(ne.atLineStart||!1),this.inCollection=fe??(ne.inCollection||!1),this.inFlow=ue??(ne.inFlow||!1),this.indent=de??ne.indent,this.lineStart=be??ne.lineStart,this.parent=Se??(ne.parent||{}),this.root=ne.root,this.src=ne.src}nodeStartsCollection(ne){let{inCollection:ce,inFlow:fe,src:ue}=this;if(ce||fe)return!1;if(ne instanceof n)return!0;let de=ne.range.end;return ue[de]===` +`&&(be+=Se>k?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=bwi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}};function F(ae,ne){switch(ae){case t.Type.ALIAS:return new I(ae,ne);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new b(ae,ne);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new E(ae,ne);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new n(ae,ne);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(ae,ne);case t.Type.QUOTE_DOUBLE:return new N(ae,ne);case t.Type.QUOTE_SINGLE:return new B(ae,ne);default:return null}}var Q=class oEt{static parseType(ne,ce,fe){switch(ne[ce]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ne={},{atLineStart:ce,inCollection:fe,inFlow:ue,indent:de,lineStart:be,parent:Se}={}){t._defineProperty(this,"parseNode",(De,k)=>{if(t.Node.atDocumentBoundary(this.src,k))return null;let et=new oEt(this,De),{props:ct,type:Me,valueStart:je}=et.parseProps(k),St=F(Me,ct),At=St.parse(et,je);if(St.range=new t.Range(k,At),At<=k&&(St.error=new Error("Node#parse consumed no characters"),St.error.parseEnd=At,St.error.source=St,St.range.end=k+1),et.nodeStartsCollection(St)){!St.error&&!et.atLineStart&&et.parent.type===t.Type.DOCUMENT&&(St.error=new t.YAMLSyntaxError(St,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let Yt=new l(St);return At=Yt.parse(new oEt(et),At),Yt.range=new t.Range(k,At),Yt}return St}),this.atLineStart=ce??(ne.atLineStart||!1),this.inCollection=fe??(ne.inCollection||!1),this.inFlow=ue??(ne.inFlow||!1),this.indent=de??ne.indent,this.lineStart=be??ne.lineStart,this.parent=Se??(ne.parent||{}),this.root=ne.root,this.src=ne.src}nodeStartsCollection(ne){let{inCollection:ce,inFlow:fe,src:ue}=this;if(ce||fe)return!1;if(ne instanceof n)return!0;let de=ne.range.end;return ue[de]===` `||ue[de-1]===` `?!1:(de=t.Node.endOfWhiteSpace(ue,de),ue[de]===":")}parseProps(ne){let{inFlow:ce,parent:fe,src:ue}=this,de=[],be=!1;ne=this.atLineStart?t.Node.endOfIndent(ue,ne):t.Node.endOfWhiteSpace(ue,ne);let Se=ue[ne];for(;Se===t.Char.ANCHOR||Se===t.Char.COMMENT||Se===t.Char.TAG||Se===` `;){if(Se===` `){let k=ne,et;do et=k+1,k=t.Node.endOfIndent(ue,et);while(ue[k]===` -`);let ct=k-(et+this.indent),Me=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(ue[k]!=="#"&&!t.Node.nextNodeIsIndented(ue[k],ct,!Me))break;this.atLineStart=!0,this.lineStart=et,be=!1,ne=k}else if(Se===t.Char.COMMENT){let k=t.Node.endOfLine(ue,ne+1);de.push(new t.Range(ne,k)),ne=k}else{let k=t.Node.endOfIdentifier(ue,ne+1);Se===t.Char.TAG&&ue[k]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(ue.slice(ne+1,k+13))&&(k=t.Node.endOfIdentifier(ue,k+5)),de.push(new t.Range(ne,k)),be=!0,ne=t.Node.endOfWhiteSpace(ue,k)}Se=ue[ne]}be&&Se===":"&&t.Node.atBlank(ue,ne+1,!0)&&(ne-=1);let De=iEt.parseType(ue,ne,ce);return{props:de,type:De,valueStart:ne}}};function X(ae){let ne=[];ae.indexOf("\r")!==-1&&(ae=ae.replace(/\r\n?/g,(ue,de)=>(ue.length>1&&ne.push(de),` +`);let ct=k-(et+this.indent),Me=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(ue[k]!=="#"&&!t.Node.nextNodeIsIndented(ue[k],ct,!Me))break;this.atLineStart=!0,this.lineStart=et,be=!1,ne=k}else if(Se===t.Char.COMMENT){let k=t.Node.endOfLine(ue,ne+1);de.push(new t.Range(ne,k)),ne=k}else{let k=t.Node.endOfIdentifier(ue,ne+1);Se===t.Char.TAG&&ue[k]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(ue.slice(ne+1,k+13))&&(k=t.Node.endOfIdentifier(ue,k+5)),de.push(new t.Range(ne,k)),be=!0,ne=t.Node.endOfWhiteSpace(ue,k)}Se=ue[ne]}be&&Se===":"&&t.Node.atBlank(ue,ne+1,!0)&&(ne-=1);let De=oEt.parseType(ue,ne,ce);return{props:de,type:De,valueStart:ne}}};function X(ae){let ne=[];ae.indexOf("\r")!==-1&&(ae=ae.replace(/\r\n?/g,(ue,de)=>(ue.length>1&&ne.push(de),` `)));let ce=[],fe=0;do{let ue=new f,de=new Q({src:ae});fe=ue.parse(de,fe),ce.push(ue)}while(fe{if(ne.length===0)return!1;for(let de=1;dece.join(`... -`),ce}e.parse=X}),NJe=Dee(e=>{"use strict";var t=Kme();function r(Hr,Wr,Ft){return Ft?`#${Ft.replace(/[\s\S]^/gm,`$&${Wr}#`)} +`),ce}e.parse=X}),kJe=kee(e=>{"use strict";var t=jme();function r(Hr,Wr,Ft){return Ft?`#${Ft.replace(/[\s\S]^/gm,`$&${Wr}#`)} ${Wr}${Hr}`:Hr}function n(Hr,Wr,Ft){return Ft?Ft.indexOf(` `)===-1?`${Hr} #${Ft}`:`${Hr} -`+Ft.replace(/^/gm,`${Wr||""}#`):Hr}var a=class{};function o(Hr,Wr,Ft){if(Array.isArray(Hr))return Hr.map((zr,Rn)=>o(zr,String(Rn),Ft));if(Hr&&typeof Hr.toJSON=="function"){let zr=Ft&&Ft.anchors&&Ft.anchors.get(Hr);zr&&(Ft.onCreate=Or=>{zr.res=Or,delete Ft.onCreate});let Rn=Hr.toJSON(Wr,Ft);return zr&&Ft.onCreate&&Ft.onCreate(Rn),Rn}return(!Ft||!Ft.keep)&&typeof Hr=="bigint"?Number(Hr):Hr}var l=class extends a{constructor(Hr){super(),this.value=Hr}toJSON(Hr,Wr){return Wr&&Wr.keep?this.value:o(this.value,Hr,Wr)}toString(){return String(this.value)}};function A(Hr,Wr,Ft){let zr=Ft;for(let Rn=Wr.length-1;Rn>=0;--Rn){let Or=Wr[Rn];if(Number.isInteger(Or)&&Or>=0){let Qi=[];Qi[Or]=zr,zr=Qi}else{let Qi={};Object.defineProperty(Qi,Or,{value:zr,writable:!0,enumerable:!0,configurable:!0}),zr=Qi}}return Hr.createNode(zr,!1)}var f=Hr=>Hr==null||typeof Hr=="object"&&Hr[Symbol.iterator]().next().done,I=class Jme extends a{constructor(Wr){super(),t._defineProperty(this,"items",[]),this.schema=Wr}addIn(Wr,Ft){if(f(Wr))this.add(Ft);else{let[zr,...Rn]=Wr,Or=this.get(zr,!0);if(Or instanceof Jme)Or.addIn(Rn,Ft);else if(Or===void 0&&this.schema)this.set(zr,A(this.schema,Rn,Ft));else throw new Error(`Expected YAML collection at ${zr}. Remaining path: ${Rn}`)}}deleteIn([Wr,...Ft]){if(Ft.length===0)return this.delete(Wr);let zr=this.get(Wr,!0);if(zr instanceof Jme)return zr.deleteIn(Ft);throw new Error(`Expected YAML collection at ${Wr}. Remaining path: ${Ft}`)}getIn([Wr,...Ft],zr){let Rn=this.get(Wr,!0);return Ft.length===0?!zr&&Rn instanceof l?Rn.value:Rn:Rn instanceof Jme?Rn.getIn(Ft,zr):void 0}hasAllNullValues(){return this.items.every(Wr=>{if(!Wr||Wr.type!=="PAIR")return!1;let Ft=Wr.value;return Ft==null||Ft instanceof l&&Ft.value==null&&!Ft.commentBefore&&!Ft.comment&&!Ft.tag})}hasIn([Wr,...Ft]){if(Ft.length===0)return this.has(Wr);let zr=this.get(Wr,!0);return zr instanceof Jme?zr.hasIn(Ft):!1}setIn([Wr,...Ft],zr){if(Ft.length===0)this.set(Wr,zr);else{let Rn=this.get(Wr,!0);if(Rn instanceof Jme)Rn.setIn(Ft,zr);else if(Rn===void 0&&this.schema)this.set(Wr,A(this.schema,Ft,zr));else throw new Error(`Expected YAML collection at ${Wr}. Remaining path: ${Ft}`)}}toJSON(){return null}toString(Wr,{blockItem:Ft,flowChars:zr,isMap:Rn,itemIndent:Or},Qi,ps){let{indent:yo,indentStep:bo,stringify:Qa}=Wr,gc=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Wr.inFlow;gc&&(Or+=bo);let Cg=Rn&&this.hasAllNullValues();Wr=Object.assign({},Wr,{allNullValues:Cg,indent:Or,inFlow:gc,type:null});let Nc=!1,iA=!1,ma=this.items.reduce((li,Ei,Ps)=>{let Xa;Ei&&(!Nc&&Ei.spaceBefore&&li.push({type:"comment",str:""}),Ei.commentBefore&&Ei.commentBefore.match(/^.*$/gm).forEach(Yl=>{li.push({type:"comment",str:`#${Yl}`})}),Ei.comment&&(Xa=Ei.comment),gc&&(!Nc&&Ei.spaceBefore||Ei.commentBefore||Ei.comment||Ei.key&&(Ei.key.commentBefore||Ei.key.comment)||Ei.value&&(Ei.value.commentBefore||Ei.value.comment))&&(iA=!0)),Nc=!1;let ac=Qa(Ei,Wr,()=>Xa=null,()=>Nc=!0);return gc&&!iA&&ac.includes(` -`)&&(iA=!0),gc&&PsXa.str);if(iA||Ps.reduce((Xa,ac)=>Xa+ac.length+2,2)>Jme.maxFlowStringSingleLineLength){vu=li;for(let Xa of Ps)vu+=Xa?` +`+Ft.replace(/^/gm,`${Wr||""}#`):Hr}var a=class{};function o(Hr,Wr,Ft){if(Array.isArray(Hr))return Hr.map((zr,Rn)=>o(zr,String(Rn),Ft));if(Hr&&typeof Hr.toJSON=="function"){let zr=Ft&&Ft.anchors&&Ft.anchors.get(Hr);zr&&(Ft.onCreate=Or=>{zr.res=Or,delete Ft.onCreate});let Rn=Hr.toJSON(Wr,Ft);return zr&&Ft.onCreate&&Ft.onCreate(Rn),Rn}return(!Ft||!Ft.keep)&&typeof Hr=="bigint"?Number(Hr):Hr}var l=class extends a{constructor(Hr){super(),this.value=Hr}toJSON(Hr,Wr){return Wr&&Wr.keep?this.value:o(this.value,Hr,Wr)}toString(){return String(this.value)}};function A(Hr,Wr,Ft){let zr=Ft;for(let Rn=Wr.length-1;Rn>=0;--Rn){let Or=Wr[Rn];if(Number.isInteger(Or)&&Or>=0){let Qi=[];Qi[Or]=zr,zr=Qi}else{let Qi={};Object.defineProperty(Qi,Or,{value:zr,writable:!0,enumerable:!0,configurable:!0}),zr=Qi}}return Hr.createNode(zr,!1)}var f=Hr=>Hr==null||typeof Hr=="object"&&Hr[Symbol.iterator]().next().done,I=class Ume extends a{constructor(Wr){super(),t._defineProperty(this,"items",[]),this.schema=Wr}addIn(Wr,Ft){if(f(Wr))this.add(Ft);else{let[zr,...Rn]=Wr,Or=this.get(zr,!0);if(Or instanceof Ume)Or.addIn(Rn,Ft);else if(Or===void 0&&this.schema)this.set(zr,A(this.schema,Rn,Ft));else throw new Error(`Expected YAML collection at ${zr}. Remaining path: ${Rn}`)}}deleteIn([Wr,...Ft]){if(Ft.length===0)return this.delete(Wr);let zr=this.get(Wr,!0);if(zr instanceof Ume)return zr.deleteIn(Ft);throw new Error(`Expected YAML collection at ${Wr}. Remaining path: ${Ft}`)}getIn([Wr,...Ft],zr){let Rn=this.get(Wr,!0);return Ft.length===0?!zr&&Rn instanceof l?Rn.value:Rn:Rn instanceof Ume?Rn.getIn(Ft,zr):void 0}hasAllNullValues(){return this.items.every(Wr=>{if(!Wr||Wr.type!=="PAIR")return!1;let Ft=Wr.value;return Ft==null||Ft instanceof l&&Ft.value==null&&!Ft.commentBefore&&!Ft.comment&&!Ft.tag})}hasIn([Wr,...Ft]){if(Ft.length===0)return this.has(Wr);let zr=this.get(Wr,!0);return zr instanceof Ume?zr.hasIn(Ft):!1}setIn([Wr,...Ft],zr){if(Ft.length===0)this.set(Wr,zr);else{let Rn=this.get(Wr,!0);if(Rn instanceof Ume)Rn.setIn(Ft,zr);else if(Rn===void 0&&this.schema)this.set(Wr,A(this.schema,Ft,zr));else throw new Error(`Expected YAML collection at ${Wr}. Remaining path: ${Ft}`)}}toJSON(){return null}toString(Wr,{blockItem:Ft,flowChars:zr,isMap:Rn,itemIndent:Or},Qi,ps){let{indent:yo,indentStep:bo,stringify:Qa}=Wr,gc=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Wr.inFlow;gc&&(Or+=bo);let Cg=Rn&&this.hasAllNullValues();Wr=Object.assign({},Wr,{allNullValues:Cg,indent:Or,inFlow:gc,type:null});let Nc=!1,iA=!1,ma=this.items.reduce((li,Ei,Ps)=>{let Xa;Ei&&(!Nc&&Ei.spaceBefore&&li.push({type:"comment",str:""}),Ei.commentBefore&&Ei.commentBefore.match(/^.*$/gm).forEach(Yl=>{li.push({type:"comment",str:`#${Yl}`})}),Ei.comment&&(Xa=Ei.comment),gc&&(!Nc&&Ei.spaceBefore||Ei.commentBefore||Ei.comment||Ei.key&&(Ei.key.commentBefore||Ei.key.comment)||Ei.value&&(Ei.value.commentBefore||Ei.value.comment))&&(iA=!0)),Nc=!1;let ac=Qa(Ei,Wr,()=>Xa=null,()=>Nc=!0);return gc&&!iA&&ac.includes(` +`)&&(iA=!0),gc&&PsXa.str);if(iA||Ps.reduce((Xa,ac)=>Xa+ac.length+2,2)>Ume.maxFlowStringSingleLineLength){vu=li;for(let Xa of Ps)vu+=Xa?` ${bo}${yo}${Xa}`:` `;vu+=` ${yo}${Ei}`}else vu=`${li} ${Ps.join(" ")} ${Ei}`}else{let li=ma.map(Ft);vu=li.shift();for(let Ei of li)vu+=Ei?` ${yo}${Ei}`:` `}return this.comment?(vu+=` -`+this.comment.replace(/^/gm,`${yo}#`),Qi&&Qi()):Nc&&ps&&ps(),vu}};t._defineProperty(I,"maxFlowStringSingleLineLength",60);function C(Hr){let Wr=Hr instanceof l?Hr.value:Hr;return Wr&&typeof Wr=="string"&&(Wr=Number(Wr)),Number.isInteger(Wr)&&Wr>=0?Wr:null}var b=class extends I{add(Hr){this.items.push(Hr)}delete(Hr){let Wr=C(Hr);return typeof Wr!="number"?!1:this.items.splice(Wr,1).length>0}get(Hr,Wr){let Ft=C(Hr);if(typeof Ft!="number")return;let zr=this.items[Ft];return!Wr&&zr instanceof l?zr.value:zr}has(Hr){let Wr=C(Hr);return typeof Wr=="number"&&Wrzr.type==="comment"?zr.str:`- ${zr.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(Hr.indent||"")+" "},Wr,Ft):JSON.stringify(this)}},E=(Hr,Wr,Ft)=>Wr===null?"":typeof Wr!="object"?String(Wr):Hr instanceof a&&Ft&&Ft.doc?Hr.toString({anchors:Object.create(null),doc:Ft.doc,indent:"",indentStep:Ft.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ft.stringify}):JSON.stringify(Wr),N=class cwi extends a{constructor(Wr,Ft=null){super(),this.key=Wr,this.value=Ft,this.type=cwi.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Wr){if(this.key==null&&(this.key=new l(null)),this.key instanceof a)this.key.commentBefore=Wr;else{let Ft="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ft)}}addToJSMap(Wr,Ft){let zr=o(this.key,"",Wr);if(Ft instanceof Map){let Rn=o(this.value,zr,Wr);Ft.set(zr,Rn)}else if(Ft instanceof Set)Ft.add(zr);else{let Rn=E(this.key,zr,Wr),Or=o(this.value,Rn,Wr);Rn in Ft?Object.defineProperty(Ft,Rn,{value:Or,writable:!0,enumerable:!0,configurable:!0}):Ft[Rn]=Or}return Ft}toJSON(Wr,Ft){let zr=Ft&&Ft.mapAsMap?new Map:{};return this.addToJSMap(Ft,zr)}toString(Wr,Ft,zr){if(!Wr||!Wr.doc)return JSON.stringify(this);let{indent:Rn,indentSeq:Or,simpleKeys:Qi}=Wr.doc.options,{key:ps,value:yo}=this,bo=ps instanceof a&&ps.comment;if(Qi){if(bo)throw new Error("With simple keys, key nodes cannot have comments");if(ps instanceof I){let ac="With simple keys, collection cannot be used as a key value";throw new Error(ac)}}let Qa=!Qi&&(!ps||bo||(ps instanceof a?ps instanceof I||ps.type===t.Type.BLOCK_FOLDED||ps.type===t.Type.BLOCK_LITERAL:typeof ps=="object")),{doc:gc,indent:Cg,indentStep:Nc,stringify:iA}=Wr;Wr=Object.assign({},Wr,{implicitKey:!Qa,indent:Cg+Nc});let ma=!1,vu=iA(ps,Wr,()=>bo=null,()=>ma=!0);if(vu=n(vu,Wr.indent,bo),!Qa&&vu.length>1024){if(Qi)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");Qa=!0}if(Wr.allNullValues&&!Qi)return this.comment?(vu=n(vu,Wr.indent,this.comment),Ft&&Ft()):ma&&!bo&&zr&&zr(),Wr.inFlow&&!Qa?vu:`? ${vu}`;vu=Qa?`? ${vu} +`+this.comment.replace(/^/gm,`${yo}#`),Qi&&Qi()):Nc&&ps&&ps(),vu}};t._defineProperty(I,"maxFlowStringSingleLineLength",60);function C(Hr){let Wr=Hr instanceof l?Hr.value:Hr;return Wr&&typeof Wr=="string"&&(Wr=Number(Wr)),Number.isInteger(Wr)&&Wr>=0?Wr:null}var b=class extends I{add(Hr){this.items.push(Hr)}delete(Hr){let Wr=C(Hr);return typeof Wr!="number"?!1:this.items.splice(Wr,1).length>0}get(Hr,Wr){let Ft=C(Hr);if(typeof Ft!="number")return;let zr=this.items[Ft];return!Wr&&zr instanceof l?zr.value:zr}has(Hr){let Wr=C(Hr);return typeof Wr=="number"&&Wrzr.type==="comment"?zr.str:`- ${zr.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(Hr.indent||"")+" "},Wr,Ft):JSON.stringify(this)}},E=(Hr,Wr,Ft)=>Wr===null?"":typeof Wr!="object"?String(Wr):Hr instanceof a&&Ft&&Ft.doc?Hr.toString({anchors:Object.create(null),doc:Ft.doc,indent:"",indentStep:Ft.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ft.stringify}):JSON.stringify(Wr),N=class Ewi extends a{constructor(Wr,Ft=null){super(),this.key=Wr,this.value=Ft,this.type=Ewi.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Wr){if(this.key==null&&(this.key=new l(null)),this.key instanceof a)this.key.commentBefore=Wr;else{let Ft="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ft)}}addToJSMap(Wr,Ft){let zr=o(this.key,"",Wr);if(Ft instanceof Map){let Rn=o(this.value,zr,Wr);Ft.set(zr,Rn)}else if(Ft instanceof Set)Ft.add(zr);else{let Rn=E(this.key,zr,Wr),Or=o(this.value,Rn,Wr);Rn in Ft?Object.defineProperty(Ft,Rn,{value:Or,writable:!0,enumerable:!0,configurable:!0}):Ft[Rn]=Or}return Ft}toJSON(Wr,Ft){let zr=Ft&&Ft.mapAsMap?new Map:{};return this.addToJSMap(Ft,zr)}toString(Wr,Ft,zr){if(!Wr||!Wr.doc)return JSON.stringify(this);let{indent:Rn,indentSeq:Or,simpleKeys:Qi}=Wr.doc.options,{key:ps,value:yo}=this,bo=ps instanceof a&&ps.comment;if(Qi){if(bo)throw new Error("With simple keys, key nodes cannot have comments");if(ps instanceof I){let ac="With simple keys, collection cannot be used as a key value";throw new Error(ac)}}let Qa=!Qi&&(!ps||bo||(ps instanceof a?ps instanceof I||ps.type===t.Type.BLOCK_FOLDED||ps.type===t.Type.BLOCK_LITERAL:typeof ps=="object")),{doc:gc,indent:Cg,indentStep:Nc,stringify:iA}=Wr;Wr=Object.assign({},Wr,{implicitKey:!Qa,indent:Cg+Nc});let ma=!1,vu=iA(ps,Wr,()=>bo=null,()=>ma=!0);if(vu=n(vu,Wr.indent,bo),!Qa&&vu.length>1024){if(Qi)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");Qa=!0}if(Wr.allNullValues&&!Qi)return this.comment?(vu=n(vu,Wr.indent,this.comment),Ft&&Ft()):ma&&!bo&&zr&&zr(),Wr.inFlow&&!Qa?vu:`? ${vu}`;vu=Qa?`? ${vu} ${Cg}:`:`${vu}:`,this.comment&&(vu=n(vu,Wr.indent,this.comment),Ft&&Ft());let li="",Ei=null;if(yo instanceof a){if(yo.spaceBefore&&(li=` `),yo.commentBefore){let ac=yo.commentBefore.replace(/^/gm,`${Wr.indent}#`);li+=` ${ac}`}Ei=yo.comment}else yo&&typeof yo=="object"&&(yo=gc.schema.createNode(yo,!0));Wr.implicitKey=!1,!Qa&&!this.comment&&yo instanceof l&&(Wr.indentAtStart=vu.length+1),ma=!1,!Or&&Rn>=2&&!Wr.inFlow&&!Qa&&yo instanceof b&&yo.type!==t.Type.FLOW_SEQ&&!yo.tag&&!gc.anchors.getName(yo)&&(Wr.indent=Wr.indent.substr(2));let Ps=iA(yo,Wr,()=>Ei=null,()=>ma=!0),Xa=" ";return li||this.comment?Xa=`${li} ${Wr.indent}`:!Qa&&yo instanceof I?(!(Ps[0]==="["||Ps[0]==="{")||Ps.includes(` `))&&(Xa=` ${Wr.indent}`):Ps[0]===` -`&&(Xa=""),ma&&!Ei&&zr&&zr(),n(vu+Xa+Ps,Wr.indent,Ei)}};t._defineProperty(N,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var B=(Hr,Wr)=>{if(Hr instanceof F){let Ft=Wr.get(Hr.source);return Ft.count*Ft.aliasCount}else if(Hr instanceof I){let Ft=0;for(let zr of Hr.items){let Rn=B(zr,Wr);Rn>Ft&&(Ft=Rn)}return Ft}else if(Hr instanceof N){let Ft=B(Hr.key,Wr),zr=B(Hr.value,Wr);return Math.max(Ft,zr)}return 1},F=class lwi extends a{static stringify({range:Wr,source:Ft},{anchors:zr,doc:Rn,implicitKey:Or,inStringifyKey:Qi}){let ps=Object.keys(zr).find(bo=>zr[bo]===Ft);if(!ps&&Qi&&(ps=Rn.anchors.getName(Ft)||Rn.anchors.newName()),ps)return`*${ps}${Or?" ":""}`;let yo=Rn.anchors.getName(Ft)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${yo} [${Wr}]`)}constructor(Wr){super(),this.source=Wr,this.type=t.Type.ALIAS}set tag(Wr){throw new Error("Alias nodes cannot have tags")}toJSON(Wr,Ft){if(!Ft)return o(this.source,Wr,Ft);let{anchors:zr,maxAliasCount:Rn}=Ft,Or=zr.get(this.source);if(!Or||Or.res===void 0){let Qi="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}if(Rn>=0&&(Or.count+=1,Or.aliasCount===0&&(Or.aliasCount=B(this.source,zr)),Or.count*Or.aliasCount>Rn)){let Qi="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}return Or.res}toString(Wr){return lwi.stringify(this,Wr)}};t._defineProperty(F,"default",!0);function Q(Hr,Wr){let Ft=Wr instanceof l?Wr.value:Wr;for(let zr of Hr)if(zr instanceof N&&(zr.key===Wr||zr.key===Ft||zr.key&&zr.key.value===Ft))return zr}var X=class extends I{add(Hr,Wr){Hr?Hr instanceof N||(Hr=new N(Hr.key||Hr,Hr.value)):Hr=new N(Hr);let Ft=Q(this.items,Hr.key),zr=this.schema&&this.schema.sortMapEntries;if(Ft)if(Wr)Ft.value=Hr.value;else throw new Error(`Key ${Hr.key} already set`);else if(zr){let Rn=this.items.findIndex(Or=>zr(Hr,Or)<0);Rn===-1?this.items.push(Hr):this.items.splice(Rn,0,Hr)}else this.items.push(Hr)}delete(Hr){let Wr=Q(this.items,Hr);return Wr?this.items.splice(this.items.indexOf(Wr),1).length>0:!1}get(Hr,Wr){let Ft=Q(this.items,Hr),zr=Ft&&Ft.value;return!Wr&&zr instanceof l?zr.value:zr}has(Hr){return!!Q(this.items,Hr)}set(Hr,Wr){this.add(new N(Hr,Wr),!0)}toJSON(Hr,Wr,Ft){let zr=Ft?new Ft:Wr&&Wr.mapAsMap?new Map:{};Wr&&Wr.onCreate&&Wr.onCreate(zr);for(let Rn of this.items)Rn.addToJSMap(Wr,zr);return zr}toString(Hr,Wr,Ft){if(!Hr)return JSON.stringify(this);for(let zr of this.items)if(!(zr instanceof N))throw new Error(`Map items must all be pairs; found ${JSON.stringify(zr)} instead`);return super.toString(Hr,{blockItem:zr=>zr.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:Hr.indent||""},Wr,Ft)}},ae="<<",ne=class extends N{constructor(Hr){if(Hr instanceof N){let Wr=Hr.value;Wr instanceof b||(Wr=new b,Wr.items.push(Hr.value),Wr.range=Hr.value.range),super(Hr.key,Wr),this.range=Hr.range}else super(new l(ae),new b);this.type=N.Type.MERGE_PAIR}addToJSMap(Hr,Wr){for(let{source:Ft}of this.value.items){if(!(Ft instanceof X))throw new Error("Merge sources must be maps");let zr=Ft.toJSON(null,Hr,Map);for(let[Rn,Or]of zr)Wr instanceof Map?Wr.has(Rn)||Wr.set(Rn,Or):Wr instanceof Set?Wr.add(Rn):Object.prototype.hasOwnProperty.call(Wr,Rn)||Object.defineProperty(Wr,Rn,{value:Or,writable:!0,enumerable:!0,configurable:!0})}return Wr}toString(Hr,Wr){let Ft=this.value;if(Ft.items.length>1)return super.toString(Hr,Wr);this.value=Ft.items[0];let zr=super.toString(Hr,Wr);return this.value=Ft,zr}},ce={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},ue={asBigInt:!1},de={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Se(Hr,Wr,Ft){for(let{format:zr,test:Rn,resolve:Or}of Wr)if(Rn){let Qi=Hr.match(Rn);if(Qi){let ps=Or.apply(null,Qi);return ps instanceof l||(ps=new l(ps)),zr&&(ps.format=zr),ps}}return Ft&&(Hr=Ft(Hr)),new l(Hr)}var De="flow",k="block",et="quoted",ct=(Hr,Wr)=>{let Ft=Hr[Wr+1];for(;Ft===" "||Ft===" ";){do Ft=Hr[Wr+=1];while(Ft&&Ft!==` +`&&(Xa=""),ma&&!Ei&&zr&&zr(),n(vu+Xa+Ps,Wr.indent,Ei)}};t._defineProperty(N,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var B=(Hr,Wr)=>{if(Hr instanceof F){let Ft=Wr.get(Hr.source);return Ft.count*Ft.aliasCount}else if(Hr instanceof I){let Ft=0;for(let zr of Hr.items){let Rn=B(zr,Wr);Rn>Ft&&(Ft=Rn)}return Ft}else if(Hr instanceof N){let Ft=B(Hr.key,Wr),zr=B(Hr.value,Wr);return Math.max(Ft,zr)}return 1},F=class Swi extends a{static stringify({range:Wr,source:Ft},{anchors:zr,doc:Rn,implicitKey:Or,inStringifyKey:Qi}){let ps=Object.keys(zr).find(bo=>zr[bo]===Ft);if(!ps&&Qi&&(ps=Rn.anchors.getName(Ft)||Rn.anchors.newName()),ps)return`*${ps}${Or?" ":""}`;let yo=Rn.anchors.getName(Ft)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${yo} [${Wr}]`)}constructor(Wr){super(),this.source=Wr,this.type=t.Type.ALIAS}set tag(Wr){throw new Error("Alias nodes cannot have tags")}toJSON(Wr,Ft){if(!Ft)return o(this.source,Wr,Ft);let{anchors:zr,maxAliasCount:Rn}=Ft,Or=zr.get(this.source);if(!Or||Or.res===void 0){let Qi="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}if(Rn>=0&&(Or.count+=1,Or.aliasCount===0&&(Or.aliasCount=B(this.source,zr)),Or.count*Or.aliasCount>Rn)){let Qi="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}return Or.res}toString(Wr){return Swi.stringify(this,Wr)}};t._defineProperty(F,"default",!0);function Q(Hr,Wr){let Ft=Wr instanceof l?Wr.value:Wr;for(let zr of Hr)if(zr instanceof N&&(zr.key===Wr||zr.key===Ft||zr.key&&zr.key.value===Ft))return zr}var X=class extends I{add(Hr,Wr){Hr?Hr instanceof N||(Hr=new N(Hr.key||Hr,Hr.value)):Hr=new N(Hr);let Ft=Q(this.items,Hr.key),zr=this.schema&&this.schema.sortMapEntries;if(Ft)if(Wr)Ft.value=Hr.value;else throw new Error(`Key ${Hr.key} already set`);else if(zr){let Rn=this.items.findIndex(Or=>zr(Hr,Or)<0);Rn===-1?this.items.push(Hr):this.items.splice(Rn,0,Hr)}else this.items.push(Hr)}delete(Hr){let Wr=Q(this.items,Hr);return Wr?this.items.splice(this.items.indexOf(Wr),1).length>0:!1}get(Hr,Wr){let Ft=Q(this.items,Hr),zr=Ft&&Ft.value;return!Wr&&zr instanceof l?zr.value:zr}has(Hr){return!!Q(this.items,Hr)}set(Hr,Wr){this.add(new N(Hr,Wr),!0)}toJSON(Hr,Wr,Ft){let zr=Ft?new Ft:Wr&&Wr.mapAsMap?new Map:{};Wr&&Wr.onCreate&&Wr.onCreate(zr);for(let Rn of this.items)Rn.addToJSMap(Wr,zr);return zr}toString(Hr,Wr,Ft){if(!Hr)return JSON.stringify(this);for(let zr of this.items)if(!(zr instanceof N))throw new Error(`Map items must all be pairs; found ${JSON.stringify(zr)} instead`);return super.toString(Hr,{blockItem:zr=>zr.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:Hr.indent||""},Wr,Ft)}},ae="<<",ne=class extends N{constructor(Hr){if(Hr instanceof N){let Wr=Hr.value;Wr instanceof b||(Wr=new b,Wr.items.push(Hr.value),Wr.range=Hr.value.range),super(Hr.key,Wr),this.range=Hr.range}else super(new l(ae),new b);this.type=N.Type.MERGE_PAIR}addToJSMap(Hr,Wr){for(let{source:Ft}of this.value.items){if(!(Ft instanceof X))throw new Error("Merge sources must be maps");let zr=Ft.toJSON(null,Hr,Map);for(let[Rn,Or]of zr)Wr instanceof Map?Wr.has(Rn)||Wr.set(Rn,Or):Wr instanceof Set?Wr.add(Rn):Object.prototype.hasOwnProperty.call(Wr,Rn)||Object.defineProperty(Wr,Rn,{value:Or,writable:!0,enumerable:!0,configurable:!0})}return Wr}toString(Hr,Wr){let Ft=this.value;if(Ft.items.length>1)return super.toString(Hr,Wr);this.value=Ft.items[0];let zr=super.toString(Hr,Wr);return this.value=Ft,zr}},ce={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},ue={asBigInt:!1},de={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Se(Hr,Wr,Ft){for(let{format:zr,test:Rn,resolve:Or}of Wr)if(Rn){let Qi=Hr.match(Rn);if(Qi){let ps=Or.apply(null,Qi);return ps instanceof l||(ps=new l(ps)),zr&&(ps.format=zr),ps}}return Ft&&(Hr=Ft(Hr)),new l(Hr)}var De="flow",k="block",et="quoted",ct=(Hr,Wr)=>{let Ft=Hr[Wr+1];for(;Ft===" "||Ft===" ";){do Ft=Hr[Wr+=1];while(Ft&&Ft!==` `);Ft=Hr[Wr+1]}return Wr};function Me(Hr,Wr,Ft,{indentAtStart:zr,lineWidth:Rn=80,minContentWidth:Or=20,onFold:Qi,onOverflow:ps}){if(!Rn||Rn<0)return Hr;let yo=Math.max(1+Or,1+Rn-Wr.length);if(Hr.length<=yo)return Hr;let bo=[],Qa={},gc=Rn-Wr.length;typeof zr=="number"&&(zr>Rn-Math.max(2,Or)?bo.push(0):gc=Rn-zr);let Cg,Nc,iA=!1,ma=-1,vu=-1,li=-1;Ft===k&&(ma=ct(Hr,ma),ma!==-1&&(gc=ma+yo));for(let Ps;Ps=Hr[ma+=1];){if(Ft===et&&Ps==="\\"){switch(vu=ma,Hr[ma+1]){case"x":ma+=3;break;case"u":ma+=5;break;case"U":ma+=9;break;default:ma+=1}li=ma}if(Ps===` `)Ft===k&&(ma=ct(Hr,ma)),gc=ma+yo,Cg=void 0;else{if(Ps===" "&&Nc&&Nc!==" "&&Nc!==` `&&Nc!==" "){let Xa=Hr[ma+1];Xa&&Xa!==" "&&Xa!==` @@ -2368,110 +2368,111 @@ ${Qi}`:Qi);let ps=Ft.after.join(` `);ps&&(Or.comment=Or.comment?`${Or.comment} ${ps}`:ps)}return Wr.resolved=Or}function Vr(Hr,Wr){if(Wr.type!==t.Type.MAP&&Wr.type!==t.Type.FLOW_MAP){let Qi=`A ${Wr.type} node cannot be resolved as a mapping`;return Hr.errors.push(new t.YAMLSyntaxError(Wr,Qi)),null}let{comments:Ft,items:zr}=Wr.type===t.Type.FLOW_MAP?Ya(Hr,Wr):ga(Hr,Wr),Rn=new X;Rn.items=zr,lr(Rn,Ft);let Or=!1;for(let Qi=0;Qi{if(Qa instanceof F){let{type:gc}=Qa.source;return gc===t.Type.MAP||gc===t.Type.FLOW_MAP?!1:bo="Merge nodes aliases can only point to maps"}return bo="Merge nodes can only have Alias nodes as values"}),bo&&Hr.errors.push(new t.YAMLSemanticError(Wr,bo))}else for(let yo=Qi+1;yo{if(zr.length===0)return!1;let{start:Rn}=zr[0];if(Wr&&Rn>Wr.valueRange.start||Ft[Rn]!==t.Char.COMMENT)return!1;for(let Or=Hr;Or0){yo=new t.PlainValue(t.Type.PLAIN,[]),yo.context={parent:ps,src:ps.context.src};let Qa=ps.range.start+1;if(yo.range={start:Qa,end:Qa},yo.valueRange={start:Qa,end:Qa},typeof ps.range.origStart=="number"){let gc=ps.range.origStart+1;yo.range.origStart=yo.range.origEnd=gc,yo.valueRange.origStart=yo.valueRange.origEnd=gc}}let bo=new N(Rn,po(Hr,yo));io(ps,bo),zr.push(bo),Rn&&typeof Or=="number"&&ps.range.start>Or+1024&&Hr.errors.push(Xt(Wr,Rn)),Rn=void 0,Or=null}break;default:Rn!==void 0&&zr.push(new N(Rn)),Rn=po(Hr,ps),Or=ps.range.start,ps.error&&Hr.errors.push(ps.error);e:for(let yo=Qi+1;;++yo){let bo=Wr.items[yo];switch(bo&&bo.type){case t.Type.BLANK_LINE:case t.Type.COMMENT:continue e;case t.Type.MAP_VALUE:break e;default:{let Qa="Implicit map keys need to be followed by map values";Hr.errors.push(new t.YAMLSemanticError(ps,Qa));break e}}}if(ps.valueRangeContainsNewline){let yo="Implicit map keys need to be on a single line";Hr.errors.push(new t.YAMLSemanticError(ps,yo))}}}return Rn!==void 0&&zr.push(new N(Rn)),{comments:Ft,items:zr}}function Ya(Hr,Wr){let Ft=[],zr=[],Rn,Or=!1,Qi="{";for(let ps=0;psOr instanceof N&&Or.key instanceof I)){let Or="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";Hr.warnings.push(new t.YAMLWarning(Wr,Or))}return Wr.resolved=Rn,Rn}function cl(Hr,Wr){let Ft=[],zr=[];for(let Rn=0;RnQi+1024&&Hr.errors.push(Xt(Wr,Or));let{src:iA}=yo.context;for(let ma=Qi;ma{"use strict";var t=Kme(),r=NJe(),n={identify:Se=>Se instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Se,De)=>{let k=r.resolveString(Se,De);if(typeof Buffer=="function")return Buffer.from(k,"base64");if(typeof atob=="function"){let et=atob(k.replace(/[\n\r]/g,"")),ct=new Uint8Array(et.length);for(let Me=0;Me{let je;if(typeof Buffer=="function")je=k instanceof Buffer?k.toString("base64"):Buffer.from(k.buffer).toString("base64");else if(typeof btoa=="function"){let St="";for(let At=0;At{"use strict";var t=jme(),r=kJe(),n={identify:Se=>Se instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Se,De)=>{let k=r.resolveString(Se,De);if(typeof Buffer=="function")return Buffer.from(k,"base64");if(typeof atob=="function"){let et=atob(k.replace(/[\n\r]/g,"")),ct=new Uint8Array(et.length);for(let Me=0;Me{let je;if(typeof Buffer=="function")je=k instanceof Buffer?k.toString("base64"):Buffer.from(k.buffer).toString("base64");else if(typeof btoa=="function"){let St="";for(let At=0;At1){let je="Each pair must have its own sequence indicator";throw new t.YAMLSemanticError(De,je)}let Me=ct.items[0]||new r.Pair;ct.commentBefore&&(Me.commentBefore=Me.commentBefore?`${ct.commentBefore} ${Me.commentBefore}`:ct.commentBefore),ct.comment&&(Me.comment=Me.comment?`${ct.comment} -${Me.comment}`:ct.comment),ct=Me}k.items[et]=ct instanceof r.Pair?ct:new r.Pair(ct)}}return k}function o(Se,De,k){let et=new r.YAMLSeq(Se);et.tag="tag:yaml.org,2002:pairs";for(let ct of De){let Me,je;if(Array.isArray(ct))if(ct.length===2)Me=ct[0],je=ct[1];else throw new TypeError(`Expected [key, value] tuple: ${ct}`);else if(ct&&ct instanceof Object){let At=Object.keys(ct);if(At.length===1)Me=At[0],je=ct[Me];else throw new TypeError(`Expected { key: value } tuple: ${ct}`)}else Me=ct;let St=Se.createPair(Me,je,k);et.items.push(St)}return et}var l={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},A=class gwi extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=gwi.tag}toJSON(De,k){let et=new Map;k&&k.onCreate&&k.onCreate(et);for(let ct of this.items){let Me,je;if(ct instanceof r.Pair?(Me=r.toJSON(ct.key,"",k),je=r.toJSON(ct.value,Me,k)):Me=r.toJSON(ct,"",k),et.has(Me))throw new Error("Ordered maps must not include duplicate keys");et.set(Me,je)}return et}};t._defineProperty(A,"tag","tag:yaml.org,2002:omap");function f(Se,De){let k=a(Se,De),et=[];for(let{key:ct}of k.items)if(ct instanceof r.Scalar)if(et.includes(ct.value)){let Me="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(De,Me)}else et.push(ct.value);return Object.assign(new A,k)}function I(Se,De,k){let et=o(Se,De,k),ct=new A;return ct.items=et.items,ct}var C={identify:Se=>Se instanceof Map,nodeClass:A,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:I},b=class Awi extends r.YAMLMap{constructor(){super(),this.tag=Awi.tag}add(De){let k=De instanceof r.Pair?De:new r.Pair(De);r.findPair(this.items,k.key)||this.items.push(k)}get(De,k){let et=r.findPair(this.items,De);return!k&&et instanceof r.Pair?et.key instanceof r.Scalar?et.key.value:et.key:et}set(De,k){if(typeof k!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof k}`);let et=r.findPair(this.items,De);et&&!k?this.items.splice(this.items.indexOf(et),1):!et&&k&&this.items.push(new r.Pair(De))}toJSON(De,k){return super.toJSON(De,k,Set)}toString(De,k,et){if(!De)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(De,k,et);throw new Error("Set items must all have null values")}};t._defineProperty(b,"tag","tag:yaml.org,2002:set");function E(Se,De){let k=r.resolveMap(Se,De);if(!k.hasAllNullValues())throw new t.YAMLSemanticError(De,"Set items must all have null values");return Object.assign(new b,k)}function N(Se,De,k){let et=new b;for(let ct of De)et.items.push(Se.createPair(ct,null,k));return et}var B={identify:Se=>Se instanceof Set,nodeClass:b,default:!1,tag:"tag:yaml.org,2002:set",resolve:E,createNode:N},F=(Se,De)=>{let k=De.split(":").reduce((et,ct)=>et*60+Number(ct),0);return Se==="-"?-k:k},Q=({value:Se})=>{if(isNaN(Se)||!isFinite(Se))return r.stringifyNumber(Se);let De="";Se<0&&(De="-",Se=Math.abs(Se));let k=[Se%60];return Se<60?k.unshift(0):(Se=Math.round((Se-k[0])/60),k.unshift(Se%60),Se>=60&&(Se=Math.round((Se-k[0])/60),k.unshift(Se))),De+k.map(et=>et<10?"0"+String(et):String(et)).join(":").replace(/000000\d*$/,"")},X={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ae={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ne={identify:Se=>Se instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(Se,De,k,et,ct,Me,je,St,At)=>{St&&(St=(St+"00").substr(1,3));let Yt=Date.UTC(De,k-1,et,ct||0,Me||0,je||0,St||0);if(At&&At!=="Z"){let Tr=F(At[0],At.slice(1));Math.abs(Tr)<30&&(Tr*=60),Yt-=6e4*Tr}return new Date(Yt)},stringify:({value:Se})=>Se.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ce(Se){let De={};return Se?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!De.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!De.YAML_SILENCE_WARNINGS}function fe(Se,De){ce(!1)&&console.warn(De?`${De}: ${Se}`:Se)}function ue(Se){if(ce(!0)){let De=Se.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${De}' will be removed in a future release.`,"DeprecationWarning")}}var de={};function be(Se,De){if(!de[Se]&&ce(!0)){de[Se]=!0;let k=`The option '${Se}' will be removed in a future release`;k+=De?`, use '${De}' instead.`:".",fe(k,"DeprecationWarning")}}e.binary=n,e.floatTime=ae,e.intTime=X,e.omap=C,e.pairs=l,e.set=B,e.timestamp=ne,e.warn=fe,e.warnFileDeprecation=ue,e.warnOptionDeprecation=be}),dwi=Dee(e=>{"use strict";var t=Kme(),r=NJe(),n=uwi();function a(er,vt,xt){let Zr=new r.YAMLMap(er);if(vt instanceof Map)for(let[qt,Xt]of vt)Zr.items.push(er.createPair(qt,Xt,xt));else if(vt&&typeof vt=="object")for(let qt of Object.keys(vt))Zr.items.push(er.createPair(qt,vt[qt],xt));return typeof er.sortMapEntries=="function"&&Zr.items.sort(er.sortMapEntries),Zr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function l(er,vt,xt){let Zr=new r.YAMLSeq(er);if(vt&&vt[Symbol.iterator])for(let qt of vt){let Xt=er.createNode(qt,xt.wrapScalars,null,xt);Zr.items.push(Xt)}return Zr}var A={createNode:l,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:er=>typeof er=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(er,vt,xt,Zr){return vt=Object.assign({actualString:!0},vt),r.stringifyString(er,vt,xt,Zr)},options:r.strOptions},I=[o,A,f],C=er=>typeof er=="bigint"||Number.isInteger(er),b=(er,vt,xt)=>r.intOptions.asBigInt?BigInt(er):parseInt(vt,xt);function E(er,vt,xt){let{value:Zr}=er;return C(Zr)&&Zr>=0?xt+Zr.toString(vt):r.stringifyNumber(er)}var N={identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},B={identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:er=>er[0]==="t"||er[0]==="T",options:r.boolOptions,stringify:({value:er})=>er?r.boolOptions.trueStr:r.boolOptions.falseStr},F={identify:er=>C(er)&&er>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(er,vt)=>b(er,vt,8),options:r.intOptions,stringify:er=>E(er,8,"0o")},Q={identify:C,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:er=>b(er,er,10),options:r.intOptions,stringify:r.stringifyNumber},X={identify:er=>C(er)&&er>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(er,vt)=>b(er,vt,16),options:r.intOptions,stringify:er=>E(er,16,"0x")},ae={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(er,vt)=>vt?NaN:er[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ne={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:er=>parseFloat(er),stringify:({value:er})=>Number(er).toExponential()},ce={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(er,vt,xt){let Zr=vt||xt,qt=new r.Scalar(parseFloat(er));return Zr&&Zr[Zr.length-1]==="0"&&(qt.minFractionDigits=Zr.length),qt},stringify:r.stringifyNumber},fe=I.concat([N,B,F,Q,X,ae,ne,ce]),ue=er=>typeof er=="bigint"||Number.isInteger(er),de=({value:er})=>JSON.stringify(er),be=[o,A,{identify:er=>typeof er=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:de},{identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:de},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:er=>er==="true",stringify:de},{identify:ue,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:er=>r.intOptions.asBigInt?BigInt(er):parseInt(er,10),stringify:({value:er})=>ue(er)?er.toString():JSON.stringify(er)},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:er=>parseFloat(er),stringify:de}];be.scalarFallback=er=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(er)}`)};var Se=({value:er})=>er?r.boolOptions.trueStr:r.boolOptions.falseStr,De=er=>typeof er=="bigint"||Number.isInteger(er);function k(er,vt,xt){let Zr=vt.replace(/_/g,"");if(r.intOptions.asBigInt){switch(xt){case 2:Zr=`0b${Zr}`;break;case 8:Zr=`0o${Zr}`;break;case 16:Zr=`0x${Zr}`;break}let Xt=BigInt(Zr);return er==="-"?BigInt(-1)*Xt:Xt}let qt=parseInt(Zr,xt);return er==="-"?-1*qt:qt}function et(er,vt,xt){let{value:Zr}=er;if(De(Zr)){let qt=Zr.toString(vt);return Zr<0?"-"+xt+qt.substr(1):xt+qt}return r.stringifyNumber(er)}var ct=I.concat([{identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:Se},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:Se},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,2),stringify:er=>et(er,2,"0b")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,8),stringify:er=>et(er,8,"0")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(er,vt,xt)=>k(vt,xt,10),stringify:r.stringifyNumber},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,16),stringify:er=>et(er,16,"0x")},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(er,vt)=>vt?NaN:er[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:er=>parseFloat(er.replace(/_/g,"")),stringify:({value:er})=>Number(er).toExponential()},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(er,vt){let xt=new r.Scalar(parseFloat(er.replace(/_/g,"")));if(vt){let Zr=vt.replace(/_/g,"");Zr[Zr.length-1]==="0"&&(xt.minFractionDigits=Zr.length)}return xt},stringify:r.stringifyNumber}],n.binary,n.omap,n.pairs,n.set,n.intTime,n.floatTime,n.timestamp),Me={core:fe,failsafe:I,json:be,yaml11:ct},je={binary:n.binary,bool:B,float:ce,floatExp:ne,floatNaN:ae,floatTime:n.floatTime,int:Q,intHex:X,intOct:F,intTime:n.intTime,map:o,null:N,omap:n.omap,pairs:n.pairs,seq:A,set:n.set,timestamp:n.timestamp};function St(er,vt,xt){if(vt){let Zr=xt.filter(Xt=>Xt.tag===vt),qt=Zr.find(Xt=>!Xt.format)||Zr[0];if(!qt)throw new Error(`Tag ${vt} not found`);return qt}return xt.find(Zr=>(Zr.identify&&Zr.identify(er)||Zr.class&&er instanceof Zr.class)&&!Zr.format)}function At(er,vt,xt){if(er instanceof r.Node)return er;let{defaultPrefix:Zr,onTagObj:qt,prevObjects:Xt,schema:lr,wrapScalars:cr}=xt;vt&&vt.startsWith("!!")&&(vt=Zr+vt.slice(2));let Ar=St(er,vt,lr.tags);if(!Ar){if(typeof er.toJSON=="function"&&(er=er.toJSON()),!er||typeof er!="object")return cr?new r.Scalar(er):er;Ar=er instanceof Map?o:er[Symbol.iterator]?A:o}qt&&(qt(Ar),delete xt.onTagObj);let qr={value:void 0,node:void 0};if(er&&typeof er=="object"&&Xt){let _n=Xt.get(er);if(_n){let ke=new r.Alias(_n);return xt.aliasNodes.push(ke),ke}qr.value=er,Xt.set(er,qr)}return qr.node=Ar.createNode?Ar.createNode(xt.schema,er,xt):cr?new r.Scalar(er):er,vt&&qr.node instanceof r.Node&&(qr.node.tag=vt),qr.node}function Yt(er,vt,xt,Zr){let qt=er[Zr.replace(/\W/g,"")];if(!qt){let Xt=Object.keys(er).map(lr=>JSON.stringify(lr)).join(", ");throw new Error(`Unknown schema "${Zr}"; use one of ${Xt}`)}if(Array.isArray(xt))for(let Xt of xt)qt=qt.concat(Xt);else typeof xt=="function"&&(qt=xt(qt.slice()));for(let Xt=0;XtJSON.stringify(qr)).join(", ");throw new Error(`Unknown custom tag "${lr}"; use one of ${Ar}`)}qt[Xt]=cr}}return qt}var Tr=(er,vt)=>er.keyvt.key?1:0,Nr=class pwi{constructor({customTags:vt,merge:xt,schema:Zr,sortMapEntries:qt,tags:Xt}){this.merge=!!xt,this.name=Zr,this.sortMapEntries=qt===!0?Tr:qt||null,!vt&&Xt&&n.warnOptionDeprecation("tags","customTags"),this.tags=Yt(Me,je,vt||Xt,Zr)}createNode(vt,xt,Zr,qt){let Xt={defaultPrefix:pwi.defaultPrefix,schema:this,wrapScalars:xt},lr=qt?Object.assign(qt,Xt):Xt;return At(vt,Zr,lr)}createPair(vt,xt,Zr){Zr||(Zr={wrapScalars:!0});let qt=this.createNode(vt,Zr.wrapScalars,null,Zr),Xt=this.createNode(xt,Zr.wrapScalars,null,Zr);return new r.Pair(qt,Xt)}};t._defineProperty(Nr,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Nr,"defaultTags",t.defaultTags),e.Schema=Nr}),Hnc=Dee(e=>{"use strict";var t=Kme(),r=NJe(),n=dwi(),a={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},o={get binary(){return r.binaryOptions},set binary(ce){Object.assign(r.binaryOptions,ce)},get bool(){return r.boolOptions},set bool(ce){Object.assign(r.boolOptions,ce)},get int(){return r.intOptions},set int(ce){Object.assign(r.intOptions,ce)},get null(){return r.nullOptions},set null(ce){Object.assign(r.nullOptions,ce)},get str(){return r.strOptions},set str(ce){Object.assign(r.strOptions,ce)}},l={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function A(ce,fe){if((ce.version||ce.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Se=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Se?`!${Se[1]}/${Se[2]}`:`!${fe.replace(/^tag:/,"")}`}let ue=ce.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!ue){let be=ce.getDefaults().tagPrefixes;ue=be&&be.find(Se=>fe.indexOf(Se.prefix)===0)}if(!ue)return fe[0]==="!"?fe:`!<${fe}>`;let de=fe.substr(ue.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return ue.handle+de}function f(ce,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ce.filter(Se=>Se.tag===fe.tag);if(be.length>0)return be.find(Se=>Se.format===fe.format)||be[0]}let ue,de;if(fe instanceof r.Scalar){de=fe.value;let be=ce.filter(Se=>Se.identify&&Se.identify(de)||Se.class&&de instanceof Se.class);ue=be.find(Se=>Se.format===fe.format)||be.find(Se=>!Se.format)}else de=fe,ue=ce.find(be=>be.nodeClass&&de instanceof be.nodeClass);if(!ue){let be=de&&de.constructor?de.constructor.name:typeof de;throw new Error(`Tag not resolved for ${be} value`)}return ue}function I(ce,fe,{anchors:ue,doc:de}){let be=[],Se=de.anchors.getName(ce);return Se&&(ue[Se]=ce,be.push(`&${Se}`)),ce.tag?be.push(A(de,ce.tag)):fe.default||be.push(A(de,fe.tag)),be.join(" ")}function C(ce,fe,ue,de){let{anchors:be,schema:Se}=fe.doc,De;if(!(ce instanceof r.Node)){let ct={aliasNodes:[],onTagObj:Me=>De=Me,prevObjects:new Map};ce=Se.createNode(ce,!0,null,ct);for(let Me of ct.aliasNodes){Me.source=Me.source.node;let je=be.getName(Me.source);je||(je=be.newName(),be.map[je]=Me.source)}}if(ce instanceof r.Pair)return ce.toString(fe,ue,de);De||(De=f(Se.tags,ce));let k=I(ce,De,fe);k.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+k.length+1);let et=typeof De.stringify=="function"?De.stringify(ce,fe,ue,de):ce instanceof r.Scalar?r.stringifyString(ce,fe,ue,de):ce.toString(fe,ue,de);return k?ce instanceof r.Scalar||et[0]==="{"||et[0]==="["?`${k} ${et}`:`${k} -${fe.indent}${et}`:et}var b=class fwi{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,ue){return this.setAnchor(fe,ue),new r.Alias(fe)}createMergePair(...fe){let ue=new r.Merge;return ue.value.items=fe.map(de=>{if(de instanceof r.Alias){if(de.source instanceof r.YAMLMap)return de}else if(de instanceof r.YAMLMap)return this.createAlias(de);throw new Error("Merge sources must be Map nodes or their Aliases")}),ue}getName(fe){let{map:ue}=this;return Object.keys(ue).find(de=>ue[de]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let ue=Object.keys(this.map);for(let de=1;;++de){let be=`${fe}${de}`;if(!ue.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:ue}=this;Object.keys(fe).forEach(de=>{fe[de]=fe[de].resolved}),ue.forEach(de=>{de.source=de.source.resolved}),delete this._cstAliases}setAnchor(fe,ue){if(fe!=null&&!fwi.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(ue&&/[\x00-\x19\s,[\]{}]/.test(ue))throw new Error("Anchor names must not contain whitespace or control characters");let{map:de}=this,be=fe&&Object.keys(de).find(Se=>de[Se]===fe);if(be)if(ue)be!==ue&&(delete de[be],de[ue]=fe);else return be;else{if(!ue){if(!fe)return null;ue=this.newName()}de[ue]=fe}return ue}},E=(ce,fe)=>{if(ce&&typeof ce=="object"){let{tag:ue}=ce;ce instanceof r.Collection?(ue&&(fe[ue]=!0),ce.items.forEach(de=>E(de,fe))):ce instanceof r.Pair?(E(ce.key,fe),E(ce.value,fe)):ce instanceof r.Scalar&&ue&&(fe[ue]=!0)}return fe},N=ce=>Object.keys(E(ce,{}));function B(ce,fe){let ue={before:[],after:[]},de,be=!1;for(let Se of fe)if(Se.valueRange){if(de!==void 0){let k="Document contains trailing content not separated by a ... or --- line";ce.errors.push(new t.YAMLSyntaxError(Se,k));break}let De=r.resolveNode(ce,Se);be&&(De.spaceBefore=!0,be=!1),de=De}else Se.comment!==null?(de===void 0?ue.before:ue.after).push(Se.comment):Se.type===t.Type.BLANK_LINE&&(be=!0,de===void 0&&ue.before.length>0&&!ce.commentBefore&&(ce.commentBefore=ue.before.join(` +${Me.comment}`:ct.comment),ct=Me}k.items[et]=ct instanceof r.Pair?ct:new r.Pair(ct)}}return k}function o(Se,De,k){let et=new r.YAMLSeq(Se);et.tag="tag:yaml.org,2002:pairs";for(let ct of De){let Me,je;if(Array.isArray(ct))if(ct.length===2)Me=ct[0],je=ct[1];else throw new TypeError(`Expected [key, value] tuple: ${ct}`);else if(ct&&ct instanceof Object){let At=Object.keys(ct);if(At.length===1)Me=At[0],je=ct[Me];else throw new TypeError(`Expected { key: value } tuple: ${ct}`)}else Me=ct;let St=Se.createPair(Me,je,k);et.items.push(St)}return et}var l={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},A=class Bwi extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=Bwi.tag}toJSON(De,k){let et=new Map;k&&k.onCreate&&k.onCreate(et);for(let ct of this.items){let Me,je;if(ct instanceof r.Pair?(Me=r.toJSON(ct.key,"",k),je=r.toJSON(ct.value,Me,k)):Me=r.toJSON(ct,"",k),et.has(Me))throw new Error("Ordered maps must not include duplicate keys");et.set(Me,je)}return et}};t._defineProperty(A,"tag","tag:yaml.org,2002:omap");function f(Se,De){let k=a(Se,De),et=[];for(let{key:ct}of k.items)if(ct instanceof r.Scalar)if(et.includes(ct.value)){let Me="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(De,Me)}else et.push(ct.value);return Object.assign(new A,k)}function I(Se,De,k){let et=o(Se,De,k),ct=new A;return ct.items=et.items,ct}var C={identify:Se=>Se instanceof Map,nodeClass:A,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:I},b=class wwi extends r.YAMLMap{constructor(){super(),this.tag=wwi.tag}add(De){let k=De instanceof r.Pair?De:new r.Pair(De);r.findPair(this.items,k.key)||this.items.push(k)}get(De,k){let et=r.findPair(this.items,De);return!k&&et instanceof r.Pair?et.key instanceof r.Scalar?et.key.value:et.key:et}set(De,k){if(typeof k!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof k}`);let et=r.findPair(this.items,De);et&&!k?this.items.splice(this.items.indexOf(et),1):!et&&k&&this.items.push(new r.Pair(De))}toJSON(De,k){return super.toJSON(De,k,Set)}toString(De,k,et){if(!De)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(De,k,et);throw new Error("Set items must all have null values")}};t._defineProperty(b,"tag","tag:yaml.org,2002:set");function E(Se,De){let k=r.resolveMap(Se,De);if(!k.hasAllNullValues())throw new t.YAMLSemanticError(De,"Set items must all have null values");return Object.assign(new b,k)}function N(Se,De,k){let et=new b;for(let ct of De)et.items.push(Se.createPair(ct,null,k));return et}var B={identify:Se=>Se instanceof Set,nodeClass:b,default:!1,tag:"tag:yaml.org,2002:set",resolve:E,createNode:N},F=(Se,De)=>{let k=De.split(":").reduce((et,ct)=>et*60+Number(ct),0);return Se==="-"?-k:k},Q=({value:Se})=>{if(isNaN(Se)||!isFinite(Se))return r.stringifyNumber(Se);let De="";Se<0&&(De="-",Se=Math.abs(Se));let k=[Se%60];return Se<60?k.unshift(0):(Se=Math.round((Se-k[0])/60),k.unshift(Se%60),Se>=60&&(Se=Math.round((Se-k[0])/60),k.unshift(Se))),De+k.map(et=>et<10?"0"+String(et):String(et)).join(":").replace(/000000\d*$/,"")},X={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ae={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ne={identify:Se=>Se instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(Se,De,k,et,ct,Me,je,St,At)=>{St&&(St=(St+"00").substr(1,3));let Yt=Date.UTC(De,k-1,et,ct||0,Me||0,je||0,St||0);if(At&&At!=="Z"){let Tr=F(At[0],At.slice(1));Math.abs(Tr)<30&&(Tr*=60),Yt-=6e4*Tr}return new Date(Yt)},stringify:({value:Se})=>Se.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ce(Se){let De={};return Se?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!De.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!De.YAML_SILENCE_WARNINGS}function fe(Se,De){ce(!1)&&console.warn(De?`${De}: ${Se}`:Se)}function ue(Se){if(ce(!0)){let De=Se.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${De}' will be removed in a future release.`,"DeprecationWarning")}}var de={};function be(Se,De){if(!de[Se]&&ce(!0)){de[Se]=!0;let k=`The option '${Se}' will be removed in a future release`;k+=De?`, use '${De}' instead.`:".",fe(k,"DeprecationWarning")}}e.binary=n,e.floatTime=ae,e.intTime=X,e.omap=C,e.pairs=l,e.set=B,e.timestamp=ne,e.warn=fe,e.warnFileDeprecation=ue,e.warnOptionDeprecation=be}),Twi=kee(e=>{"use strict";var t=jme(),r=kJe(),n=vwi();function a(er,vt,xt){let Zr=new r.YAMLMap(er);if(vt instanceof Map)for(let[qt,Xt]of vt)Zr.items.push(er.createPair(qt,Xt,xt));else if(vt&&typeof vt=="object")for(let qt of Object.keys(vt))Zr.items.push(er.createPair(qt,vt[qt],xt));return typeof er.sortMapEntries=="function"&&Zr.items.sort(er.sortMapEntries),Zr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function l(er,vt,xt){let Zr=new r.YAMLSeq(er);if(vt&&vt[Symbol.iterator])for(let qt of vt){let Xt=er.createNode(qt,xt.wrapScalars,null,xt);Zr.items.push(Xt)}return Zr}var A={createNode:l,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:er=>typeof er=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(er,vt,xt,Zr){return vt=Object.assign({actualString:!0},vt),r.stringifyString(er,vt,xt,Zr)},options:r.strOptions},I=[o,A,f],C=er=>typeof er=="bigint"||Number.isInteger(er),b=(er,vt,xt)=>r.intOptions.asBigInt?BigInt(er):parseInt(vt,xt);function E(er,vt,xt){let{value:Zr}=er;return C(Zr)&&Zr>=0?xt+Zr.toString(vt):r.stringifyNumber(er)}var N={identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},B={identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:er=>er[0]==="t"||er[0]==="T",options:r.boolOptions,stringify:({value:er})=>er?r.boolOptions.trueStr:r.boolOptions.falseStr},F={identify:er=>C(er)&&er>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(er,vt)=>b(er,vt,8),options:r.intOptions,stringify:er=>E(er,8,"0o")},Q={identify:C,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:er=>b(er,er,10),options:r.intOptions,stringify:r.stringifyNumber},X={identify:er=>C(er)&&er>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(er,vt)=>b(er,vt,16),options:r.intOptions,stringify:er=>E(er,16,"0x")},ae={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(er,vt)=>vt?NaN:er[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ne={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:er=>parseFloat(er),stringify:({value:er})=>Number(er).toExponential()},ce={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(er,vt,xt){let Zr=vt||xt,qt=new r.Scalar(parseFloat(er));return Zr&&Zr[Zr.length-1]==="0"&&(qt.minFractionDigits=Zr.length),qt},stringify:r.stringifyNumber},fe=I.concat([N,B,F,Q,X,ae,ne,ce]),ue=er=>typeof er=="bigint"||Number.isInteger(er),de=({value:er})=>JSON.stringify(er),be=[o,A,{identify:er=>typeof er=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:de},{identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:de},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:er=>er==="true",stringify:de},{identify:ue,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:er=>r.intOptions.asBigInt?BigInt(er):parseInt(er,10),stringify:({value:er})=>ue(er)?er.toString():JSON.stringify(er)},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:er=>parseFloat(er),stringify:de}];be.scalarFallback=er=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(er)}`)};var Se=({value:er})=>er?r.boolOptions.trueStr:r.boolOptions.falseStr,De=er=>typeof er=="bigint"||Number.isInteger(er);function k(er,vt,xt){let Zr=vt.replace(/_/g,"");if(r.intOptions.asBigInt){switch(xt){case 2:Zr=`0b${Zr}`;break;case 8:Zr=`0o${Zr}`;break;case 16:Zr=`0x${Zr}`;break}let Xt=BigInt(Zr);return er==="-"?BigInt(-1)*Xt:Xt}let qt=parseInt(Zr,xt);return er==="-"?-1*qt:qt}function et(er,vt,xt){let{value:Zr}=er;if(De(Zr)){let qt=Zr.toString(vt);return Zr<0?"-"+xt+qt.substr(1):xt+qt}return r.stringifyNumber(er)}var ct=I.concat([{identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:Se},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:Se},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,2),stringify:er=>et(er,2,"0b")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,8),stringify:er=>et(er,8,"0")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(er,vt,xt)=>k(vt,xt,10),stringify:r.stringifyNumber},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,16),stringify:er=>et(er,16,"0x")},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(er,vt)=>vt?NaN:er[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:er=>parseFloat(er.replace(/_/g,"")),stringify:({value:er})=>Number(er).toExponential()},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(er,vt){let xt=new r.Scalar(parseFloat(er.replace(/_/g,"")));if(vt){let Zr=vt.replace(/_/g,"");Zr[Zr.length-1]==="0"&&(xt.minFractionDigits=Zr.length)}return xt},stringify:r.stringifyNumber}],n.binary,n.omap,n.pairs,n.set,n.intTime,n.floatTime,n.timestamp),Me={core:fe,failsafe:I,json:be,yaml11:ct},je={binary:n.binary,bool:B,float:ce,floatExp:ne,floatNaN:ae,floatTime:n.floatTime,int:Q,intHex:X,intOct:F,intTime:n.intTime,map:o,null:N,omap:n.omap,pairs:n.pairs,seq:A,set:n.set,timestamp:n.timestamp};function St(er,vt,xt){if(vt){let Zr=xt.filter(Xt=>Xt.tag===vt),qt=Zr.find(Xt=>!Xt.format)||Zr[0];if(!qt)throw new Error(`Tag ${vt} not found`);return qt}return xt.find(Zr=>(Zr.identify&&Zr.identify(er)||Zr.class&&er instanceof Zr.class)&&!Zr.format)}function At(er,vt,xt){if(er instanceof r.Node)return er;let{defaultPrefix:Zr,onTagObj:qt,prevObjects:Xt,schema:lr,wrapScalars:cr}=xt;vt&&vt.startsWith("!!")&&(vt=Zr+vt.slice(2));let Ar=St(er,vt,lr.tags);if(!Ar){if(typeof er.toJSON=="function"&&(er=er.toJSON()),!er||typeof er!="object")return cr?new r.Scalar(er):er;Ar=er instanceof Map?o:er[Symbol.iterator]?A:o}qt&&(qt(Ar),delete xt.onTagObj);let qr={value:void 0,node:void 0};if(er&&typeof er=="object"&&Xt){let _n=Xt.get(er);if(_n){let ke=new r.Alias(_n);return xt.aliasNodes.push(ke),ke}qr.value=er,Xt.set(er,qr)}return qr.node=Ar.createNode?Ar.createNode(xt.schema,er,xt):cr?new r.Scalar(er):er,vt&&qr.node instanceof r.Node&&(qr.node.tag=vt),qr.node}function Yt(er,vt,xt,Zr){let qt=er[Zr.replace(/\W/g,"")];if(!qt){let Xt=Object.keys(er).map(lr=>JSON.stringify(lr)).join(", ");throw new Error(`Unknown schema "${Zr}"; use one of ${Xt}`)}if(Array.isArray(xt))for(let Xt of xt)qt=qt.concat(Xt);else typeof xt=="function"&&(qt=xt(qt.slice()));for(let Xt=0;XtJSON.stringify(qr)).join(", ");throw new Error(`Unknown custom tag "${lr}"; use one of ${Ar}`)}qt[Xt]=cr}}return qt}var Tr=(er,vt)=>er.keyvt.key?1:0,Nr=class Rwi{constructor({customTags:vt,merge:xt,schema:Zr,sortMapEntries:qt,tags:Xt}){this.merge=!!xt,this.name=Zr,this.sortMapEntries=qt===!0?Tr:qt||null,!vt&&Xt&&n.warnOptionDeprecation("tags","customTags"),this.tags=Yt(Me,je,vt||Xt,Zr)}createNode(vt,xt,Zr,qt){let Xt={defaultPrefix:Rwi.defaultPrefix,schema:this,wrapScalars:xt},lr=qt?Object.assign(qt,Xt):Xt;return At(vt,Zr,lr)}createPair(vt,xt,Zr){Zr||(Zr={wrapScalars:!0});let qt=this.createNode(vt,Zr.wrapScalars,null,Zr),Xt=this.createNode(xt,Zr.wrapScalars,null,Zr);return new r.Pair(qt,Xt)}};t._defineProperty(Nr,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Nr,"defaultTags",t.defaultTags),e.Schema=Nr}),mic=kee(e=>{"use strict";var t=jme(),r=kJe(),n=Twi(),a={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},o={get binary(){return r.binaryOptions},set binary(ce){Object.assign(r.binaryOptions,ce)},get bool(){return r.boolOptions},set bool(ce){Object.assign(r.boolOptions,ce)},get int(){return r.intOptions},set int(ce){Object.assign(r.intOptions,ce)},get null(){return r.nullOptions},set null(ce){Object.assign(r.nullOptions,ce)},get str(){return r.strOptions},set str(ce){Object.assign(r.strOptions,ce)}},l={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function A(ce,fe){if((ce.version||ce.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Se=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Se?`!${Se[1]}/${Se[2]}`:`!${fe.replace(/^tag:/,"")}`}let ue=ce.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!ue){let be=ce.getDefaults().tagPrefixes;ue=be&&be.find(Se=>fe.indexOf(Se.prefix)===0)}if(!ue)return fe[0]==="!"?fe:`!<${fe}>`;let de=fe.substr(ue.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return ue.handle+de}function f(ce,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ce.filter(Se=>Se.tag===fe.tag);if(be.length>0)return be.find(Se=>Se.format===fe.format)||be[0]}let ue,de;if(fe instanceof r.Scalar){de=fe.value;let be=ce.filter(Se=>Se.identify&&Se.identify(de)||Se.class&&de instanceof Se.class);ue=be.find(Se=>Se.format===fe.format)||be.find(Se=>!Se.format)}else de=fe,ue=ce.find(be=>be.nodeClass&&de instanceof be.nodeClass);if(!ue){let be=de&&de.constructor?de.constructor.name:typeof de;throw new Error(`Tag not resolved for ${be} value`)}return ue}function I(ce,fe,{anchors:ue,doc:de}){let be=[],Se=de.anchors.getName(ce);return Se&&(ue[Se]=ce,be.push(`&${Se}`)),ce.tag?be.push(A(de,ce.tag)):fe.default||be.push(A(de,fe.tag)),be.join(" ")}function C(ce,fe,ue,de){let{anchors:be,schema:Se}=fe.doc,De;if(!(ce instanceof r.Node)){let ct={aliasNodes:[],onTagObj:Me=>De=Me,prevObjects:new Map};ce=Se.createNode(ce,!0,null,ct);for(let Me of ct.aliasNodes){Me.source=Me.source.node;let je=be.getName(Me.source);je||(je=be.newName(),be.map[je]=Me.source)}}if(ce instanceof r.Pair)return ce.toString(fe,ue,de);De||(De=f(Se.tags,ce));let k=I(ce,De,fe);k.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+k.length+1);let et=typeof De.stringify=="function"?De.stringify(ce,fe,ue,de):ce instanceof r.Scalar?r.stringifyString(ce,fe,ue,de):ce.toString(fe,ue,de);return k?ce instanceof r.Scalar||et[0]==="{"||et[0]==="["?`${k} ${et}`:`${k} +${fe.indent}${et}`:et}var b=class Nwi{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,ue){return this.setAnchor(fe,ue),new r.Alias(fe)}createMergePair(...fe){let ue=new r.Merge;return ue.value.items=fe.map(de=>{if(de instanceof r.Alias){if(de.source instanceof r.YAMLMap)return de}else if(de instanceof r.YAMLMap)return this.createAlias(de);throw new Error("Merge sources must be Map nodes or their Aliases")}),ue}getName(fe){let{map:ue}=this;return Object.keys(ue).find(de=>ue[de]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let ue=Object.keys(this.map);for(let de=1;;++de){let be=`${fe}${de}`;if(!ue.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:ue}=this;Object.keys(fe).forEach(de=>{fe[de]=fe[de].resolved}),ue.forEach(de=>{de.source=de.source.resolved}),delete this._cstAliases}setAnchor(fe,ue){if(fe!=null&&!Nwi.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(ue&&/[\x00-\x19\s,[\]{}]/.test(ue))throw new Error("Anchor names must not contain whitespace or control characters");let{map:de}=this,be=fe&&Object.keys(de).find(Se=>de[Se]===fe);if(be)if(ue)be!==ue&&(delete de[be],de[ue]=fe);else return be;else{if(!ue){if(!fe)return null;ue=this.newName()}de[ue]=fe}return ue}},E=(ce,fe)=>{if(ce&&typeof ce=="object"){let{tag:ue}=ce;ce instanceof r.Collection?(ue&&(fe[ue]=!0),ce.items.forEach(de=>E(de,fe))):ce instanceof r.Pair?(E(ce.key,fe),E(ce.value,fe)):ce instanceof r.Scalar&&ue&&(fe[ue]=!0)}return fe},N=ce=>Object.keys(E(ce,{}));function B(ce,fe){let ue={before:[],after:[]},de,be=!1;for(let Se of fe)if(Se.valueRange){if(de!==void 0){let k="Document contains trailing content not separated by a ... or --- line";ce.errors.push(new t.YAMLSyntaxError(Se,k));break}let De=r.resolveNode(ce,Se);be&&(De.spaceBefore=!0,be=!1),de=De}else Se.comment!==null?(de===void 0?ue.before:ue.after).push(Se.comment):Se.type===t.Type.BLANK_LINE&&(be=!0,de===void 0&&ue.before.length>0&&!ce.commentBefore&&(ce.commentBefore=ue.before.join(` `),ue.before=[]));if(ce.contents=de||null,!de)ce.comment=ue.before.concat(ue.after).join(` `)||null;else{let Se=ue.before.join(` `);if(Se){let De=de instanceof r.Collection&&de.items[0]?de.items[0]:de;De.commentBefore=De.commentBefore?`${Se} ${De.commentBefore}`:Se}ce.comment=ue.after.join(` `)||null}}function F({tagPrefixes:ce},fe){let[ue,de]=fe.parameters;if(!ue||!de){let be="Insufficient parameters given for %TAG directive";throw new t.YAMLSemanticError(fe,be)}if(ce.some(be=>be.handle===ue)){let be="The %TAG directive must only be given at most once per handle in the same document.";throw new t.YAMLSemanticError(fe,be)}return{handle:ue,prefix:de}}function Q(ce,fe){let[ue]=fe.parameters;if(fe.name==="YAML:1.0"&&(ue="1.0"),!ue){let de="Insufficient parameters given for %YAML directive";throw new t.YAMLSemanticError(fe,de)}if(!l[ue]){let de=`Document will be parsed as YAML ${ce.version||ce.options.version} rather than YAML ${ue}`;ce.warnings.push(new t.YAMLWarning(fe,de))}return ue}function X(ce,fe,ue){let de=[],be=!1;for(let Se of fe){let{comment:De,name:k}=Se;switch(k){case"TAG":try{ce.tagPrefixes.push(F(ce,Se))}catch(et){ce.errors.push(et)}be=!0;break;case"YAML":case"YAML:1.0":if(ce.version){let et="The %YAML directive must only be given at most once per document.";ce.errors.push(new t.YAMLSemanticError(Se,et))}try{ce.version=Q(ce,Se)}catch(et){ce.errors.push(et)}be=!0;break;default:if(k){let et=`YAML only supports %TAG and %YAML directives, and not %${k}`;ce.warnings.push(new t.YAMLWarning(Se,et))}}De&&de.push(De)}if(ue&&!be&&(ce.version||ue.version||ce.options.version)==="1.1"){let Se=({handle:De,prefix:k})=>({handle:De,prefix:k});ce.tagPrefixes=ue.tagPrefixes.map(Se),ce.version=ue.version}ce.commentBefore=de.join(` -`)||null}function ae(ce){if(ce instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ne=class hDr{constructor(fe){this.anchors=new b(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return ae(this.contents),this.contents.add(fe)}addIn(fe,ue){ae(this.contents),this.contents.addIn(fe,ue)}delete(fe){return ae(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(ae(this.contents),this.contents.deleteIn(fe))}getDefaults(){return hDr.defaults[this.version]||hDr.defaults[this.options.version]||{}}get(fe,ue){return this.contents instanceof r.Collection?this.contents.get(fe,ue):void 0}getIn(fe,ue){return r.isEmptyPath(fe)?!ue&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,ue):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,ue){ae(this.contents),this.contents.set(fe,ue)}setIn(fe,ue){r.isEmptyPath(fe)?this.contents=ue:(ae(this.contents),this.contents.setIn(fe,ue))}setSchema(fe,ue){if(!fe&&!ue&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(ue)&&(this.options.customTags=ue);let de=Object.assign({},this.getDefaults(),this.options);this.schema=new n.Schema(de)}parse(fe,ue){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:de=[],contents:be=[],directivesEndMarker:Se,error:De,valueRange:k}=fe;if(De&&(De.source||(De.source=this),this.errors.push(De)),X(this,de,ue),Se&&(this.directivesEndMarker=!0),this.range=k?[k.start,k.end]:null,this.setSchema(),this.anchors._cstAliases=[],B(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let et of this.errors)et instanceof t.YAMLError&&et.makePretty();for(let et of this.warnings)et instanceof t.YAMLError&&et.makePretty()}return this}listNonDefaultTags(){return N(this.contents).filter(fe=>fe.indexOf(n.Schema.defaultPrefix)!==0)}setTagPrefix(fe,ue){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(ue){let de=this.tagPrefixes.find(be=>be.handle===fe);de?de.prefix=ue:this.tagPrefixes.push({handle:fe,prefix:ue})}else this.tagPrefixes=this.tagPrefixes.filter(de=>de.handle!==fe)}toJSON(fe,ue){let{keepBlobsInJSON:de,mapAsMap:be,maxAliasCount:Se}=this.options,De=de&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),k={doc:this,indentStep:" ",keep:De,mapAsMap:De&&!!be,maxAliasCount:Se,stringify:C},et=Object.keys(this.anchors.map);et.length>0&&(k.anchors=new Map(et.map(Me=>[this.anchors.map[Me],{alias:[],aliasCount:0,count:1}])));let ct=r.toJSON(this.contents,fe,k);if(typeof ue=="function"&&k.anchors)for(let{count:Me,res:je}of k.anchors.values())ue(je,Me);return ct}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let et=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${et}`)}this.setSchema();let ue=[],de=!1;if(this.version){let et="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?et="%YAML:1.0":this.version==="1.1"&&(et="%YAML 1.1")),ue.push(et),de=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:et,prefix:ct})=>{be.some(Me=>Me.indexOf(ct)===0)&&(ue.push(`%TAG ${et} ${ct}`),de=!0)}),(de||this.directivesEndMarker)&&ue.push("---"),this.commentBefore&&((de||!this.directivesEndMarker)&&ue.unshift(""),ue.unshift(this.commentBefore.replace(/^/gm,"#")));let Se={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:C},De=!1,k=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(de||this.directivesEndMarker)&&ue.push(""),this.contents.commentBefore&&ue.push(this.contents.commentBefore.replace(/^/gm,"#")),Se.forceBlockIndent=!!this.comment,k=this.contents.comment);let et=k?null:()=>De=!0,ct=C(this.contents,Se,()=>k=null,et);ue.push(r.addComment(ct,"",k))}else this.contents!==void 0&&ue.push(C(this.contents,Se));return this.comment&&((!De||k)&&ue[ue.length-1]!==""&&ue.push(""),ue.push(this.comment.replace(/^/gm,"#"))),ue.join(` +`)||null}function ae(ce){if(ce instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ne=class bDr{constructor(fe){this.anchors=new b(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return ae(this.contents),this.contents.add(fe)}addIn(fe,ue){ae(this.contents),this.contents.addIn(fe,ue)}delete(fe){return ae(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(ae(this.contents),this.contents.deleteIn(fe))}getDefaults(){return bDr.defaults[this.version]||bDr.defaults[this.options.version]||{}}get(fe,ue){return this.contents instanceof r.Collection?this.contents.get(fe,ue):void 0}getIn(fe,ue){return r.isEmptyPath(fe)?!ue&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,ue):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,ue){ae(this.contents),this.contents.set(fe,ue)}setIn(fe,ue){r.isEmptyPath(fe)?this.contents=ue:(ae(this.contents),this.contents.setIn(fe,ue))}setSchema(fe,ue){if(!fe&&!ue&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(ue)&&(this.options.customTags=ue);let de=Object.assign({},this.getDefaults(),this.options);this.schema=new n.Schema(de)}parse(fe,ue){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:de=[],contents:be=[],directivesEndMarker:Se,error:De,valueRange:k}=fe;if(De&&(De.source||(De.source=this),this.errors.push(De)),X(this,de,ue),Se&&(this.directivesEndMarker=!0),this.range=k?[k.start,k.end]:null,this.setSchema(),this.anchors._cstAliases=[],B(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let et of this.errors)et instanceof t.YAMLError&&et.makePretty();for(let et of this.warnings)et instanceof t.YAMLError&&et.makePretty()}return this}listNonDefaultTags(){return N(this.contents).filter(fe=>fe.indexOf(n.Schema.defaultPrefix)!==0)}setTagPrefix(fe,ue){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(ue){let de=this.tagPrefixes.find(be=>be.handle===fe);de?de.prefix=ue:this.tagPrefixes.push({handle:fe,prefix:ue})}else this.tagPrefixes=this.tagPrefixes.filter(de=>de.handle!==fe)}toJSON(fe,ue){let{keepBlobsInJSON:de,mapAsMap:be,maxAliasCount:Se}=this.options,De=de&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),k={doc:this,indentStep:" ",keep:De,mapAsMap:De&&!!be,maxAliasCount:Se,stringify:C},et=Object.keys(this.anchors.map);et.length>0&&(k.anchors=new Map(et.map(Me=>[this.anchors.map[Me],{alias:[],aliasCount:0,count:1}])));let ct=r.toJSON(this.contents,fe,k);if(typeof ue=="function"&&k.anchors)for(let{count:Me,res:je}of k.anchors.values())ue(je,Me);return ct}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let et=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${et}`)}this.setSchema();let ue=[],de=!1;if(this.version){let et="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?et="%YAML:1.0":this.version==="1.1"&&(et="%YAML 1.1")),ue.push(et),de=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:et,prefix:ct})=>{be.some(Me=>Me.indexOf(ct)===0)&&(ue.push(`%TAG ${et} ${ct}`),de=!0)}),(de||this.directivesEndMarker)&&ue.push("---"),this.commentBefore&&((de||!this.directivesEndMarker)&&ue.unshift(""),ue.unshift(this.commentBefore.replace(/^/gm,"#")));let Se={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:C},De=!1,k=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(de||this.directivesEndMarker)&&ue.push(""),this.contents.commentBefore&&ue.push(this.contents.commentBefore.replace(/^/gm,"#")),Se.forceBlockIndent=!!this.comment,k=this.contents.comment);let et=k?null:()=>De=!0,ct=C(this.contents,Se,()=>k=null,et);ue.push(r.addComment(ct,"",k))}else this.contents!==void 0&&ue.push(C(this.contents,Se));return this.comment&&((!De||k)&&ue[ue.length-1]!==""&&ue.push(""),ue.push(this.comment.replace(/^/gm,"#"))),ue.join(` `)+` -`}};t._defineProperty(ne,"defaults",l),e.Document=ne,e.defaultOptions=a,e.scalarOptions=o}),Ync=Dee(e=>{"use strict";var t=Mnc(),r=Hnc(),n=dwi(),a=Kme(),o=uwi();NJe();function l(N,B=!0,F){F===void 0&&typeof B=="string"&&(F=B,B=!0);let Q=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new n.Schema(Q).createNode(N,B,F)}var A=class extends r.Document{constructor(N){super(Object.assign({},r.defaultOptions,N))}};function f(N,B){let F=[],Q;for(let X of t.parse(N)){let ae=new A(B);ae.parse(X,Q),F.push(ae),Q=ae}return F}function I(N,B){let F=t.parse(N),Q=new A(B).parse(F[0]);if(F.length>1){let X="Source contains multiple documents; please use YAML.parseAllDocuments()";Q.errors.unshift(new a.YAMLSemanticError(F[1],X))}return Q}function C(N,B){let F=I(N,B);if(F.warnings.forEach(Q=>o.warn(Q)),F.errors.length>0)throw F.errors[0];return F.toJSON()}function b(N,B){let F=new A(B);return F.contents=N,String(F)}var E={createNode:l,defaultOptions:r.defaultOptions,Document:A,parse:C,parseAllDocuments:f,parseCST:t.parse,parseDocument:I,scalarOptions:r.scalarOptions,stringify:b};e.YAML=E}),Qnc=Dee((e,t)=>{t.exports=Ync().YAML}),Xnc=Dee(e=>{"use strict";var t=NJe(),r=Kme();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),Iwi={};nwi(Iwi,{languages:()=>Pwi,options:()=>Wwi,parsers:()=>xDr,printers:()=>eTi});var Jnc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},uDr=Jnc,hwi="string",mwi="array",Cwi="cursor",_wi="indent",vDr="align",ywi="trim",BDr="group",wDr="fill",TDr="if-break",bwi="indent-if-break",RDr="line-suffix",Ewi="line-suffix-boundary",FNe="line",Swi="label",NDr="break-parent",vwi=new Set([Cwi,_wi,vDr,ywi,BDr,wDr,TDr,bwi,RDr,Ewi,FNe,Swi,NDr]),Unc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},nH=Unc;function Knc(e){if(typeof e=="string")return hwi;if(Array.isArray(e))return mwi;if(!e)return;let{type:t}=e;if(vwi.has(t))return t}var Bwi=Knc,jnc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function znc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Bwi(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=jnc([...vwi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var qnc=class extends Error{name="InvalidDocError";constructor(e){super(znc(e)),this.doc=e}},$nc=qnc;function eic(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Bwi(o)){case mwi:return t(o.map(n));case wDr:return t({...o,parts:o.parts.map(n)});case TDr:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case BDr:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case vDr:case _wi:case bwi:case Swi:case RDr:return t({...o,contents:n(o.contents)});case hwi:case Cwi:case ywi:case Ewi:case FNe:case NDr:return t(o);default:throw new $nc(o)}}}function tic(e,t=CDr){return eic(e,r=>typeof r=="string"?bV(t,r.split(` -`)):r)}var DDr=()=>{},GNe=DDr,wwi=DDr,ric=DDr;function uEt(e,t){return GNe(t),{type:vDr,contents:t,n:e}}function oEt(e,t={}){return GNe(e),wwi(t.expandedStates,!0),{type:BDr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function XBi(e){return uEt(Number.NEGATIVE_INFINITY,e)}function nic(e){return uEt({type:"root"},e)}function iic(e){return uEt(-1,e)}function JBi(e,t){return oEt(e[0],{...t,expandedStates:e})}function Twi(e){return ric(e),{type:wDr,parts:e}}function mDr(e,t="",r={}){return GNe(e),t!==""&&GNe(t),{type:TDr,breakContents:e,flatContents:t,groupId:r.groupId}}function sic(e){return GNe(e),{type:RDr,contents:e}}var kDr={type:NDr},oic={type:FNe,hard:!0},aic={type:FNe,hard:!0,literal:!0},DJe={type:FNe},Rwi={type:FNe,soft:!0},Y_=[oic,kDr],CDr=[aic,kDr];function bV(e,t){GNe(e),wwi(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{"use strict";var t=hic(),r=mic(),n=Twi(),a=jme(),o=vwi();kJe();function l(N,B=!0,F){F===void 0&&typeof B=="string"&&(F=B,B=!0);let Q=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new n.Schema(Q).createNode(N,B,F)}var A=class extends r.Document{constructor(N){super(Object.assign({},r.defaultOptions,N))}};function f(N,B){let F=[],Q;for(let X of t.parse(N)){let ae=new A(B);ae.parse(X,Q),F.push(ae),Q=ae}return F}function I(N,B){let F=t.parse(N),Q=new A(B).parse(F[0]);if(F.length>1){let X="Source contains multiple documents; please use YAML.parseAllDocuments()";Q.errors.unshift(new a.YAMLSemanticError(F[1],X))}return Q}function C(N,B){let F=I(N,B);if(F.warnings.forEach(Q=>o.warn(Q)),F.errors.length>0)throw F.errors[0];return F.toJSON()}function b(N,B){let F=new A(B);return F.contents=N,String(F)}var E={createNode:l,defaultOptions:r.defaultOptions,Document:A,parse:C,parseAllDocuments:f,parseCST:t.parse,parseDocument:I,scalarOptions:r.scalarOptions,stringify:b};e.YAML=E}),_ic=kee((e,t)=>{t.exports=Cic().YAML}),yic=kee(e=>{"use strict";var t=kJe(),r=jme();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),Dwi={};mwi(Dwi,{languages:()=>eTi,options:()=>tTi,parsers:()=>VDr,printers:()=>fTi});var bic=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},fDr=bic,kwi="string",xwi="array",Gwi="cursor",Fwi="indent",NDr="align",Zwi="trim",DDr="group",kDr="fill",xDr="if-break",Lwi="indent-if-break",GDr="line-suffix",Vwi="line-suffix-boundary",LNe="line",Pwi="label",FDr="break-parent",Wwi=new Set([Gwi,Fwi,NDr,Zwi,DDr,kDr,xDr,Lwi,GDr,Vwi,LNe,Pwi,FDr]),Eic=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},nH=Eic;function Sic(e){if(typeof e=="string")return kwi;if(Array.isArray(e))return xwi;if(!e)return;let{type:t}=e;if(Wwi.has(t))return t}var Owi=Sic,vic=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Bic(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Owi(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=vic([...Wwi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var wic=class extends Error{name="InvalidDocError";constructor(e){super(Bic(e)),this.doc=e}},Tic=wic;function Ric(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Owi(o)){case xwi:return t(o.map(n));case kDr:return t({...o,parts:o.parts.map(n)});case xDr:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case DDr:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case NDr:case Fwi:case Lwi:case Pwi:case GDr:return t({...o,contents:n(o.contents)});case kwi:case Gwi:case Zwi:case Vwi:case LNe:case FDr:return t(o);default:throw new Tic(o)}}}function Nic(e,t=SDr){return Ric(e,r=>typeof r=="string"?bV(t,r.split(` +`)):r)}var ZDr=()=>{},ZNe=ZDr,Mwi=ZDr,Dic=ZDr;function AEt(e,t){return ZNe(t),{type:NDr,contents:t,n:e}}function cEt(e,t={}){return ZNe(e),Mwi(t.expandedStates,!0),{type:DDr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function awi(e){return AEt(Number.NEGATIVE_INFINITY,e)}function kic(e){return AEt({type:"root"},e)}function xic(e){return AEt(-1,e)}function cwi(e,t){return cEt(e[0],{...t,expandedStates:e})}function Hwi(e){return Dic(e),{type:kDr,parts:e}}function EDr(e,t="",r={}){return ZNe(e),t!==""&&ZNe(t),{type:xDr,breakContents:e,flatContents:t,groupId:r.groupId}}function Gic(e){return ZNe(e),{type:GDr,contents:e}}var LDr={type:FDr},Fic={type:LNe,hard:!0},Zic={type:LNe,hard:!0,literal:!0},xJe={type:LNe},Ywi={type:LNe,soft:!0},Y_=[Fic,LDr],SDr=[Zic,LDr];function bV(e,t){ZNe(e),Mwi(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{let a=await n(t.originalText,{parser:"json"});return a?[a,Y_]:void 0}}Nwi.getVisitorKeys=()=>[];var dic=Nwi,BJe=null;function RJe(e){if(BJe!==null&&typeof BJe.property){let t=BJe;return BJe=RJe.prototype=null,t}return BJe=RJe.prototype=e??Object.create(null),new RJe}var pic=10;for(let e=0;e<=pic;e++)RJe();function fic(e){return RJe(e)}function Iic(e,t="type"){fic(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var hic=Iic,mic=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),Cic=mic,_ic=hic(Cic),yic=_ic;function aEt(e){return e.position.start.offset}function bic(e){return e.position.end.offset}function Eic(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function Sic(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function vic(e){return`# @format - -${e}`}function Bic(e){return Array.isArray(e)&&e.length>0}var kJe=Bic;function Nee(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Dwi(e,t,r){return t("children"in e?{...e,children:e.children.map(n=>Dwi(n,t,e))}:e,r)}function wJe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function wic(e,t){let r=0,n=t.length;for(let a=e.position.end.offset-1;ao===0&&o===l.length-1?a:o!==0&&o!==l.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?n.map(a=>a.length===0?[]:[a]):n.map(a=>a.length===0?[]:Gwi(a)).reduce((a,o,l)=>l!==0&&n[l-1].length>0&&o.length>0&&!(e==="quoteDouble"&&nH(!1,nH(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...nH(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function Dic(e,{parentIndent:t,isLastDescendant:r,options:n}){let a=e.position.start.line===e.position.end.line?"":n.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let l=a.split(` -`).map(f=>f.slice(o));if(n.proseWrap==="preserve"||e.type==="blockLiteral")return A(l.map(f=>f.length===0?[]:[f]));return A(l.map(f=>f.length===0?[]:Gwi(f)).reduce((f,I,C)=>C!==0&&l[C-1].length>0&&I.length>0&&!/^\s/u.test(I[0])&&!/^\s|\s$/u.test(nH(!1,f,-1))?[...f.slice(0,-1),[...nH(!1,f,-1),...I]]:[...f,I],[]).map(f=>f.reduce((I,C)=>I.length>0&&/\s$/u.test(nH(!1,I,-1))?[...I.slice(0,-1),nH(!1,I,-1)+" "+C]:[...I,C],[])).map(f=>n.proseWrap==="never"?[f.join(" ")]:f));function A(f){if(e.chomping==="keep")return nH(!1,f,-1).length===0?f.slice(0,-1):f;let I=0;for(let C=f.length-1;C>=0&&f[C].length===0;C--)I++;return I===0?f:I>=2&&!r?f.slice(0,-(I-1)):f.slice(0,-I)}}function yDr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var gDr=new WeakMap;function Fwi(e,t){let{node:r,root:n}=e,a;return gDr.has(n)?a=gDr.get(n):(a=new Set,gDr.set(n,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),wic(r,t)&&!Zwi(e.parent))?Rwi:""}function Zwi(e){return o4(e)&&!Nee(e,["documentHead","documentBody","flowMapping","flowSequence"])}function rH(e,t){return uEt(" ".repeat(e),t)}function kic(e,t,r){let{node:n}=e,a=e.ancestors.filter(I=>I.type==="sequence"||I.type==="mapping").length,o=kwi(e),l=[n.type==="blockFolded"?">":"|"];n.indent!==null&&l.push(n.indent.toString()),n.chomping!=="clip"&&l.push(n.chomping==="keep"?"+":"-"),xwi(n)&&l.push(" ",t("indicatorComment"));let A=Dic(n,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[I,C]of A.entries())I===0&&f.push(Y_),f.push(Twi(bV(DJe,C))),I!==A.length-1?f.push(C.length===0?Y_:nic(CDr)):n.chomping==="keep"&&o&&f.push(XBi(C.length===0?Y_:CDr));return n.indent===null?l.push(iic(rH(r.tabWidth,f))):l.push(XBi(rH(n.indent-1+a,f))),l}var xic=kic;function zBi(e,t,r){let{node:n}=e,a=n.type==="flowMapping",o=a?"{":"[",l=a?"}":"]",A=Rwi;a&&n.children.length>0&&r.bracketSpacing&&(A=DJe);let f=nH(!1,n.children,-1),I=f?.type==="flowMappingItem"&&cEt(f.key)&&cEt(f.value);return[o,rH(r.tabWidth,[A,Gic(e,t,r),r.trailingComma==="none"?"":mDr(","),o4(n)?[Y_,bV(Y_,e.map(t,"endComments"))]:""]),I?"":A,l]}function Gic(e,t,r){return e.map(({isLast:n,node:a,next:o})=>[t(),n?"":[",",DJe,a.position.start.line!==o.position.start.line?Fwi(e,r.originalText):""]],"children")}function Fic(e,t,r){var n;let{node:a,parent:o}=e,{key:l,value:A}=a,f=cEt(l),I=cEt(A);if(f&&I)return": ";let C=t("key"),b=Zic(a)?" ":"";if(I)return a.type==="flowMappingItem"&&o.type==="flowMapping"?C:a.type==="mappingItem"&&ADr(l.content,r)&&!s4(l.content)&&((n=o.tag)==null?void 0:n.value)!=="tag:yaml.org,2002:set"?[C,b,":"]:["? ",rH(2,C)];let E=t("value");if(f)return[": ",rH(2,E)];if(wce(A)||!yDr(l.content))return["? ",rH(2,C),Y_,...e.map(()=>[t(),Y_],"value","leadingComments"),": ",rH(2,E)];if(Lic(l.content)&&!wce(l.content)&&!kNe(l.content)&&!s4(l.content)&&!o4(l)&&!wce(A.content)&&!kNe(A.content)&&!o4(A)&&ADr(A.content,r))return[C,b,": ",E];let N=Symbol("mappingKey"),B=oEt([mDr("? "),oEt(rH(2,C),{id:N})]),F=[Y_,": ",rH(2,E)],Q=[b,":"];wce(A.content)||o4(A)&&A.content&&!Nee(A.content,["mapping","sequence"])||o.type==="mapping"&&s4(l.content)&&yDr(A.content)||Nee(A.content,["mapping","sequence"])&&A.content.tag===null&&A.content.anchor===null?Q.push(Y_):A.content?Q.push(DJe):s4(A)&&Q.push(" "),Q.push(E);let X=rH(r.tabWidth,Q);return ADr(l.content,r)&&!wce(l.content)&&!kNe(l.content)&&!o4(l)?JBi([[C,X]]):JBi([[B,mDr(F,X,{groupId:N})]])}function ADr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` -`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function Zic(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function Lic(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var Vic=Fic;function Pic(e){return Dwi(e,Wic)}function Wic(e){switch(e.type){case"document":wJe(e,"head",()=>e.children[0]),wJe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":wJe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":wJe(e,"key",()=>e.children[0]),wJe(e,"value",()=>e.children[1]);break}return e}var Oic=Pic;function Mic(e,t,r){let{node:n}=e,a=[];n.type!=="mappingValue"&&wce(n)&&a.push([bV(Y_,e.map(r,"leadingComments")),Y_]);let{tag:o,anchor:l}=n;o&&a.push(r("tag")),o&&l&&a.push(" "),l&&a.push(r("anchor"));let A="";return Nee(n,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!kwi(e)&&(A=Fwi(e,t.originalText)),(o||l)&&(Nee(n,["sequence","mapping"])&&!kNe(n)?a.push(Y_):a.push(" ")),kNe(n)&&a.push([n.middleComments.length===1?"":Y_,bV(Y_,e.map(r,"middleComments")),Y_]),Tic(e)?a.push(tic(t.originalText.slice(n.position.start.offset,n.position.end.offset).trimEnd())):a.push(oEt(Hic(e,t,r))),s4(n)&&!Nee(n,["document","documentHead"])&&a.push(sic([n.type==="mappingValue"&&!n.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&yDr(n)?"":kDr,r("trailingComment")])),Zwi(n)&&a.push(rH(n.type==="sequenceItem"?2:0,[Y_,bV(Y_,e.map(({node:f})=>[uic(t.originalText,aEt(f))?Y_:"",r()],"endComments"))])),a.push(A),a}function Hic(e,t,r){let{node:n}=e;switch(n.type){case"root":{let a=[];e.each(({node:l,next:A,isFirst:f})=>{f||a.push(Y_),a.push(r()),Lwi(l,A)?(a.push(Y_,"..."),s4(l)&&a.push(" ",r("trailingComment"))):A&&!s4(A.head)&&a.push(Y_,"---")},"children");let o=_Dr(n);return(!Nee(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(Y_),a}case"document":{let a=[];return Qic(e,t)==="head"&&((n.head.children.length>0||n.head.endComments.length>0)&&a.push(r("head")),s4(n.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),Yic(n)&&a.push(r("body")),bV(Y_,a)}case"documentHead":return bV(Y_,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=n,l="";if(a.length>0&&o.length>0){let A=_Dr(n);Nee(A,["blockFolded","blockLiteral"])?A.chomping!=="keep"&&(l=[Y_,Y_]):l=Y_}return[bV(Y_,e.map(r,"children")),l,bV(Y_,e.map(r,"endComments"))]}case"directive":return["%",bV(" ",[n.name,...n.parameters])];case"comment":return["#",n.value];case"alias":return["*",n.value];case"tag":return t.originalText.slice(n.position.start.offset,n.position.end.offset);case"anchor":return["&",n.value];case"plain":return TJe(n.type,t.originalText.slice(n.position.start.offset,n.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',l=t.originalText.slice(n.position.start.offset+1,n.position.end.offset-1);if(n.type==="quoteSingle"&&l.includes("\\")||n.type==="quoteDouble"&&/\\[^"]/u.test(l)){let f=n.type==="quoteDouble"?o:a;return[f,TJe(n.type,l,t),f]}if(l.includes(o))return[a,TJe(n.type,n.type==="quoteDouble"?uDr(!1,uDr(!1,l,String.raw`\"`,o),"'",a.repeat(2)):l,t),a];if(l.includes(a))return[o,TJe(n.type,n.type==="quoteSingle"?uDr(!1,l,"''",a):l,t),o];let A=t.singleQuote?a:o;return[A,TJe(n.type,l,t),A]}case"blockFolded":case"blockLiteral":return xic(e,r,t);case"mapping":case"sequence":return bV(Y_,e.map(r,"children"));case"sequenceItem":return["- ",rH(2,n.content?r("content"):"")];case"mappingKey":case"mappingValue":return n.content?r("content"):"";case"mappingItem":case"flowMappingItem":return Vic(e,r,t);case"flowMapping":return zBi(e,r,t);case"flowSequence":return zBi(e,r,t);case"flowSequenceItem":return r("content");default:throw new Aic(n,"YAML")}}function Yic(e){return e.body.children.length>0||o4(e.body)}function Lwi(e,t){return s4(e)||t&&(t.head.children.length>0||o4(t.head))}function Qic(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(aEt(r),aEt(r)+4))||r.head.children.length>0||o4(r.head)||s4(r.head))return"head";let n=e.next;return Lwi(r,n)?!1:n?"root":!1}function TJe(e,t,r){let n=Nic(e,t,r);return bV(Y_,n.map(a=>Twi(bV(DJe,a))))}function Vwi(e,t){if(Nee(e))switch(e.type){case"comment":if(Eic(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}Vwi.ignoredProperties=new Set(["position"]);var Xic={preprocess:Oic,embed:dic,print:Mic,massageAstNode:Vwi,insertPragma:vic,getVisitorKeys:yic},Jic=Xic,Pwi=[{linguistLanguageId:407,name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],dDr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Uic={bracketSpacing:dDr.bracketSpacing,singleQuote:dDr.singleQuote,proseWrap:dDr.proseWrap},Wwi=Uic,xDr={};nwi(xDr,{yaml:()=>doc});var nEt=` -`,qBi="\r",Kic=function(){function e(t){this.length=t.length;for(var r=[0],n=0;nthis.length)return null;for(var r=0,n=this.offsets;n[r+1]<=t;)r++;var a=t-n[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,n=t.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],n=t===this.offsets.length-1?this.length:this.offsets[t+1];return n-r},e}();function mO(e,t=null){"children"in e&&e.children.forEach(r=>mO(r,e)),"anchor"in e&&e.anchor&&mO(e.anchor,e),"tag"in e&&e.tag&&mO(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>mO(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>mO(r,e)),"indicatorComment"in e&&e.indicatorComment&&mO(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&mO(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>mO(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function lEt(e){return`${e.line}:${e.column}`}function jic(e){mO(e);let t=zic(e),r=e.children.slice();e.comments.sort((n,a)=>n.position.start.offset-a.position.end.offset).filter(n=>!n._parent).forEach(n=>{for(;r.length>1&&n.position.start.line>r[0].position.end.line;)r.shift();qic(n,t,r[0])})}function zic(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return Owi(t,e),t}function Owi(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:n}=e[r.line-1];(!n||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:n}=e[r.line-1];(!n||r.column>=n.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:n}=t.position,a=[n.line].concat(r.line===n.line?[]:r.line);for(let o of a){let l=e[o-1].trailingNode;(!l||n.column>=l.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{Owi(e,r)})}}function qic(e,t,r){let n=e.position.start.line,{trailingAttachableNode:a}=t[n-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${lEt(e.position.start)}`);mO(e,a),a.trailingComment=e;return}for(let l=n;l>=r.position.start.line;l--){let{trailingNode:A}=t[l-1],f;if(A)f=A;else if(l!==n&&t[l-1].comment)f=t[l-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[I,C]=f.children;f=Mwi(I)?I:C}for(;;){if($ic(f,e)){mO(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let l=n+1;l<=r.position.end.line;l++){let{leadingAttachableNode:A}=t[l-1];if(A){mO(e,A),A.leadingComments.push(e);return}}let o=r.children[1];mO(e,o),o.endComments.push(e)}function $ic(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||Mwi(e));default:return!1}}function Mwi(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function nw(e,t){return{type:e,position:t}}function esc(e,t,r){return{...nw("root",e),children:t,comments:r}}function sEt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):sEt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):sEt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&sEt(e.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error(`Unexpected node type ${JSON.stringify(e.type)}`)}}function ZNe(){return{leadingComments:[]}}function AEt(e=null){return{trailingComment:e}}function jme(){return{...ZNe(),...AEt()}}function tsc(e,t,r){return{...nw("alias",e),...jme(),...t,value:r}}function rsc(e,t){let r=e.cstNode;return tsc(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function nsc(e){return{...e,type:"blockFolded"}}function isc(e,t,r,n,a,o){return{...nw("blockValue",e),...ZNe(),...t,chomping:r,indent:n,value:a,indicatorComment:o}}var xNe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(xNe||(xNe={}));function ssc(e,t){return{...nw("anchor",e),value:t}}function GDr(e,t){return{...nw("comment",e),value:t}}function osc(e,t,r){return{anchor:t,tag:e,middleComments:r}}function asc(e,t){return{...nw("tag",e),value:t}}function Hwi(e,t,r=()=>!1){let n=e.cstNode,a=[],o=null,l=null,A=null;for(let f of n.props){let I=t.text[f.origStart];switch(I){case xNe.Tag:o=o||f,l=asc(t.transformRange(f),e.tag);break;case xNe.Anchor:o=o||f,A=ssc(t.transformRange(f),n.anchor);break;case xNe.Comment:{let C=GDr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(C),!r(C)&&o&&o.origEnd<=f.origStart&&f.origEnd<=n.valueRange.origStart&&a.push(C);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(I)}`)}}return osc(l,A,a)}var bDr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(bDr||(bDr={}));function Ywi(e,t){let r=e.cstNode,n=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-n-a!==0,l=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),A=null,f=Hwi(e,t,I=>{if(!(l.start.offset=0;f--){let I=e.contents[f];if(I.type==="COMMENT"){let C=t.transformNode(I);r&&r.line===C.position.start.line?l.unshift(C):A?n.unshift(C):C.position.start.offset>=e.valueRange.origEnd?o.unshift(C):n.unshift(C)}else A=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${lEt(o[1].position.start)}`);if(l.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${lEt(l[1].position.start)}`);return{comments:n,endComments:a,documentTrailingComment:Tce(o)||null,documentHeadTrailingComment:Tce(l)||null}}function msc(e,t,r){let n=Qwi(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=n===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),l=n===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:l}}function Csc(e,t,r,n){return{...nw("documentHead",e),...zme(r),...AEt(n),children:t}}function _sc(e,t){let r=e.cstNode,{directives:n,comments:a,endComments:o}=ysc(r,t),{position:l,endMarkerPoint:A}=bsc(r,n,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),Csc(l,n,o,f)),documentHeadEndMarkerPoint:A}}function ysc(e,t){let r=[],n=[],a=[],o=!1;for(let l=e.directives.length-1;l>=0;l--){let A=t.transformNode(e.directives[l]);A.type==="comment"?o?n.unshift(A):a.unshift(A):(o=!0,r.unshift(A))}return{directives:r,comments:n,endComments:a}}function bsc(e,t,r){let n=Qwi(r.text.slice(0,e.valueRange.origStart),/---\s*$/);n>0&&!/[\r\n]/.test(r.text[n-1])&&(n=-1);let a=n===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:n,origEnd:n+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:n===-1?null:r.transformOffset(n)}}function Esc(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:n}=_sc(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:l,documentHeadTrailingComment:A}=Isc(e,t,n),f=r(A);return l&&t.comments.push(l),psc(Ume(f.position.start,o),f,a,l)}function Xwi(e,t,r){return{...nw("flowCollection",e),...jme(),...zme(),...t,children:r}}function Ssc(e,t,r){return{...Xwi(e,t,r),type:"flowMapping"}}function Jwi(e,t,r){return{...nw("flowMappingItem",e),...ZNe(),children:[t,r]}}function dEt(e,t){let r=[];for(let n of e)n&&"type"in n&&n.type==="COMMENT"?t.comments.push(t.transformNode(n)):r.push(n);return r}function Uwi(e){let[t,r]=["?",":"].map(n=>{let a=e.find(o=>"char"in o&&o.char===n);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function Kwi(e,t){let r=t;return n=>e.slice(r,r=n)}function jwi(e){let t=[],r=Kwi(e,1),n=!1;for(let a=1;a{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=Uwi(I);return ZDr(A,t,Jwi,C,b)}),o=r[0],l=Tce(r);return Ssc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function Bsc(e,t,r){return{...Xwi(e,t,r),type:"flowSequence"}}function wsc(e,t){return{...nw("flowSequenceItem",e),children:[t]}}function Tsc(e,t){let r=dEt(e.cstNode.items,t),n=jwi(r),a=e.items.map((A,f)=>{if(A.type!=="PAIR"){let I=t.transformNode(A);return wsc(Ume(I.position.start,I.position.end),I)}else{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=Uwi(I);return ZDr(A,t,Jwi,C,b)}}),o=r[0],l=Tce(r);return Bsc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function Rsc(e,t,r){return{...nw("mapping",e),...ZNe(),...t,children:r}}function Nsc(e,t,r){return{...nw("mappingItem",e),...ZNe(),children:[t,r]}}function Dsc(e,t){let r=e.cstNode;r.items.filter(l=>l.type==="MAP_KEY"||l.type==="MAP_VALUE").forEach(l=>FDr(l,t));let n=dEt(r.items,t),a=ksc(n),o=e.items.map((l,A)=>{let f=a[A],[I,C]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return ZDr(l,t,Nsc,I,C)});return Rsc(Ume(o[0].position.start,Tce(o).position.end),t.transformContent(e),o)}function ksc(e){let t=[],r=Kwi(e,0),n=!1;for(let a=0;a=0;n--)if(r.test(e[n]))return n;return-1}function Fsc(e,t){let r=e.cstNode;return xsc(t.transformRange({origStart:r.valueRange.origStart,origEnd:Gsc(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function Zsc(e){return{...e,type:"quoteDouble"}}function Lsc(e,t,r){return{...nw("quoteValue",e),...t,...jme(),value:r}}function zwi(e,t){let r=e.cstNode;return Lsc(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function Vsc(e,t){return Zsc(zwi(e,t))}function Psc(e){return{...e,type:"quoteSingle"}}function Wsc(e,t){return Psc(zwi(e,t))}function Osc(e,t,r){return{...nw("sequence",e),...ZNe(),...zme(),...t,children:r}}function Msc(e,t){return{...nw("sequenceItem",e),...jme(),...zme(),children:t?[t]:[]}}function Hsc(e,t){let r=dEt(e.cstNode.items,t).map((n,a)=>{FDr(n,t);let o=t.transformNode(e.items[a]);return Msc(Ume(t.transformOffset(n.valueRange.origStart),o===null?t.transformOffset(n.valueRange.origStart+1):o.position.end),o)});return Osc(Ume(r[0].position.start,Tce(r).position.end),t.transformContent(e),r)}function Ysc(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return rsc(e,t);case"BLOCK_FOLDED":return csc(e,t);case"BLOCK_LITERAL":return usc(e,t);case"COMMENT":return gsc(e,t);case"DIRECTIVE":return dsc(e,t);case"DOCUMENT":return Esc(e,t);case"FLOW_MAP":return vsc(e,t);case"FLOW_SEQ":return Tsc(e,t);case"MAP":return Dsc(e,t);case"PLAIN":return Fsc(e,t);case"QUOTE_DOUBLE":return Vsc(e,t);case"QUOTE_SINGLE":return Wsc(e,t);case"SEQ":return Hsc(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function Qsc(e,t,r){let n=new SyntaxError(e);return n.name="YAMLSyntaxError",n.source=t,n.position=r,n}function Xsc(e,t){let r=e.source.range||e.source.valueRange;return Qsc(e.message,t.text,t.transformRange(r))}function Jsc(e,t,r){return{offset:e,line:t,column:r}}function Usc(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return Jsc(e,r.line+1,r.column+1)}function Ksc(e,t){return Ume(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function jsc(e){if(!e.setOrigRanges()){let t=r=>{if(zsc(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(qsc(r))return r.origOffset=r.offset,!0};e.forEach(r=>EDr(r,t))}}function EDr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let n=e[r];Array.isArray(n)?n.forEach(a=>EDr(a,t)):EDr(n,t)}}function zsc(e){return typeof e.start=="number"}function qsc(e){return typeof e.offset=="number"}function qwi(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(qwi)}return e}function rwi(e,t,r,n){let a=t(e);return o=>{n(a,o)&&r(e,a=o)}}function $wi(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach($wi),e.type==="document"){let[o,l]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=l.position.start:l.position.start.offset===l.position.end.offset&&(l.position.start=l.position.end=o.position.end)}let r=rwi(e.position,$sc,eoc,noc),n=rwi(e.position,toc,roc,ioc);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),n(Tce(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],l=Tce(a);r(o.position.start),n(l.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in l&&l.trailingComment&&n(l.trailingComment.position.end)}}function $sc(e){return e.start}function eoc(e,t){e.start=t}function toc(e){return e.end}function roc(e,t){e.end=t}function noc(e,t){return t.offsete.offset}var soc=iwi(Qnc(),1),iH=iwi(Xnc(),1),FRu=iH.default.findPair,ZRu=iH.default.toJSON,LRu=iH.default.parseMap,VRu=iH.default.parseSeq,PRu=iH.default.stringifyNumber,WRu=iH.default.stringifyString,ORu=iH.default.Type,MRu=iH.default.YAMLError,HRu=iH.default.YAMLReferenceError,ooc=iH.default.YAMLSemanticError,YRu=iH.default.YAMLSyntaxError,QRu=iH.default.YAMLWarning,{Document:aoc,parseCST:coc}=soc.default;function loc(e){let t=coc(e);jsc(t);let r=t.map(A=>new aoc({merge:!1,keepCstNodes:!0}).parse(A)),n=new Kic(e),a=[],o={text:e,locator:n,comments:a,transformOffset:A=>Usc(A,o),transformRange:A=>Ksc(A,o),transformNode:A=>Ysc(A,o),transformContent:A=>Hwi(A,o)};for(let A of r)for(let f of A.errors)if(!(f instanceof ooc&&f.message==='Map keys must be unique; "<<" is repeated'))throw Xsc(f,o);r.forEach(A=>sEt(A.cstNode));let l=esc(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return jic(l),$wi(l),qwi(l),l}function uoc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var goc=uoc;function Aoc(e){try{let t=loc(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?goc(t.message,{loc:t.position,cause:t}):t}}var doc={astFormat:"yaml",parse:Aoc,hasPragma:Sic,locStart:aEt,locEnd:bic},eTi={yaml:Jic},poc=Iwi;var foc=Object.create,tkr=Object.defineProperty,Ioc=Object.getOwnPropertyDescriptor,hoc=Object.getOwnPropertyNames,moc=Object.getPrototypeOf,Coc=Object.prototype.hasOwnProperty,kTi=e=>{throw TypeError(e)},xTi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),rkr=(e,t)=>{for(var r in t)tkr(e,r,{get:t[r],enumerable:!0})},_oc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of hoc(t))!Coc.call(e,a)&&a!==r&&tkr(e,a,{get:()=>t[a],enumerable:!(n=Ioc(t,a))||n.enumerable});return e},EEt=(e,t,r)=>(r=e!=null?foc(moc(e)):{},_oc(t||!e||!e.__esModule?tkr(r,"default",{value:e,enumerable:!0}):r,e)),yoc=(e,t,r)=>t.has(e)||kTi("Cannot "+r),boc=(e,t,r)=>t.has(e)?kTi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),GJe=(e,t,r)=>(yoc(e,t,"access private method"),r),nkr=xTi((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),Eoc=xTi(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function n(o,l,A){let f=Object.assign({column:0,line:-1},o.start),I=Object.assign({},f,o.end),{linesAbove:C=2,linesBelow:b=3}=A||{},E=f.line,N=f.column,B=I.line,F=I.column,Q=Math.max(E-(C+1),0),X=Math.min(l.length,B+b);E===-1&&(Q=0),B===-1&&(X=l.length);let ae=B-E,ne={};if(ae)for(let ce=0;ce<=ae;ce++){let fe=ce+E;if(!N)ne[fe]=!0;else if(ce===0){let ue=l[fe-1].length;ne[fe]=[N,ue-N+1]}else if(ce===ae)ne[fe]=[0,F];else{let ue=l[fe-ce].length;ne[fe]=[0,ue]}}else N===F?N?ne[E]=[N,0]:ne[E]=!0:ne[E]=[N,F-N];return{start:Q,end:X,markerLines:ne}}function a(o,l,A={}){let f=t(!1),I=o.split(r),{start:C,end:b,markerLines:E}=n(l,I,A),N=l.start&&typeof l.start.column=="number",B=String(b).length,F=o.split(r,b).slice(C,b).map((Q,X)=>{let ae=C+1+X,ne=` ${` ${ae}`.slice(-B)} |`,ce=E[ae],fe=!E[ae+1];if(ce){let ue="";if(Array.isArray(ce)){let de=Q.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var uwi=Lic;function Vic(e,t){let r=t-1;r=lwi(e,r,{backwards:!0}),r=uwi(e,r,{backwards:!0}),r=lwi(e,r,{backwards:!0});let n=uwi(e,r,{backwards:!0});return r!==n}var Pic=Vic,Wic=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Oic=Wic;function Qwi(e,t){let{node:r}=e;if(r.type==="root"&&t.filepath&&/(?:[/\\]|^)\.(?:prettier|stylelint|lintstaged)rc$/u.test(t.filepath))return async n=>{let a=await n(t.originalText,{parser:"json"});return a?[a,Y_]:void 0}}Qwi.getVisitorKeys=()=>[];var Mic=Qwi,TJe=null;function DJe(e){if(TJe!==null&&typeof TJe.property){let t=TJe;return TJe=DJe.prototype=null,t}return TJe=DJe.prototype=e??Object.create(null),new DJe}var Hic=10;for(let e=0;e<=Hic;e++)DJe();function Yic(e){return DJe(e)}function Qic(e,t="type"){Yic(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Xic=Qic,Jic=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),Uic=Jic,Kic=Xic(Uic),jic=Kic;function lEt(e){return e.position.start.offset}function zic(e){return e.position.end.offset}function qic(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function $ic(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function esc(e){return`# @format + +${e}`}function tsc(e){return Array.isArray(e)&&e.length>0}var GJe=tsc;function Dee(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Xwi(e,t,r){return t("children"in e?{...e,children:e.children.map(n=>Xwi(n,t,e))}:e,r)}function RJe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function rsc(e,t){let r=0,n=t.length;for(let a=e.position.end.offset-1;ao===0&&o===l.length-1?a:o!==0&&o!==l.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?n.map(a=>a.length===0?[]:[a]):n.map(a=>a.length===0?[]:Kwi(a)).reduce((a,o,l)=>l!==0&&n[l-1].length>0&&o.length>0&&!(e==="quoteDouble"&&nH(!1,nH(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...nH(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function osc(e,{parentIndent:t,isLastDescendant:r,options:n}){let a=e.position.start.line===e.position.end.line?"":n.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let l=a.split(` +`).map(f=>f.slice(o));if(n.proseWrap==="preserve"||e.type==="blockLiteral")return A(l.map(f=>f.length===0?[]:[f]));return A(l.map(f=>f.length===0?[]:Kwi(f)).reduce((f,I,C)=>C!==0&&l[C-1].length>0&&I.length>0&&!/^\s/u.test(I[0])&&!/^\s|\s$/u.test(nH(!1,f,-1))?[...f.slice(0,-1),[...nH(!1,f,-1),...I]]:[...f,I],[]).map(f=>f.reduce((I,C)=>I.length>0&&/\s$/u.test(nH(!1,I,-1))?[...I.slice(0,-1),nH(!1,I,-1)+" "+C]:[...I,C],[])).map(f=>n.proseWrap==="never"?[f.join(" ")]:f));function A(f){if(e.chomping==="keep")return nH(!1,f,-1).length===0?f.slice(0,-1):f;let I=0;for(let C=f.length-1;C>=0&&f[C].length===0;C--)I++;return I===0?f:I>=2&&!r?f.slice(0,-(I-1)):f.slice(0,-I)}}function BDr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var IDr=new WeakMap;function jwi(e,t){let{node:r,root:n}=e,a;return IDr.has(n)?a=IDr.get(n):(a=new Set,IDr.set(n,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),rsc(r,t)&&!zwi(e.parent))?Ywi:""}function zwi(e){return o4(e)&&!Dee(e,["documentHead","documentBody","flowMapping","flowSequence"])}function rH(e,t){return AEt(" ".repeat(e),t)}function asc(e,t,r){let{node:n}=e,a=e.ancestors.filter(I=>I.type==="sequence"||I.type==="mapping").length,o=Jwi(e),l=[n.type==="blockFolded"?">":"|"];n.indent!==null&&l.push(n.indent.toString()),n.chomping!=="clip"&&l.push(n.chomping==="keep"?"+":"-"),Uwi(n)&&l.push(" ",t("indicatorComment"));let A=osc(n,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[I,C]of A.entries())I===0&&f.push(Y_),f.push(Hwi(bV(xJe,C))),I!==A.length-1?f.push(C.length===0?Y_:kic(SDr)):n.chomping==="keep"&&o&&f.push(awi(C.length===0?Y_:SDr));return n.indent===null?l.push(xic(rH(r.tabWidth,f))):l.push(awi(rH(n.indent-1+a,f))),l}var csc=asc;function Awi(e,t,r){let{node:n}=e,a=n.type==="flowMapping",o=a?"{":"[",l=a?"}":"]",A=Ywi;a&&n.children.length>0&&r.bracketSpacing&&(A=xJe);let f=nH(!1,n.children,-1),I=f?.type==="flowMappingItem"&&uEt(f.key)&&uEt(f.value);return[o,rH(r.tabWidth,[A,lsc(e,t,r),r.trailingComma==="none"?"":EDr(","),o4(n)?[Y_,bV(Y_,e.map(t,"endComments"))]:""]),I?"":A,l]}function lsc(e,t,r){return e.map(({isLast:n,node:a,next:o})=>[t(),n?"":[",",xJe,a.position.start.line!==o.position.start.line?jwi(e,r.originalText):""]],"children")}function usc(e,t,r){var n;let{node:a,parent:o}=e,{key:l,value:A}=a,f=uEt(l),I=uEt(A);if(f&&I)return": ";let C=t("key"),b=gsc(a)?" ":"";if(I)return a.type==="flowMappingItem"&&o.type==="flowMapping"?C:a.type==="mappingItem"&&hDr(l.content,r)&&!s4(l.content)&&((n=o.tag)==null?void 0:n.value)!=="tag:yaml.org,2002:set"?[C,b,":"]:["? ",rH(2,C)];let E=t("value");if(f)return[": ",rH(2,E)];if(Tce(A)||!BDr(l.content))return["? ",rH(2,C),Y_,...e.map(()=>[t(),Y_],"value","leadingComments"),": ",rH(2,E)];if(Asc(l.content)&&!Tce(l.content)&&!GNe(l.content)&&!s4(l.content)&&!o4(l)&&!Tce(A.content)&&!GNe(A.content)&&!o4(A)&&hDr(A.content,r))return[C,b,": ",E];let N=Symbol("mappingKey"),B=cEt([EDr("? "),cEt(rH(2,C),{id:N})]),F=[Y_,": ",rH(2,E)],Q=[b,":"];Tce(A.content)||o4(A)&&A.content&&!Dee(A.content,["mapping","sequence"])||o.type==="mapping"&&s4(l.content)&&BDr(A.content)||Dee(A.content,["mapping","sequence"])&&A.content.tag===null&&A.content.anchor===null?Q.push(Y_):A.content?Q.push(xJe):s4(A)&&Q.push(" "),Q.push(E);let X=rH(r.tabWidth,Q);return hDr(l.content,r)&&!Tce(l.content)&&!GNe(l.content)&&!o4(l)?cwi([[C,X]]):cwi([[B,EDr(F,X,{groupId:N})]])}function hDr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` +`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function gsc(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function Asc(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var dsc=usc;function psc(e){return Xwi(e,fsc)}function fsc(e){switch(e.type){case"document":RJe(e,"head",()=>e.children[0]),RJe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":RJe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":RJe(e,"key",()=>e.children[0]),RJe(e,"value",()=>e.children[1]);break}return e}var Isc=psc;function hsc(e,t,r){let{node:n}=e,a=[];n.type!=="mappingValue"&&Tce(n)&&a.push([bV(Y_,e.map(r,"leadingComments")),Y_]);let{tag:o,anchor:l}=n;o&&a.push(r("tag")),o&&l&&a.push(" "),l&&a.push(r("anchor"));let A="";return Dee(n,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!Jwi(e)&&(A=jwi(e,t.originalText)),(o||l)&&(Dee(n,["sequence","mapping"])&&!GNe(n)?a.push(Y_):a.push(" ")),GNe(n)&&a.push([n.middleComments.length===1?"":Y_,bV(Y_,e.map(r,"middleComments")),Y_]),nsc(e)?a.push(Nic(t.originalText.slice(n.position.start.offset,n.position.end.offset).trimEnd())):a.push(cEt(msc(e,t,r))),s4(n)&&!Dee(n,["document","documentHead"])&&a.push(Gic([n.type==="mappingValue"&&!n.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&BDr(n)?"":LDr,r("trailingComment")])),zwi(n)&&a.push(rH(n.type==="sequenceItem"?2:0,[Y_,bV(Y_,e.map(({node:f})=>[Pic(t.originalText,lEt(f))?Y_:"",r()],"endComments"))])),a.push(A),a}function msc(e,t,r){let{node:n}=e;switch(n.type){case"root":{let a=[];e.each(({node:l,next:A,isFirst:f})=>{f||a.push(Y_),a.push(r()),qwi(l,A)?(a.push(Y_,"..."),s4(l)&&a.push(" ",r("trailingComment"))):A&&!s4(A.head)&&a.push(Y_,"---")},"children");let o=vDr(n);return(!Dee(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(Y_),a}case"document":{let a=[];return _sc(e,t)==="head"&&((n.head.children.length>0||n.head.endComments.length>0)&&a.push(r("head")),s4(n.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),Csc(n)&&a.push(r("body")),bV(Y_,a)}case"documentHead":return bV(Y_,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=n,l="";if(a.length>0&&o.length>0){let A=vDr(n);Dee(A,["blockFolded","blockLiteral"])?A.chomping!=="keep"&&(l=[Y_,Y_]):l=Y_}return[bV(Y_,e.map(r,"children")),l,bV(Y_,e.map(r,"endComments"))]}case"directive":return["%",bV(" ",[n.name,...n.parameters])];case"comment":return["#",n.value];case"alias":return["*",n.value];case"tag":return t.originalText.slice(n.position.start.offset,n.position.end.offset);case"anchor":return["&",n.value];case"plain":return NJe(n.type,t.originalText.slice(n.position.start.offset,n.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',l=t.originalText.slice(n.position.start.offset+1,n.position.end.offset-1);if(n.type==="quoteSingle"&&l.includes("\\")||n.type==="quoteDouble"&&/\\[^"]/u.test(l)){let f=n.type==="quoteDouble"?o:a;return[f,NJe(n.type,l,t),f]}if(l.includes(o))return[a,NJe(n.type,n.type==="quoteDouble"?fDr(!1,fDr(!1,l,String.raw`\"`,o),"'",a.repeat(2)):l,t),a];if(l.includes(a))return[o,NJe(n.type,n.type==="quoteSingle"?fDr(!1,l,"''",a):l,t),o];let A=t.singleQuote?a:o;return[A,NJe(n.type,l,t),A]}case"blockFolded":case"blockLiteral":return csc(e,r,t);case"mapping":case"sequence":return bV(Y_,e.map(r,"children"));case"sequenceItem":return["- ",rH(2,n.content?r("content"):"")];case"mappingKey":case"mappingValue":return n.content?r("content"):"";case"mappingItem":case"flowMappingItem":return dsc(e,r,t);case"flowMapping":return Awi(e,r,t);case"flowSequence":return Awi(e,r,t);case"flowSequenceItem":return r("content");default:throw new Oic(n,"YAML")}}function Csc(e){return e.body.children.length>0||o4(e.body)}function qwi(e,t){return s4(e)||t&&(t.head.children.length>0||o4(t.head))}function _sc(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(lEt(r),lEt(r)+4))||r.head.children.length>0||o4(r.head)||s4(r.head))return"head";let n=e.next;return qwi(r,n)?!1:n?"root":!1}function NJe(e,t,r){let n=ssc(e,t,r);return bV(Y_,n.map(a=>Hwi(bV(xJe,a))))}function $wi(e,t){if(Dee(e))switch(e.type){case"comment":if(qic(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}$wi.ignoredProperties=new Set(["position"]);var ysc={preprocess:Isc,embed:Mic,print:hsc,massageAstNode:$wi,insertPragma:esc,getVisitorKeys:jic},bsc=ysc,eTi=[{linguistLanguageId:407,name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],mDr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Esc={bracketSpacing:mDr.bracketSpacing,singleQuote:mDr.singleQuote,proseWrap:mDr.proseWrap},tTi=Esc,VDr={};mwi(VDr,{yaml:()=>Moc});var sEt=` +`,dwi="\r",Ssc=function(){function e(t){this.length=t.length;for(var r=[0],n=0;nthis.length)return null;for(var r=0,n=this.offsets;n[r+1]<=t;)r++;var a=t-n[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,n=t.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],n=t===this.offsets.length-1?this.length:this.offsets[t+1];return n-r},e}();function mO(e,t=null){"children"in e&&e.children.forEach(r=>mO(r,e)),"anchor"in e&&e.anchor&&mO(e.anchor,e),"tag"in e&&e.tag&&mO(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>mO(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>mO(r,e)),"indicatorComment"in e&&e.indicatorComment&&mO(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&mO(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>mO(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function gEt(e){return`${e.line}:${e.column}`}function vsc(e){mO(e);let t=Bsc(e),r=e.children.slice();e.comments.sort((n,a)=>n.position.start.offset-a.position.end.offset).filter(n=>!n._parent).forEach(n=>{for(;r.length>1&&n.position.start.line>r[0].position.end.line;)r.shift();wsc(n,t,r[0])})}function Bsc(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return rTi(t,e),t}function rTi(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:n}=e[r.line-1];(!n||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:n}=e[r.line-1];(!n||r.column>=n.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:n}=t.position,a=[n.line].concat(r.line===n.line?[]:r.line);for(let o of a){let l=e[o-1].trailingNode;(!l||n.column>=l.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{rTi(e,r)})}}function wsc(e,t,r){let n=e.position.start.line,{trailingAttachableNode:a}=t[n-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${gEt(e.position.start)}`);mO(e,a),a.trailingComment=e;return}for(let l=n;l>=r.position.start.line;l--){let{trailingNode:A}=t[l-1],f;if(A)f=A;else if(l!==n&&t[l-1].comment)f=t[l-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[I,C]=f.children;f=nTi(I)?I:C}for(;;){if(Tsc(f,e)){mO(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let l=n+1;l<=r.position.end.line;l++){let{leadingAttachableNode:A}=t[l-1];if(A){mO(e,A),A.leadingComments.push(e);return}}let o=r.children[1];mO(e,o),o.endComments.push(e)}function Tsc(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||nTi(e));default:return!1}}function nTi(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function nw(e,t){return{type:e,position:t}}function Rsc(e,t,r){return{...nw("root",e),children:t,comments:r}}function aEt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):aEt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):aEt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&aEt(e.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error(`Unexpected node type ${JSON.stringify(e.type)}`)}}function VNe(){return{leadingComments:[]}}function pEt(e=null){return{trailingComment:e}}function zme(){return{...VNe(),...pEt()}}function Nsc(e,t,r){return{...nw("alias",e),...zme(),...t,value:r}}function Dsc(e,t){let r=e.cstNode;return Nsc(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function ksc(e){return{...e,type:"blockFolded"}}function xsc(e,t,r,n,a,o){return{...nw("blockValue",e),...VNe(),...t,chomping:r,indent:n,value:a,indicatorComment:o}}var FNe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(FNe||(FNe={}));function Gsc(e,t){return{...nw("anchor",e),value:t}}function PDr(e,t){return{...nw("comment",e),value:t}}function Fsc(e,t,r){return{anchor:t,tag:e,middleComments:r}}function Zsc(e,t){return{...nw("tag",e),value:t}}function iTi(e,t,r=()=>!1){let n=e.cstNode,a=[],o=null,l=null,A=null;for(let f of n.props){let I=t.text[f.origStart];switch(I){case FNe.Tag:o=o||f,l=Zsc(t.transformRange(f),e.tag);break;case FNe.Anchor:o=o||f,A=Gsc(t.transformRange(f),n.anchor);break;case FNe.Comment:{let C=PDr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(C),!r(C)&&o&&o.origEnd<=f.origStart&&f.origEnd<=n.valueRange.origStart&&a.push(C);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(I)}`)}}return Fsc(l,A,a)}var wDr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(wDr||(wDr={}));function sTi(e,t){let r=e.cstNode,n=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-n-a!==0,l=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),A=null,f=iTi(e,t,I=>{if(!(l.start.offset=0;f--){let I=e.contents[f];if(I.type==="COMMENT"){let C=t.transformNode(I);r&&r.line===C.position.start.line?l.unshift(C):A?n.unshift(C):C.position.start.offset>=e.valueRange.origEnd?o.unshift(C):n.unshift(C)}else A=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${gEt(o[1].position.start)}`);if(l.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${gEt(l[1].position.start)}`);return{comments:n,endComments:a,documentTrailingComment:Rce(o)||null,documentHeadTrailingComment:Rce(l)||null}}function Jsc(e,t,r){let n=oTi(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=n===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),l=n===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:l}}function Usc(e,t,r,n){return{...nw("documentHead",e),...qme(r),...pEt(n),children:t}}function Ksc(e,t){let r=e.cstNode,{directives:n,comments:a,endComments:o}=jsc(r,t),{position:l,endMarkerPoint:A}=zsc(r,n,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),Usc(l,n,o,f)),documentHeadEndMarkerPoint:A}}function jsc(e,t){let r=[],n=[],a=[],o=!1;for(let l=e.directives.length-1;l>=0;l--){let A=t.transformNode(e.directives[l]);A.type==="comment"?o?n.unshift(A):a.unshift(A):(o=!0,r.unshift(A))}return{directives:r,comments:n,endComments:a}}function zsc(e,t,r){let n=oTi(r.text.slice(0,e.valueRange.origStart),/---\s*$/);n>0&&!/[\r\n]/.test(r.text[n-1])&&(n=-1);let a=n===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:n,origEnd:n+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:n===-1?null:r.transformOffset(n)}}function qsc(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:n}=Ksc(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:l,documentHeadTrailingComment:A}=Qsc(e,t,n),f=r(A);return l&&t.comments.push(l),Hsc(Kme(f.position.start,o),f,a,l)}function aTi(e,t,r){return{...nw("flowCollection",e),...zme(),...qme(),...t,children:r}}function $sc(e,t,r){return{...aTi(e,t,r),type:"flowMapping"}}function cTi(e,t,r){return{...nw("flowMappingItem",e),...VNe(),children:[t,r]}}function fEt(e,t){let r=[];for(let n of e)n&&"type"in n&&n.type==="COMMENT"?t.comments.push(t.transformNode(n)):r.push(n);return r}function lTi(e){let[t,r]=["?",":"].map(n=>{let a=e.find(o=>"char"in o&&o.char===n);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function uTi(e,t){let r=t;return n=>e.slice(r,r=n)}function gTi(e){let t=[],r=uTi(e,1),n=!1;for(let a=1;a{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=lTi(I);return ODr(A,t,cTi,C,b)}),o=r[0],l=Rce(r);return $sc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function toc(e,t,r){return{...aTi(e,t,r),type:"flowSequence"}}function roc(e,t){return{...nw("flowSequenceItem",e),children:[t]}}function noc(e,t){let r=fEt(e.cstNode.items,t),n=gTi(r),a=e.items.map((A,f)=>{if(A.type!=="PAIR"){let I=t.transformNode(A);return roc(Kme(I.position.start,I.position.end),I)}else{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=lTi(I);return ODr(A,t,cTi,C,b)}}),o=r[0],l=Rce(r);return toc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function ioc(e,t,r){return{...nw("mapping",e),...VNe(),...t,children:r}}function soc(e,t,r){return{...nw("mappingItem",e),...VNe(),children:[t,r]}}function ooc(e,t){let r=e.cstNode;r.items.filter(l=>l.type==="MAP_KEY"||l.type==="MAP_VALUE").forEach(l=>WDr(l,t));let n=fEt(r.items,t),a=aoc(n),o=e.items.map((l,A)=>{let f=a[A],[I,C]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return ODr(l,t,soc,I,C)});return ioc(Kme(o[0].position.start,Rce(o).position.end),t.transformContent(e),o)}function aoc(e){let t=[],r=uTi(e,0),n=!1;for(let a=0;a=0;n--)if(r.test(e[n]))return n;return-1}function uoc(e,t){let r=e.cstNode;return coc(t.transformRange({origStart:r.valueRange.origStart,origEnd:loc(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function goc(e){return{...e,type:"quoteDouble"}}function Aoc(e,t,r){return{...nw("quoteValue",e),...t,...zme(),value:r}}function ATi(e,t){let r=e.cstNode;return Aoc(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function doc(e,t){return goc(ATi(e,t))}function poc(e){return{...e,type:"quoteSingle"}}function foc(e,t){return poc(ATi(e,t))}function Ioc(e,t,r){return{...nw("sequence",e),...VNe(),...qme(),...t,children:r}}function hoc(e,t){return{...nw("sequenceItem",e),...zme(),...qme(),children:t?[t]:[]}}function moc(e,t){let r=fEt(e.cstNode.items,t).map((n,a)=>{WDr(n,t);let o=t.transformNode(e.items[a]);return hoc(Kme(t.transformOffset(n.valueRange.origStart),o===null?t.transformOffset(n.valueRange.origStart+1):o.position.end),o)});return Ioc(Kme(r[0].position.start,Rce(r).position.end),t.transformContent(e),r)}function Coc(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return Dsc(e,t);case"BLOCK_FOLDED":return Lsc(e,t);case"BLOCK_LITERAL":return Psc(e,t);case"COMMENT":return Wsc(e,t);case"DIRECTIVE":return Msc(e,t);case"DOCUMENT":return qsc(e,t);case"FLOW_MAP":return eoc(e,t);case"FLOW_SEQ":return noc(e,t);case"MAP":return ooc(e,t);case"PLAIN":return uoc(e,t);case"QUOTE_DOUBLE":return doc(e,t);case"QUOTE_SINGLE":return foc(e,t);case"SEQ":return moc(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function _oc(e,t,r){let n=new SyntaxError(e);return n.name="YAMLSyntaxError",n.source=t,n.position=r,n}function yoc(e,t){let r=e.source.range||e.source.valueRange;return _oc(e.message,t.text,t.transformRange(r))}function boc(e,t,r){return{offset:e,line:t,column:r}}function Eoc(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return boc(e,r.line+1,r.column+1)}function Soc(e,t){return Kme(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function voc(e){if(!e.setOrigRanges()){let t=r=>{if(Boc(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(woc(r))return r.origOffset=r.offset,!0};e.forEach(r=>TDr(r,t))}}function TDr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let n=e[r];Array.isArray(n)?n.forEach(a=>TDr(a,t)):TDr(n,t)}}function Boc(e){return typeof e.start=="number"}function woc(e){return typeof e.offset=="number"}function dTi(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(dTi)}return e}function hwi(e,t,r,n){let a=t(e);return o=>{n(a,o)&&r(e,a=o)}}function pTi(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach(pTi),e.type==="document"){let[o,l]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=l.position.start:l.position.start.offset===l.position.end.offset&&(l.position.start=l.position.end=o.position.end)}let r=hwi(e.position,Toc,Roc,koc),n=hwi(e.position,Noc,Doc,xoc);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),n(Rce(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],l=Rce(a);r(o.position.start),n(l.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in l&&l.trailingComment&&n(l.trailingComment.position.end)}}function Toc(e){return e.start}function Roc(e,t){e.start=t}function Noc(e){return e.end}function Doc(e,t){e.end=t}function koc(e,t){return t.offsete.offset}var Goc=Cwi(_ic(),1),iH=Cwi(yic(),1),PNu=iH.default.findPair,WNu=iH.default.toJSON,ONu=iH.default.parseMap,MNu=iH.default.parseSeq,HNu=iH.default.stringifyNumber,YNu=iH.default.stringifyString,QNu=iH.default.Type,XNu=iH.default.YAMLError,JNu=iH.default.YAMLReferenceError,Foc=iH.default.YAMLSemanticError,UNu=iH.default.YAMLSyntaxError,KNu=iH.default.YAMLWarning,{Document:Zoc,parseCST:Loc}=Goc.default;function Voc(e){let t=Loc(e);voc(t);let r=t.map(A=>new Zoc({merge:!1,keepCstNodes:!0}).parse(A)),n=new Ssc(e),a=[],o={text:e,locator:n,comments:a,transformOffset:A=>Eoc(A,o),transformRange:A=>Soc(A,o),transformNode:A=>Coc(A,o),transformContent:A=>iTi(A,o)};for(let A of r)for(let f of A.errors)if(!(f instanceof Foc&&f.message==='Map keys must be unique; "<<" is repeated'))throw yoc(f,o);r.forEach(A=>aEt(A.cstNode));let l=Rsc(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return vsc(l),pTi(l),dTi(l),l}function Poc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Woc=Poc;function Ooc(e){try{let t=Voc(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?Woc(t.message,{loc:t.position,cause:t}):t}}var Moc={astFormat:"yaml",parse:Ooc,hasPragma:$ic,locStart:lEt,locEnd:zic},fTi={yaml:bsc},Hoc=Dwi;var Yoc=Object.create,okr=Object.defineProperty,Qoc=Object.getOwnPropertyDescriptor,Xoc=Object.getOwnPropertyNames,Joc=Object.getPrototypeOf,Uoc=Object.prototype.hasOwnProperty,JTi=e=>{throw TypeError(e)},UTi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),akr=(e,t)=>{for(var r in t)okr(e,r,{get:t[r],enumerable:!0})},Koc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Xoc(t))!Uoc.call(e,a)&&a!==r&&okr(e,a,{get:()=>t[a],enumerable:!(n=Qoc(t,a))||n.enumerable});return e},vEt=(e,t,r)=>(r=e!=null?Yoc(Joc(e)):{},Koc(t||!e||!e.__esModule?okr(r,"default",{value:e,enumerable:!0}):r,e)),joc=(e,t,r)=>t.has(e)||JTi("Cannot "+r),zoc=(e,t,r)=>t.has(e)?JTi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),ZJe=(e,t,r)=>(joc(e,t,"access private method"),r),ckr=UTi((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),qoc=UTi(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function n(o,l,A){let f=Object.assign({column:0,line:-1},o.start),I=Object.assign({},f,o.end),{linesAbove:C=2,linesBelow:b=3}=A||{},E=f.line,N=f.column,B=I.line,F=I.column,Q=Math.max(E-(C+1),0),X=Math.min(l.length,B+b);E===-1&&(Q=0),B===-1&&(X=l.length);let ae=B-E,ne={};if(ae)for(let ce=0;ce<=ae;ce++){let fe=ce+E;if(!N)ne[fe]=!0;else if(ce===0){let ue=l[fe-1].length;ne[fe]=[N,ue-N+1]}else if(ce===ae)ne[fe]=[0,F];else{let ue=l[fe-ce].length;ne[fe]=[0,ue]}}else N===F?N?ne[E]=[N,0]:ne[E]=!0:ne[E]=[N,F-N];return{start:Q,end:X,markerLines:ne}}function a(o,l,A={}){let f=t(!1),I=o.split(r),{start:C,end:b,markerLines:E}=n(l,I,A),N=l.start&&typeof l.start.column=="number",B=String(b).length,F=o.split(r,b).slice(C,b).map((Q,X)=>{let ae=C+1+X,ne=` ${` ${ae}`.slice(-B)} |`,ce=E[ae],fe=!E[ae+1];if(ce){let ue="";if(Array.isArray(ce)){let de=Q.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` `,f.gutter(ne.replace(/\d/g," "))," ",de,f.marker("^").repeat(be)].join(""),fe&&A.message&&(ue+=" "+f.message(A.message))}return[f.marker(">"),f.gutter(ne),Q.length>0?` ${Q}`:"",ue].join("")}else return` ${f.gutter(ne)}${Q.length>0?` ${Q}`:""}`}).join(` `);return A.message&&!N&&(F=`${" ".repeat(B+1)}${A.message} -${F}`),F}e.codeFrameColumns=a}),Soc={};rkr(Soc,{__debug:()=>klc,check:()=>Nlc,doc:()=>fRi,format:()=>kEt,formatWithCursor:()=>hRi,getSupportInfo:()=>Dlc,util:()=>IRi,version:()=>ilc});var voc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},SEt=voc;function a4(){}a4.prototype={diff:function(e,t){var r,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n.callback;typeof n=="function"&&(a=n,n={});var o=this;function l(ne){return ne=o.postProcess(ne,n),a?(setTimeout(function(){a(ne)},0),!0):ne}e=this.castInput(e,n),t=this.castInput(t,n),e=this.removeEmpty(this.tokenize(e,n)),t=this.removeEmpty(this.tokenize(t,n));var A=t.length,f=e.length,I=1,C=A+f;n.maxEditLength!=null&&(C=Math.min(C,n.maxEditLength));var b=(r=n.timeout)!==null&&r!==void 0?r:1/0,E=Date.now()+b,N=[{oldPos:-1,lastComponent:void 0}],B=this.extractCommon(N[0],t,e,0,n);if(N[0].oldPos+1>=f&&B+1>=A)return l(tTi(o,N[0].lastComponent,t,e,o.useLongestToken));var F=-1/0,Q=1/0;function X(){for(var ne=Math.max(F,-I);ne<=Math.min(Q,I);ne+=2){var ce=void 0,fe=N[ne-1],ue=N[ne+1];fe&&(N[ne-1]=void 0);var de=!1;if(ue){var be=ue.oldPos-ne;de=ue&&0<=be&&be=f&&B+1>=A)return l(tTi(o,ce.lastComponent,t,e,o.useLongestToken));N[ne]=ce,ce.oldPos+1>=f&&(Q=Math.min(Q,ne-1)),B+1>=A&&(F=Math.max(F,ne+1))}I++}if(a)(function ne(){setTimeout(function(){if(I>C||Date.now()>E)return a();X()||ne()},0)})();else for(;I<=C&&Date.now()<=E;){var ae=X();if(ae)return ae}},addToPath:function(e,t,r,n,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+n,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,n,a){for(var o=t.length,l=r.length,A=e.oldPos,f=A-n,I=0;f+1N.length?F:N}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}return o}var ANu=new a4;function rTi(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var n=t.length;e.length0&&t[l]!=t[o];)o=a[o];t[l]==t[o]&&o++}o=0;for(var A=r;A0&&e[A]!=t[o];)o=a[o];e[A]==t[o]&&o++}return o}var _Et="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",woc=new RegExp("[".concat(_Et,"]+|\\s+|[^").concat(_Et,"]"),"ug"),vEt=new a4;vEt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};vEt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(woc)||[];var n=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?n.push(o):n.push(n.pop()+o):/\s/.test(a)?n[n.length-1]==a?n.push(n.pop()+o):n.push(a+o):n.push(o),a=o}),n};vEt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};vEt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,n=null,a=null;return e.forEach(function(o){o.added?n=o:o.removed?a=o:((n||a)&&sTi(r,a,n,o),r=o,n=null,a=null)}),(n||a)&&sTi(r,a,n,null),e};function sTi(e,t,r,n){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],l=r.value.match(/^\s*/)[0],A=r.value.match(/\s*$/)[0];if(e){var f=rTi(a,l);e.value=YDr(e.value,l,f),t.value=FJe(t.value,f),r.value=FJe(r.value,f)}if(n){var I=nTi(o,A);n.value=HDr(n.value,A,I),t.value=pEt(t.value,I),r.value=pEt(r.value,I)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),n&&(n.value=n.value.replace(/^\s*/,""));else if(e&&n){var C=n.value.match(/^\s*/)[0],b=t.value.match(/^\s*/)[0],E=t.value.match(/\s*$/)[0],N=rTi(C,b);t.value=FJe(t.value,N);var B=nTi(FJe(C,N),E);t.value=pEt(t.value,B),n.value=HDr(n.value,C,B),e.value=YDr(e.value,C,C.slice(0,C.length-B.length))}else if(n){var F=n.value.match(/^\s*/)[0],Q=t.value.match(/\s*$/)[0],X=iTi(Q,F);t.value=pEt(t.value,X)}else if(e){var ae=e.value.match(/\s*$/)[0],ne=t.value.match(/^\s*/)[0],ce=iTi(ae,ne);t.value=FJe(t.value,ce)}}var Toc=new a4;Toc.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(_Et,"]+|[^\\S\\n\\r]+|[^").concat(_Et,"]"),"ug");return e.match(t)||[]};var ikr=new a4;ikr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var r=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var a=0;aauc,check:()=>suc,doc:()=>NRi,format:()=>GEt,formatWithCursor:()=>kRi,getSupportInfo:()=>ouc,util:()=>DRi,version:()=>xlc});var eac=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},BEt=eac;function a4(){}a4.prototype={diff:function(e,t){var r,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n.callback;typeof n=="function"&&(a=n,n={});var o=this;function l(ne){return ne=o.postProcess(ne,n),a?(setTimeout(function(){a(ne)},0),!0):ne}e=this.castInput(e,n),t=this.castInput(t,n),e=this.removeEmpty(this.tokenize(e,n)),t=this.removeEmpty(this.tokenize(t,n));var A=t.length,f=e.length,I=1,C=A+f;n.maxEditLength!=null&&(C=Math.min(C,n.maxEditLength));var b=(r=n.timeout)!==null&&r!==void 0?r:1/0,E=Date.now()+b,N=[{oldPos:-1,lastComponent:void 0}],B=this.extractCommon(N[0],t,e,0,n);if(N[0].oldPos+1>=f&&B+1>=A)return l(ITi(o,N[0].lastComponent,t,e,o.useLongestToken));var F=-1/0,Q=1/0;function X(){for(var ne=Math.max(F,-I);ne<=Math.min(Q,I);ne+=2){var ce=void 0,fe=N[ne-1],ue=N[ne+1];fe&&(N[ne-1]=void 0);var de=!1;if(ue){var be=ue.oldPos-ne;de=ue&&0<=be&&be=f&&B+1>=A)return l(ITi(o,ce.lastComponent,t,e,o.useLongestToken));N[ne]=ce,ce.oldPos+1>=f&&(Q=Math.min(Q,ne-1)),B+1>=A&&(F=Math.max(F,ne+1))}I++}if(a)(function ne(){setTimeout(function(){if(I>C||Date.now()>E)return a();X()||ne()},0)})();else for(;I<=C&&Date.now()<=E;){var ae=X();if(ae)return ae}},addToPath:function(e,t,r,n,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+n,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,n,a){for(var o=t.length,l=r.length,A=e.oldPos,f=A-n,I=0;f+1N.length?F:N}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}return o}var IDu=new a4;function hTi(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var n=t.length;e.length0&&t[l]!=t[o];)o=a[o];t[l]==t[o]&&o++}o=0;for(var A=r;A0&&e[A]!=t[o];)o=a[o];e[A]==t[o]&&o++}return o}var bEt="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",rac=new RegExp("[".concat(bEt,"]+|\\s+|[^").concat(bEt,"]"),"ug"),wEt=new a4;wEt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};wEt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(rac)||[];var n=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?n.push(o):n.push(n.pop()+o):/\s/.test(a)?n[n.length-1]==a?n.push(n.pop()+o):n.push(a+o):n.push(o),a=o}),n};wEt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};wEt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,n=null,a=null;return e.forEach(function(o){o.added?n=o:o.removed?a=o:((n||a)&&_Ti(r,a,n,o),r=o,n=null,a=null)}),(n||a)&&_Ti(r,a,n,null),e};function _Ti(e,t,r,n){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],l=r.value.match(/^\s*/)[0],A=r.value.match(/\s*$/)[0];if(e){var f=hTi(a,l);e.value=KDr(e.value,l,f),t.value=LJe(t.value,f),r.value=LJe(r.value,f)}if(n){var I=mTi(o,A);n.value=UDr(n.value,A,I),t.value=IEt(t.value,I),r.value=IEt(r.value,I)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),n&&(n.value=n.value.replace(/^\s*/,""));else if(e&&n){var C=n.value.match(/^\s*/)[0],b=t.value.match(/^\s*/)[0],E=t.value.match(/\s*$/)[0],N=hTi(C,b);t.value=LJe(t.value,N);var B=mTi(LJe(C,N),E);t.value=IEt(t.value,B),n.value=UDr(n.value,C,B),e.value=KDr(e.value,C,C.slice(0,C.length-B.length))}else if(n){var F=n.value.match(/^\s*/)[0],Q=t.value.match(/\s*$/)[0],X=CTi(Q,F);t.value=IEt(t.value,X)}else if(e){var ae=e.value.match(/\s*$/)[0],ne=t.value.match(/^\s*/)[0],ce=CTi(ae,ne);t.value=LJe(t.value,ce)}}var nac=new a4;nac.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(bEt,"]+|[^\\S\\n\\r]+|[^").concat(bEt,"]"),"ug");return e.match(t)||[]};var lkr=new a4;lkr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var r=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var a=0;a"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(XDr(e,null,null,a),a," ")};LJe.equals=function(e,t,r){return a4.prototype.equals.call(LJe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function XDr(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(zDr(e,null,null,a),a," ")};PJe.equals=function(e,t,r){return a4.prototype.equals.call(PJe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function zDr(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},aD=Goc;function Foc(e){if(typeof e=="string")return iCe;if(Array.isArray(e))return xee;if(!e)return;let{type:t}=e;if(FTi.has(t))return t}var oCe=Foc,Zoc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Loc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(oCe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=Zoc([...FTi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var Voc=class extends Error{name="InvalidDocError";constructor(e){super(Loc(e)),this.doc=e}},MNe=Voc,oTi={};function Poc(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===oTi){r(a.pop());continue}r&&a.push(o,oTi);let l=oCe(o);if(!l)throw new MNe(o);if(t?.(o)!==!1)switch(l){case xee:case Cj:{let A=l===xee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case CO:a.push(o.flatContents,o.breakContents);break;case SV:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Fee:case Gee:case Lee:case _j:case Vee:a.push(o.contents);break;case iCe:case sCe:case Zee:case Pee:case Mk:case sH:break;default:throw new MNe(o)}}}var okr=Poc;function BEt(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(oCe(o)){case xee:return t(o.map(n));case Cj:return t({...o,parts:o.parts.map(n)});case CO:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case SV:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Fee:case Gee:case Lee:case _j:case Vee:return t({...o,contents:n(o.contents)});case iCe:case sCe:case Zee:case Pee:case Mk:case sH:return t(o);default:throw new MNe(o)}}}function akr(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return okr(e,o),n}function Woc(e){if(e.type===SV&&e.break||e.type===Mk&&e.hard||e.type===sH)return!0}function Ooc(e){return akr(e,Woc,!1)}function aTi(e){if(e.length>0){let t=aD(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function Moc(e){let t=new Set,r=[];function n(o){if(o.type===sH&&aTi(r),o.type===SV){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===SV&&r.pop().break&&aTi(r)}okr(e,n,a,!0)}function Hoc(e){return e.type===Mk&&!e.hard?e.soft?"":" ":e.type===CO?e.flatContents:e}function Yoc(e){return BEt(e,Hoc)}function cTi(e){for(e=[...e];e.length>=2&&aD(!1,e,-2).type===Mk&&aD(!1,e,-1).type===sH;)e.length-=2;if(e.length>0){let t=ZJe(aD(!1,e,-1));e[e.length-1]=t}return e}function ZJe(e){switch(oCe(e)){case Gee:case Lee:case SV:case Vee:case _j:{let t=ZJe(e.contents);return{...e,contents:t}}case CO:return{...e,breakContents:ZJe(e.breakContents),flatContents:ZJe(e.flatContents)};case Cj:return{...e,parts:cTi(e.parts)};case xee:return cTi(e);case iCe:return e.replace(/[\n\r]*$/u,"");case Fee:case sCe:case Zee:case Pee:case Mk:case sH:break;default:throw new MNe(e)}return e}function ZTi(e){return ZJe(Xoc(e))}function Qoc(e){switch(oCe(e)){case Cj:if(e.parts.every(t=>t===""))return"";break;case SV:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===SV&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Fee:case Gee:case Lee:case Vee:if(!e.contents)return"";break;case CO:if(!e.flatContents&&!e.breakContents)return"";break;case xee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof aD(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case iCe:case sCe:case Zee:case Pee:case Mk:case _j:case sH:break;default:throw new MNe(e)}return e}function Xoc(e){return BEt(e,t=>Qoc(t))}function Joc(e,t=OTi){return BEt(e,r=>typeof r=="string"?MTi(t,r.split(` -`)):r)}function Uoc(e){if(e.type===Mk)return!0}function Koc(e){return akr(e,Uoc,!1)}function hEt(e,t){return e.type===_j?{...e,contents:t(e.contents)}:t(e)}var ckr=()=>{},mj=ckr,LTi=ckr,joc=ckr;function bEt(e){return mj(e),{type:Gee,contents:e}}function HNe(e,t){return mj(t),{type:Fee,contents:t,n:e}}function VTi(e,t={}){return mj(e),LTi(t.expandedStates,!0),{type:SV,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function zoc(e){return HNe(Number.NEGATIVE_INFINITY,e)}function qoc(e){return HNe({type:"root"},e)}function $oc(e){return HNe(-1,e)}function eac(e,t){return VTi(e[0],{...t,expandedStates:e})}function tac(e){return joc(e),{type:Cj,parts:e}}function rac(e,t="",r={}){return mj(e),t!==""&&mj(t),{type:CO,breakContents:e,flatContents:t,groupId:r.groupId}}function nac(e,t){return mj(e),{type:Lee,contents:e,groupId:t.groupId,negate:t.negate}}function JDr(e){return mj(e),{type:Vee,contents:e}}var iac={type:Pee},wEt={type:sH},sac={type:Zee},lkr={type:Mk,hard:!0},PTi={type:Mk,hard:!0,literal:!0},WTi={type:Mk},oac={type:Mk,soft:!0},rCe=[lkr,wEt],OTi=[PTi,wEt],tCe={type:sCe};function MTi(e,t){mj(e),LTi(t);let r=[];for(let n=0;n0){for(let a=0;a0?`, { ${C.join(", ")} }`:"";return`indentIfBreak(${n(o.contents)}${b})`}if(o.type===SV){let C=[];o.break&&o.break!=="propagated"&&C.push("shouldBreak: true"),o.id&&C.push(`id: ${a(o.id)}`);let b=C.length>0?`, { ${C.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(E=>n(E)).join(",")}]${b})`:`group(${n(o.contents)}${b})`}if(o.type===Cj)return`fill([${o.parts.map(C=>n(C)).join(", ")}])`;if(o.type===Vee)return"lineSuffix("+n(o.contents)+")";if(o.type===Pee)return"lineSuffixBoundary";if(o.type===_j)return`label(${JSON.stringify(o.label)}, ${n(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let l=o.description||"symbol";for(let A=0;;A++){let f=l+(A>0?` #${A}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var lac=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function uac(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function gac(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Aac=e=>!(uac(e)||gac(e)),dac=/[^\x20-\x7F]/u;function pac(e){if(!e)return 0;if(!dac.test(e))return e.length;e=e.replace(lac()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Aac(n)?1:2)}return t}var ukr=pac,EV=Symbol("MODE_BREAK"),hj=Symbol("MODE_FLAT"),LNe=Symbol("cursor"),UDr=Symbol("DOC_FILL_PRINTED_LENGTH");function YTi(){return{value:"",length:0,queue:[]}}function fac(e,t){return KDr(e,{type:"indent"},t)}function Iac(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||YTi():t<0?KDr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:KDr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function KDr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function jDr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===LNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(LNe);return t}function fEt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=oCe(C);switch(b){case iCe:f.push(C),r-=ukr(C);break;case xee:case Cj:{let E=b===xee?C:C.parts,N=C[UDr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Gee:case Fee:case Lee:case _j:A.push({mode:I,doc:C.contents});break;case Zee:r+=jDr(f);break;case SV:{if(o&&C.break)return!1;let E=C.break?EV:I,N=C.expandedStates&&E===EV?aD(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case CO:{let E=(C.groupId?a[C.groupId]||hj:I)===EV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Mk:if(I===EV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case Vee:n=!0;break;case Pee:if(n)return!1;break}}return!1}function TEt(e,t){let r={},n=t.printWidth,a=skr(t.endOfLine),o=0,l=[{ind:YTi(),mode:EV,doc:e}],A=[],f=!1,I=[],C=0;for(Moc(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(oCe(B)){case iCe:{let F=a!==` -`?SEt(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=ukr(F));break}case xee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case sCe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(LNe),C++;break;case Gee:l.push({ind:fac(E,t),mode:N,doc:B.contents});break;case Fee:l.push({ind:Iac(E,B.n,t),mode:N,doc:B.contents});break;case Zee:o-=jDr(A);break;case SV:switch(N){case hj:if(!f){l.push({ind:E,mode:B.break?EV:hj,doc:B.contents});break}case EV:{f=!1;let F={ind:E,mode:hj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&fEt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=aD(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:EV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:EV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:hj,doc:ce};if(fEt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:EV,doc:B.contents});break}}B.id&&(r[B.id]=aD(!1,l,-1).mode);break;case Cj:{let F=n-o,Q=B[UDr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:hj,doc:ne},ue={ind:E,mode:EV,doc:ne},de=fEt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:hj,doc:ce},Se={ind:E,mode:EV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[UDr]:Q+2}};fEt({ind:E,mode:hj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case CO:case Lee:{let F=B.groupId?r[B.groupId]:N;if(F===EV){let Q=B.type===CO?B.breakContents:B.negate?B.contents:bEt(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===hj){let Q=B.type===CO?B.flatContents:B.negate?bEt(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case Vee:I.push({ind:E,mode:N,doc:B.contents});break;case Pee:I.length>0&&l.push({ind:E,mode:N,doc:lkr});break;case Mk:switch(N){case hj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case EV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=jDr(A),A.push(a+E.value),o=E.length);break}break;case _j:l.push({ind:E,mode:N,doc:B.contents});break;case sH:break;default:throw new MNe(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(LNe);if(b!==-1){let E=A.indexOf(LNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==LNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function hac(e,t,r=0){let n=0;for(let a=r;a1?aD(!1,e,-2):null}getValue(){return aD(!1,this.stack,-1)}getNode(e=0){let t=GJe(this,qme,zDr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:n}=r,a=aD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=n}}callParent(e,t=0){let r=GJe(this,qme,zDr).call(this,t+1),n=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...n)}}each(e,...t){let{stack:r}=this,{length:n}=r,a=aD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(n,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,n=this.stack[t--];for(let a of e){if(n===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],n=this.stack[t--]),a&&!a(n,r,o))return!1;r=this.stack[t--],n=this.stack[t--]}return!0}findAncestor(e){for(let t of GJe(this,qme,mEt).call(this))if(e(t))return t}hasAncestor(e){for(let t of GJe(this,qme,mEt).call(this))if(e(t))return!0;return!1}};qme=new WeakSet,zDr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},mEt=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var Cac=mac,QTi=new Proxy(()=>{},{get:()=>QTi}),qDr=QTi;function _ac(e){return e!==null&&typeof e=="object"}var yac=_ac;function*REt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>yac(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*bac(e,t){let r=[e];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},aD=lac;function uac(e){if(typeof e=="string")return sCe;if(Array.isArray(e))return Gee;if(!e)return;let{type:t}=e;if(jTi.has(t))return t}var aCe=uac,gac=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Aac(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(aCe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=gac([...jTi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}var dac=class extends Error{name="InvalidDocError";constructor(e){super(Aac(e)),this.doc=e}},YNe=dac,yTi={};function pac(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===yTi){r(a.pop());continue}r&&a.push(o,yTi);let l=aCe(o);if(!l)throw new YNe(o);if(t?.(o)!==!1)switch(l){case Gee:case Cj:{let A=l===Gee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case CO:a.push(o.flatContents,o.breakContents);break;case SV:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Zee:case Fee:case Vee:case _j:case Pee:a.push(o.contents);break;case sCe:case oCe:case Lee:case Wee:case Mk:case sH:break;default:throw new YNe(o)}}}var gkr=pac;function TEt(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(aCe(o)){case Gee:return t(o.map(n));case Cj:return t({...o,parts:o.parts.map(n)});case CO:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case SV:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Zee:case Fee:case Vee:case _j:case Pee:return t({...o,contents:n(o.contents)});case sCe:case oCe:case Lee:case Wee:case Mk:case sH:return t(o);default:throw new YNe(o)}}}function Akr(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return gkr(e,o),n}function fac(e){if(e.type===SV&&e.break||e.type===Mk&&e.hard||e.type===sH)return!0}function Iac(e){return Akr(e,fac,!1)}function bTi(e){if(e.length>0){let t=aD(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function hac(e){let t=new Set,r=[];function n(o){if(o.type===sH&&bTi(r),o.type===SV){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===SV&&r.pop().break&&bTi(r)}gkr(e,n,a,!0)}function mac(e){return e.type===Mk&&!e.hard?e.soft?"":" ":e.type===CO?e.flatContents:e}function Cac(e){return TEt(e,mac)}function ETi(e){for(e=[...e];e.length>=2&&aD(!1,e,-2).type===Mk&&aD(!1,e,-1).type===sH;)e.length-=2;if(e.length>0){let t=VJe(aD(!1,e,-1));e[e.length-1]=t}return e}function VJe(e){switch(aCe(e)){case Fee:case Vee:case SV:case Pee:case _j:{let t=VJe(e.contents);return{...e,contents:t}}case CO:return{...e,breakContents:VJe(e.breakContents),flatContents:VJe(e.flatContents)};case Cj:return{...e,parts:ETi(e.parts)};case Gee:return ETi(e);case sCe:return e.replace(/[\n\r]*$/u,"");case Zee:case oCe:case Lee:case Wee:case Mk:case sH:break;default:throw new YNe(e)}return e}function zTi(e){return VJe(yac(e))}function _ac(e){switch(aCe(e)){case Cj:if(e.parts.every(t=>t===""))return"";break;case SV:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===SV&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Zee:case Fee:case Vee:case Pee:if(!e.contents)return"";break;case CO:if(!e.flatContents&&!e.breakContents)return"";break;case Gee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof aD(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case sCe:case oCe:case Lee:case Wee:case Mk:case _j:case sH:break;default:throw new YNe(e)}return e}function yac(e){return TEt(e,t=>_ac(t))}function bac(e,t=rRi){return TEt(e,r=>typeof r=="string"?nRi(t,r.split(` +`)):r)}function Eac(e){if(e.type===Mk)return!0}function Sac(e){return Akr(e,Eac,!1)}function CEt(e,t){return e.type===_j?{...e,contents:t(e.contents)}:t(e)}var dkr=()=>{},mj=dkr,qTi=dkr,vac=dkr;function SEt(e){return mj(e),{type:Fee,contents:e}}function QNe(e,t){return mj(t),{type:Zee,contents:t,n:e}}function $Ti(e,t={}){return mj(e),qTi(t.expandedStates,!0),{type:SV,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function Bac(e){return QNe(Number.NEGATIVE_INFINITY,e)}function wac(e){return QNe({type:"root"},e)}function Tac(e){return QNe(-1,e)}function Rac(e,t){return $Ti(e[0],{...t,expandedStates:e})}function Nac(e){return vac(e),{type:Cj,parts:e}}function Dac(e,t="",r={}){return mj(e),t!==""&&mj(t),{type:CO,breakContents:e,flatContents:t,groupId:r.groupId}}function kac(e,t){return mj(e),{type:Vee,contents:e,groupId:t.groupId,negate:t.negate}}function qDr(e){return mj(e),{type:Pee,contents:e}}var xac={type:Wee},REt={type:sH},Gac={type:Lee},pkr={type:Mk,hard:!0},eRi={type:Mk,hard:!0,literal:!0},tRi={type:Mk},Fac={type:Mk,soft:!0},nCe=[pkr,REt],rRi=[eRi,REt],rCe={type:oCe};function nRi(e,t){mj(e),qTi(t);let r=[];for(let n=0;n0){for(let a=0;a0?`, { ${C.join(", ")} }`:"";return`indentIfBreak(${n(o.contents)}${b})`}if(o.type===SV){let C=[];o.break&&o.break!=="propagated"&&C.push("shouldBreak: true"),o.id&&C.push(`id: ${a(o.id)}`);let b=C.length>0?`, { ${C.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(E=>n(E)).join(",")}]${b})`:`group(${n(o.contents)}${b})`}if(o.type===Cj)return`fill([${o.parts.map(C=>n(C)).join(", ")}])`;if(o.type===Pee)return"lineSuffix("+n(o.contents)+")";if(o.type===Wee)return"lineSuffixBoundary";if(o.type===_j)return`label(${JSON.stringify(o.label)}, ${n(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let l=o.description||"symbol";for(let A=0;;A++){let f=l+(A>0?` #${A}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var Vac=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function Pac(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Wac(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Oac=e=>!(Pac(e)||Wac(e)),Mac=/[^\x20-\x7F]/u;function Hac(e){if(!e)return 0;if(!Mac.test(e))return e.length;e=e.replace(Vac()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Oac(n)?1:2)}return t}var fkr=Hac,EV=Symbol("MODE_BREAK"),hj=Symbol("MODE_FLAT"),PNe=Symbol("cursor"),$Dr=Symbol("DOC_FILL_PRINTED_LENGTH");function sRi(){return{value:"",length:0,queue:[]}}function Yac(e,t){return ekr(e,{type:"indent"},t)}function Qac(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||sRi():t<0?ekr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:ekr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function ekr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function tkr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===PNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(PNe);return t}function hEt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=aCe(C);switch(b){case sCe:f.push(C),r-=fkr(C);break;case Gee:case Cj:{let E=b===Gee?C:C.parts,N=C[$Dr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Fee:case Zee:case Vee:case _j:A.push({mode:I,doc:C.contents});break;case Lee:r+=tkr(f);break;case SV:{if(o&&C.break)return!1;let E=C.break?EV:I,N=C.expandedStates&&E===EV?aD(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case CO:{let E=(C.groupId?a[C.groupId]||hj:I)===EV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Mk:if(I===EV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case Pee:n=!0;break;case Wee:if(n)return!1;break}}return!1}function NEt(e,t){let r={},n=t.printWidth,a=ukr(t.endOfLine),o=0,l=[{ind:sRi(),mode:EV,doc:e}],A=[],f=!1,I=[],C=0;for(hac(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(aCe(B)){case sCe:{let F=a!==` +`?BEt(!1,B,` +`,a):B;A.push(F),l.length>0&&(o+=fkr(F));break}case Gee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case oCe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(PNe),C++;break;case Fee:l.push({ind:Yac(E,t),mode:N,doc:B.contents});break;case Zee:l.push({ind:Qac(E,B.n,t),mode:N,doc:B.contents});break;case Lee:o-=tkr(A);break;case SV:switch(N){case hj:if(!f){l.push({ind:E,mode:B.break?EV:hj,doc:B.contents});break}case EV:{f=!1;let F={ind:E,mode:hj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&hEt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=aD(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:EV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:EV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:hj,doc:ce};if(hEt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:EV,doc:B.contents});break}}B.id&&(r[B.id]=aD(!1,l,-1).mode);break;case Cj:{let F=n-o,Q=B[$Dr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:hj,doc:ne},ue={ind:E,mode:EV,doc:ne},de=hEt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:hj,doc:ce},Se={ind:E,mode:EV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[$Dr]:Q+2}};hEt({ind:E,mode:hj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case CO:case Vee:{let F=B.groupId?r[B.groupId]:N;if(F===EV){let Q=B.type===CO?B.breakContents:B.negate?B.contents:SEt(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===hj){let Q=B.type===CO?B.flatContents:B.negate?SEt(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case Pee:I.push({ind:E,mode:N,doc:B.contents});break;case Wee:I.length>0&&l.push({ind:E,mode:N,doc:pkr});break;case Mk:switch(N){case hj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case EV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=tkr(A),A.push(a+E.value),o=E.length);break}break;case _j:l.push({ind:E,mode:N,doc:B.contents});break;case sH:break;default:throw new YNe(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(PNe);if(b!==-1){let E=A.indexOf(PNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==PNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function Xac(e,t,r=0){let n=0;for(let a=r;a1?aD(!1,e,-2):null}getValue(){return aD(!1,this.stack,-1)}getNode(e=0){let t=ZJe(this,$me,rkr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:n}=r,a=aD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=n}}callParent(e,t=0){let r=ZJe(this,$me,rkr).call(this,t+1),n=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...n)}}each(e,...t){let{stack:r}=this,{length:n}=r,a=aD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(n,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,n=this.stack[t--];for(let a of e){if(n===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],n=this.stack[t--]),a&&!a(n,r,o))return!1;r=this.stack[t--],n=this.stack[t--]}return!0}findAncestor(e){for(let t of ZJe(this,$me,_Et).call(this))if(e(t))return t}hasAncestor(e){for(let t of ZJe(this,$me,_Et).call(this))if(e(t))return!0;return!1}};$me=new WeakSet,rkr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},_Et=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var Uac=Jac,oRi=new Proxy(()=>{},{get:()=>oRi}),nkr=oRi;function Kac(e){return e!==null&&typeof e=="object"}var jac=Kac;function*DEt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>jac(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*zac(e,t){let r=[e];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var Tac=wac,UTi=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),Rac=e=>Object.keys(e).filter(t=>!UTi.has(t));function Nac(e){return e?t=>e(t,UTi):Rac}var NEt=Nac;function Dac(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Akr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=Dac(e)}function VNe(e,t){t.leading=!0,t.trailing=!1,Akr(e,t)}function $me(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Akr(e,t)}function PNe(e,t){t.leading=!1,t.trailing=!0,Akr(e,t)}var LDr=new WeakMap;function dkr(e,t){if(LDr.has(e))return LDr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:a},locStart:o,locEnd:l}=t;if(!n)return[];let A=(r?.(e,t)??[...REt(e,{getVisitorKeys:NEt(a)})]).flatMap(f=>n(f)?[f]:dkr(f,t));return A.sort((f,I)=>o(f)-o(I)||l(f)-l(I)),LDr.set(e,A),A}function KTi(e,t,r,n){let{locStart:a,locEnd:o}=r,l=a(t),A=o(t),f=dkr(e,r),I,C,b=0,E=f.length;for(;b>1,B=f[N],F=a(B),Q=o(B);if(F<=l&&A<=Q)return KTi(B,t,r,B);if(Q<=l){I=B,b=N+1;continue}if(A<=F){C=B,E=N;continue}throw new Error("Comment location overlaps with node location")}if(n?.type==="TemplateLiteral"){let{quasis:N}=n,B=PDr(N,t,r);I&&PDr(N,I,r)!==B&&(I=null),C&&PDr(N,C,r)!==B&&(C=null)}return{enclosingNode:n,precedingNode:I,followingNode:C}}var VDr=()=>!1;function kac(e,t){let{comments:r}=e;if(delete e.comments,!Tac(r)||!t.printer.canAttachComment)return;let n=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:l=!1}={},handleComments:A={}},originalText:f}=t,{ownLine:I=VDr,endOfLine:C=VDr,remaining:b=VDr}=A,E=r.map((N,B)=>({...KTi(e,N,t),comment:N,text:f,options:t,ast:e,isLastComment:r.length-1===B}));for(let[N,B]of E.entries()){let{comment:F,precedingNode:Q,enclosingNode:X,followingNode:ae,text:ne,options:ce,ast:fe,isLastComment:ue}=B;if(ce.parser==="json"||ce.parser==="json5"||ce.parser==="jsonc"||ce.parser==="__js_expression"||ce.parser==="__ts_expression"||ce.parser==="__vue_expression"||ce.parser==="__vue_ts_expression"){if(a(F)-a(fe)<=0){VNe(fe,F);continue}if(o(F)-o(fe)>=0){PNe(fe,F);continue}}let de;if(l?de=[B]:(F.enclosingNode=X,F.precedingNode=Q,F.followingNode=ae,de=[F,ne,ce,fe,ue]),xac(ne,ce,E,N))F.placement="ownLine",I(...de)||(ae?VNe(ae,F):Q?PNe(Q,F):$me(X||fe,F));else if(Gac(ne,ce,E,N))F.placement="endOfLine",C(...de)||(Q?PNe(Q,F):ae?VNe(ae,F):$me(X||fe,F));else if(F.placement="remaining",!b(...de))if(Q&&ae){let be=n.length;be>0&&n[be-1].followingNode!==ae&&lTi(n,ce),n.push(B)}else Q?PNe(Q,F):ae?VNe(ae,F):$me(X||fe,F)}if(lTi(n,t),!l)for(let N of r)delete N.precedingNode,delete N.enclosingNode,delete N.followingNode}var jTi=e=>!/[\S\n\u2028\u2029]/u.test(e);function xac(e,t,r,n){let{comment:a,precedingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=l(a);if(o)for(let I=n-1;I>=0;I--){let{comment:C,precedingNode:b}=r[I];if(b!==o||!jTi(e.slice(A(C),f)))break;f=l(C)}return Rce(e,f,{backwards:!0})}function Gac(e,t,r,n){let{comment:a,followingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=A(a);if(o)for(let I=n+1;I0;--f){let{comment:I,precedingNode:C,followingNode:b}=e[f-1];qDr.strictEqual(C,o),qDr.strictEqual(b,l);let E=t.originalText.slice(t.locEnd(I),A);if(((n=(r=t.printer).isGap)==null?void 0:n.call(r,E,t))??/^[\s(]*$/u.test(E))A=t.locStart(I);else break}for(let[I,{comment:C}]of e.entries())I1&&I.comments.sort((C,b)=>t.locStart(C)-t.locStart(b));e.length=0}function PDr(e,t,r){let n=r.locStart(t)-1;for(let a=1;a!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(Zac(e,t)):I&&(l=Lac(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function Pac(e,t,r){let{leading:n,trailing:a}=Vac(e,r);return!n&&!a?t:hEt(t,o=>[n,o,a])}function Wac(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed}}function Oac(e){return()=>{}}var Mac=Oac,qTi=class extends Error{name="ConfigError"},uTi=class extends Error{name="UndefinedParserError"},Hac={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var iCe=ecc;function tcc(e,t,r={}){let n=Dce(e,r.backwards?t-1:t,r),a=iCe(e,n,r);return n!==a}var Nce=tcc;function rcc(e){return Array.isArray(e)&&e.length>0}var ncc=rcc,lRi=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),icc=e=>Object.keys(e).filter(t=>!lRi.has(t));function scc(e){return e?t=>e(t,lRi):icc}var kEt=scc;function occ(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function hkr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=occ(e)}function WNe(e,t){t.leading=!0,t.trailing=!1,hkr(e,t)}function eCe(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),hkr(e,t)}function ONe(e,t){t.leading=!1,t.trailing=!0,hkr(e,t)}var MDr=new WeakMap;function mkr(e,t){if(MDr.has(e))return MDr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:a},locStart:o,locEnd:l}=t;if(!n)return[];let A=(r?.(e,t)??[...DEt(e,{getVisitorKeys:kEt(a)})]).flatMap(f=>n(f)?[f]:mkr(f,t));return A.sort((f,I)=>o(f)-o(I)||l(f)-l(I)),MDr.set(e,A),A}function uRi(e,t,r,n){let{locStart:a,locEnd:o}=r,l=a(t),A=o(t),f=mkr(e,r),I,C,b=0,E=f.length;for(;b>1,B=f[N],F=a(B),Q=o(B);if(F<=l&&A<=Q)return uRi(B,t,r,B);if(Q<=l){I=B,b=N+1;continue}if(A<=F){C=B,E=N;continue}throw new Error("Comment location overlaps with node location")}if(n?.type==="TemplateLiteral"){let{quasis:N}=n,B=YDr(N,t,r);I&&YDr(N,I,r)!==B&&(I=null),C&&YDr(N,C,r)!==B&&(C=null)}return{enclosingNode:n,precedingNode:I,followingNode:C}}var HDr=()=>!1;function acc(e,t){let{comments:r}=e;if(delete e.comments,!ncc(r)||!t.printer.canAttachComment)return;let n=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:l=!1}={},handleComments:A={}},originalText:f}=t,{ownLine:I=HDr,endOfLine:C=HDr,remaining:b=HDr}=A,E=r.map((N,B)=>({...uRi(e,N,t),comment:N,text:f,options:t,ast:e,isLastComment:r.length-1===B}));for(let[N,B]of E.entries()){let{comment:F,precedingNode:Q,enclosingNode:X,followingNode:ae,text:ne,options:ce,ast:fe,isLastComment:ue}=B;if(ce.parser==="json"||ce.parser==="json5"||ce.parser==="jsonc"||ce.parser==="__js_expression"||ce.parser==="__ts_expression"||ce.parser==="__vue_expression"||ce.parser==="__vue_ts_expression"){if(a(F)-a(fe)<=0){WNe(fe,F);continue}if(o(F)-o(fe)>=0){ONe(fe,F);continue}}let de;if(l?de=[B]:(F.enclosingNode=X,F.precedingNode=Q,F.followingNode=ae,de=[F,ne,ce,fe,ue]),ccc(ne,ce,E,N))F.placement="ownLine",I(...de)||(ae?WNe(ae,F):Q?ONe(Q,F):eCe(X||fe,F));else if(lcc(ne,ce,E,N))F.placement="endOfLine",C(...de)||(Q?ONe(Q,F):ae?WNe(ae,F):eCe(X||fe,F));else if(F.placement="remaining",!b(...de))if(Q&&ae){let be=n.length;be>0&&n[be-1].followingNode!==ae&&STi(n,ce),n.push(B)}else Q?ONe(Q,F):ae?WNe(ae,F):eCe(X||fe,F)}if(STi(n,t),!l)for(let N of r)delete N.precedingNode,delete N.enclosingNode,delete N.followingNode}var gRi=e=>!/[\S\n\u2028\u2029]/u.test(e);function ccc(e,t,r,n){let{comment:a,precedingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=l(a);if(o)for(let I=n-1;I>=0;I--){let{comment:C,precedingNode:b}=r[I];if(b!==o||!gRi(e.slice(A(C),f)))break;f=l(C)}return Nce(e,f,{backwards:!0})}function lcc(e,t,r,n){let{comment:a,followingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=A(a);if(o)for(let I=n+1;I0;--f){let{comment:I,precedingNode:C,followingNode:b}=e[f-1];nkr.strictEqual(C,o),nkr.strictEqual(b,l);let E=t.originalText.slice(t.locEnd(I),A);if(((n=(r=t.printer).isGap)==null?void 0:n.call(r,E,t))??/^[\s(]*$/u.test(E))A=t.locStart(I);else break}for(let[I,{comment:C}]of e.entries())I1&&I.comments.sort((C,b)=>t.locStart(C)-t.locStart(b));e.length=0}function YDr(e,t,r){let n=r.locStart(t)-1;for(let a=1;a!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(gcc(e,t)):I&&(l=Acc(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function pcc(e,t,r){let{leading:n,trailing:a}=dcc(e,r);return!n&&!a?t:CEt(t,o=>[n,o,a])}function fcc(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed}}function Icc(e){return()=>{}}var hcc=Icc,dRi=class extends Error{name="ConfigError"},vTi=class extends Error{name="UndefinedParserError"},mcc={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing (mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>typeof e=="string"||typeof e=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>typeof e=="string"||typeof e=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive). The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset. The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment -in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function $Ti({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),n=[];for(let a of Qac(Object.assign({},...e.map(({options:o})=>o),Hac)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...Yac(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var l;return((l=o.defaultOptions)==null?void 0:l[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),n.push(a));return{languages:r,options:n}}function*Yac(e,t,r){let n=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!n.has(o)){n.add(o);let l=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),A=a.name;l!=null&&l.name&&(A+=` (plugin: ${l.name})`),yield{value:o,description:A}}}}function Qac(e){let t=[];for(let[r,n]of Object.entries(e)){let a={name:r,...n};Array.isArray(a.default)&&(a.default=aD(!1,a.default,-1).value),t.push(a)}return t}var Xac=e=>String(e).split(/[/\\]/u).pop();function gTi(e,t){if(!t)return;let r=Xac(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function Jac(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Uac(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=Jac(r,t.language)??gTi(r,t.physicalFile)??gTi(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var Kac=Uac,WNe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>WNe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${WNe.key(r)}: ${WNe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>WNe.value({[e]:t})},ATi=EEt(nkr(),1),jac=(e,t,{descriptor:r})=>{let n=[`${ATi.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${ATi.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."},ONe=EEt(nkr(),1),eRi=Symbol.for("vnopts.VALUE_NOT_EXIST"),CEt=Symbol.for("vnopts.VALUE_UNCHANGED"),dTi=" ".repeat(2),zac=(e,t,r)=>{let{text:n,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return n&&o.push(pTi(e,t,n,r.descriptor)),a&&o.push([pTi(e,t,a.title,r.descriptor)].concat(a.values.map(l=>tRi(l,r.loggerPrintWidth))).join(` -`)),rRi(o,r.loggerPrintWidth)};function pTi(e,t,r,n){return[`Invalid ${ONe.default.red(n.key(e))} value.`,`Expected ${ONe.default.blue(r)},`,`but received ${t===eRi?ONe.default.gray("nothing"):ONe.default.red(n.value(t))}.`].join(" ")}function tRi({text:e,list:t},r){let n=[];return e&&n.push(`- ${ONe.default.blue(e)}`),t&&n.push([`- ${ONe.default.blue(t.title)}:`].concat(t.values.map(a=>tRi(a,r-dTi.length).replace(/^|\n/g,`$&${dTi}`))).join(` -`)),rRi(n,r)}function rRi(e,t){if(e.length===1)return e[0];let[r,n]=e,[a,o]=e.map(l=>l.split(` -`,1)[0].length);return a>t&&a>o?n:r}var fTi=EEt(nkr(),1),WDr=[],ITi=[];function qac(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,a=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-a);)n--,a--;let o=0;for(;oA?I>A?A+1:I:I>f?f+1:I;return A}var nRi=(e,t,{descriptor:r,logger:n,schemas:a})=>{let o=[`Ignored unknown option ${fTi.default.yellow(r.pair({key:e,value:t}))}.`],l=Object.keys(a).sort().find(A=>qac(e,A)<3);l&&o.push(`Did you mean ${fTi.default.blue(r.key(l))}?`),n.warn(o.join(" "))},$ac=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function ecc(e,t){let r=new e(t),n=Object.create(r);for(let a of $ac)a in t&&(n[a]=tcc(t[a],r,Dce.prototype[a].length));return n}var Dce=class{static create(e){return ecc(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return CEt}};function tcc(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var rcc=class extends Dce{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},ncc=class extends Dce{expected(){return"anything"}validate(){return!0}},icc=class extends Dce{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let n of e){let a=t.normalizeValidateResult(this._valueSchema.validate(n,t),n);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let n of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(n,t),n);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let n of e){let a=t.normalizeForwardResult(this._valueSchema.forward(n,t),n);r.push(...a.map(hTi))}return r}redirect(e,t){let r=[],n=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),n.push(...o.redirect.map(hTi))}return r.length===0?{redirect:n}:{redirect:n,remain:r}}overlap(e,t){return e.concat(t)}};function hTi({from:e,to:t}){return{from:[e],to:t}}var scc=class extends Dce{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function occ(e,t){let r=Object.create(null);for(let n of e){let a=n[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=n}return r}function acc(e,t){let r=new Map;for(let n of e){let a=n[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,n)}return r}function ccc(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function lcc(e,t){let r=[],n=[];for(let a of e)t(a)?r.push(a):n.push(a);return[r,n]}function ucc(e){return e===Math.floor(e)}function gcc(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,a=["undefined","object","boolean","number","string"];return r!==n?a.indexOf(r)-a.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function Acc(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function mTi(e){return e===void 0?{}:e}function iRi(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return dcc((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(iRi)}}:{text:t}}function CTi(e,t){return e===!0?!0:e===!1?{value:t}:e}function _Ti(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function yTi(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function $Dr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>yTi(r,t)):[yTi(e,t)]}function bTi(e,t){let r=$Dr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function dcc(e,t){if(!e)throw new Error(t)}var pcc=class extends Dce{constructor(e){super(e),this._choices=acc(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(gcc).map(e.value),r=t.slice(0,-2),n=t.slice(-2);return{text:r.concat(n.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},fcc=class extends Dce{expected(){return"a number"}validate(e,t){return typeof e=="number"}},Icc=class extends fcc{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&ucc(e)}},ETi=class extends Dce{expected(){return"a string"}validate(e){return typeof e=="string"}},hcc=WNe,mcc=nRi,Ccc=zac,_cc=jac,ycc=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:n=80,descriptor:a=hcc,unknown:o=mcc,invalid:l=Ccc,deprecated:A=_cc,missing:f=()=>!1,required:I=()=>!1,preprocess:C=E=>E,postprocess:b=()=>CEt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:n,schemas:occ(e,"name"),normalizeDefaultResult:mTi,normalizeExpectedResult:iRi,normalizeDeprecatedResult:_Ti,normalizeForwardResult:$Dr,normalizeRedirectResult:bTi,normalizeValidateResult:CTi},this._unknownHandler=o,this._invalidHandler=Acc(l),this._deprecatedHandler=A,this._identifyMissing=(E,N)=>!(E in N)||f(E,N),this._identifyRequired=I,this._preprocess=C,this._postprocess=b,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=ccc()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],n=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};n();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let l=mTi(o.default(this._utils));"value"in l&&r.push({[a]:l.value})}}n();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],l=t[a],A=o.postprocess(l,this._utils);A!==CEt&&(this._applyValidation(A,a,o),t[a]=A)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:n,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of n){let l=this._utils.schemas[o],A=l.preprocess(e[o],this._utils);this._applyValidation(A,o,l);let f=({from:b,to:E})=>{r.push(typeof E=="string"?{[E]:b}:{[E.key]:E.value})},I=({value:b,redirectTo:E})=>{let N=_Ti(l.deprecated(b,this._utils),A,!0);if(N!==!1)if(N===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,E,this._utils));else for(let{value:B}of N){let F={key:o,value:B};if(!this._hasDeprecationWarned(F)){let Q=typeof E=="string"?{key:E,value:B}:E;this._utils.logger.warn(this._deprecatedHandler(F,Q,this._utils))}}};$Dr(l.forward(A,this._utils),A).forEach(f);let C=bTi(l.redirect(A,this._utils),A);if(C.redirect.forEach(f),"remain"in C){let b=C.remain;t[o]=o in t?l.overlap(t[o],b,this._utils):b,I({value:b})}for(let{from:b,to:E}of C.redirect)I({value:b,redirectTo:E})}for(let o of a){let l=e[o];this._applyUnknownHandler(o,l,t,(A,f)=>{r.push({[A]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,eRi,this._utils)}_partitionOptionKeys(e){let[t,r]=lcc(Object.keys(e).filter(n=>!this._identifyMissing(n,e)),n=>n in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let n=CTi(r.validate(e,this._utils),e);if(n!==!0)throw this._invalidHandler(t,n.value,this._utils)}_applyUnknownHandler(e,t,r,n){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let l=a[o];o in this._utils.schemas?n(o,l):r[o]=l}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==CEt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:n}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of n){let o=t.override[a];this._applyUnknownHandler(a,o,e,(l,A)=>{let f=this._utils.schemas[l];this._applyValidation(A,l,f),e[l]=A})}}}}},ODr;function bcc(e,t,{logger:r=!1,isCLI:n=!1,passThrough:a=!1,FlagSchema:o,descriptor:l}={}){if(n){if(!o)throw new Error("'FlagSchema' option is required.");if(!l)throw new Error("'descriptor' option is required.")}else l=WNe;let A=a?Array.isArray(a)?(E,N)=>a.includes(E)?{[E]:N}:void 0:(E,N)=>({[E]:N}):(E,N,B)=>{let{_:F,...Q}=B.schemas;return nRi(E,N,{...B,schemas:Q})},f=Ecc(t,{isCLI:n,FlagSchema:o}),I=new ycc(f,{logger:r,unknown:A,descriptor:l}),C=r!==!1;C&&ODr&&(I._hasDeprecationWarned=ODr);let b=I.normalize(e);return C&&(ODr=I._hasDeprecationWarned),b}function Ecc(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(ncc.create({name:"_"}));for(let a of e)n.push(Scc(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&n.push(rcc.create({name:a.alias,sourceName:a.name}));return n}function Scc(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:a}=e,o={name:a},l,A={};switch(e.type){case"int":l=Icc,t&&(o.preprocess=Number);break;case"string":l=ETi;break;case"choice":l=pcc,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":l=scc;break;case"flag":l=n,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":l=ETi;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,I,C)=>e.exception(f)||I.validate(f,C):o.validate=(f,I,C)=>f===void 0||I.validate(f,C),e.redirect&&(A.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(A.deprecated=!0),t&&!e.array){let f=o.preprocess||(I=>I);o.preprocess=(I,C,b)=>C.preprocess(f(Array.isArray(I)?aD(!1,I,-1):I),b)}return e.array?icc.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...A,valueSchema:l.create(o)}):l.create({...o,...A})}var vcc=bcc,Bcc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},sRi=Bcc;function oRi(e,t){if(!t)throw new Error("parserName is required.");let r=sRi(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new qTi(n)}function wcc(e,t){if(!t)throw new Error("astFormat is required.");let r=sRi(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new qTi(n)}function aRi({plugins:e,parser:t}){let r=oRi(e,t);return cRi(r,t)}function cRi(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function Tcc(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var STi={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function Rcc(e,t={}){var r;let n={...e};if(!n.parser)if(n.filepath){if(n.parser=Kac(n,{physicalFile:n.filepath}),!n.parser)throw new uTi(`No parser could be inferred for file "${n.filepath}".`)}else throw new uTi("No parser and no file path given, couldn't infer a parser.");let a=$Ti({plugins:e.plugins,showDeprecated:!0}).options,o={...STi,...Object.fromEntries(a.filter(E=>E.default!==void 0).map(E=>[E.name,E.default]))},l=oRi(n.plugins,n.parser),A=await cRi(l,n.parser);n.astFormat=A.astFormat,n.locEnd=A.locEnd,n.locStart=A.locStart;let f=(r=l.printers)!=null&&r[A.astFormat]?l:wcc(n.plugins,A.astFormat),I=await Tcc(f,A.astFormat);n.printer=I;let C=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,E])=>E!==void 0)):{},b={...o,...C};for(let[E,N]of Object.entries(b))(n[E]===null||n[E]===void 0)&&(n[E]=N);return n.parser==="json"&&(n.trailingComma="none"),vcc(n,a,{passThrough:Object.keys(STi),...t})}var YNe=Rcc,Ncc=EEt(Eoc(),1);async function Dcc(e,t){let r=await aRi(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let a;try{a=await r.parse(n,t,t)}catch(o){kcc(o,e)}return{text:n,ast:a}}function kcc(e,t){let{loc:r}=e;if(r){let n=(0,Ncc.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` -`+n,e.codeFrame=n,e}throw e}var PJe=Dcc;async function xcc(e,t,r,n,a){let{embeddedLanguageFormatting:o,printer:{embed:l,hasPrettierIgnore:A=()=>!1,getVisitorKeys:f}}=r;if(!l||o!=="auto")return;if(l.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let I=NEt(l.getVisitorKeys??f),C=[];N();let b=e.stack;for(let{print:B,node:F,pathStack:Q}of C)try{e.stack=Q;let X=await B(E,t,e,r);X&&a.set(F,X)}catch(X){if(globalThis.PRETTIER_DEBUG)throw X}e.stack=b;function E(B,F){return Gcc(B,F,r,n)}function N(){let{node:B}=e;if(B===null||typeof B!="object"||A(e))return;for(let Q of I(B))Array.isArray(B[Q])?e.each(N,Q):e.call(N,Q);let F=l(e,r);if(F){if(typeof F=="function"){C.push({print:F,node:B,pathStack:[...e.stack]});return}a.set(B,F)}}}async function Gcc(e,t,r,n){let a=await YNe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await PJe(e,a),l=await n(o,a);return ZTi(l)}function Fcc(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var Zcc=Fcc;async function DEt(e,t){({ast:e}=await lRi(e,t));let r=new Map,n=new Cac(e),a=Mac(t),o=new Map;await xcc(n,A,t,DEt,o);let l=await vTi(n,t,A,void 0,o);if(Wac(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[tCe,l];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[l,tCe];return l;function A(I,C){return I===void 0||I===n?f(C):Array.isArray(I)?n.call(()=>f(C),...I):n.call(()=>f(C),I)}function f(I){a(n);let C=n.node;if(C==null)return"";let b=C&&typeof C=="object"&&I===void 0;if(b&&r.has(C))return r.get(C);let E=vTi(n,t,A,I,o);return b&&r.set(C,E),E}}function vTi(e,t,r,n,a){var o;let{node:l}=e,{printer:A}=t,f;switch((o=A.hasPrettierIgnore)!=null&&o.call(A,e)?f=Zcc(e,t):a.has(l)?f=a.get(l):f=A.print(e,t,r,n),l){case t.cursorNode:f=hEt(f,I=>[tCe,I,tCe]);break;case t.nodeBeforeCursor:f=hEt(f,I=>[I,tCe]);break;case t.nodeAfterCursor:f=hEt(f,I=>[tCe,I]);break}return A.printComment&&(!A.willPrintOwnComments||!A.willPrintOwnComments(e,t))&&(f=Pac(e,f,t)),f}async function lRi(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,kac(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function Lcc(e,t){let{cursorOffset:r,locStart:n,locEnd:a}=t,o=NEt(t.printer.getVisitorKeys),l=N=>n(N)<=r&&a(N)>=r,A=e,f=[e];for(let N of bac(e,{getVisitorKeys:o,filter:l}))f.push(N),A=N;if(Eac(A,{getVisitorKeys:o}))return{cursorNode:A};let I,C,b=-1,E=Number.POSITIVE_INFINITY;for(;f.length>0&&(I===void 0||C===void 0);){A=f.pop();let N=I!==void 0,B=C!==void 0;for(let F of REt(A,{getVisitorKeys:o})){if(!N){let Q=a(F);Q<=r&&Q>b&&(I=F,b=Q)}if(!B){let Q=n(F);Q>=r&&Ql(E,f)).filter(Boolean);let I={},C=new Set(a(A));for(let E in A)!Object.prototype.hasOwnProperty.call(A,E)||o.has(E)||(C.has(E)?I[E]=l(A[E],A):I[E]=A[E]);let b=r(A,I,f);if(b!==null)return b??I}}var Wcc=Pcc,Occ=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return n}return-1}},Mcc=Occ,Hcc=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function Ycc(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(a=>uRi.has(a.type)&&n.has(a))}function BTi(e){let t=Mcc(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function Qcc(e,t,{locStart:r,locEnd:n}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let l=r(e.node);for(let f of BTi(t.parentNodes))if(r(f)>=l)o=f;else break;let A=n(t.node);for(let f of BTi(e.parentNodes)){if(n(f)<=A)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function ekr(e,t,r,n,a=[],o){let{locStart:l,locEnd:A}=r,f=l(e),I=A(e);if(!(t>I||tn);let A=e.slice(n,a).search(/\S/u),f=A===-1;if(!f)for(n+=A;a>n&&!/\S/u.test(e[a-1]);--a);let I=ekr(r,n,t,(N,B)=>wTi(t,N,B),[],"rangeStart"),C=f?I:ekr(r,a,t,N=>wTi(t,N),[],"rangeEnd");if(!I||!C)return{rangeStart:0,rangeEnd:0};let b,E;if(Hcc(t)){let N=Ycc(I,C);b=N,E=N}else({startNode:b,endNode:E}=Qcc(I,C,t));return{rangeStart:Math.min(o(b),o(E)),rangeEnd:Math.max(l(b),l(E))}}var gRi="\uFEFF",TTi=Symbol("cursor");async function ARi(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:a}=await PJe(e,t);t.cursorOffset>=0&&(t={...t,...Vcc(n,t)});let o=await DEt(n,t,r);r>0&&(o=HTi([rCe,o],r,t.tabWidth));let l=TEt(o,t);if(r>0){let f=l.formatted.trim();l.cursorNodeStart!==void 0&&(l.cursorNodeStart-=l.formatted.indexOf(f),l.cursorNodeStart<0&&(l.cursorNodeStart=0,l.cursorNodeText=l.cursorNodeText.trimStart()),l.cursorNodeStart+l.cursorNodeText.length>f.length&&(l.cursorNodeText=l.cursorNodeText.trimEnd())),l.formatted=f+skr(t.endOfLine)}let A=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,I,C,b;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&l.cursorNodeText)if(C=l.cursorNodeStart,b=l.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),I=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let X=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;I=a.slice(f,X)}else f=0,I=a,C=0,b=l.formatted;let E=t.cursorOffset-f;if(I===b)return{formatted:l.formatted,cursorOffset:C+E,comments:A};let N=I.split("");N.splice(E,0,TTi);let B=b.split(""),F=Doc(N,B),Q=C;for(let X of F)if(X.removed){if(X.value.includes(TTi))break}else Q+=X.count;return{formatted:l.formatted,cursorOffset:Q,comments:A}}return{formatted:l.formatted,cursorOffset:-1,comments:A}}async function Kcc(e,t){let{ast:r,text:n}=await PJe(e,t),{rangeStart:a,rangeEnd:o}=Ucc(n,t,r),l=n.slice(a,o),A=Math.min(a,n.lastIndexOf(` -`,a)+1),f=n.slice(A,a).match(/^\s*/u)[0],I=gkr(f,t.tabWidth),C=await ARi(l,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},I),b=C.formatted.trimEnd(),{cursorOffset:E}=t;E>o?E+=b.length-l.length:C.cursorOffset>=0&&(E=C.cursorOffset+a);let N=n.slice(0,a)+b+n.slice(o);if(t.endOfLine!=="lf"){let B=skr(t.endOfLine);E>=0&&B===`\r -`&&(E+=GTi(N.slice(0,E),` -`)),N=SEt(!1,N,` -`,B)}return{formatted:N,cursorOffset:E,comments:C.comments}}function MDr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function RTi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a}=t;return r=MDr(e,r,-1),n=MDr(e,n,0),a=MDr(e,a,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:a}}function dRi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o}=RTi(e,t),l=e.charAt(0)===gRi;if(l&&(e=e.slice(1),r--,n--,a--),o==="auto"&&(o=koc(e)),e.includes("\r")){let A=f=>GTi(e.slice(0,Math.max(f,0)),`\r -`);r-=A(r),n-=A(n),a-=A(a),e=xoc(e)}return{hasBOM:l,text:e,options:RTi(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o})}}async function NTi(e,t){let r=await aRi(t);return!r.hasPragma||r.hasPragma(e)}async function pRi(e,t){let{hasBOM:r,text:n,options:a}=dRi(e,await YNe(t));if(a.rangeStart>=a.rangeEnd&&n!==""||a.requirePragma&&!await NTi(n,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function jcc(e,t,r){let{text:n,options:a}=dRi(e,await YNe(t)),o=await PJe(n,a);return r&&(r.preprocessForPrint&&(o.ast=await lRi(o.ast,a)),r.massage&&(o.ast=Wcc(o.ast,a))),o}async function zcc(e,t){t=await YNe(t);let r=await DEt(e,t);return TEt(r,t)}async function qcc(e,t){let r=cac(e),{formatted:n}=await pRi(r,{...t,parser:"__js_expression"});return n}async function $cc(e,t){t=await YNe(t);let{ast:r}=await PJe(e,t);return DEt(r,t)}async function elc(e,t){return TEt(e,await YNe(t))}var fRi={};rkr(fRi,{builders:()=>tlc,printer:()=>rlc,utils:()=>nlc});var tlc={join:MTi,line:WTi,softline:oac,hardline:rCe,literalline:OTi,group:VTi,conditionalGroup:eac,fill:tac,lineSuffix:JDr,lineSuffixBoundary:iac,cursor:tCe,breakParent:wEt,ifBreak:rac,trim:sac,indent:bEt,indentIfBreak:nac,align:HNe,addAlignmentToDoc:HTi,markAsRoot:qoc,dedentToRoot:zoc,dedent:$oc,hardlineWithoutBreakParent:lkr,literallineWithoutBreakParent:PTi,label:aac,concat:e=>e},rlc={printDocToString:TEt},nlc={willBreak:Ooc,traverseDoc:okr,findInDoc:akr,mapDoc:BEt,removeLines:Yoc,stripTrailingHardline:ZTi,replaceEndOfLine:Joc,canBreak:Koc},ilc="3.5.3",IRi={};rkr(IRi,{addDanglingComment:()=>$me,addLeadingComment:()=>VNe,addTrailingComment:()=>PNe,getAlignmentSize:()=>gkr,getIndentSize:()=>ulc,getMaxContinuousCount:()=>dlc,getNextNonSpaceNonCommentCharacter:()=>flc,getNextNonSpaceNonCommentCharacterIndex:()=>vlc,getPreferredQuote:()=>hlc,getStringWidth:()=>ukr,hasNewline:()=>Rce,hasNewlineInRange:()=>Clc,hasSpaces:()=>ylc,isNextLineEmpty:()=>Rlc,isNextLineEmptyAfterIndex:()=>mkr,isPreviousLineEmpty:()=>wlc,makeString:()=>Elc,skip:()=>VJe,skipEverythingButNewLine:()=>JTi,skipInlineComment:()=>fkr,skipNewline:()=>nCe,skipSpaces:()=>Nce,skipToLineEnd:()=>XTi,skipTrailingComment:()=>Ikr,skipWhitespace:()=>Sac});function slc(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(n,a.length/t.length),0)}var dlc=Alc;function plc(e,t){let r=hkr(e,t);return r===!1?"":e.charAt(r)}var flc=plc,IEt="'",DTi='"';function Ilc(e,t){let r=t===!0||t===IEt?IEt:DTi,n=r===IEt?DTi:IEt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var hlc=Ilc;function mlc(e,t,r){for(let n=t;nl===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var Elc=blc;function Slc(e,t,r){return hkr(e,r(t))}function vlc(e,t){return arguments.length===2||typeof t=="number"?hkr(e,t):Slc(...arguments)}function Blc(e,t,r){return pkr(e,r(t))}function wlc(e,t){return arguments.length===2||typeof t=="number"?pkr(e,t):Blc(...arguments)}function Tlc(e,t,r){return mkr(e,r(t))}function Rlc(e,t){return arguments.length===2||typeof t=="number"?mkr(e,t):Tlc(...arguments)}function eCe(e,t=1){return async(...r)=>{let n=r[t]??{},a=n.plugins??[];return r[t]={...n,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var hRi=eCe(pRi);async function kEt(e,t){let{formatted:r}=await hRi(e,{...t,cursorOffset:-1});return r}async function Nlc(e,t){return await kEt(e,t)===e}var Dlc=eCe($Ti,0),klc={parse:eCe(jcc),formatAST:eCe(zcc),formatDoc:eCe(qcc),printToDoc:eCe($cc),printDocToString:eCe(elc)};var VNi=Nt(lHe(),1);var YJe=Nt(CRi(),1);var xlc=/^(?:( )+|\t+)/,WJe="space",yRi="tab";function _Ri(e,t){let r=new Map,n=0,a,o;for(let l of e.split(/\n/g)){if(!l)continue;let A,f,I,C,b,E=l.match(xlc);if(E===null)n=0,a="";else{if(A=E[0].length,f=E[1]?WJe:yRi,t&&f===WJe&&A===1)continue;f!==a&&(n=0),a=f,I=1,C=0;let N=A-n;if(n=A,N===0)I=0,C=1;else{let B=N>0?N:-N;o=Glc(f,B)}b=r.get(o),b=b===void 0?[1,0]:[b[0]+I,b[1]+C],r.set(o,b)}}return r}function Glc(e,t){return(e===WJe?"s":"t")+String(t)}function Flc(e){let r=e[0]==="s"?WJe:yRi,n=Number(e.slice(1));return{type:r,amount:n}}function Zlc(e){let t,r=0,n=0;for(let[a,[o,l]]of e)(o>r||o===r&&l>n)&&(r=o,n=l,t=a);return t}function Llc(e,t){return(e===WJe?" ":" ").repeat(t)}function Ckr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=_Ri(e,!0);t.size===0&&(t=_Ri(e,!1));let r=Zlc(t),n,a=0,o="";return r!==void 0&&({type:n,amount:a}=Flc(r),o=Llc(n,a)),{amount:a,type:n,indent:o}}function Vlc(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r +in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function pRi({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),n=[];for(let a of _cc(Object.assign({},...e.map(({options:o})=>o),mcc)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...Ccc(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var l;return((l=o.defaultOptions)==null?void 0:l[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),n.push(a));return{languages:r,options:n}}function*Ccc(e,t,r){let n=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!n.has(o)){n.add(o);let l=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),A=a.name;l!=null&&l.name&&(A+=` (plugin: ${l.name})`),yield{value:o,description:A}}}}function _cc(e){let t=[];for(let[r,n]of Object.entries(e)){let a={name:r,...n};Array.isArray(a.default)&&(a.default=aD(!1,a.default,-1).value),t.push(a)}return t}var ycc=e=>String(e).split(/[/\\]/u).pop();function BTi(e,t){if(!t)return;let r=ycc(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function bcc(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Ecc(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=bcc(r,t.language)??BTi(r,t.physicalFile)??BTi(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var Scc=Ecc,MNe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>MNe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${MNe.key(r)}: ${MNe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>MNe.value({[e]:t})},wTi=vEt(ckr(),1),vcc=(e,t,{descriptor:r})=>{let n=[`${wTi.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${wTi.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."},HNe=vEt(ckr(),1),fRi=Symbol.for("vnopts.VALUE_NOT_EXIST"),yEt=Symbol.for("vnopts.VALUE_UNCHANGED"),TTi=" ".repeat(2),Bcc=(e,t,r)=>{let{text:n,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return n&&o.push(RTi(e,t,n,r.descriptor)),a&&o.push([RTi(e,t,a.title,r.descriptor)].concat(a.values.map(l=>IRi(l,r.loggerPrintWidth))).join(` +`)),hRi(o,r.loggerPrintWidth)};function RTi(e,t,r,n){return[`Invalid ${HNe.default.red(n.key(e))} value.`,`Expected ${HNe.default.blue(r)},`,`but received ${t===fRi?HNe.default.gray("nothing"):HNe.default.red(n.value(t))}.`].join(" ")}function IRi({text:e,list:t},r){let n=[];return e&&n.push(`- ${HNe.default.blue(e)}`),t&&n.push([`- ${HNe.default.blue(t.title)}:`].concat(t.values.map(a=>IRi(a,r-TTi.length).replace(/^|\n/g,`$&${TTi}`))).join(` +`)),hRi(n,r)}function hRi(e,t){if(e.length===1)return e[0];let[r,n]=e,[a,o]=e.map(l=>l.split(` +`,1)[0].length);return a>t&&a>o?n:r}var NTi=vEt(ckr(),1),QDr=[],DTi=[];function wcc(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,a=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-a);)n--,a--;let o=0;for(;oA?I>A?A+1:I:I>f?f+1:I;return A}var mRi=(e,t,{descriptor:r,logger:n,schemas:a})=>{let o=[`Ignored unknown option ${NTi.default.yellow(r.pair({key:e,value:t}))}.`],l=Object.keys(a).sort().find(A=>wcc(e,A)<3);l&&o.push(`Did you mean ${NTi.default.blue(r.key(l))}?`),n.warn(o.join(" "))},Tcc=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function Rcc(e,t){let r=new e(t),n=Object.create(r);for(let a of Tcc)a in t&&(n[a]=Ncc(t[a],r,kce.prototype[a].length));return n}var kce=class{static create(e){return Rcc(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return yEt}};function Ncc(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var Dcc=class extends kce{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},kcc=class extends kce{expected(){return"anything"}validate(){return!0}},xcc=class extends kce{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let n of e){let a=t.normalizeValidateResult(this._valueSchema.validate(n,t),n);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let n of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(n,t),n);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let n of e){let a=t.normalizeForwardResult(this._valueSchema.forward(n,t),n);r.push(...a.map(kTi))}return r}redirect(e,t){let r=[],n=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),n.push(...o.redirect.map(kTi))}return r.length===0?{redirect:n}:{redirect:n,remain:r}}overlap(e,t){return e.concat(t)}};function kTi({from:e,to:t}){return{from:[e],to:t}}var Gcc=class extends kce{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function Fcc(e,t){let r=Object.create(null);for(let n of e){let a=n[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=n}return r}function Zcc(e,t){let r=new Map;for(let n of e){let a=n[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,n)}return r}function Lcc(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function Vcc(e,t){let r=[],n=[];for(let a of e)t(a)?r.push(a):n.push(a);return[r,n]}function Pcc(e){return e===Math.floor(e)}function Wcc(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,a=["undefined","object","boolean","number","string"];return r!==n?a.indexOf(r)-a.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function Occ(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function xTi(e){return e===void 0?{}:e}function CRi(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return Mcc((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(CRi)}}:{text:t}}function GTi(e,t){return e===!0?!0:e===!1?{value:t}:e}function FTi(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function ZTi(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function ikr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>ZTi(r,t)):[ZTi(e,t)]}function LTi(e,t){let r=ikr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Mcc(e,t){if(!e)throw new Error(t)}var Hcc=class extends kce{constructor(e){super(e),this._choices=Zcc(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(Wcc).map(e.value),r=t.slice(0,-2),n=t.slice(-2);return{text:r.concat(n.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},Ycc=class extends kce{expected(){return"a number"}validate(e,t){return typeof e=="number"}},Qcc=class extends Ycc{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&Pcc(e)}},VTi=class extends kce{expected(){return"a string"}validate(e){return typeof e=="string"}},Xcc=MNe,Jcc=mRi,Ucc=Bcc,Kcc=vcc,jcc=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:n=80,descriptor:a=Xcc,unknown:o=Jcc,invalid:l=Ucc,deprecated:A=Kcc,missing:f=()=>!1,required:I=()=>!1,preprocess:C=E=>E,postprocess:b=()=>yEt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:n,schemas:Fcc(e,"name"),normalizeDefaultResult:xTi,normalizeExpectedResult:CRi,normalizeDeprecatedResult:FTi,normalizeForwardResult:ikr,normalizeRedirectResult:LTi,normalizeValidateResult:GTi},this._unknownHandler=o,this._invalidHandler=Occ(l),this._deprecatedHandler=A,this._identifyMissing=(E,N)=>!(E in N)||f(E,N),this._identifyRequired=I,this._preprocess=C,this._postprocess=b,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=Lcc()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],n=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};n();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let l=xTi(o.default(this._utils));"value"in l&&r.push({[a]:l.value})}}n();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],l=t[a],A=o.postprocess(l,this._utils);A!==yEt&&(this._applyValidation(A,a,o),t[a]=A)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:n,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of n){let l=this._utils.schemas[o],A=l.preprocess(e[o],this._utils);this._applyValidation(A,o,l);let f=({from:b,to:E})=>{r.push(typeof E=="string"?{[E]:b}:{[E.key]:E.value})},I=({value:b,redirectTo:E})=>{let N=FTi(l.deprecated(b,this._utils),A,!0);if(N!==!1)if(N===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,E,this._utils));else for(let{value:B}of N){let F={key:o,value:B};if(!this._hasDeprecationWarned(F)){let Q=typeof E=="string"?{key:E,value:B}:E;this._utils.logger.warn(this._deprecatedHandler(F,Q,this._utils))}}};ikr(l.forward(A,this._utils),A).forEach(f);let C=LTi(l.redirect(A,this._utils),A);if(C.redirect.forEach(f),"remain"in C){let b=C.remain;t[o]=o in t?l.overlap(t[o],b,this._utils):b,I({value:b})}for(let{from:b,to:E}of C.redirect)I({value:b,redirectTo:E})}for(let o of a){let l=e[o];this._applyUnknownHandler(o,l,t,(A,f)=>{r.push({[A]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,fRi,this._utils)}_partitionOptionKeys(e){let[t,r]=Vcc(Object.keys(e).filter(n=>!this._identifyMissing(n,e)),n=>n in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let n=GTi(r.validate(e,this._utils),e);if(n!==!0)throw this._invalidHandler(t,n.value,this._utils)}_applyUnknownHandler(e,t,r,n){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let l=a[o];o in this._utils.schemas?n(o,l):r[o]=l}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==yEt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:n}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of n){let o=t.override[a];this._applyUnknownHandler(a,o,e,(l,A)=>{let f=this._utils.schemas[l];this._applyValidation(A,l,f),e[l]=A})}}}}},XDr;function zcc(e,t,{logger:r=!1,isCLI:n=!1,passThrough:a=!1,FlagSchema:o,descriptor:l}={}){if(n){if(!o)throw new Error("'FlagSchema' option is required.");if(!l)throw new Error("'descriptor' option is required.")}else l=MNe;let A=a?Array.isArray(a)?(E,N)=>a.includes(E)?{[E]:N}:void 0:(E,N)=>({[E]:N}):(E,N,B)=>{let{_:F,...Q}=B.schemas;return mRi(E,N,{...B,schemas:Q})},f=qcc(t,{isCLI:n,FlagSchema:o}),I=new jcc(f,{logger:r,unknown:A,descriptor:l}),C=r!==!1;C&&XDr&&(I._hasDeprecationWarned=XDr);let b=I.normalize(e);return C&&(XDr=I._hasDeprecationWarned),b}function qcc(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(kcc.create({name:"_"}));for(let a of e)n.push($cc(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&n.push(Dcc.create({name:a.alias,sourceName:a.name}));return n}function $cc(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:a}=e,o={name:a},l,A={};switch(e.type){case"int":l=Qcc,t&&(o.preprocess=Number);break;case"string":l=VTi;break;case"choice":l=Hcc,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":l=Gcc;break;case"flag":l=n,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":l=VTi;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,I,C)=>e.exception(f)||I.validate(f,C):o.validate=(f,I,C)=>f===void 0||I.validate(f,C),e.redirect&&(A.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(A.deprecated=!0),t&&!e.array){let f=o.preprocess||(I=>I);o.preprocess=(I,C,b)=>C.preprocess(f(Array.isArray(I)?aD(!1,I,-1):I),b)}return e.array?xcc.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...A,valueSchema:l.create(o)}):l.create({...o,...A})}var elc=zcc,tlc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},_Ri=tlc;function yRi(e,t){if(!t)throw new Error("parserName is required.");let r=_Ri(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new dRi(n)}function rlc(e,t){if(!t)throw new Error("astFormat is required.");let r=_Ri(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new dRi(n)}function bRi({plugins:e,parser:t}){let r=yRi(e,t);return ERi(r,t)}function ERi(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function nlc(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var PTi={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function ilc(e,t={}){var r;let n={...e};if(!n.parser)if(n.filepath){if(n.parser=Scc(n,{physicalFile:n.filepath}),!n.parser)throw new vTi(`No parser could be inferred for file "${n.filepath}".`)}else throw new vTi("No parser and no file path given, couldn't infer a parser.");let a=pRi({plugins:e.plugins,showDeprecated:!0}).options,o={...PTi,...Object.fromEntries(a.filter(E=>E.default!==void 0).map(E=>[E.name,E.default]))},l=yRi(n.plugins,n.parser),A=await ERi(l,n.parser);n.astFormat=A.astFormat,n.locEnd=A.locEnd,n.locStart=A.locStart;let f=(r=l.printers)!=null&&r[A.astFormat]?l:rlc(n.plugins,A.astFormat),I=await nlc(f,A.astFormat);n.printer=I;let C=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,E])=>E!==void 0)):{},b={...o,...C};for(let[E,N]of Object.entries(b))(n[E]===null||n[E]===void 0)&&(n[E]=N);return n.parser==="json"&&(n.trailingComma="none"),elc(n,a,{passThrough:Object.keys(PTi),...t})}var XNe=ilc,slc=vEt(qoc(),1);async function olc(e,t){let r=await bRi(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let a;try{a=await r.parse(n,t,t)}catch(o){alc(o,e)}return{text:n,ast:a}}function alc(e,t){let{loc:r}=e;if(r){let n=(0,slc.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` +`+n,e.codeFrame=n,e}throw e}var OJe=olc;async function clc(e,t,r,n,a){let{embeddedLanguageFormatting:o,printer:{embed:l,hasPrettierIgnore:A=()=>!1,getVisitorKeys:f}}=r;if(!l||o!=="auto")return;if(l.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let I=kEt(l.getVisitorKeys??f),C=[];N();let b=e.stack;for(let{print:B,node:F,pathStack:Q}of C)try{e.stack=Q;let X=await B(E,t,e,r);X&&a.set(F,X)}catch(X){if(globalThis.PRETTIER_DEBUG)throw X}e.stack=b;function E(B,F){return llc(B,F,r,n)}function N(){let{node:B}=e;if(B===null||typeof B!="object"||A(e))return;for(let Q of I(B))Array.isArray(B[Q])?e.each(N,Q):e.call(N,Q);let F=l(e,r);if(F){if(typeof F=="function"){C.push({print:F,node:B,pathStack:[...e.stack]});return}a.set(B,F)}}}async function llc(e,t,r,n){let a=await XNe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await OJe(e,a),l=await n(o,a);return zTi(l)}function ulc(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var glc=ulc;async function xEt(e,t){({ast:e}=await SRi(e,t));let r=new Map,n=new Uac(e),a=hcc(t),o=new Map;await clc(n,A,t,xEt,o);let l=await WTi(n,t,A,void 0,o);if(fcc(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[rCe,l];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[l,rCe];return l;function A(I,C){return I===void 0||I===n?f(C):Array.isArray(I)?n.call(()=>f(C),...I):n.call(()=>f(C),I)}function f(I){a(n);let C=n.node;if(C==null)return"";let b=C&&typeof C=="object"&&I===void 0;if(b&&r.has(C))return r.get(C);let E=WTi(n,t,A,I,o);return b&&r.set(C,E),E}}function WTi(e,t,r,n,a){var o;let{node:l}=e,{printer:A}=t,f;switch((o=A.hasPrettierIgnore)!=null&&o.call(A,e)?f=glc(e,t):a.has(l)?f=a.get(l):f=A.print(e,t,r,n),l){case t.cursorNode:f=CEt(f,I=>[rCe,I,rCe]);break;case t.nodeBeforeCursor:f=CEt(f,I=>[I,rCe]);break;case t.nodeAfterCursor:f=CEt(f,I=>[rCe,I]);break}return A.printComment&&(!A.willPrintOwnComments||!A.willPrintOwnComments(e,t))&&(f=pcc(e,f,t)),f}async function SRi(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,acc(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function Alc(e,t){let{cursorOffset:r,locStart:n,locEnd:a}=t,o=kEt(t.printer.getVisitorKeys),l=N=>n(N)<=r&&a(N)>=r,A=e,f=[e];for(let N of zac(e,{getVisitorKeys:o,filter:l}))f.push(N),A=N;if(qac(A,{getVisitorKeys:o}))return{cursorNode:A};let I,C,b=-1,E=Number.POSITIVE_INFINITY;for(;f.length>0&&(I===void 0||C===void 0);){A=f.pop();let N=I!==void 0,B=C!==void 0;for(let F of DEt(A,{getVisitorKeys:o})){if(!N){let Q=a(F);Q<=r&&Q>b&&(I=F,b=Q)}if(!B){let Q=n(F);Q>=r&&Ql(E,f)).filter(Boolean);let I={},C=new Set(a(A));for(let E in A)!Object.prototype.hasOwnProperty.call(A,E)||o.has(E)||(C.has(E)?I[E]=l(A[E],A):I[E]=A[E]);let b=r(A,I,f);if(b!==null)return b??I}}var flc=plc,Ilc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return n}return-1}},hlc=Ilc,mlc=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function Clc(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(a=>vRi.has(a.type)&&n.has(a))}function OTi(e){let t=hlc(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function _lc(e,t,{locStart:r,locEnd:n}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let l=r(e.node);for(let f of OTi(t.parentNodes))if(r(f)>=l)o=f;else break;let A=n(t.node);for(let f of OTi(e.parentNodes)){if(n(f)<=A)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function skr(e,t,r,n,a=[],o){let{locStart:l,locEnd:A}=r,f=l(e),I=A(e);if(!(t>I||tn);let A=e.slice(n,a).search(/\S/u),f=A===-1;if(!f)for(n+=A;a>n&&!/\S/u.test(e[a-1]);--a);let I=skr(r,n,t,(N,B)=>MTi(t,N,B),[],"rangeStart"),C=f?I:skr(r,a,t,N=>MTi(t,N),[],"rangeEnd");if(!I||!C)return{rangeStart:0,rangeEnd:0};let b,E;if(mlc(t)){let N=Clc(I,C);b=N,E=N}else({startNode:b,endNode:E}=_lc(I,C,t));return{rangeStart:Math.min(o(b),o(E)),rangeEnd:Math.max(l(b),l(E))}}var BRi="\uFEFF",HTi=Symbol("cursor");async function wRi(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:a}=await OJe(e,t);t.cursorOffset>=0&&(t={...t,...dlc(n,t)});let o=await xEt(n,t,r);r>0&&(o=iRi([nCe,o],r,t.tabWidth));let l=NEt(o,t);if(r>0){let f=l.formatted.trim();l.cursorNodeStart!==void 0&&(l.cursorNodeStart-=l.formatted.indexOf(f),l.cursorNodeStart<0&&(l.cursorNodeStart=0,l.cursorNodeText=l.cursorNodeText.trimStart()),l.cursorNodeStart+l.cursorNodeText.length>f.length&&(l.cursorNodeText=l.cursorNodeText.trimEnd())),l.formatted=f+ukr(t.endOfLine)}let A=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,I,C,b;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&l.cursorNodeText)if(C=l.cursorNodeStart,b=l.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),I=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let X=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;I=a.slice(f,X)}else f=0,I=a,C=0,b=l.formatted;let E=t.cursorOffset-f;if(I===b)return{formatted:l.formatted,cursorOffset:C+E,comments:A};let N=I.split("");N.splice(E,0,HTi);let B=b.split(""),F=oac(N,B),Q=C;for(let X of F)if(X.removed){if(X.value.includes(HTi))break}else Q+=X.count;return{formatted:l.formatted,cursorOffset:Q,comments:A}}return{formatted:l.formatted,cursorOffset:-1,comments:A}}async function Slc(e,t){let{ast:r,text:n}=await OJe(e,t),{rangeStart:a,rangeEnd:o}=Elc(n,t,r),l=n.slice(a,o),A=Math.min(a,n.lastIndexOf(` +`,a)+1),f=n.slice(A,a).match(/^\s*/u)[0],I=Ikr(f,t.tabWidth),C=await wRi(l,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},I),b=C.formatted.trimEnd(),{cursorOffset:E}=t;E>o?E+=b.length-l.length:C.cursorOffset>=0&&(E=C.cursorOffset+a);let N=n.slice(0,a)+b+n.slice(o);if(t.endOfLine!=="lf"){let B=ukr(t.endOfLine);E>=0&&B===`\r +`&&(E+=KTi(N.slice(0,E),` +`)),N=BEt(!1,N,` +`,B)}return{formatted:N,cursorOffset:E,comments:C.comments}}function JDr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function YTi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a}=t;return r=JDr(e,r,-1),n=JDr(e,n,0),a=JDr(e,a,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:a}}function TRi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o}=YTi(e,t),l=e.charAt(0)===BRi;if(l&&(e=e.slice(1),r--,n--,a--),o==="auto"&&(o=aac(e)),e.includes("\r")){let A=f=>KTi(e.slice(0,Math.max(f,0)),`\r +`);r-=A(r),n-=A(n),a-=A(a),e=cac(e)}return{hasBOM:l,text:e,options:YTi(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o})}}async function QTi(e,t){let r=await bRi(t);return!r.hasPragma||r.hasPragma(e)}async function RRi(e,t){let{hasBOM:r,text:n,options:a}=TRi(e,await XNe(t));if(a.rangeStart>=a.rangeEnd&&n!==""||a.requirePragma&&!await QTi(n,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function vlc(e,t,r){let{text:n,options:a}=TRi(e,await XNe(t)),o=await OJe(n,a);return r&&(r.preprocessForPrint&&(o.ast=await SRi(o.ast,a)),r.massage&&(o.ast=flc(o.ast,a))),o}async function Blc(e,t){t=await XNe(t);let r=await xEt(e,t);return NEt(r,t)}async function wlc(e,t){let r=Lac(e),{formatted:n}=await RRi(r,{...t,parser:"__js_expression"});return n}async function Tlc(e,t){t=await XNe(t);let{ast:r}=await OJe(e,t);return xEt(r,t)}async function Rlc(e,t){return NEt(e,await XNe(t))}var NRi={};akr(NRi,{builders:()=>Nlc,printer:()=>Dlc,utils:()=>klc});var Nlc={join:nRi,line:tRi,softline:Fac,hardline:nCe,literalline:rRi,group:$Ti,conditionalGroup:Rac,fill:Nac,lineSuffix:qDr,lineSuffixBoundary:xac,cursor:rCe,breakParent:REt,ifBreak:Dac,trim:Gac,indent:SEt,indentIfBreak:kac,align:QNe,addAlignmentToDoc:iRi,markAsRoot:wac,dedentToRoot:Bac,dedent:Tac,hardlineWithoutBreakParent:pkr,literallineWithoutBreakParent:eRi,label:Zac,concat:e=>e},Dlc={printDocToString:NEt},klc={willBreak:Iac,traverseDoc:gkr,findInDoc:Akr,mapDoc:TEt,removeLines:Cac,stripTrailingHardline:zTi,replaceEndOfLine:bac,canBreak:Sac},xlc="3.5.3",DRi={};akr(DRi,{addDanglingComment:()=>eCe,addLeadingComment:()=>WNe,addTrailingComment:()=>ONe,getAlignmentSize:()=>Ikr,getIndentSize:()=>Plc,getMaxContinuousCount:()=>Mlc,getNextNonSpaceNonCommentCharacter:()=>Ylc,getNextNonSpaceNonCommentCharacterIndex:()=>euc,getPreferredQuote:()=>Xlc,getStringWidth:()=>fkr,hasNewline:()=>Nce,hasNewlineInRange:()=>Ulc,hasSpaces:()=>jlc,isNextLineEmpty:()=>iuc,isNextLineEmptyAfterIndex:()=>Ekr,isPreviousLineEmpty:()=>ruc,makeString:()=>qlc,skip:()=>WJe,skipEverythingButNewLine:()=>cRi,skipInlineComment:()=>_kr,skipNewline:()=>iCe,skipSpaces:()=>Dce,skipToLineEnd:()=>aRi,skipTrailingComment:()=>ykr,skipWhitespace:()=>$ac});function Glc(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(n,a.length/t.length),0)}var Mlc=Olc;function Hlc(e,t){let r=bkr(e,t);return r===!1?"":e.charAt(r)}var Ylc=Hlc,mEt="'",XTi='"';function Qlc(e,t){let r=t===!0||t===mEt?mEt:XTi,n=r===mEt?XTi:mEt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var Xlc=Qlc;function Jlc(e,t,r){for(let n=t;nl===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var qlc=zlc;function $lc(e,t,r){return bkr(e,r(t))}function euc(e,t){return arguments.length===2||typeof t=="number"?bkr(e,t):$lc(...arguments)}function tuc(e,t,r){return Ckr(e,r(t))}function ruc(e,t){return arguments.length===2||typeof t=="number"?Ckr(e,t):tuc(...arguments)}function nuc(e,t,r){return Ekr(e,r(t))}function iuc(e,t){return arguments.length===2||typeof t=="number"?Ekr(e,t):nuc(...arguments)}function tCe(e,t=1){return async(...r)=>{let n=r[t]??{},a=n.plugins??[];return r[t]={...n,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var kRi=tCe(RRi);async function GEt(e,t){let{formatted:r}=await kRi(e,{...t,cursorOffset:-1});return r}async function suc(e,t){return await GEt(e,t)===e}var ouc=tCe(pRi,0),auc={parse:tCe(vlc),formatAST:tCe(Blc),formatDoc:tCe(wlc),printToDoc:tCe(Tlc),printDocToString:tCe(Rlc)};var $Ni=Nt(gHe(),1);var XJe=Nt(GRi(),1);var cuc=/^(?:( )+|\t+)/,MJe="space",ZRi="tab";function FRi(e,t){let r=new Map,n=0,a,o;for(let l of e.split(/\n/g)){if(!l)continue;let A,f,I,C,b,E=l.match(cuc);if(E===null)n=0,a="";else{if(A=E[0].length,f=E[1]?MJe:ZRi,t&&f===MJe&&A===1)continue;f!==a&&(n=0),a=f,I=1,C=0;let N=A-n;if(n=A,N===0)I=0,C=1;else{let B=N>0?N:-N;o=luc(f,B)}b=r.get(o),b=b===void 0?[1,0]:[b[0]+I,b[1]+C],r.set(o,b)}}return r}function luc(e,t){return(e===MJe?"s":"t")+String(t)}function uuc(e){let r=e[0]==="s"?MJe:ZRi,n=Number(e.slice(1));return{type:r,amount:n}}function guc(e){let t,r=0,n=0;for(let[a,[o,l]]of e)(o>r||o===r&&l>n)&&(r=o,n=l,t=a);return t}function Auc(e,t){return(e===MJe?" ":" ").repeat(t)}function Skr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=FRi(e,!0);t.size===0&&(t=FRi(e,!1));let r=guc(t),n,a=0,o="";return r!==void 0&&({type:n,amount:a}=uuc(r),o=Auc(n,a)),{amount:a,type:n,indent:o}}function duc(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r `).length,n=t.length-r;return r>n?`\r `:` -`}function bRi(e){return typeof e=="string"&&Vlc(e)||` -`}function _kr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Ekr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),HJe=e=>(t,...r)=>e.reduce((n,a)=>a(n,...r),t),MJe=e=>t=>Array.isArray(t)?e(t):t,vRi=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,OJe=vRi(e=>[...new Set(e)]),Plc=vRi(e=>[...e].sort()),xEt=HJe([OJe,Plc]),QJe=e=>(t,...r)=>_kr(t)?e(t,...r):t,oH=(e,t)=>{let r=QJe(n=>(t&&(n=Object.fromEntries(Object.entries(n).map(([a,o])=>[a,r(o)]))),(0,YJe.default)(n,e)));return r},Vm=oH(),ykr=oH(["type","url"]),bkr=oH(["name","email","url"]),Wlc=oH(["lib","bin","man","doc","example","test"]),Wee=(e,t)=>(r,...n)=>Ekr(r,e)?{...r,[e]:t(r[e],...n)}:r,Olc=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],BRi=QJe(HJe([oH(Olc),Wee("env",Vm),Wee("globals",Vm),Wee("overrides",MJe(e=>e.map(BRi))),Wee("parserOptions",Vm),Wee("rules",oH((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),Wee("settings",Vm)])),Mlc=oH(["description","url","href"]),Hlc=QJe(HJe([e=>(0,YJe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),Wee("overrides",MJe(e=>e.map(HJe([Vm,Wee("options",Vm)]))))])),Ylc=oH(["node","npm","yarn"]),Qlc=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),Xlc=(e,t)=>Ekr(t,"devDependencies")&&Ekr(t.devDependencies,e),ERi=QJe((e,t)=>{let r=Object.keys(e),n=new Set,a=r.map(l=>{let A=l.replace(/^(?:pre|post)/,"");return Qlc.has(A)||r.includes(A)?(n.add(A),A):l});Xlc("npm-run-all",t)||a.sort();let o=a.flatMap(l=>n.has(l)?[`pre${l}`,l,`post${l}`]:[l]);return(0,YJe.default)(e,o)}),wRi=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:OJe},{key:"keywords",over:OJe},{key:"homepage"},{key:"bugs",over:oH(["url","email"])},{key:"repository",over:ykr},{key:"funding",over:ykr},{key:"license",over:ykr},{key:"qna"},{key:"author",over:bkr},{key:"maintainers",over:MJe(e=>e.map(bkr))},{key:"contributors",over:MJe(e=>e.map(bkr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:Vm},{key:"man"},{key:"directories",over:Wlc},{key:"files",over:OJe},{key:"workspaces"},{key:"binary",over:oH(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:ERi},{key:"betterScripts",over:ERi},{key:"contributes",over:Vm},{key:"activationEvents",over:OJe},{key:"pre-commit"},{key:"commitlint",over:Vm},{key:"lint-staged"},{key:"config",over:Vm},{key:"nodemonConfig",over:Vm},{key:"browserify",over:Vm},{key:"babel",over:Vm},{key:"browserslist"},{key:"xo",over:Vm},{key:"prettier",over:Hlc},{key:"eslintConfig",over:BRi},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:Vm},{key:"npmPackageJsonLintConfig",over:Vm},{key:"npmpackagejsonlint",over:Vm},{key:"release",over:Vm},{key:"remarkConfig",over:Vm},{key:"stylelint"},{key:"ava",over:Vm},{key:"jest",over:Vm},{key:"jest-junit",over:Vm},{key:"jest-stare",over:Vm},{key:"mocha",over:Vm},{key:"nyc",over:Vm},{key:"c8",over:Vm},{key:"tap",over:Vm},{key:"resolutions",over:Vm},{key:"dependencies",over:Vm},{key:"devDependencies",over:Vm},{key:"dependenciesMeta",over:oH(void 0,!0)},{key:"peerDependencies",over:Vm},{key:"peerDependenciesMeta",over:oH(void 0,!0)},{key:"optionalDependencies",over:Vm},{key:"bundledDependencies",over:xEt},{key:"bundleDependencies",over:xEt},{key:"extensionPack",over:xEt},{key:"extensionDependencies",over:xEt},{key:"flat"},{key:"packageManager"},{key:"engines",over:Vm},{key:"engineStrict",over:Vm},{key:"volta",over:Ylc},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:Vm},{key:"publishConfig",over:Vm},{key:"icon"},{key:"badges",over:MJe(e=>e.map(Mlc))},{key:"galleryBanner",over:Vm},{key:"preview"},{key:"markdown"}],SRi=wRi.map(({key:e})=>e),Jlc=HJe(wRi.map(({key:e,over:t})=>t?Wee(e,t):void 0).filter(Boolean));function Ulc(e,t){if(typeof e=="string"){let{indent:r}=Ckr(e),n=e.slice(-1)===` +`}function LRi(e){return typeof e=="string"&&duc(e)||` +`}function vkr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Tkr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),QJe=e=>(t,...r)=>e.reduce((n,a)=>a(n,...r),t),YJe=e=>t=>Array.isArray(t)?e(t):t,WRi=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,HJe=WRi(e=>[...new Set(e)]),puc=WRi(e=>[...e].sort()),FEt=QJe([HJe,puc]),JJe=e=>(t,...r)=>vkr(t)?e(t,...r):t,oH=(e,t)=>{let r=JJe(n=>(t&&(n=Object.fromEntries(Object.entries(n).map(([a,o])=>[a,r(o)]))),(0,XJe.default)(n,e)));return r},Vm=oH(),Bkr=oH(["type","url"]),wkr=oH(["name","email","url"]),fuc=oH(["lib","bin","man","doc","example","test"]),Oee=(e,t)=>(r,...n)=>Tkr(r,e)?{...r,[e]:t(r[e],...n)}:r,Iuc=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],ORi=JJe(QJe([oH(Iuc),Oee("env",Vm),Oee("globals",Vm),Oee("overrides",YJe(e=>e.map(ORi))),Oee("parserOptions",Vm),Oee("rules",oH((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),Oee("settings",Vm)])),huc=oH(["description","url","href"]),muc=JJe(QJe([e=>(0,XJe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),Oee("overrides",YJe(e=>e.map(QJe([Vm,Oee("options",Vm)]))))])),Cuc=oH(["node","npm","yarn"]),_uc=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),yuc=(e,t)=>Tkr(t,"devDependencies")&&Tkr(t.devDependencies,e),VRi=JJe((e,t)=>{let r=Object.keys(e),n=new Set,a=r.map(l=>{let A=l.replace(/^(?:pre|post)/,"");return _uc.has(A)||r.includes(A)?(n.add(A),A):l});yuc("npm-run-all",t)||a.sort();let o=a.flatMap(l=>n.has(l)?[`pre${l}`,l,`post${l}`]:[l]);return(0,XJe.default)(e,o)}),MRi=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:HJe},{key:"keywords",over:HJe},{key:"homepage"},{key:"bugs",over:oH(["url","email"])},{key:"repository",over:Bkr},{key:"funding",over:Bkr},{key:"license",over:Bkr},{key:"qna"},{key:"author",over:wkr},{key:"maintainers",over:YJe(e=>e.map(wkr))},{key:"contributors",over:YJe(e=>e.map(wkr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:Vm},{key:"man"},{key:"directories",over:fuc},{key:"files",over:HJe},{key:"workspaces"},{key:"binary",over:oH(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:VRi},{key:"betterScripts",over:VRi},{key:"contributes",over:Vm},{key:"activationEvents",over:HJe},{key:"pre-commit"},{key:"commitlint",over:Vm},{key:"lint-staged"},{key:"config",over:Vm},{key:"nodemonConfig",over:Vm},{key:"browserify",over:Vm},{key:"babel",over:Vm},{key:"browserslist"},{key:"xo",over:Vm},{key:"prettier",over:muc},{key:"eslintConfig",over:ORi},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:Vm},{key:"npmPackageJsonLintConfig",over:Vm},{key:"npmpackagejsonlint",over:Vm},{key:"release",over:Vm},{key:"remarkConfig",over:Vm},{key:"stylelint"},{key:"ava",over:Vm},{key:"jest",over:Vm},{key:"jest-junit",over:Vm},{key:"jest-stare",over:Vm},{key:"mocha",over:Vm},{key:"nyc",over:Vm},{key:"c8",over:Vm},{key:"tap",over:Vm},{key:"resolutions",over:Vm},{key:"dependencies",over:Vm},{key:"devDependencies",over:Vm},{key:"dependenciesMeta",over:oH(void 0,!0)},{key:"peerDependencies",over:Vm},{key:"peerDependenciesMeta",over:oH(void 0,!0)},{key:"optionalDependencies",over:Vm},{key:"bundledDependencies",over:FEt},{key:"bundleDependencies",over:FEt},{key:"extensionPack",over:FEt},{key:"extensionDependencies",over:FEt},{key:"flat"},{key:"packageManager"},{key:"engines",over:Vm},{key:"engineStrict",over:Vm},{key:"volta",over:Cuc},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:Vm},{key:"publishConfig",over:Vm},{key:"icon"},{key:"badges",over:YJe(e=>e.map(huc))},{key:"galleryBanner",over:Vm},{key:"preview"},{key:"markdown"}],PRi=MRi.map(({key:e})=>e),buc=QJe(MRi.map(({key:e,over:t})=>t?Oee(e,t):void 0).filter(Boolean));function Euc(e,t){if(typeof e=="string"){let{indent:r}=Skr(e),n=e.slice(-1)===` `?` -`:"",a=bRi(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+n;return a===`\r -`&&(o=o.replace(/\n/g,a)),o}return t(e)}var Klc=e=>e[0]==="_",jlc=(e,t)=>e.reduce((r,n)=>(r[t(n)?0:1].push(n),r),[[],[]]);function zlc(e,t={}){return Ulc(e,QJe(r=>{let n=t.sortOrder||SRi;if(Array.isArray(n)){let a=Object.keys(r),[o,l]=jlc(a,Klc);n=[...n,...SRi,...l.sort(),...o.sort()]}return Jlc((0,YJe.default)(r,n),r)}))}var TRi=zlc;var GEt=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(n=>n.type==="ImportDeclaration").map(n=>{let a={start:n.range[0],end:n.range[1],importStart:n.range[0],importEnd:n.range[1],type:n.importKind==="type"?"import-type":"import",moduleName:n.source.value,defaultMember:n.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local.name,namespaceMember:n.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local.name,namedMembers:n.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:n.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===n.loc.start.line&&f.loc.end.line===n.loc.end.line);o&&(a.end=o.range[1]);let l=f=>{let I=this.program.comments.find(b=>b.loc.start.line===f);return I?[...l(I.loc.start.line-1),I]:[]},A=l(n.loc.start.line-1);return A.length>0&&(a.start=A.at(0).range.at(0)),a})}formatImport(t,r,n=` +`:"",a=LRi(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+n;return a===`\r +`&&(o=o.replace(/\n/g,a)),o}return t(e)}var Suc=e=>e[0]==="_",vuc=(e,t)=>e.reduce((r,n)=>(r[t(n)?0:1].push(n),r),[[],[]]);function Buc(e,t={}){return Euc(e,JJe(r=>{let n=t.sortOrder||PRi;if(Array.isArray(n)){let a=Object.keys(r),[o,l]=vuc(a,Suc);n=[...n,...PRi,...l.sort(),...o.sort()]}return buc((0,XJe.default)(r,n),r)}))}var HRi=Buc;var ZEt=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(n=>n.type==="ImportDeclaration").map(n=>{let a={start:n.range[0],end:n.range[1],importStart:n.range[0],importEnd:n.range[1],type:n.importKind==="type"?"import-type":"import",moduleName:n.source.value,defaultMember:n.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local.name,namespaceMember:n.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local.name,namedMembers:n.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:n.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===n.loc.start.line&&f.loc.end.line===n.loc.end.line);o&&(a.end=o.range[1]);let l=f=>{let I=this.program.comments.find(b=>b.loc.start.line===f);return I?[...l(I.loc.start.line-1),I]:[]},A=l(n.loc.start.line-1);return A.length>0&&(a.start=A.at(0).range.at(0)),a})}formatImport(t,r,n=` `){let a=r.importStart||r.start,o=r.importEnd||r.end,l=t.substring(a,o),{namedMembers:A}=r;if(A.length===0)return t.substring(r.start,r.end);let f=l.replace(/\{[\s\S]*\}/g,I=>{let C=I.includes(n),b;C&&([b]=I.split(n)[1].match(/^\s*/));let E=I.charAt(1)===" ",N=I.replace("}","").trim().endsWith(",");return this.formatNamedMembers(A,C,E,N,b,n)});return t.substring(r.start,a)+f+t.substring(o,o+(r.end-o))}formatNamedMembers(t,r,n,a,o="",l=` -`){if(r)return"{"+l+t.map(({name:I,alias:C},b)=>{let E=b===t.length-1,N=!a&&E?"":",";return I===C?`${o}${I}${N}`+l:`${o}${I} as ${C}${N}`+l}).join("")+"}";let A=n?" ":"",f=a?",":"";return"{"+A+t.map(({name:I,alias:C})=>I===C?`${I}`:`${I} as ${C}`).join(", ")+f+A+"}"}};var SNi=Nt(CNi(),1);import{readFileSync as _Ni}from"node:fs";import{join as yNi}from"node:path";var Ngc=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(_Ni(yNi(process.cwd(),"/package.json"),"utf-8"));t&&t.length>0&&lQn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(n=>{try{let{name:a}=JSON.parse(_Ni(yNi(n,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},Dgc=Ngc(),cD=e=>Dgc.some(t=>e.moduleName.startsWith(t)),bNi=e=>e.moduleName.startsWith("node:"),c4=e=>e.type==="import-type";var ENi=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:n,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:l,isScopedModule:A,moduleName:f,naturally:I,member:C,not:b,startsWithLowerCase:E,startsWithUpperCase:N})=>{let B=[{match:e(n,o,b(cD)),sort:f(I)},{match:e(n,o,cD),sort:f(I)},{match:e(n,l),sort:f(I)}],F=[{match:e(c4,o,a),sort:f(I)},{match:e(c4,o,r,C(N)),sort:f(I)},{match:e(c4,o,r,C(E)),sort:f(I)},{match:e(c4,o,t,C(N)),sort:f(I)},{match:e(c4,o,t,C(E)),sort:f(I)}],Q=[{match:e(c4,l,a),sort:f(I)},{match:e(c4,l,r,C(N)),sort:f(I)},{match:e(c4,l,r,C(E)),sort:f(I)},{match:e(c4,l,t,C(N)),sort:f(I)},{match:e(c4,l,t,C(E)),sort:f(I)}],X=[{match:bNi,sort:f(I)}],ae=[{match:e(A,b(cD),a),sort:f(I)},{match:e(A,b(cD),r,C(N)),sort:f(I)},{match:e(A,b(cD),r,C(E)),sort:f(I)},{match:e(A,b(cD),t,C(N)),sort:f(I)},{match:e(A,b(cD),t,C(E)),sort:f(I)},{match:e(o,b(cD),b(A),a),sort:f(I)},{match:e(o,b(A),b(cD),r,C(N)),sort:f(I)},{match:e(o,b(A),b(cD),r,C(E)),sort:f(I)},{match:e(o,b(A),b(cD),t,C(N)),sort:f(I)},{match:e(o,b(A),b(cD),t,C(E)),sort:f(I)}],ne=[{match:e(cD,a),sort:f(I)},{match:e(cD,r,C(N)),sort:f(I)},{match:e(cD,r,C(E)),sort:f(I)},{match:e(cD,t,C(N)),sort:f(I)},{match:e(cD,t,C(E)),sort:f(I)}],ce=[{match:e(l,a),sort:f(I)},{match:e(l,r,C(N)),sort:f(I)},{match:e(l,r,C(E)),sort:f(I)},{match:e(l,t,C(N)),sort:f(I)},{match:e(l,t,C(E)),sort:f(I)}];return[...B,{separator:!0},...F,{separator:!0},...Q,{separator:!0},...X,{separator:!0},...ae,{separator:!0},...ne,{separator:!0},...ce,{separator:!0}]};var vNi=(e,{plugins:t})=>{let r=Sce.typescript.parse(e,{plugins:t}),n=new GEt(r),{code:a}=(0,SNi.sortImports)(e,n,ENi);return a};var kgc=(e,t)=>vNi(e,t),xgc=async(e,{plugins:t})=>{let r=Sce.typescript.parse(e,{plugins:t}),n=r.body.length;return[...r.body].reverse().forEach((o,l)=>{if(o.type==="ImportDeclaration"&&o.specifiers.length>1){let A=n-l-1;r.body.splice(A,1),o.specifiers.forEach((f,I)=>{r.body.splice(A+I,0,{...o,specifiers:o.specifiers.filter((C,b)=>I===b)})})}}),r},VEt={typescript:{...Sce.typescript,astFormat:"typescript-custom",preprocess:kgc,parse:xgc},"json-stringify":{...xRe["json-stringify"],preprocess(e,t){return xRe["json-stringify"].preprocess&&(e=xRe["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?TRi(e):e}}};var wNi=zRe.estree,BNi=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Ggc=(e,t,r)=>{let n=e.getNode(),a=wNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},Fgc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>BNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=BNi(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Zgc=(e,t,r)=>{let n=e.getNode(),a=NNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},Lgc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>RNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=RNi(a);a.alignOffset=o({"typescript-custom":{...NNi,preprocess:Lgc,print:Zgc}});var kNi=async()=>({printers:await DNi(),parsers:VEt});var Vgc={printers:TNi,parsers:VEt},xNi=Vgc;var Pgc={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5",plugins:[vme,xJe,q4e,P4e,GRe,Xme,xNi]},GNi=Pgc;import{join as Wgc}from"node:path";var FNi=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist",".yarn",".vscode",".next","**/**/dist/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],Ogc=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],Mgc=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],ZNi=e=>[...Ogc.map(t=>Wgc(e,t)),...Mgc];var PEt=class e extends Hgc{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let n=await kNi(),a=VNi.default.default().add(FNi).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>Qgc(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let l=await LNi(o,"utf8"),A=await kEt(l,{...GNi,filepath:o,plugins:[vme,xJe,q4e,P4e,GRe,Xme,n]});A!==l&&A?(await Ygc(o,A,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await b$(ZNi(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await LNi(Xgc(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var Dkr=Nt(Pc(),1),eUe=class extends PNi.BaseCommand{static paths=[["format"]];files=Su.Rest({required:0});async execute(){let t=await WNi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ONi.Project.find(t,this.context.cwd),n=await PEt.initialize(this.context.cwd),{clear:a}=(0,MNi.render)((0,Dkr.jsx)(J0i,{cwd:r.cwd,formatter:n}));try{return await n.format(this.files),0}catch(o){return o instanceof Error?xE((0,Dkr.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.log(l)}):console.error(o),1}finally{a()}}};var HNi={commands:[eUe]};var Jkr={};sI(Jkr,{ImagePackCommand:()=>nUe,default:()=>ODi});var ZDi=Nt(el(),1),LDi=Nt(Sn(),1),VDi=Nt(Sn(),1),PDi=Nt(Sn(),1),Xkr=Nt(Sn(),1),WDi=Nt(ro(),1);$c();import{readFileSync as Idc}from"node:fs";import{join as hdc}from"node:path";var xkr=Nt(iTe(),1),YNi=Nt(Sn(),1),Jgc=()=>{let e=xkr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var Ugc=()=>{let e=xkr.context.payload;return String(e.pull_request?.number)},Kgc=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return Jgc();let{stdout:e}=await YNi.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` -`);return t.replace(/"/g,"")},jgc=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Ugc():"local",QNi=async e=>{let t=await Kgc(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await jgc()}-${r}-${Date.now()}`:t};var NDi=Nt(bDi(),1),Qkr=Nt(ro(),1),DDi=Nt(ro(),1);import{readFileSync as ldc}from"node:fs";var kce=Nt(ro(),1),xce=Nt(ro(),1);import{arch as vAc}from"node:os";var BAc="0.2",EDi=".git",wAc="yarn.lock",TAc=".yarnrc.yml",RAc="linux",NAc="glibc",DAc=".pnp.cjs",kAc=".pnp.data.json",Mkr=".yarn/unplugged",xAc=/["'`]([^"'`]*)["'`]/g,GAc=/\/node_modules\/(.+)$/,FAc=/(?:^|\n)pnpUnpluggedFolder:\s*([^#\n]+)/,ZAc=/^virtual:[^#]+#(.+)$/,LAc={386:"ia32",amd64:"x64",mips64le:"mips64el",ppc64le:"ppc64"},VAc={windows:"win32"},Hkr=e=>{let t=xce.ppath.normalize(e.replace(/^['"]|['"]$/g,""));return t.endsWith("/")?t.slice(0,-1):t},PAc=e=>{let r=e.match(FAc)?.[1]?.trim();return r?Hkr(r):void 0},WAc=async e=>{let t=new Set([Hkr(Mkr)]),r=xce.ppath.join(e,TAc);if(await kce.xfs.existsPromise(r)){let n=PAc(await kce.xfs.readFilePromise(r,"utf8"));n&&t.add(n)}return Array.from(t).sort()},vDi=(e,t)=>{let r=e.replaceAll("\\","/"),n=t.find(l=>r.includes(`${l}/`));if(!n)return;let a=r.indexOf(`${n}/`),o=xce.ppath.normalize(r.slice(a));return o.endsWith("/")?o.slice(0,-1):o},OAc=(e,t=[Hkr(Mkr)])=>{let r=new Set;for(let n of e.matchAll(xAc)){let a=vDi(n[1],t);a&&r.add(a)}return Array.from(r).sort()},MAc=e=>{let t=e.match(/const RAW_RUNTIME_STATE\s*=\s*'([\s\S]*?)';/);if(t)return JSON.parse(t[1].replace(/\\\r?\n/g,""))},HAc=e=>{try{return JSON.parse(e)}catch{return MAc(e)}},YAc=e=>{let t=HAc(e);if(!t||typeof t!="object")return[];let{packageRegistryData:r}=t;return Array.isArray(r)?r:[]},QAc=e=>e.match(ZAc)?.[1]??e,XAc=(e,t)=>{let r=new Map;for(let[n,a]of YAc(e))if(!(!n||!Array.isArray(a)))for(let[o,l]of a){let A=l.packageLocation?vDi(l.packageLocation,t):void 0;A&&o&&r.set(A,{reference:A,locator:{packageName:n,packageReference:QAc(o)}})}for(let n of OAc(e,t))r.has(n)||r.set(n,{reference:n});return Array.from(r.values())},JAc=async e=>{let t=new Map,r=await WAc(e),n=await Promise.all([DAc,kAc].map(async a=>{let o=xce.ppath.join(e,a);if(!await kce.xfs.existsPromise(o))return[];let l=await kce.xfs.readFilePromise(o,"utf8");return XAc(l,r)}));for(let a of n)for(let o of a){let l=t.get(o.reference);t.set(o.reference,l?.locator?l:o)}return Array.from(t.values()).sort((a,o)=>a.reference.localeCompare(o.reference))},SDi=e=>{if(e)return LAc[e]??e},UAc=e=>VAc[e]??e,KAc=e=>{let[t,r]=e?.split("/").slice(0,2)??[],n=UAc(t||RAc);return{os:n,cpu:SDi(r)??SDi(vAc()),libc:n==="linux"?NAc:void 0}},jAc=e=>e.match(/[()&|!=]|[A-Za-z0-9_.-]+/g)??[],Okr=class{constructor(t,r){this.tokens=t;this.targetPlatform=r}parse(){let t=this.parseOr(0);return!!(t&&t.next===this.tokens.length&&t.target)}isTargetCondition(t){let r=this.tokens[t],n=this.tokens[t+1],a=this.tokens[t+2];if(!r||n!=="="||!a)return;let o=t+3;switch(r){case"os":return{next:o,target:this.targetPlatform.os===a};case"cpu":return{next:o,target:this.targetPlatform.cpu===a};case"libc":return{next:o,target:this.targetPlatform.libc===a};default:return{next:o,target:!1}}}parsePrimary(t){if(this.tokens[t]==="("){let r=this.parseOr(t+1);return!r||this.tokens[r.next]!==")"?void 0:{next:r.next+1,target:r.target}}return this.isTargetCondition(t)}parseUnary(t){if(this.tokens[t]==="!"){let r=this.parseUnary(t+1);return r?{next:r.next,target:!r.target}:void 0}return this.parsePrimary(t)}parseAnd(t){let r=this.parseUnary(t);if(r){for(;this.tokens[r.next]==="&";){let n=this.parseUnary(r.next+1);if(!n)return;r={next:n.next,target:r.target&&n.target}}return r}}parseOr(t){let r=this.parseAnd(t);if(r){for(;this.tokens[r.next]==="|";){let n=this.parseAnd(r.next+1);if(!n)return;r={next:n.next,target:r.target||n.target}}return r}}},zAc=(e,t)=>{let r=jAc(e);return new Okr(r,t).parse()},qAc=e=>{let t=e.startsWith("@")?e.indexOf("@",1):e.indexOf("@");if(t!==-1)return e.slice(0,t)},$Ac=(e,t)=>{if(e.startsWith(`${t}@`))return e.slice(t.length+1)},BDi=(e,t)=>`${e}\0${t}`,edc=(e,t)=>{let r=new Map,n=new Set;for(let a of e.split(/\n{2,}/)){let o=a.match(/\n {2}resolution: "([^"]+)"/)?.[1],l=a.match(/\n {2}conditions: (.+)/)?.[1],A=o?qAc(o):void 0,f=A?$Ac(o??"",A):void 0;if(!A||!f)continue;if(!l){n.add(A);continue}let I={packageName:A,packageReference:f,target:zAc(l,t)};r.set(BDi(A,f),I)}return{conditionalLocators:r,unconditionalPackageNames:n}},tdc=async(e,t)=>{let r=xce.ppath.join(e,wAc);return await kce.xfs.existsPromise(r)?edc(await kce.xfs.readFilePromise(r,"utf8"),t):{conditionalLocators:new Map,unconditionalPackageNames:new Set}},rdc=e=>{let t=e.match(GAc);if(t)return t[1]},ndc=(e,t)=>{if(e.locator){let a=t.conditionalLocators.get(BDi(e.locator.packageName,e.locator.packageReference));return a?!a.target:!1}let r=rdc(e.reference);if(!r||t.unconditionalPackageNames.has(r))return!1;let n=Array.from(t.conditionalLocators.values()).filter(a=>a.packageName===r);return n.length>0&&n.every(a=>!a.target)},idc=(e,t)=>{let r=xce.ppath.resolve(e,t);return r===e||r.startsWith(`${e}/`)},sdc=async(e,t,r)=>(await Promise.all(t.map(async a=>({exists:idc(e,a.reference)&&await kce.xfs.existsPromise(xce.ppath.join(e,a.reference)),referenceEntry:a})))).filter(({exists:a,referenceEntry:o})=>!a&&!ndc(o,r)).map(({referenceEntry:a})=>a.reference),odc=async(e,t)=>{let r=await JAc(e);if(r.length===0)return[EDi,Mkr];let n=KAc(t),a=await tdc(e,n),o=await sdc(e,r,a);if(o.length>0)throw new Error(["PnP manifest references unplugged packages that are missing from the image pack context:",...o.map(l=>`- ${l}`)].join(` -`));return[EDi]},wDi=async({repo:e,builder:t,envs:r,cwd:n,platform:a})=>({_:{"schema-version":BAc,id:e,name:e,version:"0.0.1"},io:{buildpacks:{exclude:await odc(n,a),builder:t,build:{env:r}}}});var Ykr=Nt(Sn(),1);import{platform as adc}from"node:os";import{arch as cdc}from"node:os";var TDi="0.40.4",JNe=async(e,t,r)=>{let{code:n}=await Ykr.execUtils.pipevp(e,t,{...r,end:Ykr.execUtils.EndStrategy.ErrorCode});if(n!==0)throw new Error(`Command "${[e,...t].join(" ")}" failed with exit code ${n}`)},RDi=async({context:e,cwd:t})=>{let r;try{await JNe("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let n=`https://github.com/buildpacks/pack/releases/download/v${TDi}/pack-v${TDi}-`,a=adc(),o=cdc();switch(a){case"linux":n+="linux.tgz";break;case"darwin":o==="arm64"?n+="macos-arm64.tgz":n+="macos.tgz";break;default:break}let l=`${t??e.cwd}/pack.tgz`;await JNe("curl",["-sSL","-o",l,n],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),await JNe("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",l],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),console.log("Buildpack CLI (pack) has been installed.")}};var kDi=async({workspace:e,registry:t,publish:r,tagPolicy:n,builder:a,buildpack:o,platform:l,require:A,cwd:f},I)=>{let C=f??I.cwd,b=e.replace("@","").replace(/\//g,"-"),E=`${t}${b}`,N=await QNi(n),B=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];A&&A.length>0&&B.push({name:"BP_REQUIRE",value:A.join(",")});let F=await wDi({repo:b,builder:a,envs:B,cwd:C,platform:l}),Q=DDi.ppath.join(await Qkr.xfs.mktempPromise(),"project.toml");await Qkr.xfs.writeFilePromise(Q,(0,NDi.stringify)(F)),console.debug("project.toml",ldc(Q,"utf8"));let X=["build","--trust-builder",`${E}:${N}`,"--descriptor",Q,"--buildpack",o,"--tag",`${E}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&X.push("--publish"),l&&X.push("--platform",l),console.debug("Packing with args:",X),await RDi({cwd:f,context:I}),await JNe("pack",["config","experimental","true"],{cwd:C,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),await JNe("pack",X,{cwd:C,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),{images:[`${E}:${N}`,`${E}:latest`],tags:[N,"latest"],workspace:e}};import{arch as udc}from"node:os";var gdc="24",Adc="0.1.3",ddc="atlantislab/builder-base",pdc="ghcr.io/atls/buildpack-yarn-workspace-start",fdc="linux",xDi=()=>`${fdc}/${udc()}`,GDi=({buildpack:e,buildpackImage:t,buildpackVersion:r})=>e||`${t??pdc}:${r??Adc}`,FDi=({builder:e,builderImage:t,builderTag:r})=>e||`${t??ddc}:${r??gdc}`;var nUe=class extends ZDi.BaseCommand{static paths=[["image","pack"]];registry=Su.String("-r,--registry","");tagPolicy=Su.String("-t,--tag-policy","revision");publish=Su.Boolean("-p,--publish",!1);platform=Su.String("--platform");async execute(){let t=await LDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await VDi.Project.find(t,this.context.cwd),n=r.getWorkspaceByFilePath(this.context.cwd);return(await PDi.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(n)){o.reportInfo(null,`Workspace ${n.manifest.name?Xkr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} not allowed for package.`);return}let l=await WDi.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${n.manifest.name?Xkr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} to ${l}`);let A=Idc(hdc(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(A),{require:I}=f;await ERe.pack(t,r,n,o,l,{platform:this.platform??xDi()}),await kDi({workspace:n.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:GDi(f),builder:FDi(f),platform:this.platform,require:I,cwd:l},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:n}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build","astro build"].some(l=>a?.includes(l))&&!!n}};var ODi={commands:[nUe]};var rxr={};sI(rxr,{LibraryBuildCommand:()=>sUe,default:()=>_ki});var dki=Nt(el(),1),pki=Nt(Sn(),1),fki=Nt(Sn(),1),txr=Nt(ro(),1),Iki=Nt(Sn(),1),hki=Nt(ro(),1);$c();var mki=Nt(Al(),1);import{rm as ydc}from"node:fs/promises";import{join as Aki}from"node:path";var $kr=Nt(Al(),1),gCe=Nt(Al(),1),exr=Nt(Ec(),1),zDi=Nt(jDi(),1);import{isAbsolute as mdc}from"node:path";import{relative as Cdc}from"node:path";var Hk=Nt(Pc(),1),KEt=({messageText:e,start:t,file:r,code:n,cwd:a=process.cwd()})=>{let o=(0,exr.useMemo)(()=>r?mdc(r.fileName)?Cdc(a,r.fileName):r.fileName:null,[r]),l=(0,exr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,Hk.jsxs)(gCe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,Hk.jsxs)(gCe.Box,{flexDirection:"row",children:[(0,Hk.jsx)(gCe.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,Hk.jsx)(A8,{line:l?l.line+1:1,column:l?.character,children:o})}),(0,Hk.jsx)(gCe.Box,{paddingX:2,children:(0,Hk.jsxs)($kr.Text,{bold:!0,color:"red",children:["TS",n]})})]}),(0,Hk.jsx)(J9,{offset:2}),!!r?.text&&!!l&&(0,Hk.jsxs)(Hk.Fragment,{children:[(0,Hk.jsx)(gCe.Box,{children:(0,Hk.jsx)(d8,{line:l.line+1,column:l.character,children:r.text})}),(0,Hk.jsx)(J9,{offset:2})]}),(0,Hk.jsx)(gCe.Box,{marginTop:1,paddingX:2,children:(0,Hk.jsx)($kr.Text,{color:"white",children:(0,zDi.flattenDiagnosticMessageText)(e,` -`)})})]})};var iUe=Nt(Al(),1),oki=Nt(Ec(),1),aki=Nt(Ec(),1);var qDi=Nt(Ec(),1),$Di=Nt(Ec(),1),eki=Nt(Ec(),1),rki=Nt(Pc(),1),tki=({typescript:e})=>{let[t,r]=(0,$Di.useState)(10),n=(0,eki.useRef)();return(0,qDi.useEffect)(()=>{n.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),n.current&&clearInterval(n.current)},600)};return e.on("end",a),()=>{e.off("end",a),n.current&&clearInterval(n.current)}},[e,n,r]),(0,rki.jsx)(JM,{value:t/100*100})};var KNe=Nt(Al(),1),Oee=Nt(Al(),1),nki=Nt(Ec(),1),iki=Nt(Ec(),1);var Yk=Nt(Pc(),1),ski=({typescript:e})=>{let[t,r]=(0,iki.useState)(0);return(0,nki.useEffect)(()=>{let n=a=>{r(a.files.length)};return e.on("start",n),()=>{e.off("start",n)}},[e,r]),t===0?(0,Yk.jsxs)(KNe.Box,{flexDirection:"row",children:[(0,Yk.jsx)(RG,{color:"cyan",children:"TypeScript:"}),(0,Yk.jsx)(Oee.Text,{children:" "}),(0,Yk.jsx)(Oee.Text,{color:"white",children:"Loading files..."})]}):(0,Yk.jsxs)(KNe.Box,{flexDirection:"row",width:"100%",children:[(0,Yk.jsxs)(KNe.Box,{flexGrow:1,children:[(0,Yk.jsx)(RG,{color:"cyan",children:"TypeScript:"}),(0,Yk.jsx)(Oee.Text,{children:" "}),(0,Yk.jsx)(Oee.Text,{color:"white",children:"Processing..."})]}),(0,Yk.jsx)(KNe.Box,{flexDirection:"row",children:(0,Yk.jsxs)(KNe.Box,{children:[(0,Yk.jsx)(Oee.Text,{color:"green",children:kI.tick}),(0,Yk.jsx)(Oee.Text,{children:" "}),(0,Yk.jsxs)(Oee.Text,{color:"white",children:[t," Files"]}),(0,Yk.jsx)(Oee.Text,{children:" "})]})})]})};var Fce=Nt(Pc(),1),jEt=({typescript:e})=>{let[t,r]=(0,oki.useState)(!1);return(0,aki.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,Fce.jsx)(iUe.Box,{position:"relative",height:7,children:(0,Fce.jsxs)(iUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Fce.jsx)(iUe.Box,{children:(0,Fce.jsx)(ski,{typescript:e})}),(0,Fce.jsx)(iUe.Box,{marginTop:1,marginBottom:1,children:(0,Fce.jsx)(tki,{typescript:e})})]})})};import _dc from"node:events";import{readFileSync as lki}from"node:fs";import{createRequire as uki}from"node:module";import{join as gki}from"node:path";var bj={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react-jsx",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var cki=e=>t=>{let r=n=>{let{moduleSpecifier:a}=n;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(n)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(n,n.modifiers,n.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause);if(e.isExportDeclaration(n))return t.factory.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,n.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause)}return e.visitEachChild(n,r,t)};return n=>e.visitNode(n,r)};var jNe=class e extends _dc{constructor(r,n){super();this.ts=r;this.cwd=n}static async initialize(r){let a=uki(import.meta.url).resolve("@atls/code-runtime/package.json"),l=uki(a)("typescript");return new e(l,r)}async check(r=[]){return this.run(r)}async build(r=[],n={}){return this.run(r,n,!1)}async run(r=[],n={},a=!0){let o=this.getProjectIgnorePatterns(),l=this.getLibCheckOption(),A={...bj,compilerOptions:{...bj.compilerOptions,...n,skipLibCheck:l},include:r,exclude:[...bj.exclude,...o]},{fileNames:f,options:I,errors:C}=this.ts.parseJsonConfigFileContent(A,this.ts.sys,this.cwd);if(C.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:C}),C;this.emit("start",{files:f});let b=this.ts.createProgram(f,{...I,noEmit:a}),E=Q=>X=>(this.emit("build:start",{file:X.fileName}),X),N=Q=>X=>(this.emit("build:end",{file:X.fileName}),X),B=b.emit(void 0,void 0,void 0,void 0,{before:[E],after:[N,cki(this.ts)]}),F=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(b).concat(B.diagnostics));return this.emit("end",{diagnostics:F}),F}filterDiagnostics(r){return r.filter(n=>n.code!==2209).filter(n=>!(n.code===1479&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===2834&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===7016&&n.file?.fileName.includes("/lexical/"))).filter(n=>!(n.code===6133&&n.file?.fileName.includes("/@yarnpkg/libui/"))).filter(n=>!([2315,2411,2304,7006,7016].includes(n.code)&&n.file?.fileName.includes("/@strapi/"))).filter(n=>!([2688,2307,2503].includes(n.code)&&n.file?.fileName.includes("/pkg-tests-core/"))).filter(n=>!([2307].includes(n.code)&&n.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=lki(gki(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:n=[]}=JSON.parse(r);return n}getLibCheckOption(){let r=lki(gki(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:n=!1}=JSON.parse(r);return n}};var zEt=Nt(Pc(),1),sUe=class extends dki.BaseCommand{static paths=[["library","build"]];target=Su.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(txr.Filename.pnpCjs)&&t.includes(txr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await pki.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await fki.Project.find(t,this.context.cwd),n=[];this.target&&(n.push("-t"),n.push(this.target));let a=await hki.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Iki.execUtils.pipevp(o,["library","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){await this.cleanTarget();let t=await jNe.initialize(this.context.cwd),{clear:r}=(0,mki.render)((0,zEt.jsx)(jEt,{typescript:t}));try{let n=await t.build([Aki(this.context.cwd,"./src")],{outDir:Aki(this.context.cwd,this.target),declaration:!0});return n.forEach(a=>{xE((0,zEt.jsx)(KEt,{...a})).split(` -`).forEach(l=>{console.log(l)})}),n.length===0?0:1}catch(n){return xE((0,zEt.jsx)(Fk,{error:n})).split(` -`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await ydc(this.target,{recursive:!0,force:!0})}catch{}}};var bdc=(e,t)=>{t&&(t.exports&&(e.exports=t.exports),t.main&&(e.main=t.main),t.types&&(e.types=t.types),t.typings&&(e.typings=t.typings))},Cki=(e,t)=>{let r=e.manifest.private;bdc(t,r?t.raijin?.pack:t.publishConfig),delete t.raijin};var _ki={hooks:{beforeWorkspacePacking:Cki},commands:[sUe]};var lxr={};sI(lxr,{LintCommand:()=>cUe,default:()=>Vki});var Gki=Nt(el(),1),oxr=Nt(Sn(),1),axr=Nt(Sn(),1),cxr=Nt(ro(),1),Fki=Nt(Sn(),1),Zki=Nt(ro(),1);$c();var Lki=Nt(Al(),1);var aUe=Nt(Al(),1),wki=Nt(Ec(),1),Tki=Nt(Ec(),1);var yki=Nt(Ec(),1),nxr=Nt(Ec(),1),Eki=Nt(Pc(),1),bki=({linter:e})=>{let[t,r]=(0,nxr.useState)(0),[n,a]=(0,nxr.useState)(0);return(0,yki.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("lint:end",l),e.on("end",A),()=>{e.off("start",o),e.off("lint:end",l),e.off("end",A)}},[e,t,r,a]),(0,Eki.jsx)(JM,{value:t>0?n/t*100:0})};import{relative as Ski}from"node:path";var zNe=Nt(Al(),1),Qk=Nt(Al(),1),vki=Nt(Ec(),1),oUe=Nt(Ec(),1);var jb=Nt(Pc(),1),Edc=({state:e})=>e==="warning"?(0,jb.jsx)(Qk.Text,{color:"yellow",children:kI.warning}):e==="error"?(0,jb.jsx)(Qk.Text,{color:"red",children:kI.cross}):e==="success"?(0,jb.jsx)(Qk.Text,{color:"green",children:kI.tick}):(0,jb.jsx)(Qk.Text,{color:"white",children:kI.circleDotted}),Sdc=({state:e,children:t})=>e==="in-progress"?(0,jb.jsx)(Qk.Text,{color:"gray",children:t}):(0,jb.jsx)(Qk.Text,{color:"white",children:t}),Bki=({cwd:e,linter:t})=>{let[r,n]=(0,oUe.useState)(void 0),[a,o]=(0,oUe.useState)(0),[l,A]=(0,oUe.useState)(0),[f,I]=(0,oUe.useState)(0);return(0,vki.useEffect)(()=>{let C=N=>{o(N.files.length)},b=N=>{n({state:"in-progress",file:Ski(e,N.file)})},E=({result:N})=>{let B="success";N.warningCount>0&&(I(F=>F+N.warningCount),B="warning"),N.errorCount>0&&(A(F=>F+N.errorCount),B="error"),n({state:B,file:Ski(e,N.filePath)})};return t.on("start",C),t.on("lint:start",b),t.on("lint:end",E),()=>{t.off("start",C),t.off("lint:start",b),t.off("lint:end",E)}},[t,n,o,A,I]),r?(0,jb.jsxs)(zNe.Box,{flexDirection:"row",width:"100%",children:[(0,jb.jsxs)(zNe.Box,{flexGrow:1,children:[(0,jb.jsx)(RG,{color:"cyan",children:"Lint:"}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsx)(Sdc,{state:r.state,children:r.file})]}),(0,jb.jsx)(zNe.Box,{flexDirection:"row",children:(0,jb.jsxs)(zNe.Box,{children:[(0,jb.jsx)(Edc,{state:r.state}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"yellow",children:[f," Warnings"]}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"red",children:[l," Errors"]}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"white",children:[a," Files"]}),(0,jb.jsx)(Qk.Text,{children:" "})]})})]}):(0,jb.jsxs)(zNe.Box,{flexDirection:"row",children:[(0,jb.jsx)(RG,{color:"cyan",children:"Lint:"}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsx)(Qk.Text,{color:"white",children:"Loading files..."})]})};var Zce=Nt(Pc(),1),Rki=({cwd:e,linter:t})=>{let[r,n]=(0,wki.useState)(!1);return(0,Tki.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,Zce.jsx)(aUe.Box,{position:"relative",height:7,children:(0,Zce.jsxs)(aUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Zce.jsx)(aUe.Box,{children:(0,Zce.jsx)(Bki,{cwd:e,linter:t})}),(0,Zce.jsx)(aUe.Box,{marginTop:1,marginBottom:1,children:(0,Zce.jsx)(bki,{linter:t})})]})})};var ixr=Nt(Al(),1),Lce=Nt(Al(),1);var lD=Nt(Pc(),1),Nki=({filePath:e,message:t,source:r})=>(0,lD.jsxs)(Lce.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,lD.jsxs)(Lce.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,lD.jsx)(Lce.Box,{flexDirection:"row",flexGrow:1,children:(0,lD.jsx)(A8,{line:t.line,column:t.column,children:e})}),(0,lD.jsx)(Lce.Box,{children:(0,lD.jsxs)(ixr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,lD.jsx)(Lce.Box,{children:(0,lD.jsx)(J9,{offset:2})}),!!r&&(0,lD.jsxs)(lD.Fragment,{children:[(0,lD.jsx)(Lce.Box,{children:(0,lD.jsx)(d8,{line:t.line,column:t.column,children:r})}),(0,lD.jsx)(J9,{offset:2})]}),(0,lD.jsx)(Lce.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,lD.jsxs)(ixr.Text,{color:"white",children:[" ",t.message]})})]});var Dki=Nt(Al(),1);import{isAbsolute as vdc}from"node:path";import{relative as Bdc}from"node:path";var kki=Nt(Ec(),1);var sxr=Nt(Pc(),1),xki=({filePath:e,source:t,messages:r,cwd:n=process.cwd()})=>{let a=(0,kki.useMemo)(()=>vdc(e)?Bdc(n,e):e,[e]);return r.length===0?null:(0,sxr.jsx)(Dki.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,sxr.jsx)(Nki,{filePath:a,message:o,source:t},OW()))})};var qEt=Nt(Pc(),1),cUe=class extends Gki.BaseCommand{static paths=[["lint"]];fix=Su.Boolean("--fix");files=Su.Rest({required:0});cache=Su.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(cxr.Filename.pnpCjs)&&t.includes(cxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await oxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await axr.Project.find(t,this.context.cwd),n=await Zki.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Fki.execUtils.pipevp(o,["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await oxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await axr.Project.find(t,this.context.cwd),n=await mBe.initialize(r.cwd,this.context.cwd),{clear:a}=(0,Lki.render)((0,qEt.jsx)(Rki,{cwd:r.cwd,linter:n}));n.on("lint:end",({result:o})=>{o.messages.length>0&&xE((0,qEt.jsx)(xki,{...o})).split(` -`).forEach(A=>{console.log(A)})});try{return(await n.lint(this.files,{fix:this.fix,cache:this.cache})).find(l=>l.messages.length>0)?1:0}catch(o){return o instanceof Error?xE((0,qEt.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var Vki={commands:[cUe]};var HGr={};sI(HGr,{default:()=>CZi});var pxi=Nt(el(),1),fxi=Nt(el(),1),Ixi=Nt(Sn(),1),hxi=Nt(Sn(),1),mxi=Nt(Sn(),1),bxr=Nt(Sn(),1);import gUe from"node:assert/strict";import{execSync as dpc}from"node:child_process";function Vce(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function $Et(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((a,o)=>$Et.bind(null,e,o,a,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,n),r)():r(n))}function Pki(e,t,r,n){let a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(o,l)=>Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))),t==="after"&&(n=(o,l)=>{let A;return Promise.resolve().then(o.bind(null,l)).then(f=>(A=f,a(A,l))).then(()=>A)}),t==="error"&&(n=(o,l)=>Promise.resolve().then(o.bind(null,l)).catch(A=>a(A,l))),e.registry[r].push({hook:n,orig:a})}function Wki(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(a=>a.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var Oki=Function.bind,Mki=Oki.bind(Oki);function Hki(e,t,r){let n=Mki(Wki,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=Mki(Pki,null).apply(null,o)})}function wdc(){let e=Symbol("Singular"),t={registry:{}},r=$Et.bind(null,t,e);return Hki(r,t,e),r}function Tdc(){let e={registry:{}},t=$Et.bind(null,e);return Hki(t,e),t}var Yki={Singular:wdc,Collection:Tdc};var Rdc="0.0.0-development",Ndc=`octokit-endpoint.js/${Rdc} ${Vce()}`,Ddc={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":Ndc},mediaType:{format:""}};function kdc(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function xdc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Jki(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{xdc(t[n])?n in e?r[n]=Jki(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Qki(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function gxr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=kdc(r.headers),Qki(r),Qki(r.headers);let n=Jki(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function Gdc(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var Fdc=/\{[^}]+\}/g;function Zdc(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function Ldc(e){let t=e.match(Fdc);return t?t.map(Zdc).reduce((r,n)=>r.concat(n),[]):[]}function Xki(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function Uki(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function $Ne(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function lUe(e,t,r){return t=e==="+"||e==="#"?Uki(t):$Ne(t),r?$Ne(r)+"="+t:t}function qNe(e){return e!=null}function uxr(e){return e===";"||e==="&"||e==="?"}function Vdc(e,t,r,n){var a=e[r],o=[];if(qNe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(lUe(t,a,uxr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(qNe).forEach(function(l){o.push(lUe(t,l,uxr(t)?r:""))}):Object.keys(a).forEach(function(l){qNe(a[l])&&o.push(lUe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(qNe).forEach(function(A){l.push(lUe(t,A))}):Object.keys(a).forEach(function(A){qNe(a[A])&&(l.push($Ne(A)),l.push(lUe(t,a[A].toString())))}),uxr(t)?o.push($Ne(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?qNe(a)&&o.push($Ne(r)):a===""&&(t==="&"||t==="?")?o.push($Ne(r)+"="):a===""&&o.push("");return o}function Pdc(e){return{expand:Wdc.bind(null,e)}}function Wdc(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(Vdc(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return Uki(o)}),e==="/"?e:e.replace(/\/$/,"")}function Kki(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=Xki(e,["method","baseUrl","url","headers","request","mediaType"]),l=Ldc(r);r=Pdc(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=Xki(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=Gdc(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function Odc(e,t,r){return Kki(gxr(e,t,r))}function jki(e,t){let r=gxr(e,t),n=Odc.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:jki.bind(null,r),merge:gxr.bind(null,r),parse:Kki})}var zki=jki(null,Ddc);var ACe=class extends Error{name;status;request;response;constructor(t,r,n){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let a=Object.assign({},n.request);n.request.headers.authorization&&(a.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var Mdc="0.0.0-development",Hdc={headers:{"user-agent":`octokit-request.js/${Mdc} ${Vce()}`}};function Ydc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function qki(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,a=Ydc(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([b,E])=>[b,String(E)])),l;try{l=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(b){let E="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;E=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause))}let N=new ACe(E,500,{request:e});throw N.cause=b,N}let A=l.status,f=l.url,I={};for(let[b,E]of l.headers)I[b]=E;let C={url:f,status:A,headers:I,data:""};if("deprecation"in I){let b=I.link&&I.link.match(/<([^>]+)>; rel="deprecation"/),E=b&&b.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${I.sunset}${E?`. See ${E}`:""}`)}if(A===204||A===205)return C;if(e.method==="HEAD"){if(A<400)return C;throw new ACe(l.statusText,A,{response:C,request:e})}if(A===304)throw C.data=await Axr(l),new ACe("Not modified",A,{response:C,request:e});if(A>=400)throw C.data=await Axr(l),new ACe(Qdc(C.data),A,{response:C,request:e});return C.data=n?await Axr(l):l.body,C}async function Axr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function Qdc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function dxr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return qki(r.parse(l));let A=(f,I)=>qki(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:dxr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:dxr.bind(null,r)})}var uUe=dxr(zki,Hdc);var Xdc="0.0.0-development";function Jdc(e){return`Request failed due to following response errors: +`){if(r)return"{"+l+t.map(({name:I,alias:C},b)=>{let E=b===t.length-1,N=!a&&E?"":",";return I===C?`${o}${I}${N}`+l:`${o}${I} as ${C}${N}`+l}).join("")+"}";let A=n?" ":"",f=a?",":"";return"{"+A+t.map(({name:I,alias:C})=>I===C?`${I}`:`${I} as ${C}`).join(", ")+f+A+"}"}};var PNi=Nt(GNi(),1);import{readFileSync as FNi}from"node:fs";import{join as ZNi}from"node:path";var sAc=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(FNi(ZNi(process.cwd(),"/package.json"),"utf-8"));t&&t.length>0&&IQn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(n=>{try{let{name:a}=JSON.parse(FNi(ZNi(n,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},oAc=sAc(),cD=e=>oAc.some(t=>e.moduleName.startsWith(t)),LNi=e=>e.moduleName.startsWith("node:"),c4=e=>e.type==="import-type";var VNi=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:n,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:l,isScopedModule:A,moduleName:f,naturally:I,member:C,not:b,startsWithLowerCase:E,startsWithUpperCase:N})=>{let B=[{match:e(n,o,b(cD)),sort:f(I)},{match:e(n,o,cD),sort:f(I)},{match:e(n,l),sort:f(I)}],F=[{match:e(c4,o,a),sort:f(I)},{match:e(c4,o,r,C(N)),sort:f(I)},{match:e(c4,o,r,C(E)),sort:f(I)},{match:e(c4,o,t,C(N)),sort:f(I)},{match:e(c4,o,t,C(E)),sort:f(I)}],Q=[{match:e(c4,l,a),sort:f(I)},{match:e(c4,l,r,C(N)),sort:f(I)},{match:e(c4,l,r,C(E)),sort:f(I)},{match:e(c4,l,t,C(N)),sort:f(I)},{match:e(c4,l,t,C(E)),sort:f(I)}],X=[{match:LNi,sort:f(I)}],ae=[{match:e(A,b(cD),a),sort:f(I)},{match:e(A,b(cD),r,C(N)),sort:f(I)},{match:e(A,b(cD),r,C(E)),sort:f(I)},{match:e(A,b(cD),t,C(N)),sort:f(I)},{match:e(A,b(cD),t,C(E)),sort:f(I)},{match:e(o,b(cD),b(A),a),sort:f(I)},{match:e(o,b(A),b(cD),r,C(N)),sort:f(I)},{match:e(o,b(A),b(cD),r,C(E)),sort:f(I)},{match:e(o,b(A),b(cD),t,C(N)),sort:f(I)},{match:e(o,b(A),b(cD),t,C(E)),sort:f(I)}],ne=[{match:e(cD,a),sort:f(I)},{match:e(cD,r,C(N)),sort:f(I)},{match:e(cD,r,C(E)),sort:f(I)},{match:e(cD,t,C(N)),sort:f(I)},{match:e(cD,t,C(E)),sort:f(I)}],ce=[{match:e(l,a),sort:f(I)},{match:e(l,r,C(N)),sort:f(I)},{match:e(l,r,C(E)),sort:f(I)},{match:e(l,t,C(N)),sort:f(I)},{match:e(l,t,C(E)),sort:f(I)}];return[...B,{separator:!0},...F,{separator:!0},...Q,{separator:!0},...X,{separator:!0},...ae,{separator:!0},...ne,{separator:!0},...ce,{separator:!0}]};var WNi=(e,{plugins:t})=>{let r=vce.typescript.parse(e,{plugins:t}),n=new ZEt(r),{code:a}=(0,PNi.sortImports)(e,n,VNi);return a};var aAc=(e,t)=>WNi(e,t),cAc=async(e,{plugins:t})=>{let r=vce.typescript.parse(e,{plugins:t}),n=r.body.length;return[...r.body].reverse().forEach((o,l)=>{if(o.type==="ImportDeclaration"&&o.specifiers.length>1){let A=n-l-1;r.body.splice(A,1),o.specifiers.forEach((f,I)=>{r.body.splice(A+I,0,{...o,specifiers:o.specifiers.filter((C,b)=>I===b)})})}}),r},WEt={typescript:{...vce.typescript,astFormat:"typescript-custom",preprocess:aAc,parse:cAc},"json-stringify":{...FRe["json-stringify"],preprocess(e,t){return FRe["json-stringify"].preprocess&&(e=FRe["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?HRi(e):e}}};var MNi=$Re.estree,ONi=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},lAc=(e,t,r)=>{let n=e.getNode(),a=MNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},uAc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>ONi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=ONi(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},gAc=(e,t,r)=>{let n=e.getNode(),a=QNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},AAc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>YNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=YNi(a);a.alignOffset=o({"typescript-custom":{...QNi,preprocess:AAc,print:gAc}});var JNi=async()=>({printers:await XNi(),parsers:WEt});var dAc={printers:HNi,parsers:WEt},UNi=dAc;var pAc={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5",plugins:[Bme,FJe,eJe,O4e,ZRe,Jme,UNi]},KNi=pAc;import{join as fAc}from"node:path";var jNi=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist",".yarn",".vscode",".next","**/**/dist/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],IAc=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],hAc=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],zNi=e=>[...IAc.map(t=>fAc(e,t)),...hAc];var OEt=class e extends mAc{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let n=await JNi(),a=$Ni.default.default().add(jNi).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>_Ac(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let l=await qNi(o,"utf8"),A=await GEt(l,{...KNi,filepath:o,plugins:[Bme,FJe,eJe,O4e,ZRe,Jme,n]});A!==l&&A?(await CAc(o,A,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await b$(zNi(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await qNi(yAc(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var Zkr=Nt(Pc(),1),rUe=class extends eDi.BaseCommand{static paths=[["format"]];files=Su.Rest({required:0});async execute(){let t=await tDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await rDi.Project.find(t,this.context.cwd),n=await OEt.initialize(this.context.cwd),{clear:a}=(0,nDi.render)((0,Zkr.jsx)(cyi,{cwd:r.cwd,formatter:n}));try{return await n.format(this.files),0}catch(o){return o instanceof Error?xE((0,Zkr.jsx)(Fk,{error:o})).split(` +`).forEach(l=>{console.log(l)}):console.error(o),1}finally{a()}}};var iDi={commands:[rUe]};var qkr={};sI(qkr,{ImagePackCommand:()=>sUe,default:()=>rki});var zDi=Nt(el(),1),qDi=Nt(yn(),1),$Di=Nt(yn(),1),eki=Nt(yn(),1),zkr=Nt(yn(),1),tki=Nt(zs(),1);$c();import{readFileSync as Qdc}from"node:fs";import{join as Xdc}from"node:path";var Vkr=Nt(sTe(),1),sDi=Nt(yn(),1),bAc=()=>{let e=Vkr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var EAc=()=>{let e=Vkr.context.payload;return String(e.pull_request?.number)},SAc=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return bAc();let{stdout:e}=await sDi.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` +`);return t.replace(/"/g,"")},vAc=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?EAc():"local",oDi=async e=>{let t=await SAc(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await vAc()}-${r}-${Date.now()}`:t};var QDi=Nt(LDi(),1),jkr=Nt(zs(),1),XDi=Nt(zs(),1);import{readFileSync as Vdc}from"node:fs";var xce=Nt(zs(),1),Gce=Nt(zs(),1);import{arch as edc}from"node:os";var tdc="0.2",VDi=".git",rdc="yarn.lock",ndc=".yarnrc.yml",idc="linux",sdc="glibc",odc=".pnp.cjs",adc=".pnp.data.json",Jkr=".yarn/unplugged",cdc=/["'`]([^"'`]*)["'`]/g,ldc=/\/node_modules\/(.+)$/,udc=/(?:^|\n)pnpUnpluggedFolder:\s*([^#\n]+)/,gdc=/^virtual:[^#]+#(.+)$/,Adc={386:"ia32",amd64:"x64",mips64le:"mips64el",ppc64le:"ppc64"},ddc={windows:"win32"},Ukr=e=>{let t=Gce.ppath.normalize(e.replace(/^['"]|['"]$/g,""));return t.endsWith("/")?t.slice(0,-1):t},pdc=e=>{let r=e.match(udc)?.[1]?.trim();return r?Ukr(r):void 0},fdc=async e=>{let t=new Set([Ukr(Jkr)]),r=Gce.ppath.join(e,ndc);if(await xce.xfs.existsPromise(r)){let n=pdc(await xce.xfs.readFilePromise(r,"utf8"));n&&t.add(n)}return Array.from(t).sort()},WDi=(e,t)=>{let r=e.replaceAll("\\","/"),n=t.find(l=>r.includes(`${l}/`));if(!n)return;let a=r.indexOf(`${n}/`),o=Gce.ppath.normalize(r.slice(a));return o.endsWith("/")?o.slice(0,-1):o},Idc=(e,t=[Ukr(Jkr)])=>{let r=new Set;for(let n of e.matchAll(cdc)){let a=WDi(n[1],t);a&&r.add(a)}return Array.from(r).sort()},hdc=e=>{let t=e.match(/const RAW_RUNTIME_STATE\s*=\s*'([\s\S]*?)';/);if(t)return JSON.parse(t[1].replace(/\\\r?\n/g,""))},mdc=e=>{try{return JSON.parse(e)}catch{return hdc(e)}},Cdc=e=>{let t=mdc(e);if(!t||typeof t!="object")return[];let{packageRegistryData:r}=t;return Array.isArray(r)?r:[]},_dc=e=>e.match(gdc)?.[1]??e,ydc=(e,t)=>{let r=new Map;for(let[n,a]of Cdc(e))if(!(!n||!Array.isArray(a)))for(let[o,l]of a){let A=l.packageLocation?WDi(l.packageLocation,t):void 0;A&&o&&r.set(A,{reference:A,locator:{packageName:n,packageReference:_dc(o)}})}for(let n of Idc(e,t))r.has(n)||r.set(n,{reference:n});return Array.from(r.values())},bdc=async e=>{let t=new Map,r=await fdc(e),n=await Promise.all([odc,adc].map(async a=>{let o=Gce.ppath.join(e,a);if(!await xce.xfs.existsPromise(o))return[];let l=await xce.xfs.readFilePromise(o,"utf8");return ydc(l,r)}));for(let a of n)for(let o of a){let l=t.get(o.reference);t.set(o.reference,l?.locator?l:o)}return Array.from(t.values()).sort((a,o)=>a.reference.localeCompare(o.reference))},PDi=e=>{if(e)return Adc[e]??e},Edc=e=>ddc[e]??e,Sdc=e=>{let[t,r]=e?.split("/").slice(0,2)??[],n=Edc(t||idc);return{os:n,cpu:PDi(r)??PDi(edc()),libc:n==="linux"?sdc:void 0}},vdc=e=>e.match(/[()&|!=]|[A-Za-z0-9_.-]+/g)??[],Xkr=class{constructor(t,r){this.tokens=t;this.targetPlatform=r}parse(){let t=this.parseOr(0);return!!(t&&t.next===this.tokens.length&&t.target)}isTargetCondition(t){let r=this.tokens[t],n=this.tokens[t+1],a=this.tokens[t+2];if(!r||n!=="="||!a)return;let o=t+3;switch(r){case"os":return{next:o,target:this.targetPlatform.os===a};case"cpu":return{next:o,target:this.targetPlatform.cpu===a};case"libc":return{next:o,target:this.targetPlatform.libc===a};default:return{next:o,target:!1}}}parsePrimary(t){if(this.tokens[t]==="("){let r=this.parseOr(t+1);return!r||this.tokens[r.next]!==")"?void 0:{next:r.next+1,target:r.target}}return this.isTargetCondition(t)}parseUnary(t){if(this.tokens[t]==="!"){let r=this.parseUnary(t+1);return r?{next:r.next,target:!r.target}:void 0}return this.parsePrimary(t)}parseAnd(t){let r=this.parseUnary(t);if(r){for(;this.tokens[r.next]==="&";){let n=this.parseUnary(r.next+1);if(!n)return;r={next:n.next,target:r.target&&n.target}}return r}}parseOr(t){let r=this.parseAnd(t);if(r){for(;this.tokens[r.next]==="|";){let n=this.parseAnd(r.next+1);if(!n)return;r={next:n.next,target:r.target||n.target}}return r}}},Bdc=(e,t)=>{let r=vdc(e);return new Xkr(r,t).parse()},wdc=e=>{let t=e.startsWith("@")?e.indexOf("@",1):e.indexOf("@");if(t!==-1)return e.slice(0,t)},Tdc=(e,t)=>{if(e.startsWith(`${t}@`))return e.slice(t.length+1)},ODi=(e,t)=>`${e}\0${t}`,Rdc=(e,t)=>{let r=new Map,n=new Set;for(let a of e.split(/\n{2,}/)){let o=a.match(/\n {2}resolution: "([^"]+)"/)?.[1],l=a.match(/\n {2}conditions: (.+)/)?.[1],A=o?wdc(o):void 0,f=A?Tdc(o??"",A):void 0;if(!A||!f)continue;if(!l){n.add(A);continue}let I={packageName:A,packageReference:f,target:Bdc(l,t)};r.set(ODi(A,f),I)}return{conditionalLocators:r,unconditionalPackageNames:n}},Ndc=async(e,t)=>{let r=Gce.ppath.join(e,rdc);return await xce.xfs.existsPromise(r)?Rdc(await xce.xfs.readFilePromise(r,"utf8"),t):{conditionalLocators:new Map,unconditionalPackageNames:new Set}},Ddc=e=>{let t=e.match(ldc);if(t)return t[1]},kdc=(e,t)=>{if(e.locator){let a=t.conditionalLocators.get(ODi(e.locator.packageName,e.locator.packageReference));return a?!a.target:!1}let r=Ddc(e.reference);if(!r||t.unconditionalPackageNames.has(r))return!1;let n=Array.from(t.conditionalLocators.values()).filter(a=>a.packageName===r);return n.length>0&&n.every(a=>!a.target)},xdc=(e,t)=>{let r=Gce.ppath.resolve(e,t);return r===e||r.startsWith(`${e}/`)},Gdc=async(e,t,r)=>(await Promise.all(t.map(async a=>({exists:xdc(e,a.reference)&&await xce.xfs.existsPromise(Gce.ppath.join(e,a.reference)),referenceEntry:a})))).filter(({exists:a,referenceEntry:o})=>!a&&!kdc(o,r)).map(({referenceEntry:a})=>a.reference),Fdc=async(e,t)=>{let r=await bdc(e);if(r.length===0)return[VDi,Jkr];let n=Sdc(t),a=await Ndc(e,n),o=await Gdc(e,r,a);if(o.length>0)throw new Error(["PnP manifest references unplugged packages that are missing from the image pack context:",...o.map(l=>`- ${l}`)].join(` +`));return[VDi]},MDi=async({repo:e,builder:t,envs:r,cwd:n,platform:a})=>({_:{"schema-version":tdc,id:e,name:e,version:"0.0.1"},io:{buildpacks:{exclude:await Fdc(n,a),builder:t,build:{env:r}}}});var Kkr=Nt(yn(),1);import{platform as Zdc}from"node:os";import{arch as Ldc}from"node:os";var HDi="0.40.4",KNe=async(e,t,r)=>{let{code:n}=await Kkr.execUtils.pipevp(e,t,{...r,end:Kkr.execUtils.EndStrategy.ErrorCode});if(n!==0)throw new Error(`Command "${[e,...t].join(" ")}" failed with exit code ${n}`)},YDi=async({context:e,cwd:t})=>{let r;try{await KNe("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let n=`https://github.com/buildpacks/pack/releases/download/v${HDi}/pack-v${HDi}-`,a=Zdc(),o=Ldc();switch(a){case"linux":n+="linux.tgz";break;case"darwin":o==="arm64"?n+="macos-arm64.tgz":n+="macos.tgz";break;default:break}let l=`${t??e.cwd}/pack.tgz`;await KNe("curl",["-sSL","-o",l,n],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),await KNe("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",l],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),console.log("Buildpack CLI (pack) has been installed.")}};var JDi=async({workspace:e,registry:t,publish:r,tagPolicy:n,builder:a,buildpack:o,platform:l,require:A,cwd:f},I)=>{let C=f??I.cwd,b=e.replace("@","").replace(/\//g,"-"),E=`${t}${b}`,N=await oDi(n),B=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];A&&A.length>0&&B.push({name:"BP_REQUIRE",value:A.join(",")});let F=await MDi({repo:b,builder:a,envs:B,cwd:C,platform:l}),Q=XDi.ppath.join(await jkr.xfs.mktempPromise(),"project.toml");await jkr.xfs.writeFilePromise(Q,(0,QDi.stringify)(F)),console.debug("project.toml",Vdc(Q,"utf8"));let X=["build","--trust-builder",`${E}:${N}`,"--descriptor",Q,"--buildpack",o,"--tag",`${E}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&X.push("--publish"),l&&X.push("--platform",l),console.debug("Packing with args:",X),await YDi({cwd:f,context:I}),await KNe("pack",["config","experimental","true"],{cwd:C,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),await KNe("pack",X,{cwd:C,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),{images:[`${E}:${N}`,`${E}:latest`],tags:[N,"latest"],workspace:e}};import{arch as Pdc}from"node:os";var Wdc="24",Odc="0.1.3",Mdc="atlantislab/builder-base",Hdc="ghcr.io/atls/buildpack-yarn-workspace-start",Ydc="linux",UDi=()=>`${Ydc}/${Pdc()}`,KDi=({buildpack:e,buildpackImage:t,buildpackVersion:r})=>e||`${t??Hdc}:${r??Odc}`,jDi=({builder:e,builderImage:t,builderTag:r})=>e||`${t??Mdc}:${r??Wdc}`;var sUe=class extends zDi.BaseCommand{static paths=[["image","pack"]];registry=Su.String("-r,--registry","");tagPolicy=Su.String("-t,--tag-policy","revision");publish=Su.Boolean("-p,--publish",!1);platform=Su.String("--platform");async execute(){let t=await qDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await $Di.Project.find(t,this.context.cwd),n=r.getWorkspaceByFilePath(this.context.cwd);return(await eki.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(n)){o.reportInfo(null,`Workspace ${n.manifest.name?zkr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} not allowed for package.`);return}let l=await tki.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${n.manifest.name?zkr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} to ${l}`);let A=Qdc(Xdc(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(A),{require:I}=f;await vRe.pack(t,r,n,o,l,{platform:this.platform??UDi()}),await JDi({workspace:n.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:KDi(f),builder:jDi(f),platform:this.platform,require:I,cwd:l},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:n}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build","astro build"].some(l=>a?.includes(l))&&!!n}};var rki={commands:[sUe]};var axr={};sI(axr,{LibraryBuildCommand:()=>aUe,default:()=>Fki});var Tki=Nt(el(),1),Rki=Nt(yn(),1),Nki=Nt(yn(),1),oxr=Nt(zs(),1),Dki=Nt(yn(),1),kki=Nt(zs(),1);$c();var xki=Nt(Al(),1);import{rm as jdc}from"node:fs/promises";import{join as wki}from"node:path";var ixr=Nt(Al(),1),ACe=Nt(Al(),1),sxr=Nt(Ec(),1),Aki=Nt(gki(),1);import{isAbsolute as Jdc}from"node:path";import{relative as Udc}from"node:path";var Hk=Nt(Pc(),1),zEt=({messageText:e,start:t,file:r,code:n,cwd:a=process.cwd()})=>{let o=(0,sxr.useMemo)(()=>r?Jdc(r.fileName)?Udc(a,r.fileName):r.fileName:null,[r]),l=(0,sxr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,Hk.jsxs)(ACe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,Hk.jsxs)(ACe.Box,{flexDirection:"row",children:[(0,Hk.jsx)(ACe.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,Hk.jsx)(A8,{line:l?l.line+1:1,column:l?.character,children:o})}),(0,Hk.jsx)(ACe.Box,{paddingX:2,children:(0,Hk.jsxs)(ixr.Text,{bold:!0,color:"red",children:["TS",n]})})]}),(0,Hk.jsx)(J9,{offset:2}),!!r?.text&&!!l&&(0,Hk.jsxs)(Hk.Fragment,{children:[(0,Hk.jsx)(ACe.Box,{children:(0,Hk.jsx)(d8,{line:l.line+1,column:l.character,children:r.text})}),(0,Hk.jsx)(J9,{offset:2})]}),(0,Hk.jsx)(ACe.Box,{marginTop:1,paddingX:2,children:(0,Hk.jsx)(ixr.Text,{color:"white",children:(0,Aki.flattenDiagnosticMessageText)(e,` +`)})})]})};var oUe=Nt(Al(),1),yki=Nt(Ec(),1),bki=Nt(Ec(),1);var dki=Nt(Ec(),1),pki=Nt(Ec(),1),fki=Nt(Ec(),1),hki=Nt(Pc(),1),Iki=({typescript:e})=>{let[t,r]=(0,pki.useState)(10),n=(0,fki.useRef)();return(0,dki.useEffect)(()=>{n.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),n.current&&clearInterval(n.current)},600)};return e.on("end",a),()=>{e.off("end",a),n.current&&clearInterval(n.current)}},[e,n,r]),(0,hki.jsx)(JM,{value:t/100*100})};var zNe=Nt(Al(),1),Mee=Nt(Al(),1),mki=Nt(Ec(),1),Cki=Nt(Ec(),1);var Yk=Nt(Pc(),1),_ki=({typescript:e})=>{let[t,r]=(0,Cki.useState)(0);return(0,mki.useEffect)(()=>{let n=a=>{r(a.files.length)};return e.on("start",n),()=>{e.off("start",n)}},[e,r]),t===0?(0,Yk.jsxs)(zNe.Box,{flexDirection:"row",children:[(0,Yk.jsx)(RG,{color:"cyan",children:"TypeScript:"}),(0,Yk.jsx)(Mee.Text,{children:" "}),(0,Yk.jsx)(Mee.Text,{color:"white",children:"Loading files..."})]}):(0,Yk.jsxs)(zNe.Box,{flexDirection:"row",width:"100%",children:[(0,Yk.jsxs)(zNe.Box,{flexGrow:1,children:[(0,Yk.jsx)(RG,{color:"cyan",children:"TypeScript:"}),(0,Yk.jsx)(Mee.Text,{children:" "}),(0,Yk.jsx)(Mee.Text,{color:"white",children:"Processing..."})]}),(0,Yk.jsx)(zNe.Box,{flexDirection:"row",children:(0,Yk.jsxs)(zNe.Box,{children:[(0,Yk.jsx)(Mee.Text,{color:"green",children:kI.tick}),(0,Yk.jsx)(Mee.Text,{children:" "}),(0,Yk.jsxs)(Mee.Text,{color:"white",children:[t," Files"]}),(0,Yk.jsx)(Mee.Text,{children:" "})]})})]})};var Zce=Nt(Pc(),1),qEt=({typescript:e})=>{let[t,r]=(0,yki.useState)(!1);return(0,bki.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,Zce.jsx)(oUe.Box,{position:"relative",height:7,children:(0,Zce.jsxs)(oUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Zce.jsx)(oUe.Box,{children:(0,Zce.jsx)(_ki,{typescript:e})}),(0,Zce.jsx)(oUe.Box,{marginTop:1,marginBottom:1,children:(0,Zce.jsx)(Iki,{typescript:e})})]})})};import Kdc from"node:events";import{readFileSync as Ski}from"node:fs";import{createRequire as vki}from"node:module";import{join as Bki}from"node:path";var bj={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react-jsx",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var Eki=e=>t=>{let r=n=>{let{moduleSpecifier:a}=n;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(n)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(n,n.modifiers,n.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause);if(e.isExportDeclaration(n))return t.factory.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,n.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause)}return e.visitEachChild(n,r,t)};return n=>e.visitNode(n,r)};var qNe=class e extends Kdc{constructor(r,n){super();this.ts=r;this.cwd=n}static async initialize(r){let a=vki(import.meta.url).resolve("@atls/code-runtime/package.json"),l=vki(a)("typescript");return new e(l,r)}async check(r=[]){return this.run(r)}async build(r=[],n={}){return this.run(r,n,!1)}async run(r=[],n={},a=!0){let o=this.getProjectIgnorePatterns(),l=this.getLibCheckOption(),A={...bj,compilerOptions:{...bj.compilerOptions,...n,skipLibCheck:l},include:r,exclude:[...bj.exclude,...o]},{fileNames:f,options:I,errors:C}=this.ts.parseJsonConfigFileContent(A,this.ts.sys,this.cwd);if(C.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:C}),C;this.emit("start",{files:f});let b=this.ts.createProgram(f,{...I,noEmit:a}),E=Q=>X=>(this.emit("build:start",{file:X.fileName}),X),N=Q=>X=>(this.emit("build:end",{file:X.fileName}),X),B=b.emit(void 0,void 0,void 0,void 0,{before:[E],after:[N,Eki(this.ts)]}),F=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(b).concat(B.diagnostics));return this.emit("end",{diagnostics:F}),F}filterDiagnostics(r){return r.filter(n=>n.code!==2209).filter(n=>!(n.code===1479&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===2834&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===7016&&n.file?.fileName.includes("/lexical/"))).filter(n=>!(n.code===6133&&n.file?.fileName.includes("/@yarnpkg/libui/"))).filter(n=>!([2315,2411,2304,7006,7016].includes(n.code)&&n.file?.fileName.includes("/@strapi/"))).filter(n=>!([2688,2307,2503].includes(n.code)&&n.file?.fileName.includes("/pkg-tests-core/"))).filter(n=>!([2307].includes(n.code)&&n.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=Ski(Bki(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:n=[]}=JSON.parse(r);return n}getLibCheckOption(){let r=Ski(Bki(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:n=!1}=JSON.parse(r);return n}};var $Et=Nt(Pc(),1),aUe=class extends Tki.BaseCommand{static paths=[["library","build"]];target=Su.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(oxr.Filename.pnpCjs)&&t.includes(oxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Rki.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Nki.Project.find(t,this.context.cwd),n=[];this.target&&(n.push("-t"),n.push(this.target));let a=await kki.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Dki.execUtils.pipevp(o,["library","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){await this.cleanTarget();let t=await qNe.initialize(this.context.cwd),{clear:r}=(0,xki.render)((0,$Et.jsx)(qEt,{typescript:t}));try{let n=await t.build([wki(this.context.cwd,"./src")],{outDir:wki(this.context.cwd,this.target),declaration:!0});return n.forEach(a=>{xE((0,$Et.jsx)(zEt,{...a})).split(` +`).forEach(l=>{console.log(l)})}),n.length===0?0:1}catch(n){return xE((0,$Et.jsx)(Fk,{error:n})).split(` +`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await jdc(this.target,{recursive:!0,force:!0})}catch{}}};var zdc=(e,t)=>{t&&(t.exports&&(e.exports=t.exports),t.main&&(e.main=t.main),t.types&&(e.types=t.types),t.typings&&(e.typings=t.typings))},Gki=(e,t)=>{let r=e.manifest.private;zdc(t,r?t.raijin?.pack:t.publishConfig),delete t.raijin};var Fki={hooks:{beforeWorkspacePacking:Gki},commands:[aUe]};var pxr={};sI(pxr,{LintCommand:()=>uUe,default:()=>$ki});var Kki=Nt(el(),1),gxr=Nt(yn(),1),Axr=Nt(yn(),1),dxr=Nt(zs(),1),jki=Nt(yn(),1),zki=Nt(zs(),1);$c();var qki=Nt(Al(),1);var lUe=Nt(Al(),1),Mki=Nt(Ec(),1),Hki=Nt(Ec(),1);var Zki=Nt(Ec(),1),cxr=Nt(Ec(),1),Vki=Nt(Pc(),1),Lki=({linter:e})=>{let[t,r]=(0,cxr.useState)(0),[n,a]=(0,cxr.useState)(0);return(0,Zki.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("lint:end",l),e.on("end",A),()=>{e.off("start",o),e.off("lint:end",l),e.off("end",A)}},[e,t,r,a]),(0,Vki.jsx)(JM,{value:t>0?n/t*100:0})};import{relative as Pki}from"node:path";var $Ne=Nt(Al(),1),Qk=Nt(Al(),1),Wki=Nt(Ec(),1),cUe=Nt(Ec(),1);var jb=Nt(Pc(),1),qdc=({state:e})=>e==="warning"?(0,jb.jsx)(Qk.Text,{color:"yellow",children:kI.warning}):e==="error"?(0,jb.jsx)(Qk.Text,{color:"red",children:kI.cross}):e==="success"?(0,jb.jsx)(Qk.Text,{color:"green",children:kI.tick}):(0,jb.jsx)(Qk.Text,{color:"white",children:kI.circleDotted}),$dc=({state:e,children:t})=>e==="in-progress"?(0,jb.jsx)(Qk.Text,{color:"gray",children:t}):(0,jb.jsx)(Qk.Text,{color:"white",children:t}),Oki=({cwd:e,linter:t})=>{let[r,n]=(0,cUe.useState)(void 0),[a,o]=(0,cUe.useState)(0),[l,A]=(0,cUe.useState)(0),[f,I]=(0,cUe.useState)(0);return(0,Wki.useEffect)(()=>{let C=N=>{o(N.files.length)},b=N=>{n({state:"in-progress",file:Pki(e,N.file)})},E=({result:N})=>{let B="success";N.warningCount>0&&(I(F=>F+N.warningCount),B="warning"),N.errorCount>0&&(A(F=>F+N.errorCount),B="error"),n({state:B,file:Pki(e,N.filePath)})};return t.on("start",C),t.on("lint:start",b),t.on("lint:end",E),()=>{t.off("start",C),t.off("lint:start",b),t.off("lint:end",E)}},[t,n,o,A,I]),r?(0,jb.jsxs)($Ne.Box,{flexDirection:"row",width:"100%",children:[(0,jb.jsxs)($Ne.Box,{flexGrow:1,children:[(0,jb.jsx)(RG,{color:"cyan",children:"Lint:"}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsx)($dc,{state:r.state,children:r.file})]}),(0,jb.jsx)($Ne.Box,{flexDirection:"row",children:(0,jb.jsxs)($Ne.Box,{children:[(0,jb.jsx)(qdc,{state:r.state}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"yellow",children:[f," Warnings"]}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"red",children:[l," Errors"]}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"white",children:[a," Files"]}),(0,jb.jsx)(Qk.Text,{children:" "})]})})]}):(0,jb.jsxs)($Ne.Box,{flexDirection:"row",children:[(0,jb.jsx)(RG,{color:"cyan",children:"Lint:"}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsx)(Qk.Text,{color:"white",children:"Loading files..."})]})};var Lce=Nt(Pc(),1),Yki=({cwd:e,linter:t})=>{let[r,n]=(0,Mki.useState)(!1);return(0,Hki.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,Lce.jsx)(lUe.Box,{position:"relative",height:7,children:(0,Lce.jsxs)(lUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Lce.jsx)(lUe.Box,{children:(0,Lce.jsx)(Oki,{cwd:e,linter:t})}),(0,Lce.jsx)(lUe.Box,{marginTop:1,marginBottom:1,children:(0,Lce.jsx)(Lki,{linter:t})})]})})};var lxr=Nt(Al(),1),Vce=Nt(Al(),1);var lD=Nt(Pc(),1),Qki=({filePath:e,message:t,source:r})=>(0,lD.jsxs)(Vce.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,lD.jsxs)(Vce.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,lD.jsx)(Vce.Box,{flexDirection:"row",flexGrow:1,children:(0,lD.jsx)(A8,{line:t.line,column:t.column,children:e})}),(0,lD.jsx)(Vce.Box,{children:(0,lD.jsxs)(lxr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,lD.jsx)(Vce.Box,{children:(0,lD.jsx)(J9,{offset:2})}),!!r&&(0,lD.jsxs)(lD.Fragment,{children:[(0,lD.jsx)(Vce.Box,{children:(0,lD.jsx)(d8,{line:t.line,column:t.column,children:r})}),(0,lD.jsx)(J9,{offset:2})]}),(0,lD.jsx)(Vce.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,lD.jsxs)(lxr.Text,{color:"white",children:[" ",t.message]})})]});var Xki=Nt(Al(),1);import{isAbsolute as epc}from"node:path";import{relative as tpc}from"node:path";var Jki=Nt(Ec(),1);var uxr=Nt(Pc(),1),Uki=({filePath:e,source:t,messages:r,cwd:n=process.cwd()})=>{let a=(0,Jki.useMemo)(()=>epc(e)?tpc(n,e):e,[e]);return r.length===0?null:(0,uxr.jsx)(Xki.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,uxr.jsx)(Qki,{filePath:a,message:o,source:t},OW()))})};var e1t=Nt(Pc(),1),uUe=class extends Kki.BaseCommand{static paths=[["lint"]];fix=Su.Boolean("--fix");files=Su.Rest({required:0});cache=Su.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(dxr.Filename.pnpCjs)&&t.includes(dxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await gxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Axr.Project.find(t,this.context.cwd),n=await zki.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await jki.execUtils.pipevp(o,["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await gxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Axr.Project.find(t,this.context.cwd),n=await CBe.initialize(r.cwd,this.context.cwd),{clear:a}=(0,qki.render)((0,e1t.jsx)(Yki,{cwd:r.cwd,linter:n}));n.on("lint:end",({result:o})=>{o.messages.length>0&&xE((0,e1t.jsx)(Uki,{...o})).split(` +`).forEach(A=>{console.log(A)})});try{return(await n.lint(this.files,{fix:this.fix,cache:this.cache})).find(l=>l.messages.length>0)?1:0}catch(o){return o instanceof Error?xE((0,e1t.jsx)(Fk,{error:o})).split(` +`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var $ki={commands:[uUe]};var jGr={};sI(jGr,{default:()=>FZi});var Nxi=Nt(el(),1),Dxi=Nt(el(),1),kxi=Nt(yn(),1),xxi=Nt(yn(),1),Gxi=Nt(yn(),1),Txr=Nt(yn(),1),o1t=Nt(zs(),1),Rxr=Nt(zs(),1),Fxi=Nt(zs(),1);import dUe from"node:assert/strict";import{Buffer as Mpc}from"node:buffer";import{execSync as Hpc}from"node:child_process";import{createHash as Ypc}from"node:crypto";import{mkdir as Qpc}from"node:fs/promises";import{readFile as Xpc}from"node:fs/promises";import{writeFile as Jpc}from"node:fs/promises";import{dirname as Upc}from"node:path";function Pce(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function t1t(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((a,o)=>t1t.bind(null,e,o,a,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,n),r)():r(n))}function exi(e,t,r,n){let a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(o,l)=>Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))),t==="after"&&(n=(o,l)=>{let A;return Promise.resolve().then(o.bind(null,l)).then(f=>(A=f,a(A,l))).then(()=>A)}),t==="error"&&(n=(o,l)=>Promise.resolve().then(o.bind(null,l)).catch(A=>a(A,l))),e.registry[r].push({hook:n,orig:a})}function txi(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(a=>a.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var rxi=Function.bind,nxi=rxi.bind(rxi);function ixi(e,t,r){let n=nxi(txi,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=nxi(exi,null).apply(null,o)})}function rpc(){let e=Symbol("Singular"),t={registry:{}},r=t1t.bind(null,t,e);return ixi(r,t,e),r}function npc(){let e={registry:{}},t=t1t.bind(null,e);return ixi(t,e),t}var sxi={Singular:rpc,Collection:npc};var ipc="0.0.0-development",spc=`octokit-endpoint.js/${ipc} ${Pce()}`,opc={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":spc},mediaType:{format:""}};function apc(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function cpc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function cxi(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{cpc(t[n])?n in e?r[n]=cxi(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function oxi(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Ixr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=apc(r.headers),oxi(r),oxi(r.headers);let n=cxi(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function lpc(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var upc=/\{[^}]+\}/g;function gpc(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function Apc(e){let t=e.match(upc);return t?t.map(gpc).reduce((r,n)=>r.concat(n),[]):[]}function axi(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function lxi(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function tDe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function gUe(e,t,r){return t=e==="+"||e==="#"?lxi(t):tDe(t),r?tDe(r)+"="+t:t}function eDe(e){return e!=null}function fxr(e){return e===";"||e==="&"||e==="?"}function dpc(e,t,r,n){var a=e[r],o=[];if(eDe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(gUe(t,a,fxr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(eDe).forEach(function(l){o.push(gUe(t,l,fxr(t)?r:""))}):Object.keys(a).forEach(function(l){eDe(a[l])&&o.push(gUe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(eDe).forEach(function(A){l.push(gUe(t,A))}):Object.keys(a).forEach(function(A){eDe(a[A])&&(l.push(tDe(A)),l.push(gUe(t,a[A].toString())))}),fxr(t)?o.push(tDe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?eDe(a)&&o.push(tDe(r)):a===""&&(t==="&"||t==="?")?o.push(tDe(r)+"="):a===""&&o.push("");return o}function ppc(e){return{expand:fpc.bind(null,e)}}function fpc(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(dpc(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return lxi(o)}),e==="/"?e:e.replace(/\/$/,"")}function uxi(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=axi(e,["method","baseUrl","url","headers","request","mediaType"]),l=Apc(r);r=ppc(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=axi(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=lpc(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function Ipc(e,t,r){return uxi(Ixr(e,t,r))}function gxi(e,t){let r=Ixr(e,t),n=Ipc.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:gxi.bind(null,r),merge:Ixr.bind(null,r),parse:uxi})}var Axi=gxi(null,opc);var dCe=class extends Error{name;status;request;response;constructor(t,r,n){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let a=Object.assign({},n.request);n.request.headers.authorization&&(a.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var hpc="0.0.0-development",mpc={headers:{"user-agent":`octokit-request.js/${hpc} ${Pce()}`}};function Cpc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function dxi(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,a=Cpc(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([b,E])=>[b,String(E)])),l;try{l=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(b){let E="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;E=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause))}let N=new dCe(E,500,{request:e});throw N.cause=b,N}let A=l.status,f=l.url,I={};for(let[b,E]of l.headers)I[b]=E;let C={url:f,status:A,headers:I,data:""};if("deprecation"in I){let b=I.link&&I.link.match(/<([^>]+)>; rel="deprecation"/),E=b&&b.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${I.sunset}${E?`. See ${E}`:""}`)}if(A===204||A===205)return C;if(e.method==="HEAD"){if(A<400)return C;throw new dCe(l.statusText,A,{response:C,request:e})}if(A===304)throw C.data=await hxr(l),new dCe("Not modified",A,{response:C,request:e});if(A>=400)throw C.data=await hxr(l),new dCe(_pc(C.data),A,{response:C,request:e});return C.data=n?await hxr(l):l.body,C}async function hxr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function _pc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function mxr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return dxi(r.parse(l));let A=(f,I)=>dxi(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:mxr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:mxr.bind(null,r)})}var AUe=mxr(Axi,mpc);var ypc="0.0.0-development";function bpc(e){return`Request failed due to following response errors: `+e.errors.map(t=>` - ${t.message}`).join(` -`)}var Udc=class extends Error{constructor(e,t,r){super(Jdc(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Kdc=["method","baseUrl","url","headers","request","query","mediaType"],jdc=["query","method","url"],$ki=/\/api\/v3\/?$/;function zdc(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(jdc.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>Kdc.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return $ki.test(o)&&(a.url=o.replace($ki,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Udc(a,A,l.data)}return l.data.data})}function pxr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>zdc(r,a,o),{defaults:pxr.bind(null,r),endpoint:r.endpoint})}var bFu=pxr(uUe,{headers:{"user-agent":`octokit-graphql.js/${Xdc} ${Vce()}`},method:"POST",url:"/graphql"});function exi(e){return pxr(e,{method:"POST",url:"/graphql"})}var qdc=/^v1\./,$dc=/^ghs_/,epc=/^ghu_/;async function tpc(e){let t=e.split(/\./).length===3,r=qdc.test(e)||$dc.test(e),n=epc.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function rpc(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function npc(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=rpc(e),t(a)}var e1t=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(tpc.bind(null,t),{hook:npc.bind(null,t)})};var fxr="6.1.2";var txi=()=>{},ipc=console.warn.bind(console),spc=console.error.bind(console),rxi=`octokit-core.js/${fxr} ${Vce()}`,t1t=class{static VERSION=fxr;static defaults(t){return class extends this{constructor(...n){let a=n[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new Yki.Collection,n={baseUrl:uUe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${rxi}`:rxi,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=uUe.defaults(n),this.graphql=exi(this.request).defaults(n),this.log=Object.assign({debug:txi,info:txi,warn:ipc,error:spc},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...l}=t,A=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:l},t.auth));r.wrap("request",A.hook),this.auth=A}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=e1t(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let n=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(l=>{let A=l.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l}).catch(l=>{let A=l.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l})})}Ixr.VERSION=nxi;var opc="0.0.0-development";function apc(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function hxr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=apc(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function ixi(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),sxi(e,[],hxr(e,t,r)[Symbol.asyncIterator](),n)}function sxi(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:sxi(e,t,r,n)})}var PFu=Object.assign(ixi,{iterator:hxr});function mxr(e){return{paginate:Object.assign(ixi.bind(null,e),{iterator:hxr.bind(null,e)})}}mxr.VERSION=opc;var Cxr="13.2.6";var cpc={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},oxi=cpc;var dCe=new Map;for(let[e,t]of Object.entries(oxi))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);dCe.has(e)||dCe.set(e,new Map),dCe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var lpc={has({scope:e},t){return dCe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...dCe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=dCe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=upc(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function _xr(e){let t={};for(let r of dCe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},lpc);return t}function upc(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function gpc(e){return{rest:_xr(e)}}gpc.VERSION=Cxr;function yxr(e){let t=_xr(e);return{...t,rest:t}}yxr.VERSION=Cxr;var axi="21.0.2";var cxi=t1t.plugin(Ixr,yxr,mxr).defaults({userAgent:`octokit-rest.js/${axi}`});var lxi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return e1t(r)};var r1t=class{client;constructor(t){this.client=new cxi({auth:t.token,authStrategy:lxi})}async create(t){let{owner:r,repo:n,tag_name:a,target_commitish:o,name:l,make_latest:A,draft:f,body:I}=t;return(await this.client.repos.createRelease({owner:r,repo:n,tag_name:a,target_commitish:o,draft:f,make_latest:A?"true":"false",name:l,body:I})).status}async generateNotes(t){let{owner:r,repo:n,tag_name:a,target_commitish:o,previous_tag_name:l}=t;return(await this.client.repos.generateReleaseNotes({owner:r,repo:n,tag_name:a,target_commitish:o,previous_tag_name:l})).data.body}};import Apc from"node:assert/strict";var uxi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);Apc.ok(t,"URL does not match pattern");let[,r,n]=t;return{organization:r,repository:n}};var ppc=422,fpc='"resource":"Release"',Ipc='"code":"already_exists"',hpc='"field":"tag_name"',mpc=e=>{let t=e;return t.status===ppc&&typeof t.message=="string"&&t.message.includes(fpc)&&t.message.includes(Ipc)&&t.message.includes(hpc)},Cxi=(e,t)=>`${e}@${t}`,Cpc=(e,t,r,n,a,o)=>{let l=Cxi(e,t);return{body:r,draft:!1,make_latest:!0,name:l,owner:n,repo:a,tag_name:l,target_commitish:o}},_pc=(e,t,r,n,a,o)=>{let l={owner:r,repo:n,tag_name:Cxi(e,t),target_commitish:a};return o&&(l.previous_tag_name=o),l},gxi=e=>e.length>0&&[...e].every(t=>t>="0"&&t<="9"),Axi=e=>{let[t]=e.split("+"),r=t.indexOf("-"),n=r===-1?t:t.slice(0,r),a=r===-1?"":t.slice(r+1),o=n.split(".");if(o.length!==3)return;let l=o.map(f=>Number(f));if(!l.every(f=>Number.isInteger(f)&&f>=0))return;let A=a.length>0?a.split("."):[];if(!A.some(f=>f.length===0))return{major:l[0],minor:l[1],patch:l[2],prerelease:A}},ypc=(e,t)=>{let r=gxi(e),n=gxi(t);return r&&n?Number(e)-Number(t):r!==n?r?-1:1:e.localeCompare(t)},dxi=(e,t)=>{let r=Axi(e),n=Axi(t);if(!r||!n)return e.localeCompare(t);for(let o of["major","minor","patch"]){let l=r[o]-n[o];if(l!==0)return l}if(r.prerelease.length===0&&n.prerelease.length>0)return 1;if(r.prerelease.length>0&&n.prerelease.length===0)return-1;let a=Math.min(r.prerelease.length,n.prerelease.length);for(let o of Array.from({length:a},(l,A)=>A)){let l=r.prerelease[o],A=n.prerelease[o],f=ypc(l,A);if(f!==0)return f}return r.prerelease.length-n.prerelease.length},bpc=(e,t)=>{let r=`${e}@`;if(t.startsWith(r))return t.slice(r.length)},Epc=(e,t,r)=>r.map(n=>({tagName:n,version:bpc(e,n)})).filter(n=>typeof n.version=="string").filter(n=>dxi(n.version,t)<0).sort((n,a)=>dxi(a.version,n.version))[0]?.tagName,Spc=async(e,t)=>{let{stdout:r}=await bxr.execUtils.execvp("git",["tag","--list",`${t}@*`],{cwd:e.cwd,strict:!0});return r.split(` -`).map(n=>n.trim()).filter(Boolean)},vpc=async e=>{let{stdout:t}=await bxr.execUtils.execvp("git",["rev-parse","HEAD"],{cwd:e.cwd,strict:!0});return t.trim()},n1t=class extends pxi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await Ixi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hxi.Project.find(t,this.context.cwd);if(!n)throw new fxi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await mxi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let l=process.env.GITHUB_TOKEN;gUe.ok(l,"GitHub Token is missing");let A="",f=n.manifest.name?.scope;f&&(A+=`@${f}/`);let I=n.manifest.name?.name;gUe.ok(I,"Missing workspace name");let{version:C}=n.manifest;gUe.ok(C,"Missing version"),A+=`${I}`;let b=new r1t({token:l}),E,N;try{({repository:N,organization:E}=uxi(dpc("git remote get-url origin",{encoding:"utf-8"})))}catch{[E,N]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}gUe.ok(E,"Could not get url of the repo"),gUe.ok(N,"Could not get url of the repo");try{let B=await Spc(r,A),F=await vpc(r),Q=Epc(A,C,B),X=_pc(A,C,E,N,F,Q),ae=await b.generateNotes(X),ne=Cpc(A,C,ae,E,N,F);await b.create(ne)}catch(B){if(mpc(B)){o.reportInfo(null,`Release ${A}@${C} already exists; skipping`);return}throw B}})})).exitCode()}};var nZi=Nt(el(),1),iZi=Nt(el(),1),sZi=Nt(Sn(),1),oZi=Nt(Sn(),1),aZi=Nt(Sn(),1),OGr=Nt(ro(),1),MGr=Nt(ro(),1);$c();$c();var uDe=Nt(Sn(),1),XFi=Nt(Sn(),1),ZGr=Nt(ro(),1),GGr=Nt(ro(),1),JFi=Nt(TW(),1),UFi=Nt(RGr(),1);var hmc="feat",mmc=": ",Cmc="(",_mc=")",WFi="!",ymc=".",bmc=["BREAKING CHANGE:","BREAKING CHANGE ","BREAKING-CHANGE:","BREAKING-CHANGE "],Emc=/^(?:[A-Za-z0-9-]+|BREAKING CHANGE)(?:: | #).+/,NGr={patch:0,minor:1,major:2},DGr=e=>Object.hasOwn(NGr,e),HFi=(e,t)=>NGr[t]>NGr[e]?t:e,xGr=(e,t)=>e===void 0?t:DGr(e)?HFi(e,t):e,G1t=(e,t)=>e===void 0?t:DGr(e)?DGr(t)?xGr(e,t):t:e,kGr=e=>e.relativeCwd===ymc,YFi=(e,t)=>e===t.relativeCwd||e.startsWith(`${t.relativeCwd}/`),Smc=(e,t)=>e.relativeCwd===t.relativeCwd,vmc=(e,t)=>Smc(e,t)?!1:kGr(e)?!kGr(t):t.relativeCwd.startsWith(`${e.relativeCwd}/`),OFi=(e,t,r)=>r.some(n=>vmc(t,n)&&YFi(e,n)),Bmc=(e,t,r)=>(kGr(t)||YFi(e,t))&&!OFi(e,t,r),wmc=e=>e.length>0&&[...e].every(t=>t>="a"&&t<="z"),MFi=e=>e.trim().length===0,Tmc=e=>Emc.test(e),Rmc=e=>{let t=e.split(` -`).map(a=>a.replace("\r",""));for(;t.length>0&&MFi(t[t.length-1]);)t.pop();let r=t.length;for(;r>0&&!MFi(t[r-1]);)r-=1;if(r===0||r===t.length)return[];let n=t.slice(r);return Tmc(n[0])?n:[]},Nmc=e=>Rmc(e).some(t=>bmc.some(r=>t.startsWith(r))),Dmc=e=>{let t=e.indexOf(mmc);if(t<1)return;let r=e.slice(0,t),n=r.endsWith(WFi);n&&(r=r.slice(0,-WFi.length));let a=r.indexOf(Cmc);if(a>=0){if(!r.endsWith(_mc))return;r=r.slice(0,a)}if(wmc(r))return{type:r,breaking:n}},kmc=e=>{let[t=""]=e.split(` -`,1),r=Dmc(t.replace("\r",""));if(r)return r.breaking||Nmc(e)?"major":r.type===hmc?"minor":"patch"},QFi=(e,t,r=e)=>{let n=new Map;for(let a of t){let o=kmc(a.message);if(o)for(let l of e){if(!a.files.some(f=>Bmc(f,l,r)))continue;let A=n.get(l.ident);n.set(l.ident,{workspace:l,strategy:A?HFi(A.strategy,o):o})}}return[...n.values()].sort((a,o)=>a.workspace.relativeCwd.localeCompare(o.workspace.relativeCwd))};var xmc="origin/HEAD",Gmc="HEAD",Fmc=`${xmc}..${Gmc}`,Zmc="ENOENT",KFi="decline",FGr=2,Lmc=e=>e==="release"||e==="decline",Vmc=(e,t)=>typeof e=="object"&&e!==null&&"code"in e&&e.code===t,jFi=e=>e.manifest.name?XFi.structUtils.stringifyIdent(e.manifest.name):void 0,zFi=e=>e.relativeCwd!=="."&&!!e.manifest.version&&!!jFi(e),LGr=e=>{let t=jFi(e);if(!(!t||!zFi(e)))return{ident:t,relativeCwd:e.relativeCwd}},Pmc=e=>({relativeCwd:e.relativeCwd}),Wmc=e=>[e.filename,e.previous_filename].filter(t=>!!t),qFi=e=>({message:e.data.commit.message,files:[...new Set((e.data.files??[]).flatMap(Wmc))]}),Omc=async()=>(await Pmt()).map(qFi),Mmc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["rev-list","--reverse",t],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)},Hmc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["show","--format=%B","--no-patch","--max-count=1",t],{cwd:e.cwd,strict:!0});return r},Ymc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["rev-list","--parents","-n","1",t],{cwd:e.cwd,strict:!0}),[,...n]=r.trim().split(" ").filter(Boolean);return n},$Fi=(e,t)=>e.find(r=>!t.has(r))??e[0],Qmc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["diff-tree","--no-commit-id","--name-only","-r","--root","--no-renames","-z",t],{cwd:e.cwd,strict:!0});return r.split("\0").map(n=>n.trim()).filter(Boolean)},Xmc=async(e,t,r)=>{let n=$Fi(await Ymc(e,t),r);if(!n)return Qmc(e,t);let{stdout:a}=await uDe.execUtils.execvp("git",["diff","--name-only","--no-renames","-z",n,t],{cwd:e.cwd,strict:!0});return[...new Set(a.split("\0").map(o=>o.trim()).filter(Boolean))]},Jmc=async(e,t,r)=>({message:await Hmc(e,t),files:await Xmc(e,t,r)}),Umc=async(e,t)=>{let r=await Mmc(e,t),n=new Set(r);return Promise.all(r.map(async a=>Jmc(e,a,n)))},VGr=async(e,t)=>t===void 0&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Omc():Umc(e,t??Fmc),eZi=e=>{let t=(0,JFi.parseSyml)(e),r=new Map;for(let n of t.declined??[])typeof n=="string"&&r.set(n,G1t(r.get(n),KFi));for(let[n,a]of Object.entries(t.releases??{}))typeof a=="string"&&r.set(n,G1t(r.get(n),a));return r},PGr=async e=>{let t=e.get("deferredVersionFolder"),r=new Map,n;try{n=await GGr.xfs.readdirPromise(t)}catch(a){if(Vmc(a,Zmc))return r;throw a}for(let a of n){if(!a.endsWith(".yml"))continue;let o=ZGr.ppath.join(t,a),l=await GGr.xfs.readFilePromise(o,"utf8"),A=eZi(l);for(let[f,I]of A)r.set(f,G1t(r.get(f),I))}return r},Kmc=async e=>{let t=await PGr(e);return new Set([...t.entries()].filter(([,r])=>r===KFi).map(([r])=>r))},jmc=(e,t)=>{let r=ZGr.ppath.resolve(e.cwd,t.workspace.relativeCwd),n=e.workspacesByCwd.get(r);if(!n)throw new Error(`Could not resolve release workspace "${t.workspace.ident}"`);return{ident:t.workspace.ident,relativeCwd:t.workspace.relativeCwd,decision:t.decision,private:n.manifest.private}},zmc=e=>{let t=LGr(e),{version:r}=e.manifest;if(!(!t||!r))return{workspace:t,decision:"decline"}},qmc=(e,t,r)=>{for(let n of e.workspaces){let a=zmc(n);!a||!r.has(a.workspace.ident)||t.has(a.workspace.ident)||t.set(a.workspace.ident,a)}},$mc=async(e,t=new Set)=>{let r=await UFi.versionUtils.resolveVersionFiles(e),n=new Map;for(let[a,o]of r){let l=LGr(a);!l||!o||n.set(l.ident,{workspace:l,decision:"release"})}return qmc(e,n,t),n},eCc=(e,t,r)=>{for(let n of t)if(!r.has(n.workspace.ident))throw new Error(`Release plan requires deferred target version for "${n.workspace.ident}". Run \`yarn release version defer\` before \`yarn release plan create\`.`);return{schemaVersion:FGr,workspaces:[...r.values()].sort((n,a)=>n.workspace.relativeCwd.localeCompare(a.workspace.relativeCwd)).map(n=>jmc(e,n))}},WGr=(e,t)=>{let r=e.workspaces.map(LGr).filter(a=>!!a),n=e.workspaces.map(Pmc);return QFi(r,t,n)},tZi=async(e,t,r)=>{let n=await VGr(e,r),a=WGr(e,n),o=await Kmc(t),l=await $mc(e,o);return eCc(e,a,l)},tCc=e=>{if(typeof e!="object"||e===null)return!1;let t=e;return typeof t.ident=="string"&&typeof t.relativeCwd=="string"&&Lmc(t.decision)&&typeof t.private=="boolean"},rZi=e=>{let t=JSON.parse(e);if(t.schemaVersion!==FGr||!Array.isArray(t.workspaces)||!t.workspaces.every(tCc))throw new Error("Invalid release plan");return{schemaVersion:FGr,workspaces:t.workspaces}};var F1t=class extends nZi.BaseCommand{static paths=[["release","plan","create"]];static usage=_C.Usage({description:"create a Raijin release workspace selection",details:` +`)}var Epc=class extends Error{constructor(e,t,r){super(bpc(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Spc=["method","baseUrl","url","headers","request","query","mediaType"],vpc=["query","method","url"],pxi=/\/api\/v3\/?$/;function Bpc(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(vpc.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>Spc.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return pxi.test(o)&&(a.url=o.replace(pxi,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Epc(a,A,l.data)}return l.data.data})}function Cxr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>Bpc(r,a,o),{defaults:Cxr.bind(null,r),endpoint:r.endpoint})}var BZu=Cxr(AUe,{headers:{"user-agent":`octokit-graphql.js/${ypc} ${Pce()}`},method:"POST",url:"/graphql"});function fxi(e){return Cxr(e,{method:"POST",url:"/graphql"})}var wpc=/^v1\./,Tpc=/^ghs_/,Rpc=/^ghu_/;async function Npc(e){let t=e.split(/\./).length===3,r=wpc.test(e)||Tpc.test(e),n=Rpc.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function Dpc(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function kpc(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=Dpc(e),t(a)}var r1t=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(Npc.bind(null,t),{hook:kpc.bind(null,t)})};var _xr="6.1.2";var Ixi=()=>{},xpc=console.warn.bind(console),Gpc=console.error.bind(console),hxi=`octokit-core.js/${_xr} ${Pce()}`,n1t=class{static VERSION=_xr;static defaults(t){return class extends this{constructor(...n){let a=n[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new sxi.Collection,n={baseUrl:AUe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${hxi}`:hxi,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=AUe.defaults(n),this.graphql=fxi(this.request).defaults(n),this.log=Object.assign({debug:Ixi,info:Ixi,warn:xpc,error:Gpc},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...l}=t,A=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:l},t.auth));r.wrap("request",A.hook),this.auth=A}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=r1t(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let n=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(l=>{let A=l.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l}).catch(l=>{let A=l.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l})})}yxr.VERSION=mxi;var Fpc="0.0.0-development";function Zpc(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function bxr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=Zpc(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function Cxi(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),_xi(e,[],bxr(e,t,r)[Symbol.asyncIterator](),n)}function _xi(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:_xi(e,t,r,n)})}var HZu=Object.assign(Cxi,{iterator:bxr});function Exr(e){return{paginate:Object.assign(Cxi.bind(null,e),{iterator:bxr.bind(null,e)})}}Exr.VERSION=Fpc;var Sxr="13.2.6";var Lpc={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},yxi=Lpc;var pCe=new Map;for(let[e,t]of Object.entries(yxi))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);pCe.has(e)||pCe.set(e,new Map),pCe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var Vpc={has({scope:e},t){return pCe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...pCe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=pCe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=Ppc(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function vxr(e){let t={};for(let r of pCe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},Vpc);return t}function Ppc(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function Wpc(e){return{rest:vxr(e)}}Wpc.VERSION=Sxr;function Bxr(e){let t=vxr(e);return{...t,rest:t}}Bxr.VERSION=Sxr;var bxi="21.0.2";var Exi=n1t.plugin(yxr,Bxr,Exr).defaults({userAgent:`octokit-rest.js/${bxi}`});var Sxi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return r1t(r)};var i1t=class{client;constructor(t){this.client=new Exi({auth:t.token,authStrategy:Sxi})}async create(t){let{owner:r,repo:n,tag_name:a,target_commitish:o,name:l,make_latest:A,draft:f,body:I}=t,C=await this.client.repos.createRelease({owner:r,repo:n,tag_name:a,target_commitish:o,draft:f,make_latest:A?"true":"false",name:l,body:I});return{id:C.data.id,assets:C.data.assets.map(b=>({browser_download_url:b.browser_download_url,name:b.name}))}}async getByTag(t){let{owner:r,repo:n,tag_name:a}=t,o=await this.client.repos.getReleaseByTag({owner:r,repo:n,tag:a});return{id:o.data.id,assets:o.data.assets.map(l=>({browser_download_url:l.browser_download_url,name:l.name}))}}async uploadAsset(t){let{owner:r,repo:n,release_id:a,name:o,data:l,size:A,content_type:f}=t,I=await this.client.repos.uploadReleaseAsset({owner:r,repo:n,release_id:a,name:o,data:l,headers:{"content-length":A,"content-type":f}});return{browser_download_url:I.data.browser_download_url,name:I.data.name}}async generateNotes(t){let{owner:r,repo:n,tag_name:a,target_commitish:o,previous_tag_name:l}=t;return(await this.client.repos.generateReleaseNotes({owner:r,repo:n,tag_name:a,target_commitish:o,previous_tag_name:l})).data.body}};import Opc from"node:assert/strict";var vxi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);Opc.ok(t,"URL does not match pattern");let[,r,n]=t;return{organization:r,repository:n}};var Kpc=422,jpc='"resource":"Release"',zpc='"code":"already_exists"',qpc='"field":"tag_name"',$pc="@atls/yarn-cli",efc="yarn.mjs",tfc="text/javascript",rfc=".yarn/releases/raijin-runtime.json",nfc=1,ifc=e=>{let t=e;return t.status===Kpc&&typeof t.message=="string"&&t.message.includes(jpc)&&t.message.includes(zpc)&&t.message.includes(qpc)},a1t=(e,t)=>`${e}@${t}`,sfc=(e,t,r,n,a,o)=>{let l=a1t(e,t);return{body:r,draft:!1,make_latest:!0,name:l,owner:n,repo:a,tag_name:l,target_commitish:o}},ofc=(e,t,r,n,a,o)=>{let l={owner:r,repo:n,tag_name:a1t(e,t),target_commitish:a};return o&&(l.previous_tag_name=o),l},afc=(e,t)=>{if(e===$pc)return{content_type:tfc,name:efc,path:o1t.npath.fromPortablePath(Rxr.ppath.join(t,"yarn/cli/dist/runtime/yarn.mjs"))}},wxr=e=>Ypc("sha256").update(e).digest("hex"),cfc=e=>o1t.npath.fromPortablePath(Rxr.ppath.join(e,rfc)),lfc=(e,t,r,n)=>({assetName:r.name,assetUrl:r.browser_download_url,packageName:e,schemaVersion:nfc,sha256:wxr(n),tagName:a1t(e,t),version:t}),ufc=async e=>{let t=await fetch(e.browser_download_url,{headers:{"user-agent":"raijin-yarn-plugin-release"}});if(!t.ok)throw new Error(`Failed to verify existing release asset ${e.name}: HTTP ${t.status}`);return Mpc.from(await t.arrayBuffer())},gfc=async(e,t)=>{let r=wxr(await ufc(e)),n=wxr(t);if(r!==n)throw new Error(`Existing release asset ${e.name} digest mismatch: expected ${n}, got ${r}`)},Afc=async(e,t)=>{let r=cfc(e.cwd);await Qpc(Upc(r),{recursive:!0}),await Jpc(r,`${JSON.stringify(t,null,2)} +`)},Bxi=async(e,t,r,n,a,o,l,A)=>{let f=afc(r,a.cwd);if(!f)return;if(!await Fxi.xfs.existsPromise(o1t.npath.toPortablePath(f.path)))throw new Error(`Missing Raijin runtime asset source: ${f.path}`);let I=await Xpc(f.path),C=t.assets.find(E=>E.name===f.name),b;C?(await gfc(C,I),A.reportInfo(null,`Release asset ${f.name} already exists; verified`),b=C):b=await e.uploadAsset({owner:o,repo:l,release_id:t.id,data:I.toString("utf-8"),size:I.byteLength,...f}),await Afc(a,lfc(r,n,b,I))},wxi=e=>e.length>0&&[...e].every(t=>t>="0"&&t<="9"),Txi=e=>{let[t]=e.split("+"),r=t.indexOf("-"),n=r===-1?t:t.slice(0,r),a=r===-1?"":t.slice(r+1),o=n.split(".");if(o.length!==3)return;let l=o.map(f=>Number(f));if(!l.every(f=>Number.isInteger(f)&&f>=0))return;let A=a.length>0?a.split("."):[];if(!A.some(f=>f.length===0))return{major:l[0],minor:l[1],patch:l[2],prerelease:A}},dfc=(e,t)=>{let r=wxi(e),n=wxi(t);return r&&n?Number(e)-Number(t):r!==n?r?-1:1:e.localeCompare(t)},Rxi=(e,t)=>{let r=Txi(e),n=Txi(t);if(!r||!n)return e.localeCompare(t);for(let o of["major","minor","patch"]){let l=r[o]-n[o];if(l!==0)return l}if(r.prerelease.length===0&&n.prerelease.length>0)return 1;if(r.prerelease.length>0&&n.prerelease.length===0)return-1;let a=Math.min(r.prerelease.length,n.prerelease.length);for(let o of Array.from({length:a},(l,A)=>A)){let l=r.prerelease[o],A=n.prerelease[o],f=dfc(l,A);if(f!==0)return f}return r.prerelease.length-n.prerelease.length},pfc=(e,t)=>{let r=`${e}@`;if(t.startsWith(r))return t.slice(r.length)},ffc=(e,t,r)=>r.map(n=>({tagName:n,version:pfc(e,n)})).filter(n=>typeof n.version=="string").filter(n=>Rxi(n.version,t)<0).sort((n,a)=>Rxi(a.version,n.version))[0]?.tagName,Ifc=async(e,t)=>{let{stdout:r}=await Txr.execUtils.execvp("git",["tag","--list",`${t}@*`],{cwd:e.cwd,strict:!0});return r.split(` +`).map(n=>n.trim()).filter(Boolean)},hfc=async e=>{let{stdout:t}=await Txr.execUtils.execvp("git",["rev-parse","HEAD"],{cwd:e.cwd,strict:!0});return t.trim()},s1t=class extends Nxi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await kxi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await xxi.Project.find(t,this.context.cwd);if(!n)throw new Dxi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Gxi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let l=process.env.GITHUB_TOKEN;dUe.ok(l,"GitHub Token is missing");let A="",f=n.manifest.name?.scope;f&&(A+=`@${f}/`);let I=n.manifest.name?.name;dUe.ok(I,"Missing workspace name");let{version:C}=n.manifest;dUe.ok(C,"Missing version"),A+=`${I}`;let b=new i1t({token:l}),E,N;try{({repository:N,organization:E}=vxi(Hpc("git remote get-url origin",{encoding:"utf-8"})))}catch{[E,N]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}dUe.ok(E,"Could not get url of the repo"),dUe.ok(N,"Could not get url of the repo");try{let B=await Ifc(r,A),F=await hfc(r),Q=ffc(A,C,B),X=ofc(A,C,E,N,F,Q),ae=await b.generateNotes(X),ne=sfc(A,C,ae,E,N,F),ce=await b.create(ne);await Bxi(b,ce,A,C,r,E,N,o)}catch(B){if(ifc(B)){let F=a1t(A,C),Q=await b.getByTag({owner:E,repo:N,tag_name:F});await Bxi(b,Q,A,C,r,E,N,o),o.reportInfo(null,`Release ${A}@${C} already exists; skipping`);return}throw B}})})).exitCode()}};var CZi=Nt(el(),1),_Zi=Nt(el(),1),yZi=Nt(yn(),1),bZi=Nt(yn(),1),EZi=Nt(yn(),1),UGr=Nt(zs(),1),KGr=Nt(zs(),1);$c();$c();var ADe=Nt(yn(),1),cZi=Nt(yn(),1),HGr=Nt(zs(),1),OGr=Nt(zs(),1),lZi=Nt(TW(),1),uZi=Nt(ZGr(),1);var lCc="feat",uCc=": ",gCc="(",ACc=")",rZi="!",dCc=".",pCc=["BREAKING CHANGE:","BREAKING CHANGE ","BREAKING-CHANGE:","BREAKING-CHANGE "],fCc=/^(?:[A-Za-z0-9-]+|BREAKING CHANGE)(?:: | #).+/,LGr={patch:0,minor:1,major:2},VGr=e=>Object.hasOwn(LGr,e),sZi=(e,t)=>LGr[t]>LGr[e]?t:e,WGr=(e,t)=>e===void 0?t:VGr(e)?sZi(e,t):e,V1t=(e,t)=>e===void 0?t:VGr(e)?VGr(t)?WGr(e,t):t:e,PGr=e=>e.relativeCwd===dCc,oZi=(e,t)=>e===t.relativeCwd||e.startsWith(`${t.relativeCwd}/`),ICc=(e,t)=>e.relativeCwd===t.relativeCwd,hCc=(e,t)=>ICc(e,t)?!1:PGr(e)?!PGr(t):t.relativeCwd.startsWith(`${e.relativeCwd}/`),nZi=(e,t,r)=>r.some(n=>hCc(t,n)&&oZi(e,n)),mCc=(e,t,r)=>(PGr(t)||oZi(e,t))&&!nZi(e,t,r),CCc=e=>e.length>0&&[...e].every(t=>t>="a"&&t<="z"),iZi=e=>e.trim().length===0,_Cc=e=>fCc.test(e),yCc=e=>{let t=e.split(` +`).map(a=>a.replace("\r",""));for(;t.length>0&&iZi(t[t.length-1]);)t.pop();let r=t.length;for(;r>0&&!iZi(t[r-1]);)r-=1;if(r===0||r===t.length)return[];let n=t.slice(r);return _Cc(n[0])?n:[]},bCc=e=>yCc(e).some(t=>pCc.some(r=>t.startsWith(r))),ECc=e=>{let t=e.indexOf(uCc);if(t<1)return;let r=e.slice(0,t),n=r.endsWith(rZi);n&&(r=r.slice(0,-rZi.length));let a=r.indexOf(gCc);if(a>=0){if(!r.endsWith(ACc))return;r=r.slice(0,a)}if(CCc(r))return{type:r,breaking:n}},SCc=e=>{let[t=""]=e.split(` +`,1),r=ECc(t.replace("\r",""));if(r)return r.breaking||bCc(e)?"major":r.type===lCc?"minor":"patch"},aZi=(e,t,r=e)=>{let n=new Map;for(let a of t){let o=SCc(a.message);if(o)for(let l of e){if(!a.files.some(f=>mCc(f,l,r)))continue;let A=n.get(l.ident);n.set(l.ident,{workspace:l,strategy:A?sZi(A.strategy,o):o})}}return[...n.values()].sort((a,o)=>a.workspace.relativeCwd.localeCompare(o.workspace.relativeCwd))};var vCc="origin/HEAD",BCc="HEAD",wCc=`${vCc}..${BCc}`,TCc="ENOENT",gZi="decline",MGr=2,RCc=e=>e==="release"||e==="decline",NCc=(e,t)=>typeof e=="object"&&e!==null&&"code"in e&&e.code===t,AZi=e=>e.manifest.name?cZi.structUtils.stringifyIdent(e.manifest.name):void 0,dZi=e=>e.relativeCwd!=="."&&!!e.manifest.version&&!!AZi(e),YGr=e=>{let t=AZi(e);if(!(!t||!dZi(e)))return{ident:t,relativeCwd:e.relativeCwd}},DCc=e=>({relativeCwd:e.relativeCwd}),kCc=e=>[e.filename,e.previous_filename].filter(t=>!!t),pZi=e=>({message:e.data.commit.message,files:[...new Set((e.data.files??[]).flatMap(kCc))]}),xCc=async()=>(await Omt()).map(pZi),GCc=async(e,t)=>{let{stdout:r}=await ADe.execUtils.execvp("git",["rev-list","--reverse",t],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)},FCc=async(e,t)=>{let{stdout:r}=await ADe.execUtils.execvp("git",["show","--format=%B","--no-patch","--max-count=1",t],{cwd:e.cwd,strict:!0});return r},ZCc=async(e,t)=>{let{stdout:r}=await ADe.execUtils.execvp("git",["rev-list","--parents","-n","1",t],{cwd:e.cwd,strict:!0}),[,...n]=r.trim().split(" ").filter(Boolean);return n},fZi=(e,t)=>e.find(r=>!t.has(r))??e[0],LCc=async(e,t)=>{let{stdout:r}=await ADe.execUtils.execvp("git",["diff-tree","--no-commit-id","--name-only","-r","--root","--no-renames","-z",t],{cwd:e.cwd,strict:!0});return r.split("\0").map(n=>n.trim()).filter(Boolean)},VCc=async(e,t,r)=>{let n=fZi(await ZCc(e,t),r);if(!n)return LCc(e,t);let{stdout:a}=await ADe.execUtils.execvp("git",["diff","--name-only","--no-renames","-z",n,t],{cwd:e.cwd,strict:!0});return[...new Set(a.split("\0").map(o=>o.trim()).filter(Boolean))]},PCc=async(e,t,r)=>({message:await FCc(e,t),files:await VCc(e,t,r)}),WCc=async(e,t)=>{let r=await GCc(e,t),n=new Set(r);return Promise.all(r.map(async a=>PCc(e,a,n)))},QGr=async(e,t)=>t===void 0&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?xCc():WCc(e,t??wCc),IZi=e=>{let t=(0,lZi.parseSyml)(e),r=new Map;for(let n of t.declined??[])typeof n=="string"&&r.set(n,V1t(r.get(n),gZi));for(let[n,a]of Object.entries(t.releases??{}))typeof a=="string"&&r.set(n,V1t(r.get(n),a));return r},XGr=async e=>{let t=e.get("deferredVersionFolder"),r=new Map,n;try{n=await OGr.xfs.readdirPromise(t)}catch(a){if(NCc(a,TCc))return r;throw a}for(let a of n){if(!a.endsWith(".yml"))continue;let o=HGr.ppath.join(t,a),l=await OGr.xfs.readFilePromise(o,"utf8"),A=IZi(l);for(let[f,I]of A)r.set(f,V1t(r.get(f),I))}return r},OCc=async e=>{let t=await XGr(e);return new Set([...t.entries()].filter(([,r])=>r===gZi).map(([r])=>r))},MCc=(e,t)=>{let r=HGr.ppath.resolve(e.cwd,t.workspace.relativeCwd),n=e.workspacesByCwd.get(r);if(!n)throw new Error(`Could not resolve release workspace "${t.workspace.ident}"`);return{ident:t.workspace.ident,relativeCwd:t.workspace.relativeCwd,decision:t.decision,private:n.manifest.private}},HCc=e=>{let t=YGr(e),{version:r}=e.manifest;if(!(!t||!r))return{workspace:t,decision:"decline"}},YCc=(e,t,r)=>{for(let n of e.workspaces){let a=HCc(n);!a||!r.has(a.workspace.ident)||t.has(a.workspace.ident)||t.set(a.workspace.ident,a)}},QCc=async(e,t=new Set)=>{let r=await uZi.versionUtils.resolveVersionFiles(e),n=new Map;for(let[a,o]of r){let l=YGr(a);!l||!o||n.set(l.ident,{workspace:l,decision:"release"})}return YCc(e,n,t),n},XCc=(e,t,r)=>{for(let n of t)if(!r.has(n.workspace.ident))throw new Error(`Release plan requires deferred target version for "${n.workspace.ident}". Run \`yarn release version defer\` before \`yarn release plan create\`.`);return{schemaVersion:MGr,workspaces:[...r.values()].sort((n,a)=>n.workspace.relativeCwd.localeCompare(a.workspace.relativeCwd)).map(n=>MCc(e,n))}},JGr=(e,t)=>{let r=e.workspaces.map(YGr).filter(a=>!!a),n=e.workspaces.map(DCc);return aZi(r,t,n)},hZi=async(e,t,r)=>{let n=await QGr(e,r),a=JGr(e,n),o=await OCc(t),l=await QCc(e,o);return XCc(e,a,l)},JCc=e=>{if(typeof e!="object"||e===null)return!1;let t=e;return typeof t.ident=="string"&&typeof t.relativeCwd=="string"&&RCc(t.decision)&&typeof t.private=="boolean"},mZi=e=>{let t=JSON.parse(e);if(t.schemaVersion!==MGr||!Array.isArray(t.workspaces)||!t.workspaces.every(JCc))throw new Error("Invalid release plan");return{schemaVersion:MGr,workspaces:t.workspaces}};var P1t=class extends CZi.BaseCommand{static paths=[["release","plan","create"]];static usage=_C.Usage({description:"create a Raijin release workspace selection",details:` The release selection records the fixed workspace set once, so later publish stages can route the same workspaces without recalculating changed workspaces. Target package versions remain owned by Yarn deferred versioning and are only validated here. Run it after yarn release version defer and before yarn version apply --all. - `});output=Su.String("-o,--output");since=Su.String("--since");async execute(){let t=await sZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await oZi.Project.find(t,this.context.cwd);if(!n)throw new iZi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await tZi(r,t,this.since),o=`${JSON.stringify(a,null,2)} -`;if(!this.output)return this.context.stdout.write(o),0;let l=OGr.ppath.resolve(r.cwd,this.output);return(await aZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async f=>{await MGr.xfs.mkdirpPromise(OGr.ppath.dirname(l)),await MGr.xfs.writeFilePromise(l,o),f.reportInfo(null,`Release plan written to ${this.output}`)})).exitCode()}};var cZi=Nt(el(),1),lZi=Nt(el(),1),uZi=Nt(Sn(),1),gZi=Nt(Sn(),1),AZi=Nt(ro(),1),dZi=Nt(ro(),1);$c();$c();var rCc=".raijin/release-plan.json",nCc=(e,t)=>{let r=e.workspaces.filter(a=>a.decision!=="decline");if(r.length===0)return[];let n=["workspaces","foreach"];for(let a of r)n.push("--include",a.ident);return n.push("--all"),t.exclude&&n.push("--exclude",t.exclude),t.verbose&&n.push("--verbose"),t.parallel&&n.push("--parallel"),t.interlaced&&n.push("--interlaced"),t.publicOnly&&n.push("--no-private"),t.topological&&n.push("--topological"),t.topologicalDev&&n.push("--topological-dev"),t.jobs&&n.push("--jobs",t.jobs),n},Z1t=class extends cZi.BaseCommand{static paths=[["release","plan","foreach"]];static usage=_C.Usage({description:"run a command for workspaces listed in a Raijin release plan",details:` + `});output=Su.String("-o,--output");since=Su.String("--since");async execute(){let t=await yZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await bZi.Project.find(t,this.context.cwd);if(!n)throw new _Zi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await hZi(r,t,this.since),o=`${JSON.stringify(a,null,2)} +`;if(!this.output)return this.context.stdout.write(o),0;let l=UGr.ppath.resolve(r.cwd,this.output);return(await EZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async f=>{await KGr.xfs.mkdirpPromise(UGr.ppath.dirname(l)),await KGr.xfs.writeFilePromise(l,o),f.reportInfo(null,`Release plan written to ${this.output}`)})).exitCode()}};var SZi=Nt(el(),1),vZi=Nt(el(),1),BZi=Nt(yn(),1),wZi=Nt(yn(),1),TZi=Nt(zs(),1),RZi=Nt(zs(),1);$c();$c();var UCc=".raijin/release-plan.json",KCc=(e,t)=>{let r=e.workspaces.filter(a=>a.decision!=="decline");if(r.length===0)return[];let n=["workspaces","foreach"];for(let a of r)n.push("--include",a.ident);return n.push("--all"),t.exclude&&n.push("--exclude",t.exclude),t.verbose&&n.push("--verbose"),t.parallel&&n.push("--parallel"),t.interlaced&&n.push("--interlaced"),t.publicOnly&&n.push("--no-private"),t.topological&&n.push("--topological"),t.topologicalDev&&n.push("--topological-dev"),t.jobs&&n.push("--jobs",t.jobs),n},W1t=class extends SZi.BaseCommand{static paths=[["release","plan","foreach"]];static usage=_C.Usage({description:"run a command for workspaces listed in a Raijin release plan",details:` This command routes the fixed release workspace selection through Yarn workspaces foreach. Empty plans are no-ops, never broad workspace execution. - `});plan=Su.String("--plan",rCc);exclude=Su.String("--exclude","");verbose=Su.Boolean("-v,--verbose",!1);parallel=Su.Boolean("-p,--parallel",!1);interlaced=Su.Boolean("-i,--interlaced",!1);publicOnly=Su.Boolean("--no-private",!1);topological=Su.Boolean("-t,--topological",!1);topologicalDev=Su.Boolean("--topological-dev",!1);jobs=Su.String("-j,--jobs");commandName=Su.String();args=Su.Proxy();async execute(){let t=await uZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await gZi.Project.find(t,this.context.cwd);if(!n)throw new lZi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=AZi.ppath.resolve(r.cwd,this.plan),o=rZi(await dZi.xfs.readFilePromise(a,"utf8")),l=nCc(o,{exclude:this.exclude,verbose:this.verbose,parallel:this.parallel,interlaced:this.interlaced,publicOnly:this.publicOnly,topological:this.topological,topologicalDev:this.topologicalDev,jobs:this.jobs});return l.length===0?0:this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var pZi=Nt(el(),1),fZi=Nt(el(),1),IZi=Nt(Sn(),1),hZi=Nt(Sn(),1),mZi=Nt(Sn(),1);$c();var L1t=class extends pZi.BaseCommand{static paths=[["release","version","defer"]];since=Su.String("--since");dryRun=Su.Boolean("--dry-run",!1);async execute(){let t=await IZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hZi.Project.find(t,this.context.cwd);if(!n)throw new fZi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await mZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{let l=await VGr(r,this.since),A=WGr(r,l);if(!A.length){o.reportInfo(null,"No released workspaces need deferred version records");return}let f=await PGr(t);for(let{workspace:I,strategy:C}of A){let b=xGr(f.get(I.ident),C);if(o.reportInfo(null,`Deferring ${I.ident} as ${b}`),this.dryRun)continue;if(await this.cli.run(["workspace",I.ident,"version",b,"--deferred"],{cwd:r.cwd})>0)throw new Error(`Failed to defer ${I.ident} as ${b}`)}})).exitCode()}};var CZi={commands:[n1t,F1t,Z1t,L1t]};var HFr={};sI(HFr,{RendererBuildCommand:()=>qUe,RendererDevCommand:()=>aKe,default:()=>j9i});var HZi=Nt(el(),1),YZi=Nt(Sn(),1),QZi=Nt(Sn(),1),XZi=Nt(Sn(),1),zGr=Nt(Sn(),1),qGr=Nt(Sn(),1),JZi=Nt(Sn(),1),Jee=Nt(ro(),1),uH=Nt(ro(),1);import{PassThrough as MZi}from"node:stream";var YGr=Nt(Sn(),1),XGr=Nt(ro(),1),gDe=Nt(ro(),1),bCe=Nt(ro(),1);import{pathToFileURL as RZi}from"node:url";var _Zi="/dist/compiled/conf/index.js",yZi="/dist/compiled/webpack/bundle5.js",bZi="/dist/build/next-config-ts/require-hook.js",EZi="/node_modules/next/",SZi="/dist/server/dev/require-cache.js",vZi="/dist/build/webpack-config.js";var iCc="next-compiled-conf-require-cache-loader.mjs",sCc=new Set(["--experimental-loader","--loader"]),oCc="RAIJIN_NODE_LOADER",JGr="dist",UGr=".next",QGr="package.json",aCc=".pnp.loader.mjs",BZi="public",zUe="src",wZi="npm:",cCc=/(?:^|@)npm:([^#@]+)/,NZi=16,lCc=[[JGr],[zUe,UGr],[zUe,QGr]],uCc=[[JGr,QGr],[zUe,UGr,QGr]],gCc=[[zUe,UGr]],ACc=e=>e?.includes(".pnp.loader.mjs")??!1,TZi=` + `});plan=Su.String("--plan",UCc);exclude=Su.String("--exclude","");verbose=Su.Boolean("-v,--verbose",!1);parallel=Su.Boolean("-p,--parallel",!1);interlaced=Su.Boolean("-i,--interlaced",!1);publicOnly=Su.Boolean("--no-private",!1);topological=Su.Boolean("-t,--topological",!1);topologicalDev=Su.Boolean("--topological-dev",!1);jobs=Su.String("-j,--jobs");commandName=Su.String();args=Su.Proxy();async execute(){let t=await BZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await wZi.Project.find(t,this.context.cwd);if(!n)throw new vZi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=TZi.ppath.resolve(r.cwd,this.plan),o=mZi(await RZi.xfs.readFilePromise(a,"utf8")),l=KCc(o,{exclude:this.exclude,verbose:this.verbose,parallel:this.parallel,interlaced:this.interlaced,publicOnly:this.publicOnly,topological:this.topological,topologicalDev:this.topologicalDev,jobs:this.jobs});return l.length===0?0:this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var NZi=Nt(el(),1),DZi=Nt(el(),1),kZi=Nt(yn(),1),xZi=Nt(yn(),1),GZi=Nt(yn(),1);$c();var O1t=class extends NZi.BaseCommand{static paths=[["release","version","defer"]];since=Su.String("--since");dryRun=Su.Boolean("--dry-run",!1);async execute(){let t=await kZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await xZi.Project.find(t,this.context.cwd);if(!n)throw new DZi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await GZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{let l=await QGr(r,this.since),A=JGr(r,l);if(!A.length){o.reportInfo(null,"No released workspaces need deferred version records");return}let f=await XGr(t);for(let{workspace:I,strategy:C}of A){let b=WGr(f.get(I.ident),C);if(o.reportInfo(null,`Deferring ${I.ident} as ${b}`),this.dryRun)continue;if(await this.cli.run(["workspace",I.ident,"version",b,"--deferred"],{cwd:r.cwd})>0)throw new Error(`Failed to defer ${I.ident} as ${b}`)}})).exitCode()}};var FZi={commands:[s1t,P1t,W1t,O1t]};var jFr={};sI(jFr,{RendererBuildCommand:()=>eKe,RendererDevCommand:()=>lKe,default:()=>AVi});var sLi=Nt(el(),1),oLi=Nt(yn(),1),aLi=Nt(yn(),1),cLi=Nt(yn(),1),iFr=Nt(yn(),1),sFr=Nt(yn(),1),lLi=Nt(yn(),1),Uee=Nt(zs(),1),uH=Nt(zs(),1);import{PassThrough as iLi}from"node:stream";var zGr=Nt(yn(),1),$Gr=Nt(zs(),1),dDe=Nt(zs(),1),ECe=Nt(zs(),1);import{pathToFileURL as QZi}from"node:url";var ZZi="/dist/compiled/conf/index.js",LZi="/dist/compiled/webpack/bundle5.js",VZi="/dist/build/next-config-ts/require-hook.js",PZi="/node_modules/next/",WZi="/dist/server/dev/require-cache.js",OZi="/dist/build/webpack-config.js";var jCc="next-compiled-conf-require-cache-loader.mjs",zCc=new Set(["--experimental-loader","--loader"]),qCc="RAIJIN_NODE_LOADER",eFr="dist",tFr=".next",qGr="package.json",$Cc=".pnp.loader.mjs",MZi="public",$Ue="src",HZi="npm:",e_c=/(?:^|@)npm:([^#@]+)/,XZi=16,t_c=[[eFr],[$Ue,tFr],[$Ue,qGr]],r_c=[[eFr,qGr],[$Ue,tFr,qGr]],n_c=[[$Ue,tFr]],i_c=e=>e?.includes(".pnp.loader.mjs")??!1,YZi=` const pnpLoader = {} -const NEXT_PACKAGE_PATH = ${JSON.stringify(EZi)} -const NEXT_COMPILED_CONF_PATH = ${JSON.stringify(_Zi)} -const NEXT_CONFIG_REQUIRE_HOOK_PATH = ${JSON.stringify(bZi)} -const NEXT_REQUIRE_CACHE_PATH = ${JSON.stringify(SZi)} -const NEXT_COMPILED_WEBPACK_PATH = ${JSON.stringify(yZi)} -const NEXT_WEBPACK_CONFIG_PATH = ${JSON.stringify(vZi)} +const NEXT_PACKAGE_PATH = ${JSON.stringify(PZi)} +const NEXT_COMPILED_CONF_PATH = ${JSON.stringify(ZZi)} +const NEXT_CONFIG_REQUIRE_HOOK_PATH = ${JSON.stringify(VZi)} +const NEXT_REQUIRE_CACHE_PATH = ${JSON.stringify(WZi)} +const NEXT_COMPILED_WEBPACK_PATH = ${JSON.stringify(LZi)} +const NEXT_WEBPACK_CONFIG_PATH = ${JSON.stringify(OZi)} const REQUIRE_CACHE_NEEDLE = 'delete require.cache[__filename]' const REQUIRE_CACHE_REPLACEMENT = 'if (require.cache) delete require.cache[__filename]' const REQUIRE_CACHE_FILE_NEEDLE = 'const mod = require.cache[filePath];' @@ -2601,43 +2602,43 @@ export async function load(url, context, nextLoad) { return result } -`.trimStart(),dCc=e=>e?TZi.replace("const pnpLoader = {}",`import * as pnpLoader from ${JSON.stringify(e)}`):TZi,DZi=e=>{if(!e)return null;let[t]=e.split("."),r=Number.parseInt(t,10);return Number.isNaN(r)?null:r},pCc=(e,t)=>gDe.ppath.join(e,...t),KGr=async(e,t)=>{await Promise.all(t.map(async r=>{let n=pCc(e,r);await bCe.xfs.existsPromise(n)&&await bCe.xfs.removePromise(n)}))},kZi=async e=>{await KGr(e,lCc)},xZi=async e=>{await KGr(e,uCc)},GZi=async e=>{await KGr(e,gCc)},FZi=async e=>{let t=gDe.ppath.join(e,zUe,BZi);await bCe.xfs.existsPromise(t)&&await bCe.xfs.copyPromise(gDe.ppath.join(e,JGr,BZi),t)},ZZi=(e,t)=>({...e,NEXT_TELEMETRY_DISABLED:"1",[oCc]:t}),jGr=e=>{if(!e)return{nodeOptions:e,loader:void 0};let t=e.split(/\s+/).filter(Boolean);for(let r=0;r0?I.join(" "):void 0,loader:A}}return{nodeOptions:e,loader:void 0}},LZi=async(e,t)=>{let r=gDe.ppath.join(e,aCc);return await bCe.xfs.existsPromise(r)?RZi(XGr.npath.fromPortablePath(r)).href:jGr(t).loader},fCc=e=>{let t=DZi(e);if(t!==null&&te.startsWith(wZi)?e.slice(wZi.length):decodeURIComponent(e).match(cCc)?.[1]??e,VZi=e=>{let t=YGr.structUtils.isVirtualLocator(e)?YGr.structUtils.devirtualizeLocator(e):e;return ICc(t.reference)},PZi=(e,t="next")=>{let r=DZi(e),n=["node",t,"build"];return fCc(e),r!==null&&r>=NZi&&n.push("--webpack"),n.push("src"),n},WZi=e=>{if(e!==0)throw new Error(`Renderer build failed with exit code ${e}`)},OZi=async(e,t)=>{let r=gDe.ppath.join(e,iCc);return await bCe.xfs.writeFilePromise(r,dCc(t)),RZi(XGr.npath.fromPortablePath(r)).href};var qUe=class extends HZi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await YZi.Configuration.find(this.context.cwd,this.context.plugins);await kZi(this.context.cwd);let{project:r,workspace:n}=await QZi.Project.find(t,this.context.cwd);if(!n)throw new Error("Renderer build must be executed from a workspace");let a=n.cwd;return await r.restoreInstallState(),(await XZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Renderer build",async()=>{let A=new MZi,f=new MZi;A.on("data",I=>{I.toString().split(` -`).filter(Boolean).forEach(C=>{l.reportInfo(zGr.MessageName.UNNAMED,C)})}),f.on("data",I=>{I.toString().split(` -`).filter(Boolean).forEach(C=>{l.reportInfo(zGr.MessageName.UNNAMED,C)})}),await Jee.xfs.writeJsonPromise(uH.ppath.join(a,"src/package.json"),{type:"module"});try{let I=await Jee.xfs.mktempPromise(),C={binFolder:I,locator:n.anchoredLocator,project:r},b=await iC(C),{nodeOptions:E}=jGr(b.env.NODE_OPTIONS),N=await LZi(r.cwd,b.env.NODE_OPTIONS),F=(await JZi.scriptUtils.getWorkspaceAccessibleBinaries(n)).get("next");if(!F)throw new Error("Renderer build requires Next.js 16 or newer");let[Q,X]=F,ae=VZi(Q),ne=await OZi(I,N),{executable:ce,env:fe}=await iC({...C,env:{NODE_OPTIONS:E},nodeLoader:ne}),{code:ue}=await qGr.execUtils.pipevp(ce,PZi(ae,X),{end:qGr.execUtils.EndStrategy.ErrorCode,cwd:a,stdin:this.context.stdin,stdout:A,stderr:f,env:ZZi(fe,ne)});WZi(ue)}finally{await Jee.xfs.removePromise(uH.ppath.join(a,"src/package.json"))}}),await l.startTimerPromise("Copy standalone files",async()=>{await Jee.xfs.copyPromise(uH.ppath.join(a,"dist"),uH.ppath.join(a,"src/.next/standalone",a.replace(`${t.projectCwd||""}/`,""),"src"))}),await l.startTimerPromise("Clean workspace manifests",async()=>{await xZi(a)}),await l.startTimerPromise("Copy static files",async()=>{await Jee.xfs.copyPromise(uH.ppath.join(a,"dist/.next/static"),uH.ppath.join(a,"src/.next/static"))}),await l.startTimerPromise("Copy public assets",async()=>{await FZi(a)}),await l.startTimerPromise("Copy edge chunks files",async()=>{await Jee.xfs.existsPromise(uH.ppath.join(a,"src/.next/server/edge-chunks"))&&await Jee.xfs.copyPromise(uH.ppath.join(a,"dist/.next/server/edge-chunks"),uH.ppath.join(a,"src/.next/server/edge-chunks"))}),await l.startTimerPromise("Move server start files",async()=>{await Jee.xfs.movePromise(uH.ppath.join(a,"dist/server.js"),uH.ppath.join(a,"dist/index.js"))}),await l.startTimerPromise("Clean source build artifacts",async()=>{await GZi(a)})})).exitCode()}};var Q9i=Nt(el(),1),X9i=Nt(Sn(),1),J9i=Nt(Sn(),1),t2t=Nt(ro(),1),oKe=Nt(ro(),1);$c();var U9i=Nt(uLi(),1),K9i=Nt(Y9i(),1);var aKe=class extends Q9i.BaseCommand{static paths=[["renderer","dev"]];tunnel=Su.Boolean("--tunnel");https=Su.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,K9i.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",n=>{n.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await X9i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await J9i.Project.find(t,this.context.cwd),n=["next","dev","src"];if(this.https){if(!await t2t.xfs.existsPromise(oKe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await t2t.xfs.existsPromise(oKe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");n.push("--experimental-https"),n.push("--experimental-https-key",oKe.ppath.join(r.cwd,".config/certs/local/dev.key")),n.push("--experimental-https-cert",oKe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}let a=await t2t.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r});if((0,U9i.default)(o,n,{stdio:"inherit",cwd:this.context.cwd,env:l}),this.tunnel){let A=r.getWorkspaceByCwd(this.context.cwd),{tunnel:f}=A.manifest.raw.tools||{};if(!f?.host)throw new Error("Tunnel host not configured");this.startTunnel(f.host,f.port)}}};var j9i={commands:[qUe,aKe]};var mVr={};sI(mVr,{AbstractServiceCommand:()=>qCe,ServiceBuildCommand:()=>HKe,ServiceDevCommand:()=>YKe,default:()=>aKi});var jUi=Nt(Sn(),1),zUi=Nt(Sn(),1),fVr=Nt(ro(),1),qUi=Nt(Sn(),1),$Ui=Nt(ro(),1),eKi=Nt(Al(),1);var cKe=Nt(Al(),1),iVi=Nt(Ec(),1),sVi=Nt(Ec(),1);var z9i=Nt(Ec(),1),q9i=Nt(Ec(),1),eVi=Nt(Pc(),1),$9i=({service:e})=>{let[t,r]=(0,q9i.useState)(0);return(0,z9i.useEffect)(()=>{let n=({percent:a})=>{r(a)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,eVi.jsx)(JM,{value:t})};var YFr=Nt(Al(),1),QFr=Nt(Al(),1),tVi=Nt(Ec(),1),rVi=Nt(Ec(),1),wCe=Nt(Pc(),1),nVi=({service:e})=>{let[t,r]=(0,rVi.useState)("");return(0,tVi.useEffect)(()=>{let n=a=>{r(a.message)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,wCe.jsx)(YFr.Box,{flexDirection:"row",width:"100%",children:(0,wCe.jsxs)(YFr.Box,{flexGrow:1,children:[(0,wCe.jsx)(RG,{color:"cyan",children:"Service:"}),(0,wCe.jsx)(QFr.Text,{children:" "}),(0,wCe.jsx)(QFr.Text,{color:"white",children:t})]})})};var Pce=Nt(Pc(),1),r2t=({service:e})=>{let[t,r]=(0,iVi.useState)(!1);return(0,sVi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,Pce.jsx)(cKe.Box,{position:"relative",height:7,children:(0,Pce.jsxs)(cKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Pce.jsx)(cKe.Box,{children:(0,Pce.jsx)(nVi,{service:e})}),(0,Pce.jsx)(cKe.Box,{marginTop:1,marginBottom:1,children:(0,Pce.jsx)($9i,{service:e})})]})})};var C0c="@atls/code-runtime/runtime-exec-argv",_0c=async()=>await import(C0c);var oVi=async e=>{let{createRuntimeExecArgv:t}=await _0c();return t(e)};import{readFile as Z0c}from"node:fs/promises";import{writeFile as L0c}from"node:fs/promises";import{mkdtemp as V0c}from"node:fs/promises";import{tmpdir as P0c}from"node:os";import{join as uKe}from"node:path";import{readFile as E0c}from"node:fs/promises";import{join as S0c}from"node:path";import{readFile as y0c}from"node:fs/promises";import{join as b0c}from"node:path";var n2t=class{static async find(t){try{let{tools:r={}}=JSON.parse(await y0c(b0c(t,"package.json"),"utf-8"));return r}catch{return{}}}};var i2t=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await E0c(S0c(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await n2t.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};import{existsSync as aVi}from"node:fs";import{readFileSync as v0c}from"node:fs";import{dirname as cVi}from"node:path";import{join as lVi}from"node:path";var s2t=new Map,lKe="/node_modules/",uVi="package.json",gVi="OptionalImportIgnorePlugin",B0c=e=>e?.some(t=>t.optional===!0)??!1,w0c=e=>{let t=e.replaceAll("\\","/"),r=t.lastIndexOf(lKe);if(r===-1)return null;let n=t.slice(r+lKe.length).split("/"),[a]=n;if(!a)return null;let o=a.startsWith("@")?2:1,l=n.slice(0,o);return l.length!==o||l.some(A=>!A)?null:`${t.slice(0,r+lKe.length)}${l.join("/")}`},T0c=e=>{if(e.startsWith(".")||e.startsWith("/"))return null;let[t,r]=e.split("/");return t?t.startsWith("@")?r?`${t}/${r}`:null:t:null},R0c=e=>{let t=e.replaceAll("\\","/"),r=t.lastIndexOf(lKe);if(r===-1)return null;let n=t.slice(r+lKe.length).split("/"),[a,o]=n;return a?a.startsWith("@")?o?`${a}/${o}`:null:a:null},N0c=e=>{let t=w0c(e);if(t){let n=lVi(t,uVi);if(aVi(n))return n}let r=e;for(;r!==cVi(r);){let n=lVi(r,uVi);if(aVi(n))return n;r=cVi(r)}return null},D0c=e=>{if(s2t.has(e))return s2t.get(e)??null;try{let t=JSON.parse(v0c(e,"utf-8"));return s2t.set(e,t),t}catch{return s2t.set(e,null),null}},k0c=(e,t)=>e.peerDependenciesMeta?.[t]?.optional===!0||!!e.optionalDependencies?.[t],x0c=(e,t,r=!1)=>{let n=T0c(e);if(!n||!R0c(t))return!1;let a=N0c(t);if(!a)return!1;let o=D0c(a);return o?r||k0c(o,n):!1},G0c=async(e,t,r)=>new Promise(n=>{e.resolve({},r,t,{},(a,o)=>{n(!a&&!!o)})}),F0c=async(e,t,r,n=!1)=>x0c(e,t,n)?!await G0c(r,e,t):!1,AVi=e=>({apply:t=>{t.hooks.normalModuleFactory.tap(gVi,r=>{r.hooks.beforeResolve.tapAsync(gVi,(n,a)=>{if(n.request.endsWith(".js.map")){a(null,!1);return}let o=r.getResolver("normal",{...n.resolveOptions??{},dependencyType:n.dependencyType});F0c(n.request,n.context,o,B0c(n.dependencies)).then(l=>{a(null,l?!1:void 0)}).catch(l=>{a(l)})})})}});var o2t=class{constructor(t,r,n){this.webpack=t;this.loaders=r;this.cwd=n}async build(t="production",r=[]){let n=uKe(await V0c(uKe(P0c(),"code-service-")),"tsconfig.json");await L0c(n,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),l=["webpack/hot/poll?100",await new i2t(this.cwd).build()],A=this.createPlugins(t,r,a==="module");return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:A,entry:{index:uKe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:uKe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:l,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...bj.compilerOptions,sourceMap:!0},context:this.cwd,configFile:n}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await Z0c(uKe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r,n){let a=[AVi(t),...r];return n&&a.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' +`.trimStart(),s_c=e=>e?YZi.replace("const pnpLoader = {}",`import * as pnpLoader from ${JSON.stringify(e)}`):YZi,JZi=e=>{if(!e)return null;let[t]=e.split("."),r=Number.parseInt(t,10);return Number.isNaN(r)?null:r},o_c=(e,t)=>dDe.ppath.join(e,...t),rFr=async(e,t)=>{await Promise.all(t.map(async r=>{let n=o_c(e,r);await ECe.xfs.existsPromise(n)&&await ECe.xfs.removePromise(n)}))},UZi=async e=>{await rFr(e,t_c)},KZi=async e=>{await rFr(e,r_c)},jZi=async e=>{await rFr(e,n_c)},zZi=async e=>{let t=dDe.ppath.join(e,$Ue,MZi);await ECe.xfs.existsPromise(t)&&await ECe.xfs.copyPromise(dDe.ppath.join(e,eFr,MZi),t)},qZi=(e,t)=>({...e,NEXT_TELEMETRY_DISABLED:"1",[qCc]:t}),nFr=e=>{if(!e)return{nodeOptions:e,loader:void 0};let t=e.split(/\s+/).filter(Boolean);for(let r=0;r0?I.join(" "):void 0,loader:A}}return{nodeOptions:e,loader:void 0}},$Zi=async(e,t)=>{let r=dDe.ppath.join(e,$Cc);return await ECe.xfs.existsPromise(r)?QZi($Gr.npath.fromPortablePath(r)).href:nFr(t).loader},a_c=e=>{let t=JZi(e);if(t!==null&&te.startsWith(HZi)?e.slice(HZi.length):decodeURIComponent(e).match(e_c)?.[1]??e,eLi=e=>{let t=zGr.structUtils.isVirtualLocator(e)?zGr.structUtils.devirtualizeLocator(e):e;return c_c(t.reference)},tLi=(e,t="next")=>{let r=JZi(e),n=["node",t,"build"];return a_c(e),r!==null&&r>=XZi&&n.push("--webpack"),n.push("src"),n},rLi=e=>{if(e!==0)throw new Error(`Renderer build failed with exit code ${e}`)},nLi=async(e,t)=>{let r=dDe.ppath.join(e,jCc);return await ECe.xfs.writeFilePromise(r,s_c(t)),QZi($Gr.npath.fromPortablePath(r)).href};var eKe=class extends sLi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await oLi.Configuration.find(this.context.cwd,this.context.plugins);await UZi(this.context.cwd);let{project:r,workspace:n}=await aLi.Project.find(t,this.context.cwd);if(!n)throw new Error("Renderer build must be executed from a workspace");let a=n.cwd;return await r.restoreInstallState(),(await cLi.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Renderer build",async()=>{let A=new iLi,f=new iLi;A.on("data",I=>{I.toString().split(` +`).filter(Boolean).forEach(C=>{l.reportInfo(iFr.MessageName.UNNAMED,C)})}),f.on("data",I=>{I.toString().split(` +`).filter(Boolean).forEach(C=>{l.reportInfo(iFr.MessageName.UNNAMED,C)})}),await Uee.xfs.writeJsonPromise(uH.ppath.join(a,"src/package.json"),{type:"module"});try{let I=await Uee.xfs.mktempPromise(),C={binFolder:I,locator:n.anchoredLocator,project:r},b=await iC(C),{nodeOptions:E}=nFr(b.env.NODE_OPTIONS),N=await $Zi(r.cwd,b.env.NODE_OPTIONS),F=(await lLi.scriptUtils.getWorkspaceAccessibleBinaries(n)).get("next");if(!F)throw new Error("Renderer build requires Next.js 16 or newer");let[Q,X]=F,ae=eLi(Q),ne=await nLi(I,N),{executable:ce,env:fe}=await iC({...C,env:{NODE_OPTIONS:E},nodeLoader:ne}),{code:ue}=await sFr.execUtils.pipevp(ce,tLi(ae,X),{end:sFr.execUtils.EndStrategy.ErrorCode,cwd:a,stdin:this.context.stdin,stdout:A,stderr:f,env:qZi(fe,ne)});rLi(ue)}finally{await Uee.xfs.removePromise(uH.ppath.join(a,"src/package.json"))}}),await l.startTimerPromise("Copy standalone files",async()=>{await Uee.xfs.copyPromise(uH.ppath.join(a,"dist"),uH.ppath.join(a,"src/.next/standalone",a.replace(`${t.projectCwd||""}/`,""),"src"))}),await l.startTimerPromise("Clean workspace manifests",async()=>{await KZi(a)}),await l.startTimerPromise("Copy static files",async()=>{await Uee.xfs.copyPromise(uH.ppath.join(a,"dist/.next/static"),uH.ppath.join(a,"src/.next/static"))}),await l.startTimerPromise("Copy public assets",async()=>{await zZi(a)}),await l.startTimerPromise("Copy edge chunks files",async()=>{await Uee.xfs.existsPromise(uH.ppath.join(a,"src/.next/server/edge-chunks"))&&await Uee.xfs.copyPromise(uH.ppath.join(a,"dist/.next/server/edge-chunks"),uH.ppath.join(a,"src/.next/server/edge-chunks"))}),await l.startTimerPromise("Move server start files",async()=>{await Uee.xfs.movePromise(uH.ppath.join(a,"dist/server.js"),uH.ppath.join(a,"dist/index.js"))}),await l.startTimerPromise("Clean source build artifacts",async()=>{await jZi(a)})})).exitCode()}};var aVi=Nt(el(),1),cVi=Nt(yn(),1),lVi=Nt(yn(),1),s2t=Nt(zs(),1),cKe=Nt(zs(),1);$c();var uVi=Nt(BLi(),1),gVi=Nt(oVi(),1);var lKe=class extends aVi.BaseCommand{static paths=[["renderer","dev"]];tunnel=Su.Boolean("--tunnel");https=Su.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,gVi.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",n=>{n.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await cVi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await lVi.Project.find(t,this.context.cwd),n=["next","dev","src"];if(this.https){if(!await s2t.xfs.existsPromise(cKe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await s2t.xfs.existsPromise(cKe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");n.push("--experimental-https"),n.push("--experimental-https-key",cKe.ppath.join(r.cwd,".config/certs/local/dev.key")),n.push("--experimental-https-cert",cKe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}let a=await s2t.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r});if((0,uVi.default)(o,n,{stdio:"inherit",cwd:this.context.cwd,env:l}),this.tunnel){let A=r.getWorkspaceByCwd(this.context.cwd),{tunnel:f}=A.manifest.raw.tools||{};if(!f?.host)throw new Error("Tunnel host not configured");this.startTunnel(f.host,f.port)}}};var AVi={commands:[eKe,lKe]};var vVr={};sI(vVr,{AbstractServiceCommand:()=>$Ce,ServiceBuildCommand:()=>QKe,ServiceDevCommand:()=>XKe,default:()=>EKi});var AKi=Nt(yn(),1),dKi=Nt(yn(),1),bVr=Nt(zs(),1),pKi=Nt(yn(),1),fKi=Nt(zs(),1),IKi=Nt(Al(),1);var uKe=Nt(Al(),1),_Vi=Nt(Ec(),1),yVi=Nt(Ec(),1);var dVi=Nt(Ec(),1),pVi=Nt(Ec(),1),IVi=Nt(Pc(),1),fVi=({service:e})=>{let[t,r]=(0,pVi.useState)(0);return(0,dVi.useEffect)(()=>{let n=({percent:a})=>{r(a)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,IVi.jsx)(JM,{value:t})};var zFr=Nt(Al(),1),qFr=Nt(Al(),1),hVi=Nt(Ec(),1),mVi=Nt(Ec(),1),TCe=Nt(Pc(),1),CVi=({service:e})=>{let[t,r]=(0,mVi.useState)("");return(0,hVi.useEffect)(()=>{let n=a=>{r(a.message)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,TCe.jsx)(zFr.Box,{flexDirection:"row",width:"100%",children:(0,TCe.jsxs)(zFr.Box,{flexGrow:1,children:[(0,TCe.jsx)(RG,{color:"cyan",children:"Service:"}),(0,TCe.jsx)(qFr.Text,{children:" "}),(0,TCe.jsx)(qFr.Text,{color:"white",children:t})]})})};var Wce=Nt(Pc(),1),o2t=({service:e})=>{let[t,r]=(0,_Vi.useState)(!1);return(0,yVi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,Wce.jsx)(uKe.Box,{position:"relative",height:7,children:(0,Wce.jsxs)(uKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Wce.jsx)(uKe.Box,{children:(0,Wce.jsx)(CVi,{service:e})}),(0,Wce.jsx)(uKe.Box,{marginTop:1,marginBottom:1,children:(0,Wce.jsx)(fVi,{service:e})})]})})};var gyc="@atls/code-runtime/runtime-exec-argv",Ayc=async()=>await import(gyc);var bVi=async e=>{let{createRuntimeExecArgv:t}=await Ayc();return t(e)};import{readFile as Tyc}from"node:fs/promises";import{writeFile as Ryc}from"node:fs/promises";import{mkdtemp as Nyc}from"node:fs/promises";import{tmpdir as Dyc}from"node:os";import{join as AKe}from"node:path";import{readFile as fyc}from"node:fs/promises";import{join as Iyc}from"node:path";import{readFile as dyc}from"node:fs/promises";import{join as pyc}from"node:path";var a2t=class{static async find(t){try{let{tools:r={}}=JSON.parse(await dyc(pyc(t,"package.json"),"utf-8"));return r}catch{return{}}}};var c2t=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await fyc(Iyc(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await a2t.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};import{existsSync as EVi}from"node:fs";import{readFileSync as hyc}from"node:fs";import{dirname as SVi}from"node:path";import{join as vVi}from"node:path";var l2t=new Map,gKe="/node_modules/",BVi="package.json",wVi="OptionalImportIgnorePlugin",myc=e=>e?.some(t=>t.optional===!0)??!1,Cyc=e=>{let t=e.replaceAll("\\","/"),r=t.lastIndexOf(gKe);if(r===-1)return null;let n=t.slice(r+gKe.length).split("/"),[a]=n;if(!a)return null;let o=a.startsWith("@")?2:1,l=n.slice(0,o);return l.length!==o||l.some(A=>!A)?null:`${t.slice(0,r+gKe.length)}${l.join("/")}`},_yc=e=>{if(e.startsWith(".")||e.startsWith("/"))return null;let[t,r]=e.split("/");return t?t.startsWith("@")?r?`${t}/${r}`:null:t:null},yyc=e=>{let t=e.replaceAll("\\","/"),r=t.lastIndexOf(gKe);if(r===-1)return null;let n=t.slice(r+gKe.length).split("/"),[a,o]=n;return a?a.startsWith("@")?o?`${a}/${o}`:null:a:null},byc=e=>{let t=Cyc(e);if(t){let n=vVi(t,BVi);if(EVi(n))return n}let r=e;for(;r!==SVi(r);){let n=vVi(r,BVi);if(EVi(n))return n;r=SVi(r)}return null},Eyc=e=>{if(l2t.has(e))return l2t.get(e)??null;try{let t=JSON.parse(hyc(e,"utf-8"));return l2t.set(e,t),t}catch{return l2t.set(e,null),null}},Syc=(e,t)=>e.peerDependenciesMeta?.[t]?.optional===!0||!!e.optionalDependencies?.[t],vyc=(e,t,r=!1)=>{let n=_yc(e);if(!n||!yyc(t))return!1;let a=byc(t);if(!a)return!1;let o=Eyc(a);return o?r||Syc(o,n):!1},Byc=async(e,t,r)=>new Promise(n=>{e.resolve({},r,t,{},(a,o)=>{n(!a&&!!o)})}),wyc=async(e,t,r,n=!1)=>vyc(e,t,n)?!await Byc(r,e,t):!1,TVi=e=>({apply:t=>{t.hooks.normalModuleFactory.tap(wVi,r=>{r.hooks.beforeResolve.tapAsync(wVi,(n,a)=>{if(n.request.endsWith(".js.map")){a(null,!1);return}let o=r.getResolver("normal",{...n.resolveOptions??{},dependencyType:n.dependencyType});wyc(n.request,n.context,o,myc(n.dependencies)).then(l=>{a(null,l?!1:void 0)}).catch(l=>{a(l)})})})}});var u2t=class{constructor(t,r,n){this.webpack=t;this.loaders=r;this.cwd=n}async build(t="production",r=[]){let n=AKe(await Nyc(AKe(Dyc(),"code-service-")),"tsconfig.json");await Ryc(n,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),l=["webpack/hot/poll?100",await new c2t(this.cwd).build()],A=this.createPlugins(t,r,a==="module");return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:A,entry:{index:AKe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:AKe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:l,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...bj.compilerOptions,sourceMap:!0},context:this.cwd,configFile:n}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await Tyc(AKe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r,n){let a=[TVi(t),...r];return n&&a.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' import { fileURLToPath } from 'node:url' const require = createRequire(import.meta.url) const __filename = fileURLToPath(import.meta.url) -`,raw:!0})),t==="development"&&a.push(new this.webpack.HotModuleReplacementPlugin),a}};import iZc from"node:events";import{PassThrough as sZc}from"node:stream";var y4=Nt(yDe(),1);var VLr="@namespace";var NJi=Nt(yDe(),1),DJi=Nt(kKe(),1),kJi=Nt(kKe(),1),Bvt=Nt(yDe(),1);var uJi=Nt(S9r(),1),gJi=Nt(kKe(),1),Cvt=class extends gJi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));process.stdout.write(`${a} -`)}r?.({code:uJi.ExportResultCode.SUCCESS})}};var TJi=Nt(S9r(),1),RJi=Nt(kKe(),1);var T9r=Nt(_Ji(),1),R9r=Nt(BJi(),1);import{isMainThread as jFc}from"node:worker_threads";var zFc=T9r.default.default||T9r.default;function Evt(){}function qFc(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var wJi=()=>{let e=new zFc({fd:process.stdout.fd||1});e.on("error",t),jFc&&(R9r.default.register(e,qFc),e.on("close",()=>{R9r.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=Evt,e.end=Evt,e.flushSync=Evt,e.destroy=Evt;return}e.removeListener("error",t),e.emit("error",r)}return e};var $Fc=function(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},eZc=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},Svt,vvt=class extends RJi.ConsoleLogRecordExporter{constructor(){super(),Svt.set(this,void 0),$Fc(this,Svt,wJi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));eZc(this,Svt,"f").write(`${a} -`)}r?.({code:TJi.ExportResultCode.SUCCESS})}};Svt=new WeakMap;var wvt=class e{static getLoggerProvider(){if(!e.initialized&&Bvt.logs.getLoggerProvider()instanceof NJi.NoopLoggerProvider){let t=new DJi.LoggerProvider;t.addLogRecordProcessor(new kJi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new Cvt:new vvt)),Bvt.logs.setGlobalLoggerProvider(t),e.initialized=!0}return Bvt.logs.getLoggerProvider()}};wvt.initialized=!1;var N9r=Nt(yDe(),1),VMu=Object.keys(N9r.SeverityNumber).reduce((e,t)=>({...e,[N9r.SeverityNumber[t]]:t}),{});import{fork as tZc}from"node:child_process";import{join as rZc}from"node:path";var Tvt=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var nZc=({execArgv:e},t=process.execArgv)=>({silent:!0,...e?{execArgv:[...t,...e]}:{}}),Rvt=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new Tvt(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:n}=t.compiler.options.output;n&&(this.entryFile=rZc(n,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let n=tZc(t,[],nZc(this.options));this.options.stdout&&n.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&n.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(n)},0)}};var ODe=class e extends iZc{constructor(r,n,a){super();this.webpack=r;this.config=n;this.execArgv=a}static async initialize(r){let{webpack:n,tsLoaderPath:a,nodeLoaderPath:o,protoLoaderPath:l}=await import("@atls/code-runtime/webpack"),A=new o2t(n,{nodeLoader:o,tsLoader:a,protoLoader:l},r);return new e(n,A,await oVi(r))}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((n,a)=>{this.emit("build:progress",{percent:n*100,message:a})})]));return new Promise((n,a)=>{r.run((o,l)=>{if(this.emit("end",{error:o,stats:l}),o)o.message?n([o]):a(o);else if(l){let{errors:A=[],warnings:f=[]}=l.toJson();n([...A.map(I=>({record:I,severityNumber:y4.SeverityNumber.ERROR})),...f.map(I=>({record:I,severityNumber:y4.SeverityNumber.WARN}))])}else n([])})})}async watch(r){let n=new sZc;return n.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:y4.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new Rvt({stdout:n,stderr:n,execArgv:this.execArgv}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:l=[],warnings:A=[]}=o.toJson();A.forEach(f=>{r({record:f,severityNumber:y4.SeverityNumber.WARN})}),l.forEach(f=>{r({record:f,severityNumber:y4.SeverityNumber.ERROR})})}})}};var KUi=Nt(el(),1);$c();var xJi=Nt(Al(),1),FJi=Nt(Pc(),1),GJi=({children:e})=>e?(0,FJi.jsx)(xJi.Text,{children:e}):null;var G9r=Nt(Al(),1);var F9r=Nt(Ec(),1);var oZc=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,n,a)=>n+t+a.toLowerCase()));function D9r(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let n=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,n);return r?oZc(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,n).toLowerCase()}var LJi=Nt(ZJi(),1),Z9r=Nt(Pc(),1),VJi=({children:e})=>{let t=(0,F9r.useMemo)(()=>typeof e=="string"?D9r(e,{separator:"-"}):e,[e]),r=(0,F9r.useMemo)(()=>t&&typeof t=="string"?(0,LJi.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(n=>(0,Z9r.jsx)(G9r.Text,{color:r,children:n},OW())):(0,Z9r.jsx)(G9r.Text,{color:r,children:t}):null};var XDe=Nt(Al(),1);var QUi=Nt(XJi(),1);var M9r="@mikro-orm-sql",H9r="@mikro-orm-params";var fZc;fZc=new WeakMap;var Zj=Nt(Al(),1),Vvt=Nt(Al(),1);var LUi=Nt(UJi(),1),vUi=Object.defineProperty,IZc=Object.defineProperties,hZc=Object.getOwnPropertyDescriptors,Zvt=Object.getOwnPropertySymbols,BUi=Object.prototype.hasOwnProperty,wUi=Object.prototype.propertyIsEnumerable,KJi=(e,t,r)=>t in e?vUi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,qk=(e,t)=>{for(var r in t||(t={}))BUi.call(t,r)&&KJi(e,r,t[r]);if(Zvt)for(var r of Zvt(t))wUi.call(t,r)&&KJi(e,r,t[r]);return e},tL=(e,t)=>IZc(e,hZc(t)),mZc=(e,t)=>{var r={};for(var n in e)BUi.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Zvt)for(var n of Zvt(e))t.indexOf(n)<0&&wUi.call(e,n)&&(r[n]=e[n]);return r},CZc=(e,t)=>{for(var r in t)vUi(e,r,{get:t[r],enumerable:!0})},TUi={};CZc(TUi,{bigquery:()=>LZc,db2:()=>jZc,db2i:()=>sLc,hive:()=>pLc,mariadb:()=>ELc,mysql:()=>kLc,n1ql:()=>jLc,plsql:()=>s9c,postgresql:()=>f9c,redshift:()=>S9c,singlestoredb:()=>vVc,snowflake:()=>GVc,spark:()=>x9c,sql:()=>q9c,sqlite:()=>H9c,tidb:()=>OLc,transactsql:()=>IVc,trino:()=>aVc});var oc=e=>e.flatMap(_Zc),_Zc=e=>xvt(bZc(e)).map(yZc),yZc=e=>e.replace(/ +/g," ").trim(),bZc=e=>({type:"mandatory_block",items:dVr(e,0)[0]}),dVr=(e,t,r)=>{let n=[];for(;e[t];){let[a,o]=EZc(e,t);if(n.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[n,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[n,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[n,t]},EZc=(e,t)=>{let r=[];for(;;){let[n,a]=SZc(e,t);if(n)r.push(n),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},SZc=(e,t)=>{if(e[t]==="{")return vZc(e,t+1);if(e[t]==="[")return BZc(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},vZc=(e,t)=>{let[r,n]=dVr(e,t,"}");return[{type:"mandatory_block",items:r},n]},BZc=(e,t)=>{let[r,n]=dVr(e,t,"]");return[{type:"optional_block",items:r},n]},xvt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(xvt).reduce(wZc,[""]);if(e.type==="mandatory_block")return e.items.flatMap(xvt);if(e.type==="optional_block")return["",...e.items.flatMap(xvt)];throw new Error(`Unknown node type: ${e}`)},wZc=(e,t)=>{let r=[];for(let n of e)for(let a of t)r.push(n+a);return r},RUi=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(RUi||{}),NUi=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),QDe=NUi(1/0),HDe=e=>t=>t.type===e.type&&t.text===e.text,jCe={ARRAY:HDe({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:HDe({text:"BY",type:"RESERVED_KEYWORD"}),SET:HDe({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:HDe({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:HDe({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:HDe({text:"VALUES",type:"RESERVED_CLAUSE"})},DUi=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",TZc=e=>e==="AND"||e==="OR"||e==="XOR",RZc=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],NZc=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],DZc=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],kZc=oc(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),xZc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),jJi=oc(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),Y9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),GZc=oc(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),FZc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),ZZc=oc(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),LZc={name:"bigquery",tokenizerOptions:{reservedSelect:kZc,reservedClauses:[...xZc,...Y9r,...jJi],reservedSetOperations:GZc,reservedJoins:FZc,reservedPhrases:ZZc,reservedKeywords:NZc,reservedDataTypes:DZc,reservedFunctionNames:RZc,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:VZc},formatOptions:{onelineClauses:[...jJi,...Y9r],tabularOnelineClauses:Y9r}};function VZc(e){return PZc(WZc(e))}function PZc(e){let t=QDe;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,tL(qk({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function WZc(e){var t;let r=[];for(let n=0;nt=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function OZc(e,t){let r=0;for(let n=t;n"?r--:a.text===">>"&&(r-=2),r===0)return n}return e.length-1}var MZc=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],HZc=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],YZc=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],QZc=oc(["SELECT [ALL | DISTINCT]"]),XZc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),qJi=oc(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),Q9r=oc(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),JZc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),UZc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),KZc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),jZc={name:"db2",tokenizerOptions:{reservedSelect:QZc,reservedClauses:[...XZc,...qJi,...Q9r],reservedSetOperations:JZc,reservedJoins:UZc,reservedPhrases:KZc,reservedKeywords:HZc,reservedDataTypes:YZc,reservedFunctionNames:MZc,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...qJi,...Q9r],tabularOnelineClauses:Q9r}},zZc=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],qZc=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],$Zc=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],eLc=oc(["SELECT [ALL | DISTINCT]"]),tLc=oc(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),$Ji=oc(["CREATE [OR REPLACE] TABLE"]),X9r=oc(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),rLc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),nLc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),iLc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),sLc={name:"db2i",tokenizerOptions:{reservedSelect:eLc,reservedClauses:[...tLc,...$Ji,...X9r],reservedSetOperations:rLc,reservedJoins:nLc,reservedPhrases:iLc,reservedKeywords:qZc,reservedDataTypes:$Zc,reservedFunctionNames:zZc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...$Ji,...X9r],tabularOnelineClauses:X9r}},oLc=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],aLc=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],cLc=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],lLc=oc(["SELECT [ALL | DISTINCT]"]),uLc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),eUi=oc(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),J9r=oc(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),gLc=oc(["UNION [ALL | DISTINCT]"]),ALc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),dLc=oc(["{ROWS | RANGE} BETWEEN"]),pLc={name:"hive",tokenizerOptions:{reservedSelect:lLc,reservedClauses:[...uLc,...eUi,...J9r],reservedSetOperations:gLc,reservedJoins:ALc,reservedPhrases:dLc,reservedKeywords:aLc,reservedDataTypes:cLc,reservedFunctionNames:oLc,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...eUi,...J9r],tabularOnelineClauses:J9r}};function Lvt(e){return e.map((t,r)=>{let n=e[r+1]||QDe;if(jCe.SET(t)&&n.text==="(")return tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||QDe;return jCe.VALUES(t)&&a.text==="="?tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var fLc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],ILc=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],hLc=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],mLc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),CLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),tUi=oc(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),U9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),_Lc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),yLc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),bLc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ELc={name:"mariadb",tokenizerOptions:{reservedSelect:mLc,reservedClauses:[...CLc,...tUi,...U9r],reservedSetOperations:_Lc,reservedJoins:yLc,reservedPhrases:bLc,supportsXor:!0,reservedKeywords:fLc,reservedDataTypes:ILc,reservedFunctionNames:hLc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:Lvt},formatOptions:{onelineClauses:[...tUi,...U9r],tabularOnelineClauses:U9r}},SLc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],vLc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],BLc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],wLc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),TLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),rUi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),K9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),RLc=oc(["UNION [ALL | DISTINCT]"]),NLc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),DLc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),kLc={name:"mysql",tokenizerOptions:{reservedSelect:wLc,reservedClauses:[...TLc,...rUi,...K9r],reservedSetOperations:RLc,reservedJoins:NLc,reservedPhrases:DLc,supportsXor:!0,reservedKeywords:SLc,reservedDataTypes:vLc,reservedFunctionNames:BLc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Lvt},formatOptions:{onelineClauses:[...rUi,...K9r],tabularOnelineClauses:K9r}},xLc=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],GLc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],FLc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],ZLc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),LLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),nUi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),j9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),VLc=oc(["UNION [ALL | DISTINCT]"]),PLc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),WLc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),OLc={name:"tidb",tokenizerOptions:{reservedSelect:ZLc,reservedClauses:[...LLc,...nUi,...j9r],reservedSetOperations:VLc,reservedJoins:PLc,reservedPhrases:WLc,supportsXor:!0,reservedKeywords:xLc,reservedDataTypes:GLc,reservedFunctionNames:FLc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Lvt},formatOptions:{onelineClauses:[...nUi,...j9r],tabularOnelineClauses:j9r}},MLc=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],HLc=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],YLc=[],QLc=oc(["SELECT [ALL | DISTINCT]"]),XLc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),iUi=oc(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),JLc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),ULc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),KLc=oc(["{ROWS | RANGE | GROUPS} BETWEEN"]),jLc={name:"n1ql",tokenizerOptions:{reservedSelect:QLc,reservedClauses:[...XLc,...iUi],reservedSetOperations:JLc,reservedJoins:ULc,reservedPhrases:KLc,supportsXor:!0,reservedKeywords:HLc,reservedDataTypes:YLc,reservedFunctionNames:MLc,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:iUi}},zLc=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],qLc=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],$Lc=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],e9c=oc(["SELECT [ALL | DISTINCT | UNIQUE]"]),t9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),sUi=oc(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),z9r=oc(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),r9c=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),n9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),i9c=oc(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),s9c={name:"plsql",tokenizerOptions:{reservedSelect:e9c,reservedClauses:[...t9c,...sUi,...z9r],reservedSetOperations:r9c,reservedJoins:n9c,reservedPhrases:i9c,supportsXor:!0,reservedKeywords:zLc,reservedDataTypes:qLc,reservedFunctionNames:$Lc,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:o9c},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...sUi,...z9r],tabularOnelineClauses:z9r}};function o9c(e){let t=QDe;return e.map(r=>jCe.SET(r)&&jCe.BY(t)?tL(qk({},r),{type:"RESERVED_KEYWORD"}):(DUi(r.type)&&(t=r),r))}var a9c=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],c9c=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],l9c=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],u9c=oc(["SELECT [ALL | DISTINCT]"]),g9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),oUi=oc(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),q9r=oc(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),A9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),d9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),p9c=oc(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),f9c={name:"postgresql",tokenizerOptions:{reservedSelect:u9c,reservedClauses:[...g9c,...oUi,...q9r],reservedSetOperations:A9c,reservedJoins:d9c,reservedPhrases:p9c,reservedKeywords:c9c,reservedDataTypes:l9c,reservedFunctionNames:a9c,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...oUi,...q9r],tabularOnelineClauses:q9r}},I9c=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],h9c=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],m9c=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],C9c=oc(["SELECT [ALL | DISTINCT]"]),_9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),aUi=oc(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),$9r=oc(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),y9c=oc(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),b9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),E9c=oc(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),S9c={name:"redshift",tokenizerOptions:{reservedSelect:C9c,reservedClauses:[..._9c,...aUi,...$9r],reservedSetOperations:y9c,reservedJoins:b9c,reservedPhrases:E9c,reservedKeywords:h9c,reservedDataTypes:m9c,reservedFunctionNames:I9c,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...aUi,...$9r],tabularOnelineClauses:$9r}},v9c=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],B9c=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],w9c=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],T9c=oc(["SELECT [ALL | DISTINCT]"]),R9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),cUi=oc(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),eVr=oc(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),N9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),D9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),k9c=oc(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),x9c={name:"spark",tokenizerOptions:{reservedSelect:T9c,reservedClauses:[...R9c,...cUi,...eVr],reservedSetOperations:N9c,reservedJoins:D9c,reservedPhrases:k9c,supportsXor:!0,reservedKeywords:v9c,reservedDataTypes:B9c,reservedFunctionNames:w9c,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:G9c},formatOptions:{onelineClauses:[...cUi,...eVr],tabularOnelineClauses:eVr}};function G9c(e){return e.map((t,r)=>{let n=e[r-1]||QDe,a=e[r+1]||QDe;return jCe.WINDOW(t)&&a.type==="OPEN_PAREN"?tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(n.text==="COLLECTION"&&a.text==="TERMINATED")?tL(qk({},t),{type:"IDENTIFIER",text:t.raw}):t})}var F9c=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],Z9c=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],L9c=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],V9c=oc(["SELECT [ALL | DISTINCT]"]),P9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),lUi=oc(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),tVr=oc(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),W9c=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),O9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),M9c=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),H9c={name:"sqlite",tokenizerOptions:{reservedSelect:V9c,reservedClauses:[...P9c,...lUi,...tVr],reservedSetOperations:W9c,reservedJoins:O9c,reservedPhrases:M9c,reservedKeywords:Z9c,reservedDataTypes:L9c,reservedFunctionNames:F9c,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...lUi,...tVr],tabularOnelineClauses:tVr}},Y9c=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],Q9c=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],X9c=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],J9c=oc(["SELECT [ALL | DISTINCT]"]),U9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),uUi=oc(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),rVr=oc(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),K9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),j9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),z9c=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),q9c={name:"sql",tokenizerOptions:{reservedSelect:J9c,reservedClauses:[...U9c,...uUi,...rVr],reservedSetOperations:K9c,reservedJoins:j9c,reservedPhrases:z9c,reservedKeywords:Q9c,reservedDataTypes:X9c,reservedFunctionNames:Y9c,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...uUi,...rVr],tabularOnelineClauses:rVr}},$9c=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],eVc=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],tVc=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],rVc=oc(["SELECT [ALL | DISTINCT]"]),nVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),gUi=oc(["CREATE TABLE [IF NOT EXISTS]"]),nVr=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),iVc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),sVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),oVc=oc(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),aVc={name:"trino",tokenizerOptions:{reservedSelect:rVc,reservedClauses:[...nVc,...gUi,...nVr],reservedSetOperations:iVc,reservedJoins:sVc,reservedPhrases:oVc,reservedKeywords:eVc,reservedDataTypes:tVc,reservedFunctionNames:$9c,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...gUi,...nVr],tabularOnelineClauses:nVr}},cVc=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],lVc=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],uVc=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],gVc=oc(["SELECT [ALL | DISTINCT]"]),AVc=oc(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),AUi=oc(["CREATE TABLE"]),iVr=oc(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),dVc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),pVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),fVc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),IVc={name:"transactsql",tokenizerOptions:{reservedSelect:gVc,reservedClauses:[...AVc,...AUi,...iVr],reservedSetOperations:dVc,reservedJoins:pVc,reservedPhrases:fVc,reservedKeywords:lVc,reservedDataTypes:uVc,reservedFunctionNames:cVc,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...AUi,...iVr],tabularOnelineClauses:iVr}},hVc=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],mVc=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],CVc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],_Vc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),yVc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),dUi=oc(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),sVr=oc(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),bVc=oc(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),EVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),SVc=oc(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),vVc={name:"singlestoredb",tokenizerOptions:{reservedSelect:_Vc,reservedClauses:[...yVc,...dUi,...sVr],reservedSetOperations:bVc,reservedJoins:EVc,reservedPhrases:SVc,reservedKeywords:hVc,reservedDataTypes:mVc,reservedFunctionNames:CVc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:Lvt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...dUi,...sVr],tabularOnelineClauses:sVr}},BVc=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],wVc=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],TVc=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],RVc=oc(["SELECT [ALL | DISTINCT]"]),NVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),pUi=oc(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),oVr=oc(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),DVc=oc(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),kVc=oc(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),xVc=oc(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),GVc={name:"snowflake",tokenizerOptions:{reservedSelect:RVc,reservedClauses:[...NVc,...pUi,...oVr],reservedSetOperations:DVc,reservedJoins:kVc,reservedPhrases:xVc,reservedKeywords:wVc,reservedDataTypes:TVc,reservedFunctionNames:BVc,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...pUi,...oVr],tabularOnelineClauses:oVr}},OKe=e=>e[e.length-1],kUi=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),Gvt=e=>e.replace(/\s+/gu," "),aVr=e=>/\n/.test(e),b4=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),fUi=/\s+/uy,zCe=e=>new RegExp(`(?:${e})`,"uy"),FVc=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),ZVc=e=>e+"(?:-"+e+")*",LVc=({prefixes:e,requirePrefix:t})=>`(?:${e.map(FVc).join("|")}${t?"":"|"})`,VVc=e=>new RegExp(`(?:${e.map(b4).join("|")}).*?(?=\r +`,raw:!0})),t==="development"&&a.push(new this.webpack.HotModuleReplacementPlugin),a}};import jZc from"node:events";import{PassThrough as zZc}from"node:stream";var y4=Nt(EDe(),1);var QLr="@namespace";var XJi=Nt(EDe(),1),JJi=Nt(GKe(),1),UJi=Nt(GKe(),1),Nvt=Nt(EDe(),1);var BJi=Nt(D9r(),1),wJi=Nt(GKe(),1),Evt=class extends wJi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));process.stdout.write(`${a} +`)}r?.({code:BJi.ExportResultCode.SUCCESS})}};var YJi=Nt(D9r(),1),QJi=Nt(GKe(),1);var F9r=Nt(ZJi(),1),Z9r=Nt(MJi(),1);import{isMainThread as MZc}from"node:worker_threads";var HZc=F9r.default.default||F9r.default;function wvt(){}function YZc(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var HJi=()=>{let e=new HZc({fd:process.stdout.fd||1});e.on("error",t),MZc&&(Z9r.default.register(e,YZc),e.on("close",()=>{Z9r.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=wvt,e.end=wvt,e.flushSync=wvt,e.destroy=wvt;return}e.removeListener("error",t),e.emit("error",r)}return e};var QZc=function(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},XZc=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},Tvt,Rvt=class extends QJi.ConsoleLogRecordExporter{constructor(){super(),Tvt.set(this,void 0),QZc(this,Tvt,HJi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));XZc(this,Tvt,"f").write(`${a} +`)}r?.({code:YJi.ExportResultCode.SUCCESS})}};Tvt=new WeakMap;var Dvt=class e{static getLoggerProvider(){if(!e.initialized&&Nvt.logs.getLoggerProvider()instanceof XJi.NoopLoggerProvider){let t=new JJi.LoggerProvider;t.addLogRecordProcessor(new UJi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new Evt:new Rvt)),Nvt.logs.setGlobalLoggerProvider(t),e.initialized=!0}return Nvt.logs.getLoggerProvider()}};Dvt.initialized=!1;var L9r=Nt(EDe(),1),UHu=Object.keys(L9r.SeverityNumber).reduce((e,t)=>({...e,[L9r.SeverityNumber[t]]:t}),{});import{fork as JZc}from"node:child_process";import{join as UZc}from"node:path";var kvt=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var KZc=({execArgv:e},t=process.execArgv)=>({silent:!0,...e?{execArgv:[...t,...e]}:{}}),xvt=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new kvt(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:n}=t.compiler.options.output;n&&(this.entryFile=UZc(n,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let n=JZc(t,[],KZc(this.options));this.options.stdout&&n.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&n.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(n)},0)}};var HDe=class e extends jZc{constructor(r,n,a){super();this.webpack=r;this.config=n;this.execArgv=a}static async initialize(r){let{webpack:n,tsLoaderPath:a,nodeLoaderPath:o,protoLoaderPath:l}=await import("@atls/code-runtime/webpack"),A=new u2t(n,{nodeLoader:o,tsLoader:a,protoLoader:l},r);return new e(n,A,await bVi(r))}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((n,a)=>{this.emit("build:progress",{percent:n*100,message:a})})]));return new Promise((n,a)=>{r.run((o,l)=>{if(this.emit("end",{error:o,stats:l}),o)o.message?n([o]):a(o);else if(l){let{errors:A=[],warnings:f=[]}=l.toJson();n([...A.map(I=>({record:I,severityNumber:y4.SeverityNumber.ERROR})),...f.map(I=>({record:I,severityNumber:y4.SeverityNumber.WARN}))])}else n([])})})}async watch(r){let n=new zZc;return n.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:y4.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new xvt({stdout:n,stderr:n,execArgv:this.execArgv}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:l=[],warnings:A=[]}=o.toJson();A.forEach(f=>{r({record:f,severityNumber:y4.SeverityNumber.WARN})}),l.forEach(f=>{r({record:f,severityNumber:y4.SeverityNumber.ERROR})})}})}};var gKi=Nt(el(),1);$c();var KJi=Nt(Al(),1),zJi=Nt(Pc(),1),jJi=({children:e})=>e?(0,zJi.jsx)(KJi.Text,{children:e}):null;var O9r=Nt(Al(),1);var M9r=Nt(Ec(),1);var qZc=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,n,a)=>n+t+a.toLowerCase()));function V9r(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let n=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,n);return r?qZc(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,n).toLowerCase()}var $Ji=Nt(qJi(),1),H9r=Nt(Pc(),1),eUi=({children:e})=>{let t=(0,M9r.useMemo)(()=>typeof e=="string"?V9r(e,{separator:"-"}):e,[e]),r=(0,M9r.useMemo)(()=>t&&typeof t=="string"?(0,$Ji.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(n=>(0,H9r.jsx)(O9r.Text,{color:r,children:n},OW())):(0,H9r.jsx)(O9r.Text,{color:r,children:t}):null};var UDe=Nt(Al(),1);var aKi=Nt(cUi(),1);var K9r="@mikro-orm-sql",j9r="@mikro-orm-params";var aLc;aLc=new WeakMap;var Zj=Nt(Al(),1),Mvt=Nt(Al(),1);var $Ui=Nt(uUi(),1),OUi=Object.defineProperty,cLc=Object.defineProperties,lLc=Object.getOwnPropertyDescriptors,Wvt=Object.getOwnPropertySymbols,MUi=Object.prototype.hasOwnProperty,HUi=Object.prototype.propertyIsEnumerable,gUi=(e,t,r)=>t in e?OUi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,qk=(e,t)=>{for(var r in t||(t={}))MUi.call(t,r)&&gUi(e,r,t[r]);if(Wvt)for(var r of Wvt(t))HUi.call(t,r)&&gUi(e,r,t[r]);return e},tL=(e,t)=>cLc(e,lLc(t)),uLc=(e,t)=>{var r={};for(var n in e)MUi.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Wvt)for(var n of Wvt(e))t.indexOf(n)<0&&HUi.call(e,n)&&(r[n]=e[n]);return r},gLc=(e,t)=>{for(var r in t)OUi(e,r,{get:t[r],enumerable:!0})},YUi={};gLc(YUi,{bigquery:()=>RLc,db2:()=>MLc,db2i:()=>zLc,hive:()=>o9c,mariadb:()=>f9c,mysql:()=>S9c,n1ql:()=>M9c,plsql:()=>z9c,postgresql:()=>aVc,redshift:()=>IVc,singlestoredb:()=>hPc,snowflake:()=>BPc,spark:()=>vVc,sql:()=>YVc,sqlite:()=>FVc,tidb:()=>x9c,transactsql:()=>cPc,trino:()=>$Vc});var oc=e=>e.flatMap(ALc),ALc=e=>Lvt(pLc(e)).map(dLc),dLc=e=>e.replace(/ +/g," ").trim(),pLc=e=>({type:"mandatory_block",items:_Vr(e,0)[0]}),_Vr=(e,t,r)=>{let n=[];for(;e[t];){let[a,o]=fLc(e,t);if(n.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[n,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[n,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[n,t]},fLc=(e,t)=>{let r=[];for(;;){let[n,a]=ILc(e,t);if(n)r.push(n),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},ILc=(e,t)=>{if(e[t]==="{")return hLc(e,t+1);if(e[t]==="[")return mLc(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},hLc=(e,t)=>{let[r,n]=_Vr(e,t,"}");return[{type:"mandatory_block",items:r},n]},mLc=(e,t)=>{let[r,n]=_Vr(e,t,"]");return[{type:"optional_block",items:r},n]},Lvt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(Lvt).reduce(CLc,[""]);if(e.type==="mandatory_block")return e.items.flatMap(Lvt);if(e.type==="optional_block")return["",...e.items.flatMap(Lvt)];throw new Error(`Unknown node type: ${e}`)},CLc=(e,t)=>{let r=[];for(let n of e)for(let a of t)r.push(n+a);return r},QUi=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(QUi||{}),XUi=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),JDe=XUi(1/0),QDe=e=>t=>t.type===e.type&&t.text===e.text,zCe={ARRAY:QDe({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:QDe({text:"BY",type:"RESERVED_KEYWORD"}),SET:QDe({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:QDe({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:QDe({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:QDe({text:"VALUES",type:"RESERVED_CLAUSE"})},JUi=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",_Lc=e=>e==="AND"||e==="OR"||e==="XOR",yLc=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],bLc=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],ELc=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],SLc=oc(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),vLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),AUi=oc(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),z9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),BLc=oc(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),wLc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),TLc=oc(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),RLc={name:"bigquery",tokenizerOptions:{reservedSelect:SLc,reservedClauses:[...vLc,...z9r,...AUi],reservedSetOperations:BLc,reservedJoins:wLc,reservedPhrases:TLc,reservedKeywords:bLc,reservedDataTypes:ELc,reservedFunctionNames:yLc,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:NLc},formatOptions:{onelineClauses:[...AUi,...z9r],tabularOnelineClauses:z9r}};function NLc(e){return DLc(kLc(e))}function DLc(e){let t=JDe;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,tL(qk({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function kLc(e){var t;let r=[];for(let n=0;nt=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function xLc(e,t){let r=0;for(let n=t;n"?r--:a.text===">>"&&(r-=2),r===0)return n}return e.length-1}var GLc=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],FLc=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],ZLc=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],LLc=oc(["SELECT [ALL | DISTINCT]"]),VLc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),pUi=oc(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),q9r=oc(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),PLc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),WLc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),OLc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),MLc={name:"db2",tokenizerOptions:{reservedSelect:LLc,reservedClauses:[...VLc,...pUi,...q9r],reservedSetOperations:PLc,reservedJoins:WLc,reservedPhrases:OLc,reservedKeywords:FLc,reservedDataTypes:ZLc,reservedFunctionNames:GLc,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...pUi,...q9r],tabularOnelineClauses:q9r}},HLc=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],YLc=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],QLc=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],XLc=oc(["SELECT [ALL | DISTINCT]"]),JLc=oc(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),fUi=oc(["CREATE [OR REPLACE] TABLE"]),$9r=oc(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),ULc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),KLc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),jLc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),zLc={name:"db2i",tokenizerOptions:{reservedSelect:XLc,reservedClauses:[...JLc,...fUi,...$9r],reservedSetOperations:ULc,reservedJoins:KLc,reservedPhrases:jLc,reservedKeywords:YLc,reservedDataTypes:QLc,reservedFunctionNames:HLc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...fUi,...$9r],tabularOnelineClauses:$9r}},qLc=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],$Lc=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],e9c=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],t9c=oc(["SELECT [ALL | DISTINCT]"]),r9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),IUi=oc(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),eVr=oc(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),n9c=oc(["UNION [ALL | DISTINCT]"]),i9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),s9c=oc(["{ROWS | RANGE} BETWEEN"]),o9c={name:"hive",tokenizerOptions:{reservedSelect:t9c,reservedClauses:[...r9c,...IUi,...eVr],reservedSetOperations:n9c,reservedJoins:i9c,reservedPhrases:s9c,reservedKeywords:$Lc,reservedDataTypes:e9c,reservedFunctionNames:qLc,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...IUi,...eVr],tabularOnelineClauses:eVr}};function Ovt(e){return e.map((t,r)=>{let n=e[r+1]||JDe;if(zCe.SET(t)&&n.text==="(")return tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||JDe;return zCe.VALUES(t)&&a.text==="="?tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var a9c=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],c9c=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],l9c=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],u9c=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),g9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),hUi=oc(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),tVr=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),A9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),d9c=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),p9c=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),f9c={name:"mariadb",tokenizerOptions:{reservedSelect:u9c,reservedClauses:[...g9c,...hUi,...tVr],reservedSetOperations:A9c,reservedJoins:d9c,reservedPhrases:p9c,supportsXor:!0,reservedKeywords:a9c,reservedDataTypes:c9c,reservedFunctionNames:l9c,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:Ovt},formatOptions:{onelineClauses:[...hUi,...tVr],tabularOnelineClauses:tVr}},I9c=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],h9c=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],m9c=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],C9c=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),_9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),mUi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),rVr=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),y9c=oc(["UNION [ALL | DISTINCT]"]),b9c=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),E9c=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),S9c={name:"mysql",tokenizerOptions:{reservedSelect:C9c,reservedClauses:[..._9c,...mUi,...rVr],reservedSetOperations:y9c,reservedJoins:b9c,reservedPhrases:E9c,supportsXor:!0,reservedKeywords:I9c,reservedDataTypes:h9c,reservedFunctionNames:m9c,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Ovt},formatOptions:{onelineClauses:[...mUi,...rVr],tabularOnelineClauses:rVr}},v9c=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],B9c=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],w9c=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],T9c=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),R9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),CUi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),nVr=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),N9c=oc(["UNION [ALL | DISTINCT]"]),D9c=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),k9c=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),x9c={name:"tidb",tokenizerOptions:{reservedSelect:T9c,reservedClauses:[...R9c,...CUi,...nVr],reservedSetOperations:N9c,reservedJoins:D9c,reservedPhrases:k9c,supportsXor:!0,reservedKeywords:v9c,reservedDataTypes:B9c,reservedFunctionNames:w9c,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Ovt},formatOptions:{onelineClauses:[...CUi,...nVr],tabularOnelineClauses:nVr}},G9c=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],F9c=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],Z9c=[],L9c=oc(["SELECT [ALL | DISTINCT]"]),V9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),_Ui=oc(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),P9c=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),W9c=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),O9c=oc(["{ROWS | RANGE | GROUPS} BETWEEN"]),M9c={name:"n1ql",tokenizerOptions:{reservedSelect:L9c,reservedClauses:[...V9c,..._Ui],reservedSetOperations:P9c,reservedJoins:W9c,reservedPhrases:O9c,supportsXor:!0,reservedKeywords:F9c,reservedDataTypes:Z9c,reservedFunctionNames:G9c,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:_Ui}},H9c=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],Y9c=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],Q9c=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],X9c=oc(["SELECT [ALL | DISTINCT | UNIQUE]"]),J9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),yUi=oc(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),iVr=oc(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),U9c=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),K9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),j9c=oc(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),z9c={name:"plsql",tokenizerOptions:{reservedSelect:X9c,reservedClauses:[...J9c,...yUi,...iVr],reservedSetOperations:U9c,reservedJoins:K9c,reservedPhrases:j9c,supportsXor:!0,reservedKeywords:H9c,reservedDataTypes:Y9c,reservedFunctionNames:Q9c,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:q9c},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...yUi,...iVr],tabularOnelineClauses:iVr}};function q9c(e){let t=JDe;return e.map(r=>zCe.SET(r)&&zCe.BY(t)?tL(qk({},r),{type:"RESERVED_KEYWORD"}):(JUi(r.type)&&(t=r),r))}var $9c=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],eVc=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],tVc=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],rVc=oc(["SELECT [ALL | DISTINCT]"]),nVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),bUi=oc(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),sVr=oc(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),iVc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),sVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),oVc=oc(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),aVc={name:"postgresql",tokenizerOptions:{reservedSelect:rVc,reservedClauses:[...nVc,...bUi,...sVr],reservedSetOperations:iVc,reservedJoins:sVc,reservedPhrases:oVc,reservedKeywords:eVc,reservedDataTypes:tVc,reservedFunctionNames:$9c,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...bUi,...sVr],tabularOnelineClauses:sVr}},cVc=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],lVc=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],uVc=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],gVc=oc(["SELECT [ALL | DISTINCT]"]),AVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),EUi=oc(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),oVr=oc(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),dVc=oc(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),pVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),fVc=oc(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),IVc={name:"redshift",tokenizerOptions:{reservedSelect:gVc,reservedClauses:[...AVc,...EUi,...oVr],reservedSetOperations:dVc,reservedJoins:pVc,reservedPhrases:fVc,reservedKeywords:lVc,reservedDataTypes:uVc,reservedFunctionNames:cVc,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...EUi,...oVr],tabularOnelineClauses:oVr}},hVc=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],mVc=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],CVc=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],_Vc=oc(["SELECT [ALL | DISTINCT]"]),yVc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),SUi=oc(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),aVr=oc(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),bVc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),EVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),SVc=oc(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),vVc={name:"spark",tokenizerOptions:{reservedSelect:_Vc,reservedClauses:[...yVc,...SUi,...aVr],reservedSetOperations:bVc,reservedJoins:EVc,reservedPhrases:SVc,supportsXor:!0,reservedKeywords:hVc,reservedDataTypes:mVc,reservedFunctionNames:CVc,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:BVc},formatOptions:{onelineClauses:[...SUi,...aVr],tabularOnelineClauses:aVr}};function BVc(e){return e.map((t,r)=>{let n=e[r-1]||JDe,a=e[r+1]||JDe;return zCe.WINDOW(t)&&a.type==="OPEN_PAREN"?tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(n.text==="COLLECTION"&&a.text==="TERMINATED")?tL(qk({},t),{type:"IDENTIFIER",text:t.raw}):t})}var wVc=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],TVc=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],RVc=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],NVc=oc(["SELECT [ALL | DISTINCT]"]),DVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),vUi=oc(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),cVr=oc(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),kVc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),xVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),GVc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),FVc={name:"sqlite",tokenizerOptions:{reservedSelect:NVc,reservedClauses:[...DVc,...vUi,...cVr],reservedSetOperations:kVc,reservedJoins:xVc,reservedPhrases:GVc,reservedKeywords:TVc,reservedDataTypes:RVc,reservedFunctionNames:wVc,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...vUi,...cVr],tabularOnelineClauses:cVr}},ZVc=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],LVc=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],VVc=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],PVc=oc(["SELECT [ALL | DISTINCT]"]),WVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),BUi=oc(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),lVr=oc(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),OVc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),MVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),HVc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),YVc={name:"sql",tokenizerOptions:{reservedSelect:PVc,reservedClauses:[...WVc,...BUi,...lVr],reservedSetOperations:OVc,reservedJoins:MVc,reservedPhrases:HVc,reservedKeywords:LVc,reservedDataTypes:VVc,reservedFunctionNames:ZVc,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...BUi,...lVr],tabularOnelineClauses:lVr}},QVc=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],XVc=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],JVc=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],UVc=oc(["SELECT [ALL | DISTINCT]"]),KVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),wUi=oc(["CREATE TABLE [IF NOT EXISTS]"]),uVr=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),jVc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),zVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),qVc=oc(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),$Vc={name:"trino",tokenizerOptions:{reservedSelect:UVc,reservedClauses:[...KVc,...wUi,...uVr],reservedSetOperations:jVc,reservedJoins:zVc,reservedPhrases:qVc,reservedKeywords:XVc,reservedDataTypes:JVc,reservedFunctionNames:QVc,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...wUi,...uVr],tabularOnelineClauses:uVr}},ePc=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],tPc=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],rPc=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],nPc=oc(["SELECT [ALL | DISTINCT]"]),iPc=oc(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),TUi=oc(["CREATE TABLE"]),gVr=oc(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),sPc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),oPc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),aPc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),cPc={name:"transactsql",tokenizerOptions:{reservedSelect:nPc,reservedClauses:[...iPc,...TUi,...gVr],reservedSetOperations:sPc,reservedJoins:oPc,reservedPhrases:aPc,reservedKeywords:tPc,reservedDataTypes:rPc,reservedFunctionNames:ePc,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...TUi,...gVr],tabularOnelineClauses:gVr}},lPc=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],uPc=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],gPc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],APc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),dPc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),RUi=oc(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),AVr=oc(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),pPc=oc(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),fPc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),IPc=oc(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),hPc={name:"singlestoredb",tokenizerOptions:{reservedSelect:APc,reservedClauses:[...dPc,...RUi,...AVr],reservedSetOperations:pPc,reservedJoins:fPc,reservedPhrases:IPc,reservedKeywords:lPc,reservedDataTypes:uPc,reservedFunctionNames:gPc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:Ovt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...RUi,...AVr],tabularOnelineClauses:AVr}},mPc=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],CPc=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],_Pc=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],yPc=oc(["SELECT [ALL | DISTINCT]"]),bPc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),NUi=oc(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),dVr=oc(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),EPc=oc(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),SPc=oc(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),vPc=oc(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),BPc={name:"snowflake",tokenizerOptions:{reservedSelect:yPc,reservedClauses:[...bPc,...NUi,...dVr],reservedSetOperations:EPc,reservedJoins:SPc,reservedPhrases:vPc,reservedKeywords:CPc,reservedDataTypes:_Pc,reservedFunctionNames:mPc,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...NUi,...dVr],tabularOnelineClauses:dVr}},HKe=e=>e[e.length-1],UUi=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),Vvt=e=>e.replace(/\s+/gu," "),pVr=e=>/\n/.test(e),b4=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),DUi=/\s+/uy,qCe=e=>new RegExp(`(?:${e})`,"uy"),wPc=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),TPc=e=>e+"(?:-"+e+")*",RPc=({prefixes:e,requirePrefix:t})=>`(?:${e.map(wPc).join("|")}${t?"":"|"})`,NPc=e=>new RegExp(`(?:${e.map(b4).join("|")}).*?(?=\r |\r| -|$)`,"uy"),IUi=(e,t=[])=>{let r=e==="open"?0:1,n=["()",...t].map(a=>a[r]);return zCe(n.map(b4).join("|"))},hUi=e=>zCe(`${kUi(e).map(b4).join("|")}`),PVc=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",$ce=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=PVc(t),n=kUi(e).map(b4).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},cVr=(e,t)=>{if(!e.length)return;let r=e.map(b4).join("|");return zCe(`(?:${r})(?:${t})`)},WVc=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([l,A])=>t.replace(/{left}/g,b4(l)).replace(/{right}/g,b4(A))),n=b4(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${n}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},mUi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":WVc()},xUi=e=>typeof e=="string"?mUi[e]:"regex"in e?e.regex:LVc(e)+mUi[e.quote],OVc=e=>zCe(e.map(t=>"regex"in t?t.regex:xUi(t)).join("|")),GUi=e=>e.map(xUi).join("|"),CUi=e=>zCe(GUi(e)),MVc=(e={})=>zCe(FUi(e)),FUi=({first:e,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",l=b4(e??""),A=b4(t??""),f=n?`[${a}${o}${l}][${a}${o}${A}]*`:`[${a}${l}][${a}${o}${A}]*`;return r?ZVc(f):f};function ZUi(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var HVc=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index{let r=e==="open"?0:1,n=["()",...t].map(a=>a[r]);return qCe(n.map(b4).join("|"))},xUi=e=>qCe(`${UUi(e).map(b4).join("|")}`),DPc=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",ele=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=DPc(t),n=UUi(e).map(b4).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},fVr=(e,t)=>{if(!e.length)return;let r=e.map(b4).join("|");return qCe(`(?:${r})(?:${t})`)},kPc=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([l,A])=>t.replace(/{left}/g,b4(l)).replace(/{right}/g,b4(A))),n=b4(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${n}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},GUi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":kPc()},KUi=e=>typeof e=="string"?GUi[e]:"regex"in e?e.regex:RPc(e)+GUi[e.quote],xPc=e=>qCe(e.map(t=>"regex"in t?t.regex:KUi(t)).join("|")),jUi=e=>e.map(KUi).join("|"),FUi=e=>qCe(jUi(e)),GPc=(e={})=>qCe(zUi(e)),zUi=({first:e,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",l=b4(e??""),A=b4(t??""),f=n?`[${a}${o}${l}][${a}${o}${A}]*`:`[${a}${l}][${a}${o}${A}]*`;return r?TPc(f):f};function qUi(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var FPc=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index0;)if(r=this.matchSection(_Ui,e))t+=r,n++;else if(r=this.matchSection(QVc,e))t+=r,n--;else if(r=this.matchSection(YVc,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},JVc=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],n=new HVc(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(n):n}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new XVc:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:VVc((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:CUi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:$ce((r=e.reservedPhrases)!=null?r:[],e.identChars),text:dD},{type:"CASE",regex:/CASE\b/iuy,text:dD},{type:"END",regex:/END\b/iuy,text:dD},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:dD},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:dD},{type:"RESERVED_CLAUSE",regex:$ce(e.reservedClauses,e.identChars),text:dD},{type:"RESERVED_SELECT",regex:$ce(e.reservedSelect,e.identChars),text:dD},{type:"RESERVED_SET_OPERATION",regex:$ce(e.reservedSetOperations,e.identChars),text:dD},{type:"WHEN",regex:/WHEN\b/iuy,text:dD},{type:"ELSE",regex:/ELSE\b/iuy,text:dD},{type:"THEN",regex:/THEN\b/iuy,text:dD},{type:"RESERVED_JOIN",regex:$ce(e.reservedJoins,e.identChars),text:dD},{type:"AND",regex:/AND\b/iuy,text:dD},{type:"OR",regex:/OR\b/iuy,text:dD},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:dD},{type:"RESERVED_FUNCTION_NAME",regex:$ce(e.reservedFunctionNames,e.identChars),text:dD},{type:"RESERVED_DATA_TYPE",regex:$ce(e.reservedDataTypes,e.identChars),text:dD},{type:"RESERVED_KEYWORD",regex:$ce(e.reservedKeywords,e.identChars),text:dD}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?OVc(e.variableTypes):void 0},{type:"STRING",regex:CUi(e.stringTypes)},{type:"IDENTIFIER",regex:MVc(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:IUi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:IUi("close",e.extraParens)},{type:"OPERATOR",regex:hUi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:hUi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,n,a,o,l;let A={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((n=e.paramTypes)==null?void 0:n.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((l=e.paramTypes)==null?void 0:l.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:cVr(A.named,FUi(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:cVr(A.quoted,GUi(e.identTypes)),key:f=>(({tokenKey:I,quoteChar:C})=>I.replace(new RegExp(b4("\\"+C),"gu"),C))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:cVr(A.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:A.positional?/[?]/y:void 0},...A.custom.map(f=>{var I;return{type:"CUSTOM_PARAMETER",regex:zCe(f.regex),key:(I=f.key)!=null?I:C=>C}})])}validRules(e){return e.filter(t=>!!t.regex)}},dD=e=>Gvt(e.toUpperCase()),yUi=new Map,UVc=e=>{let t=yUi.get(e);return t||(t=KVc(e),yUi.set(e,t)),t},KVc=e=>({tokenizer:new JVc(e.tokenizerOptions,e.name),formatOptions:jVc(e.formatOptions)}),jVc=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function zVc(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function YDe(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var qVc=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function $Vc(e){return e.map(ePc).map(tPc).map(rPc).map(nPc).map(iPc)}var ePc=(e,t,r)=>{if(DUi(e.type)){let n=sPc(r,t);if(n&&n.type==="PROPERTY_ACCESS_OPERATOR")return tL(qk({},e),{type:"IDENTIFIER",text:e.raw})}return e},tPc=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let n=MKe(r,t);if(!n||!VUi(n))return tL(qk({},e),{type:"RESERVED_KEYWORD"})}return e},rPc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=MKe(r,t);if(n&&VUi(n))return tL(qk({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},nPc=(e,t,r)=>{if(e.type==="IDENTIFIER"){let n=MKe(r,t);if(n&&PUi(n))return tL(qk({},e),{type:"ARRAY_IDENTIFIER"})}return e},iPc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=MKe(r,t);if(n&&PUi(n))return tL(qk({},e),{type:"ARRAY_KEYWORD"})}return e},sPc=(e,t)=>MKe(e,t,-1),MKe=(e,t,r=1)=>{let n=1;for(;e[t+n*r]&&oPc(e[t+n*r]);)n++;return e[t+n*r]},VUi=e=>e.type==="OPEN_PAREN"&&e.text==="(",PUi=e=>e.type==="OPEN_PAREN"&&e.text==="[",oPc=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",WUi=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=ZUi(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in RUi}};function lVr(e){return e[0]}var wf=new WUi(e=>[]),KCe=([[e]])=>e,pD=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),bUi=e=>({type:"data_type",text:e.text,raw:e.raw}),fD=(e,{leading:t,trailing:r})=>(t?.length&&(e=tL(qk({},e),{leadingComments:t})),r?.length&&(e=tL(qk({},e),{trailingComments:r})),e),aPc=(e,{leading:t,trailing:r})=>{if(t?.length){let[n,...a]=e;e=[fD(n,{leading:t}),...a]}if(r?.length){let n=e.slice(0,-1),a=e[e.length-1];e=[...n,fD(a,{trailing:r})]}return e},cPc={Lexer:wf,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[wf.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[wf.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:KCe},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[wf.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:lVr},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[wf.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,n])=>{if(n){let[a,o]=n;return{type:"limit_clause",limitKw:fD(pD(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:fD(pD(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[wf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:pD(e),children:[t,...r]})},{name:"select_clause",symbols:[wf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:pD(e),children:[]})},{name:"all_columns_asterisk",symbols:[wf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[wf.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:pD(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[wf.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:pD(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:lVr},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>fD(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>fD(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>fD(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:KCe},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:KCe},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:KCe},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:KCe},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:KCe},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:KCe},{name:"array_subscript",symbols:[wf.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:fD({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[wf.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:fD(pD(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[wf.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:fD(pD(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",wf.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,n,[a]])=>({type:"property_access",object:fD(e,{trailing:t}),operator:r.text,property:fD(a,{leading:n})})},{name:"between_predicate",symbols:[wf.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",wf.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,n,a,o,l])=>({type:"between_predicate",betweenKw:pD(e),expr1:aPc(r,{leading:t,trailing:n}),andKw:pD(a),expr2:[fD(l,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:lVr},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[wf.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",wf.has("END")?{type:"END"}:END],postprocess:([e,t,r,n,a])=>({type:"case_expression",caseKw:fD(pD(e),{trailing:t}),endKw:pD(a),expr:r||[],clauses:n})},{name:"case_clause",symbols:[wf.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",wf.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,n,a,o])=>({type:"case_when",whenKw:fD(pD(e),{trailing:t}),thenKw:fD(pD(n),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[wf.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:fD(pD(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[wf.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[wf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[wf.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[wf.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[wf.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[wf.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[wf.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[wf.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[wf.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"data_type$subexpression$1",symbols:[wf.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>bUi(e)},{name:"data_type",symbols:[wf.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:fD(bUi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[wf.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[wf.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[wf.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"other_keyword$subexpression$1",symbols:[wf.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[wf.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[wf.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[wf.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[wf.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[wf.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[wf.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},lPc=cPc,{Parser:uPc,Grammar:gPc}=LUi.default;function APc(e){let t={},r=new WUi(a=>[...$Vc(e.tokenize(a,t)),NUi(a.length)]),n=new uPc(gPc.fromCompiled(lPc),{lexer:r});return{parse:(a,o)=>{t=o;let{results:l}=n.feed(a);if(l.length===1)return l[0];throw l.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar -${JSON.stringify(l,void 0,2)}`)}}}var OUi=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;dPc(OKe(this.items));)this.items.pop()}trimWhitespace(){for(;pPc(OKe(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(OKe(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` -`;case 6:return this.indentation.getSingleIndent();default:return e}}},dPc=e=>e===0||e===6,pPc=e=>e===0||e===6||e===3;function EUi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function SUi(e){return TZc(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var uVr="top-level",fPc="block-level",MUi=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(uVr)}increaseBlockLevel(){this.indentTypes.push(fPc)}decreaseTopLevel(){this.indentTypes.length>0&&OKe(this.indentTypes)===uVr&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===uVr;);}},IPc=class extends OUi{constructor(e){super(new MUi("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new gVr;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new gVr;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},gVr=class extends Error{},hPc=class AVr{constructor({cfg:t,dialectCfg:r,params:n,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=n,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),YDe(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):YDe(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return YDe(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),YDe(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){aVr(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return aVr(t.text)||aVr(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(OKe(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new AVr({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new AVr({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new IPc(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof gVr){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){YDe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?YDe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return SUi(t.tokenType)?EUi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return Gvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return SUi(t.tokenType)?EUi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return Gvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return Gvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},mPc=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new qVc(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return APc(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` -`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new hPc({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new OUi(new MUi(zVc(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},Fvt=class extends Error{};function CPc(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new Fvt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new Fvt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!_Pc(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!yPc(e.paramTypes))throw new Fvt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function _Pc(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function yPc(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var HUi={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},bPc=Object.keys(HUi),EPc={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},YUi=(e,t={})=>{if(typeof t.language=="string"&&!bPc.includes(t.language))throw new Fvt(`Unsupported SQL dialect: ${t.language}`);let r=HUi[t.language||"sql"];return SPc(e,tL(qk({},t),{dialect:TUi[r]}))},SPc=(e,t)=>{var r=t,{dialect:n}=r,a=mZc(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=CPc(qk(qk({},EPc),a));return new mPc(UVc(n),o).format(e)};var YG=Nt(Pc(),1),vPc=({children:e})=>e?(0,YG.jsxs)(Vvt.Box,{paddingLeft:4,children:[(0,YG.jsx)(Zj.Text,{children:"SQL:"}),(0,YG.jsx)(Zj.Text,{children:" "}),(0,YG.jsx)(Zj.Text,{children:new QUi.SqlHighlighter().highlight(YUi(e,{language:"postgresql"}))})]}):null,BPc=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,n,a)=>(r.push((0,YG.jsx)(Zj.Text,{color:"yellow",children:n},OW())),ae?(0,YG.jsxs)(Vvt.Box,{marginTop:1,flexDirection:"column",children:[(0,YG.jsx)(vPc,{children:e[M9r]}),(0,YG.jsx)(BPc,{children:e[H9r]})]}):null;var JUi=Nt(Al(),1);var pVr=Nt(Pc(),1),UUi=({children:e})=>e?(0,pVr.jsx)(JUi.Box,{paddingBottom:1,marginTop:1,children:(0,pVr.jsx)(kyt,{children:e})}):null;var E4=Nt(Pc(),1),Pvt=({namespace:e,body:t,stack:r,attributes:n={}})=>(0,E4.jsxs)(XDe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:[(0,E4.jsx)(XDe.Box,{flexDirection:"row",children:(0,E4.jsxs)(XDe.Box,{flexGrow:1,children:[(0,E4.jsx)(XDe.Box,{paddingRight:1,children:(0,E4.jsx)(VJi,{children:e||n[VLr]})}),(0,E4.jsx)(XDe.Box,{children:(0,E4.jsx)(GJi,{children:t})})]})}),(0,E4.jsx)(UUi,{children:r||n["@stack"]}),(0,E4.jsx)(XUi,{children:n})]});var Wvt=Nt(Pc(),1),qCe=class extends KUi.BaseCommand{showWarnings=Su.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?xE((0,Wvt.jsx)(Fk,{error:t})).split(` -`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?xE((0,Wvt.jsx)(Fk,{error:t.record})).split(` -`).forEach(r=>{t.severityNumber===y4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?xE((0,Wvt.jsx)(Pvt,{...t})).split(` -`).forEach(r=>{t.severityNumber<=y4.SeverityNumber.INFO?console.log(r):t.severityNumber<=y4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var IVr=Nt(Pc(),1),HKe=class extends qCe{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(fVr.Filename.pnpCjs)&&t.includes(fVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await jUi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await zUi.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await $Ui.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await qUi.execUtils.pipevp(o,["service","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await ODe.initialize(this.context.cwd),{clear:r}=(0,eKi.render)((0,IVr.jsx)(r2t,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(n){return n instanceof Error?xE((0,IVr.jsx)(Fk,{error:n})).split(` -`).forEach(a=>{console.error(a)}):console.error(n),1}finally{r()}}};var tKi=Nt(Sn(),1),rKi=Nt(Sn(),1),hVr=Nt(ro(),1),nKi=Nt(Sn(),1),iKi=Nt(ro(),1),sKi=Nt(Al(),1);var oKi=Nt(Pc(),1),YKe=class extends qCe{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(hVr.Filename.pnpCjs)&&t.includes(hVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await tKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await rKi.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await iKi.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await nKi.execUtils.pipevp(o,["service","dev",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await ODe.initialize(this.context.cwd),{clear:r}=(0,sKi.render)((0,oKi.jsx)(r2t,{service:t}));try{return await t.watch(n=>{this.renderLogRecord(n)}),0}catch(n){return console.error(n),1}finally{r()}}};var aKi={commands:[HKe,YKe]};var BVr={};sI(BVr,{AbstractTestCommand:()=>zee,TestIntegrationCommand:()=>JKe,TestUnitCommand:()=>UKe,default:()=>TKi});var EVr=Nt(ro(),1);var bKi=Nt(el(),1),yVr=Nt(Sn(),1),bVr=Nt(Sn(),1),EKi=Nt(Sn(),1),SKi=Nt(ro(),1);$c();$c();var vKi=Nt(Al(),1);CZ();import{readFileSync as TPc}from"node:fs";import{relative as yKi}from"node:path";var cKi=Nt(Al(),1),QKe=Nt(Al(),1);var lKi=Nt(Ec(),1);var pH=Nt(Pc(),1),uKi=({file:e,messages:t=[]})=>{let r=(0,lKi.useMemo)(()=>t.map(n=>n.endsWith(` -`)?n.replace(/\n$/,""):n).filter(Boolean),[t]);return(0,pH.jsxs)(QKe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",children:[!!e&&(0,pH.jsx)(QKe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,pH.jsx)(A8,{children:e})}),r.length>0&&(0,pH.jsxs)(pH.Fragment,{children:[(0,pH.jsx)(J9,{offset:2}),(0,pH.jsx)(QKe.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2,children:r.map(n=>(0,pH.jsx)(QKe.Box,{children:(0,pH.jsx)(cKi.Text,{children:n})},OW()))})]})]})};var CVr=Nt(Al(),1),JDe=Nt(Al(),1);var BO=Nt(Pc(),1),gKi=({details:e,source:t,file:r,line:n,column:a})=>r&&t?(0,BO.jsxs)(JDe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,BO.jsx)(JDe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,BO.jsx)(A8,{line:n,column:a,children:r})}),(0,BO.jsx)(J9,{offset:2}),(0,BO.jsx)(JDe.Box,{marginBottom:1,children:(0,BO.jsx)(d8,{line:n??1,column:a??1,children:t})}),(0,BO.jsx)(J9,{offset:2}),(0,BO.jsx)(JDe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,BO.jsx)(CVr.Text,{color:"white",children:e.error.message})})]}):(0,BO.jsx)(JDe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:(0,BO.jsx)(CVr.Text,{children:e.error.message})});var XKe=Nt(Al(),1),mKi=Nt(Ec(),1),CKi=Nt(Ec(),1);var AKi=Nt(Ec(),1),_Vr=Nt(Ec(),1),pKi=Nt(Pc(),1),dKi=({tester:e})=>{let[t,r]=(0,_Vr.useState)(0),[n,a]=(0,_Vr.useState)(0);return(0,AKi.useEffect)(()=>{let o=f=>{r(f.tests.reduce((I,C)=>I+C.tests+1,0))},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("test:pass",l),e.on("test:fail",l),e.on("end",A),()=>{e.off("start",o),e.off("test:pass",l),e.off("test:fail",l),e.off("end",A)}},[e,t,r,a]),(0,pKi.jsx)(JM,{value:t>0&&n>0?n/t*100:0})};import{relative as fKi}from"node:path";var UDe=Nt(Al(),1),$k=Nt(Al(),1),IKi=Nt(Ec(),1),KDe=Nt(Ec(),1);var ME=Nt(Pc(),1),wPc=({state:e})=>e==="fail"?(0,ME.jsx)($k.Text,{color:"red",children:kI.cross}):e==="pass"?(0,ME.jsx)($k.Text,{color:"green",children:kI.tick}):(0,ME.jsx)($k.Text,{color:"white",children:kI.circleDotted}),hKi=({cwd:e,tester:t})=>{let[r,n]=(0,KDe.useState)(void 0),[a,o]=(0,KDe.useState)(void 0),[l,A]=(0,KDe.useState)(0),[f,I]=(0,KDe.useState)(0),[C,b]=(0,KDe.useState)(0);return(0,IKi.useEffect)(()=>{let E=F=>{A(F.tests.reduce((Q,X)=>Q+X.tests,0)),n(F.tests)},N=F=>{I(Q=>Q+1),F.file&&o({file:fKi(e,F.file),state:"pass"})},B=F=>{b(Q=>Q+1),F.file&&o({file:fKi(e,F.file),state:"fail"})};return t.on("start",E),t.on("test:pass",N),t.on("test:fail",B),()=>{t.off("start",E),t.off("test:pass",N),t.off("test:fail",B)}},[t,A,I,b,o]),r?(0,ME.jsxs)(UDe.Box,{flexDirection:"row",width:"100%",children:[(0,ME.jsxs)(UDe.Box,{flexGrow:1,children:[(0,ME.jsx)(RG,{color:"cyan",children:"Test:"}),(0,ME.jsx)($k.Text,{children:" "}),!!a&&(0,ME.jsx)($k.Text,{color:"white",children:a.file})]}),(0,ME.jsx)(UDe.Box,{flexDirection:"row",children:(0,ME.jsxs)(UDe.Box,{children:[(0,ME.jsx)(wPc,{state:a?.state}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"green",children:[f," Pass"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"red",children:[C," Fail"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"white",children:[l," Total"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"gray",children:[r.length||0," Files"]}),(0,ME.jsx)($k.Text,{children:" "})]})})]}):(0,ME.jsxs)(UDe.Box,{flexDirection:"row",children:[(0,ME.jsx)(RG,{color:"cyan",children:"Test:"}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsx)($k.Text,{color:"white",children:"Loading..."})]})};var ele=Nt(Pc(),1),_Ki=({cwd:e,tester:t})=>{let[r,n]=(0,mKi.useState)(!1);return(0,CKi.useEffect)(()=>{let a,o=()=>{a=setTimeout(()=>{n(!0)},1e3)};return t.on("end",o),()=>{a&&clearTimeout(a),t.off("end",o)}},[n]),r?null:(0,ele.jsx)(XKe.Box,{position:"relative",height:7,children:(0,ele.jsxs)(XKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,ele.jsx)(XKe.Box,{children:(0,ele.jsx)(hKi,{cwd:e,tester:t})}),(0,ele.jsx)(XKe.Box,{marginTop:1,marginBottom:1,children:(0,ele.jsx)(dKi,{tester:t})})]})})};var jDe=Nt(Pc(),1),zee=class extends bKi.BaseCommand{static usage=_C.Usage({description:"Run tests",details:` +If possible, please select a more specific dialect (like sqlite, postgresql, etc).`:`SQL dialect used: "${this.dialectName}".`}getWhitespace(){DUi.lastIndex=this.index;let e=DUi.exec(this.input);if(e)return this.index+=e[0].length,e[0]}getNextToken(){for(let e of this.rules){let t=this.match(e);if(t)return t}}match(e){e.regex.lastIndex=this.index;let t=e.regex.exec(this.input);if(t){let r=t[0],n={type:e.type,raw:r,text:e.text?e.text(r):r,start:this.index};return e.key&&(n.key=e.key(r)),this.index+=r.length,n}}},ZUi=/\/\*/uy,ZPc=/[\s\S]/uy,LPc=/\*\//uy,VPc=class{constructor(){this.lastIndex=0}exec(e){let t="",r,n=0;if(r=this.matchSection(ZUi,e))t+=r,n++;else return null;for(;n>0;)if(r=this.matchSection(ZUi,e))t+=r,n++;else if(r=this.matchSection(LPc,e))t+=r,n--;else if(r=this.matchSection(ZPc,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},PPc=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],n=new FPc(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(n):n}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new VPc:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:NPc((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:FUi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:ele((r=e.reservedPhrases)!=null?r:[],e.identChars),text:dD},{type:"CASE",regex:/CASE\b/iuy,text:dD},{type:"END",regex:/END\b/iuy,text:dD},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:dD},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:dD},{type:"RESERVED_CLAUSE",regex:ele(e.reservedClauses,e.identChars),text:dD},{type:"RESERVED_SELECT",regex:ele(e.reservedSelect,e.identChars),text:dD},{type:"RESERVED_SET_OPERATION",regex:ele(e.reservedSetOperations,e.identChars),text:dD},{type:"WHEN",regex:/WHEN\b/iuy,text:dD},{type:"ELSE",regex:/ELSE\b/iuy,text:dD},{type:"THEN",regex:/THEN\b/iuy,text:dD},{type:"RESERVED_JOIN",regex:ele(e.reservedJoins,e.identChars),text:dD},{type:"AND",regex:/AND\b/iuy,text:dD},{type:"OR",regex:/OR\b/iuy,text:dD},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:dD},{type:"RESERVED_FUNCTION_NAME",regex:ele(e.reservedFunctionNames,e.identChars),text:dD},{type:"RESERVED_DATA_TYPE",regex:ele(e.reservedDataTypes,e.identChars),text:dD},{type:"RESERVED_KEYWORD",regex:ele(e.reservedKeywords,e.identChars),text:dD}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?xPc(e.variableTypes):void 0},{type:"STRING",regex:FUi(e.stringTypes)},{type:"IDENTIFIER",regex:GPc(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:kUi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:kUi("close",e.extraParens)},{type:"OPERATOR",regex:xUi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:xUi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,n,a,o,l;let A={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((n=e.paramTypes)==null?void 0:n.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((l=e.paramTypes)==null?void 0:l.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:fVr(A.named,zUi(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:fVr(A.quoted,jUi(e.identTypes)),key:f=>(({tokenKey:I,quoteChar:C})=>I.replace(new RegExp(b4("\\"+C),"gu"),C))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:fVr(A.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:A.positional?/[?]/y:void 0},...A.custom.map(f=>{var I;return{type:"CUSTOM_PARAMETER",regex:qCe(f.regex),key:(I=f.key)!=null?I:C=>C}})])}validRules(e){return e.filter(t=>!!t.regex)}},dD=e=>Vvt(e.toUpperCase()),LUi=new Map,WPc=e=>{let t=LUi.get(e);return t||(t=OPc(e),LUi.set(e,t)),t},OPc=e=>({tokenizer:new PPc(e.tokenizerOptions,e.name),formatOptions:MPc(e.formatOptions)}),MPc=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function HPc(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function XDe(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var YPc=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function QPc(e){return e.map(XPc).map(JPc).map(UPc).map(KPc).map(jPc)}var XPc=(e,t,r)=>{if(JUi(e.type)){let n=zPc(r,t);if(n&&n.type==="PROPERTY_ACCESS_OPERATOR")return tL(qk({},e),{type:"IDENTIFIER",text:e.raw})}return e},JPc=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let n=YKe(r,t);if(!n||!eKi(n))return tL(qk({},e),{type:"RESERVED_KEYWORD"})}return e},UPc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=YKe(r,t);if(n&&eKi(n))return tL(qk({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},KPc=(e,t,r)=>{if(e.type==="IDENTIFIER"){let n=YKe(r,t);if(n&&tKi(n))return tL(qk({},e),{type:"ARRAY_IDENTIFIER"})}return e},jPc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=YKe(r,t);if(n&&tKi(n))return tL(qk({},e),{type:"ARRAY_KEYWORD"})}return e},zPc=(e,t)=>YKe(e,t,-1),YKe=(e,t,r=1)=>{let n=1;for(;e[t+n*r]&&qPc(e[t+n*r]);)n++;return e[t+n*r]},eKi=e=>e.type==="OPEN_PAREN"&&e.text==="(",tKi=e=>e.type==="OPEN_PAREN"&&e.text==="[",qPc=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",rKi=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=qUi(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in QUi}};function IVr(e){return e[0]}var wf=new rKi(e=>[]),jCe=([[e]])=>e,pD=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),VUi=e=>({type:"data_type",text:e.text,raw:e.raw}),fD=(e,{leading:t,trailing:r})=>(t?.length&&(e=tL(qk({},e),{leadingComments:t})),r?.length&&(e=tL(qk({},e),{trailingComments:r})),e),$Pc=(e,{leading:t,trailing:r})=>{if(t?.length){let[n,...a]=e;e=[fD(n,{leading:t}),...a]}if(r?.length){let n=e.slice(0,-1),a=e[e.length-1];e=[...n,fD(a,{trailing:r})]}return e},eWc={Lexer:wf,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[wf.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[wf.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:jCe},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[wf.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:IVr},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[wf.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,n])=>{if(n){let[a,o]=n;return{type:"limit_clause",limitKw:fD(pD(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:fD(pD(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[wf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:pD(e),children:[t,...r]})},{name:"select_clause",symbols:[wf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:pD(e),children:[]})},{name:"all_columns_asterisk",symbols:[wf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[wf.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:pD(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[wf.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:pD(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:IVr},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>fD(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>fD(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>fD(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:jCe},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:jCe},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:jCe},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:jCe},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:jCe},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:jCe},{name:"array_subscript",symbols:[wf.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:fD({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[wf.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:fD(pD(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[wf.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:fD(pD(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",wf.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,n,[a]])=>({type:"property_access",object:fD(e,{trailing:t}),operator:r.text,property:fD(a,{leading:n})})},{name:"between_predicate",symbols:[wf.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",wf.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,n,a,o,l])=>({type:"between_predicate",betweenKw:pD(e),expr1:$Pc(r,{leading:t,trailing:n}),andKw:pD(a),expr2:[fD(l,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:IVr},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[wf.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",wf.has("END")?{type:"END"}:END],postprocess:([e,t,r,n,a])=>({type:"case_expression",caseKw:fD(pD(e),{trailing:t}),endKw:pD(a),expr:r||[],clauses:n})},{name:"case_clause",symbols:[wf.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",wf.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,n,a,o])=>({type:"case_when",whenKw:fD(pD(e),{trailing:t}),thenKw:fD(pD(n),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[wf.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:fD(pD(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[wf.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[wf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[wf.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[wf.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[wf.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[wf.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[wf.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[wf.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[wf.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"data_type$subexpression$1",symbols:[wf.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>VUi(e)},{name:"data_type",symbols:[wf.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:fD(VUi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[wf.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[wf.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[wf.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"other_keyword$subexpression$1",symbols:[wf.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[wf.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[wf.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[wf.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[wf.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[wf.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[wf.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},tWc=eWc,{Parser:rWc,Grammar:nWc}=$Ui.default;function iWc(e){let t={},r=new rKi(a=>[...QPc(e.tokenize(a,t)),XUi(a.length)]),n=new rWc(nWc.fromCompiled(tWc),{lexer:r});return{parse:(a,o)=>{t=o;let{results:l}=n.feed(a);if(l.length===1)return l[0];throw l.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar +${JSON.stringify(l,void 0,2)}`)}}}var nKi=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;sWc(HKe(this.items));)this.items.pop()}trimWhitespace(){for(;oWc(HKe(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(HKe(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` +`;case 6:return this.indentation.getSingleIndent();default:return e}}},sWc=e=>e===0||e===6,oWc=e=>e===0||e===6||e===3;function PUi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function WUi(e){return _Lc(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var hVr="top-level",aWc="block-level",iKi=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(hVr)}increaseBlockLevel(){this.indentTypes.push(aWc)}decreaseTopLevel(){this.indentTypes.length>0&&HKe(this.indentTypes)===hVr&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===hVr;);}},cWc=class extends nKi{constructor(e){super(new iKi("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new mVr;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new mVr;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},mVr=class extends Error{},lWc=class CVr{constructor({cfg:t,dialectCfg:r,params:n,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=n,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),XDe(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):XDe(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return XDe(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),XDe(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){pVr(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return pVr(t.text)||pVr(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(HKe(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new CVr({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new CVr({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new cWc(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof mVr){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){XDe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?XDe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return WUi(t.tokenType)?PUi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return Vvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return WUi(t.tokenType)?PUi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return Vvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return Vvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},uWc=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new YPc(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return iWc(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` +`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new lWc({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new nKi(new iKi(HPc(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},Pvt=class extends Error{};function gWc(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new Pvt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new Pvt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!AWc(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!dWc(e.paramTypes))throw new Pvt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function AWc(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function dWc(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var sKi={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},pWc=Object.keys(sKi),fWc={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},oKi=(e,t={})=>{if(typeof t.language=="string"&&!pWc.includes(t.language))throw new Pvt(`Unsupported SQL dialect: ${t.language}`);let r=sKi[t.language||"sql"];return IWc(e,tL(qk({},t),{dialect:YUi[r]}))},IWc=(e,t)=>{var r=t,{dialect:n}=r,a=uLc(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=gWc(qk(qk({},fWc),a));return new uWc(WPc(n),o).format(e)};var YG=Nt(Pc(),1),hWc=({children:e})=>e?(0,YG.jsxs)(Mvt.Box,{paddingLeft:4,children:[(0,YG.jsx)(Zj.Text,{children:"SQL:"}),(0,YG.jsx)(Zj.Text,{children:" "}),(0,YG.jsx)(Zj.Text,{children:new aKi.SqlHighlighter().highlight(oKi(e,{language:"postgresql"}))})]}):null,mWc=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,n,a)=>(r.push((0,YG.jsx)(Zj.Text,{color:"yellow",children:n},OW())),ae?(0,YG.jsxs)(Mvt.Box,{marginTop:1,flexDirection:"column",children:[(0,YG.jsx)(hWc,{children:e[K9r]}),(0,YG.jsx)(mWc,{children:e[j9r]})]}):null;var lKi=Nt(Al(),1);var yVr=Nt(Pc(),1),uKi=({children:e})=>e?(0,yVr.jsx)(lKi.Box,{paddingBottom:1,marginTop:1,children:(0,yVr.jsx)(Gyt,{children:e})}):null;var E4=Nt(Pc(),1),Hvt=({namespace:e,body:t,stack:r,attributes:n={}})=>(0,E4.jsxs)(UDe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:[(0,E4.jsx)(UDe.Box,{flexDirection:"row",children:(0,E4.jsxs)(UDe.Box,{flexGrow:1,children:[(0,E4.jsx)(UDe.Box,{paddingRight:1,children:(0,E4.jsx)(eUi,{children:e||n[QLr]})}),(0,E4.jsx)(UDe.Box,{children:(0,E4.jsx)(jJi,{children:t})})]})}),(0,E4.jsx)(uKi,{children:r||n["@stack"]}),(0,E4.jsx)(cKi,{children:n})]});var Yvt=Nt(Pc(),1),$Ce=class extends gKi.BaseCommand{showWarnings=Su.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?xE((0,Yvt.jsx)(Fk,{error:t})).split(` +`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?xE((0,Yvt.jsx)(Fk,{error:t.record})).split(` +`).forEach(r=>{t.severityNumber===y4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?xE((0,Yvt.jsx)(Hvt,{...t})).split(` +`).forEach(r=>{t.severityNumber<=y4.SeverityNumber.INFO?console.log(r):t.severityNumber<=y4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var EVr=Nt(Pc(),1),QKe=class extends $Ce{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(bVr.Filename.pnpCjs)&&t.includes(bVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await AKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await dKi.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await fKi.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await pKi.execUtils.pipevp(o,["service","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await HDe.initialize(this.context.cwd),{clear:r}=(0,IKi.render)((0,EVr.jsx)(o2t,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(n){return n instanceof Error?xE((0,EVr.jsx)(Fk,{error:n})).split(` +`).forEach(a=>{console.error(a)}):console.error(n),1}finally{r()}}};var hKi=Nt(yn(),1),mKi=Nt(yn(),1),SVr=Nt(zs(),1),CKi=Nt(yn(),1),_Ki=Nt(zs(),1),yKi=Nt(Al(),1);var bKi=Nt(Pc(),1),XKe=class extends $Ce{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(SVr.Filename.pnpCjs)&&t.includes(SVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await hKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await mKi.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await _Ki.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await CKi.execUtils.pipevp(o,["service","dev",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await HDe.initialize(this.context.cwd),{clear:r}=(0,yKi.render)((0,bKi.jsx)(o2t,{service:t}));try{return await t.watch(n=>{this.renderLogRecord(n)}),0}catch(n){return console.error(n),1}finally{r()}}};var EKi={commands:[QKe,XKe]};var xVr={};sI(xVr,{AbstractTestCommand:()=>qee,TestIntegrationCommand:()=>KKe,TestUnitCommand:()=>jKe,default:()=>YKi});var NVr=Nt(zs(),1);var VKi=Nt(el(),1),TVr=Nt(yn(),1),RVr=Nt(yn(),1),PKi=Nt(yn(),1),WKi=Nt(zs(),1);$c();$c();var OKi=Nt(Al(),1);CZ();import{readFileSync as _Wc}from"node:fs";import{relative as LKi}from"node:path";var SKi=Nt(Al(),1),JKe=Nt(Al(),1);var vKi=Nt(Ec(),1);var pH=Nt(Pc(),1),BKi=({file:e,messages:t=[]})=>{let r=(0,vKi.useMemo)(()=>t.map(n=>n.endsWith(` +`)?n.replace(/\n$/,""):n).filter(Boolean),[t]);return(0,pH.jsxs)(JKe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",children:[!!e&&(0,pH.jsx)(JKe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,pH.jsx)(A8,{children:e})}),r.length>0&&(0,pH.jsxs)(pH.Fragment,{children:[(0,pH.jsx)(J9,{offset:2}),(0,pH.jsx)(JKe.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2,children:r.map(n=>(0,pH.jsx)(JKe.Box,{children:(0,pH.jsx)(SKi.Text,{children:n})},OW()))})]})]})};var BVr=Nt(Al(),1),KDe=Nt(Al(),1);var BO=Nt(Pc(),1),wKi=({details:e,source:t,file:r,line:n,column:a})=>r&&t?(0,BO.jsxs)(KDe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,BO.jsx)(KDe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,BO.jsx)(A8,{line:n,column:a,children:r})}),(0,BO.jsx)(J9,{offset:2}),(0,BO.jsx)(KDe.Box,{marginBottom:1,children:(0,BO.jsx)(d8,{line:n??1,column:a??1,children:t})}),(0,BO.jsx)(J9,{offset:2}),(0,BO.jsx)(KDe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,BO.jsx)(BVr.Text,{color:"white",children:e.error.message})})]}):(0,BO.jsx)(KDe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:(0,BO.jsx)(BVr.Text,{children:e.error.message})});var UKe=Nt(Al(),1),GKi=Nt(Ec(),1),FKi=Nt(Ec(),1);var TKi=Nt(Ec(),1),wVr=Nt(Ec(),1),NKi=Nt(Pc(),1),RKi=({tester:e})=>{let[t,r]=(0,wVr.useState)(0),[n,a]=(0,wVr.useState)(0);return(0,TKi.useEffect)(()=>{let o=f=>{r(f.tests.reduce((I,C)=>I+C.tests+1,0))},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("test:pass",l),e.on("test:fail",l),e.on("end",A),()=>{e.off("start",o),e.off("test:pass",l),e.off("test:fail",l),e.off("end",A)}},[e,t,r,a]),(0,NKi.jsx)(JM,{value:t>0&&n>0?n/t*100:0})};import{relative as DKi}from"node:path";var jDe=Nt(Al(),1),$k=Nt(Al(),1),kKi=Nt(Ec(),1),zDe=Nt(Ec(),1);var ME=Nt(Pc(),1),CWc=({state:e})=>e==="fail"?(0,ME.jsx)($k.Text,{color:"red",children:kI.cross}):e==="pass"?(0,ME.jsx)($k.Text,{color:"green",children:kI.tick}):(0,ME.jsx)($k.Text,{color:"white",children:kI.circleDotted}),xKi=({cwd:e,tester:t})=>{let[r,n]=(0,zDe.useState)(void 0),[a,o]=(0,zDe.useState)(void 0),[l,A]=(0,zDe.useState)(0),[f,I]=(0,zDe.useState)(0),[C,b]=(0,zDe.useState)(0);return(0,kKi.useEffect)(()=>{let E=F=>{A(F.tests.reduce((Q,X)=>Q+X.tests,0)),n(F.tests)},N=F=>{I(Q=>Q+1),F.file&&o({file:DKi(e,F.file),state:"pass"})},B=F=>{b(Q=>Q+1),F.file&&o({file:DKi(e,F.file),state:"fail"})};return t.on("start",E),t.on("test:pass",N),t.on("test:fail",B),()=>{t.off("start",E),t.off("test:pass",N),t.off("test:fail",B)}},[t,A,I,b,o]),r?(0,ME.jsxs)(jDe.Box,{flexDirection:"row",width:"100%",children:[(0,ME.jsxs)(jDe.Box,{flexGrow:1,children:[(0,ME.jsx)(RG,{color:"cyan",children:"Test:"}),(0,ME.jsx)($k.Text,{children:" "}),!!a&&(0,ME.jsx)($k.Text,{color:"white",children:a.file})]}),(0,ME.jsx)(jDe.Box,{flexDirection:"row",children:(0,ME.jsxs)(jDe.Box,{children:[(0,ME.jsx)(CWc,{state:a?.state}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"green",children:[f," Pass"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"red",children:[C," Fail"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"white",children:[l," Total"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"gray",children:[r.length||0," Files"]}),(0,ME.jsx)($k.Text,{children:" "})]})})]}):(0,ME.jsxs)(jDe.Box,{flexDirection:"row",children:[(0,ME.jsx)(RG,{color:"cyan",children:"Test:"}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsx)($k.Text,{color:"white",children:"Loading..."})]})};var tle=Nt(Pc(),1),ZKi=({cwd:e,tester:t})=>{let[r,n]=(0,GKi.useState)(!1);return(0,FKi.useEffect)(()=>{let a,o=()=>{a=setTimeout(()=>{n(!0)},1e3)};return t.on("end",o),()=>{a&&clearTimeout(a),t.off("end",o)}},[n]),r?null:(0,tle.jsx)(UKe.Box,{position:"relative",height:7,children:(0,tle.jsxs)(UKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,tle.jsx)(UKe.Box,{children:(0,tle.jsx)(xKi,{cwd:e,tester:t})}),(0,tle.jsx)(UKe.Box,{marginTop:1,marginBottom:1,children:(0,tle.jsx)(RKi,{tester:t})})]})})};var qDe=Nt(Pc(),1),qee=class extends VKi.BaseCommand{static usage=_C.Usage({description:"Run tests",details:` Run either integration or unit tests with Node.js built-in test runner. Integration tests are defined by placing *.test.[j|t]sx? in 'integration' folder anywhere. Unit tests are all *.test.[j|t]sx? except in 'integration' folder. - `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=Su.String("-t,--target");watch=Su.Boolean("-w,--watch",!1);files=Su.Rest({required:0});testReporter=Su.String("--test-reporter",{validator:ajt(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await yVr.Configuration.find(this.context.cwd,this.context.plugins),{project:n,workspace:a}=await bVr.Project.find(r,this.context.cwd),o=[];this.files.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let l=await SKi.xfs.mktempPromise(),{executable:A,env:f}=await iC({binFolder:l,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}});f.NODE_OPTIONS?.includes("--no-warnings")||(f.NODE_OPTIONS=`${f.NODE_OPTIONS??""} --no-warnings=DeprecationWarning`);let{code:I}=await EKi.execUtils.pipevp(A,["test",t??"",...o],{cwd:n.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:f});return I}async executeRegular(t){let r=await yVr.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await bVr.Project.find(r,this.context.cwd),a=C=>{this.bufferedStd(C,b=>{this.renderStdBuffer(b)})},o=C=>{this.bufferedStd(C,b=>{this.renderStdBuffer(b)})},l=C=>{let b=C.file?TPc(C.file,"utf8"):void 0;xE((0,jDe.jsx)(gKi,{details:C.details,source:b,file:C.file?yKi(n.cwd,C.file):void 0,column:C.column,line:C.line})).split(` -`).forEach(E=>{console.error(E)})},A=await V8.initialize(this.context.cwd);if(this.testReporter==="tap")return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).find(b=>b.type==="test:fail")?1:0;A.on("test:stdout",a),A.on("test:stderr",o),A.on("test:fail",l);let{clear:f,unmount:I}=(0,vKi.render)((0,jDe.jsx)(_Ki,{cwd:n.cwd,tester:A}));try{return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).find(b=>b.type==="test:fail")?1:0}catch(C){return C instanceof Error?xE((0,jDe.jsx)(Fk,{error:C})).split(` + `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=Su.String("-t,--target");watch=Su.Boolean("-w,--watch",!1);files=Su.Rest({required:0});testReporter=Su.String("--test-reporter",{validator:gjt(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await TVr.Configuration.find(this.context.cwd,this.context.plugins),{project:n,workspace:a}=await RVr.Project.find(r,this.context.cwd),o=[];this.files.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let l=await WKi.xfs.mktempPromise(),{executable:A,env:f}=await iC({binFolder:l,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}});f.NODE_OPTIONS?.includes("--no-warnings")||(f.NODE_OPTIONS=`${f.NODE_OPTIONS??""} --no-warnings=DeprecationWarning`);let{code:I}=await PKi.execUtils.pipevp(A,["test",t??"",...o],{cwd:n.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:f});return I}async executeRegular(t){let r=await TVr.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await RVr.Project.find(r,this.context.cwd),a=C=>{this.bufferedStd(C,b=>{this.renderStdBuffer(b)})},o=C=>{this.bufferedStd(C,b=>{this.renderStdBuffer(b)})},l=C=>{let b=C.file?_Wc(C.file,"utf8"):void 0;xE((0,qDe.jsx)(wKi,{details:C.details,source:b,file:C.file?LKi(n.cwd,C.file):void 0,column:C.column,line:C.line})).split(` +`).forEach(E=>{console.error(E)})},A=await V8.initialize(this.context.cwd);if(this.testReporter==="tap")return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).find(b=>b.type==="test:fail")?1:0;A.on("test:stdout",a),A.on("test:stderr",o),A.on("test:fail",l);let{clear:f,unmount:I}=(0,OKi.render)((0,qDe.jsx)(ZKi,{cwd:n.cwd,tester:A}));try{return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).find(b=>b.type==="test:fail")?1:0}catch(C){return C instanceof Error?xE((0,qDe.jsx)(Fk,{error:C})).split(` `).forEach(b=>{console.error(b)}):console.error(C),1}finally{this.flushBufferedStd(),A.off("test:stdout",a),A.off("test:stderr",o),A.off("test:fail",l),I(),f()}}bufferedStd(t,r){if(this.std.keys().next().value)if(this.std.has(t.file))this.std.get(t.file)?.push(t.message),this.bufferedStdTimeout&&clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=setTimeout(()=>{let n=this.std.keys().next().value;r({file:n,messages:this.std.get(n)??[]}),this.std.delete(n)},100);else{let n=this.std.keys().next().value;r({file:n,messages:this.std.get(n)??[]}),this.std.delete(n),this.std.set(t.file,[t.message])}else this.std.set(t.file,[t.message])}renderStdBuffer({file:t,messages:r}){let n=r.map(l=>l.split(` -`).filter(Boolean)).flat(),{logRecords:a,raw:o}=n.reduce((l,A)=>{try{let f=JSON.parse(A);return{...l,logRecords:[...l.logRecords,f]}}catch{return{...l,raw:[...l.raw,A]}}},{logRecords:[],raw:[]});a.forEach(l=>{console.log(xE((0,jDe.jsx)(Pvt,{...l})))}),o.length>0&&console.log(xE((0,jDe.jsx)(uKi,{file:t?yKi(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.bufferedStdTimeout&&(clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=void 0),this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})}),this.std.clear()}};var JKe=class extends zee{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(EVr.Filename.pnpCjs)&&t.includes(EVr.Filename.pnpEsmLoader)?this.executeRegular("integration"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("integration"):this.executeProxy("integration")}};var SVr=Nt(ro(),1);var UKe=class extends zee{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(SVr.Filename.pnpCjs)&&t.includes(SVr.Filename.pnpEsmLoader)?this.executeRegular("unit"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("unit"):this.executeProxy("unit")}};var BKi=Nt(Sn(),1),wKi=Nt(Sn(),1),vVr=Nt(ro(),1);var Ovt=class extends zee{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(vVr.Filename.pnpCjs)&&t.includes(vVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await BKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await wKi.Project.find(t,this.context.cwd),n=await V8.initialize(this.context.cwd);try{return(await n.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.type==="test:fail")?1:0}catch(a){return console.error(a),1}}};var TKi={commands:[JKe,UKe,Ovt]};var FVr={};sI(FVr,{default:()=>UKi});var GKi=Nt(Sn(),1),FKi=Nt(Sn(),1),ZKi=Nt(Sn(),1),TVr=Nt(ro(),1),RVr=Nt(Sn(),1),rle=Nt(UC(),1);var RKi=Nt(el(),1),NKi=Nt(Sn(),1),DKi=Nt(Sn(),1),wVr=Nt(ro(),1),kKi=Nt(Sn(),1),xKi=Nt(ro(),1);$c();var tle=class extends RKi.BaseCommand{static usage=_C.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(wVr.Filename.pnpCjs)&&t.includes(wVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await NKi.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await DKi.Project.find(r,this.context.cwd),a=await xKi.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await kKi.execUtils.pipevp(o,t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){return 0}};var Mvt=class extends tle{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(TVr.Filename.pnpCjs)&&t.includes(TVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await GKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await FKi.Project.find(t,this.context.cwd),n=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await ZKi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let l=RVr.structUtils.parseIdent("typescript"),A=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===l.scope&&f.name===l.name);A||(A=RVr.structUtils.makeDescriptor(l,n.dependencies.typescript)),rle.default.valid(rle.default.coerce(A.range))&&rle.default.valid(rle.default.coerce(n.dependencies.typescript))&&(rle.default.eq(rle.default.coerce(A.range)||"",rle.default.coerce(n.dependencies.typescript)||"")||(A.range=n.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(A.identHash,A),await r.persist()}})})).exitCode()}};var LKi=Nt(Sn(),1),VKi=Nt(Sn(),1),PKi=Nt(Sn(),1),NVr=Nt(ro(),1),KKe=Nt(ro(),1),DVr=Nt(ro(),1),kVr=Nt(oTr(),1);import RPc from"node:assert";var NPc=(e,t,r)=>{let n=e.slice();return t.forEach((a,o)=>{typeof n[o]>"u"?n[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?n[o]=(0,kVr.default)(e[o],a,r):e.includes(a)||n.push(a)}),n},DPc=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,Hvt=class extends tle{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(NVr.Filename.pnpCjs)&&t.includes(NVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await LKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await VKi.Project.find(t,this.context.cwd);return(await PKi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=DVr.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),l=await KKe.xfs.existsPromise(o)?await KKe.xfs.readJsonPromise(o):{compilerOptions:{}};await KKe.xfs.writeFilePromise(DVr.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// -`);let A=(0,kVr.default)(l,{compilerOptions:bj.compilerOptions},{arrayMerge:NPc}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(DPc),I={...A,include:Array.from(new Set(["project.types.d.ts",...A.include,...f]))};try{RPc.deepEqual(l,I)}catch{await KKe.xfs.writeJsonPromise(o,I)}})})).exitCode()}};var kPc=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],Yvt=class extends tle{static paths=[["tools","sync"]];async executeRegular(){for(let t of kPc){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var WKi=Nt(Sn(),1),xVr=Nt(Sn(),1),OKi=Nt(ro(),1);var MKi=async(e,t)=>{let{project:r}=await WKi.Project.find(e,t.cwd),n=await OKi.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r});await xVr.execUtils.pipevp(a,["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:xVr.execUtils.EndStrategy.ErrorCode,env:o})};var YKi=Nt(ro(),1),zDe=Nt(ro(),1),nle=Nt(ro(),1);import{spawnSync as xPc}from"node:child_process";var GVr=e=>`${e} -`,GPc=()=>GVr("yarn commit staged"),HKi=(e,t)=>xPc("git",e,{cwd:t,encoding:"utf-8"}),QKi=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK||HKi(["--version"]).error?.code==="ENOENT")return;let r=zDe.ppath.join(e.cwd,".config/husky"),n=zDe.ppath.join(r,"_");await nle.xfs.existsPromise(n)&&await nle.xfs.removePromise(r),await nle.xfs.existsPromise(r)||await nle.xfs.mkdirPromise(r,{recursive:!0}),await nle.xfs.writeFilePromise(zDe.ppath.join(r,"commit-msg"),GVr("yarn commit message lint"),{mode:493}),await nle.xfs.writeFilePromise(zDe.ppath.join(r,"pre-commit"),GPc(),{mode:493}),await nle.xfs.writeFilePromise(zDe.ppath.join(r,"prepare-commit-msg"),GVr("yarn commit message $@"),{mode:493});let{error:a}=HKi(["config","core.hooksPath",r],YKi.npath.fromPortablePath(e.cwd));if(a)throw a};var XKi=Nt(ro(),1);var JKi=async(e,t,r)=>{Wmt(t);let n=wEr(e);if(!n)return;let a=XKi.npath.fromPortablePath(n);await Promise.all([...t[cQe]?[r("node",process.execPath)]:[],r("run",process.execPath,[a,"run"]),r("yarn",process.execPath,[a]),r("yarnpkg",process.execPath,[a]),r("node-gyp",process.execPath,[a,"run","--top-level","node-gyp"])])};var UKi={hooks:{afterAllInstalled:QKi,afterYarnVersionSet:MKi,setupScriptEnvironment:JKi},commands:[Yvt,Mvt,Hvt]};var WVr={};sI(WVr,{TypeCheckCommand:()=>jKe,default:()=>qKi});var KKi=Nt(el(),1),ZVr=Nt(Sn(),1),LVr=Nt(Sn(),1),VVr=Nt(ro(),1),jKi=Nt(Sn(),1),PVr=Nt(ro(),1),Qvt=Nt(ro(),1);$c();var zKi=Nt(Al(),1);var Xvt=Nt(Pc(),1),jKe=class extends KKi.BaseCommand{static paths=[["typecheck"]];args=Su.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(VVr.Filename.pnpCjs)&&t.includes(VVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await ZVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await LVr.Project.find(t,this.context.cwd),n=await Qvt.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await jKi.execUtils.pipevp(a,["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let t=await ZVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await LVr.Project.find(t,this.context.cwd),n=await jNe.initialize(r.cwd),{clear:a}=(0,zKi.render)((0,Xvt.jsx)(jEt,{typescript:n}));try{let o=await n.check(await this.getIncludes(r));return o.forEach(l=>{xE((0,Xvt.jsx)(KEt,{...l})).split(` -`).forEach(A=>{console.log(A)})}),o.length===0?0:1}catch(o){return xE((0,Xvt.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.error(l)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await Qvt.xfs.existsPromise(PVr.ppath.join(t.cwd,"tsconfig.json"))){let r=await Qvt.xfs.readJsonPromise(PVr.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var qKi={commands:[jKe]};var nPr={};sI(nPr,{UiIconsGenerateCommand:()=>e8e,default:()=>Aji});var cji=Nt(el(),1),$Vr=Nt(Sn(),1),ePr=Nt(Sn(),1),tPr=Nt(ro(),1),lji=Nt(Sn(),1),uji=Nt(ro(),1);$c();import{join as aji}from"node:path";import{relative as iOc}from"node:path";var gji=Nt(Al(),1);var zKe=Nt(Al(),1),o8i=Nt(Ec(),1),a8i=Nt(Ec(),1);var $Ki=Nt(Ec(),1),e8i=Nt(Ec(),1),r8i=Nt(Pc(),1),t8i=({icons:e})=>{let[t,r]=(0,e8i.useState)(0);return(0,$Ki.useEffect)(()=>{let n=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",n),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",n),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),(0,r8i.jsx)(JM,{value:t})};var Jvt=Nt(Al(),1),Uvt=Nt(Al(),1),n8i=Nt(Ec(),1),i8i=Nt(Ec(),1);var qee=Nt(Pc(),1),s8i=({icons:e})=>{let[t,r]=(0,i8i.useState)("Initilization...");return(0,n8i.useEffect)(()=>{let n=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",n),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",n),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),(0,qee.jsxs)(Jvt.Box,{flexDirection:"row",width:"100%",children:[(0,qee.jsxs)(Jvt.Box,{flexGrow:1,children:[(0,qee.jsx)(RG,{color:"cyan",children:"Icons:"}),(0,qee.jsx)(Uvt.Text,{children:" "}),(0,qee.jsx)(Uvt.Text,{color:"white",children:t})]}),(0,qee.jsx)(Jvt.Box,{flexDirection:"row",children:(0,qee.jsx)(Uvt.Text,{color:"green",children:kI.tick})})]})};var ile=Nt(Pc(),1),c8i=({icons:e})=>{let[t,r]=(0,o8i.useState)(!1);return(0,a8i.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",n),()=>{e.off("save:end",n)}},[r]),t?null:(0,ile.jsx)(zKe.Box,{position:"relative",height:7,children:(0,ile.jsxs)(zKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,ile.jsx)(zKe.Box,{children:(0,ile.jsx)(s8i,{icons:e})}),(0,ile.jsx)(zKe.Box,{marginTop:1,marginBottom:1,children:(0,ile.jsx)(t8i,{icons:e})})]})})};import zWc from"node:events";import{access as qWc}from"node:fs/promises";import{mkdtemp as $Wc}from"node:fs/promises";import{readFile as eOc}from"node:fs/promises";import{readdir as tOc}from"node:fs/promises";import{writeFile as iji}from"node:fs/promises";import{mkdir as rOc}from"node:fs/promises";import{tmpdir as nOc}from"node:os";import{join as $ee}from"node:path";import{basename as sji}from"node:path";import{extname as oji}from"node:path";var FPc=/[\p{Lu}]/u,ZPc=/[\p{Ll}]/u,l8i=/^[\p{Lu}](?![\p{Lu}])/gu,A8i=/([\p{Alpha}\p{N}_]|$)/u,OVr=/[_.\- ]+/,LPc=new RegExp("^"+OVr.source),u8i=new RegExp(OVr.source+A8i.source,"gu"),g8i=new RegExp("\\d+"+A8i.source,"gu"),VPc=(e,t,r,n)=>{let a=!1,o=!1,l=!1,A=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&FPc.test(I)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,l=o,o=!0,f++):o&&l&&ZPc.test(I)&&(!A||n)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),l=o,o=!1,a=!0):(a=t(I)===I&&r(I)!==I,l=o,o=r(I)===I&&t(I)!==I)}return e},PPc=(e,t)=>(l8i.lastIndex=0,e.replaceAll(l8i,r=>t(r))),WPc=(e,t)=>(u8i.lastIndex=0,g8i.lastIndex=0,e.replaceAll(g8i,(r,n,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(u8i,(r,n)=>t(n)));function MVr(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),n=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?OVr.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=VPc(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(LPc,""),e=t.preserveConsecutiveUppercase?PPc(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),WPc(e,n))}var nji=Nt(rji(),1);import{writeFile as UWc}from"node:fs/promises";import{mkdtemp as KWc}from"node:fs/promises";import{tmpdir as jWc}from"node:os";import{join as aBt}from"node:path";var cBt=class{constructor(t,r,n){this.loaders=t;this.cwd=r;this.target=n}async build(){let t=new nji.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(aBt(this.cwd,"replacements")),t.entry("template").add(aBt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=aBt(await KWc(aBt(jWc(),"tools-icons-")),"tsconfig.json");await UWc(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...bj.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var lBt=class e extends zWc{constructor(r,n,a,o){super();this.svgr=r;this.webpack=n;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:n,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:l}=await import("@atls/code-runtime/webpack");return new e({transform:n,jsx:a},o,{tsLoader:l},r)}async generate(r={}){await this.save(await this.transform(await this.read($ee(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await $Wc($ee(nOc(),"tools-icons-")),n=this.webpack(await new cBt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{n.run(l=>{l&&o(l),a([])})}),{replacements:(await import($ee(r,"replacements.mjs"))).default,template:(await import($ee(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let n=await tOc(r),a=await Promise.all(n.filter(o=>o.endsWith(".svg")).map(async o=>({source:await eOc($ee(r,o),"utf8"),component:MVr(sji(o,oji(o)),{pascalCase:!0}),name:sji(o,oji(o)),path:$ee(r,o),file:o})));return this.emit("read:end"),a}async transform(r,n){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),l=await Promise.all(r.map(async A=>{let f=await this.svgr.transform(A.source,{...n,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${A.component}Icon`]??{}},{componentName:`${A.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...A,output:f}}));return this.emit("transform:end"),l}async save(r){this.emit("save:start");let n=$ee(this.cwd,"src");try{await qWc(n)}catch{await rOc(n,{recursive:!0})}await Promise.all(r.map(async a=>iji($ee(n,`${a.name}.icon.tsx`),a.output))),await iji($ee(n,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` -`)),this.emit("save:end")}};var rPr=Nt(Pc(),1),e8e=class extends cji.BaseCommand{static paths=[["ui","icons","generate"]];native=Su.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(tPr.Filename.pnpCjs)&&t.includes(tPr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await $Vr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ePr.Project.find(t,this.context.cwd),n=await uji.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await lji.execUtils.pipevp(o,["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await $Vr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ePr.Project.find(t,this.context.cwd),n=await lBt.initialize(this.context.cwd),{clear:a}=(0,gji.render)((0,rPr.jsx)(c8i,{icons:n}));try{await n.generate({native:this.native});let o=(await b$("*.tsx",{cwd:aji(this.context.cwd,"src")})).map(l=>aji(iOc(r.cwd,this.context.cwd),"src",l));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?xE((0,rPr.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var Aji={commands:[e8e]};var IYr={};sI(IYr,{default:()=>Eis});var _is=Nt(el(),1),yis=Nt(Sn(),1),bis=Nt(Sn(),1);$c();var dji=(e,t)=>({stdout:e.context.stdout,configuration:t});var his=Nt(ro(),1),mis=Nt(ro(),1);var gis=Nt(Nxe(),1),Ais=Nt(lis(),1);var uis=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var dis=async(e,t,r)=>{let o=!0,l=new Ais.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});l.reporter.subscribe(A=>{o=!1,uis(A)});try{return await l.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(A){return A instanceof gis.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):A instanceof Error?console.debug(`An error occured: -${A.stack}`):console.debug(`Error: ${A instanceof Error?A.message:A}`),1}};var fYr=Nt(ro(),1);import{mkdir as TAl}from"node:fs/promises";var wAl="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNKc29uT2JqZWN0ID0gaXNKc29uT2JqZWN0OwogICAgZXhwb3J0czIuaXNKc29uQXJyYXkgPSBpc0pzb25BcnJheTsKICAgIGZ1bmN0aW9uIGlzSnNvbk9iamVjdCh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSnNvbkFycmF5KHZhbHVlKSB7CiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0VHlwZXNPZlNjaGVtYSA9IGdldFR5cGVzT2ZTY2hlbWE7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBhbGxUeXBlcyA9IFsic3RyaW5nIiwgImludGVnZXIiLCAibnVtYmVyIiwgIm9iamVjdCIsICJhcnJheSIsICJib29sZWFuIiwgIm51bGwiXTsKICAgIGZ1bmN0aW9uIGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hMikgewogICAgICBpZiAoIXNjaGVtYTIpIHsKICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBuZXcgU2V0KGFsbFR5cGVzKTsKICAgICAgfQogICAgICBsZXQgcG90ZW50aWFsczsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnR5cGUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFtzY2hlbWEyLnR5cGVdKTsKICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIudHlwZSkpIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChzY2hlbWEyLnR5cGUpOwogICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShzY2hlbWEyLmVudW0pKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCB2IG9mIHNjaGVtYTIuZW51bSkgewogICAgICAgICAgc3dpdGNoICh0eXBlb2YgdikgewogICAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICBjYXNlICJib29sZWFuIjoKICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCh0eXBlb2Ygdik7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHsKICAgICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAodiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm51bGwiKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGlmICgoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIubm90KSkgewogICAgICAgIGNvbnN0IG5vdFR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzY2hlbWEyLm5vdCk7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnBvdGVudGlhbHNdLmZpbHRlcigocCkgPT4gIW5vdFR5cGVzLmhhcyhwKSkpOwogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIuYWxsT2YpKSB7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbGxPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChbLi4udHlwZXNdLmZpbHRlcigodCkgPT4gcG90ZW50aWFscy5oYXModCkpKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5vbmVPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5vbmVPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5hbnlPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbnlPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIucHJvcGVydGllcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJvYmplY3QiKTsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zKSB7CiAgICAgICAgcG90ZW50aWFscy5hZGQoImFycmF5Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvdGVudGlhbHM7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3RyYW5zZm9ybXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFkZFVuZGVmaW5lZERlZmF1bHRzID0gYWRkVW5kZWZpbmVkRGVmYXVsdHM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciB1dGlsaXR5XzEgPSByZXF1aXJlX3V0aWxpdHkoKTsKICAgIGZ1bmN0aW9uIGFkZFVuZGVmaW5lZERlZmF1bHRzKHZhbHVlLCBfcG9pbnRlciwgc2NoZW1hMikgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIiB8fCBzY2hlbWEyID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgdmFsdWUgPz89IHNjaGVtYTIuZGVmYXVsdDsKICAgICAgY29uc3QgdHlwZXMgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHNjaGVtYTIpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTI7CiAgICAgIGlmICh0eXBlcy5zaXplID09PSAxKSB7CiAgICAgICAgdHlwZTIgPSBBcnJheS5mcm9tKHR5cGVzKVswXTsKICAgICAgfSBlbHNlIGlmICh0eXBlcy5zaXplID09PSAyICYmIHR5cGVzLmhhcygiYXJyYXkiKSAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYTIucHJvcGVydGllcyAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAib2JqZWN0IjsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUyID0gImFycmF5IjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlID09IHZvaWQgMCA/IFtdIDogdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIucHJvcGVydGllcykpIHsKICAgICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbcHJvcE5hbWUsIHNjaGVtYU9iamVjdF0gb2YgT2JqZWN0LmVudHJpZXMoc2NoZW1hMi5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgaWYgKHByb3BOYW1lID09PSAiJHNjaGVtYSIgfHwgISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoc2NoZW1hT2JqZWN0KSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZhbHVlMiA9IG5ld1ZhbHVlW3Byb3BOYW1lXTsKICAgICAgICAgIGlmICh2YWx1ZTIgPT09IHZvaWQgMCkgewogICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBzY2hlbWFPYmplY3QuZGVmYXVsdDsKICAgICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5U2NoZW1hcyA9IHNjaGVtYU9iamVjdC5vbmVPZiB8fCBzY2hlbWFPYmplY3QuYW55T2Y7CiAgICAgICAgICAgIGNvbnN0IGFsbFByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyh2YWx1ZTIpOwogICAgICAgICAgICBjb25zdCBhZGp1c3RlZFNjaGVtYSA9ICgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShwcm9wZXJ0eVNjaGVtYXMpICYmIHByb3BlcnR5U2NoZW1hcy5maW5kKChzKSA9PiB7CiAgICAgICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHNjaGVtYVR5cGUgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHMpOwogICAgICAgICAgICAgIGlmIChzY2hlbWFUeXBlLnNpemUgPT09IDEgJiYgc2NoZW1hVHlwZS5oYXMoIm9iamVjdCIpICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkocy5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKHMucHJvcGVydGllcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gYWxsUHJvcGVydGllcy5ldmVyeSgoa2V5KSA9PiBwcm9wZXJ0aWVzLmluY2x1ZGVzKGtleSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpZiAoYWRqdXN0ZWRTY2hlbWEgJiYgKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShhZGp1c3RlZFNjaGVtYSkpIHsKICAgICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBhZGRVbmRlZmluZWREZWZhdWx0cyh2YWx1ZTIsIF9wb2ludGVyLCBhZGp1c3RlZFNjaGVtYSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICB9CiAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcG9pbnRlci5qcwp2YXIgcmVxdWlyZV9wb2ludGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWlsZEpzb25Qb2ludGVyID0gYnVpbGRKc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLmpvaW5Kc29uUG9pbnRlciA9IGpvaW5Kc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLnBhcnNlSnNvblBvaW50ZXIgPSBwYXJzZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gYnVpbGRKc29uUG9pbnRlcihmcmFnbWVudHMpIHsKICAgICAgcmV0dXJuICIvIiArIGZyYWdtZW50cy5tYXAoKGYpID0+IHsKICAgICAgICByZXR1cm4gZi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgICB9KS5qb2luKCIvIik7CiAgICB9CiAgICBmdW5jdGlvbiBqb2luSnNvblBvaW50ZXIocm9vdCwgLi4ub3RoZXJzKSB7CiAgICAgIGlmIChyb290ID09ICIvIikgewogICAgICAgIHJldHVybiBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvb3QgKyBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZUpzb25Qb2ludGVyKHBvaW50ZXIpIHsKICAgICAgaWYgKHBvaW50ZXIgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICAgIGlmIChwb2ludGVyLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJSZWxhdGl2ZSBwb2ludGVyOiAiICsgcG9pbnRlcik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvaW50ZXIuc3Vic3RyaW5nKDEpLnNwbGl0KC9cLy8pLm1hcCgoc3RyMikgPT4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+IikpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMKdmFyIHJlcXVpcmVfY29kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuYWRkQ29kZUFyZyA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5uaWwgPSBleHBvcnRzMi5fQ29kZSA9IGV4cG9ydHMyLk5hbWUgPSBleHBvcnRzMi5JREVOVElGSUVSID0gZXhwb3J0czIuX0NvZGVPck5hbWUgPSB2b2lkIDA7CiAgICB2YXIgX0NvZGVPck5hbWUgPSBjbGFzcyB7CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGVPck5hbWUgPSBfQ29kZU9yTmFtZTsKICAgIGV4cG9ydHMyLklERU5USUZJRVIgPSAvXlthLXokX11bYS16JF8wLTldKiQvaTsKICAgIHZhciBOYW1lID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGlmICghZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KHMpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiBuYW1lIG11c3QgYmUgYSB2YWxpZCBpZGVudGlmaWVyIik7CiAgICAgICAgdGhpcy5zdHIgPSBzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB7IFt0aGlzLnN0cl06IDEgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5hbWUgPSBOYW1lOwogICAgdmFyIF9Db2RlID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvZGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuX2l0ZW1zID0gdHlwZW9mIGNvZGUgPT09ICJzdHJpbmciID8gW2NvZGVdIDogY29kZTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdHI7CiAgICAgIH0KICAgICAgZW1wdHlTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDEpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX2l0ZW1zWzBdOwogICAgICAgIHJldHVybiBpdGVtID09PSAiIiB8fCBpdGVtID09PSAnIiInOwogICAgICB9CiAgICAgIGdldCBzdHIoKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLl9zdHIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX3N0ciA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgocywgYykgPT4gYCR7c30ke2N9YCwgIiIpOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX25hbWVzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLl9uYW1lcyA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgobmFtZXMsIGMpID0+IHsKICAgICAgICAgIGlmIChjIGluc3RhbmNlb2YgTmFtZSkKICAgICAgICAgICAgbmFtZXNbYy5zdHJdID0gKG5hbWVzW2Muc3RyXSB8fCAwKSArIDE7CiAgICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgICAgfSwge30pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGUgPSBfQ29kZTsKICAgIGV4cG9ydHMyLm5pbCA9IG5ldyBfQ29kZSgiIik7CiAgICBmdW5jdGlvbiBfKHN0cnMsIC4uLmFyZ3MpIHsKICAgICAgY29uc3QgY29kZSA9IFtzdHJzWzBdXTsKICAgICAgbGV0IGkgPSAwOwogICAgICB3aGlsZSAoaSA8IGFyZ3MubGVuZ3RoKSB7CiAgICAgICAgYWRkQ29kZUFyZyhjb2RlLCBhcmdzW2ldKTsKICAgICAgICBjb2RlLnB1c2goc3Ryc1srK2ldKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IF9Db2RlKGNvZGUpOwogICAgfQogICAgZXhwb3J0czIuXyA9IF87CiAgICB2YXIgcGx1cyA9IG5ldyBfQ29kZSgiKyIpOwogICAgZnVuY3Rpb24gc3RyMihzdHJzLCAuLi5hcmdzKSB7CiAgICAgIGNvbnN0IGV4cHIgPSBbc2FmZVN0cmluZ2lmeShzdHJzWzBdKV07CiAgICAgIGxldCBpID0gMDsKICAgICAgd2hpbGUgKGkgPCBhcmdzLmxlbmd0aCkgewogICAgICAgIGV4cHIucHVzaChwbHVzKTsKICAgICAgICBhZGRDb2RlQXJnKGV4cHIsIGFyZ3NbaV0pOwogICAgICAgIGV4cHIucHVzaChwbHVzLCBzYWZlU3RyaW5naWZ5KHN0cnNbKytpXSkpOwogICAgICB9CiAgICAgIG9wdGltaXplKGV4cHIpOwogICAgICByZXR1cm4gbmV3IF9Db2RlKGV4cHIpOwogICAgfQogICAgZXhwb3J0czIuc3RyID0gc3RyMjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHIyYCR7YzF9JHtjMn1gOwogICAgfQogICAgZXhwb3J0czIuc3RyQ29uY2F0ID0gc3RyQ29uY2F0OwogICAgZnVuY3Rpb24gaW50ZXJwb2xhdGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gIm51bWJlciIgfHwgdHlwZW9mIHggPT0gImJvb2xlYW4iIHx8IHggPT09IG51bGwgPyB4IDogc2FmZVN0cmluZ2lmeShBcnJheS5pc0FycmF5KHgpID8geC5qb2luKCIsIikgOiB4KTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmluZ2lmeSh4KSB7CiAgICAgIHJldHVybiBuZXcgX0NvZGUoc2FmZVN0cmluZ2lmeSh4KSk7CiAgICB9CiAgICBleHBvcnRzMi5zdHJpbmdpZnkgPSBzdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBzYWZlU3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHgpLnJlcGxhY2UoL1x1MjAyOC9nLCAiXFx1MjAyOCIpLnJlcGxhY2UoL1x1MjAyOS9nLCAiXFx1MjAyOSIpOwogICAgfQogICAgZXhwb3J0czIuc2FmZVN0cmluZ2lmeSA9IHNhZmVTdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBnZXRQcm9wZXJ0eShrZXkpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkgPyBuZXcgX0NvZGUoYC4ke2tleX1gKSA6IF9gWyR7a2V5fV1gOwogICAgfQogICAgZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBnZXRQcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIGdldEVzbUV4cG9ydE5hbWUoa2V5KSB7CiAgICAgIGlmICh0eXBlb2Yga2V5ID09ICJzdHJpbmciICYmIGV4cG9ydHMyLklERU5USUZJRVIudGVzdChrZXkpKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfQ29kZShgJHtrZXl9YCk7CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBpbnZhbGlkIGV4cG9ydCBuYW1lOiAke2tleX0sIHVzZSBleHBsaWNpdCAkaWQgbmFtZSBtYXBwaW5nYCk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZ2V0RXNtRXhwb3J0TmFtZTsKICAgIGZ1bmN0aW9uIHJlZ2V4cENvZGUocngpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShyeC50b1N0cmluZygpKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSByZWdleHBDb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL3Njb3BlLmpzCnZhciByZXF1aXJlX3Njb3BlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBWYWx1ZUVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgQ29kZUdlbjogImNvZGUiIGZvciAke25hbWV9IG5vdCBkZWZpbmVkYCk7CiAgICAgICAgdGhpcy52YWx1ZSA9IG5hbWUudmFsdWU7CiAgICAgIH0KICAgIH07CiAgICB2YXIgVXNlZFZhbHVlU3RhdGU7CiAgICAoZnVuY3Rpb24oVXNlZFZhbHVlU3RhdGUyKSB7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIlN0YXJ0ZWQiXSA9IDBdID0gIlN0YXJ0ZWQiOwogICAgICBVc2VkVmFsdWVTdGF0ZTJbVXNlZFZhbHVlU3RhdGUyWyJDb21wbGV0ZWQiXSA9IDFdID0gIkNvbXBsZXRlZCI7CiAgICB9KShVc2VkVmFsdWVTdGF0ZSB8fCAoZXhwb3J0czIuVXNlZFZhbHVlU3RhdGUgPSBVc2VkVmFsdWVTdGF0ZSA9IHt9KSk7CiAgICBleHBvcnRzMi52YXJLaW5kcyA9IHsKICAgICAgY29uc3Q6IG5ldyBjb2RlXzEuTmFtZSgiY29uc3QiKSwKICAgICAgbGV0OiBuZXcgY29kZV8xLk5hbWUoImxldCIpLAogICAgICB2YXI6IG5ldyBjb2RlXzEuTmFtZSgidmFyIikKICAgIH07CiAgICB2YXIgU2NvcGUgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4ZXMsIHBhcmVudCB9ID0ge30pIHsKICAgICAgICB0aGlzLl9uYW1lcyA9IHt9OwogICAgICAgIHRoaXMuX3ByZWZpeGVzID0gcHJlZml4ZXM7CiAgICAgICAgdGhpcy5fcGFyZW50ID0gcGFyZW50OwogICAgICB9CiAgICAgIHRvTmFtZShuYW1lT3JQcmVmaXgpIHsKICAgICAgICByZXR1cm4gbmFtZU9yUHJlZml4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBuYW1lT3JQcmVmaXggOiB0aGlzLm5hbWUobmFtZU9yUHJlZml4KTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgY29kZV8xLk5hbWUodGhpcy5fbmV3TmFtZShwcmVmaXgpKTsKICAgICAgfQogICAgICBfbmV3TmFtZShwcmVmaXgpIHsKICAgICAgICBjb25zdCBuZyA9IHRoaXMuX25hbWVzW3ByZWZpeF0gfHwgdGhpcy5fbmFtZUdyb3VwKHByZWZpeCk7CiAgICAgICAgcmV0dXJuIGAke3ByZWZpeH0ke25nLmluZGV4Kyt9YDsKICAgICAgfQogICAgICBfbmFtZUdyb3VwKHByZWZpeCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgaWYgKCgoX2IgPSAoX2EgPSB0aGlzLl9wYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5fcHJlZml4ZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5oYXMocHJlZml4KSkgfHwgdGhpcy5fcHJlZml4ZXMgJiYgIXRoaXMuX3ByZWZpeGVzLmhhcyhwcmVmaXgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHByZWZpeCAiJHtwcmVmaXh9IiBpcyBub3QgYWxsb3dlZCBpbiB0aGlzIHNjb3BlYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9uYW1lc1twcmVmaXhdID0geyBwcmVmaXgsIGluZGV4OiAwIH07CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZSA9IFNjb3BlOwogICAgdmFyIFZhbHVlU2NvcGVOYW1lID0gY2xhc3MgZXh0ZW5kcyBjb2RlXzEuTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHByZWZpeCwgbmFtZVN0cikgewogICAgICAgIHN1cGVyKG5hbWVTdHIpOwogICAgICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICB9CiAgICAgIHNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5LCBpdGVtSW5kZXggfSkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLnNjb3BlUGF0aCA9ICgwLCBjb2RlXzEuXylgLiR7bmV3IGNvZGVfMS5OYW1lKHByb3BlcnR5KX1bJHtpdGVtSW5kZXh9XWA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IFZhbHVlU2NvcGVOYW1lOwogICAgdmFyIGxpbmUgPSAoMCwgY29kZV8xLl8pYFxuYDsKICAgIHZhciBWYWx1ZVNjb3BlID0gY2xhc3MgZXh0ZW5kcyBTY29wZSB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMpIHsKICAgICAgICBzdXBlcihvcHRzKTsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9zY29wZSA9IG9wdHMuc2NvcGU7CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/IGxpbmUgOiBjb2RlXzEubmlsIH07CiAgICAgIH0KICAgICAgZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgVmFsdWVTY29wZU5hbWUocHJlZml4LCB0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIHZhbHVlKG5hbWVPclByZWZpeCwgdmFsdWUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHZhbHVlLnJlZiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiByZWYgbXVzdCBiZSBwYXNzZWQgaW4gdmFsdWUiKTsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBjb25zdCB7IHByZWZpeCB9ID0gbmFtZTsKICAgICAgICBjb25zdCB2YWx1ZUtleSA9IChfYSA9IHZhbHVlLmtleSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsdWUucmVmOwogICAgICAgIGxldCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICh2cykgewogICAgICAgICAgY29uc3QgX25hbWUgPSB2cy5nZXQodmFsdWVLZXkpOwogICAgICAgICAgaWYgKF9uYW1lKQogICAgICAgICAgICByZXR1cm4gX25hbWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIH0KICAgICAgICB2cy5zZXQodmFsdWVLZXksIG5hbWUpOwogICAgICAgIGNvbnN0IHMgPSB0aGlzLl9zY29wZVtwcmVmaXhdIHx8ICh0aGlzLl9zY29wZVtwcmVmaXhdID0gW10pOwogICAgICAgIGNvbnN0IGl0ZW1JbmRleCA9IHMubGVuZ3RoOwogICAgICAgIHNbaXRlbUluZGV4XSA9IHZhbHVlLnJlZjsKICAgICAgICBuYW1lLnNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5OiBwcmVmaXgsIGl0ZW1JbmRleCB9KTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XTsKICAgICAgICBpZiAoIXZzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiB2cy5nZXQoa2V5T3JSZWYpOwogICAgICB9CiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUsIHZhbHVlcyA9IHRoaXMuX3ZhbHVlcykgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUuc2NvcGVQYXRoID09PSB2b2lkIDApCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbmFtZSAiJHtuYW1lfSIgaGFzIG5vIHZhbHVlYCk7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVfMS5fKWAke3Njb3BlTmFtZX0ke25hbWUuc2NvcGVQYXRofWA7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKHZhbHVlcyA9IHRoaXMuX3ZhbHVlcywgdXNlZFZhbHVlcywgZ2V0Q29kZSkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUudmFsdWUgPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiBuYW1lLnZhbHVlLmNvZGU7CiAgICAgICAgfSwgdXNlZFZhbHVlcywgZ2V0Q29kZSk7CiAgICAgIH0KICAgICAgX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIHZhbHVlQ29kZSwgdXNlZFZhbHVlcyA9IHt9LCBnZXRDb2RlKSB7CiAgICAgICAgbGV0IGNvZGUgPSBjb2RlXzEubmlsOwogICAgICAgIGZvciAoY29uc3QgcHJlZml4IGluIHZhbHVlcykgewogICAgICAgICAgY29uc3QgdnMgPSB2YWx1ZXNbcHJlZml4XTsKICAgICAgICAgIGlmICghdnMpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgY29uc3QgbmFtZVNldCA9IHVzZWRWYWx1ZXNbcHJlZml4XSA9IHVzZWRWYWx1ZXNbcHJlZml4XSB8fCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgICAgdnMuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAobmFtZVNldC5oYXMobmFtZSkpCiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICBuYW1lU2V0LnNldChuYW1lLCBVc2VkVmFsdWVTdGF0ZS5TdGFydGVkKTsKICAgICAgICAgICAgbGV0IGMgPSB2YWx1ZUNvZGUobmFtZSk7CiAgICAgICAgICAgIGlmIChjKSB7CiAgICAgICAgICAgICAgY29uc3QgZGVmID0gdGhpcy5vcHRzLmVzNSA/IGV4cG9ydHMyLnZhcktpbmRzLnZhciA6IGV4cG9ydHMyLnZhcktpbmRzLmNvbnN0OwogICAgICAgICAgICAgIGNvZGUgPSAoMCwgY29kZV8xLl8pYCR7Y29kZX0ke2RlZn0gJHtuYW1lfSA9ICR7Y307JHt0aGlzLm9wdHMuX259YDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjID0gZ2V0Q29kZSA9PT0gbnVsbCB8fCBnZXRDb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnZXRDb2RlKG5hbWUpKSB7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7Y30ke3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRocm93IG5ldyBWYWx1ZUVycm9yKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLkNvbXBsZXRlZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlID0gVmFsdWVTY29wZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9pbmRleC5qcwp2YXIgcmVxdWlyZV9jb2RlZ2VuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9yID0gZXhwb3J0czIuYW5kID0gZXhwb3J0czIubm90ID0gZXhwb3J0czIuQ29kZUdlbiA9IGV4cG9ydHMyLm9wZXJhdG9ycyA9IGV4cG9ydHMyLnZhcktpbmRzID0gZXhwb3J0czIuVmFsdWVTY29wZU5hbWUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlID0gZXhwb3J0czIuU2NvcGUgPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLmdldFByb3BlcnR5ID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBzY29wZV8xID0gcmVxdWlyZV9zY29wZSgpOwogICAgdmFyIGNvZGVfMiA9IHJlcXVpcmVfY29kZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyQ29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0ckNvbmNhdDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdldFByb3BlcnR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLmdldFByb3BlcnR5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ2lmeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHJpbmdpZnk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVnZXhwQ29kZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5yZWdleHBDb2RlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuTmFtZTsKICAgIH0gfSk7CiAgICB2YXIgc2NvcGVfMiA9IHJlcXVpcmVfc2NvcGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5TY29wZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWx1ZVNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbHVlU2NvcGVOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ2YXJLaW5kcyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIudmFyS2luZHM7CiAgICB9IH0pOwogICAgZXhwb3J0czIub3BlcmF0b3JzID0gewogICAgICBHVDogbmV3IGNvZGVfMS5fQ29kZSgiPiIpLAogICAgICBHVEU6IG5ldyBjb2RlXzEuX0NvZGUoIj49IiksCiAgICAgIExUOiBuZXcgY29kZV8xLl9Db2RlKCI8IiksCiAgICAgIExURTogbmV3IGNvZGVfMS5fQ29kZSgiPD0iKSwKICAgICAgRVE6IG5ldyBjb2RlXzEuX0NvZGUoIj09PSIpLAogICAgICBORVE6IG5ldyBjb2RlXzEuX0NvZGUoIiE9PSIpLAogICAgICBOT1Q6IG5ldyBjb2RlXzEuX0NvZGUoIiEiKSwKICAgICAgT1I6IG5ldyBjb2RlXzEuX0NvZGUoInx8IiksCiAgICAgIEFORDogbmV3IGNvZGVfMS5fQ29kZSgiJiYiKSwKICAgICAgQUREOiBuZXcgY29kZV8xLl9Db2RlKCIrIikKICAgIH07CiAgICB2YXIgTm9kZSA9IGNsYXNzIHsKICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKF9uYW1lcywgX2NvbnN0YW50cykgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgdmFyIERlZiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKHZhcktpbmQsIG5hbWUsIHJocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucmhzID0gcmhzOwogICAgICB9CiAgICAgIHJlbmRlcih7IGVzNSwgX24gfSkgewogICAgICAgIGNvbnN0IHZhcktpbmQgPSBlczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHRoaXMudmFyS2luZDsKICAgICAgICBjb25zdCByaHMgPSB0aGlzLnJocyA9PT0gdm9pZCAwID8gIiIgOiBgID0gJHt0aGlzLnJoc31gOwogICAgICAgIHJldHVybiBgJHt2YXJLaW5kfSAke3RoaXMubmFtZX0ke3Joc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghbmFtZXNbdGhpcy5uYW1lLnN0cl0pCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKHRoaXMucmhzKQogICAgICAgICAgdGhpcy5yaHMgPSBvcHRpbWl6ZUV4cHIodGhpcy5yaHMsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5yaHMgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyB0aGlzLnJocy5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5saHMgPSBsaHM7CiAgICAgICAgdGhpcy5yaHMgPSByaHM7CiAgICAgICAgdGhpcy5zaWRlRWZmZWN0cyA9IHNpZGVFZmZlY3RzOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5saHN9ID0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICh0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lICYmICFuYW1lc1t0aGlzLmxocy5zdHJdICYmICF0aGlzLnNpZGVFZmZlY3RzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMucmhzID0gb3B0aW1pemVFeHByKHRoaXMucmhzLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSB0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8ge30gOiB7IC4uLnRoaXMubGhzLm5hbWVzIH07CiAgICAgICAgcmV0dXJuIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy5yaHMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbk9wID0gY2xhc3MgZXh0ZW5kcyBBc3NpZ24gewogICAgICBjb25zdHJ1Y3RvcihsaHMsIG9wLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgc3VwZXIobGhzLCByaHMsIHNpZGVFZmZlY3RzKTsKICAgICAgICB0aGlzLm9wID0gb3A7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxoc30gJHt0aGlzLm9wfT0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIExhYmVsID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGFiZWwpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGFiZWwgPSBsYWJlbDsKICAgICAgICB0aGlzLm5hbWVzID0ge307CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxhYmVsfTpgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgQnJlYWsgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsYWJlbCkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sYWJlbCA9IGxhYmVsOwogICAgICAgIHRoaXMubmFtZXMgPSB7fTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsID8gYCAke3RoaXMubGFiZWx9YCA6ICIiOwogICAgICAgIHJldHVybiBgYnJlYWske2xhYmVsfTtgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgVGhyb3cgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihlcnJvcikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYHRocm93ICR7dGhpcy5lcnJvcn07YCArIF9uOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5lcnJvci5uYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBBbnlDb2RlID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX07YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX1gID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB0aGlzLmNvZGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5jb2RlLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY29kZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IHRoaXMuY29kZS5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIFBhcmVudE5vZGUgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcihub2RlcyA9IFtdKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5vZGVzID0gbm9kZXM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5ub2Rlcy5yZWR1Y2UoKGNvZGUsIG4pID0+IGNvZGUgKyBuLnJlbmRlcihvcHRzKSwgIiIpOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV0ub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobikpCiAgICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxLCAuLi5uKTsKICAgICAgICAgIGVsc2UgaWYgKG4pCiAgICAgICAgICAgIG5vZGVzW2ldID0gbjsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV07CiAgICAgICAgICBpZiAobi5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIHN1YnRyYWN0TmFtZXMobmFtZXMsIG4ubmFtZXMpOwogICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLm5vZGVzLnJlZHVjZSgobmFtZXMsIG4pID0+IGFkZE5hbWVzKG5hbWVzLCBuLm5hbWVzKSwge30pOwogICAgICB9CiAgICB9OwogICAgdmFyIEJsb2NrTm9kZSA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJ7IiArIG9wdHMuX24gKyBzdXBlci5yZW5kZXIob3B0cykgKyAifSIgKyBvcHRzLl9uOwogICAgICB9CiAgICB9OwogICAgdmFyIFJvb3QgPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgfTsKICAgIHZhciBFbHNlID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgfTsKICAgIEVsc2Uua2luZCA9ICJlbHNlIjsKICAgIHZhciBJZiA9IGNsYXNzIF9JZiBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvbmRpdGlvbiwgbm9kZXMpIHsKICAgICAgICBzdXBlcihub2Rlcyk7CiAgICAgICAgdGhpcy5jb25kaXRpb24gPSBjb25kaXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9IGBpZigke3RoaXMuY29uZGl0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmVsc2UpCiAgICAgICAgICBjb2RlICs9ICJlbHNlICIgKyB0aGlzLmVsc2UucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgc3VwZXIub3B0aW1pemVOb2RlcygpOwogICAgICAgIGNvbnN0IGNvbmQgPSB0aGlzLmNvbmRpdGlvbjsKICAgICAgICBpZiAoY29uZCA9PT0gdHJ1ZSkKICAgICAgICAgIHJldHVybiB0aGlzLm5vZGVzOwogICAgICAgIGxldCBlID0gdGhpcy5lbHNlOwogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBjb25zdCBucyA9IGUub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgZSA9IHRoaXMuZWxzZSA9IEFycmF5LmlzQXJyYXkobnMpID8gbmV3IEVsc2UobnMpIDogbnM7CiAgICAgICAgfQogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBpZiAoY29uZCA9PT0gZmFsc2UpCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgX0lmID8gZSA6IGUubm9kZXM7CiAgICAgICAgICBpZiAodGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgICAgcmV0dXJuIG5ldyBfSWYobm90KGNvbmQpLCBlIGluc3RhbmNlb2YgX0lmID8gW2VdIDogZS5ub2Rlcyk7CiAgICAgICAgfQogICAgICAgIGlmIChjb25kID09PSBmYWxzZSB8fCAhdGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLmVsc2UgPSAoX2EgPSB0aGlzLmVsc2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIGlmICghKHN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgfHwgdGhpcy5lbHNlKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLmNvbmRpdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLmNvbmRpdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLmNvbmRpdGlvbik7CiAgICAgICAgaWYgKHRoaXMuZWxzZSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmVsc2UubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIElmLmtpbmQgPSAiaWYiOwogICAgdmFyIEZvciA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgIH07CiAgICBGb3Iua2luZCA9ICJmb3IiOwogICAgdmFyIEZvckxvb3AgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGl0ZXJhdGlvbikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5pdGVyYXRpb24gPSBpdGVyYXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMuaXRlcmF0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLml0ZXJhdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLml0ZXJhdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYXRpb24ubmFtZXMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvclJhbmdlID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3Rvcih2YXJLaW5kLCBuYW1lLCBmcm9tLCB0bykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuZnJvbSA9IGZyb207CiAgICAgICAgdGhpcy50byA9IHRvOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgY29uc3QgdmFyS2luZCA9IG9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiB0aGlzLnZhcktpbmQ7CiAgICAgICAgY29uc3QgeyBuYW1lLCBmcm9tLCB0byB9ID0gdGhpczsKICAgICAgICByZXR1cm4gYGZvcigke3ZhcktpbmR9ICR7bmFtZX09JHtmcm9tfTsgJHtuYW1lfTwke3RvfTsgJHtuYW1lfSsrKWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gYWRkRXhwck5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLmZyb20pOwogICAgICAgIHJldHVybiBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMudG8pOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvckl0ZXIgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGxvb3AsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxvb3AgPSBsb29wOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLml0ZXJhYmxlID0gaXRlcmFibGU7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMudmFyS2luZH0gJHt0aGlzLm5hbWV9ICR7dGhpcy5sb29wfSAke3RoaXMuaXRlcmFibGV9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuaXRlcmFibGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5pdGVyYWJsZSwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYWJsZS5uYW1lcyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRnVuYyA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgYXJncywgYXN5bmMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5hcmdzID0gYXJnczsKICAgICAgICB0aGlzLmFzeW5jID0gYXN5bmM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBjb25zdCBfYXN5bmMgPSB0aGlzLmFzeW5jID8gImFzeW5jICIgOiAiIjsKICAgICAgICByZXR1cm4gYCR7X2FzeW5jfWZ1bmN0aW9uICR7dGhpcy5uYW1lfSgke3RoaXMuYXJnc30pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIEZ1bmMua2luZCA9ICJmdW5jIjsKICAgIHZhciBSZXR1cm4gPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAicmV0dXJuICIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBSZXR1cm4ua2luZCA9ICJyZXR1cm4iOwogICAgdmFyIFRyeSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9ICJ0cnkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmNhdGNoKQogICAgICAgICAgY29kZSArPSB0aGlzLmNhdGNoLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5maW5hbGx5KQogICAgICAgICAgY29kZSArPSB0aGlzLmZpbmFsbHkucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgKF9hID0gdGhpcy5jYXRjaCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAoX2IgPSB0aGlzLmZpbmFsbHkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYSA9IHRoaXMuY2F0Y2gpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYiA9IHRoaXMuZmluYWxseSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgaWYgKHRoaXMuY2F0Y2gpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5jYXRjaC5uYW1lcyk7CiAgICAgICAgaWYgKHRoaXMuZmluYWxseSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmZpbmFsbHkubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBDYXRjaCA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IoZXJyb3IpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgY2F0Y2goJHt0aGlzLmVycm9yfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgQ2F0Y2gua2luZCA9ICJjYXRjaCI7CiAgICB2YXIgRmluYWxseSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gImZpbmFsbHkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgRmluYWxseS5raW5kID0gImZpbmFsbHkiOwogICAgdmFyIENvZGVHZW4gPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGV4dFNjb3BlLCBvcHRzID0ge30pIHsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9ibG9ja1N0YXJ0cyA9IFtdOwogICAgICAgIHRoaXMuX2NvbnN0YW50cyA9IHt9OwogICAgICAgIHRoaXMub3B0cyA9IHsgLi4ub3B0cywgX246IG9wdHMubGluZXMgPyAiXG4iIDogIiIgfTsKICAgICAgICB0aGlzLl9leHRTY29wZSA9IGV4dFNjb3BlOwogICAgICAgIHRoaXMuX3Njb3BlID0gbmV3IHNjb3BlXzEuU2NvcGUoeyBwYXJlbnQ6IGV4dFNjb3BlIH0pOwogICAgICAgIHRoaXMuX25vZGVzID0gW25ldyBSb290KCldOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnJlbmRlcih0aGlzLm9wdHMpOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgdW5pcXVlIG5hbWUgaW4gdGhlIGludGVybmFsIHNjb3BlCiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Njb3BlLm5hbWUocHJlZml4KTsKICAgICAgfQogICAgICAvLyByZXNlcnZlcyB1bmlxdWUgbmFtZSBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUKICAgICAgc2NvcGVOYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5uYW1lKHByZWZpeCk7CiAgICAgIH0KICAgICAgLy8gcmVzZXJ2ZXMgdW5pcXVlIG5hbWUgaW4gdGhlIGV4dGVybmFsIHNjb3BlIGFuZCBhc3NpZ25zIHZhbHVlIHRvIGl0CiAgICAgIHNjb3BlVmFsdWUocHJlZml4T3JOYW1lLCB2YWx1ZSkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9leHRTY29wZS52YWx1ZShwcmVmaXhPck5hbWUsIHZhbHVlKTsKICAgICAgICBjb25zdCB2cyA9IHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gfHwgKHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKTsKICAgICAgICB2cy5hZGQobmFtZSk7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgIH0KICAgICAgZ2V0U2NvcGVWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLmdldFZhbHVlKHByZWZpeCwga2V5T3JSZWYpOwogICAgICB9CiAgICAgIC8vIHJldHVybiBjb2RlIHRoYXQgYXNzaWducyB2YWx1ZXMgaW4gdGhlIGV4dGVybmFsIHNjb3BlIHRvIHRoZSBuYW1lcyB0aGF0IGFyZSB1c2VkIGludGVybmFsbHkKICAgICAgLy8gKHNhbWUgbmFtZXMgdGhhdCB3ZXJlIHJldHVybmVkIGJ5IGdlbi5zY29wZU5hbWUgb3IgZ2VuLnNjb3BlVmFsdWUpCiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuc2NvcGVSZWZzKHNjb3BlTmFtZSwgdGhpcy5fdmFsdWVzKTsKICAgICAgfQogICAgICBzY29wZUNvZGUoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLnNjb3BlQ29kZSh0aGlzLl92YWx1ZXMpOwogICAgICB9CiAgICAgIF9kZWYodmFyS2luZCwgbmFtZU9yUHJlZml4LCByaHMsIGNvbnN0YW50KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGlmIChyaHMgIT09IHZvaWQgMCAmJiBjb25zdGFudCkKICAgICAgICAgIHRoaXMuX2NvbnN0YW50c1tuYW1lLnN0cl0gPSByaHM7CiAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IERlZih2YXJLaW5kLCBuYW1lLCByaHMpKTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICAvLyBgY29uc3RgIGRlY2xhcmF0aW9uIChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgY29uc3QobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy5jb25zdCwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYGxldGAgZGVjbGFyYXRpb24gd2l0aCBvcHRpb25hbCBhc3NpZ25tZW50IChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgbGV0KG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMubGV0LCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBgdmFyYCBkZWNsYXJhdGlvbiB3aXRoIG9wdGlvbmFsIGFzc2lnbm1lbnQKICAgICAgdmFyKG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMudmFyLCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBhc3NpZ25tZW50IGNvZGUKICAgICAgYXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykpOwogICAgICB9CiAgICAgIC8vIGArPWAgY29kZQogICAgICBhZGQobGhzLCByaHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEFzc2lnbk9wKGxocywgZXhwb3J0czIub3BlcmF0b3JzLkFERCwgcmhzKSk7CiAgICAgIH0KICAgICAgLy8gYXBwZW5kcyBwYXNzZWQgU2FmZUV4cHIgdG8gY29kZSBvciBleGVjdXRlcyBCbG9jawogICAgICBjb2RlKGMpIHsKICAgICAgICBpZiAodHlwZW9mIGMgPT0gImZ1bmN0aW9uIikKICAgICAgICAgIGMoKTsKICAgICAgICBlbHNlIGlmIChjICE9PSBjb2RlXzEubmlsKQogICAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IEFueUNvZGUoYykpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgY29kZSBmb3Igb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSBwYXNzZWQgYXJndW1lbnQgbGlzdCBvZiBrZXktdmFsdWUgcGFpcnMKICAgICAgb2JqZWN0KC4uLmtleVZhbHVlcykgewogICAgICAgIGNvbnN0IGNvZGUgPSBbInsiXTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBrZXlWYWx1ZXMpIHsKICAgICAgICAgIGlmIChjb2RlLmxlbmd0aCA+IDEpCiAgICAgICAgICAgIGNvZGUucHVzaCgiLCIpOwogICAgICAgICAgY29kZS5wdXNoKGtleSk7CiAgICAgICAgICBpZiAoa2V5ICE9PSB2YWx1ZSB8fCB0aGlzLm9wdHMuZXM1KSB7CiAgICAgICAgICAgIGNvZGUucHVzaCgiOiIpOwogICAgICAgICAgICAoMCwgY29kZV8xLmFkZENvZGVBcmcpKGNvZGUsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29kZS5wdXNoKCJ9Iik7CiAgICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuX0NvZGUoY29kZSk7CiAgICAgIH0KICAgICAgLy8gYGlmYCBjbGF1c2UgKG9yIHN0YXRlbWVudCBpZiBgdGhlbkJvZHlgIGFuZCwgb3B0aW9uYWxseSwgYGVsc2VCb2R5YCBhcmUgcGFzc2VkKQogICAgICBpZihjb25kaXRpb24sIHRoZW5Cb2R5LCBlbHNlQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShuZXcgSWYoY29uZGl0aW9uKSk7CiAgICAgICAgaWYgKHRoZW5Cb2R5ICYmIGVsc2VCb2R5KSB7CiAgICAgICAgICB0aGlzLmNvZGUodGhlbkJvZHkpLmVsc2UoKS5jb2RlKGVsc2VCb2R5KS5lbmRJZigpOwogICAgICAgIH0gZWxzZSBpZiAodGhlbkJvZHkpIHsKICAgICAgICAgIHRoaXMuY29kZSh0aGVuQm9keSkuZW5kSWYoKTsKICAgICAgICB9IGVsc2UgaWYgKGVsc2VCb2R5KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJlbHNlIiBib2R5IHdpdGhvdXQgInRoZW4iIGJvZHknKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYGVsc2UgaWZgIGNsYXVzZSAtIGludmFsaWQgd2l0aG91dCBgaWZgIG9yIGFmdGVyIGBlbHNlYCBjbGF1c2VzCiAgICAgIGVsc2VJZihjb25kaXRpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IElmKGNvbmRpdGlvbikpOwogICAgICB9CiAgICAgIC8vIGBlbHNlYCBjbGF1c2UgLSBvbmx5IHZhbGlkIGFmdGVyIGBpZmAgb3IgYGVsc2UgaWZgIGNsYXVzZXMKICAgICAgZWxzZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IEVsc2UoKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBpZmAgc3RhdGVtZW50IChuZWVkZWQgaWYgZ2VuLmlmIHdhcyB1c2VkIG9ubHkgd2l0aCBjb25kaXRpb24pCiAgICAgIGVuZElmKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoSWYsIEVsc2UpOwogICAgICB9CiAgICAgIF9mb3Iobm9kZSwgZm9yQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICBpZiAoZm9yQm9keSkKICAgICAgICAgIHRoaXMuY29kZShmb3JCb2R5KS5lbmRGb3IoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBhIGdlbmVyaWMgYGZvcmAgY2xhdXNlIChvciBzdGF0ZW1lbnQgaWYgYGZvckJvZHlgIGlzIHBhc3NlZCkKICAgICAgZm9yKGl0ZXJhdGlvbiwgZm9yQm9keSkgewogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckxvb3AoaXRlcmF0aW9uKSwgZm9yQm9keSk7CiAgICAgIH0KICAgICAgLy8gYGZvcmAgc3RhdGVtZW50IGZvciBhIHJhbmdlIG9mIHZhbHVlcwogICAgICBmb3JSYW5nZShuYW1lT3JQcmVmaXgsIGZyb20sIHRvLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5sZXQpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9yUmFuZ2UodmFyS2luZCwgbmFtZSwgZnJvbSwgdG8pLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBgZm9yLW9mYCBzdGF0ZW1lbnQgKGluIGVzNSBtb2RlIHJlcGxhY2Ugd2l0aCBhIG5vcm1hbCBmb3IgbG9vcCkKICAgICAgZm9yT2YobmFtZU9yUHJlZml4LCBpdGVyYWJsZSwgZm9yQm9keSwgdmFyS2luZCA9IHNjb3BlXzEudmFyS2luZHMuY29uc3QpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgaWYgKHRoaXMub3B0cy5lczUpIHsKICAgICAgICAgIGNvbnN0IGFyciA9IGl0ZXJhYmxlIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBpdGVyYWJsZSA6IHRoaXMudmFyKCJfYXJyIiwgaXRlcmFibGUpOwogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yUmFuZ2UoIl9pIiwgMCwgKDAsIGNvZGVfMS5fKWAke2Fycn0ubGVuZ3RoYCwgKGkpID0+IHsKICAgICAgICAgICAgdGhpcy52YXIobmFtZSwgKDAsIGNvZGVfMS5fKWAke2Fycn1bJHtpfV1gKTsKICAgICAgICAgICAgZm9yQm9keShuYW1lKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JJdGVyKCJvZiIsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gYGZvci1pbmAgc3RhdGVtZW50LgogICAgICAvLyBXaXRoIG9wdGlvbiBgb3duUHJvcGVydGllc2AgcmVwbGFjZWQgd2l0aCBhIGBmb3Itb2ZgIGxvb3AgZm9yIG9iamVjdCBrZXlzCiAgICAgIGZvckluKG5hbWVPclByZWZpeCwgb2JqLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5jb25zdCkgewogICAgICAgIGlmICh0aGlzLm9wdHMub3duUHJvcGVydGllcykgewogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yT2YobmFtZU9yUHJlZml4LCAoMCwgY29kZV8xLl8pYE9iamVjdC5rZXlzKCR7b2JqfSlgLCBmb3JCb2R5KTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckl0ZXIoImluIiwgdmFyS2luZCwgbmFtZSwgb2JqKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBmb3JgIGxvb3AKICAgICAgZW5kRm9yKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRm9yKTsKICAgICAgfQogICAgICAvLyBgbGFiZWxgIHN0YXRlbWVudAogICAgICBsYWJlbChsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgTGFiZWwobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgYnJlYWtgIHN0YXRlbWVudAogICAgICBicmVhayhsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQnJlYWsobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgcmV0dXJuYCBzdGF0ZW1lbnQKICAgICAgcmV0dXJuKHZhbHVlKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBSZXR1cm4oKTsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgdGhpcy5jb2RlKHZhbHVlKTsKICAgICAgICBpZiAobm9kZS5ub2Rlcy5sZW5ndGggIT09IDEpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJyZXR1cm4iIHNob3VsZCBoYXZlIG9uZSBub2RlJyk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShSZXR1cm4pOwogICAgICB9CiAgICAgIC8vIGB0cnlgIHN0YXRlbWVudAogICAgICB0cnkodHJ5Qm9keSwgY2F0Y2hDb2RlLCBmaW5hbGx5Q29kZSkgewogICAgICAgIGlmICghY2F0Y2hDb2RlICYmICFmaW5hbGx5Q29kZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogInRyeSIgd2l0aG91dCAiY2F0Y2giIGFuZCAiZmluYWxseSInKTsKICAgICAgICBjb25zdCBub2RlID0gbmV3IFRyeSgpOwogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICB0aGlzLmNvZGUodHJ5Qm9keSk7CiAgICAgICAgaWYgKGNhdGNoQ29kZSkgewogICAgICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLm5hbWUoImUiKTsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5jYXRjaCA9IG5ldyBDYXRjaChlcnJvcik7CiAgICAgICAgICBjYXRjaENvZGUoZXJyb3IpOwogICAgICAgIH0KICAgICAgICBpZiAoZmluYWxseUNvZGUpIHsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5maW5hbGx5ID0gbmV3IEZpbmFsbHkoKTsKICAgICAgICAgIHRoaXMuY29kZShmaW5hbGx5Q29kZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoQ2F0Y2gsIEZpbmFsbHkpOwogICAgICB9CiAgICAgIC8vIGB0aHJvd2Agc3RhdGVtZW50CiAgICAgIHRocm93KGVycm9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBUaHJvdyhlcnJvcikpOwogICAgICB9CiAgICAgIC8vIHN0YXJ0IHNlbGYtYmFsYW5jaW5nIGJsb2NrCiAgICAgIGJsb2NrKGJvZHksIG5vZGVDb3VudCkgewogICAgICAgIHRoaXMuX2Jsb2NrU3RhcnRzLnB1c2godGhpcy5fbm9kZXMubGVuZ3RoKTsKICAgICAgICBpZiAoYm9keSkKICAgICAgICAgIHRoaXMuY29kZShib2R5KS5lbmRCbG9jayhub2RlQ291bnQpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGVuZCB0aGUgY3VycmVudCBzZWxmLWJhbGFuY2luZyBibG9jawogICAgICBlbmRCbG9jayhub2RlQ291bnQpIHsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLl9ibG9ja1N0YXJ0cy5wb3AoKTsKICAgICAgICBpZiAobGVuID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5vdCBpbiBzZWxmLWJhbGFuY2luZyBibG9jayIpOwogICAgICAgIGNvbnN0IHRvQ2xvc2UgPSB0aGlzLl9ub2Rlcy5sZW5ndGggLSBsZW47CiAgICAgICAgaWYgKHRvQ2xvc2UgPCAwIHx8IG5vZGVDb3VudCAhPT0gdm9pZCAwICYmIHRvQ2xvc2UgIT09IG5vZGVDb3VudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiB3cm9uZyBudW1iZXIgb2Ygbm9kZXM6ICR7dG9DbG9zZX0gdnMgJHtub2RlQ291bnR9IGV4cGVjdGVkYCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX25vZGVzLmxlbmd0aCA9IGxlbjsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBgZnVuY3Rpb25gIGhlYWRpbmcgKG9yIGRlZmluaXRpb24gaWYgZnVuY0JvZHkgaXMgcGFzc2VkKQogICAgICBmdW5jKG5hbWUsIGFyZ3MgPSBjb2RlXzEubmlsLCBhc3luYywgZnVuY0JvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobmV3IEZ1bmMobmFtZSwgYXJncywgYXN5bmMpKTsKICAgICAgICBpZiAoZnVuY0JvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoZnVuY0JvZHkpLmVuZEZ1bmMoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBlbmQgZnVuY3Rpb24gZGVmaW5pdGlvbgogICAgICBlbmRGdW5jKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRnVuYyk7CiAgICAgIH0KICAgICAgb3B0aW1pemUobiA9IDEpIHsKICAgICAgICB3aGlsZSAobi0tID4gMCkgewogICAgICAgICAgdGhpcy5fcm9vdC5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICB0aGlzLl9yb290Lm9wdGltaXplTmFtZXModGhpcy5fcm9vdC5uYW1lcywgdGhpcy5fY29uc3RhbnRzKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2xlYWZOb2RlKG5vZGUpIHsKICAgICAgICB0aGlzLl9jdXJyTm9kZS5ub2Rlcy5wdXNoKG5vZGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF9ibG9ja05vZGUobm9kZSkgewogICAgICAgIHRoaXMuX2N1cnJOb2RlLm5vZGVzLnB1c2gobm9kZSk7CiAgICAgICAgdGhpcy5fbm9kZXMucHVzaChub2RlKTsKICAgICAgfQogICAgICBfZW5kQmxvY2tOb2RlKE4xLCBOMikgewogICAgICAgIGNvbnN0IG4gPSB0aGlzLl9jdXJyTm9kZTsKICAgICAgICBpZiAobiBpbnN0YW5jZW9mIE4xIHx8IE4yICYmIG4gaW5zdGFuY2VvZiBOMikgewogICAgICAgICAgdGhpcy5fbm9kZXMucG9wKCk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBub3QgaW4gYmxvY2sgIiR7TjIgPyBgJHtOMS5raW5kfS8ke04yLmtpbmR9YCA6IE4xLmtpbmR9ImApOwogICAgICB9CiAgICAgIF9lbHNlTm9kZShub2RlKSB7CiAgICAgICAgY29uc3QgbiA9IHRoaXMuX2N1cnJOb2RlOwogICAgICAgIGlmICghKG4gaW5zdGFuY2VvZiBJZikpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogImVsc2UiIHdpdGhvdXQgImlmIicpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG4uZWxzZSA9IG5vZGU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IF9yb290KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ub2Rlc1swXTsKICAgICAgfQogICAgICBnZXQgX2N1cnJOb2RlKCkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgcmV0dXJuIG5zW25zLmxlbmd0aCAtIDFdOwogICAgICB9CiAgICAgIHNldCBfY3Vyck5vZGUobm9kZSkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgbnNbbnMubGVuZ3RoIC0gMV0gPSBub2RlOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29kZUdlbiA9IENvZGVHZW47CiAgICBmdW5jdGlvbiBhZGROYW1lcyhuYW1lcywgZnJvbSkgewogICAgICBmb3IgKGNvbnN0IG4gaW4gZnJvbSkKICAgICAgICBuYW1lc1tuXSA9IChuYW1lc1tuXSB8fCAwKSArIChmcm9tW25dIHx8IDApOwogICAgICByZXR1cm4gbmFtZXM7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFeHByTmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgcmV0dXJuIGZyb20gaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyBhZGROYW1lcyhuYW1lcywgZnJvbS5uYW1lcykgOiBuYW1lczsKICAgIH0KICAgIGZ1bmN0aW9uIG9wdGltaXplRXhwcihleHByLCBuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgIGlmIChleHByIGluc3RhbmNlb2YgY29kZV8xLk5hbWUpCiAgICAgICAgcmV0dXJuIHJlcGxhY2VOYW1lKGV4cHIpOwogICAgICBpZiAoIWNhbk9wdGltaXplKGV4cHIpKQogICAgICAgIHJldHVybiBleHByOwogICAgICByZXR1cm4gbmV3IGNvZGVfMS5fQ29kZShleHByLl9pdGVtcy5yZWR1Y2UoKGl0ZW1zLCBjKSA9PiB7CiAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSkKICAgICAgICAgIGMgPSByZXBsYWNlTmFtZShjKTsKICAgICAgICBpZiAoYyBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSkKICAgICAgICAgIGl0ZW1zLnB1c2goLi4uYy5faXRlbXMpOwogICAgICAgIGVsc2UKICAgICAgICAgIGl0ZW1zLnB1c2goYyk7CiAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICB9LCBbXSkpOwogICAgICBmdW5jdGlvbiByZXBsYWNlTmFtZShuKSB7CiAgICAgICAgY29uc3QgYyA9IGNvbnN0YW50c1tuLnN0cl07CiAgICAgICAgaWYgKGMgPT09IHZvaWQgMCB8fCBuYW1lc1tuLnN0cl0gIT09IDEpCiAgICAgICAgICByZXR1cm4gbjsKICAgICAgICBkZWxldGUgbmFtZXNbbi5zdHJdOwogICAgICAgIHJldHVybiBjOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbk9wdGltaXplKGUpIHsKICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSAmJiBlLl9pdGVtcy5zb21lKChjKSA9PiBjIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgJiYgbmFtZXNbYy5zdHJdID09PSAxICYmIGNvbnN0YW50c1tjLnN0cl0gIT09IHZvaWQgMCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN1YnRyYWN0TmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgZm9yIChjb25zdCBuIGluIGZyb20pCiAgICAgICAgbmFtZXNbbl0gPSAobmFtZXNbbl0gfHwgMCkgLSAoZnJvbVtuXSB8fCAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIG5vdCh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgdHlwZW9mIHggPT0gIm51bWJlciIgfHwgeCA9PT0gbnVsbCA/ICF4IDogKDAsIGNvZGVfMS5fKWAhJHtwYXIoeCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLm5vdCA9IG5vdDsKICAgIHZhciBhbmRDb2RlID0gbWFwcGVuZChleHBvcnRzMi5vcGVyYXRvcnMuQU5EKTsKICAgIGZ1bmN0aW9uIGFuZCguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShhbmRDb2RlKTsKICAgIH0KICAgIGV4cG9ydHMyLmFuZCA9IGFuZDsKICAgIHZhciBvckNvZGUgPSBtYXBwZW5kKGV4cG9ydHMyLm9wZXJhdG9ycy5PUik7CiAgICBmdW5jdGlvbiBvciguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShvckNvZGUpOwogICAgfQogICAgZXhwb3J0czIub3IgPSBvcjsKICAgIGZ1bmN0aW9uIG1hcHBlbmQob3ApIHsKICAgICAgcmV0dXJuICh4LCB5KSA9PiB4ID09PSBjb2RlXzEubmlsID8geSA6IHkgPT09IGNvZGVfMS5uaWwgPyB4IDogKDAsIGNvZGVfMS5fKWAke3Bhcih4KX0gJHtvcH0gJHtwYXIoeSl9YDsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcih4KSB7CiAgICAgIHJldHVybiB4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyB4IDogKDAsIGNvZGVfMS5fKWAoJHt4fSlgOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdXRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZXhwb3J0czIuVHlwZSA9IGV4cG9ydHMyLnVzZUZ1bmMgPSBleHBvcnRzMi5zZXRFdmFsdWF0ZWQgPSBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gZXhwb3J0czIuZWFjaEl0ZW0gPSBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSBleHBvcnRzMi5zY2hlbWFSZWZPclZhbCA9IGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzQnV0UmVmID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXMgPSBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gZXhwb3J0czIudG9IYXNoID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgZnVuY3Rpb24gdG9IYXNoKGFycikgewogICAgICBjb25zdCBoYXNoID0ge307CiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnIpCiAgICAgICAgaGFzaFtpdGVtXSA9IHRydWU7CiAgICAgIHJldHVybiBoYXNoOwogICAgfQogICAgZXhwb3J0czIudG9IYXNoID0gdG9IYXNoOwogICAgZnVuY3Rpb24gYWx3YXlzVmFsaWRTY2hlbWEoaXQsIHNjaGVtYTIpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hMjsKICAgICAgaWYgKE9iamVjdC5rZXlzKHNjaGVtYTIpLmxlbmd0aCA9PT0gMCkKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgY2hlY2tVbmtub3duUnVsZXMoaXQsIHNjaGVtYTIpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIGl0LnNlbGYuUlVMRVMuYWxsKTsKICAgIH0KICAgIGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gYWx3YXlzVmFsaWRTY2hlbWE7CiAgICBmdW5jdGlvbiBjaGVja1Vua25vd25SdWxlcyhpdCwgc2NoZW1hMiA9IGl0LnNjaGVtYSkgewogICAgICBjb25zdCB7IG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgaWYgKCFvcHRzLnN0cmljdFNjaGVtYSkKICAgICAgICByZXR1cm47CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmICghcnVsZXNba2V5XSkKICAgICAgICAgIGNoZWNrU3RyaWN0TW9kZShpdCwgYHVua25vd24ga2V5d29yZDogIiR7a2V5fSJgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tVbmtub3duUnVsZXMgPSBjaGVja1Vua25vd25SdWxlczsKICAgIGZ1bmN0aW9uIHNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIHJ1bGVzKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWEyOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKQogICAgICAgIGlmIChydWxlc1trZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzID0gc2NoZW1hSGFzUnVsZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFIYXNSdWxlc0J1dFJlZihzY2hlbWEyLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiAhc2NoZW1hMjsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYTIsIGtleXdvcmQsICRkYXRhKSB7CiAgICAgIGlmICghJGRhdGEpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gIm51bWJlciIgfHwgdHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciKQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWEyfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cjIpIHsKICAgICAgcmV0dXJuIHVuZXNjYXBlSnNvblBvaW50ZXIoZGVjb2RlVVJJQ29tcG9uZW50KHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSB1bmVzY2FwZUZyYWdtZW50OwogICAgZnVuY3Rpb24gZXNjYXBlRnJhZ21lbnQoc3RyMikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXNjYXBlRnJhZ21lbnQ7CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUG9pbnRlcihzdHIyKSB7CiAgICAgIGlmICh0eXBlb2Ygc3RyMiA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyMn1gOwogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBlc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIHVuZXNjYXBlSnNvblBvaW50ZXIoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+Iik7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gdW5lc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIGVhY2hJdGVtKHhzLCBmKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHhzKSkgewogICAgICAgIGZvciAoY29uc3QgeCBvZiB4cykKICAgICAgICAgIGYoeCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZih4cyk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVhY2hJdGVtID0gZWFjaEl0ZW07CiAgICBmdW5jdGlvbiBtYWtlTWVyZ2VFdmFsdWF0ZWQoeyBtZXJnZU5hbWVzLCBtZXJnZVRvTmFtZSwgbWVyZ2VWYWx1ZXMsIHJlc3VsdFRvTmFtZSB9KSB7CiAgICAgIHJldHVybiAoZ2VuLCBmcm9tLCB0bywgdG9OYW1lKSA9PiB7CiAgICAgICAgY29uc3QgcmVzID0gdG8gPT09IHZvaWQgMCA/IGZyb20gOiB0byBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKGZyb20gaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IG1lcmdlTmFtZXMoZ2VuLCBmcm9tLCB0bykgOiBtZXJnZVRvTmFtZShnZW4sIGZyb20sIHRvKSwgdG8pIDogZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKG1lcmdlVG9OYW1lKGdlbiwgdG8sIGZyb20pLCBmcm9tKSA6IG1lcmdlVmFsdWVzKGZyb20sIHRvKTsKICAgICAgICByZXR1cm4gdG9OYW1lID09PSBjb2RlZ2VuXzEuTmFtZSAmJiAhKHJlcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSA/IHJlc3VsdFRvTmFtZShnZW4sIHJlcykgOiByZXM7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUV2YWx1YXRlZCA9IHsKICAgICAgcHJvcHM6IG1ha2VNZXJnZUV2YWx1YXRlZCh7CiAgICAgICAgbWVyZ2VOYW1lczogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlICYmICR7ZnJvbX0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCB0cnVlKSwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke3RvfSB8fCB7fWApLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QuYXNzaWduKCR7dG99LCAke2Zyb219KWApKTsKICAgICAgICB9KSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gewogICAgICAgICAgaWYgKGZyb20gPT09IHRydWUpIHsKICAgICAgICAgICAgZ2VuLmFzc2lnbih0bywgdHJ1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCk7CiAgICAgICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHRvLCBmcm9tKTsKICAgICAgICAgIH0KICAgICAgICB9KSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IHsgLi4uZnJvbSwgLi4udG8gfSwKICAgICAgICByZXN1bHRUb05hbWU6IGV2YWx1YXRlZFByb3BzVG9OYW1lCiAgICAgIH0pLAogICAgICBpdGVtczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke2Zyb219ID09PSB0cnVlID8gdHJ1ZSA6ICR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgZnJvbSA9PT0gdHJ1ZSA/IHRydWUgOiAoMCwgY29kZWdlbl8xLl8pYCR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IE1hdGgubWF4KGZyb20sIHRvKSwKICAgICAgICByZXN1bHRUb05hbWU6IChnZW4sIGl0ZW1zKSA9PiBnZW4udmFyKCJpdGVtcyIsIGl0ZW1zKQogICAgICB9KQogICAgfTsKICAgIGZ1bmN0aW9uIGV2YWx1YXRlZFByb3BzVG9OYW1lKGdlbiwgcHMpIHsKICAgICAgaWYgKHBzID09PSB0cnVlKQogICAgICAgIHJldHVybiBnZW4udmFyKCJwcm9wcyIsIHRydWUpOwogICAgICBjb25zdCBwcm9wcyA9IGdlbi52YXIoInByb3BzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICBpZiAocHMgIT09IHZvaWQgMCkKICAgICAgICBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpOwogICAgICByZXR1cm4gcHJvcHM7CiAgICB9CiAgICBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV2YWx1YXRlZFByb3BzVG9OYW1lOwogICAgZnVuY3Rpb24gc2V0RXZhbHVhdGVkKGdlbiwgcHJvcHMsIHBzKSB7CiAgICAgIE9iamVjdC5rZXlzKHBzKS5mb3JFYWNoKChwKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wc30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHApfWAsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IHNldEV2YWx1YXRlZDsKICAgIHZhciBzbmlwcGV0cyA9IHt9OwogICAgZnVuY3Rpb24gdXNlRnVuYyhnZW4sIGYpIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIHJlZjogZiwKICAgICAgICBjb2RlOiBzbmlwcGV0c1tmLmNvZGVdIHx8IChzbmlwcGV0c1tmLmNvZGVdID0gbmV3IGNvZGVfMS5fQ29kZShmLmNvZGUpKQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzZUZ1bmMgPSB1c2VGdW5jOwogICAgdmFyIFR5cGU7CiAgICAoZnVuY3Rpb24oVHlwZTIpIHsKICAgICAgVHlwZTJbVHlwZTJbIk51bSJdID0gMF0gPSAiTnVtIjsKICAgICAgVHlwZTJbVHlwZTJbIlN0ciJdID0gMV0gPSAiU3RyIjsKICAgIH0pKFR5cGUgfHwgKGV4cG9ydHMyLlR5cGUgPSBUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldEVycm9yUGF0aChkYXRhUHJvcCwgZGF0YVByb3BUeXBlLCBqc1Byb3BlcnR5U3ludGF4KSB7CiAgICAgIGlmIChkYXRhUHJvcCBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSB7CiAgICAgICAgY29uc3QgaXNOdW1iZXIgPSBkYXRhUHJvcFR5cGUgPT09IFR5cGUuTnVtOwogICAgICAgIHJldHVybiBqc1Byb3BlcnR5U3ludGF4ID8gaXNOdW1iZXIgPyAoMCwgY29kZWdlbl8xLl8pYCJbIiArICR7ZGF0YVByb3B9ICsgIl0iYCA6ICgwLCBjb2RlZ2VuXzEuXylgIlsnIiArICR7ZGF0YVByb3B9ICsgIiddImAgOiBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIi8iICsgJHtkYXRhUHJvcH1gIDogKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfS5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1xcLy9nLCAifjEiKWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyAoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCkudG9TdHJpbmcoKSA6ICIvIiArIGVzY2FwZUpzb25Qb2ludGVyKGRhdGFQcm9wKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVycm9yUGF0aCA9IGdldEVycm9yUGF0aDsKICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0TW9kZShpdCwgbXNnLCBtb2RlID0gaXQub3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgaWYgKCFtb2RlKQogICAgICAgIHJldHVybjsKICAgICAgbXNnID0gYHN0cmljdCBtb2RlOiAke21zZ31gOwogICAgICBpZiAobW9kZSA9PT0gdHJ1ZSkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTsKICAgICAgaXQuc2VsZi5sb2dnZXIud2Fybihtc2cpOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gY2hlY2tTdHJpY3RNb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcwp2YXIgcmVxdWlyZV9uYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzID0gewogICAgICAvLyB2YWxpZGF0aW9uIGZ1bmN0aW9uIGFyZ3VtZW50cwogICAgICBkYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoImRhdGEiKSwKICAgICAgLy8gZGF0YSBwYXNzZWQgdG8gdmFsaWRhdGlvbiBmdW5jdGlvbgogICAgICAvLyBhcmdzIHBhc3NlZCBmcm9tIHJlZmVyZW5jaW5nIHNjaGVtYQogICAgICB2YWxDeHQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidmFsQ3h0IiksCiAgICAgIC8vIHZhbGlkYXRpb24vZGF0YSBjb250ZXh0IC0gc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LCBpdCBpcyBkZXN0cnVjdHVyZWQgdG8gdGhlIG5hbWVzIGJlbG93CiAgICAgIGluc3RhbmNlUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJpbnN0YW5jZVBhdGgiKSwKICAgICAgcGFyZW50RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhIiksCiAgICAgIHBhcmVudERhdGFQcm9wZXJ0eTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhUHJvcGVydHkiKSwKICAgICAgcm9vdERhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicm9vdERhdGEiKSwKICAgICAgLy8gcm9vdCBkYXRhIC0gc2FtZSBhcyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGZpcnN0L3RvcCB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIGR5bmFtaWNBbmNob3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoImR5bmFtaWNBbmNob3JzIiksCiAgICAgIC8vIHVzZWQgdG8gc3VwcG9ydCByZWN1cnNpdmVSZWYgYW5kIGR5bmFtaWNSZWYKICAgICAgLy8gZnVuY3Rpb24gc2NvcGVkIHZhcmlhYmxlcwogICAgICB2RXJyb3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoInZFcnJvcnMiKSwKICAgICAgLy8gbnVsbCBvciBhcnJheSBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICBlcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZXJyb3JzIiksCiAgICAgIC8vIGNvdW50ZXIgb2YgdmFsaWRhdGlvbiBlcnJvcnMKICAgICAgdGhpczogbmV3IGNvZGVnZW5fMS5OYW1lKCJ0aGlzIiksCiAgICAgIC8vICJnbG9iYWxzIgogICAgICBzZWxmOiBuZXcgY29kZWdlbl8xLk5hbWUoInNlbGYiKSwKICAgICAgc2NvcGU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NvcGUiKSwKICAgICAgLy8gSlREIHNlcmlhbGl6ZS9wYXJzZSBuYW1lIGZvciBKU09OIHN0cmluZyBhbmQgcG9zaXRpb24KICAgICAganNvbjogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uIiksCiAgICAgIGpzb25Qb3M6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBvcyIpLAogICAgICBqc29uTGVuOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb25MZW4iKSwKICAgICAganNvblBhcnQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBhcnQiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBuYW1lczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvZXJyb3JzLmpzCnZhciByZXF1aXJlX2Vycm9ycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4cG9ydHMyLnJlc2V0RXJyb3JzQ291bnQgPSBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gZXhwb3J0czIucmVwb3J0RXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgZXhwb3J0czIua2V5d29yZEVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IHBhc3MgIiR7a2V5d29yZH0iIGtleXdvcmQgdmFsaWRhdGlvbmAKICAgIH07CiAgICBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hVHlwZSB9KSA9PiBzY2hlbWFUeXBlID8gKDAsIGNvZGVnZW5fMS5zdHIpYCIke2tleXdvcmR9IiBrZXl3b3JkIG11c3QgYmUgJHtzY2hlbWFUeXBlfSAoJGRhdGEpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAiJHtrZXl3b3JkfSIga2V5d29yZCBpcyBpbnZhbGlkICgkZGF0YSlgCiAgICB9OwogICAgZnVuY3Rpb24gcmVwb3J0RXJyb3IoY3h0LCBlcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciwgZXJyb3JQYXRocywgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBpZiAob3ZlcnJpZGVBbGxFcnJvcnMgIT09IG51bGwgJiYgb3ZlcnJpZGVBbGxFcnJvcnMgIT09IHZvaWQgMCA/IG92ZXJyaWRlQWxsRXJyb3JzIDogY29tcG9zaXRlUnVsZSB8fCBhbGxFcnJvcnMpIHsKICAgICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuRXJyb3JzKGl0LCAoMCwgY29kZWdlbl8xLl8pYFske2Vyck9ian1dYCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydEVycm9yID0gcmVwb3J0RXJyb3I7CiAgICBmdW5jdGlvbiByZXBvcnRFeHRyYUVycm9yKGN4dCwgZXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IsIGVycm9yUGF0aHMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIGlmICghKGNvbXBvc2l0ZVJ1bGUgfHwgYWxsRXJyb3JzKSkgewogICAgICAgIHJldHVybkVycm9ycyhpdCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gcmVwb3J0RXh0cmFFcnJvcjsKICAgIGZ1bmN0aW9uIHJlc2V0RXJyb3JzQ291bnQoZ2VuLCBlcnJzQ291bnQpIHsKICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCBlcnJzQ291bnQpOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSAhPT0gbnVsbGAsICgpID0+IGdlbi5pZihlcnJzQ291bnQsICgpID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5sZW5ndGhgLCBlcnJzQ291bnQpLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCBudWxsKSkpOwogICAgfQogICAgZXhwb3J0czIucmVzZXRFcnJvcnNDb3VudCA9IHJlc2V0RXJyb3JzQ291bnQ7CiAgICBmdW5jdGlvbiBleHRlbmRFcnJvcnMoeyBnZW4sIGtleXdvcmQsIHNjaGVtYVZhbHVlLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0pIHsKICAgICAgaWYgKGVycnNDb3VudCA9PT0gdm9pZCAwKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5uYW1lKCJlcnIiKTsKICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgZXJyc0NvdW50LCBuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoaSkgPT4gewogICAgICAgIGdlbi5jb25zdChlcnIsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc31bJHtpfV1gKTsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uaW5zdGFuY2VQYXRoID09PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9Lmluc3RhbmNlUGF0aGAsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBpdC5lcnJvclBhdGgpKSk7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5zY2hlbWFQYXRoYCwgKDAsIGNvZGVnZW5fMS5zdHIpYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWApOwogICAgICAgIGlmIChpdC5vcHRzLnZlcmJvc2UpIHsKICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uc2NoZW1hYCwgc2NoZW1hVmFsdWUpOwogICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5kYXRhYCwgZGF0YSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4dGVuZEVycm9yczsKICAgIGZ1bmN0aW9uIGFkZEVycm9yKGdlbiwgZXJyT2JqKSB7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5jb25zdCgiZXJyIiwgZXJyT2JqKTsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGxgLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYFske2Vycn1dYCksICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ucHVzaCgke2Vycn0pYCk7CiAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSsrYCk7CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5FcnJvcnMoaXQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSwgc2NoZW1hRW52IH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4udGhyb3coKDAsIGNvZGVnZW5fMS5fKWBuZXcgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KCR7ZXJyc30pYCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBlcnJzKTsKICAgICAgICBnZW4ucmV0dXJuKGZhbHNlKTsKICAgICAgfQogICAgfQogICAgdmFyIEUgPSB7CiAgICAgIGtleXdvcmQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgia2V5d29yZCIpLAogICAgICBzY2hlbWFQYXRoOiBuZXcgY29kZWdlbl8xLk5hbWUoInNjaGVtYVBhdGgiKSwKICAgICAgLy8gYWxzbyB1c2VkIGluIEpURCBlcnJvcnMKICAgICAgcGFyYW1zOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmFtcyIpLAogICAgICBwcm9wZXJ0eU5hbWU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicHJvcGVydHlOYW1lIiksCiAgICAgIG1lc3NhZ2U6IG5ldyBjb2RlZ2VuXzEuTmFtZSgibWVzc2FnZSIpLAogICAgICBzY2hlbWE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NoZW1hIiksCiAgICAgIHBhcmVudFNjaGVtYTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnRTY2hlbWEiKQogICAgfTsKICAgIGZ1bmN0aW9uIGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKSB7CiAgICAgIGNvbnN0IHsgY3JlYXRlRXJyb3JzIH0gPSBjeHQuaXQ7CiAgICAgIGlmIChjcmVhdGVFcnJvcnMgPT09IGZhbHNlKQogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYHt9YDsKICAgICAgcmV0dXJuIGVycm9yT2JqZWN0KGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JPYmplY3QoY3h0LCBlcnJvciwgZXJyb3JQYXRocyA9IHt9KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBrZXlWYWx1ZXMgPSBbCiAgICAgICAgZXJyb3JJbnN0YW5jZVBhdGgoaXQsIGVycm9yUGF0aHMpLAogICAgICAgIGVycm9yU2NoZW1hUGF0aChjeHQsIGVycm9yUGF0aHMpCiAgICAgIF07CiAgICAgIGV4dHJhRXJyb3JQcm9wcyhjeHQsIGVycm9yLCBrZXlWYWx1ZXMpOwogICAgICByZXR1cm4gZ2VuLm9iamVjdCguLi5rZXlWYWx1ZXMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JJbnN0YW5jZVBhdGgoeyBlcnJvclBhdGggfSwgeyBpbnN0YW5jZVBhdGggfSkgewogICAgICBjb25zdCBpbnN0UGF0aCA9IGluc3RhbmNlUGF0aCA/ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShpbnN0YW5jZVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YCA6IGVycm9yUGF0aDsKICAgICAgcmV0dXJuIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgaW5zdFBhdGgpXTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9yU2NoZW1hUGF0aCh7IGtleXdvcmQsIGl0OiB7IGVyclNjaGVtYVBhdGggfSB9LCB7IHNjaGVtYVBhdGgsIHBhcmVudFNjaGVtYSB9KSB7CiAgICAgIGxldCBzY2hQYXRoID0gcGFyZW50U2NoZW1hID8gZXJyU2NoZW1hUGF0aCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2VyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gOwogICAgICBpZiAoc2NoZW1hUGF0aCkgewogICAgICAgIHNjaFBhdGggPSAoMCwgY29kZWdlbl8xLnN0cilgJHtzY2hQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKHNjaGVtYVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YDsKICAgICAgfQogICAgICByZXR1cm4gW0Uuc2NoZW1hUGF0aCwgc2NoUGF0aF07CiAgICB9CiAgICBmdW5jdGlvbiBleHRyYUVycm9yUHJvcHMoY3h0LCB7IHBhcmFtcywgbWVzc2FnZSB9LCBrZXlWYWx1ZXMpIHsKICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFWYWx1ZSwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBvcHRzLCBwcm9wZXJ0eU5hbWUsIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCB9ID0gaXQ7CiAgICAgIGtleVZhbHVlcy5wdXNoKFtFLmtleXdvcmQsIGtleXdvcmRdLCBbRS5wYXJhbXMsIHR5cGVvZiBwYXJhbXMgPT0gImZ1bmN0aW9uIiA/IHBhcmFtcyhjeHQpIDogcGFyYW1zIHx8ICgwLCBjb2RlZ2VuXzEuXylge31gXSk7CiAgICAgIGlmIChvcHRzLm1lc3NhZ2VzKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UubWVzc2FnZSwgdHlwZW9mIG1lc3NhZ2UgPT0gImZ1bmN0aW9uIiA/IG1lc3NhZ2UoY3h0KSA6IG1lc3NhZ2VdKTsKICAgICAgfQogICAgICBpZiAob3B0cy52ZXJib3NlKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0Uuc2NoZW1hLCBzY2hlbWFWYWx1ZV0sIFtFLnBhcmVudFNjaGVtYSwgKDAsIGNvZGVnZW5fMS5fKWAke3RvcFNjaGVtYVJlZn0ke3NjaGVtYVBhdGh9YF0sIFtuYW1lc18xLmRlZmF1bHQuZGF0YSwgZGF0YV0pOwogICAgICB9CiAgICAgIGlmIChwcm9wZXJ0eU5hbWUpCiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UucHJvcGVydHlOYW1lLCBwcm9wZXJ0eU5hbWVdKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcwp2YXIgcmVxdWlyZV9ib29sU2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2Jvb2xTY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gZXhwb3J0czIudG9wQm9vbE9yRW1wdHlTY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgYm9vbEVycm9yID0gewogICAgICBtZXNzYWdlOiAiYm9vbGVhbiBzY2hlbWEgaXMgZmFsc2UiCiAgICB9OwogICAgZnVuY3Rpb24gdG9wQm9vbE9yRW1wdHlTY2hlbWEoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgdmFsaWRhdGVOYW1lIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCwgZmFsc2UpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmIHNjaGVtYTIuJGFzeW5jID09PSB0cnVlKSB7CiAgICAgICAgZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBudWxsKTsKICAgICAgICBnZW4ucmV0dXJuKHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHRvcEJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gYm9vbE9yRW1wdHlTY2hlbWEoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICBnZW4udmFyKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gYm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBmYWxzZVNjaGVtYUVycm9yKGl0LCBvdmVycmlkZUFsbEVycm9ycykgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSB9ID0gaXQ7CiAgICAgIGNvbnN0IGN4dCA9IHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogImZhbHNlIHNjaGVtYSIsCiAgICAgICAgZGF0YSwKICAgICAgICBzY2hlbWE6IGZhbHNlLAogICAgICAgIHNjaGVtYUNvZGU6IGZhbHNlLAogICAgICAgIHNjaGVtYVZhbHVlOiBmYWxzZSwKICAgICAgICBwYXJhbXM6IHt9LAogICAgICAgIGl0CiAgICAgIH07CiAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikoY3h0LCBib29sRXJyb3IsIHZvaWQgMCwgb3ZlcnJpZGVBbGxFcnJvcnMpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcwp2YXIgcmVxdWlyZV9ydWxlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0UnVsZXMgPSBleHBvcnRzMi5pc0pTT05UeXBlID0gdm9pZCAwOwogICAgdmFyIF9qc29uVHlwZXMgPSBbInN0cmluZyIsICJudW1iZXIiLCAiaW50ZWdlciIsICJib29sZWFuIiwgIm51bGwiLCAib2JqZWN0IiwgImFycmF5Il07CiAgICB2YXIganNvblR5cGVzID0gbmV3IFNldChfanNvblR5cGVzKTsKICAgIGZ1bmN0aW9uIGlzSlNPTlR5cGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gInN0cmluZyIgJiYganNvblR5cGVzLmhhcyh4KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSlNPTlR5cGUgPSBpc0pTT05UeXBlOwogICAgZnVuY3Rpb24gZ2V0UnVsZXMoKSB7CiAgICAgIGNvbnN0IGdyb3VwcyA9IHsKICAgICAgICBudW1iZXI6IHsgdHlwZTogIm51bWJlciIsIHJ1bGVzOiBbXSB9LAogICAgICAgIHN0cmluZzogeyB0eXBlOiAic3RyaW5nIiwgcnVsZXM6IFtdIH0sCiAgICAgICAgYXJyYXk6IHsgdHlwZTogImFycmF5IiwgcnVsZXM6IFtdIH0sCiAgICAgICAgb2JqZWN0OiB7IHR5cGU6ICJvYmplY3QiLCBydWxlczogW10gfQogICAgICB9OwogICAgICByZXR1cm4gewogICAgICAgIHR5cGVzOiB7IC4uLmdyb3VwcywgaW50ZWdlcjogdHJ1ZSwgYm9vbGVhbjogdHJ1ZSwgbnVsbDogdHJ1ZSB9LAogICAgICAgIHJ1bGVzOiBbeyBydWxlczogW10gfSwgZ3JvdXBzLm51bWJlciwgZ3JvdXBzLnN0cmluZywgZ3JvdXBzLmFycmF5LCBncm91cHMub2JqZWN0XSwKICAgICAgICBwb3N0OiB7IHJ1bGVzOiBbXSB9LAogICAgICAgIGFsbDoge30sCiAgICAgICAga2V5d29yZHM6IHt9CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5nZXRSdWxlcyA9IGdldFJ1bGVzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9hcHBsaWNhYmlsaXR5LmpzCnZhciByZXF1aXJlX2FwcGxpY2FiaWxpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNGb3JUeXBlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNGb3JUeXBlKHsgc2NoZW1hOiBzY2hlbWEyLCBzZWxmOiBzZWxmMiB9LCB0eXBlMikgewogICAgICBjb25zdCBncm91cCA9IHNlbGYyLlJVTEVTLnR5cGVzW3R5cGUyXTsKICAgICAgcmV0dXJuIGdyb3VwICYmIGdyb3VwICE9PSB0cnVlICYmIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHNjaGVtYUhhc1J1bGVzRm9yVHlwZTsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cC5ydWxlcy5zb21lKChydWxlKSA9PiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gc2hvdWxkVXNlR3JvdXA7CiAgICBmdW5jdGlvbiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpIHsKICAgICAgdmFyIF9hOwogICAgICByZXR1cm4gc2NoZW1hMltydWxlLmtleXdvcmRdICE9PSB2b2lkIDAgfHwgKChfYSA9IHJ1bGUuZGVmaW5pdGlvbi5pbXBsZW1lbnRzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc29tZSgoa3dkKSA9PiBzY2hlbWEyW2t3ZF0gIT09IHZvaWQgMCkpOwogICAgfQogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IHNob3VsZFVzZVJ1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzCnZhciByZXF1aXJlX2RhdGFUeXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSBleHBvcnRzMi5jaGVja0RhdGFUeXBlcyA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5jb2VyY2VBbmRDaGVja0RhdGFUeXBlID0gZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZXhwb3J0czIuZ2V0U2NoZW1hVHlwZXMgPSBleHBvcnRzMi5EYXRhVHlwZSA9IHZvaWQgMDsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGFwcGxpY2FiaWxpdHlfMSA9IHJlcXVpcmVfYXBwbGljYWJpbGl0eSgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBEYXRhVHlwZTsKICAgIChmdW5jdGlvbihEYXRhVHlwZTIpIHsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiQ29ycmVjdCJdID0gMF0gPSAiQ29ycmVjdCI7CiAgICAgIERhdGFUeXBlMltEYXRhVHlwZTJbIldyb25nIl0gPSAxXSA9ICJXcm9uZyI7CiAgICB9KShEYXRhVHlwZSB8fCAoZXhwb3J0czIuRGF0YVR5cGUgPSBEYXRhVHlwZSA9IHt9KSk7CiAgICBmdW5jdGlvbiBnZXRTY2hlbWFUeXBlcyhzY2hlbWEyKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gZ2V0SlNPTlR5cGVzKHNjaGVtYTIudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEyLm51bGxhYmxlID09PSBmYWxzZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZTogbnVsbCBjb250cmFkaWN0cyBudWxsYWJsZTogZmFsc2UiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoIXR5cGVzLmxlbmd0aCAmJiBzY2hlbWEyLm51bGxhYmxlICE9PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignIm51bGxhYmxlIiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0ICJ0eXBlIicpOwogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1hMi5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYTogc2NoZW1hMiB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYTJ9YCwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYVZhbHVlIH0pID0+IHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciID8gKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWEyfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYTIsICJ0eXBlIik7CiAgICAgIHJldHVybiB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJ0eXBlIiwKICAgICAgICBkYXRhLAogICAgICAgIHNjaGVtYTogc2NoZW1hMi50eXBlLAogICAgICAgIHNjaGVtYUNvZGUsCiAgICAgICAgc2NoZW1hVmFsdWU6IHNjaGVtYUNvZGUsCiAgICAgICAgcGFyZW50U2NoZW1hOiBzY2hlbWEyLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMKdmFyIHJlcXVpcmVfZGVmYXVsdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFzc2lnbkRlZmF1bHRzID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdHMoaXQsIHR5KSB7CiAgICAgIGNvbnN0IHsgcHJvcGVydGllcywgaXRlbXMgfSA9IGl0LnNjaGVtYTsKICAgICAgaWYgKHR5ID09PSAib2JqZWN0IiAmJiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykgewogICAgICAgICAgYXNzaWduRGVmYXVsdChpdCwga2V5LCBwcm9wZXJ0aWVzW2tleV0uZGVmYXVsdCk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKHR5ID09PSAiYXJyYXkiICYmIEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgaXRlbXMuZm9yRWFjaCgoc2NoLCBpKSA9PiBhc3NpZ25EZWZhdWx0KGl0LCBpLCBzY2guZGVmYXVsdCkpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IGFzc2lnbkRlZmF1bHRzOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdChpdCwgcHJvcCwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBkYXRhLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKGRlZmF1bHRWYWx1ZSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgY2hpbGREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wKX1gOwogICAgICBpZiAoY29tcG9zaXRlUnVsZSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYGRlZmF1bHQgaXMgaWdub3JlZCBmb3I6ICR7Y2hpbGREYXRhfWApOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBsZXQgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NoaWxkRGF0YX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIGlmIChvcHRzLnVzZURlZmF1bHRzID09PSAiZW1wdHkiKSB7CiAgICAgICAgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmRpdGlvbn0gfHwgJHtjaGlsZERhdGF9ID09PSBudWxsIHx8ICR7Y2hpbGREYXRhfSA9PT0gIiJgOwogICAgICB9CiAgICAgIGdlbi5pZihjb25kaXRpb24sICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID0gJHsoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoZGVmYXVsdFZhbHVlKX1gKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IGV4cG9ydHMyLnZhbGlkYXRlQXJyYXkgPSBleHBvcnRzMi51c2VQYXR0ZXJuID0gZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IGV4cG9ydHMyLnByb3BlcnR5SW5EYXRhID0gZXhwb3J0czIuaXNPd25Qcm9wZXJ0eSA9IGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcChjeHQsIHByb3ApIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6ICgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wfWAgfSwgdHJ1ZSk7CiAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IGNoZWNrUmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBjaGVja01pc3NpbmdQcm9wKHsgZ2VuLCBkYXRhLCBpdDogeyBvcHRzIH0gfSwgcHJvcGVydGllcywgbWlzc2luZykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5vcikoLi4ucHJvcGVydGllcy5tYXAoKHByb3ApID0+ICgwLCBjb2RlZ2VuXzEuYW5kKShub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKDAsIGNvZGVnZW5fMS5fKWAke21pc3Npbmd9ID0gJHtwcm9wfWApKSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gY2hlY2tNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIHJlcG9ydE1pc3NpbmdQcm9wKGN4dCwgbWlzc2luZykgewogICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0sIHRydWUpOwogICAgICBjeHQuZXJyb3IoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydE1pc3NpbmdQcm9wID0gcmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBoYXNQcm9wRnVuYyhnZW4pIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2QKICAgICAgICByZWY6IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5YAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gaGFzUHJvcEZ1bmM7CiAgICBmdW5jdGlvbiBpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wRnVuYyhnZW4pfS5jYWxsKCR7ZGF0YX0sICR7cHJvcGVydHl9KWA7CiAgICB9CiAgICBleHBvcnRzMi5pc093blByb3BlcnR5ID0gaXNPd25Qcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIHByb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcGVydHksIG93blByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcGVydHkpfSAhPT0gdW5kZWZpbmVkYDsKICAgICAgcmV0dXJuIG93blByb3BlcnRpZXMgPyAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpfWAgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBwcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ID09PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEub3IpKGNvbmQsICgwLCBjb2RlZ2VuXzEubm90KShpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpKSkgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IG5vUHJvcGVydHlJbkRhdGE7CiAgICBmdW5jdGlvbiBhbGxTY2hlbWFQcm9wZXJ0aWVzKHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gc2NoZW1hTWFwID8gT2JqZWN0LmtleXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+IHAgIT09ICJfX3Byb3RvX18iKSA6IFtdOwogICAgfQogICAgZXhwb3J0czIuYWxsU2NoZW1hUHJvcGVydGllcyA9IGFsbFNjaGVtYVByb3BlcnRpZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFQcm9wZXJ0aWVzKGl0LCBzY2hlbWFNYXApIHsKICAgICAgcmV0dXJuIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+ICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hTWFwW3BdKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFQcm9wZXJ0aWVzID0gc2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZUNvZGUoeyBzY2hlbWFDb2RlLCBkYXRhLCBpdDogeyBnZW4sIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCwgZXJyb3JQYXRoIH0sIGl0IH0sIGZ1bmMsIGNvbnRleHQsIHBhc3NTY2hlbWEpIHsKICAgICAgY29uc3QgZGF0YUFuZFNjaGVtYSA9IHBhc3NTY2hlbWEgPyAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0sICR7ZGF0YX0sICR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gIDogZGF0YTsKICAgICAgY29uc3QgdmFsQ3h0ID0gWwogICAgICAgIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgZXJyb3JQYXRoKV0sCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCBpdC5wYXJlbnREYXRhXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgaXQucGFyZW50RGF0YVByb3BlcnR5XSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQucm9vdERhdGFdCiAgICAgIF07CiAgICAgIGlmIChpdC5vcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgdmFsQ3h0LnB1c2goW25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzXSk7CiAgICAgIGNvbnN0IGFyZ3MgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YUFuZFNjaGVtYX0sICR7Z2VuLm9iamVjdCguLi52YWxDeHQpfWA7CiAgICAgIHJldHVybiBjb250ZXh0ICE9PSBjb2RlZ2VuXzEubmlsID8gKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9LmNhbGwoJHtjb250ZXh0fSwgJHthcmdzfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9KCR7YXJnc30pYDsKICAgIH0KICAgIGV4cG9ydHMyLmNhbGxWYWxpZGF0ZUNvZGUgPSBjYWxsVmFsaWRhdGVDb2RlOwogICAgdmFyIG5ld1JlZ0V4cCA9ICgwLCBjb2RlZ2VuXzEuXylgbmV3IFJlZ0V4cGA7CiAgICBmdW5jdGlvbiB1c2VQYXR0ZXJuKHsgZ2VuLCBpdDogeyBvcHRzIH0gfSwgcGF0dGVybikgewogICAgICBjb25zdCB1ID0gb3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgIGNvbnN0IHsgcmVnRXhwIH0gPSBvcHRzLmNvZGU7CiAgICAgIGNvbnN0IHJ4ID0gcmVnRXhwKHBhdHRlcm4sIHUpOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoInBhdHRlcm4iLCB7CiAgICAgICAga2V5OiByeC50b1N0cmluZygpLAogICAgICAgIHJlZjogcngsCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWAke3JlZ0V4cC5jb2RlID09PSAibmV3IFJlZ0V4cCIgPyBuZXdSZWdFeHAgOiAoMCwgdXRpbF8yLnVzZUZ1bmMpKGdlbiwgcmVnRXhwKX0oJHtwYXR0ZXJufSwgJHt1fSlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlUGF0dGVybiA9IHVzZVBhdHRlcm47CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUFycmF5KGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgIGNvbnN0IHZhbGlkQXJyID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5hc3NpZ24odmFsaWRBcnIsIGZhbHNlKSk7CiAgICAgICAgcmV0dXJuIHZhbGlkQXJyOwogICAgICB9CiAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5icmVhaygpKTsKICAgICAgcmV0dXJuIHZhbGlkOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKG5vdFZhbGlkKSB7CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQsCiAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bQogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksIG5vdFZhbGlkKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IHZhbGlkYXRlQXJyYXk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaW9uKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgY29uc3QgYWx3YXlzVmFsaWQgPSBzY2hlbWEyLnNvbWUoKHNjaCkgPT4gKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpOwogICAgICBpZiAoYWx3YXlzVmFsaWQgJiYgIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHNjaGVtYTIuZm9yRWFjaCgoX3NjaCwgaSkgPT4gewogICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZCwKICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZH0gfHwgJHtzY2hWYWxpZH1gKTsKICAgICAgICBjb25zdCBtZXJnZWQgPSBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHNjaFZhbGlkKTsKICAgICAgICBpZiAoIW1lcmdlZCkKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpKTsKICAgICAgfSkpOwogICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlVW5pb24gPSB2YWxpZGF0ZVVuaW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9rZXl3b3JkLmpzCnZhciByZXF1aXJlX2tleXdvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpOwogICAgICBjb25zdCBzY2hlbWFSZWYgPSB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgbWFjcm9TY2hlbWEpOwogICAgICBpZiAoaXQub3B0cy52YWxpZGF0ZVNjaGVtYSAhPT0gZmFsc2UpCiAgICAgICAgaXQuc2VsZi52YWxpZGF0ZVNjaGVtYShtYWNyb1NjaGVtYSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgIHNjaGVtYTogbWFjcm9TY2hlbWEsCiAgICAgICAgc2NoZW1hUGF0aDogY29kZWdlbl8xLm5pbCwKICAgICAgICBlcnJTY2hlbWFQYXRoOiBgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YCwKICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaGVtYVJlZiwKICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgIH0sIHZhbGlkKTsKICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gbWFjcm9LZXl3b3JkQ29kZTsKICAgIGZ1bmN0aW9uIGZ1bmNLZXl3b3JkQ29kZShjeHQsIGRlZikgewogICAgICB2YXIgX2E7CiAgICAgIGNvbnN0IHsgZ2VuLCBrZXl3b3JkLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgJGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGNoZWNrQXN5bmNLZXl3b3JkKGl0LCBkZWYpOwogICAgICBjb25zdCB2YWxpZGF0ZSA9ICEkZGF0YSAmJiBkZWYuY29tcGlsZSA/IGRlZi5jb21waWxlLmNhbGwoaXQuc2VsZiwgc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCkgOiBkZWYudmFsaWRhdGU7CiAgICAgIGNvbnN0IHZhbGlkYXRlUmVmID0gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHZhbGlkYXRlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgdmFsaWRhdGVLZXl3b3JkKTsKICAgICAgY3h0Lm9rKChfYSA9IGRlZi52YWxpZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsaWQpOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUtleXdvcmQoKSB7CiAgICAgICAgaWYgKGRlZi5lcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICBhc3NpZ25WYWxpZCgpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBydWxlRXJycyA9IGRlZi5hc3luYyA/IHZhbGlkYXRlQXN5bmMoKSA6IHZhbGlkYXRlU3luYygpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gYWRkRXJycyhjeHQsIHJ1bGVFcnJzKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlQXN5bmMoKSB7CiAgICAgICAgY29uc3QgcnVsZUVycnMgPSBnZW4ubGV0KCJydWxlRXJycyIsIG51bGwpOwogICAgICAgIGdlbi50cnkoKCkgPT4gYXNzaWduVmFsaWQoKDAsIGNvZGVnZW5fMS5fKWBhd2FpdCBgKSwgKGUpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZX0gaW5zdGFuY2VvZiAke2l0LlZhbGlkYXRpb25FcnJvcn1gLCAoKSA9PiBnZW4uYXNzaWduKHJ1bGVFcnJzLCAoMCwgY29kZWdlbl8xLl8pYCR7ZX0uZXJyb3JzYCksICgpID0+IGdlbi50aHJvdyhlKSkpOwogICAgICAgIHJldHVybiBydWxlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZVN5bmMoKSB7CiAgICAgICAgY29uc3QgdmFsaWRhdGVFcnJzID0gKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlUmVmfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWRhdGVFcnJzLCBudWxsKTsKICAgICAgICBhc3NpZ25WYWxpZChjb2RlZ2VuXzEubmlsKTsKICAgICAgICByZXR1cm4gdmFsaWRhdGVFcnJzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFzc2lnblZhbGlkKF9hd2FpdCA9IGRlZi5hc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCA6IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBjb25zdCBwYXNzQ3h0ID0gaXQub3B0cy5wYXNzQ29udGV4dCA/IG5hbWVzXzEuZGVmYXVsdC50aGlzIDogbmFtZXNfMS5kZWZhdWx0LnNlbGY7CiAgICAgICAgY29uc3QgcGFzc1NjaGVtYSA9ICEoImNvbXBpbGUiIGluIGRlZiAmJiAhJGRhdGEgfHwgZGVmLnNjaGVtYSA9PT0gZmFsc2UpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHtfYXdhaXR9JHsoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdmFsaWRhdGVSZWYsIHBhc3NDeHQsIHBhc3NTY2hlbWEpfWAsIGRlZi5tb2RpZnlpbmcpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlcG9ydEVycnMoZXJyb3JzKSB7CiAgICAgICAgdmFyIF9hMjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKChfYTIgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hMiAhPT0gdm9pZCAwID8gX2EyIDogdmFsaWQpLCBlcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBmdW5jS2V5d29yZENvZGU7CiAgICBmdW5jdGlvbiBtb2RpZnlEYXRhKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgZ2VuLmlmKGl0LnBhcmVudERhdGEsICgpID0+IGdlbi5hc3NpZ24oZGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LnBhcmVudERhdGF9WyR7aXQucGFyZW50RGF0YVByb3BlcnR5fV1gKSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFcnJzKGN4dCwgZXJycykgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWBBcnJheS5pc0FycmF5KCR7ZXJyc30pYCwgKCkgPT4gewogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCkuYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCk7CiAgICAgICAgKDAsIGVycm9yc18xLmV4dGVuZEVycm9ycykoY3h0KTsKICAgICAgfSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY0tleXdvcmQoeyBzY2hlbWFFbnYgfSwgZGVmKSB7CiAgICAgIGlmIChkZWYuYXN5bmMgJiYgIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhc3luYyBrZXl3b3JkIGluIHN5bmMgc2NoZW1hIik7CiAgICB9CiAgICBmdW5jdGlvbiB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgcmVzdWx0KSB7CiAgICAgIGlmIChyZXN1bHQgPT09IHZvaWQgMCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGtleXdvcmQgIiR7a2V5d29yZH0iIGZhaWxlZCB0byBjb21waWxlYCk7CiAgICAgIHJldHVybiBnZW4uc2NvcGVWYWx1ZSgia2V5d29yZCIsIHR5cGVvZiByZXN1bHQgPT0gImZ1bmN0aW9uIiA/IHsgcmVmOiByZXN1bHQgfSA6IHsgcmVmOiByZXN1bHQsIGNvZGU6ICgwLCBjb2RlZ2VuXzEuc3RyaW5naWZ5KShyZXN1bHQpIH0pOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRTY2hlbWFUeXBlKHNjaGVtYTIsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hMikgOiBzdCA9PT0gIm9iamVjdCIgPyBzY2hlbWEyICYmIHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYTIpIDogdHlwZW9mIHNjaGVtYTIgPT0gc3QgfHwgYWxsb3dVbmRlZmluZWQgJiYgdHlwZW9mIHNjaGVtYTIgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWE6IHNjaGVtYTIsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYTIsIGt3ZCkpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJlbnQgc2NoZW1hIG11c3QgaGF2ZSBkZXBlbmRlbmNpZXMgb2YgJHtrZXl3b3JkfTogJHtkZXBzLmpvaW4oIiwiKX1gKTsKICAgICAgfQogICAgICBpZiAoZGVmLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgY29uc3QgdmFsaWQgPSBkZWYudmFsaWRhdGVTY2hlbWEoc2NoZW1hMltrZXl3b3JkXSk7CiAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgY29uc3QgbXNnID0gYGtleXdvcmQgIiR7a2V5d29yZH0iIHZhbHVlIGlzIGludmFsaWQgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSI6IGAgKyBzZWxmMi5lcnJvcnNUZXh0KGRlZi52YWxpZGF0ZVNjaGVtYS5lcnJvcnMpOwogICAgICAgICAgaWYgKG9wdHMudmFsaWRhdGVTY2hlbWEgPT09ICJsb2ciKQogICAgICAgICAgICBzZWxmMi5sb2dnZXIuZXJyb3IobXNnKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUtleXdvcmRVc2FnZSA9IHZhbGlkYXRlS2V5d29yZFVzYWdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMKdmFyIHJlcXVpcmVfc3Vic2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL3N1YnNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4cG9ydHMyLmV4dGVuZFN1YnNjaGVtYURhdGEgPSBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICBmdW5jdGlvbiBnZXRTdWJzY2hlbWEoaXQsIHsga2V5d29yZCwgc2NoZW1hUHJvcCwgc2NoZW1hOiBzY2hlbWEyLCBzY2hlbWFQYXRoLCBlcnJTY2hlbWFQYXRoLCB0b3BTY2hlbWFSZWYgfSkgewogICAgICBpZiAoa2V5d29yZCAhPT0gdm9pZCAwICYmIHNjaGVtYTIgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAia2V5d29yZCIgYW5kICJzY2hlbWEiIHBhc3NlZCwgb25seSBvbmUgYWxsb3dlZCcpOwogICAgICB9CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2ggPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgcmV0dXJuIHNjaGVtYVByb3AgPT09IHZvaWQgMCA/IHsKICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX1gLAogICAgICAgICAgZXJyU2NoZW1hUGF0aDogYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWAKICAgICAgICB9IDogewogICAgICAgICAgc2NoZW1hOiBzY2hbc2NoZW1hUHJvcF0sCiAgICAgICAgICBzY2hlbWFQYXRoOiAoMCwgY29kZWdlbl8xLl8pYCR7aXQuc2NoZW1hUGF0aH0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGtleXdvcmQpfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hUHJvcCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH0vJHsoMCwgdXRpbF8xLmVzY2FwZUZyYWdtZW50KShzY2hlbWFQcm9wKX1gCiAgICAgICAgfTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCBlcnJTY2hlbWFQYXRoID09PSB2b2lkIDAgfHwgdG9wU2NoZW1hUmVmID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignInNjaGVtYVBhdGgiLCAiZXJyU2NoZW1hUGF0aCIgYW5kICJ0b3BTY2hlbWFSZWYiIGFyZSByZXF1aXJlZCB3aXRoICJzY2hlbWEiJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzY2hlbWE6IHNjaGVtYTIsCiAgICAgICAgICBzY2hlbWFQYXRoLAogICAgICAgICAgdG9wU2NoZW1hUmVmLAogICAgICAgICAgZXJyU2NoZW1hUGF0aAogICAgICAgIH07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCdlaXRoZXIgImtleXdvcmQiIG9yICJzY2hlbWEiIG11c3QgYmUgcGFzc2VkJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSBnZXRTdWJzY2hlbWE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFEYXRhKHN1YnNjaGVtYSwgaXQsIHsgZGF0YVByb3AsIGRhdGFQcm9wVHlwZTogZHBUeXBlLCBkYXRhLCBkYXRhVHlwZXMsIHByb3BlcnR5TmFtZSB9KSB7CiAgICAgIGlmIChkYXRhICE9PSB2b2lkIDAgJiYgZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAiZGF0YSIgYW5kICJkYXRhUHJvcCIgcGFzc2VkLCBvbmx5IG9uZSBhbGxvd2VkJyk7CiAgICAgIH0KICAgICAgY29uc3QgeyBnZW4gfSA9IGl0OwogICAgICBpZiAoZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHsgZXJyb3JQYXRoLCBkYXRhUGF0aEFyciwgb3B0cyB9ID0gaXQ7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBnZW4ubGV0KCJkYXRhIiwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LmRhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCl9YCwgdHJ1ZSk7CiAgICAgICAgZGF0YUNvbnRleHRQcm9wcyhuZXh0RGF0YSk7CiAgICAgICAgc3Vic2NoZW1hLmVycm9yUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShkYXRhUHJvcCwgZHBUeXBlLCBvcHRzLmpzUHJvcGVydHlTeW50YXgpfWA7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhUHJvcH1gOwogICAgICAgIHN1YnNjaGVtYS5kYXRhUGF0aEFyciA9IFsuLi5kYXRhUGF0aEFyciwgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IG5leHREYXRhID0gZGF0YSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gZGF0YSA6IGdlbi5sZXQoImRhdGEiLCBkYXRhLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBpZiAocHJvcGVydHlOYW1lICE9PSB2b2lkIDApCiAgICAgICAgICBzdWJzY2hlbWEucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lOwogICAgICB9CiAgICAgIGlmIChkYXRhVHlwZXMpCiAgICAgICAgc3Vic2NoZW1hLmRhdGFUeXBlcyA9IGRhdGFUeXBlczsKICAgICAgZnVuY3Rpb24gZGF0YUNvbnRleHRQcm9wcyhfbmV4dERhdGEpIHsKICAgICAgICBzdWJzY2hlbWEuZGF0YSA9IF9uZXh0RGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YUxldmVsID0gaXQuZGF0YUxldmVsICsgMTsKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gW107CiAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHN1YnNjaGVtYS5wYXJlbnREYXRhID0gaXQuZGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YU5hbWVzID0gWy4uLml0LmRhdGFOYW1lcywgX25leHREYXRhXTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4dGVuZFN1YnNjaGVtYURhdGE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFNb2RlKHN1YnNjaGVtYSwgeyBqdGREaXNjcmltaW5hdG9yLCBqdGRNZXRhZGF0YSwgY29tcG9zaXRlUnVsZSwgY3JlYXRlRXJyb3JzLCBhbGxFcnJvcnMgfSkgewogICAgICBpZiAoY29tcG9zaXRlUnVsZSAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jb21wb3NpdGVSdWxlID0gY29tcG9zaXRlUnVsZTsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jcmVhdGVFcnJvcnMgPSBjcmVhdGVFcnJvcnM7CiAgICAgIGlmIChhbGxFcnJvcnMgIT09IHZvaWQgMCkKICAgICAgICBzdWJzY2hlbWEuYWxsRXJyb3JzID0gYWxsRXJyb3JzOwogICAgICBzdWJzY2hlbWEuanRkRGlzY3JpbWluYXRvciA9IGp0ZERpc2NyaW1pbmF0b3I7CiAgICAgIHN1YnNjaGVtYS5qdGRNZXRhZGF0YSA9IGp0ZE1ldGFkYXRhOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4dGVuZFN1YnNjaGVtYU1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtZGVlcC1lcXVhbC1ucG0tMy4xLjMtNzkwZWRjZmNmNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtZGVlcC1lcXVhbC9pbmRleC5qcwp2YXIgcmVxdWlyZV9mYXN0X2RlZXBfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC1kZWVwLWVxdWFsLW5wbS0zLjEuMy03OTBlZGNmY2Y1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gZXF1YWwoYSwgYikgewogICAgICBpZiAoYSA9PT0gYikgcmV0dXJuIHRydWU7CiAgICAgIGlmIChhICYmIGIgJiYgdHlwZW9mIGEgPT0gIm9iamVjdCIgJiYgdHlwZW9mIGIgPT0gIm9iamVjdCIpIHsKICAgICAgICBpZiAoYS5jb25zdHJ1Y3RvciAhPT0gYi5jb25zdHJ1Y3RvcikgcmV0dXJuIGZhbHNlOwogICAgICAgIHZhciBsZW5ndGgsIGksIGtleXM7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHsKICAgICAgICAgIGxlbmd0aCA9IGEubGVuZ3RoOwogICAgICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgICAgaWYgKCFlcXVhbChhW2ldLCBiW2ldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGlmIChhLmNvbnN0cnVjdG9yID09PSBSZWdFeHApIHJldHVybiBhLnNvdXJjZSA9PT0gYi5zb3VyY2UgJiYgYS5mbGFncyA9PT0gYi5mbGFnczsKICAgICAgICBpZiAoYS52YWx1ZU9mICE9PSBPYmplY3QucHJvdG90eXBlLnZhbHVlT2YpIHJldHVybiBhLnZhbHVlT2YoKSA9PT0gYi52YWx1ZU9mKCk7CiAgICAgICAgaWYgKGEudG9TdHJpbmcgIT09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcpIHJldHVybiBhLnRvU3RyaW5nKCkgPT09IGIudG9TdHJpbmcoKTsKICAgICAgICBrZXlzID0gT2JqZWN0LmtleXMoYSk7CiAgICAgICAgbGVuZ3RoID0ga2V5cy5sZW5ndGg7CiAgICAgICAgaWYgKGxlbmd0aCAhPT0gT2JqZWN0LmtleXMoYikubGVuZ3RoKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIGtleXNbaV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkgewogICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07CiAgICAgICAgICBpZiAoIWVxdWFsKGFba2V5XSwgYltrZXldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gYSAhPT0gYSAmJiBiICE9PSBiOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbi1zY2hlbWEtdHJhdmVyc2UtbnBtLTEuMC4wLWZiMzY4NGY0ZjAtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uLXNjaGVtYS10cmF2ZXJzZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb24tc2NoZW1hLXRyYXZlcnNlL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHRyYXZlcnNlID0gbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24oc2NoZW1hMiwgb3B0cywgY2IpIHsKICAgICAgaWYgKHR5cGVvZiBvcHRzID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjYiA9IG9wdHM7CiAgICAgICAgb3B0cyA9IHt9OwogICAgICB9CiAgICAgIGNiID0gb3B0cy5jYiB8fCBjYjsKICAgICAgdmFyIHByZSA9IHR5cGVvZiBjYiA9PSAiZnVuY3Rpb24iID8gY2IgOiBjYi5wcmUgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIHZhciBwb3N0ID0gY2IucG9zdCB8fCBmdW5jdGlvbigpIHsKICAgICAgfTsKICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwgIiIsIHNjaGVtYTIpOwogICAgfTsKICAgIHRyYXZlcnNlLmtleXdvcmRzID0gewogICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBjb250YWluczogdHJ1ZSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgIHByb3BlcnR5TmFtZXM6IHRydWUsCiAgICAgIG5vdDogdHJ1ZSwKICAgICAgaWY6IHRydWUsCiAgICAgIHRoZW46IHRydWUsCiAgICAgIGVsc2U6IHRydWUKICAgIH07CiAgICB0cmF2ZXJzZS5hcnJheUtleXdvcmRzID0gewogICAgICBpdGVtczogdHJ1ZSwKICAgICAgYWxsT2Y6IHRydWUsCiAgICAgIGFueU9mOiB0cnVlLAogICAgICBvbmVPZjogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnByb3BzS2V5d29yZHMgPSB7CiAgICAgICRkZWZzOiB0cnVlLAogICAgICBkZWZpbml0aW9uczogdHJ1ZSwKICAgICAgcHJvcGVydGllczogdHJ1ZSwKICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgIGRlcGVuZGVuY2llczogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnNraXBLZXl3b3JkcyA9IHsKICAgICAgZGVmYXVsdDogdHJ1ZSwKICAgICAgZW51bTogdHJ1ZSwKICAgICAgY29uc3Q6IHRydWUsCiAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICBtYXhpbXVtOiB0cnVlLAogICAgICBtaW5pbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNYXhpbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNaW5pbXVtOiB0cnVlLAogICAgICBtdWx0aXBsZU9mOiB0cnVlLAogICAgICBtYXhMZW5ndGg6IHRydWUsCiAgICAgIG1pbkxlbmd0aDogdHJ1ZSwKICAgICAgcGF0dGVybjogdHJ1ZSwKICAgICAgZm9ybWF0OiB0cnVlLAogICAgICBtYXhJdGVtczogdHJ1ZSwKICAgICAgbWluSXRlbXM6IHRydWUsCiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLAogICAgICBtYXhQcm9wZXJ0aWVzOiB0cnVlLAogICAgICBtaW5Qcm9wZXJ0aWVzOiB0cnVlCiAgICB9OwogICAgZnVuY3Rpb24gX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwganNvblB0ciwgcm9vdFNjaGVtYSwgcGFyZW50SnNvblB0ciwgcGFyZW50S2V5d29yZCwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCkgewogICAgICBpZiAoc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheShzY2hlbWEyKSkgewogICAgICAgIHByZShzY2hlbWEyLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hMikgewogICAgICAgICAgdmFyIHNjaCA9IHNjaGVtYTJba2V5XTsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgaWYgKGtleSBpbiB0cmF2ZXJzZS5hcnJheUtleXdvcmRzKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspCiAgICAgICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hbaV0sIGpzb25QdHIgKyAiLyIgKyBrZXkgKyAiLyIgKyBpLCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEyLCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gdHJhdmVyc2Uua2V5d29yZHMgfHwgb3B0cy5hbGxLZXlzICYmICEoa2V5IGluIHRyYXZlcnNlLnNraXBLZXl3b3JkcykpIHsKICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoLCBqc29uUHRyICsgIi8iICsga2V5LCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwb3N0KHNjaGVtYTIsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3Jlc29sdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdldFNjaGVtYVJlZnMgPSBleHBvcnRzMi5yZXNvbHZlVXJsID0gZXhwb3J0czIubm9ybWFsaXplSWQgPSBleHBvcnRzMi5fZ2V0RnVsbFBhdGggPSBleHBvcnRzMi5nZXRGdWxsUGF0aCA9IGV4cG9ydHMyLmlubGluZVJlZiA9IHZvaWQgMDsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICB2YXIgdHJhdmVyc2UgPSByZXF1aXJlX2pzb25fc2NoZW1hX3RyYXZlcnNlKCk7CiAgICB2YXIgU0lNUExFX0lOTElORUQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ0eXBlIiwKICAgICAgImZvcm1hdCIsCiAgICAgICJwYXR0ZXJuIiwKICAgICAgIm1heExlbmd0aCIsCiAgICAgICJtaW5MZW5ndGgiLAogICAgICAibWF4UHJvcGVydGllcyIsCiAgICAgICJtaW5Qcm9wZXJ0aWVzIiwKICAgICAgIm1heEl0ZW1zIiwKICAgICAgIm1pbkl0ZW1zIiwKICAgICAgIm1heGltdW0iLAogICAgICAibWluaW11bSIsCiAgICAgICJ1bmlxdWVJdGVtcyIsCiAgICAgICJtdWx0aXBsZU9mIiwKICAgICAgInJlcXVpcmVkIiwKICAgICAgImVudW0iLAogICAgICAiY29uc3QiCiAgICBdKTsKICAgIGZ1bmN0aW9uIGlubGluZVJlZihzY2hlbWEyLCBsaW1pdCA9IHRydWUpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGxpbWl0ID09PSB0cnVlKQogICAgICAgIHJldHVybiAhaGFzUmVmKHNjaGVtYTIpOwogICAgICBpZiAoIWxpbWl0KQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIGNvdW50S2V5cyhzY2hlbWEyKSA8PSBsaW1pdDsKICAgIH0KICAgIGV4cG9ydHMyLmlubGluZVJlZiA9IGlubGluZVJlZjsKICAgIHZhciBSRUZfS0VZV09SRFMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICIkcmVmIiwKICAgICAgIiRyZWN1cnNpdmVSZWYiLAogICAgICAiJHJlY3Vyc2l2ZUFuY2hvciIsCiAgICAgICIkZHluYW1pY1JlZiIsCiAgICAgICIkZHluYW1pY0FuY2hvciIKICAgIF0pOwogICAgZnVuY3Rpb24gaGFzUmVmKHNjaGVtYTIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmIChSRUZfS0VZV09SRFMuaGFzKGtleSkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2tleV07CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSAmJiBzY2guc29tZShoYXNSZWYpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIgJiYgaGFzUmVmKHNjaCkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBjb3VudEtleXMoc2NoZW1hMikgewogICAgICBsZXQgY291bnQgPSAwOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIiRyZWYiKQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICAgIGNvdW50Kys7CiAgICAgICAgaWYgKFNJTVBMRV9JTkxJTkVELmhhcyhrZXkpKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgICgwLCB1dGlsXzEuZWFjaEl0ZW0pKHNjaGVtYTJba2V5XSwgKHNjaCkgPT4gY291bnQgKz0gY291bnRLZXlzKHNjaCkpOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgPT09IEluZmluaXR5KQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBjb3VudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEZ1bGxQYXRoKHJlc29sdmVyLCBpZCA9ICIiLCBub3JtYWxpemUpIHsKICAgICAgaWYgKG5vcm1hbGl6ZSAhPT0gZmFsc2UpCiAgICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIGNvbnN0IHAgPSByZXNvbHZlci5wYXJzZShpZCk7CiAgICAgIHJldHVybiBfZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIHApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBnZXRGdWxsUGF0aDsKICAgIGZ1bmN0aW9uIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCkgewogICAgICBjb25zdCBzZXJpYWxpemVkID0gcmVzb2x2ZXIuc2VyaWFsaXplKHApOwogICAgICByZXR1cm4gc2VyaWFsaXplZC5zcGxpdCgiIyIpWzBdICsgIiMiOwogICAgfQogICAgZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gX2dldEZ1bGxQYXRoOwogICAgdmFyIFRSQUlMSU5HX1NMQVNIX0hBU0ggPSAvI1wvPyQvOwogICAgZnVuY3Rpb24gbm9ybWFsaXplSWQoaWQpIHsKICAgICAgcmV0dXJuIGlkID8gaWQucmVwbGFjZShUUkFJTElOR19TTEFTSF9IQVNILCAiIikgOiAiIjsKICAgIH0KICAgIGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gbm9ybWFsaXplSWQ7CiAgICBmdW5jdGlvbiByZXNvbHZlVXJsKHJlc29sdmVyLCBiYXNlSWQsIGlkKSB7CiAgICAgIGlkID0gbm9ybWFsaXplSWQoaWQpOwogICAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZShiYXNlSWQsIGlkKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVVcmwgPSByZXNvbHZlVXJsOwogICAgdmFyIEFOQ0hPUiA9IC9eW2Etel9dWy1hLXowLTkuX10qJC9pOwogICAgZnVuY3Rpb24gZ2V0U2NoZW1hUmVmcyhzY2hlbWEyLCBiYXNlSWQpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4ge307CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQsIHVyaVJlc29sdmVyIH0gPSB0aGlzLm9wdHM7CiAgICAgIGNvbnN0IHNjaElkID0gbm9ybWFsaXplSWQoc2NoZW1hMltzY2hlbWFJZF0gfHwgYmFzZUlkKTsKICAgICAgY29uc3QgYmFzZUlkcyA9IHsgIiI6IHNjaElkIH07CiAgICAgIGNvbnN0IHBhdGhQcmVmaXggPSBnZXRGdWxsUGF0aCh1cmlSZXNvbHZlciwgc2NoSWQsIGZhbHNlKTsKICAgICAgY29uc3QgbG9jYWxSZWZzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYVJlZnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICB0cmF2ZXJzZShzY2hlbWEyLCB7IGFsbEtleXM6IHRydWUgfSwgKHNjaCwganNvblB0ciwgXywgcGFyZW50SnNvblB0cikgPT4gewogICAgICAgIGlmIChwYXJlbnRKc29uUHRyID09PSB2b2lkIDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZnVsbFBhdGggPSBwYXRoUHJlZml4ICsganNvblB0cjsKICAgICAgICBsZXQgaW5uZXJCYXNlSWQgPSBiYXNlSWRzW3BhcmVudEpzb25QdHJdOwogICAgICAgIGlmICh0eXBlb2Ygc2NoW3NjaGVtYUlkXSA9PSAic3RyaW5nIikKICAgICAgICAgIGlubmVyQmFzZUlkID0gYWRkUmVmLmNhbGwodGhpcywgc2NoW3NjaGVtYUlkXSk7CiAgICAgICAgYWRkQW5jaG9yLmNhbGwodGhpcywgc2NoLiRhbmNob3IpOwogICAgICAgIGFkZEFuY2hvci5jYWxsKHRoaXMsIHNjaC4kZHluYW1pY0FuY2hvcik7CiAgICAgICAgYmFzZUlkc1tqc29uUHRyXSA9IGlubmVyQmFzZUlkOwogICAgICAgIGZ1bmN0aW9uIGFkZFJlZihyZWYpIHsKICAgICAgICAgIGNvbnN0IF9yZXNvbHZlID0gdGhpcy5vcHRzLnVyaVJlc29sdmVyLnJlc29sdmU7CiAgICAgICAgICByZWYgPSBub3JtYWxpemVJZChpbm5lckJhc2VJZCA/IF9yZXNvbHZlKGlubmVyQmFzZUlkLCByZWYpIDogcmVmKTsKICAgICAgICAgIGlmIChzY2hlbWFSZWZzLmhhcyhyZWYpKQogICAgICAgICAgICB0aHJvdyBhbWJpZ3VvcyhyZWYpOwogICAgICAgICAgc2NoZW1hUmVmcy5hZGQocmVmKTsKICAgICAgICAgIGxldCBzY2hPclJlZiA9IHRoaXMucmVmc1tyZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAic3RyaW5nIikKICAgICAgICAgICAgc2NoT3JSZWYgPSB0aGlzLnJlZnNbc2NoT3JSZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAib2JqZWN0IikgewogICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgc2NoT3JSZWYuc2NoZW1hLCByZWYpOwogICAgICAgICAgfSBlbHNlIGlmIChyZWYgIT09IG5vcm1hbGl6ZUlkKGZ1bGxQYXRoKSkgewogICAgICAgICAgICBpZiAocmVmWzBdID09PSAiIyIpIHsKICAgICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgbG9jYWxSZWZzW3JlZl0sIHJlZik7CiAgICAgICAgICAgICAgbG9jYWxSZWZzW3JlZl0gPSBzY2g7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdGhpcy5yZWZzW3JlZl0gPSBmdWxsUGF0aDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHJlZjsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkQW5jaG9yKGFuY2hvcikgewogICAgICAgICAgaWYgKHR5cGVvZiBhbmNob3IgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKCFBTkNIT1IudGVzdChhbmNob3IpKQogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhbmNob3IgIiR7YW5jaG9yfSJgKTsKICAgICAgICAgICAgYWRkUmVmLmNhbGwodGhpcywgYCMke2FuY2hvcn1gKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gbG9jYWxSZWZzOwogICAgICBmdW5jdGlvbiBjaGVja0FtYmlndW9zUmVmKHNjaDEsIHNjaDIsIHJlZikgewogICAgICAgIGlmIChzY2gyICE9PSB2b2lkIDAgJiYgIWVxdWFsKHNjaDEsIHNjaDIpKQogICAgICAgICAgdGhyb3cgYW1iaWd1b3MocmVmKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhbWJpZ3VvcyhyZWYpIHsKICAgICAgICByZXR1cm4gbmV3IEVycm9yKGByZWZlcmVuY2UgIiR7cmVmfSIgcmVzb2x2ZXMgdG8gbW9yZSB0aGFuIG9uZSBzY2hlbWFgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0U2NoZW1hUmVmcyA9IGdldFNjaGVtYVJlZnM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzCnZhciByZXF1aXJlX3ZhbGlkYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXREYXRhID0gZXhwb3J0czIuS2V5d29yZEN4dCA9IGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdm9pZCAwOwogICAgdmFyIGJvb2xTY2hlbWFfMSA9IHJlcXVpcmVfYm9vbFNjaGVtYSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZGF0YVR5cGVfMiA9IHJlcXVpcmVfZGF0YVR5cGUoKTsKICAgIHZhciBkZWZhdWx0c18xID0gcmVxdWlyZV9kZWZhdWx0cygpOwogICAgdmFyIGtleXdvcmRfMSA9IHJlcXVpcmVfa2V5d29yZCgpOwogICAgdmFyIHN1YnNjaGVtYV8xID0gcmVxdWlyZV9zdWJzY2hlbWEoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlRnVuY3Rpb25Db2RlKGl0KSB7CiAgICAgIGlmIChpc1NjaGVtYU9iaihpdCkpIHsKICAgICAgICBjaGVja0tleXdvcmRzKGl0KTsKICAgICAgICBpZiAoc2NoZW1hQ3h0SGFzUnVsZXMoaXQpKSB7CiAgICAgICAgICB0b3BTY2hlbWFPYmpDb2RlKGl0KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gKDAsIGJvb2xTY2hlbWFfMS50b3BCb29sT3JFbXB0eVNjaGVtYSkoaXQpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdmFsaWRhdGVGdW5jdGlvbkNvZGU7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uKHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hRW52LCBvcHRzIH0sIGJvZHkpIHsKICAgICAgaWYgKG9wdHMuY29kZS5lczUpIHsKICAgICAgICBnZW4uZnVuYyh2YWxpZGF0ZU5hbWUsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCJ1c2Ugc3RyaWN0IjsgJHtmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpfWApOwogICAgICAgICAgZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKTsKICAgICAgICAgIGdlbi5jb2RlKGJvZHkpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5mdW5jKHZhbGlkYXRlTmFtZSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5kYXRhfSwgJHtkZXN0cnVjdHVyZVZhbEN4dChvcHRzKX1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiBnZW4uY29kZShmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpKS5jb2RlKGJvZHkpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHQob3B0cykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB7JHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofT0iIiwgJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX0sICR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfT0ke25hbWVzXzEuZGVmYXVsdC5kYXRhfSR7b3B0cy5keW5hbWljUmVmID8gKDAsIGNvZGVnZW5fMS5fKWAsICR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfT17fWAgOiBjb2RlZ2VuXzEubmlsfX09e31gOwogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKSB7CiAgICAgIGdlbi5pZihuYW1lc18xLmRlZmF1bHQudmFsQ3h0LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhfWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfWApOwogICAgICAgIGlmIChvcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfWApOwogICAgICB9LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCIiYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsIG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgICBpZiAob3B0cy5keW5hbWljUmVmKQogICAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnMsICgwLCBjb2RlZ2VuXzEuXylge31gKTsKICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiB0b3BTY2hlbWFPYmpDb2RlKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzLCBnZW4gfSA9IGl0OwogICAgICB2YWxpZGF0ZUZ1bmN0aW9uKGl0LCAoKSA9PiB7CiAgICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgJiYgc2NoZW1hMi4kY29tbWVudCkKICAgICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgICBjaGVja05vRGVmYXVsdChpdCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAwKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJlc2V0RXZhbHVhdGVkKGl0KTsKICAgICAgICB0eXBlQW5kS2V5d29yZHMoaXQpOwogICAgICAgIHJldHVyblJlc3VsdHMoaXQpOwogICAgICB9KTsKICAgICAgcmV0dXJuOwogICAgfQogICAgZnVuY3Rpb24gcmVzZXRFdmFsdWF0ZWQoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSB9ID0gaXQ7CiAgICAgIGl0LmV2YWx1YXRlZCA9IGdlbi5jb25zdCgiZXZhbHVhdGVkIiwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXZhbHVhdGVkYCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljUHJvcHNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9LnByb3BzYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljSXRlbXNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9Lml0ZW1zYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICB9CiAgICBmdW5jdGlvbiBmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpIHsKICAgICAgY29uc3Qgc2NoSWQgPSB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiBzY2hlbWEyW29wdHMuc2NoZW1hSWRdOwogICAgICByZXR1cm4gc2NoSWQgJiYgKG9wdHMuY29kZS5zb3VyY2UgfHwgb3B0cy5jb2RlLnByb2Nlc3MpID8gKDAsIGNvZGVnZW5fMS5fKWAvKiMgc291cmNlVVJMPSR7c2NoSWR9ICovYCA6IGNvZGVnZW5fMS5uaWw7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJzY2hlbWFDb2RlKGl0LCB2YWxpZCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgc3ViU2NoZW1hT2JqQ29kZShpdCwgdmFsaWQpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgfQogICAgICAoMCwgYm9vbFNjaGVtYV8xLmJvb2xPckVtcHR5U2NoZW1hKShpdCwgdmFsaWQpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hQ3h0SGFzUnVsZXMoeyBzY2hlbWE6IHNjaGVtYTIsIHNlbGY6IHNlbGYyIH0pIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gIXNjaGVtYTI7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYTIpCiAgICAgICAgaWYgKHNlbGYyLlJVTEVTLmFsbFtrZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU2NoZW1hT2JqKGl0KSB7CiAgICAgIHJldHVybiB0eXBlb2YgaXQuc2NoZW1hICE9ICJib29sZWFuIjsKICAgIH0KICAgIGZ1bmN0aW9uIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBnZW4sIG9wdHMgfSA9IGl0OwogICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEyLiRjb21tZW50KQogICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgdXBkYXRlQ29udGV4dChpdCk7CiAgICAgIGNoZWNrQXN5bmNTY2hlbWEoaXQpOwogICAgICBjb25zdCBlcnJzQ291bnQgPSBnZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KTsKICAgICAgZ2VuLnZhcih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke2VycnNDb3VudH0gPT09ICR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc31gKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZHMoaXQpIHsKICAgICAgKDAsIHV0aWxfMS5jaGVja1Vua25vd25SdWxlcykoaXQpOwogICAgICBjaGVja1JlZnNBbmRLZXl3b3JkcyhpdCk7CiAgICB9CiAgICBmdW5jdGlvbiB0eXBlQW5kS2V5d29yZHMoaXQsIGVycnNDb3VudCkgewogICAgICBpZiAoaXQub3B0cy5qdGQpCiAgICAgICAgcmV0dXJuIHNjaGVtYUtleXdvcmRzKGl0LCBbXSwgZmFsc2UsIGVycnNDb3VudCk7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIGRhdGFUeXBlXzEuZ2V0U2NoZW1hVHlwZXMpKGl0LnNjaGVtYSk7CiAgICAgIGNvbnN0IGNoZWNrZWRUeXBlcyA9ICgwLCBkYXRhVHlwZV8xLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUpKGl0LCB0eXBlcyk7CiAgICAgIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgIWNoZWNrZWRUeXBlcywgZXJyc0NvdW50KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEyLiRyZWYgJiYgb3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgJiYgKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgc2VsZjIuUlVMRVMpKSB7CiAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4oYCRyZWY6IGtleXdvcmRzIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTm9EZWZhdWx0KGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIuZGVmYXVsdCAhPT0gdm9pZCAwICYmIG9wdHMudXNlRGVmYXVsdHMgJiYgb3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICJkZWZhdWx0IGlzIGlnbm9yZWQgaW4gdGhlIHNjaGVtYSByb290Iik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUNvbnRleHQoaXQpIHsKICAgICAgY29uc3Qgc2NoSWQgPSBpdC5zY2hlbWFbaXQub3B0cy5zY2hlbWFJZF07CiAgICAgIGlmIChzY2hJZCkKICAgICAgICBpdC5iYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGl0LmJhc2VJZCwgc2NoSWQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY1NjaGVtYShpdCkgewogICAgICBpZiAoaXQuc2NoZW1hLiRhc3luYyAmJiAhaXQuc2NoZW1hRW52LiRhc3luYykKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIHNjaGVtYSBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gY29tbWVudEtleXdvcmQoeyBnZW4sIHNjaGVtYUVudiwgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzIH0pIHsKICAgICAgY29uc3QgbXNnID0gc2NoZW1hMi4kY29tbWVudDsKICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgPT09IHRydWUpIHsKICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnNlbGZ9LmxvZ2dlci5sb2coJHttc2d9KWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcHRzLiRjb21tZW50ID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjb25zdCBzY2hlbWFQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyU2NoZW1hUGF0aH0vJGNvbW1lbnRgOwogICAgICAgIGNvbnN0IHJvb3ROYW1lID0gZ2VuLnNjb3BlVmFsdWUoInJvb3QiLCB7IHJlZjogc2NoZW1hRW52LnJvb3QgfSk7CiAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5zZWxmfS5vcHRzLiRjb21tZW50KCR7bXNnfSwgJHtzY2hlbWFQYXRofSwgJHtyb290TmFtZX0uc2NoZW1hKWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5SZXN1bHRzKGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFFbnYsIHZhbGlkYXRlTmFtZSwgVmFsaWRhdGlvbkVycm9yLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAwYCwgKCkgPT4gZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSksICgpID0+IGdlbi50aHJvdygoMCwgY29kZWdlbl8xLl8pYG5ldyAke1ZhbGlkYXRpb25FcnJvcn0oJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30pYCkpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXJyb3JzYCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICAgIGlmIChvcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgYXNzaWduRXZhbHVhdGVkKGl0KTsKICAgICAgICBnZW4ucmV0dXJuKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gMGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhc3NpZ25FdmFsdWF0ZWQoeyBnZW4sIGV2YWx1YXRlZCwgcHJvcHMsIGl0ZW1zIH0pIHsKICAgICAgaWYgKHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5wcm9wc2AsIHByb3BzKTsKICAgICAgaWYgKGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5pdGVtc2AsIGl0ZW1zKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgdHlwZUVycm9ycywgZXJyc0NvdW50KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGFsbEVycm9ycywgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICBjb25zdCB7IFJVTEVTIH0gPSBzZWxmMjsKICAgICAgaWYgKHNjaGVtYTIuJHJlZiAmJiAob3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgfHwgISgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYTIsIFJVTEVTKSkpIHsKICAgICAgICBnZW4uYmxvY2soKCkgPT4ga2V5d29yZENvZGUoaXQsICIkcmVmIiwgUlVMRVMuYWxsLiRyZWYuZGVmaW5pdGlvbikpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIW9wdHMuanRkKQogICAgICAgIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIFJVTEVTLnJ1bGVzKQogICAgICAgICAgZ3JvdXBLZXl3b3Jkcyhncm91cCk7CiAgICAgICAgZ3JvdXBLZXl3b3JkcyhSVUxFUy5wb3N0KTsKICAgICAgfSk7CiAgICAgIGZ1bmN0aW9uIGdyb3VwS2V5d29yZHMoZ3JvdXApIHsKICAgICAgICBpZiAoISgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlR3JvdXApKHNjaGVtYTIsIGdyb3VwKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAoZ3JvdXAudHlwZSkgewogICAgICAgICAgZ2VuLmlmKCgwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGUpKGdyb3VwLnR5cGUsIGRhdGEsIG9wdHMuc3RyaWN0TnVtYmVycykpOwogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgICBpZiAodHlwZXMubGVuZ3RoID09PSAxICYmIHR5cGVzWzBdID09PSBncm91cC50eXBlICYmIHR5cGVFcnJvcnMpIHsKICAgICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICAgICAgKDAsIGRhdGFUeXBlXzIucmVwb3J0VHlwZUVycm9yKShpdCk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgfQogICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gJHtlcnJzQ291bnQgfHwgMH1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBvcHRzOiB7IHVzZURlZmF1bHRzIH0gfSA9IGl0OwogICAgICBpZiAodXNlRGVmYXVsdHMpCiAgICAgICAgKDAsIGRlZmF1bHRzXzEuYXNzaWduRGVmYXVsdHMpKGl0LCBncm91cC50eXBlKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgZ3JvdXAucnVsZXMpIHsKICAgICAgICAgIGlmICgoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKHNjaGVtYTIsIHJ1bGUpKSB7CiAgICAgICAgICAgIGtleXdvcmRDb2RlKGl0LCBydWxlLmtleXdvcmQsIHJ1bGUuZGVmaW5pdGlvbiwgZ3JvdXAudHlwZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmIChpdC5zY2hlbWFFbnYubWV0YSB8fCAhaXQub3B0cy5zdHJpY3RUeXBlcykKICAgICAgICByZXR1cm47CiAgICAgIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGlmICghaXQub3B0cy5hbGxvd1VuaW9uVHlwZXMpCiAgICAgICAgY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGNoZWNrS2V5d29yZFR5cGVzKGl0LCBpdC5kYXRhVHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tDb250ZXh0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmICghdHlwZXMubGVuZ3RoKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFpdC5kYXRhVHlwZXMubGVuZ3RoKSB7CiAgICAgICAgaXQuZGF0YVR5cGVzID0gdHlwZXM7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHR5cGVzLmZvckVhY2goKHQpID0+IHsKICAgICAgICBpZiAoIWluY2x1ZGVzVHlwZShpdC5kYXRhVHlwZXMsIHQpKSB7CiAgICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCBgdHlwZSAiJHt0fSIgbm90IGFsbG93ZWQgYnkgY29udGV4dCAiJHtpdC5kYXRhVHlwZXMuam9pbigiLCIpfSJgKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgdHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0cykgewogICAgICBpZiAodHMubGVuZ3RoID4gMSAmJiAhKHRzLmxlbmd0aCA9PT0gMiAmJiB0cy5pbmNsdWRlcygibnVsbCIpKSkgewogICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsICJ1c2UgYWxsb3dVbmlvblR5cGVzIHRvIGFsbG93IHVuaW9uIHR5cGUga2V5d29yZCIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0tleXdvcmRUeXBlcyhpdCwgdHMpIHsKICAgICAgY29uc3QgcnVsZXMgPSBpdC5zZWxmLlJVTEVTLmFsbDsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIHJ1bGVzKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHJ1bGVzW2tleXdvcmRdOwogICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiAmJiAoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKGl0LnNjaGVtYSwgcnVsZSkpIHsKICAgICAgICAgIGNvbnN0IHsgdHlwZTogdHlwZTIgfSA9IHJ1bGUuZGVmaW5pdGlvbjsKICAgICAgICAgIGlmICh0eXBlMi5sZW5ndGggJiYgIXR5cGUyLnNvbWUoKHQpID0+IGhhc0FwcGxpY2FibGVUeXBlKHRzLCB0KSkpIHsKICAgICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYG1pc3NpbmcgdHlwZSAiJHt0eXBlMi5qb2luKCIsIil9IiBmb3Iga2V5d29yZCAiJHtrZXl3b3JkfSJgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGhhc0FwcGxpY2FibGVUeXBlKHNjaFRzLCBrd2RUKSB7CiAgICAgIHJldHVybiBzY2hUcy5pbmNsdWRlcyhrd2RUKSB8fCBrd2RUID09PSAibnVtYmVyIiAmJiBzY2hUcy5pbmNsdWRlcygiaW50ZWdlciIpOwogICAgfQogICAgZnVuY3Rpb24gaW5jbHVkZXNUeXBlKHRzLCB0KSB7CiAgICAgIHJldHVybiB0cy5pbmNsdWRlcyh0KSB8fCB0ID09PSAiaW50ZWdlciIgJiYgdHMuaW5jbHVkZXMoIm51bWJlciIpOwogICAgfQogICAgZnVuY3Rpb24gbmFycm93U2NoZW1hVHlwZXMoaXQsIHdpdGhUeXBlcykgewogICAgICBjb25zdCB0cyA9IFtdOwogICAgICBmb3IgKGNvbnN0IHQgb2YgaXQuZGF0YVR5cGVzKSB7CiAgICAgICAgaWYgKGluY2x1ZGVzVHlwZSh3aXRoVHlwZXMsIHQpKQogICAgICAgICAgdHMucHVzaCh0KTsKICAgICAgICBlbHNlIGlmICh3aXRoVHlwZXMuaW5jbHVkZXMoImludGVnZXIiKSAmJiB0ID09PSAibnVtYmVyIikKICAgICAgICAgIHRzLnB1c2goImludGVnZXIiKTsKICAgICAgfQogICAgICBpdC5kYXRhVHlwZXMgPSB0czsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmljdFR5cGVzRXJyb3IoaXQsIG1zZykgewogICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgIG1zZyArPSBgIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0VHlwZXMpYDsKICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBtc2csIGl0Lm9wdHMuc3RyaWN0VHlwZXMpOwogICAgfQogICAgdmFyIEtleXdvcmRDeHQgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGl0LCBkZWYsIGtleXdvcmQpIHsKICAgICAgICAoMCwga2V5d29yZF8xLnZhbGlkYXRlS2V5d29yZFVzYWdlKShpdCwgZGVmLCBrZXl3b3JkKTsKICAgICAgICB0aGlzLmdlbiA9IGl0LmdlbjsKICAgICAgICB0aGlzLmFsbEVycm9ycyA9IGl0LmFsbEVycm9yczsKICAgICAgICB0aGlzLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgIHRoaXMuZGF0YSA9IGl0LmRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgdGhpcy4kZGF0YSA9IGRlZi4kZGF0YSAmJiBpdC5vcHRzLiRkYXRhICYmIHRoaXMuc2NoZW1hICYmIHRoaXMuc2NoZW1hLiRkYXRhOwogICAgICAgIHRoaXMuc2NoZW1hVmFsdWUgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgdGhpcy5zY2hlbWEsIGtleXdvcmQsIHRoaXMuJGRhdGEpOwogICAgICAgIHRoaXMuc2NoZW1hVHlwZSA9IGRlZi5zY2hlbWFUeXBlOwogICAgICAgIHRoaXMucGFyZW50U2NoZW1hID0gaXQuc2NoZW1hOwogICAgICAgIHRoaXMucGFyYW1zID0ge307CiAgICAgICAgdGhpcy5pdCA9IGl0OwogICAgICAgIHRoaXMuZGVmID0gZGVmOwogICAgICAgIGlmICh0aGlzLiRkYXRhKSB7CiAgICAgICAgICB0aGlzLnNjaGVtYUNvZGUgPSBpdC5nZW4uY29uc3QoInZTY2hlbWEiLCBnZXREYXRhKHRoaXMuJGRhdGEsIGl0KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IHRoaXMuc2NoZW1hVmFsdWU7CiAgICAgICAgICBpZiAoISgwLCBrZXl3b3JkXzEudmFsaWRTY2hlbWFUeXBlKSh0aGlzLnNjaGVtYSwgZGVmLnNjaGVtYVR5cGUsIGRlZi5hbGxvd1VuZGVmaW5lZCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2tleXdvcmR9IHZhbHVlIG11c3QgYmUgJHtKU09OLnN0cmluZ2lmeShkZWYuc2NoZW1hVHlwZSl9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgiY29kZSIgaW4gZGVmID8gZGVmLnRyYWNrRXJyb3JzIDogZGVmLmVycm9ycyAhPT0gZmFsc2UpIHsKICAgICAgICAgIHRoaXMuZXJyc0NvdW50ID0gaXQuZ2VuLmNvbnN0KCJfZXJycyIsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMpOwogICAgICAgIH0KICAgICAgfQogICAgICByZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsUmVzdWx0KGNvbmRpdGlvbiwgc3VjY2Vzc0FjdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgaWYgKGZhaWxBY3Rpb24pCiAgICAgICAgICBmYWlsQWN0aW9uKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmIChzdWNjZXNzQWN0aW9uKSB7CiAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgICBzdWNjZXNzQWN0aW9uKCk7CiAgICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgICBwYXNzKGNvbmRpdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZmFpbFJlc3VsdCgoMCwgY29kZWdlbl8xLm5vdCkoY29uZGl0aW9uKSwgdm9pZCAwLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsKGNvbmRpdGlvbikgewogICAgICAgIGlmIChjb25kaXRpb24gPT09IHZvaWQgMCkgewogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgICAgaWYgKCF0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uaWYoZmFsc2UpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLmdlbi5pZihjb25kaXRpb24pOwogICAgICAgIHRoaXMuZXJyb3IoKTsKICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgIGVsc2UKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBmYWlsJGRhdGEoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKCF0aGlzLiRkYXRhKQogICAgICAgICAgcmV0dXJuIHRoaXMuZmFpbChjb25kaXRpb24pOwogICAgICAgIGNvbnN0IHsgc2NoZW1hQ29kZSB9ID0gdGhpczsKICAgICAgICB0aGlzLmZhaWwoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICE9PSB1bmRlZmluZWQgJiYgKCR7KDAsIGNvZGVnZW5fMS5vcikodGhpcy5pbnZhbGlkJGRhdGEoKSwgY29uZGl0aW9uKX0pYCk7CiAgICAgIH0KICAgICAgZXJyb3IoYXBwZW5kLCBlcnJvclBhcmFtcywgZXJyb3JQYXRocykgewogICAgICAgIGlmIChlcnJvclBhcmFtcykgewogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoZXJyb3JQYXJhbXMpOwogICAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgICAgIHRoaXMuc2V0UGFyYW1zKHt9KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICBfZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKSB7CiAgICAgICAgOwogICAgICAgIChhcHBlbmQgPyBlcnJvcnNfMS5yZXBvcnRFeHRyYUVycm9yIDogZXJyb3JzXzEucmVwb3J0RXJyb3IpKHRoaXMsIHRoaXMuZGVmLmVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICAkZGF0YUVycm9yKCkgewogICAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuJGRhdGFFcnJvciB8fCBlcnJvcnNfMS5rZXl3b3JkJERhdGFFcnJvcik7CiAgICAgIH0KICAgICAgcmVzZXQoKSB7CiAgICAgICAgaWYgKHRoaXMuZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCAidHJhY2tFcnJvcnMiIHRvIGtleXdvcmQgZGVmaW5pdGlvbicpOwogICAgICAgICgwLCBlcnJvcnNfMS5yZXNldEVycm9yc0NvdW50KSh0aGlzLmdlbiwgdGhpcy5lcnJzQ291bnQpOwogICAgICB9CiAgICAgIG9rKGNvbmQpIHsKICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgdGhpcy5nZW4uaWYoY29uZCk7CiAgICAgIH0KICAgICAgc2V0UGFyYW1zKG9iaiwgYXNzaWduKSB7CiAgICAgICAgaWYgKGFzc2lnbikKICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5wYXJhbXMsIG9iaik7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5wYXJhbXMgPSBvYmo7CiAgICAgIH0KICAgICAgYmxvY2skZGF0YSh2YWxpZCwgY29kZUJsb2NrLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHRoaXMuZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICAgIHRoaXMuY2hlY2skZGF0YSh2YWxpZCwgJGRhdGFWYWxpZCk7CiAgICAgICAgICBjb2RlQmxvY2soKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBjaGVjayRkYXRhKHZhbGlkID0gY29kZWdlbl8xLm5pbCwgJGRhdGFWYWxpZCA9IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiB9ID0gdGhpczsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ID09PSB1bmRlZmluZWRgLCAkZGF0YVZhbGlkKSk7CiAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgaWYgKHNjaGVtYVR5cGUubGVuZ3RoIHx8IGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgZ2VuLmVsc2VJZih0aGlzLmludmFsaWQkZGF0YSgpKTsKICAgICAgICAgIHRoaXMuJGRhdGFFcnJvcigpOwogICAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGdlbi5lbHNlKCk7CiAgICAgIH0KICAgICAgaW52YWxpZCRkYXRhKCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFDb2RlLCBzY2hlbWFUeXBlLCBkZWYsIGl0IH0gPSB0aGlzOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSh3cm9uZyREYXRhVHlwZSgpLCBpbnZhbGlkJERhdGFTY2hlbWEoKSk7CiAgICAgICAgZnVuY3Rpb24gd3JvbmckRGF0YVR5cGUoKSB7CiAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGgpIHsKICAgICAgICAgICAgaWYgKCEoc2NoZW1hQ29kZSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgICBjb25zdCBzdCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hVHlwZSkgPyBzY2hlbWFUeXBlIDogW3NjaGVtYVR5cGVdOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGVzKShzdCwgc2NoZW1hQ29kZSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8yLkRhdGFUeXBlLldyb25nKX1gOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGludmFsaWQkRGF0YVNjaGVtYSgpIHsKICAgICAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWRhdGVTY2hlbWFSZWYgPSBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUkZGF0YSIsIHsgcmVmOiBkZWYudmFsaWRhdGVTY2hlbWEgfSk7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCEke3ZhbGlkYXRlU2NoZW1hUmVmfSgke3NjaGVtYUNvZGV9KWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3Vic2NoZW1hKGFwcGwsIHZhbGlkKSB7CiAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gKDAsIHN1YnNjaGVtYV8xLmdldFN1YnNjaGVtYSkodGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYURhdGEpKHN1YnNjaGVtYSwgdGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYU1vZGUpKHN1YnNjaGVtYSwgYXBwbCk7CiAgICAgICAgY29uc3QgbmV4dENvbnRleHQgPSB7IC4uLnRoaXMuaXQsIC4uLnN1YnNjaGVtYSwgaXRlbXM6IHZvaWQgMCwgcHJvcHM6IHZvaWQgMCB9OwogICAgICAgIHN1YnNjaGVtYUNvZGUobmV4dENvbnRleHQsIHZhbGlkKTsKICAgICAgICByZXR1cm4gbmV4dENvbnRleHQ7CiAgICAgIH0KICAgICAgbWVyZ2VFdmFsdWF0ZWQoc2NoZW1hQ3h0LCB0b05hbWUpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hlbWFDeHQucHJvcHMsIGl0LnByb3BzLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUgJiYgc2NoZW1hQ3h0Lml0ZW1zICE9PSB2b2lkIDApIHsKICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoZW1hQ3h0Lml0ZW1zLCBpdC5pdGVtcywgdG9OYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hlbWFDeHQsIHZhbGlkKSB7CiAgICAgICAgY29uc3QgeyBpdCwgZ2VuIH0gPSB0aGlzOwogICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIChpdC5wcm9wcyAhPT0gdHJ1ZSB8fCBpdC5pdGVtcyAhPT0gdHJ1ZSkpIHsKICAgICAgICAgIGdlbi5pZih2YWxpZCwgKCkgPT4gdGhpcy5tZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIGNvZGVnZW5fMS5OYW1lKSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gS2V5d29yZEN4dDsKICAgIGZ1bmN0aW9uIGtleXdvcmRDb2RlKGl0LCBrZXl3b3JkLCBkZWYsIHJ1bGVUeXBlKSB7CiAgICAgIGNvbnN0IGN4dCA9IG5ldyBLZXl3b3JkQ3h0KGl0LCBkZWYsIGtleXdvcmQpOwogICAgICBpZiAoImNvZGUiIGluIGRlZikgewogICAgICAgIGRlZi5jb2RlKGN4dCwgcnVsZVR5cGUpOwogICAgICB9IGVsc2UgaWYgKGN4dC4kZGF0YSAmJiBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9IGVsc2UgaWYgKCJtYWNybyIgaW4gZGVmKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5tYWNyb0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoZGVmLmNvbXBpbGUgfHwgZGVmLnZhbGlkYXRlKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5mdW5jS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfQogICAgfQogICAgdmFyIEpTT05fUE9JTlRFUiA9IC9eXC8oPzpbXn5dfH4wfH4xKSokLzsKICAgIHZhciBSRUxBVElWRV9KU09OX1BPSU5URVIgPSAvXihbMC05XSspKCN8XC8oPzpbXn5dfH4wfH4xKSopPyQvOwogICAgZnVuY3Rpb24gZ2V0RGF0YSgkZGF0YSwgeyBkYXRhTGV2ZWwsIGRhdGFOYW1lcywgZGF0YVBhdGhBcnIgfSkgewogICAgICBsZXQganNvblBvaW50ZXI7CiAgICAgIGxldCBkYXRhOwogICAgICBpZiAoJGRhdGEgPT09ICIiKQogICAgICAgIHJldHVybiBuYW1lc18xLmRlZmF1bHQucm9vdERhdGE7CiAgICAgIGlmICgkZGF0YVswXSA9PT0gIi8iKSB7CiAgICAgICAgaWYgKCFKU09OX1BPSU5URVIudGVzdCgkZGF0YSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSlNPTi1wb2ludGVyOiAkeyRkYXRhfWApOwogICAgICAgIGpzb25Qb2ludGVyID0gJGRhdGE7CiAgICAgICAgZGF0YSA9IG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gUkVMQVRJVkVfSlNPTl9QT0lOVEVSLmV4ZWMoJGRhdGEpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAgY29uc3QgdXAgPSArbWF0Y2hlc1sxXTsKICAgICAgICBqc29uUG9pbnRlciA9IG1hdGNoZXNbMl07CiAgICAgICAgaWYgKGpzb25Qb2ludGVyID09PSAiIyIpIHsKICAgICAgICAgIGlmICh1cCA+PSBkYXRhTGV2ZWwpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1zZygicHJvcGVydHkvaW5kZXgiLCB1cCkpOwogICAgICAgICAgcmV0dXJuIGRhdGFQYXRoQXJyW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICB9CiAgICAgICAgaWYgKHVwID4gZGF0YUxldmVsKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJkYXRhIiwgdXApKTsKICAgICAgICBkYXRhID0gZGF0YU5hbWVzW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICBpZiAoIWpzb25Qb2ludGVyKQogICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgIH0KICAgICAgbGV0IGV4cHIgPSBkYXRhOwogICAgICBjb25zdCBzZWdtZW50cyA9IGpzb25Qb2ludGVyLnNwbGl0KCIvIik7CiAgICAgIGZvciAoY29uc3Qgc2VnbWVudCBvZiBzZWdtZW50cykgewogICAgICAgIGlmIChzZWdtZW50KSB7CiAgICAgICAgICBkYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KSgoMCwgdXRpbF8xLnVuZXNjYXBlSnNvblBvaW50ZXIpKHNlZ21lbnQpKX1gOwogICAgICAgICAgZXhwciA9ICgwLCBjb2RlZ2VuXzEuXylgJHtleHByfSAmJiAke2RhdGF9YDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIGZ1bmN0aW9uIGVycm9yTXNnKHBvaW50ZXJUeXBlLCB1cCkgewogICAgICAgIHJldHVybiBgQ2Fubm90IGFjY2VzcyAke3BvaW50ZXJUeXBlfSAke3VwfSBsZXZlbHMgdXAsIGN1cnJlbnQgbGV2ZWwgaXMgJHtkYXRhTGV2ZWx9YDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGdldERhdGE7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3ZhbGlkYXRpb25fZXJyb3IuanMKdmFyIHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcwp2YXIgcmVxdWlyZV9yZWZfZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgTWlzc2luZ1JlZkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKHJlc29sdmVyLCBiYXNlSWQsIHJlZiwgbXNnKSB7CiAgICAgICAgc3VwZXIobXNnIHx8IGBjYW4ndCByZXNvbHZlIHJlZmVyZW5jZSAke3JlZn0gZnJvbSBpZCAke2Jhc2VJZH1gKTsKICAgICAgICB0aGlzLm1pc3NpbmdSZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgICAgdGhpcy5taXNzaW5nU2NoZW1hID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkocmVzb2x2ZXIsIHRoaXMubWlzc2luZ1JlZikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IE1pc3NpbmdSZWZFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGV4cG9ydHMyLnJlc29sdmVSZWYgPSBleHBvcnRzMi5jb21waWxlU2NoZW1hID0gZXhwb3J0czIuU2NoZW1hRW52ID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBTY2hlbWFFbnYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGVudikgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmR5bmFtaWNBbmNob3JzID0ge307CiAgICAgICAgbGV0IHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBlbnYuc2NoZW1hID09ICJvYmplY3QiKQogICAgICAgICAgc2NoZW1hMiA9IGVudi5zY2hlbWE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hSWQgPSBlbnYuc2NoZW1hSWQ7CiAgICAgICAgdGhpcy5yb290ID0gZW52LnJvb3QgfHwgdGhpczsKICAgICAgICB0aGlzLmJhc2VJZCA9IChfYSA9IGVudi5iYXNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHNjaGVtYTIgPT09IG51bGwgfHwgc2NoZW1hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoZW1hMltlbnYuc2NoZW1hSWQgfHwgIiRpZCJdKTsKICAgICAgICB0aGlzLnNjaGVtYVBhdGggPSBlbnYuc2NoZW1hUGF0aDsKICAgICAgICB0aGlzLmxvY2FsUmVmcyA9IGVudi5sb2NhbFJlZnM7CiAgICAgICAgdGhpcy5tZXRhID0gZW52Lm1ldGE7CiAgICAgICAgdGhpcy4kYXN5bmMgPSBzY2hlbWEyID09PSBudWxsIHx8IHNjaGVtYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaGVtYTIuJGFzeW5jOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hRW52ID0gU2NoZW1hRW52OwogICAgZnVuY3Rpb24gY29tcGlsZVNjaGVtYShzY2gpIHsKICAgICAgY29uc3QgX3NjaCA9IGdldENvbXBpbGluZ1NjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgIGlmIChfc2NoKQogICAgICAgIHJldHVybiBfc2NoOwogICAgICBjb25zdCByb290SWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHNjaC5yb290LmJhc2VJZCk7CiAgICAgIGNvbnN0IHsgZXM1LCBsaW5lcyB9ID0gdGhpcy5vcHRzLmNvZGU7CiAgICAgIGNvbnN0IHsgb3duUHJvcGVydGllcyB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBnZW4gPSBuZXcgY29kZWdlbl8xLkNvZGVHZW4odGhpcy5zY29wZSwgeyBlczUsIGxpbmVzLCBvd25Qcm9wZXJ0aWVzIH0pOwogICAgICBsZXQgX1ZhbGlkYXRpb25FcnJvcjsKICAgICAgaWYgKHNjaC4kYXN5bmMpIHsKICAgICAgICBfVmFsaWRhdGlvbkVycm9yID0gZ2VuLnNjb3BlVmFsdWUoIkVycm9yIiwgewogICAgICAgICAgcmVmOiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdCwKICAgICAgICAgIGNvZGU6ICgwLCBjb2RlZ2VuXzEuXylgcmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yIikuZGVmYXVsdGAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZGF0ZU5hbWUgPSBnZW4uc2NvcGVOYW1lKCJ2YWxpZGF0ZSIpOwogICAgICBzY2gudmFsaWRhdGVOYW1lID0gdmFsaWRhdGVOYW1lOwogICAgICBjb25zdCBzY2hlbWFDeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGFsbEVycm9yczogdGhpcy5vcHRzLmFsbEVycm9ycywKICAgICAgICBkYXRhOiBuYW1lc18xLmRlZmF1bHQuZGF0YSwKICAgICAgICBwYXJlbnREYXRhOiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwKICAgICAgICBwYXJlbnREYXRhUHJvcGVydHk6IG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksCiAgICAgICAgZGF0YU5hbWVzOiBbbmFtZXNfMS5kZWZhdWx0LmRhdGFdLAogICAgICAgIGRhdGFQYXRoQXJyOiBbY29kZWdlbl8xLm5pbF0sCiAgICAgICAgLy8gVE9ETyBjYW4gaXRzIGxlbmd0aCBiZSB1c2VkIGFzIGRhdGFMZXZlbCBpZiBuaWwgaXMgcmVtb3ZlZD8KICAgICAgICBkYXRhTGV2ZWw6IDAsCiAgICAgICAgZGF0YVR5cGVzOiBbXSwKICAgICAgICBkZWZpbmVkUHJvcGVydGllczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSwKICAgICAgICB0b3BTY2hlbWFSZWY6IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCB0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLnNjaGVtYSwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaC5zY2hlbWEpIH0gOiB7IHJlZjogc2NoLnNjaGVtYSB9KSwKICAgICAgICB2YWxpZGF0ZU5hbWUsCiAgICAgICAgVmFsaWRhdGlvbkVycm9yOiBfVmFsaWRhdGlvbkVycm9yLAogICAgICAgIHNjaGVtYTogc2NoLnNjaGVtYSwKICAgICAgICBzY2hlbWFFbnY6IHNjaCwKICAgICAgICByb290SWQsCiAgICAgICAgYmFzZUlkOiBzY2guYmFzZUlkIHx8IHJvb3RJZCwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IHNjaC5zY2hlbWFQYXRoIHx8ICh0aGlzLm9wdHMuanRkID8gIiIgOiAiIyIpLAogICAgICAgIGVycm9yUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAiImAsCiAgICAgICAgb3B0czogdGhpcy5vcHRzLAogICAgICAgIHNlbGY6IHRoaXMKICAgICAgfTsKICAgICAgbGV0IHNvdXJjZUNvZGU7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5fY29tcGlsYXRpb25zLmFkZChzY2gpOwogICAgICAgICgwLCB2YWxpZGF0ZV8xLnZhbGlkYXRlRnVuY3Rpb25Db2RlKShzY2hlbWFDeHQpOwogICAgICAgIGdlbi5vcHRpbWl6ZSh0aGlzLm9wdHMuY29kZS5vcHRpbWl6ZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGVDb2RlID0gZ2VuLnRvU3RyaW5nKCk7CiAgICAgICAgc291cmNlQ29kZSA9IGAke2dlbi5zY29wZVJlZnMobmFtZXNfMS5kZWZhdWx0LnNjb3BlKX1yZXR1cm4gJHt2YWxpZGF0ZUNvZGV9YDsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUucHJvY2VzcykKICAgICAgICAgIHNvdXJjZUNvZGUgPSB0aGlzLm9wdHMuY29kZS5wcm9jZXNzKHNvdXJjZUNvZGUsIHNjaCk7CiAgICAgICAgY29uc3QgbWFrZVZhbGlkYXRlID0gbmV3IEZ1bmN0aW9uKGAke25hbWVzXzEuZGVmYXVsdC5zZWxmfWAsIGAke25hbWVzXzEuZGVmYXVsdC5zY29wZX1gLCBzb3VyY2VDb2RlKTsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IG1ha2VWYWxpZGF0ZSh0aGlzLCB0aGlzLnNjb3BlLmdldCgpKTsKICAgICAgICB0aGlzLnNjb3BlLnZhbHVlKHZhbGlkYXRlTmFtZSwgeyByZWY6IHZhbGlkYXRlIH0pOwogICAgICAgIHZhbGlkYXRlLmVycm9ycyA9IG51bGw7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hID0gc2NoLnNjaGVtYTsKICAgICAgICB2YWxpZGF0ZS5zY2hlbWFFbnYgPSBzY2g7CiAgICAgICAgaWYgKHNjaC4kYXN5bmMpCiAgICAgICAgICB2YWxpZGF0ZS4kYXN5bmMgPSB0cnVlOwogICAgICAgIGlmICh0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUpIHsKICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZSA9IHsgdmFsaWRhdGVOYW1lLCB2YWxpZGF0ZUNvZGUsIHNjb3BlVmFsdWVzOiBnZW4uX3ZhbHVlcyB9OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5vcHRzLnVuZXZhbHVhdGVkKSB7CiAgICAgICAgICBjb25zdCB7IHByb3BzLCBpdGVtcyB9ID0gc2NoZW1hQ3h0OwogICAgICAgICAgdmFsaWRhdGUuZXZhbHVhdGVkID0gewogICAgICAgICAgICBwcm9wczogcHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IHByb3BzLAogICAgICAgICAgICBpdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IGl0ZW1zLAogICAgICAgICAgICBkeW5hbWljUHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUsCiAgICAgICAgICAgIGR5bmFtaWNJdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0ZS5zb3VyY2UpCiAgICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZS5ldmFsdWF0ZWQgPSAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkodmFsaWRhdGUuZXZhbHVhdGVkKTsKICAgICAgICB9CiAgICAgICAgc2NoLnZhbGlkYXRlID0gdmFsaWRhdGU7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGU7CiAgICAgICAgZGVsZXRlIHNjaC52YWxpZGF0ZU5hbWU7CiAgICAgICAgaWYgKHNvdXJjZUNvZGUpCiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigiRXJyb3IgY29tcGlsaW5nIHNjaGVtYSwgZnVuY3Rpb24gY29kZToiLCBzb3VyY2VDb2RlKTsKICAgICAgICB0aHJvdyBlOwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5kZWxldGUoc2NoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY29tcGlsZVNjaGVtYSA9IGNvbXBpbGVTY2hlbWE7CiAgICBmdW5jdGlvbiByZXNvbHZlUmVmKHJvb3QsIGJhc2VJZCwgcmVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgcmVmKTsKICAgICAgY29uc3Qgc2NoT3JGdW5jID0gcm9vdC5yZWZzW3JlZl07CiAgICAgIGlmIChzY2hPckZ1bmMpCiAgICAgICAgcmV0dXJuIHNjaE9yRnVuYzsKICAgICAgbGV0IF9zY2ggPSByZXNvbHZlLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHNjaGVtYTIgPSAoX2EgPSByb290LmxvY2FsUmVmcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3JlZl07CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGlmIChzY2hlbWEyKQogICAgICAgICAgX3NjaCA9IG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkKICAgICAgICByZXR1cm47CiAgICAgIHJldHVybiByb290LnJlZnNbcmVmXSA9IGlubGluZU9yQ29tcGlsZS5jYWxsKHRoaXMsIF9zY2gpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVJlZiA9IHJlc29sdmVSZWY7CiAgICBmdW5jdGlvbiBpbmxpbmVPckNvbXBpbGUoc2NoKSB7CiAgICAgIGlmICgoMCwgcmVzb2x2ZV8xLmlubGluZVJlZikoc2NoLnNjaGVtYSwgdGhpcy5vcHRzLmlubGluZVJlZnMpKQogICAgICAgIHJldHVybiBzY2guc2NoZW1hOwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gc2NoIDogY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRDb21waWxpbmdTY2hlbWEoc2NoRW52KSB7CiAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHRoaXMuX2NvbXBpbGF0aW9ucykgewogICAgICAgIGlmIChzYW1lU2NoZW1hRW52KHNjaCwgc2NoRW52KSkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGdldENvbXBpbGluZ1NjaGVtYTsKICAgIGZ1bmN0aW9uIHNhbWVTY2hlbWFFbnYoczEsIHMyKSB7CiAgICAgIHJldHVybiBzMS5zY2hlbWEgPT09IHMyLnNjaGVtYSAmJiBzMS5yb290ID09PSBzMi5yb290ICYmIHMxLmJhc2VJZCA9PT0gczIuYmFzZUlkOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShyb290LCByZWYpIHsKICAgICAgbGV0IHNjaDsKICAgICAgd2hpbGUgKHR5cGVvZiAoc2NoID0gdGhpcy5yZWZzW3JlZl0pID09ICJzdHJpbmciKQogICAgICAgIHJlZiA9IHNjaDsKICAgICAgcmV0dXJuIHNjaCB8fCB0aGlzLnNjaGVtYXNbcmVmXSB8fCByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVTY2hlbWEocm9vdCwgcmVmKSB7CiAgICAgIGNvbnN0IHAgPSB0aGlzLm9wdHMudXJpUmVzb2x2ZXIucGFyc2UocmVmKTsKICAgICAgY29uc3QgcmVmUGF0aCA9ICgwLCByZXNvbHZlXzEuX2dldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHApOwogICAgICBsZXQgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCByb290LmJhc2VJZCwgdm9pZCAwKTsKICAgICAgaWYgKE9iamVjdC5rZXlzKHJvb3Quc2NoZW1hKS5sZW5ndGggPiAwICYmIHJlZlBhdGggPT09IGJhc2VJZCkgewogICAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHJvb3QpOwogICAgICB9CiAgICAgIGNvbnN0IGlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmUGF0aCk7CiAgICAgIGNvbnN0IHNjaE9yUmVmID0gdGhpcy5yZWZzW2lkXSB8fCB0aGlzLnNjaGVtYXNbaWRdOwogICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJzdHJpbmciKSB7CiAgICAgICAgY29uc3Qgc2NoID0gcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsIHNjaE9yUmVmKTsKICAgICAgICBpZiAodHlwZW9mIChzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2guc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoKTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIChzY2hPclJlZiA9PT0gbnVsbCB8fCBzY2hPclJlZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoT3JSZWYuc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoIXNjaE9yUmVmLnZhbGlkYXRlKQogICAgICAgIGNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2hPclJlZik7CiAgICAgIGlmIChpZCA9PT0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmKSkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyIH0gPSBzY2hPclJlZjsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgY29uc3Qgc2NoSWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICBpZiAoc2NoSWQpCiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgcmV0dXJuIG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoT3JSZWYpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IHJlc29sdmVTY2hlbWE7CiAgICB2YXIgUFJFVkVOVF9TQ09QRV9DSEFOR0UgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJwcm9wZXJ0aWVzIiwKICAgICAgInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgImVudW0iLAogICAgICAiZGVwZW5kZW5jaWVzIiwKICAgICAgImRlZmluaXRpb25zIgogICAgXSk7CiAgICBmdW5jdGlvbiBnZXRKc29uUG9pbnRlcihwYXJzZWRSZWYsIHsgYmFzZUlkLCBzY2hlbWE6IHNjaGVtYTIsIHJvb3QgfSkgewogICAgICB2YXIgX2E7CiAgICAgIGlmICgoKF9hID0gcGFyc2VkUmVmLmZyYWdtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbMF0pICE9PSAiLyIpCiAgICAgICAgcmV0dXJuOwogICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFyc2VkUmVmLmZyYWdtZW50LnNsaWNlKDEpLnNwbGl0KCIvIikpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBwYXJ0U2NoZW1hID0gc2NoZW1hMlsoMCwgdXRpbF8xLnVuZXNjYXBlRnJhZ21lbnQpKHBhcnQpXTsKICAgICAgICBpZiAocGFydFNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHNjaGVtYTIgPSBwYXJ0U2NoZW1hOwogICAgICAgIGNvbnN0IHNjaElkID0gdHlwZW9mIHNjaGVtYTIgPT09ICJvYmplY3QiICYmIHNjaGVtYTJbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICBpZiAoIVBSRVZFTlRfU0NPUEVfQ0hBTkdFLmhhcyhwYXJ0KSAmJiBzY2hJZCkgewogICAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoSWQpOwogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgZW52OwogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgIT0gImJvb2xlYW4iICYmIHNjaGVtYTIuJHJlZiAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgdGhpcy5SVUxFUykpIHsKICAgICAgICBjb25zdCAkcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoZW1hMi4kcmVmKTsKICAgICAgICBlbnYgPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgJHJlZik7CiAgICAgIH0KICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICBlbnYgPSBlbnYgfHwgbmV3IFNjaGVtYUVudih7IHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgaWYgKGVudi5zY2hlbWEgIT09IGVudi5yb290LnNjaGVtYSkKICAgICAgICByZXR1cm4gZW52OwogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24KdmFyIHJlcXVpcmVfZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRpZDogImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9hanYtdmFsaWRhdG9yL2Fqdi9tYXN0ZXIvbGliL3JlZnMvZGF0YS5qc29uIyIsCiAgICAgIGRlc2NyaXB0aW9uOiAiTWV0YS1zY2hlbWEgZm9yICRkYXRhIHJlZmVyZW5jZSAoSlNPTiBBbnlTY2hlbWEgZXh0ZW5zaW9uIHByb3Bvc2FsKSIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICByZXF1aXJlZDogWyIkZGF0YSJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGRhdGE6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgYW55T2Y6IFt7IGZvcm1hdDogInJlbGF0aXZlLWpzb24tcG9pbnRlciIgfSwgeyBmb3JtYXQ6ICJqc29uLXBvaW50ZXIiIH1dCiAgICAgICAgfQogICAgICB9LAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzCnZhciByZXF1aXJlX3Njb3BlZENoYXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIEhFWCA9IHsKICAgICAgMDogMCwKICAgICAgMTogMSwKICAgICAgMjogMiwKICAgICAgMzogMywKICAgICAgNDogNCwKICAgICAgNTogNSwKICAgICAgNjogNiwKICAgICAgNzogNywKICAgICAgODogOCwKICAgICAgOTogOSwKICAgICAgYTogMTAsCiAgICAgIEE6IDEwLAogICAgICBiOiAxMSwKICAgICAgQjogMTEsCiAgICAgIGM6IDEyLAogICAgICBDOiAxMiwKICAgICAgZDogMTMsCiAgICAgIEQ6IDEzLAogICAgICBlOiAxNCwKICAgICAgRTogMTQsCiAgICAgIGY6IDE1LAogICAgICBGOiAxNQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgSEVYCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBIRVggfSA9IHJlcXVpcmVfc2NvcGVkQ2hhcnMoKTsKICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUlQdjQoaG9zdCkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICIuIikgPCAzKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY0OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBob3N0Lm1hdGNoKC9eKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSkkL3UpIHx8IFtdOwogICAgICBjb25zdCBbYWRkcmVzc10gPSBtYXRjaGVzOwogICAgICBpZiAoYWRkcmVzcykgewogICAgICAgIHJldHVybiB7IGhvc3Q6IHN0cmlwTGVhZGluZ1plcm9zKGFkZHJlc3MsICIuIiksIGlzSVBWNDogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGlucHV0LCBrZWVwWmVybyA9IGZhbHNlKSB7CiAgICAgIGxldCBhY2MgPSAiIjsKICAgICAgbGV0IHN0cmlwID0gdHJ1ZTsKICAgICAgZm9yIChjb25zdCBjIG9mIGlucHV0KSB7CiAgICAgICAgaWYgKEhFWFtjXSA9PT0gdm9pZCAwKSByZXR1cm4gdm9pZCAwOwogICAgICAgIGlmIChjICE9PSAiMCIgJiYgc3RyaXAgPT09IHRydWUpIHN0cmlwID0gZmFsc2U7CiAgICAgICAgaWYgKCFzdHJpcCkgYWNjICs9IGM7CiAgICAgIH0KICAgICAgaWYgKGtlZXBaZXJvICYmIGFjYy5sZW5ndGggPT09IDApIGFjYyA9ICIwIjsKICAgICAgcmV0dXJuIGFjYzsKICAgIH0KICAgIGZ1bmN0aW9uIGdldElQVjYoaW5wdXQpIHsKICAgICAgbGV0IHRva2VuQ291bnQgPSAwOwogICAgICBjb25zdCBvdXRwdXQgPSB7IGVycm9yOiBmYWxzZSwgYWRkcmVzczogIiIsIHpvbmU6ICIiIH07CiAgICAgIGNvbnN0IGFkZHJlc3MgPSBbXTsKICAgICAgY29uc3QgYnVmZmVyID0gW107CiAgICAgIGxldCBpc1pvbmUgPSBmYWxzZTsKICAgICAgbGV0IGVuZGlwdjZFbmNvdW50ZXJlZCA9IGZhbHNlOwogICAgICBsZXQgZW5kSXB2NiA9IGZhbHNlOwogICAgICBmdW5jdGlvbiBjb25zdW1lKCkgewogICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICBpZiAoaXNab25lID09PSBmYWxzZSkgewogICAgICAgICAgICBjb25zdCBoZXggPSBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQoYnVmZmVyKTsKICAgICAgICAgICAgaWYgKGhleCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgYWRkcmVzcy5wdXNoKGhleCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGJ1ZmZlci5sZW5ndGggPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3Vyc29yID0gaW5wdXRbaV07CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIlsiIHx8IGN1cnNvciA9PT0gIl0iKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIjoiKSB7CiAgICAgICAgICBpZiAoZW5kaXB2NkVuY291bnRlcmVkID09PSB0cnVlKSB7CiAgICAgICAgICAgIGVuZElwdjYgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0b2tlbkNvdW50Kys7CiAgICAgICAgICBhZGRyZXNzLnB1c2goIjoiKTsKICAgICAgICAgIGlmICh0b2tlbkNvdW50ID4gNykgewogICAgICAgICAgICBvdXRwdXQuZXJyb3IgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpIC0gMSA+PSAwICYmIGlucHV0W2kgLSAxXSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGVuZGlwdjZFbmNvdW50ZXJlZCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGN1cnNvciA9PT0gIiUiKSB7CiAgICAgICAgICBpZiAoIWNvbnN1bWUoKSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlzWm9uZSA9IHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKGN1cnNvcik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGJ1ZmZlci5sZW5ndGgpIHsKICAgICAgICBpZiAoaXNab25lKSB7CiAgICAgICAgICBvdXRwdXQuem9uZSA9IGJ1ZmZlci5qb2luKCIiKTsKICAgICAgICB9IGVsc2UgaWYgKGVuZElwdjYpIHsKICAgICAgICAgIGFkZHJlc3MucHVzaChidWZmZXIuam9pbigiIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcikpOwogICAgICAgIH0KICAgICAgfQogICAgICBvdXRwdXQuYWRkcmVzcyA9IGFkZHJlc3Muam9pbigiIik7CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY2KGhvc3QsIG9wdHMgPSB7fSkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICI6IikgPCAyKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY2OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IGlwdjYgPSBnZXRJUFY2KGhvc3QpOwogICAgICBpZiAoIWlwdjYuZXJyb3IpIHsKICAgICAgICBsZXQgbmV3SG9zdCA9IGlwdjYuYWRkcmVzczsKICAgICAgICBsZXQgZXNjYXBlZEhvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgaWYgKGlwdjYuem9uZSkgewogICAgICAgICAgbmV3SG9zdCArPSAiJSIgKyBpcHY2LnpvbmU7CiAgICAgICAgICBlc2NhcGVkSG9zdCArPSAiJTI1IiArIGlwdjYuem9uZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsgaG9zdDogbmV3SG9zdCwgZXNjYXBlZEhvc3QsIGlzSVBWNjogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaXBMZWFkaW5nWmVyb3Moc3RyMiwgdG9rZW4pIHsKICAgICAgbGV0IG91dCA9ICIiOwogICAgICBsZXQgc2tpcCA9IHRydWU7CiAgICAgIGNvbnN0IGwgPSBzdHIyLmxlbmd0aDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHsKICAgICAgICBjb25zdCBjID0gc3RyMltpXTsKICAgICAgICBpZiAoYyA9PT0gIjAiICYmIHNraXApIHsKICAgICAgICAgIGlmIChpICsgMSA8PSBsICYmIHN0cjJbaSArIDFdID09PSB0b2tlbiB8fCBpICsgMSA9PT0gbCkgewogICAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICAgICAgc2tpcCA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoYyA9PT0gdG9rZW4pIHsKICAgICAgICAgICAgc2tpcCA9IHRydWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRUb2tlbihzdHIyLCB0b2tlbikgewogICAgICBsZXQgaW5kID0gMDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgaWYgKHN0cjJbaV0gPT09IHRva2VuKSBpbmQrKzsKICAgICAgfQogICAgICByZXR1cm4gaW5kOwogICAgfQogICAgdmFyIFJEUzEgPSAvXlwuXC4/XC8vdTsKICAgIHZhciBSRFMyID0gL15cL1wuKD86XC98JCkvdTsKICAgIHZhciBSRFMzID0gL15cL1wuXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzUgPSAvXlwvPyg/Oi58XG4pKj8oPz1cL3wkKS91OwogICAgZnVuY3Rpb24gcmVtb3ZlRG90U2VnbWVudHMoaW5wdXQpIHsKICAgICAgY29uc3Qgb3V0cHV0ID0gW107CiAgICAgIHdoaWxlIChpbnB1dC5sZW5ndGgpIHsKICAgICAgICBpZiAoaW5wdXQubWF0Y2goUkRTMSkpIHsKICAgICAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShSRFMxLCAiIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMyKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzIsICIvIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMzKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzMsICIvIik7CiAgICAgICAgICBvdXRwdXQucG9wKCk7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PT0gIi4iIHx8IGlucHV0ID09PSAiLi4iKSB7CiAgICAgICAgICBpbnB1dCA9ICIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpbSA9IGlucHV0Lm1hdGNoKFJEUzUpOwogICAgICAgICAgaWYgKGltKSB7CiAgICAgICAgICAgIGNvbnN0IHMgPSBpbVswXTsKICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShzLmxlbmd0aCk7CiAgICAgICAgICAgIG91dHB1dC5wdXNoKHMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGRvdCBzZWdtZW50IGNvbmRpdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0cHV0LmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcoY29tcG9uZW50cywgZXNjKSB7CiAgICAgIGNvbnN0IGZ1bmMgPSBlc2MgIT09IHRydWUgPyBlc2NhcGUgOiB1bmVzY2FwZTsKICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnNjaGVtZSA9IGZ1bmMoY29tcG9uZW50cy5zY2hlbWUpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnVzZXJpbmZvICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnVzZXJpbmZvID0gZnVuYyhjb21wb25lbnRzLnVzZXJpbmZvKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmhvc3QgPSBmdW5jKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZnVuYyhjb21wb25lbnRzLnBhdGgpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnF1ZXJ5ID0gZnVuYyhjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5mcmFnbWVudCA9IGZ1bmMoY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucykgewogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICAgIHVyaVRva2Vucy5wdXNoKCJAIik7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgbGV0IGhvc3QgPSB1bmVzY2FwZShjb21wb25lbnRzLmhvc3QpOwogICAgICAgIGNvbnN0IGlwVjRyZXMgPSBub3JtYWxpemVJUHY0KGhvc3QpOwogICAgICAgIGlmIChpcFY0cmVzLmlzSVBWNCkgewogICAgICAgICAgaG9zdCA9IGlwVjRyZXMuaG9zdDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgaXBWNnJlcyA9IG5vcm1hbGl6ZUlQdjYoaXBWNHJlcy5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICBpZiAoaXBWNnJlcy5pc0lQVjYgPT09IHRydWUpIHsKICAgICAgICAgICAgaG9zdCA9IGBbJHtpcFY2cmVzLmVzY2FwZWRIb3N0fV1gOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaG9zdCA9IGNvbXBvbmVudHMuaG9zdDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2goaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJudW1iZXIiIHx8IHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIjoiKTsKICAgICAgICB1cmlUb2tlbnMucHVzaChTdHJpbmcoY29tcG9uZW50cy5wb3J0KSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5sZW5ndGggPyB1cmlUb2tlbnMuam9pbigiIikgOiB2b2lkIDA7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIHJlY29tcG9zZUF1dGhvcml0eSwKICAgICAgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcsCiAgICAgIHJlbW92ZURvdFNlZ21lbnRzLAogICAgICBub3JtYWxpemVJUHY0LAogICAgICBub3JtYWxpemVJUHY2LAogICAgICBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3NjaGVtZXMuanMKdmFyIHJlcXVpcmVfc2NoZW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfdXJpID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBub3JtYWxpemVJUHY2LCBub3JtYWxpemVJUHY0LCByZW1vdmVEb3RTZWdtZW50cywgcmVjb21wb3NlQXV0aG9yaXR5LCBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyB9ID0gcmVxdWlyZV91dGlsczIoKTsKICAgIHZhciBTQ0hFTUVTID0gcmVxdWlyZV9zY2hlbWVzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemUodXJpLCBvcHRpb25zKSB7CiAgICAgIGlmICh0eXBlb2YgdXJpID09PSAic3RyaW5nIikgewogICAgICAgIHVyaSA9IHNlcmlhbGl6ZShwYXJzZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpID09PSAib2JqZWN0IikgewogICAgICAgIHVyaSA9IHBhcnNlKHNlcmlhbGl6ZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShiYXNlVVJJLCByZWxhdGl2ZVVSSSwgb3B0aW9ucykgewogICAgICBjb25zdCBzY2hlbWVsZXNzT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBzY2hlbWU6ICJudWxsIiB9LCBvcHRpb25zKTsKICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ29tcG9uZW50cyhwYXJzZShiYXNlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHBhcnNlKHJlbGF0aXZlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHNjaGVtZWxlc3NPcHRpb25zLCB0cnVlKTsKICAgICAgcmV0dXJuIHNlcmlhbGl6ZShyZXNvbHZlZCwgeyAuLi5zY2hlbWVsZXNzT3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRzKGJhc2UsIHJlbGF0aXZlLCBvcHRpb25zLCBza2lwTm9ybWFsaXphdGlvbikgewogICAgICBjb25zdCB0YXJnZXQgPSB7fTsKICAgICAgaWYgKCFza2lwTm9ybWFsaXphdGlvbikgewogICAgICAgIGJhc2UgPSBwYXJzZShzZXJpYWxpemUoYmFzZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICAgIHJlbGF0aXZlID0gcGFyc2Uoc2VyaWFsaXplKHJlbGF0aXZlLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiByZWxhdGl2ZS5zY2hlbWUpIHsKICAgICAgICB0YXJnZXQuc2NoZW1lID0gcmVsYXRpdmUuc2NoZW1lOwogICAgICAgIHRhcmdldC51c2VyaW5mbyA9IHJlbGF0aXZlLnVzZXJpbmZvOwogICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoIHx8ICIiKTsKICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocmVsYXRpdmUudXNlcmluZm8gIT09IHZvaWQgMCB8fCByZWxhdGl2ZS5ob3N0ICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUucG9ydCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICAgIHRhcmdldC5wb3J0ID0gcmVsYXRpdmUucG9ydDsKICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFyZWxhdGl2ZS5wYXRoKSB7CiAgICAgICAgICAgIHRhcmdldC5wYXRoID0gYmFzZS5wYXRoOwogICAgICAgICAgICBpZiAocmVsYXRpdmUucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IGJhc2UucXVlcnk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChyZWxhdGl2ZS5wYXRoLmNoYXJBdCgwKSA9PT0gIi8iKSB7CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBpZiAoKGJhc2UudXNlcmluZm8gIT09IHZvaWQgMCB8fCBiYXNlLmhvc3QgIT09IHZvaWQgMCB8fCBiYXNlLnBvcnQgIT09IHZvaWQgMCkgJiYgIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSAiLyIgKyByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aC5zbGljZSgwLCBiYXNlLnBhdGgubGFzdEluZGV4T2YoIi8iKSArIDEpICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyh0YXJnZXQucGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgICB9CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSBiYXNlLnVzZXJpbmZvOwogICAgICAgICAgdGFyZ2V0Lmhvc3QgPSBiYXNlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IGJhc2UucG9ydDsKICAgICAgICB9CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IGJhc2Uuc2NoZW1lOwogICAgICB9CiAgICAgIHRhcmdldC5mcmFnbWVudCA9IHJlbGF0aXZlLmZyYWdtZW50OwogICAgICByZXR1cm4gdGFyZ2V0OwogICAgfQogICAgZnVuY3Rpb24gZXF1YWwodXJpQSwgdXJpQiwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaUEgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQSA9IHVuZXNjYXBlKHVyaUEpOwogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQSwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQSA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlBLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgdXJpQiA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlCID0gdW5lc2NhcGUodXJpQik7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhwYXJzZSh1cmlCLCBvcHRpb25zKSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpQiA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmlCID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHVyaUIsIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaUEudG9Mb3dlckNhc2UoKSA9PT0gdXJpQi50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gc2VyaWFsaXplKGNtcHRzLCBvcHRzKSB7CiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7CiAgICAgICAgaG9zdDogY21wdHMuaG9zdCwKICAgICAgICBzY2hlbWU6IGNtcHRzLnNjaGVtZSwKICAgICAgICB1c2VyaW5mbzogY21wdHMudXNlcmluZm8sCiAgICAgICAgcG9ydDogY21wdHMucG9ydCwKICAgICAgICBwYXRoOiBjbXB0cy5wYXRoLAogICAgICAgIHF1ZXJ5OiBjbXB0cy5xdWVyeSwKICAgICAgICBuaWQ6IGNtcHRzLm5pZCwKICAgICAgICBuc3M6IGNtcHRzLm5zcywKICAgICAgICB1dWlkOiBjbXB0cy51dWlkLAogICAgICAgIGZyYWdtZW50OiBjbXB0cy5mcmFnbWVudCwKICAgICAgICByZWZlcmVuY2U6IGNtcHRzLnJlZmVyZW5jZSwKICAgICAgICByZXNvdXJjZU5hbWU6IGNtcHRzLnJlc291cmNlTmFtZSwKICAgICAgICBzZWN1cmU6IGNtcHRzLnNlY3VyZSwKICAgICAgICBlcnJvcjogIiIKICAgICAgfTsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IGNvbXBvbmVudHMuc2NoZW1lIHx8ICIiKS50b0xvd2VyQ2FzZSgpXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5zZXJpYWxpemUpIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKGNvbXBvbmVudHMsIG9wdGlvbnMpOwogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEVzY2FwZSkgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBjb21wb25lbnRzLnBhdGggPSBjb21wb25lbnRzLnBhdGguc3BsaXQoIiUzQSIpLmpvaW4oIjoiKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gdW5lc2NhcGUoY29tcG9uZW50cy5wYXRoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBjb21wb25lbnRzLnNjaGVtZSkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMuc2NoZW1lLCAiOiIpOwogICAgICB9CiAgICAgIGNvbnN0IGF1dGhvcml0eSA9IHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGF1dGhvcml0eSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IikgewogICAgICAgICAgdXJpVG9rZW5zLnB1c2goIi8vIik7CiAgICAgICAgfQogICAgICAgIHVyaVRva2Vucy5wdXNoKGF1dGhvcml0eSk7CiAgICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAmJiBjb21wb25lbnRzLnBhdGguY2hhckF0KDApICE9PSAiLyIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnBhdGggIT09IHZvaWQgMCkgewogICAgICAgIGxldCBzID0gY29tcG9uZW50cy5wYXRoOwogICAgICAgIGlmICghb3B0aW9ucy5hYnNvbHV0ZVBhdGggJiYgKCFzY2hlbWVIYW5kbGVyIHx8ICFzY2hlbWVIYW5kbGVyLmFic29sdXRlUGF0aCkpIHsKICAgICAgICAgIHMgPSByZW1vdmVEb3RTZWdtZW50cyhzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGF1dGhvcml0eSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBzID0gcy5yZXBsYWNlKC9eXC9cLy91LCAiLyUyRiIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChzKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5xdWVyeSAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIj8iLCBjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIiMiLCBjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmpvaW4oIiIpOwogICAgfQogICAgdmFyIGhleExvb2tVcCA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEyNyB9LCAodiwgaykgPT4gL1teISIkJicoKSorLFwtLjs9X2BhLXp7fX5dL3UudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGspKSk7CiAgICBmdW5jdGlvbiBub25TaW1wbGVEb21haW4odmFsdWUpIHsKICAgICAgbGV0IGNvZGUgPSAwOwogICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdmFsdWUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHsKICAgICAgICBjb2RlID0gdmFsdWUuY2hhckNvZGVBdChpKTsKICAgICAgICBpZiAoY29kZSA+IDEyNiB8fCBoZXhMb29rVXBbY29kZV0pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICB2YXIgVVJJX1BBUlNFID0gL14oPzooW14jLzo/XSspOik/KD86XC9cLygoPzooW14jLz9AXSopQCk/KFxbW14jLz9cXV0rXF18W14jLzo/XSopKD86OihcZCopKT8pKT8oW14jP10qKSg/Olw/KFteI10qKSk/KD86IygoPzoufFtcblxyXSkqKSk/L3U7CiAgICBmdW5jdGlvbiBwYXJzZSh1cmksIG9wdHMpIHsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCBwYXJzZWQgPSB7CiAgICAgICAgc2NoZW1lOiB2b2lkIDAsCiAgICAgICAgdXNlcmluZm86IHZvaWQgMCwKICAgICAgICBob3N0OiAiIiwKICAgICAgICBwb3J0OiB2b2lkIDAsCiAgICAgICAgcGF0aDogIiIsCiAgICAgICAgcXVlcnk6IHZvaWQgMCwKICAgICAgICBmcmFnbWVudDogdm9pZCAwCiAgICAgIH07CiAgICAgIGNvbnN0IGdvdEVuY29kaW5nID0gdXJpLmluZGV4T2YoIiUiKSAhPT0gLTE7CiAgICAgIGxldCBpc0lQID0gZmFsc2U7CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSA9PT0gInN1ZmZpeCIpIHVyaSA9IChvcHRpb25zLnNjaGVtZSA/IG9wdGlvbnMuc2NoZW1lICsgIjoiIDogIiIpICsgIi8vIiArIHVyaTsKICAgICAgY29uc3QgbWF0Y2hlcyA9IHVyaS5tYXRjaChVUklfUEFSU0UpOwogICAgICBpZiAobWF0Y2hlcykgewogICAgICAgIHBhcnNlZC5zY2hlbWUgPSBtYXRjaGVzWzFdOwogICAgICAgIHBhcnNlZC51c2VyaW5mbyA9IG1hdGNoZXNbM107CiAgICAgICAgcGFyc2VkLmhvc3QgPSBtYXRjaGVzWzRdOwogICAgICAgIHBhcnNlZC5wb3J0ID0gcGFyc2VJbnQobWF0Y2hlc1s1XSwgMTApOwogICAgICAgIHBhcnNlZC5wYXRoID0gbWF0Y2hlc1s2XSB8fCAiIjsKICAgICAgICBwYXJzZWQucXVlcnkgPSBtYXRjaGVzWzddOwogICAgICAgIHBhcnNlZC5mcmFnbWVudCA9IG1hdGNoZXNbOF07CiAgICAgICAgaWYgKGlzTmFOKHBhcnNlZC5wb3J0KSkgewogICAgICAgICAgcGFyc2VkLnBvcnQgPSBtYXRjaGVzWzVdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyc2VkLmhvc3QpIHsKICAgICAgICAgIGNvbnN0IGlwdjRyZXN1bHQgPSBub3JtYWxpemVJUHY0KHBhcnNlZC5ob3N0KTsKICAgICAgICAgIGlmIChpcHY0cmVzdWx0LmlzSVBWNCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaXB2NnJlc3VsdCA9IG5vcm1hbGl6ZUlQdjYoaXB2NHJlc3VsdC5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NnJlc3VsdC5ob3N0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgIGlzSVAgPSBpcHY2cmVzdWx0LmlzSVBWNjsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NHJlc3VsdC5ob3N0OwogICAgICAgICAgICBpc0lQID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCAmJiBwYXJzZWQudXNlcmluZm8gPT09IHZvaWQgMCAmJiBwYXJzZWQuaG9zdCA9PT0gdm9pZCAwICYmIHBhcnNlZC5wb3J0ID09PSB2b2lkIDAgJiYgIXBhcnNlZC5wYXRoICYmIHBhcnNlZC5xdWVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInNhbWUtZG9jdW1lbnQiOwogICAgICAgIH0gZWxzZSBpZiAocGFyc2VkLnNjaGVtZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInJlbGF0aXZlIjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5mcmFnbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gImFic29sdXRlIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJ1cmkiOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgJiYgb3B0aW9ucy5yZWZlcmVuY2UgIT09ICJzdWZmaXgiICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSBwYXJzZWQucmVmZXJlbmNlKSB7CiAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBpcyBub3QgYSAiICsgb3B0aW9ucy5yZWZlcmVuY2UgKyAiIHJlZmVyZW5jZS4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWVIYW5kbGVyID0gU0NIRU1FU1sob3B0aW9ucy5zY2hlbWUgfHwgcGFyc2VkLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgICAgaWYgKCFvcHRpb25zLnVuaWNvZGVTdXBwb3J0ICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci51bmljb2RlU3VwcG9ydCkpIHsKICAgICAgICAgIGlmIChwYXJzZWQuaG9zdCAmJiAob3B0aW9ucy5kb21haW5Ib3N0IHx8IHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5kb21haW5Ib3N0KSAmJiBpc0lQID09PSBmYWxzZSAmJiBub25TaW1wbGVEb21haW4ocGFyc2VkLmhvc3QpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcGFyc2VkLmhvc3QgPSBVUkwuZG9tYWluVG9BU0NJSShwYXJzZWQuaG9zdC50b0xvd2VyQ2FzZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiSG9zdCdzIGRvbWFpbiBuYW1lIGNhbiBub3QgYmUgY29udmVydGVkIHRvIEFTQ0lJOiAiICsgZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXNjaGVtZUhhbmRsZXIgfHwgc2NoZW1lSGFuZGxlciAmJiAhc2NoZW1lSGFuZGxlci5za2lwTm9ybWFsaXplKSB7CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLnNjaGVtZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5zY2hlbWUgPSB1bmVzY2FwZShwYXJzZWQuc2NoZW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChnb3RFbmNvZGluZyAmJiBwYXJzZWQuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gdW5lc2NhcGUocGFyc2VkLmhvc3QpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5wYXRoICE9PSB2b2lkIDAgJiYgcGFyc2VkLnBhdGgubGVuZ3RoKSB7CiAgICAgICAgICAgIHBhcnNlZC5wYXRoID0gZXNjYXBlKHVuZXNjYXBlKHBhcnNlZC5wYXRoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGFyc2VkLmZyYWdtZW50ICE9PSB2b2lkIDAgJiYgcGFyc2VkLmZyYWdtZW50Lmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBlbmNvZGVVUkkoZGVjb2RlVVJJQ29tcG9uZW50KHBhcnNlZC5mcmFnbWVudCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1lSGFuZGxlciAmJiBzY2hlbWVIYW5kbGVyLnBhcnNlKSB7CiAgICAgICAgICBzY2hlbWVIYW5kbGVyLnBhcnNlKHBhcnNlZCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiVVJJIGNhbiBub3QgYmUgcGFyc2VkLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhcnNlZDsKICAgIH0KICAgIHZhciBmYXN0VXJpID0gewogICAgICBTQ0hFTUVTLAogICAgICBub3JtYWxpemUsCiAgICAgIHJlc29sdmUsCiAgICAgIHJlc29sdmVDb21wb25lbnRzLAogICAgICBlcXVhbCwKICAgICAgc2VyaWFsaXplLAogICAgICBwYXJzZQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZGVmYXVsdCA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZmFzdFVyaSA9IGZhc3RVcmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdXJpLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXJpID0gcmVxdWlyZV9mYXN0X3VyaSgpOwogICAgdXJpLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91cmkiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB1cmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIyLCBmbGFncykgPT4gbmV3IFJlZ0V4cChzdHIyLCBmbGFncyk7CiAgICBkZWZhdWx0UmVnRXhwLmNvZGUgPSAibmV3IFJlZ0V4cCI7CiAgICB2YXIgTUVUQV9JR05PUkVfT1BUSU9OUyA9IFsicmVtb3ZlQWRkaXRpb25hbCIsICJ1c2VEZWZhdWx0cyIsICJjb2VyY2VUeXBlcyJdOwogICAgdmFyIEVYVF9TQ09QRV9OQU1FUyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgInZhbGlkYXRlIiwKICAgICAgInNlcmlhbGl6ZSIsCiAgICAgICJwYXJzZSIsCiAgICAgICJ3cmFwcGVyIiwKICAgICAgInJvb3QiLAogICAgICAic2NoZW1hIiwKICAgICAgImtleXdvcmQiLAogICAgICAicGF0dGVybiIsCiAgICAgICJmb3JtYXRzIiwKICAgICAgInZhbGlkYXRlJGRhdGEiLAogICAgICAiZnVuYyIsCiAgICAgICJvYmoiLAogICAgICAiRXJyb3IiCiAgICBdKTsKICAgIHZhciByZW1vdmVkT3B0aW9ucyA9IHsKICAgICAgZXJyb3JEYXRhUGF0aDogIiIsCiAgICAgIGZvcm1hdDogImB2YWxpZGF0ZUZvcm1hdHM6IGZhbHNlYCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG51bGxhYmxlOiAnIm51bGxhYmxlIiBrZXl3b3JkIGlzIHN1cHBvcnRlZCBieSBkZWZhdWx0LicsCiAgICAgIGpzb25Qb2ludGVyczogIkRlcHJlY2F0ZWQganNQcm9wZXJ0eVN5bnRheCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIGV4dGVuZFJlZnM6ICJEZXByZWNhdGVkIGlnbm9yZUtleXdvcmRzV2l0aFJlZiBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG1pc3NpbmdSZWZzOiAiUGFzcyBlbXB0eSBzY2hlbWEgd2l0aCAkaWQgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB0byBhanYuYWRkU2NoZW1hLiIsCiAgICAgIHByb2Nlc3NDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3Byb2Nlc3M6IChjb2RlLCBzY2hlbWFFbnY6IG9iamVjdCkgPT4gc3RyaW5nfWAiLAogICAgICBzb3VyY2VDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3NvdXJjZTogdHJ1ZX1gIiwKICAgICAgc3RyaWN0RGVmYXVsdHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICBzdHJpY3RLZXl3b3JkczogIkl0IGlzIGRlZmF1bHQgbm93LCBzZWUgb3B0aW9uIGBzdHJpY3RgLiIsCiAgICAgIHVuaXF1ZUl0ZW1zOiAnInVuaXF1ZUl0ZW1zIiBrZXl3b3JkIGlzIGFsd2F5cyB2YWxpZGF0ZWQuJywKICAgICAgdW5rbm93bkZvcm1hdHM6ICJEaXNhYmxlIHN0cmljdCBtb2RlIG9yIHBhc3MgYHRydWVgIHRvIGBhanYuYWRkRm9ybWF0YCAob3IgYGZvcm1hdHNgIG9wdGlvbikuIiwKICAgICAgY2FjaGU6ICJNYXAgaXMgdXNlZCBhcyBjYWNoZSwgc2NoZW1hIG9iamVjdCBhcyBrZXkuIiwKICAgICAgc2VyaWFsaXplOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIGFqdkVycm9yczogIkl0IGlzIGRlZmF1bHQgbm93LiIKICAgIH07CiAgICB2YXIgZGVwcmVjYXRlZE9wdGlvbnMgPSB7CiAgICAgIGlnbm9yZUtleXdvcmRzV2l0aFJlZjogIiIsCiAgICAgIGpzUHJvcGVydHlTeW50YXg6ICIiLAogICAgICB1bmljb2RlOiAnIm1pbkxlbmd0aCIvIm1heExlbmd0aCIgYWNjb3VudCBmb3IgdW5pY29kZSBjaGFyYWN0ZXJzIGJ5IGRlZmF1bHQuJwogICAgfTsKICAgIHZhciBNQVhfRVhQUkVTU0lPTiA9IDIwMDsKICAgIGZ1bmN0aW9uIHJlcXVpcmVkT3B0aW9ucyhvKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9qLCBfaywgX2wsIF9tLCBfbywgX3AsIF9xLCBfciwgX3MsIF90LCBfdSwgX3YsIF93LCBfeCwgX3ksIF96LCBfMDsKICAgICAgY29uc3QgcyA9IG8uc3RyaWN0OwogICAgICBjb25zdCBfb3B0eiA9IChfYSA9IG8uY29kZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplOwogICAgICBjb25zdCBvcHRpbWl6ZSA9IF9vcHR6ID09PSB0cnVlIHx8IF9vcHR6ID09PSB2b2lkIDAgPyAxIDogX29wdHogfHwgMDsKICAgICAgY29uc3QgcmVnRXhwID0gKF9jID0gKF9iID0gby5jb2RlKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucmVnRXhwKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiBkZWZhdWx0UmVnRXhwOwogICAgICBjb25zdCB1cmlSZXNvbHZlciA9IChfZCA9IG8udXJpUmVzb2x2ZXIpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6IHVyaV8xLmRlZmF1bHQ7CiAgICAgIHJldHVybiB7CiAgICAgICAgc3RyaWN0U2NoZW1hOiAoX2YgPSAoX2UgPSBvLnN0cmljdFNjaGVtYSkgIT09IG51bGwgJiYgX2UgIT09IHZvaWQgMCA/IF9lIDogcykgIT09IG51bGwgJiYgX2YgIT09IHZvaWQgMCA/IF9mIDogdHJ1ZSwKICAgICAgICBzdHJpY3ROdW1iZXJzOiAoX2ggPSAoX2cgPSBvLnN0cmljdE51bWJlcnMpICE9PSBudWxsICYmIF9nICE9PSB2b2lkIDAgPyBfZyA6IHMpICE9PSBudWxsICYmIF9oICE9PSB2b2lkIDAgPyBfaCA6IHRydWUsCiAgICAgICAgc3RyaWN0VHlwZXM6IChfayA9IChfaiA9IG8uc3RyaWN0VHlwZXMpICE9PSBudWxsICYmIF9qICE9PSB2b2lkIDAgPyBfaiA6IHMpICE9PSBudWxsICYmIF9rICE9PSB2b2lkIDAgPyBfayA6ICJsb2ciLAogICAgICAgIHN0cmljdFR1cGxlczogKF9tID0gKF9sID0gby5zdHJpY3RUdXBsZXMpICE9PSBudWxsICYmIF9sICE9PSB2b2lkIDAgPyBfbCA6IHMpICE9PSBudWxsICYmIF9tICE9PSB2b2lkIDAgPyBfbSA6ICJsb2ciLAogICAgICAgIHN0cmljdFJlcXVpcmVkOiAoX3AgPSAoX28gPSBvLnN0cmljdFJlcXVpcmVkKSAhPT0gbnVsbCAmJiBfbyAhPT0gdm9pZCAwID8gX28gOiBzKSAhPT0gbnVsbCAmJiBfcCAhPT0gdm9pZCAwID8gX3AgOiBmYWxzZSwKICAgICAgICBjb2RlOiBvLmNvZGUgPyB7IC4uLm8uY29kZSwgb3B0aW1pemUsIHJlZ0V4cCB9IDogeyBvcHRpbWl6ZSwgcmVnRXhwIH0sCiAgICAgICAgbG9vcFJlcXVpcmVkOiAoX3EgPSBvLmxvb3BSZXF1aXJlZCkgIT09IG51bGwgJiYgX3EgIT09IHZvaWQgMCA/IF9xIDogTUFYX0VYUFJFU1NJT04sCiAgICAgICAgbG9vcEVudW06IChfciA9IG8ubG9vcEVudW0pICE9PSBudWxsICYmIF9yICE9PSB2b2lkIDAgPyBfciA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIG1ldGE6IChfcyA9IG8ubWV0YSkgIT09IG51bGwgJiYgX3MgIT09IHZvaWQgMCA/IF9zIDogdHJ1ZSwKICAgICAgICBtZXNzYWdlczogKF90ID0gby5tZXNzYWdlcykgIT09IG51bGwgJiYgX3QgIT09IHZvaWQgMCA/IF90IDogdHJ1ZSwKICAgICAgICBpbmxpbmVSZWZzOiAoX3UgPSBvLmlubGluZVJlZnMpICE9PSBudWxsICYmIF91ICE9PSB2b2lkIDAgPyBfdSA6IHRydWUsCiAgICAgICAgc2NoZW1hSWQ6IChfdiA9IG8uc2NoZW1hSWQpICE9PSBudWxsICYmIF92ICE9PSB2b2lkIDAgPyBfdiA6ICIkaWQiLAogICAgICAgIGFkZFVzZWRTY2hlbWE6IChfdyA9IG8uYWRkVXNlZFNjaGVtYSkgIT09IG51bGwgJiYgX3cgIT09IHZvaWQgMCA/IF93IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZVNjaGVtYTogKF94ID0gby52YWxpZGF0ZVNjaGVtYSkgIT09IG51bGwgJiYgX3ggIT09IHZvaWQgMCA/IF94IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZUZvcm1hdHM6IChfeSA9IG8udmFsaWRhdGVGb3JtYXRzKSAhPT0gbnVsbCAmJiBfeSAhPT0gdm9pZCAwID8gX3kgOiB0cnVlLAogICAgICAgIHVuaWNvZGVSZWdFeHA6IChfeiA9IG8udW5pY29kZVJlZ0V4cCkgIT09IG51bGwgJiYgX3ogIT09IHZvaWQgMCA/IF96IDogdHJ1ZSwKICAgICAgICBpbnQzMnJhbmdlOiAoXzAgPSBvLmludDMycmFuZ2UpICE9PSBudWxsICYmIF8wICE9PSB2b2lkIDAgPyBfMCA6IHRydWUsCiAgICAgICAgdXJpUmVzb2x2ZXIKICAgICAgfTsKICAgIH0KICAgIHZhciBBanYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMgPSB7fSkgewogICAgICAgIHRoaXMuc2NoZW1hcyA9IHt9OwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICAgIHRoaXMuZm9ybWF0cyA9IHt9OwogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgdGhpcy5fbG9hZGluZyA9IHt9OwogICAgICAgIHRoaXMuX2NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBvcHRzID0gdGhpcy5vcHRzID0geyAuLi5vcHRzLCAuLi5yZXF1aXJlZE9wdGlvbnMob3B0cykgfTsKICAgICAgICBjb25zdCB7IGVzNSwgbGluZXMgfSA9IHRoaXMub3B0cy5jb2RlOwogICAgICAgIHRoaXMuc2NvcGUgPSBuZXcgY29kZWdlbl8yLlZhbHVlU2NvcGUoeyBzY29wZToge30sIHByZWZpeGVzOiBFWFRfU0NPUEVfTkFNRVMsIGVzNSwgbGluZXMgfSk7CiAgICAgICAgdGhpcy5sb2dnZXIgPSBnZXRMb2dnZXIob3B0cy5sb2dnZXIpOwogICAgICAgIGNvbnN0IGZvcm1hdE9wdCA9IG9wdHMudmFsaWRhdGVGb3JtYXRzOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZmFsc2U7CiAgICAgICAgdGhpcy5SVUxFUyA9ICgwLCBydWxlc18xLmdldFJ1bGVzKSgpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIHJlbW92ZWRPcHRpb25zLCBvcHRzLCAiTk9UIFNVUFBPUlRFRCIpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIGRlcHJlY2F0ZWRPcHRpb25zLCBvcHRzLCAiREVQUkVDQVRFRCIsICJ3YXJuIik7CiAgICAgICAgdGhpcy5fbWV0YU9wdHMgPSBnZXRNZXRhU2NoZW1hT3B0aW9ucy5jYWxsKHRoaXMpOwogICAgICAgIGlmIChvcHRzLmZvcm1hdHMpCiAgICAgICAgICBhZGRJbml0aWFsRm9ybWF0cy5jYWxsKHRoaXMpOwogICAgICAgIHRoaXMuX2FkZFZvY2FidWxhcmllcygpOwogICAgICAgIHRoaXMuX2FkZERlZmF1bHRNZXRhU2NoZW1hKCk7CiAgICAgICAgaWYgKG9wdHMua2V5d29yZHMpCiAgICAgICAgICBhZGRJbml0aWFsS2V5d29yZHMuY2FsbCh0aGlzLCBvcHRzLmtleXdvcmRzKTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMubWV0YSA9PSAib2JqZWN0IikKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShvcHRzLm1ldGEpOwogICAgICAgIGFkZEluaXRpYWxTY2hlbWFzLmNhbGwodGhpcyk7CiAgICAgICAgb3B0cy52YWxpZGF0ZUZvcm1hdHMgPSBmb3JtYXRPcHQ7CiAgICAgIH0KICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoIiRhc3luYyIpOwogICAgICB9CiAgICAgIF9hZGREZWZhdWx0TWV0YVNjaGVtYSgpIHsKICAgICAgICBjb25zdCB7ICRkYXRhLCBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGxldCBfZGF0YVJlZlNjaGVtYSA9ICRkYXRhUmVmU2NoZW1hOwogICAgICAgIGlmIChzY2hlbWFJZCA9PT0gImlkIikgewogICAgICAgICAgX2RhdGFSZWZTY2hlbWEgPSB7IC4uLiRkYXRhUmVmU2NoZW1hIH07CiAgICAgICAgICBfZGF0YVJlZlNjaGVtYS5pZCA9IF9kYXRhUmVmU2NoZW1hLiRpZDsKICAgICAgICAgIGRlbGV0ZSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgfQogICAgICAgIGlmIChtZXRhICYmICRkYXRhKQogICAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKF9kYXRhUmVmU2NoZW1hLCBfZGF0YVJlZlNjaGVtYVtzY2hlbWFJZF0sIGZhbHNlKTsKICAgICAgfQogICAgICBkZWZhdWx0TWV0YSgpIHsKICAgICAgICBjb25zdCB7IG1ldGEsIHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHR5cGVvZiBtZXRhID09ICJvYmplY3QiID8gbWV0YVtzY2hlbWFJZF0gfHwgbWV0YSA6IHZvaWQgMDsKICAgICAgfQogICAgICB2YWxpZGF0ZShzY2hlbWFLZXlSZWYsIGRhdGEpIHsKICAgICAgICBsZXQgdjsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYUtleVJlZiA9PSAic3RyaW5nIikgewogICAgICAgICAgdiA9IHRoaXMuZ2V0U2NoZW1hKHNjaGVtYUtleVJlZik7CiAgICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgbm8gc2NoZW1hIHdpdGgga2V5IG9yIHJlZiAiJHtzY2hlbWFLZXlSZWZ9ImApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB2ID0gdGhpcy5jb21waWxlKHNjaGVtYUtleVJlZik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdihkYXRhKTsKICAgICAgICBpZiAoISgiJGFzeW5jIiBpbiB2KSkKICAgICAgICAgIHRoaXMuZXJyb3JzID0gdi5lcnJvcnM7CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIGNvbXBpbGUoc2NoZW1hMiwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgfHwgdGhpcy5fY29tcGlsZVNjaGVtYUVudihzY2gpOwogICAgICB9CiAgICAgIGNvbXBpbGVBc3luYyhzY2hlbWEyLCBtZXRhKSB7CiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMubG9hZFNjaGVtYSAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIm9wdGlvbnMubG9hZFNjaGVtYSBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB7IGxvYWRTY2hlbWEgfSA9IHRoaXMub3B0czsKICAgICAgICByZXR1cm4gcnVuQ29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoZW1hMiwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hMiwga2V5LCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMikpIHsKICAgICAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHNjaGVtYTIpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgICAgaWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICAgIGlmIChpZCAhPT0gdm9pZCAwICYmIHR5cGVvZiBpZCAhPSAic3RyaW5nIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSAke3NjaGVtYUlkfSBtdXN0IGJlIHN0cmluZ2ApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBrZXkgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXkgfHwgaWQpOwogICAgICAgIHRoaXMuX2NoZWNrVW5pcXVlKGtleSk7CiAgICAgICAgdGhpcy5zY2hlbWFzW2tleV0gPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEyLCBrZXksIF92YWxpZGF0ZVNjaGVtYSA9IHRoaXMub3B0cy52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaGVtYTIsIGtleSwgdHJ1ZSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyAgVmFsaWRhdGUgc2NoZW1hIGFnYWluc3QgaXRzIG1ldGEtc2NoZW1hCiAgICAgIHZhbGlkYXRlU2NoZW1hKHNjaGVtYTIsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgJHNjaGVtYTsKICAgICAgICAkc2NoZW1hID0gc2NoZW1hMi4kc2NoZW1hOwogICAgICAgIGlmICgkc2NoZW1hICE9PSB2b2lkIDAgJiYgdHlwZW9mICRzY2hlbWEgIT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiJHNjaGVtYSBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgfQogICAgICAgICRzY2hlbWEgPSAkc2NoZW1hIHx8IHRoaXMub3B0cy5kZWZhdWx0TWV0YSB8fCB0aGlzLmRlZmF1bHRNZXRhKCk7CiAgICAgICAgaWYgKCEkc2NoZW1hKSB7CiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKCJtZXRhLXNjaGVtYSBub3QgYXZhaWxhYmxlIik7CiAgICAgICAgICB0aGlzLmVycm9ycyA9IG51bGw7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLnZhbGlkYXRlKCRzY2hlbWEsIHNjaGVtYTIpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYTIgPSBrZXl3b3Jkc1trZXldOwogICAgICAgICAgICBpZiAoJGRhdGEgJiYgc2NoZW1hMikKICAgICAgICAgICAgICBrZXl3b3Jkc1trZXldID0gc2NoZW1hT3JEYXRhKHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEyLCBtZXRhLCBiYXNlSWQsIHZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hLCBhZGRTY2hlbWEgPSB0aGlzLm9wdHMuYWRkVXNlZFNjaGVtYSkgewogICAgICAgIGxldCBpZDsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiKSB7CiAgICAgICAgICBpZCA9IHNjaGVtYTJbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyICE9ICJib29sZWFuIikKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3Qgb3IgYm9vbGVhbiIpOwogICAgICAgIH0KICAgICAgICBsZXQgc2NoID0gdGhpcy5fY2FjaGUuZ2V0KHNjaGVtYTIpOwogICAgICAgIGlmIChzY2ggIT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoaWQgfHwgYmFzZUlkKTsKICAgICAgICBjb25zdCBsb2NhbFJlZnMgPSByZXNvbHZlXzEuZ2V0U2NoZW1hUmVmcy5jYWxsKHRoaXMsIHNjaGVtYTIsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hMiwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfQogICAgICBfY2hlY2tVbmlxdWUoaWQpIHsKICAgICAgICBpZiAodGhpcy5zY2hlbWFzW2lkXSB8fCB0aGlzLnJlZnNbaWRdKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSB3aXRoIGtleSBvciBpZCAiJHtpZH0iIGFscmVhZHkgZXhpc3RzYCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9jb21waWxlU2NoZW1hRW52KHNjaCkgewogICAgICAgIGlmIChzY2gubWV0YSkKICAgICAgICAgIHRoaXMuX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCk7CiAgICAgICAgZWxzZQogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIGlmICghc2NoLnZhbGlkYXRlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlOwogICAgICB9CiAgICAgIF9jb21waWxlTWV0YVNjaGVtYShzY2gpIHsKICAgICAgICBjb25zdCBjdXJyZW50T3B0cyA9IHRoaXMub3B0czsKICAgICAgICB0aGlzLm9wdHMgPSB0aGlzLl9tZXRhT3B0czsKICAgICAgICB0cnkgewogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLm9wdHMgPSBjdXJyZW50T3B0czsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBBanYuVmFsaWRhdGlvbkVycm9yID0gdmFsaWRhdGlvbl9lcnJvcl8xLmRlZmF1bHQ7CiAgICBBanYuTWlzc2luZ1JlZkVycm9yID0gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBBanY7CiAgICBmdW5jdGlvbiBjaGVja09wdGlvbnMoY2hlY2tPcHRzLCBvcHRpb25zLCBtc2csIGxvZyA9ICJlcnJvciIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gY2hlY2tPcHRzKSB7CiAgICAgICAgY29uc3Qgb3B0ID0ga2V5OwogICAgICAgIGlmIChvcHQgaW4gb3B0aW9ucykKICAgICAgICAgIHRoaXMubG9nZ2VyW2xvZ10oYCR7bXNnfTogb3B0aW9uICR7a2V5fS4gJHtjaGVja09wdHNbb3B0XX1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0U2NoRW52KGtleVJlZikgewogICAgICBrZXlSZWYgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXlSZWYpOwogICAgICByZXR1cm4gdGhpcy5zY2hlbWFzW2tleVJlZl0gfHwgdGhpcy5yZWZzW2tleVJlZl07CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsU2NoZW1hcygpIHsKICAgICAgY29uc3Qgb3B0c1NjaGVtYXMgPSB0aGlzLm9wdHMuc2NoZW1hczsKICAgICAgaWYgKCFvcHRzU2NoZW1hcykKICAgICAgICByZXR1cm47CiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHNTY2hlbWFzKSkKICAgICAgICB0aGlzLmFkZFNjaGVtYShvcHRzU2NoZW1hcyk7CiAgICAgIGVsc2UKICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvcHRzU2NoZW1hcykKICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzW2tleV0sIGtleSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsRm9ybWF0cygpIHsKICAgICAgZm9yIChjb25zdCBuYW1lIGluIHRoaXMub3B0cy5mb3JtYXRzKSB7CiAgICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy5vcHRzLmZvcm1hdHNbbmFtZV07CiAgICAgICAgaWYgKGZvcm1hdCkKICAgICAgICAgIHRoaXMuYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxLZXl3b3JkcyhkZWZzKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRlZnMpKSB7CiAgICAgICAgdGhpcy5hZGRWb2NhYnVsYXJ5KGRlZnMpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLmxvZ2dlci53YXJuKCJrZXl3b3JkcyBvcHRpb24gYXMgbWFwIGlzIGRlcHJlY2F0ZWQsIHBhc3MgYXJyYXkiKTsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIGRlZnMpIHsKICAgICAgICBjb25zdCBkZWYgPSBkZWZzW2tleXdvcmRdOwogICAgICAgIGlmICghZGVmLmtleXdvcmQpCiAgICAgICAgICBkZWYua2V5d29yZCA9IGtleXdvcmQ7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGdldE1ldGFTY2hlbWFPcHRpb25zKCkgewogICAgICBjb25zdCBtZXRhT3B0cyA9IHsgLi4udGhpcy5vcHRzIH07CiAgICAgIGZvciAoY29uc3Qgb3B0IG9mIE1FVEFfSUdOT1JFX09QVElPTlMpCiAgICAgICAgZGVsZXRlIG1ldGFPcHRzW29wdF07CiAgICAgIHJldHVybiBtZXRhT3B0czsKICAgIH0KICAgIHZhciBub0xvZ3MgPSB7IGxvZygpIHsKICAgIH0sIHdhcm4oKSB7CiAgICB9LCBlcnJvcigpIHsKICAgIH0gfTsKICAgIGZ1bmN0aW9uIGdldExvZ2dlcihsb2dnZXIpIHsKICAgICAgaWYgKGxvZ2dlciA9PT0gZmFsc2UpCiAgICAgICAgcmV0dXJuIG5vTG9nczsKICAgICAgaWYgKGxvZ2dlciA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybiBjb25zb2xlOwogICAgICBpZiAobG9nZ2VyLmxvZyAmJiBsb2dnZXIud2FybiAmJiBsb2dnZXIuZXJyb3IpCiAgICAgICAgcmV0dXJuIGxvZ2dlcjsKICAgICAgdGhyb3cgbmV3IEVycm9yKCJsb2dnZXIgbXVzdCBpbXBsZW1lbnQgbG9nLCB3YXJuIGFuZCBlcnJvciBtZXRob2RzIik7CiAgICB9CiAgICB2YXIgS0VZV09SRF9OQU1FID0gL15bYS16XyRdW2EtejAtOV8kOi1dKiQvaTsKICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZChrZXl3b3JkLCBkZWYpIHsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgKDAsIHV0aWxfMS5lYWNoSXRlbSkoa2V5d29yZCwgKGt3ZCkgPT4gewogICAgICAgIGlmIChSVUxFUy5rZXl3b3Jkc1trd2RdKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXl3b3JkICR7a3dkfSBpcyBhbHJlYWR5IGRlZmluZWRgKTsKICAgICAgICBpZiAoIUtFWVdPUkRfTkFNRS50ZXN0KGt3ZCkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGhhcyBpbnZhbGlkIG5hbWVgKTsKICAgICAgfSk7CiAgICAgIGlmICghZGVmKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiAhKCJjb2RlIiBpbiBkZWYgfHwgInZhbGlkYXRlIiBpbiBkZWYpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCckZGF0YSBrZXl3b3JkIG11c3QgaGF2ZSAiY29kZSIgb3IgInZhbGlkYXRlIiBmdW5jdGlvbicpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhZGRSdWxlKGtleXdvcmQsIGRlZmluaXRpb24sIGRhdGFUeXBlKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgcG9zdCA9IGRlZmluaXRpb24gPT09IG51bGwgfHwgZGVmaW5pdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVmaW5pdGlvbi5wb3N0OwogICAgICBpZiAoZGF0YVR5cGUgJiYgcG9zdCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2tleXdvcmQgd2l0aCAicG9zdCIgZmxhZyBjYW5ub3QgaGF2ZSAidHlwZSInKTsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgbGV0IHJ1bGVHcm91cCA9IHBvc3QgPyBSVUxFUy5wb3N0IDogUlVMRVMucnVsZXMuZmluZCgoeyB0eXBlOiB0IH0pID0+IHQgPT09IGRhdGFUeXBlKTsKICAgICAgaWYgKCFydWxlR3JvdXApIHsKICAgICAgICBydWxlR3JvdXAgPSB7IHR5cGU6IGRhdGFUeXBlLCBydWxlczogW10gfTsKICAgICAgICBSVUxFUy5ydWxlcy5wdXNoKHJ1bGVHcm91cCk7CiAgICAgIH0KICAgICAgUlVMRVMua2V5d29yZHNba2V5d29yZF0gPSB0cnVlOwogICAgICBpZiAoIWRlZmluaXRpb24pCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBydWxlID0gewogICAgICAgIGtleXdvcmQsCiAgICAgICAgZGVmaW5pdGlvbjogewogICAgICAgICAgLi4uZGVmaW5pdGlvbiwKICAgICAgICAgIHR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi5zY2hlbWFUeXBlKQogICAgICAgIH0KICAgICAgfTsKICAgICAgaWYgKGRlZmluaXRpb24uYmVmb3JlKQogICAgICAgIGFkZEJlZm9yZVJ1bGUuY2FsbCh0aGlzLCBydWxlR3JvdXAsIHJ1bGUsIGRlZmluaXRpb24uYmVmb3JlKTsKICAgICAgZWxzZQogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICBSVUxFUy5hbGxba2V5d29yZF0gPSBydWxlOwogICAgICAoX2EgPSBkZWZpbml0aW9uLmltcGxlbWVudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb3JFYWNoKChrd2QpID0+IHRoaXMuYWRkS2V5d29yZChrd2QpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEJlZm9yZVJ1bGUocnVsZUdyb3VwLCBydWxlLCBiZWZvcmUpIHsKICAgICAgY29uc3QgaSA9IHJ1bGVHcm91cC5ydWxlcy5maW5kSW5kZXgoKF9ydWxlKSA9PiBfcnVsZS5rZXl3b3JkID09PSBiZWZvcmUpOwogICAgICBpZiAoaSA+PSAwKSB7CiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnNwbGljZShpLCAwLCBydWxlKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMucHVzaChydWxlKTsKICAgICAgICB0aGlzLmxvZ2dlci53YXJuKGBydWxlICR7YmVmb3JlfSBpcyBub3QgZGVmaW5lZGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBrZXl3b3JkTWV0YXNjaGVtYShkZWYpIHsKICAgICAgbGV0IHsgbWV0YVNjaGVtYSB9ID0gZGVmOwogICAgICBpZiAobWV0YVNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiB0aGlzLm9wdHMuJGRhdGEpCiAgICAgICAgbWV0YVNjaGVtYSA9IHNjaGVtYU9yRGF0YShtZXRhU2NoZW1hKTsKICAgICAgZGVmLnZhbGlkYXRlU2NoZW1hID0gdGhpcy5jb21waWxlKG1ldGFTY2hlbWEsIHRydWUpOwogICAgfQogICAgdmFyICRkYXRhUmVmID0gewogICAgICAkcmVmOiAiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Fqdi12YWxpZGF0b3IvYWp2L21hc3Rlci9saWIvcmVmcy9kYXRhLmpzb24jIgogICAgfTsKICAgIGZ1bmN0aW9uIHNjaGVtYU9yRGF0YShzY2hlbWEyKSB7CiAgICAgIHJldHVybiB7IGFueU9mOiBbc2NoZW1hMiwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pZC5qcwp2YXIgcmVxdWlyZV9pZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvaWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZCIsCiAgICAgIGNvZGUoKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOT1QgU1VQUE9SVEVEOiBrZXl3b3JkICJpZCIsIHVzZSAiJGlkIiBmb3Igc2NoZW1hIElEJyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYWxsUmVmID0gZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSB2b2lkIDA7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIiRyZWYiLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiAkcmVmLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgYmFzZUlkLCBzY2hlbWFFbnY6IGVudiwgdmFsaWRhdGVOYW1lLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgY29uc3QgeyByb290IH0gPSBlbnY7CiAgICAgICAgaWYgKCgkcmVmID09PSAiIyIgfHwgJHJlZiA9PT0gIiMvIikgJiYgYmFzZUlkID09PSByb290LmJhc2VJZCkKICAgICAgICAgIHJldHVybiBjYWxsUm9vdFJlZigpOwogICAgICAgIGNvbnN0IHNjaE9yRW52ID0gY29tcGlsZV8xLnJlc29sdmVSZWYuY2FsbChzZWxmMiwgcm9vdCwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyByZWZfZXJyb3JfMS5kZWZhdWx0KGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgJHJlZik7CiAgICAgICAgaWYgKHNjaE9yRW52IGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgIHJldHVybiBjYWxsVmFsaWRhdGUoc2NoT3JFbnYpOwogICAgICAgIHJldHVybiBpbmxpbmVSZWZTY2hlbWEoc2NoT3JFbnYpOwogICAgICAgIGZ1bmN0aW9uIGNhbGxSb290UmVmKCkgewogICAgICAgICAgaWYgKGVudiA9PT0gcm9vdCkKICAgICAgICAgICAgcmV0dXJuIGNhbGxSZWYoY3h0LCB2YWxpZGF0ZU5hbWUsIGVudiwgZW52LiRhc3luYyk7CiAgICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHJvb3QgfSk7CiAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsICgwLCBjb2RlZ2VuXzEuXylgJHtyb290TmFtZX0udmFsaWRhdGVgLCByb290LCByb290LiRhc3luYyk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZShzY2gpIHsKICAgICAgICAgIGNvbnN0IHYgPSBnZXRWYWxpZGF0ZShjeHQsIHNjaCk7CiAgICAgICAgICBjYWxsUmVmKGN4dCwgdiwgc2NoLCBzY2guJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW5saW5lUmVmU2NoZW1hKHNjaCkgewogICAgICAgICAgY29uc3Qgc2NoTmFtZSA9IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCBvcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaCwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaCkgfSA6IHsgcmVmOiBzY2ggfSk7CiAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgICBkYXRhVHlwZXM6IFtdLAogICAgICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaE5hbWUsCiAgICAgICAgICAgIGVyclNjaGVtYVBhdGg6ICRyZWYKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQpOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBnZXRWYWxpZGF0ZShjeHQsIHNjaCkgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gZ2VuLnNjb3BlVmFsdWUoInZhbGlkYXRlIiwgeyByZWY6IHNjaC52YWxpZGF0ZSB9KSA6ICgwLCBjb2RlZ2VuXzEuXylgJHtnZW4uc2NvcGVWYWx1ZSgid3JhcHBlciIsIHsgcmVmOiBzY2ggfSl9LnZhbGlkYXRlYDsKICAgIH0KICAgIGV4cG9ydHMyLmdldFZhbGlkYXRlID0gZ2V0VmFsaWRhdGU7CiAgICBmdW5jdGlvbiBjYWxsUmVmKGN4dCwgdiwgc2NoLCAkYXN5bmMpIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBzY2hlbWFFbnY6IGVudiwgb3B0cyB9ID0gaXQ7CiAgICAgIGNvbnN0IHBhc3NDeHQgPSBvcHRzLnBhc3NDb250ZXh0ID8gbmFtZXNfMS5kZWZhdWx0LnRoaXMgOiBjb2RlZ2VuXzEubmlsOwogICAgICBpZiAoJGFzeW5jKQogICAgICAgIGNhbGxBc3luY1JlZigpOwogICAgICBlbHNlCiAgICAgICAgY2FsbFN5bmNSZWYoKTsKICAgICAgZnVuY3Rpb24gY2FsbEFzeW5jUmVmKCkgewogICAgICAgIGlmICghZW52LiRhc3luYykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIHJlZmVyZW5jZWQgYnkgc3luYyBzY2hlbWEiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIik7CiAgICAgICAgZ2VuLnRyeSgoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpfWApOwogICAgICAgICAgYWRkRXZhbHVhdGVkRnJvbSh2KTsKICAgICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICB9LCAoZSkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgISgke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KWAsICgpID0+IGdlbi50aHJvdyhlKSk7CiAgICAgICAgICBhZGRFcnJvcnNGcm9tKGUpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbGxTeW5jUmVmKCkgewogICAgICAgIGN4dC5yZXN1bHQoKDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpLCAoKSA9PiBhZGRFdmFsdWF0ZWRGcm9tKHYpLCAoKSA9PiBhZGRFcnJvcnNGcm9tKHYpKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhZGRFcnJvcnNGcm9tKHNvdXJjZSkgewogICAgICAgIGNvbnN0IGVycnMgPSAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCk7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEV2YWx1YXRlZEZyb20oc291cmNlKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICghaXQub3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hFdmFsdWF0ZWQgPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gudmFsaWRhdGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ldmFsdWF0ZWQ7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY1Byb3BzKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgc2NoRXZhbHVhdGVkLnByb3BzLCBpdC5wcm9wcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQucHJvcHNgKTsKICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBwcm9wcywgaXQucHJvcHMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGl0Lml0ZW1zICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY0l0ZW1zKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoRXZhbHVhdGVkLml0ZW1zLCBpdC5pdGVtcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZ2VuLnZhcigiaXRlbXMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQuaXRlbXNgKTsKICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBpdGVtcywgaXQuaXRlbXMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBjYWxsUmVmOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2luZGV4LmpzCnZhciByZXF1aXJlX2NvcmUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUyID0gWwogICAgICAiJHNjaGVtYSIsCiAgICAgICIkaWQiLAogICAgICAiJGRlZnMiLAogICAgICAiJHZvY2FidWxhcnkiLAogICAgICB7IGtleXdvcmQ6ICIkY29tbWVudCIgfSwKICAgICAgImRlZmluaXRpb25zIiwKICAgICAgaWRfMS5kZWZhdWx0LAogICAgICByZWZfMS5kZWZhdWx0CiAgICBdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGNvcmUyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMKdmFyIHJlcXVpcmVfbGltaXROdW1iZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TnVtYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgb3BzID0gY29kZWdlbl8xLm9wZXJhdG9yczsKICAgIHZhciBLV0RzID0gewogICAgICBtYXhpbXVtOiB7IG9rU3RyOiAiPD0iLCBvazogb3BzLkxURSwgZmFpbDogb3BzLkdUIH0sCiAgICAgIG1pbmltdW06IHsgb2tTdHI6ICI+PSIsIG9rOiBvcHMuR1RFLCBmYWlsOiBvcHMuTFQgfSwKICAgICAgZXhjbHVzaXZlTWF4aW11bTogeyBva1N0cjogIjwiLCBvazogb3BzLkxULCBmYWlsOiBvcHMuR1RFIH0sCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsgb2tTdHI6ICI+Iiwgb2s6IG9wcy5HVCwgZmFpbDogb3BzLkxURSB9CiAgICB9OwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGJlICR7S1dEc1trZXl3b3JkXS5va1N0cn0gJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtjb21wYXJpc29uOiAke0tXRHNba2V5d29yZF0ub2tTdHJ9LCBsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ICR7S1dEc1trZXl3b3JkXS5mYWlsfSAke3NjaGVtYUNvZGV9IHx8IGlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbXVsdGlwbGVPZi5qcwp2YXIgcmVxdWlyZV9tdWx0aXBsZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9tdWx0aXBsZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgbXVsdGlwbGUgb2YgJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHttdWx0aXBsZU9mOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibXVsdGlwbGVPZiIsCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHByZWMgPSBpdC5vcHRzLm11bHRpcGxlT2ZQcmVjaXNpb247CiAgICAgICAgY29uc3QgcmVzID0gZ2VuLmxldCgicmVzIik7CiAgICAgICAgY29uc3QgaW52YWxpZCA9IHByZWMgPyAoMCwgY29kZWdlbl8xLl8pYE1hdGguYWJzKE1hdGgucm91bmQoJHtyZXN9KSAtICR7cmVzfSkgPiAxZS0ke3ByZWN9YCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtyZXN9ICE9PSBwYXJzZUludCgke3Jlc30pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgKCR7c2NoZW1hQ29kZX0gPT09IDAgfHwgKCR7cmVzfSA9ICR7ZGF0YX0vJHtzY2hlbWFDb2RlfSwgJHtpbnZhbGlkfSkpYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoLmpzCnZhciByZXF1aXJlX3VjczJsZW5ndGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdWNzMmxlbmd0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZnVuY3Rpb24gdWNzMmxlbmd0aChzdHIyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0cjIubGVuZ3RoOwogICAgICBsZXQgbGVuZ3RoID0gMDsKICAgICAgbGV0IHBvcyA9IDA7CiAgICAgIGxldCB2YWx1ZTsKICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgIGxlbmd0aCsrOwogICAgICAgIHZhbHVlID0gc3RyMi5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICBpZiAodmFsdWUgPj0gNTUyOTYgJiYgdmFsdWUgPD0gNTYzMTkgJiYgcG9zIDwgbGVuKSB7CiAgICAgICAgICB2YWx1ZSA9IHN0cjIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdExlbmd0aC5qcwp2YXIgcmVxdWlyZV9saW1pdExlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRMZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1Y3MybGVuZ3RoXzEgPSByZXF1aXJlX3VjczJsZW5ndGgoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IGNoYXJhY3RlcnNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4TGVuZ3RoIiwgIm1pbkxlbmd0aCJdLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGNvbnN0IGxlbiA9IGl0Lm9wdHMudW5pY29kZSA9PT0gZmFsc2UgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgdXRpbF8xLnVzZUZ1bmMpKGN4dC5nZW4sIHVjczJsZW5ndGhfMS5kZWZhdWx0KX0oJHtkYXRhfSlgOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCBwYXR0ZXJuICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXR0ZXJuOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicGF0dGVybiIsCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB1ID0gaXQub3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgICAgY29uc3QgcmVnRXhwID0gJGRhdGEgPyAoMCwgY29kZWdlbl8xLl8pYChuZXcgUmVnRXhwKCR7c2NoZW1hQ29kZX0sICR7dX0pKWAgOiAoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgc2NoZW1hMik7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEke3JlZ0V4cH0udGVzdCgke2RhdGF9KWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9saW1pdFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSB7CiAgICAgICAgY29uc3QgY29tcCA9IGtleXdvcmQgPT09ICJtYXhQcm9wZXJ0aWVzIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IHByb3BlcnRpZXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4UHJvcGVydGllcyIsICJtaW5Qcm9wZXJ0aWVzIl0sCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gY29kZWdlbl8xLm9wZXJhdG9ycy5HVCA6IGNvZGVnZW5fMS5vcGVyYXRvcnMuTFQ7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5rZXlzKCR7ZGF0YX0pLmxlbmd0aCAke29wfSAke3NjaGVtYUNvZGV9YCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcmVxdWlyZWQuanMKdmFyIHJlcXVpcmVfcmVxdWlyZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSByZXF1aXJlZCBwcm9wZXJ0eSAnJHttaXNzaW5nUHJvcGVydHl9J2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge21pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicmVxdWlyZWQiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGRhdGEsICRkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cyB9ID0gaXQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiBzY2hlbWEyLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gb3B0cy5sb29wUmVxdWlyZWQ7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykKICAgICAgICAgIGFsbEVycm9yc01vZGUoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBleGl0T25FcnJvck1vZGUoKTsKICAgICAgICBpZiAob3B0cy5zdHJpY3RSZXF1aXJlZCkgewogICAgICAgICAgY29uc3QgcHJvcHMgPSBjeHQucGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgICBjb25zdCB7IGRlZmluZWRQcm9wZXJ0aWVzIH0gPSBjeHQuaXQ7CiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkS2V5IG9mIHNjaGVtYTIpIHsKICAgICAgICAgICAgaWYgKChwcm9wcyA9PT0gbnVsbCB8fCBwcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJvcHNbcmVxdWlyZWRLZXldKSA9PT0gdm9pZCAwICYmICFkZWZpbmVkUHJvcGVydGllcy5oYXMocmVxdWlyZWRLZXkpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9IGl0LnNjaGVtYUVudi5iYXNlSWQgKyBpdC5lcnJTY2hlbWFQYXRoOwogICAgICAgICAgICAgIGNvbnN0IG1zZyA9IGByZXF1aXJlZCBwcm9wZXJ0eSAiJHtyZXF1aXJlZEtleX0iIGlzIG5vdCBkZWZpbmVkIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0UmVxdWlyZWQpYDsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RSZXF1aXJlZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWxsRXJyb3JzTW9kZSgpIHsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKGNvZGVnZW5fMS5uaWwsIGxvb3BBbGxSZXF1aXJlZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2Ygc2NoZW1hMikgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBleGl0T25FcnJvck1vZGUoKSB7CiAgICAgICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICAgICAgaWYgKHVzZUxvb3AgfHwgJGRhdGEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgKCkgPT4gbG9vcFVudGlsTWlzc2luZyhtaXNzaW5nLCB2YWxpZCkpOwogICAgICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBzY2hlbWEyLCBtaXNzaW5nKSk7CiAgICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BBbGxSZXF1aXJlZCgpIHsKICAgICAgICAgIGdlbi5mb3JPZigicHJvcCIsIHNjaGVtYUNvZGUsIChwcm9wKSA9PiB7CiAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IHByb3AgfSk7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLm5vUHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpIHsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSk7CiAgICAgICAgICBnZW4uZm9yT2YobWlzc2luZywgc2NoZW1hQ29kZSwgKCkgPT4gewogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIG1pc3NpbmcsIG9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIGNvZGVnZW5fMS5uaWwpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0SXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4SXRlbXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gaXRlbXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4SXRlbXMiLCAibWluSXRlbXMiXSwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjb25zdCBvcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMKdmFyIHJlcXVpcmVfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3VuaXF1ZUl0ZW1zLmpzCnZhciByZXF1aXJlX3VuaXF1ZUl0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi91bmlxdWVJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGksIGogfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBkdXBsaWNhdGUgaXRlbXMgKGl0ZW1zICMjICR7an0gYW5kICR7aX0gYXJlIGlkZW50aWNhbClgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7aTogJHtpfSwgajogJHtqfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInVuaXF1ZUl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogImJvb2xlYW4iLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmICFzY2hlbWEyKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBjb25zdCBpdGVtVHlwZXMgPSBwYXJlbnRTY2hlbWEuaXRlbXMgPyAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykocGFyZW50U2NoZW1hLml0ZW1zKSA6IFtdOwogICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCB2YWxpZGF0ZVVuaXF1ZUl0ZW1zLCAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IGZhbHNlYCk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaXF1ZUl0ZW1zKCkgewogICAgICAgICAgY29uc3QgaSA9IGdlbi5sZXQoImkiLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgICBjb25zdCBqID0gZ2VuLmxldCgiaiIpOwogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGksIGogfSk7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aX0gPiAxYCwgKCkgPT4gKGNhbk9wdGltaXplKCkgPyBsb29wTiA6IGxvb3BOMikoaSwgaikpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZSgpIHsKICAgICAgICAgIHJldHVybiBpdGVtVHlwZXMubGVuZ3RoID4gMCAmJiAhaXRlbVR5cGVzLnNvbWUoKHQpID0+IHQgPT09ICJvYmplY3QiIHx8IHQgPT09ICJhcnJheSIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTihpLCBqKSB7CiAgICAgICAgICBjb25zdCBpdGVtID0gZ2VuLm5hbWUoIml0ZW0iKTsKICAgICAgICAgIGNvbnN0IHdyb25nVHlwZSA9ICgwLCBkYXRhVHlwZV8xLmNoZWNrRGF0YVR5cGVzKShpdGVtVHlwZXMsIGl0ZW0sIGl0Lm9wdHMuc3RyaWN0TnVtYmVycywgZGF0YVR5cGVfMS5EYXRhVHlwZS5Xcm9uZyk7CiAgICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2VuLmNvbnN0KCJpbmRpY2VzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICAgICAgZ2VuLmZvcigoMCwgY29kZWdlbl8xLl8pYDske2l9LS07YCwgKCkgPT4gewogICAgICAgICAgICBnZW4ubGV0KGl0ZW0sICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfVske2l9XWApOwogICAgICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoMCwgY29kZWdlbl8xLl8pYGNvbnRpbnVlYCk7CiAgICAgICAgICAgIGlmIChpdGVtVHlwZXMubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpdGVtfSA9PSAic3RyaW5nImAsICgwLCBjb2RlZ2VuXzEuXylgJHtpdGVtfSArPSAiXyJgKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7aW5kaWNlc31bJHtpdGVtfV0gPT0gIm51bWJlciJgLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihqLCAoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV1gKTsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKTsKICAgICAgICAgICAgfSkuY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV0gPSAke2l9YCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbG9vcE4yKGksIGopIHsKICAgICAgICAgIGNvbnN0IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgICAgY29uc3Qgb3V0ZXIgPSBnZW4ubmFtZSgib3V0ZXIiKTsKICAgICAgICAgIGdlbi5sYWJlbChvdXRlcikuZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgJHtqfSA9ICR7aX07ICR7an0tLTtgLCAoKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2VxbH0oJHtkYXRhfVske2l9XSwgJHtkYXRhfVske2p9XSlgLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsob3V0ZXIpOwogICAgICAgICAgfSkpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vY29uc3QuanMKdmFyIHJlcXVpcmVfY29uc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2NvbnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gY29uc3RhbnQiLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWxsb3dlZFZhbHVlOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiY29uc3QiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWFDb2RlLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGN4dDsKICAgICAgICBpZiAoJGRhdGEgfHwgc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IikgewogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEkeygwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpfSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KWApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjeHQuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hMn0gIT09ICR7ZGF0YX1gKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vZW51bS5qcwp2YXIgcmVxdWlyZV9lbnVtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9lbnVtLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gb25lIG9mIHRoZSBhbGxvd2VkIHZhbHVlcyIsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHthbGxvd2VkVmFsdWVzOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZW51bSIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmIHNjaGVtYTIubGVuZ3RoID09PSAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJlbnVtIG11c3QgaGF2ZSBub24tZW1wdHkgYXJyYXkiKTsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgY29uc3QgdlNjaGVtYSA9IGdlbi5jb25zdCgidlNjaGVtYSIsIHNjaGVtYUNvZGUpOwogICAgICAgICAgdmFsaWQgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5zY2hlbWEyLm1hcCgoX3gsIGkpID0+IGVxdWFsQ29kZSh2U2NoZW1hLCBpKSkpOwogICAgICAgIH0KICAgICAgICBjeHQucGFzcyh2YWxpZCk7CiAgICAgICAgZnVuY3Rpb24gbG9vcEVudW0oKSB7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICBnZW4uZm9yT2YoInYiLCBzY2hlbWFDb2RlLCAodikgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2fSlgLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKS5icmVhaygpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGVxdWFsQ29kZSh2U2NoZW1hLCBpKSB7CiAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGxpbWl0TnVtYmVyXzEgPSByZXF1aXJlX2xpbWl0TnVtYmVyKCk7CiAgICB2YXIgbXVsdGlwbGVPZl8xID0gcmVxdWlyZV9tdWx0aXBsZU9mKCk7CiAgICB2YXIgbGltaXRMZW5ndGhfMSA9IHJlcXVpcmVfbGltaXRMZW5ndGgoKTsKICAgIHZhciBwYXR0ZXJuXzEgPSByZXF1aXJlX3BhdHRlcm4oKTsKICAgIHZhciBsaW1pdFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfbGltaXRQcm9wZXJ0aWVzKCk7CiAgICB2YXIgcmVxdWlyZWRfMSA9IHJlcXVpcmVfcmVxdWlyZWQoKTsKICAgIHZhciBsaW1pdEl0ZW1zXzEgPSByZXF1aXJlX2xpbWl0SXRlbXMoKTsKICAgIHZhciB1bmlxdWVJdGVtc18xID0gcmVxdWlyZV91bmlxdWVJdGVtcygpOwogICAgdmFyIGNvbnN0XzEgPSByZXF1aXJlX2NvbnN0KCk7CiAgICB2YXIgZW51bV8xID0gcmVxdWlyZV9lbnVtKCk7CiAgICB2YXIgdmFsaWRhdGlvbiA9IFsKICAgICAgLy8gbnVtYmVyCiAgICAgIGxpbWl0TnVtYmVyXzEuZGVmYXVsdCwKICAgICAgbXVsdGlwbGVPZl8xLmRlZmF1bHQsCiAgICAgIC8vIHN0cmluZwogICAgICBsaW1pdExlbmd0aF8xLmRlZmF1bHQsCiAgICAgIHBhdHRlcm5fMS5kZWZhdWx0LAogICAgICAvLyBvYmplY3QKICAgICAgbGltaXRQcm9wZXJ0aWVzXzEuZGVmYXVsdCwKICAgICAgcmVxdWlyZWRfMS5kZWZhdWx0LAogICAgICAvLyBhcnJheQogICAgICBsaW1pdEl0ZW1zXzEuZGVmYXVsdCwKICAgICAgdW5pcXVlSXRlbXNfMS5kZWZhdWx0LAogICAgICAvLyBhbnkKICAgICAgeyBrZXl3b3JkOiAidHlwZSIsIHNjaGVtYVR5cGU6IFsic3RyaW5nIiwgImFycmF5Il0gfSwKICAgICAgeyBrZXl3b3JkOiAibnVsbGFibGUiLCBzY2hlbWFUeXBlOiAiYm9vbGVhbiIgfSwKICAgICAgY29uc3RfMS5kZWZhdWx0LAogICAgICBlbnVtXzEuZGVmYXVsdAogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB2YWxpZGF0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbEl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJib29sZWFuIiwgIm9iamVjdCJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgaXRlbXMgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICciYWRkaXRpb25hbEl0ZW1zIiBpcyBpZ25vcmVkIHdoZW4gIml0ZW1zIiBpcyBub3QgYW4gYXJyYXkgb2Ygc2NoZW1hcycpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyhjeHQsIGl0ZW1zKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IGxlbjogaXRlbXMubGVuZ3RoIH0pOwogICAgICAgIGN4dC5wYXNzKCgwLCBjb2RlZ2VuXzEuXylgJHtsZW59IDw9ICR7aXRlbXMubGVuZ3RofWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi52YXIoInZhbGlkIiwgKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHZhbGlkYXRlSXRlbXModmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXModmFsaWQpIHsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCBpdGVtcy5sZW5ndGgsIGxlbiwgKGkpID0+IHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBkYXRhUHJvcDogaSwgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5OdW0gfSwgdmFsaWQpOwogICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMuanMKdmFyIHJlcXVpcmVfaXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuIHZhbGlkYXRlVHVwbGUoY3h0LCAiYWRkaXRpb25hbEl0ZW1zIiwgc2NoZW1hMik7CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJlZml4SXRlbXMuanMKdmFyIHJlcXVpcmVfcHJlZml4SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3ByZWZpeEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgaXRlbXNfMSA9IHJlcXVpcmVfaXRlbXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcmVmaXhJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsiYXJyYXkiXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlOiAoY3h0KSA9PiAoMCwgaXRlbXNfMS52YWxpZGF0ZVR1cGxlKShjeHQsICJpdGVtcyIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBtb3JlIHRoYW4gJHtsZW59IGl0ZW1zYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7bGVufX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIml0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBwcmVmaXhJdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChwcmVmaXhJdGVtcykKICAgICAgICAgICgwLCBhZGRpdGlvbmFsSXRlbXNfMS52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcykoY3h0LCBwcmVmaXhJdGVtcyk7CiAgICAgICAgZWxzZQogICAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMKdmFyIHJlcXVpcmVfY29udGFpbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2NvbnRhaW5zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgY29udGFpbiBhdCBsZWFzdCAke21pbn0gdmFsaWQgaXRlbShzKWAgOiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSBhbmQgbm8gbW9yZSB0aGFuICR7bWF4fSB2YWxpZCBpdGVtKHMpYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbWluLCBtYXggfSB9KSA9PiBtYXggPT09IHZvaWQgMCA/ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn19YCA6ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn0sIG1heENvbnRhaW5zOiAke21heH19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJjb250YWlucyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGxldCBtaW47CiAgICAgICAgbGV0IG1heDsKICAgICAgICBjb25zdCB7IG1pbkNvbnRhaW5zLCBtYXhDb250YWlucyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmIChpdC5vcHRzLm5leHQpIHsKICAgICAgICAgIG1pbiA9IG1pbkNvbnRhaW5zID09PSB2b2lkIDAgPyAxIDogbWluQ29udGFpbnM7CiAgICAgICAgICBtYXggPSBtYXhDb250YWluczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWluID0gMTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IG1pbiwgbWF4IH0pOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDApIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPT0gMCB3aXRob3V0ICJtYXhDb250YWlucyI6ICJjb250YWlucyIga2V5d29yZCBpZ25vcmVkYCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChtYXggIT09IHZvaWQgMCAmJiBtaW4gPiBtYXgpIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPiAibWF4Q29udGFpbnMiIGlzIGFsd2F5cyBpbnZhbGlkYCk7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICBsZXQgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtsZW59ID49ICR7bWlufWA7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtsZW59IDw9ICR7bWF4fWA7CiAgICAgICAgICBjeHQucGFzcyhjb25kKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMSkgewogICAgICAgICAgdmFsaWRhdGVJdGVtcyh2YWxpZCwgKCkgPT4gZ2VuLmlmKHZhbGlkLCAoKSA9PiBnZW4uYnJlYWsoKSkpOwogICAgICAgIH0gZWxzZSBpZiAobWluID09PSAwKSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGlmIChtYXggIT09IHZvaWQgMCkKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggPiAwYCwgdmFsaWRhdGVJdGVtc1dpdGhDb3VudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5sZXQodmFsaWQsIGZhbHNlKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKTsKICAgICAgICB9CiAgICAgICAgY3h0LnJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKSB7CiAgICAgICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgICAgIGNvbnN0IGNvdW50ID0gZ2VuLmxldCgiY291bnQiLCAwKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXMoc2NoVmFsaWQsICgpID0+IGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gY2hlY2tMaW1pdHMoY291bnQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXMoX3ZhbGlkLCBibG9jaykgewogICAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICBrZXl3b3JkOiAiY29udGFpbnMiLAogICAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8xLlR5cGUuTnVtLAogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgICAgfSwgX3ZhbGlkKTsKICAgICAgICAgICAgYmxvY2soKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja0xpbWl0cyhjb3VudCkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSsrYCk7CiAgICAgICAgICBpZiAobWF4ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPj0gJHttaW59YCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+ICR7bWF4fWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhaygpKTsKICAgICAgICAgICAgaWYgKG1pbiA9PT0gMSkKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzCnZhciByZXF1aXJlX2RlcGVuZGVuY2llcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVNjaGVtYURlcHMgPSBleHBvcnRzMi52YWxpZGF0ZVByb3BlcnR5RGVwcyA9IGV4cG9ydHMyLmVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIGV4cG9ydHMyLmVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgcHJvcGVydHksIGRlcHNDb3VudCwgZGVwcyB9IH0pID0+IHsKICAgICAgICBjb25zdCBwcm9wZXJ0eV9pZXMgPSBkZXBzQ291bnQgPT09IDEgPyAicHJvcGVydHkiIDogInByb3BlcnRpZXMiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBoYXZlICR7cHJvcGVydHlfaWVzfSAke2RlcHN9IHdoZW4gcHJvcGVydHkgJHtwcm9wZXJ0eX0gaXMgcHJlc2VudGA7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IHByb3BlcnR5LCBkZXBzQ291bnQsIGRlcHMsIG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Byb3BlcnR5OiAke3Byb3BlcnR5fSwKICAgIG1pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9LAogICAgZGVwc0NvdW50OiAke2RlcHNDb3VudH0sCiAgICBkZXBzOiAke2RlcHN9fWAKICAgICAgLy8gVE9ETyBjaGFuZ2UgdG8gcmVmZXJlbmNlCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImRlcGVuZGVuY2llcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3I6IGV4cG9ydHMyLmVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IFtwcm9wRGVwcywgc2NoRGVwc10gPSBzcGxpdERlcGVuZGVuY2llcyhjeHQpOwogICAgICAgIHZhbGlkYXRlUHJvcGVydHlEZXBzKGN4dCwgcHJvcERlcHMpOwogICAgICAgIHZhbGlkYXRlU2NoZW1hRGVwcyhjeHQsIHNjaERlcHMpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gc3BsaXREZXBlbmRlbmNpZXMoeyBzY2hlbWE6IHNjaGVtYTIgfSkgewogICAgICBjb25zdCBwcm9wZXJ0eURlcHMgPSB7fTsKICAgICAgY29uc3Qgc2NoZW1hRGVwcyA9IHt9OwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIl9fcHJvdG9fXyIpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBkZXBzID0gQXJyYXkuaXNBcnJheShzY2hlbWEyW2tleV0pID8gcHJvcGVydHlEZXBzIDogc2NoZW1hRGVwczsKICAgICAgICBkZXBzW2tleV0gPSBzY2hlbWEyW2tleV07CiAgICAgIH0KICAgICAgcmV0dXJuIFtwcm9wZXJ0eURlcHMsIHNjaGVtYURlcHNdOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0eURlcHMoY3h0LCBwcm9wZXJ0eURlcHMgPSBjeHQuc2NoZW1hKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydHlEZXBzKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICBmb3IgKGNvbnN0IHByb3AgaW4gcHJvcGVydHlEZXBzKSB7CiAgICAgICAgY29uc3QgZGVwcyA9IHByb3BlcnR5RGVwc1twcm9wXTsKICAgICAgICBpZiAoZGVwcy5sZW5ndGggPT09IDApCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBoYXNQcm9wZXJ0eSA9ICgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsKICAgICAgICAgIHByb3BlcnR5OiBwcm9wLAogICAgICAgICAgZGVwc0NvdW50OiBkZXBzLmxlbmd0aCwKICAgICAgICAgIGRlcHM6IGRlcHMuam9pbigiLCAiKQogICAgICAgIH0pOwogICAgICAgIGlmIChpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgIGdlbi5pZihoYXNQcm9wZXJ0eSwgKCkgPT4gewogICAgICAgICAgICBmb3IgKGNvbnN0IGRlcFByb3Agb2YgZGVwcykgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBkZXBQcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aGFzUHJvcGVydHl9ICYmICgkeygwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBkZXBzLCBtaXNzaW5nKX0pYCk7CiAgICAgICAgICAoMCwgY29kZV8xLnJlcG9ydE1pc3NpbmdQcm9wKShjeHQsIG1pc3NpbmcpOwogICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlUHJvcGVydHlEZXBzID0gdmFsaWRhdGVQcm9wZXJ0eURlcHM7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVNjaGVtYURlcHMoY3h0LCBzY2hlbWFEZXBzID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgZm9yIChjb25zdCBwcm9wIGluIHNjaGVtYURlcHMpIHsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYURlcHNbcHJvcF0pKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgZ2VuLmlmKAogICAgICAgICAgKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpLAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZCwgc2NoZW1hUHJvcDogcHJvcCB9LCB2YWxpZCk7CiAgICAgICAgICAgIGN4dC5tZXJnZVZhbGlkRXZhbHVhdGVkKHNjaEN4dCwgdmFsaWQpOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IGdlbi52YXIodmFsaWQsIHRydWUpCiAgICAgICAgICAvLyBUT0RPIHZhcgogICAgICAgICk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVTY2hlbWFEZXBzID0gdmFsaWRhdGVTY2hlbWFEZXBzOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnR5TmFtZXMuanMKdmFyIHJlcXVpcmVfcHJvcGVydHlOYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydHlOYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAicHJvcGVydHkgbmFtZSBtdXN0IGJlIHZhbGlkIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHlOYW1lOiAke3BhcmFtcy5wcm9wZXJ0eU5hbWV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydHlOYW1lcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEyKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IHByb3BlcnR5TmFtZToga2V5IH0pOwogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0eU5hbWVzIiwKICAgICAgICAgICAgZGF0YToga2V5LAogICAgICAgICAgICBkYXRhVHlwZXM6IFsic3RyaW5nIl0sCiAgICAgICAgICAgIHByb3BlcnR5TmFtZToga2V5LAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICBjeHQuZXJyb3IodHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsUHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHByb3BzID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShwYXJlbnRTY2hlbWEucHJvcGVydGllcyk7CiAgICAgICAgY29uc3QgcGF0UHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wYXR0ZXJuUHJvcGVydGllcyk7CiAgICAgICAgY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgICAgIGN4dC5vaygoMCwgY29kZWdlbl8xLl8pYCR7ZXJyc0NvdW50fSA9PT0gJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfWApOwogICAgICAgIGZ1bmN0aW9uIGNoZWNrQWRkaXRpb25hbFByb3BlcnRpZXMoKSB7CiAgICAgICAgICBnZW4uZm9ySW4oImtleSIsIGRhdGEsIChrZXkpID0+IHsKICAgICAgICAgICAgaWYgKCFwcm9wcy5sZW5ndGggJiYgIXBhdFByb3BzLmxlbmd0aCkKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydHlDb2RlKGtleSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoaXNBZGRpdGlvbmFsKGtleSksICgpID0+IGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgbGV0IGRlZmluZWRQcm9wOwogICAgICAgICAgaWYgKHByb3BzLmxlbmd0aCA+IDgpIHsKICAgICAgICAgICAgY29uc3QgcHJvcHNTY2hlbWEgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgcGFyZW50U2NoZW1hLnByb3BlcnRpZXMsICJwcm9wZXJ0aWVzIik7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVfMS5pc093blByb3BlcnR5KShnZW4sIHByb3BzU2NoZW1hLCBrZXkpOwogICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5sZW5ndGgpIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5wcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl9ID09PSAke3B9YCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSBjb2RlZ2VuXzEubmlsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhdFByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKGRlZmluZWRQcm9wLCAuLi5wYXRQcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgcCl9LnRlc3QoJHtrZXl9KWApKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm5vdCkoZGVmaW5lZFByb3ApOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBkZWxldGVBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBkZWxldGUgJHtkYXRhfVske2tleX1dYCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSB7CiAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiYWxsIiB8fCBvcHRzLnJlbW92ZUFkZGl0aW9uYWwgJiYgc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJmYWlsaW5nIikgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHsKICAgICAgICAgICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkKTsKICAgICAgICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlBZGRpdGlvbmFsU2NoZW1hKGtleSwgdmFsaWQsIGVycm9ycykgewogICAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gewogICAgICAgICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLlN0cgogICAgICAgICAgfTsKICAgICAgICAgIGlmIChlcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc3Vic2NoZW1hLCB7CiAgICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZSwKICAgICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHN1YnNjaGVtYSwgdmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInByb3BlcnRpZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogIm9iamVjdCIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChpdC5vcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiICYmIHBhcmVudFNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllcyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQuY29kZShuZXcgdmFsaWRhdGVfMS5LZXl3b3JkQ3h0KGl0LCBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQsICJhZGRpdGlvbmFsUHJvcGVydGllcyIpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYWxsUHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHNjaGVtYTIpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykgewogICAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgIH0KICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBhbGxQcm9wcy5sZW5ndGggJiYgaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgKDAsIHV0aWxfMS50b0hhc2gpKGFsbFByb3BzKSwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYWxsUHJvcHMuZmlsdGVyKChwKSA9PiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTJbcF0pKTsKICAgICAgICBpZiAocHJvcGVydGllcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgcHJvcGVydGllcykgewogICAgICAgICAgaWYgKGhhc0RlZmF1bHQocHJvcCkpIHsKICAgICAgICAgICAgYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgICBnZW4uZWxzZSgpLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgICAgfQogICAgICAgICAgY3h0Lml0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhc0RlZmF1bHQocHJvcCkgewogICAgICAgICAgcmV0dXJuIGl0Lm9wdHMudXNlRGVmYXVsdHMgJiYgIWl0LmNvbXBvc2l0ZVJ1bGUgJiYgc2NoZW1hMltwcm9wXS5kZWZhdWx0ICE9PSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5UHJvcGVydHlTY2hlbWEocHJvcCkgewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0aWVzIiwKICAgICAgICAgICAgc2NoZW1hUHJvcDogcHJvcCwKICAgICAgICAgICAgZGF0YVByb3A6IHByb3AKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcGF0dGVyblByb3BlcnRpZXMuanMKdmFyIHJlcXVpcmVfcGF0dGVyblByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMgfSA9IGl0OwogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEyKTsKICAgICAgICBjb25zdCBhbHdheXNWYWxpZFBhdHRlcm5zID0gcGF0dGVybnMuZmlsdGVyKChwKSA9PiAoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMltwXSkpOwogICAgICAgIGlmIChwYXR0ZXJucy5sZW5ndGggPT09IDAgfHwgYWx3YXlzVmFsaWRQYXR0ZXJucy5sZW5ndGggPT09IHBhdHRlcm5zLmxlbmd0aCAmJiAoIWl0Lm9wdHMudW5ldmFsdWF0ZWQgfHwgaXQucHJvcHMgPT09IHRydWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNoZWNrUHJvcGVydGllcyA9IG9wdHMuc3RyaWN0U2NoZW1hICYmICFvcHRzLmFsbG93TWF0Y2hpbmdQcm9wZXJ0aWVzICYmIHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlICYmICEoaXQucHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkpIHsKICAgICAgICAgIGl0LnByb3BzID0gKDAsIHV0aWxfMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSkoZ2VuLCBpdC5wcm9wcyk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHsgcHJvcHMgfSA9IGl0OwogICAgICAgIHZhbGlkYXRlUGF0dGVyblByb3BlcnRpZXMoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVBhdHRlcm5Qcm9wZXJ0aWVzKCkgewogICAgICAgICAgZm9yIChjb25zdCBwYXQgb2YgcGF0dGVybnMpIHsKICAgICAgICAgICAgaWYgKGNoZWNrUHJvcGVydGllcykKICAgICAgICAgICAgICBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgICAgZ2VuLmlmKHZhbGlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpIHsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGVja1Byb3BlcnRpZXMpIHsKICAgICAgICAgICAgaWYgKG5ldyBSZWdFeHAocGF0KS50ZXN0KHByb3ApKSB7CiAgICAgICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgcHJvcGVydHkgJHtwcm9wfSBtYXRjaGVzIHBhdHRlcm4gJHtwYXR9ICh1c2UgYWxsb3dNYXRjaGluZ1Byb3BlcnRpZXMpYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCkgewogICAgICAgICAgZ2VuLmZvckluKCJrZXkiLCBkYXRhLCAoa2V5KSA9PiB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7KDAsIGNvZGVfMS51c2VQYXR0ZXJuKShjeHQsIHBhdCl9LnRlc3QoJHtrZXl9KWAsICgpID0+IHsKICAgICAgICAgICAgICBjb25zdCBhbHdheXNWYWxpZCA9IGFsd2F5c1ZhbGlkUGF0dGVybnMuaW5jbHVkZXMocGF0KTsKICAgICAgICAgICAgICBpZiAoIWFsd2F5c1ZhbGlkKSB7CiAgICAgICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgICAgICAgICAgICAgc2NoZW1hUHJvcDogcGF0LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMi5UeXBlLlN0cgogICAgICAgICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBwcm9wcyAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cHJvcHN9WyR7a2V5fV1gLCB0cnVlKTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFhbHdheXNWYWxpZCAmJiAhaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzCnZhciByZXF1aXJlX25vdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgYWxsRXJyb3JzOiBmYWxzZQogICAgICAgIH0sIHZhbGlkKTsKICAgICAgICBjeHQuZmFpbFJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCksICgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgfSwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgTk9UIGJlIHZhbGlkIiB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzCnZhciByZXF1aXJlX2FueU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbnlPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbnlPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlOiBjb2RlXzEudmFsaWRhdGVVbmlvbiwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgbWF0Y2ggYSBzY2hlbWEgaW4gYW55T2YiIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivb25lT2YuanMKdmFyIHJlcXVpcmVfb25lT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGV4YWN0bHkgb25lIHNjaGVtYSBpbiBvbmVPZiIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Bhc3NpbmdTY2hlbWFzOiAke3BhcmFtcy5wYXNzaW5nfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGlmIChpdC5vcHRzLmRpc2NyaW1pbmF0b3IgJiYgcGFyZW50U2NoZW1hLmRpc2NyaW1pbmF0b3IpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3Qgc2NoQXJyID0gc2NoZW1hMjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICAgIGNvbnN0IHBhc3NpbmcgPSBnZW4ubGV0KCJwYXNzaW5nIiwgbnVsbCk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IHBhc3NpbmcgfSk7CiAgICAgICAgZ2VuLmJsb2NrKHZhbGlkYXRlT25lT2YpOwogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlT25lT2YoKSB7CiAgICAgICAgICBzY2hBcnIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICAgIGxldCBzY2hDeHQ7CiAgICAgICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkgewogICAgICAgICAgICAgIGdlbi52YXIoc2NoVmFsaWQsIHRydWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7c2NoVmFsaWR9ICYmICR7dmFsaWR9YCkuYXNzaWduKHZhbGlkLCBmYWxzZSkuYXNzaWduKHBhc3NpbmcsICgwLCBjb2RlZ2VuXzEuXylgWyR7cGFzc2luZ30sICR7aX1dYCkuZWxzZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gewogICAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgICAgICAgIGdlbi5hc3NpZ24ocGFzc2luZywgaSk7CiAgICAgICAgICAgICAgaWYgKHNjaEN4dCkKICAgICAgICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMKdmFyIHJlcXVpcmVfYWxsT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FsbE9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWxsT2YiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIHNjaGVtYTIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9pZi5qcwp2YXIgcmVxdWlyZV9pZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoICIke3BhcmFtcy5pZkNsYXVzZX0iIHNjaGVtYWAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2ZhaWxpbmdLZXl3b3JkOiAke3BhcmFtcy5pZkNsYXVzZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZiIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS50aGVuID09PSB2b2lkIDAgJiYgcGFyZW50U2NoZW1hLmVsc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCAnImlmIiB3aXRob3V0ICJ0aGVuIiBhbmQgImVsc2UiIGlzIGlnbm9yZWQnKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaGFzVGhlbiA9IGhhc1NjaGVtYShpdCwgInRoZW4iKTsKICAgICAgICBjb25zdCBoYXNFbHNlID0gaGFzU2NoZW1hKGl0LCAiZWxzZSIpOwogICAgICAgIGlmICghaGFzVGhlbiAmJiAhaGFzRWxzZSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgdmFsaWRhdGVJZigpOwogICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgIGlmIChoYXNUaGVuICYmIGhhc0Vsc2UpIHsKICAgICAgICAgIGNvbnN0IGlmQ2xhdXNlID0gZ2VuLmxldCgiaWZDbGF1c2UiKTsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZSB9KTsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iLCBpZkNsYXVzZSksIHZhbGlkYXRlQ2xhdXNlKCJlbHNlIiwgaWZDbGF1c2UpKTsKICAgICAgICB9IGVsc2UgaWYgKGhhc1RoZW4pIHsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkoc2NoVmFsaWQpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJZigpIHsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAiaWYiLAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVDbGF1c2Uoa2V5d29yZCwgaWZDbGF1c2UpIHsKICAgICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgc2NoVmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgICAgaWYgKGlmQ2xhdXNlKQogICAgICAgICAgICAgIGdlbi5hc3NpZ24oaWZDbGF1c2UsICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl3b3JkfWApOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGlmQ2xhdXNlOiBrZXl3b3JkIH0pOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBoYXNTY2hlbWEoaXQsIGtleXdvcmQpIHsKICAgICAgY29uc3Qgc2NoZW1hMiA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgcmV0dXJuIHNjaGVtYTIgIT09IHZvaWQgMCAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci90aGVuRWxzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJ0aGVuIiwgImVsc2UiXSwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBjb2RlKHsga2V5d29yZCwgcGFyZW50U2NoZW1hLCBpdCB9KSB7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS5pZiA9PT0gdm9pZCAwKQogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIiR7a2V5d29yZH0iIHdpdGhvdXQgImlmIiBpcyBpZ25vcmVkYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfYXBwbGljYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgbWF0Y2ggZm9ybWF0ICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmb3JtYXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJmb3JtYXQiLAogICAgICB0eXBlOiBbIm51bWJlciIsICJzdHJpbmciXSwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQsIHJ1bGVUeXBlKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBlcnJTY2hlbWFQYXRoLCBzY2hlbWFFbnYsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICgkZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZkRlZiA9IGdlbi5jb25zdCgiZkRlZiIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske3NjaGVtYUNvZGV9XWApOwogICAgICAgICAgY29uc3QgZlR5cGUgPSBnZW4ubGV0KCJmVHlwZSIpOwogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2VuLmxldCgiZm9ybWF0Iik7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmRGVmfSA9PSAib2JqZWN0IiAmJiAhKCR7ZkRlZn0gaW5zdGFuY2VvZiBSZWdFeHApYCwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnR5cGUgfHwgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCAoMCwgY29kZWdlbl8xLl8pYCR7ZkRlZn0udmFsaWRhdGVgKSwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAic3RyaW5nImApLmFzc2lnbihmb3JtYXQsIGZEZWYpKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikodW5rbm93bkZtdCgpLCBpbnZhbGlkRm10KCkpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25GbXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpCiAgICAgICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gJiYgISR7Zm9ybWF0fWA7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBpbnZhbGlkRm10KCkgewogICAgICAgICAgICBjb25zdCBjYWxsRm9ybWF0ID0gc2NoZW1hRW52LiRhc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgKCR7ZkRlZn0uYXN5bmMgPyBhd2FpdCAke2Zvcm1hdH0oJHtkYXRhfSkgOiAke2Zvcm1hdH0oJHtkYXRhfSkpYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmb3JtYXR9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgY29uc3QgdmFsaWREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAodHlwZW9mICR7Zm9ybWF0fSA9PSAiZnVuY3Rpb24iID8gJHtjYWxsRm9ybWF0fSA6ICR7Zm9ybWF0fS50ZXN0KCR7ZGF0YX0pKWA7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSAmJiAke2Zvcm1hdH0gIT09IHRydWUgJiYgJHtmVHlwZX0gPT09ICR7cnVsZVR5cGV9ICYmICEke3ZhbGlkRGF0YX1gOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdERlZiA9IHNlbGYyLmZvcm1hdHNbc2NoZW1hMl07CiAgICAgICAgICBpZiAoIWZvcm1hdERlZikgewogICAgICAgICAgICB1bmtub3duRm9ybWF0KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmb3JtYXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IFtmbXRUeXBlLCBmb3JtYXQsIGZtdFJlZl0gPSBnZXRGb3JtYXQoZm9ybWF0RGVmKTsKICAgICAgICAgIGlmIChmbXRUeXBlID09PSBydWxlVHlwZSkKICAgICAgICAgICAgY3h0LnBhc3ModmFsaWRDb25kaXRpb24oKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm9ybWF0KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4odW5rbm93bk1zZygpKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHVua25vd25Nc2coKSk7CiAgICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Nc2coKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGB1bmtub3duIGZvcm1hdCAiJHtzY2hlbWEyfSIgaWdub3JlZCBpbiBzY2hlbWEgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSJgOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBnZXRGb3JtYXQoZm10RGVmKSB7CiAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBmbXREZWYgaW5zdGFuY2VvZiBSZWdFeHAgPyAoMCwgY29kZWdlbl8xLnJlZ2V4cENvZGUpKGZtdERlZikgOiBvcHRzLmNvZGUuZm9ybWF0cyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtvcHRzLmNvZGUuZm9ybWF0c30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHNjaGVtYTIpfWAgOiB2b2lkIDA7CiAgICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgeyBrZXk6IHNjaGVtYTIsIHJlZjogZm10RGVmLCBjb2RlIH0pOwogICAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiA9PSAib2JqZWN0IiAmJiAhKGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCkpIHsKICAgICAgICAgICAgICByZXR1cm4gW2ZtdERlZi50eXBlIHx8ICJzdHJpbmciLCBmbXREZWYudmFsaWRhdGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LnZhbGlkYXRlYF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFsic3RyaW5nIiwgZm10RGVmLCBmbXRdOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gdmFsaWRDb25kaXRpb24oKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm9ybWF0RGVmID09ICJvYmplY3QiICYmICEoZm9ybWF0RGVmIGluc3RhbmNlb2YgUmVnRXhwKSAmJiBmb3JtYXREZWYuYXN5bmMpIHsKICAgICAgICAgICAgICBpZiAoIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIGZvcm1hdCBpbiBzeW5jIHNjaGVtYSIpOwogICAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7Zm10UmVmfSgke2RhdGF9KWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmb3JtYXQgPT0gImZ1bmN0aW9uIiA/ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9KCR7ZGF0YX0pYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9LnRlc3QoJHtkYXRhfSlgOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2luZGV4LmpzCnZhciByZXF1aXJlX2Zvcm1hdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBmb3JtYXRfMSA9IHJlcXVpcmVfZm9ybWF0KCk7CiAgICB2YXIgZm9ybWF0ID0gW2Zvcm1hdF8xLmRlZmF1bHRdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL21ldGFkYXRhLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IFsKICAgICAgInRpdGxlIiwKICAgICAgImRlc2NyaXB0aW9uIiwKICAgICAgImRlZmF1bHQiLAogICAgICAiZGVwcmVjYXRlZCIsCiAgICAgICJyZWFkT25seSIsCiAgICAgICJ3cml0ZU9ubHkiLAogICAgICAiZXhhbXBsZXMiCiAgICBdOwogICAgZXhwb3J0czIuY29udGVudFZvY2FidWxhcnkgPSBbCiAgICAgICJjb250ZW50TWVkaWFUeXBlIiwKICAgICAgImNvbnRlbnRFbmNvZGluZyIsCiAgICAgICJjb250ZW50U2NoZW1hIgogICAgXTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kcmFmdDcuanMKdmFyIHJlcXVpcmVfZHJhZnQ3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMigpOwogICAgdmFyIHZhbGlkYXRpb25fMSA9IHJlcXVpcmVfdmFsaWRhdGlvbigpOwogICAgdmFyIGFwcGxpY2F0b3JfMSA9IHJlcXVpcmVfYXBwbGljYXRvcigpOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQyKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEoKTsKICAgIHZhciBkcmFmdDdWb2NhYnVsYXJpZXMgPSBbCiAgICAgIGNvcmVfMS5kZWZhdWx0LAogICAgICB2YWxpZGF0aW9uXzEuZGVmYXVsdCwKICAgICAgKDAsIGFwcGxpY2F0b3JfMS5kZWZhdWx0KSgpLAogICAgICBmb3JtYXRfMS5kZWZhdWx0LAogICAgICBtZXRhZGF0YV8xLm1ldGFkYXRhVm9jYWJ1bGFyeSwKICAgICAgbWV0YWRhdGFfMS5jb250ZW50Vm9jYWJ1bGFyeQogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkcmFmdDdWb2NhYnVsYXJpZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZGlzY3JpbWluYXRvci90eXBlcy5qcwp2YXIgcmVxdWlyZV90eXBlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvdHlwZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRpc2NyRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgRGlzY3JFcnJvcjsKICAgIChmdW5jdGlvbihEaXNjckVycm9yMikgewogICAgICBEaXNjckVycm9yMlsiVGFnIl0gPSAidGFnIjsKICAgICAgRGlzY3JFcnJvcjJbIk1hcHBpbmciXSA9ICJtYXBwaW5nIjsKICAgIH0pKERpc2NyRXJyb3IgfHwgKGV4cG9ydHMyLkRpc2NyRXJyb3IgPSBEaXNjckVycm9yID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc2NyaW1pbmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdHlwZXNfMSA9IHJlcXVpcmVfdHlwZXMoKTsKICAgIHZhciBjb21waWxlXzEgPSByZXF1aXJlX2NvbXBpbGUoKTsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWdOYW1lIH0gfSkgPT4gZGlzY3JFcnJvciA9PT0gdHlwZXNfMS5EaXNjckVycm9yLlRhZyA/IGB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgc3RyaW5nYCA6IGB2YWx1ZSBvZiB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgaW4gb25lT2ZgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWcsIHRhZ05hbWUgfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtlcnJvcjogJHtkaXNjckVycm9yfSwgdGFnOiAke3RhZ05hbWV9LCB0YWdWYWx1ZTogJHt0YWd9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZGlzY3JpbWluYXRvciIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb25lT2YgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIWl0Lm9wdHMuZGlzY3JpbWluYXRvcikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBkaXNjcmltaW5hdG9yIG9wdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB0YWdOYW1lID0gc2NoZW1hMi5wcm9wZXJ0eU5hbWU7CiAgICAgICAgaWYgKHR5cGVvZiB0YWdOYW1lICE9ICJzdHJpbmciKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBwcm9wZXJ0eU5hbWUiKTsKICAgICAgICBpZiAoc2NoZW1hMi5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRzY2hlbWE6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICAkaWQ6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICB0aXRsZTogIkNvcmUgc2NoZW1hIG1ldGEtc2NoZW1hIiwKICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICBzY2hlbWFBcnJheTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG1pbkl0ZW1zOiAxLAogICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMiIH0KICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlcjogewogICAgICAgICAgdHlwZTogImludGVnZXIiLAogICAgICAgICAgbWluaW11bTogMAogICAgICAgIH0sCiAgICAgICAgbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDA6IHsKICAgICAgICAgIGFsbE9mOiBbeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sIHsgZGVmYXVsdDogMCB9XQogICAgICAgIH0sCiAgICAgICAgc2ltcGxlVHlwZXM6IHsKICAgICAgICAgIGVudW06IFsiYXJyYXkiLCAiYm9vbGVhbiIsICJpbnRlZ2VyIiwgIm51bGwiLCAibnVtYmVyIiwgIm9iamVjdCIsICJzdHJpbmciXQogICAgICAgIH0sCiAgICAgICAgc3RyaW5nQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgICAgfSwKICAgICAgdHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGlkOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkc2NoZW1hOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaSIKICAgICAgICB9LAogICAgICAgICRyZWY6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgZm9ybWF0OiAidXJpLXJlZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICRjb21tZW50OiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZXNjcmlwdGlvbjogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIGRlZmF1bHQ6IHRydWUsCiAgICAgICAgcmVhZE9ubHk6IHsKICAgICAgICAgIHR5cGU6ICJib29sZWFuIiwKICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBleGFtcGxlczogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICBtdWx0aXBsZU9mOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG1heGltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWluaW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBtYXhMZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkxlbmd0aDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICBwYXR0ZXJuOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInJlZ2V4IgogICAgICAgIH0sCiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGl0ZW1zOiB7CiAgICAgICAgICBhbnlPZjogW3sgJHJlZjogIiMiIH0sIHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2NoZW1hQXJyYXkiIH1dLAogICAgICAgICAgZGVmYXVsdDogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbWF4SXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwIiB9LAogICAgICAgIHVuaXF1ZUl0ZW1zOiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgY29udGFpbnM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgbWF4UHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sCiAgICAgICAgbWluUHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICByZXF1aXJlZDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBkZWZpbml0aW9uczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9LAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgcHJvcGVydHlOYW1lczogeyBmb3JtYXQ6ICJyZWdleCIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsKICAgICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3N0cmluZ0FycmF5IiB9XQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydHlOYW1lczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBjb25zdDogdHJ1ZSwKICAgICAgICBlbnVtOiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICB0eXBlOiB7CiAgICAgICAgICBhbnlPZjogWwogICAgICAgICAgICB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NpbXBsZVR5cGVzIiB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICBmb3JtYXQ6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICBjb250ZW50TWVkaWFUeXBlOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudEVuY29kaW5nOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgaWY6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgdGhlbjogeyAkcmVmOiAiIyIgfSwKICAgICAgICBlbHNlOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGFsbE9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIGFueU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG9uZU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG5vdDogeyAkcmVmOiAiIyIgfQogICAgICB9LAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5NaXNzaW5nUmVmRXJyb3IgPSBleHBvcnRzMi5WYWxpZGF0aW9uRXJyb3IgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gZXhwb3J0czIuQWp2ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZSgpOwogICAgdmFyIGRyYWZ0N18xID0gcmVxdWlyZV9kcmFmdDcoKTsKICAgIHZhciBkaXNjcmltaW5hdG9yXzEgPSByZXF1aXJlX2Rpc2NyaW1pbmF0b3IoKTsKICAgIHZhciBkcmFmdDdNZXRhU2NoZW1hID0gcmVxdWlyZV9qc29uX3NjaGVtYV9kcmFmdF8wNygpOwogICAgdmFyIE1FVEFfU1VQUE9SVF9EQVRBID0gWyIvcHJvcGVydGllcyJdOwogICAgdmFyIE1FVEFfU0NIRU1BX0lEID0gImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIjsKICAgIHZhciBBanYgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5kZWZhdWx0IHsKICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICBzdXBlci5fYWRkVm9jYWJ1bGFyaWVzKCk7CiAgICAgICAgZHJhZnQ3XzEuZGVmYXVsdC5mb3JFYWNoKCh2KSA9PiB0aGlzLmFkZFZvY2FidWxhcnkodikpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHRoaXMuYWRkS2V5d29yZChkaXNjcmltaW5hdG9yXzEuZGVmYXVsdCk7CiAgICAgIH0KICAgICAgX2FkZERlZmF1bHRNZXRhU2NoZW1hKCkgewogICAgICAgIHN1cGVyLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmICghdGhpcy5vcHRzLm1ldGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgbWV0YVNjaGVtYSA9IHRoaXMub3B0cy4kZGF0YSA/IHRoaXMuJGRhdGFNZXRhU2NoZW1hKGRyYWZ0N01ldGFTY2hlbWEsIE1FVEFfU1VQUE9SVF9EQVRBKSA6IGRyYWZ0N01ldGFTY2hlbWE7CiAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIE1FVEFfU0NIRU1BX0lELCBmYWxzZSk7CiAgICAgICAgdGhpcy5yZWZzWyJodHRwOi8vanNvbi1zY2hlbWEub3JnL3NjaGVtYSJdID0gTUVUQV9TQ0hFTUFfSUQ7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHN1cGVyLmRlZmF1bHRNZXRhKCkgfHwgKHRoaXMuZ2V0U2NoZW1hKE1FVEFfU0NIRU1BX0lEKSA/IE1FVEFfU0NIRU1BX0lEIDogdm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFqdiA9IEFqdjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzLkFqdiA9IEFqdjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiS2V5d29yZEN4dCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRlXzEuS2V5d29yZEN4dDsKICAgIH0gfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5OYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkNvZGVHZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuQ29kZUdlbjsKICAgIH0gfSk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWxpZGF0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTWlzc2luZ1JlZkVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9mb3JtYXRzLmpzCnZhciByZXF1aXJlX2Zvcm1hdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIyKSB7CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBEQVRFLmV4ZWMoc3RyMik7CiAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIGNvbnN0IHllYXIgPSArbWF0Y2hlc1sxXTsKICAgICAgY29uc3QgbW9udGggPSArbWF0Y2hlc1syXTsKICAgICAgY29uc3QgZGF5ID0gK21hdGNoZXNbM107CiAgICAgIHJldHVybiBtb250aCA+PSAxICYmIG1vbnRoIDw9IDEyICYmIGRheSA+PSAxICYmIGRheSA8PSAobW9udGggPT09IDIgJiYgaXNMZWFwWWVhcih5ZWFyKSA/IDI5IDogREFZU1ttb250aF0pOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZURhdGUoZDEsIGQyKSB7CiAgICAgIGlmICghKGQxICYmIGQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBpZiAoZDEgPiBkMikKICAgICAgICByZXR1cm4gMTsKICAgICAgaWYgKGQxIDwgZDIpCiAgICAgICAgcmV0dXJuIC0xOwogICAgICByZXR1cm4gMDsKICAgIH0KICAgIHZhciBUSU1FID0gL14oXGRcZCk6KFxkXGQpOihcZFxkKD86XC5cZCspPykoenwoWystXSkoXGRcZCkoPzo6PyhcZFxkKSk/KT8kL2k7CiAgICBmdW5jdGlvbiBnZXRUaW1lKHN0cmljdFRpbWVab25lKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiB0aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cjIpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBociA9ICttYXRjaGVzWzFdOwogICAgICAgIGNvbnN0IG1pbiA9ICttYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHNlYyA9ICttYXRjaGVzWzNdOwogICAgICAgIGNvbnN0IHR6ID0gbWF0Y2hlc1s0XTsKICAgICAgICBjb25zdCB0elNpZ24gPSBtYXRjaGVzWzVdID09PSAiLSIgPyAtMSA6IDE7CiAgICAgICAgY29uc3QgdHpIID0gKyhtYXRjaGVzWzZdIHx8IDApOwogICAgICAgIGNvbnN0IHR6TSA9ICsobWF0Y2hlc1s3XSB8fCAwKTsKICAgICAgICBpZiAodHpIID4gMjMgfHwgdHpNID4gNTkgfHwgc3RyaWN0VGltZVpvbmUgJiYgIXR6KQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmIChociA8PSAyMyAmJiBtaW4gPD0gNTkgJiYgc2VjIDwgNjApCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCB1dGNNaW4gPSBtaW4gLSB0ek0gKiB0elNpZ247CiAgICAgICAgY29uc3QgdXRjSHIgPSBociAtIHR6SCAqIHR6U2lnbiAtICh1dGNNaW4gPCAwID8gMSA6IDApOwogICAgICAgIHJldHVybiAodXRjSHIgPT09IDIzIHx8IHV0Y0hyID09PSAtMSkgJiYgKHV0Y01pbiA9PT0gNTkgfHwgdXRjTWluID09PSAtMSkgJiYgc2VjIDwgNjE7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlVGltZShzMSwgczIpIHsKICAgICAgaWYgKCEoczEgJiYgczIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIGNvbnN0IHQxID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczEpKS52YWx1ZU9mKCk7CiAgICAgIGNvbnN0IHQyID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczIpKS52YWx1ZU9mKCk7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICByZXR1cm4gdDEgLSB0MjsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVJc29UaW1lKHQxLCB0MikgewogICAgICBpZiAoISh0MSAmJiB0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgYTEgPSBUSU1FLmV4ZWModDEpOwogICAgICBjb25zdCBhMiA9IFRJTUUuZXhlYyh0Mik7CiAgICAgIGlmICghKGExICYmIGEyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB0MSA9IGExWzFdICsgYTFbMl0gKyBhMVszXTsKICAgICAgdDIgPSBhMlsxXSArIGEyWzJdICsgYTJbM107CiAgICAgIGlmICh0MSA+IHQyKQogICAgICAgIHJldHVybiAxOwogICAgICBpZiAodDEgPCB0MikKICAgICAgICByZXR1cm4gLTE7CiAgICAgIHJldHVybiAwOwogICAgfQogICAgdmFyIERBVEVfVElNRV9TRVBBUkFUT1IgPSAvdHxccy9pOwogICAgZnVuY3Rpb24gZ2V0RGF0ZVRpbWUoc3RyaWN0VGltZVpvbmUpIHsKICAgICAgY29uc3QgdGltZSA9IGdldFRpbWUoc3RyaWN0VGltZVpvbmUpOwogICAgICByZXR1cm4gZnVuY3Rpb24gZGF0ZV90aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBkYXRlVGltZSA9IHN0cjIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIyKSB7CiAgICAgIHJldHVybiBOT1RfVVJJX0ZSQUdNRU5ULnRlc3Qoc3RyMikgJiYgVVJJLnRlc3Qoc3RyMik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIyKSB7CiAgICAgIEJZVEUubGFzdEluZGV4ID0gMDsKICAgICAgcmV0dXJuIEJZVEUudGVzdChzdHIyKTsKICAgIH0KICAgIHZhciBNSU5fSU5UMzIgPSAtKDIgKiogMzEpOwogICAgdmFyIE1BWF9JTlQzMiA9IDIgKiogMzEgLSAxOwogICAgZnVuY3Rpb24gdmFsaWRhdGVJbnQzMih2YWx1ZSkgewogICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSkgJiYgdmFsdWUgPD0gTUFYX0lOVDMyICYmIHZhbHVlID49IE1JTl9JTlQzMjsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50NjQodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVOdW1iZXIoKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgdmFyIFpfQU5DSE9SID0gL1teXFxdXFxaLzsKICAgIGZ1bmN0aW9uIHJlZ2V4KHN0cjIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyMikpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAoc3RyMik7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzCnZhciByZXF1aXJlX2xpbWl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9saW1pdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gcmVxdWlyZV9hanYoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBvcHMgPSBjb2RlZ2VuXzEub3BlcmF0b3JzOwogICAgdmFyIEtXRHMgPSB7CiAgICAgIGZvcm1hdE1heGltdW06IHsgb2tTdHI6ICI8PSIsIG9rOiBvcHMuTFRFLCBmYWlsOiBvcHMuR1QgfSwKICAgICAgZm9ybWF0TWluaW11bTogeyBva1N0cjogIj49Iiwgb2s6IG9wcy5HVEUsIGZhaWw6IG9wcy5MVCB9LAogICAgICBmb3JtYXRFeGNsdXNpdmVNYXhpbXVtOiB7IG9rU3RyOiAiPCIsIG9rOiBvcHMuTFQsIGZhaWw6IG9wcy5HVEUgfSwKICAgICAgZm9ybWF0RXhjbHVzaXZlTWluaW11bTogeyBva1N0cjogIj4iLCBvazogb3BzLkdULCBmYWlsOiBvcHMuTFRFIH0KICAgIH07CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYHNob3VsZCBiZSAke0tXRHNba2V5d29yZF0ub2tTdHJ9ICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Y29tcGFyaXNvbjogJHtLV0RzW2tleXdvcmRdLm9rU3RyfSwgbGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICAgIGlmICghb3B0cy52YWxpZGF0ZUZvcm1hdHMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZkN4dCA9IG5ldyBhanZfMS5LZXl3b3JkQ3h0KGl0LCBzZWxmMi5SVUxFUy5hbGwuZm9ybWF0LmRlZmluaXRpb24sICJmb3JtYXQiKTsKICAgICAgICBpZiAoZkN4dC4kZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZm10ID0gZ2VuLmNvbnN0KCJmbXQiLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10c31bJHtmQ3h0LnNjaGVtYUNvZGV9XWApOwogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLm9yKSgoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2ZtdH0gIT0gIm9iamVjdCJgLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10fSBpbnN0YW5jZW9mIFJlZ0V4cGAsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7Zm10fS5jb21wYXJlICE9ICJmdW5jdGlvbiJgLCBjb21wYXJlQ29kZShmbXQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZkN4dC5zY2hlbWE7CiAgICAgICAgICBjb25zdCBmbXREZWYgPSBzZWxmMi5mb3JtYXRzW2Zvcm1hdF07CiAgICAgICAgICBpZiAoIWZtdERlZiB8fCBmbXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGlmICh0eXBlb2YgZm10RGVmICE9ICJvYmplY3QiIHx8IGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCB8fCB0eXBlb2YgZm10RGVmLmNvbXBhcmUgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCIke2tleXdvcmR9IjogZm9ybWF0ICIke2Zvcm1hdH0iIGRvZXMgbm90IGRlZmluZSAiY29tcGFyZSIgZnVuY3Rpb25gKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICBrZXk6IGZvcm1hdCwKICAgICAgICAgICAgcmVmOiBmbXREZWYsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzID8gKDAsIGNvZGVnZW5fMS5fKWAke29wdHMuY29kZS5mb3JtYXRzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoZm9ybWF0KX1gIDogdm9pZCAwCiAgICAgICAgICB9KTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoY29tcGFyZUNvZGUoZm10KSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNvbXBhcmVDb2RlKGZtdCkgewogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LmNvbXBhcmUoJHtkYXRhfSwgJHtzY2hlbWFDb2RlfSkgJHtLV0RzW2tleXdvcmRdLmZhaWx9IDBgOwogICAgICAgIH0KICAgICAgfSwKICAgICAgZGVwZW5kZW5jaWVzOiBbImZvcm1hdCJdCiAgICB9OwogICAgdmFyIGZvcm1hdExpbWl0UGx1Z2luID0gKGFqdikgPT4gewogICAgICBhanYuYWRkS2V5d29yZChleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24pOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXRMaW1pdFBsdWdpbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0c18xID0gcmVxdWlyZV9mb3JtYXRzKCk7CiAgICB2YXIgbGltaXRfMSA9IHJlcXVpcmVfbGltaXQoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBmdWxsTmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZnVsbEZvcm1hdHMiKTsKICAgIHZhciBmYXN0TmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZmFzdEZvcm1hdHMiKTsKICAgIHZhciBmb3JtYXRzUGx1Z2luID0gKGFqdiwgb3B0cyA9IHsga2V5d29yZHM6IHRydWUgfSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRzKSkgewogICAgICAgIGFkZEZvcm1hdHMoYWp2LCBvcHRzLCBmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lKTsKICAgICAgICByZXR1cm4gYWp2OwogICAgICB9CiAgICAgIGNvbnN0IFtmb3JtYXRzLCBleHBvcnROYW1lXSA9IG9wdHMubW9kZSA9PT0gImZhc3QiID8gW2Zvcm1hdHNfMS5mYXN0Rm9ybWF0cywgZmFzdE5hbWVdIDogW2Zvcm1hdHNfMS5mdWxsRm9ybWF0cywgZnVsbE5hbWVdOwogICAgICBjb25zdCBsaXN0ID0gb3B0cy5mb3JtYXRzIHx8IGZvcm1hdHNfMS5mb3JtYXROYW1lczsKICAgICAgYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZvcm1hdHMsIGV4cG9ydE5hbWUpOwogICAgICBpZiAob3B0cy5rZXl3b3JkcykKICAgICAgICAoMCwgbGltaXRfMS5kZWZhdWx0KShhanYpOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGZvcm1hdHNQbHVnaW4uZ2V0ID0gKG5hbWUsIG1vZGUgPSAiZnVsbCIpID0+IHsKICAgICAgY29uc3QgZm9ybWF0cyA9IG1vZGUgPT09ICJmYXN0IiA/IGZvcm1hdHNfMS5mYXN0Rm9ybWF0cyA6IGZvcm1hdHNfMS5mdWxsRm9ybWF0czsKICAgICAgY29uc3QgZiA9IGZvcm1hdHNbbmFtZV07CiAgICAgIGlmICghZikKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9ybWF0ICIke25hbWV9ImApOwogICAgICByZXR1cm4gZjsKICAgIH07CiAgICBmdW5jdGlvbiBhZGRGb3JtYXRzKGFqdiwgbGlzdCwgZnMsIGV4cG9ydE5hbWUpIHsKICAgICAgdmFyIF9hOwogICAgICB2YXIgX2I7CiAgICAgIChfYSA9IChfYiA9IGFqdi5vcHRzLmNvZGUpLmZvcm1hdHMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IF9iLmZvcm1hdHMgPSAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cyIpLiR7ZXhwb3J0TmFtZX1gOwogICAgICBmb3IgKGNvbnN0IGYgb2YgbGlzdCkKICAgICAgICBhanYuYWRkRm9ybWF0KGYsIGZzW2ZdKTsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gZm9ybWF0c1BsdWdpbjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdHNQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcwp2YXIgcmVxdWlyZV9pc0Z1bmN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNGdW5jdGlvbiA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gImZ1bmN0aW9uIjsKICAgIH0KICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMKdmFyIHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUVycm9yQ2xhc3MgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBjcmVhdGVFcnJvckNsYXNzKGNyZWF0ZUltcGwpIHsKICAgICAgdmFyIF9zdXBlciA9IGZ1bmN0aW9uKGluc3RhbmNlKSB7CiAgICAgICAgRXJyb3IuY2FsbChpbnN0YW5jZSk7CiAgICAgICAgaW5zdGFuY2Uuc3RhY2sgPSBuZXcgRXJyb3IoKS5zdGFjazsKICAgICAgfTsKICAgICAgdmFyIGN0b3JGdW5jID0gY3JlYXRlSW1wbChfc3VwZXIpOwogICAgICBjdG9yRnVuYy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CiAgICAgIGN0b3JGdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGN0b3JGdW5jOwogICAgICByZXR1cm4gY3RvckZ1bmM7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVFcnJvckNsYXNzID0gY3JlYXRlRXJyb3JDbGFzczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzCnZhciByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbnN1YnNjcmlwdGlvbkVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVW5zdWJzY3JpcHRpb25FcnJvckltcGwoZXJyb3JzKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9IGVycm9ycyA/IGVycm9ycy5sZW5ndGggKyAiIGVycm9ycyBvY2N1cnJlZCBkdXJpbmcgdW5zdWJzY3JpcHRpb246XG4iICsgZXJyb3JzLm1hcChmdW5jdGlvbihlcnIsIGkpIHsKICAgICAgICAgIHJldHVybiBpICsgMSArICIpICIgKyBlcnIudG9TdHJpbmcoKTsKICAgICAgICB9KS5qb2luKCJcbiAgIikgOiAiIjsKICAgICAgICB0aGlzLm5hbWUgPSAiVW5zdWJzY3JpcHRpb25FcnJvciI7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcnJSZW1vdmUuanMKdmFyIHJlcXVpcmVfYXJyUmVtb3ZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJyUmVtb3ZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBhcnJSZW1vdmUoYXJyLCBpdGVtKSB7CiAgICAgIGlmIChhcnIpIHsKICAgICAgICB2YXIgaW5kZXggPSBhcnIuaW5kZXhPZihpdGVtKTsKICAgICAgICAwIDw9IGluZGV4ICYmIGFyci5zcGxpY2UoaW5kZXgsIDEpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSBhcnJSZW1vdmU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcwp2YXIgcmVxdWlyZV9TdWJzY3JpcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3Vic2NyaXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1N1YnNjcmlwdGlvbiA9IGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFN1YnNjcmlwdGlvbjIoaW5pdGlhbFRlYXJkb3duKSB7CiAgICAgICAgdGhpcy5pbml0aWFsVGVhcmRvd24gPSBpbml0aWFsVGVhcmRvd247CiAgICAgICAgdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgIHRoaXMuX2ZpbmFsaXplcnMgPSBudWxsOwogICAgICB9CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgdmFyIGVycm9yczsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICAgIGlmIChfcGFyZW50YWdlKSB7CiAgICAgICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9wYXJlbnRhZ2VfMSA9IF9fdmFsdWVzKF9wYXJlbnRhZ2UpLCBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCk7ICFfcGFyZW50YWdlXzFfMS5kb25lOyBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgICAgdmFyIHBhcmVudF8xID0gX3BhcmVudGFnZV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgICAgIHBhcmVudF8xLnJlbW92ZSh0aGlzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgaWYgKF9wYXJlbnRhZ2VfMV8xICYmICFfcGFyZW50YWdlXzFfMS5kb25lICYmIChfYSA9IF9wYXJlbnRhZ2VfMS5yZXR1cm4pKSBfYS5jYWxsKF9wYXJlbnRhZ2VfMSk7CiAgICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9wYXJlbnRhZ2UucmVtb3ZlKHRoaXMpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgaW5pdGlhbEZpbmFsaXplciA9IHRoaXMuaW5pdGlhbFRlYXJkb3duOwogICAgICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGluaXRpYWxGaW5hbGl6ZXIpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaW5pdGlhbEZpbmFsaXplcigpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgZXJyb3JzID0gZSBpbnN0YW5jZW9mIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yID8gZS5lcnJvcnMgOiBbZV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBfZmluYWxpemVycyA9IHRoaXMuX2ZpbmFsaXplcnM7CiAgICAgICAgICBpZiAoX2ZpbmFsaXplcnMpIHsKICAgICAgICAgICAgdGhpcy5fZmluYWxpemVycyA9IG51bGw7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2ZpbmFsaXplcnNfMSA9IF9fdmFsdWVzKF9maW5hbGl6ZXJzKSwgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCk7ICFfZmluYWxpemVyc18xXzEuZG9uZTsgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBmaW5hbGl6ZXIgPSBfZmluYWxpemVyc18xXzEudmFsdWU7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBleGVjRmluYWxpemVyKGZpbmFsaXplcik7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgZXJyb3JzID0gZXJyb3JzICE9PSBudWxsICYmIGVycm9ycyAhPT0gdm9pZCAwID8gZXJyb3JzIDogW107CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcikgewogICAgICAgICAgICAgICAgICAgIGVycm9ycyA9IF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGVycm9ycykpLCBfX3JlYWQoZXJyLmVycm9ycykpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKGVycik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9maW5hbGl6ZXJzXzFfMSAmJiAhX2ZpbmFsaXplcnNfMV8xLmRvbmUgJiYgKF9iID0gX2ZpbmFsaXplcnNfMS5yZXR1cm4pKSBfYi5jYWxsKF9maW5hbGl6ZXJzXzEpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8yKSB0aHJvdyBlXzIuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXJyb3JzKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcihlcnJvcnMpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHRlYXJkb3duICYmIHRlYXJkb3duICE9PSB0aGlzKSB7CiAgICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgICAgZXhlY0ZpbmFsaXplcih0ZWFyZG93bik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGVhcmRvd24gaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24yKSB7CiAgICAgICAgICAgICAgaWYgKHRlYXJkb3duLmNsb3NlZCB8fCB0ZWFyZG93bi5faGFzUGFyZW50KHRoaXMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRlYXJkb3duLl9hZGRQYXJlbnQodGhpcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgKHRoaXMuX2ZpbmFsaXplcnMgPSAoX2EgPSB0aGlzLl9maW5hbGl6ZXJzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSkucHVzaCh0ZWFyZG93bik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5faGFzUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgcmV0dXJuIF9wYXJlbnRhZ2UgPT09IHBhcmVudCB8fCBBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpICYmIF9wYXJlbnRhZ2UuaW5jbHVkZXMocGFyZW50KTsKICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX2FkZFBhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkgPyAoX3BhcmVudGFnZS5wdXNoKHBhcmVudCksIF9wYXJlbnRhZ2UpIDogX3BhcmVudGFnZSA/IFtfcGFyZW50YWdlLCBwYXJlbnRdIDogcGFyZW50OwogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5fcmVtb3ZlUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgaWYgKF9wYXJlbnRhZ2UgPT09IHBhcmVudCkgewogICAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkpIHsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShfcGFyZW50YWdlLCBwYXJlbnQpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2ZpbmFsaXplcnMgPSB0aGlzLl9maW5hbGl6ZXJzOwogICAgICAgIF9maW5hbGl6ZXJzICYmIGFyclJlbW92ZV8xLmFyclJlbW92ZShfZmluYWxpemVycywgdGVhcmRvd24pOwogICAgICAgIGlmICh0ZWFyZG93biBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjIpIHsKICAgICAgICAgIHRlYXJkb3duLl9yZW1vdmVQYXJlbnQodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLkVNUFRZID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVtcHR5ID0gbmV3IFN1YnNjcmlwdGlvbjIoKTsKICAgICAgICBlbXB0eS5jbG9zZWQgPSB0cnVlOwogICAgICAgIHJldHVybiBlbXB0eTsKICAgICAgfSgpOwogICAgICByZXR1cm4gU3Vic2NyaXB0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbjsKICAgIGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IFN1YnNjcmlwdGlvbi5FTVBUWTsKICAgIGZ1bmN0aW9uIGlzU3Vic2NyaXB0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbiB8fCB2YWx1ZSAmJiAiY2xvc2VkIiBpbiB2YWx1ZSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5yZW1vdmUpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmFkZCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUudW5zdWJzY3JpYmUpOwogICAgfQogICAgZXhwb3J0czIuaXNTdWJzY3JpcHRpb24gPSBpc1N1YnNjcmlwdGlvbjsKICAgIGZ1bmN0aW9uIGV4ZWNGaW5hbGl6ZXIoZmluYWxpemVyKSB7CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihmaW5hbGl6ZXIpKSB7CiAgICAgICAgZmluYWxpemVyKCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmluYWxpemVyLnVuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvY29uZmlnLmpzCnZhciByZXF1aXJlX2NvbmZpZyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9jb25maWcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHsKICAgICAgb25VbmhhbmRsZWRFcnJvcjogbnVsbCwKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uOiBudWxsLAogICAgICBQcm9taXNlOiB2b2lkIDAsCiAgICAgIHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6IGZhbHNlLAogICAgICB1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzCnZhciByZXF1aXJlX3RpbWVvdXRQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB2b2lkIDA7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB7CiAgICAgIHNldFRpbWVvdXQ6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgaWYgKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5zZXRUaW1lb3V0KSB7CiAgICAgICAgICByZXR1cm4gZGVsZWdhdGUuc2V0VGltZW91dC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0VGltZW91dC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgY2xlYXJUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGUpIHsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFyVGltZW91dCkgfHwgY2xlYXJUaW1lb3V0KShoYW5kbGUpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzCnZhciByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcmVwb3J0VW5oYW5kbGVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvbmZpZ18xID0gcmVxdWlyZV9jb25maWcoKTsKICAgIHZhciB0aW1lb3V0UHJvdmlkZXJfMSA9IHJlcXVpcmVfdGltZW91dFByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiByZXBvcnRVbmhhbmRsZWRFcnJvcihlcnIpIHsKICAgICAgdGltZW91dFByb3ZpZGVyXzEudGltZW91dFByb3ZpZGVyLnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIG9uVW5oYW5kbGVkRXJyb3IgPSBjb25maWdfMS5jb25maWcub25VbmhhbmRsZWRFcnJvcjsKICAgICAgICBpZiAob25VbmhhbmRsZWRFcnJvcikgewogICAgICAgICAgb25VbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBlcnI7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gcmVwb3J0VW5oYW5kbGVkRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcwp2YXIgcmVxdWlyZV9ub29wID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm9vcCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIG5vb3AoKSB7CiAgICB9CiAgICBleHBvcnRzMi5ub29wID0gbm9vcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbkZhY3RvcmllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb25GYWN0b3JpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBleHBvcnRzMi5lcnJvck5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY3JlYXRlTm90aWZpY2F0aW9uKCJDIiwgdm9pZCAwLCB2b2lkIDApOwogICAgfSgpOwogICAgZnVuY3Rpb24gZXJyb3JOb3RpZmljYXRpb24oZXJyb3IpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiRSIsIHZvaWQgMCwgZXJyb3IpOwogICAgfQogICAgZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBlcnJvck5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG5leHROb3RpZmljYXRpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiTiIsIHZhbHVlLCB2b2lkIDApOwogICAgfQogICAgZXhwb3J0czIubmV4dE5vdGlmaWNhdGlvbiA9IG5leHROb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oa2luZCwgdmFsdWUsIGVycm9yKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAga2luZCwKICAgICAgICB2YWx1ZSwKICAgICAgICBlcnJvcgogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlTm90aWZpY2F0aW9uID0gY3JlYXRlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcwp2YXIgcmVxdWlyZV9lcnJvckNvbnRleHQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9lcnJvckNvbnRleHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhcHR1cmVFcnJvciA9IGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IHZvaWQgMDsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgY29udGV4dCA9IG51bGw7CiAgICBmdW5jdGlvbiBlcnJvckNvbnRleHQoY2IpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKSB7CiAgICAgICAgdmFyIGlzUm9vdCA9ICFjb250ZXh0OwogICAgICAgIGlmIChpc1Jvb3QpIHsKICAgICAgICAgIGNvbnRleHQgPSB7IGVycm9yVGhyb3duOiBmYWxzZSwgZXJyb3I6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgY2IoKTsKICAgICAgICBpZiAoaXNSb290KSB7CiAgICAgICAgICB2YXIgX2EgPSBjb250ZXh0LCBlcnJvclRocm93biA9IF9hLmVycm9yVGhyb3duLCBlcnJvciA9IF9hLmVycm9yOwogICAgICAgICAgY29udGV4dCA9IG51bGw7CiAgICAgICAgICBpZiAoZXJyb3JUaHJvd24pIHsKICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGNiKCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IGVycm9yQ29udGV4dDsKICAgIGZ1bmN0aW9uIGNhcHR1cmVFcnJvcihlcnIpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nICYmIGNvbnRleHQpIHsKICAgICAgICBjb250ZXh0LmVycm9yVGhyb3duID0gdHJ1ZTsKICAgICAgICBjb250ZXh0LmVycm9yID0gZXJyOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jYXB0dXJlRXJyb3IgPSBjYXB0dXJlRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVNUFRZX09CU0VSVkVSID0gZXhwb3J0czIuU2FmZVN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgcmVwb3J0VW5oYW5kbGVkRXJyb3JfMSA9IHJlcXVpcmVfcmVwb3J0VW5oYW5kbGVkRXJyb3IoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBOb3RpZmljYXRpb25GYWN0b3JpZXNfMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3Vic2NyaWJlcjIoZGVzdGluYXRpb24pIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLmlzU3RvcHBlZCA9IGZhbHNlOwogICAgICAgIGlmIChkZXN0aW5hdGlvbikgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjsKICAgICAgICAgIGlmIChTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbihkZXN0aW5hdGlvbikpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uYWRkKF90aGlzKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFN1YnNjcmliZXIyLmNyZWF0ZSA9IGZ1bmN0aW9uKG5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHJldHVybiBuZXcgU2FmZVN1YnNjcmliZXIobmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5uZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX25leHQodmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLmVycm9yTm90aWZpY2F0aW9uKGVyciksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLkNPTVBMRVRFX05PVElGSUNBVElPTiwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2NvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbnVsbDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fbmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5uZXh0KHZhbHVlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLl9lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5TdWJzY3JpYmVyID0gU3Vic2NyaWJlcjsKICAgIHZhciBfYmluZCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kOwogICAgZnVuY3Rpb24gYmluZChmbiwgdGhpc0FyZykgewogICAgICByZXR1cm4gX2JpbmQuY2FsbChmbiwgdGhpc0FyZyk7CiAgICB9CiAgICB2YXIgQ29uc3VtZXJPYnNlcnZlciA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBDb25zdW1lck9ic2VydmVyMihwYXJ0aWFsT2JzZXJ2ZXIpIHsKICAgICAgICB0aGlzLnBhcnRpYWxPYnNlcnZlciA9IHBhcnRpYWxPYnNlcnZlcjsKICAgICAgfQogICAgICBDb25zdW1lck9ic2VydmVyMi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIubmV4dCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5lcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIENvbnN1bWVyT2JzZXJ2ZXIyOwogICAgfSgpOwogICAgdmFyIFNhZmVTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTYWZlU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFNhZmVTdWJzY3JpYmVyMihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICB2YXIgcGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgIW9ic2VydmVyT3JOZXh0KSB7CiAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSB7CiAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0ICE9PSBudWxsICYmIG9ic2VydmVyT3JOZXh0ICE9PSB2b2lkIDAgPyBvYnNlcnZlck9yTmV4dCA6IHZvaWQgMCwKICAgICAgICAgICAgZXJyb3I6IGVycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6IHZvaWQgMCwKICAgICAgICAgICAgY29tcGxldGU6IGNvbXBsZXRlICE9PSBudWxsICYmIGNvbXBsZXRlICE9PSB2b2lkIDAgPyBjb21wbGV0ZSA6IHZvaWQgMAogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIGNvbnRleHRfMTsKICAgICAgICAgIGlmIChfdGhpcyAmJiBjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZE5leHRDb250ZXh0KSB7CiAgICAgICAgICAgIGNvbnRleHRfMSA9IE9iamVjdC5jcmVhdGUob2JzZXJ2ZXJPck5leHQpOwogICAgICAgICAgICBjb250ZXh0XzEudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0Lm5leHQgJiYgYmluZChvYnNlcnZlck9yTmV4dC5uZXh0LCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGVycm9yOiBvYnNlcnZlck9yTmV4dC5lcnJvciAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmVycm9yLCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGNvbXBsZXRlOiBvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmNvbXBsZXRlLCBjb250ZXh0XzEpCiAgICAgICAgICAgIH07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSBvYnNlcnZlck9yTmV4dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBuZXcgQ29uc3VtZXJPYnNlcnZlcihwYXJ0aWFsT2JzZXJ2ZXIpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICByZXR1cm4gU2FmZVN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gU2FmZVN1YnNjcmliZXI7CiAgICBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnJvcikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICBlcnJvckNvbnRleHRfMS5jYXB0dXJlRXJyb3IoZXJyb3IpOwogICAgICB9IGVsc2UgewogICAgICAgIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0RXJyb3JIYW5kbGVyKGVycikgewogICAgICB0aHJvdyBlcnI7CiAgICB9CiAgICBmdW5jdGlvbiBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcikgewogICAgICB2YXIgb25TdG9wcGVkTm90aWZpY2F0aW9uID0gY29uZmlnXzEuY29uZmlnLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjsKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uICYmIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBvblN0b3BwZWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IHsKICAgICAgY2xvc2VkOiB0cnVlLAogICAgICBuZXh0OiBub29wXzEubm9vcCwKICAgICAgZXJyb3I6IGRlZmF1bHRFcnJvckhhbmRsZXIsCiAgICAgIGNvbXBsZXRlOiBub29wXzEubm9vcAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfb2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvb2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLm9ic2VydmFibGUgfHwgIkBAb2JzZXJ2YWJsZSI7CiAgICB9KCk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMKdmFyIHJlcXVpcmVfaWRlbnRpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pZGVudGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWRlbnRpdHkgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpZGVudGl0eSh4KSB7CiAgICAgIHJldHVybiB4OwogICAgfQogICAgZXhwb3J0czIuaWRlbnRpdHkgPSBpZGVudGl0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzCnZhciByZXF1aXJlX3BpcGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5waXBlRnJvbUFycmF5ID0gZXhwb3J0czIucGlwZSA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcGlwZSgpIHsKICAgICAgdmFyIGZucyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGZuc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBwaXBlRnJvbUFycmF5KGZucyk7CiAgICB9CiAgICBleHBvcnRzMi5waXBlID0gcGlwZTsKICAgIGZ1bmN0aW9uIHBpcGVGcm9tQXJyYXkoZm5zKSB7CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgaWYgKGZucy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZm5zWzBdOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBwaXBlZChpbnB1dCkgewogICAgICAgIHJldHVybiBmbnMucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGZuKSB7CiAgICAgICAgICByZXR1cm4gZm4ocHJldik7CiAgICAgICAgfSwgaW5wdXQpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IHBpcGVGcm9tQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9PYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIHZhciBwaXBlXzEgPSByZXF1aXJlX3BpcGUoKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXJyb3JDb250ZXh0XzEgPSByZXF1aXJlX2Vycm9yQ29udGV4dCgpOwogICAgdmFyIE9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKSB7CiAgICAgICAgaWYgKHN1YnNjcmliZSkgewogICAgICAgICAgdGhpcy5fc3Vic2NyaWJlID0gc3Vic2NyaWJlOwogICAgICAgIH0KICAgICAgfQogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUubGlmdCA9IGZ1bmN0aW9uKG9wZXJhdG9yKSB7CiAgICAgICAgdmFyIG9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZTIoKTsKICAgICAgICBvYnNlcnZhYmxlLnNvdXJjZSA9IHRoaXM7CiAgICAgICAgb2JzZXJ2YWJsZS5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24ob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBpc1N1YnNjcmliZXIob2JzZXJ2ZXJPck5leHQpID8gb2JzZXJ2ZXJPck5leHQgOiBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYSA9IF90aGlzLCBvcGVyYXRvciA9IF9hLm9wZXJhdG9yLCBzb3VyY2UgPSBfYS5zb3VyY2U7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChvcGVyYXRvciA/IG9wZXJhdG9yLmNhbGwoc3Vic2NyaWJlciwgc291cmNlKSA6IHNvdXJjZSA/IF90aGlzLl9zdWJzY3JpYmUoc3Vic2NyaWJlcikgOiBfdGhpcy5fdHJ5U3Vic2NyaWJlKHN1YnNjcmliZXIpKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlcjsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzaW5rKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHJldHVybiB0aGlzLl9zdWJzY3JpYmUoc2luayk7CiAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICBzaW5rLmVycm9yKGVycik7CiAgICAgICAgfQogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuZm9yRWFjaCA9IGZ1bmN0aW9uKG5leHQsIHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICAgIGNvbXBsZXRlOiByZXNvbHZlCiAgICAgICAgICB9KTsKICAgICAgICAgIF90aGlzLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLnNvdXJjZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUucGlwZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvcGVyYXRpb25zID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIG9wZXJhdGlvbnNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBpcGVfMS5waXBlRnJvbUFycmF5KG9wZXJhdGlvbnMpKHRoaXMpOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUudG9Qcm9taXNlID0gZnVuY3Rpb24ocHJvbWlzZUN0b3IpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHByb21pc2VDdG9yID0gZ2V0UHJvbWlzZUN0b3IocHJvbWlzZUN0b3IpOwogICAgICAgIHJldHVybiBuZXcgcHJvbWlzZUN0b3IoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoZnVuY3Rpb24oeCkgewogICAgICAgICAgICByZXR1cm4gdmFsdWUgPSB4OwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcmVzb2x2ZSh2YWx1ZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIuY3JlYXRlID0gZnVuY3Rpb24oc3Vic2NyaWJlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlMihzdWJzY3JpYmUpOwogICAgICB9OwogICAgICByZXR1cm4gT2JzZXJ2YWJsZTI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gT2JzZXJ2YWJsZTsKICAgIGZ1bmN0aW9uIGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmV0dXJuIChfYSA9IHByb21pc2VDdG9yICE9PSBudWxsICYmIHByb21pc2VDdG9yICE9PSB2b2lkIDAgPyBwcm9taXNlQ3RvciA6IGNvbmZpZ18xLmNvbmZpZy5Qcm9taXNlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBQcm9taXNlOwogICAgfQogICAgZnVuY3Rpb24gaXNPYnNlcnZlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUubmV4dCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuZXJyb3IpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmNvbXBsZXRlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU3Vic2NyaWJlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgdmFsdWUgaW5zdGFuY2VvZiBTdWJzY3JpYmVyXzEuU3Vic2NyaWJlciB8fCBpc09ic2VydmVyKHZhbHVlKSAmJiBTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbih2YWx1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcwp2YXIgcmVxdWlyZV9saWZ0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub3BlcmF0ZSA9IGV4cG9ydHMyLmhhc0xpZnQgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBoYXNMaWZ0KHNvdXJjZSkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc291cmNlID09PSBudWxsIHx8IHNvdXJjZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlLmxpZnQpOwogICAgfQogICAgZXhwb3J0czIuaGFzTGlmdCA9IGhhc0xpZnQ7CiAgICBmdW5jdGlvbiBvcGVyYXRlKGluaXQpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIGlmIChoYXNMaWZ0KHNvdXJjZSkpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UubGlmdChmdW5jdGlvbihsaWZ0ZWRTb3VyY2UpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICByZXR1cm4gaW5pdChsaWZ0ZWRTb3VyY2UsIHRoaXMpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICB0aGlzLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmFibGUgdG8gbGlmdCB1bmtub3duIE9ic2VydmFibGUgdHlwZSIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub3BlcmF0ZSA9IG9wZXJhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpIHsKICAgICAgcmV0dXJuIG5ldyBPcGVyYXRvclN1YnNjcmliZXIoZGVzdGluYXRpb24sIG9uTmV4dCwgb25Db21wbGV0ZSwgb25FcnJvciwgb25GaW5hbGl6ZSk7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIgPSBjcmVhdGVPcGVyYXRvclN1YnNjcmliZXI7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhPcGVyYXRvclN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBPcGVyYXRvclN1YnNjcmliZXIyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUsIHNob3VsZFVuc3Vic2NyaWJlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgZGVzdGluYXRpb24pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMub25GaW5hbGl6ZSA9IG9uRmluYWxpemU7CiAgICAgICAgX3RoaXMuc2hvdWxkVW5zdWJzY3JpYmUgPSBzaG91bGRVbnN1YnNjcmliZTsKICAgICAgICBfdGhpcy5fbmV4dCA9IG9uTmV4dCA/IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBvbk5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX25leHQ7CiAgICAgICAgX3RoaXMuX2Vycm9yID0gb25FcnJvciA/IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25FcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyMikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIyKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9IDogX3N1cGVyLnByb3RvdHlwZS5fZXJyb3I7CiAgICAgICAgX3RoaXMuX2NvbXBsZXRlID0gb25Db21wbGV0ZSA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25Db21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2NvbXBsZXRlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPcGVyYXRvclN1YnNjcmliZXIyLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmUgfHwgdGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKSB7CiAgICAgICAgICB2YXIgY2xvc2VkXzEgPSB0aGlzLmNsb3NlZDsKICAgICAgICAgIF9zdXBlci5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKTsKICAgICAgICAgICFjbG9zZWRfMSAmJiAoKF9hID0gdGhpcy5vbkZpbmFsaXplKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzKSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gT3BlcmF0b3JTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIpOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVmQ291bnQuanMKdmFyIHJlcXVpcmVfcmVmQ291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZkNvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWZDb3VudCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiByZWZDb3VudCgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBzb3VyY2UuX3JlZkNvdW50Kys7CiAgICAgICAgdmFyIHJlZkNvdW50ZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIXNvdXJjZSB8fCBzb3VyY2UuX3JlZkNvdW50IDw9IDAgfHwgMCA8IC0tc291cmNlLl9yZWZDb3VudCkgewogICAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgdmFyIHNoYXJlZENvbm5lY3Rpb24gPSBzb3VyY2UuX2Nvbm5lY3Rpb247CiAgICAgICAgICB2YXIgY29ubiA9IGNvbm5lY3Rpb247CiAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgIGlmIChzaGFyZWRDb25uZWN0aW9uICYmICghY29ubiB8fCBzaGFyZWRDb25uZWN0aW9uID09PSBjb25uKSkgewogICAgICAgICAgICBzaGFyZWRDb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShyZWZDb3VudGVyKTsKICAgICAgICBpZiAoIXJlZkNvdW50ZXIuY2xvc2VkKSB7CiAgICAgICAgICBjb25uZWN0aW9uID0gc291cmNlLmNvbm5lY3QoKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVmQ291bnQgPSByZWZDb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvQ29ubmVjdGFibGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhDb25uZWN0YWJsZU9ic2VydmFibGUyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBDb25uZWN0YWJsZU9ic2VydmFibGUyKHNvdXJjZSwgc3ViamVjdEZhY3RvcnkpIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICBfdGhpcy5zdWJqZWN0RmFjdG9yeSA9IHN1YmplY3RGYWN0b3J5OwogICAgICAgIF90aGlzLl9zdWJqZWN0ID0gbnVsbDsKICAgICAgICBfdGhpcy5fcmVmQ291bnQgPSAwOwogICAgICAgIF90aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBpZiAobGlmdF8xLmhhc0xpZnQoc291cmNlKSkgewogICAgICAgICAgX3RoaXMubGlmdCA9IHNvdXJjZS5saWZ0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KCkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5nZXRTdWJqZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSB0aGlzLl9zdWJqZWN0OwogICAgICAgIGlmICghc3ViamVjdCB8fCBzdWJqZWN0LmlzU3RvcHBlZCkgewogICAgICAgICAgdGhpcy5fc3ViamVjdCA9IHRoaXMuc3ViamVjdEZhY3RvcnkoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N1YmplY3Q7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90ZWFyZG93biA9IGZ1bmN0aW9uKCkgewogICAgICAgIHRoaXMuX3JlZkNvdW50ID0gMDsKICAgICAgICB2YXIgX2Nvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIHRoaXMuX3N1YmplY3QgPSB0aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBfY29ubmVjdGlvbiA9PT0gbnVsbCB8fCBfY29ubmVjdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Nvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIGlmICghY29ubmVjdGlvbikgewogICAgICAgICAgY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgc3ViamVjdF8xID0gdGhpcy5nZXRTdWJqZWN0KCk7CiAgICAgICAgICBjb25uZWN0aW9uLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YmplY3RfMSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICAgIHN1YmplY3RfMS5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgICBzdWJqZWN0XzEuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICB9KSkpOwogICAgICAgICAgaWYgKGNvbm5lY3Rpb24uY2xvc2VkKSB7CiAgICAgICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgICAgICBjb25uZWN0aW9uID0gU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY29ubmVjdGlvbjsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUucmVmQ291bnQgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudCgpKHRoaXMpOwogICAgICB9OwogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlMjsKICAgIH0oT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpOwogICAgZXhwb3J0czIuQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuZGVsZWdhdGUgfHwgcGVyZm9ybWFuY2UpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIgPSB7CiAgICAgIHNjaGVkdWxlOiBmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgIHZhciByZXF1ZXN0ID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lOwogICAgICAgIHZhciBjYW5jZWwgPSBjYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSkgewogICAgICAgICAgcmVxdWVzdCA9IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICAgIGNhbmNlbCA9IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lOwogICAgICAgIH0KICAgICAgICB2YXIgaGFuZGxlID0gcmVxdWVzdChmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXAyKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBjYW5jZWwgPT09IG51bGwgfHwgY2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjYW5jZWwoaGFuZGxlKTsKICAgICAgICB9KTsKICAgICAgfSwKICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZSkgfHwgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjYW5jZWxBbmltYXRpb25GcmFtZTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZSkgfHwgY2FuY2VsQW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZG9tL2FuaW1hdGlvbkZyYW1lcy5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXModGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcFByb3ZpZGVyID8gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSh0aW1lc3RhbXBQcm92aWRlcikgOiBERUZBVUxUX0FOSU1BVElPTl9GUkFNRVM7CiAgICB9CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSBhbmltYXRpb25GcmFtZXM7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcm92aWRlciA9IHRpbWVzdGFtcFByb3ZpZGVyIHx8IHBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXJfMS5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIHZhciBzdGFydCA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgIHZhciBpZCA9IDA7CiAgICAgICAgdmFyIHJ1biA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBpZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICAgICAgaWQgPSAwOwogICAgICAgICAgICAgIHZhciBub3cgPSBwcm92aWRlci5ub3coKTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoewogICAgICAgICAgICAgICAgdGltZXN0YW1wOiB0aW1lc3RhbXBQcm92aWRlciA/IG5vdyA6IHRpbWVzdGFtcDIsCiAgICAgICAgICAgICAgICBlbGFwc2VkOiBub3cgLSBzdGFydAogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJ1bigpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJ1bigpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpZCkgewogICAgICAgICAgICBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5jYW5jZWxBbmltYXRpb25GcmFtZShpZCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICB2YXIgREVGQVVMVF9BTklNQVRJT05fRlJBTUVTID0gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE9iamVjdFVuc3Vic2NyaWJlZEVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk9iamVjdFVuc3Vic2NyaWJlZEVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAib2JqZWN0IHVuc3Vic2NyaWJlZCI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9TdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMKdmFyIHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhCZWhhdmlvclN1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBCZWhhdmlvclN1YmplY3QyKF92YWx1ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gX3ZhbHVlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUsICJ2YWx1ZSIsIHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9uID0gX3N1cGVyLnByb3RvdHlwZS5fc3Vic2NyaWJlLmNhbGwodGhpcywgc3Vic2NyaWJlcik7CiAgICAgICAgIXN1YnNjcmlwdGlvbi5jbG9zZWQgJiYgc3Vic2NyaWJlci5uZXh0KHRoaXMuX3ZhbHVlKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBCZWhhdmlvclN1YmplY3QyLnByb3RvdHlwZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGhhc0Vycm9yID0gX2EuaGFzRXJyb3IsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIF92YWx1ZSA9IF9hLl92YWx1ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHRocm93IHRocm93bkVycm9yOwogICAgICAgIH0KICAgICAgICB0aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgcmV0dXJuIF92YWx1ZTsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcywgdGhpcy5fdmFsdWUgPSB2YWx1ZSk7CiAgICAgIH07CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3QyOwogICAgfShTdWJqZWN0XzEuU3ViamVjdCk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBCZWhhdmlvclN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlci5kZWxlZ2F0ZSB8fCBEYXRlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdC5qcwp2YXIgcmVxdWlyZV9SZXBsYXlTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9Bc3luY1N1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBBc3luY1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jU3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gbnVsbDsKICAgICAgICBfdGhpcy5faGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBfdGhpcy5faXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgdGhyb3duRXJyb3IgPSBfYS50aHJvd25FcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmIChoYXNFcnJvcikgewogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcih0aHJvd25FcnJvcik7CiAgICAgICAgfSBlbHNlIGlmIChpc1N0b3BwZWQgfHwgX2lzQ29tcGxldGUpIHsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLm5leHQoX3ZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICghdGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICB0aGlzLl9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIF9oYXNWYWx1ZSA9IF9hLl9oYXNWYWx1ZSwgX3ZhbHVlID0gX2EuX3ZhbHVlLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmICghX2lzQ29tcGxldGUpIHsKICAgICAgICAgIHRoaXMuX2lzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgX2hhc1ZhbHVlICYmIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIF92YWx1ZSk7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQXN5bmNTdWJqZWN0ID0gQXN5bmNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHJldHVybiBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIHJldHVybiBBY3Rpb24yOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuQWN0aW9uID0gQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW50ZXJ2YWxQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY0FjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc3luY0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQWN0aW9uXzEgPSByZXF1aXJlX0FjdGlvbigpOwogICAgdmFyIGludGVydmFsUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBBc3luY0FjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXN5bmNBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY0FjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHZhciBpZCA9IHRoaXMuaWQ7CiAgICAgICAgdmFyIHNjaGVkdWxlciA9IHRoaXMuc2NoZWR1bGVyOwogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IHRydWU7CiAgICAgICAgdGhpcy5kZWxheSA9IGRlbGF5OwogICAgICAgIHRoaXMuaWQgPSAoX2EgPSB0aGlzLmlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlcXVlc3RBc3luY0lkKHNjaGVkdWxlciwgdGhpcy5pZCwgZGVsYXkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBfaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLnNldEludGVydmFsKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdGhpcyksIGRlbGF5KTsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKF9zY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsICYmIHRoaXMuZGVsYXkgPT09IGRlbGF5ICYmIHRoaXMucGVuZGluZyA9PT0gZmFsc2UpIHsKICAgICAgICAgIHJldHVybiBpZDsKICAgICAgICB9CiAgICAgICAgaWYgKGlkICE9IG51bGwpIHsKICAgICAgICAgIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLmNsZWFySW50ZXJ2YWwoaWQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yID0gdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgcmV0dXJuIGVycm9yOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nID09PSBmYWxzZSAmJiB0aGlzLmlkICE9IG51bGwpIHsKICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHRoaXMuc2NoZWR1bGVyLCB0aGlzLmlkLCBudWxsKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgX2RlbGF5KSB7CiAgICAgICAgdmFyIGVycm9yZWQgPSBmYWxzZTsKICAgICAgICB2YXIgZXJyb3JWYWx1ZTsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy53b3JrKHN0YXRlKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBlcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgIGVycm9yVmFsdWUgPSBlID8gZSA6IG5ldyBFcnJvcigiU2NoZWR1bGVkIGFjdGlvbiB0aHJldyBmYWxzeSBlcnJvciIpOwogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3JlZCkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmV0dXJuIGVycm9yVmFsdWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdmFyIF9hID0gdGhpcywgaWQgPSBfYS5pZCwgc2NoZWR1bGVyID0gX2Euc2NoZWR1bGVyOwogICAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICAgIHRoaXMud29yayA9IHRoaXMuc3RhdGUgPSB0aGlzLnNjaGVkdWxlciA9IG51bGw7CiAgICAgICAgICB0aGlzLnBlbmRpbmcgPSBmYWxzZTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShhY3Rpb25zLCB0aGlzKTsKICAgICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHNjaGVkdWxlciwgaWQsIG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5kZWxheSA9IG51bGw7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNBY3Rpb24yOwogICAgfShBY3Rpb25fMS5BY3Rpb24pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSBBc3luY0FjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvSW1tZWRpYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSBleHBvcnRzMi5JbW1lZGlhdGUgPSB2b2lkIDA7CiAgICB2YXIgbmV4dEhhbmRsZSA9IDE7CiAgICB2YXIgcmVzb2x2ZWQ7CiAgICB2YXIgYWN0aXZlSGFuZGxlcyA9IHt9OwogICAgZnVuY3Rpb24gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgewogICAgICBpZiAoaGFuZGxlIGluIGFjdGl2ZUhhbmRsZXMpIHsKICAgICAgICBkZWxldGUgYWN0aXZlSGFuZGxlc1toYW5kbGVdOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLkltbWVkaWF0ZSA9IHsKICAgICAgc2V0SW1tZWRpYXRlOiBmdW5jdGlvbihjYikgewogICAgICAgIHZhciBoYW5kbGUgPSBuZXh0SGFuZGxlKys7CiAgICAgICAgYWN0aXZlSGFuZGxlc1toYW5kbGVdID0gdHJ1ZTsKICAgICAgICBpZiAoIXJlc29sdmVkKSB7CiAgICAgICAgICByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIH0KICAgICAgICByZXNvbHZlZC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpICYmIGNiKCk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGhhbmRsZTsKICAgICAgfSwKICAgICAgY2xlYXJJbW1lZGlhdGU6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGVzdFRvb2xzID0gewogICAgICBwZW5kaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoYWN0aXZlSGFuZGxlcykubGVuZ3RoOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW1tZWRpYXRlUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMKdmFyIHJlcXVpcmVfQXNhcEFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgaW1tZWRpYXRlUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIoKTsKICAgIHZhciBBc2FwQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXNhcEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT09IG51bGwgJiYgZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgc2NoZWR1bGVyLmFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLl9zY2hlZHVsZWQgfHwgKHNjaGVkdWxlci5fc2NoZWR1bGVkID0gaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5zZXRJbW1lZGlhdGUoc2NoZWR1bGVyLmZsdXNoLmJpbmQoc2NoZWR1bGVyLCB2b2lkIDApKSk7CiAgICAgIH07CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsID8gZGVsYXkgPiAwIDogdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGlmIChpZCAhPSBudWxsICYmICgoX2EgPSBhY3Rpb25zW2FjdGlvbnMubGVuZ3RoIC0gMV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZCkgIT09IGlkKSB7CiAgICAgICAgICBpbW1lZGlhdGVQcm92aWRlcl8xLmltbWVkaWF0ZVByb3ZpZGVyLmNsZWFySW1tZWRpYXRlKGlkKTsKICAgICAgICAgIGlmIChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9PT0gaWQpIHsKICAgICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gQXNhcEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgU2NoZWR1bGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3Rvciwgbm93KSB7CiAgICAgICAgaWYgKG5vdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBub3cgPSBTY2hlZHVsZXIyLm5vdzsKICAgICAgICB9CiAgICAgICAgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yID0gc2NoZWR1bGVyQWN0aW9uQ3RvcjsKICAgICAgICB0aGlzLm5vdyA9IG5vdzsKICAgICAgfQogICAgICBTY2hlZHVsZXIyLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHdvcmssIGRlbGF5LCBzdGF0ZSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yKHRoaXMsIHdvcmspLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgIH07CiAgICAgIFNjaGVkdWxlcjIubm93ID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLm5vdzsKICAgICAgcmV0dXJuIFNjaGVkdWxlcjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TY2hlZHVsZXIgPSBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY1NjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc3luY1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc2FwU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcFNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFzYXBTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gQXNhcFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXNhcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXNhcEFjdGlvbl8xID0gcmVxdWlyZV9Bc2FwQWN0aW9uKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc2FwU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gbmV3IEFzYXBTY2hlZHVsZXJfMS5Bc2FwU2NoZWR1bGVyKEFzYXBBY3Rpb25fMS5Bc2FwQWN0aW9uKTsKICAgIGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXN5bmMuanMKdmFyIHJlcXVpcmVfYXN5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVBY3Rpb24uanMKdmFyIHJlcXVpcmVfUXVldWVBY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgUXVldWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7CiAgICAgICAgdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIHJldHVybiBkZWxheSA+IDAgfHwgdGhpcy5jbG9zZWQgPyBfc3VwZXIucHJvdG90eXBlLmV4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpIDogdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiBkZWxheSA+IDAgfHwgZGVsYXkgPT0gbnVsbCAmJiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5mbHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfTsKICAgICAgcmV0dXJuIFF1ZXVlQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IFF1ZXVlQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgUXVldWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICByZXR1cm4gUXVldWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gUXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9xdWV1ZS5qcwp2YXIgcmVxdWlyZV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQW5pbWF0aW9uRnJhbWVBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQW5pbWF0aW9uRnJhbWVBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbmltYXRpb25GcmFtZUFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZXIuZmx1c2godm9pZCAwKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBBbmltYXRpb25GcmFtZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc3luY1NjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc3luY1NjaGVkdWxlcigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMigpIHsKICAgICAgICByZXR1cm4gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1ZpcnR1YWxUaW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9WaXJ0dWFsVGltZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBWaXJ0dWFsVGltZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbFRpbWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsVGltZVNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3RvciwgbWF4RnJhbWVzKSB7CiAgICAgICAgaWYgKHNjaGVkdWxlckFjdGlvbkN0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc2NoZWR1bGVyQWN0aW9uQ3RvciA9IFZpcnR1YWxBY3Rpb247CiAgICAgICAgfQogICAgICAgIGlmIChtYXhGcmFtZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgbWF4RnJhbWVzID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlckFjdGlvbkN0b3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmZyYW1lOwogICAgICAgIH0pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMubWF4RnJhbWVzID0gbWF4RnJhbWVzOwogICAgICAgIF90aGlzLmZyYW1lID0gMDsKICAgICAgICBfdGhpcy5pbmRleCA9IC0xOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBWaXJ0dWFsVGltZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgYWN0aW9ucyA9IF9hLmFjdGlvbnMsIG1heEZyYW1lcyA9IF9hLm1heEZyYW1lczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdmFyIGFjdGlvbjsKICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5kZWxheSA8PSBtYXhGcmFtZXMpIHsKICAgICAgICAgIGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICAgIHRoaXMuZnJhbWUgPSBhY3Rpb24uZGVsYXk7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKGFjdGlvbiA9IGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLmZyYW1lVGltZUZhY3RvciA9IDEwOwogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB2YXIgVmlydHVhbEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFZpcnR1YWxBY3Rpb24yKHNjaGVkdWxlciwgd29yaywgaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPT09IHZvaWQgMCkgewogICAgICAgICAgaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggKz0gMTsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5pbmRleCA9IGluZGV4OwogICAgICAgIF90aGlzLmFjdGl2ZSA9IHRydWU7CiAgICAgICAgX3RoaXMuaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggPSBpbmRleDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWxheSkpIHsKICAgICAgICAgIGlmICghdGhpcy5pZCkgewogICAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgdmFyIGFjdGlvbiA9IG5ldyBWaXJ0dWFsQWN0aW9uMih0aGlzLnNjaGVkdWxlciwgdGhpcy53b3JrKTsKICAgICAgICAgIHRoaXMuYWRkKGFjdGlvbik7CiAgICAgICAgICByZXR1cm4gYWN0aW9uLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgfQogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBzY2hlZHVsZXIuZnJhbWUgKyBkZWxheTsKICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICBhY3Rpb25zLnNvcnQoVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMpOwogICAgICAgIHJldHVybiAxOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5fZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmICh0aGlzLmFjdGl2ZSA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMgPSBmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgaWYgKGEuZGVsYXkgPT09IGIuZGVsYXkpIHsKICAgICAgICAgIGlmIChhLmluZGV4ID09PSBiLmluZGV4KSB7CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgfSBlbHNlIGlmIChhLmluZGV4ID4gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGEuZGVsYXkgPiBiLmRlbGF5KSB7CiAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFZpcnR1YWxBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxBY3Rpb24gPSBWaXJ0dWFsQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuRU1QVFkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBleHBvcnRzMi5FTVBUWSA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICB9KTsKICAgIGZ1bmN0aW9uIGVtcHR5KHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVyID8gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSA6IGV4cG9ydHMyLkVNUFRZOwogICAgfQogICAgZXhwb3J0czIuZW1wdHkgPSBlbXB0eTsKICAgIGZ1bmN0aW9uIGVtcHR5U2NoZWR1bGVkKHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfaXNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzCnZhciByZXF1aXJlX2FyZ3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBleHBvcnRzMi5wb3BTY2hlZHVsZXIgPSBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgZnVuY3Rpb24gbGFzdChhcnIpIHsKICAgICAgcmV0dXJuIGFyclthcnIubGVuZ3RoIC0gMV07CiAgICB9CiAgICBmdW5jdGlvbiBwb3BSZXN1bHRTZWxlY3RvcihhcmdzKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihsYXN0KGFyZ3MpKSA/IGFyZ3MucG9wKCkgOiB2b2lkIDA7CiAgICB9CiAgICBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHBvcFJlc3VsdFNlbGVjdG9yOwogICAgZnVuY3Rpb24gcG9wU2NoZWR1bGVyKGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIobGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wU2NoZWR1bGVyID0gcG9wU2NoZWR1bGVyOwogICAgZnVuY3Rpb24gcG9wTnVtYmVyKGFyZ3MsIGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gdHlwZW9mIGxhc3QoYXJncykgPT09ICJudW1iZXIiID8gYXJncy5wb3AoKSA6IGRlZmF1bHRWYWx1ZTsKICAgIH0KICAgIGV4cG9ydHMyLnBvcE51bWJlciA9IHBvcE51bWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXJyYXlMaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0FycmF5TGlrZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4geCAmJiB0eXBlb2YgeC5sZW5ndGggPT09ICJudW1iZXIiICYmIHR5cGVvZiB4ICE9PSAiZnVuY3Rpb24iOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1Byb21pc2UuanMKdmFyIHJlcXVpcmVfaXNQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5wdXRbb2JzZXJ2YWJsZV8xLm9ic2VydmFibGVdKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSW50ZXJvcE9ic2VydmFibGUgPSBpc0ludGVyb3BPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FzeW5jSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXN5bmNJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZShvYmopIHsKICAgICAgcmV0dXJuIFN5bWJvbC5hc3luY0l0ZXJhdG9yICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ialtTeW1ib2wuYXN5bmNJdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gaXNBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dVbm9ic2VydmFibGVFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL2l0ZXJhdG9yLmpzCnZhciByZXF1aXJlX2l0ZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9pdGVyYXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXRlcmF0b3IgPSBleHBvcnRzMi5nZXRTeW1ib2xJdGVyYXRvciA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGdldFN5bWJvbEl0ZXJhdG9yKCkgewogICAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gImZ1bmN0aW9uIiB8fCAhU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgcmV0dXJuICJAQGl0ZXJhdG9yIjsKICAgICAgfQogICAgICByZXR1cm4gU3ltYm9sLml0ZXJhdG9yOwogICAgfQogICAgZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSBnZXRTeW1ib2xJdGVyYXRvcjsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3IoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc0l0ZXJhYmxlKGlucHV0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbnB1dCA9PT0gbnVsbCB8fCBpbnB1dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNJdGVyYWJsZSA9IGlzSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb20uanMKdmFyIHJlcXVpcmVfaW5uZXJGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW5uZXJGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fYXdhaXRlciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXRlciB8fCBmdW5jdGlvbih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHsKICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsKICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBzdGVwKGdlbmVyYXRvclsidGhyb3ciXSh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7CiAgICAgICAgICByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsKICAgICAgICB9CiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpOwogICAgICB9KTsKICAgIH07CiAgICB2YXIgX19nZW5lcmF0b3IgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2dlbmVyYXRvciB8fCBmdW5jdGlvbih0aGlzQXJnLCBib2R5KSB7CiAgICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOwogICAgICAgIHJldHVybiB0WzFdOwogICAgICB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnOwogICAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgInRocm93IjogdmVyYigxKSwgInJldHVybiI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0pLCBnOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIHN0ZXAoW24sIHZdKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHsKICAgICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpOwogICAgICAgIHdoaWxlIChfKSB0cnkgewogICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgc3dpdGNoIChvcFswXSkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9OwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHkgPSBvcFsxXTsKICAgICAgICAgICAgICBvcCA9IFswXTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIG9wID0gXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7CiAgICAgICAgICAgICAgICBfID0gMDsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDMgJiYgKCF0IHx8IG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gb3BbMV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsxXTsKICAgICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMl07CiAgICAgICAgICAgICAgICBfLm9wcy5wdXNoKG9wKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodFsyXSkgXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgb3AgPSBbNiwgZV07CiAgICAgICAgICB5ID0gMDsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgZiA9IHQgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsKICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgICB9CiAgICB9OwogICAgdmFyIF9fYXN5bmNWYWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2FzeW5jVmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICAgIHZhciBtID0gb1tTeW1ib2wuYXN5bmNJdGVyYXRvcl0sIGk7CiAgICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogKG8gPSB0eXBlb2YgX192YWx1ZXMgPT09ICJmdW5jdGlvbiIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoIm5leHQiKSwgdmVyYigidGhyb3ciKSwgdmVyYigicmV0dXJuIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0sIGkpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpW25dID0gb1tuXSAmJiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgIHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCBkLCB2KSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odjIpIHsKICAgICAgICAgIHJlc29sdmUoeyB2YWx1ZTogdjIsIGRvbmU6IGQgfSk7CiAgICAgICAgfSwgcmVqZWN0KTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbVJlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZXhwb3J0czIuZnJvbUl0ZXJhYmxlID0gZXhwb3J0czIuZnJvbVByb21pc2UgPSBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZXhwb3J0czIuaW5uZXJGcm9tID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXlMaWtlXzEgPSByZXF1aXJlX2lzQXJyYXlMaWtlKCk7CiAgICB2YXIgaXNQcm9taXNlXzEgPSByZXF1aXJlX2lzUHJvbWlzZSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBpbm5lckZyb20oaW5wdXQpIHsKICAgICAgaWYgKGlucHV0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpIHsKICAgICAgICByZXR1cm4gaW5wdXQ7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUludGVyb3BPYnNlcnZhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUFycmF5TGlrZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1Byb21pc2VfMS5pc1Byb21pc2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBc3luY0l0ZXJhYmxlXzEuaXNBc3luY0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Bc3luY0l0ZXJhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSXRlcmFibGVfMS5pc0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21SZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgfQogICAgICB0aHJvdyB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuaW5uZXJGcm9tID0gaW5uZXJGcm9tOwogICAgZnVuY3Rpb24gZnJvbUludGVyb3BPYnNlcnZhYmxlKG9iaikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb2JzID0gb2JqW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSgpOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnMuc3Vic2NyaWJlKSkgewogICAgICAgICAgcmV0dXJuIG9icy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZnJvbUludGVyb3BPYnNlcnZhYmxlOwogICAgZnVuY3Rpb24gZnJvbUFycmF5TGlrZShhcnJheSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aCAmJiAhc3Vic2NyaWJlci5jbG9zZWQ7IGkrKykgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFycmF5W2ldKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21BcnJheUxpa2UgPSBmcm9tQXJyYXlMaWtlOwogICAgZnVuY3Rpb24gZnJvbVByb21pc2UocHJvbWlzZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KS50aGVuKG51bGwsIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZnJvbVByb21pc2U7CiAgICBmdW5jdGlvbiBmcm9tSXRlcmFibGUoaXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGZvciAodmFyIGl0ZXJhYmxlXzEgPSBfX3ZhbHVlcyhpdGVyYWJsZSksIGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpOyAhaXRlcmFibGVfMV8xLmRvbmU7IGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpKSB7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGl0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmIChpdGVyYWJsZV8xXzEgJiYgIWl0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGl0ZXJhYmxlXzEucmV0dXJuKSkgX2EuY2FsbChpdGVyYWJsZV8xKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGZyb21JdGVyYWJsZTsKICAgIGZ1bmN0aW9uIGZyb21Bc3luY0l0ZXJhYmxlKGFzeW5jSXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikuY2F0Y2goZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZnJvbUFzeW5jSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IocmVhZGFibGVTdHJlYW0pKTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBmcm9tUmVhZGFibGVTdHJlYW1MaWtlOwogICAgZnVuY3Rpb24gcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikgewogICAgICB2YXIgYXN5bmNJdGVyYWJsZV8xLCBhc3luY0l0ZXJhYmxlXzFfMTsKICAgICAgdmFyIGVfMiwgX2E7CiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciB2YWx1ZSwgZV8yXzE7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9iKSB7CiAgICAgICAgICBzd2l0Y2ggKF9iLmxhYmVsKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfYi50cnlzLnB1c2goWzAsIDUsIDYsIDExXSk7CiAgICAgICAgICAgICAgYXN5bmNJdGVyYWJsZV8xID0gX19hc3luY1ZhbHVlcyhhc3luY0l0ZXJhYmxlKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gWzQsIGFzeW5jSXRlcmFibGVfMS5uZXh0KCldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgPSBfYi5zZW50KCksICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lKSkgcmV0dXJuIFszLCA0XTsKICAgICAgICAgICAgICB2YWx1ZSA9IGFzeW5jSXRlcmFibGVfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfYi5sYWJlbCA9IDM7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBlXzJfMSA9IF9iLnNlbnQoKTsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFs2LCAsIDksIDEwXSk7CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgJiYgIWFzeW5jSXRlcmFibGVfMV8xLmRvbmUgJiYgKF9hID0gYXN5bmNJdGVyYWJsZV8xLnJldHVybikpKSByZXR1cm4gWzMsIDhdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgX2EuY2FsbChhc3luY0l0ZXJhYmxlXzEpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDg7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDEwXTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbN107CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9leGVjdXRlU2NoZWR1bGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4ZWN1dGVTY2hlZHVsZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGV4ZWN1dGVTY2hlZHVsZShwYXJlbnRTdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgd29yaywgZGVsYXksIHJlcGVhdDIpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHJlcGVhdDIgPT09IHZvaWQgMCkgewogICAgICAgIHJlcGVhdDIgPSBmYWxzZTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVTdWJzY3JpcHRpb24gPSBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgd29yaygpOwogICAgICAgIGlmIChyZXBlYXQyKSB7CiAgICAgICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHRoaXMuc2NoZWR1bGUobnVsbCwgZGVsYXkpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgIH0KICAgICAgfSwgZGVsYXkpOwogICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHNjaGVkdWxlU3Vic2NyaXB0aW9uKTsKICAgICAgaWYgKCFyZXBlYXQyKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlU3Vic2NyaXB0aW9uOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leGVjdXRlU2NoZWR1bGUgPSBleGVjdXRlU2NoZWR1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMKdmFyIHJlcXVpcmVfb2JzZXJ2ZU9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVPbiA9IHZvaWQgMDsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU9uKHNjaGVkdWxlciwgZGVsYXkpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSBvYnNlcnZlT247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcwp2YXIgcmVxdWlyZV9zdWJzY3JpYmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3Vic2NyaWJlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN1YnNjcmliZU9uID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3Vic2NyaWJlT24oc2NoZWR1bGVyLCBkZWxheSkgewogICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgIGRlbGF5ID0gMDsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSwgZGVsYXkpKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zdWJzY3JpYmVPbiA9IHN1YnNjcmliZU9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG9ic2VydmVPbl8xID0gcmVxdWlyZV9vYnNlcnZlT24oKTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCkucGlwZShzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uKHNjaGVkdWxlciksIG9ic2VydmVPbl8xLm9ic2VydmVPbihzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlT2JzZXJ2YWJsZSA9IHNjaGVkdWxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZVByb21pc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZVByb21pc2UgPSBzY2hlZHVsZVByb21pc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGkgPSAwOwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaSA9PT0gaW5wdXQubGVuZ3RoKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChpbnB1dFtpKytdKTsKICAgICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSBzY2hlZHVsZUFycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUl0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpdGVyYXRvcjsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGl0ZXJhdG9yID0gaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgX2E7CiAgICAgICAgICAgIHZhciB2YWx1ZTsKICAgICAgICAgICAgdmFyIGRvbmU7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgX2EgPSBpdGVyYXRvci5uZXh0KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkb25lKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpdGVyYXRvciA9PT0gbnVsbCB8fCBpdGVyYXRvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogaXRlcmF0b3IucmV0dXJuKSAmJiBpdGVyYXRvci5yZXR1cm4oKTsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlSXRlcmFibGUgPSBzY2hlZHVsZUl0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUFzeW5jSXRlcmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKCFpbnB1dCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSXRlcmFibGUgY2Fubm90IGJlIG51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBpdGVyYXRvciA9IGlucHV0W1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOwogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGl0ZXJhdG9yLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAgICAgICAgICAgIGlmIChyZXN1bHQuZG9uZSkgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQocmVzdWx0LnZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwgMCwgdHJ1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gc2NoZWR1bGVBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xLnNjaGVkdWxlQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IoaW5wdXQpLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVkID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUoKTsKICAgIHZhciBzY2hlZHVsZVByb21pc2VfMSA9IHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlKCk7CiAgICB2YXIgc2NoZWR1bGVBcnJheV8xID0gcmVxdWlyZV9zY2hlZHVsZUFycmF5KCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNJdGVyYWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICBpZiAoaW5wdXQgIT0gbnVsbCkgewogICAgICAgIGlmIChpc0ludGVyb3BPYnNlcnZhYmxlXzEuaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZU9ic2VydmFibGVfMS5zY2hlZHVsZU9ic2VydmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlQXJyYXlfMS5zY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUHJvbWlzZV8xLnNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUl0ZXJhYmxlXzEuc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEuaXNSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2VfMS5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHNjaGVkdWxlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzCnZhciByZXF1aXJlX2Zyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlZF8xID0gcmVxdWlyZV9zY2hlZHVsZWQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBmcm9tKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlciA/IHNjaGVkdWxlZF8xLnNjaGVkdWxlZChpbnB1dCwgc2NoZWR1bGVyKSA6IGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tID0gZnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcwp2YXIgcmVxdWlyZV9vZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vZiA9IHZvaWQgMDsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG9mKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKGFyZ3MsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5vZiA9IG9mOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiB0aHJvd0Vycm9yMihlcnJvck9yRXJyb3JGYWN0b3J5LCBzY2hlZHVsZXIpIHsKICAgICAgdmFyIGVycm9yRmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGVycm9yT3JFcnJvckZhY3RvcnkpID8gZXJyb3JPckVycm9yRmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlcnJvck9yRXJyb3JGYWN0b3J5OwogICAgICB9OwogICAgICB2YXIgaW5pdCA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgIH07CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoaW5pdCwgMCwgc3Vic2NyaWJlcik7CiAgICAgIH0gOiBpbml0KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB0aHJvd0Vycm9yMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBOb3RpZmljYXRpb25LaW5kOwogICAgKGZ1bmN0aW9uKE5vdGlmaWNhdGlvbktpbmQyKSB7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJORVhUIl0gPSAiTiI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJFUlJPUiJdID0gIkUiOwogICAgICBOb3RpZmljYXRpb25LaW5kMlsiQ09NUExFVEUiXSA9ICJDIjsKICAgIH0pKE5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kIHx8IChleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0ge30pKTsKICAgIHZhciBOb3RpZmljYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gTm90aWZpY2F0aW9uMihraW5kLCB2YWx1ZSwgZXJyb3IpIHsKICAgICAgICB0aGlzLmtpbmQgPSBraW5kOwogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGtpbmQgPT09ICJOIjsKICAgICAgfQogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS5vYnNlcnZlID0gZnVuY3Rpb24ob2JzZXJ2ZXIpIHsKICAgICAgICByZXR1cm4gb2JzZXJ2ZU5vdGlmaWNhdGlvbih0aGlzLCBvYnNlcnZlcik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmRvID0gZnVuY3Rpb24obmV4dEhhbmRsZXIsIGVycm9ySGFuZGxlciwgY29tcGxldGVIYW5kbGVyKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgcmV0dXJuIGtpbmQgPT09ICJOIiA/IG5leHRIYW5kbGVyID09PSBudWxsIHx8IG5leHRIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBuZXh0SGFuZGxlcih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyBlcnJvckhhbmRsZXIgPT09IG51bGwgfHwgZXJyb3JIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlcnJvckhhbmRsZXIoZXJyb3IpIDogY29tcGxldGVIYW5kbGVyID09PSBudWxsIHx8IGNvbXBsZXRlSGFuZGxlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY29tcGxldGVIYW5kbGVyKCk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmFjY2VwdCA9IGZ1bmN0aW9uKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKChfYSA9IG5leHRPck9ic2VydmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubmV4dCkgPyB0aGlzLm9ic2VydmUobmV4dE9yT2JzZXJ2ZXIpIDogdGhpcy5kbyhuZXh0T3JPYnNlcnZlciwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUudG9PYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgdmFyIHJlc3VsdCA9IGtpbmQgPT09ICJOIiA/IG9mXzEub2YodmFsdWUpIDoga2luZCA9PT0gIkUiID8gdGhyb3dFcnJvcl8xLnRocm93RXJyb3IoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZXJyb3I7CiAgICAgICAgfSkgOiBraW5kID09PSAiQyIgPyBlbXB0eV8xLkVNUFRZIDogMDsKICAgICAgICBpZiAoIXJlc3VsdCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCBub3RpZmljYXRpb24ga2luZCAiICsga2luZCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlTmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJOIiwgdmFsdWUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJFIiwgdm9pZCAwLCBlcnIpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb247CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uMigiQyIpOwogICAgICByZXR1cm4gTm90aWZpY2F0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IE5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG9ic2VydmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBvYnNlcnZlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIF9kID0gbm90aWZpY2F0aW9uLCBraW5kID0gX2Qua2luZCwgdmFsdWUgPSBfZC52YWx1ZSwgZXJyb3IgPSBfZC5lcnJvcjsKICAgICAgaWYgKHR5cGVvZiBraW5kICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpOwogICAgICB9CiAgICAgIGtpbmQgPT09ICJOIiA/IChfYSA9IG9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG9ic2VydmVyLCB2YWx1ZSkgOiBraW5kID09PSAiRSIgPyAoX2IgPSBvYnNlcnZlci5lcnJvcikgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwob2JzZXJ2ZXIsIGVycm9yKSA6IChfYyA9IG9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FsbChvYnNlcnZlcik7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlTm90aWZpY2F0aW9uID0gb2JzZXJ2ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfaXNPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc09ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc09ic2VydmFibGUob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiAob2JqIGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUgfHwgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLmxpZnQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iai5zdWJzY3JpYmUpKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IGlzT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzCnZhciByZXF1aXJlX0VtcHR5RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuRW1wdHlFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gRW1wdHlFcnJvckltcGwoKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJFbXB0eUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAibm8gZWxlbWVudHMgaW4gc2VxdWVuY2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfbGFzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9sYXN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgZnVuY3Rpb24gbGFzdFZhbHVlRnJvbShzb3VyY2UsIGNvbmZpZykgewogICAgICB2YXIgaGFzQ29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gIm9iamVjdCI7CiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgX2hhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIF92YWx1ZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHsKICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIF92YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICBfaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChfaGFzVmFsdWUpIHsKICAgICAgICAgICAgICByZXNvbHZlKF92YWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ29uZmlnKSB7CiAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcuZGVmYXVsdFZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZWplY3QobmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubGFzdFZhbHVlRnJvbSA9IGxhc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzCnZhciByZXF1aXJlX2ZpcnN0VmFsdWVGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpcnN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gZmlyc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IuanMKdmFyIHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJhcmd1bWVudCBvdXQgb2YgcmFuZ2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcwp2YXIgcmVxdWlyZV9Ob3RGb3VuZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE5vdEZvdW5kRXJyb3JJbXBsKG1lc3NhZ2UpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk5vdEZvdW5kRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzCnZhciByZXF1aXJlX1NlcXVlbmNlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuU2VxdWVuY2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gU2VxdWVuY2VFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiU2VxdWVuY2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRGF0ZS5qcwp2YXIgcmVxdWlyZV9pc0RhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0RhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzVmFsaWREYXRlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gaXNWYWxpZERhdGUodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUpOwogICAgfQogICAgZXhwb3J0czIuaXNWYWxpZERhdGUgPSBpc1ZhbGlkRGF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXQuanMKdmFyIHJlcXVpcmVfdGltZW91dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVGltZW91dEVycm9ySW1wbChpbmZvKSB7CiAgICAgICAgaWYgKGluZm8gPT09IHZvaWQgMCkgewogICAgICAgICAgaW5mbyA9IG51bGw7CiAgICAgICAgfQogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAiVGltZW91dCBoYXMgb2NjdXJyZWQiOwogICAgICAgIHRoaXMubmFtZSA9ICJUaW1lb3V0RXJyb3IiOwogICAgICAgIHRoaXMuaW5mbyA9IGluZm87CiAgICAgIH07CiAgICB9KTsKICAgIGZ1bmN0aW9uIHRpbWVvdXQoY29uZmlnLCBzY2hlZHVsZXJBcmcpIHsKICAgICAgdmFyIF9hID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoY29uZmlnKSA/IHsgZmlyc3Q6IGNvbmZpZyB9IDogdHlwZW9mIGNvbmZpZyA9PT0gIm51bWJlciIgPyB7IGVhY2g6IGNvbmZpZyB9IDogY29uZmlnLCBmaXJzdCA9IF9hLmZpcnN0LCBlYWNoID0gX2EuZWFjaCwgX2IgPSBfYS53aXRoLCBfd2l0aCA9IF9iID09PSB2b2lkIDAgPyB0aW1lb3V0RXJyb3JGYWN0b3J5IDogX2IsIF9jID0gX2Euc2NoZWR1bGVyLCBzY2hlZHVsZXIgPSBfYyA9PT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnICE9PSBudWxsICYmIHNjaGVkdWxlckFyZyAhPT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlciA6IF9jLCBfZCA9IF9hLm1ldGEsIG1ldGEgPSBfZCA9PT0gdm9pZCAwID8gbnVsbCA6IF9kOwogICAgICBpZiAoZmlyc3QgPT0gbnVsbCAmJiBlYWNoID09IG51bGwpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJObyB0aW1lb3V0IHByb3ZpZGVkLiIpOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIHRpbWVyU3Vic2NyaXB0aW9uOwogICAgICAgIHZhciBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICB2YXIgc3RhcnRUaW1lciA9IGZ1bmN0aW9uKGRlbGF5KSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKF93aXRoKHsKICAgICAgICAgICAgICAgIG1ldGEsCiAgICAgICAgICAgICAgICBsYXN0VmFsdWUsCiAgICAgICAgICAgICAgICBzZWVuCiAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBkZWxheSk7CiAgICAgICAgfTsKICAgICAgICBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCB0aW1lclN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGltZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNlZW4rKzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChsYXN0VmFsdWUgPSB2YWx1ZSk7CiAgICAgICAgICBlYWNoID4gMCAmJiBzdGFydFRpbWVyKGVhY2gpOwogICAgICAgIH0sIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghKHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi5jbG9zZWQpKSB7CiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgICAgIXNlZW4gJiYgc3RhcnRUaW1lcihmaXJzdCAhPSBudWxsID8gdHlwZW9mIGZpcnN0ID09PSAibnVtYmVyIiA/IGZpcnN0IDogK2ZpcnN0IC0gc2NoZWR1bGVyLm5vdygpIDogZWFjaCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dCA9IHRpbWVvdXQ7CiAgICBmdW5jdGlvbiB0aW1lb3V0RXJyb3JGYWN0b3J5KGluZm8pIHsKICAgICAgdGhyb3cgbmV3IGV4cG9ydHMyLlRpbWVvdXRFcnJvcihpbmZvKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcwp2YXIgcmVxdWlyZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hcDIocHJvamVjdCwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKykpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXAgPSBtYXAyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcE9uZU9yTWFueUFyZ3MgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gY2FsbE9yQXBwbHkoZm4sIGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzQXJyYXkoYXJncykgPyBmbi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpIDogZm4oYXJncyk7CiAgICB9CiAgICBmdW5jdGlvbiBtYXBPbmVPck1hbnlBcmdzKGZuKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYXJncykgewogICAgICAgIHJldHVybiBjYWxsT3JBcHBseShmbiwgYXJncyk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IG1hcE9uZU9yTWFueUFyZ3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kQ2FsbGJhY2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoZmFsc2UsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSBiaW5kQ2FsbGJhY2s7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kTm9kZUNhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKHRydWUsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gYmluZE5vZGVDYWxsYmFjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzQXJnQXJyYXlPck9iamVjdC5qcwp2YXIgcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlT2JqZWN0LmpzCnZhciByZXF1aXJlX2NyZWF0ZU9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZU9iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgewogICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoZnVuY3Rpb24ocmVzdWx0LCBrZXksIGkpIHsKICAgICAgICByZXR1cm4gcmVzdWx0W2tleV0gPSB2YWx1ZXNbaV0sIHJlc3VsdDsKICAgICAgfSwge30pOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gY3JlYXRlT2JqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RJbml0ID0gZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICB2YXIgX2EgPSBhcmdzQXJnQXJyYXlPck9iamVjdF8xLmFyZ3NBcmdBcnJheU9yT2JqZWN0KGFyZ3MpLCBvYnNlcnZhYmxlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICBpZiAob2JzZXJ2YWJsZXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKFtdLCBzY2hlZHVsZXIpOwogICAgICB9CiAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwga2V5cyA/IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIHJldHVybiBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKTsKICAgICAgfSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpKTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBjb21iaW5lTGF0ZXN0OwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwgdmFsdWVUcmFuc2Zvcm0pIHsKICAgICAgaWYgKHZhbHVlVHJhbnNmb3JtID09PSB2b2lkIDApIHsKICAgICAgICB2YWx1ZVRyYW5zZm9ybSA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgbGVuZ3RoID0gb2JzZXJ2YWJsZXMubGVuZ3RoOwogICAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgICAgdmFyIGFjdGl2ZSA9IGxlbmd0aDsKICAgICAgICAgIHZhciByZW1haW5pbmdGaXJzdFZhbHVlcyA9IGxlbmd0aDsKICAgICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgICAgbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzb3VyY2UgPSBmcm9tXzEuZnJvbShvYnNlcnZhYmxlc1tpMl0sIHNjaGVkdWxlcik7CiAgICAgICAgICAgICAgdmFyIGhhc0ZpcnN0VmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICAgICAgaWYgKCFoYXNGaXJzdFZhbHVlKSB7CiAgICAgICAgICAgICAgICAgIGhhc0ZpcnN0VmFsdWUgPSB0cnVlOwogICAgICAgICAgICAgICAgICByZW1haW5pbmdGaXJzdFZhbHVlcy0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdGaXJzdFZhbHVlcykgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWVUcmFuc2Zvcm0odmFsdWVzLnNsaWNlKCkpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghLS1hY3RpdmUpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgICAgICB9OwogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgICAgfQogICAgICAgIH0sIHN1YnNjcmliZXIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBjb21iaW5lTGF0ZXN0SW5pdDsKICAgIGZ1bmN0aW9uIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBleGVjdXRlLCBzdWJzY3JpcHRpb24pIHsKICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgZXhlY3V0ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXhlY3V0ZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUludGVybmFscy5qcwp2YXIgcmVxdWlyZV9tZXJnZUludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXAuanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IoYSwgYiwgaSwgaWkpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpKTsKICAgICAgICB9LCBjb25jdXJyZW50KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIHByb2plY3QsIGNvbmN1cnJlbnQpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwID0gbWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIG1lcmdlQWxsKGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChpZGVudGl0eV8xLmlkZW50aXR5LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gbWVyZ2VBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMKdmFyIHJlcXVpcmVfY29uY2F0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsKCkoZnJvbV8xLmZyb20oYXJncywgYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZGVmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmVyID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlZmVyKG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvYnNlcnZhYmxlRmFjdG9yeSgpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmZXIgPSBkZWZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25uZWN0YWJsZS5qcwp2YXIgcmVxdWlyZV9jb25uZWN0YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcwp2YXIgcmVxdWlyZV9mb3JrSm9pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgZnVuY3Rpb24gZm9ya0pvaW4oKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIF9hID0gYXJnc0FyZ0FycmF5T3JPYmplY3RfMS5hcmdzQXJnQXJyYXlPck9iamVjdChhcmdzKSwgc291cmNlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuZ3RoID0gc291cmNlcy5sZW5ndGg7CiAgICAgICAgaWYgKCFsZW5ndGgpIHsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgIHZhciByZW1haW5pbmdDb21wbGV0aW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgcmVtYWluaW5nRW1pc3Npb25zID0gbGVuZ3RoOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgICAgICByZW1haW5pbmdFbWlzc2lvbnMtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXNbc291cmNlSW5kZXgyXSA9IHZhbHVlOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdDb21wbGV0aW9ucy0tOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdDb21wbGV0aW9ucyB8fCAhaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0VtaXNzaW9ucykgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGtleXMgPyBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKSA6IHZhbHVlcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyBzb3VyY2VJbmRleCA8IGxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmZvcmtKb2luID0gZm9ya0pvaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcyA9IFsiYWRkTGlzdGVuZXIiLCAicmVtb3ZlTGlzdGVuZXIiXTsKICAgIHZhciBldmVudFRhcmdldE1ldGhvZHMgPSBbImFkZEV2ZW50TGlzdGVuZXIiLCAicmVtb3ZlRXZlbnRMaXN0ZW5lciJdOwogICAgdmFyIGpxdWVyeU1ldGhvZHMgPSBbIm9uIiwgIm9mZiJdOwogICAgZnVuY3Rpb24gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zLCByZXN1bHRTZWxlY3RvcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob3B0aW9ucykpIHsKICAgICAgICByZXN1bHRTZWxlY3RvciA9IG9wdGlvbnM7CiAgICAgICAgb3B0aW9ucyA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAocmVzdWx0U2VsZWN0b3IpIHsKICAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zKS5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSk7CiAgICAgIH0KICAgICAgdmFyIF9hID0gX19yZWFkKGlzRXZlbnRUYXJnZXQodGFyZ2V0KSA/IGV2ZW50VGFyZ2V0TWV0aG9kcy5tYXAoZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7CiAgICAgICAgfTsKICAgICAgfSkgOiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpID8gbm9kZUV2ZW50RW1pdHRlck1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBpc0pRdWVyeVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBqcXVlcnlNZXRob2RzLm1hcCh0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkpIDogW10sIDIpLCBhZGQgPSBfYVswXSwgcmVtb3ZlID0gX2FbMV07CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UodGFyZ2V0KSkgewogICAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oc3ViVGFyZ2V0KSB7CiAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoc3ViVGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHRhcmdldCkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWFkZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgZXZlbnQgdGFyZ2V0Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KDEgPCBhcmdzLmxlbmd0aCA/IGFyZ3MgOiBhcmdzWzBdKTsKICAgICAgICB9OwogICAgICAgIGFkZChoYW5kbGVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlKGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUV2ZW50ID0gZnJvbUV2ZW50OwogICAgZnVuY3Rpb24gdG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZE5hbWUpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaGFuZGxlcikgewogICAgICAgICAgcmV0dXJuIHRhcmdldFttZXRob2ROYW1lXShldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRMaXN0ZW5lcikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LnJlbW92ZUxpc3RlbmVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQub24pICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vZmYpOwogICAgfQogICAgZnVuY3Rpb24gaXNFdmVudFRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRFdmVudExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcwp2YXIgcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcwp2YXIgcmVxdWlyZV9nZW5lcmF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGRlZmVyXzEgPSByZXF1aXJlX2RlZmVyKCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZShpbml0aWFsU3RhdGVPck9wdGlvbnMsIGNvbmRpdGlvbiwgaXRlcmF0ZSwgcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciByZXN1bHRTZWxlY3RvcjsKICAgICAgdmFyIGluaXRpYWxTdGF0ZTsKICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgICAgICBfYSA9IGluaXRpYWxTdGF0ZU9yT3B0aW9ucywgaW5pdGlhbFN0YXRlID0gX2EuaW5pdGlhbFN0YXRlLCBjb25kaXRpb24gPSBfYS5jb25kaXRpb24sIGl0ZXJhdGUgPSBfYS5pdGVyYXRlLCBfYiA9IF9hLnJlc3VsdFNlbGVjdG9yLCByZXN1bHRTZWxlY3RvciA9IF9iID09PSB2b2lkIDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogX2IsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpbml0aWFsU3RhdGUgPSBpbml0aWFsU3RhdGVPck9wdGlvbnM7CiAgICAgICAgaWYgKCFyZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyIHx8IGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgICAgIHNjaGVkdWxlciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2VuKCkgewogICAgICAgIHZhciBzdGF0ZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2EyKSB7CiAgICAgICAgICBzd2l0Y2ggKF9hMi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgc3RhdGUgPSBpbml0aWFsU3RhdGU7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGlmICghKCFjb25kaXRpb24gfHwgY29uZGl0aW9uKHN0YXRlKSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCByZXN1bHRTZWxlY3RvcihzdGF0ZSldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX2EyLnNlbnQoKTsKICAgICAgICAgICAgICBfYTIubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgc3RhdGUgPSBpdGVyYXRlKHN0YXRlKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcihzY2hlZHVsZXIgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoZ2VuKCksIHNjaGVkdWxlcik7CiAgICAgIH0gOiBnZW4pOwogICAgfQogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSBnZW5lcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaWlmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5paWYgPSB2b2lkIDA7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIGZ1bmN0aW9uIGlpZihjb25kaXRpb24sIHRydWVSZXN1bHQsIGZhbHNlUmVzdWx0KSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBjb25kaXRpb24oKSA/IHRydWVSZXN1bHQgOiBmYWxzZVJlc3VsdDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5paWYgPSBpaWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdGltZXIuanMKdmFyIHJlcXVpcmVfdGltZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gaW50ZXJ2YWwocGVyaW9kLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHBlcmlvZCA9PT0gdm9pZCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIGlmIChwZXJpb2QgPCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICByZXR1cm4gdGltZXJfMS50aW1lcihwZXJpb2QsIHBlcmlvZCwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmludGVydmFsID0gaW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlMigpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHZhciBjb25jdXJyZW50ID0gYXJnc18xLnBvcE51bWJlcihhcmdzLCBJbmZpbml0eSk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnczsKICAgICAgcmV0dXJuICFzb3VyY2VzLmxlbmd0aCA/IGVtcHR5XzEuRU1QVFkgOiBzb3VyY2VzLmxlbmd0aCA9PT0gMSA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzWzBdKSA6IG1lcmdlQWxsXzEubWVyZ2VBbGwoY29uY3VycmVudCkoZnJvbV8xLmZyb20oc291cmNlcywgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcwp2YXIgcmVxdWlyZV9uZXZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL25ldmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLk5FVkVSID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZXhwb3J0czIuTkVWRVIgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUobm9vcF8xLm5vb3ApOwogICAgZnVuY3Rpb24gbmV2ZXIoKSB7CiAgICAgIHJldHVybiBleHBvcnRzMi5ORVZFUjsKICAgIH0KICAgIGV4cG9ydHMyLm5ldmVyID0gbmV2ZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMKdmFyIHJlcXVpcmVfYXJnc09yQXJnQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzT3JBcmdBcnJheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJnc09yQXJnQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgaXNBcnJheSA9IEFycmF5LmlzQXJyYXk7CiAgICBmdW5jdGlvbiBhcmdzT3JBcmdBcnJheShhcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLmxlbmd0aCA9PT0gMSAmJiBpc0FycmF5KGFyZ3NbMF0pID8gYXJnc1swXSA6IGFyZ3M7CiAgICB9CiAgICBleHBvcnRzMi5hcmdzT3JBcmdBcnJheSA9IGFyZ3NPckFyZ0FycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29uRXJyb3JSZXN1bWVOZXh0LmpzCnZhciByZXF1aXJlX29uRXJyb3JSZXN1bWVOZXh0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb25FcnJvclJlc3VtZU5leHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0KCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc291cmNlSW5kZXggPSAwOwogICAgICAgIHZhciBzdWJzY3JpYmVOZXh0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoc291cmNlSW5kZXggPCBuZXh0U291cmNlcy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIG5leHRTb3VyY2UgPSB2b2lkIDA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgbmV4dFNvdXJjZSA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShuZXh0U291cmNlc1tzb3VyY2VJbmRleCsrXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBub29wXzEubm9vcCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgICBuZXh0U291cmNlLnN1YnNjcmliZShpbm5lclN1YnNjcmliZXIpOwogICAgICAgICAgICBpbm5lclN1YnNjcmliZXIuYWRkKHN1YnNjcmliZU5leHQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlTmV4dCgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gb25FcnJvclJlc3VtZU5leHQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMKdmFyIHJlcXVpcmVfcGFpcnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYWlycy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGFpcnMgPSB2b2lkIDA7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBmdW5jdGlvbiBwYWlyczIob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9ub3QuanMKdmFyIHJlcXVpcmVfbm90MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm90ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gbm90KHByZWQsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiAhcHJlZC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMKdmFyIHJlcXVpcmVfZmlsdGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbHRlciA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KyspICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbHRlciA9IGZpbHRlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMKdmFyIHJlcXVpcmVfcGFydGl0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFydGl0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSB2b2lkIDA7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdDIoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gcGFydGl0aW9uKHNvdXJjZSwgcHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBbZmlsdGVyXzEuZmlsdGVyKHByZWRpY2F0ZSwgdGhpc0FyZykoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpLCBmaWx0ZXJfMS5maWx0ZXIobm90XzEubm90KHByZWRpY2F0ZSwgdGhpc0FyZykpKGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpKV07CiAgICB9CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcwp2YXIgcmVxdWlyZV9yYWNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFjZUluaXQgPSBleHBvcnRzMi5yYWNlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJhY2UoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUocmFjZUluaXQoc291cmNlcykpOwogICAgfQogICAgZXhwb3J0czIucmFjZSA9IHJhY2U7CiAgICBmdW5jdGlvbiByYWNlSW5pdChzb3VyY2VzKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbnMgPSBbXTsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKGkyKSB7CiAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IDA7IHMgPCBzdWJzY3JpcHRpb25zLmxlbmd0aDsgcysrKSB7CiAgICAgICAgICAgICAgICBzICE9PSBpMiAmJiBzdWJzY3JpcHRpb25zW3NdLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMgPSBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9KSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IHN1YnNjcmlwdGlvbnMgJiYgIXN1YnNjcmliZXIuY2xvc2VkICYmIGkgPCBzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnJhY2VJbml0ID0gcmFjZUluaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFuZ2UuanMKdmFyIHJlcXVpcmVfcmFuZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFuZ2UgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIGZ1bmN0aW9uIHJhbmdlKHN0YXJ0LCBjb3VudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb3VudCA9PSBudWxsKSB7CiAgICAgICAgY291bnQgPSBzdGFydDsKICAgICAgICBzdGFydCA9IDA7CiAgICAgIH0KICAgICAgaWYgKGNvdW50IDw9IDApIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfQogICAgICB2YXIgZW5kID0gY291bnQgKyBzdGFydDsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShzY2hlZHVsZXIgPyBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG4gPSBzdGFydDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG4gPCBlbmQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSA6IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbiA9IHN0YXJ0OwogICAgICAgIHdoaWxlIChuIDwgZW5kICYmICFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yYW5nZSA9IHJhbmdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3VzaW5nLmpzCnZhciByZXF1aXJlX3VzaW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdXNpbmcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnVzaW5nID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgZnVuY3Rpb24gdXNpbmcocmVzb3VyY2VGYWN0b3J5LCBvYnNlcnZhYmxlRmFjdG9yeSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcmVzb3VyY2UgPSByZXNvdXJjZUZhY3RvcnkoKTsKICAgICAgICB2YXIgcmVzdWx0ID0gb2JzZXJ2YWJsZUZhY3RvcnkocmVzb3VyY2UpOwogICAgICAgIHZhciBzb3VyY2UgPSByZXN1bHQgPyBpbm5lckZyb21fMS5pbm5lckZyb20ocmVzdWx0KSA6IGVtcHR5XzEuRU1QVFk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAocmVzb3VyY2UpIHsKICAgICAgICAgICAgcmVzb3VyY2UudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzaW5nID0gdXNpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvemlwLmpzCnZhciByZXF1aXJlX3ppcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIHNvdXJjZXMubGVuZ3RoID8gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0pOwogICAgICAgIHZhciBjb21wbGV0ZWQgPSBzb3VyY2VzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGJ1ZmZlcnNbc291cmNlSW5kZXgyXS5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuZXZlcnkoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5sZW5ndGg7CiAgICAgICAgICAgIH0pKSB7CiAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGJ1ZmZlcnMubWFwKGZ1bmN0aW9uKGJ1ZmZlcikgewogICAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHRTZWxlY3RvciA/IHJlc3VsdFNlbGVjdG9yLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHJlc3VsdCkpKSA6IHJlc3VsdCk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuc29tZShmdW5jdGlvbihidWZmZXIsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhYnVmZmVyLmxlbmd0aCAmJiBjb21wbGV0ZWRbaV07CiAgICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjb21wbGV0ZWRbc291cmNlSW5kZXgyXSA9IHRydWU7CiAgICAgICAgICAgICFidWZmZXJzW3NvdXJjZUluZGV4Ml0ubGVuZ3RoICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZUluZGV4IDwgc291cmNlcy5sZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXJzID0gY29tcGxldGVkID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KSA6IGVtcHR5XzEuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC90eXBlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMKdmFyIHJlcXVpcmVfYXVkaXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hdWRpdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gYXVkaXQoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICB2YXIgZW5kRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGlmICghZHVyYXRpb25TdWJzY3JpYmVyKSB7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmREdXJhdGlvbiwgY2xlYW51cER1cmF0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICghaGFzVmFsdWUgfHwgIWR1cmF0aW9uU3Vic2NyaWJlciB8fCBkdXJhdGlvblN1YnNjcmliZXIuY2xvc2VkKSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmF1ZGl0ID0gYXVkaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMKdmFyIHJlcXVpcmVfYXVkaXRUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0VGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGF1ZGl0VGltZShkdXJhdGlvbiwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gYXVkaXRUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXIgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcihjbG9zaW5nTm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjdXJyZW50QnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBjdXJyZW50QnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGN1cnJlbnRCdWZmZXIpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ05vdGlmaWVyKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGIgPSBjdXJyZW50QnVmZmVyOwogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IFtdOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXIgPSBidWZmZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcwp2YXIgcmVxdWlyZV9idWZmZXJDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyQ291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJDb3VudChidWZmZXJTaXplLCBzdGFydEJ1ZmZlckV2ZXJ5KSB7CiAgICAgIGlmIChzdGFydEJ1ZmZlckV2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gbnVsbDsKICAgICAgfQogICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gc3RhcnRCdWZmZXJFdmVyeSAhPT0gbnVsbCAmJiBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSB2b2lkIDAgPyBzdGFydEJ1ZmZlckV2ZXJ5IDogYnVmZmVyU2l6ZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gW107CiAgICAgICAgdmFyIGNvdW50ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgICB2YXIgdG9FbWl0ID0gbnVsbDsKICAgICAgICAgIGlmIChjb3VudCsrICUgc3RhcnRCdWZmZXJFdmVyeSA9PT0gMCkgewogICAgICAgICAgICBidWZmZXJzLnB1c2goW10pOwogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18xID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKTsgIWJ1ZmZlcnNfMV8xLmRvbmU7IGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdG9FbWl0ID0gdG9FbWl0ICE9PSBudWxsICYmIHRvRW1pdCAhPT0gdm9pZCAwID8gdG9FbWl0IDogW107CiAgICAgICAgICAgICAgICB0b0VtaXQucHVzaChidWZmZXIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9FbWl0KSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgdG9FbWl0XzEgPSBfX3ZhbHVlcyh0b0VtaXQpLCB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpOyAhdG9FbWl0XzFfMS5kb25lOyB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gdG9FbWl0XzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJzLCBidWZmZXIpOwogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlXzJfMSkgewogICAgICAgICAgICAgIGVfMiA9IHsgZXJyb3I6IGVfMl8xIH07CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmICh0b0VtaXRfMV8xICYmICF0b0VtaXRfMV8xLmRvbmUgJiYgKF9iID0gdG9FbWl0XzEucmV0dXJuKSkgX2IuY2FsbCh0b0VtaXRfMSk7CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzMsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18yID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKTsgIWJ1ZmZlcnNfMl8xLmRvbmU7IGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzJfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8zXzEpIHsKICAgICAgICAgICAgZV8zID0geyBlcnJvcjogZV8zXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMl8xICYmICFidWZmZXJzXzJfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMi5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMik7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMykgdGhyb3cgZV8zLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJDb3VudCA9IGJ1ZmZlckNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVGltZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVGltZShidWZmZXJUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciBidWZmZXJDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4QnVmZmVyU2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkVtaXQgPSBmYWxzZTsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKHJlY29yZCkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXIsIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ICYmIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgfTsKICAgICAgICB2YXIgc3RhcnRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChidWZmZXJSZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChzdWJzKTsKICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgYnVmZmVyLAogICAgICAgICAgICAgIHN1YnMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgYnVmZmVyUmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVtaXQocmVjb3JkXzEpOwogICAgICAgICAgICB9LCBidWZmZXJUaW1lU3Bhbik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBpZiAoYnVmZmVyQ3JlYXRpb25JbnRlcnZhbCAhPT0gbnVsbCAmJiBidWZmZXJDcmVhdGlvbkludGVydmFsID49IDApIHsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIHN0YXJ0QnVmZmVyLCBidWZmZXJDcmVhdGlvbkludGVydmFsLCB0cnVlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVzdGFydE9uRW1pdCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgdmFyIGJ1ZmZlclRpbWVTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTI7CiAgICAgICAgICB2YXIgcmVjb3Jkc0NvcHkgPSBidWZmZXJSZWNvcmRzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciByZWNvcmRzQ29weV8xID0gX192YWx1ZXMocmVjb3Jkc0NvcHkpLCByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKTsgIXJlY29yZHNDb3B5XzFfMS5kb25lOyByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciByZWNvcmQgPSByZWNvcmRzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXI7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICAgIG1heEJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCAmJiBlbWl0KHJlY29yZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChyZWNvcmRzQ29weV8xXzEgJiYgIXJlY29yZHNDb3B5XzFfMS5kb25lICYmIChfYTIgPSByZWNvcmRzQ29weV8xLnJldHVybikpIF9hMi5jYWxsKHJlY29yZHNDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlclJlY29yZHMgPT09IG51bGwgfHwgYnVmZmVyUmVjb3JkcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyUmVjb3Jkcy5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlclJlY29yZHMuc2hpZnQoKS5idWZmZXIpOwogICAgICAgICAgfQogICAgICAgICAgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IG51bGwgfHwgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlclRpbWVTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXJSZWNvcmRzID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGJ1ZmZlclRpbWVTdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gYnVmZmVyVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlclRvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IFtdOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciBidWZmZXIgPSBbXTsKICAgICAgICAgIGJ1ZmZlcnMucHVzaChidWZmZXIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgZW1pdEJ1ZmZlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoYnVmZmVycywgYnVmZmVyKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW1pdEJ1ZmZlciwgbm9vcF8xLm5vb3ApKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoYnVmZmVycy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXJzLnNoaWZ0KCkpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUb2dnbGUgPSBidWZmZXJUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJXaGVuLmpzCnZhciByZXF1aXJlX2J1ZmZlcldoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlcldoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcldoZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gbnVsbDsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXIgPSBudWxsOwogICAgICAgIHZhciBvcGVuQnVmZmVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBiID0gYnVmZmVyOwogICAgICAgICAgYnVmZmVyID0gW107CiAgICAgICAgICBiICYmIHN1YnNjcmliZXIubmV4dChiKTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3IoKSkuc3Vic2NyaWJlKGNsb3NpbmdTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIG9wZW5CdWZmZXIsIG5vb3BfMS5ub29wKSk7CiAgICAgICAgfTsKICAgICAgICBvcGVuQnVmZmVyKCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPT09IG51bGwgfHwgYnVmZmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgJiYgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPSBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSBidWZmZXJXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY2F0Y2hFcnJvci5qcwp2YXIgcmVxdWlyZV9jYXRjaEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBjYXRjaEVycm9yKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWIgPSBudWxsOwogICAgICAgIHZhciBzeW5jVW5zdWIgPSBmYWxzZTsKICAgICAgICB2YXIgaGFuZGxlZFJlc3VsdDsKICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZXJyLCBjYXRjaEVycm9yKHNlbGVjdG9yKShzb3VyY2UpKSk7CiAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2F0Y2hFcnJvciA9IGNhdGNoRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX3NjYW5JbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjYW5JbnRlcm5hbHMgPSB2b2lkIDA7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgaGFzU2VlZCwgZW1pdE9uTmV4dCwgZW1pdEJlZm9yZUNvbXBsZXRlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzU3RhdGUgPSBoYXNTZWVkOwogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGkgPSBpbmRleCsrOwogICAgICAgICAgc3RhdGUgPSBoYXNTdGF0ZSA/IGFjY3VtdWxhdG9yKHN0YXRlLCB2YWx1ZSwgaSkgOiAoaGFzU3RhdGUgPSB0cnVlLCB2YWx1ZSk7CiAgICAgICAgICBlbWl0T25OZXh0ICYmIHN1YnNjcmliZXIubmV4dChzdGF0ZSk7CiAgICAgICAgfSwgZW1pdEJlZm9yZUNvbXBsZXRlICYmIGZ1bmN0aW9uKCkgewogICAgICAgICAgaGFzU3RhdGUgJiYgc3Vic2NyaWJlci5uZXh0KHN0YXRlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5zY2FuSW50ZXJuYWxzID0gc2NhbkludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcwp2YXIgcmVxdWlyZV9yZWR1Y2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVkdWNlID0gdm9pZCAwOwogICAgdmFyIHNjYW5JbnRlcm5hbHNfMSA9IHJlcXVpcmVfc2NhbkludGVybmFscygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gcmVkdWNlKGFjY3VtdWxhdG9yLCBzZWVkKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShzY2FuSW50ZXJuYWxzXzEuc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgYXJndW1lbnRzLmxlbmd0aCA+PSAyLCBmYWxzZSwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIucmVkdWNlID0gcmVkdWNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdG9BcnJheS5qcwp2YXIgcmVxdWlyZV90b0FycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50b0FycmF5ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcnJSZWR1Y2VyID0gZnVuY3Rpb24oYXJyLCB2YWx1ZSkgewogICAgICByZXR1cm4gYXJyLnB1c2godmFsdWUpLCBhcnI7CiAgICB9OwogICAgZnVuY3Rpb24gdG9BcnJheTIoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZWR1Y2VfMS5yZWR1Y2UoYXJyUmVkdWNlciwgW10pKHNvdXJjZSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRvQXJyYXkgPSB0b0FycmF5MjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvam9pbkFsbEludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgZnVuY3Rpb24gam9pbkFsbEludGVybmFscyhqb2luRm4sIHByb2plY3QpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlKHRvQXJyYXlfMTIudG9BcnJheSgpLCBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHNvdXJjZXMpIHsKICAgICAgICByZXR1cm4gam9pbkZuKHNvdXJjZXMpOwogICAgICB9KSwgcHJvamVjdCA/IG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHByb2plY3QpIDogaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gam9pbkFsbEludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdEFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIHZhciBqb2luQWxsSW50ZXJuYWxzXzEgPSByZXF1aXJlX2pvaW5BbGxJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QsIHByb2plY3QpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBleHBvcnRzMi5jb21iaW5lQWxsID0gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHBpcGVfMS5waXBlKGNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSwgbWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0SW5pdChfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKSkpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gY29tYmluZUxhdGVzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RXaXRoLmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0MigpOwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBjb21iaW5lTGF0ZXN0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBjb25jYXRNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlc3VsdFNlbGVjdG9yKSA/IG1lcmdlTWFwXzEubWVyZ2VNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IsIDEpIDogbWVyZ2VNYXBfMS5tZXJnZU1hcChwcm9qZWN0LCAxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcCA9IGNvbmNhdE1hcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcFRvLmpzCnZhciByZXF1aXJlX2NvbmNhdE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gY29uY2F0TWFwXzEuY29uY2F0TWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gY29uY2F0TWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbmNhdEFsbF8xLmNvbmNhdEFsbCgpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXQgPSBjb25jYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzCnZhciByZXF1aXJlX2NvbmNhdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdDIoKTsKICAgIGZ1bmN0aW9uIGNvbmNhdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSBjb25jYXRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMKdmFyIHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21TdWJzY3JpYmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBmcm9tU3Vic2NyaWJhYmxlKHN1YnNjcmliYWJsZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJhYmxlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gZnJvbVN1YnNjcmliYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMKdmFyIHJlcXVpcmVfY29ubmVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29ubmVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29ubmVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZnJvbVN1YnNjcmliYWJsZV8xID0gcmVxdWlyZV9mcm9tU3Vic2NyaWJhYmxlKCk7CiAgICB2YXIgREVGQVVMVF9DT05GSUcgPSB7CiAgICAgIGNvbm5lY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gY29ubmVjdChzZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIGlmIChjb25maWcgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZyA9IERFRkFVTFRfQ09ORklHOwogICAgICB9CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZnJvbVN1YnNjcmliYWJsZV8xLmZyb21TdWJzY3JpYmFibGUoc3ViamVjdCkpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc291cmNlLnN1YnNjcmliZShzdWJqZWN0KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdCA9IGNvbm5lY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcwp2YXIgcmVxdWlyZV9jb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvdW50ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIGZ1bmN0aW9uIGNvdW50KHByZWRpY2F0ZSkgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGZ1bmN0aW9uKHRvdGFsLCB2YWx1ZSwgaSkgewogICAgICAgIHJldHVybiAhcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaSkgPyB0b3RhbCArIDEgOiB0b3RhbDsKICAgICAgfSwgMCk7CiAgICB9CiAgICBleHBvcnRzMi5jb3VudCA9IGNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2UuanMKdmFyIHJlcXVpcmVfZGVib3VuY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVib3VuY2UoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGVtaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0LCBub29wXzEubm9vcCk7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IGRlYm91bmNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzCnZhciByZXF1aXJlX2RlYm91bmNlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWJvdW5jZVRpbWUoZHVlVGltZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFRpbWUgPSBudWxsOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGFjdGl2ZVRhc2sgPSBudWxsOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBlbWl0V2hlbklkbGUoKSB7CiAgICAgICAgICB2YXIgdGFyZ2V0VGltZSA9IGxhc3RUaW1lICsgZHVlVGltZTsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAobm93IDwgdGFyZ2V0VGltZSkgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gdGhpcy5zY2hlZHVsZSh2b2lkIDAsIHRhcmdldFRpbWUgLSBub3cpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgZW1pdCgpOwogICAgICAgIH0KICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgICBsYXN0VGltZSA9IHNjaGVkdWxlci5ub3coKTsKICAgICAgICAgIGlmICghYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gc2NoZWR1bGVyLnNjaGVkdWxlKGVtaXRXaGVuSWRsZSwgZHVlVGltZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKGFjdGl2ZVRhc2spOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gZGVib3VuY2VUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMKdmFyIHJlcXVpcmVfZGVmYXVsdElmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlZmF1bHRJZkVtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZGVmYXVsdFZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBkZWZhdWx0SWZFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2UuanMKdmFyIHJlcXVpcmVfdGFrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZSA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2UoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCsrc2VlbiA8PSBjb3VudCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICBpZiAoY291bnQgPD0gc2VlbikgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlID0gdGFrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2lnbm9yZUVsZW1lbnRzLmpzCnZhciByZXF1aXJlX2lnbm9yZUVsZW1lbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pZ25vcmVFbGVtZW50cy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZnVuY3Rpb24gaWdub3JlRWxlbWVudHMoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gaWdub3JlRWxlbWVudHM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcwp2YXIgcmVxdWlyZV9tYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIG1hcFRvKHZhbHVlKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hcFRvID0gbWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMKdmFyIHJlcXVpcmVfZGVsYXlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgaWdub3JlRWxlbWVudHNfMSA9IHJlcXVpcmVfaWdub3JlRWxlbWVudHMoKTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3Rvciwgc3Vic2NyaXB0aW9uRGVsYXkpIHsKICAgICAgaWYgKHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzdWJzY3JpcHRpb25EZWxheS5waXBlKHRha2VfMS50YWtlKDEpLCBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzKCkpLCBzb3VyY2UucGlwZShkZWxheVdoZW4oZGVsYXlEdXJhdGlvblNlbGVjdG9yKSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShkZWxheUR1cmF0aW9uU2VsZWN0b3IodmFsdWUsIGluZGV4KSkucGlwZSh0YWtlXzEudGFrZSgxKSwgbWFwVG9fMS5tYXBUbyh2YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IGRlbGF5V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbGF5LmpzCnZhciByZXF1aXJlX2RlbGF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVsYXkgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGRlbGF5KGR1ZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uID0gdGltZXJfMS50aW1lcihkdWUsIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGR1cmF0aW9uOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5ID0gZGVsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX2RlbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRlbWF0ZXJpYWxpemUoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihub3RpZmljYXRpb24pIHsKICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5vYnNlcnZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcik7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSBkZW1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3QuanMKdmFyIHJlcXVpcmVfZGlzdGluY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGlzdGluY3Qoa2V5U2VsZWN0b3IsIGZsdXNoZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBkaXN0aW5jdEtleXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5U2VsZWN0b3IgPyBrZXlTZWxlY3Rvcih2YWx1ZSkgOiB2YWx1ZTsKICAgICAgICAgIGlmICghZGlzdGluY3RLZXlzLmhhcyhrZXkpKSB7CiAgICAgICAgICAgIGRpc3RpbmN0S2V5cy5hZGQoa2V5KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgZmx1c2hlcyAmJiBpbm5lckZyb21fMS5pbm5lckZyb20oZmx1c2hlcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBkaXN0aW5jdEtleXMuY2xlYXIoKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0ID0gZGlzdGluY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdFVudGlsQ2hhbmdlZC5qcwp2YXIgcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbENoYW5nZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbENoYW5nZWQoY29tcGFyYXRvciwga2V5U2VsZWN0b3IpIHsKICAgICAgaWYgKGtleVNlbGVjdG9yID09PSB2b2lkIDApIHsKICAgICAgICBrZXlTZWxlY3RvciA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgY29tcGFyYXRvciA9IGNvbXBhcmF0b3IgIT09IG51bGwgJiYgY29tcGFyYXRvciAhPT0gdm9pZCAwID8gY29tcGFyYXRvciA6IGRlZmF1bHRDb21wYXJlOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXZpb3VzS2V5OwogICAgICAgIHZhciBmaXJzdCA9IHRydWU7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBjdXJyZW50S2V5ID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgaWYgKGZpcnN0IHx8ICFjb21wYXJhdG9yKHByZXZpb3VzS2V5LCBjdXJyZW50S2V5KSkgewogICAgICAgICAgICBmaXJzdCA9IGZhbHNlOwogICAgICAgICAgICBwcmV2aW91c0tleSA9IGN1cnJlbnRLZXk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZGlzdGluY3RVbnRpbENoYW5nZWQ7CiAgICBmdW5jdGlvbiBkZWZhdWx0Q29tcGFyZShhLCBiKSB7CiAgICAgIHJldHVybiBhID09PSBiOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoa2V5LCBjb21wYXJlKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkKGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZSA/IGNvbXBhcmUoeFtrZXldLCB5W2tleV0pIDogeFtrZXldID09PSB5W2tleV07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcwp2YXIgcmVxdWlyZV90aHJvd0lmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRocm93SWZFbXB0eShlcnJvckZhY3RvcnkpIHsKICAgICAgaWYgKGVycm9yRmFjdG9yeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZXJyb3JGYWN0b3J5ID0gZGVmYXVsdEVycm9yRmFjdG9yeTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaGFzVmFsdWUgPyBzdWJzY3JpYmVyLmNvbXBsZXRlKCkgOiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdGhyb3dJZkVtcHR5OwogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9yRmFjdG9yeSgpIHsKICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzCnZhciByZXF1aXJlX2VsZW1lbnRBdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSB2b2lkIDA7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGhyb3dJZkVtcHR5XzEgPSByZXF1aXJlX3Rocm93SWZFbXB0eSgpOwogICAgdmFyIGRlZmF1bHRJZkVtcHR5XzEgPSByZXF1aXJlX2RlZmF1bHRJZkVtcHR5KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICBmdW5jdGlvbiBlbGVtZW50QXQoaW5kZXgsIGRlZmF1bHRWYWx1ZSkgewogICAgICBpZiAoaW5kZXggPCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgfQogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gaSA9PT0gaW5kZXg7CiAgICAgICAgfSksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSBlbGVtZW50QXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzCnZhciByZXF1aXJlX2VuZFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VuZFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVuZFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIG9mXzEgPSByZXF1aXJlX29mKCk7CiAgICBmdW5jdGlvbiBlbmRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQoc291cmNlLCBvZl8xLm9mLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbmRXaXRoID0gZW5kV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V2ZXJ5LmpzCnZhciByZXF1aXJlX2V2ZXJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXZlcnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZXZlcnkocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0cnVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXZlcnkgPSBldmVyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMKdmFyIHJlcXVpcmVfZXhoYXVzdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGV4aGF1c3RNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpLnBpcGUobWFwXzEubWFwKGZ1bmN0aW9uKGIsIGlpKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yKGEsIGIsIGksIGlpKTsKICAgICAgICAgICAgfSkpOwogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgdmFyIGlubmVyU3ViID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG91dGVyVmFsdWUpIHsKICAgICAgICAgIGlmICghaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgICAgaXNDb21wbGV0ZSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdChvdXRlclZhbHVlLCBpbmRleCsrKSkuc3Vic2NyaWJlKGlubmVyU3ViKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgIWlubmVyU3ViICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4aGF1c3RNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzCnZhciByZXF1aXJlX2V4aGF1c3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgZXhoYXVzdE1hcF8xID0gcmVxdWlyZV9leGhhdXN0TWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RBbGwoKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0ID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzCnZhciByZXF1aXJlX2V4cGFuZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHBhbmQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbWVyZ2VJbnRlcm5hbHNfMSA9IHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGV4cGFuZChwcm9qZWN0LCBjb25jdXJyZW50LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBjb25jdXJyZW50ID0gKGNvbmN1cnJlbnQgfHwgMCkgPCAxID8gSW5maW5pdHkgOiBjb25jdXJyZW50OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCB2b2lkIDAsIHRydWUsIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhwYW5kID0gZXhwYW5kOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMKdmFyIHJlcXVpcmVfZmluYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmFsaXplLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIGZpbmFsaXplKGNhbGxiYWNrKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB0cnkgewogICAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgc3Vic2NyaWJlci5hZGQoY2FsbGJhY2spOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IGZpbmFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZC5qcwp2YXIgcmVxdWlyZV9maW5kID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVGaW5kID0gZXhwb3J0czIuZmluZCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaW5kKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJ2YWx1ZSIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmQgPSBmaW5kOwogICAgZnVuY3Rpb24gY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsIGVtaXQpIHsKICAgICAgdmFyIGZpbmRJbmRleCA9IGVtaXQgPT09ICJpbmRleCI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBpZiAocHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGksIHNvdXJjZSkpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGZpbmRJbmRleCA/IGkgOiB2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyAtMSA6IHZvaWQgMCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGNyZWF0ZUZpbmQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMKdmFyIHJlcXVpcmVfZmluZEluZGV4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBmaW5kXzEgPSByZXF1aXJlX2ZpbmQoKTsKICAgIGZ1bmN0aW9uIGZpbmRJbmRleChwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZpbmRfMS5jcmVhdGVGaW5kKHByZWRpY2F0ZSwgdGhpc0FyZywgImluZGV4IikpOwogICAgfQogICAgZXhwb3J0czIuZmluZEluZGV4ID0gZmluZEluZGV4OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMKdmFyIHJlcXVpcmVfZmlyc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpcnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdCA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGZpcnN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZmlyc3QgPSBmaXJzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2dyb3VwQnkuanMKdmFyIHJlcXVpcmVfZ3JvdXBCeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZ3JvdXBCeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ3JvdXBCeSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZ3JvdXBCeShrZXlTZWxlY3RvciwgZWxlbWVudE9yT3B0aW9ucywgZHVyYXRpb24sIGNvbm5lY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVsZW1lbnQ7CiAgICAgICAgaWYgKCFlbGVtZW50T3JPcHRpb25zIHx8IHR5cGVvZiBlbGVtZW50T3JPcHRpb25zID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9uczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZHVyYXRpb24gPSBlbGVtZW50T3JPcHRpb25zLmR1cmF0aW9uLCBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9ucy5lbGVtZW50LCBjb25uZWN0b3IgPSBlbGVtZW50T3JPcHRpb25zLmNvbm5lY3RvcjsKICAgICAgICB9CiAgICAgICAgdmFyIGdyb3VwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgdmFyIG5vdGlmeSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBncm91cHMuZm9yRWFjaChjYik7CiAgICAgICAgICBjYihzdWJzY3JpYmVyKTsKICAgICAgICB9OwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgICAgdmFyIGFjdGl2ZUdyb3VwcyA9IDA7CiAgICAgICAgdmFyIHRlYXJkb3duQXR0ZW1wdGVkID0gZmFsc2U7CiAgICAgICAgdmFyIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyID0gbmV3IE9wZXJhdG9yU3Vic2NyaWJlcl8xLk9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGtleV8xID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgICB2YXIgZ3JvdXBfMSA9IGdyb3Vwcy5nZXQoa2V5XzEpOwogICAgICAgICAgICBpZiAoIWdyb3VwXzEpIHsKICAgICAgICAgICAgICBncm91cHMuc2V0KGtleV8xLCBncm91cF8xID0gY29ubmVjdG9yID8gY29ubmVjdG9yKCkgOiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgICAgICAgdmFyIGdyb3VwZWQgPSBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXlfMSwgZ3JvdXBfMSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGdyb3VwZWQpOwogICAgICAgICAgICAgIGlmIChkdXJhdGlvbikgewogICAgICAgICAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGdyb3VwXzEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBncm91cF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICByZXR1cm4gZ3JvdXBzLmRlbGV0ZShrZXlfMSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb24oZ3JvdXBlZCkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXJfMSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBncm91cF8xLm5leHQoZWxlbWVudCA/IGVsZW1lbnQodmFsdWUpIDogdmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbm90aWZ5KGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGdyb3Vwcy5jbGVhcigpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdGVhcmRvd25BdHRlbXB0ZWQgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIGFjdGl2ZUdyb3VwcyA9PT0gMDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyKTsKICAgICAgICBmdW5jdGlvbiBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXksIGdyb3VwU3ViamVjdCkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihncm91cFN1YnNjcmliZXIpIHsKICAgICAgICAgICAgYWN0aXZlR3JvdXBzKys7CiAgICAgICAgICAgIHZhciBpbm5lclN1YiA9IGdyb3VwU3ViamVjdC5zdWJzY3JpYmUoZ3JvdXBTdWJzY3JpYmVyKTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgLS1hY3RpdmVHcm91cHMgPT09IDAgJiYgdGVhcmRvd25BdHRlbXB0ZWQgJiYgZ3JvdXBCeVNvdXJjZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmVzdWx0LmtleSA9IGtleTsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmdyb3VwQnkgPSBncm91cEJ5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcwp2YXIgcmVxdWlyZV9pc0VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pc0VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGlzRW1wdHkoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodHJ1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzRW1wdHkgPSBpc0VtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMKdmFyIHJlcXVpcmVfdGFrZUxhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2VMYXN0KGNvdW50KSB7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgIGNvdW50IDwgYnVmZmVyLmxlbmd0aCAmJiBidWZmZXIuc2hpZnQoKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyXzEgPSBfX3ZhbHVlcyhidWZmZXIpLCBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpOyAhYnVmZmVyXzFfMS5kb25lOyBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYnVmZmVyXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyXzFfMSAmJiAhYnVmZmVyXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcl8xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHRha2VMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbGFzdC5qcwp2YXIgcmVxdWlyZV9sYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9sYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBsYXN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VMYXN0XzEudGFrZUxhc3QoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5sYXN0ID0gbGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX21hdGVyaWFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXRlcmlhbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hdGVyaWFsaXplKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlTmV4dCh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbi5jcmVhdGVDb21wbGV0ZSgpKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlRXJyb3IoZXJyKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gbWF0ZXJpYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMKdmFyIHJlcXVpcmVfbWF4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1heCA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtYXgoY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpID4gMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4ID4geSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1heCA9IG1heDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZsYXRNYXAuanMKdmFyIHJlcXVpcmVfZmxhdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmxhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IG1lcmdlTWFwXzEubWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzCnZhciByZXF1aXJlX21lcmdlTWFwVG8gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1lcmdlTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgICAgfSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIGNvbmN1cnJlbnQpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VNYXBUbyA9IG1lcmdlTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMKdmFyIHJlcXVpcmVfbWVyZ2VTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlU2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBtZXJnZUludGVybmFsc18xID0gcmVxdWlyZV9tZXJnZUludGVybmFscygpOwogICAgZnVuY3Rpb24gbWVyZ2VTY2FuKGFjY3VtdWxhdG9yLCBzZWVkLCBjb25jdXJyZW50KSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcihzdGF0ZSwgdmFsdWUsIGluZGV4KTsKICAgICAgICB9LCBjb25jdXJyZW50LCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3RhdGUgPSB2YWx1ZTsKICAgICAgICB9LCBmYWxzZSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdGF0ZSA9IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VTY2FuID0gbWVyZ2VTY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UyKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgYXJncyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcwp2YXIgcmVxdWlyZV9tZXJnZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gdm9pZCAwOwogICAgdmFyIG1lcmdlXzEgPSByZXF1aXJlX21lcmdlMigpOwogICAgZnVuY3Rpb24gbWVyZ2VXaXRoMigpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlV2l0aCA9IG1lcmdlV2l0aDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMKdmFyIHJlcXVpcmVfbWluID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1pbiA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtaW4oY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpIDwgMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4IDwgeSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1pbiA9IG1pbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcwp2YXIgcmVxdWlyZV9tdWx0aWNhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubXVsdGljYXN0ID0gdm9pZCAwOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIG11bHRpY2FzdChzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSwgc2VsZWN0b3IpIHsKICAgICAgdmFyIHN1YmplY3RGYWN0b3J5ID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc3ViamVjdE9yU3ViamVjdEZhY3RvcnkpID8gc3ViamVjdE9yU3ViamVjdEZhY3RvcnkgOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc3ViamVjdE9yU3ViamVjdEZhY3Rvcnk7CiAgICAgIH07CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Qoc2VsZWN0b3IsIHsKICAgICAgICAgIGNvbm5lY3Rvcjogc3ViamVjdEZhY3RvcnkKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGUoc291cmNlLCBzdWJqZWN0RmFjdG9yeSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tdWx0aWNhc3QgPSBtdWx0aWNhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMKdmFyIHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0V2l0aCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIG5leHRTb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShzb3VyY2VzKTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKG5leHRTb3VyY2VzKSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gb25FcnJvclJlc3VtZU5leHRXaXRoOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wYWlyd2lzZS5qcwp2YXIgcmVxdWlyZV9wYWlyd2lzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJ3aXNlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHBhaXJ3aXNlKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXY7CiAgICAgICAgdmFyIGhhc1ByZXYgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHAgPSBwcmV2OwogICAgICAgICAgcHJldiA9IHZhbHVlOwogICAgICAgICAgaGFzUHJldiAmJiBzdWJzY3JpYmVyLm5leHQoW3AsIHZhbHVlXSk7CiAgICAgICAgICBoYXNQcmV2ID0gdHJ1ZTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGFpcndpc2UgPSBwYWlyd2lzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BsdWNrLmpzCnZhciByZXF1aXJlX3BsdWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wbHVjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGx1Y2sgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgZnVuY3Rpb24gcGx1Y2soKSB7CiAgICAgIHZhciBwcm9wZXJ0aWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgcHJvcGVydGllc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBsZW5ndGggPSBwcm9wZXJ0aWVzLmxlbmd0aDsKICAgICAgaWYgKGxlbmd0aCA9PT0gMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigibGlzdCBvZiBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBlbXB0eS4iKTsKICAgICAgfQogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKHgpIHsKICAgICAgICB2YXIgY3VycmVudFByb3AgPSB4OwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHZhciBwID0gY3VycmVudFByb3AgPT09IG51bGwgfHwgY3VycmVudFByb3AgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGN1cnJlbnRQcm9wW3Byb3BlcnRpZXNbaV1dOwogICAgICAgICAgaWYgKHR5cGVvZiBwICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgICBjdXJyZW50UHJvcCA9IHA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY3VycmVudFByb3A7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGx1Y2sgPSBwbHVjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2guanMKdmFyIHJlcXVpcmVfcHVibGlzaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBzZWxlY3RvciA/IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdChzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfSA6IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBtdWx0aWNhc3RfMS5tdWx0aWNhc3QobmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpKHNvdXJjZSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoID0gcHVibGlzaDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaEJlaGF2aW9yID0gdm9pZCAwOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdF8xID0gcmVxdWlyZV9CZWhhdmlvclN1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoQmVoYXZpb3IoaW5pdGlhbFZhbHVlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3QoaW5pdGlhbFZhbHVlKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBwdWJsaXNoQmVoYXZpb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoTGFzdC5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoTGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaExhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU3ViamVjdF8xID0gcmVxdWlyZV9Bc3luY1N1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoTGFzdCgpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3ViamVjdDsKICAgICAgICB9KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gcHVibGlzaExhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoUmVwbGF5LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hSZXBsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSB2b2lkIDA7CiAgICB2YXIgUmVwbGF5U3ViamVjdF8xID0gcmVxdWlyZV9SZXBsYXlTdWJqZWN0KCk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gcHVibGlzaFJlcGxheShidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzZWxlY3Rvck9yU2NoZWR1bGVyLCB0aW1lc3RhbXBQcm92aWRlcikgewogICAgICBpZiAoc2VsZWN0b3JPclNjaGVkdWxlciAmJiAhaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICB0aW1lc3RhbXBQcm92aWRlciA9IHNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIHNlbGVjdG9yID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikgPyBzZWxlY3Rvck9yU2NoZWR1bGVyIDogdm9pZCAwOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIpLCBzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBwdWJsaXNoUmVwbGF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmFjZVdpdGguanMKdmFyIHJlcXVpcmVfcmFjZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHZvaWQgMDsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcmFjZVdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gIW90aGVyU291cmNlcy5sZW5ndGggPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmFjZV8xLnJhY2VJbml0KF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChvdGhlclNvdXJjZXMpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFjZVdpdGggPSByYWNlV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcwp2YXIgcmVxdWlyZV9yZXBlYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVwZWF0ID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gcmVwZWF0Mihjb3VudE9yQ29uZmlnKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIGNvdW50ID0gSW5maW5pdHk7CiAgICAgIHZhciBkZWxheTsKICAgICAgaWYgKGNvdW50T3JDb25maWcgIT0gbnVsbCkgewogICAgICAgIGlmICh0eXBlb2YgY291bnRPckNvbmZpZyA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIF9hID0gY291bnRPckNvbmZpZy5jb3VudCwgY291bnQgPSBfYSA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYSwgZGVsYXkgPSBjb3VudE9yQ29uZmlnLmRlbGF5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb3VudCA9IGNvdW50T3JDb25maWc7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc29GYXIgPSAwOwogICAgICAgIHZhciBzb3VyY2VTdWI7CiAgICAgICAgdmFyIHJlc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzb3VyY2VTdWIgPT09IG51bGwgfHwgc291cmNlU3ViID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2VTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNvdXJjZVN1YiA9IG51bGw7CiAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoc29GYXIpKTsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIG5vdGlmaWVyU3Vic2NyaWJlcl8xLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG5vdGlmaWVyLnN1YnNjcmliZShub3RpZmllclN1YnNjcmliZXJfMSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZVRvU291cmNlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoKytzb0ZhciA8IGNvdW50KSB7CiAgICAgICAgICAgICAgaWYgKHNvdXJjZVN1YikgewogICAgICAgICAgICAgICAgcmVzdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Vuc3ViKSB7CiAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdCA9IHJlcGVhdDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXRXaGVuLmpzCnZhciByZXF1aXJlX3JlcGVhdFdoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmV0cnkuanMKdmFyIHJlcXVpcmVfcmV0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXRyeSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHJldHJ5KGNvbmZpZ09yQ291bnQpIHsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZ09yQ291bnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICB2YXIgY29uZmlnOwogICAgICBpZiAoY29uZmlnT3JDb3VudCAmJiB0eXBlb2YgY29uZmlnT3JDb3VudCA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25maWcgPSBjb25maWdPckNvdW50OwogICAgICB9IGVsc2UgewogICAgICAgIGNvbmZpZyA9IHsKICAgICAgICAgIGNvdW50OiBjb25maWdPckNvdW50CiAgICAgICAgfTsKICAgICAgfQogICAgICB2YXIgX2EgPSBjb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY29uZmlnLmRlbGF5LCBfYiA9IGNvbmZpZy5yZXNldE9uU3VjY2VzcywgcmVzZXRPblN1Y2Nlc3MgPSBfYiA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYjsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChyZXNldE9uU3VjY2VzcykgewogICAgICAgICAgICAgIHNvRmFyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgaWYgKHNvRmFyKysgPCBjb3VudCkgewogICAgICAgICAgICAgIHZhciByZXN1Yl8xID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGlmIChkZWxheSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoZXJyLCBzb0ZhcikpOwogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5KCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJldHJ5ID0gcmV0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJldHJ5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmV0cnlXaGVuKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN5bmNSZXN1YiA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvcnMkOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeVdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBpZiAoIWVycm9ycyQpIHsKICAgICAgICAgICAgICBlcnJvcnMkID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG5vdGlmaWVyKGVycm9ycyQpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyU3ViID8gc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCkgOiBzeW5jUmVzdWIgPSB0cnVlOwogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQubmV4dChlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Jlc3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmV0cnlXaGVuID0gcmV0cnlXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzCnZhciByZXF1aXJlX3NhbXBsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGVUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgdmFyIGludGVydmFsXzEgPSByZXF1aXJlX2ludGVydmFsKCk7CiAgICBmdW5jdGlvbiBzYW1wbGVUaW1lKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZShpbnRlcnZhbF8xLmludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gc2FtcGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBzY2FuSW50ZXJuYWxzXzEgPSByZXF1aXJlX3NjYW5JbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIHNjYW4oYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW4gPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2VxdWVuY2VFcXVhbC5qcwp2YXIgcmVxdWlyZV9zZXF1ZW5jZUVxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NoYXJlLmpzCnZhciByZXF1aXJlX3NoYXJlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc2hhcmUob3B0aW9ucykgewogICAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7CiAgICAgICAgb3B0aW9ucyA9IHt9OwogICAgICB9CiAgICAgIHZhciBfYSA9IG9wdGlvbnMuY29ubmVjdG9yLCBjb25uZWN0b3IgPSBfYSA9PT0gdm9pZCAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9IDogX2EsIF9iID0gb3B0aW9ucy5yZXNldE9uRXJyb3IsIHJlc2V0T25FcnJvciA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gb3B0aW9ucy5yZXNldE9uQ29tcGxldGUsIHJlc2V0T25Db21wbGV0ZSA9IF9jID09PSB2b2lkIDAgPyB0cnVlIDogX2MsIF9kID0gb3B0aW9ucy5yZXNldE9uUmVmQ291bnRaZXJvLCByZXNldE9uUmVmQ291bnRaZXJvID0gX2QgPT09IHZvaWQgMCA/IHRydWUgOiBfZDsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHdyYXBwZXJTb3VyY2UpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbjsKICAgICAgICB2YXIgcmVzZXRDb25uZWN0aW9uOwogICAgICAgIHZhciBzdWJqZWN0OwogICAgICAgIHZhciByZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIGhhc0NvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIHZhciBoYXNFcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGNhbmNlbFJlc2V0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPT09IG51bGwgfHwgcmVzZXRDb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZXNldENvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IHZvaWQgMDsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIGNvbm5lY3Rpb24gPSBzdWJqZWN0ID0gdm9pZCAwOwogICAgICAgICAgaGFzQ29tcGxldGVkID0gaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIH07CiAgICAgICAgdmFyIHJlc2V0QW5kVW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBjb25uID0gY29ubmVjdGlvbjsKICAgICAgICAgIHJlc2V0KCk7CiAgICAgICAgICBjb25uID09PSBudWxsIHx8IGNvbm4gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbm4udW5zdWJzY3JpYmUoKTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICAgIHJlZkNvdW50Kys7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yZWQgJiYgIWhhc0NvbXBsZXRlZCkgewogICAgICAgICAgICBjYW5jZWxSZXNldCgpOwogICAgICAgICAgfQogICAgICAgICAgdmFyIGRlc3QgPSBzdWJqZWN0ID0gc3ViamVjdCAhPT0gbnVsbCAmJiBzdWJqZWN0ICE9PSB2b2lkIDAgPyBzdWJqZWN0IDogY29ubmVjdG9yKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmVmQ291bnQtLTsKICAgICAgICAgICAgaWYgKHJlZkNvdW50ID09PSAwICYmICFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldEFuZFVuc3Vic2NyaWJlLCByZXNldE9uUmVmQ291bnRaZXJvKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBkZXN0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIGlmICghY29ubmVjdGlvbiAmJiByZWZDb3VudCA+IDApIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgICAgIGhhc0Vycm9yZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uRXJyb3IsIGVycik7CiAgICAgICAgICAgICAgICBkZXN0LmVycm9yKGVycik7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBoYXNDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uQ29tcGxldGUpOwogICAgICAgICAgICAgICAgZGVzdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpLnN1YnNjcmliZShjb25uZWN0aW9uKTsKICAgICAgICAgIH0KICAgICAgICB9KSh3cmFwcGVyU291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNoYXJlID0gc2hhcmU7CiAgICBmdW5jdGlvbiBoYW5kbGVSZXNldChyZXNldCwgb24pIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAyOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gdHJ1ZSkgewogICAgICAgIHJlc2V0KCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gZmFsc2UpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdmFyIG9uU3Vic2NyaWJlciA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldCgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20ob24uYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSkuc3Vic2NyaWJlKG9uU3Vic2NyaWJlcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmVSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlUmVwbGF5ID0gdm9pZCAwOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgdmFyIHNoYXJlXzEgPSByZXF1aXJlX3NoYXJlKCk7CiAgICBmdW5jdGlvbiBzaGFyZVJlcGxheShjb25maWdPckJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIGJ1ZmZlclNpemU7CiAgICAgIHZhciByZWZDb3VudCA9IGZhbHNlOwogICAgICBpZiAoY29uZmlnT3JCdWZmZXJTaXplICYmIHR5cGVvZiBjb25maWdPckJ1ZmZlclNpemUgPT09ICJvYmplY3QiKSB7CiAgICAgICAgX2EgPSBjb25maWdPckJ1ZmZlclNpemUuYnVmZmVyU2l6ZSwgYnVmZmVyU2l6ZSA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBfYiA9IGNvbmZpZ09yQnVmZmVyU2l6ZS53aW5kb3dUaW1lLCB3aW5kb3dUaW1lID0gX2IgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2IsIF9jID0gY29uZmlnT3JCdWZmZXJTaXplLnJlZkNvdW50LCByZWZDb3VudCA9IF9jID09PSB2b2lkIDAgPyBmYWxzZSA6IF9jLCBzY2hlZHVsZXIgPSBjb25maWdPckJ1ZmZlclNpemUuc2NoZWR1bGVyOwogICAgICB9IGVsc2UgewogICAgICAgIGJ1ZmZlclNpemUgPSBjb25maWdPckJ1ZmZlclNpemUgIT09IG51bGwgJiYgY29uZmlnT3JCdWZmZXJTaXplICE9PSB2b2lkIDAgPyBjb25maWdPckJ1ZmZlclNpemUgOiBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZSh7CiAgICAgICAgY29ubmVjdG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTsKICAgICAgICB9LAogICAgICAgIHJlc2V0T25FcnJvcjogdHJ1ZSwKICAgICAgICByZXNldE9uQ29tcGxldGU6IGZhbHNlLAogICAgICAgIHJlc2V0T25SZWZDb3VudFplcm86IHJlZkNvdW50CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBzaGFyZVJlcGxheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcwp2YXIgcmVxdWlyZV9zaW5nbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzCnZhciByZXF1aXJlX3NraXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXAgPSB2b2lkIDA7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgZnVuY3Rpb24gc2tpcChjb3VudCkgewogICAgICByZXR1cm4gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKF8sIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGNvdW50IDw9IGluZGV4OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXAgPSBza2lwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNraXBMYXN0KHNraXBDb3VudCkgewogICAgICByZXR1cm4gc2tpcENvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHJpbmcgPSBuZXcgQXJyYXkoc2tpcENvdW50KTsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciB2YWx1ZUluZGV4ID0gc2VlbisrOwogICAgICAgICAgaWYgKHZhbHVlSW5kZXggPCBza2lwQ291bnQpIHsKICAgICAgICAgICAgcmluZ1t2YWx1ZUluZGV4XSA9IHZhbHVlOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGluZGV4ID0gdmFsdWVJbmRleCAlIHNraXBDb3VudDsKICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gcmluZ1tpbmRleF07CiAgICAgICAgICAgIHJpbmdbaW5kZXhdID0gdmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChvbGRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJpbmcgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcExhc3QgPSBza2lwTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcwp2YXIgcmVxdWlyZV9za2lwVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMKdmFyIHJlcXVpcmVfc2tpcFdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBza2lwV2hpbGUocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgdGFraW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuICh0YWtpbmcgfHwgKHRha2luZyA9ICFwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspKSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcFdoaWxlID0gc2tpcFdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3RhcnRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIodmFsdWVzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIChzY2hlZHVsZXIgPyBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UsIHNjaGVkdWxlcikgOiBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3RhcnRXaXRoID0gc3RhcnRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMKdmFyIHJlcXVpcmVfc3dpdGNoQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaEFsbCgpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHN3aXRjaEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gc3dpdGNoTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IHN3aXRjaE1hcF8xLnN3aXRjaE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gc3dpdGNoTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hTY2FuLmpzCnZhciByZXF1aXJlX3N3aXRjaFNjYW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcwp2YXIgcmVxdWlyZV90YWtlVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiB0YWtlVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlVW50aWwgPSB0YWtlVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlV2hpbGUocHJlZGljYXRlLCBpbmNsdXNpdmUpIHsKICAgICAgaWYgKGluY2x1c2l2ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgaW5jbHVzaXZlID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspOwogICAgICAgICAgKHJlc3VsdCB8fCBpbmNsdXNpdmUpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAhcmVzdWx0ICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdGFrZVdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzCnZhciByZXF1aXJlX3RhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGUuanMKdmFyIHJlcXVpcmVfdGhyb3R0bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm90dGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gdGhyb3R0bGUoZHVyYXRpb25TZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSBjb25maWcgIT09IG51bGwgJiYgY29uZmlnICE9PSB2b2lkIDAgPyBjb25maWcgOiB7fSwgX2IgPSBfYS5sZWFkaW5nLCBsZWFkaW5nID0gX2IgPT09IHZvaWQgMCA/IHRydWUgOiBfYiwgX2MgPSBfYS50cmFpbGluZywgdHJhaWxpbmcgPSBfYyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYzsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgc2VuZFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmRUaHJvdHRsaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB0aHJvdHRsZWQgPT09IG51bGwgfHwgdGhyb3R0bGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aHJvdHRsZWQudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpZiAodHJhaWxpbmcpIHsKICAgICAgICAgICAgc2VuZCgpOwogICAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0VGhyb3R0bGUgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRocm90dGxlZCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmRUaHJvdHRsaW5nLCBjbGVhbnVwVGhyb3R0bGluZykpOwogICAgICAgIH07CiAgICAgICAgdmFyIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBzZW5kVmFsdWU7CiAgICAgICAgICAgIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICFpc0NvbXBsZXRlICYmIHN0YXJ0VGhyb3R0bGUodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHNlbmRWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgISh0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIChsZWFkaW5nID8gc2VuZCgpIDogc3RhcnRUaHJvdHRsZSh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaXNDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAhKHRyYWlsaW5nICYmIGhhc1ZhbHVlICYmIHRocm90dGxlZCAmJiAhdGhyb3R0bGVkLmNsb3NlZCkgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHRocm90dGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiB0aHJvdHRsZVRpbWUoZHVyYXRpb24sIHNjaGVkdWxlciwgY29uZmlnKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uJCA9IHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbiQ7CiAgICAgIH0sIGNvbmZpZyk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB0aHJvdHRsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfdGltZUludGVydmFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0V2l0aC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIHRpbWVvdXRfMSA9IHJlcXVpcmVfdGltZW91dCgpOwogICAgZnVuY3Rpb24gdGltZW91dFdpdGgoZHVlLCB3aXRoT2JzZXJ2YWJsZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBmaXJzdDsKICAgICAgdmFyIGVhY2g7CiAgICAgIHZhciBfd2l0aDsKICAgICAgc2NoZWR1bGVyID0gc2NoZWR1bGVyICE9PSBudWxsICYmIHNjaGVkdWxlciAhPT0gdm9pZCAwID8gc2NoZWR1bGVyIDogYXN5bmNfMS5hc3luYzsKICAgICAgaWYgKGlzRGF0ZV8xLmlzVmFsaWREYXRlKGR1ZSkpIHsKICAgICAgICBmaXJzdCA9IGR1ZTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZHVlID09PSAibnVtYmVyIikgewogICAgICAgIGVhY2ggPSBkdWU7CiAgICAgIH0KICAgICAgaWYgKHdpdGhPYnNlcnZhYmxlKSB7CiAgICAgICAgX3dpdGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB3aXRoT2JzZXJ2YWJsZTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9ic2VydmFibGUgcHJvdmlkZWQgdG8gc3dpdGNoIHRvIik7CiAgICAgIH0KICAgICAgaWYgKGZpcnN0ID09IG51bGwgJiYgZWFjaCA9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gdGltZW91dCBwcm92aWRlZC4iKTsKICAgICAgfQogICAgICByZXR1cm4gdGltZW91dF8xLnRpbWVvdXQoewogICAgICAgIGZpcnN0LAogICAgICAgIGVhY2gsCiAgICAgICAgc2NoZWR1bGVyLAogICAgICAgIHdpdGg6IF93aXRoCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dFdpdGggPSB0aW1lb3V0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXN0YW1wID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiB0aW1lc3RhbXAyKHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmICh0aW1lc3RhbXBQcm92aWRlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGltZXN0YW1wUHJvdmlkZXIgPSBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMS5kYXRlVGltZXN0YW1wUHJvdmlkZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHJldHVybiB7IHZhbHVlLCB0aW1lc3RhbXA6IHRpbWVzdGFtcFByb3ZpZGVyLm5vdygpIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZXN0YW1wID0gdGltZXN0YW1wMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcwp2YXIgcmVxdWlyZV93aW5kb3cgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiB3aW5kb3cyKHdpbmRvd0JvdW5kYXJpZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHZhciBlcnJvckhhbmRsZXIgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93U3ViamVjdCA9PT0gbnVsbCB8fCB3aW5kb3dTdWJqZWN0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiB3aW5kb3dTdWJqZWN0Lm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGVycm9ySGFuZGxlcikpOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbSh3aW5kb3dCb3VuZGFyaWVzKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3AsIGVycm9ySGFuZGxlcikpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93U3ViamVjdCA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3cgPSB3aW5kb3cyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMKdmFyIHJlcXVpcmVfd2luZG93Q291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd0NvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dDb3VudCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dDb3VudCh3aW5kb3dTaXplLCBzdGFydFdpbmRvd0V2ZXJ5KSB7CiAgICAgIGlmIChzdGFydFdpbmRvd0V2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydFdpbmRvd0V2ZXJ5ID0gMDsKICAgICAgfQogICAgICB2YXIgc3RhcnRFdmVyeSA9IHN0YXJ0V2luZG93RXZlcnkgPiAwID8gc3RhcnRXaW5kb3dFdmVyeSA6IHdpbmRvd1NpemU7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtuZXcgU3ViamVjdF8xLlN1YmplY3QoKV07CiAgICAgICAgdmFyIHN0YXJ0cyA9IFtdOwogICAgICAgIHZhciBjb3VudCA9IDA7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd3NbMF0uYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIHdpbmRvd3NfMSA9IF9fdmFsdWVzKHdpbmRvd3MpLCB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCk7ICF3aW5kb3dzXzFfMS5kb25lOyB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NfMV8xICYmICF3aW5kb3dzXzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgYyA9IGNvdW50IC0gd2luZG93U2l6ZSArIDE7CiAgICAgICAgICBpZiAoYyA+PSAwICYmIGMgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCsrY291bnQgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93XzIpOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93XzIuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKHdpbmRvd3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICh3aW5kb3dzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGFydHMgPSBudWxsOwogICAgICAgICAgd2luZG93cyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpbmRvd0NvdW50ID0gd2luZG93Q291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUaW1lLmpzCnZhciByZXF1aXJlX3dpbmRvd1RpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUaW1lKHdpbmRvd1RpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhXaW5kb3dTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd1JlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uQ2xvc2UgPSBmYWxzZTsKICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gcmVjb3JkLndpbmRvdywgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd1JlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSAmJiBzdGFydFdpbmRvdygpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0V2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAod2luZG93UmVjb3JkcykgewogICAgICAgICAgICB2YXIgc3VicyA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoc3Vicyk7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgd2luZG93OiB3aW5kb3dfMSwKICAgICAgICAgICAgICBzdWJzLAogICAgICAgICAgICAgIHNlZW46IDAKICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93UmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18xLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNsb3NlV2luZG93KHJlY29yZF8xKTsKICAgICAgICAgICAgfSwgd2luZG93VGltZVNwYW4pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgaWYgKHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgIT09IG51bGwgJiYgd2luZG93Q3JlYXRpb25JbnRlcnZhbCA+PSAwKSB7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBzdGFydFdpbmRvdywgd2luZG93Q3JlYXRpb25JbnRlcnZhbCwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3RhcnRPbkNsb3NlID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRXaW5kb3coKTsKICAgICAgICB2YXIgbG9vcCA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93UmVjb3Jkcy5zbGljZSgpLmZvckVhY2goY2IpOwogICAgICAgIH07CiAgICAgICAgdmFyIHRlcm1pbmF0ZSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBsb29wKGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgICB2YXIgd2luZG93MiA9IF9hMi53aW5kb3c7CiAgICAgICAgICAgIHJldHVybiBjYih3aW5kb3cyKTsKICAgICAgICAgIH0pOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbG9vcChmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgICAgcmVjb3JkLndpbmRvdy5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgbWF4V2luZG93U2l6ZSA8PSArK3JlY29yZC5zZWVuICYmIGNsb3NlV2luZG93KHJlY29yZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93UmVjb3JkcyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gd2luZG93VGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1RvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtdOwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93Mik7CiAgICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBjbG9zZVdpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUod2luZG93cywgd2luZG93Mik7CiAgICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24uYWRkKGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGNsb3NlV2luZG93LCBub29wXzEubm9vcCwgaGFuZGxlRXJyb3IpKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB2YXIgd2luZG93c0NvcHkgPSB3aW5kb3dzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciB3aW5kb3dzQ29weV8xID0gX192YWx1ZXMod2luZG93c0NvcHkpLCB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKTsgIXdpbmRvd3NDb3B5XzFfMS5kb25lOyB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IHdpbmRvd3NDb3B5XzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NDb3B5XzFfMSAmJiAhd2luZG93c0NvcHlfMV8xLmRvbmUgJiYgKF9hID0gd2luZG93c0NvcHlfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBoYW5kbGVFcnJvciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoMCA8IHdpbmRvd3MubGVuZ3RoKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUb2dnbGUgPSB3aW5kb3dUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzCnZhciByZXF1aXJlX3dpbmRvd1doZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1doZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1doZW4gPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1doZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93MjsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXI7CiAgICAgICAgdmFyIGhhbmRsZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3cyLmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICB2YXIgb3BlbldpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID09PSBudWxsIHx8IHdpbmRvdzIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHdpbmRvdzIgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKCkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbldpbmRvdywgb3BlbldpbmRvdywgaGFuZGxlRXJyb3IpKTsKICAgICAgICB9OwogICAgICAgIG9wZW5XaW5kb3coKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvdzIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93V2hlbiA9IHdpbmRvd1doZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aXRoTGF0ZXN0RnJvbS5qcwp2YXIgcmVxdWlyZV93aXRoTGF0ZXN0RnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIGZ1bmN0aW9uIHdpdGhMYXRlc3RGcm9tKCkgewogICAgICB2YXIgaW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgaW5wdXRzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHByb2plY3QgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoaW5wdXRzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBsZW4gPSBpbnB1dHMubGVuZ3RoOwogICAgICAgIHZhciBvdGhlclZhbHVlcyA9IG5ldyBBcnJheShsZW4pOwogICAgICAgIHZhciBoYXNWYWx1ZSA9IGlucHV0cy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlYWR5ID0gZmFsc2U7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0c1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgb3RoZXJWYWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgIGlmICghcmVhZHkgJiYgIWhhc1ZhbHVlW2kyXSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlW2kyXSA9IHRydWU7CiAgICAgICAgICAgICAgKHJlYWR5ID0gaGFzVmFsdWUuZXZlcnkoaWRlbnRpdHlfMS5pZGVudGl0eSkpICYmIChoYXNWYWx1ZSA9IG51bGwpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgX2xvb3BfMShpKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmIChyZWFkeSkgewogICAgICAgICAgICB2YXIgdmFsdWVzID0gX19zcHJlYWRBcnJheShbdmFsdWVdLCBfX3JlYWQob3RoZXJWYWx1ZXMpKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QgPyBwcm9qZWN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSA6IHZhbHVlcyk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gd2l0aExhdGVzdEZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMKdmFyIHJlcXVpcmVfemlwQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcEFsbCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiB6aXBBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoemlwXzEuemlwLCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLnppcEFsbCA9IHppcEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiB6aXAoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoc291cmNlcykpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuemlwID0gemlwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwV2l0aC5qcwp2YXIgcmVxdWlyZV96aXBXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBXaXRoID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAyKCk7CiAgICBmdW5jdGlvbiB6aXBXaXRoKCkgewogICAgICB2YXIgb3RoZXJJbnB1dHMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlcklucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJJbnB1dHMpKSk7CiAgICB9CiAgICBleHBvcnRzMi56aXBXaXRoID0gemlwV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW5kZXguanMKdmFyIHJlcXVpcmVfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBtW2tdOwogICAgICB9IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbCA9IGV4cG9ydHMyLmlpZiA9IGV4cG9ydHMyLmdlbmVyYXRlID0gZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IGV4cG9ydHMyLmZyb21FdmVudCA9IGV4cG9ydHMyLmZyb20gPSBleHBvcnRzMi5mb3JrSm9pbiA9IGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuZGVmZXIgPSBleHBvcnRzMi5jb25uZWN0YWJsZSA9IGV4cG9ydHMyLmNvbmNhdCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gZXhwb3J0czIuYmluZENhbGxiYWNrID0gZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGV4cG9ydHMyLlNlcXVlbmNlRXJyb3IgPSBleHBvcnRzMi5PYmplY3RVbnN1YnNjcmliZWRFcnJvciA9IGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBleHBvcnRzMi5FbXB0eUVycm9yID0gZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5pc09ic2VydmFibGUgPSBleHBvcnRzMi5pZGVudGl0eSA9IGV4cG9ydHMyLm5vb3AgPSBleHBvcnRzMi5waXBlID0gZXhwb3J0czIuTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLlN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSBleHBvcnRzMi5TY2hlZHVsZXIgPSBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBleHBvcnRzMi5xdWV1ZSA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gZXhwb3J0czIuYXN5bmMgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IGV4cG9ydHMyLlJlcGxheVN1YmplY3QgPSBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBleHBvcnRzMi5TdWJqZWN0ID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVzID0gZXhwb3J0czIub2JzZXJ2YWJsZSA9IGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IGV4cG9ydHMyLk9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5maWx0ZXIgPSBleHBvcnRzMi5leHBhbmQgPSBleHBvcnRzMi5leGhhdXN0TWFwID0gZXhwb3J0czIuZXhoYXVzdEFsbCA9IGV4cG9ydHMyLmV4aGF1c3QgPSBleHBvcnRzMi5ldmVyeSA9IGV4cG9ydHMyLmVuZFdpdGggPSBleHBvcnRzMi5lbGVtZW50QXQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZXhwb3J0czIuZGlzdGluY3QgPSBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gZXhwb3J0czIuZGVsYXlXaGVuID0gZXhwb3J0czIuZGVsYXkgPSBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGV4cG9ydHMyLmRlYm91bmNlID0gZXhwb3J0czIuY291bnQgPSBleHBvcnRzMi5jb25uZWN0ID0gZXhwb3J0czIuY29uY2F0V2l0aCA9IGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gZXhwb3J0czIuY29uY2F0TWFwID0gZXhwb3J0czIuY29uY2F0QWxsID0gZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0QWxsID0gZXhwb3J0czIuY29tYmluZUFsbCA9IGV4cG9ydHMyLmNhdGNoRXJyb3IgPSBleHBvcnRzMi5idWZmZXJXaGVuID0gZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gZXhwb3J0czIuYnVmZmVyVGltZSA9IGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gZXhwb3J0czIuYnVmZmVyID0gZXhwb3J0czIuYXVkaXRUaW1lID0gZXhwb3J0czIuYXVkaXQgPSBleHBvcnRzMi5jb25maWcgPSBleHBvcnRzMi5ORVZFUiA9IGV4cG9ydHMyLkVNUFRZID0gZXhwb3J0czIuc2NoZWR1bGVkID0gZXhwb3J0czIuemlwID0gZXhwb3J0czIudXNpbmcgPSBleHBvcnRzMi50aW1lciA9IGV4cG9ydHMyLnRocm93RXJyb3IgPSBleHBvcnRzMi5yYW5nZSA9IGV4cG9ydHMyLnJhY2UgPSBleHBvcnRzMi5wYXJ0aXRpb24gPSBleHBvcnRzMi5wYWlycyA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub2YgPSBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLm1lcmdlID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3dpdGNoTWFwID0gZXhwb3J0czIuc3dpdGNoQWxsID0gZXhwb3J0czIuc3Vic2NyaWJlT24gPSBleHBvcnRzMi5zdGFydFdpdGggPSBleHBvcnRzMi5za2lwV2hpbGUgPSBleHBvcnRzMi5za2lwVW50aWwgPSBleHBvcnRzMi5za2lwTGFzdCA9IGV4cG9ydHMyLnNraXAgPSBleHBvcnRzMi5zaW5nbGUgPSBleHBvcnRzMi5zaGFyZVJlcGxheSA9IGV4cG9ydHMyLnNoYXJlID0gZXhwb3J0czIuc2VxdWVuY2VFcXVhbCA9IGV4cG9ydHMyLnNjYW4gPSBleHBvcnRzMi5zYW1wbGVUaW1lID0gZXhwb3J0czIuc2FtcGxlID0gZXhwb3J0czIucmVmQ291bnQgPSBleHBvcnRzMi5yZXRyeVdoZW4gPSBleHBvcnRzMi5yZXRyeSA9IGV4cG9ydHMyLnJlcGVhdFdoZW4gPSBleHBvcnRzMi5yZXBlYXQgPSBleHBvcnRzMi5yZWR1Y2UgPSBleHBvcnRzMi5yYWNlV2l0aCA9IGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IGV4cG9ydHMyLnB1Ymxpc2hCZWhhdmlvciA9IGV4cG9ydHMyLnB1Ymxpc2ggPSBleHBvcnRzMi5wbHVjayA9IGV4cG9ydHMyLnBhaXJ3aXNlID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gZXhwb3J0czIub2JzZXJ2ZU9uID0gZXhwb3J0czIubXVsdGljYXN0ID0gZXhwb3J0czIubWluID0gZXhwb3J0czIubWVyZ2VXaXRoID0gZXhwb3J0czIubWVyZ2VTY2FuID0gZXhwb3J0czIubWVyZ2VNYXBUbyA9IGV4cG9ydHMyLm1lcmdlTWFwID0gZXhwb3J0czIuZmxhdE1hcCA9IGV4cG9ydHMyLm1lcmdlQWxsID0gZXhwb3J0czIubWF4ID0gZXhwb3J0czIubWF0ZXJpYWxpemUgPSBleHBvcnRzMi5tYXBUbyA9IGV4cG9ydHMyLm1hcCA9IGV4cG9ydHMyLmxhc3QgPSBleHBvcnRzMi5pc0VtcHR5ID0gZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSBleHBvcnRzMi5ncm91cEJ5ID0gZXhwb3J0czIuZmlyc3QgPSBleHBvcnRzMi5maW5kSW5kZXggPSBleHBvcnRzMi5maW5kID0gZXhwb3J0czIuZmluYWxpemUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi56aXBXaXRoID0gZXhwb3J0czIuemlwQWxsID0gZXhwb3J0czIud2l0aExhdGVzdEZyb20gPSBleHBvcnRzMi53aW5kb3dXaGVuID0gZXhwb3J0czIud2luZG93VG9nZ2xlID0gZXhwb3J0czIud2luZG93VGltZSA9IGV4cG9ydHMyLndpbmRvd0NvdW50ID0gZXhwb3J0czIud2luZG93ID0gZXhwb3J0czIudG9BcnJheSA9IGV4cG9ydHMyLnRpbWVzdGFtcCA9IGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IGV4cG9ydHMyLnRocm90dGxlVGltZSA9IGV4cG9ydHMyLnRocm90dGxlID0gZXhwb3J0czIudGFwID0gZXhwb3J0czIudGFrZVdoaWxlID0gZXhwb3J0czIudGFrZVVudGlsID0gZXhwb3J0czIudGFrZUxhc3QgPSBleHBvcnRzMi50YWtlID0gZXhwb3J0czIuc3dpdGNoU2NhbiA9IGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9ic2VydmFibGVfMS5PYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb25uZWN0YWJsZU9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9ic2VydmFibGVfMS5vYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZXNfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZXMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZXNfMS5hbmltYXRpb25GcmFtZXM7CiAgICB9IH0pOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YmplY3RfMS5TdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBCZWhhdmlvclN1YmplY3RfMSA9IHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJCZWhhdmlvclN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiUmVwbGF5U3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFJlcGxheVN1YmplY3RfMS5SZXBsYXlTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBBc3luY1N1YmplY3RfMSA9IHJlcXVpcmVfQXN5bmNTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJBc3luY1N1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBc3luY1N1YmplY3RfMS5Bc3luY1N1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIGFzYXBfMSA9IHJlcXVpcmVfYXNhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXNhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzYXBfMS5hc2FwOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXBTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcFNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzeW5jIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXN5bmNfMS5hc3luYzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luY1NjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIHF1ZXVlXzEgPSByZXF1aXJlX3F1ZXVlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJxdWV1ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHF1ZXVlXzEucXVldWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWVTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZV8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZV8xLmFuaW1hdGlvbkZyYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgVmlydHVhbFRpbWVTY2hlZHVsZXJfMSA9IHJlcXVpcmVfVmlydHVhbFRpbWVTY2hlZHVsZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZpcnR1YWxUaW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsVGltZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsQWN0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsQWN0aW9uOwogICAgfSB9KTsKICAgIHZhciBTY2hlZHVsZXJfMSA9IHJlcXVpcmVfU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTY2hlZHVsZXJfMS5TY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YnNjcmlwdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9TdWJzY3JpYmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpYmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU3Vic2NyaWJlcl8xLlN1YnNjcmliZXI7CiAgICB9IH0pOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5vdGlmaWNhdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb25LaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uS2luZDsKICAgIH0gfSk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwaXBlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGlwZV8xLnBpcGU7CiAgICB9IH0pOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibm9vcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5vb3BfMS5ub29wOwogICAgfSB9KTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWRlbnRpdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfSB9KTsKICAgIHZhciBpc09ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpc09ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc09ic2VydmFibGVfMS5pc09ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIGxhc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfbGFzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibGFzdFZhbHVlRnJvbSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb21fMS5sYXN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBmaXJzdFZhbHVlRnJvbV8xID0gcmVxdWlyZV9maXJzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmlyc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbV8xLmZpcnN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xID0gcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yOwogICAgfSB9KTsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkVtcHR5RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgTm90Rm91bmRFcnJvcl8xID0gcmVxdWlyZV9Ob3RGb3VuZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RGb3VuZEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJPYmplY3RVbnN1YnNjcmliZWRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2VxdWVuY2VFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFNlcXVlbmNlRXJyb3JfMS5TZXF1ZW5jZUVycm9yOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzEgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlRpbWVvdXRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRfMS5UaW1lb3V0RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFVuc3Vic2NyaXB0aW9uRXJyb3JfMSA9IHJlcXVpcmVfVW5zdWJzY3JpcHRpb25FcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVW5zdWJzY3JpcHRpb25FcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yOwogICAgfSB9KTsKICAgIHZhciBiaW5kQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJiaW5kQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tfMS5iaW5kQ2FsbGJhY2s7CiAgICB9IH0pOwogICAgdmFyIGJpbmROb2RlQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZE5vZGVDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZE5vZGVDYWxsYmFjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJpbmROb2RlQ2FsbGJhY2tfMS5iaW5kTm9kZUNhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0XzEuY29tYmluZUxhdGVzdDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0OwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0YWJsZV8xID0gcmVxdWlyZV9jb25uZWN0YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29ubmVjdGFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0YWJsZV8xLmNvbm5lY3RhYmxlOwogICAgfSB9KTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8xLmVtcHR5OwogICAgfSB9KTsKICAgIHZhciBmb3JrSm9pbl8xID0gcmVxdWlyZV9mb3JrSm9pbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZm9ya0pvaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmb3JrSm9pbl8xLmZvcmtKb2luOwogICAgfSB9KTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tXzEuZnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50XzEgPSByZXF1aXJlX2Zyb21FdmVudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZnJvbUV2ZW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50XzEuZnJvbUV2ZW50OwogICAgfSB9KTsKICAgIHZhciBmcm9tRXZlbnRQYXR0ZXJuXzEgPSByZXF1aXJlX2Zyb21FdmVudFBhdHRlcm4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudFBhdHRlcm4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tRXZlbnRQYXR0ZXJuXzEuZnJvbUV2ZW50UGF0dGVybjsKICAgIH0gfSk7CiAgICB2YXIgZ2VuZXJhdGVfMSA9IHJlcXVpcmVfZ2VuZXJhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdlbmVyYXRlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ2VuZXJhdGVfMS5nZW5lcmF0ZTsKICAgIH0gfSk7CiAgICB2YXIgaWlmXzEgPSByZXF1aXJlX2lpZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWlmIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWlmXzEuaWlmOwogICAgfSB9KTsKICAgIHZhciBpbnRlcnZhbF8xID0gcmVxdWlyZV9pbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaW50ZXJ2YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpbnRlcnZhbF8xLmludGVydmFsOwogICAgfSB9KTsKICAgIHZhciBtZXJnZV8xID0gcmVxdWlyZV9tZXJnZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8xID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmV2ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8xLm5ldmVyOwogICAgfSB9KTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2YiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvZl8xLm9mOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib25FcnJvclJlc3VtZU5leHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0OwogICAgfSB9KTsKICAgIHZhciBwYWlyc18xID0gcmVxdWlyZV9wYWlycygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFpcnMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYWlyc18xLnBhaXJzOwogICAgfSB9KTsKICAgIHZhciBwYXJ0aXRpb25fMSA9IHJlcXVpcmVfcGFydGl0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYXJ0aXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYXJ0aXRpb25fMS5wYXJ0aXRpb247CiAgICB9IH0pOwogICAgdmFyIHJhY2VfMSA9IHJlcXVpcmVfcmFjZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VfMS5yYWNlOwogICAgfSB9KTsKICAgIHZhciByYW5nZV8xID0gcmVxdWlyZV9yYW5nZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFuZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYW5nZV8xLnJhbmdlOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXJfMS50aW1lcjsKICAgIH0gfSk7CiAgICB2YXIgdXNpbmdfMSA9IHJlcXVpcmVfdXNpbmcoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInVzaW5nIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdXNpbmdfMS51c2luZzsKICAgIH0gfSk7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwXzEuemlwOwogICAgfSB9KTsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2hlZHVsZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZWRfMS5zY2hlZHVsZWQ7CiAgICB9IH0pOwogICAgdmFyIGVtcHR5XzIgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFTVBUWSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVtcHR5XzIuRU1QVFk7CiAgICB9IH0pOwogICAgdmFyIG5ldmVyXzIgPSByZXF1aXJlX25ldmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJORVZFUiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5ldmVyXzIuTkVWRVI7CiAgICB9IH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHlwZXMyKCksIGV4cG9ydHMyKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25maWciLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25maWdfMS5jb25maWc7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQ7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0VGltZV8xID0gcmVxdWlyZV9hdWRpdFRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImF1ZGl0VGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0VGltZV8xLmF1ZGl0VGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyXzEuYnVmZmVyOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJDb3VudF8xID0gcmVxdWlyZV9idWZmZXJDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyQ291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJDb3VudF8xLmJ1ZmZlckNvdW50OwogICAgfSB9KTsKICAgIHZhciBidWZmZXJUaW1lXzEgPSByZXF1aXJlX2J1ZmZlclRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJUaW1lXzEuYnVmZmVyVGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVG9nZ2xlXzEgPSByZXF1aXJlX2J1ZmZlclRvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyVG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVG9nZ2xlXzEuYnVmZmVyVG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJXaGVuXzEgPSByZXF1aXJlX2J1ZmZlcldoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlcldoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJXaGVuXzEuYnVmZmVyV2hlbjsKICAgIH0gfSk7CiAgICB2YXIgY2F0Y2hFcnJvcl8xID0gcmVxdWlyZV9jYXRjaEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjYXRjaEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY2F0Y2hFcnJvcl8xLmNhdGNoRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVBbGxfMSA9IHJlcXVpcmVfY29tYmluZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29tYmluZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVBbGxfMS5jb21iaW5lQWxsOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0QWxsXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0QWxsXzEuY29tYmluZUxhdGVzdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdFdpdGhfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdFdpdGhfMS5jb21iaW5lTGF0ZXN0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBfMSA9IHJlcXVpcmVfY29uY2F0TWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBfMS5jb25jYXRNYXA7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdE1hcFRvXzEgPSByZXF1aXJlX2NvbmNhdE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdE1hcFRvXzEuY29uY2F0TWFwVG87CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdFdpdGhfMSA9IHJlcXVpcmVfY29uY2F0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdFdpdGhfMS5jb25jYXRXaXRoOwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdDsKICAgIH0gfSk7CiAgICB2YXIgY291bnRfMSA9IHJlcXVpcmVfY291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY291bnRfMS5jb3VudDsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VfMSA9IHJlcXVpcmVfZGVib3VuY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VfMS5kZWJvdW5jZTsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VUaW1lXzEgPSByZXF1aXJlX2RlYm91bmNlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVib3VuY2VUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VUaW1lXzEuZGVib3VuY2VUaW1lOwogICAgfSB9KTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmYXVsdElmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5OwogICAgfSB9KTsKICAgIHZhciBkZWxheV8xID0gcmVxdWlyZV9kZWxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheV8xLmRlbGF5OwogICAgfSB9KTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWxheVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW47CiAgICB9IH0pOwogICAgdmFyIGRlbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfZGVtYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVtYXRlcmlhbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlbWF0ZXJpYWxpemVfMS5kZW1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdF8xID0gcmVxdWlyZV9kaXN0aW5jdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdF8xLmRpc3RpbmN0OwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbENoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbEtleUNoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBlbGVtZW50QXRfMSA9IHJlcXVpcmVfZWxlbWVudEF0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJlbGVtZW50QXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbGVtZW50QXRfMS5lbGVtZW50QXQ7CiAgICB9IH0pOwogICAgdmFyIGVuZFdpdGhfMSA9IHJlcXVpcmVfZW5kV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW5kV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVuZFdpdGhfMS5lbmRXaXRoOwogICAgfSB9KTsKICAgIHZhciBldmVyeV8xID0gcmVxdWlyZV9ldmVyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXZlcnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBldmVyeV8xLmV2ZXJ5OwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0XzEgPSByZXF1aXJlX2V4aGF1c3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0XzEuZXhoYXVzdDsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdEFsbF8xID0gcmVxdWlyZV9leGhhdXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdEFsbF8xLmV4aGF1c3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RNYXBfMSA9IHJlcXVpcmVfZXhoYXVzdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RNYXBfMS5leGhhdXN0TWFwOwogICAgfSB9KTsKICAgIHZhciBleHBhbmRfMSA9IHJlcXVpcmVfZXhwYW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleHBhbmQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleHBhbmRfMS5leHBhbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbHRlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbHRlcl8xLmZpbHRlcjsKICAgIH0gfSk7CiAgICB2YXIgZmluYWxpemVfMSA9IHJlcXVpcmVfZmluYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluYWxpemVfMS5maW5hbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluZF8xLmZpbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbmRJbmRleF8xID0gcmVxdWlyZV9maW5kSW5kZXgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmRJbmRleCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRJbmRleF8xLmZpbmRJbmRleDsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RfMSA9IHJlcXVpcmVfZmlyc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RfMS5maXJzdDsKICAgIH0gfSk7CiAgICB2YXIgZ3JvdXBCeV8xID0gcmVxdWlyZV9ncm91cEJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJncm91cEJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ3JvdXBCeV8xLmdyb3VwQnk7CiAgICB9IH0pOwogICAgdmFyIGlnbm9yZUVsZW1lbnRzXzEgPSByZXF1aXJlX2lnbm9yZUVsZW1lbnRzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpZ25vcmVFbGVtZW50cyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlnbm9yZUVsZW1lbnRzXzEuaWdub3JlRWxlbWVudHM7CiAgICB9IH0pOwogICAgdmFyIGlzRW1wdHlfMSA9IHJlcXVpcmVfaXNFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlzRW1wdHlfMS5pc0VtcHR5OwogICAgfSB9KTsKICAgIHZhciBsYXN0XzEgPSByZXF1aXJlX2xhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0XzEubGFzdDsKICAgIH0gfSk7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwXzEubWFwOwogICAgfSB9KTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXBUb18xLm1hcFRvOwogICAgfSB9KTsKICAgIHZhciBtYXRlcmlhbGl6ZV8xID0gcmVxdWlyZV9tYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXRlcmlhbGl6ZV8xLm1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBtYXhfMSA9IHJlcXVpcmVfbWF4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtYXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXhfMS5tYXg7CiAgICB9IH0pOwogICAgdmFyIG1lcmdlQWxsXzEgPSByZXF1aXJlX21lcmdlQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlQWxsXzEubWVyZ2VBbGw7CiAgICB9IH0pOwogICAgdmFyIGZsYXRNYXBfMSA9IHJlcXVpcmVfZmxhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmxhdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZsYXRNYXBfMS5mbGF0TWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcFRvXzEgPSByZXF1aXJlX21lcmdlTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcFRvXzEubWVyZ2VNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VTY2FuXzEgPSByZXF1aXJlX21lcmdlU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VTY2FuXzEubWVyZ2VTY2FuOwogICAgfSB9KTsKICAgIHZhciBtZXJnZVdpdGhfMSA9IHJlcXVpcmVfbWVyZ2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZVdpdGhfMS5tZXJnZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIG1pbl8xID0gcmVxdWlyZV9taW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1pbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1pbl8xLm1pbjsKICAgIH0gfSk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibXVsdGljYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0OwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvYnNlcnZlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZlT25fMS5vYnNlcnZlT247CiAgICB9IH0pOwogICAgdmFyIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xLm9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcndpc2VfMSA9IHJlcXVpcmVfcGFpcndpc2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJ3aXNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcndpc2VfMS5wYWlyd2lzZTsKICAgIH0gfSk7CiAgICB2YXIgcGx1Y2tfMSA9IHJlcXVpcmVfcGx1Y2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBsdWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGx1Y2tfMS5wbHVjazsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaF8xID0gcmVxdWlyZV9wdWJsaXNoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaF8xLnB1Ymxpc2g7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hCZWhhdmlvcl8xID0gcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hCZWhhdmlvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hCZWhhdmlvcl8xLnB1Ymxpc2hCZWhhdmlvcjsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaExhc3RfMSA9IHJlcXVpcmVfcHVibGlzaExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaExhc3RfMS5wdWJsaXNoTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaFJlcGxheV8xID0gcmVxdWlyZV9wdWJsaXNoUmVwbGF5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaFJlcGxheV8xLnB1Ymxpc2hSZXBsYXk7CiAgICB9IH0pOwogICAgdmFyIHJhY2VXaXRoXzEgPSByZXF1aXJlX3JhY2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyYWNlV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VXaXRoXzEucmFjZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZHVjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZTsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0XzEyID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xMi5yZXBlYXQ7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdFdoZW5fMSA9IHJlcXVpcmVfcmVwZWF0V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVwZWF0V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdFdoZW5fMS5yZXBlYXRXaGVuOwogICAgfSB9KTsKICAgIHZhciByZXRyeV8xID0gcmVxdWlyZV9yZXRyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmV0cnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeV8xLnJldHJ5OwogICAgfSB9KTsKICAgIHZhciByZXRyeVdoZW5fMSA9IHJlcXVpcmVfcmV0cnlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeVdoZW5fMS5yZXRyeVdoZW47CiAgICB9IH0pOwogICAgdmFyIHJlZkNvdW50XzEgPSByZXF1aXJlX3JlZkNvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWZDb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZkNvdW50XzEucmVmQ291bnQ7CiAgICB9IH0pOwogICAgdmFyIHNhbXBsZV8xID0gcmVxdWlyZV9zYW1wbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZTsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlVGltZV8xID0gcmVxdWlyZV9zYW1wbGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzYW1wbGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlVGltZV8xLnNhbXBsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHNjYW5fMSA9IHJlcXVpcmVfc2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjYW5fMS5zY2FuOwogICAgfSB9KTsKICAgIHZhciBzZXF1ZW5jZUVxdWFsXzEgPSByZXF1aXJlX3NlcXVlbmNlRXF1YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNlcXVlbmNlRXF1YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzZXF1ZW5jZUVxdWFsXzEuc2VxdWVuY2VFcXVhbDsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVfMSA9IHJlcXVpcmVfc2hhcmUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZTsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVSZXBsYXlfMSA9IHJlcXVpcmVfc2hhcmVSZXBsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVSZXBsYXlfMS5zaGFyZVJlcGxheTsKICAgIH0gfSk7CiAgICB2YXIgc2luZ2xlXzEgPSByZXF1aXJlX3NpbmdsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2luZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2luZ2xlXzEuc2luZ2xlOwogICAgfSB9KTsKICAgIHZhciBza2lwXzEgPSByZXF1aXJlX3NraXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwXzEuc2tpcDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcExhc3RfMSA9IHJlcXVpcmVfc2tpcExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcExhc3RfMS5za2lwTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcFVudGlsXzEgPSByZXF1aXJlX3NraXBVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcFVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcFVudGlsXzEuc2tpcFVudGlsOwogICAgfSB9KTsKICAgIHZhciBza2lwV2hpbGVfMSA9IHJlcXVpcmVfc2tpcFdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwV2hpbGVfMS5za2lwV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHN0YXJ0V2l0aF8xID0gcmVxdWlyZV9zdGFydFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0YXJ0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN0YXJ0V2l0aF8xLnN0YXJ0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN1YnNjcmliZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbjsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoQWxsXzEgPSByZXF1aXJlX3N3aXRjaEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoQWxsXzEuc3dpdGNoQWxsOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXA7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcFRvXzEgPSByZXF1aXJlX3N3aXRjaE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcFRvXzEuc3dpdGNoTWFwVG87CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaFNjYW5fMSA9IHJlcXVpcmVfc3dpdGNoU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaFNjYW5fMS5zd2l0Y2hTY2FuOwogICAgfSB9KTsKICAgIHZhciB0YWtlXzEgPSByZXF1aXJlX3Rha2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlXzEudGFrZTsKICAgIH0gfSk7CiAgICB2YXIgdGFrZUxhc3RfMSA9IHJlcXVpcmVfdGFrZUxhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZUxhc3RfMS50YWtlTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgdGFrZVVudGlsXzEgPSByZXF1aXJlX3Rha2VVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZVVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZVVudGlsXzEudGFrZVVudGlsOwogICAgfSB9KTsKICAgIHZhciB0YWtlV2hpbGVfMSA9IHJlcXVpcmVfdGFrZVdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlV2hpbGVfMS50YWtlV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHRhcF8xID0gcmVxdWlyZV90YXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRhcF8xLnRhcDsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVfMSA9IHJlcXVpcmVfdGhyb3R0bGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm90dGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVfMS50aHJvdHRsZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVUaW1lXzEgPSByZXF1aXJlX3Rocm90dGxlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVUaW1lXzEudGhyb3R0bGVUaW1lOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0lmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHk7CiAgICB9IH0pOwogICAgdmFyIHRpbWVJbnRlcnZhbF8xID0gcmVxdWlyZV90aW1lSW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVJbnRlcnZhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVJbnRlcnZhbF8xLnRpbWVJbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8yID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dF8yLnRpbWVvdXQ7CiAgICB9IH0pOwogICAgdmFyIHRpbWVvdXRXaXRoXzEgPSByZXF1aXJlX3RpbWVvdXRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRXaXRoXzEudGltZW91dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHRpbWVzdGFtcF8xID0gcmVxdWlyZV90aW1lc3RhbXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVzdGFtcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcF8xLnRpbWVzdGFtcDsKICAgIH0gfSk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidG9BcnJheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRvQXJyYXlfMTIudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdGhJc0ZpbGVFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIEJhc2VFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSA9ICIiKSB7CiAgICAgICAgc3VwZXIobWVzc2FnZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gQmFzZUV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSkgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkV4Y2VwdGlvbiA9IFVua25vd25FeGNlcHRpb247CiAgICB2YXIgRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGRpcmVjdG9yeS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbjsKICAgIHZhciBQYXRoSXNGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGZpbGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gUGF0aElzRmlsZUV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9saXRlcmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25lTGluZSA9IG9uZUxpbmU7CiAgICBleHBvcnRzMi5pbmRlbnRCeSA9IGluZGVudEJ5OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnQgPSBzdHJpcEluZGVudDsKICAgIGV4cG9ydHMyLnN0cmlwSW5kZW50cyA9IHN0cmlwSW5kZW50czsKICAgIGV4cG9ydHMyLnRyaW1OZXdsaW5lcyA9IHRyaW1OZXdsaW5lczsKICAgIGZ1bmN0aW9uIG9uZUxpbmUoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkrL2dtLCAiICIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIGluZGVudEJ5KGluZGVudGF0aW9ucykgewogICAgICBsZXQgaSA9ICIiOwogICAgICB3aGlsZSAoaW5kZW50YXRpb25zLS0pIHsKICAgICAgICBpICs9ICIgIjsKICAgICAgfQogICAgICByZXR1cm4gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgICByZXR1cm4gaSArIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpLnJlcGxhY2UoL1xuL2csICJcbiIgKyBpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgY29uc3QgZW5kUmVzdWx0ID0gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKTsKICAgICAgY29uc3QgbWF0Y2ggPSBlbmRSZXN1bHQubWF0Y2goL15bIFx0XSooPz1cUykvZ20pOwogICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gZW5kUmVzdWx0OwogICAgICB9CiAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgubWluKC4uLm1hdGNoLm1hcCgoZWwpID0+IGVsLmxlbmd0aCkpOwogICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCJeWyBcXHRdeyIgKyBpbmRlbnQgKyAifSIsICJnbSIpOwogICAgICByZXR1cm4gKGluZGVudCA+IDAgPyBlbmRSZXN1bHQucmVwbGFjZShyZWdleHAsICIiKSA6IGVuZFJlc3VsdCkudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnRzKHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgcmV0dXJuIFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykuc3BsaXQoIlxuIikubWFwKChsaW5lKSA9PiBsaW5lLnRyaW0oKSkuam9pbigiXG4iKS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiB0cmltTmV3bGluZXMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoL14oPzpccj9cbikrLywgIiIpLnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkkLywgIiIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvc3RyaW5ncy5qcwp2YXIgcmVxdWlyZV9zdHJpbmdzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX0RFQ0FNRUxJWkVfUkVHRVhQLCAiJDFfJDIiKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gZGFzaGVyaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyMikucmVwbGFjZShTVFJJTkdfREFTSEVSSVpFX1JFR0VYUCwgIi0iKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhbWVsaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5zcGxpdCgiLiIpLm1hcCgocGFydCkgPT4gY2FwaXRhbGl6ZShjYW1lbGl6ZShwYXJ0KSkpLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gdW5kZXJzY29yZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEsICIkMV8kMiIpLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzIsICJfIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0cjIuc2xpY2UoMSk7CiAgICB9CiAgICBmdW5jdGlvbiBsZXZlbnNodGVpbihhLCBiKSB7CiAgICAgIGlmIChhLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGIubGVuZ3RoOwogICAgICB9CiAgICAgIGlmIChiLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGEubGVuZ3RoOwogICAgICB9CiAgICAgIGNvbnN0IG1hdHJpeCA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbWF0cml4W2ldID0gW2ldOwogICAgICB9CiAgICAgIGZvciAobGV0IGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICBtYXRyaXhbMF1bal0gPSBqOwogICAgICB9CiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBmb3IgKGxldCBqID0gMTsgaiA8PSBhLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICBpZiAoYi5jaGFyQXQoaSAtIDEpID09IGEuY2hhckF0KGogLSAxKSkgewogICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbaSAtIDFdW2ogLSAxXTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IE1hdGgubWluKAogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBzdWJzdGl0dXRpb24KICAgICAgICAgICAgICBtYXRyaXhbaV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBpbnNlcnRpb24KICAgICAgICAgICAgICBtYXRyaXhbaSAtIDFdW2pdICsgMQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbWF0cml4W2IubGVuZ3RoXVthLmxlbmd0aF07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMKdmFyIHJlcXVpcmVfb2JqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZXBDb3B5ID0gZGVlcENvcHk7CiAgICB2YXIgY29weVN5bWJvbCA9IFN5bWJvbCgpOwogICAgZnVuY3Rpb24gZGVlcENvcHkodmFsdWUpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgobykgPT4gZGVlcENvcHkobykpOwogICAgICB9IGVsc2UgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25zdCB2YWx1ZUNhc3RlZCA9IHZhbHVlOwogICAgICAgIGlmICh2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXSkgewogICAgICAgICAgcmV0dXJuIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWVDYXN0ZWRbInRvSlNPTiJdKSB7CiAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZUNhc3RlZFsidG9KU09OIl0oKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZUNhc3RlZCkpOwogICAgICAgIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdID0gY29weTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZUNhc3RlZCkpIHsKICAgICAgICAgIGNvcHlba2V5XSA9IGRlZXBDb3B5KHZhbHVlQ2FzdGVkW2tleV0pOwogICAgICAgIH0KICAgICAgICBkZWxldGUgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMKdmFyIHJlcXVpcmVfYmFzZTY0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgaW50VG9DaGFyTWFwID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLnNwbGl0KCIiKTsKICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uKG51bWJlcikgewogICAgICBpZiAoMCA8PSBudW1iZXIgJiYgbnVtYmVyIDwgaW50VG9DaGFyTWFwLmxlbmd0aCkgewogICAgICAgIHJldHVybiBpbnRUb0NoYXJNYXBbbnVtYmVyXTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJNdXN0IGJlIGJldHdlZW4gMCBhbmQgNjM6ICIgKyBudW1iZXIpOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC12bHEuanMKdmFyIHJlcXVpcmVfYmFzZTY0X3ZscSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LXZscS5qcyIoZXhwb3J0czIpIHsKICAgIHZhciBiYXNlNjQgPSByZXF1aXJlX2Jhc2U2NCgpOwogICAgdmFyIFZMUV9CQVNFX1NISUZUID0gNTsKICAgIHZhciBWTFFfQkFTRSA9IDEgPDwgVkxRX0JBU0VfU0hJRlQ7CiAgICB2YXIgVkxRX0JBU0VfTUFTSyA9IFZMUV9CQVNFIC0gMTsKICAgIHZhciBWTFFfQ09OVElOVUFUSU9OX0JJVCA9IFZMUV9CQVNFOwogICAgZnVuY3Rpb24gdG9WTFFTaWduZWQoYVZhbHVlKSB7CiAgICAgIHJldHVybiBhVmFsdWUgPCAwID8gKC1hVmFsdWUgPDwgMSkgKyAxIDogKGFWYWx1ZSA8PCAxKSArIDA7CiAgICB9CiAgICBleHBvcnRzMi5lbmNvZGUgPSBmdW5jdGlvbiBiYXNlNjRWTFFfZW5jb2RlKGFWYWx1ZSkgewogICAgICBsZXQgZW5jb2RlZCA9ICIiOwogICAgICBsZXQgZGlnaXQ7CiAgICAgIGxldCB2bHEgPSB0b1ZMUVNpZ25lZChhVmFsdWUpOwogICAgICBkbyB7CiAgICAgICAgZGlnaXQgPSB2bHEgJiBWTFFfQkFTRV9NQVNLOwogICAgICAgIHZscSA+Pj49IFZMUV9CQVNFX1NISUZUOwogICAgICAgIGlmICh2bHEgPiAwKSB7CiAgICAgICAgICBkaWdpdCB8PSBWTFFfQ09OVElOVUFUSU9OX0JJVDsKICAgICAgICB9CiAgICAgICAgZW5jb2RlZCArPSBiYXNlNjQuZW5jb2RlKGRpZ2l0KTsKICAgICAgfSB3aGlsZSAodmxxID4gMCk7CiAgICAgIHJldHVybiBlbmNvZGVkOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMKdmFyIHJlcXVpcmVfdXRpbDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMiKGV4cG9ydHMyKSB7CiAgICBmdW5jdGlvbiBnZXRBcmcoYUFyZ3MsIGFOYW1lLCBhRGVmYXVsdFZhbHVlKSB7CiAgICAgIGlmIChhTmFtZSBpbiBhQXJncykgewogICAgICAgIHJldHVybiBhQXJnc1thTmFtZV07CiAgICAgIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykgewogICAgICAgIHJldHVybiBhRGVmYXVsdFZhbHVlOwogICAgICB9CiAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhTmFtZSArICciIGlzIGEgcmVxdWlyZWQgYXJndW1lbnQuJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRBcmcgPSBnZXRBcmc7CiAgICB2YXIgdXJsUmVnZXhwID0gL14oPzooW1x3K1wtLl0rKTopP1wvXC8oPzooXHcrOlx3KylAKT8oW1x3Li1dKikoPzo6KFxkKykpPyguKikkLzsKICAgIHZhciBkYXRhVXJsUmVnZXhwID0gL15kYXRhOi4rXCwuKyQvOwogICAgZnVuY3Rpb24gdXJsUGFyc2UoYVVybCkgewogICAgICBjb25zdCBtYXRjaCA9IGFVcmwubWF0Y2godXJsUmVnZXhwKTsKICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgc2NoZW1lOiBtYXRjaFsxXSwKICAgICAgICBhdXRoOiBtYXRjaFsyXSwKICAgICAgICBob3N0OiBtYXRjaFszXSwKICAgICAgICBwb3J0OiBtYXRjaFs0XSwKICAgICAgICBwYXRoOiBtYXRjaFs1XQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIudXJsUGFyc2UgPSB1cmxQYXJzZTsKICAgIGZ1bmN0aW9uIHVybEdlbmVyYXRlKGFQYXJzZWRVcmwpIHsKICAgICAgbGV0IHVybDMgPSAiIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuc2NoZW1lKSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLnNjaGVtZSArICI6IjsKICAgICAgfQogICAgICB1cmwzICs9ICIvLyI7CiAgICAgIGlmIChhUGFyc2VkVXJsLmF1dGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuYXV0aCArICJAIjsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5ob3N0KSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLmhvc3Q7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucG9ydCkgewogICAgICAgIHVybDMgKz0gIjoiICsgYVBhcnNlZFVybC5wb3J0OwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLnBhdGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwucGF0aDsKICAgICAgfQogICAgICByZXR1cm4gdXJsMzsKICAgIH0KICAgIGV4cG9ydHMyLnVybEdlbmVyYXRlID0gdXJsR2VuZXJhdGU7CiAgICB2YXIgTUFYX0NBQ0hFRF9JTlBVVFMgPSAzMjsKICAgIGZ1bmN0aW9uIGxydU1lbW9pemUoZikgewogICAgICBjb25zdCBjYWNoZSA9IFtdOwogICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhY2hlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAoY2FjaGVbaV0uaW5wdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgIGNvbnN0IHRlbXAgPSBjYWNoZVswXTsKICAgICAgICAgICAgY2FjaGVbMF0gPSBjYWNoZVtpXTsKICAgICAgICAgICAgY2FjaGVbaV0gPSB0ZW1wOwogICAgICAgICAgICByZXR1cm4gY2FjaGVbMF0ucmVzdWx0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXN1bHQgPSBmKGlucHV0KTsKICAgICAgICBjYWNoZS51bnNoaWZ0KHsKICAgICAgICAgIGlucHV0LAogICAgICAgICAgcmVzdWx0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGNhY2hlLmxlbmd0aCA+IE1BWF9DQUNIRURfSU5QVVRTKSB7CiAgICAgICAgICBjYWNoZS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0KICAgIHZhciBub3JtYWxpemUgPSBscnVNZW1vaXplKGZ1bmN0aW9uIG5vcm1hbGl6ZTIoYVBhdGgpIHsKICAgICAgbGV0IHBhdGggPSBhUGF0aDsKICAgICAgY29uc3QgdXJsMyA9IHVybFBhcnNlKGFQYXRoKTsKICAgICAgaWYgKHVybDMpIHsKICAgICAgICBpZiAoIXVybDMucGF0aCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBwYXRoID0gdXJsMy5wYXRoOwogICAgICB9CiAgICAgIGNvbnN0IGlzQWJzb2x1dGUgPSBleHBvcnRzMi5pc0Fic29sdXRlKHBhdGgpOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgc3RhcnQgPSBpOwogICAgICAgIGkgPSBwYXRoLmluZGV4T2YoIi8iLCBzdGFydCk7CiAgICAgICAgaWYgKGkgPT09IC0xKSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQpKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQsIGkpKTsKICAgICAgICAgIHdoaWxlIChpIDwgcGF0aC5sZW5ndGggJiYgcGF0aFtpXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IHVwID0gMDsKICAgICAgZm9yIChpID0gcGFydHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBjb25zdCBwYXJ0ID0gcGFydHNbaV07CiAgICAgICAgaWYgKHBhcnQgPT09ICIuIikgewogICAgICAgICAgcGFydHMuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocGFydCA9PT0gIi4uIikgewogICAgICAgICAgdXArKzsKICAgICAgICB9IGVsc2UgaWYgKHVwID4gMCkgewogICAgICAgICAgaWYgKHBhcnQgPT09ICIiKSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpICsgMSwgdXApOwogICAgICAgICAgICB1cCA9IDA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMik7CiAgICAgICAgICAgIHVwLS07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhdGggPSBwYXJ0cy5qb2luKCIvIik7CiAgICAgIGlmIChwYXRoID09PSAiIikgewogICAgICAgIHBhdGggPSBpc0Fic29sdXRlID8gIi8iIDogIi4iOwogICAgICB9CiAgICAgIGlmICh1cmwzKSB7CiAgICAgICAgdXJsMy5wYXRoID0gcGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUodXJsMyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGg7CiAgICB9KTsKICAgIGV4cG9ydHMyLm5vcm1hbGl6ZSA9IG5vcm1hbGl6ZTsKICAgIGZ1bmN0aW9uIGpvaW4yKGFSb290LCBhUGF0aCkgewogICAgICBpZiAoYVJvb3QgPT09ICIiKSB7CiAgICAgICAgYVJvb3QgPSAiLiI7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoID09PSAiIikgewogICAgICAgIGFQYXRoID0gIi4iOwogICAgICB9CiAgICAgIGNvbnN0IGFQYXRoVXJsID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBjb25zdCBhUm9vdFVybCA9IHVybFBhcnNlKGFSb290KTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3QgPSBhUm9vdFVybC5wYXRoIHx8ICIvIjsKICAgICAgfQogICAgICBpZiAoYVBhdGhVcmwgJiYgIWFQYXRoVXJsLnNjaGVtZSkgewogICAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgICAgYVBhdGhVcmwuc2NoZW1lID0gYVJvb3RVcmwuc2NoZW1lOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVBhdGhVcmwpOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCB8fCBhUGF0aC5tYXRjaChkYXRhVXJsUmVnZXhwKSkgewogICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgfQogICAgICBpZiAoYVJvb3RVcmwgJiYgIWFSb290VXJsLmhvc3QgJiYgIWFSb290VXJsLnBhdGgpIHsKICAgICAgICBhUm9vdFVybC5ob3N0ID0gYVBhdGg7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICBjb25zdCBqb2luZWQgPSBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiA/IGFQYXRoIDogbm9ybWFsaXplKGFSb290LnJlcGxhY2UoL1wvKyQvLCAiIikgKyAiLyIgKyBhUGF0aCk7CiAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgIGFSb290VXJsLnBhdGggPSBqb2luZWQ7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICByZXR1cm4gam9pbmVkOwogICAgfQogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGZ1bmN0aW9uKGFQYXRoKSB7CiAgICAgIHJldHVybiBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiB8fCB1cmxSZWdleHAudGVzdChhUGF0aCk7CiAgICB9OwogICAgZnVuY3Rpb24gcmVsYXRpdmUoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBhUm9vdCA9IGFSb290LnJlcGxhY2UoL1wvJC8sICIiKTsKICAgICAgbGV0IGxldmVsID0gMDsKICAgICAgd2hpbGUgKGFQYXRoLmluZGV4T2YoYVJvb3QgKyAiLyIpICE9PSAwKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSBhUm9vdC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgYVJvb3QgPSBhUm9vdC5zbGljZSgwLCBpbmRleCk7CiAgICAgICAgaWYgKGFSb290Lm1hdGNoKC9eKFteXC9dKzpcLyk/XC8qJC8pKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgICsrbGV2ZWw7CiAgICAgIH0KICAgICAgcmV0dXJuIEFycmF5KGxldmVsICsgMSkuam9pbigiLi4vIikgKyBhUGF0aC5zdWJzdHIoYVJvb3QubGVuZ3RoICsgMSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgdmFyIHN1cHBvcnRzTnVsbFByb3RvID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICByZXR1cm4gISgiX19wcm90b19fIiBpbiBvYmopOwogICAgfSgpOwogICAgZnVuY3Rpb24gaWRlbnRpdHkocykgewogICAgICByZXR1cm4gczsKICAgIH0KICAgIGZ1bmN0aW9uIHRvU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gIiQiICsgYVN0cjsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLnRvU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IHRvU2V0U3RyaW5nOwogICAgZnVuY3Rpb24gZnJvbVNldFN0cmluZyhhU3RyKSB7CiAgICAgIGlmIChpc1Byb3RvU3RyaW5nKGFTdHIpKSB7CiAgICAgICAgcmV0dXJuIGFTdHIuc2xpY2UoMSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFTdHI7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IGZyb21TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBpc1Byb3RvU3RyaW5nKHMpIHsKICAgICAgaWYgKCFzKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0IGxlbmd0aCA9IHMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoIDwgOSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBpZiAocy5jaGFyQ29kZUF0KGxlbmd0aCAtIDEpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMikgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAzKSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA0KSAhPT0gMTE2IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA1KSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA2KSAhPT0gMTE0IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA3KSAhPT0gMTEyIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA4KSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDkpICE9PSA5NSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gbGVuZ3RoIC0gMTA7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHMuY2hhckNvZGVBdChpKSAhPT0gMzYpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyhtYXBwaW5nQSwgbWFwcGluZ0IsIG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgbGV0IGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZU9yaWdpbmFsKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMgPSBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9uczsKICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDAgfHwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQ7CiAgICBmdW5jdGlvbiBzdHJjbXAoYVN0cjEsIGFTdHIyKSB7CiAgICAgIGlmIChhU3RyMSA9PT0gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMDsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICBpZiAoYVN0cjIgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgaWYgKGFTdHIxID4gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICByZXR1cm4gLTE7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nQSwgbWFwcGluZ0IpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQ7CiAgICBmdW5jdGlvbiBwYXJzZVNvdXJjZU1hcElucHV0KHN0cjIpIHsKICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyMi5yZXBsYWNlKC9eXCldfSdbXlxuXSpcbi8sICIiKSk7CiAgICB9CiAgICBleHBvcnRzMi5wYXJzZVNvdXJjZU1hcElucHV0ID0gcGFyc2VTb3VyY2VNYXBJbnB1dDsKICAgIGZ1bmN0aW9uIGNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlVVJMLCBzb3VyY2VNYXBVUkwpIHsKICAgICAgc291cmNlVVJMID0gc291cmNlVVJMIHx8ICIiOwogICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgIGlmIChzb3VyY2VSb290W3NvdXJjZVJvb3QubGVuZ3RoIC0gMV0gIT09ICIvIiAmJiBzb3VyY2VVUkxbMF0gIT09ICIvIikgewogICAgICAgICAgc291cmNlUm9vdCArPSAiLyI7CiAgICAgICAgfQogICAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVJvb3QgKyBzb3VyY2VVUkw7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZU1hcFVSTCkgewogICAgICAgIGNvbnN0IHBhcnNlZCA9IHVybFBhcnNlKHNvdXJjZU1hcFVSTCk7CiAgICAgICAgaWYgKCFwYXJzZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigic291cmNlTWFwVVJMIGNvdWxkIG5vdCBiZSBwYXJzZWQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5wYXRoKSB7CiAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcnNlZC5wYXRoLmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IHBhcnNlZC5wYXRoLnN1YnN0cmluZygwLCBpbmRleCArIDEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBqb2luMih1cmxHZW5lcmF0ZShwYXJzZWQpLCBzb3VyY2VVUkwpOwogICAgICB9CiAgICAgIHJldHVybiBub3JtYWxpemUoc291cmNlVVJMKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXB1dGVTb3VyY2VVUkwgPSBjb21wdXRlU291cmNlVVJMOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzIihleHBvcnRzMikgewogICAgdmFyIEFycmF5U2V0ID0gY2xhc3MgX0FycmF5U2V0IHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fYXJyYXkgPSBbXTsKICAgICAgICB0aGlzLl9zZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTdGF0aWMgbWV0aG9kIGZvciBjcmVhdGluZyBBcnJheVNldCBpbnN0YW5jZXMgZnJvbSBhbiBleGlzdGluZyBhcnJheS4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tQXJyYXkoYUFycmF5LCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3Qgc2V0MiA9IG5ldyBfQXJyYXlTZXQoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYUFycmF5Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBzZXQyLmFkZChhQXJyYXlbaV0sIGFBbGxvd0R1cGxpY2F0ZXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0MjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIGhvdyBtYW55IHVuaXF1ZSBpdGVtcyBhcmUgaW4gdGhpcyBBcnJheVNldC4gSWYgZHVwbGljYXRlcyBoYXZlIGJlZW4KICAgICAgICogYWRkZWQsIHRoYW4gdGhvc2UgZG8gbm90IGNvdW50IHRvd2FyZHMgdGhlIHNpemUuCiAgICAgICAqCiAgICAgICAqIEByZXR1cm5zIE51bWJlcgogICAgICAgKi8KICAgICAgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LnNpemU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoaXMgc2V0LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGFkZChhU3RyLCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmhhcyhhU3RyKTsKICAgICAgICBjb25zdCBpZHggPSB0aGlzLl9hcnJheS5sZW5ndGg7CiAgICAgICAgaWYgKCFpc0R1cGxpY2F0ZSB8fCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgICB0aGlzLl9hcnJheS5wdXNoKGFTdHIpOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzRHVwbGljYXRlKSB7CiAgICAgICAgICB0aGlzLl9zZXQuc2V0KGFTdHIsIGlkeCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJcyB0aGUgZ2l2ZW4gc3RyaW5nIGEgbWVtYmVyIG9mIHRoaXMgc2V0PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGhhcyhhU3RyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NldC5oYXMoYVN0cik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGluZGV4IG9mIHRoZSBnaXZlbiBzdHJpbmcgaW4gdGhlIGFycmF5PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGluZGV4T2YoYVN0cikgewogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX3NldC5nZXQoYVN0cik7CiAgICAgICAgaWYgKGlkeCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVN0ciArICciIGlzIG5vdCBpbiB0aGUgc2V0LicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXaGF0IGlzIHRoZSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleD8KICAgICAgICoKICAgICAgICogQHBhcmFtIE51bWJlciBhSWR4CiAgICAgICAqLwogICAgICBhdChhSWR4KSB7CiAgICAgICAgaWYgKGFJZHggPj0gMCAmJiBhSWR4IDwgdGhpcy5fYXJyYXkubGVuZ3RoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXlbYUlkeF07CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBpbmRleGVkIGJ5ICIgKyBhSWR4KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgYXJyYXkgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzZXQgKHdoaWNoIGhhcyB0aGUgcHJvcGVyIGluZGljZXMKICAgICAgICogaW5kaWNhdGVkIGJ5IGluZGV4T2YpLiBOb3RlIHRoYXQgdGhpcyBpcyBhIGNvcHkgb2YgdGhlIGludGVybmFsIGFycmF5IHVzZWQKICAgICAgICogZm9yIHN0b3JpbmcgdGhlIG1lbWJlcnMgc28gdGhhdCBubyBvbmUgY2FuIG1lc3Mgd2l0aCBpbnRlcm5hbCBzdGF0ZS4KICAgICAgICovCiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FycmF5LnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BcnJheVNldCA9IEFycmF5U2V0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzCnZhciByZXF1aXJlX21hcHBpbmdfbGlzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWdlbmVyYXRvci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1nZW5lcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgTWFwcGluZ0xpc3QgPSByZXF1aXJlX21hcHBpbmdfbGlzdCgpLk1hcHBpbmdMaXN0OwogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IGNsYXNzIF9Tb3VyY2VNYXBHZW5lcmF0b3IgewogICAgICBjb25zdHJ1Y3RvcihhQXJncykgewogICAgICAgIGlmICghYUFyZ3MpIHsKICAgICAgICAgIGFBcmdzID0ge307CiAgICAgICAgfQogICAgICAgIHRoaXMuX2ZpbGUgPSB1dGlsLmdldEFyZyhhQXJncywgImZpbGUiLCBudWxsKTsKICAgICAgICB0aGlzLl9zb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc2tpcFZhbGlkYXRpb24gPSB1dGlsLmdldEFyZyhhQXJncywgInNraXBWYWxpZGF0aW9uIiwgZmFsc2UpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzID0gbmV3IE1hcHBpbmdMaXN0KCk7CiAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlcyBhIG5ldyBTb3VyY2VNYXBHZW5lcmF0b3IgYmFzZWQgb24gYSBTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBTb3VyY2VNYXAuCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwQ29uc3VtZXIpIHsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZVJvb3Q7CiAgICAgICAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IF9Tb3VyY2VNYXBHZW5lcmF0b3IoewogICAgICAgICAgZmlsZTogYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUsCiAgICAgICAgICBzb3VyY2VSb290CiAgICAgICAgfSk7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLmVhY2hNYXBwaW5nKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGNvbnN0IG5ld01hcHBpbmcgPSB7CiAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uCiAgICAgICAgICAgIH0KICAgICAgICAgIH07CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICBuZXdNYXBwaW5nLnNvdXJjZSA9IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIG5ld01hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZXdNYXBwaW5nLm9yaWdpbmFsID0gewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICBuZXdNYXBwaW5nLm5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGdlbmVyYXRvci5hZGRNYXBwaW5nKG5ld01hcHBpbmcpOwogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgbGV0IHNvdXJjZVJlbGF0aXZlID0gc291cmNlRmlsZTsKICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZVJlbGF0aXZlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZ2VuZXJhdG9yLl9zb3VyY2VzLmhhcyhzb3VyY2VSZWxhdGl2ZSkpIHsKICAgICAgICAgICAgZ2VuZXJhdG9yLl9zb3VyY2VzLmFkZChzb3VyY2VSZWxhdGl2ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBnZW5lcmF0b3I7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHNpbmdsZSBtYXBwaW5nIGZyb20gb3JpZ2luYWwgc291cmNlIGxpbmUgYW5kIGNvbHVtbiB0byB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBmb3IgdGhpcyBzb3VyY2UgbWFwIGJlaW5nIGNyZWF0ZWQuIFRoZSBtYXBwaW5nCiAgICAgICAqIG9iamVjdCBzaG91bGQgaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBnZW5lcmF0ZWQ6IEFuIG9iamVjdCB3aXRoIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIG9yaWdpbmFsOiBBbiBvYmplY3Qgd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIChyZWxhdGl2ZSB0byB0aGUgc291cmNlUm9vdCkuCiAgICAgICAqICAgLSBuYW1lOiBBbiBvcHRpb25hbCBvcmlnaW5hbCB0b2tlbiBuYW1lIGZvciB0aGlzIG1hcHBpbmcuCiAgICAgICAqLwogICAgICBhZGRNYXBwaW5nKGFBcmdzKSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJnZW5lcmF0ZWQiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAib3JpZ2luYWwiLCBudWxsKTsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibmFtZSIsIG51bGwpOwogICAgICAgIGlmICghdGhpcy5fc2tpcFZhbGlkYXRpb24pIHsKICAgICAgICAgIHRoaXMuX3ZhbGlkYXRlTWFwcGluZyhnZW5lcmF0ZWQsIG9yaWdpbmFsLCBzb3VyY2UsIG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IFN0cmluZyhzb3VyY2UpOwogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChuYW1lICE9IG51bGwpIHsKICAgICAgICAgIG5hbWUgPSBTdHJpbmcobmFtZSk7CiAgICAgICAgICBpZiAoIXRoaXMuX25hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzLmFkZCh7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbiwKICAgICAgICAgIG9yaWdpbmFsTGluZTogb3JpZ2luYWwgIT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uLAogICAgICAgICAgc291cmNlLAogICAgICAgICAgbmFtZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTZXQgdGhlIHNvdXJjZSBjb250ZW50IGZvciBhIHNvdXJjZSBmaWxlLgogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICBsZXQgc291cmNlID0gYVNvdXJjZUZpbGU7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLl9zb3VyY2VSb290LCBzb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAoYVNvdXJjZUNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzQ29udGVudHMpIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zb3VyY2VzQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhzb3VyY2UpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBkZWxldGUgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV07CiAgICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fc291cmNlc0NvbnRlbnRzKS5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFwcGxpZXMgdGhlIG1hcHBpbmdzIG9mIGEgc3ViLXNvdXJjZS1tYXAgZm9yIGEgc3BlY2lmaWMgc291cmNlIGZpbGUgdG8gdGhlCiAgICAgICAqIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkLiBFYWNoIG1hcHBpbmcgdG8gdGhlIHN1cHBsaWVkIHNvdXJjZSBmaWxlIGlzCiAgICAgICAqIHJld3JpdHRlbiB1c2luZyB0aGUgc3VwcGxpZWQgc291cmNlIG1hcC4gTm90ZTogVGhlIHJlc29sdXRpb24gZm9yIHRoZQogICAgICAgKiByZXN1bHRpbmcgbWFwcGluZ3MgaXMgdGhlIG1pbmltaXVtIG9mIHRoaXMgbWFwIGFuZCB0aGUgc3VwcGxpZWQgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlRmlsZSBPcHRpb25hbC4gVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZS4KICAgICAgICogICAgICAgIElmIG9taXR0ZWQsIFNvdXJjZU1hcENvbnN1bWVyJ3MgZmlsZSBwcm9wZXJ0eSB3aWxsIGJlIHVzZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwUGF0aCBPcHRpb25hbC4gVGhlIGRpcm5hbWUgb2YgdGhlIHBhdGggdG8gdGhlIHNvdXJjZSBtYXAKICAgICAgICogICAgICAgIHRvIGJlIGFwcGxpZWQuIElmIHJlbGF0aXZlLCBpdCBpcyByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBuZWVkZWQgd2hlbiB0aGUgdHdvIHNvdXJjZSBtYXBzIGFyZW4ndCBpbiB0aGUgc2FtZQogICAgICAgKiAgICAgICAgZGlyZWN0b3J5LCBhbmQgdGhlIHNvdXJjZSBtYXAgdG8gYmUgYXBwbGllZCBjb250YWlucyByZWxhdGl2ZSBzb3VyY2UKICAgICAgICogICAgICAgIHBhdGhzLiBJZiBzbywgdGhvc2UgcmVsYXRpdmUgc291cmNlIHBhdGhzIG5lZWQgdG8gYmUgcmV3cml0dGVuCiAgICAgICAqICAgICAgICByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKi8KICAgICAgYXBwbHlTb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyLCBhU291cmNlRmlsZSwgYVNvdXJjZU1hcFBhdGgpIHsKICAgICAgICBsZXQgc291cmNlRmlsZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmIChhU291cmNlRmlsZSA9PSBudWxsKSB7CiAgICAgICAgICBpZiAoYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUgPT0gbnVsbCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYFNvdXJjZU1hcEdlbmVyYXRvci5wcm90b3R5cGUuYXBwbHlTb3VyY2VNYXAgcmVxdWlyZXMgZWl0aGVyIGFuIGV4cGxpY2l0IHNvdXJjZSBmaWxlLCBvciB0aGUgc291cmNlIG1hcCdzICJmaWxlIiBwcm9wZXJ0eS4gQm90aCB3ZXJlIG9taXR0ZWQuYAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlRmlsZSA9IGFTb3VyY2VNYXBDb25zdW1lci5maWxlOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3U291cmNlcyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKS5sZW5ndGggPiAwID8gbmV3IEFycmF5U2V0KCkgOiB0aGlzLl9zb3VyY2VzOwogICAgICAgIGNvbnN0IG5ld05hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbWFwcGluZ3MudW5zb3J0ZWRGb3JFYWNoKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gc291cmNlRmlsZSAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSAhPSBudWxsKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gYVNvdXJjZU1hcENvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBvcmlnaW5hbC5zb3VyY2U7CiAgICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWwubGluZTsKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWwuY29sdW1uOwogICAgICAgICAgICAgIGlmIChvcmlnaW5hbC5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgIGlmIChzb3VyY2UgIT0gbnVsbCAmJiAhbmV3U291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICBuZXdTb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbmFtZSA9IG1hcHBpbmcubmFtZTsKICAgICAgICAgIGlmIChuYW1lICE9IG51bGwgJiYgIW5ld05hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICBuZXdOYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgdGhpcy5fc291cmNlcyA9IG5ld1NvdXJjZXM7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXdOYW1lczsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNyY0ZpbGUpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlQ29udGVudEZvcihzcmNGaWxlKTsKICAgICAgICAgIGlmIChjb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzcmNGaWxlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBzcmNGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zZXRTb3VyY2VDb250ZW50KHNyY0ZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBIG1hcHBpbmcgY2FuIGhhdmUgb25lIG9mIHRoZSB0aHJlZSBsZXZlbHMgb2YgZGF0YToKICAgICAgICoKICAgICAgICogICAxLiBKdXN0IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb24uCiAgICAgICAqICAgMi4gVGhlIEdlbmVyYXRlZCBwb3NpdGlvbiwgb3JpZ2luYWwgcG9zaXRpb24sIGFuZCBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgMy4gR2VuZXJhdGVkIGFuZCBvcmlnaW5hbCBwb3NpdGlvbiwgb3JpZ2luYWwgc291cmNlLCBhcyB3ZWxsIGFzIGEgbmFtZQogICAgICAgKiAgICAgIHRva2VuLgogICAgICAgKgogICAgICAgKiBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSwgd2UgdmFsaWRhdGUgdGhhdCBhbnkgbmV3IG1hcHBpbmcgYmVpbmcgYWRkZWQgZmFsbHMKICAgICAgICogaW4gdG8gb25lIG9mIHRoZXNlIGNhdGVnb3JpZXMuCiAgICAgICAqLwogICAgICBfdmFsaWRhdGVNYXBwaW5nKGFHZW5lcmF0ZWQsIGFPcmlnaW5hbCwgYVNvdXJjZSwgYU5hbWUpIHsKICAgICAgICBpZiAoYU9yaWdpbmFsICYmIHR5cGVvZiBhT3JpZ2luYWwubGluZSAhPT0gIm51bWJlciIgJiYgdHlwZW9mIGFPcmlnaW5hbC5jb2x1bW4gIT09ICJudW1iZXIiKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJvcmlnaW5hbC5saW5lIGFuZCBvcmlnaW5hbC5jb2x1bW4gYXJlIG5vdCBudW1iZXJzIC0tIHlvdSBwcm9iYWJseSBtZWFudCB0byBvbWl0IHRoZSBvcmlnaW5hbCBtYXBwaW5nIGVudGlyZWx5IGFuZCBvbmx5IG1hcCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLiBJZiBzbywgcGFzcyBudWxsIGZvciB0aGUgb3JpZ2luYWwgbWFwcGluZyBpbnN0ZWFkIG9mIGFuIG9iamVjdCB3aXRoIGVtcHR5IG9yIG51bGwgdmFsdWVzLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYUdlbmVyYXRlZC5saW5lID4gMCAmJiBhR2VuZXJhdGVkLmNvbHVtbiA+PSAwICYmICFhT3JpZ2luYWwgJiYgIWFTb3VyY2UgJiYgIWFOYW1lKSB7CiAgICAgICAgfSBlbHNlIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYU9yaWdpbmFsICYmICJsaW5lIiBpbiBhT3JpZ2luYWwgJiYgImNvbHVtbiIgaW4gYU9yaWdpbmFsICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiBhT3JpZ2luYWwubGluZSA+IDAgJiYgYU9yaWdpbmFsLmNvbHVtbiA+PSAwICYmIGFTb3VyY2UpIHsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hcHBpbmc6ICIgKyBKU09OLnN0cmluZ2lmeSh7CiAgICAgICAgICAgIGdlbmVyYXRlZDogYUdlbmVyYXRlZCwKICAgICAgICAgICAgc291cmNlOiBhU291cmNlLAogICAgICAgICAgICBvcmlnaW5hbDogYU9yaWdpbmFsLAogICAgICAgICAgICBuYW1lOiBhTmFtZQogICAgICAgICAgfSkpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogU2VyaWFsaXplIHRoZSBhY2N1bXVsYXRlZCBtYXBwaW5ncyBpbiB0byB0aGUgc3RyZWFtIG9mIGJhc2UgNjQgVkxRcwogICAgICAgKiBzcGVjaWZpZWQgYnkgdGhlIHNvdXJjZSBtYXAgZm9ybWF0LgogICAgICAgKi8KICAgICAgX3NlcmlhbGl6ZU1hcHBpbmdzKCkgewogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzR2VuZXJhdGVkTGluZSA9IDE7CiAgICAgICAgbGV0IHByZXZpb3VzT3JpZ2luYWxDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsTGluZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzTmFtZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzU291cmNlID0gMDsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgbGV0IG5hbWVJZHg7CiAgICAgICAgbGV0IHNvdXJjZUlkeDsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gbWFwcGluZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmcgPSBtYXBwaW5nc1tpXTsKICAgICAgICAgIG5leHQgPSAiIjsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIG5leHQgKz0gIjsiOwogICAgICAgICAgICAgIHByZXZpb3VzR2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgIGlmICghdXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nLCBtYXBwaW5nc1tpIC0gMV0pKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV4dCArPSAiLCI7CiAgICAgICAgICB9CiAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBwcmV2aW91c0dlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlSWR4ID0gdGhpcy5fc291cmNlcy5pbmRleE9mKG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKHNvdXJjZUlkeCAtIHByZXZpb3VzU291cmNlKTsKICAgICAgICAgICAgcHJldmlvdXNTb3VyY2UgPSBzb3VyY2VJZHg7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShtYXBwaW5nLm9yaWdpbmFsTGluZSAtIDEgLSBwcmV2aW91c09yaWdpbmFsTGluZSk7CiAgICAgICAgICAgIHByZXZpb3VzT3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmUgLSAxOwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbENvbHVtbiAtIHByZXZpb3VzT3JpZ2luYWxDb2x1bW4pOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZUlkeCA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobmFtZUlkeCAtIHByZXZpb3VzTmFtZSk7CiAgICAgICAgICAgICAgcHJldmlvdXNOYW1lID0gbmFtZUlkeDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmVzdWx0ICs9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgX2dlbmVyYXRlU291cmNlc0NvbnRlbnQoYVNvdXJjZXMsIGFTb3VyY2VSb290KSB7CiAgICAgICAgcmV0dXJuIGFTb3VyY2VzLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFTb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZShhU291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtleSA9IHV0aWwudG9TZXRTdHJpbmcoc291cmNlKTsKICAgICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5fc291cmNlc0NvbnRlbnRzLCBrZXkpID8gdGhpcy5fc291cmNlc0NvbnRlbnRzW2tleV0gOiBudWxsOwogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBFeHRlcm5hbGl6ZSB0aGUgc291cmNlIG1hcC4KICAgICAgICovCiAgICAgIHRvSlNPTigpIHsKICAgICAgICBjb25zdCBtYXAyID0gewogICAgICAgICAgdmVyc2lvbjogdGhpcy5fdmVyc2lvbiwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMuX3NvdXJjZXMudG9BcnJheSgpLAogICAgICAgICAgbmFtZXM6IHRoaXMuX25hbWVzLnRvQXJyYXkoKSwKICAgICAgICAgIG1hcHBpbmdzOiB0aGlzLl9zZXJpYWxpemVNYXBwaW5ncygpCiAgICAgICAgfTsKICAgICAgICBpZiAodGhpcy5fZmlsZSAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLmZpbGUgPSB0aGlzLl9maWxlOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZVJvb3QgPSB0aGlzLl9zb3VyY2VSb290OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZXNDb250ZW50ID0gdGhpcy5fZ2VuZXJhdGVTb3VyY2VzQ29udGVudChtYXAyLnNvdXJjZXMsIG1hcDIuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZW5kZXIgdGhlIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkIHRvIGEgc3RyaW5nLgogICAgICAgKi8KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwR2VuZXJhdG9yLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSBTb3VyY2VNYXBHZW5lcmF0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iaW5hcnktc2VhcmNoLmpzCnZhciByZXF1aXJlX2JpbmFyeV9zZWFyY2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMiKGV4cG9ydHMyKSB7CiAgICBleHBvcnRzMi5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBmdW5jdGlvbiByZWN1cnNpdmVTZWFyY2goYUxvdywgYUhpZ2gsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKSB7CiAgICAgIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IoKGFIaWdoIC0gYUxvdykgLyAyKSArIGFMb3c7CiAgICAgIGNvbnN0IGNtcCA9IGFDb21wYXJlKGFOZWVkbGUsIGFIYXlzdGFja1ttaWRdLCB0cnVlKTsKICAgICAgaWYgKGNtcCA9PT0gMCkgewogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0gZWxzZSBpZiAoY21wID4gMCkgewogICAgICAgIGlmIChhSGlnaCAtIG1pZCA+IDEpIHsKICAgICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2gobWlkLCBhSGlnaCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpOwogICAgICAgIH0KICAgICAgICBpZiAoYUJpYXMgPT0gZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQpIHsKICAgICAgICAgIHJldHVybiBhSGlnaCA8IGFIYXlzdGFjay5sZW5ndGggPyBhSGlnaCA6IC0xOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWlkOwogICAgICB9CiAgICAgIGlmIChtaWQgLSBhTG93ID4gMSkgewogICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2goYUxvdywgbWlkLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcyk7CiAgICAgIH0KICAgICAgaWYgKGFCaWFzID09IGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EKSB7CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfQogICAgICByZXR1cm4gYUxvdyA8IDAgPyAtMSA6IGFMb3c7CiAgICB9CiAgICBleHBvcnRzMi5zZWFyY2ggPSBmdW5jdGlvbiBzZWFyY2goYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpIHsKICAgICAgaWYgKGFIYXlzdGFjay5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgbGV0IGluZGV4ID0gcmVjdXJzaXZlU2VhcmNoKAogICAgICAgIC0xLAogICAgICAgIGFIYXlzdGFjay5sZW5ndGgsCiAgICAgICAgYU5lZWRsZSwKICAgICAgICBhSGF5c3RhY2ssCiAgICAgICAgYUNvbXBhcmUsCiAgICAgICAgYUJpYXMgfHwgZXhwb3J0czIuR1JFQVRFU1RfTE9XRVJfQk9VTkQKICAgICAgKTsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICB3aGlsZSAoaW5kZXggLSAxID49IDApIHsKICAgICAgICBpZiAoYUNvbXBhcmUoYUhheXN0YWNrW2luZGV4XSwgYUhheXN0YWNrW2luZGV4IC0gMV0sIHRydWUpICE9PSAwKSB7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgLS1pbmRleDsKICAgICAgfQogICAgICByZXR1cm4gaW5kZXg7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzCnZhciByZXF1aXJlX3JlYWRfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGlzQnJvd3NlckVudmlyb25tZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd2luZG93ICE9PSAidW5kZWZpbmVkIiAmJiB0aGlzID09PSB3aW5kb3c7CiAgICB9LmNhbGwoKTsKICAgIGlmIChpc0Jyb3dzZXJFbnZpcm9ubWVudCkgewogICAgICBsZXQgbWFwcGluZ3NXYXNtID0gbnVsbDsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgaWYgKHR5cGVvZiBtYXBwaW5nc1dhc20gPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gZmV0Y2gobWFwcGluZ3NXYXNtKS50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKSk7CiAgICAgICAgfQogICAgICAgIGlmIChtYXBwaW5nc1dhc20gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikgewogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYXBwaW5nc1dhc20pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIllvdSBtdXN0IHByb3ZpZGUgdGhlIHN0cmluZyBVUkwgb3IgQXJyYXlCdWZmZXIgY29udGVudHMgb2YgbGliL21hcHBpbmdzLndhc20gYnkgY2FsbGluZyBTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplKHsgJ2xpYi9tYXBwaW5ncy53YXNtJzogLi4uIH0pIGJlZm9yZSB1c2luZyBTb3VyY2VNYXBDb25zdW1lciIpOwogICAgICB9OwogICAgICBtb2R1bGUyLmV4cG9ydHMuaW5pdGlhbGl6ZSA9IChpbnB1dCkgPT4gbWFwcGluZ3NXYXNtID0gaW5wdXQ7CiAgICB9IGVsc2UgewogICAgICBjb25zdCBmcyA9IHJlcXVpcmUoImZzIik7CiAgICAgIGNvbnN0IHBhdGggPSByZXF1aXJlKCJwYXRoIik7CiAgICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHJlYWRXYXNtKCkgewogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CiAgICAgICAgICBjb25zdCB3YXNtUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICJtYXBwaW5ncy53YXNtIik7CiAgICAgICAgICBmcy5yZWFkRmlsZSh3YXNtUGF0aCwgbnVsbCwgKGVycm9yLCBkYXRhKSA9PiB7CiAgICAgICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgIHJlamVjdChlcnJvcik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc29sdmUoZGF0YS5idWZmZXIpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKF8pID0+IHsKICAgICAgICBjb25zb2xlLmRlYnVnKCJTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplIGlzIGEgbm8tb3Agd2hlbiBydW5uaW5nIGluIG5vZGUuanMiKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3dhc20uanMKdmFyIHJlcXVpcmVfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICBmdW5jdGlvbiBNYXBwaW5nKCkgewogICAgICB0aGlzLmdlbmVyYXRlZExpbmUgPSAwOwogICAgICB0aGlzLmdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgIHRoaXMubGFzdEdlbmVyYXRlZENvbHVtbiA9IG51bGw7CiAgICAgIHRoaXMuc291cmNlID0gbnVsbDsKICAgICAgdGhpcy5vcmlnaW5hbExpbmUgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5uYW1lID0gbnVsbDsKICAgIH0KICAgIHZhciBjYWNoZWRXYXNtID0gbnVsbDsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHdhc20oKSB7CiAgICAgIGlmIChjYWNoZWRXYXNtKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICAgIH0KICAgICAgY29uc3QgY2FsbGJhY2tTdGFjayA9IFtdOwogICAgICBjYWNoZWRXYXNtID0gcmVhZFdhc20oKS50aGVuKChidWZmZXIpID0+IHsKICAgICAgICByZXR1cm4gV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoYnVmZmVyLCB7CiAgICAgICAgICBlbnY6IHsKICAgICAgICAgICAgbWFwcGluZ19jYWxsYmFjayhnZW5lcmF0ZWRMaW5lLCBnZW5lcmF0ZWRDb2x1bW4sIGhhc0xhc3RHZW5lcmF0ZWRDb2x1bW4sIGxhc3RHZW5lcmF0ZWRDb2x1bW4sIGhhc09yaWdpbmFsLCBzb3VyY2UsIG9yaWdpbmFsTGluZSwgb3JpZ2luYWxDb2x1bW4sIGhhc05hbWUsIG5hbWUpIHsKICAgICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gbmV3IE1hcHBpbmcoKTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPSBnZW5lcmF0ZWRMaW5lICsgMTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiA9IGdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAoaGFzTGFzdEdlbmVyYXRlZENvbHVtbikgewogICAgICAgICAgICAgICAgbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbGFzdEdlbmVyYXRlZENvbHVtbiAtIDE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChoYXNPcmlnaW5hbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsTGluZSArIDE7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgICAgICBpZiAoaGFzTmFtZSkgewogICAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjYWxsYmFja1N0YWNrW2NhbGxiYWNrU3RhY2subGVuZ3RoIC0gMV0obWFwcGluZyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2FsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2dlbmVyYXRlZF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJnZW5lcmF0ZWRfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X29yaWdpbmFsX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoIm9yaWdpbmFsX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KS50aGVuKChXYXNtKSA9PiB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGV4cG9ydHM6IFdhc20uaW5zdGFuY2UuZXhwb3J0cywKICAgICAgICAgIHdpdGhNYXBwaW5nQ2FsbGJhY2s6IChtYXBwaW5nQ2FsbGJhY2ssIGYpID0+IHsKICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wdXNoKG1hcHBpbmdDYWxsYmFjayk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZigpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2sucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KS50aGVuKG51bGwsIChlKSA9PiB7CiAgICAgICAgY2FjaGVkV2FzbSA9IG51bGw7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBjYWNoZWRXYXNtOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtY29uc3VtZXIuanMKdmFyIHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcyIoZXhwb3J0czIpIHsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIGJpbmFyeVNlYXJjaCA9IHJlcXVpcmVfYmluYXJ5X3NlYXJjaCgpOwogICAgdmFyIEFycmF5U2V0ID0gcmVxdWlyZV9hcnJheV9zZXQoKS5BcnJheVNldDsKICAgIHZhciBiYXNlNjRWTFEgPSByZXF1aXJlX2Jhc2U2NF92bHEoKTsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICB2YXIgd2FzbSA9IHJlcXVpcmVfd2FzbSgpOwogICAgdmFyIElOVEVSTkFMID0gU3ltYm9sKCJzbWNJbnRlcm5hbCIpOwogICAgdmFyIFNvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgX1NvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIGlmIChhU291cmNlTWFwID09IElOVEVSTkFMKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX2ZhY3RvcnkoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIH0KICAgICAgc3RhdGljIGluaXRpYWxpemUob3B0cykgewogICAgICAgIHJlYWRXYXNtLmluaXRpYWxpemUob3B0c1sibGliL21hcHBpbmdzLndhc20iXSk7CiAgICAgIH0KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBfZmFjdG9yeUJTTShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29uc3RydWN0IGEgbmV3IGBTb3VyY2VNYXBDb25zdW1lcmAgZnJvbSBgcmF3U291cmNlTWFwYCBhbmQgYHNvdXJjZU1hcFVybGAKICAgICAgICogKHNlZSB0aGUgYFNvdXJjZU1hcENvbnN1bWVyYCBjb25zdHJ1Y3RvciBmb3IgZGV0YWlscy4gVGhlbiwgaW52b2tlIHRoZSBgYXN5bmMKICAgICAgICogZnVuY3Rpb24gZihTb3VyY2VNYXBDb25zdW1lcikgLT4gVGAgd2l0aCB0aGUgbmV3bHkgY29uc3RydWN0ZWQgY29uc3VtZXIsIHdhaXQKICAgICAgICogZm9yIGBmYCB0byBjb21wbGV0ZSwgY2FsbCBgZGVzdHJveWAgb24gdGhlIGNvbnN1bWVyLCBhbmQgcmV0dXJuIGBmYCdzIHJldHVybgogICAgICAgKiB2YWx1ZS4KICAgICAgICoKICAgICAgICogWW91IG11c3Qgbm90IHVzZSB0aGUgY29uc3VtZXIgYWZ0ZXIgYGZgIGNvbXBsZXRlcyEKICAgICAgICoKICAgICAgICogQnkgdXNpbmcgYHdpdGhgLCB5b3UgZG8gbm90IGhhdmUgdG8gcmVtZW1iZXIgdG8gbWFudWFsbHkgY2FsbCBgZGVzdHJveWAgb24KICAgICAgICogdGhlIGNvbnN1bWVyLCBzaW5jZSBpdCB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IG9uY2UgYGZgIGNvbXBsZXRlcy4KICAgICAgICoKICAgICAgICogYGBganMKICAgICAgICogY29uc3QgeFNxdWFyZWQgPSBhd2FpdCBTb3VyY2VNYXBDb25zdW1lci53aXRoKAogICAgICAgKiAgIG15UmF3U291cmNlTWFwLAogICAgICAgKiAgIG51bGwsCiAgICAgICAqICAgYXN5bmMgZnVuY3Rpb24gKGNvbnN1bWVyKSB7CiAgICAgICAqICAgICAvLyBVc2UgYGNvbnN1bWVyYCBpbnNpZGUgaGVyZSBhbmQgZG9uJ3Qgd29ycnkgYWJvdXQgcmVtZW1iZXJpbmcKICAgICAgICogICAgIC8vIHRvIGNhbGwgYGRlc3Ryb3lgLgogICAgICAgKgogICAgICAgKiAgICAgY29uc3QgeCA9IGF3YWl0IHdoYXRldmVyKGNvbnN1bWVyKTsKICAgICAgICogICAgIHJldHVybiB4ICogeDsKICAgICAgICogICB9CiAgICAgICAqICk7CiAgICAgICAqCiAgICAgICAqIC8vIFlvdSBtYXkgbm90IHVzZSB0aGF0IGBjb25zdW1lcmAgYW55bW9yZSBvdXQgaGVyZTsgaXQgaGFzCiAgICAgICAqIC8vIGJlZW4gZGVzdHJveWVkLiBCdXQgeW91IGNhbiB1c2UgYHhTcXVhcmVkYC4KICAgICAgICogY29uc29sZS5sb2coeFNxdWFyZWQpOwogICAgICAgKiBgYGAKICAgICAgICovCiAgICAgIHN0YXRpYyBhc3luYyB3aXRoKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsLCBmKSB7CiAgICAgICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgX1NvdXJjZU1hcENvbnN1bWVyKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsKTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGF3YWl0IGYoY29uc3VtZXIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBjb25zdW1lci5kZXN0cm95KCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgX3BhcnNlTWFwcGluZ3MiKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogSXRlcmF0ZSBvdmVyIGVhY2ggbWFwcGluZyBiZXR3ZWVuIGFuIG9yaWdpbmFsIHNvdXJjZS9saW5lL2NvbHVtbiBhbmQgYQogICAgICAgKiBnZW5lcmF0ZWQgbGluZS9jb2x1bW4gaW4gdGhpcyBzb3VyY2UgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gRnVuY3Rpb24gYUNhbGxiYWNrCiAgICAgICAqICAgICAgICBUaGUgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2l0aCBlYWNoIG1hcHBpbmcuCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYUNvbnRleHQKICAgICAgICogICAgICAgIE9wdGlvbmFsLiBJZiBzcGVjaWZpZWQsIHRoaXMgb2JqZWN0IHdpbGwgYmUgdGhlIHZhbHVlIG9mIGB0aGlzYCBldmVyeQogICAgICAgKiAgICAgICAgdGltZSB0aGF0IGBhQ2FsbGJhY2tgIGlzIGNhbGxlZC4KICAgICAgICogQHBhcmFtIGFPcmRlcgogICAgICAgKiAgICAgICAgRWl0aGVyIGBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVJgIG9yCiAgICAgICAqICAgICAgICBgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVJgLiBTcGVjaWZpZXMgd2hldGhlciB5b3Ugd2FudCB0bwogICAgICAgKiAgICAgICAgaXRlcmF0ZSBvdmVyIHRoZSBtYXBwaW5ncyBzb3J0ZWQgYnkgdGhlIGdlbmVyYXRlZCBmaWxlJ3MgbGluZS9jb2x1bW4KICAgICAgICogICAgICAgIG9yZGVyIG9yIHRoZSBvcmlnaW5hbCdzIHNvdXJjZS9saW5lL2NvbHVtbiBvcmRlciwgcmVzcGVjdGl2ZWx5LiBEZWZhdWx0cyB0bwogICAgICAgKiAgICAgICAgYFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUmAuCiAgICAgICAqLwogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZWFjaE1hcHBpbmciKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbGwgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwcm92aWRlZC4gSWYgbm8gY29sdW1uIGlzIHByb3ZpZGVkLCByZXR1cm5zIGFsbCBtYXBwaW5ncwogICAgICAgKiBjb3JyZXNwb25kaW5nIHRvIGEgZWl0aGVyIHRoZSBsaW5lIHdlIGFyZSBzZWFyY2hpbmcgZm9yIG9yIHRoZSBuZXh0CiAgICAgICAqIGNsb3Nlc3QgbGluZSB0aGF0IGhhcyBhbnkgbWFwcGluZ3MuIE90aGVyd2lzZSwgcmV0dXJucyBhbGwgbWFwcGluZ3MKICAgICAgICogY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gbGluZSBhbmQgZWl0aGVyIHRoZSBjb2x1bW4gd2UgYXJlIHNlYXJjaGluZyBmb3IKICAgICAgICogb3IgdGhlIG5leHQgY2xvc2VzdCBjb2x1bW4gdGhhdCBoYXMgYW55IG9mZnNldHMuCiAgICAgICAqCiAgICAgICAqIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBPcHRpb25hbC4gdGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIGFycmF5IG9mIG9iamVjdHMgaXMgcmV0dXJuZWQsIGVhY2ggd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yIik7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZGVzdHJveSIpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLl92ZXJzaW9uID0gMzsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUiA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUiA9IDI7CiAgICBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IFNvdXJjZU1hcENvbnN1bWVyOwogICAgdmFyIEJhc2ljU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBfQmFzaWNTb3VyY2VNYXBDb25zdW1lciBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBsZXQgc291cmNlcyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZXMiKTsKICAgICAgICAgIGNvbnN0IG5hbWVzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibmFtZXMiLCBbXSk7CiAgICAgICAgICBsZXQgc291cmNlUm9vdCA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZVJvb3QiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IHNvdXJjZXNDb250ZW50ID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlc0NvbnRlbnQiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibWFwcGluZ3MiKTsKICAgICAgICAgIGNvbnN0IGZpbGUgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJmaWxlIiwgbnVsbCk7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZVJvb3QpIHsKICAgICAgICAgICAgc291cmNlUm9vdCA9IHV0aWwubm9ybWFsaXplKHNvdXJjZVJvb3QpOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlcyA9IHNvdXJjZXMubWFwKFN0cmluZykubWFwKHV0aWwubm9ybWFsaXplKS5tYXAoZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2VSb290ICYmIHV0aWwuaXNBYnNvbHV0ZShzb3VyY2VSb290KSAmJiB1dGlsLmlzQWJzb2x1dGUoc291cmNlKSA/IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlKSA6IHNvdXJjZTsKICAgICAgICAgIH0pOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBBcnJheVNldC5mcm9tQXJyYXkobmFtZXMubWFwKFN0cmluZyksIHRydWUpOwogICAgICAgICAgdGhhdC5fc291cmNlcyA9IEFycmF5U2V0LmZyb21BcnJheShzb3VyY2VzLCB0cnVlKTsKICAgICAgICAgIHRoYXQuX2Fic29sdXRlU291cmNlcyA9IHRoYXQuX3NvdXJjZXMudG9BcnJheSgpLm1hcChmdW5jdGlvbihzKSB7CiAgICAgICAgICAgIHJldHVybiB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgcywgYVNvdXJjZU1hcFVSTCk7CiAgICAgICAgICB9KTsKICAgICAgICAgIHRoYXQuc291cmNlUm9vdCA9IHNvdXJjZVJvb3Q7CiAgICAgICAgICB0aGF0LnNvdXJjZXNDb250ZW50ID0gc291cmNlc0NvbnRlbnQ7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICAgICAgdGhhdC5fc291cmNlTWFwVVJMID0gYVNvdXJjZU1hcFVSTDsKICAgICAgICAgIHRoYXQuZmlsZSA9IGZpbGU7CiAgICAgICAgICB0aGF0Ll9jb21wdXRlZENvbHVtblNwYW5zID0gZmFsc2U7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5nc1B0ciA9IDA7CiAgICAgICAgICB0aGF0Ll93YXNtID0gbnVsbDsKICAgICAgICAgIHJldHVybiB3YXNtKCkudGhlbigodykgPT4gewogICAgICAgICAgICB0aGF0Ll93YXNtID0gdzsKICAgICAgICAgICAgcmV0dXJuIHRoYXQ7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogVXRpbGl0eSBmdW5jdGlvbiB0byBmaW5kIHRoZSBpbmRleCBvZiBhIHNvdXJjZS4gIFJldHVybnMgLTEgaWYgbm90CiAgICAgICAqIGZvdW5kLgogICAgICAgKi8KICAgICAgX2ZpbmRTb3VyY2VJbmRleChhU291cmNlKSB7CiAgICAgICAgbGV0IHJlbGF0aXZlU291cmNlID0gYVNvdXJjZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHJlbGF0aXZlU291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLnNvdXJjZVJvb3QsIHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZXMuaGFzKHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZXMuaW5kZXhPZihyZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fYWJzb2x1dGVTb3VyY2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVTb3VyY2VzW2ldID09IGFTb3VyY2UpIHsKICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgQmFzaWNTb3VyY2VNYXBDb25zdW1lciBmcm9tIGEgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU291cmNlTWFwR2VuZXJhdG9yIGFTb3VyY2VNYXAKICAgICAgICogICAgICAgIFRoZSBzb3VyY2UgbWFwIHRoYXQgd2lsbCBiZSBjb25zdW1lZC4KICAgICAgICogQHBhcmFtIFN0cmluZyBhU291cmNlTWFwVVJMCiAgICAgICAqICAgICAgICBUaGUgVVJMIGF0IHdoaWNoIHRoZSBzb3VyY2UgbWFwIGNhbiBiZSBmb3VuZCAob3B0aW9uYWwpCiAgICAgICAqIEByZXR1cm5zIEJhc2ljU291cmNlTWFwQ29uc3VtZXIKICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gbmV3IF9CYXNpY1NvdXJjZU1hcENvbnN1bWVyKGFTb3VyY2VNYXAudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgICAgZ2V0IHNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Fic29sdXRlU291cmNlcy5zbGljZSgpOwogICAgICB9CiAgICAgIF9nZXRNYXBwaW5nc1B0cigpIHsKICAgICAgICBpZiAodGhpcy5fbWFwcGluZ3NQdHIgPT09IDApIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9tYXBwaW5nc1B0cjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3Qgc2l6ZSA9IGFTdHIubGVuZ3RoOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLmFsbG9jYXRlX21hcHBpbmdzKHNpemUpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmID0gbmV3IFVpbnQ4QXJyYXkodGhpcy5fd2FzbS5leHBvcnRzLm1lbW9yeS5idWZmZXIsIG1hcHBpbmdzQnVmUHRyLCBzaXplKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykgewogICAgICAgICAgbWFwcGluZ3NCdWZbaV0gPSBhU3RyLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLnBhcnNlX21hcHBpbmdzKG1hcHBpbmdzQnVmUHRyKTsKICAgICAgICBpZiAoIW1hcHBpbmdzUHRyKSB7CiAgICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMuX3dhc20uZXhwb3J0cy5nZXRfbGFzdF9lcnJvcigpOwogICAgICAgICAgbGV0IG1zZyA9IGBFcnJvciBwYXJzaW5nIG1hcHBpbmdzIChjb2RlICR7ZXJyb3J9KTogYDsKICAgICAgICAgIHN3aXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG5lZ2F0aXZlIGxpbmUsIGNvbHVtbiwgc291cmNlIGluZGV4LCBvciBuYW1lIGluZGV4IjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG51bWJlciBsYXJnZXIgdGhhbiAyKiozMiI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICBtc2cgKz0gInJlYWNoZWQgRU9GIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBtc2cgKz0gImludmFsaWQgYmFzZSA2NCBjaGFyYWN0ZXIgd2hpbGUgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgbXNnICs9ICJ1bmtub3duIGVycm9yIGNvZGUiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzUHRyID0gbWFwcGluZ3NQdHI7CiAgICAgIH0KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgY29uc3QgY29udGV4dCA9IGFDb250ZXh0IHx8IG51bGw7CiAgICAgICAgY29uc3Qgb3JkZXIgPSBhT3JkZXIgfHwgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOwogICAgICAgIGNvbnN0IHNvdXJjZVJvb3QgPSB0aGlzLnNvdXJjZVJvb3Q7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKAogICAgICAgICAgKG1hcHBpbmcpID0+IHsKICAgICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSB0aGlzLl9uYW1lcy5hdChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBhQ2FsbGJhY2suY2FsbChjb250ZXh0LCBtYXBwaW5nKTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjoKICAgICAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5ieV9nZW5lcmF0ZWRfbG9jYXRpb24odGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSOgogICAgICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmJ5X29yaWdpbmFsX2xvY2F0aW9uKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBvcmRlciBvZiBpdGVyYXRpb24uIik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICApOwogICAgICB9CiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gYUFyZ3MuY29sdW1uIHx8IDA7CiAgICAgICAgc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KHNvdXJjZSk7CiAgICAgICAgaWYgKHNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgaWYgKG9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAob3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5ncyA9IFtdOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygKICAgICAgICAgIChtKSA9PiB7CiAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbS5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgIGxpbmU6IG0uZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG0uZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKAogICAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZSAtIDEsCiAgICAgICAgICAgICAgImNvbHVtbiIgaW4gYUFyZ3MsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIHJldHVybiBtYXBwaW5nczsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIGlmICh0aGlzLl9tYXBwaW5nc1B0ciAhPT0gMCkgewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmZyZWVfbWFwcGluZ3ModGhpcy5fbWFwcGluZ3NQdHIpOwogICAgICAgICAgdGhpcy5fbWFwcGluZ3NQdHIgPSAwOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tcHV0ZSB0aGUgbGFzdCBjb2x1bW4gZm9yIGVhY2ggZ2VuZXJhdGVkIG1hcHBpbmcuIFRoZSBsYXN0IGNvbHVtbiBpcwogICAgICAgKiBpbmNsdXNpdmUuCiAgICAgICAqLwogICAgICBjb21wdXRlQ29sdW1uU3BhbnMoKSB7CiAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmNvbXB1dGVfY29sdW1uX3NwYW5zKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgIHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgPSB0cnVlOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UsIGxpbmUsIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBnZW5lcmF0ZWQKICAgICAgICogc291cmNlJ3MgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0CiAgICAgICAqIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvciBudWxsLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIG5hbWU6IFRoZSBvcmlnaW5hbCBpZGVudGlmaWVyLCBvciBudWxsLgogICAgICAgKi8KICAgICAgb3JpZ2luYWxQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIGdlbmVyYXRlZExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBpZiAobmVlZGxlLmdlbmVyYXRlZExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5vcmlnaW5hbF9sb2NhdGlvbl9mb3IoCiAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgIG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgYmlhcwogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgICBpZiAobWFwcGluZykgewogICAgICAgICAgaWYgKG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA9PT0gbmVlZGxlLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICAgICAgaWYgKHNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQoc291cmNlKTsKICAgICAgICAgICAgICBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwodGhpcy5zb3VyY2VSb290LCBzb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG5hbWUgPSB1dGlsLmdldEFyZyhtYXBwaW5nLCAibmFtZSIsIG51bGwpOwogICAgICAgICAgICBpZiAobmFtZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5hdChuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzb3VyY2U6IG51bGwsCiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgbmFtZTogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0cnVlIGlmIHdlIGhhdmUgdGhlIHNvdXJjZSBjb250ZW50IGZvciBldmVyeSBzb3VyY2UgaW4gdGhlIHNvdXJjZQogICAgICAgKiBtYXAsIGZhbHNlIG90aGVyd2lzZS4KICAgICAgICovCiAgICAgIGhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCkgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudC5sZW5ndGggPj0gdGhpcy5fc291cmNlcy5zaXplKCkgJiYgIXRoaXMuc291cmNlc0NvbnRlbnQuc29tZShmdW5jdGlvbihzYykgewogICAgICAgICAgcmV0dXJuIHNjID09IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KGFTb3VyY2UpOwogICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFtpbmRleF07CiAgICAgICAgfQogICAgICAgIGxldCByZWxhdGl2ZVNvdXJjZSA9IGFTb3VyY2U7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICByZWxhdGl2ZVNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5zb3VyY2VSb290LCByZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGxldCB1cmwzOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCAmJiAodXJsMyA9IHV0aWwudXJsUGFyc2UodGhpcy5zb3VyY2VSb290KSkpIHsKICAgICAgICAgIGNvbnN0IGZpbGVVcmlBYnNQYXRoID0gcmVsYXRpdmVTb3VyY2UucmVwbGFjZSgvXmZpbGU6XC9cLy8sICIiKTsKICAgICAgICAgIGlmICh1cmwzLnNjaGVtZSA9PSAiZmlsZSIgJiYgdGhpcy5fc291cmNlcy5oYXMoZmlsZVVyaUFic1BhdGgpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W3RoaXMuX3NvdXJjZXMuaW5kZXhPZihmaWxlVXJpQWJzUGF0aCldOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCghdXJsMy5wYXRoIHx8IHVybDMucGF0aCA9PSAiLyIpICYmIHRoaXMuX3NvdXJjZXMuaGFzKCIvIiArIHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFt0aGlzLl9zb3VyY2VzLmluZGV4T2YoIi8iICsgcmVsYXRpdmVTb3VyY2UpXTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgcmVsYXRpdmVTb3VyY2UgKyAnIiBpcyBub3QgaW4gdGhlIFNvdXJjZU1hcC4nKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoCiAgICAgICAqIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKTsKICAgICAgICBzb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgoc291cmNlKTsKICAgICAgICBpZiAoc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICBvcmlnaW5hbExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5nZW5lcmF0ZWRfbG9jYXRpb25fZm9yKAogICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICBuZWVkbGUuc291cmNlLAogICAgICAgICAgICBuZWVkbGUub3JpZ2luYWxMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICBiaWFzCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICAgIGlmIChtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgPT09IG5lZWRsZS5zb3VyY2UpIHsKICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgfTsKICAgIEJhc2ljU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLmNvbnN1bWVyID0gU291cmNlTWFwQ29uc3VtZXI7CiAgICBleHBvcnRzMi5CYXNpY1NvdXJjZU1hcENvbnN1bWVyID0gQmFzaWNTb3VyY2VNYXBDb25zdW1lcjsKICAgIHZhciBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBjb25zdCBzZWN0aW9ucyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNlY3Rpb25zIik7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgdGhhdC5fc291cmNlcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICAgIHRoYXQuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gbnVsbDsKICAgICAgICAgIGxldCBsYXN0T2Zmc2V0ID0gewogICAgICAgICAgICBsaW5lOiAtMSwKICAgICAgICAgICAgY29sdW1uOiAwCiAgICAgICAgICB9OwogICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHNlY3Rpb25zLm1hcCgocykgPT4gewogICAgICAgICAgICBpZiAocy51cmwpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1cHBvcnQgZm9yIHVybCBmaWVsZCBpbiBzZWN0aW9ucyBub3QgaW1wbGVtZW50ZWQuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdXRpbC5nZXRBcmcocywgIm9mZnNldCIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRMaW5lID0gdXRpbC5nZXRBcmcob2Zmc2V0LCAibGluZSIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRDb2x1bW4gPSB1dGlsLmdldEFyZyhvZmZzZXQsICJjb2x1bW4iKTsKICAgICAgICAgICAgaWYgKG9mZnNldExpbmUgPCBsYXN0T2Zmc2V0LmxpbmUgfHwgb2Zmc2V0TGluZSA9PT0gbGFzdE9mZnNldC5saW5lICYmIG9mZnNldENvbHVtbiA8IGxhc3RPZmZzZXQuY29sdW1uKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTZWN0aW9uIG9mZnNldHMgbXVzdCBiZSBvcmRlcmVkIGFuZCBub24tb3ZlcmxhcHBpbmcuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGFzdE9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgY29uc3QgY29ucyA9IG5ldyBTb3VyY2VNYXBDb25zdW1lcih1dGlsLmdldEFyZyhzLCAibWFwIiksIGFTb3VyY2VNYXBVUkwpOwogICAgICAgICAgICByZXR1cm4gY29ucy50aGVuKChjb25zdW1lcikgPT4gewogICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICBnZW5lcmF0ZWRPZmZzZXQ6IHsKICAgICAgICAgICAgICAgICAgLy8gVGhlIG9mZnNldCBmaWVsZHMgYXJlIDAtYmFzZWQsIGJ1dCB3ZSB1c2UgMS1iYXNlZCBpbmRpY2VzIHdoZW4KICAgICAgICAgICAgICAgICAgLy8gZW5jb2RpbmcvZGVjb2RpbmcgZnJvbSBWTFEuCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG9mZnNldExpbmUgKyAxLAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG9mZnNldENvbHVtbiArIDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjb25zdW1lcgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkpLnRoZW4oKHMpID0+IHsKICAgICAgICAgICAgdGhhdC5fc2VjdGlvbnMgPSBzOwogICAgICAgICAgICByZXR1cm4gdGhhdDsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIGBfX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQgYF9fb3JpZ2luYWxNYXBwaW5nc2AgYXJlIGFycmF5cyB0aGF0IGhvbGQgdGhlCiAgICAgIC8vIHBhcnNlZCBtYXBwaW5nIGNvb3JkaW5hdGVzIGZyb20gdGhlIHNvdXJjZSBtYXAncyAibWFwcGluZ3MiIGF0dHJpYnV0ZS4gVGhleQogICAgICAvLyBhcmUgbGF6aWx5IGluc3RhbnRpYXRlZCwgYWNjZXNzZWQgdmlhIHRoZSBgX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgLy8gYF9vcmlnaW5hbE1hcHBpbmdzYCBnZXR0ZXJzIHJlc3BlY3RpdmVseSwgYW5kIHdlIG9ubHkgcGFyc2UgdGhlIG1hcHBpbmdzCiAgICAgIC8vIGFuZCBjcmVhdGUgdGhlc2UgYXJyYXlzIG9uY2UgcXVlcmllZCBmb3IgYSBzb3VyY2UgbG9jYXRpb24uIFdlIGp1bXAgdGhyb3VnaAogICAgICAvLyB0aGVzZSBob29wcyBiZWNhdXNlIHRoZXJlIGNhbiBiZSBtYW55IHRob3VzYW5kcyBvZiBtYXBwaW5ncywgYW5kIHBhcnNpbmcKICAgICAgLy8gdGhlbSBpcyBleHBlbnNpdmUsIHNvIHdlIG9ubHkgd2FudCB0byBkbyBpdCBpZiB3ZSBtdXN0LgogICAgICAvLwogICAgICAvLyBFYWNoIG9iamVjdCBpbiB0aGUgYXJyYXlzIGlzIG9mIHRoZSBmb3JtOgogICAgICAvLwogICAgICAvLyAgICAgewogICAgICAvLyAgICAgICBnZW5lcmF0ZWRMaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBnZW5lcmF0ZWRDb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgc291cmNlOiBUaGUgcGF0aCB0byB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUgdGhhdCBnZW5lcmF0ZWQgdGhpcwogICAgICAvLyAgICAgICAgICAgICAgIGNodW5rIG9mIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsTGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGhhdAogICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsQ29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlIHRoYXQKICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG5hbWU6IFRoZSBuYW1lIG9mIHRoZSBvcmlnaW5hbCBzeW1ib2wgd2hpY2ggZ2VuZXJhdGVkIHRoaXMgY2h1bmsgb2YKICAgICAgLy8gICAgICAgICAgICAgY29kZS4KICAgICAgLy8gICAgIH0KICAgICAgLy8KICAgICAgLy8gQWxsIHByb3BlcnRpZXMgZXhjZXB0IGZvciBgZ2VuZXJhdGVkTGluZWAgYW5kIGBnZW5lcmF0ZWRDb2x1bW5gIGNhbiBiZQogICAgICAvLyBgbnVsbGAuCiAgICAgIC8vCiAgICAgIC8vIGBfZ2VuZXJhdGVkTWFwcGluZ3NgIGlzIG9yZGVyZWQgYnkgdGhlIGdlbmVyYXRlZCBwb3NpdGlvbnMuCiAgICAgIC8vCiAgICAgIC8vIGBfb3JpZ2luYWxNYXBwaW5nc2AgaXMgb3JkZXJlZCBieSB0aGUgb3JpZ2luYWwgcG9zaXRpb25zLgogICAgICBnZXQgX2dlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGlmICghdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzKSB7CiAgICAgICAgICB0aGlzLl9zb3J0R2VuZXJhdGVkTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nczsKICAgICAgfQogICAgICBnZXQgX29yaWdpbmFsTWFwcGluZ3MoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5ncykgewogICAgICAgICAgdGhpcy5fc29ydE9yaWdpbmFsTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzOwogICAgICB9CiAgICAgIGdldCBfZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCgpIHsKICAgICAgICBpZiAoIXRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgIH0KICAgICAgZ2V0IF9vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgfQogICAgICBfc29ydEdlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdGhpcy5fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQpOwogICAgICAgIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICB9CiAgICAgIF9zb3J0T3JpZ2luYWxNYXBwaW5ncygpIHsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMpOwogICAgICAgIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFRoZSBsaXN0IG9mIG9yaWdpbmFsIHNvdXJjZXMuCiAgICAgICAqLwogICAgICBnZXQgc291cmNlcygpIHsKICAgICAgICBjb25zdCBzb3VyY2VzID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIHNvdXJjZXMucHVzaCh0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzW2pdKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNvdXJjZXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSwgbGluZSwgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3QKICAgICAgICogd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb3IgbnVsbC4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBuYW1lOiBUaGUgb3JpZ2luYWwgaWRlbnRpZmllciwgb3IgbnVsbC4KICAgICAgICovCiAgICAgIG9yaWdpbmFsUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgY29uc3Qgc2VjdGlvbkluZGV4ID0gYmluYXJ5U2VhcmNoLnNlYXJjaCgKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX3NlY3Rpb25zLAogICAgICAgICAgZnVuY3Rpb24oYU5lZWRsZSwgc2VjdGlvbjIpIHsKICAgICAgICAgICAgY29uc3QgY21wID0gYU5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gc2VjdGlvbjIuZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmU7CiAgICAgICAgICAgIGlmIChjbXApIHsKICAgICAgICAgICAgICByZXR1cm4gY21wOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhTmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIHNlY3Rpb24yLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbc2VjdGlvbkluZGV4XTsKICAgICAgICBpZiAoIXNlY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZTogbnVsbCwKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBuYW1lOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2VjdGlvbi5jb25zdW1lci5vcmlnaW5hbFBvc2l0aW9uRm9yKHsKICAgICAgICAgIGxpbmU6IG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgIGNvbHVtbjogbmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBuZWVkbGUuZ2VuZXJhdGVkTGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKSwKICAgICAgICAgIGJpYXM6IGFBcmdzLmJpYXMKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIHRydWUgaWYgd2UgaGF2ZSB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGV2ZXJ5IHNvdXJjZSBpbiB0aGUgc291cmNlCiAgICAgICAqIG1hcCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgICAgKi8KICAgICAgaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NlY3Rpb25zLmV2ZXJ5KGZ1bmN0aW9uKHMpIHsKICAgICAgICAgIHJldHVybiBzLmNvbnN1bWVyLmhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBzZWN0aW9uLmNvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgdHJ1ZSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICByZXR1cm4gY29udGVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVNvdXJjZSArICciIGlzIG5vdCBpbiB0aGUgU291cmNlTWFwLicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGgKICAgICAgICogdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgaWYgKHNlY3Rpb24uY29uc3VtZXIuX2ZpbmRTb3VyY2VJbmRleCh1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpKSA9PT0gLTEpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBnZW5lcmF0ZWRQb3NpdGlvbiA9IHNlY3Rpb24uY29uc3VtZXIuZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpOwogICAgICAgICAgaWYgKGdlbmVyYXRlZFBvc2l0aW9uKSB7CiAgICAgICAgICAgIGNvbnN0IHJldCA9IHsKICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZFBvc2l0aW9uLmNvbHVtbiArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkTWFwcGluZ3MgPSB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IFtdOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTWFwcGluZ3MgPSB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgY29uc3Qgc2VjdGlvbk1hcHBpbmdzID0gW107CiAgICAgICAgICBzZWN0aW9uLmNvbnN1bWVyLmVhY2hNYXBwaW5nKChtKSA9PiBzZWN0aW9uTWFwcGluZ3MucHVzaChtKSk7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNlY3Rpb25NYXBwaW5ncy5sZW5ndGg7IGorKykgewogICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gc2VjdGlvbk1hcHBpbmdzW2pdOwogICAgICAgICAgICBsZXQgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNlY3Rpb24uY29uc3VtZXIuc291cmNlUm9vdCwgbnVsbCwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgdGhpcy5fc291cmNlcy5hZGQoc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5pbmRleE9mKHNvdXJjZSk7CiAgICAgICAgICAgIGxldCBuYW1lID0gbnVsbDsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSkgewogICAgICAgICAgICAgIHRoaXMuX25hbWVzLmFkZChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5pbmRleE9mKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRNYXBwaW5nID0gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUgKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gbWFwcGluZy5nZW5lcmF0ZWRMaW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZTogbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9OwogICAgICAgICAgICBnZW5lcmF0ZWRNYXBwaW5ncy5wdXNoKGFkanVzdGVkTWFwcGluZyk7CiAgICAgICAgICAgIGlmICh0eXBlb2YgYWRqdXN0ZWRNYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICBvcmlnaW5hbE1hcHBpbmdzLnB1c2goYWRqdXN0ZWRNYXBwaW5nKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gYUNvbnRleHQgfHwgbnVsbDsKICAgICAgICBjb25zdCBvcmRlciA9IGFPcmRlciB8fCBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI7CiAgICAgICAgbGV0IG1hcHBpbmdzOwogICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOgogICAgICAgICAgICBtYXBwaW5ncyA9IHRoaXMuX2dlbmVyYXRlZE1hcHBpbmdzOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVI6CiAgICAgICAgICAgIG1hcHBpbmdzID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nczsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gb3JkZXIgb2YgaXRlcmF0aW9uLiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5zb3VyY2VSb290OwogICAgICAgIG1hcHBpbmdzLm1hcChmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBsZXQgc291cmNlID0gbnVsbDsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogbWFwcGluZy5nZW5lcmF0ZWRMaW5lLAogICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICBvcmlnaW5hbExpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICBvcmlnaW5hbENvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgbmFtZTogbWFwcGluZy5uYW1lID09PSBudWxsID8gbnVsbCA6IHRoaXMuX25hbWVzLmF0KG1hcHBpbmcubmFtZSkKICAgICAgICAgIH07CiAgICAgICAgfSwgdGhpcykuZm9yRWFjaChhQ2FsbGJhY2ssIGNvbnRleHQpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBGaW5kIHRoZSBtYXBwaW5nIHRoYXQgYmVzdCBtYXRjaGVzIHRoZSBoeXBvdGhldGljYWwgIm5lZWRsZSIgbWFwcGluZyB0aGF0CiAgICAgICAqIHdlIGFyZSBzZWFyY2hpbmcgZm9yIGluIHRoZSBnaXZlbiAiaGF5c3RhY2siIG9mIG1hcHBpbmdzLgogICAgICAgKi8KICAgICAgX2ZpbmRNYXBwaW5nKGFOZWVkbGUsIGFNYXBwaW5ncywgYUxpbmVOYW1lLCBhQ29sdW1uTmFtZSwgYUNvbXBhcmF0b3IsIGFCaWFzKSB7CiAgICAgICAgaWYgKGFOZWVkbGVbYUxpbmVOYW1lXSA8PSAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJMaW5lIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEsIGdvdCAiICsgYU5lZWRsZVthTGluZU5hbWVdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFOZWVkbGVbYUNvbHVtbk5hbWVdIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ29sdW1uIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAsIGdvdCAiICsgYU5lZWRsZVthQ29sdW1uTmFtZV0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoLnNlYXJjaChhTmVlZGxlLCBhTWFwcGluZ3MsIGFDb21wYXJhdG9yLCBhQmlhcyk7CiAgICAgIH0KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIHNvdXJjZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKSwKICAgICAgICAgIG9yaWdpbmFsTGluZTogbGluZSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIsIDApCiAgICAgICAgfTsKICAgICAgICBuZWVkbGUuc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KG5lZWRsZS5zb3VyY2UpOwogICAgICAgIGlmIChuZWVkbGUuc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBbXTsKICAgICAgICBsZXQgaW5kZXggPSB0aGlzLl9maW5kTWFwcGluZygKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX29yaWdpbmFsTWFwcGluZ3MsCiAgICAgICAgICAib3JpZ2luYWxMaW5lIiwKICAgICAgICAgICJvcmlnaW5hbENvbHVtbiIsCiAgICAgICAgICB1dGlsLmNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zLAogICAgICAgICAgYmluYXJ5U2VhcmNoLkxFQVNUX1VQUEVSX0JPVU5ECiAgICAgICAgKTsKICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgbGV0IG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzW2luZGV4XTsKICAgICAgICAgIGlmIChhQXJncy5jb2x1bW4gPT09IHZvaWQgMCkgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbExpbmUgPSBtYXBwaW5nLm9yaWdpbmFsTGluZTsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IG9yaWdpbmFsTGluZSkgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IGxpbmUgJiYgbWFwcGluZy5vcmlnaW5hbENvbHVtbiA9PSBvcmlnaW5hbENvbHVtbikgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcHBpbmdzOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuZGVzdHJveSgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkluZGV4ZWRTb3VyY2VNYXBDb25zdW1lciA9IEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lcjsKICAgIGZ1bmN0aW9uIF9mYWN0b3J5KGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgIH0KICAgICAgY29uc3QgY29uc3VtZXIgPSBzb3VyY2VNYXAuc2VjdGlvbnMgIT0gbnVsbCA/IG5ldyBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIoc291cmNlTWFwLCBhU291cmNlTWFwVVJMKSA6IG5ldyBCYXNpY1NvdXJjZU1hcENvbnN1bWVyKHNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoY29uc3VtZXIpOwogICAgfQogICAgZnVuY3Rpb24gX2ZhY3RvcnlCU00oYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICByZXR1cm4gQmFzaWNTb3VyY2VNYXBDb25zdW1lci5mcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMKdmFyIHJlcXVpcmVfc291cmNlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1ub2RlLmpzIihleHBvcnRzMikgewogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBSRUdFWF9ORVdMSU5FID0gLyhccj9cbikvOwogICAgdmFyIE5FV0xJTkVfQ09ERSA9IDEwOwogICAgdmFyIGlzU291cmNlTm9kZSA9ICIkJCRpc1NvdXJjZU5vZGUkJCQiOwogICAgdmFyIFNvdXJjZU5vZGUgPSBjbGFzcyBfU291cmNlTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGFMaW5lLCBhQ29sdW1uLCBhU291cmNlLCBhQ2h1bmtzLCBhTmFtZSkgewogICAgICAgIHRoaXMuY2hpbGRyZW4gPSBbXTsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzID0ge307CiAgICAgICAgdGhpcy5saW5lID0gYUxpbmUgPT0gbnVsbCA/IG51bGwgOiBhTGluZTsKICAgICAgICB0aGlzLmNvbHVtbiA9IGFDb2x1bW4gPT0gbnVsbCA/IG51bGwgOiBhQ29sdW1uOwogICAgICAgIHRoaXMuc291cmNlID0gYVNvdXJjZSA9PSBudWxsID8gbnVsbCA6IGFTb3VyY2U7CiAgICAgICAgdGhpcy5uYW1lID0gYU5hbWUgPT0gbnVsbCA/IG51bGwgOiBhTmFtZTsKICAgICAgICB0aGlzW2lzU291cmNlTm9kZV0gPSB0cnVlOwogICAgICAgIGlmIChhQ2h1bmtzICE9IG51bGwpIHRoaXMuYWRkKGFDaHVua3MpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDcmVhdGVzIGEgU291cmNlTm9kZSBmcm9tIGdlbmVyYXRlZCBjb2RlIGFuZCBhIFNvdXJjZU1hcENvbnN1bWVyLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUdlbmVyYXRlZENvZGUgVGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwQ29uc3VtZXIgVGhlIFNvdXJjZU1hcCBmb3IgdGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhUmVsYXRpdmVQYXRoIE9wdGlvbmFsLiBUaGUgcGF0aCB0aGF0IHJlbGF0aXZlIHNvdXJjZXMgaW4gdGhlCiAgICAgICAqICAgICAgICBTb3VyY2VNYXBDb25zdW1lciBzaG91bGQgYmUgcmVsYXRpdmUgdG8uCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVN0cmluZ1dpdGhTb3VyY2VNYXAoYUdlbmVyYXRlZENvZGUsIGFTb3VyY2VNYXBDb25zdW1lciwgYVJlbGF0aXZlUGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgX1NvdXJjZU5vZGUoKTsKICAgICAgICBjb25zdCByZW1haW5pbmdMaW5lcyA9IGFHZW5lcmF0ZWRDb2RlLnNwbGl0KFJFR0VYX05FV0xJTkUpOwogICAgICAgIGxldCByZW1haW5pbmdMaW5lc0luZGV4ID0gMDsKICAgICAgICBjb25zdCBzaGlmdE5leHRMaW5lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjb25zdCBsaW5lQ29udGVudHMgPSBnZXROZXh0TGluZSgpOwogICAgICAgICAgY29uc3QgbmV3TGluZSA9IGdldE5leHRMaW5lKCkgfHwgIiI7CiAgICAgICAgICByZXR1cm4gbGluZUNvbnRlbnRzICsgbmV3TGluZTsKICAgICAgICAgIGZ1bmN0aW9uIGdldE5leHRMaW5lKCkgewogICAgICAgICAgICByZXR1cm4gcmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCA/IHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXgrK10gOiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBsZXQgbGFzdEdlbmVyYXRlZExpbmUgPSAxLCBsYXN0R2VuZXJhdGVkQ29sdW1uID0gMDsKICAgICAgICBsZXQgbGFzdE1hcHBpbmcgPSBudWxsOwogICAgICAgIGxldCBuZXh0TGluZTsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuZWFjaE1hcHBpbmcoZnVuY3Rpb24obWFwcGluZykgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkTGluZSA8IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgICAgY29uc3QgY29kZSA9IG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiAtIGxhc3RHZW5lcmF0ZWRDb2x1bW4pOwogICAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgY29kZSk7CiAgICAgICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgIG5vZGUuYWRkKHNoaWZ0TmV4dExpbmUoKSk7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobGFzdEdlbmVyYXRlZENvbHVtbiA8IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSB7CiAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgIG5vZGUuYWRkKG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbikpOwogICAgICAgICAgICByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSA9IG5leHRMaW5lLnN1YnN0cihtYXBwaW5nLmdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNYXBwaW5nID0gbWFwcGluZzsKICAgICAgICB9LCB0aGlzKTsKICAgICAgICBpZiAocmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCkgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nKSB7CiAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgIH0KICAgICAgICAgIG5vZGUuYWRkKHJlbWFpbmluZ0xpbmVzLnNwbGljZShyZW1haW5pbmdMaW5lc0luZGV4KS5qb2luKCIiKSk7CiAgICAgICAgfQogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgY29uc3QgY29udGVudCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKHNvdXJjZUZpbGUpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgICBpZiAoYVJlbGF0aXZlUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc291cmNlRmlsZSA9IHV0aWwuam9pbihhUmVsYXRpdmVQYXRoLCBzb3VyY2VGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBub2RlLnNldFNvdXJjZUNvbnRlbnQoc291cmNlRmlsZSwgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgICAgZnVuY3Rpb24gYWRkTWFwcGluZ1dpdGhDb2RlKG1hcHBpbmcsIGNvZGUpIHsKICAgICAgICAgIGlmIChtYXBwaW5nID09PSBudWxsIHx8IG1hcHBpbmcuc291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbm9kZS5hZGQoY29kZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBhUmVsYXRpdmVQYXRoID8gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIG1hcHBpbmcuc291cmNlKSA6IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBub2RlLmFkZChuZXcgX1NvdXJjZU5vZGUoCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgY29kZSwKICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUKICAgICAgICAgICAgKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgYWRkKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGFDaHVuay5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rKSB7CiAgICAgICAgICAgIHRoaXMuYWRkKGNodW5rKTsKICAgICAgICAgIH0sIHRoaXMpOwogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIGlmIChhQ2h1bmspIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKGFDaHVuayk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgY2h1bmsgb2YgZ2VuZXJhdGVkIEpTIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgcHJlcGVuZChhQ2h1bmspIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhQ2h1bmspKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gYUNodW5rLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgIHRoaXMucHJlcGVuZChhQ2h1bmtbaV0pOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4udW5zaGlmdChhQ2h1bmspOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAiRXhwZWN0ZWQgYSBTb3VyY2VOb2RlLCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIFNvdXJjZU5vZGVzIGFuZCBzdHJpbmdzLiBHb3QgIiArIGFDaHVuawogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBKUyBzbmlwcGV0cyBpbiB0aGlzIG5vZGUgYW5kIGl0cyBjaGlsZHJlbi4gVGhlCiAgICAgICAqIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggc25pcHBldCBvZiBKUyBhbmQgaXMgcGFzc2VkIHRoYXQKICAgICAgICogc25pcHBldCBhbmQgdGhlIGl0cyBvcmlnaW5hbCBhc3NvY2lhdGVkIHNvdXJjZSdzIGxpbmUvY29sdW1uIGxvY2F0aW9uLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrKGFGbikgewogICAgICAgIGxldCBjaHVuazsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgY2h1bmsgPSB0aGlzLmNoaWxkcmVuW2ldOwogICAgICAgICAgaWYgKGNodW5rW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgY2h1bmsud2FsayhhRm4pOwogICAgICAgICAgfSBlbHNlIGlmIChjaHVuayAhPT0gIiIpIHsKICAgICAgICAgICAgYUZuKGNodW5rLCB7CiAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB0aGlzLmxpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiB0aGlzLmNvbHVtbiwKICAgICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaWtlIGBTdHJpbmcucHJvdG90eXBlLmpvaW5gIGV4Y2VwdCBmb3IgU291cmNlTm9kZXMuIEluc2VydHMgYGFTdHJgIGJldHdlZW4KICAgICAgICogZWFjaCBvZiBgdGhpcy5jaGlsZHJlbmAuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhU2VwIFRoZSBzZXBhcmF0b3IuCiAgICAgICAqLwogICAgICBqb2luKGFTZXApIHsKICAgICAgICBsZXQgbmV3Q2hpbGRyZW47CiAgICAgICAgbGV0IGk7CiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7CiAgICAgICAgaWYgKGxlbiA+IDApIHsKICAgICAgICAgIG5ld0NoaWxkcmVuID0gW107CiAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2goYVNlcCk7CiAgICAgICAgICB9CiAgICAgICAgICBuZXdDaGlsZHJlbi5wdXNoKHRoaXMuY2hpbGRyZW5baV0pOwogICAgICAgICAgdGhpcy5jaGlsZHJlbiA9IG5ld0NoaWxkcmVuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ2FsbCBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2Ugb24gdGhlIHZlcnkgcmlnaHQtbW9zdCBzb3VyY2Ugc25pcHBldC4gVXNlZnVsCiAgICAgICAqIGZvciB0cmltbWluZyB3aGl0ZXNwYWNlIGZyb20gdGhlIGVuZCBvZiBhIHNvdXJjZSBub2RlLCBldGMuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhUGF0dGVybiBUaGUgcGF0dGVybiB0byByZXBsYWNlLgogICAgICAgKiBAcGFyYW0gYVJlcGxhY2VtZW50IFRoZSB0aGluZyB0byByZXBsYWNlIHRoZSBwYXR0ZXJuIHdpdGguCiAgICAgICAqLwogICAgICByZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IGxhc3RDaGlsZCA9IHRoaXMuY2hpbGRyZW5bdGhpcy5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICBpZiAobGFzdENoaWxkW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgIGxhc3RDaGlsZC5yZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbGFzdENoaWxkID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdID0gbGFzdENoaWxkLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4ucHVzaCgiIi5yZXBsYWNlKGFQYXR0ZXJuLCBhUmVwbGFjZW1lbnQpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNldCB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGEgc291cmNlIGZpbGUuIFRoaXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yCiAgICAgICAqIGluIHRoZSBzb3VyY2VzQ29udGVudCBmaWVsZC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VGaWxlIFRoZSBmaWxlbmFtZSBvZiB0aGUgc291cmNlIGZpbGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VDb250ZW50IFRoZSBjb250ZW50IG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoYVNvdXJjZUZpbGUpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXYWxrIG92ZXIgdGhlIHRyZWUgb2YgU291cmNlTm9kZXMuIFRoZSB3YWxraW5nIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaAogICAgICAgKiBzb3VyY2UgZmlsZSBjb250ZW50IGFuZCBpcyBwYXNzZWQgdGhlIGZpbGVuYW1lIGFuZCBzb3VyY2UgY29udGVudC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFGbiBUaGUgdHJhdmVyc2FsIGZ1bmN0aW9uLgogICAgICAgKi8KICAgICAgd2Fsa1NvdXJjZUNvbnRlbnRzKGFGbikgewogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBpZiAodGhpcy5jaGlsZHJlbltpXVtpc1NvdXJjZU5vZGVdKSB7CiAgICAgICAgICAgIHRoaXMuY2hpbGRyZW5baV0ud2Fsa1NvdXJjZUNvbnRlbnRzKGFGbik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNvdXJjZXMgPSBPYmplY3Qua2V5cyh0aGlzLnNvdXJjZUNvbnRlbnRzKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gc291cmNlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgYUZuKHV0aWwuZnJvbVNldFN0cmluZyhzb3VyY2VzW2ldKSwgdGhpcy5zb3VyY2VDb250ZW50c1tzb3VyY2VzW2ldXSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGlzIHNvdXJjZSBub2RlLiBXYWxrcyBvdmVyIHRoZSB0cmVlCiAgICAgICAqIGFuZCBjb25jYXRlbmF0ZXMgYWxsIHRoZSB2YXJpb3VzIHNuaXBwZXRzIHRvZ2V0aGVyIHRvIG9uZSBzdHJpbmcuCiAgICAgICAqLwogICAgICB0b1N0cmluZygpIHsKICAgICAgICBsZXQgc3RyMiA9ICIiOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaykgewogICAgICAgICAgc3RyMiArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUgYWxvbmcgd2l0aCBhIHNvdXJjZQogICAgICAgKiBtYXAuCiAgICAgICAqLwogICAgICB0b1N0cmluZ1dpdGhTb3VyY2VNYXAoYUFyZ3MpIHsKICAgICAgICBjb25zdCBnZW5lcmF0ZWQgPSB7CiAgICAgICAgICBjb2RlOiAiIiwKICAgICAgICAgIGxpbmU6IDEsCiAgICAgICAgICBjb2x1bW46IDAKICAgICAgICB9OwogICAgICAgIGNvbnN0IG1hcDIgPSBuZXcgU291cmNlTWFwR2VuZXJhdG9yKGFBcmdzKTsKICAgICAgICBsZXQgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxTb3VyY2UgPSBudWxsOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxMaW5lID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTmFtZSA9IG51bGw7CiAgICAgICAgdGhpcy53YWxrKGZ1bmN0aW9uKGNodW5rLCBvcmlnaW5hbCkgewogICAgICAgICAgZ2VuZXJhdGVkLmNvZGUgKz0gY2h1bms7CiAgICAgICAgICBpZiAob3JpZ2luYWwuc291cmNlICE9PSBudWxsICYmIG9yaWdpbmFsLmxpbmUgIT09IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0T3JpZ2luYWxTb3VyY2UgIT09IG9yaWdpbmFsLnNvdXJjZSB8fCBsYXN0T3JpZ2luYWxMaW5lICE9PSBvcmlnaW5hbC5saW5lIHx8IGxhc3RPcmlnaW5hbENvbHVtbiAhPT0gb3JpZ2luYWwuY29sdW1uIHx8IGxhc3RPcmlnaW5hbE5hbWUgIT09IG9yaWdpbmFsLm5hbWUpIHsKICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcDIuYWRkTWFwcGluZyh7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkOiB7CiAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIGZvciAobGV0IGlkeCA9IDAsIGxlbmd0aCA9IGNodW5rLmxlbmd0aDsgaWR4IDwgbGVuZ3RoOyBpZHgrKykgewogICAgICAgICAgICBpZiAoY2h1bmsuY2hhckNvZGVBdChpZHgpID09PSBORVdMSU5FX0NPREUpIHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQubGluZSsrOwogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4gPSAwOwogICAgICAgICAgICAgIGlmIChpZHggKyAxID09PSBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgICAgICBzb3VyY2VNYXBwaW5nQWN0aXZlID0gZmFsc2U7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgICBzb3VyY2U6IG9yaWdpbmFsLnNvdXJjZSwKICAgICAgICAgICAgICAgICAgb3JpZ2luYWw6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogb3JpZ2luYWwuY29sdW1uCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBuYW1lOiBvcmlnaW5hbC5uYW1lCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbisrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy53YWxrU291cmNlQ29udGVudHMoZnVuY3Rpb24oc291cmNlRmlsZSwgc291cmNlQ29udGVudCkgewogICAgICAgICAgbWFwMi5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXA6IG1hcDIgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9zb3VyY2UtbWFwLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvc291cmNlLW1hcC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lcigpLlNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuU291cmNlTm9kZSA9IHJlcXVpcmVfc291cmNlX25vZGUoKS5Tb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50ZW1wbGF0ZVBhcnNlciA9IHRlbXBsYXRlUGFyc2VyOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICB2YXIgc291cmNlX21hcF8xID0gcmVxdWlyZV9zb3VyY2VfbWFwKCk7CiAgICB2YXIga0ludGVycG9sYXRlUmUgPSAvPCU9KFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0NvbW1lbnRSZSA9IC88JSMoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXNjYXBlUmUgPSAvPCUtKFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0V2YWx1YXRlUmUgPSAvPCUoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrSHRtbEVzY2FwZXMgPSB7CiAgICAgICImIjogIiZhbXA7IiwKICAgICAgIjwiOiAiJmx0OyIsCiAgICAgICI+IjogIiZndDsiLAogICAgICAnIic6ICImcXVvdDsiLAogICAgICAiJyI6ICImIzM5OyIsCiAgICAgICJgIjogIiYjOTY7IgogICAgfTsKICAgIHZhciByZVVuZXNjYXBlZEh0bWwgPSBuZXcgUmVnRXhwKGBbJHtPYmplY3Qua2V5cyhrSHRtbEVzY2FwZXMpLmpvaW4oIiIpfV1gLCAiZyIpOwogICAgZnVuY3Rpb24gX3Bvc2l0aW9uRm9yKGNvbnRlbnQsIG9mZnNldCkgewogICAgICBsZXQgbGluZSA9IDE7CiAgICAgIGxldCBjb2x1bW4gPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9mZnNldCAtIDE7IGkrKykgewogICAgICAgIGlmIChjb250ZW50W2ldID09ICJcbiIpIHsKICAgICAgICAgIGxpbmUrKzsKICAgICAgICAgIGNvbHVtbiA9IDA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbHVtbisrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGxpbmUsCiAgICAgICAgY29sdW1uCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZVBhcnNlcihzb3VyY2VUZXh0LCBmaWxlTmFtZSkgewogICAgICBjb25zdCBjaGlsZHJlbiA9IFtdOwogICAgICBjb25zdCByZUV4cHJlc3Npb25zID0gW2tFc2NhcGVSZSwga0NvbW1lbnRSZSwga0ludGVycG9sYXRlUmUsIGtFdmFsdWF0ZVJlXTsKICAgICAgY29uc3QgcmVEZWxpbWl0ZXJzID0gUmVnRXhwKHJlRXhwcmVzc2lvbnMubWFwKCh4KSA9PiB4LnNvdXJjZSkuam9pbigifCIpICsgInwkIiwgImciKTsKICAgICAgY29uc3QgcGFyc2VkID0gc291cmNlVGV4dC5zcGxpdChyZURlbGltaXRlcnMpOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHN0YXJ0ID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCk7CiAgICAgIGxldCBlbmQ7CiAgICAgIGNvbnN0IGluY3JlbWVudCA9IHJlRXhwcmVzc2lvbnMubGVuZ3RoICsgMTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJzZWQubGVuZ3RoOyBpICs9IGluY3JlbWVudCkgewogICAgICAgIGNvbnN0IFtjb250ZW50LCBlc2NhcGUyLCBjb21tZW50LCBpbnRlcnBvbGF0ZSwgZXZhbHVhdGVdID0gcGFyc2VkLnNsaWNlKGksIGkgKyBpbmNyZW1lbnQpOwogICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29udGVudC5sZW5ndGgpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJjb250ZW50IiwgY29udGVudCwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgICBpZiAoZXNjYXBlMikgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGVzY2FwZTIubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXNjYXBlMi5sZW5ndGggKyA1OwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJlc2NhcGUiLCBleHByZXNzaW9uOiBlc2NhcGUyLCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChjb21tZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29tbWVudC5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBjb21tZW50Lmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbW1lbnQiLCB0ZXh0OiBjb21tZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChpbnRlcnBvbGF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGludGVycG9sYXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGludGVycG9sYXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAga2luZDogImludGVycG9sYXRlIiwKICAgICAgICAgICAgZXhwcmVzc2lvbjogaW50ZXJwb2xhdGUsCiAgICAgICAgICAgIHN0YXJ0LAogICAgICAgICAgICBlbmQKICAgICAgICAgIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChldmFsdWF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGV2YWx1YXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGV2YWx1YXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImV2YWx1YXRlIiwgZXhwcmVzc2lvbjogZXZhbHVhdGUsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBmaWxlTmFtZSwKICAgICAgICBjb250ZW50OiBzb3VyY2VUZXh0LAogICAgICAgIGNoaWxkcmVuCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZUZhc3QoYXN0LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgcmV0dXJuIGAKICAgIHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewogICAgICBvYmogfHwgKG9iaiA9IHt9KTsKICAgICAgbGV0IF9fdDsKICAgICAgbGV0IF9fcCA9ICcnOwogICAgICBjb25zdCBfX2VzY2FwZXMgPSAke0pTT04uc3RyaW5naWZ5KGtIdG1sRXNjYXBlcyl9OwogICAgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CgogICAgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgcmV0dXJuIHMgPyBzLnJlcGxhY2UoX19lc2NhcGVzcmUsIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gX19lc2NhcGVzW2tleV07IH0pIDogJyc7CiAgICAgIH07CiAgICAgIHdpdGggKG9iaikgewogICAgICAgICR7YXN0LmNoaWxkcmVuLm1hcCgobm9kZSkgPT4gewogICAgICAgIHN3aXRjaCAobm9kZS5raW5kKSB7CiAgICAgICAgICBjYXNlICJjb250ZW50IjoKICAgICAgICAgICAgcmV0dXJuIGBfX3AgKz0gJHtKU09OLnN0cmluZ2lmeShub2RlLmNvbnRlbnQpfTtgOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAoKF9fdCA9ICgke25vZGUuZXhwcmVzc2lvbn0pKSA9PSBudWxsKSA/ICcnIDogX190O2A7CiAgICAgICAgICBjYXNlICJlc2NhcGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSBfX2UoJHtub2RlLmV4cHJlc3Npb259KTtgOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5leHByZXNzaW9uOwogICAgICAgIH0KICAgICAgfSkuam9pbigiXG4iKX0KICAgICAgfQoKICAgICAgcmV0dXJuIF9fcDsKICAgIH07CiAgYDsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc291cmNlVXJsID0gYXN0LmZpbGVOYW1lOwogICAgICBjb25zdCBtb2R1bGUzID0gb3B0aW9ucyAmJiBvcHRpb25zLm1vZHVsZSA/ICJtb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0iIDogIiI7CiAgICAgIGNvbnN0IHJlSHRtbEVzY2FwZSA9IHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UucmVwbGFjZSgvWyddL2csICJcXFxcXFwnIik7CiAgICAgIGNvbnN0IHByZWFtYmxlID0gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKDEsIDAsIHNvdXJjZVVybCwgIiIpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCBbCiAgICAgICAgYHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewpgLAogICAgICAgICIgIG9iaiB8fCAob2JqID0ge30pO1xuIiwKICAgICAgICAiICBsZXQgX190O1xuIiwKICAgICAgICAnICBsZXQgX19wID0gIiI7XG4nLAogICAgICAgIGAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CmAsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzcmUgPSBuZXcgUmVnRXhwKCcke3JlSHRtbEVzY2FwZX0nLCAnZycpOwpgLAogICAgICAgIGAKYCwKICAgICAgICBgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7IGAsCiAgICAgICAgYCAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJztgLAogICAgICAgIGAgIH07CmAsCiAgICAgICAgYCAgd2l0aCAob2JqKSB7CmAKICAgICAgXSkpOwogICAgICBjb25zdCBlbmQgPSBhc3QuY2hpbGRyZW4ubGVuZ3RoID8gYXN0LmNoaWxkcmVuW2FzdC5jaGlsZHJlbi5sZW5ndGggLSAxXS5lbmQgOiB7IGxpbmU6IDAsIGNvbHVtbjogMCB9OwogICAgICBjb25zdCBub2RlcyA9IGFzdC5jaGlsZHJlbi5yZWR1Y2UoKGNodW5rLCBub2RlKSA9PiB7CiAgICAgICAgbGV0IGNvZGUyID0gIiI7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wID0gX19wIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5jb250ZW50LnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCAiXG4gICAgKyAiICsgSlNPTi5zdHJpbmdpZnkobGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSkpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIjtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wICs9ICgoX190ID0gIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICcpID09IG51bGwgPyAiIiA6IF9fdCk7XG4nKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gX19lKCIpLAogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiKTtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIlxuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjaHVuay5hZGQobmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgY29kZTIpKTsKICAgICAgfSwgcHJlYW1ibGUpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHNvdXJjZVVybCwgWyIgIH07XG4iLCAiXG4iLCAiICByZXR1cm4gX19wO1xuIiwgIn1cbiJdKSk7CiAgICAgIGNvbnN0IGNvZGUgPSBub2Rlcy50b1N0cmluZ1dpdGhTb3VyY2VNYXAoewogICAgICAgIGZpbGU6IHNvdXJjZVVybCwKICAgICAgICBzb3VyY2VSb290OiBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlUm9vdCB8fCAiLiIKICAgICAgfSk7CiAgICAgIGNvZGUubWFwLnNldFNvdXJjZUNvbnRlbnQoc291cmNlVXJsLCBhc3QuY29udGVudCk7CiAgICAgIHJldHVybiBjb2RlLmNvZGUgKyAiXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIgKyBCdWZmZXIuZnJvbShjb2RlLm1hcC50b1N0cmluZygpKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMoY29udGVudCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlVVJMIHx8ICJlanMiOwogICAgICBjb25zdCBhc3QgPSB0ZW1wbGF0ZVBhcnNlcihjb250ZW50LCBzb3VyY2VVcmwpOwogICAgICBsZXQgc291cmNlOwogICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnNvdXJjZU1hcCkgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpOwogICAgICB9IGVsc2UgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGNvbnN0IGZuID0gRnVuY3Rpb24oIm1vZHVsZSIsIHNvdXJjZSk7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gb3B0aW9ucy5tb2R1bGUgPT09IHRydWUgPyB7IGV4cG9ydHM6IHt9IH0gOiBvcHRpb25zLm1vZHVsZSA6IG51bGw7CiAgICAgIGNvbnN0IHJlc3VsdCA9IGZuKG1vZHVsZTMpOwogICAgICByZXN1bHQuc291cmNlID0gc291cmNlOwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzCnZhciByZXF1aXJlX3BhcnRpYWxseV9vcmRlcmVkX3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanMKdmFyIHJlcXVpcmVfcHJpb3JpdHlfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gdm9pZCAwOwogICAgdmFyIFByaW9yaXR5UXVldWUgPSBjbGFzcyB7CiAgICAgIF9jb21wYXJhdG9yOwogICAgICBfaXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2NvbXBhcmF0b3IpIHsKICAgICAgICB0aGlzLl9jb21wYXJhdG9yID0gX2NvbXBhcmF0b3I7CiAgICAgIH0KICAgICAgY2xlYXIoKSB7CiAgICAgICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgfQogICAgICBwdXNoKGl0ZW0pIHsKICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2l0ZW1zLmZpbmRJbmRleCgoZXhpc3RpbmcpID0+IHRoaXMuX2NvbXBhcmF0b3IoaXRlbSwgZXhpc3RpbmcpIDw9IDApOwogICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2goaXRlbSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnNwbGljZShpbmRleCwgMCwgaXRlbSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBvcCgpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc3BsaWNlKDAsIDEpWzBdOwogICAgICB9CiAgICAgIHBlZWsoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zWzBdOwogICAgICB9CiAgICAgIGdldCBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5sZW5ndGg7CiAgICAgIH0KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaW9yaXR5UXVldWUgPSBQcmlvcml0eVF1ZXVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSBpc1Byb21pc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2Uob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqLnRoZW4gPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qcwp2YXIgcmVxdWlyZV91dGlsczMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcwp2YXIgcmVxdWlyZV92aXNpdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXNpdEpzb24gPSB2aXNpdEpzb247CiAgICBleHBvcnRzMi52aXNpdEpzb25TY2hlbWEgPSB2aXNpdEpzb25TY2hlbWE7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBwb2ludGVyXzEgPSByZXF1aXJlX3BvaW50ZXIoKTsKICAgIGZ1bmN0aW9uIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiAhPT0gIm9iamVjdCIgfHwgc2NoZW1hMiA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hMi50eXBlID09ICJvYmplY3QiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgJiYgdHlwZW9mIHNjaGVtYTIucHJvcGVydGllc1trZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hMi5wcm9wZXJ0aWVzW2tleV07CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMi5hZGRpdGlvbmFsUHJvcGVydGllcyA9PSAib2JqZWN0IikgewogICAgICAgICAgcmV0dXJuIHNjaGVtYTIuYWRkaXRpb25hbFByb3BlcnRpZXM7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiIHx8IHNjaGVtYTIudHlwZSA9PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiID8gc2NoZW1hMi5pdGVtcyA6IHZvaWQgMDsKICAgICAgfQogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogICAgZnVuY3Rpb24gX3Zpc2l0SnNvblJlY3Vyc2l2ZShqc29uMiwgdmlzaXRvciwgcHRyLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCkgewogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSB8fCBzY2hlbWEyID09PSBmYWxzZSkgewogICAgICAgIHNjaGVtYTIgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIgJiYgc2NoZW1hMi5oYXNPd25Qcm9wZXJ0eSgiJHJlZiIpICYmIHR5cGVvZiBzY2hlbWEyWyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICBpZiAocmVmUmVzb2x2ZXIpIHsKICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVmUmVzb2x2ZXIoc2NoZW1hMlsiJHJlZiJdLCBjb250ZXh0KTsKICAgICAgICAgIHNjaGVtYTIgPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICBjb250ZXh0ID0gcmVzb2x2ZWQuY29udGV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3QgdmFsdWUgPSB2aXNpdG9yKGpzb24yLCBwdHIsIHNjaGVtYTIsIHJvb3QpOwogICAgICByZXR1cm4gKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKSh2YWx1ZSkgPyB2YWx1ZSA6ICgwLCByeGpzXzEub2YpKHZhbHVlKSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHZhbHVlMikgPT4gewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlMikpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKSh2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKGl0ZW0sIGkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoaXRlbSwgdmlzaXRvciwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKHB0ciwgIiIgKyBpKSwgX2dldE9iamVjdFN1YlNjaGVtYShzY2hlbWEyLCAiIiArIGkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB2YWx1ZTJbaV0gPSB4KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlMiA9PSAib2JqZWN0IiAmJiB2YWx1ZTIgIT09IG51bGwpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZTIpKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChrZXkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUodmFsdWUyW2tleV0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsIGtleSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbHVlMiwga2V5KTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLndyaXRhYmxlICYmIHZhbHVlMltrZXldICE9PSB4KSB7CiAgICAgICAgICAgICAgICB2YWx1ZTJba2V5XSA9IHg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodmFsdWUyKTsKICAgICAgICB9CiAgICAgIH0pKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvbihqc29uMiwgdmlzaXRvciwgc2NoZW1hMiwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbjIsIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiB2aXNpdEpzb25TY2hlbWEoc2NoZW1hMiwgdmlzaXRvcikgewogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UgfHwgc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBjb25zdCBrZXl3b3JkcyA9IHsKICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgY29udGFpbnM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgICBub3Q6IHRydWUKICAgICAgfTsKICAgICAgY29uc3QgYXJyYXlLZXl3b3JkcyA9IHsKICAgICAgICBpdGVtczogdHJ1ZSwKICAgICAgICBhbGxPZjogdHJ1ZSwKICAgICAgICBhbnlPZjogdHJ1ZSwKICAgICAgICBvbmVPZjogdHJ1ZQogICAgICB9OwogICAgICBjb25zdCBwcm9wc0tleXdvcmRzID0gewogICAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICAgIHByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlLAogICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgIH07CiAgICAgIGZ1bmN0aW9uIF90cmF2ZXJzZShzY2hlbWEzLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KSB7CiAgICAgICAgaWYgKHNjaGVtYTMgJiYgdHlwZW9mIHNjaGVtYTMgPT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkoc2NoZW1hMykpIHsKICAgICAgICAgIHZpc2l0b3Ioc2NoZW1hMywganNvblB0ciwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCk7CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhzY2hlbWEzKSkgewogICAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEzW2tleV07CiAgICAgICAgICAgIGlmIChrZXkgaW4gcHJvcHNLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIG9mIE9iamVjdC5rZXlzKHNjaCkpIHsKICAgICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtwcm9wXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgcHJvcCksIHJvb3RTY2hlbWEsIHNjaGVtYTMsIHByb3ApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4ga2V5d29yZHMpIHsKICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5KSwgcm9vdFNjaGVtYSwgc2NoZW1hMywga2V5KTsKICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX3RyYXZlcnNlKHNjaGVtYTIsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3JlZ2lzdHJ5LmpzCnZhciByZXF1aXJlX3JlZ2lzdHJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Db3JlU2NoZW1hUmVnaXN0cnkgPSBleHBvcnRzMi5TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfYWp2KCkpOwogICAgdmFyIGFqdl9mb3JtYXRzXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZV9kaXN0KCkpOwogICAgdmFyIGh0dHAgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgiaHR0cCIpKTsKICAgIHZhciBodHRwcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJodHRwcyIpKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFVybCA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJ1cmwiKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzMygpOwogICAgdmFyIHV0aWxzXzIgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgdXRpbGl0eV8xID0gcmVxdWlyZV91dGlsaXR5KCk7CiAgICB2YXIgdmlzaXRvcl8xID0gcmVxdWlyZV92aXNpdG9yKCk7CiAgICB2YXIgU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIF9TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGVycm9yczsKICAgICAgY29uc3RydWN0b3IoZXJyb3JzLCBiYXNlTWVzc2FnZSA9ICJTY2hlbWEgdmFsaWRhdGlvbiBmYWlsZWQgd2l0aCB0aGUgZm9sbG93aW5nIGVycm9yczoiKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgc3VwZXIoIlNjaGVtYSB2YWxpZGF0aW9uIGZhaWxlZC4iKTsKICAgICAgICAgIHRoaXMuZXJyb3JzID0gW107CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gX1NjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24uY3JlYXRlTWVzc2FnZXMoZXJyb3JzKTsKICAgICAgICBzdXBlcihgJHtiYXNlTWVzc2FnZX0KICAke21lc3NhZ2VzLmpvaW4oIlxuICAiKX1gKTsKICAgICAgICB0aGlzLmVycm9ycyA9IGVycm9yczsKICAgICAgfQogICAgICBzdGF0aWMgY3JlYXRlTWVzc2FnZXMoZXJyb3JzKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGVycm9ycy5tYXAoKGVycikgPT4gewogICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgRGF0YSBwYXRoICR7SlNPTi5zdHJpbmdpZnkoZXJyLmluc3RhbmNlUGF0aCl9ICR7ZXJyLm1lc3NhZ2V9YDsKICAgICAgICAgIGlmIChlcnIucGFyYW1zKSB7CiAgICAgICAgICAgIHN3aXRjaCAoZXJyLmtleXdvcmQpIHsKICAgICAgICAgICAgICBjYXNlICJhZGRpdGlvbmFsUHJvcGVydGllcyI6CiAgICAgICAgICAgICAgICBtZXNzYWdlICs9IGAoJHtlcnIucGFyYW1zLmFkZGl0aW9uYWxQcm9wZXJ0eX0pYDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgImVudW0iOgogICAgICAgICAgICAgICAgbWVzc2FnZSArPSBgLiBBbGxvd2VkIHZhbHVlcyBhcmU6ICR7ZXJyLnBhcmFtcy5hbGxvd2VkVmFsdWVzPy5tYXAoKHYpID0+IGAiJHt2fSJgKS5qb2luKCIsICIpfWA7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIG1lc3NhZ2UgKyAiLiI7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG1lc3NhZ2VzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IFNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb247CiAgICB2YXIgQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gY2xhc3MgX0NvcmVTY2hlbWFSZWdpc3RyeSB7CiAgICAgIF9hanY7CiAgICAgIF91cmlDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF91cmlIYW5kbGVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9wcmUgPSBuZXcgdXRpbHNfMS5QYXJ0aWFsbHlPcmRlcmVkU2V0KCk7CiAgICAgIF9wb3N0ID0gbmV3IHV0aWxzXzEuUGFydGlhbGx5T3JkZXJlZFNldCgpOwogICAgICBfY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSBmYWxzZTsKICAgICAgX3Byb21wdFByb3ZpZGVyOwogICAgICBfc291cmNlTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoZm9ybWF0cyA9IFtdKSB7CiAgICAgICAgdGhpcy5fYWp2ID0gbmV3IGFqdl8xLmRlZmF1bHQoewogICAgICAgICAgc3RyaWN0OiBmYWxzZSwKICAgICAgICAgIGxvYWRTY2hlbWE6ICh1cmkpID0+IHRoaXMuX2ZldGNoKHVyaSksCiAgICAgICAgICBwYXNzQ29udGV4dDogdHJ1ZQogICAgICAgIH0pOwogICAgICAgICgwLCBhanZfZm9ybWF0c18xLmRlZmF1bHQpKHRoaXMuX2Fqdik7CiAgICAgICAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykgewogICAgICAgICAgdGhpcy5hZGRGb3JtYXQoZm9ybWF0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXN5bmMgX2ZldGNoKHVyaSkgewogICAgICAgIGNvbnN0IG1heWJlU2NoZW1hID0gdGhpcy5fdXJpQ2FjaGUuZ2V0KHVyaSk7CiAgICAgICAgaWYgKG1heWJlU2NoZW1hKSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTY2hlbWE7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgaGFuZGxlciBvZiB0aGlzLl91cmlIYW5kbGVycykgewogICAgICAgICAgbGV0IGhhbmRsZXJSZXN1bHQgPSBoYW5kbGVyKHVyaSk7CiAgICAgICAgICBpZiAoaGFuZGxlclJlc3VsdCA9PT0gbnVsbCB8fCBoYW5kbGVyUmVzdWx0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKGhhbmRsZXJSZXN1bHQpKSB7CiAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhhbmRsZXJSZXN1bHQpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCBoYW5kbGVyUmVzdWx0OwogICAgICAgICAgdGhpcy5fdXJpQ2FjaGUuc2V0KHVyaSwgdmFsdWUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewogICAgICAgICAgY29uc3QgdXJsMyA9IG5ldyBVcmwuVVJMKHVyaSk7CiAgICAgICAgICBjb25zdCBjbGllbnQgPSB1cmwzLnByb3RvY29sID09PSAiaHR0cHM6IiA/IGh0dHBzIDogaHR0cDsKICAgICAgICAgIGNsaWVudC5nZXQodXJsMywgKHJlcykgPT4gewogICAgICAgICAgICBpZiAoIXJlcy5zdGF0dXNDb2RlIHx8IHJlcy5zdGF0dXNDb2RlID49IDMwMCkgewogICAgICAgICAgICAgIHJlcy5yZXN1bWUoKTsKICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBSZXF1ZXN0IGZhaWxlZC4gU3RhdHVzIENvZGU6ICR7cmVzLnN0YXR1c0NvZGV9YCkpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcy5zZXRFbmNvZGluZygidXRmOCIpOwogICAgICAgICAgICAgIGxldCBkYXRhID0gIiI7CiAgICAgICAgICAgICAgcmVzLm9uKCJkYXRhIiwgKGNodW5rKSA9PiB7CiAgICAgICAgICAgICAgICBkYXRhICs9IGNodW5rOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJlcy5vbigiZW5kIiwgKCkgPT4gewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QganNvbjIgPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICAgICAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCBqc29uMik7CiAgICAgICAgICAgICAgICAgIHJlc29sdmUoanNvbjIpOwogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgdHJhbnNmb3JtYXRpb24gc3RlcCBiZWZvcmUgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3J9IHZpc2l0b3IgVGhlIHZpc2l0b3IgdG8gdHJhbnNmb3JtIGV2ZXJ5IHZhbHVlLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yW119IGRlcHMgQSBsaXN0IG9mIG90aGVyIHZpc2l0b3JzIHRvIHJ1biBiZWZvcmUuCiAgICAgICAqLwogICAgICBhZGRQcmVUcmFuc2Zvcm0odmlzaXRvciwgZGVwcykgewogICAgICAgIHRoaXMuX3ByZS5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHRyYW5zZm9ybWF0aW9uIHN0ZXAgYWZ0ZXIgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uIFRoZSBKU09OIHdpbGwgbm90IGJlIHZhbGlkYXRlZAogICAgICAgKiBhZnRlciB0aGUgUE9TVCwgc28gaWYgdHJhbnNmb3JtYXRpb25zIGFyZSBub3QgY29tcGF0aWJsZSB3aXRoIHRoZSBTY2hlbWEgaXQgd2lsbCBub3QgcmVzdWx0CiAgICAgICAqIGluIGFuIGVycm9yLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yfSB2aXNpdG9yIFRoZSB2aXNpdG9yIHRvIHRyYW5zZm9ybSBldmVyeSB2YWx1ZS4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcltdfSBkZXBzIEEgbGlzdCBvZiBvdGhlciB2aXNpdG9ycyB0byBydW4gYmVmb3JlLgogICAgICAgKi8KICAgICAgYWRkUG9zdFRyYW5zZm9ybSh2aXNpdG9yLCBkZXBzKSB7CiAgICAgICAgdGhpcy5fcG9zdC5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgX3Jlc29sdmVyKHJlZiwgdmFsaWRhdGUpIHsKICAgICAgICBpZiAoIXZhbGlkYXRlIHx8ICFyZWYpIHsKICAgICAgICAgIHJldHVybiB7fTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hMiA9IHZhbGlkYXRlLnNjaGVtYUVudi5yb290LnNjaGVtYTsKICAgICAgICBjb25zdCBpZCA9IHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IiA/IHNjaGVtYTIuJGlkIDogbnVsbDsKICAgICAgICBsZXQgZnVsbFJlZmVyZW5jZSA9IHJlZjsKICAgICAgICBpZiAodHlwZW9mIGlkID09PSAic3RyaW5nIikgewogICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IFVybC5yZXNvbHZlKGlkLCByZWYpOwogICAgICAgICAgaWYgKHJlZi5zdGFydHNXaXRoKCIjIikpIHsKICAgICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IGlkICsgZnVsbFJlZmVyZW5jZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgcmVzb2x2ZWRTY2hlbWEgPSB0aGlzLl9hanYuZ2V0U2NoZW1hKGZ1bGxSZWZlcmVuY2UpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjb250ZXh0OiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hRW52LnZhbGlkYXRlLAogICAgICAgICAgc2NoZW1hOiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRmxhdHRlbiB0aGUgU2NoZW1hLCByZXNvbHZpbmcgYW5kIHJlcGxhY2luZyBhbGwgdGhlIHJlZnMuIE1ha2VzIGl0IGludG8gYSBzeW5jaHJvbm91cyBzY2hlbWEKICAgICAgICogdGhhdCBpcyBhbHNvIGVhc2llciB0byB0cmF2ZXJzZS4gRG9lcyBub3QgY2FjaGUgdGhlIHJlc3VsdC4KICAgICAgICoKICAgICAgICogUHJvZHVjaW5nIGEgZmxhdHRlbiBzY2hlbWEgZG9jdW1lbnQgZG9lcyBub3QgaW4gYWxsIGNhc2VzIHByb2R1Y2UgYSBzY2hlbWEgd2l0aCBpZGVudGljYWwgYmVoYXZpb3IgdG8gdGhlIG9yaWdpbmFsLgogICAgICAgKiBTZWU6IGh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMTktMDkvanNvbi1zY2hlbWEtY29yZS5odG1sI3JmYy5hcHBlbmRpeC5CLjIKICAgICAgICoKICAgICAgICogQHBhcmFtIHNjaGVtYSBUaGUgc2NoZW1hIG9yIFVSSSB0byBmbGF0dGVuLgogICAgICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIG9mIHRoZSBmbGF0dGVuZWQgc2NoZW1hIG9iamVjdC4KICAgICAgICogQHByaXZhdGUgc2luY2UgMTEuMiB3aXRob3V0IHJlcGxhY2VtZW50LgogICAgICAgKi8KICAgICAgYXN5bmMgXHUwMjc1ZmxhdHRlbihzY2hlbWEyKSB7CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEyKTsKICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEyKTsKICAgICAgICBjb25zdCBzZWxmMiA9IHRoaXM7CiAgICAgICAgZnVuY3Rpb24gdmlzaXRvcihjdXJyZW50LCBwb2ludGVyLCBwYXJlbnRTY2hlbWEsIGluZGV4KSB7CiAgICAgICAgICBpZiAoY3VycmVudCAmJiBwYXJlbnRTY2hlbWEgJiYgaW5kZXggJiYgKDAsIHV0aWxzXzIuaXNKc29uT2JqZWN0KShjdXJyZW50KSAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoY3VycmVudCwgIiRyZWYiKSAmJiB0eXBlb2YgY3VycmVudFsiJHJlZiJdID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gc2VsZjIuX3Jlc29sdmVyKGN1cnJlbnRbIiRyZWYiXSwgdmFsaWRhdGUpOwogICAgICAgICAgICBpZiAocmVzb2x2ZWQuc2NoZW1hKSB7CiAgICAgICAgICAgICAgcGFyZW50U2NoZW1hW2luZGV4XSA9IHJlc29sdmVkLnNjaGVtYTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWFDb3B5ID0gKDAsIHV0aWxzXzEuZGVlcENvcHkpKHZhbGlkYXRlLnNjaGVtYSk7CiAgICAgICAgKDAsIHZpc2l0b3JfMS52aXNpdEpzb25TY2hlbWEpKHNjaGVtYUNvcHksIHZpc2l0b3IpOwogICAgICAgIHJldHVybiBzY2hlbWFDb3B5OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb21waWxlIGFuZCByZXR1cm4gYSB2YWxpZGF0aW9uIGZ1bmN0aW9uIGZvciB0aGUgU2NoZW1hLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gc2NoZW1hIFRoZSBzY2hlbWEgdG8gdmFsaWRhdGUuIElmIGEgc3RyaW5nLCB3aWxsIGZldGNoIHRoZSBzY2hlbWEgYmVmb3JlIGNvbXBpbGluZyBpdAogICAgICAgKiAodXNpbmcgc2NoZW1hIGFzIGEgVVJJKS4KICAgICAgICovCiAgICAgIGFzeW5jIGNvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fY29tcGlsZShzY2hlbWEyKTsKICAgICAgICByZXR1cm4gKHZhbHVlLCBvcHRpb25zKSA9PiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXN5bmMgX2NvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEpID0+ICh7IHN1Y2Nlc3M6IHNjaGVtYTIsIGRhdGEgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUluZm8gPSB7CiAgICAgICAgICBzbWFydERlZmF1bHRSZWNvcmQ6IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCksCiAgICAgICAgICBwcm9tcHREZWZpbml0aW9uczogW10KICAgICAgICB9OwogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hMik7CiAgICAgICAgbGV0IHZhbGlkYXRvcjsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbyA9IHNjaGVtYUluZm87CiAgICAgICAgICB2YWxpZGF0b3IgPSB0aGlzLl9hanYuY29tcGlsZShzY2hlbWEyKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5NaXNzaW5nUmVmRXJyb3IpKSB7CiAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICB9CiAgICAgICAgICB2YWxpZGF0b3IgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYTIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEsIG9wdGlvbnMpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25PcHRpb25zID0gewogICAgICAgICAgICB3aXRoUHJvbXB0czogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQb3N0VHJhbnNmb3JtczogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQcmVUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICAuLi5vcHRpb25zCiAgICAgICAgICB9OwogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkNvbnRleHQgPSB7CiAgICAgICAgICAgIHByb21wdEZpZWxkc1dpdGhWYWx1ZTogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVByZVRyYW5zZm9ybXMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCB2aXNpdG9yIG9mIHRoaXMuX3ByZS52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlTbWFydERlZmF1bHRzKGRhdGEsIHNjaGVtYUluZm8uc21hcnREZWZhdWx0UmVjb3JkKTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy53aXRoUHJvbXB0cykgewogICAgICAgICAgICBjb25zdCB2aXNpdG9yID0gKHZhbHVlLCBwb2ludGVyKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5hZGQocG9pbnRlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYTIsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb25zID0gc2NoZW1hSW5mby5wcm9tcHREZWZpbml0aW9ucy5maWx0ZXIoKGRlZikgPT4gIXZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5oYXMoZGVmLmlkKSk7CiAgICAgICAgICAgIGlmIChkZWZpbml0aW9ucy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlQcm9tcHRzKGRhdGEsIGRlZmluaXRpb25zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHZhbGlkYXRvci5jYWxsKHZhbGlkYXRpb25Db250ZXh0LCBkYXRhKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzcywgZXJyb3JzOiB2YWxpZGF0b3IuZXJyb3JzID8/IFtdIH07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuVmFsaWRhdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogZmFsc2UsIGVycm9yczogZXJyb3IuZXJyb3JzIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMuYXBwbHlQb3N0VHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcG9zdC52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogdHJ1ZSB9OwogICAgICAgIH07CiAgICAgIH0KICAgICAgYWRkRm9ybWF0KGZvcm1hdCkgewogICAgICAgIHRoaXMuX2Fqdi5hZGRGb3JtYXQoZm9ybWF0Lm5hbWUsIGZvcm1hdC5mb3JtYXR0ZXIpOwogICAgICB9CiAgICAgIGFkZFNtYXJ0RGVmYXVsdFByb3ZpZGVyKHNvdXJjZSwgcHJvdmlkZXIpIHsKICAgICAgICBpZiAodGhpcy5fc291cmNlTWFwLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Ioc291cmNlKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fc291cmNlTWFwLnNldChzb3VyY2UsIHByb3ZpZGVyKTsKICAgICAgICBpZiAoIXRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQpIHsKICAgICAgICAgIHRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSB0cnVlOwogICAgICAgICAgdGhpcy5fYWp2LmFkZEtleXdvcmQoewogICAgICAgICAgICBrZXl3b3JkOiAiJGRlZmF1bHQiLAogICAgICAgICAgICBlcnJvcnM6IGZhbHNlLAogICAgICAgICAgICB2YWxpZDogdHJ1ZSwKICAgICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIF9wYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICAgIGlmIChjb21waWxhdGlvblNjaGVtSW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGF0aEFycmF5ID0gdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCk7CiAgICAgICAgICAgICAgY29tcGlsYXRpb25TY2hlbUluZm8uc21hcnREZWZhdWx0UmVjb3JkLnNldChKU09OLnN0cmluZ2lmeShwYXRoQXJyYXkpLCBzY2hlbWEyKTsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICIkc291cmNlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICByZXF1aXJlZDogWyIkc291cmNlIl0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlZ2lzdGVyVXJpSGFuZGxlcihoYW5kbGVyKSB7CiAgICAgICAgdGhpcy5fdXJpSGFuZGxlcnMuYWRkKGhhbmRsZXIpOwogICAgICB9CiAgICAgIHVzZVByb21wdFByb3ZpZGVyKHByb3ZpZGVyKSB7CiAgICAgICAgY29uc3QgaXNTZXR1cCA9ICEhdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgdGhpcy5fcHJvbXB0UHJvdmlkZXIgPSBwcm92aWRlcjsKICAgICAgICBpZiAoaXNTZXR1cCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1wcm9tcHQiLAogICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpID0+IHsKICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICBpZiAoIWNvbXBpbGF0aW9uU2NoZW1JbmZvKSB7CiAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgcGF0aCA9ICIvIiArIHRoaXMubm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpLmpvaW4oIi8iKTsKICAgICAgICAgICAgbGV0IHR5cGUyOwogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGxldCBtZXNzYWdlOwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMi5tZXNzYWdlOwogICAgICAgICAgICAgIHR5cGUyID0gc2NoZW1hMi50eXBlOwogICAgICAgICAgICAgIGl0ZW1zID0gc2NoZW1hMi5pdGVtczsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShwYXJlbnRTY2hlbWEpOwogICAgICAgICAgICBpZiAoIXR5cGUyKSB7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYm9vbGVhbiIpKSB7CiAgICAgICAgICAgICAgICB0eXBlMiA9ICJjb25maXJtYXRpb24iOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZW51bSkpIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImxpc3QiOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpICYmIHBhcmVudFNjaGVtYS5pdGVtcyAmJiBBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZTIgPSAibGlzdCI7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImlucHV0IjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG11bHRpc2VsZWN0OwogICAgICAgICAgICBpZiAodHlwZTIgPT09ICJsaXN0IikgewogICAgICAgICAgICAgIG11bHRpc2VsZWN0ID0gc2NoZW1hMi5tdWx0aXNlbGVjdCA9PT0gdm9pZCAwID8gcHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpIDogc2NoZW1hMi5tdWx0aXNlbGVjdDsKICAgICAgICAgICAgICBjb25zdCBlbnVtVmFsdWVzID0gbXVsdGlzZWxlY3QgPyBwYXJlbnRTY2hlbWEuaXRlbXMgJiYgcGFyZW50U2NoZW1hLml0ZW1zLmVudW0gOiBwYXJlbnRTY2hlbWEuZW51bTsKICAgICAgICAgICAgICBpZiAoIWl0ZW1zICYmIEFycmF5LmlzQXJyYXkoZW51bVZhbHVlcykpIHsKICAgICAgICAgICAgICAgIGl0ZW1zID0gW107CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIGVudW1WYWx1ZXMpIHsKICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAic3RyaW5nIikgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2godmFsdWUpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goeyBsYWJlbDogdmFsdWUudG9TdHJpbmcoKSwgdmFsdWUgfSk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbiA9IHsKICAgICAgICAgICAgICBpZDogcGF0aCwKICAgICAgICAgICAgICB0eXBlOiB0eXBlMiwKICAgICAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgICAgIHJhdzogc2NoZW1hMiwKICAgICAgICAgICAgICBpdGVtcywKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCwKICAgICAgICAgICAgICBwcm9wZXJ0eVR5cGVzLAogICAgICAgICAgICAgIGRlZmF1bHQ6IHR5cGVvZiBwYXJlbnRTY2hlbWEuZGVmYXVsdCA9PSAib2JqZWN0IiAmJiBwYXJlbnRTY2hlbWEuZGVmYXVsdCAhPT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZGVmYXVsdCkgPyB2b2lkIDAgOiBwYXJlbnRTY2hlbWEuZGVmYXVsdCwKICAgICAgICAgICAgICBhc3luYyB2YWxpZGF0b3IoZGF0YSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaXQuc2VsZi52YWxpZGF0ZShwYXJlbnRTY2hlbWEsIGRhdGEpOwogICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpdC5zZWxmLmVycm9ycz8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0LnNlbGYuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkVycm9yID0gZTsKICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsaWRhdGlvbkVycm9yLmVycm9ycykgJiYgdmFsaWRhdGlvbkVycm9yLmVycm9ycy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvbkVycm9yLmVycm9yc1swXS5tZXNzYWdlOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICBjb21waWxhdGlvblNjaGVtSW5mby5wcm9tcHREZWZpbml0aW9ucy5wdXNoKGRlZmluaXRpb24pOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaWYgKHRoaXMgJiYgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUpIHsKICAgICAgICAgICAgICAgIHRoaXMucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9LAogICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICBvbmVPZjogWwogICAgICAgICAgICAgIHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgICAgICAgICAgICJtZXNzYWdlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyJtZXNzYWdlIl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBhc3luYyBfYXBwbHlQcm9tcHRzKGRhdGEsIHByb21wdHMpIHsKICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuX3Byb21wdFByb3ZpZGVyOwogICAgICAgIGlmICghcHJvdmlkZXIpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgYW5zd2VycyA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHJ4anNfMS5mcm9tKShwcm92aWRlcihwcm9tcHRzKSkpOwogICAgICAgIGZvciAoY29uc3QgcGF0aCBpbiBhbnN3ZXJzKSB7CiAgICAgICAgICBjb25zdCBwYXRoRnJhZ21lbnRzID0gcGF0aC5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIHBhdGhGcmFnbWVudHMsIGFuc3dlcnNbcGF0aF0sIG51bGwsIHZvaWQgMCwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN0YXRpYyBfc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUsIHBhcmVudCA9IG51bGwsIHBhcmVudFByb3BlcnR5LCBmb3JjZSkgewogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBmcmFnbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IGZyYWdtZW50c1tpbmRleF07CiAgICAgICAgICBpZiAoL15pXGQrJC8udGVzdChmcmFnbWVudCkpIHsKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvciAobGV0IGRhdGFJbmRleCA9IDA7IGRhdGFJbmRleCA8IGRhdGEubGVuZ3RoOyBkYXRhSW5kZXgrKykgewogICAgICAgICAgICAgIF9Db3JlU2NoZW1hUmVnaXN0cnkuX3NldChkYXRhW2RhdGFJbmRleF0sIGZyYWdtZW50cy5zbGljZShpbmRleCArIDEpLCB2YWx1ZSwgZGF0YSwgYCR7ZGF0YUluZGV4fWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGF0YSAmJiBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50UHJvcGVydHkpIHsKICAgICAgICAgICAgZGF0YSA9IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB7fTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcmVudCA9IGRhdGE7CiAgICAgICAgICBwYXJlbnRQcm9wZXJ0eSA9IGZyYWdtZW50OwogICAgICAgICAgZGF0YSA9IGRhdGFbZnJhZ21lbnRdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudFByb3BlcnR5ICYmIChmb3JjZSB8fCBwYXJlbnRbcGFyZW50UHJvcGVydHldID09PSB2b2lkIDApKSB7CiAgICAgICAgICBwYXJlbnRbcGFyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc21hcnREZWZhdWx0cykgewogICAgICAgIGZvciAoY29uc3QgW3BvaW50ZXIsIHNjaGVtYTJdIG9mIHNtYXJ0RGVmYXVsdHMuZW50cmllcygpKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSBKU09OLnBhcnNlKHBvaW50ZXIpOwogICAgICAgICAgY29uc3Qgc291cmNlID0gdGhpcy5fc291cmNlTWFwLmdldChzY2hlbWEyLiRzb3VyY2UpOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2Uoc2NoZW1hMik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSkgewogICAgICAgICAgICB2YWx1ZSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkodmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUpOwogICAgICAgIH0KICAgICAgfQogICAgICB1c2VYRGVwcmVjYXRlZFByb3ZpZGVyKG9uVXNhZ2UpIHsKICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1kZXByZWNhdGVkIiwKICAgICAgICAgIHZhbGlkYXRlOiAoc2NoZW1hMiwgX2RhdGEsIF9wYXJlbnRTY2hlbWEsIGRhdGFDeHQpID0+IHsKICAgICAgICAgICAgaWYgKHNjaGVtYTIpIHsKICAgICAgICAgICAgICBvblVzYWdlKGBPcHRpb24gIiR7ZGF0YUN4dD8ucGFyZW50RGF0YVByb3BlcnR5fSIgaXMgZGVwcmVjYXRlZCR7dHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIgPyAiOiAiICsgc2NoZW1hMiA6ICIuIn1gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcnM6IGZhbHNlCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpIHsKICAgICAgICByZXR1cm4gaXQuZGF0YVBhdGhBcnIuc2xpY2UoMSwgaXQuZGF0YUxldmVsICsgMSkubWFwKChwKSA9PiB0eXBlb2YgcCA9PT0gIm51bWJlciIgPyBwIDogcC5zdHIucmVwbGFjZSgvIi9nLCAiIikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gQ29yZVNjaGVtYVJlZ2lzdHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzCnZhciByZXF1aXJlX3NjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0pzb25TY2hlbWEgPSBpc0pzb25TY2hlbWE7CiAgICBleHBvcnRzMi5tZXJnZVNjaGVtYXMgPSBtZXJnZVNjaGVtYXM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIGZ1bmN0aW9uIGlzSnNvblNjaGVtYSh2YWx1ZSkgewogICAgICByZXR1cm4gKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgdmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSB0cnVlOwogICAgfQogICAgZnVuY3Rpb24gbWVyZ2VTY2hlbWFzKC4uLnNjaGVtYXMpIHsKICAgICAgcmV0dXJuIHNjaGVtYXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiB7CiAgICAgICAgaWYgKGN1cnIgPT09IHZvaWQgMCkgewogICAgICAgICAgcmV0dXJuIHByZXY7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2ID09PSBmYWxzZSB8fCBjdXJyID09PSBmYWxzZSkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSBpZiAocHJldiA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIGN1cnI7CiAgICAgICAgfSBlbHNlIGlmIChjdXJyID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJldi5hbGxPZikpIHsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1cnIuYWxsT2YpKSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgY3Vycl0gfTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbcHJldiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCBjdXJyXSB9OwogICAgICAgIH0KICAgICAgfSwgdHJ1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcwp2YXIgcmVxdWlyZV9zY2hlbWEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHZvaWQgMDsKICAgIHZhciB0cmFuc2Zvcm1zID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtcygpKTsKICAgIGV4cG9ydHMyLnRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1zOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BvaW50ZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmVnaXN0cnkoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Zpc2l0b3IoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdXRpbGl0eSgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL2luZGV4LmpzCnZhciByZXF1aXJlX2pzb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBzY2hlbWEyID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hMigpKTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHNjaGVtYTI7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlscygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbG9nZ2VyLmpzCnZhciByZXF1aXJlX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZW50LmpzCnZhciByZXF1aXJlX2luZGVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIGluZGVudGF0aW9uTWFwID0ge307CiAgICB2YXIgSW5kZW50TG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBpbmRlbnRhdGlvbiA9ICIgICIpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSB8fCBbIiJdOwogICAgICAgIGNvbnN0IGluZGVudE1hcCA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gdGhpcy5fb2JzZXJ2YWJsZS5waXBlKCgwLCByeGpzXzEubWFwKSgoZW50cnkpID0+IHsKICAgICAgICAgIGNvbnN0IGwgPSBlbnRyeS5wYXRoLmZpbHRlcigoeCkgPT4gISF4KS5sZW5ndGg7CiAgICAgICAgICBpZiAobCA+PSBpbmRlbnRNYXAubGVuZ3RoKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50ID0gaW5kZW50TWFwW2luZGVudE1hcC5sZW5ndGggLSAxXTsKICAgICAgICAgICAgd2hpbGUgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICAgIGN1cnJlbnQgKz0gaW5kZW50YXRpb247CiAgICAgICAgICAgICAgaW5kZW50TWFwLnB1c2goY3VycmVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGVudHJ5Lm1lc3NhZ2UgPSBpbmRlbnRNYXBbbF0gKyBlbnRyeS5tZXNzYWdlLnNwbGl0KC9cbi8pLmpvaW4oIlxuIiArIGluZGVudE1hcFtsXSk7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gSW5kZW50TG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbGV2ZWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxldmVsQ2FwTG9nZ2VyID0gZXhwb3J0czIuTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSB2b2lkIDA7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIExldmVsVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgX0xldmVsVHJhbnNmb3JtTG9nZ2VyIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgbmFtZTsKICAgICAgcGFyZW50OwogICAgICBsZXZlbFRyYW5zZm9ybTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxUcmFuc2Zvcm0pIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbFRyYW5zZm9ybSA9IGxldmVsVHJhbnNmb3JtOwogICAgICB9CiAgICAgIGxvZyhsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiBzdXBlci5sb2codGhpcy5sZXZlbFRyYW5zZm9ybShsZXZlbCksIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIobmFtZSwgdGhpcywgdGhpcy5sZXZlbFRyYW5zZm9ybSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IExldmVsVHJhbnNmb3JtTG9nZ2VyOwogICAgdmFyIExldmVsQ2FwTG9nZ2VyID0gY2xhc3MgX0xldmVsQ2FwTG9nZ2VyIGV4dGVuZHMgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsQ2FwOwogICAgICBzdGF0aWMgbGV2ZWxNYXAgPSB7CiAgICAgICAgZGVidWc6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJkZWJ1ZyIsIHdhcm46ICJkZWJ1ZyIsIGVycm9yOiAiZGVidWciLCBmYXRhbDogImRlYnVnIiB9LAogICAgICAgIGluZm86IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogImluZm8iLCBlcnJvcjogImluZm8iLCBmYXRhbDogImluZm8iIH0sCiAgICAgICAgd2FybjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAid2FybiIsIGZhdGFsOiAid2FybiIgfSwKICAgICAgICBlcnJvcjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAiZXJyb3IiLCBmYXRhbDogImVycm9yIiB9LAogICAgICAgIGZhdGFsOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZmF0YWwiIH0KICAgICAgfTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxDYXApIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQsIChsZXZlbCkgPT4gewogICAgICAgICAgcmV0dXJuIF9MZXZlbENhcExvZ2dlci5sZXZlbE1hcFtsZXZlbENhcF1bbGV2ZWxdIHx8IGxldmVsOwogICAgICAgIH0pOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbENhcCA9IGxldmVsQ2FwOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBMZXZlbENhcExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9udWxsLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV9udWxsX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJhbnNmb3JtTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIHRyYW5zZm9ybSwgcGFyZW50ID0gbnVsbCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRyYW5zZm9ybSh0aGlzLl9vYnNlcnZhYmxlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IFRyYW5zZm9ybUxvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2luZGVudCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sZXZlbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbnVsbF9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanMKdmFyIHJlcXVpcmVfZGVmaW5pdGlvbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qcwp2YXIgcmVxdWlyZV9wYXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL3BhdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhdGggPSBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSBleHBvcnRzMi5QYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRQYXRoRXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3BsaXQgPSBzcGxpdDsKICAgIGV4cG9ydHMyLmV4dG5hbWUgPSBleHRuYW1lOwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSBiYXNlbmFtZTsKICAgIGV4cG9ydHMyLmRpcm5hbWUgPSBkaXJuYW1lOwogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGU7CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgZXhwb3J0czIucmVzb2x2ZSA9IHJlc29sdmU7CiAgICBleHBvcnRzMi5mcmFnbWVudCA9IGZyYWdtZW50OwogICAgZXhwb3J0czIucmVzZXROb3JtYWxpemVDYWNoZSA9IHJlc2V0Tm9ybWFsaXplQ2FjaGU7CiAgICBleHBvcnRzMi5ub3JtYWxpemUgPSBub3JtYWxpemU7CiAgICBleHBvcnRzMi5ub0NhY2hlTm9ybWFsaXplID0gbm9DYWNoZU5vcm1hbGl6ZTsKICAgIGV4cG9ydHMyLmFzV2luZG93c1BhdGggPSBhc1dpbmRvd3NQYXRoOwogICAgZXhwb3J0czIuYXNQb3NpeFBhdGggPSBhc1Bvc2l4UGF0aDsKICAgIGV4cG9ydHMyLmdldFN5c3RlbVBhdGggPSBnZXRTeXN0ZW1QYXRoOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBJbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IGlzIGludmFsaWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IEludmFsaWRQYXRoRXhjZXB0aW9uOwogICAgdmFyIFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IG11c3QgYmUgYWJzb2x1dGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb247CiAgICB2YXIgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBjYW5ub3QgYmUgbWFkZSBhIGZyYWdtZW50LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbjsKICAgIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSAiLyI7CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXA7CiAgICBmdW5jdGlvbiBzcGxpdChwYXRoMikgewogICAgICBjb25zdCBmcmFnbWVudHMgPSBwYXRoMi5zcGxpdChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKS5tYXAoKHgpID0+IGZyYWdtZW50KHgpKTsKICAgICAgaWYgKGZyYWdtZW50c1tmcmFnbWVudHMubGVuZ3RoIC0gMV0ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgZnJhZ21lbnRzLnBvcCgpOwogICAgICB9CiAgICAgIHJldHVybiBmcmFnbWVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBleHRuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGJhc2UgPSBiYXNlbmFtZShwYXRoMik7CiAgICAgIGNvbnN0IGkgPSBiYXNlLmxhc3RJbmRleE9mKCIuIik7CiAgICAgIGlmIChpIDwgMSkgewogICAgICAgIHJldHVybiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYmFzZS5zbGljZShpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYmFzZW5hbWUocGF0aDIpIHsKICAgICAgY29uc3QgaSA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaSA9PSAtMSkgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGZyYWdtZW50KHBhdGgyLnNsaWNlKHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApICsgMSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkaXJuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGluZGV4ID0gcGF0aDIubGFzdEluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgY29uc3QgZW5kSW5kZXggPSBpbmRleCA9PT0gMCA/IDEgOiBpbmRleDsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwYXRoMi5zbGljZSgwLCBlbmRJbmRleCkpOwogICAgfQogICAgZnVuY3Rpb24gam9pbjIocDEsIC4uLm90aGVycykgewogICAgICBpZiAob3RoZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICByZXR1cm4gbm9ybWFsaXplKChwMSA/IHAxICsgZXhwb3J0czIuTm9ybWFsaXplZFNlcCA6ICIiKSArIG90aGVycy5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gcDE7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGlzQWJzb2x1dGUocCkgewogICAgICByZXR1cm4gcC5zdGFydHNXaXRoKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgfQogICAgZnVuY3Rpb24gcmVsYXRpdmUoZnJvbSwgdG8pIHsKICAgICAgaWYgKCFpc0Fic29sdXRlKGZyb20pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbihmcm9tKTsKICAgICAgfQogICAgICBpZiAoIWlzQWJzb2x1dGUodG8pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbih0byk7CiAgICAgIH0KICAgICAgbGV0IHA7CiAgICAgIGlmIChmcm9tID09IHRvKSB7CiAgICAgICAgcCA9ICIiOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IHNwbGl0RnJvbSA9IHNwbGl0KGZyb20pOwogICAgICAgIGNvbnN0IHNwbGl0VG8gPSBzcGxpdCh0byk7CiAgICAgICAgd2hpbGUgKHNwbGl0RnJvbS5sZW5ndGggPiAwICYmIHNwbGl0VG8ubGVuZ3RoID4gMCAmJiBzcGxpdEZyb21bMF0gPT0gc3BsaXRUb1swXSkgewogICAgICAgICAgc3BsaXRGcm9tLnNoaWZ0KCk7CiAgICAgICAgICBzcGxpdFRvLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIGlmIChzcGxpdEZyb20ubGVuZ3RoID09IDApIHsKICAgICAgICAgIHAgPSBzcGxpdFRvLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHAgPSBzcGxpdEZyb20ubWFwKCgpID0+ICIuLiIpLmNvbmNhdChzcGxpdFRvKS5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHApOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShwMSwgcDIpIHsKICAgICAgaWYgKGlzQWJzb2x1dGUocDIpKSB7CiAgICAgICAgcmV0dXJuIHAyOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBqb2luMihwMSwgcDIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBmcmFnbWVudChwYXRoMikgewogICAgICBpZiAocGF0aDIuaW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSAhPSAtMSkgewogICAgICAgIHRocm93IG5ldyBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbihwYXRoMik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGgyOwogICAgfQogICAgdmFyIG5vcm1hbGl6ZWRDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICBmdW5jdGlvbiByZXNldE5vcm1hbGl6ZUNhY2hlKCkgewogICAgICBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGxldCBtYXliZVBhdGggPSBub3JtYWxpemVkQ2FjaGUuZ2V0KHBhdGgyKTsKICAgICAgaWYgKCFtYXliZVBhdGgpIHsKICAgICAgICBtYXliZVBhdGggPSBub0NhY2hlTm9ybWFsaXplKHBhdGgyKTsKICAgICAgICBub3JtYWxpemVkQ2FjaGUuc2V0KHBhdGgyLCBtYXliZVBhdGgpOwogICAgICB9CiAgICAgIHJldHVybiBtYXliZVBhdGg7CiAgICB9CiAgICBmdW5jdGlvbiBub0NhY2hlTm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGlmIChwYXRoMiA9PSAiIiB8fCBwYXRoMiA9PSAiLiIpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSBpZiAocGF0aDIgPT0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICByZXR1cm4gZXhwb3J0czIuTm9ybWFsaXplZFJvb3Q7CiAgICAgIH0KICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoMjsKICAgICAgaWYgKHBhdGgyLm1hdGNoKC9eW0EtWl06Wy9cXF0vaSkpIHsKICAgICAgICBwYXRoMiA9ICJcXCIgKyBwYXRoMlswXS50b1VwcGVyQ2FzZSgpICsgIlxcIiArIHBhdGgyLnNsaWNlKDMpOwogICAgICB9CiAgICAgIGNvbnN0IHAgPSBwYXRoMi5zcGxpdCgvWy9cXF0vZyk7CiAgICAgIGxldCByZWxhdGl2ZTIgPSBmYWxzZTsKICAgICAgbGV0IGkgPSAxOwogICAgICBpZiAocFswXSAhPSAiIikgewogICAgICAgIHAudW5zaGlmdCgiLiIpOwogICAgICAgIHJlbGF0aXZlMiA9IHRydWU7CiAgICAgIH0KICAgICAgd2hpbGUgKGkgPCBwLmxlbmd0aCkgewogICAgICAgIGlmIChwW2ldID09ICIuIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwW2ldID09ICIuLiIpIHsKICAgICAgICAgIGlmIChpIDwgMiAmJiAhcmVsYXRpdmUyKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEV4Y2VwdGlvbihvcmlnaW5hbCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPj0gMiAmJiBwW2kgLSAxXSAhPSAiLi4iKSB7CiAgICAgICAgICAgIHAuc3BsaWNlKGkgLSAxLCAyKTsKICAgICAgICAgICAgaS0tOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHAubGVuZ3RoID09IDEpIHsKICAgICAgICByZXR1cm4gcFswXSA9PSAiIiA/IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocFswXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc2hpZnQoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHAuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgfQogICAgfQogICAgdmFyIHBhdGggPSAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICByZXR1cm4gbm9ybWFsaXplKFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykpOwogICAgfTsKICAgIGV4cG9ydHMyLnBhdGggPSBwYXRoOwogICAgZnVuY3Rpb24gYXNXaW5kb3dzUGF0aChwYXRoMikgewogICAgICBjb25zdCBkcml2ZSA9IHBhdGgyLm1hdGNoKC9eXC8oXHcpKD86XC8oLiopKT8kLyk7CiAgICAgIGlmIChkcml2ZSkgewogICAgICAgIGNvbnN0IHN1YlBhdGggPSBkcml2ZVsyXSA/IGRyaXZlWzJdLnJlcGxhY2UoL1wvL2csICJcXCIpIDogIiI7CiAgICAgICAgcmV0dXJuIGAke2RyaXZlWzFdfTpcXCR7c3ViUGF0aH1gOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMi5yZXBsYWNlKC9cLy9nLCAiXFwiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzUG9zaXhQYXRoKHBhdGgyKSB7CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFN5c3RlbVBhdGgocGF0aDIpIHsKICAgICAgaWYgKHByb2Nlc3MucGxhdGZvcm0uc3RhcnRzV2l0aCgid2luMzIiKSkgewogICAgICAgIHJldHVybiBhc1dpbmRvd3NQYXRoKHBhdGgyKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYXNQb3NpeFBhdGgocGF0aDIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0cmluZ1RvRmlsZUJ1ZmZlciA9IHN0cmluZ1RvRmlsZUJ1ZmZlcjsKICAgIGV4cG9ydHMyLmZpbGVCdWZmZXJUb1N0cmluZyA9IGZpbGVCdWZmZXJUb1N0cmluZzsKICAgIHZhciBub2RlX3V0aWxfMSA9IHJlcXVpcmUoIm5vZGU6dXRpbCIpOwogICAgZnVuY3Rpb24gc3RyaW5nVG9GaWxlQnVmZmVyKHN0cjIpIHsKICAgICAgcmV0dXJuIG5ldyBub2RlX3V0aWxfMS5UZXh0RW5jb2RlcigpLmVuY29kZShzdHIyKS5idWZmZXI7CiAgICB9CiAgICBmdW5jdGlvbiBmaWxlQnVmZmVyVG9TdHJpbmcoZmlsZUJ1ZmZlcikgewogICAgICBpZiAoZmlsZUJ1ZmZlci50b1N0cmluZy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZmlsZUJ1ZmZlci50b1N0cmluZygidXRmLTgiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShuZXcgVWludDhBcnJheShmaWxlQnVmZmVyKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RXYXRjaEV2ZW50VHlwZSA9IHZvaWQgMDsKICAgIHZhciBIb3N0V2F0Y2hFdmVudFR5cGU7CiAgICAoZnVuY3Rpb24oSG9zdFdhdGNoRXZlbnRUeXBlMikgewogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNoYW5nZWQiXSA9IDBdID0gIkNoYW5nZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNyZWF0ZWQiXSA9IDFdID0gIkNyZWF0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkRlbGV0ZWQiXSA9IDJdID0gIkRlbGV0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIlJlbmFtZWQiXSA9IDNdID0gIlJlbmFtZWQiOwogICAgfSkoSG9zdFdhdGNoRXZlbnRUeXBlIHx8IChleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSBIb3N0V2F0Y2hFdmVudFR5cGUgPSB7fSkpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcwp2YXIgcmVxdWlyZV9tZW1vcnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9tZW1vcnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNpbXBsZU1lbW9yeUhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTIoKTsKICAgIHZhciBTaW1wbGVNZW1vcnlIb3N0ID0gY2xhc3MgewogICAgICBfY2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfd2F0Y2hlcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfbmV3RGlyU3RhdHMoKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGluc3BlY3QoKSB7CiAgICAgICAgICAgIHJldHVybiAiPERpcmVjdG9yeT4iOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRmlsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBzaXplOiAwLAogICAgICAgICAgYXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY3RpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgbXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgYmlydGh0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQ6IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIF9uZXdGaWxlU3RhdHMoY29udGVudCwgb2xkU3RhdHMpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgaW5zcGVjdCgpIHsKICAgICAgICAgICAgcmV0dXJuIGA8RmlsZSBzaXplKCR7Y29udGVudC5ieXRlTGVuZ3RofSk+YDsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0ZpbGUoKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9LAogICAgICAgICAgc2l6ZTogY29udGVudC5ieXRlTGVuZ3RoLAogICAgICAgICAgYXRpbWU6IG9sZFN0YXRzID8gb2xkU3RhdHMuYXRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGN0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIG10aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGJpcnRodGltZTogb2xkU3RhdHMgPyBvbGRTdGF0cy5iaXJ0aHRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQKICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHRoaXMuX2NhY2hlLnNldCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKSwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgIH0KICAgICAgX3RvQWJzb2x1dGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcGF0aF8xLmlzQWJzb2x1dGUpKHBhdGgpID8gcGF0aCA6ICgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfdXBkYXRlV2F0Y2hlcnMocGF0aCwgdHlwZTIpIHsKICAgICAgICBjb25zdCB0aW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCk7CiAgICAgICAgbGV0IGN1cnJlbnRQYXRoID0gcGF0aDsKICAgICAgICBsZXQgcGFyZW50ID0gbnVsbDsKICAgICAgICBpZiAodGhpcy5fd2F0Y2hlcnMuc2l6ZSA9PSAwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlciA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgaWYgKG1heWJlV2F0Y2hlcikgewogICAgICAgICAgbWF5YmVXYXRjaGVyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZTogdHlwZTIgfSk7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5wZXJzaXN0ZW50ICYmIHR5cGUyID09IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKSB7CiAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHRoaXMuX3dhdGNoZXJzLmRlbGV0ZShjdXJyZW50UGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBkbyB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IHBhcmVudCAhPT0gbnVsbCA/IHBhcmVudCA6IGN1cnJlbnRQYXRoOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhdGhfMS5kaXJuYW1lKShjdXJyZW50UGF0aCk7CiAgICAgICAgICBjb25zdCBtYXliZVdhdGNoZXIyID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KGN1cnJlbnRQYXRoKTsKICAgICAgICAgIGlmIChtYXliZVdhdGNoZXIyKSB7CiAgICAgICAgICAgIG1heWJlV2F0Y2hlcjIuZm9yRWFjaCgod2F0Y2hlcikgPT4gewogICAgICAgICAgICAgIGNvbnN0IFtvcHRpb25zLCBzdWJqZWN0XSA9IHdhdGNoZXI7CiAgICAgICAgICAgICAgaWYgKCFvcHRpb25zLnJlY3Vyc2l2ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQoeyBwYXRoLCB0aW1lLCB0eXBlOiB0eXBlMiB9KTsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucGVyc2lzdGVudCAmJiB0eXBlMiA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKHBhcmVudCAhPSBjdXJyZW50UGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaXN0IG9mIHByb3RlY3RlZCBtZXRob2RzIHRoYXQgZ2l2ZSBkaXJlY3QgYWNjZXNzIG91dHNpZGUgdGhlIG9ic2VydmFibGVzIHRvIHRoZSBjYWNoZQogICAgICAgKiBhbmQgaW50ZXJuYWwgc3RhdGVzLgogICAgICAgKi8KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBvbGQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgaWYgKG9sZCAmJiBvbGQuaXNEaXJlY3RvcnkoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGZyIG9mIGZyYWdtZW50cykgewogICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICBpZiAobWF5YmVTdGF0cykgewogICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoY3VyciwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5fbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZCk7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHBhdGgsIHN0YXRzKTsKICAgICAgICB0aGlzLl91cGRhdGVXYXRjaGVycyhwYXRoLCBvbGQgPyBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZCA6IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkKTsKICAgICAgfQogICAgICBfcmVhZChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAobWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAoIW1heWJlU3RhdHMuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMuY29udGVudDsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtjYWNoZVBhdGhdIG9mIHRoaXMuX2NhY2hlLmVudHJpZXMoKSkgewogICAgICAgICAgICBpZiAoY2FjaGVQYXRoLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSB8fCBjYWNoZVBhdGggPT09IHBhdGgpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUocGF0aCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKTsKICAgICAgfQogICAgICBfcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgZnJvbSA9IHRoaXMuX3RvQWJzb2x1dGUoZnJvbSk7CiAgICAgICAgdG8gPSB0aGlzLl90b0Fic29sdXRlKHRvKTsKICAgICAgICBpZiAoIXRoaXMuX2NhY2hlLmhhcyhmcm9tKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oZnJvbSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZS5oYXModG8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbih0byk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pc0RpcmVjdG9yeShmcm9tKSkgewogICAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKGZyb20gKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5qb2luKSh0bywgcGF0aF8xLk5vcm1hbGl6ZWRTZXAsIHBhdGguc2xpY2UoZnJvbS5sZW5ndGgpKSwgY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KSh0byk7CiAgICAgICAgICAgIGNvbnN0IG5ld0RpcmVjdG9yaWVzID0gW107CiAgICAgICAgICAgIGxldCBjdXJyID0gKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQoZnIpOwogICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihjdXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbmV3RGlyZWN0b3JpZXMucHVzaChjdXJyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChjb25zdCBuZXdEaXJlY3Rvcnkgb2YgbmV3RGlyZWN0b3JpZXMpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQobmV3RGlyZWN0b3J5LCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoZnJvbSk7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCh0bywgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKGZyb20sIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5SZW5hbWVkKTsKICAgICAgfQogICAgICBfbGlzdChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRmlsZShwYXRoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgaWYgKHBhdGggIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgZm9yIChjb25zdCBwIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGggKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICByZXN1bHQuYWRkKCgwLCBwYXRoXzEuc3BsaXQpKHApW2ZyYWdtZW50cy5sZW5ndGhdKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aF8xLk5vcm1hbGl6ZWRTZXApICYmIHAgIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBbLi4ucmVzdWx0XTsKICAgICAgfQogICAgICBfZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gISF0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpIDogZmFsc2U7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0cyA/IG1heWJlU3RhdHMuaXNGaWxlKCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0czsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgICAgbGV0IG1heWJlV2F0Y2hlckFycmF5ID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVXYXRjaGVyQXJyYXkpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlckFycmF5ID0gW107CiAgICAgICAgICB0aGlzLl93YXRjaGVycy5zZXQocGF0aCwgbWF5YmVXYXRjaGVyQXJyYXkpOwogICAgICAgIH0KICAgICAgICBtYXliZVdhdGNoZXJBcnJheS5wdXNoKFtvcHRpb25zIHx8IHt9LCBzdWJqZWN0XSk7CiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fcmVhZChwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KGNvbnRlbnQpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX2RlbGV0ZShwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9saXN0KHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9leGlzdHMocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2lzRmlsZShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX3N0YXQocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl93YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgIHRoaXMuX3dhdGNoZXJzLmNsZWFyKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gU2ltcGxlTWVtb3J5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzCnZhciByZXF1aXJlX3N5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TeW5jRGVsZWdhdGVIb3N0ID0gZXhwb3J0czIuU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICBzdXBlcihgRXhwZWN0ZWQgYSBzeW5jaHJvbm91cyBkZWxlZ2F0ZSBidXQgZ290IGFuIGFzeW5jaHJvbm91cyBvbmUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb247CiAgICB2YXIgU3luY0RlbGVnYXRlSG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgICBpZiAoIV9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXMuc3luY2hyb25vdXMpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RvU3luY0NhbGwob2JzZXJ2YWJsZSkgewogICAgICAgIGxldCBjb21wbGV0ZWQgPSBmYWxzZTsKICAgICAgICBsZXQgcmVzdWx0ID0gdm9pZCAwOwogICAgICAgIGxldCBlcnJvclJlc3VsdCA9IHZvaWQgMDsKICAgICAgICBvYnNlcnZhYmxlLnN1YnNjcmliZSgoeCkgPT4gcmVzdWx0ID0geCwgKGVycikgPT4gZXJyb3JSZXN1bHQgPSBlcnIsICgpID0+IGNvbXBsZXRlZCA9IHRydWUpOwogICAgICAgIGlmIChlcnJvclJlc3VsdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBlcnJvclJlc3VsdDsKICAgICAgICB9CiAgICAgICAgaWYgKCFjb21wbGV0ZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgZ2V0IGRlbGVnYXRlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZTsKICAgICAgfQogICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLnJlYWQocGF0aCkpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuZGVsZXRlKHBhdGgpKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUoZnJvbSwgdG8pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmV4aXN0cyhwYXRoKSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRmlsZShwYXRoKSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgc3RhdC4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbChyZXN1bHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlN5bmNEZWxlZ2F0ZUhvc3QgPSBTeW5jRGVsZWdhdGVIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMKdmFyIHJlcXVpcmVfdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIyKCk7CiAgICB2YXIgbWVtb3J5XzEgPSByZXF1aXJlX21lbW9yeSgpOwogICAgdmFyIHN5bmNfMSA9IHJlcXVpcmVfc3luYygpOwogICAgdmFyIFRlc3RIb3N0ID0gY2xhc3MgX1Rlc3RIb3N0IGV4dGVuZHMgbWVtb3J5XzEuU2ltcGxlTWVtb3J5SG9zdCB7CiAgICAgIF9yZWNvcmRzID0gW107CiAgICAgIF9zeW5jID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IobWFwMiA9IHt9KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBmb3IgKGNvbnN0IGZpbGVQYXRoIG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1hcDIpKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXAyW2ZpbGVQYXRoXSkpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgcmVjb3JkcygpIHsKICAgICAgICByZXR1cm4gWy4uLnRoaXMuX3JlY29yZHNdOwogICAgICB9CiAgICAgIGNsZWFyUmVjb3JkcygpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzID0gW107CiAgICAgIH0KICAgICAgZ2V0IGZpbGVzKCkgewogICAgICAgIGNvbnN0IHN5bmMgPSB0aGlzLnN5bmM7CiAgICAgICAgZnVuY3Rpb24gX3Zpc2l0KHApIHsKICAgICAgICAgIHJldHVybiBzeW5jLmxpc3QocCkubWFwKChmcmFnbWVudCkgPT4gKDAsIHBhdGhfMS5qb2luKShwLCBmcmFnbWVudCkpLnJlZHVjZSgoZmlsZXMsIHBhdGgpID0+IHsKICAgICAgICAgICAgaWYgKHN5bmMuaXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KF92aXNpdChwYXRoKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpbGVzLmNvbmNhdChwYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3Zpc2l0KCgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpKTsKICAgICAgfQogICAgICBnZXQgc3luYygpIHsKICAgICAgICBpZiAoIXRoaXMuX3N5bmMpIHsKICAgICAgICAgIHRoaXMuX3N5bmMgPSBuZXcgc3luY18xLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9zeW5jOwogICAgICB9CiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IG5ld0hvc3QgPSBuZXcgX1Rlc3RIb3N0KCk7CiAgICAgICAgbmV3SG9zdC5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICByZXR1cm4gbmV3SG9zdDsKICAgICAgfQogICAgICAvLyBPdmVycmlkZSBwYXJlbnRzIGZ1bmN0aW9ucyB0byBrZWVwIGEgcmVjb3JkIG9mIGFsbCBvcGVyYXRvcnMgdGhhdCB3ZXJlIGRvbmUuCiAgICAgIF93cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndyaXRlIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIF9yZWFkKHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVhZCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIF9kZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJkZWxldGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF9yZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVuYW1lIiwgZnJvbSwgdG8gfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIF9saXN0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAibGlzdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9saXN0KHBhdGgpOwogICAgICB9CiAgICAgIF9leGlzdHMocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJleGlzdHMiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIF9pc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRGlyZWN0b3J5IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIF9pc0ZpbGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJpc0ZpbGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIF9zdGF0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAic3RhdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIF93YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndhdGNoIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICAgICR3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCksICgwLCBidWZmZXJfMS5zdHJpbmdUb0ZpbGVCdWZmZXIpKGNvbnRlbnQpKTsKICAgICAgfQogICAgICAkcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBidWZmZXJfMS5maWxlQnVmZmVyVG9TdHJpbmcpKHN1cGVyLl9yZWFkKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICB9CiAgICAgICRsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgICAkZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2V4aXN0cygoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0RpcmVjdG9yeSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UZXN0SG9zdCA9IFRlc3RIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Jlc29sdmVyLmpzCnZhciByZXF1aXJlX3Jlc29sdmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IHZvaWQgMDsKICAgIHZhciBSZXNvbHZlckhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud3JpdGUodGhpcy5fcmVzb2x2ZShwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGVsZXRlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUodGhpcy5fcmVzb2x2ZShmcm9tKSwgdGhpcy5fcmVzb2x2ZSh0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZSh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaCh0aGlzLl9yZXNvbHZlKHBhdGgpLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IFJlc29sdmVySG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qcwp2YXIgcmVxdWlyZV9hbGlhcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBBbGlhc0hvc3QgPSBjbGFzcyBleHRlbmRzIHJlc29sdmVyXzEuUmVzb2x2ZXJIb3N0IHsKICAgICAgX2FsaWFzZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgbGV0IG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwYXRoKTsKICAgICAgICBjb25zdCBzcCA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZyA9IFtdOwogICAgICAgIHdoaWxlICghbWF5YmVBbGlhcyAmJiBzcC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBjb25zdCBwID0gKDAsIHBhdGhfMS5qb2luKShwYXRoXzEuTm9ybWFsaXplZFJvb3QsIC4uLnNwKTsKICAgICAgICAgIG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwKTsKICAgICAgICAgIGlmIChtYXliZUFsaWFzKSB7CiAgICAgICAgICAgIG1heWJlQWxpYXMgPSAoMCwgcGF0aF8xLmpvaW4pKG1heWJlQWxpYXMsIC4uLnJlbWFpbmluZyk7CiAgICAgICAgICB9CiAgICAgICAgICByZW1haW5pbmcudW5zaGlmdChzcC5wb3AoKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUFsaWFzIHx8IHBhdGg7CiAgICAgIH0KICAgICAgZ2V0IGFsaWFzZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FsaWFzZXM7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSBBbGlhc0hvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzCnZhciByZXF1aXJlX2NyZWF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2NyZWF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlU3luY0hvc3QgPSBjcmVhdGVTeW5jSG9zdDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgZnVuY3Rpb24gd3JhcEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcikgPT4gewogICAgICAgIHN1YnNjcmliZXIubmV4dChhY3Rpb24oKSk7CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZWF0ZVN5bmNIb3N0KGhhbmRsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBjbGFzcyB7CiAgICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICAgIHJldHVybiB7IHN5bmNocm9ub3VzOiB0cnVlIH07CiAgICAgICAgfQogICAgICAgIHJlYWQocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5yZWFkKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmxpc3QocGF0aCkpOwogICAgICAgIH0KICAgICAgICBleGlzdHMocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5leGlzdHMocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNGaWxlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnN0YXQocGF0aCkpOwogICAgICAgIH0KICAgICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLndyaXRlKHBhdGgsIGNvbnRlbnQpKTsKICAgICAgICB9CiAgICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuZGVsZXRlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlbmFtZShmcm9tLCB0bykpOwogICAgICAgIH0KICAgICAgICB3YXRjaCgpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgfSgpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBFbXB0eSA9IGNsYXNzIHsKICAgICAgY2FwYWJpbGl0aWVzID0gewogICAgICAgIHN5bmNocm9ub3VzOiB0cnVlCiAgICAgIH07CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoW10pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgIH0KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKG51bGwpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRW1wdHkgPSBFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9jb25zdGFudHMuanMKdmFyIHJlcXVpcmVfY29uc3RhbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvY29uc3RhbnRzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFdJTl9TTEFTSCA9ICJcXFxcLyI7CiAgICB2YXIgV0lOX05PX1NMQVNIID0gYFteJHtXSU5fU0xBU0h9XWA7CiAgICB2YXIgRE9UX0xJVEVSQUwgPSAiXFwuIjsKICAgIHZhciBQTFVTX0xJVEVSQUwgPSAiXFwrIjsKICAgIHZhciBRTUFSS19MSVRFUkFMID0gIlxcPyI7CiAgICB2YXIgU0xBU0hfTElURVJBTCA9ICJcXC8iOwogICAgdmFyIE9ORV9DSEFSID0gIig/PS4pIjsKICAgIHZhciBRTUFSSyA9ICJbXi9dIjsKICAgIHZhciBFTkRfQU5DSE9SID0gYCg/OiR7U0xBU0hfTElURVJBTH18JClgOwogICAgdmFyIFNUQVJUX0FOQ0hPUiA9IGAoPzpefCR7U0xBU0hfTElURVJBTH0pYDsKICAgIHZhciBET1RTX1NMQVNIID0gYCR7RE9UX0xJVEVSQUx9ezEsMn0ke0VORF9BTkNIT1J9YDsKICAgIHZhciBOT19ET1QgPSBgKD8hJHtET1RfTElURVJBTH0pYDsKICAgIHZhciBOT19ET1RTID0gYCg/ISR7U1RBUlRfQU5DSE9SfSR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBOT19ET1RfU0xBU0ggPSBgKD8hJHtET1RfTElURVJBTH17MCwxfSR7RU5EX0FOQ0hPUn0pYDsKICAgIHZhciBOT19ET1RTX1NMQVNIID0gYCg/ISR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBRTUFSS19OT19ET1QgPSBgW14uJHtTTEFTSF9MSVRFUkFMfV1gOwogICAgdmFyIFNUQVIgPSBgJHtRTUFSS30qP2A7CiAgICB2YXIgU0VQID0gIi8iOwogICAgdmFyIFBPU0lYX0NIQVJTID0gewogICAgICBET1RfTElURVJBTCwKICAgICAgUExVU19MSVRFUkFMLAogICAgICBRTUFSS19MSVRFUkFMLAogICAgICBTTEFTSF9MSVRFUkFMLAogICAgICBPTkVfQ0hBUiwKICAgICAgUU1BUkssCiAgICAgIEVORF9BTkNIT1IsCiAgICAgIERPVFNfU0xBU0gsCiAgICAgIE5PX0RPVCwKICAgICAgTk9fRE9UUywKICAgICAgTk9fRE9UX1NMQVNILAogICAgICBOT19ET1RTX1NMQVNILAogICAgICBRTUFSS19OT19ET1QsCiAgICAgIFNUQVIsCiAgICAgIFNUQVJUX0FOQ0hPUiwKICAgICAgU0VQCiAgICB9OwogICAgdmFyIFdJTkRPV1NfQ0hBUlMgPSB7CiAgICAgIC4uLlBPU0lYX0NIQVJTLAogICAgICBTTEFTSF9MSVRFUkFMOiBgWyR7V0lOX1NMQVNIfV1gLAogICAgICBRTUFSSzogV0lOX05PX1NMQVNILAogICAgICBTVEFSOiBgJHtXSU5fTk9fU0xBU0h9Kj9gLAogICAgICBET1RTX1NMQVNIOiBgJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpYCwKICAgICAgTk9fRE9UOiBgKD8hJHtET1RfTElURVJBTH0pYCwKICAgICAgTk9fRE9UUzogYCg/ISg/Ol58WyR7V0lOX1NMQVNIfV0pJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIE5PX0RPVF9TTEFTSDogYCg/ISR7RE9UX0xJVEVSQUx9ezAsMX0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBOT19ET1RTX1NMQVNIOiBgKD8hJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIFFNQVJLX05PX0RPVDogYFteLiR7V0lOX1NMQVNIfV1gLAogICAgICBTVEFSVF9BTkNIT1I6IGAoPzpefFske1dJTl9TTEFTSH1dKWAsCiAgICAgIEVORF9BTkNIT1I6IGAoPzpbJHtXSU5fU0xBU0h9XXwkKWAsCiAgICAgIFNFUDogIlxcIgogICAgfTsKICAgIHZhciBQT1NJWF9SRUdFWF9TT1VSQ0UgPSB7CiAgICAgIGFsbnVtOiAiYS16QS1aMC05IiwKICAgICAgYWxwaGE6ICJhLXpBLVoiLAogICAgICBhc2NpaTogIlxceDAwLVxceDdGIiwKICAgICAgYmxhbms6ICIgXFx0IiwKICAgICAgY250cmw6ICJcXHgwMC1cXHgxRlxceDdGIiwKICAgICAgZGlnaXQ6ICIwLTkiLAogICAgICBncmFwaDogIlxceDIxLVxceDdFIiwKICAgICAgbG93ZXI6ICJhLXoiLAogICAgICBwcmludDogIlxceDIwLVxceDdFICIsCiAgICAgIHB1bmN0OiAiXFwtIVwiIyQlJicoKVxcKissLi86Ozw9Pj9AW1xcXV5fYHt8fX4iLAogICAgICBzcGFjZTogIiBcXHRcXHJcXG5cXHZcXGYiLAogICAgICB1cHBlcjogIkEtWiIsCiAgICAgIHdvcmQ6ICJBLVphLXowLTlfIiwKICAgICAgeGRpZ2l0OiAiQS1GYS1mMC05IgogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgTUFYX0xFTkdUSDogMTAyNCAqIDY0LAogICAgICBQT1NJWF9SRUdFWF9TT1VSQ0UsCiAgICAgIC8vIHJlZ3VsYXIgZXhwcmVzc2lvbnMKICAgICAgUkVHRVhfQkFDS1NMQVNIOiAvXFwoPyFbKis/XiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX05PTl9TUEVDSUFMX0NIQVJTOiAvXlteQCFbXF0uLCQqKz9ee30oKXxcXC9dKy8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlM6IC9bLSorPy5eJHt9KHwpW1xdXS8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjogLyhcXD8pKChcVykoXDMqKSkvZywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUw6IC8oWy0qKz8uXiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX1JFTU9WRV9CQUNLU0xBU0g6IC8oPzpcWy4qP1teXFxdXF18XFwoPz0uKSkvZywKICAgICAgLy8gUmVwbGFjZSBnbG9icyB3aXRoIGVxdWl2YWxlbnQgcGF0dGVybnMgdG8gcmVkdWNlIHBhcnNpbmcgdGltZS4KICAgICAgUkVQTEFDRU1FTlRTOiB7CiAgICAgICAgIioqKiI6ICIqIiwKICAgICAgICAiKiovKioiOiAiKioiLAogICAgICAgICIqKi8qKi8qKiI6ICIqKiIKICAgICAgfSwKICAgICAgLy8gRGlnaXRzCiAgICAgIENIQVJfMDogNDgsCiAgICAgIC8qIDAgKi8KICAgICAgQ0hBUl85OiA1NywKICAgICAgLyogOSAqLwogICAgICAvLyBBbHBoYWJldCBjaGFycy4KICAgICAgQ0hBUl9VUFBFUkNBU0VfQTogNjUsCiAgICAgIC8qIEEgKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfQTogOTcsCiAgICAgIC8qIGEgKi8KICAgICAgQ0hBUl9VUFBFUkNBU0VfWjogOTAsCiAgICAgIC8qIFogKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfWjogMTIyLAogICAgICAvKiB6ICovCiAgICAgIENIQVJfTEVGVF9QQVJFTlRIRVNFUzogNDAsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzogNDEsCiAgICAgIC8qICkgKi8KICAgICAgQ0hBUl9BU1RFUklTSzogNDIsCiAgICAgIC8qICogKi8KICAgICAgLy8gTm9uLWFscGhhYmV0aWMgY2hhcnMuCiAgICAgIENIQVJfQU1QRVJTQU5EOiAzOCwKICAgICAgLyogJiAqLwogICAgICBDSEFSX0FUOiA2NCwKICAgICAgLyogQCAqLwogICAgICBDSEFSX0JBQ0tXQVJEX1NMQVNIOiA5MiwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NBUlJJQUdFX1JFVFVSTjogMTMsCiAgICAgIC8qIFxyICovCiAgICAgIENIQVJfQ0lSQ1VNRkxFWF9BQ0NFTlQ6IDk0LAogICAgICAvKiBeICovCiAgICAgIENIQVJfQ09MT046IDU4LAogICAgICAvKiA6ICovCiAgICAgIENIQVJfQ09NTUE6IDQ0LAogICAgICAvKiAsICovCiAgICAgIENIQVJfRE9UOiA0NiwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0RPVUJMRV9RVU9URTogMzQsCiAgICAgIC8qICIgKi8KICAgICAgQ0hBUl9FUVVBTDogNjEsCiAgICAgIC8qID0gKi8KICAgICAgQ0hBUl9FWENMQU1BVElPTl9NQVJLOiAzMywKICAgICAgLyogISAqLwogICAgICBDSEFSX0ZPUk1fRkVFRDogMTIsCiAgICAgIC8qIFxmICovCiAgICAgIENIQVJfRk9SV0FSRF9TTEFTSDogNDcsCiAgICAgIC8qIC8gKi8KICAgICAgQ0hBUl9HUkFWRV9BQ0NFTlQ6IDk2LAogICAgICAvKiBgICovCiAgICAgIENIQVJfSEFTSDogMzUsCiAgICAgIC8qICMgKi8KICAgICAgQ0hBUl9IWVBIRU5fTUlOVVM6IDQ1LAogICAgICAvKiAtICovCiAgICAgIENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOiA2MCwKICAgICAgLyogPCAqLwogICAgICBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6IDEyMywKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQ6IDkxLAogICAgICAvKiBbICovCiAgICAgIENIQVJfTElORV9GRUVEOiAxMCwKICAgICAgLyogXG4gKi8KICAgICAgQ0hBUl9OT19CUkVBS19TUEFDRTogMTYwLAogICAgICAvKiBcdTAwQTAgKi8KICAgICAgQ0hBUl9QRVJDRU5UOiAzNywKICAgICAgLyogJSAqLwogICAgICBDSEFSX1BMVVM6IDQzLAogICAgICAvKiArICovCiAgICAgIENIQVJfUVVFU1RJT05fTUFSSzogNjMsCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9BTkdMRV9CUkFDS0VUOiA2MiwKICAgICAgLyogPiAqLwogICAgICBDSEFSX1JJR0hUX0NVUkxZX0JSQUNFOiAxMjUsCiAgICAgIC8qIH0gKi8KICAgICAgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDogOTMsCiAgICAgIC8qIF0gKi8KICAgICAgQ0hBUl9TRU1JQ09MT046IDU5LAogICAgICAvKiA7ICovCiAgICAgIENIQVJfU0lOR0xFX1FVT1RFOiAzOSwKICAgICAgLyogJyAqLwogICAgICBDSEFSX1NQQUNFOiAzMiwKICAgICAgLyogICAqLwogICAgICBDSEFSX1RBQjogOSwKICAgICAgLyogXHQgKi8KICAgICAgQ0hBUl9VTkRFUlNDT1JFOiA5NSwKICAgICAgLyogXyAqLwogICAgICBDSEFSX1ZFUlRJQ0FMX0xJTkU6IDEyNCwKICAgICAgLyogfCAqLwogICAgICBDSEFSX1pFUk9fV0lEVEhfTk9CUkVBS19TUEFDRTogNjUyNzksCiAgICAgIC8qIFx1RkVGRiAqLwogICAgICAvKioKICAgICAgICogQ3JlYXRlIEVYVEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGV4dGdsb2JDaGFycyhjaGFycykgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiISI6IHsgdHlwZTogIm5lZ2F0ZSIsIG9wZW46ICIoPzooPyEoPzoiLCBjbG9zZTogYCkpJHtjaGFycy5TVEFSfSlgIH0sCiAgICAgICAgICAiPyI6IHsgdHlwZTogInFtYXJrIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKT8iIH0sCiAgICAgICAgICAiKyI6IHsgdHlwZTogInBsdXMiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpKyIgfSwKICAgICAgICAgICIqIjogeyB0eXBlOiAic3RhciIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikqIiB9LAogICAgICAgICAgIkAiOiB7IHR5cGU6ICJhdCIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikiIH0KICAgICAgICB9OwogICAgICB9LAogICAgICAvKioKICAgICAgICogQ3JlYXRlIEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGdsb2JDaGFycyh3aW4zMikgewogICAgICAgIHJldHVybiB3aW4zMiA9PT0gdHJ1ZSA/IFdJTkRPV1NfQ0hBUlMgOiBQT1NJWF9DSEFSUzsKICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB7CiAgICAgIFJFR0VYX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSUywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwKICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgZXhwb3J0czIuaXNPYmplY3QgPSAodmFsKSA9PiB2YWwgIT09IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMgPSAoc3RyMikgPT4gUkVHRVhfU1BFQ0lBTF9DSEFSUy50ZXN0KHN0cjIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyMikgPT4gc3RyMi5sZW5ndGggPT09IDEgJiYgZXhwb3J0czIuaGFzUmVnZXhDaGFycyhzdHIyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTCwgIlxcJDEiKTsKICAgIGV4cG9ydHMyLnRvUG9zaXhTbGFzaGVzID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9CQUNLU0xBU0gsICIvIik7CiAgICBleHBvcnRzMi5pc1dpbmRvd3MgPSAoKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgbmF2aWdhdG9yICE9PSAidW5kZWZpbmVkIiAmJiBuYXZpZ2F0b3IucGxhdGZvcm0pIHsKICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IG5hdmlnYXRvci5wbGF0Zm9ybS50b0xvd2VyQ2FzZSgpOwogICAgICAgIHJldHVybiBwbGF0Zm9ybSA9PT0gIndpbjMyIiB8fCBwbGF0Zm9ybSA9PT0gIndpbmRvd3MiOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gInVuZGVmaW5lZCIgJiYgcHJvY2Vzcy5wbGF0Zm9ybSkgewogICAgICAgIHJldHVybiBwcm9jZXNzLnBsYXRmb3JtID09PSAid2luMzIiOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH07CiAgICBleHBvcnRzMi5yZW1vdmVCYWNrc2xhc2hlcyA9IChzdHIyKSA9PiB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9zY2FuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIENIQVJfQVNURVJJU0s6IENIQVJfQVNURVJJU0syLAogICAgICAvKiAqICovCiAgICAgIENIQVJfQVQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSCwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NPTU1BOiBDSEFSX0NPTU1BMiwKICAgICAgLyogLCAqLwogICAgICBDSEFSX0RPVCwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0VYQ0xBTUFUSU9OX01BUkssCiAgICAgIC8qICEgKi8KICAgICAgQ0hBUl9GT1JXQVJEX1NMQVNILAogICAgICAvKiAvICovCiAgICAgIENIQVJfTEVGVF9DVVJMWV9CUkFDRSwKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfUEFSRU5USEVTRVMsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOiBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyLAogICAgICAvKiBbICovCiAgICAgIENIQVJfUExVUywKICAgICAgLyogKyAqLwogICAgICBDSEFSX1FVRVNUSU9OX01BUkssCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRSwKICAgICAgLyogfSAqLwogICAgICBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTLAogICAgICAvKiApICovCiAgICAgIENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQ6IENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQyCiAgICAgIC8qIF0gKi8KICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIGlzUGF0aFNlcGFyYXRvciA9IChjb2RlKSA9PiB7CiAgICAgIHJldHVybiBjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0ggfHwgY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSDsKICAgIH07CiAgICB2YXIgZGVwdGggPSAodG9rZW4pID0+IHsKICAgICAgaWYgKHRva2VuLmlzUHJlZml4ICE9PSB0cnVlKSB7CiAgICAgICAgdG9rZW4uZGVwdGggPSB0b2tlbi5pc0dsb2JzdGFyID8gSW5maW5pdHkgOiAxOwogICAgICB9CiAgICB9OwogICAgdmFyIHNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGxlbmd0aCA9IGlucHV0Lmxlbmd0aCAtIDE7CiAgICAgIGNvbnN0IHNjYW5Ub0VuZCA9IG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy5zY2FuVG9FbmQgPT09IHRydWU7CiAgICAgIGNvbnN0IHNsYXNoZXMgPSBbXTsKICAgICAgY29uc3QgdG9rZW5zID0gW107CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdHIyID0gaW5wdXQ7CiAgICAgIGxldCBpbmRleCA9IC0xOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgbGFzdEluZGV4ID0gMDsKICAgICAgbGV0IGlzQnJhY2UgPSBmYWxzZTsKICAgICAgbGV0IGlzQnJhY2tldCA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9iID0gZmFsc2U7CiAgICAgIGxldCBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzR2xvYnN0YXIgPSBmYWxzZTsKICAgICAgbGV0IGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWQgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWRFeHRnbG9iID0gZmFsc2U7CiAgICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VzID0gMDsKICAgICAgbGV0IHByZXY7CiAgICAgIGxldCBjb2RlOwogICAgICBsZXQgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gaW5kZXggPj0gbGVuZ3RoOwogICAgICBjb25zdCBwZWVrID0gKCkgPT4gc3RyMi5jaGFyQ29kZUF0KGluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGFkdmFuY2UgPSAoKSA9PiB7CiAgICAgICAgcHJldiA9IGNvZGU7CiAgICAgICAgcmV0dXJuIHN0cjIuY2hhckNvZGVBdCgrK2luZGV4KTsKICAgICAgfTsKICAgICAgd2hpbGUgKGluZGV4IDwgbGVuZ3RoKSB7CiAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICBsZXQgbmV4dDsKICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICBicmFjZUVzY2FwZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChicmFjZUVzY2FwZWQgPT09IHRydWUgfHwgY29kZSA9PT0gQ0hBUl9MRUZUX0NVUkxZX0JSQUNFKSB7CiAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcysrOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9ET1QgJiYgKGNvZGUgPSBhZHZhbmNlKCkpID09PSBDSEFSX0RPVCkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGJyYWNlRXNjYXBlZCAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0NPTU1BMikgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMtLTsKICAgICAgICAgICAgICBpZiAoYnJhY2VzID09PSAwKSB7CiAgICAgICAgICAgICAgICBicmFjZUVzY2FwZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIKSB7CiAgICAgICAgICBzbGFzaGVzLnB1c2goaW5kZXgpOwogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgICAgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgICAgIGlmIChmaW5pc2hlZCA9PT0gdHJ1ZSkgY29udGludWU7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9ET1QgJiYgaW5kZXggPT09IHN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGFydCArPSAyOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4ICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub2V4dCAhPT0gdHJ1ZSkgewogICAgICAgICAgY29uc3QgaXNFeHRnbG9iQ2hhciA9IGNvZGUgPT09IENIQVJfUExVUyB8fCBjb2RlID09PSBDSEFSX0FUIHx8IGNvZGUgPT09IENIQVJfQVNURVJJU0syIHx8IGNvZGUgPT09IENIQVJfUVVFU1RJT05fTUFSSyB8fCBjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUks7CiAgICAgICAgICBpZiAoaXNFeHRnbG9iQ2hhciA9PT0gdHJ1ZSAmJiBwZWVrKCkgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICBpc0V4dGdsb2IgPSB0b2tlbi5pc0V4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUksgJiYgaW5kZXggPT09IHN0YXJ0KSB7CiAgICAgICAgICAgICAgbmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKGNvZGUgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQVNURVJJU0syKSB7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9BU1RFUklTSzIpIGlzR2xvYnN0YXIgPSB0b2tlbi5pc0dsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUkspIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyKSB7CiAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKG5leHQgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUMikgewogICAgICAgICAgICAgIGlzQnJhY2tldCA9IHRva2VuLmlzQnJhY2tldCA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgbmVnYXRlZCA9IHRva2VuLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgICAgc3RhcnQrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub3BhcmVuICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChpc0dsb2IgPT09IHRydWUpIHsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMubm9leHQgPT09IHRydWUpIHsKICAgICAgICBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgICBpc0dsb2IgPSBmYWxzZTsKICAgICAgfQogICAgICBsZXQgYmFzZSA9IHN0cjI7CiAgICAgIGxldCBwcmVmaXggPSAiIjsKICAgICAgbGV0IGdsb2IgPSAiIjsKICAgICAgaWYgKHN0YXJ0ID4gMCkgewogICAgICAgIHByZWZpeCA9IHN0cjIuc2xpY2UoMCwgc3RhcnQpOwogICAgICAgIHN0cjIgPSBzdHIyLnNsaWNlKHN0YXJ0KTsKICAgICAgICBsYXN0SW5kZXggLT0gc3RhcnQ7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgaXNHbG9iID09PSB0cnVlICYmIGxhc3RJbmRleCA+IDApIHsKICAgICAgICBiYXNlID0gc3RyMi5zbGljZSgwLCBsYXN0SW5kZXgpOwogICAgICAgIGdsb2IgPSBzdHIyLnNsaWNlKGxhc3RJbmRleCk7CiAgICAgIH0gZWxzZSBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgYmFzZSA9ICIiOwogICAgICAgIGdsb2IgPSBzdHIyOwogICAgICB9IGVsc2UgewogICAgICAgIGJhc2UgPSBzdHIyOwogICAgICB9CiAgICAgIGlmIChiYXNlICYmIGJhc2UgIT09ICIiICYmIGJhc2UgIT09ICIvIiAmJiBiYXNlICE9PSBzdHIyKSB7CiAgICAgICAgaWYgKGlzUGF0aFNlcGFyYXRvcihiYXNlLmNoYXJDb2RlQXQoYmFzZS5sZW5ndGggLSAxKSkpIHsKICAgICAgICAgIGJhc2UgPSBiYXNlLnNsaWNlKDAsIC0xKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICBpZiAoZ2xvYikgZ2xvYiA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGdsb2IpOwogICAgICAgIGlmIChiYXNlICYmIGJhY2tzbGFzaGVzID09PSB0cnVlKSB7CiAgICAgICAgICBiYXNlID0gdXRpbHMucmVtb3ZlQmFja3NsYXNoZXMoYmFzZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHN0YXRlID0gewogICAgICAgIHByZWZpeCwKICAgICAgICBpbnB1dCwKICAgICAgICBzdGFydCwKICAgICAgICBiYXNlLAogICAgICAgIGdsb2IsCiAgICAgICAgaXNCcmFjZSwKICAgICAgICBpc0JyYWNrZXQsCiAgICAgICAgaXNHbG9iLAogICAgICAgIGlzRXh0Z2xvYiwKICAgICAgICBpc0dsb2JzdGFyLAogICAgICAgIG5lZ2F0ZWQsCiAgICAgICAgbmVnYXRlZEV4dGdsb2IKICAgICAgfTsKICAgICAgaWYgKG9wdHMudG9rZW5zID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUubWF4RGVwdGggPSAwOwogICAgICAgIGlmICghaXNQYXRoU2VwYXJhdG9yKGNvZGUpKSB7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnRva2VucyA9IHRva2VuczsKICAgICAgfQogICAgICBpZiAob3B0cy5wYXJ0cyA9PT0gdHJ1ZSB8fCBvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIGxldCBwcmV2SW5kZXg7CiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc2xhc2hlcy5sZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICBjb25zdCBuID0gcHJldkluZGV4ID8gcHJldkluZGV4ICsgMSA6IHN0YXJ0OwogICAgICAgICAgY29uc3QgaSA9IHNsYXNoZXNbaWR4XTsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UobiwgaSk7CiAgICAgICAgICBpZiAob3B0cy50b2tlbnMpIHsKICAgICAgICAgICAgaWYgKGlkeCA9PT0gMCAmJiBzdGFydCAhPT0gMCkgewogICAgICAgICAgICAgIHRva2Vuc1tpZHhdLmlzUHJlZml4ID0gdHJ1ZTsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHByZWZpeDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1tpZHhdKTsKICAgICAgICAgICAgc3RhdGUubWF4RGVwdGggKz0gdG9rZW5zW2lkeF0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaWR4ICE9PSAwIHx8IHZhbHVlICE9PSAiIikgewogICAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXZJbmRleCA9IGk7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2SW5kZXggJiYgcHJldkluZGV4ICsgMSA8IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC5zbGljZShwcmV2SW5kZXggKyAxKTsKICAgICAgICAgIHBhcnRzLnB1c2godmFsdWUpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgZGVwdGgodG9rZW5zW3Rva2Vucy5sZW5ndGggLSAxXSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnNsYXNoZXMgPSBzbGFzaGVzOwogICAgICAgIHN0YXRlLnBhcnRzID0gcGFydHM7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9wYXJzZS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBjb25zdGFudHMgPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIE1BWF9MRU5HVEgsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlMsCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwKICAgICAgUkVQTEFDRU1FTlRTCiAgICB9ID0gY29uc3RhbnRzOwogICAgdmFyIGV4cGFuZFJhbmdlID0gKGFyZ3MsIG9wdGlvbnMpID0+IHsKICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmV4cGFuZFJhbmdlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZXhwYW5kUmFuZ2UoLi4uYXJncywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXJncy5zb3J0KCk7CiAgICAgIGNvbnN0IHZhbHVlID0gYFske2FyZ3Muam9pbigiLSIpfV1gOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAodmFsdWUpOwogICAgICB9IGNhdGNoIChleCkgewogICAgICAgIHJldHVybiBhcmdzLm1hcCgodikgPT4gdXRpbHMuZXNjYXBlUmVnZXgodikpLmpvaW4oIi4uIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfTsKICAgIHZhciBzeW50YXhFcnJvciA9ICh0eXBlMiwgY2hhcikgPT4gewogICAgICByZXR1cm4gYE1pc3NpbmcgJHt0eXBlMn06ICIke2NoYXJ9IiAtIHVzZSAiXFxcXCR7Y2hhcn0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7CiAgICB9OwogICAgdmFyIHBhcnNlID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IG9wdHMgPSB7IC4uLm9wdGlvbnMgfTsKICAgICAgY29uc3QgbWF4ID0gdHlwZW9mIG9wdHMubWF4TGVuZ3RoID09PSAibnVtYmVyIiA/IE1hdGgubWluKE1BWF9MRU5HVEgsIG9wdHMubWF4TGVuZ3RoKSA6IE1BWF9MRU5HVEg7CiAgICAgIGxldCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGNvbnN0IGJvcyA9IHsgdHlwZTogImJvcyIsIHZhbHVlOiAiIiwgb3V0cHV0OiBvcHRzLnByZXBlbmQgfHwgIiIgfTsKICAgICAgY29uc3QgdG9rZW5zID0gW2Jvc107CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IFBMQVRGT1JNX0NIQVJTID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBFWFRHTE9CX0NIQVJTID0gY29uc3RhbnRzLmV4dGdsb2JDaGFycyhQTEFURk9STV9DSEFSUyk7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBQTFVTX0xJVEVSQUwsCiAgICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgICBPTkVfQ0hBUiwKICAgICAgICBET1RTX1NMQVNILAogICAgICAgIE5PX0RPVCwKICAgICAgICBOT19ET1RfU0xBU0gsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBRTUFSSywKICAgICAgICBRTUFSS19OT19ET1QsCiAgICAgICAgU1RBUiwKICAgICAgICBTVEFSVF9BTkNIT1IKICAgICAgfSA9IFBMQVRGT1JNX0NIQVJTOwogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gIiIgOiBOT19ET1Q7CiAgICAgIGNvbnN0IHFtYXJrTm9Eb3QgPSBvcHRzLmRvdCA/IFFNQVJLIDogUU1BUktfTk9fRE9UOwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/IGdsb2JzdGFyKG9wdHMpIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIG9wdHMubm9leHQgPT09ICJib29sZWFuIikgewogICAgICAgIG9wdHMubm9leHRnbG9iID0gb3B0cy5ub2V4dDsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBpbnB1dCwKICAgICAgICBpbmRleDogLTEsCiAgICAgICAgc3RhcnQ6IDAsCiAgICAgICAgZG90OiBvcHRzLmRvdCA9PT0gdHJ1ZSwKICAgICAgICBjb25zdW1lZDogIiIsCiAgICAgICAgb3V0cHV0OiAiIiwKICAgICAgICBwcmVmaXg6ICIiLAogICAgICAgIGJhY2t0cmFjazogZmFsc2UsCiAgICAgICAgbmVnYXRlZDogZmFsc2UsCiAgICAgICAgYnJhY2tldHM6IDAsCiAgICAgICAgYnJhY2VzOiAwLAogICAgICAgIHBhcmVuczogMCwKICAgICAgICBxdW90ZXM6IDAsCiAgICAgICAgZ2xvYnN0YXI6IGZhbHNlLAogICAgICAgIHRva2VucwogICAgICB9OwogICAgICBpbnB1dCA9IHV0aWxzLnJlbW92ZVByZWZpeChpbnB1dCwgc3RhdGUpOwogICAgICBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGNvbnN0IGV4dGdsb2JzID0gW107CiAgICAgIGNvbnN0IGJyYWNlcyA9IFtdOwogICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICBsZXQgcHJldiA9IGJvczsKICAgICAgbGV0IHZhbHVlOwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBzdGF0ZS5pbmRleCA9PT0gbGVuIC0gMTsKICAgICAgY29uc3QgcGVlayA9IHN0YXRlLnBlZWsgPSAobiA9IDEpID0+IGlucHV0W3N0YXRlLmluZGV4ICsgbl07CiAgICAgIGNvbnN0IGFkdmFuY2UgPSBzdGF0ZS5hZHZhbmNlID0gKCkgPT4gaW5wdXRbKytzdGF0ZS5pbmRleF0gfHwgIiI7CiAgICAgIGNvbnN0IHJlbWFpbmluZyA9ICgpID0+IGlucHV0LnNsaWNlKHN0YXRlLmluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGNvbnN1bWUgPSAodmFsdWUyID0gIiIsIG51bSA9IDApID0+IHsKICAgICAgICBzdGF0ZS5jb25zdW1lZCArPSB2YWx1ZTI7CiAgICAgICAgc3RhdGUuaW5kZXggKz0gbnVtOwogICAgICB9OwogICAgICBjb25zdCBhcHBlbmQgPSAodG9rZW4pID0+IHsKICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICBjb25zdW1lKHRva2VuLnZhbHVlKTsKICAgICAgfTsKICAgICAgY29uc3QgbmVnYXRlID0gKCkgPT4gewogICAgICAgIGxldCBjb3VudCA9IDE7CiAgICAgICAgd2hpbGUgKHBlZWsoKSA9PT0gIiEiICYmIChwZWVrKDIpICE9PSAiKCIgfHwgcGVlaygzKSA9PT0gIj8iKSkgewogICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCAlIDIgPT09IDApIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUubmVnYXRlZCA9IHRydWU7CiAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfTsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gKHR5cGUyKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZTJdKys7CiAgICAgICAgc3RhY2sucHVzaCh0eXBlMik7CiAgICAgIH07CiAgICAgIGNvbnN0IGRlY3JlbWVudCA9ICh0eXBlMikgPT4gewogICAgICAgIHN0YXRlW3R5cGUyXS0tOwogICAgICAgIHN0YWNrLnBvcCgpOwogICAgICB9OwogICAgICBjb25zdCBwdXNoID0gKHRvaykgPT4gewogICAgICAgIGlmIChwcmV2LnR5cGUgPT09ICJnbG9ic3RhciIpIHsKICAgICAgICAgIGNvbnN0IGlzQnJhY2UgPSBzdGF0ZS5icmFjZXMgPiAwICYmICh0b2sudHlwZSA9PT0gImNvbW1hIiB8fCB0b2sudHlwZSA9PT0gImJyYWNlIik7CiAgICAgICAgICBjb25zdCBpc0V4dGdsb2IgPSB0b2suZXh0Z2xvYiA9PT0gdHJ1ZSB8fCBleHRnbG9icy5sZW5ndGggJiYgKHRvay50eXBlID09PSAicGlwZSIgfHwgdG9rLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKHRvay50eXBlICE9PSAic2xhc2giICYmIHRvay50eXBlICE9PSAicGFyZW4iICYmICFpc0JyYWNlICYmICFpc0V4dGdsb2IpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICAgIHByZXYudmFsdWUgPSAiKiI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZXh0Z2xvYnMubGVuZ3RoICYmIHRvay50eXBlICE9PSAicGFyZW4iKSB7CiAgICAgICAgICBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXS5pbm5lciArPSB0b2sudmFsdWU7CiAgICAgICAgfQogICAgICAgIGlmICh0b2sudmFsdWUgfHwgdG9rLm91dHB1dCkgYXBwZW5kKHRvayk7CiAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAidGV4dCIgJiYgdG9rLnR5cGUgPT09ICJ0ZXh0IikgewogICAgICAgICAgcHJldi5vdXRwdXQgPSAocHJldi5vdXRwdXQgfHwgcHJldi52YWx1ZSkgKyB0b2sudmFsdWU7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHRvay52YWx1ZTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdG9rLnByZXYgPSBwcmV2OwogICAgICAgIHRva2Vucy5wdXNoKHRvayk7CiAgICAgICAgcHJldiA9IHRvazsKICAgICAgfTsKICAgICAgY29uc3QgZXh0Z2xvYk9wZW4gPSAodHlwZTIsIHZhbHVlMikgPT4gewogICAgICAgIGNvbnN0IHRva2VuID0geyAuLi5FWFRHTE9CX0NIQVJTW3ZhbHVlMl0sIGNvbmRpdGlvbnM6IDEsIGlubmVyOiAiIiB9OwogICAgICAgIHRva2VuLnByZXYgPSBwcmV2OwogICAgICAgIHRva2VuLnBhcmVucyA9IHN0YXRlLnBhcmVuczsKICAgICAgICB0b2tlbi5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQ7CiAgICAgICAgY29uc3Qgb3V0cHV0ID0gKG9wdHMuY2FwdHVyZSA/ICIoIiA6ICIiKSArIHRva2VuLm9wZW47CiAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICBwdXNoKHsgdHlwZTogdHlwZTIsIHZhbHVlOiB2YWx1ZTIsIG91dHB1dDogc3RhdGUub3V0cHV0ID8gIiIgOiBPTkVfQ0hBUiB9KTsKICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWU6IGFkdmFuY2UoKSwgb3V0cHV0IH0pOwogICAgICAgIGV4dGdsb2JzLnB1c2godG9rZW4pOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iQ2xvc2UgPSAodG9rZW4pID0+IHsKICAgICAgICBsZXQgb3V0cHV0ID0gdG9rZW4uY2xvc2UgKyAob3B0cy5jYXB0dXJlID8gIikiIDogIiIpOwogICAgICAgIGxldCByZXN0OwogICAgICAgIGlmICh0b2tlbi50eXBlID09PSAibmVnYXRlIikgewogICAgICAgICAgbGV0IGV4dGdsb2JTdGFyID0gc3RhcjsKICAgICAgICAgIGlmICh0b2tlbi5pbm5lciAmJiB0b2tlbi5pbm5lci5sZW5ndGggPiAxICYmIHRva2VuLmlubmVyLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgZXh0Z2xvYlN0YXIgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRnbG9iU3RhciAhPT0gc3RhciB8fCBlb3MoKSB8fCAvXlwpKyQvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkkKSkke2V4dGdsb2JTdGFyfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4uaW5uZXIuaW5jbHVkZXMoIioiKSAmJiAocmVzdCA9IHJlbWFpbmluZygpKSAmJiAvXlwuW15cXC8uXSskLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBwYXJzZShyZXN0LCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSkub3V0cHV0OwogICAgICAgICAgICBvdXRwdXQgPSB0b2tlbi5jbG9zZSA9IGApJHtleHByZXNzaW9ufSkke2V4dGdsb2JTdGFyfSlgOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHRva2VuLnByZXYudHlwZSA9PT0gImJvcyIpIHsKICAgICAgICAgICAgc3RhdGUubmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9OwogICAgICBpZiAob3B0cy5mYXN0cGF0aHMgIT09IGZhbHNlICYmICEvKF5bKiFdfFsvKClbXF17fSJdKS8udGVzdChpbnB1dCkpIHsKICAgICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgICBsZXQgb3V0cHV0ID0gaW5wdXQucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUYsIChtLCBlc2MsIGNoYXJzLCBmaXJzdCwgcmVzdCwgaW5kZXgpID0+IHsKICAgICAgICAgIGlmIChmaXJzdCA9PT0gIlxcIikgewogICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgIHJldHVybiBtOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZpcnN0ID09PSAiPyIpIHsKICAgICAgICAgICAgaWYgKGVzYykgewogICAgICAgICAgICAgIHJldHVybiBlc2MgKyBmaXJzdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHsKICAgICAgICAgICAgICByZXR1cm4gcW1hcmtOb0RvdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gUU1BUksucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIuIikgewogICAgICAgICAgICByZXR1cm4gRE9UX0xJVEVSQUwucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIqIikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBzdGFyIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzdGFyOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGVzYyA/IG0gOiBgXFwke219YDsKICAgICAgICB9KTsKICAgICAgICBpZiAoYmFja3NsYXNoZXMgPT09IHRydWUpIHsKICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQucmVwbGFjZSgvXFwrL2csIChtKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIG0ubGVuZ3RoICUgMiA9PT0gMCA/ICJcXFxcIiA6IG0gPyAiXFwiIDogIiI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAob3V0cHV0ID09PSBpbnB1dCAmJiBvcHRzLmNvbnRhaW5zID09PSB0cnVlKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBpbnB1dDsKICAgICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMud3JhcE91dHB1dChvdXRwdXQsIHN0YXRlLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgd2hpbGUgKCFlb3MoKSkgewogICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgIGlmICh2YWx1ZSA9PT0gIlwwIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlxcIikgewogICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgIGlmIChuZXh0ID09PSAiLyIgJiYgb3B0cy5iYXNoICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG5leHQgPT09ICIuIiB8fCBuZXh0ID09PSAiOyIpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5leHQpIHsKICAgICAgICAgICAgdmFsdWUgKz0gIlxcIjsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcKy8uZXhlYyhyZW1haW5pbmcoKSk7CiAgICAgICAgICBsZXQgc2xhc2hlcyA9IDA7CiAgICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0ubGVuZ3RoID4gMikgewogICAgICAgICAgICBzbGFzaGVzID0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBzbGFzaGVzOwogICAgICAgICAgICBpZiAoc2xhc2hlcyAlIDIgIT09IDApIHsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy51bmVzY2FwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICB2YWx1ZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHZhbHVlICs9IGFkdmFuY2UoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA+IDAgJiYgKHZhbHVlICE9PSAiXSIgfHwgcHJldi52YWx1ZSA9PT0gIlsiIHx8IHByZXYudmFsdWUgPT09ICJbXiIpKSB7CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCAhPT0gZmFsc2UgJiYgdmFsdWUgPT09ICI6IikgewogICAgICAgICAgICBjb25zdCBpbm5lciA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICAgIGlmIChpbm5lci5pbmNsdWRlcygiWyIpKSB7CiAgICAgICAgICAgICAgcHJldi5wb3NpeCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCI6IikpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IHByZXYudmFsdWUubGFzdEluZGV4T2YoIlsiKTsKICAgICAgICAgICAgICAgIGNvbnN0IHByZSA9IHByZXYudmFsdWUuc2xpY2UoMCwgaWR4KTsKICAgICAgICAgICAgICAgIGNvbnN0IHJlc3QyID0gcHJldi52YWx1ZS5zbGljZShpZHggKyAyKTsKICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l4ID0gUE9TSVhfUkVHRVhfU09VUkNFW3Jlc3QyXTsKICAgICAgICAgICAgICAgIGlmIChwb3NpeCkgewogICAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gcHJlICsgcG9zaXg7CiAgICAgICAgICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgaWYgKCFib3Mub3V0cHV0ICYmIHRva2Vucy5pbmRleE9mKHByZXYpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgYm9zLm91dHB1dCA9IE9ORV9DSEFSOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiWyIgJiYgcGVlaygpICE9PSAiOiIgfHwgdmFsdWUgPT09ICItIiAmJiBwZWVrKCkgPT09ICJdIikgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iICYmIChwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCA9PT0gdHJ1ZSAmJiB2YWx1ZSA9PT0gIiEiICYmIHByZXYudmFsdWUgPT09ICJbIikgewogICAgICAgICAgICB2YWx1ZSA9ICJeIjsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUucXVvdGVzID09PSAxICYmIHZhbHVlICE9PSAnIicpIHsKICAgICAgICAgIHZhbHVlID0gdXRpbHMuZXNjYXBlUmVnZXgodmFsdWUpOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gJyInKSB7CiAgICAgICAgICBzdGF0ZS5xdW90ZXMgPSBzdGF0ZS5xdW90ZXMgPT09IDEgPyAwIDogMTsKICAgICAgICAgIGlmIChvcHRzLmtlZXBRdW90ZXMgPT09IHRydWUpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKCIpIHsKICAgICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKSIpIHsKICAgICAgICAgIGlmIChzdGF0ZS5wYXJlbnMgPT09IDAgJiYgb3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoIm9wZW5pbmciLCAiKCIpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4dGdsb2IgPSBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChleHRnbG9iICYmIHN0YXRlLnBhcmVucyA9PT0gZXh0Z2xvYi5wYXJlbnMgKyAxKSB7CiAgICAgICAgICAgIGV4dGdsb2JDbG9zZShleHRnbG9icy5wb3AoKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwYXJlbiIsIHZhbHVlLCBvdXRwdXQ6IHN0YXRlLnBhcmVucyA/ICIpIiA6ICJcXCkiIH0pOwogICAgICAgICAgZGVjcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJbIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8ICFyZW1haW5pbmcoKS5pbmNsdWRlcygiXSIpKSB7CiAgICAgICAgICAgIGlmIChvcHRzLm5vYnJhY2tldCAhPT0gdHJ1ZSAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpbmNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImJyYWNrZXQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJdIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8IHByZXYgJiYgcHJldi50eXBlID09PSAiYnJhY2tldCIgJiYgcHJldi52YWx1ZS5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICJbIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQ6IGBcXCR7dmFsdWV9YCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSBwcmV2LnZhbHVlLnNsaWNlKDEpOwogICAgICAgICAgaWYgKHByZXYucG9zaXggIT09IHRydWUgJiYgcHJldlZhbHVlWzBdID09PSAiXiIgJiYgIXByZXZWYWx1ZS5pbmNsdWRlcygiLyIpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYC8ke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IGZhbHNlIHx8IHV0aWxzLmhhc1JlZ2V4Q2hhcnMocHJldlZhbHVlKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSB1dGlscy5lc2NhcGVSZWdleChwcmV2LnZhbHVlKTsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi52YWx1ZS5sZW5ndGgpOwogICAgICAgICAgaWYgKG9wdHMubGl0ZXJhbEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBlc2NhcGVkOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gZXNjYXBlZDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlID0gYCgke2NhcHR1cmV9JHtlc2NhcGVkfXwke3ByZXYudmFsdWV9KWA7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi52YWx1ZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ7IiAmJiBvcHRzLm5vYnJhY2UgIT09IHRydWUpIHsKICAgICAgICAgIGluY3JlbWVudCgiYnJhY2VzIik7CiAgICAgICAgICBjb25zdCBvcGVuID0gewogICAgICAgICAgICB0eXBlOiAiYnJhY2UiLAogICAgICAgICAgICB2YWx1ZSwKICAgICAgICAgICAgb3V0cHV0OiAiKCIsCiAgICAgICAgICAgIG91dHB1dEluZGV4OiBzdGF0ZS5vdXRwdXQubGVuZ3RoLAogICAgICAgICAgICB0b2tlbnNJbmRleDogc3RhdGUudG9rZW5zLmxlbmd0aAogICAgICAgICAgfTsKICAgICAgICAgIGJyYWNlcy5wdXNoKG9wZW4pOwogICAgICAgICAgcHVzaChvcGVuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ9IikgewogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKG9wdHMubm9icmFjZSA9PT0gdHJ1ZSB8fCAhYnJhY2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IG91dHB1dCA9ICIpIjsKICAgICAgICAgIGlmIChicmFjZS5kb3RzID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IGFyciA9IHRva2Vucy5zbGljZSgpOwogICAgICAgICAgICBjb25zdCByYW5nZSA9IFtdOwogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSA9PT0gImJyYWNlIikgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSAhPT0gImRvdHMiKSB7CiAgICAgICAgICAgICAgICByYW5nZS51bnNoaWZ0KGFycltpXS52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG91dHB1dCA9IGV4cGFuZFJhbmdlKHJhbmdlLCBvcHRzKTsKICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChicmFjZS5jb21tYSAhPT0gdHJ1ZSAmJiBicmFjZS5kb3RzICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IG91dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCBicmFjZS5vdXRwdXRJbmRleCk7CiAgICAgICAgICAgIGNvbnN0IHRva3MgPSBzdGF0ZS50b2tlbnMuc2xpY2UoYnJhY2UudG9rZW5zSW5kZXgpOwogICAgICAgICAgICBicmFjZS52YWx1ZSA9IGJyYWNlLm91dHB1dCA9ICJcXHsiOwogICAgICAgICAgICB2YWx1ZSA9IG91dHB1dCA9ICJcXH0iOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBvdXQ7CiAgICAgICAgICAgIGZvciAoY29uc3QgdCBvZiB0b2tzKSB7CiAgICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHQub3V0cHV0IHx8IHQudmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2UiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGJyYWNlcy5wb3AoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ8IikgewogICAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uY29uZGl0aW9ucysrOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiLCIpIHsKICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChicmFjZSAmJiBzdGFja1tzdGFjay5sZW5ndGggLSAxXSA9PT0gImJyYWNlcyIpIHsKICAgICAgICAgICAgYnJhY2UuY29tbWEgPSB0cnVlOwogICAgICAgICAgICBvdXRwdXQgPSAifCI7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImNvbW1hIiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIvIikgewogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImRvdCIgJiYgc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGF0ZS5zdGFydCA9IHN0YXRlLmluZGV4ICsgMTsKICAgICAgICAgICAgc3RhdGUuY29uc3VtZWQgPSAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gIiI7CiAgICAgICAgICAgIHRva2Vucy5wb3AoKTsKICAgICAgICAgICAgcHJldiA9IGJvczsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWUsIG91dHB1dDogU0xBU0hfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIuIikgewogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyA+IDAgJiYgcHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIi4iKSBwcmV2Lm91dHB1dCA9IERPVF9MSVRFUkFMOwogICAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJkb3RzIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIGJyYWNlLmRvdHMgPSB0cnVlOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFjZXMgKyBzdGF0ZS5wYXJlbnMgPT09IDAgJiYgcHJldi50eXBlICE9PSAiYm9zIiAmJiBwcmV2LnR5cGUgIT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogRE9UX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJkb3QiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICI/IikgewogICAgICAgICAgY29uc3QgaXNHcm91cCA9IHByZXYgJiYgcHJldi52YWx1ZSA9PT0gIigiOwogICAgICAgICAgaWYgKCFpc0dyb3VwICYmIG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicW1hcmsiLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAicGFyZW4iKSB7CiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBwZWVrKCk7CiAgICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgICAgaWYgKHByZXYudmFsdWUgPT09ICIoIiAmJiAhL1shPTw6XS8udGVzdChuZXh0KSB8fCBuZXh0ID09PSAiPCIgJiYgIS88KFshPV18XHcrPikvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgICAgb3V0cHV0ID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMuZG90ICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzbGFzaCIgfHwgcHJldi50eXBlID09PSAiYm9zIikpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJxbWFyayIsIHZhbHVlLCBvdXRwdXQ6IFFNQVJLX05PX0RPVCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUksgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiISIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIikgewogICAgICAgICAgICBpZiAocGVlaygyKSAhPT0gIj8iIHx8ICEvWyE9PDpdLy50ZXN0KHBlZWsoMykpKSB7CiAgICAgICAgICAgICAgZXh0Z2xvYk9wZW4oIm5lZ2F0ZSIsIHZhbHVlKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgc3RhdGUuaW5kZXggPT09IDApIHsKICAgICAgICAgICAgbmVnYXRlKCk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIrIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicGx1cyIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCIgfHwgb3B0cy5yZWdleCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUsIG91dHB1dDogUExVU19MSVRFUkFMIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIChwcmV2LnR5cGUgPT09ICJicmFja2V0IiB8fCBwcmV2LnR5cGUgPT09ICJwYXJlbiIgfHwgcHJldi50eXBlID09PSAiYnJhY2UiKSB8fCBzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlOiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiQCIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIiAmJiBwZWVrKDIpICE9PSAiPyIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJhdCIsIGV4dGdsb2I6IHRydWUsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSAhPT0gIioiKSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09ICIkIiB8fCB2YWx1ZSA9PT0gIl4iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGlmIChtYXRjaCkgewogICAgICAgICAgICB2YWx1ZSArPSBtYXRjaFswXTsKICAgICAgICAgICAgc3RhdGUuaW5kZXggKz0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIiB8fCBwcmV2LnN0YXIgPT09IHRydWUpKSB7CiAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICBwcmV2LnN0YXIgPSB0cnVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdCA9IHJlbWFpbmluZygpOwogICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiAvXlwoW14/XS8udGVzdChyZXN0KSkgewogICAgICAgICAgZXh0Z2xvYk9wZW4oInN0YXIiLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gInN0YXIiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2dsb2JzdGFyID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHByaW9yID0gcHJldi5wcmV2OwogICAgICAgICAgY29uc3QgYmVmb3JlID0gcHJpb3IucHJldjsKICAgICAgICAgIGNvbnN0IGlzU3RhcnQgPSBwcmlvci50eXBlID09PSAic2xhc2giIHx8IHByaW9yLnR5cGUgPT09ICJib3MiOwogICAgICAgICAgY29uc3QgYWZ0ZXJTdGFyID0gYmVmb3JlICYmIChiZWZvcmUudHlwZSA9PT0gInN0YXIiIHx8IGJlZm9yZS50eXBlID09PSAiZ2xvYnN0YXIiKTsKICAgICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUgJiYgKCFpc1N0YXJ0IHx8IHJlc3RbMF0gJiYgcmVzdFswXSAhPT0gIi8iKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAocHJpb3IudHlwZSA9PT0gImNvbW1hIiB8fCBwcmlvci50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IGV4dGdsb2JzLmxlbmd0aCAmJiAocHJpb3IudHlwZSA9PT0gInBpcGUiIHx8IHByaW9yLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKCFpc1N0YXJ0ICYmIHByaW9yLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAocmVzdC5zbGljZSgwLCAzKSA9PT0gIi8qKiIpIHsKICAgICAgICAgICAgY29uc3QgYWZ0ZXIgPSBpbnB1dFtzdGF0ZS5pbmRleCArIDRdOwogICAgICAgICAgICBpZiAoYWZ0ZXIgJiYgYWZ0ZXIgIT09ICIvIikgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3QgPSByZXN0LnNsaWNlKDMpOwogICAgICAgICAgICBjb25zdW1lKCIvKioiLCAzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiBlb3MoKSkgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJpb3IudHlwZSA9PT0gInNsYXNoIiAmJiBwcmlvci5wcmV2LnR5cGUgIT09ICJib3MiICYmICFhZnRlclN0YXIgJiYgZW9zKCkpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpICsgKG9wdHMuc3RyaWN0U2xhc2hlcyA/ICIpIiA6ICJ8JCkiKTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgcmVzdFswXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc3RbMV0gIT09IHZvaWQgMCA/ICJ8JCIgOiAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH18JHtTTEFTSF9MSVRFUkFMfSR7ZW5kfSlgOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSArIGFkdmFuY2UoKSk7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZTogIi8iLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9fCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdG9rZW4gPSB7IHR5cGU6ICJzdGFyIiwgdmFsdWUsIG91dHB1dDogc3RhciB9OwogICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUpIHsKICAgICAgICAgIHRva2VuLm91dHB1dCA9ICIuKj8iOwogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImJvcyIgfHwgcHJldi50eXBlID09PSAic2xhc2giKSB7CiAgICAgICAgICAgIHRva2VuLm91dHB1dCA9IG5vZG90ICsgdG9rZW4ub3V0cHV0OwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh0b2tlbik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIikgJiYgb3B0cy5yZWdleCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gdmFsdWU7CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0IHx8IHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gTk9fRE9UX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZG90ID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBub2RvdDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwZWVrKCkgIT09ICIqIikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE9ORV9DSEFSOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUuYnJhY2tldHMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJdIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiWyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUucGFyZW5zID4gMCkgewogICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiKSIpKTsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy5lc2NhcGVMYXN0KHN0YXRlLm91dHB1dCwgIigiKTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFjZXMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJ9IikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAieyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2VzIik7CiAgICAgIH0KICAgICAgaWYgKG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSAmJiAocHJldi50eXBlID09PSAic3RhciIgfHwgcHJldi50eXBlID09PSAiYnJhY2tldCIpKSB7CiAgICAgICAgcHVzaCh7IHR5cGU6ICJtYXliZV9zbGFzaCIsIHZhbHVlOiAiIiwgb3V0cHV0OiBgJHtTTEFTSF9MSVRFUkFMfT9gIH0pOwogICAgICB9CiAgICAgIGlmIChzdGF0ZS5iYWNrdHJhY2sgPT09IHRydWUpIHsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHN0YXRlLnRva2VucykgewogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgICBpZiAodG9rZW4uc3VmZml4KSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSB0b2tlbi5zdWZmaXg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBwYXJzZS5mYXN0cGF0aHMgPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IHsgLi4ub3B0aW9ucyB9OwogICAgICBjb25zdCBtYXggPSB0eXBlb2Ygb3B0cy5tYXhMZW5ndGggPT09ICJudW1iZXIiID8gTWF0aC5taW4oTUFYX0xFTkdUSCwgb3B0cy5tYXhMZW5ndGgpIDogTUFYX0xFTkdUSDsKICAgICAgY29uc3QgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBTTEFTSF9MSVRFUkFMLAogICAgICAgIE9ORV9DSEFSLAogICAgICAgIERPVFNfU0xBU0gsCiAgICAgICAgTk9fRE9ULAogICAgICAgIE5PX0RPVFMsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBTVEFSLAogICAgICAgIFNUQVJUX0FOQ0hPUgogICAgICB9ID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gTk9fRE9UUyA6IE5PX0RPVDsKICAgICAgY29uc3Qgc2xhc2hEb3QgPSBvcHRzLmRvdCA/IE5PX0RPVFNfU0xBU0ggOiBOT19ET1Q7CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IHN0YXRlID0geyBuZWdhdGVkOiBmYWxzZSwgcHJlZml4OiAiIiB9OwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/ICIuKj8iIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIGlmIChvcHRzMi5ub2dsb2JzdGFyID09PSB0cnVlKSByZXR1cm4gc3RhcjsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3QgY3JlYXRlID0gKHN0cjIpID0+IHsKICAgICAgICBzd2l0Y2ggKHN0cjIpIHsKICAgICAgICAgIGNhc2UgIioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIiovKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtub2RvdH0ke3N0YXJ9JHtTTEFTSF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzbGFzaERvdH0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqIjoKICAgICAgICAgICAgcmV0dXJuIG5vZG90ICsgZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBjYXNlICIqKi8qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke3N0YXJ9JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovLioiOgogICAgICAgICAgICByZXR1cm4gYCg/OiR7bm9kb3R9JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KT8ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBkZWZhdWx0OiB7CiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gL14oLio/KVwuKFx3KykkLy5leGVjKHN0cjIpOwogICAgICAgICAgICBpZiAoIW1hdGNoKSByZXR1cm47CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZTIgPSBjcmVhdGUobWF0Y2hbMV0pOwogICAgICAgICAgICBpZiAoIXNvdXJjZTIpIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTIgKyBET1RfTElURVJBTCArIG1hdGNoWzJdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgb3V0cHV0ID0gdXRpbHMucmVtb3ZlUHJlZml4KGlucHV0LCBzdGF0ZSk7CiAgICAgIGxldCBzb3VyY2UgPSBjcmVhdGUob3V0cHV0KTsKICAgICAgaWYgKHNvdXJjZSAmJiBvcHRzLnN0cmljdFNsYXNoZXMgIT09IHRydWUpIHsKICAgICAgICBzb3VyY2UgKz0gYCR7U0xBU0hfTElURVJBTH0/YDsKICAgICAgfQogICAgICByZXR1cm4gc291cmNlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBhcnNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BpY29tYXRjaC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdDIgPSAodmFsKSA9PiB2YWwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIHZhciBwaWNvbWF0Y2ggPSAoZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShnbG9iKSkgewogICAgICAgIGNvbnN0IGZucyA9IGdsb2IubWFwKChpbnB1dCkgPT4gcGljb21hdGNoKGlucHV0LCBvcHRpb25zLCByZXR1cm5TdGF0ZSkpOwogICAgICAgIGNvbnN0IGFycmF5TWF0Y2hlciA9IChzdHIyKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IGlzTWF0Y2ggb2YgZm5zKSB7CiAgICAgICAgICAgIGNvbnN0IHN0YXRlMiA9IGlzTWF0Y2goc3RyMik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdDIoZ2xvYikgJiYgZ2xvYi50b2tlbnMgJiYgZ2xvYi5pbnB1dDsKICAgICAgaWYgKGdsb2IgPT09ICIiIHx8IHR5cGVvZiBnbG9iICE9PSAic3RyaW5nIiAmJiAhaXNTdGF0ZSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHBhdHRlcm4gdG8gYmUgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHBvc2l4ID0gb3B0cy53aW5kb3dzOwogICAgICBjb25zdCByZWdleCA9IGlzU3RhdGUgPyBwaWNvbWF0Y2guY29tcGlsZVJlKGdsb2IsIG9wdGlvbnMpIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zLCBmYWxzZSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHN0YXRlID0gcmVnZXguc3RhdGU7CiAgICAgIGRlbGV0ZSByZWdleC5zdGF0ZTsKICAgICAgbGV0IGlzSWdub3JlZCA9ICgpID0+IGZhbHNlOwogICAgICBpZiAob3B0cy5pZ25vcmUpIHsKICAgICAgICBjb25zdCBpZ25vcmVPcHRzID0geyAuLi5vcHRpb25zLCBpZ25vcmU6IG51bGwsIG9uTWF0Y2g6IG51bGwsIG9uUmVzdWx0OiBudWxsIH07CiAgICAgICAgaXNJZ25vcmVkID0gcGljb21hdGNoKG9wdHMuaWdub3JlLCBpZ25vcmVPcHRzLCByZXR1cm5TdGF0ZSk7CiAgICAgIH0KICAgICAgY29uc3QgbWF0Y2hlciA9IChpbnB1dCwgcmV0dXJuT2JqZWN0ID0gZmFsc2UpID0+IHsKICAgICAgICBjb25zdCB7IGlzTWF0Y2gsIG1hdGNoLCBvdXRwdXQgfSA9IHBpY29tYXRjaC50ZXN0KGlucHV0LCByZWdleCwgb3B0aW9ucywgeyBnbG9iLCBwb3NpeCB9KTsKICAgICAgICBjb25zdCByZXN1bHQgPSB7IGdsb2IsIHN0YXRlLCByZWdleCwgcG9zaXgsIGlucHV0LCBvdXRwdXQsIG1hdGNoLCBpc01hdGNoIH07CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uUmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uUmVzdWx0KHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc01hdGNoID09PSBmYWxzZSkgewogICAgICAgICAgcmVzdWx0LmlzTWF0Y2ggPSBmYWxzZTsKICAgICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSWdub3JlZChpbnB1dCkpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbklnbm9yZSA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBvcHRzLm9uSWdub3JlKHJlc3VsdCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIG9wdHMub25NYXRjaCA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgb3B0cy5vbk1hdGNoKHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiB0cnVlOwogICAgICB9OwogICAgICBpZiAocmV0dXJuU3RhdGUpIHsKICAgICAgICBtYXRjaGVyLnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hdGNoZXI7CiAgICB9OwogICAgcGljb21hdGNoLnRlc3QgPSAoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0gPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGlucHV0IHRvIGJlIGEgc3RyaW5nIik7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ID09PSAiIikgewogICAgICAgIHJldHVybiB7IGlzTWF0Y2g6IGZhbHNlLCBvdXRwdXQ6ICIiIH07CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IChwb3NpeCA/IHV0aWxzLnRvUG9zaXhTbGFzaGVzIDogbnVsbCk7CiAgICAgIGxldCBtYXRjaCA9IGlucHV0ID09PSBnbG9iOwogICAgICBsZXQgb3V0cHV0ID0gbWF0Y2ggJiYgZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICBpZiAobWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgb3V0cHV0ID0gZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICAgIG1hdGNoID0gb3V0cHV0ID09PSBnbG9iOwogICAgICB9CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UgfHwgb3B0cy5jYXB0dXJlID09PSB0cnVlKSB7CiAgICAgICAgaWYgKG9wdHMubWF0Y2hCYXNlID09PSB0cnVlIHx8IG9wdHMuYmFzZW5hbWUgPT09IHRydWUpIHsKICAgICAgICAgIG1hdGNoID0gcGljb21hdGNoLm1hdGNoQmFzZShpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHBvc2l4KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWF0Y2ggPSByZWdleC5leGVjKG91dHB1dCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGlzTWF0Y2g6IEJvb2xlYW4obWF0Y2gpLCBtYXRjaCwgb3V0cHV0IH07CiAgICB9OwogICAgcGljb21hdGNoLm1hdGNoQmFzZSA9IChpbnB1dCwgZ2xvYiwgb3B0aW9ucykgPT4gewogICAgICBjb25zdCByZWdleCA9IGdsb2IgaW5zdGFuY2VvZiBSZWdFeHAgPyBnbG9iIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zKTsKICAgICAgcmV0dXJuIHJlZ2V4LnRlc3QodXRpbHMuYmFzZW5hbWUoaW5wdXQpKTsKICAgIH07CiAgICBwaWNvbWF0Y2guaXNNYXRjaCA9IChzdHIyLCBwYXR0ZXJucywgb3B0aW9ucykgPT4gcGljb21hdGNoKHBhdHRlcm5zLCBvcHRpb25zKShzdHIyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2gyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBwaWNvID0gcmVxdWlyZV9waWNvbWF0Y2goKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICBmdW5jdGlvbiBwaWNvbWF0Y2goZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgewogICAgICBpZiAob3B0aW9ucyAmJiAob3B0aW9ucy53aW5kb3dzID09PSBudWxsIHx8IG9wdGlvbnMud2luZG93cyA9PT0gdm9pZCAwKSkgewogICAgICAgIG9wdGlvbnMgPSB7IC4uLm9wdGlvbnMsIHdpbmRvd3M6IHV0aWxzLmlzV2luZG93cygpIH07CiAgICAgIH0KICAgICAgcmV0dXJuIHBpY28oZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUpOwogICAgfQogICAgT2JqZWN0LmFzc2lnbihwaWNvbWF0Y2gsIHBpY28pOwogICAgbW9kdWxlMi5leHBvcnRzID0gcGljb21hdGNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBpY29tYXRjaF8xID0gcmVxdWlyZV9waWNvbWF0Y2gyKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBQYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9wYXR0ZXJucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGFkZFBhdHRlcm4ocGF0dGVybiwgcmVwbGFjZW1lbnRGbikgewogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSA/IHBhdHRlcm4gOiBbcGF0dGVybl07CiAgICAgICAgZm9yIChjb25zdCBnbG9iIG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICBjb25zdCB7IG91dHB1dCB9ID0gKDAsIHBpY29tYXRjaF8xLnBhcnNlKShnbG9iKTsKICAgICAgICAgIHRoaXMuX3BhdHRlcm5zLnNldChuZXcgUmVnRXhwKGBeJHtvdXRwdXR9JGApLCByZXBsYWNlbWVudEZuKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBuZXdQYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9wYXR0ZXJucy5mb3JFYWNoKChmbiwgcmUpID0+IHsKICAgICAgICAgIGlmIChyZS50ZXN0KHBhdGgpKSB7CiAgICAgICAgICAgIG5ld1BhdGggPSBmbihuZXdQYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3UGF0aDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSBQYXR0ZXJuTWF0Y2hpbmdIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qcwp2YXIgcmVxdWlyZV9yZWNvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0MikgPT4gWy4uLnNldDJdKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gKDAsIHJ4anNfMS5vZikodHJ1ZSkgOiB0aGlzLndpbGxEZWxldGUocGF0aCkgfHwgdGhpcy53aWxsUmVuYW1lKHBhdGgpID8gKDAsIHJ4anNfMS5vZikoZmFsc2UpIDogdGhpcy5fYmFjay5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5pc0RpcmVjdG9yeShwYXRoKSA6IHRoaXMuX2JhY2suaXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNGaWxlKHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suaXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5zdGF0KHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKG51bGwpIDogdGhpcy5fYmFjay5zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIHdhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICB3aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbE92ZXJ3cml0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb1JlbmFtZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZVRvKHBhdGgsIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZ2V0KHBhdGgpID09PSB0bzsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gQ29yZEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcwp2YXIgcmVxdWlyZV9zYWZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2FmZVJlYWRvbmx5SG9zdCA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFNhZmVSZWFkb25seUhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShbXSkpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoZmFsc2UpKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNGaWxlKHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShmYWxzZSkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0cy4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0ICYmIG1heWJlU3RhdC5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikobnVsbCkpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNhZmVSZWFkb25seUhvc3QgPSBTYWZlUmVhZG9ubHlIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBTY29wZWRIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihkZWxlZ2F0ZSwgX3Jvb3QgPSBwYXRoXzEuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICBzdXBlcihkZWxlZ2F0ZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IF9yb290OwogICAgICB9CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5qb2luKSh0aGlzLl9yb290LCBwYXRoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSBTY29wZWRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzCnZhciByZXF1aXJlX2hvc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGVzdCA9IHZvaWQgMDsKICAgIHZhciB0ZXN0ID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdGVzdCgpKTsKICAgIGV4cG9ydHMyLnRlc3QgPSB0ZXN0OwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYWxpYXMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYnVmZmVyMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jcmVhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW1wdHkyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbWVtb3J5KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BhdHRlcm4yKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3JlY29yZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zYWZlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Njb3BlZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zeW5jKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Jlc29sdmVyKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMKdmFyIHJlcXVpcmVfdmlydHVhbF9mcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmlydHVhbEZzID0gdm9pZCAwOwogICAgdmFyIHZpcnR1YWxGcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2hvc3QoKSk7CiAgICBleHBvcnRzMi52aXJ0dWFsRnMgPSB2aXJ0dWFsRnM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXRoKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IGNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVdvcmtzcGFjZUhvc3QoaG9zdCkgewogICAgICBjb25zdCB3b3Jrc3BhY2VIb3N0ID0gewogICAgICAgIGFzeW5jIHJlYWRGaWxlKHBhdGgpIHsKICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QucmVhZCgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIHJldHVybiB2aXJ0dWFsX2ZzXzEudmlydHVhbEZzLmZpbGVCdWZmZXJUb1N0cmluZyhkYXRhKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoLCBkYXRhKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LndyaXRlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSwgdmlydHVhbF9mc18xLnZpcnR1YWxGcy5zdHJpbmdUb0ZpbGVCdWZmZXIoZGF0YSkpKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNEaXJlY3RvcnkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICB9IGNhdGNoIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNGaWxlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiB3b3Jrc3BhY2VIb3N0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcwp2YXIgcmVxdWlyZV9zY2FubmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zY2FubmVyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiBjcmVhdGVTY2FubmVyKHRleHQsIGlnbm9yZVRyaXZpYSA9IGZhbHNlKSB7CiAgICAgICAgY29uc3QgbGVuID0gdGV4dC5sZW5ndGg7CiAgICAgICAgbGV0IHBvcyA9IDAsIHZhbHVlID0gIiIsIHRva2VuT2Zmc2V0ID0gMCwgdG9rZW4gPSAxNiwgbGluZU51bWJlciA9IDAsIGxpbmVTdGFydE9mZnNldCA9IDAsIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgc2NhbkVycm9yID0gMDsKICAgICAgICBmdW5jdGlvbiBzY2FuSGV4RGlnaXRzKGNvdW50LCBleGFjdCkgewogICAgICAgICAgbGV0IGRpZ2l0cyA9IDA7CiAgICAgICAgICBsZXQgdmFsdWUyID0gMDsKICAgICAgICAgIHdoaWxlIChkaWdpdHMgPCBjb3VudCB8fCAhZXhhY3QpIHsKICAgICAgICAgICAgbGV0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA+PSA0OCAmJiBjaCA8PSA1NykgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA0ODsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA2NSAmJiBjaCA8PSA3MCkgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA2NSArIDEwOwogICAgICAgICAgICB9IGVsc2UgaWYgKGNoID49IDk3ICYmIGNoIDw9IDEwMikgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA5NyArIDEwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBkaWdpdHMrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChkaWdpdHMgPCBjb3VudCkgewogICAgICAgICAgICB2YWx1ZTIgPSAtMTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB2YWx1ZTI7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNldFBvc2l0aW9uKG5ld1Bvc2l0aW9uKSB7CiAgICAgICAgICBwb3MgPSBuZXdQb3NpdGlvbjsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IDA7CiAgICAgICAgICB0b2tlbiA9IDE2OwogICAgICAgICAgc2NhbkVycm9yID0gMDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk51bWJlcigpIHsKICAgICAgICAgIGxldCBzdGFydCA9IHBvczsKICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDgpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDYpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kID0gcG9zOwogICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNjkgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwMSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDMgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ1KSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgZW5kID0gcG9zOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgZW5kKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2NhblN0cmluZygpIHsKICAgICAgICAgIGxldCByZXN1bHQgPSAiIiwgc3RhcnQgPSBwb3M7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAyOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA9PT0gMzQpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNoID09PSA5MikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBjaDIgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKyspOwogICAgICAgICAgICAgIHN3aXRjaCAoY2gyKSB7CiAgICAgICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gJyInOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXFwiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiLyI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSA5ODoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcYiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMDI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGYiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTEwOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxuIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcciI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTY6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiCSI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTc6CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoMyA9IHNjYW5IZXhEaWdpdHMoNCwgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgIGlmIChjaDMgPj0gMCkgewogICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNoMyk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN0YXJ0ID0gcG9zOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA+PSAwICYmIGNoIDw9IDMxKSB7CiAgICAgICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNoKSkgewogICAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0KCkgewogICAgICAgICAgdmFsdWUgPSAiIjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IHBvczsKICAgICAgICAgIGxpbmVTdGFydE9mZnNldCA9IGxpbmVOdW1iZXI7CiAgICAgICAgICBwcmV2VG9rZW5MaW5lU3RhcnRPZmZzZXQgPSB0b2tlbkxpbmVTdGFydE9mZnNldDsKICAgICAgICAgIGlmIChwb3MgPj0gbGVuKSB7CiAgICAgICAgICAgIHRva2VuT2Zmc2V0ID0gbGVuOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNzsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpKSB7CiAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIGNvZGUgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgfSB3aGlsZSAoaXNXaGl0ZVNwYWNlKGNvZGUpKTsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgIGlmIChjb2RlID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXG4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE0OwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIC8vIHRva2VuczogW117fTosCiAgICAgICAgICAgIGNhc2UgMTIzOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDI7CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMzsKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA0OwogICAgICAgICAgICBjYXNlIDU4OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDY7CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNTsKICAgICAgICAgICAgLy8gc3RyaW5ncwogICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHZhbHVlID0gc2NhblN0cmluZygpOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEwOwogICAgICAgICAgICAvLyBjb21tZW50cwogICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gcG9zIC0gMTsKICAgICAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDIpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgY29uc3Qgc2FmZUxlbmd0aCA9IGxlbiAtIDE7CiAgICAgICAgICAgICAgICBsZXQgY29tbWVudENsb3NlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHNhZmVMZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgY2ggPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSA0MiAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQ3KSB7CiAgICAgICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICAgICAgY29tbWVudENsb3NlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoY2ggPT09IDEzICYmIHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMCkgewogICAgICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgICAgICAgICB0b2tlbkxpbmVTdGFydE9mZnNldCA9IHBvczsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjb21tZW50Q2xvc2VkKSB7CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEzOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAvLyBudW1iZXJzCiAgICAgICAgICAgIGNhc2UgNDU6CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID09PSBsZW4gfHwgIWlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGZvdW5kIGEgbWludXMsIGZvbGxvd2VkIGJ5IGEgbnVtYmVyIHNvCiAgICAgICAgICAgIC8vIHdlIGZhbGwgdGhyb3VnaCB0byBwcm9jZWVkIHdpdGggc2Nhbm5pbmcKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ4OgogICAgICAgICAgICBjYXNlIDQ5OgogICAgICAgICAgICBjYXNlIDUwOgogICAgICAgICAgICBjYXNlIDUxOgogICAgICAgICAgICBjYXNlIDUyOgogICAgICAgICAgICBjYXNlIDUzOgogICAgICAgICAgICBjYXNlIDU0OgogICAgICAgICAgICBjYXNlIDU1OgogICAgICAgICAgICBjYXNlIDU2OgogICAgICAgICAgICBjYXNlIDU3OgogICAgICAgICAgICAgIHZhbHVlICs9IHNjYW5OdW1iZXIoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMTsKICAgICAgICAgICAgLy8gbGl0ZXJhbHMgYW5kIHVua25vd24gc3ltYm9scwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBsZW4gJiYgaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0b2tlbk9mZnNldCAhPT0gcG9zKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHRva2VuT2Zmc2V0LCBwb3MpOwogICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZSkgewogICAgICAgICAgICAgICAgICBjYXNlICJ0cnVlIjoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA4OwogICAgICAgICAgICAgICAgICBjYXNlICJmYWxzZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gOTsKICAgICAgICAgICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc1Vua25vd25Db250ZW50Q2hhcmFjdGVyKGNvZGUpIHsKICAgICAgICAgIGlmIChpc1doaXRlU3BhY2UoY29kZSkgfHwgaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICBjYXNlIDkzOgogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgY2FzZSA5MToKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgY2FzZSA0NDoKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHROb25Ucml2aWEoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0OwogICAgICAgICAgZG8gewogICAgICAgICAgICByZXN1bHQgPSBzY2FuTmV4dCgpOwogICAgICAgICAgfSB3aGlsZSAocmVzdWx0ID49IDEyICYmIHJlc3VsdCA8PSAxNSk7CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgc2V0UG9zaXRpb24sCiAgICAgICAgICBnZXRQb3NpdGlvbjogKCkgPT4gcG9zLAogICAgICAgICAgc2NhbjogaWdub3JlVHJpdmlhID8gc2Nhbk5leHROb25Ucml2aWEgOiBzY2FuTmV4dCwKICAgICAgICAgIGdldFRva2VuOiAoKSA9PiB0b2tlbiwKICAgICAgICAgIGdldFRva2VuVmFsdWU6ICgpID0+IHZhbHVlLAogICAgICAgICAgZ2V0VG9rZW5PZmZzZXQ6ICgpID0+IHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5MZW5ndGg6ICgpID0+IHBvcyAtIHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5TdGFydExpbmU6ICgpID0+IGxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRDaGFyYWN0ZXI6ICgpID0+IHRva2VuT2Zmc2V0IC0gcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5FcnJvcjogKCkgPT4gc2NhbkVycm9yCiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gY3JlYXRlU2Nhbm5lcjsKICAgICAgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID09PSAzMiB8fCBjaCA9PT0gOTsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0xpbmVCcmVhayhjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMTAgfHwgY2ggPT09IDEzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRGlnaXQoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPj0gNDggJiYgY2ggPD0gNTc7CiAgICAgIH0KICAgICAgdmFyIENoYXJhY3RlckNvZGVzOwogICAgICAoZnVuY3Rpb24oQ2hhcmFjdGVyQ29kZXMyKSB7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibGluZUZlZWQiXSA9IDEwXSA9ICJsaW5lRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2FycmlhZ2VSZXR1cm4iXSA9IDEzXSA9ICJjYXJyaWFnZVJldHVybiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic3BhY2UiXSA9IDMyXSA9ICJzcGFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzAiXSA9IDQ4XSA9ICJfMCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzEiXSA9IDQ5XSA9ICJfMSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzIiXSA9IDUwXSA9ICJfMiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzMiXSA9IDUxXSA9ICJfMyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzQiXSA9IDUyXSA9ICJfNCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzUiXSA9IDUzXSA9ICJfNSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzYiXSA9IDU0XSA9ICJfNiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzciXSA9IDU1XSA9ICJfNyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzgiXSA9IDU2XSA9ICJfOCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzkiXSA9IDU3XSA9ICJfOSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYSJdID0gOTddID0gImEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImIiXSA9IDk4XSA9ICJiIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjIl0gPSA5OV0gPSAiYyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZCJdID0gMTAwXSA9ICJkIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJlIl0gPSAxMDFdID0gImUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImYiXSA9IDEwMl0gPSAiZiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZyJdID0gMTAzXSA9ICJnIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJoIl0gPSAxMDRdID0gImgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImkiXSA9IDEwNV0gPSAiaSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaiJdID0gMTA2XSA9ICJqIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJrIl0gPSAxMDddID0gImsiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImwiXSA9IDEwOF0gPSAibCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibSJdID0gMTA5XSA9ICJtIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJuIl0gPSAxMTBdID0gIm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm8iXSA9IDExMV0gPSAibyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicCJdID0gMTEyXSA9ICJwIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJxIl0gPSAxMTNdID0gInEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInIiXSA9IDExNF0gPSAiciI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicyJdID0gMTE1XSA9ICJzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ0Il0gPSAxMTZdID0gInQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInUiXSA9IDExN10gPSAidSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidiJdID0gMTE4XSA9ICJ2IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ3Il0gPSAxMTldID0gInciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIngiXSA9IDEyMF0gPSAieCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieSJdID0gMTIxXSA9ICJ5IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ6Il0gPSAxMjJdID0gInoiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkEiXSA9IDY1XSA9ICJBIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJCIl0gPSA2Nl0gPSAiQiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQyJdID0gNjddID0gIkMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkQiXSA9IDY4XSA9ICJEIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJFIl0gPSA2OV0gPSAiRSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRiJdID0gNzBdID0gIkYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkciXSA9IDcxXSA9ICJHIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJIIl0gPSA3Ml0gPSAiSCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSSJdID0gNzNdID0gIkkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkoiXSA9IDc0XSA9ICJKIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJLIl0gPSA3NV0gPSAiSyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTCJdID0gNzZdID0gIkwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk0iXSA9IDc3XSA9ICJNIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJOIl0gPSA3OF0gPSAiTiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTyJdID0gNzldID0gIk8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlAiXSA9IDgwXSA9ICJQIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJRIl0gPSA4MV0gPSAiUSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUiJdID0gODJdID0gIlIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlMiXSA9IDgzXSA9ICJTIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJUIl0gPSA4NF0gPSAiVCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVSJdID0gODVdID0gIlUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlYiXSA9IDg2XSA9ICJWIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJXIl0gPSA4N10gPSAiVyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWCJdID0gODhdID0gIlgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlkiXSA9IDg5XSA9ICJZIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJaIl0gPSA5MF0gPSAiWiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYXN0ZXJpc2siXSA9IDQyXSA9ICJhc3RlcmlzayI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYmFja3NsYXNoIl0gPSA5Ml0gPSAiYmFja3NsYXNoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNlIl0gPSAxMjVdID0gImNsb3NlQnJhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNsb3NlQnJhY2tldCJdID0gOTNdID0gImNsb3NlQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29sb24iXSA9IDU4XSA9ICJjb2xvbiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29tbWEiXSA9IDQ0XSA9ICJjb21tYSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG90Il0gPSA0Nl0gPSAiZG90IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJkb3VibGVRdW90ZSJdID0gMzRdID0gImRvdWJsZVF1b3RlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJtaW51cyJdID0gNDVdID0gIm1pbnVzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2UiXSA9IDEyM10gPSAib3BlbkJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2tldCJdID0gOTFdID0gIm9wZW5CcmFja2V0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJwbHVzIl0gPSA0M10gPSAicGx1cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic2xhc2giXSA9IDQ3XSA9ICJzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZm9ybUZlZWQiXSA9IDEyXSA9ICJmb3JtRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidGFiIl0gPSA5XSA9ICJ0YWIiOwogICAgICB9KShDaGFyYWN0ZXJDb2RlcyB8fCAoQ2hhcmFjdGVyQ29kZXMgPSB7fSkpOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzCnZhciByZXF1aXJlX3N0cmluZ19pbnRlcm4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3N0cmluZy1pbnRlcm4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLnN1cHBvcnRlZEVvbHMgPSBleHBvcnRzMy5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlcyA9IGV4cG9ydHMzLmNhY2hlZFNwYWNlcyA9IHZvaWQgMDsKICAgICAgZXhwb3J0czMuY2FjaGVkU3BhY2VzID0gbmV3IEFycmF5KDIwKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICByZXR1cm4gIiAiLnJlcGVhdChpbmRleCk7CiAgICAgIH0pOwogICAgICBjb25zdCBtYXhDYWNoZWRWYWx1ZXMgPSAyMDA7CiAgICAgIGV4cG9ydHMzLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzID0gewogICAgICAgICIgIjogewogICAgICAgICAgIlxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcciI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgIgkiOiB7CiAgICAgICAgICAiXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHIiICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcclxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pCiAgICAgICAgfQogICAgICB9OwogICAgICBleHBvcnRzMy5zdXBwb3J0ZWRFb2xzID0gWyJcbiIsICJcciIsICJcclxuIl07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgc2Nhbm5lcl8xID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgc3RyaW5nX2ludGVybl8xID0gcmVxdWlyZV9zdHJpbmdfaW50ZXJuKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL3NjYW5uZXIiLCAiLi9zdHJpbmctaW50ZXJuIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNFT0wgPSBleHBvcnRzMy5mb3JtYXQgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgbGV0IGluaXRpYWxJbmRlbnRMZXZlbDsKICAgICAgICBsZXQgZm9ybWF0VGV4dDsKICAgICAgICBsZXQgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgIGxldCByYW5nZVN0YXJ0OwogICAgICAgIGxldCByYW5nZUVuZDsKICAgICAgICBpZiAocmFuZ2UpIHsKICAgICAgICAgIHJhbmdlU3RhcnQgPSByYW5nZS5vZmZzZXQ7CiAgICAgICAgICByYW5nZUVuZCA9IHJhbmdlU3RhcnQgKyByYW5nZS5sZW5ndGg7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSByYW5nZVN0YXJ0OwogICAgICAgICAgd2hpbGUgKGZvcm1hdFRleHRTdGFydCA+IDAgJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZm9ybWF0VGV4dFN0YXJ0IC0gMSkpIHsKICAgICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0LS07CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kT2Zmc2V0ID0gcmFuZ2VFbmQ7CiAgICAgICAgICB3aGlsZSAoZW5kT2Zmc2V0IDwgZG9jdW1lbnRUZXh0Lmxlbmd0aCAmJiAhaXNFT0woZG9jdW1lbnRUZXh0LCBlbmRPZmZzZXQpKSB7CiAgICAgICAgICAgIGVuZE9mZnNldCsrOwogICAgICAgICAgfQogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoZm9ybWF0VGV4dFN0YXJ0LCBlbmRPZmZzZXQpOwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gY29tcHV0ZUluZGVudExldmVsKGZvcm1hdFRleHQsIG9wdGlvbnMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3JtYXRUZXh0ID0gZG9jdW1lbnRUZXh0OwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gMDsKICAgICAgICAgIGZvcm1hdFRleHRTdGFydCA9IDA7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gMDsKICAgICAgICAgIHJhbmdlRW5kID0gZG9jdW1lbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZW9sID0gZ2V0RU9MKG9wdGlvbnMsIGRvY3VtZW50VGV4dCk7CiAgICAgICAgY29uc3QgZW9sRmFzdFBhdGhTdXBwb3J0ZWQgPSBzdHJpbmdfaW50ZXJuXzEuc3VwcG9ydGVkRW9scy5pbmNsdWRlcyhlb2wpOwogICAgICAgIGxldCBudW1iZXJMaW5lQnJlYWtzID0gMDsKICAgICAgICBsZXQgaW5kZW50TGV2ZWwgPSAwOwogICAgICAgIGxldCBpbmRlbnRWYWx1ZTsKICAgICAgICBpZiAob3B0aW9ucy5pbnNlcnRTcGFjZXMpIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tvcHRpb25zLnRhYlNpemUgfHwgNF0gPz8gcmVwZWF0MihzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdLCBvcHRpb25zLnRhYlNpemUgfHwgNCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gIgkiOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRlbnRUeXBlID0gaW5kZW50VmFsdWUgPT09ICIJIiA/ICIJIiA6ICIgIjsKICAgICAgICBsZXQgc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikoZm9ybWF0VGV4dCwgZmFsc2UpOwogICAgICAgIGxldCBoYXNFcnJvciA9IGZhbHNlOwogICAgICAgIGZ1bmN0aW9uIG5ld0xpbmVzQW5kSW5kZW50KCkgewogICAgICAgICAgaWYgKG51bWJlckxpbmVCcmVha3MgPiAxKSB7CiAgICAgICAgICAgIHJldHVybiByZXBlYXQyKGVvbCwgbnVtYmVyTGluZUJyZWFrcykgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBhbW91bnRPZlNwYWNlcyA9IGluZGVudFZhbHVlLmxlbmd0aCAqIChpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICBpZiAoIWVvbEZhc3RQYXRoU3VwcG9ydGVkIHx8IGFtb3VudE9mU3BhY2VzID4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF0ubGVuZ3RoKSB7CiAgICAgICAgICAgIHJldHVybiBlb2wgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYW1vdW50T2ZTcGFjZXMgPD0gMCkgewogICAgICAgICAgICByZXR1cm4gZW9sOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdW2Ftb3VudE9mU3BhY2VzXTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICBsZXQgdG9rZW4gPSBzY2FubmVyLnNjYW4oKTsKICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAwOwogICAgICAgICAgd2hpbGUgKHRva2VuID09PSAxNSB8fCB0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgaWYgKHRva2VuID09PSAxNCAmJiBvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgKz0gMTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgICBudW1iZXJMaW5lQnJlYWtzID0gMTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgfQogICAgICAgICAgaGFzRXJyb3IgPSB0b2tlbiA9PT0gMTYgfHwgc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkgIT09IDA7CiAgICAgICAgICByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRPcGVyYXRpb25zID0gW107CiAgICAgICAgZnVuY3Rpb24gYWRkRWRpdCh0ZXh0LCBzdGFydE9mZnNldCwgZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yICYmICghcmFuZ2UgfHwgc3RhcnRPZmZzZXQgPCByYW5nZUVuZCAmJiBlbmRPZmZzZXQgPiByYW5nZVN0YXJ0KSAmJiBkb2N1bWVudFRleHQuc3Vic3RyaW5nKHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpICE9PSB0ZXh0KSB7CiAgICAgICAgICAgIGVkaXRPcGVyYXRpb25zLnB1c2goewogICAgICAgICAgICAgIG9mZnNldDogc3RhcnRPZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoOiBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBsZXQgZmlyc3RUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICBhZGRFZGl0KHJlcGVhdDIoZW9sLCBudW1iZXJMaW5lQnJlYWtzKSwgMCwgMCk7CiAgICAgICAgfQogICAgICAgIGlmIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGxldCBpbml0aWFsSW5kZW50ID0gaW5kZW50VmFsdWUubGVuZ3RoICogaW5pdGlhbEluZGVudExldmVsIDwgMjAgJiYgb3B0aW9ucy5pbnNlcnRTcGFjZXMgPyBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzW2luZGVudFZhbHVlLmxlbmd0aCAqIGluaXRpYWxJbmRlbnRMZXZlbF0gOiByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwpOwogICAgICAgICAgYWRkRWRpdChpbml0aWFsSW5kZW50LCBmb3JtYXRUZXh0U3RhcnQsIGZpcnN0VG9rZW5TdGFydCk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IHJlcGxhY2VDb250ZW50ID0gIiI7CiAgICAgICAgICBsZXQgbmVlZHNMaW5lQnJlYWsgPSBmYWxzZTsKICAgICAgICAgIHdoaWxlIChudW1iZXJMaW5lQnJlYWtzID09PSAwICYmIChzZWNvbmRUb2tlbiA9PT0gMTIgfHwgc2Vjb25kVG9rZW4gPT09IDEzKSkgewogICAgICAgICAgICBsZXQgY29tbWVudFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIGFkZEVkaXQoCiAgICAgICAgICAgICAgc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXSwKICAgICAgICAgICAgICBmaXJzdFRva2VuRW5kLAogICAgICAgICAgICAgIGNvbW1lbnRUb2tlblN0YXJ0CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIG5lZWRzTGluZUJyZWFrID0gc2Vjb25kVG9rZW4gPT09IDEyOwogICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5lZWRzTGluZUJyZWFrID8gbmV3TGluZXNBbmRJbmRlbnQoKSA6ICIiOwogICAgICAgICAgICBzZWNvbmRUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDIpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMSkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNCkgewogICAgICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIGluZGVudExldmVsLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcyAmJiBmaXJzdFRva2VuICE9PSAzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzd2l0Y2ggKGZpcnN0VG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgaW5kZW50TGV2ZWwrKzsKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuID09PSA2ICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlmICgoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykgJiYgIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuICE9PSA1ICYmIHNlY29uZFRva2VuICE9PSAxNykgewogICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzZWNvbmRUb2tlbiA9PT0gMTcpIHsKICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gb3B0aW9ucy5pbnNlcnRGaW5hbE5ld2xpbmUgPyBlb2wgOiAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2Vjb25kVG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGFkZEVkaXQocmVwbGFjZUNvbnRlbnQsIGZpcnN0VG9rZW5FbmQsIHNlY29uZFRva2VuU3RhcnQpOwogICAgICAgICAgZmlyc3RUb2tlbiA9IHNlY29uZFRva2VuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZWRpdE9wZXJhdGlvbnM7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiByZXBlYXQyKHMsIGNvdW50KSB7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykgewogICAgICAgICAgcmVzdWx0ICs9IHM7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY29tcHV0ZUluZGVudExldmVsKGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgbGV0IG5DaGFycyA9IDA7CiAgICAgICAgY29uc3QgdGFiU2l6ZSA9IG9wdGlvbnMudGFiU2l6ZSB8fCA0OwogICAgICAgIHdoaWxlIChpIDwgY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGxldCBjaCA9IGNvbnRlbnQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdKSB7CiAgICAgICAgICAgIG5DaGFycysrOwogICAgICAgICAgfSBlbHNlIGlmIChjaCA9PT0gIgkiKSB7CiAgICAgICAgICAgIG5DaGFycyArPSB0YWJTaXplOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBNYXRoLmZsb29yKG5DaGFycyAvIHRhYlNpemUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdldEVPTChvcHRpb25zLCB0ZXh0KSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSAiXHIiKSB7CiAgICAgICAgICAgIGlmIChpICsgMSA8IHRleHQubGVuZ3RoICYmIHRleHQuY2hhckF0KGkgKyAxKSA9PT0gIlxuIikgewogICAgICAgICAgICAgIHJldHVybiAiXHJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJcciI7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiXG4iKSB7CiAgICAgICAgICAgIHJldHVybiAiXG4iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3B0aW9ucyAmJiBvcHRpb25zLmVvbCB8fCAiXG4iOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRU9MKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNFT0wgPSBpc0VPTDsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzCnZhciByZXF1aXJlX3BhcnNlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlMikgewogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5vZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lmxlbmd0aCA9IGxlbmd0aDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QudHlwZSA9IHR5cGUyOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5jb2xvbk9mZnNldCA9IHZvaWQgMDsKICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHByZXZpb3VzTm9kZUluc3Q7CiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICB2aXNpdCh0ZXh0LCB7CiAgICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gcG9zaXRpb24gPiBvZmZzZXQ7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgiIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZShuYW1lLCBvZmZzZXQsIGxlbmd0aCwgInByb3BlcnR5Iik7CiAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBuYW1lOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucG9wKCk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wdXNoKDApOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogKHZhbHVlLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZSh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgsIGdldE5vZGVUeXBlKHZhbHVlKSk7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCArIGxlbmd0aCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBvblNlcGFyYXRvcjogKHNlcCwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiICYmIHByZXZpb3VzTm9kZSAmJiBwcmV2aW91c05vZGUudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlLmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBsYXN0ID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXSA9IGxhc3QgKyAxOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSAiIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlICE9PSBlYXJseVJldHVybkV4Y2VwdGlvbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgcGF0aDogc2VnbWVudHMsCiAgICAgICAgICBwcmV2aW91c05vZGUsCiAgICAgICAgICBpc0F0UHJvcGVydHlLZXksCiAgICAgICAgICBtYXRjaGVzOiAocGF0dGVybikgPT4gewogICAgICAgICAgICBsZXQgayA9IDA7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBrIDwgcGF0dGVybi5sZW5ndGggJiYgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgaWYgKHBhdHRlcm5ba10gPT09IHNlZ21lbnRzW2ldIHx8IHBhdHRlcm5ba10gPT09ICIqIikgewogICAgICAgICAgICAgICAgaysrOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocGF0dGVybltrXSAhPT0gIioqIikgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gayA9PT0gcGF0dGVybi5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IGdldExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBwYXJzZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSBbXTsKICAgICAgICBjb25zdCBwcmV2aW91c1BhcmVudHMgPSBbXTsKICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlKSB7CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyZW50UGFyZW50KSkgewogICAgICAgICAgICBjdXJyZW50UGFyZW50LnB1c2godmFsdWUpOwogICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50UHJvcGVydHkgIT09IG51bGwpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudFtjdXJyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZpc2l0b3IgPSB7CiAgICAgICAgICBvbk9iamVjdEJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IG9iamVjdCA9IHt9OwogICAgICAgICAgICBvblZhbHVlKG9iamVjdCk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb2JqZWN0OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG5hbWU7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5QmVnaW46ICgpID0+IHsKICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBbXTsKICAgICAgICAgICAgb25WYWx1ZShhcnJheSk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gYXJyYXk7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gcHJldmlvdXNQYXJlbnRzLnBvcCgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiBvblZhbHVlLAogICAgICAgICAgb25FcnJvcjogKGVycm9yLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlcnJvcnMucHVzaCh7IGVycm9yLCBvZmZzZXQsIGxlbmd0aCB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZpc2l0KHRleHQsIHZpc2l0b3IsIG9wdGlvbnMpOwogICAgICAgIHJldHVybiBjdXJyZW50UGFyZW50WzBdOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlID0gcGFyc2U7CiAgICAgIGZ1bmN0aW9uIHBhcnNlVHJlZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgb2Zmc2V0OiAtMSwKICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICBjaGlsZHJlbjogW10sCiAgICAgICAgICBwYXJlbnQ6IHZvaWQgMAogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW5zdXJlUHJvcGVydHlDb21wbGV0ZShlbmRPZmZzZXQpIHsKICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBlbmRPZmZzZXQgLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlTm9kZSkgewogICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHZhbHVlTm9kZSk7CiAgICAgICAgICByZXR1cm4gdmFsdWVOb2RlOwogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKG9mZnNldCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJwcm9wZXJ0eSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgICAgICB2YWx1ZTogbmFtZSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdEVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0ICsgbGVuZ3RoKTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogZ2V0Tm9kZVR5cGUodmFsdWUpLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGgsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICBpZiAoc2VwID09PSAiOiIpIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY29sb25PZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICBjb25zdCByZXN1bHQgPSBjdXJyZW50UGFyZW50LmNoaWxkcmVuWzBdOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIGRlbGV0ZSByZXN1bHQucGFyZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlVHJlZTsKICAgICAgZnVuY3Rpb24gZmluZE5vZGVBdExvY2F0aW9uKHJvb3QsIHBhdGgpIHsKICAgICAgICBpZiAoIXJvb3QpIHsKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGxldCBub2RlID0gcm9vdDsKICAgICAgICBmb3IgKGxldCBzZWdtZW50IG9mIHBhdGgpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygc2VnbWVudCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gIm9iamVjdCIgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5Tm9kZSBvZiBub2RlLmNoaWxkcmVuKSB7CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlOb2RlLmNoaWxkcmVuKSAmJiBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMF0udmFsdWUgPT09IHNlZ21lbnQgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMikgewogICAgICAgICAgICAgICAgbm9kZSA9IHByb3BlcnR5Tm9kZS5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIWZvdW5kKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBzZWdtZW50OwogICAgICAgICAgICBpZiAobm9kZS50eXBlICE9PSAiYXJyYXkiIHx8IGluZGV4IDwgMCB8fCAhQXJyYXkuaXNBcnJheShub2RlLmNoaWxkcmVuKSB8fCBpbmRleCA+PSBub2RlLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbm9kZSA9IG5vZGUuY2hpbGRyZW5baW5kZXhdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBmaW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVQYXRoKG5vZGUpIHsKICAgICAgICBpZiAoIW5vZGUucGFyZW50IHx8ICFub2RlLnBhcmVudC5jaGlsZHJlbikgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoID0gZ2V0Tm9kZVBhdGgobm9kZS5wYXJlbnQpOwogICAgICAgIGlmIChub2RlLnBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICBjb25zdCBrZXkgPSBub2RlLnBhcmVudC5jaGlsZHJlblswXS52YWx1ZTsKICAgICAgICAgIHBhdGgucHVzaChrZXkpOwogICAgICAgIH0gZWxzZSBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gImFycmF5IikgewogICAgICAgICAgY29uc3QgaW5kZXggPSBub2RlLnBhcmVudC5jaGlsZHJlbi5pbmRleE9mKG5vZGUpOwogICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBwYXRoLnB1c2goaW5kZXgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcGF0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGdldE5vZGVQYXRoOwogICAgICBmdW5jdGlvbiBnZXROb2RlVmFsdWUobm9kZSkgewogICAgICAgIHN3aXRjaCAobm9kZS50eXBlKSB7CiAgICAgICAgICBjYXNlICJhcnJheSI6CiAgICAgICAgICAgIHJldHVybiBub2RlLmNoaWxkcmVuLm1hcChnZXROb2RlVmFsdWUpOwogICAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgICAgY29uc3Qgb2JqID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICAgIGZvciAobGV0IHByb3Agb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHByb3AuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgaWYgKHZhbHVlTm9kZSkgewogICAgICAgICAgICAgICAgb2JqW3Byb3AuY2hpbGRyZW5bMF0udmFsdWVdID0gZ2V0Tm9kZVZhbHVlKHZhbHVlTm9kZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBvYmo7CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiBub2RlLnZhbHVlOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVZhbHVlID0gZ2V0Tm9kZVZhbHVlOwogICAgICBmdW5jdGlvbiBjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kID0gZmFsc2UpIHsKICAgICAgICByZXR1cm4gb2Zmc2V0ID49IG5vZGUub2Zmc2V0ICYmIG9mZnNldCA8IG5vZGUub2Zmc2V0ICsgbm9kZS5sZW5ndGggfHwgaW5jbHVkZVJpZ2h0Qm91bmQgJiYgb2Zmc2V0ID09PSBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmNvbnRhaW5zID0gY29udGFpbnM7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRPZmZzZXQobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgaWYgKGNvbnRhaW5zKG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpKSB7CiAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUuY2hpbGRyZW47CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGggJiYgY2hpbGRyZW5baV0ub2Zmc2V0IDw9IG9mZnNldDsgaSsrKSB7CiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IGZpbmROb2RlQXRPZmZzZXQoY2hpbGRyZW5baV0sIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpOwogICAgICAgICAgICAgIGlmIChpdGVtKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBub2RlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBmaW5kTm9kZUF0T2Zmc2V0OwogICAgICBmdW5jdGlvbiB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zID0gUGFyc2VPcHRpb25zLkRFRkFVTFQpIHsKICAgICAgICBjb25zdCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCwgZmFsc2UpOwogICAgICAgIGNvbnN0IF9qc29uUGF0aCA9IFtdOwogICAgICAgIGxldCBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMDsKICAgICAgICBmdW5jdGlvbiB0b05vQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoYXJnKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIGFyZywKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0JlZ2luVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MrKzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBsZXQgY2JSZXR1cm4gPSB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpLAogICAgICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIGlmIChjYlJldHVybiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MgPSAxOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvRW5kVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCkgewogICAgICAgICAgICAgIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgb25PYmplY3RCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uT2JqZWN0QmVnaW4pLCBvbk9iamVjdFByb3BlcnR5ID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25PYmplY3RQcm9wZXJ0eSksIG9uT2JqZWN0RW5kID0gdG9FbmRWaXNpdCh2aXNpdG9yLm9uT2JqZWN0RW5kKSwgb25BcnJheUJlZ2luID0gdG9CZWdpblZpc2l0KHZpc2l0b3Iub25BcnJheUJlZ2luKSwgb25BcnJheUVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbkFycmF5RW5kKSwgb25MaXRlcmFsVmFsdWUgPSB0b09uZUFyZ1Zpc2l0V2l0aFBhdGgodmlzaXRvci5vbkxpdGVyYWxWYWx1ZSksIG9uU2VwYXJhdG9yID0gdG9PbmVBcmdWaXNpdCh2aXNpdG9yLm9uU2VwYXJhdG9yKSwgb25Db21tZW50ID0gdG9Ob0FyZ1Zpc2l0KHZpc2l0b3Iub25Db21tZW50KSwgb25FcnJvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vbkVycm9yKTsKICAgICAgICBjb25zdCBkaXNhbGxvd0NvbW1lbnRzID0gb3B0aW9ucyAmJiBvcHRpb25zLmRpc2FsbG93Q29tbWVudHM7CiAgICAgICAgY29uc3QgYWxsb3dUcmFpbGluZ0NvbW1hID0gb3B0aW9ucyAmJiBvcHRpb25zLmFsbG93VHJhaWxpbmdDb21tYTsKICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gX3NjYW5uZXIuc2NhbigpOwogICAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuRXJyb3IoKSkgewogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNAogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkVW5pY29kZSAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkRXNjYXBlQ2hhcmFjdGVyICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDEzCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZk51bWJlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgIGlmICghZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMQogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQgKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZTdHJpbmcgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTYKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZENoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN3aXRjaCAodG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICBpZiAoZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMAogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDb21tZW50VG9rZW4gKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRTeW1ib2wgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE1OgogICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBza2lwVW50aWxBZnRlciA9IFtdLCBza2lwVW50aWwgPSBbXSkgewogICAgICAgICAgb25FcnJvcihlcnJvcik7CiAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIubGVuZ3RoICsgc2tpcFVudGlsLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGV0IHRva2VuID0gX3NjYW5uZXIuZ2V0VG9rZW4oKTsKICAgICAgICAgICAgd2hpbGUgKHRva2VuICE9PSAxNykgewogICAgICAgICAgICAgIGlmIChza2lwVW50aWxBZnRlci5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNraXBVbnRpbC5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0b2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VTdHJpbmcoaXNWYWx1ZSkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBfc2Nhbm5lci5nZXRUb2tlblZhbHVlKCk7CiAgICAgICAgICBpZiAoaXNWYWx1ZSkgewogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5KHZhbHVlKTsKICAgICAgICAgICAgX2pzb25QYXRoLnB1c2godmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUxpdGVyYWwoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjb25zdCB0b2tlblZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE51bWJlcih0b2tlblZhbHVlKTsKICAgICAgICAgICAgICBpZiAoaXNOYU4odmFsdWUpKSB7CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkTnVtYmVyRm9ybWF0ICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgdmFsdWUgPSAwOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZShudWxsKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKHRydWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUoZmFsc2UpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VQcm9wZXJ0eSgpIHsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxMCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAzLAogICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNvbW1hVG9rZW4gKi8KICAgICAgICAgICAgICBdCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcnNlU3RyaW5nKGZhbHNlKTsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA2KSB7CiAgICAgICAgICAgIG9uU2VwYXJhdG9yKCI6Iik7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNSwKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlT2JqZWN0KCkgewogICAgICAgICAgb25PYmplY3RCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMiAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAyICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VQcm9wZXJ0eSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uT2JqZWN0RW5kKCk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMikgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA3LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFjZVRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUFycmF5KCkgewogICAgICAgICAgb25BcnJheUJlZ2luKCk7CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IGlzRmlyc3RFbGVtZW50ID0gdHJ1ZTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA0ICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKDApOwogICAgICAgICAgICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2U7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX2pzb25QYXRoW19qc29uUGF0aC5sZW5ndGggLSAxXSsrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDQsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5lZWRzQ29tbWEgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgb25BcnJheUVuZCgpOwogICAgICAgICAgaWYgKCFpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICBfanNvblBhdGgucG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA4LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDQKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFja2V0VG9rZW4gKi8KICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgIFtdCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlVmFsdWUoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUFycmF5KCk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VPYmplY3QoKTsKICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VTdHJpbmcodHJ1ZSk7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlTGl0ZXJhbCgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAxNykgewogICAgICAgICAgaWYgKG9wdGlvbnMuYWxsb3dFbXB0eUNvbnRlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBoYW5kbGVFcnJvcig0LCBbXSwgW10pOwogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDE3KSB7CiAgICAgICAgICBoYW5kbGVFcnJvcig5LCBbXSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBleHBvcnRzMy52aXNpdCA9IHZpc2l0OwogICAgICBmdW5jdGlvbiBzdHJpcENvbW1lbnRzKHRleHQsIHJlcGxhY2VDaCkgewogICAgICAgIGxldCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCksIHBhcnRzID0gW10sIGtpbmQsIG9mZnNldCA9IDAsIHBvczsKICAgICAgICBkbyB7CiAgICAgICAgICBwb3MgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAga2luZCA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgIHN3aXRjaCAoa2luZCkgewogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICBjYXNlIDE3OgogICAgICAgICAgICAgIGlmIChvZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgcGFydHMucHVzaCh0ZXh0LnN1YnN0cmluZyhvZmZzZXQsIHBvcykpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAocmVwbGFjZUNoICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2goX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpLnJlcGxhY2UoL1teXHJcbl0vZywgcmVwbGFjZUNoKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9mZnNldCA9IF9zY2FubmVyLmdldFBvc2l0aW9uKCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoa2luZCAhPT0gMTcpOwogICAgICAgIHJldHVybiBwYXJ0cy5qb2luKCIiKTsKICAgICAgfQogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gc3RyaXBDb21tZW50czsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVR5cGUodmFsdWUpIHsKICAgICAgICBzd2l0Y2ggKHR5cGVvZiB2YWx1ZSkgewogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICByZXR1cm4gIm51bWJlciI7CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICByZXR1cm4gInN0cmluZyI7CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGlmICghdmFsdWUpIHsKICAgICAgICAgICAgICByZXR1cm4gIm51bGwiOwogICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJvYmplY3QiOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBnZXROb2RlVHlwZTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcwp2YXIgcmVxdWlyZV9lZGl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9lZGl0LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgcGFyc2VyXzEgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9mb3JtYXQiLCAiLi9wYXJzZXIiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5pc1dTID0gZXhwb3J0czMuYXBwbHlFZGl0ID0gZXhwb3J0czMuc2V0UHJvcGVydHkgPSBleHBvcnRzMy5yZW1vdmVQcm9wZXJ0eSA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gcmVtb3ZlUHJvcGVydHkodGV4dCwgcGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBzZXRQcm9wZXJ0eSh0ZXh0LCBwYXRoLCB2b2lkIDAsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnJlbW92ZVByb3BlcnR5ID0gcmVtb3ZlUHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHNldFByb3BlcnR5KHRleHQsIG9yaWdpbmFsUGF0aCwgdmFsdWUsIG9wdGlvbnMpIHsKICAgICAgICBjb25zdCBwYXRoID0gb3JpZ2luYWxQYXRoLnNsaWNlKCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCBwYXJzZXJfMS5wYXJzZVRyZWUpKHRleHQsIGVycm9ycyk7CiAgICAgICAgbGV0IHBhcmVudCA9IHZvaWQgMDsKICAgICAgICBsZXQgbGFzdFNlZ21lbnQgPSB2b2lkIDA7CiAgICAgICAgd2hpbGUgKHBhdGgubGVuZ3RoID4gMCkgewogICAgICAgICAgbGFzdFNlZ21lbnQgPSBwYXRoLnBvcCgpOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocm9vdCwgcGF0aCk7CiAgICAgICAgICBpZiAocGFyZW50ID09PSB2b2lkIDAgJiYgdmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodHlwZW9mIGxhc3RTZWdtZW50ID09PSAic3RyaW5nIikgewogICAgICAgICAgICAgIHZhbHVlID0geyBbbGFzdFNlZ21lbnRdOiB2YWx1ZSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghcGFyZW50KSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNhbiBub3QgZGVsZXRlIGluIGVtcHR5IGRvY3VtZW50Iik7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBvZmZzZXQ6IHJvb3QgPyByb290Lm9mZnNldCA6IDAsCiAgICAgICAgICAgICAgbGVuZ3RoOiByb290ID8gcm9vdC5sZW5ndGggOiAwLAogICAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHZhbHVlKQogICAgICAgICAgICB9LAogICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICApOwogICAgICAgIH0gZWxzZSBpZiAocGFyZW50LnR5cGUgPT09ICJvYmplY3QiICYmIHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gInN0cmluZyIgJiYgQXJyYXkuaXNBcnJheShwYXJlbnQuY2hpbGRyZW4pKSB7CiAgICAgICAgICBjb25zdCBleGlzdGluZyA9ICgwLCBwYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHBhcmVudCwgW2xhc3RTZWdtZW50XSk7CiAgICAgICAgICBpZiAoZXhpc3RpbmcgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGlmICghZXhpc3RpbmcucGFyZW50KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk1hbGZvcm1lZCBBU1QiKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleCA9IHBhcmVudC5jaGlsZHJlbi5pbmRleE9mKGV4aXN0aW5nLnBhcmVudCk7CiAgICAgICAgICAgICAgbGV0IHJlbW92ZUJlZ2luOwogICAgICAgICAgICAgIGxldCByZW1vdmVFbmQgPSBleGlzdGluZy5wYXJlbnQub2Zmc2V0ICsgZXhpc3RpbmcucGFyZW50Lmxlbmd0aDsKICAgICAgICAgICAgICBpZiAocHJvcGVydHlJbmRleCA+IDApIHsKICAgICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltwcm9wZXJ0eUluZGV4IC0gMV07CiAgICAgICAgICAgICAgICByZW1vdmVCZWdpbiA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmVtb3ZlQmVnaW4gPSBwYXJlbnQub2Zmc2V0ICsgMTsKICAgICAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gMSkgewogICAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHBhcmVudC5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgICAgcmVtb3ZlRW5kID0gbmV4dC5vZmZzZXQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG9mZnNldDogcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogcmVtb3ZlRW5kIC0gcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBleGlzdGluZy5vZmZzZXQsCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogZXhpc3RpbmcubGVuZ3RoLAogICAgICAgICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeShsYXN0U2VnbWVudCl9OiAke0pTT04uc3RyaW5naWZ5KAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICl9YDsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBvcHRpb25zLmdldEluc2VydGlvbkluZGV4ID8gb3B0aW9ucy5nZXRJbnNlcnRpb25JbmRleCgKICAgICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4ubWFwKChwKSA9PiBwLmNoaWxkcmVuWzBdLnZhbHVlKQogICAgICAgICAgICApIDogcGFyZW50LmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChpbmRleCA+IDApIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5baW5kZXggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsIGxlbmd0aDogMCwgY29udGVudDogbmV3UHJvcGVydHkgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQudHlwZSA9PT0gImFycmF5IiAmJiB0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJudW1iZXIiICYmIEFycmF5LmlzQXJyYXkocGFyZW50LmNoaWxkcmVuKSkgewogICAgICAgICAgY29uc3QgaW5zZXJ0SW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgIGlmIChpbnNlcnRJbmRleCA9PT0gLTEpIHsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwgbGVuZ3RoOiAwLCBjb250ZW50OiBuZXdQcm9wZXJ0eSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3BhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gdm9pZCAwICYmIHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPj0gMCkgewogICAgICAgICAgICBjb25zdCByZW1vdmFsSW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgICAgY29uc3QgdG9SZW1vdmUgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4XTsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHBhcmVudC5sZW5ndGggLSAyLAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxID09PSByZW1vdmFsSW5kZXgpIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4IC0gMV07CiAgICAgICAgICAgICAgbGV0IG9mZnNldCA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICBsZXQgcGFyZW50RW5kT2Zmc2V0ID0gcGFyZW50Lm9mZnNldCArIHBhcmVudC5sZW5ndGg7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0LCBsZW5ndGg6IHBhcmVudEVuZE9mZnNldCAtIDIgLSBvZmZzZXQsIGNvbnRlbnQ6ICIiIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgbGVuZ3RoOiBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4ICsgMV0ub2Zmc2V0IC0gdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgaWYgKCFvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gJiYgcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+IGxhc3RTZWdtZW50KSB7CiAgICAgICAgICAgICAgY29uc3QgdG9Nb2RpZnkgPSBwYXJlbnQuY2hpbGRyZW5bbGFzdFNlZ21lbnRdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvTW9kaWZ5Lm9mZnNldCwKICAgICAgICAgICAgICAgIGxlbmd0aDogdG9Nb2RpZnkubGVuZ3RoLAogICAgICAgICAgICAgICAgY29udGVudDogbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgbGFzdFNlZ21lbnQgPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgPyBuZXdQcm9wZXJ0eSA6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGxhc3RTZWdtZW50ID4gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA/IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggOiBsYXN0U2VnbWVudDsKICAgICAgICAgICAgICBjb25zdCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltpbmRleCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYENhbiBub3QgJHt2YWx1ZSA9PT0gdm9pZCAwID8gInJlbW92ZSIgOiBvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gPyAiaW5zZXJ0IiA6ICJtb2RpZnkifSBBcnJheSBpbmRleCAke2luc2VydEluZGV4fSBhcyBsZW5ndGggaXMgbm90IHN1ZmZpY2llbnRgCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbiBub3QgYWRkICR7dHlwZW9mIGxhc3RTZWdtZW50ICE9PSAibnVtYmVyIiA/ICJpbmRleCIgOiAicHJvcGVydHkifSB0byBwYXJlbnQgb2YgdHlwZSAke3BhcmVudC50eXBlfWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLnNldFByb3BlcnR5ID0gc2V0UHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpIHsKICAgICAgICBpZiAoIW9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMpIHsKICAgICAgICAgIHJldHVybiBbZWRpdF07CiAgICAgICAgfQogICAgICAgIGxldCBuZXdUZXh0ID0gYXBwbHlFZGl0KHRleHQsIGVkaXQpOwogICAgICAgIGxldCBiZWdpbiA9IGVkaXQub2Zmc2V0OwogICAgICAgIGxldCBlbmQgPSBlZGl0Lm9mZnNldCArIGVkaXQuY29udGVudC5sZW5ndGg7CiAgICAgICAgaWYgKGVkaXQubGVuZ3RoID09PSAwIHx8IGVkaXQuY29udGVudC5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHdoaWxlIChiZWdpbiA+IDAgJiYgISgwLCBmb3JtYXRfMS5pc0VPTCkobmV3VGV4dCwgYmVnaW4gLSAxKSkgewogICAgICAgICAgICBiZWdpbi0tOwogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGVuZCA8IG5ld1RleHQubGVuZ3RoICYmICEoMCwgZm9ybWF0XzEuaXNFT0wpKG5ld1RleHQsIGVuZCkpIHsKICAgICAgICAgICAgZW5kKys7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRzID0gKDAsIGZvcm1hdF8xLmZvcm1hdCkoCiAgICAgICAgICBuZXdUZXh0LAogICAgICAgICAgeyBvZmZzZXQ6IGJlZ2luLCBsZW5ndGg6IGVuZCAtIGJlZ2luIH0sCiAgICAgICAgICB7IC4uLm9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMsIGtlZXBMaW5lczogZmFsc2UgfQogICAgICAgICk7CiAgICAgICAgZm9yIChsZXQgaSA9IGVkaXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICBjb25zdCBlZGl0MiA9IGVkaXRzW2ldOwogICAgICAgICAgbmV3VGV4dCA9IGFwcGx5RWRpdChuZXdUZXh0LCBlZGl0Mik7CiAgICAgICAgICBiZWdpbiA9IE1hdGgubWluKGJlZ2luLCBlZGl0Mi5vZmZzZXQpOwogICAgICAgICAgZW5kID0gTWF0aC5tYXgoZW5kLCBlZGl0Mi5vZmZzZXQgKyBlZGl0Mi5sZW5ndGgpOwogICAgICAgICAgZW5kICs9IGVkaXQyLmNvbnRlbnQubGVuZ3RoIC0gZWRpdDIubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0TGVuZ3RoID0gdGV4dC5sZW5ndGggLSAobmV3VGV4dC5sZW5ndGggLSBlbmQpIC0gYmVnaW47CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIHsKICAgICAgICAgICAgb2Zmc2V0OiBiZWdpbiwKICAgICAgICAgICAgbGVuZ3RoOiBlZGl0TGVuZ3RoLAogICAgICAgICAgICBjb250ZW50OiBuZXdUZXh0LnN1YnN0cmluZyhiZWdpbiwgZW5kKQogICAgICAgICAgfQogICAgICAgIF07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYXBwbHlFZGl0KHRleHQsIGVkaXQpIHsKICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgZWRpdC5vZmZzZXQpICsgZWRpdC5jb250ZW50ICsgdGV4dC5zdWJzdHJpbmcoZWRpdC5vZmZzZXQgKyBlZGl0Lmxlbmd0aCk7CiAgICAgIH0KICAgICAgZXhwb3J0czMuYXBwbHlFZGl0ID0gYXBwbHlFZGl0OwogICAgICBmdW5jdGlvbiBpc1dTKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiAJIi5pbmRleE9mKHRleHQuY2hhckF0KG9mZnNldCkpICE9PSAtMTsKICAgICAgfQogICAgICBleHBvcnRzMy5pc1dTID0gaXNXUzsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMKdmFyIHJlcXVpcmVfbWFpbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0dGVyID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgZWRpdCA9IHJlcXVpcmVfZWRpdCgpOwogICAgdmFyIHNjYW5uZXIgPSByZXF1aXJlX3NjYW5uZXIoKTsKICAgIHZhciBwYXJzZXIgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWwogICAgICAgICAgInJlcXVpcmUiLAogICAgICAgICAgImV4cG9ydHMiLAogICAgICAgICAgIi4vaW1wbC9mb3JtYXQiLAogICAgICAgICAgIi4vaW1wbC9lZGl0IiwKICAgICAgICAgICIuL2ltcGwvc2Nhbm5lciIsCiAgICAgICAgICAiLi9pbXBsL3BhcnNlciIKICAgICAgICBdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdHMgPSBleHBvcnRzMy5tb2RpZnkgPSBleHBvcnRzMy5mb3JtYXQgPSBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBleHBvcnRzMy5wYXJzZVRyZWUgPSBleHBvcnRzMy5wYXJzZSA9IGV4cG9ydHMzLmdldExvY2F0aW9uID0gZXhwb3J0czMuU3ludGF4S2luZCA9IGV4cG9ydHMzLlNjYW5FcnJvciA9IGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSBzY2FubmVyLmNyZWF0ZVNjYW5uZXI7CiAgICAgIHZhciBTY2FuRXJyb3I7CiAgICAgIChmdW5jdGlvbihTY2FuRXJyb3IyKSB7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJOb25lIl0gPSAwXSA9ICJOb25lIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mU3RyaW5nIl0gPSAyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAzXSA9ICJVbmV4cGVjdGVkRW5kT2ZOdW1iZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZFVuaWNvZGUiXSA9IDRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiXSA9IDVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZENoYXJhY3RlciJdID0gNl0gPSAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgIH0pKFNjYW5FcnJvciB8fCAoZXhwb3J0czMuU2NhbkVycm9yID0gU2NhbkVycm9yID0ge30pKTsKICAgICAgdmFyIFN5bnRheEtpbmQ7CiAgICAgIChmdW5jdGlvbihTeW50YXhLaW5kMikgewogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2VUb2tlbiJdID0gMV0gPSAiT3BlbkJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNlVG9rZW4iXSA9IDJdID0gIkNsb3NlQnJhY2VUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk9wZW5CcmFja2V0VG9rZW4iXSA9IDNdID0gIk9wZW5CcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNrZXRUb2tlbiJdID0gNF0gPSAiQ2xvc2VCcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDb21tYVRva2VuIl0gPSA1XSA9ICJDb21tYVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29sb25Ub2tlbiJdID0gNl0gPSAiQ29sb25Ub2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk51bGxLZXl3b3JkIl0gPSA3XSA9ICJOdWxsS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRydWVLZXl3b3JkIl0gPSA4XSA9ICJUcnVlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkZhbHNlS2V5d29yZCJdID0gOV0gPSAiRmFsc2VLZXl3b3JkIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiU3RyaW5nTGl0ZXJhbCJdID0gMTBdID0gIlN0cmluZ0xpdGVyYWwiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdW1lcmljTGl0ZXJhbCJdID0gMTFdID0gIk51bWVyaWNMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTGluZUNvbW1lbnRUcml2aWEiXSA9IDEyXSA9ICJMaW5lQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkJsb2NrQ29tbWVudFRyaXZpYSJdID0gMTNdID0gIkJsb2NrQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVCcmVha1RyaXZpYSJdID0gMTRdID0gIkxpbmVCcmVha1RyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRyaXZpYSJdID0gMTVdID0gIlRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlVua25vd24iXSA9IDE2XSA9ICJVbmtub3duIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiRU9GIl0gPSAxN10gPSAiRU9GIjsKICAgICAgfSkoU3ludGF4S2luZCB8fCAoZXhwb3J0czMuU3ludGF4S2luZCA9IFN5bnRheEtpbmQgPSB7fSkpOwogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IHBhcnNlci5nZXRMb2NhdGlvbjsKICAgICAgZXhwb3J0czMucGFyc2UgPSBwYXJzZXIucGFyc2U7CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlci5wYXJzZVRyZWU7CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IHBhcnNlci5maW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBwYXJzZXIuZmluZE5vZGVBdE9mZnNldDsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBwYXJzZXIuZ2V0Tm9kZVBhdGg7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IHBhcnNlci5nZXROb2RlVmFsdWU7CiAgICAgIGV4cG9ydHMzLnZpc2l0ID0gcGFyc2VyLnZpc2l0OwogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gcGFyc2VyLnN0cmlwQ29tbWVudHM7CiAgICAgIHZhciBQYXJzZUVycm9yQ29kZTsKICAgICAgKGZ1bmN0aW9uKFBhcnNlRXJyb3JDb2RlMikgewogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRTeW1ib2wiXSA9IDFdID0gIkludmFsaWRTeW1ib2wiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWROdW1iZXJGb3JtYXQiXSA9IDJdID0gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlByb3BlcnR5TmFtZUV4cGVjdGVkIl0gPSAzXSA9ICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVmFsdWVFeHBlY3RlZCJdID0gNF0gPSAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29sb25FeHBlY3RlZCJdID0gNV0gPSAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29tbWFFeHBlY3RlZCJdID0gNl0gPSAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ2xvc2VCcmFjZUV4cGVjdGVkIl0gPSA3XSA9ICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2tldEV4cGVjdGVkIl0gPSA4XSA9ICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiRW5kT2ZGaWxlRXhwZWN0ZWQiXSA9IDldID0gIkVuZE9mRmlsZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkQ29tbWVudFRva2VuIl0gPSAxMF0gPSAiSW52YWxpZENvbW1lbnRUb2tlbiI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mQ29tbWVudCJdID0gMTFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMTJdID0gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAxM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkVW5pY29kZSJdID0gMTRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSAxNV0gPSAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENoYXJhY3RlciJdID0gMTZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShQYXJzZUVycm9yQ29kZSB8fCAoZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBQYXJzZUVycm9yQ29kZSA9IHt9KSk7CiAgICAgIGZ1bmN0aW9uIHByaW50UGFyc2VFcnJvckNvZGUoY29kZSkgewogICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRTeW1ib2wiOwogICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICByZXR1cm4gIlByb3BlcnR5TmFtZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgcmV0dXJuICJWYWx1ZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgcmV0dXJuICJDb2xvbkV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgcmV0dXJuICJDb21tYUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICByZXR1cm4gIkNsb3NlQnJhY2tldEV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgcmV0dXJuICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgcmV0dXJuICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZFVuaWNvZGUiOwogICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAiPHVua25vd24gUGFyc2VFcnJvckNvZGU+IjsKICAgICAgfQogICAgICBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gcHJpbnRQYXJzZUVycm9yQ29kZTsKICAgICAgZnVuY3Rpb24gZm9ybWF0KGRvY3VtZW50VGV4dCwgcmFuZ2UsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5mb3JtYXQgPSBmb3JtYXQ7CiAgICAgIGZ1bmN0aW9uIG1vZGlmeSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBlZGl0LnNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5tb2RpZnkgPSBtb2RpZnk7CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdHModGV4dCwgZWRpdHMpIHsKICAgICAgICBsZXQgc29ydGVkRWRpdHMgPSBlZGl0cy5zbGljZSgwKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICBjb25zdCBkaWZmID0gYS5vZmZzZXQgLSBiLm9mZnNldDsKICAgICAgICAgIGlmIChkaWZmID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGRpZmY7CiAgICAgICAgfSk7CiAgICAgICAgbGV0IGxhc3RNb2RpZmllZE9mZnNldCA9IHRleHQubGVuZ3RoOwogICAgICAgIGZvciAobGV0IGkgPSBzb3J0ZWRFZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgbGV0IGUgPSBzb3J0ZWRFZGl0c1tpXTsKICAgICAgICAgIGlmIChlLm9mZnNldCArIGUubGVuZ3RoIDw9IGxhc3RNb2RpZmllZE9mZnNldCkgewogICAgICAgICAgICB0ZXh0ID0gZWRpdC5hcHBseUVkaXQodGV4dCwgZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk92ZXJsYXBwaW5nIGVkaXQiKTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNb2RpZmllZE9mZnNldCA9IGUub2Zmc2V0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gYXBwbHlFZGl0czsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMKdmFyIHJlcXVpcmVfbWV0YWRhdGEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9tZXRhZGF0YS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IHZvaWQgMDsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IFN5bWJvbC5mb3IoIkBhbmd1bGFyL2NvcmU6d29ya3NwYWNlLWpzb24iKTsKICAgIGZ1bmN0aW9uIGVzY2FwZUtleShrZXkpIHsKICAgICAgcmV0dXJuIGtleS5yZXBsYWNlKCJ+IiwgIn4wIikucmVwbGFjZSgiLyIsICJ+MSIpOwogICAgfQogICAgdmFyIEpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGNsYXNzIHsKICAgICAgZmlsZVBhdGg7CiAgICAgIGFzdDsKICAgICAgcmF3OwogICAgICBjaGFuZ2VzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgaGFzTGVnYWN5VGFyZ2V0c05hbWUgPSB0cnVlOwogICAgICBjb25zdHJ1Y3RvcihmaWxlUGF0aCwgYXN0LCByYXcpIHsKICAgICAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7CiAgICAgICAgdGhpcy5hc3QgPSBhc3Q7CiAgICAgICAgdGhpcy5yYXcgPSByYXc7CiAgICAgIH0KICAgICAgZ2V0IGhhc0NoYW5nZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplID4gMDsKICAgICAgfQogICAgICBnZXQgY2hhbmdlQ291bnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplOwogICAgICB9CiAgICAgIGdldE5vZGVWYWx1ZUZyb21Bc3QocGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKSh0aGlzLmFzdCwgcGF0aCk7CiAgICAgICAgcmV0dXJuIG5vZGUgJiYgKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkobm9kZSk7CiAgICAgIH0KICAgICAgZmluZENoYW5nZXNGb3JQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VzLmdldChwYXRoKTsKICAgICAgfQogICAgICBhZGRDaGFuZ2UoanNvblBhdGgsIHZhbHVlLCB0eXBlMikgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGU6IHR5cGUyLCB2YWx1ZSB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IEpzb25Xb3Jrc3BhY2VNZXRhZGF0YTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcwp2YXIgcmVxdWlyZV91dGlsaXRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlVmlydHVhbEFzdE9iamVjdCA9IGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Q7CiAgICB2YXIganNvbl8xID0gcmVxdWlyZV9qc29uKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KHJvb3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByZXBvcnRlciA9IChwYXRoLCB0YXJnZXQsIG9sZFZhbHVlLCBuZXdWYWx1ZSkgPT4gewogICAgICAgIGlmICghb3B0aW9ucy5saXN0ZW5lcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAob2xkVmFsdWUgPT09IG5ld1ZhbHVlIHx8IEpTT04uc3RyaW5naWZ5KG9sZFZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkobmV3VmFsdWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aC5zbGljZSgwLCAtMSksIHRhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aCwgbmV3VmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIGNyZWF0ZShBcnJheS5pc0FycmF5KHJvb3QpID8gWy4uLnJvb3RdIDogeyAuLi5yb290IH0sIFtdLCByZXBvcnRlciwgbmV3IFNldChvcHRpb25zLmV4Y2x1ZGUpLCBvcHRpb25zLmluY2x1ZGU/Lmxlbmd0aCA/IG5ldyBTZXQob3B0aW9ucy5pbmNsdWRlKSA6IHZvaWQgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBjcmVhdGUob2JqLCBwYXRoLCByZXBvcnRlciwgZXhjbHVkZWQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpLCBpbmNsdWRlZCkgewogICAgICByZXR1cm4gbmV3IFByb3h5KG9iaiwgewogICAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCk7CiAgICAgICAgfSwKICAgICAgICBoYXModGFyZ2V0LCBwKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiIHx8IGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGdldCh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIGpzb25fMS5pc0pzb25PYmplY3QpKHZhbHVlKSAmJiAhKHZhbHVlIGluc3RhbmNlb2YgTWFwKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICByZXR1cm4gY3JlYXRlKHZhbHVlLCBbLi4ucGF0aCwgcF0sIHJlcG9ydGVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoZXhjbHVkZWQuaGFzKHApIHx8IGluY2x1ZGVkICYmICFpbmNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlUHJvcGVydHk/Lih0YXJnZXQsIHApID8/IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSkpIHsKICAgICAgICAgICAgcmVwb3J0ZXIoWy4uLnBhdGgsIHBdLCB0YXJnZXQsIGV4aXN0aW5nVmFsdWUsIHZhbHVlKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGdldEN1cnJlbnRWYWx1ZSh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdm9pZCAwKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9LAogICAgICAgIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykgewogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHAsIGF0dHJpYnV0ZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0sCiAgICAgICAgb3duS2V5cyh0YXJnZXQpIHsKICAgICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KS5maWx0ZXIoKHApID0+ICFleGNsdWRlZC5oYXMocCkgJiYgKCFpbmNsdWRlZCB8fCBpbmNsdWRlZC5oYXMocCkpKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcHJvcGVydHkpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSAmJiBpc0Zpbml0ZSgrcHJvcGVydHkpKSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFsrcHJvcGVydHldOwogICAgICB9CiAgICAgIGlmICh0YXJnZXQgJiYgcHJvcGVydHkgaW4gdGFyZ2V0KSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcwp2YXIgcmVxdWlyZV9yZWFkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVhZEpzb25Xb3Jrc3BhY2UgPSByZWFkSnNvbldvcmtzcGFjZTsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgZGVmaW5pdGlvbnNfMSA9IHJlcXVpcmVfZGVmaW5pdGlvbnMoKTsKICAgIHZhciBtZXRhZGF0YV8xID0gcmVxdWlyZV9tZXRhZGF0YTIoKTsKICAgIHZhciB1dGlsaXRpZXNfMSA9IHJlcXVpcmVfdXRpbGl0aWVzKCk7CiAgICB2YXIgQU5HVUxBUl9XT1JLU1BBQ0VfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAibmV3UHJvamVjdFJvb3QiLCAic2NoZW1hdGljcyJdKTsKICAgIHZhciBBTkdVTEFSX1BST0pFQ1RfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAic2NoZW1hdGljcyIsICJwcm9qZWN0VHlwZSIsICJpMThuIl0pOwogICAgYXN5bmMgZnVuY3Rpb24gcmVhZEpzb25Xb3Jrc3BhY2UocGF0aCwgaG9zdCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IHJhdyA9IGF3YWl0IGhvc3QucmVhZEZpbGUocGF0aCk7CiAgICAgIGlmIChyYXcgPT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIHJlYWQgd29ya3NwYWNlIGZpbGUuIik7CiAgICAgIH0KICAgICAgY29uc3QgYXN0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlVHJlZSkocmF3LCB2b2lkIDAsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlLCBkaXNhbGxvd0NvbW1lbnRzOiBmYWxzZSB9KTsKICAgICAgaWYgKGFzdD8udHlwZSAhPT0gIm9iamVjdCIgfHwgIWFzdC5jaGlsZHJlbikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSW52YWxpZCB3b3Jrc3BhY2UgZmlsZSAtIGV4cGVjdGVkIEpTT04gb2JqZWN0LiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb25Ob2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikoYXN0LCBbInZlcnNpb24iXSk7CiAgICAgIGlmICghdmVyc2lvbk5vZGUpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gZm9ybWF0IC0gdmVyc2lvbiBzcGVjaWZpZXIgbm90IGZvdW5kLiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb24gPSB2ZXJzaW9uTm9kZS52YWx1ZTsKICAgICAgaWYgKHZlcnNpb24gIT09IDEpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9ybWF0IHZlcnNpb24gZGV0ZWN0ZWQgLSBFeHBlY3RlZDpbIDEgXSBGb3VuZDogWyAke3ZlcnNpb259IF1gKTsKICAgICAgfQogICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgIGhvc3QsCiAgICAgICAgbWV0YWRhdGE6IG5ldyBtZXRhZGF0YV8xLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YShwYXRoLCBhc3QsIHJhdyksCiAgICAgICAgdHJhY2tDaGFuZ2VzOiB0cnVlLAogICAgICAgIHVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICAgICAuLi5BTkdVTEFSX1dPUktTUEFDRV9FWFRFTlNJT05TLAogICAgICAgICAgLi4ub3B0aW9ucy5hbGxvd2VkV29ya3NwYWNlRXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIHVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9uczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAgICAgLi4uQU5HVUxBUl9QUk9KRUNUX0VYVEVOU0lPTlMsCiAgICAgICAgICAuLi5vcHRpb25zLmFsbG93ZWRQcm9qZWN0RXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIGVycm9yKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7CiAgICAgICAgfSwKICAgICAgICB3YXJuKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBjb25zdCB3b3Jrc3BhY2UgPSBwYXJzZVdvcmtzcGFjZShhc3QsIGNvbnRleHQpOwogICAgICByZXR1cm4gd29ya3NwYWNlOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VXb3Jrc3BhY2Uod29ya3NwYWNlTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgcHJvamVjdHM7CiAgICAgIGxldCBleHRlbnNpb25zOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICB9CiAgICAgIGNvbnN0IHdvcmtzcGFjZU5vZGVWYWx1ZSA9ICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHdvcmtzcGFjZU5vZGUpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMod29ya3NwYWNlTm9kZVZhbHVlKSkgewogICAgICAgIGlmIChuYW1lID09PSAiJHNjaGVtYSIgfHwgbmFtZSA9PT0gInZlcnNpb24iKSB7CiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAicHJvamVjdHMiKSB7CiAgICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHdvcmtzcGFjZU5vZGUsIFsicHJvamVjdHMiXSk7CiAgICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgICBjb250ZXh0LmVycm9yKCdJbnZhbGlkICJwcm9qZWN0cyIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC4nLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHJvamVjdHMgPSBwYXJzZVByb2plY3RzT2JqZWN0KG5vZGVzLCBjb250ZXh0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zLmhhcyhuYW1lKSAmJiAhL15bYS16XXsxLDN9LS4qLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICAgIGNvbnRleHQud2FybihgV29ya3NwYWNlIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkgZm91bmQuYCwgbmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykgewogICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSkgPT4gewogICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgbmFtZV0sIG5ld1ZhbHVlLCAicHJvamVjdCIpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3QgcHJvamVjdENvbGxlY3Rpb24gPSBuZXcgZGVmaW5pdGlvbnNfMS5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24ocHJvamVjdHMsIGNvbGxlY3Rpb25MaXN0ZW5lcik7CiAgICAgIHJldHVybiB7CiAgICAgICAgW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF06IGpzb25NZXRhZGF0YSwKICAgICAgICBwcm9qZWN0czogcHJvamVjdENvbGxlY3Rpb24sCiAgICAgICAgLy8gSWYgbm90IHRyYWNraW5nIGNoYW5nZXMgdGhlIGBleHRlbnNpb25zYCB2YXJpYWJsZSB3aWxsIGNvbnRhaW4gdGhlIHBhcnNlZAogICAgICAgIC8vIHZhbHVlcy4gIE90aGVyd2lzZSB0aGUgZXh0ZW5zaW9ucyBhcmUgdHJhY2tlZCB2aWEgYSB2aXJ0dWFsIEFTVCBvYmplY3QuCiAgICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkod29ya3NwYWNlTm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbIiRzY2hlbWEiLCAidmVyc2lvbiIsICJwcm9qZWN0cyJdLAogICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShwYXRoLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlUHJvamVjdHNPYmplY3QocHJvamVjdHNOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcygoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKShwcm9qZWN0c05vZGUpKSkgewogICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdHNOb2RlLCBbbmFtZV0pOwogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICBjb250ZXh0Lndhcm4oIlNraXBwaW5nIGludmFsaWQgcHJvamVjdCB2YWx1ZTsgZXhwZWN0ZWQgYW4gb2JqZWN0LiIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBwcm9qZWN0c1tuYW1lXSA9IHBhcnNlUHJvamVjdChuYW1lLCBub2RlcywgY29udGV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHByb2plY3RzOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0Tm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgdGFyZ2V0czsKICAgICAgbGV0IGhhc1RhcmdldHMgPSBmYWxzZTsKICAgICAgbGV0IGV4dGVuc2lvbnM7CiAgICAgIGxldCBwcm9wZXJ0aWVzOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIHByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgfQogICAgICBjb25zdCBwcm9qZWN0Tm9kZVZhbHVlID0gKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkocHJvamVjdE5vZGUpOwogICAgICBpZiAoISgicm9vdCIgaW4gcHJvamVjdE5vZGVWYWx1ZSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFByb2plY3QgIiR7cHJvamVjdE5hbWV9IiBpcyBtaXNzaW5nIGEgcmVxdWlyZWQgcHJvcGVydHkgInJvb3QiLmApOwogICAgICB9CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9qZWN0Tm9kZVZhbHVlKSkgewogICAgICAgIHN3aXRjaCAobmFtZSkgewogICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICBjYXNlICJhcmNoaXRlY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdE5vZGUsIFtuYW1lXSk7CiAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICAgICAgY29udGV4dC5lcnJvcihgSW52YWxpZCAiJHtuYW1lfSIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC5gLCB2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaGFzVGFyZ2V0cyA9IHRydWU7CiAgICAgICAgICAgIHRhcmdldHMgPSBwYXJzZVRhcmdldHNPYmplY3QocHJvamVjdE5hbWUsIG5vZGVzLCBjb250ZXh0KTsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmhhc0xlZ2FjeVRhcmdldHNOYW1lID0gbmFtZSA9PT0gImFyY2hpdGVjdCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgY2FzZSAic291cmNlUm9vdCI6CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgY29udGV4dC53YXJuKGBQcm9qZWN0IHByb3BlcnR5ICIke25hbWV9IiBzaG91bGQgYmUgYSBzdHJpbmcuYCwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwcm9wZXJ0aWVzKSB7CiAgICAgICAgICAgICAgcHJvcGVydGllc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9ucy5oYXMobmFtZSkgJiYgIS9eW2Etel17MSwzfS0uKi8udGVzdChuYW1lKSkgewogICAgICAgICAgICAgIGNvbnRleHQud2FybihgUHJvamVjdCAnJHtwcm9qZWN0TmFtZX0nIGNvbnRhaW5zIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkuYCwgbmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHsKICAgICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSwgY29sbGVjdGlvbikgPT4gewogICAgICAgICAgaWYgKGhhc1RhcmdldHMpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIiwgbmFtZV0sIG5ld1ZhbHVlLCAidGFyZ2V0Iik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiXSwgY29sbGVjdGlvbiwgInRhcmdldGNvbGxlY3Rpb24iKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0IGJhc2UgPSB7CiAgICAgICAgdGFyZ2V0czogbmV3IGRlZmluaXRpb25zXzEuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24odGFyZ2V0cywgY29sbGVjdGlvbkxpc3RlbmVyKSwKICAgICAgICAvLyBJZiBub3QgdHJhY2tpbmcgY2hhbmdlcyB0aGUgYGV4dGVuc2lvbnNgIHZhcmlhYmxlIHdpbGwgY29udGFpbiB0aGUgcGFyc2VkCiAgICAgICAgLy8gdmFsdWVzLiAgT3RoZXJ3aXNlIHRoZSBleHRlbnNpb25zIGFyZSB0cmFja2VkIHZpYSBhIHZpcnR1YWwgQVNUIG9iamVjdC4KICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbImFyY2hpdGVjdCIsICJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgInRhcmdldHMiXSwKICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAuLi5wYXRoXSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH07CiAgICAgIGNvbnN0IGJhc2VLZXlzID0gbmV3IFNldChPYmplY3Qua2V5cyhiYXNlKSk7CiAgICAgIGNvbnN0IHByb2plY3QgPSBwcm9wZXJ0aWVzID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgaW5jbHVkZTogWyJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgLi4uYmFzZUtleXNdLAogICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoIWJhc2VLZXlzLmhhcyhwYXRoWzBdKSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgLi4ucGF0aF0sIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihwcm9qZWN0LCBiYXNlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlVGFyZ2V0c09iamVjdChwcm9qZWN0TmFtZSwgdGFyZ2V0c05vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgY29uc3QgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkodGFyZ2V0c05vZGUpKSkgewogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIGNvbnRleHQud2FybigiU2tpcHBpbmcgaW52YWxpZCB0YXJnZXQgdmFsdWU7IGV4cGVjdGVkIGFuIG9iamVjdC4iLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgICB0YXJnZXRzW25hbWVdID0gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHZhbHVlLCB7CiAgICAgICAgICAgIGluY2x1ZGU6IFsiYnVpbGRlciIsICJvcHRpb25zIiwgImNvbmZpZ3VyYXRpb25zIiwgImRlZmF1bHRDb25maWd1cmF0aW9uIl0sCiAgICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlMikgewogICAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyIsIG5hbWUsIC4uLnBhdGhdLCB2YWx1ZTIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGFyZ2V0c1tuYW1lXSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gdGFyZ2V0czsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcwp2YXIgcmVxdWlyZV93cml0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVKc29uV29ya3NwYWNlID0gd3JpdGVKc29uV29ya3NwYWNlOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgbm9kZV9vc18xID0gcmVxdWlyZSgibm9kZTpvcyIpOwogICAgdmFyIG1ldGFkYXRhXzEgPSByZXF1aXJlX21ldGFkYXRhMigpOwogICAgYXN5bmMgZnVuY3Rpb24gd3JpdGVKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IG1ldGFkYXRhID0gd29ya3NwYWNlW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF07CiAgICAgIGlmIChtZXRhZGF0YSkgewogICAgICAgIGlmICghbWV0YWRhdGEuaGFzQ2hhbmdlcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBkYXRhID0gdXBkYXRlSnNvbldvcmtzcGFjZShtZXRhZGF0YSk7CiAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGVGaWxlKHBhdGggPz8gbWV0YWRhdGEuZmlsZVBhdGgsIGRhdGEpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghcGF0aCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJwYXRoIG9wdGlvbiBpcyByZXF1aXJlZCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBvYmogPSBjb252ZXJ0SnNvbldvcmtzcGFjZSh3b3Jrc3BhY2UsIG9wdGlvbnMuc2NoZW1hKTsKICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5zdHJpbmdpZnkob2JqLCBudWxsLCAyKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCwgZGF0YSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgc2NoZW1hMikgewogICAgICBjb25zdCBvYmogPSB7CiAgICAgICAgJHNjaGVtYTogc2NoZW1hMiB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpIHsKICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIHN3aXRjaCAodHlwZTIpIHsKICAgICAgICBjYXNlICJwcm9qZWN0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblByb2plY3QodmFsdWUpOwogICAgICAgIGNhc2UgInByb2plY3Rjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgcHJvamVjdHMgPSBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHZhbHVlKTsKICAgICAgICAgIHJldHVybiBpc0VtcHR5KHByb2plY3RzKSA/IHZvaWQgMCA6IHByb2plY3RzOwogICAgICAgIH0KICAgICAgICBjYXNlICJ0YXJnZXQiOgogICAgICAgICAgcmV0dXJuIGNvbnZlcnRKc29uVGFyZ2V0KHZhbHVlKTsKICAgICAgICBjYXNlICJ0YXJnZXRjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgdGFyZ2V0cyA9IGNvbnZlcnRKc29uVGFyZ2V0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eSh0YXJnZXRzKSA/IHZvaWQgMCA6IHRhcmdldHM7CiAgICAgICAgfQogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUpzb25Xb3Jrc3BhY2UobWV0YWRhdGEpIHsKICAgICAgbGV0IHsgcmF3OiBjb250ZW50IH0gPSBtZXRhZGF0YTsKICAgICAgY29uc3QgeyBjaGFuZ2VzLCBoYXNMZWdhY3lUYXJnZXRzTmFtZSB9ID0gbWV0YWRhdGE7CiAgICAgIGZvciAoY29uc3QgeyBqc29uUGF0aCwgdmFsdWUsIHR5cGU6IHR5cGUyIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpLCB7CiAgICAgICAgICBmb3JtYXR0aW5nT3B0aW9uczogewogICAgICAgICAgICBpbnNlcnRTcGFjZXM6IHRydWUsCiAgICAgICAgICAgIHRhYlNpemU6IDIsCiAgICAgICAgICAgIGVvbDogZ2V0RU9MKGNvbnRlbnQpCiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29udGVudCA9ICgwLCBqc29uY19wYXJzZXJfMS5hcHBseUVkaXRzKShjb250ZW50LCBlZGl0cyk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbnRlbnQ7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRFT0woY29udGVudCkgewogICAgICBjb25zdCBDUkxGID0gIlxyXG4iOwogICAgICBjb25zdCBMRiA9ICJcbiI7CiAgICAgIGNvbnN0IG5ld2xpbmVzID0gY29udGVudC5tYXRjaCgvKD86XHI/XG4pL2cpOwogICAgICBpZiAobmV3bGluZXM/Lmxlbmd0aCkgewogICAgICAgIGNvbnN0IGNybGYgPSBuZXdsaW5lcy5maWx0ZXIoKGwpID0+IGwgPT09IENSTEYpLmxlbmd0aDsKICAgICAgICBjb25zdCBsZiA9IG5ld2xpbmVzLmxlbmd0aCAtIGNybGY7CiAgICAgICAgcmV0dXJuIGNybGYgPiBsZiA/IENSTEYgOiBMRjsKICAgICAgfQogICAgICByZXR1cm4gbm9kZV9vc18xLkVPTDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gdm9pZCAwOwogICAgZXhwb3J0czIuX3Rlc3RfYWRkV29ya3NwYWNlRmlsZSA9IF90ZXN0X2FkZFdvcmtzcGFjZUZpbGU7CiAgICBleHBvcnRzMi5fdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSByZWFkV29ya3NwYWNlOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSB3cml0ZVdvcmtzcGFjZTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIHZhciByZWFkZXJfMSA9IHJlcXVpcmVfcmVhZGVyKCk7CiAgICB2YXIgd3JpdGVyXzEgPSByZXF1aXJlX3dyaXRlcigpOwogICAgdmFyIGZvcm1hdExvb2t1cCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgdmFyIFdvcmtzcGFjZUZvcm1hdDsKICAgIChmdW5jdGlvbihXb3Jrc3BhY2VGb3JtYXQyKSB7CiAgICAgIFdvcmtzcGFjZUZvcm1hdDJbV29ya3NwYWNlRm9ybWF0MlsiSlNPTiJdID0gMF0gPSAiSlNPTiI7CiAgICB9KShXb3Jrc3BhY2VGb3JtYXQgfHwgKGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IFdvcmtzcGFjZUZvcm1hdCA9IHt9KSk7CiAgICBmdW5jdGlvbiBfdGVzdF9hZGRXb3Jrc3BhY2VGaWxlKG5hbWUsIGZvcm1hdCkgewogICAgICB3b3Jrc3BhY2VGaWxlc1tuYW1lXSA9IGZvcm1hdDsKICAgIH0KICAgIGZ1bmN0aW9uIF90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUobmFtZSkgewogICAgICBkZWxldGUgd29ya3NwYWNlRmlsZXNbbmFtZV07CiAgICB9CiAgICB2YXIgd29ya3NwYWNlRmlsZXMgPSB7CiAgICAgICJhbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTiwKICAgICAgIi5hbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTgogICAgfTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRXb3Jrc3BhY2UocGF0aCwgaG9zdCwgZm9ybWF0KSB7CiAgICAgIGlmIChhd2FpdCBob3N0LmlzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgIGZvciAoY29uc3QgW25hbWUsIG5hbWVGb3JtYXRdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZUZpbGVzKSkgewogICAgICAgICAgaWYgKGZvcm1hdCAhPT0gdm9pZCAwICYmIGZvcm1hdCAhPT0gbmFtZUZvcm1hdCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBvdGVudGlhbCA9ICgwLCB2aXJ0dWFsX2ZzXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHZpcnR1YWxfZnNfMS5qb2luKShkaXJlY3RvcnksIG5hbWUpKTsKICAgICAgICAgIGlmIChhd2FpdCBob3N0LmlzRmlsZShwb3RlbnRpYWwpKSB7CiAgICAgICAgICAgIHBhdGggPSBwb3RlbnRpYWw7CiAgICAgICAgICAgIGZvcm1hdCA9IG5hbWVGb3JtYXQ7CiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghZm91bmQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSBhIHdvcmtzcGFjZSBmaWxlIGZvciB3b3Jrc3BhY2UgcGF0aC4gQXJlIHlvdSBtaXNzaW5nIGFuIGBhbmd1bGFyLmpzb25gIG9yIGAuYW5ndWxhci5qc29uYCBmaWxlPyIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IGZpbGVuYW1lID0gKDAsIHZpcnR1YWxfZnNfMS5iYXNlbmFtZSkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgICBpZiAoZmlsZW5hbWUgaW4gd29ya3NwYWNlRmlsZXMpIHsKICAgICAgICAgIGZvcm1hdCA9IHdvcmtzcGFjZUZpbGVzW2ZpbGVuYW1lXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gZGV0ZXJtaW5lIGZvcm1hdCBmb3Igd29ya3NwYWNlIHBhdGguIik7CiAgICAgIH0KICAgICAgbGV0IHdvcmtzcGFjZTsKICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgd29ya3NwYWNlID0gYXdhaXQgKDAsIHJlYWRlcl8xLnJlYWRKc29uV29ya3NwYWNlKShwYXRoLCBob3N0KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgICAgZm9ybWF0TG9va3VwLnNldCh3b3Jrc3BhY2UsIFdvcmtzcGFjZUZvcm1hdC5KU09OKTsKICAgICAgcmV0dXJuIHsgd29ya3NwYWNlIH07CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZVdvcmtzcGFjZSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgsIGZvcm1hdCkgewogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICBmb3JtYXQgPSBmb3JtYXRMb29rdXAuZ2V0KHdvcmtzcGFjZSk7CiAgICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkEgZm9ybWF0IGlzIHJlcXVpcmVkIGZvciBjdXN0b20gd29ya3NwYWNlIG9iamVjdHMuIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgICAgY2FzZSBXb3Jrc3BhY2VGb3JtYXQuSlNPTjoKICAgICAgICAgIHJldHVybiAoMCwgd3JpdGVyXzEud3JpdGVKc29uV29ya3NwYWNlKSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgpOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcwp2YXIgcmVxdWlyZV93b3Jrc3BhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSBleHBvcnRzMi5yZWFkV29ya3NwYWNlID0gZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IHZvaWQgMDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2RlZmluaXRpb25zKCksIGV4cG9ydHMyKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3QyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjcmVhdGVXb3Jrc3BhY2VIb3N0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaG9zdF8xLmNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZTMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIldvcmtzcGFjZUZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5Xb3Jrc3BhY2VGb3JtYXQ7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVhZFdvcmtzcGFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5yZWFkV29ya3NwYWNlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndyaXRlV29ya3NwYWNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLndyaXRlV29ya3NwYWNlOwogICAgfSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndvcmtzcGFjZXMgPSBleHBvcnRzMi5sb2dnaW5nID0gZXhwb3J0czIuanNvbiA9IHZvaWQgMDsKICAgIHZhciBqc29uMiA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2pzb24oKSk7CiAgICBleHBvcnRzMi5qc29uID0ganNvbjI7CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanMKdmFyIHJlcXVpcmVfaHRtbF9zZWxlY3RvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgdW5pY29kZVJhbmdlcyA9IFsKICAgICAgWzE5MiwgMjE0XSwKICAgICAgWzIxNiwgMjQ2XSwKICAgICAgWzI0OCwgODkzXSwKICAgICAgWzg5NSwgODE5MV0sCiAgICAgIFs4MjA0LCA4MjA1XSwKICAgICAgWzgyNTUsIDgyNTZdLAogICAgICBbODMwNCwgODU5MV0sCiAgICAgIFsxMTI2NCwgMTIyNzFdLAogICAgICBbMTIyODksIDU1Mjk1XSwKICAgICAgWzYzNzQ0LCA2NDk3NV0sCiAgICAgIFs2NTAwOCwgNjU1MzNdLAogICAgICBbNjU1MzYsIDk4MzAzOV0KICAgIF07CiAgICBmdW5jdGlvbiBpc1ZhbGlkRWxlbWVudE5hbWUobmFtZSkgewogICAgICBsZXQgcmVnZXggPSAiXlthLXpBLVpdWyI7CiAgICAgIHJlZ2V4ICs9ICItLjAtOV9hLXpBLVpcXHV7Qjd9IjsKICAgICAgZm9yIChjb25zdCByYW5nZSBvZiB1bmljb2RlUmFuZ2VzKSB7CiAgICAgICAgcmVnZXggKz0gYFxcdXske3JhbmdlWzBdLnRvU3RyaW5nKDE2KX19LVxcdXske3JhbmdlWzFdLnRvU3RyaW5nKDE2KX19YDsKICAgICAgfQogICAgICByZWdleCArPSAiXSokIjsKICAgICAgcmV0dXJuIG5ldyBSZWdFeHAocmVnZXgsICJ1IikudGVzdChuYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmh0bWxTZWxlY3RvckZvcm1hdCA9IHsKICAgICAgbmFtZTogImh0bWwtc2VsZWN0b3IiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChuYW1lKSA9PiB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgJiYgaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpCiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHsKICAgICAgbmFtZTogInBhdGgiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChwYXRoKSA9PiB7CiAgICAgICAgICByZXR1cm4gcGF0aCA9PT0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0czIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLlRyZWVTeW1ib2wgPSBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gZXhwb3J0czIuTWVyZ2VTdHJhdGVneSA9IHZvaWQgMDsKICAgIHZhciBNZXJnZVN0cmF0ZWd5MjsKICAgIChmdW5jdGlvbihNZXJnZVN0cmF0ZWd5MykgewogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dPdmVyd3JpdGVDb25mbGljdCJdID0gMl0gPSAiQWxsb3dPdmVyd3JpdGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiXSA9IDRdID0gIkFsbG93Q3JlYXRpb25Db25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0RlbGV0ZUNvbmZsaWN0Il0gPSA4XSA9ICJBbGxvd0RlbGV0ZUNvbmZsaWN0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkRlZmF1bHQiXSA9IDBdID0gIkRlZmF1bHQiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siRXJyb3IiXSA9IDFdID0gIkVycm9yIjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkNvbnRlbnRPbmx5Il0gPSAyXSA9ICJDb250ZW50T25seSI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJPdmVyd3JpdGUiXSA9IDE0XSA9ICJPdmVyd3JpdGUiOwogICAgfSkoTWVyZ2VTdHJhdGVneTIgfHwgKGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSBNZXJnZVN0cmF0ZWd5MiA9IHt9KSk7CiAgICBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gU3ltYm9sKCk7CiAgICBleHBvcnRzMi5UcmVlU3ltYm9sID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IGdsb2JhbFN5bWJvbCA9IHR5cGVvZiB3aW5kb3cgPT0gIm9iamVjdCIgJiYgd2luZG93LndpbmRvdyA9PT0gd2luZG93ICYmIHdpbmRvdy5TeW1ib2wgfHwgdHlwZW9mIHNlbGYgPT0gIm9iamVjdCIgJiYgc2VsZi5zZWxmID09PSBzZWxmICYmIHNlbGYuU3ltYm9sIHx8IHR5cGVvZiBnbG9iYWwgPT0gIm9iamVjdCIgJiYgZ2xvYmFsLmdsb2JhbCA9PT0gZ2xvYmFsICYmIGdsb2JhbC5TeW1ib2w7CiAgICAgIGlmICghZ2xvYmFsU3ltYm9sKSB7CiAgICAgICAgcmV0dXJuIFN5bWJvbCgic2NoZW1hdGljLXRyZWUiKTsKICAgICAgfQogICAgICBpZiAoIWdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlKSB7CiAgICAgICAgZ2xvYmFsU3ltYm9sLnNjaGVtYXRpY1RyZWUgPSBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlOwogICAgfSgpOwogICAgZXhwb3J0czIuVHJlZSA9IE9iamVjdC5mcmVlemUoewogICAgICBpc1RyZWUobWF5YmVUcmVlKSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLlRyZWVTeW1ib2wgaW4gbWF5YmVUcmVlOwogICAgICB9CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZXhjZXB0aW9uL2V4Y2VwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuU2NoZW1hdGljc0V4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFNjaGVtYXRpY3NFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIHZhciBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ29udGVudCBhdCBwYXRoICIke3BhdGh9IiBoYXMgY2hhbmdlZCBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgdGhlIGVuZCBvZiBhbiB1cGRhdGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEludmFsaWQgcmVjb3JkIGluc3RhbmNlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb247CiAgICB2YXIgTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYEEgbWVyZ2UgY29uZmxpY3RlZCBvbiBwYXRoICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24gPSBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uOwogICAgdmFyIFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJXb3JrZmxvdyBkaWQgbm90IGV4ZWN1dGUgc3VjY2Vzc2Z1bGx5LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBVbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbjsKICAgIHZhciBVbmltcGxlbWVudGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJUaGlzIGZ1bmN0aW9uIGlzIHVuaW1wbGVtZW50ZWQuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMKdmFyIHJlcXVpcmVfZGVsZWdhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcwp2YXIgcmVxdWlyZV9lbnRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBTaW1wbGVGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9wYXRoOwogICAgICBfY29udGVudDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2NvbnRlbnQgPSBfY29udGVudDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IFNpbXBsZUZpbGVFbnRyeTsKICAgIHZhciBMYXp5RmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2xvYWQ7CiAgICAgIF9jb250ZW50ID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9sb2FkKSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2xvYWQgPSBfbG9hZDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudCB8fCAodGhpcy5fY29udGVudCA9IHRoaXMuX2xvYWQodGhpcy5fcGF0aCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IExhenlGaWxlRW50cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0BqcmlkZ2V3ZWxsLXNvdXJjZW1hcC1jb2RlYy1ucG0tMS41LjAtZGZkOTEyNmQ3MS0xMC56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtMTAuemlwL25vZGVfbW9kdWxlcy9AanJpZGdld2VsbC9zb3VyY2VtYXAtY29kZWMvZGlzdC9zb3VyY2VtYXAtY29kZWMudW1kLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGdsb2JhbDIsIGZhY3RvcnkpIHsKICAgICAgdHlwZW9mIGV4cG9ydHMyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMiAhPT0gInVuZGVmaW5lZCIgPyBmYWN0b3J5KGV4cG9ydHMyKSA6IHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbImV4cG9ydHMiXSwgZmFjdG9yeSkgOiAoZ2xvYmFsMiA9IHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiA/IGdsb2JhbFRoaXMgOiBnbG9iYWwyIHx8IHNlbGYsIGZhY3RvcnkoZ2xvYmFsMi5zb3VyY2VtYXBDb2RlYyA9IHt9KSk7CiAgICB9KShleHBvcnRzMiwgZnVuY3Rpb24oZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBjb25zdCBjb21tYSA9ICIsIi5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBzZW1pY29sb24gPSAiOyIuY2hhckNvZGVBdCgwKTsKICAgICAgY29uc3QgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgICAgIGNvbnN0IGludFRvQ2hhciA9IG5ldyBVaW50OEFycmF5KDY0KTsKICAgICAgY29uc3QgY2hhclRvSW50ID0gbmV3IFVpbnQ4QXJyYXkoMTI4KTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFycy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBjaGFycy5jaGFyQ29kZUF0KGkpOwogICAgICAgIGludFRvQ2hhcltpXSA9IGM7CiAgICAgICAgY2hhclRvSW50W2NdID0gaTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgdmFsdWUgPSAwOwogICAgICAgIGxldCBzaGlmdCA9IDA7CiAgICAgICAgbGV0IGludGVnZXIgPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGMgPSByZWFkZXIubmV4dCgpOwogICAgICAgICAgaW50ZWdlciA9IGNoYXJUb0ludFtjXTsKICAgICAgICAgIHZhbHVlIHw9IChpbnRlZ2VyICYgMzEpIDw8IHNoaWZ0OwogICAgICAgICAgc2hpZnQgKz0gNTsKICAgICAgICB9IHdoaWxlIChpbnRlZ2VyICYgMzIpOwogICAgICAgIGNvbnN0IHNob3VsZE5lZ2F0ZSA9IHZhbHVlICYgMTsKICAgICAgICB2YWx1ZSA+Pj49IDE7CiAgICAgICAgaWYgKHNob3VsZE5lZ2F0ZSkgewogICAgICAgICAgdmFsdWUgPSAtMjE0NzQ4MzY0OCB8IC12YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlbGF0aXZlICsgdmFsdWU7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlSW50ZWdlcihidWlsZGVyLCBudW0sIHJlbGF0aXZlKSB7CiAgICAgICAgbGV0IGRlbHRhID0gbnVtIC0gcmVsYXRpdmU7CiAgICAgICAgZGVsdGEgPSBkZWx0YSA8IDAgPyAtZGVsdGEgPDwgMSB8IDEgOiBkZWx0YSA8PCAxOwogICAgICAgIGRvIHsKICAgICAgICAgIGxldCBjbGFtcGVkID0gZGVsdGEgJiAzMTsKICAgICAgICAgIGRlbHRhID4+Pj0gNTsKICAgICAgICAgIGlmIChkZWx0YSA+IDApCiAgICAgICAgICAgIGNsYW1wZWQgfD0gMzI7CiAgICAgICAgICBidWlsZGVyLndyaXRlKGludFRvQ2hhcltjbGFtcGVkXSk7CiAgICAgICAgfSB3aGlsZSAoZGVsdGEgPiAwKTsKICAgICAgICByZXR1cm4gbnVtOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGhhc01vcmVWbHEocmVhZGVyLCBtYXgpIHsKICAgICAgICBpZiAocmVhZGVyLnBvcyA+PSBtYXgpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHJlYWRlci5wZWVrKCkgIT09IGNvbW1hOwogICAgICB9CiAgICAgIGNvbnN0IGJ1Zkxlbmd0aCA9IDEwMjQgKiAxNjsKICAgICAgY29uc3QgdGQgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09ICJ1bmRlZmluZWQiID8gLyogQF9fUFVSRV9fICovIG5ldyBUZXh0RGVjb2RlcigpIDogdHlwZW9mIEJ1ZmZlciAhPT0gInVuZGVmaW5lZCIgPyB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgY29uc3Qgb3V0ID0gQnVmZmVyLmZyb20oYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTsKICAgICAgICAgIHJldHVybiBvdXQudG9TdHJpbmcoKTsKICAgICAgICB9CiAgICAgIH0gOiB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgbGV0IG91dCA9ICIiOwogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgb3V0ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnVmW2ldKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBvdXQ7CiAgICAgICAgfQogICAgICB9OwogICAgICBjbGFzcyBTdHJpbmdXcml0ZXIgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgdGhpcy5vdXQgPSAiIjsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnVmTGVuZ3RoKTsKICAgICAgICB9CiAgICAgICAgd3JpdGUodikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIgfSA9IHRoaXM7CiAgICAgICAgICBidWZmZXJbdGhpcy5wb3MrK10gPSB2OwogICAgICAgICAgaWYgKHRoaXMucG9zID09PSBidWZMZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy5vdXQgKz0gdGQuZGVjb2RlKGJ1ZmZlcik7CiAgICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZmx1c2goKSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciwgb3V0LCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICByZXR1cm4gcG9zID4gMCA/IG91dCArIHRkLmRlY29kZShidWZmZXIuc3ViYXJyYXkoMCwgcG9zKSkgOiBvdXQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNsYXNzIFN0cmluZ1JlYWRlciB7CiAgICAgICAgY29uc3RydWN0b3IoYnVmZmVyKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAgICB9CiAgICAgICAgbmV4dCgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlci5jaGFyQ29kZUF0KHRoaXMucG9zKyspOwogICAgICAgIH0KICAgICAgICBwZWVrKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MpOwogICAgICAgIH0KICAgICAgICBpbmRleE9mKGNoYXIpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICBjb25zdCBpZHggPSBidWZmZXIuaW5kZXhPZihjaGFyLCBwb3MpOwogICAgICAgICAgcmV0dXJuIGlkeCA9PT0gLTEgPyBidWZmZXIubGVuZ3RoIDogaWR4OwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBFTVBUWSA9IFtdOwogICAgICBmdW5jdGlvbiBkZWNvZGVPcmlnaW5hbFNjb3BlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCBzY29wZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBsaW5lID0gMDsKICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IGxlbmd0aDsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICBsaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGxpbmUpOwogICAgICAgICAgY29uc3QgY29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgIGxhc3RbMl0gPSBsaW5lOwogICAgICAgICAgICBsYXN0WzNdID0gY29sdW1uOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtpbmQgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBoYXNOYW1lID0gZmllbGRzICYgMTsKICAgICAgICAgIGNvbnN0IHNjb3BlID0gaGFzTmFtZSA/IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmQsIGRlY29kZUludGVnZXIocmVhZGVyLCAwKV0gOiBbbGluZSwgY29sdW1uLCAwLCAwLCBraW5kXTsKICAgICAgICAgIGxldCB2YXJzID0gRU1QVFk7CiAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIGxlbmd0aCkpIHsKICAgICAgICAgICAgdmFycyA9IFtdOwogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgY29uc3QgdmFyc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgIHZhcnMucHVzaCh2YXJzSW5kZXgpOwogICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzY29wZS52YXJzID0gdmFyczsKICAgICAgICAgIHNjb3Blcy5wdXNoKHNjb3BlKTsKICAgICAgICAgIHN0YWNrLnB1c2goc2NvcGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcykgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjb3Blcy5sZW5ndGg7ICkgewogICAgICAgICAgaSA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGksIHdyaXRlciwgWzBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3Qgc2NvcGUgPSBzY29wZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCA0OiBraW5kLCB2YXJzIH0gPSBzY29wZTsKICAgICAgICBpZiAoaW5kZXggPiAwKQogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydExpbmUsIHN0YXRlWzBdKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc3RhcnRDb2x1bW4sIDApOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBraW5kLCAwKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSBzY29wZS5sZW5ndGggPT09IDYgPyAxIDogMDsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAoc2NvcGUubGVuZ3RoID09PSA2KQogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNjb3BlWzVdLCAwKTsKICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFycykgewogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHYsIDApOwogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gc2NvcGVzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlci53cml0ZShjb21tYSk7CiAgICAgICAgc3RhdGVbMF0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kTGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIDApOwogICAgICAgIHJldHVybiBpbmRleDsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVHZW5lcmF0ZWRSYW5nZXMoaW5wdXQpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gaW5wdXQ7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7CiAgICAgICAgY29uc3QgcmFuZ2VzID0gW107CiAgICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgICBsZXQgZ2VuTGluZSA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBkZWZpbml0aW9uU2NvcGVJbmRleCA9IDA7CiAgICAgICAgbGV0IGNhbGxzaXRlU291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVMaW5lID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVDb2x1bW4gPSAwOwogICAgICAgIGxldCBiaW5kaW5nTGluZSA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdDb2x1bW4gPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IHNlbWk7IHJlYWRlci5wb3MrKykgewogICAgICAgICAgICBnZW5Db2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgICAgbGFzdFsyXSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgbGFzdFszXSA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgIGNvbnN0IGhhc0RlZmluaXRpb24gPSBmaWVsZHMgJiAxOwogICAgICAgICAgICBjb25zdCBoYXNDYWxsc2l0ZSA9IGZpZWxkcyAmIDI7CiAgICAgICAgICAgIGNvbnN0IGhhc1Njb3BlID0gZmllbGRzICYgNDsKICAgICAgICAgICAgbGV0IGNhbGxzaXRlID0gbnVsbDsKICAgICAgICAgICAgbGV0IGJpbmRpbmdzID0gRU1QVFk7CiAgICAgICAgICAgIGxldCByYW5nZTsKICAgICAgICAgICAgaWYgKGhhc0RlZmluaXRpb24pIHsKICAgICAgICAgICAgICBjb25zdCBkZWZTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgZGVmaW5pdGlvblNjb3BlSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9PT0gZGVmU291cmNlc0luZGV4ID8gZGVmaW5pdGlvblNjb3BlSW5kZXggOiAwKTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU291cmNlc0luZGV4ID0gZGVmU291cmNlc0luZGV4OwogICAgICAgICAgICAgIHJhbmdlID0gW2dlbkxpbmUsIGdlbkNvbHVtbiwgMCwgMCwgZGVmU291cmNlc0luZGV4LCBkZWZpbml0aW9uU2NvcGVJbmRleF07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5pc1Njb3BlID0gISFoYXNTY29wZTsKICAgICAgICAgICAgaWYgKGhhc0NhbGxzaXRlKSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldkNzaSA9IGNhbGxzaXRlU291cmNlc0luZGV4OwogICAgICAgICAgICAgIGNvbnN0IHByZXZMaW5lID0gY2FsbHNpdGVMaW5lOwogICAgICAgICAgICAgIGNhbGxzaXRlU291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGNhbGxzaXRlU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBjb25zdCBzYW1lU291cmNlID0gcHJldkNzaSA9PT0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY2FsbHNpdGVMaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgPyBjYWxsc2l0ZUxpbmUgOiAwKTsKICAgICAgICAgICAgICBjYWxsc2l0ZUNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzYW1lU291cmNlICYmIHByZXZMaW5lID09PSBjYWxsc2l0ZUxpbmUgPyBjYWxsc2l0ZUNvbHVtbiA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlID0gW2NhbGxzaXRlU291cmNlc0luZGV4LCBjYWxsc2l0ZUxpbmUsIGNhbGxzaXRlQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5jYWxsc2l0ZSA9IGNhbGxzaXRlOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgYmluZGluZ3MgPSBbXTsKICAgICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgICBiaW5kaW5nQ29sdW1uID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbnNDb3VudCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uUmFuZ2VzOwogICAgICAgICAgICAgICAgaWYgKGV4cHJlc3Npb25zQ291bnQgPCAtMSkgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCldXTsKICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IC0xOyBpID4gZXhwcmVzc2lvbnNDb3VudDsgaS0tKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJldkJsID0gYmluZGluZ0xpbmU7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0xpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUpOwogICAgICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUgPT09IHByZXZCbCA/IGJpbmRpbmdDb2x1bW4gOiAwKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMucHVzaChbZXhwcmVzc2lvbiwgYmluZGluZ0xpbmUsIGJpbmRpbmdDb2x1bW5dKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcyA9IFtbZXhwcmVzc2lvbnNDb3VudF1dOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYmluZGluZ3MucHVzaChleHByZXNzaW9uUmFuZ2VzKTsKICAgICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmJpbmRpbmdzID0gYmluZGluZ3M7CiAgICAgICAgICAgIHJhbmdlcy5wdXNoKHJhbmdlKTsKICAgICAgICAgICAgc3RhY2sucHVzaChyYW5nZSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW5MaW5lKys7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHJhbmdlczsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzKSB7CiAgICAgICAgaWYgKHJhbmdlcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGksIHdyaXRlciwgWzAsIDAsIDAsIDAsIDAsIDAsIDBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSkgewogICAgICAgIGNvbnN0IHJhbmdlID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICBjb25zdCB7IDA6IHN0YXJ0TGluZSwgMTogc3RhcnRDb2x1bW4sIDI6IGVuZExpbmUsIDM6IGVuZENvbHVtbiwgaXNTY29wZSwgY2FsbHNpdGUsIGJpbmRpbmdzIH0gPSByYW5nZTsKICAgICAgICBpZiAoc3RhdGVbMF0gPCBzdGFydExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIHN0YXJ0TGluZSk7CiAgICAgICAgICBzdGF0ZVswXSA9IHN0YXJ0TGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgcmFuZ2VbMV0sIHN0YXRlWzFdKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSAocmFuZ2UubGVuZ3RoID09PSA2ID8gMSA6IDApIHwgKGNhbGxzaXRlID8gMiA6IDApIHwgKGlzU2NvcGUgPyA0IDogMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGZpZWxkcywgMCk7CiAgICAgICAgaWYgKHJhbmdlLmxlbmd0aCA9PT0gNikgewogICAgICAgICAgY29uc3QgeyA0OiBzb3VyY2VzSW5kZXgsIDU6IHNjb3Blc0luZGV4IH0gPSByYW5nZTsKICAgICAgICAgIGlmIChzb3VyY2VzSW5kZXggIT09IHN0YXRlWzJdKSB7CiAgICAgICAgICAgIHN0YXRlWzNdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzJdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbMl0pOwogICAgICAgICAgc3RhdGVbM10gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVzSW5kZXgsIHN0YXRlWzNdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNhbGxzaXRlKSB7CiAgICAgICAgICBjb25zdCB7IDA6IHNvdXJjZXNJbmRleCwgMTogY2FsbExpbmUsIDI6IGNhbGxDb2x1bW4gfSA9IHJhbmdlLmNhbGxzaXRlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbNF0pIHsKICAgICAgICAgICAgc3RhdGVbNV0gPSAwOwogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9IGVsc2UgaWYgKGNhbGxMaW5lICE9PSBzdGF0ZVs1XSkgewogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZVs0XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzb3VyY2VzSW5kZXgsIHN0YXRlWzRdKTsKICAgICAgICAgIHN0YXRlWzVdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxMaW5lLCBzdGF0ZVs1XSk7CiAgICAgICAgICBzdGF0ZVs2XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBjYWxsQ29sdW1uLCBzdGF0ZVs2XSk7CiAgICAgICAgfQogICAgICAgIGlmIChiaW5kaW5ncykgewogICAgICAgICAgZm9yIChjb25zdCBiaW5kaW5nIG9mIGJpbmRpbmdzKSB7CiAgICAgICAgICAgIGlmIChiaW5kaW5nLmxlbmd0aCA+IDEpCiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIC1iaW5kaW5nLmxlbmd0aCwgMCk7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBiaW5kaW5nWzBdWzBdOwogICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwcmVzc2lvbiwgMCk7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRMaW5lID0gc3RhcnRMaW5lOwogICAgICAgICAgICBsZXQgYmluZGluZ1N0YXJ0Q29sdW1uID0gc3RhcnRDb2x1bW47CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgYmluZGluZy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGV4cFJhbmdlID0gYmluZGluZ1tpXTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRMaW5lID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzFdLCBiaW5kaW5nU3RhcnRMaW5lKTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRDb2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMl0sIGJpbmRpbmdTdGFydENvbHVtbik7CiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzBdLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGVbMF0gPCBlbmRMaW5lKSB7CiAgICAgICAgICBjYXRjaHVwTGluZSh3cml0ZXIsIHN0YXRlWzBdLCBlbmRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gZW5kTGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kQ29sdW1uLCBzdGF0ZVsxXSk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhdGNodXBMaW5lKHdyaXRlciwgbGFzdExpbmUsIGxpbmUpIHsKICAgICAgICBkbyB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoc2VtaWNvbG9uKTsKICAgICAgICB9IHdoaWxlICgrK2xhc3RMaW5lIDwgbGluZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZGVjb2RlKG1hcHBpbmdzKSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IG1hcHBpbmdzOwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIobWFwcGluZ3MpOwogICAgICAgIGNvbnN0IGRlY29kZWQgPSBbXTsKICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgY29uc3QgbGluZSA9IFtdOwogICAgICAgICAgbGV0IHNvcnRlZCA9IHRydWU7CiAgICAgICAgICBsZXQgbGFzdENvbCA9IDA7CiAgICAgICAgICBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgd2hpbGUgKHJlYWRlci5wb3MgPCBzZW1pKSB7CiAgICAgICAgICAgIGxldCBzZWc7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoZ2VuQ29sdW1uIDwgbGFzdENvbCkKICAgICAgICAgICAgICBzb3J0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgbGFzdENvbCA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIHNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlTGluZSk7CiAgICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgICAgbmFtZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBuYW1lc0luZGV4KTsKICAgICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW4sIHNvdXJjZXNJbmRleCwgc291cmNlTGluZSwgc291cmNlQ29sdW1uLCBuYW1lc0luZGV4XTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW5dOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lLnB1c2goc2VnKTsKICAgICAgICAgICAgcmVhZGVyLnBvcysrOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFzb3J0ZWQpCiAgICAgICAgICAgIHNvcnQobGluZSk7CiAgICAgICAgICBkZWNvZGVkLnB1c2gobGluZSk7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8PSBsZW5ndGgpOwogICAgICAgIHJldHVybiBkZWNvZGVkOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHNvcnQobGluZSkgewogICAgICAgIGxpbmUuc29ydChzb3J0Q29tcGFyYXRvcik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydENvbXBhcmF0b3IoYSwgYikgewogICAgICAgIHJldHVybiBhWzBdIC0gYlswXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGUoZGVjb2RlZCkgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGVjb2RlZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgbGluZSA9IGRlY29kZWRbaV07CiAgICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgICAgaWYgKGxpbmUubGVuZ3RoID09PSAwKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsaW5lLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBsaW5lW2pdOwogICAgICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMF0sIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gMSkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMV0sIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsyXSwgc291cmNlTGluZSk7CiAgICAgICAgICAgIHNvdXJjZUNvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzNdLCBzb3VyY2VDb2x1bW4pOwogICAgICAgICAgICBpZiAoc2VnbWVudC5sZW5ndGggPT09IDQpCiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIG5hbWVzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFs0XSwgbmFtZXNJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB3cml0ZXIuZmx1c2goKTsKICAgICAgfQogICAgICBleHBvcnRzMy5kZWNvZGUgPSBkZWNvZGU7CiAgICAgIGV4cG9ydHMzLmRlY29kZUdlbmVyYXRlZFJhbmdlcyA9IGRlY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZGVjb2RlT3JpZ2luYWxTY29wZXMgPSBkZWNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgZXhwb3J0czMuZW5jb2RlID0gZW5jb2RlOwogICAgICBleHBvcnRzMy5lbmNvZGVHZW5lcmF0ZWRSYW5nZXMgPSBlbmNvZGVHZW5lcmF0ZWRSYW5nZXM7CiAgICAgIGV4cG9ydHMzLmVuY29kZU9yaWdpbmFsU2NvcGVzID0gZW5jb2RlT3JpZ2luYWxTY29wZXM7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcwp2YXIgcmVxdWlyZV9tYWdpY19zdHJpbmdfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIyKSA9PiBnbG9iYWxUaGlzLmJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHN0cjIpKSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIEJ1ZmZlciA9PT0gImZ1bmN0aW9uIikgewogICAgICAgIHJldHVybiAoc3RyMikgPT4gQnVmZmVyLmZyb20oc3RyMiwgInV0Zi04IikudG9TdHJpbmcoImJhc2U2NCIpOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIGVudmlyb25tZW50OiBgd2luZG93LmJ0b2FgIG9yIGBCdWZmZXJgIHNob3VsZCBiZSBzdXBwb3J0ZWQuIik7CiAgICAgICAgfTsKICAgICAgfQogICAgfQogICAgdmFyIGJ0b2EgPSAvKiBAX19QVVJFX18gKi8gZ2V0QnRvYSgpOwogICAgdmFyIFNvdXJjZU1hcCA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IocHJvcGVydGllcykgewogICAgICAgIHRoaXMudmVyc2lvbiA9IDM7CiAgICAgICAgdGhpcy5maWxlID0gcHJvcGVydGllcy5maWxlOwogICAgICAgIHRoaXMuc291cmNlcyA9IHByb3BlcnRpZXMuc291cmNlczsKICAgICAgICB0aGlzLnNvdXJjZXNDb250ZW50ID0gcHJvcGVydGllcy5zb3VyY2VzQ29udGVudDsKICAgICAgICB0aGlzLm5hbWVzID0gcHJvcGVydGllcy5uYW1lczsKICAgICAgICB0aGlzLm1hcHBpbmdzID0gc291cmNlbWFwQ29kZWMuZW5jb2RlKHByb3BlcnRpZXMubWFwcGluZ3MpOwogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0ICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy54X2dvb2dsZV9pZ25vcmVMaXN0ID0gcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0OwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHByb3BlcnRpZXMuZGVidWdJZCAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgIHRoaXMuZGVidWdJZCA9IHByb3BlcnRpZXMuZGVidWdJZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpOwogICAgICB9CiAgICAgIHRvVXJsKCkgewogICAgICAgIHJldHVybiAiZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIgKyBidG9hKHRoaXMudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBndWVzc0luZGVudChjb2RlKSB7CiAgICAgIGNvbnN0IGxpbmVzID0gY29kZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgdGFiYmVkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXlx0Ky8udGVzdChsaW5lKSk7CiAgICAgIGNvbnN0IHNwYWNlZCA9IGxpbmVzLmZpbHRlcigobGluZSkgPT4gL14gezIsfS8udGVzdChsaW5lKSk7CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID09PSAwICYmIHNwYWNlZC5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBpZiAodGFiYmVkLmxlbmd0aCA+PSBzcGFjZWQubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuICIJIjsKICAgICAgfQogICAgICBjb25zdCBtaW4gPSBzcGFjZWQucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4gewogICAgICAgIGNvbnN0IG51bVNwYWNlcyA9IC9eICsvLmV4ZWMoY3VycmVudClbMF0ubGVuZ3RoOwogICAgICAgIHJldHVybiBNYXRoLm1pbihudW1TcGFjZXMsIHByZXZpb3VzKTsKICAgICAgfSwgSW5maW5pdHkpOwogICAgICByZXR1cm4gbmV3IEFycmF5KG1pbiArIDEpLmpvaW4oIiAiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFJlbGF0aXZlUGF0aChmcm9tLCB0bykgewogICAgICBjb25zdCBmcm9tUGFydHMgPSBmcm9tLnNwbGl0KC9bL1xcXS8pOwogICAgICBjb25zdCB0b1BhcnRzID0gdG8uc3BsaXQoL1svXFxdLyk7CiAgICAgIGZyb21QYXJ0cy5wb3AoKTsKICAgICAgd2hpbGUgKGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXSkgewogICAgICAgIGZyb21QYXJ0cy5zaGlmdCgpOwogICAgICAgIHRvUGFydHMuc2hpZnQoKTsKICAgICAgfQogICAgICBpZiAoZnJvbVBhcnRzLmxlbmd0aCkgewogICAgICAgIGxldCBpID0gZnJvbVBhcnRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSBmcm9tUGFydHNbaV0gPSAiLi4iOwogICAgICB9CiAgICAgIHJldHVybiBmcm9tUGFydHMuY29uY2F0KHRvUGFydHMpLmpvaW4oIi8iKTsKICAgIH0KICAgIHZhciB0b1N0cmluZzIgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwogICAgZnVuY3Rpb24gaXNPYmplY3QyKHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZzIuY2FsbCh0aGluZykgPT09ICJbb2JqZWN0IE9iamVjdF0iOwogICAgfQogICAgZnVuY3Rpb24gZ2V0TG9jYXRvcihzb3VyY2UpIHsKICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lcyA9IHNvdXJjZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgbGluZU9mZnNldHMgPSBbXTsKICAgICAgZm9yIChsZXQgaSA9IDAsIHBvcyA9IDA7IGkgPCBvcmlnaW5hbExpbmVzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbGluZU9mZnNldHMucHVzaChwb3MpOwogICAgICAgIHBvcyArPSBvcmlnaW5hbExpbmVzW2ldLmxlbmd0aCArIDE7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uIGxvY2F0ZShpbmRleCkgewogICAgICAgIGxldCBpID0gMDsKICAgICAgICBsZXQgaiA9IGxpbmVPZmZzZXRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaSA8IGopIHsKICAgICAgICAgIGNvbnN0IG0gPSBpICsgaiA+PiAxOwogICAgICAgICAgaWYgKGluZGV4IDwgbGluZU9mZnNldHNbbV0pIHsKICAgICAgICAgICAgaiA9IG07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpID0gbSArIDE7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxpbmUgPSBpIC0gMTsKICAgICAgICBjb25zdCBjb2x1bW4gPSBpbmRleCAtIGxpbmVPZmZzZXRzW2xpbmVdOwogICAgICAgIHJldHVybiB7IGxpbmUsIGNvbHVtbiB9OwogICAgICB9OwogICAgfQogICAgdmFyIHdvcmRSZWdleCA9IC9cdy87CiAgICB2YXIgTWFwcGluZ3MgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGhpcmVzKSB7CiAgICAgICAgdGhpcy5oaXJlcyA9IGhpcmVzOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUxpbmUgPSAwOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgdGhpcy5yYXcgPSBbXTsKICAgICAgICB0aGlzLnJhd1NlZ21lbnRzID0gdGhpcy5yYXdbdGhpcy5nZW5lcmF0ZWRDb2RlTGluZV0gPSBbXTsKICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZEVkaXQoc291cmNlSW5kZXgsIGNvbnRlbnQsIGxvYywgbmFtZUluZGV4KSB7CiAgICAgICAgaWYgKGNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50TGVuZ3RoTWludXNPbmUgPSBjb250ZW50Lmxlbmd0aCAtIDE7CiAgICAgICAgICBsZXQgY29udGVudExpbmVFbmQgPSBjb250ZW50LmluZGV4T2YoIlxuIiwgMCk7CiAgICAgICAgICBsZXQgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IC0xOwogICAgICAgICAgd2hpbGUgKGNvbnRlbnRMaW5lRW5kID49IDAgJiYgY29udGVudExlbmd0aE1pbnVzT25lID4gY29udGVudExpbmVFbmQpIHsKICAgICAgICAgICAgY29uc3Qgc2VnbWVudDIgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgICBzZWdtZW50Mi5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQyKTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IGNvbnRlbnRMaW5lRW5kOwogICAgICAgICAgICBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCBjb250ZW50TGluZUVuZCArIDEpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgc2VnbWVudC5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICB0aGlzLmFkdmFuY2UoY29udGVudC5zbGljZShwcmV2aW91c0NvbnRlbnRMaW5lRW5kICsgMSkpOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nKSB7CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2godGhpcy5wZW5kaW5nKTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50KTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gbnVsbDsKICAgICAgfQogICAgICBhZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgb3JpZ2luYWwsIGxvYywgc291cmNlbWFwTG9jYXRpb25zKSB7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTsKICAgICAgICBsZXQgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENoYXJJbmRleCA8IGNodW5rLmVuZCkgewogICAgICAgICAgaWYgKG9yaWdpbmFsW29yaWdpbmFsQ2hhckluZGV4XSA9PT0gIlxuIikgewogICAgICAgICAgICBsb2MubGluZSArPSAxOwogICAgICAgICAgICBsb2MuY29sdW1uID0gMDsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgZmlyc3QgPSB0cnVlOwogICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGhpcy5oaXJlcyB8fCBmaXJzdCB8fCBzb3VyY2VtYXBMb2NhdGlvbnMuaGFzKG9yaWdpbmFsQ2hhckluZGV4KSkgewogICAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzID09PSAiYm91bmRhcnkiKSB7CiAgICAgICAgICAgICAgICBpZiAod29yZFJlZ2V4LnRlc3Qob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdKSkgewogICAgICAgICAgICAgICAgICBpZiAoIWNoYXJJbkhpcmVzQm91bmRhcnkpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvYy5jb2x1bW4gKz0gMTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IDE7CiAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvcmlnaW5hbENoYXJJbmRleCArPSAxOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkdmFuY2Uoc3RyMikgewogICAgICAgIGlmICghc3RyMikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyMi5zcGxpdCgiXG4iKTsKICAgICAgICBpZiAobGluZXMubGVuZ3RoID4gMSkgewogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lcy5sZW5ndGggLSAxOyBpKyspIHsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSsrOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiArPSBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXS5sZW5ndGg7CiAgICAgIH0KICAgIH07CiAgICB2YXIgbiA9ICJcbiI7CiAgICB2YXIgd2FybmVkID0gewogICAgICBpbnNlcnRMZWZ0OiBmYWxzZSwKICAgICAgaW5zZXJ0UmlnaHQ6IGZhbHNlLAogICAgICBzdG9yZU5hbWU6IGZhbHNlCiAgICB9OwogICAgdmFyIE1hZ2ljU3RyaW5nID0gY2xhc3MgX01hZ2ljU3RyaW5nIHsKICAgICAgY29uc3RydWN0b3Ioc3RyaW5nLCBvcHRpb25zID0ge30pIHsKICAgICAgICBjb25zdCBjaHVuayA9IG5ldyBDaHVuaygwLCBzdHJpbmcubGVuZ3RoLCBzdHJpbmcpOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMsIHsKICAgICAgICAgIG9yaWdpbmFsOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogc3RyaW5nIH0sCiAgICAgICAgICBvdXRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBpbnRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBmaXJzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBsYXN0U2VhcmNoZWRDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBieVN0YXJ0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGJ5RW5kOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGZpbGVuYW1lOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5maWxlbmFtZSB9LAogICAgICAgICAgaW5kZW50RXhjbHVzaW9uUmFuZ2VzOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pbmRlbnRFeGNsdXNpb25SYW5nZXMgfSwKICAgICAgICAgIHNvdXJjZW1hcExvY2F0aW9uczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG5ldyBCaXRTZXQoKSB9LAogICAgICAgICAgc3RvcmVkTmFtZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgaW5kZW50U3RyOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogdm9pZCAwIH0sCiAgICAgICAgICBpZ25vcmVMaXN0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pZ25vcmVMaXN0IH0sCiAgICAgICAgICBvZmZzZXQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLm9mZnNldCB8fCAwIH0KICAgICAgICB9KTsKICAgICAgICB0aGlzLmJ5U3RhcnRbMF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5RW5kW3N0cmluZy5sZW5ndGhdID0gY2h1bms7CiAgICAgIH0KICAgICAgYWRkU291cmNlbWFwTG9jYXRpb24oY2hhcikgewogICAgICAgIHRoaXMuc291cmNlbWFwTG9jYXRpb25zLmFkZChjaGFyKTsKICAgICAgfQogICAgICBhcHBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kTGVmdChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5pbnRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2xvbmVkID0gbmV3IF9NYWdpY1N0cmluZyh0aGlzLm9yaWdpbmFsLCB7IGZpbGVuYW1lOiB0aGlzLmZpbGVuYW1lLCBvZmZzZXQ6IHRoaXMub2Zmc2V0IH0pOwogICAgICAgIGxldCBvcmlnaW5hbENodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBjbG9uZWRDaHVuayA9IGNsb25lZC5maXJzdENodW5rID0gY2xvbmVkLmxhc3RTZWFyY2hlZENodW5rID0gb3JpZ2luYWxDaHVuay5jbG9uZSgpOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENodW5rKSB7CiAgICAgICAgICBjbG9uZWQuYnlTdGFydFtjbG9uZWRDaHVuay5zdGFydF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNsb25lZC5ieUVuZFtjbG9uZWRDaHVuay5lbmRdID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICBjb25zdCBuZXh0T3JpZ2luYWxDaHVuayA9IG9yaWdpbmFsQ2h1bmsubmV4dDsKICAgICAgICAgIGNvbnN0IG5leHRDbG9uZWRDaHVuayA9IG5leHRPcmlnaW5hbENodW5rICYmIG5leHRPcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgICBpZiAobmV4dENsb25lZENodW5rKSB7CiAgICAgICAgICAgIGNsb25lZENodW5rLm5leHQgPSBuZXh0Q2xvbmVkQ2h1bms7CiAgICAgICAgICAgIG5leHRDbG9uZWRDaHVuay5wcmV2aW91cyA9IGNsb25lZENodW5rOwogICAgICAgICAgICBjbG9uZWRDaHVuayA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2h1bmsgPSBuZXh0T3JpZ2luYWxDaHVuazsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLmxhc3RDaHVuayA9IGNsb25lZENodW5rOwogICAgICAgIGlmICh0aGlzLmluZGVudEV4Y2x1c2lvblJhbmdlcykgewogICAgICAgICAgY2xvbmVkLmluZGVudEV4Y2x1c2lvblJhbmdlcyA9IHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzLnNsaWNlKCk7CiAgICAgICAgfQogICAgICAgIGNsb25lZC5zb3VyY2VtYXBMb2NhdGlvbnMgPSBuZXcgQml0U2V0KHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICBjbG9uZWQuaW50cm8gPSB0aGlzLmludHJvOwogICAgICAgIGNsb25lZC5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgcmV0dXJuIGNsb25lZDsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gMDsKICAgICAgICBjb25zdCBuYW1lcyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVkTmFtZXMpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gbmV3IE1hcHBpbmdzKG9wdGlvbnMuaGlyZXMpOwogICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgIGNvbnN0IGxvYyA9IGxvY2F0ZShjaHVuay5zdGFydCk7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLmludHJvKTsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgbWFwcGluZ3MuYWRkRWRpdCgKICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICBjaHVuay5jb250ZW50LAogICAgICAgICAgICAgIGxvYywKICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgdGhpcy5vcmlnaW5hbCwgbG9jLCB0aGlzLnNvdXJjZW1hcExvY2F0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgZmlsZTogb3B0aW9ucy5maWxlID8gb3B0aW9ucy5maWxlLnNwbGl0KC9bL1xcXS8pLnBvcCgpIDogdm9pZCAwLAogICAgICAgICAgc291cmNlczogWwogICAgICAgICAgICBvcHRpb25zLnNvdXJjZSA/IGdldFJlbGF0aXZlUGF0aChvcHRpb25zLmZpbGUgfHwgIiIsIG9wdGlvbnMuc291cmNlKSA6IG9wdGlvbnMuZmlsZSB8fCAiIgogICAgICAgICAgXSwKICAgICAgICAgIHNvdXJjZXNDb250ZW50OiBvcHRpb25zLmluY2x1ZGVDb250ZW50ID8gW3RoaXMub3JpZ2luYWxdIDogdm9pZCAwLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdDogdGhpcy5pZ25vcmVMaXN0ID8gW3NvdXJjZUluZGV4XSA6IHZvaWQgMAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBfZW5zdXJlaW5kZW50U3RyKCkgewogICAgICAgIGlmICh0aGlzLmluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLmluZGVudFN0ciA9IGd1ZXNzSW5kZW50KHRoaXMub3JpZ2luYWwpOwogICAgICAgIH0KICAgICAgfQogICAgICBfZ2V0UmF3SW5kZW50U3RyaW5nKCkgewogICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgIHJldHVybiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyID09PSBudWxsID8gIgkiIDogdGhpcy5pbmRlbnRTdHI7CiAgICAgIH0KICAgICAgaW5kZW50KGluZGVudFN0ciwgb3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhdHRlcm4gPSAvXlteXHJcbl0vZ207CiAgICAgICAgaWYgKGlzT2JqZWN0MihpbmRlbnRTdHIpKSB7CiAgICAgICAgICBvcHRpb25zID0gaW5kZW50U3RyOwogICAgICAgICAgaW5kZW50U3RyID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgICAgaW5kZW50U3RyID0gdGhpcy5pbmRlbnRTdHIgfHwgIgkiOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3QgaXNFeGNsdWRlZCA9IHt9OwogICAgICAgIGlmIChvcHRpb25zLmV4Y2x1ZGUpIHsKICAgICAgICAgIGNvbnN0IGV4Y2x1c2lvbnMgPSB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlWzBdID09PSAibnVtYmVyIiA/IFtvcHRpb25zLmV4Y2x1ZGVdIDogb3B0aW9ucy5leGNsdWRlOwogICAgICAgICAgZXhjbHVzaW9ucy5mb3JFYWNoKChleGNsdXNpb24pID0+IHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IGV4Y2x1c2lvblswXTsgaSA8IGV4Y2x1c2lvblsxXTsgaSArPSAxKSB7CiAgICAgICAgICAgICAgaXNFeGNsdWRlZFtpXSA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBsZXQgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IG9wdGlvbnMuaW5kZW50U3RhcnQgIT09IGZhbHNlOwogICAgICAgIGNvbnN0IHJlcGxhY2VyID0gKG1hdGNoKSA9PiB7CiAgICAgICAgICBpZiAoc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgcmV0dXJuIGAke2luZGVudFN0cn0ke21hdGNofWA7CiAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gdHJ1ZTsKICAgICAgICAgIHJldHVybiBtYXRjaDsKICAgICAgICB9OwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIGxldCBjaGFySW5kZXggPSAwOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgaWYgKCFpc0V4Y2x1ZGVkW2NoYXJJbmRleF0pIHsKICAgICAgICAgICAgICBjaHVuay5jb250ZW50ID0gY2h1bmsuY29udGVudC5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICAgICAgd2hpbGUgKGNoYXJJbmRleCA8IGVuZCkgewogICAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGFyID0gdGhpcy5vcmlnaW5hbFtjaGFySW5kZXhdOwogICAgICAgICAgICAgICAgaWYgKGNoYXIgPT09ICJcbiIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICJcciIgJiYgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgewogICAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIGlmIChjaGFySW5kZXggPT09IGNodW5rLnN0YXJ0KSB7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgY2hhckluZGV4KTsKICAgICAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY2hhckluZGV4ICs9IDE7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGNoYXJJbmRleCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaW5zZXJ0KCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgcHJlcGVuZFJpZ2h0KC4uLikgb3IgYXBwZW5kTGVmdCguLi4pIgogICAgICAgICk7CiAgICAgIH0KICAgICAgaW5zZXJ0TGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydExlZnQpIHsKICAgICAgICAgIGNvbnNvbGUud2FybigKICAgICAgICAgICAgIm1hZ2ljU3RyaW5nLmluc2VydExlZnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcuYXBwZW5kTGVmdCguLi4pIGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgICAgd2FybmVkLmluc2VydExlZnQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KTsKICAgICAgfQogICAgICBpbnNlcnRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydFJpZ2h0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRSaWdodCguLi4pIGlzIGRlcHJlY2F0ZWQuIFVzZSBtYWdpY1N0cmluZy5wcmVwZW5kUmlnaHQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRSaWdodCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLnByZXBlbmRSaWdodChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgbW92ZShzdGFydCwgZW5kLCBpbmRleCkgewogICAgICAgIHN0YXJ0ID0gc3RhcnQgKyB0aGlzLm9mZnNldDsKICAgICAgICBlbmQgPSBlbmQgKyB0aGlzLm9mZnNldDsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKGluZGV4ID49IHN0YXJ0ICYmIGluZGV4IDw9IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbW92ZSBhIHNlbGVjdGlvbiBpbnNpZGUgaXRzZWxmIik7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGNvbnN0IG9sZExlZnQgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICBjb25zdCBvbGRSaWdodCA9IGxhc3QubmV4dDsKICAgICAgICBjb25zdCBuZXdSaWdodCA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKCFuZXdSaWdodCAmJiBsYXN0ID09PSB0aGlzLmxhc3RDaHVuaykgcmV0dXJuIHRoaXM7CiAgICAgICAgY29uc3QgbmV3TGVmdCA9IG5ld1JpZ2h0ID8gbmV3UmlnaHQucHJldmlvdXMgOiB0aGlzLmxhc3RDaHVuazsKICAgICAgICBpZiAob2xkTGVmdCkgb2xkTGVmdC5uZXh0ID0gb2xkUmlnaHQ7CiAgICAgICAgaWYgKG9sZFJpZ2h0KSBvbGRSaWdodC5wcmV2aW91cyA9IG9sZExlZnQ7CiAgICAgICAgaWYgKG5ld0xlZnQpIG5ld0xlZnQubmV4dCA9IGZpcnN0OwogICAgICAgIGlmIChuZXdSaWdodCkgbmV3UmlnaHQucHJldmlvdXMgPSBsYXN0OwogICAgICAgIGlmICghZmlyc3QucHJldmlvdXMpIHRoaXMuZmlyc3RDaHVuayA9IGxhc3QubmV4dDsKICAgICAgICBpZiAoIWxhc3QubmV4dCkgewogICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICAgIHRoaXMubGFzdENodW5rLm5leHQgPSBudWxsOwogICAgICAgIH0KICAgICAgICBmaXJzdC5wcmV2aW91cyA9IG5ld0xlZnQ7CiAgICAgICAgbGFzdC5uZXh0ID0gbmV3UmlnaHQgfHwgbnVsbDsKICAgICAgICBpZiAoIW5ld0xlZnQpIHRoaXMuZmlyc3RDaHVuayA9IGZpcnN0OwogICAgICAgIGlmICghbmV3UmlnaHQpIHRoaXMubGFzdENodW5rID0gbGFzdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvdmVyd3JpdGUoc3RhcnQsIGVuZCwgY29udGVudCwgb3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCB7IC4uLm9wdGlvbnMsIG92ZXJ3cml0ZTogIW9wdGlvbnMuY29udGVudE9ubHkgfSk7CiAgICAgIH0KICAgICAgdXBkYXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigicmVwbGFjZW1lbnQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiQ2Fubm90IG92ZXJ3cml0ZSBhIHplcm8tbGVuZ3RoIHJhbmdlIFx1MjAxMyB1c2UgYXBwZW5kTGVmdCBvciBwcmVwZW5kUmlnaHQgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgaWYgKG9wdGlvbnMgPT09IHRydWUpIHsKICAgICAgICAgIGlmICghd2FybmVkLnN0b3JlTmFtZSkgewogICAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICAgIlRoZSBmaW5hbCBhcmd1bWVudCB0byBtYWdpY1N0cmluZy5vdmVyd3JpdGUoLi4uKSBzaG91bGQgYmUgYW4gb3B0aW9ucyBvYmplY3QuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcmljaC1oYXJyaXMvbWFnaWMtc3RyaW5nIgogICAgICAgICAgICApOwogICAgICAgICAgICB3YXJuZWQuc3RvcmVOYW1lID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wdGlvbnMgPSB7IHN0b3JlTmFtZTogdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBzdG9yZU5hbWUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLnN0b3JlTmFtZSA6IGZhbHNlOwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZSA9IG9wdGlvbnMgIT09IHZvaWQgMCA/IG9wdGlvbnMub3ZlcndyaXRlIDogZmFsc2U7CiAgICAgICAgaWYgKHN0b3JlTmFtZSkgewogICAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMuc3RvcmVkTmFtZXMsIG9yaWdpbmFsLCB7CiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgICAgICB2YWx1ZTogdHJ1ZSwKICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGlmIChmaXJzdCkgewogICAgICAgICAgbGV0IGNodW5rID0gZmlyc3Q7CiAgICAgICAgICB3aGlsZSAoY2h1bmsgIT09IGxhc3QpIHsKICAgICAgICAgICAgaWYgKGNodW5rLm5leHQgIT09IHRoaXMuYnlTdGFydFtjaHVuay5lbmRdKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgb3ZlcndyaXRlIGFjcm9zcyBhIHNwbGl0IHBvaW50Iik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICBjaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmaXJzdC5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSwgIW92ZXJ3cml0ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gbmV3IENodW5rKHN0YXJ0LCBlbmQsICIiKS5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSk7CiAgICAgICAgICBsYXN0Lm5leHQgPSBuZXdDaHVuazsKICAgICAgICAgIG5ld0NodW5rLnByZXZpb3VzID0gbGFzdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5pbnRybyA9IGNvbnRlbnQgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZExlZnQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5wcmVwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcmVtb3ZlKHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5pbnRybyA9ICIiOwogICAgICAgICAgY2h1bmsub3V0cm8gPSAiIjsKICAgICAgICAgIGNodW5rLmVkaXQoIiIpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlc2V0KHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5yZXNldCgpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGxhc3RDaGFyKCkgewogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMub3V0cm9bdGhpcy5vdXRyby5sZW5ndGggLSAxXTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsub3V0cm9bY2h1bmsub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHJldHVybiBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsuaW50cm9bY2h1bmsuaW50cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdGhpcy5pbnRyb1t0aGlzLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIHJldHVybiAiIjsKICAgICAgfQogICAgICBsYXN0TGluZSgpIHsKICAgICAgICBsZXQgbGluZUluZGV4ID0gdGhpcy5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpOwogICAgICAgIGxldCBsaW5lU3RyID0gdGhpcy5vdXRybzsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5vdXRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgICAgICBsaW5lU3RyID0gY2h1bmsub3V0cm8gKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5jb250ZW50Lmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmNvbnRlbnQuc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmNvbnRlbnQgKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuaW50cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmludHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLnByZXZpb3VzKTsKICAgICAgICBsaW5lSW5kZXggPSB0aGlzLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gdGhpcy5pbnRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgbGluZVN0cjsKICAgICAgfQogICAgICBzbGljZShzdGFydCA9IDAsIGVuZCA9IHRoaXMub3JpZ2luYWwubGVuZ3RoIC0gdGhpcy5vZmZzZXQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rICYmIChjaHVuay5zdGFydCA+IHN0YXJ0IHx8IGNodW5rLmVuZCA8PSBzdGFydCkpIHsKICAgICAgICAgIGlmIChjaHVuay5zdGFydCA8IGVuZCAmJiBjaHVuay5lbmQgPj0gZW5kKSB7CiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIGlmIChjaHVuayAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuc3RhcnQgIT09IHN0YXJ0KQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgdXNlIHJlcGxhY2VkIGNoYXJhY3RlciAke3N0YXJ0fSBhcyBzbGljZSBzdGFydCBhbmNob3IuYCk7CiAgICAgICAgY29uc3Qgc3RhcnRDaHVuayA9IGNodW5rOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgaWYgKGNodW5rLmludHJvICYmIChzdGFydENodW5rICE9PSBjaHVuayB8fCBjaHVuay5zdGFydCA9PT0gc3RhcnQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5pbnRybzsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGNvbnRhaW5zRW5kID0gY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZDsKICAgICAgICAgIGlmIChjb250YWluc0VuZCAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuZW5kICE9PSBlbmQpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtlbmR9IGFzIHNsaWNlIGVuZCBhbmNob3IuYCk7CiAgICAgICAgICBjb25zdCBzbGljZVN0YXJ0ID0gc3RhcnRDaHVuayA9PT0gY2h1bmsgPyBzdGFydCAtIGNodW5rLnN0YXJ0IDogMDsKICAgICAgICAgIGNvbnN0IHNsaWNlRW5kID0gY29udGFpbnNFbmQgPyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGVuZCAtIGNodW5rLmVuZCA6IGNodW5rLmNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgcmVzdWx0ICs9IGNodW5rLmNvbnRlbnQuc2xpY2Uoc2xpY2VTdGFydCwgc2xpY2VFbmQpOwogICAgICAgICAgaWYgKGNodW5rLm91dHJvICYmICghY29udGFpbnNFbmQgfHwgY2h1bmsuZW5kID09PSBlbmQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5vdXRybzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjb250YWluc0VuZCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICAvLyBUT0RPIGRlcHJlY2F0ZSB0aGlzPyBub3QgcmVhbGx5IHZlcnkgdXNlZnVsCiAgICAgIHNuaXAoc3RhcnQsIGVuZCkgewogICAgICAgIGNvbnN0IGNsb25lID0gdGhpcy5jbG9uZSgpOwogICAgICAgIGNsb25lLnJlbW92ZSgwLCBzdGFydCk7CiAgICAgICAgY2xvbmUucmVtb3ZlKGVuZCwgY2xvbmUub3JpZ2luYWwubGVuZ3RoKTsKICAgICAgICByZXR1cm4gY2xvbmU7CiAgICAgIH0KICAgICAgX3NwbGl0KGluZGV4KSB7CiAgICAgICAgaWYgKHRoaXMuYnlTdGFydFtpbmRleF0gfHwgdGhpcy5ieUVuZFtpbmRleF0pIHJldHVybjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RTZWFyY2hlZENodW5rOwogICAgICAgIGNvbnN0IHNlYXJjaEZvcndhcmQgPSBpbmRleCA+IGNodW5rLmVuZDsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5jb250YWlucyhpbmRleCkpIHJldHVybiB0aGlzLl9zcGxpdENodW5rKGNodW5rLCBpbmRleCk7CiAgICAgICAgICBjaHVuayA9IHNlYXJjaEZvcndhcmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IHRoaXMuYnlFbmRbY2h1bmsuc3RhcnRdOwogICAgICAgIH0KICAgICAgfQogICAgICBfc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpIHsKICAgICAgICBpZiAoY2h1bmsuZWRpdGVkICYmIGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBsb2MgPSBnZXRMb2NhdG9yKHRoaXMub3JpZ2luYWwpKGluZGV4KTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbm5vdCBzcGxpdCBhIGNodW5rIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBlZGl0ZWQgKCR7bG9jLmxpbmV9OiR7bG9jLmNvbHVtbn0gXHUyMDEzICIke2NodW5rLm9yaWdpbmFsfSIpYAogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3Q2h1bmsgPSBjaHVuay5zcGxpdChpbmRleCk7CiAgICAgICAgdGhpcy5ieUVuZFtpbmRleF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5U3RhcnRbaW5kZXhdID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5ieUVuZFtuZXdDaHVuay5lbmRdID0gbmV3Q2h1bms7CiAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBuZXdDaHVuazsKICAgICAgICB0aGlzLmxhc3RTZWFyY2hlZENodW5rID0gY2h1bms7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgbGV0IHN0cjIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0cjIgKz0gY2h1bmsudG9TdHJpbmcoKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHN0cjIgKyB0aGlzLm91dHJvOwogICAgICB9CiAgICAgIGlzRW1wdHkoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggJiYgY2h1bmsuaW50cm8udHJpbSgpIHx8IGNodW5rLmNvbnRlbnQubGVuZ3RoICYmIGNodW5rLmNvbnRlbnQudHJpbSgpIHx8IGNodW5rLm91dHJvLmxlbmd0aCAmJiBjaHVuay5vdXRyby50cmltKCkpCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGxlbmd0aCA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgbGVuZ3RoICs9IGNodW5rLmludHJvLmxlbmd0aCArIGNodW5rLmNvbnRlbnQubGVuZ3RoICsgY2h1bmsub3V0cm8ubGVuZ3RoOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsubmV4dCk7CiAgICAgICAgcmV0dXJuIGxlbmd0aDsKICAgICAgfQogICAgICB0cmltTGluZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbSgiW1xcclxcbl0iKTsKICAgICAgfQogICAgICB0cmltKGNoYXJUeXBlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbVN0YXJ0KGNoYXJUeXBlKS50cmltRW5kKGNoYXJUeXBlKTsKICAgICAgfQogICAgICB0cmltRW5kQWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1FbmQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RDaHVuayA9PT0gY2h1bmspIHsKICAgICAgICAgICAgICB0aGlzLmxhc3RDaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfSB3aGlsZSAoY2h1bmspOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltRW5kQWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1TdGFydChyeCk7CiAgICAgICAgICBpZiAoY2h1bmsuZW5kICE9PSBlbmQpIHsKICAgICAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLmVuZF0gPSBjaHVuazsKICAgICAgICAgICAgdGhpcy5ieVN0YXJ0W2NodW5rLm5leHQuc3RhcnRdID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5uZXh0LmVuZF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFib3J0ZWQpIHJldHVybiB0cnVlOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltU3RhcnRBYm9ydGVkKGNoYXJUeXBlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBoYXNDaGFuZ2VkKCkgewogICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsICE9PSB0aGlzLnRvU3RyaW5nKCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VSZWdleHAoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgZnVuY3Rpb24gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHN0cjIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0cjIsIG1hdGNoLmdyb3Vwcyk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIG1hdGNoQWxsKHJlLCBzdHIyKSB7CiAgICAgICAgICBsZXQgbWF0Y2g7CiAgICAgICAgICBjb25zdCBtYXRjaGVzID0gW107CiAgICAgICAgICB3aGlsZSAobWF0Y2ggPSByZS5leGVjKHN0cjIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0Mihzb3VyY2UpIHx8ICFzb3VyY2UuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiYnVuZGxlLmFkZFNvdXJjZSgpIHRha2VzIGFuIG9iamVjdCB3aXRoIGEgYGNvbnRlbnRgIHByb3BlcnR5LCB3aGljaCBzaG91bGQgYmUgYW4gaW5zdGFuY2Ugb2YgTWFnaWNTdHJpbmcsIGFuZCBhbiBvcHRpb25hbCBgZmlsZW5hbWVgIgogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgWyJmaWxlbmFtZSIsICJpZ25vcmVMaXN0IiwgImluZGVudEV4Y2x1c2lvblJhbmdlcyIsICJzZXBhcmF0b3IiXS5mb3JFYWNoKChvcHRpb24pID0+IHsKICAgICAgICAgIGlmICghaGFzT3duUHJvcC5jYWxsKHNvdXJjZSwgb3B0aW9uKSkgc291cmNlW29wdGlvbl0gPSBzb3VyY2UuY29udGVudFtvcHRpb25dOwogICAgICAgIH0pOwogICAgICAgIGlmIChzb3VyY2Uuc2VwYXJhdG9yID09PSB2b2lkIDApIHsKICAgICAgICAgIHNvdXJjZS5zZXBhcmF0b3IgPSB0aGlzLnNlcGFyYXRvcjsKICAgICAgICB9CiAgICAgICAgaWYgKHNvdXJjZS5maWxlbmFtZSkgewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwodGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUsIHNvdXJjZS5maWxlbmFtZSkpIHsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA9IHRoaXMudW5pcXVlU291cmNlcy5sZW5ndGg7CiAgICAgICAgICAgIHRoaXMudW5pcXVlU291cmNlcy5wdXNoKHsgZmlsZW5hbWU6IHNvdXJjZS5maWxlbmFtZSwgY29udGVudDogc291cmNlLmNvbnRlbnQub3JpZ2luYWwgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCB1bmlxdWVTb3VyY2UgPSB0aGlzLnVuaXF1ZVNvdXJjZXNbdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXV07CiAgICAgICAgICAgIGlmIChzb3VyY2UuY29udGVudC5vcmlnaW5hbCAhPT0gdW5pcXVlU291cmNlLmNvbnRlbnQpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYElsbGVnYWwgc291cmNlOiBzYW1lIGZpbGVuYW1lICgke3NvdXJjZS5maWxlbmFtZX0pLCBkaWZmZXJlbnQgY29udGVudHNgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLnNvdXJjZXMucHVzaChzb3VyY2UpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZChzdHIyLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgY29udGVudDogbmV3IE1hZ2ljU3RyaW5nKHN0cjIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cjIpIHsKICAgICAgICB0aGlzLmludHJvID0gc3RyMiArIHRoaXMuaW50cm87CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuc291cmNlcy5tYXAoKHNvdXJjZSwgaSkgPT4gewogICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gc291cmNlLnNlcGFyYXRvciAhPT0gdm9pZCAwID8gc291cmNlLnNlcGFyYXRvciA6IHRoaXMuc2VwYXJhdG9yOwogICAgICAgICAgY29uc3Qgc3RyMiA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgICB9KS5qb2luKCIiKTsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGJvZHk7CiAgICAgIH0KICAgICAgaXNFbXB0eSgpIHsKICAgICAgICBpZiAodGhpcy5pbnRyby5sZW5ndGggJiYgdGhpcy5pbnRyby50cmltKCkpIHJldHVybiBmYWxzZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VzLnNvbWUoKHNvdXJjZSkgPT4gIXNvdXJjZS5jb250ZW50LmlzRW1wdHkoKSkpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlcy5yZWR1Y2UoCiAgICAgICAgICAobGVuZ3RoLCBzb3VyY2UpID0+IGxlbmd0aCArIHNvdXJjZS5jb250ZW50Lmxlbmd0aCgpLAogICAgICAgICAgdGhpcy5pbnRyby5sZW5ndGgKICAgICAgICApOwogICAgICB9CiAgICAgIHRyaW1MaW5lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltKCJbXFxyXFxuXSIpOwogICAgICB9CiAgICAgIHRyaW0oY2hhclR5cGUpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltU3RhcnQoY2hhclR5cGUpLnRyaW1FbmQoY2hhclR5cGUpOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKCF0aGlzLmludHJvKSB7CiAgICAgICAgICBsZXQgc291cmNlOwogICAgICAgICAgbGV0IGkgPSAwOwogICAgICAgICAgZG8gewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZXNbaSsrXTsKICAgICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfSB3aGlsZSAoIXNvdXJjZS5jb250ZW50LnRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgbGV0IHNvdXJjZTsKICAgICAgICBsZXQgaSA9IHRoaXMuc291cmNlcy5sZW5ndGggLSAxOwogICAgICAgIGRvIHsKICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpLS1dOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgfTsKICAgIE1hZ2ljU3RyaW5nLkJ1bmRsZSA9IEJ1bmRsZTsKICAgIE1hZ2ljU3RyaW5nLlNvdXJjZU1hcCA9IFNvdXJjZU1hcDsKICAgIE1hZ2ljU3RyaW5nLmRlZmF1bHQgPSBNYWdpY1N0cmluZzsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IE1hZ2ljU3RyaW5nOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcwp2YXIgcmVxdWlyZV9yZWNvcmRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBtYWdpY19zdHJpbmdfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX21hZ2ljX3N0cmluZ19janMoKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBJbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5kZXgsIG1pbiwgbWF4ID0gSW5maW5pdHkpIHsKICAgICAgICBzdXBlcihgSW5kZXggJHtpbmRleH0gb3V0c2lkZSBvZiByYW5nZSBbJHttaW59LCAke21heH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uID0gSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uOwogICAgdmFyIFVwZGF0ZVJlY29yZGVyQmFzZSA9IGNsYXNzIF9VcGRhdGVSZWNvcmRlckJhc2UgewogICAgICBkYXRhOwogICAgICBib207CiAgICAgIF9wYXRoOwogICAgICBjb250ZW50OwogICAgICBjb25zdHJ1Y3RvcihkYXRhLCBwYXRoLCBlbmNvZGluZyA9ICJ1dGYtOCIsIGJvbSA9IGZhbHNlKSB7CiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICB0aGlzLmJvbSA9IGJvbTsKICAgICAgICBsZXQgdGV4dDsKICAgICAgICB0cnkgewogICAgICAgICAgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgeyBmYXRhbDogdHJ1ZSwgaWdub3JlQk9NOiBmYWxzZSB9KS5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyAke2VuY29kaW5nfSB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fcGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5jb250ZW50ID0gbmV3IG1hZ2ljX3N0cmluZ18xLmRlZmF1bHQodGV4dCk7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZUZyb21GaWxlRW50cnkoZW50cnkpIHsKICAgICAgICBjb25zdCBjMCA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDAgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMCk7CiAgICAgICAgY29uc3QgYzEgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAxICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDEpOwogICAgICAgIGNvbnN0IGMyID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMiAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgyKTsKICAgICAgICBpZiAoYzAgPT0gMjM5ICYmIGMxID09IDE4NyAmJiBjMiA9PSAxOTEpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTgiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTUgJiYgYzEgPT0gMjU0KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmxlIiwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIGlmIChjMCA9PT0gMjU0ICYmIGMxID09IDI1NSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtMTZiZSIsIHRydWUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgX2Fzc2VydEluZGV4KGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+IHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpIHsKICAgICAgICAgIHRocm93IG5ldyBJbmRleE91dE9mQm91bmRFeGNlcHRpb24oaW5kZXgsIDAsIHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBUaGVzZSBqdXN0IHJlY29yZCBjaGFuZ2VzLgogICAgICBpbnNlcnRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRSaWdodChpbmRleCwgY29udGVudC50b1N0cmluZygpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZW1vdmUoaW5kZXgsIGxlbmd0aCkgewogICAgICAgIHRoaXMuX2Fzc2VydEluZGV4KGluZGV4KTsKICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlKGluZGV4LCBpbmRleCArIGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwbHkoY29udGVudCkgewogICAgICAgIGlmICghY29udGVudC5lcXVhbHModGhpcy5kYXRhKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHRoaXMucGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IEJ1ZmZlci5mcm9tKCh0aGlzLmJvbSA/ICJcdUZFRkYiIDogIiIpICsgdGhpcy5jb250ZW50LnRvU3RyaW5nKCksICJ1dGYtOCIpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBVcGRhdGVSZWNvcmRlckJhc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NvcGVkVHJlZSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBTY29wZWRGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9iYXNlOwogICAgICBzY29wZTsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHRoaXMuX2Jhc2UucGF0aCkpOwogICAgICB9CiAgICAgIGdldCBjb250ZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNvbnRlbnQ7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkRGlyRW50cnkgPSBjbGFzcyBfU2NvcGVkRGlyRW50cnkgewogICAgICBfYmFzZTsKICAgICAgc2NvcGU7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7CiAgICAgIH0KICAgICAgZ2V0IHBhcmVudCgpIHsKICAgICAgICBpZiAoIXRoaXMuX2Jhc2UucGFyZW50IHx8IHRoaXMuX2Jhc2UucGF0aCA9PSB0aGlzLnNjb3BlKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBfU2NvcGVkRGlyRW50cnkodGhpcy5fYmFzZS5wYXJlbnQsIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIGdldCBwYXRoKCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgdGhpcy5fYmFzZS5wYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmRpcnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZGlyczsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZmlsZXM7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZGlyKG5hbWUpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgX1Njb3BlZERpckVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZmlsZShuYW1lKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcigoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgcGF0aCkpLCBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkVHJlZSA9IGNsYXNzIF9TY29wZWRUcmVlIHsKICAgICAgX2Jhc2U7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHNjb3BlKTsKICAgICAgICB0aGlzLl9yb290ID0gbmV3IFNjb3BlZERpckVudHJ5KHRoaXMuX2Jhc2UuZ2V0RGlyKG5vcm1hbGl6ZWRTY29wZSksIG5vcm1hbGl6ZWRTY29wZSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3Q7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX1Njb3BlZFRyZWUodGhpcy5fYmFzZS5icmFuY2goKSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgbWVyZ2Uob3RoZXIsIHN0cmF0ZWd5KSB7CiAgICAgICAgY29uc3Qgc2VsZjIgPSB0aGlzOwogICAgICAgIGNvbnN0IGRlbGVnYXRlID0gbmV3IGNsYXNzIGV4dGVuZHMgZGVsZWdhdGVfMS5EZWxlZ2F0ZVRyZWUgewogICAgICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgICAgIHJldHVybiBvdGhlci5hY3Rpb25zLm1hcCgoYWN0aW9uKSA9PiBzZWxmMi5fZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfShvdGhlcik7CiAgICAgICAgdGhpcy5fYmFzZS5tZXJnZShkZWxlZ2F0ZSwgc3RyYXRlZ3kpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZFRleHQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlYWRKc29uKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkSnNvbih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5leGlzdHModGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldERpcih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWREaXJFbnRyeShlbnRyeSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uub3ZlcndyaXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuYmVnaW5VcGRhdGUodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jb21taXRVcGRhdGUocmVjb3JkKTsKICAgICAgfQogICAgICAvLyBTdHJ1Y3R1cmFsIG1ldGhvZHMuCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY3JlYXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmRlbGV0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVuYW1lKHRoaXMuX2Z1bGxQYXRoKGZyb20pLCB0aGlzLl9mdWxsUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5hcHBseSh0aGlzLl9mdWxsUGF0aEFjdGlvbihhY3Rpb24pLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgY29uc3Qgc2NvcGVkQWN0aW9ucyA9IFtdOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRoaXMuX2Jhc2UuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFhY3Rpb24ucGF0aC5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFjdGlvbi5raW5kICE9PSAiciIpIHsKICAgICAgICAgICAgc2NvcGVkQWN0aW9ucy5wdXNoKHsKICAgICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi5wYXRoKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi50by5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIHNjb3BlZEFjdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICAgIHBhdGg6ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24ucGF0aCkpLAogICAgICAgICAgICAgIHRvOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnRvKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBzY29wZWRBY3Rpb25zOwogICAgICB9CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfZnVsbFBhdGgocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKHRoaXMuX3Jvb3Quc2NvcGUsICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbikgewogICAgICAgIGxldCBmdWxsUGF0aEFjdGlvbjsKICAgICAgICBpZiAoYWN0aW9uLmtpbmQgPT09ICJyIikgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpLAogICAgICAgICAgICB0bzogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnRvKQogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVsbFBhdGhBY3Rpb247CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZWRUcmVlID0gU2NvcGVkVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaG9zdC10cmVlLmpzCnZhciByZXF1aXJlX2hvc3RfdHJlZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBleHBvcnRzMi5Ib3N0VHJlZSA9IGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBkZWxlZ2F0ZV8xID0gcmVxdWlyZV9kZWxlZ2F0ZSgpOwogICAgdmFyIGVudHJ5XzEgPSByZXF1aXJlX2VudHJ5KCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciByZWNvcmRlcl8xID0gcmVxdWlyZV9yZWNvcmRlcigpOwogICAgdmFyIHNjb3BlZF8xID0gcmVxdWlyZV9zY29wZWQyKCk7CiAgICB2YXIgX3VuaXF1ZUlkID0gMDsKICAgIHZhciBIb3N0RGlyRW50cnkgPSBjbGFzcyB7CiAgICAgIHBhcmVudDsKICAgICAgcGF0aDsKICAgICAgX2hvc3Q7CiAgICAgIF90cmVlOwogICAgICBjb25zdHJ1Y3RvcihwYXJlbnQsIHBhdGgsIF9ob3N0LCBfdHJlZSkgewogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIHRoaXMucGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX3RyZWUgPSBfdHJlZTsKICAgICAgfQogICAgICBnZXQgc3ViZGlycygpIHsKICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5saXN0KHRoaXMucGF0aCkuZmlsdGVyKChmcmFnbWVudCkgPT4gdGhpcy5faG9zdC5pc0RpcmVjdG9yeSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmZpbGVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRmlsZSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXREaXIoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXQoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpLmZvckVhY2goKGZpbGUpID0+IHZpc2l0b3IoZmlsZS5wYXRoLCBmaWxlKSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgIT09IGludGVyZmFjZV8xLkZpbGVWaXNpdG9yQ2FuY2VsVG9rZW4pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpIHsKICAgICAgICBmdW5jdGlvbiBfcmVjdXJzZShlbnRyeSkgewogICAgICAgICAgcmV0dXJuIGVudHJ5LnN1YmRpcnMucmVkdWNlKChmaWxlcywgc3ViZGlyKSA9PiBbLi4uZmlsZXMsIC4uLl9yZWN1cnNlKGVudHJ5LmRpcihzdWJkaXIpKV0sIGVudHJ5LnN1YmZpbGVzLm1hcCgoc3ViZmlsZSkgPT4gZW50cnkuZmlsZShzdWJmaWxlKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3JlY3Vyc2UodGhpcyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0RGlyRW50cnkgPSBIb3N0RGlyRW50cnk7CiAgICB2YXIgSG9zdFRyZWUgPSBjbGFzcyBfSG9zdFRyZWUgewogICAgICBfYmFja2VuZDsKICAgICAgX2lkID0gLS1fdW5pcXVlSWQ7CiAgICAgIF9yZWNvcmQ7CiAgICAgIF9yZWNvcmRTeW5jOwogICAgICBfYW5jZXN0cnkgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZGlyQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgc3RhdGljIGlzSG9zdFRyZWUodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiB0cmVlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgdHJlZS5fYW5jZXN0cnkgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrZW5kID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuRW1wdHkoKSkgewogICAgICAgIHRoaXMuX2JhY2tlbmQgPSBfYmFja2VuZDsKICAgICAgICB0aGlzLl9yZWNvcmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5Db3JkSG9zdChuZXcgY29yZV8xLnZpcnR1YWxGcy5TYWZlUmVhZG9ubHlIb3N0KF9iYWNrZW5kKSk7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYyA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcy5fcmVjb3JkKTsKICAgICAgfQogICAgICBfbm9ybWFsaXplUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsQ3JlYXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsT3ZlcndyaXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxPdmVyd3JpdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbERlbGV0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsUmVuYW1lKHBhdGgpOwogICAgICB9CiAgICAgIGJyYW5jaCgpIHsKICAgICAgICBjb25zdCBicmFuY2hlZFRyZWUgPSBuZXcgX0hvc3RUcmVlKHRoaXMuX2JhY2tlbmQpOwogICAgICAgIGJyYW5jaGVkVHJlZS5fcmVjb3JkID0gdGhpcy5fcmVjb3JkLmNsb25lKCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdChicmFuY2hlZFRyZWUuX3JlY29yZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9hbmNlc3RyeSA9IG5ldyBTZXQodGhpcy5fYW5jZXN0cnkpLmFkZCh0aGlzLl9pZCk7CiAgICAgICAgcmV0dXJuIGJyYW5jaGVkVHJlZTsKICAgICAgfQogICAgICBpc0FuY2VzdG9yT2YodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJlZS5fYW5jZXN0cnkuaGFzKHRoaXMuX2lkKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBkZWxlZ2F0ZV8xLkRlbGVnYXRlVHJlZSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuaXNBbmNlc3Rvck9mKHRyZWUuX290aGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBzY29wZWRfMS5TY29wZWRUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fYmFzZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBtZXJnZShvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgICBpZiAob3RoZXIgPT09IHRoaXMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuaXNBbmNlc3Rvck9mKG90aGVyKSkgewogICAgICAgICAgc3RyYXRlZ3kgfD0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNyZWF0aW9uQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3QpID09IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dDcmVhdGlvbkNvbmZsaWN0OwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dPdmVyd3JpdGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0OwogICAgICAgIGNvbnN0IGRlbGV0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dEZWxldGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0OwogICAgICAgIG90aGVyLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCBjb250ZW50IH0gPSBhY3Rpb247CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxDcmVhdGUocGF0aCkgfHwgdGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSB8fCB0aGlzLmV4aXN0cyhwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY3JlYXRpb25Db25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAibyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSAmJiAhb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxPdmVyd3JpdGUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nQ29udGVudCA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0NvbnRlbnQgJiYgY29udGVudC5lcXVhbHMoZXhpc3RpbmdDb250ZW50KSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIW92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5fcmVjb3JkLndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJyIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgdG8gfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsUmVuYW1lKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fcmVjb3JkLndpbGxSZW5hbWVUbyhwYXRoLCB0bykpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMucmVuYW1lKHBhdGgsIHRvKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAiZCI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGggfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIXRoaXMuZXhpc3RzKHBhdGgpICYmICFkZWxldGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmRTeW5jLmRlbGV0ZShwYXRoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBnZXQgcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXREaXIoIi8iKTsKICAgICAgfQogICAgICAvLyBSZWFkb25seS4KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICByZXR1cm4gZW50cnkgPyBlbnRyeS5jb250ZW50IDogbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICBpZiAoZGF0YSA9PT0gbnVsbCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoInV0Zi04IiwgeyBmYXRhbDogdHJ1ZSB9KTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGRhdGEpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgVHlwZUVycm9yIHx8IGUuY29kZSA9PT0gIkVSUl9FTkNPRElOR19JTlZBTElEX0VOQ09ERURfREFUQSIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyBVVEYtOCB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnJlYWRUZXh0KHBhdGgpOwogICAgICAgIGNvbnN0IGVycm9ycyA9IFtdOwogICAgICAgIGNvbnN0IHJlc3VsdCA9ICgwLCBqc29uY19wYXJzZXJfMS5wYXJzZSkoY29udGVudCwgZXJyb3JzLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSB9KTsKICAgICAgICBpZiAoZXJyb3JzWzBdKSB7CiAgICAgICAgICBjb25zdCB7IGVycm9yLCBvZmZzZXQgfSA9IGVycm9yc1swXTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHBhcnNlICIke3BhdGh9IiBhcyBKU09OLiAkeygwLCBqc29uY19wYXJzZXJfMS5wcmludFBhcnNlRXJyb3JDb2RlKShlcnJvcil9IGF0IG9mZnNldDogJHtvZmZzZXR9LmApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZFN5bmMuaXNGaWxlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX3JlY29yZFN5bmMuaXNEaXJlY3RvcnkocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBlbnRyeV8xLkxhenlGaWxlRW50cnkocCwgKCkgPT4gQnVmZmVyLmZyb20odGhpcy5fcmVjb3JkU3luYy5yZWFkKHApKSk7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgbGV0IG1heWJlQ2FjaGUgPSB0aGlzLl9kaXJDYWNoZS5nZXQocCk7CiAgICAgICAgaWYgKCFtYXliZUNhY2hlKSB7CiAgICAgICAgICBsZXQgcGFyZW50ID0gKDAsIGNvcmVfMS5kaXJuYW1lKShwKTsKICAgICAgICAgIGlmIChwID09PSBwYXJlbnQpIHsKICAgICAgICAgICAgcGFyZW50ID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIG1heWJlQ2FjaGUgPSBuZXcgSG9zdERpckVudHJ5KHBhcmVudCAmJiB0aGlzLmdldERpcihwYXJlbnQpLCBwLCB0aGlzLl9yZWNvcmRTeW5jLCB0aGlzKTsKICAgICAgICAgIHRoaXMuX2RpckNhY2hlLnNldChwLCBtYXliZUNhY2hlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1heWJlQ2FjaGU7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHRoaXMucm9vdC52aXNpdCgocGF0aCwgZW50cnkpID0+IHsKICAgICAgICAgIHZpc2l0b3IocGF0aCwgZW50cnkpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKCF0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGJlZ2luVXBkYXRlKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVjb3JkZXJfMS5VcGRhdGVSZWNvcmRlckJhc2UuY3JlYXRlRnJvbUZpbGVFbnRyeShlbnRyeSk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIGlmIChyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSkgewogICAgICAgICAgY29uc3QgcGF0aCA9IHJlY29yZC5wYXRoOwogICAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgbmV3Q29udGVudCA9IHJlY29yZC5hcHBseShlbnRyeS5jb250ZW50KTsKICAgICAgICAgICAgaWYgKCFuZXdDb250ZW50LmVxdWFscyhlbnRyeS5jb250ZW50KSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKHBhdGgsIG5ld0NvbnRlbnQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5JbnZhbGlkVXBkYXRlUmVjb3JkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIFN0cnVjdHVyYWwgbWV0aG9kcy4KICAgICAgY3JlYXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBjb25zdCBjID0gdHlwZW9mIGNvbnRlbnQgPT0gInN0cmluZyIgPyBCdWZmZXIuZnJvbShjb250ZW50KSA6IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5fcmVjb3JkLmNyZWF0ZShwLCBjKS5zdWJzY3JpYmUoKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMucmVuYW1lKHRoaXMuX25vcm1hbGl6ZVBhdGgoZnJvbSksIHRoaXMuX25vcm1hbGl6ZVBhdGgodG8pKTsKICAgICAgfQogICAgICBhcHBseShhY3Rpb24sIHN0cmF0ZWd5KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIkFwcGx5IG5vdCBpbXBsZW1lbnRlZCBvbiBob3N0IHRyZWVzLiIpOwogICAgICB9CiAgICAgICpnZW5lcmF0ZUFjdGlvbnMoKSB7CiAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgdGhpcy5fcmVjb3JkLnJlY29yZHMoKSkgewogICAgICAgICAgc3dpdGNoIChyZWNvcmQua2luZCkgewogICAgICAgICAgICBjYXNlICJjcmVhdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJjIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAibyIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IEJ1ZmZlci5mcm9tKHJlY29yZC5jb250ZW50KQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInJlbmFtZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogInIiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLmZyb20sCiAgICAgICAgICAgICAgICB0bzogcmVjb3JkLnRvCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiZCIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aAogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZ2VuZXJhdGVBY3Rpb25zKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdFRyZWUgPSBIb3N0VHJlZTsKICAgIHZhciBIb3N0Q3JlYXRlVHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcihob3N0KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBjb25zdCB0ZW1wSG9zdCA9IG5ldyBIb3N0VHJlZShob3N0KTsKICAgICAgICB0ZW1wSG9zdC52aXNpdCgocGF0aCkgPT4gewogICAgICAgICAgY29uc3QgY29udGVudCA9IHRlbXBIb3N0LnJlYWQocGF0aCk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RDcmVhdGVUcmVlID0gSG9zdENyZWF0ZVRyZWU7CiAgICB2YXIgRmlsdGVySG9zdFRyZWUgPSBjbGFzcyBleHRlbmRzIEhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IodHJlZSwgZmlsdGVyID0gKCkgPT4gdHJ1ZSkgewogICAgICAgIGNvbnN0IG5ld0JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TaW1wbGVNZW1vcnlIb3N0KCk7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCYWNrZW5kID0gdHJlZS5fYmFja2VuZDsKICAgICAgICBjb25zdCBwZW5kaW5nUGF0aHMgPSBbIi8iXTsKICAgICAgICB3aGlsZSAocGVuZGluZ1BhdGhzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gcGVuZGluZ1BhdGhzLnBvcCgpOwogICAgICAgICAgaWYgKGN1cnJlbnRQYXRoID09PSB2b2lkIDApIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgaXNEaXJlY3RvcnkgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0RpcmVjdG9yeShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRGlyZWN0b3J5ID0gdmFsKTsKICAgICAgICAgIGlmIChpc0RpcmVjdG9yeSkgewogICAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQubGlzdChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IHBlbmRpbmdQYXRocy5wdXNoKC4uLnZhbC5tYXAoKHApID0+ICgwLCBjb3JlXzEuam9pbikoY3VycmVudFBhdGgsIHApKSkpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0ZpbGUgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0ZpbGUoY3VycmVudFBhdGgpLnN1YnNjcmliZSgodmFsKSA9PiBpc0ZpbGUgPSB2YWwpOwogICAgICAgICAgaWYgKCFpc0ZpbGUgfHwgIWZpbHRlcihjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29udGVudCA9IG51bGw7CiAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQucmVhZChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGNvbnRlbnQgPSB2YWwpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT09IG51bGwpIHsKICAgICAgICAgICAgbmV3QmFja2VuZC53cml0ZShjdXJyZW50UGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyKG5ld0JhY2tlbmQpOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRyZWUuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFmaWx0ZXIoYWN0aW9uLnBhdGgpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgICB0aGlzLmNyZWF0ZShhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgICB0aGlzLmRlbGV0ZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm8iOgogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInIiOgogICAgICAgICAgICAgIHRoaXMucmVuYW1lKGFjdGlvbi5wYXRoLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gRmlsdGVySG9zdFRyZWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3N0YXRpYy5qcwp2YXIgcmVxdWlyZV9zdGF0aWMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZXhwb3J0czIuYnJhbmNoID0gYnJhbmNoOwogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTI7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gbmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKCk7CiAgICB9CiAgICBmdW5jdGlvbiBicmFuY2godHJlZSkgewogICAgICByZXR1cm4gdHJlZS5icmFuY2goKTsKICAgIH0KICAgIGZ1bmN0aW9uIG1lcmdlMih0cmVlLCBvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgdHJlZS5tZXJnZShvdGhlciwgc3RyYXRlZ3kpOwogICAgICByZXR1cm4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBob3N0X3RyZWVfMS5Ib3N0VHJlZSkgewogICAgICAgIHJldHVybiBbCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKSwKICAgICAgICAgIG5ldyBob3N0X3RyZWVfMS5GaWx0ZXJIb3N0VHJlZSh0cmVlLCAocGF0aCwgZW50cnkpID0+ICFwcmVkaWNhdGUocGF0aCwgZW50cnkpKQogICAgICAgIF07CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9udWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IGV4cG9ydHMyLk51bGxUcmVlRGlyRW50cnkgPSBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYENhbm5vdCBjcmVhdGUgZmlsZSAiJHtwYXRofSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbjsKICAgIHZhciBOdWxsVHJlZURpckVudHJ5ID0gY2xhc3MgX051bGxUcmVlRGlyRW50cnkgewogICAgICBwYXRoOwogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLnBhdGggPT0gIi8iID8gbnVsbCA6IG5ldyBfTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLmRpcm5hbWUpKHRoaXMucGF0aCkpOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICB0aGlzLnBhdGggPSBwYXRoOwogICAgICB9CiAgICAgIHN1YmRpcnMgPSBbXTsKICAgICAgc3ViZmlsZXMgPSBbXTsKICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBuYW1lKSk7CiAgICAgIH0KICAgICAgZmlsZShfbmFtZSkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHZpc2l0KCkgewogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IE51bGxUcmVlRGlyRW50cnk7CiAgICB2YXIgTnVsbFRyZWUgPSBjbGFzcyBfTnVsbFRyZWUgewogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlKCk7CiAgICAgIH0KICAgICAgbWVyZ2UoX290aGVyLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICByb290ID0gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICAvLyBTaW1wbGUgcmVhZG9ubHkgZmlsZSBzeXN0ZW0gb3BlcmF0aW9ucy4KICAgICAgZXhpc3RzKF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHJlYWQoX3BhdGgpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGdldChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSA/IHJlY29yZC5wYXRoIDogIjx1bmtub3duPiIpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBzdHJ1Y3R1cmUgb2YgdGhlIGhvc3QuCiAgICAgIGNvcHkocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgYXBwbHkoX2FjdGlvbiwgX3N0cmF0ZWd5KSB7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWUgPSBOdWxsVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanMKdmFyIHJlcXVpcmVfY2FsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanMKdmFyIHJlcXVpcmVfc2NoZW1hdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvc2NoZW1hdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBjYWxsXzEgPSByZXF1aXJlX2NhbGwoKTsKICAgIHZhciBzY29wZWRfMSA9IHJlcXVpcmVfc2NvcGVkMigpOwogICAgdmFyIEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpY3MgaGFzIGludmFsaWQgbmFtZTogIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0ltcGwgPSBjbGFzcyB7CiAgICAgIF9kZXNjcmlwdGlvbjsKICAgICAgX2ZhY3Rvcnk7CiAgICAgIF9jb2xsZWN0aW9uOwogICAgICBfZW5naW5lOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9mYWN0b3J5LCBfY29sbGVjdGlvbiwgX2VuZ2luZSkgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2ZhY3RvcnkgPSBfZmFjdG9yeTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uID0gX2NvbGxlY3Rpb247CiAgICAgICAgdGhpcy5fZW5naW5lID0gX2VuZ2luZTsKICAgICAgICBpZiAoIV9kZXNjcmlwdGlvbi5uYW1lLm1hdGNoKC9eWy1AL18uYS16QS1aMC05XSskLykpIHsKICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24oX2Rlc2NyaXB0aW9uLm5hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBjb2xsZWN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uOwogICAgICB9CiAgICAgIGNhbGwob3B0aW9ucywgaG9zdCwgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29udGV4dCh0aGlzLCBwYXJlbnRDb250ZXh0LCBleGVjdXRpb25PcHRpb25zKTsKICAgICAgICByZXR1cm4gaG9zdC5waXBlKCgwLCByeGpzXzEuZmlyc3QpKCksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodHJlZSkgPT4gdGhpcy5fZW5naW5lLnRyYW5zZm9ybU9wdGlvbnModGhpcywgb3B0aW9ucywgY29udGV4dCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKG8pID0+IFt0cmVlLCBvXSkpKSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChbdHJlZSwgdHJhbnNmb3JtZWRPcHRpb25zXSkgPT4gewogICAgICAgICAgbGV0IGlucHV0OwogICAgICAgICAgbGV0IHNjb3BlZCA9IGZhbHNlOwogICAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5zY29wZSkgewogICAgICAgICAgICBzY29wZWQgPSB0cnVlOwogICAgICAgICAgICBpbnB1dCA9IG5ldyBzY29wZWRfMS5TY29wZWRUcmVlKHRyZWUsIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB0cmVlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHRoaXMuX2ZhY3RvcnkodHJhbnNmb3JtZWRPcHRpb25zKSwgaW5wdXQsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvdXRwdXQpID0+IHsKICAgICAgICAgICAgaWYgKG91dHB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY29wZWQpIHsKICAgICAgICAgICAgICB0cmVlLm1lcmdlKG91dHB1dCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0ltcGwgPSBTY2hlbWF0aWNJbXBsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBleHBvcnRzMi5Db2xsZWN0aW9uSW1wbCA9IGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gZXhwb3J0czIuQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgbnVsbF8xID0gcmVxdWlyZV9udWxsKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHNjaGVtYXRpY18xID0gcmVxdWlyZV9zY2hlbWF0aWMoKTsKICAgIHZhciBVbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodXJsMykgewogICAgICAgIHN1cGVyKGBVbmtub3duIFByb3RvY29sIG9uIHVybCAiJHt1cmwzfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBVbmtub3duVXJsU291cmNlUHJvdG9jb2w7CiAgICB2YXIgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBVbmtub3duIGNvbGxlY3Rpb24gIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDaXJjdWxhciBjb2xsZWN0aW9uIHJlZmVyZW5jZSAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb247CiAgICB2YXIgVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBjb2xsZWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpYyAiJHtuYW1lfSIgbm90IGZvdW5kIGluIGNvbGxlY3Rpb24gIiR7Y29sbGVjdGlvbi5uYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbjsKICAgIHZhciBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBBIHNjaGVtYXRpYyB3YXMgY2FsbGVkIGZyb20gYSBkaWZmZXJlbnQgZW5naW5lIGFzIGl0cyBwYXJlbnQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uOwogICAgdmFyIFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgc2NoZW1hdGljKSB7CiAgICAgICAgY29uc3QgYWRkZW5kdW0gPSBzY2hlbWF0aWMgPyBgIGluIHNjaGVtYXRpYyAiJHtzY2hlbWF0aWMubmFtZX0iYCA6ICIiOwogICAgICAgIHN1cGVyKGBVbnJlZ2lzdGVyZWQgdGFzayAiJHtuYW1lfSIke2FkZGVuZHVtfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpZCkgewogICAgICAgIHN1cGVyKGBVbmtub3duIHRhc2sgZGVwZW5kZW5jeSBbSUQ6ICR7aWQuaWR9XS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbjsKICAgIHZhciBDb2xsZWN0aW9uSW1wbCA9IGNsYXNzIHsKICAgICAgX2Rlc2NyaXB0aW9uOwogICAgICBfZW5naW5lOwogICAgICBiYXNlRGVzY3JpcHRpb25zOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9lbmdpbmUsIGJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9lbmdpbmUgPSBfZW5naW5lOwogICAgICAgIHRoaXMuYmFzZURlc2NyaXB0aW9ucyA9IGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgbmFtZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5kZXNjcmlwdGlvbi5uYW1lIHx8ICI8dW5rbm93bj4iOwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuY3JlYXRlU2NoZW1hdGljKG5hbWUsIHRoaXMsIGFsbG93UHJpdmF0ZSk7CiAgICAgIH0KICAgICAgbGlzdFNjaGVtYXRpY05hbWVzKGluY2x1ZGVIaWRkZW4pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lLmxpc3RTY2hlbWF0aWNOYW1lcyh0aGlzLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gQ29sbGVjdGlvbkltcGw7CiAgICB2YXIgVGFza1NjaGVkdWxlciA9IGNsYXNzIF9UYXNrU2NoZWR1bGVyIHsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9xdWV1ZSA9IG5ldyBjb3JlXzEuUHJpb3JpdHlRdWV1ZSgoeCwgeSkgPT4geC5wcmlvcml0eSAtIHkucHJpb3JpdHkpOwogICAgICBfdGFza0lkcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIHN0YXRpYyBfdGFza0lkQ291bnRlciA9IDE7CiAgICAgIGNvbnN0cnVjdG9yKF9jb250ZXh0KSB7CiAgICAgICAgdGhpcy5fY29udGV4dCA9IF9jb250ZXh0OwogICAgICB9CiAgICAgIF9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpIHsKICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLnNpemUgPT09IDApIHsKICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcmlvID0gWy4uLmRlcGVuZGVuY2llc10ucmVkdWNlKChwcmlvMiwgdGFzaykgPT4gcHJpbzIgKyB0YXNrLnByaW9yaXR5LCAxKTsKICAgICAgICByZXR1cm4gcHJpbzsKICAgICAgfQogICAgICBfbWFwRGVwZW5kZW5jaWVzKGRlcGVuZGVuY2llcykgewogICAgICAgIGlmICghZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza3MgPSBkZXBlbmRlbmNpZXMubWFwKChkZXApID0+IHsKICAgICAgICAgIGNvbnN0IHRhc2sgPSB0aGlzLl90YXNrSWRzLmdldChkZXApOwogICAgICAgICAgaWYgKCF0YXNrKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVGFza0RlcGVuZGVuY3lFeGNlcHRpb24oZGVwKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2V0KHRhc2tzKTsKICAgICAgfQogICAgICBzY2hlZHVsZSh0YXNrQ29uZmlndXJhdGlvbikgewogICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMuX21hcERlcGVuZGVuY2llcyh0YXNrQ29uZmlndXJhdGlvbi5kZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHByaW9yaXR5ID0gdGhpcy5fY2FsY3VsYXRlUHJpb3JpdHkoZGVwZW5kZW5jaWVzKTsKICAgICAgICBjb25zdCB0YXNrID0gewogICAgICAgICAgaWQ6IF9UYXNrU2NoZWR1bGVyLl90YXNrSWRDb3VudGVyKyssCiAgICAgICAgICBwcmlvcml0eSwKICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHRhc2tDb25maWd1cmF0aW9uLAogICAgICAgICAgY29udGV4dDogdGhpcy5fY29udGV4dAogICAgICAgIH07CiAgICAgICAgdGhpcy5fcXVldWUucHVzaCh0YXNrKTsKICAgICAgICBjb25zdCBpZCA9IHsgaWQ6IHRhc2suaWQgfTsKICAgICAgICB0aGlzLl90YXNrSWRzLnNldChpZCwgdGFzayk7CiAgICAgICAgcmV0dXJuIGlkOwogICAgICB9CiAgICAgIGZpbmFsaXplKCkgewogICAgICAgIGNvbnN0IHRhc2tzID0gdGhpcy5fcXVldWUudG9BcnJheSgpOwogICAgICAgIHRoaXMuX3F1ZXVlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fdGFza0lkcy5jbGVhcigpOwogICAgICAgIHJldHVybiB0YXNrczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBUYXNrU2NoZWR1bGVyOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZSA9IGNsYXNzIHsKICAgICAgX2hvc3Q7CiAgICAgIF93b3JrZmxvdzsKICAgICAgX2NvbGxlY3Rpb25DYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9zY2hlbWF0aWNDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgICBfdGFza1NjaGVkdWxlcnMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF93b3JrZmxvdykgewogICAgICAgIHRoaXMuX2hvc3QgPSBfaG9zdDsKICAgICAgICB0aGlzLl93b3JrZmxvdyA9IF93b3JrZmxvdzsKICAgICAgfQogICAgICBnZXQgd29ya2Zsb3coKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtmbG93IHx8IG51bGw7CiAgICAgIH0KICAgICAgZ2V0IGRlZmF1bHRNZXJnZVN0cmF0ZWd5KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0LmRlZmF1bHRNZXJnZVN0cmF0ZWd5IHx8IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdDsKICAgICAgfQogICAgICBjcmVhdGVDb2xsZWN0aW9uKG5hbWUsIHJlcXVlc3RlcikgewogICAgICAgIGxldCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvbkNhY2hlLmdldChuYW1lKTsKICAgICAgICBpZiAoY29sbGVjdGlvbikgewogICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247CiAgICAgICAgfQogICAgICAgIGNvbnN0IFtkZXNjcmlwdGlvbiwgYmFzZXNdID0gdGhpcy5fY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcj8uZGVzY3JpcHRpb24pOwogICAgICAgIGNvbGxlY3Rpb24gPSBuZXcgQ29sbGVjdGlvbkltcGwoZGVzY3JpcHRpb24sIHRoaXMsIGJhc2VzKTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuc2V0KG5hbWUsIGNvbGxlY3Rpb24pOwogICAgICAgIHRoaXMuX3NjaGVtYXRpY0NhY2hlLnNldChjb2xsZWN0aW9uLCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpKTsKICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgfQogICAgICBfY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3RlciwgcGFyZW50TmFtZXMpIHsKICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcik7CiAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50TmFtZXMgJiYgcGFyZW50TmFtZXMuaGFzKGRlc2NyaXB0aW9uLm5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBjb25zdCBiYXNlcyA9IG5ldyBBcnJheSgpOwogICAgICAgIGlmIChkZXNjcmlwdGlvbi5leHRlbmRzKSB7CiAgICAgICAgICBwYXJlbnROYW1lcyA9IChwYXJlbnROYW1lcyB8fCAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKS5hZGQoZGVzY3JpcHRpb24ubmFtZSk7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2VOYW1lIG9mIGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgICAgY29uc3QgW2Jhc2UsIGJhc2VCYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24oYmFzZU5hbWUsIGRlc2NyaXB0aW9uLCBuZXcgU2V0KHBhcmVudE5hbWVzKSk7CiAgICAgICAgICAgIGJhc2VzLnVuc2hpZnQoYmFzZSwgLi4uYmFzZUJhc2VzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtkZXNjcmlwdGlvbiwgYmFzZXNdOwogICAgICB9CiAgICAgIGNyZWF0ZUNvbnRleHQoc2NoZW1hdGljLCBwYXJlbnQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5lbmdpbmUgJiYgcGFyZW50LmVuZ2luZSAhPT0gdGhpcykgewogICAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGxldCBpbnRlcmFjdGl2ZSA9IHRydWU7CiAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudCAmJiBwYXJlbnQuaW50ZXJhY3RpdmUgIT0gdm9pZCAwKSB7CiAgICAgICAgICBpbnRlcmFjdGl2ZSA9IHBhcmVudC5pbnRlcmFjdGl2ZTsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbnRleHQgPSB7CiAgICAgICAgICBkZWJ1ZzogcGFyZW50ICYmIHBhcmVudC5kZWJ1ZyB8fCBmYWxzZSwKICAgICAgICAgIGVuZ2luZTogdGhpcywKICAgICAgICAgIGxvZ2dlcjogcGFyZW50ICYmIHBhcmVudC5sb2dnZXIgJiYgcGFyZW50LmxvZ2dlci5jcmVhdGVDaGlsZChzY2hlbWF0aWMuZGVzY3JpcHRpb24ubmFtZSkgfHwgbmV3IGNvcmVfMS5sb2dnaW5nLk51bGxMb2dnZXIoKSwKICAgICAgICAgIHNjaGVtYXRpYywKICAgICAgICAgIHN0cmF0ZWd5OiBwYXJlbnQgJiYgcGFyZW50LnN0cmF0ZWd5ICE9PSB2b2lkIDAgPyBwYXJlbnQuc3RyYXRlZ3kgOiB0aGlzLmRlZmF1bHRNZXJnZVN0cmF0ZWd5LAogICAgICAgICAgaW50ZXJhY3RpdmUsCiAgICAgICAgICBhZGRUYXNrCiAgICAgICAgfTsKICAgICAgICBjb25zdCBtYXliZU5ld0NvbnRleHQgPSB0aGlzLl9ob3N0LnRyYW5zZm9ybUNvbnRleHQoY29udGV4dCk7CiAgICAgICAgaWYgKG1heWJlTmV3Q29udGV4dCkgewogICAgICAgICAgY29udGV4dCA9IG1heWJlTmV3Q29udGV4dDsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza1NjaGVkdWxlciA9IG5ldyBUYXNrU2NoZWR1bGVyKGNvbnRleHQpOwogICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLl9ob3N0OwogICAgICAgIHRoaXMuX3Rhc2tTY2hlZHVsZXJzLnB1c2godGFza1NjaGVkdWxlcik7CiAgICAgICAgZnVuY3Rpb24gYWRkVGFzayh0YXNrLCBkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHRhc2sudG9Db25maWd1cmF0aW9uKCk7CiAgICAgICAgICBpZiAoIWhvc3QuaGFzVGFza0V4ZWN1dG9yKGNvbmZpZy5uYW1lKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbihjb25maWcubmFtZSwgc2NoZW1hdGljLmRlc2NyaXB0aW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMgPSBjb25maWcuZGVwZW5kZW5jaWVzIHx8IFtdOwogICAgICAgICAgaWYgKGRlcGVuZGVuY2llcykgewogICAgICAgICAgICBjb25maWcuZGVwZW5kZW5jaWVzLnVuc2hpZnQoLi4uZGVwZW5kZW5jaWVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrU2NoZWR1bGVyLnNjaGVkdWxlKGNvbmZpZyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb250ZXh0OwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBjb2xsZWN0aW9uLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IHNjaGVtYXRpY01hcCA9IHRoaXMuX3NjaGVtYXRpY0NhY2hlLmdldChjb2xsZWN0aW9uKTsKICAgICAgICBsZXQgc2NoZW1hdGljID0gc2NoZW1hdGljTWFwPy5nZXQobmFtZSk7CiAgICAgICAgaWYgKHNjaGVtYXRpYykgewogICAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGNvbGxlY3Rpb24uZGVzY3JpcHRpb247CiAgICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgYmFzZSBvZiBjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlU2NoZW1hdGljRGVzY3JpcHRpb24obmFtZSwgYmFzZSk7CiAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24gPSBiYXNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZGVzY3JpcHRpb24ucHJpdmF0ZSAmJiAhYWxsb3dQcml2YXRlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX2hvc3QuZ2V0U2NoZW1hdGljUnVsZUZhY3RvcnkoZGVzY3JpcHRpb24sIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7CiAgICAgICAgc2NoZW1hdGljID0gbmV3IHNjaGVtYXRpY18xLlNjaGVtYXRpY0ltcGwoZGVzY3JpcHRpb24sIGZhY3RvcnksIGNvbGxlY3Rpb24sIHRoaXMpOwogICAgICAgIHNjaGVtYXRpY01hcD8uc2V0KG5hbWUsIHNjaGVtYXRpYyk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbiwgaW5jbHVkZUhpZGRlbikgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbi5kZXNjcmlwdGlvbiwgaW5jbHVkZUhpZGRlbik7CiAgICAgICAgaWYgKGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICBuYW1lcy5wdXNoKC4uLnRoaXMuX2hvc3QubGlzdFNjaGVtYXRpY05hbWVzKGJhc2UsIGluY2x1ZGVIaWRkZW4pKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5uZXcgU2V0KG5hbWVzKV0uc29ydCgpOwogICAgICB9CiAgICAgIHRyYW5zZm9ybU9wdGlvbnMoc2NoZW1hdGljLCBvcHRpb25zLCBjb250ZXh0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QudHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMuZGVzY3JpcHRpb24sIG9wdGlvbnMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGNyZWF0ZVNvdXJjZUZyb21VcmwodXJsMywgY29udGV4dCkgewogICAgICAgIHN3aXRjaCAodXJsMy5wcm90b2NvbCkgewogICAgICAgICAgY2FzZSAibnVsbDoiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gbmV3IG51bGxfMS5OdWxsVHJlZSgpOwogICAgICAgICAgY2FzZSAiZW1wdHk6IjoKICAgICAgICAgICAgcmV0dXJuICgpID0+ICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaG9zdFNvdXJjZSA9IHRoaXMuX2hvc3QuY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KTsKICAgICAgICBpZiAoIWhvc3RTb3VyY2UpIHsKICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVXJsU291cmNlUHJvdG9jb2wodXJsMy50b1N0cmluZygpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGhvc3RTb3VyY2U7CiAgICAgIH0KICAgICAgZXhlY3V0ZVBvc3RUYXNrcygpIHsKICAgICAgICBjb25zdCBleGVjdXRvcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRhc2tPYnNlcnZhYmxlID0gKDAsIHJ4anNfMS5mcm9tKSh0aGlzLl90YXNrU2NoZWR1bGVycykucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHNjaGVkdWxlcikgPT4gc2NoZWR1bGVyLmZpbmFsaXplKCkpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRhc2spID0+IHsKICAgICAgICAgIGNvbnN0IHsgbmFtZSwgb3B0aW9ucyB9ID0gdGFzay5jb25maWd1cmF0aW9uOwogICAgICAgICAgY29uc3QgZXhlY3V0b3IgPSBleGVjdXRvcnMuZ2V0KG5hbWUpOwogICAgICAgICAgaWYgKGV4ZWN1dG9yKSB7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcihvcHRpb25zLCB0YXNrLmNvbnRleHQpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuY3JlYXRlVGFza0V4ZWN1dG9yKG5hbWUpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChleGVjdXRvcjIpID0+IHsKICAgICAgICAgICAgZXhlY3V0b3JzLnNldChuYW1lLCBleGVjdXRvcjIpOwogICAgICAgICAgICByZXR1cm4gZXhlY3V0b3IyKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9KSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiB0YXNrT2JzZXJ2YWJsZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IFNjaGVtYXRpY0VuZ2luZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzCnZhciByZXF1aXJlX2VuZ2luZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hdGljKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVDb25zb2xlTG9nZ2VyID0gY3JlYXRlQ29uc29sZUxvZ2dlcjsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNyY18xID0gcmVxdWlyZV9zcmMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZUNvbnNvbGVMb2dnZXIodmVyYm9zZSA9IGZhbHNlLCBzdGRvdXQgPSBwcm9jZXNzLnN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5zdGRlcnIsIGNvbG9ycykgewogICAgICBjb25zdCBsb2dnZXIgPSBuZXcgc3JjXzEubG9nZ2luZy5JbmRlbnRMb2dnZXIoImNsaW5nIik7CiAgICAgIGxvZ2dlci5waXBlKCgwLCByeGpzXzEuZmlsdGVyKSgoZW50cnkpID0+IGVudHJ5LmxldmVsICE9PSAiZGVidWciIHx8IHZlcmJvc2UpKS5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgY29sb3IgPSBjb2xvcnMgJiYgY29sb3JzW2VudHJ5LmxldmVsXTsKICAgICAgICBsZXQgb3V0cHV0ID0gc3Rkb3V0OwogICAgICAgIHN3aXRjaCAoZW50cnkubGV2ZWwpIHsKICAgICAgICAgIGNhc2UgIndhcm4iOgogICAgICAgICAgY2FzZSAiZmF0YWwiOgogICAgICAgICAgY2FzZSAiZXJyb3IiOgogICAgICAgICAgICBvdXRwdXQgPSBzdGRlcnI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaHVua1NpemUgPSAyZTM7CiAgICAgICAgbGV0IG1lc3NhZ2UgPSBlbnRyeS5tZXNzYWdlOwogICAgICAgIHdoaWxlIChtZXNzYWdlKSB7CiAgICAgICAgICBjb25zdCBjaHVuayA9IG1lc3NhZ2Uuc2xpY2UoMCwgY2h1bmtTaXplKTsKICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLnNsaWNlKGNodW5rU2l6ZSk7CiAgICAgICAgICBvdXRwdXQud3JpdGUoY29sb3IgPyBjb2xvcihjaHVuaykgOiBjaHVuayk7CiAgICAgICAgfQogICAgICAgIG91dHB1dC53cml0ZSgiXG4iKTsKICAgICAgfSk7CiAgICAgIHJldHVybiBsb2dnZXI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9ub2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2NsaV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDMoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2FjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uTGlzdCA9IGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5pc0NvbnRlbnRBY3Rpb24gPSBpc0NvbnRlbnRBY3Rpb247CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBVbmtub3duQWN0aW9uRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGFjdGlvbikgewogICAgICAgIHN1cGVyKGBVbmtub3duIGFjdGlvbjogIiR7YWN0aW9uLmtpbmR9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIF9pZCA9IDE7CiAgICB2YXIgQWN0aW9uTGlzdCA9IGNsYXNzIHsKICAgICAgX2FjdGlvbnMgPSBbXTsKICAgICAgX2FjdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goewogICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgaWQ6IF9pZCsrLAogICAgICAgICAgcGFyZW50OiB0aGlzLl9hY3Rpb25zW3RoaXMuX2FjdGlvbnMubGVuZ3RoIC0gMV0/LmlkID8/IDAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJjIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJvIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgdG8pIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiciIsIHBhdGgsIHRvIH0pOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImQiLCBwYXRoIH0pOwogICAgICB9CiAgICAgIG9wdGltaXplKCkgewogICAgICAgIGNvbnN0IHRvQ3JlYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9PdmVyd3JpdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9hY3Rpb25zKSB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBpZiAodG9DcmVhdGUuaGFzKGFjdGlvbi5wYXRoKSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgdG9EZWxldGUuYWRkKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6IHsKICAgICAgICAgICAgICBjb25zdCBtYXliZUNyZWF0ZSA9IHRvQ3JlYXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVPdmVyd3JpdGUgPSB0b092ZXJ3cml0ZS5nZXQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGlmIChtYXliZUNyZWF0ZSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24udG8sIG1heWJlQ3JlYXRlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlT3ZlcndyaXRlKSB7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi50bywgbWF5YmVPdmVyd3JpdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBsZXQgbWF5YmVSZW5hbWUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgZm9yIChjb25zdCBbZnJvbSwgdG9dIG9mIHRvUmVuYW1lLmVudHJpZXMoKSkgewogICAgICAgICAgICAgICAgaWYgKHRvID09IGFjdGlvbi5wYXRoKSB7CiAgICAgICAgICAgICAgICAgIG1heWJlUmVuYW1lID0gZnJvbTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KG1heWJlUmVuYW1lLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIW1heWJlQ3JlYXRlICYmICFtYXliZU92ZXJ3cml0ZSAmJiAhbWF5YmVSZW5hbWUpIHsKICAgICAgICAgICAgICAgIHRvUmVuYW1lLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fYWN0aW9ucyA9IFtdOwogICAgICAgIHRvRGVsZXRlLmZvckVhY2goKHgpID0+IHsKICAgICAgICAgIHRoaXMuZGVsZXRlKHgpOwogICAgICAgIH0pOwogICAgICAgIHRvUmVuYW1lLmZvckVhY2goKHRvLCBmcm9tKSA9PiB7CiAgICAgICAgICB0aGlzLnJlbmFtZShmcm9tLCB0byk7CiAgICAgICAgfSk7CiAgICAgICAgdG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9PdmVyd3JpdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcHVzaChhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goYWN0aW9uKTsKICAgICAgfQogICAgICBnZXQoaSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW2ldOwogICAgICB9CiAgICAgIGhhcyhhY3Rpb24pIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2FjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGEgPSB0aGlzLl9hY3Rpb25zW2ldOwogICAgICAgICAgaWYgKGEuaWQgPT0gYWN0aW9uLmlkKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGEuaWQgPiBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZmluZChwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5maW5kKHByZWRpY2F0ZSkgfHwgbnVsbDsKICAgICAgfQogICAgICBmb3JFYWNoKGZuLCB0aGlzQXJnKSB7CiAgICAgICAgdGhpcy5fYWN0aW9ucy5mb3JFYWNoKGZuLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQgbGVuZ3RoKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmxlbmd0aDsKICAgICAgfQogICAgICBbU3ltYm9sLml0ZXJhdG9yXSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1tTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gQWN0aW9uTGlzdDsKICAgIGZ1bmN0aW9uIGlzQ29udGVudEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIGFjdGlvbi5raW5kID09ICJjIiB8fCBhY3Rpb24ua2luZCA9PSAibyI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanMKdmFyIHJlcXVpcmVfc2luayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3Q0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc2lua18xID0gcmVxdWlyZV9zaW5rKCk7CiAgICB2YXIgSG9zdFNpbmsgPSBjbGFzcyBleHRlbmRzIHNpbmtfMS5TaW1wbGVTaW5rQmFzZSB7CiAgICAgIF9ob3N0OwogICAgICBfZm9yY2U7CiAgICAgIF9maWxlc1RvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9SZW5hbWUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb0NyZWF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvVXBkYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF9mb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fZm9yY2UgPSBfZm9yY2U7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9mb3JjZSA/IHJ4anNfMS5FTVBUWSA6IHN1cGVyLl92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUZpbGVFeGlzdHMocCkgewogICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhwKSB8fCB0aGlzLl9maWxlc1RvVXBkYXRlLmhhcyhwKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgW2Zyb20sIHRvXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lLnZhbHVlcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHApIHsKICAgICAgICAgICAgY2FzZSBmcm9tOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgICAgIGNhc2UgdG86CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5leGlzdHMocCk7CiAgICAgIH0KICAgICAgX292ZXJ3cml0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX2NyZWF0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX3JlbmFtZUZpbGUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmFkZChbZnJvbSwgdG9dKTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kZWxldGVGaWxlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1VwZGF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0RlbGV0ZS52YWx1ZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChwYXRoKSA9PiB0aGlzLl9ob3N0LmRlbGV0ZShwYXRoKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvUmVuYW1lLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbXywgW3BhdGgsIHRvXV0pID0+IHRoaXMuX2hvc3QucmVuYW1lKHBhdGgsIHRvKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvQ3JlYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSksICgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9VcGRhdGUuZW50cmllcygpXSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKFtwYXRoLCBidWZmZXJdKSA9PiB0aGlzLl9ob3N0LndyaXRlKHBhdGgsIGJ1ZmZlcikpKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKCkgPT4gewogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gSG9zdFNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvZHJ5cnVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EcnlSdW5TaW5rID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV8xID0gcmVxdWlyZV9ub2RlKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3Q0KCk7CiAgICB2YXIgRHJ5UnVuU2luayA9IGNsYXNzIGV4dGVuZHMgaG9zdF8xLkhvc3RTaW5rIHsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHJlcG9ydGVyID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgY29uc3RydWN0b3IoaG9zdCwgZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKHR5cGVvZiBob3N0ID09ICJzdHJpbmciID8gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU2NvcGVkSG9zdChuZXcgbm9kZV8xLk5vZGVKc1N5bmNIb3N0KCksICgwLCBjb3JlXzEubm9ybWFsaXplKShob3N0KSkgOiBob3N0LCBmb3JjZSk7CiAgICAgIH0KICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmFkZChwYXRoKTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiYWxyZWFkeUV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldC5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoewogICAgICAgICAgICBraW5kOiAiZXJyb3IiLAogICAgICAgICAgICBkZXNjcmlwdGlvbjogImRvZXNOb3RFeGlzdCIsCiAgICAgICAgICAgIHBhdGgKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbZnJvbV0gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAoZnJvbSA9PSBwYXRoKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiZGVsZXRlIiwgcGF0aCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmZvckVhY2goKFtwYXRoLCB0b10pID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJyZW5hbWUiLCBwYXRoLCB0byB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIGZvciAoY29uc3QgWywgdG9dIG9mIHRoaXMuX2ZpbGVzVG9SZW5hbWUpIHsKICAgICAgICAgICAgaWYgKHRvID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSB8fCB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiY3JlYXRlIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJ1cGRhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSBEcnlSdW5TaW5rOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qcwp2YXIgcmVxdWlyZV9iYXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2U1ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U1KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzCnZhciByZXF1aXJlX21vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1vdmUgPSBtb3ZlMzsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGZ1bmN0aW9uIG1vdmUzKGZyb20sIHRvKSB7CiAgICAgIGlmICh0byA9PT0gdm9pZCAwKSB7CiAgICAgICAgdG8gPSBmcm9tOwogICAgICAgIGZyb20gPSAiLyI7CiAgICAgIH0KICAgICAgY29uc3QgZnJvbVBhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgZnJvbSk7CiAgICAgIGNvbnN0IHRvUGF0aCA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyB0byk7CiAgICAgIGlmIChmcm9tUGF0aCA9PT0gdG9QYXRoKSB7CiAgICAgICAgcmV0dXJuIGJhc2VfMS5ub29wOwogICAgICB9CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIGlmICh0cmVlLmV4aXN0cyhmcm9tUGF0aCkpIHsKICAgICAgICAgIHRyZWUucmVuYW1lKGZyb21QYXRoLCB0b1BhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cmVlLmdldERpcihmcm9tUGF0aCkudmlzaXQoKHBhdGgpID0+IHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgKDAsIGNvcmVfMS5qb2luKSh0b1BhdGgsIHBhdGguc2xpY2UoZnJvbVBhdGgubGVuZ3RoKSkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmYXVsdF8xOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIGZ1bmN0aW9uIGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgobCkgewogICAgICByZXR1cm4gbmV3IEFycmF5KGwpLmZpbGwoMCkubWFwKChfeCkgPT4gewogICAgICAgIHJldHVybiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI2KV07CiAgICAgIH0pLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gcmFuZG9tKGZyb20sIHRvKSB7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAodG8gLSBmcm9tKSkgKyBmcm9tOwogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdF8xKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICBjb25zdCByb290ID0gInJvb3QiIGluIG9wdGlvbnMgPyBvcHRpb25zLnJvb3QgOiAiLyI7CiAgICAgICAgY29uc3QgbWFwMiA9IG5ldyBob3N0X3RyZWVfMS5Ib3N0VHJlZSgpOwogICAgICAgIGNvbnN0IG5iRmlsZXMgPSAibXVsdGlGaWxlcyIgaW4gb3B0aW9ucyA/IHR5cGVvZiBvcHRpb25zLm11bHRpRmlsZXMgPT0gIm51bWJlciIgPyBvcHRpb25zLm11bHRpRmlsZXMgOiByYW5kb20oMiwgMTIpIDogMTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5iRmlsZXM7IGkrKykgewogICAgICAgICAgY29uc3QgcGF0aCA9ICJhL2IvYy9kL2UvZiIuc2xpY2UoTWF0aC5yYW5kb20oKSAqIDEwKTsKICAgICAgICAgIGNvbnN0IGZpbGVOYW1lID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgyMCk7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgxMDApOwogICAgICAgICAgbWFwMi5jcmVhdGUocm9vdCArICIvIiArIHBhdGggKyAiLyIgKyBmaWxlTmFtZSwgY29udGVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzCnZhciByZXF1aXJlX3NjaGVtYXRpYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzCnZhciByZXF1aXJlX3RlbXBsYXRlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93blBpcGVFeGNlcHRpb24gPSBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmFwcGx5Q29udGVudFRlbXBsYXRlID0gYXBwbHlDb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5jb250ZW50VGVtcGxhdGUgPSBjb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5hcHBseVBhdGhUZW1wbGF0ZSA9IGFwcGx5UGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucGF0aFRlbXBsYXRlID0gcGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucmVuYW1lVGVtcGxhdGVGaWxlcyA9IHJlbmFtZVRlbXBsYXRlRmlsZXM7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIGV4cG9ydHMyLmFwcGx5VGVtcGxhdGVzID0gYXBwbHlUZW1wbGF0ZXM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgYmFzZV8xID0gcmVxdWlyZV9iYXNlMigpOwogICAgZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSAvXC50ZW1wbGF0ZSQvOwogICAgdmFyIE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYE9wdGlvbiAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBub3QgZGVmaW5lZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gVW5rbm93blBpcGVFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBpcGVFeGNlcHRpb24gPSBJbnZhbGlkUGlwZUV4Y2VwdGlvbjsKICAgIHZhciBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIsIHsgZmF0YWw6IHRydWUgfSk7CiAgICBmdW5jdGlvbiBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGVudHJ5OwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb25zdCBkZWNvZGVkQ29udGVudCA9IGRlY29kZXIuZGVjb2RlKGNvbnRlbnQpLnJlcGxhY2UoL1xyP1xuL2csIG5vZGVfb3NfMS5FT0wpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20oKDAsIGNvcmVfMS50ZW1wbGF0ZSkoZGVjb2RlZENvbnRlbnQsIHt9KShvcHRpb25zKSkKICAgICAgICAgIH07CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5UGF0aFRlbXBsYXRlKGRhdGEsIG9wdGlvbnMgPSB7CiAgICAgIGludGVycG9sYXRpb25TdGFydDogIl9fIiwKICAgICAgaW50ZXJwb2xhdGlvbkVuZDogIl9fIiwKICAgICAgcGlwZVNlcGFyYXRvcjogIkAiCiAgICB9KSB7CiAgICAgIGNvbnN0IGlzID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uU3RhcnQ7CiAgICAgIGNvbnN0IGllID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kOwogICAgICBjb25zdCBpc0wgPSBpcy5sZW5ndGg7CiAgICAgIGNvbnN0IGllTCA9IGllLmxlbmd0aDsKICAgICAgcmV0dXJuIChlbnRyeSkgPT4gewogICAgICAgIGxldCBwYXRoID0gZW50cnkucGF0aDsKICAgICAgICBjb25zdCBjb250ZW50ID0gZW50cnkuY29udGVudDsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHBhdGg7CiAgICAgICAgbGV0IHN0YXJ0ID0gcGF0aC5pbmRleE9mKGlzKTsKICAgICAgICBsZXQgZW5kID0gcGF0aC5pbmRleE9mKGllLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIHdoaWxlIChzdGFydCAhPSAtMSAmJiBlbmQgIT0gLTEpIHsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5zdWJzdHJpbmcoc3RhcnQgKyBpc0wsIGVuZCk7CiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBkYXRhW21hdGNoXTsKICAgICAgICAgIGlmICghb3B0aW9ucy5waXBlU2VwYXJhdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG1hdGNoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgW25hbWUsIC4uLnBpcGVzXSA9IG1hdGNoLnNwbGl0KG9wdGlvbnMucGlwZVNlcGFyYXRvcik7CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gZGF0YVtuYW1lXTsKICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC5jYWxsKGRhdGEsIG9yaWdpbmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24obmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSBwaXBlcy5yZWR1Y2UoKGFjYywgcGlwZSkgPT4gewogICAgICAgICAgICAgIGlmICghcGlwZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKCEocGlwZSBpbiBkYXRhKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25QaXBlRXhjZXB0aW9uKHBpcGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwaXBlRm4gPSBkYXRhW3BpcGVdOwogICAgICAgICAgICAgIGlmICh0eXBlb2YgcGlwZUZuICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuICIiICsgcGlwZUZuKGFjYyk7CiAgICAgICAgICAgIH0sICIiICsgcmVwbGFjZW1lbnQpOwogICAgICAgICAgfQogICAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHN0YXJ0KSArIHJlcGxhY2VtZW50ICsgcGF0aC5zdWJzdHJpbmcoZW5kICsgaWVMKTsKICAgICAgICAgIHN0YXJ0ID0gcGF0aC5pbmRleE9mKG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0KTsKICAgICAgICAgIGVuZCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25FbmQsIHN0YXJ0ICsgaXNMICsgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IHBhdGg6ICgwLCBjb3JlXzEubm9ybWFsaXplKShwYXRoKSwgY29udGVudCB9OwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGF0aFRlbXBsYXRlKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoYXBwbHlQYXRoVGVtcGxhdGUob3B0aW9ucykpOwogICAgfQogICAgZnVuY3Rpb24gcmVuYW1lVGVtcGxhdGVGaWxlcygpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKGVudHJ5LnBhdGgubWF0Y2goZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUpKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBjb250ZW50OiBlbnRyeS5jb250ZW50LAogICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikpCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmNoYWluKShbCiAgICAgICAgY29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIEZvcmNlIGNhc3QgdG8gUGF0aFRlbXBsYXRlRGF0YS4gV2UgbmVlZCB0aGUgdHlwZSBmb3IgdGhlIGFjdHVhbCBwYXRoVGVtcGxhdGUoKSBjYWxsLAogICAgICAgIC8vIGJ1dCBpbiB0aGlzIGNhc2Ugd2UgY2Fubm90IGRvIGFueXRoaW5nIGFzIGNvbnRlbnRUZW1wbGF0ZSBhcmUgbW9yZSBwZXJtaXNzaXZlLgogICAgICAgIC8vIFNpbmNlIHZhbHVlcyBhcmUgY29lcmNlZCB0byBzdHJpbmdzIGluIFBhdGhUZW1wbGF0ZXMgaXQgd2lsbCBiZSBmaW5lIGluIHRoZSBlbmQuCiAgICAgICAgcGF0aFRlbXBsYXRlKG9wdGlvbnMpCiAgICAgIF0pOwogICAgfQogICAgZnVuY3Rpb24gYXBwbHlUZW1wbGF0ZXMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKSgoMCwgYmFzZV8xLndoZW4pKChwYXRoKSA9PiBwYXRoLmVuZHNXaXRoKCIudGVtcGxhdGUiKSwgKDAsIGJhc2VfMS5jb21wb3NlRmlsZU9wZXJhdG9ycykoWwogICAgICAgIGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIFNlZSBhYm92ZSBmb3IgdGhpcyB3ZWlyZCBjYXN0LgogICAgICAgIGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIChlbnRyeSkgPT4gewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICBdKSkpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi51cmwgPSB1cmwzOwogICAgdmFyIHVybF8xID0gcmVxdWlyZSgidXJsIik7CiAgICBmdW5jdGlvbiB1cmwzKHVybFN0cmluZykgewogICAgICBjb25zdCB1cmw0ID0gKDAsIHVybF8xLnBhcnNlKSh1cmxTdHJpbmcpOwogICAgICByZXR1cm4gKGNvbnRleHQpID0+IGNvbnRleHQuZW5naW5lLmNyZWF0ZVNvdXJjZUZyb21VcmwodXJsNCwgY29udGV4dCkoY29udGV4dCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UcmVlID0gZXhwb3J0czIud29ya2Zsb3cgPSBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIuZm9ybWF0cyA9IGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ3MiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuc3RyaW5nczsKICAgIH0gfSk7CiAgICB2YXIgZm9ybWF0cyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2Zvcm1hdHMyKCkpOwogICAgZXhwb3J0czIuZm9ybWF0cyA9IGZvcm1hdHM7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgd29ya2Zsb3cgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV93b3JrZmxvdygpKTsKICAgIGV4cG9ydHMyLndvcmtmbG93ID0gd29ya2Zsb3c7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjaGVtYXRpY3NFeGNlcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FjdGlvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbmdpbmUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2V4Y2VwdGlvbjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlMygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jYWxsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21vdmUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmFuZG9tKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYzIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3VybCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWxlZ2F0ZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbXB0eTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdF90cmVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kcnlydW4oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2luaygpLCBleHBvcnRzMik7CiAgICBleHBvcnRzMi5UcmVlID0gewogICAgICBlbXB0eSgpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICB9LAogICAgICBicmFuY2godHJlZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEuYnJhbmNoKSh0cmVlKTsKICAgICAgfSwKICAgICAgbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5tZXJnZSkodHJlZSwgb3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgfSwKICAgICAgcGFydGl0aW9uKHRyZWUsIHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEucGFydGl0aW9uKSh0cmVlLCBwcmVkaWNhdGUpOwogICAgICB9LAogICAgICBvcHRpbWl6ZSh0cmVlKSB7CiAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3N0cmlwLWpzb24tY29tbWVudHMtbnBtLTMuMS4xLWRjYjIzMjQ4MjMtMTAuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy0xMC56aXAvbm9kZV9tb2R1bGVzL3N0cmlwLWpzb24tY29tbWVudHMvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2luZ2xlQ29tbWVudCA9IFN5bWJvbCgic2luZ2xlQ29tbWVudCIpOwogICAgdmFyIG11bHRpQ29tbWVudCA9IFN5bWJvbCgibXVsdGlDb21tZW50Iik7CiAgICB2YXIgc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA9ICgpID0+ICIiOwogICAgdmFyIHN0cmlwV2l0aFdoaXRlc3BhY2UgPSAoc3RyaW5nLCBzdGFydCwgZW5kKSA9PiBzdHJpbmcuc2xpY2Uoc3RhcnQsIGVuZCkucmVwbGFjZSgvXFMvZywgIiAiKTsKICAgIHZhciBpc0VzY2FwZWQgPSAoanNvblN0cmluZywgcXVvdGVQb3NpdGlvbikgPT4gewogICAgICBsZXQgaW5kZXggPSBxdW90ZVBvc2l0aW9uIC0gMTsKICAgICAgbGV0IGJhY2tzbGFzaENvdW50ID0gMDsKICAgICAgd2hpbGUgKGpzb25TdHJpbmdbaW5kZXhdID09PSAiXFwiKSB7CiAgICAgICAgaW5kZXggLT0gMTsKICAgICAgICBiYWNrc2xhc2hDb3VudCArPSAxOwogICAgICB9CiAgICAgIHJldHVybiBCb29sZWFuKGJhY2tzbGFzaENvdW50ICUgMik7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gKGpzb25TdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGpzb25TdHJpbmcgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgYXJndW1lbnQgXGBqc29uU3RyaW5nXGAgdG8gYmUgYSBcYHN0cmluZ1xgLCBnb3QgXGAke3R5cGVvZiBqc29uU3RyaW5nfVxgYCk7CiAgICAgIH0KICAgICAgY29uc3Qgc3RyaXAgPSBvcHRpb25zLndoaXRlc3BhY2UgPT09IGZhbHNlID8gc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA6IHN0cmlwV2l0aFdoaXRlc3BhY2U7CiAgICAgIGxldCBpbnNpZGVTdHJpbmcgPSBmYWxzZTsKICAgICAgbGV0IGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgbGV0IG9mZnNldCA9IDA7CiAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBqc29uU3RyaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3VycmVudENoYXJhY3RlciA9IGpzb25TdHJpbmdbaV07CiAgICAgICAgY29uc3QgbmV4dENoYXJhY3RlciA9IGpzb25TdHJpbmdbaSArIDFdOwogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSBpc0VzY2FwZWQoanNvblN0cmluZywgaSk7CiAgICAgICAgICBpZiAoIWVzY2FwZWQpIHsKICAgICAgICAgICAgaW5zaWRlU3RyaW5nID0gIWluc2lkZVN0cmluZzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGluc2lkZVN0cmluZykgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIi8vIikgewogICAgICAgICAgcmVzdWx0ICs9IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gc2luZ2xlQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICJcclxuIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChpbnNpZGVDb21tZW50ID09PSBzaW5nbGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICJcbiIpIHsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgICAgIHJlc3VsdCArPSBzdHJpcChqc29uU3RyaW5nLCBvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICB9IGVsc2UgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLyoiKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBtdWx0aUNvbW1lbnQ7CiAgICAgICAgICBpKys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IG11bHRpQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIiovIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSArIDEpOwogICAgICAgICAgb2Zmc2V0ID0gaSArIDE7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdCArIChpbnNpZGVDb21tZW50ID8gc3RyaXAoanNvblN0cmluZy5zbGljZShvZmZzZXQpKSA6IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0KSk7CiAgICB9OwogIH0KfSk7CgovLyBzcmMvc2NoZW1hdGljL2luZGV4LnRzCnZhciBpbmRleF9leHBvcnRzID0ge307Cl9fZXhwb3J0KGluZGV4X2V4cG9ydHMsIHsKICBtYWluOiAoKSA9PiBtYWluCn0pOwptb2R1bGUuZXhwb3J0cyA9IF9fdG9Db21tb25KUyhpbmRleF9leHBvcnRzKTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIGltcG9ydF9zY2hlbWF0aWNzOSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9qc29uLnV0aWxzLnRzCnZhciBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cyA9IF9fdG9FU00ocmVxdWlyZV9zdHJpcF9qc29uX2NvbW1lbnRzKCksIDEpOwp2YXIgc2VyaWFsaXplSnNvbiA9IChqc29uMikgPT4gYCR7SlNPTi5zdHJpbmdpZnkoanNvbjIsIG51bGwsIDIpfQpgOwp2YXIgcmVhZEpzb25JblRyZWUgPSAoaG9zdCwgcGF0aCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgJHtwYXRofWApOwogIH0KICBjb25zdCBjb250ZW50cyA9ICgwLCBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cy5kZWZhdWx0KShob3N0LnJlYWQocGF0aCk/LnRvU3RyaW5nKCJ1dGYtOCIpIHx8ICIiKTsKICB0cnkgewogICAgcmV0dXJuIEpTT04ucGFyc2UoY29udGVudHMpOwogIH0gY2F0Y2ggKGUpIHsKICAgIGNvbnN0IGVycm9yID0gZTsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHBhcnNlICR7cGF0aH06ICR7ZXJyb3IubWVzc2FnZX1gKTsKICB9Cn07CnZhciB1cGRhdGVKc29uSW5UcmVlID0gKHBhdGgsIGNhbGxiYWNrKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIGhvc3QuY3JlYXRlKHBhdGgsIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2soe30sIGNvbnRleHQpKSk7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgaG9zdC5vdmVyd3JpdGUoCiAgICBwYXRoLAogICAgc2VyaWFsaXplSnNvbihjYWxsYmFjayhyZWFkSnNvbkluVHJlZShob3N0LCBwYXRoKSwgY29udGV4dCkpCiAgKTsKICByZXR1cm4gaG9zdDsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvdXRpbHMvdHNjb25maWcudXRpbHMudHMKdmFyIHVwZGF0ZVRzQ29uZmlnSW5UcmVlID0gKGNvbXBpbGVyT3B0aW9ucykgPT4gdXBkYXRlSnNvbkluVHJlZSgidHNjb25maWcuanNvbiIsICh0c2NvbmZpZykgPT4gKHsKICAuLi50c2NvbmZpZywKICBjb21waWxlck9wdGlvbnMKfSkpOwoKLy8gc3JjL3NjaGVtYXRpYy9ydWxlcy91cGRhdGUtdHMtY29uZmlnLnJ1bGUudHMKdmFyIHVwZGF0ZVRzQ29uZmlnUnVsZSA9IGFzeW5jICgpID0+IHsKICBjb25zdCB7IHRzQ29uZmlnIH0gPSBhd2FpdCBpbXBvcnQoIkBhdGxzL2NvZGUtcnVudGltZSIpOwogIHJldHVybiB1cGRhdGVUc0NvbmZpZ0luVHJlZSh7CiAgICAuLi50c0NvbmZpZy5jb21waWxlck9wdGlvbnMKICB9KTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1jb21tb24uc291cmNlLnRzCnZhciBpbXBvcnRfY29yZSA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljcyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MyID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczMgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgZ2VuZXJhdGVDb21tb25Tb3VyY2UgPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzLmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M0LnVybCkoIi4uL3RlbXBsYXRlcy9jb21tb24iKSwgWwogICgwLCBpbXBvcnRfc2NoZW1hdGljczIudGVtcGxhdGUpKHsKICAgIC4uLmltcG9ydF9jb3JlLnN0cmluZ3MsCiAgICAuLi5vcHRpb25zLAogICAgZG90OiAiLiIKICB9KSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MzLm1vdmUpKCIuLyIpCl0pOwoKLy8gc3JjL3NjaGVtYXRpYy9zb3VyY2VzL2dlbmVyYXRlLXByb2plY3Qtc3BlY2lmaWMuc291cmNlLnRzCnZhciBpbXBvcnRfbm9kZV9mcyA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKdmFyIGltcG9ydF9ub2RlX3BhdGggPSByZXF1aXJlKCJub2RlOnBhdGgiKTsKdmFyIGltcG9ydF9jb3JlMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M3ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczggPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlID0gKG9wdGlvbnMpID0+IHsKICBjb25zdCB7IG5hbWU6IHByb2plY3ROYW1lIH0gPSBKU09OLnBhcnNlKAogICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tc3luYwogICAgKDAsIGltcG9ydF9ub2RlX2ZzLnJlYWRGaWxlU3luYykoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikob3B0aW9ucy5jd2QsICJwYWNrYWdlLmpzb24iKSwgInV0Zi04IikKICApOwogIHJldHVybiAoMCwgaW1wb3J0X3NjaGVtYXRpY3M1LmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M2LnVybCkoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikoIi4uL3RlbXBsYXRlcyIsIG9wdGlvbnMudHlwZSkpLCBbCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3M3LnRlbXBsYXRlKSh7CiAgICAgIC4uLmltcG9ydF9jb3JlMi5zdHJpbmdzLAogICAgICAuLi5vcHRpb25zLAogICAgICBwcm9qZWN0TmFtZSwKICAgICAgZG90OiAiLiIKICAgIH0pLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzOC5tb3ZlKSgiLi8iKQogIF0pOwp9OwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9tZXJnZS1naXRpZ25vcmUtY29udGVudC51dGlscy50cwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19TVEFSVF9NQVJLRVIgPSAiIyByYWlqaW46YmVnaW4gcHJvamVjdC1zcGVjaWZpYyBnaXRpZ25vcmUiOwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19FTkRfTUFSS0VSID0gIiMgcmFpamluOmVuZCBwcm9qZWN0LXNwZWNpZmljIGdpdGlnbm9yZSI7CnZhciBub3JtYWxpemVDb250ZW50ID0gKGNvbnRlbnQpID0+IGNvbnRlbnQucmVwbGFjZSgvXHJcbi9nLCAiXG4iKTsKdmFyIGdldE5vcm1hbGl6ZWRMaW5lcyA9IChjb250ZW50KSA9PiBub3JtYWxpemVDb250ZW50KGNvbnRlbnQpLnNwbGl0KCJcbiIpOwp2YXIgdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyA9IChsaW5lcykgPT4gewogIGNvbnN0IG5vcm1hbGl6ZWRMaW5lcyA9IFsuLi5saW5lc107CiAgd2hpbGUgKG5vcm1hbGl6ZWRMaW5lcy5sZW5ndGggPiAwICYmIG5vcm1hbGl6ZWRMaW5lc1tub3JtYWxpemVkTGluZXMubGVuZ3RoIC0gMV0gPT09ICIiKSB7CiAgICBub3JtYWxpemVkTGluZXMucG9wKCk7CiAgfQogIHJldHVybiBub3JtYWxpemVkTGluZXM7Cn07CnZhciBpc1Byb2plY3RTcGVjaWZpY0xpbmUgPSAobGluZSwgdGVtcGxhdGVMaW5lU2V0KSA9PiBsaW5lICE9PSAiIiAmJiAhdGVtcGxhdGVMaW5lU2V0LmhhcyhsaW5lKSAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX1NUQVJUX01BUktFUiAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVI7CnZhciBnZXRQcm9qZWN0U3BlY2lmaWNMaW5lcyA9IChleGlzdGluZ0xpbmVzLCB0ZW1wbGF0ZUxpbmVTZXQpID0+IHsKICBjb25zdCBzdGFydEluZGV4ID0gZXhpc3RpbmdMaW5lcy5pbmRleE9mKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBjb25zdCBlbmRJbmRleCA9IGV4aXN0aW5nTGluZXMuaW5kZXhPZihQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVIpOwogIGlmIChzdGFydEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCA+IHN0YXJ0SW5kZXgpIHsKICAgIHJldHVybiBBcnJheS5mcm9tKAogICAgICBuZXcgU2V0KGV4aXN0aW5nTGluZXMuZmlsdGVyKChsaW5lKSA9PiBpc1Byb2plY3RTcGVjaWZpY0xpbmUobGluZSwgdGVtcGxhdGVMaW5lU2V0KSkpCiAgICApOwogIH0KICByZXR1cm4gZXhpc3RpbmdMaW5lcy5maWx0ZXIoKGxpbmUpID0+IGlzUHJvamVjdFNwZWNpZmljTGluZShsaW5lLCB0ZW1wbGF0ZUxpbmVTZXQpKTsKfTsKdmFyIG1lcmdlR2l0SWdub3JlQ29udGVudCA9ICh7CiAgZXhpc3RpbmdDb250ZW50LAogIHRlbXBsYXRlQ29udGVudAp9KSA9PiB7CiAgY29uc3QgdGVtcGxhdGVMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyh0ZW1wbGF0ZUNvbnRlbnQpOwogIGNvbnN0IHRlbXBsYXRlTGluZVNldCA9IG5ldyBTZXQodGVtcGxhdGVMaW5lcyk7CiAgY29uc3QgZXhpc3RpbmdMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyhleGlzdGluZ0NvbnRlbnQpOwogIGNvbnN0IHByb2plY3RTcGVjaWZpY0xpbmVzID0gZ2V0UHJvamVjdFNwZWNpZmljTGluZXMoZXhpc3RpbmdMaW5lcywgdGVtcGxhdGVMaW5lU2V0KTsKICBpZiAocHJvamVjdFNwZWNpZmljTGluZXMubGVuZ3RoID09PSAwKSB7CiAgICByZXR1cm4gdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyh0ZW1wbGF0ZUxpbmVzKS5qb2luKCJcbiIpOwogIH0KICBjb25zdCBtZXJnZWRMaW5lcyA9IHRyaW1UcmFpbGluZ0VtcHR5TGluZXModGVtcGxhdGVMaW5lcyk7CiAgaWYgKG1lcmdlZExpbmVzLmxlbmd0aCA+IDApIHsKICAgIG1lcmdlZExpbmVzLnB1c2goIiIpOwogIH0KICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBtZXJnZWRMaW5lcy5wdXNoKC4uLnByb2plY3RTcGVjaWZpY0xpbmVzKTsKICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfRU5EX01BUktFUik7CiAgcmV0dXJuIG1lcmdlZExpbmVzLmpvaW4oIlxuIik7Cn07CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qcy15YW1sLW5wbS00LjEuMC0zNjA2ZjMyMzEyLTEwLnppcC9ub2RlX21vZHVsZXMvanMteWFtbC9kaXN0L2pzLXlhbWwubWpzCmZ1bmN0aW9uIGlzTm90aGluZyhzdWJqZWN0KSB7CiAgcmV0dXJuIHR5cGVvZiBzdWJqZWN0ID09PSAidW5kZWZpbmVkIiB8fCBzdWJqZWN0ID09PSBudWxsOwp9CmZ1bmN0aW9uIGlzT2JqZWN0KHN1YmplY3QpIHsKICByZXR1cm4gdHlwZW9mIHN1YmplY3QgPT09ICJvYmplY3QiICYmIHN1YmplY3QgIT09IG51bGw7Cn0KZnVuY3Rpb24gdG9BcnJheShzZXF1ZW5jZSkgewogIGlmIChBcnJheS5pc0FycmF5KHNlcXVlbmNlKSkgcmV0dXJuIHNlcXVlbmNlOwogIGVsc2UgaWYgKGlzTm90aGluZyhzZXF1ZW5jZSkpIHJldHVybiBbXTsKICByZXR1cm4gW3NlcXVlbmNlXTsKfQpmdW5jdGlvbiBleHRlbmQodGFyZ2V0LCBzb3VyY2UpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwga2V5LCBzb3VyY2VLZXlzOwogIGlmIChzb3VyY2UpIHsKICAgIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsKICAgIH0KICB9CiAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiByZXBlYXQoc3RyaW5nLCBjb3VudCkgewogIHZhciByZXN1bHQgPSAiIiwgY3ljbGU7CiAgZm9yIChjeWNsZSA9IDA7IGN5Y2xlIDwgY291bnQ7IGN5Y2xlICs9IDEpIHsKICAgIHJlc3VsdCArPSBzdHJpbmc7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gaXNOZWdhdGl2ZVplcm8obnVtYmVyKSB7CiAgcmV0dXJuIG51bWJlciA9PT0gMCAmJiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IDEgLyBudW1iZXI7Cn0KdmFyIGlzTm90aGluZ18xID0gaXNOb3RoaW5nOwp2YXIgaXNPYmplY3RfMSA9IGlzT2JqZWN0Owp2YXIgdG9BcnJheV8xID0gdG9BcnJheTsKdmFyIHJlcGVhdF8xID0gcmVwZWF0Owp2YXIgaXNOZWdhdGl2ZVplcm9fMSA9IGlzTmVnYXRpdmVaZXJvOwp2YXIgZXh0ZW5kXzEgPSBleHRlbmQ7CnZhciBjb21tb24gPSB7CiAgaXNOb3RoaW5nOiBpc05vdGhpbmdfMSwKICBpc09iamVjdDogaXNPYmplY3RfMSwKICB0b0FycmF5OiB0b0FycmF5XzEsCiAgcmVwZWF0OiByZXBlYXRfMSwKICBpc05lZ2F0aXZlWmVybzogaXNOZWdhdGl2ZVplcm9fMSwKICBleHRlbmQ6IGV4dGVuZF8xCn07CmZ1bmN0aW9uIGZvcm1hdEVycm9yKGV4Y2VwdGlvbjIsIGNvbXBhY3QpIHsKICB2YXIgd2hlcmUgPSAiIiwgbWVzc2FnZSA9IGV4Y2VwdGlvbjIucmVhc29uIHx8ICIodW5rbm93biByZWFzb24pIjsKICBpZiAoIWV4Y2VwdGlvbjIubWFyaykgcmV0dXJuIG1lc3NhZ2U7CiAgaWYgKGV4Y2VwdGlvbjIubWFyay5uYW1lKSB7CiAgICB3aGVyZSArPSAnaW4gIicgKyBleGNlcHRpb24yLm1hcmsubmFtZSArICciICc7CiAgfQogIHdoZXJlICs9ICIoIiArIChleGNlcHRpb24yLm1hcmsubGluZSArIDEpICsgIjoiICsgKGV4Y2VwdGlvbjIubWFyay5jb2x1bW4gKyAxKSArICIpIjsKICBpZiAoIWNvbXBhY3QgJiYgZXhjZXB0aW9uMi5tYXJrLnNuaXBwZXQpIHsKICAgIHdoZXJlICs9ICJcblxuIiArIGV4Y2VwdGlvbjIubWFyay5zbmlwcGV0OwogIH0KICByZXR1cm4gbWVzc2FnZSArICIgIiArIHdoZXJlOwp9CmZ1bmN0aW9uIFlBTUxFeGNlcHRpb24kMShyZWFzb24sIG1hcmspIHsKICBFcnJvci5jYWxsKHRoaXMpOwogIHRoaXMubmFtZSA9ICJZQU1MRXhjZXB0aW9uIjsKICB0aGlzLnJlYXNvbiA9IHJlYXNvbjsKICB0aGlzLm1hcmsgPSBtYXJrOwogIHRoaXMubWVzc2FnZSA9IGZvcm1hdEVycm9yKHRoaXMsIGZhbHNlKTsKICBpZiAoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpIHsKICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpOwogIH0gZWxzZSB7CiAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2sgfHwgIiI7CiAgfQp9CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBZQU1MRXhjZXB0aW9uJDE7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZyhjb21wYWN0KSB7CiAgcmV0dXJuIHRoaXMubmFtZSArICI6ICIgKyBmb3JtYXRFcnJvcih0aGlzLCBjb21wYWN0KTsKfTsKdmFyIGV4Y2VwdGlvbiA9IFlBTUxFeGNlcHRpb24kMTsKZnVuY3Rpb24gZ2V0TGluZShidWZmZXIsIGxpbmVTdGFydCwgbGluZUVuZCwgcG9zaXRpb24sIG1heExpbmVMZW5ndGgpIHsKICB2YXIgaGVhZCA9ICIiOwogIHZhciB0YWlsID0gIiI7CiAgdmFyIG1heEhhbGZMZW5ndGggPSBNYXRoLmZsb29yKG1heExpbmVMZW5ndGggLyAyKSAtIDE7CiAgaWYgKHBvc2l0aW9uIC0gbGluZVN0YXJ0ID4gbWF4SGFsZkxlbmd0aCkgewogICAgaGVhZCA9ICIgLi4uICI7CiAgICBsaW5lU3RhcnQgPSBwb3NpdGlvbiAtIG1heEhhbGZMZW5ndGggKyBoZWFkLmxlbmd0aDsKICB9CiAgaWYgKGxpbmVFbmQgLSBwb3NpdGlvbiA+IG1heEhhbGZMZW5ndGgpIHsKICAgIHRhaWwgPSAiIC4uLiI7CiAgICBsaW5lRW5kID0gcG9zaXRpb24gKyBtYXhIYWxmTGVuZ3RoIC0gdGFpbC5sZW5ndGg7CiAgfQogIHJldHVybiB7CiAgICBzdHI6IGhlYWQgKyBidWZmZXIuc2xpY2UobGluZVN0YXJ0LCBsaW5lRW5kKS5yZXBsYWNlKC9cdC9nLCAiXHUyMTkyIikgKyB0YWlsLAogICAgcG9zOiBwb3NpdGlvbiAtIGxpbmVTdGFydCArIGhlYWQubGVuZ3RoCiAgICAvLyByZWxhdGl2ZSBwb3NpdGlvbgogIH07Cn0KZnVuY3Rpb24gcGFkU3RhcnQoc3RyaW5nLCBtYXgpIHsKICByZXR1cm4gY29tbW9uLnJlcGVhdCgiICIsIG1heCAtIHN0cmluZy5sZW5ndGgpICsgc3RyaW5nOwp9CmZ1bmN0aW9uIG1ha2VTbmlwcGV0KG1hcmssIG9wdGlvbnMpIHsKICBvcHRpb25zID0gT2JqZWN0LmNyZWF0ZShvcHRpb25zIHx8IG51bGwpOwogIGlmICghbWFyay5idWZmZXIpIHJldHVybiBudWxsOwogIGlmICghb3B0aW9ucy5tYXhMZW5ndGgpIG9wdGlvbnMubWF4TGVuZ3RoID0gNzk7CiAgaWYgKHR5cGVvZiBvcHRpb25zLmluZGVudCAhPT0gIm51bWJlciIpIG9wdGlvbnMuaW5kZW50ID0gMTsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNCZWZvcmUgIT09ICJudW1iZXIiKSBvcHRpb25zLmxpbmVzQmVmb3JlID0gMzsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNBZnRlciAhPT0gIm51bWJlciIpIG9wdGlvbnMubGluZXNBZnRlciA9IDI7CiAgdmFyIHJlID0gL1xyP1xufFxyfFwwL2c7CiAgdmFyIGxpbmVTdGFydHMgPSBbMF07CiAgdmFyIGxpbmVFbmRzID0gW107CiAgdmFyIG1hdGNoOwogIHZhciBmb3VuZExpbmVObyA9IC0xOwogIHdoaWxlIChtYXRjaCA9IHJlLmV4ZWMobWFyay5idWZmZXIpKSB7CiAgICBsaW5lRW5kcy5wdXNoKG1hdGNoLmluZGV4KTsKICAgIGxpbmVTdGFydHMucHVzaChtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCk7CiAgICBpZiAobWFyay5wb3NpdGlvbiA8PSBtYXRjaC5pbmRleCAmJiBmb3VuZExpbmVObyA8IDApIHsKICAgICAgZm91bmRMaW5lTm8gPSBsaW5lU3RhcnRzLmxlbmd0aCAtIDI7CiAgICB9CiAgfQogIGlmIChmb3VuZExpbmVObyA8IDApIGZvdW5kTGluZU5vID0gbGluZVN0YXJ0cy5sZW5ndGggLSAxOwogIHZhciByZXN1bHQgPSAiIiwgaSwgbGluZTsKICB2YXIgbGluZU5vTGVuZ3RoID0gTWF0aC5taW4obWFyay5saW5lICsgb3B0aW9ucy5saW5lc0FmdGVyLCBsaW5lRW5kcy5sZW5ndGgpLnRvU3RyaW5nKCkubGVuZ3RoOwogIHZhciBtYXhMaW5lTGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggLSAob3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzKTsKICBmb3IgKGkgPSAxOyBpIDw9IG9wdGlvbnMubGluZXNCZWZvcmU7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vIC0gaSA8IDApIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ID0gY29tbW9uLnJlcGVhdCgiICIsIG9wdGlvbnMuaW5kZW50KSArIHBhZFN0YXJ0KChtYXJrLmxpbmUgLSBpICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iICsgcmVzdWx0OwogIH0KICBsaW5lID0gZ2V0TGluZShtYXJrLmJ1ZmZlciwgbGluZVN0YXJ0c1tmb3VuZExpbmVOb10sIGxpbmVFbmRzW2ZvdW5kTGluZU5vXSwgbWFyay5wb3NpdGlvbiwgbWF4TGluZUxlbmd0aCk7CiAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iOwogIHJlc3VsdCArPSBjb21tb24ucmVwZWF0KCItIiwgb3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzICsgbGluZS5wb3MpICsgIl5cbiI7CiAgZm9yIChpID0gMTsgaSA8PSBvcHRpb25zLmxpbmVzQWZ0ZXI7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vICsgaSA+PSBsaW5lRW5kcy5sZW5ndGgpIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgaSArIDEpLnRvU3RyaW5nKCksIGxpbmVOb0xlbmd0aCkgKyAiIHwgIiArIGxpbmUuc3RyICsgIlxuIjsKICB9CiAgcmV0dXJuIHJlc3VsdC5yZXBsYWNlKC9cbiQvLCAiIik7Cn0KdmFyIHNuaXBwZXQgPSBtYWtlU25pcHBldDsKdmFyIFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUyA9IFsKICAia2luZCIsCiAgIm11bHRpIiwKICAicmVzb2x2ZSIsCiAgImNvbnN0cnVjdCIsCiAgImluc3RhbmNlT2YiLAogICJwcmVkaWNhdGUiLAogICJyZXByZXNlbnQiLAogICJyZXByZXNlbnROYW1lIiwKICAiZGVmYXVsdFN0eWxlIiwKICAic3R5bGVBbGlhc2VzIgpdOwp2YXIgWUFNTF9OT0RFX0tJTkRTID0gWwogICJzY2FsYXIiLAogICJzZXF1ZW5jZSIsCiAgIm1hcHBpbmciCl07CmZ1bmN0aW9uIGNvbXBpbGVTdHlsZUFsaWFzZXMobWFwMikgewogIHZhciByZXN1bHQgPSB7fTsKICBpZiAobWFwMiAhPT0gbnVsbCkgewogICAgT2JqZWN0LmtleXMobWFwMikuZm9yRWFjaChmdW5jdGlvbihzdHlsZSkgewogICAgICBtYXAyW3N0eWxlXS5mb3JFYWNoKGZ1bmN0aW9uKGFsaWFzKSB7CiAgICAgICAgcmVzdWx0W1N0cmluZyhhbGlhcyldID0gc3R5bGU7CiAgICAgIH0pOwogICAgfSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gVHlwZSQxKHRhZywgb3B0aW9ucykgewogIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goZnVuY3Rpb24obmFtZSkgewogICAgaWYgKFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUy5pbmRleE9mKG5hbWUpID09PSAtMSkgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCdVbmtub3duIG9wdGlvbiAiJyArIG5hbWUgKyAnIiBpcyBtZXQgaW4gZGVmaW5pdGlvbiBvZiAiJyArIHRhZyArICciIFlBTUwgdHlwZS4nKTsKICAgIH0KICB9KTsKICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zOwogIHRoaXMudGFnID0gdGFnOwogIHRoaXMua2luZCA9IG9wdGlvbnNbImtpbmQiXSB8fCBudWxsOwogIHRoaXMucmVzb2x2ZSA9IG9wdGlvbnNbInJlc29sdmUiXSB8fCBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0cnVlOwogIH07CiAgdGhpcy5jb25zdHJ1Y3QgPSBvcHRpb25zWyJjb25zdHJ1Y3QiXSB8fCBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YTsKICB9OwogIHRoaXMuaW5zdGFuY2VPZiA9IG9wdGlvbnNbImluc3RhbmNlT2YiXSB8fCBudWxsOwogIHRoaXMucHJlZGljYXRlID0gb3B0aW9uc1sicHJlZGljYXRlIl0gfHwgbnVsbDsKICB0aGlzLnJlcHJlc2VudCA9IG9wdGlvbnNbInJlcHJlc2VudCJdIHx8IG51bGw7CiAgdGhpcy5yZXByZXNlbnROYW1lID0gb3B0aW9uc1sicmVwcmVzZW50TmFtZSJdIHx8IG51bGw7CiAgdGhpcy5kZWZhdWx0U3R5bGUgPSBvcHRpb25zWyJkZWZhdWx0U3R5bGUiXSB8fCBudWxsOwogIHRoaXMubXVsdGkgPSBvcHRpb25zWyJtdWx0aSJdIHx8IGZhbHNlOwogIHRoaXMuc3R5bGVBbGlhc2VzID0gY29tcGlsZVN0eWxlQWxpYXNlcyhvcHRpb25zWyJzdHlsZUFsaWFzZXMiXSB8fCBudWxsKTsKICBpZiAoWUFNTF9OT0RFX0tJTkRTLmluZGV4T2YodGhpcy5raW5kKSA9PT0gLTEpIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oJ1Vua25vd24ga2luZCAiJyArIHRoaXMua2luZCArICciIGlzIHNwZWNpZmllZCBmb3IgIicgKyB0YWcgKyAnIiBZQU1MIHR5cGUuJyk7CiAgfQp9CnZhciB0eXBlID0gVHlwZSQxOwpmdW5jdGlvbiBjb21waWxlTGlzdChzY2hlbWEyLCBuYW1lKSB7CiAgdmFyIHJlc3VsdCA9IFtdOwogIHNjaGVtYTJbbmFtZV0uZm9yRWFjaChmdW5jdGlvbihjdXJyZW50VHlwZSkgewogICAgdmFyIG5ld0luZGV4ID0gcmVzdWx0Lmxlbmd0aDsKICAgIHJlc3VsdC5mb3JFYWNoKGZ1bmN0aW9uKHByZXZpb3VzVHlwZSwgcHJldmlvdXNJbmRleCkgewogICAgICBpZiAocHJldmlvdXNUeXBlLnRhZyA9PT0gY3VycmVudFR5cGUudGFnICYmIHByZXZpb3VzVHlwZS5raW5kID09PSBjdXJyZW50VHlwZS5raW5kICYmIHByZXZpb3VzVHlwZS5tdWx0aSA9PT0gY3VycmVudFR5cGUubXVsdGkpIHsKICAgICAgICBuZXdJbmRleCA9IHByZXZpb3VzSW5kZXg7CiAgICAgIH0KICAgIH0pOwogICAgcmVzdWx0W25ld0luZGV4XSA9IGN1cnJlbnRUeXBlOwogIH0pOwogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gY29tcGlsZU1hcCgpIHsKICB2YXIgcmVzdWx0ID0gewogICAgc2NhbGFyOiB7fSwKICAgIHNlcXVlbmNlOiB7fSwKICAgIG1hcHBpbmc6IHt9LAogICAgZmFsbGJhY2s6IHt9LAogICAgbXVsdGk6IHsKICAgICAgc2NhbGFyOiBbXSwKICAgICAgc2VxdWVuY2U6IFtdLAogICAgICBtYXBwaW5nOiBbXSwKICAgICAgZmFsbGJhY2s6IFtdCiAgICB9CiAgfSwgaW5kZXgsIGxlbmd0aDsKICBmdW5jdGlvbiBjb2xsZWN0VHlwZSh0eXBlMikgewogICAgaWYgKHR5cGUyLm11bHRpKSB7CiAgICAgIHJlc3VsdC5tdWx0aVt0eXBlMi5raW5kXS5wdXNoKHR5cGUyKTsKICAgICAgcmVzdWx0Lm11bHRpWyJmYWxsYmFjayJdLnB1c2godHlwZTIpOwogICAgfSBlbHNlIHsKICAgICAgcmVzdWx0W3R5cGUyLmtpbmRdW3R5cGUyLnRhZ10gPSByZXN1bHRbImZhbGxiYWNrIl1bdHlwZTIudGFnXSA9IHR5cGUyOwogICAgfQogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIGFyZ3VtZW50c1tpbmRleF0uZm9yRWFjaChjb2xsZWN0VHlwZSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gU2NoZW1hJDEoZGVmaW5pdGlvbikgewogIHJldHVybiB0aGlzLmV4dGVuZChkZWZpbml0aW9uKTsKfQpTY2hlbWEkMS5wcm90b3R5cGUuZXh0ZW5kID0gZnVuY3Rpb24gZXh0ZW5kMihkZWZpbml0aW9uKSB7CiAgdmFyIGltcGxpY2l0ID0gW107CiAgdmFyIGV4cGxpY2l0ID0gW107CiAgaWYgKGRlZmluaXRpb24gaW5zdGFuY2VvZiB0eXBlKSB7CiAgICBleHBsaWNpdC5wdXNoKGRlZmluaXRpb24pOwogIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkgewogICAgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbik7CiAgfSBlbHNlIGlmIChkZWZpbml0aW9uICYmIChBcnJheS5pc0FycmF5KGRlZmluaXRpb24uaW1wbGljaXQpIHx8IEFycmF5LmlzQXJyYXkoZGVmaW5pdGlvbi5leHBsaWNpdCkpKSB7CiAgICBpZiAoZGVmaW5pdGlvbi5pbXBsaWNpdCkgaW1wbGljaXQgPSBpbXBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5pbXBsaWNpdCk7CiAgICBpZiAoZGVmaW5pdGlvbi5leHBsaWNpdCkgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5leHBsaWNpdCk7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNjaGVtYS5leHRlbmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgVHlwZSwgWyBUeXBlIF0sIG9yIGEgc2NoZW1hIGRlZmluaXRpb24gKHsgaW1wbGljaXQ6IFsuLi5dLCBleHBsaWNpdDogWy4uLl0gfSkiKTsKICB9CiAgaW1wbGljaXQuZm9yRWFjaChmdW5jdGlvbih0eXBlJDEpIHsKICAgIGlmICghKHR5cGUkMSBpbnN0YW5jZW9mIHR5cGUpKSB7CiAgICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNwZWNpZmllZCBsaXN0IG9mIFlBTUwgdHlwZXMgKG9yIGEgc2luZ2xlIFR5cGUgb2JqZWN0KSBjb250YWlucyBhIG5vbi1UeXBlIG9iamVjdC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubG9hZEtpbmQgJiYgdHlwZSQxLmxvYWRLaW5kICE9PSAic2NhbGFyIikgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJUaGVyZSBpcyBhIG5vbi1zY2FsYXIgdHlwZSBpbiB0aGUgaW1wbGljaXQgbGlzdCBvZiBhIHNjaGVtYS4gSW1wbGljaXQgcmVzb2x2aW5nIG9mIHN1Y2ggdHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubXVsdGkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiVGhlcmUgaXMgYSBtdWx0aSB0eXBlIGluIHRoZSBpbXBsaWNpdCBsaXN0IG9mIGEgc2NoZW1hLiBNdWx0aSB0YWdzIGNhbiBvbmx5IGJlIGxpc3RlZCBhcyBleHBsaWNpdC4iKTsKICAgIH0KICB9KTsKICBleHBsaWNpdC5mb3JFYWNoKGZ1bmN0aW9uKHR5cGUkMSkgewogICAgaWYgKCEodHlwZSQxIGluc3RhbmNlb2YgdHlwZSkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiU3BlY2lmaWVkIGxpc3Qgb2YgWUFNTCB0eXBlcyAob3IgYSBzaW5nbGUgVHlwZSBvYmplY3QpIGNvbnRhaW5zIGEgbm9uLVR5cGUgb2JqZWN0LiIpOwogICAgfQogIH0pOwogIHZhciByZXN1bHQgPSBPYmplY3QuY3JlYXRlKFNjaGVtYSQxLnByb3RvdHlwZSk7CiAgcmVzdWx0LmltcGxpY2l0ID0gKHRoaXMuaW1wbGljaXQgfHwgW10pLmNvbmNhdChpbXBsaWNpdCk7CiAgcmVzdWx0LmV4cGxpY2l0ID0gKHRoaXMuZXhwbGljaXQgfHwgW10pLmNvbmNhdChleHBsaWNpdCk7CiAgcmVzdWx0LmNvbXBpbGVkSW1wbGljaXQgPSBjb21waWxlTGlzdChyZXN1bHQsICJpbXBsaWNpdCIpOwogIHJlc3VsdC5jb21waWxlZEV4cGxpY2l0ID0gY29tcGlsZUxpc3QocmVzdWx0LCAiZXhwbGljaXQiKTsKICByZXN1bHQuY29tcGlsZWRUeXBlTWFwID0gY29tcGlsZU1hcChyZXN1bHQuY29tcGlsZWRJbXBsaWNpdCwgcmVzdWx0LmNvbXBpbGVkRXhwbGljaXQpOwogIHJldHVybiByZXN1bHQ7Cn07CnZhciBzY2hlbWEgPSBTY2hlbWEkMTsKdmFyIHN0ciA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpzdHIiLCB7CiAga2luZDogInNjYWxhciIsCiAgY29uc3RydWN0OiBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiAiIjsKICB9Cn0pOwp2YXIgc2VxID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNlcSIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107CiAgfQp9KTsKdmFyIG1hcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptYXAiLCB7CiAga2luZDogIm1hcHBpbmciLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDoge307CiAgfQp9KTsKdmFyIGZhaWxzYWZlID0gbmV3IHNjaGVtYSh7CiAgZXhwbGljaXQ6IFsKICAgIHN0ciwKICAgIHNlcSwKICAgIG1hcAogIF0KfSk7CmZ1bmN0aW9uIHJlc29sdmVZYW1sTnVsbChkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiB0cnVlOwogIHZhciBtYXggPSBkYXRhLmxlbmd0aDsKICByZXR1cm4gbWF4ID09PSAxICYmIGRhdGEgPT09ICJ+IiB8fCBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJudWxsIiB8fCBkYXRhID09PSAiTnVsbCIgfHwgZGF0YSA9PT0gIk5VTEwiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sTnVsbCgpIHsKICByZXR1cm4gbnVsbDsKfQpmdW5jdGlvbiBpc051bGwob2JqZWN0KSB7CiAgcmV0dXJuIG9iamVjdCA9PT0gbnVsbDsKfQp2YXIgX251bGwgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6bnVsbCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE51bGwsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sTnVsbCwKICBwcmVkaWNhdGU6IGlzTnVsbCwKICByZXByZXNlbnQ6IHsKICAgIGNhbm9uaWNhbDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAifiI7CiAgICB9LAogICAgbG93ZXJjYXNlOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuICJudWxsIjsKICAgIH0sCiAgICB1cHBlcmNhc2U6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIk5VTEwiOwogICAgfSwKICAgIGNhbWVsY2FzZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAiTnVsbCI7CiAgICB9LAogICAgZW1wdHk6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIiI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJvb2xlYW4oZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoOwogIHJldHVybiBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiKSB8fCBtYXggPT09IDUgJiYgKGRhdGEgPT09ICJmYWxzZSIgfHwgZGF0YSA9PT0gIkZhbHNlIiB8fCBkYXRhID09PSAiRkFMU0UiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQm9vbGVhbihkYXRhKSB7CiAgcmV0dXJuIGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiOwp9CmZ1bmN0aW9uIGlzQm9vbGVhbihvYmplY3QpIHsKICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iamVjdCkgPT09ICJbb2JqZWN0IEJvb2xlYW5dIjsKfQp2YXIgYm9vbCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpib29sIiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQm9vbGVhbiwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxCb29sZWFuLAogIHByZWRpY2F0ZTogaXNCb29sZWFuLAogIHJlcHJlc2VudDogewogICAgbG93ZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJ0cnVlIiA6ICJmYWxzZSI7CiAgICB9LAogICAgdXBwZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUUlVFIiA6ICJGQUxTRSI7CiAgICB9LAogICAgY2FtZWxjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUcnVlIiA6ICJGYWxzZSI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiBpc0hleENvZGUoYykgewogIHJldHVybiA0OCA8PSBjICYmIGMgPD0gNTcgfHwgNjUgPD0gYyAmJiBjIDw9IDcwIHx8IDk3IDw9IGMgJiYgYyA8PSAxMDI7Cn0KZnVuY3Rpb24gaXNPY3RDb2RlKGMpIHsKICByZXR1cm4gNDggPD0gYyAmJiBjIDw9IDU1Owp9CmZ1bmN0aW9uIGlzRGVjQ29kZShjKSB7CiAgcmV0dXJuIDQ4IDw9IGMgJiYgYyA8PSA1NzsKfQpmdW5jdGlvbiByZXNvbHZlWWFtbEludGVnZXIoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoLCBpbmRleCA9IDAsIGhhc0RpZ2l0cyA9IGZhbHNlLCBjaDsKICBpZiAoIW1heCkgcmV0dXJuIGZhbHNlOwogIGNoID0gZGF0YVtpbmRleF07CiAgaWYgKGNoID09PSAiLSIgfHwgY2ggPT09ICIrIikgewogICAgY2ggPSBkYXRhWysraW5kZXhdOwogIH0KICBpZiAoY2ggPT09ICIwIikgewogICAgaWYgKGluZGV4ICsgMSA9PT0gbWF4KSByZXR1cm4gdHJ1ZTsKICAgIGNoID0gZGF0YVsrK2luZGV4XTsKICAgIGlmIChjaCA9PT0gImIiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmIChjaCAhPT0gIjAiICYmIGNoICE9PSAiMSIpIHJldHVybiBmYWxzZTsKICAgICAgICBoYXNEaWdpdHMgPSB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBoYXNEaWdpdHMgJiYgY2ggIT09ICJfIjsKICAgIH0KICAgIGlmIChjaCA9PT0gIngiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmICghaXNIZXhDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgaGFzRGlnaXRzID0gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gaGFzRGlnaXRzICYmIGNoICE9PSAiXyI7CiAgICB9CiAgICBpZiAoY2ggPT09ICJvIikgewogICAgICBpbmRleCsrOwogICAgICBmb3IgKDsgaW5kZXggPCBtYXg7IGluZGV4KyspIHsKICAgICAgICBjaCA9IGRhdGFbaW5kZXhdOwogICAgICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgICAgICBpZiAoIWlzT2N0Q29kZShkYXRhLmNoYXJDb2RlQXQoaW5kZXgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGhhc0RpZ2l0cyAmJiBjaCAhPT0gIl8iOwogICAgfQogIH0KICBpZiAoY2ggPT09ICJfIikgcmV0dXJuIGZhbHNlOwogIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgY2ggPSBkYXRhW2luZGV4XTsKICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgIGlmICghaXNEZWNDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgfQogIGlmICghaGFzRGlnaXRzIHx8IGNoID09PSAiXyIpIHJldHVybiBmYWxzZTsKICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sSW50ZWdlcihkYXRhKSB7CiAgdmFyIHZhbHVlID0gZGF0YSwgc2lnbiA9IDEsIGNoOwogIGlmICh2YWx1ZS5pbmRleE9mKCJfIikgIT09IC0xKSB7CiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL18vZywgIiIpOwogIH0KICBjaCA9IHZhbHVlWzBdOwogIGlmIChjaCA9PT0gIi0iIHx8IGNoID09PSAiKyIpIHsKICAgIGlmIChjaCA9PT0gIi0iKSBzaWduID0gLTE7CiAgICB2YWx1ZSA9IHZhbHVlLnNsaWNlKDEpOwogICAgY2ggPSB2YWx1ZVswXTsKICB9CiAgaWYgKHZhbHVlID09PSAiMCIpIHJldHVybiAwOwogIGlmIChjaCA9PT0gIjAiKSB7CiAgICBpZiAodmFsdWVbMV0gPT09ICJiIikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMik7CiAgICBpZiAodmFsdWVbMV0gPT09ICJ4IikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMTYpOwogICAgaWYgKHZhbHVlWzFdID09PSAibyIpIHJldHVybiBzaWduICogcGFyc2VJbnQodmFsdWUuc2xpY2UoMiksIDgpOwogIH0KICByZXR1cm4gc2lnbiAqIHBhcnNlSW50KHZhbHVlLCAxMCk7Cn0KZnVuY3Rpb24gaXNJbnRlZ2VyKG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgPT09IDAgJiYgIWNvbW1vbi5pc05lZ2F0aXZlWmVybyhvYmplY3QpKTsKfQp2YXIgaW50ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOmludCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEludGVnZXIsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sSW50ZWdlciwKICBwcmVkaWNhdGU6IGlzSW50ZWdlciwKICByZXByZXNlbnQ6IHsKICAgIGJpbmFyeTogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwYiIgKyBvYmoudG9TdHJpbmcoMikgOiAiLTBiIiArIG9iai50b1N0cmluZygyKS5zbGljZSgxKTsKICAgIH0sCiAgICBvY3RhbDogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwbyIgKyBvYmoudG9TdHJpbmcoOCkgOiAiLTBvIiArIG9iai50b1N0cmluZyg4KS5zbGljZSgxKTsKICAgIH0sCiAgICBkZWNpbWFsOiBmdW5jdGlvbihvYmopIHsKICAgICAgcmV0dXJuIG9iai50b1N0cmluZygxMCk7CiAgICB9LAogICAgLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqLwogICAgaGV4YWRlY2ltYWw6IGZ1bmN0aW9uKG9iaikgewogICAgICByZXR1cm4gb2JqID49IDAgPyAiMHgiICsgb2JqLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpIDogIi0weCIgKyBvYmoudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkuc2xpY2UoMSk7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJkZWNpbWFsIiwKICBzdHlsZUFsaWFzZXM6IHsKICAgIGJpbmFyeTogWzIsICJiaW4iXSwKICAgIG9jdGFsOiBbOCwgIm9jdCJdLAogICAgZGVjaW1hbDogWzEwLCAiZGVjIl0sCiAgICBoZXhhZGVjaW1hbDogWzE2LCAiaGV4Il0KICB9Cn0pOwp2YXIgWUFNTF9GTE9BVF9QQVRURVJOID0gbmV3IFJlZ0V4cCgKICAvLyAyLjVlNCwgMi41IGFuZCBpbnRlZ2VycwogICJeKD86Wy0rXT8oPzpbMC05XVswLTlfXSopKD86XFwuWzAtOV9dKik/KD86W2VFXVstK10/WzAtOV0rKT98XFwuWzAtOV9dKyg/OltlRV1bLStdP1swLTldKyk/fFstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLig/Om5hbnxOYU58TkFOKSkkIgopOwpmdW5jdGlvbiByZXNvbHZlWWFtbEZsb2F0KGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmICghWUFNTF9GTE9BVF9QQVRURVJOLnRlc3QoZGF0YSkgfHwgLy8gUXVpY2sgaGFjayB0byBub3QgYWxsb3cgaW50ZWdlcnMgZW5kIHdpdGggYF9gCiAgLy8gUHJvYmFibHkgc2hvdWxkIHVwZGF0ZSByZWdleHAgJiBjaGVjayBzcGVlZAogIGRhdGFbZGF0YS5sZW5ndGggLSAxXSA9PT0gIl8iKSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxGbG9hdChkYXRhKSB7CiAgdmFyIHZhbHVlLCBzaWduOwogIHZhbHVlID0gZGF0YS5yZXBsYWNlKC9fL2csICIiKS50b0xvd2VyQ2FzZSgpOwogIHNpZ24gPSB2YWx1ZVswXSA9PT0gIi0iID8gLTEgOiAxOwogIGlmICgiKy0iLmluZGV4T2YodmFsdWVbMF0pID49IDApIHsKICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMSk7CiAgfQogIGlmICh2YWx1ZSA9PT0gIi5pbmYiKSB7CiAgICByZXR1cm4gc2lnbiA9PT0gMSA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKICB9IGVsc2UgaWYgKHZhbHVlID09PSAiLm5hbiIpIHsKICAgIHJldHVybiBOYU47CiAgfQogIHJldHVybiBzaWduICogcGFyc2VGbG9hdCh2YWx1ZSwgMTApOwp9CnZhciBTQ0lFTlRJRklDX1dJVEhPVVRfRE9UID0gL15bLStdP1swLTldK2UvOwpmdW5jdGlvbiByZXByZXNlbnRZYW1sRmxvYXQob2JqZWN0LCBzdHlsZSkgewogIHZhciByZXM7CiAgaWYgKGlzTmFOKG9iamVjdCkpIHsKICAgIHN3aXRjaCAoc3R5bGUpIHsKICAgICAgY2FzZSAibG93ZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5uYW4iOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLk5BTiI7CiAgICAgIGNhc2UgImNhbWVsY2FzZSI6CiAgICAgICAgcmV0dXJuICIuTmFOIjsKICAgIH0KICB9IGVsc2UgaWYgKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA9PT0gb2JqZWN0KSB7CiAgICBzd2l0Y2ggKHN0eWxlKSB7CiAgICAgIGNhc2UgImxvd2VyY2FzZSI6CiAgICAgICAgcmV0dXJuICIuaW5mIjsKICAgICAgY2FzZSAidXBwZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLkluZiI7CiAgICB9CiAgfSBlbHNlIGlmIChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IG9iamVjdCkgewogICAgc3dpdGNoIChzdHlsZSkgewogICAgICBjYXNlICJsb3dlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5pbmYiOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLS5JbmYiOwogICAgfQogIH0gZWxzZSBpZiAoY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpIHsKICAgIHJldHVybiAiLTAuMCI7CiAgfQogIHJlcyA9IG9iamVjdC50b1N0cmluZygxMCk7CiAgcmV0dXJuIFNDSUVOVElGSUNfV0lUSE9VVF9ET1QudGVzdChyZXMpID8gcmVzLnJlcGxhY2UoImUiLCAiLmUiKSA6IHJlczsKfQpmdW5jdGlvbiBpc0Zsb2F0KG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgIT09IDAgfHwgY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpOwp9CnZhciBmbG9hdCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEZsb2F0LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEZsb2F0LAogIHByZWRpY2F0ZTogaXNGbG9hdCwKICByZXByZXNlbnQ6IHJlcHJlc2VudFlhbWxGbG9hdCwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwp2YXIganNvbiA9IGZhaWxzYWZlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIF9udWxsLAogICAgYm9vbCwKICAgIGludCwKICAgIGZsb2F0CiAgXQp9KTsKdmFyIGNvcmUgPSBqc29uOwp2YXIgWUFNTF9EQVRFX1JFR0VYUCA9IG5ldyBSZWdFeHAoCiAgIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldKS0oWzAtOV1bMC05XSkkIgopOwp2YXIgWUFNTF9USU1FU1RBTVBfUkVHRVhQID0gbmV3IFJlZ0V4cCgKICAiXihbMC05XVswLTldWzAtOV1bMC05XSktKFswLTldWzAtOV0/KS0oWzAtOV1bMC05XT8pKD86W1R0XXxbIFxcdF0rKShbMC05XVswLTldPyk6KFswLTldWzAtOV0pOihbMC05XVswLTldKSg/OlxcLihbMC05XSopKT8oPzpbIFxcdF0qKFp8KFstK10pKFswLTldWzAtOV0/KSg/OjooWzAtOV1bMC05XSkpPykpPyQiCik7CmZ1bmN0aW9uIHJlc29sdmVZYW1sVGltZXN0YW1wKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmIChZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSkgIT09IG51bGwpIHJldHVybiB0cnVlOwogIGlmIChZQU1MX1RJTUVTVEFNUF9SRUdFWFAuZXhlYyhkYXRhKSAhPT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxUaW1lc3RhbXAoZGF0YSkgewogIHZhciBtYXRjaCwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uID0gMCwgZGVsdGEgPSBudWxsLCB0el9ob3VyLCB0el9taW51dGUsIGRhdGU7CiAgbWF0Y2ggPSBZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSk7CiAgaWYgKG1hdGNoID09PSBudWxsKSBtYXRjaCA9IFlBTUxfVElNRVNUQU1QX1JFR0VYUC5leGVjKGRhdGEpOwogIGlmIChtYXRjaCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCJEYXRlIHJlc29sdmUgZXJyb3IiKTsKICB5ZWFyID0gK21hdGNoWzFdOwogIG1vbnRoID0gK21hdGNoWzJdIC0gMTsKICBkYXkgPSArbWF0Y2hbM107CiAgaWYgKCFtYXRjaFs0XSkgewogICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTsKICB9CiAgaG91ciA9ICttYXRjaFs0XTsKICBtaW51dGUgPSArbWF0Y2hbNV07CiAgc2Vjb25kID0gK21hdGNoWzZdOwogIGlmIChtYXRjaFs3XSkgewogICAgZnJhY3Rpb24gPSBtYXRjaFs3XS5zbGljZSgwLCAzKTsKICAgIHdoaWxlIChmcmFjdGlvbi5sZW5ndGggPCAzKSB7CiAgICAgIGZyYWN0aW9uICs9ICIwIjsKICAgIH0KICAgIGZyYWN0aW9uID0gK2ZyYWN0aW9uOwogIH0KICBpZiAobWF0Y2hbOV0pIHsKICAgIHR6X2hvdXIgPSArbWF0Y2hbMTBdOwogICAgdHpfbWludXRlID0gKyhtYXRjaFsxMV0gfHwgMCk7CiAgICBkZWx0YSA9ICh0el9ob3VyICogNjAgKyB0el9taW51dGUpICogNmU0OwogICAgaWYgKG1hdGNoWzldID09PSAiLSIpIGRlbHRhID0gLWRlbHRhOwogIH0KICBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMoeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uKSk7CiAgaWYgKGRlbHRhKSBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgLSBkZWx0YSk7CiAgcmV0dXJuIGRhdGU7Cn0KZnVuY3Rpb24gcmVwcmVzZW50WWFtbFRpbWVzdGFtcChvYmplY3QpIHsKICByZXR1cm4gb2JqZWN0LnRvSVNPU3RyaW5nKCk7Cn0KdmFyIHRpbWVzdGFtcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjp0aW1lc3RhbXAiLCB7CiAga2luZDogInNjYWxhciIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxUaW1lc3RhbXAsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sVGltZXN0YW1wLAogIGluc3RhbmNlT2Y6IERhdGUsCiAgcmVwcmVzZW50OiByZXByZXNlbnRZYW1sVGltZXN0YW1wCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbE1lcmdlKGRhdGEpIHsKICByZXR1cm4gZGF0YSA9PT0gIjw8IiB8fCBkYXRhID09PSBudWxsOwp9CnZhciBtZXJnZSA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE1lcmdlCn0pOwp2YXIgQkFTRTY0X01BUCA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPVxuXHIiOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJpbmFyeShkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiBmYWxzZTsKICB2YXIgY29kZSwgaWR4LCBiaXRsZW4gPSAwLCBtYXggPSBkYXRhLmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBjb2RlID0gbWFwMi5pbmRleE9mKGRhdGEuY2hhckF0KGlkeCkpOwogICAgaWYgKGNvZGUgPiA2NCkgY29udGludWU7CiAgICBpZiAoY29kZSA8IDApIHJldHVybiBmYWxzZTsKICAgIGJpdGxlbiArPSA2OwogIH0KICByZXR1cm4gYml0bGVuICUgOCA9PT0gMDsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQmluYXJ5KGRhdGEpIHsKICB2YXIgaWR4LCB0YWlsYml0cywgaW5wdXQgPSBkYXRhLnJlcGxhY2UoL1tcclxuPV0vZywgIiIpLCBtYXggPSBpbnB1dC5sZW5ndGgsIG1hcDIgPSBCQVNFNjRfTUFQLCBiaXRzID0gMCwgcmVzdWx0ID0gW107CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgNCA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0LnB1c2goYml0cyA+PiAxNiAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgJiAyNTUpOwogICAgfQogICAgYml0cyA9IGJpdHMgPDwgNiB8IG1hcDIuaW5kZXhPZihpbnB1dC5jaGFyQXQoaWR4KSk7CiAgfQogIHRhaWxiaXRzID0gbWF4ICUgNCAqIDY7CiAgaWYgKHRhaWxiaXRzID09PSAwKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDE2ICYgMjU1KTsKICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzICYgMjU1KTsKICB9IGVsc2UgaWYgKHRhaWxiaXRzID09PSAxOCkgewogICAgcmVzdWx0LnB1c2goYml0cyA+PiAxMCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDIgJiAyNTUpOwogIH0gZWxzZSBpZiAodGFpbGJpdHMgPT09IDEyKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDQgJiAyNTUpOwogIH0KICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkocmVzdWx0KTsKfQpmdW5jdGlvbiByZXByZXNlbnRZYW1sQmluYXJ5KG9iamVjdCkgewogIHZhciByZXN1bHQgPSAiIiwgYml0cyA9IDAsIGlkeCwgdGFpbCwgbWF4ID0gb2JqZWN0Lmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgMyA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxOCAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA2ICYgNjNdOwogICAgICByZXN1bHQgKz0gbWFwMltiaXRzICYgNjNdOwogICAgfQogICAgYml0cyA9IChiaXRzIDw8IDgpICsgb2JqZWN0W2lkeF07CiAgfQogIHRhaWwgPSBtYXggJSAzOwogIGlmICh0YWlsID09PSAwKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDE4ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgPj4gNiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgJiA2M107CiAgfSBlbHNlIGlmICh0YWlsID09PSAyKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDEwICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0gZWxzZSBpZiAodGFpbCA9PT0gMSkgewogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0KICByZXR1cm4gcmVzdWx0Owp9CmZ1bmN0aW9uIGlzQmluYXJ5KG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKSA9PT0gIltvYmplY3QgVWludDhBcnJheV0iOwp9CnZhciBiaW5hcnkgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5IiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQmluYXJ5LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEJpbmFyeSwKICBwcmVkaWNhdGU6IGlzQmluYXJ5LAogIHJlcHJlc2VudDogcmVwcmVzZW50WWFtbEJpbmFyeQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQzID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIF90b1N0cmluZyQyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxPbWFwKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIG9iamVjdEtleXMgPSBbXSwgaW5kZXgsIGxlbmd0aCwgcGFpciwgcGFpcktleSwgcGFpckhhc0tleSwgb2JqZWN0ID0gZGF0YTsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHBhaXIgPSBvYmplY3RbaW5kZXhdOwogICAgcGFpckhhc0tleSA9IGZhbHNlOwogICAgaWYgKF90b1N0cmluZyQyLmNhbGwocGFpcikgIT09ICJbb2JqZWN0IE9iamVjdF0iKSByZXR1cm4gZmFsc2U7CiAgICBmb3IgKHBhaXJLZXkgaW4gcGFpcikgewogICAgICBpZiAoX2hhc093blByb3BlcnR5JDMuY2FsbChwYWlyLCBwYWlyS2V5KSkgewogICAgICAgIGlmICghcGFpckhhc0tleSkgcGFpckhhc0tleSA9IHRydWU7CiAgICAgICAgZWxzZSByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIGlmICghcGFpckhhc0tleSkgcmV0dXJuIGZhbHNlOwogICAgaWYgKG9iamVjdEtleXMuaW5kZXhPZihwYWlyS2V5KSA9PT0gLTEpIG9iamVjdEtleXMucHVzaChwYWlyS2V5KTsKICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sT21hcChkYXRhKSB7CiAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107Cn0KdmFyIG9tYXAgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6b21hcCIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sT21hcCwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxPbWFwCn0pOwp2YXIgX3RvU3RyaW5nJDEgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpmdW5jdGlvbiByZXNvbHZlWWFtbFBhaXJzKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGlmIChfdG9TdHJpbmckMS5jYWxsKHBhaXIpICE9PSAiW29iamVjdCBPYmplY3RdIikgcmV0dXJuIGZhbHNlOwogICAga2V5cyA9IE9iamVjdC5rZXlzKHBhaXIpOwogICAgaWYgKGtleXMubGVuZ3RoICE9PSAxKSByZXR1cm4gZmFsc2U7CiAgICByZXN1bHRbaW5kZXhdID0gW2tleXNbMF0sIHBhaXJba2V5c1swXV1dOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sUGFpcnMoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gW107CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGtleXMgPSBPYmplY3Qua2V5cyhwYWlyKTsKICAgIHJlc3VsdFtpbmRleF0gPSBba2V5c1swXSwgcGFpcltrZXlzWzBdXV07CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KdmFyIHBhaXJzID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnBhaXJzIiwgewogIGtpbmQ6ICJzZXF1ZW5jZSIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxQYWlycywKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxQYWlycwp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQyID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxTZXQoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gdHJ1ZTsKICB2YXIga2V5LCBvYmplY3QgPSBkYXRhOwogIGZvciAoa2V5IGluIG9iamVjdCkgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQyLmNhbGwob2JqZWN0LCBrZXkpKSB7CiAgICAgIGlmIChvYmplY3Rba2V5XSAhPT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sU2V0KGRhdGEpIHsKICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiB7fTsKfQp2YXIgc2V0ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNldCIsIHsKICBraW5kOiAibWFwcGluZyIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxTZXQsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sU2V0Cn0pOwp2YXIgX2RlZmF1bHQgPSBjb3JlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIHRpbWVzdGFtcCwKICAgIG1lcmdlCiAgXSwKICBleHBsaWNpdDogWwogICAgYmluYXJ5LAogICAgb21hcCwKICAgIHBhaXJzLAogICAgc2V0CiAgXQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQxID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENPTlRFWFRfRkxPV19JTiA9IDE7CnZhciBDT05URVhUX0ZMT1dfT1VUID0gMjsKdmFyIENPTlRFWFRfQkxPQ0tfSU4gPSAzOwp2YXIgQ09OVEVYVF9CTE9DS19PVVQgPSA0Owp2YXIgQ0hPTVBJTkdfQ0xJUCA9IDE7CnZhciBDSE9NUElOR19TVFJJUCA9IDI7CnZhciBDSE9NUElOR19LRUVQID0gMzsKdmFyIFBBVFRFUk5fTk9OX1BSSU5UQUJMRSA9IC9bXHgwMC1ceDA4XHgwQlx4MENceDBFLVx4MUZceDdGLVx4ODRceDg2LVx4OUZcdUZGRkVcdUZGRkZdfFtcdUQ4MDAtXHVEQkZGXSg/IVtcdURDMDAtXHVERkZGXSl8KD86W15cdUQ4MDAtXHVEQkZGXXxeKVtcdURDMDAtXHVERkZGXS87CnZhciBQQVRURVJOX05PTl9BU0NJSV9MSU5FX0JSRUFLUyA9IC9bXHg4NVx1MjAyOFx1MjAyOV0vOwp2YXIgUEFUVEVSTl9GTE9XX0lORElDQVRPUlMgPSAvWyxcW1xdXHtcfV0vOwp2YXIgUEFUVEVSTl9UQUdfSEFORExFID0gL14oPzohfCEhfCFbYS16XC1dKyEpJC9pOwp2YXIgUEFUVEVSTl9UQUdfVVJJID0gL14oPzohfFteLFxbXF1ce1x9XSkoPzolWzAtOWEtZl17Mn18WzAtOWEtelwtIztcL1w/OkAmPVwrXCQsX1wuIX5cKidcKFwpXFtcXV0pKiQvaTsKZnVuY3Rpb24gX2NsYXNzKG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKTsKfQpmdW5jdGlvbiBpc19FT0woYykgewogIHJldHVybiBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19XSElURV9TUEFDRShjKSB7CiAgcmV0dXJuIGMgPT09IDkgfHwgYyA9PT0gMzI7Cn0KZnVuY3Rpb24gaXNfV1NfT1JfRU9MKGMpIHsKICByZXR1cm4gYyA9PT0gOSB8fCBjID09PSAzMiB8fCBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19GTE9XX0lORElDQVRPUihjKSB7CiAgcmV0dXJuIGMgPT09IDQ0IHx8IGMgPT09IDkxIHx8IGMgPT09IDkzIHx8IGMgPT09IDEyMyB8fCBjID09PSAxMjU7Cn0KZnVuY3Rpb24gZnJvbUhleENvZGUoYykgewogIHZhciBsYzsKICBpZiAoNDggPD0gYyAmJiBjIDw9IDU3KSB7CiAgICByZXR1cm4gYyAtIDQ4OwogIH0KICBsYyA9IGMgfCAzMjsKICBpZiAoOTcgPD0gbGMgJiYgbGMgPD0gMTAyKSB7CiAgICByZXR1cm4gbGMgLSA5NyArIDEwOwogIH0KICByZXR1cm4gLTE7Cn0KZnVuY3Rpb24gZXNjYXBlZEhleExlbihjKSB7CiAgaWYgKGMgPT09IDEyMCkgewogICAgcmV0dXJuIDI7CiAgfQogIGlmIChjID09PSAxMTcpIHsKICAgIHJldHVybiA0OwogIH0KICBpZiAoYyA9PT0gODUpIHsKICAgIHJldHVybiA4OwogIH0KICByZXR1cm4gMDsKfQpmdW5jdGlvbiBmcm9tRGVjaW1hbENvZGUoYykgewogIGlmICg0OCA8PSBjICYmIGMgPD0gNTcpIHsKICAgIHJldHVybiBjIC0gNDg7CiAgfQogIHJldHVybiAtMTsKfQpmdW5jdGlvbiBzaW1wbGVFc2NhcGVTZXF1ZW5jZShjKSB7CiAgcmV0dXJuIGMgPT09IDQ4ID8gIlwwIiA6IGMgPT09IDk3ID8gIlx4MDciIDogYyA9PT0gOTggPyAiXGIiIDogYyA9PT0gMTE2ID8gIgkiIDogYyA9PT0gOSA/ICIJIiA6IGMgPT09IDExMCA/ICJcbiIgOiBjID09PSAxMTggPyAiXHYiIDogYyA9PT0gMTAyID8gIlxmIiA6IGMgPT09IDExNCA/ICJcciIgOiBjID09PSAxMDEgPyAiXHgxQiIgOiBjID09PSAzMiA/ICIgIiA6IGMgPT09IDM0ID8gJyInIDogYyA9PT0gNDcgPyAiLyIgOiBjID09PSA5MiA/ICJcXCIgOiBjID09PSA3OCA/ICJceDg1IiA6IGMgPT09IDk1ID8gIlx4QTAiIDogYyA9PT0gNzYgPyAiXHUyMDI4IiA6IGMgPT09IDgwID8gIlx1MjAyOSIgOiAiIjsKfQpmdW5jdGlvbiBjaGFyRnJvbUNvZGVwb2ludChjKSB7CiAgaWYgKGMgPD0gNjU1MzUpIHsKICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGMpOwogIH0KICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSgKICAgIChjIC0gNjU1MzYgPj4gMTApICsgNTUyOTYsCiAgICAoYyAtIDY1NTM2ICYgMTAyMykgKyA1NjMyMAogICk7Cn0KdmFyIHNpbXBsZUVzY2FwZUNoZWNrID0gbmV3IEFycmF5KDI1Nik7CnZhciBzaW1wbGVFc2NhcGVNYXAgPSBuZXcgQXJyYXkoMjU2KTsKZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CiAgc2ltcGxlRXNjYXBlQ2hlY2tbaV0gPSBzaW1wbGVFc2NhcGVTZXF1ZW5jZShpKSA/IDEgOiAwOwogIHNpbXBsZUVzY2FwZU1hcFtpXSA9IHNpbXBsZUVzY2FwZVNlcXVlbmNlKGkpOwp9CnZhciBpOwpmdW5jdGlvbiBTdGF0ZSQxKGlucHV0LCBvcHRpb25zKSB7CiAgdGhpcy5pbnB1dCA9IGlucHV0OwogIHRoaXMuZmlsZW5hbWUgPSBvcHRpb25zWyJmaWxlbmFtZSJdIHx8IG51bGw7CiAgdGhpcy5zY2hlbWEgPSBvcHRpb25zWyJzY2hlbWEiXSB8fCBfZGVmYXVsdDsKICB0aGlzLm9uV2FybmluZyA9IG9wdGlvbnNbIm9uV2FybmluZyJdIHx8IG51bGw7CiAgdGhpcy5sZWdhY3kgPSBvcHRpb25zWyJsZWdhY3kiXSB8fCBmYWxzZTsKICB0aGlzLmpzb24gPSBvcHRpb25zWyJqc29uIl0gfHwgZmFsc2U7CiAgdGhpcy5saXN0ZW5lciA9IG9wdGlvbnNbImxpc3RlbmVyIl0gfHwgbnVsbDsKICB0aGlzLmltcGxpY2l0VHlwZXMgPSB0aGlzLnNjaGVtYS5jb21waWxlZEltcGxpY2l0OwogIHRoaXMudHlwZU1hcCA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkVHlwZU1hcDsKICB0aGlzLmxlbmd0aCA9IGlucHV0Lmxlbmd0aDsKICB0aGlzLnBvc2l0aW9uID0gMDsKICB0aGlzLmxpbmUgPSAwOwogIHRoaXMubGluZVN0YXJ0ID0gMDsKICB0aGlzLmxpbmVJbmRlbnQgPSAwOwogIHRoaXMuZmlyc3RUYWJJbkxpbmUgPSAtMTsKICB0aGlzLmRvY3VtZW50cyA9IFtdOwp9CmZ1bmN0aW9uIGdlbmVyYXRlRXJyb3Ioc3RhdGUsIG1lc3NhZ2UpIHsKICB2YXIgbWFyayA9IHsKICAgIG5hbWU6IHN0YXRlLmZpbGVuYW1lLAogICAgYnVmZmVyOiBzdGF0ZS5pbnB1dC5zbGljZSgwLCAtMSksCiAgICAvLyBvbWl0IHRyYWlsaW5nIFwwCiAgICBwb3NpdGlvbjogc3RhdGUucG9zaXRpb24sCiAgICBsaW5lOiBzdGF0ZS5saW5lLAogICAgY29sdW1uOiBzdGF0ZS5wb3NpdGlvbiAtIHN0YXRlLmxpbmVTdGFydAogIH07CiAgbWFyay5zbmlwcGV0ID0gc25pcHBldChtYXJrKTsKICByZXR1cm4gbmV3IGV4Y2VwdGlvbihtZXNzYWdlLCBtYXJrKTsKfQpmdW5jdGlvbiB0aHJvd0Vycm9yKHN0YXRlLCBtZXNzYWdlKSB7CiAgdGhyb3cgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSk7Cn0KZnVuY3Rpb24gdGhyb3dXYXJuaW5nKHN0YXRlLCBtZXNzYWdlKSB7CiAgaWYgKHN0YXRlLm9uV2FybmluZykgewogICAgc3RhdGUub25XYXJuaW5nLmNhbGwobnVsbCwgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSkpOwogIH0KfQp2YXIgZGlyZWN0aXZlSGFuZGxlcnMgPSB7CiAgWUFNTDogZnVuY3Rpb24gaGFuZGxlWWFtbERpcmVjdGl2ZShzdGF0ZSwgbmFtZSwgYXJncykgewogICAgdmFyIG1hdGNoLCBtYWpvciwgbWlub3I7CiAgICBpZiAoc3RhdGUudmVyc2lvbiAhPT0gbnVsbCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgJVlBTUwgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoYXJncy5sZW5ndGggIT09IDEpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIllBTUwgZGlyZWN0aXZlIGFjY2VwdHMgZXhhY3RseSBvbmUgYXJndW1lbnQiKTsKICAgIH0KICAgIG1hdGNoID0gL14oWzAtOV0rKVwuKFswLTldKykkLy5leGVjKGFyZ3NbMF0pOwogICAgaWYgKG1hdGNoID09PSBudWxsKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIGFyZ3VtZW50IG9mIHRoZSBZQU1MIGRpcmVjdGl2ZSIpOwogICAgfQogICAgbWFqb3IgPSBwYXJzZUludChtYXRjaFsxXSwgMTApOwogICAgbWlub3IgPSBwYXJzZUludChtYXRjaFsyXSwgMTApOwogICAgaWYgKG1ham9yICE9PSAxKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ1bmFjY2VwdGFibGUgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogICAgc3RhdGUudmVyc2lvbiA9IGFyZ3NbMF07CiAgICBzdGF0ZS5jaGVja0xpbmVCcmVha3MgPSBtaW5vciA8IDI7CiAgICBpZiAobWlub3IgIT09IDEgJiYgbWlub3IgIT09IDIpIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAidW5zdXBwb3J0ZWQgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogIH0sCiAgVEFHOiBmdW5jdGlvbiBoYW5kbGVUYWdEaXJlY3RpdmUoc3RhdGUsIG5hbWUsIGFyZ3MpIHsKICAgIHZhciBoYW5kbGUsIHByZWZpeDsKICAgIGlmIChhcmdzLmxlbmd0aCAhPT0gMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiVEFHIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgdHdvIGFyZ3VtZW50cyIpOwogICAgfQogICAgaGFuZGxlID0gYXJnc1swXTsKICAgIHByZWZpeCA9IGFyZ3NbMV07CiAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImlsbC1mb3JtZWQgdGFnIGhhbmRsZSAoZmlyc3QgYXJndW1lbnQpIG9mIHRoZSBUQUcgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3RoZXJlIGlzIGEgcHJldmlvdXNseSBkZWNsYXJlZCBzdWZmaXggZm9yICInICsgaGFuZGxlICsgJyIgdGFnIGhhbmRsZScpOwogICAgfQogICAgaWYgKCFQQVRURVJOX1RBR19VUkkudGVzdChwcmVmaXgpKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIHRhZyBwcmVmaXggKHNlY29uZCBhcmd1bWVudCkgb2YgdGhlIFRBRyBkaXJlY3RpdmUiKTsKICAgIH0KICAgIHRyeSB7CiAgICAgIHByZWZpeCA9IGRlY29kZVVSSUNvbXBvbmVudChwcmVmaXgpOwogICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgcHJlZml4IGlzIG1hbGZvcm1lZDogIiArIHByZWZpeCk7CiAgICB9CiAgICBzdGF0ZS50YWdNYXBbaGFuZGxlXSA9IHByZWZpeDsKICB9Cn07CmZ1bmN0aW9uIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBzdGFydCwgZW5kLCBjaGVja0pzb24pIHsKICB2YXIgX3Bvc2l0aW9uLCBfbGVuZ3RoLCBfY2hhcmFjdGVyLCBfcmVzdWx0OwogIGlmIChzdGFydCA8IGVuZCkgewogICAgX3Jlc3VsdCA9IHN0YXRlLmlucHV0LnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgaWYgKGNoZWNrSnNvbikgewogICAgICBmb3IgKF9wb3NpdGlvbiA9IDAsIF9sZW5ndGggPSBfcmVzdWx0Lmxlbmd0aDsgX3Bvc2l0aW9uIDwgX2xlbmd0aDsgX3Bvc2l0aW9uICs9IDEpIHsKICAgICAgICBfY2hhcmFjdGVyID0gX3Jlc3VsdC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICAgICAgaWYgKCEoX2NoYXJhY3RlciA9PT0gOSB8fCAzMiA8PSBfY2hhcmFjdGVyICYmIF9jaGFyYWN0ZXIgPD0gMTExNDExMSkpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB2YWxpZCBKU09OIGNoYXJhY3RlciIpOwogICAgICAgIH0KICAgICAgfQogICAgfSBlbHNlIGlmIChQQVRURVJOX05PTl9QUklOVEFCTEUudGVzdChfcmVzdWx0KSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGhlIHN0cmVhbSBjb250YWlucyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMiKTsKICAgIH0KICAgIHN0YXRlLnJlc3VsdCArPSBfcmVzdWx0OwogIH0KfQpmdW5jdGlvbiBtZXJnZU1hcHBpbmdzKHN0YXRlLCBkZXN0aW5hdGlvbiwgc291cmNlLCBvdmVycmlkYWJsZUtleXMpIHsKICB2YXIgc291cmNlS2V5cywga2V5LCBpbmRleCwgcXVhbnRpdHk7CiAgaWYgKCFjb21tb24uaXNPYmplY3Qoc291cmNlKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImNhbm5vdCBtZXJnZSBtYXBwaW5nczsgdGhlIHByb3ZpZGVkIHNvdXJjZSBvYmplY3QgaXMgdW5hY2NlcHRhYmxlIik7CiAgfQogIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogIGZvciAoaW5kZXggPSAwLCBxdWFudGl0eSA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IHF1YW50aXR5OyBpbmRleCArPSAxKSB7CiAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChkZXN0aW5hdGlvbiwga2V5KSkgewogICAgICBkZXN0aW5hdGlvbltrZXldID0gc291cmNlW2tleV07CiAgICAgIG92ZXJyaWRhYmxlS2V5c1trZXldID0gdHJ1ZTsKICAgIH0KICB9Cn0KZnVuY3Rpb24gc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgc3RhcnRMaW5lLCBzdGFydExpbmVTdGFydCwgc3RhcnRQb3MpIHsKICB2YXIgaW5kZXgsIHF1YW50aXR5OwogIGlmIChBcnJheS5pc0FycmF5KGtleU5vZGUpKSB7CiAgICBrZXlOb2RlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoa2V5Tm9kZSk7CiAgICBmb3IgKGluZGV4ID0gMCwgcXVhbnRpdHkgPSBrZXlOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlOb2RlW2luZGV4XSkpIHsKICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibmVzdGVkIGFycmF5cyBhcmUgbm90IHN1cHBvcnRlZCBpbnNpZGUga2V5cyIpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGVbaW5kZXhdKSA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgICBrZXlOb2RlW2luZGV4XSA9ICJbb2JqZWN0IE9iamVjdF0iOwogICAgICB9CiAgICB9CiAgfQogIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGUpID09PSAiW29iamVjdCBPYmplY3RdIikgewogICAga2V5Tm9kZSA9ICJbb2JqZWN0IE9iamVjdF0iOwogIH0KICBrZXlOb2RlID0gU3RyaW5nKGtleU5vZGUpOwogIGlmIChfcmVzdWx0ID09PSBudWxsKSB7CiAgICBfcmVzdWx0ID0ge307CiAgfQogIGlmIChrZXlUYWcgPT09ICJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlTm9kZSkpIHsKICAgICAgZm9yIChpbmRleCA9IDAsIHF1YW50aXR5ID0gdmFsdWVOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZVtpbmRleF0sIG92ZXJyaWRhYmxlS2V5cyk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZSwgb3ZlcnJpZGFibGVLZXlzKTsKICAgIH0KICB9IGVsc2UgewogICAgaWYgKCFzdGF0ZS5qc29uICYmICFfaGFzT3duUHJvcGVydHkkMS5jYWxsKG92ZXJyaWRhYmxlS2V5cywga2V5Tm9kZSkgJiYgX2hhc093blByb3BlcnR5JDEuY2FsbChfcmVzdWx0LCBrZXlOb2RlKSkgewogICAgICBzdGF0ZS5saW5lID0gc3RhcnRMaW5lIHx8IHN0YXRlLmxpbmU7CiAgICAgIHN0YXRlLmxpbmVTdGFydCA9IHN0YXJ0TGluZVN0YXJ0IHx8IHN0YXRlLmxpbmVTdGFydDsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGFydFBvcyB8fCBzdGF0ZS5wb3NpdGlvbjsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0ZWQgbWFwcGluZyBrZXkiKTsKICAgIH0KICAgIGlmIChrZXlOb2RlID09PSAiX19wcm90b19fIikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoX3Jlc3VsdCwga2V5Tm9kZSwgewogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLAogICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgIHZhbHVlOiB2YWx1ZU5vZGUKICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICBfcmVzdWx0W2tleU5vZGVdID0gdmFsdWVOb2RlOwogICAgfQogICAgZGVsZXRlIG92ZXJyaWRhYmxlS2V5c1trZXlOb2RlXTsKICB9CiAgcmV0dXJuIF9yZXN1bHQ7Cn0KZnVuY3Rpb24gcmVhZExpbmVCcmVhayhzdGF0ZSkgewogIHZhciBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTApIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgfSBlbHNlIGlmIChjaCA9PT0gMTMpIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDEwKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICB9CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIGxpbmUgYnJlYWsgaXMgZXhwZWN0ZWQiKTsKICB9CiAgc3RhdGUubGluZSArPSAxOwogIHN0YXRlLmxpbmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogIHN0YXRlLmZpcnN0VGFiSW5MaW5lID0gLTE7Cn0KZnVuY3Rpb24gc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgYWxsb3dDb21tZW50cywgY2hlY2tJbmRlbnQpIHsKICB2YXIgbGluZUJyZWFrcyA9IDAsIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICB3aGlsZSAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gOSAmJiBzdGF0ZS5maXJzdFRhYkluTGluZSA9PT0gLTEpIHsKICAgICAgICBzdGF0ZS5maXJzdFRhYkluTGluZSA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB9CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmIChhbGxvd0NvbW1lbnRzICYmIGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlIChjaCAhPT0gMTAgJiYgY2ggIT09IDEzICYmIGNoICE9PSAwKTsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIHJlYWRMaW5lQnJlYWsoc3RhdGUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICBsaW5lQnJlYWtzKys7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQgPSAwOwogICAgICB3aGlsZSAoY2ggPT09IDMyKSB7CiAgICAgICAgc3RhdGUubGluZUluZGVudCsrOwogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgYnJlYWs7CiAgICB9CiAgfQogIGlmIChjaGVja0luZGVudCAhPT0gLTEgJiYgbGluZUJyZWFrcyAhPT0gMCAmJiBzdGF0ZS5saW5lSW5kZW50IDwgY2hlY2tJbmRlbnQpIHsKICAgIHRocm93V2FybmluZyhzdGF0ZSwgImRlZmljaWVudCBpbmRlbnRhdGlvbiIpOwogIH0KICByZXR1cm4gbGluZUJyZWFrczsKfQpmdW5jdGlvbiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb24sIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChfcG9zaXRpb24pOwogIGlmICgoY2ggPT09IDQ1IHx8IGNoID09PSA0NikgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMSkgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMikpIHsKICAgIF9wb3NpdGlvbiArPSAzOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICBpZiAoY2ggPT09IDAgfHwgaXNfV1NfT1JfRU9MKGNoKSkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICB9CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIGNvdW50KSB7CiAgaWYgKGNvdW50ID09PSAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gIiAiOwogIH0gZWxzZSBpZiAoY291bnQgPiAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBjb3VudCAtIDEpOwogIH0KfQpmdW5jdGlvbiByZWFkUGxhaW5TY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQsIHdpdGhpbkZsb3dDb2xsZWN0aW9uKSB7CiAgdmFyIHByZWNlZGluZywgZm9sbG93aW5nLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhhc1BlbmRpbmdDb250ZW50LCBfbGluZSwgX2xpbmVTdGFydCwgX2xpbmVJbmRlbnQsIF9raW5kID0gc3RhdGUua2luZCwgX3Jlc3VsdCA9IHN0YXRlLnJlc3VsdCwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoaXNfV1NfT1JfRU9MKGNoKSB8fCBpc19GTE9XX0lORElDQVRPUihjaCkgfHwgY2ggPT09IDM1IHx8IGNoID09PSAzOCB8fCBjaCA9PT0gNDIgfHwgY2ggPT09IDMzIHx8IGNoID09PSAxMjQgfHwgY2ggPT09IDYyIHx8IGNoID09PSAzOSB8fCBjaCA9PT0gMzQgfHwgY2ggPT09IDM3IHx8IGNoID09PSA2NCB8fCBjaCA9PT0gOTYpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgaWYgKGNoID09PSA2MyB8fCBjaCA9PT0gNDUpIHsKICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICBoYXNQZW5kaW5nQ29udGVudCA9IGZhbHNlOwogIHdoaWxlIChjaCAhPT0gMCkgewogICAgaWYgKGNoID09PSA1OCkgewogICAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoY2ggPT09IDM1KSB7CiAgICAgIHByZWNlZGluZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gLSAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChwcmVjZWRpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHx8IHdpdGhpbkZsb3dDb2xsZWN0aW9uICYmIGlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgICBicmVhazsKICAgIH0gZWxzZSBpZiAoaXNfRU9MKGNoKSkgewogICAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICAgIF9saW5lSW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIC0xKTsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPj0gbm9kZUluZGVudCkgewogICAgICAgIGhhc1BlbmRpbmdDb250ZW50ID0gdHJ1ZTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnBvc2l0aW9uID0gY2FwdHVyZUVuZDsKICAgICAgICBzdGF0ZS5saW5lID0gX2xpbmU7CiAgICAgICAgc3RhdGUubGluZVN0YXJ0ID0gX2xpbmVTdGFydDsKICAgICAgICBzdGF0ZS5saW5lSW5kZW50ID0gX2xpbmVJbmRlbnQ7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0KICAgIGlmIChoYXNQZW5kaW5nQ29udGVudCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBjYXB0dXJlRW5kLCBmYWxzZSk7CiAgICAgIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIHN0YXRlLmxpbmUgLSBfbGluZSk7CiAgICAgIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgaGFzUGVuZGluZ0NvbnRlbnQgPSBmYWxzZTsKICAgIH0KICAgIGlmICghaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbiArIDE7CiAgICB9CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgfQogIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGZhbHNlKTsKICBpZiAoc3RhdGUucmVzdWx0KSB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CiAgc3RhdGUua2luZCA9IF9raW5kOwogIHN0YXRlLnJlc3VsdCA9IF9yZXN1bHQ7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2gsIGNhcHR1cmVTdGFydCwgY2FwdHVyZUVuZDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzkpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIHN0YXRlLnBvc2l0aW9uKys7CiAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogIHdoaWxlICgoY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSkgIT09IDApIHsKICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgICBjYXB0dXJlU3RhcnQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZERvdWJsZVF1b3RlZFNjYWxhcihzdGF0ZSwgbm9kZUluZGVudCkgewogIHZhciBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhleExlbmd0aCwgaGV4UmVzdWx0LCB0bXAsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSAzNCkgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBzdGF0ZS5raW5kID0gInNjYWxhciI7CiAgc3RhdGUucmVzdWx0ID0gIiI7CiAgc3RhdGUucG9zaXRpb24rKzsKICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgd2hpbGUgKChjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pKSAhPT0gMCkgewogICAgaWYgKGNoID09PSAzNCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBzdGF0ZS5wb3NpdGlvbiwgdHJ1ZSk7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSBlbHNlIGlmIChjaCA9PT0gOTIpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIG5vZGVJbmRlbnQpOwogICAgICB9IGVsc2UgaWYgKGNoIDwgMjU2ICYmIHNpbXBsZUVzY2FwZUNoZWNrW2NoXSkgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBzaW1wbGVFc2NhcGVNYXBbY2hdOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSBpZiAoKHRtcCA9IGVzY2FwZWRIZXhMZW4oY2gpKSA+IDApIHsKICAgICAgICBoZXhMZW5ndGggPSB0bXA7CiAgICAgICAgaGV4UmVzdWx0ID0gMDsKICAgICAgICBmb3IgKDsgaGV4TGVuZ3RoID4gMDsgaGV4TGVuZ3RoLS0pIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICAgIGlmICgodG1wID0gZnJvbUhleENvZGUoY2gpKSA+PSAwKSB7CiAgICAgICAgICAgIGhleFJlc3VsdCA9IChoZXhSZXN1bHQgPDwgNCkgKyB0bXA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZXhwZWN0ZWQgaGV4YWRlY2ltYWwgY2hhcmFjdGVyIik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjaGFyRnJvbUNvZGVwb2ludChoZXhSZXN1bHQpOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInVua25vd24gZXNjYXBlIHNlcXVlbmNlIik7CiAgICAgIH0KICAgICAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIHJlYWROZXh0ID0gdHJ1ZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9yZXN1bHQsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIGZvbGxvd2luZywgdGVybWluYXRvciwgaXNQYWlyLCBpc0V4cGxpY2l0UGFpciwgaXNNYXBwaW5nLCBvdmVycmlkYWJsZUtleXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKSwga2V5Tm9kZSwga2V5VGFnLCB2YWx1ZU5vZGUsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoID09PSA5MSkgewogICAgdGVybWluYXRvciA9IDkzOwogICAgaXNNYXBwaW5nID0gZmFsc2U7CiAgICBfcmVzdWx0ID0gW107CiAgfSBlbHNlIGlmIChjaCA9PT0gMTIzKSB7CiAgICB0ZXJtaW5hdG9yID0gMTI1OwogICAgaXNNYXBwaW5nID0gdHJ1ZTsKICAgIF9yZXN1bHQgPSB7fTsKICB9IGVsc2UgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gdGVybWluYXRvcikgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgICBzdGF0ZS5raW5kID0gaXNNYXBwaW5nID8gIm1hcHBpbmciIDogInNlcXVlbmNlIjsKICAgICAgc3RhdGUucmVzdWx0ID0gX3Jlc3VsdDsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9IGVsc2UgaWYgKCFyZWFkTmV4dCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibWlzc2VkIGNvbW1hIGJldHdlZW4gZmxvdyBjb2xsZWN0aW9uIGVudHJpZXMiKTsKICAgIH0gZWxzZSBpZiAoY2ggPT09IDQ0KSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB0aGUgbm9kZSBjb250ZW50LCBidXQgZm91bmQgJywnIik7CiAgICB9CiAgICBrZXlUYWcgPSBrZXlOb2RlID0gdmFsdWVOb2RlID0gbnVsbDsKICAgIGlzUGFpciA9IGlzRXhwbGljaXRQYWlyID0gZmFsc2U7CiAgICBpZiAoY2ggPT09IDYzKSB7CiAgICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgICAgaXNQYWlyID0gaXNFeHBsaWNpdFBhaXIgPSB0cnVlOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIH0KICAgIH0KICAgIF9saW5lID0gc3RhdGUubGluZTsKICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICBfcG9zID0gc3RhdGUucG9zaXRpb247CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9GTE9XX0lOLCBmYWxzZSwgdHJ1ZSk7CiAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChpc0V4cGxpY2l0UGFpciB8fCBzdGF0ZS5saW5lID09PSBfbGluZSkgJiYgY2ggPT09IDU4KSB7CiAgICAgIGlzUGFpciA9IHRydWU7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIGNvbXBvc2VOb2RlKHN0YXRlLCBub2RlSW5kZW50LCBDT05URVhUX0ZMT1dfSU4sIGZhbHNlLCB0cnVlKTsKICAgICAgdmFsdWVOb2RlID0gc3RhdGUucmVzdWx0OwogICAgfQogICAgaWYgKGlzTWFwcGluZykgewogICAgICBzdG9yZU1hcHBpbmdQYWlyKHN0YXRlLCBfcmVzdWx0LCBvdmVycmlkYWJsZUtleXMsIGtleVRhZywga2V5Tm9kZSwgdmFsdWVOb2RlLCBfbGluZSwgX2xpbmVTdGFydCwgX3Bvcyk7CiAgICB9IGVsc2UgaWYgKGlzUGFpcikgewogICAgICBfcmVzdWx0LnB1c2goc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgbnVsbCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MpKTsKICAgIH0gZWxzZSB7CiAgICAgIF9yZXN1bHQucHVzaChrZXlOb2RlKTsKICAgIH0KICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDQpIHsKICAgICAgcmVhZE5leHQgPSB0cnVlOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICByZWFkTmV4dCA9IGZhbHNlOwogICAgfQogIH0KICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24iKTsKfQpmdW5jdGlvbiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2FwdHVyZVN0YXJ0LCBmb2xkaW5nLCBjaG9tcGluZyA9IENIT01QSU5HX0NMSVAsIGRpZFJlYWRDb250ZW50ID0gZmFsc2UsIGRldGVjdGVkSW5kZW50ID0gZmFsc2UsIHRleHRJbmRlbnQgPSBub2RlSW5kZW50LCBlbXB0eUxpbmVzID0gMCwgYXRNb3JlSW5kZW50ZWQgPSBmYWxzZSwgdG1wLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTI0KSB7CiAgICBmb2xkaW5nID0gZmFsc2U7CiAgfSBlbHNlIGlmIChjaCA9PT0gNjIpIHsKICAgIGZvbGRpbmcgPSB0cnVlOwogIH0gZWxzZSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHN0YXRlLmtpbmQgPSAic2NhbGFyIjsKICBzdGF0ZS5yZXN1bHQgPSAiIjsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDMgfHwgY2ggPT09IDQ1KSB7CiAgICAgIGlmIChDSE9NUElOR19DTElQID09PSBjaG9tcGluZykgewogICAgICAgIGNob21waW5nID0gY2ggPT09IDQzID8gQ0hPTVBJTkdfS0VFUCA6IENIT01QSU5HX1NUUklQOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYSBjaG9tcGluZyBtb2RlIGlkZW50aWZpZXIiKTsKICAgICAgfQogICAgfSBlbHNlIGlmICgodG1wID0gZnJvbURlY2ltYWxDb2RlKGNoKSkgPj0gMCkgewogICAgICBpZiAodG1wID09PSAwKSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBleHBsaWNpdCBpbmRlbnRhdGlvbiB3aWR0aCBvZiBhIGJsb2NrIHNjYWxhcjsgaXQgY2Fubm90IGJlIGxlc3MgdGhhbiBvbmUiKTsKICAgICAgfSBlbHNlIGlmICghZGV0ZWN0ZWRJbmRlbnQpIHsKICAgICAgICB0ZXh0SW5kZW50ID0gbm9kZUluZGVudCArIHRtcCAtIDE7CiAgICAgICAgZGV0ZWN0ZWRJbmRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYW4gaW5kZW50YXRpb24gd2lkdGggaWRlbnRpZmllciIpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgZG8gewogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpOwogICAgaWYgKGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlICghaXNfRU9MKGNoKSAmJiBjaCAhPT0gMCk7CiAgICB9CiAgfQogIHdoaWxlIChjaCAhPT0gMCkgewogICAgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBzdGF0ZS5saW5lSW5kZW50ID0gMDsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgICB3aGlsZSAoKCFkZXRlY3RlZEluZGVudCB8fCBzdGF0ZS5saW5lSW5kZW50IDwgdGV4dEluZGVudCkgJiYgY2ggPT09IDMyKSB7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQrKzsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgaWYgKCFkZXRlY3RlZEluZGVudCAmJiBzdGF0ZS5saW5lSW5kZW50ID4gdGV4dEluZGVudCkgewogICAgICB0ZXh0SW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGVtcHR5TGluZXMrKzsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUubGluZUluZGVudCA8IHRleHRJbmRlbnQpIHsKICAgICAgaWYgKGNob21waW5nID09PSBDSE9NUElOR19LRUVQKSB7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZGlkUmVhZENvbnRlbnQgPyAxICsgZW1wdHlMaW5lcyA6IGVtcHR5TGluZXMpOwogICAgICB9IGVsc2UgaWYgKGNob21waW5nID09PSBDSE9NUElOR19DTElQKSB7CiAgICAgICAgaWYgKGRpZFJlYWRDb250ZW50KSB7CiAgICAgICAgICBzdGF0ZS5yZXN1bHQgKz0gIlxuIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgYnJlYWs7CiAgICB9CiAgICBpZiAoZm9sZGluZykgewogICAgICBpZiAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgICAgYXRNb3JlSW5kZW50ZWQgPSB0cnVlOwogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGRpZFJlYWRDb250ZW50ID8gMSArIGVtcHR5TGluZXMgOiBlbXB0eUxpbmVzKTsKICAgICAgfSBlbHNlIGlmIChhdE1vcmVJbmRlbnRlZCkgewogICAgICAgIGF0TW9yZUluZGVudGVkID0gZmFsc2U7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZW1wdHlMaW5lcyArIDEpOwogICAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXMgPT09IDApIHsKICAgICAgICBpZiAoZGlkUmVhZENvbnRlbnQpIHsKICAgICAgICAgIHN0YXRlLnJlc3VsdCArPSAiICI7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGVtcHR5TGluZXMpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBkaWRSZWFkQ29udGVudCA/IDEgKyBlbXB0eUxpbmVzIDogZW1wdHlMaW5lcyk7CiAgICB9CiAgICBkaWRSZWFkQ29udGVudCA9IHRydWU7CiAgICBkZXRlY3RlZEluZGVudCA9IHRydWU7CiAgICBlbXB0eUxpbmVzID0gMDsKICAgIGNhcHR1cmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogICAgd2hpbGUgKCFpc19FT0woY2gpICYmIGNoICE9PSAwKSB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIHN0YXRlLnBvc2l0aW9uLCBmYWxzZSk7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIHJlYWRCbG9ja1NlcXVlbmNlKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIF9saW5lLCBfdGFnID0gc3RhdGUudGFnLCBfYW5jaG9yID0gc3RhdGUuYW5jaG9yLCBfcmVzdWx0ID0gW10sIGZvbGxvd2luZywgZGV0ZWN0ZWQgPSBmYWxzZSwgY2g7CiAgaWYgKHN0YXRlLmZpcnN0VGFiSW5MaW5lICE9PSAtMSkgcmV0dXJuIGZhbHNlOwogIGlmIChzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgIHN0YXRlLmFuY2hvck1hcFtzdGF0ZS5hbmNob3JdID0gX3Jlc3VsdDsKICB9CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGF0ZS5maXJzdFRhYkluTGluZTsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhYiBjaGFyYWN0ZXJzIG11c3Qgbm90IGJlIHVzZWQgaW4gaW5kZW50YXRpb24iKTsKICAgIH0KICAgIGlmIChjaCAhPT0gNDUpIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBpZiAoIWlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGJyZWFrOwogICAgfQogICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgc3RhdGUucG9zaXRpb24rKzsKICAgIGlmIChza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSkpIHsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPD0gbm9kZUluZGVudCkgewogICAgICAgIF9yZXN1bHQucHVzaChudWxsKTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9CiAgICB9CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9CTE9DS19JTiwgZmFsc2UsIHRydWUpOwogICAgX3Jlc3VsdC5wdXNoKHN0YXRlLnJlc3VsdCk7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgJiYgY2ggIT09IDApIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBpbmRlbnRhdGlvbiBvZiBhIHNlcXVlbmNlIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoZGV0ZWN0ZWQpIHsKICAgIHN0YXRlLnRhZyA9IF90YWc7CiAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgc3RhdGUua2luZCA9ICJzZXF1ZW5jZSI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogICAgcmV0dXJuIHRydWU7CiAgfQogIHJldHVybiBmYWxzZTsKfQpmdW5jdGlvbiByZWFkQmxvY2tNYXBwaW5nKHN0YXRlLCBub2RlSW5kZW50LCBmbG93SW5kZW50KSB7CiAgdmFyIGZvbGxvd2luZywgYWxsb3dDb21wYWN0LCBfbGluZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIF9yZXN1bHQgPSB7fSwgb3ZlcnJpZGFibGVLZXlzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCksIGtleVRhZyA9IG51bGwsIGtleU5vZGUgPSBudWxsLCB2YWx1ZU5vZGUgPSBudWxsLCBhdEV4cGxpY2l0S2V5ID0gZmFsc2UsIGRldGVjdGVkID0gZmFsc2UsIGNoOwogIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICBpZiAoIWF0RXhwbGljaXRLZXkgJiYgc3RhdGUuZmlyc3RUYWJJbkxpbmUgIT09IC0xKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uID0gc3RhdGUuZmlyc3RUYWJJbkxpbmU7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWIgY2hhcmFjdGVycyBtdXN0IG5vdCBiZSB1c2VkIGluIGluZGVudGF0aW9uIik7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBpZiAoKGNoID09PSA2MyB8fCBjaCA9PT0gNTgpICYmIGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGlmIChjaCA9PT0gNjMpIHsKICAgICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgIH0KICAgICAgICBkZXRlY3RlZCA9IHRydWU7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IHRydWU7CiAgICAgICAgYWxsb3dDb21wYWN0ID0gdHJ1ZTsKICAgICAgfSBlbHNlIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgIGFsbG93Q29tcGFjdCA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImluY29tcGxldGUgZXhwbGljaXQgbWFwcGluZyBwYWlyOyBhIGtleSBub2RlIGlzIG1pc3NlZDsgb3IgZm9sbG93ZWQgYnkgYSBub24tdGFidWxhdGVkIGVtcHR5IGxpbmUiKTsKICAgICAgfQogICAgICBzdGF0ZS5wb3NpdGlvbiArPSAxOwogICAgICBjaCA9IGZvbGxvd2luZzsKICAgIH0gZWxzZSB7CiAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgX2tleUxpbmVTdGFydCA9IHN0YXRlLmxpbmVTdGFydDsKICAgICAgX2tleVBvcyA9IHN0YXRlLnBvc2l0aW9uOwogICAgICBpZiAoIWNvbXBvc2VOb2RlKHN0YXRlLCBmbG93SW5kZW50LCBDT05URVhUX0ZMT1dfT1VULCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoc3RhdGUubGluZSA9PT0gX2xpbmUpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNoID09PSA1OCkgewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgICAgaWYgKCFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIHdoaXRlc3BhY2UgY2hhcmFjdGVyIGlzIGV4cGVjdGVkIGFmdGVyIHRoZSBrZXktdmFsdWUgc2VwYXJhdG9yIHdpdGhpbiBhIGJsb2NrIG1hcHBpbmciKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgICAgIHN0b3JlTWFwcGluZ1BhaXIoc3RhdGUsIF9yZXN1bHQsIG92ZXJyaWRhYmxlS2V5cywga2V5VGFnLCBrZXlOb2RlLCBudWxsLCBfa2V5TGluZSwgX2tleUxpbmVTdGFydCwgX2tleVBvcyk7CiAgICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgICAgYWxsb3dDb21wYWN0ID0gZmFsc2U7CiAgICAgICAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICAgICAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgICAgIH0gZWxzZSBpZiAoZGV0ZWN0ZWQpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYW4gaW1wbGljaXQgbWFwcGluZyBwYWlyOyBhIGNvbG9uIGlzIG1pc3NlZCIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChkZXRlY3RlZCkgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYSBibG9jayBtYXBwaW5nIGVudHJ5OyBhIG11bHRpbGluZSBrZXkgbWF5IG5vdCBiZSBhbiBpbXBsaWNpdCBrZXkiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgIHN0YXRlLmFuY2hvciA9IF9hbmNob3I7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgIH0KICAgIGlmIChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgewogICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgICBfa2V5TGluZVN0YXJ0ID0gc3RhdGUubGluZVN0YXJ0OwogICAgICAgIF9rZXlQb3MgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfQogICAgICBpZiAoY29tcG9zZU5vZGUoc3RhdGUsIG5vZGVJbmRlbnQsIENPTlRFWFRfQkxPQ0tfT1VULCB0cnVlLCBhbGxvd0NvbXBhY3QpKSB7CiAgICAgICAgaWYgKGF0RXhwbGljaXRLZXkpIHsKICAgICAgICAgIGtleU5vZGUgPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZhbHVlTm9kZSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKCFhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MpOwogICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICB9CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmICgoc3RhdGUubGluZSA9PT0gX2xpbmUgfHwgc3RhdGUubGluZUluZGVudCA+IG5vZGVJbmRlbnQpICYmIGNoICE9PSAwKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJiYWQgaW5kZW50YXRpb24gb2YgYSBtYXBwaW5nIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICB9CiAgaWYgKGRldGVjdGVkKSB7CiAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgIHN0YXRlLmtpbmQgPSAibWFwcGluZyI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogIH0KICByZXR1cm4gZGV0ZWN0ZWQ7Cn0KZnVuY3Rpb24gcmVhZFRhZ1Byb3BlcnR5KHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgaXNWZXJiYXRpbSA9IGZhbHNlLCBpc05hbWVkID0gZmFsc2UsIHRhZ0hhbmRsZSwgdGFnTmFtZSwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggIT09IDMzKSByZXR1cm4gZmFsc2U7CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0aW9uIG9mIGEgdGFnIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggPT09IDYwKSB7CiAgICBpc1ZlcmJhdGltID0gdHJ1ZTsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB9IGVsc2UgaWYgKGNoID09PSAzMykgewogICAgaXNOYW1lZCA9IHRydWU7CiAgICB0YWdIYW5kbGUgPSAiISEiOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0gZWxzZSB7CiAgICB0YWdIYW5kbGUgPSAiISI7CiAgfQogIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBkbyB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0gd2hpbGUgKGNoICE9PSAwICYmIGNoICE9PSA2Mik7CiAgICBpZiAoc3RhdGUucG9zaXRpb24gPCBzdGF0ZS5sZW5ndGgpIHsKICAgICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSB2ZXJiYXRpbSB0YWciKTsKICAgIH0KICB9IGVsc2UgewogICAgd2hpbGUgKGNoICE9PSAwICYmICFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gMzMpIHsKICAgICAgICBpZiAoIWlzTmFtZWQpIHsKICAgICAgICAgIHRhZ0hhbmRsZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiAtIDEsIHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgICAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KHRhZ0hhbmRsZSkpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWVkIHRhZyBoYW5kbGUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzIik7CiAgICAgICAgICB9CiAgICAgICAgICBpc05hbWVkID0gdHJ1ZTsKICAgICAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uICsgMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZXhjbGFtYXRpb24gbWFya3MiKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgaWYgKFBBVFRFUk5fRkxPV19JTkRJQ0FUT1JTLnRlc3QodGFnTmFtZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZmxvdyBpbmRpY2F0b3IgY2hhcmFjdGVycyIpOwogICAgfQogIH0KICBpZiAodGFnTmFtZSAmJiAhUEFUVEVSTl9UQUdfVVJJLnRlc3QodGFnTmFtZSkpIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgbmFtZSBjYW5ub3QgY29udGFpbiBzdWNoIGNoYXJhY3RlcnM6ICIgKyB0YWdOYW1lKTsKICB9CiAgdHJ5IHsKICAgIHRhZ05hbWUgPSBkZWNvZGVVUklDb21wb25lbnQodGFnTmFtZSk7CiAgfSBjYXRjaCAoZXJyKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGFnIG5hbWUgaXMgbWFsZm9ybWVkOiAiICsgdGFnTmFtZSk7CiAgfQogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBzdGF0ZS50YWcgPSB0YWdOYW1lOwogIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIHRhZ0hhbmRsZSkpIHsKICAgIHN0YXRlLnRhZyA9IHN0YXRlLnRhZ01hcFt0YWdIYW5kbGVdICsgdGFnTmFtZTsKICB9IGVsc2UgaWYgKHRhZ0hhbmRsZSA9PT0gIiEiKSB7CiAgICBzdGF0ZS50YWcgPSAiISIgKyB0YWdOYW1lOwogIH0gZWxzZSBpZiAodGFnSGFuZGxlID09PSAiISEiKSB7CiAgICBzdGF0ZS50YWcgPSAidGFnOnlhbWwub3JnLDIwMDI6IiArIHRhZ05hbWU7CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmRlY2xhcmVkIHRhZyBoYW5kbGUgIicgKyB0YWdIYW5kbGUgKyAnIicpOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiByZWFkQW5jaG9yUHJvcGVydHkoc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzgpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgYW4gYW5jaG9yIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYW5jaG9yIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKTsKICB9CiAgc3RhdGUuYW5jaG9yID0gc3RhdGUuaW5wdXQuc2xpY2UoX3Bvc2l0aW9uLCBzdGF0ZS5wb3NpdGlvbik7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gcmVhZEFsaWFzKHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgYWxpYXMsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSA0MikgcmV0dXJuIGZhbHNlOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYWxpYXMgbm9kZSBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIGNoYXJhY3RlciIpOwogIH0KICBhbGlhcyA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS5hbmNob3JNYXAsIGFsaWFzKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3VuaWRlbnRpZmllZCBhbGlhcyAiJyArIGFsaWFzICsgJyInKTsKICB9CiAgc3RhdGUucmVzdWx0ID0gc3RhdGUuYW5jaG9yTWFwW2FsaWFzXTsKICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gY29tcG9zZU5vZGUoc3RhdGUsIHBhcmVudEluZGVudCwgbm9kZUNvbnRleHQsIGFsbG93VG9TZWVrLCBhbGxvd0NvbXBhY3QpIHsKICB2YXIgYWxsb3dCbG9ja1N0eWxlcywgYWxsb3dCbG9ja1NjYWxhcnMsIGFsbG93QmxvY2tDb2xsZWN0aW9ucywgaW5kZW50U3RhdHVzID0gMSwgYXROZXdMaW5lID0gZmFsc2UsIGhhc0NvbnRlbnQgPSBmYWxzZSwgdHlwZUluZGV4LCB0eXBlUXVhbnRpdHksIHR5cGVMaXN0LCB0eXBlMiwgZmxvd0luZGVudCwgYmxvY2tJbmRlbnQ7CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigib3BlbiIsIHN0YXRlKTsKICB9CiAgc3RhdGUudGFnID0gbnVsbDsKICBzdGF0ZS5hbmNob3IgPSBudWxsOwogIHN0YXRlLmtpbmQgPSBudWxsOwogIHN0YXRlLnJlc3VsdCA9IG51bGw7CiAgYWxsb3dCbG9ja1N0eWxlcyA9IGFsbG93QmxvY2tTY2FsYXJzID0gYWxsb3dCbG9ja0NvbGxlY3Rpb25zID0gQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0IHx8IENPTlRFWFRfQkxPQ0tfSU4gPT09IG5vZGVDb250ZXh0OwogIGlmIChhbGxvd1RvU2VlaykgewogICAgaWYgKHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKSkgewogICAgICBhdE5ld0xpbmUgPSB0cnVlOwogICAgICBpZiAoc3RhdGUubGluZUluZGVudCA+IHBhcmVudEluZGVudCkgewogICAgICAgIGluZGVudFN0YXR1cyA9IDE7CiAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gMDsKICAgICAgfSBlbHNlIGlmIChzdGF0ZS5saW5lSW5kZW50IDwgcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgd2hpbGUgKHJlYWRUYWdQcm9wZXJ0eShzdGF0ZSkgfHwgcmVhZEFuY2hvclByb3BlcnR5KHN0YXRlKSkgewogICAgICBpZiAoc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpKSB7CiAgICAgICAgYXROZXdMaW5lID0gdHJ1ZTsKICAgICAgICBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgPSBhbGxvd0Jsb2NrU3R5bGVzOwogICAgICAgIGlmIChzdGF0ZS5saW5lSW5kZW50ID4gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAxOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAwOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA8IHBhcmVudEluZGVudCkgewogICAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgfQogIGlmIChhbGxvd0Jsb2NrQ29sbGVjdGlvbnMpIHsKICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGF0TmV3TGluZSB8fCBhbGxvd0NvbXBhY3Q7CiAgfQogIGlmIChpbmRlbnRTdGF0dXMgPT09IDEgfHwgQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0KSB7CiAgICBpZiAoQ09OVEVYVF9GTE9XX0lOID09PSBub2RlQ29udGV4dCB8fCBDT05URVhUX0ZMT1dfT1VUID09PSBub2RlQ29udGV4dCkgewogICAgICBmbG93SW5kZW50ID0gcGFyZW50SW5kZW50OwogICAgfSBlbHNlIHsKICAgICAgZmxvd0luZGVudCA9IHBhcmVudEluZGVudCArIDE7CiAgICB9CiAgICBibG9ja0luZGVudCA9IHN0YXRlLnBvc2l0aW9uIC0gc3RhdGUubGluZVN0YXJ0OwogICAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgICBpZiAoYWxsb3dCbG9ja0NvbGxlY3Rpb25zICYmIChyZWFkQmxvY2tTZXF1ZW5jZShzdGF0ZSwgYmxvY2tJbmRlbnQpIHx8IHJlYWRCbG9ja01hcHBpbmcoc3RhdGUsIGJsb2NrSW5kZW50LCBmbG93SW5kZW50KSkgfHwgcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBmbG93SW5kZW50KSkgewogICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChhbGxvd0Jsb2NrU2NhbGFycyAmJiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWREb3VibGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICB9IGVsc2UgaWYgKHJlYWRBbGlhcyhzdGF0ZSkpIHsKICAgICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICAgICAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCB8fCBzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImFsaWFzIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGFueSBwcm9wZXJ0aWVzIik7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChyZWFkUGxhaW5TY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQsIENPTlRFWFRfRkxPV19JTiA9PT0gbm9kZUNvbnRleHQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICAgIGlmIChzdGF0ZS50YWcgPT09IG51bGwpIHsKICAgICAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoaW5kZW50U3RhdHVzID09PSAwKSB7CiAgICAgIGhhc0NvbnRlbnQgPSBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgJiYgcmVhZEJsb2NrU2VxdWVuY2Uoc3RhdGUsIGJsb2NrSW5kZW50KTsKICAgIH0KICB9CiAgaWYgKHN0YXRlLnRhZyA9PT0gbnVsbCkgewogICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgIH0KICB9IGVsc2UgaWYgKHN0YXRlLnRhZyA9PT0gIj8iKSB7CiAgICBpZiAoc3RhdGUucmVzdWx0ICE9PSBudWxsICYmIHN0YXRlLmtpbmQgIT09ICJzY2FsYXIiKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPD8+IHRhZzsgaXQgc2hvdWxkIGJlICJzY2FsYXIiLCBub3QgIicgKyBzdGF0ZS5raW5kICsgJyInKTsKICAgIH0KICAgIGZvciAodHlwZUluZGV4ID0gMCwgdHlwZVF1YW50aXR5ID0gc3RhdGUuaW1wbGljaXRUeXBlcy5sZW5ndGg7IHR5cGVJbmRleCA8IHR5cGVRdWFudGl0eTsgdHlwZUluZGV4ICs9IDEpIHsKICAgICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW3R5cGVJbmRleF07CiAgICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCkpIHsKICAgICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0KTsKICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi50YWc7CiAgICAgICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwogICAgICB9CiAgICB9CiAgfSBlbHNlIGlmIChzdGF0ZS50YWcgIT09ICIhIikgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQxLmNhbGwoc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdLCBzdGF0ZS50YWcpKSB7CiAgICAgIHR5cGUyID0gc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdW3N0YXRlLnRhZ107CiAgICB9IGVsc2UgewogICAgICB0eXBlMiA9IG51bGw7CiAgICAgIHR5cGVMaXN0ID0gc3RhdGUudHlwZU1hcC5tdWx0aVtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdOwogICAgICBmb3IgKHR5cGVJbmRleCA9IDAsIHR5cGVRdWFudGl0eSA9IHR5cGVMaXN0Lmxlbmd0aDsgdHlwZUluZGV4IDwgdHlwZVF1YW50aXR5OyB0eXBlSW5kZXggKz0gMSkgewogICAgICAgIGlmIChzdGF0ZS50YWcuc2xpY2UoMCwgdHlwZUxpc3RbdHlwZUluZGV4XS50YWcubGVuZ3RoKSA9PT0gdHlwZUxpc3RbdHlwZUluZGV4XS50YWcpIHsKICAgICAgICAgIHR5cGUyID0gdHlwZUxpc3RbdHlwZUluZGV4XTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgaWYgKCF0eXBlMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5rbm93biB0YWcgITwiICsgc3RhdGUudGFnICsgIj4iKTsKICAgIH0KICAgIGlmIChzdGF0ZS5yZXN1bHQgIT09IG51bGwgJiYgdHlwZTIua2luZCAhPT0gc3RhdGUua2luZCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5hY2NlcHRhYmxlIG5vZGUga2luZCBmb3IgITwiICsgc3RhdGUudGFnICsgJz4gdGFnOyBpdCBzaG91bGQgYmUgIicgKyB0eXBlMi5raW5kICsgJyIsIG5vdCAiJyArIHN0YXRlLmtpbmQgKyAnIicpOwogICAgfQogICAgaWYgKCF0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCwgc3RhdGUudGFnKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiY2Fubm90IHJlc29sdmUgYSBub2RlIHdpdGggITwiICsgc3RhdGUudGFnICsgIj4gZXhwbGljaXQgdGFnIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0LCBzdGF0ZS50YWcpOwogICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigiY2xvc2UiLCBzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS50YWcgIT09IG51bGwgfHwgc3RhdGUuYW5jaG9yICE9PSBudWxsIHx8IGhhc0NvbnRlbnQ7Cn0KZnVuY3Rpb24gcmVhZERvY3VtZW50KHN0YXRlKSB7CiAgdmFyIGRvY3VtZW50U3RhcnQgPSBzdGF0ZS5wb3NpdGlvbiwgX3Bvc2l0aW9uLCBkaXJlY3RpdmVOYW1lLCBkaXJlY3RpdmVBcmdzLCBoYXNEaXJlY3RpdmVzID0gZmFsc2UsIGNoOwogIHN0YXRlLnZlcnNpb24gPSBudWxsOwogIHN0YXRlLmNoZWNrTGluZUJyZWFrcyA9IHN0YXRlLmxlZ2FjeTsKICBzdGF0ZS50YWdNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICBzdGF0ZS5hbmNob3JNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICB3aGlsZSAoKGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikpICE9PSAwKSB7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPiAwIHx8IGNoICE9PSAzNykgewogICAgICBicmVhazsKICAgIH0KICAgIGhhc0RpcmVjdGl2ZXMgPSB0cnVlOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb247CiAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgZGlyZWN0aXZlTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgZGlyZWN0aXZlQXJncyA9IFtdOwogICAgaWYgKGRpcmVjdGl2ZU5hbWUubGVuZ3RoIDwgMSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlIG5hbWUgbXVzdCBub3QgYmUgbGVzcyB0aGFuIG9uZSBjaGFyYWN0ZXIgaW4gbGVuZ3RoIik7CiAgICB9CiAgICB3aGlsZSAoY2ggIT09IDApIHsKICAgICAgd2hpbGUgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgICBpZiAoY2ggPT09IDM1KSB7CiAgICAgICAgZG8gewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgIH0gd2hpbGUgKGNoICE9PSAwICYmICFpc19FT0woY2gpKTsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoaXNfRU9MKGNoKSkgYnJlYWs7CiAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIH0KICAgICAgZGlyZWN0aXZlQXJncy5wdXNoKHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pKTsKICAgIH0KICAgIGlmIChjaCAhPT0gMCkgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChkaXJlY3RpdmVIYW5kbGVycywgZGlyZWN0aXZlTmFtZSkpIHsKICAgICAgZGlyZWN0aXZlSGFuZGxlcnNbZGlyZWN0aXZlTmFtZV0oc3RhdGUsIGRpcmVjdGl2ZU5hbWUsIGRpcmVjdGl2ZUFyZ3MpOwogICAgfSBlbHNlIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAndW5rbm93biBkb2N1bWVudCBkaXJlY3RpdmUgIicgKyBkaXJlY3RpdmVOYW1lICsgJyInKTsKICAgIH0KICB9CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5saW5lSW5kZW50ID09PSAwICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pID09PSA0NSAmJiBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSkgPT09IDQ1ICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAyKSA9PT0gNDUpIHsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgfSBlbHNlIGlmIChoYXNEaXJlY3RpdmVzKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlcyBlbmQgbWFyayBpcyBleHBlY3RlZCIpOwogIH0KICBjb21wb3NlTm9kZShzdGF0ZSwgc3RhdGUubGluZUluZGVudCAtIDEsIENPTlRFWFRfQkxPQ0tfT1VULCBmYWxzZSwgdHJ1ZSk7CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5jaGVja0xpbmVCcmVha3MgJiYgUEFUVEVSTl9OT05fQVNDSUlfTElORV9CUkVBS1MudGVzdChzdGF0ZS5pbnB1dC5zbGljZShkb2N1bWVudFN0YXJ0LCBzdGF0ZS5wb3NpdGlvbikpKSB7CiAgICB0aHJvd1dhcm5pbmcoc3RhdGUsICJub24tQVNDSUkgbGluZSBicmVha3MgYXJlIGludGVycHJldGVkIGFzIGNvbnRlbnQiKTsKICB9CiAgc3RhdGUuZG9jdW1lbnRzLnB1c2goc3RhdGUucmVzdWx0KTsKICBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpKSB7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDQ2KSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgIH0KICAgIHJldHVybjsKICB9CiAgaWYgKHN0YXRlLnBvc2l0aW9uIDwgc3RhdGUubGVuZ3RoIC0gMSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImVuZCBvZiB0aGUgc3RyZWFtIG9yIGEgZG9jdW1lbnQgc2VwYXJhdG9yIGlzIGV4cGVjdGVkIik7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KZnVuY3Rpb24gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucykgewogIGlucHV0ID0gU3RyaW5nKGlucHV0KTsKICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICBpZiAoaW5wdXQubGVuZ3RoICE9PSAwKSB7CiAgICBpZiAoaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTAgJiYgaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTMpIHsKICAgICAgaW5wdXQgKz0gIlxuIjsKICAgIH0KICAgIGlmIChpbnB1dC5jaGFyQ29kZUF0KDApID09PSA2NTI3OSkgewogICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKDEpOwogICAgfQogIH0KICB2YXIgc3RhdGUgPSBuZXcgU3RhdGUkMShpbnB1dCwgb3B0aW9ucyk7CiAgdmFyIG51bGxwb3MgPSBpbnB1dC5pbmRleE9mKCJcMCIpOwogIGlmIChudWxscG9zICE9PSAtMSkgewogICAgc3RhdGUucG9zaXRpb24gPSBudWxscG9zOwogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm51bGwgYnl0ZSBpcyBub3QgYWxsb3dlZCBpbiBpbnB1dCIpOwogIH0KICBzdGF0ZS5pbnB1dCArPSAiXDAiOwogIHdoaWxlIChzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSA9PT0gMzIpIHsKICAgIHN0YXRlLmxpbmVJbmRlbnQgKz0gMTsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDE7CiAgfQogIHdoaWxlIChzdGF0ZS5wb3NpdGlvbiA8IHN0YXRlLmxlbmd0aCAtIDEpIHsKICAgIHJlYWREb2N1bWVudChzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS5kb2N1bWVudHM7Cn0KZnVuY3Rpb24gbG9hZEFsbCQxKGlucHV0LCBpdGVyYXRvciwgb3B0aW9ucykgewogIGlmIChpdGVyYXRvciAhPT0gbnVsbCAmJiB0eXBlb2YgaXRlcmF0b3IgPT09ICJvYmplY3QiICYmIHR5cGVvZiBvcHRpb25zID09PSAidW5kZWZpbmVkIikgewogICAgb3B0aW9ucyA9IGl0ZXJhdG9yOwogICAgaXRlcmF0b3IgPSBudWxsOwogIH0KICB2YXIgZG9jdW1lbnRzID0gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucyk7CiAgaWYgKHR5cGVvZiBpdGVyYXRvciAhPT0gImZ1bmN0aW9uIikgewogICAgcmV0dXJuIGRvY3VtZW50czsKICB9CiAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW5ndGggPSBkb2N1bWVudHMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgaXRlcmF0b3IoZG9jdW1lbnRzW2luZGV4XSk7CiAgfQp9CmZ1bmN0aW9uIGxvYWQkMShpbnB1dCwgb3B0aW9ucykgewogIHZhciBkb2N1bWVudHMgPSBsb2FkRG9jdW1lbnRzKGlucHV0LCBvcHRpb25zKTsKICBpZiAoZG9jdW1lbnRzLmxlbmd0aCA9PT0gMCkgewogICAgcmV0dXJuIHZvaWQgMDsKICB9IGVsc2UgaWYgKGRvY3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgIHJldHVybiBkb2N1bWVudHNbMF07CiAgfQogIHRocm93IG5ldyBleGNlcHRpb24oImV4cGVjdGVkIGEgc2luZ2xlIGRvY3VtZW50IGluIHRoZSBzdHJlYW0sIGJ1dCBmb3VuZCBtb3JlIik7Cn0KdmFyIGxvYWRBbGxfMSA9IGxvYWRBbGwkMTsKdmFyIGxvYWRfMSA9IGxvYWQkMTsKdmFyIGxvYWRlciA9IHsKICBsb2FkQWxsOiBsb2FkQWxsXzEsCiAgbG9hZDogbG9hZF8xCn07CnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp2YXIgX2hhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENIQVJfQk9NID0gNjUyNzk7CnZhciBDSEFSX1RBQiA9IDk7CnZhciBDSEFSX0xJTkVfRkVFRCA9IDEwOwp2YXIgQ0hBUl9DQVJSSUFHRV9SRVRVUk4gPSAxMzsKdmFyIENIQVJfU1BBQ0UgPSAzMjsKdmFyIENIQVJfRVhDTEFNQVRJT04gPSAzMzsKdmFyIENIQVJfRE9VQkxFX1FVT1RFID0gMzQ7CnZhciBDSEFSX1NIQVJQID0gMzU7CnZhciBDSEFSX1BFUkNFTlQgPSAzNzsKdmFyIENIQVJfQU1QRVJTQU5EID0gMzg7CnZhciBDSEFSX1NJTkdMRV9RVU9URSA9IDM5Owp2YXIgQ0hBUl9BU1RFUklTSyA9IDQyOwp2YXIgQ0hBUl9DT01NQSA9IDQ0Owp2YXIgQ0hBUl9NSU5VUyA9IDQ1Owp2YXIgQ0hBUl9DT0xPTiA9IDU4Owp2YXIgQ0hBUl9FUVVBTFMgPSA2MTsKdmFyIENIQVJfR1JFQVRFUl9USEFOID0gNjI7CnZhciBDSEFSX1FVRVNUSU9OID0gNjM7CnZhciBDSEFSX0NPTU1FUkNJQUxfQVQgPSA2NDsKdmFyIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCA9IDkxOwp2YXIgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCA9IDkzOwp2YXIgQ0hBUl9HUkFWRV9BQ0NFTlQgPSA5NjsKdmFyIENIQVJfTEVGVF9DVVJMWV9CUkFDS0VUID0gMTIzOwp2YXIgQ0hBUl9WRVJUSUNBTF9MSU5FID0gMTI0Owp2YXIgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDS0VUID0gMTI1Owp2YXIgRVNDQVBFX1NFUVVFTkNFUyA9IHt9OwpFU0NBUEVfU0VRVUVOQ0VTWzBdID0gIlxcMCI7CkVTQ0FQRV9TRVFVRU5DRVNbN10gPSAiXFxhIjsKRVNDQVBFX1NFUVVFTkNFU1s4XSA9ICJcXGIiOwpFU0NBUEVfU0VRVUVOQ0VTWzldID0gIlxcdCI7CkVTQ0FQRV9TRVFVRU5DRVNbMTBdID0gIlxcbiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTFdID0gIlxcdiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTJdID0gIlxcZiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTNdID0gIlxcciI7CkVTQ0FQRV9TRVFVRU5DRVNbMjddID0gIlxcZSI7CkVTQ0FQRV9TRVFVRU5DRVNbMzRdID0gJ1xcIic7CkVTQ0FQRV9TRVFVRU5DRVNbOTJdID0gIlxcXFwiOwpFU0NBUEVfU0VRVUVOQ0VTWzEzM10gPSAiXFxOIjsKRVNDQVBFX1NFUVVFTkNFU1sxNjBdID0gIlxcXyI7CkVTQ0FQRV9TRVFVRU5DRVNbODIzMl0gPSAiXFxMIjsKRVNDQVBFX1NFUVVFTkNFU1s4MjMzXSA9ICJcXFAiOwp2YXIgREVQUkVDQVRFRF9CT09MRUFOU19TWU5UQVggPSBbCiAgInkiLAogICJZIiwKICAieWVzIiwKICAiWWVzIiwKICAiWUVTIiwKICAib24iLAogICJPbiIsCiAgIk9OIiwKICAibiIsCiAgIk4iLAogICJubyIsCiAgIk5vIiwKICAiTk8iLAogICJvZmYiLAogICJPZmYiLAogICJPRkYiCl07CnZhciBERVBSRUNBVEVEX0JBU0U2MF9TWU5UQVggPSAvXlstK10/WzAtOV9dKyg/OjpbMC05X10rKSsoPzpcLlswLTlfXSopPyQvOwpmdW5jdGlvbiBjb21waWxlU3R5bGVNYXAoc2NoZW1hMiwgbWFwMikgewogIHZhciByZXN1bHQsIGtleXMsIGluZGV4LCBsZW5ndGgsIHRhZywgc3R5bGUsIHR5cGUyOwogIGlmIChtYXAyID09PSBudWxsKSByZXR1cm4ge307CiAgcmVzdWx0ID0ge307CiAga2V5cyA9IE9iamVjdC5rZXlzKG1hcDIpOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBrZXlzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHRhZyA9IGtleXNbaW5kZXhdOwogICAgc3R5bGUgPSBTdHJpbmcobWFwMlt0YWddKTsKICAgIGlmICh0YWcuc2xpY2UoMCwgMikgPT09ICIhISIpIHsKICAgICAgdGFnID0gInRhZzp5YW1sLm9yZywyMDAyOiIgKyB0YWcuc2xpY2UoMik7CiAgICB9CiAgICB0eXBlMiA9IHNjaGVtYTIuY29tcGlsZWRUeXBlTWFwWyJmYWxsYmFjayJdW3RhZ107CiAgICBpZiAodHlwZTIgJiYgX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIuc3R5bGVBbGlhc2VzLCBzdHlsZSkpIHsKICAgICAgc3R5bGUgPSB0eXBlMi5zdHlsZUFsaWFzZXNbc3R5bGVdOwogICAgfQogICAgcmVzdWx0W3RhZ10gPSBzdHlsZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBlbmNvZGVIZXgoY2hhcmFjdGVyKSB7CiAgdmFyIHN0cmluZywgaGFuZGxlLCBsZW5ndGg7CiAgc3RyaW5nID0gY2hhcmFjdGVyLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOwogIGlmIChjaGFyYWN0ZXIgPD0gMjU1KSB7CiAgICBoYW5kbGUgPSAieCI7CiAgICBsZW5ndGggPSAyOwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDY1NTM1KSB7CiAgICBoYW5kbGUgPSAidSI7CiAgICBsZW5ndGggPSA0OwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDQyOTQ5NjcyOTUpIHsKICAgIGhhbmRsZSA9ICJVIjsKICAgIGxlbmd0aCA9IDg7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oImNvZGUgcG9pbnQgd2l0aGluIGEgc3RyaW5nIG1heSBub3QgYmUgZ3JlYXRlciB0aGFuIDB4RkZGRkZGRkYiKTsKICB9CiAgcmV0dXJuICJcXCIgKyBoYW5kbGUgKyBjb21tb24ucmVwZWF0KCIwIiwgbGVuZ3RoIC0gc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7Cn0KdmFyIFFVT1RJTkdfVFlQRV9TSU5HTEUgPSAxOwp2YXIgUVVPVElOR19UWVBFX0RPVUJMRSA9IDI7CmZ1bmN0aW9uIFN0YXRlKG9wdGlvbnMpIHsKICB0aGlzLnNjaGVtYSA9IG9wdGlvbnNbInNjaGVtYSJdIHx8IF9kZWZhdWx0OwogIHRoaXMuaW5kZW50ID0gTWF0aC5tYXgoMSwgb3B0aW9uc1siaW5kZW50Il0gfHwgMik7CiAgdGhpcy5ub0FycmF5SW5kZW50ID0gb3B0aW9uc1sibm9BcnJheUluZGVudCJdIHx8IGZhbHNlOwogIHRoaXMuc2tpcEludmFsaWQgPSBvcHRpb25zWyJza2lwSW52YWxpZCJdIHx8IGZhbHNlOwogIHRoaXMuZmxvd0xldmVsID0gY29tbW9uLmlzTm90aGluZyhvcHRpb25zWyJmbG93TGV2ZWwiXSkgPyAtMSA6IG9wdGlvbnNbImZsb3dMZXZlbCJdOwogIHRoaXMuc3R5bGVNYXAgPSBjb21waWxlU3R5bGVNYXAodGhpcy5zY2hlbWEsIG9wdGlvbnNbInN0eWxlcyJdIHx8IG51bGwpOwogIHRoaXMuc29ydEtleXMgPSBvcHRpb25zWyJzb3J0S2V5cyJdIHx8IGZhbHNlOwogIHRoaXMubGluZVdpZHRoID0gb3B0aW9uc1sibGluZVdpZHRoIl0gfHwgODA7CiAgdGhpcy5ub1JlZnMgPSBvcHRpb25zWyJub1JlZnMiXSB8fCBmYWxzZTsKICB0aGlzLm5vQ29tcGF0TW9kZSA9IG9wdGlvbnNbIm5vQ29tcGF0TW9kZSJdIHx8IGZhbHNlOwogIHRoaXMuY29uZGVuc2VGbG93ID0gb3B0aW9uc1siY29uZGVuc2VGbG93Il0gfHwgZmFsc2U7CiAgdGhpcy5xdW90aW5nVHlwZSA9IG9wdGlvbnNbInF1b3RpbmdUeXBlIl0gPT09ICciJyA/IFFVT1RJTkdfVFlQRV9ET1VCTEUgOiBRVU9USU5HX1RZUEVfU0lOR0xFOwogIHRoaXMuZm9yY2VRdW90ZXMgPSBvcHRpb25zWyJmb3JjZVF1b3RlcyJdIHx8IGZhbHNlOwogIHRoaXMucmVwbGFjZXIgPSB0eXBlb2Ygb3B0aW9uc1sicmVwbGFjZXIiXSA9PT0gImZ1bmN0aW9uIiA/IG9wdGlvbnNbInJlcGxhY2VyIl0gOiBudWxsOwogIHRoaXMuaW1wbGljaXRUeXBlcyA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQ7CiAgdGhpcy5leHBsaWNpdFR5cGVzID0gdGhpcy5zY2hlbWEuY29tcGlsZWRFeHBsaWNpdDsKICB0aGlzLnRhZyA9IG51bGw7CiAgdGhpcy5yZXN1bHQgPSAiIjsKICB0aGlzLmR1cGxpY2F0ZXMgPSBbXTsKICB0aGlzLnVzZWREdXBsaWNhdGVzID0gbnVsbDsKfQpmdW5jdGlvbiBpbmRlbnRTdHJpbmcoc3RyaW5nLCBzcGFjZXMpIHsKICB2YXIgaW5kID0gY29tbW9uLnJlcGVhdCgiICIsIHNwYWNlcyksIHBvc2l0aW9uID0gMCwgbmV4dCA9IC0xLCByZXN1bHQgPSAiIiwgbGluZSwgbGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICB3aGlsZSAocG9zaXRpb24gPCBsZW5ndGgpIHsKICAgIG5leHQgPSBzdHJpbmcuaW5kZXhPZigiXG4iLCBwb3NpdGlvbik7CiAgICBpZiAobmV4dCA9PT0gLTEpIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbik7CiAgICAgIHBvc2l0aW9uID0gbGVuZ3RoOwogICAgfSBlbHNlIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbiwgbmV4dCArIDEpOwogICAgICBwb3NpdGlvbiA9IG5leHQgKyAxOwogICAgfQogICAgaWYgKGxpbmUubGVuZ3RoICYmIGxpbmUgIT09ICJcbiIpIHJlc3VsdCArPSBpbmQ7CiAgICByZXN1bHQgKz0gbGluZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCkgewogIHJldHVybiAiXG4iICsgY29tbW9uLnJlcGVhdCgiICIsIHN0YXRlLmluZGVudCAqIGxldmVsKTsKfQpmdW5jdGlvbiB0ZXN0SW1wbGljaXRSZXNvbHZpbmcoc3RhdGUsIHN0cjIpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwgdHlwZTI7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHN0YXRlLmltcGxpY2l0VHlwZXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW2luZGV4XTsKICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0cjIpKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gaXNXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gYyA9PT0gQ0hBUl9TUEFDRSB8fCBjID09PSBDSEFSX1RBQjsKfQpmdW5jdGlvbiBpc1ByaW50YWJsZShjKSB7CiAgcmV0dXJuIDMyIDw9IGMgJiYgYyA8PSAxMjYgfHwgMTYxIDw9IGMgJiYgYyA8PSA1NTI5NSAmJiBjICE9PSA4MjMyICYmIGMgIT09IDgyMzMgfHwgNTczNDQgPD0gYyAmJiBjIDw9IDY1NTMzICYmIGMgIT09IENIQVJfQk9NIHx8IDY1NTM2IDw9IGMgJiYgYyA8PSAxMTE0MTExOwp9CmZ1bmN0aW9uIGlzTnNDaGFyT3JXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gaXNQcmludGFibGUoYykgJiYgYyAhPT0gQ0hBUl9CT00gJiYgYyAhPT0gQ0hBUl9DQVJSSUFHRV9SRVRVUk4gJiYgYyAhPT0gQ0hBUl9MSU5FX0ZFRUQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmUoYywgcHJldiwgaW5ibG9jaykgewogIHZhciBjSXNOc0NoYXJPcldoaXRlc3BhY2UgPSBpc05zQ2hhck9yV2hpdGVzcGFjZShjKTsKICB2YXIgY0lzTnNDaGFyID0gY0lzTnNDaGFyT3JXaGl0ZXNwYWNlICYmICFpc1doaXRlc3BhY2UoYyk7CiAgcmV0dXJuICgKICAgIC8vIG5zLXBsYWluLXNhZmUKICAgIChpbmJsb2NrID8gKAogICAgICAvLyBjID0gZmxvdy1pbgogICAgICBjSXNOc0NoYXJPcldoaXRlc3BhY2UKICAgICkgOiBjSXNOc0NoYXJPcldoaXRlc3BhY2UgJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQpICYmIGMgIT09IENIQVJfU0hBUlAgJiYgIShwcmV2ID09PSBDSEFSX0NPTE9OICYmICFjSXNOc0NoYXIpIHx8IGlzTnNDaGFyT3JXaGl0ZXNwYWNlKHByZXYpICYmICFpc1doaXRlc3BhY2UocHJldikgJiYgYyA9PT0gQ0hBUl9TSEFSUCB8fCBwcmV2ID09PSBDSEFSX0NPTE9OICYmIGNJc05zQ2hhcgogICk7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVGaXJzdChjKSB7CiAgcmV0dXJuIGlzUHJpbnRhYmxlKGMpICYmIGMgIT09IENIQVJfQk9NICYmICFpc1doaXRlc3BhY2UoYykgJiYgYyAhPT0gQ0hBUl9NSU5VUyAmJiBjICE9PSBDSEFSX1FVRVNUSU9OICYmIGMgIT09IENIQVJfQ09MT04gJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9TSEFSUCAmJiBjICE9PSBDSEFSX0FNUEVSU0FORCAmJiBjICE9PSBDSEFSX0FTVEVSSVNLICYmIGMgIT09IENIQVJfRVhDTEFNQVRJT04gJiYgYyAhPT0gQ0hBUl9WRVJUSUNBTF9MSU5FICYmIGMgIT09IENIQVJfRVFVQUxTICYmIGMgIT09IENIQVJfR1JFQVRFUl9USEFOICYmIGMgIT09IENIQVJfU0lOR0xFX1FVT1RFICYmIGMgIT09IENIQVJfRE9VQkxFX1FVT1RFICYmIGMgIT09IENIQVJfUEVSQ0VOVCAmJiBjICE9PSBDSEFSX0NPTU1FUkNJQUxfQVQgJiYgYyAhPT0gQ0hBUl9HUkFWRV9BQ0NFTlQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVMYXN0KGMpIHsKICByZXR1cm4gIWlzV2hpdGVzcGFjZShjKSAmJiBjICE9PSBDSEFSX0NPTE9OOwp9CmZ1bmN0aW9uIGNvZGVQb2ludEF0KHN0cmluZywgcG9zKSB7CiAgdmFyIGZpcnN0ID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zKSwgc2Vjb25kOwogIGlmIChmaXJzdCA+PSA1NTI5NiAmJiBmaXJzdCA8PSA1NjMxOSAmJiBwb3MgKyAxIDwgc3RyaW5nLmxlbmd0aCkgewogICAgc2Vjb25kID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zICsgMSk7CiAgICBpZiAoc2Vjb25kID49IDU2MzIwICYmIHNlY29uZCA8PSA1NzM0MykgewogICAgICByZXR1cm4gKGZpcnN0IC0gNTUyOTYpICogMTAyNCArIHNlY29uZCAtIDU2MzIwICsgNjU1MzY7CiAgICB9CiAgfQogIHJldHVybiBmaXJzdDsKfQpmdW5jdGlvbiBuZWVkSW5kZW50SW5kaWNhdG9yKHN0cmluZykgewogIHZhciBsZWFkaW5nU3BhY2VSZSA9IC9eXG4qIC87CiAgcmV0dXJuIGxlYWRpbmdTcGFjZVJlLnRlc3Qoc3RyaW5nKTsKfQp2YXIgU1RZTEVfUExBSU4gPSAxOwp2YXIgU1RZTEVfU0lOR0xFID0gMjsKdmFyIFNUWUxFX0xJVEVSQUwgPSAzOwp2YXIgU1RZTEVfRk9MREVEID0gNDsKdmFyIFNUWUxFX0RPVUJMRSA9IDU7CmZ1bmN0aW9uIGNob29zZVNjYWxhclN0eWxlKHN0cmluZywgc2luZ2xlTGluZU9ubHksIGluZGVudFBlckxldmVsLCBsaW5lV2lkdGgsIHRlc3RBbWJpZ3VvdXNUeXBlLCBxdW90aW5nVHlwZSwgZm9yY2VRdW90ZXMsIGluYmxvY2spIHsKICB2YXIgaTsKICB2YXIgY2hhciA9IDA7CiAgdmFyIHByZXZDaGFyID0gbnVsbDsKICB2YXIgaGFzTGluZUJyZWFrID0gZmFsc2U7CiAgdmFyIGhhc0ZvbGRhYmxlTGluZSA9IGZhbHNlOwogIHZhciBzaG91bGRUcmFja1dpZHRoID0gbGluZVdpZHRoICE9PSAtMTsKICB2YXIgcHJldmlvdXNMaW5lQnJlYWsgPSAtMTsKICB2YXIgcGxhaW4gPSBpc1BsYWluU2FmZUZpcnN0KGNvZGVQb2ludEF0KHN0cmluZywgMCkpICYmIGlzUGxhaW5TYWZlTGFzdChjb2RlUG9pbnRBdChzdHJpbmcsIHN0cmluZy5sZW5ndGggLSAxKSk7CiAgaWYgKHNpbmdsZUxpbmVPbmx5IHx8IGZvcmNlUXVvdGVzKSB7CiAgICBmb3IgKGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgY2hhciA+PSA2NTUzNiA/IGkgKz0gMiA6IGkrKykgewogICAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgICAgaWYgKCFpc1ByaW50YWJsZShjaGFyKSkgewogICAgICAgIHJldHVybiBTVFlMRV9ET1VCTEU7CiAgICAgIH0KICAgICAgcGxhaW4gPSBwbGFpbiAmJiBpc1BsYWluU2FmZShjaGFyLCBwcmV2Q2hhciwgaW5ibG9jayk7CiAgICAgIHByZXZDaGFyID0gY2hhcjsKICAgIH0KICB9IGVsc2UgewogICAgZm9yIChpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGNoYXIgPj0gNjU1MzYgPyBpICs9IDIgOiBpKyspIHsKICAgICAgY2hhciA9IGNvZGVQb2ludEF0KHN0cmluZywgaSk7CiAgICAgIGlmIChjaGFyID09PSBDSEFSX0xJTkVfRkVFRCkgewogICAgICAgIGhhc0xpbmVCcmVhayA9IHRydWU7CiAgICAgICAgaWYgKHNob3VsZFRyYWNrV2lkdGgpIHsKICAgICAgICAgIGhhc0ZvbGRhYmxlTGluZSA9IGhhc0ZvbGRhYmxlTGluZSB8fCAvLyBGb2xkYWJsZSBsaW5lID0gdG9vIGxvbmcsIGFuZCBub3QgbW9yZS1pbmRlbnRlZC4KICAgICAgICAgIGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIjsKICAgICAgICAgIHByZXZpb3VzTGluZUJyZWFrID0gaTsKICAgICAgICB9CiAgICAgIH0gZWxzZSBpZiAoIWlzUHJpbnRhYmxlKGNoYXIpKSB7CiAgICAgICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICAgICAgfQogICAgICBwbGFpbiA9IHBsYWluICYmIGlzUGxhaW5TYWZlKGNoYXIsIHByZXZDaGFyLCBpbmJsb2NrKTsKICAgICAgcHJldkNoYXIgPSBjaGFyOwogICAgfQogICAgaGFzRm9sZGFibGVMaW5lID0gaGFzRm9sZGFibGVMaW5lIHx8IHNob3VsZFRyYWNrV2lkdGggJiYgKGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIik7CiAgfQogIGlmICghaGFzTGluZUJyZWFrICYmICFoYXNGb2xkYWJsZUxpbmUpIHsKICAgIGlmIChwbGFpbiAmJiAhZm9yY2VRdW90ZXMgJiYgIXRlc3RBbWJpZ3VvdXNUeXBlKHN0cmluZykpIHsKICAgICAgcmV0dXJuIFNUWUxFX1BMQUlOOwogICAgfQogICAgcmV0dXJuIHF1b3RpbmdUeXBlID09PSBRVU9USU5HX1RZUEVfRE9VQkxFID8gU1RZTEVfRE9VQkxFIDogU1RZTEVfU0lOR0xFOwogIH0KICBpZiAoaW5kZW50UGVyTGV2ZWwgPiA5ICYmIG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSkgewogICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICB9CiAgaWYgKCFmb3JjZVF1b3RlcykgewogICAgcmV0dXJuIGhhc0ZvbGRhYmxlTGluZSA/IFNUWUxFX0ZPTERFRCA6IFNUWUxFX0xJVEVSQUw7CiAgfQogIHJldHVybiBxdW90aW5nVHlwZSA9PT0gUVVPVElOR19UWVBFX0RPVUJMRSA/IFNUWUxFX0RPVUJMRSA6IFNUWUxFX1NJTkdMRTsKfQpmdW5jdGlvbiB3cml0ZVNjYWxhcihzdGF0ZSwgc3RyaW5nLCBsZXZlbCwgaXNrZXksIGluYmxvY2spIHsKICBzdGF0ZS5kdW1wID0gZnVuY3Rpb24oKSB7CiAgICBpZiAoc3RyaW5nLmxlbmd0aCA9PT0gMCkgewogICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIiInIDogIicnIjsKICAgIH0KICAgIGlmICghc3RhdGUubm9Db21wYXRNb2RlKSB7CiAgICAgIGlmIChERVBSRUNBVEVEX0JPT0xFQU5TX1NZTlRBWC5pbmRleE9mKHN0cmluZykgIT09IC0xIHx8IERFUFJFQ0FURURfQkFTRTYwX1NZTlRBWC50ZXN0KHN0cmluZykpIHsKICAgICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIicgKyBzdHJpbmcgKyAnIicgOiAiJyIgKyBzdHJpbmcgKyAiJyI7CiAgICAgIH0KICAgIH0KICAgIHZhciBpbmRlbnQgPSBzdGF0ZS5pbmRlbnQgKiBNYXRoLm1heCgxLCBsZXZlbCk7CiAgICB2YXIgbGluZVdpZHRoID0gc3RhdGUubGluZVdpZHRoID09PSAtMSA/IC0xIDogTWF0aC5tYXgoTWF0aC5taW4oc3RhdGUubGluZVdpZHRoLCA0MCksIHN0YXRlLmxpbmVXaWR0aCAtIGluZGVudCk7CiAgICB2YXIgc2luZ2xlTGluZU9ubHkgPSBpc2tleSB8fCBzdGF0ZS5mbG93TGV2ZWwgPiAtMSAmJiBsZXZlbCA+PSBzdGF0ZS5mbG93TGV2ZWw7CiAgICBmdW5jdGlvbiB0ZXN0QW1iaWd1aXR5KHN0cmluZzIpIHsKICAgICAgcmV0dXJuIHRlc3RJbXBsaWNpdFJlc29sdmluZyhzdGF0ZSwgc3RyaW5nMik7CiAgICB9CiAgICBzd2l0Y2ggKGNob29zZVNjYWxhclN0eWxlKAogICAgICBzdHJpbmcsCiAgICAgIHNpbmdsZUxpbmVPbmx5LAogICAgICBzdGF0ZS5pbmRlbnQsCiAgICAgIGxpbmVXaWR0aCwKICAgICAgdGVzdEFtYmlndWl0eSwKICAgICAgc3RhdGUucXVvdGluZ1R5cGUsCiAgICAgIHN0YXRlLmZvcmNlUXVvdGVzICYmICFpc2tleSwKICAgICAgaW5ibG9jawogICAgKSkgewogICAgICBjYXNlIFNUWUxFX1BMQUlOOgogICAgICAgIHJldHVybiBzdHJpbmc7CiAgICAgIGNhc2UgU1RZTEVfU0lOR0xFOgogICAgICAgIHJldHVybiAiJyIgKyBzdHJpbmcucmVwbGFjZSgvJy9nLCAiJyciKSArICInIjsKICAgICAgY2FzZSBTVFlMRV9MSVRFUkFMOgogICAgICAgIHJldHVybiAifCIgKyBibG9ja0hlYWRlcihzdHJpbmcsIHN0YXRlLmluZGVudCkgKyBkcm9wRW5kaW5nTmV3bGluZShpbmRlbnRTdHJpbmcoc3RyaW5nLCBpbmRlbnQpKTsKICAgICAgY2FzZSBTVFlMRV9GT0xERUQ6CiAgICAgICAgcmV0dXJuICI+IiArIGJsb2NrSGVhZGVyKHN0cmluZywgc3RhdGUuaW5kZW50KSArIGRyb3BFbmRpbmdOZXdsaW5lKGluZGVudFN0cmluZyhmb2xkU3RyaW5nKHN0cmluZywgbGluZVdpZHRoKSwgaW5kZW50KSk7CiAgICAgIGNhc2UgU1RZTEVfRE9VQkxFOgogICAgICAgIHJldHVybiAnIicgKyBlc2NhcGVTdHJpbmcoc3RyaW5nKSArICciJzsKICAgICAgZGVmYXVsdDoKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJpbXBvc3NpYmxlIGVycm9yOiBpbnZhbGlkIHNjYWxhciBzdHlsZSIpOwogICAgfQogIH0oKTsKfQpmdW5jdGlvbiBibG9ja0hlYWRlcihzdHJpbmcsIGluZGVudFBlckxldmVsKSB7CiAgdmFyIGluZGVudEluZGljYXRvciA9IG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSA/IFN0cmluZyhpbmRlbnRQZXJMZXZlbCkgOiAiIjsKICB2YXIgY2xpcCA9IHN0cmluZ1tzdHJpbmcubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgdmFyIGtlZXAgPSBjbGlwICYmIChzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDJdID09PSAiXG4iIHx8IHN0cmluZyA9PT0gIlxuIik7CiAgdmFyIGNob21wID0ga2VlcCA/ICIrIiA6IGNsaXAgPyAiIiA6ICItIjsKICByZXR1cm4gaW5kZW50SW5kaWNhdG9yICsgY2hvbXAgKyAiXG4iOwp9CmZ1bmN0aW9uIGRyb3BFbmRpbmdOZXdsaW5lKHN0cmluZykgewogIHJldHVybiBzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDFdID09PSAiXG4iID8gc3RyaW5nLnNsaWNlKDAsIC0xKSA6IHN0cmluZzsKfQpmdW5jdGlvbiBmb2xkU3RyaW5nKHN0cmluZywgd2lkdGgpIHsKICB2YXIgbGluZVJlID0gLyhcbispKFteXG5dKikvZzsKICB2YXIgcmVzdWx0ID0gZnVuY3Rpb24oKSB7CiAgICB2YXIgbmV4dExGID0gc3RyaW5nLmluZGV4T2YoIlxuIik7CiAgICBuZXh0TEYgPSBuZXh0TEYgIT09IC0xID8gbmV4dExGIDogc3RyaW5nLmxlbmd0aDsKICAgIGxpbmVSZS5sYXN0SW5kZXggPSBuZXh0TEY7CiAgICByZXR1cm4gZm9sZExpbmUoc3RyaW5nLnNsaWNlKDAsIG5leHRMRiksIHdpZHRoKTsKICB9KCk7CiAgdmFyIHByZXZNb3JlSW5kZW50ZWQgPSBzdHJpbmdbMF0gPT09ICJcbiIgfHwgc3RyaW5nWzBdID09PSAiICI7CiAgdmFyIG1vcmVJbmRlbnRlZDsKICB2YXIgbWF0Y2g7CiAgd2hpbGUgKG1hdGNoID0gbGluZVJlLmV4ZWMoc3RyaW5nKSkgewogICAgdmFyIHByZWZpeCA9IG1hdGNoWzFdLCBsaW5lID0gbWF0Y2hbMl07CiAgICBtb3JlSW5kZW50ZWQgPSBsaW5lWzBdID09PSAiICI7CiAgICByZXN1bHQgKz0gcHJlZml4ICsgKCFwcmV2TW9yZUluZGVudGVkICYmICFtb3JlSW5kZW50ZWQgJiYgbGluZSAhPT0gIiIgPyAiXG4iIDogIiIpICsgZm9sZExpbmUobGluZSwgd2lkdGgpOwogICAgcHJldk1vcmVJbmRlbnRlZCA9IG1vcmVJbmRlbnRlZDsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBmb2xkTGluZShsaW5lLCB3aWR0aCkgewogIGlmIChsaW5lID09PSAiIiB8fCBsaW5lWzBdID09PSAiICIpIHJldHVybiBsaW5lOwogIHZhciBicmVha1JlID0gLyBbXiBdL2c7CiAgdmFyIG1hdGNoOwogIHZhciBzdGFydCA9IDAsIGVuZCwgY3VyciA9IDAsIG5leHQgPSAwOwogIHZhciByZXN1bHQgPSAiIjsKICB3aGlsZSAobWF0Y2ggPSBicmVha1JlLmV4ZWMobGluZSkpIHsKICAgIG5leHQgPSBtYXRjaC5pbmRleDsKICAgIGlmIChuZXh0IC0gc3RhcnQgPiB3aWR0aCkgewogICAgICBlbmQgPSBjdXJyID4gc3RhcnQgPyBjdXJyIDogbmV4dDsKICAgICAgcmVzdWx0ICs9ICJcbiIgKyBsaW5lLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICBzdGFydCA9IGVuZCArIDE7CiAgICB9CiAgICBjdXJyID0gbmV4dDsKICB9CiAgcmVzdWx0ICs9ICJcbiI7CiAgaWYgKGxpbmUubGVuZ3RoIC0gc3RhcnQgPiB3aWR0aCAmJiBjdXJyID4gc3RhcnQpIHsKICAgIHJlc3VsdCArPSBsaW5lLnNsaWNlKHN0YXJ0LCBjdXJyKSArICJcbiIgKyBsaW5lLnNsaWNlKGN1cnIgKyAxKTsKICB9IGVsc2UgewogICAgcmVzdWx0ICs9IGxpbmUuc2xpY2Uoc3RhcnQpOwogIH0KICByZXR1cm4gcmVzdWx0LnNsaWNlKDEpOwp9CmZ1bmN0aW9uIGVzY2FwZVN0cmluZyhzdHJpbmcpIHsKICB2YXIgcmVzdWx0ID0gIiI7CiAgdmFyIGNoYXIgPSAwOwogIHZhciBlc2NhcGVTZXE7CiAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHJpbmcubGVuZ3RoOyBjaGFyID49IDY1NTM2ID8gaSArPSAyIDogaSsrKSB7CiAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgIGVzY2FwZVNlcSA9IEVTQ0FQRV9TRVFVRU5DRVNbY2hhcl07CiAgICBpZiAoIWVzY2FwZVNlcSAmJiBpc1ByaW50YWJsZShjaGFyKSkgewogICAgICByZXN1bHQgKz0gc3RyaW5nW2ldOwogICAgICBpZiAoY2hhciA+PSA2NTUzNikgcmVzdWx0ICs9IHN0cmluZ1tpICsgMV07CiAgICB9IGVsc2UgewogICAgICByZXN1bHQgKz0gZXNjYXBlU2VxIHx8IGVuY29kZUhleChjaGFyKTsKICAgIH0KICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiB3cml0ZUZsb3dTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIG9iamVjdCkgewogIHZhciBfcmVzdWx0ID0gIiIsIF90YWcgPSBzdGF0ZS50YWcsIGluZGV4LCBsZW5ndGgsIHZhbHVlOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdmFsdWUgPSBvYmplY3RbaW5kZXhdOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIHZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIFN0cmluZyhpbmRleCksIHZhbHVlKTsKICAgIH0KICAgIGlmICh3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCB2YWx1ZSwgZmFsc2UsIGZhbHNlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICJ1bmRlZmluZWQiICYmIHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwsIG51bGwsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgaWYgKF9yZXN1bHQgIT09ICIiKSBfcmVzdWx0ICs9ICIsIiArICghc3RhdGUuY29uZGVuc2VGbG93ID8gIiAiIDogIiIpOwogICAgICBfcmVzdWx0ICs9IHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJbIiArIF9yZXN1bHQgKyAiXSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja1NlcXVlbmNlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBjb21wYWN0KSB7CiAgdmFyIF9yZXN1bHQgPSAiIiwgX3RhZyA9IHN0YXRlLnRhZywgaW5kZXgsIGxlbmd0aCwgdmFsdWU7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICB2YWx1ZSA9IG9iamVjdFtpbmRleF07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgdmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgU3RyaW5nKGluZGV4KSwgdmFsdWUpOwogICAgfQogICAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCB2YWx1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUpIHx8IHR5cGVvZiB2YWx1ZSA9PT0gInVuZGVmaW5lZCIgJiYgd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCArIDEsIG51bGwsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlKSkgewogICAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgICBfcmVzdWx0ICs9IGdlbmVyYXRlTmV4dExpbmUoc3RhdGUsIGxldmVsKTsKICAgICAgfQogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSAiOwogICAgICB9CiAgICAgIF9yZXN1bHQgKz0gc3RhdGUuZHVtcDsKICAgIH0KICB9CiAgc3RhdGUudGFnID0gX3RhZzsKICBzdGF0ZS5kdW1wID0gX3Jlc3VsdCB8fCAiW10iOwp9CmZ1bmN0aW9uIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgcGFpckJ1ZmZlcjsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoX3Jlc3VsdCAhPT0gIiIpIHBhaXJCdWZmZXIgKz0gIiwgIjsKICAgIGlmIChzdGF0ZS5jb25kZW5zZUZsb3cpIHBhaXJCdWZmZXIgKz0gJyInOwogICAgb2JqZWN0S2V5ID0gb2JqZWN0S2V5TGlzdFtpbmRleF07CiAgICBvYmplY3RWYWx1ZSA9IG9iamVjdFtvYmplY3RLZXldOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIG9iamVjdFZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIG9iamVjdEtleSwgb2JqZWN0VmFsdWUpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCBvYmplY3RLZXksIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0KSBwYWlyQnVmZmVyICs9ICI/ICI7CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXAgKyAoc3RhdGUuY29uZGVuc2VGbG93ID8gJyInIDogIiIpICsgIjoiICsgKHN0YXRlLmNvbmRlbnNlRmxvdyA/ICIiIDogIiAiKTsKICAgIGlmICghd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0VmFsdWUsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBfcmVzdWx0ICs9IHBhaXJCdWZmZXI7CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJ7IiArIF9yZXN1bHQgKyAifSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QsIGNvbXBhY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgZXhwbGljaXRQYWlyLCBwYWlyQnVmZmVyOwogIGlmIChzdGF0ZS5zb3J0S2V5cyA9PT0gdHJ1ZSkgewogICAgb2JqZWN0S2V5TGlzdC5zb3J0KCk7CiAgfSBlbHNlIGlmICh0eXBlb2Ygc3RhdGUuc29ydEtleXMgPT09ICJmdW5jdGlvbiIpIHsKICAgIG9iamVjdEtleUxpc3Quc29ydChzdGF0ZS5zb3J0S2V5cyk7CiAgfSBlbHNlIGlmIChzdGF0ZS5zb3J0S2V5cykgewogICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigic29ydEtleXMgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBmdW5jdGlvbiIpOwogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgcGFpckJ1ZmZlciArPSBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCk7CiAgICB9CiAgICBvYmplY3RLZXkgPSBvYmplY3RLZXlMaXN0W2luZGV4XTsKICAgIG9iamVjdFZhbHVlID0gb2JqZWN0W29iamVjdEtleV07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgb2JqZWN0VmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSk7CiAgICB9CiAgICBpZiAoIXdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCBvYmplY3RLZXksIHRydWUsIHRydWUsIHRydWUpKSB7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgZXhwbGljaXRQYWlyID0gc3RhdGUudGFnICE9PSBudWxsICYmIHN0YXRlLnRhZyAhPT0gIj8iIHx8IHN0YXRlLmR1bXAgJiYgc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0OwogICAgaWYgKGV4cGxpY2l0UGFpcikgewogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyAiOwogICAgICB9CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBpZiAoZXhwbGljaXRQYWlyKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gZ2VuZXJhdGVOZXh0TGluZShzdGF0ZSwgbGV2ZWwpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsICsgMSwgb2JqZWN0VmFsdWUsIHRydWUsIGV4cGxpY2l0UGFpcikpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gIjoiOwogICAgfSBlbHNlIHsKICAgICAgcGFpckJ1ZmZlciArPSAiOiAiOwogICAgfQogICAgcGFpckJ1ZmZlciArPSBzdGF0ZS5kdW1wOwogICAgX3Jlc3VsdCArPSBwYWlyQnVmZmVyOwogIH0KICBzdGF0ZS50YWcgPSBfdGFnOwogIHN0YXRlLmR1bXAgPSBfcmVzdWx0IHx8ICJ7fSI7Cn0KZnVuY3Rpb24gZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCBleHBsaWNpdCkgewogIHZhciBfcmVzdWx0LCB0eXBlTGlzdCwgaW5kZXgsIGxlbmd0aCwgdHlwZTIsIHN0eWxlOwogIHR5cGVMaXN0ID0gZXhwbGljaXQgPyBzdGF0ZS5leHBsaWNpdFR5cGVzIDogc3RhdGUuaW1wbGljaXRUeXBlczsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gdHlwZUxpc3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSB0eXBlTGlzdFtpbmRleF07CiAgICBpZiAoKHR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZTIucHJlZGljYXRlKSAmJiAoIXR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZW9mIG9iamVjdCA9PT0gIm9iamVjdCIgJiYgb2JqZWN0IGluc3RhbmNlb2YgdHlwZTIuaW5zdGFuY2VPZikgJiYgKCF0eXBlMi5wcmVkaWNhdGUgfHwgdHlwZTIucHJlZGljYXRlKG9iamVjdCkpKSB7CiAgICAgIGlmIChleHBsaWNpdCkgewogICAgICAgIGlmICh0eXBlMi5tdWx0aSAmJiB0eXBlMi5yZXByZXNlbnROYW1lKSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi5yZXByZXNlbnROYW1lKG9iamVjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHN0YXRlLnRhZyA9IHR5cGUyLnRhZzsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICB9CiAgICAgIGlmICh0eXBlMi5yZXByZXNlbnQpIHsKICAgICAgICBzdHlsZSA9IHN0YXRlLnN0eWxlTWFwW3R5cGUyLnRhZ10gfHwgdHlwZTIuZGVmYXVsdFN0eWxlOwogICAgICAgIGlmIChfdG9TdHJpbmcuY2FsbCh0eXBlMi5yZXByZXNlbnQpID09PSAiW29iamVjdCBGdW5jdGlvbl0iKSB7CiAgICAgICAgICBfcmVzdWx0ID0gdHlwZTIucmVwcmVzZW50KG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIucmVwcmVzZW50LCBzdHlsZSkpIHsKICAgICAgICAgIF9yZXN1bHQgPSB0eXBlMi5yZXByZXNlbnRbc3R5bGVdKG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCIhPCIgKyB0eXBlMi50YWcgKyAnPiB0YWcgcmVzb2x2ZXIgYWNjZXB0cyBub3QgIicgKyBzdHlsZSArICciIHN0eWxlJyk7CiAgICAgICAgfQogICAgICAgIHN0YXRlLmR1bXAgPSBfcmVzdWx0OwogICAgICB9CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBibG9jaywgY29tcGFjdCwgaXNrZXksIGlzYmxvY2tzZXEpIHsKICBzdGF0ZS50YWcgPSBudWxsOwogIHN0YXRlLmR1bXAgPSBvYmplY3Q7CiAgaWYgKCFkZXRlY3RUeXBlKHN0YXRlLCBvYmplY3QsIGZhbHNlKSkgewogICAgZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCB0cnVlKTsKICB9CiAgdmFyIHR5cGUyID0gX3RvU3RyaW5nLmNhbGwoc3RhdGUuZHVtcCk7CiAgdmFyIGluYmxvY2sgPSBibG9jazsKICB2YXIgdGFnU3RyOwogIGlmIChibG9jaykgewogICAgYmxvY2sgPSBzdGF0ZS5mbG93TGV2ZWwgPCAwIHx8IHN0YXRlLmZsb3dMZXZlbCA+IGxldmVsOwogIH0KICB2YXIgb2JqZWN0T3JBcnJheSA9IHR5cGUyID09PSAiW29iamVjdCBPYmplY3RdIiB8fCB0eXBlMiA9PT0gIltvYmplY3QgQXJyYXldIiwgZHVwbGljYXRlSW5kZXgsIGR1cGxpY2F0ZTsKICBpZiAob2JqZWN0T3JBcnJheSkgewogICAgZHVwbGljYXRlSW5kZXggPSBzdGF0ZS5kdXBsaWNhdGVzLmluZGV4T2Yob2JqZWN0KTsKICAgIGR1cGxpY2F0ZSA9IGR1cGxpY2F0ZUluZGV4ICE9PSAtMTsKICB9CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCAmJiBzdGF0ZS50YWcgIT09ICI/IiB8fCBkdXBsaWNhdGUgfHwgc3RhdGUuaW5kZW50ICE9PSAyICYmIGxldmVsID4gMCkgewogICAgY29tcGFjdCA9IGZhbHNlOwogIH0KICBpZiAoZHVwbGljYXRlICYmIHN0YXRlLnVzZWREdXBsaWNhdGVzW2R1cGxpY2F0ZUluZGV4XSkgewogICAgc3RhdGUuZHVtcCA9ICIqcmVmXyIgKyBkdXBsaWNhdGVJbmRleDsKICB9IGVsc2UgewogICAgaWYgKG9iamVjdE9yQXJyYXkgJiYgZHVwbGljYXRlICYmICFzdGF0ZS51c2VkRHVwbGljYXRlc1tkdXBsaWNhdGVJbmRleF0pIHsKICAgICAgc3RhdGUudXNlZER1cGxpY2F0ZXNbZHVwbGljYXRlSW5kZXhdID0gdHJ1ZTsKICAgIH0KICAgIGlmICh0eXBlMiA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIE9iamVjdC5rZXlzKHN0YXRlLmR1bXApLmxlbmd0aCAhPT0gMCkgewogICAgICAgIHdyaXRlQmxvY2tNYXBwaW5nKHN0YXRlLCBsZXZlbCwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgaWYgKGR1cGxpY2F0ZSkgewogICAgICAgICAgc3RhdGUuZHVtcCA9ICImcmVmXyIgKyBkdXBsaWNhdGVJbmRleCArIHN0YXRlLmR1bXA7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IEFycmF5XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIHN0YXRlLmR1bXAubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgaWYgKHN0YXRlLm5vQXJyYXlJbmRlbnQgJiYgIWlzYmxvY2tzZXEgJiYgbGV2ZWwgPiAwKSB7CiAgICAgICAgICB3cml0ZUJsb2NrU2VxdWVuY2Uoc3RhdGUsIGxldmVsIC0gMSwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHdyaXRlQmxvY2tTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIHN0YXRlLmR1bXAsIGNvbXBhY3QpOwogICAgICAgIH0KICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgd3JpdGVGbG93U2VxdWVuY2Uoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IFN0cmluZ10iKSB7CiAgICAgIGlmIChzdGF0ZS50YWcgIT09ICI/IikgewogICAgICAgIHdyaXRlU2NhbGFyKHN0YXRlLCBzdGF0ZS5kdW1wLCBsZXZlbCwgaXNrZXksIGluYmxvY2spOwogICAgICB9CiAgICB9IGVsc2UgaWYgKHR5cGUyID09PSAiW29iamVjdCBVbmRlZmluZWRdIikgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9IGVsc2UgewogICAgICBpZiAoc3RhdGUuc2tpcEludmFsaWQpIHJldHVybiBmYWxzZTsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigidW5hY2NlcHRhYmxlIGtpbmQgb2YgYW4gb2JqZWN0IHRvIGR1bXAgIiArIHR5cGUyKTsKICAgIH0KICAgIGlmIChzdGF0ZS50YWcgIT09IG51bGwgJiYgc3RhdGUudGFnICE9PSAiPyIpIHsKICAgICAgdGFnU3RyID0gZW5jb2RlVVJJKAogICAgICAgIHN0YXRlLnRhZ1swXSA9PT0gIiEiID8gc3RhdGUudGFnLnNsaWNlKDEpIDogc3RhdGUudGFnCiAgICAgICkucmVwbGFjZSgvIS9nLCAiJTIxIik7CiAgICAgIGlmIChzdGF0ZS50YWdbMF0gPT09ICIhIikgewogICAgICAgIHRhZ1N0ciA9ICIhIiArIHRhZ1N0cjsKICAgICAgfSBlbHNlIGlmICh0YWdTdHIuc2xpY2UoMCwgMTgpID09PSAidGFnOnlhbWwub3JnLDIwMDI6IikgewogICAgICAgIHRhZ1N0ciA9ICIhISIgKyB0YWdTdHIuc2xpY2UoMTgpOwogICAgICB9IGVsc2UgewogICAgICAgIHRhZ1N0ciA9ICIhPCIgKyB0YWdTdHIgKyAiPiI7CiAgICAgIH0KICAgICAgc3RhdGUuZHVtcCA9IHRhZ1N0ciArICIgIiArIHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGdldER1cGxpY2F0ZVJlZmVyZW5jZXMob2JqZWN0LCBzdGF0ZSkgewogIHZhciBvYmplY3RzID0gW10sIGR1cGxpY2F0ZXNJbmRleGVzID0gW10sIGluZGV4LCBsZW5ndGg7CiAgaW5zcGVjdE5vZGUob2JqZWN0LCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IGR1cGxpY2F0ZXNJbmRleGVzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHN0YXRlLmR1cGxpY2F0ZXMucHVzaChvYmplY3RzW2R1cGxpY2F0ZXNJbmRleGVzW2luZGV4XV0pOwogIH0KICBzdGF0ZS51c2VkRHVwbGljYXRlcyA9IG5ldyBBcnJheShsZW5ndGgpOwp9CmZ1bmN0aW9uIGluc3BlY3ROb2RlKG9iamVjdCwgb2JqZWN0cywgZHVwbGljYXRlc0luZGV4ZXMpIHsKICB2YXIgb2JqZWN0S2V5TGlzdCwgaW5kZXgsIGxlbmd0aDsKICBpZiAob2JqZWN0ICE9PSBudWxsICYmIHR5cGVvZiBvYmplY3QgPT09ICJvYmplY3QiKSB7CiAgICBpbmRleCA9IG9iamVjdHMuaW5kZXhPZihvYmplY3QpOwogICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICBpZiAoZHVwbGljYXRlc0luZGV4ZXMuaW5kZXhPZihpbmRleCkgPT09IC0xKSB7CiAgICAgICAgZHVwbGljYXRlc0luZGV4ZXMucHVzaChpbmRleCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG9iamVjdHMucHVzaChvYmplY3QpOwogICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7CiAgICAgICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICAgICAgICBpbnNwZWN0Tm9kZShvYmplY3RbaW5kZXhdLCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIG9iamVjdEtleUxpc3QgPSBPYmplY3Qua2V5cyhvYmplY3QpOwogICAgICAgIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3RLZXlMaXN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgICAgICAgIGluc3BlY3ROb2RlKG9iamVjdFtvYmplY3RLZXlMaXN0W2luZGV4XV0sIG9iamVjdHMsIGR1cGxpY2F0ZXNJbmRleGVzKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0KZnVuY3Rpb24gZHVtcCQxKGlucHV0LCBvcHRpb25zKSB7CiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgdmFyIHN0YXRlID0gbmV3IFN0YXRlKG9wdGlvbnMpOwogIGlmICghc3RhdGUubm9SZWZzKSBnZXREdXBsaWNhdGVSZWZlcmVuY2VzKGlucHV0LCBzdGF0ZSk7CiAgdmFyIHZhbHVlID0gaW5wdXQ7CiAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICB2YWx1ZSA9IHN0YXRlLnJlcGxhY2VyLmNhbGwoeyAiIjogdmFsdWUgfSwgIiIsIHZhbHVlKTsKICB9CiAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgMCwgdmFsdWUsIHRydWUsIHRydWUpKSByZXR1cm4gc3RhdGUuZHVtcCArICJcbiI7CiAgcmV0dXJuICIiOwp9CnZhciBkdW1wXzEgPSBkdW1wJDE7CnZhciBkdW1wZXIgPSB7CiAgZHVtcDogZHVtcF8xCn07CmZ1bmN0aW9uIHJlbmFtZWQoZnJvbSwgdG8pIHsKICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoIkZ1bmN0aW9uIHlhbWwuIiArIGZyb20gKyAiIGlzIHJlbW92ZWQgaW4ganMteWFtbCA0LiBVc2UgeWFtbC4iICsgdG8gKyAiIGluc3RlYWQsIHdoaWNoIGlzIG5vdyBzYWZlIGJ5IGRlZmF1bHQuIik7CiAgfTsKfQp2YXIgbG9hZCA9IGxvYWRlci5sb2FkOwp2YXIgbG9hZEFsbCA9IGxvYWRlci5sb2FkQWxsOwp2YXIgZHVtcCA9IGR1bXBlci5kdW1wOwp2YXIgc2FmZUxvYWQgPSByZW5hbWVkKCJzYWZlTG9hZCIsICJsb2FkIik7CnZhciBzYWZlTG9hZEFsbCA9IHJlbmFtZWQoInNhZmVMb2FkQWxsIiwgImxvYWRBbGwiKTsKdmFyIHNhZmVEdW1wID0gcmVuYW1lZCgic2FmZUR1bXAiLCAiZHVtcCIpOwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgR0lUSUdOT1JFX1BBVEggPSAiLmdpdGlnbm9yZSI7CnZhciBjYXB0dXJlR2l0SWdub3JlQ29udGVudFJ1bGUgPSAoc3RhdGUpID0+IChob3N0KSA9PiB7CiAgY29uc3QgZ2l0SWdub3JlQnVmZmVyID0gaG9zdC5yZWFkKEdJVElHTk9SRV9QQVRIKTsKICBpZiAoIWdpdElnbm9yZUJ1ZmZlcikgewogICAgcmV0dXJuIGhvc3Q7CiAgfQogIHN0YXRlLmNvbnRlbnQgPSBnaXRJZ25vcmVCdWZmZXIudG9TdHJpbmcoInV0Zi04Iik7CiAgcmV0dXJuIGhvc3Q7Cn07CnZhciBtZXJnZUdpdElnbm9yZUNvbnRlbnRSdWxlID0gKHN0YXRlKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmIChzdGF0ZS5jb250ZW50ID09PSB2b2lkIDApIHsKICAgIHJldHVybiBob3N0OwogIH0KICBjb25zdCBnaXRJZ25vcmVCdWZmZXIgPSBob3N0LnJlYWQoR0lUSUdOT1JFX1BBVEgpOwogIGlmICghZ2l0SWdub3JlQnVmZmVyKSB7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgY29uc3QgdGVtcGxhdGVDb250ZW50ID0gZ2l0SWdub3JlQnVmZmVyLnRvU3RyaW5nKCJ1dGYtOCIpOwogIGNvbnN0IG1lcmdlZENvbnRlbnQgPSBtZXJnZUdpdElnbm9yZUNvbnRlbnQoewogICAgZXhpc3RpbmdDb250ZW50OiBzdGF0ZS5jb250ZW50LAogICAgdGVtcGxhdGVDb250ZW50CiAgfSk7CiAgaWYgKG1lcmdlZENvbnRlbnQgIT09IHRlbXBsYXRlQ29udGVudCkgewogICAgY29udGV4dC5sb2dnZXIuaW5mbygiTWVyZ2luZyB0ZW1wbGF0ZSAuZ2l0aWdub3JlIHdpdGggcHJvamVjdC1zcGVjaWZpYyBlbnRyaWVzIik7CiAgICBob3N0Lm92ZXJ3cml0ZShHSVRJR05PUkVfUEFUSCwgbWVyZ2VkQ29udGVudCk7CiAgfQogIHJldHVybiBob3N0Owp9Owp2YXIgbWFpbiA9IChvcHRpb25zKSA9PiB7CiAgY29uc3Qgc3RhdGUgPSB7fTsKICByZXR1cm4gKDAsIGltcG9ydF9zY2hlbWF0aWNzMTAuY2hhaW4pKFsKICAgIGNhcHR1cmVHaXRJZ25vcmVDb250ZW50UnVsZShzdGF0ZSksCiAgICB1cGRhdGVUc0NvbmZpZ1J1bGUsCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlQ29tbW9uU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMTEubWVyZ2VXaXRoKShnZW5lcmF0ZVByb2plY3RTcGVjaWZpY1NvdXJjZShvcHRpb25zKSwgaW1wb3J0X3NjaGVtYXRpY3M5Lk1lcmdlU3RyYXRlZ3kuT3ZlcndyaXRlKSwKICAgIG1lcmdlR2l0SWdub3JlQ29udGVudFJ1bGUoc3RhdGUpCiAgXSk7Cn07Ci8vIEFubm90YXRlIHRoZSBDb21tb25KUyBleHBvcnQgbmFtZXMgZm9yIEVTTSBpbXBvcnQgaW4gbm9kZToKMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7CiAgbWFpbgp9KTsKLyohIEJ1bmRsZWQgbGljZW5zZSBpbmZvcm1hdGlvbjoKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGl0ZXJhbHMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVjb3JkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi93cml0ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvbnVsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvY2xpLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3Npbmsvc2luay5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvbW92ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCmpzLXlhbWwvZGlzdC9qcy15YW1sLm1qczoKICAoKiEganMteWFtbCA0LjEuMCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWNhL2pzLXlhbWwgQGxpY2Vuc2UgTUlUICopCiovCg==",pis=async e=>{let t=Buffer.from(wAl,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var fis=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=fYr.ppath.join(e,"project");await TAl(r,{recursive:!0}),await pis(fYr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var B_e=Nt(ro(),1),kkt=Nt(ro(),1),Iis=async e=>{let t=process.cwd();await kkt.xfs.copyFilePromise(B_e.ppath.join(t,".pnp.cjs"),B_e.ppath.join(e,".pnp.cjs")),await kkt.xfs.symlinkPromise(B_e.ppath.join(t,"package.json"),B_e.ppath.join(e,"package.json")),await kkt.xfs.symlinkPromise(B_e.ppath.join(t,"runtime"),B_e.ppath.join(e,"runtime"))};var Cis=async e=>async r=>{try{let n=await mis.xfs.mktempPromise(),a=his.ppath.join(n,"collection.json");await fis(n),await Iis(n),await dis("project",e,a)}catch(n){console.error(n)}};var xkt=class extends _is.BaseCommand{static paths=[["generate","project"]];type=Su.String("-t,--type","project");async execute(){let t=await yis.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let n={type:this.type,cwd:process.cwd()},a=dji(this,t),o=await Cis(n);return(await bis.StreamReport.start(a,o)).exitCode()}};var Eis={commands:[xkt]};var SWl=Nt($ls()),vWl=Nt(sus()),BWl=Nt(pus()),wWl=Nt(Cus()),TWl=Nt(RGr()),RWl=Nt(Axt()),NWl=Nt(Sus()),DWl=Nt(Dus()),kWl=Nt(pgs()),xWl=Nt(ygs()),GWl=Nt(Ngs()),FWl=Nt(Hgs()),ZWl=Nt(rDe()),LWl=Nt(Kgs()),VWl=Nt(rAs()),PWl=Nt(cAs()),WWl=Nt(CAs()),OWl=Nt(Xds()),MWl=Nt(sJ()),HWl=Nt(_1s()),YWl=Nt($he()),QWl=Nt(z1s()),XWl=Nt(hGe()),JWl=Nt(n2s()),UWl=Nt(g2s()),A2s=()=>({modules:new Map([["@yarnpkg/cli",hWl],["@yarnpkg/core",mWl],["@yarnpkg/fslib",CWl],["@yarnpkg/libzip",_Wl],["@yarnpkg/parsers",yWl],["@yarnpkg/shell",bWl],["clipanion",rg],["semver",EWl],["typanion",mZ],["@atls/yarn-plugin-badges",opr],["@atls/yarn-plugin-changelog",Ufr],["@atls/yarn-plugin-check",Kfr],["@atls/yarn-plugin-checks",r1r],["@atls/yarn-plugin-cli-publish",i1r],["@atls/yarn-plugin-commit",TBr],["@atls/yarn-plugin-essentials",NBr],["@atls/yarn-plugin-export",nTr],["@atls/yarn-plugin-files",SEr],["@atls/yarn-plugin-format",kkr],["@atls/yarn-plugin-image",Jkr],["@atls/yarn-plugin-library",rxr],["@atls/yarn-plugin-lint",lxr],["@atls/yarn-plugin-release",HGr],["@atls/yarn-plugin-renderer",HFr],["@atls/yarn-plugin-service",mVr],["@atls/yarn-plugin-test",BVr],["@atls/yarn-plugin-tools",FVr],["@atls/yarn-plugin-typescript",WVr],["@atls/yarn-plugin-workspaces",FEr],["@atls/yarn-plugin-ui",nPr],["@atls/yarn-plugin-schematics",IYr],["@yarnpkg/plugin-interactive-tools",SWl],["@yarnpkg/plugin-jsr",vWl],["@yarnpkg/plugin-workspace-tools",BWl],["@yarnpkg/plugin-typescript",wWl],["@yarnpkg/plugin-version",TWl],["@yarnpkg/plugin-essentials",RWl],["@yarnpkg/plugin-catalog",NWl],["@yarnpkg/plugin-compat",DWl],["@yarnpkg/plugin-constraints",kWl],["@yarnpkg/plugin-dlx",xWl],["@yarnpkg/plugin-exec",GWl],["@yarnpkg/plugin-file",FWl],["@yarnpkg/plugin-git",ZWl],["@yarnpkg/plugin-github",LWl],["@yarnpkg/plugin-http",VWl],["@yarnpkg/plugin-init",PWl],["@yarnpkg/plugin-link",WWl],["@yarnpkg/plugin-nm",OWl],["@yarnpkg/plugin-npm",MWl],["@yarnpkg/plugin-npm-cli",HWl],["@yarnpkg/plugin-pack",YWl],["@yarnpkg/plugin-patch",QWl],["@yarnpkg/plugin-pnp",XWl],["@yarnpkg/plugin-pnpm",JWl],["@yarnpkg/plugin-stage",UWl]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"])});var d2s={name:"@atls/yarn-cli",version:"1.2.22-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist","build:dist":"mv bundles dist","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.14.1","@yarnpkg/core":"4.7.0","@yarnpkg/fslib":"3.1.5","@yarnpkg/libzip":"3.2.2","@yarnpkg/parsers":"3.0.3","@yarnpkg/plugin-catalog":"1.0.2","@yarnpkg/plugin-compat":"4.0.12","@yarnpkg/plugin-constraints":"4.0.5","@yarnpkg/plugin-dlx":"4.0.2","@yarnpkg/plugin-essentials":"4.5.0","@yarnpkg/plugin-exec":"3.1.0","@yarnpkg/plugin-file":"3.0.2","@yarnpkg/plugin-git":"3.2.0","@yarnpkg/plugin-github":"3.0.2","@yarnpkg/plugin-http":"3.0.3","@yarnpkg/plugin-init":"4.1.2","@yarnpkg/plugin-interactive-tools":"4.1.0","@yarnpkg/plugin-jsr":"1.1.1","@yarnpkg/plugin-link":"3.0.2","@yarnpkg/plugin-nm":"4.0.8","@yarnpkg/plugin-npm":"3.5.0","@yarnpkg/plugin-npm-cli":"4.4.1","@yarnpkg/plugin-pack":"4.0.4","@yarnpkg/plugin-patch":"4.0.3","@yarnpkg/plugin-pnp":"4.1.5","@yarnpkg/plugin-pnpm":"2.1.2","@yarnpkg/plugin-stage":"4.0.2","@yarnpkg/plugin-typescript":"4.1.3","@yarnpkg/plugin-version":"4.2.0","@yarnpkg/plugin-workspace-tools":"4.1.7","@yarnpkg/shell":"4.1.3",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"]}},raijin:{pack:{exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"}}};var p2s=Qqr.npath.toPortablePath(Qqr.npath.resolve(process.argv[1])),Hqr=A2s(d2s["@yarnpkg/builder"].bundles.standard);Hqr.then?Hqr.then(async e=>{(0,Yqr.runExit)(process.argv.slice(2),{cwd:Xqr.ppath.cwd(),selfPath:p2s,pluginConfiguration:e})}):(0,Yqr.runExit)(process.argv.slice(2),{cwd:Xqr.ppath.cwd(),selfPath:p2s,pluginConfiguration:Hqr}); +`).filter(Boolean)).flat(),{logRecords:a,raw:o}=n.reduce((l,A)=>{try{let f=JSON.parse(A);return{...l,logRecords:[...l.logRecords,f]}}catch{return{...l,raw:[...l.raw,A]}}},{logRecords:[],raw:[]});a.forEach(l=>{console.log(xE((0,qDe.jsx)(Hvt,{...l})))}),o.length>0&&console.log(xE((0,qDe.jsx)(BKi,{file:t?LKi(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.bufferedStdTimeout&&(clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=void 0),this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})}),this.std.clear()}};var KKe=class extends qee{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(NVr.Filename.pnpCjs)&&t.includes(NVr.Filename.pnpEsmLoader)?this.executeRegular("integration"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("integration"):this.executeProxy("integration")}};var DVr=Nt(zs(),1);var jKe=class extends qee{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(DVr.Filename.pnpCjs)&&t.includes(DVr.Filename.pnpEsmLoader)?this.executeRegular("unit"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("unit"):this.executeProxy("unit")}};var MKi=Nt(yn(),1),HKi=Nt(yn(),1),kVr=Nt(zs(),1);var Qvt=class extends qee{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(kVr.Filename.pnpCjs)&&t.includes(kVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await MKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await HKi.Project.find(t,this.context.cwd),n=await V8.initialize(this.context.cwd);try{return(await n.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.type==="test:fail")?1:0}catch(a){return console.error(a),1}}};var YKi={commands:[KKe,jKe,Qvt]};var MVr={};sI(MVr,{default:()=>u8i});var jKi=Nt(yn(),1),zKi=Nt(yn(),1),qKi=Nt(yn(),1),FVr=Nt(zs(),1),ZVr=Nt(yn(),1),nle=Nt(UC(),1);var QKi=Nt(el(),1),XKi=Nt(yn(),1),JKi=Nt(yn(),1),GVr=Nt(zs(),1),UKi=Nt(yn(),1),KKi=Nt(zs(),1);$c();var rle=class extends QKi.BaseCommand{static usage=_C.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(GVr.Filename.pnpCjs)&&t.includes(GVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await XKi.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await JKi.Project.find(r,this.context.cwd),a=await KKi.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await UKi.execUtils.pipevp(o,t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){return 0}};var Xvt=class extends rle{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(FVr.Filename.pnpCjs)&&t.includes(FVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await jKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await zKi.Project.find(t,this.context.cwd),n=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await qKi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let l=ZVr.structUtils.parseIdent("typescript"),A=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===l.scope&&f.name===l.name);A||(A=ZVr.structUtils.makeDescriptor(l,n.dependencies.typescript)),nle.default.valid(nle.default.coerce(A.range))&&nle.default.valid(nle.default.coerce(n.dependencies.typescript))&&(nle.default.eq(nle.default.coerce(A.range)||"",nle.default.coerce(n.dependencies.typescript)||"")||(A.range=n.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(A.identHash,A),await r.persist()}})})).exitCode()}};var $Ki=Nt(yn(),1),e8i=Nt(yn(),1),t8i=Nt(yn(),1),LVr=Nt(zs(),1),zKe=Nt(zs(),1),VVr=Nt(zs(),1),PVr=Nt(gTr(),1);import yWc from"node:assert";var bWc=(e,t,r)=>{let n=e.slice();return t.forEach((a,o)=>{typeof n[o]>"u"?n[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?n[o]=(0,PVr.default)(e[o],a,r):e.includes(a)||n.push(a)}),n},EWc=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,Jvt=class extends rle{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(LVr.Filename.pnpCjs)&&t.includes(LVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await $Ki.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await e8i.Project.find(t,this.context.cwd);return(await t8i.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=VVr.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),l=await zKe.xfs.existsPromise(o)?await zKe.xfs.readJsonPromise(o):{compilerOptions:{}};await zKe.xfs.writeFilePromise(VVr.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// +`);let A=(0,PVr.default)(l,{compilerOptions:bj.compilerOptions},{arrayMerge:bWc}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(EWc),I={...A,include:Array.from(new Set(["project.types.d.ts",...A.include,...f]))};try{yWc.deepEqual(l,I)}catch{await zKe.xfs.writeJsonPromise(o,I)}})})).exitCode()}};var SWc=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],Uvt=class extends rle{static paths=[["tools","sync"]];async executeRegular(){for(let t of SWc){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var r8i=Nt(yn(),1),WVr=Nt(yn(),1),n8i=Nt(zs(),1);var i8i=async(e,t)=>{let{project:r}=await r8i.Project.find(e,t.cwd),n=await n8i.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r});await WVr.execUtils.pipevp(a,["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:WVr.execUtils.EndStrategy.ErrorCode,env:o})};var o8i=Nt(zs(),1),$De=Nt(zs(),1),ile=Nt(zs(),1);import{spawnSync as vWc}from"node:child_process";var OVr=e=>`${e} +`,BWc=()=>OVr("yarn commit staged"),s8i=(e,t)=>vWc("git",e,{cwd:t,encoding:"utf-8"}),a8i=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK||s8i(["--version"]).error?.code==="ENOENT")return;let r=$De.ppath.join(e.cwd,".config/husky"),n=$De.ppath.join(r,"_");await ile.xfs.existsPromise(n)&&await ile.xfs.removePromise(r),await ile.xfs.existsPromise(r)||await ile.xfs.mkdirPromise(r,{recursive:!0}),await ile.xfs.writeFilePromise($De.ppath.join(r,"commit-msg"),OVr("yarn commit message lint"),{mode:493}),await ile.xfs.writeFilePromise($De.ppath.join(r,"pre-commit"),BWc(),{mode:493}),await ile.xfs.writeFilePromise($De.ppath.join(r,"prepare-commit-msg"),OVr("yarn commit message $@"),{mode:493});let{error:a}=s8i(["config","core.hooksPath",r],o8i.npath.fromPortablePath(e.cwd));if(a)throw a};var c8i=Nt(zs(),1);var l8i=async(e,t,r)=>{Mmt(t);let n=DEr(e);if(!n)return;let a=c8i.npath.fromPortablePath(n);await Promise.all([...t[uQe]?[r("node",process.execPath)]:[],r("run",process.execPath,[a,"run"]),r("yarn",process.execPath,[a]),r("yarnpkg",process.execPath,[a]),r("node-gyp",process.execPath,[a,"run","--top-level","node-gyp"])])};var u8i={hooks:{afterAllInstalled:a8i,afterYarnVersionSet:i8i,setupScriptEnvironment:l8i},commands:[Uvt,Xvt,Jvt]};var JVr={};sI(JVr,{TypeCheckCommand:()=>qKe,default:()=>p8i});var g8i=Nt(el(),1),HVr=Nt(yn(),1),YVr=Nt(yn(),1),QVr=Nt(zs(),1),A8i=Nt(yn(),1),XVr=Nt(zs(),1),Kvt=Nt(zs(),1);$c();var d8i=Nt(Al(),1);var jvt=Nt(Pc(),1),qKe=class extends g8i.BaseCommand{static paths=[["typecheck"]];args=Su.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(QVr.Filename.pnpCjs)&&t.includes(QVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await HVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await YVr.Project.find(t,this.context.cwd),n=await Kvt.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await A8i.execUtils.pipevp(a,["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let t=await HVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await YVr.Project.find(t,this.context.cwd),n=await qNe.initialize(r.cwd),{clear:a}=(0,d8i.render)((0,jvt.jsx)(qEt,{typescript:n}));try{let o=await n.check(await this.getIncludes(r));return o.forEach(l=>{xE((0,jvt.jsx)(zEt,{...l})).split(` +`).forEach(A=>{console.log(A)})}),o.length===0?0:1}catch(o){return xE((0,jvt.jsx)(Fk,{error:o})).split(` +`).forEach(l=>{console.error(l)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await Kvt.xfs.existsPromise(XVr.ppath.join(t.cwd,"tsconfig.json"))){let r=await Kvt.xfs.readJsonPromise(XVr.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var p8i={commands:[qKe]};var uPr={};sI(uPr,{UiIconsGenerateCommand:()=>r8e,default:()=>Tji});var Sji=Nt(el(),1),oPr=Nt(yn(),1),aPr=Nt(yn(),1),cPr=Nt(zs(),1),vji=Nt(yn(),1),Bji=Nt(zs(),1);$c();import{join as Eji}from"node:path";import{relative as jOc}from"node:path";var wji=Nt(Al(),1);var $Ke=Nt(Al(),1),b8i=Nt(Ec(),1),E8i=Nt(Ec(),1);var f8i=Nt(Ec(),1),I8i=Nt(Ec(),1),m8i=Nt(Pc(),1),h8i=({icons:e})=>{let[t,r]=(0,I8i.useState)(0);return(0,f8i.useEffect)(()=>{let n=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",n),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",n),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),(0,m8i.jsx)(JM,{value:t})};var zvt=Nt(Al(),1),qvt=Nt(Al(),1),C8i=Nt(Ec(),1),_8i=Nt(Ec(),1);var $ee=Nt(Pc(),1),y8i=({icons:e})=>{let[t,r]=(0,_8i.useState)("Initilization...");return(0,C8i.useEffect)(()=>{let n=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",n),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",n),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),(0,$ee.jsxs)(zvt.Box,{flexDirection:"row",width:"100%",children:[(0,$ee.jsxs)(zvt.Box,{flexGrow:1,children:[(0,$ee.jsx)(RG,{color:"cyan",children:"Icons:"}),(0,$ee.jsx)(qvt.Text,{children:" "}),(0,$ee.jsx)(qvt.Text,{color:"white",children:t})]}),(0,$ee.jsx)(zvt.Box,{flexDirection:"row",children:(0,$ee.jsx)(qvt.Text,{color:"green",children:kI.tick})})]})};var sle=Nt(Pc(),1),S8i=({icons:e})=>{let[t,r]=(0,b8i.useState)(!1);return(0,E8i.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",n),()=>{e.off("save:end",n)}},[r]),t?null:(0,sle.jsx)($Ke.Box,{position:"relative",height:7,children:(0,sle.jsxs)($Ke.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,sle.jsx)($Ke.Box,{children:(0,sle.jsx)(y8i,{icons:e})}),(0,sle.jsx)($Ke.Box,{marginTop:1,marginBottom:1,children:(0,sle.jsx)(h8i,{icons:e})})]})})};import HOc from"node:events";import{access as YOc}from"node:fs/promises";import{mkdtemp as QOc}from"node:fs/promises";import{readFile as XOc}from"node:fs/promises";import{readdir as JOc}from"node:fs/promises";import{writeFile as _ji}from"node:fs/promises";import{mkdir as UOc}from"node:fs/promises";import{tmpdir as KOc}from"node:os";import{join as ete}from"node:path";import{basename as yji}from"node:path";import{extname as bji}from"node:path";var wWc=/[\p{Lu}]/u,TWc=/[\p{Ll}]/u,v8i=/^[\p{Lu}](?![\p{Lu}])/gu,T8i=/([\p{Alpha}\p{N}_]|$)/u,UVr=/[_.\- ]+/,RWc=new RegExp("^"+UVr.source),B8i=new RegExp(UVr.source+T8i.source,"gu"),w8i=new RegExp("\\d+"+T8i.source,"gu"),NWc=(e,t,r,n)=>{let a=!1,o=!1,l=!1,A=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&wWc.test(I)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,l=o,o=!0,f++):o&&l&&TWc.test(I)&&(!A||n)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),l=o,o=!1,a=!0):(a=t(I)===I&&r(I)!==I,l=o,o=r(I)===I&&t(I)!==I)}return e},DWc=(e,t)=>(v8i.lastIndex=0,e.replaceAll(v8i,r=>t(r))),kWc=(e,t)=>(B8i.lastIndex=0,w8i.lastIndex=0,e.replaceAll(w8i,(r,n,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(B8i,(r,n)=>t(n)));function KVr(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),n=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?UVr.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=NWc(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(RWc,""),e=t.preserveConsecutiveUppercase?DWc(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),kWc(e,n))}var Cji=Nt(mji(),1);import{writeFile as WOc}from"node:fs/promises";import{mkdtemp as OOc}from"node:fs/promises";import{tmpdir as MOc}from"node:os";import{join as gBt}from"node:path";var ABt=class{constructor(t,r,n){this.loaders=t;this.cwd=r;this.target=n}async build(){let t=new Cji.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(gBt(this.cwd,"replacements")),t.entry("template").add(gBt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=gBt(await OOc(gBt(MOc(),"tools-icons-")),"tsconfig.json");await WOc(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...bj.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var dBt=class e extends HOc{constructor(r,n,a,o){super();this.svgr=r;this.webpack=n;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:n,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:l}=await import("@atls/code-runtime/webpack");return new e({transform:n,jsx:a},o,{tsLoader:l},r)}async generate(r={}){await this.save(await this.transform(await this.read(ete(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await QOc(ete(KOc(),"tools-icons-")),n=this.webpack(await new ABt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{n.run(l=>{l&&o(l),a([])})}),{replacements:(await import(ete(r,"replacements.mjs"))).default,template:(await import(ete(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let n=await JOc(r),a=await Promise.all(n.filter(o=>o.endsWith(".svg")).map(async o=>({source:await XOc(ete(r,o),"utf8"),component:KVr(yji(o,bji(o)),{pascalCase:!0}),name:yji(o,bji(o)),path:ete(r,o),file:o})));return this.emit("read:end"),a}async transform(r,n){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),l=await Promise.all(r.map(async A=>{let f=await this.svgr.transform(A.source,{...n,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${A.component}Icon`]??{}},{componentName:`${A.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...A,output:f}}));return this.emit("transform:end"),l}async save(r){this.emit("save:start");let n=ete(this.cwd,"src");try{await YOc(n)}catch{await UOc(n,{recursive:!0})}await Promise.all(r.map(async a=>_ji(ete(n,`${a.name}.icon.tsx`),a.output))),await _ji(ete(n,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` +`)),this.emit("save:end")}};var lPr=Nt(Pc(),1),r8e=class extends Sji.BaseCommand{static paths=[["ui","icons","generate"]];native=Su.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(cPr.Filename.pnpCjs)&&t.includes(cPr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await oPr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await aPr.Project.find(t,this.context.cwd),n=await Bji.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await vji.execUtils.pipevp(o,["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await oPr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await aPr.Project.find(t,this.context.cwd),n=await dBt.initialize(this.context.cwd),{clear:a}=(0,wji.render)((0,lPr.jsx)(S8i,{icons:n}));try{await n.generate({native:this.native});let o=(await b$("*.tsx",{cwd:Eji(this.context.cwd,"src")})).map(l=>Eji(jOc(r.cwd,this.context.cwd),"src",l));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?xE((0,lPr.jsx)(Fk,{error:o})).split(` +`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var Tji={commands:[r8e]};var EYr={};sI(EYr,{default:()=>Pis});var Zis=Nt(el(),1),Lis=Nt(yn(),1),Vis=Nt(yn(),1);$c();var Rji=(e,t)=>({stdout:e.context.stdout,configuration:t});var xis=Nt(zs(),1),Gis=Nt(zs(),1);var wis=Nt(kxe(),1),Tis=Nt(vis(),1);var Bis=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var Ris=async(e,t,r)=>{let o=!0,l=new Tis.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});l.reporter.subscribe(A=>{o=!1,Bis(A)});try{return await l.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(A){return A instanceof wis.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):A instanceof Error?console.debug(`An error occured: +${A.stack}`):console.debug(`Error: ${A instanceof Error?A.message:A}`),1}};var bYr=Nt(zs(),1);import{mkdir as _dl}from"node:fs/promises";var Cdl="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNKc29uT2JqZWN0ID0gaXNKc29uT2JqZWN0OwogICAgZXhwb3J0czIuaXNKc29uQXJyYXkgPSBpc0pzb25BcnJheTsKICAgIGZ1bmN0aW9uIGlzSnNvbk9iamVjdCh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSnNvbkFycmF5KHZhbHVlKSB7CiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0VHlwZXNPZlNjaGVtYSA9IGdldFR5cGVzT2ZTY2hlbWE7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBhbGxUeXBlcyA9IFsic3RyaW5nIiwgImludGVnZXIiLCAibnVtYmVyIiwgIm9iamVjdCIsICJhcnJheSIsICJib29sZWFuIiwgIm51bGwiXTsKICAgIGZ1bmN0aW9uIGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hMikgewogICAgICBpZiAoIXNjaGVtYTIpIHsKICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBuZXcgU2V0KGFsbFR5cGVzKTsKICAgICAgfQogICAgICBsZXQgcG90ZW50aWFsczsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnR5cGUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFtzY2hlbWEyLnR5cGVdKTsKICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIudHlwZSkpIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChzY2hlbWEyLnR5cGUpOwogICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShzY2hlbWEyLmVudW0pKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCB2IG9mIHNjaGVtYTIuZW51bSkgewogICAgICAgICAgc3dpdGNoICh0eXBlb2YgdikgewogICAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICBjYXNlICJib29sZWFuIjoKICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCh0eXBlb2Ygdik7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHsKICAgICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAodiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm51bGwiKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGlmICgoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIubm90KSkgewogICAgICAgIGNvbnN0IG5vdFR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzY2hlbWEyLm5vdCk7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnBvdGVudGlhbHNdLmZpbHRlcigocCkgPT4gIW5vdFR5cGVzLmhhcyhwKSkpOwogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIuYWxsT2YpKSB7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbGxPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChbLi4udHlwZXNdLmZpbHRlcigodCkgPT4gcG90ZW50aWFscy5oYXModCkpKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5vbmVPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5vbmVPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5hbnlPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbnlPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIucHJvcGVydGllcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJvYmplY3QiKTsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zKSB7CiAgICAgICAgcG90ZW50aWFscy5hZGQoImFycmF5Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvdGVudGlhbHM7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3RyYW5zZm9ybXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFkZFVuZGVmaW5lZERlZmF1bHRzID0gYWRkVW5kZWZpbmVkRGVmYXVsdHM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciB1dGlsaXR5XzEgPSByZXF1aXJlX3V0aWxpdHkoKTsKICAgIGZ1bmN0aW9uIGFkZFVuZGVmaW5lZERlZmF1bHRzKHZhbHVlLCBfcG9pbnRlciwgc2NoZW1hMikgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIiB8fCBzY2hlbWEyID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgdmFsdWUgPz89IHNjaGVtYTIuZGVmYXVsdDsKICAgICAgY29uc3QgdHlwZXMgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHNjaGVtYTIpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTI7CiAgICAgIGlmICh0eXBlcy5zaXplID09PSAxKSB7CiAgICAgICAgdHlwZTIgPSBBcnJheS5mcm9tKHR5cGVzKVswXTsKICAgICAgfSBlbHNlIGlmICh0eXBlcy5zaXplID09PSAyICYmIHR5cGVzLmhhcygiYXJyYXkiKSAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYTIucHJvcGVydGllcyAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAib2JqZWN0IjsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUyID0gImFycmF5IjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlID09IHZvaWQgMCA/IFtdIDogdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIucHJvcGVydGllcykpIHsKICAgICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbcHJvcE5hbWUsIHNjaGVtYU9iamVjdF0gb2YgT2JqZWN0LmVudHJpZXMoc2NoZW1hMi5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgaWYgKHByb3BOYW1lID09PSAiJHNjaGVtYSIgfHwgISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoc2NoZW1hT2JqZWN0KSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZhbHVlMiA9IG5ld1ZhbHVlW3Byb3BOYW1lXTsKICAgICAgICAgIGlmICh2YWx1ZTIgPT09IHZvaWQgMCkgewogICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBzY2hlbWFPYmplY3QuZGVmYXVsdDsKICAgICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5U2NoZW1hcyA9IHNjaGVtYU9iamVjdC5vbmVPZiB8fCBzY2hlbWFPYmplY3QuYW55T2Y7CiAgICAgICAgICAgIGNvbnN0IGFsbFByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyh2YWx1ZTIpOwogICAgICAgICAgICBjb25zdCBhZGp1c3RlZFNjaGVtYSA9ICgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShwcm9wZXJ0eVNjaGVtYXMpICYmIHByb3BlcnR5U2NoZW1hcy5maW5kKChzKSA9PiB7CiAgICAgICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHNjaGVtYVR5cGUgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHMpOwogICAgICAgICAgICAgIGlmIChzY2hlbWFUeXBlLnNpemUgPT09IDEgJiYgc2NoZW1hVHlwZS5oYXMoIm9iamVjdCIpICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkocy5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKHMucHJvcGVydGllcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gYWxsUHJvcGVydGllcy5ldmVyeSgoa2V5KSA9PiBwcm9wZXJ0aWVzLmluY2x1ZGVzKGtleSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpZiAoYWRqdXN0ZWRTY2hlbWEgJiYgKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShhZGp1c3RlZFNjaGVtYSkpIHsKICAgICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBhZGRVbmRlZmluZWREZWZhdWx0cyh2YWx1ZTIsIF9wb2ludGVyLCBhZGp1c3RlZFNjaGVtYSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICB9CiAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcG9pbnRlci5qcwp2YXIgcmVxdWlyZV9wb2ludGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWlsZEpzb25Qb2ludGVyID0gYnVpbGRKc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLmpvaW5Kc29uUG9pbnRlciA9IGpvaW5Kc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLnBhcnNlSnNvblBvaW50ZXIgPSBwYXJzZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gYnVpbGRKc29uUG9pbnRlcihmcmFnbWVudHMpIHsKICAgICAgcmV0dXJuICIvIiArIGZyYWdtZW50cy5tYXAoKGYpID0+IHsKICAgICAgICByZXR1cm4gZi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgICB9KS5qb2luKCIvIik7CiAgICB9CiAgICBmdW5jdGlvbiBqb2luSnNvblBvaW50ZXIocm9vdCwgLi4ub3RoZXJzKSB7CiAgICAgIGlmIChyb290ID09ICIvIikgewogICAgICAgIHJldHVybiBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvb3QgKyBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZUpzb25Qb2ludGVyKHBvaW50ZXIpIHsKICAgICAgaWYgKHBvaW50ZXIgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICAgIGlmIChwb2ludGVyLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJSZWxhdGl2ZSBwb2ludGVyOiAiICsgcG9pbnRlcik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvaW50ZXIuc3Vic3RyaW5nKDEpLnNwbGl0KC9cLy8pLm1hcCgoc3RyMikgPT4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+IikpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMKdmFyIHJlcXVpcmVfY29kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuYWRkQ29kZUFyZyA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5uaWwgPSBleHBvcnRzMi5fQ29kZSA9IGV4cG9ydHMyLk5hbWUgPSBleHBvcnRzMi5JREVOVElGSUVSID0gZXhwb3J0czIuX0NvZGVPck5hbWUgPSB2b2lkIDA7CiAgICB2YXIgX0NvZGVPck5hbWUgPSBjbGFzcyB7CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGVPck5hbWUgPSBfQ29kZU9yTmFtZTsKICAgIGV4cG9ydHMyLklERU5USUZJRVIgPSAvXlthLXokX11bYS16JF8wLTldKiQvaTsKICAgIHZhciBOYW1lID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGlmICghZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KHMpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiBuYW1lIG11c3QgYmUgYSB2YWxpZCBpZGVudGlmaWVyIik7CiAgICAgICAgdGhpcy5zdHIgPSBzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB7IFt0aGlzLnN0cl06IDEgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5hbWUgPSBOYW1lOwogICAgdmFyIF9Db2RlID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvZGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuX2l0ZW1zID0gdHlwZW9mIGNvZGUgPT09ICJzdHJpbmciID8gW2NvZGVdIDogY29kZTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdHI7CiAgICAgIH0KICAgICAgZW1wdHlTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDEpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX2l0ZW1zWzBdOwogICAgICAgIHJldHVybiBpdGVtID09PSAiIiB8fCBpdGVtID09PSAnIiInOwogICAgICB9CiAgICAgIGdldCBzdHIoKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLl9zdHIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX3N0ciA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgocywgYykgPT4gYCR7c30ke2N9YCwgIiIpOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX25hbWVzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLl9uYW1lcyA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgobmFtZXMsIGMpID0+IHsKICAgICAgICAgIGlmIChjIGluc3RhbmNlb2YgTmFtZSkKICAgICAgICAgICAgbmFtZXNbYy5zdHJdID0gKG5hbWVzW2Muc3RyXSB8fCAwKSArIDE7CiAgICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgICAgfSwge30pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGUgPSBfQ29kZTsKICAgIGV4cG9ydHMyLm5pbCA9IG5ldyBfQ29kZSgiIik7CiAgICBmdW5jdGlvbiBfKHN0cnMsIC4uLmFyZ3MpIHsKICAgICAgY29uc3QgY29kZSA9IFtzdHJzWzBdXTsKICAgICAgbGV0IGkgPSAwOwogICAgICB3aGlsZSAoaSA8IGFyZ3MubGVuZ3RoKSB7CiAgICAgICAgYWRkQ29kZUFyZyhjb2RlLCBhcmdzW2ldKTsKICAgICAgICBjb2RlLnB1c2goc3Ryc1srK2ldKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IF9Db2RlKGNvZGUpOwogICAgfQogICAgZXhwb3J0czIuXyA9IF87CiAgICB2YXIgcGx1cyA9IG5ldyBfQ29kZSgiKyIpOwogICAgZnVuY3Rpb24gc3RyMihzdHJzLCAuLi5hcmdzKSB7CiAgICAgIGNvbnN0IGV4cHIgPSBbc2FmZVN0cmluZ2lmeShzdHJzWzBdKV07CiAgICAgIGxldCBpID0gMDsKICAgICAgd2hpbGUgKGkgPCBhcmdzLmxlbmd0aCkgewogICAgICAgIGV4cHIucHVzaChwbHVzKTsKICAgICAgICBhZGRDb2RlQXJnKGV4cHIsIGFyZ3NbaV0pOwogICAgICAgIGV4cHIucHVzaChwbHVzLCBzYWZlU3RyaW5naWZ5KHN0cnNbKytpXSkpOwogICAgICB9CiAgICAgIG9wdGltaXplKGV4cHIpOwogICAgICByZXR1cm4gbmV3IF9Db2RlKGV4cHIpOwogICAgfQogICAgZXhwb3J0czIuc3RyID0gc3RyMjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHIyYCR7YzF9JHtjMn1gOwogICAgfQogICAgZXhwb3J0czIuc3RyQ29uY2F0ID0gc3RyQ29uY2F0OwogICAgZnVuY3Rpb24gaW50ZXJwb2xhdGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gIm51bWJlciIgfHwgdHlwZW9mIHggPT0gImJvb2xlYW4iIHx8IHggPT09IG51bGwgPyB4IDogc2FmZVN0cmluZ2lmeShBcnJheS5pc0FycmF5KHgpID8geC5qb2luKCIsIikgOiB4KTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmluZ2lmeSh4KSB7CiAgICAgIHJldHVybiBuZXcgX0NvZGUoc2FmZVN0cmluZ2lmeSh4KSk7CiAgICB9CiAgICBleHBvcnRzMi5zdHJpbmdpZnkgPSBzdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBzYWZlU3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHgpLnJlcGxhY2UoL1x1MjAyOC9nLCAiXFx1MjAyOCIpLnJlcGxhY2UoL1x1MjAyOS9nLCAiXFx1MjAyOSIpOwogICAgfQogICAgZXhwb3J0czIuc2FmZVN0cmluZ2lmeSA9IHNhZmVTdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBnZXRQcm9wZXJ0eShrZXkpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkgPyBuZXcgX0NvZGUoYC4ke2tleX1gKSA6IF9gWyR7a2V5fV1gOwogICAgfQogICAgZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBnZXRQcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIGdldEVzbUV4cG9ydE5hbWUoa2V5KSB7CiAgICAgIGlmICh0eXBlb2Yga2V5ID09ICJzdHJpbmciICYmIGV4cG9ydHMyLklERU5USUZJRVIudGVzdChrZXkpKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfQ29kZShgJHtrZXl9YCk7CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBpbnZhbGlkIGV4cG9ydCBuYW1lOiAke2tleX0sIHVzZSBleHBsaWNpdCAkaWQgbmFtZSBtYXBwaW5nYCk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZ2V0RXNtRXhwb3J0TmFtZTsKICAgIGZ1bmN0aW9uIHJlZ2V4cENvZGUocngpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShyeC50b1N0cmluZygpKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSByZWdleHBDb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL3Njb3BlLmpzCnZhciByZXF1aXJlX3Njb3BlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBWYWx1ZUVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgQ29kZUdlbjogImNvZGUiIGZvciAke25hbWV9IG5vdCBkZWZpbmVkYCk7CiAgICAgICAgdGhpcy52YWx1ZSA9IG5hbWUudmFsdWU7CiAgICAgIH0KICAgIH07CiAgICB2YXIgVXNlZFZhbHVlU3RhdGU7CiAgICAoZnVuY3Rpb24oVXNlZFZhbHVlU3RhdGUyKSB7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIlN0YXJ0ZWQiXSA9IDBdID0gIlN0YXJ0ZWQiOwogICAgICBVc2VkVmFsdWVTdGF0ZTJbVXNlZFZhbHVlU3RhdGUyWyJDb21wbGV0ZWQiXSA9IDFdID0gIkNvbXBsZXRlZCI7CiAgICB9KShVc2VkVmFsdWVTdGF0ZSB8fCAoZXhwb3J0czIuVXNlZFZhbHVlU3RhdGUgPSBVc2VkVmFsdWVTdGF0ZSA9IHt9KSk7CiAgICBleHBvcnRzMi52YXJLaW5kcyA9IHsKICAgICAgY29uc3Q6IG5ldyBjb2RlXzEuTmFtZSgiY29uc3QiKSwKICAgICAgbGV0OiBuZXcgY29kZV8xLk5hbWUoImxldCIpLAogICAgICB2YXI6IG5ldyBjb2RlXzEuTmFtZSgidmFyIikKICAgIH07CiAgICB2YXIgU2NvcGUgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4ZXMsIHBhcmVudCB9ID0ge30pIHsKICAgICAgICB0aGlzLl9uYW1lcyA9IHt9OwogICAgICAgIHRoaXMuX3ByZWZpeGVzID0gcHJlZml4ZXM7CiAgICAgICAgdGhpcy5fcGFyZW50ID0gcGFyZW50OwogICAgICB9CiAgICAgIHRvTmFtZShuYW1lT3JQcmVmaXgpIHsKICAgICAgICByZXR1cm4gbmFtZU9yUHJlZml4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBuYW1lT3JQcmVmaXggOiB0aGlzLm5hbWUobmFtZU9yUHJlZml4KTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgY29kZV8xLk5hbWUodGhpcy5fbmV3TmFtZShwcmVmaXgpKTsKICAgICAgfQogICAgICBfbmV3TmFtZShwcmVmaXgpIHsKICAgICAgICBjb25zdCBuZyA9IHRoaXMuX25hbWVzW3ByZWZpeF0gfHwgdGhpcy5fbmFtZUdyb3VwKHByZWZpeCk7CiAgICAgICAgcmV0dXJuIGAke3ByZWZpeH0ke25nLmluZGV4Kyt9YDsKICAgICAgfQogICAgICBfbmFtZUdyb3VwKHByZWZpeCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgaWYgKCgoX2IgPSAoX2EgPSB0aGlzLl9wYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5fcHJlZml4ZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5oYXMocHJlZml4KSkgfHwgdGhpcy5fcHJlZml4ZXMgJiYgIXRoaXMuX3ByZWZpeGVzLmhhcyhwcmVmaXgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHByZWZpeCAiJHtwcmVmaXh9IiBpcyBub3QgYWxsb3dlZCBpbiB0aGlzIHNjb3BlYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9uYW1lc1twcmVmaXhdID0geyBwcmVmaXgsIGluZGV4OiAwIH07CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZSA9IFNjb3BlOwogICAgdmFyIFZhbHVlU2NvcGVOYW1lID0gY2xhc3MgZXh0ZW5kcyBjb2RlXzEuTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHByZWZpeCwgbmFtZVN0cikgewogICAgICAgIHN1cGVyKG5hbWVTdHIpOwogICAgICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICB9CiAgICAgIHNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5LCBpdGVtSW5kZXggfSkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLnNjb3BlUGF0aCA9ICgwLCBjb2RlXzEuXylgLiR7bmV3IGNvZGVfMS5OYW1lKHByb3BlcnR5KX1bJHtpdGVtSW5kZXh9XWA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IFZhbHVlU2NvcGVOYW1lOwogICAgdmFyIGxpbmUgPSAoMCwgY29kZV8xLl8pYFxuYDsKICAgIHZhciBWYWx1ZVNjb3BlID0gY2xhc3MgZXh0ZW5kcyBTY29wZSB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMpIHsKICAgICAgICBzdXBlcihvcHRzKTsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9zY29wZSA9IG9wdHMuc2NvcGU7CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/IGxpbmUgOiBjb2RlXzEubmlsIH07CiAgICAgIH0KICAgICAgZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgVmFsdWVTY29wZU5hbWUocHJlZml4LCB0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIHZhbHVlKG5hbWVPclByZWZpeCwgdmFsdWUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHZhbHVlLnJlZiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiByZWYgbXVzdCBiZSBwYXNzZWQgaW4gdmFsdWUiKTsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBjb25zdCB7IHByZWZpeCB9ID0gbmFtZTsKICAgICAgICBjb25zdCB2YWx1ZUtleSA9IChfYSA9IHZhbHVlLmtleSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsdWUucmVmOwogICAgICAgIGxldCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICh2cykgewogICAgICAgICAgY29uc3QgX25hbWUgPSB2cy5nZXQodmFsdWVLZXkpOwogICAgICAgICAgaWYgKF9uYW1lKQogICAgICAgICAgICByZXR1cm4gX25hbWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIH0KICAgICAgICB2cy5zZXQodmFsdWVLZXksIG5hbWUpOwogICAgICAgIGNvbnN0IHMgPSB0aGlzLl9zY29wZVtwcmVmaXhdIHx8ICh0aGlzLl9zY29wZVtwcmVmaXhdID0gW10pOwogICAgICAgIGNvbnN0IGl0ZW1JbmRleCA9IHMubGVuZ3RoOwogICAgICAgIHNbaXRlbUluZGV4XSA9IHZhbHVlLnJlZjsKICAgICAgICBuYW1lLnNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5OiBwcmVmaXgsIGl0ZW1JbmRleCB9KTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XTsKICAgICAgICBpZiAoIXZzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiB2cy5nZXQoa2V5T3JSZWYpOwogICAgICB9CiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUsIHZhbHVlcyA9IHRoaXMuX3ZhbHVlcykgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUuc2NvcGVQYXRoID09PSB2b2lkIDApCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbmFtZSAiJHtuYW1lfSIgaGFzIG5vIHZhbHVlYCk7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVfMS5fKWAke3Njb3BlTmFtZX0ke25hbWUuc2NvcGVQYXRofWA7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKHZhbHVlcyA9IHRoaXMuX3ZhbHVlcywgdXNlZFZhbHVlcywgZ2V0Q29kZSkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUudmFsdWUgPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiBuYW1lLnZhbHVlLmNvZGU7CiAgICAgICAgfSwgdXNlZFZhbHVlcywgZ2V0Q29kZSk7CiAgICAgIH0KICAgICAgX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIHZhbHVlQ29kZSwgdXNlZFZhbHVlcyA9IHt9LCBnZXRDb2RlKSB7CiAgICAgICAgbGV0IGNvZGUgPSBjb2RlXzEubmlsOwogICAgICAgIGZvciAoY29uc3QgcHJlZml4IGluIHZhbHVlcykgewogICAgICAgICAgY29uc3QgdnMgPSB2YWx1ZXNbcHJlZml4XTsKICAgICAgICAgIGlmICghdnMpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgY29uc3QgbmFtZVNldCA9IHVzZWRWYWx1ZXNbcHJlZml4XSA9IHVzZWRWYWx1ZXNbcHJlZml4XSB8fCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgICAgdnMuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAobmFtZVNldC5oYXMobmFtZSkpCiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICBuYW1lU2V0LnNldChuYW1lLCBVc2VkVmFsdWVTdGF0ZS5TdGFydGVkKTsKICAgICAgICAgICAgbGV0IGMgPSB2YWx1ZUNvZGUobmFtZSk7CiAgICAgICAgICAgIGlmIChjKSB7CiAgICAgICAgICAgICAgY29uc3QgZGVmID0gdGhpcy5vcHRzLmVzNSA/IGV4cG9ydHMyLnZhcktpbmRzLnZhciA6IGV4cG9ydHMyLnZhcktpbmRzLmNvbnN0OwogICAgICAgICAgICAgIGNvZGUgPSAoMCwgY29kZV8xLl8pYCR7Y29kZX0ke2RlZn0gJHtuYW1lfSA9ICR7Y307JHt0aGlzLm9wdHMuX259YDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjID0gZ2V0Q29kZSA9PT0gbnVsbCB8fCBnZXRDb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnZXRDb2RlKG5hbWUpKSB7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7Y30ke3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRocm93IG5ldyBWYWx1ZUVycm9yKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLkNvbXBsZXRlZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlID0gVmFsdWVTY29wZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9pbmRleC5qcwp2YXIgcmVxdWlyZV9jb2RlZ2VuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9yID0gZXhwb3J0czIuYW5kID0gZXhwb3J0czIubm90ID0gZXhwb3J0czIuQ29kZUdlbiA9IGV4cG9ydHMyLm9wZXJhdG9ycyA9IGV4cG9ydHMyLnZhcktpbmRzID0gZXhwb3J0czIuVmFsdWVTY29wZU5hbWUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlID0gZXhwb3J0czIuU2NvcGUgPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLmdldFByb3BlcnR5ID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBzY29wZV8xID0gcmVxdWlyZV9zY29wZSgpOwogICAgdmFyIGNvZGVfMiA9IHJlcXVpcmVfY29kZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyQ29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0ckNvbmNhdDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdldFByb3BlcnR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLmdldFByb3BlcnR5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ2lmeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHJpbmdpZnk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVnZXhwQ29kZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5yZWdleHBDb2RlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuTmFtZTsKICAgIH0gfSk7CiAgICB2YXIgc2NvcGVfMiA9IHJlcXVpcmVfc2NvcGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5TY29wZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWx1ZVNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbHVlU2NvcGVOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ2YXJLaW5kcyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIudmFyS2luZHM7CiAgICB9IH0pOwogICAgZXhwb3J0czIub3BlcmF0b3JzID0gewogICAgICBHVDogbmV3IGNvZGVfMS5fQ29kZSgiPiIpLAogICAgICBHVEU6IG5ldyBjb2RlXzEuX0NvZGUoIj49IiksCiAgICAgIExUOiBuZXcgY29kZV8xLl9Db2RlKCI8IiksCiAgICAgIExURTogbmV3IGNvZGVfMS5fQ29kZSgiPD0iKSwKICAgICAgRVE6IG5ldyBjb2RlXzEuX0NvZGUoIj09PSIpLAogICAgICBORVE6IG5ldyBjb2RlXzEuX0NvZGUoIiE9PSIpLAogICAgICBOT1Q6IG5ldyBjb2RlXzEuX0NvZGUoIiEiKSwKICAgICAgT1I6IG5ldyBjb2RlXzEuX0NvZGUoInx8IiksCiAgICAgIEFORDogbmV3IGNvZGVfMS5fQ29kZSgiJiYiKSwKICAgICAgQUREOiBuZXcgY29kZV8xLl9Db2RlKCIrIikKICAgIH07CiAgICB2YXIgTm9kZSA9IGNsYXNzIHsKICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKF9uYW1lcywgX2NvbnN0YW50cykgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgdmFyIERlZiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKHZhcktpbmQsIG5hbWUsIHJocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucmhzID0gcmhzOwogICAgICB9CiAgICAgIHJlbmRlcih7IGVzNSwgX24gfSkgewogICAgICAgIGNvbnN0IHZhcktpbmQgPSBlczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHRoaXMudmFyS2luZDsKICAgICAgICBjb25zdCByaHMgPSB0aGlzLnJocyA9PT0gdm9pZCAwID8gIiIgOiBgID0gJHt0aGlzLnJoc31gOwogICAgICAgIHJldHVybiBgJHt2YXJLaW5kfSAke3RoaXMubmFtZX0ke3Joc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghbmFtZXNbdGhpcy5uYW1lLnN0cl0pCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKHRoaXMucmhzKQogICAgICAgICAgdGhpcy5yaHMgPSBvcHRpbWl6ZUV4cHIodGhpcy5yaHMsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5yaHMgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyB0aGlzLnJocy5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5saHMgPSBsaHM7CiAgICAgICAgdGhpcy5yaHMgPSByaHM7CiAgICAgICAgdGhpcy5zaWRlRWZmZWN0cyA9IHNpZGVFZmZlY3RzOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5saHN9ID0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICh0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lICYmICFuYW1lc1t0aGlzLmxocy5zdHJdICYmICF0aGlzLnNpZGVFZmZlY3RzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMucmhzID0gb3B0aW1pemVFeHByKHRoaXMucmhzLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSB0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8ge30gOiB7IC4uLnRoaXMubGhzLm5hbWVzIH07CiAgICAgICAgcmV0dXJuIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy5yaHMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbk9wID0gY2xhc3MgZXh0ZW5kcyBBc3NpZ24gewogICAgICBjb25zdHJ1Y3RvcihsaHMsIG9wLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgc3VwZXIobGhzLCByaHMsIHNpZGVFZmZlY3RzKTsKICAgICAgICB0aGlzLm9wID0gb3A7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxoc30gJHt0aGlzLm9wfT0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIExhYmVsID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGFiZWwpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGFiZWwgPSBsYWJlbDsKICAgICAgICB0aGlzLm5hbWVzID0ge307CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxhYmVsfTpgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgQnJlYWsgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsYWJlbCkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sYWJlbCA9IGxhYmVsOwogICAgICAgIHRoaXMubmFtZXMgPSB7fTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsID8gYCAke3RoaXMubGFiZWx9YCA6ICIiOwogICAgICAgIHJldHVybiBgYnJlYWske2xhYmVsfTtgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgVGhyb3cgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihlcnJvcikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYHRocm93ICR7dGhpcy5lcnJvcn07YCArIF9uOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5lcnJvci5uYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBBbnlDb2RlID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX07YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX1gID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB0aGlzLmNvZGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5jb2RlLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY29kZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IHRoaXMuY29kZS5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIFBhcmVudE5vZGUgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcihub2RlcyA9IFtdKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5vZGVzID0gbm9kZXM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5ub2Rlcy5yZWR1Y2UoKGNvZGUsIG4pID0+IGNvZGUgKyBuLnJlbmRlcihvcHRzKSwgIiIpOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV0ub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobikpCiAgICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxLCAuLi5uKTsKICAgICAgICAgIGVsc2UgaWYgKG4pCiAgICAgICAgICAgIG5vZGVzW2ldID0gbjsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV07CiAgICAgICAgICBpZiAobi5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIHN1YnRyYWN0TmFtZXMobmFtZXMsIG4ubmFtZXMpOwogICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLm5vZGVzLnJlZHVjZSgobmFtZXMsIG4pID0+IGFkZE5hbWVzKG5hbWVzLCBuLm5hbWVzKSwge30pOwogICAgICB9CiAgICB9OwogICAgdmFyIEJsb2NrTm9kZSA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJ7IiArIG9wdHMuX24gKyBzdXBlci5yZW5kZXIob3B0cykgKyAifSIgKyBvcHRzLl9uOwogICAgICB9CiAgICB9OwogICAgdmFyIFJvb3QgPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgfTsKICAgIHZhciBFbHNlID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgfTsKICAgIEVsc2Uua2luZCA9ICJlbHNlIjsKICAgIHZhciBJZiA9IGNsYXNzIF9JZiBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvbmRpdGlvbiwgbm9kZXMpIHsKICAgICAgICBzdXBlcihub2Rlcyk7CiAgICAgICAgdGhpcy5jb25kaXRpb24gPSBjb25kaXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9IGBpZigke3RoaXMuY29uZGl0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmVsc2UpCiAgICAgICAgICBjb2RlICs9ICJlbHNlICIgKyB0aGlzLmVsc2UucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgc3VwZXIub3B0aW1pemVOb2RlcygpOwogICAgICAgIGNvbnN0IGNvbmQgPSB0aGlzLmNvbmRpdGlvbjsKICAgICAgICBpZiAoY29uZCA9PT0gdHJ1ZSkKICAgICAgICAgIHJldHVybiB0aGlzLm5vZGVzOwogICAgICAgIGxldCBlID0gdGhpcy5lbHNlOwogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBjb25zdCBucyA9IGUub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgZSA9IHRoaXMuZWxzZSA9IEFycmF5LmlzQXJyYXkobnMpID8gbmV3IEVsc2UobnMpIDogbnM7CiAgICAgICAgfQogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBpZiAoY29uZCA9PT0gZmFsc2UpCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgX0lmID8gZSA6IGUubm9kZXM7CiAgICAgICAgICBpZiAodGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgICAgcmV0dXJuIG5ldyBfSWYobm90KGNvbmQpLCBlIGluc3RhbmNlb2YgX0lmID8gW2VdIDogZS5ub2Rlcyk7CiAgICAgICAgfQogICAgICAgIGlmIChjb25kID09PSBmYWxzZSB8fCAhdGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLmVsc2UgPSAoX2EgPSB0aGlzLmVsc2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIGlmICghKHN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgfHwgdGhpcy5lbHNlKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLmNvbmRpdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLmNvbmRpdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLmNvbmRpdGlvbik7CiAgICAgICAgaWYgKHRoaXMuZWxzZSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmVsc2UubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIElmLmtpbmQgPSAiaWYiOwogICAgdmFyIEZvciA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgIH07CiAgICBGb3Iua2luZCA9ICJmb3IiOwogICAgdmFyIEZvckxvb3AgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGl0ZXJhdGlvbikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5pdGVyYXRpb24gPSBpdGVyYXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMuaXRlcmF0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLml0ZXJhdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLml0ZXJhdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYXRpb24ubmFtZXMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvclJhbmdlID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3Rvcih2YXJLaW5kLCBuYW1lLCBmcm9tLCB0bykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuZnJvbSA9IGZyb207CiAgICAgICAgdGhpcy50byA9IHRvOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgY29uc3QgdmFyS2luZCA9IG9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiB0aGlzLnZhcktpbmQ7CiAgICAgICAgY29uc3QgeyBuYW1lLCBmcm9tLCB0byB9ID0gdGhpczsKICAgICAgICByZXR1cm4gYGZvcigke3ZhcktpbmR9ICR7bmFtZX09JHtmcm9tfTsgJHtuYW1lfTwke3RvfTsgJHtuYW1lfSsrKWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gYWRkRXhwck5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLmZyb20pOwogICAgICAgIHJldHVybiBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMudG8pOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvckl0ZXIgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGxvb3AsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxvb3AgPSBsb29wOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLml0ZXJhYmxlID0gaXRlcmFibGU7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMudmFyS2luZH0gJHt0aGlzLm5hbWV9ICR7dGhpcy5sb29wfSAke3RoaXMuaXRlcmFibGV9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuaXRlcmFibGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5pdGVyYWJsZSwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYWJsZS5uYW1lcyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRnVuYyA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgYXJncywgYXN5bmMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5hcmdzID0gYXJnczsKICAgICAgICB0aGlzLmFzeW5jID0gYXN5bmM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBjb25zdCBfYXN5bmMgPSB0aGlzLmFzeW5jID8gImFzeW5jICIgOiAiIjsKICAgICAgICByZXR1cm4gYCR7X2FzeW5jfWZ1bmN0aW9uICR7dGhpcy5uYW1lfSgke3RoaXMuYXJnc30pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIEZ1bmMua2luZCA9ICJmdW5jIjsKICAgIHZhciBSZXR1cm4gPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAicmV0dXJuICIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBSZXR1cm4ua2luZCA9ICJyZXR1cm4iOwogICAgdmFyIFRyeSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9ICJ0cnkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmNhdGNoKQogICAgICAgICAgY29kZSArPSB0aGlzLmNhdGNoLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5maW5hbGx5KQogICAgICAgICAgY29kZSArPSB0aGlzLmZpbmFsbHkucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgKF9hID0gdGhpcy5jYXRjaCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAoX2IgPSB0aGlzLmZpbmFsbHkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYSA9IHRoaXMuY2F0Y2gpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYiA9IHRoaXMuZmluYWxseSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgaWYgKHRoaXMuY2F0Y2gpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5jYXRjaC5uYW1lcyk7CiAgICAgICAgaWYgKHRoaXMuZmluYWxseSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmZpbmFsbHkubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBDYXRjaCA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IoZXJyb3IpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgY2F0Y2goJHt0aGlzLmVycm9yfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgQ2F0Y2gua2luZCA9ICJjYXRjaCI7CiAgICB2YXIgRmluYWxseSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gImZpbmFsbHkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgRmluYWxseS5raW5kID0gImZpbmFsbHkiOwogICAgdmFyIENvZGVHZW4gPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGV4dFNjb3BlLCBvcHRzID0ge30pIHsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9ibG9ja1N0YXJ0cyA9IFtdOwogICAgICAgIHRoaXMuX2NvbnN0YW50cyA9IHt9OwogICAgICAgIHRoaXMub3B0cyA9IHsgLi4ub3B0cywgX246IG9wdHMubGluZXMgPyAiXG4iIDogIiIgfTsKICAgICAgICB0aGlzLl9leHRTY29wZSA9IGV4dFNjb3BlOwogICAgICAgIHRoaXMuX3Njb3BlID0gbmV3IHNjb3BlXzEuU2NvcGUoeyBwYXJlbnQ6IGV4dFNjb3BlIH0pOwogICAgICAgIHRoaXMuX25vZGVzID0gW25ldyBSb290KCldOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnJlbmRlcih0aGlzLm9wdHMpOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgdW5pcXVlIG5hbWUgaW4gdGhlIGludGVybmFsIHNjb3BlCiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Njb3BlLm5hbWUocHJlZml4KTsKICAgICAgfQogICAgICAvLyByZXNlcnZlcyB1bmlxdWUgbmFtZSBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUKICAgICAgc2NvcGVOYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5uYW1lKHByZWZpeCk7CiAgICAgIH0KICAgICAgLy8gcmVzZXJ2ZXMgdW5pcXVlIG5hbWUgaW4gdGhlIGV4dGVybmFsIHNjb3BlIGFuZCBhc3NpZ25zIHZhbHVlIHRvIGl0CiAgICAgIHNjb3BlVmFsdWUocHJlZml4T3JOYW1lLCB2YWx1ZSkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9leHRTY29wZS52YWx1ZShwcmVmaXhPck5hbWUsIHZhbHVlKTsKICAgICAgICBjb25zdCB2cyA9IHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gfHwgKHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKTsKICAgICAgICB2cy5hZGQobmFtZSk7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgIH0KICAgICAgZ2V0U2NvcGVWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLmdldFZhbHVlKHByZWZpeCwga2V5T3JSZWYpOwogICAgICB9CiAgICAgIC8vIHJldHVybiBjb2RlIHRoYXQgYXNzaWducyB2YWx1ZXMgaW4gdGhlIGV4dGVybmFsIHNjb3BlIHRvIHRoZSBuYW1lcyB0aGF0IGFyZSB1c2VkIGludGVybmFsbHkKICAgICAgLy8gKHNhbWUgbmFtZXMgdGhhdCB3ZXJlIHJldHVybmVkIGJ5IGdlbi5zY29wZU5hbWUgb3IgZ2VuLnNjb3BlVmFsdWUpCiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuc2NvcGVSZWZzKHNjb3BlTmFtZSwgdGhpcy5fdmFsdWVzKTsKICAgICAgfQogICAgICBzY29wZUNvZGUoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLnNjb3BlQ29kZSh0aGlzLl92YWx1ZXMpOwogICAgICB9CiAgICAgIF9kZWYodmFyS2luZCwgbmFtZU9yUHJlZml4LCByaHMsIGNvbnN0YW50KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGlmIChyaHMgIT09IHZvaWQgMCAmJiBjb25zdGFudCkKICAgICAgICAgIHRoaXMuX2NvbnN0YW50c1tuYW1lLnN0cl0gPSByaHM7CiAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IERlZih2YXJLaW5kLCBuYW1lLCByaHMpKTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICAvLyBgY29uc3RgIGRlY2xhcmF0aW9uIChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgY29uc3QobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy5jb25zdCwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYGxldGAgZGVjbGFyYXRpb24gd2l0aCBvcHRpb25hbCBhc3NpZ25tZW50IChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgbGV0KG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMubGV0LCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBgdmFyYCBkZWNsYXJhdGlvbiB3aXRoIG9wdGlvbmFsIGFzc2lnbm1lbnQKICAgICAgdmFyKG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMudmFyLCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBhc3NpZ25tZW50IGNvZGUKICAgICAgYXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykpOwogICAgICB9CiAgICAgIC8vIGArPWAgY29kZQogICAgICBhZGQobGhzLCByaHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEFzc2lnbk9wKGxocywgZXhwb3J0czIub3BlcmF0b3JzLkFERCwgcmhzKSk7CiAgICAgIH0KICAgICAgLy8gYXBwZW5kcyBwYXNzZWQgU2FmZUV4cHIgdG8gY29kZSBvciBleGVjdXRlcyBCbG9jawogICAgICBjb2RlKGMpIHsKICAgICAgICBpZiAodHlwZW9mIGMgPT0gImZ1bmN0aW9uIikKICAgICAgICAgIGMoKTsKICAgICAgICBlbHNlIGlmIChjICE9PSBjb2RlXzEubmlsKQogICAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IEFueUNvZGUoYykpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgY29kZSBmb3Igb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSBwYXNzZWQgYXJndW1lbnQgbGlzdCBvZiBrZXktdmFsdWUgcGFpcnMKICAgICAgb2JqZWN0KC4uLmtleVZhbHVlcykgewogICAgICAgIGNvbnN0IGNvZGUgPSBbInsiXTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBrZXlWYWx1ZXMpIHsKICAgICAgICAgIGlmIChjb2RlLmxlbmd0aCA+IDEpCiAgICAgICAgICAgIGNvZGUucHVzaCgiLCIpOwogICAgICAgICAgY29kZS5wdXNoKGtleSk7CiAgICAgICAgICBpZiAoa2V5ICE9PSB2YWx1ZSB8fCB0aGlzLm9wdHMuZXM1KSB7CiAgICAgICAgICAgIGNvZGUucHVzaCgiOiIpOwogICAgICAgICAgICAoMCwgY29kZV8xLmFkZENvZGVBcmcpKGNvZGUsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29kZS5wdXNoKCJ9Iik7CiAgICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuX0NvZGUoY29kZSk7CiAgICAgIH0KICAgICAgLy8gYGlmYCBjbGF1c2UgKG9yIHN0YXRlbWVudCBpZiBgdGhlbkJvZHlgIGFuZCwgb3B0aW9uYWxseSwgYGVsc2VCb2R5YCBhcmUgcGFzc2VkKQogICAgICBpZihjb25kaXRpb24sIHRoZW5Cb2R5LCBlbHNlQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShuZXcgSWYoY29uZGl0aW9uKSk7CiAgICAgICAgaWYgKHRoZW5Cb2R5ICYmIGVsc2VCb2R5KSB7CiAgICAgICAgICB0aGlzLmNvZGUodGhlbkJvZHkpLmVsc2UoKS5jb2RlKGVsc2VCb2R5KS5lbmRJZigpOwogICAgICAgIH0gZWxzZSBpZiAodGhlbkJvZHkpIHsKICAgICAgICAgIHRoaXMuY29kZSh0aGVuQm9keSkuZW5kSWYoKTsKICAgICAgICB9IGVsc2UgaWYgKGVsc2VCb2R5KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJlbHNlIiBib2R5IHdpdGhvdXQgInRoZW4iIGJvZHknKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYGVsc2UgaWZgIGNsYXVzZSAtIGludmFsaWQgd2l0aG91dCBgaWZgIG9yIGFmdGVyIGBlbHNlYCBjbGF1c2VzCiAgICAgIGVsc2VJZihjb25kaXRpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IElmKGNvbmRpdGlvbikpOwogICAgICB9CiAgICAgIC8vIGBlbHNlYCBjbGF1c2UgLSBvbmx5IHZhbGlkIGFmdGVyIGBpZmAgb3IgYGVsc2UgaWZgIGNsYXVzZXMKICAgICAgZWxzZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IEVsc2UoKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBpZmAgc3RhdGVtZW50IChuZWVkZWQgaWYgZ2VuLmlmIHdhcyB1c2VkIG9ubHkgd2l0aCBjb25kaXRpb24pCiAgICAgIGVuZElmKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoSWYsIEVsc2UpOwogICAgICB9CiAgICAgIF9mb3Iobm9kZSwgZm9yQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICBpZiAoZm9yQm9keSkKICAgICAgICAgIHRoaXMuY29kZShmb3JCb2R5KS5lbmRGb3IoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBhIGdlbmVyaWMgYGZvcmAgY2xhdXNlIChvciBzdGF0ZW1lbnQgaWYgYGZvckJvZHlgIGlzIHBhc3NlZCkKICAgICAgZm9yKGl0ZXJhdGlvbiwgZm9yQm9keSkgewogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckxvb3AoaXRlcmF0aW9uKSwgZm9yQm9keSk7CiAgICAgIH0KICAgICAgLy8gYGZvcmAgc3RhdGVtZW50IGZvciBhIHJhbmdlIG9mIHZhbHVlcwogICAgICBmb3JSYW5nZShuYW1lT3JQcmVmaXgsIGZyb20sIHRvLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5sZXQpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9yUmFuZ2UodmFyS2luZCwgbmFtZSwgZnJvbSwgdG8pLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBgZm9yLW9mYCBzdGF0ZW1lbnQgKGluIGVzNSBtb2RlIHJlcGxhY2Ugd2l0aCBhIG5vcm1hbCBmb3IgbG9vcCkKICAgICAgZm9yT2YobmFtZU9yUHJlZml4LCBpdGVyYWJsZSwgZm9yQm9keSwgdmFyS2luZCA9IHNjb3BlXzEudmFyS2luZHMuY29uc3QpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgaWYgKHRoaXMub3B0cy5lczUpIHsKICAgICAgICAgIGNvbnN0IGFyciA9IGl0ZXJhYmxlIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBpdGVyYWJsZSA6IHRoaXMudmFyKCJfYXJyIiwgaXRlcmFibGUpOwogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yUmFuZ2UoIl9pIiwgMCwgKDAsIGNvZGVfMS5fKWAke2Fycn0ubGVuZ3RoYCwgKGkpID0+IHsKICAgICAgICAgICAgdGhpcy52YXIobmFtZSwgKDAsIGNvZGVfMS5fKWAke2Fycn1bJHtpfV1gKTsKICAgICAgICAgICAgZm9yQm9keShuYW1lKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JJdGVyKCJvZiIsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gYGZvci1pbmAgc3RhdGVtZW50LgogICAgICAvLyBXaXRoIG9wdGlvbiBgb3duUHJvcGVydGllc2AgcmVwbGFjZWQgd2l0aCBhIGBmb3Itb2ZgIGxvb3AgZm9yIG9iamVjdCBrZXlzCiAgICAgIGZvckluKG5hbWVPclByZWZpeCwgb2JqLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5jb25zdCkgewogICAgICAgIGlmICh0aGlzLm9wdHMub3duUHJvcGVydGllcykgewogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yT2YobmFtZU9yUHJlZml4LCAoMCwgY29kZV8xLl8pYE9iamVjdC5rZXlzKCR7b2JqfSlgLCBmb3JCb2R5KTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckl0ZXIoImluIiwgdmFyS2luZCwgbmFtZSwgb2JqKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBmb3JgIGxvb3AKICAgICAgZW5kRm9yKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRm9yKTsKICAgICAgfQogICAgICAvLyBgbGFiZWxgIHN0YXRlbWVudAogICAgICBsYWJlbChsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgTGFiZWwobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgYnJlYWtgIHN0YXRlbWVudAogICAgICBicmVhayhsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQnJlYWsobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgcmV0dXJuYCBzdGF0ZW1lbnQKICAgICAgcmV0dXJuKHZhbHVlKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBSZXR1cm4oKTsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgdGhpcy5jb2RlKHZhbHVlKTsKICAgICAgICBpZiAobm9kZS5ub2Rlcy5sZW5ndGggIT09IDEpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJyZXR1cm4iIHNob3VsZCBoYXZlIG9uZSBub2RlJyk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShSZXR1cm4pOwogICAgICB9CiAgICAgIC8vIGB0cnlgIHN0YXRlbWVudAogICAgICB0cnkodHJ5Qm9keSwgY2F0Y2hDb2RlLCBmaW5hbGx5Q29kZSkgewogICAgICAgIGlmICghY2F0Y2hDb2RlICYmICFmaW5hbGx5Q29kZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogInRyeSIgd2l0aG91dCAiY2F0Y2giIGFuZCAiZmluYWxseSInKTsKICAgICAgICBjb25zdCBub2RlID0gbmV3IFRyeSgpOwogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICB0aGlzLmNvZGUodHJ5Qm9keSk7CiAgICAgICAgaWYgKGNhdGNoQ29kZSkgewogICAgICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLm5hbWUoImUiKTsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5jYXRjaCA9IG5ldyBDYXRjaChlcnJvcik7CiAgICAgICAgICBjYXRjaENvZGUoZXJyb3IpOwogICAgICAgIH0KICAgICAgICBpZiAoZmluYWxseUNvZGUpIHsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5maW5hbGx5ID0gbmV3IEZpbmFsbHkoKTsKICAgICAgICAgIHRoaXMuY29kZShmaW5hbGx5Q29kZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoQ2F0Y2gsIEZpbmFsbHkpOwogICAgICB9CiAgICAgIC8vIGB0aHJvd2Agc3RhdGVtZW50CiAgICAgIHRocm93KGVycm9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBUaHJvdyhlcnJvcikpOwogICAgICB9CiAgICAgIC8vIHN0YXJ0IHNlbGYtYmFsYW5jaW5nIGJsb2NrCiAgICAgIGJsb2NrKGJvZHksIG5vZGVDb3VudCkgewogICAgICAgIHRoaXMuX2Jsb2NrU3RhcnRzLnB1c2godGhpcy5fbm9kZXMubGVuZ3RoKTsKICAgICAgICBpZiAoYm9keSkKICAgICAgICAgIHRoaXMuY29kZShib2R5KS5lbmRCbG9jayhub2RlQ291bnQpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGVuZCB0aGUgY3VycmVudCBzZWxmLWJhbGFuY2luZyBibG9jawogICAgICBlbmRCbG9jayhub2RlQ291bnQpIHsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLl9ibG9ja1N0YXJ0cy5wb3AoKTsKICAgICAgICBpZiAobGVuID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5vdCBpbiBzZWxmLWJhbGFuY2luZyBibG9jayIpOwogICAgICAgIGNvbnN0IHRvQ2xvc2UgPSB0aGlzLl9ub2Rlcy5sZW5ndGggLSBsZW47CiAgICAgICAgaWYgKHRvQ2xvc2UgPCAwIHx8IG5vZGVDb3VudCAhPT0gdm9pZCAwICYmIHRvQ2xvc2UgIT09IG5vZGVDb3VudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiB3cm9uZyBudW1iZXIgb2Ygbm9kZXM6ICR7dG9DbG9zZX0gdnMgJHtub2RlQ291bnR9IGV4cGVjdGVkYCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX25vZGVzLmxlbmd0aCA9IGxlbjsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBgZnVuY3Rpb25gIGhlYWRpbmcgKG9yIGRlZmluaXRpb24gaWYgZnVuY0JvZHkgaXMgcGFzc2VkKQogICAgICBmdW5jKG5hbWUsIGFyZ3MgPSBjb2RlXzEubmlsLCBhc3luYywgZnVuY0JvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobmV3IEZ1bmMobmFtZSwgYXJncywgYXN5bmMpKTsKICAgICAgICBpZiAoZnVuY0JvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoZnVuY0JvZHkpLmVuZEZ1bmMoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBlbmQgZnVuY3Rpb24gZGVmaW5pdGlvbgogICAgICBlbmRGdW5jKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRnVuYyk7CiAgICAgIH0KICAgICAgb3B0aW1pemUobiA9IDEpIHsKICAgICAgICB3aGlsZSAobi0tID4gMCkgewogICAgICAgICAgdGhpcy5fcm9vdC5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICB0aGlzLl9yb290Lm9wdGltaXplTmFtZXModGhpcy5fcm9vdC5uYW1lcywgdGhpcy5fY29uc3RhbnRzKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2xlYWZOb2RlKG5vZGUpIHsKICAgICAgICB0aGlzLl9jdXJyTm9kZS5ub2Rlcy5wdXNoKG5vZGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF9ibG9ja05vZGUobm9kZSkgewogICAgICAgIHRoaXMuX2N1cnJOb2RlLm5vZGVzLnB1c2gobm9kZSk7CiAgICAgICAgdGhpcy5fbm9kZXMucHVzaChub2RlKTsKICAgICAgfQogICAgICBfZW5kQmxvY2tOb2RlKE4xLCBOMikgewogICAgICAgIGNvbnN0IG4gPSB0aGlzLl9jdXJyTm9kZTsKICAgICAgICBpZiAobiBpbnN0YW5jZW9mIE4xIHx8IE4yICYmIG4gaW5zdGFuY2VvZiBOMikgewogICAgICAgICAgdGhpcy5fbm9kZXMucG9wKCk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBub3QgaW4gYmxvY2sgIiR7TjIgPyBgJHtOMS5raW5kfS8ke04yLmtpbmR9YCA6IE4xLmtpbmR9ImApOwogICAgICB9CiAgICAgIF9lbHNlTm9kZShub2RlKSB7CiAgICAgICAgY29uc3QgbiA9IHRoaXMuX2N1cnJOb2RlOwogICAgICAgIGlmICghKG4gaW5zdGFuY2VvZiBJZikpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogImVsc2UiIHdpdGhvdXQgImlmIicpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG4uZWxzZSA9IG5vZGU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IF9yb290KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ub2Rlc1swXTsKICAgICAgfQogICAgICBnZXQgX2N1cnJOb2RlKCkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgcmV0dXJuIG5zW25zLmxlbmd0aCAtIDFdOwogICAgICB9CiAgICAgIHNldCBfY3Vyck5vZGUobm9kZSkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgbnNbbnMubGVuZ3RoIC0gMV0gPSBub2RlOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29kZUdlbiA9IENvZGVHZW47CiAgICBmdW5jdGlvbiBhZGROYW1lcyhuYW1lcywgZnJvbSkgewogICAgICBmb3IgKGNvbnN0IG4gaW4gZnJvbSkKICAgICAgICBuYW1lc1tuXSA9IChuYW1lc1tuXSB8fCAwKSArIChmcm9tW25dIHx8IDApOwogICAgICByZXR1cm4gbmFtZXM7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFeHByTmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgcmV0dXJuIGZyb20gaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyBhZGROYW1lcyhuYW1lcywgZnJvbS5uYW1lcykgOiBuYW1lczsKICAgIH0KICAgIGZ1bmN0aW9uIG9wdGltaXplRXhwcihleHByLCBuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgIGlmIChleHByIGluc3RhbmNlb2YgY29kZV8xLk5hbWUpCiAgICAgICAgcmV0dXJuIHJlcGxhY2VOYW1lKGV4cHIpOwogICAgICBpZiAoIWNhbk9wdGltaXplKGV4cHIpKQogICAgICAgIHJldHVybiBleHByOwogICAgICByZXR1cm4gbmV3IGNvZGVfMS5fQ29kZShleHByLl9pdGVtcy5yZWR1Y2UoKGl0ZW1zLCBjKSA9PiB7CiAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSkKICAgICAgICAgIGMgPSByZXBsYWNlTmFtZShjKTsKICAgICAgICBpZiAoYyBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSkKICAgICAgICAgIGl0ZW1zLnB1c2goLi4uYy5faXRlbXMpOwogICAgICAgIGVsc2UKICAgICAgICAgIGl0ZW1zLnB1c2goYyk7CiAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICB9LCBbXSkpOwogICAgICBmdW5jdGlvbiByZXBsYWNlTmFtZShuKSB7CiAgICAgICAgY29uc3QgYyA9IGNvbnN0YW50c1tuLnN0cl07CiAgICAgICAgaWYgKGMgPT09IHZvaWQgMCB8fCBuYW1lc1tuLnN0cl0gIT09IDEpCiAgICAgICAgICByZXR1cm4gbjsKICAgICAgICBkZWxldGUgbmFtZXNbbi5zdHJdOwogICAgICAgIHJldHVybiBjOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbk9wdGltaXplKGUpIHsKICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSAmJiBlLl9pdGVtcy5zb21lKChjKSA9PiBjIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgJiYgbmFtZXNbYy5zdHJdID09PSAxICYmIGNvbnN0YW50c1tjLnN0cl0gIT09IHZvaWQgMCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN1YnRyYWN0TmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgZm9yIChjb25zdCBuIGluIGZyb20pCiAgICAgICAgbmFtZXNbbl0gPSAobmFtZXNbbl0gfHwgMCkgLSAoZnJvbVtuXSB8fCAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIG5vdCh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgdHlwZW9mIHggPT0gIm51bWJlciIgfHwgeCA9PT0gbnVsbCA/ICF4IDogKDAsIGNvZGVfMS5fKWAhJHtwYXIoeCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLm5vdCA9IG5vdDsKICAgIHZhciBhbmRDb2RlID0gbWFwcGVuZChleHBvcnRzMi5vcGVyYXRvcnMuQU5EKTsKICAgIGZ1bmN0aW9uIGFuZCguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShhbmRDb2RlKTsKICAgIH0KICAgIGV4cG9ydHMyLmFuZCA9IGFuZDsKICAgIHZhciBvckNvZGUgPSBtYXBwZW5kKGV4cG9ydHMyLm9wZXJhdG9ycy5PUik7CiAgICBmdW5jdGlvbiBvciguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShvckNvZGUpOwogICAgfQogICAgZXhwb3J0czIub3IgPSBvcjsKICAgIGZ1bmN0aW9uIG1hcHBlbmQob3ApIHsKICAgICAgcmV0dXJuICh4LCB5KSA9PiB4ID09PSBjb2RlXzEubmlsID8geSA6IHkgPT09IGNvZGVfMS5uaWwgPyB4IDogKDAsIGNvZGVfMS5fKWAke3Bhcih4KX0gJHtvcH0gJHtwYXIoeSl9YDsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcih4KSB7CiAgICAgIHJldHVybiB4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyB4IDogKDAsIGNvZGVfMS5fKWAoJHt4fSlgOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdXRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZXhwb3J0czIuVHlwZSA9IGV4cG9ydHMyLnVzZUZ1bmMgPSBleHBvcnRzMi5zZXRFdmFsdWF0ZWQgPSBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gZXhwb3J0czIuZWFjaEl0ZW0gPSBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSBleHBvcnRzMi5zY2hlbWFSZWZPclZhbCA9IGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzQnV0UmVmID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXMgPSBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gZXhwb3J0czIudG9IYXNoID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgZnVuY3Rpb24gdG9IYXNoKGFycikgewogICAgICBjb25zdCBoYXNoID0ge307CiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnIpCiAgICAgICAgaGFzaFtpdGVtXSA9IHRydWU7CiAgICAgIHJldHVybiBoYXNoOwogICAgfQogICAgZXhwb3J0czIudG9IYXNoID0gdG9IYXNoOwogICAgZnVuY3Rpb24gYWx3YXlzVmFsaWRTY2hlbWEoaXQsIHNjaGVtYTIpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hMjsKICAgICAgaWYgKE9iamVjdC5rZXlzKHNjaGVtYTIpLmxlbmd0aCA9PT0gMCkKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgY2hlY2tVbmtub3duUnVsZXMoaXQsIHNjaGVtYTIpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIGl0LnNlbGYuUlVMRVMuYWxsKTsKICAgIH0KICAgIGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gYWx3YXlzVmFsaWRTY2hlbWE7CiAgICBmdW5jdGlvbiBjaGVja1Vua25vd25SdWxlcyhpdCwgc2NoZW1hMiA9IGl0LnNjaGVtYSkgewogICAgICBjb25zdCB7IG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgaWYgKCFvcHRzLnN0cmljdFNjaGVtYSkKICAgICAgICByZXR1cm47CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmICghcnVsZXNba2V5XSkKICAgICAgICAgIGNoZWNrU3RyaWN0TW9kZShpdCwgYHVua25vd24ga2V5d29yZDogIiR7a2V5fSJgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tVbmtub3duUnVsZXMgPSBjaGVja1Vua25vd25SdWxlczsKICAgIGZ1bmN0aW9uIHNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIHJ1bGVzKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWEyOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKQogICAgICAgIGlmIChydWxlc1trZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzID0gc2NoZW1hSGFzUnVsZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFIYXNSdWxlc0J1dFJlZihzY2hlbWEyLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiAhc2NoZW1hMjsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYTIsIGtleXdvcmQsICRkYXRhKSB7CiAgICAgIGlmICghJGRhdGEpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gIm51bWJlciIgfHwgdHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciKQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWEyfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cjIpIHsKICAgICAgcmV0dXJuIHVuZXNjYXBlSnNvblBvaW50ZXIoZGVjb2RlVVJJQ29tcG9uZW50KHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSB1bmVzY2FwZUZyYWdtZW50OwogICAgZnVuY3Rpb24gZXNjYXBlRnJhZ21lbnQoc3RyMikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXNjYXBlRnJhZ21lbnQ7CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUG9pbnRlcihzdHIyKSB7CiAgICAgIGlmICh0eXBlb2Ygc3RyMiA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyMn1gOwogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBlc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIHVuZXNjYXBlSnNvblBvaW50ZXIoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+Iik7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gdW5lc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIGVhY2hJdGVtKHhzLCBmKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHhzKSkgewogICAgICAgIGZvciAoY29uc3QgeCBvZiB4cykKICAgICAgICAgIGYoeCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZih4cyk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVhY2hJdGVtID0gZWFjaEl0ZW07CiAgICBmdW5jdGlvbiBtYWtlTWVyZ2VFdmFsdWF0ZWQoeyBtZXJnZU5hbWVzLCBtZXJnZVRvTmFtZSwgbWVyZ2VWYWx1ZXMsIHJlc3VsdFRvTmFtZSB9KSB7CiAgICAgIHJldHVybiAoZ2VuLCBmcm9tLCB0bywgdG9OYW1lKSA9PiB7CiAgICAgICAgY29uc3QgcmVzID0gdG8gPT09IHZvaWQgMCA/IGZyb20gOiB0byBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKGZyb20gaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IG1lcmdlTmFtZXMoZ2VuLCBmcm9tLCB0bykgOiBtZXJnZVRvTmFtZShnZW4sIGZyb20sIHRvKSwgdG8pIDogZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKG1lcmdlVG9OYW1lKGdlbiwgdG8sIGZyb20pLCBmcm9tKSA6IG1lcmdlVmFsdWVzKGZyb20sIHRvKTsKICAgICAgICByZXR1cm4gdG9OYW1lID09PSBjb2RlZ2VuXzEuTmFtZSAmJiAhKHJlcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSA/IHJlc3VsdFRvTmFtZShnZW4sIHJlcykgOiByZXM7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUV2YWx1YXRlZCA9IHsKICAgICAgcHJvcHM6IG1ha2VNZXJnZUV2YWx1YXRlZCh7CiAgICAgICAgbWVyZ2VOYW1lczogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlICYmICR7ZnJvbX0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCB0cnVlKSwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke3RvfSB8fCB7fWApLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QuYXNzaWduKCR7dG99LCAke2Zyb219KWApKTsKICAgICAgICB9KSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gewogICAgICAgICAgaWYgKGZyb20gPT09IHRydWUpIHsKICAgICAgICAgICAgZ2VuLmFzc2lnbih0bywgdHJ1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCk7CiAgICAgICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHRvLCBmcm9tKTsKICAgICAgICAgIH0KICAgICAgICB9KSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IHsgLi4uZnJvbSwgLi4udG8gfSwKICAgICAgICByZXN1bHRUb05hbWU6IGV2YWx1YXRlZFByb3BzVG9OYW1lCiAgICAgIH0pLAogICAgICBpdGVtczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke2Zyb219ID09PSB0cnVlID8gdHJ1ZSA6ICR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgZnJvbSA9PT0gdHJ1ZSA/IHRydWUgOiAoMCwgY29kZWdlbl8xLl8pYCR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IE1hdGgubWF4KGZyb20sIHRvKSwKICAgICAgICByZXN1bHRUb05hbWU6IChnZW4sIGl0ZW1zKSA9PiBnZW4udmFyKCJpdGVtcyIsIGl0ZW1zKQogICAgICB9KQogICAgfTsKICAgIGZ1bmN0aW9uIGV2YWx1YXRlZFByb3BzVG9OYW1lKGdlbiwgcHMpIHsKICAgICAgaWYgKHBzID09PSB0cnVlKQogICAgICAgIHJldHVybiBnZW4udmFyKCJwcm9wcyIsIHRydWUpOwogICAgICBjb25zdCBwcm9wcyA9IGdlbi52YXIoInByb3BzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICBpZiAocHMgIT09IHZvaWQgMCkKICAgICAgICBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpOwogICAgICByZXR1cm4gcHJvcHM7CiAgICB9CiAgICBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV2YWx1YXRlZFByb3BzVG9OYW1lOwogICAgZnVuY3Rpb24gc2V0RXZhbHVhdGVkKGdlbiwgcHJvcHMsIHBzKSB7CiAgICAgIE9iamVjdC5rZXlzKHBzKS5mb3JFYWNoKChwKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wc30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHApfWAsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IHNldEV2YWx1YXRlZDsKICAgIHZhciBzbmlwcGV0cyA9IHt9OwogICAgZnVuY3Rpb24gdXNlRnVuYyhnZW4sIGYpIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIHJlZjogZiwKICAgICAgICBjb2RlOiBzbmlwcGV0c1tmLmNvZGVdIHx8IChzbmlwcGV0c1tmLmNvZGVdID0gbmV3IGNvZGVfMS5fQ29kZShmLmNvZGUpKQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzZUZ1bmMgPSB1c2VGdW5jOwogICAgdmFyIFR5cGU7CiAgICAoZnVuY3Rpb24oVHlwZTIpIHsKICAgICAgVHlwZTJbVHlwZTJbIk51bSJdID0gMF0gPSAiTnVtIjsKICAgICAgVHlwZTJbVHlwZTJbIlN0ciJdID0gMV0gPSAiU3RyIjsKICAgIH0pKFR5cGUgfHwgKGV4cG9ydHMyLlR5cGUgPSBUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldEVycm9yUGF0aChkYXRhUHJvcCwgZGF0YVByb3BUeXBlLCBqc1Byb3BlcnR5U3ludGF4KSB7CiAgICAgIGlmIChkYXRhUHJvcCBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSB7CiAgICAgICAgY29uc3QgaXNOdW1iZXIgPSBkYXRhUHJvcFR5cGUgPT09IFR5cGUuTnVtOwogICAgICAgIHJldHVybiBqc1Byb3BlcnR5U3ludGF4ID8gaXNOdW1iZXIgPyAoMCwgY29kZWdlbl8xLl8pYCJbIiArICR7ZGF0YVByb3B9ICsgIl0iYCA6ICgwLCBjb2RlZ2VuXzEuXylgIlsnIiArICR7ZGF0YVByb3B9ICsgIiddImAgOiBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIi8iICsgJHtkYXRhUHJvcH1gIDogKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfS5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1xcLy9nLCAifjEiKWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyAoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCkudG9TdHJpbmcoKSA6ICIvIiArIGVzY2FwZUpzb25Qb2ludGVyKGRhdGFQcm9wKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVycm9yUGF0aCA9IGdldEVycm9yUGF0aDsKICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0TW9kZShpdCwgbXNnLCBtb2RlID0gaXQub3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgaWYgKCFtb2RlKQogICAgICAgIHJldHVybjsKICAgICAgbXNnID0gYHN0cmljdCBtb2RlOiAke21zZ31gOwogICAgICBpZiAobW9kZSA9PT0gdHJ1ZSkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTsKICAgICAgaXQuc2VsZi5sb2dnZXIud2Fybihtc2cpOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gY2hlY2tTdHJpY3RNb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcwp2YXIgcmVxdWlyZV9uYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzID0gewogICAgICAvLyB2YWxpZGF0aW9uIGZ1bmN0aW9uIGFyZ3VtZW50cwogICAgICBkYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoImRhdGEiKSwKICAgICAgLy8gZGF0YSBwYXNzZWQgdG8gdmFsaWRhdGlvbiBmdW5jdGlvbgogICAgICAvLyBhcmdzIHBhc3NlZCBmcm9tIHJlZmVyZW5jaW5nIHNjaGVtYQogICAgICB2YWxDeHQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidmFsQ3h0IiksCiAgICAgIC8vIHZhbGlkYXRpb24vZGF0YSBjb250ZXh0IC0gc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LCBpdCBpcyBkZXN0cnVjdHVyZWQgdG8gdGhlIG5hbWVzIGJlbG93CiAgICAgIGluc3RhbmNlUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJpbnN0YW5jZVBhdGgiKSwKICAgICAgcGFyZW50RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhIiksCiAgICAgIHBhcmVudERhdGFQcm9wZXJ0eTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhUHJvcGVydHkiKSwKICAgICAgcm9vdERhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicm9vdERhdGEiKSwKICAgICAgLy8gcm9vdCBkYXRhIC0gc2FtZSBhcyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGZpcnN0L3RvcCB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIGR5bmFtaWNBbmNob3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoImR5bmFtaWNBbmNob3JzIiksCiAgICAgIC8vIHVzZWQgdG8gc3VwcG9ydCByZWN1cnNpdmVSZWYgYW5kIGR5bmFtaWNSZWYKICAgICAgLy8gZnVuY3Rpb24gc2NvcGVkIHZhcmlhYmxlcwogICAgICB2RXJyb3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoInZFcnJvcnMiKSwKICAgICAgLy8gbnVsbCBvciBhcnJheSBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICBlcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZXJyb3JzIiksCiAgICAgIC8vIGNvdW50ZXIgb2YgdmFsaWRhdGlvbiBlcnJvcnMKICAgICAgdGhpczogbmV3IGNvZGVnZW5fMS5OYW1lKCJ0aGlzIiksCiAgICAgIC8vICJnbG9iYWxzIgogICAgICBzZWxmOiBuZXcgY29kZWdlbl8xLk5hbWUoInNlbGYiKSwKICAgICAgc2NvcGU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NvcGUiKSwKICAgICAgLy8gSlREIHNlcmlhbGl6ZS9wYXJzZSBuYW1lIGZvciBKU09OIHN0cmluZyBhbmQgcG9zaXRpb24KICAgICAganNvbjogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uIiksCiAgICAgIGpzb25Qb3M6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBvcyIpLAogICAgICBqc29uTGVuOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb25MZW4iKSwKICAgICAganNvblBhcnQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBhcnQiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBuYW1lczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvZXJyb3JzLmpzCnZhciByZXF1aXJlX2Vycm9ycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4cG9ydHMyLnJlc2V0RXJyb3JzQ291bnQgPSBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gZXhwb3J0czIucmVwb3J0RXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgZXhwb3J0czIua2V5d29yZEVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IHBhc3MgIiR7a2V5d29yZH0iIGtleXdvcmQgdmFsaWRhdGlvbmAKICAgIH07CiAgICBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hVHlwZSB9KSA9PiBzY2hlbWFUeXBlID8gKDAsIGNvZGVnZW5fMS5zdHIpYCIke2tleXdvcmR9IiBrZXl3b3JkIG11c3QgYmUgJHtzY2hlbWFUeXBlfSAoJGRhdGEpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAiJHtrZXl3b3JkfSIga2V5d29yZCBpcyBpbnZhbGlkICgkZGF0YSlgCiAgICB9OwogICAgZnVuY3Rpb24gcmVwb3J0RXJyb3IoY3h0LCBlcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciwgZXJyb3JQYXRocywgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBpZiAob3ZlcnJpZGVBbGxFcnJvcnMgIT09IG51bGwgJiYgb3ZlcnJpZGVBbGxFcnJvcnMgIT09IHZvaWQgMCA/IG92ZXJyaWRlQWxsRXJyb3JzIDogY29tcG9zaXRlUnVsZSB8fCBhbGxFcnJvcnMpIHsKICAgICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuRXJyb3JzKGl0LCAoMCwgY29kZWdlbl8xLl8pYFske2Vyck9ian1dYCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydEVycm9yID0gcmVwb3J0RXJyb3I7CiAgICBmdW5jdGlvbiByZXBvcnRFeHRyYUVycm9yKGN4dCwgZXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IsIGVycm9yUGF0aHMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIGlmICghKGNvbXBvc2l0ZVJ1bGUgfHwgYWxsRXJyb3JzKSkgewogICAgICAgIHJldHVybkVycm9ycyhpdCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gcmVwb3J0RXh0cmFFcnJvcjsKICAgIGZ1bmN0aW9uIHJlc2V0RXJyb3JzQ291bnQoZ2VuLCBlcnJzQ291bnQpIHsKICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCBlcnJzQ291bnQpOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSAhPT0gbnVsbGAsICgpID0+IGdlbi5pZihlcnJzQ291bnQsICgpID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5sZW5ndGhgLCBlcnJzQ291bnQpLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCBudWxsKSkpOwogICAgfQogICAgZXhwb3J0czIucmVzZXRFcnJvcnNDb3VudCA9IHJlc2V0RXJyb3JzQ291bnQ7CiAgICBmdW5jdGlvbiBleHRlbmRFcnJvcnMoeyBnZW4sIGtleXdvcmQsIHNjaGVtYVZhbHVlLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0pIHsKICAgICAgaWYgKGVycnNDb3VudCA9PT0gdm9pZCAwKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5uYW1lKCJlcnIiKTsKICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgZXJyc0NvdW50LCBuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoaSkgPT4gewogICAgICAgIGdlbi5jb25zdChlcnIsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc31bJHtpfV1gKTsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uaW5zdGFuY2VQYXRoID09PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9Lmluc3RhbmNlUGF0aGAsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBpdC5lcnJvclBhdGgpKSk7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5zY2hlbWFQYXRoYCwgKDAsIGNvZGVnZW5fMS5zdHIpYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWApOwogICAgICAgIGlmIChpdC5vcHRzLnZlcmJvc2UpIHsKICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uc2NoZW1hYCwgc2NoZW1hVmFsdWUpOwogICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5kYXRhYCwgZGF0YSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4dGVuZEVycm9yczsKICAgIGZ1bmN0aW9uIGFkZEVycm9yKGdlbiwgZXJyT2JqKSB7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5jb25zdCgiZXJyIiwgZXJyT2JqKTsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGxgLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYFske2Vycn1dYCksICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ucHVzaCgke2Vycn0pYCk7CiAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSsrYCk7CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5FcnJvcnMoaXQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSwgc2NoZW1hRW52IH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4udGhyb3coKDAsIGNvZGVnZW5fMS5fKWBuZXcgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KCR7ZXJyc30pYCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBlcnJzKTsKICAgICAgICBnZW4ucmV0dXJuKGZhbHNlKTsKICAgICAgfQogICAgfQogICAgdmFyIEUgPSB7CiAgICAgIGtleXdvcmQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgia2V5d29yZCIpLAogICAgICBzY2hlbWFQYXRoOiBuZXcgY29kZWdlbl8xLk5hbWUoInNjaGVtYVBhdGgiKSwKICAgICAgLy8gYWxzbyB1c2VkIGluIEpURCBlcnJvcnMKICAgICAgcGFyYW1zOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmFtcyIpLAogICAgICBwcm9wZXJ0eU5hbWU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicHJvcGVydHlOYW1lIiksCiAgICAgIG1lc3NhZ2U6IG5ldyBjb2RlZ2VuXzEuTmFtZSgibWVzc2FnZSIpLAogICAgICBzY2hlbWE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NoZW1hIiksCiAgICAgIHBhcmVudFNjaGVtYTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnRTY2hlbWEiKQogICAgfTsKICAgIGZ1bmN0aW9uIGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKSB7CiAgICAgIGNvbnN0IHsgY3JlYXRlRXJyb3JzIH0gPSBjeHQuaXQ7CiAgICAgIGlmIChjcmVhdGVFcnJvcnMgPT09IGZhbHNlKQogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYHt9YDsKICAgICAgcmV0dXJuIGVycm9yT2JqZWN0KGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JPYmplY3QoY3h0LCBlcnJvciwgZXJyb3JQYXRocyA9IHt9KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBrZXlWYWx1ZXMgPSBbCiAgICAgICAgZXJyb3JJbnN0YW5jZVBhdGgoaXQsIGVycm9yUGF0aHMpLAogICAgICAgIGVycm9yU2NoZW1hUGF0aChjeHQsIGVycm9yUGF0aHMpCiAgICAgIF07CiAgICAgIGV4dHJhRXJyb3JQcm9wcyhjeHQsIGVycm9yLCBrZXlWYWx1ZXMpOwogICAgICByZXR1cm4gZ2VuLm9iamVjdCguLi5rZXlWYWx1ZXMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JJbnN0YW5jZVBhdGgoeyBlcnJvclBhdGggfSwgeyBpbnN0YW5jZVBhdGggfSkgewogICAgICBjb25zdCBpbnN0UGF0aCA9IGluc3RhbmNlUGF0aCA/ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShpbnN0YW5jZVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YCA6IGVycm9yUGF0aDsKICAgICAgcmV0dXJuIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgaW5zdFBhdGgpXTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9yU2NoZW1hUGF0aCh7IGtleXdvcmQsIGl0OiB7IGVyclNjaGVtYVBhdGggfSB9LCB7IHNjaGVtYVBhdGgsIHBhcmVudFNjaGVtYSB9KSB7CiAgICAgIGxldCBzY2hQYXRoID0gcGFyZW50U2NoZW1hID8gZXJyU2NoZW1hUGF0aCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2VyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gOwogICAgICBpZiAoc2NoZW1hUGF0aCkgewogICAgICAgIHNjaFBhdGggPSAoMCwgY29kZWdlbl8xLnN0cilgJHtzY2hQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKHNjaGVtYVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YDsKICAgICAgfQogICAgICByZXR1cm4gW0Uuc2NoZW1hUGF0aCwgc2NoUGF0aF07CiAgICB9CiAgICBmdW5jdGlvbiBleHRyYUVycm9yUHJvcHMoY3h0LCB7IHBhcmFtcywgbWVzc2FnZSB9LCBrZXlWYWx1ZXMpIHsKICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFWYWx1ZSwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBvcHRzLCBwcm9wZXJ0eU5hbWUsIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCB9ID0gaXQ7CiAgICAgIGtleVZhbHVlcy5wdXNoKFtFLmtleXdvcmQsIGtleXdvcmRdLCBbRS5wYXJhbXMsIHR5cGVvZiBwYXJhbXMgPT0gImZ1bmN0aW9uIiA/IHBhcmFtcyhjeHQpIDogcGFyYW1zIHx8ICgwLCBjb2RlZ2VuXzEuXylge31gXSk7CiAgICAgIGlmIChvcHRzLm1lc3NhZ2VzKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UubWVzc2FnZSwgdHlwZW9mIG1lc3NhZ2UgPT0gImZ1bmN0aW9uIiA/IG1lc3NhZ2UoY3h0KSA6IG1lc3NhZ2VdKTsKICAgICAgfQogICAgICBpZiAob3B0cy52ZXJib3NlKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0Uuc2NoZW1hLCBzY2hlbWFWYWx1ZV0sIFtFLnBhcmVudFNjaGVtYSwgKDAsIGNvZGVnZW5fMS5fKWAke3RvcFNjaGVtYVJlZn0ke3NjaGVtYVBhdGh9YF0sIFtuYW1lc18xLmRlZmF1bHQuZGF0YSwgZGF0YV0pOwogICAgICB9CiAgICAgIGlmIChwcm9wZXJ0eU5hbWUpCiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UucHJvcGVydHlOYW1lLCBwcm9wZXJ0eU5hbWVdKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcwp2YXIgcmVxdWlyZV9ib29sU2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2Jvb2xTY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gZXhwb3J0czIudG9wQm9vbE9yRW1wdHlTY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgYm9vbEVycm9yID0gewogICAgICBtZXNzYWdlOiAiYm9vbGVhbiBzY2hlbWEgaXMgZmFsc2UiCiAgICB9OwogICAgZnVuY3Rpb24gdG9wQm9vbE9yRW1wdHlTY2hlbWEoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgdmFsaWRhdGVOYW1lIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCwgZmFsc2UpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmIHNjaGVtYTIuJGFzeW5jID09PSB0cnVlKSB7CiAgICAgICAgZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBudWxsKTsKICAgICAgICBnZW4ucmV0dXJuKHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHRvcEJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gYm9vbE9yRW1wdHlTY2hlbWEoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICBnZW4udmFyKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gYm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBmYWxzZVNjaGVtYUVycm9yKGl0LCBvdmVycmlkZUFsbEVycm9ycykgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSB9ID0gaXQ7CiAgICAgIGNvbnN0IGN4dCA9IHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogImZhbHNlIHNjaGVtYSIsCiAgICAgICAgZGF0YSwKICAgICAgICBzY2hlbWE6IGZhbHNlLAogICAgICAgIHNjaGVtYUNvZGU6IGZhbHNlLAogICAgICAgIHNjaGVtYVZhbHVlOiBmYWxzZSwKICAgICAgICBwYXJhbXM6IHt9LAogICAgICAgIGl0CiAgICAgIH07CiAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikoY3h0LCBib29sRXJyb3IsIHZvaWQgMCwgb3ZlcnJpZGVBbGxFcnJvcnMpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcwp2YXIgcmVxdWlyZV9ydWxlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0UnVsZXMgPSBleHBvcnRzMi5pc0pTT05UeXBlID0gdm9pZCAwOwogICAgdmFyIF9qc29uVHlwZXMgPSBbInN0cmluZyIsICJudW1iZXIiLCAiaW50ZWdlciIsICJib29sZWFuIiwgIm51bGwiLCAib2JqZWN0IiwgImFycmF5Il07CiAgICB2YXIganNvblR5cGVzID0gbmV3IFNldChfanNvblR5cGVzKTsKICAgIGZ1bmN0aW9uIGlzSlNPTlR5cGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gInN0cmluZyIgJiYganNvblR5cGVzLmhhcyh4KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSlNPTlR5cGUgPSBpc0pTT05UeXBlOwogICAgZnVuY3Rpb24gZ2V0UnVsZXMoKSB7CiAgICAgIGNvbnN0IGdyb3VwcyA9IHsKICAgICAgICBudW1iZXI6IHsgdHlwZTogIm51bWJlciIsIHJ1bGVzOiBbXSB9LAogICAgICAgIHN0cmluZzogeyB0eXBlOiAic3RyaW5nIiwgcnVsZXM6IFtdIH0sCiAgICAgICAgYXJyYXk6IHsgdHlwZTogImFycmF5IiwgcnVsZXM6IFtdIH0sCiAgICAgICAgb2JqZWN0OiB7IHR5cGU6ICJvYmplY3QiLCBydWxlczogW10gfQogICAgICB9OwogICAgICByZXR1cm4gewogICAgICAgIHR5cGVzOiB7IC4uLmdyb3VwcywgaW50ZWdlcjogdHJ1ZSwgYm9vbGVhbjogdHJ1ZSwgbnVsbDogdHJ1ZSB9LAogICAgICAgIHJ1bGVzOiBbeyBydWxlczogW10gfSwgZ3JvdXBzLm51bWJlciwgZ3JvdXBzLnN0cmluZywgZ3JvdXBzLmFycmF5LCBncm91cHMub2JqZWN0XSwKICAgICAgICBwb3N0OiB7IHJ1bGVzOiBbXSB9LAogICAgICAgIGFsbDoge30sCiAgICAgICAga2V5d29yZHM6IHt9CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5nZXRSdWxlcyA9IGdldFJ1bGVzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9hcHBsaWNhYmlsaXR5LmpzCnZhciByZXF1aXJlX2FwcGxpY2FiaWxpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNGb3JUeXBlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNGb3JUeXBlKHsgc2NoZW1hOiBzY2hlbWEyLCBzZWxmOiBzZWxmMiB9LCB0eXBlMikgewogICAgICBjb25zdCBncm91cCA9IHNlbGYyLlJVTEVTLnR5cGVzW3R5cGUyXTsKICAgICAgcmV0dXJuIGdyb3VwICYmIGdyb3VwICE9PSB0cnVlICYmIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHNjaGVtYUhhc1J1bGVzRm9yVHlwZTsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cC5ydWxlcy5zb21lKChydWxlKSA9PiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gc2hvdWxkVXNlR3JvdXA7CiAgICBmdW5jdGlvbiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpIHsKICAgICAgdmFyIF9hOwogICAgICByZXR1cm4gc2NoZW1hMltydWxlLmtleXdvcmRdICE9PSB2b2lkIDAgfHwgKChfYSA9IHJ1bGUuZGVmaW5pdGlvbi5pbXBsZW1lbnRzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc29tZSgoa3dkKSA9PiBzY2hlbWEyW2t3ZF0gIT09IHZvaWQgMCkpOwogICAgfQogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IHNob3VsZFVzZVJ1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzCnZhciByZXF1aXJlX2RhdGFUeXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSBleHBvcnRzMi5jaGVja0RhdGFUeXBlcyA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5jb2VyY2VBbmRDaGVja0RhdGFUeXBlID0gZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZXhwb3J0czIuZ2V0U2NoZW1hVHlwZXMgPSBleHBvcnRzMi5EYXRhVHlwZSA9IHZvaWQgMDsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGFwcGxpY2FiaWxpdHlfMSA9IHJlcXVpcmVfYXBwbGljYWJpbGl0eSgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBEYXRhVHlwZTsKICAgIChmdW5jdGlvbihEYXRhVHlwZTIpIHsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiQ29ycmVjdCJdID0gMF0gPSAiQ29ycmVjdCI7CiAgICAgIERhdGFUeXBlMltEYXRhVHlwZTJbIldyb25nIl0gPSAxXSA9ICJXcm9uZyI7CiAgICB9KShEYXRhVHlwZSB8fCAoZXhwb3J0czIuRGF0YVR5cGUgPSBEYXRhVHlwZSA9IHt9KSk7CiAgICBmdW5jdGlvbiBnZXRTY2hlbWFUeXBlcyhzY2hlbWEyKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gZ2V0SlNPTlR5cGVzKHNjaGVtYTIudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEyLm51bGxhYmxlID09PSBmYWxzZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZTogbnVsbCBjb250cmFkaWN0cyBudWxsYWJsZTogZmFsc2UiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoIXR5cGVzLmxlbmd0aCAmJiBzY2hlbWEyLm51bGxhYmxlICE9PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignIm51bGxhYmxlIiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0ICJ0eXBlIicpOwogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1hMi5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYTogc2NoZW1hMiB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYTJ9YCwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYVZhbHVlIH0pID0+IHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciID8gKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWEyfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYTIsICJ0eXBlIik7CiAgICAgIHJldHVybiB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJ0eXBlIiwKICAgICAgICBkYXRhLAogICAgICAgIHNjaGVtYTogc2NoZW1hMi50eXBlLAogICAgICAgIHNjaGVtYUNvZGUsCiAgICAgICAgc2NoZW1hVmFsdWU6IHNjaGVtYUNvZGUsCiAgICAgICAgcGFyZW50U2NoZW1hOiBzY2hlbWEyLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMKdmFyIHJlcXVpcmVfZGVmYXVsdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFzc2lnbkRlZmF1bHRzID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdHMoaXQsIHR5KSB7CiAgICAgIGNvbnN0IHsgcHJvcGVydGllcywgaXRlbXMgfSA9IGl0LnNjaGVtYTsKICAgICAgaWYgKHR5ID09PSAib2JqZWN0IiAmJiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykgewogICAgICAgICAgYXNzaWduRGVmYXVsdChpdCwga2V5LCBwcm9wZXJ0aWVzW2tleV0uZGVmYXVsdCk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKHR5ID09PSAiYXJyYXkiICYmIEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgaXRlbXMuZm9yRWFjaCgoc2NoLCBpKSA9PiBhc3NpZ25EZWZhdWx0KGl0LCBpLCBzY2guZGVmYXVsdCkpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IGFzc2lnbkRlZmF1bHRzOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdChpdCwgcHJvcCwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBkYXRhLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKGRlZmF1bHRWYWx1ZSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgY2hpbGREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wKX1gOwogICAgICBpZiAoY29tcG9zaXRlUnVsZSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYGRlZmF1bHQgaXMgaWdub3JlZCBmb3I6ICR7Y2hpbGREYXRhfWApOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBsZXQgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NoaWxkRGF0YX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIGlmIChvcHRzLnVzZURlZmF1bHRzID09PSAiZW1wdHkiKSB7CiAgICAgICAgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmRpdGlvbn0gfHwgJHtjaGlsZERhdGF9ID09PSBudWxsIHx8ICR7Y2hpbGREYXRhfSA9PT0gIiJgOwogICAgICB9CiAgICAgIGdlbi5pZihjb25kaXRpb24sICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID0gJHsoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoZGVmYXVsdFZhbHVlKX1gKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IGV4cG9ydHMyLnZhbGlkYXRlQXJyYXkgPSBleHBvcnRzMi51c2VQYXR0ZXJuID0gZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IGV4cG9ydHMyLnByb3BlcnR5SW5EYXRhID0gZXhwb3J0czIuaXNPd25Qcm9wZXJ0eSA9IGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcChjeHQsIHByb3ApIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6ICgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wfWAgfSwgdHJ1ZSk7CiAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IGNoZWNrUmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBjaGVja01pc3NpbmdQcm9wKHsgZ2VuLCBkYXRhLCBpdDogeyBvcHRzIH0gfSwgcHJvcGVydGllcywgbWlzc2luZykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5vcikoLi4ucHJvcGVydGllcy5tYXAoKHByb3ApID0+ICgwLCBjb2RlZ2VuXzEuYW5kKShub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKDAsIGNvZGVnZW5fMS5fKWAke21pc3Npbmd9ID0gJHtwcm9wfWApKSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gY2hlY2tNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIHJlcG9ydE1pc3NpbmdQcm9wKGN4dCwgbWlzc2luZykgewogICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0sIHRydWUpOwogICAgICBjeHQuZXJyb3IoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydE1pc3NpbmdQcm9wID0gcmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBoYXNQcm9wRnVuYyhnZW4pIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2QKICAgICAgICByZWY6IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5YAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gaGFzUHJvcEZ1bmM7CiAgICBmdW5jdGlvbiBpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wRnVuYyhnZW4pfS5jYWxsKCR7ZGF0YX0sICR7cHJvcGVydHl9KWA7CiAgICB9CiAgICBleHBvcnRzMi5pc093blByb3BlcnR5ID0gaXNPd25Qcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIHByb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcGVydHksIG93blByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcGVydHkpfSAhPT0gdW5kZWZpbmVkYDsKICAgICAgcmV0dXJuIG93blByb3BlcnRpZXMgPyAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpfWAgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBwcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ID09PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEub3IpKGNvbmQsICgwLCBjb2RlZ2VuXzEubm90KShpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpKSkgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IG5vUHJvcGVydHlJbkRhdGE7CiAgICBmdW5jdGlvbiBhbGxTY2hlbWFQcm9wZXJ0aWVzKHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gc2NoZW1hTWFwID8gT2JqZWN0LmtleXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+IHAgIT09ICJfX3Byb3RvX18iKSA6IFtdOwogICAgfQogICAgZXhwb3J0czIuYWxsU2NoZW1hUHJvcGVydGllcyA9IGFsbFNjaGVtYVByb3BlcnRpZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFQcm9wZXJ0aWVzKGl0LCBzY2hlbWFNYXApIHsKICAgICAgcmV0dXJuIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+ICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hTWFwW3BdKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFQcm9wZXJ0aWVzID0gc2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZUNvZGUoeyBzY2hlbWFDb2RlLCBkYXRhLCBpdDogeyBnZW4sIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCwgZXJyb3JQYXRoIH0sIGl0IH0sIGZ1bmMsIGNvbnRleHQsIHBhc3NTY2hlbWEpIHsKICAgICAgY29uc3QgZGF0YUFuZFNjaGVtYSA9IHBhc3NTY2hlbWEgPyAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0sICR7ZGF0YX0sICR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gIDogZGF0YTsKICAgICAgY29uc3QgdmFsQ3h0ID0gWwogICAgICAgIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgZXJyb3JQYXRoKV0sCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCBpdC5wYXJlbnREYXRhXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgaXQucGFyZW50RGF0YVByb3BlcnR5XSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQucm9vdERhdGFdCiAgICAgIF07CiAgICAgIGlmIChpdC5vcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgdmFsQ3h0LnB1c2goW25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzXSk7CiAgICAgIGNvbnN0IGFyZ3MgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YUFuZFNjaGVtYX0sICR7Z2VuLm9iamVjdCguLi52YWxDeHQpfWA7CiAgICAgIHJldHVybiBjb250ZXh0ICE9PSBjb2RlZ2VuXzEubmlsID8gKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9LmNhbGwoJHtjb250ZXh0fSwgJHthcmdzfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9KCR7YXJnc30pYDsKICAgIH0KICAgIGV4cG9ydHMyLmNhbGxWYWxpZGF0ZUNvZGUgPSBjYWxsVmFsaWRhdGVDb2RlOwogICAgdmFyIG5ld1JlZ0V4cCA9ICgwLCBjb2RlZ2VuXzEuXylgbmV3IFJlZ0V4cGA7CiAgICBmdW5jdGlvbiB1c2VQYXR0ZXJuKHsgZ2VuLCBpdDogeyBvcHRzIH0gfSwgcGF0dGVybikgewogICAgICBjb25zdCB1ID0gb3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgIGNvbnN0IHsgcmVnRXhwIH0gPSBvcHRzLmNvZGU7CiAgICAgIGNvbnN0IHJ4ID0gcmVnRXhwKHBhdHRlcm4sIHUpOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoInBhdHRlcm4iLCB7CiAgICAgICAga2V5OiByeC50b1N0cmluZygpLAogICAgICAgIHJlZjogcngsCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWAke3JlZ0V4cC5jb2RlID09PSAibmV3IFJlZ0V4cCIgPyBuZXdSZWdFeHAgOiAoMCwgdXRpbF8yLnVzZUZ1bmMpKGdlbiwgcmVnRXhwKX0oJHtwYXR0ZXJufSwgJHt1fSlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlUGF0dGVybiA9IHVzZVBhdHRlcm47CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUFycmF5KGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgIGNvbnN0IHZhbGlkQXJyID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5hc3NpZ24odmFsaWRBcnIsIGZhbHNlKSk7CiAgICAgICAgcmV0dXJuIHZhbGlkQXJyOwogICAgICB9CiAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5icmVhaygpKTsKICAgICAgcmV0dXJuIHZhbGlkOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKG5vdFZhbGlkKSB7CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQsCiAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bQogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksIG5vdFZhbGlkKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IHZhbGlkYXRlQXJyYXk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaW9uKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgY29uc3QgYWx3YXlzVmFsaWQgPSBzY2hlbWEyLnNvbWUoKHNjaCkgPT4gKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpOwogICAgICBpZiAoYWx3YXlzVmFsaWQgJiYgIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHNjaGVtYTIuZm9yRWFjaCgoX3NjaCwgaSkgPT4gewogICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZCwKICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZH0gfHwgJHtzY2hWYWxpZH1gKTsKICAgICAgICBjb25zdCBtZXJnZWQgPSBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHNjaFZhbGlkKTsKICAgICAgICBpZiAoIW1lcmdlZCkKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpKTsKICAgICAgfSkpOwogICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlVW5pb24gPSB2YWxpZGF0ZVVuaW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9rZXl3b3JkLmpzCnZhciByZXF1aXJlX2tleXdvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpOwogICAgICBjb25zdCBzY2hlbWFSZWYgPSB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgbWFjcm9TY2hlbWEpOwogICAgICBpZiAoaXQub3B0cy52YWxpZGF0ZVNjaGVtYSAhPT0gZmFsc2UpCiAgICAgICAgaXQuc2VsZi52YWxpZGF0ZVNjaGVtYShtYWNyb1NjaGVtYSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgIHNjaGVtYTogbWFjcm9TY2hlbWEsCiAgICAgICAgc2NoZW1hUGF0aDogY29kZWdlbl8xLm5pbCwKICAgICAgICBlcnJTY2hlbWFQYXRoOiBgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YCwKICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaGVtYVJlZiwKICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgIH0sIHZhbGlkKTsKICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gbWFjcm9LZXl3b3JkQ29kZTsKICAgIGZ1bmN0aW9uIGZ1bmNLZXl3b3JkQ29kZShjeHQsIGRlZikgewogICAgICB2YXIgX2E7CiAgICAgIGNvbnN0IHsgZ2VuLCBrZXl3b3JkLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgJGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGNoZWNrQXN5bmNLZXl3b3JkKGl0LCBkZWYpOwogICAgICBjb25zdCB2YWxpZGF0ZSA9ICEkZGF0YSAmJiBkZWYuY29tcGlsZSA/IGRlZi5jb21waWxlLmNhbGwoaXQuc2VsZiwgc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCkgOiBkZWYudmFsaWRhdGU7CiAgICAgIGNvbnN0IHZhbGlkYXRlUmVmID0gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHZhbGlkYXRlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgdmFsaWRhdGVLZXl3b3JkKTsKICAgICAgY3h0Lm9rKChfYSA9IGRlZi52YWxpZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsaWQpOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUtleXdvcmQoKSB7CiAgICAgICAgaWYgKGRlZi5lcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICBhc3NpZ25WYWxpZCgpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBydWxlRXJycyA9IGRlZi5hc3luYyA/IHZhbGlkYXRlQXN5bmMoKSA6IHZhbGlkYXRlU3luYygpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gYWRkRXJycyhjeHQsIHJ1bGVFcnJzKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlQXN5bmMoKSB7CiAgICAgICAgY29uc3QgcnVsZUVycnMgPSBnZW4ubGV0KCJydWxlRXJycyIsIG51bGwpOwogICAgICAgIGdlbi50cnkoKCkgPT4gYXNzaWduVmFsaWQoKDAsIGNvZGVnZW5fMS5fKWBhd2FpdCBgKSwgKGUpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZX0gaW5zdGFuY2VvZiAke2l0LlZhbGlkYXRpb25FcnJvcn1gLCAoKSA9PiBnZW4uYXNzaWduKHJ1bGVFcnJzLCAoMCwgY29kZWdlbl8xLl8pYCR7ZX0uZXJyb3JzYCksICgpID0+IGdlbi50aHJvdyhlKSkpOwogICAgICAgIHJldHVybiBydWxlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZVN5bmMoKSB7CiAgICAgICAgY29uc3QgdmFsaWRhdGVFcnJzID0gKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlUmVmfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWRhdGVFcnJzLCBudWxsKTsKICAgICAgICBhc3NpZ25WYWxpZChjb2RlZ2VuXzEubmlsKTsKICAgICAgICByZXR1cm4gdmFsaWRhdGVFcnJzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFzc2lnblZhbGlkKF9hd2FpdCA9IGRlZi5hc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCA6IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBjb25zdCBwYXNzQ3h0ID0gaXQub3B0cy5wYXNzQ29udGV4dCA/IG5hbWVzXzEuZGVmYXVsdC50aGlzIDogbmFtZXNfMS5kZWZhdWx0LnNlbGY7CiAgICAgICAgY29uc3QgcGFzc1NjaGVtYSA9ICEoImNvbXBpbGUiIGluIGRlZiAmJiAhJGRhdGEgfHwgZGVmLnNjaGVtYSA9PT0gZmFsc2UpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHtfYXdhaXR9JHsoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdmFsaWRhdGVSZWYsIHBhc3NDeHQsIHBhc3NTY2hlbWEpfWAsIGRlZi5tb2RpZnlpbmcpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlcG9ydEVycnMoZXJyb3JzKSB7CiAgICAgICAgdmFyIF9hMjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKChfYTIgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hMiAhPT0gdm9pZCAwID8gX2EyIDogdmFsaWQpLCBlcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBmdW5jS2V5d29yZENvZGU7CiAgICBmdW5jdGlvbiBtb2RpZnlEYXRhKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgZ2VuLmlmKGl0LnBhcmVudERhdGEsICgpID0+IGdlbi5hc3NpZ24oZGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LnBhcmVudERhdGF9WyR7aXQucGFyZW50RGF0YVByb3BlcnR5fV1gKSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFcnJzKGN4dCwgZXJycykgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWBBcnJheS5pc0FycmF5KCR7ZXJyc30pYCwgKCkgPT4gewogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCkuYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCk7CiAgICAgICAgKDAsIGVycm9yc18xLmV4dGVuZEVycm9ycykoY3h0KTsKICAgICAgfSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY0tleXdvcmQoeyBzY2hlbWFFbnYgfSwgZGVmKSB7CiAgICAgIGlmIChkZWYuYXN5bmMgJiYgIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhc3luYyBrZXl3b3JkIGluIHN5bmMgc2NoZW1hIik7CiAgICB9CiAgICBmdW5jdGlvbiB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgcmVzdWx0KSB7CiAgICAgIGlmIChyZXN1bHQgPT09IHZvaWQgMCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGtleXdvcmQgIiR7a2V5d29yZH0iIGZhaWxlZCB0byBjb21waWxlYCk7CiAgICAgIHJldHVybiBnZW4uc2NvcGVWYWx1ZSgia2V5d29yZCIsIHR5cGVvZiByZXN1bHQgPT0gImZ1bmN0aW9uIiA/IHsgcmVmOiByZXN1bHQgfSA6IHsgcmVmOiByZXN1bHQsIGNvZGU6ICgwLCBjb2RlZ2VuXzEuc3RyaW5naWZ5KShyZXN1bHQpIH0pOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRTY2hlbWFUeXBlKHNjaGVtYTIsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hMikgOiBzdCA9PT0gIm9iamVjdCIgPyBzY2hlbWEyICYmIHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYTIpIDogdHlwZW9mIHNjaGVtYTIgPT0gc3QgfHwgYWxsb3dVbmRlZmluZWQgJiYgdHlwZW9mIHNjaGVtYTIgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWE6IHNjaGVtYTIsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYTIsIGt3ZCkpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJlbnQgc2NoZW1hIG11c3QgaGF2ZSBkZXBlbmRlbmNpZXMgb2YgJHtrZXl3b3JkfTogJHtkZXBzLmpvaW4oIiwiKX1gKTsKICAgICAgfQogICAgICBpZiAoZGVmLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgY29uc3QgdmFsaWQgPSBkZWYudmFsaWRhdGVTY2hlbWEoc2NoZW1hMltrZXl3b3JkXSk7CiAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgY29uc3QgbXNnID0gYGtleXdvcmQgIiR7a2V5d29yZH0iIHZhbHVlIGlzIGludmFsaWQgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSI6IGAgKyBzZWxmMi5lcnJvcnNUZXh0KGRlZi52YWxpZGF0ZVNjaGVtYS5lcnJvcnMpOwogICAgICAgICAgaWYgKG9wdHMudmFsaWRhdGVTY2hlbWEgPT09ICJsb2ciKQogICAgICAgICAgICBzZWxmMi5sb2dnZXIuZXJyb3IobXNnKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUtleXdvcmRVc2FnZSA9IHZhbGlkYXRlS2V5d29yZFVzYWdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMKdmFyIHJlcXVpcmVfc3Vic2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL3N1YnNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4cG9ydHMyLmV4dGVuZFN1YnNjaGVtYURhdGEgPSBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICBmdW5jdGlvbiBnZXRTdWJzY2hlbWEoaXQsIHsga2V5d29yZCwgc2NoZW1hUHJvcCwgc2NoZW1hOiBzY2hlbWEyLCBzY2hlbWFQYXRoLCBlcnJTY2hlbWFQYXRoLCB0b3BTY2hlbWFSZWYgfSkgewogICAgICBpZiAoa2V5d29yZCAhPT0gdm9pZCAwICYmIHNjaGVtYTIgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAia2V5d29yZCIgYW5kICJzY2hlbWEiIHBhc3NlZCwgb25seSBvbmUgYWxsb3dlZCcpOwogICAgICB9CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2ggPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgcmV0dXJuIHNjaGVtYVByb3AgPT09IHZvaWQgMCA/IHsKICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX1gLAogICAgICAgICAgZXJyU2NoZW1hUGF0aDogYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWAKICAgICAgICB9IDogewogICAgICAgICAgc2NoZW1hOiBzY2hbc2NoZW1hUHJvcF0sCiAgICAgICAgICBzY2hlbWFQYXRoOiAoMCwgY29kZWdlbl8xLl8pYCR7aXQuc2NoZW1hUGF0aH0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGtleXdvcmQpfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hUHJvcCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH0vJHsoMCwgdXRpbF8xLmVzY2FwZUZyYWdtZW50KShzY2hlbWFQcm9wKX1gCiAgICAgICAgfTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCBlcnJTY2hlbWFQYXRoID09PSB2b2lkIDAgfHwgdG9wU2NoZW1hUmVmID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignInNjaGVtYVBhdGgiLCAiZXJyU2NoZW1hUGF0aCIgYW5kICJ0b3BTY2hlbWFSZWYiIGFyZSByZXF1aXJlZCB3aXRoICJzY2hlbWEiJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzY2hlbWE6IHNjaGVtYTIsCiAgICAgICAgICBzY2hlbWFQYXRoLAogICAgICAgICAgdG9wU2NoZW1hUmVmLAogICAgICAgICAgZXJyU2NoZW1hUGF0aAogICAgICAgIH07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCdlaXRoZXIgImtleXdvcmQiIG9yICJzY2hlbWEiIG11c3QgYmUgcGFzc2VkJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSBnZXRTdWJzY2hlbWE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFEYXRhKHN1YnNjaGVtYSwgaXQsIHsgZGF0YVByb3AsIGRhdGFQcm9wVHlwZTogZHBUeXBlLCBkYXRhLCBkYXRhVHlwZXMsIHByb3BlcnR5TmFtZSB9KSB7CiAgICAgIGlmIChkYXRhICE9PSB2b2lkIDAgJiYgZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAiZGF0YSIgYW5kICJkYXRhUHJvcCIgcGFzc2VkLCBvbmx5IG9uZSBhbGxvd2VkJyk7CiAgICAgIH0KICAgICAgY29uc3QgeyBnZW4gfSA9IGl0OwogICAgICBpZiAoZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHsgZXJyb3JQYXRoLCBkYXRhUGF0aEFyciwgb3B0cyB9ID0gaXQ7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBnZW4ubGV0KCJkYXRhIiwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LmRhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCl9YCwgdHJ1ZSk7CiAgICAgICAgZGF0YUNvbnRleHRQcm9wcyhuZXh0RGF0YSk7CiAgICAgICAgc3Vic2NoZW1hLmVycm9yUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShkYXRhUHJvcCwgZHBUeXBlLCBvcHRzLmpzUHJvcGVydHlTeW50YXgpfWA7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhUHJvcH1gOwogICAgICAgIHN1YnNjaGVtYS5kYXRhUGF0aEFyciA9IFsuLi5kYXRhUGF0aEFyciwgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IG5leHREYXRhID0gZGF0YSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gZGF0YSA6IGdlbi5sZXQoImRhdGEiLCBkYXRhLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBpZiAocHJvcGVydHlOYW1lICE9PSB2b2lkIDApCiAgICAgICAgICBzdWJzY2hlbWEucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lOwogICAgICB9CiAgICAgIGlmIChkYXRhVHlwZXMpCiAgICAgICAgc3Vic2NoZW1hLmRhdGFUeXBlcyA9IGRhdGFUeXBlczsKICAgICAgZnVuY3Rpb24gZGF0YUNvbnRleHRQcm9wcyhfbmV4dERhdGEpIHsKICAgICAgICBzdWJzY2hlbWEuZGF0YSA9IF9uZXh0RGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YUxldmVsID0gaXQuZGF0YUxldmVsICsgMTsKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gW107CiAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHN1YnNjaGVtYS5wYXJlbnREYXRhID0gaXQuZGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YU5hbWVzID0gWy4uLml0LmRhdGFOYW1lcywgX25leHREYXRhXTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4dGVuZFN1YnNjaGVtYURhdGE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFNb2RlKHN1YnNjaGVtYSwgeyBqdGREaXNjcmltaW5hdG9yLCBqdGRNZXRhZGF0YSwgY29tcG9zaXRlUnVsZSwgY3JlYXRlRXJyb3JzLCBhbGxFcnJvcnMgfSkgewogICAgICBpZiAoY29tcG9zaXRlUnVsZSAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jb21wb3NpdGVSdWxlID0gY29tcG9zaXRlUnVsZTsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jcmVhdGVFcnJvcnMgPSBjcmVhdGVFcnJvcnM7CiAgICAgIGlmIChhbGxFcnJvcnMgIT09IHZvaWQgMCkKICAgICAgICBzdWJzY2hlbWEuYWxsRXJyb3JzID0gYWxsRXJyb3JzOwogICAgICBzdWJzY2hlbWEuanRkRGlzY3JpbWluYXRvciA9IGp0ZERpc2NyaW1pbmF0b3I7CiAgICAgIHN1YnNjaGVtYS5qdGRNZXRhZGF0YSA9IGp0ZE1ldGFkYXRhOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4dGVuZFN1YnNjaGVtYU1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtZGVlcC1lcXVhbC1ucG0tMy4xLjMtNzkwZWRjZmNmNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtZGVlcC1lcXVhbC9pbmRleC5qcwp2YXIgcmVxdWlyZV9mYXN0X2RlZXBfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC1kZWVwLWVxdWFsLW5wbS0zLjEuMy03OTBlZGNmY2Y1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gZXF1YWwoYSwgYikgewogICAgICBpZiAoYSA9PT0gYikgcmV0dXJuIHRydWU7CiAgICAgIGlmIChhICYmIGIgJiYgdHlwZW9mIGEgPT0gIm9iamVjdCIgJiYgdHlwZW9mIGIgPT0gIm9iamVjdCIpIHsKICAgICAgICBpZiAoYS5jb25zdHJ1Y3RvciAhPT0gYi5jb25zdHJ1Y3RvcikgcmV0dXJuIGZhbHNlOwogICAgICAgIHZhciBsZW5ndGgsIGksIGtleXM7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHsKICAgICAgICAgIGxlbmd0aCA9IGEubGVuZ3RoOwogICAgICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgICAgaWYgKCFlcXVhbChhW2ldLCBiW2ldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGlmIChhLmNvbnN0cnVjdG9yID09PSBSZWdFeHApIHJldHVybiBhLnNvdXJjZSA9PT0gYi5zb3VyY2UgJiYgYS5mbGFncyA9PT0gYi5mbGFnczsKICAgICAgICBpZiAoYS52YWx1ZU9mICE9PSBPYmplY3QucHJvdG90eXBlLnZhbHVlT2YpIHJldHVybiBhLnZhbHVlT2YoKSA9PT0gYi52YWx1ZU9mKCk7CiAgICAgICAgaWYgKGEudG9TdHJpbmcgIT09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcpIHJldHVybiBhLnRvU3RyaW5nKCkgPT09IGIudG9TdHJpbmcoKTsKICAgICAgICBrZXlzID0gT2JqZWN0LmtleXMoYSk7CiAgICAgICAgbGVuZ3RoID0ga2V5cy5sZW5ndGg7CiAgICAgICAgaWYgKGxlbmd0aCAhPT0gT2JqZWN0LmtleXMoYikubGVuZ3RoKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIGtleXNbaV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkgewogICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07CiAgICAgICAgICBpZiAoIWVxdWFsKGFba2V5XSwgYltrZXldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gYSAhPT0gYSAmJiBiICE9PSBiOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbi1zY2hlbWEtdHJhdmVyc2UtbnBtLTEuMC4wLWZiMzY4NGY0ZjAtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uLXNjaGVtYS10cmF2ZXJzZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb24tc2NoZW1hLXRyYXZlcnNlL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHRyYXZlcnNlID0gbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24oc2NoZW1hMiwgb3B0cywgY2IpIHsKICAgICAgaWYgKHR5cGVvZiBvcHRzID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjYiA9IG9wdHM7CiAgICAgICAgb3B0cyA9IHt9OwogICAgICB9CiAgICAgIGNiID0gb3B0cy5jYiB8fCBjYjsKICAgICAgdmFyIHByZSA9IHR5cGVvZiBjYiA9PSAiZnVuY3Rpb24iID8gY2IgOiBjYi5wcmUgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIHZhciBwb3N0ID0gY2IucG9zdCB8fCBmdW5jdGlvbigpIHsKICAgICAgfTsKICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwgIiIsIHNjaGVtYTIpOwogICAgfTsKICAgIHRyYXZlcnNlLmtleXdvcmRzID0gewogICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBjb250YWluczogdHJ1ZSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgIHByb3BlcnR5TmFtZXM6IHRydWUsCiAgICAgIG5vdDogdHJ1ZSwKICAgICAgaWY6IHRydWUsCiAgICAgIHRoZW46IHRydWUsCiAgICAgIGVsc2U6IHRydWUKICAgIH07CiAgICB0cmF2ZXJzZS5hcnJheUtleXdvcmRzID0gewogICAgICBpdGVtczogdHJ1ZSwKICAgICAgYWxsT2Y6IHRydWUsCiAgICAgIGFueU9mOiB0cnVlLAogICAgICBvbmVPZjogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnByb3BzS2V5d29yZHMgPSB7CiAgICAgICRkZWZzOiB0cnVlLAogICAgICBkZWZpbml0aW9uczogdHJ1ZSwKICAgICAgcHJvcGVydGllczogdHJ1ZSwKICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgIGRlcGVuZGVuY2llczogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnNraXBLZXl3b3JkcyA9IHsKICAgICAgZGVmYXVsdDogdHJ1ZSwKICAgICAgZW51bTogdHJ1ZSwKICAgICAgY29uc3Q6IHRydWUsCiAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICBtYXhpbXVtOiB0cnVlLAogICAgICBtaW5pbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNYXhpbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNaW5pbXVtOiB0cnVlLAogICAgICBtdWx0aXBsZU9mOiB0cnVlLAogICAgICBtYXhMZW5ndGg6IHRydWUsCiAgICAgIG1pbkxlbmd0aDogdHJ1ZSwKICAgICAgcGF0dGVybjogdHJ1ZSwKICAgICAgZm9ybWF0OiB0cnVlLAogICAgICBtYXhJdGVtczogdHJ1ZSwKICAgICAgbWluSXRlbXM6IHRydWUsCiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLAogICAgICBtYXhQcm9wZXJ0aWVzOiB0cnVlLAogICAgICBtaW5Qcm9wZXJ0aWVzOiB0cnVlCiAgICB9OwogICAgZnVuY3Rpb24gX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwganNvblB0ciwgcm9vdFNjaGVtYSwgcGFyZW50SnNvblB0ciwgcGFyZW50S2V5d29yZCwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCkgewogICAgICBpZiAoc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheShzY2hlbWEyKSkgewogICAgICAgIHByZShzY2hlbWEyLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hMikgewogICAgICAgICAgdmFyIHNjaCA9IHNjaGVtYTJba2V5XTsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgaWYgKGtleSBpbiB0cmF2ZXJzZS5hcnJheUtleXdvcmRzKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspCiAgICAgICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hbaV0sIGpzb25QdHIgKyAiLyIgKyBrZXkgKyAiLyIgKyBpLCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEyLCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gdHJhdmVyc2Uua2V5d29yZHMgfHwgb3B0cy5hbGxLZXlzICYmICEoa2V5IGluIHRyYXZlcnNlLnNraXBLZXl3b3JkcykpIHsKICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoLCBqc29uUHRyICsgIi8iICsga2V5LCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwb3N0KHNjaGVtYTIsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3Jlc29sdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdldFNjaGVtYVJlZnMgPSBleHBvcnRzMi5yZXNvbHZlVXJsID0gZXhwb3J0czIubm9ybWFsaXplSWQgPSBleHBvcnRzMi5fZ2V0RnVsbFBhdGggPSBleHBvcnRzMi5nZXRGdWxsUGF0aCA9IGV4cG9ydHMyLmlubGluZVJlZiA9IHZvaWQgMDsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICB2YXIgdHJhdmVyc2UgPSByZXF1aXJlX2pzb25fc2NoZW1hX3RyYXZlcnNlKCk7CiAgICB2YXIgU0lNUExFX0lOTElORUQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ0eXBlIiwKICAgICAgImZvcm1hdCIsCiAgICAgICJwYXR0ZXJuIiwKICAgICAgIm1heExlbmd0aCIsCiAgICAgICJtaW5MZW5ndGgiLAogICAgICAibWF4UHJvcGVydGllcyIsCiAgICAgICJtaW5Qcm9wZXJ0aWVzIiwKICAgICAgIm1heEl0ZW1zIiwKICAgICAgIm1pbkl0ZW1zIiwKICAgICAgIm1heGltdW0iLAogICAgICAibWluaW11bSIsCiAgICAgICJ1bmlxdWVJdGVtcyIsCiAgICAgICJtdWx0aXBsZU9mIiwKICAgICAgInJlcXVpcmVkIiwKICAgICAgImVudW0iLAogICAgICAiY29uc3QiCiAgICBdKTsKICAgIGZ1bmN0aW9uIGlubGluZVJlZihzY2hlbWEyLCBsaW1pdCA9IHRydWUpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGxpbWl0ID09PSB0cnVlKQogICAgICAgIHJldHVybiAhaGFzUmVmKHNjaGVtYTIpOwogICAgICBpZiAoIWxpbWl0KQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIGNvdW50S2V5cyhzY2hlbWEyKSA8PSBsaW1pdDsKICAgIH0KICAgIGV4cG9ydHMyLmlubGluZVJlZiA9IGlubGluZVJlZjsKICAgIHZhciBSRUZfS0VZV09SRFMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICIkcmVmIiwKICAgICAgIiRyZWN1cnNpdmVSZWYiLAogICAgICAiJHJlY3Vyc2l2ZUFuY2hvciIsCiAgICAgICIkZHluYW1pY1JlZiIsCiAgICAgICIkZHluYW1pY0FuY2hvciIKICAgIF0pOwogICAgZnVuY3Rpb24gaGFzUmVmKHNjaGVtYTIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmIChSRUZfS0VZV09SRFMuaGFzKGtleSkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2tleV07CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSAmJiBzY2guc29tZShoYXNSZWYpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIgJiYgaGFzUmVmKHNjaCkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBjb3VudEtleXMoc2NoZW1hMikgewogICAgICBsZXQgY291bnQgPSAwOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIiRyZWYiKQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICAgIGNvdW50Kys7CiAgICAgICAgaWYgKFNJTVBMRV9JTkxJTkVELmhhcyhrZXkpKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgICgwLCB1dGlsXzEuZWFjaEl0ZW0pKHNjaGVtYTJba2V5XSwgKHNjaCkgPT4gY291bnQgKz0gY291bnRLZXlzKHNjaCkpOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgPT09IEluZmluaXR5KQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBjb3VudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEZ1bGxQYXRoKHJlc29sdmVyLCBpZCA9ICIiLCBub3JtYWxpemUpIHsKICAgICAgaWYgKG5vcm1hbGl6ZSAhPT0gZmFsc2UpCiAgICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIGNvbnN0IHAgPSByZXNvbHZlci5wYXJzZShpZCk7CiAgICAgIHJldHVybiBfZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIHApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBnZXRGdWxsUGF0aDsKICAgIGZ1bmN0aW9uIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCkgewogICAgICBjb25zdCBzZXJpYWxpemVkID0gcmVzb2x2ZXIuc2VyaWFsaXplKHApOwogICAgICByZXR1cm4gc2VyaWFsaXplZC5zcGxpdCgiIyIpWzBdICsgIiMiOwogICAgfQogICAgZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gX2dldEZ1bGxQYXRoOwogICAgdmFyIFRSQUlMSU5HX1NMQVNIX0hBU0ggPSAvI1wvPyQvOwogICAgZnVuY3Rpb24gbm9ybWFsaXplSWQoaWQpIHsKICAgICAgcmV0dXJuIGlkID8gaWQucmVwbGFjZShUUkFJTElOR19TTEFTSF9IQVNILCAiIikgOiAiIjsKICAgIH0KICAgIGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gbm9ybWFsaXplSWQ7CiAgICBmdW5jdGlvbiByZXNvbHZlVXJsKHJlc29sdmVyLCBiYXNlSWQsIGlkKSB7CiAgICAgIGlkID0gbm9ybWFsaXplSWQoaWQpOwogICAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZShiYXNlSWQsIGlkKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVVcmwgPSByZXNvbHZlVXJsOwogICAgdmFyIEFOQ0hPUiA9IC9eW2Etel9dWy1hLXowLTkuX10qJC9pOwogICAgZnVuY3Rpb24gZ2V0U2NoZW1hUmVmcyhzY2hlbWEyLCBiYXNlSWQpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4ge307CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQsIHVyaVJlc29sdmVyIH0gPSB0aGlzLm9wdHM7CiAgICAgIGNvbnN0IHNjaElkID0gbm9ybWFsaXplSWQoc2NoZW1hMltzY2hlbWFJZF0gfHwgYmFzZUlkKTsKICAgICAgY29uc3QgYmFzZUlkcyA9IHsgIiI6IHNjaElkIH07CiAgICAgIGNvbnN0IHBhdGhQcmVmaXggPSBnZXRGdWxsUGF0aCh1cmlSZXNvbHZlciwgc2NoSWQsIGZhbHNlKTsKICAgICAgY29uc3QgbG9jYWxSZWZzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYVJlZnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICB0cmF2ZXJzZShzY2hlbWEyLCB7IGFsbEtleXM6IHRydWUgfSwgKHNjaCwganNvblB0ciwgXywgcGFyZW50SnNvblB0cikgPT4gewogICAgICAgIGlmIChwYXJlbnRKc29uUHRyID09PSB2b2lkIDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZnVsbFBhdGggPSBwYXRoUHJlZml4ICsganNvblB0cjsKICAgICAgICBsZXQgaW5uZXJCYXNlSWQgPSBiYXNlSWRzW3BhcmVudEpzb25QdHJdOwogICAgICAgIGlmICh0eXBlb2Ygc2NoW3NjaGVtYUlkXSA9PSAic3RyaW5nIikKICAgICAgICAgIGlubmVyQmFzZUlkID0gYWRkUmVmLmNhbGwodGhpcywgc2NoW3NjaGVtYUlkXSk7CiAgICAgICAgYWRkQW5jaG9yLmNhbGwodGhpcywgc2NoLiRhbmNob3IpOwogICAgICAgIGFkZEFuY2hvci5jYWxsKHRoaXMsIHNjaC4kZHluYW1pY0FuY2hvcik7CiAgICAgICAgYmFzZUlkc1tqc29uUHRyXSA9IGlubmVyQmFzZUlkOwogICAgICAgIGZ1bmN0aW9uIGFkZFJlZihyZWYpIHsKICAgICAgICAgIGNvbnN0IF9yZXNvbHZlID0gdGhpcy5vcHRzLnVyaVJlc29sdmVyLnJlc29sdmU7CiAgICAgICAgICByZWYgPSBub3JtYWxpemVJZChpbm5lckJhc2VJZCA/IF9yZXNvbHZlKGlubmVyQmFzZUlkLCByZWYpIDogcmVmKTsKICAgICAgICAgIGlmIChzY2hlbWFSZWZzLmhhcyhyZWYpKQogICAgICAgICAgICB0aHJvdyBhbWJpZ3VvcyhyZWYpOwogICAgICAgICAgc2NoZW1hUmVmcy5hZGQocmVmKTsKICAgICAgICAgIGxldCBzY2hPclJlZiA9IHRoaXMucmVmc1tyZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAic3RyaW5nIikKICAgICAgICAgICAgc2NoT3JSZWYgPSB0aGlzLnJlZnNbc2NoT3JSZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAib2JqZWN0IikgewogICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgc2NoT3JSZWYuc2NoZW1hLCByZWYpOwogICAgICAgICAgfSBlbHNlIGlmIChyZWYgIT09IG5vcm1hbGl6ZUlkKGZ1bGxQYXRoKSkgewogICAgICAgICAgICBpZiAocmVmWzBdID09PSAiIyIpIHsKICAgICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgbG9jYWxSZWZzW3JlZl0sIHJlZik7CiAgICAgICAgICAgICAgbG9jYWxSZWZzW3JlZl0gPSBzY2g7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdGhpcy5yZWZzW3JlZl0gPSBmdWxsUGF0aDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHJlZjsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkQW5jaG9yKGFuY2hvcikgewogICAgICAgICAgaWYgKHR5cGVvZiBhbmNob3IgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKCFBTkNIT1IudGVzdChhbmNob3IpKQogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhbmNob3IgIiR7YW5jaG9yfSJgKTsKICAgICAgICAgICAgYWRkUmVmLmNhbGwodGhpcywgYCMke2FuY2hvcn1gKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gbG9jYWxSZWZzOwogICAgICBmdW5jdGlvbiBjaGVja0FtYmlndW9zUmVmKHNjaDEsIHNjaDIsIHJlZikgewogICAgICAgIGlmIChzY2gyICE9PSB2b2lkIDAgJiYgIWVxdWFsKHNjaDEsIHNjaDIpKQogICAgICAgICAgdGhyb3cgYW1iaWd1b3MocmVmKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhbWJpZ3VvcyhyZWYpIHsKICAgICAgICByZXR1cm4gbmV3IEVycm9yKGByZWZlcmVuY2UgIiR7cmVmfSIgcmVzb2x2ZXMgdG8gbW9yZSB0aGFuIG9uZSBzY2hlbWFgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0U2NoZW1hUmVmcyA9IGdldFNjaGVtYVJlZnM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzCnZhciByZXF1aXJlX3ZhbGlkYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXREYXRhID0gZXhwb3J0czIuS2V5d29yZEN4dCA9IGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdm9pZCAwOwogICAgdmFyIGJvb2xTY2hlbWFfMSA9IHJlcXVpcmVfYm9vbFNjaGVtYSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZGF0YVR5cGVfMiA9IHJlcXVpcmVfZGF0YVR5cGUoKTsKICAgIHZhciBkZWZhdWx0c18xID0gcmVxdWlyZV9kZWZhdWx0cygpOwogICAgdmFyIGtleXdvcmRfMSA9IHJlcXVpcmVfa2V5d29yZCgpOwogICAgdmFyIHN1YnNjaGVtYV8xID0gcmVxdWlyZV9zdWJzY2hlbWEoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlRnVuY3Rpb25Db2RlKGl0KSB7CiAgICAgIGlmIChpc1NjaGVtYU9iaihpdCkpIHsKICAgICAgICBjaGVja0tleXdvcmRzKGl0KTsKICAgICAgICBpZiAoc2NoZW1hQ3h0SGFzUnVsZXMoaXQpKSB7CiAgICAgICAgICB0b3BTY2hlbWFPYmpDb2RlKGl0KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gKDAsIGJvb2xTY2hlbWFfMS50b3BCb29sT3JFbXB0eVNjaGVtYSkoaXQpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdmFsaWRhdGVGdW5jdGlvbkNvZGU7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uKHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hRW52LCBvcHRzIH0sIGJvZHkpIHsKICAgICAgaWYgKG9wdHMuY29kZS5lczUpIHsKICAgICAgICBnZW4uZnVuYyh2YWxpZGF0ZU5hbWUsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCJ1c2Ugc3RyaWN0IjsgJHtmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpfWApOwogICAgICAgICAgZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKTsKICAgICAgICAgIGdlbi5jb2RlKGJvZHkpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5mdW5jKHZhbGlkYXRlTmFtZSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5kYXRhfSwgJHtkZXN0cnVjdHVyZVZhbEN4dChvcHRzKX1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiBnZW4uY29kZShmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpKS5jb2RlKGJvZHkpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHQob3B0cykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB7JHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofT0iIiwgJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX0sICR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfT0ke25hbWVzXzEuZGVmYXVsdC5kYXRhfSR7b3B0cy5keW5hbWljUmVmID8gKDAsIGNvZGVnZW5fMS5fKWAsICR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfT17fWAgOiBjb2RlZ2VuXzEubmlsfX09e31gOwogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKSB7CiAgICAgIGdlbi5pZihuYW1lc18xLmRlZmF1bHQudmFsQ3h0LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhfWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfWApOwogICAgICAgIGlmIChvcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfWApOwogICAgICB9LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCIiYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsIG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgICBpZiAob3B0cy5keW5hbWljUmVmKQogICAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnMsICgwLCBjb2RlZ2VuXzEuXylge31gKTsKICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiB0b3BTY2hlbWFPYmpDb2RlKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzLCBnZW4gfSA9IGl0OwogICAgICB2YWxpZGF0ZUZ1bmN0aW9uKGl0LCAoKSA9PiB7CiAgICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgJiYgc2NoZW1hMi4kY29tbWVudCkKICAgICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgICBjaGVja05vRGVmYXVsdChpdCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAwKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJlc2V0RXZhbHVhdGVkKGl0KTsKICAgICAgICB0eXBlQW5kS2V5d29yZHMoaXQpOwogICAgICAgIHJldHVyblJlc3VsdHMoaXQpOwogICAgICB9KTsKICAgICAgcmV0dXJuOwogICAgfQogICAgZnVuY3Rpb24gcmVzZXRFdmFsdWF0ZWQoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSB9ID0gaXQ7CiAgICAgIGl0LmV2YWx1YXRlZCA9IGdlbi5jb25zdCgiZXZhbHVhdGVkIiwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXZhbHVhdGVkYCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljUHJvcHNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9LnByb3BzYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljSXRlbXNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9Lml0ZW1zYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICB9CiAgICBmdW5jdGlvbiBmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpIHsKICAgICAgY29uc3Qgc2NoSWQgPSB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiBzY2hlbWEyW29wdHMuc2NoZW1hSWRdOwogICAgICByZXR1cm4gc2NoSWQgJiYgKG9wdHMuY29kZS5zb3VyY2UgfHwgb3B0cy5jb2RlLnByb2Nlc3MpID8gKDAsIGNvZGVnZW5fMS5fKWAvKiMgc291cmNlVVJMPSR7c2NoSWR9ICovYCA6IGNvZGVnZW5fMS5uaWw7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJzY2hlbWFDb2RlKGl0LCB2YWxpZCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgc3ViU2NoZW1hT2JqQ29kZShpdCwgdmFsaWQpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgfQogICAgICAoMCwgYm9vbFNjaGVtYV8xLmJvb2xPckVtcHR5U2NoZW1hKShpdCwgdmFsaWQpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hQ3h0SGFzUnVsZXMoeyBzY2hlbWE6IHNjaGVtYTIsIHNlbGY6IHNlbGYyIH0pIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gIXNjaGVtYTI7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYTIpCiAgICAgICAgaWYgKHNlbGYyLlJVTEVTLmFsbFtrZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU2NoZW1hT2JqKGl0KSB7CiAgICAgIHJldHVybiB0eXBlb2YgaXQuc2NoZW1hICE9ICJib29sZWFuIjsKICAgIH0KICAgIGZ1bmN0aW9uIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBnZW4sIG9wdHMgfSA9IGl0OwogICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEyLiRjb21tZW50KQogICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgdXBkYXRlQ29udGV4dChpdCk7CiAgICAgIGNoZWNrQXN5bmNTY2hlbWEoaXQpOwogICAgICBjb25zdCBlcnJzQ291bnQgPSBnZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KTsKICAgICAgZ2VuLnZhcih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke2VycnNDb3VudH0gPT09ICR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc31gKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZHMoaXQpIHsKICAgICAgKDAsIHV0aWxfMS5jaGVja1Vua25vd25SdWxlcykoaXQpOwogICAgICBjaGVja1JlZnNBbmRLZXl3b3JkcyhpdCk7CiAgICB9CiAgICBmdW5jdGlvbiB0eXBlQW5kS2V5d29yZHMoaXQsIGVycnNDb3VudCkgewogICAgICBpZiAoaXQub3B0cy5qdGQpCiAgICAgICAgcmV0dXJuIHNjaGVtYUtleXdvcmRzKGl0LCBbXSwgZmFsc2UsIGVycnNDb3VudCk7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIGRhdGFUeXBlXzEuZ2V0U2NoZW1hVHlwZXMpKGl0LnNjaGVtYSk7CiAgICAgIGNvbnN0IGNoZWNrZWRUeXBlcyA9ICgwLCBkYXRhVHlwZV8xLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUpKGl0LCB0eXBlcyk7CiAgICAgIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgIWNoZWNrZWRUeXBlcywgZXJyc0NvdW50KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEyLiRyZWYgJiYgb3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgJiYgKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgc2VsZjIuUlVMRVMpKSB7CiAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4oYCRyZWY6IGtleXdvcmRzIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTm9EZWZhdWx0KGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIuZGVmYXVsdCAhPT0gdm9pZCAwICYmIG9wdHMudXNlRGVmYXVsdHMgJiYgb3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICJkZWZhdWx0IGlzIGlnbm9yZWQgaW4gdGhlIHNjaGVtYSByb290Iik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUNvbnRleHQoaXQpIHsKICAgICAgY29uc3Qgc2NoSWQgPSBpdC5zY2hlbWFbaXQub3B0cy5zY2hlbWFJZF07CiAgICAgIGlmIChzY2hJZCkKICAgICAgICBpdC5iYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGl0LmJhc2VJZCwgc2NoSWQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY1NjaGVtYShpdCkgewogICAgICBpZiAoaXQuc2NoZW1hLiRhc3luYyAmJiAhaXQuc2NoZW1hRW52LiRhc3luYykKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIHNjaGVtYSBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gY29tbWVudEtleXdvcmQoeyBnZW4sIHNjaGVtYUVudiwgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzIH0pIHsKICAgICAgY29uc3QgbXNnID0gc2NoZW1hMi4kY29tbWVudDsKICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgPT09IHRydWUpIHsKICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnNlbGZ9LmxvZ2dlci5sb2coJHttc2d9KWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcHRzLiRjb21tZW50ID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjb25zdCBzY2hlbWFQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyU2NoZW1hUGF0aH0vJGNvbW1lbnRgOwogICAgICAgIGNvbnN0IHJvb3ROYW1lID0gZ2VuLnNjb3BlVmFsdWUoInJvb3QiLCB7IHJlZjogc2NoZW1hRW52LnJvb3QgfSk7CiAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5zZWxmfS5vcHRzLiRjb21tZW50KCR7bXNnfSwgJHtzY2hlbWFQYXRofSwgJHtyb290TmFtZX0uc2NoZW1hKWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5SZXN1bHRzKGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFFbnYsIHZhbGlkYXRlTmFtZSwgVmFsaWRhdGlvbkVycm9yLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAwYCwgKCkgPT4gZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSksICgpID0+IGdlbi50aHJvdygoMCwgY29kZWdlbl8xLl8pYG5ldyAke1ZhbGlkYXRpb25FcnJvcn0oJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30pYCkpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXJyb3JzYCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICAgIGlmIChvcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgYXNzaWduRXZhbHVhdGVkKGl0KTsKICAgICAgICBnZW4ucmV0dXJuKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gMGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhc3NpZ25FdmFsdWF0ZWQoeyBnZW4sIGV2YWx1YXRlZCwgcHJvcHMsIGl0ZW1zIH0pIHsKICAgICAgaWYgKHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5wcm9wc2AsIHByb3BzKTsKICAgICAgaWYgKGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5pdGVtc2AsIGl0ZW1zKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgdHlwZUVycm9ycywgZXJyc0NvdW50KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGFsbEVycm9ycywgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICBjb25zdCB7IFJVTEVTIH0gPSBzZWxmMjsKICAgICAgaWYgKHNjaGVtYTIuJHJlZiAmJiAob3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgfHwgISgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYTIsIFJVTEVTKSkpIHsKICAgICAgICBnZW4uYmxvY2soKCkgPT4ga2V5d29yZENvZGUoaXQsICIkcmVmIiwgUlVMRVMuYWxsLiRyZWYuZGVmaW5pdGlvbikpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIW9wdHMuanRkKQogICAgICAgIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIFJVTEVTLnJ1bGVzKQogICAgICAgICAgZ3JvdXBLZXl3b3Jkcyhncm91cCk7CiAgICAgICAgZ3JvdXBLZXl3b3JkcyhSVUxFUy5wb3N0KTsKICAgICAgfSk7CiAgICAgIGZ1bmN0aW9uIGdyb3VwS2V5d29yZHMoZ3JvdXApIHsKICAgICAgICBpZiAoISgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlR3JvdXApKHNjaGVtYTIsIGdyb3VwKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAoZ3JvdXAudHlwZSkgewogICAgICAgICAgZ2VuLmlmKCgwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGUpKGdyb3VwLnR5cGUsIGRhdGEsIG9wdHMuc3RyaWN0TnVtYmVycykpOwogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgICBpZiAodHlwZXMubGVuZ3RoID09PSAxICYmIHR5cGVzWzBdID09PSBncm91cC50eXBlICYmIHR5cGVFcnJvcnMpIHsKICAgICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICAgICAgKDAsIGRhdGFUeXBlXzIucmVwb3J0VHlwZUVycm9yKShpdCk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgfQogICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gJHtlcnJzQ291bnQgfHwgMH1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBvcHRzOiB7IHVzZURlZmF1bHRzIH0gfSA9IGl0OwogICAgICBpZiAodXNlRGVmYXVsdHMpCiAgICAgICAgKDAsIGRlZmF1bHRzXzEuYXNzaWduRGVmYXVsdHMpKGl0LCBncm91cC50eXBlKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgZ3JvdXAucnVsZXMpIHsKICAgICAgICAgIGlmICgoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKHNjaGVtYTIsIHJ1bGUpKSB7CiAgICAgICAgICAgIGtleXdvcmRDb2RlKGl0LCBydWxlLmtleXdvcmQsIHJ1bGUuZGVmaW5pdGlvbiwgZ3JvdXAudHlwZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmIChpdC5zY2hlbWFFbnYubWV0YSB8fCAhaXQub3B0cy5zdHJpY3RUeXBlcykKICAgICAgICByZXR1cm47CiAgICAgIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGlmICghaXQub3B0cy5hbGxvd1VuaW9uVHlwZXMpCiAgICAgICAgY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGNoZWNrS2V5d29yZFR5cGVzKGl0LCBpdC5kYXRhVHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tDb250ZXh0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmICghdHlwZXMubGVuZ3RoKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFpdC5kYXRhVHlwZXMubGVuZ3RoKSB7CiAgICAgICAgaXQuZGF0YVR5cGVzID0gdHlwZXM7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHR5cGVzLmZvckVhY2goKHQpID0+IHsKICAgICAgICBpZiAoIWluY2x1ZGVzVHlwZShpdC5kYXRhVHlwZXMsIHQpKSB7CiAgICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCBgdHlwZSAiJHt0fSIgbm90IGFsbG93ZWQgYnkgY29udGV4dCAiJHtpdC5kYXRhVHlwZXMuam9pbigiLCIpfSJgKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgdHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0cykgewogICAgICBpZiAodHMubGVuZ3RoID4gMSAmJiAhKHRzLmxlbmd0aCA9PT0gMiAmJiB0cy5pbmNsdWRlcygibnVsbCIpKSkgewogICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsICJ1c2UgYWxsb3dVbmlvblR5cGVzIHRvIGFsbG93IHVuaW9uIHR5cGUga2V5d29yZCIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0tleXdvcmRUeXBlcyhpdCwgdHMpIHsKICAgICAgY29uc3QgcnVsZXMgPSBpdC5zZWxmLlJVTEVTLmFsbDsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIHJ1bGVzKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHJ1bGVzW2tleXdvcmRdOwogICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiAmJiAoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKGl0LnNjaGVtYSwgcnVsZSkpIHsKICAgICAgICAgIGNvbnN0IHsgdHlwZTogdHlwZTIgfSA9IHJ1bGUuZGVmaW5pdGlvbjsKICAgICAgICAgIGlmICh0eXBlMi5sZW5ndGggJiYgIXR5cGUyLnNvbWUoKHQpID0+IGhhc0FwcGxpY2FibGVUeXBlKHRzLCB0KSkpIHsKICAgICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYG1pc3NpbmcgdHlwZSAiJHt0eXBlMi5qb2luKCIsIil9IiBmb3Iga2V5d29yZCAiJHtrZXl3b3JkfSJgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGhhc0FwcGxpY2FibGVUeXBlKHNjaFRzLCBrd2RUKSB7CiAgICAgIHJldHVybiBzY2hUcy5pbmNsdWRlcyhrd2RUKSB8fCBrd2RUID09PSAibnVtYmVyIiAmJiBzY2hUcy5pbmNsdWRlcygiaW50ZWdlciIpOwogICAgfQogICAgZnVuY3Rpb24gaW5jbHVkZXNUeXBlKHRzLCB0KSB7CiAgICAgIHJldHVybiB0cy5pbmNsdWRlcyh0KSB8fCB0ID09PSAiaW50ZWdlciIgJiYgdHMuaW5jbHVkZXMoIm51bWJlciIpOwogICAgfQogICAgZnVuY3Rpb24gbmFycm93U2NoZW1hVHlwZXMoaXQsIHdpdGhUeXBlcykgewogICAgICBjb25zdCB0cyA9IFtdOwogICAgICBmb3IgKGNvbnN0IHQgb2YgaXQuZGF0YVR5cGVzKSB7CiAgICAgICAgaWYgKGluY2x1ZGVzVHlwZSh3aXRoVHlwZXMsIHQpKQogICAgICAgICAgdHMucHVzaCh0KTsKICAgICAgICBlbHNlIGlmICh3aXRoVHlwZXMuaW5jbHVkZXMoImludGVnZXIiKSAmJiB0ID09PSAibnVtYmVyIikKICAgICAgICAgIHRzLnB1c2goImludGVnZXIiKTsKICAgICAgfQogICAgICBpdC5kYXRhVHlwZXMgPSB0czsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmljdFR5cGVzRXJyb3IoaXQsIG1zZykgewogICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgIG1zZyArPSBgIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0VHlwZXMpYDsKICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBtc2csIGl0Lm9wdHMuc3RyaWN0VHlwZXMpOwogICAgfQogICAgdmFyIEtleXdvcmRDeHQgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGl0LCBkZWYsIGtleXdvcmQpIHsKICAgICAgICAoMCwga2V5d29yZF8xLnZhbGlkYXRlS2V5d29yZFVzYWdlKShpdCwgZGVmLCBrZXl3b3JkKTsKICAgICAgICB0aGlzLmdlbiA9IGl0LmdlbjsKICAgICAgICB0aGlzLmFsbEVycm9ycyA9IGl0LmFsbEVycm9yczsKICAgICAgICB0aGlzLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgIHRoaXMuZGF0YSA9IGl0LmRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgdGhpcy4kZGF0YSA9IGRlZi4kZGF0YSAmJiBpdC5vcHRzLiRkYXRhICYmIHRoaXMuc2NoZW1hICYmIHRoaXMuc2NoZW1hLiRkYXRhOwogICAgICAgIHRoaXMuc2NoZW1hVmFsdWUgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgdGhpcy5zY2hlbWEsIGtleXdvcmQsIHRoaXMuJGRhdGEpOwogICAgICAgIHRoaXMuc2NoZW1hVHlwZSA9IGRlZi5zY2hlbWFUeXBlOwogICAgICAgIHRoaXMucGFyZW50U2NoZW1hID0gaXQuc2NoZW1hOwogICAgICAgIHRoaXMucGFyYW1zID0ge307CiAgICAgICAgdGhpcy5pdCA9IGl0OwogICAgICAgIHRoaXMuZGVmID0gZGVmOwogICAgICAgIGlmICh0aGlzLiRkYXRhKSB7CiAgICAgICAgICB0aGlzLnNjaGVtYUNvZGUgPSBpdC5nZW4uY29uc3QoInZTY2hlbWEiLCBnZXREYXRhKHRoaXMuJGRhdGEsIGl0KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IHRoaXMuc2NoZW1hVmFsdWU7CiAgICAgICAgICBpZiAoISgwLCBrZXl3b3JkXzEudmFsaWRTY2hlbWFUeXBlKSh0aGlzLnNjaGVtYSwgZGVmLnNjaGVtYVR5cGUsIGRlZi5hbGxvd1VuZGVmaW5lZCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2tleXdvcmR9IHZhbHVlIG11c3QgYmUgJHtKU09OLnN0cmluZ2lmeShkZWYuc2NoZW1hVHlwZSl9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgiY29kZSIgaW4gZGVmID8gZGVmLnRyYWNrRXJyb3JzIDogZGVmLmVycm9ycyAhPT0gZmFsc2UpIHsKICAgICAgICAgIHRoaXMuZXJyc0NvdW50ID0gaXQuZ2VuLmNvbnN0KCJfZXJycyIsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMpOwogICAgICAgIH0KICAgICAgfQogICAgICByZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsUmVzdWx0KGNvbmRpdGlvbiwgc3VjY2Vzc0FjdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgaWYgKGZhaWxBY3Rpb24pCiAgICAgICAgICBmYWlsQWN0aW9uKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmIChzdWNjZXNzQWN0aW9uKSB7CiAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgICBzdWNjZXNzQWN0aW9uKCk7CiAgICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgICBwYXNzKGNvbmRpdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZmFpbFJlc3VsdCgoMCwgY29kZWdlbl8xLm5vdCkoY29uZGl0aW9uKSwgdm9pZCAwLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsKGNvbmRpdGlvbikgewogICAgICAgIGlmIChjb25kaXRpb24gPT09IHZvaWQgMCkgewogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgICAgaWYgKCF0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uaWYoZmFsc2UpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLmdlbi5pZihjb25kaXRpb24pOwogICAgICAgIHRoaXMuZXJyb3IoKTsKICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgIGVsc2UKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBmYWlsJGRhdGEoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKCF0aGlzLiRkYXRhKQogICAgICAgICAgcmV0dXJuIHRoaXMuZmFpbChjb25kaXRpb24pOwogICAgICAgIGNvbnN0IHsgc2NoZW1hQ29kZSB9ID0gdGhpczsKICAgICAgICB0aGlzLmZhaWwoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICE9PSB1bmRlZmluZWQgJiYgKCR7KDAsIGNvZGVnZW5fMS5vcikodGhpcy5pbnZhbGlkJGRhdGEoKSwgY29uZGl0aW9uKX0pYCk7CiAgICAgIH0KICAgICAgZXJyb3IoYXBwZW5kLCBlcnJvclBhcmFtcywgZXJyb3JQYXRocykgewogICAgICAgIGlmIChlcnJvclBhcmFtcykgewogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoZXJyb3JQYXJhbXMpOwogICAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgICAgIHRoaXMuc2V0UGFyYW1zKHt9KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICBfZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKSB7CiAgICAgICAgOwogICAgICAgIChhcHBlbmQgPyBlcnJvcnNfMS5yZXBvcnRFeHRyYUVycm9yIDogZXJyb3JzXzEucmVwb3J0RXJyb3IpKHRoaXMsIHRoaXMuZGVmLmVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICAkZGF0YUVycm9yKCkgewogICAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuJGRhdGFFcnJvciB8fCBlcnJvcnNfMS5rZXl3b3JkJERhdGFFcnJvcik7CiAgICAgIH0KICAgICAgcmVzZXQoKSB7CiAgICAgICAgaWYgKHRoaXMuZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCAidHJhY2tFcnJvcnMiIHRvIGtleXdvcmQgZGVmaW5pdGlvbicpOwogICAgICAgICgwLCBlcnJvcnNfMS5yZXNldEVycm9yc0NvdW50KSh0aGlzLmdlbiwgdGhpcy5lcnJzQ291bnQpOwogICAgICB9CiAgICAgIG9rKGNvbmQpIHsKICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgdGhpcy5nZW4uaWYoY29uZCk7CiAgICAgIH0KICAgICAgc2V0UGFyYW1zKG9iaiwgYXNzaWduKSB7CiAgICAgICAgaWYgKGFzc2lnbikKICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5wYXJhbXMsIG9iaik7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5wYXJhbXMgPSBvYmo7CiAgICAgIH0KICAgICAgYmxvY2skZGF0YSh2YWxpZCwgY29kZUJsb2NrLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHRoaXMuZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICAgIHRoaXMuY2hlY2skZGF0YSh2YWxpZCwgJGRhdGFWYWxpZCk7CiAgICAgICAgICBjb2RlQmxvY2soKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBjaGVjayRkYXRhKHZhbGlkID0gY29kZWdlbl8xLm5pbCwgJGRhdGFWYWxpZCA9IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiB9ID0gdGhpczsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ID09PSB1bmRlZmluZWRgLCAkZGF0YVZhbGlkKSk7CiAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgaWYgKHNjaGVtYVR5cGUubGVuZ3RoIHx8IGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgZ2VuLmVsc2VJZih0aGlzLmludmFsaWQkZGF0YSgpKTsKICAgICAgICAgIHRoaXMuJGRhdGFFcnJvcigpOwogICAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGdlbi5lbHNlKCk7CiAgICAgIH0KICAgICAgaW52YWxpZCRkYXRhKCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFDb2RlLCBzY2hlbWFUeXBlLCBkZWYsIGl0IH0gPSB0aGlzOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSh3cm9uZyREYXRhVHlwZSgpLCBpbnZhbGlkJERhdGFTY2hlbWEoKSk7CiAgICAgICAgZnVuY3Rpb24gd3JvbmckRGF0YVR5cGUoKSB7CiAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGgpIHsKICAgICAgICAgICAgaWYgKCEoc2NoZW1hQ29kZSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgICBjb25zdCBzdCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hVHlwZSkgPyBzY2hlbWFUeXBlIDogW3NjaGVtYVR5cGVdOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGVzKShzdCwgc2NoZW1hQ29kZSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8yLkRhdGFUeXBlLldyb25nKX1gOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGludmFsaWQkRGF0YVNjaGVtYSgpIHsKICAgICAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWRhdGVTY2hlbWFSZWYgPSBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUkZGF0YSIsIHsgcmVmOiBkZWYudmFsaWRhdGVTY2hlbWEgfSk7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCEke3ZhbGlkYXRlU2NoZW1hUmVmfSgke3NjaGVtYUNvZGV9KWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3Vic2NoZW1hKGFwcGwsIHZhbGlkKSB7CiAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gKDAsIHN1YnNjaGVtYV8xLmdldFN1YnNjaGVtYSkodGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYURhdGEpKHN1YnNjaGVtYSwgdGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYU1vZGUpKHN1YnNjaGVtYSwgYXBwbCk7CiAgICAgICAgY29uc3QgbmV4dENvbnRleHQgPSB7IC4uLnRoaXMuaXQsIC4uLnN1YnNjaGVtYSwgaXRlbXM6IHZvaWQgMCwgcHJvcHM6IHZvaWQgMCB9OwogICAgICAgIHN1YnNjaGVtYUNvZGUobmV4dENvbnRleHQsIHZhbGlkKTsKICAgICAgICByZXR1cm4gbmV4dENvbnRleHQ7CiAgICAgIH0KICAgICAgbWVyZ2VFdmFsdWF0ZWQoc2NoZW1hQ3h0LCB0b05hbWUpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hlbWFDeHQucHJvcHMsIGl0LnByb3BzLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUgJiYgc2NoZW1hQ3h0Lml0ZW1zICE9PSB2b2lkIDApIHsKICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoZW1hQ3h0Lml0ZW1zLCBpdC5pdGVtcywgdG9OYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hlbWFDeHQsIHZhbGlkKSB7CiAgICAgICAgY29uc3QgeyBpdCwgZ2VuIH0gPSB0aGlzOwogICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIChpdC5wcm9wcyAhPT0gdHJ1ZSB8fCBpdC5pdGVtcyAhPT0gdHJ1ZSkpIHsKICAgICAgICAgIGdlbi5pZih2YWxpZCwgKCkgPT4gdGhpcy5tZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIGNvZGVnZW5fMS5OYW1lKSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gS2V5d29yZEN4dDsKICAgIGZ1bmN0aW9uIGtleXdvcmRDb2RlKGl0LCBrZXl3b3JkLCBkZWYsIHJ1bGVUeXBlKSB7CiAgICAgIGNvbnN0IGN4dCA9IG5ldyBLZXl3b3JkQ3h0KGl0LCBkZWYsIGtleXdvcmQpOwogICAgICBpZiAoImNvZGUiIGluIGRlZikgewogICAgICAgIGRlZi5jb2RlKGN4dCwgcnVsZVR5cGUpOwogICAgICB9IGVsc2UgaWYgKGN4dC4kZGF0YSAmJiBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9IGVsc2UgaWYgKCJtYWNybyIgaW4gZGVmKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5tYWNyb0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoZGVmLmNvbXBpbGUgfHwgZGVmLnZhbGlkYXRlKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5mdW5jS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfQogICAgfQogICAgdmFyIEpTT05fUE9JTlRFUiA9IC9eXC8oPzpbXn5dfH4wfH4xKSokLzsKICAgIHZhciBSRUxBVElWRV9KU09OX1BPSU5URVIgPSAvXihbMC05XSspKCN8XC8oPzpbXn5dfH4wfH4xKSopPyQvOwogICAgZnVuY3Rpb24gZ2V0RGF0YSgkZGF0YSwgeyBkYXRhTGV2ZWwsIGRhdGFOYW1lcywgZGF0YVBhdGhBcnIgfSkgewogICAgICBsZXQganNvblBvaW50ZXI7CiAgICAgIGxldCBkYXRhOwogICAgICBpZiAoJGRhdGEgPT09ICIiKQogICAgICAgIHJldHVybiBuYW1lc18xLmRlZmF1bHQucm9vdERhdGE7CiAgICAgIGlmICgkZGF0YVswXSA9PT0gIi8iKSB7CiAgICAgICAgaWYgKCFKU09OX1BPSU5URVIudGVzdCgkZGF0YSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSlNPTi1wb2ludGVyOiAkeyRkYXRhfWApOwogICAgICAgIGpzb25Qb2ludGVyID0gJGRhdGE7CiAgICAgICAgZGF0YSA9IG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gUkVMQVRJVkVfSlNPTl9QT0lOVEVSLmV4ZWMoJGRhdGEpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAgY29uc3QgdXAgPSArbWF0Y2hlc1sxXTsKICAgICAgICBqc29uUG9pbnRlciA9IG1hdGNoZXNbMl07CiAgICAgICAgaWYgKGpzb25Qb2ludGVyID09PSAiIyIpIHsKICAgICAgICAgIGlmICh1cCA+PSBkYXRhTGV2ZWwpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1zZygicHJvcGVydHkvaW5kZXgiLCB1cCkpOwogICAgICAgICAgcmV0dXJuIGRhdGFQYXRoQXJyW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICB9CiAgICAgICAgaWYgKHVwID4gZGF0YUxldmVsKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJkYXRhIiwgdXApKTsKICAgICAgICBkYXRhID0gZGF0YU5hbWVzW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICBpZiAoIWpzb25Qb2ludGVyKQogICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgIH0KICAgICAgbGV0IGV4cHIgPSBkYXRhOwogICAgICBjb25zdCBzZWdtZW50cyA9IGpzb25Qb2ludGVyLnNwbGl0KCIvIik7CiAgICAgIGZvciAoY29uc3Qgc2VnbWVudCBvZiBzZWdtZW50cykgewogICAgICAgIGlmIChzZWdtZW50KSB7CiAgICAgICAgICBkYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KSgoMCwgdXRpbF8xLnVuZXNjYXBlSnNvblBvaW50ZXIpKHNlZ21lbnQpKX1gOwogICAgICAgICAgZXhwciA9ICgwLCBjb2RlZ2VuXzEuXylgJHtleHByfSAmJiAke2RhdGF9YDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIGZ1bmN0aW9uIGVycm9yTXNnKHBvaW50ZXJUeXBlLCB1cCkgewogICAgICAgIHJldHVybiBgQ2Fubm90IGFjY2VzcyAke3BvaW50ZXJUeXBlfSAke3VwfSBsZXZlbHMgdXAsIGN1cnJlbnQgbGV2ZWwgaXMgJHtkYXRhTGV2ZWx9YDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGdldERhdGE7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3ZhbGlkYXRpb25fZXJyb3IuanMKdmFyIHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcwp2YXIgcmVxdWlyZV9yZWZfZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgTWlzc2luZ1JlZkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKHJlc29sdmVyLCBiYXNlSWQsIHJlZiwgbXNnKSB7CiAgICAgICAgc3VwZXIobXNnIHx8IGBjYW4ndCByZXNvbHZlIHJlZmVyZW5jZSAke3JlZn0gZnJvbSBpZCAke2Jhc2VJZH1gKTsKICAgICAgICB0aGlzLm1pc3NpbmdSZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgICAgdGhpcy5taXNzaW5nU2NoZW1hID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkocmVzb2x2ZXIsIHRoaXMubWlzc2luZ1JlZikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IE1pc3NpbmdSZWZFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGV4cG9ydHMyLnJlc29sdmVSZWYgPSBleHBvcnRzMi5jb21waWxlU2NoZW1hID0gZXhwb3J0czIuU2NoZW1hRW52ID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBTY2hlbWFFbnYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGVudikgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmR5bmFtaWNBbmNob3JzID0ge307CiAgICAgICAgbGV0IHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBlbnYuc2NoZW1hID09ICJvYmplY3QiKQogICAgICAgICAgc2NoZW1hMiA9IGVudi5zY2hlbWE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hSWQgPSBlbnYuc2NoZW1hSWQ7CiAgICAgICAgdGhpcy5yb290ID0gZW52LnJvb3QgfHwgdGhpczsKICAgICAgICB0aGlzLmJhc2VJZCA9IChfYSA9IGVudi5iYXNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHNjaGVtYTIgPT09IG51bGwgfHwgc2NoZW1hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoZW1hMltlbnYuc2NoZW1hSWQgfHwgIiRpZCJdKTsKICAgICAgICB0aGlzLnNjaGVtYVBhdGggPSBlbnYuc2NoZW1hUGF0aDsKICAgICAgICB0aGlzLmxvY2FsUmVmcyA9IGVudi5sb2NhbFJlZnM7CiAgICAgICAgdGhpcy5tZXRhID0gZW52Lm1ldGE7CiAgICAgICAgdGhpcy4kYXN5bmMgPSBzY2hlbWEyID09PSBudWxsIHx8IHNjaGVtYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaGVtYTIuJGFzeW5jOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hRW52ID0gU2NoZW1hRW52OwogICAgZnVuY3Rpb24gY29tcGlsZVNjaGVtYShzY2gpIHsKICAgICAgY29uc3QgX3NjaCA9IGdldENvbXBpbGluZ1NjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgIGlmIChfc2NoKQogICAgICAgIHJldHVybiBfc2NoOwogICAgICBjb25zdCByb290SWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHNjaC5yb290LmJhc2VJZCk7CiAgICAgIGNvbnN0IHsgZXM1LCBsaW5lcyB9ID0gdGhpcy5vcHRzLmNvZGU7CiAgICAgIGNvbnN0IHsgb3duUHJvcGVydGllcyB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBnZW4gPSBuZXcgY29kZWdlbl8xLkNvZGVHZW4odGhpcy5zY29wZSwgeyBlczUsIGxpbmVzLCBvd25Qcm9wZXJ0aWVzIH0pOwogICAgICBsZXQgX1ZhbGlkYXRpb25FcnJvcjsKICAgICAgaWYgKHNjaC4kYXN5bmMpIHsKICAgICAgICBfVmFsaWRhdGlvbkVycm9yID0gZ2VuLnNjb3BlVmFsdWUoIkVycm9yIiwgewogICAgICAgICAgcmVmOiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdCwKICAgICAgICAgIGNvZGU6ICgwLCBjb2RlZ2VuXzEuXylgcmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yIikuZGVmYXVsdGAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZGF0ZU5hbWUgPSBnZW4uc2NvcGVOYW1lKCJ2YWxpZGF0ZSIpOwogICAgICBzY2gudmFsaWRhdGVOYW1lID0gdmFsaWRhdGVOYW1lOwogICAgICBjb25zdCBzY2hlbWFDeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGFsbEVycm9yczogdGhpcy5vcHRzLmFsbEVycm9ycywKICAgICAgICBkYXRhOiBuYW1lc18xLmRlZmF1bHQuZGF0YSwKICAgICAgICBwYXJlbnREYXRhOiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwKICAgICAgICBwYXJlbnREYXRhUHJvcGVydHk6IG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksCiAgICAgICAgZGF0YU5hbWVzOiBbbmFtZXNfMS5kZWZhdWx0LmRhdGFdLAogICAgICAgIGRhdGFQYXRoQXJyOiBbY29kZWdlbl8xLm5pbF0sCiAgICAgICAgLy8gVE9ETyBjYW4gaXRzIGxlbmd0aCBiZSB1c2VkIGFzIGRhdGFMZXZlbCBpZiBuaWwgaXMgcmVtb3ZlZD8KICAgICAgICBkYXRhTGV2ZWw6IDAsCiAgICAgICAgZGF0YVR5cGVzOiBbXSwKICAgICAgICBkZWZpbmVkUHJvcGVydGllczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSwKICAgICAgICB0b3BTY2hlbWFSZWY6IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCB0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLnNjaGVtYSwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaC5zY2hlbWEpIH0gOiB7IHJlZjogc2NoLnNjaGVtYSB9KSwKICAgICAgICB2YWxpZGF0ZU5hbWUsCiAgICAgICAgVmFsaWRhdGlvbkVycm9yOiBfVmFsaWRhdGlvbkVycm9yLAogICAgICAgIHNjaGVtYTogc2NoLnNjaGVtYSwKICAgICAgICBzY2hlbWFFbnY6IHNjaCwKICAgICAgICByb290SWQsCiAgICAgICAgYmFzZUlkOiBzY2guYmFzZUlkIHx8IHJvb3RJZCwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IHNjaC5zY2hlbWFQYXRoIHx8ICh0aGlzLm9wdHMuanRkID8gIiIgOiAiIyIpLAogICAgICAgIGVycm9yUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAiImAsCiAgICAgICAgb3B0czogdGhpcy5vcHRzLAogICAgICAgIHNlbGY6IHRoaXMKICAgICAgfTsKICAgICAgbGV0IHNvdXJjZUNvZGU7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5fY29tcGlsYXRpb25zLmFkZChzY2gpOwogICAgICAgICgwLCB2YWxpZGF0ZV8xLnZhbGlkYXRlRnVuY3Rpb25Db2RlKShzY2hlbWFDeHQpOwogICAgICAgIGdlbi5vcHRpbWl6ZSh0aGlzLm9wdHMuY29kZS5vcHRpbWl6ZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGVDb2RlID0gZ2VuLnRvU3RyaW5nKCk7CiAgICAgICAgc291cmNlQ29kZSA9IGAke2dlbi5zY29wZVJlZnMobmFtZXNfMS5kZWZhdWx0LnNjb3BlKX1yZXR1cm4gJHt2YWxpZGF0ZUNvZGV9YDsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUucHJvY2VzcykKICAgICAgICAgIHNvdXJjZUNvZGUgPSB0aGlzLm9wdHMuY29kZS5wcm9jZXNzKHNvdXJjZUNvZGUsIHNjaCk7CiAgICAgICAgY29uc3QgbWFrZVZhbGlkYXRlID0gbmV3IEZ1bmN0aW9uKGAke25hbWVzXzEuZGVmYXVsdC5zZWxmfWAsIGAke25hbWVzXzEuZGVmYXVsdC5zY29wZX1gLCBzb3VyY2VDb2RlKTsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IG1ha2VWYWxpZGF0ZSh0aGlzLCB0aGlzLnNjb3BlLmdldCgpKTsKICAgICAgICB0aGlzLnNjb3BlLnZhbHVlKHZhbGlkYXRlTmFtZSwgeyByZWY6IHZhbGlkYXRlIH0pOwogICAgICAgIHZhbGlkYXRlLmVycm9ycyA9IG51bGw7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hID0gc2NoLnNjaGVtYTsKICAgICAgICB2YWxpZGF0ZS5zY2hlbWFFbnYgPSBzY2g7CiAgICAgICAgaWYgKHNjaC4kYXN5bmMpCiAgICAgICAgICB2YWxpZGF0ZS4kYXN5bmMgPSB0cnVlOwogICAgICAgIGlmICh0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUpIHsKICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZSA9IHsgdmFsaWRhdGVOYW1lLCB2YWxpZGF0ZUNvZGUsIHNjb3BlVmFsdWVzOiBnZW4uX3ZhbHVlcyB9OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5vcHRzLnVuZXZhbHVhdGVkKSB7CiAgICAgICAgICBjb25zdCB7IHByb3BzLCBpdGVtcyB9ID0gc2NoZW1hQ3h0OwogICAgICAgICAgdmFsaWRhdGUuZXZhbHVhdGVkID0gewogICAgICAgICAgICBwcm9wczogcHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IHByb3BzLAogICAgICAgICAgICBpdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IGl0ZW1zLAogICAgICAgICAgICBkeW5hbWljUHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUsCiAgICAgICAgICAgIGR5bmFtaWNJdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0ZS5zb3VyY2UpCiAgICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZS5ldmFsdWF0ZWQgPSAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkodmFsaWRhdGUuZXZhbHVhdGVkKTsKICAgICAgICB9CiAgICAgICAgc2NoLnZhbGlkYXRlID0gdmFsaWRhdGU7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGU7CiAgICAgICAgZGVsZXRlIHNjaC52YWxpZGF0ZU5hbWU7CiAgICAgICAgaWYgKHNvdXJjZUNvZGUpCiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigiRXJyb3IgY29tcGlsaW5nIHNjaGVtYSwgZnVuY3Rpb24gY29kZToiLCBzb3VyY2VDb2RlKTsKICAgICAgICB0aHJvdyBlOwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5kZWxldGUoc2NoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY29tcGlsZVNjaGVtYSA9IGNvbXBpbGVTY2hlbWE7CiAgICBmdW5jdGlvbiByZXNvbHZlUmVmKHJvb3QsIGJhc2VJZCwgcmVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgcmVmKTsKICAgICAgY29uc3Qgc2NoT3JGdW5jID0gcm9vdC5yZWZzW3JlZl07CiAgICAgIGlmIChzY2hPckZ1bmMpCiAgICAgICAgcmV0dXJuIHNjaE9yRnVuYzsKICAgICAgbGV0IF9zY2ggPSByZXNvbHZlLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHNjaGVtYTIgPSAoX2EgPSByb290LmxvY2FsUmVmcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3JlZl07CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGlmIChzY2hlbWEyKQogICAgICAgICAgX3NjaCA9IG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkKICAgICAgICByZXR1cm47CiAgICAgIHJldHVybiByb290LnJlZnNbcmVmXSA9IGlubGluZU9yQ29tcGlsZS5jYWxsKHRoaXMsIF9zY2gpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVJlZiA9IHJlc29sdmVSZWY7CiAgICBmdW5jdGlvbiBpbmxpbmVPckNvbXBpbGUoc2NoKSB7CiAgICAgIGlmICgoMCwgcmVzb2x2ZV8xLmlubGluZVJlZikoc2NoLnNjaGVtYSwgdGhpcy5vcHRzLmlubGluZVJlZnMpKQogICAgICAgIHJldHVybiBzY2guc2NoZW1hOwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gc2NoIDogY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRDb21waWxpbmdTY2hlbWEoc2NoRW52KSB7CiAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHRoaXMuX2NvbXBpbGF0aW9ucykgewogICAgICAgIGlmIChzYW1lU2NoZW1hRW52KHNjaCwgc2NoRW52KSkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGdldENvbXBpbGluZ1NjaGVtYTsKICAgIGZ1bmN0aW9uIHNhbWVTY2hlbWFFbnYoczEsIHMyKSB7CiAgICAgIHJldHVybiBzMS5zY2hlbWEgPT09IHMyLnNjaGVtYSAmJiBzMS5yb290ID09PSBzMi5yb290ICYmIHMxLmJhc2VJZCA9PT0gczIuYmFzZUlkOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShyb290LCByZWYpIHsKICAgICAgbGV0IHNjaDsKICAgICAgd2hpbGUgKHR5cGVvZiAoc2NoID0gdGhpcy5yZWZzW3JlZl0pID09ICJzdHJpbmciKQogICAgICAgIHJlZiA9IHNjaDsKICAgICAgcmV0dXJuIHNjaCB8fCB0aGlzLnNjaGVtYXNbcmVmXSB8fCByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVTY2hlbWEocm9vdCwgcmVmKSB7CiAgICAgIGNvbnN0IHAgPSB0aGlzLm9wdHMudXJpUmVzb2x2ZXIucGFyc2UocmVmKTsKICAgICAgY29uc3QgcmVmUGF0aCA9ICgwLCByZXNvbHZlXzEuX2dldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHApOwogICAgICBsZXQgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCByb290LmJhc2VJZCwgdm9pZCAwKTsKICAgICAgaWYgKE9iamVjdC5rZXlzKHJvb3Quc2NoZW1hKS5sZW5ndGggPiAwICYmIHJlZlBhdGggPT09IGJhc2VJZCkgewogICAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHJvb3QpOwogICAgICB9CiAgICAgIGNvbnN0IGlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmUGF0aCk7CiAgICAgIGNvbnN0IHNjaE9yUmVmID0gdGhpcy5yZWZzW2lkXSB8fCB0aGlzLnNjaGVtYXNbaWRdOwogICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJzdHJpbmciKSB7CiAgICAgICAgY29uc3Qgc2NoID0gcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsIHNjaE9yUmVmKTsKICAgICAgICBpZiAodHlwZW9mIChzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2guc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoKTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIChzY2hPclJlZiA9PT0gbnVsbCB8fCBzY2hPclJlZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoT3JSZWYuc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoIXNjaE9yUmVmLnZhbGlkYXRlKQogICAgICAgIGNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2hPclJlZik7CiAgICAgIGlmIChpZCA9PT0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmKSkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyIH0gPSBzY2hPclJlZjsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgY29uc3Qgc2NoSWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICBpZiAoc2NoSWQpCiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgcmV0dXJuIG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoT3JSZWYpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IHJlc29sdmVTY2hlbWE7CiAgICB2YXIgUFJFVkVOVF9TQ09QRV9DSEFOR0UgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJwcm9wZXJ0aWVzIiwKICAgICAgInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgImVudW0iLAogICAgICAiZGVwZW5kZW5jaWVzIiwKICAgICAgImRlZmluaXRpb25zIgogICAgXSk7CiAgICBmdW5jdGlvbiBnZXRKc29uUG9pbnRlcihwYXJzZWRSZWYsIHsgYmFzZUlkLCBzY2hlbWE6IHNjaGVtYTIsIHJvb3QgfSkgewogICAgICB2YXIgX2E7CiAgICAgIGlmICgoKF9hID0gcGFyc2VkUmVmLmZyYWdtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbMF0pICE9PSAiLyIpCiAgICAgICAgcmV0dXJuOwogICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFyc2VkUmVmLmZyYWdtZW50LnNsaWNlKDEpLnNwbGl0KCIvIikpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBwYXJ0U2NoZW1hID0gc2NoZW1hMlsoMCwgdXRpbF8xLnVuZXNjYXBlRnJhZ21lbnQpKHBhcnQpXTsKICAgICAgICBpZiAocGFydFNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHNjaGVtYTIgPSBwYXJ0U2NoZW1hOwogICAgICAgIGNvbnN0IHNjaElkID0gdHlwZW9mIHNjaGVtYTIgPT09ICJvYmplY3QiICYmIHNjaGVtYTJbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICBpZiAoIVBSRVZFTlRfU0NPUEVfQ0hBTkdFLmhhcyhwYXJ0KSAmJiBzY2hJZCkgewogICAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoSWQpOwogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgZW52OwogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgIT0gImJvb2xlYW4iICYmIHNjaGVtYTIuJHJlZiAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgdGhpcy5SVUxFUykpIHsKICAgICAgICBjb25zdCAkcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoZW1hMi4kcmVmKTsKICAgICAgICBlbnYgPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgJHJlZik7CiAgICAgIH0KICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICBlbnYgPSBlbnYgfHwgbmV3IFNjaGVtYUVudih7IHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgaWYgKGVudi5zY2hlbWEgIT09IGVudi5yb290LnNjaGVtYSkKICAgICAgICByZXR1cm4gZW52OwogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24KdmFyIHJlcXVpcmVfZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRpZDogImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9hanYtdmFsaWRhdG9yL2Fqdi9tYXN0ZXIvbGliL3JlZnMvZGF0YS5qc29uIyIsCiAgICAgIGRlc2NyaXB0aW9uOiAiTWV0YS1zY2hlbWEgZm9yICRkYXRhIHJlZmVyZW5jZSAoSlNPTiBBbnlTY2hlbWEgZXh0ZW5zaW9uIHByb3Bvc2FsKSIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICByZXF1aXJlZDogWyIkZGF0YSJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGRhdGE6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgYW55T2Y6IFt7IGZvcm1hdDogInJlbGF0aXZlLWpzb24tcG9pbnRlciIgfSwgeyBmb3JtYXQ6ICJqc29uLXBvaW50ZXIiIH1dCiAgICAgICAgfQogICAgICB9LAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzCnZhciByZXF1aXJlX3Njb3BlZENoYXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIEhFWCA9IHsKICAgICAgMDogMCwKICAgICAgMTogMSwKICAgICAgMjogMiwKICAgICAgMzogMywKICAgICAgNDogNCwKICAgICAgNTogNSwKICAgICAgNjogNiwKICAgICAgNzogNywKICAgICAgODogOCwKICAgICAgOTogOSwKICAgICAgYTogMTAsCiAgICAgIEE6IDEwLAogICAgICBiOiAxMSwKICAgICAgQjogMTEsCiAgICAgIGM6IDEyLAogICAgICBDOiAxMiwKICAgICAgZDogMTMsCiAgICAgIEQ6IDEzLAogICAgICBlOiAxNCwKICAgICAgRTogMTQsCiAgICAgIGY6IDE1LAogICAgICBGOiAxNQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgSEVYCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBIRVggfSA9IHJlcXVpcmVfc2NvcGVkQ2hhcnMoKTsKICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUlQdjQoaG9zdCkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICIuIikgPCAzKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY0OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBob3N0Lm1hdGNoKC9eKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSkkL3UpIHx8IFtdOwogICAgICBjb25zdCBbYWRkcmVzc10gPSBtYXRjaGVzOwogICAgICBpZiAoYWRkcmVzcykgewogICAgICAgIHJldHVybiB7IGhvc3Q6IHN0cmlwTGVhZGluZ1plcm9zKGFkZHJlc3MsICIuIiksIGlzSVBWNDogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGlucHV0LCBrZWVwWmVybyA9IGZhbHNlKSB7CiAgICAgIGxldCBhY2MgPSAiIjsKICAgICAgbGV0IHN0cmlwID0gdHJ1ZTsKICAgICAgZm9yIChjb25zdCBjIG9mIGlucHV0KSB7CiAgICAgICAgaWYgKEhFWFtjXSA9PT0gdm9pZCAwKSByZXR1cm4gdm9pZCAwOwogICAgICAgIGlmIChjICE9PSAiMCIgJiYgc3RyaXAgPT09IHRydWUpIHN0cmlwID0gZmFsc2U7CiAgICAgICAgaWYgKCFzdHJpcCkgYWNjICs9IGM7CiAgICAgIH0KICAgICAgaWYgKGtlZXBaZXJvICYmIGFjYy5sZW5ndGggPT09IDApIGFjYyA9ICIwIjsKICAgICAgcmV0dXJuIGFjYzsKICAgIH0KICAgIGZ1bmN0aW9uIGdldElQVjYoaW5wdXQpIHsKICAgICAgbGV0IHRva2VuQ291bnQgPSAwOwogICAgICBjb25zdCBvdXRwdXQgPSB7IGVycm9yOiBmYWxzZSwgYWRkcmVzczogIiIsIHpvbmU6ICIiIH07CiAgICAgIGNvbnN0IGFkZHJlc3MgPSBbXTsKICAgICAgY29uc3QgYnVmZmVyID0gW107CiAgICAgIGxldCBpc1pvbmUgPSBmYWxzZTsKICAgICAgbGV0IGVuZGlwdjZFbmNvdW50ZXJlZCA9IGZhbHNlOwogICAgICBsZXQgZW5kSXB2NiA9IGZhbHNlOwogICAgICBmdW5jdGlvbiBjb25zdW1lKCkgewogICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICBpZiAoaXNab25lID09PSBmYWxzZSkgewogICAgICAgICAgICBjb25zdCBoZXggPSBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQoYnVmZmVyKTsKICAgICAgICAgICAgaWYgKGhleCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgYWRkcmVzcy5wdXNoKGhleCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGJ1ZmZlci5sZW5ndGggPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3Vyc29yID0gaW5wdXRbaV07CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIlsiIHx8IGN1cnNvciA9PT0gIl0iKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIjoiKSB7CiAgICAgICAgICBpZiAoZW5kaXB2NkVuY291bnRlcmVkID09PSB0cnVlKSB7CiAgICAgICAgICAgIGVuZElwdjYgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0b2tlbkNvdW50Kys7CiAgICAgICAgICBhZGRyZXNzLnB1c2goIjoiKTsKICAgICAgICAgIGlmICh0b2tlbkNvdW50ID4gNykgewogICAgICAgICAgICBvdXRwdXQuZXJyb3IgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpIC0gMSA+PSAwICYmIGlucHV0W2kgLSAxXSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGVuZGlwdjZFbmNvdW50ZXJlZCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGN1cnNvciA9PT0gIiUiKSB7CiAgICAgICAgICBpZiAoIWNvbnN1bWUoKSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlzWm9uZSA9IHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKGN1cnNvcik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGJ1ZmZlci5sZW5ndGgpIHsKICAgICAgICBpZiAoaXNab25lKSB7CiAgICAgICAgICBvdXRwdXQuem9uZSA9IGJ1ZmZlci5qb2luKCIiKTsKICAgICAgICB9IGVsc2UgaWYgKGVuZElwdjYpIHsKICAgICAgICAgIGFkZHJlc3MucHVzaChidWZmZXIuam9pbigiIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcikpOwogICAgICAgIH0KICAgICAgfQogICAgICBvdXRwdXQuYWRkcmVzcyA9IGFkZHJlc3Muam9pbigiIik7CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY2KGhvc3QsIG9wdHMgPSB7fSkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICI6IikgPCAyKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY2OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IGlwdjYgPSBnZXRJUFY2KGhvc3QpOwogICAgICBpZiAoIWlwdjYuZXJyb3IpIHsKICAgICAgICBsZXQgbmV3SG9zdCA9IGlwdjYuYWRkcmVzczsKICAgICAgICBsZXQgZXNjYXBlZEhvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgaWYgKGlwdjYuem9uZSkgewogICAgICAgICAgbmV3SG9zdCArPSAiJSIgKyBpcHY2LnpvbmU7CiAgICAgICAgICBlc2NhcGVkSG9zdCArPSAiJTI1IiArIGlwdjYuem9uZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsgaG9zdDogbmV3SG9zdCwgZXNjYXBlZEhvc3QsIGlzSVBWNjogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaXBMZWFkaW5nWmVyb3Moc3RyMiwgdG9rZW4pIHsKICAgICAgbGV0IG91dCA9ICIiOwogICAgICBsZXQgc2tpcCA9IHRydWU7CiAgICAgIGNvbnN0IGwgPSBzdHIyLmxlbmd0aDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHsKICAgICAgICBjb25zdCBjID0gc3RyMltpXTsKICAgICAgICBpZiAoYyA9PT0gIjAiICYmIHNraXApIHsKICAgICAgICAgIGlmIChpICsgMSA8PSBsICYmIHN0cjJbaSArIDFdID09PSB0b2tlbiB8fCBpICsgMSA9PT0gbCkgewogICAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICAgICAgc2tpcCA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoYyA9PT0gdG9rZW4pIHsKICAgICAgICAgICAgc2tpcCA9IHRydWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRUb2tlbihzdHIyLCB0b2tlbikgewogICAgICBsZXQgaW5kID0gMDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgaWYgKHN0cjJbaV0gPT09IHRva2VuKSBpbmQrKzsKICAgICAgfQogICAgICByZXR1cm4gaW5kOwogICAgfQogICAgdmFyIFJEUzEgPSAvXlwuXC4/XC8vdTsKICAgIHZhciBSRFMyID0gL15cL1wuKD86XC98JCkvdTsKICAgIHZhciBSRFMzID0gL15cL1wuXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzUgPSAvXlwvPyg/Oi58XG4pKj8oPz1cL3wkKS91OwogICAgZnVuY3Rpb24gcmVtb3ZlRG90U2VnbWVudHMoaW5wdXQpIHsKICAgICAgY29uc3Qgb3V0cHV0ID0gW107CiAgICAgIHdoaWxlIChpbnB1dC5sZW5ndGgpIHsKICAgICAgICBpZiAoaW5wdXQubWF0Y2goUkRTMSkpIHsKICAgICAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShSRFMxLCAiIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMyKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzIsICIvIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMzKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzMsICIvIik7CiAgICAgICAgICBvdXRwdXQucG9wKCk7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PT0gIi4iIHx8IGlucHV0ID09PSAiLi4iKSB7CiAgICAgICAgICBpbnB1dCA9ICIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpbSA9IGlucHV0Lm1hdGNoKFJEUzUpOwogICAgICAgICAgaWYgKGltKSB7CiAgICAgICAgICAgIGNvbnN0IHMgPSBpbVswXTsKICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShzLmxlbmd0aCk7CiAgICAgICAgICAgIG91dHB1dC5wdXNoKHMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGRvdCBzZWdtZW50IGNvbmRpdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0cHV0LmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcoY29tcG9uZW50cywgZXNjKSB7CiAgICAgIGNvbnN0IGZ1bmMgPSBlc2MgIT09IHRydWUgPyBlc2NhcGUgOiB1bmVzY2FwZTsKICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnNjaGVtZSA9IGZ1bmMoY29tcG9uZW50cy5zY2hlbWUpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnVzZXJpbmZvICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnVzZXJpbmZvID0gZnVuYyhjb21wb25lbnRzLnVzZXJpbmZvKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmhvc3QgPSBmdW5jKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZnVuYyhjb21wb25lbnRzLnBhdGgpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnF1ZXJ5ID0gZnVuYyhjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5mcmFnbWVudCA9IGZ1bmMoY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucykgewogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICAgIHVyaVRva2Vucy5wdXNoKCJAIik7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgbGV0IGhvc3QgPSB1bmVzY2FwZShjb21wb25lbnRzLmhvc3QpOwogICAgICAgIGNvbnN0IGlwVjRyZXMgPSBub3JtYWxpemVJUHY0KGhvc3QpOwogICAgICAgIGlmIChpcFY0cmVzLmlzSVBWNCkgewogICAgICAgICAgaG9zdCA9IGlwVjRyZXMuaG9zdDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgaXBWNnJlcyA9IG5vcm1hbGl6ZUlQdjYoaXBWNHJlcy5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICBpZiAoaXBWNnJlcy5pc0lQVjYgPT09IHRydWUpIHsKICAgICAgICAgICAgaG9zdCA9IGBbJHtpcFY2cmVzLmVzY2FwZWRIb3N0fV1gOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaG9zdCA9IGNvbXBvbmVudHMuaG9zdDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2goaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJudW1iZXIiIHx8IHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIjoiKTsKICAgICAgICB1cmlUb2tlbnMucHVzaChTdHJpbmcoY29tcG9uZW50cy5wb3J0KSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5sZW5ndGggPyB1cmlUb2tlbnMuam9pbigiIikgOiB2b2lkIDA7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIHJlY29tcG9zZUF1dGhvcml0eSwKICAgICAgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcsCiAgICAgIHJlbW92ZURvdFNlZ21lbnRzLAogICAgICBub3JtYWxpemVJUHY0LAogICAgICBub3JtYWxpemVJUHY2LAogICAgICBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3NjaGVtZXMuanMKdmFyIHJlcXVpcmVfc2NoZW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfdXJpID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBub3JtYWxpemVJUHY2LCBub3JtYWxpemVJUHY0LCByZW1vdmVEb3RTZWdtZW50cywgcmVjb21wb3NlQXV0aG9yaXR5LCBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyB9ID0gcmVxdWlyZV91dGlsczIoKTsKICAgIHZhciBTQ0hFTUVTID0gcmVxdWlyZV9zY2hlbWVzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemUodXJpLCBvcHRpb25zKSB7CiAgICAgIGlmICh0eXBlb2YgdXJpID09PSAic3RyaW5nIikgewogICAgICAgIHVyaSA9IHNlcmlhbGl6ZShwYXJzZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpID09PSAib2JqZWN0IikgewogICAgICAgIHVyaSA9IHBhcnNlKHNlcmlhbGl6ZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShiYXNlVVJJLCByZWxhdGl2ZVVSSSwgb3B0aW9ucykgewogICAgICBjb25zdCBzY2hlbWVsZXNzT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBzY2hlbWU6ICJudWxsIiB9LCBvcHRpb25zKTsKICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ29tcG9uZW50cyhwYXJzZShiYXNlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHBhcnNlKHJlbGF0aXZlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHNjaGVtZWxlc3NPcHRpb25zLCB0cnVlKTsKICAgICAgcmV0dXJuIHNlcmlhbGl6ZShyZXNvbHZlZCwgeyAuLi5zY2hlbWVsZXNzT3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRzKGJhc2UsIHJlbGF0aXZlLCBvcHRpb25zLCBza2lwTm9ybWFsaXphdGlvbikgewogICAgICBjb25zdCB0YXJnZXQgPSB7fTsKICAgICAgaWYgKCFza2lwTm9ybWFsaXphdGlvbikgewogICAgICAgIGJhc2UgPSBwYXJzZShzZXJpYWxpemUoYmFzZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICAgIHJlbGF0aXZlID0gcGFyc2Uoc2VyaWFsaXplKHJlbGF0aXZlLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiByZWxhdGl2ZS5zY2hlbWUpIHsKICAgICAgICB0YXJnZXQuc2NoZW1lID0gcmVsYXRpdmUuc2NoZW1lOwogICAgICAgIHRhcmdldC51c2VyaW5mbyA9IHJlbGF0aXZlLnVzZXJpbmZvOwogICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoIHx8ICIiKTsKICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocmVsYXRpdmUudXNlcmluZm8gIT09IHZvaWQgMCB8fCByZWxhdGl2ZS5ob3N0ICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUucG9ydCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICAgIHRhcmdldC5wb3J0ID0gcmVsYXRpdmUucG9ydDsKICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFyZWxhdGl2ZS5wYXRoKSB7CiAgICAgICAgICAgIHRhcmdldC5wYXRoID0gYmFzZS5wYXRoOwogICAgICAgICAgICBpZiAocmVsYXRpdmUucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IGJhc2UucXVlcnk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChyZWxhdGl2ZS5wYXRoLmNoYXJBdCgwKSA9PT0gIi8iKSB7CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBpZiAoKGJhc2UudXNlcmluZm8gIT09IHZvaWQgMCB8fCBiYXNlLmhvc3QgIT09IHZvaWQgMCB8fCBiYXNlLnBvcnQgIT09IHZvaWQgMCkgJiYgIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSAiLyIgKyByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aC5zbGljZSgwLCBiYXNlLnBhdGgubGFzdEluZGV4T2YoIi8iKSArIDEpICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyh0YXJnZXQucGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgICB9CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSBiYXNlLnVzZXJpbmZvOwogICAgICAgICAgdGFyZ2V0Lmhvc3QgPSBiYXNlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IGJhc2UucG9ydDsKICAgICAgICB9CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IGJhc2Uuc2NoZW1lOwogICAgICB9CiAgICAgIHRhcmdldC5mcmFnbWVudCA9IHJlbGF0aXZlLmZyYWdtZW50OwogICAgICByZXR1cm4gdGFyZ2V0OwogICAgfQogICAgZnVuY3Rpb24gZXF1YWwodXJpQSwgdXJpQiwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaUEgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQSA9IHVuZXNjYXBlKHVyaUEpOwogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQSwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQSA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlBLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgdXJpQiA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlCID0gdW5lc2NhcGUodXJpQik7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhwYXJzZSh1cmlCLCBvcHRpb25zKSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpQiA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmlCID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHVyaUIsIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaUEudG9Mb3dlckNhc2UoKSA9PT0gdXJpQi50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gc2VyaWFsaXplKGNtcHRzLCBvcHRzKSB7CiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7CiAgICAgICAgaG9zdDogY21wdHMuaG9zdCwKICAgICAgICBzY2hlbWU6IGNtcHRzLnNjaGVtZSwKICAgICAgICB1c2VyaW5mbzogY21wdHMudXNlcmluZm8sCiAgICAgICAgcG9ydDogY21wdHMucG9ydCwKICAgICAgICBwYXRoOiBjbXB0cy5wYXRoLAogICAgICAgIHF1ZXJ5OiBjbXB0cy5xdWVyeSwKICAgICAgICBuaWQ6IGNtcHRzLm5pZCwKICAgICAgICBuc3M6IGNtcHRzLm5zcywKICAgICAgICB1dWlkOiBjbXB0cy51dWlkLAogICAgICAgIGZyYWdtZW50OiBjbXB0cy5mcmFnbWVudCwKICAgICAgICByZWZlcmVuY2U6IGNtcHRzLnJlZmVyZW5jZSwKICAgICAgICByZXNvdXJjZU5hbWU6IGNtcHRzLnJlc291cmNlTmFtZSwKICAgICAgICBzZWN1cmU6IGNtcHRzLnNlY3VyZSwKICAgICAgICBlcnJvcjogIiIKICAgICAgfTsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IGNvbXBvbmVudHMuc2NoZW1lIHx8ICIiKS50b0xvd2VyQ2FzZSgpXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5zZXJpYWxpemUpIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKGNvbXBvbmVudHMsIG9wdGlvbnMpOwogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEVzY2FwZSkgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBjb21wb25lbnRzLnBhdGggPSBjb21wb25lbnRzLnBhdGguc3BsaXQoIiUzQSIpLmpvaW4oIjoiKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gdW5lc2NhcGUoY29tcG9uZW50cy5wYXRoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBjb21wb25lbnRzLnNjaGVtZSkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMuc2NoZW1lLCAiOiIpOwogICAgICB9CiAgICAgIGNvbnN0IGF1dGhvcml0eSA9IHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGF1dGhvcml0eSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IikgewogICAgICAgICAgdXJpVG9rZW5zLnB1c2goIi8vIik7CiAgICAgICAgfQogICAgICAgIHVyaVRva2Vucy5wdXNoKGF1dGhvcml0eSk7CiAgICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAmJiBjb21wb25lbnRzLnBhdGguY2hhckF0KDApICE9PSAiLyIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnBhdGggIT09IHZvaWQgMCkgewogICAgICAgIGxldCBzID0gY29tcG9uZW50cy5wYXRoOwogICAgICAgIGlmICghb3B0aW9ucy5hYnNvbHV0ZVBhdGggJiYgKCFzY2hlbWVIYW5kbGVyIHx8ICFzY2hlbWVIYW5kbGVyLmFic29sdXRlUGF0aCkpIHsKICAgICAgICAgIHMgPSByZW1vdmVEb3RTZWdtZW50cyhzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGF1dGhvcml0eSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBzID0gcy5yZXBsYWNlKC9eXC9cLy91LCAiLyUyRiIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChzKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5xdWVyeSAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIj8iLCBjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIiMiLCBjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmpvaW4oIiIpOwogICAgfQogICAgdmFyIGhleExvb2tVcCA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEyNyB9LCAodiwgaykgPT4gL1teISIkJicoKSorLFwtLjs9X2BhLXp7fX5dL3UudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGspKSk7CiAgICBmdW5jdGlvbiBub25TaW1wbGVEb21haW4odmFsdWUpIHsKICAgICAgbGV0IGNvZGUgPSAwOwogICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdmFsdWUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHsKICAgICAgICBjb2RlID0gdmFsdWUuY2hhckNvZGVBdChpKTsKICAgICAgICBpZiAoY29kZSA+IDEyNiB8fCBoZXhMb29rVXBbY29kZV0pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICB2YXIgVVJJX1BBUlNFID0gL14oPzooW14jLzo/XSspOik/KD86XC9cLygoPzooW14jLz9AXSopQCk/KFxbW14jLz9cXV0rXF18W14jLzo/XSopKD86OihcZCopKT8pKT8oW14jP10qKSg/Olw/KFteI10qKSk/KD86IygoPzoufFtcblxyXSkqKSk/L3U7CiAgICBmdW5jdGlvbiBwYXJzZSh1cmksIG9wdHMpIHsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCBwYXJzZWQgPSB7CiAgICAgICAgc2NoZW1lOiB2b2lkIDAsCiAgICAgICAgdXNlcmluZm86IHZvaWQgMCwKICAgICAgICBob3N0OiAiIiwKICAgICAgICBwb3J0OiB2b2lkIDAsCiAgICAgICAgcGF0aDogIiIsCiAgICAgICAgcXVlcnk6IHZvaWQgMCwKICAgICAgICBmcmFnbWVudDogdm9pZCAwCiAgICAgIH07CiAgICAgIGNvbnN0IGdvdEVuY29kaW5nID0gdXJpLmluZGV4T2YoIiUiKSAhPT0gLTE7CiAgICAgIGxldCBpc0lQID0gZmFsc2U7CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSA9PT0gInN1ZmZpeCIpIHVyaSA9IChvcHRpb25zLnNjaGVtZSA/IG9wdGlvbnMuc2NoZW1lICsgIjoiIDogIiIpICsgIi8vIiArIHVyaTsKICAgICAgY29uc3QgbWF0Y2hlcyA9IHVyaS5tYXRjaChVUklfUEFSU0UpOwogICAgICBpZiAobWF0Y2hlcykgewogICAgICAgIHBhcnNlZC5zY2hlbWUgPSBtYXRjaGVzWzFdOwogICAgICAgIHBhcnNlZC51c2VyaW5mbyA9IG1hdGNoZXNbM107CiAgICAgICAgcGFyc2VkLmhvc3QgPSBtYXRjaGVzWzRdOwogICAgICAgIHBhcnNlZC5wb3J0ID0gcGFyc2VJbnQobWF0Y2hlc1s1XSwgMTApOwogICAgICAgIHBhcnNlZC5wYXRoID0gbWF0Y2hlc1s2XSB8fCAiIjsKICAgICAgICBwYXJzZWQucXVlcnkgPSBtYXRjaGVzWzddOwogICAgICAgIHBhcnNlZC5mcmFnbWVudCA9IG1hdGNoZXNbOF07CiAgICAgICAgaWYgKGlzTmFOKHBhcnNlZC5wb3J0KSkgewogICAgICAgICAgcGFyc2VkLnBvcnQgPSBtYXRjaGVzWzVdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyc2VkLmhvc3QpIHsKICAgICAgICAgIGNvbnN0IGlwdjRyZXN1bHQgPSBub3JtYWxpemVJUHY0KHBhcnNlZC5ob3N0KTsKICAgICAgICAgIGlmIChpcHY0cmVzdWx0LmlzSVBWNCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaXB2NnJlc3VsdCA9IG5vcm1hbGl6ZUlQdjYoaXB2NHJlc3VsdC5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NnJlc3VsdC5ob3N0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgIGlzSVAgPSBpcHY2cmVzdWx0LmlzSVBWNjsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NHJlc3VsdC5ob3N0OwogICAgICAgICAgICBpc0lQID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCAmJiBwYXJzZWQudXNlcmluZm8gPT09IHZvaWQgMCAmJiBwYXJzZWQuaG9zdCA9PT0gdm9pZCAwICYmIHBhcnNlZC5wb3J0ID09PSB2b2lkIDAgJiYgIXBhcnNlZC5wYXRoICYmIHBhcnNlZC5xdWVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInNhbWUtZG9jdW1lbnQiOwogICAgICAgIH0gZWxzZSBpZiAocGFyc2VkLnNjaGVtZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInJlbGF0aXZlIjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5mcmFnbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gImFic29sdXRlIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJ1cmkiOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgJiYgb3B0aW9ucy5yZWZlcmVuY2UgIT09ICJzdWZmaXgiICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSBwYXJzZWQucmVmZXJlbmNlKSB7CiAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBpcyBub3QgYSAiICsgb3B0aW9ucy5yZWZlcmVuY2UgKyAiIHJlZmVyZW5jZS4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWVIYW5kbGVyID0gU0NIRU1FU1sob3B0aW9ucy5zY2hlbWUgfHwgcGFyc2VkLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgICAgaWYgKCFvcHRpb25zLnVuaWNvZGVTdXBwb3J0ICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci51bmljb2RlU3VwcG9ydCkpIHsKICAgICAgICAgIGlmIChwYXJzZWQuaG9zdCAmJiAob3B0aW9ucy5kb21haW5Ib3N0IHx8IHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5kb21haW5Ib3N0KSAmJiBpc0lQID09PSBmYWxzZSAmJiBub25TaW1wbGVEb21haW4ocGFyc2VkLmhvc3QpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcGFyc2VkLmhvc3QgPSBVUkwuZG9tYWluVG9BU0NJSShwYXJzZWQuaG9zdC50b0xvd2VyQ2FzZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiSG9zdCdzIGRvbWFpbiBuYW1lIGNhbiBub3QgYmUgY29udmVydGVkIHRvIEFTQ0lJOiAiICsgZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXNjaGVtZUhhbmRsZXIgfHwgc2NoZW1lSGFuZGxlciAmJiAhc2NoZW1lSGFuZGxlci5za2lwTm9ybWFsaXplKSB7CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLnNjaGVtZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5zY2hlbWUgPSB1bmVzY2FwZShwYXJzZWQuc2NoZW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChnb3RFbmNvZGluZyAmJiBwYXJzZWQuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gdW5lc2NhcGUocGFyc2VkLmhvc3QpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5wYXRoICE9PSB2b2lkIDAgJiYgcGFyc2VkLnBhdGgubGVuZ3RoKSB7CiAgICAgICAgICAgIHBhcnNlZC5wYXRoID0gZXNjYXBlKHVuZXNjYXBlKHBhcnNlZC5wYXRoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGFyc2VkLmZyYWdtZW50ICE9PSB2b2lkIDAgJiYgcGFyc2VkLmZyYWdtZW50Lmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBlbmNvZGVVUkkoZGVjb2RlVVJJQ29tcG9uZW50KHBhcnNlZC5mcmFnbWVudCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1lSGFuZGxlciAmJiBzY2hlbWVIYW5kbGVyLnBhcnNlKSB7CiAgICAgICAgICBzY2hlbWVIYW5kbGVyLnBhcnNlKHBhcnNlZCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiVVJJIGNhbiBub3QgYmUgcGFyc2VkLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhcnNlZDsKICAgIH0KICAgIHZhciBmYXN0VXJpID0gewogICAgICBTQ0hFTUVTLAogICAgICBub3JtYWxpemUsCiAgICAgIHJlc29sdmUsCiAgICAgIHJlc29sdmVDb21wb25lbnRzLAogICAgICBlcXVhbCwKICAgICAgc2VyaWFsaXplLAogICAgICBwYXJzZQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZGVmYXVsdCA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZmFzdFVyaSA9IGZhc3RVcmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdXJpLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXJpID0gcmVxdWlyZV9mYXN0X3VyaSgpOwogICAgdXJpLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91cmkiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB1cmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIyLCBmbGFncykgPT4gbmV3IFJlZ0V4cChzdHIyLCBmbGFncyk7CiAgICBkZWZhdWx0UmVnRXhwLmNvZGUgPSAibmV3IFJlZ0V4cCI7CiAgICB2YXIgTUVUQV9JR05PUkVfT1BUSU9OUyA9IFsicmVtb3ZlQWRkaXRpb25hbCIsICJ1c2VEZWZhdWx0cyIsICJjb2VyY2VUeXBlcyJdOwogICAgdmFyIEVYVF9TQ09QRV9OQU1FUyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgInZhbGlkYXRlIiwKICAgICAgInNlcmlhbGl6ZSIsCiAgICAgICJwYXJzZSIsCiAgICAgICJ3cmFwcGVyIiwKICAgICAgInJvb3QiLAogICAgICAic2NoZW1hIiwKICAgICAgImtleXdvcmQiLAogICAgICAicGF0dGVybiIsCiAgICAgICJmb3JtYXRzIiwKICAgICAgInZhbGlkYXRlJGRhdGEiLAogICAgICAiZnVuYyIsCiAgICAgICJvYmoiLAogICAgICAiRXJyb3IiCiAgICBdKTsKICAgIHZhciByZW1vdmVkT3B0aW9ucyA9IHsKICAgICAgZXJyb3JEYXRhUGF0aDogIiIsCiAgICAgIGZvcm1hdDogImB2YWxpZGF0ZUZvcm1hdHM6IGZhbHNlYCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG51bGxhYmxlOiAnIm51bGxhYmxlIiBrZXl3b3JkIGlzIHN1cHBvcnRlZCBieSBkZWZhdWx0LicsCiAgICAgIGpzb25Qb2ludGVyczogIkRlcHJlY2F0ZWQganNQcm9wZXJ0eVN5bnRheCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIGV4dGVuZFJlZnM6ICJEZXByZWNhdGVkIGlnbm9yZUtleXdvcmRzV2l0aFJlZiBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG1pc3NpbmdSZWZzOiAiUGFzcyBlbXB0eSBzY2hlbWEgd2l0aCAkaWQgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB0byBhanYuYWRkU2NoZW1hLiIsCiAgICAgIHByb2Nlc3NDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3Byb2Nlc3M6IChjb2RlLCBzY2hlbWFFbnY6IG9iamVjdCkgPT4gc3RyaW5nfWAiLAogICAgICBzb3VyY2VDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3NvdXJjZTogdHJ1ZX1gIiwKICAgICAgc3RyaWN0RGVmYXVsdHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICBzdHJpY3RLZXl3b3JkczogIkl0IGlzIGRlZmF1bHQgbm93LCBzZWUgb3B0aW9uIGBzdHJpY3RgLiIsCiAgICAgIHVuaXF1ZUl0ZW1zOiAnInVuaXF1ZUl0ZW1zIiBrZXl3b3JkIGlzIGFsd2F5cyB2YWxpZGF0ZWQuJywKICAgICAgdW5rbm93bkZvcm1hdHM6ICJEaXNhYmxlIHN0cmljdCBtb2RlIG9yIHBhc3MgYHRydWVgIHRvIGBhanYuYWRkRm9ybWF0YCAob3IgYGZvcm1hdHNgIG9wdGlvbikuIiwKICAgICAgY2FjaGU6ICJNYXAgaXMgdXNlZCBhcyBjYWNoZSwgc2NoZW1hIG9iamVjdCBhcyBrZXkuIiwKICAgICAgc2VyaWFsaXplOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIGFqdkVycm9yczogIkl0IGlzIGRlZmF1bHQgbm93LiIKICAgIH07CiAgICB2YXIgZGVwcmVjYXRlZE9wdGlvbnMgPSB7CiAgICAgIGlnbm9yZUtleXdvcmRzV2l0aFJlZjogIiIsCiAgICAgIGpzUHJvcGVydHlTeW50YXg6ICIiLAogICAgICB1bmljb2RlOiAnIm1pbkxlbmd0aCIvIm1heExlbmd0aCIgYWNjb3VudCBmb3IgdW5pY29kZSBjaGFyYWN0ZXJzIGJ5IGRlZmF1bHQuJwogICAgfTsKICAgIHZhciBNQVhfRVhQUkVTU0lPTiA9IDIwMDsKICAgIGZ1bmN0aW9uIHJlcXVpcmVkT3B0aW9ucyhvKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9qLCBfaywgX2wsIF9tLCBfbywgX3AsIF9xLCBfciwgX3MsIF90LCBfdSwgX3YsIF93LCBfeCwgX3ksIF96LCBfMDsKICAgICAgY29uc3QgcyA9IG8uc3RyaWN0OwogICAgICBjb25zdCBfb3B0eiA9IChfYSA9IG8uY29kZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplOwogICAgICBjb25zdCBvcHRpbWl6ZSA9IF9vcHR6ID09PSB0cnVlIHx8IF9vcHR6ID09PSB2b2lkIDAgPyAxIDogX29wdHogfHwgMDsKICAgICAgY29uc3QgcmVnRXhwID0gKF9jID0gKF9iID0gby5jb2RlKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucmVnRXhwKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiBkZWZhdWx0UmVnRXhwOwogICAgICBjb25zdCB1cmlSZXNvbHZlciA9IChfZCA9IG8udXJpUmVzb2x2ZXIpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6IHVyaV8xLmRlZmF1bHQ7CiAgICAgIHJldHVybiB7CiAgICAgICAgc3RyaWN0U2NoZW1hOiAoX2YgPSAoX2UgPSBvLnN0cmljdFNjaGVtYSkgIT09IG51bGwgJiYgX2UgIT09IHZvaWQgMCA/IF9lIDogcykgIT09IG51bGwgJiYgX2YgIT09IHZvaWQgMCA/IF9mIDogdHJ1ZSwKICAgICAgICBzdHJpY3ROdW1iZXJzOiAoX2ggPSAoX2cgPSBvLnN0cmljdE51bWJlcnMpICE9PSBudWxsICYmIF9nICE9PSB2b2lkIDAgPyBfZyA6IHMpICE9PSBudWxsICYmIF9oICE9PSB2b2lkIDAgPyBfaCA6IHRydWUsCiAgICAgICAgc3RyaWN0VHlwZXM6IChfayA9IChfaiA9IG8uc3RyaWN0VHlwZXMpICE9PSBudWxsICYmIF9qICE9PSB2b2lkIDAgPyBfaiA6IHMpICE9PSBudWxsICYmIF9rICE9PSB2b2lkIDAgPyBfayA6ICJsb2ciLAogICAgICAgIHN0cmljdFR1cGxlczogKF9tID0gKF9sID0gby5zdHJpY3RUdXBsZXMpICE9PSBudWxsICYmIF9sICE9PSB2b2lkIDAgPyBfbCA6IHMpICE9PSBudWxsICYmIF9tICE9PSB2b2lkIDAgPyBfbSA6ICJsb2ciLAogICAgICAgIHN0cmljdFJlcXVpcmVkOiAoX3AgPSAoX28gPSBvLnN0cmljdFJlcXVpcmVkKSAhPT0gbnVsbCAmJiBfbyAhPT0gdm9pZCAwID8gX28gOiBzKSAhPT0gbnVsbCAmJiBfcCAhPT0gdm9pZCAwID8gX3AgOiBmYWxzZSwKICAgICAgICBjb2RlOiBvLmNvZGUgPyB7IC4uLm8uY29kZSwgb3B0aW1pemUsIHJlZ0V4cCB9IDogeyBvcHRpbWl6ZSwgcmVnRXhwIH0sCiAgICAgICAgbG9vcFJlcXVpcmVkOiAoX3EgPSBvLmxvb3BSZXF1aXJlZCkgIT09IG51bGwgJiYgX3EgIT09IHZvaWQgMCA/IF9xIDogTUFYX0VYUFJFU1NJT04sCiAgICAgICAgbG9vcEVudW06IChfciA9IG8ubG9vcEVudW0pICE9PSBudWxsICYmIF9yICE9PSB2b2lkIDAgPyBfciA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIG1ldGE6IChfcyA9IG8ubWV0YSkgIT09IG51bGwgJiYgX3MgIT09IHZvaWQgMCA/IF9zIDogdHJ1ZSwKICAgICAgICBtZXNzYWdlczogKF90ID0gby5tZXNzYWdlcykgIT09IG51bGwgJiYgX3QgIT09IHZvaWQgMCA/IF90IDogdHJ1ZSwKICAgICAgICBpbmxpbmVSZWZzOiAoX3UgPSBvLmlubGluZVJlZnMpICE9PSBudWxsICYmIF91ICE9PSB2b2lkIDAgPyBfdSA6IHRydWUsCiAgICAgICAgc2NoZW1hSWQ6IChfdiA9IG8uc2NoZW1hSWQpICE9PSBudWxsICYmIF92ICE9PSB2b2lkIDAgPyBfdiA6ICIkaWQiLAogICAgICAgIGFkZFVzZWRTY2hlbWE6IChfdyA9IG8uYWRkVXNlZFNjaGVtYSkgIT09IG51bGwgJiYgX3cgIT09IHZvaWQgMCA/IF93IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZVNjaGVtYTogKF94ID0gby52YWxpZGF0ZVNjaGVtYSkgIT09IG51bGwgJiYgX3ggIT09IHZvaWQgMCA/IF94IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZUZvcm1hdHM6IChfeSA9IG8udmFsaWRhdGVGb3JtYXRzKSAhPT0gbnVsbCAmJiBfeSAhPT0gdm9pZCAwID8gX3kgOiB0cnVlLAogICAgICAgIHVuaWNvZGVSZWdFeHA6IChfeiA9IG8udW5pY29kZVJlZ0V4cCkgIT09IG51bGwgJiYgX3ogIT09IHZvaWQgMCA/IF96IDogdHJ1ZSwKICAgICAgICBpbnQzMnJhbmdlOiAoXzAgPSBvLmludDMycmFuZ2UpICE9PSBudWxsICYmIF8wICE9PSB2b2lkIDAgPyBfMCA6IHRydWUsCiAgICAgICAgdXJpUmVzb2x2ZXIKICAgICAgfTsKICAgIH0KICAgIHZhciBBanYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMgPSB7fSkgewogICAgICAgIHRoaXMuc2NoZW1hcyA9IHt9OwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICAgIHRoaXMuZm9ybWF0cyA9IHt9OwogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgdGhpcy5fbG9hZGluZyA9IHt9OwogICAgICAgIHRoaXMuX2NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBvcHRzID0gdGhpcy5vcHRzID0geyAuLi5vcHRzLCAuLi5yZXF1aXJlZE9wdGlvbnMob3B0cykgfTsKICAgICAgICBjb25zdCB7IGVzNSwgbGluZXMgfSA9IHRoaXMub3B0cy5jb2RlOwogICAgICAgIHRoaXMuc2NvcGUgPSBuZXcgY29kZWdlbl8yLlZhbHVlU2NvcGUoeyBzY29wZToge30sIHByZWZpeGVzOiBFWFRfU0NPUEVfTkFNRVMsIGVzNSwgbGluZXMgfSk7CiAgICAgICAgdGhpcy5sb2dnZXIgPSBnZXRMb2dnZXIob3B0cy5sb2dnZXIpOwogICAgICAgIGNvbnN0IGZvcm1hdE9wdCA9IG9wdHMudmFsaWRhdGVGb3JtYXRzOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZmFsc2U7CiAgICAgICAgdGhpcy5SVUxFUyA9ICgwLCBydWxlc18xLmdldFJ1bGVzKSgpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIHJlbW92ZWRPcHRpb25zLCBvcHRzLCAiTk9UIFNVUFBPUlRFRCIpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIGRlcHJlY2F0ZWRPcHRpb25zLCBvcHRzLCAiREVQUkVDQVRFRCIsICJ3YXJuIik7CiAgICAgICAgdGhpcy5fbWV0YU9wdHMgPSBnZXRNZXRhU2NoZW1hT3B0aW9ucy5jYWxsKHRoaXMpOwogICAgICAgIGlmIChvcHRzLmZvcm1hdHMpCiAgICAgICAgICBhZGRJbml0aWFsRm9ybWF0cy5jYWxsKHRoaXMpOwogICAgICAgIHRoaXMuX2FkZFZvY2FidWxhcmllcygpOwogICAgICAgIHRoaXMuX2FkZERlZmF1bHRNZXRhU2NoZW1hKCk7CiAgICAgICAgaWYgKG9wdHMua2V5d29yZHMpCiAgICAgICAgICBhZGRJbml0aWFsS2V5d29yZHMuY2FsbCh0aGlzLCBvcHRzLmtleXdvcmRzKTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMubWV0YSA9PSAib2JqZWN0IikKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShvcHRzLm1ldGEpOwogICAgICAgIGFkZEluaXRpYWxTY2hlbWFzLmNhbGwodGhpcyk7CiAgICAgICAgb3B0cy52YWxpZGF0ZUZvcm1hdHMgPSBmb3JtYXRPcHQ7CiAgICAgIH0KICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoIiRhc3luYyIpOwogICAgICB9CiAgICAgIF9hZGREZWZhdWx0TWV0YVNjaGVtYSgpIHsKICAgICAgICBjb25zdCB7ICRkYXRhLCBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGxldCBfZGF0YVJlZlNjaGVtYSA9ICRkYXRhUmVmU2NoZW1hOwogICAgICAgIGlmIChzY2hlbWFJZCA9PT0gImlkIikgewogICAgICAgICAgX2RhdGFSZWZTY2hlbWEgPSB7IC4uLiRkYXRhUmVmU2NoZW1hIH07CiAgICAgICAgICBfZGF0YVJlZlNjaGVtYS5pZCA9IF9kYXRhUmVmU2NoZW1hLiRpZDsKICAgICAgICAgIGRlbGV0ZSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgfQogICAgICAgIGlmIChtZXRhICYmICRkYXRhKQogICAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKF9kYXRhUmVmU2NoZW1hLCBfZGF0YVJlZlNjaGVtYVtzY2hlbWFJZF0sIGZhbHNlKTsKICAgICAgfQogICAgICBkZWZhdWx0TWV0YSgpIHsKICAgICAgICBjb25zdCB7IG1ldGEsIHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHR5cGVvZiBtZXRhID09ICJvYmplY3QiID8gbWV0YVtzY2hlbWFJZF0gfHwgbWV0YSA6IHZvaWQgMDsKICAgICAgfQogICAgICB2YWxpZGF0ZShzY2hlbWFLZXlSZWYsIGRhdGEpIHsKICAgICAgICBsZXQgdjsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYUtleVJlZiA9PSAic3RyaW5nIikgewogICAgICAgICAgdiA9IHRoaXMuZ2V0U2NoZW1hKHNjaGVtYUtleVJlZik7CiAgICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgbm8gc2NoZW1hIHdpdGgga2V5IG9yIHJlZiAiJHtzY2hlbWFLZXlSZWZ9ImApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB2ID0gdGhpcy5jb21waWxlKHNjaGVtYUtleVJlZik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdihkYXRhKTsKICAgICAgICBpZiAoISgiJGFzeW5jIiBpbiB2KSkKICAgICAgICAgIHRoaXMuZXJyb3JzID0gdi5lcnJvcnM7CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIGNvbXBpbGUoc2NoZW1hMiwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgfHwgdGhpcy5fY29tcGlsZVNjaGVtYUVudihzY2gpOwogICAgICB9CiAgICAgIGNvbXBpbGVBc3luYyhzY2hlbWEyLCBtZXRhKSB7CiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMubG9hZFNjaGVtYSAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIm9wdGlvbnMubG9hZFNjaGVtYSBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB7IGxvYWRTY2hlbWEgfSA9IHRoaXMub3B0czsKICAgICAgICByZXR1cm4gcnVuQ29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoZW1hMiwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hMiwga2V5LCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMikpIHsKICAgICAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHNjaGVtYTIpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgICAgaWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICAgIGlmIChpZCAhPT0gdm9pZCAwICYmIHR5cGVvZiBpZCAhPSAic3RyaW5nIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSAke3NjaGVtYUlkfSBtdXN0IGJlIHN0cmluZ2ApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBrZXkgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXkgfHwgaWQpOwogICAgICAgIHRoaXMuX2NoZWNrVW5pcXVlKGtleSk7CiAgICAgICAgdGhpcy5zY2hlbWFzW2tleV0gPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEyLCBrZXksIF92YWxpZGF0ZVNjaGVtYSA9IHRoaXMub3B0cy52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaGVtYTIsIGtleSwgdHJ1ZSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyAgVmFsaWRhdGUgc2NoZW1hIGFnYWluc3QgaXRzIG1ldGEtc2NoZW1hCiAgICAgIHZhbGlkYXRlU2NoZW1hKHNjaGVtYTIsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgJHNjaGVtYTsKICAgICAgICAkc2NoZW1hID0gc2NoZW1hMi4kc2NoZW1hOwogICAgICAgIGlmICgkc2NoZW1hICE9PSB2b2lkIDAgJiYgdHlwZW9mICRzY2hlbWEgIT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiJHNjaGVtYSBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgfQogICAgICAgICRzY2hlbWEgPSAkc2NoZW1hIHx8IHRoaXMub3B0cy5kZWZhdWx0TWV0YSB8fCB0aGlzLmRlZmF1bHRNZXRhKCk7CiAgICAgICAgaWYgKCEkc2NoZW1hKSB7CiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKCJtZXRhLXNjaGVtYSBub3QgYXZhaWxhYmxlIik7CiAgICAgICAgICB0aGlzLmVycm9ycyA9IG51bGw7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLnZhbGlkYXRlKCRzY2hlbWEsIHNjaGVtYTIpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYTIgPSBrZXl3b3Jkc1trZXldOwogICAgICAgICAgICBpZiAoJGRhdGEgJiYgc2NoZW1hMikKICAgICAgICAgICAgICBrZXl3b3Jkc1trZXldID0gc2NoZW1hT3JEYXRhKHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEyLCBtZXRhLCBiYXNlSWQsIHZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hLCBhZGRTY2hlbWEgPSB0aGlzLm9wdHMuYWRkVXNlZFNjaGVtYSkgewogICAgICAgIGxldCBpZDsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiKSB7CiAgICAgICAgICBpZCA9IHNjaGVtYTJbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyICE9ICJib29sZWFuIikKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3Qgb3IgYm9vbGVhbiIpOwogICAgICAgIH0KICAgICAgICBsZXQgc2NoID0gdGhpcy5fY2FjaGUuZ2V0KHNjaGVtYTIpOwogICAgICAgIGlmIChzY2ggIT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoaWQgfHwgYmFzZUlkKTsKICAgICAgICBjb25zdCBsb2NhbFJlZnMgPSByZXNvbHZlXzEuZ2V0U2NoZW1hUmVmcy5jYWxsKHRoaXMsIHNjaGVtYTIsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hMiwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfQogICAgICBfY2hlY2tVbmlxdWUoaWQpIHsKICAgICAgICBpZiAodGhpcy5zY2hlbWFzW2lkXSB8fCB0aGlzLnJlZnNbaWRdKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSB3aXRoIGtleSBvciBpZCAiJHtpZH0iIGFscmVhZHkgZXhpc3RzYCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9jb21waWxlU2NoZW1hRW52KHNjaCkgewogICAgICAgIGlmIChzY2gubWV0YSkKICAgICAgICAgIHRoaXMuX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCk7CiAgICAgICAgZWxzZQogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIGlmICghc2NoLnZhbGlkYXRlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlOwogICAgICB9CiAgICAgIF9jb21waWxlTWV0YVNjaGVtYShzY2gpIHsKICAgICAgICBjb25zdCBjdXJyZW50T3B0cyA9IHRoaXMub3B0czsKICAgICAgICB0aGlzLm9wdHMgPSB0aGlzLl9tZXRhT3B0czsKICAgICAgICB0cnkgewogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLm9wdHMgPSBjdXJyZW50T3B0czsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBBanYuVmFsaWRhdGlvbkVycm9yID0gdmFsaWRhdGlvbl9lcnJvcl8xLmRlZmF1bHQ7CiAgICBBanYuTWlzc2luZ1JlZkVycm9yID0gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBBanY7CiAgICBmdW5jdGlvbiBjaGVja09wdGlvbnMoY2hlY2tPcHRzLCBvcHRpb25zLCBtc2csIGxvZyA9ICJlcnJvciIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gY2hlY2tPcHRzKSB7CiAgICAgICAgY29uc3Qgb3B0ID0ga2V5OwogICAgICAgIGlmIChvcHQgaW4gb3B0aW9ucykKICAgICAgICAgIHRoaXMubG9nZ2VyW2xvZ10oYCR7bXNnfTogb3B0aW9uICR7a2V5fS4gJHtjaGVja09wdHNbb3B0XX1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0U2NoRW52KGtleVJlZikgewogICAgICBrZXlSZWYgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXlSZWYpOwogICAgICByZXR1cm4gdGhpcy5zY2hlbWFzW2tleVJlZl0gfHwgdGhpcy5yZWZzW2tleVJlZl07CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsU2NoZW1hcygpIHsKICAgICAgY29uc3Qgb3B0c1NjaGVtYXMgPSB0aGlzLm9wdHMuc2NoZW1hczsKICAgICAgaWYgKCFvcHRzU2NoZW1hcykKICAgICAgICByZXR1cm47CiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHNTY2hlbWFzKSkKICAgICAgICB0aGlzLmFkZFNjaGVtYShvcHRzU2NoZW1hcyk7CiAgICAgIGVsc2UKICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvcHRzU2NoZW1hcykKICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzW2tleV0sIGtleSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsRm9ybWF0cygpIHsKICAgICAgZm9yIChjb25zdCBuYW1lIGluIHRoaXMub3B0cy5mb3JtYXRzKSB7CiAgICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy5vcHRzLmZvcm1hdHNbbmFtZV07CiAgICAgICAgaWYgKGZvcm1hdCkKICAgICAgICAgIHRoaXMuYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxLZXl3b3JkcyhkZWZzKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRlZnMpKSB7CiAgICAgICAgdGhpcy5hZGRWb2NhYnVsYXJ5KGRlZnMpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLmxvZ2dlci53YXJuKCJrZXl3b3JkcyBvcHRpb24gYXMgbWFwIGlzIGRlcHJlY2F0ZWQsIHBhc3MgYXJyYXkiKTsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIGRlZnMpIHsKICAgICAgICBjb25zdCBkZWYgPSBkZWZzW2tleXdvcmRdOwogICAgICAgIGlmICghZGVmLmtleXdvcmQpCiAgICAgICAgICBkZWYua2V5d29yZCA9IGtleXdvcmQ7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGdldE1ldGFTY2hlbWFPcHRpb25zKCkgewogICAgICBjb25zdCBtZXRhT3B0cyA9IHsgLi4udGhpcy5vcHRzIH07CiAgICAgIGZvciAoY29uc3Qgb3B0IG9mIE1FVEFfSUdOT1JFX09QVElPTlMpCiAgICAgICAgZGVsZXRlIG1ldGFPcHRzW29wdF07CiAgICAgIHJldHVybiBtZXRhT3B0czsKICAgIH0KICAgIHZhciBub0xvZ3MgPSB7IGxvZygpIHsKICAgIH0sIHdhcm4oKSB7CiAgICB9LCBlcnJvcigpIHsKICAgIH0gfTsKICAgIGZ1bmN0aW9uIGdldExvZ2dlcihsb2dnZXIpIHsKICAgICAgaWYgKGxvZ2dlciA9PT0gZmFsc2UpCiAgICAgICAgcmV0dXJuIG5vTG9nczsKICAgICAgaWYgKGxvZ2dlciA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybiBjb25zb2xlOwogICAgICBpZiAobG9nZ2VyLmxvZyAmJiBsb2dnZXIud2FybiAmJiBsb2dnZXIuZXJyb3IpCiAgICAgICAgcmV0dXJuIGxvZ2dlcjsKICAgICAgdGhyb3cgbmV3IEVycm9yKCJsb2dnZXIgbXVzdCBpbXBsZW1lbnQgbG9nLCB3YXJuIGFuZCBlcnJvciBtZXRob2RzIik7CiAgICB9CiAgICB2YXIgS0VZV09SRF9OQU1FID0gL15bYS16XyRdW2EtejAtOV8kOi1dKiQvaTsKICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZChrZXl3b3JkLCBkZWYpIHsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgKDAsIHV0aWxfMS5lYWNoSXRlbSkoa2V5d29yZCwgKGt3ZCkgPT4gewogICAgICAgIGlmIChSVUxFUy5rZXl3b3Jkc1trd2RdKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXl3b3JkICR7a3dkfSBpcyBhbHJlYWR5IGRlZmluZWRgKTsKICAgICAgICBpZiAoIUtFWVdPUkRfTkFNRS50ZXN0KGt3ZCkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGhhcyBpbnZhbGlkIG5hbWVgKTsKICAgICAgfSk7CiAgICAgIGlmICghZGVmKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiAhKCJjb2RlIiBpbiBkZWYgfHwgInZhbGlkYXRlIiBpbiBkZWYpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCckZGF0YSBrZXl3b3JkIG11c3QgaGF2ZSAiY29kZSIgb3IgInZhbGlkYXRlIiBmdW5jdGlvbicpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhZGRSdWxlKGtleXdvcmQsIGRlZmluaXRpb24sIGRhdGFUeXBlKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgcG9zdCA9IGRlZmluaXRpb24gPT09IG51bGwgfHwgZGVmaW5pdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVmaW5pdGlvbi5wb3N0OwogICAgICBpZiAoZGF0YVR5cGUgJiYgcG9zdCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2tleXdvcmQgd2l0aCAicG9zdCIgZmxhZyBjYW5ub3QgaGF2ZSAidHlwZSInKTsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgbGV0IHJ1bGVHcm91cCA9IHBvc3QgPyBSVUxFUy5wb3N0IDogUlVMRVMucnVsZXMuZmluZCgoeyB0eXBlOiB0IH0pID0+IHQgPT09IGRhdGFUeXBlKTsKICAgICAgaWYgKCFydWxlR3JvdXApIHsKICAgICAgICBydWxlR3JvdXAgPSB7IHR5cGU6IGRhdGFUeXBlLCBydWxlczogW10gfTsKICAgICAgICBSVUxFUy5ydWxlcy5wdXNoKHJ1bGVHcm91cCk7CiAgICAgIH0KICAgICAgUlVMRVMua2V5d29yZHNba2V5d29yZF0gPSB0cnVlOwogICAgICBpZiAoIWRlZmluaXRpb24pCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBydWxlID0gewogICAgICAgIGtleXdvcmQsCiAgICAgICAgZGVmaW5pdGlvbjogewogICAgICAgICAgLi4uZGVmaW5pdGlvbiwKICAgICAgICAgIHR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi5zY2hlbWFUeXBlKQogICAgICAgIH0KICAgICAgfTsKICAgICAgaWYgKGRlZmluaXRpb24uYmVmb3JlKQogICAgICAgIGFkZEJlZm9yZVJ1bGUuY2FsbCh0aGlzLCBydWxlR3JvdXAsIHJ1bGUsIGRlZmluaXRpb24uYmVmb3JlKTsKICAgICAgZWxzZQogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICBSVUxFUy5hbGxba2V5d29yZF0gPSBydWxlOwogICAgICAoX2EgPSBkZWZpbml0aW9uLmltcGxlbWVudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb3JFYWNoKChrd2QpID0+IHRoaXMuYWRkS2V5d29yZChrd2QpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEJlZm9yZVJ1bGUocnVsZUdyb3VwLCBydWxlLCBiZWZvcmUpIHsKICAgICAgY29uc3QgaSA9IHJ1bGVHcm91cC5ydWxlcy5maW5kSW5kZXgoKF9ydWxlKSA9PiBfcnVsZS5rZXl3b3JkID09PSBiZWZvcmUpOwogICAgICBpZiAoaSA+PSAwKSB7CiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnNwbGljZShpLCAwLCBydWxlKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMucHVzaChydWxlKTsKICAgICAgICB0aGlzLmxvZ2dlci53YXJuKGBydWxlICR7YmVmb3JlfSBpcyBub3QgZGVmaW5lZGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBrZXl3b3JkTWV0YXNjaGVtYShkZWYpIHsKICAgICAgbGV0IHsgbWV0YVNjaGVtYSB9ID0gZGVmOwogICAgICBpZiAobWV0YVNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiB0aGlzLm9wdHMuJGRhdGEpCiAgICAgICAgbWV0YVNjaGVtYSA9IHNjaGVtYU9yRGF0YShtZXRhU2NoZW1hKTsKICAgICAgZGVmLnZhbGlkYXRlU2NoZW1hID0gdGhpcy5jb21waWxlKG1ldGFTY2hlbWEsIHRydWUpOwogICAgfQogICAgdmFyICRkYXRhUmVmID0gewogICAgICAkcmVmOiAiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Fqdi12YWxpZGF0b3IvYWp2L21hc3Rlci9saWIvcmVmcy9kYXRhLmpzb24jIgogICAgfTsKICAgIGZ1bmN0aW9uIHNjaGVtYU9yRGF0YShzY2hlbWEyKSB7CiAgICAgIHJldHVybiB7IGFueU9mOiBbc2NoZW1hMiwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pZC5qcwp2YXIgcmVxdWlyZV9pZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvaWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZCIsCiAgICAgIGNvZGUoKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOT1QgU1VQUE9SVEVEOiBrZXl3b3JkICJpZCIsIHVzZSAiJGlkIiBmb3Igc2NoZW1hIElEJyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYWxsUmVmID0gZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSB2b2lkIDA7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIiRyZWYiLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiAkcmVmLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgYmFzZUlkLCBzY2hlbWFFbnY6IGVudiwgdmFsaWRhdGVOYW1lLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgY29uc3QgeyByb290IH0gPSBlbnY7CiAgICAgICAgaWYgKCgkcmVmID09PSAiIyIgfHwgJHJlZiA9PT0gIiMvIikgJiYgYmFzZUlkID09PSByb290LmJhc2VJZCkKICAgICAgICAgIHJldHVybiBjYWxsUm9vdFJlZigpOwogICAgICAgIGNvbnN0IHNjaE9yRW52ID0gY29tcGlsZV8xLnJlc29sdmVSZWYuY2FsbChzZWxmMiwgcm9vdCwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyByZWZfZXJyb3JfMS5kZWZhdWx0KGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgJHJlZik7CiAgICAgICAgaWYgKHNjaE9yRW52IGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgIHJldHVybiBjYWxsVmFsaWRhdGUoc2NoT3JFbnYpOwogICAgICAgIHJldHVybiBpbmxpbmVSZWZTY2hlbWEoc2NoT3JFbnYpOwogICAgICAgIGZ1bmN0aW9uIGNhbGxSb290UmVmKCkgewogICAgICAgICAgaWYgKGVudiA9PT0gcm9vdCkKICAgICAgICAgICAgcmV0dXJuIGNhbGxSZWYoY3h0LCB2YWxpZGF0ZU5hbWUsIGVudiwgZW52LiRhc3luYyk7CiAgICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHJvb3QgfSk7CiAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsICgwLCBjb2RlZ2VuXzEuXylgJHtyb290TmFtZX0udmFsaWRhdGVgLCByb290LCByb290LiRhc3luYyk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZShzY2gpIHsKICAgICAgICAgIGNvbnN0IHYgPSBnZXRWYWxpZGF0ZShjeHQsIHNjaCk7CiAgICAgICAgICBjYWxsUmVmKGN4dCwgdiwgc2NoLCBzY2guJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW5saW5lUmVmU2NoZW1hKHNjaCkgewogICAgICAgICAgY29uc3Qgc2NoTmFtZSA9IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCBvcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaCwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaCkgfSA6IHsgcmVmOiBzY2ggfSk7CiAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgICBkYXRhVHlwZXM6IFtdLAogICAgICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaE5hbWUsCiAgICAgICAgICAgIGVyclNjaGVtYVBhdGg6ICRyZWYKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQpOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBnZXRWYWxpZGF0ZShjeHQsIHNjaCkgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gZ2VuLnNjb3BlVmFsdWUoInZhbGlkYXRlIiwgeyByZWY6IHNjaC52YWxpZGF0ZSB9KSA6ICgwLCBjb2RlZ2VuXzEuXylgJHtnZW4uc2NvcGVWYWx1ZSgid3JhcHBlciIsIHsgcmVmOiBzY2ggfSl9LnZhbGlkYXRlYDsKICAgIH0KICAgIGV4cG9ydHMyLmdldFZhbGlkYXRlID0gZ2V0VmFsaWRhdGU7CiAgICBmdW5jdGlvbiBjYWxsUmVmKGN4dCwgdiwgc2NoLCAkYXN5bmMpIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBzY2hlbWFFbnY6IGVudiwgb3B0cyB9ID0gaXQ7CiAgICAgIGNvbnN0IHBhc3NDeHQgPSBvcHRzLnBhc3NDb250ZXh0ID8gbmFtZXNfMS5kZWZhdWx0LnRoaXMgOiBjb2RlZ2VuXzEubmlsOwogICAgICBpZiAoJGFzeW5jKQogICAgICAgIGNhbGxBc3luY1JlZigpOwogICAgICBlbHNlCiAgICAgICAgY2FsbFN5bmNSZWYoKTsKICAgICAgZnVuY3Rpb24gY2FsbEFzeW5jUmVmKCkgewogICAgICAgIGlmICghZW52LiRhc3luYykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIHJlZmVyZW5jZWQgYnkgc3luYyBzY2hlbWEiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIik7CiAgICAgICAgZ2VuLnRyeSgoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpfWApOwogICAgICAgICAgYWRkRXZhbHVhdGVkRnJvbSh2KTsKICAgICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICB9LCAoZSkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgISgke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KWAsICgpID0+IGdlbi50aHJvdyhlKSk7CiAgICAgICAgICBhZGRFcnJvcnNGcm9tKGUpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbGxTeW5jUmVmKCkgewogICAgICAgIGN4dC5yZXN1bHQoKDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpLCAoKSA9PiBhZGRFdmFsdWF0ZWRGcm9tKHYpLCAoKSA9PiBhZGRFcnJvcnNGcm9tKHYpKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhZGRFcnJvcnNGcm9tKHNvdXJjZSkgewogICAgICAgIGNvbnN0IGVycnMgPSAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCk7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEV2YWx1YXRlZEZyb20oc291cmNlKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICghaXQub3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hFdmFsdWF0ZWQgPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gudmFsaWRhdGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ldmFsdWF0ZWQ7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY1Byb3BzKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgc2NoRXZhbHVhdGVkLnByb3BzLCBpdC5wcm9wcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQucHJvcHNgKTsKICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBwcm9wcywgaXQucHJvcHMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGl0Lml0ZW1zICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY0l0ZW1zKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoRXZhbHVhdGVkLml0ZW1zLCBpdC5pdGVtcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZ2VuLnZhcigiaXRlbXMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQuaXRlbXNgKTsKICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBpdGVtcywgaXQuaXRlbXMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBjYWxsUmVmOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2luZGV4LmpzCnZhciByZXF1aXJlX2NvcmUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUyID0gWwogICAgICAiJHNjaGVtYSIsCiAgICAgICIkaWQiLAogICAgICAiJGRlZnMiLAogICAgICAiJHZvY2FidWxhcnkiLAogICAgICB7IGtleXdvcmQ6ICIkY29tbWVudCIgfSwKICAgICAgImRlZmluaXRpb25zIiwKICAgICAgaWRfMS5kZWZhdWx0LAogICAgICByZWZfMS5kZWZhdWx0CiAgICBdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGNvcmUyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMKdmFyIHJlcXVpcmVfbGltaXROdW1iZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TnVtYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgb3BzID0gY29kZWdlbl8xLm9wZXJhdG9yczsKICAgIHZhciBLV0RzID0gewogICAgICBtYXhpbXVtOiB7IG9rU3RyOiAiPD0iLCBvazogb3BzLkxURSwgZmFpbDogb3BzLkdUIH0sCiAgICAgIG1pbmltdW06IHsgb2tTdHI6ICI+PSIsIG9rOiBvcHMuR1RFLCBmYWlsOiBvcHMuTFQgfSwKICAgICAgZXhjbHVzaXZlTWF4aW11bTogeyBva1N0cjogIjwiLCBvazogb3BzLkxULCBmYWlsOiBvcHMuR1RFIH0sCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsgb2tTdHI6ICI+Iiwgb2s6IG9wcy5HVCwgZmFpbDogb3BzLkxURSB9CiAgICB9OwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGJlICR7S1dEc1trZXl3b3JkXS5va1N0cn0gJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtjb21wYXJpc29uOiAke0tXRHNba2V5d29yZF0ub2tTdHJ9LCBsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ICR7S1dEc1trZXl3b3JkXS5mYWlsfSAke3NjaGVtYUNvZGV9IHx8IGlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbXVsdGlwbGVPZi5qcwp2YXIgcmVxdWlyZV9tdWx0aXBsZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9tdWx0aXBsZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgbXVsdGlwbGUgb2YgJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHttdWx0aXBsZU9mOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibXVsdGlwbGVPZiIsCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHByZWMgPSBpdC5vcHRzLm11bHRpcGxlT2ZQcmVjaXNpb247CiAgICAgICAgY29uc3QgcmVzID0gZ2VuLmxldCgicmVzIik7CiAgICAgICAgY29uc3QgaW52YWxpZCA9IHByZWMgPyAoMCwgY29kZWdlbl8xLl8pYE1hdGguYWJzKE1hdGgucm91bmQoJHtyZXN9KSAtICR7cmVzfSkgPiAxZS0ke3ByZWN9YCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtyZXN9ICE9PSBwYXJzZUludCgke3Jlc30pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgKCR7c2NoZW1hQ29kZX0gPT09IDAgfHwgKCR7cmVzfSA9ICR7ZGF0YX0vJHtzY2hlbWFDb2RlfSwgJHtpbnZhbGlkfSkpYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoLmpzCnZhciByZXF1aXJlX3VjczJsZW5ndGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdWNzMmxlbmd0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZnVuY3Rpb24gdWNzMmxlbmd0aChzdHIyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0cjIubGVuZ3RoOwogICAgICBsZXQgbGVuZ3RoID0gMDsKICAgICAgbGV0IHBvcyA9IDA7CiAgICAgIGxldCB2YWx1ZTsKICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgIGxlbmd0aCsrOwogICAgICAgIHZhbHVlID0gc3RyMi5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICBpZiAodmFsdWUgPj0gNTUyOTYgJiYgdmFsdWUgPD0gNTYzMTkgJiYgcG9zIDwgbGVuKSB7CiAgICAgICAgICB2YWx1ZSA9IHN0cjIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdExlbmd0aC5qcwp2YXIgcmVxdWlyZV9saW1pdExlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRMZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1Y3MybGVuZ3RoXzEgPSByZXF1aXJlX3VjczJsZW5ndGgoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IGNoYXJhY3RlcnNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4TGVuZ3RoIiwgIm1pbkxlbmd0aCJdLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGNvbnN0IGxlbiA9IGl0Lm9wdHMudW5pY29kZSA9PT0gZmFsc2UgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgdXRpbF8xLnVzZUZ1bmMpKGN4dC5nZW4sIHVjczJsZW5ndGhfMS5kZWZhdWx0KX0oJHtkYXRhfSlgOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCBwYXR0ZXJuICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXR0ZXJuOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicGF0dGVybiIsCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB1ID0gaXQub3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgICAgY29uc3QgcmVnRXhwID0gJGRhdGEgPyAoMCwgY29kZWdlbl8xLl8pYChuZXcgUmVnRXhwKCR7c2NoZW1hQ29kZX0sICR7dX0pKWAgOiAoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgc2NoZW1hMik7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEke3JlZ0V4cH0udGVzdCgke2RhdGF9KWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9saW1pdFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSB7CiAgICAgICAgY29uc3QgY29tcCA9IGtleXdvcmQgPT09ICJtYXhQcm9wZXJ0aWVzIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IHByb3BlcnRpZXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4UHJvcGVydGllcyIsICJtaW5Qcm9wZXJ0aWVzIl0sCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gY29kZWdlbl8xLm9wZXJhdG9ycy5HVCA6IGNvZGVnZW5fMS5vcGVyYXRvcnMuTFQ7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5rZXlzKCR7ZGF0YX0pLmxlbmd0aCAke29wfSAke3NjaGVtYUNvZGV9YCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcmVxdWlyZWQuanMKdmFyIHJlcXVpcmVfcmVxdWlyZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSByZXF1aXJlZCBwcm9wZXJ0eSAnJHttaXNzaW5nUHJvcGVydHl9J2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge21pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicmVxdWlyZWQiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGRhdGEsICRkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cyB9ID0gaXQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiBzY2hlbWEyLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gb3B0cy5sb29wUmVxdWlyZWQ7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykKICAgICAgICAgIGFsbEVycm9yc01vZGUoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBleGl0T25FcnJvck1vZGUoKTsKICAgICAgICBpZiAob3B0cy5zdHJpY3RSZXF1aXJlZCkgewogICAgICAgICAgY29uc3QgcHJvcHMgPSBjeHQucGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgICBjb25zdCB7IGRlZmluZWRQcm9wZXJ0aWVzIH0gPSBjeHQuaXQ7CiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkS2V5IG9mIHNjaGVtYTIpIHsKICAgICAgICAgICAgaWYgKChwcm9wcyA9PT0gbnVsbCB8fCBwcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJvcHNbcmVxdWlyZWRLZXldKSA9PT0gdm9pZCAwICYmICFkZWZpbmVkUHJvcGVydGllcy5oYXMocmVxdWlyZWRLZXkpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9IGl0LnNjaGVtYUVudi5iYXNlSWQgKyBpdC5lcnJTY2hlbWFQYXRoOwogICAgICAgICAgICAgIGNvbnN0IG1zZyA9IGByZXF1aXJlZCBwcm9wZXJ0eSAiJHtyZXF1aXJlZEtleX0iIGlzIG5vdCBkZWZpbmVkIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0UmVxdWlyZWQpYDsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RSZXF1aXJlZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWxsRXJyb3JzTW9kZSgpIHsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKGNvZGVnZW5fMS5uaWwsIGxvb3BBbGxSZXF1aXJlZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2Ygc2NoZW1hMikgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBleGl0T25FcnJvck1vZGUoKSB7CiAgICAgICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICAgICAgaWYgKHVzZUxvb3AgfHwgJGRhdGEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgKCkgPT4gbG9vcFVudGlsTWlzc2luZyhtaXNzaW5nLCB2YWxpZCkpOwogICAgICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBzY2hlbWEyLCBtaXNzaW5nKSk7CiAgICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BBbGxSZXF1aXJlZCgpIHsKICAgICAgICAgIGdlbi5mb3JPZigicHJvcCIsIHNjaGVtYUNvZGUsIChwcm9wKSA9PiB7CiAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IHByb3AgfSk7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLm5vUHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpIHsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSk7CiAgICAgICAgICBnZW4uZm9yT2YobWlzc2luZywgc2NoZW1hQ29kZSwgKCkgPT4gewogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIG1pc3NpbmcsIG9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIGNvZGVnZW5fMS5uaWwpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0SXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4SXRlbXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gaXRlbXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4SXRlbXMiLCAibWluSXRlbXMiXSwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjb25zdCBvcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMKdmFyIHJlcXVpcmVfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3VuaXF1ZUl0ZW1zLmpzCnZhciByZXF1aXJlX3VuaXF1ZUl0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi91bmlxdWVJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGksIGogfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBkdXBsaWNhdGUgaXRlbXMgKGl0ZW1zICMjICR7an0gYW5kICR7aX0gYXJlIGlkZW50aWNhbClgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7aTogJHtpfSwgajogJHtqfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInVuaXF1ZUl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogImJvb2xlYW4iLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmICFzY2hlbWEyKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBjb25zdCBpdGVtVHlwZXMgPSBwYXJlbnRTY2hlbWEuaXRlbXMgPyAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykocGFyZW50U2NoZW1hLml0ZW1zKSA6IFtdOwogICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCB2YWxpZGF0ZVVuaXF1ZUl0ZW1zLCAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IGZhbHNlYCk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaXF1ZUl0ZW1zKCkgewogICAgICAgICAgY29uc3QgaSA9IGdlbi5sZXQoImkiLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgICBjb25zdCBqID0gZ2VuLmxldCgiaiIpOwogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGksIGogfSk7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aX0gPiAxYCwgKCkgPT4gKGNhbk9wdGltaXplKCkgPyBsb29wTiA6IGxvb3BOMikoaSwgaikpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZSgpIHsKICAgICAgICAgIHJldHVybiBpdGVtVHlwZXMubGVuZ3RoID4gMCAmJiAhaXRlbVR5cGVzLnNvbWUoKHQpID0+IHQgPT09ICJvYmplY3QiIHx8IHQgPT09ICJhcnJheSIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTihpLCBqKSB7CiAgICAgICAgICBjb25zdCBpdGVtID0gZ2VuLm5hbWUoIml0ZW0iKTsKICAgICAgICAgIGNvbnN0IHdyb25nVHlwZSA9ICgwLCBkYXRhVHlwZV8xLmNoZWNrRGF0YVR5cGVzKShpdGVtVHlwZXMsIGl0ZW0sIGl0Lm9wdHMuc3RyaWN0TnVtYmVycywgZGF0YVR5cGVfMS5EYXRhVHlwZS5Xcm9uZyk7CiAgICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2VuLmNvbnN0KCJpbmRpY2VzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICAgICAgZ2VuLmZvcigoMCwgY29kZWdlbl8xLl8pYDske2l9LS07YCwgKCkgPT4gewogICAgICAgICAgICBnZW4ubGV0KGl0ZW0sICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfVske2l9XWApOwogICAgICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoMCwgY29kZWdlbl8xLl8pYGNvbnRpbnVlYCk7CiAgICAgICAgICAgIGlmIChpdGVtVHlwZXMubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpdGVtfSA9PSAic3RyaW5nImAsICgwLCBjb2RlZ2VuXzEuXylgJHtpdGVtfSArPSAiXyJgKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7aW5kaWNlc31bJHtpdGVtfV0gPT0gIm51bWJlciJgLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihqLCAoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV1gKTsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKTsKICAgICAgICAgICAgfSkuY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV0gPSAke2l9YCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbG9vcE4yKGksIGopIHsKICAgICAgICAgIGNvbnN0IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgICAgY29uc3Qgb3V0ZXIgPSBnZW4ubmFtZSgib3V0ZXIiKTsKICAgICAgICAgIGdlbi5sYWJlbChvdXRlcikuZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgJHtqfSA9ICR7aX07ICR7an0tLTtgLCAoKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2VxbH0oJHtkYXRhfVske2l9XSwgJHtkYXRhfVske2p9XSlgLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsob3V0ZXIpOwogICAgICAgICAgfSkpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vY29uc3QuanMKdmFyIHJlcXVpcmVfY29uc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2NvbnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gY29uc3RhbnQiLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWxsb3dlZFZhbHVlOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiY29uc3QiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWFDb2RlLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGN4dDsKICAgICAgICBpZiAoJGRhdGEgfHwgc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IikgewogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEkeygwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpfSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KWApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjeHQuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hMn0gIT09ICR7ZGF0YX1gKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vZW51bS5qcwp2YXIgcmVxdWlyZV9lbnVtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9lbnVtLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gb25lIG9mIHRoZSBhbGxvd2VkIHZhbHVlcyIsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHthbGxvd2VkVmFsdWVzOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZW51bSIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmIHNjaGVtYTIubGVuZ3RoID09PSAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJlbnVtIG11c3QgaGF2ZSBub24tZW1wdHkgYXJyYXkiKTsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgY29uc3QgdlNjaGVtYSA9IGdlbi5jb25zdCgidlNjaGVtYSIsIHNjaGVtYUNvZGUpOwogICAgICAgICAgdmFsaWQgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5zY2hlbWEyLm1hcCgoX3gsIGkpID0+IGVxdWFsQ29kZSh2U2NoZW1hLCBpKSkpOwogICAgICAgIH0KICAgICAgICBjeHQucGFzcyh2YWxpZCk7CiAgICAgICAgZnVuY3Rpb24gbG9vcEVudW0oKSB7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICBnZW4uZm9yT2YoInYiLCBzY2hlbWFDb2RlLCAodikgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2fSlgLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKS5icmVhaygpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGVxdWFsQ29kZSh2U2NoZW1hLCBpKSB7CiAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGxpbWl0TnVtYmVyXzEgPSByZXF1aXJlX2xpbWl0TnVtYmVyKCk7CiAgICB2YXIgbXVsdGlwbGVPZl8xID0gcmVxdWlyZV9tdWx0aXBsZU9mKCk7CiAgICB2YXIgbGltaXRMZW5ndGhfMSA9IHJlcXVpcmVfbGltaXRMZW5ndGgoKTsKICAgIHZhciBwYXR0ZXJuXzEgPSByZXF1aXJlX3BhdHRlcm4oKTsKICAgIHZhciBsaW1pdFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfbGltaXRQcm9wZXJ0aWVzKCk7CiAgICB2YXIgcmVxdWlyZWRfMSA9IHJlcXVpcmVfcmVxdWlyZWQoKTsKICAgIHZhciBsaW1pdEl0ZW1zXzEgPSByZXF1aXJlX2xpbWl0SXRlbXMoKTsKICAgIHZhciB1bmlxdWVJdGVtc18xID0gcmVxdWlyZV91bmlxdWVJdGVtcygpOwogICAgdmFyIGNvbnN0XzEgPSByZXF1aXJlX2NvbnN0KCk7CiAgICB2YXIgZW51bV8xID0gcmVxdWlyZV9lbnVtKCk7CiAgICB2YXIgdmFsaWRhdGlvbiA9IFsKICAgICAgLy8gbnVtYmVyCiAgICAgIGxpbWl0TnVtYmVyXzEuZGVmYXVsdCwKICAgICAgbXVsdGlwbGVPZl8xLmRlZmF1bHQsCiAgICAgIC8vIHN0cmluZwogICAgICBsaW1pdExlbmd0aF8xLmRlZmF1bHQsCiAgICAgIHBhdHRlcm5fMS5kZWZhdWx0LAogICAgICAvLyBvYmplY3QKICAgICAgbGltaXRQcm9wZXJ0aWVzXzEuZGVmYXVsdCwKICAgICAgcmVxdWlyZWRfMS5kZWZhdWx0LAogICAgICAvLyBhcnJheQogICAgICBsaW1pdEl0ZW1zXzEuZGVmYXVsdCwKICAgICAgdW5pcXVlSXRlbXNfMS5kZWZhdWx0LAogICAgICAvLyBhbnkKICAgICAgeyBrZXl3b3JkOiAidHlwZSIsIHNjaGVtYVR5cGU6IFsic3RyaW5nIiwgImFycmF5Il0gfSwKICAgICAgeyBrZXl3b3JkOiAibnVsbGFibGUiLCBzY2hlbWFUeXBlOiAiYm9vbGVhbiIgfSwKICAgICAgY29uc3RfMS5kZWZhdWx0LAogICAgICBlbnVtXzEuZGVmYXVsdAogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB2YWxpZGF0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbEl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJib29sZWFuIiwgIm9iamVjdCJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgaXRlbXMgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICciYWRkaXRpb25hbEl0ZW1zIiBpcyBpZ25vcmVkIHdoZW4gIml0ZW1zIiBpcyBub3QgYW4gYXJyYXkgb2Ygc2NoZW1hcycpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyhjeHQsIGl0ZW1zKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IGxlbjogaXRlbXMubGVuZ3RoIH0pOwogICAgICAgIGN4dC5wYXNzKCgwLCBjb2RlZ2VuXzEuXylgJHtsZW59IDw9ICR7aXRlbXMubGVuZ3RofWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi52YXIoInZhbGlkIiwgKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHZhbGlkYXRlSXRlbXModmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXModmFsaWQpIHsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCBpdGVtcy5sZW5ndGgsIGxlbiwgKGkpID0+IHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBkYXRhUHJvcDogaSwgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5OdW0gfSwgdmFsaWQpOwogICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMuanMKdmFyIHJlcXVpcmVfaXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuIHZhbGlkYXRlVHVwbGUoY3h0LCAiYWRkaXRpb25hbEl0ZW1zIiwgc2NoZW1hMik7CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJlZml4SXRlbXMuanMKdmFyIHJlcXVpcmVfcHJlZml4SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3ByZWZpeEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgaXRlbXNfMSA9IHJlcXVpcmVfaXRlbXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcmVmaXhJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsiYXJyYXkiXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlOiAoY3h0KSA9PiAoMCwgaXRlbXNfMS52YWxpZGF0ZVR1cGxlKShjeHQsICJpdGVtcyIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBtb3JlIHRoYW4gJHtsZW59IGl0ZW1zYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7bGVufX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIml0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBwcmVmaXhJdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChwcmVmaXhJdGVtcykKICAgICAgICAgICgwLCBhZGRpdGlvbmFsSXRlbXNfMS52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcykoY3h0LCBwcmVmaXhJdGVtcyk7CiAgICAgICAgZWxzZQogICAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMKdmFyIHJlcXVpcmVfY29udGFpbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2NvbnRhaW5zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgY29udGFpbiBhdCBsZWFzdCAke21pbn0gdmFsaWQgaXRlbShzKWAgOiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSBhbmQgbm8gbW9yZSB0aGFuICR7bWF4fSB2YWxpZCBpdGVtKHMpYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbWluLCBtYXggfSB9KSA9PiBtYXggPT09IHZvaWQgMCA/ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn19YCA6ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn0sIG1heENvbnRhaW5zOiAke21heH19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJjb250YWlucyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGxldCBtaW47CiAgICAgICAgbGV0IG1heDsKICAgICAgICBjb25zdCB7IG1pbkNvbnRhaW5zLCBtYXhDb250YWlucyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmIChpdC5vcHRzLm5leHQpIHsKICAgICAgICAgIG1pbiA9IG1pbkNvbnRhaW5zID09PSB2b2lkIDAgPyAxIDogbWluQ29udGFpbnM7CiAgICAgICAgICBtYXggPSBtYXhDb250YWluczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWluID0gMTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IG1pbiwgbWF4IH0pOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDApIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPT0gMCB3aXRob3V0ICJtYXhDb250YWlucyI6ICJjb250YWlucyIga2V5d29yZCBpZ25vcmVkYCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChtYXggIT09IHZvaWQgMCAmJiBtaW4gPiBtYXgpIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPiAibWF4Q29udGFpbnMiIGlzIGFsd2F5cyBpbnZhbGlkYCk7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICBsZXQgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtsZW59ID49ICR7bWlufWA7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtsZW59IDw9ICR7bWF4fWA7CiAgICAgICAgICBjeHQucGFzcyhjb25kKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMSkgewogICAgICAgICAgdmFsaWRhdGVJdGVtcyh2YWxpZCwgKCkgPT4gZ2VuLmlmKHZhbGlkLCAoKSA9PiBnZW4uYnJlYWsoKSkpOwogICAgICAgIH0gZWxzZSBpZiAobWluID09PSAwKSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGlmIChtYXggIT09IHZvaWQgMCkKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggPiAwYCwgdmFsaWRhdGVJdGVtc1dpdGhDb3VudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5sZXQodmFsaWQsIGZhbHNlKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKTsKICAgICAgICB9CiAgICAgICAgY3h0LnJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKSB7CiAgICAgICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgICAgIGNvbnN0IGNvdW50ID0gZ2VuLmxldCgiY291bnQiLCAwKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXMoc2NoVmFsaWQsICgpID0+IGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gY2hlY2tMaW1pdHMoY291bnQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXMoX3ZhbGlkLCBibG9jaykgewogICAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICBrZXl3b3JkOiAiY29udGFpbnMiLAogICAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8xLlR5cGUuTnVtLAogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgICAgfSwgX3ZhbGlkKTsKICAgICAgICAgICAgYmxvY2soKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja0xpbWl0cyhjb3VudCkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSsrYCk7CiAgICAgICAgICBpZiAobWF4ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPj0gJHttaW59YCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+ICR7bWF4fWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhaygpKTsKICAgICAgICAgICAgaWYgKG1pbiA9PT0gMSkKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzCnZhciByZXF1aXJlX2RlcGVuZGVuY2llcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVNjaGVtYURlcHMgPSBleHBvcnRzMi52YWxpZGF0ZVByb3BlcnR5RGVwcyA9IGV4cG9ydHMyLmVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIGV4cG9ydHMyLmVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgcHJvcGVydHksIGRlcHNDb3VudCwgZGVwcyB9IH0pID0+IHsKICAgICAgICBjb25zdCBwcm9wZXJ0eV9pZXMgPSBkZXBzQ291bnQgPT09IDEgPyAicHJvcGVydHkiIDogInByb3BlcnRpZXMiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBoYXZlICR7cHJvcGVydHlfaWVzfSAke2RlcHN9IHdoZW4gcHJvcGVydHkgJHtwcm9wZXJ0eX0gaXMgcHJlc2VudGA7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IHByb3BlcnR5LCBkZXBzQ291bnQsIGRlcHMsIG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Byb3BlcnR5OiAke3Byb3BlcnR5fSwKICAgIG1pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9LAogICAgZGVwc0NvdW50OiAke2RlcHNDb3VudH0sCiAgICBkZXBzOiAke2RlcHN9fWAKICAgICAgLy8gVE9ETyBjaGFuZ2UgdG8gcmVmZXJlbmNlCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImRlcGVuZGVuY2llcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3I6IGV4cG9ydHMyLmVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IFtwcm9wRGVwcywgc2NoRGVwc10gPSBzcGxpdERlcGVuZGVuY2llcyhjeHQpOwogICAgICAgIHZhbGlkYXRlUHJvcGVydHlEZXBzKGN4dCwgcHJvcERlcHMpOwogICAgICAgIHZhbGlkYXRlU2NoZW1hRGVwcyhjeHQsIHNjaERlcHMpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gc3BsaXREZXBlbmRlbmNpZXMoeyBzY2hlbWE6IHNjaGVtYTIgfSkgewogICAgICBjb25zdCBwcm9wZXJ0eURlcHMgPSB7fTsKICAgICAgY29uc3Qgc2NoZW1hRGVwcyA9IHt9OwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIl9fcHJvdG9fXyIpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBkZXBzID0gQXJyYXkuaXNBcnJheShzY2hlbWEyW2tleV0pID8gcHJvcGVydHlEZXBzIDogc2NoZW1hRGVwczsKICAgICAgICBkZXBzW2tleV0gPSBzY2hlbWEyW2tleV07CiAgICAgIH0KICAgICAgcmV0dXJuIFtwcm9wZXJ0eURlcHMsIHNjaGVtYURlcHNdOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0eURlcHMoY3h0LCBwcm9wZXJ0eURlcHMgPSBjeHQuc2NoZW1hKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydHlEZXBzKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICBmb3IgKGNvbnN0IHByb3AgaW4gcHJvcGVydHlEZXBzKSB7CiAgICAgICAgY29uc3QgZGVwcyA9IHByb3BlcnR5RGVwc1twcm9wXTsKICAgICAgICBpZiAoZGVwcy5sZW5ndGggPT09IDApCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBoYXNQcm9wZXJ0eSA9ICgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsKICAgICAgICAgIHByb3BlcnR5OiBwcm9wLAogICAgICAgICAgZGVwc0NvdW50OiBkZXBzLmxlbmd0aCwKICAgICAgICAgIGRlcHM6IGRlcHMuam9pbigiLCAiKQogICAgICAgIH0pOwogICAgICAgIGlmIChpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgIGdlbi5pZihoYXNQcm9wZXJ0eSwgKCkgPT4gewogICAgICAgICAgICBmb3IgKGNvbnN0IGRlcFByb3Agb2YgZGVwcykgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBkZXBQcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aGFzUHJvcGVydHl9ICYmICgkeygwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBkZXBzLCBtaXNzaW5nKX0pYCk7CiAgICAgICAgICAoMCwgY29kZV8xLnJlcG9ydE1pc3NpbmdQcm9wKShjeHQsIG1pc3NpbmcpOwogICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlUHJvcGVydHlEZXBzID0gdmFsaWRhdGVQcm9wZXJ0eURlcHM7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVNjaGVtYURlcHMoY3h0LCBzY2hlbWFEZXBzID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgZm9yIChjb25zdCBwcm9wIGluIHNjaGVtYURlcHMpIHsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYURlcHNbcHJvcF0pKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgZ2VuLmlmKAogICAgICAgICAgKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpLAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZCwgc2NoZW1hUHJvcDogcHJvcCB9LCB2YWxpZCk7CiAgICAgICAgICAgIGN4dC5tZXJnZVZhbGlkRXZhbHVhdGVkKHNjaEN4dCwgdmFsaWQpOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IGdlbi52YXIodmFsaWQsIHRydWUpCiAgICAgICAgICAvLyBUT0RPIHZhcgogICAgICAgICk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVTY2hlbWFEZXBzID0gdmFsaWRhdGVTY2hlbWFEZXBzOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnR5TmFtZXMuanMKdmFyIHJlcXVpcmVfcHJvcGVydHlOYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydHlOYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAicHJvcGVydHkgbmFtZSBtdXN0IGJlIHZhbGlkIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHlOYW1lOiAke3BhcmFtcy5wcm9wZXJ0eU5hbWV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydHlOYW1lcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEyKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IHByb3BlcnR5TmFtZToga2V5IH0pOwogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0eU5hbWVzIiwKICAgICAgICAgICAgZGF0YToga2V5LAogICAgICAgICAgICBkYXRhVHlwZXM6IFsic3RyaW5nIl0sCiAgICAgICAgICAgIHByb3BlcnR5TmFtZToga2V5LAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICBjeHQuZXJyb3IodHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsUHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHByb3BzID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShwYXJlbnRTY2hlbWEucHJvcGVydGllcyk7CiAgICAgICAgY29uc3QgcGF0UHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wYXR0ZXJuUHJvcGVydGllcyk7CiAgICAgICAgY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgICAgIGN4dC5vaygoMCwgY29kZWdlbl8xLl8pYCR7ZXJyc0NvdW50fSA9PT0gJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfWApOwogICAgICAgIGZ1bmN0aW9uIGNoZWNrQWRkaXRpb25hbFByb3BlcnRpZXMoKSB7CiAgICAgICAgICBnZW4uZm9ySW4oImtleSIsIGRhdGEsIChrZXkpID0+IHsKICAgICAgICAgICAgaWYgKCFwcm9wcy5sZW5ndGggJiYgIXBhdFByb3BzLmxlbmd0aCkKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydHlDb2RlKGtleSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoaXNBZGRpdGlvbmFsKGtleSksICgpID0+IGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgbGV0IGRlZmluZWRQcm9wOwogICAgICAgICAgaWYgKHByb3BzLmxlbmd0aCA+IDgpIHsKICAgICAgICAgICAgY29uc3QgcHJvcHNTY2hlbWEgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgcGFyZW50U2NoZW1hLnByb3BlcnRpZXMsICJwcm9wZXJ0aWVzIik7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVfMS5pc093blByb3BlcnR5KShnZW4sIHByb3BzU2NoZW1hLCBrZXkpOwogICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5sZW5ndGgpIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5wcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl9ID09PSAke3B9YCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSBjb2RlZ2VuXzEubmlsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhdFByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKGRlZmluZWRQcm9wLCAuLi5wYXRQcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgcCl9LnRlc3QoJHtrZXl9KWApKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm5vdCkoZGVmaW5lZFByb3ApOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBkZWxldGVBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBkZWxldGUgJHtkYXRhfVske2tleX1dYCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSB7CiAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiYWxsIiB8fCBvcHRzLnJlbW92ZUFkZGl0aW9uYWwgJiYgc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJmYWlsaW5nIikgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHsKICAgICAgICAgICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkKTsKICAgICAgICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlBZGRpdGlvbmFsU2NoZW1hKGtleSwgdmFsaWQsIGVycm9ycykgewogICAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gewogICAgICAgICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLlN0cgogICAgICAgICAgfTsKICAgICAgICAgIGlmIChlcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc3Vic2NoZW1hLCB7CiAgICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZSwKICAgICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHN1YnNjaGVtYSwgdmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInByb3BlcnRpZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogIm9iamVjdCIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChpdC5vcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiICYmIHBhcmVudFNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllcyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQuY29kZShuZXcgdmFsaWRhdGVfMS5LZXl3b3JkQ3h0KGl0LCBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQsICJhZGRpdGlvbmFsUHJvcGVydGllcyIpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYWxsUHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHNjaGVtYTIpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykgewogICAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgIH0KICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBhbGxQcm9wcy5sZW5ndGggJiYgaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgKDAsIHV0aWxfMS50b0hhc2gpKGFsbFByb3BzKSwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYWxsUHJvcHMuZmlsdGVyKChwKSA9PiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTJbcF0pKTsKICAgICAgICBpZiAocHJvcGVydGllcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgcHJvcGVydGllcykgewogICAgICAgICAgaWYgKGhhc0RlZmF1bHQocHJvcCkpIHsKICAgICAgICAgICAgYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgICBnZW4uZWxzZSgpLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgICAgfQogICAgICAgICAgY3h0Lml0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhc0RlZmF1bHQocHJvcCkgewogICAgICAgICAgcmV0dXJuIGl0Lm9wdHMudXNlRGVmYXVsdHMgJiYgIWl0LmNvbXBvc2l0ZVJ1bGUgJiYgc2NoZW1hMltwcm9wXS5kZWZhdWx0ICE9PSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5UHJvcGVydHlTY2hlbWEocHJvcCkgewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0aWVzIiwKICAgICAgICAgICAgc2NoZW1hUHJvcDogcHJvcCwKICAgICAgICAgICAgZGF0YVByb3A6IHByb3AKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcGF0dGVyblByb3BlcnRpZXMuanMKdmFyIHJlcXVpcmVfcGF0dGVyblByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMgfSA9IGl0OwogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEyKTsKICAgICAgICBjb25zdCBhbHdheXNWYWxpZFBhdHRlcm5zID0gcGF0dGVybnMuZmlsdGVyKChwKSA9PiAoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMltwXSkpOwogICAgICAgIGlmIChwYXR0ZXJucy5sZW5ndGggPT09IDAgfHwgYWx3YXlzVmFsaWRQYXR0ZXJucy5sZW5ndGggPT09IHBhdHRlcm5zLmxlbmd0aCAmJiAoIWl0Lm9wdHMudW5ldmFsdWF0ZWQgfHwgaXQucHJvcHMgPT09IHRydWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNoZWNrUHJvcGVydGllcyA9IG9wdHMuc3RyaWN0U2NoZW1hICYmICFvcHRzLmFsbG93TWF0Y2hpbmdQcm9wZXJ0aWVzICYmIHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlICYmICEoaXQucHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkpIHsKICAgICAgICAgIGl0LnByb3BzID0gKDAsIHV0aWxfMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSkoZ2VuLCBpdC5wcm9wcyk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHsgcHJvcHMgfSA9IGl0OwogICAgICAgIHZhbGlkYXRlUGF0dGVyblByb3BlcnRpZXMoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVBhdHRlcm5Qcm9wZXJ0aWVzKCkgewogICAgICAgICAgZm9yIChjb25zdCBwYXQgb2YgcGF0dGVybnMpIHsKICAgICAgICAgICAgaWYgKGNoZWNrUHJvcGVydGllcykKICAgICAgICAgICAgICBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgICAgZ2VuLmlmKHZhbGlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpIHsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGVja1Byb3BlcnRpZXMpIHsKICAgICAgICAgICAgaWYgKG5ldyBSZWdFeHAocGF0KS50ZXN0KHByb3ApKSB7CiAgICAgICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgcHJvcGVydHkgJHtwcm9wfSBtYXRjaGVzIHBhdHRlcm4gJHtwYXR9ICh1c2UgYWxsb3dNYXRjaGluZ1Byb3BlcnRpZXMpYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCkgewogICAgICAgICAgZ2VuLmZvckluKCJrZXkiLCBkYXRhLCAoa2V5KSA9PiB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7KDAsIGNvZGVfMS51c2VQYXR0ZXJuKShjeHQsIHBhdCl9LnRlc3QoJHtrZXl9KWAsICgpID0+IHsKICAgICAgICAgICAgICBjb25zdCBhbHdheXNWYWxpZCA9IGFsd2F5c1ZhbGlkUGF0dGVybnMuaW5jbHVkZXMocGF0KTsKICAgICAgICAgICAgICBpZiAoIWFsd2F5c1ZhbGlkKSB7CiAgICAgICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgICAgICAgICAgICAgc2NoZW1hUHJvcDogcGF0LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMi5UeXBlLlN0cgogICAgICAgICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBwcm9wcyAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cHJvcHN9WyR7a2V5fV1gLCB0cnVlKTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFhbHdheXNWYWxpZCAmJiAhaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzCnZhciByZXF1aXJlX25vdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgYWxsRXJyb3JzOiBmYWxzZQogICAgICAgIH0sIHZhbGlkKTsKICAgICAgICBjeHQuZmFpbFJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCksICgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgfSwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgTk9UIGJlIHZhbGlkIiB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzCnZhciByZXF1aXJlX2FueU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbnlPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbnlPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlOiBjb2RlXzEudmFsaWRhdGVVbmlvbiwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgbWF0Y2ggYSBzY2hlbWEgaW4gYW55T2YiIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivb25lT2YuanMKdmFyIHJlcXVpcmVfb25lT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGV4YWN0bHkgb25lIHNjaGVtYSBpbiBvbmVPZiIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Bhc3NpbmdTY2hlbWFzOiAke3BhcmFtcy5wYXNzaW5nfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGlmIChpdC5vcHRzLmRpc2NyaW1pbmF0b3IgJiYgcGFyZW50U2NoZW1hLmRpc2NyaW1pbmF0b3IpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3Qgc2NoQXJyID0gc2NoZW1hMjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICAgIGNvbnN0IHBhc3NpbmcgPSBnZW4ubGV0KCJwYXNzaW5nIiwgbnVsbCk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IHBhc3NpbmcgfSk7CiAgICAgICAgZ2VuLmJsb2NrKHZhbGlkYXRlT25lT2YpOwogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlT25lT2YoKSB7CiAgICAgICAgICBzY2hBcnIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICAgIGxldCBzY2hDeHQ7CiAgICAgICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkgewogICAgICAgICAgICAgIGdlbi52YXIoc2NoVmFsaWQsIHRydWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7c2NoVmFsaWR9ICYmICR7dmFsaWR9YCkuYXNzaWduKHZhbGlkLCBmYWxzZSkuYXNzaWduKHBhc3NpbmcsICgwLCBjb2RlZ2VuXzEuXylgWyR7cGFzc2luZ30sICR7aX1dYCkuZWxzZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gewogICAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgICAgICAgIGdlbi5hc3NpZ24ocGFzc2luZywgaSk7CiAgICAgICAgICAgICAgaWYgKHNjaEN4dCkKICAgICAgICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMKdmFyIHJlcXVpcmVfYWxsT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FsbE9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWxsT2YiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIHNjaGVtYTIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9pZi5qcwp2YXIgcmVxdWlyZV9pZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoICIke3BhcmFtcy5pZkNsYXVzZX0iIHNjaGVtYWAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2ZhaWxpbmdLZXl3b3JkOiAke3BhcmFtcy5pZkNsYXVzZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZiIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS50aGVuID09PSB2b2lkIDAgJiYgcGFyZW50U2NoZW1hLmVsc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCAnImlmIiB3aXRob3V0ICJ0aGVuIiBhbmQgImVsc2UiIGlzIGlnbm9yZWQnKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaGFzVGhlbiA9IGhhc1NjaGVtYShpdCwgInRoZW4iKTsKICAgICAgICBjb25zdCBoYXNFbHNlID0gaGFzU2NoZW1hKGl0LCAiZWxzZSIpOwogICAgICAgIGlmICghaGFzVGhlbiAmJiAhaGFzRWxzZSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgdmFsaWRhdGVJZigpOwogICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgIGlmIChoYXNUaGVuICYmIGhhc0Vsc2UpIHsKICAgICAgICAgIGNvbnN0IGlmQ2xhdXNlID0gZ2VuLmxldCgiaWZDbGF1c2UiKTsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZSB9KTsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iLCBpZkNsYXVzZSksIHZhbGlkYXRlQ2xhdXNlKCJlbHNlIiwgaWZDbGF1c2UpKTsKICAgICAgICB9IGVsc2UgaWYgKGhhc1RoZW4pIHsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkoc2NoVmFsaWQpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJZigpIHsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAiaWYiLAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVDbGF1c2Uoa2V5d29yZCwgaWZDbGF1c2UpIHsKICAgICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgc2NoVmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgICAgaWYgKGlmQ2xhdXNlKQogICAgICAgICAgICAgIGdlbi5hc3NpZ24oaWZDbGF1c2UsICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl3b3JkfWApOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGlmQ2xhdXNlOiBrZXl3b3JkIH0pOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBoYXNTY2hlbWEoaXQsIGtleXdvcmQpIHsKICAgICAgY29uc3Qgc2NoZW1hMiA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgcmV0dXJuIHNjaGVtYTIgIT09IHZvaWQgMCAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci90aGVuRWxzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJ0aGVuIiwgImVsc2UiXSwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBjb2RlKHsga2V5d29yZCwgcGFyZW50U2NoZW1hLCBpdCB9KSB7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS5pZiA9PT0gdm9pZCAwKQogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIiR7a2V5d29yZH0iIHdpdGhvdXQgImlmIiBpcyBpZ25vcmVkYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfYXBwbGljYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgbWF0Y2ggZm9ybWF0ICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmb3JtYXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJmb3JtYXQiLAogICAgICB0eXBlOiBbIm51bWJlciIsICJzdHJpbmciXSwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQsIHJ1bGVUeXBlKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBlcnJTY2hlbWFQYXRoLCBzY2hlbWFFbnYsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICgkZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZkRlZiA9IGdlbi5jb25zdCgiZkRlZiIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske3NjaGVtYUNvZGV9XWApOwogICAgICAgICAgY29uc3QgZlR5cGUgPSBnZW4ubGV0KCJmVHlwZSIpOwogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2VuLmxldCgiZm9ybWF0Iik7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmRGVmfSA9PSAib2JqZWN0IiAmJiAhKCR7ZkRlZn0gaW5zdGFuY2VvZiBSZWdFeHApYCwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnR5cGUgfHwgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCAoMCwgY29kZWdlbl8xLl8pYCR7ZkRlZn0udmFsaWRhdGVgKSwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAic3RyaW5nImApLmFzc2lnbihmb3JtYXQsIGZEZWYpKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikodW5rbm93bkZtdCgpLCBpbnZhbGlkRm10KCkpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25GbXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpCiAgICAgICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gJiYgISR7Zm9ybWF0fWA7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBpbnZhbGlkRm10KCkgewogICAgICAgICAgICBjb25zdCBjYWxsRm9ybWF0ID0gc2NoZW1hRW52LiRhc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgKCR7ZkRlZn0uYXN5bmMgPyBhd2FpdCAke2Zvcm1hdH0oJHtkYXRhfSkgOiAke2Zvcm1hdH0oJHtkYXRhfSkpYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmb3JtYXR9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgY29uc3QgdmFsaWREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAodHlwZW9mICR7Zm9ybWF0fSA9PSAiZnVuY3Rpb24iID8gJHtjYWxsRm9ybWF0fSA6ICR7Zm9ybWF0fS50ZXN0KCR7ZGF0YX0pKWA7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSAmJiAke2Zvcm1hdH0gIT09IHRydWUgJiYgJHtmVHlwZX0gPT09ICR7cnVsZVR5cGV9ICYmICEke3ZhbGlkRGF0YX1gOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdERlZiA9IHNlbGYyLmZvcm1hdHNbc2NoZW1hMl07CiAgICAgICAgICBpZiAoIWZvcm1hdERlZikgewogICAgICAgICAgICB1bmtub3duRm9ybWF0KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmb3JtYXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IFtmbXRUeXBlLCBmb3JtYXQsIGZtdFJlZl0gPSBnZXRGb3JtYXQoZm9ybWF0RGVmKTsKICAgICAgICAgIGlmIChmbXRUeXBlID09PSBydWxlVHlwZSkKICAgICAgICAgICAgY3h0LnBhc3ModmFsaWRDb25kaXRpb24oKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm9ybWF0KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4odW5rbm93bk1zZygpKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHVua25vd25Nc2coKSk7CiAgICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Nc2coKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGB1bmtub3duIGZvcm1hdCAiJHtzY2hlbWEyfSIgaWdub3JlZCBpbiBzY2hlbWEgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSJgOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBnZXRGb3JtYXQoZm10RGVmKSB7CiAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBmbXREZWYgaW5zdGFuY2VvZiBSZWdFeHAgPyAoMCwgY29kZWdlbl8xLnJlZ2V4cENvZGUpKGZtdERlZikgOiBvcHRzLmNvZGUuZm9ybWF0cyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtvcHRzLmNvZGUuZm9ybWF0c30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHNjaGVtYTIpfWAgOiB2b2lkIDA7CiAgICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgeyBrZXk6IHNjaGVtYTIsIHJlZjogZm10RGVmLCBjb2RlIH0pOwogICAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiA9PSAib2JqZWN0IiAmJiAhKGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCkpIHsKICAgICAgICAgICAgICByZXR1cm4gW2ZtdERlZi50eXBlIHx8ICJzdHJpbmciLCBmbXREZWYudmFsaWRhdGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LnZhbGlkYXRlYF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFsic3RyaW5nIiwgZm10RGVmLCBmbXRdOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gdmFsaWRDb25kaXRpb24oKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm9ybWF0RGVmID09ICJvYmplY3QiICYmICEoZm9ybWF0RGVmIGluc3RhbmNlb2YgUmVnRXhwKSAmJiBmb3JtYXREZWYuYXN5bmMpIHsKICAgICAgICAgICAgICBpZiAoIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIGZvcm1hdCBpbiBzeW5jIHNjaGVtYSIpOwogICAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7Zm10UmVmfSgke2RhdGF9KWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmb3JtYXQgPT0gImZ1bmN0aW9uIiA/ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9KCR7ZGF0YX0pYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9LnRlc3QoJHtkYXRhfSlgOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2luZGV4LmpzCnZhciByZXF1aXJlX2Zvcm1hdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBmb3JtYXRfMSA9IHJlcXVpcmVfZm9ybWF0KCk7CiAgICB2YXIgZm9ybWF0ID0gW2Zvcm1hdF8xLmRlZmF1bHRdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL21ldGFkYXRhLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IFsKICAgICAgInRpdGxlIiwKICAgICAgImRlc2NyaXB0aW9uIiwKICAgICAgImRlZmF1bHQiLAogICAgICAiZGVwcmVjYXRlZCIsCiAgICAgICJyZWFkT25seSIsCiAgICAgICJ3cml0ZU9ubHkiLAogICAgICAiZXhhbXBsZXMiCiAgICBdOwogICAgZXhwb3J0czIuY29udGVudFZvY2FidWxhcnkgPSBbCiAgICAgICJjb250ZW50TWVkaWFUeXBlIiwKICAgICAgImNvbnRlbnRFbmNvZGluZyIsCiAgICAgICJjb250ZW50U2NoZW1hIgogICAgXTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kcmFmdDcuanMKdmFyIHJlcXVpcmVfZHJhZnQ3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMigpOwogICAgdmFyIHZhbGlkYXRpb25fMSA9IHJlcXVpcmVfdmFsaWRhdGlvbigpOwogICAgdmFyIGFwcGxpY2F0b3JfMSA9IHJlcXVpcmVfYXBwbGljYXRvcigpOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQyKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEoKTsKICAgIHZhciBkcmFmdDdWb2NhYnVsYXJpZXMgPSBbCiAgICAgIGNvcmVfMS5kZWZhdWx0LAogICAgICB2YWxpZGF0aW9uXzEuZGVmYXVsdCwKICAgICAgKDAsIGFwcGxpY2F0b3JfMS5kZWZhdWx0KSgpLAogICAgICBmb3JtYXRfMS5kZWZhdWx0LAogICAgICBtZXRhZGF0YV8xLm1ldGFkYXRhVm9jYWJ1bGFyeSwKICAgICAgbWV0YWRhdGFfMS5jb250ZW50Vm9jYWJ1bGFyeQogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkcmFmdDdWb2NhYnVsYXJpZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZGlzY3JpbWluYXRvci90eXBlcy5qcwp2YXIgcmVxdWlyZV90eXBlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvdHlwZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRpc2NyRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgRGlzY3JFcnJvcjsKICAgIChmdW5jdGlvbihEaXNjckVycm9yMikgewogICAgICBEaXNjckVycm9yMlsiVGFnIl0gPSAidGFnIjsKICAgICAgRGlzY3JFcnJvcjJbIk1hcHBpbmciXSA9ICJtYXBwaW5nIjsKICAgIH0pKERpc2NyRXJyb3IgfHwgKGV4cG9ydHMyLkRpc2NyRXJyb3IgPSBEaXNjckVycm9yID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc2NyaW1pbmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdHlwZXNfMSA9IHJlcXVpcmVfdHlwZXMoKTsKICAgIHZhciBjb21waWxlXzEgPSByZXF1aXJlX2NvbXBpbGUoKTsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWdOYW1lIH0gfSkgPT4gZGlzY3JFcnJvciA9PT0gdHlwZXNfMS5EaXNjckVycm9yLlRhZyA/IGB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgc3RyaW5nYCA6IGB2YWx1ZSBvZiB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgaW4gb25lT2ZgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWcsIHRhZ05hbWUgfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtlcnJvcjogJHtkaXNjckVycm9yfSwgdGFnOiAke3RhZ05hbWV9LCB0YWdWYWx1ZTogJHt0YWd9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZGlzY3JpbWluYXRvciIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb25lT2YgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIWl0Lm9wdHMuZGlzY3JpbWluYXRvcikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBkaXNjcmltaW5hdG9yIG9wdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB0YWdOYW1lID0gc2NoZW1hMi5wcm9wZXJ0eU5hbWU7CiAgICAgICAgaWYgKHR5cGVvZiB0YWdOYW1lICE9ICJzdHJpbmciKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBwcm9wZXJ0eU5hbWUiKTsKICAgICAgICBpZiAoc2NoZW1hMi5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRzY2hlbWE6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICAkaWQ6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICB0aXRsZTogIkNvcmUgc2NoZW1hIG1ldGEtc2NoZW1hIiwKICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICBzY2hlbWFBcnJheTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG1pbkl0ZW1zOiAxLAogICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMiIH0KICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlcjogewogICAgICAgICAgdHlwZTogImludGVnZXIiLAogICAgICAgICAgbWluaW11bTogMAogICAgICAgIH0sCiAgICAgICAgbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDA6IHsKICAgICAgICAgIGFsbE9mOiBbeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sIHsgZGVmYXVsdDogMCB9XQogICAgICAgIH0sCiAgICAgICAgc2ltcGxlVHlwZXM6IHsKICAgICAgICAgIGVudW06IFsiYXJyYXkiLCAiYm9vbGVhbiIsICJpbnRlZ2VyIiwgIm51bGwiLCAibnVtYmVyIiwgIm9iamVjdCIsICJzdHJpbmciXQogICAgICAgIH0sCiAgICAgICAgc3RyaW5nQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgICAgfSwKICAgICAgdHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGlkOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkc2NoZW1hOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaSIKICAgICAgICB9LAogICAgICAgICRyZWY6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgZm9ybWF0OiAidXJpLXJlZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICRjb21tZW50OiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZXNjcmlwdGlvbjogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIGRlZmF1bHQ6IHRydWUsCiAgICAgICAgcmVhZE9ubHk6IHsKICAgICAgICAgIHR5cGU6ICJib29sZWFuIiwKICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBleGFtcGxlczogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICBtdWx0aXBsZU9mOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG1heGltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWluaW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBtYXhMZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkxlbmd0aDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICBwYXR0ZXJuOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInJlZ2V4IgogICAgICAgIH0sCiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGl0ZW1zOiB7CiAgICAgICAgICBhbnlPZjogW3sgJHJlZjogIiMiIH0sIHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2NoZW1hQXJyYXkiIH1dLAogICAgICAgICAgZGVmYXVsdDogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbWF4SXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwIiB9LAogICAgICAgIHVuaXF1ZUl0ZW1zOiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgY29udGFpbnM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgbWF4UHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sCiAgICAgICAgbWluUHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICByZXF1aXJlZDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBkZWZpbml0aW9uczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9LAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgcHJvcGVydHlOYW1lczogeyBmb3JtYXQ6ICJyZWdleCIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsKICAgICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3N0cmluZ0FycmF5IiB9XQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydHlOYW1lczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBjb25zdDogdHJ1ZSwKICAgICAgICBlbnVtOiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICB0eXBlOiB7CiAgICAgICAgICBhbnlPZjogWwogICAgICAgICAgICB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NpbXBsZVR5cGVzIiB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICBmb3JtYXQ6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICBjb250ZW50TWVkaWFUeXBlOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudEVuY29kaW5nOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgaWY6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgdGhlbjogeyAkcmVmOiAiIyIgfSwKICAgICAgICBlbHNlOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGFsbE9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIGFueU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG9uZU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG5vdDogeyAkcmVmOiAiIyIgfQogICAgICB9LAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5NaXNzaW5nUmVmRXJyb3IgPSBleHBvcnRzMi5WYWxpZGF0aW9uRXJyb3IgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gZXhwb3J0czIuQWp2ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZSgpOwogICAgdmFyIGRyYWZ0N18xID0gcmVxdWlyZV9kcmFmdDcoKTsKICAgIHZhciBkaXNjcmltaW5hdG9yXzEgPSByZXF1aXJlX2Rpc2NyaW1pbmF0b3IoKTsKICAgIHZhciBkcmFmdDdNZXRhU2NoZW1hID0gcmVxdWlyZV9qc29uX3NjaGVtYV9kcmFmdF8wNygpOwogICAgdmFyIE1FVEFfU1VQUE9SVF9EQVRBID0gWyIvcHJvcGVydGllcyJdOwogICAgdmFyIE1FVEFfU0NIRU1BX0lEID0gImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIjsKICAgIHZhciBBanYgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5kZWZhdWx0IHsKICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICBzdXBlci5fYWRkVm9jYWJ1bGFyaWVzKCk7CiAgICAgICAgZHJhZnQ3XzEuZGVmYXVsdC5mb3JFYWNoKCh2KSA9PiB0aGlzLmFkZFZvY2FidWxhcnkodikpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHRoaXMuYWRkS2V5d29yZChkaXNjcmltaW5hdG9yXzEuZGVmYXVsdCk7CiAgICAgIH0KICAgICAgX2FkZERlZmF1bHRNZXRhU2NoZW1hKCkgewogICAgICAgIHN1cGVyLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmICghdGhpcy5vcHRzLm1ldGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgbWV0YVNjaGVtYSA9IHRoaXMub3B0cy4kZGF0YSA/IHRoaXMuJGRhdGFNZXRhU2NoZW1hKGRyYWZ0N01ldGFTY2hlbWEsIE1FVEFfU1VQUE9SVF9EQVRBKSA6IGRyYWZ0N01ldGFTY2hlbWE7CiAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIE1FVEFfU0NIRU1BX0lELCBmYWxzZSk7CiAgICAgICAgdGhpcy5yZWZzWyJodHRwOi8vanNvbi1zY2hlbWEub3JnL3NjaGVtYSJdID0gTUVUQV9TQ0hFTUFfSUQ7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHN1cGVyLmRlZmF1bHRNZXRhKCkgfHwgKHRoaXMuZ2V0U2NoZW1hKE1FVEFfU0NIRU1BX0lEKSA/IE1FVEFfU0NIRU1BX0lEIDogdm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFqdiA9IEFqdjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzLkFqdiA9IEFqdjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiS2V5d29yZEN4dCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRlXzEuS2V5d29yZEN4dDsKICAgIH0gfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5OYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkNvZGVHZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuQ29kZUdlbjsKICAgIH0gfSk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWxpZGF0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTWlzc2luZ1JlZkVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9mb3JtYXRzLmpzCnZhciByZXF1aXJlX2Zvcm1hdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIyKSB7CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBEQVRFLmV4ZWMoc3RyMik7CiAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIGNvbnN0IHllYXIgPSArbWF0Y2hlc1sxXTsKICAgICAgY29uc3QgbW9udGggPSArbWF0Y2hlc1syXTsKICAgICAgY29uc3QgZGF5ID0gK21hdGNoZXNbM107CiAgICAgIHJldHVybiBtb250aCA+PSAxICYmIG1vbnRoIDw9IDEyICYmIGRheSA+PSAxICYmIGRheSA8PSAobW9udGggPT09IDIgJiYgaXNMZWFwWWVhcih5ZWFyKSA/IDI5IDogREFZU1ttb250aF0pOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZURhdGUoZDEsIGQyKSB7CiAgICAgIGlmICghKGQxICYmIGQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBpZiAoZDEgPiBkMikKICAgICAgICByZXR1cm4gMTsKICAgICAgaWYgKGQxIDwgZDIpCiAgICAgICAgcmV0dXJuIC0xOwogICAgICByZXR1cm4gMDsKICAgIH0KICAgIHZhciBUSU1FID0gL14oXGRcZCk6KFxkXGQpOihcZFxkKD86XC5cZCspPykoenwoWystXSkoXGRcZCkoPzo6PyhcZFxkKSk/KT8kL2k7CiAgICBmdW5jdGlvbiBnZXRUaW1lKHN0cmljdFRpbWVab25lKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiB0aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cjIpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBociA9ICttYXRjaGVzWzFdOwogICAgICAgIGNvbnN0IG1pbiA9ICttYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHNlYyA9ICttYXRjaGVzWzNdOwogICAgICAgIGNvbnN0IHR6ID0gbWF0Y2hlc1s0XTsKICAgICAgICBjb25zdCB0elNpZ24gPSBtYXRjaGVzWzVdID09PSAiLSIgPyAtMSA6IDE7CiAgICAgICAgY29uc3QgdHpIID0gKyhtYXRjaGVzWzZdIHx8IDApOwogICAgICAgIGNvbnN0IHR6TSA9ICsobWF0Y2hlc1s3XSB8fCAwKTsKICAgICAgICBpZiAodHpIID4gMjMgfHwgdHpNID4gNTkgfHwgc3RyaWN0VGltZVpvbmUgJiYgIXR6KQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmIChociA8PSAyMyAmJiBtaW4gPD0gNTkgJiYgc2VjIDwgNjApCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCB1dGNNaW4gPSBtaW4gLSB0ek0gKiB0elNpZ247CiAgICAgICAgY29uc3QgdXRjSHIgPSBociAtIHR6SCAqIHR6U2lnbiAtICh1dGNNaW4gPCAwID8gMSA6IDApOwogICAgICAgIHJldHVybiAodXRjSHIgPT09IDIzIHx8IHV0Y0hyID09PSAtMSkgJiYgKHV0Y01pbiA9PT0gNTkgfHwgdXRjTWluID09PSAtMSkgJiYgc2VjIDwgNjE7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlVGltZShzMSwgczIpIHsKICAgICAgaWYgKCEoczEgJiYgczIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIGNvbnN0IHQxID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczEpKS52YWx1ZU9mKCk7CiAgICAgIGNvbnN0IHQyID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczIpKS52YWx1ZU9mKCk7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICByZXR1cm4gdDEgLSB0MjsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVJc29UaW1lKHQxLCB0MikgewogICAgICBpZiAoISh0MSAmJiB0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgYTEgPSBUSU1FLmV4ZWModDEpOwogICAgICBjb25zdCBhMiA9IFRJTUUuZXhlYyh0Mik7CiAgICAgIGlmICghKGExICYmIGEyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB0MSA9IGExWzFdICsgYTFbMl0gKyBhMVszXTsKICAgICAgdDIgPSBhMlsxXSArIGEyWzJdICsgYTJbM107CiAgICAgIGlmICh0MSA+IHQyKQogICAgICAgIHJldHVybiAxOwogICAgICBpZiAodDEgPCB0MikKICAgICAgICByZXR1cm4gLTE7CiAgICAgIHJldHVybiAwOwogICAgfQogICAgdmFyIERBVEVfVElNRV9TRVBBUkFUT1IgPSAvdHxccy9pOwogICAgZnVuY3Rpb24gZ2V0RGF0ZVRpbWUoc3RyaWN0VGltZVpvbmUpIHsKICAgICAgY29uc3QgdGltZSA9IGdldFRpbWUoc3RyaWN0VGltZVpvbmUpOwogICAgICByZXR1cm4gZnVuY3Rpb24gZGF0ZV90aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBkYXRlVGltZSA9IHN0cjIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIyKSB7CiAgICAgIHJldHVybiBOT1RfVVJJX0ZSQUdNRU5ULnRlc3Qoc3RyMikgJiYgVVJJLnRlc3Qoc3RyMik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIyKSB7CiAgICAgIEJZVEUubGFzdEluZGV4ID0gMDsKICAgICAgcmV0dXJuIEJZVEUudGVzdChzdHIyKTsKICAgIH0KICAgIHZhciBNSU5fSU5UMzIgPSAtKDIgKiogMzEpOwogICAgdmFyIE1BWF9JTlQzMiA9IDIgKiogMzEgLSAxOwogICAgZnVuY3Rpb24gdmFsaWRhdGVJbnQzMih2YWx1ZSkgewogICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSkgJiYgdmFsdWUgPD0gTUFYX0lOVDMyICYmIHZhbHVlID49IE1JTl9JTlQzMjsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50NjQodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVOdW1iZXIoKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgdmFyIFpfQU5DSE9SID0gL1teXFxdXFxaLzsKICAgIGZ1bmN0aW9uIHJlZ2V4KHN0cjIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyMikpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAoc3RyMik7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzCnZhciByZXF1aXJlX2xpbWl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9saW1pdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gcmVxdWlyZV9hanYoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBvcHMgPSBjb2RlZ2VuXzEub3BlcmF0b3JzOwogICAgdmFyIEtXRHMgPSB7CiAgICAgIGZvcm1hdE1heGltdW06IHsgb2tTdHI6ICI8PSIsIG9rOiBvcHMuTFRFLCBmYWlsOiBvcHMuR1QgfSwKICAgICAgZm9ybWF0TWluaW11bTogeyBva1N0cjogIj49Iiwgb2s6IG9wcy5HVEUsIGZhaWw6IG9wcy5MVCB9LAogICAgICBmb3JtYXRFeGNsdXNpdmVNYXhpbXVtOiB7IG9rU3RyOiAiPCIsIG9rOiBvcHMuTFQsIGZhaWw6IG9wcy5HVEUgfSwKICAgICAgZm9ybWF0RXhjbHVzaXZlTWluaW11bTogeyBva1N0cjogIj4iLCBvazogb3BzLkdULCBmYWlsOiBvcHMuTFRFIH0KICAgIH07CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYHNob3VsZCBiZSAke0tXRHNba2V5d29yZF0ub2tTdHJ9ICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Y29tcGFyaXNvbjogJHtLV0RzW2tleXdvcmRdLm9rU3RyfSwgbGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICAgIGlmICghb3B0cy52YWxpZGF0ZUZvcm1hdHMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZkN4dCA9IG5ldyBhanZfMS5LZXl3b3JkQ3h0KGl0LCBzZWxmMi5SVUxFUy5hbGwuZm9ybWF0LmRlZmluaXRpb24sICJmb3JtYXQiKTsKICAgICAgICBpZiAoZkN4dC4kZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZm10ID0gZ2VuLmNvbnN0KCJmbXQiLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10c31bJHtmQ3h0LnNjaGVtYUNvZGV9XWApOwogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLm9yKSgoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2ZtdH0gIT0gIm9iamVjdCJgLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10fSBpbnN0YW5jZW9mIFJlZ0V4cGAsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7Zm10fS5jb21wYXJlICE9ICJmdW5jdGlvbiJgLCBjb21wYXJlQ29kZShmbXQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZkN4dC5zY2hlbWE7CiAgICAgICAgICBjb25zdCBmbXREZWYgPSBzZWxmMi5mb3JtYXRzW2Zvcm1hdF07CiAgICAgICAgICBpZiAoIWZtdERlZiB8fCBmbXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGlmICh0eXBlb2YgZm10RGVmICE9ICJvYmplY3QiIHx8IGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCB8fCB0eXBlb2YgZm10RGVmLmNvbXBhcmUgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCIke2tleXdvcmR9IjogZm9ybWF0ICIke2Zvcm1hdH0iIGRvZXMgbm90IGRlZmluZSAiY29tcGFyZSIgZnVuY3Rpb25gKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICBrZXk6IGZvcm1hdCwKICAgICAgICAgICAgcmVmOiBmbXREZWYsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzID8gKDAsIGNvZGVnZW5fMS5fKWAke29wdHMuY29kZS5mb3JtYXRzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoZm9ybWF0KX1gIDogdm9pZCAwCiAgICAgICAgICB9KTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoY29tcGFyZUNvZGUoZm10KSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNvbXBhcmVDb2RlKGZtdCkgewogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LmNvbXBhcmUoJHtkYXRhfSwgJHtzY2hlbWFDb2RlfSkgJHtLV0RzW2tleXdvcmRdLmZhaWx9IDBgOwogICAgICAgIH0KICAgICAgfSwKICAgICAgZGVwZW5kZW5jaWVzOiBbImZvcm1hdCJdCiAgICB9OwogICAgdmFyIGZvcm1hdExpbWl0UGx1Z2luID0gKGFqdikgPT4gewogICAgICBhanYuYWRkS2V5d29yZChleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24pOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXRMaW1pdFBsdWdpbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0c18xID0gcmVxdWlyZV9mb3JtYXRzKCk7CiAgICB2YXIgbGltaXRfMSA9IHJlcXVpcmVfbGltaXQoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBmdWxsTmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZnVsbEZvcm1hdHMiKTsKICAgIHZhciBmYXN0TmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZmFzdEZvcm1hdHMiKTsKICAgIHZhciBmb3JtYXRzUGx1Z2luID0gKGFqdiwgb3B0cyA9IHsga2V5d29yZHM6IHRydWUgfSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRzKSkgewogICAgICAgIGFkZEZvcm1hdHMoYWp2LCBvcHRzLCBmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lKTsKICAgICAgICByZXR1cm4gYWp2OwogICAgICB9CiAgICAgIGNvbnN0IFtmb3JtYXRzLCBleHBvcnROYW1lXSA9IG9wdHMubW9kZSA9PT0gImZhc3QiID8gW2Zvcm1hdHNfMS5mYXN0Rm9ybWF0cywgZmFzdE5hbWVdIDogW2Zvcm1hdHNfMS5mdWxsRm9ybWF0cywgZnVsbE5hbWVdOwogICAgICBjb25zdCBsaXN0ID0gb3B0cy5mb3JtYXRzIHx8IGZvcm1hdHNfMS5mb3JtYXROYW1lczsKICAgICAgYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZvcm1hdHMsIGV4cG9ydE5hbWUpOwogICAgICBpZiAob3B0cy5rZXl3b3JkcykKICAgICAgICAoMCwgbGltaXRfMS5kZWZhdWx0KShhanYpOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGZvcm1hdHNQbHVnaW4uZ2V0ID0gKG5hbWUsIG1vZGUgPSAiZnVsbCIpID0+IHsKICAgICAgY29uc3QgZm9ybWF0cyA9IG1vZGUgPT09ICJmYXN0IiA/IGZvcm1hdHNfMS5mYXN0Rm9ybWF0cyA6IGZvcm1hdHNfMS5mdWxsRm9ybWF0czsKICAgICAgY29uc3QgZiA9IGZvcm1hdHNbbmFtZV07CiAgICAgIGlmICghZikKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9ybWF0ICIke25hbWV9ImApOwogICAgICByZXR1cm4gZjsKICAgIH07CiAgICBmdW5jdGlvbiBhZGRGb3JtYXRzKGFqdiwgbGlzdCwgZnMsIGV4cG9ydE5hbWUpIHsKICAgICAgdmFyIF9hOwogICAgICB2YXIgX2I7CiAgICAgIChfYSA9IChfYiA9IGFqdi5vcHRzLmNvZGUpLmZvcm1hdHMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IF9iLmZvcm1hdHMgPSAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cyIpLiR7ZXhwb3J0TmFtZX1gOwogICAgICBmb3IgKGNvbnN0IGYgb2YgbGlzdCkKICAgICAgICBhanYuYWRkRm9ybWF0KGYsIGZzW2ZdKTsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gZm9ybWF0c1BsdWdpbjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdHNQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcwp2YXIgcmVxdWlyZV9pc0Z1bmN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNGdW5jdGlvbiA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gImZ1bmN0aW9uIjsKICAgIH0KICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMKdmFyIHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUVycm9yQ2xhc3MgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBjcmVhdGVFcnJvckNsYXNzKGNyZWF0ZUltcGwpIHsKICAgICAgdmFyIF9zdXBlciA9IGZ1bmN0aW9uKGluc3RhbmNlKSB7CiAgICAgICAgRXJyb3IuY2FsbChpbnN0YW5jZSk7CiAgICAgICAgaW5zdGFuY2Uuc3RhY2sgPSBuZXcgRXJyb3IoKS5zdGFjazsKICAgICAgfTsKICAgICAgdmFyIGN0b3JGdW5jID0gY3JlYXRlSW1wbChfc3VwZXIpOwogICAgICBjdG9yRnVuYy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CiAgICAgIGN0b3JGdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGN0b3JGdW5jOwogICAgICByZXR1cm4gY3RvckZ1bmM7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVFcnJvckNsYXNzID0gY3JlYXRlRXJyb3JDbGFzczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzCnZhciByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbnN1YnNjcmlwdGlvbkVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVW5zdWJzY3JpcHRpb25FcnJvckltcGwoZXJyb3JzKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9IGVycm9ycyA/IGVycm9ycy5sZW5ndGggKyAiIGVycm9ycyBvY2N1cnJlZCBkdXJpbmcgdW5zdWJzY3JpcHRpb246XG4iICsgZXJyb3JzLm1hcChmdW5jdGlvbihlcnIsIGkpIHsKICAgICAgICAgIHJldHVybiBpICsgMSArICIpICIgKyBlcnIudG9TdHJpbmcoKTsKICAgICAgICB9KS5qb2luKCJcbiAgIikgOiAiIjsKICAgICAgICB0aGlzLm5hbWUgPSAiVW5zdWJzY3JpcHRpb25FcnJvciI7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcnJSZW1vdmUuanMKdmFyIHJlcXVpcmVfYXJyUmVtb3ZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJyUmVtb3ZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBhcnJSZW1vdmUoYXJyLCBpdGVtKSB7CiAgICAgIGlmIChhcnIpIHsKICAgICAgICB2YXIgaW5kZXggPSBhcnIuaW5kZXhPZihpdGVtKTsKICAgICAgICAwIDw9IGluZGV4ICYmIGFyci5zcGxpY2UoaW5kZXgsIDEpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSBhcnJSZW1vdmU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcwp2YXIgcmVxdWlyZV9TdWJzY3JpcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3Vic2NyaXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1N1YnNjcmlwdGlvbiA9IGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFN1YnNjcmlwdGlvbjIoaW5pdGlhbFRlYXJkb3duKSB7CiAgICAgICAgdGhpcy5pbml0aWFsVGVhcmRvd24gPSBpbml0aWFsVGVhcmRvd247CiAgICAgICAgdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgIHRoaXMuX2ZpbmFsaXplcnMgPSBudWxsOwogICAgICB9CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgdmFyIGVycm9yczsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICAgIGlmIChfcGFyZW50YWdlKSB7CiAgICAgICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9wYXJlbnRhZ2VfMSA9IF9fdmFsdWVzKF9wYXJlbnRhZ2UpLCBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCk7ICFfcGFyZW50YWdlXzFfMS5kb25lOyBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgICAgdmFyIHBhcmVudF8xID0gX3BhcmVudGFnZV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgICAgIHBhcmVudF8xLnJlbW92ZSh0aGlzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgaWYgKF9wYXJlbnRhZ2VfMV8xICYmICFfcGFyZW50YWdlXzFfMS5kb25lICYmIChfYSA9IF9wYXJlbnRhZ2VfMS5yZXR1cm4pKSBfYS5jYWxsKF9wYXJlbnRhZ2VfMSk7CiAgICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9wYXJlbnRhZ2UucmVtb3ZlKHRoaXMpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgaW5pdGlhbEZpbmFsaXplciA9IHRoaXMuaW5pdGlhbFRlYXJkb3duOwogICAgICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGluaXRpYWxGaW5hbGl6ZXIpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaW5pdGlhbEZpbmFsaXplcigpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgZXJyb3JzID0gZSBpbnN0YW5jZW9mIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yID8gZS5lcnJvcnMgOiBbZV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBfZmluYWxpemVycyA9IHRoaXMuX2ZpbmFsaXplcnM7CiAgICAgICAgICBpZiAoX2ZpbmFsaXplcnMpIHsKICAgICAgICAgICAgdGhpcy5fZmluYWxpemVycyA9IG51bGw7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2ZpbmFsaXplcnNfMSA9IF9fdmFsdWVzKF9maW5hbGl6ZXJzKSwgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCk7ICFfZmluYWxpemVyc18xXzEuZG9uZTsgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBmaW5hbGl6ZXIgPSBfZmluYWxpemVyc18xXzEudmFsdWU7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBleGVjRmluYWxpemVyKGZpbmFsaXplcik7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgZXJyb3JzID0gZXJyb3JzICE9PSBudWxsICYmIGVycm9ycyAhPT0gdm9pZCAwID8gZXJyb3JzIDogW107CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcikgewogICAgICAgICAgICAgICAgICAgIGVycm9ycyA9IF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGVycm9ycykpLCBfX3JlYWQoZXJyLmVycm9ycykpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKGVycik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9maW5hbGl6ZXJzXzFfMSAmJiAhX2ZpbmFsaXplcnNfMV8xLmRvbmUgJiYgKF9iID0gX2ZpbmFsaXplcnNfMS5yZXR1cm4pKSBfYi5jYWxsKF9maW5hbGl6ZXJzXzEpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8yKSB0aHJvdyBlXzIuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXJyb3JzKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcihlcnJvcnMpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHRlYXJkb3duICYmIHRlYXJkb3duICE9PSB0aGlzKSB7CiAgICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgICAgZXhlY0ZpbmFsaXplcih0ZWFyZG93bik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGVhcmRvd24gaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24yKSB7CiAgICAgICAgICAgICAgaWYgKHRlYXJkb3duLmNsb3NlZCB8fCB0ZWFyZG93bi5faGFzUGFyZW50KHRoaXMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRlYXJkb3duLl9hZGRQYXJlbnQodGhpcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgKHRoaXMuX2ZpbmFsaXplcnMgPSAoX2EgPSB0aGlzLl9maW5hbGl6ZXJzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSkucHVzaCh0ZWFyZG93bik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5faGFzUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgcmV0dXJuIF9wYXJlbnRhZ2UgPT09IHBhcmVudCB8fCBBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpICYmIF9wYXJlbnRhZ2UuaW5jbHVkZXMocGFyZW50KTsKICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX2FkZFBhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkgPyAoX3BhcmVudGFnZS5wdXNoKHBhcmVudCksIF9wYXJlbnRhZ2UpIDogX3BhcmVudGFnZSA/IFtfcGFyZW50YWdlLCBwYXJlbnRdIDogcGFyZW50OwogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5fcmVtb3ZlUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgaWYgKF9wYXJlbnRhZ2UgPT09IHBhcmVudCkgewogICAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkpIHsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShfcGFyZW50YWdlLCBwYXJlbnQpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2ZpbmFsaXplcnMgPSB0aGlzLl9maW5hbGl6ZXJzOwogICAgICAgIF9maW5hbGl6ZXJzICYmIGFyclJlbW92ZV8xLmFyclJlbW92ZShfZmluYWxpemVycywgdGVhcmRvd24pOwogICAgICAgIGlmICh0ZWFyZG93biBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjIpIHsKICAgICAgICAgIHRlYXJkb3duLl9yZW1vdmVQYXJlbnQodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLkVNUFRZID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVtcHR5ID0gbmV3IFN1YnNjcmlwdGlvbjIoKTsKICAgICAgICBlbXB0eS5jbG9zZWQgPSB0cnVlOwogICAgICAgIHJldHVybiBlbXB0eTsKICAgICAgfSgpOwogICAgICByZXR1cm4gU3Vic2NyaXB0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbjsKICAgIGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IFN1YnNjcmlwdGlvbi5FTVBUWTsKICAgIGZ1bmN0aW9uIGlzU3Vic2NyaXB0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbiB8fCB2YWx1ZSAmJiAiY2xvc2VkIiBpbiB2YWx1ZSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5yZW1vdmUpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmFkZCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUudW5zdWJzY3JpYmUpOwogICAgfQogICAgZXhwb3J0czIuaXNTdWJzY3JpcHRpb24gPSBpc1N1YnNjcmlwdGlvbjsKICAgIGZ1bmN0aW9uIGV4ZWNGaW5hbGl6ZXIoZmluYWxpemVyKSB7CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihmaW5hbGl6ZXIpKSB7CiAgICAgICAgZmluYWxpemVyKCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmluYWxpemVyLnVuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvY29uZmlnLmpzCnZhciByZXF1aXJlX2NvbmZpZyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9jb25maWcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHsKICAgICAgb25VbmhhbmRsZWRFcnJvcjogbnVsbCwKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uOiBudWxsLAogICAgICBQcm9taXNlOiB2b2lkIDAsCiAgICAgIHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6IGZhbHNlLAogICAgICB1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzCnZhciByZXF1aXJlX3RpbWVvdXRQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB2b2lkIDA7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB7CiAgICAgIHNldFRpbWVvdXQ6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgaWYgKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5zZXRUaW1lb3V0KSB7CiAgICAgICAgICByZXR1cm4gZGVsZWdhdGUuc2V0VGltZW91dC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0VGltZW91dC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgY2xlYXJUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGUpIHsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFyVGltZW91dCkgfHwgY2xlYXJUaW1lb3V0KShoYW5kbGUpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzCnZhciByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcmVwb3J0VW5oYW5kbGVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvbmZpZ18xID0gcmVxdWlyZV9jb25maWcoKTsKICAgIHZhciB0aW1lb3V0UHJvdmlkZXJfMSA9IHJlcXVpcmVfdGltZW91dFByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiByZXBvcnRVbmhhbmRsZWRFcnJvcihlcnIpIHsKICAgICAgdGltZW91dFByb3ZpZGVyXzEudGltZW91dFByb3ZpZGVyLnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIG9uVW5oYW5kbGVkRXJyb3IgPSBjb25maWdfMS5jb25maWcub25VbmhhbmRsZWRFcnJvcjsKICAgICAgICBpZiAob25VbmhhbmRsZWRFcnJvcikgewogICAgICAgICAgb25VbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBlcnI7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gcmVwb3J0VW5oYW5kbGVkRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcwp2YXIgcmVxdWlyZV9ub29wID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm9vcCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIG5vb3AoKSB7CiAgICB9CiAgICBleHBvcnRzMi5ub29wID0gbm9vcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbkZhY3RvcmllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb25GYWN0b3JpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBleHBvcnRzMi5lcnJvck5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY3JlYXRlTm90aWZpY2F0aW9uKCJDIiwgdm9pZCAwLCB2b2lkIDApOwogICAgfSgpOwogICAgZnVuY3Rpb24gZXJyb3JOb3RpZmljYXRpb24oZXJyb3IpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiRSIsIHZvaWQgMCwgZXJyb3IpOwogICAgfQogICAgZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBlcnJvck5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG5leHROb3RpZmljYXRpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiTiIsIHZhbHVlLCB2b2lkIDApOwogICAgfQogICAgZXhwb3J0czIubmV4dE5vdGlmaWNhdGlvbiA9IG5leHROb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oa2luZCwgdmFsdWUsIGVycm9yKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAga2luZCwKICAgICAgICB2YWx1ZSwKICAgICAgICBlcnJvcgogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlTm90aWZpY2F0aW9uID0gY3JlYXRlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcwp2YXIgcmVxdWlyZV9lcnJvckNvbnRleHQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9lcnJvckNvbnRleHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhcHR1cmVFcnJvciA9IGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IHZvaWQgMDsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgY29udGV4dCA9IG51bGw7CiAgICBmdW5jdGlvbiBlcnJvckNvbnRleHQoY2IpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKSB7CiAgICAgICAgdmFyIGlzUm9vdCA9ICFjb250ZXh0OwogICAgICAgIGlmIChpc1Jvb3QpIHsKICAgICAgICAgIGNvbnRleHQgPSB7IGVycm9yVGhyb3duOiBmYWxzZSwgZXJyb3I6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgY2IoKTsKICAgICAgICBpZiAoaXNSb290KSB7CiAgICAgICAgICB2YXIgX2EgPSBjb250ZXh0LCBlcnJvclRocm93biA9IF9hLmVycm9yVGhyb3duLCBlcnJvciA9IF9hLmVycm9yOwogICAgICAgICAgY29udGV4dCA9IG51bGw7CiAgICAgICAgICBpZiAoZXJyb3JUaHJvd24pIHsKICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGNiKCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IGVycm9yQ29udGV4dDsKICAgIGZ1bmN0aW9uIGNhcHR1cmVFcnJvcihlcnIpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nICYmIGNvbnRleHQpIHsKICAgICAgICBjb250ZXh0LmVycm9yVGhyb3duID0gdHJ1ZTsKICAgICAgICBjb250ZXh0LmVycm9yID0gZXJyOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jYXB0dXJlRXJyb3IgPSBjYXB0dXJlRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVNUFRZX09CU0VSVkVSID0gZXhwb3J0czIuU2FmZVN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgcmVwb3J0VW5oYW5kbGVkRXJyb3JfMSA9IHJlcXVpcmVfcmVwb3J0VW5oYW5kbGVkRXJyb3IoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBOb3RpZmljYXRpb25GYWN0b3JpZXNfMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3Vic2NyaWJlcjIoZGVzdGluYXRpb24pIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLmlzU3RvcHBlZCA9IGZhbHNlOwogICAgICAgIGlmIChkZXN0aW5hdGlvbikgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjsKICAgICAgICAgIGlmIChTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbihkZXN0aW5hdGlvbikpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uYWRkKF90aGlzKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFN1YnNjcmliZXIyLmNyZWF0ZSA9IGZ1bmN0aW9uKG5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHJldHVybiBuZXcgU2FmZVN1YnNjcmliZXIobmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5uZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX25leHQodmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLmVycm9yTm90aWZpY2F0aW9uKGVyciksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLkNPTVBMRVRFX05PVElGSUNBVElPTiwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2NvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbnVsbDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fbmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5uZXh0KHZhbHVlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLl9lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5TdWJzY3JpYmVyID0gU3Vic2NyaWJlcjsKICAgIHZhciBfYmluZCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kOwogICAgZnVuY3Rpb24gYmluZChmbiwgdGhpc0FyZykgewogICAgICByZXR1cm4gX2JpbmQuY2FsbChmbiwgdGhpc0FyZyk7CiAgICB9CiAgICB2YXIgQ29uc3VtZXJPYnNlcnZlciA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBDb25zdW1lck9ic2VydmVyMihwYXJ0aWFsT2JzZXJ2ZXIpIHsKICAgICAgICB0aGlzLnBhcnRpYWxPYnNlcnZlciA9IHBhcnRpYWxPYnNlcnZlcjsKICAgICAgfQogICAgICBDb25zdW1lck9ic2VydmVyMi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIubmV4dCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5lcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIENvbnN1bWVyT2JzZXJ2ZXIyOwogICAgfSgpOwogICAgdmFyIFNhZmVTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTYWZlU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFNhZmVTdWJzY3JpYmVyMihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICB2YXIgcGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgIW9ic2VydmVyT3JOZXh0KSB7CiAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSB7CiAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0ICE9PSBudWxsICYmIG9ic2VydmVyT3JOZXh0ICE9PSB2b2lkIDAgPyBvYnNlcnZlck9yTmV4dCA6IHZvaWQgMCwKICAgICAgICAgICAgZXJyb3I6IGVycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6IHZvaWQgMCwKICAgICAgICAgICAgY29tcGxldGU6IGNvbXBsZXRlICE9PSBudWxsICYmIGNvbXBsZXRlICE9PSB2b2lkIDAgPyBjb21wbGV0ZSA6IHZvaWQgMAogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIGNvbnRleHRfMTsKICAgICAgICAgIGlmIChfdGhpcyAmJiBjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZE5leHRDb250ZXh0KSB7CiAgICAgICAgICAgIGNvbnRleHRfMSA9IE9iamVjdC5jcmVhdGUob2JzZXJ2ZXJPck5leHQpOwogICAgICAgICAgICBjb250ZXh0XzEudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0Lm5leHQgJiYgYmluZChvYnNlcnZlck9yTmV4dC5uZXh0LCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGVycm9yOiBvYnNlcnZlck9yTmV4dC5lcnJvciAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmVycm9yLCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGNvbXBsZXRlOiBvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmNvbXBsZXRlLCBjb250ZXh0XzEpCiAgICAgICAgICAgIH07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSBvYnNlcnZlck9yTmV4dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBuZXcgQ29uc3VtZXJPYnNlcnZlcihwYXJ0aWFsT2JzZXJ2ZXIpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICByZXR1cm4gU2FmZVN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gU2FmZVN1YnNjcmliZXI7CiAgICBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnJvcikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICBlcnJvckNvbnRleHRfMS5jYXB0dXJlRXJyb3IoZXJyb3IpOwogICAgICB9IGVsc2UgewogICAgICAgIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0RXJyb3JIYW5kbGVyKGVycikgewogICAgICB0aHJvdyBlcnI7CiAgICB9CiAgICBmdW5jdGlvbiBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcikgewogICAgICB2YXIgb25TdG9wcGVkTm90aWZpY2F0aW9uID0gY29uZmlnXzEuY29uZmlnLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjsKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uICYmIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBvblN0b3BwZWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IHsKICAgICAgY2xvc2VkOiB0cnVlLAogICAgICBuZXh0OiBub29wXzEubm9vcCwKICAgICAgZXJyb3I6IGRlZmF1bHRFcnJvckhhbmRsZXIsCiAgICAgIGNvbXBsZXRlOiBub29wXzEubm9vcAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfb2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvb2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLm9ic2VydmFibGUgfHwgIkBAb2JzZXJ2YWJsZSI7CiAgICB9KCk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMKdmFyIHJlcXVpcmVfaWRlbnRpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pZGVudGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWRlbnRpdHkgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpZGVudGl0eSh4KSB7CiAgICAgIHJldHVybiB4OwogICAgfQogICAgZXhwb3J0czIuaWRlbnRpdHkgPSBpZGVudGl0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzCnZhciByZXF1aXJlX3BpcGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5waXBlRnJvbUFycmF5ID0gZXhwb3J0czIucGlwZSA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcGlwZSgpIHsKICAgICAgdmFyIGZucyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGZuc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBwaXBlRnJvbUFycmF5KGZucyk7CiAgICB9CiAgICBleHBvcnRzMi5waXBlID0gcGlwZTsKICAgIGZ1bmN0aW9uIHBpcGVGcm9tQXJyYXkoZm5zKSB7CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgaWYgKGZucy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZm5zWzBdOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBwaXBlZChpbnB1dCkgewogICAgICAgIHJldHVybiBmbnMucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGZuKSB7CiAgICAgICAgICByZXR1cm4gZm4ocHJldik7CiAgICAgICAgfSwgaW5wdXQpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IHBpcGVGcm9tQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9PYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIHZhciBwaXBlXzEgPSByZXF1aXJlX3BpcGUoKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXJyb3JDb250ZXh0XzEgPSByZXF1aXJlX2Vycm9yQ29udGV4dCgpOwogICAgdmFyIE9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKSB7CiAgICAgICAgaWYgKHN1YnNjcmliZSkgewogICAgICAgICAgdGhpcy5fc3Vic2NyaWJlID0gc3Vic2NyaWJlOwogICAgICAgIH0KICAgICAgfQogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUubGlmdCA9IGZ1bmN0aW9uKG9wZXJhdG9yKSB7CiAgICAgICAgdmFyIG9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZTIoKTsKICAgICAgICBvYnNlcnZhYmxlLnNvdXJjZSA9IHRoaXM7CiAgICAgICAgb2JzZXJ2YWJsZS5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24ob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBpc1N1YnNjcmliZXIob2JzZXJ2ZXJPck5leHQpID8gb2JzZXJ2ZXJPck5leHQgOiBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYSA9IF90aGlzLCBvcGVyYXRvciA9IF9hLm9wZXJhdG9yLCBzb3VyY2UgPSBfYS5zb3VyY2U7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChvcGVyYXRvciA/IG9wZXJhdG9yLmNhbGwoc3Vic2NyaWJlciwgc291cmNlKSA6IHNvdXJjZSA/IF90aGlzLl9zdWJzY3JpYmUoc3Vic2NyaWJlcikgOiBfdGhpcy5fdHJ5U3Vic2NyaWJlKHN1YnNjcmliZXIpKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlcjsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzaW5rKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHJldHVybiB0aGlzLl9zdWJzY3JpYmUoc2luayk7CiAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICBzaW5rLmVycm9yKGVycik7CiAgICAgICAgfQogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuZm9yRWFjaCA9IGZ1bmN0aW9uKG5leHQsIHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICAgIGNvbXBsZXRlOiByZXNvbHZlCiAgICAgICAgICB9KTsKICAgICAgICAgIF90aGlzLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLnNvdXJjZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUucGlwZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvcGVyYXRpb25zID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIG9wZXJhdGlvbnNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBpcGVfMS5waXBlRnJvbUFycmF5KG9wZXJhdGlvbnMpKHRoaXMpOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUudG9Qcm9taXNlID0gZnVuY3Rpb24ocHJvbWlzZUN0b3IpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHByb21pc2VDdG9yID0gZ2V0UHJvbWlzZUN0b3IocHJvbWlzZUN0b3IpOwogICAgICAgIHJldHVybiBuZXcgcHJvbWlzZUN0b3IoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoZnVuY3Rpb24oeCkgewogICAgICAgICAgICByZXR1cm4gdmFsdWUgPSB4OwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcmVzb2x2ZSh2YWx1ZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIuY3JlYXRlID0gZnVuY3Rpb24oc3Vic2NyaWJlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlMihzdWJzY3JpYmUpOwogICAgICB9OwogICAgICByZXR1cm4gT2JzZXJ2YWJsZTI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gT2JzZXJ2YWJsZTsKICAgIGZ1bmN0aW9uIGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmV0dXJuIChfYSA9IHByb21pc2VDdG9yICE9PSBudWxsICYmIHByb21pc2VDdG9yICE9PSB2b2lkIDAgPyBwcm9taXNlQ3RvciA6IGNvbmZpZ18xLmNvbmZpZy5Qcm9taXNlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBQcm9taXNlOwogICAgfQogICAgZnVuY3Rpb24gaXNPYnNlcnZlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUubmV4dCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuZXJyb3IpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmNvbXBsZXRlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU3Vic2NyaWJlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgdmFsdWUgaW5zdGFuY2VvZiBTdWJzY3JpYmVyXzEuU3Vic2NyaWJlciB8fCBpc09ic2VydmVyKHZhbHVlKSAmJiBTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbih2YWx1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcwp2YXIgcmVxdWlyZV9saWZ0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub3BlcmF0ZSA9IGV4cG9ydHMyLmhhc0xpZnQgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBoYXNMaWZ0KHNvdXJjZSkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc291cmNlID09PSBudWxsIHx8IHNvdXJjZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlLmxpZnQpOwogICAgfQogICAgZXhwb3J0czIuaGFzTGlmdCA9IGhhc0xpZnQ7CiAgICBmdW5jdGlvbiBvcGVyYXRlKGluaXQpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIGlmIChoYXNMaWZ0KHNvdXJjZSkpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UubGlmdChmdW5jdGlvbihsaWZ0ZWRTb3VyY2UpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICByZXR1cm4gaW5pdChsaWZ0ZWRTb3VyY2UsIHRoaXMpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICB0aGlzLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmFibGUgdG8gbGlmdCB1bmtub3duIE9ic2VydmFibGUgdHlwZSIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub3BlcmF0ZSA9IG9wZXJhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpIHsKICAgICAgcmV0dXJuIG5ldyBPcGVyYXRvclN1YnNjcmliZXIoZGVzdGluYXRpb24sIG9uTmV4dCwgb25Db21wbGV0ZSwgb25FcnJvciwgb25GaW5hbGl6ZSk7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIgPSBjcmVhdGVPcGVyYXRvclN1YnNjcmliZXI7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhPcGVyYXRvclN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBPcGVyYXRvclN1YnNjcmliZXIyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUsIHNob3VsZFVuc3Vic2NyaWJlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgZGVzdGluYXRpb24pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMub25GaW5hbGl6ZSA9IG9uRmluYWxpemU7CiAgICAgICAgX3RoaXMuc2hvdWxkVW5zdWJzY3JpYmUgPSBzaG91bGRVbnN1YnNjcmliZTsKICAgICAgICBfdGhpcy5fbmV4dCA9IG9uTmV4dCA/IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBvbk5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX25leHQ7CiAgICAgICAgX3RoaXMuX2Vycm9yID0gb25FcnJvciA/IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25FcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyMikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIyKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9IDogX3N1cGVyLnByb3RvdHlwZS5fZXJyb3I7CiAgICAgICAgX3RoaXMuX2NvbXBsZXRlID0gb25Db21wbGV0ZSA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25Db21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2NvbXBsZXRlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPcGVyYXRvclN1YnNjcmliZXIyLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmUgfHwgdGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKSB7CiAgICAgICAgICB2YXIgY2xvc2VkXzEgPSB0aGlzLmNsb3NlZDsKICAgICAgICAgIF9zdXBlci5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKTsKICAgICAgICAgICFjbG9zZWRfMSAmJiAoKF9hID0gdGhpcy5vbkZpbmFsaXplKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzKSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gT3BlcmF0b3JTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIpOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVmQ291bnQuanMKdmFyIHJlcXVpcmVfcmVmQ291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZkNvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWZDb3VudCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiByZWZDb3VudCgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBzb3VyY2UuX3JlZkNvdW50Kys7CiAgICAgICAgdmFyIHJlZkNvdW50ZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIXNvdXJjZSB8fCBzb3VyY2UuX3JlZkNvdW50IDw9IDAgfHwgMCA8IC0tc291cmNlLl9yZWZDb3VudCkgewogICAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgdmFyIHNoYXJlZENvbm5lY3Rpb24gPSBzb3VyY2UuX2Nvbm5lY3Rpb247CiAgICAgICAgICB2YXIgY29ubiA9IGNvbm5lY3Rpb247CiAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgIGlmIChzaGFyZWRDb25uZWN0aW9uICYmICghY29ubiB8fCBzaGFyZWRDb25uZWN0aW9uID09PSBjb25uKSkgewogICAgICAgICAgICBzaGFyZWRDb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShyZWZDb3VudGVyKTsKICAgICAgICBpZiAoIXJlZkNvdW50ZXIuY2xvc2VkKSB7CiAgICAgICAgICBjb25uZWN0aW9uID0gc291cmNlLmNvbm5lY3QoKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVmQ291bnQgPSByZWZDb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvQ29ubmVjdGFibGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhDb25uZWN0YWJsZU9ic2VydmFibGUyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBDb25uZWN0YWJsZU9ic2VydmFibGUyKHNvdXJjZSwgc3ViamVjdEZhY3RvcnkpIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICBfdGhpcy5zdWJqZWN0RmFjdG9yeSA9IHN1YmplY3RGYWN0b3J5OwogICAgICAgIF90aGlzLl9zdWJqZWN0ID0gbnVsbDsKICAgICAgICBfdGhpcy5fcmVmQ291bnQgPSAwOwogICAgICAgIF90aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBpZiAobGlmdF8xLmhhc0xpZnQoc291cmNlKSkgewogICAgICAgICAgX3RoaXMubGlmdCA9IHNvdXJjZS5saWZ0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KCkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5nZXRTdWJqZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSB0aGlzLl9zdWJqZWN0OwogICAgICAgIGlmICghc3ViamVjdCB8fCBzdWJqZWN0LmlzU3RvcHBlZCkgewogICAgICAgICAgdGhpcy5fc3ViamVjdCA9IHRoaXMuc3ViamVjdEZhY3RvcnkoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N1YmplY3Q7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90ZWFyZG93biA9IGZ1bmN0aW9uKCkgewogICAgICAgIHRoaXMuX3JlZkNvdW50ID0gMDsKICAgICAgICB2YXIgX2Nvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIHRoaXMuX3N1YmplY3QgPSB0aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBfY29ubmVjdGlvbiA9PT0gbnVsbCB8fCBfY29ubmVjdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Nvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIGlmICghY29ubmVjdGlvbikgewogICAgICAgICAgY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgc3ViamVjdF8xID0gdGhpcy5nZXRTdWJqZWN0KCk7CiAgICAgICAgICBjb25uZWN0aW9uLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YmplY3RfMSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICAgIHN1YmplY3RfMS5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgICBzdWJqZWN0XzEuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICB9KSkpOwogICAgICAgICAgaWYgKGNvbm5lY3Rpb24uY2xvc2VkKSB7CiAgICAgICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgICAgICBjb25uZWN0aW9uID0gU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY29ubmVjdGlvbjsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUucmVmQ291bnQgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudCgpKHRoaXMpOwogICAgICB9OwogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlMjsKICAgIH0oT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpOwogICAgZXhwb3J0czIuQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuZGVsZWdhdGUgfHwgcGVyZm9ybWFuY2UpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIgPSB7CiAgICAgIHNjaGVkdWxlOiBmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgIHZhciByZXF1ZXN0ID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lOwogICAgICAgIHZhciBjYW5jZWwgPSBjYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSkgewogICAgICAgICAgcmVxdWVzdCA9IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICAgIGNhbmNlbCA9IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lOwogICAgICAgIH0KICAgICAgICB2YXIgaGFuZGxlID0gcmVxdWVzdChmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXAyKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBjYW5jZWwgPT09IG51bGwgfHwgY2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjYW5jZWwoaGFuZGxlKTsKICAgICAgICB9KTsKICAgICAgfSwKICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZSkgfHwgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjYW5jZWxBbmltYXRpb25GcmFtZTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZSkgfHwgY2FuY2VsQW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZG9tL2FuaW1hdGlvbkZyYW1lcy5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXModGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcFByb3ZpZGVyID8gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSh0aW1lc3RhbXBQcm92aWRlcikgOiBERUZBVUxUX0FOSU1BVElPTl9GUkFNRVM7CiAgICB9CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSBhbmltYXRpb25GcmFtZXM7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcm92aWRlciA9IHRpbWVzdGFtcFByb3ZpZGVyIHx8IHBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXJfMS5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIHZhciBzdGFydCA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgIHZhciBpZCA9IDA7CiAgICAgICAgdmFyIHJ1biA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBpZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICAgICAgaWQgPSAwOwogICAgICAgICAgICAgIHZhciBub3cgPSBwcm92aWRlci5ub3coKTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoewogICAgICAgICAgICAgICAgdGltZXN0YW1wOiB0aW1lc3RhbXBQcm92aWRlciA/IG5vdyA6IHRpbWVzdGFtcDIsCiAgICAgICAgICAgICAgICBlbGFwc2VkOiBub3cgLSBzdGFydAogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJ1bigpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJ1bigpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpZCkgewogICAgICAgICAgICBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5jYW5jZWxBbmltYXRpb25GcmFtZShpZCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICB2YXIgREVGQVVMVF9BTklNQVRJT05fRlJBTUVTID0gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE9iamVjdFVuc3Vic2NyaWJlZEVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk9iamVjdFVuc3Vic2NyaWJlZEVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAib2JqZWN0IHVuc3Vic2NyaWJlZCI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9TdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMKdmFyIHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhCZWhhdmlvclN1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBCZWhhdmlvclN1YmplY3QyKF92YWx1ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gX3ZhbHVlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUsICJ2YWx1ZSIsIHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9uID0gX3N1cGVyLnByb3RvdHlwZS5fc3Vic2NyaWJlLmNhbGwodGhpcywgc3Vic2NyaWJlcik7CiAgICAgICAgIXN1YnNjcmlwdGlvbi5jbG9zZWQgJiYgc3Vic2NyaWJlci5uZXh0KHRoaXMuX3ZhbHVlKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBCZWhhdmlvclN1YmplY3QyLnByb3RvdHlwZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGhhc0Vycm9yID0gX2EuaGFzRXJyb3IsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIF92YWx1ZSA9IF9hLl92YWx1ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHRocm93IHRocm93bkVycm9yOwogICAgICAgIH0KICAgICAgICB0aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgcmV0dXJuIF92YWx1ZTsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcywgdGhpcy5fdmFsdWUgPSB2YWx1ZSk7CiAgICAgIH07CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3QyOwogICAgfShTdWJqZWN0XzEuU3ViamVjdCk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBCZWhhdmlvclN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlci5kZWxlZ2F0ZSB8fCBEYXRlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdC5qcwp2YXIgcmVxdWlyZV9SZXBsYXlTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9Bc3luY1N1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBBc3luY1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jU3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gbnVsbDsKICAgICAgICBfdGhpcy5faGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBfdGhpcy5faXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgdGhyb3duRXJyb3IgPSBfYS50aHJvd25FcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmIChoYXNFcnJvcikgewogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcih0aHJvd25FcnJvcik7CiAgICAgICAgfSBlbHNlIGlmIChpc1N0b3BwZWQgfHwgX2lzQ29tcGxldGUpIHsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLm5leHQoX3ZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICghdGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICB0aGlzLl9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIF9oYXNWYWx1ZSA9IF9hLl9oYXNWYWx1ZSwgX3ZhbHVlID0gX2EuX3ZhbHVlLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmICghX2lzQ29tcGxldGUpIHsKICAgICAgICAgIHRoaXMuX2lzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgX2hhc1ZhbHVlICYmIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIF92YWx1ZSk7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQXN5bmNTdWJqZWN0ID0gQXN5bmNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHJldHVybiBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIHJldHVybiBBY3Rpb24yOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuQWN0aW9uID0gQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW50ZXJ2YWxQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY0FjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc3luY0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQWN0aW9uXzEgPSByZXF1aXJlX0FjdGlvbigpOwogICAgdmFyIGludGVydmFsUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBBc3luY0FjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXN5bmNBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY0FjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHZhciBpZCA9IHRoaXMuaWQ7CiAgICAgICAgdmFyIHNjaGVkdWxlciA9IHRoaXMuc2NoZWR1bGVyOwogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IHRydWU7CiAgICAgICAgdGhpcy5kZWxheSA9IGRlbGF5OwogICAgICAgIHRoaXMuaWQgPSAoX2EgPSB0aGlzLmlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlcXVlc3RBc3luY0lkKHNjaGVkdWxlciwgdGhpcy5pZCwgZGVsYXkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBfaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLnNldEludGVydmFsKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdGhpcyksIGRlbGF5KTsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKF9zY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsICYmIHRoaXMuZGVsYXkgPT09IGRlbGF5ICYmIHRoaXMucGVuZGluZyA9PT0gZmFsc2UpIHsKICAgICAgICAgIHJldHVybiBpZDsKICAgICAgICB9CiAgICAgICAgaWYgKGlkICE9IG51bGwpIHsKICAgICAgICAgIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLmNsZWFySW50ZXJ2YWwoaWQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yID0gdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgcmV0dXJuIGVycm9yOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nID09PSBmYWxzZSAmJiB0aGlzLmlkICE9IG51bGwpIHsKICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHRoaXMuc2NoZWR1bGVyLCB0aGlzLmlkLCBudWxsKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgX2RlbGF5KSB7CiAgICAgICAgdmFyIGVycm9yZWQgPSBmYWxzZTsKICAgICAgICB2YXIgZXJyb3JWYWx1ZTsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy53b3JrKHN0YXRlKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBlcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgIGVycm9yVmFsdWUgPSBlID8gZSA6IG5ldyBFcnJvcigiU2NoZWR1bGVkIGFjdGlvbiB0aHJldyBmYWxzeSBlcnJvciIpOwogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3JlZCkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmV0dXJuIGVycm9yVmFsdWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdmFyIF9hID0gdGhpcywgaWQgPSBfYS5pZCwgc2NoZWR1bGVyID0gX2Euc2NoZWR1bGVyOwogICAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICAgIHRoaXMud29yayA9IHRoaXMuc3RhdGUgPSB0aGlzLnNjaGVkdWxlciA9IG51bGw7CiAgICAgICAgICB0aGlzLnBlbmRpbmcgPSBmYWxzZTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShhY3Rpb25zLCB0aGlzKTsKICAgICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHNjaGVkdWxlciwgaWQsIG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5kZWxheSA9IG51bGw7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNBY3Rpb24yOwogICAgfShBY3Rpb25fMS5BY3Rpb24pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSBBc3luY0FjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvSW1tZWRpYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSBleHBvcnRzMi5JbW1lZGlhdGUgPSB2b2lkIDA7CiAgICB2YXIgbmV4dEhhbmRsZSA9IDE7CiAgICB2YXIgcmVzb2x2ZWQ7CiAgICB2YXIgYWN0aXZlSGFuZGxlcyA9IHt9OwogICAgZnVuY3Rpb24gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgewogICAgICBpZiAoaGFuZGxlIGluIGFjdGl2ZUhhbmRsZXMpIHsKICAgICAgICBkZWxldGUgYWN0aXZlSGFuZGxlc1toYW5kbGVdOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLkltbWVkaWF0ZSA9IHsKICAgICAgc2V0SW1tZWRpYXRlOiBmdW5jdGlvbihjYikgewogICAgICAgIHZhciBoYW5kbGUgPSBuZXh0SGFuZGxlKys7CiAgICAgICAgYWN0aXZlSGFuZGxlc1toYW5kbGVdID0gdHJ1ZTsKICAgICAgICBpZiAoIXJlc29sdmVkKSB7CiAgICAgICAgICByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIH0KICAgICAgICByZXNvbHZlZC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpICYmIGNiKCk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGhhbmRsZTsKICAgICAgfSwKICAgICAgY2xlYXJJbW1lZGlhdGU6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGVzdFRvb2xzID0gewogICAgICBwZW5kaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoYWN0aXZlSGFuZGxlcykubGVuZ3RoOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW1tZWRpYXRlUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMKdmFyIHJlcXVpcmVfQXNhcEFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgaW1tZWRpYXRlUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIoKTsKICAgIHZhciBBc2FwQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXNhcEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT09IG51bGwgJiYgZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgc2NoZWR1bGVyLmFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLl9zY2hlZHVsZWQgfHwgKHNjaGVkdWxlci5fc2NoZWR1bGVkID0gaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5zZXRJbW1lZGlhdGUoc2NoZWR1bGVyLmZsdXNoLmJpbmQoc2NoZWR1bGVyLCB2b2lkIDApKSk7CiAgICAgIH07CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsID8gZGVsYXkgPiAwIDogdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGlmIChpZCAhPSBudWxsICYmICgoX2EgPSBhY3Rpb25zW2FjdGlvbnMubGVuZ3RoIC0gMV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZCkgIT09IGlkKSB7CiAgICAgICAgICBpbW1lZGlhdGVQcm92aWRlcl8xLmltbWVkaWF0ZVByb3ZpZGVyLmNsZWFySW1tZWRpYXRlKGlkKTsKICAgICAgICAgIGlmIChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9PT0gaWQpIHsKICAgICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gQXNhcEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgU2NoZWR1bGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3Rvciwgbm93KSB7CiAgICAgICAgaWYgKG5vdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBub3cgPSBTY2hlZHVsZXIyLm5vdzsKICAgICAgICB9CiAgICAgICAgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yID0gc2NoZWR1bGVyQWN0aW9uQ3RvcjsKICAgICAgICB0aGlzLm5vdyA9IG5vdzsKICAgICAgfQogICAgICBTY2hlZHVsZXIyLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHdvcmssIGRlbGF5LCBzdGF0ZSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yKHRoaXMsIHdvcmspLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgIH07CiAgICAgIFNjaGVkdWxlcjIubm93ID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLm5vdzsKICAgICAgcmV0dXJuIFNjaGVkdWxlcjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TY2hlZHVsZXIgPSBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY1NjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc3luY1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc2FwU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcFNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFzYXBTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gQXNhcFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXNhcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXNhcEFjdGlvbl8xID0gcmVxdWlyZV9Bc2FwQWN0aW9uKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc2FwU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gbmV3IEFzYXBTY2hlZHVsZXJfMS5Bc2FwU2NoZWR1bGVyKEFzYXBBY3Rpb25fMS5Bc2FwQWN0aW9uKTsKICAgIGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXN5bmMuanMKdmFyIHJlcXVpcmVfYXN5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVBY3Rpb24uanMKdmFyIHJlcXVpcmVfUXVldWVBY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgUXVldWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7CiAgICAgICAgdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIHJldHVybiBkZWxheSA+IDAgfHwgdGhpcy5jbG9zZWQgPyBfc3VwZXIucHJvdG90eXBlLmV4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpIDogdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiBkZWxheSA+IDAgfHwgZGVsYXkgPT0gbnVsbCAmJiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5mbHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfTsKICAgICAgcmV0dXJuIFF1ZXVlQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IFF1ZXVlQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgUXVldWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICByZXR1cm4gUXVldWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gUXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9xdWV1ZS5qcwp2YXIgcmVxdWlyZV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQW5pbWF0aW9uRnJhbWVBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQW5pbWF0aW9uRnJhbWVBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbmltYXRpb25GcmFtZUFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZXIuZmx1c2godm9pZCAwKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBBbmltYXRpb25GcmFtZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc3luY1NjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc3luY1NjaGVkdWxlcigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMigpIHsKICAgICAgICByZXR1cm4gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1ZpcnR1YWxUaW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9WaXJ0dWFsVGltZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBWaXJ0dWFsVGltZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbFRpbWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsVGltZVNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3RvciwgbWF4RnJhbWVzKSB7CiAgICAgICAgaWYgKHNjaGVkdWxlckFjdGlvbkN0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc2NoZWR1bGVyQWN0aW9uQ3RvciA9IFZpcnR1YWxBY3Rpb247CiAgICAgICAgfQogICAgICAgIGlmIChtYXhGcmFtZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgbWF4RnJhbWVzID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlckFjdGlvbkN0b3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmZyYW1lOwogICAgICAgIH0pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMubWF4RnJhbWVzID0gbWF4RnJhbWVzOwogICAgICAgIF90aGlzLmZyYW1lID0gMDsKICAgICAgICBfdGhpcy5pbmRleCA9IC0xOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBWaXJ0dWFsVGltZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgYWN0aW9ucyA9IF9hLmFjdGlvbnMsIG1heEZyYW1lcyA9IF9hLm1heEZyYW1lczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdmFyIGFjdGlvbjsKICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5kZWxheSA8PSBtYXhGcmFtZXMpIHsKICAgICAgICAgIGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICAgIHRoaXMuZnJhbWUgPSBhY3Rpb24uZGVsYXk7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKGFjdGlvbiA9IGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLmZyYW1lVGltZUZhY3RvciA9IDEwOwogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB2YXIgVmlydHVhbEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFZpcnR1YWxBY3Rpb24yKHNjaGVkdWxlciwgd29yaywgaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPT09IHZvaWQgMCkgewogICAgICAgICAgaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggKz0gMTsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5pbmRleCA9IGluZGV4OwogICAgICAgIF90aGlzLmFjdGl2ZSA9IHRydWU7CiAgICAgICAgX3RoaXMuaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggPSBpbmRleDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWxheSkpIHsKICAgICAgICAgIGlmICghdGhpcy5pZCkgewogICAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgdmFyIGFjdGlvbiA9IG5ldyBWaXJ0dWFsQWN0aW9uMih0aGlzLnNjaGVkdWxlciwgdGhpcy53b3JrKTsKICAgICAgICAgIHRoaXMuYWRkKGFjdGlvbik7CiAgICAgICAgICByZXR1cm4gYWN0aW9uLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgfQogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBzY2hlZHVsZXIuZnJhbWUgKyBkZWxheTsKICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICBhY3Rpb25zLnNvcnQoVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMpOwogICAgICAgIHJldHVybiAxOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5fZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmICh0aGlzLmFjdGl2ZSA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMgPSBmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgaWYgKGEuZGVsYXkgPT09IGIuZGVsYXkpIHsKICAgICAgICAgIGlmIChhLmluZGV4ID09PSBiLmluZGV4KSB7CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgfSBlbHNlIGlmIChhLmluZGV4ID4gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGEuZGVsYXkgPiBiLmRlbGF5KSB7CiAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFZpcnR1YWxBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxBY3Rpb24gPSBWaXJ0dWFsQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuRU1QVFkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBleHBvcnRzMi5FTVBUWSA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICB9KTsKICAgIGZ1bmN0aW9uIGVtcHR5KHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVyID8gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSA6IGV4cG9ydHMyLkVNUFRZOwogICAgfQogICAgZXhwb3J0czIuZW1wdHkgPSBlbXB0eTsKICAgIGZ1bmN0aW9uIGVtcHR5U2NoZWR1bGVkKHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfaXNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzCnZhciByZXF1aXJlX2FyZ3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBleHBvcnRzMi5wb3BTY2hlZHVsZXIgPSBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgZnVuY3Rpb24gbGFzdChhcnIpIHsKICAgICAgcmV0dXJuIGFyclthcnIubGVuZ3RoIC0gMV07CiAgICB9CiAgICBmdW5jdGlvbiBwb3BSZXN1bHRTZWxlY3RvcihhcmdzKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihsYXN0KGFyZ3MpKSA/IGFyZ3MucG9wKCkgOiB2b2lkIDA7CiAgICB9CiAgICBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHBvcFJlc3VsdFNlbGVjdG9yOwogICAgZnVuY3Rpb24gcG9wU2NoZWR1bGVyKGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIobGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wU2NoZWR1bGVyID0gcG9wU2NoZWR1bGVyOwogICAgZnVuY3Rpb24gcG9wTnVtYmVyKGFyZ3MsIGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gdHlwZW9mIGxhc3QoYXJncykgPT09ICJudW1iZXIiID8gYXJncy5wb3AoKSA6IGRlZmF1bHRWYWx1ZTsKICAgIH0KICAgIGV4cG9ydHMyLnBvcE51bWJlciA9IHBvcE51bWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXJyYXlMaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0FycmF5TGlrZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4geCAmJiB0eXBlb2YgeC5sZW5ndGggPT09ICJudW1iZXIiICYmIHR5cGVvZiB4ICE9PSAiZnVuY3Rpb24iOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1Byb21pc2UuanMKdmFyIHJlcXVpcmVfaXNQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5wdXRbb2JzZXJ2YWJsZV8xLm9ic2VydmFibGVdKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSW50ZXJvcE9ic2VydmFibGUgPSBpc0ludGVyb3BPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FzeW5jSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXN5bmNJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZShvYmopIHsKICAgICAgcmV0dXJuIFN5bWJvbC5hc3luY0l0ZXJhdG9yICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ialtTeW1ib2wuYXN5bmNJdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gaXNBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dVbm9ic2VydmFibGVFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL2l0ZXJhdG9yLmpzCnZhciByZXF1aXJlX2l0ZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9pdGVyYXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXRlcmF0b3IgPSBleHBvcnRzMi5nZXRTeW1ib2xJdGVyYXRvciA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGdldFN5bWJvbEl0ZXJhdG9yKCkgewogICAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gImZ1bmN0aW9uIiB8fCAhU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgcmV0dXJuICJAQGl0ZXJhdG9yIjsKICAgICAgfQogICAgICByZXR1cm4gU3ltYm9sLml0ZXJhdG9yOwogICAgfQogICAgZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSBnZXRTeW1ib2xJdGVyYXRvcjsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3IoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc0l0ZXJhYmxlKGlucHV0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbnB1dCA9PT0gbnVsbCB8fCBpbnB1dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNJdGVyYWJsZSA9IGlzSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb20uanMKdmFyIHJlcXVpcmVfaW5uZXJGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW5uZXJGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fYXdhaXRlciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXRlciB8fCBmdW5jdGlvbih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHsKICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsKICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBzdGVwKGdlbmVyYXRvclsidGhyb3ciXSh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7CiAgICAgICAgICByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsKICAgICAgICB9CiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpOwogICAgICB9KTsKICAgIH07CiAgICB2YXIgX19nZW5lcmF0b3IgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2dlbmVyYXRvciB8fCBmdW5jdGlvbih0aGlzQXJnLCBib2R5KSB7CiAgICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOwogICAgICAgIHJldHVybiB0WzFdOwogICAgICB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnOwogICAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgInRocm93IjogdmVyYigxKSwgInJldHVybiI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0pLCBnOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIHN0ZXAoW24sIHZdKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHsKICAgICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpOwogICAgICAgIHdoaWxlIChfKSB0cnkgewogICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgc3dpdGNoIChvcFswXSkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9OwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHkgPSBvcFsxXTsKICAgICAgICAgICAgICBvcCA9IFswXTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIG9wID0gXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7CiAgICAgICAgICAgICAgICBfID0gMDsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDMgJiYgKCF0IHx8IG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gb3BbMV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsxXTsKICAgICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMl07CiAgICAgICAgICAgICAgICBfLm9wcy5wdXNoKG9wKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodFsyXSkgXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgb3AgPSBbNiwgZV07CiAgICAgICAgICB5ID0gMDsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgZiA9IHQgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsKICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgICB9CiAgICB9OwogICAgdmFyIF9fYXN5bmNWYWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2FzeW5jVmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICAgIHZhciBtID0gb1tTeW1ib2wuYXN5bmNJdGVyYXRvcl0sIGk7CiAgICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogKG8gPSB0eXBlb2YgX192YWx1ZXMgPT09ICJmdW5jdGlvbiIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoIm5leHQiKSwgdmVyYigidGhyb3ciKSwgdmVyYigicmV0dXJuIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0sIGkpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpW25dID0gb1tuXSAmJiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgIHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCBkLCB2KSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odjIpIHsKICAgICAgICAgIHJlc29sdmUoeyB2YWx1ZTogdjIsIGRvbmU6IGQgfSk7CiAgICAgICAgfSwgcmVqZWN0KTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbVJlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZXhwb3J0czIuZnJvbUl0ZXJhYmxlID0gZXhwb3J0czIuZnJvbVByb21pc2UgPSBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZXhwb3J0czIuaW5uZXJGcm9tID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXlMaWtlXzEgPSByZXF1aXJlX2lzQXJyYXlMaWtlKCk7CiAgICB2YXIgaXNQcm9taXNlXzEgPSByZXF1aXJlX2lzUHJvbWlzZSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBpbm5lckZyb20oaW5wdXQpIHsKICAgICAgaWYgKGlucHV0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpIHsKICAgICAgICByZXR1cm4gaW5wdXQ7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUludGVyb3BPYnNlcnZhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUFycmF5TGlrZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1Byb21pc2VfMS5pc1Byb21pc2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBc3luY0l0ZXJhYmxlXzEuaXNBc3luY0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Bc3luY0l0ZXJhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSXRlcmFibGVfMS5pc0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21SZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgfQogICAgICB0aHJvdyB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuaW5uZXJGcm9tID0gaW5uZXJGcm9tOwogICAgZnVuY3Rpb24gZnJvbUludGVyb3BPYnNlcnZhYmxlKG9iaikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb2JzID0gb2JqW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSgpOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnMuc3Vic2NyaWJlKSkgewogICAgICAgICAgcmV0dXJuIG9icy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZnJvbUludGVyb3BPYnNlcnZhYmxlOwogICAgZnVuY3Rpb24gZnJvbUFycmF5TGlrZShhcnJheSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aCAmJiAhc3Vic2NyaWJlci5jbG9zZWQ7IGkrKykgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFycmF5W2ldKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21BcnJheUxpa2UgPSBmcm9tQXJyYXlMaWtlOwogICAgZnVuY3Rpb24gZnJvbVByb21pc2UocHJvbWlzZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KS50aGVuKG51bGwsIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZnJvbVByb21pc2U7CiAgICBmdW5jdGlvbiBmcm9tSXRlcmFibGUoaXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGZvciAodmFyIGl0ZXJhYmxlXzEgPSBfX3ZhbHVlcyhpdGVyYWJsZSksIGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpOyAhaXRlcmFibGVfMV8xLmRvbmU7IGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpKSB7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGl0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmIChpdGVyYWJsZV8xXzEgJiYgIWl0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGl0ZXJhYmxlXzEucmV0dXJuKSkgX2EuY2FsbChpdGVyYWJsZV8xKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGZyb21JdGVyYWJsZTsKICAgIGZ1bmN0aW9uIGZyb21Bc3luY0l0ZXJhYmxlKGFzeW5jSXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikuY2F0Y2goZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZnJvbUFzeW5jSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IocmVhZGFibGVTdHJlYW0pKTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBmcm9tUmVhZGFibGVTdHJlYW1MaWtlOwogICAgZnVuY3Rpb24gcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikgewogICAgICB2YXIgYXN5bmNJdGVyYWJsZV8xLCBhc3luY0l0ZXJhYmxlXzFfMTsKICAgICAgdmFyIGVfMiwgX2E7CiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciB2YWx1ZSwgZV8yXzE7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9iKSB7CiAgICAgICAgICBzd2l0Y2ggKF9iLmxhYmVsKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfYi50cnlzLnB1c2goWzAsIDUsIDYsIDExXSk7CiAgICAgICAgICAgICAgYXN5bmNJdGVyYWJsZV8xID0gX19hc3luY1ZhbHVlcyhhc3luY0l0ZXJhYmxlKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gWzQsIGFzeW5jSXRlcmFibGVfMS5uZXh0KCldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgPSBfYi5zZW50KCksICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lKSkgcmV0dXJuIFszLCA0XTsKICAgICAgICAgICAgICB2YWx1ZSA9IGFzeW5jSXRlcmFibGVfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfYi5sYWJlbCA9IDM7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBlXzJfMSA9IF9iLnNlbnQoKTsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFs2LCAsIDksIDEwXSk7CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgJiYgIWFzeW5jSXRlcmFibGVfMV8xLmRvbmUgJiYgKF9hID0gYXN5bmNJdGVyYWJsZV8xLnJldHVybikpKSByZXR1cm4gWzMsIDhdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgX2EuY2FsbChhc3luY0l0ZXJhYmxlXzEpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDg7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDEwXTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbN107CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9leGVjdXRlU2NoZWR1bGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4ZWN1dGVTY2hlZHVsZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGV4ZWN1dGVTY2hlZHVsZShwYXJlbnRTdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgd29yaywgZGVsYXksIHJlcGVhdDIpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHJlcGVhdDIgPT09IHZvaWQgMCkgewogICAgICAgIHJlcGVhdDIgPSBmYWxzZTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVTdWJzY3JpcHRpb24gPSBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgd29yaygpOwogICAgICAgIGlmIChyZXBlYXQyKSB7CiAgICAgICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHRoaXMuc2NoZWR1bGUobnVsbCwgZGVsYXkpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgIH0KICAgICAgfSwgZGVsYXkpOwogICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHNjaGVkdWxlU3Vic2NyaXB0aW9uKTsKICAgICAgaWYgKCFyZXBlYXQyKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlU3Vic2NyaXB0aW9uOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leGVjdXRlU2NoZWR1bGUgPSBleGVjdXRlU2NoZWR1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMKdmFyIHJlcXVpcmVfb2JzZXJ2ZU9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVPbiA9IHZvaWQgMDsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU9uKHNjaGVkdWxlciwgZGVsYXkpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSBvYnNlcnZlT247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcwp2YXIgcmVxdWlyZV9zdWJzY3JpYmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3Vic2NyaWJlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN1YnNjcmliZU9uID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3Vic2NyaWJlT24oc2NoZWR1bGVyLCBkZWxheSkgewogICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgIGRlbGF5ID0gMDsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSwgZGVsYXkpKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zdWJzY3JpYmVPbiA9IHN1YnNjcmliZU9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG9ic2VydmVPbl8xID0gcmVxdWlyZV9vYnNlcnZlT24oKTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCkucGlwZShzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uKHNjaGVkdWxlciksIG9ic2VydmVPbl8xLm9ic2VydmVPbihzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlT2JzZXJ2YWJsZSA9IHNjaGVkdWxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZVByb21pc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZVByb21pc2UgPSBzY2hlZHVsZVByb21pc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGkgPSAwOwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaSA9PT0gaW5wdXQubGVuZ3RoKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChpbnB1dFtpKytdKTsKICAgICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSBzY2hlZHVsZUFycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUl0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpdGVyYXRvcjsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGl0ZXJhdG9yID0gaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgX2E7CiAgICAgICAgICAgIHZhciB2YWx1ZTsKICAgICAgICAgICAgdmFyIGRvbmU7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgX2EgPSBpdGVyYXRvci5uZXh0KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkb25lKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpdGVyYXRvciA9PT0gbnVsbCB8fCBpdGVyYXRvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogaXRlcmF0b3IucmV0dXJuKSAmJiBpdGVyYXRvci5yZXR1cm4oKTsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlSXRlcmFibGUgPSBzY2hlZHVsZUl0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUFzeW5jSXRlcmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKCFpbnB1dCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSXRlcmFibGUgY2Fubm90IGJlIG51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBpdGVyYXRvciA9IGlucHV0W1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOwogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGl0ZXJhdG9yLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAgICAgICAgICAgIGlmIChyZXN1bHQuZG9uZSkgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQocmVzdWx0LnZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwgMCwgdHJ1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gc2NoZWR1bGVBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xLnNjaGVkdWxlQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IoaW5wdXQpLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVkID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUoKTsKICAgIHZhciBzY2hlZHVsZVByb21pc2VfMSA9IHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlKCk7CiAgICB2YXIgc2NoZWR1bGVBcnJheV8xID0gcmVxdWlyZV9zY2hlZHVsZUFycmF5KCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNJdGVyYWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICBpZiAoaW5wdXQgIT0gbnVsbCkgewogICAgICAgIGlmIChpc0ludGVyb3BPYnNlcnZhYmxlXzEuaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZU9ic2VydmFibGVfMS5zY2hlZHVsZU9ic2VydmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlQXJyYXlfMS5zY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUHJvbWlzZV8xLnNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUl0ZXJhYmxlXzEuc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEuaXNSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2VfMS5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHNjaGVkdWxlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzCnZhciByZXF1aXJlX2Zyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlZF8xID0gcmVxdWlyZV9zY2hlZHVsZWQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBmcm9tKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlciA/IHNjaGVkdWxlZF8xLnNjaGVkdWxlZChpbnB1dCwgc2NoZWR1bGVyKSA6IGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tID0gZnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcwp2YXIgcmVxdWlyZV9vZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vZiA9IHZvaWQgMDsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG9mKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKGFyZ3MsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5vZiA9IG9mOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiB0aHJvd0Vycm9yMihlcnJvck9yRXJyb3JGYWN0b3J5LCBzY2hlZHVsZXIpIHsKICAgICAgdmFyIGVycm9yRmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGVycm9yT3JFcnJvckZhY3RvcnkpID8gZXJyb3JPckVycm9yRmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlcnJvck9yRXJyb3JGYWN0b3J5OwogICAgICB9OwogICAgICB2YXIgaW5pdCA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgIH07CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoaW5pdCwgMCwgc3Vic2NyaWJlcik7CiAgICAgIH0gOiBpbml0KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB0aHJvd0Vycm9yMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBOb3RpZmljYXRpb25LaW5kOwogICAgKGZ1bmN0aW9uKE5vdGlmaWNhdGlvbktpbmQyKSB7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJORVhUIl0gPSAiTiI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJFUlJPUiJdID0gIkUiOwogICAgICBOb3RpZmljYXRpb25LaW5kMlsiQ09NUExFVEUiXSA9ICJDIjsKICAgIH0pKE5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kIHx8IChleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0ge30pKTsKICAgIHZhciBOb3RpZmljYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gTm90aWZpY2F0aW9uMihraW5kLCB2YWx1ZSwgZXJyb3IpIHsKICAgICAgICB0aGlzLmtpbmQgPSBraW5kOwogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGtpbmQgPT09ICJOIjsKICAgICAgfQogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS5vYnNlcnZlID0gZnVuY3Rpb24ob2JzZXJ2ZXIpIHsKICAgICAgICByZXR1cm4gb2JzZXJ2ZU5vdGlmaWNhdGlvbih0aGlzLCBvYnNlcnZlcik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmRvID0gZnVuY3Rpb24obmV4dEhhbmRsZXIsIGVycm9ySGFuZGxlciwgY29tcGxldGVIYW5kbGVyKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgcmV0dXJuIGtpbmQgPT09ICJOIiA/IG5leHRIYW5kbGVyID09PSBudWxsIHx8IG5leHRIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBuZXh0SGFuZGxlcih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyBlcnJvckhhbmRsZXIgPT09IG51bGwgfHwgZXJyb3JIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlcnJvckhhbmRsZXIoZXJyb3IpIDogY29tcGxldGVIYW5kbGVyID09PSBudWxsIHx8IGNvbXBsZXRlSGFuZGxlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY29tcGxldGVIYW5kbGVyKCk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmFjY2VwdCA9IGZ1bmN0aW9uKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKChfYSA9IG5leHRPck9ic2VydmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubmV4dCkgPyB0aGlzLm9ic2VydmUobmV4dE9yT2JzZXJ2ZXIpIDogdGhpcy5kbyhuZXh0T3JPYnNlcnZlciwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUudG9PYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgdmFyIHJlc3VsdCA9IGtpbmQgPT09ICJOIiA/IG9mXzEub2YodmFsdWUpIDoga2luZCA9PT0gIkUiID8gdGhyb3dFcnJvcl8xLnRocm93RXJyb3IoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZXJyb3I7CiAgICAgICAgfSkgOiBraW5kID09PSAiQyIgPyBlbXB0eV8xLkVNUFRZIDogMDsKICAgICAgICBpZiAoIXJlc3VsdCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCBub3RpZmljYXRpb24ga2luZCAiICsga2luZCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlTmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJOIiwgdmFsdWUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJFIiwgdm9pZCAwLCBlcnIpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb247CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uMigiQyIpOwogICAgICByZXR1cm4gTm90aWZpY2F0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IE5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG9ic2VydmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBvYnNlcnZlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIF9kID0gbm90aWZpY2F0aW9uLCBraW5kID0gX2Qua2luZCwgdmFsdWUgPSBfZC52YWx1ZSwgZXJyb3IgPSBfZC5lcnJvcjsKICAgICAgaWYgKHR5cGVvZiBraW5kICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpOwogICAgICB9CiAgICAgIGtpbmQgPT09ICJOIiA/IChfYSA9IG9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG9ic2VydmVyLCB2YWx1ZSkgOiBraW5kID09PSAiRSIgPyAoX2IgPSBvYnNlcnZlci5lcnJvcikgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwob2JzZXJ2ZXIsIGVycm9yKSA6IChfYyA9IG9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FsbChvYnNlcnZlcik7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlTm90aWZpY2F0aW9uID0gb2JzZXJ2ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfaXNPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc09ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc09ic2VydmFibGUob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiAob2JqIGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUgfHwgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLmxpZnQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iai5zdWJzY3JpYmUpKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IGlzT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzCnZhciByZXF1aXJlX0VtcHR5RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuRW1wdHlFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gRW1wdHlFcnJvckltcGwoKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJFbXB0eUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAibm8gZWxlbWVudHMgaW4gc2VxdWVuY2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfbGFzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9sYXN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgZnVuY3Rpb24gbGFzdFZhbHVlRnJvbShzb3VyY2UsIGNvbmZpZykgewogICAgICB2YXIgaGFzQ29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gIm9iamVjdCI7CiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgX2hhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIF92YWx1ZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHsKICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIF92YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICBfaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChfaGFzVmFsdWUpIHsKICAgICAgICAgICAgICByZXNvbHZlKF92YWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ29uZmlnKSB7CiAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcuZGVmYXVsdFZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZWplY3QobmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubGFzdFZhbHVlRnJvbSA9IGxhc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzCnZhciByZXF1aXJlX2ZpcnN0VmFsdWVGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpcnN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gZmlyc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IuanMKdmFyIHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJhcmd1bWVudCBvdXQgb2YgcmFuZ2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcwp2YXIgcmVxdWlyZV9Ob3RGb3VuZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE5vdEZvdW5kRXJyb3JJbXBsKG1lc3NhZ2UpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk5vdEZvdW5kRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzCnZhciByZXF1aXJlX1NlcXVlbmNlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuU2VxdWVuY2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gU2VxdWVuY2VFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiU2VxdWVuY2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRGF0ZS5qcwp2YXIgcmVxdWlyZV9pc0RhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0RhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzVmFsaWREYXRlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gaXNWYWxpZERhdGUodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUpOwogICAgfQogICAgZXhwb3J0czIuaXNWYWxpZERhdGUgPSBpc1ZhbGlkRGF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXQuanMKdmFyIHJlcXVpcmVfdGltZW91dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVGltZW91dEVycm9ySW1wbChpbmZvKSB7CiAgICAgICAgaWYgKGluZm8gPT09IHZvaWQgMCkgewogICAgICAgICAgaW5mbyA9IG51bGw7CiAgICAgICAgfQogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAiVGltZW91dCBoYXMgb2NjdXJyZWQiOwogICAgICAgIHRoaXMubmFtZSA9ICJUaW1lb3V0RXJyb3IiOwogICAgICAgIHRoaXMuaW5mbyA9IGluZm87CiAgICAgIH07CiAgICB9KTsKICAgIGZ1bmN0aW9uIHRpbWVvdXQoY29uZmlnLCBzY2hlZHVsZXJBcmcpIHsKICAgICAgdmFyIF9hID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoY29uZmlnKSA/IHsgZmlyc3Q6IGNvbmZpZyB9IDogdHlwZW9mIGNvbmZpZyA9PT0gIm51bWJlciIgPyB7IGVhY2g6IGNvbmZpZyB9IDogY29uZmlnLCBmaXJzdCA9IF9hLmZpcnN0LCBlYWNoID0gX2EuZWFjaCwgX2IgPSBfYS53aXRoLCBfd2l0aCA9IF9iID09PSB2b2lkIDAgPyB0aW1lb3V0RXJyb3JGYWN0b3J5IDogX2IsIF9jID0gX2Euc2NoZWR1bGVyLCBzY2hlZHVsZXIgPSBfYyA9PT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnICE9PSBudWxsICYmIHNjaGVkdWxlckFyZyAhPT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlciA6IF9jLCBfZCA9IF9hLm1ldGEsIG1ldGEgPSBfZCA9PT0gdm9pZCAwID8gbnVsbCA6IF9kOwogICAgICBpZiAoZmlyc3QgPT0gbnVsbCAmJiBlYWNoID09IG51bGwpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJObyB0aW1lb3V0IHByb3ZpZGVkLiIpOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIHRpbWVyU3Vic2NyaXB0aW9uOwogICAgICAgIHZhciBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICB2YXIgc3RhcnRUaW1lciA9IGZ1bmN0aW9uKGRlbGF5KSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKF93aXRoKHsKICAgICAgICAgICAgICAgIG1ldGEsCiAgICAgICAgICAgICAgICBsYXN0VmFsdWUsCiAgICAgICAgICAgICAgICBzZWVuCiAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBkZWxheSk7CiAgICAgICAgfTsKICAgICAgICBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCB0aW1lclN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGltZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNlZW4rKzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChsYXN0VmFsdWUgPSB2YWx1ZSk7CiAgICAgICAgICBlYWNoID4gMCAmJiBzdGFydFRpbWVyKGVhY2gpOwogICAgICAgIH0sIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghKHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi5jbG9zZWQpKSB7CiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgICAgIXNlZW4gJiYgc3RhcnRUaW1lcihmaXJzdCAhPSBudWxsID8gdHlwZW9mIGZpcnN0ID09PSAibnVtYmVyIiA/IGZpcnN0IDogK2ZpcnN0IC0gc2NoZWR1bGVyLm5vdygpIDogZWFjaCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dCA9IHRpbWVvdXQ7CiAgICBmdW5jdGlvbiB0aW1lb3V0RXJyb3JGYWN0b3J5KGluZm8pIHsKICAgICAgdGhyb3cgbmV3IGV4cG9ydHMyLlRpbWVvdXRFcnJvcihpbmZvKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcwp2YXIgcmVxdWlyZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hcDIocHJvamVjdCwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKykpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXAgPSBtYXAyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcE9uZU9yTWFueUFyZ3MgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gY2FsbE9yQXBwbHkoZm4sIGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzQXJyYXkoYXJncykgPyBmbi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpIDogZm4oYXJncyk7CiAgICB9CiAgICBmdW5jdGlvbiBtYXBPbmVPck1hbnlBcmdzKGZuKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYXJncykgewogICAgICAgIHJldHVybiBjYWxsT3JBcHBseShmbiwgYXJncyk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IG1hcE9uZU9yTWFueUFyZ3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kQ2FsbGJhY2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoZmFsc2UsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSBiaW5kQ2FsbGJhY2s7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kTm9kZUNhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKHRydWUsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gYmluZE5vZGVDYWxsYmFjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzQXJnQXJyYXlPck9iamVjdC5qcwp2YXIgcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlT2JqZWN0LmpzCnZhciByZXF1aXJlX2NyZWF0ZU9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZU9iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgewogICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoZnVuY3Rpb24ocmVzdWx0LCBrZXksIGkpIHsKICAgICAgICByZXR1cm4gcmVzdWx0W2tleV0gPSB2YWx1ZXNbaV0sIHJlc3VsdDsKICAgICAgfSwge30pOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gY3JlYXRlT2JqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RJbml0ID0gZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICB2YXIgX2EgPSBhcmdzQXJnQXJyYXlPck9iamVjdF8xLmFyZ3NBcmdBcnJheU9yT2JqZWN0KGFyZ3MpLCBvYnNlcnZhYmxlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICBpZiAob2JzZXJ2YWJsZXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKFtdLCBzY2hlZHVsZXIpOwogICAgICB9CiAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwga2V5cyA/IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIHJldHVybiBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKTsKICAgICAgfSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpKTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBjb21iaW5lTGF0ZXN0OwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwgdmFsdWVUcmFuc2Zvcm0pIHsKICAgICAgaWYgKHZhbHVlVHJhbnNmb3JtID09PSB2b2lkIDApIHsKICAgICAgICB2YWx1ZVRyYW5zZm9ybSA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgbGVuZ3RoID0gb2JzZXJ2YWJsZXMubGVuZ3RoOwogICAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgICAgdmFyIGFjdGl2ZSA9IGxlbmd0aDsKICAgICAgICAgIHZhciByZW1haW5pbmdGaXJzdFZhbHVlcyA9IGxlbmd0aDsKICAgICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgICAgbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzb3VyY2UgPSBmcm9tXzEuZnJvbShvYnNlcnZhYmxlc1tpMl0sIHNjaGVkdWxlcik7CiAgICAgICAgICAgICAgdmFyIGhhc0ZpcnN0VmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICAgICAgaWYgKCFoYXNGaXJzdFZhbHVlKSB7CiAgICAgICAgICAgICAgICAgIGhhc0ZpcnN0VmFsdWUgPSB0cnVlOwogICAgICAgICAgICAgICAgICByZW1haW5pbmdGaXJzdFZhbHVlcy0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdGaXJzdFZhbHVlcykgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWVUcmFuc2Zvcm0odmFsdWVzLnNsaWNlKCkpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghLS1hY3RpdmUpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgICAgICB9OwogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgICAgfQogICAgICAgIH0sIHN1YnNjcmliZXIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBjb21iaW5lTGF0ZXN0SW5pdDsKICAgIGZ1bmN0aW9uIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBleGVjdXRlLCBzdWJzY3JpcHRpb24pIHsKICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgZXhlY3V0ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXhlY3V0ZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUludGVybmFscy5qcwp2YXIgcmVxdWlyZV9tZXJnZUludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXAuanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IoYSwgYiwgaSwgaWkpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpKTsKICAgICAgICB9LCBjb25jdXJyZW50KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIHByb2plY3QsIGNvbmN1cnJlbnQpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwID0gbWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIG1lcmdlQWxsKGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChpZGVudGl0eV8xLmlkZW50aXR5LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gbWVyZ2VBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMKdmFyIHJlcXVpcmVfY29uY2F0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsKCkoZnJvbV8xLmZyb20oYXJncywgYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZGVmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmVyID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlZmVyKG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvYnNlcnZhYmxlRmFjdG9yeSgpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmZXIgPSBkZWZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25uZWN0YWJsZS5qcwp2YXIgcmVxdWlyZV9jb25uZWN0YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcwp2YXIgcmVxdWlyZV9mb3JrSm9pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgZnVuY3Rpb24gZm9ya0pvaW4oKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIF9hID0gYXJnc0FyZ0FycmF5T3JPYmplY3RfMS5hcmdzQXJnQXJyYXlPck9iamVjdChhcmdzKSwgc291cmNlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuZ3RoID0gc291cmNlcy5sZW5ndGg7CiAgICAgICAgaWYgKCFsZW5ndGgpIHsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgIHZhciByZW1haW5pbmdDb21wbGV0aW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgcmVtYWluaW5nRW1pc3Npb25zID0gbGVuZ3RoOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgICAgICByZW1haW5pbmdFbWlzc2lvbnMtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXNbc291cmNlSW5kZXgyXSA9IHZhbHVlOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdDb21wbGV0aW9ucy0tOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdDb21wbGV0aW9ucyB8fCAhaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0VtaXNzaW9ucykgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGtleXMgPyBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKSA6IHZhbHVlcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyBzb3VyY2VJbmRleCA8IGxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmZvcmtKb2luID0gZm9ya0pvaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcyA9IFsiYWRkTGlzdGVuZXIiLCAicmVtb3ZlTGlzdGVuZXIiXTsKICAgIHZhciBldmVudFRhcmdldE1ldGhvZHMgPSBbImFkZEV2ZW50TGlzdGVuZXIiLCAicmVtb3ZlRXZlbnRMaXN0ZW5lciJdOwogICAgdmFyIGpxdWVyeU1ldGhvZHMgPSBbIm9uIiwgIm9mZiJdOwogICAgZnVuY3Rpb24gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zLCByZXN1bHRTZWxlY3RvcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob3B0aW9ucykpIHsKICAgICAgICByZXN1bHRTZWxlY3RvciA9IG9wdGlvbnM7CiAgICAgICAgb3B0aW9ucyA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAocmVzdWx0U2VsZWN0b3IpIHsKICAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zKS5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSk7CiAgICAgIH0KICAgICAgdmFyIF9hID0gX19yZWFkKGlzRXZlbnRUYXJnZXQodGFyZ2V0KSA/IGV2ZW50VGFyZ2V0TWV0aG9kcy5tYXAoZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7CiAgICAgICAgfTsKICAgICAgfSkgOiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpID8gbm9kZUV2ZW50RW1pdHRlck1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBpc0pRdWVyeVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBqcXVlcnlNZXRob2RzLm1hcCh0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkpIDogW10sIDIpLCBhZGQgPSBfYVswXSwgcmVtb3ZlID0gX2FbMV07CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UodGFyZ2V0KSkgewogICAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oc3ViVGFyZ2V0KSB7CiAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoc3ViVGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHRhcmdldCkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWFkZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgZXZlbnQgdGFyZ2V0Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KDEgPCBhcmdzLmxlbmd0aCA/IGFyZ3MgOiBhcmdzWzBdKTsKICAgICAgICB9OwogICAgICAgIGFkZChoYW5kbGVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlKGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUV2ZW50ID0gZnJvbUV2ZW50OwogICAgZnVuY3Rpb24gdG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZE5hbWUpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaGFuZGxlcikgewogICAgICAgICAgcmV0dXJuIHRhcmdldFttZXRob2ROYW1lXShldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRMaXN0ZW5lcikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LnJlbW92ZUxpc3RlbmVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQub24pICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vZmYpOwogICAgfQogICAgZnVuY3Rpb24gaXNFdmVudFRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRFdmVudExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcwp2YXIgcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcwp2YXIgcmVxdWlyZV9nZW5lcmF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGRlZmVyXzEgPSByZXF1aXJlX2RlZmVyKCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZShpbml0aWFsU3RhdGVPck9wdGlvbnMsIGNvbmRpdGlvbiwgaXRlcmF0ZSwgcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciByZXN1bHRTZWxlY3RvcjsKICAgICAgdmFyIGluaXRpYWxTdGF0ZTsKICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgICAgICBfYSA9IGluaXRpYWxTdGF0ZU9yT3B0aW9ucywgaW5pdGlhbFN0YXRlID0gX2EuaW5pdGlhbFN0YXRlLCBjb25kaXRpb24gPSBfYS5jb25kaXRpb24sIGl0ZXJhdGUgPSBfYS5pdGVyYXRlLCBfYiA9IF9hLnJlc3VsdFNlbGVjdG9yLCByZXN1bHRTZWxlY3RvciA9IF9iID09PSB2b2lkIDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogX2IsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpbml0aWFsU3RhdGUgPSBpbml0aWFsU3RhdGVPck9wdGlvbnM7CiAgICAgICAgaWYgKCFyZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyIHx8IGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgICAgIHNjaGVkdWxlciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2VuKCkgewogICAgICAgIHZhciBzdGF0ZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2EyKSB7CiAgICAgICAgICBzd2l0Y2ggKF9hMi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgc3RhdGUgPSBpbml0aWFsU3RhdGU7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGlmICghKCFjb25kaXRpb24gfHwgY29uZGl0aW9uKHN0YXRlKSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCByZXN1bHRTZWxlY3RvcihzdGF0ZSldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX2EyLnNlbnQoKTsKICAgICAgICAgICAgICBfYTIubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgc3RhdGUgPSBpdGVyYXRlKHN0YXRlKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcihzY2hlZHVsZXIgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoZ2VuKCksIHNjaGVkdWxlcik7CiAgICAgIH0gOiBnZW4pOwogICAgfQogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSBnZW5lcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaWlmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5paWYgPSB2b2lkIDA7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIGZ1bmN0aW9uIGlpZihjb25kaXRpb24sIHRydWVSZXN1bHQsIGZhbHNlUmVzdWx0KSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBjb25kaXRpb24oKSA/IHRydWVSZXN1bHQgOiBmYWxzZVJlc3VsdDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5paWYgPSBpaWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdGltZXIuanMKdmFyIHJlcXVpcmVfdGltZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gaW50ZXJ2YWwocGVyaW9kLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHBlcmlvZCA9PT0gdm9pZCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIGlmIChwZXJpb2QgPCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICByZXR1cm4gdGltZXJfMS50aW1lcihwZXJpb2QsIHBlcmlvZCwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmludGVydmFsID0gaW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlMigpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHZhciBjb25jdXJyZW50ID0gYXJnc18xLnBvcE51bWJlcihhcmdzLCBJbmZpbml0eSk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnczsKICAgICAgcmV0dXJuICFzb3VyY2VzLmxlbmd0aCA/IGVtcHR5XzEuRU1QVFkgOiBzb3VyY2VzLmxlbmd0aCA9PT0gMSA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzWzBdKSA6IG1lcmdlQWxsXzEubWVyZ2VBbGwoY29uY3VycmVudCkoZnJvbV8xLmZyb20oc291cmNlcywgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcwp2YXIgcmVxdWlyZV9uZXZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL25ldmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLk5FVkVSID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZXhwb3J0czIuTkVWRVIgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUobm9vcF8xLm5vb3ApOwogICAgZnVuY3Rpb24gbmV2ZXIoKSB7CiAgICAgIHJldHVybiBleHBvcnRzMi5ORVZFUjsKICAgIH0KICAgIGV4cG9ydHMyLm5ldmVyID0gbmV2ZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMKdmFyIHJlcXVpcmVfYXJnc09yQXJnQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzT3JBcmdBcnJheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJnc09yQXJnQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgaXNBcnJheSA9IEFycmF5LmlzQXJyYXk7CiAgICBmdW5jdGlvbiBhcmdzT3JBcmdBcnJheShhcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLmxlbmd0aCA9PT0gMSAmJiBpc0FycmF5KGFyZ3NbMF0pID8gYXJnc1swXSA6IGFyZ3M7CiAgICB9CiAgICBleHBvcnRzMi5hcmdzT3JBcmdBcnJheSA9IGFyZ3NPckFyZ0FycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29uRXJyb3JSZXN1bWVOZXh0LmpzCnZhciByZXF1aXJlX29uRXJyb3JSZXN1bWVOZXh0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb25FcnJvclJlc3VtZU5leHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0KCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc291cmNlSW5kZXggPSAwOwogICAgICAgIHZhciBzdWJzY3JpYmVOZXh0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoc291cmNlSW5kZXggPCBuZXh0U291cmNlcy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIG5leHRTb3VyY2UgPSB2b2lkIDA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgbmV4dFNvdXJjZSA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShuZXh0U291cmNlc1tzb3VyY2VJbmRleCsrXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBub29wXzEubm9vcCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgICBuZXh0U291cmNlLnN1YnNjcmliZShpbm5lclN1YnNjcmliZXIpOwogICAgICAgICAgICBpbm5lclN1YnNjcmliZXIuYWRkKHN1YnNjcmliZU5leHQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlTmV4dCgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gb25FcnJvclJlc3VtZU5leHQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMKdmFyIHJlcXVpcmVfcGFpcnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYWlycy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGFpcnMgPSB2b2lkIDA7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBmdW5jdGlvbiBwYWlyczIob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9ub3QuanMKdmFyIHJlcXVpcmVfbm90MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm90ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gbm90KHByZWQsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiAhcHJlZC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMKdmFyIHJlcXVpcmVfZmlsdGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbHRlciA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KyspICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbHRlciA9IGZpbHRlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMKdmFyIHJlcXVpcmVfcGFydGl0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFydGl0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSB2b2lkIDA7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdDIoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gcGFydGl0aW9uKHNvdXJjZSwgcHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBbZmlsdGVyXzEuZmlsdGVyKHByZWRpY2F0ZSwgdGhpc0FyZykoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpLCBmaWx0ZXJfMS5maWx0ZXIobm90XzEubm90KHByZWRpY2F0ZSwgdGhpc0FyZykpKGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpKV07CiAgICB9CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcwp2YXIgcmVxdWlyZV9yYWNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFjZUluaXQgPSBleHBvcnRzMi5yYWNlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJhY2UoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUocmFjZUluaXQoc291cmNlcykpOwogICAgfQogICAgZXhwb3J0czIucmFjZSA9IHJhY2U7CiAgICBmdW5jdGlvbiByYWNlSW5pdChzb3VyY2VzKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbnMgPSBbXTsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKGkyKSB7CiAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IDA7IHMgPCBzdWJzY3JpcHRpb25zLmxlbmd0aDsgcysrKSB7CiAgICAgICAgICAgICAgICBzICE9PSBpMiAmJiBzdWJzY3JpcHRpb25zW3NdLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMgPSBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9KSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IHN1YnNjcmlwdGlvbnMgJiYgIXN1YnNjcmliZXIuY2xvc2VkICYmIGkgPCBzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnJhY2VJbml0ID0gcmFjZUluaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFuZ2UuanMKdmFyIHJlcXVpcmVfcmFuZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFuZ2UgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIGZ1bmN0aW9uIHJhbmdlKHN0YXJ0LCBjb3VudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb3VudCA9PSBudWxsKSB7CiAgICAgICAgY291bnQgPSBzdGFydDsKICAgICAgICBzdGFydCA9IDA7CiAgICAgIH0KICAgICAgaWYgKGNvdW50IDw9IDApIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfQogICAgICB2YXIgZW5kID0gY291bnQgKyBzdGFydDsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShzY2hlZHVsZXIgPyBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG4gPSBzdGFydDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG4gPCBlbmQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSA6IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbiA9IHN0YXJ0OwogICAgICAgIHdoaWxlIChuIDwgZW5kICYmICFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yYW5nZSA9IHJhbmdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3VzaW5nLmpzCnZhciByZXF1aXJlX3VzaW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdXNpbmcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnVzaW5nID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgZnVuY3Rpb24gdXNpbmcocmVzb3VyY2VGYWN0b3J5LCBvYnNlcnZhYmxlRmFjdG9yeSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcmVzb3VyY2UgPSByZXNvdXJjZUZhY3RvcnkoKTsKICAgICAgICB2YXIgcmVzdWx0ID0gb2JzZXJ2YWJsZUZhY3RvcnkocmVzb3VyY2UpOwogICAgICAgIHZhciBzb3VyY2UgPSByZXN1bHQgPyBpbm5lckZyb21fMS5pbm5lckZyb20ocmVzdWx0KSA6IGVtcHR5XzEuRU1QVFk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAocmVzb3VyY2UpIHsKICAgICAgICAgICAgcmVzb3VyY2UudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzaW5nID0gdXNpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvemlwLmpzCnZhciByZXF1aXJlX3ppcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIHNvdXJjZXMubGVuZ3RoID8gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0pOwogICAgICAgIHZhciBjb21wbGV0ZWQgPSBzb3VyY2VzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGJ1ZmZlcnNbc291cmNlSW5kZXgyXS5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuZXZlcnkoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5sZW5ndGg7CiAgICAgICAgICAgIH0pKSB7CiAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGJ1ZmZlcnMubWFwKGZ1bmN0aW9uKGJ1ZmZlcikgewogICAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHRTZWxlY3RvciA/IHJlc3VsdFNlbGVjdG9yLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHJlc3VsdCkpKSA6IHJlc3VsdCk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuc29tZShmdW5jdGlvbihidWZmZXIsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhYnVmZmVyLmxlbmd0aCAmJiBjb21wbGV0ZWRbaV07CiAgICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjb21wbGV0ZWRbc291cmNlSW5kZXgyXSA9IHRydWU7CiAgICAgICAgICAgICFidWZmZXJzW3NvdXJjZUluZGV4Ml0ubGVuZ3RoICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZUluZGV4IDwgc291cmNlcy5sZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXJzID0gY29tcGxldGVkID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KSA6IGVtcHR5XzEuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC90eXBlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMKdmFyIHJlcXVpcmVfYXVkaXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hdWRpdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gYXVkaXQoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICB2YXIgZW5kRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGlmICghZHVyYXRpb25TdWJzY3JpYmVyKSB7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmREdXJhdGlvbiwgY2xlYW51cER1cmF0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICghaGFzVmFsdWUgfHwgIWR1cmF0aW9uU3Vic2NyaWJlciB8fCBkdXJhdGlvblN1YnNjcmliZXIuY2xvc2VkKSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmF1ZGl0ID0gYXVkaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMKdmFyIHJlcXVpcmVfYXVkaXRUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0VGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGF1ZGl0VGltZShkdXJhdGlvbiwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gYXVkaXRUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXIgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcihjbG9zaW5nTm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjdXJyZW50QnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBjdXJyZW50QnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGN1cnJlbnRCdWZmZXIpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ05vdGlmaWVyKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGIgPSBjdXJyZW50QnVmZmVyOwogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IFtdOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXIgPSBidWZmZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcwp2YXIgcmVxdWlyZV9idWZmZXJDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyQ291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJDb3VudChidWZmZXJTaXplLCBzdGFydEJ1ZmZlckV2ZXJ5KSB7CiAgICAgIGlmIChzdGFydEJ1ZmZlckV2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gbnVsbDsKICAgICAgfQogICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gc3RhcnRCdWZmZXJFdmVyeSAhPT0gbnVsbCAmJiBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSB2b2lkIDAgPyBzdGFydEJ1ZmZlckV2ZXJ5IDogYnVmZmVyU2l6ZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gW107CiAgICAgICAgdmFyIGNvdW50ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgICB2YXIgdG9FbWl0ID0gbnVsbDsKICAgICAgICAgIGlmIChjb3VudCsrICUgc3RhcnRCdWZmZXJFdmVyeSA9PT0gMCkgewogICAgICAgICAgICBidWZmZXJzLnB1c2goW10pOwogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18xID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKTsgIWJ1ZmZlcnNfMV8xLmRvbmU7IGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdG9FbWl0ID0gdG9FbWl0ICE9PSBudWxsICYmIHRvRW1pdCAhPT0gdm9pZCAwID8gdG9FbWl0IDogW107CiAgICAgICAgICAgICAgICB0b0VtaXQucHVzaChidWZmZXIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9FbWl0KSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgdG9FbWl0XzEgPSBfX3ZhbHVlcyh0b0VtaXQpLCB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpOyAhdG9FbWl0XzFfMS5kb25lOyB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gdG9FbWl0XzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJzLCBidWZmZXIpOwogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlXzJfMSkgewogICAgICAgICAgICAgIGVfMiA9IHsgZXJyb3I6IGVfMl8xIH07CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmICh0b0VtaXRfMV8xICYmICF0b0VtaXRfMV8xLmRvbmUgJiYgKF9iID0gdG9FbWl0XzEucmV0dXJuKSkgX2IuY2FsbCh0b0VtaXRfMSk7CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzMsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18yID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKTsgIWJ1ZmZlcnNfMl8xLmRvbmU7IGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzJfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8zXzEpIHsKICAgICAgICAgICAgZV8zID0geyBlcnJvcjogZV8zXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMl8xICYmICFidWZmZXJzXzJfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMi5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMik7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMykgdGhyb3cgZV8zLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJDb3VudCA9IGJ1ZmZlckNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVGltZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVGltZShidWZmZXJUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciBidWZmZXJDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4QnVmZmVyU2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkVtaXQgPSBmYWxzZTsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKHJlY29yZCkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXIsIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ICYmIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgfTsKICAgICAgICB2YXIgc3RhcnRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChidWZmZXJSZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChzdWJzKTsKICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgYnVmZmVyLAogICAgICAgICAgICAgIHN1YnMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgYnVmZmVyUmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVtaXQocmVjb3JkXzEpOwogICAgICAgICAgICB9LCBidWZmZXJUaW1lU3Bhbik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBpZiAoYnVmZmVyQ3JlYXRpb25JbnRlcnZhbCAhPT0gbnVsbCAmJiBidWZmZXJDcmVhdGlvbkludGVydmFsID49IDApIHsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIHN0YXJ0QnVmZmVyLCBidWZmZXJDcmVhdGlvbkludGVydmFsLCB0cnVlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVzdGFydE9uRW1pdCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgdmFyIGJ1ZmZlclRpbWVTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTI7CiAgICAgICAgICB2YXIgcmVjb3Jkc0NvcHkgPSBidWZmZXJSZWNvcmRzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciByZWNvcmRzQ29weV8xID0gX192YWx1ZXMocmVjb3Jkc0NvcHkpLCByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKTsgIXJlY29yZHNDb3B5XzFfMS5kb25lOyByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciByZWNvcmQgPSByZWNvcmRzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXI7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICAgIG1heEJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCAmJiBlbWl0KHJlY29yZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChyZWNvcmRzQ29weV8xXzEgJiYgIXJlY29yZHNDb3B5XzFfMS5kb25lICYmIChfYTIgPSByZWNvcmRzQ29weV8xLnJldHVybikpIF9hMi5jYWxsKHJlY29yZHNDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlclJlY29yZHMgPT09IG51bGwgfHwgYnVmZmVyUmVjb3JkcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyUmVjb3Jkcy5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlclJlY29yZHMuc2hpZnQoKS5idWZmZXIpOwogICAgICAgICAgfQogICAgICAgICAgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IG51bGwgfHwgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlclRpbWVTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXJSZWNvcmRzID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGJ1ZmZlclRpbWVTdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gYnVmZmVyVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlclRvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IFtdOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciBidWZmZXIgPSBbXTsKICAgICAgICAgIGJ1ZmZlcnMucHVzaChidWZmZXIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgZW1pdEJ1ZmZlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoYnVmZmVycywgYnVmZmVyKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW1pdEJ1ZmZlciwgbm9vcF8xLm5vb3ApKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoYnVmZmVycy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXJzLnNoaWZ0KCkpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUb2dnbGUgPSBidWZmZXJUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJXaGVuLmpzCnZhciByZXF1aXJlX2J1ZmZlcldoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlcldoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcldoZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gbnVsbDsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXIgPSBudWxsOwogICAgICAgIHZhciBvcGVuQnVmZmVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBiID0gYnVmZmVyOwogICAgICAgICAgYnVmZmVyID0gW107CiAgICAgICAgICBiICYmIHN1YnNjcmliZXIubmV4dChiKTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3IoKSkuc3Vic2NyaWJlKGNsb3NpbmdTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIG9wZW5CdWZmZXIsIG5vb3BfMS5ub29wKSk7CiAgICAgICAgfTsKICAgICAgICBvcGVuQnVmZmVyKCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPT09IG51bGwgfHwgYnVmZmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgJiYgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPSBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSBidWZmZXJXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY2F0Y2hFcnJvci5qcwp2YXIgcmVxdWlyZV9jYXRjaEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBjYXRjaEVycm9yKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWIgPSBudWxsOwogICAgICAgIHZhciBzeW5jVW5zdWIgPSBmYWxzZTsKICAgICAgICB2YXIgaGFuZGxlZFJlc3VsdDsKICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZXJyLCBjYXRjaEVycm9yKHNlbGVjdG9yKShzb3VyY2UpKSk7CiAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2F0Y2hFcnJvciA9IGNhdGNoRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX3NjYW5JbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjYW5JbnRlcm5hbHMgPSB2b2lkIDA7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgaGFzU2VlZCwgZW1pdE9uTmV4dCwgZW1pdEJlZm9yZUNvbXBsZXRlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzU3RhdGUgPSBoYXNTZWVkOwogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGkgPSBpbmRleCsrOwogICAgICAgICAgc3RhdGUgPSBoYXNTdGF0ZSA/IGFjY3VtdWxhdG9yKHN0YXRlLCB2YWx1ZSwgaSkgOiAoaGFzU3RhdGUgPSB0cnVlLCB2YWx1ZSk7CiAgICAgICAgICBlbWl0T25OZXh0ICYmIHN1YnNjcmliZXIubmV4dChzdGF0ZSk7CiAgICAgICAgfSwgZW1pdEJlZm9yZUNvbXBsZXRlICYmIGZ1bmN0aW9uKCkgewogICAgICAgICAgaGFzU3RhdGUgJiYgc3Vic2NyaWJlci5uZXh0KHN0YXRlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5zY2FuSW50ZXJuYWxzID0gc2NhbkludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcwp2YXIgcmVxdWlyZV9yZWR1Y2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVkdWNlID0gdm9pZCAwOwogICAgdmFyIHNjYW5JbnRlcm5hbHNfMSA9IHJlcXVpcmVfc2NhbkludGVybmFscygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gcmVkdWNlKGFjY3VtdWxhdG9yLCBzZWVkKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShzY2FuSW50ZXJuYWxzXzEuc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgYXJndW1lbnRzLmxlbmd0aCA+PSAyLCBmYWxzZSwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIucmVkdWNlID0gcmVkdWNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdG9BcnJheS5qcwp2YXIgcmVxdWlyZV90b0FycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50b0FycmF5ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcnJSZWR1Y2VyID0gZnVuY3Rpb24oYXJyLCB2YWx1ZSkgewogICAgICByZXR1cm4gYXJyLnB1c2godmFsdWUpLCBhcnI7CiAgICB9OwogICAgZnVuY3Rpb24gdG9BcnJheTIoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZWR1Y2VfMS5yZWR1Y2UoYXJyUmVkdWNlciwgW10pKHNvdXJjZSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRvQXJyYXkgPSB0b0FycmF5MjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvam9pbkFsbEludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgZnVuY3Rpb24gam9pbkFsbEludGVybmFscyhqb2luRm4sIHByb2plY3QpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlKHRvQXJyYXlfMTIudG9BcnJheSgpLCBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHNvdXJjZXMpIHsKICAgICAgICByZXR1cm4gam9pbkZuKHNvdXJjZXMpOwogICAgICB9KSwgcHJvamVjdCA/IG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHByb2plY3QpIDogaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gam9pbkFsbEludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdEFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIHZhciBqb2luQWxsSW50ZXJuYWxzXzEgPSByZXF1aXJlX2pvaW5BbGxJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QsIHByb2plY3QpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBleHBvcnRzMi5jb21iaW5lQWxsID0gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHBpcGVfMS5waXBlKGNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSwgbWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0SW5pdChfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKSkpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gY29tYmluZUxhdGVzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RXaXRoLmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0MigpOwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBjb21iaW5lTGF0ZXN0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBjb25jYXRNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlc3VsdFNlbGVjdG9yKSA/IG1lcmdlTWFwXzEubWVyZ2VNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IsIDEpIDogbWVyZ2VNYXBfMS5tZXJnZU1hcChwcm9qZWN0LCAxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcCA9IGNvbmNhdE1hcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcFRvLmpzCnZhciByZXF1aXJlX2NvbmNhdE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gY29uY2F0TWFwXzEuY29uY2F0TWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gY29uY2F0TWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbmNhdEFsbF8xLmNvbmNhdEFsbCgpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXQgPSBjb25jYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzCnZhciByZXF1aXJlX2NvbmNhdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdDIoKTsKICAgIGZ1bmN0aW9uIGNvbmNhdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSBjb25jYXRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMKdmFyIHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21TdWJzY3JpYmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBmcm9tU3Vic2NyaWJhYmxlKHN1YnNjcmliYWJsZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJhYmxlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gZnJvbVN1YnNjcmliYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMKdmFyIHJlcXVpcmVfY29ubmVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29ubmVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29ubmVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZnJvbVN1YnNjcmliYWJsZV8xID0gcmVxdWlyZV9mcm9tU3Vic2NyaWJhYmxlKCk7CiAgICB2YXIgREVGQVVMVF9DT05GSUcgPSB7CiAgICAgIGNvbm5lY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gY29ubmVjdChzZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIGlmIChjb25maWcgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZyA9IERFRkFVTFRfQ09ORklHOwogICAgICB9CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZnJvbVN1YnNjcmliYWJsZV8xLmZyb21TdWJzY3JpYmFibGUoc3ViamVjdCkpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc291cmNlLnN1YnNjcmliZShzdWJqZWN0KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdCA9IGNvbm5lY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcwp2YXIgcmVxdWlyZV9jb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvdW50ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIGZ1bmN0aW9uIGNvdW50KHByZWRpY2F0ZSkgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGZ1bmN0aW9uKHRvdGFsLCB2YWx1ZSwgaSkgewogICAgICAgIHJldHVybiAhcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaSkgPyB0b3RhbCArIDEgOiB0b3RhbDsKICAgICAgfSwgMCk7CiAgICB9CiAgICBleHBvcnRzMi5jb3VudCA9IGNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2UuanMKdmFyIHJlcXVpcmVfZGVib3VuY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVib3VuY2UoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGVtaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0LCBub29wXzEubm9vcCk7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IGRlYm91bmNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzCnZhciByZXF1aXJlX2RlYm91bmNlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWJvdW5jZVRpbWUoZHVlVGltZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFRpbWUgPSBudWxsOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGFjdGl2ZVRhc2sgPSBudWxsOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBlbWl0V2hlbklkbGUoKSB7CiAgICAgICAgICB2YXIgdGFyZ2V0VGltZSA9IGxhc3RUaW1lICsgZHVlVGltZTsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAobm93IDwgdGFyZ2V0VGltZSkgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gdGhpcy5zY2hlZHVsZSh2b2lkIDAsIHRhcmdldFRpbWUgLSBub3cpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgZW1pdCgpOwogICAgICAgIH0KICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgICBsYXN0VGltZSA9IHNjaGVkdWxlci5ub3coKTsKICAgICAgICAgIGlmICghYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gc2NoZWR1bGVyLnNjaGVkdWxlKGVtaXRXaGVuSWRsZSwgZHVlVGltZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKGFjdGl2ZVRhc2spOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gZGVib3VuY2VUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMKdmFyIHJlcXVpcmVfZGVmYXVsdElmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlZmF1bHRJZkVtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZGVmYXVsdFZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBkZWZhdWx0SWZFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2UuanMKdmFyIHJlcXVpcmVfdGFrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZSA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2UoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCsrc2VlbiA8PSBjb3VudCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICBpZiAoY291bnQgPD0gc2VlbikgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlID0gdGFrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2lnbm9yZUVsZW1lbnRzLmpzCnZhciByZXF1aXJlX2lnbm9yZUVsZW1lbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pZ25vcmVFbGVtZW50cy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZnVuY3Rpb24gaWdub3JlRWxlbWVudHMoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gaWdub3JlRWxlbWVudHM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcwp2YXIgcmVxdWlyZV9tYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIG1hcFRvKHZhbHVlKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hcFRvID0gbWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMKdmFyIHJlcXVpcmVfZGVsYXlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgaWdub3JlRWxlbWVudHNfMSA9IHJlcXVpcmVfaWdub3JlRWxlbWVudHMoKTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3Rvciwgc3Vic2NyaXB0aW9uRGVsYXkpIHsKICAgICAgaWYgKHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzdWJzY3JpcHRpb25EZWxheS5waXBlKHRha2VfMS50YWtlKDEpLCBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzKCkpLCBzb3VyY2UucGlwZShkZWxheVdoZW4oZGVsYXlEdXJhdGlvblNlbGVjdG9yKSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShkZWxheUR1cmF0aW9uU2VsZWN0b3IodmFsdWUsIGluZGV4KSkucGlwZSh0YWtlXzEudGFrZSgxKSwgbWFwVG9fMS5tYXBUbyh2YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IGRlbGF5V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbGF5LmpzCnZhciByZXF1aXJlX2RlbGF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVsYXkgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGRlbGF5KGR1ZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uID0gdGltZXJfMS50aW1lcihkdWUsIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGR1cmF0aW9uOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5ID0gZGVsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX2RlbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRlbWF0ZXJpYWxpemUoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihub3RpZmljYXRpb24pIHsKICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5vYnNlcnZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcik7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSBkZW1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3QuanMKdmFyIHJlcXVpcmVfZGlzdGluY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGlzdGluY3Qoa2V5U2VsZWN0b3IsIGZsdXNoZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBkaXN0aW5jdEtleXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5U2VsZWN0b3IgPyBrZXlTZWxlY3Rvcih2YWx1ZSkgOiB2YWx1ZTsKICAgICAgICAgIGlmICghZGlzdGluY3RLZXlzLmhhcyhrZXkpKSB7CiAgICAgICAgICAgIGRpc3RpbmN0S2V5cy5hZGQoa2V5KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgZmx1c2hlcyAmJiBpbm5lckZyb21fMS5pbm5lckZyb20oZmx1c2hlcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBkaXN0aW5jdEtleXMuY2xlYXIoKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0ID0gZGlzdGluY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdFVudGlsQ2hhbmdlZC5qcwp2YXIgcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbENoYW5nZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbENoYW5nZWQoY29tcGFyYXRvciwga2V5U2VsZWN0b3IpIHsKICAgICAgaWYgKGtleVNlbGVjdG9yID09PSB2b2lkIDApIHsKICAgICAgICBrZXlTZWxlY3RvciA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgY29tcGFyYXRvciA9IGNvbXBhcmF0b3IgIT09IG51bGwgJiYgY29tcGFyYXRvciAhPT0gdm9pZCAwID8gY29tcGFyYXRvciA6IGRlZmF1bHRDb21wYXJlOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXZpb3VzS2V5OwogICAgICAgIHZhciBmaXJzdCA9IHRydWU7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBjdXJyZW50S2V5ID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgaWYgKGZpcnN0IHx8ICFjb21wYXJhdG9yKHByZXZpb3VzS2V5LCBjdXJyZW50S2V5KSkgewogICAgICAgICAgICBmaXJzdCA9IGZhbHNlOwogICAgICAgICAgICBwcmV2aW91c0tleSA9IGN1cnJlbnRLZXk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZGlzdGluY3RVbnRpbENoYW5nZWQ7CiAgICBmdW5jdGlvbiBkZWZhdWx0Q29tcGFyZShhLCBiKSB7CiAgICAgIHJldHVybiBhID09PSBiOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoa2V5LCBjb21wYXJlKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkKGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZSA/IGNvbXBhcmUoeFtrZXldLCB5W2tleV0pIDogeFtrZXldID09PSB5W2tleV07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcwp2YXIgcmVxdWlyZV90aHJvd0lmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRocm93SWZFbXB0eShlcnJvckZhY3RvcnkpIHsKICAgICAgaWYgKGVycm9yRmFjdG9yeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZXJyb3JGYWN0b3J5ID0gZGVmYXVsdEVycm9yRmFjdG9yeTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaGFzVmFsdWUgPyBzdWJzY3JpYmVyLmNvbXBsZXRlKCkgOiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdGhyb3dJZkVtcHR5OwogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9yRmFjdG9yeSgpIHsKICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzCnZhciByZXF1aXJlX2VsZW1lbnRBdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSB2b2lkIDA7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGhyb3dJZkVtcHR5XzEgPSByZXF1aXJlX3Rocm93SWZFbXB0eSgpOwogICAgdmFyIGRlZmF1bHRJZkVtcHR5XzEgPSByZXF1aXJlX2RlZmF1bHRJZkVtcHR5KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICBmdW5jdGlvbiBlbGVtZW50QXQoaW5kZXgsIGRlZmF1bHRWYWx1ZSkgewogICAgICBpZiAoaW5kZXggPCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgfQogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gaSA9PT0gaW5kZXg7CiAgICAgICAgfSksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSBlbGVtZW50QXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzCnZhciByZXF1aXJlX2VuZFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VuZFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVuZFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIG9mXzEgPSByZXF1aXJlX29mKCk7CiAgICBmdW5jdGlvbiBlbmRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQoc291cmNlLCBvZl8xLm9mLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbmRXaXRoID0gZW5kV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V2ZXJ5LmpzCnZhciByZXF1aXJlX2V2ZXJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXZlcnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZXZlcnkocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0cnVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXZlcnkgPSBldmVyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMKdmFyIHJlcXVpcmVfZXhoYXVzdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGV4aGF1c3RNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpLnBpcGUobWFwXzEubWFwKGZ1bmN0aW9uKGIsIGlpKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yKGEsIGIsIGksIGlpKTsKICAgICAgICAgICAgfSkpOwogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgdmFyIGlubmVyU3ViID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG91dGVyVmFsdWUpIHsKICAgICAgICAgIGlmICghaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgICAgaXNDb21wbGV0ZSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdChvdXRlclZhbHVlLCBpbmRleCsrKSkuc3Vic2NyaWJlKGlubmVyU3ViKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgIWlubmVyU3ViICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4aGF1c3RNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzCnZhciByZXF1aXJlX2V4aGF1c3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgZXhoYXVzdE1hcF8xID0gcmVxdWlyZV9leGhhdXN0TWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RBbGwoKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0ID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzCnZhciByZXF1aXJlX2V4cGFuZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHBhbmQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbWVyZ2VJbnRlcm5hbHNfMSA9IHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGV4cGFuZChwcm9qZWN0LCBjb25jdXJyZW50LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBjb25jdXJyZW50ID0gKGNvbmN1cnJlbnQgfHwgMCkgPCAxID8gSW5maW5pdHkgOiBjb25jdXJyZW50OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCB2b2lkIDAsIHRydWUsIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhwYW5kID0gZXhwYW5kOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMKdmFyIHJlcXVpcmVfZmluYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmFsaXplLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIGZpbmFsaXplKGNhbGxiYWNrKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB0cnkgewogICAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgc3Vic2NyaWJlci5hZGQoY2FsbGJhY2spOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IGZpbmFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZC5qcwp2YXIgcmVxdWlyZV9maW5kID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVGaW5kID0gZXhwb3J0czIuZmluZCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaW5kKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJ2YWx1ZSIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmQgPSBmaW5kOwogICAgZnVuY3Rpb24gY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsIGVtaXQpIHsKICAgICAgdmFyIGZpbmRJbmRleCA9IGVtaXQgPT09ICJpbmRleCI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBpZiAocHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGksIHNvdXJjZSkpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGZpbmRJbmRleCA/IGkgOiB2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyAtMSA6IHZvaWQgMCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGNyZWF0ZUZpbmQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMKdmFyIHJlcXVpcmVfZmluZEluZGV4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBmaW5kXzEgPSByZXF1aXJlX2ZpbmQoKTsKICAgIGZ1bmN0aW9uIGZpbmRJbmRleChwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZpbmRfMS5jcmVhdGVGaW5kKHByZWRpY2F0ZSwgdGhpc0FyZywgImluZGV4IikpOwogICAgfQogICAgZXhwb3J0czIuZmluZEluZGV4ID0gZmluZEluZGV4OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMKdmFyIHJlcXVpcmVfZmlyc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpcnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdCA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGZpcnN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZmlyc3QgPSBmaXJzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2dyb3VwQnkuanMKdmFyIHJlcXVpcmVfZ3JvdXBCeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZ3JvdXBCeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ3JvdXBCeSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZ3JvdXBCeShrZXlTZWxlY3RvciwgZWxlbWVudE9yT3B0aW9ucywgZHVyYXRpb24sIGNvbm5lY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVsZW1lbnQ7CiAgICAgICAgaWYgKCFlbGVtZW50T3JPcHRpb25zIHx8IHR5cGVvZiBlbGVtZW50T3JPcHRpb25zID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9uczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZHVyYXRpb24gPSBlbGVtZW50T3JPcHRpb25zLmR1cmF0aW9uLCBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9ucy5lbGVtZW50LCBjb25uZWN0b3IgPSBlbGVtZW50T3JPcHRpb25zLmNvbm5lY3RvcjsKICAgICAgICB9CiAgICAgICAgdmFyIGdyb3VwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgdmFyIG5vdGlmeSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBncm91cHMuZm9yRWFjaChjYik7CiAgICAgICAgICBjYihzdWJzY3JpYmVyKTsKICAgICAgICB9OwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgICAgdmFyIGFjdGl2ZUdyb3VwcyA9IDA7CiAgICAgICAgdmFyIHRlYXJkb3duQXR0ZW1wdGVkID0gZmFsc2U7CiAgICAgICAgdmFyIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyID0gbmV3IE9wZXJhdG9yU3Vic2NyaWJlcl8xLk9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGtleV8xID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgICB2YXIgZ3JvdXBfMSA9IGdyb3Vwcy5nZXQoa2V5XzEpOwogICAgICAgICAgICBpZiAoIWdyb3VwXzEpIHsKICAgICAgICAgICAgICBncm91cHMuc2V0KGtleV8xLCBncm91cF8xID0gY29ubmVjdG9yID8gY29ubmVjdG9yKCkgOiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgICAgICAgdmFyIGdyb3VwZWQgPSBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXlfMSwgZ3JvdXBfMSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGdyb3VwZWQpOwogICAgICAgICAgICAgIGlmIChkdXJhdGlvbikgewogICAgICAgICAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGdyb3VwXzEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBncm91cF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICByZXR1cm4gZ3JvdXBzLmRlbGV0ZShrZXlfMSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb24oZ3JvdXBlZCkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXJfMSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBncm91cF8xLm5leHQoZWxlbWVudCA/IGVsZW1lbnQodmFsdWUpIDogdmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbm90aWZ5KGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGdyb3Vwcy5jbGVhcigpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdGVhcmRvd25BdHRlbXB0ZWQgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIGFjdGl2ZUdyb3VwcyA9PT0gMDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyKTsKICAgICAgICBmdW5jdGlvbiBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXksIGdyb3VwU3ViamVjdCkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihncm91cFN1YnNjcmliZXIpIHsKICAgICAgICAgICAgYWN0aXZlR3JvdXBzKys7CiAgICAgICAgICAgIHZhciBpbm5lclN1YiA9IGdyb3VwU3ViamVjdC5zdWJzY3JpYmUoZ3JvdXBTdWJzY3JpYmVyKTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgLS1hY3RpdmVHcm91cHMgPT09IDAgJiYgdGVhcmRvd25BdHRlbXB0ZWQgJiYgZ3JvdXBCeVNvdXJjZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmVzdWx0LmtleSA9IGtleTsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmdyb3VwQnkgPSBncm91cEJ5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcwp2YXIgcmVxdWlyZV9pc0VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pc0VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGlzRW1wdHkoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodHJ1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzRW1wdHkgPSBpc0VtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMKdmFyIHJlcXVpcmVfdGFrZUxhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2VMYXN0KGNvdW50KSB7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgIGNvdW50IDwgYnVmZmVyLmxlbmd0aCAmJiBidWZmZXIuc2hpZnQoKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyXzEgPSBfX3ZhbHVlcyhidWZmZXIpLCBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpOyAhYnVmZmVyXzFfMS5kb25lOyBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYnVmZmVyXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyXzFfMSAmJiAhYnVmZmVyXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcl8xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHRha2VMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbGFzdC5qcwp2YXIgcmVxdWlyZV9sYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9sYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBsYXN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VMYXN0XzEudGFrZUxhc3QoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5sYXN0ID0gbGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX21hdGVyaWFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXRlcmlhbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hdGVyaWFsaXplKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlTmV4dCh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbi5jcmVhdGVDb21wbGV0ZSgpKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlRXJyb3IoZXJyKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gbWF0ZXJpYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMKdmFyIHJlcXVpcmVfbWF4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1heCA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtYXgoY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpID4gMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4ID4geSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1heCA9IG1heDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZsYXRNYXAuanMKdmFyIHJlcXVpcmVfZmxhdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmxhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IG1lcmdlTWFwXzEubWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzCnZhciByZXF1aXJlX21lcmdlTWFwVG8gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1lcmdlTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgICAgfSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIGNvbmN1cnJlbnQpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VNYXBUbyA9IG1lcmdlTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMKdmFyIHJlcXVpcmVfbWVyZ2VTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlU2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBtZXJnZUludGVybmFsc18xID0gcmVxdWlyZV9tZXJnZUludGVybmFscygpOwogICAgZnVuY3Rpb24gbWVyZ2VTY2FuKGFjY3VtdWxhdG9yLCBzZWVkLCBjb25jdXJyZW50KSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcihzdGF0ZSwgdmFsdWUsIGluZGV4KTsKICAgICAgICB9LCBjb25jdXJyZW50LCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3RhdGUgPSB2YWx1ZTsKICAgICAgICB9LCBmYWxzZSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdGF0ZSA9IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VTY2FuID0gbWVyZ2VTY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UyKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgYXJncyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcwp2YXIgcmVxdWlyZV9tZXJnZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gdm9pZCAwOwogICAgdmFyIG1lcmdlXzEgPSByZXF1aXJlX21lcmdlMigpOwogICAgZnVuY3Rpb24gbWVyZ2VXaXRoMigpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlV2l0aCA9IG1lcmdlV2l0aDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMKdmFyIHJlcXVpcmVfbWluID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1pbiA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtaW4oY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpIDwgMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4IDwgeSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1pbiA9IG1pbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcwp2YXIgcmVxdWlyZV9tdWx0aWNhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubXVsdGljYXN0ID0gdm9pZCAwOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIG11bHRpY2FzdChzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSwgc2VsZWN0b3IpIHsKICAgICAgdmFyIHN1YmplY3RGYWN0b3J5ID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc3ViamVjdE9yU3ViamVjdEZhY3RvcnkpID8gc3ViamVjdE9yU3ViamVjdEZhY3RvcnkgOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc3ViamVjdE9yU3ViamVjdEZhY3Rvcnk7CiAgICAgIH07CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Qoc2VsZWN0b3IsIHsKICAgICAgICAgIGNvbm5lY3Rvcjogc3ViamVjdEZhY3RvcnkKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGUoc291cmNlLCBzdWJqZWN0RmFjdG9yeSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tdWx0aWNhc3QgPSBtdWx0aWNhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMKdmFyIHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0V2l0aCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIG5leHRTb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShzb3VyY2VzKTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKG5leHRTb3VyY2VzKSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gb25FcnJvclJlc3VtZU5leHRXaXRoOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wYWlyd2lzZS5qcwp2YXIgcmVxdWlyZV9wYWlyd2lzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJ3aXNlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHBhaXJ3aXNlKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXY7CiAgICAgICAgdmFyIGhhc1ByZXYgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHAgPSBwcmV2OwogICAgICAgICAgcHJldiA9IHZhbHVlOwogICAgICAgICAgaGFzUHJldiAmJiBzdWJzY3JpYmVyLm5leHQoW3AsIHZhbHVlXSk7CiAgICAgICAgICBoYXNQcmV2ID0gdHJ1ZTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGFpcndpc2UgPSBwYWlyd2lzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BsdWNrLmpzCnZhciByZXF1aXJlX3BsdWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wbHVjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGx1Y2sgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgZnVuY3Rpb24gcGx1Y2soKSB7CiAgICAgIHZhciBwcm9wZXJ0aWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgcHJvcGVydGllc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBsZW5ndGggPSBwcm9wZXJ0aWVzLmxlbmd0aDsKICAgICAgaWYgKGxlbmd0aCA9PT0gMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigibGlzdCBvZiBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBlbXB0eS4iKTsKICAgICAgfQogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKHgpIHsKICAgICAgICB2YXIgY3VycmVudFByb3AgPSB4OwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHZhciBwID0gY3VycmVudFByb3AgPT09IG51bGwgfHwgY3VycmVudFByb3AgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGN1cnJlbnRQcm9wW3Byb3BlcnRpZXNbaV1dOwogICAgICAgICAgaWYgKHR5cGVvZiBwICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgICBjdXJyZW50UHJvcCA9IHA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY3VycmVudFByb3A7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGx1Y2sgPSBwbHVjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2guanMKdmFyIHJlcXVpcmVfcHVibGlzaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBzZWxlY3RvciA/IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdChzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfSA6IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBtdWx0aWNhc3RfMS5tdWx0aWNhc3QobmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpKHNvdXJjZSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoID0gcHVibGlzaDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaEJlaGF2aW9yID0gdm9pZCAwOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdF8xID0gcmVxdWlyZV9CZWhhdmlvclN1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoQmVoYXZpb3IoaW5pdGlhbFZhbHVlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3QoaW5pdGlhbFZhbHVlKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBwdWJsaXNoQmVoYXZpb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoTGFzdC5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoTGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaExhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU3ViamVjdF8xID0gcmVxdWlyZV9Bc3luY1N1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoTGFzdCgpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3ViamVjdDsKICAgICAgICB9KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gcHVibGlzaExhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoUmVwbGF5LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hSZXBsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSB2b2lkIDA7CiAgICB2YXIgUmVwbGF5U3ViamVjdF8xID0gcmVxdWlyZV9SZXBsYXlTdWJqZWN0KCk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gcHVibGlzaFJlcGxheShidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzZWxlY3Rvck9yU2NoZWR1bGVyLCB0aW1lc3RhbXBQcm92aWRlcikgewogICAgICBpZiAoc2VsZWN0b3JPclNjaGVkdWxlciAmJiAhaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICB0aW1lc3RhbXBQcm92aWRlciA9IHNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIHNlbGVjdG9yID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikgPyBzZWxlY3Rvck9yU2NoZWR1bGVyIDogdm9pZCAwOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIpLCBzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBwdWJsaXNoUmVwbGF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmFjZVdpdGguanMKdmFyIHJlcXVpcmVfcmFjZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHZvaWQgMDsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcmFjZVdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gIW90aGVyU291cmNlcy5sZW5ndGggPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmFjZV8xLnJhY2VJbml0KF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChvdGhlclNvdXJjZXMpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFjZVdpdGggPSByYWNlV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcwp2YXIgcmVxdWlyZV9yZXBlYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVwZWF0ID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gcmVwZWF0Mihjb3VudE9yQ29uZmlnKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIGNvdW50ID0gSW5maW5pdHk7CiAgICAgIHZhciBkZWxheTsKICAgICAgaWYgKGNvdW50T3JDb25maWcgIT0gbnVsbCkgewogICAgICAgIGlmICh0eXBlb2YgY291bnRPckNvbmZpZyA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIF9hID0gY291bnRPckNvbmZpZy5jb3VudCwgY291bnQgPSBfYSA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYSwgZGVsYXkgPSBjb3VudE9yQ29uZmlnLmRlbGF5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb3VudCA9IGNvdW50T3JDb25maWc7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc29GYXIgPSAwOwogICAgICAgIHZhciBzb3VyY2VTdWI7CiAgICAgICAgdmFyIHJlc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzb3VyY2VTdWIgPT09IG51bGwgfHwgc291cmNlU3ViID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2VTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNvdXJjZVN1YiA9IG51bGw7CiAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoc29GYXIpKTsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIG5vdGlmaWVyU3Vic2NyaWJlcl8xLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG5vdGlmaWVyLnN1YnNjcmliZShub3RpZmllclN1YnNjcmliZXJfMSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZVRvU291cmNlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoKytzb0ZhciA8IGNvdW50KSB7CiAgICAgICAgICAgICAgaWYgKHNvdXJjZVN1YikgewogICAgICAgICAgICAgICAgcmVzdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Vuc3ViKSB7CiAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdCA9IHJlcGVhdDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXRXaGVuLmpzCnZhciByZXF1aXJlX3JlcGVhdFdoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmV0cnkuanMKdmFyIHJlcXVpcmVfcmV0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXRyeSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHJldHJ5KGNvbmZpZ09yQ291bnQpIHsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZ09yQ291bnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICB2YXIgY29uZmlnOwogICAgICBpZiAoY29uZmlnT3JDb3VudCAmJiB0eXBlb2YgY29uZmlnT3JDb3VudCA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25maWcgPSBjb25maWdPckNvdW50OwogICAgICB9IGVsc2UgewogICAgICAgIGNvbmZpZyA9IHsKICAgICAgICAgIGNvdW50OiBjb25maWdPckNvdW50CiAgICAgICAgfTsKICAgICAgfQogICAgICB2YXIgX2EgPSBjb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY29uZmlnLmRlbGF5LCBfYiA9IGNvbmZpZy5yZXNldE9uU3VjY2VzcywgcmVzZXRPblN1Y2Nlc3MgPSBfYiA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYjsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChyZXNldE9uU3VjY2VzcykgewogICAgICAgICAgICAgIHNvRmFyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgaWYgKHNvRmFyKysgPCBjb3VudCkgewogICAgICAgICAgICAgIHZhciByZXN1Yl8xID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGlmIChkZWxheSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoZXJyLCBzb0ZhcikpOwogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5KCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJldHJ5ID0gcmV0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJldHJ5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmV0cnlXaGVuKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN5bmNSZXN1YiA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvcnMkOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeVdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBpZiAoIWVycm9ycyQpIHsKICAgICAgICAgICAgICBlcnJvcnMkID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG5vdGlmaWVyKGVycm9ycyQpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyU3ViID8gc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCkgOiBzeW5jUmVzdWIgPSB0cnVlOwogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQubmV4dChlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Jlc3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmV0cnlXaGVuID0gcmV0cnlXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzCnZhciByZXF1aXJlX3NhbXBsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGVUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgdmFyIGludGVydmFsXzEgPSByZXF1aXJlX2ludGVydmFsKCk7CiAgICBmdW5jdGlvbiBzYW1wbGVUaW1lKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZShpbnRlcnZhbF8xLmludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gc2FtcGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBzY2FuSW50ZXJuYWxzXzEgPSByZXF1aXJlX3NjYW5JbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIHNjYW4oYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW4gPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2VxdWVuY2VFcXVhbC5qcwp2YXIgcmVxdWlyZV9zZXF1ZW5jZUVxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NoYXJlLmpzCnZhciByZXF1aXJlX3NoYXJlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc2hhcmUob3B0aW9ucykgewogICAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7CiAgICAgICAgb3B0aW9ucyA9IHt9OwogICAgICB9CiAgICAgIHZhciBfYSA9IG9wdGlvbnMuY29ubmVjdG9yLCBjb25uZWN0b3IgPSBfYSA9PT0gdm9pZCAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9IDogX2EsIF9iID0gb3B0aW9ucy5yZXNldE9uRXJyb3IsIHJlc2V0T25FcnJvciA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gb3B0aW9ucy5yZXNldE9uQ29tcGxldGUsIHJlc2V0T25Db21wbGV0ZSA9IF9jID09PSB2b2lkIDAgPyB0cnVlIDogX2MsIF9kID0gb3B0aW9ucy5yZXNldE9uUmVmQ291bnRaZXJvLCByZXNldE9uUmVmQ291bnRaZXJvID0gX2QgPT09IHZvaWQgMCA/IHRydWUgOiBfZDsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHdyYXBwZXJTb3VyY2UpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbjsKICAgICAgICB2YXIgcmVzZXRDb25uZWN0aW9uOwogICAgICAgIHZhciBzdWJqZWN0OwogICAgICAgIHZhciByZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIGhhc0NvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIHZhciBoYXNFcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGNhbmNlbFJlc2V0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPT09IG51bGwgfHwgcmVzZXRDb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZXNldENvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IHZvaWQgMDsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIGNvbm5lY3Rpb24gPSBzdWJqZWN0ID0gdm9pZCAwOwogICAgICAgICAgaGFzQ29tcGxldGVkID0gaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIH07CiAgICAgICAgdmFyIHJlc2V0QW5kVW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBjb25uID0gY29ubmVjdGlvbjsKICAgICAgICAgIHJlc2V0KCk7CiAgICAgICAgICBjb25uID09PSBudWxsIHx8IGNvbm4gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbm4udW5zdWJzY3JpYmUoKTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICAgIHJlZkNvdW50Kys7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yZWQgJiYgIWhhc0NvbXBsZXRlZCkgewogICAgICAgICAgICBjYW5jZWxSZXNldCgpOwogICAgICAgICAgfQogICAgICAgICAgdmFyIGRlc3QgPSBzdWJqZWN0ID0gc3ViamVjdCAhPT0gbnVsbCAmJiBzdWJqZWN0ICE9PSB2b2lkIDAgPyBzdWJqZWN0IDogY29ubmVjdG9yKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmVmQ291bnQtLTsKICAgICAgICAgICAgaWYgKHJlZkNvdW50ID09PSAwICYmICFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldEFuZFVuc3Vic2NyaWJlLCByZXNldE9uUmVmQ291bnRaZXJvKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBkZXN0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIGlmICghY29ubmVjdGlvbiAmJiByZWZDb3VudCA+IDApIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgICAgIGhhc0Vycm9yZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uRXJyb3IsIGVycik7CiAgICAgICAgICAgICAgICBkZXN0LmVycm9yKGVycik7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBoYXNDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uQ29tcGxldGUpOwogICAgICAgICAgICAgICAgZGVzdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpLnN1YnNjcmliZShjb25uZWN0aW9uKTsKICAgICAgICAgIH0KICAgICAgICB9KSh3cmFwcGVyU291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNoYXJlID0gc2hhcmU7CiAgICBmdW5jdGlvbiBoYW5kbGVSZXNldChyZXNldCwgb24pIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAyOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gdHJ1ZSkgewogICAgICAgIHJlc2V0KCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gZmFsc2UpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdmFyIG9uU3Vic2NyaWJlciA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldCgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20ob24uYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSkuc3Vic2NyaWJlKG9uU3Vic2NyaWJlcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmVSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlUmVwbGF5ID0gdm9pZCAwOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgdmFyIHNoYXJlXzEgPSByZXF1aXJlX3NoYXJlKCk7CiAgICBmdW5jdGlvbiBzaGFyZVJlcGxheShjb25maWdPckJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIGJ1ZmZlclNpemU7CiAgICAgIHZhciByZWZDb3VudCA9IGZhbHNlOwogICAgICBpZiAoY29uZmlnT3JCdWZmZXJTaXplICYmIHR5cGVvZiBjb25maWdPckJ1ZmZlclNpemUgPT09ICJvYmplY3QiKSB7CiAgICAgICAgX2EgPSBjb25maWdPckJ1ZmZlclNpemUuYnVmZmVyU2l6ZSwgYnVmZmVyU2l6ZSA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBfYiA9IGNvbmZpZ09yQnVmZmVyU2l6ZS53aW5kb3dUaW1lLCB3aW5kb3dUaW1lID0gX2IgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2IsIF9jID0gY29uZmlnT3JCdWZmZXJTaXplLnJlZkNvdW50LCByZWZDb3VudCA9IF9jID09PSB2b2lkIDAgPyBmYWxzZSA6IF9jLCBzY2hlZHVsZXIgPSBjb25maWdPckJ1ZmZlclNpemUuc2NoZWR1bGVyOwogICAgICB9IGVsc2UgewogICAgICAgIGJ1ZmZlclNpemUgPSBjb25maWdPckJ1ZmZlclNpemUgIT09IG51bGwgJiYgY29uZmlnT3JCdWZmZXJTaXplICE9PSB2b2lkIDAgPyBjb25maWdPckJ1ZmZlclNpemUgOiBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZSh7CiAgICAgICAgY29ubmVjdG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTsKICAgICAgICB9LAogICAgICAgIHJlc2V0T25FcnJvcjogdHJ1ZSwKICAgICAgICByZXNldE9uQ29tcGxldGU6IGZhbHNlLAogICAgICAgIHJlc2V0T25SZWZDb3VudFplcm86IHJlZkNvdW50CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBzaGFyZVJlcGxheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcwp2YXIgcmVxdWlyZV9zaW5nbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzCnZhciByZXF1aXJlX3NraXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXAgPSB2b2lkIDA7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgZnVuY3Rpb24gc2tpcChjb3VudCkgewogICAgICByZXR1cm4gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKF8sIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGNvdW50IDw9IGluZGV4OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXAgPSBza2lwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNraXBMYXN0KHNraXBDb3VudCkgewogICAgICByZXR1cm4gc2tpcENvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHJpbmcgPSBuZXcgQXJyYXkoc2tpcENvdW50KTsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciB2YWx1ZUluZGV4ID0gc2VlbisrOwogICAgICAgICAgaWYgKHZhbHVlSW5kZXggPCBza2lwQ291bnQpIHsKICAgICAgICAgICAgcmluZ1t2YWx1ZUluZGV4XSA9IHZhbHVlOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGluZGV4ID0gdmFsdWVJbmRleCAlIHNraXBDb3VudDsKICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gcmluZ1tpbmRleF07CiAgICAgICAgICAgIHJpbmdbaW5kZXhdID0gdmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChvbGRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJpbmcgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcExhc3QgPSBza2lwTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcwp2YXIgcmVxdWlyZV9za2lwVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMKdmFyIHJlcXVpcmVfc2tpcFdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBza2lwV2hpbGUocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgdGFraW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuICh0YWtpbmcgfHwgKHRha2luZyA9ICFwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspKSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcFdoaWxlID0gc2tpcFdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3RhcnRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIodmFsdWVzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIChzY2hlZHVsZXIgPyBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UsIHNjaGVkdWxlcikgOiBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3RhcnRXaXRoID0gc3RhcnRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMKdmFyIHJlcXVpcmVfc3dpdGNoQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaEFsbCgpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHN3aXRjaEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gc3dpdGNoTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IHN3aXRjaE1hcF8xLnN3aXRjaE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gc3dpdGNoTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hTY2FuLmpzCnZhciByZXF1aXJlX3N3aXRjaFNjYW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcwp2YXIgcmVxdWlyZV90YWtlVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiB0YWtlVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlVW50aWwgPSB0YWtlVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlV2hpbGUocHJlZGljYXRlLCBpbmNsdXNpdmUpIHsKICAgICAgaWYgKGluY2x1c2l2ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgaW5jbHVzaXZlID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspOwogICAgICAgICAgKHJlc3VsdCB8fCBpbmNsdXNpdmUpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAhcmVzdWx0ICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdGFrZVdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzCnZhciByZXF1aXJlX3RhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGUuanMKdmFyIHJlcXVpcmVfdGhyb3R0bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm90dGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gdGhyb3R0bGUoZHVyYXRpb25TZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSBjb25maWcgIT09IG51bGwgJiYgY29uZmlnICE9PSB2b2lkIDAgPyBjb25maWcgOiB7fSwgX2IgPSBfYS5sZWFkaW5nLCBsZWFkaW5nID0gX2IgPT09IHZvaWQgMCA/IHRydWUgOiBfYiwgX2MgPSBfYS50cmFpbGluZywgdHJhaWxpbmcgPSBfYyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYzsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgc2VuZFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmRUaHJvdHRsaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB0aHJvdHRsZWQgPT09IG51bGwgfHwgdGhyb3R0bGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aHJvdHRsZWQudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpZiAodHJhaWxpbmcpIHsKICAgICAgICAgICAgc2VuZCgpOwogICAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0VGhyb3R0bGUgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRocm90dGxlZCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmRUaHJvdHRsaW5nLCBjbGVhbnVwVGhyb3R0bGluZykpOwogICAgICAgIH07CiAgICAgICAgdmFyIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBzZW5kVmFsdWU7CiAgICAgICAgICAgIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICFpc0NvbXBsZXRlICYmIHN0YXJ0VGhyb3R0bGUodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHNlbmRWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgISh0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIChsZWFkaW5nID8gc2VuZCgpIDogc3RhcnRUaHJvdHRsZSh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaXNDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAhKHRyYWlsaW5nICYmIGhhc1ZhbHVlICYmIHRocm90dGxlZCAmJiAhdGhyb3R0bGVkLmNsb3NlZCkgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHRocm90dGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiB0aHJvdHRsZVRpbWUoZHVyYXRpb24sIHNjaGVkdWxlciwgY29uZmlnKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uJCA9IHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbiQ7CiAgICAgIH0sIGNvbmZpZyk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB0aHJvdHRsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfdGltZUludGVydmFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0V2l0aC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIHRpbWVvdXRfMSA9IHJlcXVpcmVfdGltZW91dCgpOwogICAgZnVuY3Rpb24gdGltZW91dFdpdGgoZHVlLCB3aXRoT2JzZXJ2YWJsZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBmaXJzdDsKICAgICAgdmFyIGVhY2g7CiAgICAgIHZhciBfd2l0aDsKICAgICAgc2NoZWR1bGVyID0gc2NoZWR1bGVyICE9PSBudWxsICYmIHNjaGVkdWxlciAhPT0gdm9pZCAwID8gc2NoZWR1bGVyIDogYXN5bmNfMS5hc3luYzsKICAgICAgaWYgKGlzRGF0ZV8xLmlzVmFsaWREYXRlKGR1ZSkpIHsKICAgICAgICBmaXJzdCA9IGR1ZTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZHVlID09PSAibnVtYmVyIikgewogICAgICAgIGVhY2ggPSBkdWU7CiAgICAgIH0KICAgICAgaWYgKHdpdGhPYnNlcnZhYmxlKSB7CiAgICAgICAgX3dpdGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB3aXRoT2JzZXJ2YWJsZTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9ic2VydmFibGUgcHJvdmlkZWQgdG8gc3dpdGNoIHRvIik7CiAgICAgIH0KICAgICAgaWYgKGZpcnN0ID09IG51bGwgJiYgZWFjaCA9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gdGltZW91dCBwcm92aWRlZC4iKTsKICAgICAgfQogICAgICByZXR1cm4gdGltZW91dF8xLnRpbWVvdXQoewogICAgICAgIGZpcnN0LAogICAgICAgIGVhY2gsCiAgICAgICAgc2NoZWR1bGVyLAogICAgICAgIHdpdGg6IF93aXRoCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dFdpdGggPSB0aW1lb3V0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXN0YW1wID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiB0aW1lc3RhbXAyKHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmICh0aW1lc3RhbXBQcm92aWRlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGltZXN0YW1wUHJvdmlkZXIgPSBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMS5kYXRlVGltZXN0YW1wUHJvdmlkZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHJldHVybiB7IHZhbHVlLCB0aW1lc3RhbXA6IHRpbWVzdGFtcFByb3ZpZGVyLm5vdygpIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZXN0YW1wID0gdGltZXN0YW1wMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcwp2YXIgcmVxdWlyZV93aW5kb3cgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiB3aW5kb3cyKHdpbmRvd0JvdW5kYXJpZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHZhciBlcnJvckhhbmRsZXIgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93U3ViamVjdCA9PT0gbnVsbCB8fCB3aW5kb3dTdWJqZWN0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiB3aW5kb3dTdWJqZWN0Lm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGVycm9ySGFuZGxlcikpOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbSh3aW5kb3dCb3VuZGFyaWVzKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3AsIGVycm9ySGFuZGxlcikpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93U3ViamVjdCA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3cgPSB3aW5kb3cyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMKdmFyIHJlcXVpcmVfd2luZG93Q291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd0NvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dDb3VudCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dDb3VudCh3aW5kb3dTaXplLCBzdGFydFdpbmRvd0V2ZXJ5KSB7CiAgICAgIGlmIChzdGFydFdpbmRvd0V2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydFdpbmRvd0V2ZXJ5ID0gMDsKICAgICAgfQogICAgICB2YXIgc3RhcnRFdmVyeSA9IHN0YXJ0V2luZG93RXZlcnkgPiAwID8gc3RhcnRXaW5kb3dFdmVyeSA6IHdpbmRvd1NpemU7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtuZXcgU3ViamVjdF8xLlN1YmplY3QoKV07CiAgICAgICAgdmFyIHN0YXJ0cyA9IFtdOwogICAgICAgIHZhciBjb3VudCA9IDA7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd3NbMF0uYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIHdpbmRvd3NfMSA9IF9fdmFsdWVzKHdpbmRvd3MpLCB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCk7ICF3aW5kb3dzXzFfMS5kb25lOyB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NfMV8xICYmICF3aW5kb3dzXzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgYyA9IGNvdW50IC0gd2luZG93U2l6ZSArIDE7CiAgICAgICAgICBpZiAoYyA+PSAwICYmIGMgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCsrY291bnQgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93XzIpOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93XzIuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKHdpbmRvd3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICh3aW5kb3dzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGFydHMgPSBudWxsOwogICAgICAgICAgd2luZG93cyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpbmRvd0NvdW50ID0gd2luZG93Q291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUaW1lLmpzCnZhciByZXF1aXJlX3dpbmRvd1RpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUaW1lKHdpbmRvd1RpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhXaW5kb3dTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd1JlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uQ2xvc2UgPSBmYWxzZTsKICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gcmVjb3JkLndpbmRvdywgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd1JlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSAmJiBzdGFydFdpbmRvdygpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0V2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAod2luZG93UmVjb3JkcykgewogICAgICAgICAgICB2YXIgc3VicyA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoc3Vicyk7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgd2luZG93OiB3aW5kb3dfMSwKICAgICAgICAgICAgICBzdWJzLAogICAgICAgICAgICAgIHNlZW46IDAKICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93UmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18xLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNsb3NlV2luZG93KHJlY29yZF8xKTsKICAgICAgICAgICAgfSwgd2luZG93VGltZVNwYW4pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgaWYgKHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgIT09IG51bGwgJiYgd2luZG93Q3JlYXRpb25JbnRlcnZhbCA+PSAwKSB7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBzdGFydFdpbmRvdywgd2luZG93Q3JlYXRpb25JbnRlcnZhbCwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3RhcnRPbkNsb3NlID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRXaW5kb3coKTsKICAgICAgICB2YXIgbG9vcCA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93UmVjb3Jkcy5zbGljZSgpLmZvckVhY2goY2IpOwogICAgICAgIH07CiAgICAgICAgdmFyIHRlcm1pbmF0ZSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBsb29wKGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgICB2YXIgd2luZG93MiA9IF9hMi53aW5kb3c7CiAgICAgICAgICAgIHJldHVybiBjYih3aW5kb3cyKTsKICAgICAgICAgIH0pOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbG9vcChmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgICAgcmVjb3JkLndpbmRvdy5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgbWF4V2luZG93U2l6ZSA8PSArK3JlY29yZC5zZWVuICYmIGNsb3NlV2luZG93KHJlY29yZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93UmVjb3JkcyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gd2luZG93VGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1RvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtdOwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93Mik7CiAgICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBjbG9zZVdpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUod2luZG93cywgd2luZG93Mik7CiAgICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24uYWRkKGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGNsb3NlV2luZG93LCBub29wXzEubm9vcCwgaGFuZGxlRXJyb3IpKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB2YXIgd2luZG93c0NvcHkgPSB3aW5kb3dzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciB3aW5kb3dzQ29weV8xID0gX192YWx1ZXMod2luZG93c0NvcHkpLCB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKTsgIXdpbmRvd3NDb3B5XzFfMS5kb25lOyB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IHdpbmRvd3NDb3B5XzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NDb3B5XzFfMSAmJiAhd2luZG93c0NvcHlfMV8xLmRvbmUgJiYgKF9hID0gd2luZG93c0NvcHlfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBoYW5kbGVFcnJvciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoMCA8IHdpbmRvd3MubGVuZ3RoKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUb2dnbGUgPSB3aW5kb3dUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzCnZhciByZXF1aXJlX3dpbmRvd1doZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1doZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1doZW4gPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1doZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93MjsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXI7CiAgICAgICAgdmFyIGhhbmRsZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3cyLmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICB2YXIgb3BlbldpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID09PSBudWxsIHx8IHdpbmRvdzIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHdpbmRvdzIgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKCkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbldpbmRvdywgb3BlbldpbmRvdywgaGFuZGxlRXJyb3IpKTsKICAgICAgICB9OwogICAgICAgIG9wZW5XaW5kb3coKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvdzIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93V2hlbiA9IHdpbmRvd1doZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aXRoTGF0ZXN0RnJvbS5qcwp2YXIgcmVxdWlyZV93aXRoTGF0ZXN0RnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIGZ1bmN0aW9uIHdpdGhMYXRlc3RGcm9tKCkgewogICAgICB2YXIgaW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgaW5wdXRzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHByb2plY3QgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoaW5wdXRzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBsZW4gPSBpbnB1dHMubGVuZ3RoOwogICAgICAgIHZhciBvdGhlclZhbHVlcyA9IG5ldyBBcnJheShsZW4pOwogICAgICAgIHZhciBoYXNWYWx1ZSA9IGlucHV0cy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlYWR5ID0gZmFsc2U7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0c1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgb3RoZXJWYWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgIGlmICghcmVhZHkgJiYgIWhhc1ZhbHVlW2kyXSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlW2kyXSA9IHRydWU7CiAgICAgICAgICAgICAgKHJlYWR5ID0gaGFzVmFsdWUuZXZlcnkoaWRlbnRpdHlfMS5pZGVudGl0eSkpICYmIChoYXNWYWx1ZSA9IG51bGwpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgX2xvb3BfMShpKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmIChyZWFkeSkgewogICAgICAgICAgICB2YXIgdmFsdWVzID0gX19zcHJlYWRBcnJheShbdmFsdWVdLCBfX3JlYWQob3RoZXJWYWx1ZXMpKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QgPyBwcm9qZWN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSA6IHZhbHVlcyk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gd2l0aExhdGVzdEZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMKdmFyIHJlcXVpcmVfemlwQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcEFsbCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiB6aXBBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoemlwXzEuemlwLCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLnppcEFsbCA9IHppcEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiB6aXAoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoc291cmNlcykpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuemlwID0gemlwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwV2l0aC5qcwp2YXIgcmVxdWlyZV96aXBXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBXaXRoID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAyKCk7CiAgICBmdW5jdGlvbiB6aXBXaXRoKCkgewogICAgICB2YXIgb3RoZXJJbnB1dHMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlcklucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJJbnB1dHMpKSk7CiAgICB9CiAgICBleHBvcnRzMi56aXBXaXRoID0gemlwV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW5kZXguanMKdmFyIHJlcXVpcmVfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBtW2tdOwogICAgICB9IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbCA9IGV4cG9ydHMyLmlpZiA9IGV4cG9ydHMyLmdlbmVyYXRlID0gZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IGV4cG9ydHMyLmZyb21FdmVudCA9IGV4cG9ydHMyLmZyb20gPSBleHBvcnRzMi5mb3JrSm9pbiA9IGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuZGVmZXIgPSBleHBvcnRzMi5jb25uZWN0YWJsZSA9IGV4cG9ydHMyLmNvbmNhdCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gZXhwb3J0czIuYmluZENhbGxiYWNrID0gZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGV4cG9ydHMyLlNlcXVlbmNlRXJyb3IgPSBleHBvcnRzMi5PYmplY3RVbnN1YnNjcmliZWRFcnJvciA9IGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBleHBvcnRzMi5FbXB0eUVycm9yID0gZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5pc09ic2VydmFibGUgPSBleHBvcnRzMi5pZGVudGl0eSA9IGV4cG9ydHMyLm5vb3AgPSBleHBvcnRzMi5waXBlID0gZXhwb3J0czIuTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLlN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSBleHBvcnRzMi5TY2hlZHVsZXIgPSBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBleHBvcnRzMi5xdWV1ZSA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gZXhwb3J0czIuYXN5bmMgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IGV4cG9ydHMyLlJlcGxheVN1YmplY3QgPSBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBleHBvcnRzMi5TdWJqZWN0ID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVzID0gZXhwb3J0czIub2JzZXJ2YWJsZSA9IGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IGV4cG9ydHMyLk9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5maWx0ZXIgPSBleHBvcnRzMi5leHBhbmQgPSBleHBvcnRzMi5leGhhdXN0TWFwID0gZXhwb3J0czIuZXhoYXVzdEFsbCA9IGV4cG9ydHMyLmV4aGF1c3QgPSBleHBvcnRzMi5ldmVyeSA9IGV4cG9ydHMyLmVuZFdpdGggPSBleHBvcnRzMi5lbGVtZW50QXQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZXhwb3J0czIuZGlzdGluY3QgPSBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gZXhwb3J0czIuZGVsYXlXaGVuID0gZXhwb3J0czIuZGVsYXkgPSBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGV4cG9ydHMyLmRlYm91bmNlID0gZXhwb3J0czIuY291bnQgPSBleHBvcnRzMi5jb25uZWN0ID0gZXhwb3J0czIuY29uY2F0V2l0aCA9IGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gZXhwb3J0czIuY29uY2F0TWFwID0gZXhwb3J0czIuY29uY2F0QWxsID0gZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0QWxsID0gZXhwb3J0czIuY29tYmluZUFsbCA9IGV4cG9ydHMyLmNhdGNoRXJyb3IgPSBleHBvcnRzMi5idWZmZXJXaGVuID0gZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gZXhwb3J0czIuYnVmZmVyVGltZSA9IGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gZXhwb3J0czIuYnVmZmVyID0gZXhwb3J0czIuYXVkaXRUaW1lID0gZXhwb3J0czIuYXVkaXQgPSBleHBvcnRzMi5jb25maWcgPSBleHBvcnRzMi5ORVZFUiA9IGV4cG9ydHMyLkVNUFRZID0gZXhwb3J0czIuc2NoZWR1bGVkID0gZXhwb3J0czIuemlwID0gZXhwb3J0czIudXNpbmcgPSBleHBvcnRzMi50aW1lciA9IGV4cG9ydHMyLnRocm93RXJyb3IgPSBleHBvcnRzMi5yYW5nZSA9IGV4cG9ydHMyLnJhY2UgPSBleHBvcnRzMi5wYXJ0aXRpb24gPSBleHBvcnRzMi5wYWlycyA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub2YgPSBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLm1lcmdlID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3dpdGNoTWFwID0gZXhwb3J0czIuc3dpdGNoQWxsID0gZXhwb3J0czIuc3Vic2NyaWJlT24gPSBleHBvcnRzMi5zdGFydFdpdGggPSBleHBvcnRzMi5za2lwV2hpbGUgPSBleHBvcnRzMi5za2lwVW50aWwgPSBleHBvcnRzMi5za2lwTGFzdCA9IGV4cG9ydHMyLnNraXAgPSBleHBvcnRzMi5zaW5nbGUgPSBleHBvcnRzMi5zaGFyZVJlcGxheSA9IGV4cG9ydHMyLnNoYXJlID0gZXhwb3J0czIuc2VxdWVuY2VFcXVhbCA9IGV4cG9ydHMyLnNjYW4gPSBleHBvcnRzMi5zYW1wbGVUaW1lID0gZXhwb3J0czIuc2FtcGxlID0gZXhwb3J0czIucmVmQ291bnQgPSBleHBvcnRzMi5yZXRyeVdoZW4gPSBleHBvcnRzMi5yZXRyeSA9IGV4cG9ydHMyLnJlcGVhdFdoZW4gPSBleHBvcnRzMi5yZXBlYXQgPSBleHBvcnRzMi5yZWR1Y2UgPSBleHBvcnRzMi5yYWNlV2l0aCA9IGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IGV4cG9ydHMyLnB1Ymxpc2hCZWhhdmlvciA9IGV4cG9ydHMyLnB1Ymxpc2ggPSBleHBvcnRzMi5wbHVjayA9IGV4cG9ydHMyLnBhaXJ3aXNlID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gZXhwb3J0czIub2JzZXJ2ZU9uID0gZXhwb3J0czIubXVsdGljYXN0ID0gZXhwb3J0czIubWluID0gZXhwb3J0czIubWVyZ2VXaXRoID0gZXhwb3J0czIubWVyZ2VTY2FuID0gZXhwb3J0czIubWVyZ2VNYXBUbyA9IGV4cG9ydHMyLm1lcmdlTWFwID0gZXhwb3J0czIuZmxhdE1hcCA9IGV4cG9ydHMyLm1lcmdlQWxsID0gZXhwb3J0czIubWF4ID0gZXhwb3J0czIubWF0ZXJpYWxpemUgPSBleHBvcnRzMi5tYXBUbyA9IGV4cG9ydHMyLm1hcCA9IGV4cG9ydHMyLmxhc3QgPSBleHBvcnRzMi5pc0VtcHR5ID0gZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSBleHBvcnRzMi5ncm91cEJ5ID0gZXhwb3J0czIuZmlyc3QgPSBleHBvcnRzMi5maW5kSW5kZXggPSBleHBvcnRzMi5maW5kID0gZXhwb3J0czIuZmluYWxpemUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi56aXBXaXRoID0gZXhwb3J0czIuemlwQWxsID0gZXhwb3J0czIud2l0aExhdGVzdEZyb20gPSBleHBvcnRzMi53aW5kb3dXaGVuID0gZXhwb3J0czIud2luZG93VG9nZ2xlID0gZXhwb3J0czIud2luZG93VGltZSA9IGV4cG9ydHMyLndpbmRvd0NvdW50ID0gZXhwb3J0czIud2luZG93ID0gZXhwb3J0czIudG9BcnJheSA9IGV4cG9ydHMyLnRpbWVzdGFtcCA9IGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IGV4cG9ydHMyLnRocm90dGxlVGltZSA9IGV4cG9ydHMyLnRocm90dGxlID0gZXhwb3J0czIudGFwID0gZXhwb3J0czIudGFrZVdoaWxlID0gZXhwb3J0czIudGFrZVVudGlsID0gZXhwb3J0czIudGFrZUxhc3QgPSBleHBvcnRzMi50YWtlID0gZXhwb3J0czIuc3dpdGNoU2NhbiA9IGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9ic2VydmFibGVfMS5PYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb25uZWN0YWJsZU9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9ic2VydmFibGVfMS5vYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZXNfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZXMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZXNfMS5hbmltYXRpb25GcmFtZXM7CiAgICB9IH0pOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YmplY3RfMS5TdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBCZWhhdmlvclN1YmplY3RfMSA9IHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJCZWhhdmlvclN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiUmVwbGF5U3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFJlcGxheVN1YmplY3RfMS5SZXBsYXlTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBBc3luY1N1YmplY3RfMSA9IHJlcXVpcmVfQXN5bmNTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJBc3luY1N1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBc3luY1N1YmplY3RfMS5Bc3luY1N1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIGFzYXBfMSA9IHJlcXVpcmVfYXNhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXNhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzYXBfMS5hc2FwOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXBTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcFNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzeW5jIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXN5bmNfMS5hc3luYzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luY1NjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIHF1ZXVlXzEgPSByZXF1aXJlX3F1ZXVlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJxdWV1ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHF1ZXVlXzEucXVldWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWVTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZV8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZV8xLmFuaW1hdGlvbkZyYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgVmlydHVhbFRpbWVTY2hlZHVsZXJfMSA9IHJlcXVpcmVfVmlydHVhbFRpbWVTY2hlZHVsZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZpcnR1YWxUaW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsVGltZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsQWN0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsQWN0aW9uOwogICAgfSB9KTsKICAgIHZhciBTY2hlZHVsZXJfMSA9IHJlcXVpcmVfU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTY2hlZHVsZXJfMS5TY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YnNjcmlwdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9TdWJzY3JpYmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpYmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU3Vic2NyaWJlcl8xLlN1YnNjcmliZXI7CiAgICB9IH0pOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5vdGlmaWNhdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb25LaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uS2luZDsKICAgIH0gfSk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwaXBlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGlwZV8xLnBpcGU7CiAgICB9IH0pOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibm9vcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5vb3BfMS5ub29wOwogICAgfSB9KTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWRlbnRpdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfSB9KTsKICAgIHZhciBpc09ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpc09ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc09ic2VydmFibGVfMS5pc09ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIGxhc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfbGFzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibGFzdFZhbHVlRnJvbSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb21fMS5sYXN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBmaXJzdFZhbHVlRnJvbV8xID0gcmVxdWlyZV9maXJzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmlyc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbV8xLmZpcnN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xID0gcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yOwogICAgfSB9KTsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkVtcHR5RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgTm90Rm91bmRFcnJvcl8xID0gcmVxdWlyZV9Ob3RGb3VuZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RGb3VuZEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJPYmplY3RVbnN1YnNjcmliZWRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2VxdWVuY2VFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFNlcXVlbmNlRXJyb3JfMS5TZXF1ZW5jZUVycm9yOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzEgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlRpbWVvdXRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRfMS5UaW1lb3V0RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFVuc3Vic2NyaXB0aW9uRXJyb3JfMSA9IHJlcXVpcmVfVW5zdWJzY3JpcHRpb25FcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVW5zdWJzY3JpcHRpb25FcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yOwogICAgfSB9KTsKICAgIHZhciBiaW5kQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJiaW5kQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tfMS5iaW5kQ2FsbGJhY2s7CiAgICB9IH0pOwogICAgdmFyIGJpbmROb2RlQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZE5vZGVDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZE5vZGVDYWxsYmFjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJpbmROb2RlQ2FsbGJhY2tfMS5iaW5kTm9kZUNhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0XzEuY29tYmluZUxhdGVzdDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0OwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0YWJsZV8xID0gcmVxdWlyZV9jb25uZWN0YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29ubmVjdGFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0YWJsZV8xLmNvbm5lY3RhYmxlOwogICAgfSB9KTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8xLmVtcHR5OwogICAgfSB9KTsKICAgIHZhciBmb3JrSm9pbl8xID0gcmVxdWlyZV9mb3JrSm9pbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZm9ya0pvaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmb3JrSm9pbl8xLmZvcmtKb2luOwogICAgfSB9KTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tXzEuZnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50XzEgPSByZXF1aXJlX2Zyb21FdmVudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZnJvbUV2ZW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50XzEuZnJvbUV2ZW50OwogICAgfSB9KTsKICAgIHZhciBmcm9tRXZlbnRQYXR0ZXJuXzEgPSByZXF1aXJlX2Zyb21FdmVudFBhdHRlcm4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudFBhdHRlcm4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tRXZlbnRQYXR0ZXJuXzEuZnJvbUV2ZW50UGF0dGVybjsKICAgIH0gfSk7CiAgICB2YXIgZ2VuZXJhdGVfMSA9IHJlcXVpcmVfZ2VuZXJhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdlbmVyYXRlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ2VuZXJhdGVfMS5nZW5lcmF0ZTsKICAgIH0gfSk7CiAgICB2YXIgaWlmXzEgPSByZXF1aXJlX2lpZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWlmIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWlmXzEuaWlmOwogICAgfSB9KTsKICAgIHZhciBpbnRlcnZhbF8xID0gcmVxdWlyZV9pbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaW50ZXJ2YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpbnRlcnZhbF8xLmludGVydmFsOwogICAgfSB9KTsKICAgIHZhciBtZXJnZV8xID0gcmVxdWlyZV9tZXJnZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8xID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmV2ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8xLm5ldmVyOwogICAgfSB9KTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2YiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvZl8xLm9mOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib25FcnJvclJlc3VtZU5leHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0OwogICAgfSB9KTsKICAgIHZhciBwYWlyc18xID0gcmVxdWlyZV9wYWlycygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFpcnMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYWlyc18xLnBhaXJzOwogICAgfSB9KTsKICAgIHZhciBwYXJ0aXRpb25fMSA9IHJlcXVpcmVfcGFydGl0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYXJ0aXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYXJ0aXRpb25fMS5wYXJ0aXRpb247CiAgICB9IH0pOwogICAgdmFyIHJhY2VfMSA9IHJlcXVpcmVfcmFjZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VfMS5yYWNlOwogICAgfSB9KTsKICAgIHZhciByYW5nZV8xID0gcmVxdWlyZV9yYW5nZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFuZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYW5nZV8xLnJhbmdlOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXJfMS50aW1lcjsKICAgIH0gfSk7CiAgICB2YXIgdXNpbmdfMSA9IHJlcXVpcmVfdXNpbmcoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInVzaW5nIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdXNpbmdfMS51c2luZzsKICAgIH0gfSk7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwXzEuemlwOwogICAgfSB9KTsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2hlZHVsZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZWRfMS5zY2hlZHVsZWQ7CiAgICB9IH0pOwogICAgdmFyIGVtcHR5XzIgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFTVBUWSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVtcHR5XzIuRU1QVFk7CiAgICB9IH0pOwogICAgdmFyIG5ldmVyXzIgPSByZXF1aXJlX25ldmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJORVZFUiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5ldmVyXzIuTkVWRVI7CiAgICB9IH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHlwZXMyKCksIGV4cG9ydHMyKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25maWciLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25maWdfMS5jb25maWc7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQ7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0VGltZV8xID0gcmVxdWlyZV9hdWRpdFRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImF1ZGl0VGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0VGltZV8xLmF1ZGl0VGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyXzEuYnVmZmVyOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJDb3VudF8xID0gcmVxdWlyZV9idWZmZXJDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyQ291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJDb3VudF8xLmJ1ZmZlckNvdW50OwogICAgfSB9KTsKICAgIHZhciBidWZmZXJUaW1lXzEgPSByZXF1aXJlX2J1ZmZlclRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJUaW1lXzEuYnVmZmVyVGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVG9nZ2xlXzEgPSByZXF1aXJlX2J1ZmZlclRvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyVG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVG9nZ2xlXzEuYnVmZmVyVG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJXaGVuXzEgPSByZXF1aXJlX2J1ZmZlcldoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlcldoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJXaGVuXzEuYnVmZmVyV2hlbjsKICAgIH0gfSk7CiAgICB2YXIgY2F0Y2hFcnJvcl8xID0gcmVxdWlyZV9jYXRjaEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjYXRjaEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY2F0Y2hFcnJvcl8xLmNhdGNoRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVBbGxfMSA9IHJlcXVpcmVfY29tYmluZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29tYmluZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVBbGxfMS5jb21iaW5lQWxsOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0QWxsXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0QWxsXzEuY29tYmluZUxhdGVzdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdFdpdGhfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdFdpdGhfMS5jb21iaW5lTGF0ZXN0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBfMSA9IHJlcXVpcmVfY29uY2F0TWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBfMS5jb25jYXRNYXA7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdE1hcFRvXzEgPSByZXF1aXJlX2NvbmNhdE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdE1hcFRvXzEuY29uY2F0TWFwVG87CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdFdpdGhfMSA9IHJlcXVpcmVfY29uY2F0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdFdpdGhfMS5jb25jYXRXaXRoOwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdDsKICAgIH0gfSk7CiAgICB2YXIgY291bnRfMSA9IHJlcXVpcmVfY291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY291bnRfMS5jb3VudDsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VfMSA9IHJlcXVpcmVfZGVib3VuY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VfMS5kZWJvdW5jZTsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VUaW1lXzEgPSByZXF1aXJlX2RlYm91bmNlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVib3VuY2VUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VUaW1lXzEuZGVib3VuY2VUaW1lOwogICAgfSB9KTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmYXVsdElmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5OwogICAgfSB9KTsKICAgIHZhciBkZWxheV8xID0gcmVxdWlyZV9kZWxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheV8xLmRlbGF5OwogICAgfSB9KTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWxheVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW47CiAgICB9IH0pOwogICAgdmFyIGRlbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfZGVtYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVtYXRlcmlhbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlbWF0ZXJpYWxpemVfMS5kZW1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdF8xID0gcmVxdWlyZV9kaXN0aW5jdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdF8xLmRpc3RpbmN0OwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbENoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbEtleUNoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBlbGVtZW50QXRfMSA9IHJlcXVpcmVfZWxlbWVudEF0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJlbGVtZW50QXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbGVtZW50QXRfMS5lbGVtZW50QXQ7CiAgICB9IH0pOwogICAgdmFyIGVuZFdpdGhfMSA9IHJlcXVpcmVfZW5kV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW5kV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVuZFdpdGhfMS5lbmRXaXRoOwogICAgfSB9KTsKICAgIHZhciBldmVyeV8xID0gcmVxdWlyZV9ldmVyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXZlcnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBldmVyeV8xLmV2ZXJ5OwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0XzEgPSByZXF1aXJlX2V4aGF1c3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0XzEuZXhoYXVzdDsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdEFsbF8xID0gcmVxdWlyZV9leGhhdXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdEFsbF8xLmV4aGF1c3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RNYXBfMSA9IHJlcXVpcmVfZXhoYXVzdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RNYXBfMS5leGhhdXN0TWFwOwogICAgfSB9KTsKICAgIHZhciBleHBhbmRfMSA9IHJlcXVpcmVfZXhwYW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleHBhbmQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleHBhbmRfMS5leHBhbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbHRlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbHRlcl8xLmZpbHRlcjsKICAgIH0gfSk7CiAgICB2YXIgZmluYWxpemVfMSA9IHJlcXVpcmVfZmluYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluYWxpemVfMS5maW5hbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluZF8xLmZpbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbmRJbmRleF8xID0gcmVxdWlyZV9maW5kSW5kZXgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmRJbmRleCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRJbmRleF8xLmZpbmRJbmRleDsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RfMSA9IHJlcXVpcmVfZmlyc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RfMS5maXJzdDsKICAgIH0gfSk7CiAgICB2YXIgZ3JvdXBCeV8xID0gcmVxdWlyZV9ncm91cEJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJncm91cEJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ3JvdXBCeV8xLmdyb3VwQnk7CiAgICB9IH0pOwogICAgdmFyIGlnbm9yZUVsZW1lbnRzXzEgPSByZXF1aXJlX2lnbm9yZUVsZW1lbnRzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpZ25vcmVFbGVtZW50cyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlnbm9yZUVsZW1lbnRzXzEuaWdub3JlRWxlbWVudHM7CiAgICB9IH0pOwogICAgdmFyIGlzRW1wdHlfMSA9IHJlcXVpcmVfaXNFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlzRW1wdHlfMS5pc0VtcHR5OwogICAgfSB9KTsKICAgIHZhciBsYXN0XzEgPSByZXF1aXJlX2xhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0XzEubGFzdDsKICAgIH0gfSk7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwXzEubWFwOwogICAgfSB9KTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXBUb18xLm1hcFRvOwogICAgfSB9KTsKICAgIHZhciBtYXRlcmlhbGl6ZV8xID0gcmVxdWlyZV9tYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXRlcmlhbGl6ZV8xLm1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBtYXhfMSA9IHJlcXVpcmVfbWF4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtYXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXhfMS5tYXg7CiAgICB9IH0pOwogICAgdmFyIG1lcmdlQWxsXzEgPSByZXF1aXJlX21lcmdlQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlQWxsXzEubWVyZ2VBbGw7CiAgICB9IH0pOwogICAgdmFyIGZsYXRNYXBfMSA9IHJlcXVpcmVfZmxhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmxhdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZsYXRNYXBfMS5mbGF0TWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcFRvXzEgPSByZXF1aXJlX21lcmdlTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcFRvXzEubWVyZ2VNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VTY2FuXzEgPSByZXF1aXJlX21lcmdlU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VTY2FuXzEubWVyZ2VTY2FuOwogICAgfSB9KTsKICAgIHZhciBtZXJnZVdpdGhfMSA9IHJlcXVpcmVfbWVyZ2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZVdpdGhfMS5tZXJnZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIG1pbl8xID0gcmVxdWlyZV9taW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1pbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1pbl8xLm1pbjsKICAgIH0gfSk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibXVsdGljYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0OwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvYnNlcnZlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZlT25fMS5vYnNlcnZlT247CiAgICB9IH0pOwogICAgdmFyIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xLm9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcndpc2VfMSA9IHJlcXVpcmVfcGFpcndpc2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJ3aXNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcndpc2VfMS5wYWlyd2lzZTsKICAgIH0gfSk7CiAgICB2YXIgcGx1Y2tfMSA9IHJlcXVpcmVfcGx1Y2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBsdWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGx1Y2tfMS5wbHVjazsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaF8xID0gcmVxdWlyZV9wdWJsaXNoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaF8xLnB1Ymxpc2g7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hCZWhhdmlvcl8xID0gcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hCZWhhdmlvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hCZWhhdmlvcl8xLnB1Ymxpc2hCZWhhdmlvcjsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaExhc3RfMSA9IHJlcXVpcmVfcHVibGlzaExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaExhc3RfMS5wdWJsaXNoTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaFJlcGxheV8xID0gcmVxdWlyZV9wdWJsaXNoUmVwbGF5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaFJlcGxheV8xLnB1Ymxpc2hSZXBsYXk7CiAgICB9IH0pOwogICAgdmFyIHJhY2VXaXRoXzEgPSByZXF1aXJlX3JhY2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyYWNlV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VXaXRoXzEucmFjZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZHVjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZTsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0XzEyID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xMi5yZXBlYXQ7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdFdoZW5fMSA9IHJlcXVpcmVfcmVwZWF0V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVwZWF0V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdFdoZW5fMS5yZXBlYXRXaGVuOwogICAgfSB9KTsKICAgIHZhciByZXRyeV8xID0gcmVxdWlyZV9yZXRyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmV0cnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeV8xLnJldHJ5OwogICAgfSB9KTsKICAgIHZhciByZXRyeVdoZW5fMSA9IHJlcXVpcmVfcmV0cnlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeVdoZW5fMS5yZXRyeVdoZW47CiAgICB9IH0pOwogICAgdmFyIHJlZkNvdW50XzEgPSByZXF1aXJlX3JlZkNvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWZDb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZkNvdW50XzEucmVmQ291bnQ7CiAgICB9IH0pOwogICAgdmFyIHNhbXBsZV8xID0gcmVxdWlyZV9zYW1wbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZTsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlVGltZV8xID0gcmVxdWlyZV9zYW1wbGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzYW1wbGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlVGltZV8xLnNhbXBsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHNjYW5fMSA9IHJlcXVpcmVfc2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjYW5fMS5zY2FuOwogICAgfSB9KTsKICAgIHZhciBzZXF1ZW5jZUVxdWFsXzEgPSByZXF1aXJlX3NlcXVlbmNlRXF1YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNlcXVlbmNlRXF1YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzZXF1ZW5jZUVxdWFsXzEuc2VxdWVuY2VFcXVhbDsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVfMSA9IHJlcXVpcmVfc2hhcmUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZTsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVSZXBsYXlfMSA9IHJlcXVpcmVfc2hhcmVSZXBsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVSZXBsYXlfMS5zaGFyZVJlcGxheTsKICAgIH0gfSk7CiAgICB2YXIgc2luZ2xlXzEgPSByZXF1aXJlX3NpbmdsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2luZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2luZ2xlXzEuc2luZ2xlOwogICAgfSB9KTsKICAgIHZhciBza2lwXzEgPSByZXF1aXJlX3NraXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwXzEuc2tpcDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcExhc3RfMSA9IHJlcXVpcmVfc2tpcExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcExhc3RfMS5za2lwTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcFVudGlsXzEgPSByZXF1aXJlX3NraXBVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcFVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcFVudGlsXzEuc2tpcFVudGlsOwogICAgfSB9KTsKICAgIHZhciBza2lwV2hpbGVfMSA9IHJlcXVpcmVfc2tpcFdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwV2hpbGVfMS5za2lwV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHN0YXJ0V2l0aF8xID0gcmVxdWlyZV9zdGFydFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0YXJ0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN0YXJ0V2l0aF8xLnN0YXJ0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN1YnNjcmliZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbjsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoQWxsXzEgPSByZXF1aXJlX3N3aXRjaEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoQWxsXzEuc3dpdGNoQWxsOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXA7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcFRvXzEgPSByZXF1aXJlX3N3aXRjaE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcFRvXzEuc3dpdGNoTWFwVG87CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaFNjYW5fMSA9IHJlcXVpcmVfc3dpdGNoU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaFNjYW5fMS5zd2l0Y2hTY2FuOwogICAgfSB9KTsKICAgIHZhciB0YWtlXzEgPSByZXF1aXJlX3Rha2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlXzEudGFrZTsKICAgIH0gfSk7CiAgICB2YXIgdGFrZUxhc3RfMSA9IHJlcXVpcmVfdGFrZUxhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZUxhc3RfMS50YWtlTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgdGFrZVVudGlsXzEgPSByZXF1aXJlX3Rha2VVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZVVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZVVudGlsXzEudGFrZVVudGlsOwogICAgfSB9KTsKICAgIHZhciB0YWtlV2hpbGVfMSA9IHJlcXVpcmVfdGFrZVdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlV2hpbGVfMS50YWtlV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHRhcF8xID0gcmVxdWlyZV90YXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRhcF8xLnRhcDsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVfMSA9IHJlcXVpcmVfdGhyb3R0bGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm90dGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVfMS50aHJvdHRsZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVUaW1lXzEgPSByZXF1aXJlX3Rocm90dGxlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVUaW1lXzEudGhyb3R0bGVUaW1lOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0lmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHk7CiAgICB9IH0pOwogICAgdmFyIHRpbWVJbnRlcnZhbF8xID0gcmVxdWlyZV90aW1lSW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVJbnRlcnZhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVJbnRlcnZhbF8xLnRpbWVJbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8yID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dF8yLnRpbWVvdXQ7CiAgICB9IH0pOwogICAgdmFyIHRpbWVvdXRXaXRoXzEgPSByZXF1aXJlX3RpbWVvdXRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRXaXRoXzEudGltZW91dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHRpbWVzdGFtcF8xID0gcmVxdWlyZV90aW1lc3RhbXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVzdGFtcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcF8xLnRpbWVzdGFtcDsKICAgIH0gfSk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidG9BcnJheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRvQXJyYXlfMTIudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdGhJc0ZpbGVFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIEJhc2VFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSA9ICIiKSB7CiAgICAgICAgc3VwZXIobWVzc2FnZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gQmFzZUV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSkgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkV4Y2VwdGlvbiA9IFVua25vd25FeGNlcHRpb247CiAgICB2YXIgRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGRpcmVjdG9yeS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbjsKICAgIHZhciBQYXRoSXNGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGZpbGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gUGF0aElzRmlsZUV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9saXRlcmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25lTGluZSA9IG9uZUxpbmU7CiAgICBleHBvcnRzMi5pbmRlbnRCeSA9IGluZGVudEJ5OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnQgPSBzdHJpcEluZGVudDsKICAgIGV4cG9ydHMyLnN0cmlwSW5kZW50cyA9IHN0cmlwSW5kZW50czsKICAgIGV4cG9ydHMyLnRyaW1OZXdsaW5lcyA9IHRyaW1OZXdsaW5lczsKICAgIGZ1bmN0aW9uIG9uZUxpbmUoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkrL2dtLCAiICIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIGluZGVudEJ5KGluZGVudGF0aW9ucykgewogICAgICBsZXQgaSA9ICIiOwogICAgICB3aGlsZSAoaW5kZW50YXRpb25zLS0pIHsKICAgICAgICBpICs9ICIgIjsKICAgICAgfQogICAgICByZXR1cm4gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgICByZXR1cm4gaSArIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpLnJlcGxhY2UoL1xuL2csICJcbiIgKyBpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgY29uc3QgZW5kUmVzdWx0ID0gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKTsKICAgICAgY29uc3QgbWF0Y2ggPSBlbmRSZXN1bHQubWF0Y2goL15bIFx0XSooPz1cUykvZ20pOwogICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gZW5kUmVzdWx0OwogICAgICB9CiAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgubWluKC4uLm1hdGNoLm1hcCgoZWwpID0+IGVsLmxlbmd0aCkpOwogICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCJeWyBcXHRdeyIgKyBpbmRlbnQgKyAifSIsICJnbSIpOwogICAgICByZXR1cm4gKGluZGVudCA+IDAgPyBlbmRSZXN1bHQucmVwbGFjZShyZWdleHAsICIiKSA6IGVuZFJlc3VsdCkudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnRzKHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgcmV0dXJuIFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykuc3BsaXQoIlxuIikubWFwKChsaW5lKSA9PiBsaW5lLnRyaW0oKSkuam9pbigiXG4iKS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiB0cmltTmV3bGluZXMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoL14oPzpccj9cbikrLywgIiIpLnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkkLywgIiIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvc3RyaW5ncy5qcwp2YXIgcmVxdWlyZV9zdHJpbmdzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX0RFQ0FNRUxJWkVfUkVHRVhQLCAiJDFfJDIiKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gZGFzaGVyaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyMikucmVwbGFjZShTVFJJTkdfREFTSEVSSVpFX1JFR0VYUCwgIi0iKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhbWVsaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5zcGxpdCgiLiIpLm1hcCgocGFydCkgPT4gY2FwaXRhbGl6ZShjYW1lbGl6ZShwYXJ0KSkpLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gdW5kZXJzY29yZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEsICIkMV8kMiIpLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzIsICJfIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0cjIuc2xpY2UoMSk7CiAgICB9CiAgICBmdW5jdGlvbiBsZXZlbnNodGVpbihhLCBiKSB7CiAgICAgIGlmIChhLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGIubGVuZ3RoOwogICAgICB9CiAgICAgIGlmIChiLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGEubGVuZ3RoOwogICAgICB9CiAgICAgIGNvbnN0IG1hdHJpeCA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbWF0cml4W2ldID0gW2ldOwogICAgICB9CiAgICAgIGZvciAobGV0IGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICBtYXRyaXhbMF1bal0gPSBqOwogICAgICB9CiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBmb3IgKGxldCBqID0gMTsgaiA8PSBhLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICBpZiAoYi5jaGFyQXQoaSAtIDEpID09IGEuY2hhckF0KGogLSAxKSkgewogICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbaSAtIDFdW2ogLSAxXTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IE1hdGgubWluKAogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBzdWJzdGl0dXRpb24KICAgICAgICAgICAgICBtYXRyaXhbaV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBpbnNlcnRpb24KICAgICAgICAgICAgICBtYXRyaXhbaSAtIDFdW2pdICsgMQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbWF0cml4W2IubGVuZ3RoXVthLmxlbmd0aF07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMKdmFyIHJlcXVpcmVfb2JqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZXBDb3B5ID0gZGVlcENvcHk7CiAgICB2YXIgY29weVN5bWJvbCA9IFN5bWJvbCgpOwogICAgZnVuY3Rpb24gZGVlcENvcHkodmFsdWUpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgobykgPT4gZGVlcENvcHkobykpOwogICAgICB9IGVsc2UgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25zdCB2YWx1ZUNhc3RlZCA9IHZhbHVlOwogICAgICAgIGlmICh2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXSkgewogICAgICAgICAgcmV0dXJuIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWVDYXN0ZWRbInRvSlNPTiJdKSB7CiAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZUNhc3RlZFsidG9KU09OIl0oKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZUNhc3RlZCkpOwogICAgICAgIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdID0gY29weTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZUNhc3RlZCkpIHsKICAgICAgICAgIGNvcHlba2V5XSA9IGRlZXBDb3B5KHZhbHVlQ2FzdGVkW2tleV0pOwogICAgICAgIH0KICAgICAgICBkZWxldGUgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMKdmFyIHJlcXVpcmVfYmFzZTY0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgaW50VG9DaGFyTWFwID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLnNwbGl0KCIiKTsKICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uKG51bWJlcikgewogICAgICBpZiAoMCA8PSBudW1iZXIgJiYgbnVtYmVyIDwgaW50VG9DaGFyTWFwLmxlbmd0aCkgewogICAgICAgIHJldHVybiBpbnRUb0NoYXJNYXBbbnVtYmVyXTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJNdXN0IGJlIGJldHdlZW4gMCBhbmQgNjM6ICIgKyBudW1iZXIpOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC12bHEuanMKdmFyIHJlcXVpcmVfYmFzZTY0X3ZscSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LXZscS5qcyIoZXhwb3J0czIpIHsKICAgIHZhciBiYXNlNjQgPSByZXF1aXJlX2Jhc2U2NCgpOwogICAgdmFyIFZMUV9CQVNFX1NISUZUID0gNTsKICAgIHZhciBWTFFfQkFTRSA9IDEgPDwgVkxRX0JBU0VfU0hJRlQ7CiAgICB2YXIgVkxRX0JBU0VfTUFTSyA9IFZMUV9CQVNFIC0gMTsKICAgIHZhciBWTFFfQ09OVElOVUFUSU9OX0JJVCA9IFZMUV9CQVNFOwogICAgZnVuY3Rpb24gdG9WTFFTaWduZWQoYVZhbHVlKSB7CiAgICAgIHJldHVybiBhVmFsdWUgPCAwID8gKC1hVmFsdWUgPDwgMSkgKyAxIDogKGFWYWx1ZSA8PCAxKSArIDA7CiAgICB9CiAgICBleHBvcnRzMi5lbmNvZGUgPSBmdW5jdGlvbiBiYXNlNjRWTFFfZW5jb2RlKGFWYWx1ZSkgewogICAgICBsZXQgZW5jb2RlZCA9ICIiOwogICAgICBsZXQgZGlnaXQ7CiAgICAgIGxldCB2bHEgPSB0b1ZMUVNpZ25lZChhVmFsdWUpOwogICAgICBkbyB7CiAgICAgICAgZGlnaXQgPSB2bHEgJiBWTFFfQkFTRV9NQVNLOwogICAgICAgIHZscSA+Pj49IFZMUV9CQVNFX1NISUZUOwogICAgICAgIGlmICh2bHEgPiAwKSB7CiAgICAgICAgICBkaWdpdCB8PSBWTFFfQ09OVElOVUFUSU9OX0JJVDsKICAgICAgICB9CiAgICAgICAgZW5jb2RlZCArPSBiYXNlNjQuZW5jb2RlKGRpZ2l0KTsKICAgICAgfSB3aGlsZSAodmxxID4gMCk7CiAgICAgIHJldHVybiBlbmNvZGVkOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMKdmFyIHJlcXVpcmVfdXRpbDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMiKGV4cG9ydHMyKSB7CiAgICBmdW5jdGlvbiBnZXRBcmcoYUFyZ3MsIGFOYW1lLCBhRGVmYXVsdFZhbHVlKSB7CiAgICAgIGlmIChhTmFtZSBpbiBhQXJncykgewogICAgICAgIHJldHVybiBhQXJnc1thTmFtZV07CiAgICAgIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykgewogICAgICAgIHJldHVybiBhRGVmYXVsdFZhbHVlOwogICAgICB9CiAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhTmFtZSArICciIGlzIGEgcmVxdWlyZWQgYXJndW1lbnQuJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRBcmcgPSBnZXRBcmc7CiAgICB2YXIgdXJsUmVnZXhwID0gL14oPzooW1x3K1wtLl0rKTopP1wvXC8oPzooXHcrOlx3KylAKT8oW1x3Li1dKikoPzo6KFxkKykpPyguKikkLzsKICAgIHZhciBkYXRhVXJsUmVnZXhwID0gL15kYXRhOi4rXCwuKyQvOwogICAgZnVuY3Rpb24gdXJsUGFyc2UoYVVybCkgewogICAgICBjb25zdCBtYXRjaCA9IGFVcmwubWF0Y2godXJsUmVnZXhwKTsKICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgc2NoZW1lOiBtYXRjaFsxXSwKICAgICAgICBhdXRoOiBtYXRjaFsyXSwKICAgICAgICBob3N0OiBtYXRjaFszXSwKICAgICAgICBwb3J0OiBtYXRjaFs0XSwKICAgICAgICBwYXRoOiBtYXRjaFs1XQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIudXJsUGFyc2UgPSB1cmxQYXJzZTsKICAgIGZ1bmN0aW9uIHVybEdlbmVyYXRlKGFQYXJzZWRVcmwpIHsKICAgICAgbGV0IHVybDMgPSAiIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuc2NoZW1lKSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLnNjaGVtZSArICI6IjsKICAgICAgfQogICAgICB1cmwzICs9ICIvLyI7CiAgICAgIGlmIChhUGFyc2VkVXJsLmF1dGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuYXV0aCArICJAIjsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5ob3N0KSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLmhvc3Q7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucG9ydCkgewogICAgICAgIHVybDMgKz0gIjoiICsgYVBhcnNlZFVybC5wb3J0OwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLnBhdGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwucGF0aDsKICAgICAgfQogICAgICByZXR1cm4gdXJsMzsKICAgIH0KICAgIGV4cG9ydHMyLnVybEdlbmVyYXRlID0gdXJsR2VuZXJhdGU7CiAgICB2YXIgTUFYX0NBQ0hFRF9JTlBVVFMgPSAzMjsKICAgIGZ1bmN0aW9uIGxydU1lbW9pemUoZikgewogICAgICBjb25zdCBjYWNoZSA9IFtdOwogICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhY2hlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAoY2FjaGVbaV0uaW5wdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgIGNvbnN0IHRlbXAgPSBjYWNoZVswXTsKICAgICAgICAgICAgY2FjaGVbMF0gPSBjYWNoZVtpXTsKICAgICAgICAgICAgY2FjaGVbaV0gPSB0ZW1wOwogICAgICAgICAgICByZXR1cm4gY2FjaGVbMF0ucmVzdWx0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXN1bHQgPSBmKGlucHV0KTsKICAgICAgICBjYWNoZS51bnNoaWZ0KHsKICAgICAgICAgIGlucHV0LAogICAgICAgICAgcmVzdWx0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGNhY2hlLmxlbmd0aCA+IE1BWF9DQUNIRURfSU5QVVRTKSB7CiAgICAgICAgICBjYWNoZS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0KICAgIHZhciBub3JtYWxpemUgPSBscnVNZW1vaXplKGZ1bmN0aW9uIG5vcm1hbGl6ZTIoYVBhdGgpIHsKICAgICAgbGV0IHBhdGggPSBhUGF0aDsKICAgICAgY29uc3QgdXJsMyA9IHVybFBhcnNlKGFQYXRoKTsKICAgICAgaWYgKHVybDMpIHsKICAgICAgICBpZiAoIXVybDMucGF0aCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBwYXRoID0gdXJsMy5wYXRoOwogICAgICB9CiAgICAgIGNvbnN0IGlzQWJzb2x1dGUgPSBleHBvcnRzMi5pc0Fic29sdXRlKHBhdGgpOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgc3RhcnQgPSBpOwogICAgICAgIGkgPSBwYXRoLmluZGV4T2YoIi8iLCBzdGFydCk7CiAgICAgICAgaWYgKGkgPT09IC0xKSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQpKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQsIGkpKTsKICAgICAgICAgIHdoaWxlIChpIDwgcGF0aC5sZW5ndGggJiYgcGF0aFtpXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IHVwID0gMDsKICAgICAgZm9yIChpID0gcGFydHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBjb25zdCBwYXJ0ID0gcGFydHNbaV07CiAgICAgICAgaWYgKHBhcnQgPT09ICIuIikgewogICAgICAgICAgcGFydHMuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocGFydCA9PT0gIi4uIikgewogICAgICAgICAgdXArKzsKICAgICAgICB9IGVsc2UgaWYgKHVwID4gMCkgewogICAgICAgICAgaWYgKHBhcnQgPT09ICIiKSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpICsgMSwgdXApOwogICAgICAgICAgICB1cCA9IDA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMik7CiAgICAgICAgICAgIHVwLS07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhdGggPSBwYXJ0cy5qb2luKCIvIik7CiAgICAgIGlmIChwYXRoID09PSAiIikgewogICAgICAgIHBhdGggPSBpc0Fic29sdXRlID8gIi8iIDogIi4iOwogICAgICB9CiAgICAgIGlmICh1cmwzKSB7CiAgICAgICAgdXJsMy5wYXRoID0gcGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUodXJsMyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGg7CiAgICB9KTsKICAgIGV4cG9ydHMyLm5vcm1hbGl6ZSA9IG5vcm1hbGl6ZTsKICAgIGZ1bmN0aW9uIGpvaW4yKGFSb290LCBhUGF0aCkgewogICAgICBpZiAoYVJvb3QgPT09ICIiKSB7CiAgICAgICAgYVJvb3QgPSAiLiI7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoID09PSAiIikgewogICAgICAgIGFQYXRoID0gIi4iOwogICAgICB9CiAgICAgIGNvbnN0IGFQYXRoVXJsID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBjb25zdCBhUm9vdFVybCA9IHVybFBhcnNlKGFSb290KTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3QgPSBhUm9vdFVybC5wYXRoIHx8ICIvIjsKICAgICAgfQogICAgICBpZiAoYVBhdGhVcmwgJiYgIWFQYXRoVXJsLnNjaGVtZSkgewogICAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgICAgYVBhdGhVcmwuc2NoZW1lID0gYVJvb3RVcmwuc2NoZW1lOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVBhdGhVcmwpOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCB8fCBhUGF0aC5tYXRjaChkYXRhVXJsUmVnZXhwKSkgewogICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgfQogICAgICBpZiAoYVJvb3RVcmwgJiYgIWFSb290VXJsLmhvc3QgJiYgIWFSb290VXJsLnBhdGgpIHsKICAgICAgICBhUm9vdFVybC5ob3N0ID0gYVBhdGg7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICBjb25zdCBqb2luZWQgPSBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiA/IGFQYXRoIDogbm9ybWFsaXplKGFSb290LnJlcGxhY2UoL1wvKyQvLCAiIikgKyAiLyIgKyBhUGF0aCk7CiAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgIGFSb290VXJsLnBhdGggPSBqb2luZWQ7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICByZXR1cm4gam9pbmVkOwogICAgfQogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGZ1bmN0aW9uKGFQYXRoKSB7CiAgICAgIHJldHVybiBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiB8fCB1cmxSZWdleHAudGVzdChhUGF0aCk7CiAgICB9OwogICAgZnVuY3Rpb24gcmVsYXRpdmUoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBhUm9vdCA9IGFSb290LnJlcGxhY2UoL1wvJC8sICIiKTsKICAgICAgbGV0IGxldmVsID0gMDsKICAgICAgd2hpbGUgKGFQYXRoLmluZGV4T2YoYVJvb3QgKyAiLyIpICE9PSAwKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSBhUm9vdC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgYVJvb3QgPSBhUm9vdC5zbGljZSgwLCBpbmRleCk7CiAgICAgICAgaWYgKGFSb290Lm1hdGNoKC9eKFteXC9dKzpcLyk/XC8qJC8pKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgICsrbGV2ZWw7CiAgICAgIH0KICAgICAgcmV0dXJuIEFycmF5KGxldmVsICsgMSkuam9pbigiLi4vIikgKyBhUGF0aC5zdWJzdHIoYVJvb3QubGVuZ3RoICsgMSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgdmFyIHN1cHBvcnRzTnVsbFByb3RvID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICByZXR1cm4gISgiX19wcm90b19fIiBpbiBvYmopOwogICAgfSgpOwogICAgZnVuY3Rpb24gaWRlbnRpdHkocykgewogICAgICByZXR1cm4gczsKICAgIH0KICAgIGZ1bmN0aW9uIHRvU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gIiQiICsgYVN0cjsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLnRvU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IHRvU2V0U3RyaW5nOwogICAgZnVuY3Rpb24gZnJvbVNldFN0cmluZyhhU3RyKSB7CiAgICAgIGlmIChpc1Byb3RvU3RyaW5nKGFTdHIpKSB7CiAgICAgICAgcmV0dXJuIGFTdHIuc2xpY2UoMSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFTdHI7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IGZyb21TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBpc1Byb3RvU3RyaW5nKHMpIHsKICAgICAgaWYgKCFzKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0IGxlbmd0aCA9IHMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoIDwgOSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBpZiAocy5jaGFyQ29kZUF0KGxlbmd0aCAtIDEpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMikgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAzKSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA0KSAhPT0gMTE2IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA1KSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA2KSAhPT0gMTE0IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA3KSAhPT0gMTEyIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA4KSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDkpICE9PSA5NSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gbGVuZ3RoIC0gMTA7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHMuY2hhckNvZGVBdChpKSAhPT0gMzYpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyhtYXBwaW5nQSwgbWFwcGluZ0IsIG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgbGV0IGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZU9yaWdpbmFsKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMgPSBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9uczsKICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDAgfHwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQ7CiAgICBmdW5jdGlvbiBzdHJjbXAoYVN0cjEsIGFTdHIyKSB7CiAgICAgIGlmIChhU3RyMSA9PT0gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMDsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICBpZiAoYVN0cjIgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgaWYgKGFTdHIxID4gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICByZXR1cm4gLTE7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nQSwgbWFwcGluZ0IpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQ7CiAgICBmdW5jdGlvbiBwYXJzZVNvdXJjZU1hcElucHV0KHN0cjIpIHsKICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyMi5yZXBsYWNlKC9eXCldfSdbXlxuXSpcbi8sICIiKSk7CiAgICB9CiAgICBleHBvcnRzMi5wYXJzZVNvdXJjZU1hcElucHV0ID0gcGFyc2VTb3VyY2VNYXBJbnB1dDsKICAgIGZ1bmN0aW9uIGNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlVVJMLCBzb3VyY2VNYXBVUkwpIHsKICAgICAgc291cmNlVVJMID0gc291cmNlVVJMIHx8ICIiOwogICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgIGlmIChzb3VyY2VSb290W3NvdXJjZVJvb3QubGVuZ3RoIC0gMV0gIT09ICIvIiAmJiBzb3VyY2VVUkxbMF0gIT09ICIvIikgewogICAgICAgICAgc291cmNlUm9vdCArPSAiLyI7CiAgICAgICAgfQogICAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVJvb3QgKyBzb3VyY2VVUkw7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZU1hcFVSTCkgewogICAgICAgIGNvbnN0IHBhcnNlZCA9IHVybFBhcnNlKHNvdXJjZU1hcFVSTCk7CiAgICAgICAgaWYgKCFwYXJzZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigic291cmNlTWFwVVJMIGNvdWxkIG5vdCBiZSBwYXJzZWQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5wYXRoKSB7CiAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcnNlZC5wYXRoLmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IHBhcnNlZC5wYXRoLnN1YnN0cmluZygwLCBpbmRleCArIDEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBqb2luMih1cmxHZW5lcmF0ZShwYXJzZWQpLCBzb3VyY2VVUkwpOwogICAgICB9CiAgICAgIHJldHVybiBub3JtYWxpemUoc291cmNlVVJMKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXB1dGVTb3VyY2VVUkwgPSBjb21wdXRlU291cmNlVVJMOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzIihleHBvcnRzMikgewogICAgdmFyIEFycmF5U2V0ID0gY2xhc3MgX0FycmF5U2V0IHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fYXJyYXkgPSBbXTsKICAgICAgICB0aGlzLl9zZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTdGF0aWMgbWV0aG9kIGZvciBjcmVhdGluZyBBcnJheVNldCBpbnN0YW5jZXMgZnJvbSBhbiBleGlzdGluZyBhcnJheS4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tQXJyYXkoYUFycmF5LCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3Qgc2V0MiA9IG5ldyBfQXJyYXlTZXQoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYUFycmF5Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBzZXQyLmFkZChhQXJyYXlbaV0sIGFBbGxvd0R1cGxpY2F0ZXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0MjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIGhvdyBtYW55IHVuaXF1ZSBpdGVtcyBhcmUgaW4gdGhpcyBBcnJheVNldC4gSWYgZHVwbGljYXRlcyBoYXZlIGJlZW4KICAgICAgICogYWRkZWQsIHRoYW4gdGhvc2UgZG8gbm90IGNvdW50IHRvd2FyZHMgdGhlIHNpemUuCiAgICAgICAqCiAgICAgICAqIEByZXR1cm5zIE51bWJlcgogICAgICAgKi8KICAgICAgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LnNpemU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoaXMgc2V0LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGFkZChhU3RyLCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmhhcyhhU3RyKTsKICAgICAgICBjb25zdCBpZHggPSB0aGlzLl9hcnJheS5sZW5ndGg7CiAgICAgICAgaWYgKCFpc0R1cGxpY2F0ZSB8fCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgICB0aGlzLl9hcnJheS5wdXNoKGFTdHIpOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzRHVwbGljYXRlKSB7CiAgICAgICAgICB0aGlzLl9zZXQuc2V0KGFTdHIsIGlkeCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJcyB0aGUgZ2l2ZW4gc3RyaW5nIGEgbWVtYmVyIG9mIHRoaXMgc2V0PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGhhcyhhU3RyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NldC5oYXMoYVN0cik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGluZGV4IG9mIHRoZSBnaXZlbiBzdHJpbmcgaW4gdGhlIGFycmF5PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGluZGV4T2YoYVN0cikgewogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX3NldC5nZXQoYVN0cik7CiAgICAgICAgaWYgKGlkeCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVN0ciArICciIGlzIG5vdCBpbiB0aGUgc2V0LicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXaGF0IGlzIHRoZSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleD8KICAgICAgICoKICAgICAgICogQHBhcmFtIE51bWJlciBhSWR4CiAgICAgICAqLwogICAgICBhdChhSWR4KSB7CiAgICAgICAgaWYgKGFJZHggPj0gMCAmJiBhSWR4IDwgdGhpcy5fYXJyYXkubGVuZ3RoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXlbYUlkeF07CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBpbmRleGVkIGJ5ICIgKyBhSWR4KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgYXJyYXkgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzZXQgKHdoaWNoIGhhcyB0aGUgcHJvcGVyIGluZGljZXMKICAgICAgICogaW5kaWNhdGVkIGJ5IGluZGV4T2YpLiBOb3RlIHRoYXQgdGhpcyBpcyBhIGNvcHkgb2YgdGhlIGludGVybmFsIGFycmF5IHVzZWQKICAgICAgICogZm9yIHN0b3JpbmcgdGhlIG1lbWJlcnMgc28gdGhhdCBubyBvbmUgY2FuIG1lc3Mgd2l0aCBpbnRlcm5hbCBzdGF0ZS4KICAgICAgICovCiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FycmF5LnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BcnJheVNldCA9IEFycmF5U2V0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzCnZhciByZXF1aXJlX21hcHBpbmdfbGlzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWdlbmVyYXRvci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1nZW5lcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgTWFwcGluZ0xpc3QgPSByZXF1aXJlX21hcHBpbmdfbGlzdCgpLk1hcHBpbmdMaXN0OwogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IGNsYXNzIF9Tb3VyY2VNYXBHZW5lcmF0b3IgewogICAgICBjb25zdHJ1Y3RvcihhQXJncykgewogICAgICAgIGlmICghYUFyZ3MpIHsKICAgICAgICAgIGFBcmdzID0ge307CiAgICAgICAgfQogICAgICAgIHRoaXMuX2ZpbGUgPSB1dGlsLmdldEFyZyhhQXJncywgImZpbGUiLCBudWxsKTsKICAgICAgICB0aGlzLl9zb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc2tpcFZhbGlkYXRpb24gPSB1dGlsLmdldEFyZyhhQXJncywgInNraXBWYWxpZGF0aW9uIiwgZmFsc2UpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzID0gbmV3IE1hcHBpbmdMaXN0KCk7CiAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlcyBhIG5ldyBTb3VyY2VNYXBHZW5lcmF0b3IgYmFzZWQgb24gYSBTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBTb3VyY2VNYXAuCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwQ29uc3VtZXIpIHsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZVJvb3Q7CiAgICAgICAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IF9Tb3VyY2VNYXBHZW5lcmF0b3IoewogICAgICAgICAgZmlsZTogYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUsCiAgICAgICAgICBzb3VyY2VSb290CiAgICAgICAgfSk7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLmVhY2hNYXBwaW5nKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGNvbnN0IG5ld01hcHBpbmcgPSB7CiAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uCiAgICAgICAgICAgIH0KICAgICAgICAgIH07CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICBuZXdNYXBwaW5nLnNvdXJjZSA9IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIG5ld01hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZXdNYXBwaW5nLm9yaWdpbmFsID0gewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICBuZXdNYXBwaW5nLm5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGdlbmVyYXRvci5hZGRNYXBwaW5nKG5ld01hcHBpbmcpOwogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgbGV0IHNvdXJjZVJlbGF0aXZlID0gc291cmNlRmlsZTsKICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZVJlbGF0aXZlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZ2VuZXJhdG9yLl9zb3VyY2VzLmhhcyhzb3VyY2VSZWxhdGl2ZSkpIHsKICAgICAgICAgICAgZ2VuZXJhdG9yLl9zb3VyY2VzLmFkZChzb3VyY2VSZWxhdGl2ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBnZW5lcmF0b3I7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHNpbmdsZSBtYXBwaW5nIGZyb20gb3JpZ2luYWwgc291cmNlIGxpbmUgYW5kIGNvbHVtbiB0byB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBmb3IgdGhpcyBzb3VyY2UgbWFwIGJlaW5nIGNyZWF0ZWQuIFRoZSBtYXBwaW5nCiAgICAgICAqIG9iamVjdCBzaG91bGQgaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBnZW5lcmF0ZWQ6IEFuIG9iamVjdCB3aXRoIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIG9yaWdpbmFsOiBBbiBvYmplY3Qgd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIChyZWxhdGl2ZSB0byB0aGUgc291cmNlUm9vdCkuCiAgICAgICAqICAgLSBuYW1lOiBBbiBvcHRpb25hbCBvcmlnaW5hbCB0b2tlbiBuYW1lIGZvciB0aGlzIG1hcHBpbmcuCiAgICAgICAqLwogICAgICBhZGRNYXBwaW5nKGFBcmdzKSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJnZW5lcmF0ZWQiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAib3JpZ2luYWwiLCBudWxsKTsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibmFtZSIsIG51bGwpOwogICAgICAgIGlmICghdGhpcy5fc2tpcFZhbGlkYXRpb24pIHsKICAgICAgICAgIHRoaXMuX3ZhbGlkYXRlTWFwcGluZyhnZW5lcmF0ZWQsIG9yaWdpbmFsLCBzb3VyY2UsIG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IFN0cmluZyhzb3VyY2UpOwogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChuYW1lICE9IG51bGwpIHsKICAgICAgICAgIG5hbWUgPSBTdHJpbmcobmFtZSk7CiAgICAgICAgICBpZiAoIXRoaXMuX25hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzLmFkZCh7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbiwKICAgICAgICAgIG9yaWdpbmFsTGluZTogb3JpZ2luYWwgIT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uLAogICAgICAgICAgc291cmNlLAogICAgICAgICAgbmFtZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTZXQgdGhlIHNvdXJjZSBjb250ZW50IGZvciBhIHNvdXJjZSBmaWxlLgogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICBsZXQgc291cmNlID0gYVNvdXJjZUZpbGU7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLl9zb3VyY2VSb290LCBzb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAoYVNvdXJjZUNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzQ29udGVudHMpIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zb3VyY2VzQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhzb3VyY2UpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBkZWxldGUgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV07CiAgICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fc291cmNlc0NvbnRlbnRzKS5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFwcGxpZXMgdGhlIG1hcHBpbmdzIG9mIGEgc3ViLXNvdXJjZS1tYXAgZm9yIGEgc3BlY2lmaWMgc291cmNlIGZpbGUgdG8gdGhlCiAgICAgICAqIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkLiBFYWNoIG1hcHBpbmcgdG8gdGhlIHN1cHBsaWVkIHNvdXJjZSBmaWxlIGlzCiAgICAgICAqIHJld3JpdHRlbiB1c2luZyB0aGUgc3VwcGxpZWQgc291cmNlIG1hcC4gTm90ZTogVGhlIHJlc29sdXRpb24gZm9yIHRoZQogICAgICAgKiByZXN1bHRpbmcgbWFwcGluZ3MgaXMgdGhlIG1pbmltaXVtIG9mIHRoaXMgbWFwIGFuZCB0aGUgc3VwcGxpZWQgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlRmlsZSBPcHRpb25hbC4gVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZS4KICAgICAgICogICAgICAgIElmIG9taXR0ZWQsIFNvdXJjZU1hcENvbnN1bWVyJ3MgZmlsZSBwcm9wZXJ0eSB3aWxsIGJlIHVzZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwUGF0aCBPcHRpb25hbC4gVGhlIGRpcm5hbWUgb2YgdGhlIHBhdGggdG8gdGhlIHNvdXJjZSBtYXAKICAgICAgICogICAgICAgIHRvIGJlIGFwcGxpZWQuIElmIHJlbGF0aXZlLCBpdCBpcyByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBuZWVkZWQgd2hlbiB0aGUgdHdvIHNvdXJjZSBtYXBzIGFyZW4ndCBpbiB0aGUgc2FtZQogICAgICAgKiAgICAgICAgZGlyZWN0b3J5LCBhbmQgdGhlIHNvdXJjZSBtYXAgdG8gYmUgYXBwbGllZCBjb250YWlucyByZWxhdGl2ZSBzb3VyY2UKICAgICAgICogICAgICAgIHBhdGhzLiBJZiBzbywgdGhvc2UgcmVsYXRpdmUgc291cmNlIHBhdGhzIG5lZWQgdG8gYmUgcmV3cml0dGVuCiAgICAgICAqICAgICAgICByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKi8KICAgICAgYXBwbHlTb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyLCBhU291cmNlRmlsZSwgYVNvdXJjZU1hcFBhdGgpIHsKICAgICAgICBsZXQgc291cmNlRmlsZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmIChhU291cmNlRmlsZSA9PSBudWxsKSB7CiAgICAgICAgICBpZiAoYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUgPT0gbnVsbCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYFNvdXJjZU1hcEdlbmVyYXRvci5wcm90b3R5cGUuYXBwbHlTb3VyY2VNYXAgcmVxdWlyZXMgZWl0aGVyIGFuIGV4cGxpY2l0IHNvdXJjZSBmaWxlLCBvciB0aGUgc291cmNlIG1hcCdzICJmaWxlIiBwcm9wZXJ0eS4gQm90aCB3ZXJlIG9taXR0ZWQuYAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlRmlsZSA9IGFTb3VyY2VNYXBDb25zdW1lci5maWxlOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3U291cmNlcyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKS5sZW5ndGggPiAwID8gbmV3IEFycmF5U2V0KCkgOiB0aGlzLl9zb3VyY2VzOwogICAgICAgIGNvbnN0IG5ld05hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbWFwcGluZ3MudW5zb3J0ZWRGb3JFYWNoKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gc291cmNlRmlsZSAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSAhPSBudWxsKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gYVNvdXJjZU1hcENvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBvcmlnaW5hbC5zb3VyY2U7CiAgICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWwubGluZTsKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWwuY29sdW1uOwogICAgICAgICAgICAgIGlmIChvcmlnaW5hbC5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgIGlmIChzb3VyY2UgIT0gbnVsbCAmJiAhbmV3U291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICBuZXdTb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbmFtZSA9IG1hcHBpbmcubmFtZTsKICAgICAgICAgIGlmIChuYW1lICE9IG51bGwgJiYgIW5ld05hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICBuZXdOYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgdGhpcy5fc291cmNlcyA9IG5ld1NvdXJjZXM7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXdOYW1lczsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNyY0ZpbGUpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlQ29udGVudEZvcihzcmNGaWxlKTsKICAgICAgICAgIGlmIChjb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzcmNGaWxlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBzcmNGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zZXRTb3VyY2VDb250ZW50KHNyY0ZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBIG1hcHBpbmcgY2FuIGhhdmUgb25lIG9mIHRoZSB0aHJlZSBsZXZlbHMgb2YgZGF0YToKICAgICAgICoKICAgICAgICogICAxLiBKdXN0IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb24uCiAgICAgICAqICAgMi4gVGhlIEdlbmVyYXRlZCBwb3NpdGlvbiwgb3JpZ2luYWwgcG9zaXRpb24sIGFuZCBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgMy4gR2VuZXJhdGVkIGFuZCBvcmlnaW5hbCBwb3NpdGlvbiwgb3JpZ2luYWwgc291cmNlLCBhcyB3ZWxsIGFzIGEgbmFtZQogICAgICAgKiAgICAgIHRva2VuLgogICAgICAgKgogICAgICAgKiBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSwgd2UgdmFsaWRhdGUgdGhhdCBhbnkgbmV3IG1hcHBpbmcgYmVpbmcgYWRkZWQgZmFsbHMKICAgICAgICogaW4gdG8gb25lIG9mIHRoZXNlIGNhdGVnb3JpZXMuCiAgICAgICAqLwogICAgICBfdmFsaWRhdGVNYXBwaW5nKGFHZW5lcmF0ZWQsIGFPcmlnaW5hbCwgYVNvdXJjZSwgYU5hbWUpIHsKICAgICAgICBpZiAoYU9yaWdpbmFsICYmIHR5cGVvZiBhT3JpZ2luYWwubGluZSAhPT0gIm51bWJlciIgJiYgdHlwZW9mIGFPcmlnaW5hbC5jb2x1bW4gIT09ICJudW1iZXIiKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJvcmlnaW5hbC5saW5lIGFuZCBvcmlnaW5hbC5jb2x1bW4gYXJlIG5vdCBudW1iZXJzIC0tIHlvdSBwcm9iYWJseSBtZWFudCB0byBvbWl0IHRoZSBvcmlnaW5hbCBtYXBwaW5nIGVudGlyZWx5IGFuZCBvbmx5IG1hcCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLiBJZiBzbywgcGFzcyBudWxsIGZvciB0aGUgb3JpZ2luYWwgbWFwcGluZyBpbnN0ZWFkIG9mIGFuIG9iamVjdCB3aXRoIGVtcHR5IG9yIG51bGwgdmFsdWVzLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYUdlbmVyYXRlZC5saW5lID4gMCAmJiBhR2VuZXJhdGVkLmNvbHVtbiA+PSAwICYmICFhT3JpZ2luYWwgJiYgIWFTb3VyY2UgJiYgIWFOYW1lKSB7CiAgICAgICAgfSBlbHNlIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYU9yaWdpbmFsICYmICJsaW5lIiBpbiBhT3JpZ2luYWwgJiYgImNvbHVtbiIgaW4gYU9yaWdpbmFsICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiBhT3JpZ2luYWwubGluZSA+IDAgJiYgYU9yaWdpbmFsLmNvbHVtbiA+PSAwICYmIGFTb3VyY2UpIHsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hcHBpbmc6ICIgKyBKU09OLnN0cmluZ2lmeSh7CiAgICAgICAgICAgIGdlbmVyYXRlZDogYUdlbmVyYXRlZCwKICAgICAgICAgICAgc291cmNlOiBhU291cmNlLAogICAgICAgICAgICBvcmlnaW5hbDogYU9yaWdpbmFsLAogICAgICAgICAgICBuYW1lOiBhTmFtZQogICAgICAgICAgfSkpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogU2VyaWFsaXplIHRoZSBhY2N1bXVsYXRlZCBtYXBwaW5ncyBpbiB0byB0aGUgc3RyZWFtIG9mIGJhc2UgNjQgVkxRcwogICAgICAgKiBzcGVjaWZpZWQgYnkgdGhlIHNvdXJjZSBtYXAgZm9ybWF0LgogICAgICAgKi8KICAgICAgX3NlcmlhbGl6ZU1hcHBpbmdzKCkgewogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzR2VuZXJhdGVkTGluZSA9IDE7CiAgICAgICAgbGV0IHByZXZpb3VzT3JpZ2luYWxDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsTGluZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzTmFtZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzU291cmNlID0gMDsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgbGV0IG5hbWVJZHg7CiAgICAgICAgbGV0IHNvdXJjZUlkeDsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gbWFwcGluZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmcgPSBtYXBwaW5nc1tpXTsKICAgICAgICAgIG5leHQgPSAiIjsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIG5leHQgKz0gIjsiOwogICAgICAgICAgICAgIHByZXZpb3VzR2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgIGlmICghdXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nLCBtYXBwaW5nc1tpIC0gMV0pKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV4dCArPSAiLCI7CiAgICAgICAgICB9CiAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBwcmV2aW91c0dlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlSWR4ID0gdGhpcy5fc291cmNlcy5pbmRleE9mKG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKHNvdXJjZUlkeCAtIHByZXZpb3VzU291cmNlKTsKICAgICAgICAgICAgcHJldmlvdXNTb3VyY2UgPSBzb3VyY2VJZHg7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShtYXBwaW5nLm9yaWdpbmFsTGluZSAtIDEgLSBwcmV2aW91c09yaWdpbmFsTGluZSk7CiAgICAgICAgICAgIHByZXZpb3VzT3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmUgLSAxOwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbENvbHVtbiAtIHByZXZpb3VzT3JpZ2luYWxDb2x1bW4pOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZUlkeCA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobmFtZUlkeCAtIHByZXZpb3VzTmFtZSk7CiAgICAgICAgICAgICAgcHJldmlvdXNOYW1lID0gbmFtZUlkeDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmVzdWx0ICs9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgX2dlbmVyYXRlU291cmNlc0NvbnRlbnQoYVNvdXJjZXMsIGFTb3VyY2VSb290KSB7CiAgICAgICAgcmV0dXJuIGFTb3VyY2VzLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFTb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZShhU291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtleSA9IHV0aWwudG9TZXRTdHJpbmcoc291cmNlKTsKICAgICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5fc291cmNlc0NvbnRlbnRzLCBrZXkpID8gdGhpcy5fc291cmNlc0NvbnRlbnRzW2tleV0gOiBudWxsOwogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBFeHRlcm5hbGl6ZSB0aGUgc291cmNlIG1hcC4KICAgICAgICovCiAgICAgIHRvSlNPTigpIHsKICAgICAgICBjb25zdCBtYXAyID0gewogICAgICAgICAgdmVyc2lvbjogdGhpcy5fdmVyc2lvbiwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMuX3NvdXJjZXMudG9BcnJheSgpLAogICAgICAgICAgbmFtZXM6IHRoaXMuX25hbWVzLnRvQXJyYXkoKSwKICAgICAgICAgIG1hcHBpbmdzOiB0aGlzLl9zZXJpYWxpemVNYXBwaW5ncygpCiAgICAgICAgfTsKICAgICAgICBpZiAodGhpcy5fZmlsZSAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLmZpbGUgPSB0aGlzLl9maWxlOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZVJvb3QgPSB0aGlzLl9zb3VyY2VSb290OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZXNDb250ZW50ID0gdGhpcy5fZ2VuZXJhdGVTb3VyY2VzQ29udGVudChtYXAyLnNvdXJjZXMsIG1hcDIuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZW5kZXIgdGhlIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkIHRvIGEgc3RyaW5nLgogICAgICAgKi8KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwR2VuZXJhdG9yLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSBTb3VyY2VNYXBHZW5lcmF0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iaW5hcnktc2VhcmNoLmpzCnZhciByZXF1aXJlX2JpbmFyeV9zZWFyY2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMiKGV4cG9ydHMyKSB7CiAgICBleHBvcnRzMi5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBmdW5jdGlvbiByZWN1cnNpdmVTZWFyY2goYUxvdywgYUhpZ2gsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKSB7CiAgICAgIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IoKGFIaWdoIC0gYUxvdykgLyAyKSArIGFMb3c7CiAgICAgIGNvbnN0IGNtcCA9IGFDb21wYXJlKGFOZWVkbGUsIGFIYXlzdGFja1ttaWRdLCB0cnVlKTsKICAgICAgaWYgKGNtcCA9PT0gMCkgewogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0gZWxzZSBpZiAoY21wID4gMCkgewogICAgICAgIGlmIChhSGlnaCAtIG1pZCA+IDEpIHsKICAgICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2gobWlkLCBhSGlnaCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpOwogICAgICAgIH0KICAgICAgICBpZiAoYUJpYXMgPT0gZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQpIHsKICAgICAgICAgIHJldHVybiBhSGlnaCA8IGFIYXlzdGFjay5sZW5ndGggPyBhSGlnaCA6IC0xOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWlkOwogICAgICB9CiAgICAgIGlmIChtaWQgLSBhTG93ID4gMSkgewogICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2goYUxvdywgbWlkLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcyk7CiAgICAgIH0KICAgICAgaWYgKGFCaWFzID09IGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EKSB7CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfQogICAgICByZXR1cm4gYUxvdyA8IDAgPyAtMSA6IGFMb3c7CiAgICB9CiAgICBleHBvcnRzMi5zZWFyY2ggPSBmdW5jdGlvbiBzZWFyY2goYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpIHsKICAgICAgaWYgKGFIYXlzdGFjay5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgbGV0IGluZGV4ID0gcmVjdXJzaXZlU2VhcmNoKAogICAgICAgIC0xLAogICAgICAgIGFIYXlzdGFjay5sZW5ndGgsCiAgICAgICAgYU5lZWRsZSwKICAgICAgICBhSGF5c3RhY2ssCiAgICAgICAgYUNvbXBhcmUsCiAgICAgICAgYUJpYXMgfHwgZXhwb3J0czIuR1JFQVRFU1RfTE9XRVJfQk9VTkQKICAgICAgKTsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICB3aGlsZSAoaW5kZXggLSAxID49IDApIHsKICAgICAgICBpZiAoYUNvbXBhcmUoYUhheXN0YWNrW2luZGV4XSwgYUhheXN0YWNrW2luZGV4IC0gMV0sIHRydWUpICE9PSAwKSB7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgLS1pbmRleDsKICAgICAgfQogICAgICByZXR1cm4gaW5kZXg7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzCnZhciByZXF1aXJlX3JlYWRfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGlzQnJvd3NlckVudmlyb25tZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd2luZG93ICE9PSAidW5kZWZpbmVkIiAmJiB0aGlzID09PSB3aW5kb3c7CiAgICB9LmNhbGwoKTsKICAgIGlmIChpc0Jyb3dzZXJFbnZpcm9ubWVudCkgewogICAgICBsZXQgbWFwcGluZ3NXYXNtID0gbnVsbDsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgaWYgKHR5cGVvZiBtYXBwaW5nc1dhc20gPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gZmV0Y2gobWFwcGluZ3NXYXNtKS50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKSk7CiAgICAgICAgfQogICAgICAgIGlmIChtYXBwaW5nc1dhc20gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikgewogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYXBwaW5nc1dhc20pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIllvdSBtdXN0IHByb3ZpZGUgdGhlIHN0cmluZyBVUkwgb3IgQXJyYXlCdWZmZXIgY29udGVudHMgb2YgbGliL21hcHBpbmdzLndhc20gYnkgY2FsbGluZyBTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplKHsgJ2xpYi9tYXBwaW5ncy53YXNtJzogLi4uIH0pIGJlZm9yZSB1c2luZyBTb3VyY2VNYXBDb25zdW1lciIpOwogICAgICB9OwogICAgICBtb2R1bGUyLmV4cG9ydHMuaW5pdGlhbGl6ZSA9IChpbnB1dCkgPT4gbWFwcGluZ3NXYXNtID0gaW5wdXQ7CiAgICB9IGVsc2UgewogICAgICBjb25zdCBmcyA9IHJlcXVpcmUoImZzIik7CiAgICAgIGNvbnN0IHBhdGggPSByZXF1aXJlKCJwYXRoIik7CiAgICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHJlYWRXYXNtKCkgewogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CiAgICAgICAgICBjb25zdCB3YXNtUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICJtYXBwaW5ncy53YXNtIik7CiAgICAgICAgICBmcy5yZWFkRmlsZSh3YXNtUGF0aCwgbnVsbCwgKGVycm9yLCBkYXRhKSA9PiB7CiAgICAgICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgIHJlamVjdChlcnJvcik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc29sdmUoZGF0YS5idWZmZXIpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKF8pID0+IHsKICAgICAgICBjb25zb2xlLmRlYnVnKCJTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplIGlzIGEgbm8tb3Agd2hlbiBydW5uaW5nIGluIG5vZGUuanMiKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3dhc20uanMKdmFyIHJlcXVpcmVfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICBmdW5jdGlvbiBNYXBwaW5nKCkgewogICAgICB0aGlzLmdlbmVyYXRlZExpbmUgPSAwOwogICAgICB0aGlzLmdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgIHRoaXMubGFzdEdlbmVyYXRlZENvbHVtbiA9IG51bGw7CiAgICAgIHRoaXMuc291cmNlID0gbnVsbDsKICAgICAgdGhpcy5vcmlnaW5hbExpbmUgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5uYW1lID0gbnVsbDsKICAgIH0KICAgIHZhciBjYWNoZWRXYXNtID0gbnVsbDsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHdhc20oKSB7CiAgICAgIGlmIChjYWNoZWRXYXNtKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICAgIH0KICAgICAgY29uc3QgY2FsbGJhY2tTdGFjayA9IFtdOwogICAgICBjYWNoZWRXYXNtID0gcmVhZFdhc20oKS50aGVuKChidWZmZXIpID0+IHsKICAgICAgICByZXR1cm4gV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoYnVmZmVyLCB7CiAgICAgICAgICBlbnY6IHsKICAgICAgICAgICAgbWFwcGluZ19jYWxsYmFjayhnZW5lcmF0ZWRMaW5lLCBnZW5lcmF0ZWRDb2x1bW4sIGhhc0xhc3RHZW5lcmF0ZWRDb2x1bW4sIGxhc3RHZW5lcmF0ZWRDb2x1bW4sIGhhc09yaWdpbmFsLCBzb3VyY2UsIG9yaWdpbmFsTGluZSwgb3JpZ2luYWxDb2x1bW4sIGhhc05hbWUsIG5hbWUpIHsKICAgICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gbmV3IE1hcHBpbmcoKTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPSBnZW5lcmF0ZWRMaW5lICsgMTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiA9IGdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAoaGFzTGFzdEdlbmVyYXRlZENvbHVtbikgewogICAgICAgICAgICAgICAgbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbGFzdEdlbmVyYXRlZENvbHVtbiAtIDE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChoYXNPcmlnaW5hbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsTGluZSArIDE7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgICAgICBpZiAoaGFzTmFtZSkgewogICAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjYWxsYmFja1N0YWNrW2NhbGxiYWNrU3RhY2subGVuZ3RoIC0gMV0obWFwcGluZyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2FsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2dlbmVyYXRlZF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJnZW5lcmF0ZWRfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X29yaWdpbmFsX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoIm9yaWdpbmFsX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KS50aGVuKChXYXNtKSA9PiB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGV4cG9ydHM6IFdhc20uaW5zdGFuY2UuZXhwb3J0cywKICAgICAgICAgIHdpdGhNYXBwaW5nQ2FsbGJhY2s6IChtYXBwaW5nQ2FsbGJhY2ssIGYpID0+IHsKICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wdXNoKG1hcHBpbmdDYWxsYmFjayk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZigpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2sucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KS50aGVuKG51bGwsIChlKSA9PiB7CiAgICAgICAgY2FjaGVkV2FzbSA9IG51bGw7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBjYWNoZWRXYXNtOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtY29uc3VtZXIuanMKdmFyIHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcyIoZXhwb3J0czIpIHsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIGJpbmFyeVNlYXJjaCA9IHJlcXVpcmVfYmluYXJ5X3NlYXJjaCgpOwogICAgdmFyIEFycmF5U2V0ID0gcmVxdWlyZV9hcnJheV9zZXQoKS5BcnJheVNldDsKICAgIHZhciBiYXNlNjRWTFEgPSByZXF1aXJlX2Jhc2U2NF92bHEoKTsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICB2YXIgd2FzbSA9IHJlcXVpcmVfd2FzbSgpOwogICAgdmFyIElOVEVSTkFMID0gU3ltYm9sKCJzbWNJbnRlcm5hbCIpOwogICAgdmFyIFNvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgX1NvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIGlmIChhU291cmNlTWFwID09IElOVEVSTkFMKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX2ZhY3RvcnkoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIH0KICAgICAgc3RhdGljIGluaXRpYWxpemUob3B0cykgewogICAgICAgIHJlYWRXYXNtLmluaXRpYWxpemUob3B0c1sibGliL21hcHBpbmdzLndhc20iXSk7CiAgICAgIH0KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBfZmFjdG9yeUJTTShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29uc3RydWN0IGEgbmV3IGBTb3VyY2VNYXBDb25zdW1lcmAgZnJvbSBgcmF3U291cmNlTWFwYCBhbmQgYHNvdXJjZU1hcFVybGAKICAgICAgICogKHNlZSB0aGUgYFNvdXJjZU1hcENvbnN1bWVyYCBjb25zdHJ1Y3RvciBmb3IgZGV0YWlscy4gVGhlbiwgaW52b2tlIHRoZSBgYXN5bmMKICAgICAgICogZnVuY3Rpb24gZihTb3VyY2VNYXBDb25zdW1lcikgLT4gVGAgd2l0aCB0aGUgbmV3bHkgY29uc3RydWN0ZWQgY29uc3VtZXIsIHdhaXQKICAgICAgICogZm9yIGBmYCB0byBjb21wbGV0ZSwgY2FsbCBgZGVzdHJveWAgb24gdGhlIGNvbnN1bWVyLCBhbmQgcmV0dXJuIGBmYCdzIHJldHVybgogICAgICAgKiB2YWx1ZS4KICAgICAgICoKICAgICAgICogWW91IG11c3Qgbm90IHVzZSB0aGUgY29uc3VtZXIgYWZ0ZXIgYGZgIGNvbXBsZXRlcyEKICAgICAgICoKICAgICAgICogQnkgdXNpbmcgYHdpdGhgLCB5b3UgZG8gbm90IGhhdmUgdG8gcmVtZW1iZXIgdG8gbWFudWFsbHkgY2FsbCBgZGVzdHJveWAgb24KICAgICAgICogdGhlIGNvbnN1bWVyLCBzaW5jZSBpdCB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IG9uY2UgYGZgIGNvbXBsZXRlcy4KICAgICAgICoKICAgICAgICogYGBganMKICAgICAgICogY29uc3QgeFNxdWFyZWQgPSBhd2FpdCBTb3VyY2VNYXBDb25zdW1lci53aXRoKAogICAgICAgKiAgIG15UmF3U291cmNlTWFwLAogICAgICAgKiAgIG51bGwsCiAgICAgICAqICAgYXN5bmMgZnVuY3Rpb24gKGNvbnN1bWVyKSB7CiAgICAgICAqICAgICAvLyBVc2UgYGNvbnN1bWVyYCBpbnNpZGUgaGVyZSBhbmQgZG9uJ3Qgd29ycnkgYWJvdXQgcmVtZW1iZXJpbmcKICAgICAgICogICAgIC8vIHRvIGNhbGwgYGRlc3Ryb3lgLgogICAgICAgKgogICAgICAgKiAgICAgY29uc3QgeCA9IGF3YWl0IHdoYXRldmVyKGNvbnN1bWVyKTsKICAgICAgICogICAgIHJldHVybiB4ICogeDsKICAgICAgICogICB9CiAgICAgICAqICk7CiAgICAgICAqCiAgICAgICAqIC8vIFlvdSBtYXkgbm90IHVzZSB0aGF0IGBjb25zdW1lcmAgYW55bW9yZSBvdXQgaGVyZTsgaXQgaGFzCiAgICAgICAqIC8vIGJlZW4gZGVzdHJveWVkLiBCdXQgeW91IGNhbiB1c2UgYHhTcXVhcmVkYC4KICAgICAgICogY29uc29sZS5sb2coeFNxdWFyZWQpOwogICAgICAgKiBgYGAKICAgICAgICovCiAgICAgIHN0YXRpYyBhc3luYyB3aXRoKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsLCBmKSB7CiAgICAgICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgX1NvdXJjZU1hcENvbnN1bWVyKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsKTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGF3YWl0IGYoY29uc3VtZXIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBjb25zdW1lci5kZXN0cm95KCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgX3BhcnNlTWFwcGluZ3MiKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogSXRlcmF0ZSBvdmVyIGVhY2ggbWFwcGluZyBiZXR3ZWVuIGFuIG9yaWdpbmFsIHNvdXJjZS9saW5lL2NvbHVtbiBhbmQgYQogICAgICAgKiBnZW5lcmF0ZWQgbGluZS9jb2x1bW4gaW4gdGhpcyBzb3VyY2UgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gRnVuY3Rpb24gYUNhbGxiYWNrCiAgICAgICAqICAgICAgICBUaGUgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2l0aCBlYWNoIG1hcHBpbmcuCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYUNvbnRleHQKICAgICAgICogICAgICAgIE9wdGlvbmFsLiBJZiBzcGVjaWZpZWQsIHRoaXMgb2JqZWN0IHdpbGwgYmUgdGhlIHZhbHVlIG9mIGB0aGlzYCBldmVyeQogICAgICAgKiAgICAgICAgdGltZSB0aGF0IGBhQ2FsbGJhY2tgIGlzIGNhbGxlZC4KICAgICAgICogQHBhcmFtIGFPcmRlcgogICAgICAgKiAgICAgICAgRWl0aGVyIGBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVJgIG9yCiAgICAgICAqICAgICAgICBgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVJgLiBTcGVjaWZpZXMgd2hldGhlciB5b3Ugd2FudCB0bwogICAgICAgKiAgICAgICAgaXRlcmF0ZSBvdmVyIHRoZSBtYXBwaW5ncyBzb3J0ZWQgYnkgdGhlIGdlbmVyYXRlZCBmaWxlJ3MgbGluZS9jb2x1bW4KICAgICAgICogICAgICAgIG9yZGVyIG9yIHRoZSBvcmlnaW5hbCdzIHNvdXJjZS9saW5lL2NvbHVtbiBvcmRlciwgcmVzcGVjdGl2ZWx5LiBEZWZhdWx0cyB0bwogICAgICAgKiAgICAgICAgYFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUmAuCiAgICAgICAqLwogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZWFjaE1hcHBpbmciKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbGwgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwcm92aWRlZC4gSWYgbm8gY29sdW1uIGlzIHByb3ZpZGVkLCByZXR1cm5zIGFsbCBtYXBwaW5ncwogICAgICAgKiBjb3JyZXNwb25kaW5nIHRvIGEgZWl0aGVyIHRoZSBsaW5lIHdlIGFyZSBzZWFyY2hpbmcgZm9yIG9yIHRoZSBuZXh0CiAgICAgICAqIGNsb3Nlc3QgbGluZSB0aGF0IGhhcyBhbnkgbWFwcGluZ3MuIE90aGVyd2lzZSwgcmV0dXJucyBhbGwgbWFwcGluZ3MKICAgICAgICogY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gbGluZSBhbmQgZWl0aGVyIHRoZSBjb2x1bW4gd2UgYXJlIHNlYXJjaGluZyBmb3IKICAgICAgICogb3IgdGhlIG5leHQgY2xvc2VzdCBjb2x1bW4gdGhhdCBoYXMgYW55IG9mZnNldHMuCiAgICAgICAqCiAgICAgICAqIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBPcHRpb25hbC4gdGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIGFycmF5IG9mIG9iamVjdHMgaXMgcmV0dXJuZWQsIGVhY2ggd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yIik7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZGVzdHJveSIpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLl92ZXJzaW9uID0gMzsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUiA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUiA9IDI7CiAgICBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IFNvdXJjZU1hcENvbnN1bWVyOwogICAgdmFyIEJhc2ljU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBfQmFzaWNTb3VyY2VNYXBDb25zdW1lciBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBsZXQgc291cmNlcyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZXMiKTsKICAgICAgICAgIGNvbnN0IG5hbWVzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibmFtZXMiLCBbXSk7CiAgICAgICAgICBsZXQgc291cmNlUm9vdCA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZVJvb3QiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IHNvdXJjZXNDb250ZW50ID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlc0NvbnRlbnQiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibWFwcGluZ3MiKTsKICAgICAgICAgIGNvbnN0IGZpbGUgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJmaWxlIiwgbnVsbCk7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZVJvb3QpIHsKICAgICAgICAgICAgc291cmNlUm9vdCA9IHV0aWwubm9ybWFsaXplKHNvdXJjZVJvb3QpOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlcyA9IHNvdXJjZXMubWFwKFN0cmluZykubWFwKHV0aWwubm9ybWFsaXplKS5tYXAoZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2VSb290ICYmIHV0aWwuaXNBYnNvbHV0ZShzb3VyY2VSb290KSAmJiB1dGlsLmlzQWJzb2x1dGUoc291cmNlKSA/IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlKSA6IHNvdXJjZTsKICAgICAgICAgIH0pOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBBcnJheVNldC5mcm9tQXJyYXkobmFtZXMubWFwKFN0cmluZyksIHRydWUpOwogICAgICAgICAgdGhhdC5fc291cmNlcyA9IEFycmF5U2V0LmZyb21BcnJheShzb3VyY2VzLCB0cnVlKTsKICAgICAgICAgIHRoYXQuX2Fic29sdXRlU291cmNlcyA9IHRoYXQuX3NvdXJjZXMudG9BcnJheSgpLm1hcChmdW5jdGlvbihzKSB7CiAgICAgICAgICAgIHJldHVybiB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgcywgYVNvdXJjZU1hcFVSTCk7CiAgICAgICAgICB9KTsKICAgICAgICAgIHRoYXQuc291cmNlUm9vdCA9IHNvdXJjZVJvb3Q7CiAgICAgICAgICB0aGF0LnNvdXJjZXNDb250ZW50ID0gc291cmNlc0NvbnRlbnQ7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICAgICAgdGhhdC5fc291cmNlTWFwVVJMID0gYVNvdXJjZU1hcFVSTDsKICAgICAgICAgIHRoYXQuZmlsZSA9IGZpbGU7CiAgICAgICAgICB0aGF0Ll9jb21wdXRlZENvbHVtblNwYW5zID0gZmFsc2U7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5nc1B0ciA9IDA7CiAgICAgICAgICB0aGF0Ll93YXNtID0gbnVsbDsKICAgICAgICAgIHJldHVybiB3YXNtKCkudGhlbigodykgPT4gewogICAgICAgICAgICB0aGF0Ll93YXNtID0gdzsKICAgICAgICAgICAgcmV0dXJuIHRoYXQ7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogVXRpbGl0eSBmdW5jdGlvbiB0byBmaW5kIHRoZSBpbmRleCBvZiBhIHNvdXJjZS4gIFJldHVybnMgLTEgaWYgbm90CiAgICAgICAqIGZvdW5kLgogICAgICAgKi8KICAgICAgX2ZpbmRTb3VyY2VJbmRleChhU291cmNlKSB7CiAgICAgICAgbGV0IHJlbGF0aXZlU291cmNlID0gYVNvdXJjZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHJlbGF0aXZlU291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLnNvdXJjZVJvb3QsIHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZXMuaGFzKHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZXMuaW5kZXhPZihyZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fYWJzb2x1dGVTb3VyY2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVTb3VyY2VzW2ldID09IGFTb3VyY2UpIHsKICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgQmFzaWNTb3VyY2VNYXBDb25zdW1lciBmcm9tIGEgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU291cmNlTWFwR2VuZXJhdG9yIGFTb3VyY2VNYXAKICAgICAgICogICAgICAgIFRoZSBzb3VyY2UgbWFwIHRoYXQgd2lsbCBiZSBjb25zdW1lZC4KICAgICAgICogQHBhcmFtIFN0cmluZyBhU291cmNlTWFwVVJMCiAgICAgICAqICAgICAgICBUaGUgVVJMIGF0IHdoaWNoIHRoZSBzb3VyY2UgbWFwIGNhbiBiZSBmb3VuZCAob3B0aW9uYWwpCiAgICAgICAqIEByZXR1cm5zIEJhc2ljU291cmNlTWFwQ29uc3VtZXIKICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gbmV3IF9CYXNpY1NvdXJjZU1hcENvbnN1bWVyKGFTb3VyY2VNYXAudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgICAgZ2V0IHNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Fic29sdXRlU291cmNlcy5zbGljZSgpOwogICAgICB9CiAgICAgIF9nZXRNYXBwaW5nc1B0cigpIHsKICAgICAgICBpZiAodGhpcy5fbWFwcGluZ3NQdHIgPT09IDApIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9tYXBwaW5nc1B0cjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3Qgc2l6ZSA9IGFTdHIubGVuZ3RoOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLmFsbG9jYXRlX21hcHBpbmdzKHNpemUpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmID0gbmV3IFVpbnQ4QXJyYXkodGhpcy5fd2FzbS5leHBvcnRzLm1lbW9yeS5idWZmZXIsIG1hcHBpbmdzQnVmUHRyLCBzaXplKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykgewogICAgICAgICAgbWFwcGluZ3NCdWZbaV0gPSBhU3RyLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLnBhcnNlX21hcHBpbmdzKG1hcHBpbmdzQnVmUHRyKTsKICAgICAgICBpZiAoIW1hcHBpbmdzUHRyKSB7CiAgICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMuX3dhc20uZXhwb3J0cy5nZXRfbGFzdF9lcnJvcigpOwogICAgICAgICAgbGV0IG1zZyA9IGBFcnJvciBwYXJzaW5nIG1hcHBpbmdzIChjb2RlICR7ZXJyb3J9KTogYDsKICAgICAgICAgIHN3aXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG5lZ2F0aXZlIGxpbmUsIGNvbHVtbiwgc291cmNlIGluZGV4LCBvciBuYW1lIGluZGV4IjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG51bWJlciBsYXJnZXIgdGhhbiAyKiozMiI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICBtc2cgKz0gInJlYWNoZWQgRU9GIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBtc2cgKz0gImludmFsaWQgYmFzZSA2NCBjaGFyYWN0ZXIgd2hpbGUgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgbXNnICs9ICJ1bmtub3duIGVycm9yIGNvZGUiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzUHRyID0gbWFwcGluZ3NQdHI7CiAgICAgIH0KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgY29uc3QgY29udGV4dCA9IGFDb250ZXh0IHx8IG51bGw7CiAgICAgICAgY29uc3Qgb3JkZXIgPSBhT3JkZXIgfHwgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOwogICAgICAgIGNvbnN0IHNvdXJjZVJvb3QgPSB0aGlzLnNvdXJjZVJvb3Q7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKAogICAgICAgICAgKG1hcHBpbmcpID0+IHsKICAgICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSB0aGlzLl9uYW1lcy5hdChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBhQ2FsbGJhY2suY2FsbChjb250ZXh0LCBtYXBwaW5nKTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjoKICAgICAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5ieV9nZW5lcmF0ZWRfbG9jYXRpb24odGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSOgogICAgICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmJ5X29yaWdpbmFsX2xvY2F0aW9uKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBvcmRlciBvZiBpdGVyYXRpb24uIik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICApOwogICAgICB9CiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gYUFyZ3MuY29sdW1uIHx8IDA7CiAgICAgICAgc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KHNvdXJjZSk7CiAgICAgICAgaWYgKHNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgaWYgKG9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAob3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5ncyA9IFtdOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygKICAgICAgICAgIChtKSA9PiB7CiAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbS5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgIGxpbmU6IG0uZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG0uZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKAogICAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZSAtIDEsCiAgICAgICAgICAgICAgImNvbHVtbiIgaW4gYUFyZ3MsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIHJldHVybiBtYXBwaW5nczsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIGlmICh0aGlzLl9tYXBwaW5nc1B0ciAhPT0gMCkgewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmZyZWVfbWFwcGluZ3ModGhpcy5fbWFwcGluZ3NQdHIpOwogICAgICAgICAgdGhpcy5fbWFwcGluZ3NQdHIgPSAwOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tcHV0ZSB0aGUgbGFzdCBjb2x1bW4gZm9yIGVhY2ggZ2VuZXJhdGVkIG1hcHBpbmcuIFRoZSBsYXN0IGNvbHVtbiBpcwogICAgICAgKiBpbmNsdXNpdmUuCiAgICAgICAqLwogICAgICBjb21wdXRlQ29sdW1uU3BhbnMoKSB7CiAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmNvbXB1dGVfY29sdW1uX3NwYW5zKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgIHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgPSB0cnVlOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UsIGxpbmUsIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBnZW5lcmF0ZWQKICAgICAgICogc291cmNlJ3MgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0CiAgICAgICAqIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvciBudWxsLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIG5hbWU6IFRoZSBvcmlnaW5hbCBpZGVudGlmaWVyLCBvciBudWxsLgogICAgICAgKi8KICAgICAgb3JpZ2luYWxQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIGdlbmVyYXRlZExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBpZiAobmVlZGxlLmdlbmVyYXRlZExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5vcmlnaW5hbF9sb2NhdGlvbl9mb3IoCiAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgIG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgYmlhcwogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgICBpZiAobWFwcGluZykgewogICAgICAgICAgaWYgKG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA9PT0gbmVlZGxlLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICAgICAgaWYgKHNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQoc291cmNlKTsKICAgICAgICAgICAgICBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwodGhpcy5zb3VyY2VSb290LCBzb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG5hbWUgPSB1dGlsLmdldEFyZyhtYXBwaW5nLCAibmFtZSIsIG51bGwpOwogICAgICAgICAgICBpZiAobmFtZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5hdChuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzb3VyY2U6IG51bGwsCiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgbmFtZTogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0cnVlIGlmIHdlIGhhdmUgdGhlIHNvdXJjZSBjb250ZW50IGZvciBldmVyeSBzb3VyY2UgaW4gdGhlIHNvdXJjZQogICAgICAgKiBtYXAsIGZhbHNlIG90aGVyd2lzZS4KICAgICAgICovCiAgICAgIGhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCkgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudC5sZW5ndGggPj0gdGhpcy5fc291cmNlcy5zaXplKCkgJiYgIXRoaXMuc291cmNlc0NvbnRlbnQuc29tZShmdW5jdGlvbihzYykgewogICAgICAgICAgcmV0dXJuIHNjID09IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KGFTb3VyY2UpOwogICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFtpbmRleF07CiAgICAgICAgfQogICAgICAgIGxldCByZWxhdGl2ZVNvdXJjZSA9IGFTb3VyY2U7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICByZWxhdGl2ZVNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5zb3VyY2VSb290LCByZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGxldCB1cmwzOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCAmJiAodXJsMyA9IHV0aWwudXJsUGFyc2UodGhpcy5zb3VyY2VSb290KSkpIHsKICAgICAgICAgIGNvbnN0IGZpbGVVcmlBYnNQYXRoID0gcmVsYXRpdmVTb3VyY2UucmVwbGFjZSgvXmZpbGU6XC9cLy8sICIiKTsKICAgICAgICAgIGlmICh1cmwzLnNjaGVtZSA9PSAiZmlsZSIgJiYgdGhpcy5fc291cmNlcy5oYXMoZmlsZVVyaUFic1BhdGgpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W3RoaXMuX3NvdXJjZXMuaW5kZXhPZihmaWxlVXJpQWJzUGF0aCldOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCghdXJsMy5wYXRoIHx8IHVybDMucGF0aCA9PSAiLyIpICYmIHRoaXMuX3NvdXJjZXMuaGFzKCIvIiArIHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFt0aGlzLl9zb3VyY2VzLmluZGV4T2YoIi8iICsgcmVsYXRpdmVTb3VyY2UpXTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgcmVsYXRpdmVTb3VyY2UgKyAnIiBpcyBub3QgaW4gdGhlIFNvdXJjZU1hcC4nKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoCiAgICAgICAqIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKTsKICAgICAgICBzb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgoc291cmNlKTsKICAgICAgICBpZiAoc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICBvcmlnaW5hbExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5nZW5lcmF0ZWRfbG9jYXRpb25fZm9yKAogICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICBuZWVkbGUuc291cmNlLAogICAgICAgICAgICBuZWVkbGUub3JpZ2luYWxMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICBiaWFzCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICAgIGlmIChtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgPT09IG5lZWRsZS5zb3VyY2UpIHsKICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgfTsKICAgIEJhc2ljU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLmNvbnN1bWVyID0gU291cmNlTWFwQ29uc3VtZXI7CiAgICBleHBvcnRzMi5CYXNpY1NvdXJjZU1hcENvbnN1bWVyID0gQmFzaWNTb3VyY2VNYXBDb25zdW1lcjsKICAgIHZhciBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBjb25zdCBzZWN0aW9ucyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNlY3Rpb25zIik7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgdGhhdC5fc291cmNlcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICAgIHRoYXQuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gbnVsbDsKICAgICAgICAgIGxldCBsYXN0T2Zmc2V0ID0gewogICAgICAgICAgICBsaW5lOiAtMSwKICAgICAgICAgICAgY29sdW1uOiAwCiAgICAgICAgICB9OwogICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHNlY3Rpb25zLm1hcCgocykgPT4gewogICAgICAgICAgICBpZiAocy51cmwpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1cHBvcnQgZm9yIHVybCBmaWVsZCBpbiBzZWN0aW9ucyBub3QgaW1wbGVtZW50ZWQuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdXRpbC5nZXRBcmcocywgIm9mZnNldCIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRMaW5lID0gdXRpbC5nZXRBcmcob2Zmc2V0LCAibGluZSIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRDb2x1bW4gPSB1dGlsLmdldEFyZyhvZmZzZXQsICJjb2x1bW4iKTsKICAgICAgICAgICAgaWYgKG9mZnNldExpbmUgPCBsYXN0T2Zmc2V0LmxpbmUgfHwgb2Zmc2V0TGluZSA9PT0gbGFzdE9mZnNldC5saW5lICYmIG9mZnNldENvbHVtbiA8IGxhc3RPZmZzZXQuY29sdW1uKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTZWN0aW9uIG9mZnNldHMgbXVzdCBiZSBvcmRlcmVkIGFuZCBub24tb3ZlcmxhcHBpbmcuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGFzdE9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgY29uc3QgY29ucyA9IG5ldyBTb3VyY2VNYXBDb25zdW1lcih1dGlsLmdldEFyZyhzLCAibWFwIiksIGFTb3VyY2VNYXBVUkwpOwogICAgICAgICAgICByZXR1cm4gY29ucy50aGVuKChjb25zdW1lcikgPT4gewogICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICBnZW5lcmF0ZWRPZmZzZXQ6IHsKICAgICAgICAgICAgICAgICAgLy8gVGhlIG9mZnNldCBmaWVsZHMgYXJlIDAtYmFzZWQsIGJ1dCB3ZSB1c2UgMS1iYXNlZCBpbmRpY2VzIHdoZW4KICAgICAgICAgICAgICAgICAgLy8gZW5jb2RpbmcvZGVjb2RpbmcgZnJvbSBWTFEuCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG9mZnNldExpbmUgKyAxLAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG9mZnNldENvbHVtbiArIDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjb25zdW1lcgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkpLnRoZW4oKHMpID0+IHsKICAgICAgICAgICAgdGhhdC5fc2VjdGlvbnMgPSBzOwogICAgICAgICAgICByZXR1cm4gdGhhdDsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIGBfX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQgYF9fb3JpZ2luYWxNYXBwaW5nc2AgYXJlIGFycmF5cyB0aGF0IGhvbGQgdGhlCiAgICAgIC8vIHBhcnNlZCBtYXBwaW5nIGNvb3JkaW5hdGVzIGZyb20gdGhlIHNvdXJjZSBtYXAncyAibWFwcGluZ3MiIGF0dHJpYnV0ZS4gVGhleQogICAgICAvLyBhcmUgbGF6aWx5IGluc3RhbnRpYXRlZCwgYWNjZXNzZWQgdmlhIHRoZSBgX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgLy8gYF9vcmlnaW5hbE1hcHBpbmdzYCBnZXR0ZXJzIHJlc3BlY3RpdmVseSwgYW5kIHdlIG9ubHkgcGFyc2UgdGhlIG1hcHBpbmdzCiAgICAgIC8vIGFuZCBjcmVhdGUgdGhlc2UgYXJyYXlzIG9uY2UgcXVlcmllZCBmb3IgYSBzb3VyY2UgbG9jYXRpb24uIFdlIGp1bXAgdGhyb3VnaAogICAgICAvLyB0aGVzZSBob29wcyBiZWNhdXNlIHRoZXJlIGNhbiBiZSBtYW55IHRob3VzYW5kcyBvZiBtYXBwaW5ncywgYW5kIHBhcnNpbmcKICAgICAgLy8gdGhlbSBpcyBleHBlbnNpdmUsIHNvIHdlIG9ubHkgd2FudCB0byBkbyBpdCBpZiB3ZSBtdXN0LgogICAgICAvLwogICAgICAvLyBFYWNoIG9iamVjdCBpbiB0aGUgYXJyYXlzIGlzIG9mIHRoZSBmb3JtOgogICAgICAvLwogICAgICAvLyAgICAgewogICAgICAvLyAgICAgICBnZW5lcmF0ZWRMaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBnZW5lcmF0ZWRDb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgc291cmNlOiBUaGUgcGF0aCB0byB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUgdGhhdCBnZW5lcmF0ZWQgdGhpcwogICAgICAvLyAgICAgICAgICAgICAgIGNodW5rIG9mIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsTGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGhhdAogICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsQ29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlIHRoYXQKICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG5hbWU6IFRoZSBuYW1lIG9mIHRoZSBvcmlnaW5hbCBzeW1ib2wgd2hpY2ggZ2VuZXJhdGVkIHRoaXMgY2h1bmsgb2YKICAgICAgLy8gICAgICAgICAgICAgY29kZS4KICAgICAgLy8gICAgIH0KICAgICAgLy8KICAgICAgLy8gQWxsIHByb3BlcnRpZXMgZXhjZXB0IGZvciBgZ2VuZXJhdGVkTGluZWAgYW5kIGBnZW5lcmF0ZWRDb2x1bW5gIGNhbiBiZQogICAgICAvLyBgbnVsbGAuCiAgICAgIC8vCiAgICAgIC8vIGBfZ2VuZXJhdGVkTWFwcGluZ3NgIGlzIG9yZGVyZWQgYnkgdGhlIGdlbmVyYXRlZCBwb3NpdGlvbnMuCiAgICAgIC8vCiAgICAgIC8vIGBfb3JpZ2luYWxNYXBwaW5nc2AgaXMgb3JkZXJlZCBieSB0aGUgb3JpZ2luYWwgcG9zaXRpb25zLgogICAgICBnZXQgX2dlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGlmICghdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzKSB7CiAgICAgICAgICB0aGlzLl9zb3J0R2VuZXJhdGVkTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nczsKICAgICAgfQogICAgICBnZXQgX29yaWdpbmFsTWFwcGluZ3MoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5ncykgewogICAgICAgICAgdGhpcy5fc29ydE9yaWdpbmFsTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzOwogICAgICB9CiAgICAgIGdldCBfZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCgpIHsKICAgICAgICBpZiAoIXRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgIH0KICAgICAgZ2V0IF9vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgfQogICAgICBfc29ydEdlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdGhpcy5fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQpOwogICAgICAgIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICB9CiAgICAgIF9zb3J0T3JpZ2luYWxNYXBwaW5ncygpIHsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMpOwogICAgICAgIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFRoZSBsaXN0IG9mIG9yaWdpbmFsIHNvdXJjZXMuCiAgICAgICAqLwogICAgICBnZXQgc291cmNlcygpIHsKICAgICAgICBjb25zdCBzb3VyY2VzID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIHNvdXJjZXMucHVzaCh0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzW2pdKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNvdXJjZXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSwgbGluZSwgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3QKICAgICAgICogd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb3IgbnVsbC4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBuYW1lOiBUaGUgb3JpZ2luYWwgaWRlbnRpZmllciwgb3IgbnVsbC4KICAgICAgICovCiAgICAgIG9yaWdpbmFsUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgY29uc3Qgc2VjdGlvbkluZGV4ID0gYmluYXJ5U2VhcmNoLnNlYXJjaCgKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX3NlY3Rpb25zLAogICAgICAgICAgZnVuY3Rpb24oYU5lZWRsZSwgc2VjdGlvbjIpIHsKICAgICAgICAgICAgY29uc3QgY21wID0gYU5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gc2VjdGlvbjIuZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmU7CiAgICAgICAgICAgIGlmIChjbXApIHsKICAgICAgICAgICAgICByZXR1cm4gY21wOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhTmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIHNlY3Rpb24yLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbc2VjdGlvbkluZGV4XTsKICAgICAgICBpZiAoIXNlY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZTogbnVsbCwKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBuYW1lOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2VjdGlvbi5jb25zdW1lci5vcmlnaW5hbFBvc2l0aW9uRm9yKHsKICAgICAgICAgIGxpbmU6IG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgIGNvbHVtbjogbmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBuZWVkbGUuZ2VuZXJhdGVkTGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKSwKICAgICAgICAgIGJpYXM6IGFBcmdzLmJpYXMKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIHRydWUgaWYgd2UgaGF2ZSB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGV2ZXJ5IHNvdXJjZSBpbiB0aGUgc291cmNlCiAgICAgICAqIG1hcCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgICAgKi8KICAgICAgaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NlY3Rpb25zLmV2ZXJ5KGZ1bmN0aW9uKHMpIHsKICAgICAgICAgIHJldHVybiBzLmNvbnN1bWVyLmhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBzZWN0aW9uLmNvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgdHJ1ZSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICByZXR1cm4gY29udGVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVNvdXJjZSArICciIGlzIG5vdCBpbiB0aGUgU291cmNlTWFwLicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGgKICAgICAgICogdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgaWYgKHNlY3Rpb24uY29uc3VtZXIuX2ZpbmRTb3VyY2VJbmRleCh1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpKSA9PT0gLTEpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBnZW5lcmF0ZWRQb3NpdGlvbiA9IHNlY3Rpb24uY29uc3VtZXIuZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpOwogICAgICAgICAgaWYgKGdlbmVyYXRlZFBvc2l0aW9uKSB7CiAgICAgICAgICAgIGNvbnN0IHJldCA9IHsKICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZFBvc2l0aW9uLmNvbHVtbiArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkTWFwcGluZ3MgPSB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IFtdOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTWFwcGluZ3MgPSB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgY29uc3Qgc2VjdGlvbk1hcHBpbmdzID0gW107CiAgICAgICAgICBzZWN0aW9uLmNvbnN1bWVyLmVhY2hNYXBwaW5nKChtKSA9PiBzZWN0aW9uTWFwcGluZ3MucHVzaChtKSk7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNlY3Rpb25NYXBwaW5ncy5sZW5ndGg7IGorKykgewogICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gc2VjdGlvbk1hcHBpbmdzW2pdOwogICAgICAgICAgICBsZXQgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNlY3Rpb24uY29uc3VtZXIuc291cmNlUm9vdCwgbnVsbCwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgdGhpcy5fc291cmNlcy5hZGQoc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5pbmRleE9mKHNvdXJjZSk7CiAgICAgICAgICAgIGxldCBuYW1lID0gbnVsbDsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSkgewogICAgICAgICAgICAgIHRoaXMuX25hbWVzLmFkZChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5pbmRleE9mKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRNYXBwaW5nID0gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUgKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gbWFwcGluZy5nZW5lcmF0ZWRMaW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZTogbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9OwogICAgICAgICAgICBnZW5lcmF0ZWRNYXBwaW5ncy5wdXNoKGFkanVzdGVkTWFwcGluZyk7CiAgICAgICAgICAgIGlmICh0eXBlb2YgYWRqdXN0ZWRNYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICBvcmlnaW5hbE1hcHBpbmdzLnB1c2goYWRqdXN0ZWRNYXBwaW5nKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gYUNvbnRleHQgfHwgbnVsbDsKICAgICAgICBjb25zdCBvcmRlciA9IGFPcmRlciB8fCBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI7CiAgICAgICAgbGV0IG1hcHBpbmdzOwogICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOgogICAgICAgICAgICBtYXBwaW5ncyA9IHRoaXMuX2dlbmVyYXRlZE1hcHBpbmdzOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVI6CiAgICAgICAgICAgIG1hcHBpbmdzID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nczsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gb3JkZXIgb2YgaXRlcmF0aW9uLiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5zb3VyY2VSb290OwogICAgICAgIG1hcHBpbmdzLm1hcChmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBsZXQgc291cmNlID0gbnVsbDsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogbWFwcGluZy5nZW5lcmF0ZWRMaW5lLAogICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICBvcmlnaW5hbExpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICBvcmlnaW5hbENvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgbmFtZTogbWFwcGluZy5uYW1lID09PSBudWxsID8gbnVsbCA6IHRoaXMuX25hbWVzLmF0KG1hcHBpbmcubmFtZSkKICAgICAgICAgIH07CiAgICAgICAgfSwgdGhpcykuZm9yRWFjaChhQ2FsbGJhY2ssIGNvbnRleHQpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBGaW5kIHRoZSBtYXBwaW5nIHRoYXQgYmVzdCBtYXRjaGVzIHRoZSBoeXBvdGhldGljYWwgIm5lZWRsZSIgbWFwcGluZyB0aGF0CiAgICAgICAqIHdlIGFyZSBzZWFyY2hpbmcgZm9yIGluIHRoZSBnaXZlbiAiaGF5c3RhY2siIG9mIG1hcHBpbmdzLgogICAgICAgKi8KICAgICAgX2ZpbmRNYXBwaW5nKGFOZWVkbGUsIGFNYXBwaW5ncywgYUxpbmVOYW1lLCBhQ29sdW1uTmFtZSwgYUNvbXBhcmF0b3IsIGFCaWFzKSB7CiAgICAgICAgaWYgKGFOZWVkbGVbYUxpbmVOYW1lXSA8PSAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJMaW5lIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEsIGdvdCAiICsgYU5lZWRsZVthTGluZU5hbWVdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFOZWVkbGVbYUNvbHVtbk5hbWVdIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ29sdW1uIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAsIGdvdCAiICsgYU5lZWRsZVthQ29sdW1uTmFtZV0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoLnNlYXJjaChhTmVlZGxlLCBhTWFwcGluZ3MsIGFDb21wYXJhdG9yLCBhQmlhcyk7CiAgICAgIH0KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIHNvdXJjZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKSwKICAgICAgICAgIG9yaWdpbmFsTGluZTogbGluZSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIsIDApCiAgICAgICAgfTsKICAgICAgICBuZWVkbGUuc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KG5lZWRsZS5zb3VyY2UpOwogICAgICAgIGlmIChuZWVkbGUuc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBbXTsKICAgICAgICBsZXQgaW5kZXggPSB0aGlzLl9maW5kTWFwcGluZygKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX29yaWdpbmFsTWFwcGluZ3MsCiAgICAgICAgICAib3JpZ2luYWxMaW5lIiwKICAgICAgICAgICJvcmlnaW5hbENvbHVtbiIsCiAgICAgICAgICB1dGlsLmNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zLAogICAgICAgICAgYmluYXJ5U2VhcmNoLkxFQVNUX1VQUEVSX0JPVU5ECiAgICAgICAgKTsKICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgbGV0IG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzW2luZGV4XTsKICAgICAgICAgIGlmIChhQXJncy5jb2x1bW4gPT09IHZvaWQgMCkgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbExpbmUgPSBtYXBwaW5nLm9yaWdpbmFsTGluZTsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IG9yaWdpbmFsTGluZSkgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IGxpbmUgJiYgbWFwcGluZy5vcmlnaW5hbENvbHVtbiA9PSBvcmlnaW5hbENvbHVtbikgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcHBpbmdzOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuZGVzdHJveSgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkluZGV4ZWRTb3VyY2VNYXBDb25zdW1lciA9IEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lcjsKICAgIGZ1bmN0aW9uIF9mYWN0b3J5KGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgIH0KICAgICAgY29uc3QgY29uc3VtZXIgPSBzb3VyY2VNYXAuc2VjdGlvbnMgIT0gbnVsbCA/IG5ldyBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIoc291cmNlTWFwLCBhU291cmNlTWFwVVJMKSA6IG5ldyBCYXNpY1NvdXJjZU1hcENvbnN1bWVyKHNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoY29uc3VtZXIpOwogICAgfQogICAgZnVuY3Rpb24gX2ZhY3RvcnlCU00oYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICByZXR1cm4gQmFzaWNTb3VyY2VNYXBDb25zdW1lci5mcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMKdmFyIHJlcXVpcmVfc291cmNlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1ub2RlLmpzIihleHBvcnRzMikgewogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBSRUdFWF9ORVdMSU5FID0gLyhccj9cbikvOwogICAgdmFyIE5FV0xJTkVfQ09ERSA9IDEwOwogICAgdmFyIGlzU291cmNlTm9kZSA9ICIkJCRpc1NvdXJjZU5vZGUkJCQiOwogICAgdmFyIFNvdXJjZU5vZGUgPSBjbGFzcyBfU291cmNlTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGFMaW5lLCBhQ29sdW1uLCBhU291cmNlLCBhQ2h1bmtzLCBhTmFtZSkgewogICAgICAgIHRoaXMuY2hpbGRyZW4gPSBbXTsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzID0ge307CiAgICAgICAgdGhpcy5saW5lID0gYUxpbmUgPT0gbnVsbCA/IG51bGwgOiBhTGluZTsKICAgICAgICB0aGlzLmNvbHVtbiA9IGFDb2x1bW4gPT0gbnVsbCA/IG51bGwgOiBhQ29sdW1uOwogICAgICAgIHRoaXMuc291cmNlID0gYVNvdXJjZSA9PSBudWxsID8gbnVsbCA6IGFTb3VyY2U7CiAgICAgICAgdGhpcy5uYW1lID0gYU5hbWUgPT0gbnVsbCA/IG51bGwgOiBhTmFtZTsKICAgICAgICB0aGlzW2lzU291cmNlTm9kZV0gPSB0cnVlOwogICAgICAgIGlmIChhQ2h1bmtzICE9IG51bGwpIHRoaXMuYWRkKGFDaHVua3MpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDcmVhdGVzIGEgU291cmNlTm9kZSBmcm9tIGdlbmVyYXRlZCBjb2RlIGFuZCBhIFNvdXJjZU1hcENvbnN1bWVyLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUdlbmVyYXRlZENvZGUgVGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwQ29uc3VtZXIgVGhlIFNvdXJjZU1hcCBmb3IgdGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhUmVsYXRpdmVQYXRoIE9wdGlvbmFsLiBUaGUgcGF0aCB0aGF0IHJlbGF0aXZlIHNvdXJjZXMgaW4gdGhlCiAgICAgICAqICAgICAgICBTb3VyY2VNYXBDb25zdW1lciBzaG91bGQgYmUgcmVsYXRpdmUgdG8uCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVN0cmluZ1dpdGhTb3VyY2VNYXAoYUdlbmVyYXRlZENvZGUsIGFTb3VyY2VNYXBDb25zdW1lciwgYVJlbGF0aXZlUGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgX1NvdXJjZU5vZGUoKTsKICAgICAgICBjb25zdCByZW1haW5pbmdMaW5lcyA9IGFHZW5lcmF0ZWRDb2RlLnNwbGl0KFJFR0VYX05FV0xJTkUpOwogICAgICAgIGxldCByZW1haW5pbmdMaW5lc0luZGV4ID0gMDsKICAgICAgICBjb25zdCBzaGlmdE5leHRMaW5lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjb25zdCBsaW5lQ29udGVudHMgPSBnZXROZXh0TGluZSgpOwogICAgICAgICAgY29uc3QgbmV3TGluZSA9IGdldE5leHRMaW5lKCkgfHwgIiI7CiAgICAgICAgICByZXR1cm4gbGluZUNvbnRlbnRzICsgbmV3TGluZTsKICAgICAgICAgIGZ1bmN0aW9uIGdldE5leHRMaW5lKCkgewogICAgICAgICAgICByZXR1cm4gcmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCA/IHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXgrK10gOiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBsZXQgbGFzdEdlbmVyYXRlZExpbmUgPSAxLCBsYXN0R2VuZXJhdGVkQ29sdW1uID0gMDsKICAgICAgICBsZXQgbGFzdE1hcHBpbmcgPSBudWxsOwogICAgICAgIGxldCBuZXh0TGluZTsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuZWFjaE1hcHBpbmcoZnVuY3Rpb24obWFwcGluZykgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkTGluZSA8IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgICAgY29uc3QgY29kZSA9IG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiAtIGxhc3RHZW5lcmF0ZWRDb2x1bW4pOwogICAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgY29kZSk7CiAgICAgICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgIG5vZGUuYWRkKHNoaWZ0TmV4dExpbmUoKSk7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobGFzdEdlbmVyYXRlZENvbHVtbiA8IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSB7CiAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgIG5vZGUuYWRkKG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbikpOwogICAgICAgICAgICByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSA9IG5leHRMaW5lLnN1YnN0cihtYXBwaW5nLmdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNYXBwaW5nID0gbWFwcGluZzsKICAgICAgICB9LCB0aGlzKTsKICAgICAgICBpZiAocmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCkgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nKSB7CiAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgIH0KICAgICAgICAgIG5vZGUuYWRkKHJlbWFpbmluZ0xpbmVzLnNwbGljZShyZW1haW5pbmdMaW5lc0luZGV4KS5qb2luKCIiKSk7CiAgICAgICAgfQogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgY29uc3QgY29udGVudCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKHNvdXJjZUZpbGUpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgICBpZiAoYVJlbGF0aXZlUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc291cmNlRmlsZSA9IHV0aWwuam9pbihhUmVsYXRpdmVQYXRoLCBzb3VyY2VGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBub2RlLnNldFNvdXJjZUNvbnRlbnQoc291cmNlRmlsZSwgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgICAgZnVuY3Rpb24gYWRkTWFwcGluZ1dpdGhDb2RlKG1hcHBpbmcsIGNvZGUpIHsKICAgICAgICAgIGlmIChtYXBwaW5nID09PSBudWxsIHx8IG1hcHBpbmcuc291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbm9kZS5hZGQoY29kZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBhUmVsYXRpdmVQYXRoID8gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIG1hcHBpbmcuc291cmNlKSA6IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBub2RlLmFkZChuZXcgX1NvdXJjZU5vZGUoCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgY29kZSwKICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUKICAgICAgICAgICAgKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgYWRkKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGFDaHVuay5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rKSB7CiAgICAgICAgICAgIHRoaXMuYWRkKGNodW5rKTsKICAgICAgICAgIH0sIHRoaXMpOwogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIGlmIChhQ2h1bmspIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKGFDaHVuayk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgY2h1bmsgb2YgZ2VuZXJhdGVkIEpTIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgcHJlcGVuZChhQ2h1bmspIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhQ2h1bmspKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gYUNodW5rLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgIHRoaXMucHJlcGVuZChhQ2h1bmtbaV0pOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4udW5zaGlmdChhQ2h1bmspOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAiRXhwZWN0ZWQgYSBTb3VyY2VOb2RlLCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIFNvdXJjZU5vZGVzIGFuZCBzdHJpbmdzLiBHb3QgIiArIGFDaHVuawogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBKUyBzbmlwcGV0cyBpbiB0aGlzIG5vZGUgYW5kIGl0cyBjaGlsZHJlbi4gVGhlCiAgICAgICAqIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggc25pcHBldCBvZiBKUyBhbmQgaXMgcGFzc2VkIHRoYXQKICAgICAgICogc25pcHBldCBhbmQgdGhlIGl0cyBvcmlnaW5hbCBhc3NvY2lhdGVkIHNvdXJjZSdzIGxpbmUvY29sdW1uIGxvY2F0aW9uLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrKGFGbikgewogICAgICAgIGxldCBjaHVuazsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgY2h1bmsgPSB0aGlzLmNoaWxkcmVuW2ldOwogICAgICAgICAgaWYgKGNodW5rW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgY2h1bmsud2FsayhhRm4pOwogICAgICAgICAgfSBlbHNlIGlmIChjaHVuayAhPT0gIiIpIHsKICAgICAgICAgICAgYUZuKGNodW5rLCB7CiAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB0aGlzLmxpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiB0aGlzLmNvbHVtbiwKICAgICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaWtlIGBTdHJpbmcucHJvdG90eXBlLmpvaW5gIGV4Y2VwdCBmb3IgU291cmNlTm9kZXMuIEluc2VydHMgYGFTdHJgIGJldHdlZW4KICAgICAgICogZWFjaCBvZiBgdGhpcy5jaGlsZHJlbmAuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhU2VwIFRoZSBzZXBhcmF0b3IuCiAgICAgICAqLwogICAgICBqb2luKGFTZXApIHsKICAgICAgICBsZXQgbmV3Q2hpbGRyZW47CiAgICAgICAgbGV0IGk7CiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7CiAgICAgICAgaWYgKGxlbiA+IDApIHsKICAgICAgICAgIG5ld0NoaWxkcmVuID0gW107CiAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2goYVNlcCk7CiAgICAgICAgICB9CiAgICAgICAgICBuZXdDaGlsZHJlbi5wdXNoKHRoaXMuY2hpbGRyZW5baV0pOwogICAgICAgICAgdGhpcy5jaGlsZHJlbiA9IG5ld0NoaWxkcmVuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ2FsbCBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2Ugb24gdGhlIHZlcnkgcmlnaHQtbW9zdCBzb3VyY2Ugc25pcHBldC4gVXNlZnVsCiAgICAgICAqIGZvciB0cmltbWluZyB3aGl0ZXNwYWNlIGZyb20gdGhlIGVuZCBvZiBhIHNvdXJjZSBub2RlLCBldGMuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhUGF0dGVybiBUaGUgcGF0dGVybiB0byByZXBsYWNlLgogICAgICAgKiBAcGFyYW0gYVJlcGxhY2VtZW50IFRoZSB0aGluZyB0byByZXBsYWNlIHRoZSBwYXR0ZXJuIHdpdGguCiAgICAgICAqLwogICAgICByZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IGxhc3RDaGlsZCA9IHRoaXMuY2hpbGRyZW5bdGhpcy5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICBpZiAobGFzdENoaWxkW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgIGxhc3RDaGlsZC5yZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbGFzdENoaWxkID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdID0gbGFzdENoaWxkLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4ucHVzaCgiIi5yZXBsYWNlKGFQYXR0ZXJuLCBhUmVwbGFjZW1lbnQpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNldCB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGEgc291cmNlIGZpbGUuIFRoaXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yCiAgICAgICAqIGluIHRoZSBzb3VyY2VzQ29udGVudCBmaWVsZC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VGaWxlIFRoZSBmaWxlbmFtZSBvZiB0aGUgc291cmNlIGZpbGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VDb250ZW50IFRoZSBjb250ZW50IG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoYVNvdXJjZUZpbGUpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXYWxrIG92ZXIgdGhlIHRyZWUgb2YgU291cmNlTm9kZXMuIFRoZSB3YWxraW5nIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaAogICAgICAgKiBzb3VyY2UgZmlsZSBjb250ZW50IGFuZCBpcyBwYXNzZWQgdGhlIGZpbGVuYW1lIGFuZCBzb3VyY2UgY29udGVudC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFGbiBUaGUgdHJhdmVyc2FsIGZ1bmN0aW9uLgogICAgICAgKi8KICAgICAgd2Fsa1NvdXJjZUNvbnRlbnRzKGFGbikgewogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBpZiAodGhpcy5jaGlsZHJlbltpXVtpc1NvdXJjZU5vZGVdKSB7CiAgICAgICAgICAgIHRoaXMuY2hpbGRyZW5baV0ud2Fsa1NvdXJjZUNvbnRlbnRzKGFGbik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNvdXJjZXMgPSBPYmplY3Qua2V5cyh0aGlzLnNvdXJjZUNvbnRlbnRzKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gc291cmNlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgYUZuKHV0aWwuZnJvbVNldFN0cmluZyhzb3VyY2VzW2ldKSwgdGhpcy5zb3VyY2VDb250ZW50c1tzb3VyY2VzW2ldXSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGlzIHNvdXJjZSBub2RlLiBXYWxrcyBvdmVyIHRoZSB0cmVlCiAgICAgICAqIGFuZCBjb25jYXRlbmF0ZXMgYWxsIHRoZSB2YXJpb3VzIHNuaXBwZXRzIHRvZ2V0aGVyIHRvIG9uZSBzdHJpbmcuCiAgICAgICAqLwogICAgICB0b1N0cmluZygpIHsKICAgICAgICBsZXQgc3RyMiA9ICIiOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaykgewogICAgICAgICAgc3RyMiArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUgYWxvbmcgd2l0aCBhIHNvdXJjZQogICAgICAgKiBtYXAuCiAgICAgICAqLwogICAgICB0b1N0cmluZ1dpdGhTb3VyY2VNYXAoYUFyZ3MpIHsKICAgICAgICBjb25zdCBnZW5lcmF0ZWQgPSB7CiAgICAgICAgICBjb2RlOiAiIiwKICAgICAgICAgIGxpbmU6IDEsCiAgICAgICAgICBjb2x1bW46IDAKICAgICAgICB9OwogICAgICAgIGNvbnN0IG1hcDIgPSBuZXcgU291cmNlTWFwR2VuZXJhdG9yKGFBcmdzKTsKICAgICAgICBsZXQgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxTb3VyY2UgPSBudWxsOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxMaW5lID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTmFtZSA9IG51bGw7CiAgICAgICAgdGhpcy53YWxrKGZ1bmN0aW9uKGNodW5rLCBvcmlnaW5hbCkgewogICAgICAgICAgZ2VuZXJhdGVkLmNvZGUgKz0gY2h1bms7CiAgICAgICAgICBpZiAob3JpZ2luYWwuc291cmNlICE9PSBudWxsICYmIG9yaWdpbmFsLmxpbmUgIT09IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0T3JpZ2luYWxTb3VyY2UgIT09IG9yaWdpbmFsLnNvdXJjZSB8fCBsYXN0T3JpZ2luYWxMaW5lICE9PSBvcmlnaW5hbC5saW5lIHx8IGxhc3RPcmlnaW5hbENvbHVtbiAhPT0gb3JpZ2luYWwuY29sdW1uIHx8IGxhc3RPcmlnaW5hbE5hbWUgIT09IG9yaWdpbmFsLm5hbWUpIHsKICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcDIuYWRkTWFwcGluZyh7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkOiB7CiAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIGZvciAobGV0IGlkeCA9IDAsIGxlbmd0aCA9IGNodW5rLmxlbmd0aDsgaWR4IDwgbGVuZ3RoOyBpZHgrKykgewogICAgICAgICAgICBpZiAoY2h1bmsuY2hhckNvZGVBdChpZHgpID09PSBORVdMSU5FX0NPREUpIHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQubGluZSsrOwogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4gPSAwOwogICAgICAgICAgICAgIGlmIChpZHggKyAxID09PSBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgICAgICBzb3VyY2VNYXBwaW5nQWN0aXZlID0gZmFsc2U7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgICBzb3VyY2U6IG9yaWdpbmFsLnNvdXJjZSwKICAgICAgICAgICAgICAgICAgb3JpZ2luYWw6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogb3JpZ2luYWwuY29sdW1uCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBuYW1lOiBvcmlnaW5hbC5uYW1lCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbisrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy53YWxrU291cmNlQ29udGVudHMoZnVuY3Rpb24oc291cmNlRmlsZSwgc291cmNlQ29udGVudCkgewogICAgICAgICAgbWFwMi5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXA6IG1hcDIgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9zb3VyY2UtbWFwLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvc291cmNlLW1hcC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lcigpLlNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuU291cmNlTm9kZSA9IHJlcXVpcmVfc291cmNlX25vZGUoKS5Tb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50ZW1wbGF0ZVBhcnNlciA9IHRlbXBsYXRlUGFyc2VyOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICB2YXIgc291cmNlX21hcF8xID0gcmVxdWlyZV9zb3VyY2VfbWFwKCk7CiAgICB2YXIga0ludGVycG9sYXRlUmUgPSAvPCU9KFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0NvbW1lbnRSZSA9IC88JSMoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXNjYXBlUmUgPSAvPCUtKFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0V2YWx1YXRlUmUgPSAvPCUoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrSHRtbEVzY2FwZXMgPSB7CiAgICAgICImIjogIiZhbXA7IiwKICAgICAgIjwiOiAiJmx0OyIsCiAgICAgICI+IjogIiZndDsiLAogICAgICAnIic6ICImcXVvdDsiLAogICAgICAiJyI6ICImIzM5OyIsCiAgICAgICJgIjogIiYjOTY7IgogICAgfTsKICAgIHZhciByZVVuZXNjYXBlZEh0bWwgPSBuZXcgUmVnRXhwKGBbJHtPYmplY3Qua2V5cyhrSHRtbEVzY2FwZXMpLmpvaW4oIiIpfV1gLCAiZyIpOwogICAgZnVuY3Rpb24gX3Bvc2l0aW9uRm9yKGNvbnRlbnQsIG9mZnNldCkgewogICAgICBsZXQgbGluZSA9IDE7CiAgICAgIGxldCBjb2x1bW4gPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9mZnNldCAtIDE7IGkrKykgewogICAgICAgIGlmIChjb250ZW50W2ldID09ICJcbiIpIHsKICAgICAgICAgIGxpbmUrKzsKICAgICAgICAgIGNvbHVtbiA9IDA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbHVtbisrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGxpbmUsCiAgICAgICAgY29sdW1uCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZVBhcnNlcihzb3VyY2VUZXh0LCBmaWxlTmFtZSkgewogICAgICBjb25zdCBjaGlsZHJlbiA9IFtdOwogICAgICBjb25zdCByZUV4cHJlc3Npb25zID0gW2tFc2NhcGVSZSwga0NvbW1lbnRSZSwga0ludGVycG9sYXRlUmUsIGtFdmFsdWF0ZVJlXTsKICAgICAgY29uc3QgcmVEZWxpbWl0ZXJzID0gUmVnRXhwKHJlRXhwcmVzc2lvbnMubWFwKCh4KSA9PiB4LnNvdXJjZSkuam9pbigifCIpICsgInwkIiwgImciKTsKICAgICAgY29uc3QgcGFyc2VkID0gc291cmNlVGV4dC5zcGxpdChyZURlbGltaXRlcnMpOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHN0YXJ0ID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCk7CiAgICAgIGxldCBlbmQ7CiAgICAgIGNvbnN0IGluY3JlbWVudCA9IHJlRXhwcmVzc2lvbnMubGVuZ3RoICsgMTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJzZWQubGVuZ3RoOyBpICs9IGluY3JlbWVudCkgewogICAgICAgIGNvbnN0IFtjb250ZW50LCBlc2NhcGUyLCBjb21tZW50LCBpbnRlcnBvbGF0ZSwgZXZhbHVhdGVdID0gcGFyc2VkLnNsaWNlKGksIGkgKyBpbmNyZW1lbnQpOwogICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29udGVudC5sZW5ndGgpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJjb250ZW50IiwgY29udGVudCwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgICBpZiAoZXNjYXBlMikgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGVzY2FwZTIubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXNjYXBlMi5sZW5ndGggKyA1OwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJlc2NhcGUiLCBleHByZXNzaW9uOiBlc2NhcGUyLCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChjb21tZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29tbWVudC5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBjb21tZW50Lmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbW1lbnQiLCB0ZXh0OiBjb21tZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChpbnRlcnBvbGF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGludGVycG9sYXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGludGVycG9sYXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAga2luZDogImludGVycG9sYXRlIiwKICAgICAgICAgICAgZXhwcmVzc2lvbjogaW50ZXJwb2xhdGUsCiAgICAgICAgICAgIHN0YXJ0LAogICAgICAgICAgICBlbmQKICAgICAgICAgIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChldmFsdWF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGV2YWx1YXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGV2YWx1YXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImV2YWx1YXRlIiwgZXhwcmVzc2lvbjogZXZhbHVhdGUsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBmaWxlTmFtZSwKICAgICAgICBjb250ZW50OiBzb3VyY2VUZXh0LAogICAgICAgIGNoaWxkcmVuCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZUZhc3QoYXN0LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgcmV0dXJuIGAKICAgIHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewogICAgICBvYmogfHwgKG9iaiA9IHt9KTsKICAgICAgbGV0IF9fdDsKICAgICAgbGV0IF9fcCA9ICcnOwogICAgICBjb25zdCBfX2VzY2FwZXMgPSAke0pTT04uc3RyaW5naWZ5KGtIdG1sRXNjYXBlcyl9OwogICAgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CgogICAgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgcmV0dXJuIHMgPyBzLnJlcGxhY2UoX19lc2NhcGVzcmUsIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gX19lc2NhcGVzW2tleV07IH0pIDogJyc7CiAgICAgIH07CiAgICAgIHdpdGggKG9iaikgewogICAgICAgICR7YXN0LmNoaWxkcmVuLm1hcCgobm9kZSkgPT4gewogICAgICAgIHN3aXRjaCAobm9kZS5raW5kKSB7CiAgICAgICAgICBjYXNlICJjb250ZW50IjoKICAgICAgICAgICAgcmV0dXJuIGBfX3AgKz0gJHtKU09OLnN0cmluZ2lmeShub2RlLmNvbnRlbnQpfTtgOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAoKF9fdCA9ICgke25vZGUuZXhwcmVzc2lvbn0pKSA9PSBudWxsKSA/ICcnIDogX190O2A7CiAgICAgICAgICBjYXNlICJlc2NhcGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSBfX2UoJHtub2RlLmV4cHJlc3Npb259KTtgOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5leHByZXNzaW9uOwogICAgICAgIH0KICAgICAgfSkuam9pbigiXG4iKX0KICAgICAgfQoKICAgICAgcmV0dXJuIF9fcDsKICAgIH07CiAgYDsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc291cmNlVXJsID0gYXN0LmZpbGVOYW1lOwogICAgICBjb25zdCBtb2R1bGUzID0gb3B0aW9ucyAmJiBvcHRpb25zLm1vZHVsZSA/ICJtb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0iIDogIiI7CiAgICAgIGNvbnN0IHJlSHRtbEVzY2FwZSA9IHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UucmVwbGFjZSgvWyddL2csICJcXFxcXFwnIik7CiAgICAgIGNvbnN0IHByZWFtYmxlID0gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKDEsIDAsIHNvdXJjZVVybCwgIiIpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCBbCiAgICAgICAgYHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewpgLAogICAgICAgICIgIG9iaiB8fCAob2JqID0ge30pO1xuIiwKICAgICAgICAiICBsZXQgX190O1xuIiwKICAgICAgICAnICBsZXQgX19wID0gIiI7XG4nLAogICAgICAgIGAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CmAsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzcmUgPSBuZXcgUmVnRXhwKCcke3JlSHRtbEVzY2FwZX0nLCAnZycpOwpgLAogICAgICAgIGAKYCwKICAgICAgICBgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7IGAsCiAgICAgICAgYCAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJztgLAogICAgICAgIGAgIH07CmAsCiAgICAgICAgYCAgd2l0aCAob2JqKSB7CmAKICAgICAgXSkpOwogICAgICBjb25zdCBlbmQgPSBhc3QuY2hpbGRyZW4ubGVuZ3RoID8gYXN0LmNoaWxkcmVuW2FzdC5jaGlsZHJlbi5sZW5ndGggLSAxXS5lbmQgOiB7IGxpbmU6IDAsIGNvbHVtbjogMCB9OwogICAgICBjb25zdCBub2RlcyA9IGFzdC5jaGlsZHJlbi5yZWR1Y2UoKGNodW5rLCBub2RlKSA9PiB7CiAgICAgICAgbGV0IGNvZGUyID0gIiI7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wID0gX19wIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5jb250ZW50LnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCAiXG4gICAgKyAiICsgSlNPTi5zdHJpbmdpZnkobGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSkpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIjtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wICs9ICgoX190ID0gIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICcpID09IG51bGwgPyAiIiA6IF9fdCk7XG4nKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gX19lKCIpLAogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiKTtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIlxuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjaHVuay5hZGQobmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgY29kZTIpKTsKICAgICAgfSwgcHJlYW1ibGUpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHNvdXJjZVVybCwgWyIgIH07XG4iLCAiXG4iLCAiICByZXR1cm4gX19wO1xuIiwgIn1cbiJdKSk7CiAgICAgIGNvbnN0IGNvZGUgPSBub2Rlcy50b1N0cmluZ1dpdGhTb3VyY2VNYXAoewogICAgICAgIGZpbGU6IHNvdXJjZVVybCwKICAgICAgICBzb3VyY2VSb290OiBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlUm9vdCB8fCAiLiIKICAgICAgfSk7CiAgICAgIGNvZGUubWFwLnNldFNvdXJjZUNvbnRlbnQoc291cmNlVXJsLCBhc3QuY29udGVudCk7CiAgICAgIHJldHVybiBjb2RlLmNvZGUgKyAiXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIgKyBCdWZmZXIuZnJvbShjb2RlLm1hcC50b1N0cmluZygpKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMoY29udGVudCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlVVJMIHx8ICJlanMiOwogICAgICBjb25zdCBhc3QgPSB0ZW1wbGF0ZVBhcnNlcihjb250ZW50LCBzb3VyY2VVcmwpOwogICAgICBsZXQgc291cmNlOwogICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnNvdXJjZU1hcCkgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpOwogICAgICB9IGVsc2UgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGNvbnN0IGZuID0gRnVuY3Rpb24oIm1vZHVsZSIsIHNvdXJjZSk7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gb3B0aW9ucy5tb2R1bGUgPT09IHRydWUgPyB7IGV4cG9ydHM6IHt9IH0gOiBvcHRpb25zLm1vZHVsZSA6IG51bGw7CiAgICAgIGNvbnN0IHJlc3VsdCA9IGZuKG1vZHVsZTMpOwogICAgICByZXN1bHQuc291cmNlID0gc291cmNlOwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzCnZhciByZXF1aXJlX3BhcnRpYWxseV9vcmRlcmVkX3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanMKdmFyIHJlcXVpcmVfcHJpb3JpdHlfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gdm9pZCAwOwogICAgdmFyIFByaW9yaXR5UXVldWUgPSBjbGFzcyB7CiAgICAgIF9jb21wYXJhdG9yOwogICAgICBfaXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2NvbXBhcmF0b3IpIHsKICAgICAgICB0aGlzLl9jb21wYXJhdG9yID0gX2NvbXBhcmF0b3I7CiAgICAgIH0KICAgICAgY2xlYXIoKSB7CiAgICAgICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgfQogICAgICBwdXNoKGl0ZW0pIHsKICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2l0ZW1zLmZpbmRJbmRleCgoZXhpc3RpbmcpID0+IHRoaXMuX2NvbXBhcmF0b3IoaXRlbSwgZXhpc3RpbmcpIDw9IDApOwogICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2goaXRlbSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnNwbGljZShpbmRleCwgMCwgaXRlbSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBvcCgpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc3BsaWNlKDAsIDEpWzBdOwogICAgICB9CiAgICAgIHBlZWsoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zWzBdOwogICAgICB9CiAgICAgIGdldCBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5sZW5ndGg7CiAgICAgIH0KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaW9yaXR5UXVldWUgPSBQcmlvcml0eVF1ZXVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSBpc1Byb21pc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2Uob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqLnRoZW4gPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qcwp2YXIgcmVxdWlyZV91dGlsczMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcwp2YXIgcmVxdWlyZV92aXNpdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXNpdEpzb24gPSB2aXNpdEpzb247CiAgICBleHBvcnRzMi52aXNpdEpzb25TY2hlbWEgPSB2aXNpdEpzb25TY2hlbWE7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBwb2ludGVyXzEgPSByZXF1aXJlX3BvaW50ZXIoKTsKICAgIGZ1bmN0aW9uIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiAhPT0gIm9iamVjdCIgfHwgc2NoZW1hMiA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hMi50eXBlID09ICJvYmplY3QiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgJiYgdHlwZW9mIHNjaGVtYTIucHJvcGVydGllc1trZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hMi5wcm9wZXJ0aWVzW2tleV07CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMi5hZGRpdGlvbmFsUHJvcGVydGllcyA9PSAib2JqZWN0IikgewogICAgICAgICAgcmV0dXJuIHNjaGVtYTIuYWRkaXRpb25hbFByb3BlcnRpZXM7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiIHx8IHNjaGVtYTIudHlwZSA9PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiID8gc2NoZW1hMi5pdGVtcyA6IHZvaWQgMDsKICAgICAgfQogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogICAgZnVuY3Rpb24gX3Zpc2l0SnNvblJlY3Vyc2l2ZShqc29uMiwgdmlzaXRvciwgcHRyLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCkgewogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSB8fCBzY2hlbWEyID09PSBmYWxzZSkgewogICAgICAgIHNjaGVtYTIgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIgJiYgc2NoZW1hMi5oYXNPd25Qcm9wZXJ0eSgiJHJlZiIpICYmIHR5cGVvZiBzY2hlbWEyWyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICBpZiAocmVmUmVzb2x2ZXIpIHsKICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVmUmVzb2x2ZXIoc2NoZW1hMlsiJHJlZiJdLCBjb250ZXh0KTsKICAgICAgICAgIHNjaGVtYTIgPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICBjb250ZXh0ID0gcmVzb2x2ZWQuY29udGV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3QgdmFsdWUgPSB2aXNpdG9yKGpzb24yLCBwdHIsIHNjaGVtYTIsIHJvb3QpOwogICAgICByZXR1cm4gKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKSh2YWx1ZSkgPyB2YWx1ZSA6ICgwLCByeGpzXzEub2YpKHZhbHVlKSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHZhbHVlMikgPT4gewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlMikpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKSh2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKGl0ZW0sIGkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoaXRlbSwgdmlzaXRvciwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKHB0ciwgIiIgKyBpKSwgX2dldE9iamVjdFN1YlNjaGVtYShzY2hlbWEyLCAiIiArIGkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB2YWx1ZTJbaV0gPSB4KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlMiA9PSAib2JqZWN0IiAmJiB2YWx1ZTIgIT09IG51bGwpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZTIpKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChrZXkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUodmFsdWUyW2tleV0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsIGtleSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbHVlMiwga2V5KTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLndyaXRhYmxlICYmIHZhbHVlMltrZXldICE9PSB4KSB7CiAgICAgICAgICAgICAgICB2YWx1ZTJba2V5XSA9IHg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodmFsdWUyKTsKICAgICAgICB9CiAgICAgIH0pKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvbihqc29uMiwgdmlzaXRvciwgc2NoZW1hMiwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbjIsIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiB2aXNpdEpzb25TY2hlbWEoc2NoZW1hMiwgdmlzaXRvcikgewogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UgfHwgc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBjb25zdCBrZXl3b3JkcyA9IHsKICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgY29udGFpbnM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgICBub3Q6IHRydWUKICAgICAgfTsKICAgICAgY29uc3QgYXJyYXlLZXl3b3JkcyA9IHsKICAgICAgICBpdGVtczogdHJ1ZSwKICAgICAgICBhbGxPZjogdHJ1ZSwKICAgICAgICBhbnlPZjogdHJ1ZSwKICAgICAgICBvbmVPZjogdHJ1ZQogICAgICB9OwogICAgICBjb25zdCBwcm9wc0tleXdvcmRzID0gewogICAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICAgIHByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlLAogICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgIH07CiAgICAgIGZ1bmN0aW9uIF90cmF2ZXJzZShzY2hlbWEzLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KSB7CiAgICAgICAgaWYgKHNjaGVtYTMgJiYgdHlwZW9mIHNjaGVtYTMgPT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkoc2NoZW1hMykpIHsKICAgICAgICAgIHZpc2l0b3Ioc2NoZW1hMywganNvblB0ciwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCk7CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhzY2hlbWEzKSkgewogICAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEzW2tleV07CiAgICAgICAgICAgIGlmIChrZXkgaW4gcHJvcHNLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIG9mIE9iamVjdC5rZXlzKHNjaCkpIHsKICAgICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtwcm9wXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgcHJvcCksIHJvb3RTY2hlbWEsIHNjaGVtYTMsIHByb3ApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4ga2V5d29yZHMpIHsKICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5KSwgcm9vdFNjaGVtYSwgc2NoZW1hMywga2V5KTsKICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX3RyYXZlcnNlKHNjaGVtYTIsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3JlZ2lzdHJ5LmpzCnZhciByZXF1aXJlX3JlZ2lzdHJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Db3JlU2NoZW1hUmVnaXN0cnkgPSBleHBvcnRzMi5TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfYWp2KCkpOwogICAgdmFyIGFqdl9mb3JtYXRzXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZV9kaXN0KCkpOwogICAgdmFyIGh0dHAgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgiaHR0cCIpKTsKICAgIHZhciBodHRwcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJodHRwcyIpKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFVybCA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJ1cmwiKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzMygpOwogICAgdmFyIHV0aWxzXzIgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgdXRpbGl0eV8xID0gcmVxdWlyZV91dGlsaXR5KCk7CiAgICB2YXIgdmlzaXRvcl8xID0gcmVxdWlyZV92aXNpdG9yKCk7CiAgICB2YXIgU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIF9TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGVycm9yczsKICAgICAgY29uc3RydWN0b3IoZXJyb3JzLCBiYXNlTWVzc2FnZSA9ICJTY2hlbWEgdmFsaWRhdGlvbiBmYWlsZWQgd2l0aCB0aGUgZm9sbG93aW5nIGVycm9yczoiKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgc3VwZXIoIlNjaGVtYSB2YWxpZGF0aW9uIGZhaWxlZC4iKTsKICAgICAgICAgIHRoaXMuZXJyb3JzID0gW107CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gX1NjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24uY3JlYXRlTWVzc2FnZXMoZXJyb3JzKTsKICAgICAgICBzdXBlcihgJHtiYXNlTWVzc2FnZX0KICAke21lc3NhZ2VzLmpvaW4oIlxuICAiKX1gKTsKICAgICAgICB0aGlzLmVycm9ycyA9IGVycm9yczsKICAgICAgfQogICAgICBzdGF0aWMgY3JlYXRlTWVzc2FnZXMoZXJyb3JzKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGVycm9ycy5tYXAoKGVycikgPT4gewogICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgRGF0YSBwYXRoICR7SlNPTi5zdHJpbmdpZnkoZXJyLmluc3RhbmNlUGF0aCl9ICR7ZXJyLm1lc3NhZ2V9YDsKICAgICAgICAgIGlmIChlcnIucGFyYW1zKSB7CiAgICAgICAgICAgIHN3aXRjaCAoZXJyLmtleXdvcmQpIHsKICAgICAgICAgICAgICBjYXNlICJhZGRpdGlvbmFsUHJvcGVydGllcyI6CiAgICAgICAgICAgICAgICBtZXNzYWdlICs9IGAoJHtlcnIucGFyYW1zLmFkZGl0aW9uYWxQcm9wZXJ0eX0pYDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgImVudW0iOgogICAgICAgICAgICAgICAgbWVzc2FnZSArPSBgLiBBbGxvd2VkIHZhbHVlcyBhcmU6ICR7ZXJyLnBhcmFtcy5hbGxvd2VkVmFsdWVzPy5tYXAoKHYpID0+IGAiJHt2fSJgKS5qb2luKCIsICIpfWA7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIG1lc3NhZ2UgKyAiLiI7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG1lc3NhZ2VzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IFNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb247CiAgICB2YXIgQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gY2xhc3MgX0NvcmVTY2hlbWFSZWdpc3RyeSB7CiAgICAgIF9hanY7CiAgICAgIF91cmlDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF91cmlIYW5kbGVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9wcmUgPSBuZXcgdXRpbHNfMS5QYXJ0aWFsbHlPcmRlcmVkU2V0KCk7CiAgICAgIF9wb3N0ID0gbmV3IHV0aWxzXzEuUGFydGlhbGx5T3JkZXJlZFNldCgpOwogICAgICBfY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSBmYWxzZTsKICAgICAgX3Byb21wdFByb3ZpZGVyOwogICAgICBfc291cmNlTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoZm9ybWF0cyA9IFtdKSB7CiAgICAgICAgdGhpcy5fYWp2ID0gbmV3IGFqdl8xLmRlZmF1bHQoewogICAgICAgICAgc3RyaWN0OiBmYWxzZSwKICAgICAgICAgIGxvYWRTY2hlbWE6ICh1cmkpID0+IHRoaXMuX2ZldGNoKHVyaSksCiAgICAgICAgICBwYXNzQ29udGV4dDogdHJ1ZQogICAgICAgIH0pOwogICAgICAgICgwLCBhanZfZm9ybWF0c18xLmRlZmF1bHQpKHRoaXMuX2Fqdik7CiAgICAgICAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykgewogICAgICAgICAgdGhpcy5hZGRGb3JtYXQoZm9ybWF0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXN5bmMgX2ZldGNoKHVyaSkgewogICAgICAgIGNvbnN0IG1heWJlU2NoZW1hID0gdGhpcy5fdXJpQ2FjaGUuZ2V0KHVyaSk7CiAgICAgICAgaWYgKG1heWJlU2NoZW1hKSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTY2hlbWE7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgaGFuZGxlciBvZiB0aGlzLl91cmlIYW5kbGVycykgewogICAgICAgICAgbGV0IGhhbmRsZXJSZXN1bHQgPSBoYW5kbGVyKHVyaSk7CiAgICAgICAgICBpZiAoaGFuZGxlclJlc3VsdCA9PT0gbnVsbCB8fCBoYW5kbGVyUmVzdWx0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKGhhbmRsZXJSZXN1bHQpKSB7CiAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhhbmRsZXJSZXN1bHQpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCBoYW5kbGVyUmVzdWx0OwogICAgICAgICAgdGhpcy5fdXJpQ2FjaGUuc2V0KHVyaSwgdmFsdWUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewogICAgICAgICAgY29uc3QgdXJsMyA9IG5ldyBVcmwuVVJMKHVyaSk7CiAgICAgICAgICBjb25zdCBjbGllbnQgPSB1cmwzLnByb3RvY29sID09PSAiaHR0cHM6IiA/IGh0dHBzIDogaHR0cDsKICAgICAgICAgIGNsaWVudC5nZXQodXJsMywgKHJlcykgPT4gewogICAgICAgICAgICBpZiAoIXJlcy5zdGF0dXNDb2RlIHx8IHJlcy5zdGF0dXNDb2RlID49IDMwMCkgewogICAgICAgICAgICAgIHJlcy5yZXN1bWUoKTsKICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBSZXF1ZXN0IGZhaWxlZC4gU3RhdHVzIENvZGU6ICR7cmVzLnN0YXR1c0NvZGV9YCkpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcy5zZXRFbmNvZGluZygidXRmOCIpOwogICAgICAgICAgICAgIGxldCBkYXRhID0gIiI7CiAgICAgICAgICAgICAgcmVzLm9uKCJkYXRhIiwgKGNodW5rKSA9PiB7CiAgICAgICAgICAgICAgICBkYXRhICs9IGNodW5rOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJlcy5vbigiZW5kIiwgKCkgPT4gewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QganNvbjIgPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICAgICAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCBqc29uMik7CiAgICAgICAgICAgICAgICAgIHJlc29sdmUoanNvbjIpOwogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgdHJhbnNmb3JtYXRpb24gc3RlcCBiZWZvcmUgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3J9IHZpc2l0b3IgVGhlIHZpc2l0b3IgdG8gdHJhbnNmb3JtIGV2ZXJ5IHZhbHVlLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yW119IGRlcHMgQSBsaXN0IG9mIG90aGVyIHZpc2l0b3JzIHRvIHJ1biBiZWZvcmUuCiAgICAgICAqLwogICAgICBhZGRQcmVUcmFuc2Zvcm0odmlzaXRvciwgZGVwcykgewogICAgICAgIHRoaXMuX3ByZS5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHRyYW5zZm9ybWF0aW9uIHN0ZXAgYWZ0ZXIgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uIFRoZSBKU09OIHdpbGwgbm90IGJlIHZhbGlkYXRlZAogICAgICAgKiBhZnRlciB0aGUgUE9TVCwgc28gaWYgdHJhbnNmb3JtYXRpb25zIGFyZSBub3QgY29tcGF0aWJsZSB3aXRoIHRoZSBTY2hlbWEgaXQgd2lsbCBub3QgcmVzdWx0CiAgICAgICAqIGluIGFuIGVycm9yLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yfSB2aXNpdG9yIFRoZSB2aXNpdG9yIHRvIHRyYW5zZm9ybSBldmVyeSB2YWx1ZS4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcltdfSBkZXBzIEEgbGlzdCBvZiBvdGhlciB2aXNpdG9ycyB0byBydW4gYmVmb3JlLgogICAgICAgKi8KICAgICAgYWRkUG9zdFRyYW5zZm9ybSh2aXNpdG9yLCBkZXBzKSB7CiAgICAgICAgdGhpcy5fcG9zdC5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgX3Jlc29sdmVyKHJlZiwgdmFsaWRhdGUpIHsKICAgICAgICBpZiAoIXZhbGlkYXRlIHx8ICFyZWYpIHsKICAgICAgICAgIHJldHVybiB7fTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hMiA9IHZhbGlkYXRlLnNjaGVtYUVudi5yb290LnNjaGVtYTsKICAgICAgICBjb25zdCBpZCA9IHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IiA/IHNjaGVtYTIuJGlkIDogbnVsbDsKICAgICAgICBsZXQgZnVsbFJlZmVyZW5jZSA9IHJlZjsKICAgICAgICBpZiAodHlwZW9mIGlkID09PSAic3RyaW5nIikgewogICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IFVybC5yZXNvbHZlKGlkLCByZWYpOwogICAgICAgICAgaWYgKHJlZi5zdGFydHNXaXRoKCIjIikpIHsKICAgICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IGlkICsgZnVsbFJlZmVyZW5jZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgcmVzb2x2ZWRTY2hlbWEgPSB0aGlzLl9hanYuZ2V0U2NoZW1hKGZ1bGxSZWZlcmVuY2UpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjb250ZXh0OiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hRW52LnZhbGlkYXRlLAogICAgICAgICAgc2NoZW1hOiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRmxhdHRlbiB0aGUgU2NoZW1hLCByZXNvbHZpbmcgYW5kIHJlcGxhY2luZyBhbGwgdGhlIHJlZnMuIE1ha2VzIGl0IGludG8gYSBzeW5jaHJvbm91cyBzY2hlbWEKICAgICAgICogdGhhdCBpcyBhbHNvIGVhc2llciB0byB0cmF2ZXJzZS4gRG9lcyBub3QgY2FjaGUgdGhlIHJlc3VsdC4KICAgICAgICoKICAgICAgICogUHJvZHVjaW5nIGEgZmxhdHRlbiBzY2hlbWEgZG9jdW1lbnQgZG9lcyBub3QgaW4gYWxsIGNhc2VzIHByb2R1Y2UgYSBzY2hlbWEgd2l0aCBpZGVudGljYWwgYmVoYXZpb3IgdG8gdGhlIG9yaWdpbmFsLgogICAgICAgKiBTZWU6IGh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMTktMDkvanNvbi1zY2hlbWEtY29yZS5odG1sI3JmYy5hcHBlbmRpeC5CLjIKICAgICAgICoKICAgICAgICogQHBhcmFtIHNjaGVtYSBUaGUgc2NoZW1hIG9yIFVSSSB0byBmbGF0dGVuLgogICAgICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIG9mIHRoZSBmbGF0dGVuZWQgc2NoZW1hIG9iamVjdC4KICAgICAgICogQHByaXZhdGUgc2luY2UgMTEuMiB3aXRob3V0IHJlcGxhY2VtZW50LgogICAgICAgKi8KICAgICAgYXN5bmMgXHUwMjc1ZmxhdHRlbihzY2hlbWEyKSB7CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEyKTsKICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEyKTsKICAgICAgICBjb25zdCBzZWxmMiA9IHRoaXM7CiAgICAgICAgZnVuY3Rpb24gdmlzaXRvcihjdXJyZW50LCBwb2ludGVyLCBwYXJlbnRTY2hlbWEsIGluZGV4KSB7CiAgICAgICAgICBpZiAoY3VycmVudCAmJiBwYXJlbnRTY2hlbWEgJiYgaW5kZXggJiYgKDAsIHV0aWxzXzIuaXNKc29uT2JqZWN0KShjdXJyZW50KSAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoY3VycmVudCwgIiRyZWYiKSAmJiB0eXBlb2YgY3VycmVudFsiJHJlZiJdID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gc2VsZjIuX3Jlc29sdmVyKGN1cnJlbnRbIiRyZWYiXSwgdmFsaWRhdGUpOwogICAgICAgICAgICBpZiAocmVzb2x2ZWQuc2NoZW1hKSB7CiAgICAgICAgICAgICAgcGFyZW50U2NoZW1hW2luZGV4XSA9IHJlc29sdmVkLnNjaGVtYTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWFDb3B5ID0gKDAsIHV0aWxzXzEuZGVlcENvcHkpKHZhbGlkYXRlLnNjaGVtYSk7CiAgICAgICAgKDAsIHZpc2l0b3JfMS52aXNpdEpzb25TY2hlbWEpKHNjaGVtYUNvcHksIHZpc2l0b3IpOwogICAgICAgIHJldHVybiBzY2hlbWFDb3B5OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb21waWxlIGFuZCByZXR1cm4gYSB2YWxpZGF0aW9uIGZ1bmN0aW9uIGZvciB0aGUgU2NoZW1hLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gc2NoZW1hIFRoZSBzY2hlbWEgdG8gdmFsaWRhdGUuIElmIGEgc3RyaW5nLCB3aWxsIGZldGNoIHRoZSBzY2hlbWEgYmVmb3JlIGNvbXBpbGluZyBpdAogICAgICAgKiAodXNpbmcgc2NoZW1hIGFzIGEgVVJJKS4KICAgICAgICovCiAgICAgIGFzeW5jIGNvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fY29tcGlsZShzY2hlbWEyKTsKICAgICAgICByZXR1cm4gKHZhbHVlLCBvcHRpb25zKSA9PiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXN5bmMgX2NvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEpID0+ICh7IHN1Y2Nlc3M6IHNjaGVtYTIsIGRhdGEgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUluZm8gPSB7CiAgICAgICAgICBzbWFydERlZmF1bHRSZWNvcmQ6IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCksCiAgICAgICAgICBwcm9tcHREZWZpbml0aW9uczogW10KICAgICAgICB9OwogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hMik7CiAgICAgICAgbGV0IHZhbGlkYXRvcjsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbyA9IHNjaGVtYUluZm87CiAgICAgICAgICB2YWxpZGF0b3IgPSB0aGlzLl9hanYuY29tcGlsZShzY2hlbWEyKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5NaXNzaW5nUmVmRXJyb3IpKSB7CiAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICB9CiAgICAgICAgICB2YWxpZGF0b3IgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYTIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEsIG9wdGlvbnMpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25PcHRpb25zID0gewogICAgICAgICAgICB3aXRoUHJvbXB0czogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQb3N0VHJhbnNmb3JtczogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQcmVUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICAuLi5vcHRpb25zCiAgICAgICAgICB9OwogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkNvbnRleHQgPSB7CiAgICAgICAgICAgIHByb21wdEZpZWxkc1dpdGhWYWx1ZTogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVByZVRyYW5zZm9ybXMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCB2aXNpdG9yIG9mIHRoaXMuX3ByZS52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlTbWFydERlZmF1bHRzKGRhdGEsIHNjaGVtYUluZm8uc21hcnREZWZhdWx0UmVjb3JkKTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy53aXRoUHJvbXB0cykgewogICAgICAgICAgICBjb25zdCB2aXNpdG9yID0gKHZhbHVlLCBwb2ludGVyKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5hZGQocG9pbnRlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYTIsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb25zID0gc2NoZW1hSW5mby5wcm9tcHREZWZpbml0aW9ucy5maWx0ZXIoKGRlZikgPT4gIXZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5oYXMoZGVmLmlkKSk7CiAgICAgICAgICAgIGlmIChkZWZpbml0aW9ucy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlQcm9tcHRzKGRhdGEsIGRlZmluaXRpb25zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHZhbGlkYXRvci5jYWxsKHZhbGlkYXRpb25Db250ZXh0LCBkYXRhKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzcywgZXJyb3JzOiB2YWxpZGF0b3IuZXJyb3JzID8/IFtdIH07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuVmFsaWRhdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogZmFsc2UsIGVycm9yczogZXJyb3IuZXJyb3JzIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMuYXBwbHlQb3N0VHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcG9zdC52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogdHJ1ZSB9OwogICAgICAgIH07CiAgICAgIH0KICAgICAgYWRkRm9ybWF0KGZvcm1hdCkgewogICAgICAgIHRoaXMuX2Fqdi5hZGRGb3JtYXQoZm9ybWF0Lm5hbWUsIGZvcm1hdC5mb3JtYXR0ZXIpOwogICAgICB9CiAgICAgIGFkZFNtYXJ0RGVmYXVsdFByb3ZpZGVyKHNvdXJjZSwgcHJvdmlkZXIpIHsKICAgICAgICBpZiAodGhpcy5fc291cmNlTWFwLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Ioc291cmNlKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fc291cmNlTWFwLnNldChzb3VyY2UsIHByb3ZpZGVyKTsKICAgICAgICBpZiAoIXRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQpIHsKICAgICAgICAgIHRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSB0cnVlOwogICAgICAgICAgdGhpcy5fYWp2LmFkZEtleXdvcmQoewogICAgICAgICAgICBrZXl3b3JkOiAiJGRlZmF1bHQiLAogICAgICAgICAgICBlcnJvcnM6IGZhbHNlLAogICAgICAgICAgICB2YWxpZDogdHJ1ZSwKICAgICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIF9wYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICAgIGlmIChjb21waWxhdGlvblNjaGVtSW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGF0aEFycmF5ID0gdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCk7CiAgICAgICAgICAgICAgY29tcGlsYXRpb25TY2hlbUluZm8uc21hcnREZWZhdWx0UmVjb3JkLnNldChKU09OLnN0cmluZ2lmeShwYXRoQXJyYXkpLCBzY2hlbWEyKTsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICIkc291cmNlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICByZXF1aXJlZDogWyIkc291cmNlIl0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlZ2lzdGVyVXJpSGFuZGxlcihoYW5kbGVyKSB7CiAgICAgICAgdGhpcy5fdXJpSGFuZGxlcnMuYWRkKGhhbmRsZXIpOwogICAgICB9CiAgICAgIHVzZVByb21wdFByb3ZpZGVyKHByb3ZpZGVyKSB7CiAgICAgICAgY29uc3QgaXNTZXR1cCA9ICEhdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgdGhpcy5fcHJvbXB0UHJvdmlkZXIgPSBwcm92aWRlcjsKICAgICAgICBpZiAoaXNTZXR1cCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1wcm9tcHQiLAogICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpID0+IHsKICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICBpZiAoIWNvbXBpbGF0aW9uU2NoZW1JbmZvKSB7CiAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgcGF0aCA9ICIvIiArIHRoaXMubm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpLmpvaW4oIi8iKTsKICAgICAgICAgICAgbGV0IHR5cGUyOwogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGxldCBtZXNzYWdlOwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMi5tZXNzYWdlOwogICAgICAgICAgICAgIHR5cGUyID0gc2NoZW1hMi50eXBlOwogICAgICAgICAgICAgIGl0ZW1zID0gc2NoZW1hMi5pdGVtczsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShwYXJlbnRTY2hlbWEpOwogICAgICAgICAgICBpZiAoIXR5cGUyKSB7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYm9vbGVhbiIpKSB7CiAgICAgICAgICAgICAgICB0eXBlMiA9ICJjb25maXJtYXRpb24iOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZW51bSkpIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImxpc3QiOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpICYmIHBhcmVudFNjaGVtYS5pdGVtcyAmJiBBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZTIgPSAibGlzdCI7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImlucHV0IjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG11bHRpc2VsZWN0OwogICAgICAgICAgICBpZiAodHlwZTIgPT09ICJsaXN0IikgewogICAgICAgICAgICAgIG11bHRpc2VsZWN0ID0gc2NoZW1hMi5tdWx0aXNlbGVjdCA9PT0gdm9pZCAwID8gcHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpIDogc2NoZW1hMi5tdWx0aXNlbGVjdDsKICAgICAgICAgICAgICBjb25zdCBlbnVtVmFsdWVzID0gbXVsdGlzZWxlY3QgPyBwYXJlbnRTY2hlbWEuaXRlbXMgJiYgcGFyZW50U2NoZW1hLml0ZW1zLmVudW0gOiBwYXJlbnRTY2hlbWEuZW51bTsKICAgICAgICAgICAgICBpZiAoIWl0ZW1zICYmIEFycmF5LmlzQXJyYXkoZW51bVZhbHVlcykpIHsKICAgICAgICAgICAgICAgIGl0ZW1zID0gW107CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIGVudW1WYWx1ZXMpIHsKICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAic3RyaW5nIikgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2godmFsdWUpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goeyBsYWJlbDogdmFsdWUudG9TdHJpbmcoKSwgdmFsdWUgfSk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbiA9IHsKICAgICAgICAgICAgICBpZDogcGF0aCwKICAgICAgICAgICAgICB0eXBlOiB0eXBlMiwKICAgICAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgICAgIHJhdzogc2NoZW1hMiwKICAgICAgICAgICAgICBpdGVtcywKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCwKICAgICAgICAgICAgICBwcm9wZXJ0eVR5cGVzLAogICAgICAgICAgICAgIGRlZmF1bHQ6IHR5cGVvZiBwYXJlbnRTY2hlbWEuZGVmYXVsdCA9PSAib2JqZWN0IiAmJiBwYXJlbnRTY2hlbWEuZGVmYXVsdCAhPT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZGVmYXVsdCkgPyB2b2lkIDAgOiBwYXJlbnRTY2hlbWEuZGVmYXVsdCwKICAgICAgICAgICAgICBhc3luYyB2YWxpZGF0b3IoZGF0YSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaXQuc2VsZi52YWxpZGF0ZShwYXJlbnRTY2hlbWEsIGRhdGEpOwogICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpdC5zZWxmLmVycm9ycz8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0LnNlbGYuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkVycm9yID0gZTsKICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsaWRhdGlvbkVycm9yLmVycm9ycykgJiYgdmFsaWRhdGlvbkVycm9yLmVycm9ycy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvbkVycm9yLmVycm9yc1swXS5tZXNzYWdlOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICBjb21waWxhdGlvblNjaGVtSW5mby5wcm9tcHREZWZpbml0aW9ucy5wdXNoKGRlZmluaXRpb24pOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaWYgKHRoaXMgJiYgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUpIHsKICAgICAgICAgICAgICAgIHRoaXMucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9LAogICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICBvbmVPZjogWwogICAgICAgICAgICAgIHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgICAgICAgICAgICJtZXNzYWdlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyJtZXNzYWdlIl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBhc3luYyBfYXBwbHlQcm9tcHRzKGRhdGEsIHByb21wdHMpIHsKICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuX3Byb21wdFByb3ZpZGVyOwogICAgICAgIGlmICghcHJvdmlkZXIpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgYW5zd2VycyA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHJ4anNfMS5mcm9tKShwcm92aWRlcihwcm9tcHRzKSkpOwogICAgICAgIGZvciAoY29uc3QgcGF0aCBpbiBhbnN3ZXJzKSB7CiAgICAgICAgICBjb25zdCBwYXRoRnJhZ21lbnRzID0gcGF0aC5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIHBhdGhGcmFnbWVudHMsIGFuc3dlcnNbcGF0aF0sIG51bGwsIHZvaWQgMCwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN0YXRpYyBfc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUsIHBhcmVudCA9IG51bGwsIHBhcmVudFByb3BlcnR5LCBmb3JjZSkgewogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBmcmFnbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IGZyYWdtZW50c1tpbmRleF07CiAgICAgICAgICBpZiAoL15pXGQrJC8udGVzdChmcmFnbWVudCkpIHsKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvciAobGV0IGRhdGFJbmRleCA9IDA7IGRhdGFJbmRleCA8IGRhdGEubGVuZ3RoOyBkYXRhSW5kZXgrKykgewogICAgICAgICAgICAgIF9Db3JlU2NoZW1hUmVnaXN0cnkuX3NldChkYXRhW2RhdGFJbmRleF0sIGZyYWdtZW50cy5zbGljZShpbmRleCArIDEpLCB2YWx1ZSwgZGF0YSwgYCR7ZGF0YUluZGV4fWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGF0YSAmJiBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50UHJvcGVydHkpIHsKICAgICAgICAgICAgZGF0YSA9IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB7fTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcmVudCA9IGRhdGE7CiAgICAgICAgICBwYXJlbnRQcm9wZXJ0eSA9IGZyYWdtZW50OwogICAgICAgICAgZGF0YSA9IGRhdGFbZnJhZ21lbnRdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudFByb3BlcnR5ICYmIChmb3JjZSB8fCBwYXJlbnRbcGFyZW50UHJvcGVydHldID09PSB2b2lkIDApKSB7CiAgICAgICAgICBwYXJlbnRbcGFyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc21hcnREZWZhdWx0cykgewogICAgICAgIGZvciAoY29uc3QgW3BvaW50ZXIsIHNjaGVtYTJdIG9mIHNtYXJ0RGVmYXVsdHMuZW50cmllcygpKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSBKU09OLnBhcnNlKHBvaW50ZXIpOwogICAgICAgICAgY29uc3Qgc291cmNlID0gdGhpcy5fc291cmNlTWFwLmdldChzY2hlbWEyLiRzb3VyY2UpOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2Uoc2NoZW1hMik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSkgewogICAgICAgICAgICB2YWx1ZSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkodmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUpOwogICAgICAgIH0KICAgICAgfQogICAgICB1c2VYRGVwcmVjYXRlZFByb3ZpZGVyKG9uVXNhZ2UpIHsKICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1kZXByZWNhdGVkIiwKICAgICAgICAgIHZhbGlkYXRlOiAoc2NoZW1hMiwgX2RhdGEsIF9wYXJlbnRTY2hlbWEsIGRhdGFDeHQpID0+IHsKICAgICAgICAgICAgaWYgKHNjaGVtYTIpIHsKICAgICAgICAgICAgICBvblVzYWdlKGBPcHRpb24gIiR7ZGF0YUN4dD8ucGFyZW50RGF0YVByb3BlcnR5fSIgaXMgZGVwcmVjYXRlZCR7dHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIgPyAiOiAiICsgc2NoZW1hMiA6ICIuIn1gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcnM6IGZhbHNlCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpIHsKICAgICAgICByZXR1cm4gaXQuZGF0YVBhdGhBcnIuc2xpY2UoMSwgaXQuZGF0YUxldmVsICsgMSkubWFwKChwKSA9PiB0eXBlb2YgcCA9PT0gIm51bWJlciIgPyBwIDogcC5zdHIucmVwbGFjZSgvIi9nLCAiIikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gQ29yZVNjaGVtYVJlZ2lzdHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzCnZhciByZXF1aXJlX3NjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0pzb25TY2hlbWEgPSBpc0pzb25TY2hlbWE7CiAgICBleHBvcnRzMi5tZXJnZVNjaGVtYXMgPSBtZXJnZVNjaGVtYXM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIGZ1bmN0aW9uIGlzSnNvblNjaGVtYSh2YWx1ZSkgewogICAgICByZXR1cm4gKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgdmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSB0cnVlOwogICAgfQogICAgZnVuY3Rpb24gbWVyZ2VTY2hlbWFzKC4uLnNjaGVtYXMpIHsKICAgICAgcmV0dXJuIHNjaGVtYXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiB7CiAgICAgICAgaWYgKGN1cnIgPT09IHZvaWQgMCkgewogICAgICAgICAgcmV0dXJuIHByZXY7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2ID09PSBmYWxzZSB8fCBjdXJyID09PSBmYWxzZSkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSBpZiAocHJldiA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIGN1cnI7CiAgICAgICAgfSBlbHNlIGlmIChjdXJyID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJldi5hbGxPZikpIHsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1cnIuYWxsT2YpKSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgY3Vycl0gfTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbcHJldiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCBjdXJyXSB9OwogICAgICAgIH0KICAgICAgfSwgdHJ1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcwp2YXIgcmVxdWlyZV9zY2hlbWEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHZvaWQgMDsKICAgIHZhciB0cmFuc2Zvcm1zID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtcygpKTsKICAgIGV4cG9ydHMyLnRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1zOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BvaW50ZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmVnaXN0cnkoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Zpc2l0b3IoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdXRpbGl0eSgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL2luZGV4LmpzCnZhciByZXF1aXJlX2pzb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBzY2hlbWEyID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hMigpKTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHNjaGVtYTI7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlscygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbG9nZ2VyLmpzCnZhciByZXF1aXJlX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZW50LmpzCnZhciByZXF1aXJlX2luZGVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIGluZGVudGF0aW9uTWFwID0ge307CiAgICB2YXIgSW5kZW50TG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBpbmRlbnRhdGlvbiA9ICIgICIpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSB8fCBbIiJdOwogICAgICAgIGNvbnN0IGluZGVudE1hcCA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gdGhpcy5fb2JzZXJ2YWJsZS5waXBlKCgwLCByeGpzXzEubWFwKSgoZW50cnkpID0+IHsKICAgICAgICAgIGNvbnN0IGwgPSBlbnRyeS5wYXRoLmZpbHRlcigoeCkgPT4gISF4KS5sZW5ndGg7CiAgICAgICAgICBpZiAobCA+PSBpbmRlbnRNYXAubGVuZ3RoKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50ID0gaW5kZW50TWFwW2luZGVudE1hcC5sZW5ndGggLSAxXTsKICAgICAgICAgICAgd2hpbGUgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICAgIGN1cnJlbnQgKz0gaW5kZW50YXRpb247CiAgICAgICAgICAgICAgaW5kZW50TWFwLnB1c2goY3VycmVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGVudHJ5Lm1lc3NhZ2UgPSBpbmRlbnRNYXBbbF0gKyBlbnRyeS5tZXNzYWdlLnNwbGl0KC9cbi8pLmpvaW4oIlxuIiArIGluZGVudE1hcFtsXSk7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gSW5kZW50TG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbGV2ZWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxldmVsQ2FwTG9nZ2VyID0gZXhwb3J0czIuTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSB2b2lkIDA7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIExldmVsVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgX0xldmVsVHJhbnNmb3JtTG9nZ2VyIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgbmFtZTsKICAgICAgcGFyZW50OwogICAgICBsZXZlbFRyYW5zZm9ybTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxUcmFuc2Zvcm0pIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbFRyYW5zZm9ybSA9IGxldmVsVHJhbnNmb3JtOwogICAgICB9CiAgICAgIGxvZyhsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiBzdXBlci5sb2codGhpcy5sZXZlbFRyYW5zZm9ybShsZXZlbCksIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIobmFtZSwgdGhpcywgdGhpcy5sZXZlbFRyYW5zZm9ybSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IExldmVsVHJhbnNmb3JtTG9nZ2VyOwogICAgdmFyIExldmVsQ2FwTG9nZ2VyID0gY2xhc3MgX0xldmVsQ2FwTG9nZ2VyIGV4dGVuZHMgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsQ2FwOwogICAgICBzdGF0aWMgbGV2ZWxNYXAgPSB7CiAgICAgICAgZGVidWc6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJkZWJ1ZyIsIHdhcm46ICJkZWJ1ZyIsIGVycm9yOiAiZGVidWciLCBmYXRhbDogImRlYnVnIiB9LAogICAgICAgIGluZm86IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogImluZm8iLCBlcnJvcjogImluZm8iLCBmYXRhbDogImluZm8iIH0sCiAgICAgICAgd2FybjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAid2FybiIsIGZhdGFsOiAid2FybiIgfSwKICAgICAgICBlcnJvcjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAiZXJyb3IiLCBmYXRhbDogImVycm9yIiB9LAogICAgICAgIGZhdGFsOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZmF0YWwiIH0KICAgICAgfTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxDYXApIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQsIChsZXZlbCkgPT4gewogICAgICAgICAgcmV0dXJuIF9MZXZlbENhcExvZ2dlci5sZXZlbE1hcFtsZXZlbENhcF1bbGV2ZWxdIHx8IGxldmVsOwogICAgICAgIH0pOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbENhcCA9IGxldmVsQ2FwOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBMZXZlbENhcExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9udWxsLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV9udWxsX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJhbnNmb3JtTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIHRyYW5zZm9ybSwgcGFyZW50ID0gbnVsbCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRyYW5zZm9ybSh0aGlzLl9vYnNlcnZhYmxlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IFRyYW5zZm9ybUxvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2luZGVudCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sZXZlbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbnVsbF9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanMKdmFyIHJlcXVpcmVfZGVmaW5pdGlvbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qcwp2YXIgcmVxdWlyZV9wYXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL3BhdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhdGggPSBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSBleHBvcnRzMi5QYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRQYXRoRXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3BsaXQgPSBzcGxpdDsKICAgIGV4cG9ydHMyLmV4dG5hbWUgPSBleHRuYW1lOwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSBiYXNlbmFtZTsKICAgIGV4cG9ydHMyLmRpcm5hbWUgPSBkaXJuYW1lOwogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGU7CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgZXhwb3J0czIucmVzb2x2ZSA9IHJlc29sdmU7CiAgICBleHBvcnRzMi5mcmFnbWVudCA9IGZyYWdtZW50OwogICAgZXhwb3J0czIucmVzZXROb3JtYWxpemVDYWNoZSA9IHJlc2V0Tm9ybWFsaXplQ2FjaGU7CiAgICBleHBvcnRzMi5ub3JtYWxpemUgPSBub3JtYWxpemU7CiAgICBleHBvcnRzMi5ub0NhY2hlTm9ybWFsaXplID0gbm9DYWNoZU5vcm1hbGl6ZTsKICAgIGV4cG9ydHMyLmFzV2luZG93c1BhdGggPSBhc1dpbmRvd3NQYXRoOwogICAgZXhwb3J0czIuYXNQb3NpeFBhdGggPSBhc1Bvc2l4UGF0aDsKICAgIGV4cG9ydHMyLmdldFN5c3RlbVBhdGggPSBnZXRTeXN0ZW1QYXRoOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBJbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IGlzIGludmFsaWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IEludmFsaWRQYXRoRXhjZXB0aW9uOwogICAgdmFyIFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IG11c3QgYmUgYWJzb2x1dGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb247CiAgICB2YXIgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBjYW5ub3QgYmUgbWFkZSBhIGZyYWdtZW50LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbjsKICAgIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSAiLyI7CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXA7CiAgICBmdW5jdGlvbiBzcGxpdChwYXRoMikgewogICAgICBjb25zdCBmcmFnbWVudHMgPSBwYXRoMi5zcGxpdChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKS5tYXAoKHgpID0+IGZyYWdtZW50KHgpKTsKICAgICAgaWYgKGZyYWdtZW50c1tmcmFnbWVudHMubGVuZ3RoIC0gMV0ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgZnJhZ21lbnRzLnBvcCgpOwogICAgICB9CiAgICAgIHJldHVybiBmcmFnbWVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBleHRuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGJhc2UgPSBiYXNlbmFtZShwYXRoMik7CiAgICAgIGNvbnN0IGkgPSBiYXNlLmxhc3RJbmRleE9mKCIuIik7CiAgICAgIGlmIChpIDwgMSkgewogICAgICAgIHJldHVybiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYmFzZS5zbGljZShpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYmFzZW5hbWUocGF0aDIpIHsKICAgICAgY29uc3QgaSA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaSA9PSAtMSkgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGZyYWdtZW50KHBhdGgyLnNsaWNlKHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApICsgMSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkaXJuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGluZGV4ID0gcGF0aDIubGFzdEluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgY29uc3QgZW5kSW5kZXggPSBpbmRleCA9PT0gMCA/IDEgOiBpbmRleDsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwYXRoMi5zbGljZSgwLCBlbmRJbmRleCkpOwogICAgfQogICAgZnVuY3Rpb24gam9pbjIocDEsIC4uLm90aGVycykgewogICAgICBpZiAob3RoZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICByZXR1cm4gbm9ybWFsaXplKChwMSA/IHAxICsgZXhwb3J0czIuTm9ybWFsaXplZFNlcCA6ICIiKSArIG90aGVycy5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gcDE7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGlzQWJzb2x1dGUocCkgewogICAgICByZXR1cm4gcC5zdGFydHNXaXRoKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgfQogICAgZnVuY3Rpb24gcmVsYXRpdmUoZnJvbSwgdG8pIHsKICAgICAgaWYgKCFpc0Fic29sdXRlKGZyb20pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbihmcm9tKTsKICAgICAgfQogICAgICBpZiAoIWlzQWJzb2x1dGUodG8pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbih0byk7CiAgICAgIH0KICAgICAgbGV0IHA7CiAgICAgIGlmIChmcm9tID09IHRvKSB7CiAgICAgICAgcCA9ICIiOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IHNwbGl0RnJvbSA9IHNwbGl0KGZyb20pOwogICAgICAgIGNvbnN0IHNwbGl0VG8gPSBzcGxpdCh0byk7CiAgICAgICAgd2hpbGUgKHNwbGl0RnJvbS5sZW5ndGggPiAwICYmIHNwbGl0VG8ubGVuZ3RoID4gMCAmJiBzcGxpdEZyb21bMF0gPT0gc3BsaXRUb1swXSkgewogICAgICAgICAgc3BsaXRGcm9tLnNoaWZ0KCk7CiAgICAgICAgICBzcGxpdFRvLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIGlmIChzcGxpdEZyb20ubGVuZ3RoID09IDApIHsKICAgICAgICAgIHAgPSBzcGxpdFRvLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHAgPSBzcGxpdEZyb20ubWFwKCgpID0+ICIuLiIpLmNvbmNhdChzcGxpdFRvKS5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHApOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShwMSwgcDIpIHsKICAgICAgaWYgKGlzQWJzb2x1dGUocDIpKSB7CiAgICAgICAgcmV0dXJuIHAyOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBqb2luMihwMSwgcDIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBmcmFnbWVudChwYXRoMikgewogICAgICBpZiAocGF0aDIuaW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSAhPSAtMSkgewogICAgICAgIHRocm93IG5ldyBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbihwYXRoMik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGgyOwogICAgfQogICAgdmFyIG5vcm1hbGl6ZWRDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICBmdW5jdGlvbiByZXNldE5vcm1hbGl6ZUNhY2hlKCkgewogICAgICBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGxldCBtYXliZVBhdGggPSBub3JtYWxpemVkQ2FjaGUuZ2V0KHBhdGgyKTsKICAgICAgaWYgKCFtYXliZVBhdGgpIHsKICAgICAgICBtYXliZVBhdGggPSBub0NhY2hlTm9ybWFsaXplKHBhdGgyKTsKICAgICAgICBub3JtYWxpemVkQ2FjaGUuc2V0KHBhdGgyLCBtYXliZVBhdGgpOwogICAgICB9CiAgICAgIHJldHVybiBtYXliZVBhdGg7CiAgICB9CiAgICBmdW5jdGlvbiBub0NhY2hlTm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGlmIChwYXRoMiA9PSAiIiB8fCBwYXRoMiA9PSAiLiIpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSBpZiAocGF0aDIgPT0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICByZXR1cm4gZXhwb3J0czIuTm9ybWFsaXplZFJvb3Q7CiAgICAgIH0KICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoMjsKICAgICAgaWYgKHBhdGgyLm1hdGNoKC9eW0EtWl06Wy9cXF0vaSkpIHsKICAgICAgICBwYXRoMiA9ICJcXCIgKyBwYXRoMlswXS50b1VwcGVyQ2FzZSgpICsgIlxcIiArIHBhdGgyLnNsaWNlKDMpOwogICAgICB9CiAgICAgIGNvbnN0IHAgPSBwYXRoMi5zcGxpdCgvWy9cXF0vZyk7CiAgICAgIGxldCByZWxhdGl2ZTIgPSBmYWxzZTsKICAgICAgbGV0IGkgPSAxOwogICAgICBpZiAocFswXSAhPSAiIikgewogICAgICAgIHAudW5zaGlmdCgiLiIpOwogICAgICAgIHJlbGF0aXZlMiA9IHRydWU7CiAgICAgIH0KICAgICAgd2hpbGUgKGkgPCBwLmxlbmd0aCkgewogICAgICAgIGlmIChwW2ldID09ICIuIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwW2ldID09ICIuLiIpIHsKICAgICAgICAgIGlmIChpIDwgMiAmJiAhcmVsYXRpdmUyKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEV4Y2VwdGlvbihvcmlnaW5hbCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPj0gMiAmJiBwW2kgLSAxXSAhPSAiLi4iKSB7CiAgICAgICAgICAgIHAuc3BsaWNlKGkgLSAxLCAyKTsKICAgICAgICAgICAgaS0tOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHAubGVuZ3RoID09IDEpIHsKICAgICAgICByZXR1cm4gcFswXSA9PSAiIiA/IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocFswXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc2hpZnQoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHAuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgfQogICAgfQogICAgdmFyIHBhdGggPSAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICByZXR1cm4gbm9ybWFsaXplKFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykpOwogICAgfTsKICAgIGV4cG9ydHMyLnBhdGggPSBwYXRoOwogICAgZnVuY3Rpb24gYXNXaW5kb3dzUGF0aChwYXRoMikgewogICAgICBjb25zdCBkcml2ZSA9IHBhdGgyLm1hdGNoKC9eXC8oXHcpKD86XC8oLiopKT8kLyk7CiAgICAgIGlmIChkcml2ZSkgewogICAgICAgIGNvbnN0IHN1YlBhdGggPSBkcml2ZVsyXSA/IGRyaXZlWzJdLnJlcGxhY2UoL1wvL2csICJcXCIpIDogIiI7CiAgICAgICAgcmV0dXJuIGAke2RyaXZlWzFdfTpcXCR7c3ViUGF0aH1gOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMi5yZXBsYWNlKC9cLy9nLCAiXFwiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzUG9zaXhQYXRoKHBhdGgyKSB7CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFN5c3RlbVBhdGgocGF0aDIpIHsKICAgICAgaWYgKHByb2Nlc3MucGxhdGZvcm0uc3RhcnRzV2l0aCgid2luMzIiKSkgewogICAgICAgIHJldHVybiBhc1dpbmRvd3NQYXRoKHBhdGgyKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYXNQb3NpeFBhdGgocGF0aDIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0cmluZ1RvRmlsZUJ1ZmZlciA9IHN0cmluZ1RvRmlsZUJ1ZmZlcjsKICAgIGV4cG9ydHMyLmZpbGVCdWZmZXJUb1N0cmluZyA9IGZpbGVCdWZmZXJUb1N0cmluZzsKICAgIHZhciBub2RlX3V0aWxfMSA9IHJlcXVpcmUoIm5vZGU6dXRpbCIpOwogICAgZnVuY3Rpb24gc3RyaW5nVG9GaWxlQnVmZmVyKHN0cjIpIHsKICAgICAgcmV0dXJuIG5ldyBub2RlX3V0aWxfMS5UZXh0RW5jb2RlcigpLmVuY29kZShzdHIyKS5idWZmZXI7CiAgICB9CiAgICBmdW5jdGlvbiBmaWxlQnVmZmVyVG9TdHJpbmcoZmlsZUJ1ZmZlcikgewogICAgICBpZiAoZmlsZUJ1ZmZlci50b1N0cmluZy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZmlsZUJ1ZmZlci50b1N0cmluZygidXRmLTgiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShuZXcgVWludDhBcnJheShmaWxlQnVmZmVyKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RXYXRjaEV2ZW50VHlwZSA9IHZvaWQgMDsKICAgIHZhciBIb3N0V2F0Y2hFdmVudFR5cGU7CiAgICAoZnVuY3Rpb24oSG9zdFdhdGNoRXZlbnRUeXBlMikgewogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNoYW5nZWQiXSA9IDBdID0gIkNoYW5nZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNyZWF0ZWQiXSA9IDFdID0gIkNyZWF0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkRlbGV0ZWQiXSA9IDJdID0gIkRlbGV0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIlJlbmFtZWQiXSA9IDNdID0gIlJlbmFtZWQiOwogICAgfSkoSG9zdFdhdGNoRXZlbnRUeXBlIHx8IChleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSBIb3N0V2F0Y2hFdmVudFR5cGUgPSB7fSkpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcwp2YXIgcmVxdWlyZV9tZW1vcnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9tZW1vcnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNpbXBsZU1lbW9yeUhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTIoKTsKICAgIHZhciBTaW1wbGVNZW1vcnlIb3N0ID0gY2xhc3MgewogICAgICBfY2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfd2F0Y2hlcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfbmV3RGlyU3RhdHMoKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGluc3BlY3QoKSB7CiAgICAgICAgICAgIHJldHVybiAiPERpcmVjdG9yeT4iOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRmlsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBzaXplOiAwLAogICAgICAgICAgYXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY3RpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgbXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgYmlydGh0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQ6IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIF9uZXdGaWxlU3RhdHMoY29udGVudCwgb2xkU3RhdHMpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgaW5zcGVjdCgpIHsKICAgICAgICAgICAgcmV0dXJuIGA8RmlsZSBzaXplKCR7Y29udGVudC5ieXRlTGVuZ3RofSk+YDsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0ZpbGUoKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9LAogICAgICAgICAgc2l6ZTogY29udGVudC5ieXRlTGVuZ3RoLAogICAgICAgICAgYXRpbWU6IG9sZFN0YXRzID8gb2xkU3RhdHMuYXRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGN0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIG10aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGJpcnRodGltZTogb2xkU3RhdHMgPyBvbGRTdGF0cy5iaXJ0aHRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQKICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHRoaXMuX2NhY2hlLnNldCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKSwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgIH0KICAgICAgX3RvQWJzb2x1dGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcGF0aF8xLmlzQWJzb2x1dGUpKHBhdGgpID8gcGF0aCA6ICgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfdXBkYXRlV2F0Y2hlcnMocGF0aCwgdHlwZTIpIHsKICAgICAgICBjb25zdCB0aW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCk7CiAgICAgICAgbGV0IGN1cnJlbnRQYXRoID0gcGF0aDsKICAgICAgICBsZXQgcGFyZW50ID0gbnVsbDsKICAgICAgICBpZiAodGhpcy5fd2F0Y2hlcnMuc2l6ZSA9PSAwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlciA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgaWYgKG1heWJlV2F0Y2hlcikgewogICAgICAgICAgbWF5YmVXYXRjaGVyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZTogdHlwZTIgfSk7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5wZXJzaXN0ZW50ICYmIHR5cGUyID09IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKSB7CiAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHRoaXMuX3dhdGNoZXJzLmRlbGV0ZShjdXJyZW50UGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBkbyB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IHBhcmVudCAhPT0gbnVsbCA/IHBhcmVudCA6IGN1cnJlbnRQYXRoOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhdGhfMS5kaXJuYW1lKShjdXJyZW50UGF0aCk7CiAgICAgICAgICBjb25zdCBtYXliZVdhdGNoZXIyID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KGN1cnJlbnRQYXRoKTsKICAgICAgICAgIGlmIChtYXliZVdhdGNoZXIyKSB7CiAgICAgICAgICAgIG1heWJlV2F0Y2hlcjIuZm9yRWFjaCgod2F0Y2hlcikgPT4gewogICAgICAgICAgICAgIGNvbnN0IFtvcHRpb25zLCBzdWJqZWN0XSA9IHdhdGNoZXI7CiAgICAgICAgICAgICAgaWYgKCFvcHRpb25zLnJlY3Vyc2l2ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQoeyBwYXRoLCB0aW1lLCB0eXBlOiB0eXBlMiB9KTsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucGVyc2lzdGVudCAmJiB0eXBlMiA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKHBhcmVudCAhPSBjdXJyZW50UGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaXN0IG9mIHByb3RlY3RlZCBtZXRob2RzIHRoYXQgZ2l2ZSBkaXJlY3QgYWNjZXNzIG91dHNpZGUgdGhlIG9ic2VydmFibGVzIHRvIHRoZSBjYWNoZQogICAgICAgKiBhbmQgaW50ZXJuYWwgc3RhdGVzLgogICAgICAgKi8KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBvbGQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgaWYgKG9sZCAmJiBvbGQuaXNEaXJlY3RvcnkoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGZyIG9mIGZyYWdtZW50cykgewogICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICBpZiAobWF5YmVTdGF0cykgewogICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoY3VyciwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5fbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZCk7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHBhdGgsIHN0YXRzKTsKICAgICAgICB0aGlzLl91cGRhdGVXYXRjaGVycyhwYXRoLCBvbGQgPyBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZCA6IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkKTsKICAgICAgfQogICAgICBfcmVhZChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAobWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAoIW1heWJlU3RhdHMuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMuY29udGVudDsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtjYWNoZVBhdGhdIG9mIHRoaXMuX2NhY2hlLmVudHJpZXMoKSkgewogICAgICAgICAgICBpZiAoY2FjaGVQYXRoLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSB8fCBjYWNoZVBhdGggPT09IHBhdGgpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUocGF0aCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKTsKICAgICAgfQogICAgICBfcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgZnJvbSA9IHRoaXMuX3RvQWJzb2x1dGUoZnJvbSk7CiAgICAgICAgdG8gPSB0aGlzLl90b0Fic29sdXRlKHRvKTsKICAgICAgICBpZiAoIXRoaXMuX2NhY2hlLmhhcyhmcm9tKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oZnJvbSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZS5oYXModG8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbih0byk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pc0RpcmVjdG9yeShmcm9tKSkgewogICAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKGZyb20gKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5qb2luKSh0bywgcGF0aF8xLk5vcm1hbGl6ZWRTZXAsIHBhdGguc2xpY2UoZnJvbS5sZW5ndGgpKSwgY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KSh0byk7CiAgICAgICAgICAgIGNvbnN0IG5ld0RpcmVjdG9yaWVzID0gW107CiAgICAgICAgICAgIGxldCBjdXJyID0gKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQoZnIpOwogICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihjdXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbmV3RGlyZWN0b3JpZXMucHVzaChjdXJyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChjb25zdCBuZXdEaXJlY3Rvcnkgb2YgbmV3RGlyZWN0b3JpZXMpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQobmV3RGlyZWN0b3J5LCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoZnJvbSk7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCh0bywgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKGZyb20sIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5SZW5hbWVkKTsKICAgICAgfQogICAgICBfbGlzdChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRmlsZShwYXRoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgaWYgKHBhdGggIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgZm9yIChjb25zdCBwIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGggKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICByZXN1bHQuYWRkKCgwLCBwYXRoXzEuc3BsaXQpKHApW2ZyYWdtZW50cy5sZW5ndGhdKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aF8xLk5vcm1hbGl6ZWRTZXApICYmIHAgIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBbLi4ucmVzdWx0XTsKICAgICAgfQogICAgICBfZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gISF0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpIDogZmFsc2U7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0cyA/IG1heWJlU3RhdHMuaXNGaWxlKCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0czsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgICAgbGV0IG1heWJlV2F0Y2hlckFycmF5ID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVXYXRjaGVyQXJyYXkpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlckFycmF5ID0gW107CiAgICAgICAgICB0aGlzLl93YXRjaGVycy5zZXQocGF0aCwgbWF5YmVXYXRjaGVyQXJyYXkpOwogICAgICAgIH0KICAgICAgICBtYXliZVdhdGNoZXJBcnJheS5wdXNoKFtvcHRpb25zIHx8IHt9LCBzdWJqZWN0XSk7CiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fcmVhZChwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KGNvbnRlbnQpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX2RlbGV0ZShwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9saXN0KHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9leGlzdHMocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2lzRmlsZShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX3N0YXQocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl93YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgIHRoaXMuX3dhdGNoZXJzLmNsZWFyKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gU2ltcGxlTWVtb3J5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzCnZhciByZXF1aXJlX3N5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TeW5jRGVsZWdhdGVIb3N0ID0gZXhwb3J0czIuU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICBzdXBlcihgRXhwZWN0ZWQgYSBzeW5jaHJvbm91cyBkZWxlZ2F0ZSBidXQgZ290IGFuIGFzeW5jaHJvbm91cyBvbmUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb247CiAgICB2YXIgU3luY0RlbGVnYXRlSG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgICBpZiAoIV9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXMuc3luY2hyb25vdXMpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RvU3luY0NhbGwob2JzZXJ2YWJsZSkgewogICAgICAgIGxldCBjb21wbGV0ZWQgPSBmYWxzZTsKICAgICAgICBsZXQgcmVzdWx0ID0gdm9pZCAwOwogICAgICAgIGxldCBlcnJvclJlc3VsdCA9IHZvaWQgMDsKICAgICAgICBvYnNlcnZhYmxlLnN1YnNjcmliZSgoeCkgPT4gcmVzdWx0ID0geCwgKGVycikgPT4gZXJyb3JSZXN1bHQgPSBlcnIsICgpID0+IGNvbXBsZXRlZCA9IHRydWUpOwogICAgICAgIGlmIChlcnJvclJlc3VsdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBlcnJvclJlc3VsdDsKICAgICAgICB9CiAgICAgICAgaWYgKCFjb21wbGV0ZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgZ2V0IGRlbGVnYXRlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZTsKICAgICAgfQogICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLnJlYWQocGF0aCkpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuZGVsZXRlKHBhdGgpKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUoZnJvbSwgdG8pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmV4aXN0cyhwYXRoKSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRmlsZShwYXRoKSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgc3RhdC4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbChyZXN1bHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlN5bmNEZWxlZ2F0ZUhvc3QgPSBTeW5jRGVsZWdhdGVIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMKdmFyIHJlcXVpcmVfdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIyKCk7CiAgICB2YXIgbWVtb3J5XzEgPSByZXF1aXJlX21lbW9yeSgpOwogICAgdmFyIHN5bmNfMSA9IHJlcXVpcmVfc3luYygpOwogICAgdmFyIFRlc3RIb3N0ID0gY2xhc3MgX1Rlc3RIb3N0IGV4dGVuZHMgbWVtb3J5XzEuU2ltcGxlTWVtb3J5SG9zdCB7CiAgICAgIF9yZWNvcmRzID0gW107CiAgICAgIF9zeW5jID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IobWFwMiA9IHt9KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBmb3IgKGNvbnN0IGZpbGVQYXRoIG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1hcDIpKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXAyW2ZpbGVQYXRoXSkpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgcmVjb3JkcygpIHsKICAgICAgICByZXR1cm4gWy4uLnRoaXMuX3JlY29yZHNdOwogICAgICB9CiAgICAgIGNsZWFyUmVjb3JkcygpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzID0gW107CiAgICAgIH0KICAgICAgZ2V0IGZpbGVzKCkgewogICAgICAgIGNvbnN0IHN5bmMgPSB0aGlzLnN5bmM7CiAgICAgICAgZnVuY3Rpb24gX3Zpc2l0KHApIHsKICAgICAgICAgIHJldHVybiBzeW5jLmxpc3QocCkubWFwKChmcmFnbWVudCkgPT4gKDAsIHBhdGhfMS5qb2luKShwLCBmcmFnbWVudCkpLnJlZHVjZSgoZmlsZXMsIHBhdGgpID0+IHsKICAgICAgICAgICAgaWYgKHN5bmMuaXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KF92aXNpdChwYXRoKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpbGVzLmNvbmNhdChwYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3Zpc2l0KCgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpKTsKICAgICAgfQogICAgICBnZXQgc3luYygpIHsKICAgICAgICBpZiAoIXRoaXMuX3N5bmMpIHsKICAgICAgICAgIHRoaXMuX3N5bmMgPSBuZXcgc3luY18xLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9zeW5jOwogICAgICB9CiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IG5ld0hvc3QgPSBuZXcgX1Rlc3RIb3N0KCk7CiAgICAgICAgbmV3SG9zdC5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICByZXR1cm4gbmV3SG9zdDsKICAgICAgfQogICAgICAvLyBPdmVycmlkZSBwYXJlbnRzIGZ1bmN0aW9ucyB0byBrZWVwIGEgcmVjb3JkIG9mIGFsbCBvcGVyYXRvcnMgdGhhdCB3ZXJlIGRvbmUuCiAgICAgIF93cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndyaXRlIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIF9yZWFkKHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVhZCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIF9kZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJkZWxldGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF9yZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVuYW1lIiwgZnJvbSwgdG8gfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIF9saXN0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAibGlzdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9saXN0KHBhdGgpOwogICAgICB9CiAgICAgIF9leGlzdHMocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJleGlzdHMiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIF9pc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRGlyZWN0b3J5IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIF9pc0ZpbGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJpc0ZpbGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIF9zdGF0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAic3RhdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIF93YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndhdGNoIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICAgICR3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCksICgwLCBidWZmZXJfMS5zdHJpbmdUb0ZpbGVCdWZmZXIpKGNvbnRlbnQpKTsKICAgICAgfQogICAgICAkcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBidWZmZXJfMS5maWxlQnVmZmVyVG9TdHJpbmcpKHN1cGVyLl9yZWFkKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICB9CiAgICAgICRsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgICAkZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2V4aXN0cygoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0RpcmVjdG9yeSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UZXN0SG9zdCA9IFRlc3RIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Jlc29sdmVyLmpzCnZhciByZXF1aXJlX3Jlc29sdmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IHZvaWQgMDsKICAgIHZhciBSZXNvbHZlckhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud3JpdGUodGhpcy5fcmVzb2x2ZShwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGVsZXRlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUodGhpcy5fcmVzb2x2ZShmcm9tKSwgdGhpcy5fcmVzb2x2ZSh0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZSh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaCh0aGlzLl9yZXNvbHZlKHBhdGgpLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IFJlc29sdmVySG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qcwp2YXIgcmVxdWlyZV9hbGlhcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBBbGlhc0hvc3QgPSBjbGFzcyBleHRlbmRzIHJlc29sdmVyXzEuUmVzb2x2ZXJIb3N0IHsKICAgICAgX2FsaWFzZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgbGV0IG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwYXRoKTsKICAgICAgICBjb25zdCBzcCA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZyA9IFtdOwogICAgICAgIHdoaWxlICghbWF5YmVBbGlhcyAmJiBzcC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBjb25zdCBwID0gKDAsIHBhdGhfMS5qb2luKShwYXRoXzEuTm9ybWFsaXplZFJvb3QsIC4uLnNwKTsKICAgICAgICAgIG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwKTsKICAgICAgICAgIGlmIChtYXliZUFsaWFzKSB7CiAgICAgICAgICAgIG1heWJlQWxpYXMgPSAoMCwgcGF0aF8xLmpvaW4pKG1heWJlQWxpYXMsIC4uLnJlbWFpbmluZyk7CiAgICAgICAgICB9CiAgICAgICAgICByZW1haW5pbmcudW5zaGlmdChzcC5wb3AoKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUFsaWFzIHx8IHBhdGg7CiAgICAgIH0KICAgICAgZ2V0IGFsaWFzZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FsaWFzZXM7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSBBbGlhc0hvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzCnZhciByZXF1aXJlX2NyZWF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2NyZWF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlU3luY0hvc3QgPSBjcmVhdGVTeW5jSG9zdDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgZnVuY3Rpb24gd3JhcEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcikgPT4gewogICAgICAgIHN1YnNjcmliZXIubmV4dChhY3Rpb24oKSk7CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZWF0ZVN5bmNIb3N0KGhhbmRsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBjbGFzcyB7CiAgICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICAgIHJldHVybiB7IHN5bmNocm9ub3VzOiB0cnVlIH07CiAgICAgICAgfQogICAgICAgIHJlYWQocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5yZWFkKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmxpc3QocGF0aCkpOwogICAgICAgIH0KICAgICAgICBleGlzdHMocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5leGlzdHMocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNGaWxlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnN0YXQocGF0aCkpOwogICAgICAgIH0KICAgICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLndyaXRlKHBhdGgsIGNvbnRlbnQpKTsKICAgICAgICB9CiAgICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuZGVsZXRlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlbmFtZShmcm9tLCB0bykpOwogICAgICAgIH0KICAgICAgICB3YXRjaCgpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgfSgpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBFbXB0eSA9IGNsYXNzIHsKICAgICAgY2FwYWJpbGl0aWVzID0gewogICAgICAgIHN5bmNocm9ub3VzOiB0cnVlCiAgICAgIH07CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoW10pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgIH0KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKG51bGwpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRW1wdHkgPSBFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9jb25zdGFudHMuanMKdmFyIHJlcXVpcmVfY29uc3RhbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvY29uc3RhbnRzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFdJTl9TTEFTSCA9ICJcXFxcLyI7CiAgICB2YXIgV0lOX05PX1NMQVNIID0gYFteJHtXSU5fU0xBU0h9XWA7CiAgICB2YXIgRE9UX0xJVEVSQUwgPSAiXFwuIjsKICAgIHZhciBQTFVTX0xJVEVSQUwgPSAiXFwrIjsKICAgIHZhciBRTUFSS19MSVRFUkFMID0gIlxcPyI7CiAgICB2YXIgU0xBU0hfTElURVJBTCA9ICJcXC8iOwogICAgdmFyIE9ORV9DSEFSID0gIig/PS4pIjsKICAgIHZhciBRTUFSSyA9ICJbXi9dIjsKICAgIHZhciBFTkRfQU5DSE9SID0gYCg/OiR7U0xBU0hfTElURVJBTH18JClgOwogICAgdmFyIFNUQVJUX0FOQ0hPUiA9IGAoPzpefCR7U0xBU0hfTElURVJBTH0pYDsKICAgIHZhciBET1RTX1NMQVNIID0gYCR7RE9UX0xJVEVSQUx9ezEsMn0ke0VORF9BTkNIT1J9YDsKICAgIHZhciBOT19ET1QgPSBgKD8hJHtET1RfTElURVJBTH0pYDsKICAgIHZhciBOT19ET1RTID0gYCg/ISR7U1RBUlRfQU5DSE9SfSR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBOT19ET1RfU0xBU0ggPSBgKD8hJHtET1RfTElURVJBTH17MCwxfSR7RU5EX0FOQ0hPUn0pYDsKICAgIHZhciBOT19ET1RTX1NMQVNIID0gYCg/ISR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBRTUFSS19OT19ET1QgPSBgW14uJHtTTEFTSF9MSVRFUkFMfV1gOwogICAgdmFyIFNUQVIgPSBgJHtRTUFSS30qP2A7CiAgICB2YXIgU0VQID0gIi8iOwogICAgdmFyIFBPU0lYX0NIQVJTID0gewogICAgICBET1RfTElURVJBTCwKICAgICAgUExVU19MSVRFUkFMLAogICAgICBRTUFSS19MSVRFUkFMLAogICAgICBTTEFTSF9MSVRFUkFMLAogICAgICBPTkVfQ0hBUiwKICAgICAgUU1BUkssCiAgICAgIEVORF9BTkNIT1IsCiAgICAgIERPVFNfU0xBU0gsCiAgICAgIE5PX0RPVCwKICAgICAgTk9fRE9UUywKICAgICAgTk9fRE9UX1NMQVNILAogICAgICBOT19ET1RTX1NMQVNILAogICAgICBRTUFSS19OT19ET1QsCiAgICAgIFNUQVIsCiAgICAgIFNUQVJUX0FOQ0hPUiwKICAgICAgU0VQCiAgICB9OwogICAgdmFyIFdJTkRPV1NfQ0hBUlMgPSB7CiAgICAgIC4uLlBPU0lYX0NIQVJTLAogICAgICBTTEFTSF9MSVRFUkFMOiBgWyR7V0lOX1NMQVNIfV1gLAogICAgICBRTUFSSzogV0lOX05PX1NMQVNILAogICAgICBTVEFSOiBgJHtXSU5fTk9fU0xBU0h9Kj9gLAogICAgICBET1RTX1NMQVNIOiBgJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpYCwKICAgICAgTk9fRE9UOiBgKD8hJHtET1RfTElURVJBTH0pYCwKICAgICAgTk9fRE9UUzogYCg/ISg/Ol58WyR7V0lOX1NMQVNIfV0pJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIE5PX0RPVF9TTEFTSDogYCg/ISR7RE9UX0xJVEVSQUx9ezAsMX0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBOT19ET1RTX1NMQVNIOiBgKD8hJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIFFNQVJLX05PX0RPVDogYFteLiR7V0lOX1NMQVNIfV1gLAogICAgICBTVEFSVF9BTkNIT1I6IGAoPzpefFske1dJTl9TTEFTSH1dKWAsCiAgICAgIEVORF9BTkNIT1I6IGAoPzpbJHtXSU5fU0xBU0h9XXwkKWAsCiAgICAgIFNFUDogIlxcIgogICAgfTsKICAgIHZhciBQT1NJWF9SRUdFWF9TT1VSQ0UgPSB7CiAgICAgIGFsbnVtOiAiYS16QS1aMC05IiwKICAgICAgYWxwaGE6ICJhLXpBLVoiLAogICAgICBhc2NpaTogIlxceDAwLVxceDdGIiwKICAgICAgYmxhbms6ICIgXFx0IiwKICAgICAgY250cmw6ICJcXHgwMC1cXHgxRlxceDdGIiwKICAgICAgZGlnaXQ6ICIwLTkiLAogICAgICBncmFwaDogIlxceDIxLVxceDdFIiwKICAgICAgbG93ZXI6ICJhLXoiLAogICAgICBwcmludDogIlxceDIwLVxceDdFICIsCiAgICAgIHB1bmN0OiAiXFwtIVwiIyQlJicoKVxcKissLi86Ozw9Pj9AW1xcXV5fYHt8fX4iLAogICAgICBzcGFjZTogIiBcXHRcXHJcXG5cXHZcXGYiLAogICAgICB1cHBlcjogIkEtWiIsCiAgICAgIHdvcmQ6ICJBLVphLXowLTlfIiwKICAgICAgeGRpZ2l0OiAiQS1GYS1mMC05IgogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgTUFYX0xFTkdUSDogMTAyNCAqIDY0LAogICAgICBQT1NJWF9SRUdFWF9TT1VSQ0UsCiAgICAgIC8vIHJlZ3VsYXIgZXhwcmVzc2lvbnMKICAgICAgUkVHRVhfQkFDS1NMQVNIOiAvXFwoPyFbKis/XiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX05PTl9TUEVDSUFMX0NIQVJTOiAvXlteQCFbXF0uLCQqKz9ee30oKXxcXC9dKy8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlM6IC9bLSorPy5eJHt9KHwpW1xdXS8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjogLyhcXD8pKChcVykoXDMqKSkvZywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUw6IC8oWy0qKz8uXiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX1JFTU9WRV9CQUNLU0xBU0g6IC8oPzpcWy4qP1teXFxdXF18XFwoPz0uKSkvZywKICAgICAgLy8gUmVwbGFjZSBnbG9icyB3aXRoIGVxdWl2YWxlbnQgcGF0dGVybnMgdG8gcmVkdWNlIHBhcnNpbmcgdGltZS4KICAgICAgUkVQTEFDRU1FTlRTOiB7CiAgICAgICAgIioqKiI6ICIqIiwKICAgICAgICAiKiovKioiOiAiKioiLAogICAgICAgICIqKi8qKi8qKiI6ICIqKiIKICAgICAgfSwKICAgICAgLy8gRGlnaXRzCiAgICAgIENIQVJfMDogNDgsCiAgICAgIC8qIDAgKi8KICAgICAgQ0hBUl85OiA1NywKICAgICAgLyogOSAqLwogICAgICAvLyBBbHBoYWJldCBjaGFycy4KICAgICAgQ0hBUl9VUFBFUkNBU0VfQTogNjUsCiAgICAgIC8qIEEgKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfQTogOTcsCiAgICAgIC8qIGEgKi8KICAgICAgQ0hBUl9VUFBFUkNBU0VfWjogOTAsCiAgICAgIC8qIFogKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfWjogMTIyLAogICAgICAvKiB6ICovCiAgICAgIENIQVJfTEVGVF9QQVJFTlRIRVNFUzogNDAsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzogNDEsCiAgICAgIC8qICkgKi8KICAgICAgQ0hBUl9BU1RFUklTSzogNDIsCiAgICAgIC8qICogKi8KICAgICAgLy8gTm9uLWFscGhhYmV0aWMgY2hhcnMuCiAgICAgIENIQVJfQU1QRVJTQU5EOiAzOCwKICAgICAgLyogJiAqLwogICAgICBDSEFSX0FUOiA2NCwKICAgICAgLyogQCAqLwogICAgICBDSEFSX0JBQ0tXQVJEX1NMQVNIOiA5MiwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NBUlJJQUdFX1JFVFVSTjogMTMsCiAgICAgIC8qIFxyICovCiAgICAgIENIQVJfQ0lSQ1VNRkxFWF9BQ0NFTlQ6IDk0LAogICAgICAvKiBeICovCiAgICAgIENIQVJfQ09MT046IDU4LAogICAgICAvKiA6ICovCiAgICAgIENIQVJfQ09NTUE6IDQ0LAogICAgICAvKiAsICovCiAgICAgIENIQVJfRE9UOiA0NiwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0RPVUJMRV9RVU9URTogMzQsCiAgICAgIC8qICIgKi8KICAgICAgQ0hBUl9FUVVBTDogNjEsCiAgICAgIC8qID0gKi8KICAgICAgQ0hBUl9FWENMQU1BVElPTl9NQVJLOiAzMywKICAgICAgLyogISAqLwogICAgICBDSEFSX0ZPUk1fRkVFRDogMTIsCiAgICAgIC8qIFxmICovCiAgICAgIENIQVJfRk9SV0FSRF9TTEFTSDogNDcsCiAgICAgIC8qIC8gKi8KICAgICAgQ0hBUl9HUkFWRV9BQ0NFTlQ6IDk2LAogICAgICAvKiBgICovCiAgICAgIENIQVJfSEFTSDogMzUsCiAgICAgIC8qICMgKi8KICAgICAgQ0hBUl9IWVBIRU5fTUlOVVM6IDQ1LAogICAgICAvKiAtICovCiAgICAgIENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOiA2MCwKICAgICAgLyogPCAqLwogICAgICBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6IDEyMywKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQ6IDkxLAogICAgICAvKiBbICovCiAgICAgIENIQVJfTElORV9GRUVEOiAxMCwKICAgICAgLyogXG4gKi8KICAgICAgQ0hBUl9OT19CUkVBS19TUEFDRTogMTYwLAogICAgICAvKiBcdTAwQTAgKi8KICAgICAgQ0hBUl9QRVJDRU5UOiAzNywKICAgICAgLyogJSAqLwogICAgICBDSEFSX1BMVVM6IDQzLAogICAgICAvKiArICovCiAgICAgIENIQVJfUVVFU1RJT05fTUFSSzogNjMsCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9BTkdMRV9CUkFDS0VUOiA2MiwKICAgICAgLyogPiAqLwogICAgICBDSEFSX1JJR0hUX0NVUkxZX0JSQUNFOiAxMjUsCiAgICAgIC8qIH0gKi8KICAgICAgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDogOTMsCiAgICAgIC8qIF0gKi8KICAgICAgQ0hBUl9TRU1JQ09MT046IDU5LAogICAgICAvKiA7ICovCiAgICAgIENIQVJfU0lOR0xFX1FVT1RFOiAzOSwKICAgICAgLyogJyAqLwogICAgICBDSEFSX1NQQUNFOiAzMiwKICAgICAgLyogICAqLwogICAgICBDSEFSX1RBQjogOSwKICAgICAgLyogXHQgKi8KICAgICAgQ0hBUl9VTkRFUlNDT1JFOiA5NSwKICAgICAgLyogXyAqLwogICAgICBDSEFSX1ZFUlRJQ0FMX0xJTkU6IDEyNCwKICAgICAgLyogfCAqLwogICAgICBDSEFSX1pFUk9fV0lEVEhfTk9CUkVBS19TUEFDRTogNjUyNzksCiAgICAgIC8qIFx1RkVGRiAqLwogICAgICAvKioKICAgICAgICogQ3JlYXRlIEVYVEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGV4dGdsb2JDaGFycyhjaGFycykgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiISI6IHsgdHlwZTogIm5lZ2F0ZSIsIG9wZW46ICIoPzooPyEoPzoiLCBjbG9zZTogYCkpJHtjaGFycy5TVEFSfSlgIH0sCiAgICAgICAgICAiPyI6IHsgdHlwZTogInFtYXJrIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKT8iIH0sCiAgICAgICAgICAiKyI6IHsgdHlwZTogInBsdXMiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpKyIgfSwKICAgICAgICAgICIqIjogeyB0eXBlOiAic3RhciIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikqIiB9LAogICAgICAgICAgIkAiOiB7IHR5cGU6ICJhdCIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikiIH0KICAgICAgICB9OwogICAgICB9LAogICAgICAvKioKICAgICAgICogQ3JlYXRlIEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGdsb2JDaGFycyh3aW4zMikgewogICAgICAgIHJldHVybiB3aW4zMiA9PT0gdHJ1ZSA/IFdJTkRPV1NfQ0hBUlMgOiBQT1NJWF9DSEFSUzsKICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB7CiAgICAgIFJFR0VYX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSUywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwKICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgZXhwb3J0czIuaXNPYmplY3QgPSAodmFsKSA9PiB2YWwgIT09IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMgPSAoc3RyMikgPT4gUkVHRVhfU1BFQ0lBTF9DSEFSUy50ZXN0KHN0cjIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyMikgPT4gc3RyMi5sZW5ndGggPT09IDEgJiYgZXhwb3J0czIuaGFzUmVnZXhDaGFycyhzdHIyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTCwgIlxcJDEiKTsKICAgIGV4cG9ydHMyLnRvUG9zaXhTbGFzaGVzID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9CQUNLU0xBU0gsICIvIik7CiAgICBleHBvcnRzMi5pc1dpbmRvd3MgPSAoKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgbmF2aWdhdG9yICE9PSAidW5kZWZpbmVkIiAmJiBuYXZpZ2F0b3IucGxhdGZvcm0pIHsKICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IG5hdmlnYXRvci5wbGF0Zm9ybS50b0xvd2VyQ2FzZSgpOwogICAgICAgIHJldHVybiBwbGF0Zm9ybSA9PT0gIndpbjMyIiB8fCBwbGF0Zm9ybSA9PT0gIndpbmRvd3MiOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gInVuZGVmaW5lZCIgJiYgcHJvY2Vzcy5wbGF0Zm9ybSkgewogICAgICAgIHJldHVybiBwcm9jZXNzLnBsYXRmb3JtID09PSAid2luMzIiOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH07CiAgICBleHBvcnRzMi5yZW1vdmVCYWNrc2xhc2hlcyA9IChzdHIyKSA9PiB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9zY2FuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIENIQVJfQVNURVJJU0s6IENIQVJfQVNURVJJU0syLAogICAgICAvKiAqICovCiAgICAgIENIQVJfQVQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSCwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NPTU1BOiBDSEFSX0NPTU1BMiwKICAgICAgLyogLCAqLwogICAgICBDSEFSX0RPVCwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0VYQ0xBTUFUSU9OX01BUkssCiAgICAgIC8qICEgKi8KICAgICAgQ0hBUl9GT1JXQVJEX1NMQVNILAogICAgICAvKiAvICovCiAgICAgIENIQVJfTEVGVF9DVVJMWV9CUkFDRSwKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfUEFSRU5USEVTRVMsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOiBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyLAogICAgICAvKiBbICovCiAgICAgIENIQVJfUExVUywKICAgICAgLyogKyAqLwogICAgICBDSEFSX1FVRVNUSU9OX01BUkssCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRSwKICAgICAgLyogfSAqLwogICAgICBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTLAogICAgICAvKiApICovCiAgICAgIENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQ6IENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQyCiAgICAgIC8qIF0gKi8KICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIGlzUGF0aFNlcGFyYXRvciA9IChjb2RlKSA9PiB7CiAgICAgIHJldHVybiBjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0ggfHwgY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSDsKICAgIH07CiAgICB2YXIgZGVwdGggPSAodG9rZW4pID0+IHsKICAgICAgaWYgKHRva2VuLmlzUHJlZml4ICE9PSB0cnVlKSB7CiAgICAgICAgdG9rZW4uZGVwdGggPSB0b2tlbi5pc0dsb2JzdGFyID8gSW5maW5pdHkgOiAxOwogICAgICB9CiAgICB9OwogICAgdmFyIHNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGxlbmd0aCA9IGlucHV0Lmxlbmd0aCAtIDE7CiAgICAgIGNvbnN0IHNjYW5Ub0VuZCA9IG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy5zY2FuVG9FbmQgPT09IHRydWU7CiAgICAgIGNvbnN0IHNsYXNoZXMgPSBbXTsKICAgICAgY29uc3QgdG9rZW5zID0gW107CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdHIyID0gaW5wdXQ7CiAgICAgIGxldCBpbmRleCA9IC0xOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgbGFzdEluZGV4ID0gMDsKICAgICAgbGV0IGlzQnJhY2UgPSBmYWxzZTsKICAgICAgbGV0IGlzQnJhY2tldCA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9iID0gZmFsc2U7CiAgICAgIGxldCBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzR2xvYnN0YXIgPSBmYWxzZTsKICAgICAgbGV0IGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWQgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWRFeHRnbG9iID0gZmFsc2U7CiAgICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VzID0gMDsKICAgICAgbGV0IHByZXY7CiAgICAgIGxldCBjb2RlOwogICAgICBsZXQgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gaW5kZXggPj0gbGVuZ3RoOwogICAgICBjb25zdCBwZWVrID0gKCkgPT4gc3RyMi5jaGFyQ29kZUF0KGluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGFkdmFuY2UgPSAoKSA9PiB7CiAgICAgICAgcHJldiA9IGNvZGU7CiAgICAgICAgcmV0dXJuIHN0cjIuY2hhckNvZGVBdCgrK2luZGV4KTsKICAgICAgfTsKICAgICAgd2hpbGUgKGluZGV4IDwgbGVuZ3RoKSB7CiAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICBsZXQgbmV4dDsKICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICBicmFjZUVzY2FwZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChicmFjZUVzY2FwZWQgPT09IHRydWUgfHwgY29kZSA9PT0gQ0hBUl9MRUZUX0NVUkxZX0JSQUNFKSB7CiAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcysrOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9ET1QgJiYgKGNvZGUgPSBhZHZhbmNlKCkpID09PSBDSEFSX0RPVCkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGJyYWNlRXNjYXBlZCAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0NPTU1BMikgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMtLTsKICAgICAgICAgICAgICBpZiAoYnJhY2VzID09PSAwKSB7CiAgICAgICAgICAgICAgICBicmFjZUVzY2FwZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIKSB7CiAgICAgICAgICBzbGFzaGVzLnB1c2goaW5kZXgpOwogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgICAgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgICAgIGlmIChmaW5pc2hlZCA9PT0gdHJ1ZSkgY29udGludWU7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9ET1QgJiYgaW5kZXggPT09IHN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGFydCArPSAyOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4ICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub2V4dCAhPT0gdHJ1ZSkgewogICAgICAgICAgY29uc3QgaXNFeHRnbG9iQ2hhciA9IGNvZGUgPT09IENIQVJfUExVUyB8fCBjb2RlID09PSBDSEFSX0FUIHx8IGNvZGUgPT09IENIQVJfQVNURVJJU0syIHx8IGNvZGUgPT09IENIQVJfUVVFU1RJT05fTUFSSyB8fCBjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUks7CiAgICAgICAgICBpZiAoaXNFeHRnbG9iQ2hhciA9PT0gdHJ1ZSAmJiBwZWVrKCkgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICBpc0V4dGdsb2IgPSB0b2tlbi5pc0V4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUksgJiYgaW5kZXggPT09IHN0YXJ0KSB7CiAgICAgICAgICAgICAgbmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKGNvZGUgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQVNURVJJU0syKSB7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9BU1RFUklTSzIpIGlzR2xvYnN0YXIgPSB0b2tlbi5pc0dsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUkspIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyKSB7CiAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKG5leHQgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUMikgewogICAgICAgICAgICAgIGlzQnJhY2tldCA9IHRva2VuLmlzQnJhY2tldCA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgbmVnYXRlZCA9IHRva2VuLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgICAgc3RhcnQrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub3BhcmVuICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChpc0dsb2IgPT09IHRydWUpIHsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMubm9leHQgPT09IHRydWUpIHsKICAgICAgICBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgICBpc0dsb2IgPSBmYWxzZTsKICAgICAgfQogICAgICBsZXQgYmFzZSA9IHN0cjI7CiAgICAgIGxldCBwcmVmaXggPSAiIjsKICAgICAgbGV0IGdsb2IgPSAiIjsKICAgICAgaWYgKHN0YXJ0ID4gMCkgewogICAgICAgIHByZWZpeCA9IHN0cjIuc2xpY2UoMCwgc3RhcnQpOwogICAgICAgIHN0cjIgPSBzdHIyLnNsaWNlKHN0YXJ0KTsKICAgICAgICBsYXN0SW5kZXggLT0gc3RhcnQ7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgaXNHbG9iID09PSB0cnVlICYmIGxhc3RJbmRleCA+IDApIHsKICAgICAgICBiYXNlID0gc3RyMi5zbGljZSgwLCBsYXN0SW5kZXgpOwogICAgICAgIGdsb2IgPSBzdHIyLnNsaWNlKGxhc3RJbmRleCk7CiAgICAgIH0gZWxzZSBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgYmFzZSA9ICIiOwogICAgICAgIGdsb2IgPSBzdHIyOwogICAgICB9IGVsc2UgewogICAgICAgIGJhc2UgPSBzdHIyOwogICAgICB9CiAgICAgIGlmIChiYXNlICYmIGJhc2UgIT09ICIiICYmIGJhc2UgIT09ICIvIiAmJiBiYXNlICE9PSBzdHIyKSB7CiAgICAgICAgaWYgKGlzUGF0aFNlcGFyYXRvcihiYXNlLmNoYXJDb2RlQXQoYmFzZS5sZW5ndGggLSAxKSkpIHsKICAgICAgICAgIGJhc2UgPSBiYXNlLnNsaWNlKDAsIC0xKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICBpZiAoZ2xvYikgZ2xvYiA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGdsb2IpOwogICAgICAgIGlmIChiYXNlICYmIGJhY2tzbGFzaGVzID09PSB0cnVlKSB7CiAgICAgICAgICBiYXNlID0gdXRpbHMucmVtb3ZlQmFja3NsYXNoZXMoYmFzZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHN0YXRlID0gewogICAgICAgIHByZWZpeCwKICAgICAgICBpbnB1dCwKICAgICAgICBzdGFydCwKICAgICAgICBiYXNlLAogICAgICAgIGdsb2IsCiAgICAgICAgaXNCcmFjZSwKICAgICAgICBpc0JyYWNrZXQsCiAgICAgICAgaXNHbG9iLAogICAgICAgIGlzRXh0Z2xvYiwKICAgICAgICBpc0dsb2JzdGFyLAogICAgICAgIG5lZ2F0ZWQsCiAgICAgICAgbmVnYXRlZEV4dGdsb2IKICAgICAgfTsKICAgICAgaWYgKG9wdHMudG9rZW5zID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUubWF4RGVwdGggPSAwOwogICAgICAgIGlmICghaXNQYXRoU2VwYXJhdG9yKGNvZGUpKSB7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnRva2VucyA9IHRva2VuczsKICAgICAgfQogICAgICBpZiAob3B0cy5wYXJ0cyA9PT0gdHJ1ZSB8fCBvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIGxldCBwcmV2SW5kZXg7CiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc2xhc2hlcy5sZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICBjb25zdCBuID0gcHJldkluZGV4ID8gcHJldkluZGV4ICsgMSA6IHN0YXJ0OwogICAgICAgICAgY29uc3QgaSA9IHNsYXNoZXNbaWR4XTsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UobiwgaSk7CiAgICAgICAgICBpZiAob3B0cy50b2tlbnMpIHsKICAgICAgICAgICAgaWYgKGlkeCA9PT0gMCAmJiBzdGFydCAhPT0gMCkgewogICAgICAgICAgICAgIHRva2Vuc1tpZHhdLmlzUHJlZml4ID0gdHJ1ZTsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHByZWZpeDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1tpZHhdKTsKICAgICAgICAgICAgc3RhdGUubWF4RGVwdGggKz0gdG9rZW5zW2lkeF0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaWR4ICE9PSAwIHx8IHZhbHVlICE9PSAiIikgewogICAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXZJbmRleCA9IGk7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2SW5kZXggJiYgcHJldkluZGV4ICsgMSA8IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC5zbGljZShwcmV2SW5kZXggKyAxKTsKICAgICAgICAgIHBhcnRzLnB1c2godmFsdWUpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgZGVwdGgodG9rZW5zW3Rva2Vucy5sZW5ndGggLSAxXSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnNsYXNoZXMgPSBzbGFzaGVzOwogICAgICAgIHN0YXRlLnBhcnRzID0gcGFydHM7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9wYXJzZS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBjb25zdGFudHMgPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIE1BWF9MRU5HVEgsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlMsCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwKICAgICAgUkVQTEFDRU1FTlRTCiAgICB9ID0gY29uc3RhbnRzOwogICAgdmFyIGV4cGFuZFJhbmdlID0gKGFyZ3MsIG9wdGlvbnMpID0+IHsKICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmV4cGFuZFJhbmdlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZXhwYW5kUmFuZ2UoLi4uYXJncywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXJncy5zb3J0KCk7CiAgICAgIGNvbnN0IHZhbHVlID0gYFske2FyZ3Muam9pbigiLSIpfV1gOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAodmFsdWUpOwogICAgICB9IGNhdGNoIChleCkgewogICAgICAgIHJldHVybiBhcmdzLm1hcCgodikgPT4gdXRpbHMuZXNjYXBlUmVnZXgodikpLmpvaW4oIi4uIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfTsKICAgIHZhciBzeW50YXhFcnJvciA9ICh0eXBlMiwgY2hhcikgPT4gewogICAgICByZXR1cm4gYE1pc3NpbmcgJHt0eXBlMn06ICIke2NoYXJ9IiAtIHVzZSAiXFxcXCR7Y2hhcn0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7CiAgICB9OwogICAgdmFyIHBhcnNlID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IG9wdHMgPSB7IC4uLm9wdGlvbnMgfTsKICAgICAgY29uc3QgbWF4ID0gdHlwZW9mIG9wdHMubWF4TGVuZ3RoID09PSAibnVtYmVyIiA/IE1hdGgubWluKE1BWF9MRU5HVEgsIG9wdHMubWF4TGVuZ3RoKSA6IE1BWF9MRU5HVEg7CiAgICAgIGxldCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGNvbnN0IGJvcyA9IHsgdHlwZTogImJvcyIsIHZhbHVlOiAiIiwgb3V0cHV0OiBvcHRzLnByZXBlbmQgfHwgIiIgfTsKICAgICAgY29uc3QgdG9rZW5zID0gW2Jvc107CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IFBMQVRGT1JNX0NIQVJTID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBFWFRHTE9CX0NIQVJTID0gY29uc3RhbnRzLmV4dGdsb2JDaGFycyhQTEFURk9STV9DSEFSUyk7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBQTFVTX0xJVEVSQUwsCiAgICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgICBPTkVfQ0hBUiwKICAgICAgICBET1RTX1NMQVNILAogICAgICAgIE5PX0RPVCwKICAgICAgICBOT19ET1RfU0xBU0gsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBRTUFSSywKICAgICAgICBRTUFSS19OT19ET1QsCiAgICAgICAgU1RBUiwKICAgICAgICBTVEFSVF9BTkNIT1IKICAgICAgfSA9IFBMQVRGT1JNX0NIQVJTOwogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gIiIgOiBOT19ET1Q7CiAgICAgIGNvbnN0IHFtYXJrTm9Eb3QgPSBvcHRzLmRvdCA/IFFNQVJLIDogUU1BUktfTk9fRE9UOwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/IGdsb2JzdGFyKG9wdHMpIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIG9wdHMubm9leHQgPT09ICJib29sZWFuIikgewogICAgICAgIG9wdHMubm9leHRnbG9iID0gb3B0cy5ub2V4dDsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBpbnB1dCwKICAgICAgICBpbmRleDogLTEsCiAgICAgICAgc3RhcnQ6IDAsCiAgICAgICAgZG90OiBvcHRzLmRvdCA9PT0gdHJ1ZSwKICAgICAgICBjb25zdW1lZDogIiIsCiAgICAgICAgb3V0cHV0OiAiIiwKICAgICAgICBwcmVmaXg6ICIiLAogICAgICAgIGJhY2t0cmFjazogZmFsc2UsCiAgICAgICAgbmVnYXRlZDogZmFsc2UsCiAgICAgICAgYnJhY2tldHM6IDAsCiAgICAgICAgYnJhY2VzOiAwLAogICAgICAgIHBhcmVuczogMCwKICAgICAgICBxdW90ZXM6IDAsCiAgICAgICAgZ2xvYnN0YXI6IGZhbHNlLAogICAgICAgIHRva2VucwogICAgICB9OwogICAgICBpbnB1dCA9IHV0aWxzLnJlbW92ZVByZWZpeChpbnB1dCwgc3RhdGUpOwogICAgICBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGNvbnN0IGV4dGdsb2JzID0gW107CiAgICAgIGNvbnN0IGJyYWNlcyA9IFtdOwogICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICBsZXQgcHJldiA9IGJvczsKICAgICAgbGV0IHZhbHVlOwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBzdGF0ZS5pbmRleCA9PT0gbGVuIC0gMTsKICAgICAgY29uc3QgcGVlayA9IHN0YXRlLnBlZWsgPSAobiA9IDEpID0+IGlucHV0W3N0YXRlLmluZGV4ICsgbl07CiAgICAgIGNvbnN0IGFkdmFuY2UgPSBzdGF0ZS5hZHZhbmNlID0gKCkgPT4gaW5wdXRbKytzdGF0ZS5pbmRleF0gfHwgIiI7CiAgICAgIGNvbnN0IHJlbWFpbmluZyA9ICgpID0+IGlucHV0LnNsaWNlKHN0YXRlLmluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGNvbnN1bWUgPSAodmFsdWUyID0gIiIsIG51bSA9IDApID0+IHsKICAgICAgICBzdGF0ZS5jb25zdW1lZCArPSB2YWx1ZTI7CiAgICAgICAgc3RhdGUuaW5kZXggKz0gbnVtOwogICAgICB9OwogICAgICBjb25zdCBhcHBlbmQgPSAodG9rZW4pID0+IHsKICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICBjb25zdW1lKHRva2VuLnZhbHVlKTsKICAgICAgfTsKICAgICAgY29uc3QgbmVnYXRlID0gKCkgPT4gewogICAgICAgIGxldCBjb3VudCA9IDE7CiAgICAgICAgd2hpbGUgKHBlZWsoKSA9PT0gIiEiICYmIChwZWVrKDIpICE9PSAiKCIgfHwgcGVlaygzKSA9PT0gIj8iKSkgewogICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCAlIDIgPT09IDApIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUubmVnYXRlZCA9IHRydWU7CiAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfTsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gKHR5cGUyKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZTJdKys7CiAgICAgICAgc3RhY2sucHVzaCh0eXBlMik7CiAgICAgIH07CiAgICAgIGNvbnN0IGRlY3JlbWVudCA9ICh0eXBlMikgPT4gewogICAgICAgIHN0YXRlW3R5cGUyXS0tOwogICAgICAgIHN0YWNrLnBvcCgpOwogICAgICB9OwogICAgICBjb25zdCBwdXNoID0gKHRvaykgPT4gewogICAgICAgIGlmIChwcmV2LnR5cGUgPT09ICJnbG9ic3RhciIpIHsKICAgICAgICAgIGNvbnN0IGlzQnJhY2UgPSBzdGF0ZS5icmFjZXMgPiAwICYmICh0b2sudHlwZSA9PT0gImNvbW1hIiB8fCB0b2sudHlwZSA9PT0gImJyYWNlIik7CiAgICAgICAgICBjb25zdCBpc0V4dGdsb2IgPSB0b2suZXh0Z2xvYiA9PT0gdHJ1ZSB8fCBleHRnbG9icy5sZW5ndGggJiYgKHRvay50eXBlID09PSAicGlwZSIgfHwgdG9rLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKHRvay50eXBlICE9PSAic2xhc2giICYmIHRvay50eXBlICE9PSAicGFyZW4iICYmICFpc0JyYWNlICYmICFpc0V4dGdsb2IpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICAgIHByZXYudmFsdWUgPSAiKiI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZXh0Z2xvYnMubGVuZ3RoICYmIHRvay50eXBlICE9PSAicGFyZW4iKSB7CiAgICAgICAgICBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXS5pbm5lciArPSB0b2sudmFsdWU7CiAgICAgICAgfQogICAgICAgIGlmICh0b2sudmFsdWUgfHwgdG9rLm91dHB1dCkgYXBwZW5kKHRvayk7CiAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAidGV4dCIgJiYgdG9rLnR5cGUgPT09ICJ0ZXh0IikgewogICAgICAgICAgcHJldi5vdXRwdXQgPSAocHJldi5vdXRwdXQgfHwgcHJldi52YWx1ZSkgKyB0b2sudmFsdWU7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHRvay52YWx1ZTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdG9rLnByZXYgPSBwcmV2OwogICAgICAgIHRva2Vucy5wdXNoKHRvayk7CiAgICAgICAgcHJldiA9IHRvazsKICAgICAgfTsKICAgICAgY29uc3QgZXh0Z2xvYk9wZW4gPSAodHlwZTIsIHZhbHVlMikgPT4gewogICAgICAgIGNvbnN0IHRva2VuID0geyAuLi5FWFRHTE9CX0NIQVJTW3ZhbHVlMl0sIGNvbmRpdGlvbnM6IDEsIGlubmVyOiAiIiB9OwogICAgICAgIHRva2VuLnByZXYgPSBwcmV2OwogICAgICAgIHRva2VuLnBhcmVucyA9IHN0YXRlLnBhcmVuczsKICAgICAgICB0b2tlbi5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQ7CiAgICAgICAgY29uc3Qgb3V0cHV0ID0gKG9wdHMuY2FwdHVyZSA/ICIoIiA6ICIiKSArIHRva2VuLm9wZW47CiAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICBwdXNoKHsgdHlwZTogdHlwZTIsIHZhbHVlOiB2YWx1ZTIsIG91dHB1dDogc3RhdGUub3V0cHV0ID8gIiIgOiBPTkVfQ0hBUiB9KTsKICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWU6IGFkdmFuY2UoKSwgb3V0cHV0IH0pOwogICAgICAgIGV4dGdsb2JzLnB1c2godG9rZW4pOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iQ2xvc2UgPSAodG9rZW4pID0+IHsKICAgICAgICBsZXQgb3V0cHV0ID0gdG9rZW4uY2xvc2UgKyAob3B0cy5jYXB0dXJlID8gIikiIDogIiIpOwogICAgICAgIGxldCByZXN0OwogICAgICAgIGlmICh0b2tlbi50eXBlID09PSAibmVnYXRlIikgewogICAgICAgICAgbGV0IGV4dGdsb2JTdGFyID0gc3RhcjsKICAgICAgICAgIGlmICh0b2tlbi5pbm5lciAmJiB0b2tlbi5pbm5lci5sZW5ndGggPiAxICYmIHRva2VuLmlubmVyLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgZXh0Z2xvYlN0YXIgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRnbG9iU3RhciAhPT0gc3RhciB8fCBlb3MoKSB8fCAvXlwpKyQvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkkKSkke2V4dGdsb2JTdGFyfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4uaW5uZXIuaW5jbHVkZXMoIioiKSAmJiAocmVzdCA9IHJlbWFpbmluZygpKSAmJiAvXlwuW15cXC8uXSskLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBwYXJzZShyZXN0LCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSkub3V0cHV0OwogICAgICAgICAgICBvdXRwdXQgPSB0b2tlbi5jbG9zZSA9IGApJHtleHByZXNzaW9ufSkke2V4dGdsb2JTdGFyfSlgOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHRva2VuLnByZXYudHlwZSA9PT0gImJvcyIpIHsKICAgICAgICAgICAgc3RhdGUubmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9OwogICAgICBpZiAob3B0cy5mYXN0cGF0aHMgIT09IGZhbHNlICYmICEvKF5bKiFdfFsvKClbXF17fSJdKS8udGVzdChpbnB1dCkpIHsKICAgICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgICBsZXQgb3V0cHV0ID0gaW5wdXQucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUYsIChtLCBlc2MsIGNoYXJzLCBmaXJzdCwgcmVzdCwgaW5kZXgpID0+IHsKICAgICAgICAgIGlmIChmaXJzdCA9PT0gIlxcIikgewogICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgIHJldHVybiBtOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZpcnN0ID09PSAiPyIpIHsKICAgICAgICAgICAgaWYgKGVzYykgewogICAgICAgICAgICAgIHJldHVybiBlc2MgKyBmaXJzdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHsKICAgICAgICAgICAgICByZXR1cm4gcW1hcmtOb0RvdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gUU1BUksucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIuIikgewogICAgICAgICAgICByZXR1cm4gRE9UX0xJVEVSQUwucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIqIikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBzdGFyIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzdGFyOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGVzYyA/IG0gOiBgXFwke219YDsKICAgICAgICB9KTsKICAgICAgICBpZiAoYmFja3NsYXNoZXMgPT09IHRydWUpIHsKICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQucmVwbGFjZSgvXFwrL2csIChtKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIG0ubGVuZ3RoICUgMiA9PT0gMCA/ICJcXFxcIiA6IG0gPyAiXFwiIDogIiI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAob3V0cHV0ID09PSBpbnB1dCAmJiBvcHRzLmNvbnRhaW5zID09PSB0cnVlKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBpbnB1dDsKICAgICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMud3JhcE91dHB1dChvdXRwdXQsIHN0YXRlLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgd2hpbGUgKCFlb3MoKSkgewogICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgIGlmICh2YWx1ZSA9PT0gIlwwIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlxcIikgewogICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgIGlmIChuZXh0ID09PSAiLyIgJiYgb3B0cy5iYXNoICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG5leHQgPT09ICIuIiB8fCBuZXh0ID09PSAiOyIpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5leHQpIHsKICAgICAgICAgICAgdmFsdWUgKz0gIlxcIjsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcKy8uZXhlYyhyZW1haW5pbmcoKSk7CiAgICAgICAgICBsZXQgc2xhc2hlcyA9IDA7CiAgICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0ubGVuZ3RoID4gMikgewogICAgICAgICAgICBzbGFzaGVzID0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBzbGFzaGVzOwogICAgICAgICAgICBpZiAoc2xhc2hlcyAlIDIgIT09IDApIHsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy51bmVzY2FwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICB2YWx1ZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHZhbHVlICs9IGFkdmFuY2UoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA+IDAgJiYgKHZhbHVlICE9PSAiXSIgfHwgcHJldi52YWx1ZSA9PT0gIlsiIHx8IHByZXYudmFsdWUgPT09ICJbXiIpKSB7CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCAhPT0gZmFsc2UgJiYgdmFsdWUgPT09ICI6IikgewogICAgICAgICAgICBjb25zdCBpbm5lciA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICAgIGlmIChpbm5lci5pbmNsdWRlcygiWyIpKSB7CiAgICAgICAgICAgICAgcHJldi5wb3NpeCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCI6IikpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IHByZXYudmFsdWUubGFzdEluZGV4T2YoIlsiKTsKICAgICAgICAgICAgICAgIGNvbnN0IHByZSA9IHByZXYudmFsdWUuc2xpY2UoMCwgaWR4KTsKICAgICAgICAgICAgICAgIGNvbnN0IHJlc3QyID0gcHJldi52YWx1ZS5zbGljZShpZHggKyAyKTsKICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l4ID0gUE9TSVhfUkVHRVhfU09VUkNFW3Jlc3QyXTsKICAgICAgICAgICAgICAgIGlmIChwb3NpeCkgewogICAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gcHJlICsgcG9zaXg7CiAgICAgICAgICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgaWYgKCFib3Mub3V0cHV0ICYmIHRva2Vucy5pbmRleE9mKHByZXYpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgYm9zLm91dHB1dCA9IE9ORV9DSEFSOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiWyIgJiYgcGVlaygpICE9PSAiOiIgfHwgdmFsdWUgPT09ICItIiAmJiBwZWVrKCkgPT09ICJdIikgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iICYmIChwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCA9PT0gdHJ1ZSAmJiB2YWx1ZSA9PT0gIiEiICYmIHByZXYudmFsdWUgPT09ICJbIikgewogICAgICAgICAgICB2YWx1ZSA9ICJeIjsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUucXVvdGVzID09PSAxICYmIHZhbHVlICE9PSAnIicpIHsKICAgICAgICAgIHZhbHVlID0gdXRpbHMuZXNjYXBlUmVnZXgodmFsdWUpOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gJyInKSB7CiAgICAgICAgICBzdGF0ZS5xdW90ZXMgPSBzdGF0ZS5xdW90ZXMgPT09IDEgPyAwIDogMTsKICAgICAgICAgIGlmIChvcHRzLmtlZXBRdW90ZXMgPT09IHRydWUpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKCIpIHsKICAgICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKSIpIHsKICAgICAgICAgIGlmIChzdGF0ZS5wYXJlbnMgPT09IDAgJiYgb3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoIm9wZW5pbmciLCAiKCIpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4dGdsb2IgPSBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChleHRnbG9iICYmIHN0YXRlLnBhcmVucyA9PT0gZXh0Z2xvYi5wYXJlbnMgKyAxKSB7CiAgICAgICAgICAgIGV4dGdsb2JDbG9zZShleHRnbG9icy5wb3AoKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwYXJlbiIsIHZhbHVlLCBvdXRwdXQ6IHN0YXRlLnBhcmVucyA/ICIpIiA6ICJcXCkiIH0pOwogICAgICAgICAgZGVjcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJbIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8ICFyZW1haW5pbmcoKS5pbmNsdWRlcygiXSIpKSB7CiAgICAgICAgICAgIGlmIChvcHRzLm5vYnJhY2tldCAhPT0gdHJ1ZSAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpbmNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImJyYWNrZXQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJdIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8IHByZXYgJiYgcHJldi50eXBlID09PSAiYnJhY2tldCIgJiYgcHJldi52YWx1ZS5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICJbIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQ6IGBcXCR7dmFsdWV9YCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSBwcmV2LnZhbHVlLnNsaWNlKDEpOwogICAgICAgICAgaWYgKHByZXYucG9zaXggIT09IHRydWUgJiYgcHJldlZhbHVlWzBdID09PSAiXiIgJiYgIXByZXZWYWx1ZS5pbmNsdWRlcygiLyIpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYC8ke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IGZhbHNlIHx8IHV0aWxzLmhhc1JlZ2V4Q2hhcnMocHJldlZhbHVlKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSB1dGlscy5lc2NhcGVSZWdleChwcmV2LnZhbHVlKTsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi52YWx1ZS5sZW5ndGgpOwogICAgICAgICAgaWYgKG9wdHMubGl0ZXJhbEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBlc2NhcGVkOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gZXNjYXBlZDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlID0gYCgke2NhcHR1cmV9JHtlc2NhcGVkfXwke3ByZXYudmFsdWV9KWA7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi52YWx1ZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ7IiAmJiBvcHRzLm5vYnJhY2UgIT09IHRydWUpIHsKICAgICAgICAgIGluY3JlbWVudCgiYnJhY2VzIik7CiAgICAgICAgICBjb25zdCBvcGVuID0gewogICAgICAgICAgICB0eXBlOiAiYnJhY2UiLAogICAgICAgICAgICB2YWx1ZSwKICAgICAgICAgICAgb3V0cHV0OiAiKCIsCiAgICAgICAgICAgIG91dHB1dEluZGV4OiBzdGF0ZS5vdXRwdXQubGVuZ3RoLAogICAgICAgICAgICB0b2tlbnNJbmRleDogc3RhdGUudG9rZW5zLmxlbmd0aAogICAgICAgICAgfTsKICAgICAgICAgIGJyYWNlcy5wdXNoKG9wZW4pOwogICAgICAgICAgcHVzaChvcGVuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ9IikgewogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKG9wdHMubm9icmFjZSA9PT0gdHJ1ZSB8fCAhYnJhY2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IG91dHB1dCA9ICIpIjsKICAgICAgICAgIGlmIChicmFjZS5kb3RzID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IGFyciA9IHRva2Vucy5zbGljZSgpOwogICAgICAgICAgICBjb25zdCByYW5nZSA9IFtdOwogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSA9PT0gImJyYWNlIikgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSAhPT0gImRvdHMiKSB7CiAgICAgICAgICAgICAgICByYW5nZS51bnNoaWZ0KGFycltpXS52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG91dHB1dCA9IGV4cGFuZFJhbmdlKHJhbmdlLCBvcHRzKTsKICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChicmFjZS5jb21tYSAhPT0gdHJ1ZSAmJiBicmFjZS5kb3RzICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IG91dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCBicmFjZS5vdXRwdXRJbmRleCk7CiAgICAgICAgICAgIGNvbnN0IHRva3MgPSBzdGF0ZS50b2tlbnMuc2xpY2UoYnJhY2UudG9rZW5zSW5kZXgpOwogICAgICAgICAgICBicmFjZS52YWx1ZSA9IGJyYWNlLm91dHB1dCA9ICJcXHsiOwogICAgICAgICAgICB2YWx1ZSA9IG91dHB1dCA9ICJcXH0iOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBvdXQ7CiAgICAgICAgICAgIGZvciAoY29uc3QgdCBvZiB0b2tzKSB7CiAgICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHQub3V0cHV0IHx8IHQudmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2UiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGJyYWNlcy5wb3AoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ8IikgewogICAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uY29uZGl0aW9ucysrOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiLCIpIHsKICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChicmFjZSAmJiBzdGFja1tzdGFjay5sZW5ndGggLSAxXSA9PT0gImJyYWNlcyIpIHsKICAgICAgICAgICAgYnJhY2UuY29tbWEgPSB0cnVlOwogICAgICAgICAgICBvdXRwdXQgPSAifCI7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImNvbW1hIiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIvIikgewogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImRvdCIgJiYgc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGF0ZS5zdGFydCA9IHN0YXRlLmluZGV4ICsgMTsKICAgICAgICAgICAgc3RhdGUuY29uc3VtZWQgPSAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gIiI7CiAgICAgICAgICAgIHRva2Vucy5wb3AoKTsKICAgICAgICAgICAgcHJldiA9IGJvczsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWUsIG91dHB1dDogU0xBU0hfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIuIikgewogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyA+IDAgJiYgcHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIi4iKSBwcmV2Lm91dHB1dCA9IERPVF9MSVRFUkFMOwogICAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJkb3RzIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIGJyYWNlLmRvdHMgPSB0cnVlOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFjZXMgKyBzdGF0ZS5wYXJlbnMgPT09IDAgJiYgcHJldi50eXBlICE9PSAiYm9zIiAmJiBwcmV2LnR5cGUgIT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogRE9UX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJkb3QiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICI/IikgewogICAgICAgICAgY29uc3QgaXNHcm91cCA9IHByZXYgJiYgcHJldi52YWx1ZSA9PT0gIigiOwogICAgICAgICAgaWYgKCFpc0dyb3VwICYmIG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicW1hcmsiLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAicGFyZW4iKSB7CiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBwZWVrKCk7CiAgICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgICAgaWYgKHByZXYudmFsdWUgPT09ICIoIiAmJiAhL1shPTw6XS8udGVzdChuZXh0KSB8fCBuZXh0ID09PSAiPCIgJiYgIS88KFshPV18XHcrPikvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgICAgb3V0cHV0ID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMuZG90ICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzbGFzaCIgfHwgcHJldi50eXBlID09PSAiYm9zIikpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJxbWFyayIsIHZhbHVlLCBvdXRwdXQ6IFFNQVJLX05PX0RPVCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUksgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiISIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIikgewogICAgICAgICAgICBpZiAocGVlaygyKSAhPT0gIj8iIHx8ICEvWyE9PDpdLy50ZXN0KHBlZWsoMykpKSB7CiAgICAgICAgICAgICAgZXh0Z2xvYk9wZW4oIm5lZ2F0ZSIsIHZhbHVlKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgc3RhdGUuaW5kZXggPT09IDApIHsKICAgICAgICAgICAgbmVnYXRlKCk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIrIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicGx1cyIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCIgfHwgb3B0cy5yZWdleCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUsIG91dHB1dDogUExVU19MSVRFUkFMIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIChwcmV2LnR5cGUgPT09ICJicmFja2V0IiB8fCBwcmV2LnR5cGUgPT09ICJwYXJlbiIgfHwgcHJldi50eXBlID09PSAiYnJhY2UiKSB8fCBzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlOiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiQCIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIiAmJiBwZWVrKDIpICE9PSAiPyIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJhdCIsIGV4dGdsb2I6IHRydWUsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSAhPT0gIioiKSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09ICIkIiB8fCB2YWx1ZSA9PT0gIl4iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGlmIChtYXRjaCkgewogICAgICAgICAgICB2YWx1ZSArPSBtYXRjaFswXTsKICAgICAgICAgICAgc3RhdGUuaW5kZXggKz0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIiB8fCBwcmV2LnN0YXIgPT09IHRydWUpKSB7CiAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICBwcmV2LnN0YXIgPSB0cnVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdCA9IHJlbWFpbmluZygpOwogICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiAvXlwoW14/XS8udGVzdChyZXN0KSkgewogICAgICAgICAgZXh0Z2xvYk9wZW4oInN0YXIiLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gInN0YXIiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2dsb2JzdGFyID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHByaW9yID0gcHJldi5wcmV2OwogICAgICAgICAgY29uc3QgYmVmb3JlID0gcHJpb3IucHJldjsKICAgICAgICAgIGNvbnN0IGlzU3RhcnQgPSBwcmlvci50eXBlID09PSAic2xhc2giIHx8IHByaW9yLnR5cGUgPT09ICJib3MiOwogICAgICAgICAgY29uc3QgYWZ0ZXJTdGFyID0gYmVmb3JlICYmIChiZWZvcmUudHlwZSA9PT0gInN0YXIiIHx8IGJlZm9yZS50eXBlID09PSAiZ2xvYnN0YXIiKTsKICAgICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUgJiYgKCFpc1N0YXJ0IHx8IHJlc3RbMF0gJiYgcmVzdFswXSAhPT0gIi8iKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAocHJpb3IudHlwZSA9PT0gImNvbW1hIiB8fCBwcmlvci50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IGV4dGdsb2JzLmxlbmd0aCAmJiAocHJpb3IudHlwZSA9PT0gInBpcGUiIHx8IHByaW9yLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKCFpc1N0YXJ0ICYmIHByaW9yLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAocmVzdC5zbGljZSgwLCAzKSA9PT0gIi8qKiIpIHsKICAgICAgICAgICAgY29uc3QgYWZ0ZXIgPSBpbnB1dFtzdGF0ZS5pbmRleCArIDRdOwogICAgICAgICAgICBpZiAoYWZ0ZXIgJiYgYWZ0ZXIgIT09ICIvIikgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3QgPSByZXN0LnNsaWNlKDMpOwogICAgICAgICAgICBjb25zdW1lKCIvKioiLCAzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiBlb3MoKSkgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJpb3IudHlwZSA9PT0gInNsYXNoIiAmJiBwcmlvci5wcmV2LnR5cGUgIT09ICJib3MiICYmICFhZnRlclN0YXIgJiYgZW9zKCkpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpICsgKG9wdHMuc3RyaWN0U2xhc2hlcyA/ICIpIiA6ICJ8JCkiKTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgcmVzdFswXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc3RbMV0gIT09IHZvaWQgMCA/ICJ8JCIgOiAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH18JHtTTEFTSF9MSVRFUkFMfSR7ZW5kfSlgOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSArIGFkdmFuY2UoKSk7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZTogIi8iLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9fCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdG9rZW4gPSB7IHR5cGU6ICJzdGFyIiwgdmFsdWUsIG91dHB1dDogc3RhciB9OwogICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUpIHsKICAgICAgICAgIHRva2VuLm91dHB1dCA9ICIuKj8iOwogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImJvcyIgfHwgcHJldi50eXBlID09PSAic2xhc2giKSB7CiAgICAgICAgICAgIHRva2VuLm91dHB1dCA9IG5vZG90ICsgdG9rZW4ub3V0cHV0OwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh0b2tlbik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIikgJiYgb3B0cy5yZWdleCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gdmFsdWU7CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0IHx8IHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gTk9fRE9UX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZG90ID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBub2RvdDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwZWVrKCkgIT09ICIqIikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE9ORV9DSEFSOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUuYnJhY2tldHMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJdIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiWyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUucGFyZW5zID4gMCkgewogICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiKSIpKTsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy5lc2NhcGVMYXN0KHN0YXRlLm91dHB1dCwgIigiKTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFjZXMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJ9IikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAieyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2VzIik7CiAgICAgIH0KICAgICAgaWYgKG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSAmJiAocHJldi50eXBlID09PSAic3RhciIgfHwgcHJldi50eXBlID09PSAiYnJhY2tldCIpKSB7CiAgICAgICAgcHVzaCh7IHR5cGU6ICJtYXliZV9zbGFzaCIsIHZhbHVlOiAiIiwgb3V0cHV0OiBgJHtTTEFTSF9MSVRFUkFMfT9gIH0pOwogICAgICB9CiAgICAgIGlmIChzdGF0ZS5iYWNrdHJhY2sgPT09IHRydWUpIHsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHN0YXRlLnRva2VucykgewogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgICBpZiAodG9rZW4uc3VmZml4KSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSB0b2tlbi5zdWZmaXg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBwYXJzZS5mYXN0cGF0aHMgPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IHsgLi4ub3B0aW9ucyB9OwogICAgICBjb25zdCBtYXggPSB0eXBlb2Ygb3B0cy5tYXhMZW5ndGggPT09ICJudW1iZXIiID8gTWF0aC5taW4oTUFYX0xFTkdUSCwgb3B0cy5tYXhMZW5ndGgpIDogTUFYX0xFTkdUSDsKICAgICAgY29uc3QgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBTTEFTSF9MSVRFUkFMLAogICAgICAgIE9ORV9DSEFSLAogICAgICAgIERPVFNfU0xBU0gsCiAgICAgICAgTk9fRE9ULAogICAgICAgIE5PX0RPVFMsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBTVEFSLAogICAgICAgIFNUQVJUX0FOQ0hPUgogICAgICB9ID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gTk9fRE9UUyA6IE5PX0RPVDsKICAgICAgY29uc3Qgc2xhc2hEb3QgPSBvcHRzLmRvdCA/IE5PX0RPVFNfU0xBU0ggOiBOT19ET1Q7CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IHN0YXRlID0geyBuZWdhdGVkOiBmYWxzZSwgcHJlZml4OiAiIiB9OwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/ICIuKj8iIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIGlmIChvcHRzMi5ub2dsb2JzdGFyID09PSB0cnVlKSByZXR1cm4gc3RhcjsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3QgY3JlYXRlID0gKHN0cjIpID0+IHsKICAgICAgICBzd2l0Y2ggKHN0cjIpIHsKICAgICAgICAgIGNhc2UgIioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIiovKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtub2RvdH0ke3N0YXJ9JHtTTEFTSF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzbGFzaERvdH0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqIjoKICAgICAgICAgICAgcmV0dXJuIG5vZG90ICsgZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBjYXNlICIqKi8qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke3N0YXJ9JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovLioiOgogICAgICAgICAgICByZXR1cm4gYCg/OiR7bm9kb3R9JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KT8ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBkZWZhdWx0OiB7CiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gL14oLio/KVwuKFx3KykkLy5leGVjKHN0cjIpOwogICAgICAgICAgICBpZiAoIW1hdGNoKSByZXR1cm47CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZTIgPSBjcmVhdGUobWF0Y2hbMV0pOwogICAgICAgICAgICBpZiAoIXNvdXJjZTIpIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTIgKyBET1RfTElURVJBTCArIG1hdGNoWzJdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgb3V0cHV0ID0gdXRpbHMucmVtb3ZlUHJlZml4KGlucHV0LCBzdGF0ZSk7CiAgICAgIGxldCBzb3VyY2UgPSBjcmVhdGUob3V0cHV0KTsKICAgICAgaWYgKHNvdXJjZSAmJiBvcHRzLnN0cmljdFNsYXNoZXMgIT09IHRydWUpIHsKICAgICAgICBzb3VyY2UgKz0gYCR7U0xBU0hfTElURVJBTH0/YDsKICAgICAgfQogICAgICByZXR1cm4gc291cmNlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBhcnNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BpY29tYXRjaC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdDIgPSAodmFsKSA9PiB2YWwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIHZhciBwaWNvbWF0Y2ggPSAoZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShnbG9iKSkgewogICAgICAgIGNvbnN0IGZucyA9IGdsb2IubWFwKChpbnB1dCkgPT4gcGljb21hdGNoKGlucHV0LCBvcHRpb25zLCByZXR1cm5TdGF0ZSkpOwogICAgICAgIGNvbnN0IGFycmF5TWF0Y2hlciA9IChzdHIyKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IGlzTWF0Y2ggb2YgZm5zKSB7CiAgICAgICAgICAgIGNvbnN0IHN0YXRlMiA9IGlzTWF0Y2goc3RyMik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdDIoZ2xvYikgJiYgZ2xvYi50b2tlbnMgJiYgZ2xvYi5pbnB1dDsKICAgICAgaWYgKGdsb2IgPT09ICIiIHx8IHR5cGVvZiBnbG9iICE9PSAic3RyaW5nIiAmJiAhaXNTdGF0ZSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHBhdHRlcm4gdG8gYmUgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHBvc2l4ID0gb3B0cy53aW5kb3dzOwogICAgICBjb25zdCByZWdleCA9IGlzU3RhdGUgPyBwaWNvbWF0Y2guY29tcGlsZVJlKGdsb2IsIG9wdGlvbnMpIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zLCBmYWxzZSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHN0YXRlID0gcmVnZXguc3RhdGU7CiAgICAgIGRlbGV0ZSByZWdleC5zdGF0ZTsKICAgICAgbGV0IGlzSWdub3JlZCA9ICgpID0+IGZhbHNlOwogICAgICBpZiAob3B0cy5pZ25vcmUpIHsKICAgICAgICBjb25zdCBpZ25vcmVPcHRzID0geyAuLi5vcHRpb25zLCBpZ25vcmU6IG51bGwsIG9uTWF0Y2g6IG51bGwsIG9uUmVzdWx0OiBudWxsIH07CiAgICAgICAgaXNJZ25vcmVkID0gcGljb21hdGNoKG9wdHMuaWdub3JlLCBpZ25vcmVPcHRzLCByZXR1cm5TdGF0ZSk7CiAgICAgIH0KICAgICAgY29uc3QgbWF0Y2hlciA9IChpbnB1dCwgcmV0dXJuT2JqZWN0ID0gZmFsc2UpID0+IHsKICAgICAgICBjb25zdCB7IGlzTWF0Y2gsIG1hdGNoLCBvdXRwdXQgfSA9IHBpY29tYXRjaC50ZXN0KGlucHV0LCByZWdleCwgb3B0aW9ucywgeyBnbG9iLCBwb3NpeCB9KTsKICAgICAgICBjb25zdCByZXN1bHQgPSB7IGdsb2IsIHN0YXRlLCByZWdleCwgcG9zaXgsIGlucHV0LCBvdXRwdXQsIG1hdGNoLCBpc01hdGNoIH07CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uUmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uUmVzdWx0KHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc01hdGNoID09PSBmYWxzZSkgewogICAgICAgICAgcmVzdWx0LmlzTWF0Y2ggPSBmYWxzZTsKICAgICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSWdub3JlZChpbnB1dCkpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbklnbm9yZSA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBvcHRzLm9uSWdub3JlKHJlc3VsdCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIG9wdHMub25NYXRjaCA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgb3B0cy5vbk1hdGNoKHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiB0cnVlOwogICAgICB9OwogICAgICBpZiAocmV0dXJuU3RhdGUpIHsKICAgICAgICBtYXRjaGVyLnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hdGNoZXI7CiAgICB9OwogICAgcGljb21hdGNoLnRlc3QgPSAoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0gPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGlucHV0IHRvIGJlIGEgc3RyaW5nIik7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ID09PSAiIikgewogICAgICAgIHJldHVybiB7IGlzTWF0Y2g6IGZhbHNlLCBvdXRwdXQ6ICIiIH07CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IChwb3NpeCA/IHV0aWxzLnRvUG9zaXhTbGFzaGVzIDogbnVsbCk7CiAgICAgIGxldCBtYXRjaCA9IGlucHV0ID09PSBnbG9iOwogICAgICBsZXQgb3V0cHV0ID0gbWF0Y2ggJiYgZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICBpZiAobWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgb3V0cHV0ID0gZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICAgIG1hdGNoID0gb3V0cHV0ID09PSBnbG9iOwogICAgICB9CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UgfHwgb3B0cy5jYXB0dXJlID09PSB0cnVlKSB7CiAgICAgICAgaWYgKG9wdHMubWF0Y2hCYXNlID09PSB0cnVlIHx8IG9wdHMuYmFzZW5hbWUgPT09IHRydWUpIHsKICAgICAgICAgIG1hdGNoID0gcGljb21hdGNoLm1hdGNoQmFzZShpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHBvc2l4KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWF0Y2ggPSByZWdleC5leGVjKG91dHB1dCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGlzTWF0Y2g6IEJvb2xlYW4obWF0Y2gpLCBtYXRjaCwgb3V0cHV0IH07CiAgICB9OwogICAgcGljb21hdGNoLm1hdGNoQmFzZSA9IChpbnB1dCwgZ2xvYiwgb3B0aW9ucykgPT4gewogICAgICBjb25zdCByZWdleCA9IGdsb2IgaW5zdGFuY2VvZiBSZWdFeHAgPyBnbG9iIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zKTsKICAgICAgcmV0dXJuIHJlZ2V4LnRlc3QodXRpbHMuYmFzZW5hbWUoaW5wdXQpKTsKICAgIH07CiAgICBwaWNvbWF0Y2guaXNNYXRjaCA9IChzdHIyLCBwYXR0ZXJucywgb3B0aW9ucykgPT4gcGljb21hdGNoKHBhdHRlcm5zLCBvcHRpb25zKShzdHIyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2gyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBwaWNvID0gcmVxdWlyZV9waWNvbWF0Y2goKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICBmdW5jdGlvbiBwaWNvbWF0Y2goZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgewogICAgICBpZiAob3B0aW9ucyAmJiAob3B0aW9ucy53aW5kb3dzID09PSBudWxsIHx8IG9wdGlvbnMud2luZG93cyA9PT0gdm9pZCAwKSkgewogICAgICAgIG9wdGlvbnMgPSB7IC4uLm9wdGlvbnMsIHdpbmRvd3M6IHV0aWxzLmlzV2luZG93cygpIH07CiAgICAgIH0KICAgICAgcmV0dXJuIHBpY28oZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUpOwogICAgfQogICAgT2JqZWN0LmFzc2lnbihwaWNvbWF0Y2gsIHBpY28pOwogICAgbW9kdWxlMi5leHBvcnRzID0gcGljb21hdGNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBpY29tYXRjaF8xID0gcmVxdWlyZV9waWNvbWF0Y2gyKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBQYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9wYXR0ZXJucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGFkZFBhdHRlcm4ocGF0dGVybiwgcmVwbGFjZW1lbnRGbikgewogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSA/IHBhdHRlcm4gOiBbcGF0dGVybl07CiAgICAgICAgZm9yIChjb25zdCBnbG9iIG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICBjb25zdCB7IG91dHB1dCB9ID0gKDAsIHBpY29tYXRjaF8xLnBhcnNlKShnbG9iKTsKICAgICAgICAgIHRoaXMuX3BhdHRlcm5zLnNldChuZXcgUmVnRXhwKGBeJHtvdXRwdXR9JGApLCByZXBsYWNlbWVudEZuKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBuZXdQYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9wYXR0ZXJucy5mb3JFYWNoKChmbiwgcmUpID0+IHsKICAgICAgICAgIGlmIChyZS50ZXN0KHBhdGgpKSB7CiAgICAgICAgICAgIG5ld1BhdGggPSBmbihuZXdQYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3UGF0aDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSBQYXR0ZXJuTWF0Y2hpbmdIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qcwp2YXIgcmVxdWlyZV9yZWNvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0MikgPT4gWy4uLnNldDJdKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gKDAsIHJ4anNfMS5vZikodHJ1ZSkgOiB0aGlzLndpbGxEZWxldGUocGF0aCkgfHwgdGhpcy53aWxsUmVuYW1lKHBhdGgpID8gKDAsIHJ4anNfMS5vZikoZmFsc2UpIDogdGhpcy5fYmFjay5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5pc0RpcmVjdG9yeShwYXRoKSA6IHRoaXMuX2JhY2suaXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNGaWxlKHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suaXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5zdGF0KHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKG51bGwpIDogdGhpcy5fYmFjay5zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIHdhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICB3aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbE92ZXJ3cml0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb1JlbmFtZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZVRvKHBhdGgsIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZ2V0KHBhdGgpID09PSB0bzsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gQ29yZEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcwp2YXIgcmVxdWlyZV9zYWZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2FmZVJlYWRvbmx5SG9zdCA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFNhZmVSZWFkb25seUhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShbXSkpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoZmFsc2UpKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNGaWxlKHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShmYWxzZSkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0cy4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0ICYmIG1heWJlU3RhdC5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikobnVsbCkpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNhZmVSZWFkb25seUhvc3QgPSBTYWZlUmVhZG9ubHlIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBTY29wZWRIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihkZWxlZ2F0ZSwgX3Jvb3QgPSBwYXRoXzEuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICBzdXBlcihkZWxlZ2F0ZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IF9yb290OwogICAgICB9CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5qb2luKSh0aGlzLl9yb290LCBwYXRoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSBTY29wZWRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzCnZhciByZXF1aXJlX2hvc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGVzdCA9IHZvaWQgMDsKICAgIHZhciB0ZXN0ID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdGVzdCgpKTsKICAgIGV4cG9ydHMyLnRlc3QgPSB0ZXN0OwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYWxpYXMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYnVmZmVyMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jcmVhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW1wdHkyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbWVtb3J5KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BhdHRlcm4yKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3JlY29yZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zYWZlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Njb3BlZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zeW5jKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Jlc29sdmVyKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMKdmFyIHJlcXVpcmVfdmlydHVhbF9mcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmlydHVhbEZzID0gdm9pZCAwOwogICAgdmFyIHZpcnR1YWxGcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2hvc3QoKSk7CiAgICBleHBvcnRzMi52aXJ0dWFsRnMgPSB2aXJ0dWFsRnM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXRoKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IGNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVdvcmtzcGFjZUhvc3QoaG9zdCkgewogICAgICBjb25zdCB3b3Jrc3BhY2VIb3N0ID0gewogICAgICAgIGFzeW5jIHJlYWRGaWxlKHBhdGgpIHsKICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QucmVhZCgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIHJldHVybiB2aXJ0dWFsX2ZzXzEudmlydHVhbEZzLmZpbGVCdWZmZXJUb1N0cmluZyhkYXRhKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoLCBkYXRhKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LndyaXRlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSwgdmlydHVhbF9mc18xLnZpcnR1YWxGcy5zdHJpbmdUb0ZpbGVCdWZmZXIoZGF0YSkpKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNEaXJlY3RvcnkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICB9IGNhdGNoIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNGaWxlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiB3b3Jrc3BhY2VIb3N0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcwp2YXIgcmVxdWlyZV9zY2FubmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zY2FubmVyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiBjcmVhdGVTY2FubmVyKHRleHQsIGlnbm9yZVRyaXZpYSA9IGZhbHNlKSB7CiAgICAgICAgY29uc3QgbGVuID0gdGV4dC5sZW5ndGg7CiAgICAgICAgbGV0IHBvcyA9IDAsIHZhbHVlID0gIiIsIHRva2VuT2Zmc2V0ID0gMCwgdG9rZW4gPSAxNiwgbGluZU51bWJlciA9IDAsIGxpbmVTdGFydE9mZnNldCA9IDAsIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgc2NhbkVycm9yID0gMDsKICAgICAgICBmdW5jdGlvbiBzY2FuSGV4RGlnaXRzKGNvdW50LCBleGFjdCkgewogICAgICAgICAgbGV0IGRpZ2l0cyA9IDA7CiAgICAgICAgICBsZXQgdmFsdWUyID0gMDsKICAgICAgICAgIHdoaWxlIChkaWdpdHMgPCBjb3VudCB8fCAhZXhhY3QpIHsKICAgICAgICAgICAgbGV0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA+PSA0OCAmJiBjaCA8PSA1NykgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA0ODsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA2NSAmJiBjaCA8PSA3MCkgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA2NSArIDEwOwogICAgICAgICAgICB9IGVsc2UgaWYgKGNoID49IDk3ICYmIGNoIDw9IDEwMikgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA5NyArIDEwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBkaWdpdHMrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChkaWdpdHMgPCBjb3VudCkgewogICAgICAgICAgICB2YWx1ZTIgPSAtMTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB2YWx1ZTI7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNldFBvc2l0aW9uKG5ld1Bvc2l0aW9uKSB7CiAgICAgICAgICBwb3MgPSBuZXdQb3NpdGlvbjsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IDA7CiAgICAgICAgICB0b2tlbiA9IDE2OwogICAgICAgICAgc2NhbkVycm9yID0gMDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk51bWJlcigpIHsKICAgICAgICAgIGxldCBzdGFydCA9IHBvczsKICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDgpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDYpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kID0gcG9zOwogICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNjkgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwMSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDMgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ1KSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgZW5kID0gcG9zOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgZW5kKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2NhblN0cmluZygpIHsKICAgICAgICAgIGxldCByZXN1bHQgPSAiIiwgc3RhcnQgPSBwb3M7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAyOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA9PT0gMzQpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNoID09PSA5MikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBjaDIgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKyspOwogICAgICAgICAgICAgIHN3aXRjaCAoY2gyKSB7CiAgICAgICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gJyInOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXFwiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiLyI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSA5ODoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcYiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMDI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGYiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTEwOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxuIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcciI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTY6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiCSI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTc6CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoMyA9IHNjYW5IZXhEaWdpdHMoNCwgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgIGlmIChjaDMgPj0gMCkgewogICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNoMyk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN0YXJ0ID0gcG9zOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA+PSAwICYmIGNoIDw9IDMxKSB7CiAgICAgICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNoKSkgewogICAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0KCkgewogICAgICAgICAgdmFsdWUgPSAiIjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IHBvczsKICAgICAgICAgIGxpbmVTdGFydE9mZnNldCA9IGxpbmVOdW1iZXI7CiAgICAgICAgICBwcmV2VG9rZW5MaW5lU3RhcnRPZmZzZXQgPSB0b2tlbkxpbmVTdGFydE9mZnNldDsKICAgICAgICAgIGlmIChwb3MgPj0gbGVuKSB7CiAgICAgICAgICAgIHRva2VuT2Zmc2V0ID0gbGVuOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNzsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpKSB7CiAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIGNvZGUgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgfSB3aGlsZSAoaXNXaGl0ZVNwYWNlKGNvZGUpKTsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgIGlmIChjb2RlID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXG4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE0OwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIC8vIHRva2VuczogW117fTosCiAgICAgICAgICAgIGNhc2UgMTIzOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDI7CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMzsKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA0OwogICAgICAgICAgICBjYXNlIDU4OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDY7CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNTsKICAgICAgICAgICAgLy8gc3RyaW5ncwogICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHZhbHVlID0gc2NhblN0cmluZygpOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEwOwogICAgICAgICAgICAvLyBjb21tZW50cwogICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gcG9zIC0gMTsKICAgICAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDIpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgY29uc3Qgc2FmZUxlbmd0aCA9IGxlbiAtIDE7CiAgICAgICAgICAgICAgICBsZXQgY29tbWVudENsb3NlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHNhZmVMZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgY2ggPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSA0MiAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQ3KSB7CiAgICAgICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICAgICAgY29tbWVudENsb3NlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoY2ggPT09IDEzICYmIHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMCkgewogICAgICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgICAgICAgICB0b2tlbkxpbmVTdGFydE9mZnNldCA9IHBvczsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjb21tZW50Q2xvc2VkKSB7CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEzOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAvLyBudW1iZXJzCiAgICAgICAgICAgIGNhc2UgNDU6CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID09PSBsZW4gfHwgIWlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGZvdW5kIGEgbWludXMsIGZvbGxvd2VkIGJ5IGEgbnVtYmVyIHNvCiAgICAgICAgICAgIC8vIHdlIGZhbGwgdGhyb3VnaCB0byBwcm9jZWVkIHdpdGggc2Nhbm5pbmcKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ4OgogICAgICAgICAgICBjYXNlIDQ5OgogICAgICAgICAgICBjYXNlIDUwOgogICAgICAgICAgICBjYXNlIDUxOgogICAgICAgICAgICBjYXNlIDUyOgogICAgICAgICAgICBjYXNlIDUzOgogICAgICAgICAgICBjYXNlIDU0OgogICAgICAgICAgICBjYXNlIDU1OgogICAgICAgICAgICBjYXNlIDU2OgogICAgICAgICAgICBjYXNlIDU3OgogICAgICAgICAgICAgIHZhbHVlICs9IHNjYW5OdW1iZXIoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMTsKICAgICAgICAgICAgLy8gbGl0ZXJhbHMgYW5kIHVua25vd24gc3ltYm9scwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBsZW4gJiYgaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0b2tlbk9mZnNldCAhPT0gcG9zKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHRva2VuT2Zmc2V0LCBwb3MpOwogICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZSkgewogICAgICAgICAgICAgICAgICBjYXNlICJ0cnVlIjoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA4OwogICAgICAgICAgICAgICAgICBjYXNlICJmYWxzZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gOTsKICAgICAgICAgICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc1Vua25vd25Db250ZW50Q2hhcmFjdGVyKGNvZGUpIHsKICAgICAgICAgIGlmIChpc1doaXRlU3BhY2UoY29kZSkgfHwgaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICBjYXNlIDkzOgogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgY2FzZSA5MToKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgY2FzZSA0NDoKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHROb25Ucml2aWEoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0OwogICAgICAgICAgZG8gewogICAgICAgICAgICByZXN1bHQgPSBzY2FuTmV4dCgpOwogICAgICAgICAgfSB3aGlsZSAocmVzdWx0ID49IDEyICYmIHJlc3VsdCA8PSAxNSk7CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgc2V0UG9zaXRpb24sCiAgICAgICAgICBnZXRQb3NpdGlvbjogKCkgPT4gcG9zLAogICAgICAgICAgc2NhbjogaWdub3JlVHJpdmlhID8gc2Nhbk5leHROb25Ucml2aWEgOiBzY2FuTmV4dCwKICAgICAgICAgIGdldFRva2VuOiAoKSA9PiB0b2tlbiwKICAgICAgICAgIGdldFRva2VuVmFsdWU6ICgpID0+IHZhbHVlLAogICAgICAgICAgZ2V0VG9rZW5PZmZzZXQ6ICgpID0+IHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5MZW5ndGg6ICgpID0+IHBvcyAtIHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5TdGFydExpbmU6ICgpID0+IGxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRDaGFyYWN0ZXI6ICgpID0+IHRva2VuT2Zmc2V0IC0gcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5FcnJvcjogKCkgPT4gc2NhbkVycm9yCiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gY3JlYXRlU2Nhbm5lcjsKICAgICAgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID09PSAzMiB8fCBjaCA9PT0gOTsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0xpbmVCcmVhayhjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMTAgfHwgY2ggPT09IDEzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRGlnaXQoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPj0gNDggJiYgY2ggPD0gNTc7CiAgICAgIH0KICAgICAgdmFyIENoYXJhY3RlckNvZGVzOwogICAgICAoZnVuY3Rpb24oQ2hhcmFjdGVyQ29kZXMyKSB7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibGluZUZlZWQiXSA9IDEwXSA9ICJsaW5lRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2FycmlhZ2VSZXR1cm4iXSA9IDEzXSA9ICJjYXJyaWFnZVJldHVybiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic3BhY2UiXSA9IDMyXSA9ICJzcGFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzAiXSA9IDQ4XSA9ICJfMCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzEiXSA9IDQ5XSA9ICJfMSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzIiXSA9IDUwXSA9ICJfMiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzMiXSA9IDUxXSA9ICJfMyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzQiXSA9IDUyXSA9ICJfNCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzUiXSA9IDUzXSA9ICJfNSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzYiXSA9IDU0XSA9ICJfNiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzciXSA9IDU1XSA9ICJfNyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzgiXSA9IDU2XSA9ICJfOCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzkiXSA9IDU3XSA9ICJfOSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYSJdID0gOTddID0gImEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImIiXSA9IDk4XSA9ICJiIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjIl0gPSA5OV0gPSAiYyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZCJdID0gMTAwXSA9ICJkIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJlIl0gPSAxMDFdID0gImUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImYiXSA9IDEwMl0gPSAiZiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZyJdID0gMTAzXSA9ICJnIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJoIl0gPSAxMDRdID0gImgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImkiXSA9IDEwNV0gPSAiaSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaiJdID0gMTA2XSA9ICJqIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJrIl0gPSAxMDddID0gImsiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImwiXSA9IDEwOF0gPSAibCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibSJdID0gMTA5XSA9ICJtIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJuIl0gPSAxMTBdID0gIm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm8iXSA9IDExMV0gPSAibyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicCJdID0gMTEyXSA9ICJwIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJxIl0gPSAxMTNdID0gInEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInIiXSA9IDExNF0gPSAiciI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicyJdID0gMTE1XSA9ICJzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ0Il0gPSAxMTZdID0gInQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInUiXSA9IDExN10gPSAidSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidiJdID0gMTE4XSA9ICJ2IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ3Il0gPSAxMTldID0gInciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIngiXSA9IDEyMF0gPSAieCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieSJdID0gMTIxXSA9ICJ5IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ6Il0gPSAxMjJdID0gInoiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkEiXSA9IDY1XSA9ICJBIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJCIl0gPSA2Nl0gPSAiQiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQyJdID0gNjddID0gIkMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkQiXSA9IDY4XSA9ICJEIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJFIl0gPSA2OV0gPSAiRSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRiJdID0gNzBdID0gIkYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkciXSA9IDcxXSA9ICJHIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJIIl0gPSA3Ml0gPSAiSCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSSJdID0gNzNdID0gIkkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkoiXSA9IDc0XSA9ICJKIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJLIl0gPSA3NV0gPSAiSyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTCJdID0gNzZdID0gIkwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk0iXSA9IDc3XSA9ICJNIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJOIl0gPSA3OF0gPSAiTiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTyJdID0gNzldID0gIk8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlAiXSA9IDgwXSA9ICJQIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJRIl0gPSA4MV0gPSAiUSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUiJdID0gODJdID0gIlIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlMiXSA9IDgzXSA9ICJTIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJUIl0gPSA4NF0gPSAiVCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVSJdID0gODVdID0gIlUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlYiXSA9IDg2XSA9ICJWIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJXIl0gPSA4N10gPSAiVyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWCJdID0gODhdID0gIlgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlkiXSA9IDg5XSA9ICJZIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJaIl0gPSA5MF0gPSAiWiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYXN0ZXJpc2siXSA9IDQyXSA9ICJhc3RlcmlzayI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYmFja3NsYXNoIl0gPSA5Ml0gPSAiYmFja3NsYXNoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNlIl0gPSAxMjVdID0gImNsb3NlQnJhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNsb3NlQnJhY2tldCJdID0gOTNdID0gImNsb3NlQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29sb24iXSA9IDU4XSA9ICJjb2xvbiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29tbWEiXSA9IDQ0XSA9ICJjb21tYSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG90Il0gPSA0Nl0gPSAiZG90IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJkb3VibGVRdW90ZSJdID0gMzRdID0gImRvdWJsZVF1b3RlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJtaW51cyJdID0gNDVdID0gIm1pbnVzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2UiXSA9IDEyM10gPSAib3BlbkJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2tldCJdID0gOTFdID0gIm9wZW5CcmFja2V0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJwbHVzIl0gPSA0M10gPSAicGx1cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic2xhc2giXSA9IDQ3XSA9ICJzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZm9ybUZlZWQiXSA9IDEyXSA9ICJmb3JtRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidGFiIl0gPSA5XSA9ICJ0YWIiOwogICAgICB9KShDaGFyYWN0ZXJDb2RlcyB8fCAoQ2hhcmFjdGVyQ29kZXMgPSB7fSkpOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzCnZhciByZXF1aXJlX3N0cmluZ19pbnRlcm4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3N0cmluZy1pbnRlcm4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLnN1cHBvcnRlZEVvbHMgPSBleHBvcnRzMy5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlcyA9IGV4cG9ydHMzLmNhY2hlZFNwYWNlcyA9IHZvaWQgMDsKICAgICAgZXhwb3J0czMuY2FjaGVkU3BhY2VzID0gbmV3IEFycmF5KDIwKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICByZXR1cm4gIiAiLnJlcGVhdChpbmRleCk7CiAgICAgIH0pOwogICAgICBjb25zdCBtYXhDYWNoZWRWYWx1ZXMgPSAyMDA7CiAgICAgIGV4cG9ydHMzLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzID0gewogICAgICAgICIgIjogewogICAgICAgICAgIlxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcciI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgIgkiOiB7CiAgICAgICAgICAiXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHIiICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcclxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pCiAgICAgICAgfQogICAgICB9OwogICAgICBleHBvcnRzMy5zdXBwb3J0ZWRFb2xzID0gWyJcbiIsICJcciIsICJcclxuIl07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgc2Nhbm5lcl8xID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgc3RyaW5nX2ludGVybl8xID0gcmVxdWlyZV9zdHJpbmdfaW50ZXJuKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL3NjYW5uZXIiLCAiLi9zdHJpbmctaW50ZXJuIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNFT0wgPSBleHBvcnRzMy5mb3JtYXQgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgbGV0IGluaXRpYWxJbmRlbnRMZXZlbDsKICAgICAgICBsZXQgZm9ybWF0VGV4dDsKICAgICAgICBsZXQgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgIGxldCByYW5nZVN0YXJ0OwogICAgICAgIGxldCByYW5nZUVuZDsKICAgICAgICBpZiAocmFuZ2UpIHsKICAgICAgICAgIHJhbmdlU3RhcnQgPSByYW5nZS5vZmZzZXQ7CiAgICAgICAgICByYW5nZUVuZCA9IHJhbmdlU3RhcnQgKyByYW5nZS5sZW5ndGg7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSByYW5nZVN0YXJ0OwogICAgICAgICAgd2hpbGUgKGZvcm1hdFRleHRTdGFydCA+IDAgJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZm9ybWF0VGV4dFN0YXJ0IC0gMSkpIHsKICAgICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0LS07CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kT2Zmc2V0ID0gcmFuZ2VFbmQ7CiAgICAgICAgICB3aGlsZSAoZW5kT2Zmc2V0IDwgZG9jdW1lbnRUZXh0Lmxlbmd0aCAmJiAhaXNFT0woZG9jdW1lbnRUZXh0LCBlbmRPZmZzZXQpKSB7CiAgICAgICAgICAgIGVuZE9mZnNldCsrOwogICAgICAgICAgfQogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoZm9ybWF0VGV4dFN0YXJ0LCBlbmRPZmZzZXQpOwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gY29tcHV0ZUluZGVudExldmVsKGZvcm1hdFRleHQsIG9wdGlvbnMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3JtYXRUZXh0ID0gZG9jdW1lbnRUZXh0OwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gMDsKICAgICAgICAgIGZvcm1hdFRleHRTdGFydCA9IDA7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gMDsKICAgICAgICAgIHJhbmdlRW5kID0gZG9jdW1lbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZW9sID0gZ2V0RU9MKG9wdGlvbnMsIGRvY3VtZW50VGV4dCk7CiAgICAgICAgY29uc3QgZW9sRmFzdFBhdGhTdXBwb3J0ZWQgPSBzdHJpbmdfaW50ZXJuXzEuc3VwcG9ydGVkRW9scy5pbmNsdWRlcyhlb2wpOwogICAgICAgIGxldCBudW1iZXJMaW5lQnJlYWtzID0gMDsKICAgICAgICBsZXQgaW5kZW50TGV2ZWwgPSAwOwogICAgICAgIGxldCBpbmRlbnRWYWx1ZTsKICAgICAgICBpZiAob3B0aW9ucy5pbnNlcnRTcGFjZXMpIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tvcHRpb25zLnRhYlNpemUgfHwgNF0gPz8gcmVwZWF0MihzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdLCBvcHRpb25zLnRhYlNpemUgfHwgNCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gIgkiOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRlbnRUeXBlID0gaW5kZW50VmFsdWUgPT09ICIJIiA/ICIJIiA6ICIgIjsKICAgICAgICBsZXQgc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikoZm9ybWF0VGV4dCwgZmFsc2UpOwogICAgICAgIGxldCBoYXNFcnJvciA9IGZhbHNlOwogICAgICAgIGZ1bmN0aW9uIG5ld0xpbmVzQW5kSW5kZW50KCkgewogICAgICAgICAgaWYgKG51bWJlckxpbmVCcmVha3MgPiAxKSB7CiAgICAgICAgICAgIHJldHVybiByZXBlYXQyKGVvbCwgbnVtYmVyTGluZUJyZWFrcykgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBhbW91bnRPZlNwYWNlcyA9IGluZGVudFZhbHVlLmxlbmd0aCAqIChpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICBpZiAoIWVvbEZhc3RQYXRoU3VwcG9ydGVkIHx8IGFtb3VudE9mU3BhY2VzID4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF0ubGVuZ3RoKSB7CiAgICAgICAgICAgIHJldHVybiBlb2wgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYW1vdW50T2ZTcGFjZXMgPD0gMCkgewogICAgICAgICAgICByZXR1cm4gZW9sOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdW2Ftb3VudE9mU3BhY2VzXTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICBsZXQgdG9rZW4gPSBzY2FubmVyLnNjYW4oKTsKICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAwOwogICAgICAgICAgd2hpbGUgKHRva2VuID09PSAxNSB8fCB0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgaWYgKHRva2VuID09PSAxNCAmJiBvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgKz0gMTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgICBudW1iZXJMaW5lQnJlYWtzID0gMTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgfQogICAgICAgICAgaGFzRXJyb3IgPSB0b2tlbiA9PT0gMTYgfHwgc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkgIT09IDA7CiAgICAgICAgICByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRPcGVyYXRpb25zID0gW107CiAgICAgICAgZnVuY3Rpb24gYWRkRWRpdCh0ZXh0LCBzdGFydE9mZnNldCwgZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yICYmICghcmFuZ2UgfHwgc3RhcnRPZmZzZXQgPCByYW5nZUVuZCAmJiBlbmRPZmZzZXQgPiByYW5nZVN0YXJ0KSAmJiBkb2N1bWVudFRleHQuc3Vic3RyaW5nKHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpICE9PSB0ZXh0KSB7CiAgICAgICAgICAgIGVkaXRPcGVyYXRpb25zLnB1c2goewogICAgICAgICAgICAgIG9mZnNldDogc3RhcnRPZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoOiBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBsZXQgZmlyc3RUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICBhZGRFZGl0KHJlcGVhdDIoZW9sLCBudW1iZXJMaW5lQnJlYWtzKSwgMCwgMCk7CiAgICAgICAgfQogICAgICAgIGlmIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGxldCBpbml0aWFsSW5kZW50ID0gaW5kZW50VmFsdWUubGVuZ3RoICogaW5pdGlhbEluZGVudExldmVsIDwgMjAgJiYgb3B0aW9ucy5pbnNlcnRTcGFjZXMgPyBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzW2luZGVudFZhbHVlLmxlbmd0aCAqIGluaXRpYWxJbmRlbnRMZXZlbF0gOiByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwpOwogICAgICAgICAgYWRkRWRpdChpbml0aWFsSW5kZW50LCBmb3JtYXRUZXh0U3RhcnQsIGZpcnN0VG9rZW5TdGFydCk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IHJlcGxhY2VDb250ZW50ID0gIiI7CiAgICAgICAgICBsZXQgbmVlZHNMaW5lQnJlYWsgPSBmYWxzZTsKICAgICAgICAgIHdoaWxlIChudW1iZXJMaW5lQnJlYWtzID09PSAwICYmIChzZWNvbmRUb2tlbiA9PT0gMTIgfHwgc2Vjb25kVG9rZW4gPT09IDEzKSkgewogICAgICAgICAgICBsZXQgY29tbWVudFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIGFkZEVkaXQoCiAgICAgICAgICAgICAgc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXSwKICAgICAgICAgICAgICBmaXJzdFRva2VuRW5kLAogICAgICAgICAgICAgIGNvbW1lbnRUb2tlblN0YXJ0CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIG5lZWRzTGluZUJyZWFrID0gc2Vjb25kVG9rZW4gPT09IDEyOwogICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5lZWRzTGluZUJyZWFrID8gbmV3TGluZXNBbmRJbmRlbnQoKSA6ICIiOwogICAgICAgICAgICBzZWNvbmRUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDIpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMSkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNCkgewogICAgICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIGluZGVudExldmVsLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcyAmJiBmaXJzdFRva2VuICE9PSAzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzd2l0Y2ggKGZpcnN0VG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgaW5kZW50TGV2ZWwrKzsKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuID09PSA2ICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlmICgoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykgJiYgIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuICE9PSA1ICYmIHNlY29uZFRva2VuICE9PSAxNykgewogICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzZWNvbmRUb2tlbiA9PT0gMTcpIHsKICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gb3B0aW9ucy5pbnNlcnRGaW5hbE5ld2xpbmUgPyBlb2wgOiAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2Vjb25kVG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGFkZEVkaXQocmVwbGFjZUNvbnRlbnQsIGZpcnN0VG9rZW5FbmQsIHNlY29uZFRva2VuU3RhcnQpOwogICAgICAgICAgZmlyc3RUb2tlbiA9IHNlY29uZFRva2VuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZWRpdE9wZXJhdGlvbnM7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiByZXBlYXQyKHMsIGNvdW50KSB7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykgewogICAgICAgICAgcmVzdWx0ICs9IHM7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY29tcHV0ZUluZGVudExldmVsKGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgbGV0IG5DaGFycyA9IDA7CiAgICAgICAgY29uc3QgdGFiU2l6ZSA9IG9wdGlvbnMudGFiU2l6ZSB8fCA0OwogICAgICAgIHdoaWxlIChpIDwgY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGxldCBjaCA9IGNvbnRlbnQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdKSB7CiAgICAgICAgICAgIG5DaGFycysrOwogICAgICAgICAgfSBlbHNlIGlmIChjaCA9PT0gIgkiKSB7CiAgICAgICAgICAgIG5DaGFycyArPSB0YWJTaXplOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBNYXRoLmZsb29yKG5DaGFycyAvIHRhYlNpemUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdldEVPTChvcHRpb25zLCB0ZXh0KSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSAiXHIiKSB7CiAgICAgICAgICAgIGlmIChpICsgMSA8IHRleHQubGVuZ3RoICYmIHRleHQuY2hhckF0KGkgKyAxKSA9PT0gIlxuIikgewogICAgICAgICAgICAgIHJldHVybiAiXHJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJcciI7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiXG4iKSB7CiAgICAgICAgICAgIHJldHVybiAiXG4iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3B0aW9ucyAmJiBvcHRpb25zLmVvbCB8fCAiXG4iOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRU9MKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNFT0wgPSBpc0VPTDsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzCnZhciByZXF1aXJlX3BhcnNlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlMikgewogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5vZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lmxlbmd0aCA9IGxlbmd0aDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QudHlwZSA9IHR5cGUyOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5jb2xvbk9mZnNldCA9IHZvaWQgMDsKICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHByZXZpb3VzTm9kZUluc3Q7CiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICB2aXNpdCh0ZXh0LCB7CiAgICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gcG9zaXRpb24gPiBvZmZzZXQ7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgiIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZShuYW1lLCBvZmZzZXQsIGxlbmd0aCwgInByb3BlcnR5Iik7CiAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBuYW1lOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucG9wKCk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wdXNoKDApOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogKHZhbHVlLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZSh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgsIGdldE5vZGVUeXBlKHZhbHVlKSk7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCArIGxlbmd0aCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBvblNlcGFyYXRvcjogKHNlcCwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiICYmIHByZXZpb3VzTm9kZSAmJiBwcmV2aW91c05vZGUudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlLmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBsYXN0ID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXSA9IGxhc3QgKyAxOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSAiIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlICE9PSBlYXJseVJldHVybkV4Y2VwdGlvbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgcGF0aDogc2VnbWVudHMsCiAgICAgICAgICBwcmV2aW91c05vZGUsCiAgICAgICAgICBpc0F0UHJvcGVydHlLZXksCiAgICAgICAgICBtYXRjaGVzOiAocGF0dGVybikgPT4gewogICAgICAgICAgICBsZXQgayA9IDA7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBrIDwgcGF0dGVybi5sZW5ndGggJiYgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgaWYgKHBhdHRlcm5ba10gPT09IHNlZ21lbnRzW2ldIHx8IHBhdHRlcm5ba10gPT09ICIqIikgewogICAgICAgICAgICAgICAgaysrOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocGF0dGVybltrXSAhPT0gIioqIikgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gayA9PT0gcGF0dGVybi5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IGdldExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBwYXJzZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSBbXTsKICAgICAgICBjb25zdCBwcmV2aW91c1BhcmVudHMgPSBbXTsKICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlKSB7CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyZW50UGFyZW50KSkgewogICAgICAgICAgICBjdXJyZW50UGFyZW50LnB1c2godmFsdWUpOwogICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50UHJvcGVydHkgIT09IG51bGwpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudFtjdXJyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZpc2l0b3IgPSB7CiAgICAgICAgICBvbk9iamVjdEJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IG9iamVjdCA9IHt9OwogICAgICAgICAgICBvblZhbHVlKG9iamVjdCk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb2JqZWN0OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG5hbWU7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5QmVnaW46ICgpID0+IHsKICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBbXTsKICAgICAgICAgICAgb25WYWx1ZShhcnJheSk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gYXJyYXk7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gcHJldmlvdXNQYXJlbnRzLnBvcCgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiBvblZhbHVlLAogICAgICAgICAgb25FcnJvcjogKGVycm9yLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlcnJvcnMucHVzaCh7IGVycm9yLCBvZmZzZXQsIGxlbmd0aCB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZpc2l0KHRleHQsIHZpc2l0b3IsIG9wdGlvbnMpOwogICAgICAgIHJldHVybiBjdXJyZW50UGFyZW50WzBdOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlID0gcGFyc2U7CiAgICAgIGZ1bmN0aW9uIHBhcnNlVHJlZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgb2Zmc2V0OiAtMSwKICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICBjaGlsZHJlbjogW10sCiAgICAgICAgICBwYXJlbnQ6IHZvaWQgMAogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW5zdXJlUHJvcGVydHlDb21wbGV0ZShlbmRPZmZzZXQpIHsKICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBlbmRPZmZzZXQgLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlTm9kZSkgewogICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHZhbHVlTm9kZSk7CiAgICAgICAgICByZXR1cm4gdmFsdWVOb2RlOwogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKG9mZnNldCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJwcm9wZXJ0eSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgICAgICB2YWx1ZTogbmFtZSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdEVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0ICsgbGVuZ3RoKTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogZ2V0Tm9kZVR5cGUodmFsdWUpLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGgsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICBpZiAoc2VwID09PSAiOiIpIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY29sb25PZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICBjb25zdCByZXN1bHQgPSBjdXJyZW50UGFyZW50LmNoaWxkcmVuWzBdOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIGRlbGV0ZSByZXN1bHQucGFyZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlVHJlZTsKICAgICAgZnVuY3Rpb24gZmluZE5vZGVBdExvY2F0aW9uKHJvb3QsIHBhdGgpIHsKICAgICAgICBpZiAoIXJvb3QpIHsKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGxldCBub2RlID0gcm9vdDsKICAgICAgICBmb3IgKGxldCBzZWdtZW50IG9mIHBhdGgpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygc2VnbWVudCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gIm9iamVjdCIgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5Tm9kZSBvZiBub2RlLmNoaWxkcmVuKSB7CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlOb2RlLmNoaWxkcmVuKSAmJiBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMF0udmFsdWUgPT09IHNlZ21lbnQgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMikgewogICAgICAgICAgICAgICAgbm9kZSA9IHByb3BlcnR5Tm9kZS5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIWZvdW5kKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBzZWdtZW50OwogICAgICAgICAgICBpZiAobm9kZS50eXBlICE9PSAiYXJyYXkiIHx8IGluZGV4IDwgMCB8fCAhQXJyYXkuaXNBcnJheShub2RlLmNoaWxkcmVuKSB8fCBpbmRleCA+PSBub2RlLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbm9kZSA9IG5vZGUuY2hpbGRyZW5baW5kZXhdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBmaW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVQYXRoKG5vZGUpIHsKICAgICAgICBpZiAoIW5vZGUucGFyZW50IHx8ICFub2RlLnBhcmVudC5jaGlsZHJlbikgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoID0gZ2V0Tm9kZVBhdGgobm9kZS5wYXJlbnQpOwogICAgICAgIGlmIChub2RlLnBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICBjb25zdCBrZXkgPSBub2RlLnBhcmVudC5jaGlsZHJlblswXS52YWx1ZTsKICAgICAgICAgIHBhdGgucHVzaChrZXkpOwogICAgICAgIH0gZWxzZSBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gImFycmF5IikgewogICAgICAgICAgY29uc3QgaW5kZXggPSBub2RlLnBhcmVudC5jaGlsZHJlbi5pbmRleE9mKG5vZGUpOwogICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBwYXRoLnB1c2goaW5kZXgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcGF0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGdldE5vZGVQYXRoOwogICAgICBmdW5jdGlvbiBnZXROb2RlVmFsdWUobm9kZSkgewogICAgICAgIHN3aXRjaCAobm9kZS50eXBlKSB7CiAgICAgICAgICBjYXNlICJhcnJheSI6CiAgICAgICAgICAgIHJldHVybiBub2RlLmNoaWxkcmVuLm1hcChnZXROb2RlVmFsdWUpOwogICAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgICAgY29uc3Qgb2JqID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICAgIGZvciAobGV0IHByb3Agb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHByb3AuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgaWYgKHZhbHVlTm9kZSkgewogICAgICAgICAgICAgICAgb2JqW3Byb3AuY2hpbGRyZW5bMF0udmFsdWVdID0gZ2V0Tm9kZVZhbHVlKHZhbHVlTm9kZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBvYmo7CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiBub2RlLnZhbHVlOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVZhbHVlID0gZ2V0Tm9kZVZhbHVlOwogICAgICBmdW5jdGlvbiBjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kID0gZmFsc2UpIHsKICAgICAgICByZXR1cm4gb2Zmc2V0ID49IG5vZGUub2Zmc2V0ICYmIG9mZnNldCA8IG5vZGUub2Zmc2V0ICsgbm9kZS5sZW5ndGggfHwgaW5jbHVkZVJpZ2h0Qm91bmQgJiYgb2Zmc2V0ID09PSBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmNvbnRhaW5zID0gY29udGFpbnM7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRPZmZzZXQobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgaWYgKGNvbnRhaW5zKG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpKSB7CiAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUuY2hpbGRyZW47CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGggJiYgY2hpbGRyZW5baV0ub2Zmc2V0IDw9IG9mZnNldDsgaSsrKSB7CiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IGZpbmROb2RlQXRPZmZzZXQoY2hpbGRyZW5baV0sIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpOwogICAgICAgICAgICAgIGlmIChpdGVtKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBub2RlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBmaW5kTm9kZUF0T2Zmc2V0OwogICAgICBmdW5jdGlvbiB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zID0gUGFyc2VPcHRpb25zLkRFRkFVTFQpIHsKICAgICAgICBjb25zdCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCwgZmFsc2UpOwogICAgICAgIGNvbnN0IF9qc29uUGF0aCA9IFtdOwogICAgICAgIGxldCBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMDsKICAgICAgICBmdW5jdGlvbiB0b05vQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoYXJnKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIGFyZywKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0JlZ2luVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MrKzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBsZXQgY2JSZXR1cm4gPSB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpLAogICAgICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIGlmIChjYlJldHVybiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MgPSAxOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvRW5kVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCkgewogICAgICAgICAgICAgIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgb25PYmplY3RCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uT2JqZWN0QmVnaW4pLCBvbk9iamVjdFByb3BlcnR5ID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25PYmplY3RQcm9wZXJ0eSksIG9uT2JqZWN0RW5kID0gdG9FbmRWaXNpdCh2aXNpdG9yLm9uT2JqZWN0RW5kKSwgb25BcnJheUJlZ2luID0gdG9CZWdpblZpc2l0KHZpc2l0b3Iub25BcnJheUJlZ2luKSwgb25BcnJheUVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbkFycmF5RW5kKSwgb25MaXRlcmFsVmFsdWUgPSB0b09uZUFyZ1Zpc2l0V2l0aFBhdGgodmlzaXRvci5vbkxpdGVyYWxWYWx1ZSksIG9uU2VwYXJhdG9yID0gdG9PbmVBcmdWaXNpdCh2aXNpdG9yLm9uU2VwYXJhdG9yKSwgb25Db21tZW50ID0gdG9Ob0FyZ1Zpc2l0KHZpc2l0b3Iub25Db21tZW50KSwgb25FcnJvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vbkVycm9yKTsKICAgICAgICBjb25zdCBkaXNhbGxvd0NvbW1lbnRzID0gb3B0aW9ucyAmJiBvcHRpb25zLmRpc2FsbG93Q29tbWVudHM7CiAgICAgICAgY29uc3QgYWxsb3dUcmFpbGluZ0NvbW1hID0gb3B0aW9ucyAmJiBvcHRpb25zLmFsbG93VHJhaWxpbmdDb21tYTsKICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gX3NjYW5uZXIuc2NhbigpOwogICAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuRXJyb3IoKSkgewogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNAogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkVW5pY29kZSAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkRXNjYXBlQ2hhcmFjdGVyICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDEzCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZk51bWJlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgIGlmICghZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMQogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQgKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZTdHJpbmcgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTYKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZENoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN3aXRjaCAodG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICBpZiAoZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMAogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDb21tZW50VG9rZW4gKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRTeW1ib2wgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE1OgogICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBza2lwVW50aWxBZnRlciA9IFtdLCBza2lwVW50aWwgPSBbXSkgewogICAgICAgICAgb25FcnJvcihlcnJvcik7CiAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIubGVuZ3RoICsgc2tpcFVudGlsLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGV0IHRva2VuID0gX3NjYW5uZXIuZ2V0VG9rZW4oKTsKICAgICAgICAgICAgd2hpbGUgKHRva2VuICE9PSAxNykgewogICAgICAgICAgICAgIGlmIChza2lwVW50aWxBZnRlci5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNraXBVbnRpbC5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0b2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VTdHJpbmcoaXNWYWx1ZSkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBfc2Nhbm5lci5nZXRUb2tlblZhbHVlKCk7CiAgICAgICAgICBpZiAoaXNWYWx1ZSkgewogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5KHZhbHVlKTsKICAgICAgICAgICAgX2pzb25QYXRoLnB1c2godmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUxpdGVyYWwoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjb25zdCB0b2tlblZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE51bWJlcih0b2tlblZhbHVlKTsKICAgICAgICAgICAgICBpZiAoaXNOYU4odmFsdWUpKSB7CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkTnVtYmVyRm9ybWF0ICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgdmFsdWUgPSAwOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZShudWxsKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKHRydWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUoZmFsc2UpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VQcm9wZXJ0eSgpIHsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxMCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAzLAogICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNvbW1hVG9rZW4gKi8KICAgICAgICAgICAgICBdCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcnNlU3RyaW5nKGZhbHNlKTsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA2KSB7CiAgICAgICAgICAgIG9uU2VwYXJhdG9yKCI6Iik7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNSwKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlT2JqZWN0KCkgewogICAgICAgICAgb25PYmplY3RCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMiAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAyICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VQcm9wZXJ0eSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uT2JqZWN0RW5kKCk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMikgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA3LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFjZVRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUFycmF5KCkgewogICAgICAgICAgb25BcnJheUJlZ2luKCk7CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IGlzRmlyc3RFbGVtZW50ID0gdHJ1ZTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA0ICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKDApOwogICAgICAgICAgICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2U7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX2pzb25QYXRoW19qc29uUGF0aC5sZW5ndGggLSAxXSsrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDQsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5lZWRzQ29tbWEgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgb25BcnJheUVuZCgpOwogICAgICAgICAgaWYgKCFpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICBfanNvblBhdGgucG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA4LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDQKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFja2V0VG9rZW4gKi8KICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgIFtdCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlVmFsdWUoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUFycmF5KCk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VPYmplY3QoKTsKICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VTdHJpbmcodHJ1ZSk7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlTGl0ZXJhbCgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAxNykgewogICAgICAgICAgaWYgKG9wdGlvbnMuYWxsb3dFbXB0eUNvbnRlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBoYW5kbGVFcnJvcig0LCBbXSwgW10pOwogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDE3KSB7CiAgICAgICAgICBoYW5kbGVFcnJvcig5LCBbXSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBleHBvcnRzMy52aXNpdCA9IHZpc2l0OwogICAgICBmdW5jdGlvbiBzdHJpcENvbW1lbnRzKHRleHQsIHJlcGxhY2VDaCkgewogICAgICAgIGxldCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCksIHBhcnRzID0gW10sIGtpbmQsIG9mZnNldCA9IDAsIHBvczsKICAgICAgICBkbyB7CiAgICAgICAgICBwb3MgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAga2luZCA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgIHN3aXRjaCAoa2luZCkgewogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICBjYXNlIDE3OgogICAgICAgICAgICAgIGlmIChvZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgcGFydHMucHVzaCh0ZXh0LnN1YnN0cmluZyhvZmZzZXQsIHBvcykpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAocmVwbGFjZUNoICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2goX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpLnJlcGxhY2UoL1teXHJcbl0vZywgcmVwbGFjZUNoKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9mZnNldCA9IF9zY2FubmVyLmdldFBvc2l0aW9uKCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoa2luZCAhPT0gMTcpOwogICAgICAgIHJldHVybiBwYXJ0cy5qb2luKCIiKTsKICAgICAgfQogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gc3RyaXBDb21tZW50czsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVR5cGUodmFsdWUpIHsKICAgICAgICBzd2l0Y2ggKHR5cGVvZiB2YWx1ZSkgewogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICByZXR1cm4gIm51bWJlciI7CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICByZXR1cm4gInN0cmluZyI7CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGlmICghdmFsdWUpIHsKICAgICAgICAgICAgICByZXR1cm4gIm51bGwiOwogICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJvYmplY3QiOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBnZXROb2RlVHlwZTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcwp2YXIgcmVxdWlyZV9lZGl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9lZGl0LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgcGFyc2VyXzEgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9mb3JtYXQiLCAiLi9wYXJzZXIiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5pc1dTID0gZXhwb3J0czMuYXBwbHlFZGl0ID0gZXhwb3J0czMuc2V0UHJvcGVydHkgPSBleHBvcnRzMy5yZW1vdmVQcm9wZXJ0eSA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gcmVtb3ZlUHJvcGVydHkodGV4dCwgcGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBzZXRQcm9wZXJ0eSh0ZXh0LCBwYXRoLCB2b2lkIDAsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnJlbW92ZVByb3BlcnR5ID0gcmVtb3ZlUHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHNldFByb3BlcnR5KHRleHQsIG9yaWdpbmFsUGF0aCwgdmFsdWUsIG9wdGlvbnMpIHsKICAgICAgICBjb25zdCBwYXRoID0gb3JpZ2luYWxQYXRoLnNsaWNlKCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCBwYXJzZXJfMS5wYXJzZVRyZWUpKHRleHQsIGVycm9ycyk7CiAgICAgICAgbGV0IHBhcmVudCA9IHZvaWQgMDsKICAgICAgICBsZXQgbGFzdFNlZ21lbnQgPSB2b2lkIDA7CiAgICAgICAgd2hpbGUgKHBhdGgubGVuZ3RoID4gMCkgewogICAgICAgICAgbGFzdFNlZ21lbnQgPSBwYXRoLnBvcCgpOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocm9vdCwgcGF0aCk7CiAgICAgICAgICBpZiAocGFyZW50ID09PSB2b2lkIDAgJiYgdmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodHlwZW9mIGxhc3RTZWdtZW50ID09PSAic3RyaW5nIikgewogICAgICAgICAgICAgIHZhbHVlID0geyBbbGFzdFNlZ21lbnRdOiB2YWx1ZSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghcGFyZW50KSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNhbiBub3QgZGVsZXRlIGluIGVtcHR5IGRvY3VtZW50Iik7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBvZmZzZXQ6IHJvb3QgPyByb290Lm9mZnNldCA6IDAsCiAgICAgICAgICAgICAgbGVuZ3RoOiByb290ID8gcm9vdC5sZW5ndGggOiAwLAogICAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHZhbHVlKQogICAgICAgICAgICB9LAogICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICApOwogICAgICAgIH0gZWxzZSBpZiAocGFyZW50LnR5cGUgPT09ICJvYmplY3QiICYmIHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gInN0cmluZyIgJiYgQXJyYXkuaXNBcnJheShwYXJlbnQuY2hpbGRyZW4pKSB7CiAgICAgICAgICBjb25zdCBleGlzdGluZyA9ICgwLCBwYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHBhcmVudCwgW2xhc3RTZWdtZW50XSk7CiAgICAgICAgICBpZiAoZXhpc3RpbmcgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGlmICghZXhpc3RpbmcucGFyZW50KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk1hbGZvcm1lZCBBU1QiKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleCA9IHBhcmVudC5jaGlsZHJlbi5pbmRleE9mKGV4aXN0aW5nLnBhcmVudCk7CiAgICAgICAgICAgICAgbGV0IHJlbW92ZUJlZ2luOwogICAgICAgICAgICAgIGxldCByZW1vdmVFbmQgPSBleGlzdGluZy5wYXJlbnQub2Zmc2V0ICsgZXhpc3RpbmcucGFyZW50Lmxlbmd0aDsKICAgICAgICAgICAgICBpZiAocHJvcGVydHlJbmRleCA+IDApIHsKICAgICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltwcm9wZXJ0eUluZGV4IC0gMV07CiAgICAgICAgICAgICAgICByZW1vdmVCZWdpbiA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmVtb3ZlQmVnaW4gPSBwYXJlbnQub2Zmc2V0ICsgMTsKICAgICAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gMSkgewogICAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHBhcmVudC5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgICAgcmVtb3ZlRW5kID0gbmV4dC5vZmZzZXQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG9mZnNldDogcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogcmVtb3ZlRW5kIC0gcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBleGlzdGluZy5vZmZzZXQsCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogZXhpc3RpbmcubGVuZ3RoLAogICAgICAgICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeShsYXN0U2VnbWVudCl9OiAke0pTT04uc3RyaW5naWZ5KAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICl9YDsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBvcHRpb25zLmdldEluc2VydGlvbkluZGV4ID8gb3B0aW9ucy5nZXRJbnNlcnRpb25JbmRleCgKICAgICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4ubWFwKChwKSA9PiBwLmNoaWxkcmVuWzBdLnZhbHVlKQogICAgICAgICAgICApIDogcGFyZW50LmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChpbmRleCA+IDApIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5baW5kZXggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsIGxlbmd0aDogMCwgY29udGVudDogbmV3UHJvcGVydHkgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQudHlwZSA9PT0gImFycmF5IiAmJiB0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJudW1iZXIiICYmIEFycmF5LmlzQXJyYXkocGFyZW50LmNoaWxkcmVuKSkgewogICAgICAgICAgY29uc3QgaW5zZXJ0SW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgIGlmIChpbnNlcnRJbmRleCA9PT0gLTEpIHsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwgbGVuZ3RoOiAwLCBjb250ZW50OiBuZXdQcm9wZXJ0eSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3BhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gdm9pZCAwICYmIHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPj0gMCkgewogICAgICAgICAgICBjb25zdCByZW1vdmFsSW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgICAgY29uc3QgdG9SZW1vdmUgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4XTsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHBhcmVudC5sZW5ndGggLSAyLAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxID09PSByZW1vdmFsSW5kZXgpIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4IC0gMV07CiAgICAgICAgICAgICAgbGV0IG9mZnNldCA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICBsZXQgcGFyZW50RW5kT2Zmc2V0ID0gcGFyZW50Lm9mZnNldCArIHBhcmVudC5sZW5ndGg7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0LCBsZW5ndGg6IHBhcmVudEVuZE9mZnNldCAtIDIgLSBvZmZzZXQsIGNvbnRlbnQ6ICIiIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgbGVuZ3RoOiBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4ICsgMV0ub2Zmc2V0IC0gdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgaWYgKCFvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gJiYgcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+IGxhc3RTZWdtZW50KSB7CiAgICAgICAgICAgICAgY29uc3QgdG9Nb2RpZnkgPSBwYXJlbnQuY2hpbGRyZW5bbGFzdFNlZ21lbnRdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvTW9kaWZ5Lm9mZnNldCwKICAgICAgICAgICAgICAgIGxlbmd0aDogdG9Nb2RpZnkubGVuZ3RoLAogICAgICAgICAgICAgICAgY29udGVudDogbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgbGFzdFNlZ21lbnQgPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgPyBuZXdQcm9wZXJ0eSA6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGxhc3RTZWdtZW50ID4gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA/IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggOiBsYXN0U2VnbWVudDsKICAgICAgICAgICAgICBjb25zdCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltpbmRleCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYENhbiBub3QgJHt2YWx1ZSA9PT0gdm9pZCAwID8gInJlbW92ZSIgOiBvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gPyAiaW5zZXJ0IiA6ICJtb2RpZnkifSBBcnJheSBpbmRleCAke2luc2VydEluZGV4fSBhcyBsZW5ndGggaXMgbm90IHN1ZmZpY2llbnRgCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbiBub3QgYWRkICR7dHlwZW9mIGxhc3RTZWdtZW50ICE9PSAibnVtYmVyIiA/ICJpbmRleCIgOiAicHJvcGVydHkifSB0byBwYXJlbnQgb2YgdHlwZSAke3BhcmVudC50eXBlfWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLnNldFByb3BlcnR5ID0gc2V0UHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpIHsKICAgICAgICBpZiAoIW9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMpIHsKICAgICAgICAgIHJldHVybiBbZWRpdF07CiAgICAgICAgfQogICAgICAgIGxldCBuZXdUZXh0ID0gYXBwbHlFZGl0KHRleHQsIGVkaXQpOwogICAgICAgIGxldCBiZWdpbiA9IGVkaXQub2Zmc2V0OwogICAgICAgIGxldCBlbmQgPSBlZGl0Lm9mZnNldCArIGVkaXQuY29udGVudC5sZW5ndGg7CiAgICAgICAgaWYgKGVkaXQubGVuZ3RoID09PSAwIHx8IGVkaXQuY29udGVudC5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHdoaWxlIChiZWdpbiA+IDAgJiYgISgwLCBmb3JtYXRfMS5pc0VPTCkobmV3VGV4dCwgYmVnaW4gLSAxKSkgewogICAgICAgICAgICBiZWdpbi0tOwogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGVuZCA8IG5ld1RleHQubGVuZ3RoICYmICEoMCwgZm9ybWF0XzEuaXNFT0wpKG5ld1RleHQsIGVuZCkpIHsKICAgICAgICAgICAgZW5kKys7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRzID0gKDAsIGZvcm1hdF8xLmZvcm1hdCkoCiAgICAgICAgICBuZXdUZXh0LAogICAgICAgICAgeyBvZmZzZXQ6IGJlZ2luLCBsZW5ndGg6IGVuZCAtIGJlZ2luIH0sCiAgICAgICAgICB7IC4uLm9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMsIGtlZXBMaW5lczogZmFsc2UgfQogICAgICAgICk7CiAgICAgICAgZm9yIChsZXQgaSA9IGVkaXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICBjb25zdCBlZGl0MiA9IGVkaXRzW2ldOwogICAgICAgICAgbmV3VGV4dCA9IGFwcGx5RWRpdChuZXdUZXh0LCBlZGl0Mik7CiAgICAgICAgICBiZWdpbiA9IE1hdGgubWluKGJlZ2luLCBlZGl0Mi5vZmZzZXQpOwogICAgICAgICAgZW5kID0gTWF0aC5tYXgoZW5kLCBlZGl0Mi5vZmZzZXQgKyBlZGl0Mi5sZW5ndGgpOwogICAgICAgICAgZW5kICs9IGVkaXQyLmNvbnRlbnQubGVuZ3RoIC0gZWRpdDIubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0TGVuZ3RoID0gdGV4dC5sZW5ndGggLSAobmV3VGV4dC5sZW5ndGggLSBlbmQpIC0gYmVnaW47CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIHsKICAgICAgICAgICAgb2Zmc2V0OiBiZWdpbiwKICAgICAgICAgICAgbGVuZ3RoOiBlZGl0TGVuZ3RoLAogICAgICAgICAgICBjb250ZW50OiBuZXdUZXh0LnN1YnN0cmluZyhiZWdpbiwgZW5kKQogICAgICAgICAgfQogICAgICAgIF07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYXBwbHlFZGl0KHRleHQsIGVkaXQpIHsKICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgZWRpdC5vZmZzZXQpICsgZWRpdC5jb250ZW50ICsgdGV4dC5zdWJzdHJpbmcoZWRpdC5vZmZzZXQgKyBlZGl0Lmxlbmd0aCk7CiAgICAgIH0KICAgICAgZXhwb3J0czMuYXBwbHlFZGl0ID0gYXBwbHlFZGl0OwogICAgICBmdW5jdGlvbiBpc1dTKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiAJIi5pbmRleE9mKHRleHQuY2hhckF0KG9mZnNldCkpICE9PSAtMTsKICAgICAgfQogICAgICBleHBvcnRzMy5pc1dTID0gaXNXUzsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMKdmFyIHJlcXVpcmVfbWFpbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0dGVyID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgZWRpdCA9IHJlcXVpcmVfZWRpdCgpOwogICAgdmFyIHNjYW5uZXIgPSByZXF1aXJlX3NjYW5uZXIoKTsKICAgIHZhciBwYXJzZXIgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWwogICAgICAgICAgInJlcXVpcmUiLAogICAgICAgICAgImV4cG9ydHMiLAogICAgICAgICAgIi4vaW1wbC9mb3JtYXQiLAogICAgICAgICAgIi4vaW1wbC9lZGl0IiwKICAgICAgICAgICIuL2ltcGwvc2Nhbm5lciIsCiAgICAgICAgICAiLi9pbXBsL3BhcnNlciIKICAgICAgICBdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdHMgPSBleHBvcnRzMy5tb2RpZnkgPSBleHBvcnRzMy5mb3JtYXQgPSBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBleHBvcnRzMy5wYXJzZVRyZWUgPSBleHBvcnRzMy5wYXJzZSA9IGV4cG9ydHMzLmdldExvY2F0aW9uID0gZXhwb3J0czMuU3ludGF4S2luZCA9IGV4cG9ydHMzLlNjYW5FcnJvciA9IGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSBzY2FubmVyLmNyZWF0ZVNjYW5uZXI7CiAgICAgIHZhciBTY2FuRXJyb3I7CiAgICAgIChmdW5jdGlvbihTY2FuRXJyb3IyKSB7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJOb25lIl0gPSAwXSA9ICJOb25lIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mU3RyaW5nIl0gPSAyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAzXSA9ICJVbmV4cGVjdGVkRW5kT2ZOdW1iZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZFVuaWNvZGUiXSA9IDRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiXSA9IDVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZENoYXJhY3RlciJdID0gNl0gPSAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgIH0pKFNjYW5FcnJvciB8fCAoZXhwb3J0czMuU2NhbkVycm9yID0gU2NhbkVycm9yID0ge30pKTsKICAgICAgdmFyIFN5bnRheEtpbmQ7CiAgICAgIChmdW5jdGlvbihTeW50YXhLaW5kMikgewogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2VUb2tlbiJdID0gMV0gPSAiT3BlbkJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNlVG9rZW4iXSA9IDJdID0gIkNsb3NlQnJhY2VUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk9wZW5CcmFja2V0VG9rZW4iXSA9IDNdID0gIk9wZW5CcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNrZXRUb2tlbiJdID0gNF0gPSAiQ2xvc2VCcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDb21tYVRva2VuIl0gPSA1XSA9ICJDb21tYVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29sb25Ub2tlbiJdID0gNl0gPSAiQ29sb25Ub2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk51bGxLZXl3b3JkIl0gPSA3XSA9ICJOdWxsS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRydWVLZXl3b3JkIl0gPSA4XSA9ICJUcnVlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkZhbHNlS2V5d29yZCJdID0gOV0gPSAiRmFsc2VLZXl3b3JkIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiU3RyaW5nTGl0ZXJhbCJdID0gMTBdID0gIlN0cmluZ0xpdGVyYWwiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdW1lcmljTGl0ZXJhbCJdID0gMTFdID0gIk51bWVyaWNMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTGluZUNvbW1lbnRUcml2aWEiXSA9IDEyXSA9ICJMaW5lQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkJsb2NrQ29tbWVudFRyaXZpYSJdID0gMTNdID0gIkJsb2NrQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVCcmVha1RyaXZpYSJdID0gMTRdID0gIkxpbmVCcmVha1RyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRyaXZpYSJdID0gMTVdID0gIlRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlVua25vd24iXSA9IDE2XSA9ICJVbmtub3duIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiRU9GIl0gPSAxN10gPSAiRU9GIjsKICAgICAgfSkoU3ludGF4S2luZCB8fCAoZXhwb3J0czMuU3ludGF4S2luZCA9IFN5bnRheEtpbmQgPSB7fSkpOwogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IHBhcnNlci5nZXRMb2NhdGlvbjsKICAgICAgZXhwb3J0czMucGFyc2UgPSBwYXJzZXIucGFyc2U7CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlci5wYXJzZVRyZWU7CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IHBhcnNlci5maW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBwYXJzZXIuZmluZE5vZGVBdE9mZnNldDsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBwYXJzZXIuZ2V0Tm9kZVBhdGg7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IHBhcnNlci5nZXROb2RlVmFsdWU7CiAgICAgIGV4cG9ydHMzLnZpc2l0ID0gcGFyc2VyLnZpc2l0OwogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gcGFyc2VyLnN0cmlwQ29tbWVudHM7CiAgICAgIHZhciBQYXJzZUVycm9yQ29kZTsKICAgICAgKGZ1bmN0aW9uKFBhcnNlRXJyb3JDb2RlMikgewogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRTeW1ib2wiXSA9IDFdID0gIkludmFsaWRTeW1ib2wiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWROdW1iZXJGb3JtYXQiXSA9IDJdID0gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlByb3BlcnR5TmFtZUV4cGVjdGVkIl0gPSAzXSA9ICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVmFsdWVFeHBlY3RlZCJdID0gNF0gPSAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29sb25FeHBlY3RlZCJdID0gNV0gPSAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29tbWFFeHBlY3RlZCJdID0gNl0gPSAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ2xvc2VCcmFjZUV4cGVjdGVkIl0gPSA3XSA9ICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2tldEV4cGVjdGVkIl0gPSA4XSA9ICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiRW5kT2ZGaWxlRXhwZWN0ZWQiXSA9IDldID0gIkVuZE9mRmlsZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkQ29tbWVudFRva2VuIl0gPSAxMF0gPSAiSW52YWxpZENvbW1lbnRUb2tlbiI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mQ29tbWVudCJdID0gMTFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMTJdID0gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAxM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkVW5pY29kZSJdID0gMTRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSAxNV0gPSAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENoYXJhY3RlciJdID0gMTZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShQYXJzZUVycm9yQ29kZSB8fCAoZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBQYXJzZUVycm9yQ29kZSA9IHt9KSk7CiAgICAgIGZ1bmN0aW9uIHByaW50UGFyc2VFcnJvckNvZGUoY29kZSkgewogICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRTeW1ib2wiOwogICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICByZXR1cm4gIlByb3BlcnR5TmFtZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgcmV0dXJuICJWYWx1ZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgcmV0dXJuICJDb2xvbkV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgcmV0dXJuICJDb21tYUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICByZXR1cm4gIkNsb3NlQnJhY2tldEV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgcmV0dXJuICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgcmV0dXJuICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZFVuaWNvZGUiOwogICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAiPHVua25vd24gUGFyc2VFcnJvckNvZGU+IjsKICAgICAgfQogICAgICBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gcHJpbnRQYXJzZUVycm9yQ29kZTsKICAgICAgZnVuY3Rpb24gZm9ybWF0KGRvY3VtZW50VGV4dCwgcmFuZ2UsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5mb3JtYXQgPSBmb3JtYXQ7CiAgICAgIGZ1bmN0aW9uIG1vZGlmeSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBlZGl0LnNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5tb2RpZnkgPSBtb2RpZnk7CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdHModGV4dCwgZWRpdHMpIHsKICAgICAgICBsZXQgc29ydGVkRWRpdHMgPSBlZGl0cy5zbGljZSgwKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICBjb25zdCBkaWZmID0gYS5vZmZzZXQgLSBiLm9mZnNldDsKICAgICAgICAgIGlmIChkaWZmID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGRpZmY7CiAgICAgICAgfSk7CiAgICAgICAgbGV0IGxhc3RNb2RpZmllZE9mZnNldCA9IHRleHQubGVuZ3RoOwogICAgICAgIGZvciAobGV0IGkgPSBzb3J0ZWRFZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgbGV0IGUgPSBzb3J0ZWRFZGl0c1tpXTsKICAgICAgICAgIGlmIChlLm9mZnNldCArIGUubGVuZ3RoIDw9IGxhc3RNb2RpZmllZE9mZnNldCkgewogICAgICAgICAgICB0ZXh0ID0gZWRpdC5hcHBseUVkaXQodGV4dCwgZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk92ZXJsYXBwaW5nIGVkaXQiKTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNb2RpZmllZE9mZnNldCA9IGUub2Zmc2V0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gYXBwbHlFZGl0czsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMKdmFyIHJlcXVpcmVfbWV0YWRhdGEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9tZXRhZGF0YS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IHZvaWQgMDsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IFN5bWJvbC5mb3IoIkBhbmd1bGFyL2NvcmU6d29ya3NwYWNlLWpzb24iKTsKICAgIGZ1bmN0aW9uIGVzY2FwZUtleShrZXkpIHsKICAgICAgcmV0dXJuIGtleS5yZXBsYWNlKCJ+IiwgIn4wIikucmVwbGFjZSgiLyIsICJ+MSIpOwogICAgfQogICAgdmFyIEpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGNsYXNzIHsKICAgICAgZmlsZVBhdGg7CiAgICAgIGFzdDsKICAgICAgcmF3OwogICAgICBjaGFuZ2VzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgaGFzTGVnYWN5VGFyZ2V0c05hbWUgPSB0cnVlOwogICAgICBjb25zdHJ1Y3RvcihmaWxlUGF0aCwgYXN0LCByYXcpIHsKICAgICAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7CiAgICAgICAgdGhpcy5hc3QgPSBhc3Q7CiAgICAgICAgdGhpcy5yYXcgPSByYXc7CiAgICAgIH0KICAgICAgZ2V0IGhhc0NoYW5nZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplID4gMDsKICAgICAgfQogICAgICBnZXQgY2hhbmdlQ291bnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplOwogICAgICB9CiAgICAgIGdldE5vZGVWYWx1ZUZyb21Bc3QocGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKSh0aGlzLmFzdCwgcGF0aCk7CiAgICAgICAgcmV0dXJuIG5vZGUgJiYgKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkobm9kZSk7CiAgICAgIH0KICAgICAgZmluZENoYW5nZXNGb3JQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VzLmdldChwYXRoKTsKICAgICAgfQogICAgICBhZGRDaGFuZ2UoanNvblBhdGgsIHZhbHVlLCB0eXBlMikgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGU6IHR5cGUyLCB2YWx1ZSB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IEpzb25Xb3Jrc3BhY2VNZXRhZGF0YTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcwp2YXIgcmVxdWlyZV91dGlsaXRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlVmlydHVhbEFzdE9iamVjdCA9IGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Q7CiAgICB2YXIganNvbl8xID0gcmVxdWlyZV9qc29uKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KHJvb3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByZXBvcnRlciA9IChwYXRoLCB0YXJnZXQsIG9sZFZhbHVlLCBuZXdWYWx1ZSkgPT4gewogICAgICAgIGlmICghb3B0aW9ucy5saXN0ZW5lcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAob2xkVmFsdWUgPT09IG5ld1ZhbHVlIHx8IEpTT04uc3RyaW5naWZ5KG9sZFZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkobmV3VmFsdWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aC5zbGljZSgwLCAtMSksIHRhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aCwgbmV3VmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIGNyZWF0ZShBcnJheS5pc0FycmF5KHJvb3QpID8gWy4uLnJvb3RdIDogeyAuLi5yb290IH0sIFtdLCByZXBvcnRlciwgbmV3IFNldChvcHRpb25zLmV4Y2x1ZGUpLCBvcHRpb25zLmluY2x1ZGU/Lmxlbmd0aCA/IG5ldyBTZXQob3B0aW9ucy5pbmNsdWRlKSA6IHZvaWQgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBjcmVhdGUob2JqLCBwYXRoLCByZXBvcnRlciwgZXhjbHVkZWQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpLCBpbmNsdWRlZCkgewogICAgICByZXR1cm4gbmV3IFByb3h5KG9iaiwgewogICAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCk7CiAgICAgICAgfSwKICAgICAgICBoYXModGFyZ2V0LCBwKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiIHx8IGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGdldCh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIGpzb25fMS5pc0pzb25PYmplY3QpKHZhbHVlKSAmJiAhKHZhbHVlIGluc3RhbmNlb2YgTWFwKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICByZXR1cm4gY3JlYXRlKHZhbHVlLCBbLi4ucGF0aCwgcF0sIHJlcG9ydGVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoZXhjbHVkZWQuaGFzKHApIHx8IGluY2x1ZGVkICYmICFpbmNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlUHJvcGVydHk/Lih0YXJnZXQsIHApID8/IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSkpIHsKICAgICAgICAgICAgcmVwb3J0ZXIoWy4uLnBhdGgsIHBdLCB0YXJnZXQsIGV4aXN0aW5nVmFsdWUsIHZhbHVlKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGdldEN1cnJlbnRWYWx1ZSh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdm9pZCAwKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9LAogICAgICAgIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykgewogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHAsIGF0dHJpYnV0ZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0sCiAgICAgICAgb3duS2V5cyh0YXJnZXQpIHsKICAgICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KS5maWx0ZXIoKHApID0+ICFleGNsdWRlZC5oYXMocCkgJiYgKCFpbmNsdWRlZCB8fCBpbmNsdWRlZC5oYXMocCkpKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcHJvcGVydHkpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSAmJiBpc0Zpbml0ZSgrcHJvcGVydHkpKSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFsrcHJvcGVydHldOwogICAgICB9CiAgICAgIGlmICh0YXJnZXQgJiYgcHJvcGVydHkgaW4gdGFyZ2V0KSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcwp2YXIgcmVxdWlyZV9yZWFkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVhZEpzb25Xb3Jrc3BhY2UgPSByZWFkSnNvbldvcmtzcGFjZTsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgZGVmaW5pdGlvbnNfMSA9IHJlcXVpcmVfZGVmaW5pdGlvbnMoKTsKICAgIHZhciBtZXRhZGF0YV8xID0gcmVxdWlyZV9tZXRhZGF0YTIoKTsKICAgIHZhciB1dGlsaXRpZXNfMSA9IHJlcXVpcmVfdXRpbGl0aWVzKCk7CiAgICB2YXIgQU5HVUxBUl9XT1JLU1BBQ0VfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAibmV3UHJvamVjdFJvb3QiLCAic2NoZW1hdGljcyJdKTsKICAgIHZhciBBTkdVTEFSX1BST0pFQ1RfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAic2NoZW1hdGljcyIsICJwcm9qZWN0VHlwZSIsICJpMThuIl0pOwogICAgYXN5bmMgZnVuY3Rpb24gcmVhZEpzb25Xb3Jrc3BhY2UocGF0aCwgaG9zdCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IHJhdyA9IGF3YWl0IGhvc3QucmVhZEZpbGUocGF0aCk7CiAgICAgIGlmIChyYXcgPT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIHJlYWQgd29ya3NwYWNlIGZpbGUuIik7CiAgICAgIH0KICAgICAgY29uc3QgYXN0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlVHJlZSkocmF3LCB2b2lkIDAsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlLCBkaXNhbGxvd0NvbW1lbnRzOiBmYWxzZSB9KTsKICAgICAgaWYgKGFzdD8udHlwZSAhPT0gIm9iamVjdCIgfHwgIWFzdC5jaGlsZHJlbikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSW52YWxpZCB3b3Jrc3BhY2UgZmlsZSAtIGV4cGVjdGVkIEpTT04gb2JqZWN0LiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb25Ob2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikoYXN0LCBbInZlcnNpb24iXSk7CiAgICAgIGlmICghdmVyc2lvbk5vZGUpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gZm9ybWF0IC0gdmVyc2lvbiBzcGVjaWZpZXIgbm90IGZvdW5kLiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb24gPSB2ZXJzaW9uTm9kZS52YWx1ZTsKICAgICAgaWYgKHZlcnNpb24gIT09IDEpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9ybWF0IHZlcnNpb24gZGV0ZWN0ZWQgLSBFeHBlY3RlZDpbIDEgXSBGb3VuZDogWyAke3ZlcnNpb259IF1gKTsKICAgICAgfQogICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgIGhvc3QsCiAgICAgICAgbWV0YWRhdGE6IG5ldyBtZXRhZGF0YV8xLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YShwYXRoLCBhc3QsIHJhdyksCiAgICAgICAgdHJhY2tDaGFuZ2VzOiB0cnVlLAogICAgICAgIHVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICAgICAuLi5BTkdVTEFSX1dPUktTUEFDRV9FWFRFTlNJT05TLAogICAgICAgICAgLi4ub3B0aW9ucy5hbGxvd2VkV29ya3NwYWNlRXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIHVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9uczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAgICAgLi4uQU5HVUxBUl9QUk9KRUNUX0VYVEVOU0lPTlMsCiAgICAgICAgICAuLi5vcHRpb25zLmFsbG93ZWRQcm9qZWN0RXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIGVycm9yKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7CiAgICAgICAgfSwKICAgICAgICB3YXJuKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBjb25zdCB3b3Jrc3BhY2UgPSBwYXJzZVdvcmtzcGFjZShhc3QsIGNvbnRleHQpOwogICAgICByZXR1cm4gd29ya3NwYWNlOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VXb3Jrc3BhY2Uod29ya3NwYWNlTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgcHJvamVjdHM7CiAgICAgIGxldCBleHRlbnNpb25zOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICB9CiAgICAgIGNvbnN0IHdvcmtzcGFjZU5vZGVWYWx1ZSA9ICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHdvcmtzcGFjZU5vZGUpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMod29ya3NwYWNlTm9kZVZhbHVlKSkgewogICAgICAgIGlmIChuYW1lID09PSAiJHNjaGVtYSIgfHwgbmFtZSA9PT0gInZlcnNpb24iKSB7CiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAicHJvamVjdHMiKSB7CiAgICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHdvcmtzcGFjZU5vZGUsIFsicHJvamVjdHMiXSk7CiAgICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgICBjb250ZXh0LmVycm9yKCdJbnZhbGlkICJwcm9qZWN0cyIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC4nLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHJvamVjdHMgPSBwYXJzZVByb2plY3RzT2JqZWN0KG5vZGVzLCBjb250ZXh0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zLmhhcyhuYW1lKSAmJiAhL15bYS16XXsxLDN9LS4qLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICAgIGNvbnRleHQud2FybihgV29ya3NwYWNlIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkgZm91bmQuYCwgbmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykgewogICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSkgPT4gewogICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgbmFtZV0sIG5ld1ZhbHVlLCAicHJvamVjdCIpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3QgcHJvamVjdENvbGxlY3Rpb24gPSBuZXcgZGVmaW5pdGlvbnNfMS5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24ocHJvamVjdHMsIGNvbGxlY3Rpb25MaXN0ZW5lcik7CiAgICAgIHJldHVybiB7CiAgICAgICAgW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF06IGpzb25NZXRhZGF0YSwKICAgICAgICBwcm9qZWN0czogcHJvamVjdENvbGxlY3Rpb24sCiAgICAgICAgLy8gSWYgbm90IHRyYWNraW5nIGNoYW5nZXMgdGhlIGBleHRlbnNpb25zYCB2YXJpYWJsZSB3aWxsIGNvbnRhaW4gdGhlIHBhcnNlZAogICAgICAgIC8vIHZhbHVlcy4gIE90aGVyd2lzZSB0aGUgZXh0ZW5zaW9ucyBhcmUgdHJhY2tlZCB2aWEgYSB2aXJ0dWFsIEFTVCBvYmplY3QuCiAgICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkod29ya3NwYWNlTm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbIiRzY2hlbWEiLCAidmVyc2lvbiIsICJwcm9qZWN0cyJdLAogICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShwYXRoLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlUHJvamVjdHNPYmplY3QocHJvamVjdHNOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcygoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKShwcm9qZWN0c05vZGUpKSkgewogICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdHNOb2RlLCBbbmFtZV0pOwogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICBjb250ZXh0Lndhcm4oIlNraXBwaW5nIGludmFsaWQgcHJvamVjdCB2YWx1ZTsgZXhwZWN0ZWQgYW4gb2JqZWN0LiIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBwcm9qZWN0c1tuYW1lXSA9IHBhcnNlUHJvamVjdChuYW1lLCBub2RlcywgY29udGV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHByb2plY3RzOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0Tm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgdGFyZ2V0czsKICAgICAgbGV0IGhhc1RhcmdldHMgPSBmYWxzZTsKICAgICAgbGV0IGV4dGVuc2lvbnM7CiAgICAgIGxldCBwcm9wZXJ0aWVzOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIHByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgfQogICAgICBjb25zdCBwcm9qZWN0Tm9kZVZhbHVlID0gKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkocHJvamVjdE5vZGUpOwogICAgICBpZiAoISgicm9vdCIgaW4gcHJvamVjdE5vZGVWYWx1ZSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFByb2plY3QgIiR7cHJvamVjdE5hbWV9IiBpcyBtaXNzaW5nIGEgcmVxdWlyZWQgcHJvcGVydHkgInJvb3QiLmApOwogICAgICB9CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9qZWN0Tm9kZVZhbHVlKSkgewogICAgICAgIHN3aXRjaCAobmFtZSkgewogICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICBjYXNlICJhcmNoaXRlY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdE5vZGUsIFtuYW1lXSk7CiAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICAgICAgY29udGV4dC5lcnJvcihgSW52YWxpZCAiJHtuYW1lfSIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC5gLCB2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaGFzVGFyZ2V0cyA9IHRydWU7CiAgICAgICAgICAgIHRhcmdldHMgPSBwYXJzZVRhcmdldHNPYmplY3QocHJvamVjdE5hbWUsIG5vZGVzLCBjb250ZXh0KTsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmhhc0xlZ2FjeVRhcmdldHNOYW1lID0gbmFtZSA9PT0gImFyY2hpdGVjdCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgY2FzZSAic291cmNlUm9vdCI6CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgY29udGV4dC53YXJuKGBQcm9qZWN0IHByb3BlcnR5ICIke25hbWV9IiBzaG91bGQgYmUgYSBzdHJpbmcuYCwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwcm9wZXJ0aWVzKSB7CiAgICAgICAgICAgICAgcHJvcGVydGllc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9ucy5oYXMobmFtZSkgJiYgIS9eW2Etel17MSwzfS0uKi8udGVzdChuYW1lKSkgewogICAgICAgICAgICAgIGNvbnRleHQud2FybihgUHJvamVjdCAnJHtwcm9qZWN0TmFtZX0nIGNvbnRhaW5zIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkuYCwgbmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHsKICAgICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSwgY29sbGVjdGlvbikgPT4gewogICAgICAgICAgaWYgKGhhc1RhcmdldHMpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIiwgbmFtZV0sIG5ld1ZhbHVlLCAidGFyZ2V0Iik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiXSwgY29sbGVjdGlvbiwgInRhcmdldGNvbGxlY3Rpb24iKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0IGJhc2UgPSB7CiAgICAgICAgdGFyZ2V0czogbmV3IGRlZmluaXRpb25zXzEuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24odGFyZ2V0cywgY29sbGVjdGlvbkxpc3RlbmVyKSwKICAgICAgICAvLyBJZiBub3QgdHJhY2tpbmcgY2hhbmdlcyB0aGUgYGV4dGVuc2lvbnNgIHZhcmlhYmxlIHdpbGwgY29udGFpbiB0aGUgcGFyc2VkCiAgICAgICAgLy8gdmFsdWVzLiAgT3RoZXJ3aXNlIHRoZSBleHRlbnNpb25zIGFyZSB0cmFja2VkIHZpYSBhIHZpcnR1YWwgQVNUIG9iamVjdC4KICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbImFyY2hpdGVjdCIsICJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgInRhcmdldHMiXSwKICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAuLi5wYXRoXSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH07CiAgICAgIGNvbnN0IGJhc2VLZXlzID0gbmV3IFNldChPYmplY3Qua2V5cyhiYXNlKSk7CiAgICAgIGNvbnN0IHByb2plY3QgPSBwcm9wZXJ0aWVzID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgaW5jbHVkZTogWyJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgLi4uYmFzZUtleXNdLAogICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoIWJhc2VLZXlzLmhhcyhwYXRoWzBdKSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgLi4ucGF0aF0sIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihwcm9qZWN0LCBiYXNlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlVGFyZ2V0c09iamVjdChwcm9qZWN0TmFtZSwgdGFyZ2V0c05vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgY29uc3QgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkodGFyZ2V0c05vZGUpKSkgewogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIGNvbnRleHQud2FybigiU2tpcHBpbmcgaW52YWxpZCB0YXJnZXQgdmFsdWU7IGV4cGVjdGVkIGFuIG9iamVjdC4iLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgICB0YXJnZXRzW25hbWVdID0gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHZhbHVlLCB7CiAgICAgICAgICAgIGluY2x1ZGU6IFsiYnVpbGRlciIsICJvcHRpb25zIiwgImNvbmZpZ3VyYXRpb25zIiwgImRlZmF1bHRDb25maWd1cmF0aW9uIl0sCiAgICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlMikgewogICAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyIsIG5hbWUsIC4uLnBhdGhdLCB2YWx1ZTIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGFyZ2V0c1tuYW1lXSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gdGFyZ2V0czsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcwp2YXIgcmVxdWlyZV93cml0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVKc29uV29ya3NwYWNlID0gd3JpdGVKc29uV29ya3NwYWNlOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgbm9kZV9vc18xID0gcmVxdWlyZSgibm9kZTpvcyIpOwogICAgdmFyIG1ldGFkYXRhXzEgPSByZXF1aXJlX21ldGFkYXRhMigpOwogICAgYXN5bmMgZnVuY3Rpb24gd3JpdGVKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IG1ldGFkYXRhID0gd29ya3NwYWNlW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF07CiAgICAgIGlmIChtZXRhZGF0YSkgewogICAgICAgIGlmICghbWV0YWRhdGEuaGFzQ2hhbmdlcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBkYXRhID0gdXBkYXRlSnNvbldvcmtzcGFjZShtZXRhZGF0YSk7CiAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGVGaWxlKHBhdGggPz8gbWV0YWRhdGEuZmlsZVBhdGgsIGRhdGEpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghcGF0aCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJwYXRoIG9wdGlvbiBpcyByZXF1aXJlZCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBvYmogPSBjb252ZXJ0SnNvbldvcmtzcGFjZSh3b3Jrc3BhY2UsIG9wdGlvbnMuc2NoZW1hKTsKICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5zdHJpbmdpZnkob2JqLCBudWxsLCAyKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCwgZGF0YSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgc2NoZW1hMikgewogICAgICBjb25zdCBvYmogPSB7CiAgICAgICAgJHNjaGVtYTogc2NoZW1hMiB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpIHsKICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIHN3aXRjaCAodHlwZTIpIHsKICAgICAgICBjYXNlICJwcm9qZWN0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblByb2plY3QodmFsdWUpOwogICAgICAgIGNhc2UgInByb2plY3Rjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgcHJvamVjdHMgPSBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHZhbHVlKTsKICAgICAgICAgIHJldHVybiBpc0VtcHR5KHByb2plY3RzKSA/IHZvaWQgMCA6IHByb2plY3RzOwogICAgICAgIH0KICAgICAgICBjYXNlICJ0YXJnZXQiOgogICAgICAgICAgcmV0dXJuIGNvbnZlcnRKc29uVGFyZ2V0KHZhbHVlKTsKICAgICAgICBjYXNlICJ0YXJnZXRjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgdGFyZ2V0cyA9IGNvbnZlcnRKc29uVGFyZ2V0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eSh0YXJnZXRzKSA/IHZvaWQgMCA6IHRhcmdldHM7CiAgICAgICAgfQogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUpzb25Xb3Jrc3BhY2UobWV0YWRhdGEpIHsKICAgICAgbGV0IHsgcmF3OiBjb250ZW50IH0gPSBtZXRhZGF0YTsKICAgICAgY29uc3QgeyBjaGFuZ2VzLCBoYXNMZWdhY3lUYXJnZXRzTmFtZSB9ID0gbWV0YWRhdGE7CiAgICAgIGZvciAoY29uc3QgeyBqc29uUGF0aCwgdmFsdWUsIHR5cGU6IHR5cGUyIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpLCB7CiAgICAgICAgICBmb3JtYXR0aW5nT3B0aW9uczogewogICAgICAgICAgICBpbnNlcnRTcGFjZXM6IHRydWUsCiAgICAgICAgICAgIHRhYlNpemU6IDIsCiAgICAgICAgICAgIGVvbDogZ2V0RU9MKGNvbnRlbnQpCiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29udGVudCA9ICgwLCBqc29uY19wYXJzZXJfMS5hcHBseUVkaXRzKShjb250ZW50LCBlZGl0cyk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbnRlbnQ7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRFT0woY29udGVudCkgewogICAgICBjb25zdCBDUkxGID0gIlxyXG4iOwogICAgICBjb25zdCBMRiA9ICJcbiI7CiAgICAgIGNvbnN0IG5ld2xpbmVzID0gY29udGVudC5tYXRjaCgvKD86XHI/XG4pL2cpOwogICAgICBpZiAobmV3bGluZXM/Lmxlbmd0aCkgewogICAgICAgIGNvbnN0IGNybGYgPSBuZXdsaW5lcy5maWx0ZXIoKGwpID0+IGwgPT09IENSTEYpLmxlbmd0aDsKICAgICAgICBjb25zdCBsZiA9IG5ld2xpbmVzLmxlbmd0aCAtIGNybGY7CiAgICAgICAgcmV0dXJuIGNybGYgPiBsZiA/IENSTEYgOiBMRjsKICAgICAgfQogICAgICByZXR1cm4gbm9kZV9vc18xLkVPTDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gdm9pZCAwOwogICAgZXhwb3J0czIuX3Rlc3RfYWRkV29ya3NwYWNlRmlsZSA9IF90ZXN0X2FkZFdvcmtzcGFjZUZpbGU7CiAgICBleHBvcnRzMi5fdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSByZWFkV29ya3NwYWNlOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSB3cml0ZVdvcmtzcGFjZTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIHZhciByZWFkZXJfMSA9IHJlcXVpcmVfcmVhZGVyKCk7CiAgICB2YXIgd3JpdGVyXzEgPSByZXF1aXJlX3dyaXRlcigpOwogICAgdmFyIGZvcm1hdExvb2t1cCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgdmFyIFdvcmtzcGFjZUZvcm1hdDsKICAgIChmdW5jdGlvbihXb3Jrc3BhY2VGb3JtYXQyKSB7CiAgICAgIFdvcmtzcGFjZUZvcm1hdDJbV29ya3NwYWNlRm9ybWF0MlsiSlNPTiJdID0gMF0gPSAiSlNPTiI7CiAgICB9KShXb3Jrc3BhY2VGb3JtYXQgfHwgKGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IFdvcmtzcGFjZUZvcm1hdCA9IHt9KSk7CiAgICBmdW5jdGlvbiBfdGVzdF9hZGRXb3Jrc3BhY2VGaWxlKG5hbWUsIGZvcm1hdCkgewogICAgICB3b3Jrc3BhY2VGaWxlc1tuYW1lXSA9IGZvcm1hdDsKICAgIH0KICAgIGZ1bmN0aW9uIF90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUobmFtZSkgewogICAgICBkZWxldGUgd29ya3NwYWNlRmlsZXNbbmFtZV07CiAgICB9CiAgICB2YXIgd29ya3NwYWNlRmlsZXMgPSB7CiAgICAgICJhbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTiwKICAgICAgIi5hbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTgogICAgfTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRXb3Jrc3BhY2UocGF0aCwgaG9zdCwgZm9ybWF0KSB7CiAgICAgIGlmIChhd2FpdCBob3N0LmlzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgIGZvciAoY29uc3QgW25hbWUsIG5hbWVGb3JtYXRdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZUZpbGVzKSkgewogICAgICAgICAgaWYgKGZvcm1hdCAhPT0gdm9pZCAwICYmIGZvcm1hdCAhPT0gbmFtZUZvcm1hdCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBvdGVudGlhbCA9ICgwLCB2aXJ0dWFsX2ZzXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHZpcnR1YWxfZnNfMS5qb2luKShkaXJlY3RvcnksIG5hbWUpKTsKICAgICAgICAgIGlmIChhd2FpdCBob3N0LmlzRmlsZShwb3RlbnRpYWwpKSB7CiAgICAgICAgICAgIHBhdGggPSBwb3RlbnRpYWw7CiAgICAgICAgICAgIGZvcm1hdCA9IG5hbWVGb3JtYXQ7CiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghZm91bmQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSBhIHdvcmtzcGFjZSBmaWxlIGZvciB3b3Jrc3BhY2UgcGF0aC4gQXJlIHlvdSBtaXNzaW5nIGFuIGBhbmd1bGFyLmpzb25gIG9yIGAuYW5ndWxhci5qc29uYCBmaWxlPyIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IGZpbGVuYW1lID0gKDAsIHZpcnR1YWxfZnNfMS5iYXNlbmFtZSkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgICBpZiAoZmlsZW5hbWUgaW4gd29ya3NwYWNlRmlsZXMpIHsKICAgICAgICAgIGZvcm1hdCA9IHdvcmtzcGFjZUZpbGVzW2ZpbGVuYW1lXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gZGV0ZXJtaW5lIGZvcm1hdCBmb3Igd29ya3NwYWNlIHBhdGguIik7CiAgICAgIH0KICAgICAgbGV0IHdvcmtzcGFjZTsKICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgd29ya3NwYWNlID0gYXdhaXQgKDAsIHJlYWRlcl8xLnJlYWRKc29uV29ya3NwYWNlKShwYXRoLCBob3N0KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgICAgZm9ybWF0TG9va3VwLnNldCh3b3Jrc3BhY2UsIFdvcmtzcGFjZUZvcm1hdC5KU09OKTsKICAgICAgcmV0dXJuIHsgd29ya3NwYWNlIH07CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZVdvcmtzcGFjZSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgsIGZvcm1hdCkgewogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICBmb3JtYXQgPSBmb3JtYXRMb29rdXAuZ2V0KHdvcmtzcGFjZSk7CiAgICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkEgZm9ybWF0IGlzIHJlcXVpcmVkIGZvciBjdXN0b20gd29ya3NwYWNlIG9iamVjdHMuIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgICAgY2FzZSBXb3Jrc3BhY2VGb3JtYXQuSlNPTjoKICAgICAgICAgIHJldHVybiAoMCwgd3JpdGVyXzEud3JpdGVKc29uV29ya3NwYWNlKSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgpOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcwp2YXIgcmVxdWlyZV93b3Jrc3BhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSBleHBvcnRzMi5yZWFkV29ya3NwYWNlID0gZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IHZvaWQgMDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2RlZmluaXRpb25zKCksIGV4cG9ydHMyKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3QyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjcmVhdGVXb3Jrc3BhY2VIb3N0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaG9zdF8xLmNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZTMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIldvcmtzcGFjZUZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5Xb3Jrc3BhY2VGb3JtYXQ7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVhZFdvcmtzcGFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5yZWFkV29ya3NwYWNlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndyaXRlV29ya3NwYWNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLndyaXRlV29ya3NwYWNlOwogICAgfSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndvcmtzcGFjZXMgPSBleHBvcnRzMi5sb2dnaW5nID0gZXhwb3J0czIuanNvbiA9IHZvaWQgMDsKICAgIHZhciBqc29uMiA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2pzb24oKSk7CiAgICBleHBvcnRzMi5qc29uID0ganNvbjI7CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanMKdmFyIHJlcXVpcmVfaHRtbF9zZWxlY3RvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgdW5pY29kZVJhbmdlcyA9IFsKICAgICAgWzE5MiwgMjE0XSwKICAgICAgWzIxNiwgMjQ2XSwKICAgICAgWzI0OCwgODkzXSwKICAgICAgWzg5NSwgODE5MV0sCiAgICAgIFs4MjA0LCA4MjA1XSwKICAgICAgWzgyNTUsIDgyNTZdLAogICAgICBbODMwNCwgODU5MV0sCiAgICAgIFsxMTI2NCwgMTIyNzFdLAogICAgICBbMTIyODksIDU1Mjk1XSwKICAgICAgWzYzNzQ0LCA2NDk3NV0sCiAgICAgIFs2NTAwOCwgNjU1MzNdLAogICAgICBbNjU1MzYsIDk4MzAzOV0KICAgIF07CiAgICBmdW5jdGlvbiBpc1ZhbGlkRWxlbWVudE5hbWUobmFtZSkgewogICAgICBsZXQgcmVnZXggPSAiXlthLXpBLVpdWyI7CiAgICAgIHJlZ2V4ICs9ICItLjAtOV9hLXpBLVpcXHV7Qjd9IjsKICAgICAgZm9yIChjb25zdCByYW5nZSBvZiB1bmljb2RlUmFuZ2VzKSB7CiAgICAgICAgcmVnZXggKz0gYFxcdXske3JhbmdlWzBdLnRvU3RyaW5nKDE2KX19LVxcdXske3JhbmdlWzFdLnRvU3RyaW5nKDE2KX19YDsKICAgICAgfQogICAgICByZWdleCArPSAiXSokIjsKICAgICAgcmV0dXJuIG5ldyBSZWdFeHAocmVnZXgsICJ1IikudGVzdChuYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmh0bWxTZWxlY3RvckZvcm1hdCA9IHsKICAgICAgbmFtZTogImh0bWwtc2VsZWN0b3IiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChuYW1lKSA9PiB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgJiYgaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpCiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHsKICAgICAgbmFtZTogInBhdGgiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChwYXRoKSA9PiB7CiAgICAgICAgICByZXR1cm4gcGF0aCA9PT0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0czIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLlRyZWVTeW1ib2wgPSBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gZXhwb3J0czIuTWVyZ2VTdHJhdGVneSA9IHZvaWQgMDsKICAgIHZhciBNZXJnZVN0cmF0ZWd5MjsKICAgIChmdW5jdGlvbihNZXJnZVN0cmF0ZWd5MykgewogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dPdmVyd3JpdGVDb25mbGljdCJdID0gMl0gPSAiQWxsb3dPdmVyd3JpdGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiXSA9IDRdID0gIkFsbG93Q3JlYXRpb25Db25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0RlbGV0ZUNvbmZsaWN0Il0gPSA4XSA9ICJBbGxvd0RlbGV0ZUNvbmZsaWN0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkRlZmF1bHQiXSA9IDBdID0gIkRlZmF1bHQiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siRXJyb3IiXSA9IDFdID0gIkVycm9yIjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkNvbnRlbnRPbmx5Il0gPSAyXSA9ICJDb250ZW50T25seSI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJPdmVyd3JpdGUiXSA9IDE0XSA9ICJPdmVyd3JpdGUiOwogICAgfSkoTWVyZ2VTdHJhdGVneTIgfHwgKGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSBNZXJnZVN0cmF0ZWd5MiA9IHt9KSk7CiAgICBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gU3ltYm9sKCk7CiAgICBleHBvcnRzMi5UcmVlU3ltYm9sID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IGdsb2JhbFN5bWJvbCA9IHR5cGVvZiB3aW5kb3cgPT0gIm9iamVjdCIgJiYgd2luZG93LndpbmRvdyA9PT0gd2luZG93ICYmIHdpbmRvdy5TeW1ib2wgfHwgdHlwZW9mIHNlbGYgPT0gIm9iamVjdCIgJiYgc2VsZi5zZWxmID09PSBzZWxmICYmIHNlbGYuU3ltYm9sIHx8IHR5cGVvZiBnbG9iYWwgPT0gIm9iamVjdCIgJiYgZ2xvYmFsLmdsb2JhbCA9PT0gZ2xvYmFsICYmIGdsb2JhbC5TeW1ib2w7CiAgICAgIGlmICghZ2xvYmFsU3ltYm9sKSB7CiAgICAgICAgcmV0dXJuIFN5bWJvbCgic2NoZW1hdGljLXRyZWUiKTsKICAgICAgfQogICAgICBpZiAoIWdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlKSB7CiAgICAgICAgZ2xvYmFsU3ltYm9sLnNjaGVtYXRpY1RyZWUgPSBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlOwogICAgfSgpOwogICAgZXhwb3J0czIuVHJlZSA9IE9iamVjdC5mcmVlemUoewogICAgICBpc1RyZWUobWF5YmVUcmVlKSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLlRyZWVTeW1ib2wgaW4gbWF5YmVUcmVlOwogICAgICB9CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZXhjZXB0aW9uL2V4Y2VwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuU2NoZW1hdGljc0V4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFNjaGVtYXRpY3NFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIHZhciBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ29udGVudCBhdCBwYXRoICIke3BhdGh9IiBoYXMgY2hhbmdlZCBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgdGhlIGVuZCBvZiBhbiB1cGRhdGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEludmFsaWQgcmVjb3JkIGluc3RhbmNlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb247CiAgICB2YXIgTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYEEgbWVyZ2UgY29uZmxpY3RlZCBvbiBwYXRoICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24gPSBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uOwogICAgdmFyIFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJXb3JrZmxvdyBkaWQgbm90IGV4ZWN1dGUgc3VjY2Vzc2Z1bGx5LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBVbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbjsKICAgIHZhciBVbmltcGxlbWVudGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJUaGlzIGZ1bmN0aW9uIGlzIHVuaW1wbGVtZW50ZWQuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMKdmFyIHJlcXVpcmVfZGVsZWdhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcwp2YXIgcmVxdWlyZV9lbnRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBTaW1wbGVGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9wYXRoOwogICAgICBfY29udGVudDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2NvbnRlbnQgPSBfY29udGVudDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IFNpbXBsZUZpbGVFbnRyeTsKICAgIHZhciBMYXp5RmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2xvYWQ7CiAgICAgIF9jb250ZW50ID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9sb2FkKSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2xvYWQgPSBfbG9hZDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudCB8fCAodGhpcy5fY29udGVudCA9IHRoaXMuX2xvYWQodGhpcy5fcGF0aCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IExhenlGaWxlRW50cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0BqcmlkZ2V3ZWxsLXNvdXJjZW1hcC1jb2RlYy1ucG0tMS41LjAtZGZkOTEyNmQ3MS0xMC56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtMTAuemlwL25vZGVfbW9kdWxlcy9AanJpZGdld2VsbC9zb3VyY2VtYXAtY29kZWMvZGlzdC9zb3VyY2VtYXAtY29kZWMudW1kLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGdsb2JhbDIsIGZhY3RvcnkpIHsKICAgICAgdHlwZW9mIGV4cG9ydHMyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMiAhPT0gInVuZGVmaW5lZCIgPyBmYWN0b3J5KGV4cG9ydHMyKSA6IHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbImV4cG9ydHMiXSwgZmFjdG9yeSkgOiAoZ2xvYmFsMiA9IHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiA/IGdsb2JhbFRoaXMgOiBnbG9iYWwyIHx8IHNlbGYsIGZhY3RvcnkoZ2xvYmFsMi5zb3VyY2VtYXBDb2RlYyA9IHt9KSk7CiAgICB9KShleHBvcnRzMiwgZnVuY3Rpb24oZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBjb25zdCBjb21tYSA9ICIsIi5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBzZW1pY29sb24gPSAiOyIuY2hhckNvZGVBdCgwKTsKICAgICAgY29uc3QgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgICAgIGNvbnN0IGludFRvQ2hhciA9IG5ldyBVaW50OEFycmF5KDY0KTsKICAgICAgY29uc3QgY2hhclRvSW50ID0gbmV3IFVpbnQ4QXJyYXkoMTI4KTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFycy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBjaGFycy5jaGFyQ29kZUF0KGkpOwogICAgICAgIGludFRvQ2hhcltpXSA9IGM7CiAgICAgICAgY2hhclRvSW50W2NdID0gaTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgdmFsdWUgPSAwOwogICAgICAgIGxldCBzaGlmdCA9IDA7CiAgICAgICAgbGV0IGludGVnZXIgPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGMgPSByZWFkZXIubmV4dCgpOwogICAgICAgICAgaW50ZWdlciA9IGNoYXJUb0ludFtjXTsKICAgICAgICAgIHZhbHVlIHw9IChpbnRlZ2VyICYgMzEpIDw8IHNoaWZ0OwogICAgICAgICAgc2hpZnQgKz0gNTsKICAgICAgICB9IHdoaWxlIChpbnRlZ2VyICYgMzIpOwogICAgICAgIGNvbnN0IHNob3VsZE5lZ2F0ZSA9IHZhbHVlICYgMTsKICAgICAgICB2YWx1ZSA+Pj49IDE7CiAgICAgICAgaWYgKHNob3VsZE5lZ2F0ZSkgewogICAgICAgICAgdmFsdWUgPSAtMjE0NzQ4MzY0OCB8IC12YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlbGF0aXZlICsgdmFsdWU7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlSW50ZWdlcihidWlsZGVyLCBudW0sIHJlbGF0aXZlKSB7CiAgICAgICAgbGV0IGRlbHRhID0gbnVtIC0gcmVsYXRpdmU7CiAgICAgICAgZGVsdGEgPSBkZWx0YSA8IDAgPyAtZGVsdGEgPDwgMSB8IDEgOiBkZWx0YSA8PCAxOwogICAgICAgIGRvIHsKICAgICAgICAgIGxldCBjbGFtcGVkID0gZGVsdGEgJiAzMTsKICAgICAgICAgIGRlbHRhID4+Pj0gNTsKICAgICAgICAgIGlmIChkZWx0YSA+IDApCiAgICAgICAgICAgIGNsYW1wZWQgfD0gMzI7CiAgICAgICAgICBidWlsZGVyLndyaXRlKGludFRvQ2hhcltjbGFtcGVkXSk7CiAgICAgICAgfSB3aGlsZSAoZGVsdGEgPiAwKTsKICAgICAgICByZXR1cm4gbnVtOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGhhc01vcmVWbHEocmVhZGVyLCBtYXgpIHsKICAgICAgICBpZiAocmVhZGVyLnBvcyA+PSBtYXgpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHJlYWRlci5wZWVrKCkgIT09IGNvbW1hOwogICAgICB9CiAgICAgIGNvbnN0IGJ1Zkxlbmd0aCA9IDEwMjQgKiAxNjsKICAgICAgY29uc3QgdGQgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09ICJ1bmRlZmluZWQiID8gLyogQF9fUFVSRV9fICovIG5ldyBUZXh0RGVjb2RlcigpIDogdHlwZW9mIEJ1ZmZlciAhPT0gInVuZGVmaW5lZCIgPyB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgY29uc3Qgb3V0ID0gQnVmZmVyLmZyb20oYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTsKICAgICAgICAgIHJldHVybiBvdXQudG9TdHJpbmcoKTsKICAgICAgICB9CiAgICAgIH0gOiB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgbGV0IG91dCA9ICIiOwogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgb3V0ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnVmW2ldKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBvdXQ7CiAgICAgICAgfQogICAgICB9OwogICAgICBjbGFzcyBTdHJpbmdXcml0ZXIgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgdGhpcy5vdXQgPSAiIjsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnVmTGVuZ3RoKTsKICAgICAgICB9CiAgICAgICAgd3JpdGUodikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIgfSA9IHRoaXM7CiAgICAgICAgICBidWZmZXJbdGhpcy5wb3MrK10gPSB2OwogICAgICAgICAgaWYgKHRoaXMucG9zID09PSBidWZMZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy5vdXQgKz0gdGQuZGVjb2RlKGJ1ZmZlcik7CiAgICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZmx1c2goKSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciwgb3V0LCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICByZXR1cm4gcG9zID4gMCA/IG91dCArIHRkLmRlY29kZShidWZmZXIuc3ViYXJyYXkoMCwgcG9zKSkgOiBvdXQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNsYXNzIFN0cmluZ1JlYWRlciB7CiAgICAgICAgY29uc3RydWN0b3IoYnVmZmVyKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAgICB9CiAgICAgICAgbmV4dCgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlci5jaGFyQ29kZUF0KHRoaXMucG9zKyspOwogICAgICAgIH0KICAgICAgICBwZWVrKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MpOwogICAgICAgIH0KICAgICAgICBpbmRleE9mKGNoYXIpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICBjb25zdCBpZHggPSBidWZmZXIuaW5kZXhPZihjaGFyLCBwb3MpOwogICAgICAgICAgcmV0dXJuIGlkeCA9PT0gLTEgPyBidWZmZXIubGVuZ3RoIDogaWR4OwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBFTVBUWSA9IFtdOwogICAgICBmdW5jdGlvbiBkZWNvZGVPcmlnaW5hbFNjb3BlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCBzY29wZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBsaW5lID0gMDsKICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IGxlbmd0aDsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICBsaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGxpbmUpOwogICAgICAgICAgY29uc3QgY29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgIGxhc3RbMl0gPSBsaW5lOwogICAgICAgICAgICBsYXN0WzNdID0gY29sdW1uOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtpbmQgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBoYXNOYW1lID0gZmllbGRzICYgMTsKICAgICAgICAgIGNvbnN0IHNjb3BlID0gaGFzTmFtZSA/IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmQsIGRlY29kZUludGVnZXIocmVhZGVyLCAwKV0gOiBbbGluZSwgY29sdW1uLCAwLCAwLCBraW5kXTsKICAgICAgICAgIGxldCB2YXJzID0gRU1QVFk7CiAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIGxlbmd0aCkpIHsKICAgICAgICAgICAgdmFycyA9IFtdOwogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgY29uc3QgdmFyc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgIHZhcnMucHVzaCh2YXJzSW5kZXgpOwogICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzY29wZS52YXJzID0gdmFyczsKICAgICAgICAgIHNjb3Blcy5wdXNoKHNjb3BlKTsKICAgICAgICAgIHN0YWNrLnB1c2goc2NvcGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcykgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjb3Blcy5sZW5ndGg7ICkgewogICAgICAgICAgaSA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGksIHdyaXRlciwgWzBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3Qgc2NvcGUgPSBzY29wZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCA0OiBraW5kLCB2YXJzIH0gPSBzY29wZTsKICAgICAgICBpZiAoaW5kZXggPiAwKQogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydExpbmUsIHN0YXRlWzBdKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc3RhcnRDb2x1bW4sIDApOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBraW5kLCAwKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSBzY29wZS5sZW5ndGggPT09IDYgPyAxIDogMDsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAoc2NvcGUubGVuZ3RoID09PSA2KQogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNjb3BlWzVdLCAwKTsKICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFycykgewogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHYsIDApOwogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gc2NvcGVzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlci53cml0ZShjb21tYSk7CiAgICAgICAgc3RhdGVbMF0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kTGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIDApOwogICAgICAgIHJldHVybiBpbmRleDsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVHZW5lcmF0ZWRSYW5nZXMoaW5wdXQpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gaW5wdXQ7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7CiAgICAgICAgY29uc3QgcmFuZ2VzID0gW107CiAgICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgICBsZXQgZ2VuTGluZSA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBkZWZpbml0aW9uU2NvcGVJbmRleCA9IDA7CiAgICAgICAgbGV0IGNhbGxzaXRlU291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVMaW5lID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVDb2x1bW4gPSAwOwogICAgICAgIGxldCBiaW5kaW5nTGluZSA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdDb2x1bW4gPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IHNlbWk7IHJlYWRlci5wb3MrKykgewogICAgICAgICAgICBnZW5Db2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgICAgbGFzdFsyXSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgbGFzdFszXSA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgIGNvbnN0IGhhc0RlZmluaXRpb24gPSBmaWVsZHMgJiAxOwogICAgICAgICAgICBjb25zdCBoYXNDYWxsc2l0ZSA9IGZpZWxkcyAmIDI7CiAgICAgICAgICAgIGNvbnN0IGhhc1Njb3BlID0gZmllbGRzICYgNDsKICAgICAgICAgICAgbGV0IGNhbGxzaXRlID0gbnVsbDsKICAgICAgICAgICAgbGV0IGJpbmRpbmdzID0gRU1QVFk7CiAgICAgICAgICAgIGxldCByYW5nZTsKICAgICAgICAgICAgaWYgKGhhc0RlZmluaXRpb24pIHsKICAgICAgICAgICAgICBjb25zdCBkZWZTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgZGVmaW5pdGlvblNjb3BlSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9PT0gZGVmU291cmNlc0luZGV4ID8gZGVmaW5pdGlvblNjb3BlSW5kZXggOiAwKTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU291cmNlc0luZGV4ID0gZGVmU291cmNlc0luZGV4OwogICAgICAgICAgICAgIHJhbmdlID0gW2dlbkxpbmUsIGdlbkNvbHVtbiwgMCwgMCwgZGVmU291cmNlc0luZGV4LCBkZWZpbml0aW9uU2NvcGVJbmRleF07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5pc1Njb3BlID0gISFoYXNTY29wZTsKICAgICAgICAgICAgaWYgKGhhc0NhbGxzaXRlKSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldkNzaSA9IGNhbGxzaXRlU291cmNlc0luZGV4OwogICAgICAgICAgICAgIGNvbnN0IHByZXZMaW5lID0gY2FsbHNpdGVMaW5lOwogICAgICAgICAgICAgIGNhbGxzaXRlU291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGNhbGxzaXRlU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBjb25zdCBzYW1lU291cmNlID0gcHJldkNzaSA9PT0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY2FsbHNpdGVMaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgPyBjYWxsc2l0ZUxpbmUgOiAwKTsKICAgICAgICAgICAgICBjYWxsc2l0ZUNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzYW1lU291cmNlICYmIHByZXZMaW5lID09PSBjYWxsc2l0ZUxpbmUgPyBjYWxsc2l0ZUNvbHVtbiA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlID0gW2NhbGxzaXRlU291cmNlc0luZGV4LCBjYWxsc2l0ZUxpbmUsIGNhbGxzaXRlQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5jYWxsc2l0ZSA9IGNhbGxzaXRlOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgYmluZGluZ3MgPSBbXTsKICAgICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgICBiaW5kaW5nQ29sdW1uID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbnNDb3VudCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uUmFuZ2VzOwogICAgICAgICAgICAgICAgaWYgKGV4cHJlc3Npb25zQ291bnQgPCAtMSkgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCldXTsKICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IC0xOyBpID4gZXhwcmVzc2lvbnNDb3VudDsgaS0tKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJldkJsID0gYmluZGluZ0xpbmU7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0xpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUpOwogICAgICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUgPT09IHByZXZCbCA/IGJpbmRpbmdDb2x1bW4gOiAwKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMucHVzaChbZXhwcmVzc2lvbiwgYmluZGluZ0xpbmUsIGJpbmRpbmdDb2x1bW5dKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcyA9IFtbZXhwcmVzc2lvbnNDb3VudF1dOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYmluZGluZ3MucHVzaChleHByZXNzaW9uUmFuZ2VzKTsKICAgICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmJpbmRpbmdzID0gYmluZGluZ3M7CiAgICAgICAgICAgIHJhbmdlcy5wdXNoKHJhbmdlKTsKICAgICAgICAgICAgc3RhY2sucHVzaChyYW5nZSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW5MaW5lKys7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHJhbmdlczsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzKSB7CiAgICAgICAgaWYgKHJhbmdlcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGksIHdyaXRlciwgWzAsIDAsIDAsIDAsIDAsIDAsIDBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSkgewogICAgICAgIGNvbnN0IHJhbmdlID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICBjb25zdCB7IDA6IHN0YXJ0TGluZSwgMTogc3RhcnRDb2x1bW4sIDI6IGVuZExpbmUsIDM6IGVuZENvbHVtbiwgaXNTY29wZSwgY2FsbHNpdGUsIGJpbmRpbmdzIH0gPSByYW5nZTsKICAgICAgICBpZiAoc3RhdGVbMF0gPCBzdGFydExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIHN0YXJ0TGluZSk7CiAgICAgICAgICBzdGF0ZVswXSA9IHN0YXJ0TGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgcmFuZ2VbMV0sIHN0YXRlWzFdKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSAocmFuZ2UubGVuZ3RoID09PSA2ID8gMSA6IDApIHwgKGNhbGxzaXRlID8gMiA6IDApIHwgKGlzU2NvcGUgPyA0IDogMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGZpZWxkcywgMCk7CiAgICAgICAgaWYgKHJhbmdlLmxlbmd0aCA9PT0gNikgewogICAgICAgICAgY29uc3QgeyA0OiBzb3VyY2VzSW5kZXgsIDU6IHNjb3Blc0luZGV4IH0gPSByYW5nZTsKICAgICAgICAgIGlmIChzb3VyY2VzSW5kZXggIT09IHN0YXRlWzJdKSB7CiAgICAgICAgICAgIHN0YXRlWzNdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzJdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbMl0pOwogICAgICAgICAgc3RhdGVbM10gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVzSW5kZXgsIHN0YXRlWzNdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNhbGxzaXRlKSB7CiAgICAgICAgICBjb25zdCB7IDA6IHNvdXJjZXNJbmRleCwgMTogY2FsbExpbmUsIDI6IGNhbGxDb2x1bW4gfSA9IHJhbmdlLmNhbGxzaXRlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbNF0pIHsKICAgICAgICAgICAgc3RhdGVbNV0gPSAwOwogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9IGVsc2UgaWYgKGNhbGxMaW5lICE9PSBzdGF0ZVs1XSkgewogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZVs0XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzb3VyY2VzSW5kZXgsIHN0YXRlWzRdKTsKICAgICAgICAgIHN0YXRlWzVdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxMaW5lLCBzdGF0ZVs1XSk7CiAgICAgICAgICBzdGF0ZVs2XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBjYWxsQ29sdW1uLCBzdGF0ZVs2XSk7CiAgICAgICAgfQogICAgICAgIGlmIChiaW5kaW5ncykgewogICAgICAgICAgZm9yIChjb25zdCBiaW5kaW5nIG9mIGJpbmRpbmdzKSB7CiAgICAgICAgICAgIGlmIChiaW5kaW5nLmxlbmd0aCA+IDEpCiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIC1iaW5kaW5nLmxlbmd0aCwgMCk7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBiaW5kaW5nWzBdWzBdOwogICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwcmVzc2lvbiwgMCk7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRMaW5lID0gc3RhcnRMaW5lOwogICAgICAgICAgICBsZXQgYmluZGluZ1N0YXJ0Q29sdW1uID0gc3RhcnRDb2x1bW47CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgYmluZGluZy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGV4cFJhbmdlID0gYmluZGluZ1tpXTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRMaW5lID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzFdLCBiaW5kaW5nU3RhcnRMaW5lKTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRDb2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMl0sIGJpbmRpbmdTdGFydENvbHVtbik7CiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzBdLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGVbMF0gPCBlbmRMaW5lKSB7CiAgICAgICAgICBjYXRjaHVwTGluZSh3cml0ZXIsIHN0YXRlWzBdLCBlbmRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gZW5kTGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kQ29sdW1uLCBzdGF0ZVsxXSk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhdGNodXBMaW5lKHdyaXRlciwgbGFzdExpbmUsIGxpbmUpIHsKICAgICAgICBkbyB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoc2VtaWNvbG9uKTsKICAgICAgICB9IHdoaWxlICgrK2xhc3RMaW5lIDwgbGluZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZGVjb2RlKG1hcHBpbmdzKSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IG1hcHBpbmdzOwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIobWFwcGluZ3MpOwogICAgICAgIGNvbnN0IGRlY29kZWQgPSBbXTsKICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgY29uc3QgbGluZSA9IFtdOwogICAgICAgICAgbGV0IHNvcnRlZCA9IHRydWU7CiAgICAgICAgICBsZXQgbGFzdENvbCA9IDA7CiAgICAgICAgICBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgd2hpbGUgKHJlYWRlci5wb3MgPCBzZW1pKSB7CiAgICAgICAgICAgIGxldCBzZWc7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoZ2VuQ29sdW1uIDwgbGFzdENvbCkKICAgICAgICAgICAgICBzb3J0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgbGFzdENvbCA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIHNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlTGluZSk7CiAgICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgICAgbmFtZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBuYW1lc0luZGV4KTsKICAgICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW4sIHNvdXJjZXNJbmRleCwgc291cmNlTGluZSwgc291cmNlQ29sdW1uLCBuYW1lc0luZGV4XTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW5dOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lLnB1c2goc2VnKTsKICAgICAgICAgICAgcmVhZGVyLnBvcysrOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFzb3J0ZWQpCiAgICAgICAgICAgIHNvcnQobGluZSk7CiAgICAgICAgICBkZWNvZGVkLnB1c2gobGluZSk7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8PSBsZW5ndGgpOwogICAgICAgIHJldHVybiBkZWNvZGVkOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHNvcnQobGluZSkgewogICAgICAgIGxpbmUuc29ydChzb3J0Q29tcGFyYXRvcik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydENvbXBhcmF0b3IoYSwgYikgewogICAgICAgIHJldHVybiBhWzBdIC0gYlswXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGUoZGVjb2RlZCkgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGVjb2RlZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgbGluZSA9IGRlY29kZWRbaV07CiAgICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgICAgaWYgKGxpbmUubGVuZ3RoID09PSAwKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsaW5lLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBsaW5lW2pdOwogICAgICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMF0sIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gMSkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMV0sIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsyXSwgc291cmNlTGluZSk7CiAgICAgICAgICAgIHNvdXJjZUNvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzNdLCBzb3VyY2VDb2x1bW4pOwogICAgICAgICAgICBpZiAoc2VnbWVudC5sZW5ndGggPT09IDQpCiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIG5hbWVzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFs0XSwgbmFtZXNJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB3cml0ZXIuZmx1c2goKTsKICAgICAgfQogICAgICBleHBvcnRzMy5kZWNvZGUgPSBkZWNvZGU7CiAgICAgIGV4cG9ydHMzLmRlY29kZUdlbmVyYXRlZFJhbmdlcyA9IGRlY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZGVjb2RlT3JpZ2luYWxTY29wZXMgPSBkZWNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgZXhwb3J0czMuZW5jb2RlID0gZW5jb2RlOwogICAgICBleHBvcnRzMy5lbmNvZGVHZW5lcmF0ZWRSYW5nZXMgPSBlbmNvZGVHZW5lcmF0ZWRSYW5nZXM7CiAgICAgIGV4cG9ydHMzLmVuY29kZU9yaWdpbmFsU2NvcGVzID0gZW5jb2RlT3JpZ2luYWxTY29wZXM7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcwp2YXIgcmVxdWlyZV9tYWdpY19zdHJpbmdfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIyKSA9PiBnbG9iYWxUaGlzLmJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHN0cjIpKSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIEJ1ZmZlciA9PT0gImZ1bmN0aW9uIikgewogICAgICAgIHJldHVybiAoc3RyMikgPT4gQnVmZmVyLmZyb20oc3RyMiwgInV0Zi04IikudG9TdHJpbmcoImJhc2U2NCIpOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIGVudmlyb25tZW50OiBgd2luZG93LmJ0b2FgIG9yIGBCdWZmZXJgIHNob3VsZCBiZSBzdXBwb3J0ZWQuIik7CiAgICAgICAgfTsKICAgICAgfQogICAgfQogICAgdmFyIGJ0b2EgPSAvKiBAX19QVVJFX18gKi8gZ2V0QnRvYSgpOwogICAgdmFyIFNvdXJjZU1hcCA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IocHJvcGVydGllcykgewogICAgICAgIHRoaXMudmVyc2lvbiA9IDM7CiAgICAgICAgdGhpcy5maWxlID0gcHJvcGVydGllcy5maWxlOwogICAgICAgIHRoaXMuc291cmNlcyA9IHByb3BlcnRpZXMuc291cmNlczsKICAgICAgICB0aGlzLnNvdXJjZXNDb250ZW50ID0gcHJvcGVydGllcy5zb3VyY2VzQ29udGVudDsKICAgICAgICB0aGlzLm5hbWVzID0gcHJvcGVydGllcy5uYW1lczsKICAgICAgICB0aGlzLm1hcHBpbmdzID0gc291cmNlbWFwQ29kZWMuZW5jb2RlKHByb3BlcnRpZXMubWFwcGluZ3MpOwogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0ICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy54X2dvb2dsZV9pZ25vcmVMaXN0ID0gcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0OwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHByb3BlcnRpZXMuZGVidWdJZCAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgIHRoaXMuZGVidWdJZCA9IHByb3BlcnRpZXMuZGVidWdJZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpOwogICAgICB9CiAgICAgIHRvVXJsKCkgewogICAgICAgIHJldHVybiAiZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIgKyBidG9hKHRoaXMudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBndWVzc0luZGVudChjb2RlKSB7CiAgICAgIGNvbnN0IGxpbmVzID0gY29kZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgdGFiYmVkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXlx0Ky8udGVzdChsaW5lKSk7CiAgICAgIGNvbnN0IHNwYWNlZCA9IGxpbmVzLmZpbHRlcigobGluZSkgPT4gL14gezIsfS8udGVzdChsaW5lKSk7CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID09PSAwICYmIHNwYWNlZC5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBpZiAodGFiYmVkLmxlbmd0aCA+PSBzcGFjZWQubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuICIJIjsKICAgICAgfQogICAgICBjb25zdCBtaW4gPSBzcGFjZWQucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4gewogICAgICAgIGNvbnN0IG51bVNwYWNlcyA9IC9eICsvLmV4ZWMoY3VycmVudClbMF0ubGVuZ3RoOwogICAgICAgIHJldHVybiBNYXRoLm1pbihudW1TcGFjZXMsIHByZXZpb3VzKTsKICAgICAgfSwgSW5maW5pdHkpOwogICAgICByZXR1cm4gbmV3IEFycmF5KG1pbiArIDEpLmpvaW4oIiAiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFJlbGF0aXZlUGF0aChmcm9tLCB0bykgewogICAgICBjb25zdCBmcm9tUGFydHMgPSBmcm9tLnNwbGl0KC9bL1xcXS8pOwogICAgICBjb25zdCB0b1BhcnRzID0gdG8uc3BsaXQoL1svXFxdLyk7CiAgICAgIGZyb21QYXJ0cy5wb3AoKTsKICAgICAgd2hpbGUgKGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXSkgewogICAgICAgIGZyb21QYXJ0cy5zaGlmdCgpOwogICAgICAgIHRvUGFydHMuc2hpZnQoKTsKICAgICAgfQogICAgICBpZiAoZnJvbVBhcnRzLmxlbmd0aCkgewogICAgICAgIGxldCBpID0gZnJvbVBhcnRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSBmcm9tUGFydHNbaV0gPSAiLi4iOwogICAgICB9CiAgICAgIHJldHVybiBmcm9tUGFydHMuY29uY2F0KHRvUGFydHMpLmpvaW4oIi8iKTsKICAgIH0KICAgIHZhciB0b1N0cmluZzIgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwogICAgZnVuY3Rpb24gaXNPYmplY3QyKHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZzIuY2FsbCh0aGluZykgPT09ICJbb2JqZWN0IE9iamVjdF0iOwogICAgfQogICAgZnVuY3Rpb24gZ2V0TG9jYXRvcihzb3VyY2UpIHsKICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lcyA9IHNvdXJjZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgbGluZU9mZnNldHMgPSBbXTsKICAgICAgZm9yIChsZXQgaSA9IDAsIHBvcyA9IDA7IGkgPCBvcmlnaW5hbExpbmVzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbGluZU9mZnNldHMucHVzaChwb3MpOwogICAgICAgIHBvcyArPSBvcmlnaW5hbExpbmVzW2ldLmxlbmd0aCArIDE7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uIGxvY2F0ZShpbmRleCkgewogICAgICAgIGxldCBpID0gMDsKICAgICAgICBsZXQgaiA9IGxpbmVPZmZzZXRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaSA8IGopIHsKICAgICAgICAgIGNvbnN0IG0gPSBpICsgaiA+PiAxOwogICAgICAgICAgaWYgKGluZGV4IDwgbGluZU9mZnNldHNbbV0pIHsKICAgICAgICAgICAgaiA9IG07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpID0gbSArIDE7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxpbmUgPSBpIC0gMTsKICAgICAgICBjb25zdCBjb2x1bW4gPSBpbmRleCAtIGxpbmVPZmZzZXRzW2xpbmVdOwogICAgICAgIHJldHVybiB7IGxpbmUsIGNvbHVtbiB9OwogICAgICB9OwogICAgfQogICAgdmFyIHdvcmRSZWdleCA9IC9cdy87CiAgICB2YXIgTWFwcGluZ3MgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGhpcmVzKSB7CiAgICAgICAgdGhpcy5oaXJlcyA9IGhpcmVzOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUxpbmUgPSAwOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgdGhpcy5yYXcgPSBbXTsKICAgICAgICB0aGlzLnJhd1NlZ21lbnRzID0gdGhpcy5yYXdbdGhpcy5nZW5lcmF0ZWRDb2RlTGluZV0gPSBbXTsKICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZEVkaXQoc291cmNlSW5kZXgsIGNvbnRlbnQsIGxvYywgbmFtZUluZGV4KSB7CiAgICAgICAgaWYgKGNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50TGVuZ3RoTWludXNPbmUgPSBjb250ZW50Lmxlbmd0aCAtIDE7CiAgICAgICAgICBsZXQgY29udGVudExpbmVFbmQgPSBjb250ZW50LmluZGV4T2YoIlxuIiwgMCk7CiAgICAgICAgICBsZXQgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IC0xOwogICAgICAgICAgd2hpbGUgKGNvbnRlbnRMaW5lRW5kID49IDAgJiYgY29udGVudExlbmd0aE1pbnVzT25lID4gY29udGVudExpbmVFbmQpIHsKICAgICAgICAgICAgY29uc3Qgc2VnbWVudDIgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgICBzZWdtZW50Mi5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQyKTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IGNvbnRlbnRMaW5lRW5kOwogICAgICAgICAgICBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCBjb250ZW50TGluZUVuZCArIDEpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgc2VnbWVudC5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICB0aGlzLmFkdmFuY2UoY29udGVudC5zbGljZShwcmV2aW91c0NvbnRlbnRMaW5lRW5kICsgMSkpOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nKSB7CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2godGhpcy5wZW5kaW5nKTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50KTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gbnVsbDsKICAgICAgfQogICAgICBhZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgb3JpZ2luYWwsIGxvYywgc291cmNlbWFwTG9jYXRpb25zKSB7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTsKICAgICAgICBsZXQgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENoYXJJbmRleCA8IGNodW5rLmVuZCkgewogICAgICAgICAgaWYgKG9yaWdpbmFsW29yaWdpbmFsQ2hhckluZGV4XSA9PT0gIlxuIikgewogICAgICAgICAgICBsb2MubGluZSArPSAxOwogICAgICAgICAgICBsb2MuY29sdW1uID0gMDsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgZmlyc3QgPSB0cnVlOwogICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGhpcy5oaXJlcyB8fCBmaXJzdCB8fCBzb3VyY2VtYXBMb2NhdGlvbnMuaGFzKG9yaWdpbmFsQ2hhckluZGV4KSkgewogICAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzID09PSAiYm91bmRhcnkiKSB7CiAgICAgICAgICAgICAgICBpZiAod29yZFJlZ2V4LnRlc3Qob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdKSkgewogICAgICAgICAgICAgICAgICBpZiAoIWNoYXJJbkhpcmVzQm91bmRhcnkpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvYy5jb2x1bW4gKz0gMTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IDE7CiAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvcmlnaW5hbENoYXJJbmRleCArPSAxOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkdmFuY2Uoc3RyMikgewogICAgICAgIGlmICghc3RyMikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyMi5zcGxpdCgiXG4iKTsKICAgICAgICBpZiAobGluZXMubGVuZ3RoID4gMSkgewogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lcy5sZW5ndGggLSAxOyBpKyspIHsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSsrOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiArPSBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXS5sZW5ndGg7CiAgICAgIH0KICAgIH07CiAgICB2YXIgbiA9ICJcbiI7CiAgICB2YXIgd2FybmVkID0gewogICAgICBpbnNlcnRMZWZ0OiBmYWxzZSwKICAgICAgaW5zZXJ0UmlnaHQ6IGZhbHNlLAogICAgICBzdG9yZU5hbWU6IGZhbHNlCiAgICB9OwogICAgdmFyIE1hZ2ljU3RyaW5nID0gY2xhc3MgX01hZ2ljU3RyaW5nIHsKICAgICAgY29uc3RydWN0b3Ioc3RyaW5nLCBvcHRpb25zID0ge30pIHsKICAgICAgICBjb25zdCBjaHVuayA9IG5ldyBDaHVuaygwLCBzdHJpbmcubGVuZ3RoLCBzdHJpbmcpOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMsIHsKICAgICAgICAgIG9yaWdpbmFsOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogc3RyaW5nIH0sCiAgICAgICAgICBvdXRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBpbnRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBmaXJzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBsYXN0U2VhcmNoZWRDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBieVN0YXJ0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGJ5RW5kOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGZpbGVuYW1lOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5maWxlbmFtZSB9LAogICAgICAgICAgaW5kZW50RXhjbHVzaW9uUmFuZ2VzOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pbmRlbnRFeGNsdXNpb25SYW5nZXMgfSwKICAgICAgICAgIHNvdXJjZW1hcExvY2F0aW9uczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG5ldyBCaXRTZXQoKSB9LAogICAgICAgICAgc3RvcmVkTmFtZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgaW5kZW50U3RyOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogdm9pZCAwIH0sCiAgICAgICAgICBpZ25vcmVMaXN0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pZ25vcmVMaXN0IH0sCiAgICAgICAgICBvZmZzZXQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLm9mZnNldCB8fCAwIH0KICAgICAgICB9KTsKICAgICAgICB0aGlzLmJ5U3RhcnRbMF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5RW5kW3N0cmluZy5sZW5ndGhdID0gY2h1bms7CiAgICAgIH0KICAgICAgYWRkU291cmNlbWFwTG9jYXRpb24oY2hhcikgewogICAgICAgIHRoaXMuc291cmNlbWFwTG9jYXRpb25zLmFkZChjaGFyKTsKICAgICAgfQogICAgICBhcHBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kTGVmdChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5pbnRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2xvbmVkID0gbmV3IF9NYWdpY1N0cmluZyh0aGlzLm9yaWdpbmFsLCB7IGZpbGVuYW1lOiB0aGlzLmZpbGVuYW1lLCBvZmZzZXQ6IHRoaXMub2Zmc2V0IH0pOwogICAgICAgIGxldCBvcmlnaW5hbENodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBjbG9uZWRDaHVuayA9IGNsb25lZC5maXJzdENodW5rID0gY2xvbmVkLmxhc3RTZWFyY2hlZENodW5rID0gb3JpZ2luYWxDaHVuay5jbG9uZSgpOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENodW5rKSB7CiAgICAgICAgICBjbG9uZWQuYnlTdGFydFtjbG9uZWRDaHVuay5zdGFydF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNsb25lZC5ieUVuZFtjbG9uZWRDaHVuay5lbmRdID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICBjb25zdCBuZXh0T3JpZ2luYWxDaHVuayA9IG9yaWdpbmFsQ2h1bmsubmV4dDsKICAgICAgICAgIGNvbnN0IG5leHRDbG9uZWRDaHVuayA9IG5leHRPcmlnaW5hbENodW5rICYmIG5leHRPcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgICBpZiAobmV4dENsb25lZENodW5rKSB7CiAgICAgICAgICAgIGNsb25lZENodW5rLm5leHQgPSBuZXh0Q2xvbmVkQ2h1bms7CiAgICAgICAgICAgIG5leHRDbG9uZWRDaHVuay5wcmV2aW91cyA9IGNsb25lZENodW5rOwogICAgICAgICAgICBjbG9uZWRDaHVuayA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2h1bmsgPSBuZXh0T3JpZ2luYWxDaHVuazsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLmxhc3RDaHVuayA9IGNsb25lZENodW5rOwogICAgICAgIGlmICh0aGlzLmluZGVudEV4Y2x1c2lvblJhbmdlcykgewogICAgICAgICAgY2xvbmVkLmluZGVudEV4Y2x1c2lvblJhbmdlcyA9IHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzLnNsaWNlKCk7CiAgICAgICAgfQogICAgICAgIGNsb25lZC5zb3VyY2VtYXBMb2NhdGlvbnMgPSBuZXcgQml0U2V0KHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICBjbG9uZWQuaW50cm8gPSB0aGlzLmludHJvOwogICAgICAgIGNsb25lZC5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgcmV0dXJuIGNsb25lZDsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gMDsKICAgICAgICBjb25zdCBuYW1lcyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVkTmFtZXMpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gbmV3IE1hcHBpbmdzKG9wdGlvbnMuaGlyZXMpOwogICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgIGNvbnN0IGxvYyA9IGxvY2F0ZShjaHVuay5zdGFydCk7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLmludHJvKTsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgbWFwcGluZ3MuYWRkRWRpdCgKICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICBjaHVuay5jb250ZW50LAogICAgICAgICAgICAgIGxvYywKICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgdGhpcy5vcmlnaW5hbCwgbG9jLCB0aGlzLnNvdXJjZW1hcExvY2F0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgZmlsZTogb3B0aW9ucy5maWxlID8gb3B0aW9ucy5maWxlLnNwbGl0KC9bL1xcXS8pLnBvcCgpIDogdm9pZCAwLAogICAgICAgICAgc291cmNlczogWwogICAgICAgICAgICBvcHRpb25zLnNvdXJjZSA/IGdldFJlbGF0aXZlUGF0aChvcHRpb25zLmZpbGUgfHwgIiIsIG9wdGlvbnMuc291cmNlKSA6IG9wdGlvbnMuZmlsZSB8fCAiIgogICAgICAgICAgXSwKICAgICAgICAgIHNvdXJjZXNDb250ZW50OiBvcHRpb25zLmluY2x1ZGVDb250ZW50ID8gW3RoaXMub3JpZ2luYWxdIDogdm9pZCAwLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdDogdGhpcy5pZ25vcmVMaXN0ID8gW3NvdXJjZUluZGV4XSA6IHZvaWQgMAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBfZW5zdXJlaW5kZW50U3RyKCkgewogICAgICAgIGlmICh0aGlzLmluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLmluZGVudFN0ciA9IGd1ZXNzSW5kZW50KHRoaXMub3JpZ2luYWwpOwogICAgICAgIH0KICAgICAgfQogICAgICBfZ2V0UmF3SW5kZW50U3RyaW5nKCkgewogICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgIHJldHVybiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyID09PSBudWxsID8gIgkiIDogdGhpcy5pbmRlbnRTdHI7CiAgICAgIH0KICAgICAgaW5kZW50KGluZGVudFN0ciwgb3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhdHRlcm4gPSAvXlteXHJcbl0vZ207CiAgICAgICAgaWYgKGlzT2JqZWN0MihpbmRlbnRTdHIpKSB7CiAgICAgICAgICBvcHRpb25zID0gaW5kZW50U3RyOwogICAgICAgICAgaW5kZW50U3RyID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgICAgaW5kZW50U3RyID0gdGhpcy5pbmRlbnRTdHIgfHwgIgkiOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3QgaXNFeGNsdWRlZCA9IHt9OwogICAgICAgIGlmIChvcHRpb25zLmV4Y2x1ZGUpIHsKICAgICAgICAgIGNvbnN0IGV4Y2x1c2lvbnMgPSB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlWzBdID09PSAibnVtYmVyIiA/IFtvcHRpb25zLmV4Y2x1ZGVdIDogb3B0aW9ucy5leGNsdWRlOwogICAgICAgICAgZXhjbHVzaW9ucy5mb3JFYWNoKChleGNsdXNpb24pID0+IHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IGV4Y2x1c2lvblswXTsgaSA8IGV4Y2x1c2lvblsxXTsgaSArPSAxKSB7CiAgICAgICAgICAgICAgaXNFeGNsdWRlZFtpXSA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBsZXQgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IG9wdGlvbnMuaW5kZW50U3RhcnQgIT09IGZhbHNlOwogICAgICAgIGNvbnN0IHJlcGxhY2VyID0gKG1hdGNoKSA9PiB7CiAgICAgICAgICBpZiAoc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgcmV0dXJuIGAke2luZGVudFN0cn0ke21hdGNofWA7CiAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gdHJ1ZTsKICAgICAgICAgIHJldHVybiBtYXRjaDsKICAgICAgICB9OwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIGxldCBjaGFySW5kZXggPSAwOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgaWYgKCFpc0V4Y2x1ZGVkW2NoYXJJbmRleF0pIHsKICAgICAgICAgICAgICBjaHVuay5jb250ZW50ID0gY2h1bmsuY29udGVudC5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICAgICAgd2hpbGUgKGNoYXJJbmRleCA8IGVuZCkgewogICAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGFyID0gdGhpcy5vcmlnaW5hbFtjaGFySW5kZXhdOwogICAgICAgICAgICAgICAgaWYgKGNoYXIgPT09ICJcbiIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICJcciIgJiYgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgewogICAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIGlmIChjaGFySW5kZXggPT09IGNodW5rLnN0YXJ0KSB7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgY2hhckluZGV4KTsKICAgICAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY2hhckluZGV4ICs9IDE7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGNoYXJJbmRleCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaW5zZXJ0KCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgcHJlcGVuZFJpZ2h0KC4uLikgb3IgYXBwZW5kTGVmdCguLi4pIgogICAgICAgICk7CiAgICAgIH0KICAgICAgaW5zZXJ0TGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydExlZnQpIHsKICAgICAgICAgIGNvbnNvbGUud2FybigKICAgICAgICAgICAgIm1hZ2ljU3RyaW5nLmluc2VydExlZnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcuYXBwZW5kTGVmdCguLi4pIGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgICAgd2FybmVkLmluc2VydExlZnQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KTsKICAgICAgfQogICAgICBpbnNlcnRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydFJpZ2h0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRSaWdodCguLi4pIGlzIGRlcHJlY2F0ZWQuIFVzZSBtYWdpY1N0cmluZy5wcmVwZW5kUmlnaHQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRSaWdodCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLnByZXBlbmRSaWdodChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgbW92ZShzdGFydCwgZW5kLCBpbmRleCkgewogICAgICAgIHN0YXJ0ID0gc3RhcnQgKyB0aGlzLm9mZnNldDsKICAgICAgICBlbmQgPSBlbmQgKyB0aGlzLm9mZnNldDsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKGluZGV4ID49IHN0YXJ0ICYmIGluZGV4IDw9IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbW92ZSBhIHNlbGVjdGlvbiBpbnNpZGUgaXRzZWxmIik7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGNvbnN0IG9sZExlZnQgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICBjb25zdCBvbGRSaWdodCA9IGxhc3QubmV4dDsKICAgICAgICBjb25zdCBuZXdSaWdodCA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKCFuZXdSaWdodCAmJiBsYXN0ID09PSB0aGlzLmxhc3RDaHVuaykgcmV0dXJuIHRoaXM7CiAgICAgICAgY29uc3QgbmV3TGVmdCA9IG5ld1JpZ2h0ID8gbmV3UmlnaHQucHJldmlvdXMgOiB0aGlzLmxhc3RDaHVuazsKICAgICAgICBpZiAob2xkTGVmdCkgb2xkTGVmdC5uZXh0ID0gb2xkUmlnaHQ7CiAgICAgICAgaWYgKG9sZFJpZ2h0KSBvbGRSaWdodC5wcmV2aW91cyA9IG9sZExlZnQ7CiAgICAgICAgaWYgKG5ld0xlZnQpIG5ld0xlZnQubmV4dCA9IGZpcnN0OwogICAgICAgIGlmIChuZXdSaWdodCkgbmV3UmlnaHQucHJldmlvdXMgPSBsYXN0OwogICAgICAgIGlmICghZmlyc3QucHJldmlvdXMpIHRoaXMuZmlyc3RDaHVuayA9IGxhc3QubmV4dDsKICAgICAgICBpZiAoIWxhc3QubmV4dCkgewogICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICAgIHRoaXMubGFzdENodW5rLm5leHQgPSBudWxsOwogICAgICAgIH0KICAgICAgICBmaXJzdC5wcmV2aW91cyA9IG5ld0xlZnQ7CiAgICAgICAgbGFzdC5uZXh0ID0gbmV3UmlnaHQgfHwgbnVsbDsKICAgICAgICBpZiAoIW5ld0xlZnQpIHRoaXMuZmlyc3RDaHVuayA9IGZpcnN0OwogICAgICAgIGlmICghbmV3UmlnaHQpIHRoaXMubGFzdENodW5rID0gbGFzdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvdmVyd3JpdGUoc3RhcnQsIGVuZCwgY29udGVudCwgb3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCB7IC4uLm9wdGlvbnMsIG92ZXJ3cml0ZTogIW9wdGlvbnMuY29udGVudE9ubHkgfSk7CiAgICAgIH0KICAgICAgdXBkYXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigicmVwbGFjZW1lbnQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiQ2Fubm90IG92ZXJ3cml0ZSBhIHplcm8tbGVuZ3RoIHJhbmdlIFx1MjAxMyB1c2UgYXBwZW5kTGVmdCBvciBwcmVwZW5kUmlnaHQgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgaWYgKG9wdGlvbnMgPT09IHRydWUpIHsKICAgICAgICAgIGlmICghd2FybmVkLnN0b3JlTmFtZSkgewogICAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICAgIlRoZSBmaW5hbCBhcmd1bWVudCB0byBtYWdpY1N0cmluZy5vdmVyd3JpdGUoLi4uKSBzaG91bGQgYmUgYW4gb3B0aW9ucyBvYmplY3QuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcmljaC1oYXJyaXMvbWFnaWMtc3RyaW5nIgogICAgICAgICAgICApOwogICAgICAgICAgICB3YXJuZWQuc3RvcmVOYW1lID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wdGlvbnMgPSB7IHN0b3JlTmFtZTogdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBzdG9yZU5hbWUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLnN0b3JlTmFtZSA6IGZhbHNlOwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZSA9IG9wdGlvbnMgIT09IHZvaWQgMCA/IG9wdGlvbnMub3ZlcndyaXRlIDogZmFsc2U7CiAgICAgICAgaWYgKHN0b3JlTmFtZSkgewogICAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMuc3RvcmVkTmFtZXMsIG9yaWdpbmFsLCB7CiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgICAgICB2YWx1ZTogdHJ1ZSwKICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGlmIChmaXJzdCkgewogICAgICAgICAgbGV0IGNodW5rID0gZmlyc3Q7CiAgICAgICAgICB3aGlsZSAoY2h1bmsgIT09IGxhc3QpIHsKICAgICAgICAgICAgaWYgKGNodW5rLm5leHQgIT09IHRoaXMuYnlTdGFydFtjaHVuay5lbmRdKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgb3ZlcndyaXRlIGFjcm9zcyBhIHNwbGl0IHBvaW50Iik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICBjaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmaXJzdC5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSwgIW92ZXJ3cml0ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gbmV3IENodW5rKHN0YXJ0LCBlbmQsICIiKS5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSk7CiAgICAgICAgICBsYXN0Lm5leHQgPSBuZXdDaHVuazsKICAgICAgICAgIG5ld0NodW5rLnByZXZpb3VzID0gbGFzdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5pbnRybyA9IGNvbnRlbnQgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZExlZnQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5wcmVwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcmVtb3ZlKHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5pbnRybyA9ICIiOwogICAgICAgICAgY2h1bmsub3V0cm8gPSAiIjsKICAgICAgICAgIGNodW5rLmVkaXQoIiIpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlc2V0KHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5yZXNldCgpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGxhc3RDaGFyKCkgewogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMub3V0cm9bdGhpcy5vdXRyby5sZW5ndGggLSAxXTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsub3V0cm9bY2h1bmsub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHJldHVybiBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsuaW50cm9bY2h1bmsuaW50cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdGhpcy5pbnRyb1t0aGlzLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIHJldHVybiAiIjsKICAgICAgfQogICAgICBsYXN0TGluZSgpIHsKICAgICAgICBsZXQgbGluZUluZGV4ID0gdGhpcy5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpOwogICAgICAgIGxldCBsaW5lU3RyID0gdGhpcy5vdXRybzsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5vdXRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgICAgICBsaW5lU3RyID0gY2h1bmsub3V0cm8gKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5jb250ZW50Lmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmNvbnRlbnQuc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmNvbnRlbnQgKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuaW50cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmludHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLnByZXZpb3VzKTsKICAgICAgICBsaW5lSW5kZXggPSB0aGlzLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gdGhpcy5pbnRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgbGluZVN0cjsKICAgICAgfQogICAgICBzbGljZShzdGFydCA9IDAsIGVuZCA9IHRoaXMub3JpZ2luYWwubGVuZ3RoIC0gdGhpcy5vZmZzZXQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rICYmIChjaHVuay5zdGFydCA+IHN0YXJ0IHx8IGNodW5rLmVuZCA8PSBzdGFydCkpIHsKICAgICAgICAgIGlmIChjaHVuay5zdGFydCA8IGVuZCAmJiBjaHVuay5lbmQgPj0gZW5kKSB7CiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIGlmIChjaHVuayAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuc3RhcnQgIT09IHN0YXJ0KQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgdXNlIHJlcGxhY2VkIGNoYXJhY3RlciAke3N0YXJ0fSBhcyBzbGljZSBzdGFydCBhbmNob3IuYCk7CiAgICAgICAgY29uc3Qgc3RhcnRDaHVuayA9IGNodW5rOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgaWYgKGNodW5rLmludHJvICYmIChzdGFydENodW5rICE9PSBjaHVuayB8fCBjaHVuay5zdGFydCA9PT0gc3RhcnQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5pbnRybzsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGNvbnRhaW5zRW5kID0gY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZDsKICAgICAgICAgIGlmIChjb250YWluc0VuZCAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuZW5kICE9PSBlbmQpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtlbmR9IGFzIHNsaWNlIGVuZCBhbmNob3IuYCk7CiAgICAgICAgICBjb25zdCBzbGljZVN0YXJ0ID0gc3RhcnRDaHVuayA9PT0gY2h1bmsgPyBzdGFydCAtIGNodW5rLnN0YXJ0IDogMDsKICAgICAgICAgIGNvbnN0IHNsaWNlRW5kID0gY29udGFpbnNFbmQgPyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGVuZCAtIGNodW5rLmVuZCA6IGNodW5rLmNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgcmVzdWx0ICs9IGNodW5rLmNvbnRlbnQuc2xpY2Uoc2xpY2VTdGFydCwgc2xpY2VFbmQpOwogICAgICAgICAgaWYgKGNodW5rLm91dHJvICYmICghY29udGFpbnNFbmQgfHwgY2h1bmsuZW5kID09PSBlbmQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5vdXRybzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjb250YWluc0VuZCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICAvLyBUT0RPIGRlcHJlY2F0ZSB0aGlzPyBub3QgcmVhbGx5IHZlcnkgdXNlZnVsCiAgICAgIHNuaXAoc3RhcnQsIGVuZCkgewogICAgICAgIGNvbnN0IGNsb25lID0gdGhpcy5jbG9uZSgpOwogICAgICAgIGNsb25lLnJlbW92ZSgwLCBzdGFydCk7CiAgICAgICAgY2xvbmUucmVtb3ZlKGVuZCwgY2xvbmUub3JpZ2luYWwubGVuZ3RoKTsKICAgICAgICByZXR1cm4gY2xvbmU7CiAgICAgIH0KICAgICAgX3NwbGl0KGluZGV4KSB7CiAgICAgICAgaWYgKHRoaXMuYnlTdGFydFtpbmRleF0gfHwgdGhpcy5ieUVuZFtpbmRleF0pIHJldHVybjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RTZWFyY2hlZENodW5rOwogICAgICAgIGNvbnN0IHNlYXJjaEZvcndhcmQgPSBpbmRleCA+IGNodW5rLmVuZDsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5jb250YWlucyhpbmRleCkpIHJldHVybiB0aGlzLl9zcGxpdENodW5rKGNodW5rLCBpbmRleCk7CiAgICAgICAgICBjaHVuayA9IHNlYXJjaEZvcndhcmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IHRoaXMuYnlFbmRbY2h1bmsuc3RhcnRdOwogICAgICAgIH0KICAgICAgfQogICAgICBfc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpIHsKICAgICAgICBpZiAoY2h1bmsuZWRpdGVkICYmIGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBsb2MgPSBnZXRMb2NhdG9yKHRoaXMub3JpZ2luYWwpKGluZGV4KTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbm5vdCBzcGxpdCBhIGNodW5rIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBlZGl0ZWQgKCR7bG9jLmxpbmV9OiR7bG9jLmNvbHVtbn0gXHUyMDEzICIke2NodW5rLm9yaWdpbmFsfSIpYAogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3Q2h1bmsgPSBjaHVuay5zcGxpdChpbmRleCk7CiAgICAgICAgdGhpcy5ieUVuZFtpbmRleF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5U3RhcnRbaW5kZXhdID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5ieUVuZFtuZXdDaHVuay5lbmRdID0gbmV3Q2h1bms7CiAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBuZXdDaHVuazsKICAgICAgICB0aGlzLmxhc3RTZWFyY2hlZENodW5rID0gY2h1bms7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgbGV0IHN0cjIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0cjIgKz0gY2h1bmsudG9TdHJpbmcoKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHN0cjIgKyB0aGlzLm91dHJvOwogICAgICB9CiAgICAgIGlzRW1wdHkoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggJiYgY2h1bmsuaW50cm8udHJpbSgpIHx8IGNodW5rLmNvbnRlbnQubGVuZ3RoICYmIGNodW5rLmNvbnRlbnQudHJpbSgpIHx8IGNodW5rLm91dHJvLmxlbmd0aCAmJiBjaHVuay5vdXRyby50cmltKCkpCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGxlbmd0aCA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgbGVuZ3RoICs9IGNodW5rLmludHJvLmxlbmd0aCArIGNodW5rLmNvbnRlbnQubGVuZ3RoICsgY2h1bmsub3V0cm8ubGVuZ3RoOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsubmV4dCk7CiAgICAgICAgcmV0dXJuIGxlbmd0aDsKICAgICAgfQogICAgICB0cmltTGluZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbSgiW1xcclxcbl0iKTsKICAgICAgfQogICAgICB0cmltKGNoYXJUeXBlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbVN0YXJ0KGNoYXJUeXBlKS50cmltRW5kKGNoYXJUeXBlKTsKICAgICAgfQogICAgICB0cmltRW5kQWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1FbmQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RDaHVuayA9PT0gY2h1bmspIHsKICAgICAgICAgICAgICB0aGlzLmxhc3RDaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfSB3aGlsZSAoY2h1bmspOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltRW5kQWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1TdGFydChyeCk7CiAgICAgICAgICBpZiAoY2h1bmsuZW5kICE9PSBlbmQpIHsKICAgICAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLmVuZF0gPSBjaHVuazsKICAgICAgICAgICAgdGhpcy5ieVN0YXJ0W2NodW5rLm5leHQuc3RhcnRdID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5uZXh0LmVuZF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFib3J0ZWQpIHJldHVybiB0cnVlOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltU3RhcnRBYm9ydGVkKGNoYXJUeXBlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBoYXNDaGFuZ2VkKCkgewogICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsICE9PSB0aGlzLnRvU3RyaW5nKCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VSZWdleHAoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgZnVuY3Rpb24gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHN0cjIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0cjIsIG1hdGNoLmdyb3Vwcyk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIG1hdGNoQWxsKHJlLCBzdHIyKSB7CiAgICAgICAgICBsZXQgbWF0Y2g7CiAgICAgICAgICBjb25zdCBtYXRjaGVzID0gW107CiAgICAgICAgICB3aGlsZSAobWF0Y2ggPSByZS5leGVjKHN0cjIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0Mihzb3VyY2UpIHx8ICFzb3VyY2UuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiYnVuZGxlLmFkZFNvdXJjZSgpIHRha2VzIGFuIG9iamVjdCB3aXRoIGEgYGNvbnRlbnRgIHByb3BlcnR5LCB3aGljaCBzaG91bGQgYmUgYW4gaW5zdGFuY2Ugb2YgTWFnaWNTdHJpbmcsIGFuZCBhbiBvcHRpb25hbCBgZmlsZW5hbWVgIgogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgWyJmaWxlbmFtZSIsICJpZ25vcmVMaXN0IiwgImluZGVudEV4Y2x1c2lvblJhbmdlcyIsICJzZXBhcmF0b3IiXS5mb3JFYWNoKChvcHRpb24pID0+IHsKICAgICAgICAgIGlmICghaGFzT3duUHJvcC5jYWxsKHNvdXJjZSwgb3B0aW9uKSkgc291cmNlW29wdGlvbl0gPSBzb3VyY2UuY29udGVudFtvcHRpb25dOwogICAgICAgIH0pOwogICAgICAgIGlmIChzb3VyY2Uuc2VwYXJhdG9yID09PSB2b2lkIDApIHsKICAgICAgICAgIHNvdXJjZS5zZXBhcmF0b3IgPSB0aGlzLnNlcGFyYXRvcjsKICAgICAgICB9CiAgICAgICAgaWYgKHNvdXJjZS5maWxlbmFtZSkgewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwodGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUsIHNvdXJjZS5maWxlbmFtZSkpIHsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA9IHRoaXMudW5pcXVlU291cmNlcy5sZW5ndGg7CiAgICAgICAgICAgIHRoaXMudW5pcXVlU291cmNlcy5wdXNoKHsgZmlsZW5hbWU6IHNvdXJjZS5maWxlbmFtZSwgY29udGVudDogc291cmNlLmNvbnRlbnQub3JpZ2luYWwgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCB1bmlxdWVTb3VyY2UgPSB0aGlzLnVuaXF1ZVNvdXJjZXNbdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXV07CiAgICAgICAgICAgIGlmIChzb3VyY2UuY29udGVudC5vcmlnaW5hbCAhPT0gdW5pcXVlU291cmNlLmNvbnRlbnQpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYElsbGVnYWwgc291cmNlOiBzYW1lIGZpbGVuYW1lICgke3NvdXJjZS5maWxlbmFtZX0pLCBkaWZmZXJlbnQgY29udGVudHNgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLnNvdXJjZXMucHVzaChzb3VyY2UpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZChzdHIyLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgY29udGVudDogbmV3IE1hZ2ljU3RyaW5nKHN0cjIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cjIpIHsKICAgICAgICB0aGlzLmludHJvID0gc3RyMiArIHRoaXMuaW50cm87CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuc291cmNlcy5tYXAoKHNvdXJjZSwgaSkgPT4gewogICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gc291cmNlLnNlcGFyYXRvciAhPT0gdm9pZCAwID8gc291cmNlLnNlcGFyYXRvciA6IHRoaXMuc2VwYXJhdG9yOwogICAgICAgICAgY29uc3Qgc3RyMiA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgICB9KS5qb2luKCIiKTsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGJvZHk7CiAgICAgIH0KICAgICAgaXNFbXB0eSgpIHsKICAgICAgICBpZiAodGhpcy5pbnRyby5sZW5ndGggJiYgdGhpcy5pbnRyby50cmltKCkpIHJldHVybiBmYWxzZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VzLnNvbWUoKHNvdXJjZSkgPT4gIXNvdXJjZS5jb250ZW50LmlzRW1wdHkoKSkpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlcy5yZWR1Y2UoCiAgICAgICAgICAobGVuZ3RoLCBzb3VyY2UpID0+IGxlbmd0aCArIHNvdXJjZS5jb250ZW50Lmxlbmd0aCgpLAogICAgICAgICAgdGhpcy5pbnRyby5sZW5ndGgKICAgICAgICApOwogICAgICB9CiAgICAgIHRyaW1MaW5lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltKCJbXFxyXFxuXSIpOwogICAgICB9CiAgICAgIHRyaW0oY2hhclR5cGUpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltU3RhcnQoY2hhclR5cGUpLnRyaW1FbmQoY2hhclR5cGUpOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKCF0aGlzLmludHJvKSB7CiAgICAgICAgICBsZXQgc291cmNlOwogICAgICAgICAgbGV0IGkgPSAwOwogICAgICAgICAgZG8gewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZXNbaSsrXTsKICAgICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfSB3aGlsZSAoIXNvdXJjZS5jb250ZW50LnRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgbGV0IHNvdXJjZTsKICAgICAgICBsZXQgaSA9IHRoaXMuc291cmNlcy5sZW5ndGggLSAxOwogICAgICAgIGRvIHsKICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpLS1dOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgfTsKICAgIE1hZ2ljU3RyaW5nLkJ1bmRsZSA9IEJ1bmRsZTsKICAgIE1hZ2ljU3RyaW5nLlNvdXJjZU1hcCA9IFNvdXJjZU1hcDsKICAgIE1hZ2ljU3RyaW5nLmRlZmF1bHQgPSBNYWdpY1N0cmluZzsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IE1hZ2ljU3RyaW5nOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcwp2YXIgcmVxdWlyZV9yZWNvcmRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBtYWdpY19zdHJpbmdfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX21hZ2ljX3N0cmluZ19janMoKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBJbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5kZXgsIG1pbiwgbWF4ID0gSW5maW5pdHkpIHsKICAgICAgICBzdXBlcihgSW5kZXggJHtpbmRleH0gb3V0c2lkZSBvZiByYW5nZSBbJHttaW59LCAke21heH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uID0gSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uOwogICAgdmFyIFVwZGF0ZVJlY29yZGVyQmFzZSA9IGNsYXNzIF9VcGRhdGVSZWNvcmRlckJhc2UgewogICAgICBkYXRhOwogICAgICBib207CiAgICAgIF9wYXRoOwogICAgICBjb250ZW50OwogICAgICBjb25zdHJ1Y3RvcihkYXRhLCBwYXRoLCBlbmNvZGluZyA9ICJ1dGYtOCIsIGJvbSA9IGZhbHNlKSB7CiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICB0aGlzLmJvbSA9IGJvbTsKICAgICAgICBsZXQgdGV4dDsKICAgICAgICB0cnkgewogICAgICAgICAgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgeyBmYXRhbDogdHJ1ZSwgaWdub3JlQk9NOiBmYWxzZSB9KS5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyAke2VuY29kaW5nfSB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fcGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5jb250ZW50ID0gbmV3IG1hZ2ljX3N0cmluZ18xLmRlZmF1bHQodGV4dCk7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZUZyb21GaWxlRW50cnkoZW50cnkpIHsKICAgICAgICBjb25zdCBjMCA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDAgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMCk7CiAgICAgICAgY29uc3QgYzEgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAxICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDEpOwogICAgICAgIGNvbnN0IGMyID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMiAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgyKTsKICAgICAgICBpZiAoYzAgPT0gMjM5ICYmIGMxID09IDE4NyAmJiBjMiA9PSAxOTEpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTgiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTUgJiYgYzEgPT0gMjU0KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmxlIiwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIGlmIChjMCA9PT0gMjU0ICYmIGMxID09IDI1NSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtMTZiZSIsIHRydWUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgX2Fzc2VydEluZGV4KGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+IHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpIHsKICAgICAgICAgIHRocm93IG5ldyBJbmRleE91dE9mQm91bmRFeGNlcHRpb24oaW5kZXgsIDAsIHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBUaGVzZSBqdXN0IHJlY29yZCBjaGFuZ2VzLgogICAgICBpbnNlcnRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRSaWdodChpbmRleCwgY29udGVudC50b1N0cmluZygpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZW1vdmUoaW5kZXgsIGxlbmd0aCkgewogICAgICAgIHRoaXMuX2Fzc2VydEluZGV4KGluZGV4KTsKICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlKGluZGV4LCBpbmRleCArIGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwbHkoY29udGVudCkgewogICAgICAgIGlmICghY29udGVudC5lcXVhbHModGhpcy5kYXRhKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHRoaXMucGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IEJ1ZmZlci5mcm9tKCh0aGlzLmJvbSA/ICJcdUZFRkYiIDogIiIpICsgdGhpcy5jb250ZW50LnRvU3RyaW5nKCksICJ1dGYtOCIpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBVcGRhdGVSZWNvcmRlckJhc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NvcGVkVHJlZSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBTY29wZWRGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9iYXNlOwogICAgICBzY29wZTsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHRoaXMuX2Jhc2UucGF0aCkpOwogICAgICB9CiAgICAgIGdldCBjb250ZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNvbnRlbnQ7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkRGlyRW50cnkgPSBjbGFzcyBfU2NvcGVkRGlyRW50cnkgewogICAgICBfYmFzZTsKICAgICAgc2NvcGU7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7CiAgICAgIH0KICAgICAgZ2V0IHBhcmVudCgpIHsKICAgICAgICBpZiAoIXRoaXMuX2Jhc2UucGFyZW50IHx8IHRoaXMuX2Jhc2UucGF0aCA9PSB0aGlzLnNjb3BlKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBfU2NvcGVkRGlyRW50cnkodGhpcy5fYmFzZS5wYXJlbnQsIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIGdldCBwYXRoKCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgdGhpcy5fYmFzZS5wYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmRpcnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZGlyczsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZmlsZXM7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZGlyKG5hbWUpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgX1Njb3BlZERpckVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZmlsZShuYW1lKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcigoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgcGF0aCkpLCBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkVHJlZSA9IGNsYXNzIF9TY29wZWRUcmVlIHsKICAgICAgX2Jhc2U7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHNjb3BlKTsKICAgICAgICB0aGlzLl9yb290ID0gbmV3IFNjb3BlZERpckVudHJ5KHRoaXMuX2Jhc2UuZ2V0RGlyKG5vcm1hbGl6ZWRTY29wZSksIG5vcm1hbGl6ZWRTY29wZSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3Q7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX1Njb3BlZFRyZWUodGhpcy5fYmFzZS5icmFuY2goKSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgbWVyZ2Uob3RoZXIsIHN0cmF0ZWd5KSB7CiAgICAgICAgY29uc3Qgc2VsZjIgPSB0aGlzOwogICAgICAgIGNvbnN0IGRlbGVnYXRlID0gbmV3IGNsYXNzIGV4dGVuZHMgZGVsZWdhdGVfMS5EZWxlZ2F0ZVRyZWUgewogICAgICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgICAgIHJldHVybiBvdGhlci5hY3Rpb25zLm1hcCgoYWN0aW9uKSA9PiBzZWxmMi5fZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfShvdGhlcik7CiAgICAgICAgdGhpcy5fYmFzZS5tZXJnZShkZWxlZ2F0ZSwgc3RyYXRlZ3kpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZFRleHQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlYWRKc29uKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkSnNvbih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5leGlzdHModGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldERpcih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWREaXJFbnRyeShlbnRyeSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uub3ZlcndyaXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuYmVnaW5VcGRhdGUodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jb21taXRVcGRhdGUocmVjb3JkKTsKICAgICAgfQogICAgICAvLyBTdHJ1Y3R1cmFsIG1ldGhvZHMuCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY3JlYXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmRlbGV0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVuYW1lKHRoaXMuX2Z1bGxQYXRoKGZyb20pLCB0aGlzLl9mdWxsUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5hcHBseSh0aGlzLl9mdWxsUGF0aEFjdGlvbihhY3Rpb24pLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgY29uc3Qgc2NvcGVkQWN0aW9ucyA9IFtdOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRoaXMuX2Jhc2UuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFhY3Rpb24ucGF0aC5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFjdGlvbi5raW5kICE9PSAiciIpIHsKICAgICAgICAgICAgc2NvcGVkQWN0aW9ucy5wdXNoKHsKICAgICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi5wYXRoKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi50by5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIHNjb3BlZEFjdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICAgIHBhdGg6ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24ucGF0aCkpLAogICAgICAgICAgICAgIHRvOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnRvKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBzY29wZWRBY3Rpb25zOwogICAgICB9CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfZnVsbFBhdGgocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKHRoaXMuX3Jvb3Quc2NvcGUsICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbikgewogICAgICAgIGxldCBmdWxsUGF0aEFjdGlvbjsKICAgICAgICBpZiAoYWN0aW9uLmtpbmQgPT09ICJyIikgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpLAogICAgICAgICAgICB0bzogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnRvKQogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVsbFBhdGhBY3Rpb247CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZWRUcmVlID0gU2NvcGVkVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaG9zdC10cmVlLmpzCnZhciByZXF1aXJlX2hvc3RfdHJlZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBleHBvcnRzMi5Ib3N0VHJlZSA9IGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBkZWxlZ2F0ZV8xID0gcmVxdWlyZV9kZWxlZ2F0ZSgpOwogICAgdmFyIGVudHJ5XzEgPSByZXF1aXJlX2VudHJ5KCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciByZWNvcmRlcl8xID0gcmVxdWlyZV9yZWNvcmRlcigpOwogICAgdmFyIHNjb3BlZF8xID0gcmVxdWlyZV9zY29wZWQyKCk7CiAgICB2YXIgX3VuaXF1ZUlkID0gMDsKICAgIHZhciBIb3N0RGlyRW50cnkgPSBjbGFzcyB7CiAgICAgIHBhcmVudDsKICAgICAgcGF0aDsKICAgICAgX2hvc3Q7CiAgICAgIF90cmVlOwogICAgICBjb25zdHJ1Y3RvcihwYXJlbnQsIHBhdGgsIF9ob3N0LCBfdHJlZSkgewogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIHRoaXMucGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX3RyZWUgPSBfdHJlZTsKICAgICAgfQogICAgICBnZXQgc3ViZGlycygpIHsKICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5saXN0KHRoaXMucGF0aCkuZmlsdGVyKChmcmFnbWVudCkgPT4gdGhpcy5faG9zdC5pc0RpcmVjdG9yeSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmZpbGVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRmlsZSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXREaXIoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXQoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpLmZvckVhY2goKGZpbGUpID0+IHZpc2l0b3IoZmlsZS5wYXRoLCBmaWxlKSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgIT09IGludGVyZmFjZV8xLkZpbGVWaXNpdG9yQ2FuY2VsVG9rZW4pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpIHsKICAgICAgICBmdW5jdGlvbiBfcmVjdXJzZShlbnRyeSkgewogICAgICAgICAgcmV0dXJuIGVudHJ5LnN1YmRpcnMucmVkdWNlKChmaWxlcywgc3ViZGlyKSA9PiBbLi4uZmlsZXMsIC4uLl9yZWN1cnNlKGVudHJ5LmRpcihzdWJkaXIpKV0sIGVudHJ5LnN1YmZpbGVzLm1hcCgoc3ViZmlsZSkgPT4gZW50cnkuZmlsZShzdWJmaWxlKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3JlY3Vyc2UodGhpcyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0RGlyRW50cnkgPSBIb3N0RGlyRW50cnk7CiAgICB2YXIgSG9zdFRyZWUgPSBjbGFzcyBfSG9zdFRyZWUgewogICAgICBfYmFja2VuZDsKICAgICAgX2lkID0gLS1fdW5pcXVlSWQ7CiAgICAgIF9yZWNvcmQ7CiAgICAgIF9yZWNvcmRTeW5jOwogICAgICBfYW5jZXN0cnkgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZGlyQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgc3RhdGljIGlzSG9zdFRyZWUodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiB0cmVlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgdHJlZS5fYW5jZXN0cnkgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrZW5kID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuRW1wdHkoKSkgewogICAgICAgIHRoaXMuX2JhY2tlbmQgPSBfYmFja2VuZDsKICAgICAgICB0aGlzLl9yZWNvcmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5Db3JkSG9zdChuZXcgY29yZV8xLnZpcnR1YWxGcy5TYWZlUmVhZG9ubHlIb3N0KF9iYWNrZW5kKSk7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYyA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcy5fcmVjb3JkKTsKICAgICAgfQogICAgICBfbm9ybWFsaXplUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsQ3JlYXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsT3ZlcndyaXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxPdmVyd3JpdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbERlbGV0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsUmVuYW1lKHBhdGgpOwogICAgICB9CiAgICAgIGJyYW5jaCgpIHsKICAgICAgICBjb25zdCBicmFuY2hlZFRyZWUgPSBuZXcgX0hvc3RUcmVlKHRoaXMuX2JhY2tlbmQpOwogICAgICAgIGJyYW5jaGVkVHJlZS5fcmVjb3JkID0gdGhpcy5fcmVjb3JkLmNsb25lKCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdChicmFuY2hlZFRyZWUuX3JlY29yZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9hbmNlc3RyeSA9IG5ldyBTZXQodGhpcy5fYW5jZXN0cnkpLmFkZCh0aGlzLl9pZCk7CiAgICAgICAgcmV0dXJuIGJyYW5jaGVkVHJlZTsKICAgICAgfQogICAgICBpc0FuY2VzdG9yT2YodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJlZS5fYW5jZXN0cnkuaGFzKHRoaXMuX2lkKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBkZWxlZ2F0ZV8xLkRlbGVnYXRlVHJlZSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuaXNBbmNlc3Rvck9mKHRyZWUuX290aGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBzY29wZWRfMS5TY29wZWRUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fYmFzZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBtZXJnZShvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgICBpZiAob3RoZXIgPT09IHRoaXMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuaXNBbmNlc3Rvck9mKG90aGVyKSkgewogICAgICAgICAgc3RyYXRlZ3kgfD0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNyZWF0aW9uQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3QpID09IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dDcmVhdGlvbkNvbmZsaWN0OwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dPdmVyd3JpdGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0OwogICAgICAgIGNvbnN0IGRlbGV0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dEZWxldGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0OwogICAgICAgIG90aGVyLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCBjb250ZW50IH0gPSBhY3Rpb247CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxDcmVhdGUocGF0aCkgfHwgdGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSB8fCB0aGlzLmV4aXN0cyhwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY3JlYXRpb25Db25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAibyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSAmJiAhb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxPdmVyd3JpdGUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nQ29udGVudCA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0NvbnRlbnQgJiYgY29udGVudC5lcXVhbHMoZXhpc3RpbmdDb250ZW50KSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIW92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5fcmVjb3JkLndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJyIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgdG8gfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsUmVuYW1lKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fcmVjb3JkLndpbGxSZW5hbWVUbyhwYXRoLCB0bykpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMucmVuYW1lKHBhdGgsIHRvKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAiZCI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGggfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIXRoaXMuZXhpc3RzKHBhdGgpICYmICFkZWxldGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmRTeW5jLmRlbGV0ZShwYXRoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBnZXQgcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXREaXIoIi8iKTsKICAgICAgfQogICAgICAvLyBSZWFkb25seS4KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICByZXR1cm4gZW50cnkgPyBlbnRyeS5jb250ZW50IDogbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICBpZiAoZGF0YSA9PT0gbnVsbCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoInV0Zi04IiwgeyBmYXRhbDogdHJ1ZSB9KTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGRhdGEpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgVHlwZUVycm9yIHx8IGUuY29kZSA9PT0gIkVSUl9FTkNPRElOR19JTlZBTElEX0VOQ09ERURfREFUQSIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyBVVEYtOCB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnJlYWRUZXh0KHBhdGgpOwogICAgICAgIGNvbnN0IGVycm9ycyA9IFtdOwogICAgICAgIGNvbnN0IHJlc3VsdCA9ICgwLCBqc29uY19wYXJzZXJfMS5wYXJzZSkoY29udGVudCwgZXJyb3JzLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSB9KTsKICAgICAgICBpZiAoZXJyb3JzWzBdKSB7CiAgICAgICAgICBjb25zdCB7IGVycm9yLCBvZmZzZXQgfSA9IGVycm9yc1swXTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHBhcnNlICIke3BhdGh9IiBhcyBKU09OLiAkeygwLCBqc29uY19wYXJzZXJfMS5wcmludFBhcnNlRXJyb3JDb2RlKShlcnJvcil9IGF0IG9mZnNldDogJHtvZmZzZXR9LmApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZFN5bmMuaXNGaWxlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX3JlY29yZFN5bmMuaXNEaXJlY3RvcnkocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBlbnRyeV8xLkxhenlGaWxlRW50cnkocCwgKCkgPT4gQnVmZmVyLmZyb20odGhpcy5fcmVjb3JkU3luYy5yZWFkKHApKSk7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgbGV0IG1heWJlQ2FjaGUgPSB0aGlzLl9kaXJDYWNoZS5nZXQocCk7CiAgICAgICAgaWYgKCFtYXliZUNhY2hlKSB7CiAgICAgICAgICBsZXQgcGFyZW50ID0gKDAsIGNvcmVfMS5kaXJuYW1lKShwKTsKICAgICAgICAgIGlmIChwID09PSBwYXJlbnQpIHsKICAgICAgICAgICAgcGFyZW50ID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIG1heWJlQ2FjaGUgPSBuZXcgSG9zdERpckVudHJ5KHBhcmVudCAmJiB0aGlzLmdldERpcihwYXJlbnQpLCBwLCB0aGlzLl9yZWNvcmRTeW5jLCB0aGlzKTsKICAgICAgICAgIHRoaXMuX2RpckNhY2hlLnNldChwLCBtYXliZUNhY2hlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1heWJlQ2FjaGU7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHRoaXMucm9vdC52aXNpdCgocGF0aCwgZW50cnkpID0+IHsKICAgICAgICAgIHZpc2l0b3IocGF0aCwgZW50cnkpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKCF0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGJlZ2luVXBkYXRlKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVjb3JkZXJfMS5VcGRhdGVSZWNvcmRlckJhc2UuY3JlYXRlRnJvbUZpbGVFbnRyeShlbnRyeSk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIGlmIChyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSkgewogICAgICAgICAgY29uc3QgcGF0aCA9IHJlY29yZC5wYXRoOwogICAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgbmV3Q29udGVudCA9IHJlY29yZC5hcHBseShlbnRyeS5jb250ZW50KTsKICAgICAgICAgICAgaWYgKCFuZXdDb250ZW50LmVxdWFscyhlbnRyeS5jb250ZW50KSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKHBhdGgsIG5ld0NvbnRlbnQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5JbnZhbGlkVXBkYXRlUmVjb3JkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIFN0cnVjdHVyYWwgbWV0aG9kcy4KICAgICAgY3JlYXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBjb25zdCBjID0gdHlwZW9mIGNvbnRlbnQgPT0gInN0cmluZyIgPyBCdWZmZXIuZnJvbShjb250ZW50KSA6IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5fcmVjb3JkLmNyZWF0ZShwLCBjKS5zdWJzY3JpYmUoKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMucmVuYW1lKHRoaXMuX25vcm1hbGl6ZVBhdGgoZnJvbSksIHRoaXMuX25vcm1hbGl6ZVBhdGgodG8pKTsKICAgICAgfQogICAgICBhcHBseShhY3Rpb24sIHN0cmF0ZWd5KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIkFwcGx5IG5vdCBpbXBsZW1lbnRlZCBvbiBob3N0IHRyZWVzLiIpOwogICAgICB9CiAgICAgICpnZW5lcmF0ZUFjdGlvbnMoKSB7CiAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgdGhpcy5fcmVjb3JkLnJlY29yZHMoKSkgewogICAgICAgICAgc3dpdGNoIChyZWNvcmQua2luZCkgewogICAgICAgICAgICBjYXNlICJjcmVhdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJjIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAibyIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IEJ1ZmZlci5mcm9tKHJlY29yZC5jb250ZW50KQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInJlbmFtZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogInIiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLmZyb20sCiAgICAgICAgICAgICAgICB0bzogcmVjb3JkLnRvCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiZCIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aAogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZ2VuZXJhdGVBY3Rpb25zKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdFRyZWUgPSBIb3N0VHJlZTsKICAgIHZhciBIb3N0Q3JlYXRlVHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcihob3N0KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBjb25zdCB0ZW1wSG9zdCA9IG5ldyBIb3N0VHJlZShob3N0KTsKICAgICAgICB0ZW1wSG9zdC52aXNpdCgocGF0aCkgPT4gewogICAgICAgICAgY29uc3QgY29udGVudCA9IHRlbXBIb3N0LnJlYWQocGF0aCk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RDcmVhdGVUcmVlID0gSG9zdENyZWF0ZVRyZWU7CiAgICB2YXIgRmlsdGVySG9zdFRyZWUgPSBjbGFzcyBleHRlbmRzIEhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IodHJlZSwgZmlsdGVyID0gKCkgPT4gdHJ1ZSkgewogICAgICAgIGNvbnN0IG5ld0JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TaW1wbGVNZW1vcnlIb3N0KCk7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCYWNrZW5kID0gdHJlZS5fYmFja2VuZDsKICAgICAgICBjb25zdCBwZW5kaW5nUGF0aHMgPSBbIi8iXTsKICAgICAgICB3aGlsZSAocGVuZGluZ1BhdGhzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gcGVuZGluZ1BhdGhzLnBvcCgpOwogICAgICAgICAgaWYgKGN1cnJlbnRQYXRoID09PSB2b2lkIDApIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgaXNEaXJlY3RvcnkgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0RpcmVjdG9yeShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRGlyZWN0b3J5ID0gdmFsKTsKICAgICAgICAgIGlmIChpc0RpcmVjdG9yeSkgewogICAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQubGlzdChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IHBlbmRpbmdQYXRocy5wdXNoKC4uLnZhbC5tYXAoKHApID0+ICgwLCBjb3JlXzEuam9pbikoY3VycmVudFBhdGgsIHApKSkpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0ZpbGUgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0ZpbGUoY3VycmVudFBhdGgpLnN1YnNjcmliZSgodmFsKSA9PiBpc0ZpbGUgPSB2YWwpOwogICAgICAgICAgaWYgKCFpc0ZpbGUgfHwgIWZpbHRlcihjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29udGVudCA9IG51bGw7CiAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQucmVhZChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGNvbnRlbnQgPSB2YWwpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT09IG51bGwpIHsKICAgICAgICAgICAgbmV3QmFja2VuZC53cml0ZShjdXJyZW50UGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyKG5ld0JhY2tlbmQpOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRyZWUuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFmaWx0ZXIoYWN0aW9uLnBhdGgpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgICB0aGlzLmNyZWF0ZShhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgICB0aGlzLmRlbGV0ZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm8iOgogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInIiOgogICAgICAgICAgICAgIHRoaXMucmVuYW1lKGFjdGlvbi5wYXRoLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gRmlsdGVySG9zdFRyZWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3N0YXRpYy5qcwp2YXIgcmVxdWlyZV9zdGF0aWMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZXhwb3J0czIuYnJhbmNoID0gYnJhbmNoOwogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTI7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gbmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKCk7CiAgICB9CiAgICBmdW5jdGlvbiBicmFuY2godHJlZSkgewogICAgICByZXR1cm4gdHJlZS5icmFuY2goKTsKICAgIH0KICAgIGZ1bmN0aW9uIG1lcmdlMih0cmVlLCBvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgdHJlZS5tZXJnZShvdGhlciwgc3RyYXRlZ3kpOwogICAgICByZXR1cm4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBob3N0X3RyZWVfMS5Ib3N0VHJlZSkgewogICAgICAgIHJldHVybiBbCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKSwKICAgICAgICAgIG5ldyBob3N0X3RyZWVfMS5GaWx0ZXJIb3N0VHJlZSh0cmVlLCAocGF0aCwgZW50cnkpID0+ICFwcmVkaWNhdGUocGF0aCwgZW50cnkpKQogICAgICAgIF07CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9udWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IGV4cG9ydHMyLk51bGxUcmVlRGlyRW50cnkgPSBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYENhbm5vdCBjcmVhdGUgZmlsZSAiJHtwYXRofSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbjsKICAgIHZhciBOdWxsVHJlZURpckVudHJ5ID0gY2xhc3MgX051bGxUcmVlRGlyRW50cnkgewogICAgICBwYXRoOwogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLnBhdGggPT0gIi8iID8gbnVsbCA6IG5ldyBfTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLmRpcm5hbWUpKHRoaXMucGF0aCkpOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICB0aGlzLnBhdGggPSBwYXRoOwogICAgICB9CiAgICAgIHN1YmRpcnMgPSBbXTsKICAgICAgc3ViZmlsZXMgPSBbXTsKICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBuYW1lKSk7CiAgICAgIH0KICAgICAgZmlsZShfbmFtZSkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHZpc2l0KCkgewogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IE51bGxUcmVlRGlyRW50cnk7CiAgICB2YXIgTnVsbFRyZWUgPSBjbGFzcyBfTnVsbFRyZWUgewogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlKCk7CiAgICAgIH0KICAgICAgbWVyZ2UoX290aGVyLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICByb290ID0gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICAvLyBTaW1wbGUgcmVhZG9ubHkgZmlsZSBzeXN0ZW0gb3BlcmF0aW9ucy4KICAgICAgZXhpc3RzKF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHJlYWQoX3BhdGgpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGdldChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSA/IHJlY29yZC5wYXRoIDogIjx1bmtub3duPiIpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBzdHJ1Y3R1cmUgb2YgdGhlIGhvc3QuCiAgICAgIGNvcHkocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgYXBwbHkoX2FjdGlvbiwgX3N0cmF0ZWd5KSB7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWUgPSBOdWxsVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanMKdmFyIHJlcXVpcmVfY2FsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanMKdmFyIHJlcXVpcmVfc2NoZW1hdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvc2NoZW1hdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBjYWxsXzEgPSByZXF1aXJlX2NhbGwoKTsKICAgIHZhciBzY29wZWRfMSA9IHJlcXVpcmVfc2NvcGVkMigpOwogICAgdmFyIEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpY3MgaGFzIGludmFsaWQgbmFtZTogIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0ltcGwgPSBjbGFzcyB7CiAgICAgIF9kZXNjcmlwdGlvbjsKICAgICAgX2ZhY3Rvcnk7CiAgICAgIF9jb2xsZWN0aW9uOwogICAgICBfZW5naW5lOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9mYWN0b3J5LCBfY29sbGVjdGlvbiwgX2VuZ2luZSkgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2ZhY3RvcnkgPSBfZmFjdG9yeTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uID0gX2NvbGxlY3Rpb247CiAgICAgICAgdGhpcy5fZW5naW5lID0gX2VuZ2luZTsKICAgICAgICBpZiAoIV9kZXNjcmlwdGlvbi5uYW1lLm1hdGNoKC9eWy1AL18uYS16QS1aMC05XSskLykpIHsKICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24oX2Rlc2NyaXB0aW9uLm5hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBjb2xsZWN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uOwogICAgICB9CiAgICAgIGNhbGwob3B0aW9ucywgaG9zdCwgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29udGV4dCh0aGlzLCBwYXJlbnRDb250ZXh0LCBleGVjdXRpb25PcHRpb25zKTsKICAgICAgICByZXR1cm4gaG9zdC5waXBlKCgwLCByeGpzXzEuZmlyc3QpKCksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodHJlZSkgPT4gdGhpcy5fZW5naW5lLnRyYW5zZm9ybU9wdGlvbnModGhpcywgb3B0aW9ucywgY29udGV4dCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKG8pID0+IFt0cmVlLCBvXSkpKSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChbdHJlZSwgdHJhbnNmb3JtZWRPcHRpb25zXSkgPT4gewogICAgICAgICAgbGV0IGlucHV0OwogICAgICAgICAgbGV0IHNjb3BlZCA9IGZhbHNlOwogICAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5zY29wZSkgewogICAgICAgICAgICBzY29wZWQgPSB0cnVlOwogICAgICAgICAgICBpbnB1dCA9IG5ldyBzY29wZWRfMS5TY29wZWRUcmVlKHRyZWUsIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB0cmVlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHRoaXMuX2ZhY3RvcnkodHJhbnNmb3JtZWRPcHRpb25zKSwgaW5wdXQsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvdXRwdXQpID0+IHsKICAgICAgICAgICAgaWYgKG91dHB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY29wZWQpIHsKICAgICAgICAgICAgICB0cmVlLm1lcmdlKG91dHB1dCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0ltcGwgPSBTY2hlbWF0aWNJbXBsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBleHBvcnRzMi5Db2xsZWN0aW9uSW1wbCA9IGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gZXhwb3J0czIuQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgbnVsbF8xID0gcmVxdWlyZV9udWxsKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHNjaGVtYXRpY18xID0gcmVxdWlyZV9zY2hlbWF0aWMoKTsKICAgIHZhciBVbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodXJsMykgewogICAgICAgIHN1cGVyKGBVbmtub3duIFByb3RvY29sIG9uIHVybCAiJHt1cmwzfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBVbmtub3duVXJsU291cmNlUHJvdG9jb2w7CiAgICB2YXIgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBVbmtub3duIGNvbGxlY3Rpb24gIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDaXJjdWxhciBjb2xsZWN0aW9uIHJlZmVyZW5jZSAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb247CiAgICB2YXIgVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBjb2xsZWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpYyAiJHtuYW1lfSIgbm90IGZvdW5kIGluIGNvbGxlY3Rpb24gIiR7Y29sbGVjdGlvbi5uYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbjsKICAgIHZhciBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBBIHNjaGVtYXRpYyB3YXMgY2FsbGVkIGZyb20gYSBkaWZmZXJlbnQgZW5naW5lIGFzIGl0cyBwYXJlbnQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uOwogICAgdmFyIFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgc2NoZW1hdGljKSB7CiAgICAgICAgY29uc3QgYWRkZW5kdW0gPSBzY2hlbWF0aWMgPyBgIGluIHNjaGVtYXRpYyAiJHtzY2hlbWF0aWMubmFtZX0iYCA6ICIiOwogICAgICAgIHN1cGVyKGBVbnJlZ2lzdGVyZWQgdGFzayAiJHtuYW1lfSIke2FkZGVuZHVtfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpZCkgewogICAgICAgIHN1cGVyKGBVbmtub3duIHRhc2sgZGVwZW5kZW5jeSBbSUQ6ICR7aWQuaWR9XS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbjsKICAgIHZhciBDb2xsZWN0aW9uSW1wbCA9IGNsYXNzIHsKICAgICAgX2Rlc2NyaXB0aW9uOwogICAgICBfZW5naW5lOwogICAgICBiYXNlRGVzY3JpcHRpb25zOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9lbmdpbmUsIGJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9lbmdpbmUgPSBfZW5naW5lOwogICAgICAgIHRoaXMuYmFzZURlc2NyaXB0aW9ucyA9IGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgbmFtZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5kZXNjcmlwdGlvbi5uYW1lIHx8ICI8dW5rbm93bj4iOwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuY3JlYXRlU2NoZW1hdGljKG5hbWUsIHRoaXMsIGFsbG93UHJpdmF0ZSk7CiAgICAgIH0KICAgICAgbGlzdFNjaGVtYXRpY05hbWVzKGluY2x1ZGVIaWRkZW4pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lLmxpc3RTY2hlbWF0aWNOYW1lcyh0aGlzLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gQ29sbGVjdGlvbkltcGw7CiAgICB2YXIgVGFza1NjaGVkdWxlciA9IGNsYXNzIF9UYXNrU2NoZWR1bGVyIHsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9xdWV1ZSA9IG5ldyBjb3JlXzEuUHJpb3JpdHlRdWV1ZSgoeCwgeSkgPT4geC5wcmlvcml0eSAtIHkucHJpb3JpdHkpOwogICAgICBfdGFza0lkcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIHN0YXRpYyBfdGFza0lkQ291bnRlciA9IDE7CiAgICAgIGNvbnN0cnVjdG9yKF9jb250ZXh0KSB7CiAgICAgICAgdGhpcy5fY29udGV4dCA9IF9jb250ZXh0OwogICAgICB9CiAgICAgIF9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpIHsKICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLnNpemUgPT09IDApIHsKICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcmlvID0gWy4uLmRlcGVuZGVuY2llc10ucmVkdWNlKChwcmlvMiwgdGFzaykgPT4gcHJpbzIgKyB0YXNrLnByaW9yaXR5LCAxKTsKICAgICAgICByZXR1cm4gcHJpbzsKICAgICAgfQogICAgICBfbWFwRGVwZW5kZW5jaWVzKGRlcGVuZGVuY2llcykgewogICAgICAgIGlmICghZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza3MgPSBkZXBlbmRlbmNpZXMubWFwKChkZXApID0+IHsKICAgICAgICAgIGNvbnN0IHRhc2sgPSB0aGlzLl90YXNrSWRzLmdldChkZXApOwogICAgICAgICAgaWYgKCF0YXNrKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVGFza0RlcGVuZGVuY3lFeGNlcHRpb24oZGVwKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2V0KHRhc2tzKTsKICAgICAgfQogICAgICBzY2hlZHVsZSh0YXNrQ29uZmlndXJhdGlvbikgewogICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMuX21hcERlcGVuZGVuY2llcyh0YXNrQ29uZmlndXJhdGlvbi5kZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHByaW9yaXR5ID0gdGhpcy5fY2FsY3VsYXRlUHJpb3JpdHkoZGVwZW5kZW5jaWVzKTsKICAgICAgICBjb25zdCB0YXNrID0gewogICAgICAgICAgaWQ6IF9UYXNrU2NoZWR1bGVyLl90YXNrSWRDb3VudGVyKyssCiAgICAgICAgICBwcmlvcml0eSwKICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHRhc2tDb25maWd1cmF0aW9uLAogICAgICAgICAgY29udGV4dDogdGhpcy5fY29udGV4dAogICAgICAgIH07CiAgICAgICAgdGhpcy5fcXVldWUucHVzaCh0YXNrKTsKICAgICAgICBjb25zdCBpZCA9IHsgaWQ6IHRhc2suaWQgfTsKICAgICAgICB0aGlzLl90YXNrSWRzLnNldChpZCwgdGFzayk7CiAgICAgICAgcmV0dXJuIGlkOwogICAgICB9CiAgICAgIGZpbmFsaXplKCkgewogICAgICAgIGNvbnN0IHRhc2tzID0gdGhpcy5fcXVldWUudG9BcnJheSgpOwogICAgICAgIHRoaXMuX3F1ZXVlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fdGFza0lkcy5jbGVhcigpOwogICAgICAgIHJldHVybiB0YXNrczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBUYXNrU2NoZWR1bGVyOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZSA9IGNsYXNzIHsKICAgICAgX2hvc3Q7CiAgICAgIF93b3JrZmxvdzsKICAgICAgX2NvbGxlY3Rpb25DYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9zY2hlbWF0aWNDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgICBfdGFza1NjaGVkdWxlcnMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF93b3JrZmxvdykgewogICAgICAgIHRoaXMuX2hvc3QgPSBfaG9zdDsKICAgICAgICB0aGlzLl93b3JrZmxvdyA9IF93b3JrZmxvdzsKICAgICAgfQogICAgICBnZXQgd29ya2Zsb3coKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtmbG93IHx8IG51bGw7CiAgICAgIH0KICAgICAgZ2V0IGRlZmF1bHRNZXJnZVN0cmF0ZWd5KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0LmRlZmF1bHRNZXJnZVN0cmF0ZWd5IHx8IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdDsKICAgICAgfQogICAgICBjcmVhdGVDb2xsZWN0aW9uKG5hbWUsIHJlcXVlc3RlcikgewogICAgICAgIGxldCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvbkNhY2hlLmdldChuYW1lKTsKICAgICAgICBpZiAoY29sbGVjdGlvbikgewogICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247CiAgICAgICAgfQogICAgICAgIGNvbnN0IFtkZXNjcmlwdGlvbiwgYmFzZXNdID0gdGhpcy5fY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcj8uZGVzY3JpcHRpb24pOwogICAgICAgIGNvbGxlY3Rpb24gPSBuZXcgQ29sbGVjdGlvbkltcGwoZGVzY3JpcHRpb24sIHRoaXMsIGJhc2VzKTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuc2V0KG5hbWUsIGNvbGxlY3Rpb24pOwogICAgICAgIHRoaXMuX3NjaGVtYXRpY0NhY2hlLnNldChjb2xsZWN0aW9uLCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpKTsKICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgfQogICAgICBfY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3RlciwgcGFyZW50TmFtZXMpIHsKICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcik7CiAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50TmFtZXMgJiYgcGFyZW50TmFtZXMuaGFzKGRlc2NyaXB0aW9uLm5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBjb25zdCBiYXNlcyA9IG5ldyBBcnJheSgpOwogICAgICAgIGlmIChkZXNjcmlwdGlvbi5leHRlbmRzKSB7CiAgICAgICAgICBwYXJlbnROYW1lcyA9IChwYXJlbnROYW1lcyB8fCAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKS5hZGQoZGVzY3JpcHRpb24ubmFtZSk7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2VOYW1lIG9mIGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgICAgY29uc3QgW2Jhc2UsIGJhc2VCYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24oYmFzZU5hbWUsIGRlc2NyaXB0aW9uLCBuZXcgU2V0KHBhcmVudE5hbWVzKSk7CiAgICAgICAgICAgIGJhc2VzLnVuc2hpZnQoYmFzZSwgLi4uYmFzZUJhc2VzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtkZXNjcmlwdGlvbiwgYmFzZXNdOwogICAgICB9CiAgICAgIGNyZWF0ZUNvbnRleHQoc2NoZW1hdGljLCBwYXJlbnQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5lbmdpbmUgJiYgcGFyZW50LmVuZ2luZSAhPT0gdGhpcykgewogICAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGxldCBpbnRlcmFjdGl2ZSA9IHRydWU7CiAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudCAmJiBwYXJlbnQuaW50ZXJhY3RpdmUgIT0gdm9pZCAwKSB7CiAgICAgICAgICBpbnRlcmFjdGl2ZSA9IHBhcmVudC5pbnRlcmFjdGl2ZTsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbnRleHQgPSB7CiAgICAgICAgICBkZWJ1ZzogcGFyZW50ICYmIHBhcmVudC5kZWJ1ZyB8fCBmYWxzZSwKICAgICAgICAgIGVuZ2luZTogdGhpcywKICAgICAgICAgIGxvZ2dlcjogcGFyZW50ICYmIHBhcmVudC5sb2dnZXIgJiYgcGFyZW50LmxvZ2dlci5jcmVhdGVDaGlsZChzY2hlbWF0aWMuZGVzY3JpcHRpb24ubmFtZSkgfHwgbmV3IGNvcmVfMS5sb2dnaW5nLk51bGxMb2dnZXIoKSwKICAgICAgICAgIHNjaGVtYXRpYywKICAgICAgICAgIHN0cmF0ZWd5OiBwYXJlbnQgJiYgcGFyZW50LnN0cmF0ZWd5ICE9PSB2b2lkIDAgPyBwYXJlbnQuc3RyYXRlZ3kgOiB0aGlzLmRlZmF1bHRNZXJnZVN0cmF0ZWd5LAogICAgICAgICAgaW50ZXJhY3RpdmUsCiAgICAgICAgICBhZGRUYXNrCiAgICAgICAgfTsKICAgICAgICBjb25zdCBtYXliZU5ld0NvbnRleHQgPSB0aGlzLl9ob3N0LnRyYW5zZm9ybUNvbnRleHQoY29udGV4dCk7CiAgICAgICAgaWYgKG1heWJlTmV3Q29udGV4dCkgewogICAgICAgICAgY29udGV4dCA9IG1heWJlTmV3Q29udGV4dDsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza1NjaGVkdWxlciA9IG5ldyBUYXNrU2NoZWR1bGVyKGNvbnRleHQpOwogICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLl9ob3N0OwogICAgICAgIHRoaXMuX3Rhc2tTY2hlZHVsZXJzLnB1c2godGFza1NjaGVkdWxlcik7CiAgICAgICAgZnVuY3Rpb24gYWRkVGFzayh0YXNrLCBkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHRhc2sudG9Db25maWd1cmF0aW9uKCk7CiAgICAgICAgICBpZiAoIWhvc3QuaGFzVGFza0V4ZWN1dG9yKGNvbmZpZy5uYW1lKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbihjb25maWcubmFtZSwgc2NoZW1hdGljLmRlc2NyaXB0aW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMgPSBjb25maWcuZGVwZW5kZW5jaWVzIHx8IFtdOwogICAgICAgICAgaWYgKGRlcGVuZGVuY2llcykgewogICAgICAgICAgICBjb25maWcuZGVwZW5kZW5jaWVzLnVuc2hpZnQoLi4uZGVwZW5kZW5jaWVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrU2NoZWR1bGVyLnNjaGVkdWxlKGNvbmZpZyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb250ZXh0OwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBjb2xsZWN0aW9uLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IHNjaGVtYXRpY01hcCA9IHRoaXMuX3NjaGVtYXRpY0NhY2hlLmdldChjb2xsZWN0aW9uKTsKICAgICAgICBsZXQgc2NoZW1hdGljID0gc2NoZW1hdGljTWFwPy5nZXQobmFtZSk7CiAgICAgICAgaWYgKHNjaGVtYXRpYykgewogICAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGNvbGxlY3Rpb24uZGVzY3JpcHRpb247CiAgICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgYmFzZSBvZiBjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlU2NoZW1hdGljRGVzY3JpcHRpb24obmFtZSwgYmFzZSk7CiAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24gPSBiYXNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZGVzY3JpcHRpb24ucHJpdmF0ZSAmJiAhYWxsb3dQcml2YXRlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX2hvc3QuZ2V0U2NoZW1hdGljUnVsZUZhY3RvcnkoZGVzY3JpcHRpb24sIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7CiAgICAgICAgc2NoZW1hdGljID0gbmV3IHNjaGVtYXRpY18xLlNjaGVtYXRpY0ltcGwoZGVzY3JpcHRpb24sIGZhY3RvcnksIGNvbGxlY3Rpb24sIHRoaXMpOwogICAgICAgIHNjaGVtYXRpY01hcD8uc2V0KG5hbWUsIHNjaGVtYXRpYyk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbiwgaW5jbHVkZUhpZGRlbikgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbi5kZXNjcmlwdGlvbiwgaW5jbHVkZUhpZGRlbik7CiAgICAgICAgaWYgKGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICBuYW1lcy5wdXNoKC4uLnRoaXMuX2hvc3QubGlzdFNjaGVtYXRpY05hbWVzKGJhc2UsIGluY2x1ZGVIaWRkZW4pKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5uZXcgU2V0KG5hbWVzKV0uc29ydCgpOwogICAgICB9CiAgICAgIHRyYW5zZm9ybU9wdGlvbnMoc2NoZW1hdGljLCBvcHRpb25zLCBjb250ZXh0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QudHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMuZGVzY3JpcHRpb24sIG9wdGlvbnMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGNyZWF0ZVNvdXJjZUZyb21VcmwodXJsMywgY29udGV4dCkgewogICAgICAgIHN3aXRjaCAodXJsMy5wcm90b2NvbCkgewogICAgICAgICAgY2FzZSAibnVsbDoiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gbmV3IG51bGxfMS5OdWxsVHJlZSgpOwogICAgICAgICAgY2FzZSAiZW1wdHk6IjoKICAgICAgICAgICAgcmV0dXJuICgpID0+ICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaG9zdFNvdXJjZSA9IHRoaXMuX2hvc3QuY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KTsKICAgICAgICBpZiAoIWhvc3RTb3VyY2UpIHsKICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVXJsU291cmNlUHJvdG9jb2wodXJsMy50b1N0cmluZygpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGhvc3RTb3VyY2U7CiAgICAgIH0KICAgICAgZXhlY3V0ZVBvc3RUYXNrcygpIHsKICAgICAgICBjb25zdCBleGVjdXRvcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRhc2tPYnNlcnZhYmxlID0gKDAsIHJ4anNfMS5mcm9tKSh0aGlzLl90YXNrU2NoZWR1bGVycykucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHNjaGVkdWxlcikgPT4gc2NoZWR1bGVyLmZpbmFsaXplKCkpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRhc2spID0+IHsKICAgICAgICAgIGNvbnN0IHsgbmFtZSwgb3B0aW9ucyB9ID0gdGFzay5jb25maWd1cmF0aW9uOwogICAgICAgICAgY29uc3QgZXhlY3V0b3IgPSBleGVjdXRvcnMuZ2V0KG5hbWUpOwogICAgICAgICAgaWYgKGV4ZWN1dG9yKSB7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcihvcHRpb25zLCB0YXNrLmNvbnRleHQpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuY3JlYXRlVGFza0V4ZWN1dG9yKG5hbWUpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChleGVjdXRvcjIpID0+IHsKICAgICAgICAgICAgZXhlY3V0b3JzLnNldChuYW1lLCBleGVjdXRvcjIpOwogICAgICAgICAgICByZXR1cm4gZXhlY3V0b3IyKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9KSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiB0YXNrT2JzZXJ2YWJsZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IFNjaGVtYXRpY0VuZ2luZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzCnZhciByZXF1aXJlX2VuZ2luZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hdGljKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVDb25zb2xlTG9nZ2VyID0gY3JlYXRlQ29uc29sZUxvZ2dlcjsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNyY18xID0gcmVxdWlyZV9zcmMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZUNvbnNvbGVMb2dnZXIodmVyYm9zZSA9IGZhbHNlLCBzdGRvdXQgPSBwcm9jZXNzLnN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5zdGRlcnIsIGNvbG9ycykgewogICAgICBjb25zdCBsb2dnZXIgPSBuZXcgc3JjXzEubG9nZ2luZy5JbmRlbnRMb2dnZXIoImNsaW5nIik7CiAgICAgIGxvZ2dlci5waXBlKCgwLCByeGpzXzEuZmlsdGVyKSgoZW50cnkpID0+IGVudHJ5LmxldmVsICE9PSAiZGVidWciIHx8IHZlcmJvc2UpKS5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgY29sb3IgPSBjb2xvcnMgJiYgY29sb3JzW2VudHJ5LmxldmVsXTsKICAgICAgICBsZXQgb3V0cHV0ID0gc3Rkb3V0OwogICAgICAgIHN3aXRjaCAoZW50cnkubGV2ZWwpIHsKICAgICAgICAgIGNhc2UgIndhcm4iOgogICAgICAgICAgY2FzZSAiZmF0YWwiOgogICAgICAgICAgY2FzZSAiZXJyb3IiOgogICAgICAgICAgICBvdXRwdXQgPSBzdGRlcnI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaHVua1NpemUgPSAyZTM7CiAgICAgICAgbGV0IG1lc3NhZ2UgPSBlbnRyeS5tZXNzYWdlOwogICAgICAgIHdoaWxlIChtZXNzYWdlKSB7CiAgICAgICAgICBjb25zdCBjaHVuayA9IG1lc3NhZ2Uuc2xpY2UoMCwgY2h1bmtTaXplKTsKICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLnNsaWNlKGNodW5rU2l6ZSk7CiAgICAgICAgICBvdXRwdXQud3JpdGUoY29sb3IgPyBjb2xvcihjaHVuaykgOiBjaHVuayk7CiAgICAgICAgfQogICAgICAgIG91dHB1dC53cml0ZSgiXG4iKTsKICAgICAgfSk7CiAgICAgIHJldHVybiBsb2dnZXI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9ub2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2NsaV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDMoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2FjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uTGlzdCA9IGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5pc0NvbnRlbnRBY3Rpb24gPSBpc0NvbnRlbnRBY3Rpb247CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBVbmtub3duQWN0aW9uRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGFjdGlvbikgewogICAgICAgIHN1cGVyKGBVbmtub3duIGFjdGlvbjogIiR7YWN0aW9uLmtpbmR9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIF9pZCA9IDE7CiAgICB2YXIgQWN0aW9uTGlzdCA9IGNsYXNzIHsKICAgICAgX2FjdGlvbnMgPSBbXTsKICAgICAgX2FjdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goewogICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgaWQ6IF9pZCsrLAogICAgICAgICAgcGFyZW50OiB0aGlzLl9hY3Rpb25zW3RoaXMuX2FjdGlvbnMubGVuZ3RoIC0gMV0/LmlkID8/IDAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJjIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJvIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgdG8pIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiciIsIHBhdGgsIHRvIH0pOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImQiLCBwYXRoIH0pOwogICAgICB9CiAgICAgIG9wdGltaXplKCkgewogICAgICAgIGNvbnN0IHRvQ3JlYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9PdmVyd3JpdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9hY3Rpb25zKSB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBpZiAodG9DcmVhdGUuaGFzKGFjdGlvbi5wYXRoKSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgdG9EZWxldGUuYWRkKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6IHsKICAgICAgICAgICAgICBjb25zdCBtYXliZUNyZWF0ZSA9IHRvQ3JlYXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVPdmVyd3JpdGUgPSB0b092ZXJ3cml0ZS5nZXQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGlmIChtYXliZUNyZWF0ZSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24udG8sIG1heWJlQ3JlYXRlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlT3ZlcndyaXRlKSB7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi50bywgbWF5YmVPdmVyd3JpdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBsZXQgbWF5YmVSZW5hbWUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgZm9yIChjb25zdCBbZnJvbSwgdG9dIG9mIHRvUmVuYW1lLmVudHJpZXMoKSkgewogICAgICAgICAgICAgICAgaWYgKHRvID09IGFjdGlvbi5wYXRoKSB7CiAgICAgICAgICAgICAgICAgIG1heWJlUmVuYW1lID0gZnJvbTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KG1heWJlUmVuYW1lLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIW1heWJlQ3JlYXRlICYmICFtYXliZU92ZXJ3cml0ZSAmJiAhbWF5YmVSZW5hbWUpIHsKICAgICAgICAgICAgICAgIHRvUmVuYW1lLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fYWN0aW9ucyA9IFtdOwogICAgICAgIHRvRGVsZXRlLmZvckVhY2goKHgpID0+IHsKICAgICAgICAgIHRoaXMuZGVsZXRlKHgpOwogICAgICAgIH0pOwogICAgICAgIHRvUmVuYW1lLmZvckVhY2goKHRvLCBmcm9tKSA9PiB7CiAgICAgICAgICB0aGlzLnJlbmFtZShmcm9tLCB0byk7CiAgICAgICAgfSk7CiAgICAgICAgdG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9PdmVyd3JpdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcHVzaChhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goYWN0aW9uKTsKICAgICAgfQogICAgICBnZXQoaSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW2ldOwogICAgICB9CiAgICAgIGhhcyhhY3Rpb24pIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2FjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGEgPSB0aGlzLl9hY3Rpb25zW2ldOwogICAgICAgICAgaWYgKGEuaWQgPT0gYWN0aW9uLmlkKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGEuaWQgPiBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZmluZChwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5maW5kKHByZWRpY2F0ZSkgfHwgbnVsbDsKICAgICAgfQogICAgICBmb3JFYWNoKGZuLCB0aGlzQXJnKSB7CiAgICAgICAgdGhpcy5fYWN0aW9ucy5mb3JFYWNoKGZuLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQgbGVuZ3RoKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmxlbmd0aDsKICAgICAgfQogICAgICBbU3ltYm9sLml0ZXJhdG9yXSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1tTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gQWN0aW9uTGlzdDsKICAgIGZ1bmN0aW9uIGlzQ29udGVudEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIGFjdGlvbi5raW5kID09ICJjIiB8fCBhY3Rpb24ua2luZCA9PSAibyI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanMKdmFyIHJlcXVpcmVfc2luayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3Q0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc2lua18xID0gcmVxdWlyZV9zaW5rKCk7CiAgICB2YXIgSG9zdFNpbmsgPSBjbGFzcyBleHRlbmRzIHNpbmtfMS5TaW1wbGVTaW5rQmFzZSB7CiAgICAgIF9ob3N0OwogICAgICBfZm9yY2U7CiAgICAgIF9maWxlc1RvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9SZW5hbWUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb0NyZWF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvVXBkYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF9mb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fZm9yY2UgPSBfZm9yY2U7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9mb3JjZSA/IHJ4anNfMS5FTVBUWSA6IHN1cGVyLl92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUZpbGVFeGlzdHMocCkgewogICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhwKSB8fCB0aGlzLl9maWxlc1RvVXBkYXRlLmhhcyhwKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgW2Zyb20sIHRvXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lLnZhbHVlcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHApIHsKICAgICAgICAgICAgY2FzZSBmcm9tOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgICAgIGNhc2UgdG86CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5leGlzdHMocCk7CiAgICAgIH0KICAgICAgX292ZXJ3cml0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX2NyZWF0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX3JlbmFtZUZpbGUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmFkZChbZnJvbSwgdG9dKTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kZWxldGVGaWxlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1VwZGF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0RlbGV0ZS52YWx1ZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChwYXRoKSA9PiB0aGlzLl9ob3N0LmRlbGV0ZShwYXRoKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvUmVuYW1lLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbXywgW3BhdGgsIHRvXV0pID0+IHRoaXMuX2hvc3QucmVuYW1lKHBhdGgsIHRvKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvQ3JlYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSksICgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9VcGRhdGUuZW50cmllcygpXSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKFtwYXRoLCBidWZmZXJdKSA9PiB0aGlzLl9ob3N0LndyaXRlKHBhdGgsIGJ1ZmZlcikpKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKCkgPT4gewogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gSG9zdFNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvZHJ5cnVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EcnlSdW5TaW5rID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV8xID0gcmVxdWlyZV9ub2RlKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3Q0KCk7CiAgICB2YXIgRHJ5UnVuU2luayA9IGNsYXNzIGV4dGVuZHMgaG9zdF8xLkhvc3RTaW5rIHsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHJlcG9ydGVyID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgY29uc3RydWN0b3IoaG9zdCwgZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKHR5cGVvZiBob3N0ID09ICJzdHJpbmciID8gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU2NvcGVkSG9zdChuZXcgbm9kZV8xLk5vZGVKc1N5bmNIb3N0KCksICgwLCBjb3JlXzEubm9ybWFsaXplKShob3N0KSkgOiBob3N0LCBmb3JjZSk7CiAgICAgIH0KICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmFkZChwYXRoKTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiYWxyZWFkeUV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldC5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoewogICAgICAgICAgICBraW5kOiAiZXJyb3IiLAogICAgICAgICAgICBkZXNjcmlwdGlvbjogImRvZXNOb3RFeGlzdCIsCiAgICAgICAgICAgIHBhdGgKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbZnJvbV0gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAoZnJvbSA9PSBwYXRoKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiZGVsZXRlIiwgcGF0aCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmZvckVhY2goKFtwYXRoLCB0b10pID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJyZW5hbWUiLCBwYXRoLCB0byB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIGZvciAoY29uc3QgWywgdG9dIG9mIHRoaXMuX2ZpbGVzVG9SZW5hbWUpIHsKICAgICAgICAgICAgaWYgKHRvID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSB8fCB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiY3JlYXRlIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJ1cGRhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSBEcnlSdW5TaW5rOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qcwp2YXIgcmVxdWlyZV9iYXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2U1ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U1KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzCnZhciByZXF1aXJlX21vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1vdmUgPSBtb3ZlMzsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGZ1bmN0aW9uIG1vdmUzKGZyb20sIHRvKSB7CiAgICAgIGlmICh0byA9PT0gdm9pZCAwKSB7CiAgICAgICAgdG8gPSBmcm9tOwogICAgICAgIGZyb20gPSAiLyI7CiAgICAgIH0KICAgICAgY29uc3QgZnJvbVBhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgZnJvbSk7CiAgICAgIGNvbnN0IHRvUGF0aCA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyB0byk7CiAgICAgIGlmIChmcm9tUGF0aCA9PT0gdG9QYXRoKSB7CiAgICAgICAgcmV0dXJuIGJhc2VfMS5ub29wOwogICAgICB9CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIGlmICh0cmVlLmV4aXN0cyhmcm9tUGF0aCkpIHsKICAgICAgICAgIHRyZWUucmVuYW1lKGZyb21QYXRoLCB0b1BhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cmVlLmdldERpcihmcm9tUGF0aCkudmlzaXQoKHBhdGgpID0+IHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgKDAsIGNvcmVfMS5qb2luKSh0b1BhdGgsIHBhdGguc2xpY2UoZnJvbVBhdGgubGVuZ3RoKSkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmYXVsdF8xOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIGZ1bmN0aW9uIGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgobCkgewogICAgICByZXR1cm4gbmV3IEFycmF5KGwpLmZpbGwoMCkubWFwKChfeCkgPT4gewogICAgICAgIHJldHVybiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI2KV07CiAgICAgIH0pLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gcmFuZG9tKGZyb20sIHRvKSB7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAodG8gLSBmcm9tKSkgKyBmcm9tOwogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdF8xKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICBjb25zdCByb290ID0gInJvb3QiIGluIG9wdGlvbnMgPyBvcHRpb25zLnJvb3QgOiAiLyI7CiAgICAgICAgY29uc3QgbWFwMiA9IG5ldyBob3N0X3RyZWVfMS5Ib3N0VHJlZSgpOwogICAgICAgIGNvbnN0IG5iRmlsZXMgPSAibXVsdGlGaWxlcyIgaW4gb3B0aW9ucyA/IHR5cGVvZiBvcHRpb25zLm11bHRpRmlsZXMgPT0gIm51bWJlciIgPyBvcHRpb25zLm11bHRpRmlsZXMgOiByYW5kb20oMiwgMTIpIDogMTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5iRmlsZXM7IGkrKykgewogICAgICAgICAgY29uc3QgcGF0aCA9ICJhL2IvYy9kL2UvZiIuc2xpY2UoTWF0aC5yYW5kb20oKSAqIDEwKTsKICAgICAgICAgIGNvbnN0IGZpbGVOYW1lID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgyMCk7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgxMDApOwogICAgICAgICAgbWFwMi5jcmVhdGUocm9vdCArICIvIiArIHBhdGggKyAiLyIgKyBmaWxlTmFtZSwgY29udGVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzCnZhciByZXF1aXJlX3NjaGVtYXRpYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzCnZhciByZXF1aXJlX3RlbXBsYXRlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93blBpcGVFeGNlcHRpb24gPSBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmFwcGx5Q29udGVudFRlbXBsYXRlID0gYXBwbHlDb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5jb250ZW50VGVtcGxhdGUgPSBjb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5hcHBseVBhdGhUZW1wbGF0ZSA9IGFwcGx5UGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucGF0aFRlbXBsYXRlID0gcGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucmVuYW1lVGVtcGxhdGVGaWxlcyA9IHJlbmFtZVRlbXBsYXRlRmlsZXM7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIGV4cG9ydHMyLmFwcGx5VGVtcGxhdGVzID0gYXBwbHlUZW1wbGF0ZXM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgYmFzZV8xID0gcmVxdWlyZV9iYXNlMigpOwogICAgZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSAvXC50ZW1wbGF0ZSQvOwogICAgdmFyIE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYE9wdGlvbiAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBub3QgZGVmaW5lZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gVW5rbm93blBpcGVFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBpcGVFeGNlcHRpb24gPSBJbnZhbGlkUGlwZUV4Y2VwdGlvbjsKICAgIHZhciBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIsIHsgZmF0YWw6IHRydWUgfSk7CiAgICBmdW5jdGlvbiBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGVudHJ5OwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb25zdCBkZWNvZGVkQ29udGVudCA9IGRlY29kZXIuZGVjb2RlKGNvbnRlbnQpLnJlcGxhY2UoL1xyP1xuL2csIG5vZGVfb3NfMS5FT0wpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20oKDAsIGNvcmVfMS50ZW1wbGF0ZSkoZGVjb2RlZENvbnRlbnQsIHt9KShvcHRpb25zKSkKICAgICAgICAgIH07CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5UGF0aFRlbXBsYXRlKGRhdGEsIG9wdGlvbnMgPSB7CiAgICAgIGludGVycG9sYXRpb25TdGFydDogIl9fIiwKICAgICAgaW50ZXJwb2xhdGlvbkVuZDogIl9fIiwKICAgICAgcGlwZVNlcGFyYXRvcjogIkAiCiAgICB9KSB7CiAgICAgIGNvbnN0IGlzID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uU3RhcnQ7CiAgICAgIGNvbnN0IGllID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kOwogICAgICBjb25zdCBpc0wgPSBpcy5sZW5ndGg7CiAgICAgIGNvbnN0IGllTCA9IGllLmxlbmd0aDsKICAgICAgcmV0dXJuIChlbnRyeSkgPT4gewogICAgICAgIGxldCBwYXRoID0gZW50cnkucGF0aDsKICAgICAgICBjb25zdCBjb250ZW50ID0gZW50cnkuY29udGVudDsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHBhdGg7CiAgICAgICAgbGV0IHN0YXJ0ID0gcGF0aC5pbmRleE9mKGlzKTsKICAgICAgICBsZXQgZW5kID0gcGF0aC5pbmRleE9mKGllLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIHdoaWxlIChzdGFydCAhPSAtMSAmJiBlbmQgIT0gLTEpIHsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5zdWJzdHJpbmcoc3RhcnQgKyBpc0wsIGVuZCk7CiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBkYXRhW21hdGNoXTsKICAgICAgICAgIGlmICghb3B0aW9ucy5waXBlU2VwYXJhdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG1hdGNoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgW25hbWUsIC4uLnBpcGVzXSA9IG1hdGNoLnNwbGl0KG9wdGlvbnMucGlwZVNlcGFyYXRvcik7CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gZGF0YVtuYW1lXTsKICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC5jYWxsKGRhdGEsIG9yaWdpbmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24obmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSBwaXBlcy5yZWR1Y2UoKGFjYywgcGlwZSkgPT4gewogICAgICAgICAgICAgIGlmICghcGlwZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKCEocGlwZSBpbiBkYXRhKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25QaXBlRXhjZXB0aW9uKHBpcGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwaXBlRm4gPSBkYXRhW3BpcGVdOwogICAgICAgICAgICAgIGlmICh0eXBlb2YgcGlwZUZuICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuICIiICsgcGlwZUZuKGFjYyk7CiAgICAgICAgICAgIH0sICIiICsgcmVwbGFjZW1lbnQpOwogICAgICAgICAgfQogICAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHN0YXJ0KSArIHJlcGxhY2VtZW50ICsgcGF0aC5zdWJzdHJpbmcoZW5kICsgaWVMKTsKICAgICAgICAgIHN0YXJ0ID0gcGF0aC5pbmRleE9mKG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0KTsKICAgICAgICAgIGVuZCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25FbmQsIHN0YXJ0ICsgaXNMICsgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IHBhdGg6ICgwLCBjb3JlXzEubm9ybWFsaXplKShwYXRoKSwgY29udGVudCB9OwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGF0aFRlbXBsYXRlKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoYXBwbHlQYXRoVGVtcGxhdGUob3B0aW9ucykpOwogICAgfQogICAgZnVuY3Rpb24gcmVuYW1lVGVtcGxhdGVGaWxlcygpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKGVudHJ5LnBhdGgubWF0Y2goZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUpKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBjb250ZW50OiBlbnRyeS5jb250ZW50LAogICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikpCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmNoYWluKShbCiAgICAgICAgY29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIEZvcmNlIGNhc3QgdG8gUGF0aFRlbXBsYXRlRGF0YS4gV2UgbmVlZCB0aGUgdHlwZSBmb3IgdGhlIGFjdHVhbCBwYXRoVGVtcGxhdGUoKSBjYWxsLAogICAgICAgIC8vIGJ1dCBpbiB0aGlzIGNhc2Ugd2UgY2Fubm90IGRvIGFueXRoaW5nIGFzIGNvbnRlbnRUZW1wbGF0ZSBhcmUgbW9yZSBwZXJtaXNzaXZlLgogICAgICAgIC8vIFNpbmNlIHZhbHVlcyBhcmUgY29lcmNlZCB0byBzdHJpbmdzIGluIFBhdGhUZW1wbGF0ZXMgaXQgd2lsbCBiZSBmaW5lIGluIHRoZSBlbmQuCiAgICAgICAgcGF0aFRlbXBsYXRlKG9wdGlvbnMpCiAgICAgIF0pOwogICAgfQogICAgZnVuY3Rpb24gYXBwbHlUZW1wbGF0ZXMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKSgoMCwgYmFzZV8xLndoZW4pKChwYXRoKSA9PiBwYXRoLmVuZHNXaXRoKCIudGVtcGxhdGUiKSwgKDAsIGJhc2VfMS5jb21wb3NlRmlsZU9wZXJhdG9ycykoWwogICAgICAgIGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIFNlZSBhYm92ZSBmb3IgdGhpcyB3ZWlyZCBjYXN0LgogICAgICAgIGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIChlbnRyeSkgPT4gewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICBdKSkpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi51cmwgPSB1cmwzOwogICAgdmFyIHVybF8xID0gcmVxdWlyZSgidXJsIik7CiAgICBmdW5jdGlvbiB1cmwzKHVybFN0cmluZykgewogICAgICBjb25zdCB1cmw0ID0gKDAsIHVybF8xLnBhcnNlKSh1cmxTdHJpbmcpOwogICAgICByZXR1cm4gKGNvbnRleHQpID0+IGNvbnRleHQuZW5naW5lLmNyZWF0ZVNvdXJjZUZyb21VcmwodXJsNCwgY29udGV4dCkoY29udGV4dCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UcmVlID0gZXhwb3J0czIud29ya2Zsb3cgPSBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIuZm9ybWF0cyA9IGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ3MiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuc3RyaW5nczsKICAgIH0gfSk7CiAgICB2YXIgZm9ybWF0cyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2Zvcm1hdHMyKCkpOwogICAgZXhwb3J0czIuZm9ybWF0cyA9IGZvcm1hdHM7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgd29ya2Zsb3cgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV93b3JrZmxvdygpKTsKICAgIGV4cG9ydHMyLndvcmtmbG93ID0gd29ya2Zsb3c7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjaGVtYXRpY3NFeGNlcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FjdGlvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbmdpbmUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2V4Y2VwdGlvbjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlMygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jYWxsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21vdmUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmFuZG9tKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYzIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3VybCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWxlZ2F0ZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbXB0eTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdF90cmVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kcnlydW4oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2luaygpLCBleHBvcnRzMik7CiAgICBleHBvcnRzMi5UcmVlID0gewogICAgICBlbXB0eSgpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICB9LAogICAgICBicmFuY2godHJlZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEuYnJhbmNoKSh0cmVlKTsKICAgICAgfSwKICAgICAgbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5tZXJnZSkodHJlZSwgb3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgfSwKICAgICAgcGFydGl0aW9uKHRyZWUsIHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEucGFydGl0aW9uKSh0cmVlLCBwcmVkaWNhdGUpOwogICAgICB9LAogICAgICBvcHRpbWl6ZSh0cmVlKSB7CiAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3N0cmlwLWpzb24tY29tbWVudHMtbnBtLTMuMS4xLWRjYjIzMjQ4MjMtMTAuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy0xMC56aXAvbm9kZV9tb2R1bGVzL3N0cmlwLWpzb24tY29tbWVudHMvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2luZ2xlQ29tbWVudCA9IFN5bWJvbCgic2luZ2xlQ29tbWVudCIpOwogICAgdmFyIG11bHRpQ29tbWVudCA9IFN5bWJvbCgibXVsdGlDb21tZW50Iik7CiAgICB2YXIgc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA9ICgpID0+ICIiOwogICAgdmFyIHN0cmlwV2l0aFdoaXRlc3BhY2UgPSAoc3RyaW5nLCBzdGFydCwgZW5kKSA9PiBzdHJpbmcuc2xpY2Uoc3RhcnQsIGVuZCkucmVwbGFjZSgvXFMvZywgIiAiKTsKICAgIHZhciBpc0VzY2FwZWQgPSAoanNvblN0cmluZywgcXVvdGVQb3NpdGlvbikgPT4gewogICAgICBsZXQgaW5kZXggPSBxdW90ZVBvc2l0aW9uIC0gMTsKICAgICAgbGV0IGJhY2tzbGFzaENvdW50ID0gMDsKICAgICAgd2hpbGUgKGpzb25TdHJpbmdbaW5kZXhdID09PSAiXFwiKSB7CiAgICAgICAgaW5kZXggLT0gMTsKICAgICAgICBiYWNrc2xhc2hDb3VudCArPSAxOwogICAgICB9CiAgICAgIHJldHVybiBCb29sZWFuKGJhY2tzbGFzaENvdW50ICUgMik7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gKGpzb25TdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGpzb25TdHJpbmcgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgYXJndW1lbnQgXGBqc29uU3RyaW5nXGAgdG8gYmUgYSBcYHN0cmluZ1xgLCBnb3QgXGAke3R5cGVvZiBqc29uU3RyaW5nfVxgYCk7CiAgICAgIH0KICAgICAgY29uc3Qgc3RyaXAgPSBvcHRpb25zLndoaXRlc3BhY2UgPT09IGZhbHNlID8gc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA6IHN0cmlwV2l0aFdoaXRlc3BhY2U7CiAgICAgIGxldCBpbnNpZGVTdHJpbmcgPSBmYWxzZTsKICAgICAgbGV0IGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgbGV0IG9mZnNldCA9IDA7CiAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBqc29uU3RyaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3VycmVudENoYXJhY3RlciA9IGpzb25TdHJpbmdbaV07CiAgICAgICAgY29uc3QgbmV4dENoYXJhY3RlciA9IGpzb25TdHJpbmdbaSArIDFdOwogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSBpc0VzY2FwZWQoanNvblN0cmluZywgaSk7CiAgICAgICAgICBpZiAoIWVzY2FwZWQpIHsKICAgICAgICAgICAgaW5zaWRlU3RyaW5nID0gIWluc2lkZVN0cmluZzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGluc2lkZVN0cmluZykgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIi8vIikgewogICAgICAgICAgcmVzdWx0ICs9IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gc2luZ2xlQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICJcclxuIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChpbnNpZGVDb21tZW50ID09PSBzaW5nbGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICJcbiIpIHsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgICAgIHJlc3VsdCArPSBzdHJpcChqc29uU3RyaW5nLCBvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICB9IGVsc2UgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLyoiKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBtdWx0aUNvbW1lbnQ7CiAgICAgICAgICBpKys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IG11bHRpQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIiovIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSArIDEpOwogICAgICAgICAgb2Zmc2V0ID0gaSArIDE7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdCArIChpbnNpZGVDb21tZW50ID8gc3RyaXAoanNvblN0cmluZy5zbGljZShvZmZzZXQpKSA6IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0KSk7CiAgICB9OwogIH0KfSk7CgovLyBzcmMvc2NoZW1hdGljL2luZGV4LnRzCnZhciBpbmRleF9leHBvcnRzID0ge307Cl9fZXhwb3J0KGluZGV4X2V4cG9ydHMsIHsKICBtYWluOiAoKSA9PiBtYWluCn0pOwptb2R1bGUuZXhwb3J0cyA9IF9fdG9Db21tb25KUyhpbmRleF9leHBvcnRzKTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIGltcG9ydF9zY2hlbWF0aWNzOSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9qc29uLnV0aWxzLnRzCnZhciBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cyA9IF9fdG9FU00ocmVxdWlyZV9zdHJpcF9qc29uX2NvbW1lbnRzKCksIDEpOwp2YXIgc2VyaWFsaXplSnNvbiA9IChqc29uMikgPT4gYCR7SlNPTi5zdHJpbmdpZnkoanNvbjIsIG51bGwsIDIpfQpgOwp2YXIgcmVhZEpzb25JblRyZWUgPSAoaG9zdCwgcGF0aCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgJHtwYXRofWApOwogIH0KICBjb25zdCBjb250ZW50cyA9ICgwLCBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cy5kZWZhdWx0KShob3N0LnJlYWQocGF0aCk/LnRvU3RyaW5nKCJ1dGYtOCIpIHx8ICIiKTsKICB0cnkgewogICAgcmV0dXJuIEpTT04ucGFyc2UoY29udGVudHMpOwogIH0gY2F0Y2ggKGUpIHsKICAgIGNvbnN0IGVycm9yID0gZTsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHBhcnNlICR7cGF0aH06ICR7ZXJyb3IubWVzc2FnZX1gKTsKICB9Cn07CnZhciB1cGRhdGVKc29uSW5UcmVlID0gKHBhdGgsIGNhbGxiYWNrKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIGhvc3QuY3JlYXRlKHBhdGgsIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2soe30sIGNvbnRleHQpKSk7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgaG9zdC5vdmVyd3JpdGUoCiAgICBwYXRoLAogICAgc2VyaWFsaXplSnNvbihjYWxsYmFjayhyZWFkSnNvbkluVHJlZShob3N0LCBwYXRoKSwgY29udGV4dCkpCiAgKTsKICByZXR1cm4gaG9zdDsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvdXRpbHMvdHNjb25maWcudXRpbHMudHMKdmFyIHVwZGF0ZVRzQ29uZmlnSW5UcmVlID0gKGNvbXBpbGVyT3B0aW9ucykgPT4gdXBkYXRlSnNvbkluVHJlZSgidHNjb25maWcuanNvbiIsICh0c2NvbmZpZykgPT4gKHsKICAuLi50c2NvbmZpZywKICBjb21waWxlck9wdGlvbnMKfSkpOwoKLy8gc3JjL3NjaGVtYXRpYy9ydWxlcy91cGRhdGUtdHMtY29uZmlnLnJ1bGUudHMKdmFyIHVwZGF0ZVRzQ29uZmlnUnVsZSA9IGFzeW5jICgpID0+IHsKICBjb25zdCB7IHRzQ29uZmlnIH0gPSBhd2FpdCBpbXBvcnQoIkBhdGxzL2NvZGUtcnVudGltZSIpOwogIHJldHVybiB1cGRhdGVUc0NvbmZpZ0luVHJlZSh7CiAgICAuLi50c0NvbmZpZy5jb21waWxlck9wdGlvbnMKICB9KTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1jb21tb24uc291cmNlLnRzCnZhciBpbXBvcnRfY29yZSA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljcyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MyID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczMgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgZ2VuZXJhdGVDb21tb25Tb3VyY2UgPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzLmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M0LnVybCkoIi4uL3RlbXBsYXRlcy9jb21tb24iKSwgWwogICgwLCBpbXBvcnRfc2NoZW1hdGljczIudGVtcGxhdGUpKHsKICAgIC4uLmltcG9ydF9jb3JlLnN0cmluZ3MsCiAgICAuLi5vcHRpb25zLAogICAgZG90OiAiLiIKICB9KSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MzLm1vdmUpKCIuLyIpCl0pOwoKLy8gc3JjL3NjaGVtYXRpYy9zb3VyY2VzL2dlbmVyYXRlLXByb2plY3Qtc3BlY2lmaWMuc291cmNlLnRzCnZhciBpbXBvcnRfbm9kZV9mcyA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKdmFyIGltcG9ydF9ub2RlX3BhdGggPSByZXF1aXJlKCJub2RlOnBhdGgiKTsKdmFyIGltcG9ydF9jb3JlMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M3ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczggPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlID0gKG9wdGlvbnMpID0+IHsKICBjb25zdCB7IG5hbWU6IHByb2plY3ROYW1lIH0gPSBKU09OLnBhcnNlKAogICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tc3luYwogICAgKDAsIGltcG9ydF9ub2RlX2ZzLnJlYWRGaWxlU3luYykoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikob3B0aW9ucy5jd2QsICJwYWNrYWdlLmpzb24iKSwgInV0Zi04IikKICApOwogIHJldHVybiAoMCwgaW1wb3J0X3NjaGVtYXRpY3M1LmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M2LnVybCkoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikoIi4uL3RlbXBsYXRlcyIsIG9wdGlvbnMudHlwZSkpLCBbCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3M3LnRlbXBsYXRlKSh7CiAgICAgIC4uLmltcG9ydF9jb3JlMi5zdHJpbmdzLAogICAgICAuLi5vcHRpb25zLAogICAgICBwcm9qZWN0TmFtZSwKICAgICAgZG90OiAiLiIKICAgIH0pLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzOC5tb3ZlKSgiLi8iKQogIF0pOwp9OwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9tZXJnZS1naXRpZ25vcmUtY29udGVudC51dGlscy50cwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19TVEFSVF9NQVJLRVIgPSAiIyByYWlqaW46YmVnaW4gcHJvamVjdC1zcGVjaWZpYyBnaXRpZ25vcmUiOwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19FTkRfTUFSS0VSID0gIiMgcmFpamluOmVuZCBwcm9qZWN0LXNwZWNpZmljIGdpdGlnbm9yZSI7CnZhciBub3JtYWxpemVDb250ZW50ID0gKGNvbnRlbnQpID0+IGNvbnRlbnQucmVwbGFjZSgvXHJcbi9nLCAiXG4iKTsKdmFyIGdldE5vcm1hbGl6ZWRMaW5lcyA9IChjb250ZW50KSA9PiBub3JtYWxpemVDb250ZW50KGNvbnRlbnQpLnNwbGl0KCJcbiIpOwp2YXIgdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyA9IChsaW5lcykgPT4gewogIGNvbnN0IG5vcm1hbGl6ZWRMaW5lcyA9IFsuLi5saW5lc107CiAgd2hpbGUgKG5vcm1hbGl6ZWRMaW5lcy5sZW5ndGggPiAwICYmIG5vcm1hbGl6ZWRMaW5lc1tub3JtYWxpemVkTGluZXMubGVuZ3RoIC0gMV0gPT09ICIiKSB7CiAgICBub3JtYWxpemVkTGluZXMucG9wKCk7CiAgfQogIHJldHVybiBub3JtYWxpemVkTGluZXM7Cn07CnZhciBpc1Byb2plY3RTcGVjaWZpY0xpbmUgPSAobGluZSwgdGVtcGxhdGVMaW5lU2V0KSA9PiBsaW5lICE9PSAiIiAmJiAhdGVtcGxhdGVMaW5lU2V0LmhhcyhsaW5lKSAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX1NUQVJUX01BUktFUiAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVI7CnZhciBnZXRQcm9qZWN0U3BlY2lmaWNMaW5lcyA9IChleGlzdGluZ0xpbmVzLCB0ZW1wbGF0ZUxpbmVTZXQpID0+IHsKICBjb25zdCBzdGFydEluZGV4ID0gZXhpc3RpbmdMaW5lcy5pbmRleE9mKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBjb25zdCBlbmRJbmRleCA9IGV4aXN0aW5nTGluZXMuaW5kZXhPZihQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVIpOwogIGlmIChzdGFydEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCA+IHN0YXJ0SW5kZXgpIHsKICAgIHJldHVybiBBcnJheS5mcm9tKAogICAgICBuZXcgU2V0KGV4aXN0aW5nTGluZXMuZmlsdGVyKChsaW5lKSA9PiBpc1Byb2plY3RTcGVjaWZpY0xpbmUobGluZSwgdGVtcGxhdGVMaW5lU2V0KSkpCiAgICApOwogIH0KICByZXR1cm4gZXhpc3RpbmdMaW5lcy5maWx0ZXIoKGxpbmUpID0+IGlzUHJvamVjdFNwZWNpZmljTGluZShsaW5lLCB0ZW1wbGF0ZUxpbmVTZXQpKTsKfTsKdmFyIG1lcmdlR2l0SWdub3JlQ29udGVudCA9ICh7CiAgZXhpc3RpbmdDb250ZW50LAogIHRlbXBsYXRlQ29udGVudAp9KSA9PiB7CiAgY29uc3QgdGVtcGxhdGVMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyh0ZW1wbGF0ZUNvbnRlbnQpOwogIGNvbnN0IHRlbXBsYXRlTGluZVNldCA9IG5ldyBTZXQodGVtcGxhdGVMaW5lcyk7CiAgY29uc3QgZXhpc3RpbmdMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyhleGlzdGluZ0NvbnRlbnQpOwogIGNvbnN0IHByb2plY3RTcGVjaWZpY0xpbmVzID0gZ2V0UHJvamVjdFNwZWNpZmljTGluZXMoZXhpc3RpbmdMaW5lcywgdGVtcGxhdGVMaW5lU2V0KTsKICBpZiAocHJvamVjdFNwZWNpZmljTGluZXMubGVuZ3RoID09PSAwKSB7CiAgICByZXR1cm4gdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyh0ZW1wbGF0ZUxpbmVzKS5qb2luKCJcbiIpOwogIH0KICBjb25zdCBtZXJnZWRMaW5lcyA9IHRyaW1UcmFpbGluZ0VtcHR5TGluZXModGVtcGxhdGVMaW5lcyk7CiAgaWYgKG1lcmdlZExpbmVzLmxlbmd0aCA+IDApIHsKICAgIG1lcmdlZExpbmVzLnB1c2goIiIpOwogIH0KICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBtZXJnZWRMaW5lcy5wdXNoKC4uLnByb2plY3RTcGVjaWZpY0xpbmVzKTsKICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfRU5EX01BUktFUik7CiAgcmV0dXJuIG1lcmdlZExpbmVzLmpvaW4oIlxuIik7Cn07CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qcy15YW1sLW5wbS00LjEuMC0zNjA2ZjMyMzEyLTEwLnppcC9ub2RlX21vZHVsZXMvanMteWFtbC9kaXN0L2pzLXlhbWwubWpzCmZ1bmN0aW9uIGlzTm90aGluZyhzdWJqZWN0KSB7CiAgcmV0dXJuIHR5cGVvZiBzdWJqZWN0ID09PSAidW5kZWZpbmVkIiB8fCBzdWJqZWN0ID09PSBudWxsOwp9CmZ1bmN0aW9uIGlzT2JqZWN0KHN1YmplY3QpIHsKICByZXR1cm4gdHlwZW9mIHN1YmplY3QgPT09ICJvYmplY3QiICYmIHN1YmplY3QgIT09IG51bGw7Cn0KZnVuY3Rpb24gdG9BcnJheShzZXF1ZW5jZSkgewogIGlmIChBcnJheS5pc0FycmF5KHNlcXVlbmNlKSkgcmV0dXJuIHNlcXVlbmNlOwogIGVsc2UgaWYgKGlzTm90aGluZyhzZXF1ZW5jZSkpIHJldHVybiBbXTsKICByZXR1cm4gW3NlcXVlbmNlXTsKfQpmdW5jdGlvbiBleHRlbmQodGFyZ2V0LCBzb3VyY2UpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwga2V5LCBzb3VyY2VLZXlzOwogIGlmIChzb3VyY2UpIHsKICAgIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsKICAgIH0KICB9CiAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiByZXBlYXQoc3RyaW5nLCBjb3VudCkgewogIHZhciByZXN1bHQgPSAiIiwgY3ljbGU7CiAgZm9yIChjeWNsZSA9IDA7IGN5Y2xlIDwgY291bnQ7IGN5Y2xlICs9IDEpIHsKICAgIHJlc3VsdCArPSBzdHJpbmc7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gaXNOZWdhdGl2ZVplcm8obnVtYmVyKSB7CiAgcmV0dXJuIG51bWJlciA9PT0gMCAmJiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IDEgLyBudW1iZXI7Cn0KdmFyIGlzTm90aGluZ18xID0gaXNOb3RoaW5nOwp2YXIgaXNPYmplY3RfMSA9IGlzT2JqZWN0Owp2YXIgdG9BcnJheV8xID0gdG9BcnJheTsKdmFyIHJlcGVhdF8xID0gcmVwZWF0Owp2YXIgaXNOZWdhdGl2ZVplcm9fMSA9IGlzTmVnYXRpdmVaZXJvOwp2YXIgZXh0ZW5kXzEgPSBleHRlbmQ7CnZhciBjb21tb24gPSB7CiAgaXNOb3RoaW5nOiBpc05vdGhpbmdfMSwKICBpc09iamVjdDogaXNPYmplY3RfMSwKICB0b0FycmF5OiB0b0FycmF5XzEsCiAgcmVwZWF0OiByZXBlYXRfMSwKICBpc05lZ2F0aXZlWmVybzogaXNOZWdhdGl2ZVplcm9fMSwKICBleHRlbmQ6IGV4dGVuZF8xCn07CmZ1bmN0aW9uIGZvcm1hdEVycm9yKGV4Y2VwdGlvbjIsIGNvbXBhY3QpIHsKICB2YXIgd2hlcmUgPSAiIiwgbWVzc2FnZSA9IGV4Y2VwdGlvbjIucmVhc29uIHx8ICIodW5rbm93biByZWFzb24pIjsKICBpZiAoIWV4Y2VwdGlvbjIubWFyaykgcmV0dXJuIG1lc3NhZ2U7CiAgaWYgKGV4Y2VwdGlvbjIubWFyay5uYW1lKSB7CiAgICB3aGVyZSArPSAnaW4gIicgKyBleGNlcHRpb24yLm1hcmsubmFtZSArICciICc7CiAgfQogIHdoZXJlICs9ICIoIiArIChleGNlcHRpb24yLm1hcmsubGluZSArIDEpICsgIjoiICsgKGV4Y2VwdGlvbjIubWFyay5jb2x1bW4gKyAxKSArICIpIjsKICBpZiAoIWNvbXBhY3QgJiYgZXhjZXB0aW9uMi5tYXJrLnNuaXBwZXQpIHsKICAgIHdoZXJlICs9ICJcblxuIiArIGV4Y2VwdGlvbjIubWFyay5zbmlwcGV0OwogIH0KICByZXR1cm4gbWVzc2FnZSArICIgIiArIHdoZXJlOwp9CmZ1bmN0aW9uIFlBTUxFeGNlcHRpb24kMShyZWFzb24sIG1hcmspIHsKICBFcnJvci5jYWxsKHRoaXMpOwogIHRoaXMubmFtZSA9ICJZQU1MRXhjZXB0aW9uIjsKICB0aGlzLnJlYXNvbiA9IHJlYXNvbjsKICB0aGlzLm1hcmsgPSBtYXJrOwogIHRoaXMubWVzc2FnZSA9IGZvcm1hdEVycm9yKHRoaXMsIGZhbHNlKTsKICBpZiAoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpIHsKICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpOwogIH0gZWxzZSB7CiAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2sgfHwgIiI7CiAgfQp9CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBZQU1MRXhjZXB0aW9uJDE7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZyhjb21wYWN0KSB7CiAgcmV0dXJuIHRoaXMubmFtZSArICI6ICIgKyBmb3JtYXRFcnJvcih0aGlzLCBjb21wYWN0KTsKfTsKdmFyIGV4Y2VwdGlvbiA9IFlBTUxFeGNlcHRpb24kMTsKZnVuY3Rpb24gZ2V0TGluZShidWZmZXIsIGxpbmVTdGFydCwgbGluZUVuZCwgcG9zaXRpb24sIG1heExpbmVMZW5ndGgpIHsKICB2YXIgaGVhZCA9ICIiOwogIHZhciB0YWlsID0gIiI7CiAgdmFyIG1heEhhbGZMZW5ndGggPSBNYXRoLmZsb29yKG1heExpbmVMZW5ndGggLyAyKSAtIDE7CiAgaWYgKHBvc2l0aW9uIC0gbGluZVN0YXJ0ID4gbWF4SGFsZkxlbmd0aCkgewogICAgaGVhZCA9ICIgLi4uICI7CiAgICBsaW5lU3RhcnQgPSBwb3NpdGlvbiAtIG1heEhhbGZMZW5ndGggKyBoZWFkLmxlbmd0aDsKICB9CiAgaWYgKGxpbmVFbmQgLSBwb3NpdGlvbiA+IG1heEhhbGZMZW5ndGgpIHsKICAgIHRhaWwgPSAiIC4uLiI7CiAgICBsaW5lRW5kID0gcG9zaXRpb24gKyBtYXhIYWxmTGVuZ3RoIC0gdGFpbC5sZW5ndGg7CiAgfQogIHJldHVybiB7CiAgICBzdHI6IGhlYWQgKyBidWZmZXIuc2xpY2UobGluZVN0YXJ0LCBsaW5lRW5kKS5yZXBsYWNlKC9cdC9nLCAiXHUyMTkyIikgKyB0YWlsLAogICAgcG9zOiBwb3NpdGlvbiAtIGxpbmVTdGFydCArIGhlYWQubGVuZ3RoCiAgICAvLyByZWxhdGl2ZSBwb3NpdGlvbgogIH07Cn0KZnVuY3Rpb24gcGFkU3RhcnQoc3RyaW5nLCBtYXgpIHsKICByZXR1cm4gY29tbW9uLnJlcGVhdCgiICIsIG1heCAtIHN0cmluZy5sZW5ndGgpICsgc3RyaW5nOwp9CmZ1bmN0aW9uIG1ha2VTbmlwcGV0KG1hcmssIG9wdGlvbnMpIHsKICBvcHRpb25zID0gT2JqZWN0LmNyZWF0ZShvcHRpb25zIHx8IG51bGwpOwogIGlmICghbWFyay5idWZmZXIpIHJldHVybiBudWxsOwogIGlmICghb3B0aW9ucy5tYXhMZW5ndGgpIG9wdGlvbnMubWF4TGVuZ3RoID0gNzk7CiAgaWYgKHR5cGVvZiBvcHRpb25zLmluZGVudCAhPT0gIm51bWJlciIpIG9wdGlvbnMuaW5kZW50ID0gMTsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNCZWZvcmUgIT09ICJudW1iZXIiKSBvcHRpb25zLmxpbmVzQmVmb3JlID0gMzsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNBZnRlciAhPT0gIm51bWJlciIpIG9wdGlvbnMubGluZXNBZnRlciA9IDI7CiAgdmFyIHJlID0gL1xyP1xufFxyfFwwL2c7CiAgdmFyIGxpbmVTdGFydHMgPSBbMF07CiAgdmFyIGxpbmVFbmRzID0gW107CiAgdmFyIG1hdGNoOwogIHZhciBmb3VuZExpbmVObyA9IC0xOwogIHdoaWxlIChtYXRjaCA9IHJlLmV4ZWMobWFyay5idWZmZXIpKSB7CiAgICBsaW5lRW5kcy5wdXNoKG1hdGNoLmluZGV4KTsKICAgIGxpbmVTdGFydHMucHVzaChtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCk7CiAgICBpZiAobWFyay5wb3NpdGlvbiA8PSBtYXRjaC5pbmRleCAmJiBmb3VuZExpbmVObyA8IDApIHsKICAgICAgZm91bmRMaW5lTm8gPSBsaW5lU3RhcnRzLmxlbmd0aCAtIDI7CiAgICB9CiAgfQogIGlmIChmb3VuZExpbmVObyA8IDApIGZvdW5kTGluZU5vID0gbGluZVN0YXJ0cy5sZW5ndGggLSAxOwogIHZhciByZXN1bHQgPSAiIiwgaSwgbGluZTsKICB2YXIgbGluZU5vTGVuZ3RoID0gTWF0aC5taW4obWFyay5saW5lICsgb3B0aW9ucy5saW5lc0FmdGVyLCBsaW5lRW5kcy5sZW5ndGgpLnRvU3RyaW5nKCkubGVuZ3RoOwogIHZhciBtYXhMaW5lTGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggLSAob3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzKTsKICBmb3IgKGkgPSAxOyBpIDw9IG9wdGlvbnMubGluZXNCZWZvcmU7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vIC0gaSA8IDApIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ID0gY29tbW9uLnJlcGVhdCgiICIsIG9wdGlvbnMuaW5kZW50KSArIHBhZFN0YXJ0KChtYXJrLmxpbmUgLSBpICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iICsgcmVzdWx0OwogIH0KICBsaW5lID0gZ2V0TGluZShtYXJrLmJ1ZmZlciwgbGluZVN0YXJ0c1tmb3VuZExpbmVOb10sIGxpbmVFbmRzW2ZvdW5kTGluZU5vXSwgbWFyay5wb3NpdGlvbiwgbWF4TGluZUxlbmd0aCk7CiAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iOwogIHJlc3VsdCArPSBjb21tb24ucmVwZWF0KCItIiwgb3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzICsgbGluZS5wb3MpICsgIl5cbiI7CiAgZm9yIChpID0gMTsgaSA8PSBvcHRpb25zLmxpbmVzQWZ0ZXI7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vICsgaSA+PSBsaW5lRW5kcy5sZW5ndGgpIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgaSArIDEpLnRvU3RyaW5nKCksIGxpbmVOb0xlbmd0aCkgKyAiIHwgIiArIGxpbmUuc3RyICsgIlxuIjsKICB9CiAgcmV0dXJuIHJlc3VsdC5yZXBsYWNlKC9cbiQvLCAiIik7Cn0KdmFyIHNuaXBwZXQgPSBtYWtlU25pcHBldDsKdmFyIFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUyA9IFsKICAia2luZCIsCiAgIm11bHRpIiwKICAicmVzb2x2ZSIsCiAgImNvbnN0cnVjdCIsCiAgImluc3RhbmNlT2YiLAogICJwcmVkaWNhdGUiLAogICJyZXByZXNlbnQiLAogICJyZXByZXNlbnROYW1lIiwKICAiZGVmYXVsdFN0eWxlIiwKICAic3R5bGVBbGlhc2VzIgpdOwp2YXIgWUFNTF9OT0RFX0tJTkRTID0gWwogICJzY2FsYXIiLAogICJzZXF1ZW5jZSIsCiAgIm1hcHBpbmciCl07CmZ1bmN0aW9uIGNvbXBpbGVTdHlsZUFsaWFzZXMobWFwMikgewogIHZhciByZXN1bHQgPSB7fTsKICBpZiAobWFwMiAhPT0gbnVsbCkgewogICAgT2JqZWN0LmtleXMobWFwMikuZm9yRWFjaChmdW5jdGlvbihzdHlsZSkgewogICAgICBtYXAyW3N0eWxlXS5mb3JFYWNoKGZ1bmN0aW9uKGFsaWFzKSB7CiAgICAgICAgcmVzdWx0W1N0cmluZyhhbGlhcyldID0gc3R5bGU7CiAgICAgIH0pOwogICAgfSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gVHlwZSQxKHRhZywgb3B0aW9ucykgewogIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goZnVuY3Rpb24obmFtZSkgewogICAgaWYgKFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUy5pbmRleE9mKG5hbWUpID09PSAtMSkgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCdVbmtub3duIG9wdGlvbiAiJyArIG5hbWUgKyAnIiBpcyBtZXQgaW4gZGVmaW5pdGlvbiBvZiAiJyArIHRhZyArICciIFlBTUwgdHlwZS4nKTsKICAgIH0KICB9KTsKICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zOwogIHRoaXMudGFnID0gdGFnOwogIHRoaXMua2luZCA9IG9wdGlvbnNbImtpbmQiXSB8fCBudWxsOwogIHRoaXMucmVzb2x2ZSA9IG9wdGlvbnNbInJlc29sdmUiXSB8fCBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0cnVlOwogIH07CiAgdGhpcy5jb25zdHJ1Y3QgPSBvcHRpb25zWyJjb25zdHJ1Y3QiXSB8fCBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YTsKICB9OwogIHRoaXMuaW5zdGFuY2VPZiA9IG9wdGlvbnNbImluc3RhbmNlT2YiXSB8fCBudWxsOwogIHRoaXMucHJlZGljYXRlID0gb3B0aW9uc1sicHJlZGljYXRlIl0gfHwgbnVsbDsKICB0aGlzLnJlcHJlc2VudCA9IG9wdGlvbnNbInJlcHJlc2VudCJdIHx8IG51bGw7CiAgdGhpcy5yZXByZXNlbnROYW1lID0gb3B0aW9uc1sicmVwcmVzZW50TmFtZSJdIHx8IG51bGw7CiAgdGhpcy5kZWZhdWx0U3R5bGUgPSBvcHRpb25zWyJkZWZhdWx0U3R5bGUiXSB8fCBudWxsOwogIHRoaXMubXVsdGkgPSBvcHRpb25zWyJtdWx0aSJdIHx8IGZhbHNlOwogIHRoaXMuc3R5bGVBbGlhc2VzID0gY29tcGlsZVN0eWxlQWxpYXNlcyhvcHRpb25zWyJzdHlsZUFsaWFzZXMiXSB8fCBudWxsKTsKICBpZiAoWUFNTF9OT0RFX0tJTkRTLmluZGV4T2YodGhpcy5raW5kKSA9PT0gLTEpIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oJ1Vua25vd24ga2luZCAiJyArIHRoaXMua2luZCArICciIGlzIHNwZWNpZmllZCBmb3IgIicgKyB0YWcgKyAnIiBZQU1MIHR5cGUuJyk7CiAgfQp9CnZhciB0eXBlID0gVHlwZSQxOwpmdW5jdGlvbiBjb21waWxlTGlzdChzY2hlbWEyLCBuYW1lKSB7CiAgdmFyIHJlc3VsdCA9IFtdOwogIHNjaGVtYTJbbmFtZV0uZm9yRWFjaChmdW5jdGlvbihjdXJyZW50VHlwZSkgewogICAgdmFyIG5ld0luZGV4ID0gcmVzdWx0Lmxlbmd0aDsKICAgIHJlc3VsdC5mb3JFYWNoKGZ1bmN0aW9uKHByZXZpb3VzVHlwZSwgcHJldmlvdXNJbmRleCkgewogICAgICBpZiAocHJldmlvdXNUeXBlLnRhZyA9PT0gY3VycmVudFR5cGUudGFnICYmIHByZXZpb3VzVHlwZS5raW5kID09PSBjdXJyZW50VHlwZS5raW5kICYmIHByZXZpb3VzVHlwZS5tdWx0aSA9PT0gY3VycmVudFR5cGUubXVsdGkpIHsKICAgICAgICBuZXdJbmRleCA9IHByZXZpb3VzSW5kZXg7CiAgICAgIH0KICAgIH0pOwogICAgcmVzdWx0W25ld0luZGV4XSA9IGN1cnJlbnRUeXBlOwogIH0pOwogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gY29tcGlsZU1hcCgpIHsKICB2YXIgcmVzdWx0ID0gewogICAgc2NhbGFyOiB7fSwKICAgIHNlcXVlbmNlOiB7fSwKICAgIG1hcHBpbmc6IHt9LAogICAgZmFsbGJhY2s6IHt9LAogICAgbXVsdGk6IHsKICAgICAgc2NhbGFyOiBbXSwKICAgICAgc2VxdWVuY2U6IFtdLAogICAgICBtYXBwaW5nOiBbXSwKICAgICAgZmFsbGJhY2s6IFtdCiAgICB9CiAgfSwgaW5kZXgsIGxlbmd0aDsKICBmdW5jdGlvbiBjb2xsZWN0VHlwZSh0eXBlMikgewogICAgaWYgKHR5cGUyLm11bHRpKSB7CiAgICAgIHJlc3VsdC5tdWx0aVt0eXBlMi5raW5kXS5wdXNoKHR5cGUyKTsKICAgICAgcmVzdWx0Lm11bHRpWyJmYWxsYmFjayJdLnB1c2godHlwZTIpOwogICAgfSBlbHNlIHsKICAgICAgcmVzdWx0W3R5cGUyLmtpbmRdW3R5cGUyLnRhZ10gPSByZXN1bHRbImZhbGxiYWNrIl1bdHlwZTIudGFnXSA9IHR5cGUyOwogICAgfQogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIGFyZ3VtZW50c1tpbmRleF0uZm9yRWFjaChjb2xsZWN0VHlwZSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gU2NoZW1hJDEoZGVmaW5pdGlvbikgewogIHJldHVybiB0aGlzLmV4dGVuZChkZWZpbml0aW9uKTsKfQpTY2hlbWEkMS5wcm90b3R5cGUuZXh0ZW5kID0gZnVuY3Rpb24gZXh0ZW5kMihkZWZpbml0aW9uKSB7CiAgdmFyIGltcGxpY2l0ID0gW107CiAgdmFyIGV4cGxpY2l0ID0gW107CiAgaWYgKGRlZmluaXRpb24gaW5zdGFuY2VvZiB0eXBlKSB7CiAgICBleHBsaWNpdC5wdXNoKGRlZmluaXRpb24pOwogIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkgewogICAgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbik7CiAgfSBlbHNlIGlmIChkZWZpbml0aW9uICYmIChBcnJheS5pc0FycmF5KGRlZmluaXRpb24uaW1wbGljaXQpIHx8IEFycmF5LmlzQXJyYXkoZGVmaW5pdGlvbi5leHBsaWNpdCkpKSB7CiAgICBpZiAoZGVmaW5pdGlvbi5pbXBsaWNpdCkgaW1wbGljaXQgPSBpbXBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5pbXBsaWNpdCk7CiAgICBpZiAoZGVmaW5pdGlvbi5leHBsaWNpdCkgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5leHBsaWNpdCk7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNjaGVtYS5leHRlbmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgVHlwZSwgWyBUeXBlIF0sIG9yIGEgc2NoZW1hIGRlZmluaXRpb24gKHsgaW1wbGljaXQ6IFsuLi5dLCBleHBsaWNpdDogWy4uLl0gfSkiKTsKICB9CiAgaW1wbGljaXQuZm9yRWFjaChmdW5jdGlvbih0eXBlJDEpIHsKICAgIGlmICghKHR5cGUkMSBpbnN0YW5jZW9mIHR5cGUpKSB7CiAgICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNwZWNpZmllZCBsaXN0IG9mIFlBTUwgdHlwZXMgKG9yIGEgc2luZ2xlIFR5cGUgb2JqZWN0KSBjb250YWlucyBhIG5vbi1UeXBlIG9iamVjdC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubG9hZEtpbmQgJiYgdHlwZSQxLmxvYWRLaW5kICE9PSAic2NhbGFyIikgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJUaGVyZSBpcyBhIG5vbi1zY2FsYXIgdHlwZSBpbiB0aGUgaW1wbGljaXQgbGlzdCBvZiBhIHNjaGVtYS4gSW1wbGljaXQgcmVzb2x2aW5nIG9mIHN1Y2ggdHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubXVsdGkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiVGhlcmUgaXMgYSBtdWx0aSB0eXBlIGluIHRoZSBpbXBsaWNpdCBsaXN0IG9mIGEgc2NoZW1hLiBNdWx0aSB0YWdzIGNhbiBvbmx5IGJlIGxpc3RlZCBhcyBleHBsaWNpdC4iKTsKICAgIH0KICB9KTsKICBleHBsaWNpdC5mb3JFYWNoKGZ1bmN0aW9uKHR5cGUkMSkgewogICAgaWYgKCEodHlwZSQxIGluc3RhbmNlb2YgdHlwZSkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiU3BlY2lmaWVkIGxpc3Qgb2YgWUFNTCB0eXBlcyAob3IgYSBzaW5nbGUgVHlwZSBvYmplY3QpIGNvbnRhaW5zIGEgbm9uLVR5cGUgb2JqZWN0LiIpOwogICAgfQogIH0pOwogIHZhciByZXN1bHQgPSBPYmplY3QuY3JlYXRlKFNjaGVtYSQxLnByb3RvdHlwZSk7CiAgcmVzdWx0LmltcGxpY2l0ID0gKHRoaXMuaW1wbGljaXQgfHwgW10pLmNvbmNhdChpbXBsaWNpdCk7CiAgcmVzdWx0LmV4cGxpY2l0ID0gKHRoaXMuZXhwbGljaXQgfHwgW10pLmNvbmNhdChleHBsaWNpdCk7CiAgcmVzdWx0LmNvbXBpbGVkSW1wbGljaXQgPSBjb21waWxlTGlzdChyZXN1bHQsICJpbXBsaWNpdCIpOwogIHJlc3VsdC5jb21waWxlZEV4cGxpY2l0ID0gY29tcGlsZUxpc3QocmVzdWx0LCAiZXhwbGljaXQiKTsKICByZXN1bHQuY29tcGlsZWRUeXBlTWFwID0gY29tcGlsZU1hcChyZXN1bHQuY29tcGlsZWRJbXBsaWNpdCwgcmVzdWx0LmNvbXBpbGVkRXhwbGljaXQpOwogIHJldHVybiByZXN1bHQ7Cn07CnZhciBzY2hlbWEgPSBTY2hlbWEkMTsKdmFyIHN0ciA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpzdHIiLCB7CiAga2luZDogInNjYWxhciIsCiAgY29uc3RydWN0OiBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiAiIjsKICB9Cn0pOwp2YXIgc2VxID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNlcSIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107CiAgfQp9KTsKdmFyIG1hcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptYXAiLCB7CiAga2luZDogIm1hcHBpbmciLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDoge307CiAgfQp9KTsKdmFyIGZhaWxzYWZlID0gbmV3IHNjaGVtYSh7CiAgZXhwbGljaXQ6IFsKICAgIHN0ciwKICAgIHNlcSwKICAgIG1hcAogIF0KfSk7CmZ1bmN0aW9uIHJlc29sdmVZYW1sTnVsbChkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiB0cnVlOwogIHZhciBtYXggPSBkYXRhLmxlbmd0aDsKICByZXR1cm4gbWF4ID09PSAxICYmIGRhdGEgPT09ICJ+IiB8fCBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJudWxsIiB8fCBkYXRhID09PSAiTnVsbCIgfHwgZGF0YSA9PT0gIk5VTEwiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sTnVsbCgpIHsKICByZXR1cm4gbnVsbDsKfQpmdW5jdGlvbiBpc051bGwob2JqZWN0KSB7CiAgcmV0dXJuIG9iamVjdCA9PT0gbnVsbDsKfQp2YXIgX251bGwgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6bnVsbCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE51bGwsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sTnVsbCwKICBwcmVkaWNhdGU6IGlzTnVsbCwKICByZXByZXNlbnQ6IHsKICAgIGNhbm9uaWNhbDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAifiI7CiAgICB9LAogICAgbG93ZXJjYXNlOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuICJudWxsIjsKICAgIH0sCiAgICB1cHBlcmNhc2U6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIk5VTEwiOwogICAgfSwKICAgIGNhbWVsY2FzZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAiTnVsbCI7CiAgICB9LAogICAgZW1wdHk6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIiI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJvb2xlYW4oZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoOwogIHJldHVybiBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiKSB8fCBtYXggPT09IDUgJiYgKGRhdGEgPT09ICJmYWxzZSIgfHwgZGF0YSA9PT0gIkZhbHNlIiB8fCBkYXRhID09PSAiRkFMU0UiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQm9vbGVhbihkYXRhKSB7CiAgcmV0dXJuIGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiOwp9CmZ1bmN0aW9uIGlzQm9vbGVhbihvYmplY3QpIHsKICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iamVjdCkgPT09ICJbb2JqZWN0IEJvb2xlYW5dIjsKfQp2YXIgYm9vbCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpib29sIiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQm9vbGVhbiwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxCb29sZWFuLAogIHByZWRpY2F0ZTogaXNCb29sZWFuLAogIHJlcHJlc2VudDogewogICAgbG93ZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJ0cnVlIiA6ICJmYWxzZSI7CiAgICB9LAogICAgdXBwZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUUlVFIiA6ICJGQUxTRSI7CiAgICB9LAogICAgY2FtZWxjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUcnVlIiA6ICJGYWxzZSI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiBpc0hleENvZGUoYykgewogIHJldHVybiA0OCA8PSBjICYmIGMgPD0gNTcgfHwgNjUgPD0gYyAmJiBjIDw9IDcwIHx8IDk3IDw9IGMgJiYgYyA8PSAxMDI7Cn0KZnVuY3Rpb24gaXNPY3RDb2RlKGMpIHsKICByZXR1cm4gNDggPD0gYyAmJiBjIDw9IDU1Owp9CmZ1bmN0aW9uIGlzRGVjQ29kZShjKSB7CiAgcmV0dXJuIDQ4IDw9IGMgJiYgYyA8PSA1NzsKfQpmdW5jdGlvbiByZXNvbHZlWWFtbEludGVnZXIoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoLCBpbmRleCA9IDAsIGhhc0RpZ2l0cyA9IGZhbHNlLCBjaDsKICBpZiAoIW1heCkgcmV0dXJuIGZhbHNlOwogIGNoID0gZGF0YVtpbmRleF07CiAgaWYgKGNoID09PSAiLSIgfHwgY2ggPT09ICIrIikgewogICAgY2ggPSBkYXRhWysraW5kZXhdOwogIH0KICBpZiAoY2ggPT09ICIwIikgewogICAgaWYgKGluZGV4ICsgMSA9PT0gbWF4KSByZXR1cm4gdHJ1ZTsKICAgIGNoID0gZGF0YVsrK2luZGV4XTsKICAgIGlmIChjaCA9PT0gImIiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmIChjaCAhPT0gIjAiICYmIGNoICE9PSAiMSIpIHJldHVybiBmYWxzZTsKICAgICAgICBoYXNEaWdpdHMgPSB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBoYXNEaWdpdHMgJiYgY2ggIT09ICJfIjsKICAgIH0KICAgIGlmIChjaCA9PT0gIngiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmICghaXNIZXhDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgaGFzRGlnaXRzID0gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gaGFzRGlnaXRzICYmIGNoICE9PSAiXyI7CiAgICB9CiAgICBpZiAoY2ggPT09ICJvIikgewogICAgICBpbmRleCsrOwogICAgICBmb3IgKDsgaW5kZXggPCBtYXg7IGluZGV4KyspIHsKICAgICAgICBjaCA9IGRhdGFbaW5kZXhdOwogICAgICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgICAgICBpZiAoIWlzT2N0Q29kZShkYXRhLmNoYXJDb2RlQXQoaW5kZXgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGhhc0RpZ2l0cyAmJiBjaCAhPT0gIl8iOwogICAgfQogIH0KICBpZiAoY2ggPT09ICJfIikgcmV0dXJuIGZhbHNlOwogIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgY2ggPSBkYXRhW2luZGV4XTsKICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgIGlmICghaXNEZWNDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgfQogIGlmICghaGFzRGlnaXRzIHx8IGNoID09PSAiXyIpIHJldHVybiBmYWxzZTsKICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sSW50ZWdlcihkYXRhKSB7CiAgdmFyIHZhbHVlID0gZGF0YSwgc2lnbiA9IDEsIGNoOwogIGlmICh2YWx1ZS5pbmRleE9mKCJfIikgIT09IC0xKSB7CiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL18vZywgIiIpOwogIH0KICBjaCA9IHZhbHVlWzBdOwogIGlmIChjaCA9PT0gIi0iIHx8IGNoID09PSAiKyIpIHsKICAgIGlmIChjaCA9PT0gIi0iKSBzaWduID0gLTE7CiAgICB2YWx1ZSA9IHZhbHVlLnNsaWNlKDEpOwogICAgY2ggPSB2YWx1ZVswXTsKICB9CiAgaWYgKHZhbHVlID09PSAiMCIpIHJldHVybiAwOwogIGlmIChjaCA9PT0gIjAiKSB7CiAgICBpZiAodmFsdWVbMV0gPT09ICJiIikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMik7CiAgICBpZiAodmFsdWVbMV0gPT09ICJ4IikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMTYpOwogICAgaWYgKHZhbHVlWzFdID09PSAibyIpIHJldHVybiBzaWduICogcGFyc2VJbnQodmFsdWUuc2xpY2UoMiksIDgpOwogIH0KICByZXR1cm4gc2lnbiAqIHBhcnNlSW50KHZhbHVlLCAxMCk7Cn0KZnVuY3Rpb24gaXNJbnRlZ2VyKG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgPT09IDAgJiYgIWNvbW1vbi5pc05lZ2F0aXZlWmVybyhvYmplY3QpKTsKfQp2YXIgaW50ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOmludCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEludGVnZXIsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sSW50ZWdlciwKICBwcmVkaWNhdGU6IGlzSW50ZWdlciwKICByZXByZXNlbnQ6IHsKICAgIGJpbmFyeTogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwYiIgKyBvYmoudG9TdHJpbmcoMikgOiAiLTBiIiArIG9iai50b1N0cmluZygyKS5zbGljZSgxKTsKICAgIH0sCiAgICBvY3RhbDogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwbyIgKyBvYmoudG9TdHJpbmcoOCkgOiAiLTBvIiArIG9iai50b1N0cmluZyg4KS5zbGljZSgxKTsKICAgIH0sCiAgICBkZWNpbWFsOiBmdW5jdGlvbihvYmopIHsKICAgICAgcmV0dXJuIG9iai50b1N0cmluZygxMCk7CiAgICB9LAogICAgLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqLwogICAgaGV4YWRlY2ltYWw6IGZ1bmN0aW9uKG9iaikgewogICAgICByZXR1cm4gb2JqID49IDAgPyAiMHgiICsgb2JqLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpIDogIi0weCIgKyBvYmoudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkuc2xpY2UoMSk7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJkZWNpbWFsIiwKICBzdHlsZUFsaWFzZXM6IHsKICAgIGJpbmFyeTogWzIsICJiaW4iXSwKICAgIG9jdGFsOiBbOCwgIm9jdCJdLAogICAgZGVjaW1hbDogWzEwLCAiZGVjIl0sCiAgICBoZXhhZGVjaW1hbDogWzE2LCAiaGV4Il0KICB9Cn0pOwp2YXIgWUFNTF9GTE9BVF9QQVRURVJOID0gbmV3IFJlZ0V4cCgKICAvLyAyLjVlNCwgMi41IGFuZCBpbnRlZ2VycwogICJeKD86Wy0rXT8oPzpbMC05XVswLTlfXSopKD86XFwuWzAtOV9dKik/KD86W2VFXVstK10/WzAtOV0rKT98XFwuWzAtOV9dKyg/OltlRV1bLStdP1swLTldKyk/fFstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLig/Om5hbnxOYU58TkFOKSkkIgopOwpmdW5jdGlvbiByZXNvbHZlWWFtbEZsb2F0KGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmICghWUFNTF9GTE9BVF9QQVRURVJOLnRlc3QoZGF0YSkgfHwgLy8gUXVpY2sgaGFjayB0byBub3QgYWxsb3cgaW50ZWdlcnMgZW5kIHdpdGggYF9gCiAgLy8gUHJvYmFibHkgc2hvdWxkIHVwZGF0ZSByZWdleHAgJiBjaGVjayBzcGVlZAogIGRhdGFbZGF0YS5sZW5ndGggLSAxXSA9PT0gIl8iKSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxGbG9hdChkYXRhKSB7CiAgdmFyIHZhbHVlLCBzaWduOwogIHZhbHVlID0gZGF0YS5yZXBsYWNlKC9fL2csICIiKS50b0xvd2VyQ2FzZSgpOwogIHNpZ24gPSB2YWx1ZVswXSA9PT0gIi0iID8gLTEgOiAxOwogIGlmICgiKy0iLmluZGV4T2YodmFsdWVbMF0pID49IDApIHsKICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMSk7CiAgfQogIGlmICh2YWx1ZSA9PT0gIi5pbmYiKSB7CiAgICByZXR1cm4gc2lnbiA9PT0gMSA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKICB9IGVsc2UgaWYgKHZhbHVlID09PSAiLm5hbiIpIHsKICAgIHJldHVybiBOYU47CiAgfQogIHJldHVybiBzaWduICogcGFyc2VGbG9hdCh2YWx1ZSwgMTApOwp9CnZhciBTQ0lFTlRJRklDX1dJVEhPVVRfRE9UID0gL15bLStdP1swLTldK2UvOwpmdW5jdGlvbiByZXByZXNlbnRZYW1sRmxvYXQob2JqZWN0LCBzdHlsZSkgewogIHZhciByZXM7CiAgaWYgKGlzTmFOKG9iamVjdCkpIHsKICAgIHN3aXRjaCAoc3R5bGUpIHsKICAgICAgY2FzZSAibG93ZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5uYW4iOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLk5BTiI7CiAgICAgIGNhc2UgImNhbWVsY2FzZSI6CiAgICAgICAgcmV0dXJuICIuTmFOIjsKICAgIH0KICB9IGVsc2UgaWYgKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA9PT0gb2JqZWN0KSB7CiAgICBzd2l0Y2ggKHN0eWxlKSB7CiAgICAgIGNhc2UgImxvd2VyY2FzZSI6CiAgICAgICAgcmV0dXJuICIuaW5mIjsKICAgICAgY2FzZSAidXBwZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLkluZiI7CiAgICB9CiAgfSBlbHNlIGlmIChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IG9iamVjdCkgewogICAgc3dpdGNoIChzdHlsZSkgewogICAgICBjYXNlICJsb3dlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5pbmYiOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLS5JbmYiOwogICAgfQogIH0gZWxzZSBpZiAoY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpIHsKICAgIHJldHVybiAiLTAuMCI7CiAgfQogIHJlcyA9IG9iamVjdC50b1N0cmluZygxMCk7CiAgcmV0dXJuIFNDSUVOVElGSUNfV0lUSE9VVF9ET1QudGVzdChyZXMpID8gcmVzLnJlcGxhY2UoImUiLCAiLmUiKSA6IHJlczsKfQpmdW5jdGlvbiBpc0Zsb2F0KG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgIT09IDAgfHwgY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpOwp9CnZhciBmbG9hdCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEZsb2F0LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEZsb2F0LAogIHByZWRpY2F0ZTogaXNGbG9hdCwKICByZXByZXNlbnQ6IHJlcHJlc2VudFlhbWxGbG9hdCwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwp2YXIganNvbiA9IGZhaWxzYWZlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIF9udWxsLAogICAgYm9vbCwKICAgIGludCwKICAgIGZsb2F0CiAgXQp9KTsKdmFyIGNvcmUgPSBqc29uOwp2YXIgWUFNTF9EQVRFX1JFR0VYUCA9IG5ldyBSZWdFeHAoCiAgIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldKS0oWzAtOV1bMC05XSkkIgopOwp2YXIgWUFNTF9USU1FU1RBTVBfUkVHRVhQID0gbmV3IFJlZ0V4cCgKICAiXihbMC05XVswLTldWzAtOV1bMC05XSktKFswLTldWzAtOV0/KS0oWzAtOV1bMC05XT8pKD86W1R0XXxbIFxcdF0rKShbMC05XVswLTldPyk6KFswLTldWzAtOV0pOihbMC05XVswLTldKSg/OlxcLihbMC05XSopKT8oPzpbIFxcdF0qKFp8KFstK10pKFswLTldWzAtOV0/KSg/OjooWzAtOV1bMC05XSkpPykpPyQiCik7CmZ1bmN0aW9uIHJlc29sdmVZYW1sVGltZXN0YW1wKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmIChZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSkgIT09IG51bGwpIHJldHVybiB0cnVlOwogIGlmIChZQU1MX1RJTUVTVEFNUF9SRUdFWFAuZXhlYyhkYXRhKSAhPT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxUaW1lc3RhbXAoZGF0YSkgewogIHZhciBtYXRjaCwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uID0gMCwgZGVsdGEgPSBudWxsLCB0el9ob3VyLCB0el9taW51dGUsIGRhdGU7CiAgbWF0Y2ggPSBZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSk7CiAgaWYgKG1hdGNoID09PSBudWxsKSBtYXRjaCA9IFlBTUxfVElNRVNUQU1QX1JFR0VYUC5leGVjKGRhdGEpOwogIGlmIChtYXRjaCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCJEYXRlIHJlc29sdmUgZXJyb3IiKTsKICB5ZWFyID0gK21hdGNoWzFdOwogIG1vbnRoID0gK21hdGNoWzJdIC0gMTsKICBkYXkgPSArbWF0Y2hbM107CiAgaWYgKCFtYXRjaFs0XSkgewogICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTsKICB9CiAgaG91ciA9ICttYXRjaFs0XTsKICBtaW51dGUgPSArbWF0Y2hbNV07CiAgc2Vjb25kID0gK21hdGNoWzZdOwogIGlmIChtYXRjaFs3XSkgewogICAgZnJhY3Rpb24gPSBtYXRjaFs3XS5zbGljZSgwLCAzKTsKICAgIHdoaWxlIChmcmFjdGlvbi5sZW5ndGggPCAzKSB7CiAgICAgIGZyYWN0aW9uICs9ICIwIjsKICAgIH0KICAgIGZyYWN0aW9uID0gK2ZyYWN0aW9uOwogIH0KICBpZiAobWF0Y2hbOV0pIHsKICAgIHR6X2hvdXIgPSArbWF0Y2hbMTBdOwogICAgdHpfbWludXRlID0gKyhtYXRjaFsxMV0gfHwgMCk7CiAgICBkZWx0YSA9ICh0el9ob3VyICogNjAgKyB0el9taW51dGUpICogNmU0OwogICAgaWYgKG1hdGNoWzldID09PSAiLSIpIGRlbHRhID0gLWRlbHRhOwogIH0KICBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMoeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uKSk7CiAgaWYgKGRlbHRhKSBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgLSBkZWx0YSk7CiAgcmV0dXJuIGRhdGU7Cn0KZnVuY3Rpb24gcmVwcmVzZW50WWFtbFRpbWVzdGFtcChvYmplY3QpIHsKICByZXR1cm4gb2JqZWN0LnRvSVNPU3RyaW5nKCk7Cn0KdmFyIHRpbWVzdGFtcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjp0aW1lc3RhbXAiLCB7CiAga2luZDogInNjYWxhciIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxUaW1lc3RhbXAsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sVGltZXN0YW1wLAogIGluc3RhbmNlT2Y6IERhdGUsCiAgcmVwcmVzZW50OiByZXByZXNlbnRZYW1sVGltZXN0YW1wCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbE1lcmdlKGRhdGEpIHsKICByZXR1cm4gZGF0YSA9PT0gIjw8IiB8fCBkYXRhID09PSBudWxsOwp9CnZhciBtZXJnZSA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE1lcmdlCn0pOwp2YXIgQkFTRTY0X01BUCA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPVxuXHIiOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJpbmFyeShkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiBmYWxzZTsKICB2YXIgY29kZSwgaWR4LCBiaXRsZW4gPSAwLCBtYXggPSBkYXRhLmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBjb2RlID0gbWFwMi5pbmRleE9mKGRhdGEuY2hhckF0KGlkeCkpOwogICAgaWYgKGNvZGUgPiA2NCkgY29udGludWU7CiAgICBpZiAoY29kZSA8IDApIHJldHVybiBmYWxzZTsKICAgIGJpdGxlbiArPSA2OwogIH0KICByZXR1cm4gYml0bGVuICUgOCA9PT0gMDsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQmluYXJ5KGRhdGEpIHsKICB2YXIgaWR4LCB0YWlsYml0cywgaW5wdXQgPSBkYXRhLnJlcGxhY2UoL1tcclxuPV0vZywgIiIpLCBtYXggPSBpbnB1dC5sZW5ndGgsIG1hcDIgPSBCQVNFNjRfTUFQLCBiaXRzID0gMCwgcmVzdWx0ID0gW107CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgNCA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0LnB1c2goYml0cyA+PiAxNiAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgJiAyNTUpOwogICAgfQogICAgYml0cyA9IGJpdHMgPDwgNiB8IG1hcDIuaW5kZXhPZihpbnB1dC5jaGFyQXQoaWR4KSk7CiAgfQogIHRhaWxiaXRzID0gbWF4ICUgNCAqIDY7CiAgaWYgKHRhaWxiaXRzID09PSAwKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDE2ICYgMjU1KTsKICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzICYgMjU1KTsKICB9IGVsc2UgaWYgKHRhaWxiaXRzID09PSAxOCkgewogICAgcmVzdWx0LnB1c2goYml0cyA+PiAxMCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDIgJiAyNTUpOwogIH0gZWxzZSBpZiAodGFpbGJpdHMgPT09IDEyKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDQgJiAyNTUpOwogIH0KICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkocmVzdWx0KTsKfQpmdW5jdGlvbiByZXByZXNlbnRZYW1sQmluYXJ5KG9iamVjdCkgewogIHZhciByZXN1bHQgPSAiIiwgYml0cyA9IDAsIGlkeCwgdGFpbCwgbWF4ID0gb2JqZWN0Lmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgMyA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxOCAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA2ICYgNjNdOwogICAgICByZXN1bHQgKz0gbWFwMltiaXRzICYgNjNdOwogICAgfQogICAgYml0cyA9IChiaXRzIDw8IDgpICsgb2JqZWN0W2lkeF07CiAgfQogIHRhaWwgPSBtYXggJSAzOwogIGlmICh0YWlsID09PSAwKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDE4ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgPj4gNiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgJiA2M107CiAgfSBlbHNlIGlmICh0YWlsID09PSAyKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDEwICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0gZWxzZSBpZiAodGFpbCA9PT0gMSkgewogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0KICByZXR1cm4gcmVzdWx0Owp9CmZ1bmN0aW9uIGlzQmluYXJ5KG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKSA9PT0gIltvYmplY3QgVWludDhBcnJheV0iOwp9CnZhciBiaW5hcnkgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5IiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQmluYXJ5LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEJpbmFyeSwKICBwcmVkaWNhdGU6IGlzQmluYXJ5LAogIHJlcHJlc2VudDogcmVwcmVzZW50WWFtbEJpbmFyeQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQzID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIF90b1N0cmluZyQyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxPbWFwKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIG9iamVjdEtleXMgPSBbXSwgaW5kZXgsIGxlbmd0aCwgcGFpciwgcGFpcktleSwgcGFpckhhc0tleSwgb2JqZWN0ID0gZGF0YTsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHBhaXIgPSBvYmplY3RbaW5kZXhdOwogICAgcGFpckhhc0tleSA9IGZhbHNlOwogICAgaWYgKF90b1N0cmluZyQyLmNhbGwocGFpcikgIT09ICJbb2JqZWN0IE9iamVjdF0iKSByZXR1cm4gZmFsc2U7CiAgICBmb3IgKHBhaXJLZXkgaW4gcGFpcikgewogICAgICBpZiAoX2hhc093blByb3BlcnR5JDMuY2FsbChwYWlyLCBwYWlyS2V5KSkgewogICAgICAgIGlmICghcGFpckhhc0tleSkgcGFpckhhc0tleSA9IHRydWU7CiAgICAgICAgZWxzZSByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIGlmICghcGFpckhhc0tleSkgcmV0dXJuIGZhbHNlOwogICAgaWYgKG9iamVjdEtleXMuaW5kZXhPZihwYWlyS2V5KSA9PT0gLTEpIG9iamVjdEtleXMucHVzaChwYWlyS2V5KTsKICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sT21hcChkYXRhKSB7CiAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107Cn0KdmFyIG9tYXAgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6b21hcCIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sT21hcCwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxPbWFwCn0pOwp2YXIgX3RvU3RyaW5nJDEgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpmdW5jdGlvbiByZXNvbHZlWWFtbFBhaXJzKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGlmIChfdG9TdHJpbmckMS5jYWxsKHBhaXIpICE9PSAiW29iamVjdCBPYmplY3RdIikgcmV0dXJuIGZhbHNlOwogICAga2V5cyA9IE9iamVjdC5rZXlzKHBhaXIpOwogICAgaWYgKGtleXMubGVuZ3RoICE9PSAxKSByZXR1cm4gZmFsc2U7CiAgICByZXN1bHRbaW5kZXhdID0gW2tleXNbMF0sIHBhaXJba2V5c1swXV1dOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sUGFpcnMoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gW107CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGtleXMgPSBPYmplY3Qua2V5cyhwYWlyKTsKICAgIHJlc3VsdFtpbmRleF0gPSBba2V5c1swXSwgcGFpcltrZXlzWzBdXV07CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KdmFyIHBhaXJzID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnBhaXJzIiwgewogIGtpbmQ6ICJzZXF1ZW5jZSIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxQYWlycywKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxQYWlycwp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQyID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxTZXQoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gdHJ1ZTsKICB2YXIga2V5LCBvYmplY3QgPSBkYXRhOwogIGZvciAoa2V5IGluIG9iamVjdCkgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQyLmNhbGwob2JqZWN0LCBrZXkpKSB7CiAgICAgIGlmIChvYmplY3Rba2V5XSAhPT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sU2V0KGRhdGEpIHsKICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiB7fTsKfQp2YXIgc2V0ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNldCIsIHsKICBraW5kOiAibWFwcGluZyIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxTZXQsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sU2V0Cn0pOwp2YXIgX2RlZmF1bHQgPSBjb3JlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIHRpbWVzdGFtcCwKICAgIG1lcmdlCiAgXSwKICBleHBsaWNpdDogWwogICAgYmluYXJ5LAogICAgb21hcCwKICAgIHBhaXJzLAogICAgc2V0CiAgXQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQxID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENPTlRFWFRfRkxPV19JTiA9IDE7CnZhciBDT05URVhUX0ZMT1dfT1VUID0gMjsKdmFyIENPTlRFWFRfQkxPQ0tfSU4gPSAzOwp2YXIgQ09OVEVYVF9CTE9DS19PVVQgPSA0Owp2YXIgQ0hPTVBJTkdfQ0xJUCA9IDE7CnZhciBDSE9NUElOR19TVFJJUCA9IDI7CnZhciBDSE9NUElOR19LRUVQID0gMzsKdmFyIFBBVFRFUk5fTk9OX1BSSU5UQUJMRSA9IC9bXHgwMC1ceDA4XHgwQlx4MENceDBFLVx4MUZceDdGLVx4ODRceDg2LVx4OUZcdUZGRkVcdUZGRkZdfFtcdUQ4MDAtXHVEQkZGXSg/IVtcdURDMDAtXHVERkZGXSl8KD86W15cdUQ4MDAtXHVEQkZGXXxeKVtcdURDMDAtXHVERkZGXS87CnZhciBQQVRURVJOX05PTl9BU0NJSV9MSU5FX0JSRUFLUyA9IC9bXHg4NVx1MjAyOFx1MjAyOV0vOwp2YXIgUEFUVEVSTl9GTE9XX0lORElDQVRPUlMgPSAvWyxcW1xdXHtcfV0vOwp2YXIgUEFUVEVSTl9UQUdfSEFORExFID0gL14oPzohfCEhfCFbYS16XC1dKyEpJC9pOwp2YXIgUEFUVEVSTl9UQUdfVVJJID0gL14oPzohfFteLFxbXF1ce1x9XSkoPzolWzAtOWEtZl17Mn18WzAtOWEtelwtIztcL1w/OkAmPVwrXCQsX1wuIX5cKidcKFwpXFtcXV0pKiQvaTsKZnVuY3Rpb24gX2NsYXNzKG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKTsKfQpmdW5jdGlvbiBpc19FT0woYykgewogIHJldHVybiBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19XSElURV9TUEFDRShjKSB7CiAgcmV0dXJuIGMgPT09IDkgfHwgYyA9PT0gMzI7Cn0KZnVuY3Rpb24gaXNfV1NfT1JfRU9MKGMpIHsKICByZXR1cm4gYyA9PT0gOSB8fCBjID09PSAzMiB8fCBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19GTE9XX0lORElDQVRPUihjKSB7CiAgcmV0dXJuIGMgPT09IDQ0IHx8IGMgPT09IDkxIHx8IGMgPT09IDkzIHx8IGMgPT09IDEyMyB8fCBjID09PSAxMjU7Cn0KZnVuY3Rpb24gZnJvbUhleENvZGUoYykgewogIHZhciBsYzsKICBpZiAoNDggPD0gYyAmJiBjIDw9IDU3KSB7CiAgICByZXR1cm4gYyAtIDQ4OwogIH0KICBsYyA9IGMgfCAzMjsKICBpZiAoOTcgPD0gbGMgJiYgbGMgPD0gMTAyKSB7CiAgICByZXR1cm4gbGMgLSA5NyArIDEwOwogIH0KICByZXR1cm4gLTE7Cn0KZnVuY3Rpb24gZXNjYXBlZEhleExlbihjKSB7CiAgaWYgKGMgPT09IDEyMCkgewogICAgcmV0dXJuIDI7CiAgfQogIGlmIChjID09PSAxMTcpIHsKICAgIHJldHVybiA0OwogIH0KICBpZiAoYyA9PT0gODUpIHsKICAgIHJldHVybiA4OwogIH0KICByZXR1cm4gMDsKfQpmdW5jdGlvbiBmcm9tRGVjaW1hbENvZGUoYykgewogIGlmICg0OCA8PSBjICYmIGMgPD0gNTcpIHsKICAgIHJldHVybiBjIC0gNDg7CiAgfQogIHJldHVybiAtMTsKfQpmdW5jdGlvbiBzaW1wbGVFc2NhcGVTZXF1ZW5jZShjKSB7CiAgcmV0dXJuIGMgPT09IDQ4ID8gIlwwIiA6IGMgPT09IDk3ID8gIlx4MDciIDogYyA9PT0gOTggPyAiXGIiIDogYyA9PT0gMTE2ID8gIgkiIDogYyA9PT0gOSA/ICIJIiA6IGMgPT09IDExMCA/ICJcbiIgOiBjID09PSAxMTggPyAiXHYiIDogYyA9PT0gMTAyID8gIlxmIiA6IGMgPT09IDExNCA/ICJcciIgOiBjID09PSAxMDEgPyAiXHgxQiIgOiBjID09PSAzMiA/ICIgIiA6IGMgPT09IDM0ID8gJyInIDogYyA9PT0gNDcgPyAiLyIgOiBjID09PSA5MiA/ICJcXCIgOiBjID09PSA3OCA/ICJceDg1IiA6IGMgPT09IDk1ID8gIlx4QTAiIDogYyA9PT0gNzYgPyAiXHUyMDI4IiA6IGMgPT09IDgwID8gIlx1MjAyOSIgOiAiIjsKfQpmdW5jdGlvbiBjaGFyRnJvbUNvZGVwb2ludChjKSB7CiAgaWYgKGMgPD0gNjU1MzUpIHsKICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGMpOwogIH0KICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSgKICAgIChjIC0gNjU1MzYgPj4gMTApICsgNTUyOTYsCiAgICAoYyAtIDY1NTM2ICYgMTAyMykgKyA1NjMyMAogICk7Cn0KdmFyIHNpbXBsZUVzY2FwZUNoZWNrID0gbmV3IEFycmF5KDI1Nik7CnZhciBzaW1wbGVFc2NhcGVNYXAgPSBuZXcgQXJyYXkoMjU2KTsKZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CiAgc2ltcGxlRXNjYXBlQ2hlY2tbaV0gPSBzaW1wbGVFc2NhcGVTZXF1ZW5jZShpKSA/IDEgOiAwOwogIHNpbXBsZUVzY2FwZU1hcFtpXSA9IHNpbXBsZUVzY2FwZVNlcXVlbmNlKGkpOwp9CnZhciBpOwpmdW5jdGlvbiBTdGF0ZSQxKGlucHV0LCBvcHRpb25zKSB7CiAgdGhpcy5pbnB1dCA9IGlucHV0OwogIHRoaXMuZmlsZW5hbWUgPSBvcHRpb25zWyJmaWxlbmFtZSJdIHx8IG51bGw7CiAgdGhpcy5zY2hlbWEgPSBvcHRpb25zWyJzY2hlbWEiXSB8fCBfZGVmYXVsdDsKICB0aGlzLm9uV2FybmluZyA9IG9wdGlvbnNbIm9uV2FybmluZyJdIHx8IG51bGw7CiAgdGhpcy5sZWdhY3kgPSBvcHRpb25zWyJsZWdhY3kiXSB8fCBmYWxzZTsKICB0aGlzLmpzb24gPSBvcHRpb25zWyJqc29uIl0gfHwgZmFsc2U7CiAgdGhpcy5saXN0ZW5lciA9IG9wdGlvbnNbImxpc3RlbmVyIl0gfHwgbnVsbDsKICB0aGlzLmltcGxpY2l0VHlwZXMgPSB0aGlzLnNjaGVtYS5jb21waWxlZEltcGxpY2l0OwogIHRoaXMudHlwZU1hcCA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkVHlwZU1hcDsKICB0aGlzLmxlbmd0aCA9IGlucHV0Lmxlbmd0aDsKICB0aGlzLnBvc2l0aW9uID0gMDsKICB0aGlzLmxpbmUgPSAwOwogIHRoaXMubGluZVN0YXJ0ID0gMDsKICB0aGlzLmxpbmVJbmRlbnQgPSAwOwogIHRoaXMuZmlyc3RUYWJJbkxpbmUgPSAtMTsKICB0aGlzLmRvY3VtZW50cyA9IFtdOwp9CmZ1bmN0aW9uIGdlbmVyYXRlRXJyb3Ioc3RhdGUsIG1lc3NhZ2UpIHsKICB2YXIgbWFyayA9IHsKICAgIG5hbWU6IHN0YXRlLmZpbGVuYW1lLAogICAgYnVmZmVyOiBzdGF0ZS5pbnB1dC5zbGljZSgwLCAtMSksCiAgICAvLyBvbWl0IHRyYWlsaW5nIFwwCiAgICBwb3NpdGlvbjogc3RhdGUucG9zaXRpb24sCiAgICBsaW5lOiBzdGF0ZS5saW5lLAogICAgY29sdW1uOiBzdGF0ZS5wb3NpdGlvbiAtIHN0YXRlLmxpbmVTdGFydAogIH07CiAgbWFyay5zbmlwcGV0ID0gc25pcHBldChtYXJrKTsKICByZXR1cm4gbmV3IGV4Y2VwdGlvbihtZXNzYWdlLCBtYXJrKTsKfQpmdW5jdGlvbiB0aHJvd0Vycm9yKHN0YXRlLCBtZXNzYWdlKSB7CiAgdGhyb3cgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSk7Cn0KZnVuY3Rpb24gdGhyb3dXYXJuaW5nKHN0YXRlLCBtZXNzYWdlKSB7CiAgaWYgKHN0YXRlLm9uV2FybmluZykgewogICAgc3RhdGUub25XYXJuaW5nLmNhbGwobnVsbCwgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSkpOwogIH0KfQp2YXIgZGlyZWN0aXZlSGFuZGxlcnMgPSB7CiAgWUFNTDogZnVuY3Rpb24gaGFuZGxlWWFtbERpcmVjdGl2ZShzdGF0ZSwgbmFtZSwgYXJncykgewogICAgdmFyIG1hdGNoLCBtYWpvciwgbWlub3I7CiAgICBpZiAoc3RhdGUudmVyc2lvbiAhPT0gbnVsbCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgJVlBTUwgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoYXJncy5sZW5ndGggIT09IDEpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIllBTUwgZGlyZWN0aXZlIGFjY2VwdHMgZXhhY3RseSBvbmUgYXJndW1lbnQiKTsKICAgIH0KICAgIG1hdGNoID0gL14oWzAtOV0rKVwuKFswLTldKykkLy5leGVjKGFyZ3NbMF0pOwogICAgaWYgKG1hdGNoID09PSBudWxsKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIGFyZ3VtZW50IG9mIHRoZSBZQU1MIGRpcmVjdGl2ZSIpOwogICAgfQogICAgbWFqb3IgPSBwYXJzZUludChtYXRjaFsxXSwgMTApOwogICAgbWlub3IgPSBwYXJzZUludChtYXRjaFsyXSwgMTApOwogICAgaWYgKG1ham9yICE9PSAxKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ1bmFjY2VwdGFibGUgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogICAgc3RhdGUudmVyc2lvbiA9IGFyZ3NbMF07CiAgICBzdGF0ZS5jaGVja0xpbmVCcmVha3MgPSBtaW5vciA8IDI7CiAgICBpZiAobWlub3IgIT09IDEgJiYgbWlub3IgIT09IDIpIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAidW5zdXBwb3J0ZWQgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogIH0sCiAgVEFHOiBmdW5jdGlvbiBoYW5kbGVUYWdEaXJlY3RpdmUoc3RhdGUsIG5hbWUsIGFyZ3MpIHsKICAgIHZhciBoYW5kbGUsIHByZWZpeDsKICAgIGlmIChhcmdzLmxlbmd0aCAhPT0gMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiVEFHIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgdHdvIGFyZ3VtZW50cyIpOwogICAgfQogICAgaGFuZGxlID0gYXJnc1swXTsKICAgIHByZWZpeCA9IGFyZ3NbMV07CiAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImlsbC1mb3JtZWQgdGFnIGhhbmRsZSAoZmlyc3QgYXJndW1lbnQpIG9mIHRoZSBUQUcgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3RoZXJlIGlzIGEgcHJldmlvdXNseSBkZWNsYXJlZCBzdWZmaXggZm9yICInICsgaGFuZGxlICsgJyIgdGFnIGhhbmRsZScpOwogICAgfQogICAgaWYgKCFQQVRURVJOX1RBR19VUkkudGVzdChwcmVmaXgpKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIHRhZyBwcmVmaXggKHNlY29uZCBhcmd1bWVudCkgb2YgdGhlIFRBRyBkaXJlY3RpdmUiKTsKICAgIH0KICAgIHRyeSB7CiAgICAgIHByZWZpeCA9IGRlY29kZVVSSUNvbXBvbmVudChwcmVmaXgpOwogICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgcHJlZml4IGlzIG1hbGZvcm1lZDogIiArIHByZWZpeCk7CiAgICB9CiAgICBzdGF0ZS50YWdNYXBbaGFuZGxlXSA9IHByZWZpeDsKICB9Cn07CmZ1bmN0aW9uIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBzdGFydCwgZW5kLCBjaGVja0pzb24pIHsKICB2YXIgX3Bvc2l0aW9uLCBfbGVuZ3RoLCBfY2hhcmFjdGVyLCBfcmVzdWx0OwogIGlmIChzdGFydCA8IGVuZCkgewogICAgX3Jlc3VsdCA9IHN0YXRlLmlucHV0LnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgaWYgKGNoZWNrSnNvbikgewogICAgICBmb3IgKF9wb3NpdGlvbiA9IDAsIF9sZW5ndGggPSBfcmVzdWx0Lmxlbmd0aDsgX3Bvc2l0aW9uIDwgX2xlbmd0aDsgX3Bvc2l0aW9uICs9IDEpIHsKICAgICAgICBfY2hhcmFjdGVyID0gX3Jlc3VsdC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICAgICAgaWYgKCEoX2NoYXJhY3RlciA9PT0gOSB8fCAzMiA8PSBfY2hhcmFjdGVyICYmIF9jaGFyYWN0ZXIgPD0gMTExNDExMSkpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB2YWxpZCBKU09OIGNoYXJhY3RlciIpOwogICAgICAgIH0KICAgICAgfQogICAgfSBlbHNlIGlmIChQQVRURVJOX05PTl9QUklOVEFCTEUudGVzdChfcmVzdWx0KSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGhlIHN0cmVhbSBjb250YWlucyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMiKTsKICAgIH0KICAgIHN0YXRlLnJlc3VsdCArPSBfcmVzdWx0OwogIH0KfQpmdW5jdGlvbiBtZXJnZU1hcHBpbmdzKHN0YXRlLCBkZXN0aW5hdGlvbiwgc291cmNlLCBvdmVycmlkYWJsZUtleXMpIHsKICB2YXIgc291cmNlS2V5cywga2V5LCBpbmRleCwgcXVhbnRpdHk7CiAgaWYgKCFjb21tb24uaXNPYmplY3Qoc291cmNlKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImNhbm5vdCBtZXJnZSBtYXBwaW5nczsgdGhlIHByb3ZpZGVkIHNvdXJjZSBvYmplY3QgaXMgdW5hY2NlcHRhYmxlIik7CiAgfQogIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogIGZvciAoaW5kZXggPSAwLCBxdWFudGl0eSA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IHF1YW50aXR5OyBpbmRleCArPSAxKSB7CiAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChkZXN0aW5hdGlvbiwga2V5KSkgewogICAgICBkZXN0aW5hdGlvbltrZXldID0gc291cmNlW2tleV07CiAgICAgIG92ZXJyaWRhYmxlS2V5c1trZXldID0gdHJ1ZTsKICAgIH0KICB9Cn0KZnVuY3Rpb24gc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgc3RhcnRMaW5lLCBzdGFydExpbmVTdGFydCwgc3RhcnRQb3MpIHsKICB2YXIgaW5kZXgsIHF1YW50aXR5OwogIGlmIChBcnJheS5pc0FycmF5KGtleU5vZGUpKSB7CiAgICBrZXlOb2RlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoa2V5Tm9kZSk7CiAgICBmb3IgKGluZGV4ID0gMCwgcXVhbnRpdHkgPSBrZXlOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlOb2RlW2luZGV4XSkpIHsKICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibmVzdGVkIGFycmF5cyBhcmUgbm90IHN1cHBvcnRlZCBpbnNpZGUga2V5cyIpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGVbaW5kZXhdKSA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgICBrZXlOb2RlW2luZGV4XSA9ICJbb2JqZWN0IE9iamVjdF0iOwogICAgICB9CiAgICB9CiAgfQogIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGUpID09PSAiW29iamVjdCBPYmplY3RdIikgewogICAga2V5Tm9kZSA9ICJbb2JqZWN0IE9iamVjdF0iOwogIH0KICBrZXlOb2RlID0gU3RyaW5nKGtleU5vZGUpOwogIGlmIChfcmVzdWx0ID09PSBudWxsKSB7CiAgICBfcmVzdWx0ID0ge307CiAgfQogIGlmIChrZXlUYWcgPT09ICJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlTm9kZSkpIHsKICAgICAgZm9yIChpbmRleCA9IDAsIHF1YW50aXR5ID0gdmFsdWVOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZVtpbmRleF0sIG92ZXJyaWRhYmxlS2V5cyk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZSwgb3ZlcnJpZGFibGVLZXlzKTsKICAgIH0KICB9IGVsc2UgewogICAgaWYgKCFzdGF0ZS5qc29uICYmICFfaGFzT3duUHJvcGVydHkkMS5jYWxsKG92ZXJyaWRhYmxlS2V5cywga2V5Tm9kZSkgJiYgX2hhc093blByb3BlcnR5JDEuY2FsbChfcmVzdWx0LCBrZXlOb2RlKSkgewogICAgICBzdGF0ZS5saW5lID0gc3RhcnRMaW5lIHx8IHN0YXRlLmxpbmU7CiAgICAgIHN0YXRlLmxpbmVTdGFydCA9IHN0YXJ0TGluZVN0YXJ0IHx8IHN0YXRlLmxpbmVTdGFydDsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGFydFBvcyB8fCBzdGF0ZS5wb3NpdGlvbjsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0ZWQgbWFwcGluZyBrZXkiKTsKICAgIH0KICAgIGlmIChrZXlOb2RlID09PSAiX19wcm90b19fIikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoX3Jlc3VsdCwga2V5Tm9kZSwgewogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLAogICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgIHZhbHVlOiB2YWx1ZU5vZGUKICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICBfcmVzdWx0W2tleU5vZGVdID0gdmFsdWVOb2RlOwogICAgfQogICAgZGVsZXRlIG92ZXJyaWRhYmxlS2V5c1trZXlOb2RlXTsKICB9CiAgcmV0dXJuIF9yZXN1bHQ7Cn0KZnVuY3Rpb24gcmVhZExpbmVCcmVhayhzdGF0ZSkgewogIHZhciBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTApIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgfSBlbHNlIGlmIChjaCA9PT0gMTMpIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDEwKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICB9CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIGxpbmUgYnJlYWsgaXMgZXhwZWN0ZWQiKTsKICB9CiAgc3RhdGUubGluZSArPSAxOwogIHN0YXRlLmxpbmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogIHN0YXRlLmZpcnN0VGFiSW5MaW5lID0gLTE7Cn0KZnVuY3Rpb24gc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgYWxsb3dDb21tZW50cywgY2hlY2tJbmRlbnQpIHsKICB2YXIgbGluZUJyZWFrcyA9IDAsIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICB3aGlsZSAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gOSAmJiBzdGF0ZS5maXJzdFRhYkluTGluZSA9PT0gLTEpIHsKICAgICAgICBzdGF0ZS5maXJzdFRhYkluTGluZSA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB9CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmIChhbGxvd0NvbW1lbnRzICYmIGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlIChjaCAhPT0gMTAgJiYgY2ggIT09IDEzICYmIGNoICE9PSAwKTsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIHJlYWRMaW5lQnJlYWsoc3RhdGUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICBsaW5lQnJlYWtzKys7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQgPSAwOwogICAgICB3aGlsZSAoY2ggPT09IDMyKSB7CiAgICAgICAgc3RhdGUubGluZUluZGVudCsrOwogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgYnJlYWs7CiAgICB9CiAgfQogIGlmIChjaGVja0luZGVudCAhPT0gLTEgJiYgbGluZUJyZWFrcyAhPT0gMCAmJiBzdGF0ZS5saW5lSW5kZW50IDwgY2hlY2tJbmRlbnQpIHsKICAgIHRocm93V2FybmluZyhzdGF0ZSwgImRlZmljaWVudCBpbmRlbnRhdGlvbiIpOwogIH0KICByZXR1cm4gbGluZUJyZWFrczsKfQpmdW5jdGlvbiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb24sIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChfcG9zaXRpb24pOwogIGlmICgoY2ggPT09IDQ1IHx8IGNoID09PSA0NikgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMSkgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMikpIHsKICAgIF9wb3NpdGlvbiArPSAzOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICBpZiAoY2ggPT09IDAgfHwgaXNfV1NfT1JfRU9MKGNoKSkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICB9CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIGNvdW50KSB7CiAgaWYgKGNvdW50ID09PSAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gIiAiOwogIH0gZWxzZSBpZiAoY291bnQgPiAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBjb3VudCAtIDEpOwogIH0KfQpmdW5jdGlvbiByZWFkUGxhaW5TY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQsIHdpdGhpbkZsb3dDb2xsZWN0aW9uKSB7CiAgdmFyIHByZWNlZGluZywgZm9sbG93aW5nLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhhc1BlbmRpbmdDb250ZW50LCBfbGluZSwgX2xpbmVTdGFydCwgX2xpbmVJbmRlbnQsIF9raW5kID0gc3RhdGUua2luZCwgX3Jlc3VsdCA9IHN0YXRlLnJlc3VsdCwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoaXNfV1NfT1JfRU9MKGNoKSB8fCBpc19GTE9XX0lORElDQVRPUihjaCkgfHwgY2ggPT09IDM1IHx8IGNoID09PSAzOCB8fCBjaCA9PT0gNDIgfHwgY2ggPT09IDMzIHx8IGNoID09PSAxMjQgfHwgY2ggPT09IDYyIHx8IGNoID09PSAzOSB8fCBjaCA9PT0gMzQgfHwgY2ggPT09IDM3IHx8IGNoID09PSA2NCB8fCBjaCA9PT0gOTYpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgaWYgKGNoID09PSA2MyB8fCBjaCA9PT0gNDUpIHsKICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICBoYXNQZW5kaW5nQ29udGVudCA9IGZhbHNlOwogIHdoaWxlIChjaCAhPT0gMCkgewogICAgaWYgKGNoID09PSA1OCkgewogICAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoY2ggPT09IDM1KSB7CiAgICAgIHByZWNlZGluZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gLSAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChwcmVjZWRpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHx8IHdpdGhpbkZsb3dDb2xsZWN0aW9uICYmIGlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgICBicmVhazsKICAgIH0gZWxzZSBpZiAoaXNfRU9MKGNoKSkgewogICAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICAgIF9saW5lSW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIC0xKTsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPj0gbm9kZUluZGVudCkgewogICAgICAgIGhhc1BlbmRpbmdDb250ZW50ID0gdHJ1ZTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnBvc2l0aW9uID0gY2FwdHVyZUVuZDsKICAgICAgICBzdGF0ZS5saW5lID0gX2xpbmU7CiAgICAgICAgc3RhdGUubGluZVN0YXJ0ID0gX2xpbmVTdGFydDsKICAgICAgICBzdGF0ZS5saW5lSW5kZW50ID0gX2xpbmVJbmRlbnQ7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0KICAgIGlmIChoYXNQZW5kaW5nQ29udGVudCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBjYXB0dXJlRW5kLCBmYWxzZSk7CiAgICAgIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIHN0YXRlLmxpbmUgLSBfbGluZSk7CiAgICAgIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgaGFzUGVuZGluZ0NvbnRlbnQgPSBmYWxzZTsKICAgIH0KICAgIGlmICghaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbiArIDE7CiAgICB9CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgfQogIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGZhbHNlKTsKICBpZiAoc3RhdGUucmVzdWx0KSB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CiAgc3RhdGUua2luZCA9IF9raW5kOwogIHN0YXRlLnJlc3VsdCA9IF9yZXN1bHQ7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2gsIGNhcHR1cmVTdGFydCwgY2FwdHVyZUVuZDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzkpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIHN0YXRlLnBvc2l0aW9uKys7CiAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogIHdoaWxlICgoY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSkgIT09IDApIHsKICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgICBjYXB0dXJlU3RhcnQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZERvdWJsZVF1b3RlZFNjYWxhcihzdGF0ZSwgbm9kZUluZGVudCkgewogIHZhciBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhleExlbmd0aCwgaGV4UmVzdWx0LCB0bXAsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSAzNCkgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBzdGF0ZS5raW5kID0gInNjYWxhciI7CiAgc3RhdGUucmVzdWx0ID0gIiI7CiAgc3RhdGUucG9zaXRpb24rKzsKICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgd2hpbGUgKChjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pKSAhPT0gMCkgewogICAgaWYgKGNoID09PSAzNCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBzdGF0ZS5wb3NpdGlvbiwgdHJ1ZSk7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSBlbHNlIGlmIChjaCA9PT0gOTIpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIG5vZGVJbmRlbnQpOwogICAgICB9IGVsc2UgaWYgKGNoIDwgMjU2ICYmIHNpbXBsZUVzY2FwZUNoZWNrW2NoXSkgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBzaW1wbGVFc2NhcGVNYXBbY2hdOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSBpZiAoKHRtcCA9IGVzY2FwZWRIZXhMZW4oY2gpKSA+IDApIHsKICAgICAgICBoZXhMZW5ndGggPSB0bXA7CiAgICAgICAgaGV4UmVzdWx0ID0gMDsKICAgICAgICBmb3IgKDsgaGV4TGVuZ3RoID4gMDsgaGV4TGVuZ3RoLS0pIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICAgIGlmICgodG1wID0gZnJvbUhleENvZGUoY2gpKSA+PSAwKSB7CiAgICAgICAgICAgIGhleFJlc3VsdCA9IChoZXhSZXN1bHQgPDwgNCkgKyB0bXA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZXhwZWN0ZWQgaGV4YWRlY2ltYWwgY2hhcmFjdGVyIik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjaGFyRnJvbUNvZGVwb2ludChoZXhSZXN1bHQpOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInVua25vd24gZXNjYXBlIHNlcXVlbmNlIik7CiAgICAgIH0KICAgICAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIHJlYWROZXh0ID0gdHJ1ZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9yZXN1bHQsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIGZvbGxvd2luZywgdGVybWluYXRvciwgaXNQYWlyLCBpc0V4cGxpY2l0UGFpciwgaXNNYXBwaW5nLCBvdmVycmlkYWJsZUtleXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKSwga2V5Tm9kZSwga2V5VGFnLCB2YWx1ZU5vZGUsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoID09PSA5MSkgewogICAgdGVybWluYXRvciA9IDkzOwogICAgaXNNYXBwaW5nID0gZmFsc2U7CiAgICBfcmVzdWx0ID0gW107CiAgfSBlbHNlIGlmIChjaCA9PT0gMTIzKSB7CiAgICB0ZXJtaW5hdG9yID0gMTI1OwogICAgaXNNYXBwaW5nID0gdHJ1ZTsKICAgIF9yZXN1bHQgPSB7fTsKICB9IGVsc2UgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gdGVybWluYXRvcikgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgICBzdGF0ZS5raW5kID0gaXNNYXBwaW5nID8gIm1hcHBpbmciIDogInNlcXVlbmNlIjsKICAgICAgc3RhdGUucmVzdWx0ID0gX3Jlc3VsdDsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9IGVsc2UgaWYgKCFyZWFkTmV4dCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibWlzc2VkIGNvbW1hIGJldHdlZW4gZmxvdyBjb2xsZWN0aW9uIGVudHJpZXMiKTsKICAgIH0gZWxzZSBpZiAoY2ggPT09IDQ0KSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB0aGUgbm9kZSBjb250ZW50LCBidXQgZm91bmQgJywnIik7CiAgICB9CiAgICBrZXlUYWcgPSBrZXlOb2RlID0gdmFsdWVOb2RlID0gbnVsbDsKICAgIGlzUGFpciA9IGlzRXhwbGljaXRQYWlyID0gZmFsc2U7CiAgICBpZiAoY2ggPT09IDYzKSB7CiAgICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgICAgaXNQYWlyID0gaXNFeHBsaWNpdFBhaXIgPSB0cnVlOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIH0KICAgIH0KICAgIF9saW5lID0gc3RhdGUubGluZTsKICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICBfcG9zID0gc3RhdGUucG9zaXRpb247CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9GTE9XX0lOLCBmYWxzZSwgdHJ1ZSk7CiAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChpc0V4cGxpY2l0UGFpciB8fCBzdGF0ZS5saW5lID09PSBfbGluZSkgJiYgY2ggPT09IDU4KSB7CiAgICAgIGlzUGFpciA9IHRydWU7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIGNvbXBvc2VOb2RlKHN0YXRlLCBub2RlSW5kZW50LCBDT05URVhUX0ZMT1dfSU4sIGZhbHNlLCB0cnVlKTsKICAgICAgdmFsdWVOb2RlID0gc3RhdGUucmVzdWx0OwogICAgfQogICAgaWYgKGlzTWFwcGluZykgewogICAgICBzdG9yZU1hcHBpbmdQYWlyKHN0YXRlLCBfcmVzdWx0LCBvdmVycmlkYWJsZUtleXMsIGtleVRhZywga2V5Tm9kZSwgdmFsdWVOb2RlLCBfbGluZSwgX2xpbmVTdGFydCwgX3Bvcyk7CiAgICB9IGVsc2UgaWYgKGlzUGFpcikgewogICAgICBfcmVzdWx0LnB1c2goc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgbnVsbCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MpKTsKICAgIH0gZWxzZSB7CiAgICAgIF9yZXN1bHQucHVzaChrZXlOb2RlKTsKICAgIH0KICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDQpIHsKICAgICAgcmVhZE5leHQgPSB0cnVlOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICByZWFkTmV4dCA9IGZhbHNlOwogICAgfQogIH0KICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24iKTsKfQpmdW5jdGlvbiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2FwdHVyZVN0YXJ0LCBmb2xkaW5nLCBjaG9tcGluZyA9IENIT01QSU5HX0NMSVAsIGRpZFJlYWRDb250ZW50ID0gZmFsc2UsIGRldGVjdGVkSW5kZW50ID0gZmFsc2UsIHRleHRJbmRlbnQgPSBub2RlSW5kZW50LCBlbXB0eUxpbmVzID0gMCwgYXRNb3JlSW5kZW50ZWQgPSBmYWxzZSwgdG1wLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTI0KSB7CiAgICBmb2xkaW5nID0gZmFsc2U7CiAgfSBlbHNlIGlmIChjaCA9PT0gNjIpIHsKICAgIGZvbGRpbmcgPSB0cnVlOwogIH0gZWxzZSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHN0YXRlLmtpbmQgPSAic2NhbGFyIjsKICBzdGF0ZS5yZXN1bHQgPSAiIjsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDMgfHwgY2ggPT09IDQ1KSB7CiAgICAgIGlmIChDSE9NUElOR19DTElQID09PSBjaG9tcGluZykgewogICAgICAgIGNob21waW5nID0gY2ggPT09IDQzID8gQ0hPTVBJTkdfS0VFUCA6IENIT01QSU5HX1NUUklQOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYSBjaG9tcGluZyBtb2RlIGlkZW50aWZpZXIiKTsKICAgICAgfQogICAgfSBlbHNlIGlmICgodG1wID0gZnJvbURlY2ltYWxDb2RlKGNoKSkgPj0gMCkgewogICAgICBpZiAodG1wID09PSAwKSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBleHBsaWNpdCBpbmRlbnRhdGlvbiB3aWR0aCBvZiBhIGJsb2NrIHNjYWxhcjsgaXQgY2Fubm90IGJlIGxlc3MgdGhhbiBvbmUiKTsKICAgICAgfSBlbHNlIGlmICghZGV0ZWN0ZWRJbmRlbnQpIHsKICAgICAgICB0ZXh0SW5kZW50ID0gbm9kZUluZGVudCArIHRtcCAtIDE7CiAgICAgICAgZGV0ZWN0ZWRJbmRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYW4gaW5kZW50YXRpb24gd2lkdGggaWRlbnRpZmllciIpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgZG8gewogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpOwogICAgaWYgKGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlICghaXNfRU9MKGNoKSAmJiBjaCAhPT0gMCk7CiAgICB9CiAgfQogIHdoaWxlIChjaCAhPT0gMCkgewogICAgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBzdGF0ZS5saW5lSW5kZW50ID0gMDsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgICB3aGlsZSAoKCFkZXRlY3RlZEluZGVudCB8fCBzdGF0ZS5saW5lSW5kZW50IDwgdGV4dEluZGVudCkgJiYgY2ggPT09IDMyKSB7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQrKzsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgaWYgKCFkZXRlY3RlZEluZGVudCAmJiBzdGF0ZS5saW5lSW5kZW50ID4gdGV4dEluZGVudCkgewogICAgICB0ZXh0SW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGVtcHR5TGluZXMrKzsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUubGluZUluZGVudCA8IHRleHRJbmRlbnQpIHsKICAgICAgaWYgKGNob21waW5nID09PSBDSE9NUElOR19LRUVQKSB7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZGlkUmVhZENvbnRlbnQgPyAxICsgZW1wdHlMaW5lcyA6IGVtcHR5TGluZXMpOwogICAgICB9IGVsc2UgaWYgKGNob21waW5nID09PSBDSE9NUElOR19DTElQKSB7CiAgICAgICAgaWYgKGRpZFJlYWRDb250ZW50KSB7CiAgICAgICAgICBzdGF0ZS5yZXN1bHQgKz0gIlxuIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgYnJlYWs7CiAgICB9CiAgICBpZiAoZm9sZGluZykgewogICAgICBpZiAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgICAgYXRNb3JlSW5kZW50ZWQgPSB0cnVlOwogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGRpZFJlYWRDb250ZW50ID8gMSArIGVtcHR5TGluZXMgOiBlbXB0eUxpbmVzKTsKICAgICAgfSBlbHNlIGlmIChhdE1vcmVJbmRlbnRlZCkgewogICAgICAgIGF0TW9yZUluZGVudGVkID0gZmFsc2U7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZW1wdHlMaW5lcyArIDEpOwogICAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXMgPT09IDApIHsKICAgICAgICBpZiAoZGlkUmVhZENvbnRlbnQpIHsKICAgICAgICAgIHN0YXRlLnJlc3VsdCArPSAiICI7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGVtcHR5TGluZXMpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBkaWRSZWFkQ29udGVudCA/IDEgKyBlbXB0eUxpbmVzIDogZW1wdHlMaW5lcyk7CiAgICB9CiAgICBkaWRSZWFkQ29udGVudCA9IHRydWU7CiAgICBkZXRlY3RlZEluZGVudCA9IHRydWU7CiAgICBlbXB0eUxpbmVzID0gMDsKICAgIGNhcHR1cmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogICAgd2hpbGUgKCFpc19FT0woY2gpICYmIGNoICE9PSAwKSB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIHN0YXRlLnBvc2l0aW9uLCBmYWxzZSk7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIHJlYWRCbG9ja1NlcXVlbmNlKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIF9saW5lLCBfdGFnID0gc3RhdGUudGFnLCBfYW5jaG9yID0gc3RhdGUuYW5jaG9yLCBfcmVzdWx0ID0gW10sIGZvbGxvd2luZywgZGV0ZWN0ZWQgPSBmYWxzZSwgY2g7CiAgaWYgKHN0YXRlLmZpcnN0VGFiSW5MaW5lICE9PSAtMSkgcmV0dXJuIGZhbHNlOwogIGlmIChzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgIHN0YXRlLmFuY2hvck1hcFtzdGF0ZS5hbmNob3JdID0gX3Jlc3VsdDsKICB9CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGF0ZS5maXJzdFRhYkluTGluZTsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhYiBjaGFyYWN0ZXJzIG11c3Qgbm90IGJlIHVzZWQgaW4gaW5kZW50YXRpb24iKTsKICAgIH0KICAgIGlmIChjaCAhPT0gNDUpIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBpZiAoIWlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGJyZWFrOwogICAgfQogICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgc3RhdGUucG9zaXRpb24rKzsKICAgIGlmIChza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSkpIHsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPD0gbm9kZUluZGVudCkgewogICAgICAgIF9yZXN1bHQucHVzaChudWxsKTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9CiAgICB9CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9CTE9DS19JTiwgZmFsc2UsIHRydWUpOwogICAgX3Jlc3VsdC5wdXNoKHN0YXRlLnJlc3VsdCk7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgJiYgY2ggIT09IDApIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBpbmRlbnRhdGlvbiBvZiBhIHNlcXVlbmNlIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoZGV0ZWN0ZWQpIHsKICAgIHN0YXRlLnRhZyA9IF90YWc7CiAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgc3RhdGUua2luZCA9ICJzZXF1ZW5jZSI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogICAgcmV0dXJuIHRydWU7CiAgfQogIHJldHVybiBmYWxzZTsKfQpmdW5jdGlvbiByZWFkQmxvY2tNYXBwaW5nKHN0YXRlLCBub2RlSW5kZW50LCBmbG93SW5kZW50KSB7CiAgdmFyIGZvbGxvd2luZywgYWxsb3dDb21wYWN0LCBfbGluZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIF9yZXN1bHQgPSB7fSwgb3ZlcnJpZGFibGVLZXlzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCksIGtleVRhZyA9IG51bGwsIGtleU5vZGUgPSBudWxsLCB2YWx1ZU5vZGUgPSBudWxsLCBhdEV4cGxpY2l0S2V5ID0gZmFsc2UsIGRldGVjdGVkID0gZmFsc2UsIGNoOwogIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICBpZiAoIWF0RXhwbGljaXRLZXkgJiYgc3RhdGUuZmlyc3RUYWJJbkxpbmUgIT09IC0xKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uID0gc3RhdGUuZmlyc3RUYWJJbkxpbmU7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWIgY2hhcmFjdGVycyBtdXN0IG5vdCBiZSB1c2VkIGluIGluZGVudGF0aW9uIik7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBpZiAoKGNoID09PSA2MyB8fCBjaCA9PT0gNTgpICYmIGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGlmIChjaCA9PT0gNjMpIHsKICAgICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgIH0KICAgICAgICBkZXRlY3RlZCA9IHRydWU7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IHRydWU7CiAgICAgICAgYWxsb3dDb21wYWN0ID0gdHJ1ZTsKICAgICAgfSBlbHNlIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgIGFsbG93Q29tcGFjdCA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImluY29tcGxldGUgZXhwbGljaXQgbWFwcGluZyBwYWlyOyBhIGtleSBub2RlIGlzIG1pc3NlZDsgb3IgZm9sbG93ZWQgYnkgYSBub24tdGFidWxhdGVkIGVtcHR5IGxpbmUiKTsKICAgICAgfQogICAgICBzdGF0ZS5wb3NpdGlvbiArPSAxOwogICAgICBjaCA9IGZvbGxvd2luZzsKICAgIH0gZWxzZSB7CiAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgX2tleUxpbmVTdGFydCA9IHN0YXRlLmxpbmVTdGFydDsKICAgICAgX2tleVBvcyA9IHN0YXRlLnBvc2l0aW9uOwogICAgICBpZiAoIWNvbXBvc2VOb2RlKHN0YXRlLCBmbG93SW5kZW50LCBDT05URVhUX0ZMT1dfT1VULCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoc3RhdGUubGluZSA9PT0gX2xpbmUpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNoID09PSA1OCkgewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgICAgaWYgKCFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIHdoaXRlc3BhY2UgY2hhcmFjdGVyIGlzIGV4cGVjdGVkIGFmdGVyIHRoZSBrZXktdmFsdWUgc2VwYXJhdG9yIHdpdGhpbiBhIGJsb2NrIG1hcHBpbmciKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgICAgIHN0b3JlTWFwcGluZ1BhaXIoc3RhdGUsIF9yZXN1bHQsIG92ZXJyaWRhYmxlS2V5cywga2V5VGFnLCBrZXlOb2RlLCBudWxsLCBfa2V5TGluZSwgX2tleUxpbmVTdGFydCwgX2tleVBvcyk7CiAgICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgICAgYWxsb3dDb21wYWN0ID0gZmFsc2U7CiAgICAgICAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICAgICAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgICAgIH0gZWxzZSBpZiAoZGV0ZWN0ZWQpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYW4gaW1wbGljaXQgbWFwcGluZyBwYWlyOyBhIGNvbG9uIGlzIG1pc3NlZCIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChkZXRlY3RlZCkgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYSBibG9jayBtYXBwaW5nIGVudHJ5OyBhIG11bHRpbGluZSBrZXkgbWF5IG5vdCBiZSBhbiBpbXBsaWNpdCBrZXkiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgIHN0YXRlLmFuY2hvciA9IF9hbmNob3I7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgIH0KICAgIGlmIChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgewogICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgICBfa2V5TGluZVN0YXJ0ID0gc3RhdGUubGluZVN0YXJ0OwogICAgICAgIF9rZXlQb3MgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfQogICAgICBpZiAoY29tcG9zZU5vZGUoc3RhdGUsIG5vZGVJbmRlbnQsIENPTlRFWFRfQkxPQ0tfT1VULCB0cnVlLCBhbGxvd0NvbXBhY3QpKSB7CiAgICAgICAgaWYgKGF0RXhwbGljaXRLZXkpIHsKICAgICAgICAgIGtleU5vZGUgPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZhbHVlTm9kZSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKCFhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MpOwogICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICB9CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmICgoc3RhdGUubGluZSA9PT0gX2xpbmUgfHwgc3RhdGUubGluZUluZGVudCA+IG5vZGVJbmRlbnQpICYmIGNoICE9PSAwKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJiYWQgaW5kZW50YXRpb24gb2YgYSBtYXBwaW5nIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICB9CiAgaWYgKGRldGVjdGVkKSB7CiAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgIHN0YXRlLmtpbmQgPSAibWFwcGluZyI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogIH0KICByZXR1cm4gZGV0ZWN0ZWQ7Cn0KZnVuY3Rpb24gcmVhZFRhZ1Byb3BlcnR5KHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgaXNWZXJiYXRpbSA9IGZhbHNlLCBpc05hbWVkID0gZmFsc2UsIHRhZ0hhbmRsZSwgdGFnTmFtZSwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggIT09IDMzKSByZXR1cm4gZmFsc2U7CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0aW9uIG9mIGEgdGFnIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggPT09IDYwKSB7CiAgICBpc1ZlcmJhdGltID0gdHJ1ZTsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB9IGVsc2UgaWYgKGNoID09PSAzMykgewogICAgaXNOYW1lZCA9IHRydWU7CiAgICB0YWdIYW5kbGUgPSAiISEiOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0gZWxzZSB7CiAgICB0YWdIYW5kbGUgPSAiISI7CiAgfQogIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBkbyB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0gd2hpbGUgKGNoICE9PSAwICYmIGNoICE9PSA2Mik7CiAgICBpZiAoc3RhdGUucG9zaXRpb24gPCBzdGF0ZS5sZW5ndGgpIHsKICAgICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSB2ZXJiYXRpbSB0YWciKTsKICAgIH0KICB9IGVsc2UgewogICAgd2hpbGUgKGNoICE9PSAwICYmICFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gMzMpIHsKICAgICAgICBpZiAoIWlzTmFtZWQpIHsKICAgICAgICAgIHRhZ0hhbmRsZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiAtIDEsIHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgICAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KHRhZ0hhbmRsZSkpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWVkIHRhZyBoYW5kbGUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzIik7CiAgICAgICAgICB9CiAgICAgICAgICBpc05hbWVkID0gdHJ1ZTsKICAgICAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uICsgMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZXhjbGFtYXRpb24gbWFya3MiKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgaWYgKFBBVFRFUk5fRkxPV19JTkRJQ0FUT1JTLnRlc3QodGFnTmFtZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZmxvdyBpbmRpY2F0b3IgY2hhcmFjdGVycyIpOwogICAgfQogIH0KICBpZiAodGFnTmFtZSAmJiAhUEFUVEVSTl9UQUdfVVJJLnRlc3QodGFnTmFtZSkpIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgbmFtZSBjYW5ub3QgY29udGFpbiBzdWNoIGNoYXJhY3RlcnM6ICIgKyB0YWdOYW1lKTsKICB9CiAgdHJ5IHsKICAgIHRhZ05hbWUgPSBkZWNvZGVVUklDb21wb25lbnQodGFnTmFtZSk7CiAgfSBjYXRjaCAoZXJyKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGFnIG5hbWUgaXMgbWFsZm9ybWVkOiAiICsgdGFnTmFtZSk7CiAgfQogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBzdGF0ZS50YWcgPSB0YWdOYW1lOwogIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIHRhZ0hhbmRsZSkpIHsKICAgIHN0YXRlLnRhZyA9IHN0YXRlLnRhZ01hcFt0YWdIYW5kbGVdICsgdGFnTmFtZTsKICB9IGVsc2UgaWYgKHRhZ0hhbmRsZSA9PT0gIiEiKSB7CiAgICBzdGF0ZS50YWcgPSAiISIgKyB0YWdOYW1lOwogIH0gZWxzZSBpZiAodGFnSGFuZGxlID09PSAiISEiKSB7CiAgICBzdGF0ZS50YWcgPSAidGFnOnlhbWwub3JnLDIwMDI6IiArIHRhZ05hbWU7CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmRlY2xhcmVkIHRhZyBoYW5kbGUgIicgKyB0YWdIYW5kbGUgKyAnIicpOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiByZWFkQW5jaG9yUHJvcGVydHkoc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzgpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgYW4gYW5jaG9yIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYW5jaG9yIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKTsKICB9CiAgc3RhdGUuYW5jaG9yID0gc3RhdGUuaW5wdXQuc2xpY2UoX3Bvc2l0aW9uLCBzdGF0ZS5wb3NpdGlvbik7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gcmVhZEFsaWFzKHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgYWxpYXMsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSA0MikgcmV0dXJuIGZhbHNlOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYWxpYXMgbm9kZSBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIGNoYXJhY3RlciIpOwogIH0KICBhbGlhcyA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS5hbmNob3JNYXAsIGFsaWFzKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3VuaWRlbnRpZmllZCBhbGlhcyAiJyArIGFsaWFzICsgJyInKTsKICB9CiAgc3RhdGUucmVzdWx0ID0gc3RhdGUuYW5jaG9yTWFwW2FsaWFzXTsKICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gY29tcG9zZU5vZGUoc3RhdGUsIHBhcmVudEluZGVudCwgbm9kZUNvbnRleHQsIGFsbG93VG9TZWVrLCBhbGxvd0NvbXBhY3QpIHsKICB2YXIgYWxsb3dCbG9ja1N0eWxlcywgYWxsb3dCbG9ja1NjYWxhcnMsIGFsbG93QmxvY2tDb2xsZWN0aW9ucywgaW5kZW50U3RhdHVzID0gMSwgYXROZXdMaW5lID0gZmFsc2UsIGhhc0NvbnRlbnQgPSBmYWxzZSwgdHlwZUluZGV4LCB0eXBlUXVhbnRpdHksIHR5cGVMaXN0LCB0eXBlMiwgZmxvd0luZGVudCwgYmxvY2tJbmRlbnQ7CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigib3BlbiIsIHN0YXRlKTsKICB9CiAgc3RhdGUudGFnID0gbnVsbDsKICBzdGF0ZS5hbmNob3IgPSBudWxsOwogIHN0YXRlLmtpbmQgPSBudWxsOwogIHN0YXRlLnJlc3VsdCA9IG51bGw7CiAgYWxsb3dCbG9ja1N0eWxlcyA9IGFsbG93QmxvY2tTY2FsYXJzID0gYWxsb3dCbG9ja0NvbGxlY3Rpb25zID0gQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0IHx8IENPTlRFWFRfQkxPQ0tfSU4gPT09IG5vZGVDb250ZXh0OwogIGlmIChhbGxvd1RvU2VlaykgewogICAgaWYgKHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKSkgewogICAgICBhdE5ld0xpbmUgPSB0cnVlOwogICAgICBpZiAoc3RhdGUubGluZUluZGVudCA+IHBhcmVudEluZGVudCkgewogICAgICAgIGluZGVudFN0YXR1cyA9IDE7CiAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gMDsKICAgICAgfSBlbHNlIGlmIChzdGF0ZS5saW5lSW5kZW50IDwgcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgd2hpbGUgKHJlYWRUYWdQcm9wZXJ0eShzdGF0ZSkgfHwgcmVhZEFuY2hvclByb3BlcnR5KHN0YXRlKSkgewogICAgICBpZiAoc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpKSB7CiAgICAgICAgYXROZXdMaW5lID0gdHJ1ZTsKICAgICAgICBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgPSBhbGxvd0Jsb2NrU3R5bGVzOwogICAgICAgIGlmIChzdGF0ZS5saW5lSW5kZW50ID4gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAxOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAwOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA8IHBhcmVudEluZGVudCkgewogICAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgfQogIGlmIChhbGxvd0Jsb2NrQ29sbGVjdGlvbnMpIHsKICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGF0TmV3TGluZSB8fCBhbGxvd0NvbXBhY3Q7CiAgfQogIGlmIChpbmRlbnRTdGF0dXMgPT09IDEgfHwgQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0KSB7CiAgICBpZiAoQ09OVEVYVF9GTE9XX0lOID09PSBub2RlQ29udGV4dCB8fCBDT05URVhUX0ZMT1dfT1VUID09PSBub2RlQ29udGV4dCkgewogICAgICBmbG93SW5kZW50ID0gcGFyZW50SW5kZW50OwogICAgfSBlbHNlIHsKICAgICAgZmxvd0luZGVudCA9IHBhcmVudEluZGVudCArIDE7CiAgICB9CiAgICBibG9ja0luZGVudCA9IHN0YXRlLnBvc2l0aW9uIC0gc3RhdGUubGluZVN0YXJ0OwogICAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgICBpZiAoYWxsb3dCbG9ja0NvbGxlY3Rpb25zICYmIChyZWFkQmxvY2tTZXF1ZW5jZShzdGF0ZSwgYmxvY2tJbmRlbnQpIHx8IHJlYWRCbG9ja01hcHBpbmcoc3RhdGUsIGJsb2NrSW5kZW50LCBmbG93SW5kZW50KSkgfHwgcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBmbG93SW5kZW50KSkgewogICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChhbGxvd0Jsb2NrU2NhbGFycyAmJiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWREb3VibGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICB9IGVsc2UgaWYgKHJlYWRBbGlhcyhzdGF0ZSkpIHsKICAgICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICAgICAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCB8fCBzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImFsaWFzIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGFueSBwcm9wZXJ0aWVzIik7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChyZWFkUGxhaW5TY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQsIENPTlRFWFRfRkxPV19JTiA9PT0gbm9kZUNvbnRleHQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICAgIGlmIChzdGF0ZS50YWcgPT09IG51bGwpIHsKICAgICAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoaW5kZW50U3RhdHVzID09PSAwKSB7CiAgICAgIGhhc0NvbnRlbnQgPSBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgJiYgcmVhZEJsb2NrU2VxdWVuY2Uoc3RhdGUsIGJsb2NrSW5kZW50KTsKICAgIH0KICB9CiAgaWYgKHN0YXRlLnRhZyA9PT0gbnVsbCkgewogICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgIH0KICB9IGVsc2UgaWYgKHN0YXRlLnRhZyA9PT0gIj8iKSB7CiAgICBpZiAoc3RhdGUucmVzdWx0ICE9PSBudWxsICYmIHN0YXRlLmtpbmQgIT09ICJzY2FsYXIiKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPD8+IHRhZzsgaXQgc2hvdWxkIGJlICJzY2FsYXIiLCBub3QgIicgKyBzdGF0ZS5raW5kICsgJyInKTsKICAgIH0KICAgIGZvciAodHlwZUluZGV4ID0gMCwgdHlwZVF1YW50aXR5ID0gc3RhdGUuaW1wbGljaXRUeXBlcy5sZW5ndGg7IHR5cGVJbmRleCA8IHR5cGVRdWFudGl0eTsgdHlwZUluZGV4ICs9IDEpIHsKICAgICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW3R5cGVJbmRleF07CiAgICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCkpIHsKICAgICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0KTsKICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi50YWc7CiAgICAgICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwogICAgICB9CiAgICB9CiAgfSBlbHNlIGlmIChzdGF0ZS50YWcgIT09ICIhIikgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQxLmNhbGwoc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdLCBzdGF0ZS50YWcpKSB7CiAgICAgIHR5cGUyID0gc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdW3N0YXRlLnRhZ107CiAgICB9IGVsc2UgewogICAgICB0eXBlMiA9IG51bGw7CiAgICAgIHR5cGVMaXN0ID0gc3RhdGUudHlwZU1hcC5tdWx0aVtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdOwogICAgICBmb3IgKHR5cGVJbmRleCA9IDAsIHR5cGVRdWFudGl0eSA9IHR5cGVMaXN0Lmxlbmd0aDsgdHlwZUluZGV4IDwgdHlwZVF1YW50aXR5OyB0eXBlSW5kZXggKz0gMSkgewogICAgICAgIGlmIChzdGF0ZS50YWcuc2xpY2UoMCwgdHlwZUxpc3RbdHlwZUluZGV4XS50YWcubGVuZ3RoKSA9PT0gdHlwZUxpc3RbdHlwZUluZGV4XS50YWcpIHsKICAgICAgICAgIHR5cGUyID0gdHlwZUxpc3RbdHlwZUluZGV4XTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgaWYgKCF0eXBlMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5rbm93biB0YWcgITwiICsgc3RhdGUudGFnICsgIj4iKTsKICAgIH0KICAgIGlmIChzdGF0ZS5yZXN1bHQgIT09IG51bGwgJiYgdHlwZTIua2luZCAhPT0gc3RhdGUua2luZCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5hY2NlcHRhYmxlIG5vZGUga2luZCBmb3IgITwiICsgc3RhdGUudGFnICsgJz4gdGFnOyBpdCBzaG91bGQgYmUgIicgKyB0eXBlMi5raW5kICsgJyIsIG5vdCAiJyArIHN0YXRlLmtpbmQgKyAnIicpOwogICAgfQogICAgaWYgKCF0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCwgc3RhdGUudGFnKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiY2Fubm90IHJlc29sdmUgYSBub2RlIHdpdGggITwiICsgc3RhdGUudGFnICsgIj4gZXhwbGljaXQgdGFnIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0LCBzdGF0ZS50YWcpOwogICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigiY2xvc2UiLCBzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS50YWcgIT09IG51bGwgfHwgc3RhdGUuYW5jaG9yICE9PSBudWxsIHx8IGhhc0NvbnRlbnQ7Cn0KZnVuY3Rpb24gcmVhZERvY3VtZW50KHN0YXRlKSB7CiAgdmFyIGRvY3VtZW50U3RhcnQgPSBzdGF0ZS5wb3NpdGlvbiwgX3Bvc2l0aW9uLCBkaXJlY3RpdmVOYW1lLCBkaXJlY3RpdmVBcmdzLCBoYXNEaXJlY3RpdmVzID0gZmFsc2UsIGNoOwogIHN0YXRlLnZlcnNpb24gPSBudWxsOwogIHN0YXRlLmNoZWNrTGluZUJyZWFrcyA9IHN0YXRlLmxlZ2FjeTsKICBzdGF0ZS50YWdNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICBzdGF0ZS5hbmNob3JNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICB3aGlsZSAoKGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikpICE9PSAwKSB7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPiAwIHx8IGNoICE9PSAzNykgewogICAgICBicmVhazsKICAgIH0KICAgIGhhc0RpcmVjdGl2ZXMgPSB0cnVlOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb247CiAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgZGlyZWN0aXZlTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgZGlyZWN0aXZlQXJncyA9IFtdOwogICAgaWYgKGRpcmVjdGl2ZU5hbWUubGVuZ3RoIDwgMSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlIG5hbWUgbXVzdCBub3QgYmUgbGVzcyB0aGFuIG9uZSBjaGFyYWN0ZXIgaW4gbGVuZ3RoIik7CiAgICB9CiAgICB3aGlsZSAoY2ggIT09IDApIHsKICAgICAgd2hpbGUgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgICBpZiAoY2ggPT09IDM1KSB7CiAgICAgICAgZG8gewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgIH0gd2hpbGUgKGNoICE9PSAwICYmICFpc19FT0woY2gpKTsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoaXNfRU9MKGNoKSkgYnJlYWs7CiAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIH0KICAgICAgZGlyZWN0aXZlQXJncy5wdXNoKHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pKTsKICAgIH0KICAgIGlmIChjaCAhPT0gMCkgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChkaXJlY3RpdmVIYW5kbGVycywgZGlyZWN0aXZlTmFtZSkpIHsKICAgICAgZGlyZWN0aXZlSGFuZGxlcnNbZGlyZWN0aXZlTmFtZV0oc3RhdGUsIGRpcmVjdGl2ZU5hbWUsIGRpcmVjdGl2ZUFyZ3MpOwogICAgfSBlbHNlIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAndW5rbm93biBkb2N1bWVudCBkaXJlY3RpdmUgIicgKyBkaXJlY3RpdmVOYW1lICsgJyInKTsKICAgIH0KICB9CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5saW5lSW5kZW50ID09PSAwICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pID09PSA0NSAmJiBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSkgPT09IDQ1ICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAyKSA9PT0gNDUpIHsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgfSBlbHNlIGlmIChoYXNEaXJlY3RpdmVzKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlcyBlbmQgbWFyayBpcyBleHBlY3RlZCIpOwogIH0KICBjb21wb3NlTm9kZShzdGF0ZSwgc3RhdGUubGluZUluZGVudCAtIDEsIENPTlRFWFRfQkxPQ0tfT1VULCBmYWxzZSwgdHJ1ZSk7CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5jaGVja0xpbmVCcmVha3MgJiYgUEFUVEVSTl9OT05fQVNDSUlfTElORV9CUkVBS1MudGVzdChzdGF0ZS5pbnB1dC5zbGljZShkb2N1bWVudFN0YXJ0LCBzdGF0ZS5wb3NpdGlvbikpKSB7CiAgICB0aHJvd1dhcm5pbmcoc3RhdGUsICJub24tQVNDSUkgbGluZSBicmVha3MgYXJlIGludGVycHJldGVkIGFzIGNvbnRlbnQiKTsKICB9CiAgc3RhdGUuZG9jdW1lbnRzLnB1c2goc3RhdGUucmVzdWx0KTsKICBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpKSB7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDQ2KSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgIH0KICAgIHJldHVybjsKICB9CiAgaWYgKHN0YXRlLnBvc2l0aW9uIDwgc3RhdGUubGVuZ3RoIC0gMSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImVuZCBvZiB0aGUgc3RyZWFtIG9yIGEgZG9jdW1lbnQgc2VwYXJhdG9yIGlzIGV4cGVjdGVkIik7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KZnVuY3Rpb24gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucykgewogIGlucHV0ID0gU3RyaW5nKGlucHV0KTsKICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICBpZiAoaW5wdXQubGVuZ3RoICE9PSAwKSB7CiAgICBpZiAoaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTAgJiYgaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTMpIHsKICAgICAgaW5wdXQgKz0gIlxuIjsKICAgIH0KICAgIGlmIChpbnB1dC5jaGFyQ29kZUF0KDApID09PSA2NTI3OSkgewogICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKDEpOwogICAgfQogIH0KICB2YXIgc3RhdGUgPSBuZXcgU3RhdGUkMShpbnB1dCwgb3B0aW9ucyk7CiAgdmFyIG51bGxwb3MgPSBpbnB1dC5pbmRleE9mKCJcMCIpOwogIGlmIChudWxscG9zICE9PSAtMSkgewogICAgc3RhdGUucG9zaXRpb24gPSBudWxscG9zOwogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm51bGwgYnl0ZSBpcyBub3QgYWxsb3dlZCBpbiBpbnB1dCIpOwogIH0KICBzdGF0ZS5pbnB1dCArPSAiXDAiOwogIHdoaWxlIChzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSA9PT0gMzIpIHsKICAgIHN0YXRlLmxpbmVJbmRlbnQgKz0gMTsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDE7CiAgfQogIHdoaWxlIChzdGF0ZS5wb3NpdGlvbiA8IHN0YXRlLmxlbmd0aCAtIDEpIHsKICAgIHJlYWREb2N1bWVudChzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS5kb2N1bWVudHM7Cn0KZnVuY3Rpb24gbG9hZEFsbCQxKGlucHV0LCBpdGVyYXRvciwgb3B0aW9ucykgewogIGlmIChpdGVyYXRvciAhPT0gbnVsbCAmJiB0eXBlb2YgaXRlcmF0b3IgPT09ICJvYmplY3QiICYmIHR5cGVvZiBvcHRpb25zID09PSAidW5kZWZpbmVkIikgewogICAgb3B0aW9ucyA9IGl0ZXJhdG9yOwogICAgaXRlcmF0b3IgPSBudWxsOwogIH0KICB2YXIgZG9jdW1lbnRzID0gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucyk7CiAgaWYgKHR5cGVvZiBpdGVyYXRvciAhPT0gImZ1bmN0aW9uIikgewogICAgcmV0dXJuIGRvY3VtZW50czsKICB9CiAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW5ndGggPSBkb2N1bWVudHMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgaXRlcmF0b3IoZG9jdW1lbnRzW2luZGV4XSk7CiAgfQp9CmZ1bmN0aW9uIGxvYWQkMShpbnB1dCwgb3B0aW9ucykgewogIHZhciBkb2N1bWVudHMgPSBsb2FkRG9jdW1lbnRzKGlucHV0LCBvcHRpb25zKTsKICBpZiAoZG9jdW1lbnRzLmxlbmd0aCA9PT0gMCkgewogICAgcmV0dXJuIHZvaWQgMDsKICB9IGVsc2UgaWYgKGRvY3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgIHJldHVybiBkb2N1bWVudHNbMF07CiAgfQogIHRocm93IG5ldyBleGNlcHRpb24oImV4cGVjdGVkIGEgc2luZ2xlIGRvY3VtZW50IGluIHRoZSBzdHJlYW0sIGJ1dCBmb3VuZCBtb3JlIik7Cn0KdmFyIGxvYWRBbGxfMSA9IGxvYWRBbGwkMTsKdmFyIGxvYWRfMSA9IGxvYWQkMTsKdmFyIGxvYWRlciA9IHsKICBsb2FkQWxsOiBsb2FkQWxsXzEsCiAgbG9hZDogbG9hZF8xCn07CnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp2YXIgX2hhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENIQVJfQk9NID0gNjUyNzk7CnZhciBDSEFSX1RBQiA9IDk7CnZhciBDSEFSX0xJTkVfRkVFRCA9IDEwOwp2YXIgQ0hBUl9DQVJSSUFHRV9SRVRVUk4gPSAxMzsKdmFyIENIQVJfU1BBQ0UgPSAzMjsKdmFyIENIQVJfRVhDTEFNQVRJT04gPSAzMzsKdmFyIENIQVJfRE9VQkxFX1FVT1RFID0gMzQ7CnZhciBDSEFSX1NIQVJQID0gMzU7CnZhciBDSEFSX1BFUkNFTlQgPSAzNzsKdmFyIENIQVJfQU1QRVJTQU5EID0gMzg7CnZhciBDSEFSX1NJTkdMRV9RVU9URSA9IDM5Owp2YXIgQ0hBUl9BU1RFUklTSyA9IDQyOwp2YXIgQ0hBUl9DT01NQSA9IDQ0Owp2YXIgQ0hBUl9NSU5VUyA9IDQ1Owp2YXIgQ0hBUl9DT0xPTiA9IDU4Owp2YXIgQ0hBUl9FUVVBTFMgPSA2MTsKdmFyIENIQVJfR1JFQVRFUl9USEFOID0gNjI7CnZhciBDSEFSX1FVRVNUSU9OID0gNjM7CnZhciBDSEFSX0NPTU1FUkNJQUxfQVQgPSA2NDsKdmFyIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCA9IDkxOwp2YXIgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCA9IDkzOwp2YXIgQ0hBUl9HUkFWRV9BQ0NFTlQgPSA5NjsKdmFyIENIQVJfTEVGVF9DVVJMWV9CUkFDS0VUID0gMTIzOwp2YXIgQ0hBUl9WRVJUSUNBTF9MSU5FID0gMTI0Owp2YXIgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDS0VUID0gMTI1Owp2YXIgRVNDQVBFX1NFUVVFTkNFUyA9IHt9OwpFU0NBUEVfU0VRVUVOQ0VTWzBdID0gIlxcMCI7CkVTQ0FQRV9TRVFVRU5DRVNbN10gPSAiXFxhIjsKRVNDQVBFX1NFUVVFTkNFU1s4XSA9ICJcXGIiOwpFU0NBUEVfU0VRVUVOQ0VTWzldID0gIlxcdCI7CkVTQ0FQRV9TRVFVRU5DRVNbMTBdID0gIlxcbiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTFdID0gIlxcdiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTJdID0gIlxcZiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTNdID0gIlxcciI7CkVTQ0FQRV9TRVFVRU5DRVNbMjddID0gIlxcZSI7CkVTQ0FQRV9TRVFVRU5DRVNbMzRdID0gJ1xcIic7CkVTQ0FQRV9TRVFVRU5DRVNbOTJdID0gIlxcXFwiOwpFU0NBUEVfU0VRVUVOQ0VTWzEzM10gPSAiXFxOIjsKRVNDQVBFX1NFUVVFTkNFU1sxNjBdID0gIlxcXyI7CkVTQ0FQRV9TRVFVRU5DRVNbODIzMl0gPSAiXFxMIjsKRVNDQVBFX1NFUVVFTkNFU1s4MjMzXSA9ICJcXFAiOwp2YXIgREVQUkVDQVRFRF9CT09MRUFOU19TWU5UQVggPSBbCiAgInkiLAogICJZIiwKICAieWVzIiwKICAiWWVzIiwKICAiWUVTIiwKICAib24iLAogICJPbiIsCiAgIk9OIiwKICAibiIsCiAgIk4iLAogICJubyIsCiAgIk5vIiwKICAiTk8iLAogICJvZmYiLAogICJPZmYiLAogICJPRkYiCl07CnZhciBERVBSRUNBVEVEX0JBU0U2MF9TWU5UQVggPSAvXlstK10/WzAtOV9dKyg/OjpbMC05X10rKSsoPzpcLlswLTlfXSopPyQvOwpmdW5jdGlvbiBjb21waWxlU3R5bGVNYXAoc2NoZW1hMiwgbWFwMikgewogIHZhciByZXN1bHQsIGtleXMsIGluZGV4LCBsZW5ndGgsIHRhZywgc3R5bGUsIHR5cGUyOwogIGlmIChtYXAyID09PSBudWxsKSByZXR1cm4ge307CiAgcmVzdWx0ID0ge307CiAga2V5cyA9IE9iamVjdC5rZXlzKG1hcDIpOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBrZXlzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHRhZyA9IGtleXNbaW5kZXhdOwogICAgc3R5bGUgPSBTdHJpbmcobWFwMlt0YWddKTsKICAgIGlmICh0YWcuc2xpY2UoMCwgMikgPT09ICIhISIpIHsKICAgICAgdGFnID0gInRhZzp5YW1sLm9yZywyMDAyOiIgKyB0YWcuc2xpY2UoMik7CiAgICB9CiAgICB0eXBlMiA9IHNjaGVtYTIuY29tcGlsZWRUeXBlTWFwWyJmYWxsYmFjayJdW3RhZ107CiAgICBpZiAodHlwZTIgJiYgX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIuc3R5bGVBbGlhc2VzLCBzdHlsZSkpIHsKICAgICAgc3R5bGUgPSB0eXBlMi5zdHlsZUFsaWFzZXNbc3R5bGVdOwogICAgfQogICAgcmVzdWx0W3RhZ10gPSBzdHlsZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBlbmNvZGVIZXgoY2hhcmFjdGVyKSB7CiAgdmFyIHN0cmluZywgaGFuZGxlLCBsZW5ndGg7CiAgc3RyaW5nID0gY2hhcmFjdGVyLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOwogIGlmIChjaGFyYWN0ZXIgPD0gMjU1KSB7CiAgICBoYW5kbGUgPSAieCI7CiAgICBsZW5ndGggPSAyOwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDY1NTM1KSB7CiAgICBoYW5kbGUgPSAidSI7CiAgICBsZW5ndGggPSA0OwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDQyOTQ5NjcyOTUpIHsKICAgIGhhbmRsZSA9ICJVIjsKICAgIGxlbmd0aCA9IDg7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oImNvZGUgcG9pbnQgd2l0aGluIGEgc3RyaW5nIG1heSBub3QgYmUgZ3JlYXRlciB0aGFuIDB4RkZGRkZGRkYiKTsKICB9CiAgcmV0dXJuICJcXCIgKyBoYW5kbGUgKyBjb21tb24ucmVwZWF0KCIwIiwgbGVuZ3RoIC0gc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7Cn0KdmFyIFFVT1RJTkdfVFlQRV9TSU5HTEUgPSAxOwp2YXIgUVVPVElOR19UWVBFX0RPVUJMRSA9IDI7CmZ1bmN0aW9uIFN0YXRlKG9wdGlvbnMpIHsKICB0aGlzLnNjaGVtYSA9IG9wdGlvbnNbInNjaGVtYSJdIHx8IF9kZWZhdWx0OwogIHRoaXMuaW5kZW50ID0gTWF0aC5tYXgoMSwgb3B0aW9uc1siaW5kZW50Il0gfHwgMik7CiAgdGhpcy5ub0FycmF5SW5kZW50ID0gb3B0aW9uc1sibm9BcnJheUluZGVudCJdIHx8IGZhbHNlOwogIHRoaXMuc2tpcEludmFsaWQgPSBvcHRpb25zWyJza2lwSW52YWxpZCJdIHx8IGZhbHNlOwogIHRoaXMuZmxvd0xldmVsID0gY29tbW9uLmlzTm90aGluZyhvcHRpb25zWyJmbG93TGV2ZWwiXSkgPyAtMSA6IG9wdGlvbnNbImZsb3dMZXZlbCJdOwogIHRoaXMuc3R5bGVNYXAgPSBjb21waWxlU3R5bGVNYXAodGhpcy5zY2hlbWEsIG9wdGlvbnNbInN0eWxlcyJdIHx8IG51bGwpOwogIHRoaXMuc29ydEtleXMgPSBvcHRpb25zWyJzb3J0S2V5cyJdIHx8IGZhbHNlOwogIHRoaXMubGluZVdpZHRoID0gb3B0aW9uc1sibGluZVdpZHRoIl0gfHwgODA7CiAgdGhpcy5ub1JlZnMgPSBvcHRpb25zWyJub1JlZnMiXSB8fCBmYWxzZTsKICB0aGlzLm5vQ29tcGF0TW9kZSA9IG9wdGlvbnNbIm5vQ29tcGF0TW9kZSJdIHx8IGZhbHNlOwogIHRoaXMuY29uZGVuc2VGbG93ID0gb3B0aW9uc1siY29uZGVuc2VGbG93Il0gfHwgZmFsc2U7CiAgdGhpcy5xdW90aW5nVHlwZSA9IG9wdGlvbnNbInF1b3RpbmdUeXBlIl0gPT09ICciJyA/IFFVT1RJTkdfVFlQRV9ET1VCTEUgOiBRVU9USU5HX1RZUEVfU0lOR0xFOwogIHRoaXMuZm9yY2VRdW90ZXMgPSBvcHRpb25zWyJmb3JjZVF1b3RlcyJdIHx8IGZhbHNlOwogIHRoaXMucmVwbGFjZXIgPSB0eXBlb2Ygb3B0aW9uc1sicmVwbGFjZXIiXSA9PT0gImZ1bmN0aW9uIiA/IG9wdGlvbnNbInJlcGxhY2VyIl0gOiBudWxsOwogIHRoaXMuaW1wbGljaXRUeXBlcyA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQ7CiAgdGhpcy5leHBsaWNpdFR5cGVzID0gdGhpcy5zY2hlbWEuY29tcGlsZWRFeHBsaWNpdDsKICB0aGlzLnRhZyA9IG51bGw7CiAgdGhpcy5yZXN1bHQgPSAiIjsKICB0aGlzLmR1cGxpY2F0ZXMgPSBbXTsKICB0aGlzLnVzZWREdXBsaWNhdGVzID0gbnVsbDsKfQpmdW5jdGlvbiBpbmRlbnRTdHJpbmcoc3RyaW5nLCBzcGFjZXMpIHsKICB2YXIgaW5kID0gY29tbW9uLnJlcGVhdCgiICIsIHNwYWNlcyksIHBvc2l0aW9uID0gMCwgbmV4dCA9IC0xLCByZXN1bHQgPSAiIiwgbGluZSwgbGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICB3aGlsZSAocG9zaXRpb24gPCBsZW5ndGgpIHsKICAgIG5leHQgPSBzdHJpbmcuaW5kZXhPZigiXG4iLCBwb3NpdGlvbik7CiAgICBpZiAobmV4dCA9PT0gLTEpIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbik7CiAgICAgIHBvc2l0aW9uID0gbGVuZ3RoOwogICAgfSBlbHNlIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbiwgbmV4dCArIDEpOwogICAgICBwb3NpdGlvbiA9IG5leHQgKyAxOwogICAgfQogICAgaWYgKGxpbmUubGVuZ3RoICYmIGxpbmUgIT09ICJcbiIpIHJlc3VsdCArPSBpbmQ7CiAgICByZXN1bHQgKz0gbGluZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCkgewogIHJldHVybiAiXG4iICsgY29tbW9uLnJlcGVhdCgiICIsIHN0YXRlLmluZGVudCAqIGxldmVsKTsKfQpmdW5jdGlvbiB0ZXN0SW1wbGljaXRSZXNvbHZpbmcoc3RhdGUsIHN0cjIpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwgdHlwZTI7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHN0YXRlLmltcGxpY2l0VHlwZXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW2luZGV4XTsKICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0cjIpKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gaXNXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gYyA9PT0gQ0hBUl9TUEFDRSB8fCBjID09PSBDSEFSX1RBQjsKfQpmdW5jdGlvbiBpc1ByaW50YWJsZShjKSB7CiAgcmV0dXJuIDMyIDw9IGMgJiYgYyA8PSAxMjYgfHwgMTYxIDw9IGMgJiYgYyA8PSA1NTI5NSAmJiBjICE9PSA4MjMyICYmIGMgIT09IDgyMzMgfHwgNTczNDQgPD0gYyAmJiBjIDw9IDY1NTMzICYmIGMgIT09IENIQVJfQk9NIHx8IDY1NTM2IDw9IGMgJiYgYyA8PSAxMTE0MTExOwp9CmZ1bmN0aW9uIGlzTnNDaGFyT3JXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gaXNQcmludGFibGUoYykgJiYgYyAhPT0gQ0hBUl9CT00gJiYgYyAhPT0gQ0hBUl9DQVJSSUFHRV9SRVRVUk4gJiYgYyAhPT0gQ0hBUl9MSU5FX0ZFRUQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmUoYywgcHJldiwgaW5ibG9jaykgewogIHZhciBjSXNOc0NoYXJPcldoaXRlc3BhY2UgPSBpc05zQ2hhck9yV2hpdGVzcGFjZShjKTsKICB2YXIgY0lzTnNDaGFyID0gY0lzTnNDaGFyT3JXaGl0ZXNwYWNlICYmICFpc1doaXRlc3BhY2UoYyk7CiAgcmV0dXJuICgKICAgIC8vIG5zLXBsYWluLXNhZmUKICAgIChpbmJsb2NrID8gKAogICAgICAvLyBjID0gZmxvdy1pbgogICAgICBjSXNOc0NoYXJPcldoaXRlc3BhY2UKICAgICkgOiBjSXNOc0NoYXJPcldoaXRlc3BhY2UgJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQpICYmIGMgIT09IENIQVJfU0hBUlAgJiYgIShwcmV2ID09PSBDSEFSX0NPTE9OICYmICFjSXNOc0NoYXIpIHx8IGlzTnNDaGFyT3JXaGl0ZXNwYWNlKHByZXYpICYmICFpc1doaXRlc3BhY2UocHJldikgJiYgYyA9PT0gQ0hBUl9TSEFSUCB8fCBwcmV2ID09PSBDSEFSX0NPTE9OICYmIGNJc05zQ2hhcgogICk7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVGaXJzdChjKSB7CiAgcmV0dXJuIGlzUHJpbnRhYmxlKGMpICYmIGMgIT09IENIQVJfQk9NICYmICFpc1doaXRlc3BhY2UoYykgJiYgYyAhPT0gQ0hBUl9NSU5VUyAmJiBjICE9PSBDSEFSX1FVRVNUSU9OICYmIGMgIT09IENIQVJfQ09MT04gJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9TSEFSUCAmJiBjICE9PSBDSEFSX0FNUEVSU0FORCAmJiBjICE9PSBDSEFSX0FTVEVSSVNLICYmIGMgIT09IENIQVJfRVhDTEFNQVRJT04gJiYgYyAhPT0gQ0hBUl9WRVJUSUNBTF9MSU5FICYmIGMgIT09IENIQVJfRVFVQUxTICYmIGMgIT09IENIQVJfR1JFQVRFUl9USEFOICYmIGMgIT09IENIQVJfU0lOR0xFX1FVT1RFICYmIGMgIT09IENIQVJfRE9VQkxFX1FVT1RFICYmIGMgIT09IENIQVJfUEVSQ0VOVCAmJiBjICE9PSBDSEFSX0NPTU1FUkNJQUxfQVQgJiYgYyAhPT0gQ0hBUl9HUkFWRV9BQ0NFTlQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVMYXN0KGMpIHsKICByZXR1cm4gIWlzV2hpdGVzcGFjZShjKSAmJiBjICE9PSBDSEFSX0NPTE9OOwp9CmZ1bmN0aW9uIGNvZGVQb2ludEF0KHN0cmluZywgcG9zKSB7CiAgdmFyIGZpcnN0ID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zKSwgc2Vjb25kOwogIGlmIChmaXJzdCA+PSA1NTI5NiAmJiBmaXJzdCA8PSA1NjMxOSAmJiBwb3MgKyAxIDwgc3RyaW5nLmxlbmd0aCkgewogICAgc2Vjb25kID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zICsgMSk7CiAgICBpZiAoc2Vjb25kID49IDU2MzIwICYmIHNlY29uZCA8PSA1NzM0MykgewogICAgICByZXR1cm4gKGZpcnN0IC0gNTUyOTYpICogMTAyNCArIHNlY29uZCAtIDU2MzIwICsgNjU1MzY7CiAgICB9CiAgfQogIHJldHVybiBmaXJzdDsKfQpmdW5jdGlvbiBuZWVkSW5kZW50SW5kaWNhdG9yKHN0cmluZykgewogIHZhciBsZWFkaW5nU3BhY2VSZSA9IC9eXG4qIC87CiAgcmV0dXJuIGxlYWRpbmdTcGFjZVJlLnRlc3Qoc3RyaW5nKTsKfQp2YXIgU1RZTEVfUExBSU4gPSAxOwp2YXIgU1RZTEVfU0lOR0xFID0gMjsKdmFyIFNUWUxFX0xJVEVSQUwgPSAzOwp2YXIgU1RZTEVfRk9MREVEID0gNDsKdmFyIFNUWUxFX0RPVUJMRSA9IDU7CmZ1bmN0aW9uIGNob29zZVNjYWxhclN0eWxlKHN0cmluZywgc2luZ2xlTGluZU9ubHksIGluZGVudFBlckxldmVsLCBsaW5lV2lkdGgsIHRlc3RBbWJpZ3VvdXNUeXBlLCBxdW90aW5nVHlwZSwgZm9yY2VRdW90ZXMsIGluYmxvY2spIHsKICB2YXIgaTsKICB2YXIgY2hhciA9IDA7CiAgdmFyIHByZXZDaGFyID0gbnVsbDsKICB2YXIgaGFzTGluZUJyZWFrID0gZmFsc2U7CiAgdmFyIGhhc0ZvbGRhYmxlTGluZSA9IGZhbHNlOwogIHZhciBzaG91bGRUcmFja1dpZHRoID0gbGluZVdpZHRoICE9PSAtMTsKICB2YXIgcHJldmlvdXNMaW5lQnJlYWsgPSAtMTsKICB2YXIgcGxhaW4gPSBpc1BsYWluU2FmZUZpcnN0KGNvZGVQb2ludEF0KHN0cmluZywgMCkpICYmIGlzUGxhaW5TYWZlTGFzdChjb2RlUG9pbnRBdChzdHJpbmcsIHN0cmluZy5sZW5ndGggLSAxKSk7CiAgaWYgKHNpbmdsZUxpbmVPbmx5IHx8IGZvcmNlUXVvdGVzKSB7CiAgICBmb3IgKGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgY2hhciA+PSA2NTUzNiA/IGkgKz0gMiA6IGkrKykgewogICAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgICAgaWYgKCFpc1ByaW50YWJsZShjaGFyKSkgewogICAgICAgIHJldHVybiBTVFlMRV9ET1VCTEU7CiAgICAgIH0KICAgICAgcGxhaW4gPSBwbGFpbiAmJiBpc1BsYWluU2FmZShjaGFyLCBwcmV2Q2hhciwgaW5ibG9jayk7CiAgICAgIHByZXZDaGFyID0gY2hhcjsKICAgIH0KICB9IGVsc2UgewogICAgZm9yIChpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGNoYXIgPj0gNjU1MzYgPyBpICs9IDIgOiBpKyspIHsKICAgICAgY2hhciA9IGNvZGVQb2ludEF0KHN0cmluZywgaSk7CiAgICAgIGlmIChjaGFyID09PSBDSEFSX0xJTkVfRkVFRCkgewogICAgICAgIGhhc0xpbmVCcmVhayA9IHRydWU7CiAgICAgICAgaWYgKHNob3VsZFRyYWNrV2lkdGgpIHsKICAgICAgICAgIGhhc0ZvbGRhYmxlTGluZSA9IGhhc0ZvbGRhYmxlTGluZSB8fCAvLyBGb2xkYWJsZSBsaW5lID0gdG9vIGxvbmcsIGFuZCBub3QgbW9yZS1pbmRlbnRlZC4KICAgICAgICAgIGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIjsKICAgICAgICAgIHByZXZpb3VzTGluZUJyZWFrID0gaTsKICAgICAgICB9CiAgICAgIH0gZWxzZSBpZiAoIWlzUHJpbnRhYmxlKGNoYXIpKSB7CiAgICAgICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICAgICAgfQogICAgICBwbGFpbiA9IHBsYWluICYmIGlzUGxhaW5TYWZlKGNoYXIsIHByZXZDaGFyLCBpbmJsb2NrKTsKICAgICAgcHJldkNoYXIgPSBjaGFyOwogICAgfQogICAgaGFzRm9sZGFibGVMaW5lID0gaGFzRm9sZGFibGVMaW5lIHx8IHNob3VsZFRyYWNrV2lkdGggJiYgKGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIik7CiAgfQogIGlmICghaGFzTGluZUJyZWFrICYmICFoYXNGb2xkYWJsZUxpbmUpIHsKICAgIGlmIChwbGFpbiAmJiAhZm9yY2VRdW90ZXMgJiYgIXRlc3RBbWJpZ3VvdXNUeXBlKHN0cmluZykpIHsKICAgICAgcmV0dXJuIFNUWUxFX1BMQUlOOwogICAgfQogICAgcmV0dXJuIHF1b3RpbmdUeXBlID09PSBRVU9USU5HX1RZUEVfRE9VQkxFID8gU1RZTEVfRE9VQkxFIDogU1RZTEVfU0lOR0xFOwogIH0KICBpZiAoaW5kZW50UGVyTGV2ZWwgPiA5ICYmIG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSkgewogICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICB9CiAgaWYgKCFmb3JjZVF1b3RlcykgewogICAgcmV0dXJuIGhhc0ZvbGRhYmxlTGluZSA/IFNUWUxFX0ZPTERFRCA6IFNUWUxFX0xJVEVSQUw7CiAgfQogIHJldHVybiBxdW90aW5nVHlwZSA9PT0gUVVPVElOR19UWVBFX0RPVUJMRSA/IFNUWUxFX0RPVUJMRSA6IFNUWUxFX1NJTkdMRTsKfQpmdW5jdGlvbiB3cml0ZVNjYWxhcihzdGF0ZSwgc3RyaW5nLCBsZXZlbCwgaXNrZXksIGluYmxvY2spIHsKICBzdGF0ZS5kdW1wID0gZnVuY3Rpb24oKSB7CiAgICBpZiAoc3RyaW5nLmxlbmd0aCA9PT0gMCkgewogICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIiInIDogIicnIjsKICAgIH0KICAgIGlmICghc3RhdGUubm9Db21wYXRNb2RlKSB7CiAgICAgIGlmIChERVBSRUNBVEVEX0JPT0xFQU5TX1NZTlRBWC5pbmRleE9mKHN0cmluZykgIT09IC0xIHx8IERFUFJFQ0FURURfQkFTRTYwX1NZTlRBWC50ZXN0KHN0cmluZykpIHsKICAgICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIicgKyBzdHJpbmcgKyAnIicgOiAiJyIgKyBzdHJpbmcgKyAiJyI7CiAgICAgIH0KICAgIH0KICAgIHZhciBpbmRlbnQgPSBzdGF0ZS5pbmRlbnQgKiBNYXRoLm1heCgxLCBsZXZlbCk7CiAgICB2YXIgbGluZVdpZHRoID0gc3RhdGUubGluZVdpZHRoID09PSAtMSA/IC0xIDogTWF0aC5tYXgoTWF0aC5taW4oc3RhdGUubGluZVdpZHRoLCA0MCksIHN0YXRlLmxpbmVXaWR0aCAtIGluZGVudCk7CiAgICB2YXIgc2luZ2xlTGluZU9ubHkgPSBpc2tleSB8fCBzdGF0ZS5mbG93TGV2ZWwgPiAtMSAmJiBsZXZlbCA+PSBzdGF0ZS5mbG93TGV2ZWw7CiAgICBmdW5jdGlvbiB0ZXN0QW1iaWd1aXR5KHN0cmluZzIpIHsKICAgICAgcmV0dXJuIHRlc3RJbXBsaWNpdFJlc29sdmluZyhzdGF0ZSwgc3RyaW5nMik7CiAgICB9CiAgICBzd2l0Y2ggKGNob29zZVNjYWxhclN0eWxlKAogICAgICBzdHJpbmcsCiAgICAgIHNpbmdsZUxpbmVPbmx5LAogICAgICBzdGF0ZS5pbmRlbnQsCiAgICAgIGxpbmVXaWR0aCwKICAgICAgdGVzdEFtYmlndWl0eSwKICAgICAgc3RhdGUucXVvdGluZ1R5cGUsCiAgICAgIHN0YXRlLmZvcmNlUXVvdGVzICYmICFpc2tleSwKICAgICAgaW5ibG9jawogICAgKSkgewogICAgICBjYXNlIFNUWUxFX1BMQUlOOgogICAgICAgIHJldHVybiBzdHJpbmc7CiAgICAgIGNhc2UgU1RZTEVfU0lOR0xFOgogICAgICAgIHJldHVybiAiJyIgKyBzdHJpbmcucmVwbGFjZSgvJy9nLCAiJyciKSArICInIjsKICAgICAgY2FzZSBTVFlMRV9MSVRFUkFMOgogICAgICAgIHJldHVybiAifCIgKyBibG9ja0hlYWRlcihzdHJpbmcsIHN0YXRlLmluZGVudCkgKyBkcm9wRW5kaW5nTmV3bGluZShpbmRlbnRTdHJpbmcoc3RyaW5nLCBpbmRlbnQpKTsKICAgICAgY2FzZSBTVFlMRV9GT0xERUQ6CiAgICAgICAgcmV0dXJuICI+IiArIGJsb2NrSGVhZGVyKHN0cmluZywgc3RhdGUuaW5kZW50KSArIGRyb3BFbmRpbmdOZXdsaW5lKGluZGVudFN0cmluZyhmb2xkU3RyaW5nKHN0cmluZywgbGluZVdpZHRoKSwgaW5kZW50KSk7CiAgICAgIGNhc2UgU1RZTEVfRE9VQkxFOgogICAgICAgIHJldHVybiAnIicgKyBlc2NhcGVTdHJpbmcoc3RyaW5nKSArICciJzsKICAgICAgZGVmYXVsdDoKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJpbXBvc3NpYmxlIGVycm9yOiBpbnZhbGlkIHNjYWxhciBzdHlsZSIpOwogICAgfQogIH0oKTsKfQpmdW5jdGlvbiBibG9ja0hlYWRlcihzdHJpbmcsIGluZGVudFBlckxldmVsKSB7CiAgdmFyIGluZGVudEluZGljYXRvciA9IG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSA/IFN0cmluZyhpbmRlbnRQZXJMZXZlbCkgOiAiIjsKICB2YXIgY2xpcCA9IHN0cmluZ1tzdHJpbmcubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgdmFyIGtlZXAgPSBjbGlwICYmIChzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDJdID09PSAiXG4iIHx8IHN0cmluZyA9PT0gIlxuIik7CiAgdmFyIGNob21wID0ga2VlcCA/ICIrIiA6IGNsaXAgPyAiIiA6ICItIjsKICByZXR1cm4gaW5kZW50SW5kaWNhdG9yICsgY2hvbXAgKyAiXG4iOwp9CmZ1bmN0aW9uIGRyb3BFbmRpbmdOZXdsaW5lKHN0cmluZykgewogIHJldHVybiBzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDFdID09PSAiXG4iID8gc3RyaW5nLnNsaWNlKDAsIC0xKSA6IHN0cmluZzsKfQpmdW5jdGlvbiBmb2xkU3RyaW5nKHN0cmluZywgd2lkdGgpIHsKICB2YXIgbGluZVJlID0gLyhcbispKFteXG5dKikvZzsKICB2YXIgcmVzdWx0ID0gZnVuY3Rpb24oKSB7CiAgICB2YXIgbmV4dExGID0gc3RyaW5nLmluZGV4T2YoIlxuIik7CiAgICBuZXh0TEYgPSBuZXh0TEYgIT09IC0xID8gbmV4dExGIDogc3RyaW5nLmxlbmd0aDsKICAgIGxpbmVSZS5sYXN0SW5kZXggPSBuZXh0TEY7CiAgICByZXR1cm4gZm9sZExpbmUoc3RyaW5nLnNsaWNlKDAsIG5leHRMRiksIHdpZHRoKTsKICB9KCk7CiAgdmFyIHByZXZNb3JlSW5kZW50ZWQgPSBzdHJpbmdbMF0gPT09ICJcbiIgfHwgc3RyaW5nWzBdID09PSAiICI7CiAgdmFyIG1vcmVJbmRlbnRlZDsKICB2YXIgbWF0Y2g7CiAgd2hpbGUgKG1hdGNoID0gbGluZVJlLmV4ZWMoc3RyaW5nKSkgewogICAgdmFyIHByZWZpeCA9IG1hdGNoWzFdLCBsaW5lID0gbWF0Y2hbMl07CiAgICBtb3JlSW5kZW50ZWQgPSBsaW5lWzBdID09PSAiICI7CiAgICByZXN1bHQgKz0gcHJlZml4ICsgKCFwcmV2TW9yZUluZGVudGVkICYmICFtb3JlSW5kZW50ZWQgJiYgbGluZSAhPT0gIiIgPyAiXG4iIDogIiIpICsgZm9sZExpbmUobGluZSwgd2lkdGgpOwogICAgcHJldk1vcmVJbmRlbnRlZCA9IG1vcmVJbmRlbnRlZDsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBmb2xkTGluZShsaW5lLCB3aWR0aCkgewogIGlmIChsaW5lID09PSAiIiB8fCBsaW5lWzBdID09PSAiICIpIHJldHVybiBsaW5lOwogIHZhciBicmVha1JlID0gLyBbXiBdL2c7CiAgdmFyIG1hdGNoOwogIHZhciBzdGFydCA9IDAsIGVuZCwgY3VyciA9IDAsIG5leHQgPSAwOwogIHZhciByZXN1bHQgPSAiIjsKICB3aGlsZSAobWF0Y2ggPSBicmVha1JlLmV4ZWMobGluZSkpIHsKICAgIG5leHQgPSBtYXRjaC5pbmRleDsKICAgIGlmIChuZXh0IC0gc3RhcnQgPiB3aWR0aCkgewogICAgICBlbmQgPSBjdXJyID4gc3RhcnQgPyBjdXJyIDogbmV4dDsKICAgICAgcmVzdWx0ICs9ICJcbiIgKyBsaW5lLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICBzdGFydCA9IGVuZCArIDE7CiAgICB9CiAgICBjdXJyID0gbmV4dDsKICB9CiAgcmVzdWx0ICs9ICJcbiI7CiAgaWYgKGxpbmUubGVuZ3RoIC0gc3RhcnQgPiB3aWR0aCAmJiBjdXJyID4gc3RhcnQpIHsKICAgIHJlc3VsdCArPSBsaW5lLnNsaWNlKHN0YXJ0LCBjdXJyKSArICJcbiIgKyBsaW5lLnNsaWNlKGN1cnIgKyAxKTsKICB9IGVsc2UgewogICAgcmVzdWx0ICs9IGxpbmUuc2xpY2Uoc3RhcnQpOwogIH0KICByZXR1cm4gcmVzdWx0LnNsaWNlKDEpOwp9CmZ1bmN0aW9uIGVzY2FwZVN0cmluZyhzdHJpbmcpIHsKICB2YXIgcmVzdWx0ID0gIiI7CiAgdmFyIGNoYXIgPSAwOwogIHZhciBlc2NhcGVTZXE7CiAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHJpbmcubGVuZ3RoOyBjaGFyID49IDY1NTM2ID8gaSArPSAyIDogaSsrKSB7CiAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgIGVzY2FwZVNlcSA9IEVTQ0FQRV9TRVFVRU5DRVNbY2hhcl07CiAgICBpZiAoIWVzY2FwZVNlcSAmJiBpc1ByaW50YWJsZShjaGFyKSkgewogICAgICByZXN1bHQgKz0gc3RyaW5nW2ldOwogICAgICBpZiAoY2hhciA+PSA2NTUzNikgcmVzdWx0ICs9IHN0cmluZ1tpICsgMV07CiAgICB9IGVsc2UgewogICAgICByZXN1bHQgKz0gZXNjYXBlU2VxIHx8IGVuY29kZUhleChjaGFyKTsKICAgIH0KICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiB3cml0ZUZsb3dTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIG9iamVjdCkgewogIHZhciBfcmVzdWx0ID0gIiIsIF90YWcgPSBzdGF0ZS50YWcsIGluZGV4LCBsZW5ndGgsIHZhbHVlOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdmFsdWUgPSBvYmplY3RbaW5kZXhdOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIHZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIFN0cmluZyhpbmRleCksIHZhbHVlKTsKICAgIH0KICAgIGlmICh3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCB2YWx1ZSwgZmFsc2UsIGZhbHNlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICJ1bmRlZmluZWQiICYmIHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwsIG51bGwsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgaWYgKF9yZXN1bHQgIT09ICIiKSBfcmVzdWx0ICs9ICIsIiArICghc3RhdGUuY29uZGVuc2VGbG93ID8gIiAiIDogIiIpOwogICAgICBfcmVzdWx0ICs9IHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJbIiArIF9yZXN1bHQgKyAiXSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja1NlcXVlbmNlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBjb21wYWN0KSB7CiAgdmFyIF9yZXN1bHQgPSAiIiwgX3RhZyA9IHN0YXRlLnRhZywgaW5kZXgsIGxlbmd0aCwgdmFsdWU7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICB2YWx1ZSA9IG9iamVjdFtpbmRleF07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgdmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgU3RyaW5nKGluZGV4KSwgdmFsdWUpOwogICAgfQogICAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCB2YWx1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUpIHx8IHR5cGVvZiB2YWx1ZSA9PT0gInVuZGVmaW5lZCIgJiYgd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCArIDEsIG51bGwsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlKSkgewogICAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgICBfcmVzdWx0ICs9IGdlbmVyYXRlTmV4dExpbmUoc3RhdGUsIGxldmVsKTsKICAgICAgfQogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSAiOwogICAgICB9CiAgICAgIF9yZXN1bHQgKz0gc3RhdGUuZHVtcDsKICAgIH0KICB9CiAgc3RhdGUudGFnID0gX3RhZzsKICBzdGF0ZS5kdW1wID0gX3Jlc3VsdCB8fCAiW10iOwp9CmZ1bmN0aW9uIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgcGFpckJ1ZmZlcjsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoX3Jlc3VsdCAhPT0gIiIpIHBhaXJCdWZmZXIgKz0gIiwgIjsKICAgIGlmIChzdGF0ZS5jb25kZW5zZUZsb3cpIHBhaXJCdWZmZXIgKz0gJyInOwogICAgb2JqZWN0S2V5ID0gb2JqZWN0S2V5TGlzdFtpbmRleF07CiAgICBvYmplY3RWYWx1ZSA9IG9iamVjdFtvYmplY3RLZXldOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIG9iamVjdFZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIG9iamVjdEtleSwgb2JqZWN0VmFsdWUpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCBvYmplY3RLZXksIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0KSBwYWlyQnVmZmVyICs9ICI/ICI7CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXAgKyAoc3RhdGUuY29uZGVuc2VGbG93ID8gJyInIDogIiIpICsgIjoiICsgKHN0YXRlLmNvbmRlbnNlRmxvdyA/ICIiIDogIiAiKTsKICAgIGlmICghd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0VmFsdWUsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBfcmVzdWx0ICs9IHBhaXJCdWZmZXI7CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJ7IiArIF9yZXN1bHQgKyAifSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QsIGNvbXBhY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgZXhwbGljaXRQYWlyLCBwYWlyQnVmZmVyOwogIGlmIChzdGF0ZS5zb3J0S2V5cyA9PT0gdHJ1ZSkgewogICAgb2JqZWN0S2V5TGlzdC5zb3J0KCk7CiAgfSBlbHNlIGlmICh0eXBlb2Ygc3RhdGUuc29ydEtleXMgPT09ICJmdW5jdGlvbiIpIHsKICAgIG9iamVjdEtleUxpc3Quc29ydChzdGF0ZS5zb3J0S2V5cyk7CiAgfSBlbHNlIGlmIChzdGF0ZS5zb3J0S2V5cykgewogICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigic29ydEtleXMgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBmdW5jdGlvbiIpOwogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgcGFpckJ1ZmZlciArPSBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCk7CiAgICB9CiAgICBvYmplY3RLZXkgPSBvYmplY3RLZXlMaXN0W2luZGV4XTsKICAgIG9iamVjdFZhbHVlID0gb2JqZWN0W29iamVjdEtleV07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgb2JqZWN0VmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSk7CiAgICB9CiAgICBpZiAoIXdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCBvYmplY3RLZXksIHRydWUsIHRydWUsIHRydWUpKSB7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgZXhwbGljaXRQYWlyID0gc3RhdGUudGFnICE9PSBudWxsICYmIHN0YXRlLnRhZyAhPT0gIj8iIHx8IHN0YXRlLmR1bXAgJiYgc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0OwogICAgaWYgKGV4cGxpY2l0UGFpcikgewogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyAiOwogICAgICB9CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBpZiAoZXhwbGljaXRQYWlyKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gZ2VuZXJhdGVOZXh0TGluZShzdGF0ZSwgbGV2ZWwpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsICsgMSwgb2JqZWN0VmFsdWUsIHRydWUsIGV4cGxpY2l0UGFpcikpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gIjoiOwogICAgfSBlbHNlIHsKICAgICAgcGFpckJ1ZmZlciArPSAiOiAiOwogICAgfQogICAgcGFpckJ1ZmZlciArPSBzdGF0ZS5kdW1wOwogICAgX3Jlc3VsdCArPSBwYWlyQnVmZmVyOwogIH0KICBzdGF0ZS50YWcgPSBfdGFnOwogIHN0YXRlLmR1bXAgPSBfcmVzdWx0IHx8ICJ7fSI7Cn0KZnVuY3Rpb24gZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCBleHBsaWNpdCkgewogIHZhciBfcmVzdWx0LCB0eXBlTGlzdCwgaW5kZXgsIGxlbmd0aCwgdHlwZTIsIHN0eWxlOwogIHR5cGVMaXN0ID0gZXhwbGljaXQgPyBzdGF0ZS5leHBsaWNpdFR5cGVzIDogc3RhdGUuaW1wbGljaXRUeXBlczsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gdHlwZUxpc3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSB0eXBlTGlzdFtpbmRleF07CiAgICBpZiAoKHR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZTIucHJlZGljYXRlKSAmJiAoIXR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZW9mIG9iamVjdCA9PT0gIm9iamVjdCIgJiYgb2JqZWN0IGluc3RhbmNlb2YgdHlwZTIuaW5zdGFuY2VPZikgJiYgKCF0eXBlMi5wcmVkaWNhdGUgfHwgdHlwZTIucHJlZGljYXRlKG9iamVjdCkpKSB7CiAgICAgIGlmIChleHBsaWNpdCkgewogICAgICAgIGlmICh0eXBlMi5tdWx0aSAmJiB0eXBlMi5yZXByZXNlbnROYW1lKSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi5yZXByZXNlbnROYW1lKG9iamVjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHN0YXRlLnRhZyA9IHR5cGUyLnRhZzsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICB9CiAgICAgIGlmICh0eXBlMi5yZXByZXNlbnQpIHsKICAgICAgICBzdHlsZSA9IHN0YXRlLnN0eWxlTWFwW3R5cGUyLnRhZ10gfHwgdHlwZTIuZGVmYXVsdFN0eWxlOwogICAgICAgIGlmIChfdG9TdHJpbmcuY2FsbCh0eXBlMi5yZXByZXNlbnQpID09PSAiW29iamVjdCBGdW5jdGlvbl0iKSB7CiAgICAgICAgICBfcmVzdWx0ID0gdHlwZTIucmVwcmVzZW50KG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIucmVwcmVzZW50LCBzdHlsZSkpIHsKICAgICAgICAgIF9yZXN1bHQgPSB0eXBlMi5yZXByZXNlbnRbc3R5bGVdKG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCIhPCIgKyB0eXBlMi50YWcgKyAnPiB0YWcgcmVzb2x2ZXIgYWNjZXB0cyBub3QgIicgKyBzdHlsZSArICciIHN0eWxlJyk7CiAgICAgICAgfQogICAgICAgIHN0YXRlLmR1bXAgPSBfcmVzdWx0OwogICAgICB9CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBibG9jaywgY29tcGFjdCwgaXNrZXksIGlzYmxvY2tzZXEpIHsKICBzdGF0ZS50YWcgPSBudWxsOwogIHN0YXRlLmR1bXAgPSBvYmplY3Q7CiAgaWYgKCFkZXRlY3RUeXBlKHN0YXRlLCBvYmplY3QsIGZhbHNlKSkgewogICAgZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCB0cnVlKTsKICB9CiAgdmFyIHR5cGUyID0gX3RvU3RyaW5nLmNhbGwoc3RhdGUuZHVtcCk7CiAgdmFyIGluYmxvY2sgPSBibG9jazsKICB2YXIgdGFnU3RyOwogIGlmIChibG9jaykgewogICAgYmxvY2sgPSBzdGF0ZS5mbG93TGV2ZWwgPCAwIHx8IHN0YXRlLmZsb3dMZXZlbCA+IGxldmVsOwogIH0KICB2YXIgb2JqZWN0T3JBcnJheSA9IHR5cGUyID09PSAiW29iamVjdCBPYmplY3RdIiB8fCB0eXBlMiA9PT0gIltvYmplY3QgQXJyYXldIiwgZHVwbGljYXRlSW5kZXgsIGR1cGxpY2F0ZTsKICBpZiAob2JqZWN0T3JBcnJheSkgewogICAgZHVwbGljYXRlSW5kZXggPSBzdGF0ZS5kdXBsaWNhdGVzLmluZGV4T2Yob2JqZWN0KTsKICAgIGR1cGxpY2F0ZSA9IGR1cGxpY2F0ZUluZGV4ICE9PSAtMTsKICB9CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCAmJiBzdGF0ZS50YWcgIT09ICI/IiB8fCBkdXBsaWNhdGUgfHwgc3RhdGUuaW5kZW50ICE9PSAyICYmIGxldmVsID4gMCkgewogICAgY29tcGFjdCA9IGZhbHNlOwogIH0KICBpZiAoZHVwbGljYXRlICYmIHN0YXRlLnVzZWREdXBsaWNhdGVzW2R1cGxpY2F0ZUluZGV4XSkgewogICAgc3RhdGUuZHVtcCA9ICIqcmVmXyIgKyBkdXBsaWNhdGVJbmRleDsKICB9IGVsc2UgewogICAgaWYgKG9iamVjdE9yQXJyYXkgJiYgZHVwbGljYXRlICYmICFzdGF0ZS51c2VkRHVwbGljYXRlc1tkdXBsaWNhdGVJbmRleF0pIHsKICAgICAgc3RhdGUudXNlZER1cGxpY2F0ZXNbZHVwbGljYXRlSW5kZXhdID0gdHJ1ZTsKICAgIH0KICAgIGlmICh0eXBlMiA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIE9iamVjdC5rZXlzKHN0YXRlLmR1bXApLmxlbmd0aCAhPT0gMCkgewogICAgICAgIHdyaXRlQmxvY2tNYXBwaW5nKHN0YXRlLCBsZXZlbCwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgaWYgKGR1cGxpY2F0ZSkgewogICAgICAgICAgc3RhdGUuZHVtcCA9ICImcmVmXyIgKyBkdXBsaWNhdGVJbmRleCArIHN0YXRlLmR1bXA7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IEFycmF5XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIHN0YXRlLmR1bXAubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgaWYgKHN0YXRlLm5vQXJyYXlJbmRlbnQgJiYgIWlzYmxvY2tzZXEgJiYgbGV2ZWwgPiAwKSB7CiAgICAgICAgICB3cml0ZUJsb2NrU2VxdWVuY2Uoc3RhdGUsIGxldmVsIC0gMSwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHdyaXRlQmxvY2tTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIHN0YXRlLmR1bXAsIGNvbXBhY3QpOwogICAgICAgIH0KICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgd3JpdGVGbG93U2VxdWVuY2Uoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IFN0cmluZ10iKSB7CiAgICAgIGlmIChzdGF0ZS50YWcgIT09ICI/IikgewogICAgICAgIHdyaXRlU2NhbGFyKHN0YXRlLCBzdGF0ZS5kdW1wLCBsZXZlbCwgaXNrZXksIGluYmxvY2spOwogICAgICB9CiAgICB9IGVsc2UgaWYgKHR5cGUyID09PSAiW29iamVjdCBVbmRlZmluZWRdIikgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9IGVsc2UgewogICAgICBpZiAoc3RhdGUuc2tpcEludmFsaWQpIHJldHVybiBmYWxzZTsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigidW5hY2NlcHRhYmxlIGtpbmQgb2YgYW4gb2JqZWN0IHRvIGR1bXAgIiArIHR5cGUyKTsKICAgIH0KICAgIGlmIChzdGF0ZS50YWcgIT09IG51bGwgJiYgc3RhdGUudGFnICE9PSAiPyIpIHsKICAgICAgdGFnU3RyID0gZW5jb2RlVVJJKAogICAgICAgIHN0YXRlLnRhZ1swXSA9PT0gIiEiID8gc3RhdGUudGFnLnNsaWNlKDEpIDogc3RhdGUudGFnCiAgICAgICkucmVwbGFjZSgvIS9nLCAiJTIxIik7CiAgICAgIGlmIChzdGF0ZS50YWdbMF0gPT09ICIhIikgewogICAgICAgIHRhZ1N0ciA9ICIhIiArIHRhZ1N0cjsKICAgICAgfSBlbHNlIGlmICh0YWdTdHIuc2xpY2UoMCwgMTgpID09PSAidGFnOnlhbWwub3JnLDIwMDI6IikgewogICAgICAgIHRhZ1N0ciA9ICIhISIgKyB0YWdTdHIuc2xpY2UoMTgpOwogICAgICB9IGVsc2UgewogICAgICAgIHRhZ1N0ciA9ICIhPCIgKyB0YWdTdHIgKyAiPiI7CiAgICAgIH0KICAgICAgc3RhdGUuZHVtcCA9IHRhZ1N0ciArICIgIiArIHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGdldER1cGxpY2F0ZVJlZmVyZW5jZXMob2JqZWN0LCBzdGF0ZSkgewogIHZhciBvYmplY3RzID0gW10sIGR1cGxpY2F0ZXNJbmRleGVzID0gW10sIGluZGV4LCBsZW5ndGg7CiAgaW5zcGVjdE5vZGUob2JqZWN0LCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IGR1cGxpY2F0ZXNJbmRleGVzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHN0YXRlLmR1cGxpY2F0ZXMucHVzaChvYmplY3RzW2R1cGxpY2F0ZXNJbmRleGVzW2luZGV4XV0pOwogIH0KICBzdGF0ZS51c2VkRHVwbGljYXRlcyA9IG5ldyBBcnJheShsZW5ndGgpOwp9CmZ1bmN0aW9uIGluc3BlY3ROb2RlKG9iamVjdCwgb2JqZWN0cywgZHVwbGljYXRlc0luZGV4ZXMpIHsKICB2YXIgb2JqZWN0S2V5TGlzdCwgaW5kZXgsIGxlbmd0aDsKICBpZiAob2JqZWN0ICE9PSBudWxsICYmIHR5cGVvZiBvYmplY3QgPT09ICJvYmplY3QiKSB7CiAgICBpbmRleCA9IG9iamVjdHMuaW5kZXhPZihvYmplY3QpOwogICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICBpZiAoZHVwbGljYXRlc0luZGV4ZXMuaW5kZXhPZihpbmRleCkgPT09IC0xKSB7CiAgICAgICAgZHVwbGljYXRlc0luZGV4ZXMucHVzaChpbmRleCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG9iamVjdHMucHVzaChvYmplY3QpOwogICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7CiAgICAgICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICAgICAgICBpbnNwZWN0Tm9kZShvYmplY3RbaW5kZXhdLCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIG9iamVjdEtleUxpc3QgPSBPYmplY3Qua2V5cyhvYmplY3QpOwogICAgICAgIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3RLZXlMaXN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgICAgICAgIGluc3BlY3ROb2RlKG9iamVjdFtvYmplY3RLZXlMaXN0W2luZGV4XV0sIG9iamVjdHMsIGR1cGxpY2F0ZXNJbmRleGVzKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0KZnVuY3Rpb24gZHVtcCQxKGlucHV0LCBvcHRpb25zKSB7CiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgdmFyIHN0YXRlID0gbmV3IFN0YXRlKG9wdGlvbnMpOwogIGlmICghc3RhdGUubm9SZWZzKSBnZXREdXBsaWNhdGVSZWZlcmVuY2VzKGlucHV0LCBzdGF0ZSk7CiAgdmFyIHZhbHVlID0gaW5wdXQ7CiAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICB2YWx1ZSA9IHN0YXRlLnJlcGxhY2VyLmNhbGwoeyAiIjogdmFsdWUgfSwgIiIsIHZhbHVlKTsKICB9CiAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgMCwgdmFsdWUsIHRydWUsIHRydWUpKSByZXR1cm4gc3RhdGUuZHVtcCArICJcbiI7CiAgcmV0dXJuICIiOwp9CnZhciBkdW1wXzEgPSBkdW1wJDE7CnZhciBkdW1wZXIgPSB7CiAgZHVtcDogZHVtcF8xCn07CmZ1bmN0aW9uIHJlbmFtZWQoZnJvbSwgdG8pIHsKICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoIkZ1bmN0aW9uIHlhbWwuIiArIGZyb20gKyAiIGlzIHJlbW92ZWQgaW4ganMteWFtbCA0LiBVc2UgeWFtbC4iICsgdG8gKyAiIGluc3RlYWQsIHdoaWNoIGlzIG5vdyBzYWZlIGJ5IGRlZmF1bHQuIik7CiAgfTsKfQp2YXIgbG9hZCA9IGxvYWRlci5sb2FkOwp2YXIgbG9hZEFsbCA9IGxvYWRlci5sb2FkQWxsOwp2YXIgZHVtcCA9IGR1bXBlci5kdW1wOwp2YXIgc2FmZUxvYWQgPSByZW5hbWVkKCJzYWZlTG9hZCIsICJsb2FkIik7CnZhciBzYWZlTG9hZEFsbCA9IHJlbmFtZWQoInNhZmVMb2FkQWxsIiwgImxvYWRBbGwiKTsKdmFyIHNhZmVEdW1wID0gcmVuYW1lZCgic2FmZUR1bXAiLCAiZHVtcCIpOwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgR0lUSUdOT1JFX1BBVEggPSAiLmdpdGlnbm9yZSI7CnZhciBjYXB0dXJlR2l0SWdub3JlQ29udGVudFJ1bGUgPSAoc3RhdGUpID0+IChob3N0KSA9PiB7CiAgY29uc3QgZ2l0SWdub3JlQnVmZmVyID0gaG9zdC5yZWFkKEdJVElHTk9SRV9QQVRIKTsKICBpZiAoIWdpdElnbm9yZUJ1ZmZlcikgewogICAgcmV0dXJuIGhvc3Q7CiAgfQogIHN0YXRlLmNvbnRlbnQgPSBnaXRJZ25vcmVCdWZmZXIudG9TdHJpbmcoInV0Zi04Iik7CiAgcmV0dXJuIGhvc3Q7Cn07CnZhciBtZXJnZUdpdElnbm9yZUNvbnRlbnRSdWxlID0gKHN0YXRlKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmIChzdGF0ZS5jb250ZW50ID09PSB2b2lkIDApIHsKICAgIHJldHVybiBob3N0OwogIH0KICBjb25zdCBnaXRJZ25vcmVCdWZmZXIgPSBob3N0LnJlYWQoR0lUSUdOT1JFX1BBVEgpOwogIGlmICghZ2l0SWdub3JlQnVmZmVyKSB7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgY29uc3QgdGVtcGxhdGVDb250ZW50ID0gZ2l0SWdub3JlQnVmZmVyLnRvU3RyaW5nKCJ1dGYtOCIpOwogIGNvbnN0IG1lcmdlZENvbnRlbnQgPSBtZXJnZUdpdElnbm9yZUNvbnRlbnQoewogICAgZXhpc3RpbmdDb250ZW50OiBzdGF0ZS5jb250ZW50LAogICAgdGVtcGxhdGVDb250ZW50CiAgfSk7CiAgaWYgKG1lcmdlZENvbnRlbnQgIT09IHRlbXBsYXRlQ29udGVudCkgewogICAgY29udGV4dC5sb2dnZXIuaW5mbygiTWVyZ2luZyB0ZW1wbGF0ZSAuZ2l0aWdub3JlIHdpdGggcHJvamVjdC1zcGVjaWZpYyBlbnRyaWVzIik7CiAgICBob3N0Lm92ZXJ3cml0ZShHSVRJR05PUkVfUEFUSCwgbWVyZ2VkQ29udGVudCk7CiAgfQogIHJldHVybiBob3N0Owp9Owp2YXIgbWFpbiA9IChvcHRpb25zKSA9PiB7CiAgY29uc3Qgc3RhdGUgPSB7fTsKICByZXR1cm4gKDAsIGltcG9ydF9zY2hlbWF0aWNzMTAuY2hhaW4pKFsKICAgIGNhcHR1cmVHaXRJZ25vcmVDb250ZW50UnVsZShzdGF0ZSksCiAgICB1cGRhdGVUc0NvbmZpZ1J1bGUsCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlQ29tbW9uU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMTEubWVyZ2VXaXRoKShnZW5lcmF0ZVByb2plY3RTcGVjaWZpY1NvdXJjZShvcHRpb25zKSwgaW1wb3J0X3NjaGVtYXRpY3M5Lk1lcmdlU3RyYXRlZ3kuT3ZlcndyaXRlKSwKICAgIG1lcmdlR2l0SWdub3JlQ29udGVudFJ1bGUoc3RhdGUpCiAgXSk7Cn07Ci8vIEFubm90YXRlIHRoZSBDb21tb25KUyBleHBvcnQgbmFtZXMgZm9yIEVTTSBpbXBvcnQgaW4gbm9kZToKMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7CiAgbWFpbgp9KTsKLyohIEJ1bmRsZWQgbGljZW5zZSBpbmZvcm1hdGlvbjoKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGl0ZXJhbHMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVjb3JkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi93cml0ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvbnVsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvY2xpLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3Npbmsvc2luay5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvbW92ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCmpzLXlhbWwvZGlzdC9qcy15YW1sLm1qczoKICAoKiEganMteWFtbCA0LjEuMCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWNhL2pzLXlhbWwgQGxpY2Vuc2UgTUlUICopCiovCg==",Nis=async e=>{let t=Buffer.from(Cdl,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var Dis=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=bYr.ppath.join(e,"project");await _dl(r,{recursive:!0}),await Nis(bYr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var w_e=Nt(zs(),1),Zkt=Nt(zs(),1),kis=async e=>{let t=process.cwd();await Zkt.xfs.copyFilePromise(w_e.ppath.join(t,".pnp.cjs"),w_e.ppath.join(e,".pnp.cjs")),await Zkt.xfs.symlinkPromise(w_e.ppath.join(t,"package.json"),w_e.ppath.join(e,"package.json")),await Zkt.xfs.symlinkPromise(w_e.ppath.join(t,"runtime"),w_e.ppath.join(e,"runtime"))};var Fis=async e=>async r=>{try{let n=await Gis.xfs.mktempPromise(),a=xis.ppath.join(n,"collection.json");await Dis(n),await kis(n),await Ris("project",e,a)}catch(n){console.error(n)}};var Lkt=class extends Zis.BaseCommand{static paths=[["generate","project"]];type=Su.String("-t,--type","project");async execute(){let t=await Lis.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let n={type:this.type,cwd:process.cwd()},a=Rji(this,t),o=await Fis(n);return(await Vis.StreamReport.start(a,o)).exitCode()}};var Pis={commands:[Lkt]};var IOl=Nt(fus()),hOl=Nt(yus()),mOl=Nt(Nus()),COl=Nt(Fus()),_Ol=Nt(ZGr()),yOl=Nt(Ixt()),bOl=Nt(Wus()),EOl=Nt(Jus()),SOl=Nt(Ngs()),vOl=Nt(Lgs()),BOl=Nt(Xgs()),wOl=Nt(sAs()),TOl=Nt(iDe()),ROl=Nt(gAs()),NOl=Nt(mAs()),DOl=Nt(SAs()),kOl=Nt(FAs()),xOl=Nt(cps()),GOl=Nt(sJ()),FOl=Nt(Z1s()),ZOl=Nt(eme()),LOl=Nt(d2s()),VOl=Nt(CGe()),POl=Nt(C2s()),WOl=Nt(w2s()),T2s=()=>({modules:new Map([["@yarnpkg/cli",lOl],["@yarnpkg/core",uOl],["@yarnpkg/fslib",gOl],["@yarnpkg/libzip",AOl],["@yarnpkg/parsers",dOl],["@yarnpkg/shell",pOl],["clipanion",rg],["semver",fOl],["typanion",mZ],["@atls/yarn-plugin-badges",upr],["@atls/yarn-plugin-changelog",qfr],["@atls/yarn-plugin-check",$fr],["@atls/yarn-plugin-checks",o1r],["@atls/yarn-plugin-cli-publish",c1r],["@atls/yarn-plugin-commit",kBr],["@atls/yarn-plugin-essentials",FBr],["@atls/yarn-plugin-export",cTr],["@atls/yarn-plugin-files",TEr],["@atls/yarn-plugin-format",Lkr],["@atls/yarn-plugin-image",qkr],["@atls/yarn-plugin-library",axr],["@atls/yarn-plugin-lint",pxr],["@atls/yarn-plugin-release",jGr],["@atls/yarn-plugin-renderer",jFr],["@atls/yarn-plugin-service",vVr],["@atls/yarn-plugin-test",xVr],["@atls/yarn-plugin-tools",MVr],["@atls/yarn-plugin-typescript",JVr],["@atls/yarn-plugin-workspaces",PEr],["@atls/yarn-plugin-ui",uPr],["@atls/yarn-plugin-schematics",EYr],["@yarnpkg/plugin-interactive-tools",IOl],["@yarnpkg/plugin-jsr",hOl],["@yarnpkg/plugin-workspace-tools",mOl],["@yarnpkg/plugin-typescript",COl],["@yarnpkg/plugin-version",_Ol],["@yarnpkg/plugin-essentials",yOl],["@yarnpkg/plugin-catalog",bOl],["@yarnpkg/plugin-compat",EOl],["@yarnpkg/plugin-constraints",SOl],["@yarnpkg/plugin-dlx",vOl],["@yarnpkg/plugin-exec",BOl],["@yarnpkg/plugin-file",wOl],["@yarnpkg/plugin-git",TOl],["@yarnpkg/plugin-github",ROl],["@yarnpkg/plugin-http",NOl],["@yarnpkg/plugin-init",DOl],["@yarnpkg/plugin-link",kOl],["@yarnpkg/plugin-nm",xOl],["@yarnpkg/plugin-npm",GOl],["@yarnpkg/plugin-npm-cli",FOl],["@yarnpkg/plugin-pack",ZOl],["@yarnpkg/plugin-patch",LOl],["@yarnpkg/plugin-pnp",VOl],["@yarnpkg/plugin-pnpm",POl],["@yarnpkg/plugin-stage",WOl]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"])});var R2s={name:"@atls/yarn-cli",version:"1.2.22-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist/runtime","build:dist":"mkdir -p dist/runtime && mv bundles/yarn.mjs dist/runtime/yarn.mjs","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.14.1","@yarnpkg/core":"4.7.0","@yarnpkg/fslib":"3.1.5","@yarnpkg/libzip":"3.2.2","@yarnpkg/parsers":"3.0.3","@yarnpkg/plugin-catalog":"1.0.2","@yarnpkg/plugin-compat":"4.0.12","@yarnpkg/plugin-constraints":"4.0.5","@yarnpkg/plugin-dlx":"4.0.2","@yarnpkg/plugin-essentials":"4.5.0","@yarnpkg/plugin-exec":"3.1.0","@yarnpkg/plugin-file":"3.0.2","@yarnpkg/plugin-git":"3.2.0","@yarnpkg/plugin-github":"3.0.2","@yarnpkg/plugin-http":"3.0.3","@yarnpkg/plugin-init":"4.1.2","@yarnpkg/plugin-interactive-tools":"4.1.0","@yarnpkg/plugin-jsr":"1.1.1","@yarnpkg/plugin-link":"3.0.2","@yarnpkg/plugin-nm":"4.0.8","@yarnpkg/plugin-npm":"3.5.0","@yarnpkg/plugin-npm-cli":"4.4.1","@yarnpkg/plugin-pack":"4.0.4","@yarnpkg/plugin-patch":"4.0.3","@yarnpkg/plugin-pnp":"4.1.5","@yarnpkg/plugin-pnpm":"2.1.2","@yarnpkg/plugin-stage":"4.0.2","@yarnpkg/plugin-typescript":"4.1.3","@yarnpkg/plugin-version":"4.2.0","@yarnpkg/plugin-workspace-tools":"4.1.7","@yarnpkg/shell":"4.1.3",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"]}},raijin:{pack:{exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"}}};var N2s=qqr.npath.toPortablePath(qqr.npath.resolve(process.argv[1])),jqr=T2s(R2s["@yarnpkg/builder"].bundles.standard);jqr.then?jqr.then(async e=>{(0,zqr.runExit)(process.argv.slice(2),{cwd:$qr.ppath.cwd(),selfPath:N2s,pluginConfiguration:e})}):(0,zqr.runExit)(process.argv.slice(2),{cwd:$qr.ppath.cwd(),selfPath:N2s,pluginConfiguration:jqr}); /*! Bundled license information: is-number/index.js: diff --git a/README.md b/README.md index 4460a8b42..463c86e70 100644 --- a/README.md +++ b/README.md @@ -36,13 +36,14 @@ Raijin — это подход к работе в едином инженерн ### Новый проект ```bash -yarn set version https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs +yarn set version https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/yarn.mjs yarn set version atls ``` Ожидаемый результат: -- В проекте появляется/обновляется `.yarn/releases/yarn.mjs` +- В проекте появляется/обновляется полный файл первичного подключения `.yarn/releases/yarn.mjs` +- `yarn set version atls` обновляет бандл через вложение релиза GitHub штатным механизмом Yarn - Команды `raijin` становятся доступны через `yarn` ### Обновление @@ -53,7 +54,7 @@ yarn set version atls Ожидаемый результат: -- Подтягивается актуальная версия бандла +- Бандл обновляется до последней доступной версии штатным механизмом Yarn ### Проверка diff --git a/README_EN.md b/README_EN.md index 7bb107049..bdd7c2d7d 100644 --- a/README_EN.md +++ b/README_EN.md @@ -36,13 +36,14 @@ It aligns teams on strict standards and strong contracts to increase delivery pr ### New project ```bash -yarn set version https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs +yarn set version https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/yarn.mjs yarn set version atls ``` Expected result: -- `.yarn/releases/yarn.mjs` is added or updated in the project +- A full initial `.yarn/releases/yarn.mjs` entry file is added or updated +- `yarn set version atls` updates the bundle from a GitHub Release asset through Yarn - Raijin commands are available via `yarn` ### Upgrade @@ -53,7 +54,7 @@ yarn set version atls Expected result: -- The latest bundle version is installed +- The bundle is upgraded to the latest available version through Yarn ### Verify diff --git a/code/code-github/src/release.ts b/code/code-github/src/release.ts index 211f096a3..2ee0cb0c0 100644 --- a/code/code-github/src/release.ts +++ b/code/code-github/src/release.ts @@ -16,6 +16,35 @@ interface CreateOptions { repo: string } +interface GitHubRelease { + id: number + assets: Array<{ + browser_download_url: string + name: string + }> +} + +interface GetByTagOptions { + owner: string + repo: string + tag_name: string +} + +interface UploadAssetOptions { + content_type: string + data: string + name: string + owner: string + size: number + release_id: number + repo: string +} + +interface GitHubReleaseAsset { + browser_download_url: string + name: string +} + interface GenerateNotesOptions { tag_name: string target_commitish?: string @@ -34,7 +63,7 @@ export class Release { }) } - async create(options: CreateOptions): Promise { + async create(options: CreateOptions): Promise { const { owner, repo, @@ -57,7 +86,58 @@ export class Release { body, }) - return result.status + return { + id: result.data.id, + assets: result.data.assets.map((asset) => ({ + browser_download_url: asset.browser_download_url, + name: asset.name, + })), + } + } + + async getByTag(options: GetByTagOptions): Promise { + const { owner, repo, tag_name: tagName } = options + const result = await this.client.repos.getReleaseByTag({ + owner, + repo, + tag: tagName, + }) + + return { + id: result.data.id, + assets: result.data.assets.map((asset) => ({ + browser_download_url: asset.browser_download_url, + name: asset.name, + })), + } + } + + async uploadAsset(options: UploadAssetOptions): Promise { + const { + owner, + repo, + release_id: releaseId, + name, + data, + size, + content_type: contentType, + } = options + const result = await this.client.repos.uploadReleaseAsset({ + owner, + repo, + release_id: releaseId, + name, + data, + headers: { + 'content-length': size, + 'content-type': contentType, + }, + }) + + return { + browser_download_url: result.data.browser_download_url, + name: result.data.name, + } } async generateNotes(options: GenerateNotesOptions): Promise { diff --git a/docs/raijin/quickstart.md b/docs/raijin/quickstart.md index 5f3da9bc5..6dd2e449a 100644 --- a/docs/raijin/quickstart.md +++ b/docs/raijin/quickstart.md @@ -19,13 +19,14 @@ Expected result: ## 2. New project: install the bundle ```bash -yarn set version https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs +yarn set version https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/yarn.mjs yarn set version atls ``` Expected result: -- `.yarn/releases/` contains the current Raijin `yarn.mjs` +- `.yarn/releases/yarn.mjs` contains the full initial Raijin entry file +- `yarn set version atls` updates the bundle from a GitHub Release asset through Yarn - Bundle commands (`check`, `files changed list`, etc.) become available diff --git a/docs/raijin/quickstart.ru.md b/docs/raijin/quickstart.ru.md index 030fd441a..a6923ba65 100644 --- a/docs/raijin/quickstart.ru.md +++ b/docs/raijin/quickstart.ru.md @@ -19,13 +19,14 @@ ## 2. Новый проект: подключение бандла ```bash -yarn set version https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs +yarn set version https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/yarn.mjs yarn set version atls ``` Ожидаемый результат: -- В `.yarn/releases/` появляется актуальный `yarn.mjs` из Raijin +- В `.yarn/releases/yarn.mjs` появляется полный файл первичного подключения Raijin +- `yarn set version atls` обновляет бандл через вложение релиза GitHub штатным механизмом Yarn - Команды из бандла (`check`, `files changed list` и другие) становятся доступны diff --git a/scripts/raijin/generate-artifacts.mjs b/scripts/raijin/generate-artifacts.mjs index c90859175..de7c6ea87 100644 --- a/scripts/raijin/generate-artifacts.mjs +++ b/scripts/raijin/generate-artifacts.mjs @@ -339,14 +339,17 @@ const renderRootReadme = (language) => { isRu ? '### Новый проект' : '### New project', '', '```bash', - 'yarn set version https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs', + 'yarn set version https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/yarn.mjs', 'yarn set version atls', '```', '', isRu ? 'Ожидаемый результат:' : 'Expected result:', isRu - ? '- В проекте появляется/обновляется `.yarn/releases/yarn.mjs`' - : '- `.yarn/releases/yarn.mjs` is added or updated in the project', + ? '- В проекте появляется/обновляется полный файл первичного подключения `.yarn/releases/yarn.mjs`' + : '- A full initial `.yarn/releases/yarn.mjs` entry file is added or updated', + isRu + ? '- `yarn set version atls` обновляет бандл через вложение релиза GitHub штатным механизмом Yarn' + : '- `yarn set version atls` updates the bundle from a GitHub Release asset through Yarn', isRu ? '- Команды `raijin` становятся доступны через `yarn`' : '- Raijin commands are available via `yarn`', @@ -358,7 +361,9 @@ const renderRootReadme = (language) => { '```', '', isRu ? 'Ожидаемый результат:' : 'Expected result:', - isRu ? '- Подтягивается актуальная версия бандла' : '- The latest bundle version is installed', + isRu + ? '- Бандл обновляется до последней доступной версии штатным механизмом Yarn' + : '- The bundle is upgraded to the latest available version through Yarn', '', isRu ? '### Проверка' : '### Verify', '', @@ -565,14 +570,17 @@ const renderQuickstart = (language) => { isRu ? '## 2. Новый проект: подключение бандла' : '## 2. New project: install the bundle', '', '```bash', - 'yarn set version https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs', + 'yarn set version https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/yarn.mjs', 'yarn set version atls', '```', '', isRu ? 'Ожидаемый результат:' : 'Expected result:', isRu - ? '- В `.yarn/releases/` появляется актуальный `yarn.mjs` из Raijin' - : '- `.yarn/releases/` contains the current Raijin `yarn.mjs`', + ? '- В `.yarn/releases/yarn.mjs` появляется полный файл первичного подключения Raijin' + : '- `.yarn/releases/yarn.mjs` contains the full initial Raijin entry file', + isRu + ? '- `yarn set version atls` обновляет бандл через вложение релиза GitHub штатным механизмом Yarn' + : '- `yarn set version atls` updates the bundle from a GitHub Release asset through Yarn', isRu ? '- Команды из бандла (`check`, `files changed list` и другие) становятся доступны' : '- Bundle commands (`check`, `files changed list`, etc.) become available', diff --git a/yarn/cli/dist/yarn.mjs b/yarn/cli/dist/yarn.mjs deleted file mode 100755 index ab0436f40..000000000 --- a/yarn/cli/dist/yarn.mjs +++ /dev/null @@ -1,3863 +0,0 @@ -#!/usr/bin/env node -/* eslint-disable */ -//prettier-ignore - - await (async () => { - const { dirname } = await import("path"); - const { fileURLToPath } = await import("url"); - - /** - * Shim entry-point related paths. - */ - if (typeof globalThis.__filename === "undefined") { - globalThis.__filename = fileURLToPath(import.meta.url); - } - if (typeof globalThis.__dirname === "undefined") { - globalThis.__dirname = dirname(globalThis.__filename); - } - /** - * Shim require if needed. - */ - if (typeof globalThis.require === "undefined") { - const { default: module } = await import("module"); - globalThis.require = module.createRequire(import.meta.url); - } - })(); - -var rjs=Object.create;var Hat=Object.defineProperty;var njs=Object.getOwnPropertyDescriptor;var ijs=Object.getOwnPropertyNames;var sjs=Object.getPrototypeOf,ojs=Object.prototype.hasOwnProperty;var wt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var bc=(e,t)=>()=>(e&&(t=e(e=0)),t);var H=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),sI=(e,t)=>{for(var r in t)Hat(e,r,{get:t[r],enumerable:!0})},Ayn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ijs(t))!ojs.call(e,a)&&a!==r&&Hat(e,a,{get:()=>t[a],enumerable:!(n=njs(t,a))||n.enumerable});return e};var Nt=(e,t,r)=>(r=e!=null?rjs(sjs(e)):{},Ayn(t||!e||!e.__esModule?Hat(r,"default",{value:e,enumerable:!0}):r,e)),vi=e=>Ayn(Hat({},"__esModule",{value:!0}),e);var jy,CC,lfe,$8t,Yat,dyn,ejt,tjt,Qat=bc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})(jy||(jy={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(CC||(CC={}));lfe=-1,$8t=/^(-h|--help)(?:=([0-9]+))?$/,Yat=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,dyn=/^-[a-zA-Z]{2,}$/,ejt=/^([^=]+)=([\s\S]*)$/,tjt=process.env.DEBUG_CLI==="1"});var ufe,gSe,Xat,rjt,Jat=bc(()=>{Qat();ufe=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},gSe=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(n=>n.reason!==null&&n.reason===r[0].reason)){let[{reason:n}]=this.candidates;this.message=`${n} - -${this.candidates.map(({usage:a})=>`$ ${a}`).join(` -`)}`}else if(this.candidates.length===1){let[{usage:n}]=this.candidates;this.message=`Command not found; did you mean: - -$ ${n} -${rjt(t)}`}else this.message=`Command not found; did you mean one of: - -${this.candidates.map(({usage:n},a)=>`${`${a}.`.padStart(4)} ${n}`).join(` -`)} - -${rjt(t)}`}},Xat=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: - -${this.usages.map((n,a)=>`${`${a}.`.padStart(4)} ${n}`).join(` -`)} - -${rjt(t)}`}},rjt=e=>`While running ${e.filter(t=>t!==jy.EndOfInput&&t!==jy.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function ajs(e){let t=e.split(` -`),r=t.filter(a=>a.match(/\S/)),n=r.length>0?r.reduce((a,o)=>Math.min(a,o.length-o.trimStart().length),Number.MAX_VALUE):0;return t.map(a=>a.slice(n).trimRight()).join(` -`)}function G9(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,` -`),e=ajs(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 - -`),e=e.replace(/\n(\n)?\n*/g,(n,a)=>a||" "),r&&(e=e.split(/\n/).map(n=>{let a=n.match(/^\s*[*-][\t ]+(.*)/);if(!a)return n.match(/(.{1,80})(?: |$)/g).join(` -`);let o=n.length-n.trimStart().length;return a[1].match(new RegExp(`(.{1,${78-o}})(?: |$)`,"g")).map((l,A)=>" ".repeat(o)+(A===0?"- ":" ")+l).join(` -`)}).join(` - -`)),e=e.replace(/(`+)((?:.|[\n])*?)\1/g,(n,a,o)=>t.code(a+o+a)),e=e.replace(/(\*\*)((?:.|[\n])*?)\1/g,(n,a,o)=>t.bold(a+o+a)),e?`${e} -`:""}var njt,pyn,fyn,ijt=bc(()=>{njt=Array(80).fill("\u2501");for(let e=0;e<=24;++e)njt[njt.length-e]=`\x1B[38;5;${232+e}m\u2501`;pyn={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${njt.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},fyn={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function hZ(e){return{...e,[VOe]:!0}}function FK(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function Uat(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,n,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=n!=="."||!t?`${n.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function POe(e,t){return t.length===1?new ufe(`${e}${Uat(t[0],{mergeName:!0})}`):new ufe(`${e}: -${t.map(r=>` -- ${Uat(r)}`).join("")}`)}function gfe(e,t,r){if(typeof r>"u")return t;let n=[],a=[],o=A=>{let f=t;return t=A,o.bind(null,f)};if(!r(t,{errors:n,coercions:a,coercion:o}))throw POe(`Invalid value for ${e}`,n);for(let[,A]of a)A();return t}var VOe,Mq=bc(()=>{Jat();VOe=Symbol("clipanion/isOption")});var mZ={};sI(mZ,{KeyRelationship:()=>ASe,TypeAssertionError:()=>Kse,applyCascade:()=>Ujs,as:()=>Tjs,assert:()=>vjs,assertWithErrors:()=>Bjs,cascade:()=>byn,fn:()=>Rjs,hasAtLeastOneKey:()=>qjs,hasExactLength:()=>yyn,hasForbiddenKeys:()=>$js,hasKeyRelationship:()=>r6s,hasMaxLength:()=>Djs,hasMinLength:()=>Njs,hasMutuallyExclusiveKeys:()=>e6s,hasRequiredKeys:()=>zjs,hasUniqueItems:()=>kjs,isArray:()=>Kat,isAtLeast:()=>Fjs,isAtMost:()=>Zjs,isBase64:()=>Xjs,isBoolean:()=>fjs,isDate:()=>mjs,isDict:()=>yjs,isEnum:()=>ajt,isHexColor:()=>Qjs,isISO8601:()=>Yjs,isInExclusiveRange:()=>Vjs,isInInclusiveRange:()=>Ljs,isInstanceOf:()=>Ejs,isInteger:()=>Pjs,isJSON:()=>Jjs,isLiteral:()=>hyn,isLowerCase:()=>Ojs,isMap:()=>_js,isNegative:()=>xjs,isNullable:()=>jjs,isNumber:()=>Ijs,isObject:()=>Cyn,isOneOf:()=>Sjs,isOptional:()=>Kjs,isPartial:()=>bjs,isPayload:()=>hjs,isPositive:()=>Gjs,isRecord:()=>zat,isSet:()=>Cjs,isString:()=>myn,isTuple:()=>jat,isUUID4:()=>Hjs,isUnknown:()=>ojt,isUpperCase:()=>Mjs,makeTrait:()=>_yn,makeValidator:()=>DI,matchesRegExp:()=>Wjs,softAssert:()=>wjs});function zy(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function dSe(e,t){if(e.length===0)return"nothing";if(e.length===1)return zy(e[0]);let r=e.slice(0,-1),n=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>zy(o)).join(", ")}${a}${zy(n)}`}function Use(e,t){var r,n,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:cjs.test(t)?`${(n=e?.p)!==null&&n!==void 0?n:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function sjt(e,t,r){return e===1?t:r}function hd({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function djs(e,t){return r=>{e[t]=r}}function ZK(e,t){return r=>{let n=e[t];return e[t]=r,ZK(e,t).bind(null,n)}}function WOe(e,t,r){let n=()=>(e(r()),a),a=()=>(e(t),n);return n}function ojt(){return DI({test:(e,t)=>!0})}function hyn(e){return DI({test:(t,r)=>t!==e?hd(r,`Expected ${zy(e)} (got ${zy(t)})`):!0})}function myn(){return DI({test:(e,t)=>typeof e!="string"?hd(t,`Expected a string (got ${zy(e)})`):!0})}function ajt(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),n=new Set(t);return n.size===1?hyn([...n][0]):DI({test:(a,o)=>n.has(a)?!0:r?hd(o,`Expected one of ${dSe(t,"or")} (got ${zy(a)})`):hd(o,`Expected a valid enumeration value (got ${zy(a)})`)})}function fjs(){return DI({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n=pjs.get(e);if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a boolean (got ${zy(e)})`)}return!0}})}function Ijs(){return DI({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)n=a;else return hd(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a number (got ${zy(e)})`)}return!0}})}function hjs(e){return DI({test:(t,r)=>{var n;if(typeof r?.coercions>"u")return hd(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return hd(r,"Unbound coercion result");if(typeof t!="string")return hd(r,`Expected a string (got ${zy(t)})`);let a;try{a=JSON.parse(t)}catch{return hd(r,`Expected a JSON string (got ${zy(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:ZK(o,"value")}))?(r.coercions.push([(n=r.p)!==null&&n!==void 0?n:".",r.coercion.bind(null,o.value)]),!0):!1}})}function mjs(){return DI({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return hd(t,"Unbound coercion result");let n;if(typeof e=="string"&&Iyn.test(e))n=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))n=new Date(a*1e3);else return hd(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof n<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,n)]),!0}return hd(t,`Expected a date (got ${zy(e)})`)}return!0}})}function Kat(e,{delimiter:t}={}){return DI({test:(r,n)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return hd(n,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return hd(n,`Expected an array (got ${zy(r)})`);let l=!0;for(let A=0,f=r.length;A{var o,l;if(Object.getPrototypeOf(n).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");let A=[...n],f=[...n];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let I=()=>f.some((C,b)=>C!==A[b])?new Set(f):n;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",WOe(a.coercion,n,I)]),!0}else{let A=!0;for(let f of n)if(A=e(f,Object.assign({},a))&&A,!A&&a?.errors==null)break;return A}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");let A={value:n};return r(n,Object.assign(Object.assign({},a),{coercion:ZK(A,"value")}))?(a.coercions.push([(l=a.p)!==null&&l!==void 0?l:".",WOe(a.coercion,n,()=>new Set(A.value))]),!0):!1}return hd(a,`Expected a set (got ${zy(n)})`)}})}function _js(e,t){let r=Kat(jat([e,t])),n=zat(t,{keys:e});return DI({test:(a,o)=>{var l,A,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return hd(o,"Unbound coercion result");let I=[...a],C=[...a];if(!r(C,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let b=()=>C.some((E,N)=>E[0]!==I[N][0]||E[1]!==I[N][1])?new Map(C):a;return o.coercions.push([(l=o.p)!==null&&l!==void 0?l:".",WOe(o.coercion,a,b)]),!0}else{let I=!0;for(let[C,b]of a)if(I=e(C,Object.assign({},o))&&I,!I&&o?.errors==null||(I=t(b,Object.assign(Object.assign({},o),{p:Use(o,C)}))&&I,!I&&o?.errors==null))break;return I}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return hd(o,"Unbound coercion result");let I={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(A=o.p)!==null&&A!==void 0?A:".",WOe(o.coercion,a,()=>new Map(I.value))]),!0):!1:n(a,Object.assign(Object.assign({},o),{coercion:ZK(I,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",WOe(o.coercion,a,()=>new Map(Object.entries(I.value)))]),!0):!1}return hd(o,`Expected a map (got ${zy(a)})`)}})}function jat(e,{delimiter:t}={}){let r=yyn(e.length);return DI({test:(n,a)=>{var o;if(typeof n=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");n=n.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)])}if(!Array.isArray(n))return hd(a,`Expected a tuple (got ${zy(n)})`);let l=r(n,Object.assign({},a));for(let A=0,f=n.length;A{var o;if(Array.isArray(n)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?hd(a,"Unbound coercion result"):r(n,Object.assign(Object.assign({},a),{coercion:void 0}))?(n=Object.fromEntries(n),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,n)]),!0):!1;if(typeof n!="object"||n===null)return hd(a,`Expected an object (got ${zy(n)})`);let l=Object.keys(n),A=!0;for(let f=0,I=l.length;f{if(typeof a!="object"||a===null)return hd(o,`Expected an object (got ${zy(a)})`);let l=new Set([...r,...Object.keys(a)]),A={},f=!0;for(let I of l){if(I==="constructor"||I==="__proto__")f=hd(Object.assign(Object.assign({},o),{p:Use(o,I)}),"Unsafe property name");else{let C=Object.prototype.hasOwnProperty.call(e,I)?e[I]:void 0,b=Object.prototype.hasOwnProperty.call(a,I)?a[I]:void 0;typeof C<"u"?f=C(b,Object.assign(Object.assign({},o),{p:Use(o,I),coercion:ZK(a,I)}))&&f:t===null?f=hd(Object.assign(Object.assign({},o),{p:Use(o,I)}),`Extraneous property (got ${zy(b)})`):Object.defineProperty(A,I,{enumerable:!0,get:()=>b,set:djs(a,I)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(A,o)&&f),f}});return Object.assign(n,{properties:e})}function bjs(e){return Cyn(e,{extra:zat(ojt())})}function _yn(e){return()=>e}function DI({test:e}){return _yn(e)()}function vjs(e,t){if(!t(e))throw new Kse}function Bjs(e,t){let r=[];if(!t(e,{errors:r}))throw new Kse({errors:r})}function wjs(e,t){}function Tjs(e,t,{coerce:r=!1,errors:n,throw:a}={}){let o=n?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new Kse({errors:o});return{value:void 0,errors:o??!0}}let l={value:e},A=ZK(l,"value"),f=[];if(!t(e,{errors:o,coercion:A,coercions:f})){if(a)throw new Kse({errors:o});return{value:void 0,errors:o??!0}}for(let[,I]of f)I();return a?l.value:{value:l.value,errors:void 0}}function Rjs(e,t){let r=jat(e);return(...n)=>{if(!r(n))throw new Kse;return t(...n)}}function Njs(e){return DI({test:(t,r)=>t.length>=e?!0:hd(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function Djs(e){return DI({test:(t,r)=>t.length<=e?!0:hd(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function yyn(e){return DI({test:(t,r)=>t.length!==e?hd(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function kjs({map:e}={}){return DI({test:(t,r)=>{let n=new Set,a=new Set;for(let o=0,l=t.length;oe<=0?!0:hd(t,`Expected to be negative (got ${e})`)})}function Gjs(){return DI({test:(e,t)=>e>=0?!0:hd(t,`Expected to be positive (got ${e})`)})}function Fjs(e){return DI({test:(t,r)=>t>=e?!0:hd(r,`Expected to be at least ${e} (got ${t})`)})}function Zjs(e){return DI({test:(t,r)=>t<=e?!0:hd(r,`Expected to be at most ${e} (got ${t})`)})}function Ljs(e,t){return DI({test:(r,n)=>r>=e&&r<=t?!0:hd(n,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function Vjs(e,t){return DI({test:(r,n)=>r>=e&&rt!==Math.round(t)?hd(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?hd(r,`Expected to be a safe integer (got ${t})`):!0})}function Wjs(e){return DI({test:(t,r)=>e.test(t)?!0:hd(r,`Expected to match the pattern ${e.toString()} (got ${zy(t)})`)})}function Ojs(){return DI({test:(e,t)=>e!==e.toLowerCase()?hd(t,`Expected to be all-lowercase (got ${e})`):!0})}function Mjs(){return DI({test:(e,t)=>e!==e.toUpperCase()?hd(t,`Expected to be all-uppercase (got ${e})`):!0})}function Hjs(){return DI({test:(e,t)=>Ajs.test(e)?!0:hd(t,`Expected to be a valid UUID v4 (got ${zy(e)})`)})}function Yjs(){return DI({test:(e,t)=>Iyn.test(e)?!0:hd(t,`Expected to be a valid ISO 8601 date string (got ${zy(e)})`)})}function Qjs({alpha:e=!1}){return DI({test:(t,r)=>(e?ljs.test(t):ujs.test(t))?!0:hd(r,`Expected to be a valid hexadecimal color string (got ${zy(t)})`)})}function Xjs(){return DI({test:(e,t)=>gjs.test(e)?!0:hd(t,`Expected to be a valid base 64 string (got ${zy(e)})`)})}function Jjs(e=ojt()){return DI({test:(t,r)=>{let n;try{n=JSON.parse(t)}catch{return hd(r,`Expected to be a valid JSON string (got ${zy(t)})`)}return e(n,r)}})}function byn(e,...t){let r=Array.isArray(t[0])?t[0]:t;return DI({test:(n,a)=>{var o,l;let A={value:n},f=typeof a?.coercions<"u"?ZK(A,"value"):void 0,I=typeof a?.coercions<"u"?[]:void 0;if(!e(n,Object.assign(Object.assign({},a),{coercion:f,coercions:I})))return!1;let C=[];if(typeof I<"u")for(let[,b]of I)C.push(b());try{if(typeof a?.coercions<"u"){if(A.value!==n){if(typeof a?.coercion>"u")return hd(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,A.value)])}(l=a?.coercions)===null||l===void 0||l.push(...I)}return r.every(b=>b(A.value,a))}finally{for(let b of C)b()}}})}function Ujs(e,...t){let r=Array.isArray(t[0])?t[0]:t;return byn(e,r)}function Kjs(e){return DI({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function jjs(e){return DI({test:(t,r)=>t===null?!0:e(t,r)})}function zjs(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)||f.push(I);return f.length>0?hd(l,`Missing required ${sjt(f.length,"property","properties")} ${dSe(f,"and")}`):!0}})}function qjs(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>Object.keys(o).some(I=>a(n,I,o))?!0:hd(l,`Missing at least one property from ${dSe(Array.from(n),"or")}`)})}function $js(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>0?hd(l,`Forbidden ${sjt(f.length,"property","properties")} ${dSe(f,"and")}`):!0}})}function e6s(e,t){var r;let n=new Set(e),a=OOe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return DI({test:(o,l)=>{let A=new Set(Object.keys(o)),f=[];for(let I of n)a(A,I,o)&&f.push(I);return f.length>1?hd(l,`Mutually exclusive properties ${dSe(f,"and")}`):!0}})}function r6s(e,t,r,n){var a,o;let l=new Set((a=n?.ignore)!==null&&a!==void 0?a:[]),A=OOe[(o=n?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),I=t6s[t],C=t===ASe.Forbids?"or":"and";return DI({test:(b,E)=>{let N=new Set(Object.keys(b));if(!A(N,e,b)||l.has(b[e]))return!0;let B=[];for(let F of f)(A(N,F,b)&&!l.has(b[F]))!==I.expect&&B.push(F);return B.length>=1?hd(E,`Property "${e}" ${I.message} ${sjt(B.length,"property","properties")} ${dSe(B,C)}`):!0}})}var cjs,ljs,ujs,gjs,Ajs,Iyn,pjs,Ejs,Sjs,Kse,OOe,ASe,t6s,CZ=bc(()=>{cjs=/^[a-zA-Z_][a-zA-Z0-9_]*$/;ljs=/^#[0-9a-f]{6}$/i,ujs=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,gjs=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Ajs=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Iyn=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;pjs=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);Ejs=e=>DI({test:(t,r)=>t instanceof e?!0:hd(r,`Expected an instance of ${e.name} (got ${zy(t)})`)}),Sjs=(e,{exclusive:t=!1}={})=>DI({test:(r,n)=>{var a,o,l;let A=[],f=typeof n?.errors<"u"?[]:void 0;for(let I=0,C=e.length;I1?hd(n,`Expected to match exactly a single predicate (matched ${A.join(", ")})`):(l=n?.errors)===null||l===void 0||l.push(...f),!1}});Kse=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` -`;for(let n of t)r+=` -- ${n}`}super(r)}};OOe={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(ASe||(ASe={}));t6s={[ASe.Forbids]:{expect:!1,message:"forbids using"},[ASe.Requires]:{expect:!0,message:"requires using"}}});var _C,jse=bc(()=>{Mq();_C=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:l}=await Promise.resolve().then(()=>(CZ(),mZ)),A=l(a(o()),r),f=[],I=[];if(!A(this,{errors:f,coercions:I}))throw POe("Invalid option schema",f);for(let[,b]of I)b()}else if(r!=null)throw new Error("Invalid command schema");let n=await this.execute();return typeof n<"u"?n:0}};_C.isOption=VOe;_C.Default=[]});function F9(e){tjt&&console.log(e)}function Syn(){let e={nodes:[]};for(let t=0;t{if(t.has(n))return;t.add(n);let a=e.nodes[n];for(let l of Object.values(a.statics))for(let{to:A}of l)r(A);for(let[,{to:l}]of a.dynamics)r(l);for(let{to:l}of a.shortcuts)r(l);let o=new Set(a.shortcuts.map(({to:l})=>l));for(;a.shortcuts.length>0;){let{to:l}=a.shortcuts.shift(),A=e.nodes[l];for(let[f,I]of Object.entries(A.statics)){let C=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let b of I)C.some(({to:E})=>b.to===E)||C.push(b)}for(let[f,I]of A.dynamics)a.dynamics.some(([C,{to:b}])=>f===C&&I.to===b)||a.dynamics.push([f,I]);for(let f of A.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(CC.InitialNode)}function s6s(e,{prefix:t=""}={}){if(tjt){F9(`${t}Nodes are:`);for(let r=0;rC!==CC.ErrorNode).map(({state:C})=>({usage:C.candidateUsage,reason:null})));if(I.every(({node:C})=>C===CC.ErrorNode))throw new gSe(t,I.map(({state:C})=>({usage:C.candidateUsage,reason:C.errorMessage})));n=c6s(I)}if(n.length>0){F9(" Results:");for(let o of n)F9(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else F9(" No results");return n}function a6s(e,t,{endToken:r=jy.EndOfInput}={}){let n=o6s(e,[...t,r]);return l6s(t,n.map(({state:a})=>a))}function c6s(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function l6s(e,t){let r=t.filter(E=>E.selectedIndex!==null),n=r.filter(E=>!E.partial);if(n.length>0&&(r=n),r.length===0)throw new Error;let a=r.filter(E=>E.selectedIndex===lfe||E.requiredOptions.every(N=>N.some(B=>E.options.find(F=>F.name===B))));if(a.length===0)throw new gSe(e,r.map(E=>({usage:E.candidateUsage,reason:null})));let o=0;for(let E of a)E.path.length>o&&(o=E.path.length);let l=a.filter(E=>E.path.length===o),A=E=>E.positionals.filter(({extra:N})=>!N).length+E.options.length,f=l.map(E=>({state:E,positionalCount:A(E)})),I=0;for(let{positionalCount:E}of f)E>I&&(I=E);let C=f.filter(({positionalCount:E})=>E===I).map(({state:E})=>E),b=u6s(C);if(b.length>1)throw new Xat(e,b.map(E=>E.candidateUsage));return b[0]}function u6s(e){let t=[],r=[];for(let n of e)n.selectedIndex===lfe?r.push(n):t.push(n);return r.length>0&&t.push({...Eyn,path:vyn(...r.map(n=>n.path)),options:r.reduce((n,a)=>n.concat(a.options),[])}),t}function vyn(e,t,...r){return t===void 0?Array.from(e):vyn(e.filter((n,a)=>n===t[a]),...r)}function BW(){return{dynamics:[],shortcuts:[],statics:{}}}function Byn(e){return e===CC.SuccessNode||e===CC.ErrorNode}function cjt(e,t=0){return{to:Byn(e.to)?e.to:e.to>=CC.CustomNode?e.to+t-CC.CustomNode+1:e.to+t,reducer:e.reducer}}function g6s(e,t=0){let r=BW();for(let[n,a]of e.dynamics)r.dynamics.push([n,cjt(a,t)]);for(let n of e.shortcuts)r.shortcuts.push(cjt(n,t));for(let[n,a]of Object.entries(e.statics))r.statics[n]=a.map(o=>cjt(o,t));return r}function QN(e,t,r,n,a){e.nodes[t].dynamics.push([r,{to:n,reducer:a}])}function pSe(e,t,r,n){e.nodes[t].shortcuts.push({to:r,reducer:n})}function _Z(e,t,r,n,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:n,reducer:a})}function qat(e,t,r,n,a){if(Array.isArray(t)){let[o,...l]=t;return e[o](r,n,a,...l)}else return e[t](r,n,a)}var Eyn,A6s,ljt,wW,ujt,$at,ect=bc(()=>{Qat();Jat();Eyn={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:lfe,partial:!1,tokens:[]};A6s={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,n)=>!e.ignoreOptions&&t===n,isBatchOption:(e,t,r,n)=>!e.ignoreOptions&&dyn.test(t)&&[...t.slice(1)].every(a=>n.has(`-${a}`)),isBoundOption:(e,t,r,n,a)=>{let o=t.match(ejt);return!e.ignoreOptions&&!!o&&Yat.test(o[1])&&n.has(o[1])&&a.filter(l=>l.nameSet.includes(o[1])).every(l=>l.allowBinding)},isNegatedOption:(e,t,r,n)=>!e.ignoreOptions&&t===`--no-${n.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&$8t.test(t),isUnsupportedOption:(e,t,r,n)=>!e.ignoreOptions&&t.startsWith("-")&&Yat.test(t)&&!n.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!Yat.test(t)},ljt={setCandidateState:(e,t,r,n)=>({...e,...n}),setSelectedIndex:(e,t,r,n)=>({...e,selectedIndex:n}),setPartialIndex:(e,t,r,n)=>({...e,selectedIndex:n,partial:!0}),pushBatch:(e,t,r,n)=>{let a=e.options.slice(),o=e.tokens.slice();for(let l=1;l{let[,n,a]=t.match(ejt),o=e.options.concat({name:n,value:a}),l=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,n.length],option:n},{segmentIndex:r,type:"assign",slice:[n.length,n.length+1]},{segmentIndex:r,type:"value",slice:[n.length+1,n.length+a.length+1]}]);return{...e,options:o,tokens:l}},pushPath:(e,t,r)=>{let n=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:n,tokens:a}},pushPositional:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtra:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let n=e.positionals.concat({value:t,extra:wW}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:n,tokens:a}},pushTrue:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,n)=>{let a=e.options.concat({name:n,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:n});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,n)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var n;let a=e.options[e.options.length-1],o=e.options.slice(),l=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((n=a.value)!==null&&n!==void 0?n:[]).concat([t]),{...e,options:o,tokens:l}},setStringValue:(e,t,r)=>{let n=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return n.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,n)=>{let[,,a]=t.match($8t);return typeof a<"u"?{...e,options:[{name:"-c",value:String(n)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(n)}]}},setError:(e,t,r,n)=>t===jy.EndOfInput||t===jy.EndOfPartialInput?{...e,errorMessage:`${n}.`}:{...e,errorMessage:`${n} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},wW=Symbol(),ujt=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:n=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:n,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===wW)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==wW?this.arity.extra.push(t):this.arity.extra!==wW&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===wW)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let n=0;n1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(n))throw new Error(`The arity must be an integer, got ${n}`);if(n<0)throw new Error(`The arity must be positive, got ${n}`);let A=t.reduce((f,I)=>I.length>f.length?I:f,"");for(let f of t)this.allOptionNames.set(f,A);this.options.push({preferredName:A,nameSet:t,description:r,arity:n,hidden:a,required:o,allowBinding:l})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let n=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&n.push(...this.paths[0]),t){for(let{preferredName:l,nameSet:A,arity:f,hidden:I,description:C,required:b}of this.options){if(I)continue;let E=[];for(let B=0;B`:`[${N}]`)}n.push(...this.arity.leading.map(l=>`<${l}>`)),this.arity.extra===wW?n.push("..."):n.push(...this.arity.extra.map(l=>`[${l}]`)),n.push(...this.arity.trailing.map(l=>`<${l}>`))}return{usage:n.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=Syn(),r=CC.InitialNode,n=this.usage().usage,a=this.options.filter(A=>A.required).map(A=>A.nameSet);r=qQ(t,BW()),_Z(t,CC.InitialNode,jy.StartOfInput,r,["setCandidateState",{candidateUsage:n,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",l=this.paths.length>0?this.paths:[[]];for(let A of l){let f=r;if(A.length>0){let E=qQ(t,BW());pSe(t,f,E),this.registerOptions(t,E),f=E}for(let E=0;E0||!this.arity.proxy){let E=qQ(t,BW());QN(t,f,"isHelp",E,["useHelp",this.cliIndex]),QN(t,E,"always",E,"pushExtra"),_Z(t,E,jy.EndOfInput,CC.SuccessNode,["setSelectedIndex",lfe]),this.registerOptions(t,f)}this.arity.leading.length>0&&(_Z(t,f,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,f,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex]));let I=f;for(let E=0;E0||E+1!==this.arity.leading.length)&&(_Z(t,N,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,N,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex])),QN(t,I,"isNotOptionLike",N,"pushPositional"),I=N}let C=I;if(this.arity.extra===wW||this.arity.extra.length>0){let E=qQ(t,BW());if(pSe(t,I,E),this.arity.extra===wW){let N=qQ(t,BW());this.arity.proxy||this.registerOptions(t,N),QN(t,I,o,N,"pushExtraNoLimits"),QN(t,N,o,N,"pushExtraNoLimits"),pSe(t,N,E)}else for(let N=0;N0)&&this.registerOptions(t,B),QN(t,C,o,B,"pushExtra"),pSe(t,B,E),C=B}C=E}this.arity.trailing.length>0&&(_Z(t,C,jy.EndOfInput,CC.ErrorNode,["setError","Not enough positional arguments"]),_Z(t,C,jy.EndOfPartialInput,CC.SuccessNode,["setPartialIndex",this.cliIndex]));let b=C;for(let E=0;E=0&&t{let l=o?jy.EndOfPartialInput:jy.EndOfInput;return a6s(n,a,{endToken:l})}}}}});import gjt from"tty";function Tyn(){return gjt&&"getColorDepth"in gjt.WriteStream.prototype?gjt.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function Ryn(e){let t=wyn;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=wt("async_hooks");t=wyn=new r;let n=process.stdout._write;process.stdout._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?n.call(this,o,l,A):f.stdout.write(o,l,A)};let a=process.stderr._write;process.stderr._write=function(o,l,A){let f=t.getStore();return typeof f>"u"?a.call(this,o,l,A):f.stderr.write(o,l,A)}}return r=>t.run(e,r)}var wyn,Nyn=bc(()=>{});var tct,Dyn=bc(()=>{jse();tct=class e extends _C{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let n=new e(r);n.path=t.path;for(let a of t.options)switch(a.name){case"-c":n.commands.push(Number(a.value));break;case"-i":n.index=Number(a.value);break}return n}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: -`),this.context.stdout.write(` -`);let r=0;for(let n of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[n].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` -`),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}}});async function Gyn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=Zyn(e);return Afe.from(r,t).runExit(n,a)}async function Fyn(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}=Zyn(e);return Afe.from(r,t).run(n,a)}function Zyn(e){let t,r,n,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(n=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof _C||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?n=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],n=e[2]):e[0]&&e[0].prototype instanceof _C||Array.isArray(e[0])?(r=e[0],n=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],n=e[2],a=e[3];break}if(typeof n>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:n,resolvedContext:a}}function xyn(e){return e()}var kyn,Afe,Lyn=bc(()=>{Qat();ect();ijt();Nyn();jse();Dyn();kyn=Symbol("clipanion/errorCommand");Afe=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:n,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new $at({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=n,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let n=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)n.register(o);return n}register(t){var r;let n=new Map,a=new t;for(let f in a){let I=a[f];typeof I=="object"&&I!==null&&I[_C.isOption]&&n.set(f,I)}let o=this.builder.command(),l=o.cliIndex,A=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof A<"u")for(let f of A)o.addPath(f);this.registrations.set(t,{specs:n,builder:o,index:l});for(let[f,{definition:I}]of n.entries())I(o,f);o.setContext({commandClass:t})}process(t,r){let{input:n,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:l,process:A}=this.builder.compile(),f=A(n,{partial:o}),I={...e.defaultContext,...a};switch(f.selectedIndex){case lfe:{let C=tct.from(f,l);return C.context=I,C.tokens=f.tokens,C}default:{let{commandClass:C}=l[f.selectedIndex],b=this.registrations.get(C);if(typeof b>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let E=new C;E.context=I,E.tokens=f.tokens,E.path=f.path;try{for(let[N,{transformer:B}]of b.specs.entries())E[N]=B(b.builder,N,f,I);return E}catch(N){throw N[kyn]=E,N}}break}}async run(t,r){var n,a;let o,l={...e.defaultContext,...r},A=(n=this.enableColors)!==null&&n!==void 0?n:l.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,l)}catch(C){return l.stdout.write(this.error(C,{colored:A})),1}if(o.help)return l.stdout.write(this.usage(o,{colored:A,detailed:!0})),0;o.context=l,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:C=>this.definition(C),error:(C,b)=>this.error(C,b),format:C=>this.format(C),process:(C,b)=>this.process(C,{...l,...b}),run:(C,b)=>this.run(C,{...l,...b}),usage:(C,b)=>this.usage(C,b)};let f=this.enableCapture&&(a=Ryn(l))!==null&&a!==void 0?a:xyn,I;try{I=await f(()=>o.validateAndExecute().catch(C=>o.catch(C).then(()=>0)))}catch(C){return l.stdout.write(this.error(C,{colored:A,command:o})),1}return I}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:n}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),l=typeof t.usage.category<"u"?G9(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,A=typeof t.usage.description<"u"?G9(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?G9(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,I=typeof t.usage.examples<"u"?t.usage.examples.map(([C,b])=>[G9(C,{format:this.format(r),paragraphs:!1}),b.replace(/\$0/g,this.binaryName)]):void 0;return{path:n,usage:a,category:l,description:A,details:f,examples:I,options:o}}definitions({colored:t=!1}={}){let r=[];for(let n of this.registrations.keys()){let a=this.definition(n,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:n=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let I=f.paths,C=typeof f.usage<"u";if(!I||I.length===0||I.length===1&&I[0].length===0||((o=I?.some(N=>N.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(C){t=null;continue}}t&&(n=!0)}let l=t!==null&&t instanceof _C?t.constructor:t,A="";if(l)if(n){let{description:f="",details:I="",examples:C=[]}=l.usage||{};f!==""&&(A+=G9(f,{format:this.format(r),paragraphs:!1}).replace(/^./,N=>N.toUpperCase()),A+=` -`),(I!==""||C.length>0)&&(A+=`${this.format(r).header("Usage")} -`,A+=` -`);let{usage:b,options:E}=this.getUsageByRegistration(l,{inlineOptions:!1});if(A+=`${this.format(r).bold(a)}${b} -`,E.length>0){A+=` -`,A+=`${this.format(r).header("Options")} -`;let N=E.reduce((B,F)=>Math.max(B,F.definition.length),0);A+=` -`;for(let{definition:B,description:F}of E)A+=` ${this.format(r).bold(B.padEnd(N))} ${G9(F,{format:this.format(r),paragraphs:!1})}`}if(I!==""&&(A+=` -`,A+=`${this.format(r).header("Details")} -`,A+=` -`,A+=G9(I,{format:this.format(r),paragraphs:!0})),C.length>0){A+=` -`,A+=`${this.format(r).header("Examples")} -`;for(let[N,B]of C)A+=` -`,A+=G9(N,{format:this.format(r),paragraphs:!1}),A+=`${B.replace(/^/m,` ${this.format(r).bold(a)}`).replace(/\$0/g,this.binaryName)} -`}}else{let{usage:f}=this.getUsageByRegistration(l);A+=`${this.format(r).bold(a)}${f} -`}else{let f=new Map;for(let[E,{index:N}]of this.registrations.entries()){if(typeof E.usage>"u")continue;let B=typeof E.usage.category<"u"?G9(E.usage.category,{format:this.format(r),paragraphs:!1}):null,F=f.get(B);typeof F>"u"&&f.set(B,F=[]);let{usage:Q}=this.getUsageByIndex(N);F.push({commandClass:E,usage:Q})}let I=Array.from(f.keys()).sort((E,N)=>E===null?-1:N===null?1:E.localeCompare(N,"en",{usage:"sort",caseFirst:"upper"})),C=typeof this.binaryLabel<"u",b=typeof this.binaryVersion<"u";C||b?(C&&b?A+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} - -`:C?A+=`${this.format(r).header(`${this.binaryLabel}`)} -`:A+=`${this.format(r).header(`${this.binaryVersion}`)} -`,A+=` ${this.format(r).bold(a)}${this.binaryName} -`):A+=`${this.format(r).bold(a)}${this.binaryName} -`;for(let E of I){let N=f.get(E).slice().sort((F,Q)=>F.usage.localeCompare(Q.usage,"en",{usage:"sort",caseFirst:"upper"})),B=E!==null?E.trim():"General commands";A+=` -`,A+=`${this.format(r).header(`${B}`)} -`;for(let{commandClass:F,usage:Q}of N){let X=F.usage.description||"undocumented";A+=` -`,A+=` ${this.format(r).bold(Q)} -`,A+=` ${G9(X,{format:this.format(r),paragraphs:!1})}`}}A+=` -`,A+=G9("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return A}error(t,r){var n,{colored:a,command:o=(n=t[kyn])!==null&&n!==void 0?n:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let l="",A=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");A==="Error"&&(A="Internal Error"),l+=`${this.format(a).error(A)}: ${t.message} -`;let f=t.clipanion;return typeof f<"u"?f.type==="usage"&&(l+=` -`,l+=this.usage(o)):t.stack&&(l+=`${t.stack.replace(/^.*\n/,"")} -`),l}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?pyn:fyn}getUsageByRegistration(t,r){let n=this.registrations.get(t);if(typeof n>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(n.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};Afe.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:Tyn()}});var MOe,Vyn=bc(()=>{jse();MOe=class extends _C{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};MOe.paths=[["--clipanion=definitions"]]});var HOe,Pyn=bc(()=>{jse();HOe=class extends _C{async execute(){this.context.stdout.write(this.cli.usage())}};HOe.paths=[["-h"],["--help"]]});function rct(e={}){return hZ({definition(t,r){var n;t.addProxy({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){return n.positionals.map(({value:a})=>a)}})}var Ajt=bc(()=>{Mq()});var YOe,Wyn=bc(()=>{jse();Ajt();YOe=class extends _C{constructor(){super(...arguments),this.args=rct()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} -`)}};YOe.paths=[["--clipanion=tokens"]]});var QOe,Oyn=bc(()=>{jse();QOe=class extends _C{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} -`)}};QOe.paths=[["-v"],["--version"]]});var djt={};sI(djt,{DefinitionsCommand:()=>MOe,HelpCommand:()=>HOe,TokensCommand:()=>YOe,VersionCommand:()=>QOe});var Myn=bc(()=>{Vyn();Pyn();Wyn();Oyn()});function Hyn(e,t,r){let[n,a]=FK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return hZ({definition(f){f.addOption({names:l,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,I,C){let b,E=typeof n<"u"?[...n]:void 0;for(let{name:N,value:B}of C.options)A.has(N)&&(b=N,E=E??[],E.push(B));return typeof E<"u"?gfe(b??I,E,a.validator):E}})}var Yyn=bc(()=>{Mq()});function Qyn(e,t,r){let[n,a]=FK(t,r??{}),o=e.split(","),l=new Set(o);return hZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C=E);return C}})}var Xyn=bc(()=>{Mq()});function Jyn(e,t,r){let[n,a]=FK(t,r??{}),o=e.split(","),l=new Set(o);return hZ({definition(A){A.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,f,I){let C=n;for(let{name:b,value:E}of I.options)l.has(b)&&(C??(C=0),E?C+=1:C=0);return C}})}var Uyn=bc(()=>{Mq()});function Kyn(e={}){return hZ({definition(t,r){var n;t.addRest({name:(n=e.name)!==null&&n!==void 0?n:r,required:e.required})},transformer(t,r,n){let a=l=>{let A=n.positionals[l];return A.extra===wW||A.extra===!1&&ll)}})}var jyn=bc(()=>{ect();Mq()});function d6s(e,t,r){let[n,a]=FK(t,r??{}),{arity:o=1}=a,l=e.split(","),A=new Set(l);return hZ({definition(f){f.addOption({names:l,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,I,C,b){let E,N=n;typeof a.env<"u"&&b.env[a.env]&&(E=a.env,N=b.env[a.env]);for(let{name:B,value:F}of C.options)A.has(B)&&(E=B,N=F);return typeof N=="string"?gfe(E??I,N,a.validator):N}})}function p6s(e={}){let{required:t=!0}=e;return hZ({definition(r,n){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:n,required:e.required})},transformer(r,n,a){var o;for(let l=0;l{ect();Mq()});var Su={};sI(Su,{Array:()=>Hyn,Boolean:()=>Qyn,Counter:()=>Jyn,Proxy:()=>rct,Rest:()=>Kyn,String:()=>zyn,applyValidator:()=>gfe,cleanValidationError:()=>Uat,formatError:()=>POe,isOptionSymbol:()=>VOe,makeCommandOption:()=>hZ,rerouteArguments:()=>FK});var $yn=bc(()=>{Mq();Ajt();Yyn();Xyn();Uyn();jyn();qyn()});var rg={};sI(rg,{Builtins:()=>djt,Cli:()=>Afe,Command:()=>_C,Option:()=>Su,UsageError:()=>ufe,formatMarkdownish:()=>G9,run:()=>Fyn,runExit:()=>Gyn});var $c=bc(()=>{Jat();ijt();jse();Lyn();Myn();$yn()});var ebn=H(nct=>{"use strict";Object.defineProperty(nct,"__esModule",{value:!0});nct.BaseCommand=void 0;var pjt=($c(),vi(rg)),fjt=class extends pjt.Command{constructor(){super(...arguments),this.cwd=pjt.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new pjt.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};nct.BaseCommand=fjt});var Va={};sI(Va,{__addDisposableResource:()=>vbn,__assign:()=>ict,__asyncDelegator:()=>hbn,__asyncGenerator:()=>Ibn,__asyncValues:()=>mbn,__await:()=>fSe,__awaiter:()=>ubn,__classPrivateFieldGet:()=>bbn,__classPrivateFieldIn:()=>Sbn,__classPrivateFieldSet:()=>Ebn,__createBinding:()=>oct,__decorate:()=>nbn,__disposeResources:()=>Bbn,__esDecorate:()=>sbn,__exportStar:()=>Abn,__extends:()=>tbn,__generator:()=>gbn,__importDefault:()=>ybn,__importStar:()=>_bn,__makeTemplateObject:()=>Cbn,__metadata:()=>lbn,__param:()=>ibn,__propKey:()=>abn,__read:()=>mjt,__rest:()=>rbn,__rewriteRelativeImportExtension:()=>wbn,__runInitializers:()=>obn,__setFunctionName:()=>cbn,__spread:()=>dbn,__spreadArray:()=>fbn,__spreadArrays:()=>pbn,__values:()=>sct,default:()=>h6s});function tbn(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Ijt(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function rbn(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function ibn(e,t){return function(r,n){t(r,n,e)}}function sbn(e,t,r,n,a,o){function l(X){if(X!==void 0&&typeof X!="function")throw new TypeError("Function expected");return X}for(var A=n.kind,f=A==="getter"?"get":A==="setter"?"set":"value",I=!t&&e?n.static?e:e.prototype:null,C=t||(I?Object.getOwnPropertyDescriptor(I,n.name):{}),b,E=!1,N=r.length-1;N>=0;N--){var B={};for(var F in n)B[F]=F==="access"?{}:n[F];for(var F in n.access)B.access[F]=n.access[F];B.addInitializer=function(X){if(E)throw new TypeError("Cannot add initializers after decoration has completed");o.push(l(X||null))};var Q=(0,r[N])(A==="accessor"?{get:C.get,set:C.set}:C[f],B);if(A==="accessor"){if(Q===void 0)continue;if(Q===null||typeof Q!="object")throw new TypeError("Object expected");(b=l(Q.get))&&(C.get=b),(b=l(Q.set))&&(C.set=b),(b=l(Q.init))&&a.unshift(b)}else(b=l(Q))&&(A==="field"?a.unshift(b):C[f]=b)}I&&Object.defineProperty(I,n.name,C),E=!0}function obn(e,t,r){for(var n=arguments.length>2,a=0;a0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function mjt(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o}function dbn(){for(var e=[],t=0;t1||f(N,F)})},B&&(a[N]=B(a[N])))}function f(N,B){try{I(n[N](B))}catch(F){E(o[0][3],F)}}function I(N){N.value instanceof fSe?Promise.resolve(N.value.v).then(C,b):E(o[0][2],N)}function C(N){f("next",N)}function b(N){f("throw",N)}function E(N,B){N(B),o.shift(),o.length&&f(o[0][0],o[0][1])}}function hbn(e){var t,r;return t={},n("next"),n("throw",function(a){throw a}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(a,o){t[a]=e[a]?function(l){return(r=!r)?{value:fSe(e[a](l)),done:!1}:o?o(l):l}:o}}function mbn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof sct=="function"?sct(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=e[o]&&function(l){return new Promise(function(A,f){l=e[o](l),a(A,f,l.done,l.value)})}}function a(o,l,A,f){Promise.resolve(f).then(function(I){o({value:I,done:A})},l)}}function Cbn(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function _bn(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=hjt(e),n=0;n{Ijt=function(e,t){return Ijt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(r[a]=n[a])},Ijt(e,t)};ict=function(){return ict=Object.assign||function(t){for(var r,n=1,a=arguments.length;n{"use strict";Object.defineProperty(X5,"__esModule",{value:!0});X5.SAFE_TIME=X5.S_IFLNK=X5.S_IFREG=X5.S_IFDIR=X5.S_IFMT=void 0;X5.S_IFMT=61440;X5.S_IFDIR=16384;X5.S_IFREG=32768;X5.S_IFLNK=40960;X5.SAFE_TIME=456789e3});var cct=H(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});Z9.EBUSY=m6s;Z9.ENOSYS=C6s;Z9.EINVAL=_6s;Z9.EBADF=y6s;Z9.ENOENT=b6s;Z9.ENOTDIR=E6s;Z9.EISDIR=S6s;Z9.EEXIST=v6s;Z9.EROFS=B6s;Z9.ENOTEMPTY=w6s;Z9.EOPNOTSUPP=T6s;Z9.ERR_DIR_CLOSED=R6s;function J5(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function m6s(e){return J5("EBUSY",e)}function C6s(e,t){return J5("ENOSYS",`${e}, ${t}`)}function _6s(e){return J5("EINVAL",`invalid argument, ${e}`)}function y6s(e){return J5("EBADF",`bad file descriptor, ${e}`)}function b6s(e){return J5("ENOENT",`no such file or directory, ${e}`)}function E6s(e){return J5("ENOTDIR",`not a directory, ${e}`)}function S6s(e){return J5("EISDIR",`illegal operation on a directory, ${e}`)}function v6s(e){return J5("EEXIST",`file already exists, ${e}`)}function B6s(e){return J5("EROFS",`read-only filesystem, ${e}`)}function w6s(e){return J5("ENOTEMPTY",`directory not empty, ${e}`)}function T6s(e){return J5("EOPNOTSUPP",`operation not supported, ${e}`)}function R6s(){return J5("ERR_DIR_CLOSED","Directory handle was closed")}});var _jt=H(bk=>{"use strict";Object.defineProperty(bk,"__esModule",{value:!0});bk.BigIntStatsEntry=bk.StatEntry=bk.DirEntry=bk.DEFAULT_MODE=void 0;bk.makeDefaultStats=Rbn;bk.makeEmptyStats=D6s;bk.clearStats=Nbn;bk.convertToBigIntStats=k6s;bk.areStatsEqual=x6s;var N6s=(Pa(),vi(Va)),Tbn=N6s.__importStar(wt("util")),bR=act();bk.DEFAULT_MODE=bR.S_IFREG|420;var Cjt=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&bR.S_IFMT)===bR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&bR.S_IFMT)===bR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&bR.S_IFMT)===bR.S_IFLNK}};bk.DirEntry=Cjt;var lct=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=bk.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&bR.S_IFMT)===bR.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&bR.S_IFMT)===bR.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&bR.S_IFMT)===bR.S_IFLNK}};bk.StatEntry=lct;var uct=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(bk.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(bR.S_IFMT))===BigInt(bR.S_IFLNK)}};bk.BigIntStatsEntry=uct;function Rbn(){return new lct}function D6s(){return Nbn(Rbn())}function Nbn(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):Tbn.types.isDate(r)&&(e[t]=new Date(0))}return e}function k6s(e){let t=new uct;for(let r in e)if(Object.hasOwn(e,r)){let n=e[r];typeof n=="number"?t[r]=BigInt(Math.floor(n)):Tbn.types.isDate(n)&&(t[r]=new Date(n))}return t.atimeNs=t.atimeMs*BigInt(1e6)+BigInt(Math.floor(e.atimeMs%1*1e3))*BigInt(1e3),t.mtimeNs=t.mtimeMs*BigInt(1e6)+BigInt(Math.floor(e.mtimeMs%1*1e3))*BigInt(1e3),t.ctimeNs=t.ctimeMs*BigInt(1e6)+BigInt(Math.floor(e.ctimeMs%1*1e3))*BigInt(1e3),t.birthtimeNs=t.birthtimeMs*BigInt(1e6)+BigInt(Math.floor(e.birthtimeMs%1*1e3))*BigInt(1e3),t}function x6s(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,n=t;return!(r.atimeNs!==n.atimeNs||r.mtimeNs!==n.mtimeNs||r.ctimeNs!==n.ctimeNs||r.birthtimeNs!==n.birthtimeNs)}});var L9=H(BS=>{"use strict";Object.defineProperty(BS,"__esModule",{value:!0});BS.ppath=BS.npath=BS.Filename=BS.PortablePath=void 0;BS.convertPath=O6s;var G6s=(Pa(),vi(Va)),gct=G6s.__importDefault(wt("path")),Dbn;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(Dbn||(Dbn={}));BS.PortablePath={root:"/",dot:".",parent:".."};BS.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};BS.npath=Object.create(gct.default);BS.ppath=Object.create(gct.default.posix);BS.npath.cwd=()=>process.cwd();BS.ppath.cwd=process.platform==="win32"?()=>yjt(process.cwd()):process.cwd;process.platform==="win32"&&(BS.ppath.resolve=(...e)=>e.length>0&&BS.ppath.isAbsolute(e[0])?gct.default.posix.resolve(...e):gct.default.posix.resolve(BS.ppath.cwd(),...e));var kbn=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};BS.npath.contains=(e,t)=>kbn(BS.npath,e,t);BS.ppath.contains=(e,t)=>kbn(BS.ppath,e,t);var F6s=/^([a-zA-Z]:.*)$/,Z6s=/^\/\/(\.\/)?(.*)$/,L6s=/^\/([a-zA-Z]:.*)$/,V6s=/^\/unc\/(\.dot\/)?(.*)$/;function P6s(e){let t,r;if(t=e.match(L6s))e=t[1];else if(r=e.match(V6s))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function W6s(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(F6s))?e=`/${t[1]}`:(r=e.match(Z6s))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var yjt=process.platform==="win32"?W6s:e=>e,xbn=process.platform==="win32"?P6s:e=>e;BS.npath.fromPortablePath=xbn;BS.npath.toPortablePath=yjt;function O6s(e,t){return e===BS.npath?xbn(t):yjt(t)}});var Ejt=H(Act=>{"use strict";Object.defineProperty(Act,"__esModule",{value:!0});Act.setupCopyIndex=X6s;Act.copyPromise=J6s;var M6s=(Pa(),vi(Va)),H6s=M6s.__importStar(act()),Y6s=L9(),dfe=new Date(H6s.SAFE_TIME*1e3),Q6s=dfe.getTime();async function X6s(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let n=[];for(let a of r)for(let o of r)n.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(n),t.indexPath}async function J6s(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:dfe,mtime:dfe}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await bjt(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function bjt(e,t,r,n,a,o,l){let A=l.didParentExist?await Gbn(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:dfe,mtime:dfe}:f,b;switch(!0){case f.isDirectory():b=await U6s(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await z6s(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await q6s(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function Gbn(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function U6s(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await bjt(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await bjt(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function K6s(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(function(ce){ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=F.Rename,X=await Gbn(r,B);if(a){let ce=X&&a.dev===X.dev&&a.ino===X.ino,fe=X?.mtimeMs!==Q6s;if(ce&&fe&&I.autoRepair&&(Q=F.Lock,X=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!X&&Q===F.Rename?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!X&&(Q===F.Lock&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===F.Rename&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{X||(await r.lutimesPromise(B,dfe,dfe),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function j6s(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function z6s(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?K6s(e,t,r,n,a,o,l,A,f,f.linkStrategy):j6s(e,t,r,n,a,o,l,A,f)}async function q6s(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,Y6s.convertPath)(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}});var Fbn=H(XOe=>{"use strict";Object.defineProperty(XOe,"__esModule",{value:!0});XOe.CustomDir=void 0;XOe.opendir=t7s;var $6s=(Pa(),vi(Va)),e7s=$6s.__importStar(cct()),dct=class{constructor(t,r,n={}){this.path=t,this.nextDirent=r,this.opts=n,this.closed=!1}throwIfClosed(){if(this.closed)throw e7s.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};XOe.CustomDir=dct;function t7s(e,t,r,n){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let l=e.pathUtils.join(t,o);return Object.assign(e.statSync(l),{name:o,path:void 0})};return new dct(t,a,n)}});var Zbn=H(Hq=>{"use strict";Object.defineProperty(Hq,"__esModule",{value:!0});Hq.CustomStatWatcher=Hq.Status=Hq.Event=void 0;Hq.assertStatus=Sjt;var r7s=(Pa(),vi(Va)),n7s=wt("events"),pct=r7s.__importStar(_jt()),pfe;(function(e){e.Change="change",e.Stop="stop"})(pfe||(Hq.Event=pfe={}));var ffe;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(ffe||(Hq.Status=ffe={}));function Sjt(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var vjt=class e extends n7s.EventEmitter{static create(t,r,n){let a=new e(t,r,n);return a.start(),a}constructor(t,r,{bigint:n=!1}={}){super(),this.status=ffe.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=n,this.lastStats=this.stat()}start(){Sjt(this.status,ffe.Ready),this.status=ffe.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(pfe.Change,this.lastStats,this.lastStats)},3)}stop(){Sjt(this.status,ffe.Running),this.status=ffe.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(pfe.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let t=this.bigint?new pct.BigIntStatsEntry:new pct.StatEntry;return pct.clearStats(t)}}makeInterval(t){let r=setInterval(()=>{let n=this.stat(),a=this.lastStats;pct.areStatsEqual(n,a)||(this.lastStats=n,this.emit(pfe.Change,n,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(pfe.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(pfe.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};Hq.CustomStatWatcher=vjt});var Bjt=H(JOe=>{"use strict";Object.defineProperty(JOe,"__esModule",{value:!0});JOe.watchFile=s7s;JOe.unwatchFile=Lbn;JOe.unwatchAllFiles=o7s;var i7s=Zbn(),fct=new WeakMap;function s7s(e,t,r,n){let a,o,l,A;switch(typeof r){case"function":a=!1,o=!0,l=5007,A=r;break;default:({bigint:a=!1,persistent:o=!0,interval:l=5007}=r),A=n;break}let f=fct.get(e);typeof f>"u"&&fct.set(e,f=new Map);let I=f.get(t);return typeof I>"u"&&(I=i7s.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,I)),I.registerChangeListener(A,{persistent:o,interval:l}),I}function Lbn(e,t,r){let n=fct.get(e);if(typeof n>"u")return;let a=n.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),n.delete(t)))}function o7s(e){let t=fct.get(e);if(!(typeof t>"u"))for(let r of t.keys())Lbn(e,r)}});var hfe=H(Ife=>{"use strict";Object.defineProperty(Ife,"__esModule",{value:!0});Ife.BasePortableFakeFS=Ife.FakeFS=void 0;Ife.normalizeLineEndings=Tjt;var a7s=wt("crypto"),c7s=wt("os"),l7s=Ejt(),Vbn=L9(),Ict=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,a7s.createHash)(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await(0,l7s.copyPromise)(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync((0,Vbn.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?Tjt(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?Tjt(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} -`)}writeJsonSync(t,r,{compact:n=!1}={}){let a=n?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}};Ife.FakeFS=Ict;var wjt=class extends Ict{constructor(){super(Vbn.ppath)}};Ife.BasePortableFakeFS=wjt;function u7s(e){let t=e.match(/\r?\n/g);if(t===null)return c7s.EOL;let r=t.filter(a=>a===`\r -`).length,n=t.length-r;return r>n?`\r -`:` -`}function Tjt(e,t){return t.replace(/\r?\n/g,u7s(e))}});var Yq=H(hct=>{"use strict";Object.defineProperty(hct,"__esModule",{value:!0});hct.ProxiedFS=void 0;var g7s=hfe(),Rjt=class extends g7s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};hct.ProxiedFS=Rjt});var Pbn=H(mct=>{"use strict";Object.defineProperty(mct,"__esModule",{value:!0});mct.AliasFS=void 0;var A7s=Yq(),Njt=class extends A7s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:n}){super(n),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};mct.AliasFS=Njt});var mfe=H(Cct=>{"use strict";Object.defineProperty(Cct,"__esModule",{value:!0});Cct.NodeFS=void 0;var d7s=(Pa(),vi(Va)),p7s=d7s.__importDefault(wt("fs")),f7s=hfe(),ku=L9();function Wbn(e){let t=e;return typeof e.path=="string"&&(t.path=ku.npath.toPortablePath(e.path)),t}var Djt=class extends f7s.BasePortableFakeFS{constructor(t=p7s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return ku.PortablePath.root}resolve(t){return ku.ppath.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(ku.npath.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(ku.npath.fromPortablePath(t),r):this.realFs.opendirSync(ku.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?ku.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(ku.npath.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}realpathSync(t){return ku.npath.toPortablePath(this.realFs.realpathSync(ku.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(ku.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(ku.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(ku.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(ku.npath.fromPortablePath(t),r):this.realFs.statSync(ku.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(ku.npath.fromPortablePath(t),r):this.realFs.lstatSync(ku.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(ku.npath.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(ku.npath.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?ku.npath.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(ku.npath.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(ku.npath.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(ku.npath.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(ku.npath.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(ku.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(ku.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(ku.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(ku.npath.fromPortablePath(t),ku.npath.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(ku.npath.fromPortablePath(t.replace(/\/+$/,"")),ku.npath.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?ku.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?ku.npath.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Wbn)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(ku.npath.toPortablePath)),a)):this.realFs.readdir(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(ku.npath.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(Wbn):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r).map(ku.npath.toPortablePath):this.realFs.readdirSync(ku.npath.fromPortablePath(t),r):this.realFs.readdirSync(ku.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(ku.npath.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>ku.npath.toPortablePath(r))}readlinkSync(t){return ku.npath.toPortablePath(this.realFs.readlinkSync(ku.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(ku.npath.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(ku.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(ku.npath.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(ku.npath.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(ku.npath.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}};Cct.NodeFS=Djt});var Obn=H(_ct=>{"use strict";Object.defineProperty(_ct,"__esModule",{value:!0});_ct.CwdFS=void 0;var I7s=mfe(),h7s=Yq(),kjt=L9(),xjt=class extends h7s.ProxiedFS{constructor(t,{baseFs:r=new I7s.NodeFS}={}){super(kjt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?kjt.ppath.normalize(t):this.baseFs.resolve(kjt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};_ct.CwdFS=xjt});var Hbn=H(bct=>{"use strict";Object.defineProperty(bct,"__esModule",{value:!0});bct.JailFS=void 0;var m7s=mfe(),C7s=Yq(),yct=L9(),Mbn=yct.PortablePath.root,Gjt=class extends C7s.ProxiedFS{constructor(t,{baseFs:r=new m7s.NodeFS}={}){super(yct.ppath),this.target=this.pathUtils.resolve(yct.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(yct.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(Mbn,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(Mbn,this.pathUtils.relative(this.target,t))}};bct.JailFS=Gjt});var Ybn=H(Ect=>{"use strict";Object.defineProperty(Ect,"__esModule",{value:!0});Ect.LazyFS=void 0;var _7s=Yq(),Fjt=class extends _7s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};Ect.LazyFS=Fjt});var Qbn=H(Bct=>{"use strict";Object.defineProperty(Bct,"__esModule",{value:!0});Bct.MountFS=void 0;var y7s=(Pa(),vi(Va)),ISe=wt("fs"),b7s=hfe(),E7s=mfe(),Sct=Bjt(),V9=y7s.__importStar(cct()),vct=L9(),P9=4278190080,Zjt=class extends b7s.BasePortableFakeFS{constructor({baseFs:t=new E7s.NodeFS,filter:r=null,magicByte:n=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:l=5e3,typeCheck:A=ISe.constants.S_IFREG,getMountPoint:f,factoryPromise:I,factorySync:C}){if(Math.floor(n)!==n||!(n>1&&n<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=I,this.factorySync=C,this.filter=r,this.getMountPoint=f,this.magic=n<<24,this.maxAge=l,this.maxOpenFiles=a,this.typeCheck=A}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Sct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Sct.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let n=this.nextFd++|this.magic;return this.fdMap.set(n,[t,r]),n}async openPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,n),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,n)))}openSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,n),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,n)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(n,{subPath:a})=>await n.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(n,{subPath:a})=>n.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,n,a,o){if((t&P9)!==this.magic)return await this.baseFs.readPromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("read");let[A,f]=l;return await A.readPromise(f,r,n,a,o)}readSync(t,r,n,a,o){if((t&P9)!==this.magic)return this.baseFs.readSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("readSync");let[A,f]=l;return A.readSync(f,r,n,a,o)}async writePromise(t,r,n,a,o){if((t&P9)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("write");let[A,f]=l;return typeof r=="string"?await A.writePromise(f,r,n):await A.writePromise(f,r,n,a,o)}writeSync(t,r,n,a,o){if((t&P9)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o);let l=this.fdMap.get(t);if(typeof l>"u")throw V9.EBADF("writeSync");let[A,f]=l;return typeof r=="string"?A.writeSync(f,r,n):A.writeSync(f,r,n,a,o)}async closePromise(t){if((t&P9)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw V9.EBADF("close");this.fdMap.delete(t);let[n,a]=r;return await n.closePromise(a)}closeSync(t){if((t&P9)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw V9.EBADF("closeSync");this.fdMap.delete(t);let[n,a]=r;return n.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(n,{archivePath:a,subPath:o})=>{let l=n.createReadStream(o,r);return l.path=vct.npath.fromPortablePath(this.pathUtils.join(a,o)),l})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(n,{subPath:a})=>n.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(vct.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:n,subPath:a})=>{let o=this.realPaths.get(n);return typeof o>"u"&&(o=this.baseFs.realpathSync(n),this.realPaths.set(n,o)),this.pathUtils.join(o,this.pathUtils.relative(vct.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:n})=>await r.existsPromise(n))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:n})=>r.existsSync(n))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(n,{subPath:a})=>await n.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(n,{subPath:a})=>n.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(n,{subPath:a})=>await n.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(n,{subPath:a})=>n.statSync(a,r))}async fstatPromise(t,r){if((t&P9)!==this.magic)return this.baseFs.fstatPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fstat");let[a,o]=n;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&P9)!==this.magic)return this.baseFs.fstatSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fstatSync");let[a,o]=n;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(n,{subPath:a})=>await n.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(n,{subPath:a})=>n.lstatSync(a,r))}async fchmodPromise(t,r){if((t&P9)!==this.magic)return this.baseFs.fchmodPromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fchmod");let[a,o]=n;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&P9)!==this.magic)return this.baseFs.fchmodSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("fchmodSync");let[a,o]=n;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(n,{subPath:a})=>await n.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(n,{subPath:a})=>n.chmodSync(a,r))}async fchownPromise(t,r,n){if((t&P9)!==this.magic)return this.baseFs.fchownPromise(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw V9.EBADF("fchown");let[o,l]=a;return o.fchownPromise(l,r,n)}fchownSync(t,r,n){if((t&P9)!==this.magic)return this.baseFs.fchownSync(t,r,n);let a=this.fdMap.get(t);if(typeof a>"u")throw V9.EBADF("fchownSync");let[o,l]=a;return o.fchownSync(l,r,n)}async chownPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,n),async(a,{subPath:o})=>await a.chownPromise(o,r,n))}chownSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,n),(a,{subPath:o})=>a.chownSync(o,r,n))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(n,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await n.renamePromise(a,l)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(n,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:l})=>{if(n!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return n.renameSync(a,l)}))}async copyFilePromise(t,r,n=0){let a=async(o,l,A,f)=>{if(n&ISe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&ISe.constants.COPYFILE_EXCL&&await this.existsPromise(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=await o.readFilePromise(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}await A.writeFilePromise(f,I)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,n),async(o,{subPath:l})=>await a(this.baseFs,t,o,l)),async(o,{subPath:l})=>await this.makeCallPromise(r,async()=>await a(o,l,this.baseFs,r),async(A,{subPath:f})=>o!==A?await a(o,l,A,f):await o.copyFilePromise(l,f,n)))}copyFileSync(t,r,n=0){let a=(o,l,A,f)=>{if(n&ISe.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${l}' -> ${f}'`),{code:"EXDEV"});if(n&ISe.constants.COPYFILE_EXCL&&this.existsSync(l))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${l}' -> '${f}'`),{code:"EEXIST"});let I;try{I=o.readFileSync(l)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${l}' -> '${f}'`),{code:"EINVAL"})}A.writeFileSync(f,I)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,n),(o,{subPath:l})=>a(this.baseFs,t,o,l)),(o,{subPath:l})=>this.makeCallSync(r,()=>a(o,l,this.baseFs,r),(A,{subPath:f})=>o!==A?a(o,l,A,f):o.copyFileSync(l,f,n)))}async appendFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,n),async(a,{subPath:o})=>await a.appendFilePromise(o,r,n))}appendFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,n),(a,{subPath:o})=>a.appendFileSync(o,r,n))}async writeFilePromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,n),async(a,{subPath:o})=>await a.writeFilePromise(o,r,n))}writeFileSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,n),(a,{subPath:o})=>a.writeFileSync(o,r,n))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:n})=>await r.unlinkPromise(n))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:n})=>r.unlinkSync(n))}async utimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,n),async(a,{subPath:o})=>await a.utimesPromise(o,r,n))}utimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,n),(a,{subPath:o})=>a.utimesSync(o,r,n))}async lutimesPromise(t,r,n){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,n),async(a,{subPath:o})=>await a.lutimesPromise(o,r,n))}lutimesSync(t,r,n){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,n),(a,{subPath:o})=>a.lutimesSync(o,r,n))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(n,{subPath:a})=>await n.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(n,{subPath:a})=>n.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(n,{subPath:a})=>await n.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(n,{subPath:a})=>n.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(n,{subPath:a})=>await n.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(n,{subPath:a})=>n.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(n,{subPath:a})=>await n.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(n,{subPath:a})=>n.linkSync(t,a))}async symlinkPromise(t,r,n){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,n),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,n){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,n),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(n,{subPath:a})=>await n.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(n,{subPath:a})=>n.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(n,{subPath:a})=>await n.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(n,{subPath:a})=>n.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:n})=>await r.readlinkPromise(n))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:n})=>r.readlinkSync(n))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(n,{subPath:a})=>await n.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(n,{subPath:a})=>n.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&P9)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("ftruncate");let[a,o]=n;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&P9)!==this.magic)return this.baseFs.ftruncateSync(t,r);let n=this.fdMap.get(t);if(typeof n>"u")throw V9.EBADF("ftruncateSync");let[a,o]=n;return a.ftruncateSync(o,r)}watch(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,n),(a,{subPath:o})=>a.watch(o,r,n))}watchFile(t,r,n){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,n),()=>(0,Sct.watchFile)(this,t,r,n))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Sct.unwatchFile)(this,t,r))}async makeCallPromise(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),l=this.findMount(o);return l?a&&l.subPath==="/"?await r():await this.getMountPromise(l.archivePath,async A=>await n(A,l)):await r()}makeCallSync(t,r,n,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),l=this.findMount(o);return!l||a&&l.subPath==="/"?r():this.getMountSync(l.archivePath,A=>n(A,l))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let n=t.substring(r.length),a=this.getMountPoint(n,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.statSync(r).mode&ISe.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(vct.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),n=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:l,expiresAt:A,refCount:f}]of this.mountInstances.entries())if(!(f!==0||l.hasOpenFileHandles?.())){if(r>=A){l.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){n=A;break}l.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(n)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},n-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);if(!n){let a=await this.factoryPromise(this.baseFs,t);n=this.mountInstances.get(t),n||(n={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.childFs)}finally{n.refCount-=1}}else{let n=(await this.factoryPromise(this.baseFs,t))();try{return await r(n)}finally{n.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let n=this.mountInstances.get(t);return n||(n={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,n),n.expiresAt=Date.now()+this.maxAge,r(n.childFs)}else{let n=this.factorySync(this.baseFs,t);try{return r(n)}finally{n.saveAndClose?.()}}}};Bct.MountFS=Zjt});var Xbn=H(wct=>{"use strict";Object.defineProperty(wct,"__esModule",{value:!0});wct.NoFS=void 0;var S7s=hfe(),v7s=L9(),Pg=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),UOe=class extends S7s.FakeFS{constructor(){super(v7s.ppath)}getExtractHint(){throw Pg()}getRealPath(){throw Pg()}resolve(){throw Pg()}async openPromise(){throw Pg()}openSync(){throw Pg()}async opendirPromise(){throw Pg()}opendirSync(){throw Pg()}async readPromise(){throw Pg()}readSync(){throw Pg()}async writePromise(){throw Pg()}writeSync(){throw Pg()}async closePromise(){throw Pg()}closeSync(){throw Pg()}createWriteStream(){throw Pg()}createReadStream(){throw Pg()}async realpathPromise(){throw Pg()}realpathSync(){throw Pg()}async readdirPromise(){throw Pg()}readdirSync(){throw Pg()}async existsPromise(t){throw Pg()}existsSync(t){throw Pg()}async accessPromise(){throw Pg()}accessSync(){throw Pg()}async statPromise(){throw Pg()}statSync(){throw Pg()}async fstatPromise(t){throw Pg()}fstatSync(t){throw Pg()}async lstatPromise(t){throw Pg()}lstatSync(t){throw Pg()}async fchmodPromise(){throw Pg()}fchmodSync(){throw Pg()}async chmodPromise(){throw Pg()}chmodSync(){throw Pg()}async fchownPromise(){throw Pg()}fchownSync(){throw Pg()}async chownPromise(){throw Pg()}chownSync(){throw Pg()}async mkdirPromise(){throw Pg()}mkdirSync(){throw Pg()}async rmdirPromise(){throw Pg()}rmdirSync(){throw Pg()}async rmPromise(){throw Pg()}rmSync(){throw Pg()}async linkPromise(){throw Pg()}linkSync(){throw Pg()}async symlinkPromise(){throw Pg()}symlinkSync(){throw Pg()}async renamePromise(){throw Pg()}renameSync(){throw Pg()}async copyFilePromise(){throw Pg()}copyFileSync(){throw Pg()}async appendFilePromise(){throw Pg()}appendFileSync(){throw Pg()}async writeFilePromise(){throw Pg()}writeFileSync(){throw Pg()}async unlinkPromise(){throw Pg()}unlinkSync(){throw Pg()}async utimesPromise(){throw Pg()}utimesSync(){throw Pg()}async lutimesPromise(){throw Pg()}lutimesSync(){throw Pg()}async readFilePromise(){throw Pg()}readFileSync(){throw Pg()}async readlinkPromise(){throw Pg()}readlinkSync(){throw Pg()}async truncatePromise(){throw Pg()}truncateSync(){throw Pg()}async ftruncatePromise(t,r){throw Pg()}ftruncateSync(t,r){throw Pg()}watch(){throw Pg()}watchFile(){throw Pg()}unwatchFile(){throw Pg()}};wct.NoFS=UOe;UOe.instance=new UOe});var Jbn=H(Tct=>{"use strict";Object.defineProperty(Tct,"__esModule",{value:!0});Tct.PosixFS=void 0;var B7s=Yq(),Ljt=L9(),Vjt=class extends B7s.ProxiedFS{constructor(t){super(Ljt.npath),this.baseFs=t}mapFromBase(t){return Ljt.npath.fromPortablePath(t)}mapToBase(t){return Ljt.npath.toPortablePath(t)}};Tct.PosixFS=Vjt});var Ubn=H(Rct=>{"use strict";Object.defineProperty(Rct,"__esModule",{value:!0});Rct.VirtualFS=void 0;var w7s=mfe(),T7s=Yq(),$Q=L9(),R7s=/^[0-9]+$/,Pjt=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,N7s=/^([^/]+-)?[a-f0-9]+$/,Wjt=class e extends T7s.ProxiedFS{static makeVirtualPath(t,r,n){if($Q.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!$Q.ppath.basename(r).match(N7s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=$Q.ppath.relative($Q.ppath.dirname(t),n).split("/"),l=0;for(;l{"use strict";Object.defineProperty(Nct,"__esModule",{value:!0});Nct.NodePathFS=void 0;var D7s=(Pa(),vi(Va)),Kbn=D7s.__importDefault(wt("buffer")),k7s=wt("url"),x7s=wt("util"),G7s=Yq(),F7s=L9(),Ojt=class extends G7s.ProxiedFS{constructor(t){super(F7s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,k7s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!Z7s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,x7s.inspect)(t)}`)}};Nct.NodePathFS=Ojt;function Z7s(e,t){return typeof Kbn.default.isUtf8<"u"?Kbn.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var tEn=H(xct=>{"use strict";var zbn,qbn,$bn,eEn;Object.defineProperty(xct,"__esModule",{value:!0});xct.FileHandle=void 0;var L7s=wt("readline"),yZ=Symbol("kBaseFs"),zse=Symbol("kFd"),qse=Symbol("kClosePromise"),Dct=Symbol("kCloseResolve"),kct=Symbol("kCloseReject"),hSe=Symbol("kRefs"),eX=Symbol("kRef"),tX=Symbol("kUnref"),Mjt=class{constructor(t,r){this[zbn]=1,this[qbn]=void 0,this[$bn]=void 0,this[eEn]=void 0,this[yZ]=r,this[zse]=t}get fd(){return this[zse]}async appendFile(t,r){try{this[eX](this.appendFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;return await this[yZ].appendFilePromise(this.fd,t,n?{encoding:n}:void 0)}finally{this[tX]()}}async chown(t,r){try{return this[eX](this.chown),await this[yZ].fchownPromise(this.fd,t,r)}finally{this[tX]()}}async chmod(t){try{return this[eX](this.chmod),await this[yZ].fchmodPromise(this.fd,t)}finally{this[tX]()}}createReadStream(t){return this[yZ].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[yZ].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,n,a){try{this[eX](this.read);let o,l;return ArrayBuffer.isView(t)?typeof r=="object"&&r!==null?(o=t,l=r?.offset??0,n=r?.length??o.byteLength-l,a=r?.position??null):(o=t,l=r??0,n??=0):(o=t?.buffer??Buffer.alloc(16384),l=t?.offset??0,n=t?.length??o.byteLength-l,a=t?.position??null),n===0?{bytesRead:n,buffer:o}:{bytesRead:await this[yZ].readPromise(this.fd,Buffer.isBuffer(o)?o:Buffer.from(o.buffer,o.byteOffset,o.byteLength),l,n,a),buffer:o}}finally{this[tX]()}}async readFile(t){try{this[eX](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[yZ].readFilePromise(this.fd,r)}finally{this[tX]()}}readLines(t){return(0,L7s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[eX](this.stat),await this[yZ].fstatPromise(this.fd,t)}finally{this[tX]()}}async truncate(t){try{return this[eX](this.truncate),await this[yZ].ftruncatePromise(this.fd,t)}finally{this[tX]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[eX](this.writeFile);let n=(typeof r=="string"?r:r?.encoding)??void 0;await this[yZ].writeFilePromise(this.fd,t,n)}finally{this[tX]()}}async write(...t){try{if(this[eX](this.write),ArrayBuffer.isView(t[0])){let[r,n,a,o]=t;return{bytesWritten:await this[yZ].writePromise(this.fd,r,n??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,n,a]=t;return{bytesWritten:await this[yZ].writePromise(this.fd,r,n,a),buffer:r}}}finally{this[tX]()}}async writev(t,r){try{this[eX](this.writev);let n=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);n+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);n+=o.bytesWritten}return{buffers:t,bytesWritten:n}}finally{this[tX]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[zse]===-1)return Promise.resolve();if(this[qse])return this[qse];if(this[hSe]--,this[hSe]===0){let t=this[zse];this[zse]=-1,this[qse]=this[yZ].closePromise(t).finally(()=>{this[qse]=void 0})}else this[qse]=new Promise((t,r)=>{this[Dct]=t,this[kct]=r}).finally(()=>{this[qse]=void 0,this[kct]=void 0,this[Dct]=void 0});return this[qse]}[(zbn=hSe,qbn=qse,$bn=Dct,eEn=kct,eX)](t){if(this[zse]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[hSe]++}[tX](){if(this[hSe]--,this[hSe]===0){let t=this[zse];this[zse]=-1,this[yZ].closePromise(t).then(this[Dct],this[kct])}}};xct.FileHandle=Mjt});var sEn=H(Gct=>{"use strict";Object.defineProperty(Gct,"__esModule",{value:!0});Gct.patchFs=iEn;Gct.extendFs=W7s;var KOe=wt("util"),V7s=jbn(),rEn=tEn(),P7s=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),nEn=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function iEn(e,t){t=new V7s.NodePathFS(t);let r=(n,a,o)=>{let l=n[a];n[a]=o,typeof l?.[KOe.promisify.custom]<"u"&&(o[KOe.promisify.custom]=l[KOe.promisify.custom])};{r(e,"exists",(n,...a)=>{let l=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(n).then(A=>{l(A)},()=>{l(!1)})})}),r(e,"read",(...n)=>{let[a,o,l,A,f,I]=n;if(n.length<=3){let C={};n.length<3?I=n[1]:(C=n[1],I=n[2]),{buffer:o=Buffer.alloc(16384),offset:l=0,length:A=o.byteLength,position:f}=C}if(l==null&&(l=0),A|=0,A===0){process.nextTick(()=>{I(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,l,A,f).then(C=>{I(null,C,o)},C=>{I(C,0,o)})})});for(let n of nEn){let a=n.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[n];if(typeof o>"u")continue;r(e,a,(...A)=>{let I=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{o.apply(t,A).then(C=>{I(null,C)},C=>{I(C)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",n=>{try{return t.existsSync(n)}catch{return!1}}),r(e,"readSync",(...n)=>{let[a,o,l,A,f]=n;return n.length<=3&&({offset:l=0,length:A=o.byteLength,position:f}=n[2]||{}),l==null&&(l=0),A|=0,A===0?0:(f==null&&(f=-1),t.readSync(a,o,l,A,f))});for(let n of P7s){let a=n;if(typeof e[a]>"u")continue;let o=t[n];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let n=e.promises;for(let a of nEn){let o=a.replace(/Promise$/,"");if(typeof n[o]>"u")continue;let l=t[a];typeof l>"u"||a!=="open"&&r(n,o,(A,...f)=>A instanceof rEn.FileHandle?A[o].apply(A,f):l.call(t,A,...f))}r(n,"open",async(...a)=>{let o=await t.openPromise(...a);return new rEn.FileHandle(o,t)})}e.read[KOe.promisify.custom]=async(n,a,...o)=>({bytesRead:await t.readPromise(n,a,...o),buffer:a}),e.write[KOe.promisify.custom]=async(n,a,...o)=>({bytesWritten:await t.writePromise(n,a,...o),buffer:a})}function W7s(e,t){let r=Object.create(e);return iEn(r,t),r}});var cEn=H($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.xfs=void 0;var O7s=(Pa(),vi(Va)),M7s=O7s.__importDefault(wt("os")),H7s=mfe(),jOe=L9();function oEn(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var rX=new Set,Hjt=null;function aEn(){if(Hjt)return Hjt;let e=jOe.npath.toPortablePath(M7s.default.tmpdir()),t=$se.xfs.realpathSync(e);return process.once("exit",()=>{$se.xfs.rmtempSync()}),Hjt={tmpdir:e,realTmpdir:t}}$se.xfs=Object.assign(new H7s.NodeFS,{detachTemp(e){rX.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=aEn();for(;;){let n=oEn("xfs-");try{this.mkdirSync(jOe.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=jOe.ppath.join(r,n);if(rX.add(a),typeof e>"u")return a;try{return e(a)}finally{if(rX.has(a)){rX.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=aEn();for(;;){let n=oEn("xfs-");try{await this.mkdirPromise(jOe.ppath.join(t,n))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=jOe.ppath.join(r,n);if(rX.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(rX.has(a)){rX.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(rX.values()).map(async e=>{try{await $se.xfs.removePromise(e,{maxRetries:0}),rX.delete(e)}catch{}}))},rmtempSync(){for(let e of rX)try{$se.xfs.removeSync(e),rX.delete(e)}catch{}}})});var ro=H(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.xfs=md.extendFs=md.patchFs=md.VirtualFS=md.ProxiedFS=md.PosixFS=md.NodeFS=md.NoFS=md.MountFS=md.LazyFS=md.JailFS=md.CwdFS=md.BasePortableFakeFS=md.FakeFS=md.AliasFS=md.ppath=md.npath=md.Filename=md.PortablePath=md.normalizeLineEndings=md.unwatchAllFiles=md.unwatchFile=md.watchFile=md.CustomDir=md.opendir=md.setupCopyIndex=md.statUtils=md.errors=md.constants=void 0;var Yjt=(Pa(),vi(Va)),Y7s=Yjt.__importStar(act());md.constants=Y7s;var Q7s=Yjt.__importStar(cct());md.errors=Q7s;var X7s=Yjt.__importStar(_jt());md.statUtils=X7s;var J7s=Ejt();Object.defineProperty(md,"setupCopyIndex",{enumerable:!0,get:function(){return J7s.setupCopyIndex}});var lEn=Fbn();Object.defineProperty(md,"opendir",{enumerable:!0,get:function(){return lEn.opendir}});Object.defineProperty(md,"CustomDir",{enumerable:!0,get:function(){return lEn.CustomDir}});var Qjt=Bjt();Object.defineProperty(md,"watchFile",{enumerable:!0,get:function(){return Qjt.watchFile}});Object.defineProperty(md,"unwatchFile",{enumerable:!0,get:function(){return Qjt.unwatchFile}});Object.defineProperty(md,"unwatchAllFiles",{enumerable:!0,get:function(){return Qjt.unwatchAllFiles}});var U7s=hfe();Object.defineProperty(md,"normalizeLineEndings",{enumerable:!0,get:function(){return U7s.normalizeLineEndings}});var uEn=L9();Object.defineProperty(md,"PortablePath",{enumerable:!0,get:function(){return uEn.PortablePath}});Object.defineProperty(md,"Filename",{enumerable:!0,get:function(){return uEn.Filename}});var gEn=L9();Object.defineProperty(md,"npath",{enumerable:!0,get:function(){return gEn.npath}});Object.defineProperty(md,"ppath",{enumerable:!0,get:function(){return gEn.ppath}});var K7s=Pbn();Object.defineProperty(md,"AliasFS",{enumerable:!0,get:function(){return K7s.AliasFS}});var AEn=hfe();Object.defineProperty(md,"FakeFS",{enumerable:!0,get:function(){return AEn.FakeFS}});Object.defineProperty(md,"BasePortableFakeFS",{enumerable:!0,get:function(){return AEn.BasePortableFakeFS}});var j7s=Obn();Object.defineProperty(md,"CwdFS",{enumerable:!0,get:function(){return j7s.CwdFS}});var z7s=Hbn();Object.defineProperty(md,"JailFS",{enumerable:!0,get:function(){return z7s.JailFS}});var q7s=Ybn();Object.defineProperty(md,"LazyFS",{enumerable:!0,get:function(){return q7s.LazyFS}});var $7s=Qbn();Object.defineProperty(md,"MountFS",{enumerable:!0,get:function(){return $7s.MountFS}});var ezs=Xbn();Object.defineProperty(md,"NoFS",{enumerable:!0,get:function(){return ezs.NoFS}});var tzs=mfe();Object.defineProperty(md,"NodeFS",{enumerable:!0,get:function(){return tzs.NodeFS}});var rzs=Jbn();Object.defineProperty(md,"PosixFS",{enumerable:!0,get:function(){return rzs.PosixFS}});var nzs=Yq();Object.defineProperty(md,"ProxiedFS",{enumerable:!0,get:function(){return nzs.ProxiedFS}});var izs=Ubn();Object.defineProperty(md,"VirtualFS",{enumerable:!0,get:function(){return izs.VirtualFS}});var dEn=sEn();Object.defineProperty(md,"patchFs",{enumerable:!0,get:function(){return dEn.patchFs}});Object.defineProperty(md,"extendFs",{enumerable:!0,get:function(){return dEn.extendFs}});var szs=cEn();Object.defineProperty(md,"xfs",{enumerable:!0,get:function(){return szs.xfs}})});var mEn=H((T3l,hEn)=>{hEn.exports=IEn;IEn.sync=azs;var pEn=wt("fs");function ozs(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{bEn.exports=_En;_En.sync=czs;var CEn=wt("fs");function _En(e,t,r){CEn.stat(e,function(n,a){r(n,n?!1:yEn(a,t))})}function czs(e,t){return yEn(CEn.statSync(e),t)}function yEn(e,t){return e.isFile()&&lzs(e,t)}function lzs(e,t){var r=e.mode,n=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),l=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),A=parseInt("100",8),f=parseInt("010",8),I=parseInt("001",8),C=A|f,b=r&I||r&f&&a===l||r&A&&n===o||r&C&&o===0;return b}});var vEn=H((D3l,SEn)=>{var N3l=wt("fs"),Fct;process.platform==="win32"||global.TESTING_WINDOWS?Fct=mEn():Fct=EEn();SEn.exports=Xjt;Xjt.sync=uzs;function Xjt(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,a){Xjt(e,t||{},function(o,l){o?a(o):n(l)})})}Fct(e,t||{},function(n,a){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,a=!1),r(n,a)})}function uzs(e,t){try{return Fct.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var Jjt=H((k3l,DEn)=>{var mSe=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",BEn=wt("path"),gzs=mSe?";":":",wEn=vEn(),TEn=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),REn=(e,t)=>{let r=t.colon||gzs,n=e.match(/\//)||mSe&&e.match(/\\/)?[""]:[...mSe?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=mSe?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=mSe?a.split(r):[""];return mSe&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:n,pathExt:o,pathExtExe:a}},NEn=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:a,pathExtExe:o}=REn(e,t),l=[],A=I=>new Promise((C,b)=>{if(I===n.length)return t.all&&l.length?C(l):b(TEn(e));let E=n[I],N=/^".*"$/.test(E)?E.slice(1,-1):E,B=BEn.join(N,e),F=!N&&/^\.[\\\/]/.test(e)?e.slice(0,2)+B:B;C(f(F,I,0))}),f=(I,C,b)=>new Promise((E,N)=>{if(b===a.length)return E(A(C+1));let B=a[b];wEn(I+B,{pathExt:o},(F,Q)=>{if(!F&&Q)if(t.all)l.push(I+B);else return E(I+B);return E(f(I,C,b+1))})});return r?A(0).then(I=>r(null,I),r):A(0)},Azs=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:a}=REn(e,t),o=[];for(let l=0;l{"use strict";var kEn=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Ujt.exports=kEn;Ujt.exports.default=kEn});var ZEn=H((G3l,FEn)=>{"use strict";var xEn=wt("path"),dzs=Jjt(),pzs=Kjt();function GEn(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=dzs.sync(e.command,{path:r[pzs({env:r})],pathExt:t?xEn.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=xEn.resolve(a?e.options.cwd:"",l)),l}function fzs(e){return GEn(e)||GEn(e,!0)}FEn.exports=fzs});var LEn=H((F3l,zjt)=>{"use strict";var jjt=/([()\][%!^"`<>&|;, *?])/g;function Izs(e){return e=e.replace(jjt,"^$1"),e}function hzs(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(jjt,"^$1"),t&&(e=e.replace(jjt,"^$1")),e}zjt.exports.command=Izs;zjt.exports.argument=hzs});var PEn=H((Z3l,VEn)=>{"use strict";VEn.exports=/^#!(.*)/});var qjt=H((L3l,WEn)=>{"use strict";var mzs=PEn();WEn.exports=(e="")=>{let t=e.match(mzs);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?n:n?`${a} ${n}`:a}});var MEn=H((V3l,OEn)=>{"use strict";var $jt=wt("fs"),Czs=qjt();function _zs(e){let r=Buffer.alloc(150),n;try{n=$jt.openSync(e,"r"),$jt.readSync(n,r,0,150,0),$jt.closeSync(n)}catch{}return Czs(r.toString())}OEn.exports=_zs});var XEn=H((P3l,QEn)=>{"use strict";var yzs=wt("path"),HEn=ZEn(),YEn=LEn(),bzs=MEn(),Ezs=process.platform==="win32",Szs=/\.(?:com|exe)$/i,vzs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Bzs(e){e.file=HEn(e);let t=e.file&&bzs(e.file);return t?(e.args.unshift(e.file),e.command=t,HEn(e)):e.file}function wzs(e){if(!Ezs)return e;let t=Bzs(e),r=!Szs.test(t);if(e.options.forceShell||r){let n=vzs.test(t);e.command=yzs.normalize(e.command),e.command=YEn.command(e.command),e.args=e.args.map(o=>YEn.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function Tzs(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:wzs(n)}QEn.exports=Tzs});var KEn=H((W3l,UEn)=>{"use strict";var e6t=process.platform==="win32";function t6t(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function Rzs(e,t){if(!e6t)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=JEn(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function JEn(e,t){return e6t&&e===1&&!t.file?t6t(t.original,"spawn"):null}function Nzs(e,t){return e6t&&e===1&&!t.file?t6t(t.original,"spawnSync"):null}UEn.exports={hookChildProcess:Rzs,verifyENOENT:JEn,verifyENOENTSync:Nzs,notFoundError:t6t}});var Zct=H((O3l,CSe)=>{"use strict";var jEn=wt("child_process"),r6t=XEn(),n6t=KEn();function zEn(e,t,r){let n=r6t(e,t,r),a=jEn.spawn(n.command,n.args,n.options);return n6t.hookChildProcess(a,n),a}function Dzs(e,t,r){let n=r6t(e,t,r),a=jEn.spawnSync(n.command,n.args,n.options);return a.error=a.error||n6t.verifyENOENTSync(a.status,n),a}CSe.exports=zEn;CSe.exports.spawn=zEn;CSe.exports.sync=Dzs;CSe.exports._parse=r6t;CSe.exports._enoent=n6t});var $En=H((M3l,qEn)=>{"use strict";function kzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Cfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Cfe)}kzs(Cfe,Error);Cfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b>",_n=ca(">>",!1),ke=">&",jt=ca(">&",!1),Fn=">",Nn=ca(">",!1),Hi="<<<",po=ca("<<<",!1),Vr="<&",xi=ca("<&",!1),io="<",ga=ca("<",!1),Ya=function(ut){return{type:"argument",segments:[].concat(...ut)}},Gc=function(ut){return ut},cl="$'",Sc=ca("$'",!1),Hr="'",Wr=ca("'",!1),Ft=function(ut){return[{type:"text",text:ut}]},zr='""',Rn=ca('""',!1),Or=function(){return{type:"text",text:""}},Qi='"',ps=ca('"',!1),yo=function(ut){return ut},bo=function(ut){return{type:"arithmetic",arithmetic:ut,quoted:!0}},Qa=function(ut){return{type:"shell",shell:ut,quoted:!0}},gc=function(ut){return{type:"variable",...ut,quoted:!0}},Cg=function(ut){return{type:"text",text:ut}},Nc=function(ut){return{type:"arithmetic",arithmetic:ut,quoted:!1}},iA=function(ut){return{type:"shell",shell:ut,quoted:!1}},ma=function(ut){return{type:"variable",...ut,quoted:!1}},vu=function(ut){return{type:"glob",pattern:ut}},li=/^[^']/,Ei=Bl(["'"],!0,!1),Ps=function(ut){return ut.join("")},Xa=/^[^$"]/,ac=Bl(["$",'"'],!0,!1),Yl=`\\ -`,Wc=ca(`\\ -`,!1),Sg=function(){return""},Ul="\\",Xu=ca("\\",!1),Da=/^[\\$"`]/,pu=Bl(["\\","$",'"',"`"],!1,!1),_g=function(ut){return ut},mI="\\a",Qh=ca("\\a",!1),Ri=function(){return"a"},Do="\\b",Wt=ca("\\b",!1),Hu=function(){return"\b"},Ru=/^[Ee]/,Vs=Bl(["E","e"],!1,!1),Ju=function(){return"\x1B"},Yn="\\f",Ko=ca("\\f",!1),Eg=function(){return"\f"},OA="\\n",GA=ca("\\n",!1),$i=function(){return` -`},dl="\\r",Uf=ca("\\r",!1),Kd=function(){return"\r"},oA="\\t",oo=ca("\\t",!1),Ki=function(){return" "},cc="\\v",Xs=ca("\\v",!1),ws=function(){return"\v"},Gs=/^[\\'"?]/,Ma=Bl(["\\","'",'"',"?"],!1,!1),Dc=function(ut){return String.fromCharCode(parseInt(ut,16))},As="\\x",Tf=ca("\\x",!1),cm="\\u",Fl=ca("\\u",!1),rc="\\U",sd=ca("\\U",!1),Om=function(ut){return String.fromCodePoint(parseInt(ut,16))},il=/^[0-7]/,FA=Bl([["0","7"]],!1,!1),ZA=/^[0-9a-fA-f]/,El=Bl([["0","9"],["a","f"],["A","f"]],!1,!1),yg=$g(),Mp="{}",MA=ca("{}",!1),Er=function(){return"{}"},Zt="-",yn=ca("-",!1),ls="+",oa=ca("+",!1),Fs=".",Wa=ca(".",!1),Ca=function(ut,ar,Jr){return{type:"number",value:(ut==="-"?-1:1)*parseFloat(ar.join("")+"."+Jr.join(""))}},ld=function(ut,ar){return{type:"number",value:(ut==="-"?-1:1)*parseInt(ar.join(""))}},Rp=function(ut){return{type:"variable",...ut}},np=function(ut){return{type:"variable",name:ut}},HA=function(ut){return ut},df="*",Zs=ca("*",!1),so="/",Ea=ca("/",!1),Ml=function(ut,ar,Jr){return{type:ar==="*"?"multiplication":"division",right:Jr}},Dr=function(ut,ar){return ar.reduce((Jr,Gn)=>({left:Jr,...Gn}),ut)},Wn=function(ut,ar,Jr){return{type:ar==="+"?"addition":"subtraction",right:Jr}},di="$((",aa=ca("$((",!1),Bo="))",us=ca("))",!1),Ql=function(ut){return ut},LA="$(",pf=ca("$(",!1),ef=function(ut){return ut},ip="${",_d=ca("${",!1),j1=":-",pw=ca(":-",!1),YA=function(ut,ar){return{name:ut,defaultValue:ar}},Ac=":-}",Nm=ca(":-}",!1),HS=function(ut){return{name:ut,defaultValue:[]}},jd=":+",dh=ca(":+",!1),Hp=function(ut,ar){return{name:ut,alternativeValue:ar}},uC=":+}",nE=ca(":+}",!1),J_=function(ut){return{name:ut,alternativeValue:[]}},q0=function(ut){return{name:ut}},XE="$",TC=ca("$",!1),t_=function(ut){return t.isGlobPattern(ut)},cp=function(ut){return ut},Mm=/^[a-zA-Z0-9_]/,fb=Bl([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),pe=function(){return $n()},lm=/^[$@*?#a-zA-Z0-9_\-]/,Kf=Bl(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),CI=/^[()}<>$|&; \t"']/,_I=Bl(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),H2=/^[<>&; \t"']/,iE=Bl(["<",">","&",";"," "," ",'"',"'"],!1,!1),se=/^[ \t]/,O=Bl([" "," "],!1,!1),K=0,we=0,gt=[{line:1,column:1}],sr=0,Yr=[],Lr=0,fi;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function $n(){return e.substring(we,K)}function ra(){return Ib(we,K)}function kc(ut,ar){throw ar=ar!==void 0?ar:Ib(we,K),z1([lI(ut)],e.substring(we,K),ar)}function Nl(ut,ar){throw ar=ar!==void 0?ar:Ib(we,K),wd(ut,ar)}function ca(ut,ar){return{type:"literal",text:ut,ignoreCase:ar}}function Bl(ut,ar,Jr){return{type:"class",parts:ut,inverted:ar,ignoreCase:Jr}}function $g(){return{type:"any"}}function SA(){return{type:"end"}}function lI(ut){return{type:"other",description:ut}}function lp(ut){var ar=gt[ut],Jr;if(ar)return ar;for(Jr=ut-1;!gt[Jr];)Jr--;for(ar=gt[Jr],ar={line:ar.line,column:ar.column};Jrsr&&(sr=K,Yr=[]),Yr.push(ut))}function wd(ut,ar){return new Cfe(ut,null,null,ar)}function z1(ut,ar,Jr){return new Cfe(Cfe.buildMessage(ut,ar),ut,ar,Jr)}function T_(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=RC(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=o(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function RC(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=Fg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=YS(),Gn!==r?(Ts=Hm(),Ts===r&&(Ts=null),Ts!==r?(we=ut,ar=l(ar,Gn,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;if(ut===r)if(ut=K,ar=Fg(),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();Jr!==r?(Gn=YS(),Gn===r&&(Gn=null),Gn!==r?(we=ut,ar=A(ar,Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;return ut}function Hm(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=RC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=f(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;return ut}function YS(){var ut;return e.charCodeAt(K)===59?(ut=I,K++):(ut=r,Lr===0&&Na(C)),ut===r&&(e.charCodeAt(K)===38?(ut=b,K++):(ut=r,Lr===0&&Na(E))),ut}function Fg(){var ut,ar,Jr;return ut=K,ar=NC(),ar!==r?(Jr=hb(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=N(ar,Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function hb(){var ut,ar,Jr,Gn,Ts,Qo,vg;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=gC(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=Fg(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=B(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;return ut}function gC(){var ut;return e.substr(K,2)===F?(ut=F,K+=2):(ut=r,Lr===0&&Na(Q)),ut===r&&(e.substr(K,2)===X?(ut=X,K+=2):(ut=r,Lr===0&&Na(ae))),ut}function NC(){var ut,ar,Jr;return ut=K,ar=kC(),ar!==r?(Jr=Y2(),Jr===r&&(Jr=null),Jr!==r?(we=ut,ar=ne(ar,Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function Y2(){var ut,ar,Jr,Gn,Ts,Qo,vg;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(Jr=U_(),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=NC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=ce(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;return ut}function U_(){var ut;return e.substr(K,2)===fe?(ut=fe,K+=2):(ut=r,Lr===0&&Na(ue)),ut===r&&(e.charCodeAt(K)===124?(ut=de,K++):(ut=r,Lr===0&&Na(be))),ut}function DC(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,ar=By(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r)if(Gn=Pf(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(we=ut,ar=k(ar,Gn),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;else K=ut,ut=r;if(ut===r)if(ut=K,ar=By(),ar!==r)if(e.charCodeAt(K)===61?(Jr=Se,K++):(Jr=r,Lr===0&&Na(De)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=et(ar),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r;return ut}function kC(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng,Rf,uI,Th;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===40?(Jr=ct,K++):(Jr=r,Lr===0&&Na(Me)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=RC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();if(Qo!==r)if(e.charCodeAt(K)===41?(vg=je,K++):(vg=r,Lr===0&&Na(St)),vg!==r){for(Ng=[],Rf=xc();Rf!==r;)Ng.push(Rf),Rf=xc();if(Ng!==r){for(Rf=[],uI=vA();uI!==r;)Rf.push(uI),uI=vA();if(Rf!==r){for(uI=[],Th=xc();Th!==r;)uI.push(Th),Th=xc();uI!==r?(we=ut,ar=At(Ts,Rf),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r)if(e.charCodeAt(K)===123?(Jr=Yt,K++):(Jr=r,Lr===0&&Na(Tr)),Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r)if(Ts=RC(),Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();if(Qo!==r)if(e.charCodeAt(K)===125?(vg=Nr,K++):(vg=r,Lr===0&&Na(er)),vg!==r){for(Ng=[],Rf=xc();Rf!==r;)Ng.push(Rf),Rf=xc();if(Ng!==r){for(Rf=[],uI=vA();uI!==r;)Rf.push(uI),uI=vA();if(Rf!==r){for(uI=[],Th=xc();Th!==r;)uI.push(Th),Th=xc();uI!==r?(we=ut,ar=vt(Ts,Rf),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){for(Jr=[],Gn=DC();Gn!==r;)Jr.push(Gn),Gn=DC();if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();if(Gn!==r){if(Ts=[],Qo=ph(),Qo!==r)for(;Qo!==r;)Ts.push(Qo),Qo=ph();else Ts=r;if(Ts!==r){for(Qo=[],vg=xc();vg!==r;)Qo.push(vg),vg=xc();Qo!==r?(we=ut,ar=xt(Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r}else K=ut,ut=r;if(ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=DC(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=DC();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=Zr(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r}}}return ut}function qI(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r){if(Jr=[],Gn=Mc(),Gn!==r)for(;Gn!==r;)Jr.push(Gn),Gn=Mc();else Jr=r;if(Jr!==r){for(Gn=[],Ts=xc();Ts!==r;)Gn.push(Ts),Ts=xc();Gn!==r?(we=ut,ar=qt(Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r}else K=ut,ut=r;return ut}function ph(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();if(ar!==r?(Jr=vA(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r){for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();ar!==r?(Jr=Mc(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}return ut}function vA(){var ut,ar,Jr,Gn,Ts;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(lr.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(cr)),Jr===r&&(Jr=null),Jr!==r?(Gn=Td(),Gn!==r?(Ts=Mc(),Ts!==r?(we=ut,ar=Ar(Jr,Gn,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function Td(){var ut;return e.substr(K,2)===qr?(ut=qr,K+=2):(ut=r,Lr===0&&Na(_n)),ut===r&&(e.substr(K,2)===ke?(ut=ke,K+=2):(ut=r,Lr===0&&Na(jt)),ut===r&&(e.charCodeAt(K)===62?(ut=Fn,K++):(ut=r,Lr===0&&Na(Nn)),ut===r&&(e.substr(K,3)===Hi?(ut=Hi,K+=3):(ut=r,Lr===0&&Na(po)),ut===r&&(e.substr(K,2)===Vr?(ut=Vr,K+=2):(ut=r,Lr===0&&Na(xi)),ut===r&&(e.charCodeAt(K)===60?(ut=io,K++):(ut=r,Lr===0&&Na(ga))))))),ut}function Mc(){var ut,ar,Jr;for(ut=K,ar=[],Jr=xc();Jr!==r;)ar.push(Jr),Jr=xc();return ar!==r?(Jr=Pf(),Jr!==r?(we=ut,ar=Xt(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function Pf(){var ut,ar,Jr;if(ut=K,ar=[],Jr=sE(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=sE();else ar=r;return ar!==r&&(we=ut,ar=Ya(ar)),ut=ar,ut}function sE(){var ut,ar;return ut=K,ar=eA(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=QS(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=XS(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar,ut===r&&(ut=K,ar=um(),ar!==r&&(we=ut,ar=Gc(ar)),ut=ar))),ut}function eA(){var ut,ar,Jr,Gn;return ut=K,e.substr(K,2)===cl?(ar=cl,K+=2):(ar=r,Lr===0&&Na(Sc)),ar!==r?(Jr=Kl(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Wr)),Gn!==r?(we=ut,ar=Ft(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function QS(){var ut,ar,Jr,Gn;return ut=K,e.charCodeAt(K)===39?(ar=Hr,K++):(ar=r,Lr===0&&Na(Wr)),ar!==r?(Jr=na(),Jr!==r?(e.charCodeAt(K)===39?(Gn=Hr,K++):(Gn=r,Lr===0&&Na(Wr)),Gn!==r?(we=ut,ar=Ft(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function XS(){var ut,ar,Jr,Gn;if(ut=K,e.substr(K,2)===zr?(ar=zr,K+=2):(ar=r,Lr===0&&Na(Rn)),ar!==r&&(we=ut,ar=Or()),ut=ar,ut===r)if(ut=K,e.charCodeAt(K)===34?(ar=Qi,K++):(ar=r,Lr===0&&Na(ps)),ar!==r){for(Jr=[],Gn=gm();Gn!==r;)Jr.push(Gn),Gn=gm();Jr!==r?(e.charCodeAt(K)===34?(Gn=Qi,K++):(Gn=r,Lr===0&&Na(ps)),Gn!==r?(we=ut,ar=yo(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;return ut}function um(){var ut,ar,Jr;if(ut=K,ar=[],Jr=cs(),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=cs();else ar=r;return ar!==r&&(we=ut,ar=yo(ar)),ut=ar,ut}function gm(){var ut,ar;return ut=K,ar=od(),ar!==r&&(we=ut,ar=bo(ar)),ut=ar,ut===r&&(ut=K,ar=UE(),ar!==r&&(we=ut,ar=Qa(ar)),ut=ar,ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=gc(ar)),ut=ar,ut===r&&(ut=K,ar=ko(),ar!==r&&(we=ut,ar=Cg(ar)),ut=ar))),ut}function cs(){var ut,ar;return ut=K,ar=od(),ar!==r&&(we=ut,ar=Nc(ar)),ut=ar,ut===r&&(ut=K,ar=UE(),ar!==r&&(we=ut,ar=iA(ar)),ut=ar,ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=ma(ar)),ut=ar,ut===r&&(ut=K,ar=Yp(),ar!==r&&(we=ut,ar=vu(ar)),ut=ar,ut===r&&(ut=K,ar=JE(),ar!==r&&(we=ut,ar=Cg(ar)),ut=ar)))),ut}function na(){var ut,ar,Jr;for(ut=K,ar=[],li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));Jr!==r;)ar.push(Jr),li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei));return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function ko(){var ut,ar,Jr;if(ut=K,ar=[],Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=ki(),Jr===r&&(Xa.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(ac)));else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function ki(){var ut,ar,Jr;return ut=K,e.substr(K,2)===Yl?(ar=Yl,K+=2):(ar=r,Lr===0&&Na(Wc)),ar!==r&&(we=ut,ar=Sg()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Da.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(pu)),Jr!==r?(we=ut,ar=_g(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)),ut}function Kl(){var ut,ar,Jr;for(ut=K,ar=[],Jr=fd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));Jr!==r;)ar.push(Jr),Jr=fd(),Jr===r&&(li.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ei)));return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function fd(){var ut,ar,Jr;return ut=K,e.substr(K,2)===mI?(ar=mI,K+=2):(ar=r,Lr===0&&Na(Qh)),ar!==r&&(we=ut,ar=Ri()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===Do?(ar=Do,K+=2):(ar=r,Lr===0&&Na(Wt)),ar!==r&&(we=ut,ar=Hu()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Ru.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Vs)),Jr!==r?(we=ut,ar=Ju(),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===Yn?(ar=Yn,K+=2):(ar=r,Lr===0&&Na(Ko)),ar!==r&&(we=ut,ar=Eg()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===OA?(ar=OA,K+=2):(ar=r,Lr===0&&Na(GA)),ar!==r&&(we=ut,ar=$i()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===dl?(ar=dl,K+=2):(ar=r,Lr===0&&Na(Uf)),ar!==r&&(we=ut,ar=Kd()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===oA?(ar=oA,K+=2):(ar=r,Lr===0&&Na(oo)),ar!==r&&(we=ut,ar=Ki()),ut=ar,ut===r&&(ut=K,e.substr(K,2)===cc?(ar=cc,K+=2):(ar=r,Lr===0&&Na(Xs)),ar!==r&&(we=ut,ar=ws()),ut=ar,ut===r&&(ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Gs.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Ma)),Jr!==r?(we=ut,ar=_g(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=jf()))))))))),ut}function jf(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng,Rf,uI,Th,oE;return ut=K,e.charCodeAt(K)===92?(ar=Ul,K++):(ar=r,Lr===0&&Na(Xu)),ar!==r?(Jr=Ld(),Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===As?(ar=As,K+=2):(ar=r,Lr===0&&Na(Tf)),ar!==r?(Jr=K,Gn=K,Ts=Ld(),Ts!==r?(Qo=AC(),Qo!==r?(Ts=[Ts,Qo],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn===r&&(Gn=Ld()),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===cm?(ar=cm,K+=2):(ar=r,Lr===0&&Na(Fl)),ar!==r?(Jr=K,Gn=K,Ts=AC(),Ts!==r?(Qo=AC(),Qo!==r?(vg=AC(),vg!==r?(Ng=AC(),Ng!==r?(Ts=[Ts,Qo,vg,Ng],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Dc(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===rc?(ar=rc,K+=2):(ar=r,Lr===0&&Na(sd)),ar!==r?(Jr=K,Gn=K,Ts=AC(),Ts!==r?(Qo=AC(),Qo!==r?(vg=AC(),vg!==r?(Ng=AC(),Ng!==r?(Rf=AC(),Rf!==r?(uI=AC(),uI!==r?(Th=AC(),Th!==r?(oE=AC(),oE!==r?(Ts=[Ts,Qo,vg,Ng,Rf,uI,Th,oE],Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r)):(K=Gn,Gn=r),Gn!==r?Jr=e.substring(Jr,K):Jr=Gn,Jr!==r?(we=ut,ar=Om(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)))),ut}function Ld(){var ut;return il.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(FA)),ut}function AC(){var ut;return ZA.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(El)),ut}function JE(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=[],Jr=K,e.charCodeAt(K)===92?(Gn=Ul,K++):(Gn=r,Lr===0&&Na(Xu)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Mp?(Gn=Mp,K+=2):(Gn=r,Lr===0&&Na(MA)),Gn!==r&&(we=Jr,Gn=Er()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=fw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r))),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,e.charCodeAt(K)===92?(Gn=Ul,K++):(Gn=r,Lr===0&&Na(Xu)),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr===r&&(Jr=K,e.substr(K,2)===Mp?(Gn=Mp,K+=2):(Gn=r,Lr===0&&Na(MA)),Gn!==r&&(we=Jr,Gn=Er()),Jr=Gn,Jr===r&&(Jr=K,Gn=K,Lr++,Ts=fw(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r)));else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function Ym(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(yn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;if(Jr!==r)if(e.charCodeAt(K)===46?(Gn=Fs,K++):(Gn=r,Lr===0&&Na(Wa)),Gn!==r){if(Ts=[],lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr)),Qo!==r)for(;Qo!==r;)Ts.push(Qo),lr.test(e.charAt(K))?(Qo=e.charAt(K),K++):(Qo=r,Lr===0&&Na(cr));else Ts=r;Ts!==r?(we=ut,ar=Ca(ar,Jr,Ts),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;if(ut===r){if(ut=K,e.charCodeAt(K)===45?(ar=Zt,K++):(ar=r,Lr===0&&Na(yn)),ar===r&&(e.charCodeAt(K)===43?(ar=ls,K++):(ar=r,Lr===0&&Na(oa))),ar===r&&(ar=null),ar!==r){if(Jr=[],lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr)),Gn!==r)for(;Gn!==r;)Jr.push(Gn),lr.test(e.charAt(K))?(Gn=e.charAt(K),K++):(Gn=r,Lr===0&&Na(cr));else Jr=r;Jr!==r?(we=ut,ar=ld(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;if(ut===r&&(ut=K,ar=KE(),ar!==r&&(we=ut,ar=Rp(ar)),ut=ar,ut===r&&(ut=K,ar=$0(),ar!==r&&(we=ut,ar=np(ar)),ut=ar,ut===r)))if(ut=K,e.charCodeAt(K)===40?(ar=ct,K++):(ar=r,Lr===0&&Na(Me)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=K_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.charCodeAt(K)===41?(Qo=je,K++):(Qo=r,Lr===0&&Na(St)),Qo!==r?(we=ut,ar=HA(Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r}return ut}function vy(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng;if(ut=K,ar=Ym(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=df,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=so,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=Ym(),Ng!==r?(we=Gn,Ts=Ml(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===42?(Qo=df,K++):(Qo=r,Lr===0&&Na(Zs)),Qo===r&&(e.charCodeAt(K)===47?(Qo=so,K++):(Qo=r,Lr===0&&Na(Ea))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=Ym(),Ng!==r?(we=Gn,Ts=Ml(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=ut,ar=Dr(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;return ut}function K_(){var ut,ar,Jr,Gn,Ts,Qo,vg,Ng;if(ut=K,ar=vy(),ar!==r){for(Jr=[],Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(yn))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=vy(),Ng!==r?(we=Gn,Ts=Wn(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r;for(;Gn!==r;){for(Jr.push(Gn),Gn=K,Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();if(Ts!==r)if(e.charCodeAt(K)===43?(Qo=ls,K++):(Qo=r,Lr===0&&Na(oa)),Qo===r&&(e.charCodeAt(K)===45?(Qo=Zt,K++):(Qo=r,Lr===0&&Na(yn))),Qo!==r){for(vg=[],Ng=xc();Ng!==r;)vg.push(Ng),Ng=xc();vg!==r?(Ng=vy(),Ng!==r?(we=Gn,Ts=Wn(ar,Qo,Ng),Gn=Ts):(K=Gn,Gn=r)):(K=Gn,Gn=r)}else K=Gn,Gn=r;else K=Gn,Gn=r}Jr!==r?(we=ut,ar=Dr(ar,Jr),ut=ar):(K=ut,ut=r)}else K=ut,ut=r;return ut}function od(){var ut,ar,Jr,Gn,Ts,Qo;if(ut=K,e.substr(K,3)===di?(ar=di,K+=3):(ar=r,Lr===0&&Na(aa)),ar!==r){for(Jr=[],Gn=xc();Gn!==r;)Jr.push(Gn),Gn=xc();if(Jr!==r)if(Gn=K_(),Gn!==r){for(Ts=[],Qo=xc();Qo!==r;)Ts.push(Qo),Qo=xc();Ts!==r?(e.substr(K,2)===Bo?(Qo=Bo,K+=2):(Qo=r,Lr===0&&Na(us)),Qo!==r?(we=ut,ar=Ql(Gn),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)}else K=ut,ut=r;else K=ut,ut=r}else K=ut,ut=r;return ut}function UE(){var ut,ar,Jr,Gn;return ut=K,e.substr(K,2)===LA?(ar=LA,K+=2):(ar=r,Lr===0&&Na(pf)),ar!==r?(Jr=RC(),Jr!==r?(e.charCodeAt(K)===41?(Gn=je,K++):(Gn=r,Lr===0&&Na(St)),Gn!==r?(we=ut,ar=ef(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut}function KE(){var ut,ar,Jr,Gn,Ts,Qo;return ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,2)===j1?(Gn=j1,K+=2):(Gn=r,Lr===0&&Na(pw)),Gn!==r?(Ts=qI(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Nr,K++):(Qo=r,Lr===0&&Na(er)),Qo!==r?(we=ut,ar=YA(Jr,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,3)===Ac?(Gn=Ac,K+=3):(Gn=r,Lr===0&&Na(Nm)),Gn!==r?(we=ut,ar=HS(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,2)===jd?(Gn=jd,K+=2):(Gn=r,Lr===0&&Na(dh)),Gn!==r?(Ts=qI(),Ts!==r?(e.charCodeAt(K)===125?(Qo=Nr,K++):(Qo=r,Lr===0&&Na(er)),Qo!==r?(we=ut,ar=Hp(Jr,Ts),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.substr(K,3)===uC?(Gn=uC,K+=3):(Gn=r,Lr===0&&Na(nE)),Gn!==r?(we=ut,ar=J_(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.substr(K,2)===ip?(ar=ip,K+=2):(ar=r,Lr===0&&Na(_d)),ar!==r?(Jr=$0(),Jr!==r?(e.charCodeAt(K)===125?(Gn=Nr,K++):(Gn=r,Lr===0&&Na(er)),Gn!==r?(we=ut,ar=q0(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)):(K=ut,ut=r),ut===r&&(ut=K,e.charCodeAt(K)===36?(ar=XE,K++):(ar=r,Lr===0&&Na(TC)),ar!==r?(Jr=$0(),Jr!==r?(we=ut,ar=q0(Jr),ut=ar):(K=ut,ut=r)):(K=ut,ut=r)))))),ut}function Yp(){var ut,ar,Jr;return ut=K,ar=JS(),ar!==r?(we=K,Jr=t_(ar),Jr?Jr=void 0:Jr=r,Jr!==r?(we=ut,ar=cp(ar),ut=ar):(K=ut,ut=r)):(K=ut,ut=r),ut}function JS(){var ut,ar,Jr,Gn,Ts;if(ut=K,ar=[],Jr=K,Gn=K,Lr++,Ts=Q2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r),Jr!==r)for(;Jr!==r;)ar.push(Jr),Jr=K,Gn=K,Lr++,Ts=Q2(),Lr--,Ts===r?Gn=void 0:(K=Gn,Gn=r),Gn!==r?(e.length>K?(Ts=e.charAt(K),K++):(Ts=r,Lr===0&&Na(yg)),Ts!==r?(we=Jr,Gn=_g(Ts),Jr=Gn):(K=Jr,Jr=r)):(K=Jr,Jr=r);else ar=r;return ar!==r&&(we=ut,ar=Ps(ar)),ut=ar,ut}function By(){var ut,ar,Jr;if(ut=K,ar=[],Mm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fb)),Jr!==r)for(;Jr!==r;)ar.push(Jr),Mm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(fb));else ar=r;return ar!==r&&(we=ut,ar=pe()),ut=ar,ut}function $0(){var ut,ar,Jr;if(ut=K,ar=[],lm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Kf)),Jr!==r)for(;Jr!==r;)ar.push(Jr),lm.test(e.charAt(K))?(Jr=e.charAt(K),K++):(Jr=r,Lr===0&&Na(Kf));else ar=r;return ar!==r&&(we=ut,ar=pe()),ut=ar,ut}function fw(){var ut;return CI.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(_I)),ut}function Q2(){var ut;return H2.test(e.charAt(K))?(ut=e.charAt(K),K++):(ut=r,Lr===0&&Na(iE)),ut}function xc(){var ut,ar;if(ut=[],se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(O)),ar!==r)for(;ar!==r;)ut.push(ar),se.test(e.charAt(K))?(ar=e.charAt(K),K++):(ar=r,Lr===0&&Na(O));else ut=r;return ut}if(fi=a(),fi!==r&&K===e.length)return fi;throw fi!==r&&K{"use strict";Object.defineProperty(XN,"__esModule",{value:!0});XN.parseShell=Fzs;XN.stringifyShellLine=_fe;XN.stringifyShell=_fe;XN.stringifyCommandLine=s6t;XN.stringifyCommandLineThen=e1n;XN.stringifyCommandChain=o6t;XN.stringifyCommandChainThen=t1n;XN.stringifyCommand=r1n;XN.stringifyEnvSegment=i6t;XN.stringifyArgument=n1n;XN.stringifyRedirectArgument=Lct;XN.stringifyValueArgument=_Se;XN.stringifyArgumentSegment=o1n;XN.stringifyArithmeticExpression=a6t;XN.stringifyShellLine=_fe;XN.stringifyShell=_fe;var Gzs=$En();function Fzs(e,t={isGlobPattern:()=>!1}){try{return(0,Gzs.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function _fe(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:n},a)=>`${s6t(r)}${n===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function s6t(e){return`${o6t(e.chain)}${e.then?` ${e1n(e.then)}`:""}`}function e1n(e){return`${e.type} ${s6t(e.line)}`}function o6t(e){return`${r1n(e)}${e.then?` ${t1n(e.then)}`:""}`}function t1n(e){return`${e.type} ${o6t(e.chain)}`}function r1n(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>i6t(t)).join(" ")} `:""}${e.args.map(t=>n1n(t)).join(" ")}`;case"subshell":return`(${_fe(e.subshell)})${e.args.length>0?` ${e.args.map(t=>Lct(t)).join(" ")}`:""}`;case"group":return`{ ${_fe(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>Lct(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>i6t(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function i6t(e){return`${e.name}=${e.args[0]?_Se(e.args[0]):""}`}function n1n(e){switch(e.type){case"redirection":return Lct(e);case"argument":return _Se(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function Lct(e){return`${e.subtype} ${e.args.map(t=>_Se(t)).join(" ")}`}function _Se(e){return e.segments.map(t=>o1n(t)).join("")}var i1n=new Map([["\f","\\f"],[` -`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),Zzs=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(i1n,([e,t])=>[e,`"$'${t}'"`])]),s1n=e=>i1n.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,Lzs=e=>Zzs.get(e)??`"$'${s1n(e)}'"`;function o1n(e){let t=(n,a)=>a?`"${n}"`:n,r=n=>n===""?"''":n.match(/[()}<>$|&;"'\n\t ]/)?n.match(/['\t\p{C}]/u)?n.match(/'/)?`"${n.replace(/["$\t\p{C}]/u,Lzs)}"`:`$'${n.replace(/[\t\p{C}]/u,s1n)}'`:`'${n}'`:n;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${_fe(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(n=>_Se(n)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(n=>_Se(n)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${a6t(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function a6t(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,n=a=>r(a6t(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${n(e.left)} ${t(e.type)} ${n(e.right)}`}}});var l1n=H((Y3l,c1n)=>{"use strict";function Vzs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function yfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,yfe)}Vzs(yfe,Error);yfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;bfe&&(fe=ae,ue=[]),ue.push(cr))}function er(cr,Ar){return new yfe(cr,null,null,Ar)}function vt(cr,Ar,qr){return new yfe(yfe.buildMessage(cr,Ar),cr,Ar,qr)}function xt(){var cr,Ar,qr,_n;return cr=ae,Ar=Zr(),Ar!==r?(e.charCodeAt(ae)===47?(qr=o,ae++):(qr=r,de===0&&Nr(l)),qr!==r?(_n=Zr(),_n!==r?(ne=cr,Ar=A(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Zr(),Ar!==r&&(ne=cr,Ar=f(Ar)),cr=Ar),cr}function Zr(){var cr,Ar,qr,_n;return cr=ae,Ar=qt(),Ar!==r?(e.charCodeAt(ae)===64?(qr=I,ae++):(qr=r,de===0&&Nr(C)),qr!==r?(_n=lr(),_n!==r?(ne=cr,Ar=b(Ar,_n),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=qt(),Ar!==r&&(ne=cr,Ar=E(Ar)),cr=Ar),cr}function qt(){var cr,Ar,qr,_n,ke;return cr=ae,e.charCodeAt(ae)===64?(Ar=I,ae++):(Ar=r,de===0&&Nr(C)),Ar!==r?(qr=Xt(),qr!==r?(e.charCodeAt(ae)===47?(_n=o,ae++):(_n=r,de===0&&Nr(l)),_n!==r?(ke=Xt(),ke!==r?(ne=cr,Ar=N(),cr=Ar):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r)):(ae=cr,cr=r),cr===r&&(cr=ae,Ar=Xt(),Ar!==r&&(ne=cr,Ar=N()),cr=Ar),cr}function Xt(){var cr,Ar,qr;if(cr=ae,Ar=[],B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(F)),qr!==r)for(;qr!==r;)Ar.push(qr),B.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(F));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}function lr(){var cr,Ar,qr;if(cr=ae,Ar=[],Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(X)),qr!==r)for(;qr!==r;)Ar.push(qr),Q.test(e.charAt(ae))?(qr=e.charAt(ae),ae++):(qr=r,de===0&&Nr(X));else Ar=r;return Ar!==r&&(ne=cr,Ar=N()),cr=Ar,cr}if(be=a(),be!==r&&ae===e.length)return be;throw be!==r&&ae{"use strict";Object.defineProperty(Vct,"__esModule",{value:!0});Vct.parseResolution=Ozs;Vct.stringifyResolution=Mzs;var Wzs=l1n();function Ozs(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,Wzs.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Mzs(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var Efe=H((X3l,bfe)=>{"use strict";function g1n(e){return typeof e>"u"||e===null}function Hzs(e){return typeof e=="object"&&e!==null}function Yzs(e){return Array.isArray(e)?e:g1n(e)?[]:[e]}function Qzs(e,t){var r,n,a,o;if(t)for(o=Object.keys(t),r=0,n=o.length;r{"use strict";function zOe(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}zOe.prototype=Object.create(Error.prototype);zOe.prototype.constructor=zOe;zOe.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};A1n.exports=zOe});var f1n=H((U3l,p1n)=>{"use strict";var d1n=Efe();function c6t(e,t,r,n,a){this.name=e,this.buffer=t,this.position=r,this.line=n,this.column=a}c6t.prototype.getSnippet=function(t,r){var n,a,o,l,A;if(!this.buffer)return null;for(t=t||4,r=r||75,n="",a=this.position;a>0&&`\0\r -\x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){n=" ... ",a+=5;break}for(o="",l=this.position;lr/2-1){o=" ... ",l-=5;break}return A=this.buffer.slice(a,l),d1n.repeat(" ",t)+n+A+o+` -`+d1n.repeat(" ",t+this.position-a+n.length)+"^"};c6t.prototype.toString=function(t){var r,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(n+=`: -`+r)),n};p1n.exports=c6t});var ER=H((K3l,h1n)=>{"use strict";var I1n=ySe(),Uzs=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],Kzs=["scalar","sequence","mapping"];function jzs(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function zzs(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(Uzs.indexOf(r)===-1)throw new I1n('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=jzs(t.styleAliases||null),Kzs.indexOf(this.kind)===-1)throw new I1n('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}h1n.exports=zzs});var Sfe=H((j3l,C1n)=>{"use strict";var m1n=Efe(),Pct=ySe(),qzs=ER();function l6t(e,t,r){var n=[];return e.include.forEach(function(a){r=l6t(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,l){o.tag===a.tag&&o.kind===a.kind&&n.push(l)}),r.push(a)}),r.filter(function(a,o){return n.indexOf(o)===-1})}function $zs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function n(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var eqs=ER();_1n.exports=new eqs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var E1n=H((q3l,b1n)=>{"use strict";var tqs=ER();b1n.exports=new tqs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var v1n=H(($3l,S1n)=>{"use strict";var rqs=ER();S1n.exports=new rqs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var Wct=H((e5l,B1n)=>{"use strict";var nqs=Sfe();B1n.exports=new nqs({explicit:[y1n(),E1n(),v1n()]})});var T1n=H((t5l,w1n)=>{"use strict";var iqs=ER();function sqs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function oqs(){return null}function aqs(e){return e===null}w1n.exports=new iqs("tag:yaml.org,2002:null",{kind:"scalar",resolve:sqs,construct:oqs,predicate:aqs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var N1n=H((r5l,R1n)=>{"use strict";var cqs=ER();function lqs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function uqs(e){return e==="true"||e==="True"||e==="TRUE"}function gqs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}R1n.exports=new cqs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:lqs,construct:uqs,predicate:gqs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var k1n=H((n5l,D1n)=>{"use strict";var Aqs=Efe(),dqs=ER();function pqs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function fqs(e){return 48<=e&&e<=55}function Iqs(e){return 48<=e&&e<=57}function hqs(e){if(e===null)return!1;var t=e.length,r=0,n=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var F1n=H((i5l,G1n)=>{"use strict";var x1n=Efe(),_qs=ER(),yqs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function bqs(e){return!(e===null||!yqs.test(e)||e[e.length-1]==="_")}function Eqs(e){var t,r,n,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,n=1,a.forEach(function(o){t+=o*n,n*=60}),r*t):r*parseFloat(t,10)}var Sqs=/^[-+]?[0-9]+e/;function vqs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(x1n.isNegativeZero(e))return"-0.0";return r=e.toString(10),Sqs.test(r)?r.replace("e",".e"):r}function Bqs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||x1n.isNegativeZero(e))}G1n.exports=new _qs("tag:yaml.org,2002:float",{kind:"scalar",resolve:bqs,construct:Eqs,predicate:Bqs,represent:vqs,defaultStyle:"lowercase"})});var u6t=H((s5l,Z1n)=>{"use strict";var wqs=Sfe();Z1n.exports=new wqs({include:[Wct()],implicit:[T1n(),N1n(),k1n(),F1n()]})});var g6t=H((o5l,L1n)=>{"use strict";var Tqs=Sfe();L1n.exports=new Tqs({include:[u6t()]})});var O1n=H((a5l,W1n)=>{"use strict";var Rqs=ER(),V1n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),P1n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Nqs(e){return e===null?!1:V1n.exec(e)!==null||P1n.exec(e)!==null}function Dqs(e){var t,r,n,a,o,l,A,f=0,I=null,C,b,E;if(t=V1n.exec(e),t===null&&(t=P1n.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,n,a));if(o=+t[4],l=+t[5],A=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(C=+t[10],b=+(t[11]||0),I=(C*60+b)*6e4,t[9]==="-"&&(I=-I)),E=new Date(Date.UTC(r,n,a,o,l,A,f)),I&&E.setTime(E.getTime()-I),E}function kqs(e){return e.toISOString()}W1n.exports=new Rqs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Nqs,construct:Dqs,instanceOf:Date,represent:kqs})});var H1n=H((c5l,M1n)=>{"use strict";var xqs=ER();function Gqs(e){return e==="<<"||e===null}M1n.exports=new xqs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Gqs})});var X1n=H((l5l,Q1n)=>{"use strict";var vfe;try{Y1n=wt,vfe=Y1n("buffer").Buffer}catch{}var Y1n,Fqs=ER(),A6t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Zqs(e){if(e===null)return!1;var t,r,n=0,a=e.length,o=A6t;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function Lqs(e){var t,r,n=e.replace(/[\r\n=]/g,""),a=n.length,o=A6t,l=0,A=[];for(t=0;t>16&255),A.push(l>>8&255),A.push(l&255)),l=l<<6|o.indexOf(n.charAt(t));return r=a%4*6,r===0?(A.push(l>>16&255),A.push(l>>8&255),A.push(l&255)):r===18?(A.push(l>>10&255),A.push(l>>2&255)):r===12&&A.push(l>>4&255),vfe?vfe.from?vfe.from(A):new vfe(A):A}function Vqs(e){var t="",r=0,n,a,o=e.length,l=A6t;for(n=0;n>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]),r=(r<<8)+e[n];return a=o%3,a===0?(t+=l[r>>18&63],t+=l[r>>12&63],t+=l[r>>6&63],t+=l[r&63]):a===2?(t+=l[r>>10&63],t+=l[r>>4&63],t+=l[r<<2&63],t+=l[64]):a===1&&(t+=l[r>>2&63],t+=l[r<<4&63],t+=l[64],t+=l[64]),t}function Pqs(e){return vfe&&vfe.isBuffer(e)}Q1n.exports=new Fqs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Zqs,construct:Lqs,predicate:Pqs,represent:Vqs})});var U1n=H((g5l,J1n)=>{"use strict";var Wqs=ER(),Oqs=Object.prototype.hasOwnProperty,Mqs=Object.prototype.toString;function Hqs(e){if(e===null)return!0;var t=[],r,n,a,o,l,A=e;for(r=0,n=A.length;r{"use strict";var Qqs=ER(),Xqs=Object.prototype.toString;function Jqs(e){if(e===null)return!0;var t,r,n,a,o,l=e;for(o=new Array(l.length),t=0,r=l.length;t{"use strict";var Kqs=ER(),jqs=Object.prototype.hasOwnProperty;function zqs(e){if(e===null)return!0;var t,r=e;for(t in r)if(jqs.call(r,t)&&r[t]!==null)return!1;return!0}function qqs(e){return e!==null?e:{}}z1n.exports=new Kqs("tag:yaml.org,2002:set",{kind:"mapping",resolve:zqs,construct:qqs})});var ESe=H((p5l,$1n)=>{"use strict";var $qs=Sfe();$1n.exports=new $qs({include:[g6t()],implicit:[O1n(),H1n()],explicit:[X1n(),U1n(),j1n(),q1n()]})});var t2n=H((f5l,e2n)=>{"use strict";var e$s=ER();function t$s(){return!0}function r$s(){}function n$s(){return""}function i$s(e){return typeof e>"u"}e2n.exports=new e$s("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:t$s,construct:r$s,predicate:i$s,represent:n$s})});var n2n=H((I5l,r2n)=>{"use strict";var s$s=ER();function o$s(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),n="";return!(t[0]==="/"&&(r&&(n=r[1]),n.length>3||t[t.length-n.length-1]!=="/"))}function a$s(e){var t=e,r=/\/([gim]*)$/.exec(e),n="";return t[0]==="/"&&(r&&(n=r[1]),t=t.slice(1,t.length-n.length-1)),new RegExp(t,n)}function c$s(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function l$s(e){return Object.prototype.toString.call(e)==="[object RegExp]"}r2n.exports=new s$s("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:o$s,construct:a$s,predicate:l$s,represent:c$s})});var o2n=H((h5l,s2n)=>{"use strict";var Oct;try{i2n=wt,Oct=i2n("esprima")}catch{typeof window<"u"&&(Oct=window.esprima)}var i2n,u$s=ER();function g$s(e){if(e===null)return!1;try{var t="("+e+")",r=Oct.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function A$s(e){var t="("+e+")",r=Oct.parse(t,{range:!0}),n=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){n.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(n,t.slice(a[0]+1,a[1]-1)):new Function(n,"return "+t.slice(a[0],a[1]))}function d$s(e){return e.toString()}function p$s(e){return Object.prototype.toString.call(e)==="[object Function]"}s2n.exports=new u$s("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:g$s,construct:A$s,predicate:p$s,represent:d$s})});var qOe=H((C5l,c2n)=>{"use strict";var a2n=Sfe();c2n.exports=a2n.DEFAULT=new a2n({include:[ESe()],explicit:[t2n(),n2n(),o2n()]})});var w2n=H((_5l,$Oe)=>{"use strict";var Qq=Efe(),f2n=ySe(),f$s=f1n(),I2n=ESe(),I$s=qOe(),toe=Object.prototype.hasOwnProperty,Mct=1,h2n=2,m2n=3,Hct=4,d6t=1,h$s=2,l2n=3,m$s=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,C$s=/[\x85\u2028\u2029]/,_$s=/[,\[\]\{\}]/,C2n=/^(?:!|!!|![a-z\-]+!)$/i,_2n=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function u2n(e){return Object.prototype.toString.call(e)}function LK(e){return e===10||e===13}function wfe(e){return e===9||e===32}function W9(e){return e===9||e===32||e===10||e===13}function SSe(e){return e===44||e===91||e===93||e===123||e===125}function y$s(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function b$s(e){return e===120?2:e===117?4:e===85?8:0}function E$s(e){return 48<=e&&e<=57?e-48:-1}function g2n(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` -`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function S$s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var y2n=new Array(256),b2n=new Array(256);for(Bfe=0;Bfe<256;Bfe++)y2n[Bfe]=g2n(Bfe)?1:0,b2n[Bfe]=g2n(Bfe);var Bfe;function v$s(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||I$s,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function E2n(e,t){return new f2n(t,new f$s(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function zp(e,t){throw E2n(e,t)}function Yct(e,t){e.onWarning&&e.onWarning.call(null,E2n(e,t))}var A2n={YAML:function(t,r,n){var a,o,l;t.version!==null&&zp(t,"duplication of %YAML directive"),n.length!==1&&zp(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),a===null&&zp(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),l=parseInt(a[2],10),o!==1&&zp(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&Yct(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var a,o;n.length!==2&&zp(t,"TAG directive accepts exactly two arguments"),a=n[0],o=n[1],C2n.test(a)||zp(t,"ill-formed tag handle (first argument) of the TAG directive"),toe.call(t.tagMap,a)&&zp(t,'there is a previously declared suffix for "'+a+'" tag handle'),_2n.test(o)||zp(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function eoe(e,t,r,n){var a,o,l,A;if(t1&&(e.result+=Qq.repeat(` -`,t-1))}function B$s(e,t,r){var n,a,o,l,A,f,I,C,b=e.kind,E=e.result,N;if(N=e.input.charCodeAt(e.position),W9(N)||SSe(N)||N===35||N===38||N===42||N===33||N===124||N===62||N===39||N===34||N===37||N===64||N===96||(N===63||N===45)&&(a=e.input.charCodeAt(e.position+1),W9(a)||r&&SSe(a)))return!1;for(e.kind="scalar",e.result="",o=l=e.position,A=!1;N!==0;){if(N===58){if(a=e.input.charCodeAt(e.position+1),W9(a)||r&&SSe(a))break}else if(N===35){if(n=e.input.charCodeAt(e.position-1),W9(n))break}else{if(e.position===e.lineStart&&Qct(e)||r&&SSe(N))break;if(LK(N))if(f=e.line,I=e.lineStart,C=e.lineIndent,qw(e,!1,-1),e.lineIndent>=t){A=!0,N=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=f,e.lineStart=I,e.lineIndent=C;break}}A&&(eoe(e,o,l,!1),f6t(e,e.line-f),o=l=e.position,A=!1),wfe(N)||(l=e.position+1),N=e.input.charCodeAt(++e.position)}return eoe(e,o,l,!1),e.result?!0:(e.kind=b,e.result=E,!1)}function w$s(e,t){var r,n,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(eoe(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,a=e.position;else return!0;else LK(r)?(eoe(e,n,a,!0),f6t(e,qw(e,!1,t)),n=a=e.position):e.position===e.lineStart&&Qct(e)?zp(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);zp(e,"unexpected end of the stream within a single quoted scalar")}function T$s(e,t){var r,n,a,o,l,A;if(A=e.input.charCodeAt(e.position),A!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(A=e.input.charCodeAt(e.position))!==0;){if(A===34)return eoe(e,r,e.position,!0),e.position++,!0;if(A===92){if(eoe(e,r,e.position,!0),A=e.input.charCodeAt(++e.position),LK(A))qw(e,!1,t);else if(A<256&&y2n[A])e.result+=b2n[A],e.position++;else if((l=b$s(A))>0){for(a=l,o=0;a>0;a--)A=e.input.charCodeAt(++e.position),(l=y$s(A))>=0?o=(o<<4)+l:zp(e,"expected hexadecimal character");e.result+=S$s(o),e.position++}else zp(e,"unknown escape sequence");r=n=e.position}else LK(A)?(eoe(e,r,n,!0),f6t(e,qw(e,!1,t)),r=n=e.position):e.position===e.lineStart&&Qct(e)?zp(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}zp(e,"unexpected end of the stream within a double quoted scalar")}function R$s(e,t){var r=!0,n,a=e.tag,o,l=e.anchor,A,f,I,C,b,E={},N,B,F,Q;if(Q=e.input.charCodeAt(e.position),Q===91)f=93,b=!1,o=[];else if(Q===123)f=125,b=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),Q=e.input.charCodeAt(++e.position);Q!==0;){if(qw(e,!0,t),Q=e.input.charCodeAt(e.position),Q===f)return e.position++,e.tag=a,e.anchor=l,e.kind=b?"mapping":"sequence",e.result=o,!0;r||zp(e,"missed comma between flow collection entries"),B=N=F=null,I=C=!1,Q===63&&(A=e.input.charCodeAt(e.position+1),W9(A)&&(I=C=!0,e.position++,qw(e,!0,t))),n=e.line,BSe(e,t,Mct,!1,!0),B=e.tag,N=e.result,qw(e,!0,t),Q=e.input.charCodeAt(e.position),(C||e.line===n)&&Q===58&&(I=!0,Q=e.input.charCodeAt(++e.position),qw(e,!0,t),BSe(e,t,Mct,!1,!0),F=e.result),b?vSe(e,o,E,B,N,F):I?o.push(vSe(e,null,E,B,N,F)):o.push(N),qw(e,!0,t),Q=e.input.charCodeAt(e.position),Q===44?(r=!0,Q=e.input.charCodeAt(++e.position)):r=!1}zp(e,"unexpected end of the stream within a flow collection")}function N$s(e,t){var r,n,a=d6t,o=!1,l=!1,A=t,f=0,I=!1,C,b;if(b=e.input.charCodeAt(e.position),b===124)n=!1;else if(b===62)n=!0;else return!1;for(e.kind="scalar",e.result="";b!==0;)if(b=e.input.charCodeAt(++e.position),b===43||b===45)d6t===a?a=b===43?l2n:h$s:zp(e,"repeat of a chomping mode identifier");else if((C=E$s(b))>=0)C===0?zp(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?zp(e,"repeat of an indentation width identifier"):(A=t+C-1,l=!0);else break;if(wfe(b)){do b=e.input.charCodeAt(++e.position);while(wfe(b));if(b===35)do b=e.input.charCodeAt(++e.position);while(!LK(b)&&b!==0)}for(;b!==0;){for(p6t(e),e.lineIndent=0,b=e.input.charCodeAt(e.position);(!l||e.lineIndentA&&(A=e.lineIndent),LK(b)){f++;continue}if(e.lineIndentt)&&f!==0)zp(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(BSe(e,t,Hct,!0,a)&&(B?E=e.result:N=e.result),B||(vSe(e,I,C,b,E,N,o,l),b=E=N=null),qw(e,!0,-1),Q=e.input.charCodeAt(e.position)),e.lineIndent>t&&Q!==0)zp(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),b=0,E=e.implicitTypes.length;b tag; it should be "'+N.kind+'", not "'+e.kind+'"'),N.resolve(e.result)?(e.result=N.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):zp(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):zp(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||C}function F$s(e){var t=e.position,r,n,a,o=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(l=e.input.charCodeAt(e.position))!==0&&(qw(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(o=!0,l=e.input.charCodeAt(++e.position),r=e.position;l!==0&&!W9(l);)l=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),a=[],n.length<1&&zp(e,"directive name must not be less than one character in length");l!==0;){for(;wfe(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!LK(l));break}if(LK(l))break;for(r=e.position;l!==0&&!W9(l);)l=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}l!==0&&p6t(e),toe.call(A2n,n)?A2n[n](e,n,a):Yct(e,'unknown document directive "'+n+'"')}if(qw(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,qw(e,!0,-1)):o&&zp(e,"directives end mark is expected"),BSe(e,e.lineIndent-1,Hct,!1,!0),qw(e,!0,-1),e.checkLineBreaks&&C$s.test(e.input.slice(t,e.position))&&Yct(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Qct(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,qw(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=S2n(e,r);if(typeof t!="function")return n;for(var a=0,o=n.length;a"u"&&(r=t,t=null),v2n(e,t,Qq.extend({schema:I2n},r))}function L$s(e,t){return B2n(e,Qq.extend({schema:I2n},t))}$Oe.exports.loadAll=v2n;$Oe.exports.load=B2n;$Oe.exports.safeLoadAll=Z$s;$Oe.exports.safeLoad=L$s});var j2n=H((y5l,C6t)=>{"use strict";var t3e=Efe(),r3e=ySe(),V$s=qOe(),P$s=ESe(),F2n=Object.prototype.toString,Z2n=Object.prototype.hasOwnProperty,W$s=9,e3e=10,O$s=13,M$s=32,H$s=33,Y$s=34,L2n=35,Q$s=37,X$s=38,J$s=39,U$s=42,V2n=44,K$s=45,P2n=58,j$s=61,z$s=62,q$s=63,$$s=64,W2n=91,O2n=93,eeo=96,M2n=123,teo=124,H2n=125,aG={};aG[0]="\\0";aG[7]="\\a";aG[8]="\\b";aG[9]="\\t";aG[10]="\\n";aG[11]="\\v";aG[12]="\\f";aG[13]="\\r";aG[27]="\\e";aG[34]='\\"';aG[92]="\\\\";aG[133]="\\N";aG[160]="\\_";aG[8232]="\\L";aG[8233]="\\P";var reo=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function neo(e,t){var r,n,a,o,l,A,f;if(t===null)return{};for(r={},n=Object.keys(t),a=0,o=n.length;a0?e.charCodeAt(o-1):null,E=E&&N2n(l,A)}else{for(o=0;on&&e[b+1]!==" ",b=o);else if(!wSe(l))return Xct;A=o>0?e.charCodeAt(o-1):null,E=E&&N2n(l,A)}I=I||C&&o-b-1>n&&e[b+1]!==" "}return!f&&!I?E&&!a(e)?Q2n:X2n:r>9&&Y2n(e)?Xct:I?U2n:J2n}function leo(e,t,r,n){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&reo.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function A(f){return seo(e,f)}switch(ceo(t,l,e.indent,o,A)){case Q2n:return t;case X2n:return"'"+t.replace(/'/g,"''")+"'";case J2n:return"|"+D2n(t,e.indent)+k2n(R2n(t,a));case U2n:return">"+D2n(t,e.indent)+k2n(R2n(ueo(t,o),a));case Xct:return'"'+geo(t,o)+'"';default:throw new r3e("impossible error: invalid scalar style")}}()}function D2n(e,t){var r=Y2n(e)?String(t):"",n=e[e.length-1]===` -`,a=n&&(e[e.length-2]===` -`||e===` -`),o=a?"+":n?"":"-";return r+o+` -`}function k2n(e){return e[e.length-1]===` -`?e.slice(0,-1):e}function ueo(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var I=e.indexOf(` -`);return I=I!==-1?I:e.length,r.lastIndex=I,x2n(e.slice(0,I),t)}(),a=e[0]===` -`||e[0]===" ",o,l;l=r.exec(e);){var A=l[1],f=l[2];o=f[0]===" ",n+=A+(!a&&!o&&f!==""?` -`:"")+x2n(f,t),a=o}return n}function x2n(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,a=0,o,l=0,A=0,f="";n=r.exec(e);)A=n.index,A-a>t&&(o=l>a?l:A,f+=` -`+e.slice(a,o),a=o+1),l=A;return f+=` -`,e.length-a>t&&l>a?f+=e.slice(a,l)+` -`+e.slice(l+1):f+=e.slice(a),f.slice(1)}function geo(e){for(var t="",r,n,a,o=0;o=55296&&r<=56319&&(n=e.charCodeAt(o+1),n>=56320&&n<=57343)){t+=T2n((r-55296)*1024+n-56320+65536),o++;continue}a=aG[r],t+=!a&&wSe(r)?e[o]:a||T2n(r)}return t}function Aeo(e,t,r){var n="",a=e.tag,o,l;for(o=0,l=r.length;o1024&&(C+="? "),C+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Tfe(e,t,I,!1,!1)&&(C+=e.dump,n+=C));e.tag=a,e.dump="{"+n+"}"}function feo(e,t,r,n){var a="",o=e.tag,l=Object.keys(r),A,f,I,C,b,E;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new r3e("sortKeys must be a boolean or a function");for(A=0,f=l.length;A1024,b&&(e.dump&&e3e===e.dump.charCodeAt(0)?E+="?":E+="? "),E+=e.dump,b&&(E+=I6t(e,t)),Tfe(e,t+1,C,!0,b)&&(e.dump&&e3e===e.dump.charCodeAt(0)?E+=":":E+=": ",E+=e.dump,a+=E));e.tag=o,e.dump=a||"{}"}function G2n(e,t,r){var n,a,o,l,A,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,l=a.length;o tag resolver accepts not "'+f+'" style');e.dump=n}return!0}return!1}function Tfe(e,t,r,n,a,o){e.tag=null,e.dump=r,G2n(e,r,!1)||G2n(e,r,!0);var l=F2n.call(e.dump);n&&(n=e.flowLevel<0||e.flowLevel>t);var A=l==="[object Object]"||l==="[object Array]",f,I;if(A&&(f=e.duplicates.indexOf(r),I=f!==-1),(e.tag!==null&&e.tag!=="?"||I||e.indent!==2&&t>0)&&(a=!1),I&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(A&&I&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(feo(e,t,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(peo(e,t,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump));else if(l==="[object Array]"){var C=e.noArrayIndent&&t>0?t-1:t;n&&e.dump.length!==0?(deo(e,C,e.dump,a),I&&(e.dump="&ref_"+f+e.dump)):(Aeo(e,C,e.dump),I&&(e.dump="&ref_"+f+" "+e.dump))}else if(l==="[object String]")e.tag!=="?"&&leo(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new r3e("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function Ieo(e,t){var r=[],n=[],a,o;for(h6t(e,r,n),a=0,o=n.length;a{"use strict";var Jct=w2n(),z2n=j2n();function Uct(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}Fv.exports.Type=ER();Fv.exports.Schema=Sfe();Fv.exports.FAILSAFE_SCHEMA=Wct();Fv.exports.JSON_SCHEMA=u6t();Fv.exports.CORE_SCHEMA=g6t();Fv.exports.DEFAULT_SAFE_SCHEMA=ESe();Fv.exports.DEFAULT_FULL_SCHEMA=qOe();Fv.exports.load=Jct.load;Fv.exports.loadAll=Jct.loadAll;Fv.exports.safeLoad=Jct.safeLoad;Fv.exports.safeLoadAll=Jct.safeLoadAll;Fv.exports.dump=z2n.dump;Fv.exports.safeDump=z2n.safeDump;Fv.exports.YAMLException=ySe();Fv.exports.MINIMAL_SCHEMA=Wct();Fv.exports.SAFE_SCHEMA=ESe();Fv.exports.DEFAULT_SCHEMA=qOe();Fv.exports.scan=Uct("scan");Fv.exports.parse=Uct("parse");Fv.exports.compose=Uct("compose");Fv.exports.addConstructor=Uct("addConstructor")});var eSn=H((E5l,$2n)=>{"use strict";var meo=q2n();$2n.exports=meo});var rSn=H((S5l,tSn)=>{"use strict";function Ceo(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Rfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Rfe)}Ceo(Rfe,Error);Rfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b({[aa]:di})))},fe=function(Dr){return Dr},ue=function(Dr){return Dr},de=Gs("correct indentation"),be=" ",Se=Ki(" ",!1),De=function(Dr){return Dr.length===Ml*Ea},k=function(Dr){return Dr.length===(Ml+1)*Ea},et=function(){return Ml++,!0},ct=function(){return Ml--,!0},Me=function(){return Uf()},je=Gs("pseudostring"),St=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,At=cc(["\r",` -`," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Yt=/^[^\r\n\t ,\][{}:#"']/,Tr=cc(["\r",` -`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Nr=function(){return Uf().replace(/^ *| *$/g,"")},er="--",vt=Ki("--",!1),xt=/^[a-zA-Z\/0-9]/,Zr=cc([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),qt=/^[^\r\n\t :,]/,Xt=cc(["\r",` -`," "," ",":",","],!0,!1),lr="null",cr=Ki("null",!1),Ar=function(){return null},qr="true",_n=Ki("true",!1),ke=function(){return!0},jt="false",Fn=Ki("false",!1),Nn=function(){return!1},Hi=Gs("string"),po='"',Vr=Ki('"',!1),xi=function(){return""},io=function(Dr){return Dr},ga=function(Dr){return Dr.join("")},Ya=/^[^"\\\0-\x1F\x7F]/,Gc=cc(['"',"\\",["\0",""],"\x7F"],!0,!1),cl='\\"',Sc=Ki('\\"',!1),Hr=function(){return'"'},Wr="\\\\",Ft=Ki("\\\\",!1),zr=function(){return"\\"},Rn="\\/",Or=Ki("\\/",!1),Qi=function(){return"/"},ps="\\b",yo=Ki("\\b",!1),bo=function(){return"\b"},Qa="\\f",gc=Ki("\\f",!1),Cg=function(){return"\f"},Nc="\\n",iA=Ki("\\n",!1),ma=function(){return` -`},vu="\\r",li=Ki("\\r",!1),Ei=function(){return"\r"},Ps="\\t",Xa=Ki("\\t",!1),ac=function(){return" "},Yl="\\u",Wc=Ki("\\u",!1),Sg=function(Dr,Wn,di,aa){return String.fromCharCode(parseInt(`0x${Dr}${Wn}${di}${aa}`))},Ul=/^[0-9a-fA-F]/,Xu=cc([["0","9"],["a","f"],["A","F"]],!1,!1),Da=Gs("blank space"),pu=/^[ \t]/,_g=cc([" "," "],!1,!1),mI=Gs("white space"),Qh=/^[ \t\n\r]/,Ri=cc([" "," ",` -`,"\r"],!1,!1),Do=`\r -`,Wt=Ki(`\r -`,!1),Hu=` -`,Ru=Ki(` -`,!1),Vs="\r",Ju=Ki("\r",!1),Yn=0,Ko=0,Eg=[{line:1,column:1}],OA=0,GA=[],$i=0,dl;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Uf(){return e.substring(Ko,Yn)}function Kd(){return Dc(Ko,Yn)}function oA(Dr,Wn){throw Wn=Wn!==void 0?Wn:Dc(Ko,Yn),cm([Gs(Dr)],e.substring(Ko,Yn),Wn)}function oo(Dr,Wn){throw Wn=Wn!==void 0?Wn:Dc(Ko,Yn),Tf(Dr,Wn)}function Ki(Dr,Wn){return{type:"literal",text:Dr,ignoreCase:Wn}}function cc(Dr,Wn,di){return{type:"class",parts:Dr,inverted:Wn,ignoreCase:di}}function Xs(){return{type:"any"}}function ws(){return{type:"end"}}function Gs(Dr){return{type:"other",description:Dr}}function Ma(Dr){var Wn=Eg[Dr],di;if(Wn)return Wn;for(di=Dr-1;!Eg[di];)di--;for(Wn=Eg[di],Wn={line:Wn.line,column:Wn.column};diOA&&(OA=Yn,GA=[]),GA.push(Dr))}function Tf(Dr,Wn){return new Rfe(Dr,null,null,Wn)}function cm(Dr,Wn,di){return new Rfe(Rfe.buildMessage(Dr,Wn),Dr,Wn,di)}function Fl(){var Dr;return Dr=Om(),Dr}function rc(){var Dr,Wn,di;for(Dr=Yn,Wn=[],di=sd();di!==r;)Wn.push(di),di=sd();return Wn!==r&&(Ko=Dr,Wn=o(Wn)),Dr=Wn,Dr}function sd(){var Dr,Wn,di,aa,Bo;return Dr=Yn,Wn=ZA(),Wn!==r?(e.charCodeAt(Yn)===45?(di=l,Yn++):(di=r,$i===0&&As(A)),di!==r?(aa=HA(),aa!==r?(Bo=FA(),Bo!==r?(Ko=Dr,Wn=f(Bo),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function Om(){var Dr,Wn,di;for(Dr=Yn,Wn=[],di=il();di!==r;)Wn.push(di),di=il();return Wn!==r&&(Ko=Dr,Wn=I(Wn)),Dr=Wn,Dr}function il(){var Dr,Wn,di,aa,Bo,us,Ql,LA,pf;if(Dr=Yn,Wn=HA(),Wn===r&&(Wn=null),Wn!==r){if(di=Yn,e.charCodeAt(Yn)===35?(aa=C,Yn++):(aa=r,$i===0&&As(b)),aa!==r){if(Bo=[],us=Yn,Ql=Yn,$i++,LA=so(),$i--,LA===r?Ql=void 0:(Yn=Ql,Ql=r),Ql!==r?(e.length>Yn?(LA=e.charAt(Yn),Yn++):(LA=r,$i===0&&As(E)),LA!==r?(Ql=[Ql,LA],us=Ql):(Yn=us,us=r)):(Yn=us,us=r),us!==r)for(;us!==r;)Bo.push(us),us=Yn,Ql=Yn,$i++,LA=so(),$i--,LA===r?Ql=void 0:(Yn=Ql,Ql=r),Ql!==r?(e.length>Yn?(LA=e.charAt(Yn),Yn++):(LA=r,$i===0&&As(E)),LA!==r?(Ql=[Ql,LA],us=Ql):(Yn=us,us=r)):(Yn=us,us=r);else Bo=r;Bo!==r?(aa=[aa,Bo],di=aa):(Yn=di,di=r)}else Yn=di,di=r;if(di===r&&(di=null),di!==r){if(aa=[],Bo=Zs(),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Zs();else aa=r;aa!==r?(Ko=Dr,Wn=N(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r}else Yn=Dr,Dr=r;if(Dr===r&&(Dr=Yn,Wn=ZA(),Wn!==r?(di=MA(),di!==r?(aa=HA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=HA(),us===r&&(us=null),us!==r?(Ql=FA(),Ql!==r?(Ko=Dr,Wn=Q(di,Ql),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,Wn=ZA(),Wn!==r?(di=Er(),di!==r?(aa=HA(),aa===r&&(aa=null),aa!==r?(e.charCodeAt(Yn)===58?(Bo=B,Yn++):(Bo=r,$i===0&&As(F)),Bo!==r?(us=HA(),us===r&&(us=null),us!==r?(Ql=FA(),Ql!==r?(Ko=Dr,Wn=Q(di,Ql),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))){if(Dr=Yn,Wn=ZA(),Wn!==r)if(di=Er(),di!==r)if(aa=HA(),aa!==r)if(Bo=yn(),Bo!==r){if(us=[],Ql=Zs(),Ql!==r)for(;Ql!==r;)us.push(Ql),Ql=Zs();else us=r;us!==r?(Ko=Dr,Wn=Q(di,Bo),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;if(Dr===r)if(Dr=Yn,Wn=ZA(),Wn!==r)if(di=Er(),di!==r){if(aa=[],Bo=Yn,us=HA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Ql=X,Yn++):(Ql=r,$i===0&&As(ae)),Ql!==r?(LA=HA(),LA===r&&(LA=null),LA!==r?(pf=Er(),pf!==r?(Ko=Bo,us=ne(di,pf),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r),Bo!==r)for(;Bo!==r;)aa.push(Bo),Bo=Yn,us=HA(),us===r&&(us=null),us!==r?(e.charCodeAt(Yn)===44?(Ql=X,Yn++):(Ql=r,$i===0&&As(ae)),Ql!==r?(LA=HA(),LA===r&&(LA=null),LA!==r?(pf=Er(),pf!==r?(Ko=Bo,us=ne(di,pf),Bo=us):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r)):(Yn=Bo,Bo=r);else aa=r;aa!==r?(Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(e.charCodeAt(Yn)===58?(us=B,Yn++):(us=r,$i===0&&As(F)),us!==r?(Ql=HA(),Ql===r&&(Ql=null),Ql!==r?(LA=FA(),LA!==r?(Ko=Dr,Wn=ce(di,aa,LA),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r}return Dr}function FA(){var Dr,Wn,di,aa,Bo,us,Ql;if(Dr=Yn,Wn=Yn,$i++,di=Yn,aa=so(),aa!==r?(Bo=El(),Bo!==r?(e.charCodeAt(Yn)===45?(us=l,Yn++):(us=r,$i===0&&As(A)),us!==r?(Ql=HA(),Ql!==r?(aa=[aa,Bo,us,Ql],di=aa):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r)):(Yn=di,di=r),$i--,di!==r?(Yn=Wn,Wn=void 0):Wn=r,Wn!==r?(di=Zs(),di!==r?(aa=yg(),aa!==r?(Bo=rc(),Bo!==r?(us=Mp(),us!==r?(Ko=Dr,Wn=fe(Bo),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,Wn=so(),Wn!==r?(di=yg(),di!==r?(aa=Om(),aa!==r?(Bo=Mp(),Bo!==r?(Ko=Dr,Wn=fe(aa),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r))if(Dr=Yn,Wn=Zt(),Wn!==r){if(di=[],aa=Zs(),aa!==r)for(;aa!==r;)di.push(aa),aa=Zs();else di=r;di!==r?(Ko=Dr,Wn=ue(Wn),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function ZA(){var Dr,Wn,di;for($i++,Dr=Yn,Wn=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)Wn.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return Wn!==r?(Ko=Yn,di=De(Wn),di?di=void 0:di=r,di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),$i--,Dr===r&&(Wn=r,$i===0&&As(de)),Dr}function El(){var Dr,Wn,di;for(Dr=Yn,Wn=[],e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));di!==r;)Wn.push(di),e.charCodeAt(Yn)===32?(di=be,Yn++):(di=r,$i===0&&As(Se));return Wn!==r?(Ko=Yn,di=k(Wn),di?di=void 0:di=r,di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr}function yg(){var Dr;return Ko=Yn,Dr=et(),Dr?Dr=void 0:Dr=r,Dr}function Mp(){var Dr;return Ko=Yn,Dr=ct(),Dr?Dr=void 0:Dr=r,Dr}function MA(){var Dr;return Dr=Ca(),Dr===r&&(Dr=ls()),Dr}function Er(){var Dr,Wn,di;if(Dr=Ca(),Dr===r){if(Dr=Yn,Wn=[],di=oa(),di!==r)for(;di!==r;)Wn.push(di),di=oa();else Wn=r;Wn!==r&&(Ko=Dr,Wn=Me()),Dr=Wn}return Dr}function Zt(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Wa(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=ls()))),Dr}function yn(){var Dr;return Dr=Fs(),Dr===r&&(Dr=Ca(),Dr===r&&(Dr=oa())),Dr}function ls(){var Dr,Wn,di,aa,Bo,us;if($i++,Dr=Yn,St.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(At)),Wn!==r){for(di=[],aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(Yt.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Tr)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(Yt.test(e.charAt(Yn))?(us=e.charAt(Yn),Yn++):(us=r,$i===0&&As(Tr)),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Ko=Dr,Wn=Nr(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(je)),Dr}function oa(){var Dr,Wn,di,aa,Bo;if(Dr=Yn,e.substr(Yn,2)===er?(Wn=er,Yn+=2):(Wn=r,$i===0&&As(vt)),Wn===r&&(Wn=null),Wn!==r)if(xt.test(e.charAt(Yn))?(di=e.charAt(Yn),Yn++):(di=r,$i===0&&As(Zr)),di!==r){for(aa=[],qt.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));Bo!==r;)aa.push(Bo),qt.test(e.charAt(Yn))?(Bo=e.charAt(Yn),Yn++):(Bo=r,$i===0&&As(Xt));aa!==r?(Ko=Dr,Wn=Nr(),Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;else Yn=Dr,Dr=r;return Dr}function Fs(){var Dr,Wn;return Dr=Yn,e.substr(Yn,4)===lr?(Wn=lr,Yn+=4):(Wn=r,$i===0&&As(cr)),Wn!==r&&(Ko=Dr,Wn=Ar()),Dr=Wn,Dr}function Wa(){var Dr,Wn;return Dr=Yn,e.substr(Yn,4)===qr?(Wn=qr,Yn+=4):(Wn=r,$i===0&&As(_n)),Wn!==r&&(Ko=Dr,Wn=ke()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,5)===jt?(Wn=jt,Yn+=5):(Wn=r,$i===0&&As(Fn)),Wn!==r&&(Ko=Dr,Wn=Nn()),Dr=Wn),Dr}function Ca(){var Dr,Wn,di,aa;return $i++,Dr=Yn,e.charCodeAt(Yn)===34?(Wn=po,Yn++):(Wn=r,$i===0&&As(Vr)),Wn!==r?(e.charCodeAt(Yn)===34?(di=po,Yn++):(di=r,$i===0&&As(Vr)),di!==r?(Ko=Dr,Wn=xi(),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r),Dr===r&&(Dr=Yn,e.charCodeAt(Yn)===34?(Wn=po,Yn++):(Wn=r,$i===0&&As(Vr)),Wn!==r?(di=ld(),di!==r?(e.charCodeAt(Yn)===34?(aa=po,Yn++):(aa=r,$i===0&&As(Vr)),aa!==r?(Ko=Dr,Wn=io(di),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)),$i--,Dr===r&&(Wn=r,$i===0&&As(Hi)),Dr}function ld(){var Dr,Wn,di;if(Dr=Yn,Wn=[],di=Rp(),di!==r)for(;di!==r;)Wn.push(di),di=Rp();else Wn=r;return Wn!==r&&(Ko=Dr,Wn=ga(Wn)),Dr=Wn,Dr}function Rp(){var Dr,Wn,di,aa,Bo,us;return Ya.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Gc)),Dr===r&&(Dr=Yn,e.substr(Yn,2)===cl?(Wn=cl,Yn+=2):(Wn=r,$i===0&&As(Sc)),Wn!==r&&(Ko=Dr,Wn=Hr()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Wr?(Wn=Wr,Yn+=2):(Wn=r,$i===0&&As(Ft)),Wn!==r&&(Ko=Dr,Wn=zr()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Rn?(Wn=Rn,Yn+=2):(Wn=r,$i===0&&As(Or)),Wn!==r&&(Ko=Dr,Wn=Qi()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===ps?(Wn=ps,Yn+=2):(Wn=r,$i===0&&As(yo)),Wn!==r&&(Ko=Dr,Wn=bo()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Qa?(Wn=Qa,Yn+=2):(Wn=r,$i===0&&As(gc)),Wn!==r&&(Ko=Dr,Wn=Cg()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Nc?(Wn=Nc,Yn+=2):(Wn=r,$i===0&&As(iA)),Wn!==r&&(Ko=Dr,Wn=ma()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===vu?(Wn=vu,Yn+=2):(Wn=r,$i===0&&As(li)),Wn!==r&&(Ko=Dr,Wn=Ei()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Ps?(Wn=Ps,Yn+=2):(Wn=r,$i===0&&As(Xa)),Wn!==r&&(Ko=Dr,Wn=ac()),Dr=Wn,Dr===r&&(Dr=Yn,e.substr(Yn,2)===Yl?(Wn=Yl,Yn+=2):(Wn=r,$i===0&&As(Wc)),Wn!==r?(di=np(),di!==r?(aa=np(),aa!==r?(Bo=np(),Bo!==r?(us=np(),us!==r?(Ko=Dr,Wn=Sg(di,aa,Bo,us),Dr=Wn):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)):(Yn=Dr,Dr=r)))))))))),Dr}function np(){var Dr;return Ul.test(e.charAt(Yn))?(Dr=e.charAt(Yn),Yn++):(Dr=r,$i===0&&As(Xu)),Dr}function HA(){var Dr,Wn;if($i++,Dr=[],pu.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(_g)),Wn!==r)for(;Wn!==r;)Dr.push(Wn),pu.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(_g));else Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(Da)),Dr}function df(){var Dr,Wn;if($i++,Dr=[],Qh.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(Ri)),Wn!==r)for(;Wn!==r;)Dr.push(Wn),Qh.test(e.charAt(Yn))?(Wn=e.charAt(Yn),Yn++):(Wn=r,$i===0&&As(Ri));else Dr=r;return $i--,Dr===r&&(Wn=r,$i===0&&As(mI)),Dr}function Zs(){var Dr,Wn,di,aa,Bo,us;if(Dr=Yn,Wn=so(),Wn!==r){for(di=[],aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(us=so(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);aa!==r;)di.push(aa),aa=Yn,Bo=HA(),Bo===r&&(Bo=null),Bo!==r?(us=so(),us!==r?(Bo=[Bo,us],aa=Bo):(Yn=aa,aa=r)):(Yn=aa,aa=r);di!==r?(Wn=[Wn,di],Dr=Wn):(Yn=Dr,Dr=r)}else Yn=Dr,Dr=r;return Dr}function so(){var Dr;return e.substr(Yn,2)===Do?(Dr=Do,Yn+=2):(Dr=r,$i===0&&As(Wt)),Dr===r&&(e.charCodeAt(Yn)===10?(Dr=Hu,Yn++):(Dr=r,$i===0&&As(Ru)),Dr===r&&(e.charCodeAt(Yn)===13?(Dr=Vs,Yn++):(Dr=r,$i===0&&As(Ju)))),Dr}let Ea=2,Ml=0;if(dl=a(),dl!==r&&Yn===e.length)return dl;throw dl!==r&&Yn{"use strict";Object.defineProperty(TSe,"__esModule",{value:!0});TSe.PreserveOrdering=void 0;TSe.stringifySyml=aSn;TSe.parseSyml=Beo;var nSn=eSn(),yeo=rSn(),beo=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,iSn=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],n3e=class{constructor(t){this.data=t}};TSe.PreserveOrdering=n3e;function sSn(e){return e.match(beo)?e:JSON.stringify(e)}function oSn(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>oSn(e[t])):!1}function _6t(e,t,r){if(e===null)return`null -`;if(typeof e=="number"||typeof e=="boolean")return`${e.toString()} -`;if(typeof e=="string")return`${sSn(e)} -`;if(Array.isArray(e)){if(e.length===0)return`[] -`;let n=" ".repeat(t);return` -${e.map(o=>`${n}- ${_6t(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[n,a]=e instanceof n3e?[e.data,!1]:[e,!0],o=" ".repeat(t),l=Object.keys(n);a&&l.sort((f,I)=>{let C=iSn.indexOf(f),b=iSn.indexOf(I);return C===-1&&b===-1?fI?1:0:C!==-1&&b===-1?-1:C===-1&&b!==-1?1:C-b});let A=l.filter(f=>!oSn(n[f])).map((f,I)=>{let C=n[f],b=sSn(f),E=_6t(C,t+1,!0),N=I>0||r?o:"",B=b.length>1024?`? ${b} -${N}:`:`${b}:`,F=E.startsWith(` -`)?E:` ${E}`;return`${N}${B}${F}`}).join(t===0?` -`:"")||` -`;return r?` -${A}`:`${A}`}throw new Error(`Unsupported value type (${e})`)}function aSn(e){try{let t=_6t(e,0,!1);return t!==` -`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}aSn.PreserveOrdering=n3e;function Eeo(e){return e.endsWith(` -`)||(e+=` -`),(0,yeo.parse)(e)}var Seo=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function veo(e){if(Seo.test(e))return Eeo(e);let t=(0,nSn.safeLoad)(e,{schema:nSn.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function Beo(e){return veo(e)}});var TW=H(ym=>{"use strict";Object.defineProperty(ym,"__esModule",{value:!0});ym.stringifySyml=ym.parseSyml=ym.stringifyResolution=ym.parseResolution=ym.stringifyValueArgument=ym.stringifyShellLine=ym.stringifyRedirectArgument=ym.stringifyEnvSegment=ym.stringifyCommandLineThen=ym.stringifyCommandLine=ym.stringifyCommandChainThen=ym.stringifyCommandChain=ym.stringifyCommand=ym.stringifyArithmeticExpression=ym.stringifyArgumentSegment=ym.stringifyArgument=ym.stringifyShell=ym.parseShell=void 0;var O9=a1n();Object.defineProperty(ym,"parseShell",{enumerable:!0,get:function(){return O9.parseShell}});Object.defineProperty(ym,"stringifyShell",{enumerable:!0,get:function(){return O9.stringifyShell}});Object.defineProperty(ym,"stringifyArgument",{enumerable:!0,get:function(){return O9.stringifyArgument}});Object.defineProperty(ym,"stringifyArgumentSegment",{enumerable:!0,get:function(){return O9.stringifyArgumentSegment}});Object.defineProperty(ym,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return O9.stringifyArithmeticExpression}});Object.defineProperty(ym,"stringifyCommand",{enumerable:!0,get:function(){return O9.stringifyCommand}});Object.defineProperty(ym,"stringifyCommandChain",{enumerable:!0,get:function(){return O9.stringifyCommandChain}});Object.defineProperty(ym,"stringifyCommandChainThen",{enumerable:!0,get:function(){return O9.stringifyCommandChainThen}});Object.defineProperty(ym,"stringifyCommandLine",{enumerable:!0,get:function(){return O9.stringifyCommandLine}});Object.defineProperty(ym,"stringifyCommandLineThen",{enumerable:!0,get:function(){return O9.stringifyCommandLineThen}});Object.defineProperty(ym,"stringifyEnvSegment",{enumerable:!0,get:function(){return O9.stringifyEnvSegment}});Object.defineProperty(ym,"stringifyRedirectArgument",{enumerable:!0,get:function(){return O9.stringifyRedirectArgument}});Object.defineProperty(ym,"stringifyShellLine",{enumerable:!0,get:function(){return O9.stringifyShellLine}});Object.defineProperty(ym,"stringifyValueArgument",{enumerable:!0,get:function(){return O9.stringifyValueArgument}});var lSn=u1n();Object.defineProperty(ym,"parseResolution",{enumerable:!0,get:function(){return lSn.parseResolution}});Object.defineProperty(ym,"stringifyResolution",{enumerable:!0,get:function(){return lSn.stringifyResolution}});var uSn=cSn();Object.defineProperty(ym,"parseSyml",{enumerable:!0,get:function(){return uSn.parseSyml}});Object.defineProperty(ym,"stringifySyml",{enumerable:!0,get:function(){return uSn.stringifySyml}})});var ASn=H((w5l,y6t)=>{"use strict";var weo=e=>{let t=!1,r=!1,n=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=weo(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};y6t.exports=gSn;y6t.exports.default=gSn});var dSn=H((T5l,Teo)=>{Teo.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var Nfe=H(RW=>{"use strict";var fSn=dSn(),SR=process.env;Object.defineProperty(RW,"_vendors",{value:fSn.map(function(e){return e.constant})});RW.name=null;RW.isPR=null;fSn.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(n){return pSn(n)});if(RW[e.constant]=r,!!r)switch(RW.name=e.name,typeof e.pr){case"string":RW.isPR=!!SR[e.pr];break;case"object":"env"in e.pr?RW.isPR=e.pr.env in SR&&SR[e.pr.env]!==e.pr.ne:"any"in e.pr?RW.isPR=e.pr.any.some(function(n){return!!SR[n]}):RW.isPR=pSn(e.pr);break;default:RW.isPR=null}});RW.isCI=!!(SR.CI!=="false"&&(SR.BUILD_ID||SR.BUILD_NUMBER||SR.CI||SR.CI_APP_ID||SR.CI_BUILD_ID||SR.CI_BUILD_NUMBER||SR.CI_NAME||SR.CONTINUOUS_INTEGRATION||SR.RUN_ID||RW.name));function pSn(e){return typeof e=="string"?!!SR[e]:"env"in e?SR[e.env]&&SR[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!SR[t]}):Object.keys(e).every(function(t){return SR[t]===e[t]})}});var ISn=H((N5l,Reo)=>{Reo.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var _Sn=H((D5l,Xq)=>{var b6t=wt("fs"),E6t=wt("path"),Neo=wt("os"),Deo=wt("crypto"),keo=ISn(),S6t=keo.version,xeo=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Geo(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` -`);let n;for(;(n=xeo.exec(r))!=null;){let a=n[1],o=n[2]||"";o=o.trim();let l=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),l==='"'&&(o=o.replace(/\\n/g,` -`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function Feo(e){let t=CSn(e),r=vR.configDotenv({path:t});if(!r.parsed){let l=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw l.code="MISSING_DATA",l}let n=mSn(e).split(","),a=n.length,o;for(let l=0;l=a)throw A}return vR.parse(o)}function Zeo(e){console.log(`[dotenv@${S6t}][INFO] ${e}`)}function Leo(e){console.log(`[dotenv@${S6t}][WARN] ${e}`)}function Kct(e){console.log(`[dotenv@${S6t}][DEBUG] ${e}`)}function mSn(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function Veo(e,t){let r;try{r=new URL(t)}catch(A){if(A.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw A}let n=r.password;if(!n){let A=new Error("INVALID_DOTENV_KEY: Missing key part");throw A.code="INVALID_DOTENV_KEY",A}let a=r.searchParams.get("environment");if(!a){let A=new Error("INVALID_DOTENV_KEY: Missing environment part");throw A.code="INVALID_DOTENV_KEY",A}let o=`DOTENV_VAULT_${a.toUpperCase()}`,l=e.parsed[o];if(!l){let A=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw A.code="NOT_FOUND_DOTENV_ENVIRONMENT",A}return{ciphertext:l,key:n}}function CSn(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)b6t.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=E6t.resolve(process.cwd(),".env.vault");return b6t.existsSync(t)?t:null}function hSn(e){return e[0]==="~"?E6t.join(Neo.homedir(),e.slice(1)):e}function Peo(e){Zeo("Loading env from encrypted .env.vault");let t=vR._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),vR.populate(r,t,e),{parsed:t}}function Weo(e){let t=E6t.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&Kct("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[hSn(e.path)];else{a=[];for(let f of e.path)a.push(hSn(f))}let o,l={};for(let f of a)try{let I=vR.parse(b6t.readFileSync(f,{encoding:r}));vR.populate(l,I,e)}catch(I){n&&Kct(`Failed to load ${f} ${I.message}`),o=I}let A=process.env;return e&&e.processEnv!=null&&(A=e.processEnv),vR.populate(A,l,e),o?{parsed:l,error:o}:{parsed:l}}function Oeo(e){if(mSn(e).length===0)return vR.configDotenv(e);let t=CSn(e);return t?vR._configVault(e):(Leo(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),vR.configDotenv(e))}function Meo(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),a=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let l=Deo.createDecipheriv("aes-256-gcm",r,a);return l.setAuthTag(o),`${l.update(n)}${l.final()}`}catch(l){let A=l instanceof RangeError,f=l.message==="Invalid key length",I=l.message==="Unsupported state or unable to authenticate data";if(A||f){let C=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw C.code="INVALID_DOTENV_KEY",C}else if(I){let C=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw C.code="DECRYPTION_FAILED",C}else throw l}}function Heo(e,t,r={}){let n=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),n&&Kct(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var vR={configDotenv:Weo,_configVault:Peo,_parseVault:Feo,config:Oeo,decrypt:Meo,parse:Geo,populate:Heo};Xq.exports.configDotenv=vR.configDotenv;Xq.exports._configVault=vR._configVault;Xq.exports._parseVault=vR._parseVault;Xq.exports.config=vR.config;Xq.exports.decrypt=vR.decrypt;Xq.exports.parse=vR.parse;Xq.exports.populate=vR.populate;Xq.exports=vR});var bSn=H((k5l,v6t)=>{"use strict";var ySn=(e,...t)=>new Promise(r=>{r(e(...t))});v6t.exports=ySn;v6t.exports.default=ySn});var Dfe=H((x5l,B6t)=>{"use strict";var Yeo=bSn(),ESn=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,n=()=>{r--,t.length>0&&t.shift()()},a=(A,f,...I)=>{r++;let C=Yeo(A,...I);f(C),C.then(n,n)},o=(A,f,...I)=>{rnew Promise(I=>o(A,I,...f));return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),l};B6t.exports=ESn;B6t.exports.default=ESn});var M9=H(RSe=>{"use strict";Object.defineProperty(RSe,"__esModule",{value:!0});RSe.MessageName=void 0;RSe.stringifyMessageName=Qeo;RSe.parseMessageName=Xeo;var w6t;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED",e[e.INVALID_PROVENANCE_ENVIRONMENT=91]="INVALID_PROVENANCE_ENVIRONMENT",e[e.EXPERIMENTAL=92]="EXPERIMENTAL"})(w6t||(RSe.MessageName=w6t={}));function Qeo(e){return`YN${e.toString(10).padStart(4,"0")}`}function Xeo(e){let t=Number(e.slice(2));if(typeof w6t[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var i3e=H((F5l,SSn)=>{var Jeo="2.0.0",Ueo=Number.MAX_SAFE_INTEGER||9007199254740991,Keo=16,jeo=250,zeo=["major","premajor","minor","preminor","patch","prepatch","prerelease"];SSn.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Keo,MAX_SAFE_BUILD_LENGTH:jeo,MAX_SAFE_INTEGER:Ueo,RELEASE_TYPES:zeo,SEMVER_SPEC_VERSION:Jeo,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var s3e=H((Z5l,vSn)=>{var qeo=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};vSn.exports=qeo});var NSe=H((Jq,BSn)=>{var{MAX_SAFE_COMPONENT_LENGTH:T6t,MAX_SAFE_BUILD_LENGTH:$eo,MAX_LENGTH:eto}=i3e(),tto=s3e();Jq=BSn.exports={};var rto=Jq.re=[],nto=Jq.safeRe=[],AA=Jq.src=[],dA=Jq.t={},ito=0,R6t="[a-zA-Z0-9-]",sto=[["\\s",1],["\\d",eto],[R6t,$eo]],oto=e=>{for(let[t,r]of sto)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},jI=(e,t,r)=>{let n=oto(t),a=ito++;tto(e,a,t),dA[e]=a,AA[a]=t,rto[a]=new RegExp(t,r?"g":void 0),nto[a]=new RegExp(n,r?"g":void 0)};jI("NUMERICIDENTIFIER","0|[1-9]\\d*");jI("NUMERICIDENTIFIERLOOSE","\\d+");jI("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${R6t}*`);jI("MAINVERSION",`(${AA[dA.NUMERICIDENTIFIER]})\\.(${AA[dA.NUMERICIDENTIFIER]})\\.(${AA[dA.NUMERICIDENTIFIER]})`);jI("MAINVERSIONLOOSE",`(${AA[dA.NUMERICIDENTIFIERLOOSE]})\\.(${AA[dA.NUMERICIDENTIFIERLOOSE]})\\.(${AA[dA.NUMERICIDENTIFIERLOOSE]})`);jI("PRERELEASEIDENTIFIER",`(?:${AA[dA.NUMERICIDENTIFIER]}|${AA[dA.NONNUMERICIDENTIFIER]})`);jI("PRERELEASEIDENTIFIERLOOSE",`(?:${AA[dA.NUMERICIDENTIFIERLOOSE]}|${AA[dA.NONNUMERICIDENTIFIER]})`);jI("PRERELEASE",`(?:-(${AA[dA.PRERELEASEIDENTIFIER]}(?:\\.${AA[dA.PRERELEASEIDENTIFIER]})*))`);jI("PRERELEASELOOSE",`(?:-?(${AA[dA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${AA[dA.PRERELEASEIDENTIFIERLOOSE]})*))`);jI("BUILDIDENTIFIER",`${R6t}+`);jI("BUILD",`(?:\\+(${AA[dA.BUILDIDENTIFIER]}(?:\\.${AA[dA.BUILDIDENTIFIER]})*))`);jI("FULLPLAIN",`v?${AA[dA.MAINVERSION]}${AA[dA.PRERELEASE]}?${AA[dA.BUILD]}?`);jI("FULL",`^${AA[dA.FULLPLAIN]}$`);jI("LOOSEPLAIN",`[v=\\s]*${AA[dA.MAINVERSIONLOOSE]}${AA[dA.PRERELEASELOOSE]}?${AA[dA.BUILD]}?`);jI("LOOSE",`^${AA[dA.LOOSEPLAIN]}$`);jI("GTLT","((?:<|>)?=?)");jI("XRANGEIDENTIFIERLOOSE",`${AA[dA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);jI("XRANGEIDENTIFIER",`${AA[dA.NUMERICIDENTIFIER]}|x|X|\\*`);jI("XRANGEPLAIN",`[v=\\s]*(${AA[dA.XRANGEIDENTIFIER]})(?:\\.(${AA[dA.XRANGEIDENTIFIER]})(?:\\.(${AA[dA.XRANGEIDENTIFIER]})(?:${AA[dA.PRERELEASE]})?${AA[dA.BUILD]}?)?)?`);jI("XRANGEPLAINLOOSE",`[v=\\s]*(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${AA[dA.XRANGEIDENTIFIERLOOSE]})(?:${AA[dA.PRERELEASELOOSE]})?${AA[dA.BUILD]}?)?)?`);jI("XRANGE",`^${AA[dA.GTLT]}\\s*${AA[dA.XRANGEPLAIN]}$`);jI("XRANGELOOSE",`^${AA[dA.GTLT]}\\s*${AA[dA.XRANGEPLAINLOOSE]}$`);jI("COERCEPLAIN",`(^|[^\\d])(\\d{1,${T6t}})(?:\\.(\\d{1,${T6t}}))?(?:\\.(\\d{1,${T6t}}))?`);jI("COERCE",`${AA[dA.COERCEPLAIN]}(?:$|[^\\d])`);jI("COERCEFULL",AA[dA.COERCEPLAIN]+`(?:${AA[dA.PRERELEASE]})?(?:${AA[dA.BUILD]})?(?:$|[^\\d])`);jI("COERCERTL",AA[dA.COERCE],!0);jI("COERCERTLFULL",AA[dA.COERCEFULL],!0);jI("LONETILDE","(?:~>?)");jI("TILDETRIM",`(\\s*)${AA[dA.LONETILDE]}\\s+`,!0);Jq.tildeTrimReplace="$1~";jI("TILDE",`^${AA[dA.LONETILDE]}${AA[dA.XRANGEPLAIN]}$`);jI("TILDELOOSE",`^${AA[dA.LONETILDE]}${AA[dA.XRANGEPLAINLOOSE]}$`);jI("LONECARET","(?:\\^)");jI("CARETTRIM",`(\\s*)${AA[dA.LONECARET]}\\s+`,!0);Jq.caretTrimReplace="$1^";jI("CARET",`^${AA[dA.LONECARET]}${AA[dA.XRANGEPLAIN]}$`);jI("CARETLOOSE",`^${AA[dA.LONECARET]}${AA[dA.XRANGEPLAINLOOSE]}$`);jI("COMPARATORLOOSE",`^${AA[dA.GTLT]}\\s*(${AA[dA.LOOSEPLAIN]})$|^$`);jI("COMPARATOR",`^${AA[dA.GTLT]}\\s*(${AA[dA.FULLPLAIN]})$|^$`);jI("COMPARATORTRIM",`(\\s*)${AA[dA.GTLT]}\\s*(${AA[dA.LOOSEPLAIN]}|${AA[dA.XRANGEPLAIN]})`,!0);Jq.comparatorTrimReplace="$1$2$3";jI("HYPHENRANGE",`^\\s*(${AA[dA.XRANGEPLAIN]})\\s+-\\s+(${AA[dA.XRANGEPLAIN]})\\s*$`);jI("HYPHENRANGELOOSE",`^\\s*(${AA[dA.XRANGEPLAINLOOSE]})\\s+-\\s+(${AA[dA.XRANGEPLAINLOOSE]})\\s*$`);jI("STAR","(<|>)?=?\\s*\\*");jI("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");jI("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var jct=H((L5l,wSn)=>{var ato=Object.freeze({loose:!0}),cto=Object.freeze({}),lto=e=>e?typeof e!="object"?ato:e:cto;wSn.exports=lto});var N6t=H((V5l,NSn)=>{var TSn=/^[0-9]+$/,RSn=(e,t)=>{let r=TSn.test(e),n=TSn.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:eRSn(t,e);NSn.exports={compareIdentifiers:RSn,rcompareIdentifiers:uto}});var cG=H((P5l,GSn)=>{var zct=s3e(),{MAX_LENGTH:DSn,MAX_SAFE_INTEGER:qct}=i3e(),{safeRe:kSn,t:xSn}=NSe(),gto=jct(),{compareIdentifiers:DSe}=N6t(),D6t=class e{constructor(t,r){if(r=gto(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>DSn)throw new TypeError(`version is longer than ${DSn} characters`);zct("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?kSn[xSn.LOOSE]:kSn[xSn.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>qct||this.major<0)throw new TypeError("Invalid major version");if(this.minor>qct||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>qct||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];n===!1&&(o=[r]),DSe(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};GSn.exports=D6t});var kfe=H((W5l,ZSn)=>{var FSn=cG(),Ato=(e,t,r=!1)=>{if(e instanceof FSn)return e;try{return new FSn(e,t)}catch(n){if(!r)return null;throw n}};ZSn.exports=Ato});var k6t=H((O5l,LSn)=>{var dto=kfe(),pto=(e,t)=>{let r=dto(e,t);return r?r.version:null};LSn.exports=pto});var x6t=H((M5l,VSn)=>{var fto=kfe(),Ito=(e,t)=>{let r=fto(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};VSn.exports=Ito});var OSn=H((H5l,WSn)=>{var PSn=cG(),hto=(e,t,r,n,a)=>{typeof r=="string"&&(a=n,n=r,r=void 0);try{return new PSn(e instanceof PSn?e.version:e,r).inc(t,n,a).version}catch{return null}};WSn.exports=hto});var YSn=H((Y5l,HSn)=>{var MSn=kfe(),mto=(e,t)=>{let r=MSn(e,null,!0),n=MSn(t,null,!0),a=r.compare(n);if(a===0)return null;let o=a>0,l=o?r:n,A=o?n:r,f=!!l.prerelease.length;if(!!A.prerelease.length&&!f)return!A.patch&&!A.minor?"major":l.patch?"patch":l.minor?"minor":"major";let C=f?"pre":"";return r.major!==n.major?C+"major":r.minor!==n.minor?C+"minor":r.patch!==n.patch?C+"patch":"prerelease"};HSn.exports=mto});var XSn=H((Q5l,QSn)=>{var Cto=cG(),_to=(e,t)=>new Cto(e,t).major;QSn.exports=_to});var USn=H((X5l,JSn)=>{var yto=cG(),bto=(e,t)=>new yto(e,t).minor;JSn.exports=bto});var jSn=H((J5l,KSn)=>{var Eto=cG(),Sto=(e,t)=>new Eto(e,t).patch;KSn.exports=Sto});var qSn=H((U5l,zSn)=>{var vto=kfe(),Bto=(e,t)=>{let r=vto(e,t);return r&&r.prerelease.length?r.prerelease:null};zSn.exports=Bto});var U5=H((K5l,evn)=>{var $Sn=cG(),wto=(e,t,r)=>new $Sn(e,r).compare(new $Sn(t,r));evn.exports=wto});var rvn=H((j5l,tvn)=>{var Tto=U5(),Rto=(e,t,r)=>Tto(t,e,r);tvn.exports=Rto});var ivn=H((z5l,nvn)=>{var Nto=U5(),Dto=(e,t)=>Nto(e,t,!0);nvn.exports=Dto});var $ct=H((q5l,ovn)=>{var svn=cG(),kto=(e,t,r)=>{let n=new svn(e,r),a=new svn(t,r);return n.compare(a)||n.compareBuild(a)};ovn.exports=kto});var cvn=H(($5l,avn)=>{var xto=$ct(),Gto=(e,t)=>e.sort((r,n)=>xto(r,n,t));avn.exports=Gto});var uvn=H((eMl,lvn)=>{var Fto=$ct(),Zto=(e,t)=>e.sort((r,n)=>Fto(n,r,t));lvn.exports=Zto});var o3e=H((tMl,gvn)=>{var Lto=U5(),Vto=(e,t,r)=>Lto(e,t,r)>0;gvn.exports=Vto});var elt=H((rMl,Avn)=>{var Pto=U5(),Wto=(e,t,r)=>Pto(e,t,r)<0;Avn.exports=Wto});var G6t=H((nMl,dvn)=>{var Oto=U5(),Mto=(e,t,r)=>Oto(e,t,r)===0;dvn.exports=Mto});var F6t=H((iMl,pvn)=>{var Hto=U5(),Yto=(e,t,r)=>Hto(e,t,r)!==0;pvn.exports=Yto});var tlt=H((sMl,fvn)=>{var Qto=U5(),Xto=(e,t,r)=>Qto(e,t,r)>=0;fvn.exports=Xto});var rlt=H((oMl,Ivn)=>{var Jto=U5(),Uto=(e,t,r)=>Jto(e,t,r)<=0;Ivn.exports=Uto});var Z6t=H((aMl,hvn)=>{var Kto=G6t(),jto=F6t(),zto=o3e(),qto=tlt(),$to=elt(),ero=rlt(),tro=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return Kto(e,r,n);case"!=":return jto(e,r,n);case">":return zto(e,r,n);case">=":return qto(e,r,n);case"<":return $to(e,r,n);case"<=":return ero(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};hvn.exports=tro});var Cvn=H((cMl,mvn)=>{var rro=cG(),nro=kfe(),{safeRe:nlt,t:ilt}=NSe(),iro=(e,t)=>{if(e instanceof rro)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?nlt[ilt.COERCEFULL]:nlt[ilt.COERCE]);else{let f=t.includePrerelease?nlt[ilt.COERCERTLFULL]:nlt[ilt.COERCERTL],I;for(;(I=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||I.index+I[0].length!==r.index+r[0].length)&&(r=I),f.lastIndex=I.index+I[1].length+I[2].length;f.lastIndex=-1}if(r===null)return null;let n=r[2],a=r[3]||"0",o=r[4]||"0",l=t.includePrerelease&&r[5]?`-${r[5]}`:"",A=t.includePrerelease&&r[6]?`+${r[6]}`:"";return nro(`${n}.${a}.${o}${l}${A}`,t)};mvn.exports=iro});var yvn=H((lMl,_vn)=>{var L6t=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};_vn.exports=L6t});var K5=H((uMl,vvn)=>{var sro=/\s+/g,V6t=class e{constructor(t,r){if(r=aro(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof P6t)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(sro," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(a=>!Evn(a[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&pro(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&Aro)|(this.options.loose&&dro))+":"+t,a=bvn.get(n);if(a)return a;let o=this.options.loose,l=o?H9[bZ.HYPHENRANGELOOSE]:H9[bZ.HYPHENRANGE];t=t.replace(l,Sro(this.options.includePrerelease)),k1("hyphen replace",t),t=t.replace(H9[bZ.COMPARATORTRIM],lro),k1("comparator trim",t),t=t.replace(H9[bZ.TILDETRIM],uro),k1("tilde trim",t),t=t.replace(H9[bZ.CARETTRIM],gro),k1("caret trim",t);let A=t.split(" ").map(b=>fro(b,this.options)).join(" ").split(/\s+/).map(b=>Ero(b,this.options));o&&(A=A.filter(b=>(k1("loose invalid filter",b,this.options),!!b.match(H9[bZ.COMPARATORLOOSE])))),k1("range list",A);let f=new Map,I=A.map(b=>new P6t(b,this.options));for(let b of I){if(Evn(b))return[b];f.set(b.value,b)}f.size>1&&f.has("")&&f.delete("");let C=[...f.values()];return bvn.set(n,C),C}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>Svn(n,r)&&t.set.some(a=>Svn(a,r)&&n.every(o=>a.every(l=>o.intersects(l,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new cro(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",pro=e=>e.value==="",Svn=(e,t)=>{let r=!0,n=e.slice(),a=n.pop();for(;r&&n.length;)r=n.every(o=>a.intersects(o,t)),a=n.pop();return r},fro=(e,t)=>(k1("comp",e,t),e=mro(e,t),k1("caret",e),e=Iro(e,t),k1("tildes",e),e=_ro(e,t),k1("xrange",e),e=bro(e,t),k1("stars",e),e),EZ=e=>!e||e.toLowerCase()==="x"||e==="*",Iro=(e,t)=>e.trim().split(/\s+/).map(r=>hro(r,t)).join(" "),hro=(e,t)=>{let r=t.loose?H9[bZ.TILDELOOSE]:H9[bZ.TILDE];return e.replace(r,(n,a,o,l,A)=>{k1("tilde",e,n,a,o,l,A);let f;return EZ(a)?f="":EZ(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:EZ(l)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:A?(k1("replaceTilde pr",A),f=`>=${a}.${o}.${l}-${A} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${l} <${a}.${+o+1}.0-0`,k1("tilde return",f),f})},mro=(e,t)=>e.trim().split(/\s+/).map(r=>Cro(r,t)).join(" "),Cro=(e,t)=>{k1("caret",e,t);let r=t.loose?H9[bZ.CARETLOOSE]:H9[bZ.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(a,o,l,A,f)=>{k1("caret",e,a,o,l,A,f);let I;return EZ(o)?I="":EZ(l)?I=`>=${o}.0.0${n} <${+o+1}.0.0-0`:EZ(A)?o==="0"?I=`>=${o}.${l}.0${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.0${n} <${+o+1}.0.0-0`:f?(k1("replaceCaret pr",f),o==="0"?l==="0"?I=`>=${o}.${l}.${A}-${f} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}-${f} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A}-${f} <${+o+1}.0.0-0`):(k1("no pr"),o==="0"?l==="0"?I=`>=${o}.${l}.${A}${n} <${o}.${l}.${+A+1}-0`:I=`>=${o}.${l}.${A}${n} <${o}.${+l+1}.0-0`:I=`>=${o}.${l}.${A} <${+o+1}.0.0-0`),k1("caret return",I),I})},_ro=(e,t)=>(k1("replaceXRanges",e,t),e.split(/\s+/).map(r=>yro(r,t)).join(" ")),yro=(e,t)=>{e=e.trim();let r=t.loose?H9[bZ.XRANGELOOSE]:H9[bZ.XRANGE];return e.replace(r,(n,a,o,l,A,f)=>{k1("xRange",e,n,a,o,l,A,f);let I=EZ(o),C=I||EZ(l),b=C||EZ(A),E=b;return a==="="&&E&&(a=""),f=t.includePrerelease?"-0":"",I?a===">"||a==="<"?n="<0.0.0-0":n="*":a&&E?(C&&(l=0),A=0,a===">"?(a=">=",C?(o=+o+1,l=0,A=0):(l=+l+1,A=0)):a==="<="&&(a="<",C?o=+o+1:l=+l+1),a==="<"&&(f="-0"),n=`${a+o}.${l}.${A}${f}`):C?n=`>=${o}.0.0${f} <${+o+1}.0.0-0`:b&&(n=`>=${o}.${l}.0${f} <${o}.${+l+1}.0-0`),k1("xRange return",n),n})},bro=(e,t)=>(k1("replaceStars",e,t),e.trim().replace(H9[bZ.STAR],"")),Ero=(e,t)=>(k1("replaceGTE0",e,t),e.trim().replace(H9[t.includePrerelease?bZ.GTE0PRE:bZ.GTE0],"")),Sro=e=>(t,r,n,a,o,l,A,f,I,C,b,E)=>(EZ(n)?r="":EZ(a)?r=`>=${n}.0.0${e?"-0":""}`:EZ(o)?r=`>=${n}.${a}.0${e?"-0":""}`:l?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,EZ(I)?f="":EZ(C)?f=`<${+I+1}.0.0-0`:EZ(b)?f=`<${I}.${+C+1}.0-0`:E?f=`<=${I}.${C}.${b}-${E}`:e?f=`<${I}.${C}.${+b+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),vro=(e,t,r)=>{for(let n=0;n0){let a=e[n].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var a3e=H((gMl,Dvn)=>{var c3e=Symbol("SemVer ANY"),M6t=class e{static get ANY(){return c3e}constructor(t,r){if(r=Bvn(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),O6t("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===c3e?this.value="":this.value=this.operator+this.semver.version,O6t("comp",this)}parse(t){let r=this.options.loose?wvn[Tvn.COMPARATORLOOSE]:wvn[Tvn.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Rvn(n[2],this.options.loose):this.semver=c3e}toString(){return this.value}test(t){if(O6t("Comparator.test",t,this.options.loose),this.semver===c3e||t===c3e)return!0;if(typeof t=="string")try{t=new Rvn(t,this.options)}catch{return!1}return W6t(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Nvn(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new Nvn(this.value,r).test(t.semver):(r=Bvn(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||W6t(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||W6t(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};Dvn.exports=M6t;var Bvn=jct(),{safeRe:wvn,t:Tvn}=NSe(),W6t=Z6t(),O6t=s3e(),Rvn=cG(),Nvn=K5()});var l3e=H((AMl,kvn)=>{var Bro=K5(),wro=(e,t,r)=>{try{t=new Bro(t,r)}catch{return!1}return t.test(e)};kvn.exports=wro});var Gvn=H((dMl,xvn)=>{var Tro=K5(),Rro=(e,t)=>new Tro(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));xvn.exports=Rro});var Zvn=H((pMl,Fvn)=>{var Nro=cG(),Dro=K5(),kro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Dro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===-1)&&(n=l,a=new Nro(n,r))}),n};Fvn.exports=kro});var Vvn=H((fMl,Lvn)=>{var xro=cG(),Gro=K5(),Fro=(e,t,r)=>{let n=null,a=null,o=null;try{o=new Gro(t,r)}catch{return null}return e.forEach(l=>{o.test(l)&&(!n||a.compare(l)===1)&&(n=l,a=new xro(n,r))}),n};Lvn.exports=Fro});var Ovn=H((IMl,Wvn)=>{var H6t=cG(),Zro=K5(),Pvn=o3e(),Lro=(e,t)=>{e=new Zro(e,t);let r=new H6t("0.0.0");if(e.test(r)||(r=new H6t("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let A=new H6t(l.semver.version);switch(l.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!o||Pvn(A,o))&&(o=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${l.operator}`)}}),o&&(!r||Pvn(r,o))&&(r=o)}return r&&e.test(r)?r:null};Wvn.exports=Lro});var Hvn=H((hMl,Mvn)=>{var Vro=K5(),Pro=(e,t)=>{try{return new Vro(e,t).range||"*"}catch{return null}};Mvn.exports=Pro});var slt=H((mMl,Jvn)=>{var Wro=cG(),Xvn=a3e(),{ANY:Oro}=Xvn,Mro=K5(),Hro=l3e(),Yvn=o3e(),Qvn=elt(),Yro=rlt(),Qro=tlt(),Xro=(e,t,r,n)=>{e=new Wro(e,n),t=new Mro(t,n);let a,o,l,A,f;switch(r){case">":a=Yvn,o=Yro,l=Qvn,A=">",f=">=";break;case"<":a=Qvn,o=Qro,l=Yvn,A="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Hro(e,t,n))return!1;for(let I=0;I{N.semver===Oro&&(N=new Xvn(">=0.0.0")),b=b||N,E=E||N,a(N.semver,b.semver,n)?b=N:l(N.semver,E.semver,n)&&(E=N)}),b.operator===A||b.operator===f||(!E.operator||E.operator===A)&&o(e,E.semver))return!1;if(E.operator===f&&l(e,E.semver))return!1}return!0};Jvn.exports=Xro});var Kvn=H((CMl,Uvn)=>{var Jro=slt(),Uro=(e,t,r)=>Jro(e,t,">",r);Uvn.exports=Uro});var zvn=H((_Ml,jvn)=>{var Kro=slt(),jro=(e,t,r)=>Kro(e,t,"<",r);jvn.exports=jro});var eBn=H((yMl,$vn)=>{var qvn=K5(),zro=(e,t,r)=>(e=new qvn(e,r),t=new qvn(t,r),e.intersects(t,r));$vn.exports=zro});var rBn=H((bMl,tBn)=>{var qro=l3e(),$ro=U5();tBn.exports=(e,t,r)=>{let n=[],a=null,o=null,l=e.sort((C,b)=>$ro(C,b,r));for(let C of l)qro(C,t,r)?(o=C,a||(a=C)):(o&&n.push([a,o]),o=null,a=null);a&&n.push([a,null]);let A=[];for(let[C,b]of n)C===b?A.push(C):!b&&C===l[0]?A.push("*"):b?C===l[0]?A.push(`<=${b}`):A.push(`${C} - ${b}`):A.push(`>=${C}`);let f=A.join(" || "),I=typeof t.raw=="string"?t.raw:String(t);return f.length{var nBn=K5(),Q6t=a3e(),{ANY:Y6t}=Q6t,u3e=l3e(),X6t=U5(),eno=(e,t,r={})=>{if(e===t)return!0;e=new nBn(e,r),t=new nBn(t,r);let n=!1;e:for(let a of e.set){for(let o of t.set){let l=rno(a,o,r);if(n=n||l!==null,l)continue e}if(n)return!1}return!0},tno=[new Q6t(">=0.0.0-0")],iBn=[new Q6t(">=0.0.0")],rno=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===Y6t){if(t.length===1&&t[0].semver===Y6t)return!0;r.includePrerelease?e=tno:e=iBn}if(t.length===1&&t[0].semver===Y6t){if(r.includePrerelease)return!0;t=iBn}let n=new Set,a,o;for(let N of e)N.operator===">"||N.operator===">="?a=sBn(a,N,r):N.operator==="<"||N.operator==="<="?o=oBn(o,N,r):n.add(N.semver);if(n.size>1)return null;let l;if(a&&o){if(l=X6t(a.semver,o.semver,r),l>0)return null;if(l===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let N of n){if(a&&!u3e(N,String(a),r)||o&&!u3e(N,String(o),r))return null;for(let B of t)if(!u3e(N,String(B),r))return!1;return!0}let A,f,I,C,b=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,E=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;b&&b.prerelease.length===1&&o.operator==="<"&&b.prerelease[0]===0&&(b=!1);for(let N of t){if(C=C||N.operator===">"||N.operator===">=",I=I||N.operator==="<"||N.operator==="<=",a){if(E&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===E.major&&N.semver.minor===E.minor&&N.semver.patch===E.patch&&(E=!1),N.operator===">"||N.operator===">="){if(A=sBn(a,N,r),A===N&&A!==a)return!1}else if(a.operator===">="&&!u3e(a.semver,String(N),r))return!1}if(o){if(b&&N.semver.prerelease&&N.semver.prerelease.length&&N.semver.major===b.major&&N.semver.minor===b.minor&&N.semver.patch===b.patch&&(b=!1),N.operator==="<"||N.operator==="<="){if(f=oBn(o,N,r),f===N&&f!==o)return!1}else if(o.operator==="<="&&!u3e(o.semver,String(N),r))return!1}if(!N.operator&&(o||a)&&l!==0)return!1}return!(a&&I&&!o&&l!==0||o&&C&&!a&&l!==0||E||b)},sBn=(e,t,r)=>{if(!e)return t;let n=X6t(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},oBn=(e,t,r)=>{if(!e)return t;let n=X6t(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};aBn.exports=eno});var UC=H((SMl,gBn)=>{var J6t=NSe(),lBn=i3e(),nno=cG(),uBn=N6t(),ino=kfe(),sno=k6t(),ono=x6t(),ano=OSn(),cno=YSn(),lno=XSn(),uno=USn(),gno=jSn(),Ano=qSn(),dno=U5(),pno=rvn(),fno=ivn(),Ino=$ct(),hno=cvn(),mno=uvn(),Cno=o3e(),_no=elt(),yno=G6t(),bno=F6t(),Eno=tlt(),Sno=rlt(),vno=Z6t(),Bno=Cvn(),wno=a3e(),Tno=K5(),Rno=l3e(),Nno=Gvn(),Dno=Zvn(),kno=Vvn(),xno=Ovn(),Gno=Hvn(),Fno=slt(),Zno=Kvn(),Lno=zvn(),Vno=eBn(),Pno=rBn(),Wno=cBn();gBn.exports={parse:ino,valid:sno,clean:ono,inc:ano,diff:cno,major:lno,minor:uno,patch:gno,prerelease:Ano,compare:dno,rcompare:pno,compareLoose:fno,compareBuild:Ino,sort:hno,rsort:mno,gt:Cno,lt:_no,eq:yno,neq:bno,gte:Eno,lte:Sno,cmp:vno,coerce:Bno,Comparator:wno,Range:Tno,satisfies:Rno,toComparators:Nno,maxSatisfying:Dno,minSatisfying:kno,minVersion:xno,validRange:Gno,outside:Fno,gtr:Zno,ltr:Lno,intersects:Vno,simplifyRange:Pno,subset:Wno,SemVer:nno,re:J6t.re,src:J6t.src,tokens:J6t.t,SEMVER_SPEC_VERSION:lBn.SEMVER_SPEC_VERSION,RELEASE_TYPES:lBn.RELEASE_TYPES,compareIdentifiers:uBn.compareIdentifiers,rcompareIdentifiers:uBn.rcompareIdentifiers}});var dBn=H((vMl,ABn)=>{"use strict";function Ono(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function xfe(e,t,r,n){this.message=e,this.expected=t,this.found=r,this.location=n,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,xfe)}Ono(xfe,Error);xfe.buildMessage=function(e,t){var r={literal:function(I){return'"'+a(I.text)+'"'},class:function(I){var C="",b;for(b=0;b0){for(b=1,E=1;b{switch(xi[1]){case"|":return Vr|xi[3];case"&":return Vr&xi[3];case"^":return Vr^xi[3]}},Hi)},E="!",N=vt("!",!1),B=function(Hi){return!Hi},F="(",Q=vt("(",!1),X=")",ae=vt(")",!1),ne=function(Hi){return Hi},ce=/^[^ \t\n\r()!|&\^]/,fe=xt([" "," ",` -`,"\r","(",")","!","|","&","^"],!0,!1),ue=function(Hi){return t.queryPattern.test(Hi)},de=function(Hi){return t.checkFn(Hi)},be=Xt("whitespace"),Se=/^[ \t\n\r]/,De=xt([" "," ",` -`,"\r"],!1,!1),k=0,et=0,ct=[{line:1,column:1}],Me=0,je=[],St=0,At;if("startRule"in t){if(!(t.startRule in n))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=n[t.startRule]}function Yt(){return e.substring(et,k)}function Tr(){return cr(et,k)}function Nr(Hi,po){throw po=po!==void 0?po:cr(et,k),_n([Xt(Hi)],e.substring(et,k),po)}function er(Hi,po){throw po=po!==void 0?po:cr(et,k),qr(Hi,po)}function vt(Hi,po){return{type:"literal",text:Hi,ignoreCase:po}}function xt(Hi,po,Vr){return{type:"class",parts:Hi,inverted:po,ignoreCase:Vr}}function Zr(){return{type:"any"}}function qt(){return{type:"end"}}function Xt(Hi){return{type:"other",description:Hi}}function lr(Hi){var po=ct[Hi],Vr;if(po)return po;for(Vr=Hi-1;!ct[Vr];)Vr--;for(po=ct[Vr],po={line:po.line,column:po.column};VrMe&&(Me=k,je=[]),je.push(Hi))}function qr(Hi,po){return new xfe(Hi,null,null,po)}function _n(Hi,po,Vr){return new xfe(xfe.buildMessage(Hi,po),Hi,po,Vr)}function ke(){var Hi,po,Vr,xi,io,ga,Ya,Gc;if(Hi=k,po=jt(),po!==r){for(Vr=[],xi=k,io=Nn(),io!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,St===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,St===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,St===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=jt(),Gc!==r?(io=[io,ga,Ya,Gc],xi=io):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);xi!==r;)Vr.push(xi),xi=k,io=Nn(),io!==r?(e.charCodeAt(k)===124?(ga=o,k++):(ga=r,St===0&&Ar(l)),ga===r&&(e.charCodeAt(k)===38?(ga=A,k++):(ga=r,St===0&&Ar(f)),ga===r&&(e.charCodeAt(k)===94?(ga=I,k++):(ga=r,St===0&&Ar(C)))),ga!==r?(Ya=Nn(),Ya!==r?(Gc=jt(),Gc!==r?(io=[io,ga,Ya,Gc],xi=io):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r)):(k=xi,xi=r);Vr!==r?(et=Hi,po=b(po,Vr),Hi=po):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function jt(){var Hi,po,Vr,xi,io,ga;return Hi=k,e.charCodeAt(k)===33?(po=E,k++):(po=r,St===0&&Ar(N)),po!==r?(Vr=jt(),Vr!==r?(et=Hi,po=B(Vr),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=k,e.charCodeAt(k)===40?(po=F,k++):(po=r,St===0&&Ar(Q)),po!==r?(Vr=Nn(),Vr!==r?(xi=ke(),xi!==r?(io=Nn(),io!==r?(e.charCodeAt(k)===41?(ga=X,k++):(ga=r,St===0&&Ar(ae)),ga!==r?(et=Hi,po=ne(xi),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r)):(k=Hi,Hi=r),Hi===r&&(Hi=Fn())),Hi}function Fn(){var Hi,po,Vr,xi,io;if(Hi=k,po=Nn(),po!==r){if(Vr=k,xi=[],ce.test(e.charAt(k))?(io=e.charAt(k),k++):(io=r,St===0&&Ar(fe)),io!==r)for(;io!==r;)xi.push(io),ce.test(e.charAt(k))?(io=e.charAt(k),k++):(io=r,St===0&&Ar(fe));else xi=r;xi!==r?Vr=e.substring(Vr,k):Vr=xi,Vr!==r?(et=k,xi=ue(Vr),xi?xi=void 0:xi=r,xi!==r?(et=Hi,po=de(Vr),Hi=po):(k=Hi,Hi=r)):(k=Hi,Hi=r)}else k=Hi,Hi=r;return Hi}function Nn(){var Hi,po;for(St++,Hi=[],Se.test(e.charAt(k))?(po=e.charAt(k),k++):(po=r,St===0&&Ar(De));po!==r;)Hi.push(po),Se.test(e.charAt(k))?(po=e.charAt(k),k++):(po=r,St===0&&Ar(De));return St--,Hi===r&&(po=r,St===0&&Ar(be)),Hi}if(At=a(),At!==r&&k===e.length)return At;throw At!==r&&k{var{parse:Hno}=dBn();olt.makeParser=(e=/[a-z]+/)=>(t,r)=>Hno(t,{queryPattern:e,checkFn:r});olt.parse=olt.makeParser()});var IBn=H((wMl,fBn)=>{"use strict";fBn.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var U6t=H((TMl,mBn)=>{var g3e=IBn(),hBn={};for(let e of Object.keys(g3e))hBn[g3e[e]]=e;var dd={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};mBn.exports=dd;for(let e of Object.keys(dd)){if(!("channels"in dd[e]))throw new Error("missing channels property: "+e);if(!("labels"in dd[e]))throw new Error("missing channel labels property: "+e);if(dd[e].labels.length!==dd[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=dd[e];delete dd[e].channels,delete dd[e].labels,Object.defineProperty(dd[e],"channels",{value:t}),Object.defineProperty(dd[e],"labels",{value:r})}dd.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f;o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360);let I=(a+o)/2;return o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};dd.rgb.hsv=function(e){let t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?(a=0,o=0):(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};dd.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],a=dd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};dd.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(1-t,1-r,1-n),o=(1-t-a)/(1-a)||0,l=(1-r-a)/(1-a)||0,A=(1-n-a)/(1-a)||0;return[o*100,l*100,A*100,a*100]};function Yno(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}dd.rgb.keyword=function(e){let t=hBn[e];if(t)return t;let r=1/0,n;for(let a of Object.keys(g3e)){let o=g3e[a],l=Yno(e,o);l.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92;let a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};dd.rgb.lab=function(e){let t=dd.rgb.xyz(e),r=t[0],n=t[1],a=t[2];r/=95.047,n/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*n-16,l=500*(r-n),A=200*(n-a);return[o,l,A]};dd.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?a=n*(1+r):a=n+r-n*r;let A=2*n-a,f=[0,0,0];for(let I=0;I<3;I++)o=t+1/3*-(I-1),o<0&&o++,o>1&&o--,6*o<1?l=A+(a-A)*6*o:2*o<1?l=a:3*o<2?l=A+(a-A)*(2/3-o)*6:l=A,f[I]=l*255;return f};dd.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o;let l=(n+r)/2,A=n===0?2*a/(o+a):2*r/(n+r);return[t,A*100,l*100]};dd.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};dd.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l;l=(2-r)*n;let A=(2-r)*a;return o=r*a,o/=A<=1?A:2-A,o=o||0,l/=2,[t,o*100,l*100]};dd.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o;a>1&&(r/=a,n/=a);let l=Math.floor(6*t),A=1-n;o=6*t-l,l&1&&(o=1-o);let f=r+o*(A-r),I,C,b;switch(l){default:case 6:case 0:I=A,C=f,b=r;break;case 1:I=f,C=A,b=r;break;case 2:I=r,C=A,b=f;break;case 3:I=r,C=f,b=A;break;case 4:I=f,C=r,b=A;break;case 5:I=A,C=r,b=f;break}return[I*255,C*255,b*255]};dd.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a);return[o*255,l*255,A*255]};dd.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,l=l>.0031308?1.055*l**(1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};dd.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let a=116*r-16,o=500*(t-r),l=200*(r-n);return[a,o,l]};dd.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;let A=o**3,f=a**3,I=l**3;return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};dd.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],a;a=Math.atan2(n,r)*360/2/Math.PI,a<0&&(a+=360);let l=Math.sqrt(r*r+n*n);return[t,l,a]};dd.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),l=r*Math.sin(a);return[t,o,l]};dd.rgb.ansi16=function(e,t=null){let[r,n,a]=e,o=t===null?dd.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let l=30+(Math.round(a/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return o===2&&(l+=60),l};dd.hsv.ansi16=function(e){return dd.rgb.ansi16(dd.hsv.rgb(e),e[2])};dd.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};dd.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};dd.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,n,a]};dd.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};dd.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(A=>A+A).join(""));let n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};dd.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l,f/=6,f%=1,[f*360,l*100,A*100]};dd.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),a=0;return n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};dd.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};dd.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};dd.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};dd.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};dd.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};dd.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};dd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};dd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};dd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};dd.gray.hsl=function(e){return[0,0,e[0]]};dd.gray.hsv=dd.gray.hsl;dd.gray.hwb=function(e){return[0,100,e[0]]};dd.gray.cmyk=function(e){return[0,0,0,e[0]]};dd.gray.lab=function(e){return[e[0],0,0]};dd.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n};dd.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var _Bn=H((RMl,CBn)=>{var alt=U6t();function Qno(){let e={},t=Object.keys(alt);for(let r=t.length,n=0;n{var K6t=U6t(),Kno=_Bn(),kSe={},jno=Object.keys(K6t);function zno(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function qno(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let a=e(r);if(typeof a=="object")for(let o=a.length,l=0;l{kSe[e]={},Object.defineProperty(kSe[e],"channels",{value:K6t[e].channels}),Object.defineProperty(kSe[e],"labels",{value:K6t[e].labels});let t=Kno(e);Object.keys(t).forEach(n=>{let a=t[n];kSe[e][n]=qno(a),kSe[e][n].raw=zno(a)})});yBn.exports=kSe});var llt=H((DMl,wBn)=>{"use strict";var EBn=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,SBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};5;${n}m`},vBn=(e,t)=>(...r)=>{let n=e(...r);return`\x1B[${38+t};2;${n[0]};${n[1]};${n[2]}m`},clt=e=>e,BBn=(e,t,r)=>[e,t,r],xSe=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let n=r();return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0}),n},enumerable:!0,configurable:!0})},j6t,GSe=(e,t,r,n)=>{j6t===void 0&&(j6t=bBn());let a=n?10:0,o={};for(let[l,A]of Object.entries(j6t)){let f=l==="ansi16"?"ansi":l;l===t?o[f]=e(r,a):typeof A=="object"&&(o[f]=e(A[t],a))}return o};function $no(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,n]of Object.entries(t)){for(let[a,o]of Object.entries(n))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:n,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",xSe(t.color,"ansi",()=>GSe(EBn,"ansi16",clt,!1)),xSe(t.color,"ansi256",()=>GSe(SBn,"ansi256",clt,!1)),xSe(t.color,"ansi16m",()=>GSe(vBn,"rgb",BBn,!1)),xSe(t.bgColor,"ansi",()=>GSe(EBn,"ansi16",clt,!0)),xSe(t.bgColor,"ansi256",()=>GSe(SBn,"ansi256",clt,!0)),xSe(t.bgColor,"ansi16m",()=>GSe(vBn,"rgb",BBn,!0)),t}Object.defineProperty(wBn,"exports",{enumerable:!0,get:$no})});var z6t=H((kMl,TBn)=>{"use strict";TBn.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n{"use strict";var eio=wt("os"),RBn=wt("tty"),j5=z6t(),{env:JN}=process,roe;j5("no-color")||j5("no-colors")||j5("color=false")||j5("color=never")?roe=0:(j5("color")||j5("colors")||j5("color=true")||j5("color=always"))&&(roe=1);"FORCE_COLOR"in JN&&(JN.FORCE_COLOR==="true"?roe=1:JN.FORCE_COLOR==="false"?roe=0:roe=JN.FORCE_COLOR.length===0?1:Math.min(parseInt(JN.FORCE_COLOR,10),3));function q6t(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function $6t(e,t){if(roe===0)return 0;if(j5("color=16m")||j5("color=full")||j5("color=truecolor"))return 3;if(j5("color=256"))return 2;if(e&&!t&&roe===void 0)return 0;let r=roe||0;if(JN.TERM==="dumb")return r;if(process.platform==="win32"){let n=eio.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in JN)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in JN)||JN.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in JN)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(JN.TEAMCITY_VERSION)?1:0;if(JN.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in JN){let n=parseInt((JN.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(JN.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(JN.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(JN.TERM)||"COLORTERM"in JN?1:r}function tio(e){let t=$6t(e,e&&e.isTTY);return q6t(t)}NBn.exports={supportsColor:tio,stdout:q6t($6t(!0,RBn.isatty(1))),stderr:q6t($6t(!0,RBn.isatty(2)))}});var kBn=H((GMl,DBn)=>{"use strict";var rio=(e,t,r)=>{let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.substr(o,n-o)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.substr(o),l},nio=(e,t,r,n)=>{let a=0,o="";do{let l=e[n-1]==="\r";o+=e.substr(a,(l?n-1:n)-a)+t+(l?`\r -`:` -`)+r,a=n+1,n=e.indexOf(` -`,a)}while(n!==-1);return o+=e.substr(a),o};DBn.exports={stringReplaceAll:rio,stringEncaseCRLFWithFirstIndex:nio}});var LBn=H((FMl,ZBn)=>{"use strict";var iio=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,xBn=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,sio=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,oio=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,aio=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function FBn(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):aio.get(e)||e}function cio(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n){let l=Number(o);if(!Number.isNaN(l))r.push(l);else if(a=o.match(sio))r.push(a[2].replace(oio,(A,f,I)=>f?FBn(f):I));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function lio(e){xBn.lastIndex=0;let t=[],r;for(;(r=xBn.exec(e))!==null;){let n=r[1];if(r[2]){let a=cio(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function GBn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);n=o.length>0?n[a](...o):n[a]}return n}ZBn.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(iio,(o,l,A,f,I,C)=>{if(l)a.push(FBn(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:GBn(e,r)(b)),r.push({inverse:A,styles:lio(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(GBn(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var VK=H((ZMl,HBn)=>{"use strict";var A3e=llt(),{stdout:r7t,stderr:n7t}=e7t(),{stringReplaceAll:uio,stringEncaseCRLFWithFirstIndex:gio}=kBn(),{isArray:ult}=Array,PBn=["ansi","ansi","ansi256","ansi16m"],FSe=Object.create(null),Aio=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=r7t?r7t.level:0;e.level=t.level===void 0?r:t.level},i7t=class{constructor(t){return WBn(t)}},WBn=e=>{let t={};return Aio(t,e),t.template=(...r)=>MBn(t.template,...r),Object.setPrototypeOf(t,glt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=i7t,t.template};function glt(e){return WBn(e)}for(let[e,t]of Object.entries(A3e))FSe[e]={get(){let r=Alt(this,s7t(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};FSe.visible={get(){let e=Alt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var OBn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of OBn)FSe[e]={get(){let{level:t}=this;return function(...r){let n=s7t(A3e.color[PBn[t]][e](...r),A3e.color.close,this._styler);return Alt(this,n,this._isEmpty)}}};for(let e of OBn){let t="bg"+e[0].toUpperCase()+e.slice(1);FSe[t]={get(){let{level:r}=this;return function(...n){let a=s7t(A3e.bgColor[PBn[r]][e](...n),A3e.bgColor.close,this._styler);return Alt(this,a,this._isEmpty)}}}}var dio=Object.defineProperties(()=>{},{...FSe,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),s7t=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},Alt=(e,t,r)=>{let n=(...a)=>ult(a[0])&&ult(a[0].raw)?VBn(n,MBn(n,...a)):VBn(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,dio),n._generator=e,n._styler=t,n._isEmpty=r,n},VBn=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=uio(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=gio(t,a,n,o)),n+t+a},t7t,MBn=(e,...t)=>{let[r]=t;if(!ult(r)||!ult(r.raw))return t.join(" ");let n=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";z5.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;z5.find=(e,t)=>e.nodes.find(r=>r.type===t);z5.exceedsLimit=(e,t,r=1,n)=>n===!1||!z5.isInteger(e)||!z5.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=n;z5.escapeNode=(e,t=0,r)=>{let n=e.nodes[t];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};z5.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);z5.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;z5.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;z5.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);z5.flatten=(...e)=>{let t=[],r=n=>{for(let a=0;a{"use strict";var YBn=plt();QBn.exports=(e,t={})=>{let r=(n,a={})=>{let o=t.escapeInvalid&&YBn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A="";if(n.value)return(o||l)&&YBn.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let f of n.nodes)A+=r(f);return A};return r(e)}});var JBn=H((PMl,XBn)=>{"use strict";XBn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var rwn=H((WMl,twn)=>{"use strict";var UBn=JBn(),Gfe=(e,t,r)=>{if(UBn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(UBn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let a=String(n.relaxZeros),o=String(n.shorthand),l=String(n.capture),A=String(n.wrap),f=e+":"+t+"="+a+o+l+A;if(Gfe.cache.hasOwnProperty(f))return Gfe.cache[f].result;let I=Math.min(e,t),C=Math.max(e,t);if(Math.abs(I-C)===1){let F=e+"|"+t;return n.capture?`(${F})`:n.wrap===!1?F:`(?:${F})`}let b=ewn(e)||ewn(t),E={min:e,max:t,a:I,b:C},N=[],B=[];if(b&&(E.isPadded=b,E.maxLen=String(E.max).length),I<0){let F=C<0?Math.abs(C):1;B=KBn(F,Math.abs(I),E,n),I=E.a=0}return C>=0&&(N=KBn(I,C,E,n)),E.negatives=B,E.positives=N,E.result=pio(B,N,n),n.capture===!0?E.result=`(${E.result})`:n.wrap!==!1&&N.length+B.length>1&&(E.result=`(?:${E.result})`),Gfe.cache[f]=E,E.result};function pio(e,t,r){let n=o7t(e,t,"-",!1,r)||[],a=o7t(t,e,"",!1,r)||[],o=o7t(e,t,"-?",!0,r)||[];return n.concat(o).concat(a).join("|")}function fio(e,t){let r=1,n=1,a=zBn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=zBn(e,r);for(a=qBn(t+1,n)-1;e1&&A.count.pop(),A.count.push(C.count[0]),A.string=A.pattern+$Bn(A.count),l=I+1;continue}r.isPadded&&(b=_io(I,r,n)),C.string=b+C.pattern+$Bn(C.count),o.push(C),l=I+1,A=C}return o}function o7t(e,t,r,n,a){let o=[];for(let l of e){let{string:A}=l;!n&&!jBn(t,"string",A)&&o.push(r+A),n&&jBn(t,"string",A)&&o.push(r+A)}return o}function hio(e,t){let r=[];for(let n=0;nt?1:t>e?-1:0}function jBn(e,t,r){return e.some(n=>n[t]===r)}function zBn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function qBn(e,t){return e-e%Math.pow(10,t)}function $Bn(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function Cio(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function ewn(e){return/^-?(0+)\d/.test(e)}function _io(e,t,r){if(!t.isPadded)return e;let n=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${n}}`:`0{${n}}`}}Gfe.cache={};Gfe.clearCache=()=>Gfe.cache={};twn.exports=Gfe});var l7t=H((OMl,lwn)=>{"use strict";var yio=wt("util"),iwn=rwn(),nwn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),bio=e=>t=>e===!0?Number(t):String(t),a7t=e=>typeof e=="number"||typeof e=="string"&&e!=="",d3e=e=>Number.isInteger(+e),c7t=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},Eio=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,Sio=(e,t,r)=>{if(t>0){let n=e[0]==="-"?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return r===!1?String(e):e},hlt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((A,f)=>Af?1:0),e.positives.sort((A,f)=>Af?1:0);let n=t.capture?"":"?:",a="",o="",l;return e.positives.length&&(a=e.positives.map(A=>hlt(String(A),r)).join("|")),e.negatives.length&&(o=`-(${n}${e.negatives.map(A=>hlt(String(A),r)).join("|")})`),a&&o?l=`${a}|${o}`:l=a||o,t.wrap?`(${n}${l})`:l},swn=(e,t,r,n)=>{if(r)return iwn(e,t,{wrap:!1,...n});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},own=(e,t,r)=>{if(Array.isArray(e)){let n=r.wrap===!0,a=r.capture?"":"?:";return n?`(${a}${e.join("|")})`:e.join("|")}return iwn(e,t,r)},awn=(...e)=>new RangeError("Invalid range arguments: "+yio.inspect(...e)),cwn=(e,t,r)=>{if(r.strictRanges===!0)throw awn([e,t]);return[]},Bio=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},wio=(e,t,r=1,n={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(n.strictRanges===!0)throw awn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let l=a>o,A=String(e),f=String(t),I=String(r);r=Math.max(Math.abs(r),1);let C=c7t(A)||c7t(f)||c7t(I),b=C?Math.max(A.length,f.length,I.length):0,E=C===!1&&Eio(e,t,n)===!1,N=n.transform||bio(E);if(n.toRegex&&r===1)return swn(hlt(e,b),hlt(t,b),!0,n);let B={negatives:[],positives:[]},F=ae=>B[ae<0?"negatives":"positives"].push(Math.abs(ae)),Q=[],X=0;for(;l?a>=o:a<=o;)n.toRegex===!0&&r>1?F(a):Q.push(Sio(N(a,X),b,E)),a=l?a-r:a+r,X++;return n.toRegex===!0?r>1?vio(B,n,b):own(Q,null,{wrap:!1,...n}):Q},Tio=(e,t,r=1,n={})=>{if(!d3e(e)&&e.length>1||!d3e(t)&&t.length>1)return cwn(e,t,n);let a=n.transform||(E=>String.fromCharCode(E)),o=`${e}`.charCodeAt(0),l=`${t}`.charCodeAt(0),A=o>l,f=Math.min(o,l),I=Math.max(o,l);if(n.toRegex&&r===1)return swn(f,I,!1,n);let C=[],b=0;for(;A?o>=l:o<=l;)C.push(a(o,b)),o=A?o-r:o+r,b++;return n.toRegex===!0?own(C,null,{wrap:!1,options:n}):C},Ilt=(e,t,r,n={})=>{if(t==null&&a7t(e))return[e];if(!a7t(e)||!a7t(t))return cwn(e,t,n);if(typeof r=="function")return Ilt(e,t,1,{transform:r});if(nwn(r))return Ilt(e,t,0,r);let a={...n};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,d3e(r)?d3e(e)&&d3e(t)?wio(e,t,r,a):Tio(e,t,Math.max(Math.abs(r),1),a):r!=null&&!nwn(r)?Bio(r,a):Ilt(e,t,1,r)};lwn.exports=Ilt});var Awn=H((MMl,gwn)=>{"use strict";var Rio=l7t(),uwn=plt(),Nio=(e,t={})=>{let r=(n,a={})=>{let o=uwn.isInvalidBrace(a),l=n.invalid===!0&&t.escapeInvalid===!0,A=o===!0||l===!0,f=t.escapeInvalid===!0?"\\":"",I="";if(n.isOpen===!0)return f+n.value;if(n.isClose===!0)return console.log("node.isClose",f,n.value),f+n.value;if(n.type==="open")return A?f+n.value:"(";if(n.type==="close")return A?f+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":A?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let C=uwn.reduce(n.nodes),b=Rio(...C,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(b.length!==0)return C.length>1&&b.length>1?`(${b})`:b}if(n.nodes)for(let C of n.nodes)I+=r(C,n);return I};return r(e)};gwn.exports=Nio});var fwn=H((HMl,pwn)=>{"use strict";var Dio=l7t(),dwn=flt(),ZSe=plt(),Ffe=(e="",t="",r=!1)=>{let n=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?ZSe.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)n.push(Ffe(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),n.push(Array.isArray(o)?Ffe(a,o,r):a+o);return ZSe.flatten(n)},kio=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,n=(a,o={})=>{a.queue=[];let l=o,A=o.queue;for(;l.type!=="brace"&&l.type!=="root"&&l.parent;)l=l.parent,A=l.queue;if(a.invalid||a.dollar){A.push(Ffe(A.pop(),dwn(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){A.push(Ffe(A.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let b=ZSe.reduce(a.nodes);if(ZSe.exceedsLimit(...b,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let E=Dio(...b,t);E.length===0&&(E=dwn(a,t)),A.push(Ffe(A.pop(),E)),a.nodes=[];return}let f=ZSe.encloseBrace(a),I=a.queue,C=a;for(;C.type!=="brace"&&C.type!=="root"&&C.parent;)C=C.parent,I=C.queue;for(let b=0;b{"use strict";Iwn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` -`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var bwn=H((QMl,ywn)=>{"use strict";var xio=flt(),{MAX_LENGTH:mwn,CHAR_BACKSLASH:u7t,CHAR_BACKTICK:Gio,CHAR_COMMA:Fio,CHAR_DOT:Zio,CHAR_LEFT_PARENTHESES:Lio,CHAR_RIGHT_PARENTHESES:Vio,CHAR_LEFT_CURLY_BRACE:Pio,CHAR_RIGHT_CURLY_BRACE:Wio,CHAR_LEFT_SQUARE_BRACKET:Cwn,CHAR_RIGHT_SQUARE_BRACKET:_wn,CHAR_DOUBLE_QUOTE:Oio,CHAR_SINGLE_QUOTE:Mio,CHAR_NO_BREAK_SPACE:Hio,CHAR_ZERO_WIDTH_NOBREAK_SPACE:Yio}=hwn(),Qio=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},n=typeof r.maxLength=="number"?Math.min(mwn,r.maxLength):mwn;if(e.length>n)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${n})`);let a={type:"root",input:e,nodes:[]},o=[a],l=a,A=a,f=0,I=e.length,C=0,b=0,E,N=()=>e[C++],B=F=>{if(F.type==="text"&&A.type==="dot"&&(A.type="text"),A&&A.type==="text"&&F.type==="text"){A.value+=F.value;return}return l.nodes.push(F),F.parent=l,F.prev=A,A=F,F};for(B({type:"bos"});C0){if(l.ranges>0){l.ranges=0;let F=l.nodes.shift();l.nodes=[F,{type:"text",value:xio(l)}]}B({type:"comma",value:E}),l.commas++;continue}if(E===Zio&&b>0&&l.commas===0){let F=l.nodes;if(b===0||F.length===0){B({type:"text",value:E});continue}if(A.type==="dot"){if(l.range=[],A.value+=E,A.type="range",l.nodes.length!==3&&l.nodes.length!==5){l.invalid=!0,l.ranges=0,A.type="text";continue}l.ranges++,l.args=[];continue}if(A.type==="range"){F.pop();let Q=F[F.length-1];Q.value+=A.value+E,A=Q,l.ranges--;continue}B({type:"dot",value:E});continue}B({type:"text",value:E})}do if(l=o.pop(),l.type!=="root"){l.nodes.forEach(X=>{X.nodes||(X.type==="open"&&(X.isOpen=!0),X.type==="close"&&(X.isClose=!0),X.nodes||(X.type="text"),X.invalid=!0)});let F=o[o.length-1],Q=F.nodes.indexOf(l);F.nodes.splice(Q,1,...l.nodes)}while(o.length>0);return B({type:"eos"}),a};ywn.exports=Qio});var vwn=H((XMl,Swn)=>{"use strict";var Ewn=flt(),Xio=Awn(),Jio=fwn(),Uio=bwn(),NW=(e,t={})=>{let r=[];if(Array.isArray(e))for(let n of e){let a=NW.create(n,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(NW.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};NW.parse=(e,t={})=>Uio(e,t);NW.stringify=(e,t={})=>Ewn(typeof e=="string"?NW.parse(e,t):e,t);NW.compile=(e,t={})=>(typeof e=="string"&&(e=NW.parse(e,t)),Xio(e,t));NW.expand=(e,t={})=>{typeof e=="string"&&(e=NW.parse(e,t));let r=Jio(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};NW.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?NW.compile(e,t):NW.expand(e,t);Swn.exports=NW});var p3e=H((JMl,Nwn)=>{"use strict";var Kio=wt("path"),PK="\\\\/",Bwn=`[^${PK}]`,Uq="\\.",jio="\\+",zio="\\?",mlt="\\/",qio="(?=.)",wwn="[^/]",g7t=`(?:${mlt}|$)`,Twn=`(?:^|${mlt})`,A7t=`${Uq}{1,2}${g7t}`,$io=`(?!${Uq})`,eso=`(?!${Twn}${A7t})`,tso=`(?!${Uq}{0,1}${g7t})`,rso=`(?!${A7t})`,nso=`[^.${mlt}]`,iso=`${wwn}*?`,Rwn={DOT_LITERAL:Uq,PLUS_LITERAL:jio,QMARK_LITERAL:zio,SLASH_LITERAL:mlt,ONE_CHAR:qio,QMARK:wwn,END_ANCHOR:g7t,DOTS_SLASH:A7t,NO_DOT:$io,NO_DOTS:eso,NO_DOT_SLASH:tso,NO_DOTS_SLASH:rso,QMARK_NO_DOT:nso,STAR:iso,START_ANCHOR:Twn},sso={...Rwn,SLASH_LITERAL:`[${PK}]`,QMARK:Bwn,STAR:`${Bwn}*?`,DOTS_SLASH:`${Uq}{1,2}(?:[${PK}]|$)`,NO_DOT:`(?!${Uq})`,NO_DOTS:`(?!(?:^|[${PK}])${Uq}{1,2}(?:[${PK}]|$))`,NO_DOT_SLASH:`(?!${Uq}{0,1}(?:[${PK}]|$))`,NO_DOTS_SLASH:`(?!${Uq}{1,2}(?:[${PK}]|$))`,QMARK_NO_DOT:`[^.${PK}]`,START_ANCHOR:`(?:^|[${PK}])`,END_ANCHOR:`(?:[${PK}]|$)`},oso={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Nwn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:oso,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:Kio.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?sso:Rwn}}});var f3e=H(Y9=>{"use strict";var aso=wt("path"),cso=process.platform==="win32",{REGEX_BACKSLASH:lso,REGEX_REMOVE_BACKSLASH:uso,REGEX_SPECIAL_CHARS:gso,REGEX_SPECIAL_CHARS_GLOBAL:Aso}=p3e();Y9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);Y9.hasRegexChars=e=>gso.test(e);Y9.isRegexChar=e=>e.length===1&&Y9.hasRegexChars(e);Y9.escapeRegex=e=>e.replace(Aso,"\\$1");Y9.toPosixSlashes=e=>e.replace(lso,"/");Y9.removeBackslashes=e=>e.replace(uso,t=>t==="\\"?"":t);Y9.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};Y9.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:cso===!0||aso.sep==="\\";Y9.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?Y9.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};Y9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};Y9.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var Vwn=H((KMl,Lwn)=>{"use strict";var Dwn=f3e(),{CHAR_ASTERISK:d7t,CHAR_AT:dso,CHAR_BACKWARD_SLASH:I3e,CHAR_COMMA:pso,CHAR_DOT:p7t,CHAR_EXCLAMATION_MARK:f7t,CHAR_FORWARD_SLASH:Zwn,CHAR_LEFT_CURLY_BRACE:I7t,CHAR_LEFT_PARENTHESES:h7t,CHAR_LEFT_SQUARE_BRACKET:fso,CHAR_PLUS:Iso,CHAR_QUESTION_MARK:kwn,CHAR_RIGHT_CURLY_BRACE:hso,CHAR_RIGHT_PARENTHESES:xwn,CHAR_RIGHT_SQUARE_BRACKET:mso}=p3e(),Gwn=e=>e===Zwn||e===I3e,Fwn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Cso=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,X=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),et=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Me=f.slice(0,C),f=f.slice(C),b-=C),ct&&B===!0&&b>0?(ct=f.slice(0,b),je=f.slice(b)):B===!0?(ct="",je=f):ct=f,ct&&ct!==""&&ct!=="/"&&ct!==f&&Gwn(ct.charCodeAt(ct.length-1))&&(ct=ct.slice(0,-1)),r.unescape===!0&&(je&&(je=Dwn.removeBackslashes(je)),ct&&ae===!0&&(ct=Dwn.removeBackslashes(ct)));let St={prefix:Me,input:e,start:C,base:ct,glob:je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(St.maxDepth=0,Gwn(be)||l.push(Se),St.tokens=l),r.parts===!0||r.tokens===!0){let At;for(let Yt=0;Yt{"use strict";var Clt=p3e(),DW=f3e(),{MAX_LENGTH:_lt,POSIX_REGEX_SOURCE:_so,REGEX_NON_SPECIAL_CHARS:yso,REGEX_SPECIAL_CHARS_BACKREF:bso,REPLACEMENTS:Pwn}=Clt,Eso=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>DW.escapeRegex(a)).join("..")}return r},LSe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,m7t=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=Pwn[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(_lt,r.maxLength):_lt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=DW.isWindows(t),I=Clt.globChars(f),C=Clt.extglobChars(I),{DOT_LITERAL:b,PLUS_LITERAL:E,SLASH_LITERAL:N,ONE_CHAR:B,DOTS_SLASH:F,NO_DOT:Q,NO_DOT_SLASH:X,NO_DOTS_SLASH:ae,QMARK:ne,QMARK_NO_DOT:ce,STAR:fe,START_ANCHOR:ue}=I,de=Ar=>`(${A}(?:(?!${ue}${Ar.dot?F:b}).)*?)`,be=r.dot?"":Q,Se=r.dot?ne:ce,De=r.bash===!0?de(r):fe;r.capture&&(De=`(${De})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let k={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=DW.removePrefix(e,k),a=e.length;let et=[],ct=[],Me=[],je=o,St,At=()=>k.index===a-1,Yt=k.peek=(Ar=1)=>e[k.index+Ar],Tr=k.advance=()=>e[++k.index]||"",Nr=()=>e.slice(k.index+1),er=(Ar="",qr=0)=>{k.consumed+=Ar,k.index+=qr},vt=Ar=>{k.output+=Ar.output!=null?Ar.output:Ar.value,er(Ar.value)},xt=()=>{let Ar=1;for(;Yt()==="!"&&(Yt(2)!=="("||Yt(3)==="?");)Tr(),k.start++,Ar++;return Ar%2===0?!1:(k.negated=!0,k.start++,!0)},Zr=Ar=>{k[Ar]++,Me.push(Ar)},qt=Ar=>{k[Ar]--,Me.pop()},Xt=Ar=>{if(je.type==="globstar"){let qr=k.braces>0&&(Ar.type==="comma"||Ar.type==="brace"),_n=Ar.extglob===!0||et.length&&(Ar.type==="pipe"||Ar.type==="paren");Ar.type!=="slash"&&Ar.type!=="paren"&&!qr&&!_n&&(k.output=k.output.slice(0,-je.output.length),je.type="star",je.value="*",je.output=De,k.output+=je.output)}if(et.length&&Ar.type!=="paren"&&(et[et.length-1].inner+=Ar.value),(Ar.value||Ar.output)&&vt(Ar),je&&je.type==="text"&&Ar.type==="text"){je.value+=Ar.value,je.output=(je.output||"")+Ar.value;return}Ar.prev=je,l.push(Ar),je=Ar},lr=(Ar,qr)=>{let _n={...C[qr],conditions:1,inner:""};_n.prev=je,_n.parens=k.parens,_n.output=k.output;let ke=(r.capture?"(":"")+_n.open;Zr("parens"),Xt({type:Ar,value:qr,output:k.output?"":B}),Xt({type:"paren",extglob:!0,value:Tr(),output:ke}),et.push(_n)},cr=Ar=>{let qr=Ar.close+(r.capture?")":""),_n;if(Ar.type==="negate"){let ke=De;if(Ar.inner&&Ar.inner.length>1&&Ar.inner.includes("/")&&(ke=de(r)),(ke!==De||At()||/^\)+$/.test(Nr()))&&(qr=Ar.close=`)$))${ke}`),Ar.inner.includes("*")&&(_n=Nr())&&/^\.[^\\/.]+$/.test(_n)){let jt=m7t(_n,{...t,fastpaths:!1}).output;qr=Ar.close=`)${jt})${ke})`}Ar.prev.type==="bos"&&(k.negatedExtglob=!0)}Xt({type:"paren",extglob:!0,value:St,output:qr}),qt("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Ar=!1,qr=e.replace(bso,(_n,ke,jt,Fn,Nn,Hi)=>Fn==="\\"?(Ar=!0,_n):Fn==="?"?ke?ke+Fn+(Nn?ne.repeat(Nn.length):""):Hi===0?Se+(Nn?ne.repeat(Nn.length):""):ne.repeat(jt.length):Fn==="."?b.repeat(jt.length):Fn==="*"?ke?ke+Fn+(Nn?De:""):De:ke?_n:`\\${_n}`);return Ar===!0&&(r.unescape===!0?qr=qr.replace(/\\/g,""):qr=qr.replace(/\\+/g,_n=>_n.length%2===0?"\\\\":_n?"\\":"")),qr===e&&r.contains===!0?(k.output=e,k):(k.output=DW.wrapOutput(qr,k,t),k)}for(;!At();){if(St=Tr(),St==="\0")continue;if(St==="\\"){let _n=Yt();if(_n==="/"&&r.bash!==!0||_n==="."||_n===";")continue;if(!_n){St+="\\",Xt({type:"text",value:St});continue}let ke=/^\\+/.exec(Nr()),jt=0;if(ke&&ke[0].length>2&&(jt=ke[0].length,k.index+=jt,jt%2!==0&&(St+="\\")),r.unescape===!0?St=Tr():St+=Tr(),k.brackets===0){Xt({type:"text",value:St});continue}}if(k.brackets>0&&(St!=="]"||je.value==="["||je.value==="[^")){if(r.posix!==!1&&St===":"){let _n=je.value.slice(1);if(_n.includes("[")&&(je.posix=!0,_n.includes(":"))){let ke=je.value.lastIndexOf("["),jt=je.value.slice(0,ke),Fn=je.value.slice(ke+2),Nn=_so[Fn];if(Nn){je.value=jt+Nn,k.backtrack=!0,Tr(),!o.output&&l.indexOf(je)===1&&(o.output=B);continue}}}(St==="["&&Yt()!==":"||St==="-"&&Yt()==="]")&&(St=`\\${St}`),St==="]"&&(je.value==="["||je.value==="[^")&&(St=`\\${St}`),r.posix===!0&&St==="!"&&je.value==="["&&(St="^"),je.value+=St,vt({value:St});continue}if(k.quotes===1&&St!=='"'){St=DW.escapeRegex(St),je.value+=St,vt({value:St});continue}if(St==='"'){k.quotes=k.quotes===1?0:1,r.keepQuotes===!0&&Xt({type:"text",value:St});continue}if(St==="("){Zr("parens"),Xt({type:"paren",value:St});continue}if(St===")"){if(k.parens===0&&r.strictBrackets===!0)throw new SyntaxError(LSe("opening","("));let _n=et[et.length-1];if(_n&&k.parens===_n.parens+1){cr(et.pop());continue}Xt({type:"paren",value:St,output:k.parens?")":"\\)"}),qt("parens");continue}if(St==="["){if(r.nobracket===!0||!Nr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(LSe("closing","]"));St=`\\${St}`}else Zr("brackets");Xt({type:"bracket",value:St});continue}if(St==="]"){if(r.nobracket===!0||je&&je.type==="bracket"&&je.value.length===1){Xt({type:"text",value:St,output:`\\${St}`});continue}if(k.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(LSe("opening","["));Xt({type:"text",value:St,output:`\\${St}`});continue}qt("brackets");let _n=je.value.slice(1);if(je.posix!==!0&&_n[0]==="^"&&!_n.includes("/")&&(St=`/${St}`),je.value+=St,vt({value:St}),r.literalBrackets===!1||DW.hasRegexChars(_n))continue;let ke=DW.escapeRegex(je.value);if(k.output=k.output.slice(0,-je.value.length),r.literalBrackets===!0){k.output+=ke,je.value=ke;continue}je.value=`(${A}${ke}|${je.value})`,k.output+=je.value;continue}if(St==="{"&&r.nobrace!==!0){Zr("braces");let _n={type:"brace",value:St,output:"(",outputIndex:k.output.length,tokensIndex:k.tokens.length};ct.push(_n),Xt(_n);continue}if(St==="}"){let _n=ct[ct.length-1];if(r.nobrace===!0||!_n){Xt({type:"text",value:St,output:St});continue}let ke=")";if(_n.dots===!0){let jt=l.slice(),Fn=[];for(let Nn=jt.length-1;Nn>=0&&(l.pop(),jt[Nn].type!=="brace");Nn--)jt[Nn].type!=="dots"&&Fn.unshift(jt[Nn].value);ke=Eso(Fn,r),k.backtrack=!0}if(_n.comma!==!0&&_n.dots!==!0){let jt=k.output.slice(0,_n.outputIndex),Fn=k.tokens.slice(_n.tokensIndex);_n.value=_n.output="\\{",St=ke="\\}",k.output=jt;for(let Nn of Fn)k.output+=Nn.output||Nn.value}Xt({type:"brace",value:St,output:ke}),qt("braces"),ct.pop();continue}if(St==="|"){et.length>0&&et[et.length-1].conditions++,Xt({type:"text",value:St});continue}if(St===","){let _n=St,ke=ct[ct.length-1];ke&&Me[Me.length-1]==="braces"&&(ke.comma=!0,_n="|"),Xt({type:"comma",value:St,output:_n});continue}if(St==="/"){if(je.type==="dot"&&k.index===k.start+1){k.start=k.index+1,k.consumed="",k.output="",l.pop(),je=o;continue}Xt({type:"slash",value:St,output:N});continue}if(St==="."){if(k.braces>0&&je.type==="dot"){je.value==="."&&(je.output=b);let _n=ct[ct.length-1];je.type="dots",je.output+=St,je.value+=St,_n.dots=!0;continue}if(k.braces+k.parens===0&&je.type!=="bos"&&je.type!=="slash"){Xt({type:"text",value:St,output:b});continue}Xt({type:"dot",value:St,output:b});continue}if(St==="?"){if(!(je&&je.value==="(")&&r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){lr("qmark",St);continue}if(je&&je.type==="paren"){let ke=Yt(),jt=St;if(ke==="<"&&!DW.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(je.value==="("&&!/[!=<:]/.test(ke)||ke==="<"&&!/<([!=]|\w+>)/.test(Nr()))&&(jt=`\\${St}`),Xt({type:"text",value:St,output:jt});continue}if(r.dot!==!0&&(je.type==="slash"||je.type==="bos")){Xt({type:"qmark",value:St,output:ce});continue}Xt({type:"qmark",value:St,output:ne});continue}if(St==="!"){if(r.noextglob!==!0&&Yt()==="("&&(Yt(2)!=="?"||!/[!=<:]/.test(Yt(3)))){lr("negate",St);continue}if(r.nonegate!==!0&&k.index===0){xt();continue}}if(St==="+"){if(r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){lr("plus",St);continue}if(je&&je.value==="("||r.regex===!1){Xt({type:"plus",value:St,output:E});continue}if(je&&(je.type==="bracket"||je.type==="paren"||je.type==="brace")||k.parens>0){Xt({type:"plus",value:St});continue}Xt({type:"plus",value:E});continue}if(St==="@"){if(r.noextglob!==!0&&Yt()==="("&&Yt(2)!=="?"){Xt({type:"at",extglob:!0,value:St,output:""});continue}Xt({type:"text",value:St});continue}if(St!=="*"){(St==="$"||St==="^")&&(St=`\\${St}`);let _n=yso.exec(Nr());_n&&(St+=_n[0],k.index+=_n[0].length),Xt({type:"text",value:St});continue}if(je&&(je.type==="globstar"||je.star===!0)){je.type="star",je.star=!0,je.value+=St,je.output=De,k.backtrack=!0,k.globstar=!0,er(St);continue}let Ar=Nr();if(r.noextglob!==!0&&/^\([^?]/.test(Ar)){lr("star",St);continue}if(je.type==="star"){if(r.noglobstar===!0){er(St);continue}let _n=je.prev,ke=_n.prev,jt=_n.type==="slash"||_n.type==="bos",Fn=ke&&(ke.type==="star"||ke.type==="globstar");if(r.bash===!0&&(!jt||Ar[0]&&Ar[0]!=="/")){Xt({type:"star",value:St,output:""});continue}let Nn=k.braces>0&&(_n.type==="comma"||_n.type==="brace"),Hi=et.length&&(_n.type==="pipe"||_n.type==="paren");if(!jt&&_n.type!=="paren"&&!Nn&&!Hi){Xt({type:"star",value:St,output:""});continue}for(;Ar.slice(0,3)==="/**";){let po=e[k.index+4];if(po&&po!=="/")break;Ar=Ar.slice(3),er("/**",3)}if(_n.type==="bos"&&At()){je.type="globstar",je.value+=St,je.output=de(r),k.output=je.output,k.globstar=!0,er(St);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&!Fn&&At()){k.output=k.output.slice(0,-(_n.output+je.output).length),_n.output=`(?:${_n.output}`,je.type="globstar",je.output=de(r)+(r.strictSlashes?")":"|$)"),je.value+=St,k.globstar=!0,k.output+=_n.output+je.output,er(St);continue}if(_n.type==="slash"&&_n.prev.type!=="bos"&&Ar[0]==="/"){let po=Ar[1]!==void 0?"|$":"";k.output=k.output.slice(0,-(_n.output+je.output).length),_n.output=`(?:${_n.output}`,je.type="globstar",je.output=`${de(r)}${N}|${N}${po})`,je.value+=St,k.output+=_n.output+je.output,k.globstar=!0,er(St+Tr()),Xt({type:"slash",value:"/",output:""});continue}if(_n.type==="bos"&&Ar[0]==="/"){je.type="globstar",je.value+=St,je.output=`(?:^|${N}|${de(r)}${N})`,k.output=je.output,k.globstar=!0,er(St+Tr()),Xt({type:"slash",value:"/",output:""});continue}k.output=k.output.slice(0,-je.output.length),je.type="globstar",je.output=de(r),je.value+=St,k.output+=je.output,k.globstar=!0,er(St);continue}let qr={type:"star",value:St,output:De};if(r.bash===!0){qr.output=".*?",(je.type==="bos"||je.type==="slash")&&(qr.output=be+qr.output),Xt(qr);continue}if(je&&(je.type==="bracket"||je.type==="paren")&&r.regex===!0){qr.output=St,Xt(qr);continue}(k.index===k.start||je.type==="slash"||je.type==="dot")&&(je.type==="dot"?(k.output+=X,je.output+=X):r.dot===!0?(k.output+=ae,je.output+=ae):(k.output+=be,je.output+=be),Yt()!=="*"&&(k.output+=B,je.output+=B)),Xt(qr)}for(;k.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(LSe("closing","]"));k.output=DW.escapeLast(k.output,"["),qt("brackets")}for(;k.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(LSe("closing",")"));k.output=DW.escapeLast(k.output,"("),qt("parens")}for(;k.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(LSe("closing","}"));k.output=DW.escapeLast(k.output,"{"),qt("braces")}if(r.strictSlashes!==!0&&(je.type==="star"||je.type==="bracket")&&Xt({type:"maybe_slash",value:"",output:`${N}?`}),k.backtrack===!0){k.output="";for(let Ar of k.tokens)k.output+=Ar.output!=null?Ar.output:Ar.value,Ar.suffix&&(k.output+=Ar.suffix)}return k};m7t.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(_lt,r.maxLength):_lt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=Pwn[e]||e;let o=DW.isWindows(t),{DOT_LITERAL:l,SLASH_LITERAL:A,ONE_CHAR:f,DOTS_SLASH:I,NO_DOT:C,NO_DOTS:b,NO_DOTS_SLASH:E,STAR:N,START_ANCHOR:B}=Clt.globChars(o),F=r.dot?b:C,Q=r.dot?E:C,X=r.capture?"":"?:",ae={negated:!1,prefix:""},ne=r.bash===!0?".*?":N;r.capture&&(ne=`(${ne})`);let ce=be=>be.noglobstar===!0?ne:`(${X}(?:(?!${B}${be.dot?I:l}).)*?)`,fe=be=>{switch(be){case"*":return`${F}${f}${ne}`;case".*":return`${l}${f}${ne}`;case"*.*":return`${F}${ne}${l}${f}${ne}`;case"*/*":return`${F}${ne}${A}${f}${Q}${ne}`;case"**":return F+ce(r);case"**/*":return`(?:${F}${ce(r)}${A})?${Q}${f}${ne}`;case"**/*.*":return`(?:${F}${ce(r)}${A})?${Q}${ne}${l}${f}${ne}`;case"**/.*":return`(?:${F}${ce(r)}${A})?${l}${f}${ne}`;default:{let Se=/^(.*?)\.(\w+)$/.exec(be);if(!Se)return;let De=fe(Se[1]);return De?De+l+Se[2]:void 0}}},ue=DW.removePrefix(e,ae),de=fe(ue);return de&&r.strictSlashes!==!0&&(de+=`${A}?`),de};Wwn.exports=m7t});var Hwn=H((zMl,Mwn)=>{"use strict";var Sso=wt("path"),vso=Vwn(),C7t=Own(),_7t=f3e(),Bso=p3e(),wso=e=>e&&typeof e=="object"&&!Array.isArray(e),KB=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>KB(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=wso(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=_7t.isWindows(t),l=n?KB.compileRe(e,t):KB.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=KB(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=KB.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};KB.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?_7t.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=KB.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};KB.matchBase=(e,t,r,n=_7t.isWindows(r))=>(t instanceof RegExp?t:KB.makeRe(t,r)).test(Sso.basename(e));KB.isMatch=(e,t,r)=>KB(t,r)(e);KB.parse=(e,t)=>Array.isArray(e)?e.map(r=>KB.parse(r,t)):C7t(e,{...t,fastpaths:!1});KB.scan=(e,t)=>vso(e,t);KB.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=KB.toRegex(A,t);return n===!0&&(f.state=e),f};KB.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=C7t.fastpaths(e,t)),a.output||(a=C7t(e,t)),KB.compileRe(a,t,r,n)};KB.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};KB.constants=Bso;Mwn.exports=KB});var Qwn=H((qMl,Ywn)=>{"use strict";Ywn.exports=Hwn()});var Ek=H(($Ml,jwn)=>{"use strict";var Jwn=wt("util"),Uwn=vwn(),WK=Qwn(),y7t=f3e(),Xwn=e=>e===""||e==="./",Kwn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},x1=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let n=new Set,a=new Set,o=new Set,l=0,A=C=>{o.add(C.output),r&&r.onResult&&r.onResult(C)};for(let C=0;C!n.has(C));if(r&&I.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(C=>C.replace(/\\/g,"")):t}return I};x1.match=x1;x1.matcher=(e,t)=>WK(e,t);x1.isMatch=(e,t,r)=>WK(t,r)(e);x1.any=x1.isMatch;x1.not=(e,t,r={})=>{t=[].concat(t).map(String);let n=new Set,a=[],o=A=>{r.onResult&&r.onResult(A),a.push(A.output)},l=new Set(x1(e,t,{...r,onResult:o}));for(let A of a)l.has(A)||n.add(A);return[...n]};x1.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${Jwn.inspect(e)}"`);if(Array.isArray(t))return t.some(n=>x1.contains(e,n,r));if(typeof t=="string"){if(Xwn(e)||Xwn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return x1.isMatch(e,t,{...r,contains:!0})};x1.matchKeys=(e,t,r)=>{if(!y7t.isObject(e))throw new TypeError("Expected the first argument to be an object");let n=x1(Object.keys(e),t,r),a={};for(let o of n)a[o]=e[o];return a};x1.some=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=WK(String(a),r);if(n.some(l=>o(l)))return!0}return!1};x1.every=(e,t,r)=>{let n=[].concat(e);for(let a of[].concat(t)){let o=WK(String(a),r);if(!n.every(l=>o(l)))return!1}return!0};x1.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${Jwn.inspect(e)}"`);return[].concat(t).every(n=>WK(n,r)(e))};x1.capture=(e,t,r)=>{let n=y7t.isWindows(r),o=WK.makeRe(String(e),{...r,capture:!0}).exec(n?y7t.toPosixSlashes(t):t);if(o)return o.slice(1).map(l=>l===void 0?"":l)};x1.makeRe=(...e)=>WK.makeRe(...e);x1.scan=(...e)=>WK.scan(...e);x1.parse=(e,t)=>{let r=[];for(let n of[].concat(e||[]))for(let a of Uwn(String(n),t))r.push(WK.parse(a,t));return r};x1.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!Kwn(e)?[e]:Uwn(e,t)};x1.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return x1.braces(e,{...t,expand:!0})};x1.hasBraces=Kwn;jwn.exports=x1});var qwn=H((eHl,zwn)=>{"use strict";zwn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var q5=H((tHl,$wn)=>{"use strict";var Tso=qwn();$wn.exports=e=>typeof e=="string"?e.replace(Tso(),""):e});var E7t=H(b7t=>{"use strict";Object.defineProperty(b7t,Symbol.toStringTag,{value:"Module"});function Rso(e){return arguments.length===0?[]:Array.isArray(e)?e:[e]}b7t.castArray=Rso});var eTn=H(S7t=>{"use strict";Object.defineProperty(S7t,Symbol.toStringTag,{value:"Module"});function Nso(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Size must be an integer greater than zero.");let r=Math.ceil(e.length/t),n=Array(r);for(let a=0;a{"use strict";Object.defineProperty(v7t,Symbol.toStringTag,{value:"Module"});function Dso(e){return Array.isArray(e)?e:Array.from(e)}v7t.toArray=Dso});var tTn=H(B7t=>{"use strict";Object.defineProperty(B7t,Symbol.toStringTag,{value:"Module"});function kso(e){return Number.isSafeInteger(e)&&e>=0}B7t.isLength=kso});var Sf=H(w7t=>{"use strict";Object.defineProperty(w7t,Symbol.toStringTag,{value:"Module"});var xso=tTn();function Gso(e){return e!=null&&typeof e!="function"&&xso.isLength(e.length)}w7t.isArrayLike=Gso});var R7t=H(T7t=>{"use strict";Object.defineProperty(T7t,Symbol.toStringTag,{value:"Module"});var Fso=eTn(),Zso=SZ(),Lso=Sf();function Vso(e,t=1){return t=Math.max(Math.floor(t),0),t===0||!Lso.isArrayLike(e)?[]:Fso.chunk(Zso.toArray(e),t)}T7t.chunk=Vso});var rTn=H(N7t=>{"use strict";Object.defineProperty(N7t,Symbol.toStringTag,{value:"Module"});function Pso(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(D7t,Symbol.toStringTag,{value:"Module"});var Wso=rTn(),Oso=Sf();function Mso(e){return Oso.isArrayLike(e)?Wso.compact(Array.from(e)):[]}D7t.compact=Mso});var h3e=H(x7t=>{"use strict";Object.defineProperty(x7t,Symbol.toStringTag,{value:"Module"});function Hso(e,t=1){let r=[],n=Math.floor(t),a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(G7t,Symbol.toStringTag,{value:"Module"});var Yso=h3e();function Qso(...e){return Yso.flatten(e)}G7t.concat=Qso});var bm=H(Z7t=>{"use strict";Object.defineProperty(Z7t,Symbol.toStringTag,{value:"Module"});function Xso(e){return e}Z7t.identity=Xso});var m3e=H(L7t=>{"use strict";Object.defineProperty(L7t,Symbol.toStringTag,{value:"Module"});function Jso(e){return e==="__proto__"}L7t.isUnsafeProperty=Jso});var VSe=H(V7t=>{"use strict";Object.defineProperty(V7t,Symbol.toStringTag,{value:"Module"});function Uso(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}V7t.isDeepKey=Uso});var Kq=H(P7t=>{"use strict";Object.defineProperty(P7t,Symbol.toStringTag,{value:"Module"});function Kso(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}P7t.toKey=Kso});var qy=H(W7t=>{"use strict";Object.defineProperty(W7t,Symbol.toStringTag,{value:"Module"});function nTn(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(nTn).join(",");let t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}W7t.toString=nTn});var $5=H(O7t=>{"use strict";Object.defineProperty(O7t,Symbol.toStringTag,{value:"Module"});var jso=qy(),zso=Kq();function qso(e){if(Array.isArray(e))return e.map(zso.toKey);if(typeof e=="symbol")return[e];e=jso.toString(e);let t=[],r=e.length;if(r===0)return t;let n=0,a="",o="",l=!1;for(e.charCodeAt(0)===46&&(t.push(""),n++);n{"use strict";Object.defineProperty(H7t,Symbol.toStringTag,{value:"Module"});var M7t=m3e(),$so=VSe(),eoo=Kq(),too=$5();function iTn(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if(M7t.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?$so.isDeepKey(t)?iTn(e,too.toPath(t),r):r:n}case"number":case"symbol":{typeof t=="number"&&(t=eoo.toKey(t));let n=e[t];return n===void 0?r:n}default:{if(Array.isArray(t))return roo(e,t,r);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),M7t.isUnsafeProperty(t))return r;let n=e[t];return n===void 0?r:n}}}function roo(e,t,r){if(t.length===0)return r;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Y7t,Symbol.toStringTag,{value:"Module"});var noo=eM();function ioo(e){return function(t){return noo.get(t,e)}}Y7t.property=ioo});var tM=H(Q7t=>{"use strict";Object.defineProperty(Q7t,Symbol.toStringTag,{value:"Module"});function soo(e){return e!==null&&(typeof e=="object"||typeof e=="function")}Q7t.isObject=soo});var PSe=H(X7t=>{"use strict";Object.defineProperty(X7t,Symbol.toStringTag,{value:"Module"});function ooo(e){return e==null||typeof e!="object"&&typeof e!="function"}X7t.isPrimitive=ooo});var Sk=H(J7t=>{"use strict";Object.defineProperty(J7t,Symbol.toStringTag,{value:"Module"});function aoo(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}J7t.isEqualsSameValueZero=aoo});var blt=H(ylt=>{"use strict";Object.defineProperty(ylt,Symbol.toStringTag,{value:"Module"});var coo=tM(),sTn=PSe(),oTn=Sk();function aTn(e,t,r){return typeof r!="function"?aTn(e,t,()=>{}):U7t(e,t,function n(a,o,l,A,f,I){let C=r(a,o,l,A,f,I);return C!==void 0?!!C:U7t(a,o,n,I)},new Map)}function U7t(e,t,r,n){if(t===e)return!0;switch(typeof t){case"object":return loo(e,t,r,n);case"function":return Object.keys(t).length>0?U7t(e,{...t},r,n):oTn.isEqualsSameValueZero(e,t);default:return coo.isObject(e)?typeof t=="string"?t==="":!0:oTn.isEqualsSameValueZero(e,t)}}function loo(e,t,r,n){if(t==null)return!0;if(Array.isArray(t))return cTn(e,t,r,n);if(t instanceof Map)return uoo(e,t,r,n);if(t instanceof Set)return lTn(e,t,r,n);let a=Object.keys(t);if(e==null||sTn.isPrimitive(e))return a.length===0;if(a.length===0)return!0;if(n?.has(t))return n.get(t)===e;n?.set(t,e);try{for(let o=0;o{"use strict";Object.defineProperty(K7t,Symbol.toStringTag,{value:"Module"});var goo=blt();function Aoo(e,t){return goo.isMatchWith(e,t,()=>{})}K7t.isMatch=Aoo});var _3e=H(j7t=>{"use strict";Object.defineProperty(j7t,Symbol.toStringTag,{value:"Module"});function doo(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}j7t.getSymbols=doo});var Zfe=H(z7t=>{"use strict";Object.defineProperty(z7t,Symbol.toStringTag,{value:"Module"});function poo(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}z7t.getTag=poo});var y3e=H($y=>{"use strict";Object.defineProperty($y,Symbol.toStringTag,{value:"Module"});var foo="[object RegExp]",Ioo="[object String]",hoo="[object Number]",moo="[object Boolean]",Coo="[object Arguments]",_oo="[object Symbol]",yoo="[object Date]",boo="[object Map]",Eoo="[object Set]",Soo="[object Array]",voo="[object Function]",Boo="[object ArrayBuffer]",woo="[object Object]",Too="[object Error]",Roo="[object DataView]",Noo="[object Uint8Array]",Doo="[object Uint8ClampedArray]",koo="[object Uint16Array]",xoo="[object Uint32Array]",Goo="[object BigUint64Array]",Foo="[object Int8Array]",Zoo="[object Int16Array]",Loo="[object Int32Array]",Voo="[object BigInt64Array]",Poo="[object Float32Array]",Woo="[object Float64Array]";$y.argumentsTag=Coo;$y.arrayBufferTag=Boo;$y.arrayTag=Soo;$y.bigInt64ArrayTag=Voo;$y.bigUint64ArrayTag=Goo;$y.booleanTag=moo;$y.dataViewTag=Roo;$y.dateTag=yoo;$y.errorTag=Too;$y.float32ArrayTag=Poo;$y.float64ArrayTag=Woo;$y.functionTag=voo;$y.int16ArrayTag=Zoo;$y.int32ArrayTag=Loo;$y.int8ArrayTag=Foo;$y.mapTag=boo;$y.numberTag=hoo;$y.objectTag=woo;$y.regexpTag=foo;$y.setTag=Eoo;$y.stringTag=Ioo;$y.symbolTag=_oo;$y.uint16ArrayTag=koo;$y.uint32ArrayTag=xoo;$y.uint8ArrayTag=Noo;$y.uint8ClampedArrayTag=Doo});var $7t=H(q7t=>{"use strict";Object.defineProperty(q7t,Symbol.toStringTag,{value:"Module"});var Ooo=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||function(){return this}()||Function("return this")();q7t.globalThis=Ooo});var noe=H(ezt=>{"use strict";Object.defineProperty(ezt,Symbol.toStringTag,{value:"Module"});var uTn=$7t();function Moo(e){return typeof uTn.globalThis.Buffer<"u"&&uTn.globalThis.Buffer.isBuffer(e)}ezt.isBuffer=Moo});var Elt=H(tzt=>{"use strict";Object.defineProperty(tzt,Symbol.toStringTag,{value:"Module"});function Hoo(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}tzt.isTypedArray=Hoo});var rzt=H(b3e=>{"use strict";Object.defineProperty(b3e,Symbol.toStringTag,{value:"Module"});var Yoo=_3e(),Qoo=Zfe(),Zv=y3e(),Xoo=noe(),Joo=PSe(),Uoo=Elt();function Koo(e,t){return Lfe(e,void 0,e,new Map,t)}function Lfe(e,t,r,n=new Map,a=void 0){let o=a?.(e,t,r,n);if(o!==void 0)return o;if(Joo.isPrimitive(e))return e;if(n.has(e))return n.get(e);if(Array.isArray(e)){let l=new Array(e.length);n.set(e,l);for(let A=0;A{"use strict";Object.defineProperty(nzt,Symbol.toStringTag,{value:"Module"});var zoo=rzt();function qoo(e){return zoo.cloneDeepWithImpl(e,void 0,e,new Map,void 0)}nzt.cloneDeep=qoo});var OK=H(szt=>{"use strict";Object.defineProperty(szt,Symbol.toStringTag,{value:"Module"});var $oo=C3e(),eao=izt();function tao(e){return e=eao.cloneDeep(e),t=>$oo.isMatch(t,e)}szt.matches=tao});var S3e=H(ozt=>{"use strict";Object.defineProperty(ozt,Symbol.toStringTag,{value:"Module"});var Slt=rzt(),rao=Zfe(),E3e=y3e();function nao(e,t){return Slt.cloneDeepWith(e,(r,n,a,o)=>{let l=t?.(r,n,a,o);if(l!==void 0)return l;if(typeof e=="object"){if(rao.getTag(e)===E3e.objectTag&&typeof e.constructor!="function"){let A={};return o.set(e,A),Slt.copyProperties(A,e,a,o),A}switch(Object.prototype.toString.call(e)){case E3e.numberTag:case E3e.stringTag:case E3e.booleanTag:{let A=new e.constructor(e?.valueOf());return Slt.copyProperties(A,e),A}case E3e.argumentsTag:{let A={};return Slt.copyProperties(A,e),A.length=e.length,A[Symbol.iterator]=e[Symbol.iterator],A}default:return}}})}ozt.cloneDeepWith=nao});var WSe=H(azt=>{"use strict";Object.defineProperty(azt,Symbol.toStringTag,{value:"Module"});var iao=S3e();function sao(e){return iao.cloneDeepWith(e)}azt.cloneDeep=sao});var OSe=H(czt=>{"use strict";Object.defineProperty(czt,Symbol.toStringTag,{value:"Module"});var oao=/^(?:0|[1-9]\d*)$/;function aao(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e{"use strict";Object.defineProperty(lzt,Symbol.toStringTag,{value:"Module"});var cao=Zfe();function lao(e){return e!==null&&typeof e=="object"&&cao.getTag(e)==="[object Arguments]"}lzt.isArguments=lao});var v3e=H(uzt=>{"use strict";Object.defineProperty(uzt,Symbol.toStringTag,{value:"Module"});var uao=VSe(),gao=OSe(),Aao=Vfe(),dao=$5();function pao(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&uao.isDeepKey(t)&&e?.[t]==null?r=dao.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(gzt,Symbol.toStringTag,{value:"Module"});var fao=C3e(),Iao=Kq(),hao=WSe(),mao=eM(),Cao=v3e();function _ao(e,t){switch(typeof e){case"object":{Object.is(e?.valueOf(),-0)&&(e="-0");break}case"number":{e=Iao.toKey(e);break}}return t=hao.cloneDeep(t),function(r){let n=mao.get(r,e);return n===void 0?Cao.has(r,e):t===void 0?n===void 0:fao.isMatch(n,t)}}gzt.matchesProperty=_ao});var im=H(Azt=>{"use strict";Object.defineProperty(Azt,Symbol.toStringTag,{value:"Module"});var yao=bm(),bao=nX(),Eao=OK(),Sao=MK();function vao(e){if(e==null)return yao.identity;switch(typeof e){case"function":return e;case"object":return Array.isArray(e)&&e.length===2?Sao.matchesProperty(e[0],e[1]):Eao.matches(e);case"string":case"symbol":case"number":return bao.property(e)}}Azt.iteratee=vao});var pzt=H(dzt=>{"use strict";Object.defineProperty(dzt,Symbol.toStringTag,{value:"Module"});var Bao=Sf(),wao=im();function Tao(e,t){if(e==null)return{};let r=Bao.isArrayLike(e)?Array.from(e):Object.values(e),n=wao.iteratee(t??void 0),a=Object.create(null);for(let o=0;o{"use strict";Object.defineProperty(fzt,Symbol.toStringTag,{value:"Module"});function Rao(e,t){let r=new Set(t);return e.filter(n=>!r.has(n))}fzt.difference=Rao});var ioe=H(Izt=>{"use strict";Object.defineProperty(Izt,Symbol.toStringTag,{value:"Module"});function Nao(e){return typeof e=="object"&&e!==null}Izt.isObjectLike=Nao});var b2=H(hzt=>{"use strict";Object.defineProperty(hzt,Symbol.toStringTag,{value:"Module"});var Dao=Sf(),kao=ioe();function xao(e){return kao.isObjectLike(e)&&Dao.isArrayLike(e)}hzt.isArrayLikeObject=xao});var Czt=H(mzt=>{"use strict";Object.defineProperty(mzt,Symbol.toStringTag,{value:"Module"});var Gao=B3e(),Fao=SZ(),gTn=b2();function Zao(e,...t){if(!gTn.isArrayLikeObject(e))return[];let r=Fao.toArray(e),n=[];for(let a=0;a{"use strict";Object.defineProperty(_zt,Symbol.toStringTag,{value:"Module"});function Lao(e){return e[e.length-1]}_zt.last=Lao});var zq=H(yzt=>{"use strict";Object.defineProperty(yzt,Symbol.toStringTag,{value:"Module"});var Vao=w3e(),Pao=SZ(),Wao=Sf();function Oao(e){if(Wao.isArrayLike(e))return Vao.last(Pao.toArray(e))}yzt.last=Oao});var ATn=H(bzt=>{"use strict";Object.defineProperty(bzt,Symbol.toStringTag,{value:"Module"});function Mao(e,t,r){let n=new Set(t.map(a=>r(a)));return e.filter(a=>!n.has(r(a)))}bzt.differenceBy=Mao});var T3e=H(Ezt=>{"use strict";Object.defineProperty(Ezt,Symbol.toStringTag,{value:"Module"});var Hao=b2();function Yao(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(Szt,Symbol.toStringTag,{value:"Module"});var Qao=zq(),Xao=B3e(),Jao=ATn(),Uao=T3e(),dTn=b2(),Kao=im();function jao(e,...t){if(!dTn.isArrayLikeObject(e))return[];let r=Qao.last(t),n=Uao.flattenArrayLike(t);return dTn.isArrayLikeObject(r)?Xao.difference(Array.from(e),n):Jao.differenceBy(Array.from(e),n,Kao.iteratee(r))}Szt.differenceBy=jao});var pTn=H(vzt=>{"use strict";Object.defineProperty(vzt,Symbol.toStringTag,{value:"Module"});function zao(e,t,r){return e.filter(n=>t.every(a=>!r(n,a)))}vzt.differenceWith=zao});var Blt=H(Bzt=>{"use strict";Object.defineProperty(Bzt,Symbol.toStringTag,{value:"Module"});var qao=zq(),$ao=B3e(),eco=pTn(),tco=T3e(),rco=b2();function nco(e,...t){if(!rco.isArrayLikeObject(e))return[];let r=qao.last(t),n=tco.flattenArrayLike(t);return typeof r=="function"?eco.differenceWith(Array.from(e),n,r):$ao.difference(Array.from(e),n)}Bzt.differenceWith=nco});var fTn=H(wzt=>{"use strict";Object.defineProperty(wzt,Symbol.toStringTag,{value:"Module"});function ico(e,t){return t=Math.max(t,0),e.slice(t)}wzt.drop=ico});var soe=H(Tzt=>{"use strict";Object.defineProperty(Tzt,Symbol.toStringTag,{value:"Module"});function sco(e){return typeof e=="symbol"||e instanceof Symbol}Tzt.isSymbol=sco});var Q9=H(Rzt=>{"use strict";Object.defineProperty(Rzt,Symbol.toStringTag,{value:"Module"});var oco=soe();function aco(e){return oco.isSymbol(e)?NaN:Number(e)}Rzt.toNumber=aco});var MSe=H(Nzt=>{"use strict";Object.defineProperty(Nzt,Symbol.toStringTag,{value:"Module"});var cco=Q9();function lco(e){return e?(e=cco.toNumber(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}Nzt.toFinite=lco});var $w=H(Dzt=>{"use strict";Object.defineProperty(Dzt,Symbol.toStringTag,{value:"Module"});var uco=MSe();function gco(e){let t=uco.toFinite(e),r=t%1;return r?t-r:t}Dzt.toInteger=gco});var xzt=H(kzt=>{"use strict";Object.defineProperty(kzt,Symbol.toStringTag,{value:"Module"});var Aco=fTn(),dco=SZ(),pco=Sf(),fco=$w();function Ico(e,t=1,r){return pco.isArrayLike(e)?(t=r?1:fco.toInteger(t),Aco.drop(dco.toArray(e),t)):[]}kzt.drop=Ico});var ITn=H(Gzt=>{"use strict";Object.defineProperty(Gzt,Symbol.toStringTag,{value:"Module"});function hco(e,t){return t=Math.min(-t,0),t===0?e.slice():e.slice(0,t)}Gzt.dropRight=hco});var Zzt=H(Fzt=>{"use strict";Object.defineProperty(Fzt,Symbol.toStringTag,{value:"Module"});var mco=ITn(),Cco=SZ(),_co=Sf(),yco=$w();function bco(e,t=1,r){return _co.isArrayLike(e)?(t=r?1:yco.toInteger(t),mco.dropRight(Cco.toArray(e),t)):[]}Fzt.dropRight=bco});var hTn=H(Lzt=>{"use strict";Object.defineProperty(Lzt,Symbol.toStringTag,{value:"Module"});function Eco(e,t){for(let r=e.length-1;r>=0;r--)if(!t(e[r],r,e))return e.slice(0,r+1);return[]}Lzt.dropRightWhile=Eco});var Pzt=H(Vzt=>{"use strict";Object.defineProperty(Vzt,Symbol.toStringTag,{value:"Module"});var wlt=hTn(),Sco=bm(),vco=nX(),Bco=Sf(),wco=OK(),Tco=MK();function Rco(e,t=Sco.identity){return Bco.isArrayLike(e)?Nco(Array.from(e),t):[]}function Nco(e,t){switch(typeof t){case"function":return wlt.dropRightWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return wlt.dropRightWhile(e,Tco.matchesProperty(r,n))}else return wlt.dropRightWhile(e,wco.matches(t));case"symbol":case"number":case"string":return wlt.dropRightWhile(e,vco.property(t))}}Vzt.dropRightWhile=Rco});var mTn=H(Wzt=>{"use strict";Object.defineProperty(Wzt,Symbol.toStringTag,{value:"Module"});function Dco(e,t){let r=e.findIndex((n,a,o)=>!t(n,a,o));return r===-1?[]:e.slice(r)}Wzt.dropWhile=Dco});var Mzt=H(Ozt=>{"use strict";Object.defineProperty(Ozt,Symbol.toStringTag,{value:"Module"});var Tlt=mTn(),kco=bm(),xco=SZ(),Gco=nX(),Fco=Sf(),Zco=OK(),Lco=MK();function Vco(e,t=kco.identity){return Fco.isArrayLike(e)?Pco(xco.toArray(e),t):[]}function Pco(e,t){switch(typeof t){case"function":return Tlt.dropWhile(e,(r,n,a)=>!!t(r,n,a));case"object":if(Array.isArray(t)&&t.length===2){let r=t[0],n=t[1];return Tlt.dropWhile(e,Lco.matchesProperty(r,n))}else return Tlt.dropWhile(e,Zco.matches(t));case"number":case"symbol":case"string":return Tlt.dropWhile(e,Gco.property(t))}}Ozt.dropWhile=Vco});var ooe=H(Hzt=>{"use strict";Object.defineProperty(Hzt,Symbol.toStringTag,{value:"Module"});function Wco(e,t,r=1){if(t==null&&(t=e,e=0),!Number.isInteger(r)||r===0)throw new Error("The step value must be a non-zero integer.");let n=Math.max(Math.ceil((t-e)/r),0),a=new Array(n);for(let o=0;o{"use strict";Object.defineProperty(Yzt,Symbol.toStringTag,{value:"Module"});var Oco=bm(),Mco=ooe(),Hco=Sf();function Yco(e,t=Oco.identity){if(!e)return e;let r=Hco.isArrayLike(e)||Array.isArray(e)?Mco.range(0,e.length):Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(Qzt,Symbol.toStringTag,{value:"Module"});var Qco=bm(),Xco=ooe(),Jco=Sf();function Uco(e,t=Qco.identity){if(!e)return e;let r=Jco.isArrayLike(e)?Xco.range(0,e.length):Object.keys(e);for(let n=r.length-1;n>=0;n--){let a=r[n],o=e[a];if(t(o,a,e)===!1)break}return e}Qzt.forEachRight=Uco});var qq=H(Jzt=>{"use strict";Object.defineProperty(Jzt,Symbol.toStringTag,{value:"Module"});var Kco=OSe(),jco=Sf(),zco=tM(),qco=Sk();function $co(e,t,r){return zco.isObject(r)&&(typeof t=="number"&&jco.isArrayLike(r)&&Kco.isIndex(t)&&t{"use strict";Object.defineProperty(Uzt,Symbol.toStringTag,{value:"Module"});var elo=bm(),tlo=qq(),rlo=nX(),nlo=Sf(),ilo=OK(),slo=MK();function olo(e,t,r){if(!e)return!0;r&&tlo.isIterateeCall(e,t,r)&&(t=void 0),t||(t=elo.identity);let n;switch(typeof t){case"function":{n=t;break}case"object":{if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];n=slo.matchesProperty(a,o)}else n=ilo.matches(t);break}case"symbol":case"number":case"string":n=rlo.property(t)}if(!nlo.isArrayLike(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(jzt,Symbol.toStringTag,{value:"Module"});function alo(e,t,r=0,n=e.length){let a=e.length,o=Math.max(r>=0?r:a+r,0),l=Math.min(n>=0?n:a+n,a);for(let A=o;A{"use strict";Object.defineProperty(zzt,Symbol.toStringTag,{value:"Module"});function clo(e){return typeof e=="string"||e instanceof String}zzt.isString=clo});var $zt=H(qzt=>{"use strict";Object.defineProperty(qzt,Symbol.toStringTag,{value:"Module"});var llo=CTn(),ulo=Sf(),glo=HSe();function Alo(e,t,r=0,n=e?e.length:0){return ulo.isArrayLike(e)?glo.isString(e)?e:(r=Math.floor(r),n=Math.floor(n),r||(r=0),n||(n=0),llo.fill(e,t,r,n)):[]}qzt.fill=Alo});var Nlt=H(eqt=>{"use strict";Object.defineProperty(eqt,Symbol.toStringTag,{value:"Module"});var dlo=bm(),plo=Sf(),flo=im();function Ilo(e,t=dlo.identity){if(!e)return[];if(t=flo.iteratee(t),!Array.isArray(e)){let a=[],o=Object.keys(e),l=plo.isArrayLike(e)?e.length:o.length;for(let A=0;A{"use strict";Object.defineProperty(tqt,Symbol.toStringTag,{value:"Module"});var hlo=bm(),mlo=im();function Clo(e,t=hlo.identity,r=0){if(!e)return;r<0&&(r=Math.max(e.length+r,0));let n=mlo.iteratee(t);if(!Array.isArray(e)){let a=Object.keys(e);for(let o=r;o{"use strict";Object.defineProperty(nqt,Symbol.toStringTag,{value:"Module"});function _lo(e){return e}nqt.identity=_lo});var sqt=H(iqt=>{"use strict";Object.defineProperty(iqt,Symbol.toStringTag,{value:"Module"});var ylo=HK(),blo=nX(),Elo=OK(),Slo=MK();function vlo(e,t=ylo.identity,r=0){if(!e)return-1;r<0&&(r=Math.max(e.length+r,0));let n=Array.from(e).slice(r),a=-1;switch(typeof t){case"function":{a=n.findIndex(t);break}case"object":{if(Array.isArray(t)&&t.length===2){let o=t[0],l=t[1];a=n.findIndex(Slo.matchesProperty(o,l))}else a=n.findIndex(Elo.matches(t));break}case"number":case"symbol":case"string":a=n.findIndex(blo.property(t))}return a===-1?-1:a+r}iqt.findIndex=vlo});var aqt=H(oqt=>{"use strict";Object.defineProperty(oqt,Symbol.toStringTag,{value:"Module"});var Blo=bm(),wlo=im(),Tlo=$w();function Rlo(e,t=Blo.identity,r){if(!e)return;let n=Array.isArray(e)?e.length:Object.keys(e).length;r=Tlo.toInteger(r??n-1),r<0?r=Math.max(n+r,0):r=Math.min(r,n-1);let a=wlo.iteratee(t);if(!Array.isArray(e)){let o=Object.keys(e);for(let l=r;l>=0;l--){let A=o[l],f=e[A];if(a(f,A,e))return f}return}return e.slice(0,r+1).findLast(a)}oqt.findLast=Rlo});var lqt=H(cqt=>{"use strict";Object.defineProperty(cqt,Symbol.toStringTag,{value:"Module"});var Nlo=bm(),Dlo=SZ(),klo=nX(),xlo=OK(),Glo=MK();function Flo(e,t=Nlo.identity,r=e?e.length-1:0){if(!e)return-1;r<0?r=Math.max(e.length+r,0):r=Math.min(r,e.length-1);let n=Dlo.toArray(e).slice(0,r+1);switch(typeof t){case"function":return n.findLastIndex(t);case"object":if(Array.isArray(t)&&t.length===2){let a=t[0],o=t[1];return n.findLastIndex(Glo.matchesProperty(a,o))}else return n.findLastIndex(xlo.matches(t));case"number":case"symbol":case"string":return n.findLastIndex(klo.property(t))}}cqt.findLastIndex=Flo});var _Tn=H(uqt=>{"use strict";Object.defineProperty(uqt,Symbol.toStringTag,{value:"Module"});function Zlo(e){return e[0]}uqt.head=Zlo});var Aqt=H(gqt=>{"use strict";Object.defineProperty(gqt,Symbol.toStringTag,{value:"Module"});var Llo=_Tn(),Vlo=SZ(),Plo=Sf();function Wlo(e){if(Plo.isArrayLike(e))return Llo.head(Vlo.toArray(e))}gqt.head=Wlo});var Pfe=H(dqt=>{"use strict";Object.defineProperty(dqt,Symbol.toStringTag,{value:"Module"});var Olo=Sf();function Mlo(e,t=1){let r=[],n=Math.floor(t);if(!Olo.isArrayLike(e))return r;let a=(o,l)=>{for(let A=0;A{"use strict";Object.defineProperty(pqt,Symbol.toStringTag,{value:"Module"});var Hlo=Pfe();function Ylo(e,t=1){return Hlo.flatten(e,t)}pqt.flattenDepth=Ylo});var R3e=H(fqt=>{"use strict";Object.defineProperty(fqt,Symbol.toStringTag,{value:"Module"});var Qlo=bm(),Xlo=ooe(),Jlo=Sf(),Ulo=im();function Klo(e,t){if(!e)return[];let r=Jlo.isArrayLike(e)||Array.isArray(e)?Xlo.range(0,e.length):Object.keys(e),n=Ulo.iteratee(t??Qlo.identity),a=new Array(r.length);for(let o=0;o{"use strict";Object.defineProperty(Iqt,Symbol.toStringTag,{value:"Module"});function jlo(e){return e==null}Iqt.isNil=jlo});var mqt=H(hqt=>{"use strict";Object.defineProperty(hqt,Symbol.toStringTag,{value:"Module"});var zlo=YSe(),yTn=R3e(),bTn=aoe();function qlo(e,t){if(bTn.isNil(e))return[];let r=bTn.isNil(t)?yTn.map(e):yTn.map(e,t);return zlo.flattenDepth(r,1)}hqt.flatMap=qlo});var N3e=H(Cqt=>{"use strict";Object.defineProperty(Cqt,Symbol.toStringTag,{value:"Module"});var $lo=Pfe(),euo=R3e(),tuo=bm(),ruo=im();function nuo(e,t=tuo.identity,r=1){if(e==null)return[];let n=ruo.iteratee(t),a=euo.map(e,n);return $lo.flatten(a,r)}Cqt.flatMapDepth=nuo});var yqt=H(_qt=>{"use strict";Object.defineProperty(_qt,Symbol.toStringTag,{value:"Module"});var iuo=N3e();function suo(e,t){return iuo.flatMapDepth(e,t,1/0)}_qt.flatMapDeep=suo});var Eqt=H(bqt=>{"use strict";Object.defineProperty(bqt,Symbol.toStringTag,{value:"Module"});var ouo=YSe();function auo(e){return ouo.flattenDepth(e,1/0)}bqt.flattenDeep=auo});var ETn=H(Sqt=>{"use strict";Object.defineProperty(Sqt,Symbol.toStringTag,{value:"Module"});function cuo(e,t){let r={};for(let n=0;n{"use strict";Object.defineProperty(vqt,Symbol.toStringTag,{value:"Module"});var luo=ETn(),uuo=bm(),guo=Sf(),Auo=im();function duo(e,t){if(e==null)return{};let r=guo.isArrayLike(e)?Array.from(e):Object.values(e),n=Auo.iteratee(t??uuo.identity);return luo.groupBy(r,n)}vqt.groupBy=duo});var Tqt=H(wqt=>{"use strict";Object.defineProperty(wqt,Symbol.toStringTag,{value:"Module"});var puo=HSe(),fuo=Sk(),Iuo=$w();function huo(e,t,r,n){if(e==null)return!1;if(n||!r?r=0:r=Iuo.toInteger(r),puo.isString(e))return r>e.length||t instanceof RegExp?!1:(r<0&&(r=Math.max(0,e.length+r)),e.includes(t,r));if(Array.isArray(e))return e.includes(t,r);let a=Object.keys(e);r<0&&(r=Math.max(0,a.length+r));for(let o=r;o{"use strict";Object.defineProperty(Rqt,Symbol.toStringTag,{value:"Module"});var muo=Sf();function Cuo(e,t,r){if(!muo.isArrayLike(e))return-1;if(Number.isNaN(t)){r=r??0,r<0&&(r=Math.max(0,e.length+r));for(let n=r;n{"use strict";Object.defineProperty(Dqt,Symbol.toStringTag,{value:"Module"});function _uo(e){return e.slice(0,-1)}Dqt.initial=_uo});var xqt=H(kqt=>{"use strict";Object.defineProperty(kqt,Symbol.toStringTag,{value:"Module"});var yuo=STn(),buo=Sf();function Euo(e){return buo.isArrayLike(e)?yuo.initial(Array.from(e)):[]}kqt.initial=Euo});var vTn=H(Gqt=>{"use strict";Object.defineProperty(Gqt,Symbol.toStringTag,{value:"Module"});function Suo(e,t){let r=new Set(t);return e.filter(n=>r.has(n))}Gqt.intersection=Suo});var Wfe=H(Fqt=>{"use strict";Object.defineProperty(Fqt,Symbol.toStringTag,{value:"Module"});function vuo(e){return[...new Set(e)]}Fqt.uniq=vuo});var Lqt=H(Zqt=>{"use strict";Object.defineProperty(Zqt,Symbol.toStringTag,{value:"Module"});var Buo=vTn(),wuo=Wfe(),BTn=b2();function Tuo(...e){if(e.length===0)return[];if(!BTn.isArrayLikeObject(e[0]))return[];let t=wuo.uniq(Array.from(e[0]));for(let r=1;r{"use strict";Object.defineProperty(Vqt,Symbol.toStringTag,{value:"Module"});function Ruo(e,t,r){let n=[],a=new Set(t.map(r));for(let o=0;o{"use strict";Object.defineProperty(Wqt,Symbol.toStringTag,{value:"Module"});var Pqt=wTn(),Nuo=w3e(),Duo=Wfe(),kuo=bm(),xuo=nX(),Dlt=b2();function Guo(e,...t){if(!Dlt.isArrayLikeObject(e))return[];let r=Nuo.last(t);if(r===void 0)return Array.from(e);let n=Duo.uniq(Array.from(e)),a=Dlt.isArrayLikeObject(r)?t.length:t.length-1;for(let o=0;or(A)):typeof r=="string"&&(n=Pqt.intersectionBy(n,Array.from(l),xuo.property(r)))}return n}Wqt.intersectionBy=Guo});var TTn=H(Oqt=>{"use strict";Object.defineProperty(Oqt,Symbol.toStringTag,{value:"Module"});function Fuo(e,t,r){return e.filter(n=>t.some(a=>r(n,a)))}Oqt.intersectionWith=Fuo});var D3e=H(Mqt=>{"use strict";Object.defineProperty(Mqt,Symbol.toStringTag,{value:"Module"});var Zuo=Wfe(),Luo=Sf();function Vuo(e){return Luo.isArrayLike(e)?Zuo.uniq(Array.from(e)):[]}Mqt.uniq=Vuo});var xlt=H(Hqt=>{"use strict";Object.defineProperty(Hqt,Symbol.toStringTag,{value:"Module"});var Puo=zq(),Wuo=TTn(),Ouo=D3e(),Muo=Sk();function Huo(e,...t){if(e==null)return[];let r=Puo.last(t),n=Muo.isEqualsSameValueZero,a=Ouo.uniq;typeof r=="function"&&(n=r,a=Yuo,t.pop());let o=a(Array.from(e));for(let l=0;l{"use strict";Object.defineProperty(Yqt,Symbol.toStringTag,{value:"Module"});function Quo(e){return typeof e=="function"}Yqt.isFunction=Quo});var Jqt=H(Xqt=>{"use strict";Object.defineProperty(Xqt,Symbol.toStringTag,{value:"Module"});$7t();var Xuo=coe(),Juo=aoe(),Qqt=eM(),Uuo=Sf();function Kuo(e,t,...r){if(Juo.isNil(e))return[];let n=Uuo.isArrayLike(e)?Array.from(e):Object.values(e),a=[];for(let o=0;o0&&(f=Qqt.get(l,I))}else if(typeof t=="string"&&t.includes(".")){let C=t.split(".").slice(0,-1).join(".");f=Qqt.get(l,C)}a.push(A?.apply(f,r))}return a}Xqt.invokeMap=Kuo});var Kqt=H(Uqt=>{"use strict";Object.defineProperty(Uqt,Symbol.toStringTag,{value:"Module"});var juo=Sf();function zuo(e,t){return juo.isArrayLike(e)?Array.from(e).join(t):""}Uqt.join=zuo});var Glt=H(jqt=>{"use strict";Object.defineProperty(jqt,Symbol.toStringTag,{value:"Module"});var quo=bm(),$uo=ooe(),ego=Sf();function tgo(e,t=quo.identity,r){if(!e)return r;let n,a=0;ego.isArrayLike(e)?(n=$uo.range(0,e.length),r==null&&e.length>0&&(r=e[0],a+=1)):(n=Object.keys(e),r==null&&(r=e[n[0]],a+=1));for(let o=a;o{"use strict";Object.defineProperty(zqt,Symbol.toStringTag,{value:"Module"});var rgo=Glt(),ngo=bm(),igo=Sf(),sgo=ioe(),ogo=im();function ago(e,t){if(!igo.isArrayLike(e)&&!sgo.isObjectLike(e))return{};let r=ogo.iteratee(t??ngo.identity);return rgo.reduce(e,(n,a)=>{let o=r(a);return n[o]=a,n},{})}zqt.keyBy=ago});var e$t=H($qt=>{"use strict";Object.defineProperty($qt,Symbol.toStringTag,{value:"Module"});var cgo=Sf();function lgo(e,t,r){if(!cgo.isArrayLike(e)||e.length===0)return-1;let n=e.length,a=r??n-1;if(r!=null&&(a=a<0?Math.max(n+a,0):Math.min(a,n-1)),Number.isNaN(t)){for(let o=a;o>=0;o--)if(Number.isNaN(e[o]))return o}return Array.from(e).lastIndexOf(t,a)}$qt.lastIndexOf=lgo});var r$t=H(t$t=>{"use strict";Object.defineProperty(t$t,Symbol.toStringTag,{value:"Module"});var ugo=b2(),ggo=$w();function Ago(e,t=0){if(!(!ugo.isArrayLikeObject(e)||e.length===0))return t=ggo.toInteger(t),t<0&&(t+=e.length),e[t]}t$t.nth=Ago});var NTn=H(n$t=>{"use strict";Object.defineProperty(n$t,Symbol.toStringTag,{value:"Module"});function RTn(e){return typeof e=="symbol"?1:e===null?2:e===void 0?3:e!==e?4:0}var dgo=(e,t,r)=>{if(e!==t){let n=RTn(e),a=RTn(t);if(n===a&&n===0){if(et)return r==="desc"?-1:1}return r==="desc"?a-n:n-a}return 0};n$t.compareValues=dgo});var k3e=H(i$t=>{"use strict";Object.defineProperty(i$t,Symbol.toStringTag,{value:"Module"});var pgo=soe(),fgo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Igo=/^\w*$/;function hgo(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||pgo.isSymbol(e)?!0:typeof e=="string"&&(Igo.test(e)||!fgo.test(e))||t!=null&&Object.hasOwn(t,e)}i$t.isKey=hgo});var Flt=H(s$t=>{"use strict";Object.defineProperty(s$t,Symbol.toStringTag,{value:"Module"});var mgo=NTn(),Cgo=k3e(),_go=$5();function ygo(e,t,r,n){if(e==null)return[];r=n?void 0:r,Array.isArray(e)||(e=Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(r)||(r=r==null?[]:[r]),r=r.map(f=>String(f));let a=(f,I)=>{let C=f;for(let b=0;bI==null||f==null?I:typeof f=="object"&&"key"in f?Object.hasOwn(I,f.key)?I[f.key]:a(I,f.path):typeof f=="function"?f(I):Array.isArray(f)?a(I,f):typeof I=="object"?I[f]:I,l=t.map(f=>(Array.isArray(f)&&f.length===1&&(f=f[0]),f==null||typeof f=="function"||Array.isArray(f)||Cgo.isKey(f)?f:{key:f,path:_go.toPath(f)}));return e.map(f=>({original:f,criteria:l.map(I=>o(I,f))})).slice().sort((f,I)=>{for(let C=0;Cf.original)}s$t.orderBy=ygo});var a$t=H(o$t=>{"use strict";Object.defineProperty(o$t,Symbol.toStringTag,{value:"Module"});var bgo=bm(),Ego=Sf(),Sgo=im();function vgo(e,t=bgo.identity){if(!e)return[[],[]];let r=Ego.isArrayLike(e)?e:Object.values(e);t=Sgo.iteratee(t);let n=[],a=[];for(let o=0;o{"use strict";Object.defineProperty(c$t,Symbol.toStringTag,{value:"Module"});function Bgo(e,t){let r=new Set(t),n=0;for(let a=0;a{"use strict";Object.defineProperty(u$t,Symbol.toStringTag,{value:"Module"});var wgo=l$t();function Tgo(e,...t){return wgo.pull(e,t)}u$t.pull=Tgo});var d$t=H(A$t=>{"use strict";Object.defineProperty(A$t,Symbol.toStringTag,{value:"Module"});var Rgo=l$t();function Ngo(e,t=[]){return Rgo.pull(e,Array.from(t))}A$t.pullAll=Ngo});var f$t=H(p$t=>{"use strict";Object.defineProperty(p$t,Symbol.toStringTag,{value:"Module"});var Dgo=im();function kgo(e,t,r){let n=Dgo.iteratee(r),a=new Set(Array.from(t).map(l=>n(l))),o=0;for(let l=0;l{"use strict";function xgo(e,t){let r=e.length;t==null&&(t=Array(r));for(let n=0;n{"use strict";Object.defineProperty(I$t,Symbol.toStringTag,{value:"Module"});var Ggo=kTn(),Fgo=Sk();function Zgo(e,t,r){if(e?.length==null||t?.length==null)return e;e===t&&(t=Ggo(t));let n=0;r==null&&(r=(l,A)=>Fgo.isEqualsSameValueZero(l,A));let a=Array.isArray(t)?t:Array.from(t),o=a.includes(void 0);for(let l=0;lr(e[l],f))||(e[n++]=e[l]);continue}o||delete e[n++]}return e.length=n,e}I$t.pullAllWith=Zgo});var Zlt=H(m$t=>{"use strict";Object.defineProperty(m$t,Symbol.toStringTag,{value:"Module"});var Lgo=eM(),Vgo=Sf(),Pgo=HSe();function Wgo(e,...t){if(t.length===0)return[];let r=[];for(let a=0;a{"use strict";Object.defineProperty(_$t,Symbol.toStringTag,{value:"Module"});var Ogo=eM(),C$t=m3e(),Mgo=VSe(),Hgo=Kq(),Ygo=$5();function Qgo(e,t){if(e==null)return!0;switch(typeof t){case"symbol":case"number":case"object":{if(Array.isArray(t))return xTn(e,t);if(typeof t=="number"?t=Hgo.toKey(t):typeof t=="object"&&(Object.is(t?.valueOf(),-0)?t="-0":t=String(t)),C$t.isUnsafeProperty(t))return!1;if(e?.[t]===void 0)return!0;try{return delete e[t],!0}catch{return!1}}case"string":{if(e?.[t]===void 0&&Mgo.isDeepKey(t))return xTn(e,Ygo.toPath(t));if(C$t.isUnsafeProperty(t))return!1;try{return delete e[t],!0}catch{return!1}}}}function xTn(e,t){let r=t.length===1?e:Ogo.get(e,t.slice(0,-1)),n=t[t.length-1];if(r?.[n]===void 0)return!0;if(C$t.isUnsafeProperty(n))return!1;try{return delete r[n],!0}catch{return!1}}_$t.unset=Qgo});var $q=H(y$t=>{"use strict";Object.defineProperty(y$t,Symbol.toStringTag,{value:"Module"});function Xgo(e){return Array.isArray(e)}y$t.isArray=Xgo});var E$t=H(b$t=>{"use strict";Object.defineProperty(b$t,Symbol.toStringTag,{value:"Module"});var Jgo=YSe(),GTn=OSe(),Ugo=k3e(),Kgo=Kq(),jgo=Zlt(),zgo=x3e(),qgo=$q(),$go=$5();function eAo(e,...t){let r=Jgo.flattenDepth(t,1);if(!e)return Array(r.length);let n=jgo.at(e,r),a=r.map(o=>GTn.isIndex(o,e.length)?Number(o):o).sort((o,l)=>l-o);for(let o of new Set(a)){if(GTn.isIndex(o,e.length)){Array.prototype.splice.call(e,o,1);continue}if(Ugo.isKey(o,e)){delete e[Kgo.toKey(o)];continue}let l=qgo.isArray(o)?o:$go.toPath(o);zgo.unset(e,l)}return n}b$t.pullAt=eAo});var v$t=H(S$t=>{"use strict";Object.defineProperty(S$t,Symbol.toStringTag,{value:"Module"});var tAo=bm(),rAo=ooe(),nAo=Sf();function iAo(e,t=tAo.identity,r){if(!e)return r;let n,a;nAo.isArrayLike(e)?(n=rAo.range(0,e.length).reverse(),r==null&&e.length>0?(r=e[e.length-1],a=1):a=0):(n=Object.keys(e).reverse(),r==null?(r=e[n[0]],a=1):a=0);for(let o=a;o{"use strict";Object.defineProperty(B$t,Symbol.toStringTag,{value:"Module"});function sAo(e){if(typeof e!="function")throw new TypeError("Expected a function");return function(...t){return!e.apply(this,t)}}B$t.negate=sAo});var T$t=H(w$t=>{"use strict";Object.defineProperty(w$t,Symbol.toStringTag,{value:"Module"});var oAo=Nlt(),aAo=bm(),cAo=G3e(),lAo=im();function uAo(e,t=aAo.identity){return oAo.filter(e,cAo.negate(lAo.iteratee(t)))}w$t.reject=uAo});var FTn=H(R$t=>{"use strict";Object.defineProperty(R$t,Symbol.toStringTag,{value:"Module"});function gAo(e,t){let r=e.slice(),n=[],a=0;for(let o=0;o{"use strict";Object.defineProperty(N$t,Symbol.toStringTag,{value:"Module"});var AAo=FTn(),dAo=bm(),pAo=im();function fAo(e,t=dAo.identity){return AAo.remove(e,pAo.iteratee(t))}N$t.remove=fAo});var x$t=H(k$t=>{"use strict";Object.defineProperty(k$t,Symbol.toStringTag,{value:"Module"});function IAo(e){return e==null?e:e.reverse()}k$t.reverse=IAo});var ZTn=H(G$t=>{"use strict";Object.defineProperty(G$t,Symbol.toStringTag,{value:"Module"});function hAo(e){let t=Math.floor(Math.random()*e.length);return e[t]}G$t.sample=hAo});var Z$t=H(F$t=>{"use strict";Object.defineProperty(F$t,Symbol.toStringTag,{value:"Module"});var LTn=ZTn(),mAo=SZ(),CAo=Sf();function _Ao(e){if(e!=null)return CAo.isArrayLike(e)?LTn.sample(mAo.toArray(e)):LTn.sample(Object.values(e))}F$t.sample=_Ao});var V$t=H(L$t=>{"use strict";Object.defineProperty(L$t,Symbol.toStringTag,{value:"Module"});function yAo(e,t){if(t==null&&(t=e,e=0),e>=t)throw new Error("Invalid input: The maximum value must be greater than the minimum value.");return Math.random()*(t-e)+e}L$t.random=yAo});var W$t=H(P$t=>{"use strict";Object.defineProperty(P$t,Symbol.toStringTag,{value:"Module"});var bAo=V$t();function EAo(e,t){return Math.floor(bAo.random(e,t))}P$t.randomInt=EAo});var VTn=H(O$t=>{"use strict";Object.defineProperty(O$t,Symbol.toStringTag,{value:"Module"});var SAo=W$t();function vAo(e,t){if(t>e.length)throw new Error("Size must be less than or equal to the length of array.");let r=new Array(t),n=new Set;for(let a=e.length-t,o=0;a{"use strict";Object.defineProperty(M$t,Symbol.toStringTag,{value:"Module"});var PTn=Q9();function BAo(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=PTn.toNumber(r),e=Math.min(e,Number.isNaN(r)?0:r)),t!==void 0&&(t=PTn.toNumber(t),e=Math.max(e,Number.isNaN(t)?0:t)),e}M$t.clamp=BAo});var WTn=H(H$t=>{"use strict";Object.defineProperty(H$t,Symbol.toStringTag,{value:"Module"});function wAo(e){return e instanceof Map}H$t.isMap=wAo});var Llt=H(Y$t=>{"use strict";Object.defineProperty(Y$t,Symbol.toStringTag,{value:"Module"});var TAo=WTn();function RAo(e){return TAo.isMap(e)}Y$t.isMap=RAo});var F3e=H(Q$t=>{"use strict";Object.defineProperty(Q$t,Symbol.toStringTag,{value:"Module"});var NAo=Sf(),DAo=Llt();function kAo(e){return e==null?[]:NAo.isArrayLike(e)||DAo.isMap(e)?Array.from(e):typeof e=="object"?Object.values(e):[]}Q$t.toArray=kAo});var J$t=H(X$t=>{"use strict";Object.defineProperty(X$t,Symbol.toStringTag,{value:"Module"});var xAo=VTn(),GAo=qq(),FAo=Ofe(),ZAo=F3e(),LAo=$w();function VAo(e,t,r){let n=ZAo.toArray(e);return(r?GAo.isIterateeCall(e,t,r):t===void 0)?t=1:t=FAo.clamp(LAo.toInteger(t),0,n.length),xAo.sampleSize(n,t)}X$t.sampleSize=VAo});var OTn=H(U$t=>{"use strict";Object.defineProperty(U$t,Symbol.toStringTag,{value:"Module"});function PAo(e){let t=e.slice();for(let r=t.length-1;r>=1;r--){let n=Math.floor(Math.random()*(r+1));[t[r],t[n]]=[t[n],t[r]]}return t}U$t.shuffle=PAo});var Vlt=H(K$t=>{"use strict";Object.defineProperty(K$t,Symbol.toStringTag,{value:"Module"});function WAo(e){return e==null?[]:Object.values(e)}K$t.values=WAo});var QSe=H(j$t=>{"use strict";Object.defineProperty(j$t,Symbol.toStringTag,{value:"Module"});function OAo(e){return e==null}j$t.isNil=OAo});var $$t=H(q$t=>{"use strict";Object.defineProperty(q$t,Symbol.toStringTag,{value:"Module"});var z$t=OTn(),MAo=Vlt(),HAo=$q(),YAo=Sf(),QAo=QSe(),XAo=ioe();function JAo(e){return QAo.isNil(e)?[]:HAo.isArray(e)?z$t.shuffle(e):YAo.isArrayLike(e)?z$t.shuffle(Array.from(e)):XAo.isObjectLike(e)?z$t.shuffle(MAo.values(e)):[]}q$t.shuffle=JAo});var ter=H(eer=>{"use strict";Object.defineProperty(eer,Symbol.toStringTag,{value:"Module"});var UAo=aoe();function KAo(e){return UAo.isNil(e)?0:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}eer.size=KAo});var ner=H(rer=>{"use strict";Object.defineProperty(rer,Symbol.toStringTag,{value:"Module"});var jAo=qq(),zAo=Sf(),MTn=$w();function qAo(e,t,r){if(!zAo.isArrayLike(e))return[];let n=e.length;r===void 0?r=n:typeof r!="number"&&jAo.isIterateeCall(e,t,r)&&(t=0,r=n),t=MTn.toInteger(t),r=MTn.toInteger(r),t<0?t=Math.max(n+t,0):t=Math.min(t,n),r<0?r=Math.max(n+r,0):r=Math.min(r,n);let a=Math.max(r-t,0),o=new Array(a);for(let l=0;l{"use strict";Object.defineProperty(ier,Symbol.toStringTag,{value:"Module"});var $Ao=bm(),edo=nX(),tdo=OK(),rdo=MK();function ndo(e,t,r){if(!e)return!1;r!=null&&(t=void 0),t==null&&(t=$Ao.identity);let n=Array.isArray(e)?e:Object.values(e);switch(typeof t){case"function":{if(!Array.isArray(e)){let a=Object.keys(e);for(let o=0;o{"use strict";Object.defineProperty(oer,Symbol.toStringTag,{value:"Module"});var ido=Flt(),sdo=h3e(),HTn=qq();function odo(e,...t){let r=t.length;return r>1&&HTn.isIterateeCall(e,t[0],t[1])?t=[]:r>2&&HTn.isIterateeCall(t[0],t[1],t[2])&&(t=[t[0]]),ido.orderBy(e,sdo.flatten(t),["asc"])}oer.sortBy=odo});var Plt=H(cer=>{"use strict";Object.defineProperty(cer,Symbol.toStringTag,{value:"Module"});function ado(e){return e===null}cer.isNull=ado});var uer=H(ler=>{"use strict";Object.defineProperty(ler,Symbol.toStringTag,{value:"Module"});function cdo(e){return e===void 0}ler.isUndefined=cdo});var Wlt=H(ger=>{"use strict";Object.defineProperty(ger,Symbol.toStringTag,{value:"Module"});function ldo(e){return Number.isNaN(e)}ger.isNaN=ldo});var Z3e=H(Aer=>{"use strict";Object.defineProperty(Aer,Symbol.toStringTag,{value:"Module"});var YTn=Plt(),QTn=uer(),udo=HK(),XTn=Wlt(),gdo=QSe(),JTn=soe(),Ado=im(),ddo=4294967295,pdo=ddo-1;function fdo(e,t,r=udo.identity,n){if(gdo.isNil(e)||e.length===0)return 0;let a=0,o=e.length,l=Ado.iteratee(r),A=l(t),f=XTn.isNaN(A),I=YTn.isNull(A),C=JTn.isSymbol(A),b=QTn.isUndefined(A);for(;a{"use strict";Object.defineProperty(der,Symbol.toStringTag,{value:"Module"});function Ido(e){return typeof e=="symbol"}der.isSymbol=Ido});var L3e=H(fer=>{"use strict";Object.defineProperty(fer,Symbol.toStringTag,{value:"Module"});function hdo(e){return typeof e=="number"||e instanceof Number}fer.isNumber=hdo});var Olt=H(Ier=>{"use strict";Object.defineProperty(Ier,Symbol.toStringTag,{value:"Module"});var mdo=Z3e(),Cdo=aoe(),_do=Plt(),ydo=per(),bdo=L3e(),Edo=4294967295,Sdo=Edo>>>1;function vdo(e,t){if(Cdo.isNil(e))return 0;let r=0,n=e.length;if(bdo.isNumber(t)&&t===t&&n<=Sdo){for(;r>>1,o=e[a];!_do.isNull(o)&&!ydo.isSymbol(o)&&oa)}Ier.sortedIndex=vdo});var mer=H(her=>{"use strict";Object.defineProperty(her,Symbol.toStringTag,{value:"Module"});var Bdo=Olt(),wdo=Sk();function Tdo(e,t){if(!e?.length)return-1;let r=Bdo.sortedIndex(e,t);return r{"use strict";Object.defineProperty(Cer,Symbol.toStringTag,{value:"Module"});var Rdo=Z3e();function Ndo(e,t,r){return Rdo.sortedIndexBy(e,t,r,!0)}Cer.sortedLastIndexBy=Ndo});var Hlt=H(_er=>{"use strict";Object.defineProperty(_er,Symbol.toStringTag,{value:"Module"});var Ddo=Mlt(),kdo=aoe(),xdo=Plt(),Gdo=per(),Fdo=L3e(),Zdo=4294967295,Ldo=Zdo>>>1;function Vdo(e,t){if(kdo.isNil(e))return 0;let r=e.length;if(!Fdo.isNumber(t)||Number.isNaN(t)||r>Ldo)return Ddo.sortedLastIndexBy(e,t,a=>a);let n=0;for(;n>>1,o=e[a];!xdo.isNull(o)&&!Gdo.isSymbol(o)&&o<=t?n=a+1:r=a}return r}_er.sortedLastIndex=Vdo});var ber=H(yer=>{"use strict";Object.defineProperty(yer,Symbol.toStringTag,{value:"Module"});var Pdo=Hlt(),Wdo=Sk();function Odo(e,t){if(!e?.length)return-1;let r=Pdo.sortedLastIndex(e,t)-1;return r>=0&&Wdo.isEqualsSameValueZero(e[r],t)?r:-1}yer.sortedLastIndexOf=Odo});var UTn=H(Eer=>{"use strict";Object.defineProperty(Eer,Symbol.toStringTag,{value:"Module"});function Mdo(e){return e.slice(1)}Eer.tail=Mdo});var ver=H(Ser=>{"use strict";Object.defineProperty(Ser,Symbol.toStringTag,{value:"Module"});var Hdo=UTn(),Ydo=SZ(),Qdo=Sf();function Xdo(e){return Qdo.isArrayLike(e)?Hdo.tail(Ydo.toArray(e)):[]}Ser.tail=Xdo});var KTn=H(Ber=>{"use strict";Object.defineProperty(Ber,Symbol.toStringTag,{value:"Module"});var Jdo=$w();function Udo(e,t,r){return t=r||t===void 0?1:Jdo.toInteger(t),e.slice(0,t)}Ber.take=Udo});var Ter=H(wer=>{"use strict";Object.defineProperty(wer,Symbol.toStringTag,{value:"Module"});var Kdo=KTn(),jdo=SZ(),zdo=Sf(),qdo=$w();function $do(e,t=1,r){return t=r?1:qdo.toInteger(t),t<1||!zdo.isArrayLike(e)?[]:Kdo.take(jdo.toArray(e),t)}wer.take=$do});var jTn=H(Rer=>{"use strict";Object.defineProperty(Rer,Symbol.toStringTag,{value:"Module"});var epo=$w();function tpo(e,t,r){return t=r||t===void 0?1:epo.toInteger(t),t<=0||e.length===0?[]:e.slice(-t)}Rer.takeRight=tpo});var Der=H(Ner=>{"use strict";Object.defineProperty(Ner,Symbol.toStringTag,{value:"Module"});var rpo=jTn(),npo=SZ(),ipo=Sf(),spo=$w();function opo(e,t=1,r){return t=r?1:spo.toInteger(t),t<=0||!ipo.isArrayLike(e)?[]:rpo.takeRight(npo.toArray(e),t)}Ner.takeRight=opo});var zTn=H(ker=>{"use strict";Object.defineProperty(ker,Symbol.toStringTag,{value:"Module"});function apo(e){return(...t)=>!e(...t)}ker.negate=apo});var Ger=H(xer=>{"use strict";Object.defineProperty(xer,Symbol.toStringTag,{value:"Module"});var cpo=bm(),lpo=zTn(),upo=SZ(),gpo=b2(),Apo=im();function dpo(e,t){if(!gpo.isArrayLikeObject(e))return[];let r=upo.toArray(e),n=r.findLastIndex(lpo.negate(Apo.iteratee(t??cpo.identity)));return r.slice(n+1)}xer.takeRightWhile=dpo});var Zer=H(Fer=>{"use strict";Object.defineProperty(Fer,Symbol.toStringTag,{value:"Module"});var ppo=SZ(),fpo=HK(),Ipo=G3e(),hpo=b2(),mpo=im();function Cpo(e,t){if(!hpo.isArrayLikeObject(e))return[];let r=ppo.toArray(e),n=r.findIndex(Ipo.negate(mpo.iteratee(t??fpo.identity)));return n===-1?r:r.slice(0,n)}Fer.takeWhile=Cpo});var Ver=H(Ler=>{"use strict";Object.defineProperty(Ler,Symbol.toStringTag,{value:"Module"});var _po=N3e(),ypo=Wfe(),bpo=b2();function Epo(...e){let t=e.filter(bpo.isArrayLikeObject),r=_po.flatMapDepth(t,n=>Array.from(n),1);return ypo.uniq(r)}Ler.union=Epo});var Wer=H(Per=>{"use strict";Object.defineProperty(Per,Symbol.toStringTag,{value:"Module"});function Spo(e,t){let r=new Map;for(let n=0;n{"use strict";Object.defineProperty(Oer,Symbol.toStringTag,{value:"Module"});function vpo(e,t){return function(...r){return e.apply(this,r.slice(0,t))}}Oer.ary=vpo});var Qlt=H(Mer=>{"use strict";Object.defineProperty(Mer,Symbol.toStringTag,{value:"Module"});var Bpo=w3e(),wpo=Wfe(),Tpo=Wer(),Rpo=Ylt(),Npo=T3e(),Dpo=b2(),kpo=im();function xpo(...e){let t=Bpo.last(e),r=Npo.flattenArrayLike(e);return Dpo.isArrayLikeObject(t)||t==null?wpo.uniq(r):Tpo.uniqBy(r,Rpo.ary(kpo.iteratee(t),1))}Mer.unionBy=xpo});var Yer=H(Her=>{"use strict";Object.defineProperty(Her,Symbol.toStringTag,{value:"Module"});function Gpo(e,t){let r=[];for(let n=0;n!t(l,a))&&r.push(a)}return r}Her.uniqWith=Gpo});var Xlt=H(Qer=>{"use strict";Object.defineProperty(Qer,Symbol.toStringTag,{value:"Module"});var Fpo=w3e(),Zpo=Wfe(),Lpo=Yer(),Vpo=T3e(),Ppo=b2();function Wpo(...e){let t=Fpo.last(e),r=Vpo.flattenArrayLike(e);return Ppo.isArrayLikeObject(t)||t==null?Zpo.uniq(r):Lpo.uniqWith(r,t)}Qer.unionWith=Wpo});var Jer=H(Xer=>{"use strict";Object.defineProperty(Xer,Symbol.toStringTag,{value:"Module"});var Opo=Wer(),Mpo=Ylt(),Hpo=bm(),Ypo=b2(),Qpo=im();function Xpo(e,t=Hpo.identity){return Ypo.isArrayLikeObject(e)?Opo.uniqBy(Array.from(e),Mpo.ary(Qpo.iteratee(t),1)):[]}Xer.uniqBy=Xpo});var Ker=H(Uer=>{"use strict";Object.defineProperty(Uer,Symbol.toStringTag,{value:"Module"});var Jpo=Yer(),Upo=D3e(),Kpo=Sf();function jpo(e,t){return Kpo.isArrayLike(e)?typeof t=="function"?Jpo.uniqWith(Array.from(e),t):Upo.uniq(Array.from(e)):[]}Uer.uniqWith=jpo});var zer=H(jer=>{"use strict";Object.defineProperty(jer,Symbol.toStringTag,{value:"Module"});function zpo(e){let t=0;for(let n=0;nt&&(t=e[n].length);let r=new Array(t);for(let n=0;n{"use strict";Object.defineProperty(qer,Symbol.toStringTag,{value:"Module"});var qpo=zer(),$po=$q(),qTn=b2();function efo(e){return!qTn.isArrayLikeObject(e)||!e.length?[]:(e=$po.isArray(e)?e:Array.from(e),e=e.filter(t=>qTn.isArrayLikeObject(t)),qpo.unzip(e))}qer.unzip=efo});var etr=H($er=>{"use strict";Object.defineProperty($er,Symbol.toStringTag,{value:"Module"});var $Tn=zer(),tfo=$q(),rfo=b2();function nfo(e,t){if(!rfo.isArrayLikeObject(e)||!e.length)return[];let r=tfo.isArray(e)?$Tn.unzip(e):$Tn.unzip(Array.from(e,a=>Array.from(a)));if(!t)return r;let n=new Array(r.length);for(let a=0;a{"use strict";Object.defineProperty(ttr,Symbol.toStringTag,{value:"Module"});var ifo=B3e();function sfo(e,...t){return ifo.difference(e,t)}ttr.without=sfo});var ntr=H(rtr=>{"use strict";Object.defineProperty(rtr,Symbol.toStringTag,{value:"Module"});var ofo=eRn(),afo=b2();function cfo(e,...t){return afo.isArrayLikeObject(e)?ofo.without(Array.from(e),...t):[]}rtr.without=cfo});var str=H(itr=>{"use strict";Object.defineProperty(itr,Symbol.toStringTag,{value:"Module"});var lfo=b2(),ufo=F3e();function gfo(...e){let t=new Map;for(let n=0;n{"use strict";Object.defineProperty(otr,Symbol.toStringTag,{value:"Module"});function Afo(e,t,r=1,{partialWindows:n=!1}={}){if(t<=0||!Number.isInteger(t))throw new Error("Size must be a positive integer.");if(r<=0||!Number.isInteger(r))throw new Error("Step must be a positive integer.");let a=[],o=n?e.length:e.length-t+1;for(let l=0;l{"use strict";Object.defineProperty(ctr,Symbol.toStringTag,{value:"Module"});var dfo=vlt(),pfo=klt(),ffo=zq(),tRn=Qlt(),Ifo=atr(),hfo=bm(),rRn=b2(),mfo=im();function Cfo(...e){let t=ffo.last(e),r=hfo.identity;!rRn.isArrayLikeObject(t)&&t!=null&&(r=mfo.iteratee(t),e=e.slice(0,-1));let n=e.filter(rRn.isArrayLikeObject),a=tRn.unionBy(...n,r),o=Ifo.windowed(n,2).map(([l,A])=>pfo.intersectionBy(l,A,r));return dfo.differenceBy(a,tRn.unionBy(...o,r),r)}ctr.xorBy=Cfo});var gtr=H(utr=>{"use strict";Object.defineProperty(utr,Symbol.toStringTag,{value:"Module"});var _fo=Blt(),yfo=xlt(),bfo=zq(),nRn=Xlt(),Efo=atr(),Sfo=b2();function vfo(...e){let t=bfo.last(e),r=(l,A)=>l===A;typeof t=="function"&&(r=t,e=e.slice(0,-1));let n=e.filter(Sfo.isArrayLikeObject),a=nRn.unionWith(...n,r),o=Efo.windowed(n,2).map(([l,A])=>yfo.intersectionWith(l,A,r));return _fo.differenceWith(a,nRn.unionWith(...o,r),r)}utr.xorWith=vfo});var dtr=H(Atr=>{"use strict";Object.defineProperty(Atr,Symbol.toStringTag,{value:"Module"});function Bfo(...e){let t=0;for(let a=0;at&&(t=e[a].length);let r=e.length,n=Array(t);for(let a=0;a{"use strict";Object.defineProperty(ftr,Symbol.toStringTag,{value:"Module"});var wfo=dtr(),Tfo=b2();function Rfo(...e){return e.length?wfo.zip(...e.filter(t=>Tfo.isArrayLikeObject(t))):[]}ftr.zip=Rfo});var Ult=H(htr=>{"use strict";Object.defineProperty(htr,Symbol.toStringTag,{value:"Module"});var Nfo=Sk(),Dfo=(e,t,r)=>{let n=e[t];(!(Object.hasOwn(e,t)&&Nfo.isEqualsSameValueZero(n,r))||r===void 0&&!(t in e))&&(e[t]=r)};htr.assignValue=Dfo});var Ctr=H(mtr=>{"use strict";Object.defineProperty(mtr,Symbol.toStringTag,{value:"Module"});var kfo=Ult();function xfo(e=[],t=[]){let r={};for(let n=0;n{"use strict";Object.defineProperty(_tr,Symbol.toStringTag,{value:"Module"});var Gfo=eM(),Ffo=m3e(),Zfo=Ult(),Lfo=OSe(),Vfo=k3e(),Pfo=Kq(),iRn=tM(),Wfo=$5();function Ofo(e,t,r,n){if(e==null&&!iRn.isObject(e))return e;let a;Vfo.isKey(t,e)?a=[t]:Array.isArray(t)?a=t:a=Wfo.toPath(t);let o=r(Gfo.get(e,a)),l=e;for(let A=0;A{"use strict";Object.defineProperty(ytr,Symbol.toStringTag,{value:"Module"});var Mfo=XSe();function Hfo(e,t,r){return Mfo.updateWith(e,t,()=>r,()=>{})}ytr.set=Hfo});var Etr=H(btr=>{"use strict";Object.defineProperty(btr,Symbol.toStringTag,{value:"Module"});var Yfo=dtr(),Qfo=V3e(),sRn=Sf();function Xfo(e,t){let r={};if(!sRn.isArrayLike(e))return r;sRn.isArrayLike(t)||(t=[]);let n=Yfo.zip(Array.from(e),Array.from(t));for(let a=0;a{"use strict";Object.defineProperty(Str,Symbol.toStringTag,{value:"Module"});var Jfo=Jlt(),Ufo=coe();function Kfo(...e){let t=e.pop();if(Ufo.isFunction(t)||(e.push(t),t=void 0),!e?.length)return[];let r=Jfo.unzip(e);return t==null?r:r.map(n=>t(...n))}Str.zipWith=Kfo});var wtr=H(Btr=>{"use strict";Object.defineProperty(Btr,Symbol.toStringTag,{value:"Module"});var jfo=$w();function zfo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");return e=jfo.toInteger(e),function(...r){if(--e<1)return t.apply(this,r)}}Btr.after=zfo});var Klt=H(Ttr=>{"use strict";Object.defineProperty(Ttr,Symbol.toStringTag,{value:"Module"});var qfo=Ylt();function $fo(e,t=e.length,r){return r&&(t=e.length),(Number.isNaN(t)||t<0)&&(t=0),qfo.ary(e,t)}Ttr.ary=$fo});var jlt=H(Rtr=>{"use strict";Object.defineProperty(Rtr,Symbol.toStringTag,{value:"Module"});function eIo(e,...t){try{return e(...t)}catch(r){return r instanceof Error?r:new Error(r)}}Rtr.attempt=eIo});var Dtr=H(Ntr=>{"use strict";Object.defineProperty(Ntr,Symbol.toStringTag,{value:"Module"});var tIo=$w();function rIo(e,t){if(typeof t!="function")throw new TypeError("Expected a function");let r;return e=tIo.toInteger(e),function(...n){return--e>0&&(r=t.apply(this,n)),e<=1&&t&&(t=void 0),r}}Ntr.before=rIo});var Gtr=H(xtr=>{"use strict";Object.defineProperty(xtr,Symbol.toStringTag,{value:"Module"});function ktr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Ztr,Symbol.toStringTag,{value:"Module"});function Ftr(e,t,...r){let n=function(...a){let o=[],l=0;for(let A=0;A{"use strict";Object.defineProperty(Ptr,Symbol.toStringTag,{value:"Module"});function P3e(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===P3e.placeholder),l=a.length-o.length;return lA===P3e.placeholder),l=a.length-o.length;return a=sIo(a,r),l{"use strict";Object.defineProperty(Mtr,Symbol.toStringTag,{value:"Module"});function JSe(e,t=e.length,r){t=r?e.length:t,t=Number.parseInt(t,10),(Number.isNaN(t)||t<1)&&(t=0);let n=function(...a){let o=a.filter(A=>A===JSe.placeholder),l=a.length-o.length;return lA===JSe.placeholder),l=a.length-o.length;return a=oIo(a,r),ll===JSe.placeholder).length,n=Math.max(e.length-r,0),a=[],o=0;for(let l=0;l{"use strict";Object.defineProperty(Ytr,Symbol.toStringTag,{value:"Module"});function aIo(e,t,{signal:r,edges:n}={}){let a,o=null,l=n!=null&&n.includes("leading"),A=n==null||n.includes("trailing"),f=()=>{o!==null&&(e.apply(a,o),a=void 0,o=null)},I=()=>{A&&f(),N()},C=null,b=()=>{C!=null&&clearTimeout(C),C=setTimeout(()=>{C=null,I()},t)},E=()=>{C!==null&&(clearTimeout(C),C=null)},N=()=>{E(),a=void 0,o=null},B=()=>{f()},F=function(...Q){if(r?.aborted)return;a=this,o=Q;let X=C==null;b(),l&&X&&f()};return F.schedule=b,F.cancel=N,F.flush=B,r?.addEventListener("abort",N,{once:!0}),F}Ytr.debounce=aIo});var zlt=H(Qtr=>{"use strict";Object.defineProperty(Qtr,Symbol.toStringTag,{value:"Module"});var cIo=cRn();function lIo(e,t=0,r={}){typeof r!="object"&&(r={});let{leading:n=!1,trailing:a=!0,maxWait:o}=r,l=Array(2);n&&(l[0]="leading"),a&&(l[1]="trailing");let A,f=null,I=cIo.debounce(function(...E){A=e.apply(this,E),f=null},t,{edges:l}),C=function(...E){return o!=null&&(f===null&&(f=Date.now()),Date.now()-f>=o)?(A=e.apply(this,E),f=Date.now(),I.cancel(),I.schedule(),A):(I.apply(this,E),A)},b=()=>(I.flush(),A);return C.cancel=I.cancel,C.flush=b,C}Qtr.debounce=lIo});var Jtr=H(Xtr=>{"use strict";Object.defineProperty(Xtr,Symbol.toStringTag,{value:"Module"});function uIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,1,...t)}Xtr.defer=uIo});var Ktr=H(Utr=>{"use strict";Object.defineProperty(Utr,Symbol.toStringTag,{value:"Module"});var gIo=Q9();function AIo(e,t,...r){if(typeof e!="function")throw new TypeError("Expected a function");return setTimeout(e,gIo.toNumber(t)||0,...r)}Utr.delay=AIo});var ztr=H(jtr=>{"use strict";Object.defineProperty(jtr,Symbol.toStringTag,{value:"Module"});function dIo(e){return function(...t){return e.apply(this,t.reverse())}}jtr.flip=dIo});var $tr=H(qtr=>{"use strict";Object.defineProperty(qtr,Symbol.toStringTag,{value:"Module"});function pIo(...e){return function(...t){let r=e.length?e[0].apply(this,t):t[0];for(let n=1;n{"use strict";Object.defineProperty(trr,Symbol.toStringTag,{value:"Module"});var fIo=h3e(),IIo=$tr();function hIo(...e){let t=fIo.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return IIo.flow(...t)}trr.flow=hIo});var lRn=H(nrr=>{"use strict";Object.defineProperty(nrr,Symbol.toStringTag,{value:"Module"});var mIo=$tr();function CIo(...e){return mIo.flow(...e.reverse())}nrr.flowRight=CIo});var srr=H(irr=>{"use strict";Object.defineProperty(irr,Symbol.toStringTag,{value:"Module"});var _Io=h3e(),yIo=lRn();function bIo(...e){let t=_Io.flatten(e,1);if(t.some(r=>typeof r!="function"))throw new TypeError("Expected a function");return yIo.flowRight(...t)}irr.flowRight=bIo});var crr=H(arr=>{"use strict";Object.defineProperty(arr,Symbol.toStringTag,{value:"Module"});function orr(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError("Expected a function");let r=function(...a){let o=t?t.apply(this,a):a[0],l=r.cache;if(l.has(o))return l.get(o);let A=e.apply(this,a);return r.cache=l.set(o,A)||l,A},n=orr.Cache||Map;return r.cache=new n,r}orr.Cache=Map;arr.memoize=orr});var urr=H(lrr=>{"use strict";Object.defineProperty(lrr,Symbol.toStringTag,{value:"Module"});var EIo=$w();function SIo(e=0){return function(...t){return t.at(EIo.toInteger(e))}}lrr.nthArg=SIo});var uRn=H(grr=>{"use strict";Object.defineProperty(grr,Symbol.toStringTag,{value:"Module"});function vIo(e){let t=!1,r;return function(...n){return t||(t=!0,r=e(...n)),r}}grr.once=vIo});var drr=H(Arr=>{"use strict";Object.defineProperty(Arr,Symbol.toStringTag,{value:"Module"});var BIo=uRn();function wIo(e){return BIo.once(e)}Arr.once=wIo});var frr=H(prr=>{"use strict";Object.defineProperty(prr,Symbol.toStringTag,{value:"Module"});var TIo=bm(),RIo=im();function NIo(e,...t){if(typeof e!="function")throw new TypeError("Expected a function");let r=t.flat();return function(...n){let a=Math.min(n.length,r.length),o=[...n];for(let l=0;l{"use strict";Object.defineProperty(qlt,Symbol.toStringTag,{value:"Module"});function gRn(e,...t){return ARn(e,dRn,...t)}function ARn(e,t,...r){let n=function(...a){let o=0,l=r.slice().map(f=>f===t?a[o++]:f),A=a.slice(o);return e.apply(this,l.concat(A))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var dRn=Symbol("partial.placeholder");gRn.placeholder=dRn;qlt.partial=gRn;qlt.partialImpl=ARn});var mrr=H(hrr=>{"use strict";Object.defineProperty(hrr,Symbol.toStringTag,{value:"Module"});var DIo=pRn();function Irr(e,...t){return DIo.partialImpl(e,Irr.placeholder,...t)}Irr.placeholder=Symbol("compat.partial.placeholder");hrr.partial=Irr});var mRn=H($lt=>{"use strict";Object.defineProperty($lt,Symbol.toStringTag,{value:"Module"});function fRn(e,...t){return IRn(e,hRn,...t)}function IRn(e,t,...r){let n=function(...a){let o=r.filter(C=>C===t).length,l=Math.max(a.length-o,0),A=a.slice(0,l),f=l,I=r.slice().map(C=>C===t?a[f++]:C);return e.apply(this,A.concat(I))};return e.prototype&&(n.prototype=Object.create(e.prototype)),n}var hRn=Symbol("partialRight.placeholder");fRn.placeholder=hRn;$lt.partialRight=fRn;$lt.partialRightImpl=IRn});var yrr=H(_rr=>{"use strict";Object.defineProperty(_rr,Symbol.toStringTag,{value:"Module"});var kIo=mRn();function Crr(e,...t){return kIo.partialRightImpl(e,Crr.placeholder,...t)}Crr.placeholder=Symbol("compat.partialRight.placeholder");_rr.partialRight=Crr});var Err=H(brr=>{"use strict";Object.defineProperty(brr,Symbol.toStringTag,{value:"Module"});var xIo=Pfe();function GIo(e,...t){let r=xIo.flatten(t);return function(...n){let a=r.map(o=>n[o]).slice(0,n.length);for(let o=a.length;o{"use strict";Object.defineProperty(Srr,Symbol.toStringTag,{value:"Module"});function FIo(e,t=e.length-1){return function(...r){let n=r.slice(t),a=r.slice(0,t);for(;a.length{"use strict";Object.defineProperty(vrr,Symbol.toStringTag,{value:"Module"});var ZIo=CRn();function LIo(e,t=e.length-1){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=e.length-1),ZIo.rest(e,t)}vrr.rest=LIo});var Trr=H(wrr=>{"use strict";Object.defineProperty(wrr,Symbol.toStringTag,{value:"Module"});function VIo(e,t=0){return t=Number.parseInt(t,10),(Number.isNaN(t)||t<0)&&(t=0),function(...r){let n=r[t],a=r.slice(0,t);return n&&a.push(...n),e.apply(this,a)}}wrr.spread=VIo});var Nrr=H(Rrr=>{"use strict";Object.defineProperty(Rrr,Symbol.toStringTag,{value:"Module"});var PIo=zlt();function WIo(e,t=0,r={}){let{leading:n=!0,trailing:a=!0}=r;return PIo.debounce(e,t,{leading:n,maxWait:t,trailing:a})}Rrr.throttle=WIo});var krr=H(Drr=>{"use strict";Object.defineProperty(Drr,Symbol.toStringTag,{value:"Module"});var OIo=Klt();function MIo(e){return OIo.ary(e,1)}Drr.unary=MIo});var Grr=H(xrr=>{"use strict";Object.defineProperty(xrr,Symbol.toStringTag,{value:"Module"});var HIo=bm(),YIo=coe();function QIo(e,t){return function(...r){return(YIo.isFunction(t)?t:HIo.identity).apply(this,[e,...r])}}xrr.wrap=QIo});var Zrr=H(Frr=>{"use strict";Object.defineProperty(Frr,Symbol.toStringTag,{value:"Module"});var _Rn=Q9(),yRn=qy();function XIo(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=yRn.toString(e),t=yRn.toString(t)):(e=_Rn.toNumber(e),t=_Rn.toNumber(t)),e+t)}Frr.add=XIo});var eut=H(Lrr=>{"use strict";Object.defineProperty(Lrr,Symbol.toStringTag,{value:"Module"});function JIo(e,t,r=0){if(t=Number(t),Object.is(t,-0)&&(t="-0"),r=Math.min(Number.parseInt(r,10),292),r){let[n,a=0]=t.toString().split("e"),o=Math[e](+`${n}e${Number(a)+r}`);Object.is(o,-0)&&(o="-0");let[l,A=0]=o.toString().split("e");return+`${l}e${Number(A)-r}`}return Math[e](Number(t))}Lrr.decimalAdjust=JIo});var Prr=H(Vrr=>{"use strict";Object.defineProperty(Vrr,Symbol.toStringTag,{value:"Module"});var UIo=eut();function KIo(e,t=0){return UIo.decimalAdjust("ceil",e,t)}Vrr.ceil=KIo});var Orr=H(Wrr=>{"use strict";Object.defineProperty(Wrr,Symbol.toStringTag,{value:"Module"});var bRn=Q9(),ERn=qy();function jIo(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=ERn.toString(e),t=ERn.toString(t)):(e=bRn.toNumber(e),t=bRn.toNumber(t)),e/t)}Wrr.divide=jIo});var Hrr=H(Mrr=>{"use strict";Object.defineProperty(Mrr,Symbol.toStringTag,{value:"Module"});var zIo=eut();function qIo(e,t=0){return zIo.decimalAdjust("floor",e,t)}Mrr.floor=qIo});var SRn=H(Yrr=>{"use strict";Object.defineProperty(Yrr,Symbol.toStringTag,{value:"Module"});function $Io(e,t,r){if(r==null&&(r=t,t=0),t>=r)throw new Error("The maximum value must be greater than the minimum value.");return t<=e&&e{"use strict";Object.defineProperty(Qrr,Symbol.toStringTag,{value:"Module"});var eho=SRn();function tho(e,t,r){return t||(t=0),r!=null&&!r&&(r=0),t!=null&&typeof t!="number"&&(t=Number(t)),r==null&&t===0||(r!=null&&typeof r!="number"&&(r=Number(r)),r!=null&&t>r&&([t,r]=[r,t]),t===r)?!1:eho.inRange(e,t,r)}Qrr.inRange=tho});var Urr=H(Jrr=>{"use strict";Object.defineProperty(Jrr,Symbol.toStringTag,{value:"Module"});function rho(e){if(!e||e.length===0)return;let t;for(let r=0;rt)&&(t=n)}return t}Jrr.max=rho});var vRn=H(Krr=>{"use strict";Object.defineProperty(Krr,Symbol.toStringTag,{value:"Module"});function nho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;an&&(n=l,r=o)}return r}Krr.maxBy=nho});var zrr=H(jrr=>{"use strict";Object.defineProperty(jrr,Symbol.toStringTag,{value:"Module"});var iho=vRn(),sho=bm(),oho=im();function aho(e,t){if(e!=null)return iho.maxBy(Array.from(e),oho.iteratee(t??sho.identity))}jrr.maxBy=aho});var tut=H(qrr=>{"use strict";Object.defineProperty(qrr,Symbol.toStringTag,{value:"Module"});var cho=im();function lho(e,t){if(!e||!e.length)return 0;t!=null&&(t=cho.iteratee(t));let r;for(let n=0;n{"use strict";Object.defineProperty($rr,Symbol.toStringTag,{value:"Module"});var uho=tut();function gho(e){return uho.sumBy(e)}$rr.sum=gho});var tnr=H(enr=>{"use strict";Object.defineProperty(enr,Symbol.toStringTag,{value:"Module"});var Aho=rut();function dho(e){let t=e?e.length:0;return t===0?NaN:Aho.sum(e)/t}enr.mean=dho});var BRn=H(rnr=>{"use strict";Object.defineProperty(rnr,Symbol.toStringTag,{value:"Module"});function pho(e,t){let r=0;for(let n=0;n{"use strict";Object.defineProperty(nnr,Symbol.toStringTag,{value:"Module"});var fho=BRn();function Iho(e,t){return fho.sumBy(e,r=>t(r))/e.length}nnr.meanBy=Iho});var snr=H(inr=>{"use strict";Object.defineProperty(inr,Symbol.toStringTag,{value:"Module"});var hho=bm(),mho=wRn(),Cho=im();function _ho(e,t){return e==null?NaN:mho.meanBy(Array.from(e),Cho.iteratee(t??hho.identity))}inr.meanBy=_ho});var anr=H(onr=>{"use strict";Object.defineProperty(onr,Symbol.toStringTag,{value:"Module"});function yho(e){if(!e||e.length===0)return;let t;for(let r=0;r{"use strict";Object.defineProperty(cnr,Symbol.toStringTag,{value:"Module"});function bho(e,t){if(e.length===0)return;let r=e[0],n=t(r,0,e);for(let a=1;a{"use strict";Object.defineProperty(lnr,Symbol.toStringTag,{value:"Module"});var Eho=TRn(),Sho=bm(),vho=im();function Bho(e,t){if(e!=null)return Eho.minBy(Array.from(e),vho.iteratee(t??Sho.identity))}lnr.minBy=Bho});var Anr=H(gnr=>{"use strict";Object.defineProperty(gnr,Symbol.toStringTag,{value:"Module"});var RRn=Q9(),NRn=qy();function who(e,t){return e===void 0&&t===void 0?1:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=NRn.toString(e),t=NRn.toString(t)):(e=RRn.toNumber(e),t=RRn.toNumber(t)),e*t)}gnr.multiply=who});var pnr=H(dnr=>{"use strict";Object.defineProperty(dnr,Symbol.toStringTag,{value:"Module"});function Tho(e,t=0,r){return r&&(t=0),Number.parseInt(e,t)}dnr.parseInt=Tho});var Inr=H(fnr=>{"use strict";Object.defineProperty(fnr,Symbol.toStringTag,{value:"Module"});var DRn=Ofe(),Rho=V$t(),Nho=W$t();function Dho(...e){let t=0,r=1,n=!1;switch(e.length){case 1:{typeof e[0]=="boolean"?n=e[0]:r=e[0];break}case 2:typeof e[1]=="boolean"?(r=e[0],n=e[1]):(t=e[0],r=e[1]);case 3:typeof e[2]=="object"&&e[2]!=null&&e[2][e[1]]===e[0]?(t=0,r=e[0],n=!1):(t=e[0],r=e[1],n=e[2])}return typeof t!="number"&&(t=Number(t)),typeof r!="number"&&(t=Number(r)),t||(t=0),r||(r=0),t>r&&([t,r]=[r,t]),t=DRn.clamp(t,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),r=DRn.clamp(r,-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),t===r?t:n?Rho.random(t,r+1):Nho.randomInt(t,r+1)}fnr.random=Dho});var Cnr=H(mnr=>{"use strict";Object.defineProperty(mnr,Symbol.toStringTag,{value:"Module"});var kho=qq(),hnr=MSe();function xho(e,t,r){r&&typeof r!="number"&&kho.isIterateeCall(e,t,r)&&(t=r=void 0),e=hnr.toFinite(e),t===void 0?(t=e,e=0):t=hnr.toFinite(t),r=r===void 0?e{"use strict";Object.defineProperty(ynr,Symbol.toStringTag,{value:"Module"});var Gho=qq(),_nr=MSe();function Fho(e,t,r){r&&typeof r!="number"&&Gho.isIterateeCall(e,t,r)&&(t=r=void 0),e=_nr.toFinite(e),t===void 0?(t=e,e=0):t=_nr.toFinite(t),r=r===void 0?e=0;o--)a[o]=e,e+=r;return a}ynr.rangeRight=Fho});var Snr=H(Enr=>{"use strict";Object.defineProperty(Enr,Symbol.toStringTag,{value:"Module"});var Zho=eut();function Lho(e,t=0){return Zho.decimalAdjust("round",e,t)}Enr.round=Lho});var Bnr=H(vnr=>{"use strict";Object.defineProperty(vnr,Symbol.toStringTag,{value:"Module"});var kRn=Q9(),xRn=qy();function Vho(e,t){return e===void 0&&t===void 0?0:e===void 0||t===void 0?e??t:(typeof e=="string"||typeof t=="string"?(e=xRn.toString(e),t=xRn.toString(t)):(e=kRn.toNumber(e),t=kRn.toNumber(t)),e-t)}vnr.subtract=Vho});var GRn=H(wnr=>{"use strict";Object.defineProperty(wnr,Symbol.toStringTag,{value:"Module"});function Pho(e){if(!e||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}wnr.isPlainObject=Pho});var Rnr=H(Tnr=>{"use strict";Object.defineProperty(Tnr,Symbol.toStringTag,{value:"Module"});var FRn=noe(),ZRn=GRn(),LRn=_3e(),VRn=Zfe(),hy=y3e(),Who=Sk();function Oho(e,t,r){return W3e(e,t,void 0,void 0,void 0,void 0,r)}function W3e(e,t,r,n,a,o,l){let A=l(e,t,r,n,a,o);if(A!==void 0)return A;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return O3e(e,t,o,l)}return O3e(e,t,o,l)}function O3e(e,t,r,n){if(Object.is(e,t))return!0;let a=VRn.getTag(e),o=VRn.getTag(t);if(a===hy.argumentsTag&&(a=hy.objectTag),o===hy.argumentsTag&&(o=hy.objectTag),a!==o)return!1;switch(a){case hy.stringTag:return e.toString()===t.toString();case hy.numberTag:{let f=e.valueOf(),I=t.valueOf();return Who.isEqualsSameValueZero(f,I)}case hy.booleanTag:case hy.dateTag:case hy.symbolTag:return Object.is(e.valueOf(),t.valueOf());case hy.regexpTag:return e.source===t.source&&e.flags===t.flags;case hy.functionTag:return e===t}r=r??new Map;let l=r.get(e),A=r.get(t);if(l!=null&&A!=null)return l===t;r.set(e,t),r.set(t,e);try{switch(a){case hy.mapTag:{if(e.size!==t.size)return!1;for(let[f,I]of e.entries())if(!t.has(f)||!W3e(I,t.get(f),f,e,t,r,n))return!1;return!0}case hy.setTag:{if(e.size!==t.size)return!1;let f=Array.from(e.values()),I=Array.from(t.values());for(let C=0;CW3e(b,N,void 0,e,t,r,n));if(E===-1)return!1;I.splice(E,1)}return!0}case hy.arrayTag:case hy.uint8ArrayTag:case hy.uint8ClampedArrayTag:case hy.uint16ArrayTag:case hy.uint32ArrayTag:case hy.bigUint64ArrayTag:case hy.int8ArrayTag:case hy.int16ArrayTag:case hy.int32ArrayTag:case hy.bigInt64ArrayTag:case hy.float32ArrayTag:case hy.float64ArrayTag:{if(FRn.isBuffer(e)!==FRn.isBuffer(t)||e.length!==t.length)return!1;for(let f=0;f{"use strict";Object.defineProperty(Nnr,Symbol.toStringTag,{value:"Module"});function Mho(){}Nnr.noop=Mho});var xnr=H(knr=>{"use strict";Object.defineProperty(knr,Symbol.toStringTag,{value:"Module"});var Hho=Rnr(),Yho=Dnr();function Qho(e,t){return Hho.isEqualWith(e,t,Yho.noop)}knr.isEqual=Qho});var Fnr=H(Gnr=>{"use strict";Object.defineProperty(Gnr,Symbol.toStringTag,{value:"Module"});function Xho(...e){}Gnr.noop=Xho});var nut=H(Znr=>{"use strict";Object.defineProperty(Znr,Symbol.toStringTag,{value:"Module"});function Jho(e){let t=e?.constructor,r=typeof t=="function"?t.prototype:Object.prototype;return e===r}Znr.isPrototype=Jho});var e$=H(Lnr=>{"use strict";Object.defineProperty(Lnr,Symbol.toStringTag,{value:"Module"});var Uho=Elt();function Kho(e){return Uho.isTypedArray(e)}Lnr.isTypedArray=Kho});var M3e=H(Vnr=>{"use strict";Object.defineProperty(Vnr,Symbol.toStringTag,{value:"Module"});var jho=$w();function zho(e,t){if(e=jho.toInteger(e),e<1||!Number.isSafeInteger(e))return[];let r=new Array(e);for(let n=0;n{"use strict";Object.defineProperty(Pnr,Symbol.toStringTag,{value:"Module"});var qho=noe(),$ho=nut(),emo=Sf(),tmo=e$(),rmo=M3e();function nmo(e){if(emo.isArrayLike(e))return imo(e);let t=Object.keys(Object(e));return $ho.isPrototype(e)?t.filter(r=>r!=="constructor"):t}function imo(e){let t=rmo.times(e.length,a=>`${a}`),r=new Set(t);qho.isBuffer(e)&&(r.add("offset"),r.add("parent")),tmo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=Object.keys(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}Pnr.keys=nmo});var Onr=H(Wnr=>{"use strict";Object.defineProperty(Wnr,Symbol.toStringTag,{value:"Module"});var smo=YK(),omo=Sk();function amo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(Mnr,Symbol.toStringTag,{value:"Module"});var lmo=noe(),umo=nut(),gmo=Sf(),Amo=e$(),dmo=M3e();function pmo(e){if(e==null)return[];switch(typeof e){case"object":case"function":return gmo.isArrayLike(e)?Imo(e):umo.isPrototype(e)?fmo(e):iut(e);default:return iut(Object(e))}}function iut(e){let t=[];for(let r in e)t.push(r);return t}function fmo(e){return iut(e).filter(r=>r!=="constructor")}function Imo(e){let t=dmo.times(e.length,a=>`${a}`),r=new Set(t);lmo.isBuffer(e)&&(r.add("offset"),r.add("parent")),Amo.isTypedArray(e)&&(r.add("buffer"),r.add("byteLength"),r.add("byteOffset"));let n=iut(e).filter(a=>!r.has(a));return Array.isArray(e)?[...t,...n]:[...t.filter(a=>Object.hasOwn(e,a)),...n]}Mnr.keysIn=pmo});var Ynr=H(Hnr=>{"use strict";Object.defineProperty(Hnr,Symbol.toStringTag,{value:"Module"});var hmo=iX(),mmo=Sk();function Cmo(e,...t){for(let r=0;r{"use strict";Object.defineProperty(Qnr,Symbol.toStringTag,{value:"Module"});var ymo=iX(),bmo=Sk();function Emo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(Jnr,Symbol.toStringTag,{value:"Module"});var vmo=YK(),Bmo=Sk();function wmo(e,...t){let r=t[t.length-1];typeof r=="function"?t.pop():r=void 0;for(let n=0;n{"use strict";Object.defineProperty(jnr,Symbol.toStringTag,{value:"Module"});var Rmo=PSe(),PRn=Zfe(),KC=y3e(),Nmo=$q(),Dmo=e$();function kmo(e){if(Rmo.isPrimitive(e))return e;let t=PRn.getTag(e);if(!xmo(e))return{};if(Nmo.isArray(e)){let n=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(n.index=e.index,n.input=e.input),n}if(Dmo.isTypedArray(e)){let n=e,a=n.constructor;return new a(n.buffer,n.byteOffset,n.length)}if(t===KC.arrayBufferTag)return new ArrayBuffer(e.byteLength);if(t===KC.dataViewTag){let n=e,a=n.buffer,o=n.byteOffset,l=n.byteLength,A=new ArrayBuffer(l),f=new Uint8Array(a,o,l);return new Uint8Array(A).set(f),new DataView(A)}if(t===KC.booleanTag||t===KC.numberTag||t===KC.stringTag){let n=e.constructor,a=new n(e.valueOf());return t===KC.stringTag?Fmo(a,e):Knr(a,e),a}if(t===KC.dateTag)return new Date(Number(e));if(t===KC.regexpTag){let n=e,a=new RegExp(n.source,n.flags);return a.lastIndex=n.lastIndex,a}if(t===KC.symbolTag)return Object(Symbol.prototype.valueOf.call(e));if(t===KC.mapTag){let n=e,a=new Map;return n.forEach((o,l)=>{a.set(l,o)}),a}if(t===KC.setTag){let n=e,a=new Set;return n.forEach(o=>{a.add(o)}),a}if(t===KC.argumentsTag){let n=e,a={};return Knr(a,n),a.length=n.length,a[Symbol.iterator]=n[Symbol.iterator],a}let r={};return Zmo(r,e),Knr(r,e),Gmo(r,e),r}function xmo(e){switch(PRn.getTag(e)){case KC.argumentsTag:case KC.arrayTag:case KC.arrayBufferTag:case KC.dataViewTag:case KC.booleanTag:case KC.dateTag:case KC.float32ArrayTag:case KC.float64ArrayTag:case KC.int8ArrayTag:case KC.int16ArrayTag:case KC.int32ArrayTag:case KC.mapTag:case KC.numberTag:case KC.objectTag:case KC.regexpTag:case KC.setTag:case KC.stringTag:case KC.symbolTag:case KC.uint8ArrayTag:case KC.uint8ClampedArrayTag:case KC.uint16ArrayTag:case KC.uint32ArrayTag:return!0;default:return!1}}function Knr(e,t){for(let r in t)Object.hasOwn(t,r)&&(e[r]=t[r])}function Gmo(e,t){let r=Object.getOwnPropertySymbols(t);for(let n=0;n=r)&&(e[n]=t[n])}function Zmo(e,t){let r=Object.getPrototypeOf(t);r!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,r)}jnr.clone=kmo});var qnr=H(znr=>{"use strict";Object.defineProperty(znr,Symbol.toStringTag,{value:"Module"});var WRn=sut();function Lmo(e,t){if(!t)return WRn.clone(e);let r=t(e);return r!==void 0?r:WRn.clone(e)}znr.cloneWith=Lmo});var eir=H($nr=>{"use strict";Object.defineProperty($nr,Symbol.toStringTag,{value:"Module"});var Vmo=YK(),Pmo=Ult(),Wmo=tM();function Omo(e,t){let r=Wmo.isObject(e)?Object.create(e):{};if(t!=null){let n=Vmo.keys(t);for(let a=0;a{"use strict";Object.defineProperty(tir,Symbol.toStringTag,{value:"Module"});var Mmo=aoe(),Hmo=qq(),Ymo=Sk();function Qmo(e,...t){e=Object(e);let r=Object.prototype,n=t.length,a=n>2?t[2]:void 0;a&&Hmo.isIterateeCall(t[0],t[1],a)&&(n=1);for(let o=0;o{"use strict";Object.defineProperty(rir,Symbol.toStringTag,{value:"Module"});function Xmo(e){if(typeof e!="object"||e==null)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!=="[object Object]"){let r=e[Symbol.toStringTag];return r==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${r}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}rir.isPlainObject=Xmo});var iir=H(nir=>{"use strict";Object.defineProperty(nir,Symbol.toStringTag,{value:"Module"});var Y3e=Mfe();function Jmo(e,...t){e=Object(e);for(let r=0;r{"use strict";Object.defineProperty(sir,Symbol.toStringTag,{value:"Module"});function zmo(e,t){return Object.keys(e).find(n=>t(e[n],n,e))}sir.findKey=zmo});var air=H(oir=>{"use strict";Object.defineProperty(oir,Symbol.toStringTag,{value:"Module"});var qmo=ORn(),$mo=HK(),eCo=tM(),tCo=im();function rCo(e,t){if(!eCo.isObject(e))return;let r=tCo.iteratee(t??$mo.identity);return qmo.findKey(e,r)}oir.findKey=rCo});var lir=H(cir=>{"use strict";Object.defineProperty(cir,Symbol.toStringTag,{value:"Module"});var nCo=HK(),iCo=tM(),sCo=im();function oCo(e,t){if(!iCo.isObject(e))return;let r=sCo.iteratee(t??nCo.identity);return Object.keys(e).findLast(a=>r(e[a],a,e))}cir.findLastKey=oCo});var gir=H(uir=>{"use strict";Object.defineProperty(uir,Symbol.toStringTag,{value:"Module"});var aCo=bm();function cCo(e,t=aCo.identity){if(e==null)return e;for(let r in e)if(t(e[r],r,e)===!1)break;return e}uir.forIn=cCo});var dir=H(Air=>{"use strict";Object.defineProperty(Air,Symbol.toStringTag,{value:"Module"});var lCo=bm();function uCo(e,t=lCo.identity){if(e==null)return e;let r=[];for(let n in e)r.push(n);for(let n=r.length-1;n>=0;n--){let a=r[n];if(t(e[a],a,e)===!1)break}return e}Air.forInRight=uCo});var fir=H(pir=>{"use strict";Object.defineProperty(pir,Symbol.toStringTag,{value:"Module"});var gCo=YK(),ACo=bm();function dCo(e,t=ACo.identity){if(e==null)return e;let r=Object(e),n=gCo.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Iir,Symbol.toStringTag,{value:"Module"});var pCo=YK(),fCo=bm();function ICo(e,t=fCo.identity){if(e==null)return e;let r=Object(e),n=pCo.keys(e);for(let a=n.length-1;a>=0;--a){let o=n[a];if(t(r[o],o,r)===!1)break}return e}Iir.forOwnRight=ICo});var Cir=H(mir=>{"use strict";Object.defineProperty(mir,Symbol.toStringTag,{value:"Module"});var hCo=Sf();function mCo(e){if(!hCo.isArrayLike(e))return{};let t={};for(let r=0;r{"use strict";Object.defineProperty(_ir,Symbol.toStringTag,{value:"Module"});var CCo=YK();function _Co(e){return e==null?[]:CCo.keys(e).filter(t=>typeof e[t]=="function")}_ir.functions=_Co});var Eir=H(bir=>{"use strict";Object.defineProperty(bir,Symbol.toStringTag,{value:"Module"});var yCo=coe();function bCo(e){if(e==null)return[];let t=[];for(let r in e)yCo.isFunction(e[r])&&t.push(r);return t}bir.functionsIn=bCo});var vir=H(Sir=>{"use strict";Object.defineProperty(Sir,Symbol.toStringTag,{value:"Module"});var ECo=VSe(),SCo=OSe(),vCo=Vfe(),BCo=$5();function wCo(e,t){if(e==null)return!1;let r;if(Array.isArray(t)?r=t:typeof t=="string"&&ECo.isDeepKey(t)&&e[t]==null?r=BCo.toPath(t):r=[t],r.length===0)return!1;let n=e;for(let a=0;a{"use strict";Object.defineProperty(Bir,Symbol.toStringTag,{value:"Module"});function TCo(e){let t={},r=Object.keys(e);for(let n=0;n{"use strict";Object.defineProperty(wir,Symbol.toStringTag,{value:"Module"});var RCo=MRn();function NCo(e){return RCo.invert(e)}wir.invert=NCo});var Nir=H(Rir=>{"use strict";Object.defineProperty(Rir,Symbol.toStringTag,{value:"Module"});var DCo=bm(),kCo=aoe(),xCo=im();function GCo(e,t){let r={};if(kCo.isNil(e))return r;t==null&&(t=DCo.identity);let n=Object.keys(e),a=xCo.iteratee(t);for(let o=0;o{"use strict";Object.defineProperty(Dir,Symbol.toStringTag,{value:"Module"});function FCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(kir,Symbol.toStringTag,{value:"Module"});var ZCo=bm(),LCo=HRn(),VCo=im();function PCo(e,t=ZCo.identity){return e==null?{}:LCo.mapKeys(e,VCo.iteratee(t))}kir.mapKeys=PCo});var YRn=H(Gir=>{"use strict";Object.defineProperty(Gir,Symbol.toStringTag,{value:"Module"});function WCo(e,t){let r={},n=Object.keys(e);for(let a=0;a{"use strict";Object.defineProperty(Fir,Symbol.toStringTag,{value:"Module"});var OCo=bm(),MCo=YRn(),HCo=im();function YCo(e,t=OCo.identity){return e==null?{}:MCo.mapValues(e,HCo.iteratee(t))}Fir.mapValues=YCo});var QRn=H(Lir=>{"use strict";Object.defineProperty(Lir,Symbol.toStringTag,{value:"Module"});var QCo=PSe(),XCo=Elt();function JCo(e){if(QCo.isPrimitive(e))return e;if(Array.isArray(e)||XCo.isTypedArray(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){let n=new r(e);return n.lastIndex=e.lastIndex,n}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let n;return e instanceof AggregateError?n=new r(e.errors,e.message,{cause:e.cause}):n=new r(e.message,{cause:e.cause}),n.stack=e.stack,Object.assign(n,e),n}if(typeof File<"u"&&e instanceof File)return new r([e],e.name,{type:e.type,lastModified:e.lastModified});if(typeof e=="object"){let n=Object.create(t);return Object.assign(n,e)}return e}Lir.clone=JCo});var cut=H(Wir=>{"use strict";Object.defineProperty(Wir,Symbol.toStringTag,{value:"Module"});var XRn=WSe(),UCo=m3e(),KCo=QRn(),jCo=noe(),zCo=PSe(),qCo=_3e(),JRn=Vfe(),$Co=b2(),URn=ioe(),Vir=Mfe(),Pir=e$();function e_o(e,...t){let r=t.slice(0,-1),n=t[t.length-1],a=e;for(let o=0;o{"use strict";Object.defineProperty(Oir,Symbol.toStringTag,{value:"Module"});var t_o=cut(),r_o=Dnr();function n_o(e,...t){return t_o.mergeWith(e,...t,r_o.noop)}Oir.merge=n_o});var lut=H(Hir=>{"use strict";Object.defineProperty(Hir,Symbol.toStringTag,{value:"Module"});var i_o=_3e();function s_o(e){let t=[];for(;e;)t.push(...i_o.getSymbols(e)),e=Object.getPrototypeOf(e);return t}Hir.getSymbolsIn=s_o});var Qir=H(Yir=>{"use strict";Object.defineProperty(Yir,Symbol.toStringTag,{value:"Module"});var o_o=S3e(),jRn=iX(),KRn=x3e(),zRn=lut(),a_o=VSe(),c_o=Pfe(),l_o=Mfe();function u_o(e,...t){if(e==null)return{};t=c_o.flatten(t);let r=g_o(e,t);for(let n=0;nArray.isArray(n)||a_o.isDeepKey(n))?d_o(e):A_o(e)}function A_o(e){let t={},r=[...jRn.keysIn(e),...zRn.getSymbolsIn(e)];for(let n=0;n{if(!l_o.isPlainObject(o))return o})}return t}Yir.omit=u_o});var Jir=H(Xir=>{"use strict";Object.defineProperty(Xir,Symbol.toStringTag,{value:"Module"});var p_o=iX(),f_o=ooe(),I_o=lut(),h_o=HK(),m_o=Sf(),C_o=soe(),__o=im();function y_o(e,t){if(e==null)return{};let r={},n=__o.iteratee(t??h_o.identity),a=m_o.isArrayLike(e)?f_o.range(0,e.length):[...p_o.keysIn(e),...I_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(Uir,Symbol.toStringTag,{value:"Module"});var b_o=eM(),E_o=v3e(),S_o=V3e(),v_o=Sf(),B_o=QSe();function w_o(e,...t){if(B_o.isNil(e))return{};let r={};for(let n=0;n{"use strict";Object.defineProperty(jir,Symbol.toStringTag,{value:"Module"});var T_o=iX(),R_o=ooe(),N_o=lut(),D_o=HK(),k_o=Sf(),x_o=soe(),G_o=im();function F_o(e,t){if(e==null)return{};let r=G_o.iteratee(t??D_o.identity),n={},a=k_o.isArrayLike(e)?R_o.range(0,e.length):[...T_o.keysIn(e),...N_o.getSymbolsIn(e)];for(let o=0;o{"use strict";Object.defineProperty(qir,Symbol.toStringTag,{value:"Module"});var Z_o=eM();function L_o(e){return function(t){return Z_o.get(e,t)}}qir.propertyOf=L_o});var tsr=H(esr=>{"use strict";Object.defineProperty(esr,Symbol.toStringTag,{value:"Module"});var V_o=k3e(),P_o=Kq(),W_o=$5(),O_o=qy();function M_o(e,t,r){V_o.isKey(t,e)?t=[t]:Array.isArray(t)||(t=W_o.toPath(O_o.toString(t)));let n=Math.max(t.length,1);for(let a=0;a{"use strict";Object.defineProperty(rsr,Symbol.toStringTag,{value:"Module"});var H_o=XSe();function Y_o(e,t,r,n){let a;return typeof n=="function"?a=n:a=()=>{},H_o.updateWith(e,t,()=>r,a)}rsr.setWith=Y_o});var ssr=H(isr=>{"use strict";Object.defineProperty(isr,Symbol.toStringTag,{value:"Module"});var Q_o=WSe(),X_o=H3e();function J_o(e,...t){let r=Q_o.cloneDeep(e);return X_o.defaults(r,...t)}isr.toDefaulted=J_o});var asr=H(osr=>{"use strict";Object.defineProperty(osr,Symbol.toStringTag,{value:"Module"});function U_o(e){let t=new Array(e.size),r=e.keys(),n=e.values();for(let a=0;a{"use strict";Object.defineProperty(csr,Symbol.toStringTag,{value:"Module"});function K_o(e){let t=new Array(e.size),r=e.values();for(let n=0;n{"use strict";Object.defineProperty(usr,Symbol.toStringTag,{value:"Module"});var j_o=YK(),z_o=asr(),q_o=lsr();function $_o(e){if(e==null)return[];if(e instanceof Set)return q_o.setToEntries(e);if(e instanceof Map)return z_o.mapToEntries(e);let t=j_o.keys(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(Asr,Symbol.toStringTag,{value:"Module"});var e0o=iX(),t0o=asr(),r0o=lsr();function n0o(e){if(e==null)return[];if(e instanceof Set)return r0o.setToEntries(e);if(e instanceof Map)return t0o.mapToEntries(e);let t=e0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(psr,Symbol.toStringTag,{value:"Module"});var i0o=noe();function s0o(e){return i0o.isBuffer(e)}psr.isBuffer=s0o});var Isr=H(fsr=>{"use strict";Object.defineProperty(fsr,Symbol.toStringTag,{value:"Module"});var o0o=bm(),a0o=coe(),c0o=Rlt(),l0o=uut(),u0o=tM(),g0o=e$(),A0o=im();function d0o(e,t=o0o.identity,r){let n=Array.isArray(e)||l0o.isBuffer(e)||g0o.isTypedArray(e);return t=A0o.iteratee(t),r==null&&(n?r=[]:u0o.isObject(e)&&a0o.isFunction(e.constructor)?r=Object.create(Object.getPrototypeOf(e)):r={}),e==null||c0o.forEach(e,(a,o,l)=>t(r,a,o,l)),r}fsr.transform=d0o});var msr=H(hsr=>{"use strict";Object.defineProperty(hsr,Symbol.toStringTag,{value:"Module"});var p0o=XSe();function f0o(e,t,r){return p0o.updateWith(e,t,r,()=>{})}hsr.update=f0o});var _sr=H(Csr=>{"use strict";Object.defineProperty(Csr,Symbol.toStringTag,{value:"Module"});var I0o=iX();function h0o(e){let t=I0o.keysIn(e),r=new Array(t.length);for(let n=0;n{"use strict";Object.defineProperty(ysr,Symbol.toStringTag,{value:"Module"});function m0o(e){return typeof e=="function"}ysr.isFunction=m0o});var Ssr=H(Esr=>{"use strict";Object.defineProperty(Esr,Symbol.toStringTag,{value:"Module"});function C0o(e){return Number.isSafeInteger(e)&&e>=0}Esr.isLength=C0o});var Bsr=H(vsr=>{"use strict";Object.defineProperty(vsr,Symbol.toStringTag,{value:"Module"});var qRn=Function.prototype.toString,_0o=/[\\^$.*+?()[\]{}|]/g,y0o=RegExp(`^${qRn.call(Object.prototype.hasOwnProperty).replace(_0o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")}$`);function b0o(e){if(typeof e!="function")return!1;if(globalThis?.["__core-js_shared__"]!=null)throw new Error("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return y0o.test(qRn.call(e))}vsr.isNative=b0o});var Tsr=H(wsr=>{"use strict";Object.defineProperty(wsr,Symbol.toStringTag,{value:"Module"});function E0o(e){return e===null}wsr.isNull=E0o});var Nsr=H(Rsr=>{"use strict";Object.defineProperty(Rsr,Symbol.toStringTag,{value:"Module"});var S0o=uer();function v0o(e){return S0o.isUndefined(e)}Rsr.isUndefined=v0o});var gut=H(Dsr=>{"use strict";Object.defineProperty(Dsr,Symbol.toStringTag,{value:"Module"});function B0o(e,t){if(t==null)return!0;if(e==null)return Object.keys(t).length===0;let r=Object.keys(t);for(let n=0;n{"use strict";Object.defineProperty(ksr,Symbol.toStringTag,{value:"Module"});var w0o=gut(),T0o=izt();function R0o(e){return e=T0o.cloneDeep(e),function(t){return w0o.conformsTo(t,e)}}ksr.conforms=R0o});var $Rn=H(Gsr=>{"use strict";Object.defineProperty(Gsr,Symbol.toStringTag,{value:"Module"});function N0o(e){return e instanceof ArrayBuffer}Gsr.isArrayBuffer=N0o});var Zsr=H(Fsr=>{"use strict";Object.defineProperty(Fsr,Symbol.toStringTag,{value:"Module"});var D0o=$Rn();function k0o(e){return D0o.isArrayBuffer(e)}Fsr.isArrayBuffer=k0o});var Vsr=H(Lsr=>{"use strict";Object.defineProperty(Lsr,Symbol.toStringTag,{value:"Module"});function x0o(e){return typeof e=="boolean"||e instanceof Boolean}Lsr.isBoolean=x0o});var eNn=H(Psr=>{"use strict";Object.defineProperty(Psr,Symbol.toStringTag,{value:"Module"});function G0o(e){return e instanceof Date}Psr.isDate=G0o});var Osr=H(Wsr=>{"use strict";Object.defineProperty(Wsr,Symbol.toStringTag,{value:"Module"});var F0o=eNn();function Z0o(e){return F0o.isDate(e)}Wsr.isDate=Z0o});var Hsr=H(Msr=>{"use strict";Object.defineProperty(Msr,Symbol.toStringTag,{value:"Module"});var L0o=ioe(),V0o=Mfe();function P0o(e){return L0o.isObjectLike(e)&&e.nodeType===1&&!V0o.isPlainObject(e)}Msr.isElement=P0o});var Qsr=H(Ysr=>{"use strict";Object.defineProperty(Ysr,Symbol.toStringTag,{value:"Module"});var W0o=Vfe(),O0o=Sf(),M0o=e$(),H0o=noe(),Y0o=nut();function Q0o(e){if(e==null)return!0;if(O0o.isArrayLike(e))return typeof e.splice!="function"&&typeof e!="string"&&!H0o.isBuffer(e)&&!M0o.isTypedArray(e)&&!W0o.isArguments(e)?!1:e.length===0;if(typeof e=="object"){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return Y0o.isPrototype(e)?t.filter(r=>r!=="constructor").length===0:t.length===0}return!0}Ysr.isEmpty=Q0o});var tNn=H(Xsr=>{"use strict";Object.defineProperty(Xsr,Symbol.toStringTag,{value:"Module"});function X0o(e,t){if(!Number.isInteger(e)||e<0)throw new Error("n must be a non-negative integer.");let r=0;return(...n)=>{if(++r>=e)return t(...n)}}Xsr.after=X0o});var Ksr=H(Usr=>{"use strict";Object.defineProperty(Usr,Symbol.toStringTag,{value:"Module"});var rNn=tNn(),J0o=Rnr();function Jsr(e,t,r){return typeof r!="function"&&(r=()=>{}),J0o.isEqualWith(e,t,(...n)=>{let a=r(...n);if(a!==void 0)return!!a;if(e instanceof Map&&t instanceof Map||e instanceof Set&&t instanceof Set)return Jsr(Array.from(e),Array.from(t),rNn.after(2,r))})}Usr.isEqualWith=Jsr});var zsr=H(jsr=>{"use strict";Object.defineProperty(jsr,Symbol.toStringTag,{value:"Module"});var U0o=Zfe();function K0o(e){return U0o.getTag(e)==="[object Error]"}jsr.isError=K0o});var $sr=H(qsr=>{"use strict";Object.defineProperty(qsr,Symbol.toStringTag,{value:"Module"});function j0o(e){return Number.isFinite(e)}qsr.isFinite=j0o});var tor=H(eor=>{"use strict";Object.defineProperty(eor,Symbol.toStringTag,{value:"Module"});function z0o(e){return Number.isInteger(e)}eor.isInteger=z0o});var nNn=H(ror=>{"use strict";Object.defineProperty(ror,Symbol.toStringTag,{value:"Module"});function q0o(e){return e instanceof RegExp}ror.isRegExp=q0o});var ior=H(nor=>{"use strict";Object.defineProperty(nor,Symbol.toStringTag,{value:"Module"});var $0o=nNn();function eyo(e){return $0o.isRegExp(e)}nor.isRegExp=eyo});var oor=H(sor=>{"use strict";Object.defineProperty(sor,Symbol.toStringTag,{value:"Module"});function tyo(e){return Number.isSafeInteger(e)}sor.isSafeInteger=tyo});var iNn=H(aor=>{"use strict";Object.defineProperty(aor,Symbol.toStringTag,{value:"Module"});function ryo(e){return e instanceof Set}aor.isSet=ryo});var lor=H(cor=>{"use strict";Object.defineProperty(cor,Symbol.toStringTag,{value:"Module"});var nyo=iNn();function iyo(e){return nyo.isSet(e)}cor.isSet=iyo});var sNn=H(uor=>{"use strict";Object.defineProperty(uor,Symbol.toStringTag,{value:"Module"});function syo(e){return e instanceof WeakMap}uor.isWeakMap=syo});var Aor=H(gor=>{"use strict";Object.defineProperty(gor,Symbol.toStringTag,{value:"Module"});var oyo=sNn();function ayo(e){return oyo.isWeakMap(e)}gor.isWeakMap=ayo});var oNn=H(dor=>{"use strict";Object.defineProperty(dor,Symbol.toStringTag,{value:"Module"});function cyo(e){return e instanceof WeakSet}dor.isWeakSet=cyo});var Ior=H(por=>{"use strict";Object.defineProperty(por,Symbol.toStringTag,{value:"Module"});var lyo=oNn();function uyo(e){return lyo.isWeakSet(e)}por.isWeakSet=uyo});var mor=H(hor=>{"use strict";Object.defineProperty(hor,Symbol.toStringTag,{value:"Module"});function gyo(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}hor.capitalize=gyo});var _or=H(Cor=>{"use strict";Object.defineProperty(Cor,Symbol.toStringTag,{value:"Module"});var Ayo=mor(),dyo=qy();function pyo(e){return Ayo.capitalize(dyo.toString(e))}Cor.capitalize=pyo});var bor=H(yor=>{"use strict";Object.defineProperty(yor,Symbol.toStringTag,{value:"Module"});var fyo=coe(),aNn=$q(),Iyo=tM(),hyo=qy();function myo(e,...t){if(e==null||!Iyo.isObject(e)||aNn.isArray(e)&&t.length===0)return e;let r=[];for(let n=0;n{"use strict";Object.defineProperty(Eor,Symbol.toStringTag,{value:"Module"});var Cyo=new Map([["\xC6","Ae"],["\xD0","D"],["\xD8","O"],["\xDE","Th"],["\xDF","ss"],["\xE6","ae"],["\xF0","d"],["\xF8","o"],["\xFE","th"],["\u0110","D"],["\u0111","d"],["\u0126","H"],["\u0127","h"],["\u0131","i"],["\u0132","IJ"],["\u0133","ij"],["\u0138","k"],["\u013F","L"],["\u0140","l"],["\u0141","L"],["\u0142","l"],["\u0149","'n"],["\u014A","N"],["\u014B","n"],["\u0152","Oe"],["\u0153","oe"],["\u0166","T"],["\u0167","t"],["\u017F","s"]]);function _yo(e){e=e.normalize("NFD");let t="";for(let r=0;r="\u0300"&&n<="\u036F"||n>="\uFE20"&&n<="\uFE23"||(t+=Cyo.get(n)??n)}return t}Eor.deburr=_yo});var t$=H(Sor=>{"use strict";Object.defineProperty(Sor,Symbol.toStringTag,{value:"Module"});var yyo=cNn(),byo=qy();function Eyo(e){return yyo.deburr(byo.toString(e))}Sor.deburr=Eyo});var Hfe=H(Aut=>{"use strict";Object.defineProperty(Aut,Symbol.toStringTag,{value:"Module"});var lNn=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function Syo(e){return Array.from(e.match(lNn)??[])}Aut.CASE_SPLIT_PATTERN=lNn;Aut.words=Syo});var uNn=H(vor=>{"use strict";Object.defineProperty(vor,Symbol.toStringTag,{value:"Module"});var vyo=mor(),Byo=Hfe();function wyo(e){let t=Byo.words(e);if(t.length===0)return"";let[r,...n]=t;return`${r.toLowerCase()}${n.map(a=>vyo.capitalize(a)).join("")}`}vor.camelCase=wyo});var Yfe=H(Bor=>{"use strict";Object.defineProperty(Bor,Symbol.toStringTag,{value:"Module"});var Tyo=qy();function Ryo(e){return typeof e!="string"&&(e=Tyo.toString(e)),e.replace(/['\u2019]/g,"")}Bor.normalizeForCase=Ryo});var Tor=H(wor=>{"use strict";Object.defineProperty(wor,Symbol.toStringTag,{value:"Module"});var Nyo=t$(),Dyo=uNn(),kyo=Yfe();function xyo(e){return Dyo.camelCase(kyo.normalizeForCase(Nyo.deburr(e)))}wor.camelCase=xyo});var Nor=H(Ror=>{"use strict";Object.defineProperty(Ror,Symbol.toStringTag,{value:"Module"});function Gyo(e,t,r){return e==null||t==null?!1:(r==null&&(r=e.length),e.endsWith(t,r))}Ror.endsWith=Gyo});var gNn=H(Dor=>{"use strict";Object.defineProperty(Dor,Symbol.toStringTag,{value:"Module"});var Fyo={"&":"&","<":"<",">":">",'"':""","'":"'"};function Zyo(e){return e.replace(/[&<>"']/g,t=>Fyo[t])}Dor.escape=Zyo});var dut=H(kor=>{"use strict";Object.defineProperty(kor,Symbol.toStringTag,{value:"Module"});var Lyo=gNn(),Vyo=qy();function Pyo(e){return Lyo.escape(Vyo.toString(e))}kor.escape=Pyo});var ANn=H(xor=>{"use strict";Object.defineProperty(xor,Symbol.toStringTag,{value:"Module"});function Wyo(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}xor.escapeRegExp=Wyo});var For=H(Gor=>{"use strict";Object.defineProperty(Gor,Symbol.toStringTag,{value:"Module"});var Oyo=ANn(),Myo=qy();function Hyo(e){return Oyo.escapeRegExp(Myo.toString(e))}Gor.escapeRegExp=Hyo});var dNn=H(Zor=>{"use strict";Object.defineProperty(Zor,Symbol.toStringTag,{value:"Module"});var Yyo=Hfe();function Qyo(e){return Yyo.words(e).map(r=>r.toLowerCase()).join("-")}Zor.kebabCase=Qyo});var Vor=H(Lor=>{"use strict";Object.defineProperty(Lor,Symbol.toStringTag,{value:"Module"});var Xyo=t$(),Jyo=dNn(),Uyo=Yfe();function Kyo(e){return Jyo.kebabCase(Uyo.normalizeForCase(Xyo.deburr(e)))}Lor.kebabCase=Kyo});var pNn=H(Por=>{"use strict";Object.defineProperty(Por,Symbol.toStringTag,{value:"Module"});var jyo=Hfe();function zyo(e){return jyo.words(e).map(r=>r.toLowerCase()).join(" ")}Por.lowerCase=zyo});var Oor=H(Wor=>{"use strict";Object.defineProperty(Wor,Symbol.toStringTag,{value:"Module"});var qyo=t$(),$yo=pNn(),ebo=Yfe();function tbo(e){return $yo.lowerCase(ebo.normalizeForCase(qyo.deburr(e)))}Wor.lowerCase=tbo});var fNn=H(Mor=>{"use strict";Object.defineProperty(Mor,Symbol.toStringTag,{value:"Module"});function rbo(e){return e.substring(0,1).toLowerCase()+e.substring(1)}Mor.lowerFirst=rbo});var Yor=H(Hor=>{"use strict";Object.defineProperty(Hor,Symbol.toStringTag,{value:"Module"});var nbo=fNn(),ibo=qy();function sbo(e){return nbo.lowerFirst(ibo.toString(e))}Hor.lowerFirst=sbo});var INn=H(Qor=>{"use strict";Object.defineProperty(Qor,Symbol.toStringTag,{value:"Module"});function obo(e,t,r=" "){return e.padStart(Math.floor((t-e.length)/2)+e.length,r).padEnd(t,r)}Qor.pad=obo});var Jor=H(Xor=>{"use strict";Object.defineProperty(Xor,Symbol.toStringTag,{value:"Module"});var abo=INn(),cbo=qy();function lbo(e,t,r){return abo.pad(cbo.toString(e),t,r)}Xor.pad=lbo});var Kor=H(Uor=>{"use strict";Object.defineProperty(Uor,Symbol.toStringTag,{value:"Module"});var ubo=qy();function gbo(e,t=0,r=" "){return ubo.toString(e).padEnd(t,r)}Uor.padEnd=gbo});var zor=H(jor=>{"use strict";Object.defineProperty(jor,Symbol.toStringTag,{value:"Module"});var Abo=qy();function dbo(e,t=0,r=" "){return Abo.toString(e).padStart(t,r)}jor.padStart=dbo});var $or=H(qor=>{"use strict";Object.defineProperty(qor,Symbol.toStringTag,{value:"Module"});var pbo=Number.MAX_SAFE_INTEGER;qor.MAX_SAFE_INTEGER=pbo});var tar=H(ear=>{"use strict";Object.defineProperty(ear,Symbol.toStringTag,{value:"Module"});var fbo=qq(),Ibo=$or(),hbo=$w(),mbo=qy();function Cbo(e,t,r){return(r?fbo.isIterateeCall(e,t,r):t===void 0)?t=1:t=hbo.toInteger(t),t<1||t>Ibo.MAX_SAFE_INTEGER?"":mbo.toString(e).repeat(t)}ear.repeat=Cbo});var nar=H(rar=>{"use strict";Object.defineProperty(rar,Symbol.toStringTag,{value:"Module"});var hNn=qy();function _bo(e,t,r){return arguments.length<3?hNn.toString(e):hNn.toString(e).replace(t,r)}rar.replace=_bo});var mNn=H(iar=>{"use strict";Object.defineProperty(iar,Symbol.toStringTag,{value:"Module"});var ybo=Hfe();function bbo(e){return ybo.words(e).map(r=>r.toLowerCase()).join("_")}iar.snakeCase=bbo});var oar=H(sar=>{"use strict";Object.defineProperty(sar,Symbol.toStringTag,{value:"Module"});var Ebo=t$(),Sbo=mNn(),vbo=Yfe();function Bbo(e){return Sbo.snakeCase(vbo.normalizeForCase(Ebo.deburr(e)))}sar.snakeCase=Bbo});var car=H(aar=>{"use strict";Object.defineProperty(aar,Symbol.toStringTag,{value:"Module"});var wbo=qy();function Tbo(e,t,r){return wbo.toString(e).split(t,r)}aar.split=Tbo});var uar=H(lar=>{"use strict";Object.defineProperty(lar,Symbol.toStringTag,{value:"Module"});var Rbo=t$(),Nbo=Hfe(),Dbo=Yfe();function kbo(e){let t=Nbo.words(Dbo.normalizeForCase(Rbo.deburr(e)).trim()),r="";for(let n=0;n{"use strict";Object.defineProperty(gar,Symbol.toStringTag,{value:"Module"});function xbo(e,t,r){return e==null||t==null?!1:(r==null&&(r=0),e.startsWith(t,r))}gar.startsWith=xbo});var dar=H(Iut=>{"use strict";Object.defineProperty(Iut,Symbol.toStringTag,{value:"Module"});var Gbo=dut(),Fbo=jlt(),CNn=H3e(),Zbo=qy(),Lbo=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Vbo=/['\n\r\u2028\u2029\\]/g,put=/($^)/,Pbo=new Map([["\\","\\"],["'","'"],[` -`,"n"],["\r","r"],["\u2028","u2028"],["\u2029","u2029"]]);function Wbo(e){return`\\${Pbo.get(e)}`}var _Nn=/<%=([\s\S]+?)%>/g,fut={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:_Nn,variable:"",imports:{_:{escape:Gbo.escape,template:yNn}}};function yNn(e,t,r){e=Zbo.toString(e),r&&(t=fut),t=CNn.defaults({...t},fut);let n=new RegExp([t.escape?.source??put.source,t.interpolate?.source??put.source,t.interpolate===_Nn?Lbo.source:put.source,t.evaluate?.source??put.source,"$"].join("|"),"g"),a=0,o=!1,l="__p += ''";for(let N of e.matchAll(n)){let[B,F,Q,X,ae]=N,{index:ne}=N;l+=` + '${e.slice(a,ne).replace(Vbo,Wbo)}'`,F&&(l+=` + _.escape(${F})`),Q?l+=` + ((${Q}) == null ? '' : ${Q})`:X&&(l+=` + ((${X}) == null ? '' : ${X})`),ae&&(l+=`; -${ae}; - __p += ''`,o=!0),a=ne+B.length}let A=CNn.defaults({...t.imports},fut.imports),f=Object.keys(A),I=Object.values(A),C=`//# sourceURL=${t.sourceURL?String(t.sourceURL).replace(/[\r\n]/g," "):`es-toolkit.templateSource[${Date.now()}]`} -`,b=`function(${t.variable||"obj"}) { - let __p = ''; - ${t.variable?"":"if (obj == null) { obj = {}; }"} - ${o?"function print() { __p += Array.prototype.join.call(arguments, ''); }":""} - ${t.variable?l:`with(obj) { -${l} -}`} - return __p; - }`,E=Fbo.attempt(()=>new Function(...f,`${C}return ${b}`)(...I));if(E.source=b,E instanceof Error)throw E;return E}Iut.template=yNn;Iut.templateSettings=fut});var far=H(par=>{"use strict";Object.defineProperty(par,Symbol.toStringTag,{value:"Module"});var Obo=qy();function Mbo(e){return Obo.toString(e).toLowerCase()}par.toLower=Mbo});var har=H(Iar=>{"use strict";Object.defineProperty(Iar,Symbol.toStringTag,{value:"Module"});var Hbo=qy();function Ybo(e){return Hbo.toString(e).toUpperCase()}Iar.toUpper=Ybo});var Car=H(mar=>{"use strict";Object.defineProperty(mar,Symbol.toStringTag,{value:"Module"});function Qbo(e,t){if(t===void 0)return e.trimEnd();let r=e.length;switch(typeof t){case"string":{if(t.length!==1)throw new Error("The 'chars' parameter should be a single character string.");for(;r>0&&e[r-1]===t;)r--;break}case"object":for(;r>0&&t.includes(e[r-1]);)r--}return e.substring(0,r)}mar.trimEnd=Qbo});var yar=H(_ar=>{"use strict";Object.defineProperty(_ar,Symbol.toStringTag,{value:"Module"});function Xbo(e,t){if(t===void 0)return e.trimStart();let r=0;switch(typeof t){case"string":{for(;r{"use strict";Object.defineProperty(bar,Symbol.toStringTag,{value:"Module"});var Jbo=Car(),Ubo=yar();function Kbo(e,t){return t===void 0?e.trim():Ubo.trimStart(Jbo.trimEnd(e,t),t)}bar.trim=Kbo});var Bar=H(Sar=>{"use strict";Object.defineProperty(Sar,Symbol.toStringTag,{value:"Module"});var Ear=bNn();function jbo(e,t,r){if(e==null)return"";if(r!=null||t==null)return e.toString().trim();switch(typeof t){case"object":return Array.isArray(t)?Ear.trim(e,t.flatMap(n=>n.toString().split(""))):Ear.trim(e,t.toString().split(""));default:return Ear.trim(e,t.toString().split(""))}}Sar.trim=jbo});var Tar=H(war=>{"use strict";Object.defineProperty(war,Symbol.toStringTag,{value:"Module"});var zbo=Car();function qbo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimEnd():zbo.trimEnd(e,t.toString().split(""))}war.trimEnd=qbo});var Nar=H(Rar=>{"use strict";Object.defineProperty(Rar,Symbol.toStringTag,{value:"Module"});var $bo=yar();function eEo(e,t,r){return e==null?"":r!=null||t==null?e.toString().trimStart():$bo.trimStart(e,t.toString().split(""))}Rar.trimStart=eEo});var kar=H(Dar=>{"use strict";Object.defineProperty(Dar,Symbol.toStringTag,{value:"Module"});var tEo=tM(),rEo=/[\u200d\ud800-\udfff\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff\ufe0e\ufe0f]/;function nEo(e,t){e=e!=null?`${e}`:"";let r=30,n="...";tEo.isObject(t)&&(r=iEo(t.length),n="omission"in t?`${t.omission}`:"...");let a=e.length,o=Array.from(n).length,l=Math.max(r-o,0),A;if(rEo.test(e)&&(A=Array.from(e),a=A.length),r>=a)return e;if(a<=o)return n;let I=A===void 0?e.slice(0,l):A?.slice(0,l).join(""),C=t?.separator;if(!C)return I+=n,I;let b=C instanceof RegExp?C.source:C,E="u"+(C instanceof RegExp?C.flags.replace("u",""):""),N=new RegExp(`(?.*(?:(?!${b}).))(?:${b})`,E).exec(I);return(N?.groups?N.groups.result:I)+n}function iEo(e){return e==null?30:e<=0?0:e}Dar.truncate=nEo});var ENn=H(xar=>{"use strict";Object.defineProperty(xar,Symbol.toStringTag,{value:"Module"});var sEo={"&":"&","<":"<",">":">",""":'"',"'":"'"};function oEo(e){return e.replace(/&(?:amp|lt|gt|quot|#(0+)?39);/g,t=>sEo[t]||"'")}xar.unescape=oEo});var Far=H(Gar=>{"use strict";Object.defineProperty(Gar,Symbol.toStringTag,{value:"Module"});var aEo=ENn(),cEo=qy();function lEo(e){return aEo.unescape(cEo.toString(e))}Gar.unescape=lEo});var SNn=H(Zar=>{"use strict";Object.defineProperty(Zar,Symbol.toStringTag,{value:"Module"});var uEo=Hfe();function gEo(e){let t=uEo.words(e),r="";for(let n=0;n{"use strict";Object.defineProperty(Lar,Symbol.toStringTag,{value:"Module"});var AEo=t$(),dEo=SNn(),pEo=Yfe();function fEo(e){return dEo.upperCase(pEo.normalizeForCase(AEo.deburr(e)))}Lar.upperCase=fEo});var vNn=H(War=>{"use strict";Object.defineProperty(War,Symbol.toStringTag,{value:"Module"});function IEo(e){return e.substring(0,1).toUpperCase()+e.substring(1)}War.upperFirst=IEo});var Mar=H(Oar=>{"use strict";Object.defineProperty(Oar,Symbol.toStringTag,{value:"Module"});var hEo=vNn(),mEo=qy();function CEo(e){return hEo.upperFirst(mEo.toString(e))}Oar.upperFirst=CEo});var Yar=H(Har=>{"use strict";Object.defineProperty(Har,Symbol.toStringTag,{value:"Module"});var _Eo=qy(),yEo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\xd7\\xf7",USe="\\p{Lu}",DNn="\\p{Ll}",kNn="(?:[\\p{Lm}\\p{Lo}]\\p{M}*)",Q3e="\\d",BNn="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",wNn="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",TNn=`[\\p{Z}\\p{P}${yEo}]`,bEo=`(?:${USe}|${kNn})`,RNn=`(?:${DNn}|${kNn})`,NNn=RegExp([`${USe}?${DNn}+${BNn}(?=${TNn}|${USe}|$)`,`${bEo}+${wNn}(?=${TNn}|${USe}${RNn}|$)`,`${USe}?${RNn}+${BNn}`,`${USe}+${wNn}`,`${Q3e}*(?:1ST|2ND|3RD|(?![123])${Q3e}TH)(?=\\b|[a-z_])`,`${Q3e}*(?:1st|2nd|3rd|(?![123])${Q3e}th)(?=\\b|[A-Z_])`,`${Q3e}+`,"\\p{Emoji_Presentation}","\\p{Extended_Pictographic}"].join("|"),"gu");function EEo(e,t=NNn,r){let n=_Eo.toString(e);return r&&(t=NNn),typeof t=="number"&&(t=t.toString()),Array.from(n.match(t)??[]).filter(o=>o!=="")}Har.words=EEo});var Xar=H(Qar=>{"use strict";Object.defineProperty(Qar,Symbol.toStringTag,{value:"Module"});var SEo=im(),vEo=coe();function BEo(e){let t=e.length,r=e.map(n=>{let a=n[0],o=n[1];if(!vEo.isFunction(o))throw new TypeError("Expected a function");return[SEo.iteratee(a),o]});return function(...n){for(let a=0;a{"use strict";Object.defineProperty(Jar,Symbol.toStringTag,{value:"Module"});function wEo(e){return()=>e}Jar.constant=wEo});var jar=H(Kar=>{"use strict";Object.defineProperty(Kar,Symbol.toStringTag,{value:"Module"});function TEo(e,t){return e==null||Number.isNaN(e)?t:e}Kar.defaultTo=TEo});var qar=H(zar=>{"use strict";Object.defineProperty(zar,Symbol.toStringTag,{value:"Module"});var xNn=Q9();function REo(e,t){return typeof e=="string"&&typeof t=="string"?e>t:xNn.toNumber(e)>xNn.toNumber(t)}zar.gt=REo});var ecr=H($ar=>{"use strict";Object.defineProperty($ar,Symbol.toStringTag,{value:"Module"});var GNn=Q9();function NEo(e,t){return typeof e=="string"&&typeof t=="string"?e>=t:GNn.toNumber(e)>=GNn.toNumber(t)}$ar.gte=NEo});var J3e=H(tcr=>{"use strict";Object.defineProperty(tcr,Symbol.toStringTag,{value:"Module"});var DEo=$5(),kEo=Kq(),xEo=zq(),FNn=eM();function GEo(e,t,...r){if(r=r.flat(1),e!=null)switch(typeof t){case"string":return typeof e=="object"&&Object.hasOwn(e,t)?X3e(e,[t],r):X3e(e,DEo.toPath(t),r);case"number":case"symbol":return X3e(e,[t],r);default:return Array.isArray(t)?X3e(e,t,r):X3e(e,[t],r)}}function X3e(e,t,r){let n=FNn.get(e,t.slice(0,-1),e);if(n==null)return;let a=xEo.last(t),o=a?.valueOf();return typeof o=="number"?a=kEo.toKey(o):a=String(a),FNn.get(n,a)?.apply(n,r)}tcr.invoke=GEo});var ncr=H(rcr=>{"use strict";Object.defineProperty(rcr,Symbol.toStringTag,{value:"Module"});var ZNn=Q9();function FEo(e,t){return typeof e=="string"&&typeof t=="string"?e{"use strict";Object.defineProperty(icr,Symbol.toStringTag,{value:"Module"});var LNn=Q9();function ZEo(e,t){return typeof e=="string"&&typeof t=="string"?e<=t:LNn.toNumber(e)<=LNn.toNumber(t)}icr.lte=ZEo});var acr=H(ocr=>{"use strict";Object.defineProperty(ocr,Symbol.toStringTag,{value:"Module"});var LEo=J3e();function VEo(e,...t){return function(r){return LEo.invoke(r,e,t)}}ocr.method=VEo});var lcr=H(ccr=>{"use strict";Object.defineProperty(ccr,Symbol.toStringTag,{value:"Module"});var PEo=J3e();function WEo(e,...t){return function(r){return PEo.invoke(e,r,t)}}ccr.methodOf=WEo});var gcr=H(ucr=>{"use strict";Object.defineProperty(ucr,Symbol.toStringTag,{value:"Module"});function OEo(){return Date.now()}ucr.now=OEo});var dcr=H(Acr=>{"use strict";Object.defineProperty(Acr,Symbol.toStringTag,{value:"Module"});var MEo=im();function HEo(...e){e.length===1&&Array.isArray(e[0])&&(e=e[0]);let t=e.map(r=>MEo.iteratee(r));return function(...r){return t.map(n=>n.apply(this,r))}}Acr.over=HEo});var fcr=H(pcr=>{"use strict";Object.defineProperty(pcr,Symbol.toStringTag,{value:"Module"});var VNn=im();function YEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(Icr,Symbol.toStringTag,{value:"Module"});var PNn=im();function QEo(...e){return function(...t){for(let r=0;r{"use strict";Object.defineProperty(mcr,Symbol.toStringTag,{value:"Module"});function XEo(){return[]}mcr.stubArray=XEo});var ycr=H(_cr=>{"use strict";Object.defineProperty(_cr,Symbol.toStringTag,{value:"Module"});function JEo(){return!1}_cr.stubFalse=JEo});var Ecr=H(bcr=>{"use strict";Object.defineProperty(bcr,Symbol.toStringTag,{value:"Module"});function UEo(){return{}}bcr.stubObject=UEo});var vcr=H(Scr=>{"use strict";Object.defineProperty(Scr,Symbol.toStringTag,{value:"Module"});function KEo(){return""}Scr.stubString=KEo});var wcr=H(Bcr=>{"use strict";Object.defineProperty(Bcr,Symbol.toStringTag,{value:"Module"});function jEo(){return!0}Bcr.stubTrue=jEo});var WNn=H(Tcr=>{"use strict";Object.defineProperty(Tcr,Symbol.toStringTag,{value:"Module"});var zEo=4294967295;Tcr.MAX_ARRAY_LENGTH=zEo});var Ncr=H(Rcr=>{"use strict";Object.defineProperty(Rcr,Symbol.toStringTag,{value:"Module"});var qEo=WNn(),$Eo=Ofe();function e1o(e){if(e==null)return 0;let t=Math.floor(Number(e));return $Eo.clamp(t,0,qEo.MAX_ARRAY_LENGTH)}Rcr.toLength=e1o});var kcr=H(Dcr=>{"use strict";Object.defineProperty(Dcr,Symbol.toStringTag,{value:"Module"});var t1o=iX();function r1o(e){let t={},r=t1o.keysIn(e);for(let n=0;n{"use strict";Object.defineProperty(xcr,Symbol.toStringTag,{value:"Module"});var n1o=$w(),ONn=$or(),i1o=Ofe();function s1o(e){return e==null?0:i1o.clamp(n1o.toInteger(e),-ONn.MAX_SAFE_INTEGER,ONn.MAX_SAFE_INTEGER)}xcr.toSafeInteger=s1o});var Zcr=H(Fcr=>{"use strict";Object.defineProperty(Fcr,Symbol.toStringTag,{value:"Module"});var o1o=0;function a1o(e=""){let t=++o1o;return`${e}${t}`}Fcr.uniqueId=a1o});var UNn=H(Kn=>{"use strict";Object.defineProperty(Kn,Symbol.toStringTag,{value:"Module"});var c1o=E7t(),l1o=R7t(),u1o=k7t(),g1o=F7t(),A1o=pzt(),d1o=Czt(),p1o=vlt(),f1o=Blt(),I1o=xzt(),h1o=Zzt(),m1o=Pzt(),C1o=Mzt(),MNn=Rlt(),HNn=Xzt(),_1o=Kzt(),y1o=$zt(),b1o=Nlt(),E1o=rqt(),S1o=sqt(),v1o=aqt(),B1o=lqt(),YNn=Aqt(),w1o=mqt(),T1o=yqt(),R1o=N3e(),N1o=Pfe(),D1o=Eqt(),k1o=YSe(),x1o=Bqt(),G1o=Tqt(),F1o=Nqt(),Z1o=xqt(),L1o=Lqt(),V1o=klt(),P1o=xlt(),W1o=Jqt(),O1o=Kqt(),M1o=qqt(),H1o=zq(),Y1o=e$t(),Q1o=R3e(),X1o=r$t(),J1o=Flt(),U1o=a$t(),K1o=g$t(),j1o=d$t(),z1o=f$t(),q1o=h$t(),$1o=E$t(),e2o=Glt(),t2o=v$t(),r2o=T$t(),n2o=D$t(),i2o=x$t(),s2o=Z$t(),o2o=J$t(),a2o=$$t(),c2o=ter(),l2o=ner(),u2o=ser(),g2o=aer(),A2o=Olt(),d2o=Z3e(),p2o=mer(),f2o=Hlt(),I2o=Mlt(),h2o=ber(),m2o=ver(),C2o=Ter(),_2o=Der(),y2o=Ger(),b2o=Zer(),E2o=Ver(),S2o=Qlt(),v2o=Xlt(),B2o=D3e(),w2o=Jer(),T2o=Ker(),R2o=Jlt(),N2o=etr(),D2o=ntr(),k2o=str(),x2o=ltr(),G2o=gtr(),F2o=Itr(),Z2o=Ctr(),L2o=Etr(),V2o=vtr(),P2o=wtr(),W2o=Klt(),O2o=jlt(),M2o=Dtr(),H2o=Gtr(),Y2o=Ltr(),Q2o=Wtr(),X2o=Htr(),J2o=zlt(),U2o=Jtr(),K2o=Ktr(),j2o=ztr(),z2o=rrr(),q2o=srr(),$2o=crr(),eSo=G3e(),tSo=urr(),rSo=drr(),nSo=frr(),iSo=mrr(),sSo=yrr(),oSo=Err(),aSo=Brr(),cSo=Trr(),lSo=Nrr(),uSo=krr(),gSo=Grr(),ASo=Zrr(),dSo=Prr(),pSo=Ofe(),fSo=Orr(),ISo=Hrr(),hSo=Xrr(),mSo=Urr(),CSo=zrr(),_So=tnr(),ySo=snr(),bSo=anr(),ESo=unr(),SSo=Anr(),vSo=pnr(),BSo=Inr(),wSo=Cnr(),TSo=bnr(),RSo=Snr(),NSo=Bnr(),DSo=rut(),kSo=tut(),xSo=xnr(),GSo=HK(),FSo=Fnr(),ZSo=Onr(),QNn=Ynr(),XNn=Xnr(),LSo=Unr(),VSo=Zlt(),PSo=sut(),WSo=WSe(),OSo=S3e(),MSo=qnr(),HSo=eir(),YSo=H3e(),QSo=iir(),XSo=air(),JSo=lir(),USo=gir(),KSo=dir(),jSo=fir(),zSo=hir(),qSo=Cir(),$So=yir(),evo=Eir(),tvo=eM(),rvo=v3e(),nvo=vir(),ivo=Tir(),svo=Nir(),ovo=YK(),avo=iX(),cvo=xir(),lvo=Zir(),uvo=Mir(),gvo=cut(),Avo=Qir(),dvo=Jir(),pvo=Kir(),fvo=zir(),Ivo=nX(),hvo=$ir(),mvo=tsr(),Cvo=V3e(),_vo=nsr(),yvo=ssr(),bvo=gsr(),Evo=dsr(),Svo=Isr(),vvo=x3e(),Bvo=msr(),wvo=XSe(),Tvo=Vlt(),Rvo=_sr(),Nvo=bsr(),Dvo=Ssr(),kvo=blt(),xvo=Bsr(),Gvo=Tsr(),Fvo=Nsr(),Zvo=xsr(),Lvo=gut(),Vvo=Vfe(),Pvo=$q(),Wvo=Zsr(),Ovo=Sf(),Mvo=b2(),Hvo=Vsr(),Yvo=uut(),Qvo=Osr(),Xvo=Hsr(),Jvo=Qsr(),Uvo=Ksr(),Kvo=zsr(),jvo=$sr(),zvo=tor(),qvo=Llt(),$vo=C3e(),eBo=Wlt(),tBo=QSe(),rBo=L3e(),nBo=tM(),iBo=ioe(),sBo=Mfe(),oBo=ior(),aBo=oor(),cBo=lor(),lBo=HSe(),uBo=soe(),gBo=e$(),ABo=Aor(),dBo=Ior(),pBo=OK(),fBo=MK(),IBo=_or(),hBo=bor(),mBo=Tor(),CBo=t$(),_Bo=Nor(),yBo=dut(),bBo=For(),EBo=Vor(),SBo=Oor(),vBo=Yor(),BBo=Jor(),wBo=Kor(),TBo=zor(),RBo=tar(),NBo=nar(),DBo=oar(),kBo=car(),xBo=uar(),GBo=Aar(),JNn=dar(),FBo=far(),ZBo=har(),LBo=Bar(),VBo=Tar(),PBo=Nar(),WBo=kar(),OBo=Far(),MBo=Par(),HBo=Mar(),YBo=Yar(),QBo=Xar(),XBo=Uar(),JBo=jar(),UBo=Sk(),KBo=qar(),jBo=ecr(),zBo=J3e(),qBo=im(),$Bo=ncr(),ewo=scr(),two=acr(),rwo=lcr(),nwo=gcr(),iwo=dcr(),swo=fcr(),owo=hcr(),awo=Ccr(),cwo=ycr(),lwo=Ecr(),uwo=vcr(),gwo=wcr(),Awo=M3e(),dwo=F3e(),pwo=MSe(),fwo=$w(),Iwo=Ncr(),hwo=Q9(),mwo=$5(),Cwo=kcr(),_wo=Gcr(),ywo=qy(),bwo=Zcr();Kn.castArray=c1o.castArray;Kn.chunk=l1o.chunk;Kn.compact=u1o.compact;Kn.concat=g1o.concat;Kn.countBy=A1o.countBy;Kn.difference=d1o.difference;Kn.differenceBy=p1o.differenceBy;Kn.differenceWith=f1o.differenceWith;Kn.drop=I1o.drop;Kn.dropRight=h1o.dropRight;Kn.dropRightWhile=m1o.dropRightWhile;Kn.dropWhile=C1o.dropWhile;Kn.each=MNn.forEach;Kn.forEach=MNn.forEach;Kn.eachRight=HNn.forEachRight;Kn.forEachRight=HNn.forEachRight;Kn.every=_1o.every;Kn.fill=y1o.fill;Kn.filter=b1o.filter;Kn.find=E1o.find;Kn.findIndex=S1o.findIndex;Kn.findLast=v1o.findLast;Kn.findLastIndex=B1o.findLastIndex;Kn.first=YNn.head;Kn.head=YNn.head;Kn.flatMap=w1o.flatMap;Kn.flatMapDeep=T1o.flatMapDeep;Kn.flatMapDepth=R1o.flatMapDepth;Kn.flatten=N1o.flatten;Kn.flattenDeep=D1o.flattenDeep;Kn.flattenDepth=k1o.flattenDepth;Kn.groupBy=x1o.groupBy;Kn.includes=G1o.includes;Kn.indexOf=F1o.indexOf;Kn.initial=Z1o.initial;Kn.intersection=L1o.intersection;Kn.intersectionBy=V1o.intersectionBy;Kn.intersectionWith=P1o.intersectionWith;Kn.invokeMap=W1o.invokeMap;Kn.join=O1o.join;Kn.keyBy=M1o.keyBy;Kn.last=H1o.last;Kn.lastIndexOf=Y1o.lastIndexOf;Kn.map=Q1o.map;Kn.nth=X1o.nth;Kn.orderBy=J1o.orderBy;Kn.partition=U1o.partition;Kn.pull=K1o.pull;Kn.pullAll=j1o.pullAll;Kn.pullAllBy=z1o.pullAllBy;Kn.pullAllWith=q1o.pullAllWith;Kn.pullAt=$1o.pullAt;Kn.reduce=e2o.reduce;Kn.reduceRight=t2o.reduceRight;Kn.reject=r2o.reject;Kn.remove=n2o.remove;Kn.reverse=i2o.reverse;Kn.sample=s2o.sample;Kn.sampleSize=o2o.sampleSize;Kn.shuffle=a2o.shuffle;Kn.size=c2o.size;Kn.slice=l2o.slice;Kn.some=u2o.some;Kn.sortBy=g2o.sortBy;Kn.sortedIndex=A2o.sortedIndex;Kn.sortedIndexBy=d2o.sortedIndexBy;Kn.sortedIndexOf=p2o.sortedIndexOf;Kn.sortedLastIndex=f2o.sortedLastIndex;Kn.sortedLastIndexBy=I2o.sortedLastIndexBy;Kn.sortedLastIndexOf=h2o.sortedLastIndexOf;Kn.tail=m2o.tail;Kn.take=C2o.take;Kn.takeRight=_2o.takeRight;Kn.takeRightWhile=y2o.takeRightWhile;Kn.takeWhile=b2o.takeWhile;Kn.union=E2o.union;Kn.unionBy=S2o.unionBy;Kn.unionWith=v2o.unionWith;Kn.uniq=B2o.uniq;Kn.uniqBy=w2o.uniqBy;Kn.uniqWith=T2o.uniqWith;Kn.unzip=R2o.unzip;Kn.unzipWith=N2o.unzipWith;Kn.without=D2o.without;Kn.xor=k2o.xor;Kn.xorBy=x2o.xorBy;Kn.xorWith=G2o.xorWith;Kn.zip=F2o.zip;Kn.zipObject=Z2o.zipObject;Kn.zipObjectDeep=L2o.zipObjectDeep;Kn.zipWith=V2o.zipWith;Kn.after=P2o.after;Kn.ary=W2o.ary;Kn.attempt=O2o.attempt;Kn.before=M2o.before;Kn.bind=H2o.bind;Kn.bindKey=Y2o.bindKey;Kn.curry=Q2o.curry;Kn.curryRight=X2o.curryRight;Kn.debounce=J2o.debounce;Kn.defer=U2o.defer;Kn.delay=K2o.delay;Kn.flip=j2o.flip;Kn.flow=z2o.flow;Kn.flowRight=q2o.flowRight;Kn.memoize=$2o.memoize;Kn.negate=eSo.negate;Kn.nthArg=tSo.nthArg;Kn.once=rSo.once;Kn.overArgs=nSo.overArgs;Kn.partial=iSo.partial;Kn.partialRight=sSo.partialRight;Kn.rearg=oSo.rearg;Kn.rest=aSo.rest;Kn.spread=cSo.spread;Kn.throttle=lSo.throttle;Kn.unary=uSo.unary;Kn.wrap=gSo.wrap;Kn.add=ASo.add;Kn.ceil=dSo.ceil;Kn.clamp=pSo.clamp;Kn.divide=fSo.divide;Kn.floor=ISo.floor;Kn.inRange=hSo.inRange;Kn.max=mSo.max;Kn.maxBy=CSo.maxBy;Kn.mean=_So.mean;Kn.meanBy=ySo.meanBy;Kn.min=bSo.min;Kn.minBy=ESo.minBy;Kn.multiply=SSo.multiply;Kn.parseInt=vSo.parseInt;Kn.random=BSo.random;Kn.range=wSo.range;Kn.rangeRight=TSo.rangeRight;Kn.round=RSo.round;Kn.subtract=NSo.subtract;Kn.sum=DSo.sum;Kn.sumBy=kSo.sumBy;Kn.isEqual=xSo.isEqual;Kn.identity=GSo.identity;Kn.noop=FSo.noop;Kn.assign=ZSo.assign;Kn.assignIn=QNn.assignIn;Kn.extend=QNn.assignIn;Kn.assignInWith=XNn.assignInWith;Kn.extendWith=XNn.assignInWith;Kn.assignWith=LSo.assignWith;Kn.at=VSo.at;Kn.clone=PSo.clone;Kn.cloneDeep=WSo.cloneDeep;Kn.cloneDeepWith=OSo.cloneDeepWith;Kn.cloneWith=MSo.cloneWith;Kn.create=HSo.create;Kn.defaults=YSo.defaults;Kn.defaultsDeep=QSo.defaultsDeep;Kn.findKey=XSo.findKey;Kn.findLastKey=JSo.findLastKey;Kn.forIn=USo.forIn;Kn.forInRight=KSo.forInRight;Kn.forOwn=jSo.forOwn;Kn.forOwnRight=zSo.forOwnRight;Kn.fromPairs=qSo.fromPairs;Kn.functions=$So.functions;Kn.functionsIn=evo.functionsIn;Kn.get=tvo.get;Kn.has=rvo.has;Kn.hasIn=nvo.hasIn;Kn.invert=ivo.invert;Kn.invertBy=svo.invertBy;Kn.keys=ovo.keys;Kn.keysIn=avo.keysIn;Kn.mapKeys=cvo.mapKeys;Kn.mapValues=lvo.mapValues;Kn.merge=uvo.merge;Kn.mergeWith=gvo.mergeWith;Kn.omit=Avo.omit;Kn.omitBy=dvo.omitBy;Kn.pick=pvo.pick;Kn.pickBy=fvo.pickBy;Kn.property=Ivo.property;Kn.propertyOf=hvo.propertyOf;Kn.result=mvo.result;Kn.set=Cvo.set;Kn.setWith=_vo.setWith;Kn.toDefaulted=yvo.toDefaulted;Kn.toPairs=bvo.toPairs;Kn.toPairsIn=Evo.toPairsIn;Kn.transform=Svo.transform;Kn.unset=vvo.unset;Kn.update=Bvo.update;Kn.updateWith=wvo.updateWith;Kn.values=Tvo.values;Kn.valuesIn=Rvo.valuesIn;Kn.isFunction=Nvo.isFunction;Kn.isLength=Dvo.isLength;Kn.isMatchWith=kvo.isMatchWith;Kn.isNative=xvo.isNative;Kn.isNull=Gvo.isNull;Kn.isUndefined=Fvo.isUndefined;Kn.conforms=Zvo.conforms;Kn.conformsTo=Lvo.conformsTo;Kn.isArguments=Vvo.isArguments;Kn.isArray=Pvo.isArray;Kn.isArrayBuffer=Wvo.isArrayBuffer;Kn.isArrayLike=Ovo.isArrayLike;Kn.isArrayLikeObject=Mvo.isArrayLikeObject;Kn.isBoolean=Hvo.isBoolean;Kn.isBuffer=Yvo.isBuffer;Kn.isDate=Qvo.isDate;Kn.isElement=Xvo.isElement;Kn.isEmpty=Jvo.isEmpty;Kn.isEqualWith=Uvo.isEqualWith;Kn.isError=Kvo.isError;Kn.isFinite=jvo.isFinite;Kn.isInteger=zvo.isInteger;Kn.isMap=qvo.isMap;Kn.isMatch=$vo.isMatch;Kn.isNaN=eBo.isNaN;Kn.isNil=tBo.isNil;Kn.isNumber=rBo.isNumber;Kn.isObject=nBo.isObject;Kn.isObjectLike=iBo.isObjectLike;Kn.isPlainObject=sBo.isPlainObject;Kn.isRegExp=oBo.isRegExp;Kn.isSafeInteger=aBo.isSafeInteger;Kn.isSet=cBo.isSet;Kn.isString=lBo.isString;Kn.isSymbol=uBo.isSymbol;Kn.isTypedArray=gBo.isTypedArray;Kn.isWeakMap=ABo.isWeakMap;Kn.isWeakSet=dBo.isWeakSet;Kn.matches=pBo.matches;Kn.matchesProperty=fBo.matchesProperty;Kn.capitalize=IBo.capitalize;Kn.bindAll=hBo.bindAll;Kn.camelCase=mBo.camelCase;Kn.deburr=CBo.deburr;Kn.endsWith=_Bo.endsWith;Kn.escape=yBo.escape;Kn.escapeRegExp=bBo.escapeRegExp;Kn.kebabCase=EBo.kebabCase;Kn.lowerCase=SBo.lowerCase;Kn.lowerFirst=vBo.lowerFirst;Kn.pad=BBo.pad;Kn.padEnd=wBo.padEnd;Kn.padStart=TBo.padStart;Kn.repeat=RBo.repeat;Kn.replace=NBo.replace;Kn.snakeCase=DBo.snakeCase;Kn.split=kBo.split;Kn.startCase=xBo.startCase;Kn.startsWith=GBo.startsWith;Kn.template=JNn.template;Kn.templateSettings=JNn.templateSettings;Kn.toLower=FBo.toLower;Kn.toUpper=ZBo.toUpper;Kn.trim=LBo.trim;Kn.trimEnd=VBo.trimEnd;Kn.trimStart=PBo.trimStart;Kn.truncate=WBo.truncate;Kn.unescape=OBo.unescape;Kn.upperCase=MBo.upperCase;Kn.upperFirst=HBo.upperFirst;Kn.words=YBo.words;Kn.cond=QBo.cond;Kn.constant=XBo.constant;Kn.defaultTo=JBo.defaultTo;Kn.eq=UBo.isEqualsSameValueZero;Kn.gt=KBo.gt;Kn.gte=jBo.gte;Kn.invoke=zBo.invoke;Kn.iteratee=qBo.iteratee;Kn.lt=$Bo.lt;Kn.lte=ewo.lte;Kn.method=two.method;Kn.methodOf=rwo.methodOf;Kn.now=nwo.now;Kn.over=iwo.over;Kn.overEvery=swo.overEvery;Kn.overSome=owo.overSome;Kn.stubArray=awo.stubArray;Kn.stubFalse=cwo.stubFalse;Kn.stubObject=lwo.stubObject;Kn.stubString=uwo.stubString;Kn.stubTrue=gwo.stubTrue;Kn.times=Awo.times;Kn.toArray=dwo.toArray;Kn.toFinite=pwo.toFinite;Kn.toInteger=fwo.toInteger;Kn.toLength=Iwo.toLength;Kn.toNumber=hwo.toNumber;Kn.toPath=mwo.toPath;Kn.toPlainObject=Cwo.toPlainObject;Kn.toSafeInteger=_wo.toSafeInteger;Kn.toString=ywo.toString;Kn.uniqueId=bwo.uniqueId});var KNn=H(Lcr=>{"use strict";Object.defineProperty(Lcr,Symbol.toStringTag,{value:"Module"});var Ewo=UNn(),KSe=e=>e;Object.assign(KSe,Ewo);KSe.partial.placeholder=KSe;KSe.partialRight.placeholder=KSe;Lcr.toolkit=KSe});var kW=H(Jn=>{"use strict";Object.defineProperties(Jn,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var Swo=E7t(),vwo=R7t(),Bwo=k7t(),wwo=F7t(),Two=pzt(),Rwo=Czt(),Nwo=vlt(),Dwo=Blt(),kwo=xzt(),xwo=Zzt(),Gwo=Pzt(),Fwo=Mzt(),jNn=Rlt(),zNn=Xzt(),Zwo=Kzt(),Lwo=$zt(),Vwo=Nlt(),Pwo=rqt(),Wwo=sqt(),Owo=aqt(),Mwo=lqt(),qNn=Aqt(),Hwo=mqt(),Ywo=yqt(),Qwo=N3e(),Xwo=Pfe(),Jwo=Eqt(),Uwo=YSe(),Kwo=Bqt(),jwo=Tqt(),zwo=Nqt(),qwo=xqt(),$wo=Lqt(),eTo=klt(),tTo=xlt(),rTo=Jqt(),nTo=Kqt(),iTo=qqt(),sTo=zq(),oTo=e$t(),aTo=R3e(),cTo=r$t(),lTo=Flt(),uTo=a$t(),gTo=g$t(),ATo=d$t(),dTo=f$t(),pTo=h$t(),fTo=E$t(),ITo=Glt(),hTo=v$t(),mTo=T$t(),CTo=D$t(),_To=x$t(),yTo=Z$t(),bTo=J$t(),ETo=$$t(),STo=ter(),vTo=ner(),BTo=ser(),wTo=aer(),TTo=Olt(),RTo=Z3e(),NTo=mer(),DTo=Hlt(),kTo=Mlt(),xTo=ber(),GTo=ver(),FTo=Ter(),ZTo=Der(),LTo=Ger(),VTo=Zer(),PTo=Ver(),WTo=Qlt(),OTo=Xlt(),MTo=D3e(),HTo=Jer(),YTo=Ker(),QTo=Jlt(),XTo=etr(),JTo=ntr(),UTo=str(),KTo=ltr(),jTo=gtr(),zTo=Itr(),qTo=Ctr(),$To=Etr(),eRo=vtr(),tRo=wtr(),rRo=Klt(),nRo=jlt(),iRo=Dtr(),sRo=Gtr(),oRo=Ltr(),aRo=Wtr(),cRo=Htr(),lRo=zlt(),uRo=Jtr(),gRo=Ktr(),ARo=ztr(),dRo=rrr(),pRo=srr(),fRo=crr(),IRo=G3e(),hRo=urr(),mRo=drr(),CRo=frr(),_Ro=mrr(),yRo=yrr(),bRo=Err(),ERo=Brr(),SRo=Trr(),vRo=Nrr(),BRo=krr(),wRo=Grr(),TRo=Zrr(),RRo=Prr(),NRo=Ofe(),DRo=Orr(),kRo=Hrr(),xRo=Xrr(),GRo=Urr(),FRo=zrr(),ZRo=tnr(),LRo=snr(),VRo=anr(),PRo=unr(),WRo=Anr(),ORo=pnr(),MRo=Inr(),HRo=Cnr(),YRo=bnr(),QRo=Snr(),XRo=Bnr(),JRo=rut(),URo=tut(),KRo=xnr(),jRo=HK(),zRo=Fnr(),qRo=Onr(),$Nn=Ynr(),eDn=Xnr(),$Ro=Unr(),eNo=Zlt(),tNo=sut(),rNo=WSe(),nNo=S3e(),iNo=qnr(),sNo=eir(),oNo=H3e(),aNo=iir(),cNo=air(),lNo=lir(),uNo=gir(),gNo=dir(),ANo=fir(),dNo=hir(),pNo=Cir(),fNo=yir(),INo=Eir(),hNo=eM(),mNo=v3e(),CNo=vir(),_No=Tir(),yNo=Nir(),bNo=YK(),ENo=iX(),SNo=xir(),vNo=Zir(),BNo=Mir(),wNo=cut(),TNo=Qir(),RNo=Jir(),NNo=Kir(),DNo=zir(),kNo=nX(),xNo=$ir(),GNo=tsr(),FNo=V3e(),ZNo=nsr(),LNo=ssr(),VNo=gsr(),PNo=dsr(),WNo=Isr(),ONo=x3e(),MNo=msr(),HNo=XSe(),YNo=Vlt(),QNo=_sr(),XNo=bsr(),JNo=Ssr(),UNo=blt(),KNo=Bsr(),jNo=Tsr(),zNo=Nsr(),qNo=xsr(),$No=gut(),eDo=Vfe(),tDo=$q(),rDo=Zsr(),nDo=Sf(),iDo=b2(),sDo=Vsr(),oDo=uut(),aDo=Osr(),cDo=Hsr(),lDo=Qsr(),uDo=Ksr(),gDo=zsr(),ADo=$sr(),dDo=tor(),pDo=Llt(),fDo=C3e(),IDo=Wlt(),hDo=QSe(),mDo=L3e(),CDo=tM(),_Do=ioe(),yDo=Mfe(),bDo=ior(),EDo=oor(),SDo=lor(),vDo=HSe(),BDo=soe(),wDo=e$(),TDo=Aor(),RDo=Ior(),NDo=OK(),DDo=MK(),kDo=_or(),xDo=bor(),GDo=Tor(),FDo=t$(),ZDo=Nor(),LDo=dut(),VDo=For(),PDo=Vor(),WDo=Oor(),ODo=Yor(),MDo=Jor(),HDo=Kor(),YDo=zor(),QDo=tar(),XDo=nar(),JDo=oar(),UDo=car(),KDo=uar(),jDo=Aar(),tDn=dar(),zDo=far(),qDo=har(),$Do=Bar(),eko=Tar(),tko=Nar(),rko=kar(),nko=Far(),iko=Par(),sko=Mar(),oko=Yar(),ako=Xar(),cko=Uar(),lko=jar(),uko=Sk(),gko=qar(),Ako=ecr(),dko=J3e(),pko=im(),fko=ncr(),Iko=scr(),hko=acr(),mko=lcr(),Cko=gcr(),_ko=dcr(),yko=fcr(),bko=hcr(),Eko=Ccr(),Sko=ycr(),vko=Ecr(),Bko=vcr(),wko=wcr(),Tko=M3e(),Rko=F3e(),Nko=MSe(),Dko=$w(),kko=Ncr(),xko=Q9(),Gko=$5(),Fko=kcr(),Zko=Gcr(),Lko=qy(),Vko=Zcr(),Pko=KNn();Jn.castArray=Swo.castArray;Jn.chunk=vwo.chunk;Jn.compact=Bwo.compact;Jn.concat=wwo.concat;Jn.countBy=Two.countBy;Jn.difference=Rwo.difference;Jn.differenceBy=Nwo.differenceBy;Jn.differenceWith=Dwo.differenceWith;Jn.drop=kwo.drop;Jn.dropRight=xwo.dropRight;Jn.dropRightWhile=Gwo.dropRightWhile;Jn.dropWhile=Fwo.dropWhile;Jn.each=jNn.forEach;Jn.forEach=jNn.forEach;Jn.eachRight=zNn.forEachRight;Jn.forEachRight=zNn.forEachRight;Jn.every=Zwo.every;Jn.fill=Lwo.fill;Jn.filter=Vwo.filter;Jn.find=Pwo.find;Jn.findIndex=Wwo.findIndex;Jn.findLast=Owo.findLast;Jn.findLastIndex=Mwo.findLastIndex;Jn.first=qNn.head;Jn.head=qNn.head;Jn.flatMap=Hwo.flatMap;Jn.flatMapDeep=Ywo.flatMapDeep;Jn.flatMapDepth=Qwo.flatMapDepth;Jn.flatten=Xwo.flatten;Jn.flattenDeep=Jwo.flattenDeep;Jn.flattenDepth=Uwo.flattenDepth;Jn.groupBy=Kwo.groupBy;Jn.includes=jwo.includes;Jn.indexOf=zwo.indexOf;Jn.initial=qwo.initial;Jn.intersection=$wo.intersection;Jn.intersectionBy=eTo.intersectionBy;Jn.intersectionWith=tTo.intersectionWith;Jn.invokeMap=rTo.invokeMap;Jn.join=nTo.join;Jn.keyBy=iTo.keyBy;Jn.last=sTo.last;Jn.lastIndexOf=oTo.lastIndexOf;Jn.map=aTo.map;Jn.nth=cTo.nth;Jn.orderBy=lTo.orderBy;Jn.partition=uTo.partition;Jn.pull=gTo.pull;Jn.pullAll=ATo.pullAll;Jn.pullAllBy=dTo.pullAllBy;Jn.pullAllWith=pTo.pullAllWith;Jn.pullAt=fTo.pullAt;Jn.reduce=ITo.reduce;Jn.reduceRight=hTo.reduceRight;Jn.reject=mTo.reject;Jn.remove=CTo.remove;Jn.reverse=_To.reverse;Jn.sample=yTo.sample;Jn.sampleSize=bTo.sampleSize;Jn.shuffle=ETo.shuffle;Jn.size=STo.size;Jn.slice=vTo.slice;Jn.some=BTo.some;Jn.sortBy=wTo.sortBy;Jn.sortedIndex=TTo.sortedIndex;Jn.sortedIndexBy=RTo.sortedIndexBy;Jn.sortedIndexOf=NTo.sortedIndexOf;Jn.sortedLastIndex=DTo.sortedLastIndex;Jn.sortedLastIndexBy=kTo.sortedLastIndexBy;Jn.sortedLastIndexOf=xTo.sortedLastIndexOf;Jn.tail=GTo.tail;Jn.take=FTo.take;Jn.takeRight=ZTo.takeRight;Jn.takeRightWhile=LTo.takeRightWhile;Jn.takeWhile=VTo.takeWhile;Jn.union=PTo.union;Jn.unionBy=WTo.unionBy;Jn.unionWith=OTo.unionWith;Jn.uniq=MTo.uniq;Jn.uniqBy=HTo.uniqBy;Jn.uniqWith=YTo.uniqWith;Jn.unzip=QTo.unzip;Jn.unzipWith=XTo.unzipWith;Jn.without=JTo.without;Jn.xor=UTo.xor;Jn.xorBy=KTo.xorBy;Jn.xorWith=jTo.xorWith;Jn.zip=zTo.zip;Jn.zipObject=qTo.zipObject;Jn.zipObjectDeep=$To.zipObjectDeep;Jn.zipWith=eRo.zipWith;Jn.after=tRo.after;Jn.ary=rRo.ary;Jn.attempt=nRo.attempt;Jn.before=iRo.before;Jn.bind=sRo.bind;Jn.bindKey=oRo.bindKey;Jn.curry=aRo.curry;Jn.curryRight=cRo.curryRight;Jn.debounce=lRo.debounce;Jn.defer=uRo.defer;Jn.delay=gRo.delay;Jn.flip=ARo.flip;Jn.flow=dRo.flow;Jn.flowRight=pRo.flowRight;Jn.memoize=fRo.memoize;Jn.negate=IRo.negate;Jn.nthArg=hRo.nthArg;Jn.once=mRo.once;Jn.overArgs=CRo.overArgs;Jn.partial=_Ro.partial;Jn.partialRight=yRo.partialRight;Jn.rearg=bRo.rearg;Jn.rest=ERo.rest;Jn.spread=SRo.spread;Jn.throttle=vRo.throttle;Jn.unary=BRo.unary;Jn.wrap=wRo.wrap;Jn.add=TRo.add;Jn.ceil=RRo.ceil;Jn.clamp=NRo.clamp;Jn.divide=DRo.divide;Jn.floor=kRo.floor;Jn.inRange=xRo.inRange;Jn.max=GRo.max;Jn.maxBy=FRo.maxBy;Jn.mean=ZRo.mean;Jn.meanBy=LRo.meanBy;Jn.min=VRo.min;Jn.minBy=PRo.minBy;Jn.multiply=WRo.multiply;Jn.parseInt=ORo.parseInt;Jn.random=MRo.random;Jn.range=HRo.range;Jn.rangeRight=YRo.rangeRight;Jn.round=QRo.round;Jn.subtract=XRo.subtract;Jn.sum=JRo.sum;Jn.sumBy=URo.sumBy;Jn.isEqual=KRo.isEqual;Jn.identity=jRo.identity;Jn.noop=zRo.noop;Jn.assign=qRo.assign;Jn.assignIn=$Nn.assignIn;Jn.extend=$Nn.assignIn;Jn.assignInWith=eDn.assignInWith;Jn.extendWith=eDn.assignInWith;Jn.assignWith=$Ro.assignWith;Jn.at=eNo.at;Jn.clone=tNo.clone;Jn.cloneDeep=rNo.cloneDeep;Jn.cloneDeepWith=nNo.cloneDeepWith;Jn.cloneWith=iNo.cloneWith;Jn.create=sNo.create;Jn.defaults=oNo.defaults;Jn.defaultsDeep=aNo.defaultsDeep;Jn.findKey=cNo.findKey;Jn.findLastKey=lNo.findLastKey;Jn.forIn=uNo.forIn;Jn.forInRight=gNo.forInRight;Jn.forOwn=ANo.forOwn;Jn.forOwnRight=dNo.forOwnRight;Jn.fromPairs=pNo.fromPairs;Jn.functions=fNo.functions;Jn.functionsIn=INo.functionsIn;Jn.get=hNo.get;Jn.has=mNo.has;Jn.hasIn=CNo.hasIn;Jn.invert=_No.invert;Jn.invertBy=yNo.invertBy;Jn.keys=bNo.keys;Jn.keysIn=ENo.keysIn;Jn.mapKeys=SNo.mapKeys;Jn.mapValues=vNo.mapValues;Jn.merge=BNo.merge;Jn.mergeWith=wNo.mergeWith;Jn.omit=TNo.omit;Jn.omitBy=RNo.omitBy;Jn.pick=NNo.pick;Jn.pickBy=DNo.pickBy;Jn.property=kNo.property;Jn.propertyOf=xNo.propertyOf;Jn.result=GNo.result;Jn.set=FNo.set;Jn.setWith=ZNo.setWith;Jn.toDefaulted=LNo.toDefaulted;Jn.toPairs=VNo.toPairs;Jn.toPairsIn=PNo.toPairsIn;Jn.transform=WNo.transform;Jn.unset=ONo.unset;Jn.update=MNo.update;Jn.updateWith=HNo.updateWith;Jn.values=YNo.values;Jn.valuesIn=QNo.valuesIn;Jn.isFunction=XNo.isFunction;Jn.isLength=JNo.isLength;Jn.isMatchWith=UNo.isMatchWith;Jn.isNative=KNo.isNative;Jn.isNull=jNo.isNull;Jn.isUndefined=zNo.isUndefined;Jn.conforms=qNo.conforms;Jn.conformsTo=$No.conformsTo;Jn.isArguments=eDo.isArguments;Jn.isArray=tDo.isArray;Jn.isArrayBuffer=rDo.isArrayBuffer;Jn.isArrayLike=nDo.isArrayLike;Jn.isArrayLikeObject=iDo.isArrayLikeObject;Jn.isBoolean=sDo.isBoolean;Jn.isBuffer=oDo.isBuffer;Jn.isDate=aDo.isDate;Jn.isElement=cDo.isElement;Jn.isEmpty=lDo.isEmpty;Jn.isEqualWith=uDo.isEqualWith;Jn.isError=gDo.isError;Jn.isFinite=ADo.isFinite;Jn.isInteger=dDo.isInteger;Jn.isMap=pDo.isMap;Jn.isMatch=fDo.isMatch;Jn.isNaN=IDo.isNaN;Jn.isNil=hDo.isNil;Jn.isNumber=mDo.isNumber;Jn.isObject=CDo.isObject;Jn.isObjectLike=_Do.isObjectLike;Jn.isPlainObject=yDo.isPlainObject;Jn.isRegExp=bDo.isRegExp;Jn.isSafeInteger=EDo.isSafeInteger;Jn.isSet=SDo.isSet;Jn.isString=vDo.isString;Jn.isSymbol=BDo.isSymbol;Jn.isTypedArray=wDo.isTypedArray;Jn.isWeakMap=TDo.isWeakMap;Jn.isWeakSet=RDo.isWeakSet;Jn.matches=NDo.matches;Jn.matchesProperty=DDo.matchesProperty;Jn.capitalize=kDo.capitalize;Jn.bindAll=xDo.bindAll;Jn.camelCase=GDo.camelCase;Jn.deburr=FDo.deburr;Jn.endsWith=ZDo.endsWith;Jn.escape=LDo.escape;Jn.escapeRegExp=VDo.escapeRegExp;Jn.kebabCase=PDo.kebabCase;Jn.lowerCase=WDo.lowerCase;Jn.lowerFirst=ODo.lowerFirst;Jn.pad=MDo.pad;Jn.padEnd=HDo.padEnd;Jn.padStart=YDo.padStart;Jn.repeat=QDo.repeat;Jn.replace=XDo.replace;Jn.snakeCase=JDo.snakeCase;Jn.split=UDo.split;Jn.startCase=KDo.startCase;Jn.startsWith=jDo.startsWith;Jn.template=tDn.template;Jn.templateSettings=tDn.templateSettings;Jn.toLower=zDo.toLower;Jn.toUpper=qDo.toUpper;Jn.trim=$Do.trim;Jn.trimEnd=eko.trimEnd;Jn.trimStart=tko.trimStart;Jn.truncate=rko.truncate;Jn.unescape=nko.unescape;Jn.upperCase=iko.upperCase;Jn.upperFirst=sko.upperFirst;Jn.words=oko.words;Jn.cond=ako.cond;Jn.constant=cko.constant;Jn.defaultTo=lko.defaultTo;Jn.eq=uko.isEqualsSameValueZero;Jn.gt=gko.gt;Jn.gte=Ako.gte;Jn.invoke=dko.invoke;Jn.iteratee=pko.iteratee;Jn.lt=fko.lt;Jn.lte=Iko.lte;Jn.method=hko.method;Jn.methodOf=mko.methodOf;Jn.now=Cko.now;Jn.over=_ko.over;Jn.overEvery=yko.overEvery;Jn.overSome=bko.overSome;Jn.stubArray=Eko.stubArray;Jn.stubFalse=Sko.stubFalse;Jn.stubObject=vko.stubObject;Jn.stubString=Bko.stubString;Jn.stubTrue=wko.stubTrue;Jn.times=Tko.times;Jn.toArray=Rko.toArray;Jn.toFinite=Nko.toFinite;Jn.toInteger=Dko.toInteger;Jn.toLength=kko.toLength;Jn.toNumber=xko.toNumber;Jn.toPath=Gko.toPath;Jn.toPlainObject=Fko.toPlainObject;Jn.toSafeInteger=Zko.toSafeInteger;Jn.toString=Lko.toString;Jn.uniqueId=Vko.uniqueId;Jn.default=Pko.toolkit});var xW=H((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;exports.parseDuration=parseDuration;var tslib_1=(Pa(),vi(Va)),fslib_1=ro(),clipanion_1=($c(),vi(rg)),compat_1=kW(),micromatch_1=tslib_1.__importDefault(Ek()),p_limit_1=tslib_1.__importDefault(Dfe()),semver_1=tslib_1.__importDefault(UC()),stream_1=wt("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:n=r}){return e===0?n:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(n=>JSON.stringify(n)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let n of e){let a=t(n);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let n=t(r);if(n!==mapAndFindSkip)return n}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let n of t){if(n.status==="rejected")throw n.reason;r.push(n.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let n=e.get(t);return typeof n>"u"&&e.set(t,n=r()),n}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let n=[];e.on("error",a=>{r(a)}),e.on("data",a=>{n.push(a)}),e.on("end",()=>{t(Buffer.concat(n))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),n(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let n=this.deferred.get(t);typeof n>"u"&&this.deferred.set(t,n=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&n.resolve()},o=>{this.promises.get(t)===a&&n.reject(o)}),n.promise}reduce(t,r){let n=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(n))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,n){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,n(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let n=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:n}),n}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r="",n=0,a=0,o=e.matchAll(/\\(?[\\$}])|\$\{(?[a-zA-Z]\w*)(?:-|-|(?=\}))|(?\$\{)|\}/g),l=()=>{let A=a;for(let{0:f,index:I,groups:{variable:C}={}}of o)if(C)a++;else if(f==="}"&&--a0)throw new clipanion_1.UsageError(`Incomplete variable substitution in input: ${e}`);return r+e.slice(n)}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=l=>({value:l}),n=r(e),a=t.map(l=>r(l)),{value:o}=(0,compat_1.mergeWith)(n,...a,(l,A)=>{if(Array.isArray(l)&&Array.isArray(A)){for(let f of A)l.find(I=>(0,compat_1.isEqual)(I,f))||l.push(f);return l}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let n of e){let a=n[t];r[a]??=[],r[a].push(n)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}var DURATION_UNITS={ms:1,s:1e3,m:60*1e3,h:60*60*1e3,d:24*60*60*1e3,w:7*24*60*60*1e3},DURATION_REGEXP=new RegExp(`^(?\\d*\\.?\\d+)(?${Object.keys(DURATION_UNITS).join("|")})?$`);function parseDuration(e,t){let r=DURATION_REGEXP.exec(e)?.groups;if(!r)throw new Error(`Couldn't parse "${e}" as a duration`);if(r.unit===void 0)return parseFloat(r.num);let n=DURATION_UNITS[r.unit];if(!n)throw new Error(`Invalid duration unit "${r.unit}"`);return parseFloat(r.num)*n/DURATION_UNITS[t]}});var Qfe=H(loe=>{"use strict";Object.defineProperty(loe,"__esModule",{value:!0});loe.PackageExtensionStatus=loe.PackageExtensionType=loe.LinkType=void 0;var rDn;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(rDn||(loe.LinkType=rDn={}));var nDn;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(nDn||(loe.PackageExtensionType=nDn={}));var iDn;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(iDn||(loe.PackageExtensionStatus=iDn={}))});var rM=H(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});Wu.LogLevel=Wu.supportsHyperlinks=Wu.supportsColor=Wu.Style=Wu.Type=Wu.stripAnsi=void 0;Wu.tuple=Yko;Wu.applyStyle=cDn;Wu.applyColor=eb;Wu.applyHyperlink=lDn;Wu.pretty=Xfe;Wu.prettyList=Xko;Wu.json=uDn;Wu.jsonOrPretty=Jko;Wu.mark=Uko;Wu.prettyField=Kko;Wu.prettyTruncatedLocatorList=jko;Wu.addLogFilterSupport=zko;var zSe=(Pa(),vi(Va)),sDn=ro(),_ut=zSe.__importDefault(VK()),mut=zSe.__importDefault(Nfe()),Wko=($c(),vi(rg)),Oko=zSe.__importDefault(Ek()),aDn=zSe.__importDefault(q5());Wu.stripAnsi=aDn.default;var hut=M9(),Mko=zSe.__importStar(xW()),DE=zSe.__importStar(uG()),jSe=Qfe();Wu.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",STRING:"STRING",BOOLEAN:"BOOLEAN",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var yut;(function(e){e[e.BOLD=2]="BOLD"})(yut||(Wu.Style=yut={}));var Pcr=mut.default.GITHUB_ACTIONS?{level:2}:_ut.default.supportsColor?{level:_ut.default.supportsColor.level}:{level:0};Wu.supportsColor=Pcr.level!==0;Wu.supportsHyperlinks=Wu.supportsColor&&!mut.default.GITHUB_ACTIONS&&!mut.default.CIRCLE&&!mut.default.GITLAB;var Vcr=new _ut.default.Instance(Pcr),Hko=new Map([[Wu.Type.NO_HINT,null],[Wu.Type.NULL,["#a853b5",129]],[Wu.Type.SCOPE,["#d75f00",166]],[Wu.Type.NAME,["#d7875f",173]],[Wu.Type.RANGE,["#00afaf",37]],[Wu.Type.REFERENCE,["#87afff",111]],[Wu.Type.NUMBER,["#ffd700",220]],[Wu.Type.STRING,["#b4bd68",32]],[Wu.Type.BOOLEAN,["#faa023",209]],[Wu.Type.PATH,["#d75fd7",170]],[Wu.Type.URL,["#d75fd7",170]],[Wu.Type.ADDED,["#5faf00",70]],[Wu.Type.REMOVED,["#ff3131",160]],[Wu.Type.CODE,["#87afff",111]],[Wu.Type.SIZE,["#ffd700",220]]]),lG=e=>e;function oDn(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let n=1024**r;return`${Math.floor(e*100/n)/100} ${t[r-1]}`}function Cut(e,t){if(Array.isArray(t))return t.length===0?eb(e,"[]",Wu.Type.CODE):eb(e,"[ ",Wu.Type.CODE)+t.map(r=>Cut(e,r)).join(", ")+eb(e," ]",Wu.Type.CODE);if(typeof t=="string")return eb(e,JSON.stringify(t),Wu.Type.STRING);if(typeof t=="number")return eb(e,JSON.stringify(t),Wu.Type.NUMBER);if(typeof t=="boolean")return eb(e,JSON.stringify(t),Wu.Type.BOOLEAN);if(t===null)return eb(e,"null",Wu.Type.NULL);if(typeof t=="object"&&Object.getPrototypeOf(t)===Object.prototype){let r=Object.entries(t);return r.length===0?eb(e,"{}",Wu.Type.CODE):eb(e,"{ ",Wu.Type.CODE)+r.map(([n,a])=>`${Cut(e,n)}: ${Cut(e,a)}`).join(", ")+eb(e," }",Wu.Type.CODE)}if(typeof t>"u")return eb(e,"undefined",Wu.Type.NULL);throw new Error("Assertion failed: The value doesn't seem to be a valid JSON object")}var but={[Wu.Type.ID]:lG({pretty:(e,t)=>typeof t=="number"?eb(e,`${t}`,Wu.Type.NUMBER):eb(e,t,Wu.Type.CODE),json:e=>e}),[Wu.Type.INSPECT]:lG({pretty:(e,t)=>Cut(e,t),json:e=>e}),[Wu.Type.NUMBER]:lG({pretty:(e,t)=>eb(e,`${t}`,Wu.Type.NUMBER),json:e=>e}),[Wu.Type.IDENT]:lG({pretty:(e,t)=>DE.prettyIdent(e,t),json:e=>DE.stringifyIdent(e)}),[Wu.Type.LOCATOR]:lG({pretty:(e,t)=>DE.prettyLocator(e,t),json:e=>DE.stringifyLocator(e)}),[Wu.Type.DESCRIPTOR]:lG({pretty:(e,t)=>DE.prettyDescriptor(e,t),json:e=>DE.stringifyDescriptor(e)}),[Wu.Type.RESOLUTION]:lG({pretty:(e,{descriptor:t,locator:r})=>DE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:DE.stringifyDescriptor(e),locator:t!==null?DE.stringifyLocator(t):null})}),[Wu.Type.DEPENDENT]:lG({pretty:(e,{locator:t,descriptor:r})=>DE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:DE.stringifyLocator(e),descriptor:DE.stringifyDescriptor(t)})}),[Wu.Type.PACKAGE_EXTENSION]:lG({pretty:(e,t)=>{switch(t.type){case jSe.PackageExtensionType.Dependency:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"dependencies",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,t.descriptor)}`;case jSe.PackageExtensionType.PeerDependency:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"peerDependencies",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,t.descriptor)}`;case jSe.PackageExtensionType.PeerDependencyMeta:return`${DE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${eb(e,"peerDependenciesMeta",Wu.Type.CODE)} \u27A4 ${DE.prettyIdent(e,DE.parseIdent(t.selector))} \u27A4 ${eb(e,t.key,Wu.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case jSe.PackageExtensionType.Dependency:return`${DE.stringifyIdent(e.parentDescriptor)} > ${DE.stringifyIdent(e.descriptor)}`;case jSe.PackageExtensionType.PeerDependency:return`${DE.stringifyIdent(e.parentDescriptor)} >> ${DE.stringifyIdent(e.descriptor)}`;case jSe.PackageExtensionType.PeerDependencyMeta:return`${DE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Wu.Type.SETTING]:lG({pretty:(e,t)=>(e.get(t),lDn(e,eb(e,t,Wu.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Wu.Type.DURATION]:lG({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),n=Math.ceil((t-r*60*1e3)/1e3);return n===0?`${r}m`:`${r}m ${n}s`}else{let r=Math.floor(t/1e3),n=t-r*1e3;return n===0?`${r}s`:`${r}s ${n}ms`}},json:e=>e}),[Wu.Type.SIZE]:lG({pretty:(e,t)=>eb(e,oDn(t),Wu.Type.NUMBER),json:e=>e}),[Wu.Type.SIZE_DIFF]:lG({pretty:(e,t)=>{let r=t>=0?"+":"-",n=r==="+"?Wu.Type.REMOVED:Wu.Type.ADDED;return eb(e,`${r} ${oDn(Math.max(Math.abs(t),1))}`,n)},json:e=>e}),[Wu.Type.PATH]:lG({pretty:(e,t)=>eb(e,sDn.npath.fromPortablePath(t),Wu.Type.PATH),json:e=>sDn.npath.fromPortablePath(e)}),[Wu.Type.MARKDOWN]:lG({pretty:(e,{text:t,format:r,paragraphs:n})=>(0,Wko.formatMarkdownish)(t,{format:r,paragraphs:n}),json:({text:e})=>e}),[Wu.Type.MARKDOWN_INLINE]:lG({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,n,a)=>Xfe(e,n+a+n,Wu.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,n,a)=>cDn(e,a,yut.BOLD)),t),json:e=>e})};function Yko(e,t){return[t,e]}function cDn(e,t,r){return e.get("enableColors")&&r&yut.BOLD&&(t=_ut.default.bold(t)),t}function eb(e,t,r){if(!e.get("enableColors"))return t;let n=Hko.get(r);if(n===null)return t;let a=typeof n>"u"?r:Pcr.level>=3?n[0]:n[1],o=typeof a=="number"?Vcr.ansi256(a):a.startsWith("#")?Vcr.hex(a):Vcr[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var Qko=!!process.env.KONSOLE_VERSION;function lDn(e,t,r){return e.get("enableHyperlinks")?Qko?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function Xfe(e,t,r){if(t===null)return eb(e,"null",Wu.Type.NULL);if(Object.hasOwn(but,r))return but[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return eb(e,t,r)}function Xko(e,t,r,{separator:n=", "}={}){return[...t].map(a=>Xfe(e,a,r)).join(n)}function uDn(e,t){if(e===null)return null;if(Object.hasOwn(but,t))return Mko.overrideType(t),but[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function Jko(e,t,[r,n]){return e?uDn(r,n):Xfe(t,r,n)}function Uko(e){return{Check:eb(e,"\u2713","green"),Cross:eb(e,"\u2718","red"),Question:eb(e,"?","cyan")}}function Kko(e,{label:t,value:[r,n]}){return`${Xfe(e,t,Wu.Type.CODE)}: ${Xfe(e,r,n)}`}function jko(e,t,r){let n=[],a=[...t],o=r;for(;a.length>0;){let I=a[0],C=`${DE.prettyLocator(e,I)}, `,b=DE.prettyLocatorNoColors(I).length+2;if(n.length>0&&oI).join("").slice(0,-2);let l="X".repeat(a.length.toString().length),A=`and ${l} more.`,f=a.length;for(;n.length>1&&oI).join(""),A.replace(l,Xfe(e,f,Wu.Type.NUMBER))].join("")}var uoe;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(uoe||(Wu.LogLevel=uoe={}));function zko(e,{configuration:t}){let r=t.get("logFilters"),n=new Map,a=new Map,o=[];for(let b of r){let E=b.get("level");if(typeof E>"u")continue;let N=b.get("code");typeof N<"u"&&n.set(N,E);let B=b.get("text");typeof B<"u"&&a.set(B,E);let F=b.get("pattern");typeof F<"u"&&o.push([Oko.default.matcher(F,{contains:!0}),E])}o.reverse();let l=(b,E,N)=>{if(b===null||b===hut.MessageName.UNNAMED)return N;let B=a.size>0||o.length>0?(0,aDn.default)(E):E;if(a.size>0){let F=a.get(B);if(typeof F<"u")return F??N}if(o.length>0){for(let[F,Q]of o)if(F(B))return Q??N}if(n.size>0){let F=n.get((0,hut.stringifyMessageName)(b));if(typeof F<"u")return F??N}return N},A=e.reportInfo,f=e.reportWarning,I=e.reportError,C=function(b,E,N,B){switch(l(E,N,B)){case uoe.Info:A.call(b,E,N);break;case uoe.Warning:f.call(b,E??hut.MessageName.UNNAMED,N);break;case uoe.Error:I.call(b,E??hut.MessageName.UNNAMED,N);break}};e.reportInfo=function(...b){return C(this,...b,uoe.Info)},e.reportWarning=function(...b){return C(this,...b,uoe.Warning)},e.reportError=function(...b){return C(this,...b,uoe.Error)}}});var gDn=H(qSe=>{"use strict";Object.defineProperty(qSe,"__esModule",{value:!0});qSe.splitWhen=qSe.flatten=void 0;function qko(e){return e.reduce((t,r)=>[].concat(t,r),[])}qSe.flatten=qko;function $ko(e,t){let r=[[]],n=0;for(let a of e)t(a)?(n++,r[n]=[]):r[n].push(a);return r}qSe.splitWhen=$ko});var ADn=H(Eut=>{"use strict";Object.defineProperty(Eut,"__esModule",{value:!0});Eut.isEnoentCodeError=void 0;function exo(e){return e.code==="ENOENT"}Eut.isEnoentCodeError=exo});var dDn=H(Sut=>{"use strict";Object.defineProperty(Sut,"__esModule",{value:!0});Sut.createDirentFromStats=void 0;var Wcr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function txo(e,t){return new Wcr(e,t)}Sut.createDirentFromStats=txo});var hDn=H(eT=>{"use strict";Object.defineProperty(eT,"__esModule",{value:!0});eT.convertPosixPathToPattern=eT.convertWindowsPathToPattern=eT.convertPathToPattern=eT.escapePosixPath=eT.escapeWindowsPath=eT.escape=eT.removeLeadingDotSegment=eT.makeAbsolute=eT.unixify=void 0;var rxo=wt("os"),nxo=wt("path"),pDn=rxo.platform()==="win32",ixo=2,sxo=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,oxo=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,axo=/^\\\\([.?])/,cxo=/\\(?![!()+@[\]{}])/g;function lxo(e){return e.replace(/\\/g,"/")}eT.unixify=lxo;function uxo(e,t){return nxo.resolve(e,t)}eT.makeAbsolute=uxo;function gxo(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(ixo)}return e}eT.removeLeadingDotSegment=gxo;eT.escape=pDn?Ocr:Mcr;function Ocr(e){return e.replace(oxo,"\\$2")}eT.escapeWindowsPath=Ocr;function Mcr(e){return e.replace(sxo,"\\$2")}eT.escapePosixPath=Mcr;eT.convertPathToPattern=pDn?fDn:IDn;function fDn(e){return Ocr(e).replace(axo,"//$1").replace(cxo,"/")}eT.convertWindowsPathToPattern=fDn;function IDn(e){return Mcr(e)}eT.convertPosixPathToPattern=IDn});var CDn=H((MKl,mDn)=>{mDn.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var bDn=H((HKl,yDn)=>{var Axo=CDn(),_Dn={"{":"}","(":")","[":"]"},dxo=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,n=-2,a=-2,o=-2,l=-2;tt&&(l===-1||l>n||(l=e.indexOf("\\",t),l===-1||l>n)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(l=e.indexOf("\\",t),l===-1||l>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(l=e.indexOf("\\",t),l===-1||l>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(l=e.indexOf("\\",r),l===-1||l>o))))return!0;if(e[t]==="\\"){var A=e[t+1];t+=2;var f=_Dn[A];if(f){var I=e.indexOf(f,t);I!==-1&&(t=I+1)}if(e[t]==="!")return!0}else t++}return!1},pxo=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var fxo=bDn(),Ixo=wt("path").posix.dirname,hxo=wt("os").platform()==="win32",Hcr="/",mxo=/\\/g,Cxo=/[\{\[].*[\}\]]$/,_xo=/(^|[^\\])([\{\[]|\([^\)]+$)/,yxo=/\\([\!\*\?\|\[\]\(\)\{\}])/g;EDn.exports=function(t,r){var n=Object.assign({flipBackslashes:!0},r);n.flipBackslashes&&hxo&&t.indexOf(Hcr)<0&&(t=t.replace(mxo,Hcr)),Cxo.test(t)&&(t+=Hcr),t+="a";do t=Ixo(t);while(fxo(t)||_xo.test(t));return t.replace(yxo,"$1")}});var kDn=H(oI=>{"use strict";Object.defineProperty(oI,"__esModule",{value:!0});oI.removeDuplicateSlashes=oI.matchAny=oI.convertPatternsToRe=oI.makeRe=oI.getPatternParts=oI.expandBraceExpansion=oI.expandPatternsWithBraceExpansion=oI.isAffectDepthOfReadingPattern=oI.endsWithSlashGlobStar=oI.hasGlobStar=oI.getBaseDirectory=oI.isPatternRelatedToParentDirectory=oI.getPatternsOutsideCurrentDirectory=oI.getPatternsInsideCurrentDirectory=oI.getPositivePatterns=oI.getNegativePatterns=oI.isPositivePattern=oI.isNegativePattern=oI.convertToNegativePattern=oI.convertToPositivePattern=oI.isDynamicPattern=oI.isStaticPattern=void 0;var bxo=wt("path"),Exo=SDn(),Ycr=Ek(),vDn="**",Sxo="\\",vxo=/[*?]|^!/,Bxo=/\[[^[]*]/,wxo=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,Txo=/[!*+?@]\([^(]*\)/,Rxo=/,|\.\./,Nxo=/(?!^)\/{2,}/g;function BDn(e,t={}){return!wDn(e,t)}oI.isStaticPattern=BDn;function wDn(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(Sxo)||vxo.test(e)||Bxo.test(e)||wxo.test(e)||t.extglob!==!1&&Txo.test(e)||t.braceExpansion!==!1&&Dxo(e))}oI.isDynamicPattern=wDn;function Dxo(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let n=e.slice(t,r);return Rxo.test(n)}function kxo(e){return vut(e)?e.slice(1):e}oI.convertToPositivePattern=kxo;function xxo(e){return"!"+e}oI.convertToNegativePattern=xxo;function vut(e){return e.startsWith("!")&&e[1]!=="("}oI.isNegativePattern=vut;function TDn(e){return!vut(e)}oI.isPositivePattern=TDn;function Gxo(e){return e.filter(vut)}oI.getNegativePatterns=Gxo;function Fxo(e){return e.filter(TDn)}oI.getPositivePatterns=Fxo;function Zxo(e){return e.filter(t=>!Qcr(t))}oI.getPatternsInsideCurrentDirectory=Zxo;function Lxo(e){return e.filter(Qcr)}oI.getPatternsOutsideCurrentDirectory=Lxo;function Qcr(e){return e.startsWith("..")||e.startsWith("./..")}oI.isPatternRelatedToParentDirectory=Qcr;function Vxo(e){return Exo(e,{flipBackslashes:!1})}oI.getBaseDirectory=Vxo;function Pxo(e){return e.includes(vDn)}oI.hasGlobStar=Pxo;function RDn(e){return e.endsWith("/"+vDn)}oI.endsWithSlashGlobStar=RDn;function Wxo(e){let t=bxo.basename(e);return RDn(e)||BDn(t)}oI.isAffectDepthOfReadingPattern=Wxo;function Oxo(e){return e.reduce((t,r)=>t.concat(NDn(r)),[])}oI.expandPatternsWithBraceExpansion=Oxo;function NDn(e){let t=Ycr.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,n)=>r.length-n.length),t.filter(r=>r!=="")}oI.expandBraceExpansion=NDn;function Mxo(e,t){let{parts:r}=Ycr.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}oI.getPatternParts=Mxo;function DDn(e,t){return Ycr.makeRe(e,t)}oI.makeRe=DDn;function Hxo(e,t){return e.map(r=>DDn(r,t))}oI.convertPatternsToRe=Hxo;function Yxo(e,t){return t.some(r=>r.test(e))}oI.matchAny=Yxo;function Qxo(e){return e.replace(Nxo,"/")}oI.removeDuplicateSlashes=Qxo});var Xcr=H((XKl,FDn)=>{"use strict";var Xxo=wt("stream"),xDn=Xxo.PassThrough,Jxo=Array.prototype.slice;FDn.exports=Uxo;function Uxo(){let e=[],t=Jxo.call(arguments),r=!1,n=t[t.length-1];n&&!Array.isArray(n)&&n.pipe==null?t.pop():n={};let a=n.end!==!1,o=n.pipeError===!0;n.objectMode==null&&(n.objectMode=!0),n.highWaterMark==null&&(n.highWaterMark=64*1024);let l=xDn(n);function A(){for(let C=0,b=arguments.length;C0||(r=!1,f())}function N(B){function F(){B.removeListener("merge2UnpipeEnd",F),B.removeListener("end",F),o&&B.removeListener("error",Q),E()}function Q(X){l.emit("error",X)}if(B._readableState.endEmitted)return E();B.on("merge2UnpipeEnd",F),B.on("end",F),o&&B.on("error",Q),B.pipe(l,{end:!1}),B.resume()}for(let B=0;B{"use strict";Object.defineProperty(But,"__esModule",{value:!0});But.merge=void 0;var Kxo=Xcr();function jxo(e){let t=Kxo(e);return e.forEach(r=>{r.once("error",n=>t.emit("error",n))}),t.once("close",()=>ZDn(e)),t.once("end",()=>ZDn(e)),t}But.merge=jxo;function ZDn(e){e.forEach(t=>t.emit("close"))}});var VDn=H($Se=>{"use strict";Object.defineProperty($Se,"__esModule",{value:!0});$Se.isEmpty=$Se.isString=void 0;function zxo(e){return typeof e=="string"}$Se.isString=zxo;function qxo(e){return e===""}$Se.isEmpty=qxo});var r$=H(gG=>{"use strict";Object.defineProperty(gG,"__esModule",{value:!0});gG.string=gG.stream=gG.pattern=gG.path=gG.fs=gG.errno=gG.array=void 0;var $xo=gDn();gG.array=$xo;var eGo=ADn();gG.errno=eGo;var tGo=dDn();gG.fs=tGo;var rGo=hDn();gG.path=rGo;var nGo=kDn();gG.pattern=nGo;var iGo=LDn();gG.stream=iGo;var sGo=VDn();gG.string=sGo});var MDn=H(AG=>{"use strict";Object.defineProperty(AG,"__esModule",{value:!0});AG.convertPatternGroupToTask=AG.convertPatternGroupsToTasks=AG.groupPatternsByBaseDirectory=AG.getNegativePatternsAsPositive=AG.getPositivePatterns=AG.convertPatternsToTasks=AG.generate=void 0;var sX=r$();function oGo(e,t){let r=PDn(e,t),n=PDn(t.ignore,t),a=WDn(r),o=ODn(r,n),l=a.filter(C=>sX.pattern.isStaticPattern(C,t)),A=a.filter(C=>sX.pattern.isDynamicPattern(C,t)),f=Jcr(l,o,!1),I=Jcr(A,o,!0);return f.concat(I)}AG.generate=oGo;function PDn(e,t){let r=e;return t.braceExpansion&&(r=sX.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(n=>n.includes("/")?n:`**/${n}`)),r.map(n=>sX.pattern.removeDuplicateSlashes(n))}function Jcr(e,t,r){let n=[],a=sX.pattern.getPatternsOutsideCurrentDirectory(e),o=sX.pattern.getPatternsInsideCurrentDirectory(e),l=Ucr(a),A=Ucr(o);return n.push(...Kcr(l,t,r)),"."in A?n.push(jcr(".",o,t,r)):n.push(...Kcr(A,t,r)),n}AG.convertPatternsToTasks=Jcr;function WDn(e){return sX.pattern.getPositivePatterns(e)}AG.getPositivePatterns=WDn;function ODn(e,t){return sX.pattern.getNegativePatterns(e).concat(t).map(sX.pattern.convertToPositivePattern)}AG.getNegativePatternsAsPositive=ODn;function Ucr(e){let t={};return e.reduce((r,n)=>{let a=sX.pattern.getBaseDirectory(n);return a in r?r[a].push(n):r[a]=[n],r},t)}AG.groupPatternsByBaseDirectory=Ucr;function Kcr(e,t,r){return Object.keys(e).map(n=>jcr(n,e[n],t,r))}AG.convertPatternGroupsToTasks=Kcr;function jcr(e,t,r,n){return{dynamic:n,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(sX.pattern.convertToNegativePattern))}}AG.convertPatternGroupToTask=jcr});var YDn=H(wut=>{"use strict";Object.defineProperty(wut,"__esModule",{value:!0});wut.read=void 0;function aGo(e,t,r){t.fs.lstat(e,(n,a)=>{if(n!==null){HDn(r,n);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){zcr(r,a);return}t.fs.stat(e,(o,l)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){HDn(r,o);return}zcr(r,a);return}t.markSymbolicLink&&(l.isSymbolicLink=()=>!0),zcr(r,l)})})}wut.read=aGo;function HDn(e,t){e(t)}function zcr(e,t){e(null,t)}});var QDn=H(Tut=>{"use strict";Object.defineProperty(Tut,"__esModule",{value:!0});Tut.read=void 0;function cGo(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let n=t.fs.statSync(e);return t.markSymbolicLink&&(n.isSymbolicLink=()=>!0),n}catch(n){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw n}}Tut.read=cGo});var XDn=H(goe=>{"use strict";Object.defineProperty(goe,"__esModule",{value:!0});goe.createFileSystemAdapter=goe.FILE_SYSTEM_ADAPTER=void 0;var Rut=wt("fs");goe.FILE_SYSTEM_ADAPTER={lstat:Rut.lstat,stat:Rut.stat,lstatSync:Rut.lstatSync,statSync:Rut.statSync};function lGo(e){return e===void 0?goe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},goe.FILE_SYSTEM_ADAPTER),e)}goe.createFileSystemAdapter=lGo});var JDn=H($cr=>{"use strict";Object.defineProperty($cr,"__esModule",{value:!0});var uGo=XDn(),qcr=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=uGo.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};$cr.default=qcr});var Jfe=H(Aoe=>{"use strict";Object.defineProperty(Aoe,"__esModule",{value:!0});Aoe.statSync=Aoe.stat=Aoe.Settings=void 0;var UDn=YDn(),gGo=QDn(),elr=JDn();Aoe.Settings=elr.default;function AGo(e,t,r){if(typeof t=="function"){UDn.read(e,tlr(),t);return}UDn.read(e,tlr(t),r)}Aoe.stat=AGo;function dGo(e,t){let r=tlr(t);return gGo.read(e,r)}Aoe.statSync=dGo;function tlr(e={}){return e instanceof elr.default?e:new elr.default(e)}});var zDn=H((r8l,jDn)=>{var KDn;jDn.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(KDn||(KDn=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var $Dn=H((n8l,qDn)=>{qDn.exports=fGo;var pGo=zDn();function fGo(e,t){let r,n,a,o=!0;Array.isArray(e)?(r=[],n=e.length):(a=Object.keys(e),r={},n=a.length);function l(f){function I(){t&&t(f,r),t=null}o?pGo(I):I()}function A(f,I,C){r[f]=C,(--n===0||I)&&l(I)}n?a?a.forEach(function(f){e[f](function(I,C){A(f,I,C)})}):e.forEach(function(f,I){f(function(C,b){A(I,C,b)})}):l(null),o=!1}});var rlr=H(Dut=>{"use strict";Object.defineProperty(Dut,"__esModule",{value:!0});Dut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var Nut=process.versions.node.split(".");if(Nut[0]===void 0||Nut[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var ekn=Number.parseInt(Nut[0],10),IGo=Number.parseInt(Nut[1],10),tkn=10,hGo=10,mGo=ekn>tkn,CGo=ekn===tkn&&IGo>=hGo;Dut.IS_SUPPORT_READDIR_WITH_FILE_TYPES=mGo||CGo});var rkn=H(kut=>{"use strict";Object.defineProperty(kut,"__esModule",{value:!0});kut.createDirentFromStats=void 0;var nlr=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function _Go(e,t){return new nlr(e,t)}kut.createDirentFromStats=_Go});var ilr=H(xut=>{"use strict";Object.defineProperty(xut,"__esModule",{value:!0});xut.fs=void 0;var yGo=rkn();xut.fs=yGo});var slr=H(Gut=>{"use strict";Object.defineProperty(Gut,"__esModule",{value:!0});Gut.joinPathSegments=void 0;function bGo(e,t,r){return e.endsWith(r)?e+t:e+r+t}Gut.joinPathSegments=bGo});var ckn=H(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});doe.readdir=doe.readdirWithFileTypes=doe.read=void 0;var EGo=Jfe(),nkn=$Dn(),SGo=rlr(),ikn=ilr(),skn=slr();function vGo(e,t,r){if(!t.stats&&SGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES){okn(e,t,r);return}akn(e,t,r)}doe.read=vGo;function okn(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(n,a)=>{if(n!==null){Fut(r,n);return}let o=a.map(A=>({dirent:A,name:A.name,path:skn.joinPathSegments(e,A.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){olr(r,o);return}let l=o.map(A=>BGo(A,t));nkn(l,(A,f)=>{if(A!==null){Fut(r,A);return}olr(r,f)})})}doe.readdirWithFileTypes=okn;function BGo(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(n,a)=>{if(n!==null){if(t.throwErrorOnBrokenSymbolicLink){r(n);return}r(null,e);return}e.dirent=ikn.fs.createDirentFromStats(e.name,a),r(null,e)})}}function akn(e,t,r){t.fs.readdir(e,(n,a)=>{if(n!==null){Fut(r,n);return}let o=a.map(l=>{let A=skn.joinPathSegments(e,l,t.pathSegmentSeparator);return f=>{EGo.stat(A,t.fsStatSettings,(I,C)=>{if(I!==null){f(I);return}let b={name:l,path:A,dirent:ikn.fs.createDirentFromStats(l,C)};t.stats&&(b.stats=C),f(null,b)})}});nkn(o,(l,A)=>{if(l!==null){Fut(r,l);return}olr(r,A)})})}doe.readdir=akn;function Fut(e,t){e(t)}function olr(e,t){e(null,t)}});var dkn=H(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});poe.readdir=poe.readdirWithFileTypes=poe.read=void 0;var wGo=Jfe(),TGo=rlr(),lkn=ilr(),ukn=slr();function RGo(e,t){return!t.stats&&TGo.IS_SUPPORT_READDIR_WITH_FILE_TYPES?gkn(e,t):Akn(e,t)}poe.read=RGo;function gkn(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(n=>{let a={dirent:n,name:n.name,path:ukn.joinPathSegments(e,n.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=lkn.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}poe.readdirWithFileTypes=gkn;function Akn(e,t){return t.fs.readdirSync(e).map(n=>{let a=ukn.joinPathSegments(e,n,t.pathSegmentSeparator),o=wGo.statSync(a,t.fsStatSettings),l={name:n,path:a,dirent:lkn.fs.createDirentFromStats(n,o)};return t.stats&&(l.stats=o),l})}poe.readdir=Akn});var pkn=H(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});foe.createFileSystemAdapter=foe.FILE_SYSTEM_ADAPTER=void 0;var eve=wt("fs");foe.FILE_SYSTEM_ADAPTER={lstat:eve.lstat,stat:eve.stat,lstatSync:eve.lstatSync,statSync:eve.statSync,readdir:eve.readdir,readdirSync:eve.readdirSync};function NGo(e){return e===void 0?foe.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},foe.FILE_SYSTEM_ADAPTER),e)}foe.createFileSystemAdapter=NGo});var fkn=H(clr=>{"use strict";Object.defineProperty(clr,"__esModule",{value:!0});var DGo=wt("path"),kGo=Jfe(),xGo=pkn(),alr=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=xGo.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,DGo.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new kGo.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};clr.default=alr});var Zut=H(Ioe=>{"use strict";Object.defineProperty(Ioe,"__esModule",{value:!0});Ioe.Settings=Ioe.scandirSync=Ioe.scandir=void 0;var Ikn=ckn(),GGo=dkn(),llr=fkn();Ioe.Settings=llr.default;function FGo(e,t,r){if(typeof t=="function"){Ikn.read(e,ulr(),t);return}Ikn.read(e,ulr(t),r)}Ioe.scandir=FGo;function ZGo(e,t){let r=ulr(t);return GGo.read(e,r)}Ioe.scandirSync=ZGo;function ulr(e={}){return e instanceof llr.default?e:new llr.default(e)}});var mkn=H((d8l,hkn)=>{"use strict";function LGo(e){var t=new e,r=t;function n(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:n,release:a}}hkn.exports=LGo});var _kn=H((p8l,glr)=>{"use strict";var VGo=mkn();function Ckn(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=VGo(PGo),a=null,o=null,l=0,A=null,f={push:F,drain:nM,saturated:nM,pause:C,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&l=r||f.paused?o?(o.next=de,o=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function Q(fe,ue){var de=n.get();de.context=e,de.release=X,de.value=fe,de.callback=ue||nM,de.errorHandler=A,l>=r||f.paused?a?(de.next=a,a=de):(a=de,o=de,f.saturated()):(l++,t.call(e,de.value,de.worked))}function X(fe){fe&&n.release(fe);var ue=a;ue&&l<=r?f.paused?l--:(o===a&&(o=null),a=ue.next,ue.next=null,t.call(e,ue.value,ue.worked),o===null&&f.empty()):--l===0&&f.drain()}function ae(){a=null,o=null,f.drain=nM}function ne(){a=null,o=null,f.drain(),f.drain=nM}function ce(fe){A=fe}}function nM(){}function PGo(){this.value=null,this.callback=nM,this.next=null,this.release=nM,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var a=e.callback,o=e.errorHandler,l=e.value;e.value=null,e.callback=nM,e.errorHandler&&o(r,l),a.call(e.context,r,n),e.release(e)}}function WGo(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(C,b){t.call(this,C).then(function(E){b(null,E)},b)}var a=Ckn(e,n,r),o=a.push,l=a.unshift;return a.push=A,a.unshift=f,a.drained=I,a;function A(C){var b=new Promise(function(E,N){o(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(nM),b}function f(C){var b=new Promise(function(E,N){l(C,function(B,F){if(B){N(B);return}E(F)})});return b.catch(nM),b}function I(){if(a.idle())return new Promise(function(E){E()});var C=a.drain,b=new Promise(function(E){a.drain=function(){C(),E()}});return b}}glr.exports=Ckn;glr.exports.promise=WGo});var Lut=H(QK=>{"use strict";Object.defineProperty(QK,"__esModule",{value:!0});QK.joinPathSegments=QK.replacePathSegmentSeparator=QK.isAppliedFilter=QK.isFatalError=void 0;function OGo(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}QK.isFatalError=OGo;function MGo(e,t){return e===null||e(t)}QK.isAppliedFilter=MGo;function HGo(e,t){return e.split(/[/\\]/).join(t)}QK.replacePathSegmentSeparator=HGo;function YGo(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}QK.joinPathSegments=YGo});var plr=H(dlr=>{"use strict";Object.defineProperty(dlr,"__esModule",{value:!0});var QGo=Lut(),Alr=class{constructor(t,r){this._root=t,this._settings=r,this._root=QGo.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};dlr.default=Alr});var hlr=H(Ilr=>{"use strict";Object.defineProperty(Ilr,"__esModule",{value:!0});var XGo=wt("events"),JGo=Zut(),UGo=_kn(),Vut=Lut(),KGo=plr(),flr=class extends KGo.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=JGo.scandir,this._emitter=new XGo.EventEmitter,this._queue=UGo(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let n={directory:t,base:r};this._queue.push(n,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(n,a)=>{if(n!==null){r(n,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!Vut.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let n=t.path;r!==void 0&&(t.path=Vut.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Vut.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&Vut.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};Ilr.default=flr});var ykn=H(Clr=>{"use strict";Object.defineProperty(Clr,"__esModule",{value:!0});var jGo=hlr(),mlr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new jGo.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{zGo(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{qGo(t,this._storage)}),this._reader.read()}};Clr.default=mlr;function zGo(e,t){e(t)}function qGo(e,t){e(null,t)}});var bkn=H(ylr=>{"use strict";Object.defineProperty(ylr,"__esModule",{value:!0});var $Go=wt("stream"),eFo=hlr(),_lr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new eFo.default(this._root,this._settings),this._stream=new $Go.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};ylr.default=_lr});var Ekn=H(Elr=>{"use strict";Object.defineProperty(Elr,"__esModule",{value:!0});var tFo=Zut(),Put=Lut(),rFo=plr(),blr=class extends rFo.default{constructor(){super(...arguments),this._scandir=tFo.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let n=this._scandir(t,this._settings.fsScandirSettings);for(let a of n)this._handleEntry(a,r)}catch(n){this._handleError(n)}}_handleError(t){if(Put.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let n=t.path;r!==void 0&&(t.path=Put.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Put.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&Put.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(n,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};Elr.default=blr});var Skn=H(vlr=>{"use strict";Object.defineProperty(vlr,"__esModule",{value:!0});var nFo=Ekn(),Slr=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new nFo.default(this._root,this._settings)}read(){return this._reader.read()}};vlr.default=Slr});var vkn=H(wlr=>{"use strict";Object.defineProperty(wlr,"__esModule",{value:!0});var iFo=wt("path"),sFo=Zut(),Blr=class{constructor(t={}){this._options=t,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,iFo.sep),this.fsScandirSettings=new sFo.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};wlr.default=Blr});var Out=H(XK=>{"use strict";Object.defineProperty(XK,"__esModule",{value:!0});XK.Settings=XK.walkStream=XK.walkSync=XK.walk=void 0;var Bkn=ykn(),oFo=bkn(),aFo=Skn(),Tlr=vkn();XK.Settings=Tlr.default;function cFo(e,t,r){if(typeof t=="function"){new Bkn.default(e,Wut()).read(t);return}new Bkn.default(e,Wut(t)).read(r)}XK.walk=cFo;function lFo(e,t){let r=Wut(t);return new aFo.default(e,r).read()}XK.walkSync=lFo;function uFo(e,t){let r=Wut(t);return new oFo.default(e,r).read()}XK.walkStream=uFo;function Wut(e={}){return e instanceof Tlr.default?e:new Tlr.default(e)}});var Mut=H(Nlr=>{"use strict";Object.defineProperty(Nlr,"__esModule",{value:!0});var gFo=wt("path"),AFo=Jfe(),wkn=r$(),Rlr=class{constructor(t){this._settings=t,this._fsStatSettings=new AFo.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return gFo.resolve(this._settings.cwd,t)}_makeEntry(t,r){let n={name:r,path:r,dirent:wkn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(n.stats=t),n}_isFatalError(t){return!wkn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};Nlr.default=Rlr});var xlr=H(klr=>{"use strict";Object.defineProperty(klr,"__esModule",{value:!0});var dFo=wt("stream"),pFo=Jfe(),fFo=Out(),IFo=Mut(),Dlr=class extends IFo.default{constructor(){super(...arguments),this._walkStream=fFo.walkStream,this._stat=pFo.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let n=t.map(this._getFullEntryPath,this),a=new dFo.PassThrough({objectMode:!0});a._write=(o,l,A)=>this._getEntry(n[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===n.length-1&&a.end(),A()}).catch(A);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(n.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,n)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):n(a))})}};klr.default=Dlr});var Tkn=H(Flr=>{"use strict";Object.defineProperty(Flr,"__esModule",{value:!0});var hFo=Out(),mFo=Mut(),CFo=xlr(),Glr=class extends mFo.default{constructor(){super(...arguments),this._walkAsync=hFo.walk,this._readerStream=new CFo.default(this._settings)}dynamic(t,r){return new Promise((n,a)=>{this._walkAsync(t,r,(o,l)=>{o===null?n(l):a(o)})})}async static(t,r){let n=[],a=this._readerStream.static(t,r);return new Promise((o,l)=>{a.once("error",l),a.on("data",A=>n.push(A)),a.once("end",()=>o(n))})}};Flr.default=Glr});var Rkn=H(Llr=>{"use strict";Object.defineProperty(Llr,"__esModule",{value:!0});var U3e=r$(),Zlr=class{constructor(t,r,n){this._patterns=t,this._settings=r,this._micromatchOptions=n,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),n=this._splitSegmentsIntoSections(r);this._storage.push({complete:n.length<=1,pattern:t,segments:r,sections:n})}}_getPatternSegments(t){return U3e.pattern.getPatternParts(t,this._micromatchOptions).map(n=>U3e.pattern.isDynamicPattern(n,this._settings)?{dynamic:!0,pattern:n,patternRe:U3e.pattern.makeRe(n,this._micromatchOptions)}:{dynamic:!1,pattern:n})}_splitSegmentsIntoSections(t){return U3e.array.splitWhen(t,r=>r.dynamic&&U3e.pattern.hasGlobStar(r.pattern))}};Llr.default=Zlr});var Nkn=H(Plr=>{"use strict";Object.defineProperty(Plr,"__esModule",{value:!0});var _Fo=Rkn(),Vlr=class extends _Fo.default{match(t){let r=t.split("/"),n=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>n);for(let o of a){let l=o.sections[0];if(!o.complete&&n>l.length||r.every((f,I)=>{let C=o.segments[I];return!!(C.dynamic&&C.patternRe.test(f)||!C.dynamic&&C.pattern===f)}))return!0}return!1}};Plr.default=Vlr});var Dkn=H(Olr=>{"use strict";Object.defineProperty(Olr,"__esModule",{value:!0});var Hut=r$(),yFo=Nkn(),Wlr=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,n){let a=this._getMatcher(r),o=this._getNegativePatternsRe(n);return l=>this._filter(t,l,a,o)}_getMatcher(t){return new yFo.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(Hut.pattern.isAffectDepthOfReadingPattern);return Hut.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,n,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=Hut.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,n)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let n=r.split("/").length;if(t==="")return n;let a=t.split("/").length;return n-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!Hut.pattern.matchAny(t,r)}};Olr.default=Wlr});var kkn=H(Hlr=>{"use strict";Object.defineProperty(Hlr,"__esModule",{value:!0});var Ufe=r$(),Mlr=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let n=Ufe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=Ufe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,n,a)}_filter(t,r,n){let a=Ufe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,n))return!1;let o=t.dirent.isDirectory(),l=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,n,o);return this._settings.unique&&l&&this._createIndexRecord(a),l}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let n=Ufe.path.makeAbsolute(this._settings.cwd,t);return Ufe.pattern.matchAny(n,r)}_isMatchToPatterns(t,r,n){let a=Ufe.pattern.matchAny(t,r);return!a&&n?Ufe.pattern.matchAny(t+"/",r):a}};Hlr.default=Mlr});var xkn=H(Qlr=>{"use strict";Object.defineProperty(Qlr,"__esModule",{value:!0});var bFo=r$(),Ylr=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return bFo.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};Qlr.default=Ylr});var Fkn=H(Jlr=>{"use strict";Object.defineProperty(Jlr,"__esModule",{value:!0});var Gkn=r$(),Xlr=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=Gkn.path.makeAbsolute(this._settings.cwd,r),r=Gkn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};Jlr.default=Xlr});var Yut=H(Klr=>{"use strict";Object.defineProperty(Klr,"__esModule",{value:!0});var EFo=wt("path"),SFo=Dkn(),vFo=kkn(),BFo=xkn(),wFo=Fkn(),Ulr=class{constructor(t){this._settings=t,this.errorFilter=new BFo.default(this._settings),this.entryFilter=new vFo.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new SFo.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new wFo.default(this._settings)}_getRootDirectory(t){return EFo.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};Klr.default=Ulr});var Zkn=H(zlr=>{"use strict";Object.defineProperty(zlr,"__esModule",{value:!0});var TFo=Tkn(),RFo=Yut(),jlr=class extends RFo.default{constructor(){super(...arguments),this._reader=new TFo.default(this._settings)}async read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return(await this.api(r,t,n)).map(o=>n.transform(o))}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};zlr.default=jlr});var Lkn=H($lr=>{"use strict";Object.defineProperty($lr,"__esModule",{value:!0});var NFo=wt("stream"),DFo=xlr(),kFo=Yut(),qlr=class extends kFo.default{constructor(){super(...arguments),this._reader=new DFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t),a=this.api(r,t,n),o=new NFo.Readable({objectMode:!0,read:()=>{}});return a.once("error",l=>o.emit("error",l)).on("data",l=>o.emit("data",n.transform(l))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};$lr.default=qlr});var Vkn=H(tur=>{"use strict";Object.defineProperty(tur,"__esModule",{value:!0});var xFo=Jfe(),GFo=Out(),FFo=Mut(),eur=class extends FFo.default{constructor(){super(...arguments),this._walkSync=GFo.walkSync,this._statSync=xFo.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let n=[];for(let a of t){let o=this._getFullEntryPath(a),l=this._getEntry(o,a,r);l===null||!r.entryFilter(l)||n.push(l)}return n}_getEntry(t,r,n){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(n.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};tur.default=eur});var Pkn=H(nur=>{"use strict";Object.defineProperty(nur,"__esModule",{value:!0});var ZFo=Vkn(),LFo=Yut(),rur=class extends LFo.default{constructor(){super(...arguments),this._reader=new ZFo.default(this._settings)}read(t){let r=this._getRootDirectory(t),n=this._getReaderOptions(t);return this.api(r,t,n).map(n.transform)}api(t,r,n){return r.dynamic?this._reader.dynamic(t,n):this._reader.static(r.patterns,n)}};nur.default=rur});var Wkn=H(rve=>{"use strict";Object.defineProperty(rve,"__esModule",{value:!0});rve.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var tve=wt("fs"),VFo=wt("os"),PFo=Math.max(VFo.cpus().length,1);rve.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:tve.lstat,lstatSync:tve.lstatSync,stat:tve.stat,statSync:tve.statSync,readdir:tve.readdir,readdirSync:tve.readdirSync};var iur=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,PFo),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},rve.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};rve.default=iur});var nve=H((P8l,Mkn)=>{"use strict";var Okn=MDn(),WFo=Zkn(),OFo=Lkn(),MFo=Pkn(),sur=Wkn(),iM=r$();async function our(e,t){oX(e);let r=aur(e,WFo.default,t),n=await Promise.all(r);return iM.array.flatten(n)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(I,C){oX(I);let b=aur(I,MFo.default,C);return iM.array.flatten(b)}e.sync=t;function r(I,C){oX(I);let b=aur(I,OFo.default,C);return iM.stream.merge(b)}e.stream=r;function n(I,C){oX(I);let b=[].concat(I),E=new sur.default(C);return Okn.generate(b,E)}e.generateTasks=n;function a(I,C){oX(I);let b=new sur.default(C);return iM.pattern.isDynamicPattern(I,b)}e.isDynamicPattern=a;function o(I){return oX(I),iM.path.escape(I)}e.escapePath=o;function l(I){return oX(I),iM.path.convertPathToPattern(I)}e.convertPathToPattern=l;let A;(function(I){function C(E){return oX(E),iM.path.escapePosixPath(E)}I.escapePath=C;function b(E){return oX(E),iM.path.convertPosixPathToPattern(E)}I.convertPathToPattern=b})(A=e.posix||(e.posix={}));let f;(function(I){function C(E){return oX(E),iM.path.escapeWindowsPath(E)}I.escapePath=C;function b(E){return oX(E),iM.path.convertWindowsPathToPattern(E)}I.convertPathToPattern=b})(f=e.win32||(e.win32={}))})(our||(our={}));function aur(e,t,r){let n=[].concat(e),a=new sur.default(r),o=Okn.generate(n,a),l=new t(a);return o.map(l.read,l)}function oX(e){if(![].concat(e).every(n=>iM.string.isString(n)&&!iM.string.isEmpty(n)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}Mkn.exports=our});var moe=H(K3e=>{"use strict";Object.defineProperty(K3e,"__esModule",{value:!0});K3e.makeHash=YFo;K3e.checksumFile=QFo;K3e.checksumPattern=XFo;var HFo=(Pa(),vi(Va)),hoe=ro(),cur=wt("crypto"),Hkn=HFo.__importDefault(nve());function YFo(...e){let t=(0,cur.createHash)("sha512"),r="";for(let n of e)typeof n=="string"?r+=n:n&&(r&&(t.update(r),r=""),t.update(n));return r&&t.update(r),t.digest("hex")}async function QFo(e,{baseFs:t,algorithm:r}={baseFs:hoe.xfs,algorithm:"sha512"}){let n=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=(0,cur.createHash)(r),A=0;for(;(A=await t.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await t.closePromise(n)}}async function XFo(e,{cwd:t}){let n=(await(0,Hkn.default)(e,{cwd:hoe.npath.fromPortablePath(t),onlyDirectories:!0})).map(A=>`${A}/**/*`),a=await(0,Hkn.default)([e,...n],{cwd:hoe.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async A=>{let f=[Buffer.from(A)],I=hoe.ppath.join(t,hoe.npath.toPortablePath(A)),C=await hoe.xfs.lstatPromise(I);return C.isSymbolicLink()?f.push(Buffer.from(await hoe.xfs.readlinkPromise(I))):C.isFile()&&f.push(await hoe.xfs.readFilePromise(I)),f.join("\0")})),l=(0,cur.createHash)("sha512");for(let A of o)l.update(A);return l.digest("hex")}});var uG=H(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.makeIdent=sve;Xd.makeDescriptor=ave;Xd.makeLocator=cve;Xd.convertToIdent=zFo;Xd.convertDescriptorToLocator=qFo;Xd.convertLocatorToDescriptor=$Fo;Xd.convertPackageToLocator=eZo;Xd.renamePackage=Aur;Xd.copyPackage=tZo;Xd.virtualizeDescriptor=rZo;Xd.virtualizePackage=nZo;Xd.isVirtualDescriptor=Xut;Xd.isVirtualLocator=q3e;Xd.devirtualizeDescriptor=Jkn;Xd.devirtualizeLocator=iZo;Xd.ensureDevirtualizedDescriptor=sZo;Xd.ensureDevirtualizedLocator=oZo;Xd.bindDescriptor=aZo;Xd.bindLocator=cZo;Xd.areIdentsEqual=Ukn;Xd.areDescriptorsEqual=Kkn;Xd.areLocatorsEqual=lZo;Xd.areVirtualPackagesEquivalent=uZo;Xd.parseIdent=gZo;Xd.tryParseIdent=jkn;Xd.parseDescriptor=dZo;Xd.tryParseDescriptor=zkn;Xd.parseLocator=qkn;Xd.tryParseLocator=$kn;Xd.parseRange=$3e;Xd.tryParseRange=CZo;Xd.parseFileStyleRange=_Zo;Xd.makeRange=exn;Xd.convertToManifestRange=bZo;Xd.stringifyIdent=Uut;Xd.wrapIdentIntoScope=EZo;Xd.unwrapIdentFromScope=SZo;Xd.stringifyDescriptor=vZo;Xd.stringifyLocator=BZo;Xd.slugifyIdent=uur;Xd.slugifyLocator=TZo;Xd.prettyIdent=Kut;Xd.prettyRange=txn;Xd.prettyDescriptor=NZo;Xd.prettyReference=dur;Xd.prettyLocator=Qut;Xd.prettyLocatorNoColors=DZo;Xd.sortDescriptors=kZo;Xd.prettyWorkspace=xZo;Xd.prettyResolution=GZo;Xd.prettyDependent=FZo;Xd.getIdentVendorPath=ZZo;Xd.isPackageInRange=LZo;Xd.isPackageCompatible=VZo;Xd.allPeerRequests=PZo;var ove=(Pa(),vi(Va)),z3e=ove.__importDefault(wt("querystring")),Qkn=ove.__importDefault(UC()),JFo=pBn(),vZ=ove.__importStar(rM()),gur=ove.__importStar(moe()),UFo=ove.__importStar(xW()),ive=ove.__importStar(uG()),j3e="virtual:",KFo=5,Xkn=/(os|cpu|libc)=([a-z0-9_-]+)/,jFo=(0,JFo.makeParser)(Xkn);function sve(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:gur.makeHash(e,t),scope:e,name:t}}function ave(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:gur.makeHash(e.identHash,t),range:t}}function cve(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:gur.makeHash(e.identHash,t),reference:t}}function zFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function qFo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function $Fo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function eZo(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function Aur(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function tZo(e){return Aur(e,e)}function rZo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return ave(e,`virtual:${t}#${e.range}`)}function nZo(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Aur(e,cve(e,`virtual:${t}#${e.reference}`))}function Xut(e){return e.range.startsWith(j3e)}function q3e(e){return e.reference.startsWith(j3e)}var Jut=/^[^#]*#/;function Jkn(e){if(!Xut(e))throw new Error("Not a virtual descriptor");return ave(e,e.range.replace(Jut,""))}function iZo(e){if(!q3e(e))throw new Error("Not a virtual descriptor");return cve(e,e.reference.replace(Jut,""))}function sZo(e){return Xut(e)?ave(e,e.range.replace(Jut,"")):e}function oZo(e){return q3e(e)?cve(e,e.reference.replace(Jut,"")):e}function aZo(e,t){return e.range.includes("::")?e:ave(e,`${e.range}::${z3e.default.stringify(t)}`)}function cZo(e,t){return e.reference.includes("::")?e:cve(e,`${e.reference}::${z3e.default.stringify(t)}`)}function Ukn(e,t){return e.identHash===t.identHash}function Kkn(e,t){return e.descriptorHash===t.descriptorHash}function lZo(e,t){return e.locatorHash===t.locatorHash}function uZo(e,t){if(!q3e(e))throw new Error("Invalid package type");if(!q3e(t))throw new Error("Invalid package type");if(!Ukn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let n=t.dependencies.get(r.identHash);if(!n||!Kkn(r,n))return!1}return!0}function gZo(e){let t=jkn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var AZo=/^(?:@([^/]+?)\/)?([^@/]+)$/;function jkn(e){let t=e.match(AZo);if(!t)return null;let[,r,n]=t;return sve(typeof r<"u"?r:null,n)}function dZo(e,t=!1){let r=zkn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var pZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,fZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/,lur="unknown";function zkn(e,t=!1){let r=t?e.match(pZo):e.match(fZo);if(!r)return null;let[,n,a,o]=r;if(o===lur)throw new Error(`Invalid range (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:lur;return ave(sve(l,a),A)}function qkn(e,t=!1){let r=$kn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var IZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,hZo=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function $kn(e,t=!1){let r=t?e.match(IZo):e.match(hZo);if(!r)return null;let[,n,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let l=typeof n<"u"?n:null,A=typeof o<"u"?o:"unknown";return cve(sve(l,a),A)}var mZo=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function $3e(e,t){let r=e.match(mZo);if(r===null)throw new Error(`Invalid range (${e})`);let n=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&n!==t.requireProtocol)throw new Error(`Invalid protocol (${n})`);if(t?.requireProtocol&&n===null)throw new Error(`Missing protocol (${n})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),l=t?.parseSelector?z3e.default.parse(o):o,A=typeof r[4]<"u"?z3e.default.parse(r[4]):null;return{protocol:n,source:a,selector:l,params:A}}function CZo(e,t){try{return $3e(e,t)}catch{return null}}function _Zo(e,{protocol:t}){let{selector:r,params:n}=$3e(e,{requireProtocol:t,requireBindings:!0});if(typeof n.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:qkn(n.locator,!0),path:r}}function Ykn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function yZo(e){return e===null?!1:Object.entries(e).length>0}function exn({protocol:e,source:t,selector:r,params:n}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${Ykn(t)}#`),a+=Ykn(r),yZo(n)&&(a+=`::${z3e.default.stringify(n)}`),a}function bZo(e){let{params:t,protocol:r,source:n,selector:a}=$3e(e);for(let o in t)o.startsWith("__")&&delete t[o];return exn({protocol:r,source:n,params:t,selector:a})}function Uut(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function EZo(e,t){return e.scope?ive.makeIdent(t,`${e.scope}__${e.name}`):ive.makeIdent(t,e.name)}function SZo(e,t){if(e.scope!==t)return e;let r=e.name.indexOf("__");if(r===-1)return sve(null,e.name);let n=e.name.slice(0,r),a=e.name.slice(r+2);return sve(n,a)}function vZo(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function BZo(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function uur(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var wZo=/:$/;function TZo(e){let{protocol:t,selector:r}=$3e(e.reference),n=t!==null?t.replace(wZo,""):"exotic",a=Qkn.default.valid(r),o=a!==null?`${n}-${a}`:`${n}`,l=10;return e.scope?`${uur(e)}-${o}-${e.locatorHash.slice(0,l)}`:`${uur(e)}-${o}-${e.locatorHash.slice(0,l)}`}function Kut(e,t){return t.scope?`${vZ.pretty(e,`@${t.scope}/`,vZ.Type.SCOPE)}${vZ.pretty(e,t.name,vZ.Type.NAME)}`:`${vZ.pretty(e,t.name,vZ.Type.NAME)}`}var RZo=/\?.*/;function jut(e){if(e.startsWith(j3e)){let t=jut(e.substring(e.indexOf("#")+1)),r=e.substring(j3e.length,j3e.length+KFo);return`${t} [${r}]`}else return e.replace(RZo,"?[...]")}function txn(e,t){return`${vZ.pretty(e,jut(t),vZ.Type.RANGE)}`}function NZo(e,t){return`${Kut(e,t)}${vZ.pretty(e,"@",vZ.Type.RANGE)}${txn(e,t.range)}`}function dur(e,t){return`${vZ.pretty(e,jut(t),vZ.Type.REFERENCE)}`}function Qut(e,t){return`${Kut(e,t)}${vZ.pretty(e,"@",vZ.Type.REFERENCE)}${dur(e,t.reference)}`}function DZo(e){return`${Uut(e)}@${jut(e.reference)}`}function kZo(e){return UFo.sortMap(e,[t=>Uut(t),t=>t.range])}function xZo(e,t){return Kut(e,t.anchoredLocator)}function GZo(e,t,r){let n=Xut(t)?Jkn(t):t;return r===null?`${ive.prettyDescriptor(e,n)} \u2192 ${vZ.mark(e).Cross}`:n.identHash===r.identHash?`${ive.prettyDescriptor(e,n)} \u2192 ${dur(e,r.reference)}`:`${ive.prettyDescriptor(e,n)} \u2192 ${Qut(e,r)}`}function FZo(e,t,r){return r===null?`${Qut(e,t)}`:`${Qut(e,t)} (via ${ive.prettyRange(e,r.range)})`}function ZZo(e){return`node_modules/${Uut(e)}`}function LZo(e,t){return t===lur||!e.version?!0:Qkn.default.satisfies(e.version??"",t)}function VZo(e,t){return e.conditions?jFo(e.conditions,r=>{let[,n,a]=r.match(Xkn),o=t[n];return o?o.includes(a):!0}):!0}function PZo(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let n of r.children.values())t.add(n);return t}});var rxn=H(zut=>{"use strict";Object.defineProperty(zut,"__esModule",{value:!0});zut.CorePlugin=void 0;var WZo=(Pa(),vi(Va)),OZo=M9(),Coe=WZo.__importStar(uG());zut.CorePlugin={hooks:{reduceDependency:(e,t,r,n,{resolver:a,resolveOptions:o})=>{for(let{pattern:l,reference:A}of t.topLevelWorkspace.manifest.resolutions){if(l.from&&(l.from.fullName!==Coe.stringifyIdent(r)||t.configuration.normalizeLocator(Coe.makeLocator(Coe.parseIdent(l.from.fullName),l.from.description??r.reference)).locatorHash!==r.locatorHash)||l.descriptor.fullName!==Coe.stringifyIdent(e)||t.configuration.normalizeDependency(Coe.makeDescriptor(Coe.parseLocator(l.descriptor.fullName),l.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(Coe.makeDescriptor(e,A)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let n=Coe.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${n}: ${o}`),reportError:(a,o)=>t.reportError(a,`${n}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let n of r.errors)t.reportWarning(OZo.MessageName.INVALID_MANIFEST,n.message)}}}});var Kfe=H($ut=>{"use strict";Object.defineProperty($ut,"__esModule",{value:!0});$ut.WorkspaceResolver=void 0;var MZo=Qfe(),qut=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[n.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:n.manifest.version||"0.0.0",languageName:"unknown",linkType:MZo.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...n.manifest.dependencies,...n.manifest.devDependencies])),peerDependencies:new Map([...n.manifest.peerDependencies]),dependenciesMeta:n.manifest.dependenciesMeta,peerDependenciesMeta:n.manifest.peerDependenciesMeta,bin:n.manifest.bin}}};$ut.WorkspaceResolver=qut;qut.protocol="workspace:"});var n$=H(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.SemVer=void 0;aX.satisfiesWithPrereleases=QZo;aX.validRange=sxn;aX.clean=JZo;aX.getComparator=oxn;aX.mergeComparators=pur;aX.stringifyComparator=axn;aX.simplifyRanges=UZo;var HZo=(Pa(),vi(Va)),_oe=HZo.__importDefault(UC()),YZo=UC();Object.defineProperty(aX,"SemVer",{enumerable:!0,get:function(){return YZo.SemVer}});var nxn=new Map;function QZo(e,t,r=!1){if(!e)return!1;let n=`${t}${r}`,a=nxn.get(n);if(typeof a>"u")try{a=new _oe.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{nxn.set(n,a||null)}else if(a===null)return!1;let o;try{o=new _oe.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(l=>{for(let A of l)A.semver.prerelease&&(A.semver.prerelease=[]);return l.every(A=>A.test(o))}))}var ixn=new Map;function sxn(e){if(e.indexOf(":")!==-1)return null;let t=ixn.get(e);if(typeof t<"u")return t;try{t=new _oe.default.Range(e)}catch{t=null}return ixn.set(e,t),t}var XZo=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function JZo(e){let t=XZo.exec(e);return t?t[1]:null}function oxn(e){if(e.semver===_oe.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function pur(e){if(e.length===0)return null;let t=null,r=null;for(let n of e){if(n.gt){let a=t!==null?_oe.default.compare(n.gt[1],t[1]):null;(a===null||a>0||a===0&&n.gt[0]===">")&&(t=n.gt)}if(n.lt){let a=r!==null?_oe.default.compare(n.lt[1],r[1]):null;(a===null||a<0||a===0&&n.lt[0]==="<")&&(r=n.lt)}}if(t&&r){let n=_oe.default.compare(t[1],r[1]);if(n===0&&(t[0]===">"||r[0]==="<")||n>0)return null}return{gt:t,lt:r}}function axn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function UZo(e){let t=e.map(KZo).map(n=>sxn(n).set.map(a=>a.map(o=>oxn(o)))),r=t.shift().map(n=>pur(n)).filter(n=>n!==null);for(let n of t){let a=[];for(let o of r)for(let l of n){let A=pur([o,...l]);A!==null&&a.push(A)}r=a}return r.length===0?null:r.map(n=>axn(n)).join(" || ")}function KZo(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let n of t)t.some(a=>a!==n&&_oe.default.subset(n,a))||r.add(n);if(r.size{"use strict";Object.defineProperty(igt,"__esModule",{value:!0});igt.Manifest=void 0;var ngt=(Pa(),vi(Va)),egt=ro(),cxn=TW(),jZo=ngt.__importDefault(UC()),zZo=Kfe(),rgt=ngt.__importStar(xW()),qZo=ngt.__importStar(n$()),O0=ngt.__importStar(uG()),lve=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new egt.NodeFS}={}){let n=egt.ppath.join(t,"package.json");try{return await e.fromFile(n,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let n=await e.tryFind(t,{baseFs:r});if(n===null)throw new Error("Manifest not found");return n}static async fromFile(t,{baseFs:r=new egt.NodeFS}={}){let n=new e;return await n.loadFile(t,{baseFs:r}),n}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(uxn(t)||"{}")}catch(n){throw n.message+=` (when parsing ${t})`,n}this.load(r),this.indent=lxn(t)}async loadFile(t,{baseFs:r=new egt.NodeFS}){let n=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(uxn(n)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=lxn(n)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let n=[];if(this.name=null,typeof t.name=="string")try{this.name=O0.parseIdent(t.name)}catch{n.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let l of t.os)typeof l!="string"?n.push(new Error("Parsing failed for the 'os' field")):o.push(l)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let l of t.cpu)typeof l!="string"?n.push(new Error("Parsing failed for the 'cpu' field")):o.push(l)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let l of t.libc)typeof l!="string"?n.push(new Error("Parsing failed for the 'libc' field")):o.push(l)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=BZ(t.main):this.main=null,typeof t.module=="string"?this.module=BZ(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=BZ(t.browser);else{this.browser=new Map;for(let[o,l]of Object.entries(t.browser))this.browser.set(BZ(o),typeof l=="string"?BZ(l):l)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?n.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,BZ(t.bin)):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,l]of Object.entries(t.bin)){if(typeof l!="string"||l.trim()===""){n.push(new Error(`Invalid bin definition for '${o}'`));continue}let A=O0.parseIdent(o);this.bin.set(A.name,BZ(l))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,l]of Object.entries(t.scripts)){if(typeof l!="string"){n.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,l)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,l]of Object.entries(t.dependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,l]of Object.entries(t.devDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,l]of Object.entries(t.peerDependencies)){let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof l!="string"||!l.startsWith(zZo.WorkspaceResolver.protocol)&&!qZo.validRange(l))&&(n.push(new Error(`Invalid dependency range for '${o}'`)),l="*");let f=O0.makeDescriptor(A,l);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&n.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){n.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,l]of Object.entries(t.dependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}`));continue}let A=O0.parseDescriptor(o),f=this.ensureDependencyMeta(A),I=tgt(l.built,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid built meta field for '${o}'`));continue}let C=tgt(l.optional,{yamlCompatibilityMode:r});if(C===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}let b=tgt(l.unplugged,{yamlCompatibilityMode:r});if(b===null){n.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:I,optional:C,unplugged:b})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,l]of Object.entries(t.peerDependenciesMeta)){if(typeof l!="object"||l===null){n.push(new Error(`Invalid meta field for '${o}'`));continue}let A=O0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(A),I=tgt(l.optional,{yamlCompatibilityMode:r});if(I===null){n.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:I})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,l]of Object.entries(t.resolutions)){if(typeof l!="string"){n.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,cxn.parseResolution)(o),reference:l})}catch(A){n.push(A);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){n.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=BZ(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=BZ(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=BZ(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,l]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(BZ(o),typeof l=="string"?BZ(l):l)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.provenance=="boolean"&&(this.publishConfig.provenance=t.publishConfig.provenance),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,BZ(t.publishConfig.bin)]]):n.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,l]of Object.entries(t.publishConfig.bin)){if(typeof l!="string"){n.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,BZ(l))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){n.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(BZ(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:n.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:n.push(new Error("Invalid selfReferences definition, must be a boolean value")):n.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,l]of Object.entries(t.optionalDependencies)){if(typeof l!="string"){n.push(new Error(`Invalid dependency range for '${o}'`));continue}let A;try{A=O0.parseIdent(o)}catch{n.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=O0.makeDescriptor(A,l);this.dependencies.set(f.identHash,f);let I=O0.makeDescriptor(A,"unknown"),C=this.ensureDependencyMeta(I);Object.assign(C,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=n}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(fur("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(fur("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(fur("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!jZo.default.valid(t.range))throw new Error(`Invalid meta field range for '${O0.stringifyDescriptor(t)}'`);let r=O0.stringifyIdent(t),n=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(n);return o||a.set(n,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${O0.stringifyDescriptor(t)}'`);let r=O0.stringifyIdent(t),n=this.peerDependenciesMeta.get(r);return n||this.peerDependenciesMeta.set(r,n={}),n}setRawField(t,r,{after:n=[]}={}){let a=new Set(n.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,l=this.raw={},A=!1;for(let f of Object.keys(o))l[f]=o[f],A||(a.delete(f),a.size===0&&(l[t]=r,A=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=O0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(l=>({[l]:o.get(l)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let n=[],a=[];for(let o of this.dependencies.values()){let l=this.dependenciesMeta.get(O0.stringifyIdent(o)),A=!1;if(r&&l){let f=l.get(null);f&&f.optional&&(A=!0)}A?a.push(o):n.push(o)}n.length>0?t.dependencies=Object.assign({},...O0.sortDescriptors(n).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...O0.sortDescriptors(a).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...O0.sortDescriptors(this.devDependencies.values()).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...O0.sortDescriptors(this.peerDependencies.values()).map(o=>({[O0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,l]of rgt.sortMap(this.dependenciesMeta.entries(),([A,f])=>A))for(let[A,f]of rgt.sortMap(l.entries(),([I,C])=>I!==null?`0${I}`:"1")){let I=A!==null?O0.stringifyDescriptor(O0.makeDescriptor(O0.parseIdent(o),A)):o,C={...f};r&&A===null&&delete C.optional,Object.keys(C).length!==0&&(t.dependenciesMeta[I]=C)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...rgt.sortMap(this.peerDependenciesMeta.entries(),([o,l])=>o).map(([o,l])=>({[o]:l}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:l})=>({[(0,cxn.stringifyResolution)(o)]:l}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,l]of this.scripts.entries())t.scripts[o]=l}else delete t.scripts;return t}};igt.Manifest=lve;lve.fileName="package.json";lve.allDependencies=["dependencies","devDependencies","peerDependencies"];lve.hardDependencies=["dependencies","devDependencies"];function lxn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function uxn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function BZ(e){return e.replace(/\\/g,"/")}function tgt(e,{yamlCompatibilityMode:t}){return t?rgt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function gxn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let n=r%2===0?"":"!",a=t.slice(r);return`${n}${e}=${a}`}function fur(e,t){return t.length===1?gxn(e,t[0]):`(${t.map(r=>gxn(e,r)).join(" | ")})`}});var sM=H(jfe=>{"use strict";Object.defineProperty(jfe,"__esModule",{value:!0});jfe.Report=jfe.ReportError=void 0;jfe.isReportError=Axn;var $Zo=kW(),eLo=wt("stream"),tLo=wt("string_decoder"),rLo=M9(),nLo=15,Iur=class extends Error{constructor(t,r,n){super(r),this.reportExtra=n,this.reportCode=t}};jfe.ReportError=Iur;function Axn(e){return typeof e.reportCode<"u"}var hur=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,n,a=new Promise(f=>{n=f}),o=f=>{let I=n;a=new Promise(C=>{n=C}),r=f,I()},l=(f=0)=>{o(r+1)},A=async function*(){for(;r{r=l}),a=(0,$Zo.throttle)(l=>{let A=r;n=new Promise(f=>{r=f}),t=l,A()},1e3/nLo),o=async function*(){for(;;)await n,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let n=this.reportProgress(t);try{return await r(t)}finally{n.stop()}}startProgressSync(t,r){let n=this.reportProgress(t);try{return r(t)}finally{n.stop()}}reportInfoOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),n?.reportExtra?.(this))}reportWarningOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),n?.reportExtra?.(this))}reportErrorOnce(t,r,n){let a=n&&n.key?n.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),n?.reportExtra?.(this))}reportExceptionOnce(t){Axn(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(rLo.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new eLo.PassThrough,n=new tLo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` -`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};jfe.Report=hur});var Cur=H(sgt=>{"use strict";Object.defineProperty(sgt,"__esModule",{value:!0});sgt.MultiFetcher=void 0;var iLo=(Pa(),vi(Va)),sLo=M9(),oLo=sM(),aLo=iLo.__importStar(uG()),mur=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));return n||null}getFetcher(t,r){let n=this.fetchers.find(a=>a.supports(t,r));if(!n)throw new oLo.ReportError(sLo.MessageName.FETCHER_NOT_FOUND,`${aLo.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return n}};sgt.MultiFetcher=mur});var yur=H(ogt=>{"use strict";Object.defineProperty(ogt,"__esModule",{value:!0});ogt.MultiResolver=void 0;var cLo=(Pa(),vi(Va)),dxn=cLo.__importStar(uG()),_ur=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${dxn.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${dxn.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};ogt.MultiResolver=_ur});var vur=H(agt=>{"use strict";Object.defineProperty(agt,"__esModule",{value:!0});agt.VirtualFetcher=void 0;var lLo=(Pa(),vi(Va)),bur=ro(),Eur=lLo.__importStar(uG()),Sur=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=Eur.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let n=t.reference.indexOf("#");if(n===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(n+1),o=Eur.makeLocator(t,a),l=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,l,r)}getLocatorFilename(t){return Eur.slugifyLocator(t)}async ensureVirtualLink(t,r,n){let a=r.packageFs.getRealPath(),o=n.project.configuration.get("virtualFolder"),l=this.getLocatorFilename(t),A=bur.VirtualFS.makeVirtualPath(o,l,a),f=new bur.AliasFS(A,{baseFs:r.packageFs,pathUtils:bur.ppath});return{...r,packageFs:f}}};agt.VirtualFetcher=Sur});var pxn=H(lgt=>{"use strict";Object.defineProperty(lgt,"__esModule",{value:!0});lgt.VirtualResolver=void 0;var cgt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};lgt.VirtualResolver=cgt;cgt.protocol="virtual:"});var wur=H(ugt=>{"use strict";Object.defineProperty(ugt,"__esModule",{value:!0});ugt.WorkspaceFetcher=void 0;var fxn=ro(),Ixn=Kfe(),Bur=class{supports(t){return!!t.reference.startsWith(Ixn.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let n=this.getWorkspace(t,r).cwd;return{packageFs:new fxn.CwdFS(n),prefixPath:fxn.PortablePath.dot,localPath:n}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(Ixn.WorkspaceResolver.protocol.length))}};ugt.WorkspaceFetcher=Bur});var Cxn=H(JK=>{"use strict";Object.defineProperty(JK,"__esModule",{value:!0});JK.RESOLVED_RC_FILE=void 0;JK.resolveRcFiles=dLo;JK.getValue=pLo;JK.getValueByTree=Nur;JK.getSource=fLo;var uLo=(e,t,r)=>{let n=[...e];return n.reverse(),n.findIndex(t,r)};function e5e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var oM;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(oM||(oM={}));function hxn(e){return typeof e>"u"?oM.Undefined:e5e(e)?oM.Object:Array.isArray(e)?oM.Array:oM.Literal}function Dur(e,t){return Object.hasOwn(e,t)}function gLo(e){return e5e(e)&&Dur(e,"onConflict")&&typeof e.onConflict=="string"}function ALo(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!gLo(e))return{onConflict:"default",value:e};if(Dur(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function mxn(e,t){let r=e5e(e)&&Dur(e,t)?e[t]:void 0;return ALo(r)}JK.RESOLVED_RC_FILE=Symbol();function gve(e,t){return[e,t,JK.RESOLVED_RC_FILE]}function kur(e){return Array.isArray(e)?e[2]===JK.RESOLVED_RC_FILE:!1}function Tur(e,t){if(e5e(e)){let r={};for(let n of Object.keys(e))r[n]=Tur(e[n],t);return gve(t,r)}return Array.isArray(e)?gve(t,e.map(r=>Tur(r,t))):gve(t,e)}function Rur(e,t,r,n,a){let o,l=[],A=a,f=0;for(let C=a-1;C>=n;--C){let[b,E]=e[C],{onConflict:N,value:B}=mxn(E,r),F=hxn(B);if(F!==oM.Undefined){if(o??=F,F!==o||N==="hardReset"){f=A;break}if(F===oM.Literal)return gve(b,B);if(l.unshift([b,B]),N==="reset"){f=C;break}N==="extend"&&C===n&&(n=0),A=C}}if(typeof o>"u")return null;let I=l.map(([C])=>C).join(", ");switch(o){case oM.Array:return gve(I,new Array().concat(...l.map(([C,b])=>b.map(E=>Tur(E,C)))));case oM.Object:{let C=Object.assign({},...l.map(([,F])=>F)),b=Object.keys(C),E={},N=e.map(([F,Q])=>[F,mxn(Q,r).value]),B=uLo(N,([F,Q])=>{let X=hxn(Q);return X!==oM.Object&&X!==oM.Undefined});if(B!==-1){let F=N.slice(B+1);for(let Q of b)E[Q]=Rur(F,t,Q,0,F.length)}else for(let F of b)E[F]=Rur(N,t,F,f,N.length);return gve(I,E)}default:throw new Error("Assertion failed: Non-extendable value type")}}function dLo(e){return Rur(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function pLo(e){return kur(e)?e[1]:e}function Nur(e){let t=kur(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>Nur(r));if(e5e(t)){let r={};for(let[n,a]of Object.entries(t))r[n]=Nur(a);return r}return t}function fLo(e){return kur(e)?e[0]:null}});var ggt=H(t5e=>{"use strict";Object.defineProperty(t5e,"__esModule",{value:!0});t5e.getDefaultGlobalFolder=ILo;t5e.getHomeFolder=yxn;t5e.isFolderInside=hLo;var i$=ro(),_xn=wt("os");function ILo(){if(process.platform==="win32"){let e=i$.npath.toPortablePath(process.env.LOCALAPPDATA||i$.npath.join((0,_xn.homedir)(),"AppData","Local"));return i$.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=i$.npath.toPortablePath(process.env.XDG_DATA_HOME);return i$.ppath.resolve(e,"yarn/berry")}return i$.ppath.resolve(yxn(),".yarn/berry")}function yxn(){return i$.npath.toPortablePath((0,_xn.homedir)()||"/usr/local/share")}function hLo(e,t){let r=i$.ppath.relative(t,e);return r&&!r.startsWith("..")&&!i$.ppath.isAbsolute(r)}});var Sxn=H((ejl,Exn)=>{"use strict";var xur=wt("https"),Gur=wt("http"),{URL:bxn}=wt("url"),Fur=class extends Gur.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new bxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?Gur:xur).request(n);a.once("connect",(o,l,A)=>{a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200?r(null,l):(l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null))}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}},Zur=class extends xur.Agent{constructor(t){let{proxy:r,proxyRequestOptions:n,...a}=t;super(a),this.proxy=typeof r=="string"?new bxn(r):r,this.proxyRequestOptions=n||{}}createConnection(t,r){let n={...this.proxyRequestOptions,method:"CONNECT",host:this.proxy.hostname,port:this.proxy.port,path:`${t.host}:${t.port}`,setHost:!1,headers:{...this.proxyRequestOptions.headers,connection:this.keepAlive?"keep-alive":"close",host:`${t.host}:${t.port}`},agent:!1,timeout:t.timeout||0};if(this.proxy.username||this.proxy.password){let o=Buffer.from(`${decodeURIComponent(this.proxy.username||"")}:${decodeURIComponent(this.proxy.password||"")}`).toString("base64");n.headers["proxy-authorization"]=`Basic ${o}`}this.proxy.protocol==="https:"&&(n.servername=this.proxy.hostname);let a=(this.proxy.protocol==="http:"?Gur:xur).request(n);a.once("connect",(o,l,A)=>{if(a.removeAllListeners(),l.removeAllListeners(),o.statusCode===200){let f=super.createConnection({...t,socket:l});r(null,f)}else l.destroy(),r(new Error(`Bad response: ${o.statusCode}`),null)}),a.once("timeout",()=>{a.destroy(new Error("Proxy timeout"))}),a.once("error",o=>{a.removeAllListeners(),r(o,null)}),a.end()}};Exn.exports={HttpProxyAgent:Fur,HttpsProxyAgent:Zur}});var o$=H((s$,Agt)=>{"use strict";Object.defineProperty(s$,"__esModule",{value:!0});var vxn=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function mLo(e){return vxn.includes(e)}var CLo=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...vxn];function _Lo(e){return CLo.includes(e)}var yLo=["null","undefined","string","number","bigint","boolean","symbol"];function bLo(e){return yLo.includes(e)}function Ave(e){return t=>typeof t===e}var{toString:Bxn}=Object.prototype,r5e=e=>{let t=Bxn.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&Xi.domElement(e))return"HTMLElement";if(_Lo(t))return t},Xb=e=>t=>r5e(t)===e;function Xi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(Xi.observable(e))return"Observable";if(Xi.array(e))return"Array";if(Xi.buffer(e))return"Buffer";let t=r5e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}Xi.undefined=Ave("undefined");Xi.string=Ave("string");var ELo=Ave("number");Xi.number=e=>ELo(e)&&!Xi.nan(e);Xi.bigint=Ave("bigint");Xi.function_=Ave("function");Xi.null_=e=>e===null;Xi.class_=e=>Xi.function_(e)&&e.toString().startsWith("class ");Xi.boolean=e=>e===!0||e===!1;Xi.symbol=Ave("symbol");Xi.numericString=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));Xi.array=(e,t)=>Array.isArray(e)?Xi.function_(t)?e.every(t):!0:!1;Xi.buffer=e=>{var t,r,n,a;return(a=(n=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||n===void 0?void 0:n.call(r,e))!==null&&a!==void 0?a:!1};Xi.blob=e=>Xb("Blob")(e);Xi.nullOrUndefined=e=>Xi.null_(e)||Xi.undefined(e);Xi.object=e=>!Xi.null_(e)&&(typeof e=="object"||Xi.function_(e));Xi.iterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};Xi.asyncIterable=e=>{var t;return Xi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};Xi.generator=e=>{var t,r;return Xi.iterable(e)&&Xi.function_((t=e)===null||t===void 0?void 0:t.next)&&Xi.function_((r=e)===null||r===void 0?void 0:r.throw)};Xi.asyncGenerator=e=>Xi.asyncIterable(e)&&Xi.function_(e.next)&&Xi.function_(e.throw);Xi.nativePromise=e=>Xb("Promise")(e);var SLo=e=>{var t,r;return Xi.function_((t=e)===null||t===void 0?void 0:t.then)&&Xi.function_((r=e)===null||r===void 0?void 0:r.catch)};Xi.promise=e=>Xi.nativePromise(e)||SLo(e);Xi.generatorFunction=Xb("GeneratorFunction");Xi.asyncGeneratorFunction=e=>r5e(e)==="AsyncGeneratorFunction";Xi.asyncFunction=e=>r5e(e)==="AsyncFunction";Xi.boundFunction=e=>Xi.function_(e)&&!e.hasOwnProperty("prototype");Xi.regExp=Xb("RegExp");Xi.date=Xb("Date");Xi.error=Xb("Error");Xi.map=e=>Xb("Map")(e);Xi.set=e=>Xb("Set")(e);Xi.weakMap=e=>Xb("WeakMap")(e);Xi.weakSet=e=>Xb("WeakSet")(e);Xi.int8Array=Xb("Int8Array");Xi.uint8Array=Xb("Uint8Array");Xi.uint8ClampedArray=Xb("Uint8ClampedArray");Xi.int16Array=Xb("Int16Array");Xi.uint16Array=Xb("Uint16Array");Xi.int32Array=Xb("Int32Array");Xi.uint32Array=Xb("Uint32Array");Xi.float32Array=Xb("Float32Array");Xi.float64Array=Xb("Float64Array");Xi.bigInt64Array=Xb("BigInt64Array");Xi.bigUint64Array=Xb("BigUint64Array");Xi.arrayBuffer=Xb("ArrayBuffer");Xi.sharedArrayBuffer=Xb("SharedArrayBuffer");Xi.dataView=Xb("DataView");Xi.enumCase=(e,t)=>Object.values(t).includes(e);Xi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;Xi.urlInstance=e=>Xb("URL")(e);Xi.urlString=e=>{if(!Xi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};Xi.truthy=e=>!!e;Xi.falsy=e=>!e;Xi.nan=e=>Number.isNaN(e);Xi.primitive=e=>Xi.null_(e)||bLo(typeof e);Xi.integer=e=>Number.isInteger(e);Xi.safeInteger=e=>Number.isSafeInteger(e);Xi.plainObject=e=>{if(Bxn.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};Xi.typedArray=e=>mLo(r5e(e));var vLo=e=>Xi.safeInteger(e)&&e>=0;Xi.arrayLike=e=>!Xi.nullOrUndefined(e)&&!Xi.function_(e)&&vLo(e.length);Xi.inRange=(e,t)=>{if(Xi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(Xi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var BLo=1,wLo=["innerHTML","ownerDocument","style","attributes","nodeValue"];Xi.domElement=e=>Xi.object(e)&&e.nodeType===BLo&&Xi.string(e.nodeName)&&!Xi.plainObject(e)&&wLo.every(t=>t in e);Xi.observable=e=>{var t,r,n,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(n=e)["@@observable"])===null||a===void 0?void 0:a.call(n)):!1};Xi.nodeStream=e=>Xi.object(e)&&Xi.function_(e.pipe)&&!Xi.observable(e);Xi.infinite=e=>e===1/0||e===-1/0;var wxn=e=>t=>Xi.integer(t)&&Math.abs(t%2)===e;Xi.evenInteger=wxn(0);Xi.oddInteger=wxn(1);Xi.emptyArray=e=>Xi.array(e)&&e.length===0;Xi.nonEmptyArray=e=>Xi.array(e)&&e.length>0;Xi.emptyString=e=>Xi.string(e)&&e.length===0;var TLo=e=>Xi.string(e)&&!/\S/.test(e);Xi.emptyStringOrWhitespace=e=>Xi.emptyString(e)||TLo(e);Xi.nonEmptyString=e=>Xi.string(e)&&e.length>0;Xi.nonEmptyStringAndNotWhitespace=e=>Xi.string(e)&&!Xi.emptyStringOrWhitespace(e);Xi.emptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length===0;Xi.nonEmptyObject=e=>Xi.object(e)&&!Xi.map(e)&&!Xi.set(e)&&Object.keys(e).length>0;Xi.emptySet=e=>Xi.set(e)&&e.size===0;Xi.nonEmptySet=e=>Xi.set(e)&&e.size>0;Xi.emptyMap=e=>Xi.map(e)&&e.size===0;Xi.nonEmptyMap=e=>Xi.map(e)&&e.size>0;Xi.propertyKey=e=>Xi.any([Xi.string,Xi.number,Xi.symbol],e);Xi.formData=e=>Xb("FormData")(e);Xi.urlSearchParams=e=>Xb("URLSearchParams")(e);var Txn=(e,t,r)=>{if(!Xi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};Xi.any=(e,...t)=>(Xi.array(e)?e:[e]).some(n=>Txn(Array.prototype.some,n,t));Xi.all=(e,...t)=>Txn(Array.prototype.every,e,t);var Mu=(e,t,r,n={})=>{if(!e){let{multipleValues:a}=n,o=a?`received values of types ${[...new Set(r.map(l=>`\`${Xi(l)}\``))].join(", ")}`:`received value of type \`${Xi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};s$.assert={undefined:e=>Mu(Xi.undefined(e),"undefined",e),string:e=>Mu(Xi.string(e),"string",e),number:e=>Mu(Xi.number(e),"number",e),bigint:e=>Mu(Xi.bigint(e),"bigint",e),function_:e=>Mu(Xi.function_(e),"Function",e),null_:e=>Mu(Xi.null_(e),"null",e),class_:e=>Mu(Xi.class_(e),"Class",e),boolean:e=>Mu(Xi.boolean(e),"boolean",e),symbol:e=>Mu(Xi.symbol(e),"symbol",e),numericString:e=>Mu(Xi.numericString(e),"string with a number",e),array:(e,t)=>{Mu(Xi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>Mu(Xi.buffer(e),"Buffer",e),blob:e=>Mu(Xi.blob(e),"Blob",e),nullOrUndefined:e=>Mu(Xi.nullOrUndefined(e),"null or undefined",e),object:e=>Mu(Xi.object(e),"Object",e),iterable:e=>Mu(Xi.iterable(e),"Iterable",e),asyncIterable:e=>Mu(Xi.asyncIterable(e),"AsyncIterable",e),generator:e=>Mu(Xi.generator(e),"Generator",e),asyncGenerator:e=>Mu(Xi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>Mu(Xi.nativePromise(e),"native Promise",e),promise:e=>Mu(Xi.promise(e),"Promise",e),generatorFunction:e=>Mu(Xi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>Mu(Xi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>Mu(Xi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>Mu(Xi.boundFunction(e),"Function",e),regExp:e=>Mu(Xi.regExp(e),"RegExp",e),date:e=>Mu(Xi.date(e),"Date",e),error:e=>Mu(Xi.error(e),"Error",e),map:e=>Mu(Xi.map(e),"Map",e),set:e=>Mu(Xi.set(e),"Set",e),weakMap:e=>Mu(Xi.weakMap(e),"WeakMap",e),weakSet:e=>Mu(Xi.weakSet(e),"WeakSet",e),int8Array:e=>Mu(Xi.int8Array(e),"Int8Array",e),uint8Array:e=>Mu(Xi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>Mu(Xi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>Mu(Xi.int16Array(e),"Int16Array",e),uint16Array:e=>Mu(Xi.uint16Array(e),"Uint16Array",e),int32Array:e=>Mu(Xi.int32Array(e),"Int32Array",e),uint32Array:e=>Mu(Xi.uint32Array(e),"Uint32Array",e),float32Array:e=>Mu(Xi.float32Array(e),"Float32Array",e),float64Array:e=>Mu(Xi.float64Array(e),"Float64Array",e),bigInt64Array:e=>Mu(Xi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>Mu(Xi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>Mu(Xi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>Mu(Xi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>Mu(Xi.dataView(e),"DataView",e),enumCase:(e,t)=>Mu(Xi.enumCase(e,t),"EnumCase",e),urlInstance:e=>Mu(Xi.urlInstance(e),"URL",e),urlString:e=>Mu(Xi.urlString(e),"string with a URL",e),truthy:e=>Mu(Xi.truthy(e),"truthy",e),falsy:e=>Mu(Xi.falsy(e),"falsy",e),nan:e=>Mu(Xi.nan(e),"NaN",e),primitive:e=>Mu(Xi.primitive(e),"primitive",e),integer:e=>Mu(Xi.integer(e),"integer",e),safeInteger:e=>Mu(Xi.safeInteger(e),"integer",e),plainObject:e=>Mu(Xi.plainObject(e),"plain object",e),typedArray:e=>Mu(Xi.typedArray(e),"TypedArray",e),arrayLike:e=>Mu(Xi.arrayLike(e),"array-like",e),domElement:e=>Mu(Xi.domElement(e),"HTMLElement",e),observable:e=>Mu(Xi.observable(e),"Observable",e),nodeStream:e=>Mu(Xi.nodeStream(e),"Node.js Stream",e),infinite:e=>Mu(Xi.infinite(e),"infinite number",e),emptyArray:e=>Mu(Xi.emptyArray(e),"empty array",e),nonEmptyArray:e=>Mu(Xi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>Mu(Xi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>Mu(Xi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>Mu(Xi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>Mu(Xi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>Mu(Xi.emptyObject(e),"empty object",e),nonEmptyObject:e=>Mu(Xi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>Mu(Xi.emptySet(e),"empty set",e),nonEmptySet:e=>Mu(Xi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>Mu(Xi.emptyMap(e),"empty map",e),nonEmptyMap:e=>Mu(Xi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>Mu(Xi.propertyKey(e),"PropertyKey",e),formData:e=>Mu(Xi.formData(e),"FormData",e),urlSearchParams:e=>Mu(Xi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>Mu(Xi.evenInteger(e),"even integer",e),oddInteger:e=>Mu(Xi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>Mu(Xi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>Mu(Xi.inRange(e,t),"in range",e),any:(e,...t)=>Mu(Xi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>Mu(Xi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(Xi,{class:{value:Xi.class_},function:{value:Xi.function_},null:{value:Xi.null_}});Object.defineProperties(s$.assert,{class:{value:s$.assert.class_},function:{value:s$.assert.function_},null:{value:s$.assert.null_}});s$.default=Xi;Agt.exports=Xi;Agt.exports.default=Xi;Agt.exports.assert=s$.assert});var Rxn=H((tjl,Lur)=>{"use strict";var dgt=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},pgt=class e{static fn(t){return(...r)=>new e((n,a,o)=>{r.push(o),t(...r).then(n,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,n)=>{this._reject=n;let a=A=>{(!this._isCanceled||!l.shouldReject)&&(this._isPending=!1,r(A))},o=A=>{this._isPending=!1,n(A)},l=A=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(A)};return Object.defineProperties(l,{shouldReject:{get:()=>this._rejectOnCancel,set:A=>{this._rejectOnCancel=A}}}),t(a,o,l)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new dgt(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(pgt.prototype,Promise.prototype);Lur.exports=pgt;Lur.exports.CancelError=dgt});var Nxn=H((Pur,Wur)=>{"use strict";Object.defineProperty(Pur,"__esModule",{value:!0});function RLo(e){return e.encrypted}var Vur=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let n=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",l=()=>{n&&r.connect(),RLo(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?l():e.connecting?e.once("connect",l):e.destroyed&&o&&r.close(e._hadError)};Pur.default=Vur;Wur.exports=Vur;Wur.exports.default=Vur});var Dxn=H((Mur,Hur)=>{"use strict";Object.defineProperty(Mur,"__esModule",{value:!0});var NLo=Nxn(),DLo=wt("util"),kLo=Number(process.versions.node.split(".")[0]),Our=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=A=>{let f=A.emit.bind(A);A.emit=(I,...C)=>(I==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,A.emit=f),f(I,...C))};r(e);let n=()=>{t.abort=Date.now(),(!t.response||kLo>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",n);let a=A=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,DLo.types.isProxy(A))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};A.prependOnceListener("lookup",f),NLo.default(A,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(A.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var A;t.upload=Date.now(),t.phases.request=t.upload-((A=t.secureConnect)!==null&&A!==void 0?A:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",A=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,A.timings=t,r(A),A.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),A.prependOnceListener("aborted",n)}),t};Mur.default=Our;Hur.exports=Our;Hur.exports.default=Our});var Vxn=H((rjl,Xur)=>{"use strict";var{V4MAPPED:xLo,ADDRCONFIG:GLo,ALL:Lxn,promises:{Resolver:kxn},lookup:FLo}=wt("dns"),{promisify:Yur}=wt("util"),ZLo=wt("os"),dve=Symbol("cacheableLookupCreateConnection"),Qur=Symbol("cacheableLookupInstance"),xxn=Symbol("expires"),LLo=typeof Lxn=="number",Gxn=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},VLo=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},Fxn=()=>{let e=!1,t=!1;for(let r of Object.values(ZLo.networkInterfaces()))for(let n of r)if(!n.internal&&(n.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},PLo=e=>Symbol.iterator in e,Zxn={ttl:!0},WLo={all:!0},fgt=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:n=3600,errorTtl:a=.15,resolver:o=new kxn,lookup:l=FLo}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=Yur(l),this._resolver instanceof kxn?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Yur(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Yur(this._resolver.resolve6.bind(this._resolver))),this._iface=Fxn(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,n<1)this._fallback=!1;else{this._fallback=!0;let A=setInterval(()=>{this._hostnamesToFallback.clear()},n*1e3);A.unref&&A.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,n){if(typeof r=="function"?(n=r,r={}):typeof r=="number"&&(r={family:r}),!n)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?n(null,a):n(null,a.address,a.family,a.expires,a.ttl)},n)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let n=await this.query(t);if(r.family===6){let a=n.filter(o=>o.family===6);r.hints&xLo&&(LLo&&r.hints&Lxn||a.length===0)?VLo(n):n=a}else r.family===4&&(n=n.filter(a=>a.family===4));if(r.hints&GLo){let{_iface:a}=this;n=n.filter(o=>o.family===6?a.has6:a.has4)}if(n.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?n:n[0]}async query(t){let r=await this._cache.get(t);if(!r){let n=this._pending[t];if(n)r=await n;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(n=>({...n})),r}async _resolve(t){let r=async I=>{try{return await I}catch(C){if(C.code==="ENODATA"||C.code==="ENOTFOUND")return[];throw C}},[n,a]=await Promise.all([this._resolve4(t,Zxn),this._resolve6(t,Zxn)].map(I=>r(I))),o=0,l=0,A=0,f=Date.now();for(let I of n)I.family=4,I.expires=f+I.ttl*1e3,o=Math.max(o,I.ttl);for(let I of a)I.family=6,I.expires=f+I.ttl*1e3,l=Math.max(l,I.ttl);return n.length>0?a.length>0?A=Math.min(o,l):A=o:A=l,{entries:[...n,...a],cacheTtl:A}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,n){if(this.maxTtl>0&&n>0){n=Math.min(n,this.maxTtl)*1e3,r[xxn]=Date.now()+n;try{await this._cache.set(t,r,n)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}PLo(this._cache)&&this._tick(n)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,WLo);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let n=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,n),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let n=1/0,a=Date.now();for(let[o,l]of this._cache){let A=l[xxn];a>=A?this._cache.delete(o):A("lookup"in r||(r.lookup=this.lookup),t[dve](r,n))}uninstall(t){if(Gxn(t),t[dve]){if(t[Qur]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[dve],delete t[dve],delete t[Qur]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=Fxn(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};Xur.exports=fgt;Xur.exports.default=fgt});var Oxn=H((njl,Wxn)=>{"use strict";var OLo="text/plain",MLo="us-ascii",Pxn=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),HLo=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===MLo)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length!==0||f&&f!==OLo)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`},YLo=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return HLo(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let l=a.pathname.split("/"),A=l[l.length-1];Pxn(A,t.removeDirectoryIndex)&&(l=l.slice(0,l.length-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])Pxn(l,t.removeQueryParameters)&&a.searchParams.delete(l);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};Wxn.exports=YLo});var Yxn=H((ijl,Hxn)=>{Hxn.exports=Mxn;function Mxn(e,t){if(e&&t)return Mxn(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),a=0;a{var Qxn=Yxn();Jur.exports=Qxn(Igt);Jur.exports.strict=Qxn(Xxn);Igt.proto=Igt(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return Igt(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return Xxn(this)},configurable:!0})});function Igt(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function Xxn(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var Uur=H((ojl,Uxn)=>{var QLo=hgt(),XLo=function(){},JLo=function(e){return e.setHeader&&typeof e.abort=="function"},ULo=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},Jxn=function(e,t,r){if(typeof t=="function")return Jxn(e,null,t);t||(t={}),r=QLo(r||XLo);var n=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,l=t.writable||t.writable!==!1&&e.writable,A=!1,f=function(){e.writable||I()},I=function(){l=!1,o||r.call(e)},C=function(){o=!1,l||r.call(e)},b=function(Q){r.call(e,Q?new Error("exited with error code: "+Q):null)},E=function(Q){r.call(e,Q)},N=function(){process.nextTick(B)},B=function(){if(!A){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(l&&!(n&&n.ended&&!n.destroyed))return r.call(e,new Error("premature close"))}},F=function(){e.req.on("finish",I)};return JLo(e)?(e.on("complete",I),e.on("abort",N),e.req?F():e.on("request",F)):l&&!n&&(e.on("end",f),e.on("close",f)),ULo(e)&&e.on("exit",b),e.on("end",C),e.on("finish",I),t.error!==!1&&e.on("error",E),e.on("close",N),function(){A=!0,e.removeListener("complete",I),e.removeListener("abort",N),e.removeListener("request",F),e.req&&e.req.removeListener("finish",I),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",I),e.removeListener("exit",b),e.removeListener("end",C),e.removeListener("error",E),e.removeListener("close",N)}};Uxn.exports=Jxn});var zxn=H((ajl,jxn)=>{var KLo=hgt(),jLo=Uur(),mgt;try{mgt=wt("fs")}catch{}var n5e=function(){},zLo=/^v?\.0/.test(process.version),Cgt=function(e){return typeof e=="function"},qLo=function(e){return!zLo||!mgt?!1:(e instanceof(mgt.ReadStream||n5e)||e instanceof(mgt.WriteStream||n5e))&&Cgt(e.close)},$Lo=function(e){return e.setHeader&&Cgt(e.abort)},e9o=function(e,t,r,n){n=KLo(n);var a=!1;e.on("close",function(){a=!0}),jLo(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,qLo(e))return e.close(n5e);if($Lo(e))return e.abort();if(Cgt(e.destroy))return e.destroy();n(l||new Error("stream was destroyed"))}}},Kxn=function(e){e()},t9o=function(e,t){return e.pipe(t)},r9o=function(){var e=Array.prototype.slice.call(arguments),t=Cgt(e[e.length-1]||n5e)&&e.pop()||n5e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,n=e.map(function(a,o){var l=o0;return e9o(a,l,A,function(f){r||(r=f),f&&n.forEach(Kxn),!l&&(n.forEach(Kxn),t(r))})});return e.reduce(t9o)};jxn.exports=r9o});var $xn=H((cjl,qxn)=>{"use strict";var{PassThrough:n9o}=wt("stream");qxn.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,n=r==="buffer",a=!1;t?a=!(r||n):r=r||"utf8",n&&(r=null);let o=new n9o({objectMode:a});r&&o.setEncoding(r);let l=0,A=[];return o.on("data",f=>{A.push(f),a?l=A.length:l+=f.length}),o.getBufferedValue=()=>t?A:n?Buffer.concat(A,l):A.join(""),o.getBufferedLength=()=>l,o}});var eGn=H((ljl,pve)=>{"use strict";var{constants:i9o}=wt("buffer"),s9o=zxn(),o9o=$xn(),_gt=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function ygt(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,n;return await new Promise((a,o)=>{let l=A=>{A&&n.getBufferedLength()<=i9o.MAX_LENGTH&&(A.bufferedData=n.getBufferedValue()),o(A)};n=s9o(e,o9o(t),A=>{if(A){l(A);return}a()}),n.on("data",()=>{n.getBufferedLength()>r&&l(new _gt)})}),n.getBufferedValue()}pve.exports=ygt;pve.exports.default=ygt;pve.exports.buffer=(e,t)=>ygt(e,{...t,encoding:"buffer"});pve.exports.array=(e,t)=>ygt(e,{...t,array:!0});pve.exports.MaxBufferError=_gt});var jur=H((gjl,tGn)=>{"use strict";var a9o=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),c9o=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),l9o=new Set([500,502,503,504]),u9o={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},g9o={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function zfe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function A9o(e){return e?l9o.has(e.status):!0}function Kur(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let n of r){let[a,o]=n.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function d9o(e){let t=[];for(let r in e){let n=e[r];t.push(n===!0?r:r+"="+n)}if(t.length)return t.join(", ")}tGn.exports=class{constructor(t,r,{shared:n,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:l,_fromObject:A}={}){if(A){this._fromObject(A);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=n!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=Kur(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=Kur(t.headers["cache-control"]),l&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":d9o(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&c9o.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||a9o.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=Kur(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let n of r)if(t.headers[n]!==this._reqHeaders[n])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let n in t)u9o[n]||(r[n]=t[n]);if(t.connection){let n=t.connection.trim().split(/\s*,\s*/);for(let a of n)delete r[a]}if(r.warning){let n=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));n.length?r.warning=n.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return zfe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return zfe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return zfe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let n=Date.parse(this._resHeaders.expires);return Number.isNaN(n)||nn)return Math.max(t,(r-n)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+zfe(this._rescc["stale-if-error"]),n=t+zfe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,n)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+zfe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+zfe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&A9o(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let n=!1;if(r.status!==void 0&&r.status!=304?n=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?n=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?n=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?n=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(n=!0),!n)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let l in this._resHeaders)a[l]=l in r.headers&&!g9o[l]?r.headers[l]:this._resHeaders[l];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var bgt=H((Ajl,rGn)=>{"use strict";rGn.exports=e=>{let t={};for(let[r,n]of Object.entries(e))t[r.toLowerCase()]=n;return t}});var iGn=H((djl,nGn)=>{"use strict";var p9o=wt("stream").Readable,f9o=bgt(),zur=class extends p9o{constructor(t,r,n,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(n instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=f9o(r),this.body=n,this.url=a}_read(){this.push(this.body),this.push(null)}};nGn.exports=zur});var oGn=H((pjl,sGn)=>{"use strict";var I9o=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];sGn.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(I9o));for(let n of r)n in t||(t[n]=typeof e[n]=="function"?e[n].bind(e):e[n])}});var cGn=H((fjl,aGn)=>{"use strict";var h9o=wt("stream").PassThrough,m9o=oGn(),C9o=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new h9o;return m9o(e,t),e.pipe(t)};aGn.exports=C9o});var lGn=H(qur=>{qur.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",n=Array.isArray(t);r=n?"[":"{";var a=!0;for(var o in t){var l=typeof t[o]=="function"||!n&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!l&&(a||(r+=","),a=!1,n?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=n?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};qur.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var dGn=H((hjl,AGn)=>{"use strict";var _9o=wt("events"),uGn=lGn(),y9o=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(wt(t[r]))(e)}return new Map},gGn=["sqlite","postgres","mysql","mongo","redis","tiered"],$ur=class extends _9o{constructor(t,{emitErrors:r=!0,...n}={}){if(super(),this.opts={namespace:"keyv",serialize:uGn.stringify,deserialize:uGn.parse,...typeof t=="string"?{uri:t}:t,...n},!this.opts.store){let o={...this.opts};this.opts.store=y9o(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[l,A]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(A);if(!(this.opts.store.namespace&&!l.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(l);continue}yield[this._getKeyUnprefix(l),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return gGn.includes(this.opts.store.opts.dialect)||gGn.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:n}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&n.getMany===void 0){let l=[];for(let A of o)l.push(Promise.resolve().then(()=>n.get(A)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(A).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(l).then(A=>{let f=[];for(let I of A)f.push(I.value);return f})}return Promise.resolve().then(()=>a?n.getMany(o):n.get(o)).then(l=>typeof l=="string"?this.opts.deserialize(l):this.opts.compression?this.opts.deserialize(l):l).then(l=>{if(l!=null)return a?l.map((A,f)=>{if(typeof A=="string"&&(A=this.opts.deserialize(A)),A!=null){if(typeof A.expires=="number"&&Date.now()>A.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?A:A.value}}):typeof l.expires=="number"&&Date.now()>l.expires?this.delete(t).then(()=>{}):r&&r.raw?l:l.value})}set(t,r,n){let a=this._getKeyPrefix(t);typeof n>"u"&&(n=this.opts.ttl),n===0&&(n=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let l=typeof n=="number"?Date.now()+n:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:l},this.opts.serialize(r)}).then(l=>o.set(a,l,n)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let l of a)o.push(r.delete(l));return Promise.allSettled(o).then(l=>l.every(A=>A.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let n=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(n))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:n}=this.opts;return Promise.resolve().then(async()=>typeof n.has=="function"?n.has(r):await n.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};AGn.exports=$ur});var IGn=H((Cjl,fGn)=>{"use strict";var b9o=wt("events"),Egt=wt("url"),E9o=Oxn(),S9o=eGn(),egr=jur(),pGn=iGn(),v9o=bgt(),B9o=cGn(),w9o=dGn(),i5e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new w9o({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,n)=>{let a;if(typeof r=="string")a=tgr(Egt.parse(r)),r={};else if(r instanceof Egt.URL)a=tgr(Egt.parse(r.toString())),r={};else{let[b,...E]=(r.path||"").split("?"),N=E.length>0?`?${E.join("?")}`:"";a=tgr({...r,pathname:b,search:N})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...T9o(a)},r.headers=v9o(r.headers);let o=new b9o,l=E9o(Egt.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),A=`${r.method}:${l}`,f=!1,I=!1,C=b=>{I=!0;let E=!1,N,B=new Promise(Q=>{N=()=>{E||(E=!0,Q())}}),F=Q=>{if(f&&!b.forceRefresh){Q.status=Q.statusCode;let ae=egr.fromObject(f.cachePolicy).revalidatedPolicy(b,Q);if(!ae.modified){let ne=ae.policy.responseHeaders();Q=new pGn(f.statusCode,ne,f.body,f.url),Q.cachePolicy=ae.policy,Q.fromCache=!0}}Q.fromCache||(Q.cachePolicy=new egr(b,Q,b),Q.fromCache=!1);let X;b.cache&&Q.cachePolicy.storable()?(X=B9o(Q),(async()=>{try{let ae=S9o.buffer(Q);if(await Promise.race([B,new Promise(ue=>Q.once("end",ue))]),E)return;let ne=await ae,ce={cachePolicy:Q.cachePolicy.toObject(),url:Q.url,statusCode:Q.fromCache?f.statusCode:Q.statusCode,body:ne},fe=b.strictTtl?Q.cachePolicy.timeToLive():void 0;b.maxTtl&&(fe=fe?Math.min(fe,b.maxTtl):b.maxTtl),await this.cache.set(A,ce,fe)}catch(ae){o.emit("error",new e.CacheError(ae))}})()):b.cache&&f&&(async()=>{try{await this.cache.delete(A)}catch(ae){o.emit("error",new e.CacheError(ae))}})(),o.emit("response",X||Q),typeof n=="function"&&n(X||Q)};try{let Q=t(b,F);Q.once("error",N),Q.once("abort",N),o.emit("request",Q)}catch(Q){o.emit("error",new e.RequestError(Q))}};return(async()=>{let b=async N=>{await Promise.resolve();let B=N.cache?await this.cache.get(A):void 0;if(typeof B>"u")return C(N);let F=egr.fromObject(B.cachePolicy);if(F.satisfiesWithoutRevalidation(N)&&!N.forceRefresh){let Q=F.responseHeaders(),X=new pGn(B.statusCode,Q,B.body,B.url);X.cachePolicy=F,X.fromCache=!0,o.emit("response",X),typeof n=="function"&&n(X)}else f=B,N.headers=F.revalidationHeaders(N),C(N)},E=N=>o.emit("error",new e.CacheError(N));this.cache.once("error",E),o.on("response",()=>this.cache.removeListener("error",E));try{await b(r)}catch(N){r.automaticFailover&&!I&&C(r),o.emit("error",new e.CacheError(N))}})(),o}}};function T9o(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function tgr(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}i5e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};i5e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};fGn.exports=i5e});var mGn=H((bjl,hGn)=>{"use strict";var R9o=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];hGn.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(R9o)),n={};for(let a of r)a in t||(n[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,n),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var _Gn=H((Ejl,CGn)=>{"use strict";var{Transform:N9o,PassThrough:D9o}=wt("stream"),rgr=wt("zlib"),k9o=mGn();CGn.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof rgr.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let n=!0,a=new N9o({transform(A,f,I){n=!1,I(null,A)},flush(A){A()}}),o=new D9o({autoDestroy:!1,destroy(A,f){e.destroy(),f(A)}}),l=r?rgr.createBrotliDecompress():rgr.createUnzip();return l.once("error",A=>{if(n&&!e.readable){o.end();return}o.destroy(A)}),k9o(e,o),e.pipe(a).pipe(l).pipe(o),o}});var igr=H((Sjl,yGn)=>{"use strict";var ngr=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[n,a]of this.oldCache.entries())this.onEviction(n,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};yGn.exports=ngr});var ogr=H((vjl,vGn)=>{"use strict";var x9o=wt("events"),G9o=wt("tls"),F9o=wt("http2"),Z9o=igr(),wZ=Symbol("currentStreamsCount"),bGn=Symbol("request"),aM=Symbol("cachedOriginSet"),fve=Symbol("gracefullyClosing"),L9o=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],V9o=(e,t,r)=>{let n=0,a=e.length;for(;n>>1;r(e[o],t)?n=o+1:a=o}return n},P9o=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,sgr=(e,t)=>{for(let r of e)r[aM].lengtht[aM].includes(n))&&r[wZ]+t[wZ]<=t.remoteSettings.maxConcurrentStreams&&SGn(r)},W9o=(e,t)=>{for(let r of e)t[aM].lengthr[aM].includes(n))&&t[wZ]+r[wZ]<=r.remoteSettings.maxConcurrentStreams&&SGn(t)},EGn=({agent:e,isFree:t})=>{let r={};for(let n in e.sessions){let o=e.sessions[n].filter(l=>{let A=l[qfe.kCurrentStreamsCount]{e[fve]=!0,e[wZ]===0&&e.close()},qfe=class e extends x9o{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:n=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=n,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new Z9o({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let n of L9o)t[n]&&(r+=`:${t[n]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let n=this.queue[t][r];this._sessionsCount{Array.isArray(n)?(n=[...n],a()):n=[{resolve:a,reject:o}];let l=this.normalizeOptions(r),A=e.normalizeOrigin(t,r&&r.servername);if(A===void 0){for(let{reject:C}of n)C(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(l in this.sessions){let C=this.sessions[l],b=-1,E=-1,N;for(let B of C){let F=B.remoteSettings.maxConcurrentStreams;if(F=F||B[fve]||B.destroyed)continue;N||(b=F),Q>E&&(N=B,E=Q)}}if(N){if(n.length!==1){for(let{reject:B}of n){let F=new Error(`Expected the length of listeners to be 1, got ${n.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);B(F)}return}n[0].resolve(N);return}}if(l in this.queue){if(A in this.queue[l]){this.queue[l][A].listeners.push(...n),this._tryToCreateNewSession(l,A);return}}else this.queue[l]={};let f=()=>{l in this.queue&&this.queue[l][A]===I&&(delete this.queue[l][A],Object.keys(this.queue[l]).length===0&&delete this.queue[l])},I=()=>{let C=`${A}:${l}`,b=!1;try{let E=F9o.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(C),...r});E[wZ]=0,E[fve]=!1;let N=()=>E[wZ]{this.tlsSessionCache.set(C,Q)}),E.once("error",Q=>{for(let{reject:X}of n)X(Q);this.tlsSessionCache.delete(C)}),E.setTimeout(this.timeout,()=>{E.destroy()}),E.once("close",()=>{if(b){B&&this._freeSessionsCount--,this._sessionsCount--;let Q=this.sessions[l];Q.splice(Q.indexOf(E),1),Q.length===0&&delete this.sessions[l]}else{let Q=new Error("Session closed without receiving a SETTINGS frame");Q.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:X}of n)X(Q);f()}this._tryToCreateNewSession(l,A)});let F=()=>{if(!(!(l in this.queue)||!N())){for(let Q of E[aM])if(Q in this.queue[l]){let{listeners:X}=this.queue[l][Q];for(;X.length!==0&&N();)X.shift().resolve(E);let ae=this.queue[l];if(ae[Q].listeners.length===0&&(delete ae[Q],Object.keys(ae).length===0)){delete this.queue[l];break}if(!N())break}}};E.on("origin",()=>{E[aM]=E.originSet,N()&&(F(),sgr(this.sessions[l],E))}),E.once("remoteSettings",()=>{if(E.ref(),E.unref(),this._sessionsCount++,I.destroyed){let Q=new Error("Agent has been destroyed");for(let X of n)X.reject(Q);E.destroy();return}E[aM]=E.originSet;{let Q=this.sessions;if(l in Q){let X=Q[l];X.splice(V9o(X,E,P9o),0,E)}else Q[l]=[E]}this._freeSessionsCount+=1,b=!0,this.emit("session",E),F(),f(),E[wZ]===0&&this._freeSessionsCount>this.maxFreeSessions&&E.close(),n.length!==0&&(this.getSession(A,r,n),n.length=0),E.on("remoteSettings",()=>{F(),sgr(this.sessions[l],E)})}),E[bGn]=E.request,E.request=(Q,X)=>{if(E[fve])throw new Error("The session is gracefully closing. No new streams are allowed.");let ae=E[bGn](Q,X);return E.ref(),++E[wZ],E[wZ]===E.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,ae.once("close",()=>{if(B=N(),--E[wZ],!E.destroyed&&!E.closed&&(W9o(this.sessions[l],E),N()&&!E.closed)){B||(this._freeSessionsCount++,B=!0);let ne=E[wZ]===0;ne&&E.unref(),ne&&(this._freeSessionsCount>this.maxFreeSessions||E[fve])?E.close():(sgr(this.sessions[l],E),F())}}),ae}}catch(E){for(let N of n)N.reject(E);f()}};I.listeners=n,I.completed=!1,I.destroyed=!1,this.queue[l][A]=I,this._tryToCreateNewSession(l,A)})}request(t,r,n,a){return new Promise((o,l)=>{this.getSession(t,r,[{reject:l,resolve:A=>{try{o(A.request(n,a))}catch(f){l(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let n=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),G9o.connect(n,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[wZ]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let n of r)n.destroy(t);for(let r of Object.values(this.queue))for(let n of Object.values(r))n.destroyed=!0;this.queue={}}get freeSessions(){return EGn({agent:this,isFree:!0})}get busySessions(){return EGn({agent:this,isFree:!1})}};qfe.kCurrentStreamsCount=wZ;qfe.kGracefullyClosing=fve;vGn.exports={Agent:qfe,globalAgent:new qfe}});var cgr=H((Bjl,BGn)=>{"use strict";var{Readable:O9o}=wt("stream"),agr=class extends O9o{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};BGn.exports=agr});var lgr=H((wjl,wGn)=>{"use strict";wGn.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var RGn=H((Tjl,TGn)=>{"use strict";TGn.exports=(e,t,r)=>{for(let n of r)e.on(n,(...a)=>t.emit(n,...a))}});var DGn=H((Rjl,NGn)=>{"use strict";NGn.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var xGn=H((Djl,kGn)=>{"use strict";var Ive=(e,t,r)=>{kGn.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};Ive(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],n=Array.isArray(r);return n&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${n?"one of":"of"} type ${r}. Received ${typeof e[2]}`});Ive(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);Ive(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);Ive(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);Ive(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);Ive(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var pgr=H((kjl,WGn)=>{"use strict";var M9o=wt("http2"),{Writable:H9o}=wt("stream"),{Agent:GGn,globalAgent:Y9o}=ogr(),Q9o=cgr(),X9o=lgr(),J9o=RGn(),U9o=DGn(),{ERR_INVALID_ARG_TYPE:ugr,ERR_INVALID_PROTOCOL:K9o,ERR_HTTP_HEADERS_SENT:FGn,ERR_INVALID_HTTP_TOKEN:j9o,ERR_HTTP_INVALID_HEADER_VALUE:z9o,ERR_INVALID_CHAR:q9o}=xGn(),{HTTP2_HEADER_STATUS:ZGn,HTTP2_HEADER_METHOD:LGn,HTTP2_HEADER_PATH:VGn,HTTP2_METHOD_CONNECT:$9o}=M9o.constants,dG=Symbol("headers"),ggr=Symbol("origin"),Agr=Symbol("session"),PGn=Symbol("options"),Sgt=Symbol("flushedHeaders"),s5e=Symbol("jobs"),eVo=/^[\^`\-\w!#$%&*+.|~]+$/,tVo=/[^\t\u0020-\u007E\u0080-\u00FF]/,dgr=class extends H9o{constructor(t,r,n){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=X9o(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(n=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[Agr]=r.h2session;else if(r.agent===!1)this.agent=new GGn({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new GGn({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=Y9o;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new ugr("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new K9o(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,l=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:A}=r;if(r.timeout=void 0,this[dG]=Object.create(null),this[s5e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,I]of Object.entries(r.headers))this.setHeader(f,I);r.auth&&!("authorization"in this[dG])&&(this[dG].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[PGn]=r,o===443?(this[ggr]=`https://${l}`,":authority"in this[dG]||(this[dG][":authority"]=l)):(this[ggr]=`https://${l}:${o}`,":authority"in this[dG]||(this[dG][":authority"]=`${l}:${o}`)),A&&this.setTimeout(A),n&&this.once("response",n),this[Sgt]=!1}get method(){return this[dG][LGn]}set method(t){t&&(this[dG][LGn]=t.toUpperCase())}get path(){return this[dG][VGn]}set path(t){t&&(this[dG][VGn]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,n){if(this._mustNotHaveABody){n(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,n);this._request?a():this[s5e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[s5e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[Sgt]||this.destroyed)return;this[Sgt]=!0;let t=this.method===$9o,r=n=>{if(this._request=n,this.destroyed){n.destroy();return}t||J9o(n,this,["timeout","continue","close","error"]);let a=l=>(...A)=>{!this.writable&&!this.destroyed?l(...A):this.once("finish",()=>{l(...A)})};n.once("response",a((l,A,f)=>{let I=new Q9o(this.socket,n.readableHighWaterMark);this.res=I,I.req=this,I.statusCode=l[ZGn],I.headers=l,I.rawHeaders=f,I.once("end",()=>{this.aborted?(I.aborted=!0,I.emit("aborted")):(I.complete=!0,I.socket=null,I.connection=null)}),t?(I.upgrade=!0,this.emit("connect",I,n,Buffer.alloc(0))?this.emit("close"):n.destroy()):(n.on("data",C=>{!I._dumped&&!I.push(C)&&n.pause()}),n.once("end",()=>{I.push(null)}),this.emit("response",I)||I._dump())})),n.once("headers",a(l=>this.emit("information",{statusCode:l[ZGn]}))),n.once("trailers",a((l,A,f)=>{let{res:I}=this;I.trailers=l,I.rawTrailers=f}));let{socket:o}=n.session;this.socket=o,this.connection=o;for(let l of this[s5e])l();this.emit("socket",this.socket)};if(this[Agr])try{r(this[Agr].request(this[dG]))}catch(n){this.emit("error",n)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[ggr],this[PGn],this[dG]))}catch(n){this.emit("error",n)}}}getHeader(t){if(typeof t!="string")throw new ugr("name","string",t);return this[dG][t.toLowerCase()]}get headersSent(){return this[Sgt]}removeHeader(t){if(typeof t!="string")throw new ugr("name","string",t);if(this.headersSent)throw new FGn("remove");delete this[dG][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new FGn("set");if(typeof t!="string"||!eVo.test(t)&&!U9o(t))throw new j9o("Header name",t);if(typeof r>"u")throw new z9o(r,t);if(tVo.test(r))throw new q9o("header content",t);this[dG][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let n=()=>this._request.setTimeout(t,r);return this._request?n():this[s5e].push(n),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};WGn.exports=dgr});var MGn=H((xjl,OGn)=>{"use strict";var rVo=wt("tls");OGn.exports=(e={},t=rVo.connect)=>new Promise((r,n)=>{let a=!1,o,l=async()=>{await f,o.off("timeout",A),o.off("error",n),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},A=async()=>{a=!0,l()},f=(async()=>{try{o=await t(e,l),o.on("error",n),o.once("timeout",A)}catch(I){n(I)}})()})});var YGn=H((Gjl,HGn)=>{"use strict";var nVo=wt("net");HGn.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),nVo.isIP(t)?"":t}});var JGn=H((Fjl,Igr)=>{"use strict";var QGn=wt("http"),fgr=wt("https"),iVo=MGn(),sVo=igr(),oVo=pgr(),aVo=YGn(),cVo=lgr(),vgt=new sVo({maxSize:100}),o5e=new Map,XGn=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let n=()=>{e.emit("free",t,r)};t.on("free",n);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",n),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},lVo=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!vgt.has(t)){if(o5e.has(t))return(await o5e.get(t)).alpnProtocol;let{path:r,agent:n}=e;e.path=e.socketPath;let a=iVo(e);o5e.set(t,a);try{let{socket:o,alpnProtocol:l}=await a;if(vgt.set(t,l),e.path=r,l==="h2")o.destroy();else{let{globalAgent:A}=fgr,f=fgr.Agent.prototype.createConnection;n?n.createConnection===f?XGn(n,o,e):o.destroy():A.createConnection===f?XGn(A,o,e):o.destroy()}return o5e.delete(t),l}catch(o){throw o5e.delete(t),o}}return vgt.get(t)};Igr.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=cVo(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let n=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||aVo(t),t.port=t.port||(n?443:80),t._defaultAgent=n?fgr.globalAgent:QGn.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[n?"https":"http"]}return n&&await lVo(t)==="h2"?(a&&(t.agent=a.http2),new oVo(t,r)):QGn.request(t,r)};Igr.exports.protocolCache=vgt});var KGn=H((Zjl,UGn)=>{"use strict";var uVo=wt("http2"),gVo=ogr(),hgr=pgr(),AVo=cgr(),dVo=JGn(),pVo=(e,t,r)=>new hgr(e,t,r),fVo=(e,t,r)=>{let n=new hgr(e,t,r);return n.end(),n};UGn.exports={...uVo,ClientRequest:hgr,IncomingMessage:AVo,...gVo,request:pVo,get:fVo,auto:dVo}});var Cgr=H(mgr=>{"use strict";Object.defineProperty(mgr,"__esModule",{value:!0});var jGn=o$();mgr.default=e=>jGn.default.nodeStream(e)&&jGn.default.function_(e.getBoundary)});var eFn=H(_gr=>{"use strict";Object.defineProperty(_gr,"__esModule",{value:!0});var qGn=wt("fs"),$Gn=wt("util"),zGn=o$(),IVo=Cgr(),hVo=$Gn.promisify(qGn.stat);_gr.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if(zGn.default.string(e))return Buffer.byteLength(e);if(zGn.default.buffer(e))return e.length;if(IVo.default(e))return $Gn.promisify(e.getLength.bind(e))();if(e instanceof qGn.ReadStream){let{size:r}=await hVo(e.path);return r===0?void 0:r}}});var bgr=H(ygr=>{"use strict";Object.defineProperty(ygr,"__esModule",{value:!0});function mVo(e,t,r){let n={};for(let a of r)n[a]=(...o)=>{t.emit(a,...o)},e.on(a,n[a]);return()=>{for(let a of r)e.off(a,n[a])}}ygr.default=mVo});var tFn=H(Egr=>{"use strict";Object.defineProperty(Egr,"__esModule",{value:!0});Egr.default=()=>{let e=[];return{once(t,r,n){t.once(r,n),e.push({origin:t,event:r,fn:n})},unhandleAll(){for(let t of e){let{origin:r,event:n,fn:a}=t;r.removeListener(n,a)}e.length=0}}}});var nFn=H(a5e=>{"use strict";Object.defineProperty(a5e,"__esModule",{value:!0});a5e.TimeoutError=void 0;var CVo=wt("net"),_Vo=tFn(),rFn=Symbol("reentry"),yVo=()=>{},Bgt=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};a5e.TimeoutError=Bgt;a5e.default=(e,t,r)=>{if(rFn in e)return yVo;e[rFn]=!0;let n=[],{once:a,unhandleAll:o}=_Vo.default(),l=(b,E,N)=>{var B;let F=setTimeout(E,b,b,N);(B=F.unref)===null||B===void 0||B.call(F);let Q=()=>{clearTimeout(F)};return n.push(Q),Q},{host:A,hostname:f}=r,I=(b,E)=>{e.destroy(new Bgt(b,E))},C=()=>{for(let b of n)b();o()};if(e.once("error",b=>{if(C(),e.listenerCount("error")===0)throw b}),e.once("close",C),a(e,"response",b=>{a(b,"end",C)}),typeof t.request<"u"&&l(t.request,I,"request"),typeof t.socket<"u"){let b=()=>{I(t.socket,"socket")};e.setTimeout(t.socket,b),n.push(()=>{e.removeListener("timeout",b)})}return a(e,"socket",b=>{var E;let{socketPath:N}=e;if(b.connecting){let B=!!(N??CVo.isIP((E=f??A)!==null&&E!==void 0?E:"")!==0);if(typeof t.lookup<"u"&&!B&&typeof b.address().address>"u"){let F=l(t.lookup,I,"lookup");a(b,"lookup",F)}if(typeof t.connect<"u"){let F=()=>l(t.connect,I,"connect");B?a(b,"connect",F()):a(b,"lookup",Q=>{Q===null&&a(b,"connect",F())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(b,"connect",()=>{let F=l(t.secureConnect,I,"secureConnect");a(b,"secureConnect",F)})}if(typeof t.send<"u"){let B=()=>l(t.send,I,"send");b.connecting?a(b,"connect",()=>{a(e,"upload-complete",B())}):a(e,"upload-complete",B())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let b=l(t.response,I,"response");a(e,"response",b)}),C}});var sFn=H(Sgr=>{"use strict";Object.defineProperty(Sgr,"__esModule",{value:!0});var iFn=o$();Sgr.default=e=>{e=e;let t={protocol:e.protocol,hostname:iFn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return iFn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var oFn=H(vgr=>{"use strict";Object.defineProperty(vgr,"__esModule",{value:!0});var bVo=wt("url"),EVo=["protocol","host","hostname","port","pathname","search"];vgr.default=(e,t)=>{var r,n;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(n=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&n!==void 0?n:""}`}let a=new bVo.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of EVo)t[o]&&(a[o]=t[o].toString());return a}});var aFn=H(wgr=>{"use strict";Object.defineProperty(wgr,"__esModule",{value:!0});var Bgr=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};wgr.default=Bgr});var Rgr=H(Tgr=>{"use strict";Object.defineProperty(Tgr,"__esModule",{value:!0});var SVo=async e=>{let t=[],r=0;for await(let n of e)t.push(n),r+=Buffer.byteLength(n);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};Tgr.default=SVo});var lFn=H($fe=>{"use strict";Object.defineProperty($fe,"__esModule",{value:!0});$fe.dnsLookupIpVersionToFamily=$fe.isDnsLookupIpVersion=void 0;var cFn={auto:0,ipv4:4,ipv6:6};$fe.isDnsLookupIpVersion=e=>e in cFn;$fe.dnsLookupIpVersionToFamily=e=>{if($fe.isDnsLookupIpVersion(e))return cFn[e];throw new Error("Invalid DNS lookup IP version")}});var Ngr=H(wgt=>{"use strict";Object.defineProperty(wgt,"__esModule",{value:!0});wgt.isResponseOk=void 0;wgt.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var gFn=H(Dgr=>{"use strict";Object.defineProperty(Dgr,"__esModule",{value:!0});var uFn=new Set;Dgr.default=e=>{uFn.has(e)||(uFn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var AFn=H(kgr=>{"use strict";Object.defineProperty(kgr,"__esModule",{value:!0});var G1=o$(),vVo=(e,t)=>{if(G1.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");G1.assert.any([G1.default.string,G1.default.undefined],e.encoding),G1.assert.any([G1.default.boolean,G1.default.undefined],e.resolveBodyOnly),G1.assert.any([G1.default.boolean,G1.default.undefined],e.methodRewriting),G1.assert.any([G1.default.boolean,G1.default.undefined],e.isStream),G1.assert.any([G1.default.string,G1.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:n=>n.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},G1.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(n=>n.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):G1.default.number(r)&&(e.retry.limit=r),G1.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(G1.default.number))),G1.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:n}=e;if(!G1.default.function_(n.transform))throw new Error("`options.pagination.transform` must be implemented");if(!G1.default.function_(n.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!G1.default.function_(n.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!G1.default.function_(n.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};kgr.default=vVo});var dFn=H(c5e=>{"use strict";Object.defineProperty(c5e,"__esModule",{value:!0});c5e.retryAfterStatusCodes=void 0;c5e.retryAfterStatusCodes=new Set([413,429,503]);var BVo=({attemptCount:e,retryOptions:t,error:r,retryAfter:n})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),l=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!l)return 0;if(r.response){if(n)return t.maxRetryAfter===void 0||n>t.maxRetryAfter?0:n;if(r.response.statusCode===413)return 0}let A=Math.random()*100;return 2**(e-1)*1e3+A};c5e.default=BVo});var g5e=H(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});O_.UnsupportedProtocolError=O_.ReadError=O_.TimeoutError=O_.UploadError=O_.CacheError=O_.HTTPError=O_.MaxRedirectsError=O_.RequestError=O_.setNonEnumerableProperties=O_.knownHookEvents=O_.withoutBody=O_.kIsNormalizedAlready=void 0;var pFn=wt("util"),fFn=wt("stream"),wVo=wt("fs"),yoe=wt("url"),IFn=wt("http"),xgr=wt("http"),TVo=wt("https"),RVo=Dxn(),NVo=Vxn(),hFn=IGn(),DVo=_Gn(),kVo=KGn(),xVo=bgt(),va=o$(),GVo=eFn(),mFn=Cgr(),FVo=bgr(),CFn=nFn(),ZVo=sFn(),_Fn=oFn(),LVo=aFn(),VVo=Rgr(),yFn=lFn(),PVo=Ngr(),boe=gFn(),WVo=AFn(),OVo=dFn(),Ggr,vk=Symbol("request"),Ngt=Symbol("response"),hve=Symbol("responseSize"),mve=Symbol("downloadedSize"),Cve=Symbol("bodySize"),_ve=Symbol("uploadedSize"),Tgt=Symbol("serverResponsesPiped"),bFn=Symbol("unproxyEvents"),EFn=Symbol("isFromCache"),Fgr=Symbol("cancelTimeouts"),SFn=Symbol("startedReading"),yve=Symbol("stopReading"),Rgt=Symbol("triggerRead"),Eoe=Symbol("body"),l5e=Symbol("jobs"),vFn=Symbol("originalResponse"),BFn=Symbol("retryTimeout");O_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var MVo=va.default.string(process.versions.brotli);O_.withoutBody=new Set(["GET","HEAD"]);O_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function HVo(e){for(let t in e){let r=e[t];if(!va.default.string(r)&&!va.default.number(r)&&!va.default.boolean(r)&&!va.default.null_(r)&&!va.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function YVo(e){return va.default.object(e)&&!("statusCode"in e)}var Zgr=new LVo.default,QVo=async e=>new Promise((t,r)=>{let n=a=>{r(a)};e.pending||t(),e.once("error",n),e.once("ready",()=>{e.off("error",n),t()})}),XVo=new Set([300,301,302,303,304,307,308]),JVo=["context","body","json","form"];O_.setNonEnumerableProperties=(e,t)=>{let r={};for(let n of e)if(n)for(let a of JVo)a in n&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:n[a]});Object.defineProperties(t,r)};var jB=class extends Error{constructor(t,r,n){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",n instanceof Lgt?(Object.defineProperty(this,"request",{enumerable:!1,value:n}),Object.defineProperty(this,"response",{enumerable:!1,value:n[Ngt]}),Object.defineProperty(this,"options",{enumerable:!1,value:n.options})):Object.defineProperty(this,"options",{enumerable:!1,value:n}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,va.default.string(r.stack)&&va.default.string(this.stack)){let l=this.stack.indexOf(this.message)+this.message.length,A=this.stack.slice(l).split(` -`).reverse(),f=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` -`).reverse();for(;f.length!==0&&f[0]===A[0];)A.shift();this.stack=`${this.stack.slice(0,l)}${A.reverse().join(` -`)}${f.reverse().join(` -`)}`}}};O_.RequestError=jB;var Dgt=class extends jB{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};O_.MaxRedirectsError=Dgt;var kgt=class extends jB{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};O_.HTTPError=kgt;var xgt=class extends jB{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};O_.CacheError=xgt;var Ggt=class extends jB{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};O_.UploadError=Ggt;var Fgt=class extends jB{constructor(t,r,n){super(t.message,t,n),this.name="TimeoutError",this.event=t.event,this.timings=r}};O_.TimeoutError=Fgt;var u5e=class extends jB{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};O_.ReadError=u5e;var Zgt=class extends jB{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};O_.UnsupportedProtocolError=Zgt;var UVo=["socket","connect","continue","information","upgrade","timeout"],Lgt=class extends fFn.Duplex{constructor(t,r={},n){super({autoDestroy:!1,highWaterMark:0}),this[mve]=0,this[_ve]=0,this.requestInitialized=!1,this[Tgt]=new Set,this.redirects=[],this[yve]=!1,this[Rgt]=!1,this[l5e]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",I=>{I.prependListener("data",a),I.on("data",o),I.prependListener("end",a),I.on("end",o)}),this.on("unpipe",I=>{I.off("data",a),I.off("data",o),I.off("end",a),I.off("end",o)}),this.on("pipe",I=>{I instanceof xgr.IncomingMessage&&(this.options.headers={...I.headers,...this.options.headers})});let{json:l,body:A,form:f}=r;if((l||A||f)&&this._lockWrite(),O_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,n)}catch(I){va.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(I);return}(async()=>{var I;try{this.options.body instanceof wVo.ReadStream&&await QVo(this.options.body);let{url:C}=this.options;if(!C)throw new TypeError("Missing `url` property");if(this.requestUrl=C.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(I=this[vk])===null||I===void 0||I.destroy();return}for(let b of this[l5e])b();this[l5e].length=0,this.requestInitialized=!0}catch(C){if(C instanceof jB){this._beforeError(C);return}this.destroyed||this.destroy(C)}})()}static normalizeArguments(t,r,n){var a,o,l,A,f;let I=r;if(va.default.object(t)&&!va.default.urlInstance(t))r={...n,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...n,...r},t!==void 0&&(r.url=t),va.default.urlInstance(r.url)&&(r.url=new yoe.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),va.assert.any([va.default.string,va.default.undefined],r.method),va.assert.any([va.default.object,va.default.undefined],r.headers),va.assert.any([va.default.string,va.default.urlInstance,va.default.undefined],r.prefixUrl),va.assert.any([va.default.object,va.default.undefined],r.cookieJar),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.searchParams),va.assert.any([va.default.object,va.default.string,va.default.undefined],r.cache),va.assert.any([va.default.object,va.default.number,va.default.undefined],r.timeout),va.assert.any([va.default.object,va.default.undefined],r.context),va.assert.any([va.default.object,va.default.undefined],r.hooks),va.assert.any([va.default.boolean,va.default.undefined],r.decompress),va.assert.any([va.default.boolean,va.default.undefined],r.ignoreInvalidCookies),va.assert.any([va.default.boolean,va.default.undefined],r.followRedirect),va.assert.any([va.default.number,va.default.undefined],r.maxRedirects),va.assert.any([va.default.boolean,va.default.undefined],r.throwHttpErrors),va.assert.any([va.default.boolean,va.default.undefined],r.http2),va.assert.any([va.default.boolean,va.default.undefined],r.allowGetBody),va.assert.any([va.default.string,va.default.undefined],r.localAddress),va.assert.any([yFn.isDnsLookupIpVersion,va.default.undefined],r.dnsLookupIpVersion),va.assert.any([va.default.object,va.default.undefined],r.https),va.assert.any([va.default.boolean,va.default.undefined],r.rejectUnauthorized),r.https&&(va.assert.any([va.default.boolean,va.default.undefined],r.https.rejectUnauthorized),va.assert.any([va.default.function_,va.default.undefined],r.https.checkServerIdentity),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificateAuthority),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.key),va.assert.any([va.default.string,va.default.object,va.default.array,va.default.undefined],r.https.certificate),va.assert.any([va.default.string,va.default.undefined],r.https.passphrase),va.assert.any([va.default.string,va.default.buffer,va.default.array,va.default.undefined],r.https.pfx)),va.assert.any([va.default.object,va.default.undefined],r.cacheOptions),va.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===n?.headers?r.headers={...r.headers}:r.headers=xVo({...n?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==n?.searchParams){let N;if(va.default.string(r.searchParams)||r.searchParams instanceof yoe.URLSearchParams)N=new yoe.URLSearchParams(r.searchParams);else{HVo(r.searchParams),N=new yoe.URLSearchParams;for(let B in r.searchParams){let F=r.searchParams[B];F===null?N.append(B,""):F!==void 0&&N.append(B,F)}}(a=n?.searchParams)===null||a===void 0||a.forEach((B,F)=>{N.has(F)||N.append(F,B)}),r.searchParams=N}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(l=r.password)!==null&&l!==void 0?l:"",va.default.undefined(r.prefixUrl)?r.prefixUrl=(A=n?.prefixUrl)!==null&&A!==void 0?A:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),va.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=_Fn.default(r.prefixUrl+r.url,r)}else(va.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=_Fn.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:N}=r;Object.defineProperty(r,"prefixUrl",{set:F=>{let Q=r.url;if(!Q.href.startsWith(F))throw new Error(`Cannot change \`prefixUrl\` from ${N} to ${F}: ${Q.href}`);r.url=new yoe.URL(F+Q.href.slice(N.length)),N=F},get:()=>N});let{protocol:B}=r.url;if(B==="unix:"&&(B="http:",r.url=new yoe.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),B!=="http:"&&B!=="https:")throw new Zgt(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:C}=r;if(C){let{setCookie:N,getCookieString:B}=C;va.assert.function_(N),va.assert.function_(B),N.length===4&&B.length===0&&(N=pFn.promisify(N.bind(r.cookieJar)),B=pFn.promisify(B.bind(r.cookieJar)),r.cookieJar={setCookie:N,getCookieString:B})}let{cache:b}=r;if(b&&(Zgr.has(b)||Zgr.set(b,new hFn((N,B)=>{let F=N[vk](N,B);return va.default.promise(F)&&(F.once=(Q,X)=>{if(Q==="error")F.catch(X);else if(Q==="abort")(async()=>{try{(await F).once("abort",X)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${Q}`);return F}),F},b))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)Ggr||(Ggr=new NVo.default),r.dnsCache=Ggr;else if(!va.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${va.default(r.dnsCache)}`);va.default.number(r.timeout)?r.timeout={request:r.timeout}:n&&r.timeout!==n.timeout?r.timeout={...n.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let E=r.hooks===n?.hooks;r.hooks={...r.hooks};for(let N of O_.knownHookEvents)if(N in r.hooks)if(va.default.array(r.hooks[N]))r.hooks[N]=[...r.hooks[N]];else throw new TypeError(`Parameter \`${N}\` must be an Array, got ${va.default(r.hooks[N])}`);else r.hooks[N]=[];if(n&&!E)for(let N of O_.knownHookEvents)n.hooks[N].length>0&&(r.hooks[N]=[...n.hooks[N],...r.hooks[N]]);if("family"in r&&boe.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),n?.https&&(r.https={...n.https,...r.https}),"rejectUnauthorized"in r&&boe.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&boe.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&boe.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&boe.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&boe.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&boe.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&boe.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let N in r.agent)if(N!=="http"&&N!=="https"&&N!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${N}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,O_.setNonEnumerableProperties([n,I],r),WVo.default(r,n)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,n=!va.default.undefined(t.form),a=!va.default.undefined(t.json),o=!va.default.undefined(t.body),l=n||a||o,A=O_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=A,l){if(A)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,n,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof fFn.Readable)&&!va.default.string(t.body)&&!va.default.buffer(t.body)&&!mFn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(n&&!va.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!va.default.string(r["content-type"]);o?(mFn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[Eoe]=t.body):n?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[Eoe]=new yoe.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[Eoe]=t.stringifyJson(t.json));let I=await GVo.default(this[Eoe],t.headers);va.default.undefined(r["content-length"])&&va.default.undefined(r["transfer-encoding"])&&!A&&!va.default.undefined(I)&&(r["content-length"]=String(I))}}else A?this._lockWrite():this._unlockWrite();this[Cve]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:n}=r;this[vFn]=t,r.decompress&&(t=DVo(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:IFn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[EFn]=o.isFromCache,this[hve]=Number(t.headers["content-length"])||void 0,this[Ngt]=t,t.once("end",()=>{this[hve]=this[mve],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",A=>{t.destroy(),this._beforeError(new u5e(A,this))}),t.once("aborted",()=>{this._beforeError(new u5e({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let l=t.headers["set-cookie"];if(va.default.object(r.cookieJar)&&l){let A=l.map(async f=>r.cookieJar.setCookie(f,n.toString()));r.ignoreInvalidCookies&&(A=A.map(async f=>f.catch(()=>{})));try{await Promise.all(A)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&XVo.has(a)){if(t.resume(),this[vk]&&(this[Fgr](),delete this[vk],this[bFn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[Eoe]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new Dgt(this));return}try{let b=function(E){return E.protocol==="unix:"||E.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),I=new yoe.URL(f,n),C=I.toString();if(decodeURI(C),!b(n)&&b(I)){this._beforeError(new jB("Cannot redirect to UNIX socket",{},this));return}I.hostname!==n.hostname||I.port!==n.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(I.username=r.username,I.password=r.password),this.redirects.push(C),r.url=I;for(let E of r.hooks.beforeRedirect)await E(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!PVo.isResponseOk(o)){this._beforeError(new kgt(o));return}t.on("readable",()=>{this[Rgt]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let A of this[Tgt])if(!A.headersSent){for(let f in t.headers){let I=r.decompress?f!=="content-encoding":!0,C=t.headers[f];I&&A.setHeader(f,C)}A.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:n,url:a}=r;RVo.default(t),this[Fgr]=CFn.default(t,n,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var I;t.destroy(),(I=t.res)===null||I===void 0||I.removeAllListeners("end"),f=f instanceof CFn.TimeoutError?new Fgt(f,this.timings,this):new jB(f.message,f,this),this._beforeError(f)}),this[bFn]=FVo.default(t,this,UVo),this[vk]=t,this.emit("uploadProgress",this.uploadProgress);let l=this[Eoe],A=this.redirects.length===0?this:t;va.default.nodeStream(l)?(l.pipe(A),l.once("error",f=>{this._beforeError(new Ggt(f,this))})):(this._unlockWrite(),va.default.undefined(l)?(this._cannotHaveBody||this._noPipe)&&(A.end(),this._lockWrite()):(this._writeRequest(l,void 0,()=>{}),A.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((n,a)=>{Object.assign(r,ZVo.default(t)),delete r.url;let o,l=Zgr.get(r.cache)(r,async A=>{A._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",A),n(A)});r.url=t,l.once("error",a),l.once("request",async A=>{o=A,n(o)})})}async _makeRequest(){var t,r,n,a,o;let{options:l}=this,{headers:A}=l;for(let X in A)if(va.default.undefined(A[X]))delete A[X];else if(va.default.null_(A[X]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${X}\` header`);if(l.decompress&&va.default.undefined(A["accept-encoding"])&&(A["accept-encoding"]=MVo?"gzip, deflate, br":"gzip, deflate"),l.cookieJar){let X=await l.cookieJar.getCookieString(l.url.toString());va.default.nonEmptyString(X)&&(l.headers.cookie=X)}for(let X of l.hooks.beforeRequest){let ae=await X(l);if(!va.default.undefined(ae)){l.request=()=>ae;break}}l.body&&this[Eoe]!==l.body&&(this[Eoe]=l.body);let{agent:f,request:I,timeout:C,url:b}=l;if(l.dnsCache&&!("lookup"in l)&&(l.lookup=l.dnsCache.lookup),b.hostname==="unix"){let X=/(?.+?):(?.+)/.exec(`${b.pathname}${b.search}`);if(X?.groups){let{socketPath:ae,path:ne}=X.groups;Object.assign(l,{socketPath:ae,path:ne,host:""})}}let E=b.protocol==="https:",N;l.http2?N=kVo.auto:N=E?TVo.request:IFn.request;let B=(t=l.request)!==null&&t!==void 0?t:N,F=l.cache?this._createCacheableRequest:B;f&&!l.http2&&(l.agent=f[E?"https":"http"]),l[vk]=B,delete l.request,delete l.timeout;let Q=l;if(Q.shared=(r=l.cacheOptions)===null||r===void 0?void 0:r.shared,Q.cacheHeuristic=(n=l.cacheOptions)===null||n===void 0?void 0:n.cacheHeuristic,Q.immutableMinTimeToLive=(a=l.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,Q.ignoreCargoCult=(o=l.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,l.dnsLookupIpVersion!==void 0)try{Q.family=yFn.dnsLookupIpVersionToFamily(l.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}l.https&&("rejectUnauthorized"in l.https&&(Q.rejectUnauthorized=l.https.rejectUnauthorized),l.https.checkServerIdentity&&(Q.checkServerIdentity=l.https.checkServerIdentity),l.https.certificateAuthority&&(Q.ca=l.https.certificateAuthority),l.https.certificate&&(Q.cert=l.https.certificate),l.https.key&&(Q.key=l.https.key),l.https.passphrase&&(Q.passphrase=l.https.passphrase),l.https.pfx&&(Q.pfx=l.https.pfx));try{let X=await F(b,Q);va.default.undefined(X)&&(X=N(b,Q)),l.request=I,l.timeout=C,l.agent=f,l.https&&("rejectUnauthorized"in l.https&&delete Q.rejectUnauthorized,l.https.checkServerIdentity&&delete Q.checkServerIdentity,l.https.certificateAuthority&&delete Q.ca,l.https.certificate&&delete Q.cert,l.https.key&&delete Q.key,l.https.passphrase&&delete Q.passphrase,l.https.pfx&&delete Q.pfx),YVo(X)?this._onRequest(X):this.writable?(this.once("finish",()=>{this._onResponse(X)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(X)}catch(X){throw X instanceof hFn.CacheError?new xgt(X,this):new jB(X.message,X,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new jB(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[yve])return;let{options:r}=this,n=this.retryCount+1;this[yve]=!0,t instanceof jB||(t=new jB(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await VVo.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let l;try{let A;o&&"retry-after"in o.headers&&(A=Number(o.headers["retry-after"]),Number.isNaN(A)?(A=Date.parse(o.headers["retry-after"])-Date.now(),A<=0&&(A=1)):A*=1e3),l=await r.retry.calculateDelay({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:OVo.default({attemptCount:n,retryOptions:r.retry,error:a,retryAfter:A,computedValue:0})})}catch(A){this._error(new jB(A.message,A,this));return}if(l){let A=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,n)}catch(f){this._error(new jB(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",n,t))};this[BFn]=setTimeout(A,l);return}}this._error(a)})()}_read(){this[Rgt]=!0;let t=this[Ngt];if(t&&!this[yve]){t.readableLength&&(this[Rgt]=!1);let r;for(;(r=t.read())!==null;){this[mve]+=r.length,this[SFn]=!0;let n=this.downloadProgress;n.percent<1&&this.emit("downloadProgress",n),this.push(r)}}}_write(t,r,n){let a=()=>{this._writeRequest(t,r,n)};this.requestInitialized?a():this[l5e].push(a)}_writeRequest(t,r,n){this[vk].destroyed||(this._progressCallbacks.push(()=>{this[_ve]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[vk].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),n(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(vk in this)){t();return}if(this[vk].destroyed){t();return}this[vk].end(n=>{n||(this[Cve]=this[_ve],this.emit("uploadProgress",this.uploadProgress),this[vk].emit("upload-complete")),t(n)})};this.requestInitialized?r():this[l5e].push(r)}_destroy(t,r){var n;this[yve]=!0,clearTimeout(this[BFn]),vk in this&&(this[Fgr](),!((n=this[Ngt])===null||n===void 0)&&n.complete||this[vk].destroy()),t!==null&&!va.default.undefined(t)&&!(t instanceof jB)&&(t=new jB(t.message,t,this)),r(t)}get _isAboutToError(){return this[yve]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,n;return((r=(t=this[vk])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((n=this[vFn])===null||n===void 0)&&n.complete)}get socket(){var t,r;return(r=(t=this[vk])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[hve]?t=this[mve]/this[hve]:this[hve]===this[mve]?t=1:t=0,{percent:t,transferred:this[mve],total:this[hve]}}get uploadProgress(){let t;return this[Cve]?t=this[_ve]/this[Cve]:this[Cve]===this[_ve]?t=1:t=0,{percent:t,transferred:this[_ve],total:this[Cve]}}get timings(){var t;return(t=this[vk])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[EFn]}pipe(t,r){if(this[SFn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof xgr.ServerResponse&&this[Tgt].add(t),super.pipe(t,r)}unpipe(t){return t instanceof xgr.ServerResponse&&this[Tgt].delete(t),super.unpipe(t),this}};O_.default=Lgt});var A5e=H(cX=>{"use strict";var KVo=cX&&cX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jVo=cX&&cX.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&KVo(t,e,r)};Object.defineProperty(cX,"__esModule",{value:!0});cX.CancelError=cX.ParseError=void 0;var wFn=g5e(),Lgr=class extends wFn.RequestError{constructor(t,r){let{options:n}=r.request;super(`${t.message} in "${n.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};cX.ParseError=Lgr;var Vgr=class extends wFn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};cX.CancelError=Vgr;jVo(g5e(),cX)});var RFn=H(Pgr=>{"use strict";Object.defineProperty(Pgr,"__esModule",{value:!0});var TFn=A5e(),zVo=(e,t,r,n)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(n);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new TFn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new TFn.ParseError(o,e)}};Pgr.default=zVo});var Wgr=H(Soe=>{"use strict";var qVo=Soe&&Soe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Vo=Soe&&Soe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qVo(t,e,r)};Object.defineProperty(Soe,"__esModule",{value:!0});var ePo=wt("events"),tPo=o$(),rPo=Rxn(),Vgt=A5e(),NFn=RFn(),DFn=g5e(),nPo=bgr(),iPo=Rgr(),kFn=Ngr(),sPo=["request","response","redirect","uploadProgress","downloadProgress"];function xFn(e){let t,r,n=new ePo.EventEmitter,a=new rPo((l,A,f)=>{let I=C=>{let b=new DFn.default(void 0,e);b.retryCount=C,b._noPipe=!0,f(()=>b.destroy()),f.shouldReject=!1,f(()=>A(new Vgt.CancelError(b))),t=b,b.once("response",async B=>{var F;if(B.retryCount=C,B.request.aborted)return;let Q;try{Q=await iPo.default(b),B.rawBody=Q}catch{return}if(b._isAboutToError)return;let X=((F=B.headers["content-encoding"])!==null&&F!==void 0?F:"").toLowerCase(),ae=["gzip","deflate","br"].includes(X),{options:ne}=b;if(ae&&!ne.decompress)B.body=Q;else try{B.body=NFn.default(B,ne.responseType,ne.parseJson,ne.encoding)}catch(ce){if(B.body=Q.toString(),kFn.isResponseOk(B)){b._beforeError(ce);return}}try{for(let[ce,fe]of ne.hooks.afterResponse.entries())B=await fe(B,async ue=>{let de=DFn.default.normalizeArguments(void 0,{...ue,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ne);de.hooks.afterResponse=de.hooks.afterResponse.slice(0,ce);for(let Se of de.hooks.beforeRetry)await Se(de);let be=xFn(de);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ce){b._beforeError(new Vgt.RequestError(ce.message,ce,b));return}if(r=B,!kFn.isResponseOk(B)){b._beforeError(new Vgt.HTTPError(B));return}b.destroy(),l(b.options.resolveBodyOnly?B.body:B)});let E=B=>{if(a.isCanceled)return;let{options:F}=b;if(B instanceof Vgt.HTTPError&&!F.throwHttpErrors){let{response:Q}=B;l(b.options.resolveBodyOnly?Q.body:Q);return}A(B)};b.once("error",E);let N=b.options.body;b.once("retry",(B,F)=>{var Q,X;if(N===((Q=F.request)===null||Q===void 0?void 0:Q.options.body)&&tPo.default.nodeStream((X=F.request)===null||X===void 0?void 0:X.options.body)){E(F);return}I(B)}),nPo.default(b,n,sPo)};I(0)});a.on=(l,A)=>(n.on(l,A),a);let o=l=>{let A=(async()=>{await a;let{options:f}=r.request;return NFn.default(r,l,f.parseJson,f.encoding)})();return Object.defineProperties(A,Object.getOwnPropertyDescriptors(a)),A};return a.json=()=>{let{headers:l}=t.options;return!t.writableFinished&&l.accept===void 0&&(l.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}Soe.default=xFn;$Vo(A5e(),Soe)});var GFn=H(Ogr=>{"use strict";Object.defineProperty(Ogr,"__esModule",{value:!0});var oPo=A5e();function aPo(e,...t){let r=(async()=>{if(e instanceof oPo.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),n=()=>r;return r.json=n,r.text=n,r.buffer=n,r.on=n,r}Ogr.default=aPo});var LFn=H(Mgr=>{"use strict";Object.defineProperty(Mgr,"__esModule",{value:!0});var FFn=o$();function ZFn(e){for(let t of Object.values(e))(FFn.default.plainObject(t)||FFn.default.array(t))&&ZFn(t);return Object.freeze(e)}Mgr.default=ZFn});var PFn=H(VFn=>{"use strict";Object.defineProperty(VFn,"__esModule",{value:!0})});var Hgr=H(lM=>{"use strict";var cPo=lM&&lM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lPo=lM&&lM.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&cPo(t,e,r)};Object.defineProperty(lM,"__esModule",{value:!0});lM.defaultHandler=void 0;var WFn=o$(),cM=Wgr(),uPo=GFn(),Wgt=g5e(),gPo=LFn(),APo={RequestError:cM.RequestError,CacheError:cM.CacheError,ReadError:cM.ReadError,HTTPError:cM.HTTPError,MaxRedirectsError:cM.MaxRedirectsError,TimeoutError:cM.TimeoutError,ParseError:cM.ParseError,CancelError:cM.CancelError,UnsupportedProtocolError:cM.UnsupportedProtocolError,UploadError:cM.UploadError},dPo=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:Pgt}=Wgt.default,OFn=(...e)=>{let t;for(let r of e)t=Pgt(void 0,r,t);return t},pPo=e=>e.isStream?new Wgt.default(void 0,e):cM.default(e),fPo=e=>"defaults"in e&&"options"in e.defaults,IPo=["get","post","put","patch","head","delete"];lM.defaultHandler=(e,t)=>t(e);var MFn=(e,t)=>{if(e)for(let r of e)r(t)},HFn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(n=>(a,o)=>{let l,A=n(a,f=>(l=o(f),l));if(A!==l&&!a.isStream&&l){let f=A,{then:I,catch:C,finally:b}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(l)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(l)),f.then=I,f.catch=C,f.finally=b}return A});let t=(n,a={},o)=>{var l,A;let f=0,I=C=>e.handlers[f++](C,f===e.handlers.length?pPo:I);if(WFn.default.plainObject(n)){let C={...n,...a};Wgt.setNonEnumerableProperties([n,a],C),a=C,n=void 0}try{let C;try{MFn(e.options.hooks.init,a),MFn((l=a.hooks)===null||l===void 0?void 0:l.init,a)}catch(E){C=E}let b=Pgt(n,a,o??e.options);if(b[Wgt.kIsNormalizedAlready]=!0,C)throw new cM.RequestError(C.message,C,b);return I(b)}catch(C){if(a.isStream)throw C;return uPo.default(C,e.options.hooks.beforeError,(A=a.hooks)===null||A===void 0?void 0:A.beforeError)}};t.extend=(...n)=>{let a=[e.options],o=[...e._rawHandlers],l;for(let A of n)fPo(A)?(a.push(A.defaults.options),o.push(...A.defaults._rawHandlers),l=A.defaults.mutableDefaults):(a.push(A),"handlers"in A&&o.push(...A.handlers),l=A.mutableDefaults);return o=o.filter(A=>A!==lM.defaultHandler),o.length===0&&o.push(lM.defaultHandler),HFn({options:OFn(...a),handlers:o,mutableDefaults:!!l})};let r=async function*(n,a){let o=Pgt(n,a,e.options);o.resolveBodyOnly=!1;let l=o.pagination;if(!WFn.default.object(l))throw new TypeError("`options.pagination` must be implemented");let A=[],{countLimit:f}=l,I=0;for(;I{let o=[];for await(let l of r(n,a))o.push(l);return o},t.paginate.each=r,t.stream=(n,a)=>t(n,{...a,isStream:!0});for(let n of IPo)t[n]=(a,o)=>t(a,{...o,method:n}),t.stream[n]=(a,o)=>t(a,{...o,method:n,isStream:!0});return Object.assign(t,APo),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:gPo.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=OFn,t};lM.default=HFn;lPo(PFn(),lM)});var XFn=H((a$,Ogt)=>{"use strict";var hPo=a$&&a$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YFn=a$&&a$.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&hPo(t,e,r)};Object.defineProperty(a$,"__esModule",{value:!0});var mPo=wt("url"),QFn=Hgr(),CPo={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let n of t){let a=n.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new mPo.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[QFn.defaultHandler],mutableDefaults:!1},Ygr=QFn.default(CPo);a$.default=Ygr;Ogt.exports=Ygr;Ogt.exports.default=Ygr;Ogt.exports.__esModule=!0;YFn(Hgr(),a$);YFn(Wgr(),a$)});var Ygt=H(UK=>{"use strict";Object.defineProperty(UK,"__esModule",{value:!0});UK.Method=void 0;UK.getNetworkSettings=qFn;UK.request=d5e;UK.get=BPo;UK.put=wPo;UK.post=TPo;UK.del=RPo;var Mgt=(Pa(),vi(Va)),_Po=ro(),JFn=Sxn(),yPo=wt("https"),bPo=wt("http"),jFn=Mgt.__importDefault(Ek()),voe=M9(),Xgr=sM(),kE=Mgt.__importStar(rM()),zFn=Mgt.__importStar(xW()),UFn=new Map,KFn=new Map,EPo=new bPo.Agent({keepAlive:!0}),SPo=new yPo.Agent({keepAlive:!0});async function Qgr(e){return zFn.getFactoryWithDefault(KFn,e,()=>_Po.xfs.readFilePromise(e).then(t=>(KFn.set(e,t),t)))}function vPo({statusCode:e,statusMessage:t},r){let n=kE.pretty(r,e,kE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return kE.applyHyperlink(r,`${n}${t?` (${t})`:""}`,a)}async function Hgt(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(n){if(n.name!=="HTTPError")throw n;let a=r?.(n,t)??n.response.body?.error;a==null&&(n.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=n.message),n.code==="ETIMEDOUT"&&n.event==="socket"&&(a+=`(can be increased via ${kE.pretty(t,"httpTimeout",kE.Type.SETTING)})`);let o=new Xgr.ReportError(voe.MessageName.NETWORK_ERROR,a,l=>{n.response&&l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Response Code",value:kE.tuple(kE.Type.NO_HINT,vPo(n.response,t))})}`),n.request&&(l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Method",value:kE.tuple(kE.Type.NO_HINT,n.request.options.method)})}`),l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request URL",value:kE.tuple(kE.Type.URL,n.request.requestUrl)})}`)),n.request.redirects.length>0&&l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Redirects",value:kE.tuple(kE.Type.NO_HINT,kE.prettyList(t,n.request.redirects,kE.Type.URL))})}`),n.request.retryCount===n.request.options.retry.limit&&l.reportError(voe.MessageName.NETWORK_ERROR,` ${kE.prettyField(t,{label:"Request Retry Count",value:kE.tuple(kE.Type.NO_HINT,`${kE.pretty(t,n.request.retryCount,kE.Type.NUMBER)} (can be increased via ${kE.pretty(t,"httpRetry",kE.Type.SETTING)})`)})}`)});throw o.originalError=n,o}}function qFn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([l],[A])=>A.length-l.length),n={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(n),o=typeof e=="string"?new URL(e):e;for(let[l,A]of r)if(jFn.default.isMatch(o.hostname,l))for(let f of a){let I=A.get(f);I!==null&&typeof n[f]>"u"&&(n[f]=I)}for(let l of a)typeof n[l]>"u"&&(n[l]=t.configuration.get(l));return n}var eIe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(eIe||(UK.Method=eIe={}));async function d5e(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=eIe.GET,wrapNetworkRequest:A}){let f={target:e,body:t,configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l},I=async()=>await NPo(e,t,f),C=typeof A<"u"?await A(I,f):I;return await(await r.reduceHook(E=>E.wrapNetworkRequest,C,f))()}async function BPo(e,{configuration:t,jsonResponse:r,customErrorMessage:n,wrapNetworkRequest:a,...o}){let l=()=>Hgt(d5e(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:n}).then(f=>f.body),A=await(typeof a<"u"?l():zFn.getFactoryWithDefault(UFn,e,()=>l().then(f=>(UFn.set(e,f),f))));return r?JSON.parse(A.toString()):A}async function wPo(e,t,{customErrorMessage:r,...n}){return(await Hgt(d5e(e,t,{...n,method:eIe.PUT}),{customErrorMessage:r,configuration:n.configuration})).body}async function TPo(e,t,{customErrorMessage:r,...n}){return(await Hgt(d5e(e,t,{...n,method:eIe.POST}),{customErrorMessage:r,configuration:n.configuration})).body}async function RPo(e,{customErrorMessage:t,...r}){return(await Hgt(d5e(e,null,{...r,method:eIe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function NPo(e,t,{configuration:r,headers:n,jsonRequest:a,jsonResponse:o,method:l=eIe.GET}){let A=typeof e=="string"?new URL(e):e,f=qFn(A,{configuration:r});if(f.enableNetwork===!1)throw new Xgr.ReportError(voe.MessageName.NETWORK_DISABLED,`Request to '${A.href}' has been blocked because of your configuration settings`);if(A.protocol==="http:"&&!jFn.default.isMatch(A.hostname,r.get("unsafeHttpWhitelist")))throw new Xgr.ReportError(voe.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${A.hostname})`);let I={headers:n,method:l};I.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?I.body=t:I.json=t);let C=r.get("httpTimeout"),b=r.get("httpRetry"),E=r.get("enableStrictSsl"),N=f.httpsCaFilePath,B=f.httpsCertFilePath,F=f.httpsKeyFilePath,{default:Q}=await Promise.resolve().then(()=>Mgt.__importStar(XFn())),X=N?await Qgr(N):void 0,ae=B?await Qgr(B):void 0,ne=F?await Qgr(F):void 0,ce={rejectUnauthorized:E,ca:X,cert:ae,key:ne},fe={http:f.httpProxy?new JFn.HttpProxyAgent({proxy:f.httpProxy,proxyRequestOptions:ce}):EPo,https:f.httpsProxy?new JFn.HttpsProxyAgent({proxy:f.httpsProxy,proxyRequestOptions:ce}):SPo},ue=Q.extend({timeout:{socket:C},retry:b,agent:fe,https:{rejectUnauthorized:E,certificateAuthority:X,certificate:ae,key:ne},...I});return r.getLimit("networkConcurrency")(()=>ue(A))}});var Qgt=H(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.openUrl=lX.major=void 0;lX.getArchitecture=Kgr;lX.getArchitectureName=GPo;lX.getArchitectureSet=FPo;lX.getCaller=PPo;lX.availableParallelism=WPo;var Ugr=(Pa(),vi(Va)),nZn=ro(),Jgr=Ugr.__importDefault(wt("os")),DPo=Ugr.__importStar(Xgt()),$Fn=Ugr.__importStar(xW());lX.major=Number(process.versions.node.split(".")[0]);var eZn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);lX.openUrl=typeof eZn<"u"?async e=>{try{return await DPo.execvp(eZn,[e],{cwd:nZn.ppath.cwd()}),!0}catch{return!1}}:void 0;var kPo="/usr/bin/ldd";function xPo(){if(process.platform!=="linux")return null;let e;try{e=nZn.xfs.readFileSync(kPo)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("GNU libc")||e.includes("GNU C Library")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],n=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return $Fn.mapAndFind(r,a=>{let o=a.match(n);if(!o)return $Fn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var tZn,rZn;function Kgr(){return tZn=tZn??{os:(process.env.YARN_IS_TEST_ENV?process.env.YARN_OS_OVERRIDE:void 0)??process.platform,cpu:(process.env.YARN_IS_TEST_ENV?process.env.YARN_CPU_OVERRIDE:void 0)??process.arch,libc:(process.env.YARN_IS_TEST_ENV?process.env.YARN_LIBC_OVERRIDE:void 0)??xPo()}}function GPo(e=Kgr()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function FPo(){let e=Kgr();return rZn=rZn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var ZPo=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,LPo=/\((\S*)(?::(\d+))(?::(\d+))\)/;function VPo(e){let t=ZPo.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,a=LPo.exec(t[2]);return n&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function PPo(){let t=new Error().stack.split(` -`)[3];return VPo(t)}function WPo(){return typeof Jgr.default.availableParallelism<"u"?Jgr.default.availableParallelism():Math.max(1,Jgr.default.cpus().length)}});var f5e=H(Zm=>{"use strict";Object.defineProperty(Zm,"__esModule",{value:!0});Zm.Configuration=Zm.coreDefinitions=Zm.WindowsLinkType=Zm.DurationUnit=Zm.FormatType=Zm.SettingsType=Zm.SECRET=Zm.DEFAULT_RC_FILENAME=Zm.ENVIRONMENT_PREFIX=Zm.TAG_REGEXP=Zm.LEGACY_PLUGINS=void 0;var gX=(Pa(),vi(Va)),Gf=ro(),Jgt=TW(),OPo=gX.__importDefault(ASn()),bve=Nfe(),uX=($c(),vi(rg)),MPo=_Sn(),HPo=wt("module"),YPo=gX.__importDefault(Dfe()),iZn=wt("stream"),QPo=rxn(),XPo=uve(),JPo=Cur(),UPo=yur(),KPo=vur(),jPo=pxn(),zPo=wur(),qPo=Kfe(),Boe=gX.__importStar(Cxn()),Kgt=gX.__importStar(ggt()),tb=gX.__importStar(rM()),$Po=gX.__importStar(moe()),eWo=gX.__importStar(Ygt()),UN=gX.__importStar(xW()),aZn=gX.__importStar(Qgt()),Ugt=gX.__importStar(n$()),TZ=gX.__importStar(uG()),uM=Qfe(),tWo=function(){if(!bve.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=Gf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=Gf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();Zm.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var rWo=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","osOverride","cpuOverride","libcOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);Zm.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;Zm.ENVIRONMENT_PREFIX="yarn_";Zm.DEFAULT_RC_FILENAME=".yarnrc.yml";Zm.SECRET="********";var Vl;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.DURATION="DURATION",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(Vl||(Zm.SettingsType=Vl={}));Zm.FormatType=tb.Type;var zgt;(function(e){e.MILLISECONDS="ms",e.SECONDS="s",e.MINUTES="m",e.HOURS="h",e.DAYS="d",e.WEEKS="w"})(zgt||(Zm.DurationUnit=zgt={}));var sZn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(sZn||(Zm.WindowsLinkType=sZn={}));Zm.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Vl.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Vl.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Vl.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:Vl.ABSOLUTE_PATH,default:Kgt.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:Vl.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Vl.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Vl.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:Vl.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Vl.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Vl.STRING,default:zgr()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Vl.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:Vl.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Vl.BOOLEAN,default:tb.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Vl.BOOLEAN,default:tb.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Vl.BOOLEAN,default:bve.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Vl.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Vl.BOOLEAN,default:!bve.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Vl.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:Vl.BOOLEAN,default:!bve.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Vl.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Vl.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Vl.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Vl.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Vl.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Vl.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:Vl.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:Vl.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Vl.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:Vl.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:Vl.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Vl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Vl.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Vl.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request",type:Vl.DURATION,unit:zgt.MILLISECONDS,default:"1m"},httpRetry:{description:"Retry times on http failure",type:Vl.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Vl.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:Vl.NUMBER,default:aZn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:Vl.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Vl.MAP,valueDefinition:{description:"",type:Vl.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Vl.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Vl.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Vl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Vl.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Vl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Vl.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Vl.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Vl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Vl.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Vl.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Vl.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Vl.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Vl.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:Vl.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Vl.STRING,values:Object.values(tb.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Vl.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads",type:Vl.DURATION,unit:zgt.DAYS,default:"7d"},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Vl.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:Vl.BOOLEAN,default:bve.isPR&&tWo,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Vl.BOOLEAN,default:!1},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:Vl.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Vl.BOOLEAN,default:!1},enableCacheClean:{description:"If false, disallows the `cache clean` command",type:Vl.BOOLEAN,default:!0},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Vl.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:Vl.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Vl.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Vl.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Vl.MAP,valueDefinition:{description:"A range",type:Vl.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Vl.MAP,valueDefinition:{description:"A semver range",type:Vl.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Vl.MAP,valueDefinition:{description:"The peerDependency meta",type:Vl.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Vl.BOOLEAN,default:!1}}}}}}}};function qgr(e,t,r,n,a){let o=Boe.getValue(r);if(n.isArray||n.type===Vl.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((l,A)=>jgr(e,`${t}[${A}]`,l,n,a)):String(o).split(/,/).map(l=>jgr(e,t,l,n,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return jgr(e,t,r,n,a)}function jgr(e,t,r,n,a){let o=Boe.getValue(r);switch(n.type){case Vl.ANY:return Boe.getValueByTree(o);case Vl.SHAPE:return nWo(e,t,r,n,a);case Vl.MAP:return iWo(e,t,r,n,a)}if(o===null&&!n.isNullable&&n.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if("values"in n&&n.values?.includes(o))return o;let A=(()=>{if(n.type===Vl.BOOLEAN&&typeof o!="string")return UN.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=UN.replaceEnvVariables(o,{env:e.env});switch(n.type){case Vl.ABSOLUTE_PATH:{let I=a,C=Boe.getSource(r);return C&&C[0]!=="<"&&(I=Gf.ppath.dirname(C)),Gf.ppath.resolve(I,Gf.npath.toPortablePath(f))}case Vl.LOCATOR_LOOSE:return TZ.parseLocator(f,!1);case Vl.NUMBER:return parseInt(f);case Vl.LOCATOR:return TZ.parseLocator(f);case Vl.BOOLEAN:return UN.parseBoolean(f);case Vl.DURATION:return UN.parseDuration(f,n.unit);default:return f}})();if("values"in n&&n.values&&!n.values.includes(A))throw new Error(`Invalid value, expected one of ${n.values.join(", ")}`);return A}function nWo(e,t,r,n,a){let o=Boe.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new uX.UsageError(`Object configuration settings "${t}" must be an object`);let l=$gr(e,n,{ignoreArrays:!0});if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=`${t}.${A}`;if(!n.properties[A])throw new uX.UsageError(`Unrecognized configuration settings found: ${t}.${A} - run "yarn config" to see the list of settings supported in Yarn`);l.set(A,qgr(e,I,f,n.properties[A],a))}return l}function iWo(e,t,r,n,a){let o=Boe.getValue(r),l=new Map;if(typeof o!="object"||Array.isArray(o))throw new uX.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return l;for(let[A,f]of Object.entries(o)){let I=n.normalizeKeys?n.normalizeKeys(A):A,C=`${t}['${I}']`,b=n.valueDefinition;l.set(I,qgr(e,C,f,b,a))}return l}function $gr(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case Vl.SHAPE:{if(t.isArray&&!r)return[];let n=new Map;for(let[a,o]of Object.entries(t.properties))n.set(a,$gr(e,o));return n}case Vl.MAP:return t.isArray&&!r?[]:new Map;case Vl.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(n=>Gf.ppath.normalize(n)):Gf.ppath.isAbsolute(t.default)?Gf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(n=>Gf.ppath.resolve(e.projectCwd,n)):Gf.ppath.resolve(e.projectCwd,t.default);case Vl.DURATION:return UN.parseDuration(t.default,t.unit);default:return t.default}}function jgt(e,t,r){if(t.type===Vl.SECRET&&typeof e=="string"&&r.hideSecrets)return Zm.SECRET;if(t.type===Vl.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return Gf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let n=[];for(let a of e)n.push(jgt(a,t,r));return n}if(t.type===Vl.MAP&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=jgt(o,t.valueDefinition,r);typeof l<"u"&&n.set(a,l)}return n}if(t.type===Vl.SHAPE&&e instanceof Map){if(e.size===0)return;let n=new Map;for(let[a,o]of e.entries()){let l=t.properties[a],A=jgt(o,l,r);typeof A<"u"&&n.set(a,A)}return n}return e}function sWo(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(Zm.ENVIRONMENT_PREFIX)&&(t=(0,OPo.default)(t.slice(Zm.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function zgr(){let e=`${Zm.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return Zm.DEFAULT_RC_FILENAME}async function oZn(e){try{return await Gf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function oWo(e,t){return Buffer.compare(...await Promise.all([oZn(e),oZn(t)]))===0}async function aWo(e,t){let[r,n]=await Promise.all([Gf.xfs.statPromise(e),Gf.xfs.statPromise(t)]);return r.dev===n.dev&&r.ino===n.ino}var cWo=process.platform==="win32"?oWo:aWo;async function lWo({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await cWo(r,t)?null:r}var p5e=class e{static create(t,r,n){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(Zm.coreDefinitions);let o=typeof n<"u"?n:r instanceof Map?r:new Map;for(let[l,A]of o)a.activatePlugin(l,A);return a}static async find(t,r,{strict:n=!0,usePathCheck:a=null,useRc:o=!0}={}){let l=sWo();delete l.rcFilename;let A=new e(t),f=await e.findRcFiles(t),I=await e.findFolderRcFile(Kgt.getHomeFolder());I&&(f.find(de=>de.path===I.path)||f.unshift(I));let C=Boe.resolveRcFiles(f.map(ue=>[ue.path,ue.data])),b=Gf.PortablePath.dot,E=new Set(Object.keys(Zm.coreDefinitions)),N=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be})=>({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be}),B=({yarnPath:ue,ignorePath:de,injectEnvironmentFiles:be,...Se})=>{let De={};for(let[k,et]of Object.entries(Se))E.has(k)&&(De[k]=et);return De},F=({yarnPath:ue,ignorePath:de,...be})=>{let Se={};for(let[De,k]of Object.entries(be))E.has(De)||(Se[De]=k);return Se};if(A.importSettings(N(Zm.coreDefinitions)),A.useWithSource("",N(l),t,{strict:!1}),C){let[ue,de]=C;A.useWithSource(ue,N(de),b,{strict:!1})}if(a){if(await lWo({configuration:A,selfPath:a})!==null)return A;A.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let Q=await e.findProjectCwd(t);A.startingCwd=t,A.projectCwd=Q;let X=Object.assign(Object.create(null),process.env);A.env=X;let ae=await Promise.all(A.get("injectEnvironmentFiles").map(async ue=>{let de=ue.endsWith("?")?await Gf.xfs.readFilePromise(ue.slice(0,-1),"utf8").catch(()=>""):await Gf.xfs.readFilePromise(ue,"utf8");return(0,MPo.parse)(de)}));for(let ue of ae)for(let[de,be]of Object.entries(ue))A.env[de]=UN.replaceEnvVariables(be,{env:X});if(A.importSettings(B(Zm.coreDefinitions)),A.useWithSource("",B(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,B(de),b,{strict:n})}let ne=ue=>"default"in ue?ue.default:ue,ce=new Map([["@@core",QPo.CorePlugin]]);if(r!==null)for(let ue of r.plugins.keys())ce.set(ue,ne(r.modules.get(ue)));for(let[ue,de]of ce)A.activatePlugin(ue,de);let fe=new Map([]);if(r!==null){let ue=new Map;for(let[Se,De]of r.modules)ue.set(Se,()=>De);let de=new Set,be=async(Se,De)=>{let{factory:k,name:et}=UN.dynamicRequire(Se);if(!k||de.has(et))return;let ct=new Map(ue),Me=St=>{if((0,HPo.isBuiltin)(St))return UN.dynamicRequire(St);if(ct.has(St))return ct.get(St)();throw new uX.UsageError(`This plugin cannot access the package referenced via ${St} which is neither a builtin, nor an exposed entry`)},je=await UN.prettifyAsyncErrors(async()=>ne(await k(Me)),St=>`${St} (when initializing ${et}, defined in ${De})`);ue.set(et,()=>je),de.add(et),fe.set(et,je)};if(l.plugins)for(let Se of l.plugins.split(";")){let De=Gf.ppath.resolve(t,Gf.npath.toPortablePath(Se));await be(De,"")}for(let{path:Se,cwd:De,data:k}of f)if(o&&Array.isArray(k.plugins))for(let et of k.plugins){let ct=typeof et!="string"?et.path:et,Me=et?.spec??"",je=et?.checksum??"";if(Zm.LEGACY_PLUGINS.has(Me))continue;let St=Gf.ppath.resolve(De,Gf.npath.toPortablePath(ct));if(!await Gf.xfs.existsPromise(St)){if(!Me){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,".gitignore",tb.Type.NAME),er=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME),vt=tb.pretty(A,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",tb.Type.URL);throw new uX.UsageError(`Missing source for the ${Tr} plugin - please try to remove the plugin from ${er} then reinstall it manually. This error usually occurs because ${Nr} is incorrect, check ${vt} to make sure your plugin folder isn't gitignored.`)}if(!Me.match(/^https?:/)){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME);throw new uX.UsageError(`Failed to recognize the source for the ${Tr} plugin - please try to delete the plugin from ${Nr} then reinstall it manually.`)}let At=await eWo.get(Me,{configuration:A}),Yt=$Po.makeHash(At);if(je&&je!==Yt){let Tr=tb.pretty(A,Gf.ppath.basename(St,".cjs"),tb.Type.NAME),Nr=tb.pretty(A,A.values.get("rcFilename"),tb.Type.NAME),er=tb.pretty(A,`yarn plugin import ${Me}`,tb.Type.CODE);throw new uX.UsageError(`Failed to fetch the ${Tr} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Nr} then run ${er} to reimport it.`)}await Gf.xfs.mkdirPromise(Gf.ppath.dirname(St),{recursive:!0}),await Gf.xfs.writeFilePromise(St,At)}await be(St,Se)}}for(let[ue,de]of fe)A.activatePlugin(ue,de);if(A.useWithSource("",F(l),t,{strict:n}),C){let[ue,de]=C;A.useWithSource(ue,F(de),b,{strict:n})}return A.get("enableGlobalCache")&&(A.values.set("cacheFolder",`${A.get("globalFolder")}/cache`),A.sources.set("cacheFolder","")),A}static async findRcFiles(t){let r=zgr(),n=[],a=t,o=null;for(;a!==o;){o=a;let l=Gf.ppath.join(o,r);if(Gf.xfs.existsSync(l)){let A,f;try{f=await Gf.xfs.readFilePromise(l,"utf8"),A=(0,Jgt.parseSyml)(f)}catch{let I="";throw f?.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(I=" (in particular, make sure you list the colons after each key name)"),new uX.UsageError(`Parse error when loading ${l}; please check it's proper Yaml${I}`)}n.unshift({path:l,cwd:o,data:A})}a=Gf.ppath.dirname(o)}return n}static async findFolderRcFile(t){let r=Gf.ppath.join(t,Gf.Filename.rc),n;try{n=await Gf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,Jgt.parseSyml)(n);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,n=t,a=null;for(;n!==a;){if(a=n,Gf.xfs.existsSync(Gf.ppath.join(a,Gf.Filename.lockfile)))return a;Gf.xfs.existsSync(Gf.ppath.join(a,Gf.Filename.manifest))&&(r=a),n=Gf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,n={}){let a=zgr(),o=Gf.ppath.join(t,a),l=Gf.xfs.existsSync(o)?(0,Jgt.parseSyml)(await Gf.xfs.readFilePromise(o,"utf8")):{},A=!1,f;if(typeof r=="function"){try{f=r(l)}catch{f=r({})}if(f===l)return!1}else{f=l;for(let I of Object.keys(r)){let C=l[I],b=r[I],E;if(typeof b=="function")try{E=b(C)}catch{E=b(void 0)}else E=b;C!==E&&(E===e.deleteProperty?delete f[I]:f[I]=E,A=!0)}if(!A)return!1}return await Gf.xfs.changeFilePromise(o,(0,Jgt.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,n=>{let a=n.plugins??[];if(a.length===0)return{...n,plugins:r};let o=[],l=[...r];for(let A of a){let f=typeof A!="string"?A.path:A,I=l.find(C=>C.path===f);I?(o.push(I),l=l.filter(C=>C!==I)):o.push(A)}return o.push(...l),{...n,plugins:o}})}static async updateHomeConfiguration(t){let r=Kgt.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=bve.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,n]of Object.entries(t))if(n!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,n),this.values.set(r,$gr(this,n))}}useWithSource(t,r,n,a){try{this.use(t,r,n,a)}catch(o){throw o.message+=` (in ${tb.pretty(this,t,tb.Type.PATH)})`,o}}use(t,r,n,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let l of["enableStrictSettings",...Object.keys(r)]){let A=r[l],f=Boe.getSource(A);if(f&&(t=f),typeof A>"u"||l==="plugins"||t===""&&rWo.has(l))continue;if(l==="rcFilename")throw new uX.UsageError(`The rcFilename settings can only be set via ${`${Zm.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let I=this.settings.get(l);if(!I){let b=Kgt.getHomeFolder(),E=t[0]!=="<"?Gf.ppath.dirname(t):null;if(a&&!(E!==null?b===E:!1))throw new uX.UsageError(`Unrecognized or legacy configuration settings found: ${l} - run "yarn config" to see the list of settings supported in Yarn`);this.invalid.set(l,t);continue}if(this.sources.has(l)&&!(o||I.type===Vl.MAP||I.isArray&&I.concatenateValues))continue;let C;try{C=qgr(this,l,A,I,n)}catch(b){throw b.message+=` in ${tb.pretty(this,t,tb.Type.PATH)}`,b}if(l==="enableStrictSettings"&&t!==""){a=C;continue}if(I.type===Vl.MAP){let b=this.values.get(l);this.values.set(l,new Map(o?[...b,...C]:[...C,...b])),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else if(I.isArray&&I.concatenateValues){let b=this.values.get(l);this.values.set(l,o?[...b,...C]:[...C,...b]),this.sources.set(l,`${this.sources.get(l)}, ${t}`)}else this.values.set(l,C),this.sources.set(l,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:n=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new uX.UsageError(`Couldn't find a configuration settings named "${t}"`);return jgt(a,o,{hideSecrets:r,getNativePaths:n})}getSubprocessStreams(t,{header:r,prefix:n,report:a}){let o,l,A=Gf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${n} ${tb.pretty(this,"STDOUT","green")}`),I=a.createStreamReporter(`${n} ${tb.pretty(this,"STDERR","red")}`);o=new iZn.PassThrough,o.pipe(f),o.pipe(A),l=new iZn.PassThrough,l.pipe(I),l.pipe(A)}else o=A,l=A,typeof r<"u"&&o.write(`${r} -`);return{stdout:o,stderr:l}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new UPo.MultiResolver([new jPo.VirtualResolver,new qPo.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new JPo.MultiFetcher([new KPo.VirtualFetcher,new zPo.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let n of r.linkers||[])t.push(new n);return t}getSupportedArchitectures(){let t=aZn.getArchitecture(),r=this.get("supportedArchitectures"),n=r.get("os");n!==null&&(n=n.map(l=>l==="current"?t.os:l));let a=r.get("cpu");a!==null&&(a=a.map(l=>l==="current"?t.cpu:l));let o=r.get("libc");return o!==null&&(o=UN.mapAndFilter(o,l=>l==="current"?t.libc??UN.mapAndFilter.skip:l)),{os:n,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(n,a,{userProvided:o=!1}={})=>{if(!Ugt.validRange(n.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let l=new XPo.Manifest;l.load(a,{yamlCompatibilityMode:!0});let A=UN.getArrayWithDefault(t,n.identHash),f=[];A.push([n.range,f]);let I={status:uM.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:n};for(let C of l.dependencies.values())f.push({...I,type:uM.PackageExtensionType.Dependency,descriptor:C});for(let C of l.peerDependencies.values())f.push({...I,type:uM.PackageExtensionType.PeerDependency,descriptor:C});for(let[C,b]of l.peerDependenciesMeta)for(let[E,N]of Object.entries(b))f.push({...I,type:uM.PackageExtensionType.PeerDependencyMeta,selector:C,key:E,value:N})};await this.triggerHook(n=>n.registerPackageExtensions,this,r);for(let[n,a]of this.get("packageExtensions"))r(TZ.parseDescriptor(n,!0),UN.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return Ugt.validRange(t.reference)?TZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):Zm.TAG_REGEXP.test(t.reference)?TZ.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return Ugt.validRange(t.range)?TZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):Zm.TAG_REGEXP.test(t.range)?TZ.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,n])=>[r,this.normalizeDependency(n)]))}normalizePackage(t,{packageExtensions:r}){let n=TZ.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let l=t.version;if(l!==null){for(let[A,f]of a)if(Ugt.satisfiesWithPrereleases(l,A))for(let I of f)switch(I.status===uM.PackageExtensionStatus.Inactive&&(I.status=uM.PackageExtensionStatus.Redundant),I.type){case uM.PackageExtensionType.Dependency:typeof n.dependencies.get(I.descriptor.identHash)>"u"&&(I.status=uM.PackageExtensionStatus.Active,n.dependencies.set(I.descriptor.identHash,this.normalizeDependency(I.descriptor)));break;case uM.PackageExtensionType.PeerDependency:typeof n.peerDependencies.get(I.descriptor.identHash)>"u"&&(I.status=uM.PackageExtensionStatus.Active,n.peerDependencies.set(I.descriptor.identHash,I.descriptor));break;case uM.PackageExtensionType.PeerDependencyMeta:{let C=n.peerDependenciesMeta.get(I.selector);(typeof C>"u"||!Object.hasOwn(C,I.key)||C[I.key]!==I.value)&&(I.status=uM.PackageExtensionStatus.Active,UN.getFactoryWithDefault(n.peerDependenciesMeta,I.selector,()=>({}))[I.key]=I.value)}break;default:UN.assertNever(I)}}}let o=l=>l.scope?`${l.scope}__${l.name}`:`${l.name}`;for(let l of n.peerDependenciesMeta.keys()){let A=TZ.parseIdent(l);n.peerDependencies.has(A.identHash)||n.peerDependencies.set(A.identHash,TZ.makeDescriptor(A,"*"))}for(let l of n.peerDependencies.values()){if(l.scope==="types")continue;let A=o(l),f=TZ.makeIdent("types",A),I=TZ.stringifyIdent(f);n.peerDependencies.has(f.identHash)||n.peerDependenciesMeta.has(I)||n.dependencies.has(f.identHash)||(n.peerDependencies.set(f.identHash,TZ.makeDescriptor(f,"*")),n.peerDependenciesMeta.set(I,{optional:!0}))}return n.dependencies=new Map(UN.sortMap(n.dependencies,([,l])=>TZ.stringifyDescriptor(l))),n.peerDependencies=new Map(UN.sortMap(n.peerDependencies,([,l])=>TZ.stringifyDescriptor(l))),n}getLimit(t){return UN.getFactoryWithDefault(this.limits,t,()=>(0,YPo.default)(this.get(t)))}async triggerHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let n of r)await this.triggerHook(t,...n)}async reduceHook(t,r,...n){let a=r;for(let o of this.plugins.values()){let l=o.hooks;if(!l)continue;let A=t(l);A&&(a=await A(a,...n))}return a}async firstHook(t,...r){for(let n of this.plugins.values()){let a=n.hooks;if(!a)continue;let o=t(a);if(!o)continue;let l=await o(...r);if(typeof l<"u")return l}return null}};Zm.Configuration=p5e;p5e.deleteProperty=Symbol();p5e.telemetry=null});var Xgt=H(KK=>{"use strict";Object.defineProperty(KK,"__esModule",{value:!0});KK.ExecError=KK.PipeError=KK.EndStrategy=void 0;KK.pipevp=uWo;KK.execvp=gWo;var cZn=(Pa(),vi(Va)),qgt=ro(),lZn=cZn.__importDefault(Zct()),uZn=f5e(),$gt=M9(),gZn=sM(),gM=cZn.__importStar(rM()),nIe;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(nIe||(KK.EndStrategy=nIe={}));var I5e=class extends gZn.ReportError{constructor({fileName:t,code:r,signal:n}){let a=uZn.Configuration.create(qgt.ppath.cwd()),o=gM.pretty(a,t,gM.Type.PATH);super($gt.MessageName.EXCEPTION,`Child ${o} reported an error`,l=>{dWo(r,n,{configuration:a,report:l})}),this.code=rAr(r,n)}};KK.PipeError=I5e;var eAt=class extends I5e{constructor({fileName:t,code:r,signal:n,stdout:a,stderr:o}){super({fileName:t,code:r,signal:n}),this.stdout=a,this.stderr=o}};KK.ExecError=eAt;function tIe(e){return e!==null&&typeof e.fd=="number"}var rIe=new Set;function eAr(){}function tAr(){for(let e of rIe)e.kill()}async function uWo(e,t,{cwd:r,env:n=process.env,strict:a=!1,stdin:o=null,stdout:l,stderr:A,end:f=nIe.Always}){let I=["pipe","pipe","pipe"];o===null?I[0]="ignore":tIe(o)&&(I[0]=o),tIe(l)&&(I[1]=l),tIe(A)&&(I[2]=A);let C=(0,lZn.default)(e,t,{cwd:qgt.npath.fromPortablePath(r),env:{...n,PWD:qgt.npath.fromPortablePath(r)},stdio:I});rIe.add(C),rIe.size===1&&(process.on("SIGINT",eAr),process.on("SIGTERM",tAr)),!tIe(o)&&o!==null&&o.pipe(C.stdin),tIe(l)||C.stdout.pipe(l,{end:!1}),tIe(A)||C.stderr.pipe(A,{end:!1});let b=()=>{for(let E of new Set([l,A]))tIe(E)||E.end()};return new Promise((E,N)=>{C.on("error",B=>{rIe.delete(C),rIe.size===0&&(process.off("SIGINT",eAr),process.off("SIGTERM",tAr)),(f===nIe.Always||f===nIe.ErrorCode)&&b(),N(B)}),C.on("close",(B,F)=>{rIe.delete(C),rIe.size===0&&(process.off("SIGINT",eAr),process.off("SIGTERM",tAr)),(f===nIe.Always||f===nIe.ErrorCode&&B!==0)&&b(),B===0||!a?E({code:rAr(B,F)}):N(new I5e({fileName:e,code:B,signal:F}))})})}async function gWo(e,t,{cwd:r,env:n=process.env,encoding:a="utf8",strict:o=!1}){let l=["ignore","pipe","pipe"],A=[],f=[],I=qgt.npath.fromPortablePath(r);typeof n.PWD<"u"&&(n={...n,PWD:I});let C=(0,lZn.default)(e,t,{cwd:I,env:n,stdio:l});return C.stdout.on("data",b=>{A.push(b)}),C.stderr.on("data",b=>{f.push(b)}),await new Promise((b,E)=>{C.on("error",N=>{let B=uZn.Configuration.create(r),F=gM.pretty(B,e,gM.Type.PATH);E(new gZn.ReportError($gt.MessageName.EXCEPTION,`Process ${F} failed to spawn`,Q=>{Q.reportError($gt.MessageName.EXCEPTION,` ${gM.prettyField(B,{label:"Thrown Error",value:gM.tuple(gM.Type.NO_HINT,N.message)})}`)}))}),C.on("close",(N,B)=>{let F=a==="buffer"?Buffer.concat(A):Buffer.concat(A).toString(a),Q=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);N===0||!o?b({code:rAr(N,B),stdout:F,stderr:Q}):E(new eAt({fileName:e,code:N,signal:B,stdout:F,stderr:Q}))})})}var AWo=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function rAr(e,t){let r=AWo.get(t);return typeof r<"u"?128+r:e??1}function dWo(e,t,{configuration:r,report:n}){n.reportError($gt.MessageName.EXCEPTION,` ${gM.prettyField(r,e!==null?{label:"Exit Code",value:gM.tuple(gM.Type.NUMBER,e)}:{label:"Exit Signal",value:gM.tuple(gM.Type.CODE,t)})}`)}});var nAr=H(jK=>{"use strict";Object.defineProperty(jK,"__esModule",{value:!0});jK.cachedInstance=void 0;jK.setFactory=pWo;jK.getInstance=fWo;jK.tryInstance=IWo;var AZn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function pWo(e){AZn=e}function fWo(){return typeof jK.cachedInstance>"u"&&(jK.cachedInstance=AZn()),jK.cachedInstance}function IWo(){return jK.cachedInstance}});var dZn=H((tAt,sAr)=>{var hWo=Object.assign({},wt("fs")),iAr=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},n,a;r.ready=new Promise(function(Zs,so){n=Zs,a=so});var o={},l;for(l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var A=[],f="./this.program",I=function(Zs,so){throw so},C=!1,b=!0,E="";function N(Zs){return r.locateFile?r.locateFile(Zs,E):E+Zs}var B,F,Q,X;b&&(C?E=wt("path").dirname(E)+"/":E=__dirname+"/",B=function(so,Ea){var Ml=mI(so);return Ml?Ea?Ml:Ml.toString():(Q||(Q=hWo),X||(X=wt("path")),so=X.normalize(so),Q.readFileSync(so,Ea?null:"utf8"))},F=function(so){var Ea=B(so,!0);return Ea.buffer||(Ea=new Uint8Array(Ea)),et(Ea.buffer),Ea},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),A=process.argv.slice(2),I=function(Zs){process.exit(Zs)},r.inspect=function(){return"[Emscripten Module object]"});var ae=r.print||console.log.bind(console),ne=r.printErr||console.warn.bind(console);for(l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);o=null,r.arguments&&(A=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(I=r.quit);var ce=0,fe=function(Zs){ce=Zs},ue;r.wasmBinary&&(ue=r.wasmBinary);var de=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Qi("no native wasm support detected");function be(Zs,so,Ea){switch(so=so||"i8",so.charAt(so.length-1)==="*"&&(so="i32"),so){case"i1":return qt[Zs>>0];case"i8":return qt[Zs>>0];case"i16":return ma((Zs>>1)*2);case"i32":return vu((Zs>>2)*4);case"i64":return vu((Zs>>2)*4);case"float":return Nc((Zs>>2)*4);case"double":return iA((Zs>>3)*8);default:Qi("invalid type for getValue: "+so)}return null}var Se,De=!1,k;function et(Zs,so){Zs||Qi("Assertion failed: "+so)}function ct(Zs){var so=r["_"+Zs];return et(so,"Cannot call unknown function "+Zs+", make sure it is exported"),so}function Me(Zs,so,Ea,Ml,Dr){var Wn={string:function(ef){var ip=0;if(ef!=null&&ef!==0){var _d=(ef.length<<2)+1;ip=np(_d),Tr(ef,ip,_d)}return ip},array:function(ef){var ip=np(ef.length);return vt(ef,ip),ip}};function di(ef){return so==="string"?At(ef):so==="boolean"?!!ef:ef}var aa=ct(Zs),Bo=[],us=0;if(Ml)for(var Ql=0;Ql=Ea)&&Xt[Ml];)++Ml;return St.decode(Xt.subarray(Zs,Ml))}function Yt(Zs,so,Ea,Ml){if(!(Ml>0))return 0;for(var Dr=Ea,Wn=Ea+Ml-1,di=0;di=55296&&aa<=57343){var Bo=Zs.charCodeAt(++di);aa=65536+((aa&1023)<<10)|Bo&1023}if(aa<=127){if(Ea>=Wn)break;so[Ea++]=aa}else if(aa<=2047){if(Ea+1>=Wn)break;so[Ea++]=192|aa>>6,so[Ea++]=128|aa&63}else if(aa<=65535){if(Ea+2>=Wn)break;so[Ea++]=224|aa>>12,so[Ea++]=128|aa>>6&63,so[Ea++]=128|aa&63}else{if(Ea+3>=Wn)break;so[Ea++]=240|aa>>18,so[Ea++]=128|aa>>12&63,so[Ea++]=128|aa>>6&63,so[Ea++]=128|aa&63}}return so[Ea]=0,Ea-Dr}function Tr(Zs,so,Ea){return Yt(Zs,Xt,so,Ea)}function Nr(Zs){for(var so=0,Ea=0;Ea=55296&&Ml<=57343&&(Ml=65536+((Ml&1023)<<10)|Zs.charCodeAt(++Ea)&1023),Ml<=127?++so:Ml<=2047?so+=2:Ml<=65535?so+=3:so+=4}return so}function er(Zs){var so=Nr(Zs)+1,Ea=Ma(so);return Ea&&Yt(Zs,qt,Ea,so),Ea}function vt(Zs,so){qt.set(Zs,so)}function xt(Zs,so){return Zs%so>0&&(Zs+=so-Zs%so),Zs}var Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt;function Fn(Zs){Zr=Zs,r.HEAP_DATA_VIEW=jt=new DataView(Zs),r.HEAP8=qt=new Int8Array(Zs),r.HEAP16=lr=new Int16Array(Zs),r.HEAP32=Ar=new Int32Array(Zs),r.HEAPU8=Xt=new Uint8Array(Zs),r.HEAPU16=cr=new Uint16Array(Zs),r.HEAPU32=qr=new Uint32Array(Zs),r.HEAPF32=_n=new Float32Array(Zs),r.HEAPF64=ke=new Float64Array(Zs)}var Nn=r.INITIAL_MEMORY||16777216,Hi,po=[],Vr=[],xi=[],io=!1;function ga(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)cl(r.preRun.shift());Ei(po)}function Ya(){io=!0,Ei(Vr)}function Gc(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Hr(r.postRun.shift());Ei(xi)}function cl(Zs){po.unshift(Zs)}function Sc(Zs){Vr.unshift(Zs)}function Hr(Zs){xi.unshift(Zs)}var Wr=0,Ft=null,zr=null;function Rn(Zs){Wr++,r.monitorRunDependencies&&r.monitorRunDependencies(Wr)}function Or(Zs){if(Wr--,r.monitorRunDependencies&&r.monitorRunDependencies(Wr),Wr==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),zr)){var so=zr;zr=null,so()}}r.preloadedImages={},r.preloadedAudios={};function Qi(Zs){r.onAbort&&r.onAbort(Zs),Zs+="",ne(Zs),De=!0,k=1,Zs="abort("+Zs+"). Build with -s ASSERTIONS=1 for more info.";var so=new WebAssembly.RuntimeError(Zs);throw a(so),so}var ps="data:application/octet-stream;base64,";function yo(Zs){return Zs.startsWith(ps)}var bo="data:application/octet-stream;base64,AGFzbQEAAAAB/wEkYAN/f38Bf2ABfwF/YAJ/fwF/YAF/AGAEf39/fwF/YAN/f38AYAV/f39/fwF/YAJ/fwBgBH9/f38AYAABf2AFf39/fn8BfmAEf35/fwF/YAR/f35/AX5gAn9+AX9gA398fwBgA39/fgF/YAF/AX5gBn9/f39/fwF/YAN/fn8Bf2AEf39/fwF+YAV/f35/fwF/YAR/f35/AX9gA39/fgF+YAJ/fgBgAn9/AX5gBX9/f39/AGADf35/AX5gBX5+f35/AX5gA39/fwF+YAZ/fH9/f38Bf2AAAGAHf35/f39+fwF/YAV/fn9/fwF/YAV/f39/fwF+YAJ+fwF/YAJ/fAACJQYBYQFhAAMBYQFiAAEBYQFjAAABYQFkAAEBYQFlAAIBYQFmAAED5wHlAQMAAwEDAwEHDAgDFgcNEgEDDRcFAQ8DEAUQAwIBAhgECxkEAQMBBQsFAwMDARACBAMAAggLBwEAAwADGgQDGwYGABwBBgMTFBEHBwcVCx4ABAgHBAICAgAfAQICAgIGFSAAIQAiAAIBBgIHAg0LEw0FAQUCACMDAQAUAAAGBQECBQUDCwsSAgEDBQIHAQEICAACCQQEAQABCAEBCQoBAwkBAQEBBgEGBgYABAIEBAQGEQQEAAARAAEDCQEJAQAJCQkBAQECCgoAAAMPAQEBAwACAgICBQIABwAKBgwHAAADAgICBQEEBQFwAT8/BQcBAYACgIACBgkBfwFBgInBAgsH+gEzAWcCAAFoAFQBaQDqAQFqALsBAWsAwQEBbACpAQFtAKgBAW4ApwEBbwClAQFwAKMBAXEAoAEBcgCbAQFzAMABAXQAugEBdQC5AQF2AEsBdwDiAQF4AMgBAXkAxwEBegDCAQFBAMkBAUIAuAEBQwAGAUQACQFFAKYBAUYAtwEBRwC2AQFIALUBAUkAtAEBSgCzAQFLALIBAUwAsQEBTQCwAQFOAK8BAU8AvAEBUACuAQFRAK0BAVIArAEBUwAaAVQACwFVAKQBAVYAMgFXAQABWACrAQFZAKoBAVoAxgEBXwDFAQEkAMQBAmFhAL8BAmJhAL4BAmNhAL0BCXgBAEEBCz6iAeMBjgGQAVpbjwFYnwGdAVeeAV1coQFZVlWcAZoBmQGYAZcBlgGVAZQBkwGSAZEB6QHoAecB5gHlAeQB4QHfAeAB3gHdAdwB2gHbAYUB2QHYAdcB1gHVAdQB0wHSAdEB0AHPAc4BzQHMAcsBygE4wwEK1N8G5QHMDAEHfwJAIABFDQAgAEEIayIDIABBBGsoAgAiAUF4cSIAaiEFAkAgAUEBcQ0AIAFBA3FFDQEgAyADKAIAIgFrIgNBxIQBKAIASQ0BIAAgAWohACADQciEASgCAEcEQCABQf8BTQRAIAMoAggiAiABQQN2IgRBA3RB3IQBakYaIAIgAygCDCIBRgRAQbSEAUG0hAEoAgBBfiAEd3E2AgAMAwsgAiABNgIMIAEgAjYCCAwCCyADKAIYIQYCQCADIAMoAgwiAUcEQCADKAIIIgIgATYCDCABIAI2AggMAQsCQCADQRRqIgIoAgAiBA0AIANBEGoiAigCACIEDQBBACEBDAELA0AgAiEHIAQiAUEUaiICKAIAIgQNACABQRBqIQIgASgCECIEDQALIAdBADYCAAsgBkUNAQJAIAMgAygCHCICQQJ0QeSGAWoiBCgCAEYEQCAEIAE2AgAgAQ0BQbiEAUG4hAEoAgBBfiACd3E2AgAMAwsgBkEQQRQgBigCECADRhtqIAE2AgAgAUUNAgsgASAGNgIYIAMoAhAiAgRAIAEgAjYCECACIAE2AhgLIAMoAhQiAkUNASABIAI2AhQgAiABNgIYDAELIAUoAgQiAUEDcUEDRw0AQbyEASAANgIAIAUgAUF+cTYCBCADIABBAXI2AgQgACADaiAANgIADwsgAyAFTw0AIAUoAgQiAUEBcUUNAAJAIAFBAnFFBEAgBUHMhAEoAgBGBEBBzIQBIAM2AgBBwIQBQcCEASgCACAAaiIANgIAIAMgAEEBcjYCBCADQciEASgCAEcNA0G8hAFBADYCAEHIhAFBADYCAA8LIAVByIQBKAIARgRAQciEASADNgIAQbyEAUG8hAEoAgAgAGoiADYCACADIABBAXI2AgQgACADaiAANgIADwsgAUF4cSAAaiEAAkAgAUH/AU0EQCAFKAIIIgIgAUEDdiIEQQN0QdyEAWpGGiACIAUoAgwiAUYEQEG0hAFBtIQBKAIAQX4gBHdxNgIADAILIAIgATYCDCABIAI2AggMAQsgBSgCGCEGAkAgBSAFKAIMIgFHBEAgBSgCCCICQcSEASgCAEkaIAIgATYCDCABIAI2AggMAQsCQCAFQRRqIgIoAgAiBA0AIAVBEGoiAigCACIEDQBBACEBDAELA0AgAiEHIAQiAUEUaiICKAIAIgQNACABQRBqIQIgASgCECIEDQALIAdBADYCAAsgBkUNAAJAIAUgBSgCHCICQQJ0QeSGAWoiBCgCAEYEQCAEIAE2AgAgAQ0BQbiEAUG4hAEoAgBBfiACd3E2AgAMAgsgBkEQQRQgBigCECAFRhtqIAE2AgAgAUUNAQsgASAGNgIYIAUoAhAiAgRAIAEgAjYCECACIAE2AhgLIAUoAhQiAkUNACABIAI2AhQgAiABNgIYCyADIABBAXI2AgQgACADaiAANgIAIANByIQBKAIARw0BQbyEASAANgIADwsgBSABQX5xNgIEIAMgAEEBcjYCBCAAIANqIAA2AgALIABB/wFNBEAgAEEDdiIBQQN0QdyEAWohAAJ/QbSEASgCACICQQEgAXQiAXFFBEBBtIQBIAEgAnI2AgAgAAwBCyAAKAIICyECIAAgAzYCCCACIAM2AgwgAyAANgIMIAMgAjYCCA8LQR8hAiADQgA3AhAgAEH///8HTQRAIABBCHYiASABQYD+P2pBEHZBCHEiAXQiAiACQYDgH2pBEHZBBHEiAnQiBCAEQYCAD2pBEHZBAnEiBHRBD3YgASACciAEcmsiAUEBdCAAIAFBFWp2QQFxckEcaiECCyADIAI2AhwgAkECdEHkhgFqIQECQAJAAkBBuIQBKAIAIgRBASACdCIHcUUEQEG4hAEgBCAHcjYCACABIAM2AgAgAyABNgIYDAELIABBAEEZIAJBAXZrIAJBH0YbdCECIAEoAgAhAQNAIAEiBCgCBEF4cSAARg0CIAJBHXYhASACQQF0IQIgBCABQQRxaiIHQRBqKAIAIgENAAsgByADNgIQIAMgBDYCGAsgAyADNgIMIAMgAzYCCAwBCyAEKAIIIgAgAzYCDCAEIAM2AgggA0EANgIYIAMgBDYCDCADIAA2AggLQdSEAUHUhAEoAgBBAWsiAEF/IAAbNgIACwuDBAEDfyACQYAETwRAIAAgASACEAIaIAAPCyAAIAJqIQMCQCAAIAFzQQNxRQRAAkAgAEEDcUUEQCAAIQIMAQsgAkEBSARAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAkEDcUUNASACIANJDQALCwJAIANBfHEiBEHAAEkNACACIARBQGoiBUsNAANAIAIgASgCADYCACACIAEoAgQ2AgQgAiABKAIINgIIIAIgASgCDDYCDCACIAEoAhA2AhAgAiABKAIUNgIUIAIgASgCGDYCGCACIAEoAhw2AhwgAiABKAIgNgIgIAIgASgCJDYCJCACIAEoAig2AiggAiABKAIsNgIsIAIgASgCMDYCMCACIAEoAjQ2AjQgAiABKAI4NgI4IAIgASgCPDYCPCABQUBrIQEgAkFAayICIAVNDQALCyACIARPDQEDQCACIAEoAgA2AgAgAUEEaiEBIAJBBGoiAiAESQ0ACwwBCyADQQRJBEAgACECDAELIAAgA0EEayIESwRAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAiABLQABOgABIAIgAS0AAjoAAiACIAEtAAM6AAMgAUEEaiEBIAJBBGoiAiAETQ0ACwsgAiADSQRAA0AgAiABLQAAOgAAIAFBAWohASACQQFqIgIgA0cNAAsLIAALGgAgAARAIAAtAAEEQCAAKAIEEAYLIAAQBgsLoi4BDH8jAEEQayIMJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEH0AU0EQEG0hAEoAgAiBUEQIABBC2pBeHEgAEELSRsiCEEDdiICdiIBQQNxBEAgAUF/c0EBcSACaiIDQQN0IgFB5IQBaigCACIEQQhqIQACQCAEKAIIIgIgAUHchAFqIgFGBEBBtIQBIAVBfiADd3E2AgAMAQsgAiABNgIMIAEgAjYCCAsgBCADQQN0IgFBA3I2AgQgASAEaiIBIAEoAgRBAXI2AgQMDQsgCEG8hAEoAgAiCk0NASABBEACQEECIAJ0IgBBACAAa3IgASACdHEiAEEAIABrcUEBayIAIABBDHZBEHEiAnYiAUEFdkEIcSIAIAJyIAEgAHYiAUECdkEEcSIAciABIAB2IgFBAXZBAnEiAHIgASAAdiIBQQF2QQFxIgByIAEgAHZqIgNBA3QiAEHkhAFqKAIAIgQoAggiASAAQdyEAWoiAEYEQEG0hAEgBUF+IAN3cSIFNgIADAELIAEgADYCDCAAIAE2AggLIARBCGohACAEIAhBA3I2AgQgBCAIaiICIANBA3QiASAIayIDQQFyNgIEIAEgBGogAzYCACAKBEAgCkEDdiIBQQN0QdyEAWohB0HIhAEoAgAhBAJ/IAVBASABdCIBcUUEQEG0hAEgASAFcjYCACAHDAELIAcoAggLIQEgByAENgIIIAEgBDYCDCAEIAc2AgwgBCABNgIIC0HIhAEgAjYCAEG8hAEgAzYCAAwNC0G4hAEoAgAiBkUNASAGQQAgBmtxQQFrIgAgAEEMdkEQcSICdiIBQQV2QQhxIgAgAnIgASAAdiIBQQJ2QQRxIgByIAEgAHYiAUEBdkECcSIAciABIAB2IgFBAXZBAXEiAHIgASAAdmpBAnRB5IYBaigCACIBKAIEQXhxIAhrIQMgASECA0ACQCACKAIQIgBFBEAgAigCFCIARQ0BCyAAKAIEQXhxIAhrIgIgAyACIANJIgIbIQMgACABIAIbIQEgACECDAELCyABIAhqIgkgAU0NAiABKAIYIQsgASABKAIMIgRHBEAgASgCCCIAQcSEASgCAEkaIAAgBDYCDCAEIAA2AggMDAsgAUEUaiICKAIAIgBFBEAgASgCECIARQ0EIAFBEGohAgsDQCACIQcgACIEQRRqIgIoAgAiAA0AIARBEGohAiAEKAIQIgANAAsgB0EANgIADAsLQX8hCCAAQb9/Sw0AIABBC2oiAEF4cSEIQbiEASgCACIJRQ0AQQAgCGshAwJAAkACQAJ/QQAgCEGAAkkNABpBHyAIQf///wdLDQAaIABBCHYiACAAQYD+P2pBEHZBCHEiAnQiACAAQYDgH2pBEHZBBHEiAXQiACAAQYCAD2pBEHZBAnEiAHRBD3YgASACciAAcmsiAEEBdCAIIABBFWp2QQFxckEcagsiBUECdEHkhgFqKAIAIgJFBEBBACEADAELQQAhACAIQQBBGSAFQQF2ayAFQR9GG3QhAQNAAkAgAigCBEF4cSAIayIHIANPDQAgAiEEIAciAw0AQQAhAyACIQAMAwsgACACKAIUIgcgByACIAFBHXZBBHFqKAIQIgJGGyAAIAcbIQAgAUEBdCEBIAINAAsLIAAgBHJFBEBBAiAFdCIAQQAgAGtyIAlxIgBFDQMgAEEAIABrcUEBayIAIABBDHZBEHEiAnYiAUEFdkEIcSIAIAJyIAEgAHYiAUECdkEEcSIAciABIAB2IgFBAXZBAnEiAHIgASAAdiIBQQF2QQFxIgByIAEgAHZqQQJ0QeSGAWooAgAhAAsgAEUNAQsDQCAAKAIEQXhxIAhrIgEgA0khAiABIAMgAhshAyAAIAQgAhshBCAAKAIQIgEEfyABBSAAKAIUCyIADQALCyAERQ0AIANBvIQBKAIAIAhrTw0AIAQgCGoiBiAETQ0BIAQoAhghBSAEIAQoAgwiAUcEQCAEKAIIIgBBxIQBKAIASRogACABNgIMIAEgADYCCAwKCyAEQRRqIgIoAgAiAEUEQCAEKAIQIgBFDQQgBEEQaiECCwNAIAIhByAAIgFBFGoiAigCACIADQAgAUEQaiECIAEoAhAiAA0ACyAHQQA2AgAMCQsgCEG8hAEoAgAiAk0EQEHIhAEoAgAhAwJAIAIgCGsiAUEQTwRAQbyEASABNgIAQciEASADIAhqIgA2AgAgACABQQFyNgIEIAIgA2ogATYCACADIAhBA3I2AgQMAQtByIQBQQA2AgBBvIQBQQA2AgAgAyACQQNyNgIEIAIgA2oiACAAKAIEQQFyNgIECyADQQhqIQAMCwsgCEHAhAEoAgAiBkkEQEHAhAEgBiAIayIBNgIAQcyEAUHMhAEoAgAiAiAIaiIANgIAIAAgAUEBcjYCBCACIAhBA3I2AgQgAkEIaiEADAsLQQAhACAIQS9qIgkCf0GMiAEoAgAEQEGUiAEoAgAMAQtBmIgBQn83AgBBkIgBQoCggICAgAQ3AgBBjIgBIAxBDGpBcHFB2KrVqgVzNgIAQaCIAUEANgIAQfCHAUEANgIAQYAgCyIBaiIFQQAgAWsiB3EiAiAITQ0KQeyHASgCACIEBEBB5IcBKAIAIgMgAmoiASADTQ0LIAEgBEsNCwtB8IcBLQAAQQRxDQUCQAJAQcyEASgCACIDBEBB9IcBIQADQCADIAAoAgAiAU8EQCABIAAoAgRqIANLDQMLIAAoAggiAA0ACwtBABApIgFBf0YNBiACIQVBkIgBKAIAIgNBAWsiACABcQRAIAIgAWsgACABakEAIANrcWohBQsgBSAITQ0GIAVB/v///wdLDQZB7IcBKAIAIgQEQEHkhwEoAgAiAyAFaiIAIANNDQcgACAESw0HCyAFECkiACABRw0BDAgLIAUgBmsgB3EiBUH+////B0sNBSAFECkiASAAKAIAIAAoAgRqRg0EIAEhAAsCQCAAQX9GDQAgCEEwaiAFTQ0AQZSIASgCACIBIAkgBWtqQQAgAWtxIgFB/v///wdLBEAgACEBDAgLIAEQKUF/RwRAIAEgBWohBSAAIQEMCAtBACAFaxApGgwFCyAAIgFBf0cNBgwECwALQQAhBAwHC0EAIQEMBQsgAUF/Rw0CC0HwhwFB8IcBKAIAQQRyNgIACyACQf7///8HSw0BIAIQKSEBQQAQKSEAIAFBf0YNASAAQX9GDQEgACABTQ0BIAAgAWsiBSAIQShqTQ0BC0HkhwFB5IcBKAIAIAVqIgA2AgBB6IcBKAIAIABJBEBB6IcBIAA2AgALAkACQAJAQcyEASgCACIHBEBB9IcBIQADQCABIAAoAgAiAyAAKAIEIgJqRg0CIAAoAggiAA0ACwwCC0HEhAEoAgAiAEEAIAAgAU0bRQRAQcSEASABNgIAC0EAIQBB+IcBIAU2AgBB9IcBIAE2AgBB1IQBQX82AgBB2IQBQYyIASgCADYCAEGAiAFBADYCAANAIABBA3QiA0HkhAFqIANB3IQBaiICNgIAIANB6IQBaiACNgIAIABBAWoiAEEgRw0AC0HAhAEgBUEoayIDQXggAWtBB3FBACABQQhqQQdxGyIAayICNgIAQcyEASAAIAFqIgA2AgAgACACQQFyNgIEIAEgA2pBKDYCBEHQhAFBnIgBKAIANgIADAILIAAtAAxBCHENACADIAdLDQAgASAHTQ0AIAAgAiAFajYCBEHMhAEgB0F4IAdrQQdxQQAgB0EIakEHcRsiAGoiAjYCAEHAhAFBwIQBKAIAIAVqIgEgAGsiADYCACACIABBAXI2AgQgASAHakEoNgIEQdCEAUGciAEoAgA2AgAMAQtBxIQBKAIAIAFLBEBBxIQBIAE2AgALIAEgBWohAkH0hwEhAAJAAkACQAJAAkACQANAIAIgACgCAEcEQCAAKAIIIgANAQwCCwsgAC0ADEEIcUUNAQtB9IcBIQADQCAHIAAoAgAiAk8EQCACIAAoAgRqIgQgB0sNAwsgACgCCCEADAALAAsgACABNgIAIAAgACgCBCAFajYCBCABQXggAWtBB3FBACABQQhqQQdxG2oiCSAIQQNyNgIEIAJBeCACa0EHcUEAIAJBCGpBB3EbaiIFIAggCWoiBmshAiAFIAdGBEBBzIQBIAY2AgBBwIQBQcCEASgCACACaiIANgIAIAYgAEEBcjYCBAwDCyAFQciEASgCAEYEQEHIhAEgBjYCAEG8hAFBvIQBKAIAIAJqIgA2AgAgBiAAQQFyNgIEIAAgBmogADYCAAwDCyAFKAIEIgBBA3FBAUYEQCAAQXhxIQcCQCAAQf8BTQRAIAUoAggiAyAAQQN2IgBBA3RB3IQBakYaIAMgBSgCDCIBRgRAQbSEAUG0hAEoAgBBfiAAd3E2AgAMAgsgAyABNgIMIAEgAzYCCAwBCyAFKAIYIQgCQCAFIAUoAgwiAUcEQCAFKAIIIgAgATYCDCABIAA2AggMAQsCQCAFQRRqIgAoAgAiAw0AIAVBEGoiACgCACIDDQBBACEBDAELA0AgACEEIAMiAUEUaiIAKAIAIgMNACABQRBqIQAgASgCECIDDQALIARBADYCAAsgCEUNAAJAIAUgBSgCHCIDQQJ0QeSGAWoiACgCAEYEQCAAIAE2AgAgAQ0BQbiEAUG4hAEoAgBBfiADd3E2AgAMAgsgCEEQQRQgCCgCECAFRhtqIAE2AgAgAUUNAQsgASAINgIYIAUoAhAiAARAIAEgADYCECAAIAE2AhgLIAUoAhQiAEUNACABIAA2AhQgACABNgIYCyAFIAdqIQUgAiAHaiECCyAFIAUoAgRBfnE2AgQgBiACQQFyNgIEIAIgBmogAjYCACACQf8BTQRAIAJBA3YiAEEDdEHchAFqIQICf0G0hAEoAgAiAUEBIAB0IgBxRQRAQbSEASAAIAFyNgIAIAIMAQsgAigCCAshACACIAY2AgggACAGNgIMIAYgAjYCDCAGIAA2AggMAwtBHyEAIAJB////B00EQCACQQh2IgAgAEGA/j9qQRB2QQhxIgN0IgAgAEGA4B9qQRB2QQRxIgF0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAEgA3IgAHJrIgBBAXQgAiAAQRVqdkEBcXJBHGohAAsgBiAANgIcIAZCADcCECAAQQJ0QeSGAWohBAJAQbiEASgCACIDQQEgAHQiAXFFBEBBuIQBIAEgA3I2AgAgBCAGNgIAIAYgBDYCGAwBCyACQQBBGSAAQQF2ayAAQR9GG3QhACAEKAIAIQEDQCABIgMoAgRBeHEgAkYNAyAAQR12IQEgAEEBdCEAIAMgAUEEcWoiBCgCECIBDQALIAQgBjYCECAGIAM2AhgLIAYgBjYCDCAGIAY2AggMAgtBwIQBIAVBKGsiA0F4IAFrQQdxQQAgAUEIakEHcRsiAGsiAjYCAEHMhAEgACABaiIANgIAIAAgAkEBcjYCBCABIANqQSg2AgRB0IQBQZyIASgCADYCACAHIARBJyAEa0EHcUEAIARBJ2tBB3EbakEvayIAIAAgB0EQakkbIgJBGzYCBCACQfyHASkCADcCECACQfSHASkCADcCCEH8hwEgAkEIajYCAEH4hwEgBTYCAEH0hwEgATYCAEGAiAFBADYCACACQRhqIQADQCAAQQc2AgQgAEEIaiEBIABBBGohACABIARJDQALIAIgB0YNAyACIAIoAgRBfnE2AgQgByACIAdrIgRBAXI2AgQgAiAENgIAIARB/wFNBEAgBEEDdiIAQQN0QdyEAWohAgJ/QbSEASgCACIBQQEgAHQiAHFFBEBBtIQBIAAgAXI2AgAgAgwBCyACKAIICyEAIAIgBzYCCCAAIAc2AgwgByACNgIMIAcgADYCCAwEC0EfIQAgB0IANwIQIARB////B00EQCAEQQh2IgAgAEGA/j9qQRB2QQhxIgJ0IgAgAEGA4B9qQRB2QQRxIgF0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAEgAnIgAHJrIgBBAXQgBCAAQRVqdkEBcXJBHGohAAsgByAANgIcIABBAnRB5IYBaiEDAkBBuIQBKAIAIgJBASAAdCIBcUUEQEG4hAEgASACcjYCACADIAc2AgAgByADNgIYDAELIARBAEEZIABBAXZrIABBH0YbdCEAIAMoAgAhAQNAIAEiAigCBEF4cSAERg0EIABBHXYhASAAQQF0IQAgAiABQQRxaiIDKAIQIgENAAsgAyAHNgIQIAcgAjYCGAsgByAHNgIMIAcgBzYCCAwDCyADKAIIIgAgBjYCDCADIAY2AgggBkEANgIYIAYgAzYCDCAGIAA2AggLIAlBCGohAAwFCyACKAIIIgAgBzYCDCACIAc2AgggB0EANgIYIAcgAjYCDCAHIAA2AggLQcCEASgCACIAIAhNDQBBwIQBIAAgCGsiATYCAEHMhAFBzIQBKAIAIgIgCGoiADYCACAAIAFBAXI2AgQgAiAIQQNyNgIEIAJBCGohAAwDC0GEhAFBMDYCAEEAIQAMAgsCQCAFRQ0AAkAgBCgCHCICQQJ0QeSGAWoiACgCACAERgRAIAAgATYCACABDQFBuIQBIAlBfiACd3EiCTYCAAwCCyAFQRBBFCAFKAIQIARGG2ogATYCACABRQ0BCyABIAU2AhggBCgCECIABEAgASAANgIQIAAgATYCGAsgBCgCFCIARQ0AIAEgADYCFCAAIAE2AhgLAkAgA0EPTQRAIAQgAyAIaiIAQQNyNgIEIAAgBGoiACAAKAIEQQFyNgIEDAELIAQgCEEDcjYCBCAGIANBAXI2AgQgAyAGaiADNgIAIANB/wFNBEAgA0EDdiIAQQN0QdyEAWohAgJ/QbSEASgCACIBQQEgAHQiAHFFBEBBtIQBIAAgAXI2AgAgAgwBCyACKAIICyEAIAIgBjYCCCAAIAY2AgwgBiACNgIMIAYgADYCCAwBC0EfIQAgA0H///8HTQRAIANBCHYiACAAQYD+P2pBEHZBCHEiAnQiACAAQYDgH2pBEHZBBHEiAXQiACAAQYCAD2pBEHZBAnEiAHRBD3YgASACciAAcmsiAEEBdCADIABBFWp2QQFxckEcaiEACyAGIAA2AhwgBkIANwIQIABBAnRB5IYBaiECAkACQCAJQQEgAHQiAXFFBEBBuIQBIAEgCXI2AgAgAiAGNgIAIAYgAjYCGAwBCyADQQBBGSAAQQF2ayAAQR9GG3QhACACKAIAIQgDQCAIIgEoAgRBeHEgA0YNAiAAQR12IQIgAEEBdCEAIAEgAkEEcWoiAigCECIIDQALIAIgBjYCECAGIAE2AhgLIAYgBjYCDCAGIAY2AggMAQsgASgCCCIAIAY2AgwgASAGNgIIIAZBADYCGCAGIAE2AgwgBiAANgIICyAEQQhqIQAMAQsCQCALRQ0AAkAgASgCHCICQQJ0QeSGAWoiACgCACABRgRAIAAgBDYCACAEDQFBuIQBIAZBfiACd3E2AgAMAgsgC0EQQRQgCygCECABRhtqIAQ2AgAgBEUNAQsgBCALNgIYIAEoAhAiAARAIAQgADYCECAAIAQ2AhgLIAEoAhQiAEUNACAEIAA2AhQgACAENgIYCwJAIANBD00EQCABIAMgCGoiAEEDcjYCBCAAIAFqIgAgACgCBEEBcjYCBAwBCyABIAhBA3I2AgQgCSADQQFyNgIEIAMgCWogAzYCACAKBEAgCkEDdiIAQQN0QdyEAWohBEHIhAEoAgAhAgJ/QQEgAHQiACAFcUUEQEG0hAEgACAFcjYCACAEDAELIAQoAggLIQAgBCACNgIIIAAgAjYCDCACIAQ2AgwgAiAANgIIC0HIhAEgCTYCAEG8hAEgAzYCAAsgAUEIaiEACyAMQRBqJAAgAAuJAQEDfyAAKAIcIgEQMAJAIAAoAhAiAiABKAIQIgMgAiADSRsiAkUNACAAKAIMIAEoAgggAhAHGiAAIAAoAgwgAmo2AgwgASABKAIIIAJqNgIIIAAgACgCFCACajYCFCAAIAAoAhAgAms2AhAgASABKAIQIAJrIgA2AhAgAA0AIAEgASgCBDYCCAsLzgEBBX8CQCAARQ0AIAAoAjAiAQRAIAAgAUEBayIBNgIwIAENAQsgACgCIARAIABBATYCICAAEBoaCyAAKAIkQQFGBEAgABBDCwJAIAAoAiwiAUUNACAALQAoDQACQCABKAJEIgNFDQAgASgCTCEEA0AgACAEIAJBAnRqIgUoAgBHBEAgAyACQQFqIgJHDQEMAgsLIAUgBCADQQFrIgJBAnRqKAIANgIAIAEgAjYCRAsLIABBAEIAQQUQDhogACgCACIBBEAgARALCyAAEAYLC1oCAn4BfwJ/AkACQCAALQAARQ0AIAApAxAiAUJ9Vg0AIAFCAnwiAiAAKQMIWA0BCyAAQQA6AABBAAwBC0EAIAAoAgQiA0UNABogACACNwMQIAMgAadqLwAACwthAgJ+AX8CQAJAIAAtAABFDQAgACkDECICQn1WDQAgAkICfCIDIAApAwhYDQELIABBADoAAA8LIAAoAgQiBEUEQA8LIAAgAzcDECAEIAKnaiIAIAFBCHY6AAEgACABOgAAC8wCAQJ/IwBBEGsiBCQAAkAgACkDGCADrYinQQFxRQRAIABBDGoiAARAIABBADYCBCAAQRw2AgALQn8hAgwBCwJ+IAAoAgAiBUUEQCAAKAIIIAEgAiADIAAoAgQRDAAMAQsgBSAAKAIIIAEgAiADIAAoAgQRCgALIgJCf1UNAAJAIANBBGsOCwEAAAAAAAAAAAABAAsCQAJAIAAtABhBEHFFBEAgAEEMaiIBBEAgAUEANgIEIAFBHDYCAAsMAQsCfiAAKAIAIgFFBEAgACgCCCAEQQhqQghBBCAAKAIEEQwADAELIAEgACgCCCAEQQhqQghBBCAAKAIEEQoAC0J/VQ0BCyAAQQxqIgAEQCAAQQA2AgQgAEEUNgIACwwBCyAEKAIIIQEgBCgCDCEDIABBDGoiAARAIAAgAzYCBCAAIAE2AgALCyAEQRBqJAAgAguTFQIOfwN+AkACQAJAAkACQAJAAkACQAJAAkACQCAAKALwLQRAIAAoAogBQQFIDQEgACgCACIEKAIsQQJHDQQgAC8B5AENAyAALwHoAQ0DIAAvAewBDQMgAC8B8AENAyAALwH0AQ0DIAAvAfgBDQMgAC8B/AENAyAALwGcAg0DIAAvAaACDQMgAC8BpAINAyAALwGoAg0DIAAvAawCDQMgAC8BsAINAyAALwG0Ag0DIAAvAbgCDQMgAC8BvAINAyAALwHAAg0DIAAvAcQCDQMgAC8ByAINAyAALwHUAg0DIAAvAdgCDQMgAC8B3AINAyAALwHgAg0DIAAvAYgCDQIgAC8BjAINAiAALwGYAg0CQSAhBgNAIAAgBkECdCIFai8B5AENAyAAIAVBBHJqLwHkAQ0DIAAgBUEIcmovAeQBDQMgACAFQQxyai8B5AENAyAGQQRqIgZBgAJHDQALDAMLIABBBzYC/C0gAkF8Rw0FIAFFDQUMBgsgAkEFaiIEIQcMAwtBASEHCyAEIAc2AiwLIAAgAEHoFmoQUSAAIABB9BZqEFEgAC8B5gEhBCAAIABB7BZqKAIAIgxBAnRqQf//AzsB6gEgAEGQFmohECAAQZQWaiERIABBjBZqIQdBACEGIAxBAE4EQEEHQYoBIAQbIQ1BBEEDIAQbIQpBfyEJA0AgBCEIIAAgCyIOQQFqIgtBAnRqLwHmASEEAkACQCAGQQFqIgVB//8DcSIPIA1B//8DcU8NACAEIAhHDQAgBSEGDAELAn8gACAIQQJ0akHMFWogCkH//wNxIA9LDQAaIAgEQEEBIQUgByAIIAlGDQEaIAAgCEECdGpBzBVqIgYgBi8BAEEBajsBACAHDAELQQEhBSAQIBEgBkH//wNxQQpJGwsiBiAGLwEAIAVqOwEAQQAhBgJ/IARFBEBBAyEKQYoBDAELQQNBBCAEIAhGIgUbIQpBBkEHIAUbCyENIAghCQsgDCAORw0ACwsgAEHaE2ovAQAhBCAAIABB+BZqKAIAIgxBAnRqQd4TakH//wM7AQBBACEGIAxBAE4EQEEHQYoBIAQbIQ1BBEEDIAQbIQpBfyEJQQAhCwNAIAQhCCAAIAsiDkEBaiILQQJ0akHaE2ovAQAhBAJAAkAgBkEBaiIFQf//A3EiDyANQf//A3FPDQAgBCAIRw0AIAUhBgwBCwJ/IAAgCEECdGpBzBVqIApB//8DcSAPSw0AGiAIBEBBASEFIAcgCCAJRg0BGiAAIAhBAnRqQcwVaiIGIAYvAQBBAWo7AQAgBwwBC0EBIQUgECARIAZB//8DcUEKSRsLIgYgBi8BACAFajsBAEEAIQYCfyAERQRAQQMhCkGKAQwBC0EDQQQgBCAIRiIFGyEKQQZBByAFGwshDSAIIQkLIAwgDkcNAAsLIAAgAEGAF2oQUSAAIAAoAvgtAn9BEiAAQYoWai8BAA0AGkERIABB0hVqLwEADQAaQRAgAEGGFmovAQANABpBDyAAQdYVai8BAA0AGkEOIABBghZqLwEADQAaQQ0gAEHaFWovAQANABpBDCAAQf4Vai8BAA0AGkELIABB3hVqLwEADQAaQQogAEH6FWovAQANABpBCSAAQeIVai8BAA0AGkEIIABB9hVqLwEADQAaQQcgAEHmFWovAQANABpBBiAAQfIVai8BAA0AGkEFIABB6hVqLwEADQAaQQQgAEHuFWovAQANABpBA0ECIABBzhVqLwEAGwsiBkEDbGoiBEERajYC+C0gACgC/C1BCmpBA3YiByAEQRtqQQN2IgRNBEAgByEEDAELIAAoAowBQQRHDQAgByEECyAEIAJBBGpPQQAgARsNASAEIAdHDQQLIANBAmqtIRIgACkDmC4hFCAAKAKgLiIBQQNqIgdBP0sNASASIAGthiAUhCESDAILIAAgASACIAMQOQwDCyABQcAARgRAIAAoAgQgACgCEGogFDcAACAAIAAoAhBBCGo2AhBBAyEHDAELIAAoAgQgACgCEGogEiABrYYgFIQ3AAAgACAAKAIQQQhqNgIQIAFBPWshByASQcAAIAFrrYghEgsgACASNwOYLiAAIAc2AqAuIABBgMEAQYDKABCHAQwBCyADQQRqrSESIAApA5guIRQCQCAAKAKgLiIBQQNqIgRBP00EQCASIAGthiAUhCESDAELIAFBwABGBEAgACgCBCAAKAIQaiAUNwAAIAAgACgCEEEIajYCEEEDIQQMAQsgACgCBCAAKAIQaiASIAGthiAUhDcAACAAIAAoAhBBCGo2AhAgAUE9ayEEIBJBwAAgAWutiCESCyAAIBI3A5guIAAgBDYCoC4gAEHsFmooAgAiC6xCgAJ9IRMgAEH4FmooAgAhCQJAAkACfwJ+AkACfwJ/IARBOk0EQCATIASthiAShCETIARBBWoMAQsgBEHAAEYEQCAAKAIEIAAoAhBqIBI3AAAgACAAKAIQQQhqNgIQIAmsIRJCBSEUQQoMAgsgACgCBCAAKAIQaiATIASthiAShDcAACAAIAAoAhBBCGo2AhAgE0HAACAEa62IIRMgBEE7awshBSAJrCESIAVBOksNASAFrSEUIAVBBWoLIQcgEiAUhiAThAwBCyAFQcAARgRAIAAoAgQgACgCEGogEzcAACAAIAAoAhBBCGo2AhAgBq1CA30hE0IFIRRBCQwCCyAAKAIEIAAoAhBqIBIgBa2GIBOENwAAIAAgACgCEEEIajYCECAFQTtrIQcgEkHAACAFa62ICyESIAatQgN9IRMgB0E7Sw0BIAetIRQgB0EEagshBCATIBSGIBKEIRMMAQsgB0HAAEYEQCAAKAIEIAAoAhBqIBI3AAAgACAAKAIQQQhqNgIQQQQhBAwBCyAAKAIEIAAoAhBqIBMgB62GIBKENwAAIAAgACgCEEEIajYCECAHQTxrIQQgE0HAACAHa62IIRMLQQAhBQNAIAAgBSIBQZDWAGotAABBAnRqQc4VajMBACEUAn8gBEE8TQRAIBQgBK2GIBOEIRMgBEEDagwBCyAEQcAARgRAIAAoAgQgACgCEGogEzcAACAAIAAoAhBBCGo2AhAgFCETQQMMAQsgACgCBCAAKAIQaiAUIASthiAThDcAACAAIAAoAhBBCGo2AhAgFEHAACAEa62IIRMgBEE9awshBCABQQFqIQUgASAGRw0ACyAAIAQ2AqAuIAAgEzcDmC4gACAAQeQBaiICIAsQhgEgACAAQdgTaiIBIAkQhgEgACACIAEQhwELIAAQiAEgAwRAAkAgACgCoC4iBEE5TgRAIAAoAgQgACgCEGogACkDmC43AAAgACAAKAIQQQhqNgIQDAELIARBGU4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgQ2AqAuCyAEQQlOBH8gACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACgCoC5BEGsFIAQLQQFIDQAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAAKQOYLjwAAAsgAEEANgKgLiAAQgA3A5guCwsZACAABEAgACgCABAGIAAoAgwQBiAAEAYLC6wBAQJ+Qn8hAwJAIAAtACgNAAJAAkAgACgCIEUNACACQgBTDQAgAlANASABDQELIABBDGoiAARAIABBADYCBCAAQRI2AgALQn8PCyAALQA1DQBCACEDIAAtADQNACACUA0AA0AgACABIAOnaiACIAN9QQEQDiIEQn9XBEAgAEEBOgA1Qn8gAyADUBsPCyAEUEUEQCADIAR8IgMgAloNAgwBCwsgAEEBOgA0CyADC3UCAn4BfwJAAkAgAC0AAEUNACAAKQMQIgJCe1YNACACQgR8IgMgACkDCFgNAQsgAEEAOgAADwsgACgCBCIERQRADwsgACADNwMQIAQgAqdqIgAgAUEYdjoAAyAAIAFBEHY6AAIgACABQQh2OgABIAAgAToAAAtUAgF+AX8CQAJAIAAtAABFDQAgASAAKQMQIgF8IgIgAVQNACACIAApAwhYDQELIABBADoAAEEADwsgACgCBCIDRQRAQQAPCyAAIAI3AxAgAyABp2oLdwECfyMAQRBrIgMkAEF/IQQCQCAALQAoDQAgACgCIEEAIAJBA0kbRQRAIABBDGoiAARAIABBADYCBCAAQRI2AgALDAELIAMgAjYCCCADIAE3AwAgACADQhBBBhAOQgBTDQBBACEEIABBADoANAsgA0EQaiQAIAQLVwICfgF/AkACQCAALQAARQ0AIAApAxAiAUJ7Vg0AIAFCBHwiAiAAKQMIWA0BCyAAQQA6AABBAA8LIAAoAgQiA0UEQEEADwsgACACNwMQIAMgAadqKAAAC1UCAX4BfyAABEACQCAAKQMIUA0AQgEhAQNAIAAoAgAgAkEEdGoQPiABIAApAwhaDQEgAachAiABQgF8IQEMAAsACyAAKAIAEAYgACgCKBAQIAAQBgsLZAECfwJAAkACQCAARQRAIAGnEAkiA0UNAkEYEAkiAkUNAQwDCyAAIQNBGBAJIgINAkEADwsgAxAGC0EADwsgAkIANwMQIAIgATcDCCACIAM2AgQgAkEBOgAAIAIgAEU6AAEgAgudAQICfgF/AkACQCAALQAARQ0AIAApAxAiAkJ3Vg0AIAJCCHwiAyAAKQMIWA0BCyAAQQA6AAAPCyAAKAIEIgRFBEAPCyAAIAM3AxAgBCACp2oiACABQjiIPAAHIAAgAUIwiDwABiAAIAFCKIg8AAUgACABQiCIPAAEIAAgAUIYiDwAAyAAIAFCEIg8AAIgACABQgiIPAABIAAgATwAAAvwAgICfwF+AkAgAkUNACAAIAJqIgNBAWsgAToAACAAIAE6AAAgAkEDSQ0AIANBAmsgAToAACAAIAE6AAEgA0EDayABOgAAIAAgAToAAiACQQdJDQAgA0EEayABOgAAIAAgAToAAyACQQlJDQAgAEEAIABrQQNxIgRqIgMgAUH/AXFBgYKECGwiADYCACADIAIgBGtBfHEiAmoiAUEEayAANgIAIAJBCUkNACADIAA2AgggAyAANgIEIAFBCGsgADYCACABQQxrIAA2AgAgAkEZSQ0AIAMgADYCGCADIAA2AhQgAyAANgIQIAMgADYCDCABQRBrIAA2AgAgAUEUayAANgIAIAFBGGsgADYCACABQRxrIAA2AgAgAiADQQRxQRhyIgFrIgJBIEkNACAArUKBgICAEH4hBSABIANqIQEDQCABIAU3AxggASAFNwMQIAEgBTcDCCABIAU3AwAgAUEgaiEBIAJBIGsiAkEfSw0ACwsLbwEDfyAAQQxqIQICQAJ/IAAoAiAiAUUEQEF/IQFBEgwBCyAAIAFBAWsiAzYCIEEAIQEgAw0BIABBAEIAQQIQDhogACgCACIARQ0BIAAQGkF/Sg0BQRQLIQAgAgRAIAJBADYCBCACIAA2AgALCyABC58BAgF/AX4CfwJAAn4gACgCACIDKAIkQQFGQQAgAkJ/VRtFBEAgA0EMaiIBBEAgAUEANgIEIAFBEjYCAAtCfwwBCyADIAEgAkELEA4LIgRCf1cEQCAAKAIAIQEgAEEIaiIABEAgACABKAIMNgIAIAAgASgCEDYCBAsMAQtBACACIARRDQEaIABBCGoEQCAAQRs2AgwgAEEGNgIICwtBfwsLJAEBfyAABEADQCAAKAIAIQEgACgCDBAGIAAQBiABIgANAAsLC5gBAgJ+AX8CQAJAIAAtAABFDQAgACkDECIBQndWDQAgAUIIfCICIAApAwhYDQELIABBADoAAEIADwsgACgCBCIDRQRAQgAPCyAAIAI3AxAgAyABp2oiADEABkIwhiAAMQAHQjiGhCAAMQAFQiiGhCAAMQAEQiCGhCAAMQADQhiGhCAAMQACQhCGhCAAMQABQgiGhCAAMQAAfAsjACAAQShGBEAgAhAGDwsgAgRAIAEgAkEEaygCACAAEQcACwsyACAAKAIkQQFHBEAgAEEMaiIABEAgAEEANgIEIABBEjYCAAtCfw8LIABBAEIAQQ0QDgsPACAABEAgABA2IAAQBgsLgAEBAX8gAC0AKAR/QX8FIAFFBEAgAEEMagRAIABBADYCECAAQRI2AgwLQX8PCyABECoCQCAAKAIAIgJFDQAgAiABECFBf0oNACAAKAIAIQEgAEEMaiIABEAgACABKAIMNgIAIAAgASgCEDYCBAtBfw8LIAAgAUI4QQMQDkI/h6cLC38BA38gACEBAkAgAEEDcQRAA0AgAS0AAEUNAiABQQFqIgFBA3ENAAsLA0AgASICQQRqIQEgAigCACIDQX9zIANBgYKECGtxQYCBgoR4cUUNAAsgA0H/AXFFBEAgAiAAaw8LA0AgAi0AASEDIAJBAWoiASECIAMNAAsLIAEgAGsL3wIBCH8gAEUEQEEBDwsCQCAAKAIIIgINAEEBIQQgAC8BBCIHRQRAQQEhAgwBCyAAKAIAIQgDQAJAIAMgCGoiBS0AACICQSBPBEAgAkEYdEEYdUF/Sg0BCyACQQ1NQQBBASACdEGAzABxGw0AAn8CfyACQeABcUHAAUYEQEEBIQYgA0EBagwBCyACQfABcUHgAUYEQCADQQJqIQNBACEGQQEMAgsgAkH4AXFB8AFHBEBBBCECDAULQQAhBiADQQNqCyEDQQALIQlBBCECIAMgB08NAiAFLQABQcABcUGAAUcNAkEDIQQgBg0AIAUtAAJBwAFxQYABRw0CIAkNACAFLQADQcABcUGAAUcNAgsgBCECIANBAWoiAyAHSQ0ACwsgACACNgIIAn8CQCABRQ0AAkAgAUECRw0AIAJBA0cNAEECIQIgAEECNgIICyABIAJGDQBBBSACQQFHDQEaCyACCwtIAgJ+An8jAEEQayIEIAE2AgxCASAArYYhAgNAIAQgAUEEaiIANgIMIAIiA0IBIAEoAgAiBa2GhCECIAAhASAFQX9KDQALIAMLhwUBB38CQAJAIABFBEBBxRQhAiABRQ0BIAFBADYCAEHFFA8LIAJBwABxDQEgACgCCEUEQCAAQQAQIxoLIAAoAgghBAJAIAJBgAFxBEAgBEEBa0ECTw0BDAMLIARBBEcNAgsCQCAAKAIMIgINACAAAn8gACgCACEIIABBEGohCUEAIQICQAJAAkACQCAALwEEIgUEQEEBIQQgBUEBcSEHIAVBAUcNAQwCCyAJRQ0CIAlBADYCAEEADAQLIAVBfnEhBgNAIARBAUECQQMgAiAIai0AAEEBdEHQFGovAQAiCkGAEEkbIApBgAFJG2pBAUECQQMgCCACQQFyai0AAEEBdEHQFGovAQAiBEGAEEkbIARBgAFJG2ohBCACQQJqIQIgBkECayIGDQALCwJ/IAcEQCAEQQFBAkEDIAIgCGotAABBAXRB0BRqLwEAIgJBgBBJGyACQYABSRtqIQQLIAQLEAkiB0UNASAFQQEgBUEBSxshCkEAIQVBACEGA0AgBSAHaiEDAn8gBiAIai0AAEEBdEHQFGovAQAiAkH/AE0EQCADIAI6AAAgBUEBagwBCyACQf8PTQRAIAMgAkE/cUGAAXI6AAEgAyACQQZ2QcABcjoAACAFQQJqDAELIAMgAkE/cUGAAXI6AAIgAyACQQx2QeABcjoAACADIAJBBnZBP3FBgAFyOgABIAVBA2oLIQUgBkEBaiIGIApHDQALIAcgBEEBayICakEAOgAAIAlFDQAgCSACNgIACyAHDAELIAMEQCADQQA2AgQgA0EONgIAC0EACyICNgIMIAINAEEADwsgAUUNACABIAAoAhA2AgALIAIPCyABBEAgASAALwEENgIACyAAKAIAC4MBAQR/QRIhBQJAAkAgACkDMCABWA0AIAGnIQYgACgCQCEEIAJBCHEiB0UEQCAEIAZBBHRqKAIEIgINAgsgBCAGQQR0aiIEKAIAIgJFDQAgBC0ADEUNAUEXIQUgBw0BC0EAIQIgAyAAQQhqIAMbIgAEQCAAQQA2AgQgACAFNgIACwsgAgtuAQF/IwBBgAJrIgUkAAJAIARBgMAEcQ0AIAIgA0wNACAFIAFB/wFxIAIgA2siAkGAAiACQYACSSIBGxAZIAFFBEADQCAAIAVBgAIQLiACQYACayICQf8BSw0ACwsgACAFIAIQLgsgBUGAAmokAAuBAQEBfyMAQRBrIgQkACACIANsIQICQCAAQSdGBEAgBEEMaiACEIwBIQBBACAEKAIMIAAbIQAMAQsgAUEBIAJBxABqIAARAAAiAUUEQEEAIQAMAQtBwAAgAUE/cWsiACABakHAAEEAIABBBEkbaiIAQQRrIAE2AAALIARBEGokACAAC1IBAn9BhIEBKAIAIgEgAEEDakF8cSICaiEAAkAgAkEAIAAgAU0bDQAgAD8AQRB0SwRAIAAQA0UNAQtBhIEBIAA2AgAgAQ8LQYSEAUEwNgIAQX8LNwAgAEJ/NwMQIABBADYCCCAAQgA3AwAgAEEANgIwIABC/////w83AyggAEIANwMYIABCADcDIAulAQEBf0HYABAJIgFFBEBBAA8LAkAgAARAIAEgAEHYABAHGgwBCyABQgA3AyAgAUEANgIYIAFC/////w83AxAgAUEAOwEMIAFBv4YoNgIIIAFBAToABiABQQA6AAQgAUIANwNIIAFBgIDYjXg2AkQgAUIANwMoIAFCADcDMCABQgA3AzggAUFAa0EAOwEAIAFCADcDUAsgAUEBOgAFIAFBADYCACABC1gCAn4BfwJAAkAgAC0AAEUNACAAKQMQIgMgAq18IgQgA1QNACAEIAApAwhYDQELIABBADoAAA8LIAAoAgQiBUUEQA8LIAAgBDcDECAFIAOnaiABIAIQBxoLlgEBAn8CQAJAIAJFBEAgAacQCSIFRQ0BQRgQCSIEDQIgBRAGDAELIAIhBUEYEAkiBA0BCyADBEAgA0EANgIEIANBDjYCAAtBAA8LIARCADcDECAEIAE3AwggBCAFNgIEIARBAToAACAEIAJFOgABIAAgBSABIAMQZUEASAR/IAQtAAEEQCAEKAIEEAYLIAQQBkEABSAECwubAgEDfyAALQAAQSBxRQRAAkAgASEDAkAgAiAAIgEoAhAiAAR/IAAFAn8gASABLQBKIgBBAWsgAHI6AEogASgCACIAQQhxBEAgASAAQSByNgIAQX8MAQsgAUIANwIEIAEgASgCLCIANgIcIAEgADYCFCABIAAgASgCMGo2AhBBAAsNASABKAIQCyABKAIUIgVrSwRAIAEgAyACIAEoAiQRAAAaDAILAn8gASwAS0F/SgRAIAIhAANAIAIgACIERQ0CGiADIARBAWsiAGotAABBCkcNAAsgASADIAQgASgCJBEAACAESQ0CIAMgBGohAyABKAIUIQUgAiAEawwBCyACCyEAIAUgAyAAEAcaIAEgASgCFCAAajYCFAsLCwvNBQEGfyAAKAIwIgNBhgJrIQYgACgCPCECIAMhAQNAIAAoAkQgAiAAKAJoIgRqayECIAEgBmogBE0EQCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsiAw0ACwsgAUEHSQ0BA0AgACACLQAAOgAAIAAgAi0AAToAASAAIAItAAI6AAIgACACLQADOgADIAAgAi0ABDoABCAAIAItAAU6AAUgACACLQAGOgAGIAAgAi0ABzoAByAAQQhqIQAgAkEIaiECIARBCGsiBA0ACwwBCyAERQ0AIAAgASAEED8hAAsgAAvyCAEXfyAAKAJoIgwgACgCMEGGAmsiBWtBACAFIAxJGyENIAAoAnQhAiAAKAKQASEPIAAoAkgiDiAMaiIJIAAoAnAiBUECIAUbIgVBAWsiBmoiAy0AASESIAMtAAAhEyAGIA5qIQZBAyEDIAAoApQBIRYgACgCPCEUIAAoAkwhECAAKAI4IRECQAJ/IAVBA0kEQCANIQggDgwBCyAAIABBACAJLQABIAAoAnwRAAAgCS0AAiAAKAJ8EQAAIQoDQCAAIAogAyAJai0AACAAKAJ8EQAAIQogACgCUCAKQQF0ai8BACIIIAEgCCABQf//A3FJIggbIQEgA0ECayAHIAgbIQcgA0EBaiIDIAVNDQALIAFB//8DcSAHIA1qIghB//8DcU0NASAGIAdB//8DcSIDayEGIA4gA2sLIQMCQAJAIAwgAUH//wNxTQ0AIAIgAkECdiAFIA9JGyEKIA1B//8DcSEVIAlBAmohDyAJQQRrIRcDQAJAAkAgBiABQf//A3EiC2otAAAgE0cNACAGIAtBAWoiAWotAAAgEkcNACADIAtqIgItAAAgCS0AAEcNACABIANqLQAAIAktAAFGDQELIApBAWsiCkUNAiAQIAsgEXFBAXRqLwEAIgEgCEH//wNxSw0BDAILIAJBAmohAUEAIQQgDyECAkADQCACLQAAIAEtAABHDQEgAi0AASABLQABRwRAIARBAXIhBAwCCyACLQACIAEtAAJHBEAgBEECciEEDAILIAItAAMgAS0AA0cEQCAEQQNyIQQMAgsgAi0ABCABLQAERwRAIARBBHIhBAwCCyACLQAFIAEtAAVHBEAgBEEFciEEDAILIAItAAYgAS0ABkcEQCAEQQZyIQQMAgsgAi0AByABLQAHRwRAIARBB3IhBAwCCyABQQhqIQEgAkEIaiECIARB+AFJIRggBEEIaiEEIBgNAAtBgAIhBAsCQAJAIAUgBEECaiICSQRAIAAgCyAHQf//A3FrIgY2AmwgAiAUSwRAIBQPCyACIBZPBEAgAg8LIAkgBEEBaiIFaiIBLQABIRIgAS0AACETAkAgAkEESQ0AIAIgBmogDE8NACAGQf//A3EhCCAEQQFrIQtBACEDQQAhBwNAIBAgAyAIaiARcUEBdGovAQAiASAGQf//A3FJBEAgAyAVaiABTw0IIAMhByABIQYLIANBAWoiAyALTQ0ACyAAIAAgAEEAIAIgF2oiAS0AACAAKAJ8EQAAIAEtAAEgACgCfBEAACABLQACIAAoAnwRAAAhASAAKAJQIAFBAXRqLwEAIgEgBkH//wNxTwRAIAdB//8DcSEDIAYhAQwDCyAEQQJrIgdB//8DcSIDIBVqIAFPDQYMAgsgAyAFaiEGIAIhBQsgCkEBayIKRQ0DIBAgCyARcUEBdGovAQAiASAIQf//A3FNDQMMAQsgByANaiEIIA4gA2siAyAFaiEGIAIhBQsgDCABQf//A3FLDQALCyAFDwsgAiEFCyAFIAAoAjwiACAAIAVLGwuGBQETfyAAKAJ0IgMgA0ECdiAAKAJwIgNBAiADGyIDIAAoApABSRshByAAKAJoIgogACgCMEGGAmsiBWtB//8DcUEAIAUgCkkbIQwgACgCSCIIIApqIgkgA0EBayICaiIFLQABIQ0gBS0AACEOIAlBAmohBSACIAhqIQsgACgClAEhEiAAKAI8IQ8gACgCTCEQIAAoAjghESAAKAKIAUEFSCETA0ACQCAKIAFB//8DcU0NAANAAkACQCALIAFB//8DcSIGai0AACAORw0AIAsgBkEBaiIBai0AACANRw0AIAYgCGoiAi0AACAJLQAARw0AIAEgCGotAAAgCS0AAUYNAQsgB0EBayIHRQ0CIAwgECAGIBFxQQF0ai8BACIBSQ0BDAILCyACQQJqIQRBACECIAUhAQJAA0AgAS0AACAELQAARw0BIAEtAAEgBC0AAUcEQCACQQFyIQIMAgsgAS0AAiAELQACRwRAIAJBAnIhAgwCCyABLQADIAQtAANHBEAgAkEDciECDAILIAEtAAQgBC0ABEcEQCACQQRyIQIMAgsgAS0ABSAELQAFRwRAIAJBBXIhAgwCCyABLQAGIAQtAAZHBEAgAkEGciECDAILIAEtAAcgBC0AB0cEQCACQQdyIQIMAgsgBEEIaiEEIAFBCGohASACQfgBSSEUIAJBCGohAiAUDQALQYACIQILAkAgAyACQQJqIgFJBEAgACAGNgJsIAEgD0sEQCAPDwsgASASTwRAIAEPCyAIIAJBAWoiA2ohCyADIAlqIgMtAAEhDSADLQAAIQ4gASEDDAELIBMNAQsgB0EBayIHRQ0AIAwgECAGIBFxQQF0ai8BACIBSQ0BCwsgAwvLAQECfwJAA0AgAC0AACABLQAARw0BIAAtAAEgAS0AAUcEQCACQQFyDwsgAC0AAiABLQACRwRAIAJBAnIPCyAALQADIAEtAANHBEAgAkEDcg8LIAAtAAQgAS0ABEcEQCACQQRyDwsgAC0ABSABLQAFRwRAIAJBBXIPCyAALQAGIAEtAAZHBEAgAkEGcg8LIAAtAAcgAS0AB0cEQCACQQdyDwsgAUEIaiEBIABBCGohACACQfgBSSEDIAJBCGohAiADDQALQYACIQILIAIL5wwBB38gAEF/cyEAIAJBF08EQAJAIAFBA3FFDQAgAS0AACAAQf8BcXNBAnRB0BhqKAIAIABBCHZzIQAgAkEBayIEQQAgAUEBaiIDQQNxG0UEQCAEIQIgAyEBDAELIAEtAAEgAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBAmohAwJAIAJBAmsiBEUNACADQQNxRQ0AIAEtAAIgAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBA2ohAwJAIAJBA2siBEUNACADQQNxRQ0AIAEtAAMgAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBBGohASACQQRrIQIMAgsgBCECIAMhAQwBCyAEIQIgAyEBCyACQRRuIgNBbGwhCQJAIANBAWsiCEUEQEEAIQQMAQsgA0EUbCABakEUayEDQQAhBANAIAEoAhAgB3MiB0EWdkH8B3FB0DhqKAIAIAdBDnZB/AdxQdAwaigCACAHQQZ2QfwHcUHQKGooAgAgB0H/AXFBAnRB0CBqKAIAc3NzIQcgASgCDCAGcyIGQRZ2QfwHcUHQOGooAgAgBkEOdkH8B3FB0DBqKAIAIAZBBnZB/AdxQdAoaigCACAGQf8BcUECdEHQIGooAgBzc3MhBiABKAIIIAVzIgVBFnZB/AdxQdA4aigCACAFQQ52QfwHcUHQMGooAgAgBUEGdkH8B3FB0ChqKAIAIAVB/wFxQQJ0QdAgaigCAHNzcyEFIAEoAgQgBHMiBEEWdkH8B3FB0DhqKAIAIARBDnZB/AdxQdAwaigCACAEQQZ2QfwHcUHQKGooAgAgBEH/AXFBAnRB0CBqKAIAc3NzIQQgASgCACAAcyIAQRZ2QfwHcUHQOGooAgAgAEEOdkH8B3FB0DBqKAIAIABBBnZB/AdxQdAoaigCACAAQf8BcUECdEHQIGooAgBzc3MhACABQRRqIQEgCEEBayIIDQALIAMhAQsgAiAJaiECIAEoAhAgASgCDCABKAIIIAEoAgQgASgCACAAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQf8BcUECdEHQGGooAgAgBHNzIABBCHZzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBB/wFxQQJ0QdAYaigCACAFc3MgAEEIdnMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEH/AXFBAnRB0BhqKAIAIAZzcyAAQQh2cyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQf8BcUECdEHQGGooAgAgB3NzIABBCHZzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyEAIAFBFGohAQsgAkEHSwRAA0AgAS0AByABLQAGIAEtAAUgAS0ABCABLQADIAEtAAIgAS0AASABLQAAIABB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyIAQf8BcXNBAnRB0BhqKAIAIABBCHZzIgBB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyIAQf8BcXNBAnRB0BhqKAIAIABBCHZzIgBB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBCGohASACQQhrIgJBB0sNAAsLAkAgAkUNACACQQFxBH8gAS0AACAAQf8BcXNBAnRB0BhqKAIAIABBCHZzIQAgAUEBaiEBIAJBAWsFIAILIQMgAkEBRg0AA0AgAS0AASABLQAAIABB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBAmohASADQQJrIgMNAAsLIABBf3MLwgIBA38jAEEQayIIJAACfwJAIAAEQCAEDQEgBVANAQsgBgRAIAZBADYCBCAGQRI2AgALQQAMAQtBgAEQCSIHRQRAIAYEQCAGQQA2AgQgBkEONgIAC0EADAELIAcgATcDCCAHQgA3AwAgB0EoaiIJECogByAFNwMYIAcgBDYCECAHIAM6AGAgB0EANgJsIAdCADcCZCAAKQMYIQEgCEF/NgIIIAhCjoCAgPAANwMAIAdBECAIECQgAUL/gQGDhCIBNwNwIAcgAadBBnZBAXE6AHgCQCACRQ0AIAkgAhBgQX9KDQAgBxAGQQAMAQsgBhBfIgIEQCAAIAAoAjBBAWo2AjAgAiAHNgIIIAJBATYCBCACIAA2AgAgAkI/IAAgB0EAQgBBDkEBEQoAIgEgAUIAUxs3AxgLIAILIQAgCEEQaiQAIAALYgEBf0E4EAkiAUUEQCAABEAgAEEANgIEIABBDjYCAAtBAA8LIAFBADYCCCABQgA3AwAgAUIANwMgIAFCgICAgBA3AiwgAUEAOgAoIAFBADYCFCABQgA3AgwgAUEAOwE0IAELuwEBAX4gASkDACICQgKDUEUEQCAAIAEpAxA3AxALIAJCBINQRQRAIAAgASkDGDcDGAsgAkIIg1BFBEAgACABKQMgNwMgCyACQhCDUEUEQCAAIAEoAig2AigLIAJCIINQRQRAIAAgASgCLDYCLAsgAkLAAINQRQRAIAAgAS8BMDsBMAsgAkKAAYNQRQRAIAAgAS8BMjsBMgsgAkKAAoNQRQRAIAAgASgCNDYCNAsgACAAKQMAIAKENwMAQQALGQAgAUUEQEEADwsgACABKAIAIAEzAQQQGws3AQJ/IABBACABG0UEQCAAIAFGDwsgAC8BBCIDIAEvAQRGBH8gACgCACABKAIAIAMQPQVBAQtFCyIBAX8gAUUEQEEADwsgARAJIgJFBEBBAA8LIAIgACABEAcLKQAgACABIAIgAyAEEEUiAEUEQEEADwsgACACQQAgBBA1IQEgABAGIAELcQEBfgJ/AkAgAkJ/VwRAIAMEQCADQQA2AgQgA0EUNgIACwwBCyAAIAEgAhARIgRCf1cEQCADBEAgAyAAKAIMNgIAIAMgACgCEDYCBAsMAQtBACACIARXDQEaIAMEQCADQQA2AgQgA0ERNgIACwtBfwsLNQAgACABIAJBABAmIgBFBEBBfw8LIAMEQCADIAAtAAk6AAALIAQEQCAEIAAoAkQ2AgALQQAL/AECAn8BfiMAQRBrIgMkAAJAIAAgA0EOaiABQYAGQQAQRiIARQRAIAIhAAwBCyADLwEOIgFBBUkEQCACIQAMAQsgAC0AAEEBRwRAIAIhAAwBCyAAIAGtQv//A4MQFyIBRQRAIAIhAAwBCyABEH0aAkAgARAVIAIEfwJ/IAIvAQQhAEEAIAIoAgAiBEUNABpBACAEIABB1IABKAIAEQAACwVBAAtHBEAgAiEADAELIAEgAS0AAAR+IAEpAwggASkDEH0FQgALIgVC//8DgxATIAWnQf//A3FBgBBBABA1IgBFBEAgAiEADAELIAIQEAsgARAICyADQRBqJAAgAAvmDwIIfwJ+IwBB4ABrIgckAEEeQS4gAxshCwJAAkAgAgRAIAIiBSIGLQAABH4gBikDCCAGKQMQfQVCAAsgC61aDQEgBARAIARBADYCBCAEQRM2AgALQn8hDQwCCyABIAutIAcgBBAtIgUNAEJ/IQ0MAQsgBUIEEBMoAABBoxJBqBIgAxsoAABHBEAgBARAIARBADYCBCAEQRM2AgALQn8hDSACDQEgBRAIDAELIABCADcDICAAQQA2AhggAEL/////DzcDECAAQQA7AQwgAEG/hig2AgggAEEBOgAGIABBADsBBCAAQQA2AgAgAEIANwNIIABBgIDYjXg2AkQgAEIANwMoIABCADcDMCAAQgA3AzggAEFAa0EAOwEAIABCADcDUCAAIAMEf0EABSAFEAwLOwEIIAAgBRAMOwEKIAAgBRAMOwEMIAAgBRAMNgIQIAUQDCEGIAUQDCEJIAdBADYCWCAHQgA3A1AgB0IANwNIIAcgCUEfcTYCPCAHIAZBC3Y2AjggByAGQQV2QT9xNgI0IAcgBkEBdEE+cTYCMCAHIAlBCXZB0ABqNgJEIAcgCUEFdkEPcUEBazYCQCAAIAdBMGoQBTYCFCAAIAUQFTYCGCAAIAUQFa03AyAgACAFEBWtNwMoIAUQDCEIIAUQDCEGIAACfiADBEBBACEJIABBADYCRCAAQQA7AUAgAEEANgI8QgAMAQsgBRAMIQkgACAFEAw2AjwgACAFEAw7AUAgACAFEBU2AkQgBRAVrQs3A0ggBS0AAEUEQCAEBEAgBEEANgIEIARBFDYCAAtCfyENIAINASAFEAgMAQsCQCAALwEMIgpBAXEEQCAKQcAAcQRAIABB//8DOwFSDAILIABBATsBUgwBCyAAQQA7AVILIABBADYCOCAAQgA3AzAgBiAIaiAJaiEKAkAgAgRAIAUtAAAEfiAFKQMIIAUpAxB9BUIACyAKrVoNASAEBEAgBEEANgIEIARBFTYCAAtCfyENDAILIAUQCCABIAqtQQAgBBAtIgUNAEJ/IQ0MAQsCQCAIRQ0AIAAgBSABIAhBASAEEGQiCDYCMCAIRQRAIAQoAgBBEUYEQCAEBEAgBEEANgIEIARBFTYCAAsLQn8hDSACDQIgBRAIDAILIAAtAA1BCHFFDQAgCEECECNBBUcNACAEBEAgBEEANgIEIARBFTYCAAtCfyENIAINASAFEAgMAQsgAEE0aiEIAkAgBkUNACAFIAEgBkEAIAQQRSIMRQRAQn8hDSACDQIgBRAIDAILIAwgBkGAAkGABCADGyAIIAQQbiEGIAwQBiAGRQRAQn8hDSACDQIgBRAIDAILIANFDQAgAEEBOgAECwJAIAlFDQAgACAFIAEgCUEAIAQQZCIBNgI4IAFFBEBCfyENIAINAiAFEAgMAgsgAC0ADUEIcUUNACABQQIQI0EFRw0AIAQEQCAEQQA2AgQgBEEVNgIAC0J/IQ0gAg0BIAUQCAwBCyAAIAAoAjRB9eABIAAoAjAQZzYCMCAAIAAoAjRB9cYBIAAoAjgQZzYCOAJAAkAgACkDKEL/////D1ENACAAKQMgQv////8PUQ0AIAApA0hC/////w9SDQELAkACQAJAIAgoAgAgB0EwakEBQYACQYAEIAMbIAQQRiIBRQRAIAJFDQEMAgsgASAHMwEwEBciAUUEQCAEBEAgBEEANgIEIARBDjYCAAsgAkUNAQwCCwJAIAApAyhC/////w9RBEAgACABEB03AygMAQsgA0UNAEEAIQYCQCABKQMQIg5CCHwiDSAOVA0AIAEpAwggDVQNACABIA03AxBBASEGCyABIAY6AAALIAApAyBC/////w9RBEAgACABEB03AyALAkAgAw0AIAApA0hC/////w9RBEAgACABEB03A0gLIAAoAjxB//8DRw0AIAAgARAVNgI8CyABLQAABH8gASkDECABKQMIUQVBAAsNAiAEBEAgBEEANgIEIARBFTYCAAsgARAIIAINAQsgBRAIC0J/IQ0MAgsgARAICyAFLQAARQRAIAQEQCAEQQA2AgQgBEEUNgIAC0J/IQ0gAg0BIAUQCAwBCyACRQRAIAUQCAtCfyENIAApA0hCf1cEQCAEBEAgBEEWNgIEIARBBDYCAAsMAQsjAEEQayIDJABBASEBAkAgACgCEEHjAEcNAEEAIQECQCAAKAI0IANBDmpBgbICQYAGQQAQRiICBEAgAy8BDiIFQQZLDQELIAQEQCAEQQA2AgQgBEEVNgIACwwBCyACIAWtQv//A4MQFyICRQRAIAQEQCAEQQA2AgQgBEEUNgIACwwBC0EBIQECQAJAAkAgAhAMQQFrDgICAQALQQAhASAEBEAgBEEANgIEIARBGDYCAAsgAhAIDAILIAApAyhCE1YhAQsgAkICEBMvAABBwYoBRwRAQQAhASAEBEAgBEEANgIEIARBGDYCAAsgAhAIDAELIAIQfUEBayIFQf8BcUEDTwRAQQAhASAEBEAgBEEANgIEIARBGDYCAAsgAhAIDAELIAMvAQ5BB0cEQEEAIQEgBARAIARBADYCBCAEQRU2AgALIAIQCAwBCyAAIAE6AAYgACAFQf8BcUGBAmo7AVIgACACEAw2AhAgAhAIQQEhAQsgA0EQaiQAIAFFDQAgCCAIKAIAEG02AgAgCiALaq0hDQsgB0HgAGokACANC4ECAQR/IwBBEGsiBCQAAkAgASAEQQxqQcAAQQAQJSIGRQ0AIAQoAgxBBWoiA0GAgARPBEAgAgRAIAJBADYCBCACQRI2AgALDAELQQAgA60QFyIDRQRAIAIEQCACQQA2AgQgAkEONgIACwwBCyADQQEQcCADIAEEfwJ/IAEvAQQhBUEAIAEoAgAiAUUNABpBACABIAVB1IABKAIAEQAACwVBAAsQEiADIAYgBCgCDBAsAn8gAy0AAEUEQCACBEAgAkEANgIEIAJBFDYCAAtBAAwBCyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcN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DCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQL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bGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRl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UgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";yo(bo)||(bo=N(bo));function Qa(Zs){try{if(Zs==bo&&ue)return new Uint8Array(ue);var so=mI(Zs);if(so)return so;if(F)return F(Zs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Ea){Qi(Ea)}}function gc(Zs,so){var Ea,Ml,Dr;try{Dr=Qa(Zs),Ml=new WebAssembly.Module(Dr),Ea=new WebAssembly.Instance(Ml,so)}catch(di){var Wn=di.toString();throw ne("failed to compile wasm module: "+Wn),(Wn.includes("imported Memory")||Wn.includes("memory import"))&&ne("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),di}return[Ea,Ml]}function Cg(){var Zs={a:Qh};function so(Dr,Wn){var di=Dr.exports;r.asm=di,Se=r.asm.g,Fn(Se.buffer),Hi=r.asm.W,Sc(r.asm.h),Or("wasm-instantiate")}if(Rn("wasm-instantiate"),r.instantiateWasm)try{var Ea=r.instantiateWasm(Zs,so);return Ea}catch(Dr){return ne("Module.instantiateWasm callback failed with error: "+Dr),!1}var Ml=gc(bo,Zs);return so(Ml[0]),r.asm}function Nc(Zs){return jt.getFloat32(Zs,!0)}function iA(Zs){return jt.getFloat64(Zs,!0)}function ma(Zs){return jt.getInt16(Zs,!0)}function vu(Zs){return jt.getInt32(Zs,!0)}function li(Zs,so){jt.setInt32(Zs,so,!0)}function Ei(Zs){for(;Zs.length>0;){var so=Zs.shift();if(typeof so=="function"){so(r);continue}var Ea=so.func;typeof Ea=="number"?so.arg===void 0?Hi.get(Ea)():Hi.get(Ea)(so.arg):Ea(so.arg===void 0?null:so.arg)}}function Ps(Zs,so){var Ea=new Date(vu((Zs>>2)*4)*1e3);li((so>>2)*4,Ea.getUTCSeconds()),li((so+4>>2)*4,Ea.getUTCMinutes()),li((so+8>>2)*4,Ea.getUTCHours()),li((so+12>>2)*4,Ea.getUTCDate()),li((so+16>>2)*4,Ea.getUTCMonth()),li((so+20>>2)*4,Ea.getUTCFullYear()-1900),li((so+24>>2)*4,Ea.getUTCDay()),li((so+36>>2)*4,0),li((so+32>>2)*4,0);var Ml=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Ml)/(1e3*60*60*24)|0;return li((so+28>>2)*4,Dr),Ps.GMTString||(Ps.GMTString=er("GMT")),li((so+40>>2)*4,Ps.GMTString),so}function Xa(Zs,so){return Ps(Zs,so)}function ac(Zs,so,Ea){Xt.copyWithin(Zs,so,so+Ea)}function Yl(Zs){try{return Se.grow(Zs-Zr.byteLength+65535>>>16),Fn(Se.buffer),1}catch{}}function Wc(Zs){var so=Xt.length;Zs=Zs>>>0;var Ea=2147483648;if(Zs>Ea)return!1;for(var Ml=1;Ml<=4;Ml*=2){var Dr=so*(1+.2/Ml);Dr=Math.min(Dr,Zs+100663296);var Wn=Math.min(Ea,xt(Math.max(Zs,Dr),65536)),di=Yl(Wn);if(di)return!0}return!1}function Sg(Zs){fe(Zs)}function Ul(Zs){var so=Date.now()/1e3|0;return Zs&&li((Zs>>2)*4,so),so}function Xu(){if(Xu.called)return;Xu.called=!0;var Zs=new Date().getFullYear(),so=new Date(Zs,0,1),Ea=new Date(Zs,6,1),Ml=so.getTimezoneOffset(),Dr=Ea.getTimezoneOffset(),Wn=Math.max(Ml,Dr);li((Ca()>>2)*4,Wn*60),li((Wa()>>2)*4,+(Ml!=Dr));function di(LA){var pf=LA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return pf?pf[1]:"GMT"}var aa=di(so),Bo=di(Ea),us=er(aa),Ql=er(Bo);Dr>2)*4,us),li((Fs()+4>>2)*4,Ql)):(li((Fs()>>2)*4,Ql),li((Fs()+4>>2)*4,us))}function Da(Zs){Xu();var so=Date.UTC(vu((Zs+20>>2)*4)+1900,vu((Zs+16>>2)*4),vu((Zs+12>>2)*4),vu((Zs+8>>2)*4),vu((Zs+4>>2)*4),vu((Zs>>2)*4),0),Ea=new Date(so);li((Zs+24>>2)*4,Ea.getUTCDay());var Ml=Date.UTC(Ea.getUTCFullYear(),0,1,0,0,0,0),Dr=(Ea.getTime()-Ml)/(1e3*60*60*24)|0;return li((Zs+28>>2)*4,Dr),Ea.getTime()/1e3|0}var pu=typeof atob=="function"?atob:function(Zs){var so="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ea="",Ml,Dr,Wn,di,aa,Bo,us,Ql=0;Zs=Zs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do di=so.indexOf(Zs.charAt(Ql++)),aa=so.indexOf(Zs.charAt(Ql++)),Bo=so.indexOf(Zs.charAt(Ql++)),us=so.indexOf(Zs.charAt(Ql++)),Ml=di<<2|aa>>4,Dr=(aa&15)<<4|Bo>>2,Wn=(Bo&3)<<6|us,Ea=Ea+String.fromCharCode(Ml),Bo!==64&&(Ea=Ea+String.fromCharCode(Dr)),us!==64&&(Ea=Ea+String.fromCharCode(Wn));while(Ql0||(ga(),Wr>0))return;function so(){HA||(HA=!0,r.calledRun=!0,!De&&(Ya(),n(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),Gc()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),so()},1)):so()}if(r.run=df,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return df(),t}}();typeof tAt=="object"&&typeof sAr=="object"?sAr.exports=iAr:typeof define=="function"&&define.amd?define([],function(){return iAr}):typeof tAt=="object"&&(tAt.createModule=iAr)});var pZn=H(Eve=>{"use strict";Object.defineProperty(Eve,"__esModule",{value:!0});Eve.makeInterface=Eve.Errors=void 0;var c$=["number","number"],oAr;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(oAr||(Eve.Errors=oAr={}));var mWo=e=>({get HEAPU8(){return e.HEAPU8},errors:oAr,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...c$,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...c$,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...c$,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...c$,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...c$,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...c$,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...c$,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...c$,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...c$,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});Eve.makeInterface=mWo});var IZn=H(h5e=>{"use strict";Object.defineProperty(h5e,"__esModule",{value:!0});h5e.ZipOpenFS=void 0;h5e.getArchivePart=cAr;var CWo=ro(),aAr=ro(),fZn=zK();function cAr(e,t){let r=e.indexOf(t);if(r<=0)return null;let n=r;for(;r>=0&&(n=r+t.length,e[n]!==aAr.ppath.sep);){if(e[r-1]===aAr.ppath.sep)return null;r=e.indexOf(t,n)}return e.length>n&&e[n]!==aAr.ppath.sep?null:e.slice(0,n)}var lAr=class e extends CWo.MountFS{static async openPromise(t,r){let n=new e(r);try{return await t(n)}finally{n.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,n=t.readOnlyArchives,a=typeof r>"u"?A=>cAr(A,".zip"):A=>{for(let f of r){let I=cAr(A,f);if(I)return I}return null},o=(A,f)=>new fZn.ZipFS(f,{baseFs:A,readOnly:n,stats:A.statSync(f),customZipImplementation:t.customZipImplementation}),l=async(A,f)=>{let I={baseFs:A,readOnly:n,stats:await A.statPromise(f),customZipImplementation:t.customZipImplementation};return()=>new fZn.ZipFS(f,I)};super({...t,factorySync:o,factoryPromise:l,getMountPoint:a})}};h5e.ZipOpenFS=lAr});var gAr=H(Sve=>{"use strict";Object.defineProperty(Sve,"__esModule",{value:!0});Sve.LibZipImpl=Sve.LibzipError=void 0;var _Wo=nAr(),rAt=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};Sve.LibzipError=rAt;var uAr=class{constructor(t){this.filesShouldBeCached=!0;let r="buffer"in t?t.buffer:t.baseFs.readFileSync(t.path);this.libzip=(0,_Wo.getInstance)();let n=this.libzip.malloc(4);try{let l=0;t.readOnly&&(l|=this.libzip.ZIP_RDONLY);let A=this.allocateUnattachedSource(r);try{this.zip=this.libzip.openFromSource(A,l,n),this.lzSource=A}catch(f){throw this.libzip.source.free(A),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(n,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(n)}let a=this.libzip.getNumEntries(this.zip,0),o=new Array(a);for(let l=0;l>>0,o=this.libzip.struct.statMtime(r)>>>0,l=this.libzip.struct.statCrc(r)>>>0;return{size:a,mtime:o,crc:l}}makeLibzipError(t){let r=this.libzip.struct.errorCodeZip(t),n=this.libzip.error.strerror(t),a=new rAt(n,this.libzip.errors[r]);if(r===this.libzip.errors.ZIP_ER_CHANGED)throw new Error(`Assertion failed: Unexpected libzip error: ${a.message}`);return a}setFileSource(t,r,n){let a=this.allocateSource(n);try{let o=this.libzip.file.add(this.zip,t,a,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(r!==null&&this.libzip.file.setCompression(this.zip,o,0,r[0],r[1])===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return o}catch(o){throw this.libzip.source.free(a),o}}setMtime(t,r){if(this.libzip.file.setMtime(this.zip,t,0,r,0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}getExternalAttributes(t){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let n=this.libzip.getValue(this.libzip.uint08S,"i8")>>>0,a=this.libzip.getValue(this.libzip.uint32S,"i32")>>>0;return[n,a]}setExternalAttributes(t,r,n){if(this.libzip.file.setExternalAttributes(this.zip,t,0,0,r,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}locate(t){return this.libzip.name.locate(this.zip,t,0)}getFileSource(t){let r=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.libzip.struct.statCompSize(r),o=this.libzip.struct.statCompMethod(r),l=this.libzip.malloc(a);try{let A=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(A===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let f=this.libzip.fread(A,l,a,0);if(f===-1)throw this.makeLibzipError(this.libzip.file.getError(A));if(fa)throw new Error("Overread");let I=this.libzip.HEAPU8.subarray(l,l+a);return{data:Buffer.from(I),compressionMethod:o}}finally{this.libzip.fclose(A)}}finally{this.libzip.free(l)}}deleteEntry(t){if(this.libzip.delete(this.zip,t)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}addDirectory(t){let r=this.libzip.dir.add(this.zip,t);if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return r}getBufferAndClose(){try{if(this.libzip.source.keep(this.lzSource),this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.libzip.source.open(this.lzSource)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_END)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let t=this.libzip.source.tell(this.lzSource);if(t===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(this.libzip.source.seek(this.lzSource,0,0,this.libzip.SEEK_SET)===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));let r=this.libzip.malloc(t);if(!r)throw new Error("Couldn't allocate enough memory");try{let n=this.libzip.source.read(this.lzSource,r,t);if(n===-1)throw this.makeLibzipError(this.libzip.source.error(this.lzSource));if(nt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource)}}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:n,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(n,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:n}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,n,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}discard(){this.libzip.discard(this.zip)}};Sve.LibZipImpl=uAr});var iAt=H(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});Lv.ZipFS=Lv.DEFAULT_COMPRESSION_LEVEL=Lv.DEFLATE=Lv.STORE=Lv.ZIP_UNIX=void 0;Lv.makeEmptyArchive=nAt;var yWo=(Pa(),vi(Va)),bWo=ro(),EWo=ro(),SWo=ro(),AAr=ro(),pA=ro(),bh=ro(),X9=wt("fs"),hZn=wt("stream"),vWo=wt("util"),mZn=yWo.__importDefault(wt("zlib")),BWo=gAr();Lv.ZIP_UNIX=3;Lv.STORE=0;Lv.DEFLATE=8;Lv.DEFAULT_COMPRESSION_LEVEL="mixed";function wWo(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(vWo.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function nAt(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var dAr=class extends bWo.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1,r.readOnly&&(this.readOnly=!0);let n=r;this.level=typeof n.level<"u"?n.level:Lv.DEFAULT_COMPRESSION_LEVEL;let a=r.customZipImplementation??BWo.LibZipImpl;if(typeof t=="string"){let{baseFs:l=new EWo.NodeFS}=n;this.baseFs=l,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(l){if(l.code==="ENOENT"&&n.create)this.stats=pA.statUtils.makeDefaultStats();else throw l}else this.stats=pA.statUtils.makeDefaultStats();typeof t=="string"?r.create?this.zipImpl=new a({buffer:nAt(),readOnly:this.readOnly}):this.zipImpl=new a({path:t,baseFs:this.baseFs,readOnly:this.readOnly,size:this.stats.size}):this.zipImpl=new a({buffer:t??nAt(),readOnly:this.readOnly}),this.listings.set(bh.PortablePath.root,new Set);let o=this.zipImpl.getListings();for(let l=0;l{this.closeSync(l)};return(0,SWo.opendir)(this,n,o,{onClose:A})}async readPromise(t,r,n,a,o){return this.readSync(t,r,n,a,o)}readSync(t,r,n=0,a=r.byteLength,o=-1){let l=this.fds.get(t);if(typeof l>"u")throw pA.errors.EBADF("read");let A=o===-1||o===null?l.cursor:o,f=this.readFileSync(l.p);f.copy(r,n,A,A+a);let I=Math.max(0,Math.min(f.length-A,a));return(o===-1||o===null)&&(l.cursor+=I),I}async writePromise(t,r,n,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,n,a,o)}writeSync(t,r,n,a,o){throw typeof this.fds.get(t)>"u"?pA.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw pA.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let n=this.openSync(t,"r"),a=Object.assign(new hZn.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(l,A)=>{clearImmediate(o),this.closeSync(n),A(l)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let l=await this.readFilePromise(t,r);a.bytesRead=l.length,a.end(l)}catch(l){a.destroy(l)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let n=[],a=this.openSync(t,"w"),o=Object.assign(new hZn.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(l,A)=>{try{l?A(l):(this.writeFileSync(t,Buffer.concat(n),r),A(null))}catch(f){A(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",l=>{let A=Buffer.from(l);o.bytesWritten+=A.length,n.push(A)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw pA.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw pA.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let n=bh.ppath.resolve(bh.PortablePath.root,t);return this.entries.has(n)||this.listings.has(n)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=X9.constants.F_OK){let n=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&X9.constants.W_OK)throw pA.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw pA.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,n,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let n=this.fds.get(t);if(typeof n>"u")throw pA.errors.EBADF("fstatSync");let{p:a}=n,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw pA.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw pA.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let n=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(n!==void 0){if(!this.entries.has(n)&&!this.listings.has(n)){if(r.throwIfNoEntry===!1)return;throw pA.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,n,r)}}statImpl(t,r,n={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.zipImpl.stat(a),l=o.crc,A=o.size,f=o.mtime*1e3,I=this.stats.uid,C=this.stats.gid,b=512,E=Math.ceil(o.size/b),N=f,B=f,F=f,Q=new Date(N),X=new Date(B),ae=new Date(F),ne=new Date(f),ce=this.listings.has(r)?X9.constants.S_IFDIR:this.isSymbolicLink(a)?X9.constants.S_IFLNK:X9.constants.S_IFREG,fe=ce===X9.constants.S_IFDIR?493:420,ue=ce|this.getUnixMode(a,fe)&511,de=Object.assign(new pA.statUtils.StatEntry,{uid:I,gid:C,size:A,blksize:b,blocks:E,atime:Q,birthtime:X,ctime:ae,mtime:ne,atimeMs:N,birthtimeMs:B,ctimeMs:F,mtimeMs:f,mode:ue,crc:l});return n.bigint===!0?pA.statUtils.convertToBigIntStats(de):de}if(this.listings.has(r)){let o=this.stats.uid,l=this.stats.gid,A=0,f=512,I=0,C=this.stats.mtimeMs,b=this.stats.mtimeMs,E=this.stats.mtimeMs,N=this.stats.mtimeMs,B=new Date(C),F=new Date(b),Q=new Date(E),X=new Date(N),ae=X9.constants.S_IFDIR|493,ce=Object.assign(new pA.statUtils.StatEntry,{uid:o,gid:l,size:A,blksize:f,blocks:I,atime:B,birthtime:F,ctime:Q,mtime:X,atimeMs:C,birthtimeMs:b,ctimeMs:E,mtimeMs:N,mode:ae,crc:0});return n.bigint===!0?pA.statUtils.convertToBigIntStats(ce):ce}throw new Error("Unreachable")}getUnixMode(t,r){let[n,a]=this.zipImpl.getExternalAttributes(t);return n!==Lv.ZIP_UNIX?r:a>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(bh.ppath.dirname(t)).add(bh.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(bh.ppath.dirname(t)).add(bh.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(bh.ppath.dirname(t))?.delete(bh.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){this.unregisterEntry(t),this.zipImpl.deleteEntry(r)}resolveFilename(t,r,n=!0,a=!0){if(!this.ready)throw pA.errors.EBUSY(`archive closed, ${t}`);let o=bh.ppath.resolve(bh.PortablePath.root,r);if(o==="/")return bh.PortablePath.root;let l=this.entries.get(o);if(n&&l!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(l)){let A=this.getFileSource(l).toString();return this.resolveFilename(t,bh.ppath.resolve(bh.ppath.dirname(o),A),!0,a)}else return o;for(;;){let A=this.resolveFilename(t,bh.ppath.dirname(o),!0,a);if(A===void 0)return A;let f=this.listings.has(A),I=this.entries.has(A);if(!f&&!I){if(a===!1)return;throw pA.errors.ENOENT(t)}if(!f)throw pA.errors.ENOTDIR(t);if(o=bh.ppath.resolve(A,bh.ppath.basename(o)),!n||this.symlinkCount===0)break;let C=this.zipImpl.locate(o.slice(1));if(C===-1)break;if(this.isSymbolicLink(C)){let b=this.getFileSource(C).toString();o=bh.ppath.resolve(bh.ppath.dirname(o),b)}else break}return o}setFileSource(t,r){let n=Buffer.isBuffer(r)?r:Buffer.from(r),a=bh.ppath.relative(bh.PortablePath.root,t),o=null;this.level!=="mixed"&&(o=[this.level===0?Lv.STORE:Lv.DEFLATE,this.level]);let l=this.zipImpl.setFileSource(a,o,n);return this.fileSources.set(l,n),l}isSymbolicLink(t){if(this.symlinkCount===0)return!1;let[r,n]=this.zipImpl.getExternalAttributes(t);return r!==Lv.ZIP_UNIX?!1:(n>>>16&X9.constants.S_IFMT)===X9.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let n=this.fileSources.get(t);if(typeof n<"u")return n;let{data:a,compressionMethod:o}=this.zipImpl.getFileSource(t);if(o===Lv.STORE)return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,a),a;if(o===Lv.DEFLATE){if(r.asyncDecompress)return new Promise((l,A)=>{mZn.default.inflateRaw(a,(f,I)=>{f?A(f):(this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,I),l(I))})});{let l=mZn.default.inflateRawSync(a);return this.zipImpl.filesShouldBeCached&&this.fileSources.set(t,l),l}}else throw new Error(`Unsupported compression method: ${o}`)}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw pA.errors.EROFS(`chmod '${t}'`);r&=493;let n=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(n);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${n})`);let l=this.getUnixMode(a,X9.constants.S_IFREG|0)&-512|r;this.zipImpl.setExternalAttributes(a,Lv.ZIP_UNIX,l<<16)}async fchownPromise(t,r,n){return this.chownPromise(this.fdToPath(t,"fchown"),r,n)}fchownSync(t,r,n){return this.chownSync(this.fdToPath(t,"fchownSync"),r,n)}async chownPromise(t,r,n){return this.chownSync(t,r,n)}chownSync(t,r,n){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,n){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}copyFileSync(t,r,n=0){let{indexSource:a,indexDest:o,resolvedDestP:l}=this.prepareCopyFile(t,r,n),A=this.getFileSource(a),f=this.setFileSource(l,A);f!==o&&this.registerEntry(l,f)}prepareCopyFile(t,r,n=0){if(this.readOnly)throw pA.errors.EROFS(`copyfile '${t} -> '${r}'`);if(n&X9.constants.COPYFILE_FICLONE_FORCE)throw pA.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw pA.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let l=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),A=this.entries.get(l);if(n&(X9.constants.COPYFILE_EXCL|X9.constants.COPYFILE_FICLONE_FORCE)&&typeof A<"u")throw pA.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:l,indexDest:A}}async appendFilePromise(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFilePromise(t,r,n)}appendFileSync(t,r,n={}){if(this.readOnly)throw pA.errors.EROFS(`open '${t}'`);return typeof n>"u"?n={flag:"a"}:typeof n=="string"?n={flag:"a",encoding:n}:typeof n.flag>"u"&&(n={flag:"a",...n}),this.writeFileSync(t,r,n)}fdToPath(t,r){let n=this.fds.get(t)?.p;if(typeof n>"u")throw pA.errors.EBADF(r);return n}async writeFilePromise(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(l,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&await this.chmodPromise(A,o)}writeFileSync(t,r,n){let{encoding:a,mode:o,index:l,resolvedP:A}=this.prepareWriteFile(t,n);l!==void 0&&typeof n=="object"&&n.flag&&n.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(l),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(A,r);f!==l&&this.registerEntry(A,f),o!==null&&this.chmodSync(A,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw pA.errors.EROFS(`open '${t}'`);let n=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(n))throw pA.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let l=this.entries.get(n);return{encoding:a,mode:o,resolvedP:n,index:l}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw pA.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw pA.errors.EISDIR(`unlink '${t}'`);let n=this.entries.get(r);if(typeof n>"u")throw pA.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,n)}async utimesPromise(t,r,n){return this.utimesSync(t,r,n)}utimesSync(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,n)}async lutimesPromise(t,r,n){return this.lutimesSync(t,r,n)}lutimesSync(t,r,n){if(this.readOnly)throw pA.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,n)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let n=this.entries.get(t);if(n===void 0)throw new Error("Unreachable");this.zipImpl.setMtime(n,wWo(r))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:n=!1}={}){if(n)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw pA.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw pA.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw pA.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw pA.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw pA.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw pA.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let n=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw pA.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(n);if(typeof o>"u")throw pA.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.zipImpl.addDirectory(bh.ppath.relative(bh.PortablePath.root,t));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw pA.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw pA.errors.EROFS(`symlink '${t}' -> '${r}'`);let n=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(n))throw pA.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(n))throw pA.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(n,t);this.registerEntry(n,a),this.zipImpl.setExternalAttributes(a,Lv.ZIP_UNIX,(X9.constants.S_IFLNK|511)<<16),this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=await this.readFileBuffer(t,{asyncDecompress:!0});return r?n.toString(r):n}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let n=this.readFileBuffer(t);return r?n.toString(r):n}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let n=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(n))throw pA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(n))throw pA.errors.EISDIR("read");let a=this.entries.get(n);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let n=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(n)&&!this.listings.has(n))throw pA.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(n);if(!a)throw pA.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,l=>Object.assign(this.statImpl("lstat",bh.ppath.join(t,l)),{name:l,path:bh.PortablePath.dot,parentPath:bh.PortablePath.dot}));for(let l of o){if(!l.isDirectory())continue;let A=bh.ppath.join(l.path,l.name),f=this.listings.get(bh.ppath.join(n,A));for(let I of f)o.push(Object.assign(this.statImpl("lstat",bh.ppath.join(t,A,I)),{name:I,path:A,parentPath:A}))}return o}else{let o=[...a];for(let l of o){let A=this.listings.get(bh.ppath.join(n,l));if(!(typeof A>"u"))for(let f of A)o.push(bh.ppath.join(l,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",bh.ppath.join(t,o)),{name:o,path:void 0,parentPath:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw pA.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw pA.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw pA.errors.EINVAL(`readlink '${t}'`);let n=this.entries.get(r);if(n===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(n))throw pA.errors.EINVAL(`readlink '${t}'`);return n}async truncatePromise(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw pA.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),l=Buffer.alloc(r,0);return o.copy(l),await this.writeFilePromise(t,l)}truncateSync(t,r=0){let n=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(n);if(typeof a>"u")throw pA.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),l=Buffer.alloc(r,0);return o.copy(l),this.writeFileSync(t,l)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,n){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,n){let a=bh.ppath.resolve(bh.PortablePath.root,t);return(0,AAr.watchFile)(this,a,r,n)}unwatchFile(t,r){let n=bh.ppath.resolve(bh.PortablePath.root,t);return(0,AAr.unwatchFile)(this,n,r)}};Lv.ZipFS=dAr});var CZn=H(pAr=>{"use strict";Object.defineProperty(pAr,"__esModule",{value:!0});pAr.mountMemoryDrive=DWo;var TWo=(Pa(),vi(Va)),sAt=ro(),RWo=TWo.__importDefault(wt("fs")),NWo=iAt();function DWo(e,t,r=Buffer.alloc(0),n){let a=new NWo.ZipFS(r),o=b=>b===t||b.startsWith(`${t}/`)?b.slice(0,t.length):null,l=async(b,E)=>()=>a,A=(b,E)=>a,f={...e},I=new sAt.NodeFS(f),C=new sAt.MountFS({baseFs:I,getMountPoint:o,factoryPromise:l,factorySync:A,magicByte:21,maxAge:1/0,typeCheck:n?.typeCheck});return(0,sAt.patchFs)(RWo.default,new sAt.PosixFS(C)),a}});var yZn=H(vve=>{"use strict";Object.defineProperty(vve,"__esModule",{value:!0});vve.mountMemoryDrive=void 0;var _Zn=(Pa(),vi(Va));_Zn.__exportStar(IZn(),vve);_Zn.__exportStar(iAt(),vve);var kWo=CZn();Object.defineProperty(vve,"mountMemoryDrive",{enumerable:!0,get:function(){return kWo.mountMemoryDrive}})});var bZn=H(oAt=>{"use strict";Object.defineProperty(oAt,"__esModule",{value:!0});oAt.JsZipImpl=void 0;var fAr=ro(),xWo=iAt(),IAr={CENTRAL_DIRECTORY:33639248,END_OF_CENTRAL_DIRECTORY:101010256},m5e=22,hAr=class e{constructor(t){if(this.filesShouldBeCached=!1,"buffer"in t)throw new Error("Buffer based zip archives are not supported");if(!t.readOnly)throw new Error("Writable zip archives are not supported");this.baseFs=t.baseFs,this.fd=this.baseFs.openSync(t.path,"r");try{this.entries=e.readZipSync(this.fd,this.baseFs,t.size)}catch(r){throw this.baseFs.closeSync(this.fd),this.fd="closed",r}}static readZipSync(t,r,n){if(n=0;Q--)if(o.readUInt32LE(Q)===IAr.END_OF_CENTRAL_DIRECTORY){a=Q;break}if(a===-1)throw new Error("Not a zip archive")}let l=o.readUInt16LE(a+10),A=o.readUInt32LE(a+12),f=o.readUInt32LE(a+16),I=o.readUInt16LE(a+20);if(a+I+m5e>o.length)throw new Error("Zip archive inconsistent");if(l==65535||A==4294967295||f==4294967295)throw new Error("Zip 64 is not supported");if(A>n)throw new Error("Zip archive inconsistent");if(l>A/46)throw new Error("Zip archive inconsistent");let C=Buffer.alloc(A);if(r.readSync(t,C,0,C.length,f)!==C.length)throw new Error("Zip archive inconsistent");let b=[],E=0,N=0,B=0;for(;NC.length)throw new Error("Zip archive inconsistent");if(C.readUInt32LE(E)!==IAr.CENTRAL_DIRECTORY)throw new Error("Zip archive inconsistent");let Q=C.readUInt16LE(E+4)>>>8;if(C.readUInt16LE(E+8)&1)throw new Error("Encrypted zip files are not supported");let ae=C.readUInt16LE(E+10),ne=C.readUInt32LE(E+16),ce=C.readUInt16LE(E+28),fe=C.readUInt16LE(E+30),ue=C.readUInt16LE(E+32),de=C.readUInt32LE(E+42),be=C.toString("utf8",E+46,E+46+ce).replaceAll("\0"," ");if(be.includes("\0"))throw new Error("Invalid ZIP file");let Se=C.readUInt32LE(E+20),De=C.readUInt32LE(E+38);b.push({name:be,os:Q,mtime:fAr.constants.SAFE_TIME,crc:ne,compressionMethod:ae,isSymbolicLink:Q===xWo.ZIP_UNIX&&(De>>>16&fAr.constants.S_IFMT)===fAr.constants.S_IFLNK,size:C.readUInt32LE(E+24),compressedSize:Se,externalAttributes:De,localHeaderOffset:de}),B+=Se,N+=1,E+=46+ce+fe+ue}if(B>n)throw new Error("Zip archive inconsistent");if(E!==C.length)throw new Error("Zip archive inconsistent");return b}getExternalAttributes(t){let r=this.entries[t];return[r.os,r.externalAttributes]}getListings(){return this.entries.map(t=>t.name)}getSymlinkCount(){let t=0;for(let r of this.entries)r.isSymbolicLink&&(t+=1);return t}stat(t){let r=this.entries[t];return{crc:r.crc,mtime:r.mtime,size:r.size}}locate(t){for(let r=0;r{"use strict";Object.defineProperty(l$,"__esModule",{value:!0});l$.LibZipImpl=l$.JsZipImpl=void 0;l$.getLibzipSync=ZWo;l$.getLibzipPromise=LWo;var EZn=(Pa(),vi(Va)),mAr=nAr(),GWo=EZn.__importDefault(dZn()),FWo=pZn();EZn.__exportStar(yZn(),l$);(0,mAr.setFactory)(()=>{let e=(0,GWo.default)();return(0,FWo.makeInterface)(e)});function ZWo(){return(0,mAr.getInstance)()}async function LWo(){return(0,mAr.getInstance)()}var VWo=bZn();Object.defineProperty(l$,"JsZipImpl",{enumerable:!0,get:function(){return VWo.JsZipImpl}});var PWo=gAr();Object.defineProperty(l$,"LibZipImpl",{enumerable:!0,get:function(){return PWo.LibZipImpl}})});var SZn=H(CAr=>{"use strict";Object.defineProperty(CAr,"__esModule",{value:!0});var WWo=ro(),aAt=($c(),vi(rg)),OWo=C5e(),cAt=class extends aAt.Command{constructor(){super(...arguments),this.cwd=aAt.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=aAt.Option.String(),this.args=aAt.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,OWo.execute)(t,[],{cwd:WWo.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};cAt.usage={description:"run a command using yarn's portable shell",details:` - This command will run a command using Yarn's portable shell. - - Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell. - - Note: To escape something from Yarn's shell, you might have to escape it twice, the first time from your own shell. - - Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used. - - For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md. - `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};CAr.default=cAt});var vZn=H(lAt=>{"use strict";Object.defineProperty(lAt,"__esModule",{value:!0});lAt.ShellError=void 0;var _Ar=class extends Error{constructor(t){super(t),this.name="ShellError"}};lAt.ShellError=_Ar});var BZn=H(GW=>{"use strict";Object.defineProperty(GW,"__esModule",{value:!0});GW.fastGlobOptions=GW.micromatchOptions=void 0;GW.isGlobPattern=YWo;GW.match=QWo;GW.isBraceExpansion=XWo;var EAr=(Pa(),vi(Va)),yAr=ro(),MWo=EAr.__importDefault(nve()),HWo=EAr.__importDefault(wt("fs")),bAr=EAr.__importDefault(Ek());GW.micromatchOptions={strictBrackets:!0};GW.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function YWo(e){if(!bAr.default.scan(e,GW.micromatchOptions).isGlob)return!1;try{bAr.default.parse(e,GW.micromatchOptions)}catch{return!1}return!0}function QWo(e,{cwd:t,baseFs:r}){return(0,MWo.default)(e,{...GW.fastGlobOptions,cwd:yAr.npath.fromPortablePath(t),fs:(0,yAr.extendFs)(HWo.default,new yAr.PosixFS(r))})}function XWo(e){return bAr.default.scan(e,GW.micromatchOptions).isBrace}});var TAr=H(AM=>{"use strict";Object.defineProperty(AM,"__esModule",{value:!0});AM.Handle=AM.ProtectedStream=AM.Pipe=void 0;AM.makeProcess=jWo;AM.makeBuiltin=zWo;AM.start=qWo;AM.createOutputStreamsWithPrefix=$Wo;var JWo=(Pa(),vi(Va)),UWo=JWo.__importDefault(Zct()),woe=wt("stream"),KWo=wt("string_decoder"),sIe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(sIe||(AM.Pipe=sIe={}));var iIe=new Set;function SAr(){}function vAr(){for(let e of iIe)e.kill()}function jWo(e,t,r,n){return a=>{let o=a[0]instanceof woe.Transform?"pipe":a[0],l=a[1]instanceof woe.Transform?"pipe":a[1],A=a[2]instanceof woe.Transform?"pipe":a[2],f=(0,UWo.default)(e,t,{...n,stdio:[o,l,A]});return iIe.add(f),iIe.size===1&&(process.on("SIGINT",SAr),process.on("SIGTERM",vAr)),a[0]instanceof woe.Transform&&a[0].pipe(f.stdin),a[1]instanceof woe.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof woe.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(I=>{f.on("error",C=>{switch(iIe.delete(f),iIe.size===0&&(process.off("SIGINT",SAr),process.off("SIGTERM",vAr)),C.code){case"ENOENT":a[2].write(`command not found: ${e} -`),I(127);break;case"EACCES":a[2].write(`permission denied: ${e} -`),I(128);break;default:a[2].write(`uncaught error: ${C.message} -`),I(1);break}}),f.on("close",C=>{iIe.delete(f),iIe.size===0&&(process.off("SIGINT",SAr),process.off("SIGTERM",vAr)),I(C!==null?C:129)})})}}}function zWo(e){return t=>{let r=t[0]==="pipe"?new woe.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var BAr=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};AM.ProtectedStream=BAr;var wAr=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},uAt=class e{static start(t,{stdin:r,stdout:n,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=n,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=sIe.STDOUT){let n=new e(this,t),a=new wAr;return n.pipe=a,n.stdout=this.stdout,n.stderr=this.stderr,(r&sIe.STDOUT)===sIe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&sIe.STDERR)===sIe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),n}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let n;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");n=this.stderr,t[2]=n.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),n.close(),o))}async run(){let t=[];for(let n=this;n;n=n.ancestor)t.push(n.exec());return(await Promise.all(t))[0]}};AM.Handle=uAt;function qWo(e,t){return uAt.start(e,t)}function wZn(e,t=null){let r=new woe.PassThrough,n=new KWo.StringDecoder,a="";return r.on("data",o=>{let l=n.write(o),A;do if(A=l.indexOf(` -`),A!==-1){let f=a+l.substring(0,A);l=l.substring(A+1),a="",e(t!==null?`${t} ${f}`:f)}while(A!==-1);a+=l}),r.on("end",()=>{let o=n.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function $Wo(e,{prefix:t}){return{stdout:wZn(r=>e.stdout.write(`${r} -`),e.stdout.isTTY?t:null),stderr:wZn(r=>e.stderr.write(`${r} -`),e.stderr.isTTY?t:null)}}});var C5e=H(u$=>{"use strict";Object.defineProperty(u$,"__esModule",{value:!0});u$.globUtils=u$.ShellError=u$.EntryCommand=void 0;u$.execute=gOo;var DAr=(Pa(),vi(Va)),qK=ro(),kZn=TW(),eOo=DAr.__importDefault(VK()),tOo=wt("os"),AX=wt("stream"),rOo=wt("timers/promises"),nOo=DAr.__importDefault(SZn());u$.EntryCommand=nOo.default;var $K=vZn();Object.defineProperty(u$,"ShellError",{enumerable:!0,get:function(){return $K.ShellError}});var kAr=DAr.__importStar(BZn());u$.globUtils=kAr;var RAr=TAr(),KN=TAr(),pG;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(pG||(pG={}));function TZn(e,t,r){let n=new AX.PassThrough({autoDestroy:!0});switch(e){case KN.Pipe.STDIN:(t&pG.Readable)===pG.Readable&&r.stdin.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&r.stdin instanceof AX.Writable&&n.pipe(r.stdin,{end:!1});break;case KN.Pipe.STDOUT:(t&pG.Readable)===pG.Readable&&r.stdout.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&n.pipe(r.stdout,{end:!1});break;case KN.Pipe.STDERR:(t&pG.Readable)===pG.Readable&&r.stderr.pipe(n,{end:!1}),(t&pG.Writable)===pG.Writable&&n.pipe(r.stderr,{end:!1});break;default:throw new $K.ShellError(`Bad file descriptor: "${e}"`)}return n}function AAt(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var iOo=new Map([["cd",async([e=(0,tOo.homedir)(),...t],r,n)=>{let a=qK.ppath.resolve(n.cwd,qK.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(l=>{throw l.code==="ENOENT"?new $K.ShellError(`cd: no such file or directory: ${e}`):l})).isDirectory())throw new $K.ShellError(`cd: not a directory: ${e}`);return n.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${qK.npath.fromPortablePath(r.cwd)} -`),0)],[":",async(e,t,r)=>0],["true",async(e,t,r)=>0],["false",async(e,t,r)=>1],["exit",async([e,...t],r,n)=>n.exitCode=parseInt(e??n.variables["?"],10)],["echo",async(e,t,r)=>(r.stdout.write(`${e.join(" ")} -`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new $K.ShellError("sleep: missing operand");let n=Number(e);if(Number.isNaN(n))throw new $K.ShellError(`sleep: invalid time interval '${e}'`);return await(0,rOo.setTimeout)(1e3*n,0)}],["unset",async(e,t,r)=>{for(let n of e)delete r.environment[n],delete r.variables[n];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let n=r.procedures[e[0]];return await(0,KN.start)(n,{stdin:new KN.ProtectedStream(r.stdin),stdout:new KN.ProtectedStream(r.stdout),stderr:new KN.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let n=r.stdin,a=r.stdout,o=r.stderr,l=[],A=[],f=[],I=0;for(;e[I]!=="--";){let b=e[I++],{type:E,fd:N}=JSON.parse(b),B=ae=>{switch(N){case null:case 0:l.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},F=ae=>{switch(N){case null:case 1:A.push(ae);break;case 2:f.push(ae);break;default:throw new Error(`Unsupported file descriptor: "${N}"`)}},Q=Number(e[I++]),X=I+Q;for(let ae=I;aet.baseFs.createReadStream(qK.ppath.resolve(r.cwd,qK.npath.toPortablePath(e[ae]))));break;case"<<<":B(()=>{let ne=new AX.PassThrough;return process.nextTick(()=>{ne.write(`${e[ae]} -`),ne.end()}),ne});break;case"<&":B(()=>TZn(Number(e[ae]),pG.Readable,r));break;case">":case">>":{let ne=qK.ppath.resolve(r.cwd,qK.npath.toPortablePath(e[ae]));F(ne==="/dev/null"?new AX.Writable({autoDestroy:!0,emitClose:!0,write(ce,fe,ue){setImmediate(ue)}}):t.baseFs.createWriteStream(ne,E===">>"?{flags:"a"}:void 0))}break;case">&":F(TZn(Number(e[ae]),pG.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${E}"`)}}if(l.length>0){let b=new AX.PassThrough;n=b;let E=N=>{if(N===l.length)b.end();else{let B=l[N]();B.pipe(b,{end:!1}),B.on("end",()=>{E(N+1)})}};E(0)}if(A.length>0){let b=new AX.PassThrough;a=b;for(let E of A)b.pipe(E)}if(f.length>0){let b=new AX.PassThrough;o=b;for(let E of f)b.pipe(E)}let C=await(0,KN.start)(y5e(e.slice(I+1),t,r),{stdin:new KN.ProtectedStream(n),stdout:new KN.ProtectedStream(a),stderr:new KN.ProtectedStream(o)}).run();return await Promise.all(A.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),await Promise.all(f.map(b=>new Promise((E,N)=>{b.on("error",B=>{N(B)}),b.on("close",()=>{E()}),b.end()}))),C}]]);async function sOo(e,t,r){let n=[],a=new AX.PassThrough;return a.on("data",o=>n.push(o)),await dAt(e,t,AAt(r,{stdout:a})),Buffer.concat(n).toString().replace(/[\r\n]+$/,"")}async function RZn(e,t,r){let n=e.map(async o=>{let l=await oIe(o.args,t,r);return{name:o.name,value:l.join(" ")}});return(await Promise.all(n)).reduce((o,l)=>(o[l.name]=l.value,o),{})}function gAt(e){return e.match(/[^ \r\n\t]+/g)||[]}async function xZn(e,t,r,n,a=n){switch(e.name){case"$":n(String(process.pid));break;case"#":n(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let l=gAt(o);for(let A=0;A=0&&o"u"&&(e.defaultValue?l=(await oIe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(l="")),typeof l>"u")throw A?new $K.ShellError(`Unbound argument #${o}`):new $K.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)n(l);else{let f=gAt(l);for(let C=0;Ce+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function _5e(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let n=[];await xZn({...e,quoted:!0},t,r,o=>n.push(o));let a=Number(n.join(" "));return Number.isNaN(a)?_5e({type:"variable",name:n.join(" ")},t,r):_5e({type:"number",value:a},t,r)}else return oOo[e.type](await _5e(e.left,t,r),await _5e(e.right,t,r))}async function oIe(e,t,r){let n=new Map,a=[],o=[],l=C=>{o.push(C)},A=()=>{o.length>0&&a.push(o.join("")),o=[]},f=C=>{l(C),A()},I=(C,b,E)=>{let N=JSON.stringify({type:C,fd:b}),B=n.get(N);typeof B>"u"&&n.set(N,B=[]),B.push(E)};for(let C of e){let b=!1;switch(C.type){case"redirection":{let E=await oIe(C.args,t,r);for(let N of E)I(C.subtype,C.fd,N)}break;case"argument":for(let E of C.segments)switch(E.type){case"text":l(E.text);break;case"glob":l(E.pattern),b=!0;break;case"shell":{let N=await sOo(E.shell,t,r);if(E.quoted)l(N);else{let B=gAt(N);for(let F=0;F"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let N=await t.glob.match(E,{cwd:r.cwd,baseFs:t.baseFs});if(N.length===0){let B=kAr.isBraceExpansion(E)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new $K.ShellError(`No matches found: "${E}"${B}`)}for(let B of N.sort())f(B)}}if(n.size>0){let C=[];for(let[b,E]of n.entries())C.splice(C.length,0,b,String(E.length),...E);a.splice(0,0,"__ysh_set_redirects",...C,"--")}return a}function y5e(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let n=qK.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:n});let[o,...l]=e;if(o==="command")return(0,RAr.makeProcess)(l[0],l.slice(1),t,{cwd:n,env:a});let A=t.builtins.get(o);if(typeof A>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,RAr.makeBuiltin)(async({stdin:f,stdout:I,stderr:C})=>{let{stdin:b,stdout:E,stderr:N}=r;r.stdin=f,r.stdout=I,r.stderr=C;try{return await A(l,t,r)}finally{r.stdin=b,r.stdout=E,r.stderr=N}})}function aOo(e,t,r){return n=>{let a=new AX.PassThrough,o=dAt(e,t,AAt(r,{stdin:a}));return{stdin:a,promise:o}}}function cOo(e,t,r){return n=>{let a=new AX.PassThrough,o=dAt(e,t,r);return{stdin:a,promise:o}}}function NZn(e,t,r,n){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(n.procedures,a));return n.procedures={...n.procedures},n.procedures[a]=e,y5e([...t,"__ysh_run_procedure",a],r,n)}}async function DZn(e,t,r){let n=e,a=null,o=null;for(;n;){let l=n.then?{...r}:r,A;switch(n.type){case"command":{let f=await oIe(n.args,t,r),I=await RZn(n.envs,t,r);A=n.envs.length?y5e(f,t,AAt(l,{environment:I})):y5e(f,t,l)}break;case"subshell":{let f=await oIe(n.args,t,r),I=aOo(n.subshell,t,l);A=NZn(I,f,t,l)}break;case"group":{let f=await oIe(n.args,t,r),I=cOo(n.group,t,l);A=NZn(I,f,t,l)}break;case"envs":{let f=await RZn(n.envs,t,r);l.environment={...l.environment,...f},A=y5e(["true"],t,l)}break}if(typeof A>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,KN.start)(A,{stdin:new KN.ProtectedStream(l.stdin),stdout:new KN.ProtectedStream(l.stdout),stderr:new KN.ProtectedStream(l.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(A,KN.Pipe.STDOUT);break;case"|&":o=o.pipeTo(A,KN.Pipe.STDOUT|KN.Pipe.STDERR);break}}n.then?(a=n.then.type,n=n.then.chain):n=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function lOo(e,t,r,{background:n=!1}={}){function a(o){let l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[o%l.length];return eOo.default.hex(A)}if(n){let o=r.nextBackgroundJobIndex++,l=a(o),A=`[${o}]`,f=l(A),{stdout:I,stderr:C}=(0,RAr.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(DZn(e,t,AAt(r,{stdout:I,stderr:C})).catch(b=>C.write(`${b.message} -`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${l((0,kZn.stringifyCommandChain)(e))}' has ended -`)})),0}return await DZn(e,t,r)}async function uOo(e,t,r,{background:n=!1}={}){let a,o=A=>{a=A,r.variables["?"]=String(A)},l=async A=>{try{return await lOo(A.chain,t,r,{background:n&&typeof A.then>"u"})}catch(f){if(!(f instanceof $K.ShellError))throw f;return r.stderr.write(`${f.message} -`),1}};for(o(await l(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await l(e.then.line));break;case"||":a!==0&&o(await l(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function dAt(e,t,r){let n=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:l}of e){if(a=await uOo(o,t,r,{background:l==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=n,a}function GZn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>b5e(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>b5e(t));case"arithmetic":return NAr(e.arithmetic);case"shell":return xAr(e.shell);default:return!1}}function b5e(e){switch(e.type){case"redirection":return e.args.some(t=>b5e(t));case"argument":return e.segments.some(t=>GZn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function NAr(e){switch(e.type){case"variable":return GZn(e);case"number":return!1;default:return NAr(e.left)||NAr(e.right)}}function xAr(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let n;switch(r.type){case"subshell":n=xAr(r.subshell);break;case"command":n=r.envs.some(a=>a.args.some(o=>b5e(o)))||r.args.some(a=>b5e(a));break}if(n)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function gOo(e,t=[],{baseFs:r=new qK.NodeFS,builtins:n={},cwd:a=qK.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:l=process.stdin,stdout:A=process.stdout,stderr:f=process.stderr,variables:I={},glob:C=kAr}={}){let b={};for(let[B,F]of Object.entries(o))typeof F<"u"&&(b[B]=F);let E=new Map(iOo);for(let[B,F]of Object.entries(n))E.set(B,F);l===null&&(l=new AX.PassThrough,l.end());let N=(0,kZn.parseShell)(e,C);if(!xAr(N)&&N.length>0&&t.length>0){let{command:B}=N[N.length-1];for(;B.then;)B=B.then.line;let F=B.chain;for(;F.then;)F=F.then.chain;F.type==="command"&&(F.args=F.args.concat(t.map(Q=>({type:"argument",segments:[{type:"text",text:Q}]}))))}return await dAt(N,{args:t,baseFs:r,builtins:E,initialStdin:l,initialStdout:A,initialStderr:f,glob:C},{cwd:a,environment:b,exitCode:null,procedures:{},stdin:l,stdout:A,stderr:f,variables:Object.assign({},I,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var FZn=H((E6l,pAt)=>{function AOo(){var e=0,t=1,r=2,n=3,a=4,o=5,l=6,A=7,f=8,I=9,C=10,b=11,E=12,N=13,B=14,F=15,Q=16,X=17,ae=0,ne=1,ce=2,fe=3,ue=4;function de(k,et){return 55296<=k.charCodeAt(et)&&k.charCodeAt(et)<=56319&&56320<=k.charCodeAt(et+1)&&k.charCodeAt(et+1)<=57343}function be(k,et){et===void 0&&(et=0);var ct=k.charCodeAt(et);if(55296<=ct&&ct<=56319&&et=1){var Me=k.charCodeAt(et-1),je=ct;return 55296<=Me&&Me<=56319?(Me-55296)*1024+(je-56320)+65536:je}return ct}function Se(k,et,ct){var Me=[k].concat(et).concat([ct]),je=Me[Me.length-2],St=ct,At=Me.lastIndexOf(B);if(At>1&&Me.slice(1,At).every(function(Nr){return Nr==n})&&[n,N,X].indexOf(k)==-1)return ce;var Yt=Me.lastIndexOf(a);if(Yt>0&&Me.slice(1,Yt).every(function(Nr){return Nr==a})&&[E,a].indexOf(je)==-1)return Me.filter(function(Nr){return Nr==a}).length%2==1?fe:ue;if(je==e&&St==t)return ae;if(je==r||je==e||je==t)return St==B&&et.every(function(Nr){return Nr==n})?ce:ne;if(St==r||St==e||St==t)return ne;if(je==l&&(St==l||St==A||St==I||St==C))return ae;if((je==I||je==A)&&(St==A||St==f))return ae;if((je==C||je==f)&&St==f)return ae;if(St==n||St==F)return ae;if(St==o)return ae;if(je==E)return ae;var Tr=Me.indexOf(n)!=-1?Me.lastIndexOf(n)-1:Me.length-2;return[N,X].indexOf(Me[Tr])!=-1&&Me.slice(Tr+1,-1).every(function(Nr){return Nr==n})&&St==B||je==F&&[Q,X].indexOf(St)!=-1?ae:et.indexOf(a)!=-1?ce:je==a&&St==a?ae:ne}this.nextBreak=function(k,et){if(et===void 0&&(et=0),et<0)return 0;if(et>=k.length-1)return k.length;for(var ct=De(be(k,et)),Me=[],je=et+1;je{var dOo=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,fAt;function pOo(){if(fAt)return fAt;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return fAt=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=FZn(),t=new e;return fAt=r=>t.splitGraphemes(r)}}ZZn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let n=r-t,a="",o=0,l=0;for(;e.length>0;){let A=e.match(dOo)||[e,e,void 0],f=pOo()(A[1]),I=Math.min(t-o,f.length);f=f.slice(I);let C=Math.min(n-l,f.length);a+=f.slice(0,C).join(""),o+=I,l+=C,typeof A[2]<"u"&&(a+=A[2]),e=e.slice(A[0].length)}return a}});var E5e=H(IAt=>{"use strict";Object.defineProperty(IAt,"__esModule",{value:!0});IAt.YarnVersion=void 0;IAt.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.2.22-atls"});var S5e=H(dM=>{"use strict";Object.defineProperty(dM,"__esModule",{value:!0});dM.StreamReport=dM.SUPPORTS_GROUPS=dM.SINGLE_LINE_CHAR=void 0;dM.formatName=ZAr;dM.formatNameWithHyperlink=OZn;dM.reportOptionDeprecations=yOo;var FAr=(Pa(),vi(Va)),fOo=FAr.__importDefault(LZn()),GAr=FAr.__importDefault(Nfe()),e8=M9(),IOo=sM(),hOo=E5e(),dX=FAr.__importStar(rM());dM.SINGLE_LINE_CHAR="\xB7";var VZn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],PZn=80,Toe=GAr.default.GITHUB_ACTIONS?{start:e=>`::group::${e} -`,end:e=>`::endgroup:: -`}:GAr.default.TRAVIS?{start:e=>`travis_fold:start:${e} -`,end:e=>`travis_fold:end:${e} -`}:GAr.default.GITLAB?{start:e=>`section_start:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${e} -`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;dM.SUPPORTS_GROUPS=Toe!==null;var WZn=new Date,mOo=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,COo=e=>e,hAt=COo({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),_Oo=mOo&&Object.keys(hAt).find(e=>{let t=hAt[e];return!(t.date&&(t.date[0]!==WZn.getDate()||t.date[1]!==WZn.getMonth()+1))})||"default";function ZAr(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let n=e===null?0:e,a=(0,e8.stringifyMessageName)(n);return!r&&e===null?dX.pretty(t,a,"grey"):a}function OZn(e,{configuration:t,json:r}){let n=ZAr(e,{configuration:t,json:r});if(!n||e===null||e===e8.MessageName.UNNAMED)return n;let a=e8.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${n}---${a}`.toLowerCase();return dX.applyHyperlink(t,n,o)}async function yOo({configuration:e,stdout:t,forceError:r},n){let a=await mAt.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let l=!1,A=!1;for(let f of n)typeof f.option<"u"&&(f.error||r?(A=!0,o.reportError(e8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(l=!0,o.reportWarning(e8.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());l&&!A&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var mAt=class extends IOo.Report{static async start(t,r){let n=new this(t),a=process.emitWarning;process.emitWarning=(o,l)=>{if(typeof o!="string"){let f=o;o=f.message,l=l??f.name}let A=typeof l<"u"?`${l}: ${o}`:o;n.reportWarning(e8.MessageName.UNNAMED,A)},t.includeVersion&&n.reportInfo(e8.MessageName.UNNAMED,dX.applyStyle(t.configuration,`Yarn ${hOo.YarnVersion}`,dX.Style.BOLD));try{await r(n)}catch(o){n.reportExceptionOnce(o)}finally{await n.finalize(),process.emitWarning=a}return n}constructor({configuration:t,stdout:r,json:n=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:l=!0,includeFooter:A=!0,includeLogs:f=!n,includeInfos:I=f,includeWarnings:C=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,dX.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=l,this.includeFooter=A,this.includeInfos=I,this.includeWarnings=C,this.json=n,this.stdout=r,t.get("enableProgressBars")&&!n&&r.isTTY&&r.columns>22){let b=t.get("progressBarStyle")||_Oo;if(!Object.hasOwn(hAt,b))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=hAt[b];let E=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*E/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:n},a){let o={committed:!1,action:()=>{t?.()}};n?this.uncommitted.add(o):(o.action(),o.committed=!0);let l=Date.now();try{return await a()}catch(A){throw this.reportExceptionOnce(A),A}finally{let A=Date.now();this.uncommitted.delete(o),o.committed&&r?.(A-l)}}startTimerImpl(t,r,n){return{cb:typeof r=="function"?r:n,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,Toe!==null&&!this.json&&this.includeInfos&&this.stdout.write(Toe.start(t))},reportFooter:l=>{if(this.indent-=1,Toe!==null&&!this.json&&this.includeInfos){this.stdout.write(Toe.end(t));for(let A of this.timerFooter)A()}this.configuration.get("enableTimers")&&l>200?this.reportInfo(null,`\u2514 Completed in ${dX.pretty(this.configuration,l,dX.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionSync(o,a)}async startTimerPromise(t,r,n){let{cb:a,...o}=this.startTimerImpl(t,r,n);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let n=this.formatNameWithHyperlink(t),a=n?`${n}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!Toe)return;let n=`${Toe.start(t)}${r}${Toe.end(t)}`;this.timerFooter.push(()=>this.stdout.write(n))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,n=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:l,title:A}of t)r||o.progress===l&&o.title===A||(o.progress=l,o.title=A,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...n,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=dX.pretty(this.configuration,Date.now()-this.startTime,dX.Type.DURATION),n=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(e8.MessageName.UNNAMED,n):this.warningCount>0?this.reportWarning(e8.MessageName.UNNAMED,n):this.reportInfo(e8.MessageName.UNNAMED,n)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} -`),this.writeProgress()}writeLines(t,{truncate:r}={}){this.clearProgress({delta:t.length});for(let n of t)this.stdout.write(`${this.truncate(n,{truncate:r})} -`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>PZn&&(this.progressFrame=(this.progressFrame+1)%VZn.length,this.progressTime=t);let r=VZn[this.progressFrame];for(let n of this.progress.values()){let a="";if(typeof n.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(n.lastScaledSize),I=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-n.lastScaledSize);a=` ${f}${I}`}let o=this.formatName(null),l=o?`${o}: `:"",A=n.definition.title?` ${n.definition.title}`:"";this.stdout.write(`${dX.pretty(this.configuration,"\u27A4","blueBright")} ${l}${r}${a}${A} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},PZn)}refreshProgress({delta:t=0,force:r=!1}={}){let n=!1,a=!1;if(r||this.progress.size===0)n=!0;else for(let o of this.progress.values()){let l=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,A=o.lastScaledSize;o.lastScaledSize=l;let f=o.lastTitle;if(o.lastTitle=o.definition.title,l!==A||(a=f!==o.definition.title)){n=!0;break}}n&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,fOo.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?ZAr(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${dX.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?OZn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${dM.SINGLE_LINE_CHAR} `}};dM.StreamReport=mAt});var HAr=H(BR=>{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.PackageManager=void 0;BR.detectPackageManager=QZn;BR.makeScriptEnv=v5e;BR.prepareExternalProject=wOo;BR.hasPackageScript=TOo;BR.executePackageScript=XZn;BR.executePackageShellcode=ROo;BR.executeWorkspaceScript=UZn;BR.hasWorkspaceScript=WAr;BR.executeWorkspaceLifecycleScript=KZn;BR.maybeExecuteWorkspaceLifecycleScript=DOo;BR.isNodeScript=OAr;BR.getPackageAccessibleBinaries=_At;BR.getWorkspaceAccessibleBinaries=jZn;BR.executePackageAccessibleBinary=zZn;BR.executeWorkspaceAccessibleBinary=kOo;var wve=(Pa(),vi(Va)),Noe=ro(),tp=ro(),MZn=zK(),HZn=C5e(),bOo=kW(),EOo=wve.__importDefault(Dfe()),Bve=wt("stream"),PAr=uve(),VAr=M9(),YZn=sM(),CAt=S5e(),LAr=E5e(),FW=wve.__importStar(Xgt()),t8=wve.__importStar(rM()),aIe=wve.__importStar(xW()),SOo=wve.__importStar(n$()),tT=wve.__importStar(uG()),RZ;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(RZ||(BR.PackageManager=RZ={}));async function Roe(e,t,r,n=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${n.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await tp.xfs.writeFilePromise(tp.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await tp.xfs.writeFilePromise(tp.ppath.join(e,t),`#!/bin/sh -exec "${r}" ${n.map(a=>`'${a.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`,{mode:493})}async function QZn(e){let t=await PAr.Manifest.tryFind(e);if(t?.packageManager){let n=tT.tryParseLocator(t.packageManager);if(n?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=n.reference.split(".");switch(n.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?RZ.Yarn1:RZ.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:RZ.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:RZ.Pnpm,reason:a}}}}let r;try{r=await tp.xfs.readFilePromise(tp.ppath.join(e,Noe.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:RZ.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:RZ.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:tp.xfs.existsSync(tp.ppath.join(e,"package-lock.json"))?{packageManager:RZ.Npm,reason:`found npm's "package-lock.json" lockfile`}:tp.xfs.existsSync(tp.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:RZ.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function v5e({project:e,locator:t,binFolder:r,ignoreCorepack:n,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let l={};for(let[C,b]of Object.entries(o))typeof b<"u"&&(l[C.toLowerCase()!=="path"?C:"PATH"]=b);let A=tp.npath.fromPortablePath(r);l.BERRY_BIN_FOLDER=tp.npath.fromPortablePath(A);let f=process.env.COREPACK_ROOT&&!n?tp.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Roe(r,"node",process.execPath),...LAr.YarnVersion!==null?[Roe(r,"run",process.execPath,[f,"run"]),Roe(r,"yarn",process.execPath,[f]),Roe(r,"yarnpkg",process.execPath,[f]),Roe(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(l.INIT_CWD=tp.npath.fromPortablePath(e.configuration.startingCwd),l.PROJECT_CWD=tp.npath.fromPortablePath(e.cwd)),l.PATH=l.PATH?`${A}${tp.npath.delimiter}${l.PATH}`:`${A}`,l.npm_execpath=`${A}${tp.npath.sep}yarn`,l.npm_node_execpath=`${A}${tp.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let C=e.tryWorkspaceByLocator(t),b=C?C.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";l.npm_package_name=tT.stringifyIdent(t),l.npm_package_version=b;let E;if(C)E=C.cwd;else{let N=e.storedPackages.get(t.locatorHash);if(!N)throw new Error(`Package for ${tT.prettyLocator(e.configuration,t)} not found in the project`);let B=e.configuration.getLinkers(),F={project:e,report:new CAt.StreamReport({stdout:new Bve.PassThrough,configuration:e.configuration})},Q=B.find(X=>X.supportsPackage(N,F));if(!Q)throw new Error(`The package ${tT.prettyLocator(e.configuration,N)} isn't supported by any of the available linkers`);E=await Q.findPackageLocation(N,F)}l.npm_package_json=tp.npath.fromPortablePath(tp.ppath.join(E,Noe.Filename.manifest))}let I=LAr.YarnVersion!==null?`yarn/${LAr.YarnVersion}`:`yarn/${aIe.dynamicRequire("@yarnpkg/core").version}-core`;return l.npm_config_user_agent=`${I} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(l.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(C=>C.setupScriptEnvironment,e,l,async(C,b,E)=>await Roe(r,C,b,E)),l}var vOo=2,BOo=(0,EOo.default)(vOo);async function wOo(e,t,{configuration:r,report:n,workspace:a=null,locator:o=null}){await BOo(async()=>{await tp.xfs.mktempPromise(async l=>{let A=tp.ppath.join(l,"pack.log"),f=null,{stdout:I,stderr:C}=r.getSubprocessStreams(A,{prefix:tp.npath.fromPortablePath(e),report:n}),b=o&&tT.isVirtualLocator(o)?tT.devirtualizeLocator(o):o,E=b?tT.stringifyLocator(b):"an external project";I.write(`Packing ${E} from sources -`);let N=await QZn(e),B;N!==null?(I.write(`Using ${N.packageManager} for bootstrap. Reason: ${N.reason} - -`),B=N.packageManager):(I.write(`No package manager configuration detected; defaulting to Yarn - -`),B=RZ.Yarn2);let F=B===RZ.Yarn2&&!N?.packageManagerField;await tp.xfs.mktempPromise(async Q=>{let X=await v5e({binFolder:Q,ignoreCorepack:F,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ne=new Map([[RZ.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],ue=tp.ppath.join(e,Noe.Filename.manifest),de=await tp.xfs.readFilePromise(ue),be=await FW.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await tp.xfs.writeFilePromise(ue,de),await tp.xfs.appendFilePromise(tp.ppath.join(e,".npmignore"),`/.yarn -`),I.write(` -`),delete X.NODE_ENV;let Se=await FW.pipevp("yarn",["install"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(Se.code!==0)return Se.code;I.write(` -`);let De=await FW.pipevp("yarn",[...fe,"pack","--filename",tp.npath.fromPortablePath(t)],{cwd:e,env:X,stdin:f,stdout:I,stderr:C});return De.code!==0?De.code:0}],[RZ.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];X.YARN_ENABLE_INLINE_BUILDS="1";let ue=tp.ppath.join(e,Noe.Filename.lockfile);await tp.xfs.existsPromise(ue)||await tp.xfs.writeFilePromise(ue,"");let de=await FW.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",tp.npath.fromPortablePath(t)],{cwd:e,env:X,stdin:f,stdout:I,stderr:C});return de.code!==0?de.code:0}],[RZ.Npm,async()=>{if(a!==null){let et=new Bve.PassThrough,ct=aIe.bufferStream(et);et.pipe(I,{end:!1});let Me=await FW.pipevp("npm",["--version"],{cwd:e,env:X,stdin:f,stdout:et,stderr:C,end:FW.EndStrategy.Never});if(et.end(),Me.code!==0)return I.end(),C.end(),Me.code;let je=(await ct).toString().trim();if(!SOo.satisfiesWithPrereleases(je,">=7.x")){let St=tT.makeIdent(null,"npm"),At=tT.makeDescriptor(St,je),Yt=tT.makeDescriptor(St,">=7.x");throw new Error(`Workspaces aren't supported by ${tT.prettyDescriptor(r,At)}; please upgrade to ${tT.prettyDescriptor(r,Yt)} (npm has been detected as the primary package manager for ${t8.pretty(r,e,t8.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete X.npm_config_user_agent,delete X.npm_config_production,delete X.NPM_CONFIG_PRODUCTION,delete X.NODE_ENV;let ue=await FW.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:X,stdin:f,stdout:I,stderr:C,end:FW.EndStrategy.ErrorCode});if(ue.code!==0)return ue.code;let de=new Bve.PassThrough,be=aIe.bufferStream(de);de.pipe(I);let Se=await FW.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:X,stdin:f,stdout:de,stderr:C});if(Se.code!==0)return Se.code;let De=(await be).toString().trim().replace(/^.*\n/s,""),k=tp.ppath.resolve(e,tp.npath.toPortablePath(De));return await tp.xfs.renamePromise(k,t),0}]]).get(B);if(typeof ne>"u")throw new Error("Assertion failed: Unsupported workflow");let ce=await ne();if(!(ce===0||typeof ce>"u"))throw tp.xfs.detachTemp(l),new YZn.ReportError(VAr.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ce}, logs can be found here: ${t8.pretty(r,A,t8.Type.PATH)})`)})})})}async function TOo(e,t,{project:r}){let n=r.tryWorkspaceByLocator(e);if(n!==null)return WAr(n,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${tT.prettyLocator(r.configuration,e)} not found in the project`);return await MZn.ZipOpenFS.openPromise(async o=>{let l=r.configuration,A=r.configuration.getLinkers(),f={project:r,report:new CAt.StreamReport({stdout:new Bve.PassThrough,configuration:l})},I=A.find(N=>N.supportsPackage(a,f));if(!I)throw new Error(`The package ${tT.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let C=await I.findPackageLocation(a,f),b=new Noe.CwdFS(C,{baseFs:o});return(await PAr.Manifest.find(Noe.PortablePath.dot,{baseFs:b})).scripts.has(t)})}async function XZn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await tp.xfs.mktempPromise(async f=>{let{manifest:I,env:C,cwd:b}=await JZn(e,{project:a,binFolder:f,cwd:n,lifecycleScript:t}),E=I.scripts.get(t);if(typeof E>"u")return 1;let N=async()=>await(0,HZn.execute)(E,r,{cwd:b,env:C,stdin:o,stdout:l,stderr:A});return await(await a.configuration.reduceHook(F=>F.wrapScriptExecution,N,a,e,t,{script:E,args:r,cwd:b,env:C,stdin:o,stdout:l,stderr:A}))()})}async function ROo(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A}){return await tp.xfs.mktempPromise(async f=>{let{env:I,cwd:C}=await JZn(e,{project:a,binFolder:f,cwd:n});return await(0,HZn.execute)(t,r,{cwd:C,env:I,stdin:o,stdout:l,stderr:A})})}async function NOo(e,{binFolder:t,cwd:r,lifecycleScript:n}){let a=await v5e({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:n});return await MAr(t,await jZn(e)),typeof r>"u"&&(r=tp.ppath.dirname(await tp.xfs.realpathPromise(tp.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function JZn(e,{project:t,binFolder:r,cwd:n,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return NOo(o,{binFolder:r,cwd:n,lifecycleScript:a});let l=t.storedPackages.get(e.locatorHash);if(!l)throw new Error(`Package for ${tT.prettyLocator(t.configuration,e)} not found in the project`);return await MZn.ZipOpenFS.openPromise(async A=>{let f=t.configuration,I=t.configuration.getLinkers(),C={project:t,report:new CAt.StreamReport({stdout:new Bve.PassThrough,configuration:f})},b=I.find(Q=>Q.supportsPackage(l,C));if(!b)throw new Error(`The package ${tT.prettyLocator(t.configuration,l)} isn't supported by any of the available linkers`);let E=await v5e({project:t,locator:e,binFolder:r,lifecycleScript:a});await MAr(r,await _At(e,{project:t}));let N=await b.findPackageLocation(l,C),B=new Noe.CwdFS(N,{baseFs:A}),F=await PAr.Manifest.find(Noe.PortablePath.dot,{baseFs:B});return typeof n>"u"&&(n=N),{manifest:F,binFolder:r,env:E,cwd:n}})}async function UZn(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l}){return await XZn(e.anchoredLocator,t,r,{cwd:n,project:e.project,stdin:a,stdout:o,stderr:l})}function WAr(e,t){return e.manifest.scripts.has(t)}async function KZn(e,t,{cwd:r,report:n}){let{configuration:a}=e.project,o=null;await tp.xfs.mktempPromise(async l=>{let A=tp.ppath.join(l,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${tp.npath.fromPortablePath(e.cwd)}") -`,{stdout:I,stderr:C}=a.getSubprocessStreams(A,{report:n,prefix:tT.prettyLocator(a,e.anchoredLocator),header:f});n.reportInfo(VAr.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let b=await UZn(e,t,[],{cwd:r,stdin:o,stdout:I,stderr:C});if(I.end(),C.end(),b!==0)throw tp.xfs.detachTemp(l),new YZn.ReportError(VAr.MessageName.LIFECYCLE_SCRIPT,`${(0,bOo.capitalize)(t)} script failed (exit code ${t8.pretty(a,b,t8.Type.NUMBER)}, logs can be found here: ${t8.pretty(a,A,t8.Type.PATH)}); run ${t8.pretty(a,`yarn ${t}`,t8.Type.CODE)} to investigate`)})}async function DOo(e,t,r){WAr(e,t)&&await KZn(e,t,r)}function OAr(e){let t=tp.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),n;try{n=tp.xfs.openSync(e,"r")}catch{return!0}try{tp.xfs.readSync(n,r,0,r.length,0)}finally{tp.xfs.closeSync(n)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function _At(e,{project:t}){let r=t.configuration,n=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${tT.prettyLocator(r,e)} not found in the project`);let o=new Bve.Writable,l=r.getLinkers(),A={project:t,report:new CAt.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let C of a.dependencies.values()){let b=t.storedResolutions.get(C.descriptorHash);if(!b)throw new Error(`Assertion failed: The resolution (${tT.prettyDescriptor(r,C)}) should have been registered`);f.add(b)}let I=await Promise.all(Array.from(f,async C=>{let b=t.storedPackages.get(C);if(!b)throw new Error(`Assertion failed: The package (${C}) should have been registered`);if(b.bin.size===0)return aIe.mapAndFilter.skip;let E=l.find(B=>B.supportsPackage(b,A));if(!E)return aIe.mapAndFilter.skip;let N=null;try{N=await E.findPackageLocation(b,A)}catch(B){if(B.code==="LOCATOR_NOT_INSTALLED")return aIe.mapAndFilter.skip;throw B}return{dependency:b,packageLocation:N}}));for(let C of I){if(C===aIe.mapAndFilter.skip)continue;let{dependency:b,packageLocation:E}=C;for(let[N,B]of b.bin){let F=tp.ppath.resolve(E,B);n.set(N,[b,tp.npath.fromPortablePath(F),OAr(F)])}}return n}async function jZn(e){return await _At(e.anchoredLocator,{project:e.project})}async function MAr(e,t){await Promise.all(Array.from(t,([r,[,n,a]])=>a?Roe(e,r,process.execPath,[n]):Roe(e,r,n,[])))}async function zZn(e,t,r,{cwd:n,project:a,stdin:o,stdout:l,stderr:A,nodeArgs:f=[],packageAccessibleBinaries:I}){I??=await _At(e,{project:a});let C=I.get(t);if(!C)throw new Error(`Binary not found (${t}) for ${tT.prettyLocator(a.configuration,e)}`);return await tp.xfs.mktempPromise(async b=>{let[,E]=C,N=await v5e({project:a,locator:e,binFolder:b});await MAr(N.BERRY_BIN_FOLDER,I);let B=OAr(tp.npath.toPortablePath(E))?FW.pipevp(process.execPath,[...f,E,...r],{cwd:n,env:N,stdin:o,stdout:l,stderr:A}):FW.pipevp(E,r,{cwd:n,env:N,stdin:o,stdout:l,stderr:A}),F;try{F=await B}finally{await tp.xfs.removePromise(N.BERRY_BIN_FOLDER)}return F.code})}async function kOo(e,t,r,{cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A}){return await zZn(e.anchoredLocator,t,r,{project:e.project,cwd:n,stdin:a,stdout:o,stderr:l,packageAccessibleBinaries:A})}});var gLn=H(jC=>{"use strict";var yC=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),B5e=yC(e=>{"use strict";var t=e&&e.__importDefault||function(Fn){return Fn&&Fn.__esModule?Fn:{default:Fn}};Object.defineProperty(e,"__esModule",{value:!0}),e.Minipass=e.isWritable=e.isReadable=e.isStream=void 0;var r=typeof process=="object"&&process?process:{stdout:null,stderr:null},n=wt("node:events"),a=t(wt("node:stream")),o=wt("node:string_decoder"),l=Fn=>!!Fn&&typeof Fn=="object"&&(Fn instanceof jt||Fn instanceof a.default||(0,e.isReadable)(Fn)||(0,e.isWritable)(Fn));e.isStream=l;var A=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.pipe=="function"&&Fn.pipe!==a.default.Writable.prototype.pipe;e.isReadable=A;var f=Fn=>!!Fn&&typeof Fn=="object"&&Fn instanceof n.EventEmitter&&typeof Fn.write=="function"&&typeof Fn.end=="function";e.isWritable=f;var I=Symbol("EOF"),C=Symbol("maybeEmitEnd"),b=Symbol("emittedEnd"),E=Symbol("emittingEnd"),N=Symbol("emittedError"),B=Symbol("closed"),F=Symbol("read"),Q=Symbol("flush"),X=Symbol("flushChunk"),ae=Symbol("encoding"),ne=Symbol("decoder"),ce=Symbol("flowing"),fe=Symbol("paused"),ue=Symbol("resume"),de=Symbol("buffer"),be=Symbol("pipes"),Se=Symbol("bufferLength"),De=Symbol("bufferPush"),k=Symbol("bufferShift"),et=Symbol("objectMode"),ct=Symbol("destroyed"),Me=Symbol("error"),je=Symbol("emitData"),St=Symbol("emitEnd"),At=Symbol("emitEnd2"),Yt=Symbol("async"),Tr=Symbol("abort"),Nr=Symbol("aborted"),er=Symbol("signal"),vt=Symbol("dataListeners"),xt=Symbol("discarded"),Zr=Fn=>Promise.resolve().then(Fn),qt=Fn=>Fn(),Xt=Fn=>Fn==="end"||Fn==="finish"||Fn==="prefinish",lr=Fn=>Fn instanceof ArrayBuffer||!!Fn&&typeof Fn=="object"&&Fn.constructor&&Fn.constructor.name==="ArrayBuffer"&&Fn.byteLength>=0,cr=Fn=>!Buffer.isBuffer(Fn)&&ArrayBuffer.isView(Fn),Ar=class{src;dest;opts;ondrain;constructor(Fn,Nn,Hi){this.src=Fn,this.dest=Nn,this.opts=Hi,this.ondrain=()=>Fn[ue](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(Fn){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},qr=class extends Ar{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(Fn,Nn,Hi){super(Fn,Nn,Hi),this.proxyErrors=po=>this.dest.emit("error",po),Fn.on("error",this.proxyErrors)}},_n=Fn=>!!Fn.objectMode,ke=Fn=>!Fn.objectMode&&!!Fn.encoding&&Fn.encoding!=="buffer",jt=class extends n.EventEmitter{[ce]=!1;[fe]=!1;[be]=[];[de]=[];[et];[ae];[Yt];[ne];[I]=!1;[b]=!1;[E]=!1;[B]=!1;[N]=null;[Se]=0;[ct]=!1;[er];[Nr]=!1;[vt]=0;[xt]=!1;writable=!0;readable=!0;constructor(...Fn){let Nn=Fn[0]||{};if(super(),Nn.objectMode&&typeof Nn.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");_n(Nn)?(this[et]=!0,this[ae]=null):ke(Nn)?(this[ae]=Nn.encoding,this[et]=!1):(this[et]=!1,this[ae]=null),this[Yt]=!!Nn.async,this[ne]=this[ae]?new o.StringDecoder(this[ae]):null,Nn&&Nn.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[de]}),Nn&&Nn.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[be]});let{signal:Hi}=Nn;Hi&&(this[er]=Hi,Hi.aborted?this[Tr]():Hi.addEventListener("abort",()=>this[Tr]()))}get bufferLength(){return this[Se]}get encoding(){return this[ae]}set encoding(Fn){throw new Error("Encoding must be set at instantiation time")}setEncoding(Fn){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[et]}set objectMode(Fn){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Yt]}set async(Fn){this[Yt]=this[Yt]||!!Fn}[Tr](){this[Nr]=!0,this.emit("abort",this[er]?.reason),this.destroy(this[er]?.reason)}get aborted(){return this[Nr]}set aborted(Fn){}write(Fn,Nn,Hi){if(this[Nr])return!1;if(this[I])throw new Error("write after end");if(this[ct])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Nn||(Nn="utf8");let po=this[Yt]?Zr:qt;if(!this[et]&&!Buffer.isBuffer(Fn)){if(cr(Fn))Fn=Buffer.from(Fn.buffer,Fn.byteOffset,Fn.byteLength);else if(lr(Fn))Fn=Buffer.from(Fn);else if(typeof Fn!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[et]?(this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce]):Fn.length?(typeof Fn=="string"&&!(Nn===this[ae]&&!this[ne]?.lastNeed)&&(Fn=Buffer.from(Fn,Nn)),Buffer.isBuffer(Fn)&&this[ae]&&(Fn=this[ne].write(Fn)),this[ce]&&this[Se]!==0&&this[Q](!0),this[ce]?this.emit("data",Fn):this[De](Fn),this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce]):(this[Se]!==0&&this.emit("readable"),Hi&&po(Hi),this[ce])}read(Fn){if(this[ct])return null;if(this[xt]=!1,this[Se]===0||Fn===0||Fn&&Fn>this[Se])return this[C](),null;this[et]&&(Fn=null),this[de].length>1&&!this[et]&&(this[de]=[this[ae]?this[de].join(""):Buffer.concat(this[de],this[Se])]);let Nn=this[F](Fn||null,this[de][0]);return this[C](),Nn}[F](Fn,Nn){if(this[et])this[k]();else{let Hi=Nn;Fn===Hi.length||Fn===null?this[k]():typeof Hi=="string"?(this[de][0]=Hi.slice(Fn),Nn=Hi.slice(0,Fn),this[Se]-=Fn):(this[de][0]=Hi.subarray(Fn),Nn=Hi.subarray(0,Fn),this[Se]-=Fn)}return this.emit("data",Nn),!this[de].length&&!this[I]&&this.emit("drain"),Nn}end(Fn,Nn,Hi){return typeof Fn=="function"&&(Hi=Fn,Fn=void 0),typeof Nn=="function"&&(Hi=Nn,Nn="utf8"),Fn!==void 0&&this.write(Fn,Nn),Hi&&this.once("end",Hi),this[I]=!0,this.writable=!1,(this[ce]||!this[fe])&&this[C](),this}[ue](){this[ct]||(!this[vt]&&!this[be].length&&(this[xt]=!0),this[fe]=!1,this[ce]=!0,this.emit("resume"),this[de].length?this[Q]():this[I]?this[C]():this.emit("drain"))}resume(){return this[ue]()}pause(){this[ce]=!1,this[fe]=!0,this[xt]=!1}get destroyed(){return this[ct]}get flowing(){return this[ce]}get paused(){return this[fe]}[De](Fn){this[et]?this[Se]+=1:this[Se]+=Fn.length,this[de].push(Fn)}[k](){return this[et]?this[Se]-=1:this[Se]-=this[de][0].length,this[de].shift()}[Q](Fn=!1){do;while(this[X](this[k]())&&this[de].length);!Fn&&!this[de].length&&!this[I]&&this.emit("drain")}[X](Fn){return this.emit("data",Fn),this[ce]}pipe(Fn,Nn){if(this[ct])return Fn;this[xt]=!1;let Hi=this[b];return Nn=Nn||{},Fn===r.stdout||Fn===r.stderr?Nn.end=!1:Nn.end=Nn.end!==!1,Nn.proxyErrors=!!Nn.proxyErrors,Hi?Nn.end&&Fn.end():(this[be].push(Nn.proxyErrors?new qr(this,Fn,Nn):new Ar(this,Fn,Nn)),this[Yt]?Zr(()=>this[ue]()):this[ue]()),Fn}unpipe(Fn){let Nn=this[be].find(Hi=>Hi.dest===Fn);Nn&&(this[be].length===1?(this[ce]&&this[vt]===0&&(this[ce]=!1),this[be]=[]):this[be].splice(this[be].indexOf(Nn),1),Nn.unpipe())}addListener(Fn,Nn){return this.on(Fn,Nn)}on(Fn,Nn){let Hi=super.on(Fn,Nn);if(Fn==="data")this[xt]=!1,this[vt]++,!this[be].length&&!this[ce]&&this[ue]();else if(Fn==="readable"&&this[Se]!==0)super.emit("readable");else if(Xt(Fn)&&this[b])super.emit(Fn),this.removeAllListeners(Fn);else if(Fn==="error"&&this[N]){let po=Nn;this[Yt]?Zr(()=>po.call(this,this[N])):po.call(this,this[N])}return Hi}removeListener(Fn,Nn){return this.off(Fn,Nn)}off(Fn,Nn){let Hi=super.off(Fn,Nn);return Fn==="data"&&(this[vt]=this.listeners("data").length,this[vt]===0&&!this[xt]&&!this[be].length&&(this[ce]=!1)),Hi}removeAllListeners(Fn){let Nn=super.removeAllListeners(Fn);return(Fn==="data"||Fn===void 0)&&(this[vt]=0,!this[xt]&&!this[be].length&&(this[ce]=!1)),Nn}get emittedEnd(){return this[b]}[C](){!this[E]&&!this[b]&&!this[ct]&&this[de].length===0&&this[I]&&(this[E]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[B]&&this.emit("close"),this[E]=!1)}emit(Fn,...Nn){let Hi=Nn[0];if(Fn!=="error"&&Fn!=="close"&&Fn!==ct&&this[ct])return!1;if(Fn==="data")return!this[et]&&!Hi?!1:this[Yt]?(Zr(()=>this[je](Hi)),!0):this[je](Hi);if(Fn==="end")return this[St]();if(Fn==="close"){if(this[B]=!0,!this[b]&&!this[ct])return!1;let Vr=super.emit("close");return this.removeAllListeners("close"),Vr}else if(Fn==="error"){this[N]=Hi,super.emit(Me,Hi);let Vr=!this[er]||this.listeners("error").length?super.emit("error",Hi):!1;return this[C](),Vr}else if(Fn==="resume"){let Vr=super.emit("resume");return this[C](),Vr}else if(Fn==="finish"||Fn==="prefinish"){let Vr=super.emit(Fn);return this.removeAllListeners(Fn),Vr}let po=super.emit(Fn,...Nn);return this[C](),po}[je](Fn){for(let Hi of this[be])Hi.dest.write(Fn)===!1&&this.pause();let Nn=this[xt]?!1:super.emit("data",Fn);return this[C](),Nn}[St](){return this[b]?!1:(this[b]=!0,this.readable=!1,this[Yt]?(Zr(()=>this[At]()),!0):this[At]())}[At](){if(this[ne]){let Nn=this[ne].end();if(Nn){for(let Hi of this[be])Hi.dest.write(Nn);this[xt]||super.emit("data",Nn)}}for(let Nn of this[be])Nn.end();let Fn=super.emit("end");return this.removeAllListeners("end"),Fn}async collect(){let Fn=Object.assign([],{dataLength:0});this[et]||(Fn.dataLength=0);let Nn=this.promise();return this.on("data",Hi=>{Fn.push(Hi),this[et]||(Fn.dataLength+=Hi.length)}),await Nn,Fn}async concat(){if(this[et])throw new Error("cannot concat in objectMode");let Fn=await this.collect();return this[ae]?Fn.join(""):Buffer.concat(Fn,Fn.dataLength)}async promise(){return new Promise((Fn,Nn)=>{this.on(ct,()=>Nn(new Error("stream destroyed"))),this.on("error",Hi=>Nn(Hi)),this.on("end",()=>Fn())})}[Symbol.asyncIterator](){this[xt]=!1;let Fn=!1,Nn=async()=>(this.pause(),Fn=!0,{value:void 0,done:!0});return{next:()=>{if(Fn)return Nn();let Hi=this.read();if(Hi!==null)return Promise.resolve({done:!1,value:Hi});if(this[I])return Nn();let po,Vr,xi=Gc=>{this.off("data",io),this.off("end",ga),this.off(ct,Ya),Nn(),Vr(Gc)},io=Gc=>{this.off("error",xi),this.off("end",ga),this.off(ct,Ya),this.pause(),po({value:Gc,done:!!this[I]})},ga=()=>{this.off("error",xi),this.off("data",io),this.off(ct,Ya),Nn(),po({done:!0,value:void 0})},Ya=()=>xi(new Error("stream destroyed"));return new Promise((Gc,cl)=>{Vr=cl,po=Gc,this.once(ct,Ya),this.once("error",xi),this.once("end",ga),this.once("data",io)})},throw:Nn,return:Nn,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[xt]=!1;let Fn=!1,Nn=()=>(this.pause(),this.off(Me,Nn),this.off(ct,Nn),this.off("end",Nn),Fn=!0,{done:!0,value:void 0}),Hi=()=>{if(Fn)return Nn();let po=this.read();return po===null?Nn():{done:!1,value:po}};return this.once("end",Nn),this.once(Me,Nn),this.once(ct,Nn),{next:Hi,throw:Nn,return:Nn,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(Fn){if(this[ct])return Fn?this.emit("error",Fn):this.emit(ct),this;this[ct]=!0,this[xt]=!0,this[de].length=0,this[Se]=0;let Nn=this;return typeof Nn.close=="function"&&!this[B]&&Nn.close(),Fn?this.emit("error",Fn):this.emit(ct),this}static get isStream(){return e.isStream}};e.Minipass=jt}),w5e=yC(e=>{"use strict";var t=e&&e.__importDefault||function(vt){return vt&&vt.__esModule?vt:{default:vt}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteStreamSync=e.WriteStream=e.ReadStreamSync=e.ReadStream=void 0;var r=t(wt("events")),n=t(wt("fs")),a=B5e(),o=n.default.writev,l=Symbol("_autoClose"),A=Symbol("_close"),f=Symbol("_ended"),I=Symbol("_fd"),C=Symbol("_finished"),b=Symbol("_flags"),E=Symbol("_flush"),N=Symbol("_handleChunk"),B=Symbol("_makeBuf"),F=Symbol("_mode"),Q=Symbol("_needDrain"),X=Symbol("_onerror"),ae=Symbol("_onopen"),ne=Symbol("_onread"),ce=Symbol("_onwrite"),fe=Symbol("_open"),ue=Symbol("_path"),de=Symbol("_pos"),be=Symbol("_queue"),Se=Symbol("_read"),De=Symbol("_readSize"),k=Symbol("_reading"),et=Symbol("_remain"),ct=Symbol("_size"),Me=Symbol("_write"),je=Symbol("_writing"),St=Symbol("_defaultFlag"),At=Symbol("_errored"),Yt=class extends a.Minipass{[At]=!1;[I];[ue];[De];[k]=!1;[ct];[et];[l];constructor(vt,xt){if(xt=xt||{},super(xt),this.readable=!0,this.writable=!1,typeof vt!="string")throw new TypeError("path must be a string");this[At]=!1,this[I]=typeof xt.fd=="number"?xt.fd:void 0,this[ue]=vt,this[De]=xt.readSize||16*1024*1024,this[k]=!1,this[ct]=typeof xt.size=="number"?xt.size:1/0,this[et]=this[ct],this[l]=typeof xt.autoClose=="boolean"?xt.autoClose:!0,typeof this[I]=="number"?this[Se]():this[fe]()}get fd(){return this[I]}get path(){return this[ue]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[fe](){n.default.open(this[ue],"r",(vt,xt)=>this[ae](vt,xt))}[ae](vt,xt){vt?this[X](vt):(this[I]=xt,this.emit("open",xt),this[Se]())}[B](){return Buffer.allocUnsafe(Math.min(this[De],this[et]))}[Se](){if(!this[k]){this[k]=!0;let vt=this[B]();if(vt.length===0)return process.nextTick(()=>this[ne](null,0,vt));n.default.read(this[I],vt,0,vt.length,null,(xt,Zr,qt)=>this[ne](xt,Zr,qt))}}[ne](vt,xt,Zr){this[k]=!1,vt?this[X](vt):this[N](xt,Zr)&&this[Se]()}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.close(vt,xt=>xt?this.emit("error",xt):this.emit("close"))}}[X](vt){this[k]=!0,this[A](),this.emit("error",vt)}[N](vt,xt){let Zr=!1;return this[et]-=vt,vt>0&&(Zr=super.write(vtthis[ae](vt,xt))}[ae](vt,xt){this[St]&&this[b]==="r+"&&vt&&vt.code==="ENOENT"?(this[b]="w",this[fe]()):vt?this[X](vt):(this[I]=xt,this.emit("open",xt),this[je]||this[E]())}end(vt,xt){return vt&&this.write(vt,xt),this[f]=!0,!this[je]&&!this[be].length&&typeof this[I]=="number"&&this[ce](null,0),this}write(vt,xt){return typeof vt=="string"&&(vt=Buffer.from(vt,xt)),this[f]?(this.emit("error",new Error("write() after end()")),!1):this[I]===void 0||this[je]||this[be].length?(this[be].push(vt),this[Q]=!0,!1):(this[je]=!0,this[Me](vt),!0)}[Me](vt){n.default.write(this[I],vt,0,vt.length,this[de],(xt,Zr)=>this[ce](xt,Zr))}[ce](vt,xt){vt?this[X](vt):(this[de]!==void 0&&typeof xt=="number"&&(this[de]+=xt),this[be].length?this[E]():(this[je]=!1,this[f]&&!this[C]?(this[C]=!0,this[A](),this.emit("finish")):this[Q]&&(this[Q]=!1,this.emit("drain"))))}[E](){if(this[be].length===0)this[f]&&this[ce](null,0);else if(this[be].length===1)this[Me](this[be].pop());else{let vt=this[be];this[be]=[],o(this[I],vt,this[de],(xt,Zr)=>this[ce](xt,Zr))}}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.close(vt,xt=>xt?this.emit("error",xt):this.emit("close"))}}};e.WriteStream=Nr;var er=class extends Nr{[fe](){let vt;if(this[St]&&this[b]==="r+")try{vt=n.default.openSync(this[ue],this[b],this[F])}catch(xt){if(xt?.code==="ENOENT")return this[b]="w",this[fe]();throw xt}else vt=n.default.openSync(this[ue],this[b],this[F]);this[ae](null,vt)}[A](){if(this[l]&&typeof this[I]=="number"){let vt=this[I];this[I]=void 0,n.default.closeSync(vt),this.emit("close")}}[Me](vt){let xt=!0;try{this[ce](null,n.default.writeSync(this[I],vt,0,vt.length,this[de])),xt=!1}finally{if(xt)try{this[A]()}catch{}}}};e.WriteStreamSync=er}),YAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dealias=e.isNoFile=e.isFile=e.isAsync=e.isSync=e.isAsyncNoFile=e.isSyncNoFile=e.isAsyncFile=e.isSyncFile=void 0;var t=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),r=E=>!!E.sync&&!!E.file;e.isSyncFile=r;var n=E=>!E.sync&&!!E.file;e.isAsyncFile=n;var a=E=>!!E.sync&&!E.file;e.isSyncNoFile=a;var o=E=>!E.sync&&!E.file;e.isAsyncNoFile=o;var l=E=>!!E.sync;e.isSync=l;var A=E=>!E.sync;e.isAsync=A;var f=E=>!!E.file;e.isFile=f;var I=E=>!E.file;e.isNoFile=I;var C=E=>t.get(E)||E,b=(E={})=>{if(!E)return{};let N={};for(let[B,F]of Object.entries(E)){let Q=C(B);N[Q]=F}return N.chmod===void 0&&N.noChmod===!1&&(N.chmod=!0),delete N.noChmod,N};e.dealias=b}),T5e=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.makeCommand=void 0;var t=YAr(),r=(n,a,o,l,A)=>Object.assign((f=[],I,C)=>{Array.isArray(f)&&(I=f,f={}),typeof I=="function"&&(C=I,I=void 0),I=I?Array.from(I):[];let b=(0,t.dealias)(f);if(A?.(b,I),(0,t.isSyncFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return n(b,I)}else if((0,t.isAsyncFile)(b)){let E=a(b,I);return C?E.then(()=>C(),C):E}else if((0,t.isSyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback not supported for sync tar functions");return o(b,I)}else if((0,t.isAsyncNoFile)(b)){if(typeof C=="function")throw new TypeError("callback only supported with file option");return l(b,I)}throw new Error("impossible options??")},{syncFile:n,asyncFile:a,syncNoFile:o,asyncNoFile:l,validate:A});e.makeCommand=r}),qZn=yC(e=>{"use strict";var t=e&&e.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(e,"__esModule",{value:!0}),e.constants=void 0;var r=t(wt("zlib")),n=r.default.constants||{ZLIB_VERNUM:4736};e.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},n))}),$Zn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(At,Yt,Tr,Nr){Nr===void 0&&(Nr=Tr);var er=Object.getOwnPropertyDescriptor(Yt,Tr);(!er||("get"in er?!Yt.__esModule:er.writable||er.configurable))&&(er={enumerable:!0,get:function(){return Yt[Tr]}}),Object.defineProperty(At,Nr,er)}:function(At,Yt,Tr,Nr){Nr===void 0&&(Nr=Tr),At[Nr]=Yt[Tr]}),r=e&&e.__setModuleDefault||(Object.create?function(At,Yt){Object.defineProperty(At,"default",{enumerable:!0,value:Yt})}:function(At,Yt){At.default=Yt}),n=e&&e.__importStar||function(){var At=function(Yt){return At=Object.getOwnPropertyNames||function(Tr){var Nr=[];for(var er in Tr)Object.prototype.hasOwnProperty.call(Tr,er)&&(Nr[Nr.length]=er);return Nr},At(Yt)};return function(Yt){if(Yt&&Yt.__esModule)return Yt;var Tr={};if(Yt!=null)for(var Nr=At(Yt),er=0;erAt,B=E?.writable===!0||E?.set!==void 0?At=>{l.Buffer.concat=At?N:b}:At=>{},F=Symbol("_superWrite"),Q=class extends Error{code;errno;constructor(At,Yt){super("zlib: "+At.message,{cause:At}),this.code=At.code,this.errno=At.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+At.message,Error.captureStackTrace(this,Yt??this.constructor)}get name(){return"ZlibError"}};e.ZlibError=Q;var X=Symbol("flushFlag"),ae=class extends A.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(At,Yt){if(!At||typeof At!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(At),this.#n=At.flush??0,this.#r=At.finishFlush??0,this.#i=At.fullFlushFlag??0,typeof f[Yt]!="function")throw new TypeError("Compression method not supported: "+Yt);try{this.#s=new f[Yt](At)}catch(Tr){throw new Q(Tr,this.constructor)}this.#o=Tr=>{this.#e||(this.#e=!0,this.close(),this.emit("error",Tr))},this.#s?.on("error",Tr=>this.#o(new Q(Tr))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,o.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(At){this.ended||(typeof At!="number"&&(At=this.#i),this.write(Object.assign(l.Buffer.alloc(0),{[X]:At})))}end(At,Yt,Tr){return typeof At=="function"&&(Tr=At,Yt=void 0,At=void 0),typeof Yt=="function"&&(Tr=Yt,Yt=void 0),At&&(Yt?this.write(At,Yt):this.write(At)),this.flush(this.#r),this.#t=!0,super.end(Tr)}get ended(){return this.#t}[F](At){return super.write(At)}write(At,Yt,Tr){if(typeof Yt=="function"&&(Tr=Yt,Yt="utf8"),typeof At=="string"&&(At=l.Buffer.from(At,Yt)),this.#e)return;(0,o.default)(this.#s,"zlib binding closed");let Nr=this.#s._handle,er=Nr.close;Nr.close=()=>{};let vt=this.#s.close;this.#s.close=()=>{},B(!0);let xt;try{let qt=typeof At[X]=="number"?At[X]:this.#n;xt=this.#s._processChunk(At,qt),B(!1)}catch(qt){B(!1),this.#o(new Q(qt,this.write))}finally{this.#s&&(this.#s._handle=Nr,Nr.close=er,this.#s.close=vt,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",qt=>this.#o(new Q(qt,this.write)));let Zr;if(xt)if(Array.isArray(xt)&&xt.length>0){let qt=xt[0];Zr=this[F](l.Buffer.from(qt));for(let Xt=1;Xt{typeof Nr=="function"&&(er=Nr,Nr=this.flushFlag),this.flush(Nr),er?.()};try{this.handle.params(At,Yt)}finally{this.handle.flush=Tr}this.handle&&(this.#e=At,this.#t=Yt)}}}};e.Zlib=ne;var ce=class extends ne{constructor(At){super(At,"Deflate")}};e.Deflate=ce;var fe=class extends ne{constructor(At){super(At,"Inflate")}};e.Inflate=fe;var ue=class extends ne{#e;constructor(At){super(At,"Gzip"),this.#e=At&&!!At.portable}[F](At){return this.#e?(this.#e=!1,At[9]=255,super[F](At)):super[F](At)}};e.Gzip=ue;var de=class extends ne{constructor(At){super(At,"Gunzip")}};e.Gunzip=de;var be=class extends ne{constructor(At){super(At,"DeflateRaw")}};e.DeflateRaw=be;var Se=class extends ne{constructor(At){super(At,"InflateRaw")}};e.InflateRaw=Se;var De=class extends ne{constructor(At){super(At,"Unzip")}};e.Unzip=De;var k=class extends ae{constructor(At,Yt){At=At||{},At.flush=At.flush||I.constants.BROTLI_OPERATION_PROCESS,At.finishFlush=At.finishFlush||I.constants.BROTLI_OPERATION_FINISH,At.fullFlushFlag=I.constants.BROTLI_OPERATION_FLUSH,super(At,Yt)}},et=class extends k{constructor(At){super(At,"BrotliCompress")}};e.BrotliCompress=et;var ct=class extends k{constructor(At){super(At,"BrotliDecompress")}};e.BrotliDecompress=ct;var Me=class extends ae{constructor(At,Yt){At=At||{},At.flush=At.flush||I.constants.ZSTD_e_continue,At.finishFlush=At.finishFlush||I.constants.ZSTD_e_end,At.fullFlushFlag=I.constants.ZSTD_e_flush,super(At,Yt)}},je=class extends Me{constructor(At){super(At,"ZstdCompress")}};e.ZstdCompress=je;var St=class extends Me{constructor(At){super(At,"ZstdDecompress")}};e.ZstdDecompress=St}),xOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.parse=e.encode=void 0;var t=(I,C)=>{if(Number.isSafeInteger(I))I<0?n(I,C):r(I,C);else throw Error("cannot encode number outside of javascript safe integer range");return C};e.encode=t;var r=(I,C)=>{C[0]=128;for(var b=C.length;b>1;b--)C[b-1]=I&255,I=Math.floor(I/256)},n=(I,C)=>{C[0]=255;var b=!1;I=I*-1;for(var E=C.length;E>1;E--){var N=I&255;I=Math.floor(I/256),b?C[E-1]=A(N):N===0?C[E-1]=0:(b=!0,C[E-1]=f(N))}},a=I=>{let C=I[0],b=C===128?l(I.subarray(1,I.length)):C===255?o(I):null;if(b===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(b))throw Error("parsed number outside of javascript safe integer range");return b};e.parse=a;var o=I=>{for(var C=I.length,b=0,E=!1,N=C-1;N>-1;N--){var B=Number(I[N]),F;E?F=A(B):B===0?F=B:(E=!0,F=f(B)),F!==0&&(b-=F*Math.pow(256,C-N-1))}return b},l=I=>{for(var C=I.length,b=0,E=C-1;E>-1;E--){var N=Number(I[E]);N!==0&&(b+=N*Math.pow(256,C-E-1))}return b},A=I=>(255^I)&255,f=I=>(255^I)+1&255}),eLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.code=e.name=e.isName=e.isCode=void 0;var t=n=>e.name.has(n);e.isCode=t;var r=n=>e.code.has(n);e.isName=r,e.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),e.code=new Map(Array.from(e.name).map(n=>[n[1],n[0]]))}),R5e=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(de,be,Se,De){De===void 0&&(De=Se);var k=Object.getOwnPropertyDescriptor(be,Se);(!k||("get"in k?!be.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return be[Se]}}),Object.defineProperty(de,De,k)}:function(de,be,Se,De){De===void 0&&(De=Se),de[De]=be[Se]}),r=e&&e.__setModuleDefault||(Object.create?function(de,be){Object.defineProperty(de,"default",{enumerable:!0,value:be})}:function(de,be){de.default=be}),n=e&&e.__importStar||function(){var de=function(be){return de=Object.getOwnPropertyNames||function(Se){var De=[];for(var k in Se)Object.prototype.hasOwnProperty.call(Se,k)&&(De[De.length]=k);return De},de(be)};return function(be){if(be&&be.__esModule)return be;var Se={};if(be!=null)for(var De=de(be),k=0;k=be+512))throw new Error("need 512 bytes for header");this.path=Se?.path??I(de,be,100),this.mode=Se?.mode??De?.mode??E(de,be+100,8),this.uid=Se?.uid??De?.uid??E(de,be+108,8),this.gid=Se?.gid??De?.gid??E(de,be+116,8),this.size=Se?.size??De?.size??E(de,be+124,12),this.mtime=Se?.mtime??De?.mtime??C(de,be+136,12),this.cksum=E(de,be+148,12),De&&this.#t(De,!0),Se&&this.#t(Se);let k=I(de,be+156,1);if(l.isCode(k)&&(this.#e=k||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=I(de,be+157,100),de.subarray(be+257,be+265).toString()==="ustar\x0000")if(this.uname=Se?.uname??De?.uname??I(de,be+265,32),this.gname=Se?.gname??De?.gname??I(de,be+297,32),this.devmaj=Se?.devmaj??De?.devmaj??E(de,be+329,8)??0,this.devmin=Se?.devmin??De?.devmin??E(de,be+337,8)??0,de[be+475]!==0){let ct=I(de,be+345,155);this.path=ct+"/"+this.path}else{let ct=I(de,be+345,130);ct&&(this.path=ct+"/"+this.path),this.atime=Se?.atime??De?.atime??C(de,be+476,12),this.ctime=Se?.ctime??De?.ctime??C(de,be+488,12)}let et=256;for(let ct=be;ct!(De==null||Se==="path"&&be||Se==="linkpath"&&be||Se==="global"))))}encode(de,be=0){if(de||(de=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(de.length>=be+512))throw new Error("need 512 bytes for header");let Se=this.ctime||this.atime?130:155,De=f(this.path||"",Se),k=De[0],et=De[1];this.needPax=!!De[2],this.needPax=ue(de,be,100,k)||this.needPax,this.needPax=Q(de,be+100,8,this.mode)||this.needPax,this.needPax=Q(de,be+108,8,this.uid)||this.needPax,this.needPax=Q(de,be+116,8,this.gid)||this.needPax,this.needPax=Q(de,be+124,12,this.size)||this.needPax,this.needPax=ce(de,be+136,12,this.mtime)||this.needPax,de[be+156]=Number(this.#e.codePointAt(0)),this.needPax=ue(de,be+157,100,this.linkpath)||this.needPax,de.write("ustar\x0000",be+257,8),this.needPax=ue(de,be+265,32,this.uname)||this.needPax,this.needPax=ue(de,be+297,32,this.gname)||this.needPax,this.needPax=Q(de,be+329,8,this.devmaj)||this.needPax,this.needPax=Q(de,be+337,8,this.devmin)||this.needPax,this.needPax=ue(de,be+345,Se,et)||this.needPax,de[be+475]!==0?this.needPax=ue(de,be+345,155,et)||this.needPax:(this.needPax=ue(de,be+345,130,et)||this.needPax,this.needPax=ce(de,be+476,12,this.atime)||this.needPax,this.needPax=ce(de,be+488,12,this.ctime)||this.needPax);let ct=256;for(let Me=be;Me{let Se=de,De="",k,et=a.posix.parse(de).root||".";if(Buffer.byteLength(Se)<100)k=[Se,De,!1];else{De=a.posix.dirname(Se),Se=a.posix.basename(Se);do Buffer.byteLength(Se)<=100&&Buffer.byteLength(De)<=be?k=[Se,De,!1]:Buffer.byteLength(Se)>100&&Buffer.byteLength(De)<=be?k=[Se.slice(0,99),De,!0]:(Se=a.posix.join(a.posix.basename(De),Se),De=a.posix.dirname(De));while(De!==et&&k===void 0);k||(k=[de.slice(0,99),"",!0])}return k},I=(de,be,Se)=>de.subarray(be,be+Se).toString("utf8").replace(/\0.*/,""),C=(de,be,Se)=>b(E(de,be,Se)),b=de=>de===void 0?void 0:new Date(de*1e3),E=(de,be,Se)=>Number(de[be])&128?o.parse(de.subarray(be,be+Se)):B(de,be,Se),N=de=>isNaN(de)?void 0:de,B=(de,be,Se)=>N(parseInt(de.subarray(be,be+Se).toString("utf8").replace(/\0.*$/,"").trim(),8)),F={12:8589934591,8:2097151},Q=(de,be,Se,De)=>De===void 0?!1:De>F[Se]||De<0?(o.encode(De,de.subarray(be,be+Se)),!0):(X(de,be,Se,De),!1),X=(de,be,Se,De)=>de.write(ae(De,Se),be,Se,"ascii"),ae=(de,be)=>ne(Math.floor(de).toString(8),be),ne=(de,be)=>(de.length===be-1?de:new Array(be-de.length-1).join("0")+de+" ")+"\0",ce=(de,be,Se,De)=>De===void 0?!1:Q(de,be,Se,De.getTime()/1e3),fe=new Array(156).join("\0"),ue=(de,be,Se,De)=>De===void 0?!1:(de.write(De+fe,be,Se,"utf8"),De.length!==Buffer.byteLength(De)||De.length>Se)}),QAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Pax=void 0;var t=wt("node:path"),r=R5e(),n=class tLn{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(f,I=!1){this.atime=f.atime,this.charset=f.charset,this.comment=f.comment,this.ctime=f.ctime,this.dev=f.dev,this.gid=f.gid,this.global=I,this.gname=f.gname,this.ino=f.ino,this.linkpath=f.linkpath,this.mtime=f.mtime,this.nlink=f.nlink,this.path=f.path,this.size=f.size,this.uid=f.uid,this.uname=f.uname}encode(){let f=this.encodeBody();if(f==="")return Buffer.allocUnsafe(0);let I=Buffer.byteLength(f),C=512*Math.ceil(1+I/512),b=Buffer.allocUnsafe(C);for(let E=0;E<512;E++)b[E]=0;new r.Header({path:("PaxHeader/"+(0,t.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:I,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(b),b.write(f,512,I,"utf8");for(let E=I+512;E=Math.pow(10,N)&&(N+=1),N+E+b}static parse(f,I,C=!1){return new tLn(a(o(f),I),C)}};e.Pax=n;var a=(A,f)=>f?Object.assign({},f,A):A,o=A=>A.replace(/\n$/,"").split(` -`).reduce(l,Object.create(null)),l=(A,f)=>{let I=parseInt(f,10);if(I!==Buffer.byteLength(f)+1)return A;f=f.slice((I+" ").length);let C=f.split("="),b=C.shift();if(!b)return A;let E=b.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),N=C.join("=");return A[E]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(E)?new Date(Number(N)*1e3):/^[0-9]+$/.test(N)?+N:N,A}}),N5e=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeWindowsPath=void 0;var t=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;e.normalizeWindowsPath=t!=="win32"?r=>r:r=>r&&r.replaceAll(/\\/g,"/")}),XAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ReadEntry=void 0;var t=B5e(),r=N5e(),n=class extends t.Minipass{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(a,o,l){switch(super({}),this.pause(),this.extended=o,this.globalExtended=l,this.header=a,this.remain=a.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=a.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!a.path)throw new Error("no path provided for tar.ReadEntry");this.path=(0,r.normalizeWindowsPath)(a.path),this.mode=a.mode,this.mode&&(this.mode=this.mode&4095),this.uid=a.uid,this.gid=a.gid,this.uname=a.uname,this.gname=a.gname,this.size=this.remain,this.mtime=a.mtime,this.atime=a.atime,this.ctime=a.ctime,this.linkpath=a.linkpath?(0,r.normalizeWindowsPath)(a.linkpath):void 0,this.uname=a.uname,this.gname=a.gname,o&&this.#e(o),l&&this.#e(l,!0)}write(a){let o=a.length;if(o>this.blockRemain)throw new Error("writing more to entry than is appropriate");let l=this.remain,A=this.blockRemain;return this.remain=Math.max(0,l-o),this.blockRemain=Math.max(0,A-o),this.ignore?!0:l>=o?super.write(a):super.write(a.subarray(0,l))}#e(a,o=!1){a.path&&(a.path=(0,r.normalizeWindowsPath)(a.path)),a.linkpath&&(a.linkpath=(0,r.normalizeWindowsPath)(a.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(a).filter(([l,A])=>!(A==null||l==="path"&&o))))}};e.ReadEntry=n}),JAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.warnMethod=void 0;var t=(r,n,a,o={})=>{r.file&&(o.file=r.file),r.cwd&&(o.cwd=r.cwd),o.code=a instanceof Error&&a.code||n,o.tarCode=n,!r.strict&&o.recoverable!==!1?(a instanceof Error&&(o=Object.assign(a,o),a=a.message),r.emit("warn",n,a,o)):a instanceof Error?r.emit("error",Object.assign(a,o)):r.emit("error",Object.assign(new Error(`${n}: ${a}`),o))};e.warnMethod=t}),UAr=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Parser=void 0;var t=wt("events"),r=$Zn(),n=R5e(),a=QAr(),o=XAr(),l=JAr(),A=1024*1024,f=Buffer.from([31,139]),I=Buffer.from([40,181,47,253]),C=Math.max(f.length,I.length),b=Symbol("state"),E=Symbol("writeEntry"),N=Symbol("readEntry"),B=Symbol("nextEntry"),F=Symbol("processEntry"),Q=Symbol("extendedHeader"),X=Symbol("globalExtendedHeader"),ae=Symbol("meta"),ne=Symbol("emitMeta"),ce=Symbol("buffer"),fe=Symbol("queue"),ue=Symbol("ended"),de=Symbol("emittedEnd"),be=Symbol("emit"),Se=Symbol("unzip"),De=Symbol("consumeChunk"),k=Symbol("consumeChunkSub"),et=Symbol("consumeBody"),ct=Symbol("consumeMeta"),Me=Symbol("consumeHeader"),je=Symbol("consuming"),St=Symbol("bufferConcat"),At=Symbol("maybeEnd"),Yt=Symbol("writing"),Tr=Symbol("aborted"),Nr=Symbol("onDone"),er=Symbol("sawValidEntry"),vt=Symbol("sawNullBlock"),xt=Symbol("sawEOF"),Zr=Symbol("closeStream"),qt=()=>!0,Xt=class extends t.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[fe]=[];[ce];[N];[E];[b]="begin";[ae]="";[Q];[X];[ue]=!1;[Se];[Tr]=!1;[er];[vt]=!1;[xt]=!1;[Yt]=!1;[je]=!1;[de]=!1;constructor(lr={}){super(),this.file=lr.file||"",this.on(Nr,()=>{(this[b]==="begin"||this[er]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),lr.ondone?this.on(Nr,lr.ondone):this.on(Nr,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!lr.strict,this.maxMetaEntrySize=lr.maxMetaEntrySize||A,this.filter=typeof lr.filter=="function"?lr.filter:qt;let cr=lr.file&&(lr.file.endsWith(".tar.br")||lr.file.endsWith(".tbr"));this.brotli=!(lr.gzip||lr.zstd)&&lr.brotli!==void 0?lr.brotli:cr?void 0:!1;let Ar=lr.file&&(lr.file.endsWith(".tar.zst")||lr.file.endsWith(".tzst"));this.zstd=!(lr.gzip||lr.brotli)&&lr.zstd!==void 0?lr.zstd:Ar?!0:void 0,this.on("end",()=>this[Zr]()),typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn),typeof lr.onReadEntry=="function"&&this.on("entry",lr.onReadEntry)}warn(lr,cr,Ar={}){(0,l.warnMethod)(this,lr,cr,Ar)}[Me](lr,cr){this[er]===void 0&&(this[er]=!1);let Ar;try{Ar=new n.Header(lr,cr,this[Q],this[X])}catch(qr){return this.warn("TAR_ENTRY_INVALID",qr)}if(Ar.nullBlock)this[vt]?(this[xt]=!0,this[b]==="begin"&&(this[b]="header"),this[be]("eof")):(this[vt]=!0,this[be]("nullBlock"));else if(this[vt]=!1,!Ar.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:Ar});else if(!Ar.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:Ar});else{let qr=Ar.type;if(/^(Symbolic)?Link$/.test(qr)&&!Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:Ar});else if(!/^(Symbolic)?Link$/.test(qr)&&!/^(Global)?ExtendedHeader$/.test(qr)&&Ar.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:Ar});else{let _n=this[E]=new o.ReadEntry(Ar,this[Q],this[X]);if(!this[er])if(_n.remain){let ke=()=>{_n.invalid||(this[er]=!0)};_n.on("end",ke)}else this[er]=!0;_n.meta?_n.size>this.maxMetaEntrySize?(_n.ignore=!0,this[be]("ignoredEntry",_n),this[b]="ignore",_n.resume()):_n.size>0&&(this[ae]="",_n.on("data",ke=>this[ae]+=ke),this[b]="meta"):(this[Q]=void 0,_n.ignore=_n.ignore||!this.filter(_n.path,_n),_n.ignore?(this[be]("ignoredEntry",_n),this[b]=_n.remain?"ignore":"header",_n.resume()):(_n.remain?this[b]="body":(this[b]="header",_n.end()),this[N]?this[fe].push(_n):(this[fe].push(_n),this[B]())))}}}[Zr](){queueMicrotask(()=>this.emit("close"))}[F](lr){let cr=!0;if(!lr)this[N]=void 0,cr=!1;else if(Array.isArray(lr)){let[Ar,...qr]=lr;this.emit(Ar,...qr)}else this[N]=lr,this.emit("entry",lr),lr.emittedEnd||(lr.on("end",()=>this[B]()),cr=!1);return cr}[B](){do;while(this[F](this[fe].shift()));if(this[fe].length===0){let lr=this[N];!lr||lr.flowing||lr.size===lr.remain?this[Yt]||this.emit("drain"):lr.once("drain",()=>this.emit("drain"))}}[et](lr,cr){let Ar=this[E];if(!Ar)throw new Error("attempt to consume body without entry??");let qr=Ar.blockRemain??0,_n=qr>=lr.length&&cr===0?lr:lr.subarray(cr,cr+qr);return Ar.write(_n),Ar.blockRemain||(this[b]="header",this[E]=void 0,Ar.end()),_n.length}[ct](lr,cr){let Ar=this[E],qr=this[et](lr,cr);return!this[E]&&Ar&&this[ne](Ar),qr}[be](lr,cr,Ar){this[fe].length===0&&!this[N]?this.emit(lr,cr,Ar):this[fe].push([lr,cr,Ar])}[ne](lr){switch(this[be]("meta",this[ae]),lr.type){case"ExtendedHeader":case"OldExtendedHeader":this[Q]=a.Pax.parse(this[ae],this[Q],!1);break;case"GlobalExtendedHeader":this[X]=a.Pax.parse(this[ae],this[X],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let cr=this[Q]??Object.create(null);this[Q]=cr,cr.path=this[ae].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let cr=this[Q]||Object.create(null);this[Q]=cr,cr.linkpath=this[ae].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+lr.type)}}abort(lr){this[Tr]=!0,this.emit("abort",lr),this.warn("TAR_ABORT",lr,{recoverable:!1})}write(lr,cr,Ar){if(typeof cr=="function"&&(Ar=cr,cr=void 0),typeof lr=="string"&&(lr=Buffer.from(lr,typeof cr=="string"?cr:"utf8")),this[Tr])return Ar?.(),!1;if((this[Se]===void 0||this.brotli===void 0&&this[Se]===!1)&&lr){if(this[ce]&&(lr=Buffer.concat([this[ce],lr]),this[ce]=void 0),lr.lengththis[De](Nn)),this[Se].on("error",Nn=>this.abort(Nn)),this[Se].on("end",()=>{this[ue]=!0,this[De]()}),this[Yt]=!0;let Fn=!!this[Se][jt?"end":"write"](lr);return this[Yt]=!1,Ar?.(),Fn}}this[Yt]=!0,this[Se]?this[Se].write(lr):this[De](lr),this[Yt]=!1;let qr=this[fe].length>0?!1:this[N]?this[N].flowing:!0;return!qr&&this[fe].length===0&&this[N]?.once("drain",()=>this.emit("drain")),Ar?.(),qr}[St](lr){lr&&!this[Tr]&&(this[ce]=this[ce]?Buffer.concat([this[ce],lr]):lr)}[At](){if(this[ue]&&!this[de]&&!this[Tr]&&!this[je]){this[de]=!0;let lr=this[E];if(lr&&lr.blockRemain){let cr=this[ce]?this[ce].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${lr.blockRemain} more bytes, only ${cr} available)`,{entry:lr}),this[ce]&&lr.write(this[ce]),lr.end()}this[be](Nr)}}[De](lr){if(this[je]&&lr)this[St](lr);else if(!lr&&!this[ce])this[At]();else if(lr){if(this[je]=!0,this[ce]){this[St](lr);let cr=this[ce];this[ce]=void 0,this[k](cr)}else this[k](lr);for(;this[ce]&&this[ce]?.length>=512&&!this[Tr]&&!this[xt];){let cr=this[ce];this[ce]=void 0,this[k](cr)}this[je]=!1}(!this[ce]||this[ue])&&this[At]()}[k](lr){let cr=0,Ar=lr.length;for(;cr+512<=Ar&&!this[Tr]&&!this[xt];)switch(this[b]){case"begin":case"header":this[Me](lr,cr),cr+=512;break;case"ignore":case"body":cr+=this[et](lr,cr);break;case"meta":cr+=this[ct](lr,cr);break;default:throw new Error("invalid state: "+this[b])}cr{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripTrailingSlashes=void 0;var t=r=>{let n=r.length-1,a=-1;for(;n>-1&&r.charAt(n)==="/";)a=n,n--;return a===-1?r:r.slice(0,a)};e.stripTrailingSlashes=t}),D5e=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(F,Q,X,ae){ae===void 0&&(ae=X);var ne=Object.getOwnPropertyDescriptor(Q,X);(!ne||("get"in ne?!Q.__esModule:ne.writable||ne.configurable))&&(ne={enumerable:!0,get:function(){return Q[X]}}),Object.defineProperty(F,ae,ne)}:function(F,Q,X,ae){ae===void 0&&(ae=X),F[ae]=Q[X]}),r=e&&e.__setModuleDefault||(Object.create?function(F,Q){Object.defineProperty(F,"default",{enumerable:!0,value:Q})}:function(F,Q){F.default=Q}),n=e&&e.__importStar||function(){var F=function(Q){return F=Object.getOwnPropertyNames||function(X){var ae=[];for(var ne in X)Object.prototype.hasOwnProperty.call(X,ne)&&(ae[ae.length]=ne);return ae},F(Q)};return function(Q){if(Q&&Q.__esModule)return Q;var X={};if(Q!=null)for(var ae=F(Q),ne=0;ne{let Q=F.onReadEntry;F.onReadEntry=Q?X=>{Q(X),X.resume()}:X=>X.resume()},E=(F,Q)=>{let X=new Map(Q.map(ce=>[(0,C.stripTrailingSlashes)(ce),!0])),ae=F.filter,ne=(ce,fe="")=>{let ue=fe||(0,A.parse)(ce).root||".",de;if(ce===ue)de=!1;else{let be=X.get(ce);de=be!==void 0?be:ne((0,A.dirname)(ce),ue)}return X.set(ce,de),de};F.filter=ae?(ce,fe)=>ae(ce,fe)&&ne((0,C.stripTrailingSlashes)(ce)):ce=>ne((0,C.stripTrailingSlashes)(ce))};e.filesFilter=E;var N=F=>{let Q=new I.Parser(F),X=F.file,ae;try{ae=l.default.openSync(X,"r");let ne=l.default.fstatSync(ae),ce=F.maxReadSize||16*1024*1024;if(ne.size{let X=new I.Parser(F),ae=F.maxReadSize||16*1024*1024,ne=F.file;return new Promise((ce,fe)=>{X.on("error",fe),X.on("end",ce),l.default.stat(ne,(ue,de)=>{if(ue)fe(ue);else{let be=new o.ReadStream(ne,{readSize:ae,size:de.size});be.on("error",fe),be.pipe(X)}})})};e.list=(0,f.makeCommand)(N,B,F=>new I.Parser(F),F=>new I.Parser(F),(F,Q)=>{Q?.length&&(0,e.filesFilter)(F,Q),F.noResume||b(F)})}),GOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.modeFix=void 0;var t=(r,n,a)=>(r&=4095,a&&(r=(r|384)&-19),n&&(r&256&&(r|=64),r&32&&(r|=8),r&4&&(r|=1)),r);e.modeFix=t}),rLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stripAbsolutePath=void 0;var t=wt("node:path"),{isAbsolute:r,parse:n}=t.win32,a=o=>{let l="",A=n(o);for(;r(o)||A.root;){let f=o.charAt(0)==="/"&&o.slice(0,4)!=="//?/"?"/":A.root;o=o.slice(f.length),l+=f,A=n(o)}return[l,o]};e.stripAbsolutePath=a}),nLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;var t=["|","<",">","?",":"],r=t.map(A=>String.fromCodePoint(61440+Number(A.codePointAt(0)))),n=new Map(t.map((A,f)=>[A,r[f]])),a=new Map(r.map((A,f)=>[A,t[f]])),o=A=>t.reduce((f,I)=>f.split(I).join(n.get(I)),A);e.encode=o;var l=A=>r.reduce((f,I)=>f.split(I).join(a.get(I)),A);e.decode=l}),iLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(qt,Xt,lr,cr){cr===void 0&&(cr=lr);var Ar=Object.getOwnPropertyDescriptor(Xt,lr);(!Ar||("get"in Ar?!Xt.__esModule:Ar.writable||Ar.configurable))&&(Ar={enumerable:!0,get:function(){return Xt[lr]}}),Object.defineProperty(qt,cr,Ar)}:function(qt,Xt,lr,cr){cr===void 0&&(cr=lr),qt[cr]=Xt[lr]}),r=e&&e.__setModuleDefault||(Object.create?function(qt,Xt){Object.defineProperty(qt,"default",{enumerable:!0,value:Xt})}:function(qt,Xt){qt.default=Xt}),n=e&&e.__importStar||function(){var qt=function(Xt){return qt=Object.getOwnPropertyNames||function(lr){var cr=[];for(var Ar in lr)Object.prototype.hasOwnProperty.call(lr,Ar)&&(cr[cr.length]=Ar);return cr},qt(Xt)};return function(Xt){if(Xt&&Xt.__esModule)return Xt;var lr={};if(Xt!=null)for(var cr=qt(Xt),Ar=0;ArXt?(qt=(0,C.normalizeWindowsPath)(qt).replace(/^\.(\/|$)/,""),(0,B.stripTrailingSlashes)(Xt)+"/"+qt):(0,C.normalizeWindowsPath)(qt),ae=16*1024*1024,ne=Symbol("process"),ce=Symbol("file"),fe=Symbol("directory"),ue=Symbol("symlink"),de=Symbol("hardlink"),be=Symbol("header"),Se=Symbol("read"),De=Symbol("lstat"),k=Symbol("onlstat"),et=Symbol("onread"),ct=Symbol("onreadlink"),Me=Symbol("openfile"),je=Symbol("onopenfile"),St=Symbol("close"),At=Symbol("mode"),Yt=Symbol("awaitDrain"),Tr=Symbol("ondrain"),Nr=Symbol("prefix"),er=class extends l.Minipass{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#e=!1;constructor(qt,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.path=(0,C.normalizeWindowsPath)(qt),this.portable=!!lr.portable,this.maxReadSize=lr.maxReadSize||ae,this.linkCache=lr.linkCache||new Map,this.statCache=lr.statCache||new Map,this.preservePaths=!!lr.preservePaths,this.cwd=(0,C.normalizeWindowsPath)(lr.cwd||process.cwd()),this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.mtime=lr.mtime,this.prefix=lr.prefix?(0,C.normalizeWindowsPath)(lr.prefix):void 0,this.onWriteEntry=lr.onWriteEntry,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let cr=!1;if(!this.preservePaths){let[qr,_n]=(0,N.stripAbsolutePath)(this.path);qr&&typeof _n=="string"&&(this.path=_n,cr=qr)}this.win32=!!lr.win32||process.platform==="win32",this.win32&&(this.path=Q.decode(this.path.replaceAll(/\\/g,"/")),qt=qt.replaceAll(/\\/g,"/")),this.absolute=(0,C.normalizeWindowsPath)(lr.absolute||A.default.resolve(this.cwd,qt)),this.path===""&&(this.path="./"),cr&&this.warn("TAR_ENTRY_INFO",`stripping ${cr} from absolute path`,{entry:this,path:cr+this.path});let Ar=this.statCache.get(this.absolute);Ar?this[k](Ar):this[De]()}warn(qt,Xt,lr={}){return(0,F.warnMethod)(this,qt,Xt,lr)}emit(qt,...Xt){return qt==="error"&&(this.#e=!0),super.emit(qt,...Xt)}[De](){o.default.lstat(this.absolute,(qt,Xt)=>{if(qt)return this.emit("error",qt);this[k](Xt)})}[k](qt){this.statCache.set(this.absolute,qt),this.stat=qt,qt.isFile()||(qt.size=0),this.type=Zr(qt),this.emit("stat",qt),this[ne]()}[ne](){switch(this.type){case"File":return this[ce]();case"Directory":return this[fe]();case"SymbolicLink":return this[ue]();default:return this.end()}}[At](qt){return(0,I.modeFix)(qt,this.type==="Directory",this.portable)}[Nr](qt){return X(qt,this.prefix)}[be](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new f.Header({path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,mode:this[At](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let qt=this.header?.block;if(!qt)throw new Error("failed to encode header");super.write(qt)}[fe](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[be](),this.end()}[ue](){o.default.readlink(this.absolute,(qt,Xt)=>{if(qt)return this.emit("error",qt);this[ct](Xt)})}[ct](qt){this.linkpath=(0,C.normalizeWindowsPath)(qt),this[be](),this.end()}[de](qt){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=(0,C.normalizeWindowsPath)(A.default.relative(this.cwd,qt)),this.stat.size=0,this[be](),this.end()}[ce](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let qt=`${this.stat.dev}:${this.stat.ino}`,Xt=this.linkCache.get(qt);if(Xt?.indexOf(this.cwd)===0)return this[de](Xt);this.linkCache.set(qt,this.absolute)}if(this[be](),this.stat.size===0)return this.end();this[Me]()}[Me](){o.default.open(this.absolute,"r",(qt,Xt)=>{if(qt)return this.emit("error",qt);this[je](Xt)})}[je](qt){if(this.fd=qt,this.#e)return this[St]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let Xt=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(Xt),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[Se]()}[Se](){let{fd:qt,buf:Xt,offset:lr,length:cr,pos:Ar}=this;if(qt===void 0||Xt===void 0)throw new Error("cannot read file without first opening");o.default.read(qt,Xt,lr,cr,Ar,(qr,_n)=>{if(qr)return this[St](()=>this.emit("error",qr));this[et](_n)})}[St](qt=()=>{}){this.fd!==void 0&&o.default.close(this.fd,qt)}[et](qt){if(qt<=0&&this.remain>0){let lr=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[St](()=>this.emit("error",lr))}if(qt>this.remain){let lr=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[St](()=>this.emit("error",lr))}if(!this.buf)throw new Error("should have created buffer prior to reading");if(qt===this.remain)for(let lr=qt;lrthis[Tr]())}[Yt](qt){this.once("drain",qt)}write(qt,Xt,lr){if(typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,typeof Xt=="string"?Xt:"utf8")),this.blockRemainqt?this.emit("error",qt):this.end());if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[Se]()}};e.WriteEntry=er;var vt=class extends er{sync=!0;[De](){this[k](o.default.lstatSync(this.absolute))}[ue](){this[ct](o.default.readlinkSync(this.absolute))}[Me](){this[je](o.default.openSync(this.absolute,"r"))}[Se](){let qt=!0;try{let{fd:Xt,buf:lr,offset:cr,length:Ar,pos:qr}=this;if(Xt===void 0||lr===void 0)throw new Error("fd and buf must be set in READ method");let _n=o.default.readSync(Xt,lr,cr,Ar,qr);this[et](_n),qt=!1}finally{if(qt)try{this[St](()=>{})}catch{}}}[Yt](qt){qt()}[St](qt=()=>{}){this.fd!==void 0&&o.default.closeSync(this.fd),qt()}};e.WriteEntrySync=vt;var xt=class extends l.Minipass{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn(qt,Xt,lr={}){return(0,F.warnMethod)(this,qt,Xt,lr)}constructor(qt,Xt={}){let lr=(0,b.dealias)(Xt);super(),this.preservePaths=!!lr.preservePaths,this.portable=!!lr.portable,this.strict=!!lr.strict,this.noPax=!!lr.noPax,this.noMtime=!!lr.noMtime,this.onWriteEntry=lr.onWriteEntry,this.readEntry=qt;let{type:cr}=qt;if(cr==="Unsupported")throw new Error("writing entry that should be ignored");this.type=cr,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=lr.prefix,this.path=(0,C.normalizeWindowsPath)(qt.path),this.mode=qt.mode!==void 0?this[At](qt.mode):void 0,this.uid=this.portable?void 0:qt.uid,this.gid=this.portable?void 0:qt.gid,this.uname=this.portable?void 0:qt.uname,this.gname=this.portable?void 0:qt.gname,this.size=qt.size,this.mtime=this.noMtime?void 0:lr.mtime||qt.mtime,this.atime=this.portable?void 0:qt.atime,this.ctime=this.portable?void 0:qt.ctime,this.linkpath=qt.linkpath!==void 0?(0,C.normalizeWindowsPath)(qt.linkpath):void 0,typeof lr.onwarn=="function"&&this.on("warn",lr.onwarn);let Ar=!1;if(!this.preservePaths){let[_n,ke]=(0,N.stripAbsolutePath)(this.path);_n&&typeof ke=="string"&&(this.path=ke,Ar=_n)}this.remain=qt.size,this.blockRemain=qt.startBlockSize,this.onWriteEntry?.(this),this.header=new f.Header({path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),Ar&&this.warn("TAR_ENTRY_INFO",`stripping ${Ar} from absolute path`,{entry:this,path:Ar+this.path}),this.header.encode()&&!this.noPax&&super.write(new E.Pax({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Nr](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Nr](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let qr=this.header?.block;if(!qr)throw new Error("failed to encode header");super.write(qr),qt.pipe(this)}[Nr](qt){return X(qt,this.prefix)}[At](qt){return(0,I.modeFix)(qt,this.type==="Directory",this.portable)}write(qt,Xt,lr){typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,typeof Xt=="string"?Xt:"utf8"));let cr=qt.length;if(cr>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=cr,super.write(qt,lr)}end(qt,Xt,lr){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof qt=="function"&&(lr=qt,Xt=void 0,qt=void 0),typeof Xt=="function"&&(lr=Xt,Xt=void 0),typeof qt=="string"&&(qt=Buffer.from(qt,Xt??"utf8")),lr&&this.once("finish",lr),qt?super.end(qt,lr):super.end(lr),this}};e.WriteEntryTar=xt;var Zr=qt=>qt.isFile()?"File":qt.isDirectory()?"Directory":qt.isSymbolicLink()?"SymbolicLink":"Unsupported"}),FOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Node=e.Yallist=void 0;var t=class Tve{tail;head;length=0;static create(A=[]){return new Tve(A)}constructor(A=[]){for(let f of A)this.push(f)}*[Symbol.iterator](){for(let A=this.head;A;A=A.next)yield A.value}removeNode(A){if(A.list!==this)throw new Error("removing node which does not belong to this list");let f=A.next,I=A.prev;return f&&(f.prev=I),I&&(I.next=f),A===this.head&&(this.head=f),A===this.tail&&(this.tail=I),this.length--,A.next=void 0,A.prev=void 0,A.list=void 0,f}unshiftNode(A){if(A===this.head)return;A.list&&A.list.removeNode(A);let f=this.head;A.list=this,A.next=f,f&&(f.prev=A),this.head=A,this.tail||(this.tail=A),this.length++}pushNode(A){if(A===this.tail)return;A.list&&A.list.removeNode(A);let f=this.tail;A.list=this,A.prev=f,f&&(f.next=A),this.tail=A,this.head||(this.head=A),this.length++}push(...A){for(let f=0,I=A.length;f1)I=f;else if(this.head)C=this.head.next,I=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var b=0;C;b++)I=A(I,C.value,b),C=C.next;return I}reduceReverse(A,f){let I,C=this.tail;if(arguments.length>1)I=f;else if(this.tail)C=this.tail.prev,I=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let b=this.length-1;C;b--)I=A(I,C.value,b),C=C.prev;return I}toArray(){let A=new Array(this.length);for(let f=0,I=this.head;I;f++)A[f]=I.value,I=I.next;return A}toArrayReverse(){let A=new Array(this.length);for(let f=0,I=this.tail;I;f++)A[f]=I.value,I=I.prev;return A}slice(A=0,f=this.length){f<0&&(f+=this.length),A<0&&(A+=this.length);let I=new Tve;if(fthis.length&&(f=this.length);let C=this.head,b=0;for(b=0;C&&bthis.length&&(f=this.length);let C=this.length,b=this.tail;for(;b&&C>f;C--)b=b.prev;for(;b&&C>A;C--,b=b.prev)I.push(b.value);return I}splice(A,f=0,...I){A>this.length&&(A=this.length-1),A<0&&(A=this.length+A);let C=this.head;for(let E=0;C&&E{"use strict";var t=e&&e.__createBinding||(Object.create?function(vt,xt,Zr,qt){qt===void 0&&(qt=Zr);var Xt=Object.getOwnPropertyDescriptor(xt,Zr);(!Xt||("get"in Xt?!xt.__esModule:Xt.writable||Xt.configurable))&&(Xt={enumerable:!0,get:function(){return xt[Zr]}}),Object.defineProperty(vt,qt,Xt)}:function(vt,xt,Zr,qt){qt===void 0&&(qt=Zr),vt[qt]=xt[Zr]}),r=e&&e.__setModuleDefault||(Object.create?function(vt,xt){Object.defineProperty(vt,"default",{enumerable:!0,value:xt})}:function(vt,xt){vt.default=xt}),n=e&&e.__importStar||function(){var vt=function(xt){return vt=Object.getOwnPropertyNames||function(Zr){var qt=[];for(var Xt in Zr)Object.prototype.hasOwnProperty.call(Zr,Xt)&&(qt[qt.length]=Xt);return qt},vt(xt)};return function(xt){if(xt&&xt.__esModule)return xt;var Zr={};if(xt!=null)for(var qt=vt(xt),Xt=0;Xt1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(vt.gzip&&(typeof vt.gzip!="object"&&(vt.gzip={}),this.portable&&(vt.gzip.portable=!0),this.zip=new I.Gzip(vt.gzip)),vt.brotli&&(typeof vt.brotli!="object"&&(vt.brotli={}),this.zip=new I.BrotliCompress(vt.brotli)),vt.zstd&&(typeof vt.zstd!="object"&&(vt.zstd={}),this.zip=new I.ZstdCompress(vt.zstd)),!this.zip)throw new Error("impossible");let xt=this.zip;xt.on("data",Zr=>super.write(Zr)),xt.on("end",()=>super.end()),xt.on("drain",()=>this[At]()),this.on("resume",()=>xt.resume())}else this.on("drain",this[At]);this.noDirRecurse=!!vt.noDirRecurse,this.follow=!!vt.follow,this.noMtime=!!vt.noMtime,vt.mtime&&(this.mtime=vt.mtime),this.filter=typeof vt.filter=="function"?vt.filter:()=>!0,this[Q]=new C.Yallist,this[fe]=0,this.jobs=Number(vt.jobs)||4,this[ne]=!1,this[F]=!1}[St](vt){return super.write(vt)}add(vt){return this.write(vt),this}end(vt,xt,Zr){return typeof vt=="function"&&(Zr=vt,vt=void 0),typeof xt=="function"&&(Zr=xt,xt=void 0),vt&&this.add(vt),this[F]=!0,this[ae](),Zr&&Zr(),this}write(vt){if(this[F])throw new Error("write after end");return vt instanceof b.ReadEntry?this[be](vt):this[de](vt),this.flowing}[be](vt){let xt=(0,Tr.normalizeWindowsPath)(Yt.default.resolve(this.cwd,vt.path));if(!this.filter(vt.path,vt))vt.resume();else{let Zr=new A(vt.path,xt);Zr.entry=new l.WriteEntryTar(vt,this[Me](Zr)),Zr.entry.on("end",()=>this[ue](Zr)),this[fe]+=1,this[Q].push(Zr)}this[ae]()}[de](vt){let xt=(0,Tr.normalizeWindowsPath)(Yt.default.resolve(this.cwd,vt));this[Q].push(new A(vt,xt)),this[ae]()}[Se](vt){vt.pending=!0,this[fe]+=1;let xt=this.follow?"stat":"lstat";o.default[xt](vt.absolute,(Zr,qt)=>{vt.pending=!1,this[fe]-=1,Zr?this.emit("error",Zr):this[B](vt,qt)})}[B](vt,xt){this.statCache.set(vt.absolute,xt),vt.stat=xt,this.filter(vt.path,xt)?xt.isFile()&&xt.nlink>1&&vt===this[X]&&!this.linkCache.get(`${xt.dev}:${xt.ino}`)&&!this.sync&&this[ce](vt):vt.ignore=!0,this[ae]()}[De](vt){vt.pending=!0,this[fe]+=1,o.default.readdir(vt.absolute,(xt,Zr)=>{if(vt.pending=!1,this[fe]-=1,xt)return this.emit("error",xt);this[k](vt,Zr)})}[k](vt,xt){this.readdirCache.set(vt.absolute,xt),vt.readdir=xt,this[ae]()}[ae](){if(!this[ne]){this[ne]=!0;for(let vt=this[Q].head;vt&&this[fe]this.warn(xt,Zr,qt),noPax:this.noPax,cwd:this.cwd,absolute:vt.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[ct](vt){this[fe]+=1;try{return new this[je](vt.path,this[Me](vt)).on("end",()=>this[ue](vt)).on("error",xt=>this.emit("error",xt))}catch(xt){this.emit("error",xt)}}[At](){this[X]&&this[X].entry&&this[X].entry.resume()}[et](vt){vt.piped=!0,vt.readdir&&vt.readdir.forEach(qt=>{let Xt=vt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+qt)});let xt=vt.entry,Zr=this.zip;if(!xt)throw new Error("cannot pipe without source");Zr?xt.on("data",qt=>{Zr.write(qt)||xt.pause()}):xt.on("data",qt=>{super.write(qt)||xt.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(vt,xt,Zr={}){(0,E.warnMethod)(this,vt,xt,Zr)}};e.Pack=Nr;var er=class extends Nr{sync=!0;constructor(vt){super(vt),this[je]=l.WriteEntrySync}pause(){}resume(){}[Se](vt){let xt=this.follow?"statSync":"lstatSync";this[B](vt,o.default[xt](vt.absolute))}[De](vt){this[k](vt,o.default.readdirSync(vt.absolute))}[et](vt){let xt=vt.entry,Zr=this.zip;if(vt.readdir&&vt.readdir.forEach(qt=>{let Xt=vt.path,lr=Xt==="./"?"":Xt.replace(/\/*$/,"/");this[de](lr+qt)}),!xt)throw new Error("Cannot pipe without source");Zr?xt.on("data",qt=>{Zr.write(qt)}):xt.on("data",qt=>{super[St](qt)})}};e.PackSync=er}),sLn=yC(e=>{"use strict";var t=e&&e.__importDefault||function(N){return N&&N.__esModule?N:{default:N}};Object.defineProperty(e,"__esModule",{value:!0}),e.create=void 0;var r=w5e(),n=t(wt("node:path")),a=D5e(),o=T5e(),l=jAr(),A=(N,B)=>{let F=new l.PackSync(N),Q=new r.WriteStreamSync(N.file,{mode:N.mode||438});F.pipe(Q),I(F,B)},f=(N,B)=>{let F=new l.Pack(N),Q=new r.WriteStream(N.file,{mode:N.mode||438});F.pipe(Q);let X=new Promise((ae,ne)=>{Q.on("error",ne),Q.on("close",ae),F.on("error",ne)});return C(F,B).catch(ae=>F.emit("error",ae)),X},I=(N,B)=>{B.forEach(F=>{F.charAt(0)==="@"?(0,a.list)({file:n.default.resolve(N.cwd,F.slice(1)),sync:!0,noResume:!0,onReadEntry:Q=>N.add(Q)}):N.add(F)}),N.end()},C=async(N,B)=>{for(let F of B)F.charAt(0)==="@"?await(0,a.list)({file:n.default.resolve(String(N.cwd),F.slice(1)),noResume:!0,onReadEntry:Q=>{N.add(Q)}}):N.add(F);N.end()},b=(N,B)=>{let F=new l.PackSync(N);return I(F,B),F},E=(N,B)=>{let F=new l.Pack(N);return C(F,B).catch(Q=>F.emit("error",Q)),F};e.create=(0,o.makeCommand)(A,f,b,E,(N,B)=>{if(!B?.length)throw new TypeError("no paths specified to add to archive")})}),ZOo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(B){return B&&B.__esModule?B:{default:B}};Object.defineProperty(e,"__esModule",{value:!0}),e.getWriteFlag=void 0;var r=t(wt("fs")),n=process.platform,a=n==="win32",{O_CREAT:o,O_NOFOLLOW:l,O_TRUNC:A,O_WRONLY:f}=r.default.constants,I=Number(process.env.__FAKE_FS_O_FILENAME__)||r.default.constants.UV_FS_O_FILEMAP||0,C=a&&!!I,b=512*1024,E=I|A|o|f,N=!a&&typeof l=="number"?l|A|o|f:null;e.getWriteFlag=N!==null?()=>N:C?B=>B"w"}),LOo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(C){return C&&C.__esModule?C:{default:C}};Object.defineProperty(e,"__esModule",{value:!0}),e.chownrSync=e.chownr=void 0;var r=t(wt("node:fs")),n=t(wt("node:path")),a=(C,b,E)=>{try{return r.default.lchownSync(C,b,E)}catch(N){if(N?.code!=="ENOENT")throw N}},o=(C,b,E,N)=>{r.default.lchown(C,b,E,B=>{N(B&&B?.code!=="ENOENT"?B:null)})},l=(C,b,E,N,B)=>{if(b.isDirectory())(0,e.chownr)(n.default.resolve(C,b.name),E,N,F=>{if(F)return B(F);let Q=n.default.resolve(C,b.name);o(Q,E,N,B)});else{let F=n.default.resolve(C,b.name);o(F,E,N,B)}},A=(C,b,E,N)=>{r.default.readdir(C,{withFileTypes:!0},(B,F)=>{if(B){if(B.code==="ENOENT")return N();if(B.code!=="ENOTDIR"&&B.code!=="ENOTSUP")return N(B)}if(B||!F.length)return o(C,b,E,N);let Q=F.length,X=null,ae=ne=>{if(!X){if(ne)return N(X=ne);if(--Q===0)return o(C,b,E,N)}};for(let ne of F)l(C,ne,b,E,ae)})};e.chownr=A;var f=(C,b,E,N)=>{b.isDirectory()&&(0,e.chownrSync)(n.default.resolve(C,b.name),E,N),a(n.default.resolve(C,b.name),E,N)},I=(C,b,E)=>{let N;try{N=r.default.readdirSync(C,{withFileTypes:!0})}catch(B){let F=B;if(F?.code==="ENOENT")return;if(F?.code==="ENOTDIR"||F?.code==="ENOTSUP")return a(C,b,E);throw F}for(let B of N)f(C,B,b,E);return a(C,b,E)};e.chownrSync=I}),VOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CwdError=void 0;var t=class extends Error{path;code;syscall="chdir";constructor(r,n){super(`${n}: Cannot cd into '${r}'`),this.path=r,this.code=n}get name(){return"CwdError"}};e.CwdError=t}),oLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SymlinkError=void 0;var t=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(r,n){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=r,this.path=n}get name(){return"SymlinkError"}};e.SymlinkError=t}),POo=yC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.mkdirSync=e.mkdir=void 0;var r=LOo(),n=t(wt("node:fs")),a=t(wt("node:fs/promises")),o=t(wt("node:path")),l=VOo(),A=N5e(),f=oLn(),I=(F,Q)=>{n.default.stat(F,(X,ae)=>{(X||!ae.isDirectory())&&(X=new l.CwdError(F,X?.code||"ENOTDIR")),Q(X)})},C=(F,Q,X)=>{F=(0,A.normalizeWindowsPath)(F);let ae=Q.umask??18,ne=Q.mode|448,ce=(ne&ae)!==0,fe=Q.uid,ue=Q.gid,de=typeof fe=="number"&&typeof ue=="number"&&(fe!==Q.processUid||ue!==Q.processGid),be=Q.preserve,Se=Q.unlink,De=(0,A.normalizeWindowsPath)(Q.cwd),k=(ct,Me)=>{ct?X(ct):Me&&de?(0,r.chownr)(Me,fe,ue,je=>k(je)):ce?n.default.chmod(F,ne,X):X()};if(F===De)return I(F,k);if(be)return a.default.mkdir(F,{mode:ne,recursive:!0}).then(ct=>k(null,ct??void 0),k);let et=(0,A.normalizeWindowsPath)(o.default.relative(De,F)).split("/");b(De,et,ne,Se,De,void 0,k)};e.mkdir=C;var b=(F,Q,X,ae,ne,ce,fe)=>{if(Q.length===0)return fe(null,ce);let ue=Q.shift(),de=(0,A.normalizeWindowsPath)(o.default.resolve(F+"/"+ue));n.default.mkdir(de,X,E(de,Q,X,ae,ne,ce,fe))},E=(F,Q,X,ae,ne,ce,fe)=>ue=>{ue?n.default.lstat(F,(de,be)=>{if(de)de.path=de.path&&(0,A.normalizeWindowsPath)(de.path),fe(de);else if(be.isDirectory())b(F,Q,X,ae,ne,ce,fe);else if(ae)n.default.unlink(F,Se=>{if(Se)return fe(Se);n.default.mkdir(F,X,E(F,Q,X,ae,ne,ce,fe))});else{if(be.isSymbolicLink())return fe(new f.SymlinkError(F,F+"/"+Q.join("/")));fe(ue)}}):(ce=ce||F,b(F,Q,X,ae,ne,ce,fe))},N=F=>{let Q=!1,X;try{Q=n.default.statSync(F).isDirectory()}catch(ae){X=ae?.code}finally{if(!Q)throw new l.CwdError(F,X??"ENOTDIR")}},B=(F,Q)=>{F=(0,A.normalizeWindowsPath)(F);let X=Q.umask??18,ae=Q.mode|448,ne=(ae&X)!==0,ce=Q.uid,fe=Q.gid,ue=typeof ce=="number"&&typeof fe=="number"&&(ce!==Q.processUid||fe!==Q.processGid),de=Q.preserve,be=Q.unlink,Se=(0,A.normalizeWindowsPath)(Q.cwd),De=ct=>{ct&&ue&&(0,r.chownrSync)(ct,ce,fe),ne&&n.default.chmodSync(F,ae)};if(F===Se)return N(Se),De();if(de)return De(n.default.mkdirSync(F,{mode:ae,recursive:!0})??void 0);let k=(0,A.normalizeWindowsPath)(o.default.relative(Se,F)).split("/"),et;for(let ct=k.shift(),Me=Se;ct&&(Me+="/"+ct);ct=k.shift()){Me=(0,A.normalizeWindowsPath)(o.default.resolve(Me));try{n.default.mkdirSync(Me,ae),et=et||Me}catch{let je=n.default.lstatSync(Me);if(je.isDirectory())continue;if(be){n.default.unlinkSync(Me),n.default.mkdirSync(Me,ae),et=et||Me;continue}else if(je.isSymbolicLink())return new f.SymlinkError(Me,Me+"/"+k.join("/"))}}return De(et)};e.mkdirSync=B}),WOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normalizeUnicode=void 0;var t=Object.create(null),r=1e4,n=new Set,a=o=>{n.has(o)?n.delete(o):t[o]=o.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),n.add(o);let l=t[o],A=n.size-r;if(A>r/10){for(let f of n)if(n.delete(f),delete t[f],--A<=0)break}return l};e.normalizeUnicode=a}),OOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PathReservations=void 0;var t=wt("node:path"),r=WOo(),n=KAr(),a=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,o=a==="win32",l=f=>f.split("/").slice(0,-1).reduce((I,C)=>{let b=I.at(-1);return b!==void 0&&(C=(0,t.join)(b,C)),I.push(C||"/"),I},[]),A=class{#e=new Map;#t=new Map;#n=new Set;reserve(f,I){f=o?["win32 parallelization disabled"]:f.map(b=>(0,n.stripTrailingSlashes)((0,t.join)((0,r.normalizeUnicode)(b))));let C=new Set(f.map(b=>l(b)).reduce((b,E)=>b.concat(E)));this.#t.set(I,{dirs:C,paths:f});for(let b of f){let E=this.#e.get(b);E?E.push(I):this.#e.set(b,[I])}for(let b of C){let E=this.#e.get(b);if(!E)this.#e.set(b,[new Set([I])]);else{let N=E.at(-1);N instanceof Set?N.add(I):E.push(new Set([I]))}}return this.#i(I)}#r(f){let I=this.#t.get(f);if(!I)throw new Error("function does not have any path reservations");return{paths:I.paths.map(C=>this.#e.get(C)),dirs:[...I.dirs].map(C=>this.#e.get(C))}}check(f){let{paths:I,dirs:C}=this.#r(f);return I.every(b=>b&&b[0]===f)&&C.every(b=>b&&b[0]instanceof Set&&b[0].has(f))}#i(f){return this.#n.has(f)||!this.check(f)?!1:(this.#n.add(f),f(()=>this.#s(f)),!0)}#s(f){if(!this.#n.has(f))return!1;let I=this.#t.get(f);if(!I)throw new Error("invalid reservation");let{paths:C,dirs:b}=I,E=new Set;for(let N of C){let B=this.#e.get(N);if(!B||B?.[0]!==f)continue;let F=B[1];if(!F){this.#e.delete(N);continue}if(B.shift(),typeof F=="function")E.add(F);else for(let Q of F)E.add(Q)}for(let N of b){let B=this.#e.get(N),F=B?.[0];if(!(!B||!(F instanceof Set)))if(F.size===1&&B.length===1){this.#e.delete(N);continue}else if(F.size===1){B.shift();let Q=B[0];typeof Q=="function"&&E.add(Q)}else F.delete(f)}return this.#n.delete(f),E.forEach(N=>this.#i(N)),!0}};e.PathReservations=A}),MOo=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.umask=void 0;var t=()=>process.umask();e.umask=t}),aLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(Vr,xi,io,ga){ga===void 0&&(ga=io);var Ya=Object.getOwnPropertyDescriptor(xi,io);(!Ya||("get"in Ya?!xi.__esModule:Ya.writable||Ya.configurable))&&(Ya={enumerable:!0,get:function(){return xi[io]}}),Object.defineProperty(Vr,ga,Ya)}:function(Vr,xi,io,ga){ga===void 0&&(ga=io),Vr[ga]=xi[io]}),r=e&&e.__setModuleDefault||(Object.create?function(Vr,xi){Object.defineProperty(Vr,"default",{enumerable:!0,value:xi})}:function(Vr,xi){Vr.default=xi}),n=e&&e.__importStar||function(){var Vr=function(xi){return Vr=Object.getOwnPropertyNames||function(io){var ga=[];for(var Ya in io)Object.prototype.hasOwnProperty.call(io,Ya)&&(ga[ga.length]=Ya);return ga},Vr(xi)};return function(xi){if(xi&&xi.__esModule)return xi;var io={};if(xi!=null)for(var ga=Vr(xi),Ya=0;Ya{if(!qr)return f.default.unlink(Vr,xi);let io=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.rename(Vr,io,ga=>{if(ga)return xi(ga);f.default.unlink(io,xi)})},jt=Vr=>{if(!qr)return f.default.unlinkSync(Vr);let xi=Vr+".DELETE."+(0,A.randomBytes)(16).toString("hex");f.default.renameSync(Vr,xi),f.default.unlinkSync(xi)},Fn=(Vr,xi,io)=>Vr!==void 0&&Vr===Vr>>>0?Vr:xi!==void 0&&xi===xi>>>0?xi:io,Nn=class extends N.Parser{[vt]=!1;[cr]=!1;[Tr]=0;reservations=new Q.PathReservations;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(Vr={}){if(Vr.ondone=()=>{this[vt]=!0,this[xt]()},super(Vr),this.transform=Vr.transform,this.chmod=!!Vr.chmod,typeof Vr.uid=="number"||typeof Vr.gid=="number"){if(typeof Vr.uid!="number"||typeof Vr.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(Vr.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=Vr.uid,this.gid=Vr.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;this.preserveOwner=Vr.preserveOwner===void 0&&typeof Vr.uid!="number"?!!(process.getuid&&process.getuid()===0):!!Vr.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof Vr.maxDepth=="number"?Vr.maxDepth:_n,this.forceChown=Vr.forceChown===!0,this.win32=!!Vr.win32||qr,this.newer=!!Vr.newer,this.keep=!!Vr.keep,this.noMtime=!!Vr.noMtime,this.preservePaths=!!Vr.preservePaths,this.unlink=!!Vr.unlink,this.cwd=(0,E.normalizeWindowsPath)(I.default.resolve(Vr.cwd||process.cwd())),this.strip=Number(Vr.strip)||0,this.processUmask=this.chmod?typeof Vr.processUmask=="number"?Vr.processUmask:(0,ae.umask)():0,this.umask=typeof Vr.umask=="number"?Vr.umask:this.processUmask,this.dmode=Vr.dmode||511&~this.umask,this.fmode=Vr.fmode||438&~this.umask,this.on("entry",xi=>this[ne](xi))}warn(Vr,xi,io={}){return(Vr==="TAR_BAD_ARCHIVE"||Vr==="TAR_ABORT")&&(io.recoverable=!1),super.warn(Vr,xi,io)}[xt](){this[vt]&&this[Tr]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[St](Vr,xi){let io=Vr[xi],{type:ga}=Vr;if(!io||this.preservePaths)return!0;let[Ya,Gc]=(0,B.stripAbsolutePath)(io),cl=Gc.replaceAll(/\\/g,"/").split("/");if(cl.includes("..")||qr&&/^[a-z]:\.\.$/i.test(cl[0]??"")){if(xi==="path"||ga==="Link")return this.warn("TAR_ENTRY_ERROR",`${xi} contains '..'`,{entry:Vr,[xi]:io}),!1;let Sc=I.default.posix.dirname(Vr.path),Hr=I.default.posix.normalize(I.default.posix.join(Sc,cl.join("/")));if(Hr.startsWith("../")||Hr==="..")return this.warn("TAR_ENTRY_ERROR",`${xi} escapes extraction directory`,{entry:Vr,[xi]:io}),!1}return Ya&&(Vr[xi]=String(Gc),this.warn("TAR_ENTRY_INFO",`stripping ${Ya} from absolute ${xi}`,{entry:Vr,[xi]:io})),!0}[je](Vr){let xi=(0,E.normalizeWindowsPath)(Vr.path),io=xi.split("/");if(this.strip){if(io.length=this.strip)Vr.linkpath=ga.slice(this.strip).join("/");else return!1}io.splice(0,this.strip),Vr.path=io.join("/")}if(isFinite(this.maxDepth)&&io.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:Vr,path:xi,depth:io.length,maxDepth:this.maxDepth}),!1;if(!this[St](Vr,"path")||!this[St](Vr,"linkpath"))return!1;if(Vr.absolute=I.default.isAbsolute(Vr.path)?(0,E.normalizeWindowsPath)(I.default.resolve(Vr.path)):(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,Vr.path)),!this.preservePaths&&typeof Vr.absolute=="string"&&Vr.absolute.indexOf(this.cwd+"/")!==0&&Vr.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:Vr,path:(0,E.normalizeWindowsPath)(Vr.path),resolvedPath:Vr.absolute,cwd:this.cwd}),!1;if(Vr.absolute===this.cwd&&Vr.type!=="Directory"&&Vr.type!=="GNUDumpDir")return!1;if(this.win32){let{root:ga}=I.default.win32.parse(String(Vr.absolute));Vr.absolute=ga+F.encode(String(Vr.absolute).slice(ga.length));let{root:Ya}=I.default.win32.parse(Vr.path);Vr.path=Ya+F.encode(Vr.path.slice(Ya.length))}return!0}[ne](Vr){if(!this[je](Vr))return Vr.resume();switch(l.default.equal(typeof Vr.absolute,"string"),Vr.type){case"Directory":case"GNUDumpDir":Vr.mode&&(Vr.mode=Vr.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ce](Vr);default:return this[Me](Vr)}}[Yt](Vr,xi){Vr.name==="CwdError"?this.emit("error",Vr):(this.warn("TAR_ENTRY_ERROR",Vr,{entry:xi}),this[er](),xi.resume())}[At](Vr,xi,io){(0,b.mkdir)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi},io)}[qt](Vr){return this.forceChown||this.preserveOwner&&(typeof Vr.uid=="number"&&Vr.uid!==this.processUid||typeof Vr.gid=="number"&&Vr.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Xt](Vr){return Fn(this.uid,Vr.uid,this.processUid)}[lr](Vr){return Fn(this.gid,Vr.gid,this.processGid)}[be](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=new o.WriteStream(String(Vr.absolute),{flags:(0,C.getWriteFlag)(Vr.size),mode:io,autoClose:!1});ga.on("error",Sc=>{ga.fd&&f.default.close(ga.fd,()=>{}),ga.write=()=>!0,this[Yt](Sc,Vr),xi()});let Ya=1,Gc=Sc=>{if(Sc){ga.fd&&f.default.close(ga.fd,()=>{}),this[Yt](Sc,Vr),xi();return}--Ya===0&&ga.fd!==void 0&&f.default.close(ga.fd,Hr=>{Hr?this[Yt](Hr,Vr):this[er](),xi()})};ga.on("finish",()=>{let Sc=String(Vr.absolute),Hr=ga.fd;if(typeof Hr=="number"&&Vr.mtime&&!this.noMtime){Ya++;let Wr=Vr.atime||new Date,Ft=Vr.mtime;f.default.futimes(Hr,Wr,Ft,zr=>zr?f.default.utimes(Sc,Wr,Ft,Rn=>Gc(Rn&&zr)):Gc())}if(typeof Hr=="number"&&this[qt](Vr)){Ya++;let Wr=this[Xt](Vr),Ft=this[lr](Vr);typeof Wr=="number"&&typeof Ft=="number"&&f.default.fchown(Hr,Wr,Ft,zr=>zr?f.default.chown(Sc,Wr,Ft,Rn=>Gc(Rn&&zr)):Gc())}Gc()});let cl=this.transform&&this.transform(Vr)||Vr;cl!==Vr&&(cl.on("error",Sc=>{this[Yt](Sc,Vr),xi()}),Vr.pipe(cl)),cl.pipe(ga)}[Se](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode;this[At](String(Vr.absolute),io,ga=>{if(ga){this[Yt](ga,Vr),xi();return}let Ya=1,Gc=()=>{--Ya===0&&(xi(),this[er](),Vr.resume())};Vr.mtime&&!this.noMtime&&(Ya++,f.default.utimes(String(Vr.absolute),Vr.atime||new Date,Vr.mtime,Gc)),this[qt](Vr)&&(Ya++,f.default.chown(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)),Gc)),Gc()})}[Me](Vr){Vr.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${Vr.type}`,{entry:Vr}),Vr.resume()}[k](Vr,xi){let io=(0,E.normalizeWindowsPath)(I.default.relative(this.cwd,I.default.resolve(I.default.dirname(String(Vr.absolute)),String(Vr.linkpath)))).split("/");this[ct](Vr,this.cwd,io,()=>this[De](Vr,String(Vr.linkpath),"symlink",xi),ga=>{this[Yt](ga,Vr),xi()})}[et](Vr,xi){let io=(0,E.normalizeWindowsPath)(I.default.resolve(this.cwd,String(Vr.linkpath))),ga=(0,E.normalizeWindowsPath)(String(Vr.linkpath)).split("/");this[ct](Vr,this.cwd,ga,()=>this[De](Vr,io,"link",xi),Ya=>{this[Yt](Ya,Vr),xi()})}[ct](Vr,xi,io,ga,Ya){let Gc=io.shift();if(this.preservePaths||Gc===void 0)return ga();let cl=I.default.resolve(xi,Gc);f.default.lstat(cl,(Sc,Hr)=>{if(Sc)return ga();if(Hr?.isSymbolicLink())return Ya(new X.SymlinkError(cl,I.default.resolve(cl,io.join("/"))));this[ct](Vr,cl,io,ga,Ya)})}[Nr](){this[Tr]++}[er](){this[Tr]--,this[xt]()}[Zr](Vr){this[er](),Vr.resume()}[ue](Vr,xi){return Vr.type==="File"&&!this.unlink&&xi.isFile()&&xi.nlink<=1&&!qr}[ce](Vr){this[Nr]();let xi=[Vr.path];Vr.linkpath&&xi.push(Vr.linkpath),this.reservations.reserve(xi,io=>this[fe](Vr,io))}[fe](Vr,xi){let io=cl=>{xi(cl)},ga=()=>{this[At](this.cwd,this.dmode,cl=>{if(cl){this[Yt](cl,Vr),io();return}this[cr]=!0,Ya()})},Ya=()=>{if(Vr.absolute!==this.cwd){let cl=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(cl!==this.cwd)return this[At](cl,this.dmode,Sc=>{if(Sc){this[Yt](Sc,Vr),io();return}Gc()})}Gc()},Gc=()=>{f.default.lstat(String(Vr.absolute),(cl,Sc)=>{if(Sc&&(this.keep||this.newer&&Sc.mtime>(Vr.mtime??Sc.mtime))){this[Zr](Vr),io();return}if(cl||this[ue](Vr,Sc))return this[de](null,Vr,io);if(Sc.isDirectory()){if(Vr.type==="Directory"){let Hr=this.chmod&&Vr.mode&&(Sc.mode&4095)!==Vr.mode,Wr=Ft=>this[de](Ft??null,Vr,io);return Hr?f.default.chmod(String(Vr.absolute),Number(Vr.mode),Wr):Wr()}if(Vr.absolute!==this.cwd)return f.default.rmdir(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,io))}if(Vr.absolute===this.cwd)return this[de](null,Vr,io);ke(String(Vr.absolute),Hr=>this[de](Hr??null,Vr,io))})};this[cr]?Ya():ga()}[de](Vr,xi,io){if(Vr){this[Yt](Vr,xi),io();return}switch(xi.type){case"File":case"OldFile":case"ContiguousFile":return this[be](xi,io);case"Link":return this[et](xi,io);case"SymbolicLink":return this[k](xi,io);case"Directory":case"GNUDumpDir":return this[Se](xi,io)}}[De](Vr,xi,io,ga){f.default[io](xi,String(Vr.absolute),Ya=>{Ya?this[Yt](Ya,Vr):(this[er](),Vr.resume()),ga()})}};e.Unpack=Nn;var Hi=Vr=>{try{return[null,Vr()]}catch(xi){return[xi,null]}},po=class extends Nn{sync=!0;[de](Vr,xi){return super[de](Vr,xi,()=>{})}[ce](Vr){if(!this[cr]){let Ya=this[At](this.cwd,this.dmode);if(Ya)return this[Yt](Ya,Vr);this[cr]=!0}if(Vr.absolute!==this.cwd){let Ya=(0,E.normalizeWindowsPath)(I.default.dirname(String(Vr.absolute)));if(Ya!==this.cwd){let Gc=this[At](Ya,this.dmode);if(Gc)return this[Yt](Gc,Vr)}}let[xi,io]=Hi(()=>f.default.lstatSync(String(Vr.absolute)));if(io&&(this.keep||this.newer&&io.mtime>(Vr.mtime??io.mtime)))return this[Zr](Vr);if(xi||this[ue](Vr,io))return this[de](null,Vr);if(io.isDirectory()){if(Vr.type==="Directory"){let Gc=this.chmod&&Vr.mode&&(io.mode&4095)!==Vr.mode,[cl]=Gc?Hi(()=>{f.default.chmodSync(String(Vr.absolute),Number(Vr.mode))}):[];return this[de](cl,Vr)}let[Ya]=Hi(()=>f.default.rmdirSync(String(Vr.absolute)));this[de](Ya,Vr)}let[ga]=Vr.absolute===this.cwd?[]:Hi(()=>jt(String(Vr.absolute)));this[de](ga,Vr)}[be](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.fmode,ga=cl=>{let Sc;try{f.default.closeSync(Ya)}catch(Hr){Sc=Hr}(cl||Sc)&&this[Yt](cl||Sc,Vr),xi()},Ya;try{Ya=f.default.openSync(String(Vr.absolute),(0,C.getWriteFlag)(Vr.size),io)}catch(cl){return ga(cl)}let Gc=this.transform&&this.transform(Vr)||Vr;Gc!==Vr&&(Gc.on("error",cl=>this[Yt](cl,Vr)),Vr.pipe(Gc)),Gc.on("data",cl=>{try{f.default.writeSync(Ya,cl,0,cl.length)}catch(Sc){ga(Sc)}}),Gc.on("end",()=>{let cl=null;if(Vr.mtime&&!this.noMtime){let Sc=Vr.atime||new Date,Hr=Vr.mtime;try{f.default.futimesSync(Ya,Sc,Hr)}catch(Wr){try{f.default.utimesSync(String(Vr.absolute),Sc,Hr)}catch{cl=Wr}}}if(this[qt](Vr)){let Sc=this[Xt](Vr),Hr=this[lr](Vr);try{f.default.fchownSync(Ya,Number(Sc),Number(Hr))}catch(Wr){try{f.default.chownSync(String(Vr.absolute),Number(Sc),Number(Hr))}catch{cl=cl||Wr}}}ga(cl)})}[Se](Vr,xi){let io=typeof Vr.mode=="number"?Vr.mode&4095:this.dmode,ga=this[At](String(Vr.absolute),io);if(ga){this[Yt](ga,Vr),xi();return}if(Vr.mtime&&!this.noMtime)try{f.default.utimesSync(String(Vr.absolute),Vr.atime||new Date,Vr.mtime)}catch{}if(this[qt](Vr))try{f.default.chownSync(String(Vr.absolute),Number(this[Xt](Vr)),Number(this[lr](Vr)))}catch{}xi(),Vr.resume()}[At](Vr,xi){try{return(0,b.mkdirSync)((0,E.normalizeWindowsPath)(Vr),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:xi})}catch(io){return io}}[ct](Vr,xi,io,ga,Ya){if(this.preservePaths||io.length===0)return ga();let Gc=xi;for(let cl of io){Gc=I.default.resolve(Gc,cl);let[Sc,Hr]=Hi(()=>f.default.lstatSync(Gc));if(Sc)return ga();if(Hr.isSymbolicLink())return Ya(new X.SymlinkError(Gc,I.default.resolve(xi,io.join("/"))))}ga()}[De](Vr,xi,io,ga){let Ya=`${io}Sync`;try{f.default[Ya](xi,String(Vr.absolute)),ga(),Vr.resume()}catch(Gc){return this[Yt](Gc,Vr)}}};e.UnpackSync=po}),cLn=yC(e=>{"use strict";var t=e&&e.__createBinding||(Object.create?function(E,N,B,F){F===void 0&&(F=B);var Q=Object.getOwnPropertyDescriptor(N,B);(!Q||("get"in Q?!N.__esModule:Q.writable||Q.configurable))&&(Q={enumerable:!0,get:function(){return N[B]}}),Object.defineProperty(E,F,Q)}:function(E,N,B,F){F===void 0&&(F=B),E[F]=N[B]}),r=e&&e.__setModuleDefault||(Object.create?function(E,N){Object.defineProperty(E,"default",{enumerable:!0,value:N})}:function(E,N){E.default=N}),n=e&&e.__importStar||function(){var E=function(N){return E=Object.getOwnPropertyNames||function(B){var F=[];for(var Q in B)Object.prototype.hasOwnProperty.call(B,Q)&&(F[F.length]=Q);return F},E(N)};return function(N){if(N&&N.__esModule)return N;var B={};if(N!=null)for(var F=E(N),Q=0;Q{let N=new I.UnpackSync(E),B=E.file,F=l.default.statSync(B),Q=E.maxReadSize||16*1024*1024;new o.ReadStreamSync(B,{readSize:Q,size:F.size}).pipe(N)},b=(E,N)=>{let B=new I.Unpack(E),F=E.maxReadSize||16*1024*1024,Q=E.file;return new Promise((X,ae)=>{B.on("error",ae),B.on("close",X),l.default.stat(Q,(ne,ce)=>{if(ne)ae(ne);else{let fe=new o.ReadStream(Q,{readSize:F,size:ce.size});fe.on("error",ae),fe.pipe(B)}})})};e.extract=(0,f.makeCommand)(C,b,E=>new I.UnpackSync(E),E=>new I.Unpack(E),(E,N)=>{N?.length&&(0,A.filesFilter)(E,N)})}),zAr=yC(e=>{"use strict";var t=e&&e.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.replace=void 0;var r=w5e(),n=t(wt("node:fs")),a=t(wt("node:path")),o=R5e(),l=D5e(),A=T5e(),f=YAr(),I=jAr(),C=(F,Q)=>{let X=new I.PackSync(F),ae=!0,ne,ce;try{try{ne=n.default.openSync(F.file,"r+")}catch(de){if(de?.code==="ENOENT")ne=n.default.openSync(F.file,"w+");else throw de}let fe=n.default.fstatSync(ne),ue=Buffer.alloc(512);e:for(ce=0;cefe.size)break;ce+=be,F.mtimeCache&&de.mtime&&F.mtimeCache.set(String(de.path),de.mtime)}ae=!1,b(F,X,ce,ne,Q)}finally{if(ae)try{n.default.closeSync(ne)}catch{}}},b=(F,Q,X,ae,ne)=>{let ce=new r.WriteStreamSync(F.file,{fd:ae,start:X});Q.pipe(ce),N(Q,ne)},E=(F,Q)=>{Q=Array.from(Q);let X=new I.Pack(F),ae=(ne,ce,fe)=>{let ue=(k,et)=>{k?n.default.close(ne,ct=>fe(k)):fe(null,et)},de=0;if(ce===0)return ue(null,0);let be=0,Se=Buffer.alloc(512),De=(k,et)=>{if(k||et===void 0)return ue(k);if(be+=et,be<512&&et)return n.default.read(ne,Se,be,Se.length-be,de+be,De);if(de===0&&Se[0]===31&&Se[1]===139)return ue(new Error("cannot append to compressed archives"));if(be<512)return ue(null,de);let ct=new o.Header(Se);if(!ct.cksumValid)return ue(null,de);let Me=512*Math.ceil((ct.size??0)/512);if(de+Me+512>ce||(de+=Me+512,de>=ce))return ue(null,de);F.mtimeCache&&ct.mtime&&F.mtimeCache.set(String(ct.path),ct.mtime),be=0,n.default.read(ne,Se,0,512,de,De)};n.default.read(ne,Se,0,512,de,De)};return new Promise((ne,ce)=>{X.on("error",ce);let fe="r+",ue=(de,be)=>{if(de&&de.code==="ENOENT"&&fe==="r+")return fe="w+",n.default.open(F.file,fe,ue);if(de||!be)return ce(de);n.default.fstat(be,(Se,De)=>{if(Se)return n.default.close(be,()=>ce(Se));ae(be,De.size,(k,et)=>{if(k)return ce(k);let ct=new r.WriteStream(F.file,{fd:be,start:et});X.pipe(ct),ct.on("error",ce),ct.on("close",ne),B(X,Q)})})};n.default.open(F.file,fe,ue)})},N=(F,Q)=>{Q.forEach(X=>{X.charAt(0)==="@"?(0,l.list)({file:a.default.resolve(F.cwd,X.slice(1)),sync:!0,noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(X)}),F.end()},B=async(F,Q)=>{for(let X of Q)X.charAt(0)==="@"?await(0,l.list)({file:a.default.resolve(String(F.cwd),X.slice(1)),noResume:!0,onReadEntry:ae=>F.add(ae)}):F.add(X);F.end()};e.replace=(0,A.makeCommand)(C,E,()=>{throw new TypeError("file is required")},()=>{throw new TypeError("file is required")},(F,Q)=>{if(!(0,f.isFile)(F))throw new TypeError("file is required");if(F.gzip||F.brotli||F.zstd||F.file.endsWith(".br")||F.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!Q?.length)throw new TypeError("no paths specified to add/replace")})}),lLn=yC(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.update=void 0;var t=T5e(),r=zAr();e.update=(0,t.makeCommand)(r.replace.syncFile,r.replace.asyncFile,r.replace.syncNoFile,r.replace.asyncNoFile,(a,o=[])=>{r.replace.validate?.(a,o),n(a)});var n=a=>{let o=a.filter;a.mtimeCache||(a.mtimeCache=new Map),a.filter=o?(l,A)=>o(l,A)&&!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0)):(l,A)=>!((a.mtimeCache?.get(l)??A.mtime??0)>(A.mtime??0))}}),uLn=jC&&jC.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),HOo=jC&&jC.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pM=jC&&jC.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&uLn(t,e,r)},YOo=jC&&jC.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(Rve,"__esModule",{value:!0});Rve.WorkerPool=Rve.AsyncPool=void 0;var jOo=(Pa(),vi(Va)),ALn=jOo.__importDefault(Dfe()),zOo=wt("worker_threads"),Doe=Symbol("kTaskInfo"),qAr=class{constructor(t,r){this.fn=t,this.limit=(0,ALn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};Rve.AsyncPool=qAr;var $Ar=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,ALn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let n=this.workers.pop();n?n.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new zOo.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[Doe])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[Doe].resolve(r),t[Doe]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[Doe]?.reject(r),t[Doe]=null}),t.on("exit",r=>{r!==0&&t[Doe]?.reject(new Error(`Worker exited with code ${r}`)),t[Doe]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((n,a)=>{r[Doe]={resolve:n,reject:a},r.postMessage(t)})})}};Rve.WorkerPool=$Ar});var fLn=H((p7l,pLn)=>{var edr;pLn.exports.getContent=()=>(typeof edr>"u"&&(edr=wt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),edr)});var bLn=H(koe=>{"use strict";Object.defineProperty(koe,"__esModule",{value:!0});koe.getDefaultTaskPool=CLn;koe.getTaskPoolForConfiguration=_Ln;koe.convertToZipWorker=rdr;koe.makeArchiveFromDirectory=n3o;koe.convertToZip=i3o;koe.extractArchiveTo=yLn;var ILn=(Pa(),vi(Va)),qOo=Sn(),rb=ro(),yAt=zK(),$Oo=wt("stream"),e3o=ILn.__importStar(gLn()),bAt=dLn(),hLn=ILn.__importStar(xW()),mLn=fLn();function t3o(e,t){switch(e){case"async":return new bAt.AsyncPool(rdr,{poolSize:t});case"workers":return new bAt.WorkerPool((0,mLn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var tdr;function CLn(){return typeof tdr>"u"&&(tdr=t3o("workers",qOo.nodeUtils.availableParallelism())),tdr}var r3o=new WeakMap;function _Ln(e){return typeof e>"u"?CLn():hLn.getFactoryWithDefault(r3o,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new bAt.AsyncPool(rdr,{poolSize:r});case"workers":return new bAt.WorkerPool((0,mLn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function rdr(e){let{tmpFile:t,tgz:r,compressionLevel:n,extractBufferOpts:a}=e,o=new yAt.ZipFS(t,{create:!0,level:n,stats:rb.statUtils.makeDefaultStats()}),l=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await yLn(l,o,a),o.saveAndClose(),t}async function n3o(e,{baseFs:t=new rb.NodeFS,prefixPath:r=rb.PortablePath.root,compressionLevel:n,inMemory:a=!1}={}){let o;if(a)o=new yAt.ZipFS(null,{level:n});else{let A=await rb.xfs.mktempPromise(),f=rb.ppath.join(A,"archive.zip");o=new yAt.ZipFS(f,{create:!0,level:n})}let l=rb.ppath.resolve(rb.PortablePath.root,r);return await o.copyPromise(l,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function i3o(e,t={}){let r=await rb.xfs.mktempPromise(),n=rb.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??_Ln(t.configuration)).run({tmpFile:n,tgz:e,compressionLevel:a,extractBufferOpts:o}),new yAt.ZipFS(n,{level:t.compressionLevel})}async function*s3o(e){let t=new e3o.Parser,r=new $Oo.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",n=>{r.write(n)}),t.on("error",n=>{r.destroy(n)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let n of r){let a=n;yield a,a.resume()}}async function yLn(e,t,{stripComponents:r=0,prefixPath:n=rb.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let l=o.path.split(/\//g);return!!(l.some(A=>A==="..")||l.length<=r)}for await(let o of s3o(e)){if(a(o))continue;let l=rb.ppath.normalize(rb.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let A=l.slice(r).join("/"),f=rb.ppath.join(n,A),I=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(I|=73),o.type){case"Directory":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:I}),t.utimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.writeFileSync(f,await hLn.bufferStream(o),{mode:I}),t.utimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(rb.ppath.dirname(f),{chmod:493,utimes:[rb.constants.SAFE_TIME,rb.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,rb.constants.SAFE_TIME,rb.constants.SAFE_TIME);break}}return t}});var SLn=H((ndr,ELn)=>{(function(e,t){typeof ndr=="object"?ELn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(ndr,function(){function e(a,o){var l=o?"\u2514":"\u251C";return a?l+="\u2500 ":l+="\u2500\u2500\u2510",l}function t(a,o){var l=[];for(var A in a)a.hasOwnProperty(A)&&(o&&typeof a[A]=="function"||l.push(A));return l}function r(a,o,l,A,f,I,C){var b="",E=0,N,B,F=A.slice(0);if(F.push([o,l])&&A.length>0&&(A.forEach(function(X,ae){ae>0&&(b+=(X[1]?" ":"\u2502")+" "),!B&&X[0]===o&&(B=!0)}),b+=e(a,l)+a,f&&(typeof o!="object"||o instanceof Date)&&(b+=": "+o),B&&(b+=" (circular ref.)"),C(b)),!B&&typeof o=="object"){var Q=t(o,I);Q.forEach(function(X){N=++E===Q.length,r(X,o[X],N,F,f,I,C)})}}var n={};return n.asLines=function(a,o,l,A){var f=typeof l!="function"?l:!1;r(".",a,!1,[],o,f,A||l)},n.asTree=function(a,o,l){var A="";return r(".",a,!1,[],o,l,function(f){A+=f+` -`}),A},n})});var TLn=H(Nve=>{"use strict";Object.defineProperty(Nve,"__esModule",{value:!0});Nve.treeNodeToTreeify=vLn;Nve.treeNodeToJson=BLn;Nve.emitList=c3o;Nve.emitTree=wLn;var o3o=(Pa(),vi(Va)),a3o=SLn(),cIe=o3o.__importStar(rM());function vLn(e,{configuration:t}){let r={},n=0,a=(o,l)=>{let A=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,I]of A){if(!I)continue;let{label:C,value:b,children:E}=I,N=[];typeof C<"u"&&N.push(cIe.applyStyle(t,C,cIe.Style.BOLD)),typeof b<"u"&&N.push(cIe.pretty(t,b[0],b[1])),N.length===0&&N.push(cIe.applyStyle(t,`${f}`,cIe.Style.BOLD));let B=N.join(": ").trim(),F=`\0${n++}\0`,Q=l[`${F}${B}`]={};typeof E<"u"&&a(E,Q)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function BLn(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return cIe.json(r.value[0],r.value[1])}let n=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,l]of n)l&&(a[l3o(o)]=t(l));return typeof r.value>"u"?a:{value:cIe.json(r.value[0],r.value[1]),children:a}};return t(e)}function c3o(e,{configuration:t,stdout:r,json:n}){let a=e.map(o=>({value:o}));wLn({children:a},{configuration:t,stdout:r,json:n})}function wLn(e,{configuration:t,stdout:r,json:n,separators:a=0}){if(n){let l=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let A of l)A&&r.write(`${JSON.stringify(BLn(A))} -`);return}let o=(0,a3o.asTree)(vLn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 -$1`).replace(/^│\n/,"")),a>=2)for(let l=0;l<2;++l)o=o.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(a>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function l3o(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var RLn=H(EAt=>{"use strict";Object.defineProperty(EAt,"__esModule",{value:!0});EAt.RefCountedCache=void 0;var idr=class{constructor(t){this.releaseFunction=t,this.map=new Map}addOrCreate(t,r){let n=this.map.get(t);if(typeof n<"u"){if(n.refCount<=0)throw new Error(`Race condition in RefCountedMap. While adding a new key the refCount is: ${n.refCount} for ${JSON.stringify(t)}`);return n.refCount++,{value:n.value,release:()=>this.release(t)}}else{let a=r();return this.map.set(t,{refCount:1,value:a}),{value:a,release:()=>this.release(t)}}}release(t){let r=this.map.get(t);if(!r)throw new Error(`Unbalanced calls to release. No known instances of: ${JSON.stringify(t)}`);let n=r.refCount;if(n<=0)throw new Error(`Unbalanced calls to release. Too many release vs alloc refcount would become: ${n-1} of ${JSON.stringify(t)}`);n==1?(this.map.delete(t),this.releaseFunction(r.value)):r.refCount--}};EAt.RefCountedCache=idr});var adr=H(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.Cache=pX.CACHE_VERSION=pX.CACHE_CHECKPOINT=void 0;var SAt=(Pa(),vi(Va)),NLn=Sn(),k5e=ro(),zB=ro(),DLn=zK(),u3o=wt("crypto"),kLn=SAt.__importDefault(wt("fs")),x5e=M9(),g3o=RLn(),G5e=sM(),xLn=SAt.__importStar(moe()),odr=SAt.__importStar(xW()),g$=SAt.__importStar(uG());pX.CACHE_CHECKPOINT=odr.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);pX.CACHE_VERSION=odr.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var sdr=class e{static async find(t,{immutable:r,check:n}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:n});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),n=r!=="mixed"?`c${r}`:"";return{cacheKey:[pX.CACHE_VERSION,n].join(""),cacheSpec:n}}constructor(t,{configuration:r,immutable:n=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.refCountedZipFsCache=new g3o.RefCountedCache(A=>{A.discardAndClose()}),this.cacheId=`-${(0,u3o.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=n,this.check=a;let{cacheSpec:o,cacheKey:l}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=l}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${g$.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=F5e(r).hash.slice(0,10);return`${g$.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:n}=F5e(t);if(r===null||r{let be=new DLn.ZipFS,Se=zB.ppath.join(k5e.PortablePath.root,g$.getIdentVendorPath(t));return be.mkdirSync(Se,{recursive:!0}),be.writeJsonSync(zB.ppath.join(Se,k5e.Filename.manifest),{name:g$.stringifyIdent(t),mocked:!0}),be},C=async(be,{isColdHit:Se,controlPath:De=null})=>{if(De===null&&l.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let k=r&&!Se?F5e(r).cacheKey:this.cacheKey,et=!l.skipIntegrityCheck||!r?`${k}/${await xLn.checksumFile(be)}`:r;if(De!==null){let Me=!l.skipIntegrityCheck||!r?`${this.cacheKey}/${await xLn.checksumFile(De)}`:r;if(et!==Me)throw new G5e.ReportError(x5e.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let ct=null;switch(r!==null&&et!==r&&(this.check?ct="throw":F5e(r).cacheKey!==F5e(et).cacheKey?ct="update":ct=this.configuration.get("checksumBehavior")),ct){case null:case"update":return{isValid:!0,hash:et};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new G5e.ReportError(x5e.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},b=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${g$.prettyLocator(this.configuration,t)}`);let Se=await o(),De=Se.getRealPath();Se.saveAndClose(),await zB.xfs.chmodPromise(De,420);let k=await C(be,{controlPath:De,isColdHit:!1});if(!k.isValid)throw new Error("Assertion failed: Expected a valid checksum");return k.hash},E=async()=>{if(A===null||!await zB.xfs.existsPromise(A)){let be=await o(),Se=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Se}}return{source:"mirror",path:A}},N=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new G5e.ReportError(x5e.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}`);let{path:be,source:Se}=await E(),{hash:De}=await C(be,{isColdHit:!0}),k=this.getLocatorPath(t,De),et=[];Se!=="mirror"&&A!==null&&et.push(async()=>{let Me=`${A}${this.cacheId}`;await zB.xfs.copyFilePromise(be,Me,kLn.default.constants.COPYFILE_FICLONE),await zB.xfs.chmodPromise(Me,420),await zB.xfs.renamePromise(Me,A)}),(!l.mirrorWriteOnly||A===null)&&et.push(async()=>{let Me=`${k}${this.cacheId}`;await zB.xfs.copyFilePromise(be,Me,kLn.default.constants.COPYFILE_FICLONE),await zB.xfs.chmodPromise(Me,420),await zB.xfs.renamePromise(Me,k)});let ct=l.mirrorWriteOnly?A??k:k;return await Promise.all(et.map(Me=>Me())),[!1,ct,De]},B=async()=>{let Se=(async()=>{let De=l.unstablePackages?.has(t.locatorHash),k=De||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,et=k!==null?this.markedFiles.has(k)||await f.existsPromise(k):!1,ct=!!l.mockedPackages?.has(t.locatorHash)&&(!this.check||!et),Me=ct||et,je=Me?n:a;if(je&&je(),Me){let St=null,At=k;if(!ct)if(this.check)St=await b(At);else{let Yt=await C(At,{isColdHit:!1});if(Yt.isValid)St=Yt.hash;else return N()}return[ct,At,St]}else{if(this.immutable&&De)throw new G5e.ReportError(x5e.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${g$.prettyLocator(this.configuration,t)}; consider defining ${NLn.formatUtils.pretty(this.configuration,"supportedArchitectures",NLn.formatUtils.Type.CODE)} to cache packages for multiple systems`);return N()}})();this.mutexes.set(t.locatorHash,Se);try{return await Se}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[F,Q,X]=await B();F||this.markedFiles.add(Q);let ae=()=>this.refCountedZipFsCache.addOrCreate(Q,()=>F?I():new DLn.ZipFS(Q,{baseFs:f,readOnly:!0})),ne,ce=new k5e.LazyFS(()=>odr.prettifySyncErrors(()=>(ne=ae(),ne.value),be=>`Failed to open the cache entry for ${g$.prettyLocator(this.configuration,t)}: ${be}`),zB.ppath),fe=new k5e.AliasFS(Q,{baseFs:ce,pathUtils:zB.ppath}),ue=()=>{ne?.release()},de=l.unstablePackages?.has(t.locatorHash)?null:X;return[fe,ue,de]}};pX.Cache=sdr;var A3o=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function F5e(e){let t=e.match(A3o);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var cdr=H(vAt=>{"use strict";Object.defineProperty(vAt,"__esModule",{value:!0});vAt.BuildDirectiveType=void 0;var GLn;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(GLn||(vAt.BuildDirectiveType=GLn={}))});var udr=H(lIe=>{"use strict";Object.defineProperty(lIe,"__esModule",{value:!0});lIe.LegacyMigrationResolver=lIe.IMPORTED_PATTERNS=void 0;var ZLn=(Pa(),vi(Va)),BAt=ro(),d3o=TW(),FLn=M9(),p3o=ZLn.__importStar(n$()),xoe=ZLn.__importStar(uG());lIe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,n)=>`${r}#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",n,a)=>`https://${r}github.com/${n}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>xoe.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var ldr=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let n=BAt.ppath.join(t.cwd,BAt.Filename.lockfile);if(!BAt.xfs.existsSync(n))return;let a=await BAt.xfs.readFilePromise(n,"utf8"),o=(0,d3o.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let l=this.resolutions=new Map;for(let A of Object.keys(o)){let f=xoe.tryParseDescriptor(A);if(!f){r.reportWarning(FLn.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${A}" into a proper descriptor`);continue}let I=p3o.validRange(f.range)?xoe.makeDescriptor(f,`npm:${f.range}`):f,{version:C,resolved:b}=o[A];if(!b)continue;let E;for(let[B,F]of lIe.IMPORTED_PATTERNS){let Q=b.match(B);if(Q){E=F(C,...Q);break}}if(!E){r.reportWarning(FLn.MessageName.YARN_IMPORT_FAILED,`${xoe.prettyDescriptor(t.configuration,I)}: Only some patterns can be imported from legacy lockfiles (not "${b}")`);continue}let N=I;try{let B=xoe.parseRange(I.range),F=xoe.tryParseDescriptor(B.selector,!0);F&&(N=F)}catch{}l.set(I.descriptorHash,xoe.makeLocator(N,E))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=xoe.convertLocatorToDescriptor(a),l=n.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(l,r,n)}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};lIe.LegacyMigrationResolver=ldr});var LLn=H(TAt=>{"use strict";Object.defineProperty(TAt,"__esModule",{value:!0});TAt.LightReport=void 0;var f3o=(Pa(),vi(Va)),I3o=sM(),h3o=S5e(),wAt=f3o.__importStar(rM()),gdr=class extends I3o.Report{static async start(t,r){let n=new this(t);try{await r(n)}catch(a){n.reportExceptionOnce(a)}finally{await n.finalize()}return n}constructor({configuration:t,stdout:r,suggestInstall:n=!0}){super(),this.errorCount=0,wAt.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=n}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${wAt.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} -`)}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${wAt.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${wAt.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(t){return(0,h3o.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};TAt.LightReport=gdr});var ddr=H(RAt=>{"use strict";Object.defineProperty(RAt,"__esModule",{value:!0});RAt.LockfileResolver=void 0;var m3o=(Pa(),vi(Va)),VLn=m3o.__importStar(uG()),Adr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(VLn.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){let a=n.project.storedResolutions.get(t.descriptorHash);if(a){let l=n.project.originalPackages.get(a);if(l)return[l]}let o=n.project.originalPackages.get(VLn.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let n=r.project.originalPackages.get(t.locatorHash);if(!n)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return n}};RAt.LockfileResolver=Adr});var A$=H(pdr=>{"use strict";Object.defineProperty(pdr,"__esModule",{value:!0});pdr.default=PLn;function PLn(){}PLn.prototype={diff:function(t,r){var n,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var l=this;function A(ce){return o?(setTimeout(function(){o(void 0,ce)},0),!0):ce}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,I=t.length,C=1,b=f+I;a.maxEditLength&&(b=Math.min(b,a.maxEditLength));var E=(n=a.timeout)!==null&&n!==void 0?n:1/0,N=Date.now()+E,B=[{oldPos:-1,lastComponent:void 0}],F=this.extractCommon(B[0],r,t,0);if(B[0].oldPos+1>=I&&F+1>=f)return A([{value:this.join(r),count:r.length}]);var Q=-1/0,X=1/0;function ae(){for(var ce=Math.max(Q,-C);ce<=Math.min(X,C);ce+=2){var fe=void 0,ue=B[ce-1],de=B[ce+1];ue&&(B[ce-1]=void 0);var be=!1;if(de){var Se=de.oldPos-ce;be=de&&0<=Se&&Se=I&&F+1>=f)return A(C3o(l,fe.lastComponent,r,t,l.useLongestToken));B[ce]=fe,fe.oldPos+1>=I&&(X=Math.min(X,ce-1)),F+1>=f&&(Q=Math.max(Q,ce+1))}C++}if(o)(function ce(){setTimeout(function(){if(C>b||Date.now()>N)return o();ae()||ce()},0)})();else for(;C<=b&&Date.now()<=N;){var ne=ae();if(ne)return ne}},addToPath:function(t,r,n,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===n?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:n,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:n,previousComponent:o}}},extractCommon:function(t,r,n,a){for(var o=r.length,l=n.length,A=t.oldPos,f=A-a,I=0;f+1F.length?X:F}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}var B=o[f-1];return f>1&&typeof B.value=="string"&&(B.added||B.removed)&&e.equals("",B.value)&&(o[f-2].value+=B.value,o.pop()),o}});var OLn=H(Z5e=>{"use strict";Object.defineProperty(Z5e,"__esModule",{value:!0});Z5e.diffChars=b3o;Z5e.characterDiff=void 0;var _3o=y3o(A$());function y3o(e){return e&&e.__esModule?e:{default:e}}var WLn=new _3o.default;Z5e.characterDiff=WLn;function b3o(e,t,r){return WLn.diff(e,t,r)}});var Idr=H(fdr=>{"use strict";Object.defineProperty(fdr,"__esModule",{value:!0});fdr.generateOptions=E3o;function E3o(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var YLn=H(Dve=>{"use strict";Object.defineProperty(Dve,"__esModule",{value:!0});Dve.diffWords=w3o;Dve.diffWordsWithSpace=T3o;Dve.wordDiff=void 0;var S3o=B3o(A$()),v3o=Idr();function B3o(e){return e&&e.__esModule?e:{default:e}}var MLn=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,HLn=/\S/,L5e=new S3o.default;Dve.wordDiff=L5e;L5e.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!HLn.test(e)&&!HLn.test(t)};L5e.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(kve,"__esModule",{value:!0});kve.diffLines=k3o;kve.diffTrimmedLines=x3o;kve.lineDiff=void 0;var R3o=D3o(A$()),N3o=Idr();function D3o(e){return e&&e.__esModule?e:{default:e}}var NAt=new R3o.default;kve.lineDiff=NAt;NAt.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var n=0;n{"use strict";Object.defineProperty(V5e,"__esModule",{value:!0});V5e.diffSentences=Z3o;V5e.sentenceDiff=void 0;var G3o=F3o(A$());function F3o(e){return e&&e.__esModule?e:{default:e}}var hdr=new G3o.default;V5e.sentenceDiff=hdr;hdr.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function Z3o(e,t,r){return hdr.diff(e,t,r)}});var XLn=H(P5e=>{"use strict";Object.defineProperty(P5e,"__esModule",{value:!0});P5e.diffCss=P3o;P5e.cssDiff=void 0;var L3o=V3o(A$());function V3o(e){return e&&e.__esModule?e:{default:e}}var mdr=new L3o.default;P5e.cssDiff=mdr;mdr.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function P3o(e,t,r){return mdr.diff(e,t,r)}});var ULn=H(xve=>{"use strict";Object.defineProperty(xve,"__esModule",{value:!0});xve.diffJson=H3o;xve.canonicalize=xAt;xve.jsonDiff=void 0;var JLn=O3o(A$()),W3o=DAt();function O3o(e){return e&&e.__esModule?e:{default:e}}function kAt(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?kAt=function(r){return typeof r}:kAt=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},kAt(e)}var M3o=Object.prototype.toString,uIe=new JLn.default;xve.jsonDiff=uIe;uIe.useLongestToken=!0;uIe.tokenize=W3o.lineDiff.tokenize;uIe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,n=t.stringifyReplacer,a=n===void 0?function(o,l){return typeof l>"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(xAt(e,null,null,a),a," ")};uIe.equals=function(e,t){return JLn.default.prototype.equals.call(uIe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function H3o(e,t,r){return uIe.diff(e,t,r)}function xAt(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(O5e,"__esModule",{value:!0});O5e.diffArrays=X3o;O5e.arrayDiff=void 0;var Y3o=Q3o(A$());function Q3o(e){return e&&e.__esModule?e:{default:e}}var W5e=new Y3o.default;O5e.arrayDiff=W5e;W5e.tokenize=function(e){return e.slice()};W5e.join=W5e.removeEmpty=function(e){return e};function X3o(e,t,r){return W5e.diff(e,t,r)}});var GAt=H(Cdr=>{"use strict";Object.defineProperty(Cdr,"__esModule",{value:!0});Cdr.parsePatch=J3o;function J3o(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),n=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function l(){var I={};for(a.push(I);o"u"?1:+b[2],newStart:+b[3],newLines:typeof b[4]>"u"?1:+b[4],lines:[],linedelimiters:[]};E.oldLines===0&&(E.oldStart+=1),E.newLines===0&&(E.newStart+=1);for(var N=0,B=0;o{"use strict";Object.defineProperty(_dr,"__esModule",{value:!0});_dr.default=U3o;function U3o(e,t,r){var n=!0,a=!1,o=!1,l=1;return function A(){if(n&&!o){if(a?l++:n=!1,e+l<=r)return l;o=!0}if(!a)return o||(n=!0),t<=e-l?-l++:(a=!0,A())}}});var $Ln=H(FAt=>{"use strict";Object.defineProperty(FAt,"__esModule",{value:!0});FAt.applyPatch=qLn;FAt.applyPatches=z3o;var zLn=GAt(),K3o=j3o(jLn());function j3o(e){return e&&e.__esModule?e:{default:e}}function qLn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,zLn.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var n=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,l=r.compareLine||function(je,St,At,Yt){return St===Yt},A=0,f=r.fuzzFactor||0,I=0,C=0,b,E;function N(je,St){for(var At=0;At0?Yt[0]:" ",Nr=Yt.length>0?Yt.substr(1):Yt;if(Tr===" "||Tr==="-"){if(!l(St+1,n[St],Tr,Nr)&&(A++,A>f))return!1;St++}}return!0}for(var B=0;B0?Se[0]:" ",k=Se.length>0?Se.substr(1):Se,et=ue.linedelimiters&&ue.linedelimiters[be]||` -`;if(De===" ")de++;else if(De==="-")n.splice(de,1),a.splice(de,1);else if(De==="+")n.splice(de,0,k),a.splice(de,0,et),de++;else if(De==="\\"){var ct=ue.lines[be-1]?ue.lines[be-1][0]:null;ct==="+"?b=!0:ct==="-"&&(E=!0)}}}if(b)for(;!n[n.length-1];)n.pop(),a.pop();else E&&(n.push(""),a.push(` -`));for(var Me=0;Me{"use strict";Object.defineProperty(Gve,"__esModule",{value:!0});Gve.structuredPatch=e9n;Gve.formatPatch=Edr;Gve.createTwoFilesPatch=t9n;Gve.createPatch=n5o;var q3o=DAt();function ydr(e){return r5o(e)||t5o(e)||e5o(e)||$3o()}function $3o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function e5o(e,t){if(e){if(typeof e=="string")return bdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return bdr(e,t)}}function t5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function r5o(e){if(Array.isArray(e))return bdr(e)}function bdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"&&(l.context=4);var A=(0,q3o.diffLines)(r,n,l);if(!A)return;A.push({value:"",lines:[]});function f(X){return X.map(function(ae){return" "+ae})}for(var I=[],C=0,b=0,E=[],N=1,B=1,F=function(ae){var ne=A[ae],ce=ne.lines||ne.value.replace(/\n$/,"").split(` -`);if(ne.lines=ce,ne.added||ne.removed){var fe;if(!C){var ue=A[ae-1];C=N,b=B,ue&&(E=l.context>0?f(ue.lines.slice(-l.context)):[],C-=E.length,b-=E.length)}(fe=E).push.apply(fe,ydr(ce.map(function(Me){return(ne.added?"+":"-")+Me}))),ne.added?B+=ce.length:N+=ce.length}else{if(C)if(ce.length<=l.context*2&&ae=A.length-2&&ce.length<=l.context){var k=/\n$/.test(r),et=/\n$/.test(n),ct=ce.length==0&&E.length>De.oldLines;!k&&ct&&r.length>0&&E.splice(De.oldLines,0,"\\ No newline at end of file"),(!k&&!ct||!et)&&E.push("\\ No newline at end of file")}I.push(De),C=0,b=0,E=[]}N+=ce.length,B+=ce.length}},Q=0;Q"u"?"":" "+e.oldHeader)),t.push("+++ "+e.newFileName+(typeof e.newHeader>"u"?"":" "+e.newHeader));for(var r=0;r{"use strict";Object.defineProperty(ZAt,"__esModule",{value:!0});ZAt.arrayEqual=i5o;ZAt.arrayStartsWith=r9n;function i5o(e,t){return e.length!==t.length?!1:r9n(e,t)}function r9n(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(VAt,"__esModule",{value:!0});VAt.calcLineCount=d9n;VAt.merge=g5o;var s5o=Sdr(),o5o=GAt(),vdr=n9n();function Fve(e){return u5o(e)||l5o(e)||c5o(e)||a5o()}function a5o(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function c5o(e,t){if(e){if(typeof e=="string")return Bdr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Bdr(e,t)}}function l5o(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function u5o(e){if(Array.isArray(e))return Bdr(e)}function Bdr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r{"use strict";Object.defineProperty(Rdr,"__esModule",{value:!0});Rdr.reversePatch=h9n;function f9n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function I9n(e){for(var t=1;t{"use strict";Object.defineProperty(Ndr,"__esModule",{value:!0});Ndr.convertChangesToDMP=I5o;function I5o(e){for(var t=[],r,n,a=0;a{"use strict";Object.defineProperty(Ddr,"__esModule",{value:!0});Ddr.convertChangesToXML=h5o;function h5o(e){for(var t=[],r=0;r"):n.removed&&t.push(""),t.push(m5o(n.value)),n.added?t.push(""):n.removed&&t.push("")}return t.join("")}function m5o(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var kdr=H(E2=>{"use strict";Object.defineProperty(E2,"__esModule",{value:!0});Object.defineProperty(E2,"Diff",{enumerable:!0,get:function(){return C5o.default}});Object.defineProperty(E2,"diffChars",{enumerable:!0,get:function(){return _5o.diffChars}});Object.defineProperty(E2,"diffWords",{enumerable:!0,get:function(){return y9n.diffWords}});Object.defineProperty(E2,"diffWordsWithSpace",{enumerable:!0,get:function(){return y9n.diffWordsWithSpace}});Object.defineProperty(E2,"diffLines",{enumerable:!0,get:function(){return b9n.diffLines}});Object.defineProperty(E2,"diffTrimmedLines",{enumerable:!0,get:function(){return b9n.diffTrimmedLines}});Object.defineProperty(E2,"diffSentences",{enumerable:!0,get:function(){return y5o.diffSentences}});Object.defineProperty(E2,"diffCss",{enumerable:!0,get:function(){return b5o.diffCss}});Object.defineProperty(E2,"diffJson",{enumerable:!0,get:function(){return E9n.diffJson}});Object.defineProperty(E2,"canonicalize",{enumerable:!0,get:function(){return E9n.canonicalize}});Object.defineProperty(E2,"diffArrays",{enumerable:!0,get:function(){return E5o.diffArrays}});Object.defineProperty(E2,"applyPatch",{enumerable:!0,get:function(){return S9n.applyPatch}});Object.defineProperty(E2,"applyPatches",{enumerable:!0,get:function(){return S9n.applyPatches}});Object.defineProperty(E2,"parsePatch",{enumerable:!0,get:function(){return S5o.parsePatch}});Object.defineProperty(E2,"merge",{enumerable:!0,get:function(){return v5o.merge}});Object.defineProperty(E2,"reversePatch",{enumerable:!0,get:function(){return B5o.reversePatch}});Object.defineProperty(E2,"structuredPatch",{enumerable:!0,get:function(){return PAt.structuredPatch}});Object.defineProperty(E2,"createTwoFilesPatch",{enumerable:!0,get:function(){return PAt.createTwoFilesPatch}});Object.defineProperty(E2,"createPatch",{enumerable:!0,get:function(){return PAt.createPatch}});Object.defineProperty(E2,"formatPatch",{enumerable:!0,get:function(){return PAt.formatPatch}});Object.defineProperty(E2,"convertChangesToDMP",{enumerable:!0,get:function(){return w5o.convertChangesToDMP}});Object.defineProperty(E2,"convertChangesToXML",{enumerable:!0,get:function(){return T5o.convertChangesToXML}});var C5o=R5o(A$()),_5o=OLn(),y9n=YLn(),b9n=DAt(),y5o=QLn(),b5o=XLn(),E9n=ULn(),E5o=KLn(),S9n=$Ln(),S5o=GAt(),v5o=p9n(),B5o=m9n(),PAt=Sdr(),w5o=C9n(),T5o=_9n();function R5o(e){return e&&e.__esModule?e:{default:e}}});var v9n=H(WAt=>{"use strict";Object.defineProperty(WAt,"__esModule",{value:!0});WAt.RunInstallPleaseResolver=void 0;var xdr=M9(),Gdr=sM(),Fdr=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.resolver.bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,n){throw new Gdr.ReportError(xdr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,n,a){throw new Gdr.ReportError(xdr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new Gdr.ReportError(xdr.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};WAt.RunInstallPleaseResolver=Fdr});var Ldr=H(OAt=>{"use strict";Object.defineProperty(OAt,"__esModule",{value:!0});OAt.ThrowReport=void 0;var N5o=sM(),Zdr=class extends N5o.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,n){return(typeof r=="function"?r:n)()}async startTimerPromise(t,r,n){return await(typeof r=="function"?r:n)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};OAt.ThrowReport=Zdr});var Pdr=H(MAt=>{"use strict";Object.defineProperty(MAt,"__esModule",{value:!0});MAt.Workspace=void 0;var Q5e=(Pa(),vi(Va)),ZW=ro(),D5o=Q5e.__importDefault(nve()),M5e=uve(),H5e=Kfe(),B9n=Q5e.__importStar(rM()),k5o=Q5e.__importStar(moe()),x5o=Q5e.__importStar(n$()),Y5e=Q5e.__importStar(uG()),Vdr=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await M5e.Manifest.tryFind(this.cwd)??new M5e.Manifest,this.relativeCwd=ZW.ppath.relative(this.project.cwd,this.cwd)||ZW.PortablePath.dot;let t=this.manifest.name?this.manifest.name:Y5e.makeIdent(null,`${this.computeCandidateName()}-${k5o.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=Y5e.makeDescriptor(t,`${H5e.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=Y5e.makeLocator(t,`${H5e.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let n=await(0,D5o.default)(r,{cwd:ZW.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort(),await n.reduce(async(a,o)=>{let l=ZW.ppath.resolve(this.cwd,ZW.npath.toPortablePath(o)),A=await ZW.xfs.existsPromise(ZW.ppath.join(l,"package.json"));await a,A&&this.workspacesCwds.add(l)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${Y5e.prettyWorkspace(this.project.configuration,this)} (${B9n.pretty(this.project.configuration,ZW.ppath.join(this.cwd,ZW.Filename.manifest),B9n.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),n=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(n===H5e.WorkspaceResolver.protocol&&ZW.ppath.normalize(a)===this.relativeCwd||n===H5e.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=x5o.validRange(a);return o?n===H5e.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${ZW.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=M5e.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of t)for(let l of a.manifest[o].values()){let A=this.project.tryWorkspaceByDescriptor(l);A===null||r.has(A)||(r.add(A),n(A))}};return n(this),r}getRecursiveWorkspaceDependents({dependencies:t=M5e.Manifest.hardDependencies}={}){let r=new Set,n=a=>{for(let o of this.project.workspaces)t.some(A=>[...o.manifest[A].values()].some(f=>{let I=this.project.tryWorkspaceByDescriptor(f);return I!==null&&Y5e.areLocatorsEqual(I.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),n(o))};return n(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let n of r.workspacesCwds){let a=this.project.workspacesByCwd.get(n);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=ZW.ppath.join(this.cwd,M5e.Manifest.fileName),n=`${JSON.stringify(t,null,this.manifest.indent)} -`;await ZW.xfs.changeFilePromise(r,n,{automaticNewlines:!0}),this.manifest.raw=t}};MAt.Workspace=Vdr});var P9n=H(fM=>{"use strict";Object.defineProperty(fM,"__esModule",{value:!0});fM.Project=fM.PeerWarningType=fM.InstallMode=fM.LOCKFILE_VERSION=void 0;var fX=(Pa(),vi(Va)),YAt=ro(),Xf=ro(),w9n=TW(),T9n=($c(),vi(rg)),Wdr=wt("crypto"),G5o=kdr(),Odr=kW(),Mdr=fX.__importDefault(Dfe()),F5o=fX.__importDefault(UC()),L9n=wt("util"),R9n=fX.__importDefault(wt("v8")),V9n=fX.__importDefault(wt("zlib")),Z5o=adr(),X5e=f5e(),J5e=cdr(),L5o=udr(),V5o=ddr(),N9n=uve(),Jb=M9(),D9n=yur(),Goe=sM(),P5o=v9n(),k9n=S5e(),x9n=Ldr(),QAt=Kfe(),W5o=Pdr(),O5o=ggt(),qp=fX.__importStar(rM()),r8=fX.__importStar(moe()),m_=fX.__importStar(xW()),M5o=fX.__importStar(Qgt()),G9n=fX.__importStar(HAr()),XAt=fX.__importStar(n$()),ng=fX.__importStar(uG()),H5o=Qfe(),HAt=Qfe();fM.LOCKFILE_VERSION=m_.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??9);var Y5o=3,Q5o=/ *, */g,F9n=/\/$/,X5o=32,J5o=(0,L9n.promisify)(V9n.default.gzip),U5o=(0,L9n.promisify)(V9n.default.gunzip),Zve;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(Zve||(fM.InstallMode=Zve={}));var Hdr={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},n8;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(n8||(fM.PeerWarningType=n8={}));var Z9n=e=>r8.makeHash(`${Y5o}`,e),Ydr=class e{static async find(t,r){if(!t.projectCwd)throw new T9n.UsageError(`No project found in ${r}`);let n=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Xf.xfs.existsSync(Xf.ppath.join(o,Xf.Filename.manifest))){n=o;break}a=Xf.ppath.dirname(o)}let l=new e(t.projectCwd,{configuration:t});X5e.Configuration.telemetry?.reportProject(l.cwd),await l.setupResolutions(),await l.setupWorkspaces(),X5e.Configuration.telemetry?.reportWorkspaceCount(l.workspaces.length),X5e.Configuration.telemetry?.reportDependencyCount(l.workspaces.reduce((B,F)=>B+F.manifest.dependencies.size+F.manifest.devDependencies.size,0));let A=l.tryWorkspaceByCwd(n);if(A)return{project:l,workspace:A,locator:A.anchoredLocator};let f=await l.findLocatorForLocation(`${n}/`,{strict:!0});if(f)return{project:l,locator:f,workspace:null};let I=qp.pretty(t,l.cwd,qp.Type.PATH),C=qp.pretty(t,Xf.ppath.relative(l.cwd,n),qp.Type.PATH),b=`- If ${I} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,E=`- If ${I} is intended to be a project, it might be that you forgot to list ${C} in its workspace configuration.`,N=`- Finally, if ${I} is fine and you intend ${C} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new T9n.UsageError(`The nearest package directory (${qp.pretty(t,n,qp.Type.PATH)}) doesn't seem to be part of the project declared in ${qp.pretty(t,l.cwd,qp.Type.PATH)}. - -${[b,E,N].join(` -`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Xf.xfs.existsSync(t)){let n=await Xf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=Z9n(n);let a=(0,w9n.parseSyml)(n);if(a.__metadata){let o=a.__metadata.version,l=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${A})`);let I=ng.parseLocator(f.resolution,!0),C=new N9n.Manifest;C.load(f,{yamlCompatibilityMode:!0});let b=C.version,E=C.languageName||r,N=f.linkType.toUpperCase(),B=f.conditions??null,F=C.dependencies,Q=C.peerDependencies,X=C.dependenciesMeta,ae=C.peerDependenciesMeta,ne=C.bin;if(f.checksum!=null){let fe=typeof l<"u"&&!f.checksum.includes("/")?`${l}/${f.checksum}`:f.checksum;this.storedChecksums.set(I.locatorHash,fe)}let ce={...I,version:b,languageName:E,linkType:N,conditions:B,dependencies:F,peerDependencies:Q,dependenciesMeta:X,peerDependenciesMeta:ae,bin:ne};this.originalPackages.set(ce.locatorHash,ce);for(let fe of A.split(Q5o)){let ue=ng.parseDescriptor(fe);o<=6&&(ue=this.configuration.normalizeDependency(ue),ue=ng.makeDescriptor(ue,ue.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(ue.descriptorHash,ue),this.storedResolutions.set(ue.descriptorHash,I.locatorHash)}}}else n.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,Mdr.default)(4),n=async(a,o)=>{if(t.has(o))return a;t.add(o);let l=new W5o.Workspace(o,{project:this});await r(()=>l.setup());let A=a.then(()=>{this.addWorkspace(l)});return Array.from(l.workspacesCwds).reduce(n,A)};await n(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${ng.prettyIdent(this.configuration,t.anchoredLocator)}: ${YAt.npath.fromPortablePath(t.cwd)} conflicts with ${YAt.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Xf.ppath.isAbsolute(t)||(t=Xf.ppath.resolve(this.cwd,t)),t=Xf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let n of this.workspaces)Xf.ppath.relative(n.cwd,t).startsWith("../")||r&&r.cwd.length>=n.cwd.length||(r=n);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${ng.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(QAt.WorkspaceResolver.protocol)){let n=t.range.slice(QAt.WorkspaceResolver.protocol.length);if(n!=="^"&&n!=="~"&&n!=="*"&&!XAt.validRange(n))return this.tryWorkspaceByCwd(n)}let r=this.tryWorkspaceByIdent(t);return r===null||(ng.isVirtualDescriptor(t)&&(t=ng.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${ng.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(ng.isVirtualLocator(t)&&(t=ng.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${ng.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let n=new Set(this.storedResolutions.values());typeof r<"u"&&!n.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,n]of this.storedResolutions)n===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[n,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(n)}for(let n of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(n,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(n.locatorHash);let o=r.get(n.locatorHash);if(o){r.delete(n.locatorHash);for(let l of o)this.deleteDescriptor(l)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,n]of t.dependencies)ng.isVirtualDescriptor(n)&&t.dependencies.set(r,ng.devirtualizeDescriptor(n))}getDependencyMeta(t,r){let n={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(ng.stringifyIdent(t));if(!o)return n;let l=o.get(null);if(l&&Object.assign(n,l),r===null||!F5o.default.valid(r))return n;for(let[A,f]of o)A!==null&&A===r&&Object.assign(n,f);return n}async findLocatorForLocation(t,{strict:r=!1}={}){let n=new x9n.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:n};for(let l of a){let A=await l.findPackageLocator(t,o);if(A){if(r&&(await l.findPackageLocation(A,o)).replace(F9n,"")!==t.replace(F9n,""))continue;return A}}return null}async loadUserConfig(){let t=Xf.ppath.join(this.cwd,".pnp.cjs");await Xf.xfs.existsPromise(t)&&m_.dynamicRequire(t).setup();let r=Xf.ppath.join(this.cwd,"yarn.config.cjs");return await Xf.xfs.existsPromise(r)?m_.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:n}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[l,A]of o.dependencies){let f=await this.configuration.reduceHook(C=>C.reduceDependency,A,this,o,A,{resolver:r,resolveOptions:n});if(!ng.areIdentsEqual(A,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let I=r.bindDescriptor(f,o,n);o.dependencies.set(l,I)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),n=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new L5o.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let l=t.lockfileOnly?[new P5o.RunInstallPleaseResolver(a)]:[o,a],A=new D9n.MultiResolver([new V5o.LockfileResolver(a),...l]),f=new D9n.MultiResolver([...l]),I=this.configuration.makeFetcher(),C=t.lockfileOnly?{project:this,report:t.report,resolver:A}:{project:this,report:t.report,resolver:A,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:I,cacheOptions:{mirrorWriteOnly:!0}}},b=new Map,E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,X=this.topLevelWorkspace.anchoredLocator,ae=new Set,ne=[],ce=M5o.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Goe.Report.progressViaTitle(),async je=>{let St=async er=>{let vt=await m_.prettifyAsyncErrors(async()=>await A.resolve(er,C),Xt=>`${ng.prettyLocator(this.configuration,er)}: ${Xt}`);if(!ng.areLocatorsEqual(er,vt))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${ng.prettyLocator(this.configuration,er)} to ${ng.prettyLocator(this.configuration,vt)})`);B.set(vt.locatorHash,vt),!r.delete(vt.locatorHash)&&!this.tryWorkspaceByLocator(vt)&&n.push(vt);let Zr=await this.preparePackage(vt,{resolver:A,resolveOptions:C}),qt=m_.allSettledSafe([...Zr.dependencies.values()].map(Xt=>Nr(Xt)));return ne.push(qt),qt.catch(()=>{}),E.set(Zr.locatorHash,Zr),Zr},At=async er=>{let vt=F.get(er.locatorHash);if(typeof vt<"u")return vt;let xt=Promise.resolve().then(()=>St(er));return F.set(er.locatorHash,xt),xt},Yt=async(er,vt)=>{let xt=await Nr(vt);return b.set(er.descriptorHash,er),N.set(er.descriptorHash,xt.locatorHash),xt},Tr=async er=>{je.setTitle(ng.prettyDescriptor(this.configuration,er));let vt=this.resolutionAliases.get(er.descriptorHash);if(typeof vt<"u")return Yt(er,this.storedDescriptors.get(vt));let xt=A.getResolutionDependencies(er,C),Zr=Object.fromEntries(await m_.allSettledSafe(Object.entries(xt).map(async([lr,cr])=>{let Ar=A.bindDescriptor(cr,X,C),qr=await Nr(Ar);return ae.add(qr.locatorHash),[lr,qr]}))),Xt=(await m_.prettifyAsyncErrors(async()=>await A.getCandidates(er,Zr,C),lr=>`${ng.prettyDescriptor(this.configuration,er)}: ${lr}`))[0];if(typeof Xt>"u")throw new Goe.ReportError(Jb.MessageName.RESOLUTION_FAILED,`${ng.prettyDescriptor(this.configuration,er)}: No candidates found`);if(t.checkResolutions){let{locators:lr}=await f.getSatisfying(er,Zr,[Xt],{...C,resolver:f});if(!lr.find(cr=>cr.locatorHash===Xt.locatorHash))throw new Goe.ReportError(Jb.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${ng.prettyResolution(this.configuration,er,Xt)}`)}return b.set(er.descriptorHash,er),N.set(er.descriptorHash,Xt.locatorHash),At(Xt)},Nr=er=>{let vt=Q.get(er.descriptorHash);if(typeof vt<"u")return vt;b.set(er.descriptorHash,er);let xt=Promise.resolve().then(()=>Tr(er));return Q.set(er.descriptorHash,xt),xt};for(let er of this.workspaces){let vt=er.anchoredDescriptor;ne.push(Nr(vt))}for(;ne.length>0;){let er=[...ne];ne.length=0,await m_.allSettledSafe(er)}});let ue=m_.mapAndFilter(r.values(),je=>this.tryWorkspaceByLocator(je)?m_.mapAndFilter.skip:je);if(n.length>0||ue.length>0){let je=new Set(this.workspaces.flatMap(er=>{let vt=E.get(er.anchoredLocator.locatorHash);if(!vt)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(vt.dependencies.values(),xt=>{let Zr=N.get(xt.descriptorHash);if(!Zr)throw new Error("Assertion failed: The resolution should have been registered");return Zr})})),St=er=>je.has(er.locatorHash)?"0":"1",At=er=>ng.stringifyLocator(er),Yt=m_.sortMap(n,[St,At]),Tr=m_.sortMap(ue,[St,At]),Nr=t.report.getRecommendedLength();Yt.length>0&&t.report.reportInfo(Jb.MessageName.UPDATED_RESOLUTION_RECORD,`${qp.pretty(this.configuration,"+",qp.Type.ADDED)} ${qp.prettyTruncatedLocatorList(this.configuration,Yt,Nr)}`),Tr.length>0&&t.report.reportInfo(Jb.MessageName.UPDATED_RESOLUTION_RECORD,`${qp.pretty(this.configuration,"-",qp.Type.REMOVED)} ${qp.prettyTruncatedLocatorList(this.configuration,Tr,Nr)}`)}let de=new Set(this.resolutionAliases.values()),be=new Set(E.keys()),Se=new Set,De=new Map,k=[],et=new Map;K5o({project:this,accessibleLocators:Se,volatileDescriptors:de,optionalBuilds:be,peerRequirements:De,peerWarnings:k,peerRequirementNodes:et,allDescriptors:b,allResolutions:N,allPackages:E});for(let je of ae)be.delete(je);for(let je of de)b.delete(je),N.delete(je);let ct=new Set,Me=new Set;for(let je of E.values())je.conditions!=null&&be.has(je.locatorHash)&&(ng.isPackageCompatible(je,fe)||(ng.isPackageCompatible(je,ce)&&t.report.reportWarningOnce(Jb.MessageName.GHOST_ARCHITECTURE,`${ng.prettyLocator(this.configuration,je)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${qp.pretty(this.configuration,"supportedArchitectures",qp.Type.SETTING)} setting`),Me.add(je.locatorHash)),ct.add(je.locatorHash));this.storedResolutions=N,this.storedDescriptors=b,this.storedPackages=E,this.accessibleLocators=Se,this.conditionalLocators=ct,this.disabledLocators=Me,this.originalPackages=B,this.optionalBuilds=be,this.peerRequirements=De,this.peerWarnings=k,this.peerRequirementNodes=et}async fetchEverything({cache:t,report:r,fetcher:n,mode:a,persistProject:o=!0}){let l={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},A=n||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:A,report:r,cacheOptions:l},I=Array.from(new Set(m_.sortMap(this.storedResolutions.values(),[B=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");return ng.stringifyLocator(F)}])));a===Zve.UpdateLockfile&&(I=I.filter(B=>!this.storedChecksums.has(B)));let C=!1,b=Goe.Report.progressViaCounter(I.length);await r.reportProgress(b);let E=(0,Mdr.default)(X5o);if(await m_.allSettledSafe(I.map(B=>E(async()=>{let F=this.storedPackages.get(B);if(!F)throw new Error("Assertion failed: The locator should have been registered");if(ng.isVirtualLocator(F))return;let Q;try{Q=await A.fetch(F,f)}catch(X){X.message=`${ng.prettyLocator(this.configuration,F)}: ${X.message}`,r.reportExceptionOnce(X),C=X;return}Q.checksum!=null?this.storedChecksums.set(F.locatorHash,Q.checksum):this.storedChecksums.delete(F.locatorHash),Q.releaseFs&&Q.releaseFs()}).finally(()=>{b.tick()}))),C)throw C;let N=o&&a!==Zve.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||N){let F=(await Promise.all([...r.cacheMisses].map(async ue=>{let de=this.storedPackages.get(ue),be=this.storedChecksums.get(ue)??null,Se=t.getLocatorPath(de,be);return(await Xf.xfs.statPromise(Se)).size}))).reduce((ue,de)=>ue+de,0)-(N?.size??0),Q=r.cacheMisses.size,X=N?.count??0,ae=`${m_.plural(Q,{zero:"No new packages",one:"A package was",more:`${qp.pretty(this.configuration,Q,qp.Type.NUMBER)} packages were`})} added to the project`,ne=`${m_.plural(X,{zero:"none were",one:"one was",more:`${qp.pretty(this.configuration,X,qp.Type.NUMBER)} were`})} removed`,ce=F!==0?` (${qp.pretty(this.configuration,F,qp.Type.SIZE_DIFF)})`:"",fe=X>0?Q>0?`${ae}, and ${ne}${ce}.`:`${ae}, but ${ne}${ce}.`:`${ae}${ce}.`;r.reportInfo(Jb.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:n,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},l=n||this.configuration.makeFetcher(),A={checksums:this.storedChecksums,project:this,cache:t,fetcher:l,report:r,cacheOptions:o},f=this.configuration.getLinkers(),I={project:this,report:r},C=new Map(f.map(ct=>{let Me=ct.makeInstaller(I),je=ct.getCustomDataKey(),St=this.linkersCustomData.get(je);return typeof St<"u"&&Me.attachCustomData(St),[ct,Me]})),b=new Map,E=new Map,N=new Map,B=new Map(await m_.allSettledSafe([...this.accessibleLocators].map(async ct=>{let Me=this.storedPackages.get(ct);if(!Me)throw new Error("Assertion failed: The locator should have been registered");return[ct,await l.fetch(Me,A)]}))),F=[],Q=new Set,X=[];for(let ct of this.accessibleLocators){let Me=this.storedPackages.get(ct);if(typeof Me>"u")throw new Error("Assertion failed: The locator should have been registered");let je=B.get(Me.locatorHash);if(typeof je>"u")throw new Error("Assertion failed: The fetch result should have been registered");let St=[],At=Tr=>{St.push(Tr)},Yt=this.tryWorkspaceByLocator(Me);if(Yt!==null){let Tr=[],{scripts:Nr}=Yt.manifest;for(let vt of["preinstall","install","postinstall"])Nr.has(vt)&&Tr.push({type:J5e.BuildDirectiveType.SCRIPT,script:vt});try{for(let[vt,xt]of C)if(vt.supportsPackage(Me,I)&&(await xt.installPackage(Me,je,{holdFetchResult:At})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{St.length===0?je.releaseFs?.():F.push(m_.allSettledSafe(St).catch(()=>{}).then(()=>{je.releaseFs?.()}))}let er=Xf.ppath.join(je.packageFs.getRealPath(),je.prefixPath);E.set(Me.locatorHash,er),!ng.isVirtualLocator(Me)&&Tr.length>0&&N.set(Me.locatorHash,{buildDirectives:Tr,buildLocations:[er]})}else{let Tr=f.find(vt=>vt.supportsPackage(Me,I));if(!Tr)throw new Goe.ReportError(Jb.MessageName.LINKER_NOT_FOUND,`${ng.prettyLocator(this.configuration,Me)} isn't supported by any available linker`);let Nr=C.get(Tr);if(!Nr)throw new Error("Assertion failed: The installer should have been registered");let er;try{er=await Nr.installPackage(Me,je,{holdFetchResult:At})}finally{St.length===0?je.releaseFs?.():F.push(m_.allSettledSafe(St).then(()=>{}).then(()=>{je.releaseFs?.()}))}b.set(Me.locatorHash,Tr),E.set(Me.locatorHash,er.packageLocation),er.buildRequest&&er.packageLocation&&(er.buildRequest.skipped?(Q.add(Me.locatorHash),this.skippedBuilds.has(Me.locatorHash)||X.push([Me,er.buildRequest.explain])):N.set(Me.locatorHash,{buildDirectives:er.buildRequest.directives,buildLocations:[er.packageLocation]}))}}let ae=new Map;for(let ct of this.accessibleLocators){let Me=this.storedPackages.get(ct);if(!Me)throw new Error("Assertion failed: The locator should have been registered");let je=this.tryWorkspaceByLocator(Me)!==null,St=async(At,Yt)=>{let Tr=E.get(Me.locatorHash);if(typeof Tr>"u")throw new Error(`Assertion failed: The package (${ng.prettyLocator(this.configuration,Me)}) should have been registered`);let Nr=[];for(let er of Me.dependencies.values()){let vt=this.storedResolutions.get(er.descriptorHash);if(typeof vt>"u")throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,er)}, from ${ng.prettyLocator(this.configuration,Me)})should have been registered`);let xt=this.storedPackages.get(vt);if(typeof xt>"u")throw new Error(`Assertion failed: The package (${vt}, resolved from ${ng.prettyDescriptor(this.configuration,er)}) should have been registered`);let Zr=this.tryWorkspaceByLocator(xt)===null?b.get(vt):null;if(typeof Zr>"u")throw new Error(`Assertion failed: The package (${vt}, resolved from ${ng.prettyDescriptor(this.configuration,er)}) should have been registered`);Zr===At||Zr===null?E.get(xt.locatorHash)!==null&&Nr.push([er,xt]):!je&&Tr!==null&&m_.getArrayWithDefault(ae,vt).push(Tr)}Tr!==null&&await Yt.attachInternalDependencies(Me,Nr)};if(je)for(let[At,Yt]of C)At.supportsPackage(Me,I)&&await St(At,Yt);else{let At=b.get(Me.locatorHash);if(!At)throw new Error("Assertion failed: The linker should have been found");let Yt=C.get(At);if(!Yt)throw new Error("Assertion failed: The installer should have been registered");await St(At,Yt)}}for(let[ct,Me]of ae){let je=this.storedPackages.get(ct);if(!je)throw new Error("Assertion failed: The package should have been registered");let St=b.get(je.locatorHash);if(!St)throw new Error("Assertion failed: The linker should have been found");let At=C.get(St);if(!At)throw new Error("Assertion failed: The installer should have been registered");await At.attachExternalDependents(je,Me)}let ne=new Map;for(let[ct,Me]of C){let je=await Me.finalizeInstall();for(let St of je?.records??[])St.buildRequest.skipped?(Q.add(St.locator.locatorHash),this.skippedBuilds.has(St.locator.locatorHash)||X.push([St.locator,St.buildRequest.explain])):N.set(St.locator.locatorHash,{buildDirectives:St.buildRequest.directives,buildLocations:St.buildLocations});typeof je?.customData<"u"&&ne.set(ct.getCustomDataKey(),je.customData)}if(this.linkersCustomData=ne,await m_.allSettledSafe(F),a===Zve.SkipBuild)return;for(let[,ct]of m_.sortMap(X,([Me])=>ng.stringifyLocator(Me)))ct(r);let ce=new Set(N.keys()),fe=(0,Wdr.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(ct=>ct.globalHashGeneration,this,ct=>{fe.update("\0"),fe.update(ct)});let ue=fe.digest("hex"),de=new Map,be=ct=>{let Me=de.get(ct.locatorHash);if(typeof Me<"u")return Me;let je=this.storedPackages.get(ct.locatorHash);if(typeof je>"u")throw new Error("Assertion failed: The package should have been registered");let St=(0,Wdr.createHash)("sha512");St.update(ct.locatorHash),de.set(ct.locatorHash,"");for(let At of je.dependencies.values()){let Yt=this.storedResolutions.get(At.descriptorHash);if(typeof Yt>"u")throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,At)}) should have been registered`);let Tr=this.storedPackages.get(Yt);if(typeof Tr>"u")throw new Error("Assertion failed: The package should have been registered");St.update(be(Tr))}return Me=St.digest("hex"),de.set(ct.locatorHash,Me),Me},Se=(ct,Me)=>{let je=(0,Wdr.createHash)("sha512");je.update(ue),je.update(be(ct));for(let St of Me)je.update(St);return je.digest("hex")},De=new Map,k=!1,et=ct=>{let Me=new Set([ct.locatorHash]);for(let je of Me){let St=this.storedPackages.get(je);if(!St)throw new Error("Assertion failed: The package should have been registered");for(let At of St.dependencies.values()){let Yt=this.storedResolutions.get(At.descriptorHash);if(!Yt)throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(this.configuration,At)}) should have been registered`);if(Yt!==ct.locatorHash&&ce.has(Yt))return!1;let Tr=this.storedPackages.get(Yt);if(!Tr)throw new Error("Assertion failed: The package should have been registered");let Nr=this.tryWorkspaceByLocator(Tr);if(Nr){if(Nr.anchoredLocator.locatorHash!==ct.locatorHash&&ce.has(Nr.anchoredLocator.locatorHash))return!1;Me.add(Nr.anchoredLocator.locatorHash)}Me.add(Yt)}}return!0};for(;ce.size>0;){let ct=ce.size,Me=[];for(let je of ce){let St=this.storedPackages.get(je);if(!St)throw new Error("Assertion failed: The package should have been registered");if(!et(St))continue;let At=N.get(St.locatorHash);if(!At)throw new Error("Assertion failed: The build directive should have been registered");let Yt=Se(St,At.buildLocations);if(this.storedBuildState.get(St.locatorHash)===Yt){De.set(St.locatorHash,Yt),ce.delete(je);continue}k||(await this.persistInstallStateFile(),k=!0),this.storedBuildState.has(St.locatorHash)?r.reportInfo(Jb.MessageName.MUST_REBUILD,`${ng.prettyLocator(this.configuration,St)} must be rebuilt because its dependency tree changed`):r.reportInfo(Jb.MessageName.MUST_BUILD,`${ng.prettyLocator(this.configuration,St)} must be built because it never has been before or the last one failed`);let Tr=At.buildLocations.map(async Nr=>{if(!Xf.ppath.isAbsolute(Nr))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Nr})`);for(let er of At.buildDirectives){let vt=`# This file contains the result of Yarn building a package (${ng.stringifyLocator(St)}) -`;switch(er.type){case J5e.BuildDirectiveType.SCRIPT:vt+=`# Script name: ${er.script} -`;break;case J5e.BuildDirectiveType.SHELLCODE:vt+=`# Script code: ${er.script} -`;break}let xt=null;if(!await Xf.xfs.mktempPromise(async qt=>{let Xt=Xf.ppath.join(qt,"build.log"),{stdout:lr,stderr:cr}=this.configuration.getSubprocessStreams(Xt,{header:vt,prefix:ng.prettyLocator(this.configuration,St),report:r}),Ar;try{switch(er.type){case J5e.BuildDirectiveType.SCRIPT:Ar=await G9n.executePackageScript(St,er.script,[],{cwd:Nr,project:this,stdin:xt,stdout:lr,stderr:cr});break;case J5e.BuildDirectiveType.SHELLCODE:Ar=await G9n.executePackageShellcode(St,er.script,[],{cwd:Nr,project:this,stdin:xt,stdout:lr,stderr:cr});break}}catch(ke){cr.write(ke.stack),Ar=1}if(lr.end(),cr.end(),Ar===0)return!0;Xf.xfs.detachTemp(qt);let qr=`${ng.prettyLocator(this.configuration,St)} couldn't be built successfully (exit code ${qp.pretty(this.configuration,Ar,qp.Type.NUMBER)}, logs can be found here: ${qp.pretty(this.configuration,Xt,qp.Type.PATH)})`,_n=this.optionalBuilds.has(St.locatorHash);return _n?r.reportInfo(Jb.MessageName.BUILD_FAILED,qr):r.reportError(Jb.MessageName.BUILD_FAILED,qr),k9n.SUPPORTS_GROUPS&&r.reportFold(YAt.npath.fromPortablePath(Xt),Xf.xfs.readFileSync(Xt,"utf8")),_n}))return!1}return!0});Me.push(...Tr,Promise.allSettled(Tr).then(Nr=>{ce.delete(je),Nr.every(er=>er.status==="fulfilled"&&er.value===!0)&&De.set(St.locatorHash,Yt)}))}if(await m_.allSettledSafe(Me),ct===ce.size){let je=Array.from(ce).map(St=>{let At=this.storedPackages.get(St);if(!At)throw new Error("Assertion failed: The package should have been registered");return ng.prettyLocator(this.configuration,At)}).join(", ");r.reportError(Jb.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${je})`);break}}this.storedBuildState=De,this.skippedBuilds=Q}async installWithNewReport(t,r){return(await k9n.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");X5e.Configuration.telemetry?.reportInstall(r);let n=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(Jb.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(C=>C.validateProject,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),n=!0}})}),n)return;let a=await this.configuration.getPackageExtensions();for(let C of a.values())for(let[,b]of C)for(let E of b)E.status=HAt.PackageExtensionStatus.Inactive;let o=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),l=null;if(t.immutable)try{l=await Xf.xfs.readFilePromise(o,"utf8")}catch(C){throw C.code==="ENOENT"?new Goe.ReportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):C}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{z5o(this,t.report);for(let[,C]of a)for(let[,b]of C)for(let E of b)if(E.userProvided){let N=qp.pretty(this.configuration,E,qp.Type.PACKAGE_EXTENSION);switch(E.status){case HAt.PackageExtensionStatus.Inactive:t.report.reportWarning(Jb.MessageName.UNUSED_PACKAGE_EXTENSION,`${N}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case HAt.PackageExtensionStatus.Redundant:t.report.reportWarning(Jb.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${N}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(l!==null){let C=(0,Xf.normalizeLineEndings)(l,this.generateLockfile());if(C!==l){let b=(0,G5o.structuredPatch)(o,o,l,C,void 0,void 0,{maxEditLength:100});if(b){t.report.reportSeparator();for(let E of b.hunks){t.report.reportInfo(null,`@@ -${E.oldStart},${E.oldLines} +${E.newStart},${E.newLines} @@`);for(let N of E.lines)N.startsWith("+")?t.report.reportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,qp.pretty(this.configuration,N,qp.Type.ADDED)):N.startsWith("-")?t.report.reportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,qp.pretty(this.configuration,N,qp.Type.REMOVED)):t.report.reportInfo(null,qp.pretty(this.configuration,N,"grey"))}t.report.reportSeparator()}throw new Goe.ReportError(Jb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let C of a.values())for(let[,b]of C)for(let E of b)E.userProvided&&E.status===HAt.PackageExtensionStatus.Active&&X5e.Configuration.telemetry?.reportPackageExtension(qp.json(E,qp.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let A=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(A.map(async C=>r8.checksumPattern(C,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===Zve.UpdateLockfile){t.report.reportWarning(Jb.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${qp.pretty(this.configuration,"mode=update-lockfile",qp.Type.CODE)}`);return}await this.linkEverything(t);let C=await Promise.all(A.map(async b=>r8.checksumPattern(b,{cwd:this.cwd})));for(let b=0;b{await this.configuration.triggerHook(C=>C.validateProjectAfterInstall,this,{reportWarning:(C,b)=>{t.report.reportWarning(C,b)},reportError:(C,b)=>{t.report.reportError(C,b),I=!0}})}),!I&&await this.configuration.triggerHook(C=>C.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,l]of this.storedResolutions.entries()){let A=t.get(l);A||t.set(l,A=new Set),A.add(o)}let r={},{cacheKey:n}=Z5o.Cache.getCacheKey(this.configuration);r.__metadata={version:fM.LOCKFILE_VERSION,cacheKey:n};for(let[o,l]of t.entries()){let A=this.originalPackages.get(o);if(!A)continue;let f=[];for(let b of l){let E=this.storedDescriptors.get(b);if(!E)throw new Error("Assertion failed: The descriptor should have been registered");f.push(E)}let I=f.map(b=>ng.stringifyDescriptor(b)).sort().join(", "),C=new N9n.Manifest;C.version=A.linkType===H5o.LinkType.HARD?A.version:"0.0.0-use.local",C.languageName=A.languageName,C.dependencies=new Map(A.dependencies),C.peerDependencies=new Map(A.peerDependencies),C.dependenciesMeta=new Map(A.dependenciesMeta),C.peerDependenciesMeta=new Map(A.peerDependenciesMeta),C.bin=new Map(A.bin),r[I]={...C.exportTo({},{compatibilityMode:!1}),linkType:A.linkType.toLowerCase(),resolution:ng.stringifyLocator(A),checksum:this.storedChecksums.get(A.locatorHash),conditions:A.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. -`,`# Manual changes might be lost - proceed with caution! -`].join("")} -`+(0,w9n.stringifySyml)(r)}async persistLockfile(){let t=Xf.ppath.join(this.cwd,Xf.Filename.lockfile),r="";try{r=await Xf.xfs.readFilePromise(t,"utf8")}catch{}let n=this.generateLockfile(),a=(0,Xf.normalizeLineEndings)(r,n);a!==r&&(await Xf.xfs.writeFilePromise(t,a),this.lockFileChecksum=Z9n(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let l of Object.values(Hdr))t.push(...l);let r=(0,Odr.pick)(this,t),n=R9n.default.serialize(r),a=r8.makeHash(n);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Xf.xfs.mkdirPromise(Xf.ppath.dirname(o),{recursive:!0}),await Xf.xfs.writeFilePromise(o,await J5o(n)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:n=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let l=await U5o(await Xf.xfs.readFilePromise(a));o=R9n.default.deserialize(l),this.installStateChecksum=r8.makeHash(l)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),n&&Object.assign(this,(0,Odr.pick)(o,Hdr.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,Odr.pick)(o,Hdr.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new x9n.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,Mdr.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let n=new Set([".gitignore"]);if(!(0,O5o.isFolderInside)(t.cwd,this.cwd)||!await Xf.xfs.existsPromise(t.cwd))return null;let a=[];for(let l of await Xf.xfs.readdirPromise(t.cwd)){if(n.has(l))continue;let A=Xf.ppath.resolve(t.cwd,l);t.markedFiles.has(A)||(t.immutable?r.reportError(Jb.MessageName.IMMUTABLE_CACHE,`${qp.pretty(this.configuration,Xf.ppath.basename(A),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Xf.xfs.lstatPromise(A).then(async f=>(await Xf.xfs.removePromise(A),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((l,A)=>l+A,0)}}};fM.Project=Ydr;function K5o({project:e,allDescriptors:t,allResolutions:r,allPackages:n,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:l=new Map,peerWarnings:A=[],peerRequirementNodes:f=new Map,volatileDescriptors:I=new Set}){let C=new Map,b=[],E=new Map,N=new Map,B=new Map,F=new Map,Q=new Map,X=new Map(e.workspaces.map(ue=>{let de=ue.anchoredLocator.locatorHash,be=n.get(de);if(typeof be>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[de,ng.copyPackage(be)]})),ae=()=>{let ue=Xf.xfs.mktempSync(),de=Xf.ppath.join(ue,"stacktrace.log"),be=String(b.length+1).length,Se=b.map((De,k)=>`${`${k+1}.`.padStart(be," ")} ${ng.stringifyLocator(De)} -`).join("");throw Xf.xfs.writeFileSync(de,Se),Xf.xfs.detachTemp(ue),new Goe.ReportError(Jb.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${YAt.npath.fromPortablePath(de)}`)},ne=ue=>{let de=r.get(ue.descriptorHash);if(typeof de>"u")throw new Error("Assertion failed: The resolution should have been registered");let be=n.get(de);if(!be)throw new Error("Assertion failed: The package could not be found");return be},ce=(ue,de,be,{top:Se,optional:De})=>{b.length>1e3&&ae(),b.push(de);let k=fe(ue,de,be,{top:Se,optional:De});return b.pop(),k},fe=(ue,de,be,{top:Se,optional:De})=>{if(De||o.delete(de.locatorHash),a.has(de.locatorHash))return;a.add(de.locatorHash);let k=n.get(de.locatorHash);if(!k)throw new Error(`Assertion failed: The package (${ng.prettyLocator(e.configuration,de)}) should have been registered`);let et=new Set,ct=new Map,Me=[],je=[],St=[],At=[];for(let Yt of Array.from(k.dependencies.values())){if(k.peerDependencies.has(Yt.identHash)&&k.locatorHash!==Se)continue;if(ng.isVirtualDescriptor(Yt))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");I.delete(Yt.descriptorHash);let Tr=De;if(!Tr){let Xt=k.dependenciesMeta.get(ng.stringifyIdent(Yt));if(typeof Xt<"u"){let lr=Xt.get(null);typeof lr<"u"&&lr.optional&&(Tr=!0)}}let Nr=r.get(Yt.descriptorHash);if(!Nr)throw new Error(`Assertion failed: The resolution (${ng.prettyDescriptor(e.configuration,Yt)}) should have been registered`);let er=X.get(Nr)||n.get(Nr);if(!er)throw new Error(`Assertion failed: The package (${Nr}, resolved from ${ng.prettyDescriptor(e.configuration,Yt)}) should have been registered`);if(er.peerDependencies.size===0){ce(Yt,er,new Map,{top:Se,optional:Tr});continue}let vt,xt,Zr=new Set,qt=new Map;Me.push(()=>{vt=ng.virtualizeDescriptor(Yt,de.locatorHash),xt=ng.virtualizePackage(er,de.locatorHash),k.dependencies.set(Yt.identHash,vt),r.set(vt.descriptorHash,xt.locatorHash),t.set(vt.descriptorHash,vt),n.set(xt.locatorHash,xt),m_.getSetWithDefault(F,xt.locatorHash).add(vt.descriptorHash),et.add(xt.locatorHash)}),je.push(()=>{Q.set(xt.locatorHash,qt);for(let Xt of xt.peerDependencies.values()){let cr=m_.getFactoryWithDefault(ct,Xt.identHash,()=>{let Ar=be.get(Xt.identHash)??null,qr=k.dependencies.get(Xt.identHash);return!qr&&ng.areIdentsEqual(de,Xt)&&(ue.identHash===de.identHash?qr=ue:(qr=ng.makeDescriptor(de,ue.range),t.set(qr.descriptorHash,qr),r.set(qr.descriptorHash,de.locatorHash),I.delete(qr.descriptorHash),Ar=null)),qr||(qr=ng.makeDescriptor(Xt,"missing:")),{subject:de,ident:Xt,provided:qr,root:!Ar,requests:new Map,hash:`p${r8.makeHash(de.locatorHash,Xt.identHash).slice(0,6)}`}}).provided;if(cr.range==="missing:"&&xt.dependencies.has(Xt.identHash)){xt.peerDependencies.delete(Xt.identHash);continue}if(qt.set(Xt.identHash,{requester:xt,descriptor:Xt,meta:xt.peerDependenciesMeta.get(ng.stringifyIdent(Xt)),children:new Map}),xt.dependencies.set(Xt.identHash,cr),ng.isVirtualDescriptor(cr)){let Ar=r.get(cr.descriptorHash);m_.getSetWithDefault(B,Ar).add(xt.locatorHash)}E.set(cr.identHash,cr),cr.range==="missing:"&&Zr.add(cr.identHash)}xt.dependencies=new Map(m_.sortMap(xt.dependencies,([Xt,lr])=>ng.stringifyIdent(lr)))}),St.push(()=>{if(!n.has(xt.locatorHash))return;let Xt=C.get(er.locatorHash);typeof Xt=="number"&&Xt>=2&&ae();let lr=C.get(er.locatorHash),cr=typeof lr<"u"?lr+1:1;C.set(er.locatorHash,cr),ce(vt,xt,qt,{top:Se,optional:Tr}),C.set(er.locatorHash,cr-1)}),At.push(()=>{let Xt=r.get(vt.descriptorHash);if(typeof Xt>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let lr=Q.get(Xt);if(typeof lr>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let cr of ct.values()){let Ar=lr.get(cr.ident.identHash);Ar&&(cr.requests.set(vt.descriptorHash,Ar),f.set(cr.hash,cr),cr.root||be.get(cr.ident.identHash)?.children.set(vt.descriptorHash,Ar))}if(n.has(xt.locatorHash))for(let cr of Zr)xt.dependencies.delete(cr)})}for(let Yt of[...Me,...je])Yt();for(let Yt of et){et.delete(Yt);let Tr=n.get(Yt),Nr=r8.makeHash(ng.devirtualizeLocator(Tr).locatorHash,...Array.from(Tr.dependencies.values(),Zr=>{let qt=Zr.range!=="missing:"?r.get(Zr.descriptorHash):"missing:";if(typeof qt>"u")throw new Error(`Assertion failed: Expected the resolution for ${ng.prettyDescriptor(e.configuration,Zr)} to have been registered`);return qt===Se?`${qt} (top)`:qt})),er=N.get(Nr);if(typeof er>"u"){N.set(Nr,Tr);continue}let vt=m_.getSetWithDefault(F,er.locatorHash);for(let Zr of F.get(Tr.locatorHash)??[])r.set(Zr,er.locatorHash),vt.add(Zr);n.delete(Tr.locatorHash),a.delete(Tr.locatorHash),et.delete(Tr.locatorHash);let xt=B.get(Tr.locatorHash);if(xt!==void 0){let Zr=m_.getSetWithDefault(B,er.locatorHash);for(let qt of xt)Zr.add(qt),et.add(qt)}}for(let Yt of[...St,...At])Yt()};for(let ue of e.workspaces){let de=ue.anchoredLocator;I.delete(ue.anchoredDescriptor.descriptorHash),ce(ue.anchoredDescriptor,de,new Map,{top:de.locatorHash,optional:!1})}for(let ue of f.values()){if(!ue.root)continue;let de=n.get(ue.subject.locatorHash);if(typeof de>"u")continue;for(let Se of ue.requests.values()){let De=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),Se.requester.locatorHash).slice(0,6)}`;l.set(De,{subject:ue.subject.locatorHash,requested:ue.ident,rootRequester:Se.requester.locatorHash,allRequesters:Array.from(ng.allPeerRequests(Se),k=>k.requester.locatorHash)})}let be=[...ng.allPeerRequests(ue)];if(ue.provided.range!=="missing:"){let Se=ne(ue.provided),De=Se.version??"0.0.0",k=ct=>{if(ct.startsWith(QAt.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(Se))return null;ct=ct.slice(QAt.WorkspaceResolver.protocol.length),(ct==="^"||ct==="~")&&(ct="*")}return ct},et=!0;for(let ct of be){let Me=k(ct.descriptor.range);if(Me===null){et=!1;continue}if(!XAt.satisfiesWithPrereleases(De,Me)){et=!1;let je=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),ct.requester.locatorHash).slice(0,6)}`;A.push({type:n8.NotCompatible,subject:de,requested:ue.ident,requester:ct.requester,version:De,hash:je,requirementCount:be.length})}}if(!et){let ct=be.map(Me=>k(Me.descriptor.range));A.push({type:n8.NodeNotCompatible,node:ue,range:ct.includes(null)?null:XAt.simplifyRanges(ct),hash:ue.hash})}}else{let Se=!0;for(let De of be)if(!De.meta?.optional){Se=!1;let k=`p${r8.makeHash(ue.subject.locatorHash,ng.stringifyIdent(ue.ident),De.requester.locatorHash).slice(0,6)}`;A.push({type:n8.NotProvided,subject:de,requested:ue.ident,requester:De.requester,hash:k})}Se||A.push({type:n8.NodeNotProvided,node:ue,hash:ue.hash})}}}function*j5o(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,n]of t){yield{request:r,root:n};for(let a of r.children.values())t.has(a)||t.set(a,n)}}function z5o(e,t){let r=[],n=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===n8.NotCompatible||o.type===n8.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===n8.NodeNotCompatible){let l=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof l>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let A=e.storedPackages.get(l);if(typeof A>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=m_.mapAndFind(j5o(o.node),({request:b,root:E})=>XAt.satisfiesWithPrereleases(A.version??"0.0.0",b.descriptor.range)?m_.mapAndFind.skip:b===E?ng.prettyIdent(e.configuration,b.requester):`${ng.prettyIdent(e.configuration,b.requester)} (via ${ng.prettyIdent(e.configuration,E.requester)})`),I=[...ng.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",C=o.range?ng.prettyRange(e.configuration,o.range):qp.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${ng.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${ng.prettyReference(e.configuration,A.version??"0.0.0")} (${qp.pretty(e.configuration,o.hash,qp.Type.CODE)}), which doesn't satisfy what ${f} ${I} (${C}).`)}if(o.type===n8.NodeNotProvided){let l=o.node.requests.size>1?" and other dependencies":"";n.push(`${ng.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${ng.prettyIdent(e.configuration,o.node.ident)} (${qp.pretty(e.configuration,o.hash,qp.Type.CODE)}), requested by ${ng.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${l}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(Jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${qp.pretty(e.configuration,"yarn explain peer-requirements ",qp.Type.CODE)} for details, where ${qp.pretty(e.configuration,"",qp.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of m_.sortMap(r,l=>qp.stripAnsi(l)))t.reportWarning(Jb.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of m_.sortMap(n,l=>qp.stripAnsi(l)))t.reportWarning(Jb.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(Jb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${qp.pretty(e.configuration,"yarn explain peer-requirements",qp.Type.CODE)} for details.`)}});var M9n=H(AIe=>{"use strict";Object.defineProperty(AIe,"__esModule",{value:!0});AIe.TelemetryManager=AIe.MetricName=void 0;AIe.derive=O9n;var UAt=(Pa(),vi(Va)),i8=ro(),W9n=E5e(),q5o=UAt.__importStar(moe()),$5o=UAt.__importStar(Ygt()),JAt=UAt.__importStar(xW()),eMo=UAt.__importStar(n$()),s8;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(s8||(AIe.MetricName=s8={}));function O9n(e){let n=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),l=o+a,A=e.state.lastTips??n*864e5,f=A+864e5+8*36e5-e.timeZone,I=l<=e.timeNow,C=f<=e.timeNow,b=null;return(I||C||!e.state.lastUpdate||!e.state.lastTips)&&(b={},b.lastUpdate=I?e.timeNow:o,b.lastTips=A,b.blocks=I?{}:e.state.blocks,b.displayedTips=e.state.displayedTips),{nextState:b,triggerUpdate:I,triggerTips:C,nextTips:C?n*864e5:A}}var Qdr=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let n=this.getRegistryPath();this.isNew=!i8.xfs.existsSync(n),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),n=A=>A&&W9n.YarnVersion?eMo.satisfiesWithPrereleases(W9n.YarnVersion,A):!1,a=t.map((A,f)=>f).filter(A=>t[A]&&n(t[A]?.selector));if(a.length===0)return null;let o=a.filter(A=>!r.has(A));if(o.length===0){let A=Math.floor(a.length*.2);this.displayedTips=A>0?this.displayedTips.slice(-A):[],o=a.filter(f=>!r.has(f))}let l=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(l),this.commitTips(),t[l]}reportVersion(t){this.reportValue(s8.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(s8.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(s8.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(s8.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(s8.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(s8.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(s8.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(s8.DEPENDENCY_COUNT,String(t))}reportValue(t,r){JAt.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){JAt.getSetWithDefault(this.enumerators,t).add(q5o.makeHash(r))}reportHit(t,r="*"){let n=JAt.getMapWithDefault(this.hits,t),a=JAt.getFactoryWithDefault(n,r,()=>0);n.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return i8.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),n;try{n=i8.xfs.readJsonSync(r)}catch{n={}}let{nextState:a,triggerUpdate:o,triggerTips:l,nextTips:A}=O9n({state:n,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=A,this.displayedTips=n.displayedTips??[],a!==null)try{i8.xfs.mkdirSync(i8.ppath.dirname(r),{recursive:!0}),i8.xfs.writeJsonSync(r,a)}catch{return!1}if(l&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=n.blocks??{};if(Object.keys(f).length===0){let I=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,C=b=>$5o.post(I,b,{configuration:this.configuration}).catch(()=>{});for(let[b,E]of Object.entries(n.blocks??{})){if(Object.keys(E).length===0)continue;let N=E;N.userId=b,N.reportType="primary";for(let Q of Object.keys(N.enumerators??{}))N.enumerators[Q]=N.enumerators[Q].length;C(N);let B=new Map,F=20;for(let[Q,X]of Object.entries(N.values))X.length>0&&B.set(Q,X.slice(0,F));for(;B.size>0;){let Q={};Q.userId=b,Q.reportType="secondary",Q.metrics={};for(let[X,ae]of B)Q.metrics[X]=ae.shift(),ae.length===0&&B.delete(X);C(Q)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=i8.xfs.readJsonSync(t)}catch{r={}}let n=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[n]=a[n]??{};for(let l of this.hits.keys()){let A=o.hits=o.hits??{},f=A[l]=A[l]??{};for(let[I,C]of this.hits.get(l))f[I]=(f[I]??0)+C}for(let l of["values","enumerators"])for(let A of this[l].keys()){let f=o[l]=o[l]??{};f[A]=[...new Set([...f[A]??[],...this[l].get(A)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),i8.xfs.mkdirSync(i8.ppath.dirname(t),{recursive:!0}),i8.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};AIe.TelemetryManager=Qdr});var Sn=H(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});Rl.treeUtils=Rl.tgzUtils=Rl.structUtils=Rl.semverUtils=Rl.scriptUtils=Rl.nodeUtils=Rl.miscUtils=Rl.formatUtils=Rl.folderUtils=Rl.execUtils=Rl.httpUtils=Rl.hashUtils=Rl.PackageExtensionStatus=Rl.PackageExtensionType=Rl.LinkType=Rl.YarnVersion=Rl.Workspace=Rl.WorkspaceResolver=Rl.WorkspaceFetcher=Rl.VirtualFetcher=Rl.ThrowReport=Rl.TelemetryManager=Rl.reportOptionDeprecations=Rl.StreamReport=Rl.Report=Rl.ReportError=Rl.InstallMode=Rl.Project=Rl.PeerWarningType=Rl.LOCKFILE_VERSION=Rl.MultiFetcher=Rl.stringifyMessageName=Rl.parseMessageName=Rl.MessageName=Rl.Manifest=Rl.LockfileResolver=Rl.LightReport=Rl.LegacyMigrationResolver=Rl.BuildDirectiveType=Rl.WindowsLinkType=Rl.DurationUnit=Rl.SettingsType=Rl.FormatType=Rl.Configuration=Rl.TAG_REGEXP=Rl.LEGACY_PLUGINS=Rl.DEFAULT_RC_FILENAME=Rl.Cache=Rl.CACHE_CHECKPOINT=Rl.CACHE_VERSION=void 0;var IM=(Pa(),vi(Va)),tMo=IM.__importStar(Xgt());Rl.execUtils=tMo;var rMo=IM.__importStar(ggt());Rl.folderUtils=rMo;var nMo=IM.__importStar(rM());Rl.formatUtils=nMo;var iMo=IM.__importStar(moe());Rl.hashUtils=iMo;var sMo=IM.__importStar(Ygt());Rl.httpUtils=sMo;var oMo=IM.__importStar(xW());Rl.miscUtils=oMo;var aMo=IM.__importStar(Qgt());Rl.nodeUtils=aMo;var cMo=IM.__importStar(HAr());Rl.scriptUtils=cMo;var lMo=IM.__importStar(n$());Rl.semverUtils=lMo;var uMo=IM.__importStar(uG());Rl.structUtils=uMo;var gMo=IM.__importStar(bLn());Rl.tgzUtils=gMo;var AMo=IM.__importStar(TLn());Rl.treeUtils=AMo;var Xdr=adr();Object.defineProperty(Rl,"CACHE_VERSION",{enumerable:!0,get:function(){return Xdr.CACHE_VERSION}});Object.defineProperty(Rl,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return Xdr.CACHE_CHECKPOINT}});Object.defineProperty(Rl,"Cache",{enumerable:!0,get:function(){return Xdr.Cache}});var Jdr=f5e();Object.defineProperty(Rl,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return Jdr.DEFAULT_RC_FILENAME}});Object.defineProperty(Rl,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return Jdr.LEGACY_PLUGINS}});Object.defineProperty(Rl,"TAG_REGEXP",{enumerable:!0,get:function(){return Jdr.TAG_REGEXP}});var U5e=f5e();Object.defineProperty(Rl,"Configuration",{enumerable:!0,get:function(){return U5e.Configuration}});Object.defineProperty(Rl,"FormatType",{enumerable:!0,get:function(){return U5e.FormatType}});Object.defineProperty(Rl,"SettingsType",{enumerable:!0,get:function(){return U5e.SettingsType}});Object.defineProperty(Rl,"DurationUnit",{enumerable:!0,get:function(){return U5e.DurationUnit}});Object.defineProperty(Rl,"WindowsLinkType",{enumerable:!0,get:function(){return U5e.WindowsLinkType}});var dMo=cdr();Object.defineProperty(Rl,"BuildDirectiveType",{enumerable:!0,get:function(){return dMo.BuildDirectiveType}});var pMo=udr();Object.defineProperty(Rl,"LegacyMigrationResolver",{enumerable:!0,get:function(){return pMo.LegacyMigrationResolver}});var fMo=LLn();Object.defineProperty(Rl,"LightReport",{enumerable:!0,get:function(){return fMo.LightReport}});var IMo=ddr();Object.defineProperty(Rl,"LockfileResolver",{enumerable:!0,get:function(){return IMo.LockfileResolver}});var hMo=uve();Object.defineProperty(Rl,"Manifest",{enumerable:!0,get:function(){return hMo.Manifest}});var Udr=M9();Object.defineProperty(Rl,"MessageName",{enumerable:!0,get:function(){return Udr.MessageName}});Object.defineProperty(Rl,"parseMessageName",{enumerable:!0,get:function(){return Udr.parseMessageName}});Object.defineProperty(Rl,"stringifyMessageName",{enumerable:!0,get:function(){return Udr.stringifyMessageName}});var mMo=Cur();Object.defineProperty(Rl,"MultiFetcher",{enumerable:!0,get:function(){return mMo.MultiFetcher}});var KAt=P9n();Object.defineProperty(Rl,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return KAt.LOCKFILE_VERSION}});Object.defineProperty(Rl,"PeerWarningType",{enumerable:!0,get:function(){return KAt.PeerWarningType}});Object.defineProperty(Rl,"Project",{enumerable:!0,get:function(){return KAt.Project}});Object.defineProperty(Rl,"InstallMode",{enumerable:!0,get:function(){return KAt.InstallMode}});var H9n=sM();Object.defineProperty(Rl,"ReportError",{enumerable:!0,get:function(){return H9n.ReportError}});Object.defineProperty(Rl,"Report",{enumerable:!0,get:function(){return H9n.Report}});var Y9n=S5e();Object.defineProperty(Rl,"StreamReport",{enumerable:!0,get:function(){return Y9n.StreamReport}});Object.defineProperty(Rl,"reportOptionDeprecations",{enumerable:!0,get:function(){return Y9n.reportOptionDeprecations}});var CMo=M9n();Object.defineProperty(Rl,"TelemetryManager",{enumerable:!0,get:function(){return CMo.TelemetryManager}});var _Mo=Ldr();Object.defineProperty(Rl,"ThrowReport",{enumerable:!0,get:function(){return _Mo.ThrowReport}});var yMo=vur();Object.defineProperty(Rl,"VirtualFetcher",{enumerable:!0,get:function(){return yMo.VirtualFetcher}});var bMo=wur();Object.defineProperty(Rl,"WorkspaceFetcher",{enumerable:!0,get:function(){return bMo.WorkspaceFetcher}});var EMo=Kfe();Object.defineProperty(Rl,"WorkspaceResolver",{enumerable:!0,get:function(){return EMo.WorkspaceResolver}});var SMo=Pdr();Object.defineProperty(Rl,"Workspace",{enumerable:!0,get:function(){return SMo.Workspace}});var vMo=E5e();Object.defineProperty(Rl,"YarnVersion",{enumerable:!0,get:function(){return vMo.YarnVersion}});var Kdr=Qfe();Object.defineProperty(Rl,"LinkType",{enumerable:!0,get:function(){return Kdr.LinkType}});Object.defineProperty(Rl,"PackageExtensionType",{enumerable:!0,get:function(){return Kdr.PackageExtensionType}});Object.defineProperty(Rl,"PackageExtensionStatus",{enumerable:!0,get:function(){return Kdr.PackageExtensionStatus}})});var zdr=H(jAt=>{"use strict";Object.defineProperty(jAt,"__esModule",{value:!0});jAt.WorkspaceRequiredError=void 0;var BMo=Sn(),Q9n=ro(),wMo=($c(),vi(rg)),jdr=class extends wMo.UsageError{constructor(t,r){let n=Q9n.ppath.relative(t,r),a=Q9n.ppath.join(t,BMo.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${n} isn't a workspace of ${a}).`)}};jAt.WorkspaceRequiredError=jdr});var qdr=H(zAt=>{"use strict";Object.defineProperty(zAt,"__esModule",{value:!0});zAt.getDynamicLibs=void 0;var d$=(Pa(),vi(Va)),TMo=d$.__importStar(el()),RMo=d$.__importStar(Sn()),NMo=d$.__importStar(ro()),DMo=d$.__importStar(zK()),kMo=d$.__importStar(TW()),xMo=d$.__importStar(C5e()),GMo=d$.__importStar(($c(),vi(rg))),FMo=d$.__importStar(UC()),ZMo=d$.__importStar((CZ(),vi(mZ))),LMo=()=>new Map([["@yarnpkg/cli",TMo],["@yarnpkg/core",RMo],["@yarnpkg/fslib",NMo],["@yarnpkg/libzip",DMo],["@yarnpkg/parsers",kMo],["@yarnpkg/shell",xMo],["clipanion",GMo],["semver",FMo],["typanion",ZMo]]);zAt.getDynamicLibs=LMo});var $dr=H((j7l,VMo)=>{VMo.exports={name:"@yarnpkg/cli",version:"4.14.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.7.0","@yarnpkg/fslib":"^3.1.5","@yarnpkg/libzip":"^3.2.2","@yarnpkg/parsers":"^3.0.3","@yarnpkg/plugin-catalog":"^1.0.2","@yarnpkg/plugin-compat":"^4.0.12","@yarnpkg/plugin-constraints":"^4.0.5","@yarnpkg/plugin-dlx":"^4.0.2","@yarnpkg/plugin-essentials":"^4.5.0","@yarnpkg/plugin-exec":"^3.1.0","@yarnpkg/plugin-file":"^3.0.2","@yarnpkg/plugin-git":"^3.2.0","@yarnpkg/plugin-github":"^3.0.2","@yarnpkg/plugin-http":"^3.0.3","@yarnpkg/plugin-init":"^4.1.2","@yarnpkg/plugin-interactive-tools":"^4.1.0","@yarnpkg/plugin-jsr":"^1.1.1","@yarnpkg/plugin-link":"^3.0.2","@yarnpkg/plugin-nm":"^4.0.8","@yarnpkg/plugin-npm":"^3.5.0","@yarnpkg/plugin-npm-cli":"^4.4.1","@yarnpkg/plugin-pack":"^4.0.4","@yarnpkg/plugin-patch":"^4.0.3","@yarnpkg/plugin-pnp":"^4.1.5","@yarnpkg/plugin-pnpm":"^2.1.2","@yarnpkg/plugin-stage":"^4.0.2","@yarnpkg/plugin-typescript":"^4.1.3","@yarnpkg/plugin-version":"^4.2.0","@yarnpkg/plugin-workspace-tools":"^4.1.7","@yarnpkg/shell":"^4.1.3","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.3","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.6"},peerDependencies:{"@yarnpkg/core":"^4.7.0"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"git+https://github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var tpr=H(epr=>{"use strict";Object.defineProperty(epr,"__esModule",{value:!0});epr.getPluginConfiguration=MMo;var PMo=(Pa(),vi(Va)),WMo=PMo.__importDefault($dr()),OMo=qdr();function MMo(){let e=new Set;for(let r of WMo.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,OMo.getDynamicLibs)();for(let r of e)t.set(r,wt(r).default);return{plugins:e,modules:t}}});var X9n=H(rpr=>{"use strict";Object.defineProperty(rpr,"__esModule",{value:!0});rpr.openWorkspace=QMo;var HMo=Sn(),YMo=zdr();async function QMo(e,t){let{project:r,workspace:n}=await HMo.Project.find(e,t);if(!n)throw new YMo.WorkspaceRequiredError(r.cwd,t);return n}});var npr=H(qAt=>{"use strict";Object.defineProperty(qAt,"__esModule",{value:!0});qAt.pluginCommands=void 0;qAt.pluginCommands=new Map([])});var j9n=H($At=>{"use strict";Object.defineProperty($At,"__esModule",{value:!0});$At.getCli=tHo;$At.runExit=rHo;var p$=Sn(),IX=ro(),XMo=wt("child_process"),JMo=Nfe(),Lve=($c(),vi(rg)),UMo=npr(),KMo=tpr();function J9n({cwd:e,pluginConfiguration:t}){let r=new Lve.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:p$.YarnVersion??""});return Object.assign(r,{defaultContext:{...Lve.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function jMo(e){if(p$.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,n=">=18.12.0";if(p$.semverUtils.satisfiesWithPrereleases(r,n))return!0;let a=new Lve.UsageError(`This tool requires a Node version compatible with ${n} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return Lve.Cli.defaultContext.stdout.write(e.error(a)),!1}async function U9n({selfPath:e,pluginConfiguration:t}){return await p$.Configuration.find(IX.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function zMo(e,t,{yarnPath:r}){if(!IX.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let n={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,XMo.execFileSync)(process.execPath,[IX.npath.fromPortablePath(r),...t],n)}catch(a){return a.status??1}return 0}function qMo(e,t){let r=null,n=t;return t.length>=2&&t[0]==="--cwd"?(r=IX.npath.toPortablePath(t[1]),n=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=IX.npath.toPortablePath(t[0].slice(6)),n=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=IX.npath.toPortablePath(t[t.length-1]),n=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?IX.ppath.resolve(r):IX.ppath.cwd(),n}function $Mo(e,{configuration:t}){if(!t.get("enableTelemetry")||JMo.isCI||!process.stdout.isTTY)return;p$.Configuration.telemetry=new p$.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let n=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())UMo.pluginCommands.has(a.match(n)?.[1]??"")&&p$.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&p$.Configuration.telemetry.reportVersion(e.binaryVersion)}function K9n(e,{configuration:t}){for(let r of t.plugins.values())for(let n of r.commands||[])e.register(n)}async function eHo(e,t,{selfPath:r,pluginConfiguration:n}){if(!jMo(e))return 1;let a=await U9n({selfPath:r,pluginConfiguration:n}),o=a.get("yarnPath"),l=a.get("ignorePath");if(o&&!l)return zMo(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let A=qMo(e,t);$Mo(e,{configuration:a}),K9n(e,{configuration:a});let f=e.process(A,e.defaultContext);return f.help||p$.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function tHo({cwd:e=IX.ppath.cwd(),pluginConfiguration:t=(0,KMo.getPluginConfiguration)()}={}){let r=J9n({cwd:e,pluginConfiguration:t}),n=await U9n({pluginConfiguration:t,selfPath:null});return K9n(r,{configuration:n}),r}async function rHo(e,{cwd:t=IX.ppath.cwd(),selfPath:r,pluginConfiguration:n}){let a=J9n({cwd:t,pluginConfiguration:n});function o(){Lve.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. -Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await eHo(a,e,{selfPath:r,pluginConfiguration:n})}catch(l){Lve.Cli.defaultContext.stdout.write(a.error(l)),process.exitCode=1}finally{process.off("beforeExit",o),await IX.xfs.rmtempPromise()}}});var el=H(jN=>{"use strict";Object.defineProperty(jN,"__esModule",{value:!0});jN.pluginCommands=jN.runExit=jN.getCli=jN.openWorkspace=jN.getPluginConfiguration=jN.getDynamicLibs=jN.WorkspaceRequiredError=jN.BaseCommand=void 0;var nHo=ebn();Object.defineProperty(jN,"BaseCommand",{enumerable:!0,get:function(){return nHo.BaseCommand}});var iHo=zdr();Object.defineProperty(jN,"WorkspaceRequiredError",{enumerable:!0,get:function(){return iHo.WorkspaceRequiredError}});var sHo=qdr();Object.defineProperty(jN,"getDynamicLibs",{enumerable:!0,get:function(){return sHo.getDynamicLibs}});var oHo=tpr();Object.defineProperty(jN,"getPluginConfiguration",{enumerable:!0,get:function(){return oHo.getPluginConfiguration}});var aHo=X9n();Object.defineProperty(jN,"openWorkspace",{enumerable:!0,get:function(){return aHo.openWorkspace}});var z9n=j9n();Object.defineProperty(jN,"getCli",{enumerable:!0,get:function(){return z9n.getCli}});Object.defineProperty(jN,"runExit",{enumerable:!0,get:function(){return z9n.runExit}});var cHo=npr();Object.defineProperty(jN,"pluginCommands",{enumerable:!0,get:function(){return cHo.pluginCommands}})});var AVn=H((Izl,gVn)=>{"use strict";var cVn=wt("stream").PassThrough,lVn=wt("stream").Writable,uVn=wt("util");uVn.inherits(cpr,cVn);uVn.inherits(lpr,lVn);function cpr(e,t){cVn.call(this,t),this.factory=e,this.opts=t}cpr.prototype._flush=function(e){var t=this.factory();t.pipe(new lpr(this,this.opts)).on("finish",e),t.resume()};function lpr(e,t){lVn.call(this,t),this.target=e}lpr.prototype._write=function(e,t,r){this.target.push(e),r()};function apr(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new cpr(r,t)}apr.obj=function(e,t){return t=t||{},t.objectMode=!0,apr(e,t)};gVn.exports=apr});var fVn=bc(()=>{});function gpr(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function pHo(e,t){if(!e)return IVn;let r=gpr(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function fHo(e,t){if(!e)return IVn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${gpr(e,"|")})([\\w-]*\\d+)`,r)}function IHo(e){if(!e)return/()(.+)/gi;let t=gpr(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function hVn(e={}){let t=pHo(e.noteKeywords,e.notesPattern),r=fHo(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=IHo(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}var IVn,mVn=bc(()=>{IVn=/(?!.*)/});function z5e(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` -`;)n--;return e.substring(r,n+1)}function pIe(e,t){return e?`${e} -${t||""}`:t||""}function CVn(e){return e?t=>!t.startsWith(e):()=>!0}function _Vn(e){let t=e.indexOf(hHo);return t===-1?e:e.slice(0,t)}function yVn(e){return!e.match(/^\s*gpg:/)}var hHo,bVn=bc(()=>{hHo="# ------------------------ >8 ------------------------"});var EVn,SVn=bc(()=>{EVn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function Apr(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var q5e,dpr=bc(()=>{mVn();bVn();SVn();q5e=class{options;regexes;lines=[];lineIndex=0;commit=Apr();constructor(t={}){this.options={...EVn,...t},this.regexes=hVn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[l]=o[A+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:n}=this,a=n.headerCorrespondence||[],o=this.nextLine(),l=null;o&&(n.breakingHeaderPattern&&(l=o.match(n.breakingHeaderPattern)),!l&&n.headerPattern&&(l=o.match(n.headerPattern))),o&&(r.header=o),l&&a.forEach((A,f)=>{r[A]=l[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let n,a=null,o=!1;for(;this.isLineAvailable();){if(n=this.currentLine().match(t.fieldPattern),n){a=n[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=pIe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let n=this.currentLine().match(t.notes),a=[];if(n){let o={title:n[1],text:n[2]};for(r.notes.push(o),r.footer=pIe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=pIe(o.text,this.currentLine()),r.footer=pIe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let n=this.parseReferences(this.currentLine()),a=!n.length&&t;return a?r.body=pIe(r.body,this.currentLine()):(r.references.push(...n),r.footer=pIe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let n=t.header.match(r.breakingHeaderPattern);n&&t.notes.push({title:"BREAKING CHANGE",text:n[3]})}parseMentions(t){let{commit:r,regexes:n}=this,a;for(;a=n.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:n}=this,a=n.revertCorrespondence||[],o=n.revertPattern?t.match(n.revertPattern):null;o&&(r.revert=a.reduce((l,A,f)=>(l[A]=o[f+1]||null,l),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=z5e(t.body)),t.footer&&(t.footer=z5e(t.footer)),t.notes.forEach(r=>{r.text=z5e(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=CVn(this.options.commentChar),n=z5e(t).split(/\r?\n/),a=_Vn(n).filter(f=>r(f)&&yVn(f)),o=Apr();this.lines=a,this.lineIndex=0,this.commit=o;let l=this.parseMerge();this.parseHeader(l),o.header&&(o.references=this.parseReferences(o.header));let A=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(A=!1),this.parseBodyAndFooter(A)||(A=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as mHo}from"stream";function vVn(e={}){let t=e.warn,r=t===!0?n=>{throw n}:t?n=>t(n.toString()):()=>{};return async function*(a){let o=new q5e(e),l;for await(l of a)try{yield o.parse(l.toString())}catch(A){r(A)}}}function ppr(e={}){return mHo.from(vVn(e))}var BVn=bc(()=>{dpr()});var wVn={};sI(wVn,{CommitParser:()=>q5e,createCommitObject:()=>Apr,parseCommits:()=>vVn,parseCommitsStream:()=>ppr});var fpr=bc(()=>{fVn();dpr();BVn()});function CHo(e,t){let r,n;for(let a in t)if(r=e[a],n=t[a],typeof r=="string"&&(r=r.trim()),typeof n=="string"&&(n=n.trim()),r!==n)return!1;return!0}function TVn(e,t){if(!t.size)return null;let r=e.raw||e;for(let n of t)if(n.revert&&CHo(r,n.revert))return n;return null}var RVn=bc(()=>{});var Pve,Ipr=bc(()=>{RVn();Pve=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,n=TVn(t,r);if(n){r.delete(n),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as _Ho}from"stream";async function*NVn(e){let t=new Pve;for await(let r of e)yield*t.process(r);yield*t.flush()}function*hpr(e){let t=new Pve;for(let r of e)yield*t.process(r);yield*t.flush()}function yHo(){return _Ho.from(NVn)}var DVn=bc(()=>{Ipr()});var kVn={};sI(kVn,{RevertedCommitsFilter:()=>Pve,filterRevertedCommits:()=>NVn,filterRevertedCommitsStream:()=>yHo,filterRevertedCommitsSync:()=>hpr});var mpr=bc(()=>{Ipr();DVn()});var NZ=H(LW=>{"use strict";LW.__esModule=!0;LW.extend=WVn;LW.indexOf=DHo;LW.escapeExpression=kHo;LW.isEmpty=xHo;LW.createFrame=GHo;LW.blockParams=FHo;LW.appendContextPath=ZHo;var wHo={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},THo=/[&<>"'`=]/g,RHo=/[&<>"'`=]/;function NHo(e){return wHo[e]}function WVn(e){for(var t=1;t{"use strict";idt.__esModule=!0;var bpr=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function Epr(e,t){var r=t&&t.loc,n=void 0,a=void 0,o=void 0,l=void 0;r&&(n=r.start.line,a=r.end.line,o=r.start.column,l=r.end.column,e+=" - "+n+":"+o);for(var A=Error.prototype.constructor.call(this,e),f=0;f{"use strict";sdt.__esModule=!0;var Spr=NZ();sdt.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var n=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return n(this);if(Spr.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):n(this);if(r.data&&r.ids){var o=Spr.createFrame(r.data);o.contextPath=Spr.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};HVn.exports=sdt.default});var XVn=H((odt,QVn)=>{"use strict";odt.__esModule=!0;function LHo(e){return e&&e.__esModule?e:{default:e}}var tMe=NZ(),VHo=hM(),PHo=LHo(VHo);odt.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new PHo.default("Must pass iterator to #each");var n=r.fn,a=r.inverse,o=0,l="",A=void 0,f=void 0;r.data&&r.ids&&(f=tMe.appendContextPath(r.data.contextPath,r.ids[0])+"."),tMe.isFunction(t)&&(t=t.call(this)),r.data&&(A=tMe.createFrame(r.data));function I(B,F,Q){A&&(A.key=B,A.index=F,A.first=F===0,A.last=!!Q,f&&(A.contextPath=f+B)),l=l+n(t[B],{data:A,blockParams:tMe.blockParams([t[B],B],[f+B,null])})}if(t&&typeof t=="object")if(tMe.isArray(t))for(var C=t.length;o{"use strict";adt.__esModule=!0;function WHo(e){return e&&e.__esModule?e:{default:e}}var OHo=hM(),MHo=WHo(OHo);adt.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new MHo.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};JVn.exports=adt.default});var qVn=H((cdt,zVn)=>{"use strict";cdt.__esModule=!0;function HHo(e){return e&&e.__esModule?e:{default:e}}var KVn=NZ(),YHo=hM(),jVn=HHo(YHo);cdt.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new jVn.default("#if requires exactly one argument");return KVn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||KVn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new jVn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};zVn.exports=cdt.default});var ePn=H((ldt,$Vn)=>{"use strict";ldt.__esModule=!0;ldt.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";udt.__esModule=!0;udt.default=function(e){e.registerHelper("lookup",function(t,r,n){return t&&n.lookupProperty(t,r)})};tPn.exports=udt.default});var iPn=H((gdt,nPn)=>{"use strict";gdt.__esModule=!0;function QHo(e){return e&&e.__esModule?e:{default:e}}var rMe=NZ(),XHo=hM(),JHo=QHo(XHo);gdt.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new JHo.default("#with requires exactly one argument");rMe.isFunction(t)&&(t=t.call(this));var n=r.fn;if(rMe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=rMe.createFrame(r.data),a.contextPath=rMe.appendContextPath(r.data.contextPath,r.ids[0])),n(t,{data:a,blockParams:rMe.blockParams([t],[a&&a.contextPath])})})};nPn.exports=gdt.default});var vpr=H(Adt=>{"use strict";Adt.__esModule=!0;Adt.registerDefaultHelpers=cYo;Adt.moveHelperToHooks=lYo;function fIe(e){return e&&e.__esModule?e:{default:e}}var UHo=YVn(),KHo=fIe(UHo),jHo=XVn(),zHo=fIe(jHo),qHo=UVn(),$Ho=fIe(qHo),eYo=qVn(),tYo=fIe(eYo),rYo=ePn(),nYo=fIe(rYo),iYo=rPn(),sYo=fIe(iYo),oYo=iPn(),aYo=fIe(oYo);function cYo(e){KHo.default(e),zHo.default(e),$Ho.default(e),tYo.default(e),nYo.default(e),sYo.default(e),aYo.default(e)}function lYo(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var oPn=H((ddt,sPn)=>{"use strict";ddt.__esModule=!0;var uYo=NZ();ddt.default=function(e){e.registerDecorator("inline",function(t,r,n,a){var o=t;return r.partials||(r.partials={},o=function(l,A){var f=n.partials;n.partials=uYo.extend({},f,r.partials);var I=t(l,A);return n.partials=f,I}),r.partials[a.args[0]]=a.fn,o})};sPn.exports=ddt.default});var aPn=H(Bpr=>{"use strict";Bpr.__esModule=!0;Bpr.registerDefaultDecorators=pYo;function gYo(e){return e&&e.__esModule?e:{default:e}}var AYo=oPn(),dYo=gYo(AYo);function pYo(e){dYo.default(e)}});var wpr=H((pdt,cPn)=>{"use strict";pdt.__esModule=!0;var fYo=NZ(),Wve={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=fYo.indexOf(Wve.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=Wve.lookupLevel(t),typeof console<"u"&&Wve.lookupLevel(Wve.level)<=t){var r=Wve.methodMap[t];console[r]||(r="log");for(var n=arguments.length,a=Array(n>1?n-1:0),o=1;o{"use strict";Tpr.__esModule=!0;Tpr.createNewLookupObject=hYo;var IYo=NZ();function hYo(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";nMe.__esModule=!0;nMe.createProtoAccessControl=yYo;nMe.resultIsAllowed=bYo;nMe.resetLoggedProperties=SYo;function mYo(e){return e&&e.__esModule?e:{default:e}}var uPn=lPn(),CYo=wpr(),_Yo=mYo(CYo),fdt=Object.create(null);function yYo(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:uPn.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:uPn.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function bYo(e,t,r){return gPn(typeof e=="function"?t.methods:t.properties,r)}function gPn(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(EYo(t),!1)}function EYo(e){fdt[e]!==!0&&(fdt[e]=!0,_Yo.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. -You can add a runtime option to disable the check or this warning: -See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function SYo(){Object.keys(fdt).forEach(function(e){delete fdt[e]})}});var hdt=H(o8=>{"use strict";o8.__esModule=!0;o8.HandlebarsEnvironment=kpr;function APn(e){return e&&e.__esModule?e:{default:e}}var IIe=NZ(),vYo=hM(),Npr=APn(vYo),BYo=vpr(),wYo=aPn(),TYo=wpr(),Idt=APn(TYo),RYo=Rpr(),NYo="4.7.8";o8.VERSION=NYo;var DYo=8;o8.COMPILER_REVISION=DYo;var kYo=7;o8.LAST_COMPATIBLE_COMPILER_REVISION=kYo;var xYo={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};o8.REVISION_CHANGES=xYo;var Dpr="[object Object]";function kpr(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},BYo.registerDefaultHelpers(this),wYo.registerDefaultDecorators(this)}kpr.prototype={constructor:kpr,logger:Idt.default,log:Idt.default.log,registerHelper:function(t,r){if(IIe.toString.call(t)===Dpr){if(r)throw new Npr.default("Arg not supported with multiple helpers");IIe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(IIe.toString.call(t)===Dpr)IIe.extend(this.partials,t);else{if(typeof r>"u")throw new Npr.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(IIe.toString.call(t)===Dpr){if(r)throw new Npr.default("Arg not supported with multiple decorators");IIe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){RYo.resetLoggedProperties()}};var GYo=Idt.default.log;o8.log=GYo;o8.createFrame=IIe.createFrame;o8.logger=Idt.default});var pPn=H((mdt,dPn)=>{"use strict";mdt.__esModule=!0;function xpr(e){this.string=e}xpr.prototype.toString=xpr.prototype.toHTML=function(){return""+this.string};mdt.default=xpr;dPn.exports=mdt.default});var fPn=H(Gpr=>{"use strict";Gpr.__esModule=!0;Gpr.wrapHelper=FYo;function FYo(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var _Pn=H(Foe=>{"use strict";Foe.__esModule=!0;Foe.checkRevision=OYo;Foe.template=MYo;Foe.wrapProgram=Cdt;Foe.resolvePartial=HYo;Foe.invokePartial=YYo;Foe.noop=mPn;function ZYo(e){return e&&e.__esModule?e:{default:e}}function LYo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var VYo=NZ(),f$=LYo(VYo),PYo=hM(),I$=ZYo(PYo),h$=hdt(),IPn=vpr(),WYo=fPn(),hPn=Rpr();function OYo(e){var t=e&&e[0]||1,r=h$.COMPILER_REVISION;if(!(t>=h$.LAST_COMPATIBLE_COMPILER_REVISION&&t<=h$.COMPILER_REVISION))if(t{"use strict";_dt.__esModule=!0;_dt.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};yPn.exports=_dt.default});var BPn=H((ydt,vPn)=>{"use strict";ydt.__esModule=!0;function Lpr(e){return e&&e.__esModule?e:{default:e}}function Vpr(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var UYo=hdt(),bPn=Vpr(UYo),KYo=pPn(),jYo=Lpr(KYo),zYo=hM(),qYo=Lpr(zYo),$Yo=NZ(),Zpr=Vpr($Yo),eQo=_Pn(),EPn=Vpr(eQo),tQo=Fpr(),rQo=Lpr(tQo);function SPn(){var e=new bPn.HandlebarsEnvironment;return Zpr.extend(e,bPn),e.SafeString=jYo.default,e.Exception=qYo.default,e.Utils=Zpr,e.escapeExpression=Zpr.escapeExpression,e.VM=EPn,e.template=function(t){return EPn.template(t,e)},e}var iMe=SPn();iMe.create=SPn;rQo.default(iMe);iMe.default=iMe;ydt.default=iMe;vPn.exports=ydt.default});var Ppr=H((bdt,TPn)=>{"use strict";bdt.__esModule=!0;var wPn={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!wPn.helpers.scopedId(t)&&!t.depth}}};bdt.default=wPn;TPn.exports=bdt.default});var NPn=H((Edt,RPn)=>{"use strict";Edt.__esModule=!0;var nQo=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,l,A,f,I,C){var b=I.length-1;switch(f){case 1:return I[b-1];case 2:this.$=A.prepareProgram(I[b]);break;case 3:this.$=I[b];break;case 4:this.$=I[b];break;case 5:this.$=I[b];break;case 6:this.$=I[b];break;case 7:this.$=I[b];break;case 8:this.$=I[b];break;case 9:this.$={type:"CommentStatement",value:A.stripComment(I[b]),strip:A.stripFlags(I[b],I[b]),loc:A.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:I[b],value:I[b],loc:A.locInfo(this._$)};break;case 11:this.$=A.prepareRawBlock(I[b-2],I[b-1],I[b],this._$);break;case 12:this.$={path:I[b-3],params:I[b-2],hash:I[b-1]};break;case 13:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!1,this._$);break;case 14:this.$=A.prepareBlock(I[b-3],I[b-2],I[b-1],I[b],!0,this._$);break;case 15:this.$={open:I[b-5],path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 16:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 17:this.$={path:I[b-4],params:I[b-3],hash:I[b-2],blockParams:I[b-1],strip:A.stripFlags(I[b-5],I[b])};break;case 18:this.$={strip:A.stripFlags(I[b-1],I[b-1]),program:I[b]};break;case 19:var E=A.prepareBlock(I[b-2],I[b-1],I[b],I[b],!1,this._$),N=A.prepareProgram([E],I[b-1].loc);N.chained=!0,this.$={strip:I[b-2].strip,program:N,chain:!0};break;case 20:this.$=I[b];break;case 21:this.$={path:I[b-1],strip:A.stripFlags(I[b-2],I[b])};break;case 22:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 23:this.$=A.prepareMustache(I[b-3],I[b-2],I[b-1],I[b-4],A.stripFlags(I[b-4],I[b]),this._$);break;case 24:this.$={type:"PartialStatement",name:I[b-3],params:I[b-2],hash:I[b-1],indent:"",strip:A.stripFlags(I[b-4],I[b]),loc:A.locInfo(this._$)};break;case 25:this.$=A.preparePartialBlock(I[b-2],I[b-1],I[b],this._$);break;case 26:this.$={path:I[b-3],params:I[b-2],hash:I[b-1],strip:A.stripFlags(I[b-4],I[b])};break;case 27:this.$=I[b];break;case 28:this.$=I[b];break;case 29:this.$={type:"SubExpression",path:I[b-3],params:I[b-2],hash:I[b-1],loc:A.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:I[b],loc:A.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:A.id(I[b-2]),value:I[b],loc:A.locInfo(this._$)};break;case 32:this.$=A.id(I[b-1]);break;case 33:this.$=I[b];break;case 34:this.$=I[b];break;case 35:this.$={type:"StringLiteral",value:I[b],original:I[b],loc:A.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(I[b]),original:Number(I[b]),loc:A.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:I[b]==="true",original:I[b]==="true",loc:A.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:A.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:A.locInfo(this._$)};break;case 40:this.$=I[b];break;case 41:this.$=I[b];break;case 42:this.$=A.preparePath(!0,I[b],this._$);break;case 43:this.$=A.preparePath(!1,I[b],this._$);break;case 44:I[b-2].push({part:A.id(I[b]),original:I[b],separator:I[b-1]}),this.$=I[b-2];break;case 45:this.$=[{part:A.id(I[b]),original:I[b]}];break;case 46:this.$=[];break;case 47:I[b-1].push(I[b]);break;case 48:this.$=[];break;case 49:I[b-1].push(I[b]);break;case 50:this.$=[];break;case 51:I[b-1].push(I[b]);break;case 58:this.$=[];break;case 59:I[b-1].push(I[b]);break;case 64:this.$=[];break;case 65:I[b-1].push(I[b]);break;case 70:this.$=[];break;case 71:I[b-1].push(I[b]);break;case 78:this.$=[];break;case 79:I[b-1].push(I[b]);break;case 82:this.$=[];break;case 83:I[b-1].push(I[b]);break;case 86:this.$=[];break;case 87:I[b-1].push(I[b]);break;case 90:this.$=[];break;case 91:I[b-1].push(I[b]);break;case 94:this.$=[];break;case 95:I[b-1].push(I[b]);break;case 98:this.$=[I[b]];break;case 99:I[b-1].push(I[b]);break;case 100:this.$=[I[b]];break;case 101:I[b-1].push(I[b]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,l=[0],A=[null],f=[],I=this.table,C="",b=0,E=0,N=0,B=2,F=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var Q=this.lexer.yylloc;f.push(Q);var X=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function ae(St){l.length=l.length-2*St,A.length=A.length-St,f.length=f.length-St}function ne(){var St;return St=o.lexer.lex()||1,typeof St!="number"&&(St=o.symbols_[St]||St),St}for(var ce,fe,ue,de,be,Se,De={},k,et,ct,Me;;){if(ue=l[l.length-1],this.defaultActions[ue]?de=this.defaultActions[ue]:((ce===null||typeof ce>"u")&&(ce=ne()),de=I[ue]&&I[ue][ce]),typeof de>"u"||!de.length||!de[0]){var je="";if(!N){Me=[];for(k in I[ue])this.terminals_[k]&&k>2&&Me.push("'"+this.terminals_[k]+"'");this.lexer.showPosition?je="Parse error on line "+(b+1)+`: -`+this.lexer.showPosition()+` -Expecting `+Me.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":je="Parse error on line "+(b+1)+": Unexpected "+(ce==1?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(je,{text:this.lexer.match,token:this.terminals_[ce]||ce,line:this.lexer.yylineno,loc:Q,expected:Me})}}if(de[0]instanceof Array&&de.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ue+", token: "+ce);switch(de[0]){case 1:l.push(ce),A.push(this.lexer.yytext),f.push(this.lexer.yylloc),l.push(de[1]),ce=null,fe?(ce=fe,fe=null):(E=this.lexer.yyleng,C=this.lexer.yytext,b=this.lexer.yylineno,Q=this.lexer.yylloc,N>0&&N--);break;case 2:if(et=this.productions_[de[1]][1],De.$=A[A.length-et],De._$={first_line:f[f.length-(et||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(et||1)].first_column,last_column:f[f.length-1].last_column},X&&(De._$.range=[f[f.length-(et||1)].range[0],f[f.length-1].range[1]]),Se=this.performAction.call(De,C,E,b,this.yy,de[1],A,f),typeof Se<"u")return Se;et&&(l=l.slice(0,-1*et*2),A=A.slice(0,-1*et),f=f.slice(0,-1*et)),l.push(this.productions_[de[1]][0]),A.push(De.$),f.push(De._$),ct=I[l[l.length-2]][l[l.length-1]],l.push(ct);break;case 3:return!0}}return!0}},t=function(){var n={EOF:1,parseError:function(o,l){if(this.yy.parser)this.yy.parser.parseError(o,l);else throw new Error(o)},setInput:function(o){return this._input=o,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var l=o.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var l=o.length,A=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l-1),this.offset-=l;var f=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),A.length-1&&(this.yylineno-=A.length-1);var I=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:A?(A.length===f.length?this.yylloc.first_column:0)+f[f.length-A.length].length-A[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[I[0],I[0]+this.yyleng-l]),this},more:function(){return this._more=!0,this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),l=new Array(o.length+1).join("-");return o+this.upcomingInput()+` -`+l+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,l,A,f,I,C;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),E=0;El[0].length)&&(l=A,f=E,!this.options.flex)));E++);return l?(C=l[0].match(/(?:\r\n?|\n).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+l[0].length},this.yytext+=l[0],this.match+=l[0],this.matches=l,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(l[0].length),this.matched+=l[0],o=this.performAction.call(this,this.yy,this,b[f],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var o=this.next();return typeof o<"u"?o:this.lex()},begin:function(o){this.conditionStack.push(o)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(o){this.begin(o)}};return n.options={},n.performAction=function(o,l,A,f){function I(b,E){return l.yytext=l.yytext.substring(b,l.yyleng-E+b)}var C=f;switch(A){case 0:if(l.yytext.slice(-2)==="\\\\"?(I(0,1),this.begin("mu")):l.yytext.slice(-1)==="\\"?(I(0,1),this.begin("emu")):this.begin("mu"),l.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(I(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(l.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return l.yytext=I(1,2).replace(/\\"/g,'"'),80;break;case 32:return l.yytext=I(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return l.yytext=l.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},n.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},n}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();Edt.default=nQo;RPn.exports=Edt.default});var wdt=H((Bdt,xPn)=>{"use strict";Bdt.__esModule=!0;function iQo(e){return e&&e.__esModule?e:{default:e}}var sQo=hM(),Wpr=iQo(sQo);function Sdt(){this.parents=[]}Sdt.prototype={constructor:Sdt,mutating:!1,acceptKey:function(t,r){var n=this.accept(t[r]);if(this.mutating){if(n&&!Sdt.prototype[n.type])throw new Wpr.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+t.type);t[r]=n}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new Wpr.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,n=t.length;r{"use strict";Tdt.__esModule=!0;function oQo(e){return e&&e.__esModule?e:{default:e}}var aQo=wdt(),cQo=oQo(aQo);function a8(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}a8.prototype=new cQo.default;a8.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=e.body,a=0,o=n.length;a{"use strict";mM.__esModule=!0;mM.SourceLocation=gQo;mM.id=AQo;mM.stripFlags=dQo;mM.stripComment=pQo;mM.preparePath=fQo;mM.prepareMustache=IQo;mM.prepareRawBlock=hQo;mM.prepareBlock=mQo;mM.prepareProgram=CQo;mM.preparePartialBlock=_Qo;function lQo(e){return e&&e.__esModule?e:{default:e}}var uQo=hM(),Hpr=lQo(uQo);function Ypr(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new Hpr.default(e.path.original+" doesn't match "+t,r)}}function gQo(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function AQo(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function dQo(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function pQo(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function fQo(e,t,r){r=this.locInfo(r);for(var n=e?"@":"",a=[],o=0,l=0,A=t.length;l0)throw new Hpr.default("Invalid path: "+n,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:n,loc:r}}function IQo(e,t,r,n,a,o){var l=n.charAt(3)||n.charAt(2),A=l!=="{"&&l!=="&",f=/\*/.test(n);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:A,strip:a,loc:this.locInfo(o)}}function hQo(e,t,r,n){Ypr(e,r),n=this.locInfo(n);var a={type:"Program",body:t,strip:{},loc:n};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function mQo(e,t,r,n,a,o){n&&n.path&&Ypr(e,n);var l=/\*/.test(e.open);t.blockParams=e.blockParams;var A=void 0,f=void 0;if(r){if(l)throw new Hpr.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),f=r.strip,A=r.program}return a&&(a=A,A=t,t=a),{type:l?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:A,openStrip:e.strip,inverseStrip:f,closeStrip:n&&n.strip,loc:this.locInfo(o)}}function CQo(e,t){if(!t&&e.length){var r=e[0].loc,n=e[e.length-1].loc;r&&n&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function _Qo(e,t,r,n){return Ypr(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}});var PPn=H(sMe=>{"use strict";sMe.__esModule=!0;sMe.parseWithoutProcessing=VPn;sMe.parse=TQo;function yQo(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function LPn(e){return e&&e.__esModule?e:{default:e}}var bQo=NPn(),Qpr=LPn(bQo),EQo=FPn(),SQo=LPn(EQo),vQo=ZPn(),BQo=yQo(vQo),wQo=NZ();sMe.parser=Qpr.default;var Rdt={};wQo.extend(Rdt,BQo);function VPn(e,t){if(e.type==="Program")return e;Qpr.default.yy=Rdt,Rdt.locInfo=function(n){return new Rdt.SourceLocation(t&&t.srcName,n)};var r=Qpr.default.parse(e);return r}function TQo(e,t){var r=VPn(e,t),n=new SQo.default(t);return n.accept(r)}});var HPn=H(lMe=>{"use strict";lMe.__esModule=!0;lMe.Compiler=Xpr;lMe.precompile=kQo;lMe.compile=xQo;function OPn(e){return e&&e.__esModule?e:{default:e}}var RQo=hM(),aMe=OPn(RQo),cMe=NZ(),NQo=Ppr(),oMe=OPn(NQo),DQo=[].slice;function Xpr(){}Xpr.prototype={compiler:Xpr,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var n=0;n1)throw new aMe.default("Unsupported number of partial arguments: "+n.length,t);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var l=t.indent||"";this.options.preventIndent&&l&&(this.opcode("appendContent",l),l=""),this.opcode("invokePartial",o,a,l),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){WPn(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,n){var a=t.path,o=a.parts[0],l=r!=null||n!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,l)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,n){var a=this.setupFullMustacheParams(t,r,n),o=t.path,l=o.parts[0];if(this.options.knownHelpers[l])this.opcode("invokeKnownHelper",a.length,l);else{if(this.options.knownHelpersOnly)throw new aMe.default("You specified knownHelpersOnly, but used the unknown helper "+l,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,oMe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],n=oMe.default.helpers.scopedId(t),a=!t.depth&&!n&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,n):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,n=0,a=r.length;for(this.opcode("pushHash");n=0)return[r,o]}}};function kQo(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new aMe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=r.parse(e,t),a=new r.Compiler().compile(n,t);return new r.JavaScriptCompiler().compile(a,t)}function xQo(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new aMe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=cMe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=void 0;function a(){var l=r.parse(e,t),A=new r.Compiler().compile(l,t),f=new r.JavaScriptCompiler().compile(A,t,void 0,!0);return r.template(f)}function o(l,A){return n||(n=a()),n.call(this,l,A)}return o._setup=function(l){return n||(n=a()),n._setup(l)},o._child=function(l,A,f,I){return n||(n=a()),n._child(l,A,f,I)},o}function MPn(e,t){if(e===t)return!0;if(cMe.isArray(e)&&cMe.isArray(t)&&e.length===t.length){for(var r=0;r{var YPn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Jpr.encode=function(e){if(0<=e&&e{var XPn=QPn(),Upr=5,JPn=1<>1;return t?-r:r}Kpr.encode=function(t){var r="",n,a=GQo(t);do n=a&UPn,a>>>=Upr,a>0&&(n|=KPn),r+=XPn.encode(n);while(a>0);return r};Kpr.decode=function(t,r,n){var a=t.length,o=0,l=0,A,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=XPn.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));A=!!(f&KPn),f&=UPn,o=o+(f<{function ZQo(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}fG.getArg=ZQo;var jPn=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,LQo=/^data:.+\,.+$/;function uMe(e){var t=e.match(jPn);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}fG.urlParse=uMe;function Ove(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}fG.urlGenerate=Ove;function zpr(e){var t=e,r=uMe(e);if(r){if(!r.path)return e;t=r.path}for(var n=fG.isAbsolute(t),a=t.split(/\/+/),o,l=0,A=a.length-1;A>=0;A--)o=a[A],o==="."?a.splice(A,1):o===".."?l++:l>0&&(o===""?(a.splice(A+1,l),l=0):(a.splice(A,2),l--));return t=a.join("/"),t===""&&(t=n?"/":"."),r?(r.path=t,Ove(r)):t}fG.normalize=zpr;function zPn(e,t){e===""&&(e="."),t===""&&(t=".");var r=uMe(t),n=uMe(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Ove(r);if(r||t.match(LQo))return t;if(n&&!n.host&&!n.path)return n.host=t,Ove(n);var a=t.charAt(0)==="/"?t:zpr(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,Ove(n)):a}fG.join=zPn;fG.isAbsolute=function(e){return e.charAt(0)==="/"||jPn.test(e)};function VQo(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}fG.relative=VQo;var qPn=function(){var e=Object.create(null);return!("__proto__"in e)}();function $Pn(e){return e}function PQo(e){return eWn(e)?"$"+e:e}fG.toSetString=qPn?$Pn:PQo;function WQo(e){return eWn(e)?e.slice(1):e}fG.fromSetString=qPn?$Pn:WQo;function eWn(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function OQo(e,t,r){var n=Mve(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Mve(e.name,t.name)}fG.compareByOriginalPositions=OQo;function MQo(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Mve(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Mve(e.name,t.name)}fG.compareByGeneratedPositionsDeflated=MQo;function Mve(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function HQo(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Mve(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Mve(e.name,t.name)}fG.compareByGeneratedPositionsInflated=HQo;function YQo(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}fG.parseSourceMapInput=YQo;function QQo(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=uMe(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=zPn(Ove(n),t)}return zpr(t)}fG.computeSourceURL=QQo});var efr=H(tWn=>{var qpr=Hve(),$pr=Object.prototype.hasOwnProperty,mIe=typeof Map<"u";function m$(){this._array=[],this._set=mIe?new Map:Object.create(null)}m$.fromArray=function(t,r){for(var n=new m$,a=0,o=t.length;a=0)return r}else{var n=qpr.toSetString(t);if($pr.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};m$.prototype.at=function(t){if(t>=0&&t{var rWn=Hve();function XQo(e,t){var r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||rWn.compareByGeneratedPositionsInflated(e,t)<=0}function Ndt(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Ndt.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};Ndt.prototype.add=function(t){XQo(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};Ndt.prototype.toArray=function(){return this._sorted||(this._array.sort(rWn.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};nWn.MappingList=Ndt});var tfr=H(sWn=>{var gMe=jpr(),rT=Hve(),Ddt=efr().ArraySet,JQo=iWn().MappingList;function CM(e){e||(e={}),this._file=rT.getArg(e,"file",null),this._sourceRoot=rT.getArg(e,"sourceRoot",null),this._skipValidation=rT.getArg(e,"skipValidation",!1),this._sources=new Ddt,this._names=new Ddt,this._mappings=new JQo,this._sourcesContents=null}CM.prototype._version=3;CM.fromSourceMap=function(t){var r=t.sourceRoot,n=new CM({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=rT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=rT.relative(r,a)),n._sources.has(o)||n._sources.add(o);var l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n};CM.prototype.addMapping=function(t){var r=rT.getArg(t,"generated"),n=rT.getArg(t,"original",null),a=rT.getArg(t,"source",null),o=rT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})};CM.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=rT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[rT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[rT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};CM.prototype.applySourceMap=function(t,r,n){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=rT.relative(o,a));var l=new Ddt,A=new Ddt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var I=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});I.source!=null&&(f.source=I.source,n!=null&&(f.source=rT.join(n,f.source)),o!=null&&(f.source=rT.relative(o,f.source)),f.originalLine=I.line,f.originalColumn=I.column,I.name!=null&&(f.name=I.name))}var C=f.source;C!=null&&!l.has(C)&&l.add(C);var b=f.name;b!=null&&!A.has(b)&&A.add(b)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){var I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=rT.join(n,f)),o!=null&&(f=rT.relative(o,f)),this.setSourceContent(f,I))},this)};CM.prototype._validateMapping=function(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}};CM.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray(),N=0,B=E.length;N0){if(!rT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=gMe.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=gMe.encode(b-l),l=b,f+=gMe.encode(I.originalLine-1-a),a=I.originalLine-1,f+=gMe.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=gMe.encode(C-o),o=C)),A+=f}return A};CM.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=rT.relative(r,n));var a=rT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};CM.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};CM.prototype.toString=function(){return JSON.stringify(this.toJSON())};sWn.SourceMapGenerator=CM});var oWn=H(CIe=>{CIe.GREATEST_LOWER_BOUND=1;CIe.LEAST_UPPER_BOUND=2;function rfr(e,t,r,n,a,o){var l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?rfr(l,t,r,n,a,o):o==CIe.LEAST_UPPER_BOUND?t1?rfr(e,l,r,n,a,o):o==CIe.LEAST_UPPER_BOUND?l:e<0?-1:e}CIe.search=function(t,r,n,a){if(r.length===0)return-1;var o=rfr(-1,r.length,t,r,n,a||CIe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var cWn=H(aWn=>{function nfr(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function UQo(e,t){return Math.round(e+Math.random()*(t-e))}function ifr(e,t,r,n){if(r{var id=Hve(),sfr=oWn(),Yve=efr().ArraySet,KQo=jpr(),AMe=cWn().quickSort;function F1(e,t){var r=e;return typeof e=="string"&&(r=id.parseSourceMapInput(e)),r.sections!=null?new hX(r,t):new Bk(r,t)}F1.fromSourceMap=function(e,t){return Bk.fromSourceMap(e,t)};F1.prototype._version=3;F1.prototype.__generatedMappings=null;Object.defineProperty(F1.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});F1.prototype.__originalMappings=null;Object.defineProperty(F1.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});F1.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};F1.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};F1.GENERATED_ORDER=1;F1.ORIGINAL_ORDER=2;F1.GREATEST_LOWER_BOUND=1;F1.LEAST_UPPER_BOUND=2;F1.prototype.eachMapping=function(t,r,n){var a=r||null,o=n||F1.GENERATED_ORDER,l;switch(o){case F1.GENERATED_ORDER:l=this._generatedMappings;break;case F1.ORIGINAL_ORDER:l=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var A=this.sourceRoot;l.map(function(f){var I=f.source===null?null:this._sources.at(f.source);return I=id.computeSourceURL(A,I,this._sourceMapURL),{source:I,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};F1.prototype.allGeneratedPositionsFor=function(t){var r=id.getArg(t,"line"),n={source:id.getArg(t,"source"),originalLine:r,originalColumn:id.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",id.compareByOriginalPositions,sfr.LEAST_UPPER_BOUND);if(o>=0){var l=this._originalMappings[o];if(t.column===void 0)for(var A=l.originalLine;l&&l.originalLine===A;)a.push({line:id.getArg(l,"generatedLine",null),column:id.getArg(l,"generatedColumn",null),lastColumn:id.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o];else for(var f=l.originalColumn;l&&l.originalLine===r&&l.originalColumn==f;)a.push({line:id.getArg(l,"generatedLine",null),column:id.getArg(l,"generatedColumn",null),lastColumn:id.getArg(l,"lastGeneratedColumn",null)}),l=this._originalMappings[++o]}return a};kdt.SourceMapConsumer=F1;function Bk(e,t){var r=e;typeof e=="string"&&(r=id.parseSourceMapInput(e));var n=id.getArg(r,"version"),a=id.getArg(r,"sources"),o=id.getArg(r,"names",[]),l=id.getArg(r,"sourceRoot",null),A=id.getArg(r,"sourcesContent",null),f=id.getArg(r,"mappings"),I=id.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);l&&(l=id.normalize(l)),a=a.map(String).map(id.normalize).map(function(C){return l&&id.isAbsolute(l)&&id.isAbsolute(C)?id.relative(l,C):C}),this._names=Yve.fromArray(o.map(String),!0),this._sources=Yve.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(C){return id.computeSourceURL(l,C,t)}),this.sourceRoot=l,this.sourcesContent=A,this._mappings=f,this._sourceMapURL=t,this.file=I}Bk.prototype=Object.create(F1.prototype);Bk.prototype.consumer=F1;Bk.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=id.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(F.source=A+X[1],A+=X[1],F.originalLine=o+X[2],o=F.originalLine,F.originalLine+=1,F.originalColumn=l+X[3],l=F.originalColumn,X.length>4&&(F.name=f+X[4],f+=X[4])),B.push(F),typeof F.originalLine=="number"&&N.push(F)}AMe(B,id.compareByGeneratedPositionsDeflated),this.__generatedMappings=B,AMe(N,id.compareByOriginalPositions),this.__originalMappings=N};Bk.prototype._findMapping=function(t,r,n,a,o,l){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return sfr.search(t,r,o,l)};Bk.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[n];if(a.generatedLine===r.generatedLine){var o=id.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=id.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var l=id.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:id.getArg(a,"originalLine",null),column:id.getArg(a,"originalColumn",null),name:l}}}return{source:null,line:null,column:null,name:null}};Bk.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};Bk.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var a=t;this.sourceRoot!=null&&(a=id.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=id.urlParse(this.sourceRoot))){var l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};Bk.prototype.generatedPositionFor=function(t){var r=id.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:id.getArg(t,"line"),originalColumn:id.getArg(t,"column")},a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",id.compareByOriginalPositions,id.getArg(t,"bias",F1.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===n.source)return{line:id.getArg(o,"generatedLine",null),column:id.getArg(o,"generatedColumn",null),lastColumn:id.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};kdt.BasicSourceMapConsumer=Bk;function hX(e,t){var r=e;typeof e=="string"&&(r=id.parseSourceMapInput(e));var n=id.getArg(r,"version"),a=id.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Yve,this._names=new Yve;var o={line:-1,column:0};this._sections=a.map(function(l){if(l.url)throw new Error("Support for url field in sections not implemented.");var A=id.getArg(l,"offset"),f=id.getArg(A,"line"),I=id.getArg(A,"column");if(f{var jQo=tfr().SourceMapGenerator,xdt=Hve(),zQo=/(\r?\n)/,qQo=10,Qve="$$$isSourceNode$$$";function VW(e,t,r,n,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[Qve]=!0,n!=null&&this.add(n)}VW.fromStringWithSourceMap=function(t,r,n){var a=new VW,o=t.split(zQo),l=0,A=function(){var E=B(),N=B()||"";return E+N;function B(){return l=0;r--)this.prepend(t[r]);else if(t[Qve]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};VW.prototype.walk=function(t){for(var r,n=0,a=this.children.length;n0){for(r=[],n=0;n{Gdt.SourceMapGenerator=tfr().SourceMapGenerator;Gdt.SourceMapConsumer=uWn().SourceMapConsumer;Gdt.SourceNode=AWn().SourceNode});var hWn=H((Fdt,IWn)=>{"use strict";Fdt.__esModule=!0;var afr=NZ(),_Ie=void 0;try{(typeof define!="function"||!define.amd)&&(pWn=dWn(),_Ie=pWn.SourceNode)}catch{}var pWn;_Ie||(_Ie=function(e,t,r,n){this.src="",n&&this.add(n)},_Ie.prototype={add:function(t){afr.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){afr.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function ofr(e,t,r){if(afr.isArray(e)){for(var n=[],a=0,o=e.length;a{"use strict";Zdt.__esModule=!0;function _Wn(e){return e&&e.__esModule?e:{default:e}}var mWn=hdt(),$Qo=hM(),cfr=_Wn($Qo),eXo=NZ(),tXo=hWn(),CWn=_Wn(tXo);function Xve(e){this.value=e}function Jve(){}Jve.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=mWn.COMPILER_REVISION,r=mWn.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,n){return eXo.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:n?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,n,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,l=void 0,A=void 0,f=void 0,I=void 0;for(f=0,I=o.length;f0&&(n+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var I=r.aliases[f];I.children&&I.referenceCount>1&&(n+=", alias"+ ++o+"="+f,I.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var l=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&l.push("blockParams"),this.useDepths&&l.push("depths");var A=this.mergeSource(n);return t?(l.push(A),Function.apply(this,l)):this.source.wrap(["function(",l.join(","),`) { - `,A,"}"])},mergeSource:function(t){var r=this.environment.isSimple,n=!this.forceBuffer,a=void 0,o=void 0,l=void 0,A=void 0;return this.source.each(function(f){f.appendToBuffer?(l?f.prepend(" + "):l=f,A=f):(l&&(o?l.prepend("buffer += "):a=!0,A.add(";"),l=A=void 0),o=!0,r||(n=!1))}),n?l?(l.prepend("return "),A.add(";")):o||this.source.push('return "";'):(t+=", buffer = "+(a?"":this.initializeBuffer()),l?(l.prepend("return buffer + "),A.add(";")):this.source.push("return buffer;")),t&&this.source.prepend("var "+t.substring(2)+(a?"":`; -`)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return` - lookupProperty = container.lookupProperty || function(parent, propertyName) { - if (Object.prototype.hasOwnProperty.call(parent, propertyName)) { - return parent[propertyName]; - } - return undefined - } - `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(t,0,n);var a=this.popStack();n.splice(1,0,a),this.push(this.source.functionCall(r,"call",n))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,n,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,n)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,n){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},resolvePath:function(t,r,n,a,o){var l=this;if(this.options.strict||this.options.assumeObjects){this.push(rXo(this.options.strict&&o,this,r,n,t));return}for(var A=r.length;nthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,n=t.length;r{"use strict";Ldt.__esModule=!0;function dMe(e){return e&&e.__esModule?e:{default:e}}var nXo=BPn(),iXo=dMe(nXo),sXo=Ppr(),oXo=dMe(sXo),lfr=PPn(),ufr=HPn(),aXo=bWn(),cXo=dMe(aXo),lXo=wdt(),uXo=dMe(lXo),gXo=Fpr(),AXo=dMe(gXo),dXo=iXo.default.create;function EWn(){var e=dXo();return e.compile=function(t,r){return ufr.compile(t,r,e)},e.precompile=function(t,r){return ufr.precompile(t,r,e)},e.AST=oXo.default,e.Compiler=ufr.Compiler,e.JavaScriptCompiler=cXo.default,e.Parser=lfr.parser,e.parse=lfr.parse,e.parseWithoutProcessing=lfr.parseWithoutProcessing,e}var Uve=EWn();Uve.create=EWn;AXo.default(Uve);Uve.Visitor=uXo.default;Uve.default=Uve;Ldt.default=Uve;SWn.exports=Ldt.default});var BWn=H(Vdt=>{"use strict";Vdt.__esModule=!0;Vdt.print=hXo;Vdt.PrintVisitor=Vv;function pXo(e){return e&&e.__esModule?e:{default:e}}var fXo=wdt(),IXo=pXo(fXo);function hXo(e){return new Vv().accept(e)}function Vv(){this.padding=0}Vv.prototype=new IXo.default;Vv.prototype.pad=function(e){for(var t="",r=0,n=this.padding;r "+t+" }}")};Vv.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};Vv.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};Vv.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};Vv.prototype.SubExpression=function(e){for(var t=e.params,r=[],n=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(Odt,"__esModule",{value:!0});Odt.LRUCache=void 0;var jve=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,PWn=new Set,Afr=typeof process=="object"&&process?process:{},WWn=(e,t,r,n)=>{typeof Afr.emitWarning=="function"?Afr.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)},Wdt=globalThis.AbortController,VWn=globalThis.AbortSignal;if(typeof Wdt>"u"){VWn=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,a){this._onabort.push(a)}},Wdt=class{constructor(){t()}signal=new VWn;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let a of this.signal._onabort)a(n);this.signal.onabort?.(n)}}};let e=Afr.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,WWn("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var vXo=e=>!PWn.has(e),Jql=Symbol("type"),Loe=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),OWn=e=>Loe(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?zve:null:null,zve=class extends Array{constructor(t){super(t),this.fill(0)}},dfr=class e{heap;length;static#e=!1;static create(t){let r=OWn(t);if(!r)return[];e.#e=!0;let n=new e(t,r);return e.#e=!1,n}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},pfr=class e{#e;#t;#n;#r;#i;#s;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#g;#l;#u;#a;#m;#f;#I;#d;#b;#h;#S;#v;#C;#E;#_;#p;static unsafeExposeInternals(t){return{starts:t.#v,ttls:t.#C,sizes:t.#S,keyMap:t.#l,keyList:t.#u,valList:t.#a,next:t.#m,prev:t.#f,get head(){return t.#I},get tail(){return t.#d},free:t.#b,isBackgroundFetch:r=>t.#A(r),backgroundFetch:(r,n,a,o)=>t.#V(r,n,a,o),moveToTail:r=>t.#W(r),indexes:r=>t.#T(r),rindexes:r=>t.#R(r),isStale:r=>t.#y(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#g}get size(){return this.#o}get fetchMethod(){return this.#i}get memoMethod(){return this.#s}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(t){let{max:r=0,ttl:n,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:l,updateAgeOnHas:A,allowStale:f,dispose:I,disposeAfter:C,noDisposeOnSet:b,noUpdateTTL:E,maxSize:N=0,maxEntrySize:B=0,sizeCalculation:F,fetchMethod:Q,memoMethod:X,noDeleteOnFetchRejection:ae,noDeleteOnStaleGet:ne,allowStaleOnFetchRejection:ce,allowStaleOnFetchAbort:fe,ignoreFetchAbort:ue}=t;if(r!==0&&!Loe(r))throw new TypeError("max option must be a nonnegative integer");let de=r?OWn(r):Array;if(!de)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=N,this.maxEntrySize=B||this.#t,this.sizeCalculation=F,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(X!==void 0&&typeof X!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#s=X,Q!==void 0&&typeof Q!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=Q,this.#_=!!Q,this.#l=new Map,this.#u=new Array(r).fill(void 0),this.#a=new Array(r).fill(void 0),this.#m=new de(r),this.#f=new de(r),this.#I=0,this.#d=0,this.#b=dfr.create(r),this.#o=0,this.#g=0,typeof I=="function"&&(this.#n=I),typeof C=="function"?(this.#r=C,this.#h=[]):(this.#r=void 0,this.#h=void 0),this.#E=!!this.#n,this.#p=!!this.#r,this.noDisposeOnSet=!!b,this.noUpdateTTL=!!E,this.noDeleteOnFetchRejection=!!ae,this.allowStaleOnFetchRejection=!!ce,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!ue,this.maxEntrySize!==0){if(this.#t!==0&&!Loe(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!Loe(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#N()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ne,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!A,this.ttlResolution=Loe(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=n||0,this.ttl){if(!Loe(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#B()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";vXo(be)&&(PWn.add(be),WWn("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#l.has(t)?1/0:0}#B(){let t=new zve(this.#e),r=new zve(this.#e);this.#C=t,this.#v=r,this.#k=(o,l,A=jve.now())=>{if(r[o]=l!==0?A:0,t[o]=l,l!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#y(o)&&this.#D(this.#u[o],"expire")},l+1);f.unref&&f.unref()}},this.#w=o=>{r[o]=t[o]!==0?jve.now():0},this.#c=(o,l)=>{if(t[l]){let A=t[l],f=r[l];if(!A||!f)return;o.ttl=A,o.start=f,o.now=n||a();let I=o.now-f;o.remainingTTL=A-I}};let n=0,a=()=>{let o=jve.now();if(this.ttlResolution>0){n=o;let l=setTimeout(()=>n=0,this.ttlResolution);l.unref&&l.unref()}return o};this.getRemainingTTL=o=>{let l=this.#l.get(o);if(l===void 0)return 0;let A=t[l],f=r[l];if(!A||!f)return 1/0;let I=(n||a())-f;return A-I},this.#y=o=>{let l=r[o],A=t[o];return!!A&&!!l&&(n||a())-l>A}}#w=()=>{};#c=()=>{};#k=()=>{};#y=()=>!1;#N(){let t=new zve(this.#e);this.#g=0,this.#S=t,this.#x=r=>{this.#g-=t[r],t[r]=0},this.#F=(r,n,a,o)=>{if(this.#A(n))return 0;if(!Loe(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(n,r),!Loe(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#G=(r,n,a)=>{if(t[r]=n,this.#t){let o=this.#t-t[r];for(;this.#g>o;)this.#L(!0)}this.#g+=t[r],a&&(a.entrySize=n,a.totalCalculatedSize=this.#g)}}#x=t=>{};#G=(t,r,n)=>{};#F=(t,r,n,a)=>{if(n||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#T({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#d;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#I));)r=this.#f[r]}*#R({allowStale:t=this.allowStale}={}){if(this.#o)for(let r=this.#I;!(!this.#Z(r)||((t||!this.#y(r))&&(yield r),r===this.#d));)r=this.#m[r]}#Z(t){return t!==void 0&&this.#l.get(this.#u[t])===t}*entries(){for(let t of this.#T())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*rentries(){for(let t of this.#R())this.#a[t]!==void 0&&this.#u[t]!==void 0&&!this.#A(this.#a[t])&&(yield[this.#u[t],this.#a[t]])}*keys(){for(let t of this.#T()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*rkeys(){for(let t of this.#R()){let r=this.#u[t];r!==void 0&&!this.#A(this.#a[t])&&(yield r)}}*values(){for(let t of this.#T())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}*rvalues(){for(let t of this.#R())this.#a[t]!==void 0&&!this.#A(this.#a[t])&&(yield this.#a[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#u[n],this))return this.get(this.#u[n],r)}}forEach(t,r=this){for(let n of this.#T()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}rforEach(t,r=this){for(let n of this.#R()){let a=this.#a[n],o=this.#A(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#u[n],this)}}purgeStale(){let t=!1;for(let r of this.#R({allowStale:!0}))this.#y(r)&&(this.#D(this.#u[r],"expire"),t=!0);return t}info(t){let r=this.#l.get(t);if(r===void 0)return;let n=this.#a[r],a=this.#A(n)?n.__staleWhileFetching:n;if(a===void 0)return;let o={value:a};if(this.#C&&this.#v){let l=this.#C[r],A=this.#v[r];if(l&&A){let f=l-(jve.now()-A);o.ttl=f,o.start=Date.now()}}return this.#S&&(o.size=this.#S[r]),o}dump(){let t=[];for(let r of this.#T({allowStale:!0})){let n=this.#u[r],a=this.#a[r],o=this.#A(a)?a.__staleWhileFetching:a;if(o===void 0||n===void 0)continue;let l={value:o};if(this.#C&&this.#v){l.ttl=this.#C[r];let A=jve.now()-this.#v[r];l.start=Math.floor(Date.now()-A)}this.#S&&(l.size=this.#S[r]),t.unshift([n,l])}return t}load(t){this.clear();for(let[r,n]of t){if(n.start){let a=Date.now()-n.start;n.start=jve.now()-a}this.set(r,n.value,n)}}set(t,r,n={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:l=this.noDisposeOnSet,sizeCalculation:A=this.sizeCalculation,status:f}=n,{noUpdateTTL:I=this.noUpdateTTL}=n,C=this.#F(t,r,n.size||0,A);if(this.maxEntrySize&&C>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#D(t,"set"),this;let b=this.#o===0?void 0:this.#l.get(t);if(b===void 0)b=this.#o===0?this.#d:this.#b.length!==0?this.#b.pop():this.#o===this.#e?this.#L(!1):this.#o,this.#u[b]=t,this.#a[b]=r,this.#l.set(t,b),this.#m[this.#d]=b,this.#f[b]=this.#d,this.#d=b,this.#o++,this.#G(b,C,f),f&&(f.set="add"),I=!1;else{this.#W(b);let E=this.#a[b];if(r!==E){if(this.#_&&this.#A(E)){E.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:N}=E;N!==void 0&&!l&&(this.#E&&this.#n?.(N,t,"set"),this.#p&&this.#h?.push([N,t,"set"]))}else l||(this.#E&&this.#n?.(E,t,"set"),this.#p&&this.#h?.push([E,t,"set"]));if(this.#x(b),this.#G(b,C,f),this.#a[b]=r,f){f.set="replace";let N=E&&this.#A(E)?E.__staleWhileFetching:E;N!==void 0&&(f.oldValue=N)}}else f&&(f.set="update")}if(a!==0&&!this.#C&&this.#B(),this.#C&&(I||this.#k(b,a,o),f&&this.#c(f,b)),!l&&this.#p&&this.#h){let E=this.#h,N;for(;N=E?.shift();)this.#r?.(...N)}return this}pop(){try{for(;this.#o;){let t=this.#a[this.#I];if(this.#L(!0),this.#A(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#p&&this.#h){let t=this.#h,r;for(;r=t?.shift();)this.#r?.(...r)}}}#L(t){let r=this.#I,n=this.#u[r],a=this.#a[r];return this.#_&&this.#A(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(a,n,"evict"),this.#p&&this.#h?.push([a,n,"evict"])),this.#x(r),t&&(this.#u[r]=void 0,this.#a[r]=void 0,this.#b.push(r)),this.#o===1?(this.#I=this.#d=0,this.#b.length=0):this.#I=this.#m[r],this.#l.delete(n),this.#o--,r}has(t,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:a}=r,o=this.#l.get(t);if(o!==void 0){let l=this.#a[o];if(this.#A(l)&&l.__staleWhileFetching===void 0)return!1;if(this.#y(o))a&&(a.has="stale",this.#c(a,o));else return n&&this.#w(o),a&&(a.has="hit",this.#c(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:n=this.allowStale}=r,a=this.#l.get(t);if(a===void 0||!n&&this.#y(a))return;let o=this.#a[a];return this.#A(o)?o.__staleWhileFetching:o}#V(t,r,n,a){let o=r===void 0?void 0:this.#a[r];if(this.#A(o))return o;let l=new Wdt,{signal:A}=n;A?.addEventListener("abort",()=>l.abort(A.reason),{signal:l.signal});let f={signal:l.signal,options:n,context:a},I=(F,Q=!1)=>{let{aborted:X}=l.signal,ae=n.ignoreFetchAbort&&F!==void 0;if(n.status&&(X&&!Q?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,ae&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),X&&!ae&&!Q)return b(l.signal.reason);let ne=N;return this.#a[r]===N&&(F===void 0?ne.__staleWhileFetching?this.#a[r]=ne.__staleWhileFetching:this.#D(t,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(t,F,f.options))),F},C=F=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=F),b(F)),b=F=>{let{aborted:Q}=l.signal,X=Q&&n.allowStaleOnFetchAbort,ae=X||n.allowStaleOnFetchRejection,ne=ae||n.noDeleteOnFetchRejection,ce=N;if(this.#a[r]===N&&(!ne||ce.__staleWhileFetching===void 0?this.#D(t,"fetch"):X||(this.#a[r]=ce.__staleWhileFetching)),ae)return n.status&&ce.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),ce.__staleWhileFetching;if(ce.__returned===ce)throw F},E=(F,Q)=>{let X=this.#i?.(t,o,f);X&&X instanceof Promise&&X.then(ae=>F(ae===void 0?void 0:ae),Q),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(F(void 0),n.allowStaleOnFetchAbort&&(F=ae=>I(ae,!0)))})};n.status&&(n.status.fetchDispatched=!0);let N=new Promise(E).then(I,C),B=Object.assign(N,{__abortController:l,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,B,{...f.options,status:void 0}),r=this.#l.get(t)):this.#a[r]=B,B}#A(t){if(!this.#_)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Wdt}async fetch(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:l=this.ttl,noDisposeOnSet:A=this.noDisposeOnSet,size:f=0,sizeCalculation:I=this.sizeCalculation,noUpdateTTL:C=this.noUpdateTTL,noDeleteOnFetchRejection:b=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:E=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:B=this.allowStaleOnFetchAbort,context:F,forceRefresh:Q=!1,status:X,signal:ae}=r;if(!this.#_)return X&&(X.fetch="get"),this.get(t,{allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:X});let ne={allowStale:n,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:l,noDisposeOnSet:A,size:f,sizeCalculation:I,noUpdateTTL:C,noDeleteOnFetchRejection:b,allowStaleOnFetchRejection:E,allowStaleOnFetchAbort:B,ignoreFetchAbort:N,status:X,signal:ae},ce=this.#l.get(t);if(ce===void 0){X&&(X.fetch="miss");let fe=this.#V(t,ce,ne,F);return fe.__returned=fe}else{let fe=this.#a[ce];if(this.#A(fe)){let De=n&&fe.__staleWhileFetching!==void 0;return X&&(X.fetch="inflight",De&&(X.returnedStale=!0)),De?fe.__staleWhileFetching:fe.__returned=fe}let ue=this.#y(ce);if(!Q&&!ue)return X&&(X.fetch="hit"),this.#W(ce),a&&this.#w(ce),X&&this.#c(X,ce),fe;let de=this.#V(t,ce,ne,F),Se=de.__staleWhileFetching!==void 0&&n;return X&&(X.fetch=ue?"stale":"refresh",Se&&ue&&(X.returnedStale=!0)),Se?de.__staleWhileFetching:de.__returned=de}}async forceFetch(t,r={}){let n=await this.fetch(t,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(t,r={}){let n=this.#s;if(!n)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...l}=r,A=this.get(t,l);if(!o&&A!==void 0)return A;let f=n(t,A,{options:l,context:a});return this.set(t,f,l),f}get(t,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:l}=r,A=this.#l.get(t);if(A!==void 0){let f=this.#a[A],I=this.#A(f);return l&&this.#c(l,A),this.#y(A)?(l&&(l.get="stale"),I?(l&&n&&f.__staleWhileFetching!==void 0&&(l.returnedStale=!0),n?f.__staleWhileFetching:void 0):(o||this.#D(t,"expire"),l&&n&&(l.returnedStale=!0),n?f:void 0)):(l&&(l.get="hit"),I?f.__staleWhileFetching:(this.#W(A),a&&this.#w(A),f))}else l&&(l.get="miss")}#P(t,r){this.#f[r]=t,this.#m[t]=r}#W(t){t!==this.#d&&(t===this.#I?this.#I=this.#m[t]:this.#P(this.#f[t],this.#m[t]),this.#P(this.#d,t),this.#d=t)}delete(t){return this.#D(t,"delete")}#D(t,r){let n=!1;if(this.#o!==0){let a=this.#l.get(t);if(a!==void 0)if(n=!0,this.#o===1)this.#O(r);else{this.#x(a);let o=this.#a[a];if(this.#A(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#p)&&(this.#E&&this.#n?.(o,t,r),this.#p&&this.#h?.push([o,t,r])),this.#l.delete(t),this.#u[a]=void 0,this.#a[a]=void 0,a===this.#d)this.#d=this.#f[a];else if(a===this.#I)this.#I=this.#m[a];else{let l=this.#f[a];this.#m[l]=this.#m[a];let A=this.#m[a];this.#f[A]=this.#f[a]}this.#o--,this.#b.push(a)}}if(this.#p&&this.#h?.length){let a=this.#h,o;for(;o=a?.shift();)this.#r?.(...o)}return n}clear(){return this.#O("delete")}#O(t){for(let r of this.#R({allowStale:!0})){let n=this.#a[r];if(this.#A(n))n.__abortController.abort(new Error("deleted"));else{let a=this.#u[r];this.#E&&this.#n?.(n,a,t),this.#p&&this.#h?.push([n,a,t])}}if(this.#l.clear(),this.#a.fill(void 0),this.#u.fill(void 0),this.#C&&this.#v&&(this.#C.fill(0),this.#v.fill(0)),this.#S&&this.#S.fill(0),this.#I=0,this.#d=0,this.#b.length=0,this.#g=0,this.#o=0,this.#p&&this.#h){let r=this.#h,n;for(;n=r?.shift();)this.#r?.(...n)}}};Odt.LRUCache=pfr});var YWn=H((Kql,HWn)=>{"use strict";var M_=(...e)=>e.every(t=>t)?e.join(""):"",nT=e=>e?encodeURIComponent(e):"",MWn=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),BXo={sshtemplate:({domain:e,user:t,project:r,committish:n})=>`git@${e}:${t}/${r}.git${M_("#",n)}`,sshurltemplate:({domain:e,user:t,project:r,committish:n})=>`git+ssh://git@${e}/${t}/${r}.git${M_("#",n)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a,path:o})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:n,treepath:a})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${nT(n||"HEAD")}/${o}${M_("#",A(l||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:n,blobpath:a,path:o,fragment:l,hashformat:A})=>`https://${e}/${t}/${r}/${a}/${nT(n||"HEAD")}/${o}${M_("#",A(l||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:n,committish:a})=>`https://${e}/${t}/${r}${M_("/",n,"/",nT(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/raw/${nT(n||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:n})=>`${e}:${t}/${r}${M_("#",n)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${M_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:MWn},Voe={};Voe.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:n,path:a})=>`https://${M_(e,"@")}raw.githubusercontent.com/${t}/${r}/${nT(n||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://codeload.${e}/${t}/${r}/tar.gz/${nT(n||"HEAD")}`,extract:e=>{let[,t,r,n,a]=e.pathname.split("/",5);if(!(n&&n!=="tree")&&(n||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};Voe.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:n,treepath:a,path:o,editpath:l})=>`https://${e}/${t}/${r}${M_("/",a,"/",nT(n||"HEAD"),"/",o,l)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/get/${nT(n||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["get"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};Voe.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:n,committish:a})=>`git+https://${M_(e,"@")}${t}/${r}/${n}.git${M_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${nT(n||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),n=r.pop();n.endsWith(".git")&&(n=n.slice(0,-4));let a=r.join("/");if(!(!a||!n))return{user:a,project:n,committish:e.hash.slice(1)}}};Voe.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${M_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${M_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:n,editpath:a})=>`https://${e}/${t}/${r}${M_("/",nT(n))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${M_("/",nT(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${M_("/",nT(r))}${M_("#",a(n))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:n,hashformat:a})=>`https://${e}/${t}${M_("/",nT(r))}${M_("#",a(n))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${M_("/",nT(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${M_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:n})=>`https://gist.githubusercontent.com/${e}/${t}/raw${M_("/",nT(r))}/${n}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${M_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${M_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${M_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${nT(t||"HEAD")}`,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(n!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+MWn(e)}};Voe.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:n,path:a})=>`https://${e}/${t}/${r}/blob/${nT(n)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}.git${M_("#",n)}`,tarballtemplate:({domain:e,user:t,project:r,committish:n})=>`https://${e}/${t}/${r}/archive/${nT(n)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,n]=e.pathname.split("/",4);if(!["archive"].includes(n)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries(Voe))Voe[e]=Object.assign({},BXo,t);HWn.exports=Voe});var Ifr=H((jql,XWn)=>{var wXo=wt("url"),ffr=(e,t,r)=>{let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)},QWn=e=>{try{return new wXo.URL(e)}catch{}},TXo=(e,t)=>{let r=e.indexOf(":"),n=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,n))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},RXo=e=>{let t=ffr(e,"@","#"),r=ffr(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),ffr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};XWn.exports=(e,t)=>{let r=t?TXo(e,t):e;return QWn(r)||QWn(RXo(r))}});var UWn=H((zql,JWn)=>{"use strict";var NXo=Ifr(),DXo=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),n=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),l=e.indexOf("@"),A=!o||t>-1&&o.index>t,f=l===-1||t>-1&&l>t,I=a===-1||t>-1&&a>t,C=n===-1||t>-1&&n>t,b=r>0,E=t>-1?e[t-1]!=="/":!e.endsWith("/"),N=!e.startsWith(".");return A&&b&&E&&N&&f&&I&&C};JWn.exports=(e,t,{gitHosts:r,protocols:n})=>{if(!e)return;let a=DXo(e)?`github:${e}`:e,o=NXo(a,n);if(!o)return;let l=r.byShortcut[o.protocol],A=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=l||A;if(!f)return;let I=r[l||A],C=null;n[o.protocol]?.auth&&(o.username||o.password)&&(C=`${o.username}${o.password?":"+o.password:""}`);let b=null,E=null,N=null,B=null;try{if(l){let F=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,Q=F.indexOf("@");Q>-1&&(F=F.slice(Q+1));let X=F.lastIndexOf("/");X>-1?(E=decodeURIComponent(F.slice(0,X)),E||(E=null),N=decodeURIComponent(F.slice(X+1))):N=decodeURIComponent(F),N.endsWith(".git")&&(N=N.slice(0,-4)),o.hash&&(b=decodeURIComponent(o.hash.slice(1))),B="shortcut"}else{if(!I.protocols.includes(o.protocol))return;let F=I.extract(o);if(!F)return;E=F.user&&decodeURIComponent(F.user),N=decodeURIComponent(F.project),b=decodeURIComponent(F.committish),B=n[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(F){if(F instanceof URIError)return;throw F}return[f,E,C,N,b,B,t]}});var mfr=H((qql,KWn)=>{"use strict";var{LRUCache:kXo}=yIe(),xXo=YWn(),GXo=UWn(),FXo=Ifr(),hfr=new kXo({max:1e3}),Mdt=class e{constructor(t,r,n,a,o,l,A={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:n,project:a,committish:o,default:l,opts:A})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let n=t+JSON.stringify(r||{});if(!hfr.has(n)){let a=GXo(t,r,{gitHosts:e.#e,protocols:e.#t});hfr.set(n,a?new e(...a):void 0)}return hfr.get(n)}static parseUrl(t){return FXo(t)}#n(t,r){if(typeof t!="function")return null;let n={...this,...this.opts,...r};n.path||(n.path=""),n.path.startsWith("/")&&(n.path=n.path.slice(1)),n.noCommittish&&(n.committish=null);let a=t(n);return n.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#n(this.sshtemplate,t)}sshurl(t){return this.#n(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#n(this.browsetemplate,t):typeof r[0]!="string"?this.#n(this.browsetreetemplate,{...r[0],path:t}):this.#n(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#n(this.browseblobtemplate,{...r[0],path:t}):this.#n(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#n(this.docstemplate,t)}bugs(t){return this.#n(this.bugstemplate,t)}https(t){return this.#n(this.httpstemplate,t)}git(t){return this.#n(this.gittemplate,t)}shortcut(t){return this.#n(this.shortcuttemplate,t)}path(t){return this.#n(this.pathtemplate,t)}tarball(t){return this.#n(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#n(this.filetemplate,{...r,path:t})}edit(t,r){return this.#n(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(xXo))Mdt.addHost(e,t);KWn.exports=Mdt});var zWn=H(($ql,jWn)=>{"use strict";var{URL:ZXo}=wt("url"),LXo=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),VXo=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),PXo=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);jWn.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new ZXo(t,"https://example.com/"),n=a=>({browse:OXo(r,a),domain:r.host,project:a[2]||null,type:WXo(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=VXo.exec(r.pathname)||[];return n(a)}if(r.host.includes("codeload.github.com")){let a=PXo.exec(r.pathname)||[];return n(a)}}return n(LXo.exec(r.pathname)||[])};function WXo({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function OXo(e,t){let n=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>n}});var Cfr=H((r$l,HXo)=>{HXo.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var $Wn=H((n$l,YXo)=>{YXo.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var eOn=H((i$l,QXo)=>{QXo.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var rOn=H((s$l,tOn)=>{"use strict";var XXo=[].concat(Cfr()).concat($Wn()),JXo=eOn();tOn.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return B&&{type:"OPERATOR",string:B}}function l(){return n(/[A-Za-z0-9-.]+/)}function A(){var B=l();if(!B)throw new Error("Expected idstring at offset "+t);return B}function f(){if(n("DocumentRef-")){var B=A();return{type:"DOCUMENTREF",string:B}}}function I(){if(n("LicenseRef-")){var B=A();return{type:"LICENSEREF",string:B}}}function C(){var B=t,F=l();if(XXo.indexOf(F)!==-1)return{type:"LICENSE",string:F};if(JXo.indexOf(F)!==-1)return{type:"EXCEPTION",string:F};t=B}function b(){return o()||f()||I()||C()}for(var E=[];r()&&(a(),!!r());){var N=b();if(!N)throw new Error("Unexpected `"+e[t]+"` at offset "+t);E.push(N)}return E}});var iOn=H((o$l,nOn)=>{"use strict";nOn.exports=function(e){var t=0;function r(){return t{"use strict";var UXo=rOn(),KXo=iOn();sOn.exports=function(e){return KXo(UXo(e))}});var pOn=H((c$l,dOn)=>{var jXo=_fr(),zXo=Cfr();function Hdt(e){try{return jXo(e),!0}catch{return!1}}function AOn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var oOn=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(AOn),qXo=0,$Xo=1,aOn=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],yfr=zXo.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),e4o=Object.keys(yfr).map(function(t){return[t,yfr[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});yfr=void 0;var cOn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(e4o).sort(AOn),t4o=0,r4o=1,lOn=function(e){for(var t=0;t-1)return n[r4o]}return null},gOn=function(e,t){for(var r=0;r-1){var o=e.replace(a,n[$Xo]),l=t(o);if(l!==null)return l}}return null};dOn.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function n(A){return r?n4o(A):A}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),Hdt(e))return n(e);var o=e.replace(/\+$/,"").trim();if(Hdt(o))return n(o);var l=lOn(e);return l!==null||(l=gOn(e,function(A){return Hdt(A)?A:lOn(A)}),l!==null)||(l=uOn(e),l!==null)||(l=gOn(e,uOn),l!==null)?n(l):null};function n4o(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var mOn=H((l$l,hOn)=>{var i4o=_fr(),s4o=pOn(),fOn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',o4o=/^SEE LICEN[CS]E IN (.+)$/;function IOn(e,t){return t.slice(0,e.length)===e}function bfr(e){if(e.hasOwnProperty("license")){var t=e.license;return IOn("LicenseRef",t)||IOn("DocumentRef",t)}else return bfr(e.left)||bfr(e.right)}hOn.exports=function(e){var t;try{t=i4o(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=o4o.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var n={validForOldPackages:!1,validForNewPackages:!1,warnings:[fOn]};if(e.trim().length!==0){var a=s4o(e);a&&n.warnings.push('license is similar to the valid expression "'+a+'"')}return n}return bfr(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[fOn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var _On=H((u$l,COn)=>{COn.exports=a4o;function a4o(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` -`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,n=t+1;for(;n{c4o.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var vOn=H((A$l,SOn)=>{var l4o=k6t(),u4o=x6t(),g4o=mOn(),Ydt=mfr(),A4o=wt("node:module"),d4o=["dependencies","devDependencies","optionalDependencies"],p4o=_On(),Efr=wt("url"),Poe=yOn(),bOn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),h4o(e.name,r,t.allowLegacyCase),A4o.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=p4o(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=Ydt.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")bOn(e.bugs)?e.bugs={email:e.bugs}:Efr.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{E4o(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&Efr.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&bOn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=Ydt.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;Efr.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!g4o(t).validForNewPackages)return this.warn("invalidLicense")}};function f4o(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function I4o(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function h4o(e,t,r){if(e.charAt(0)==="."||!(f4o(e)||I4o(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function EOn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function m4o(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,n=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+n}function C4o(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),n=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),n&&(a.email=n[1]),r&&(a.url=r[1]),a}function _4o(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(n){r[n]=t[n]}),e.dependencies=r}}function y4o(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var n={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),l=a.join("");l=l.trim(),l=l.replace(/^@/,""),n[o]=l}),n}function b4o(e,t){d4o.forEach(function(r){e[r]&&(e[r]=y4o(e[r],r,t))})}function E4o(e,t){e&&Object.keys(e).forEach(function(r){Poe.bugs[r]&&(t("typo",r,Poe.bugs[r],"bugs"),e[Poe.bugs[r]]=e[r],delete e[r])})}});var BOn=H((d$l,S4o)=>{S4o.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var ROn=H((p$l,TOn)=>{var wOn=wt("util"),Sfr=BOn();TOn.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return v4o.apply(null,e);var r=Sfr[t]?Sfr[t]:t+": '%s'";return e.unshift(r),wOn.format.apply(null,e)};function v4o(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),wOn.format(Sfr.typo,e,t)}});var wfr=H((f$l,kOn)=>{kOn.exports=NOn;var vfr=vOn();NOn.fixer=vfr;var B4o=ROn(),w4o=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],T4o=["dependencies","people","typos"],Bfr=w4o.map(function(e){return DOn(e)+"Field"});Bfr=Bfr.concat(T4o);function NOn(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),vfr.warn=function(){t(B4o.apply(null,arguments))},Bfr.forEach(function(n){vfr["fix"+DOn(n)](e,r)}),e._id=e.name+"@"+e.version}function DOn(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var Jdt=H((C$l,Tfr)=>{var Xdt=process||{},ZOn=Xdt.argv||[],Qdt=Xdt.env||{},k4o=!(Qdt.NO_COLOR||ZOn.includes("--no-color"))&&(!!Qdt.FORCE_COLOR||ZOn.includes("--color")||Xdt.platform==="win32"||(Xdt.stdout||{}).isTTY&&Qdt.TERM!=="dumb"||!!Qdt.CI),x4o=(e,t,r=e)=>n=>{let a=""+n,o=a.indexOf(t,e.length);return~o?e+G4o(a,t,r,o)+t:e+a+t},G4o=(e,t,r,n)=>{let a="",o=0;do a+=e.substring(o,n)+r,o=n+t.length,n=e.indexOf(t,o);while(~n);return a+e.substring(o)},LOn=(e=k4o)=>{let t=e?x4o:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};Tfr.exports=LOn();Tfr.exports.createColors=LOn});var Rfr=H(Udt=>{Object.defineProperty(Udt,"__esModule",{value:!0});Udt.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;Udt.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var MOn=H(pMe=>{"use strict";Object.defineProperty(pMe,"__esModule",{value:!0});pMe.isIdentifierChar=OOn;pMe.isIdentifierName=V4o;pMe.isIdentifierStart=WOn;var Dfr="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",VOn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",F4o=new RegExp("["+Dfr+"]"),Z4o=new RegExp("["+Dfr+VOn+"]");Dfr=VOn=null;var POn=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],L4o=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Nfr(e,t){let r=65536;for(let n=0,a=t.length;ne)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function WOn(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&F4o.test(String.fromCharCode(e)):Nfr(e,POn)}function OOn(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Z4o.test(String.fromCharCode(e)):Nfr(e,POn)||Nfr(e,L4o)}function V4o(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(bIe,"__esModule",{value:!0});bIe.isKeyword=H4o;bIe.isReservedWord=HOn;bIe.isStrictBindOnlyReservedWord=QOn;bIe.isStrictBindReservedWord=M4o;bIe.isStrictReservedWord=YOn;var kfr={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},P4o=new Set(kfr.keyword),W4o=new Set(kfr.strict),O4o=new Set(kfr.strictBind);function HOn(e,t){return t&&e==="await"||e==="enum"}function YOn(e,t){return HOn(e,t)||W4o.has(e)}function QOn(e){return O4o.has(e)}function M4o(e,t){return YOn(e,t)||QOn(e)}function H4o(e){return P4o.has(e)}});var Gfr=H(c8=>{"use strict";Object.defineProperty(c8,"__esModule",{value:!0});Object.defineProperty(c8,"isIdentifierChar",{enumerable:!0,get:function(){return xfr.isIdentifierChar}});Object.defineProperty(c8,"isIdentifierName",{enumerable:!0,get:function(){return xfr.isIdentifierName}});Object.defineProperty(c8,"isIdentifierStart",{enumerable:!0,get:function(){return xfr.isIdentifierStart}});Object.defineProperty(c8,"isKeyword",{enumerable:!0,get:function(){return fMe.isKeyword}});Object.defineProperty(c8,"isReservedWord",{enumerable:!0,get:function(){return fMe.isReservedWord}});Object.defineProperty(c8,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return fMe.isStrictBindOnlyReservedWord}});Object.defineProperty(c8,"isStrictBindReservedWord",{enumerable:!0,get:function(){return fMe.isStrictBindReservedWord}});Object.defineProperty(c8,"isStrictReservedWord",{enumerable:!0,get:function(){return fMe.isStrictReservedWord}});var xfr=MOn(),fMe=XOn()});var r3n=H(IMe=>{"use strict";Object.defineProperty(IMe,"__esModule",{value:!0});var Ffr=Jdt(),JOn=Rfr(),UOn=Gfr();function Y4o(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:Ffr.isColorSupported}var Kdt=(e,t)=>r=>e(t(r));function zOn(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:Kdt(Kdt(e.white,e.bgRed),e.bold),gutter:e.gray,marker:Kdt(e.red,e.bold),message:Kdt(e.red,e.bold),reset:e.reset}}var Q4o=zOn(Ffr.createColors(!0)),X4o=zOn(Ffr.createColors(!1));function qOn(e){return e?Q4o:X4o}var J4o=new Set(["as","async","from","get","of","set"]),U4o=/\r\n|[\n\r\u2028\u2029]/,K4o=/^[()[\]{}]$/,$On;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if(UOn.isKeyword(r.value)||UOn.isStrictReservedWord(r.value,!0)||J4o.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="t[n](o)).join(` -`):r+=a;return r}var KOn=!1,jOn=/\r\n|[\n\r\u2028\u2029]/;function j4o(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let X=t[Q-1].length;B[Q]=[f,X-f+1]}else if(F===N)B[Q]=[0,C];else{let X=t[Q-F].length;B[Q]=[0,X]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function t3n(e,t,r={}){let n=r.forceColor||Y4o()&&r.highlightCode,a=qOn(n),o=e.split(jOn),{start:l,end:A,markerLines:f}=j4o(t,o,r),I=t.start&&typeof t.start.column=="number",C=String(A).length,E=(n?e3n(e):e).split(jOn,A).slice(l,A).map((N,B)=>{let F=l+1+B,X=` ${` ${F}`.slice(-C)} |`,ae=f[F],ne=!f[F+1];if(ae){let ce="";if(Array.isArray(ae)){let fe=N.slice(0,Math.max(ae[0]-1,0)).replace(/[^\t]/g," "),ue=ae[1]||1;ce=[` - `,a.gutter(X.replace(/\d/g," "))," ",fe,a.marker("^").repeat(ue)].join(""),ne&&r.message&&(ce+=" "+a.message(r.message))}return[a.marker(">"),a.gutter(X),N.length>0?` ${N}`:"",ce].join("")}else return` ${a.gutter(X)}${N.length>0?` ${N}`:""}`}).join(` -`);return r.message&&!I&&(E=`${" ".repeat(C+1)}${r.message} -${E}`),n?a.reset(E):E}function z4o(e,t,r,n={}){if(!KOn){KOn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),t3n(e,{start:{column:r,line:t}},n)}IMe.codeFrameColumns=t3n;IMe.default=z4o;IMe.highlight=e3n});function q4o(e,t){let r=n3n(e,` -`,t-1),n=t-r-1,a=0;for(let o=r;o>=0;o=n3n(e,` -`,o-1))a++;return{line:a,column:n}}function jdt(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let n=q4o(e,t);return r?{line:n.line+1,column:n.column+1}:n}var n3n,i3n=bc(()=>{n3n=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function Lfr(e,t,r){typeof t=="string"&&(r=t,t=void 0);let n;try{return JSON.parse(e,t)}catch(l){n=l.message}let a;e?(a=eJo(e,n),n=tJo(n)):n+=" while parsing empty string";let o=new Zfr(n);throw o.fileName=r,a&&(o.codeFrame=s3n(e,a),o.rawCodeFrame=s3n(e,a,!1)),o}var o3n,$4o,Zfr,s3n,eJo,tJo,a3n=bc(()=>{o3n=Nt(r3n(),1);i3n();$4o=e=>`\\u{${e.codePointAt(0).toString(16)}}`,Zfr=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` - -${r} -`:""}`}set message(t){this.#e=t}},s3n=(e,t,r=!0)=>(0,o3n.codeFrameColumns)(e,{start:t},{highlightCode:r}),eJo=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:n,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(n=Number(n),n===e.length){let{line:l,column:A}=jdt(e,e.length-1,{oneBased:!0});return{line:l,column:A+1}}return jdt(e,n,{oneBased:!0})},tJo=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,n)=>`"${n}"(${$4o(n)})`)});var c3n=bc(()=>{});import{fileURLToPath as rJo}from"node:url";function hMe(e){return e instanceof URL?rJo(e):e}var Vfr=bc(()=>{c3n()});var g3n={};sI(g3n,{parsePackage:()=>oJo,readPackage:()=>Wfr,readPackageSync:()=>Ofr});import nJo from"node:fs";import iJo from"node:fs/promises";import sJo from"node:path";async function Wfr({cwd:e,normalize:t=!0}={}){let r=await iJo.readFile(u3n(e),"utf8");return Pfr(r,t)}function Ofr({cwd:e,normalize:t=!0}={}){let r=nJo.readFileSync(u3n(e),"utf8");return Pfr(r,t)}function oJo(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return Pfr(a,t)}var l3n,u3n,Pfr,Mfr=bc(()=>{a3n();l3n=Nt(wfr(),1);Vfr();u3n=e=>sJo.resolve(hMe(e)??".","package.json"),Pfr=(e,t)=>{let r=typeof e=="string"?Lfr(e):e;return t&&(0,l3n.default)(r),r}});import A3n from"node:process";import aJo from"node:fs/promises";import{fileURLToPath as cJo}from"node:url";import lJo from"node:fs";import _M from"node:path";async function d3n(e,{cwd:t=A3n.cwd(),type:r="file",stopAt:n}={}){let a=_M.resolve(zdt(t)??""),{root:o}=_M.parse(a);for(n=_M.resolve(a,zdt(n??o));a&&a!==n&&a!==o;){let l=_M.isAbsolute(e)?e:_M.join(a,e);try{let A=await aJo.stat(l);if(r==="file"&&A.isFile()||r==="directory"&&A.isDirectory())return l}catch{}a=_M.dirname(a)}}function p3n(e,{cwd:t=A3n.cwd(),type:r="file",stopAt:n}={}){let a=_M.resolve(zdt(t)??""),{root:o}=_M.parse(a);for(n=_M.resolve(a,zdt(n)??o);a&&a!==n&&a!==o;){let l=_M.isAbsolute(e)?e:_M.join(a,e);try{let A=lJo.statSync(l,{throwIfNoEntry:!1});if(r==="file"&&A?.isFile()||r==="directory"&&A?.isDirectory())return l}catch{}a=_M.dirname(a)}}var zdt,f3n=bc(()=>{zdt=e=>e instanceof URL?cJo(e):e});var h3n={};sI(h3n,{readPackageUp:()=>uJo,readPackageUpSync:()=>gJo});import I3n from"node:path";async function uJo(e){let t=await d3n("package.json",e);if(t)return{packageJson:await Wfr({...e,cwd:I3n.dirname(t)}),path:t}}function gJo(e){let t=p3n("package.json",e);if(t)return{packageJson:Ofr({...e,cwd:I3n.dirname(t)}),path:t}}var m3n=bc(()=>{f3n();Mfr()});var T3n=H((Ieu,w3n)=>{"use strict";w3n.exports=function(e){return Array.isArray(e)?e:[e]}});var N3n=H((heu,R3n)=>{"use strict";R3n.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var k3n=H((meu,D3n)=>{"use strict";var EIe=N3n(),BJo=["__proto__","prototype","constructor"],wJo=e=>!e.some(t=>BJo.includes(t));function qdt(e){let t=e.split("."),r=[];for(let n=0;n{"use strict";var TJo=T3n(),x3n=k3n().get;function RJo(e){return function(t,r){var n=0;return TJo(e).some(function(a){var o,l;if(typeof a=="function"?(o=a(t),l=a(r)):typeof a=="string"?(o=x3n(t,a),l=x3n(r,a)):(o=t,l=r),o===l){n=0;return}return typeof o=="string"&&typeof l=="string"?(n=o.localeCompare(l),n!==0):(n=o{"use strict";var FJo=/[|\\{}()[\]^$+*?.]/g;J3n.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(FJo,"\\$&")}});var K3n=H((Ueu,U3n)=>{"use strict";U3n.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var zfr=H((Keu,$3n)=>{var SIe=K3n(),q3n={};for(tpt in SIe)SIe.hasOwnProperty(tpt)&&(q3n[SIe[tpt]]=tpt);var tpt,pd=$3n.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(DZ in pd)if(pd.hasOwnProperty(DZ)){if(!("channels"in pd[DZ]))throw new Error("missing channels property: "+DZ);if(!("labels"in pd[DZ]))throw new Error("missing channel labels property: "+DZ);if(pd[DZ].labels.length!==pd[DZ].channels)throw new Error("channel and label counts mismatch: "+DZ);j3n=pd[DZ].channels,z3n=pd[DZ].labels,delete pd[DZ].channels,delete pd[DZ].labels,Object.defineProperty(pd[DZ],"channels",{value:j3n}),Object.defineProperty(pd[DZ],"labels",{value:z3n})}var j3n,z3n,DZ;pd.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.min(t,r,n),o=Math.max(t,r,n),l=o-a,A,f,I;return o===a?A=0:t===o?A=(r-n)/l:r===o?A=2+(n-t)/l:n===o&&(A=4+(t-r)/l),A=Math.min(A*60,360),A<0&&(A+=360),I=(a+o)/2,o===a?f=0:I<=.5?f=l/(o+a):f=l/(2-o-a),[A,f*100,I*100]};pd.rgb.hsv=function(e){var t,r,n,a,o,l=e[0]/255,A=e[1]/255,f=e[2]/255,I=Math.max(l,A,f),C=I-Math.min(l,A,f),b=function(E){return(I-E)/6/C+1/2};return C===0?a=o=0:(o=C/I,t=b(l),r=b(A),n=b(f),l===I?a=n-r:A===I?a=1/3+t-n:f===I&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,I*100]};pd.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],a=pd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[a,o*100,n*100]};pd.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a,o,l,A;return A=Math.min(1-t,1-r,1-n),a=(1-t-A)/(1-A)||0,o=(1-r-A)/(1-A)||0,l=(1-n-A)/(1-A)||0,[a*100,o*100,l*100,A*100]};function ZJo(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}pd.rgb.keyword=function(e){var t=q3n[e];if(t)return t;var r=1/0,n;for(var a in SIe)if(SIe.hasOwnProperty(a)){var o=SIe[a],l=ZJo(e,o);l.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var a=t*.4124+r*.3576+n*.1805,o=t*.2126+r*.7152+n*.0722,l=t*.0193+r*.1192+n*.9505;return[a*100,o*100,l*100]};pd.rgb.lab=function(e){var t=pd.rgb.xyz(e),r=t[0],n=t[1],a=t[2],o,l,A;return r/=95.047,n/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*n-16,l=500*(r-n),A=200*(n-a),[o,l,A]};pd.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a,o,l,A,f;if(r===0)return f=n*255,[f,f,f];n<.5?o=n*(1+r):o=n+r-n*r,a=2*n-o,A=[0,0,0];for(var I=0;I<3;I++)l=t+1/3*-(I-1),l<0&&l++,l>1&&l--,6*l<1?f=a+(o-a)*6*l:2*l<1?f=o:3*l<2?f=a+(o-a)*(2/3-l)*6:f=a,A[I]=f*255;return A};pd.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=r,o=Math.max(n,.01),l,A;return n*=2,r*=n<=1?n:2-n,a*=o<=1?o:2-o,A=(n+r)/2,l=n===0?2*a/(o+a):2*r/(n+r),[t,l*100,A*100]};pd.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),l=255*n*(1-r),A=255*n*(1-r*o),f=255*n*(1-r*(1-o));switch(n*=255,a){case 0:return[n,f,l];case 1:return[A,n,l];case 2:return[l,n,f];case 3:return[l,A,n];case 4:return[f,l,n];case 5:return[n,l,A]}};pd.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,a=Math.max(n,.01),o,l,A;return A=(2-r)*n,o=(2-r)*a,l=r*a,l/=o<=1?o:2-o,l=l||0,A/=2,[t,l*100,A*100]};pd.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,a=r+n,o,l,A,f;a>1&&(r/=a,n/=a),o=Math.floor(6*t),l=1-n,A=6*t-o,o&1&&(A=1-A),f=r+A*(l-r);var I,C,b;switch(o){default:case 6:case 0:I=l,C=f,b=r;break;case 1:I=f,C=l,b=r;break;case 2:I=r,C=l,b=f;break;case 3:I=r,C=f,b=l;break;case 4:I=f,C=r,b=l;break;case 5:I=l,C=r,b=f;break}return[I*255,C*255,b*255]};pd.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a=e[3]/100,o,l,A;return o=1-Math.min(1,t*(1-a)+a),l=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,n*(1-a)+a),[o*255,l*255,A*255]};pd.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,a,o,l;return a=t*3.2406+r*-1.5372+n*-.4986,o=t*-.9689+r*1.8758+n*.0415,l=t*.0557+r*-.204+n*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,l=l>.0031308?1.055*Math.pow(l,1/2.4)-.055:l*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),l=Math.min(Math.max(0,l),1),[a*255,o*255,l*255]};pd.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,a=116*r-16,o=500*(t-r),l=200*(r-n),[a,o,l]};pd.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;o=(t+16)/116,a=r/500+o,l=o-n/200;var A=Math.pow(o,3),f=Math.pow(a,3),I=Math.pow(l,3);return o=A>.008856?A:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,l=I>.008856?I:(l-16/116)/7.787,a*=95.047,o*=100,l*=108.883,[a,o,l]};pd.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return a=Math.atan2(n,r),o=a*360/2/Math.PI,o<0&&(o+=360),l=Math.sqrt(r*r+n*n),[t,l,o]};pd.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],a,o,l;return l=n/360*2*Math.PI,a=r*Math.cos(l),o=r*Math.sin(l),[t,a,o]};pd.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],a=1 in arguments?arguments[1]:pd.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};pd.hsv.ansi16=function(e){return pd.rgb.ansi16(pd.hsv.rgb(e),e[2])};pd.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return a};pd.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[n,a,o]};pd.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,a,o]};pd.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};pd.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(A){return A+A}).join(""));var n=parseInt(r,16),a=n>>16&255,o=n>>8&255,l=n&255;return[a,o,l]};pd.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,a=Math.max(Math.max(t,r),n),o=Math.min(Math.min(t,r),n),l=a-o,A,f;return l<1?A=o/(1-l):A=0,l<=0?f=0:a===t?f=(r-n)/l%6:a===r?f=2+(n-t)/l:f=4+(t-r)/l+4,f/=6,f%=1,[f*360,l*100,A*100]};pd.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,a=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(a=(r-.5*n)/(1-n)),[e[0],n*100,a*100]};pd.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,a=0;return n<1&&(a=(r-n)/(1-n)),[e[0],n*100,a*100]};pd.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var a=[0,0,0],o=t%1*6,l=o%1,A=1-l,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=l,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=l;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=l,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return f=(1-r)*n,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};pd.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),a=0;return n>0&&(a=t/n),[e[0],a*100,n*100]};pd.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,a=0;return n>0&&n<.5?a=t/(2*n):n>=.5&&n<1&&(a=t/(2*(1-n))),[e[0],a*100,n*100]};pd.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};pd.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,a=n-t,o=0;return a<1&&(o=(n-a)/(1-a)),[e[0],a*100,o*100]};pd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};pd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};pd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};pd.gray.hsl=pd.gray.hsv=function(e){return[0,0,e[0]]};pd.gray.hwb=function(e){return[0,100,e[0]]};pd.gray.cmyk=function(e){return[0,0,0,e[0]]};pd.gray.lab=function(e){return[e[0],0,0]};pd.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};pd.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var t5n=H((jeu,e5n)=>{var rpt=zfr();function LJo(){for(var e={},t=Object.keys(rpt),r=t.length,n=0;n{var qfr=zfr(),OJo=t5n(),qve={},MJo=Object.keys(qfr);function HJo(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function YJo(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var a=n.length,o=0;o{"use strict";var $ve=n5n(),npt=(e,t)=>function(){return`\x1B[${e.apply($ve,arguments)+t}m`},ipt=(e,t)=>function(){let r=e.apply($ve,arguments);return`\x1B[${38+t};5;${r}m`},spt=(e,t)=>function(){let r=e.apply($ve,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function QJo(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let l of Object.keys(o)){let A=o[l];t[l]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},o[l]=t[l],e.set(A[0],A[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,n=(a,o,l)=>[a,o,l];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:npt(r,0)},t.color.ansi256={ansi256:ipt(r,0)},t.color.ansi16m={rgb:spt(n,0)},t.bgColor.ansi={ansi:npt(r,10)},t.bgColor.ansi256={ansi256:ipt(r,10)},t.bgColor.ansi16m={rgb:spt(n,10)};for(let a of Object.keys($ve)){if(typeof $ve[a]!="object")continue;let o=$ve[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=npt(o.ansi16,0),t.bgColor.ansi[a]=npt(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=ipt(o.ansi256,0),t.bgColor.ansi256[a]=ipt(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=spt(o.rgb,0),t.bgColor.ansi16m[a]=spt(o.rgb,10))}return t}Object.defineProperty(i5n,"exports",{enumerable:!0,get:QJo})});var a5n=H(($eu,o5n)=>{"use strict";o5n.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1?!0:n{"use strict";var XJo=wt("os"),mX=a5n(),IG=process.env,eBe;mX("no-color")||mX("no-colors")||mX("color=false")?eBe=!1:(mX("color")||mX("colors")||mX("color=true")||mX("color=always"))&&(eBe=!0);"FORCE_COLOR"in IG&&(eBe=IG.FORCE_COLOR.length===0||parseInt(IG.FORCE_COLOR,10)!==0);function JJo(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function UJo(e){if(eBe===!1)return 0;if(mX("color=16m")||mX("color=full")||mX("color=truecolor"))return 3;if(mX("color=256"))return 2;if(e&&!e.isTTY&&eBe!==!0)return 0;let t=eBe?1:0;if(process.platform==="win32"){let r=XJo.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in IG)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in IG)||IG.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in IG)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(IG.TEAMCITY_VERSION)?1:0;if(IG.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in IG){let r=parseInt((IG.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(IG.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(IG.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(IG.TERM)||"COLORTERM"in IG?1:(IG.TERM==="dumb",t)}function $fr(e){let t=UJo(e);return JJo(t)}c5n.exports={supportsColor:$fr,stdout:$fr(process.stdout),stderr:$fr(process.stderr)}});var p5n=H((ttu,d5n)=>{"use strict";var KJo=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,u5n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,jJo=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,zJo=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,qJo=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function A5n(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):qJo.get(e)||e}function $Jo(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),a;for(let o of n)if(!isNaN(o))r.push(Number(o));else if(a=o.match(jJo))r.push(a[2].replace(zJo,(l,A,f)=>A?A5n(A):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function eUo(e){u5n.lastIndex=0;let t=[],r;for(;(r=u5n.exec(e))!==null;){let n=r[1];if(r[2]){let a=$Jo(n,r[2]);t.push([n].concat(a))}else t.push([n])}return t}function g5n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let n=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in n))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?n=n[a].apply(n,r[a]):n=n[a]}return n}d5n.exports=(e,t)=>{let r=[],n=[],a=[];if(t.replace(KJo,(o,l,A,f,I,C)=>{if(l)a.push(A5n(l));else if(f){let b=a.join("");a=[],n.push(r.length===0?b:g5n(e,r)(b)),r.push({inverse:A,styles:eUo(f)})}else if(I){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(g5n(e,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),n.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return n.join("")}});var C5n=H((rtu,_Me)=>{"use strict";var tIr=jfr(),iT=s5n(),eIr=l5n().stdout,tUo=p5n(),I5n=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),h5n=["ansi","ansi","ansi256","ansi16m"],m5n=new Set(["gray"]),tBe=Object.create(null);function f5n(e,t){t=t||{};let r=eIr?eIr.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function CMe(e){if(!this||!(this instanceof CMe)||this.template){let t={};return f5n(t,e),t.template=function(){let r=[].slice.call(arguments);return iUo.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,CMe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=CMe,t.template}f5n(this,e)}I5n&&(iT.blue.open="\x1B[94m");for(let e of Object.keys(iT))iT[e].closeRe=new RegExp(tIr(iT[e].close),"g"),tBe[e]={get(){let t=iT[e];return opt.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};tBe.visible={get(){return opt.call(this,this._styles||[],!0,"visible")}};iT.color.closeRe=new RegExp(tIr(iT.color.close),"g");for(let e of Object.keys(iT.color.ansi))m5n.has(e)||(tBe[e]={get(){let t=this.level;return function(){let n={open:iT.color[h5n[t]][e].apply(null,arguments),close:iT.color.close,closeRe:iT.color.closeRe};return opt.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});iT.bgColor.closeRe=new RegExp(tIr(iT.bgColor.close),"g");for(let e of Object.keys(iT.bgColor.ansi)){if(m5n.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);tBe[t]={get(){let r=this.level;return function(){let a={open:iT.bgColor[h5n[r]][e].apply(null,arguments),close:iT.bgColor.close,closeRe:iT.bgColor.closeRe};return opt.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var rUo=Object.defineProperties(()=>{},tBe);function opt(e,t,r){let n=function(){return nUo.apply(n,arguments)};n._styles=e,n._empty=t;let a=this;return Object.defineProperty(n,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(n,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),n.hasGrey=this.hasGrey||r==="gray"||r==="grey",n.__proto__=rUo,n}function nUo(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(yMe,"__esModule",{value:!0});yMe.default=AUo;yMe.shouldHighlight=B5n;var _5n=Rfr(),y5n=Gfr(),nIr=sUo(Jdt(),!0);function E5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(E5n=function(n){return n?r:t})(e)}function sUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=E5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var S5n=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,nIr.createColors)(!1):nIr.default,b5n=(e,t)=>r=>e(t(r)),oUo=new Set(["as","async","from","get","of","set"]);function aUo(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:b5n(b5n(e.white,e.bgRed),e.bold)}}var cUo=/\r\n|[\n\r\u2028\u2029]/,lUo=/^[()[\]{}]$/,v5n;{let e=/^[a-z][\w-]*$/i,t=function(r,n,a){if(r.type==="name"){if((0,y5n.isKeyword)(r.value)||(0,y5n.isStrictReservedWord)(r.value,!0)||oUo.has(r.value))return"keyword";if(e.test(r.value)&&(a[n-1]==="<"||a.slice(n-2,n)==="o(l)).join(` -`):r+=a}return r}function B5n(e){return S5n.isColorSupported||e.forceColor}var rIr;function gUo(e){if(e){var t;return(t=rIr)!=null||(rIr=(0,nIr.createColors)(!0)),rIr}return S5n}function AUo(e,t={}){if(e!==""&&B5n(t)){let r=aUo(gUo(t.forceColor));return uUo(r,e)}else return e}{let e,t;yMe.getChalk=({forceColor:r})=>{var n;if((n=e)!=null||(e=C5n()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var oIr=H(apt=>{"use strict";Object.defineProperty(apt,"__esModule",{value:!0});apt.codeFrameColumns=x5n;apt.default=mUo;var T5n=w5n(),sIr=dUo(Jdt(),!0);function k5n(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(k5n=function(n){return n?r:t})(e)}function dUo(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=k5n(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var l=a?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(n,o,l):n[o]=e[o]}return n.default=e,r&&r.set(e,n),n}var pUo=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,sIr.createColors)(!1):sIr.default,R5n=(e,t)=>r=>e(t(r)),iIr;function fUo(e){if(e){var t;return(t=iIr)!=null||(iIr=(0,sIr.createColors)(!0)),iIr}return pUo}var N5n=!1;function IUo(e){return{gutter:e.gray,marker:R5n(e.red,e.bold),message:R5n(e.red,e.bold)}}var D5n=/\r\n|[\n\r\u2028\u2029]/;function hUo(e,t,r){let n=Object.assign({column:0,line:-1},e.start),a=Object.assign({},n,e.end),{linesAbove:o=2,linesBelow:l=3}=r||{},A=n.line,f=n.column,I=a.line,C=a.column,b=Math.max(A-(o+1),0),E=Math.min(t.length,I+l);A===-1&&(b=0),I===-1&&(E=t.length);let N=I-A,B={};if(N)for(let F=0;F<=N;F++){let Q=F+A;if(!f)B[Q]=!0;else if(F===0){let X=t[Q-1].length;B[Q]=[f,X-f+1]}else if(F===N)B[Q]=[0,C];else{let X=t[Q-F].length;B[Q]=[0,X]}}else f===C?f?B[A]=[f,0]:B[A]=!0:B[A]=[f,C-f];return{start:b,end:E,markerLines:B}}function x5n(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0,T5n.shouldHighlight)(r),a=fUo(r.forceColor),o=IUo(a),l=(F,Q)=>n?F(Q):Q,A=e.split(D5n),{start:f,end:I,markerLines:C}=hUo(t,A,r),b=t.start&&typeof t.start.column=="number",E=String(I).length,B=(n?(0,T5n.default)(e,r):e).split(D5n,I).slice(f,I).map((F,Q)=>{let X=f+1+Q,ne=` ${` ${X}`.slice(-E)} |`,ce=C[X],fe=!C[X+1];if(ce){let ue="";if(Array.isArray(ce)){let de=F.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` - `,l(o.gutter,ne.replace(/\d/g," "))," ",de,l(o.marker,"^").repeat(be)].join(""),fe&&r.message&&(ue+=" "+l(o.message,r.message))}return[l(o.marker,">"),l(o.gutter,ne),F.length>0?` ${F}`:"",ue].join("")}else return` ${l(o.gutter,ne)}${F.length>0?` ${F}`:""}`}).join(` -`);return r.message&&!b&&(B=`${" ".repeat(E+1)}${r.message} -${B}`),n?a.reset(B):B}function mUo(e,t,r,n={}){if(!N5n){N5n=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let l=new Error(o);l.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),x5n(e,{start:{column:r,line:t}},n)}});var Q5n=H(Lm=>{"use strict";var bMe=Symbol.for("react.element"),CUo=Symbol.for("react.portal"),_Uo=Symbol.for("react.fragment"),yUo=Symbol.for("react.strict_mode"),bUo=Symbol.for("react.profiler"),EUo=Symbol.for("react.provider"),SUo=Symbol.for("react.context"),vUo=Symbol.for("react.forward_ref"),BUo=Symbol.for("react.suspense"),wUo=Symbol.for("react.memo"),TUo=Symbol.for("react.lazy"),G5n=Symbol.iterator;function RUo(e){return e===null||typeof e!="object"?null:(e=G5n&&e[G5n]||e["@@iterator"],typeof e=="function"?e:null)}var L5n={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},V5n=Object.assign,P5n={};function rBe(e,t,r){this.props=e,this.context=t,this.refs=P5n,this.updater=r||L5n}rBe.prototype.isReactComponent={};rBe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};rBe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function W5n(){}W5n.prototype=rBe.prototype;function cIr(e,t,r){this.props=e,this.context=t,this.refs=P5n,this.updater=r||L5n}var lIr=cIr.prototype=new W5n;lIr.constructor=cIr;V5n(lIr,rBe.prototype);lIr.isPureReactComponent=!0;var F5n=Array.isArray,O5n=Object.prototype.hasOwnProperty,uIr={current:null},M5n={key:!0,ref:!0,__self:!0,__source:!0};function H5n(e,t,r){var n,a={},o=null,l=null;if(t!=null)for(n in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)O5n.call(t,n)&&!M5n.hasOwnProperty(n)&&(a[n]=t[n]);var A=arguments.length-2;if(A===1)a.children=r;else if(1{"use strict";X5n.exports=Q5n()});var AIr=H((nBe,EMe)=>{(function(){var e,t="4.17.21",r=200,n="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",A=500,f="__lodash_placeholder__",I=1,C=2,b=4,E=1,N=2,B=1,F=2,Q=4,X=8,ae=16,ne=32,ce=64,fe=128,ue=256,de=512,be=30,Se="...",De=800,k=16,et=1,ct=2,Me=3,je=1/0,St=9007199254740991,At=17976931348623157e292,Yt=NaN,Tr=4294967295,Nr=Tr-1,er=Tr>>>1,vt=[["ary",fe],["bind",B],["bindKey",F],["curry",X],["curryRight",ae],["flip",de],["partial",ne],["partialRight",ce],["rearg",ue]],xt="[object Arguments]",Zr="[object Array]",qt="[object AsyncFunction]",Xt="[object Boolean]",lr="[object Date]",cr="[object DOMException]",Ar="[object Error]",qr="[object Function]",_n="[object GeneratorFunction]",ke="[object Map]",jt="[object Number]",Fn="[object Null]",Nn="[object Object]",Hi="[object Promise]",po="[object Proxy]",Vr="[object RegExp]",xi="[object Set]",io="[object String]",ga="[object Symbol]",Ya="[object Undefined]",Gc="[object WeakMap]",cl="[object WeakSet]",Sc="[object ArrayBuffer]",Hr="[object DataView]",Wr="[object Float32Array]",Ft="[object Float64Array]",zr="[object Int8Array]",Rn="[object Int16Array]",Or="[object Int32Array]",Qi="[object Uint8Array]",ps="[object Uint8ClampedArray]",yo="[object Uint16Array]",bo="[object Uint32Array]",Qa=/\b__p \+= '';/g,gc=/\b(__p \+=) '' \+/g,Cg=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Nc=/&(?:amp|lt|gt|quot|#39);/g,iA=/[&<>"']/g,ma=RegExp(Nc.source),vu=RegExp(iA.source),li=/<%-([\s\S]+?)%>/g,Ei=/<%([\s\S]+?)%>/g,Ps=/<%=([\s\S]+?)%>/g,Xa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ac=/^\w*$/,Yl=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Wc=/[\\^$.*+?()[\]{}|]/g,Sg=RegExp(Wc.source),Ul=/^\s+/,Xu=/\s/,Da=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,pu=/\{\n\/\* \[wrapped with (.+)\] \*/,_g=/,? & /,mI=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Qh=/[()=,{}\[\]\/\s]/,Ri=/\\(\\)?/g,Do=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Wt=/\w*$/,Hu=/^[-+]0x[0-9a-f]+$/i,Ru=/^0b[01]+$/i,Vs=/^\[object .+?Constructor\]$/,Ju=/^0o[0-7]+$/i,Yn=/^(?:0|[1-9]\d*)$/,Ko=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Eg=/($^)/,OA=/['\n\r\u2028\u2029\\]/g,GA="\\ud800-\\udfff",$i="\\u0300-\\u036f",dl="\\ufe20-\\ufe2f",Uf="\\u20d0-\\u20ff",Kd=$i+dl+Uf,oA="\\u2700-\\u27bf",oo="a-z\\xdf-\\xf6\\xf8-\\xff",Ki="\\xac\\xb1\\xd7\\xf7",cc="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Xs="\\u2000-\\u206f",ws=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Gs="A-Z\\xc0-\\xd6\\xd8-\\xde",Ma="\\ufe0e\\ufe0f",Dc=Ki+cc+Xs+ws,As="['\u2019]",Tf="["+GA+"]",cm="["+Dc+"]",Fl="["+Kd+"]",rc="\\d+",sd="["+oA+"]",Om="["+oo+"]",il="[^"+GA+Dc+rc+oA+oo+Gs+"]",FA="\\ud83c[\\udffb-\\udfff]",ZA="(?:"+Fl+"|"+FA+")",El="[^"+GA+"]",yg="(?:\\ud83c[\\udde6-\\uddff]){2}",Mp="[\\ud800-\\udbff][\\udc00-\\udfff]",MA="["+Gs+"]",Er="\\u200d",Zt="(?:"+Om+"|"+il+")",yn="(?:"+MA+"|"+il+")",ls="(?:"+As+"(?:d|ll|m|re|s|t|ve))?",oa="(?:"+As+"(?:D|LL|M|RE|S|T|VE))?",Fs=ZA+"?",Wa="["+Ma+"]?",Ca="(?:"+Er+"(?:"+[El,yg,Mp].join("|")+")"+Wa+Fs+")*",ld="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Rp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",np=Wa+Fs+Ca,HA="(?:"+[sd,yg,Mp].join("|")+")"+np,df="(?:"+[El+Fl+"?",Fl,yg,Mp,Tf].join("|")+")",Zs=RegExp(As,"g"),so=RegExp(Fl,"g"),Ea=RegExp(FA+"(?="+FA+")|"+df+np,"g"),Ml=RegExp([MA+"?"+Om+"+"+ls+"(?="+[cm,MA,"$"].join("|")+")",yn+"+"+oa+"(?="+[cm,MA+Zt,"$"].join("|")+")",MA+"?"+Zt+"+"+ls,MA+"+"+oa,Rp,ld,rc,HA].join("|"),"g"),Dr=RegExp("["+Er+GA+Kd+Ma+"]"),Wn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],aa=-1,Bo={};Bo[Wr]=Bo[Ft]=Bo[zr]=Bo[Rn]=Bo[Or]=Bo[Qi]=Bo[ps]=Bo[yo]=Bo[bo]=!0,Bo[xt]=Bo[Zr]=Bo[Sc]=Bo[Xt]=Bo[Hr]=Bo[lr]=Bo[Ar]=Bo[qr]=Bo[ke]=Bo[jt]=Bo[Nn]=Bo[Vr]=Bo[xi]=Bo[io]=Bo[Gc]=!1;var us={};us[xt]=us[Zr]=us[Sc]=us[Hr]=us[Xt]=us[lr]=us[Wr]=us[Ft]=us[zr]=us[Rn]=us[Or]=us[ke]=us[jt]=us[Nn]=us[Vr]=us[xi]=us[io]=us[ga]=us[Qi]=us[ps]=us[yo]=us[bo]=!0,us[Ar]=us[qr]=us[Gc]=!1;var Ql={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},LA={"&":"&","<":"<",">":">",'"':""","'":"'"},pf={"&":"&","<":"<",">":">",""":'"',"'":"'"},ef={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ip=parseFloat,_d=parseInt,j1=typeof global=="object"&&global&&global.Object===Object&&global,pw=typeof self=="object"&&self&&self.Object===Object&&self,YA=j1||pw||Function("return this")(),Ac=typeof nBe=="object"&&nBe&&!nBe.nodeType&&nBe,Nm=Ac&&typeof EMe=="object"&&EMe&&!EMe.nodeType&&EMe,HS=Nm&&Nm.exports===Ac,jd=HS&&j1.process,dh=function(){try{var cs=Nm&&Nm.require&&Nm.require("util").types;return cs||jd&&jd.binding&&jd.binding("util")}catch{}}(),Hp=dh&&dh.isArrayBuffer,uC=dh&&dh.isDate,nE=dh&&dh.isMap,J_=dh&&dh.isRegExp,q0=dh&&dh.isSet,XE=dh&&dh.isTypedArray;function TC(cs,na,ko){switch(ko.length){case 0:return cs.call(na);case 1:return cs.call(na,ko[0]);case 2:return cs.call(na,ko[0],ko[1]);case 3:return cs.call(na,ko[0],ko[1],ko[2])}return cs.apply(na,ko)}function t_(cs,na,ko,ki){for(var Kl=-1,fd=cs==null?0:cs.length;++Kl-1}function Kf(cs,na,ko){for(var ki=-1,Kl=cs==null?0:cs.length;++ki-1;);return ko}function z1(cs,na){for(var ko=cs.length;ko--&&Yr(na,cs[ko],0)>-1;);return ko}function T_(cs,na){for(var ko=cs.length,ki=0;ko--;)cs[ko]===na&&++ki;return ki}var RC=kc(Ql),Hm=kc(LA);function YS(cs){return"\\"+ef[cs]}function Fg(cs,na){return cs==null?e:cs[na]}function hb(cs){return Dr.test(cs)}function gC(cs){return Wn.test(cs)}function NC(cs){for(var na,ko=[];!(na=cs.next()).done;)ko.push(na.value);return ko}function Y2(cs){var na=-1,ko=Array(cs.size);return cs.forEach(function(ki,Kl){ko[++na]=[Kl,ki]}),ko}function U_(cs,na){return function(ko){return cs(na(ko))}}function DC(cs,na){for(var ko=-1,ki=cs.length,Kl=0,fd=[];++ko-1}function yb(ie,he){var ze=this.__data__,Ut=gB(ze,ie);return Ut<0?(++this.size,ze.push([ie,he])):ze[Ut][1]=he,this}N_.prototype.clear=e1,N_.prototype.delete=t1,N_.prototype.get=ry,N_.prototype.has=xT,N_.prototype.set=yb;function r_(ie){var he=-1,ze=ie==null?0:ie.length;for(this.clear();++he=he?ie:he)),ie}function bI(ie,he,ze,Ut,Qr,kn){var Fi,rs=he&I,qs=he&C,vc=he&b;if(ze&&(Fi=Qr?ze(ie,Ut,Qr,kn):ze(ie)),Fi!==e)return Fi;if(!WI(ie))return ie;var qa=Ed(ie);if(qa){if(Fi=IE(ie),!rs)return Cl(ie,Fi)}else{var fc=Nh(ie),vl=fc==qr||fc==_n;if(PT(ie))return cA(ie,rs);if(fc==Nn||fc==xt||vl&&!Qr){if(Fi=qs||vl?{}:zR(ie),!rs)return qs?j2(ie,b0(Fi,ie)):$f(ie,GT(Fi,ie))}else{if(!us[fc])return Qr?ie:{};Fi=e3(ie,fc,rs)}}kn||(kn=new lc);var Zu=kn.get(ie);if(Zu)return Zu;kn.set(ie,Fi),wJ(ie)?ie.forEach(function(Sd){Fi.add(bI(Sd,he,ze,Sd,ie,kn))}):Dre(ie)&&ie.forEach(function(Sd,tI){Fi.set(tI,bI(Sd,he,ze,tI,ie,kn))});var VA=vc?qs?Xr:kr:qs?Ew:S0,hf=qa?e:VA(ie);return cp(hf||ie,function(Sd,tI){hf&&(tI=Sd,Sd=ie[tI]),r1(Fi,tI,bI(Sd,he,ze,tI,ie,kn))}),Fi}function ag(ie){var he=S0(ie);return function(ze){return Eb(ze,ie,he)}}function Eb(ie,he,ze){var Ut=ze.length;if(ie==null)return!Ut;for(ie=Ld(ie);Ut--;){var Qr=ze[Ut],kn=he[Qr],Fi=ie[Qr];if(Fi===e&&!(Qr in ie)||!kn(Fi))return!1}return!0}function n1(ie,he,ze){if(typeof ie!="function")throw new Ym(a);return Dd(function(){ie.apply(e,ze)},he)}function U2(ie,he,ze,Ut){var Qr=-1,kn=lm,Fi=!0,rs=ie.length,qs=[],vc=he.length;if(!rs)return qs;ze&&(he=CI(he,lp(ze))),Ut?(kn=Kf,Fi=!1):he.length>=r&&(kn=Na,Fi=!1,he=new q_(he));e:for(;++QrQr?0:Qr+ze),Ut=Ut===e||Ut>Qr?Qr:If(Ut),Ut<0&&(Ut+=Qr),Ut=ze>Ut?0:WT(Ut);ze0&&ze(rs)?he>1?Xh(rs,he-1,ze,Ut,Qr):_I(Qr,rs):Ut||(Qr[Qr.length]=rs)}return Qr}var E0=Yu(),aA=Yu(!0);function fu(ie,he){return ie&&E0(ie,he,S0)}function Jp(ie,he){return ie&&aA(ie,he,S0)}function dC(ie,he){return pe(he,function(ze){return wx(ie[ze])})}function uE(ie,he){he=Ta(he,ie);for(var ze=0,Ut=he.length;ie!=null&&zehe}function gp(ie,he){return ie!=null&&Yp.call(ie,he)}function lF(ie,he){return ie!=null&&he in Ld(ie)}function uF(ie,he,ze){return ie>=BA(he,ze)&&ie<$I(he,ze)}function gE(ie,he,ze){for(var Ut=ze?Kf:lm,Qr=ie[0].length,kn=ie.length,Fi=kn,rs=ko(kn),qs=1/0,vc=[];Fi--;){var qa=ie[Fi];Fi&&he&&(qa=CI(qa,lp(he))),qs=BA(qa.length,qs),rs[Fi]=!ze&&(he||Qr>=120&&qa.length>=120)?new q_(Fi&&qa):e}qa=ie[0];var fc=-1,vl=rs[0];e:for(;++fc-1;)rs!==ie&&Ng.call(rs,qs,1),Ng.call(ie,qs,1);return ie}function r2(ie,he){for(var ze=ie?he.length:0,Ut=ze-1;ze--;){var Qr=he[ze];if(ze==Ut||Qr!==kn){var kn=Qr;zd(Qr)?Ng.call(ie,Qr,1):te(ie,Qr)}}return ie}function i1(ie,he){return ie+jE(zf()*(he-ie+1))}function Of(ie,he,ze,Ut){for(var Qr=-1,kn=$I(wy((he-ie)/(ze||1)),0),Fi=ko(kn);kn--;)Fi[Ut?kn:++Qr]=ie,ie+=ze;return Fi}function pE(ie,he){var ze="";if(!ie||he<1||he>St)return ze;do he%2&&(ze+=ie),he=jE(he/2),he&&(ie+=ie);while(he);return ze}function Vd(ie,he){return ji(ad(ie,he,vw),ie+"")}function j(ie){return uB(GJ(ie))}function Z(ie,he){var ze=GJ(ie);return Ap(ze,yd(he,0,ze.length))}function Id(ie,he,ze,Ut){if(!WI(ie))return ie;he=Ta(he,ie);for(var Qr=-1,kn=he.length,Fi=kn-1,rs=ie;rs!=null&&++QrQr?0:Qr+he),ze=ze>Qr?Qr:ze,ze<0&&(ze+=Qr),Qr=he>ze?0:ze-he>>>0,he>>>=0;for(var kn=ko(Qr);++Ut>>1,Fi=ie[kn];Fi!==null&&!eI(Fi)&&(ze?Fi<=he:Fi=r){var vc=he?null:Uh(ie);if(vc)return kC(vc);Fi=!1,Qr=Na,qs=new q_}else qs=he?[]:rs;e:for(;++Ut=Ut?ie:vb(ie,he,ze)}var Wg=TT||function(ie){return YA.clearTimeout(ie)};function cA(ie,he){if(he)return ie.slice();var ze=ie.length,Ut=Gn?Gn(ze):new ie.constructor(ze);return ie.copy(Ut),Ut}function th(ie){var he=new ie.constructor(ie.byteLength);return new Jr(he).set(new Jr(ie)),he}function xn(ie,he){var ze=he?th(ie.buffer):ie.buffer;return new ie.constructor(ze,ie.byteOffset,ie.byteLength)}function rn(ie){var he=new ie.constructor(ie.source,Wt.exec(ie));return he.lastIndex=ie.lastIndex,he}function Ci(ie){return X2?Ld(X2.call(ie)):{}}function Po(ie,he){var ze=he?th(ie.buffer):ie.buffer;return new ie.constructor(ze,ie.byteOffset,ie.length)}function ec(ie,he){if(ie!==he){var ze=ie!==e,Ut=ie===null,Qr=ie===ie,kn=eI(ie),Fi=he!==e,rs=he===null,qs=he===he,vc=eI(he);if(!rs&&!vc&&!kn&&ie>he||kn&&Fi&&qs&&!rs&&!vc||Ut&&Fi&&qs||!ze&&qs||!Qr)return 1;if(!Ut&&!kn&&!vc&&ie=rs)return qs;var vc=ze[Ut];return qs*(vc=="desc"?-1:1)}}return ie.index-he.index}function dc(ie,he,ze,Ut){for(var Qr=-1,kn=ie.length,Fi=ze.length,rs=-1,qs=he.length,vc=$I(kn-Fi,0),qa=ko(qs+vc),fc=!Ut;++rs1?ze[Qr-1]:e,Fi=Qr>2?ze[2]:e;for(kn=ie.length>3&&typeof kn=="function"?(Qr--,kn):e,Fi&&wA(ze[0],ze[1],Fi)&&(kn=Qr<3?e:kn,Qr=1),he=Ld(he);++Ut-1?Qr[kn?he[Fi]:Fi]:e}}function LT(ie){return Jt(function(he){var ze=he.length,Ut=ze,Qr=ey.prototype.thru;for(ie&&he.reverse();Ut--;){var kn=he[Ut];if(typeof kn!="function")throw new Ym(a);if(Qr&&!Fi&&Is(kn)=="wrapper")var Fi=new ey([],!0)}for(Ut=Fi?Ut:ze;++Ut1&&rI.reverse(),qa&&qsrs))return!1;var vc=kn.get(ie),qa=kn.get(he);if(vc&&qa)return vc==he&&qa==ie;var fc=-1,vl=!0,Zu=ze&N?new q_:e;for(kn.set(ie,he),kn.set(he,ie);++fc1?"& ":"")+he[Ut],he=he.join(ze>2?", ":" "),ie.replace(Da,`{ -/* [wrapped with `+he+`] */ -`)}function EI(ie){return Ed(ie)||_Y(ie)||!!(Rf&&ie&&ie[Rf])}function zd(ie,he){var ze=typeof ie;return he=he??St,!!he&&(ze=="number"||ze!="symbol"&&Yn.test(ie))&&ie>-1&&ie%1==0&&ie0){if(++he>=De)return arguments[0]}else he=0;return ie.apply(e,arguments)}}function Ap(ie,he){var ze=-1,Ut=ie.length,Qr=Ut-1;for(he=he===e?Ut:he;++ze1?ie[he-1]:e;return ze=typeof ze=="function"?(ie.pop(),ze):e,i3(ie,ze)});function q6(ie){var he=pn(ie);return he.__chain__=!0,he}function BL(ie,he){return he(ie),ie}function tN(ie,he){return he(ie)}var pY=Jt(function(ie){var he=ie.length,ze=he?ie[0]:0,Ut=this.__wrapped__,Qr=function(kn){return e2(kn,ie)};return he>1||this.__actions__.length||!(Ut instanceof up)||!zd(ze)?this.thru(Qr):(Ut=Ut.slice(ze,+ze+(he?1:0)),Ut.__actions__.push({func:tN,args:[Qr],thisArg:e}),new ey(Ut,this.__chain__).thru(function(kn){return he&&!kn.length&&kn.push(e),kn}))});function wL(){return q6(this)}function bre(){return new ey(this.value(),this.__chain__)}function LD(){this.__values__===e&&(this.__values__=bB(this.value()));var ie=this.__index__>=this.__values__.length,he=ie?e:this.__values__[this.__index__++];return{done:ie,value:he}}function ige(){return this}function $6(ie){for(var he,ze=this;ze instanceof J2;){var Ut=J6(ze);Ut.__index__=0,Ut.__values__=e,he?Qr.__wrapped__=Ut:he=Ut;var Qr=Ut;ze=ze.__wrapped__}return Qr.__wrapped__=ie,he}function eS(){var ie=this.__wrapped__;if(ie instanceof up){var he=ie;return this.__actions__.length&&(he=new up(this)),he=he.reverse(),he.__actions__.push({func:tN,args:[oP],thisArg:e}),new ey(he,this.__chain__)}return this.thru(oP)}function rN(){return ft(this.__wrapped__,this.__actions__)}var mJ=_x(function(ie,he,ze){Yp.call(ie,ze)?++ie[ze]:ia(ie,ze,1)});function nN(ie,he,ze){var Ut=Ed(ie)?fb:Xp;return ze&&wA(ie,he,ze)&&(he=e),Ut(ie,Rs(he,3))}function sge(ie,he){var ze=Ed(ie)?pe:Ip;return ze(ie,Rs(he,3))}var Ere=iY(uJ),e7=iY(lY);function kp(ie,he){return Xh(fC(ie,he),1)}function TL(ie,he){return Xh(fC(ie,he),je)}function fY(ie,he,ze){return ze=ze===e?1:If(ze),Xh(fC(ie,he),ze)}function pC(ie,he){var ze=Ed(ie)?cp:e0;return ze(ie,Rs(he,3))}function cP(ie,he){var ze=Ed(ie)?Mm:n_;return ze(ie,Rs(he,3))}var VD=_x(function(ie,he,ze){Yp.call(ie,ze)?ie[ze].push(he):ia(ie,ze,[he])});function IY(ie,he,ze,Ut){ie=sN(ie)?ie:GJ(ie),ze=ze&&!Ut?If(ze):0;var Qr=ie.length;return ze<0&&(ze=$I(Qr+ze,0)),TJ(ie)?ze<=Qr&&ie.indexOf(he,ze)>-1:!!Qr&&Yr(ie,he,ze)>-1}var Sre=Vd(function(ie,he,ze){var Ut=-1,Qr=typeof he=="function",kn=sN(ie)?ko(ie.length):[];return e0(ie,function(Fi){kn[++Ut]=Qr?TC(he,Fi,ze):Np(Fi,he,ze)}),kn}),Ig=_x(function(ie,he,ze){ia(ie,ze,he)});function fC(ie,he){var ze=Ed(ie)?CI:K2;return ze(ie,Rs(he,3))}function VI(ie,he,ze,Ut){return ie==null?[]:(Ed(he)||(he=he==null?[]:[he]),ze=Ut?e:ze,Ed(ze)||(ze=ze==null?[]:[ze]),qf(ie,he,ze))}var RL=_x(function(ie,he,ze){ie[ze?0:1].push(he)},function(){return[[],[]]});function bu(ie,he,ze){var Ut=Ed(ie)?H2:Nl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),ze,Qr,e0)}function s3(ie,he,ze){var Ut=Ed(ie)?iE:Nl,Qr=arguments.length<3;return Ut(ie,Rs(he,4),ze,Qr,n_)}function kd(ie,he){var ze=Ed(ie)?pe:Ip;return ze(ie,uP(Rs(he,3)))}function hY(ie){var he=Ed(ie)?uB:j;return he(ie)}function nye(ie,he,ze){(ze?wA(ie,he,ze):he===e)?he=1:he=If(he);var Ut=Ed(ie)?Ih:Z;return Ut(ie,he)}function lP(ie){var he=Ed(ie)?xC:Ny;return he(ie)}function CJ(ie){if(ie==null)return 0;if(sN(ie))return TJ(ie)?Td(ie):ie.length;var he=Nh(ie);return he==ke||he==xi?ie.size:ny(ie).length}function PI(ie,he,ze){var Ut=Ed(ie)?se:xD;return ze&&wA(ie,he,ze)&&(he=e),Ut(ie,Rs(he,3))}var xa=Vd(function(ie,he){if(ie==null)return[];var ze=he.length;return ze>1&&wA(ie,he[0],he[1])?he=[]:ze>2&&wA(he[0],he[1],he[2])&&(he=[he[0]]),qf(ie,Xh(he,1),[])}),yB=sB||function(){return YA.Date.now()};function t0(ie,he){if(typeof he!="function")throw new Ym(a);return ie=If(ie),function(){if(--ie<1)return he.apply(this,arguments)}}function vre(ie,he,ze){return he=ze?e:he,he=ie&&he==null?ie.length:he,Uu(ie,fe,e,e,e,e,he)}function NL(ie,he){var ze;if(typeof he!="function")throw new Ym(a);return ie=If(ie),function(){return--ie>0&&(ze=he.apply(this,arguments)),ie<=1&&(he=e),ze}}var dp=Vd(function(ie,he,ze){var Ut=B;if(ze.length){var Qr=DC(ze,Hs(dp));Ut|=ne}return Uu(ie,Ut,he,ze,Qr)}),Bx=Vd(function(ie,he,ze){var Ut=B|F;if(ze.length){var Qr=DC(ze,Hs(Bx));Ut|=ne}return Uu(he,Ut,ie,ze,Qr)});function mY(ie,he,ze){he=ze?e:he;var Ut=Uu(ie,X,e,e,e,e,e,he);return Ut.placeholder=mY.placeholder,Ut}function yw(ie,he,ze){he=ze?e:he;var Ut=Uu(ie,ae,e,e,e,e,e,he);return Ut.placeholder=yw.placeholder,Ut}function uc(ie,he,ze){var Ut,Qr,kn,Fi,rs,qs,vc=0,qa=!1,fc=!1,vl=!0;if(typeof ie!="function")throw new Ym(a);he=l1(he)||0,WI(ze)&&(qa=!!ze.leading,fc="maxWait"in ze,kn=fc?$I(l1(ze.maxWait)||0,he):kn,vl="trailing"in ze?!!ze.trailing:vl);function Zu(Up){var uv=Ut,ky=Qr;return Ut=Qr=e,vc=Up,Fi=ie.apply(ky,uv),Fi}function VA(Up){return vc=Up,rs=Dd(tI,he),qa?Zu(Up):Fi}function hf(Up){var uv=Up-qs,ky=Up-vc,nS=he-uv;return fc?BA(nS,kn-ky):nS}function Sd(Up){var uv=Up-qs,ky=Up-vc;return qs===e||uv>=he||uv<0||fc&&ky>=kn}function tI(){var Up=yB();if(Sd(Up))return rI(Up);rs=Dd(tI,hf(Up))}function rI(Up){return rs=e,vl&&Ut?Zu(Up):(Ut=Qr=e,Fi)}function OT(){rs!==e&&Wg(rs),vc=0,Ut=qs=Qr=rs=e}function rS(){return rs===e?Fi:rI(yB())}function Dy(){var Up=yB(),uv=Sd(Up);if(Ut=arguments,Qr=this,qs=Up,uv){if(rs===e)return VA(qs);if(fc)return Wg(rs),rs=Dd(tI,he),Zu(qs)}return rs===e&&(rs=Dd(tI,he)),Fi}return Dy.cancel=OT,Dy.flush=rS,Dy}var oge=Vd(function(ie,he){return n1(ie,1,he)}),Nu=Vd(function(ie,he,ze){return n1(ie,l1(he)||0,ze)});function CY(ie){return Uu(ie,de)}function o3(ie,he){if(typeof ie!="function"||he!=null&&typeof he!="function")throw new Ym(a);var ze=function(){var Ut=arguments,Qr=he?he.apply(this,Ut):Ut[0],kn=ze.cache;if(kn.has(Qr))return kn.get(Qr);var Fi=ie.apply(this,Ut);return ze.cache=kn.set(Qr,Fi)||kn,Fi};return ze.cache=new(o3.Cache||r_),ze}o3.Cache=r_;function uP(ie){if(typeof ie!="function")throw new Ym(a);return function(){var he=arguments;switch(he.length){case 0:return!ie.call(this);case 1:return!ie.call(this,he[0]);case 2:return!ie.call(this,he[0],he[1]);case 3:return!ie.call(this,he[0],he[1],he[2])}return!ie.apply(this,he)}}function _J(ie){return NL(2,ie)}var yJ=Sl(function(ie,he){he=he.length==1&&Ed(he[0])?CI(he[0],lp(Rs())):CI(Xh(he,1),lp(Rs()));var ze=he.length;return Vd(function(Ut){for(var Qr=-1,kn=BA(Ut.length,ze);++Qr=he}),_Y=Dm(function(){return arguments}())?Dm:function(ie){return CE(ie)&&Yp.call(ie,"callee")&&!vg.call(ie,"callee")},Ed=ko.isArray,VT=Hp?lp(Hp):Dp;function sN(ie){return ie!=null&&mE(ie.length)&&!wx(ie)}function Db(ie){return CE(ie)&&sN(ie)}function t7(ie){return ie===!0||ie===!1||CE(ie)&&Wf(ie)==Xt}var PT=NT||PJ,DL=uC?lp(uC):t2;function r7(ie){return CE(ie)&&ie.nodeType===1&&!yY(ie)}function n7(ie){if(ie==null)return!0;if(sN(ie)&&(Ed(ie)||typeof ie=="string"||typeof ie.splice=="function"||PT(ie)||c3(ie)||_Y(ie)))return!ie.length;var he=Nh(ie);if(he==ke||he==xi)return!ie.size;if(ye(ie))return!ny(ie).length;for(var ze in ie)if(Yp.call(ie,ze))return!1;return!0}function hE(ie,he){return Ro(ie,he)}function cge(ie,he,ze){ze=typeof ze=="function"?ze:e;var Ut=ze?ze(ie,he):e;return Ut===e?Ro(ie,he,e,ze):!!Ut}function Nre(ie){if(!CE(ie))return!1;var he=Wf(ie);return he==Ar||he==cr||typeof ie.message=="string"&&typeof ie.name=="string"&&!yY(ie)}function oye(ie){return typeof ie=="number"&&tf(ie)}function wx(ie){if(!WI(ie))return!1;var he=Wf(ie);return he==qr||he==_n||he==qt||he==po}function a3(ie){return typeof ie=="number"&&ie==If(ie)}function mE(ie){return typeof ie=="number"&&ie>-1&&ie%1==0&&ie<=St}function WI(ie){var he=typeof ie;return ie!=null&&(he=="object"||he=="function")}function CE(ie){return ie!=null&&typeof ie=="object"}var Dre=nE?lp(nE):AB;function lge(ie,he){return ie===he||Xc(ie,he,ho(he))}function jh(ie,he,ze){return ze=typeof ze=="function"?ze:e,Xc(ie,he,ho(he),ze)}function uge(ie){return kre(ie)&&ie!=+ie}function vJ(ie){if(z(ie))throw new Kl(n);return iu(ie)}function Lc(ie){return ie===null}function gge(ie){return ie==null}function kre(ie){return typeof ie=="number"||CE(ie)&&Wf(ie)==jt}function yY(ie){if(!CE(ie)||Wf(ie)!=Nn)return!1;var he=Ts(ie);if(he===null)return!0;var ze=Yp.call(he,"constructor")&&he.constructor;return typeof ze=="function"&&ze instanceof ze&&KE.call(ze)==fw}var kL=J_?lp(J_):dE;function BJ(ie){return a3(ie)&&ie>=-St&&ie<=St}var wJ=q0?lp(q0):yL;function TJ(ie){return typeof ie=="string"||!Ed(ie)&&CE(ie)&&Wf(ie)==io}function eI(ie){return typeof ie=="symbol"||CE(ie)&&Wf(ie)==ga}var c3=XE?lp(XE):KR;function RJ(ie){return ie===e}function l3(ie){return CE(ie)&&Nh(ie)==Gc}function i7(ie){return CE(ie)&&Wf(ie)==cl}var u3=mB(Am),cv=mB(function(ie,he){return ie<=he});function bB(ie){if(!ie)return[];if(sN(ie))return TJ(ie)?Mc(ie):Cl(ie);if(uI&&ie[uI])return NC(ie[uI]());var he=Nh(ie),ze=he==ke?Y2:he==xi?kC:GJ;return ze(ie)}function Xm(ie){if(!ie)return ie===0?ie:0;if(ie=l1(ie),ie===je||ie===-je){var he=ie<0?-1:1;return he*At}return ie===ie?ie:0}function If(ie){var he=Xm(ie),ze=he%1;return he===he?ze?he-ze:he:0}function WT(ie){return ie?yd(If(ie),0,Tr):0}function l1(ie){if(typeof ie=="number")return ie;if(eI(ie))return Yt;if(WI(ie)){var he=typeof ie.valueOf=="function"?ie.valueOf():ie;ie=WI(he)?he+"":he}if(typeof ie!="string")return ie===0?ie:+ie;ie=lI(ie);var ze=Ru.test(ie);return ze||Ju.test(ie)?_d(ie.slice(2),ze?2:8):Hu.test(ie)?Yt:+ie}function bY(ie){return wl(ie,Ew(ie))}function s7(ie){return ie?yd(If(ie),-St,St):ie===0?ie:0}function IC(ie){return ie==null?"":x(ie)}var xre=z2(function(ie,he){if(ye(he)||sN(he)){wl(he,S0(he),ie);return}for(var ze in he)Yp.call(he,ze)&&r1(ie,ze,he[ze])}),mA=z2(function(ie,he){wl(he,Ew(he),ie)}),Tx=z2(function(ie,he,ze,Ut){wl(he,Ew(he),ie,Ut)}),Gre=z2(function(ie,he,ze,Ut){wl(he,S0(he),ie,Ut)}),EB=Jt(e2);function aye(ie,he){var ze=q1(ie);return he==null?ze:GT(ze,he)}var Fre=Vd(function(ie,he){ie=Ld(ie);var ze=-1,Ut=he.length,Qr=Ut>2?he[2]:e;for(Qr&&wA(he[0],he[1],Qr)&&(Ut=1);++ze1),kn}),wl(ie,Xr(ie),ze),Ut&&(ze=bI(ze,I|C|b,oY));for(var Qr=he.length;Qr--;)te(ze,he[Qr]);return ze});function Vre(ie,he){return xL(ie,uP(Rs(he)))}var Ige=Jt(function(ie,he){return ie==null?{}:Jh(ie,he)});function xL(ie,he){if(ie==null)return{};var ze=CI(Xr(ie),function(Ut){return[Ut]});return he=Rs(he),$S(ie,ze,function(Ut,Qr){return he(Ut,Qr[0])})}function c7(ie,he,ze){he=Ta(he,ie);var Ut=-1,Qr=he.length;for(Qr||(Qr=1,ie=e);++Uthe){var Ut=ie;ie=he,he=Ut}if(ze||ie%1||he%1){var Qr=zf();return BA(ie+Qr*(he-ie+ip("1e-"+((Qr+"").length-1))),he)}return i1(ie,he)}var OD=mw(function(ie,he,ze){return he=he.toLowerCase(),ie+(ze?Cge(he):he)});function Cge(ie){return xp(IC(ie).toLowerCase())}function vY(ie){return ie=IC(ie),ie&&ie.replace(Ko,RC).replace(so,"")}function u7(ie,he,ze){ie=IC(ie),he=x(he);var Ut=ie.length;ze=ze===e?Ut:yd(If(ze),0,Ut);var Qr=ze;return ze-=he.length,ze>=0&&ie.slice(ze,Qr)==he}function sf(ie){return ie=IC(ie),ie&&vu.test(ie)?ie.replace(iA,Hm):ie}function u1(ie){return ie=IC(ie),ie&&Sg.test(ie)?ie.replace(Wc,"\\$&"):ie}var _ge=mw(function(ie,he,ze){return ie+(ze?"-":"")+he.toLowerCase()}),BY=mw(function(ie,he,ze){return ie+(ze?" ":"")+he.toLowerCase()}),lye=hB("toLowerCase");function uye(ie,he,ze){ie=IC(ie),he=If(he);var Ut=he?Td(ie):0;if(!he||Ut>=he)return ie;var Qr=(he-Ut)/2;return FD(jE(Qr),ze)+ie+FD(wy(Qr),ze)}function gye(ie,he,ze){ie=IC(ie),he=If(he);var Ut=he?Td(ie):0;return he&&Ut>>0,ze?(ie=IC(ie),ie&&(typeof he=="string"||he!=null&&!kL(he))&&(he=x(he),!he&&hb(ie))?Ho(Mc(ie),0,ze):ie.split(he,ze)):[]}var bge=mw(function(ie,he,ze){return ie+(ze?" ":"")+xp(he)});function MD(ie,he,ze){return ie=IC(ie),ze=ze==null?0:yd(If(ze),0,ie.length),he=x(he),ie.slice(ze,ze+he.length)==he}function Mre(ie,he,ze){var Ut=pn.templateSettings;ze&&wA(ie,he,ze)&&(he=e),ie=IC(ie),he=Tx({},he,Ut,iy);var Qr=Tx({},he.imports,Ut.imports,iy),kn=S0(Qr),Fi=Ib(Qr,kn),rs,qs,vc=0,qa=he.interpolate||Eg,fc="__p += '",vl=AC((he.escape||Eg).source+"|"+qa.source+"|"+(qa===Ps?Do:Eg).source+"|"+(he.evaluate||Eg).source+"|$","g"),Zu="//# sourceURL="+(Yp.call(he,"sourceURL")?(he.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++aa+"]")+` -`;ie.replace(vl,function(Sd,tI,rI,OT,rS,Dy){return rI||(rI=OT),fc+=ie.slice(vc,Dy).replace(OA,YS),tI&&(rs=!0,fc+=`' + -__e(`+tI+`) + -'`),rS&&(qs=!0,fc+=`'; -`+rS+`; -__p += '`),rI&&(fc+=`' + -((__t = (`+rI+`)) == null ? '' : __t) + -'`),vc=Dy+Sd.length,Sd}),fc+=`'; -`;var VA=Yp.call(he,"variable")&&he.variable;if(!VA)fc=`with (obj) { -`+fc+` -} -`;else if(Qh.test(VA))throw new Kl(o);fc=(qs?fc.replace(Qa,""):fc).replace(gc,"$1").replace(Cg,"$1;"),fc="function("+(VA||"obj")+`) { -`+(VA?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(rs?", __e = _.escape":"")+(qs?`, __j = Array.prototype.join; -function print() { __p += __j.call(arguments, '') } -`:`; -`)+fc+`return __p -}`;var hf=fP(function(){return fd(kn,Zu+"return "+fc).apply(e,Fi)});if(hf.source=fc,Nre(hf))throw hf;return hf}function Ege(ie){return IC(ie).toLowerCase()}function mF(ie){return IC(ie).toUpperCase()}function jFe(ie,he,ze){if(ie=IC(ie),ie&&(ze||he===e))return lI(ie);if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=Mc(he),kn=wd(Ut,Qr),Fi=z1(Ut,Qr)+1;return Ho(Ut,kn,Fi).join("")}function wY(ie,he,ze){if(ie=IC(ie),ie&&(ze||he===e))return ie.slice(0,Pf(ie)+1);if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=z1(Ut,Mc(he))+1;return Ho(Ut,0,Qr).join("")}function HD(ie,he,ze){if(ie=IC(ie),ie&&(ze||he===e))return ie.replace(Ul,"");if(!ie||!(he=x(he)))return ie;var Ut=Mc(ie),Qr=wd(Ut,Mc(he));return Ho(Ut,Qr).join("")}function CF(ie,he){var ze=be,Ut=Se;if(WI(he)){var Qr="separator"in he?he.separator:Qr;ze="length"in he?If(he.length):ze,Ut="omission"in he?x(he.omission):Ut}ie=IC(ie);var kn=ie.length;if(hb(ie)){var Fi=Mc(ie);kn=Fi.length}if(ze>=kn)return ie;var rs=ze-Td(Ut);if(rs<1)return Ut;var qs=Fi?Ho(Fi,0,rs).join(""):ie.slice(0,rs);if(Qr===e)return qs+Ut;if(Fi&&(rs+=qs.length-rs),kL(Qr)){if(ie.slice(rs).search(Qr)){var vc,qa=qs;for(Qr.global||(Qr=AC(Qr.source,IC(Wt.exec(Qr))+"g")),Qr.lastIndex=0;vc=Qr.exec(qa);)var fc=vc.index;qs=qs.slice(0,fc===e?rs:fc)}}else if(ie.indexOf(x(Qr),rs)!=rs){var vl=qs.lastIndexOf(Qr);vl>-1&&(qs=qs.slice(0,vl))}return qs+Ut}function lv(ie){return ie=IC(ie),ie&&ma.test(ie)?ie.replace(Nc,sE):ie}var TY=mw(function(ie,he,ze){return ie+(ze?" ":"")+he.toUpperCase()}),xp=hB("toUpperCase");function Aye(ie,he,ze){return ie=IC(ie),he=ze?e:he,he===e?gC(ie)?XS(ie):we(ie):ie.match(he)||[]}var fP=Vd(function(ie,he){try{return TC(ie,e,he)}catch(ze){return Nre(ze)?ze:new Kl(ze)}}),tA=Jt(function(ie,he){return cp(he,function(ze){ze=Vo(ze),ia(ie,ze,dp(ie[ze],ie))}),ie});function g1(ie){var he=ie==null?0:ie.length,ze=Rs();return ie=he?CI(ie,function(Ut){if(typeof Ut[1]!="function")throw new Ym(a);return[ze(Ut[0]),Ut[1]]}):[],Vd(function(Ut){for(var Qr=-1;++QrSt)return[];var ze=Tr,Ut=BA(ie,Tr);he=Rs(he),ie-=Tr;for(var Qr=$g(Ut,he);++ze0||he<0)?new up(ze):(ie<0?ze=ze.takeRight(-ie):ie&&(ze=ze.drop(ie)),he!==e&&(he=If(he),ze=he<0?ze.dropRight(-he):ze.take(he-ie)),ze)},up.prototype.takeRightWhile=function(ie){return this.reverse().takeWhile(ie).reverse()},up.prototype.toArray=function(){return this.take(Tr)},fu(up.prototype,function(ie,he){var ze=/^(?:filter|find|map|reject)|While$/.test(he),Ut=/^(?:head|last)$/.test(he),Qr=pn[Ut?"take"+(he=="last"?"Right":""):he],kn=Ut||/^find/.test(he);Qr&&(pn.prototype[he]=function(){var Fi=this.__wrapped__,rs=Ut?[1]:arguments,qs=Fi instanceof up,vc=rs[0],qa=qs||Ed(Fi),fc=function(tI){var rI=Qr.apply(pn,_I([tI],rs));return Ut&&vl?rI[0]:rI};qa&&ze&&typeof vc=="function"&&vc.length!=1&&(qs=qa=!1);var vl=this.__chain__,Zu=!!this.__actions__.length,VA=kn&&!vl,hf=qs&&!Zu;if(!kn&&qa){Fi=hf?Fi:new up(this);var Sd=ie.apply(Fi,rs);return Sd.__actions__.push({func:tN,args:[fc],thisArg:e}),new ey(Sd,vl)}return VA&&hf?ie.apply(this,rs):(Sd=this.thru(fc),VA?Ut?Sd.value()[0]:Sd.value():Sd)})}),cp(["pop","push","shift","sort","splice","unshift"],function(ie){var he=vy[ie],ze=/^(?:push|sort|unshift)$/.test(ie)?"tap":"thru",Ut=/^(?:pop|shift)$/.test(ie);pn.prototype[ie]=function(){var Qr=arguments;if(Ut&&!this.__chain__){var kn=this.value();return he.apply(Ed(kn)?kn:[],Qr)}return this[ze](function(Fi){return he.apply(Ed(Fi)?Fi:[],Qr)})}}),fu(up.prototype,function(ie,he){var ze=pn[he];if(ze){var Ut=ze.name+"";Yp.call(oB,Ut)||(oB[Ut]=[]),oB[Ut].push({name:he,func:ze})}}),oB[GD(e,F).name]=[{name:"wrapper",func:e}],up.prototype.clone=Iw,up.prototype.reverse=cB,up.prototype.value=RD,pn.prototype.at=pY,pn.prototype.chain=wL,pn.prototype.commit=bre,pn.prototype.next=LD,pn.prototype.plant=$6,pn.prototype.reverse=eS,pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=rN,pn.prototype.first=pn.prototype.head,uI&&(pn.prototype[uI]=ige),pn},gm=um();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(YA._=gm,define(function(){return gm})):Nm?((Nm.exports=gm)._=gm,Ac._=gm):YA._=gm}).call(nBe)});var vMe=H((atu,dIr)=>{"use strict";var bC=dIr.exports;dIr.exports.default=bC;var my="\x1B[",SMe="\x1B]",iBe="\x07",gpt=";",J5n=process.env.TERM_PROGRAM==="Apple_Terminal";bC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?my+(e+1)+"G":my+(t+1)+";"+(e+1)+"H"};bC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=my+-e+"D":e>0&&(r+=my+e+"C"),t<0?r+=my+-t+"A":t>0&&(r+=my+t+"B"),r};bC.cursorUp=(e=1)=>my+e+"A";bC.cursorDown=(e=1)=>my+e+"B";bC.cursorForward=(e=1)=>my+e+"C";bC.cursorBackward=(e=1)=>my+e+"D";bC.cursorLeft=my+"G";bC.cursorSavePosition=J5n?"\x1B7":my+"s";bC.cursorRestorePosition=J5n?"\x1B8":my+"u";bC.cursorGetPosition=my+"6n";bC.cursorNextLine=my+"E";bC.cursorPrevLine=my+"F";bC.cursorHide=my+"?25l";bC.cursorShow=my+"?25h";bC.eraseLines=e=>{let t="";for(let r=0;r[SMe,"8",gpt,gpt,t,iBe,e,SMe,"8",gpt,gpt,iBe].join("");bC.image=(e,t={})=>{let r=`${SMe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+iBe};bC.iTerm={setCwd:(e=process.cwd())=>`${SMe}50;CurrentDir=${e}${iBe}`,annotation:(e,t={})=>{let r=`${SMe}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+iBe}}});var K5n=H((ctu,pIr)=>{"use strict";var U5n=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};pIr.exports=U5n;pIr.exports.default=U5n});var z5n=H((ltu,dpt)=>{"use strict";var GUo=K5n(),Apt=new WeakMap,j5n=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(Apt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return GUo(o,e),Apt.set(o,n),o};dpt.exports=j5n;dpt.exports.default=j5n;dpt.exports.callCount=e=>{if(!Apt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return Apt.get(e)}});var q5n=H((utu,ppt)=>{ppt.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&ppt.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&ppt.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var mpt=H((gtu,aBe)=>{var S2=global.process,vIe=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};vIe(S2)?($5n=wt("assert"),sBe=q5n(),eMn=/^win/i.test(S2.platform),BMe=wt("events"),typeof BMe!="function"&&(BMe=BMe.EventEmitter),S2.__signal_exit_emitter__?zN=S2.__signal_exit_emitter__:(zN=S2.__signal_exit_emitter__=new BMe,zN.count=0,zN.emitted={}),zN.infinite||(zN.setMaxListeners(1/0),zN.infinite=!0),aBe.exports=function(e,t){if(!vIe(global.process))return function(){};$5n.equal(typeof e,"function","a callback must be provided for exit handler"),oBe===!1&&fIr();var r="exit";t&&t.alwaysLast&&(r="afterexit");var n=function(){zN.removeListener(r,e),zN.listeners("exit").length===0&&zN.listeners("afterexit").length===0&&fpt()};return zN.on(r,e),n},fpt=function(){!oBe||!vIe(global.process)||(oBe=!1,sBe.forEach(function(t){try{S2.removeListener(t,Ipt[t])}catch{}}),S2.emit=hpt,S2.reallyExit=IIr,zN.count-=1)},aBe.exports.unload=fpt,BIe=function(t,r,n){zN.emitted[t]||(zN.emitted[t]=!0,zN.emit(t,r,n))},Ipt={},sBe.forEach(function(e){Ipt[e]=function(){if(vIe(global.process)){var r=S2.listeners(e);r.length===zN.count&&(fpt(),BIe("exit",null,e),BIe("afterexit",null,e),eMn&&e==="SIGHUP"&&(e="SIGINT"),S2.kill(S2.pid,e))}}}),aBe.exports.signals=function(){return sBe},oBe=!1,fIr=function(){oBe||!vIe(global.process)||(oBe=!0,zN.count+=1,sBe=sBe.filter(function(t){try{return S2.on(t,Ipt[t]),!0}catch{return!1}}),S2.emit=rMn,S2.reallyExit=tMn)},aBe.exports.load=fIr,IIr=S2.reallyExit,tMn=function(t){vIe(global.process)&&(S2.exitCode=t||0,BIe("exit",S2.exitCode,null),BIe("afterexit",S2.exitCode,null),IIr.call(S2,S2.exitCode))},hpt=S2.emit,rMn=function(t,r){if(t==="exit"&&vIe(global.process)){r!==void 0&&(S2.exitCode=r);var n=hpt.apply(this,arguments);return BIe("exit",S2.exitCode,null),BIe("afterexit",S2.exitCode,null),n}else return hpt.apply(this,arguments)}):aBe.exports=function(){return function(){}};var $5n,sBe,eMn,BMe,zN,fpt,BIe,Ipt,oBe,fIr,IIr,tMn,hpt,rMn});var iMn=H((Atu,nMn)=>{"use strict";var FUo=z5n(),ZUo=mpt();nMn.exports=FUo(()=>{ZUo(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var lBe=H(cBe=>{"use strict";var LUo=iMn(),Cpt=!1;cBe.show=(e=process.stderr)=>{e.isTTY&&(Cpt=!1,e.write("\x1B[?25h"))};cBe.hide=(e=process.stderr)=>{e.isTTY&&(LUo(),Cpt=!0,e.write("\x1B[?25l"))};cBe.toggle=(e,t)=>{e!==void 0&&(Cpt=e),Cpt?cBe.show(t):cBe.hide(t)}});var cMn=H(wMe=>{"use strict";var aMn=wMe&&wMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wMe,"__esModule",{value:!0});var sMn=aMn(vMe()),oMn=aMn(lBe()),VUo=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(oMn.default.hide(),a=!0);let A=l+` -`;A!==n&&(n=A,e.write(sMn.default.eraseLines(r)+A),r=A.split(` -`).length)};return o.clear=()=>{e.write(sMn.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(oMn.default.show(),a=!1)},o};wMe.default={create:VUo}});var lMn=H((ftu,PUo)=>{PUo.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var AMn=H(PW=>{"use strict";var gMn=lMn(),l8=process.env;Object.defineProperty(PW,"_vendors",{value:gMn.map(function(e){return e.constant})});PW.name=null;PW.isPR=null;gMn.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(n){return uMn(n)});if(PW[e.constant]=r,r)switch(PW.name=e.name,typeof e.pr){case"string":PW.isPR=!!l8[e.pr];break;case"object":"env"in e.pr?PW.isPR=e.pr.env in l8&&l8[e.pr.env]!==e.pr.ne:"any"in e.pr?PW.isPR=e.pr.any.some(function(n){return!!l8[n]}):PW.isPR=uMn(e.pr);break;default:PW.isPR=null}});PW.isCI=!!(l8.CI||l8.CONTINUOUS_INTEGRATION||l8.BUILD_NUMBER||l8.RUN_ID||PW.name);function uMn(e){return typeof e=="string"?!!l8[e]:Object.keys(e).every(function(t){return l8[t]===e[t]})}});var hIr=H((htu,dMn)=>{"use strict";dMn.exports=AMn().isCI});var mIr=H((mtu,pMn)=>{"use strict";var WUo=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};pMn.exports=(e,{include:t,exclude:r}={})=>{let n=a=>{let o=l=>typeof l=="string"?a===l:l.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of WUo(e.constructor.prototype)){if(o==="constructor"||!n(o))continue;let l=Reflect.getOwnPropertyDescriptor(a,o);l&&typeof l.value=="function"&&(e[o]=e[o].bind(e))}return e}});var _Mn=H(M0=>{"use strict";var gBe,NMe,Ept,vIr;typeof performance=="object"&&typeof performance.now=="function"?(fMn=performance,M0.unstable_now=function(){return fMn.now()}):(CIr=Date,IMn=CIr.now(),M0.unstable_now=function(){return CIr.now()-IMn});var fMn,CIr,IMn;typeof window>"u"||typeof MessageChannel!="function"?(uBe=null,_Ir=null,yIr=function(){if(uBe!==null)try{var e=M0.unstable_now();uBe(!0,e),uBe=null}catch(t){throw setTimeout(yIr,0),t}},gBe=function(e){uBe!==null?setTimeout(gBe,0,e):(uBe=e,setTimeout(yIr,0))},NMe=function(e,t){_Ir=setTimeout(e,t)},Ept=function(){clearTimeout(_Ir)},M0.unstable_shouldYield=function(){return!1},vIr=M0.unstable_forceFrameRate=function(){}):(hMn=window.setTimeout,mMn=window.clearTimeout,typeof console<"u"&&(CMn=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof CMn!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),TMe=!1,RMe=null,_pt=-1,bIr=5,EIr=0,M0.unstable_shouldYield=function(){return M0.unstable_now()>=EIr},vIr=function(){},M0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[n];if(a!==void 0&&0bpt(l,r))f!==void 0&&0>bpt(f,l)?(e[n]=f,e[A]=r,n=A):(e[n]=l,e[o]=r,n=o);else if(f!==void 0&&0>bpt(f,r))e[n]=f,e[A]=r,n=A;else break e}}return t}return null}function bpt(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var u8=[],Woe=[],OUo=1,yM=null,hG=3,vpt=!1,wIe=!1,DMe=!1;function wIr(e){for(var t=CX(Woe);t!==null;){if(t.callback===null)Spt(Woe);else if(t.startTime<=e)Spt(Woe),t.sortIndex=t.expirationTime,BIr(u8,t);else break;t=CX(Woe)}}function TIr(e){if(DMe=!1,wIr(e),!wIe)if(CX(u8)!==null)wIe=!0,gBe(RIr);else{var t=CX(Woe);t!==null&&NMe(TIr,t.startTime-e)}}function RIr(e,t){wIe=!1,DMe&&(DMe=!1,Ept()),vpt=!0;var r=hG;try{for(wIr(t),yM=CX(u8);yM!==null&&(!(yM.expirationTime>t)||e&&!M0.unstable_shouldYield());){var n=yM.callback;if(typeof n=="function"){yM.callback=null,hG=yM.priorityLevel;var a=n(yM.expirationTime<=t);t=M0.unstable_now(),typeof a=="function"?yM.callback=a:yM===CX(u8)&&Spt(u8),wIr(t)}else Spt(u8);yM=CX(u8)}if(yM!==null)var o=!0;else{var l=CX(Woe);l!==null&&NMe(TIr,l.startTime-t),o=!1}return o}finally{yM=null,hG=r,vpt=!1}}var MUo=vIr;M0.unstable_IdlePriority=5;M0.unstable_ImmediatePriority=1;M0.unstable_LowPriority=4;M0.unstable_NormalPriority=3;M0.unstable_Profiling=null;M0.unstable_UserBlockingPriority=2;M0.unstable_cancelCallback=function(e){e.callback=null};M0.unstable_continueExecution=function(){wIe||vpt||(wIe=!0,gBe(RIr))};M0.unstable_getCurrentPriorityLevel=function(){return hG};M0.unstable_getFirstCallbackNode=function(){return CX(u8)};M0.unstable_next=function(e){switch(hG){case 1:case 2:case 3:var t=3;break;default:t=hG}var r=hG;hG=t;try{return e()}finally{hG=r}};M0.unstable_pauseExecution=function(){};M0.unstable_requestPaint=MUo;M0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=hG;hG=e;try{return t()}finally{hG=r}};M0.unstable_scheduleCallback=function(e,t,r){var n=M0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0n?(e.sortIndex=r,BIr(Woe,e),CX(u8)===null&&e===CX(Woe)&&(DMe?Ept():DMe=!0,NMe(TIr,r-n))):(e.sortIndex=a,BIr(u8,e),wIe||vpt||(wIe=!0,gBe(RIr))),e};M0.unstable_wrapCallback=function(e){var t=hG;return function(){var r=hG;hG=t;try{return e.apply(this,arguments)}finally{hG=r}}}});var kMe=H((_tu,yMn)=>{"use strict";yMn.exports=_Mn()});var Bpt=H((ytu,EMn)=>{"use strict";var bMn=Object.getOwnPropertySymbols,HUo=Object.prototype.hasOwnProperty,YUo=Object.prototype.propertyIsEnumerable;function QUo(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function XUo(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(n.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}EMn.exports=XUo()?Object.assign:function(e,t){for(var r,n=QUo(e),a,o=1;o{xMe.exports=function(t){var r={},n=Bpt(),a=Ec(),o=kMe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;teUr||Le[dr]!==ft[Ur])return` -`+Le[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Ju(x):""}var Eg=[],OA=-1;function GA(x){return{current:x}}function $i(x){0>OA||(x.current=Eg[OA],Eg[OA]=null,OA--)}function dl(x,L){OA++,Eg[OA]=x.current,x.current=L}var Uf={},Kd=GA(Uf),oA=GA(!1),oo=Uf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return Uf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Le={},ft;for(ft in te)Le[ft]=L[ft];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Le),Le}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(oA),$i(Kd)}function ws(x,L,te){if(Kd.current!==Uf)throw Error(l(168));dl(Kd,L),dl(oA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Le in Re)if(!(Le in x))throw Error(l(108,k(L)||"Unknown",Le));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||Uf,oo=Kd.current,dl(Kd,x),dl(oA,oA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,oo),Re.__reactInternalMemoizedMergedChildContext=x,$i(oA),$i(Kd),dl(Kd,x)):$i(oA),dl(oA,te)}var As=null,Tf=null,cm=o.unstable_now;cm();var Fl=0,rc=8;function sd(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Om(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function il(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function FA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Le=0,ft=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(ft!==0)Re=ft,Le=rc=15;else if(ft=te&134217727,ft!==0){var mi=ft&~dr;mi!==0?(Re=sd(mi),Le=rc):(Ur&=ft,Ur!==0&&(Re=sd(Ur),Le=rc))}else ft=te&~dr,ft!==0?(Re=sd(ft),Le=rc):Ur!==0&&(Re=sd(Ur),Le=rc);if(Re===0)return 0;if(Re=31-Er(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function MA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-Er(L),x[L]=te}var Er=Math.clz32?Math.clz32:ls,Zt=Math.log,yn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/yn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Wa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,ld=o.unstable_requestPaint,Rp=o.unstable_now,np=o.unstable_getCurrentPriorityLevel,HA=o.unstable_ImmediatePriority,df=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,so=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Ml={},Dr=ld!==void 0?ld:function(){},Wn=null,di=null,aa=!1,Bo=Rp(),us=1e4>Bo?Rp:function(){return Rp()-Bo};function Ql(){switch(np()){case HA:return 99;case df:return 98;case Zs:return 97;case so:return 96;case Ea:return 95;default:throw Error(l(332))}}function LA(x){switch(x){case 99:return HA;case 98:return df;case 97:return Zs;case 96:return so;case 95:return Ea;default:throw Error(l(332))}}function pf(x,L){return x=LA(x),oa(x,L)}function ef(x,L,te){return x=LA(x),Fs(x,L,te)}function ip(){if(di!==null){var x=di;di=null,Wa(x)}_d()}function _d(){if(!aa&&Wn!==null){aa=!0;var x=0;try{var L=Wn;pf(99,function(){for(;xIu?(Cl=dc,dc=null):Cl=dc.sibling;var wl=Ho(xn,dc,Ci[Iu],Po);if(wl===null){dc===null&&(dc=Cl);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=Cl}if(Iu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;IuIu?(Cl=dc,dc=null):Cl=dc.sibling;var $f=Ho(xn,dc,wl.value,Po);if($f===null){dc===null&&(dc=Cl);break}x&&dc&&$f.alternate===null&&L(xn,dc),rn=ft($f,rn,Iu),Ra===null?ec=$f:Ra.sibling=$f,Ra=$f,dc=Cl}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;Iu++,wl=Ci.next())wl=Sl(xn,wl.value,Po),wl!==null&&(rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;Iu++,wl=Ci.next())wl=Wg(dc,xn,Iu,wl.value,Po),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?Iu:wl.key),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(j2){return L(xn,j2)}),ec}return function(xn,rn,Ci,Po){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Le(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Le(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=Id(Ci.props.children,xn.mode,Po,Ci.key),rn.return=xn,xn=rn):(Po=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Po),Po.ref=Lr(xn,rn,Ci),Po.return=xn,xn=Po)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Le(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=Ny(Ci,xn.mode,Po),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Le(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=ev(Ci,xn.mode,Po),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return cA(xn,rn,Ci,Po);if(De(Ci))return th(xn,rn,Ci,Po);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Nl={},ca=GA(Nl),Bl=GA(Nl),$g=GA(Nl);function SA(x){if(x===Nl)throw Error(l(174));return x}function lI(x,L){dl($g,L),dl(Bl,x),dl(ca,Nl),x=Tr(L),$i(ca),dl(ca,x)}function lp(){$i(ca),$i(Bl),$i($g)}function Ib(x){var L=SA($g.current),te=SA(ca.current);L=Nr(te,x.type,L),te!==L&&(dl(Bl,x),dl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var wd=GA(0);function z1(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||pu(te)||_g(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var T_=null,RC=null,Hm=!1;function YS(x,L){var te=Of(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Fg(x,L){switch(x.tag){case 5:return L=Xu(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function hb(x){if(Hm){var L=RC;if(L){var te=L;if(!Fg(x,L)){if(L=mI(te),!L||!Fg(x,L)){x.flags=x.flags&-1025|2,Hm=!1,T_=x;return}YS(T_,te)}T_=x,RC=Qh(L)}else x.flags=x.flags&-1025|2,Hm=!1,T_=x}}function gC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;T_=x}function NC(x){if(!Nn||x!==T_)return!1;if(!Hm)return gC(x),Hm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=RC;L;)YS(x,L),L=mI(L);if(gC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));RC=Wt(x)}else RC=T_?mI(x.stateNode):null;return!0}function Y2(){Nn&&(RC=T_=null,Hm=!1)}var U_=[];function DC(){for(var x=0;xft))throw Error(l(301));ft+=1,Mc=Td=null,L.updateQueue=null,kC.current=Jr,x=te(Re,Le)}while(sE)}if(kC.current=xc,L=Td!==null&&Td.next!==null,ph=0,Mc=Td=vA=null,Pf=!1,L)throw Error(l(300));return x}function um(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function gm(){if(Td===null){var x=vA.alternate;x=x!==null?x.memoizedState:null}else x=Td.next;var L=Mc===null?vA.memoizedState:Mc.next;if(L!==null)Mc=L,Td=x;else{if(x===null)throw Error(l(310));Td=x,x={memoizedState:Td.memoizedState,baseState:Td.baseState,baseQueue:Td.baseQueue,queue:Td.queue,next:null},Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Td,Le=Re.baseQueue,ft=te.pending;if(ft!==null){if(Le!==null){var dr=Le.next;Le.next=ft.next,ft.next=dr}Re.baseQueue=Le=ft,te.pending=null}if(Le!==null){Le=Le.next,Re=Re.baseState;var Ur=dr=ft=null,mi=Le;do{var Vi=mi.lane;if((ph&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,ft=Re):Ur=Ur.next=Ta,vA.lanes|=Vi,xC|=Vi}mi=mi.next}while(mi!==null&&mi!==Le);Ur===null?ft=Re:Ur.next=dr,YA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=ft,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Le=te.pending,ft=L.memoizedState;if(Le!==null){te.pending=null;var dr=Le=Le.next;do ft=x(ft,dr.action),dr=dr.next;while(dr!==Le);YA(ft,L.memoizedState)||(Ts=!0),L.memoizedState=ft,L.baseQueue===null&&(L.baseState=ft),te.lastRenderedState=ft}return[ft,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Le=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Le!==null?x=Le===Re:(x=x.mutableReadLanes,(x=(ph&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,U_.push(L))),x)return te(L._source);throw U_.push(L),Error(l(350))}function Kl(x,L,te,Re){var Le=fh;if(Le===null)throw Error(l(349));var ft=L._getVersion,dr=ft(L._source),Ur=kC.current,mi=Ur.useState(function(){return ki(Le,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var Sl=x.memoizedState,Ho=Sl.refs,Wg=Ho.getSnapshot,cA=Sl.source;Sl=Sl.subscribe;var th=vA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=ft(L._source);if(!YA(dr,xn)){xn=te(L._source),YA(Ta,xn)||(Vi(xn),xn=Jp(th),Le.mutableReadLanes|=xn&Le.pendingLanes),xn=Le.mutableReadLanes,Le.entangledLanes|=xn;for(var rn=Le.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),pf(97GT&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432)}else{if(!Le)if(x=z1(ft),x!==null){if(L.flags|=64,Le=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Ry(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!ft.alternate&&!Hm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>GT&&te!==1073741824&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432);Re.isBackwards?(ft.sibling=L.child,L.child=ft):(x=Re.last,x!==null?x.sibling=ft:L.child=ft,Re.last=ft)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=wd.current,dl(wd,Le?L&1|2:L&1),x):null;case 23:case 24:return Np(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function _b(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(lp(),$i(oA),$i(Kd),DC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(wd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(wd),null;case 4:return lp(),null;case 10:return XE(x),null;case 23:case 24:return Np(),null;default:return null}}function z_(x,L){try{var te="",Re=L;do te+=HS(Re),Re=Re.return;while(Re);var Le=te}catch(ft){Le=` -Error generating stack: `+ft.message+` -`+ft.stack}return{value:x,source:L,stack:Le}}function zE(x,L){try{console.error(L.value)}catch(te){setTimeout(function(){throw te})}}var oB=typeof WeakMap=="function"?WeakMap:Map;function DT(x,L,te){te=lm(-1,te),te.tag=3,te.payload={element:null};var Re=L.value;return te.callback=function(){e2||(e2=!0,yd=Re),zE(x,L)},te}function aB(x,L,te){te=lm(-1,te),te.tag=3;var Re=x.type.getDerivedStateFromError;if(typeof Re=="function"){var Le=L.value;te.payload=function(){return zE(x,L),Re(Le)}}var ft=x.stateNode;return ft!==null&&typeof ft.componentDidCatch=="function"&&(te.callback=function(){typeof Re!="function"&&(bI===null?bI=new Set([this]):bI.add(this),zE(x,L));var dr=L.stack;this.componentDidCatch(L.value,{componentStack:dr!==null?dr:""})}),te}var jS=typeof WeakSet=="function"?WeakSet:Set;function XR(x){var L=x.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(te){i_(x,te)}else L.current=null}function zS(x,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&x!==null){var te=x.memoizedProps,Re=x.memoizedState;x=L.stateNode,L=x.getSnapshotBeforeUpdate(L.elementType===L.type?te:jd(L.type,te),Re),x.__reactInternalSnapshotBeforeUpdate=L}return;case 3:jt&&L.flags&256&&Ei(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(l(163))}function qE(x,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var te=L=L.next;do{if((te.tag&x)===x){var Re=te.destroy;te.destroy=void 0,Re!==void 0&&Re()}te=te.next}while(te!==L)}}function X2(x,L,te){switch(te.tag){case 0:case 11:case 15:case 22:if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{if((x.tag&3)===3){var Re=x.create;x.destroy=Re()}x=x.next}while(x!==L)}if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{var Le=x;Re=Le.next,Le=Le.tag,Le&4&&Le&1&&(hp(te,x),ny(te,x)),x=Re}while(x!==L)}return;case 1:x=te.stateNode,te.flags&4&&(L===null?x.componentDidMount():(Re=te.elementType===te.type?L.memoizedProps:jd(te.type,L.memoizedProps),x.componentDidUpdate(Re,L.memoizedState,x.__reactInternalSnapshotBeforeUpdate))),L=te.updateQueue,L!==null&&H2(te,L,x);return;case 3:if(L=te.updateQueue,L!==null){if(x=null,te.child!==null)switch(te.child.tag){case 5:x=Yt(te.child.stateNode);break;case 1:x=te.child.stateNode}H2(te,L,x)}return;case 5:x=te.stateNode,L===null&&te.flags&4&&ps(x,te.type,te.memoizedProps,te);return;case 6:return;case 4:return;case 12:return;case 13:Nn&&te.memoizedState===null&&(te=te.alternate,te!==null&&(te=te.memoizedState,te!==null&&(te=te.dehydrated,te!==null&&Ru(te))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(l(163))}function kT(x,L){if(jt)for(var te=x;;){if(te.tag===5){var Re=te.stateNode;L?iA(Re):vu(te.stateNode,te.memoizedProps)}else if(te.tag===6)Re=te.stateNode,L?ma(Re):li(Re,te.memoizedProps);else if((te.tag!==23&&te.tag!==24||te.memoizedState===null||te===x)&&te.child!==null){te.child.return=te,te=te.child;continue}if(te===x)break;for(;te.sibling===null;){if(te.return===null||te.return===x)return;te=te.return}te.sibling.return=te.return,te=te.sibling}}function pn(x,L){if(Tf&&typeof Tf.onCommitFiberUnmount=="function")try{Tf.onCommitFiberUnmount(As,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(x=L.updateQueue,x!==null&&(x=x.lastEffect,x!==null)){var te=x=x.next;do{var Re=te,Le=Re.destroy;if(Re=Re.tag,Le!==void 0)if(Re&4)hp(L,te);else{Re=L;try{Le()}catch(ft){i_(Re,ft)}}te=te.next}while(te!==x)}break;case 1:if(XR(L),x=L.stateNode,typeof x.componentWillUnmount=="function")try{x.props=L.memoizedProps,x.state=L.memoizedState,x.componentWillUnmount()}catch(ft){i_(L,ft)}break;case 5:XR(L);break;case 4:jt?RD(x,L):Fn&&Fn&&(L=L.stateNode.containerInfo,x=Xa(L),Wc(L,x))}}function q1(x,L){for(var te=L;;)if(pn(x,te),te.child===null||jt&&te.tag===4){if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return}te.sibling.return=te.return,te=te.sibling}else te.child.return=te,te=te.child}function J2(x){x.alternate=null,x.child=null,x.dependencies=null,x.firstEffect=null,x.lastEffect=null,x.memoizedProps=null,x.memoizedState=null,x.pendingProps=null,x.return=null,x.updateQueue=null}function ey(x){return x.tag===5||x.tag===3||x.tag===4}function up(x){if(jt){e:{for(var L=x.return;L!==null;){if(ey(L))break e;L=L.return}throw Error(l(160))}var te=L;switch(L=te.stateNode,te.tag){case 5:var Re=!1;break;case 3:L=L.containerInfo,Re=!0;break;case 4:L=L.containerInfo,Re=!0;break;default:throw Error(l(161))}te.flags&16&&(Nc(L),te.flags&=-17);e:t:for(te=x;;){for(;te.sibling===null;){if(te.return===null||ey(te.return)){te=null;break e}te=te.return}for(te.sibling.return=te.return,te=te.sibling;te.tag!==5&&te.tag!==6&&te.tag!==18;){if(te.flags&2||te.child===null||te.tag===4)continue t;te.child.return=te,te=te.child}if(!(te.flags&2)){te=te.stateNode;break e}}Re?Iw(x,te,L):cB(x,te,L)}}function Iw(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?Qa(te,x,L):Or(te,x);else if(Re!==4&&(x=x.child,x!==null))for(Iw(x,L,te),x=x.sibling;x!==null;)Iw(x,L,te),x=x.sibling}function cB(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?bo(te,x,L):Rn(te,x);else if(Re!==4&&(x=x.child,x!==null))for(cB(x,L,te),x=x.sibling;x!==null;)cB(x,L,te),x=x.sibling}function RD(x,L){for(var te=L,Re=!1,Le,ft;;){if(!Re){Re=te.return;e:for(;;){if(Re===null)throw Error(l(160));switch(Le=Re.stateNode,Re.tag){case 5:ft=!1;break e;case 3:Le=Le.containerInfo,ft=!0;break e;case 4:Le=Le.containerInfo,ft=!0;break e}Re=Re.return}Re=!0}if(te.tag===5||te.tag===6)q1(x,te),ft?Cg(Le,te.stateNode):gc(Le,te.stateNode);else if(te.tag===4){if(te.child!==null){Le=te.stateNode.containerInfo,ft=!0,te.child.return=te,te=te.child;continue}}else if(pn(x,te),te.child!==null){te.child.return=te,te=te.child;continue}if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return,te.tag===4&&(Re=!1)}te.sibling.return=te.return,te=te.sibling}}function Rd(x,L){if(jt){switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 1:return;case 5:var te=L.stateNode;if(te!=null){var Re=L.memoizedProps;x=x!==null?x.memoizedProps:Re;var Le=L.type,ft=L.updateQueue;L.updateQueue=null,ft!==null&&yo(te,ft,Le,x,Re,L)}return;case 6:if(L.stateNode===null)throw Error(l(162));te=L.memoizedProps,Qi(L.stateNode,x!==null?x.memoizedProps:te,te);return;case 3:Nn&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,Hu(L.containerInfo)));return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 17:return;case 23:case 24:kT(L,L.memoizedState!==null);return}throw Error(l(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 3:Nn&&(te=L.stateNode,te.hydrate&&(te.hydrate=!1,Hu(te.containerInfo)));break;case 23:case 24:return}e:if(Fn){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,Wc(L.containerInfo,L.pendingChildren);break e}throw Error(l(163))}}function JR(x){x.memoizedState!==null&&(hw=us(),jt&&kT(x.child,!0))}function ty(x){var L=x.updateQueue;if(L!==null){x.updateQueue=null;var te=x.stateNode;te===null&&(te=x.stateNode=new jS),L.forEach(function(Re){var Le=ZT.bind(null,x,Re);te.has(Re)||(te.add(Re),Re.then(Le,Le))})}}function cF(x,L){return x!==null&&(x=x.memoizedState,x===null||x.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var $1=0,$E=1,N_=2,e1=3,t1=4;if(typeof Symbol=="function"&&Symbol.for){var ry=Symbol.for;$1=ry("selector.component"),$E=ry("selector.has_pseudo_class"),N_=ry("selector.role"),e1=ry("selector.test_id"),t1=ry("selector.text")}function xT(x){var L=Hi(x);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(l(364));return L}if(x=Gc(x),x===null)throw Error(l(362));return x.stateNode.current}function yb(x,L){switch(L.$$typeof){case $1:if(x.type===L.value)return!0;break;case $E:e:{L=L.value,x=[x,0];for(var te=0;te";case $E:return":has("+(r_(x)||"")+")";case N_:return'[role="'+x.value+'"]';case t1:return'"'+x.value+'"';case e1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function Rh(x,L){var te=[];x=[x,0];for(var Re=0;ReLe&&(Le=dr),te&=~ft}if(te=Le,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*DD(te/1960))-te,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Qp!==5&&(Qp=2),mi=z_(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:ft=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=DT(Ho,ft,L);CI(Ho,Ra);break e;case 1:ft=mi;var dc=Ho.type,Iu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||Iu!==null&&typeof Iu.componentDidCatch=="function"&&(bI===null||!bI.has(Iu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Cl=aB(Ho,ft,L);CI(Ho,Cl);break e}}Ho=Ho.return}while(Ho!==null)}iu(te)}catch(wl){L=wl,rf===te&&te!==null&&(rf=te=te.return);continue}break}while(!0)}function t2(){var x=q_.current;return q_.current=xc,x===null?xc:x}function Ro(x,L){var te=lc;lc|=16;var Re=t2();fh===x&&yI===L||Dm(x,L);do try{AE();break}catch(Le){Dp(x,Le)}while(!0);if(J_(),lc=te,q_.current=Re,rf!==null)throw Error(l(261));return fh=null,yI=0,Qp}function AE(){for(;rf!==null;)Xc(rf)}function AB(){for(;rf!==null&&!Ca();)Xc(rf)}function Xc(x){var L=Cx(x.alternate,x,aE);x.memoizedProps=x.pendingProps,L===null?iu(x):rf=L,kD.current=null}function iu(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=_b(L),te!==null){te.flags&=2047,rf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=KS(te,L,aE),te!==null){rf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||aE&1073741824||!(te.mode&4)){for(var Re=0,Le=te.child;Le!==null;)Re|=Le.lanes|Le.childLanes,Le=Le.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-hw?Dm(x,0):r1|=te),eh(x,L)}function ZT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(Ip===0&&(Ip=Ih),L=yg(62914560&~Ip),L===0&&(L=4194304)):L=Ql()===99?1:2:L=1),te=fu(),x=uE(x,L),x!==null&&(MA(x,L,te),eh(x,te))}var Cx;Cx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||oA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:RT(L),Y2();break;case 5:Ib(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:lI(L,L.stateNode.containerInfo);break;case 10:q0(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?jE(x,L,te):(dl(wd,wd.current&1),L=BA(x,L,te),L!==null?L.sibling:null);dl(wd,wd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return $I(x,L,te);L.flags|=64}var Le=L.memoizedState;if(Le!==null&&(Le.rendering=null,Le.tail=null,Le.lastEffect=null),dl(wd,wd.current),Re)break;return null;case 23:case 24:return L.lanes=0,uI(x,L,te)}return BA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Le=Ki(L,Kd.current),t_(L,te),Le=XS(null,L,Re,x,Le,te),L.flags|=1,typeof Le=="object"&&Le!==null&&typeof Le.render=="function"&&Le.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var ft=!0;Ma(L)}else ft=!1;L.memoizedState=Le.state!==null&&Le.state!==void 0?Le.state:null,fb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Le.updater=O,L.stateNode=Le,Le._reactInternals=L,sr(L,Re,x,te),L=sB(null,L,Re,!0,ft,te)}else L.tag=0,Qo(null,L,Le,te),L=L.child;return L;case 16:Le=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,ft=Le._init,Le=ft(Le._payload),L.type=Le,ft=L.tag=Vd(Le),x=jd(Le,x),ft){case 0:L=oE(null,L,Le,x,te);break e;case 1:L=TT(null,L,Le,x,te);break e;case 11:L=vg(null,L,Le,x,te);break e;case 14:L=Ng(null,L,Le,jd(Le.type,x),Re,te);break e}throw Error(l(306,Le,""))}return L;case 0:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),oE(x,L,Re,Le,te);case 1:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),TT(x,L,Re,Le,te);case 3:if(RT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Le=L.memoizedState,Le=Le!==null?Le.element:null,pe(x,L),_I(L,Re,null,te),Re=L.memoizedState.element,Re===Le)Y2(),L=BA(x,L,te);else{if(Le=L.stateNode,(ft=Le.hydrate)&&(Nn?(RC=Qh(L.stateNode.containerInfo),T_=L,ft=Hm=!0):ft=!1),ft){if(Nn&&(x=Le.mutableSourceEagerHydrationData,x!=null))for(Le=0;Le=Vi&&ft>=Sl&&Le<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(ft!==Sl||te.height!==mi.height||TaLe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),Taft&&(mi.height+=Sl-ft,mi.y=ft),Hote&&(te=dr)),dr ")+` - -No matching component was found for: - `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Yt(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:bL,findFiberByHostInstance:x.findFiberByHostInstance||gF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Tf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=bb(x,L);var Le=zr(x,te,Re).disconnect;return{disconnect:function(){Le()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Fl;try{return Fl=x,L()}finally{Fl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(b0(),ip())}},r.updateContainer=function(x,L,te,Re){var Le=L.current,ft=fu(),dr=Jp(Le);e:if(te){te=te._reactInternals;t:{if(et(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=Uf;return L.context===null?L.context=te:L.pendingContext=te,L=lm(ft,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),Kf(Le,L),dC(Le,dr,ft),dr},r}});var BMn=H((Etu,vMn)=>{"use strict";vMn.exports=SMn()});var TMn=H((Stu,wMn)=>{"use strict";var JUo={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};wMn.exports=JUo});var kMn=H((vtu,DMn)=>{"use strict";var UUo=Object.assign||function(e){for(var t=1;t"}}]),e}(),RMn=function(){wpt(e,null,[{key:"fromJS",value:function(r){var n=r.width,a=r.height;return new e(n,a)}}]);function e(t,r){DIr(this,e),this.width=t,this.height=r}return wpt(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),NMn=function(){function e(t,r){DIr(this,e),this.unit=t,this.value=r}return wpt(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case _X.UNIT_POINT:return String(this.value);case _X.UNIT_PERCENT:return this.value+"%";case _X.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();DMn.exports=function(e,t){function r(l,A,f){var I=l[A];l[A]=function(){for(var C=arguments.length,b=Array(C),E=0;E1?b-1:0),N=1;N1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,I=arguments.length>3&&arguments[3]!==void 0?arguments[3]:_X.DIRECTION_LTR;return l.call(this,A,f,I)}),UUo({Config:t.Config,Node:t.Node,Layout:e("Layout",KUo),Size:e("Size",RMn),Value:e("Value",NMn),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},_X)}});var xMn=H((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof wt=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var n=nodeFS.readFileSync(t);return r?n:n.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,n){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):n()},a.onerror=n,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var n=enlargeMemory();if(!n)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var n=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return n},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,n,a,o){var l=getCFunc(t),A=[],f=0;if(a)for(var I=0;I>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,n){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var l=typeof t=="string"?t:null,A;if(r==ALLOC_NONE?A=n:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,l?1:t.length)),a){var n=A,f;for(assert((A&3)==0),f=A+(o&-4);n>2]=0;for(f=A+o;n>0]=0;return A}if(l==="i8")return e.subarray||e.slice?HEAPU8.set(e,A):HEAPU8.set(new Uint8Array(e),A),A;for(var I=0,C,b,E;I>0],r|=n,!(n==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var l=1024,A;t>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,l))),o=o?o+A:A,e+=l,t-=l;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var n,a,o,l,A,f,I="";;){if(n=e[t++],!n)return I;if(!(n&128)){I+=String.fromCharCode(n);continue}if(a=e[t++]&63,(n&224)==192){I+=String.fromCharCode((n&31)<<6|a);continue}if(o=e[t++]&63,(n&240)==224?n=(n&15)<<12|a<<6|o:(l=e[t++]&63,(n&248)==240?n=(n&7)<<18|a<<12|o<<6|l:(A=e[t++]&63,(n&252)==248?n=(n&3)<<24|a<<18|o<<12|l<<6|A:(f=e[t++]&63,n=(n&1)<<30|a<<24|o<<18|l<<12|A<<6|f))),n<65536)I+=String.fromCharCode(n);else{var C=n-65536;I+=String.fromCharCode(55296|C>>10,56320|C&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,n){if(!(n>0))return 0;for(var a=r,o=r+n-1,l=0;l=55296&&A<=57343&&(A=65536+((A&1023)<<10)|e.charCodeAt(++l)&1023),A<=127){if(r>=o)break;t[r++]=A}else if(A<=2047){if(r+1>=o)break;t[r++]=192|A>>6,t[r++]=128|A&63}else if(A<=65535){if(r+2>=o)break;t[r++]=224|A>>12,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=2097151){if(r+3>=o)break;t[r++]=240|A>>18,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else if(A<=67108863){if(r+4>=o)break;t[r++]=248|A>>24,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}else{if(r+5>=o)break;t[r++]=252|A>>30,t[r++]=128|A>>24&63,t[r++]=128|A>>18&63,t[r++]=128|A>>12&63,t[r++]=128|A>>6&63,t[r++]=128|A&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((n&1023)<<10)|e.charCodeAt(++r)&1023),n<=127?++t:n<=2047?t+=2:n<=65535?t+=3:n<=2097151?t+=4:n<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),n=lengthBytesUTF8(r)+1,a=_malloc(n);stringToUTF8(r,a,n);var o=_malloc(4),l=t(a,0,0,o);if(getValue(o,"i32")===0&&l)return Pointer_stringify(l)}catch{}finally{a&&_free(a),o&&_free(o),l&&_free(l)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var n=demangle(r);return r===n?r:r+" ["+n+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` -`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var n=r>0?r:lengthBytesUTF8(e)+1,a=new Array(n),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;r&&(a=t+lengthBytesUTF8(e),n=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=n)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var n=t>>>16,a=t&65535,o=r>>>16,l=r&65535;return a*l+(n*l+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,n,a,o,l,A){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,n,a,o,l,A){return ASM_CONSTS[e](t,r,n,a,o,l,A)}function _emscripten_asm_const_iiiii(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiidddddd(e,t,r,n,a,o,l,A,f){return ASM_CONSTS[e](t,r,n,a,o,l,A,f)}function _emscripten_asm_const_iiididi(e,t,r,n,a,o,l){return ASM_CONSTS[e](t,r,n,a,o,l)}function _emscripten_asm_const_iiii(e,t,r,n){return ASM_CONSTS[e](t,r,n)}function _emscripten_asm_const_iiiid(e,t,r,n,a){return ASM_CONSTS[e](t,r,n,a)}function _emscripten_asm_const_iiiiii(e,t,r,n,a,o){return ASM_CONSTS[e](t,r,n,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,n){var a=arguments.length,o=a<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,n);else for(var A=e.length-1;A>=0;A--)(l=e[A])&&(o=(a<3?l(o):a>3?l(t,r,o):l(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,n){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=n/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var l=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,l)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(l){l.source===window&&l.data===n&&(l.stopPropagation(),r.shift()())};var a=o,r=[],n="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(A){r.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:n})):window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,n,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=n;var o;typeof n<"u"?o=function(){Module.dynCall_vi(e,n)}:o=function(){Module.dynCall_v(e)};var l=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),I=Browser.mainLoop.queue.shift();if(I.func(I.arg),Browser.mainLoop.remainingBlockers){var C=Browser.mainLoop.remainingBlockers,b=C%1==0?C-1:Math.floor(C);I.counted?Browser.mainLoop.remainingBlockers=b:(b=b+.5,Browser.mainLoop.remainingBlockers=(8*C+b)/9)}if(console.log('main loop blocker "'+I.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),l1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(l0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,l,A,f){var I=null;if(Browser.hasBlobConstructor)try{I=new Blob([o],{type:Browser.getMimetype(l)}),I.size!==o.length&&(I=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(l)}))}catch(N){Runtime.warnOnce("Blob constructor present but fails: "+N+"; falling back to blob builder")}if(!I){var C=new Browser.BlobBuilder;C.append(new Uint8Array(o).buffer),I=C.getBlob()}var b=Browser.URLObject.createObjectURL(I),E=new Image;E.onload=function(){assert(E.complete,"Image "+l+" could not be decoded");var B=document.createElement("canvas");B.width=E.width,B.height=E.height;var F=B.getContext("2d");F.drawImage(E,0,0),Module.preloadedImages[l]=B,Browser.URLObject.revokeObjectURL(b),A&&A(o)},E.onerror=function(B){console.log("Image "+b+" could not be decoded"),f&&f()},E.src=b},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,l,A,f){var I=!1;function C(F){I||(I=!0,Module.preloadedAudios[l]=F,A&&A(o))}function b(){I||(I=!0,Module.preloadedAudios[l]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var E=new Blob([o],{type:Browser.getMimetype(l)})}catch{return b()}var N=Browser.URLObject.createObjectURL(E),B=new Audio;B.addEventListener("canplaythrough",function(){C(B)},!1),B.onerror=function(Q){if(I)return;console.log("warning: browser could not fully decode audio "+l+", trying slower base64 approach");function X(ae){for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ce="=",fe="",ue=0,de=0,be=0;be=6;){var Se=ue>>de-6&63;de-=6,fe+=ne[Se]}return de==2?(fe+=ne[(ue&3)<<4],fe+=ce+ce):de==4&&(fe+=ne[(ue&15)<<2],fe+=ce),fe}B.src="data:audio/x-"+l.substr(-3)+";base64,"+X(o),C(B)},B.src=N,Browser.safeSetTimeout(function(){C(B)},1e4)}else return b()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,n){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var l={antialias:!1,alpha:!1};if(n)for(var A in n)l[A]=n[A];o=GL.createContext(e,l),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var n=Module.canvas;function a(){Browser.isFullscreen=!1;var l=n.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===l?(n.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},n.exitFullscreen=n.exitFullscreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(l.parentNode.insertBefore(n,l),l.parentNode.removeChild(l),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(n)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");n.parentNode.insertBefore(o,n),o.appendChild(n),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(n,a,o){return Browser.requestFullscreen(n,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,n=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var l=e.touch;if(l===void 0)return;var A=l.pageX-(a+t.left),f=l.pageY-(o+t.top);A=A*(r/t.width),f=f*(n/t.height);var I={x:A,y:f};if(e.type==="touchstart")Browser.lastTouches[l.identifier]=I,Browser.touches[l.identifier]=I;else if(e.type==="touchend"||e.type==="touchmove"){var C=Browser.touches[l.identifier];C||(C=I),Browser.lastTouches[l.identifier]=C,Browser.touches[l.identifier]=I}return}var b=e.pageX-(a+t.left),E=e.pageY-(o+t.top);b=b*(r/t.width),E=E*(n/t.height),Browser.mouseMovementX=b-Browser.mouseX,Browser.mouseMovementY=E-Browser.mouseY,Browser.mouseX=b,Browser.mouseY=E}},asyncLoad:function(e,t,r,n){var a=n?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(n){return(typeof FS>"u"||!(n instanceof FS.ErrnoError))&&abort(n),-n.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,I,C,b,E,N){if(I==1){var B=b&896;(B==128||B==256||B==384)&&(f="X const")}var F;return N?F=C.replace("X",f).replace("Y",E):F=f.replace("X",C).replace("Y",E),F.replace(/([*&]) (?=[*&])/g,"$1")}function n(f,I,C,b,E){throw new Error(f+" type "+C.replace("X",I+"?")+(b?" with flag "+b:"")+" in "+E)}function a(f,I,C,b,E,N,B,F){N===void 0&&(N="X"),F===void 0&&(F=1);var Q=C(f);if(Q)return Q;var X=b(f),ae=X.placeholderFlag,ne=t[ae];B&&ne&&(N=r(B[2],B[0],N,ne[0],"?",!0));var ce;ae==0&&(ce="Unbound"),ae>=10&&(ce="Corrupt"),F>20&&(ce="Deeply nested"),ce&&n(ce,f,N,ae,E||"?");var fe=X.paramList[0],ue=a(fe,I,C,b,E,N,ne,F+1),de,be={flags:ne[0],id:f,name:"",paramList:[ue]},Se=[],De="?";switch(X.placeholderFlag){case 1:de=ue.spec;break;case 2:if((ue.flags&15360)==1024&&ue.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:de=ue.spec,ue.flags&15360;break;case 8:De=""+X.paramList[1],be.paramList.push(X.paramList[1]);break;case 9:for(var k=0,et=X.paramList[1];k>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),l=SYSCALLS.get(),A=a;return FS.llseek(r,A,l),HEAP32[o>>2]=r.position,r.getdents&&A===0&&l===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(C,b){var E=___syscall146.buffers[C];assert(E),b===0||b===10?((C===1?Module.print:Module.printErr)(UTF8ArrayToString(E,0)),E.length=0):E.push(b)});for(var l=0;l>2],f=HEAP32[n+(l*8+4)>>2],I=0;I"u"||!(C instanceof FS.ErrnoError))&&abort(C),-C.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var n=_nbind.typeNameTbl.NBind.proto;return n.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var n=HEAPU32[e.pagePtr];if(n){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],n=new r(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var n=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(n=[n[0],n.slice(1)]),{paramList:n,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},n=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+n];if(!a)throw new Error("dynCall_"+n+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,n){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,n)):(r.arity=n,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var n=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=a[r.ptrSize*8],n.ptrSize=r.ptrSize,n}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,n=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,n,r),n}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,n){return function(a){return pushCString(a,n)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(n){return!!n},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,n){return n&&n.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(n){__extends(a,n);function a(o,l,A,f){var I=n.call(this)||this;if(!(I instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var C=l,b=A,E=f;if(o!==_nbind.ptrMarker){var N=I.__nbindConstructor.apply(I,arguments);C=4608,E=HEAPU32[N/4],b=HEAPU32[N/4+1]}var B={configurable:!0,enumerable:!1,value:null,writable:!1},F={__nbindFlags:C,__nbindPtr:b};E&&(F.__nbindShared=E,_nbind.mark(I));for(var Q=0,X=Object.keys(F);Q>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?l=Buffer.from(o):l=new Buffer(o),l.copy(n)}else getBuffer(n).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,n,a,o){try{Module.dynCall_viiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,n){try{return Module.dynCall_fiff(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,n,a){try{Module.dynCall_viddi(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,n){try{Module.dynCall_vidd(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,n){try{return Module.dynCall_iiii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,n){try{return Module.dynCall_diii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,n,a,o){try{Module.dynCall_viiddi(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,n,a,o,l){try{Module.dynCall_viiiiii(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,n,a,o){try{return Module.dynCall_iiiiii(e,t,r,n,a,o)}catch(l){if(typeof l!="number"&&l!=="longjmp")throw l;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,n,a){try{Module.dynCall_viiid(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,n,a,o,l){try{Module.dynCall_viififi(e,t,r,n,a,o,l)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(e,t,r,n){try{Module.dynCall_viii(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,n){try{Module.dynCall_viid(e,t,r,n)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,n,a){try{Module.dynCall_viiii(e,t,r,n,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var n=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),l=new e.Uint8Array(r),A=new e.Uint16Array(r),f=new e.Uint32Array(r),I=new e.Float32Array(r),C=new e.Float64Array(r),b=t.DYNAMICTOP_PTR|0,E=t.tempDoublePtr|0,N=t.ABORT|0,B=t.STACKTOP|0,F=t.STACK_MAX|0,Q=t.cttz_i8|0,X=t.___dso_handle|0,ae=0,ne=0,ce=0,fe=0,ue=e.NaN,de=e.Infinity,be=0,Se=0,De=0,k=0,et=0,ct=0,Me=e.Math.floor,je=e.Math.abs,St=e.Math.sqrt,At=e.Math.pow,Yt=e.Math.cos,Tr=e.Math.sin,Nr=e.Math.tan,er=e.Math.acos,vt=e.Math.asin,xt=e.Math.atan,Zr=e.Math.atan2,qt=e.Math.exp,Xt=e.Math.log,lr=e.Math.ceil,cr=e.Math.imul,Ar=e.Math.min,qr=e.Math.max,_n=e.Math.clz32,ke=e.Math.fround,jt=t.abort,Fn=t.assert,Nn=t.enlargeMemory,Hi=t.getTotalMemory,po=t.abortOnCannotGrowMemory,Vr=t.invoke_viiiii,xi=t.invoke_vif,io=t.invoke_vid,ga=t.invoke_fiff,Ya=t.invoke_vi,Gc=t.invoke_vii,cl=t.invoke_ii,Sc=t.invoke_viddi,Hr=t.invoke_vidd,Wr=t.invoke_iiii,Ft=t.invoke_diii,zr=t.invoke_di,Rn=t.invoke_iid,Or=t.invoke_iii,Qi=t.invoke_viiddi,ps=t.invoke_viiiiii,yo=t.invoke_dii,bo=t.invoke_i,Qa=t.invoke_iiiiii,gc=t.invoke_viiid,Cg=t.invoke_viififi,Nc=t.invoke_viii,iA=t.invoke_v,ma=t.invoke_viid,vu=t.invoke_idd,li=t.invoke_viiii,Ei=t._emscripten_asm_const_iiiii,Ps=t._emscripten_asm_const_iiidddddd,Xa=t._emscripten_asm_const_iiiid,ac=t.__nbind_reference_external,Yl=t._emscripten_asm_const_iiiiiiii,Wc=t._removeAccessorPrefix,Sg=t._typeModule,Ul=t.__nbind_register_pool,Xu=t.__decorate,Da=t._llvm_stackrestore,pu=t.___cxa_atexit,_g=t.__extends,mI=t.__nbind_get_value_object,Qh=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,Ri=t._emscripten_set_main_loop_timing,Do=t.__nbind_register_primitive,Wt=t.__nbind_register_type,Hu=t._emscripten_memcpy_big,Ru=t.__nbind_register_function,Vs=t.___setErrNo,Ju=t.__nbind_register_class,Yn=t.__nbind_finish,Ko=t._abort,Eg=t._nbind_value,OA=t._llvm_stacksave,GA=t.___syscall54,$i=t._defineHidden,dl=t._emscripten_set_main_loop,Uf=t._emscripten_get_now,Kd=t.__nbind_register_callback_signature,oA=t._emscripten_asm_const_iiiiii,oo=t.__nbind_free_external,Ki=t._emscripten_asm_const_iiii,cc=t._emscripten_asm_const_iiididi,Xs=t.___syscall6,ws=t._atexit,Gs=t.___syscall140,Ma=t.___syscall146,Dc=ke(0);let As=ke(0);function Tf(p){p=p|0;var y=0;return y=B,B=B+p|0,B=B+15&-16,y|0}function cm(){return B|0}function Fl(p){p=p|0,B=p}function rc(p,y){p=p|0,y=y|0,B=p,F=y}function sd(p,y){p=p|0,y=y|0,ae||(ae=p,ne=y)}function Om(p){p=p|0,ct=p}function il(){return ct|0}function FA(){var p=0,y=0;Md(8104,8,400)|0,Md(8504,408,540)|0,p=9044,y=p+44|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));n[9088]=0,n[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,pu(17,8104,X|0)|0}function ZA(p){p=p|0,aa(p+948|0)}function El(p){return p=ke(p),((kT(p)|0)&2147483647)>>>0>2139095040|0}function yg(p,y,w){p=p|0,y=y|0,w=w|0;e:do if(o[p+(y<<3)+4>>2]|0)p=p+(y<<3)|0;else{if((y|2|0)==3&&o[p+60>>2]|0){p=p+56|0;break}switch(y|0){case 0:case 2:case 4:case 5:{if(o[p+52>>2]|0){p=p+48|0;break e}break}default:}if(o[p+68>>2]|0){p=p+64|0;break}else{p=(y|1|0)==5?948:w;break}}while(!1);return p|0}function Mp(p){p=p|0;var y=0;return y=zne(1e3)|0,MA(p,(y|0)!=0,2456),o[2276]=(o[2276]|0)+1,Md(y|0,8104,1e3)|0,n[p+2>>0]|0&&(o[y+4>>2]=2,o[y+12>>2]=4),o[y+976>>2]=p,y|0}function MA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;J=B,B=B+16|0,G=J,y||(o[G>>2]=w,JS(p,5,3197,G)),B=J}function Er(){return Mp(956)|0}function Zt(p){p=p|0;var y=0;return y=Ku(1e3)|0,yn(y,p),MA(o[p+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[y+944>>2]=0,y|0}function yn(p,y){p=p|0,y=y|0;var w=0;Md(p|0,y|0,948)|0,fw(p+948|0,y+948|0),w=p+960|0,p=y+960|0,y=w+40|0;do o[w>>2]=o[p>>2],w=w+4|0,p=p+4|0;while((w|0)<(y|0))}function ls(p){p=p|0;var y=0,w=0,G=0,J=0;if(y=p+944|0,w=o[y>>2]|0,w|0&&(oa(w+948|0,p)|0,o[y>>2]=0),w=Fs(p)|0,w|0){y=0;do o[(Wa(p,y)|0)+944>>2]=0,y=y+1|0;while((y|0)!=(w|0))}w=p+948|0,G=o[w>>2]|0,J=p+952|0,y=o[J>>2]|0,(y|0)!=(G|0)&&(o[J>>2]=y+(~((y+-4-G|0)>>>2)<<2)),Ca(w),qne(p),o[2276]=(o[2276]|0)+-1}function oa(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0;G=o[p>>2]|0,Ge=p+4|0,w=o[Ge>>2]|0,U=w;e:do if((G|0)==(w|0))J=G,le=4;else for(p=G;;){if((o[p>>2]|0)==(y|0)){J=p,le=4;break e}if(p=p+4|0,(p|0)==(w|0)){p=0;break}}while(!1);return(le|0)==4&&((J|0)!=(w|0)?(G=J+4|0,p=U-G|0,y=p>>2,y&&(JT(J|0,G|0,p|0)|0,w=o[Ge>>2]|0),p=J+(y<<2)|0,(w|0)==(p|0)||(o[Ge>>2]=w+(~((w+-4-p|0)>>>2)<<2)),p=1):p=0),p|0}function Fs(p){return p=p|0,(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2|0}function Wa(p,y){p=p|0,y=y|0;var w=0;return w=o[p+948>>2]|0,(o[p+952>>2]|0)-w>>2>>>0>y>>>0?p=o[w+(y<<2)>>2]|0:p=0,p|0}function Ca(p){p=p|0;var y=0,w=0,G=0,J=0;G=B,B=B+32|0,y=G,J=o[p>>2]|0,w=(o[p+4>>2]|0)-J|0,((o[p+8>>2]|0)-J|0)>>>0>w>>>0&&(J=w>>2,pn(y,J,J,p+8|0),q1(p,y),J2(y)),B=G}function ld(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;bt=Fs(p)|0;do if(bt|0){if((o[(Wa(p,0)|0)+944>>2]|0)==(p|0)){if(!(oa(p+948|0,y)|0))break;Md(y+400|0,8504,540)|0,o[y+944>>2]=0,di(p);break}le=o[(o[p+976>>2]|0)+12>>2]|0,Ge=p+948|0,Xe=(le|0)==0,w=0,U=0;do G=o[(o[Ge>>2]|0)+(U<<2)>>2]|0,(G|0)==(y|0)?di(p):(J=Zt(G)|0,o[(o[Ge>>2]|0)+(w<<2)>>2]=J,o[J+944>>2]=p,Xe||Ir[le&15](G,J,p,w),w=w+1|0),U=U+1|0;while((U|0)!=(bt|0));if(w>>>0>>0){Xe=p+948|0,Ge=p+952|0,le=w,w=o[Ge>>2]|0;do U=(o[Xe>>2]|0)+(le<<2)|0,G=U+4|0,J=w-G|0,y=J>>2,y&&(JT(U|0,G|0,J|0)|0,w=o[Ge>>2]|0),J=w,G=U+(y<<2)|0,(J|0)!=(G|0)&&(w=J+(~((J+-4-G|0)>>>2)<<2)|0,o[Ge>>2]=w),le=le+1|0;while((le|0)!=(bt|0))}}while(!1)}function Rp(p){p=p|0;var y=0,w=0,G=0,J=0;np(p,(Fs(p)|0)==0,2491),np(p,(o[p+944>>2]|0)==0,2545),y=p+948|0,w=o[y>>2]|0,G=p+952|0,J=o[G>>2]|0,(J|0)!=(w|0)&&(o[G>>2]=J+(~((J+-4-w|0)>>>2)<<2)),Ca(y),y=p+976|0,w=o[y>>2]|0,Md(p|0,8104,1e3)|0,n[w+2>>0]|0&&(o[p+4>>2]=2,o[p+12>>2]=4),o[y>>2]=w}function np(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;J=B,B=B+16|0,G=J,y||(o[G>>2]=w,fd(p,5,3197,G)),B=J}function HA(){return o[2276]|0}function df(){var p=0;return p=zne(20)|0,Zs((p|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[p>>2]=o[239],o[p+4>>2]=o[240],o[p+8>>2]=o[241],o[p+12>>2]=o[242],o[p+16>>2]=o[243],p|0}function Zs(p,y){p=p|0,y=y|0;var w=0,G=0;G=B,B=B+16|0,w=G,p||(o[w>>2]=y,fd(0,5,3197,w)),B=G}function so(p){p=p|0,qne(p),o[2277]=(o[2277]|0)+-1}function Ea(p,y){p=p|0,y=y|0;var w=0;y?(np(p,(Fs(p)|0)==0,2629),w=1):(w=0,y=0),o[p+964>>2]=y,o[p+988>>2]=w}function Ml(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,U=G+8|0,J=G+4|0,le=G,o[J>>2]=y,np(p,(o[y+944>>2]|0)==0,2709),np(p,(o[p+964>>2]|0)==0,2763),Dr(p),y=p+948|0,o[le>>2]=(o[y>>2]|0)+(w<<2),o[U>>2]=o[le>>2],Wn(y,U,J)|0,o[(o[J>>2]|0)+944>>2]=p,di(p),B=G}function Dr(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;if(w=Fs(p)|0,w|0&&(o[(Wa(p,0)|0)+944>>2]|0)!=(p|0)){G=o[(o[p+976>>2]|0)+12>>2]|0,J=p+948|0,U=(G|0)==0,y=0;do le=o[(o[J>>2]|0)+(y<<2)>>2]|0,Ge=Zt(le)|0,o[(o[J>>2]|0)+(y<<2)>>2]=Ge,o[Ge+944>>2]=p,U||Ir[G&15](le,Ge,p,y),y=y+1|0;while((y|0)!=(w|0))}}function Wn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0;Ds=B,B=B+64|0,rr=Ds+52|0,Ge=Ds+48|0,an=Ds+28|0,Ks=Ds+24|0,zi=Ds+20|0,Un=Ds,G=o[p>>2]|0,U=G,y=G+((o[y>>2]|0)-U>>2<<2)|0,G=p+4|0,J=o[G>>2]|0,le=p+8|0;do if(J>>>0<(o[le>>2]|0)>>>0){if((y|0)==(J|0)){o[y>>2]=o[w>>2],o[G>>2]=(o[G>>2]|0)+4;break}ey(p,y,J,y+4|0),y>>>0<=w>>>0&&(w=(o[G>>2]|0)>>>0>w>>>0?w+4|0:w),o[y>>2]=o[w>>2]}else{G=(J-U>>2)+1|0,J=ut(p)|0,J>>>0>>0&&me(p),It=o[p>>2]|0,bt=(o[le>>2]|0)-It|0,U=bt>>1,pn(Un,bt>>2>>>0>>1>>>0?U>>>0>>0?G:U:J,y-It>>2,p+8|0),It=Un+8|0,G=o[It>>2]|0,U=Un+12|0,bt=o[U>>2]|0,le=bt,Xe=G;do if((G|0)==(bt|0)){if(bt=Un+4|0,G=o[bt>>2]|0,Si=o[Un>>2]|0,J=Si,G>>>0<=Si>>>0){G=le-J>>1,G=G|0?G:1,pn(an,G,G>>>2,o[Un+16>>2]|0),o[Ks>>2]=o[bt>>2],o[zi>>2]=o[It>>2],o[Ge>>2]=o[Ks>>2],o[rr>>2]=o[zi>>2],Iw(an,Ge,rr),G=o[Un>>2]|0,o[Un>>2]=o[an>>2],o[an>>2]=G,G=an+4|0,Si=o[bt>>2]|0,o[bt>>2]=o[G>>2],o[G>>2]=Si,G=an+8|0,Si=o[It>>2]|0,o[It>>2]=o[G>>2],o[G>>2]=Si,G=an+12|0,Si=o[U>>2]|0,o[U>>2]=o[G>>2],o[G>>2]=Si,J2(an),G=o[It>>2]|0;break}U=G,le=((U-J>>2)+1|0)/-2|0,Ge=G+(le<<2)|0,J=Xe-U|0,U=J>>2,U&&(JT(Ge|0,G|0,J|0)|0,G=o[bt>>2]|0),Si=Ge+(U<<2)|0,o[It>>2]=Si,o[bt>>2]=G+(le<<2),G=Si}while(!1);o[G>>2]=o[w>>2],o[It>>2]=(o[It>>2]|0)+4,y=up(p,Un,y)|0,J2(Un)}while(!1);return B=Ds,y|0}function di(p){p=p|0;var y=0;do{if(y=p+984|0,n[y>>0]|0)break;n[y>>0]=1,I[p+504>>2]=ke(ue),p=o[p+944>>2]|0}while(p|0)}function aa(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function Bo(p){return p=p|0,o[p+944>>2]|0}function us(p){p=p|0,np(p,(o[p+964>>2]|0)!=0,2832),di(p)}function Ql(p){return p=p|0,(n[p+984>>0]|0)!=0|0}function LA(p,y){p=p|0,y=y|0,DLe(p,y,400)|0&&(Md(p|0,y|0,400)|0,di(p))}function pf(p){p=p|0;var y=As;return y=ke(I[p+44>>2]),p=El(y)|0,ke(p?ke(0):y)}function ef(p){p=p|0;var y=As;return y=ke(I[p+48>>2]),El(y)|0&&(y=n[(o[p+976>>2]|0)+2>>0]|0?ke(1):ke(0)),ke(y)}function ip(p,y){p=p|0,y=y|0,o[p+980>>2]=y}function _d(p){return p=p|0,o[p+980>>2]|0}function j1(p,y){p=p|0,y=y|0;var w=0;w=p+4|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function pw(p){return p=p|0,o[p+4>>2]|0}function YA(p,y){p=p|0,y=y|0;var w=0;w=p+8|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Ac(p){return p=p|0,o[p+8>>2]|0}function Nm(p,y){p=p|0,y=y|0;var w=0;w=p+12|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function HS(p){return p=p|0,o[p+12>>2]|0}function jd(p,y){p=p|0,y=y|0;var w=0;w=p+16|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function dh(p){return p=p|0,o[p+16>>2]|0}function Hp(p,y){p=p|0,y=y|0;var w=0;w=p+20|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function uC(p){return p=p|0,o[p+20>>2]|0}function nE(p,y){p=p|0,y=y|0;var w=0;w=p+24|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function J_(p){return p=p|0,o[p+24>>2]|0}function q0(p,y){p=p|0,y=y|0;var w=0;w=p+28|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function XE(p){return p=p|0,o[p+28>>2]|0}function TC(p,y){p=p|0,y=y|0;var w=0;w=p+32|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function t_(p){return p=p|0,o[p+32>>2]|0}function cp(p,y){p=p|0,y=y|0;var w=0;w=p+36|0,(o[w>>2]|0)!=(y|0)&&(o[w>>2]=y,di(p))}function Mm(p){return p=p|0,o[p+36>>2]|0}function fb(p,y){p=p|0,y=ke(y);var w=0;w=p+40|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function pe(p,y){p=p|0,y=ke(y);var w=0;w=p+44|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function lm(p,y){p=p|0,y=ke(y);var w=0;w=p+48|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function Kf(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+52|0,J=p+56|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function CI(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+52|0,w=p+56|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function _I(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+52|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function H2(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function iE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+132+(y<<3)|0,y=p+132+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function se(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+132+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function O(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function K(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+60+(y<<3)|0,y=p+60+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function we(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+60+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function gt(p,y){p=p|0,y=y|0;var w=0;w=p+60+(y<<3)+4|0,(o[w>>2]|0)!=3&&(I[p+60+(y<<3)>>2]=ke(ue),o[w>>2]=3,di(p))}function sr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function Yr(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=U?0:2,J=p+204+(y<<3)|0,y=p+204+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function Lr(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=y+204+(w<<3)|0,y=o[G+4>>2]|0,w=p,o[w>>2]=o[G>>2],o[w+4>>2]=y}function fi(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0,U=0;U=El(w)|0,G=(U^1)&1,J=p+276+(y<<3)|0,y=p+276+(y<<3)+4|0,U|ke(I[J>>2])==w&&(o[y>>2]|0)==(G|0)||(I[J>>2]=w,o[y>>2]=G,di(p))}function $n(p,y){return p=p|0,y=y|0,ke(I[p+276+(y<<3)>>2])}function ra(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+348|0,J=p+352|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function kc(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+348|0,w=p+352|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function Nl(p){p=p|0;var y=0;y=p+352|0,(o[y>>2]|0)!=3&&(I[p+348>>2]=ke(ue),o[y>>2]=3,di(p))}function ca(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+348|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Bl(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+356|0,J=p+360|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function $g(p,y){p=p|0,y=ke(y);var w=0,G=0;G=p+356|0,w=p+360|0,ke(I[G>>2])==y&&(o[w>>2]|0)==2||(I[G>>2]=y,G=El(y)|0,o[w>>2]=G?3:2,di(p))}function SA(p){p=p|0;var y=0;y=p+360|0,(o[y>>2]|0)!=3&&(I[p+356>>2]=ke(ue),o[y>>2]=3,di(p))}function lI(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+356|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function lp(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+364|0,J=p+368|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Ib(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+364|0,J=p+368|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Na(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+364|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function wd(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+372|0,J=p+376|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function z1(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+372|0,J=p+376|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function T_(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+372|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function RC(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+380|0,J=p+384|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function Hm(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+380|0,J=p+384|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function YS(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+380|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function Fg(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=(U^1)&1,G=p+388|0,J=p+392|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function hb(p,y){p=p|0,y=ke(y);var w=0,G=0,J=0,U=0;U=El(y)|0,w=U?0:2,G=p+388|0,J=p+392|0,U|ke(I[G>>2])==y&&(o[J>>2]|0)==(w|0)||(I[G>>2]=y,o[J>>2]=w,di(p))}function gC(p,y){p=p|0,y=y|0;var w=0,G=0;G=y+388|0,w=o[G+4>>2]|0,y=p,o[y>>2]=o[G>>2],o[y+4>>2]=w}function NC(p,y){p=p|0,y=ke(y);var w=0;w=p+396|0,ke(I[w>>2])!=y&&(I[w>>2]=y,di(p))}function Y2(p){return p=p|0,ke(I[p+396>>2])}function U_(p){return p=p|0,ke(I[p+400>>2])}function DC(p){return p=p|0,ke(I[p+404>>2])}function kC(p){return p=p|0,ke(I[p+408>>2])}function qI(p){return p=p|0,ke(I[p+412>>2])}function ph(p){return p=p|0,ke(I[p+416>>2])}function vA(p){return p=p|0,ke(I[p+420>>2])}function Td(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+424+(y<<2)>>2])}function Mc(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+448+(y<<2)>>2])}function Pf(p,y){switch(p=p|0,y=y|0,np(p,(y|0)<6,2918),y|0){case 0:{y=(o[p+496>>2]|0)==2?5:4;break}case 2:{y=(o[p+496>>2]|0)==2?4:5;break}default:}return ke(I[p+472+(y<<2)>>2])}function sE(p,y){p=p|0,y=y|0;var w=0,G=As;return w=o[p+4>>2]|0,(w|0)==(o[y+4>>2]|0)?w?(G=ke(I[p>>2]),p=ke(je(ke(G-ke(I[y>>2]))))>2]=0,o[G+4>>2]=0,o[G+8>>2]=0,Qh(G|0,p|0,y|0,0),fd(p,3,(n[G+11>>0]|0)<0?o[G>>2]|0:G,w),Gw(G),B=w}function um(p,y,w,G){p=ke(p),y=ke(y),w=w|0,G=G|0;var J=As;p=ke(p*y),J=ke(Az(p,ke(1)));do if(eA(J,ke(0))|0)p=ke(p-J);else{if(p=ke(p-J),eA(J,ke(1))|0){p=ke(p+ke(1));break}if(w){p=ke(p+ke(1));break}G||(J>ke(.5)?J=ke(1):(G=eA(J,ke(.5))|0,J=ke(G?1:0)),p=ke(p+J))}while(!1);return ke(p/y)}function gm(p,y,w,G,J,U,le,Ge,Xe,bt,It,rr,an){p=p|0,y=ke(y),w=w|0,G=ke(G),J=J|0,U=ke(U),le=le|0,Ge=ke(Ge),Xe=ke(Xe),bt=ke(bt),It=ke(It),rr=ke(rr),an=an|0;var Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As;return Xe>2]),zi!=ke(0))?(Ds=ke(um(y,zi,0,0)),Si=ke(um(G,zi,0,0)),Un=ke(um(U,zi,0,0)),zi=ke(um(Ge,zi,0,0))):(Un=U,Ds=y,zi=Ge,Si=G),(J|0)==(p|0)?Ks=eA(Un,Ds)|0:Ks=0,(le|0)==(w|0)?an=eA(zi,Si)|0:an=0,!Ks&&(So=ke(y-It),!(cs(p,So,Xe)|0))&&!(na(p,So,J,Xe)|0)?Ks=ko(p,So,J,U,Xe)|0:Ks=1,!an&&(ss=ke(G-rr),!(cs(w,ss,bt)|0))&&!(na(w,ss,le,bt)|0)?an=ko(w,ss,le,Ge,bt)|0:an=1,an=Ks&an),an|0}function cs(p,y,w){return p=p|0,y=ke(y),w=ke(w),(p|0)==1?p=eA(y,w)|0:p=0,p|0}function na(p,y,w,G){return p=p|0,y=ke(y),w=w|0,G=ke(G),(p|0)==2&(w|0)==0?y>=G?p=1:p=eA(y,G)|0:p=0,p|0}function ko(p,y,w,G,J){return p=p|0,y=ke(y),w=w|0,G=ke(G),J=ke(J),(p|0)==2&(w|0)==2&G>y?J<=y?p=1:p=eA(y,J)|0:p=0,p|0}function ki(p,y,w,G,J,U,le,Ge,Xe,bt,It){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,bt=bt|0,It=It|0;var rr=0,an=0,Ks=0,zi=0,Un=As,Ds=As,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=As,w0=As,bE=As,nh=0,x_=0;wg=B,B=B+160|0,Tc=wg+152|0,fl=wg+120|0,uu=wg+104|0,ss=wg+72|0,zi=wg+56|0,hl=wg+8|0,So=wg,pi=(o[2279]|0)+1|0,o[2279]=pi,Bg=p+984|0,n[Bg>>0]|0&&(o[p+512>>2]|0)!=(o[2278]|0)?Si=4:(o[p+516>>2]|0)==(G|0)?Dg=0:Si=4,(Si|0)==4&&(o[p+520>>2]=0,o[p+924>>2]=-1,o[p+928>>2]=-1,I[p+932>>2]=ke(-1),I[p+936>>2]=ke(-1),Dg=1);e:do if(o[p+964>>2]|0)if(Un=ke(Kl(p,2,le)),Ds=ke(Kl(p,0,le)),rr=p+916|0,bE=ke(I[rr>>2]),w0=ke(I[p+920>>2]),em=ke(I[p+932>>2]),gm(J,y,U,w,o[p+924>>2]|0,bE,o[p+928>>2]|0,w0,em,ke(I[p+936>>2]),Un,Ds,It)|0)Si=22;else if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,em=ke(I[rr>>2]),w0=ke(I[p+524+(an*24|0)+4>>2]),bE=ke(I[p+524+(an*24|0)+16>>2]),gm(J,y,U,w,o[p+524+(an*24|0)+8>>2]|0,em,o[p+524+(an*24|0)+12>>2]|0,w0,bE,ke(I[p+524+(an*24|0)+20>>2]),Un,Ds,It)|0){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}else{if(Xe){if(rr=p+916|0,!(eA(ke(I[rr>>2]),y)|0)){Si=21;break}if(!(eA(ke(I[p+920>>2]),w)|0)){Si=21;break}if((o[p+924>>2]|0)!=(J|0)){Si=21;break}rr=(o[p+928>>2]|0)==(U|0)?rr:0,Si=22;break}if(Ks=o[p+520>>2]|0,!Ks)Si=21;else for(an=0;;){if(rr=p+524+(an*24|0)|0,eA(ke(I[rr>>2]),y)|0&&eA(ke(I[p+524+(an*24|0)+4>>2]),w)|0&&(o[p+524+(an*24|0)+8>>2]|0)==(J|0)&&(o[p+524+(an*24|0)+12>>2]|0)==(U|0)){Si=22;break e}if(an=an+1|0,an>>>0>=Ks>>>0){Si=21;break}}}while(!1);do if((Si|0)==21)n[11697]|0?(rr=0,Si=28):(rr=0,Si=31);else if((Si|0)==22){if(an=(n[11697]|0)!=0,!((rr|0)!=0&(Dg^1)))if(an){Si=28;break}else{Si=31;break}zi=rr+16|0,o[p+908>>2]=o[zi>>2],Ks=rr+20|0,o[p+912>>2]=o[Ks>>2],(n[11698]|0)==0|an^1||(o[So>>2]=jf(pi)|0,o[So+4>>2]=pi,fd(p,4,2972,So),an=o[p+972>>2]|0,an|0&&DF[an&127](p),J=Ld(J,Xe)|0,U=Ld(U,Xe)|0,x_=+ke(I[zi>>2]),nh=+ke(I[Ks>>2]),o[hl>>2]=J,o[hl+4>>2]=U,C[hl+8>>3]=+y,C[hl+16>>3]=+w,C[hl+24>>3]=x_,C[hl+32>>3]=nh,o[hl+40>>2]=bt,fd(p,4,2989,hl))}while(!1);return(Si|0)==28&&(an=jf(pi)|0,o[zi>>2]=an,o[zi+4>>2]=pi,o[zi+8>>2]=Dg?3047:11699,fd(p,4,3038,zi),an=o[p+972>>2]|0,an|0&&DF[an&127](p),hl=Ld(J,Xe)|0,Si=Ld(U,Xe)|0,o[ss>>2]=hl,o[ss+4>>2]=Si,C[ss+8>>3]=+y,C[ss+16>>3]=+w,o[ss+24>>2]=bt,fd(p,4,3049,ss),Si=31),(Si|0)==31&&(AC(p,y,w,G,J,U,le,Ge,Xe,It),n[11697]|0&&(an=o[2279]|0,hl=jf(an)|0,o[uu>>2]=hl,o[uu+4>>2]=an,o[uu+8>>2]=Dg?3047:11699,fd(p,4,3083,uu),an=o[p+972>>2]|0,an|0&&DF[an&127](p),hl=Ld(J,Xe)|0,uu=Ld(U,Xe)|0,nh=+ke(I[p+908>>2]),x_=+ke(I[p+912>>2]),o[fl>>2]=hl,o[fl+4>>2]=uu,C[fl+8>>3]=nh,C[fl+16>>3]=x_,o[fl+24>>2]=bt,fd(p,4,3092,fl)),o[p+516>>2]=G,rr||(an=p+520|0,rr=o[an>>2]|0,(rr|0)==16&&(n[11697]|0&&fd(p,4,3124,Tc),o[an>>2]=0,rr=0),Xe?rr=p+916|0:(o[an>>2]=rr+1,rr=p+524+(rr*24|0)|0),I[rr>>2]=y,I[rr+4>>2]=w,o[rr+8>>2]=J,o[rr+12>>2]=U,o[rr+16>>2]=o[p+908>>2],o[rr+20>>2]=o[p+912>>2],rr=0)),Xe&&(o[p+416>>2]=o[p+908>>2],o[p+420>>2]=o[p+912>>2],n[p+985>>0]=1,n[Bg>>0]=0),o[2279]=(o[2279]|0)+-1,o[p+512>>2]=o[2278],B=wg,Dg|(rr|0)==0|0}function Kl(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(ar(p,y,w)),ke(G+ke(Jr(p,y,w)))}function fd(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=B,B=B+16|0,J=U,o[J>>2]=G,p?G=o[p+976>>2]|0:G=0,By(G,p,y,w,J),B=U}function jf(p){return p=p|0,(p>>>0>60?3201:3201+(60-p)|0)|0}function Ld(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+32|0,w=J+12|0,G=J,o[w>>2]=o[254],o[w+4>>2]=o[255],o[w+8>>2]=o[256],o[G>>2]=o[257],o[G+4>>2]=o[258],o[G+8>>2]=o[259],(p|0)>2?p=11699:p=o[(y?G:w)+(p<<2)>>2]|0,B=J,p|0}function AC(p,y,w,G,J,U,le,Ge,Xe,bt){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=U|0,le=ke(le),Ge=ke(Ge),Xe=Xe|0,bt=bt|0;var It=0,rr=0,an=0,Ks=0,zi=As,Un=As,Ds=As,Si=As,So=As,ss=As,pi=As,hl=0,uu=0,fl=0,Tc=As,Bg=As,Dg=0,wg=As,em=0,w0=0,bE=0,nh=0,x_=0,$D=0,Fw=0,mh=0,kF=0,Zw=0,KT=0,jL=0,zL=0,aS=0,mf=0,d2=0,jT=0,fv=0,Fx=As,xB=As,Iv=As,GB=As,EE=As,Um=0,mN=0,zT=0,Km=0,p2=0,hg=As,OI=As,og=As,jo=As,Yg=As,Zl=As,f2=0,MI=As,xF=As,gI=As,UA=As,lA=As,GF=As,CN=0,qT=0,I1=As,T0=As,ek=0,fo=0,Lw=0,FF=0,Hd=As,of=0,vd=0,yp=0,l_=0,Yd=0,Qg=0,hv=0,Du=As,F3=0,ly=0;hv=B,B=B+16|0,Um=hv+12|0,mN=hv+8|0,zT=hv+4|0,Km=hv,np(p,(J|0)==0|(El(y)|0)^1,3326),np(p,(U|0)==0|(El(w)|0)^1,3406),vd=Qo(p,G)|0,o[p+496>>2]=vd,Yd=vg(2,vd)|0,Qg=vg(0,vd)|0,I[p+440>>2]=ke(ar(p,Yd,le)),I[p+444>>2]=ke(Jr(p,Yd,le)),I[p+428>>2]=ke(ar(p,Qg,le)),I[p+436>>2]=ke(Jr(p,Qg,le)),I[p+464>>2]=ke(Ng(p,Yd)),I[p+468>>2]=ke(Rf(p,Yd)),I[p+452>>2]=ke(Ng(p,Qg)),I[p+460>>2]=ke(Rf(p,Qg)),I[p+488>>2]=ke(uI(p,Yd,le)),I[p+492>>2]=ke(Th(p,Yd,le)),I[p+476>>2]=ke(uI(p,Qg,le)),I[p+484>>2]=ke(Th(p,Qg,le));do if(o[p+964>>2]|0)oE(p,y,w,J,U,le,Ge);else{if(yp=p+948|0,l_=(o[p+952>>2]|0)-(o[yp>>2]|0)>>2,!l_){TT(p,y,w,J,U,le,Ge);break}if(!Xe&&sB(p,y,w,J,U,le,Ge)|0)break;Dr(p),d2=p+508|0,n[d2>>0]=0,Yd=vg(o[p+4>>2]|0,vd)|0,Qg=RT(Yd,vd)|0,of=Gn(Yd)|0,jT=o[p+8>>2]|0,fo=p+28|0,fv=(o[fo>>2]|0)!=0,lA=of?le:Ge,I1=of?Ge:le,Fx=ke(wy(p,Yd,le)),xB=ke(jE(p,Yd,le)),zi=ke(wy(p,Qg,le)),GF=ke(j_(p,Yd,le)),T0=ke(j_(p,Qg,le)),fl=of?J:U,ek=of?U:J,Hd=of?GF:T0,So=of?T0:GF,UA=ke(Kl(p,2,le)),Si=ke(Kl(p,0,le)),Un=ke(ke(od(p+364|0,le))-Hd),Ds=ke(ke(od(p+380|0,le))-Hd),ss=ke(ke(od(p+372|0,Ge))-So),pi=ke(ke(od(p+388|0,Ge))-So),Iv=of?Un:ss,GB=of?Ds:pi,UA=ke(y-UA),y=ke(UA-Hd),El(y)|0?Hd=y:Hd=ke(zs(ke(fU(y,Ds)),Un)),xF=ke(w-Si),y=ke(xF-So),El(y)|0?gI=y:gI=ke(zs(ke(fU(y,pi)),ss)),Un=of?Hd:gI,MI=of?gI:Hd;e:do if((fl|0)==1)for(G=0,rr=0;;){if(It=Wa(p,rr)|0,!G)ke(tf(It))>ke(0)&&ke(Ty(It))>ke(0)?G=It:G=0;else if(NT(It)|0){Ks=0;break e}if(rr=rr+1|0,rr>>>0>=l_>>>0){Ks=G;break}}else Ks=0;while(!1);hl=Ks+500|0,uu=Ks+504|0,G=0,It=0,y=ke(0),an=0;do{if(rr=o[(o[yp>>2]|0)+(an<<2)>>2]|0,(o[rr+36>>2]|0)==1)US(rr),n[rr+985>>0]=1,n[rr+984>>0]=0;else{vy(rr),Xe&&UE(rr,Qo(rr,vd)|0,Un,MI,Hd);do if((o[rr+24>>2]|0)!=1)if((rr|0)==(Ks|0)){o[hl>>2]=o[2278],I[uu>>2]=ke(0);break}else{$I(p,rr,Hd,J,gI,Hd,gI,U,vd,bt);break}else It|0&&(o[It+960>>2]=rr),o[rr+960>>2]=0,It=rr,G=G|0?G:rr;while(!1);Zl=ke(I[rr+504>>2]),y=ke(y+ke(Zl+ke(Kl(rr,Yd,Hd))))}an=an+1|0}while((an|0)!=(l_|0));for(bE=y>Un,f2=fv&((fl|0)==2&bE)?1:fl,em=(ek|0)==1,x_=em&(Xe^1),$D=(f2|0)==1,Fw=(f2|0)==2,mh=976+(Yd<<2)|0,kF=(ek|2|0)==2,aS=em&(fv^1),Zw=1040+(Qg<<2)|0,KT=1040+(Yd<<2)|0,jL=976+(Qg<<2)|0,zL=(ek|0)!=1,bE=fv&((fl|0)!=0&bE),w0=p+976|0,em=em^1,y=Un,Dg=0,nh=0,Zl=ke(0),EE=ke(0);;){e:do if(Dg>>>0>>0)for(uu=o[yp>>2]|0,an=0,pi=ke(0),ss=ke(0),Ds=ke(0),Un=ke(0),rr=0,It=0,Ks=Dg;;){if(hl=o[uu+(Ks<<2)>>2]|0,(o[hl+36>>2]|0)!=1&&(o[hl+940>>2]=nh,(o[hl+24>>2]|0)!=1)){if(Si=ke(Kl(hl,Yd,Hd)),mf=o[mh>>2]|0,w=ke(od(hl+380+(mf<<3)|0,lA)),So=ke(I[hl+504>>2]),w=ke(fU(w,So)),w=ke(zs(ke(od(hl+364+(mf<<3)|0,lA)),w)),fv&(an|0)!=0&ke(Si+ke(ss+w))>y){U=an,Si=pi,fl=Ks;break e}Si=ke(Si+w),w=ke(ss+Si),Si=ke(pi+Si),NT(hl)|0&&(Ds=ke(Ds+ke(tf(hl))),Un=ke(Un-ke(So*ke(Ty(hl))))),It|0&&(o[It+960>>2]=hl),o[hl+960>>2]=0,an=an+1|0,It=hl,rr=rr|0?rr:hl}else Si=pi,w=ss;if(Ks=Ks+1|0,Ks>>>0>>0)pi=Si,ss=w;else{U=an,fl=Ks;break}}else U=0,Si=ke(0),Ds=ke(0),Un=ke(0),rr=0,fl=Dg;while(!1);mf=Ds>ke(0)&Dske(0)&UnGB&((El(GB)|0)^1))y=GB,mf=51;else if(n[(o[w0>>2]|0)+3>>0]|0)mf=51;else{if(Tc!=ke(0)&&ke(tf(p))!=ke(0)){mf=53;break}y=Si,mf=53}while(!1);if((mf|0)==51&&(mf=0,El(y)|0?mf=53:(Bg=ke(y-Si),wg=y)),(mf|0)==53&&(mf=0,Si>2]|0,Ks=Bgke(0),ss=ke(Bg/Tc),Ds=ke(0),Si=ke(0),y=ke(0),It=rr;do w=ke(od(It+380+(an<<3)|0,lA)),Un=ke(od(It+364+(an<<3)|0,lA)),Un=ke(fU(w,ke(zs(Un,ke(I[It+504>>2]))))),Ks?(w=ke(Un*ke(Ty(It))),w!=ke(-0)&&(Du=ke(Un-ke(So*w)),hg=ke(BA(It,Yd,Du,wg,Hd)),Du!=hg)&&(Ds=ke(Ds-ke(hg-Un)),y=ke(y+w))):hl&&(OI=ke(tf(It)),OI!=ke(0))&&(Du=ke(Un+ke(ss*OI)),og=ke(BA(It,Yd,Du,wg,Hd)),Du!=og)&&(Ds=ke(Ds-ke(og-Un)),Si=ke(Si-OI)),It=o[It+960>>2]|0;while(It|0);if(y=ke(pi+y),Un=ke(Bg+Ds),p2)y=ke(0);else{So=ke(Tc+Si),Ks=o[mh>>2]|0,hl=Unke(0),So=ke(Un/So),y=ke(0);do{Du=ke(od(rr+380+(Ks<<3)|0,lA)),Ds=ke(od(rr+364+(Ks<<3)|0,lA)),Ds=ke(fU(Du,ke(zs(Ds,ke(I[rr+504>>2]))))),hl?(Du=ke(Ds*ke(Ty(rr))),Un=ke(-Du),Du!=ke(-0)?(Du=ke(ss*Un),Un=ke(BA(rr,Yd,ke(Ds+(uu?Un:Du)),wg,Hd))):Un=Ds):an&&(jo=ke(tf(rr)),jo!=ke(0))?Un=ke(BA(rr,Yd,ke(Ds+ke(So*jo)),wg,Hd)):Un=Ds,y=ke(y-ke(Un-Ds)),Si=ke(Kl(rr,Yd,Hd)),w=ke(Kl(rr,Qg,Hd)),Un=ke(Un+Si),I[mN>>2]=Un,o[Km>>2]=1,Ds=ke(I[rr+396>>2]);e:do if(El(Ds)|0){It=El(MI)|0;do if(!It){if(bE|(K_(rr,Qg,MI)|0|em)||($A(p,rr)|0)!=4||(o[(Qm(rr,Qg)|0)+4>>2]|0)==3||(o[(zf(rr,Qg)|0)+4>>2]|0)==3)break;I[Um>>2]=MI,o[zT>>2]=1;break e}while(!1);if(K_(rr,Qg,MI)|0){It=o[rr+992+(o[jL>>2]<<2)>>2]|0,Du=ke(w+ke(od(It,MI))),I[Um>>2]=Du,It=zL&(o[It+4>>2]|0)==2,o[zT>>2]=((El(Du)|0|It)^1)&1;break}else{I[Um>>2]=MI,o[zT>>2]=It?0:2;break}}else Du=ke(Un-Si),Tc=ke(Du/Ds),Du=ke(Ds*Du),o[zT>>2]=1,I[Um>>2]=ke(w+(of?Tc:Du));while(!1);mb(rr,Yd,wg,Hd,Km,mN),mb(rr,Qg,MI,Hd,zT,Um);do if(!(K_(rr,Qg,MI)|0)&&($A(p,rr)|0)==4){if((o[(Qm(rr,Qg)|0)+4>>2]|0)==3){It=0;break}It=(o[(zf(rr,Qg)|0)+4>>2]|0)!=3}else It=0;while(!1);Du=ke(I[mN>>2]),Tc=ke(I[Um>>2]),F3=o[Km>>2]|0,ly=o[zT>>2]|0,ki(rr,of?Du:Tc,of?Tc:Du,vd,of?F3:ly,of?ly:F3,Hd,gI,Xe&(It^1),3488,bt)|0,n[d2>>0]=n[d2>>0]|n[rr+508>>0],rr=o[rr+960>>2]|0}while(rr|0)}}else y=ke(0);if(y=ke(Bg+y),ly=y>0]=ly|l[d2>>0],Fw&y>ke(0)?(It=o[mh>>2]|0,o[p+364+(It<<3)+4>>2]|0&&(Yg=ke(od(p+364+(It<<3)|0,lA)),Yg>=ke(0))?Un=ke(zs(ke(0),ke(Yg-ke(wg-y)))):Un=ke(0)):Un=y,hl=Dg>>>0>>0,hl){Ks=o[yp>>2]|0,an=Dg,It=0;do rr=o[Ks+(an<<2)>>2]|0,o[rr+24>>2]|0||(It=((o[(Qm(rr,Yd)|0)+4>>2]|0)==3&1)+It|0,It=It+((o[(zf(rr,Yd)|0)+4>>2]|0)==3&1)|0),an=an+1|0;while((an|0)!=(fl|0));It?(Si=ke(0),w=ke(0)):mf=101}else mf=101;e:do if((mf|0)==101)switch(mf=0,jT|0){case 1:{It=0,Si=ke(Un*ke(.5)),w=ke(0);break e}case 2:{It=0,Si=Un,w=ke(0);break e}case 3:{if(U>>>0<=1){It=0,Si=ke(0),w=ke(0);break e}w=ke((U+-1|0)>>>0),It=0,Si=ke(0),w=ke(ke(zs(Un,ke(0)))/w);break e}case 5:{w=ke(Un/ke((U+1|0)>>>0)),It=0,Si=w;break e}case 4:{w=ke(Un/ke(U>>>0)),It=0,Si=ke(w*ke(.5));break e}default:{It=0,Si=ke(0),w=ke(0);break e}}while(!1);if(y=ke(Fx+Si),hl){Ds=ke(Un/ke(It|0)),an=o[yp>>2]|0,rr=Dg,Un=ke(0);do{It=o[an+(rr<<2)>>2]|0;e:do if((o[It+36>>2]|0)!=1){switch(o[It+24>>2]|0){case 1:{if(R_(It,Yd)|0){if(!Xe)break e;Du=ke(Cb(It,Yd,wg)),Du=ke(Du+ke(Ng(p,Yd))),Du=ke(Du+ke(ar(It,Yd,Hd))),I[It+400+(o[KT>>2]<<2)>>2]=Du;break e}break}case 0:if(ly=(o[(Qm(It,Yd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=ly?Du:y,Xe&&(ly=It+400+(o[KT>>2]<<2)|0,I[ly>>2]=ke(y+ke(I[ly>>2]))),ly=(o[(zf(It,Yd)|0)+4>>2]|0)==3,Du=ke(Ds+y),y=ly?Du:y,x_){Du=ke(w+ke(Kl(It,Yd,Hd))),Un=MI,y=ke(y+ke(Du+ke(I[It+504>>2])));break e}else{y=ke(y+ke(w+ke(Ry(It,Yd,Hd)))),Un=ke(zs(Un,ke(Ry(It,Qg,Hd))));break e}default:}Xe&&(Du=ke(Si+ke(Ng(p,Yd))),ly=It+400+(o[KT>>2]<<2)|0,I[ly>>2]=ke(Du+ke(I[ly>>2])))}while(!1);rr=rr+1|0}while((rr|0)!=(fl|0))}else Un=ke(0);if(w=ke(xB+y),kF?Si=ke(ke(BA(p,Qg,ke(T0+Un),I1,le))-T0):Si=MI,Ds=ke(ke(BA(p,Qg,ke(T0+(aS?MI:Un)),I1,le))-T0),hl&Xe){rr=Dg;do{an=o[(o[yp>>2]|0)+(rr<<2)>>2]|0;do if((o[an+36>>2]|0)!=1){if((o[an+24>>2]|0)==1){if(R_(an,Qg)|0){if(Du=ke(Cb(an,Qg,MI)),Du=ke(Du+ke(Ng(p,Qg))),Du=ke(Du+ke(ar(an,Qg,Hd))),It=o[Zw>>2]|0,I[an+400+(It<<2)>>2]=Du,!(El(Du)|0))break}else It=o[Zw>>2]|0;Du=ke(Ng(p,Qg)),I[an+400+(It<<2)>>2]=ke(Du+ke(ar(an,Qg,Hd)));break}It=$A(p,an)|0;do if((It|0)==4){if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){mf=139;break}if((o[(zf(an,Qg)|0)+4>>2]|0)==3){mf=139;break}if(K_(an,Qg,MI)|0){y=zi;break}F3=o[an+908+(o[mh>>2]<<2)>>2]|0,o[Um>>2]=F3,y=ke(I[an+396>>2]),ly=El(y)|0,Un=(o[E>>2]=F3,ke(I[E>>2])),ly?y=Ds:(Bg=ke(Kl(an,Qg,Hd)),Du=ke(Un/y),y=ke(y*Un),y=ke(Bg+(of?Du:y))),I[mN>>2]=y,I[Um>>2]=ke(ke(Kl(an,Yd,Hd))+Un),o[zT>>2]=1,o[Km>>2]=1,mb(an,Yd,wg,Hd,zT,Um),mb(an,Qg,MI,Hd,Km,mN),y=ke(I[Um>>2]),Bg=ke(I[mN>>2]),Du=of?y:Bg,y=of?Bg:y,ly=((El(Du)|0)^1)&1,ki(an,Du,y,vd,ly,((El(y)|0)^1)&1,Hd,gI,1,3493,bt)|0,y=zi}else mf=139;while(!1);e:do if((mf|0)==139){mf=0,y=ke(Si-ke(Ry(an,Qg,Hd)));do if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){if((o[(zf(an,Qg)|0)+4>>2]|0)!=3)break;y=ke(zi+ke(zs(ke(0),ke(y*ke(.5)))));break e}while(!1);if((o[(zf(an,Qg)|0)+4>>2]|0)==3){y=zi;break}if((o[(Qm(an,Qg)|0)+4>>2]|0)==3){y=ke(zi+ke(zs(ke(0),y)));break}switch(It|0){case 1:{y=zi;break e}case 2:{y=ke(zi+ke(y*ke(.5)));break e}default:{y=ke(zi+y);break e}}}while(!1);Du=ke(Zl+y),ly=an+400+(o[Zw>>2]<<2)|0,I[ly>>2]=ke(Du+ke(I[ly>>2]))}while(!1);rr=rr+1|0}while((rr|0)!=(fl|0))}if(Zl=ke(Zl+Ds),EE=ke(zs(EE,w)),U=nh+1|0,fl>>>0>=l_>>>0)break;y=wg,Dg=fl,nh=U}do if(Xe){if(It=U>>>0>1,!It&&!(KS(p)|0))break;if(!(El(MI)|0)){y=ke(MI-Zl);e:do switch(o[p+12>>2]|0){case 3:{zi=ke(zi+y),ss=ke(0);break}case 2:{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break}case 4:{MI>Zl?ss=ke(y/ke(U>>>0)):ss=ke(0);break}case 7:if(MI>Zl){zi=ke(zi+ke(y/ke(U<<1>>>0))),ss=ke(y/ke(U>>>0)),ss=It?ss:ke(0);break e}else{zi=ke(zi+ke(y*ke(.5))),ss=ke(0);break e}case 6:{ss=ke(y/ke(nh>>>0)),ss=MI>Zl&It?ss:ke(0);break}default:ss=ke(0)}while(!1);if(U|0)for(hl=1040+(Qg<<2)|0,uu=976+(Qg<<2)|0,Ks=0,rr=0;;){e:do if(rr>>>0>>0)for(Un=ke(0),Ds=ke(0),y=ke(0),an=rr;;){It=o[(o[yp>>2]|0)+(an<<2)>>2]|0;do if((o[It+36>>2]|0)!=1&&!(o[It+24>>2]|0)){if((o[It+940>>2]|0)!=(Ks|0))break e;if(_b(It,Qg)|0&&(Du=ke(I[It+908+(o[uu>>2]<<2)>>2]),y=ke(zs(y,ke(Du+ke(Kl(It,Qg,Hd)))))),($A(p,It)|0)!=5)break;Yg=ke(z_(It)),Yg=ke(Yg+ke(ar(It,0,Hd))),Du=ke(I[It+912>>2]),Du=ke(ke(Du+ke(Kl(It,0,Hd)))-Yg),Yg=ke(zs(Ds,Yg)),Du=ke(zs(Un,Du)),Un=Du,Ds=Yg,y=ke(zs(y,ke(Yg+Du)))}while(!1);if(It=an+1|0,It>>>0>>0)an=It;else{an=It;break}}else Ds=ke(0),y=ke(0),an=rr;while(!1);if(So=ke(ss+y),w=zi,zi=ke(zi+So),rr>>>0>>0){Si=ke(w+Ds),It=rr;do{rr=o[(o[yp>>2]|0)+(It<<2)>>2]|0;e:do if((o[rr+36>>2]|0)!=1&&!(o[rr+24>>2]|0))switch($A(p,rr)|0){case 1:{Du=ke(w+ke(ar(rr,Qg,Hd))),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 3:{Du=ke(ke(zi-ke(Jr(rr,Qg,Hd)))-ke(I[rr+908+(o[uu>>2]<<2)>>2])),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 2:{Du=ke(w+ke(ke(So-ke(I[rr+908+(o[uu>>2]<<2)>>2]))*ke(.5))),I[rr+400+(o[hl>>2]<<2)>>2]=Du;break e}case 4:{if(Du=ke(w+ke(ar(rr,Qg,Hd))),I[rr+400+(o[hl>>2]<<2)>>2]=Du,K_(rr,Qg,MI)|0||(of?(Un=ke(I[rr+908>>2]),y=ke(Un+ke(Kl(rr,Yd,Hd))),Ds=So):(Ds=ke(I[rr+912>>2]),Ds=ke(Ds+ke(Kl(rr,Qg,Hd))),y=So,Un=ke(I[rr+908>>2])),eA(y,Un)|0&&eA(Ds,ke(I[rr+912>>2]))|0))break e;ki(rr,y,Ds,vd,1,1,Hd,gI,1,3501,bt)|0;break e}case 5:{I[rr+404>>2]=ke(ke(Si-ke(z_(rr)))+ke(Cb(rr,0,MI)));break e}default:break e}while(!1);It=It+1|0}while((It|0)!=(an|0))}if(Ks=Ks+1|0,(Ks|0)==(U|0))break;rr=an}}}while(!1);if(I[p+908>>2]=ke(BA(p,2,UA,le,le)),I[p+912>>2]=ke(BA(p,0,xF,Ge,le)),f2|0&&(CN=o[p+32>>2]|0,qT=(f2|0)==2,!(qT&(CN|0)!=2))?qT&(CN|0)==2&&(y=ke(GF+wg),y=ke(zs(ke(fU(y,ke(zE(p,Yd,EE,lA)))),GF)),mf=198):(y=ke(BA(p,Yd,EE,lA,le)),mf=198),(mf|0)==198&&(I[p+908+(o[976+(Yd<<2)>>2]<<2)>>2]=y),ek|0&&(Lw=o[p+32>>2]|0,FF=(ek|0)==2,!(FF&(Lw|0)!=2))?FF&(Lw|0)==2&&(y=ke(T0+MI),y=ke(zs(ke(fU(y,ke(zE(p,Qg,ke(T0+Zl),I1)))),T0)),mf=204):(y=ke(BA(p,Qg,ke(T0+Zl),I1,le)),mf=204),(mf|0)==204&&(I[p+908+(o[976+(Qg<<2)>>2]<<2)>>2]=y),Xe){if((o[fo>>2]|0)==2){rr=976+(Qg<<2)|0,an=1040+(Qg<<2)|0,It=0;do Ks=Wa(p,It)|0,o[Ks+24>>2]|0||(F3=o[rr>>2]|0,Du=ke(I[p+908+(F3<<2)>>2]),ly=Ks+400+(o[an>>2]<<2)|0,Du=ke(Du-ke(I[ly>>2])),I[ly>>2]=ke(Du-ke(I[Ks+908+(F3<<2)>>2]))),It=It+1|0;while((It|0)!=(l_|0))}if(G|0){It=of?f2:J;do oB(p,G,Hd,It,gI,vd,bt),G=o[G+960>>2]|0;while(G|0)}if(It=(Yd|2|0)==3,rr=(Qg|2|0)==3,It|rr){G=0;do an=o[(o[yp>>2]|0)+(G<<2)>>2]|0,(o[an+36>>2]|0)!=1&&(It&&DT(p,an,Yd),rr&&DT(p,an,Qg)),G=G+1|0;while((G|0)!=(l_|0))}}}while(!1);B=hv}function JE(p,y){p=p|0,y=ke(y);var w=0;MA(p,y>=ke(0),3147),w=y==ke(0),I[p+4>>2]=w?ke(0):y}function Ym(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=G|0;var J=As,U=As,le=0,Ge=0,Xe=0;o[2278]=(o[2278]|0)+1,vy(p),K_(p,2,y)|0?(J=ke(od(o[p+992>>2]|0,y)),Xe=1,J=ke(J+ke(Kl(p,2,y)))):(J=ke(od(p+380|0,y)),J>=ke(0)?Xe=2:(Xe=((El(y)|0)^1)&1,J=y)),K_(p,0,w)|0?(U=ke(od(o[p+996>>2]|0,w)),Ge=1,U=ke(U+ke(Kl(p,0,y)))):(U=ke(od(p+388|0,w)),U>=ke(0)?Ge=2:(Ge=((El(w)|0)^1)&1,U=w)),le=p+976|0,ki(p,J,U,G,Xe,Ge,y,w,1,3189,o[le>>2]|0)|0&&(UE(p,o[p+496>>2]|0,y,w,y),KE(p,ke(I[(o[le>>2]|0)+4>>2]),ke(0),ke(0)),n[11696]|0)&&QS(p,7)}function vy(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;Ge=B,B=B+32|0,le=Ge+24|0,U=Ge+16|0,G=Ge+8|0,J=Ge,w=0;do y=p+380+(w<<3)|0,o[p+380+(w<<3)+4>>2]|0&&(Xe=y,bt=o[Xe+4>>2]|0,It=G,o[It>>2]=o[Xe>>2],o[It+4>>2]=bt,It=p+364+(w<<3)|0,bt=o[It+4>>2]|0,Xe=J,o[Xe>>2]=o[It>>2],o[Xe+4>>2]=bt,o[U>>2]=o[G>>2],o[U+4>>2]=o[G+4>>2],o[le>>2]=o[J>>2],o[le+4>>2]=o[J+4>>2],sE(U,le)|0)||(y=p+348+(w<<3)|0),o[p+992+(w<<2)>>2]=y,w=w+1|0;while((w|0)!=2);B=Ge}function K_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0;switch(p=o[p+992+(o[976+(y<<2)>>2]<<2)>>2]|0,o[p+4>>2]|0){case 0:case 3:{p=0;break}case 1:{ke(I[p>>2])>2])>2]|0){case 2:{y=ke(ke(ke(I[p>>2])*y)/ke(100));break}case 1:{y=ke(I[p>>2]);break}default:y=ke(ue)}return ke(y)}function UE(p,y,w,G,J){p=p|0,y=y|0,w=ke(w),G=ke(G),J=ke(J);var U=0,le=As;y=o[p+944>>2]|0?y:1,U=vg(o[p+4>>2]|0,y)|0,y=RT(U,y)|0,w=ke(X2(p,U,w)),G=ke(X2(p,y,G)),le=ke(w+ke(ar(p,U,J))),I[p+400+(o[1040+(U<<2)>>2]<<2)>>2]=le,w=ke(w+ke(Jr(p,U,J))),I[p+400+(o[1e3+(U<<2)>>2]<<2)>>2]=w,w=ke(G+ke(ar(p,y,J))),I[p+400+(o[1040+(y<<2)>>2]<<2)>>2]=w,J=ke(G+ke(Jr(p,y,J))),I[p+400+(o[1e3+(y<<2)>>2]<<2)>>2]=J}function KE(p,y,w,G){p=p|0,y=ke(y),w=ke(w),G=ke(G);var J=0,U=0,le=As,Ge=As,Xe=0,bt=0,It=As,rr=0,an=As,Ks=As,zi=As,Un=As;if(y!=ke(0)&&(J=p+400|0,Un=ke(I[J>>2]),U=p+404|0,zi=ke(I[U>>2]),rr=p+416|0,Ks=ke(I[rr>>2]),bt=p+420|0,le=ke(I[bt>>2]),an=ke(Un+w),It=ke(zi+G),G=ke(an+Ks),Ge=ke(It+le),Xe=(o[p+988>>2]|0)==1,I[J>>2]=ke(um(Un,y,0,Xe)),I[U>>2]=ke(um(zi,y,0,Xe)),w=ke(Az(ke(Ks*y),ke(1))),eA(w,ke(0))|0?U=0:U=(eA(w,ke(1))|0)^1,w=ke(Az(ke(le*y),ke(1))),eA(w,ke(0))|0?J=0:J=(eA(w,ke(1))|0)^1,Un=ke(um(G,y,Xe&U,Xe&(U^1))),I[rr>>2]=ke(Un-ke(um(an,y,0,Xe))),Un=ke(um(Ge,y,Xe&J,Xe&(J^1))),I[bt>>2]=ke(Un-ke(um(It,y,0,Xe))),U=(o[p+952>>2]|0)-(o[p+948>>2]|0)>>2,U|0)){J=0;do KE(Wa(p,J)|0,y,an,It),J=J+1|0;while((J|0)!=(U|0))}}function Yp(p,y,w,G,J){switch(p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,w|0){case 5:case 0:{p=zAe(o[489]|0,G,J)|0;break}default:p=pPt(G,J)|0}return p|0}function JS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;J=B,B=B+16|0,U=J,o[U>>2]=G,By(p,0,y,w,U),B=J}function By(p,y,w,G,J){if(p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,p=p|0?p:956,ide[o[p+8>>2]&1](p,y,w,G,J)|0,(w|0)==5)Ko();else return}function $0(p,y,w){p=p|0,y=y|0,w=w|0,n[p+y>>0]=w&1}function fw(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(Q2(p,G),xc(p,o[y>>2]|0,o[w>>2]|0,G))}function Q2(p,y){p=p|0,y=y|0;var w=0;if((ut(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function ut(p){return p=p|0,1073741823}function ar(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+96>>2]|0?p=p+92|0:p=yg(p+60|0,o[1040+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Jr(p,y,w){return p=p|0,y=y|0,w=ke(w),Gn(y)|0&&o[p+104>>2]|0?p=p+100|0:p=yg(p+60|0,o[1e3+(y<<2)>>2]|0,992)|0,ke(Ts(p,w))}function Gn(p){return p=p|0,(p|1|0)==3|0}function Ts(p,y){return p=p|0,y=ke(y),(o[p+4>>2]|0)==3?y=ke(0):y=ke(od(p,y)),ke(y)}function Qo(p,y){return p=p|0,y=y|0,p=o[p>>2]|0,(p|0?p:(y|0)>1?y:1)|0}function vg(p,y){p=p|0,y=y|0;var w=0;e:do if((y|0)==2){switch(p|0){case 2:{p=3;break e}case 3:break;default:{w=4;break e}}p=2}else w=4;while(!1);return p|0}function Ng(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+312>>2]|0&&(w=ke(I[p+308>>2]),w>=ke(0))||(w=ke(zs(ke(I[(yg(p+276|0,o[1040+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function Rf(p,y){p=p|0,y=y|0;var w=As;return Gn(y)|0&&o[p+320>>2]|0&&(w=ke(I[p+316>>2]),w>=ke(0))||(w=ke(zs(ke(I[(yg(p+276|0,o[1e3+(y<<2)>>2]|0,992)|0)>>2]),ke(0)))),ke(w)}function uI(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+240>>2]|0&&(G=ke(od(p+236|0,w)),G>=ke(0))||(G=ke(zs(ke(od(yg(p+204|0,o[1040+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function Th(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return Gn(y)|0&&o[p+248>>2]|0&&(G=ke(od(p+244|0,w)),G>=ke(0))||(G=ke(zs(ke(od(yg(p+204|0,o[1e3+(y<<2)>>2]|0,992)|0,w)),ke(0)))),ke(G)}function oE(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,bt=As,It=As,rr=As,an=As,Ks=0,zi=0,Un=0;Un=B,B=B+16|0,Ks=Un,zi=p+964|0,np(p,(o[zi>>2]|0)!=0,3519),Ge=ke(j_(p,2,y)),Xe=ke(j_(p,0,y)),bt=ke(Kl(p,2,y)),It=ke(Kl(p,0,y)),El(y)|0?rr=y:rr=ke(zs(ke(0),ke(ke(y-bt)-Ge))),El(w)|0?an=w:an=ke(zs(ke(0),ke(ke(w-It)-Xe))),(G|0)==1&(J|0)==1?(I[p+908>>2]=ke(BA(p,2,ke(y-bt),U,U)),y=ke(BA(p,0,ke(w-It),le,U))):(Cz[o[zi>>2]&1](Ks,p,rr,G,an,J),rr=ke(Ge+ke(I[Ks>>2])),an=ke(y-bt),I[p+908>>2]=ke(BA(p,2,(G|2|0)==2?rr:an,U,U)),an=ke(Xe+ke(I[Ks+4>>2])),y=ke(w-It),y=ke(BA(p,0,(J|2|0)==2?an:y,le,U))),I[p+912>>2]=y,B=Un}function TT(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=As,Xe=As,bt=As,It=As;bt=ke(j_(p,2,U)),Ge=ke(j_(p,0,U)),It=ke(Kl(p,2,U)),Xe=ke(Kl(p,0,U)),y=ke(y-It),I[p+908>>2]=ke(BA(p,2,(G|2|0)==2?bt:y,U,U)),w=ke(w-Xe),I[p+912>>2]=ke(BA(p,0,(J|2|0)==2?Ge:w,le,U))}function sB(p,y,w,G,J,U,le){p=p|0,y=ke(y),w=ke(w),G=G|0,J=J|0,U=ke(U),le=ke(le);var Ge=0,Xe=As,bt=As;return Ge=(G|0)==2,!(y<=ke(0)&Ge)&&!(w<=ke(0)&(J|0)==2)&&!((G|0)==1&(J|0)==1)?p=0:(Xe=ke(Kl(p,0,U)),bt=ke(Kl(p,2,U)),Ge=y>2]=ke(BA(p,2,Ge?ke(0):y,U,U)),y=ke(w-Xe),Ge=w>2]=ke(BA(p,0,Ge?ke(0):y,le,U)),p=1),p|0}function RT(p,y){return p=p|0,y=y|0,aB(p)|0?p=vg(2,y)|0:p=0,p|0}function wy(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(uI(p,y,w)),ke(w+ke(Ng(p,y)))}function jE(p,y,w){return p=p|0,y=y|0,w=ke(w),w=ke(Th(p,y,w)),ke(w+ke(Rf(p,y)))}function j_(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(wy(p,y,w)),ke(G+ke(jE(p,y,w)))}function NT(p){return p=p|0,o[p+24>>2]|0?p=0:ke(tf(p))!=ke(0)?p=1:p=ke(Ty(p))!=ke(0),p|0}function tf(p){p=p|0;var y=As;if(o[p+944>>2]|0){if(y=ke(I[p+44>>2]),El(y)|0)return y=ke(I[p+40>>2]),p=y>ke(0)&((El(y)|0)^1),ke(p?y:ke(0))}else y=ke(0);return ke(y)}function Ty(p){p=p|0;var y=As,w=0,G=As;do if(o[p+944>>2]|0){if(y=ke(I[p+48>>2]),El(y)|0){if(w=n[(o[p+976>>2]|0)+2>>0]|0,!(w<<24>>24)&&(G=ke(I[p+40>>2]),G>24?ke(1):ke(0)}}else y=ke(0);while(!1);return ke(y)}function US(p){p=p|0;var y=0,w=0;if(fz(p+400|0,0,540)|0,n[p+985>>0]=1,Dr(p),w=Fs(p)|0,w|0){y=p+948|0,p=0;do US(o[(o[y>>2]|0)+(p<<2)>>2]|0),p=p+1|0;while((p|0)!=(w|0))}}function $I(p,y,w,G,J,U,le,Ge,Xe,bt){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=ke(U),le=ke(le),Ge=Ge|0,Xe=Xe|0,bt=bt|0;var It=0,rr=As,an=0,Ks=0,zi=As,Un=As,Ds=0,Si=As,So=0,ss=As,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0,w0=0;em=B,B=B+16|0,uu=em+12|0,fl=em+8|0,Tc=em+4|0,Bg=em,wg=vg(o[p+4>>2]|0,Xe)|0,pi=Gn(wg)|0,rr=ke(od(jS(y)|0,pi?U:le)),hl=K_(y,2,U)|0,Dg=K_(y,0,le)|0;do if(!(El(rr)|0)&&!(El(pi?w:J)|0)){if(It=y+504|0,!(El(ke(I[It>>2]))|0)&&(!(XR(o[y+976>>2]|0,0)|0)||(o[y+500>>2]|0)==(o[2278]|0)))break;I[It>>2]=ke(zs(rr,ke(j_(y,wg,U))))}else an=7;while(!1);do if((an|0)==7){if(So=pi^1,!(So|hl^1)){le=ke(od(o[y+992>>2]|0,U)),I[y+504>>2]=ke(zs(le,ke(j_(y,2,U))));break}if(!(pi|Dg^1)){le=ke(od(o[y+996>>2]|0,le)),I[y+504>>2]=ke(zs(le,ke(j_(y,0,U))));break}I[uu>>2]=ke(ue),I[fl>>2]=ke(ue),o[Tc>>2]=0,o[Bg>>2]=0,Si=ke(Kl(y,2,U)),ss=ke(Kl(y,0,U)),hl?(zi=ke(Si+ke(od(o[y+992>>2]|0,U))),I[uu>>2]=zi,o[Tc>>2]=1,Ks=1):(Ks=0,zi=ke(ue)),Dg?(rr=ke(ss+ke(od(o[y+996>>2]|0,le))),I[fl>>2]=rr,o[Bg>>2]=1,It=1):(It=0,rr=ke(ue)),an=o[p+32>>2]|0,pi&(an|0)==2?an=2:El(zi)|0&&!(El(w)|0)&&(I[uu>>2]=w,o[Tc>>2]=2,Ks=2,zi=w),!((an|0)==2&So)&&El(rr)|0&&!(El(J)|0)&&(I[fl>>2]=J,o[Bg>>2]=2,It=2,rr=J),Un=ke(I[y+396>>2]),Ds=El(Un)|0;do if(Ds)an=Ks;else{if((Ks|0)==1&So){I[fl>>2]=ke(ke(zi-Si)/Un),o[Bg>>2]=1,It=1,an=1;break}pi&(It|0)==1?(I[uu>>2]=ke(Un*ke(rr-ss)),o[Tc>>2]=1,It=1,an=1):an=Ks}while(!1);w0=El(w)|0,Ks=($A(p,y)|0)!=4,!(pi|hl|((G|0)!=1|w0)|(Ks|(an|0)==1))&&(I[uu>>2]=w,o[Tc>>2]=1,!Ds)&&(I[fl>>2]=ke(ke(w-Si)/Un),o[Bg>>2]=1,It=1),!(Dg|So|((Ge|0)!=1|(El(J)|0))|(Ks|(It|0)==1))&&(I[fl>>2]=J,o[Bg>>2]=1,!Ds)&&(I[uu>>2]=ke(Un*ke(J-ss)),o[Tc>>2]=1),mb(y,2,U,U,Tc,uu),mb(y,0,le,U,Bg,fl),w=ke(I[uu>>2]),J=ke(I[fl>>2]),ki(y,w,J,Xe,o[Tc>>2]|0,o[Bg>>2]|0,U,le,0,3565,bt)|0,le=ke(I[y+908+(o[976+(wg<<2)>>2]<<2)>>2]),I[y+504>>2]=ke(zs(le,ke(j_(y,wg,U))))}while(!1);o[y+500>>2]=o[2278],B=em}function BA(p,y,w,G,J){return p=p|0,y=y|0,w=ke(w),G=ke(G),J=ke(J),G=ke(zE(p,y,w,G)),ke(zs(G,ke(j_(p,y,J))))}function $A(p,y){return p=p|0,y=y|0,y=y+20|0,y=o[(o[y>>2]|0?y:p+16|0)>>2]|0,(y|0)==5&&aB(o[p+4>>2]|0)|0&&(y=1),y|0}function Qm(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+96>>2]|0?y=4:y=o[1040+(y<<2)>>2]|0,p+60+(y<<3)|0}function zf(p,y){return p=p|0,y=y|0,Gn(y)|0&&o[p+104>>2]|0?y=5:y=o[1e3+(y<<2)>>2]|0,p+60+(y<<3)|0}function mb(p,y,w,G,J,U){switch(p=p|0,y=y|0,w=ke(w),G=ke(G),J=J|0,U=U|0,w=ke(od(p+380+(o[976+(y<<2)>>2]<<3)|0,w)),w=ke(w+ke(Kl(p,y,G))),o[J>>2]|0){case 2:case 1:{J=El(w)|0,G=ke(I[U>>2]),I[U>>2]=J|G>2]=2,I[U>>2]=w);break}default:}}function R_(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(yg(p,4,948)|0)+4>>2]|0?p=1:p=(o[(yg(p,o[1040+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function Cb(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0;return p=p+132|0,Gn(y)|0&&(G=yg(p,4,948)|0,(o[G+4>>2]|0)!=0)?J=4:(G=yg(p,o[1040+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?J=4:w=ke(0)),(J|0)==4&&(w=ke(od(G,w))),ke(w)}function Ry(p,y,w){p=p|0,y=y|0,w=ke(w);var G=As;return G=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),G=ke(G+ke(ar(p,y,w))),ke(G+ke(Jr(p,y,w)))}function KS(p){p=p|0;var y=0,w=0,G=0;e:do if(aB(o[p+4>>2]|0)|0)y=0;else if((o[p+16>>2]|0)!=5)if(w=Fs(p)|0,!w)y=0;else for(y=0;;){if(G=Wa(p,y)|0,!(o[G+24>>2]|0)&&(o[G+20>>2]|0)==5){y=1;break e}if(y=y+1|0,y>>>0>=w>>>0){y=0;break}}else y=1;while(!1);return y|0}function _b(p,y){p=p|0,y=y|0;var w=As;return w=ke(I[p+908+(o[976+(y<<2)>>2]<<2)>>2]),w>=ke(0)&((El(w)|0)^1)|0}function z_(p){p=p|0;var y=As,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=As;if(w=o[p+968>>2]|0,w)Xe=ke(I[p+908>>2]),y=ke(I[p+912>>2]),y=ke(lie[w&0](p,Xe,y)),np(p,(El(y)|0)^1,3573);else{U=Fs(p)|0;do if(U|0){for(w=0,J=0;;){if(G=Wa(p,J)|0,o[G+940>>2]|0){le=8;break}if((o[G+24>>2]|0)!=1)if(Ge=($A(p,G)|0)==5,Ge){w=G;break}else w=w|0?w:G;if(J=J+1|0,J>>>0>=U>>>0){le=8;break}}if((le|0)==8&&!w)break;return y=ke(z_(w)),ke(y+ke(I[w+404>>2]))}while(!1);y=ke(I[p+912>>2])}return ke(y)}function zE(p,y,w,G){p=p|0,y=y|0,w=ke(w),G=ke(G);var J=As,U=0;return aB(y)|0?(y=1,U=3):Gn(y)|0?(y=0,U=3):(G=ke(ue),J=ke(ue)),(U|0)==3&&(J=ke(od(p+364+(y<<3)|0,G)),G=ke(od(p+380+(y<<3)|0,G))),U=G=ke(0)&((El(G)|0)^1)),w=U?G:w,U=J>=ke(0)&((El(J)|0)^1)&w>2]|0,U)|0,zi=RT(Ds,U)|0,Un=Gn(Ds)|0,rr=ke(Kl(y,2,w)),an=ke(Kl(y,0,w)),K_(y,2,w)|0?Ge=ke(rr+ke(od(o[y+992>>2]|0,w))):R_(y,2)|0&&zS(y,2)|0?(Ge=ke(I[p+908>>2]),Xe=ke(Ng(p,2)),Xe=ke(Ge-ke(Xe+ke(Rf(p,2)))),Ge=ke(Cb(y,2,w)),Ge=ke(BA(y,2,ke(Xe-ke(Ge+ke(qE(y,2,w)))),w,w))):Ge=ke(ue),K_(y,0,J)|0?Xe=ke(an+ke(od(o[y+996>>2]|0,J))):R_(y,0)|0&&zS(y,0)|0?(Xe=ke(I[p+912>>2]),So=ke(Ng(p,0)),So=ke(Xe-ke(So+ke(Rf(p,0)))),Xe=ke(Cb(y,0,J)),Xe=ke(BA(y,0,ke(So-ke(Xe+ke(qE(y,0,J)))),J,w))):Xe=ke(ue),bt=El(Ge)|0,It=El(Xe)|0;do if(bt^It&&(Ks=ke(I[y+396>>2]),!(El(Ks)|0)))if(bt){Ge=ke(rr+ke(ke(Xe-an)*Ks));break}else{So=ke(an+ke(ke(Ge-rr)/Ks)),Xe=It?So:Xe;break}while(!1);It=El(Ge)|0,bt=El(Xe)|0,It|bt&&(ss=(It^1)&1,G=w>ke(0)&((G|0)!=0&It),Ge=Un?Ge:G?w:Ge,ki(y,Ge,Xe,U,Un?ss:G?2:ss,It&(bt^1)&1,Ge,Xe,0,3623,le)|0,Ge=ke(I[y+908>>2]),Ge=ke(Ge+ke(Kl(y,2,w))),Xe=ke(I[y+912>>2]),Xe=ke(Xe+ke(Kl(y,0,w)))),ki(y,Ge,Xe,U,1,1,Ge,Xe,1,3635,le)|0,zS(y,Ds)|0&&!(R_(y,Ds)|0)?(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Rf(p,Ds))),So=ke(So-ke(Jr(y,Ds,w))),So=ke(So-ke(qE(y,Ds,Un?w:J))),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So):Si=21;do if((Si|0)==21){if(!(R_(y,Ds)|0)&&(o[p+8>>2]|0)==1){ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So;break}!(R_(y,Ds)|0)&&(o[p+8>>2]|0)==2&&(ss=o[976+(Ds<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(Ds<<2)>>2]<<2)>>2]=So)}while(!1);zS(y,zi)|0&&!(R_(y,zi)|0)?(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),So=ke(So-ke(Rf(p,zi))),So=ke(So-ke(Jr(y,zi,w))),So=ke(So-ke(qE(y,zi,Un?J:w))),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So):Si=30;do if((Si|0)==30&&!(R_(y,zi)|0)){if(($A(p,y)|0)==2){ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(ke(So-ke(I[y+908+(ss<<2)>>2]))*ke(.5)),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So;break}ss=($A(p,y)|0)==3,ss^(o[p+28>>2]|0)==2&&(ss=o[976+(zi<<2)>>2]|0,So=ke(I[p+908+(ss<<2)>>2]),So=ke(So-ke(I[y+908+(ss<<2)>>2])),I[y+400+(o[1040+(zi<<2)>>2]<<2)>>2]=So)}while(!1)}function DT(p,y,w){p=p|0,y=y|0,w=w|0;var G=As,J=0;J=o[976+(w<<2)>>2]|0,G=ke(I[y+908+(J<<2)>>2]),G=ke(ke(I[p+908+(J<<2)>>2])-G),G=ke(G-ke(I[y+400+(o[1040+(w<<2)>>2]<<2)>>2])),I[y+400+(o[1e3+(w<<2)>>2]<<2)>>2]=G}function aB(p){return p=p|0,(p|1|0)==1|0}function jS(p){p=p|0;var y=As;switch(o[p+56>>2]|0){case 0:case 3:{y=ke(I[p+40>>2]),y>ke(0)&((El(y)|0)^1)?p=n[(o[p+976>>2]|0)+2>>0]|0?1056:992:p=1056;break}default:p=p+52|0}return p|0}function XR(p,y){return p=p|0,y=y|0,(n[p+y>>0]|0)!=0|0}function zS(p,y){return p=p|0,y=y|0,p=p+132|0,Gn(y)|0&&o[(yg(p,5,948)|0)+4>>2]|0?p=1:p=(o[(yg(p,o[1e3+(y<<2)>>2]|0,948)|0)+4>>2]|0)!=0,p|0}function qE(p,y,w){p=p|0,y=y|0,w=ke(w);var G=0,J=0;return p=p+132|0,Gn(y)|0&&(G=yg(p,5,948)|0,(o[G+4>>2]|0)!=0)?J=4:(G=yg(p,o[1e3+(y<<2)>>2]|0,948)|0,o[G+4>>2]|0?J=4:w=ke(0)),(J|0)==4&&(w=ke(od(G,w))),ke(w)}function X2(p,y,w){return p=p|0,y=y|0,w=ke(w),R_(p,y)|0?w=ke(Cb(p,y,w)):w=ke(-ke(qE(p,y,w))),ke(w)}function kT(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pn(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function q1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function J2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function ey(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;if(le=p+4|0,Ge=o[le>>2]|0,J=Ge-G|0,U=J>>2,p=y+(U<<2)|0,p>>>0>>0){G=Ge;do o[G>>2]=o[p>>2],p=p+4|0,G=(o[le>>2]|0)+4|0,o[le>>2]=G;while(p>>>0>>0)}U|0&&JT(Ge+(0-U<<2)|0,y|0,J|0)|0}function up(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=y+4|0,Xe=o[Ge>>2]|0,J=o[p>>2]|0,le=w,U=le-J|0,G=Xe+(0-(U>>2)<<2)|0,o[Ge>>2]=G,(U|0)>0&&Md(G|0,J|0,U|0)|0,J=p+4|0,U=y+8|0,G=(o[J>>2]|0)-le|0,(G|0)>0&&(Md(o[U>>2]|0,w|0,G|0)|0,o[U>>2]=(o[U>>2]|0)+(G>>>2<<2)),le=o[p>>2]|0,o[p>>2]=o[Ge>>2],o[Ge>>2]=le,le=o[J>>2]|0,o[J>>2]=o[U>>2],o[U>>2]=le,le=p+8|0,w=y+12|0,p=o[le>>2]|0,o[le>>2]=o[w>>2],o[w>>2]=p,o[y>>2]=o[Ge>>2],Xe|0}function Iw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;if(le=o[y>>2]|0,U=o[w>>2]|0,(le|0)!=(U|0)){J=p+8|0,w=((U+-4-le|0)>>>2)+1|0,p=le,G=o[J>>2]|0;do o[G>>2]=o[p>>2],G=(o[J>>2]|0)+4|0,o[J>>2]=G,p=p+4|0;while((p|0)!=(U|0));o[y>>2]=le+(w<<2)}}function cB(){FA()}function RD(){var p=0;return p=Ku(4)|0,Rd(p),p|0}function Rd(p){p=p|0,o[p>>2]=df()|0}function JR(p){p=p|0,p|0&&(ty(p),ti(p))}function ty(p){p=p|0,so(o[p>>2]|0)}function cF(p,y,w){p=p|0,y=y|0,w=w|0,$0(o[p>>2]|0,y,w)}function $1(p,y){p=p|0,y=ke(y),JE(o[p>>2]|0,y)}function $E(p,y){return p=p|0,y=y|0,XR(o[p>>2]|0,y)|0}function N_(){var p=0;return p=Ku(8)|0,e1(p,0),p|0}function e1(p,y){p=p|0,y=y|0,y?y=Mp(o[y>>2]|0)|0:y=Er()|0,o[p>>2]=y,o[p+4>>2]=0,ip(y,p)}function t1(p){p=p|0;var y=0;return y=Ku(8)|0,e1(y,p),y|0}function ry(p){p=p|0,p|0&&(xT(p),ti(p))}function xT(p){p=p|0;var y=0;ls(o[p>>2]|0),y=p+4|0,p=o[y>>2]|0,o[y>>2]=0,p|0&&(yb(p),ti(p))}function yb(p){p=p|0,r_(p)}function r_(p){p=p|0,p=o[p>>2]|0,p|0&&oo(p|0)}function Rh(p){return p=p|0,_d(p)|0}function bb(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(yb(y),ti(y)),Rp(o[p>>2]|0)}function lB(p,y){p=p|0,y=y|0,LA(o[p>>2]|0,o[y>>2]|0)}function ND(p,y){p=p|0,y=y|0,nE(o[p>>2]|0,y)}function DD(p,y,w){p=p|0,y=y|0,w=+w,H2(o[p>>2]|0,y,ke(w))}function q_(p,y,w){p=p|0,y=y|0,w=+w,iE(o[p>>2]|0,y,ke(w))}function kD(p,y){p=p|0,y=y|0,Nm(o[p>>2]|0,y)}function UR(p,y){p=p|0,y=y|0,jd(o[p>>2]|0,y)}function lc(p,y){p=p|0,y=y|0,Hp(o[p>>2]|0,y)}function fh(p,y){p=p|0,y=y|0,j1(o[p>>2]|0,y)}function rf(p,y){p=p|0,y=y|0,q0(o[p>>2]|0,y)}function yI(p,y){p=p|0,y=y|0,YA(o[p>>2]|0,y)}function aE(p,y,w){p=p|0,y=y|0,w=+w,O(o[p>>2]|0,y,ke(w))}function qS(p,y,w){p=p|0,y=y|0,w=+w,K(o[p>>2]|0,y,ke(w))}function Qp(p,y){p=p|0,y=y|0,gt(o[p>>2]|0,y)}function uB(p,y){p=p|0,y=y|0,TC(o[p>>2]|0,y)}function Ih(p,y){p=p|0,y=y|0,cp(o[p>>2]|0,y)}function xC(p,y){p=p|0,y=+y,fb(o[p>>2]|0,ke(y))}function $_(p,y){p=p|0,y=+y,Kf(o[p>>2]|0,ke(y))}function r1(p,y){p=p|0,y=+y,CI(o[p>>2]|0,ke(y))}function gB(p,y){p=p|0,y=+y,pe(o[p>>2]|0,ke(y))}function hw(p,y){p=p|0,y=+y,lm(o[p>>2]|0,ke(y))}function GT(p,y){p=p|0,y=+y,ra(o[p>>2]|0,ke(y))}function b0(p,y){p=p|0,y=+y,kc(o[p>>2]|0,ke(y))}function ia(p){p=p|0,Nl(o[p>>2]|0)}function e2(p,y){p=p|0,y=+y,Bl(o[p>>2]|0,ke(y))}function yd(p,y){p=p|0,y=+y,$g(o[p>>2]|0,ke(y))}function bI(p){p=p|0,SA(o[p>>2]|0)}function ag(p,y){p=p|0,y=+y,lp(o[p>>2]|0,ke(y))}function Eb(p,y){p=p|0,y=+y,Ib(o[p>>2]|0,ke(y))}function n1(p,y){p=p|0,y=+y,wd(o[p>>2]|0,ke(y))}function U2(p,y){p=p|0,y=+y,z1(o[p>>2]|0,ke(y))}function e0(p,y){p=p|0,y=+y,RC(o[p>>2]|0,ke(y))}function n_(p,y){p=p|0,y=+y,Hm(o[p>>2]|0,ke(y))}function Xp(p,y){p=p|0,y=+y,Fg(o[p>>2]|0,ke(y))}function cE(p,y){p=p|0,y=+y,hb(o[p>>2]|0,ke(y))}function lE(p,y){p=p|0,y=+y,NC(o[p>>2]|0,ke(y))}function Ip(p,y,w){p=p|0,y=y|0,w=+w,fi(o[p>>2]|0,y,ke(w))}function Xh(p,y,w){p=p|0,y=y|0,w=+w,sr(o[p>>2]|0,y,ke(w))}function E0(p,y,w){p=p|0,y=y|0,w=+w,Yr(o[p>>2]|0,y,ke(w))}function aA(p){return p=p|0,J_(o[p>>2]|0)|0}function fu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,se(J,o[y>>2]|0,w),Jp(p,J),B=G}function Jp(p,y){p=p|0,y=y|0,dC(p,o[y+4>>2]|0,+ke(I[y>>2]))}function dC(p,y,w){p=p|0,y=y|0,w=+w,o[p>>2]=y,C[p+8>>3]=w}function uE(p){return p=p|0,HS(o[p>>2]|0)|0}function eh(p){return p=p|0,dh(o[p>>2]|0)|0}function Wf(p){return p=p|0,uC(o[p>>2]|0)|0}function Mo(p){return p=p|0,pw(o[p>>2]|0)|0}function gp(p){return p=p|0,XE(o[p>>2]|0)|0}function lF(p){return p=p|0,Ac(o[p>>2]|0)|0}function uF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,we(J,o[y>>2]|0,w),Jp(p,J),B=G}function gE(p){return p=p|0,t_(o[p>>2]|0)|0}function FT(p){return p=p|0,Mm(o[p>>2]|0)|0}function Np(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,_I(G,o[y>>2]|0),Jp(p,G),B=w}function Dm(p){return p=p|0,+ +ke(pf(o[p>>2]|0))}function Dp(p){return p=p|0,+ +ke(ef(o[p>>2]|0))}function t2(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,ca(G,o[y>>2]|0),Jp(p,G),B=w}function Ro(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,lI(G,o[y>>2]|0),Jp(p,G),B=w}function AE(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Na(G,o[y>>2]|0),Jp(p,G),B=w}function AB(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,T_(G,o[y>>2]|0),Jp(p,G),B=w}function Xc(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,YS(G,o[y>>2]|0),Jp(p,G),B=w}function iu(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,gC(G,o[y>>2]|0),Jp(p,G),B=w}function dE(p){return p=p|0,+ +ke(Y2(o[p>>2]|0))}function yL(p,y){return p=p|0,y=y|0,+ +ke($n(o[p>>2]|0,y))}function KR(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,Lr(J,o[y>>2]|0,w),Jp(p,J),B=G}function Ou(p,y,w){p=p|0,y=y|0,w=w|0,Ml(o[p>>2]|0,o[y>>2]|0,w)}function ny(p,y){p=p|0,y=y|0,ld(o[p>>2]|0,o[y>>2]|0)}function hp(p){return p=p|0,Fs(o[p>>2]|0)|0}function Am(p){return p=p|0,p=Bo(o[p>>2]|0)|0,p?p=Rh(p)|0:p=0,p|0}function K2(p,y){return p=p|0,y=y|0,p=Wa(o[p>>2]|0,y)|0,p?p=Rh(p)|0:p=0,p|0}function i_(p,y){p=p|0,y=y|0;var w=0,G=0;G=Ku(4)|0,dB(G,y),w=p+4|0,y=o[w>>2]|0,o[w>>2]=G,y|0&&(yb(y),ti(y)),Ea(o[p>>2]|0,1)}function dB(p,y){p=p|0,y=y|0,vb(p,y)}function ZT(p,y,w,G,J,U){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,Cx(Ge,_d(y)|0,+w,G,+J,U),I[p>>2]=ke(+C[Ge>>3]),I[p+4>>2]=ke(+C[Ge+8>>3]),B=le}function Cx(p,y,w,G,J,U){p=p|0,y=y|0,w=+w,G=G|0,J=+J,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0;le=B,B=B+32|0,It=le+8|0,bt=le+20|0,Xe=le,Ge=le+16|0,C[It>>3]=w,o[bt>>2]=G,C[Xe>>3]=J,o[Ge>>2]=U,pB(p,o[y+4>>2]|0,It,bt,Xe,Ge),B=le}function pB(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0;le=B,B=B+16|0,Ge=le,xw(Ge),y=qf(y)|0,Jh(p,y,+C[w>>3],o[G>>2]|0,+C[J>>3],o[U>>2]|0),oS(Ge),B=le}function qf(p){return p=p|0,o[p>>2]|0}function Jh(p,y,w,G,J,U){p=p|0,y=y|0,w=+w,G=G|0,J=+J,U=U|0;var le=0;le=Sb($S()|0)|0,w=+mp(w),G=r2(G)|0,J=+mp(J),i1(p,cc(0,le|0,y|0,+w,G|0,+J,r2(U)|0)|0)}function $S(){var p=0;return n[7608]|0||(fB(9120),p=7608,o[p>>2]=1,o[p+4>>2]=0),9120}function Sb(p){return p=p|0,o[p+8>>2]|0}function mp(p){return p=+p,+ +Id(p)}function r2(p){return p=p|0,Z(p)|0}function i1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+32|0,w=J,G=y,G&1?(Of(w,0),mI(G|0,w|0)|0,pE(p,w),Vd(w)):(o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]),B=J}function Of(p,y){p=p|0,y=y|0,j(p,y),o[p+8>>2]=0,n[p+24>>0]=0}function pE(p,y){p=p|0,y=y|0,y=y+8|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2]}function Vd(p){p=p|0,n[p+24>>0]=0}function j(p,y){p=p|0,y=y|0,o[p>>2]=y}function Z(p){return p=p|0,p|0}function Id(p){return p=+p,+p}function fB(p){p=p|0,Ny(p,ev()|0,4)}function ev(){return 1064}function Ny(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=Kd(y|0,w+1|0)|0}function vb(p,y){p=p|0,y=y|0,y=o[y>>2]|0,o[p>>2]=y,ac(y|0)}function xD(p){p=p|0;var y=0,w=0;w=p+4|0,y=o[w>>2]|0,o[w>>2]=0,y|0&&(yb(y),ti(y)),Ea(o[p>>2]|0,0)}function IB(p){p=p|0,us(o[p>>2]|0)}function Bb(p){return p=p|0,Ql(o[p>>2]|0)|0}function bL(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,Ym(o[p>>2]|0,ke(y),ke(w),G)}function gF(p){return p=p|0,+ +ke(U_(o[p>>2]|0))}function x(p){return p=p|0,+ +ke(kC(o[p>>2]|0))}function L(p){return p=p|0,+ +ke(DC(o[p>>2]|0))}function te(p){return p=p|0,+ +ke(qI(o[p>>2]|0))}function Re(p){return p=p|0,+ +ke(ph(o[p>>2]|0))}function Le(p){return p=p|0,+ +ke(vA(o[p>>2]|0))}function ft(p,y){p=p|0,y=y|0,C[p>>3]=+ke(U_(o[y>>2]|0)),C[p+8>>3]=+ke(kC(o[y>>2]|0)),C[p+16>>3]=+ke(DC(o[y>>2]|0)),C[p+24>>3]=+ke(qI(o[y>>2]|0)),C[p+32>>3]=+ke(ph(o[y>>2]|0)),C[p+40>>3]=+ke(vA(o[y>>2]|0))}function dr(p,y){return p=p|0,y=y|0,+ +ke(Td(o[p>>2]|0,y))}function Ur(p,y){return p=p|0,y=y|0,+ +ke(Mc(o[p>>2]|0,y))}function mi(p,y){return p=p|0,y=y|0,+ +ke(Pf(o[p>>2]|0,y))}function Vi(){return HA()|0}function Ta(){Sl(),Ho(),Wg(),cA(),th(),xn()}function Sl(){Dqe(11713,4938,1)}function Ho(){DZe(10448)}function Wg(){wZe(10408)}function cA(){Sqe(10324)}function th(){yye(10096)}function xn(){rn(9132)}function rn(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0,w0=0,bE=0,nh=0,x_=0,$D=0,Fw=0,mh=0,kF=0,Zw=0,KT=0,jL=0,zL=0,aS=0,mf=0,d2=0,jT=0,fv=0,Fx=0,xB=0,Iv=0,GB=0,EE=0,Um=0,mN=0,zT=0,Km=0,p2=0,hg=0,OI=0,og=0,jo=0,Yg=0,Zl=0,f2=0,MI=0,xF=0,gI=0,UA=0,lA=0,GF=0,CN=0,qT=0,I1=0,T0=0,ek=0,fo=0,Lw=0,FF=0,Hd=0,of=0,vd=0,yp=0,l_=0,Yd=0,Qg=0,hv=0;y=B,B=B+672|0,w=y+656|0,hv=y+648|0,Qg=y+640|0,Yd=y+632|0,l_=y+624|0,yp=y+616|0,vd=y+608|0,of=y+600|0,Hd=y+592|0,FF=y+584|0,Lw=y+576|0,fo=y+568|0,ek=y+560|0,T0=y+552|0,I1=y+544|0,qT=y+536|0,CN=y+528|0,GF=y+520|0,lA=y+512|0,UA=y+504|0,gI=y+496|0,xF=y+488|0,MI=y+480|0,f2=y+472|0,Zl=y+464|0,Yg=y+456|0,jo=y+448|0,og=y+440|0,OI=y+432|0,hg=y+424|0,p2=y+416|0,Km=y+408|0,zT=y+400|0,mN=y+392|0,Um=y+384|0,EE=y+376|0,GB=y+368|0,Iv=y+360|0,xB=y+352|0,Fx=y+344|0,fv=y+336|0,jT=y+328|0,d2=y+320|0,mf=y+312|0,aS=y+304|0,zL=y+296|0,jL=y+288|0,KT=y+280|0,Zw=y+272|0,kF=y+264|0,mh=y+256|0,Fw=y+248|0,$D=y+240|0,x_=y+232|0,nh=y+224|0,bE=y+216|0,w0=y+208|0,em=y+200|0,wg=y+192|0,Dg=y+184|0,Bg=y+176|0,Tc=y+168|0,fl=y+160|0,uu=y+152|0,hl=y+144|0,pi=y+136|0,ss=y+128|0,So=y+120|0,Si=y+112|0,Ds=y+104|0,Un=y+96|0,zi=y+88|0,Ks=y+80|0,an=y+72|0,rr=y+64|0,It=y+56|0,bt=y+48|0,Xe=y+40|0,Ge=y+32|0,le=y+24|0,U=y+16|0,J=y+8|0,G=y,Ci(p,3646),Po(p,3651,2)|0,ec(p,3665,2)|0,Ra(p,3682,18)|0,o[hv>>2]=19,o[hv+4>>2]=0,o[w>>2]=o[hv>>2],o[w+4>>2]=o[hv+4>>2],dc(p,3690,w)|0,o[Qg>>2]=1,o[Qg+4>>2]=0,o[w>>2]=o[Qg>>2],o[w+4>>2]=o[Qg+4>>2],Iu(p,3696,w)|0,o[Yd>>2]=2,o[Yd+4>>2]=0,o[w>>2]=o[Yd>>2],o[w+4>>2]=o[Yd+4>>2],Cl(p,3706,w)|0,o[l_>>2]=1,o[l_+4>>2]=0,o[w>>2]=o[l_>>2],o[w+4>>2]=o[l_+4>>2],wl(p,3722,w)|0,o[yp>>2]=2,o[yp+4>>2]=0,o[w>>2]=o[yp>>2],o[w+4>>2]=o[yp+4>>2],wl(p,3734,w)|0,o[vd>>2]=3,o[vd+4>>2]=0,o[w>>2]=o[vd>>2],o[w+4>>2]=o[vd+4>>2],Cl(p,3753,w)|0,o[of>>2]=4,o[of+4>>2]=0,o[w>>2]=o[of>>2],o[w+4>>2]=o[of+4>>2],Cl(p,3769,w)|0,o[Hd>>2]=5,o[Hd+4>>2]=0,o[w>>2]=o[Hd>>2],o[w+4>>2]=o[Hd+4>>2],Cl(p,3783,w)|0,o[FF>>2]=6,o[FF+4>>2]=0,o[w>>2]=o[FF>>2],o[w+4>>2]=o[FF+4>>2],Cl(p,3796,w)|0,o[Lw>>2]=7,o[Lw+4>>2]=0,o[w>>2]=o[Lw>>2],o[w+4>>2]=o[Lw+4>>2],Cl(p,3813,w)|0,o[fo>>2]=8,o[fo+4>>2]=0,o[w>>2]=o[fo>>2],o[w+4>>2]=o[fo+4>>2],Cl(p,3825,w)|0,o[ek>>2]=3,o[ek+4>>2]=0,o[w>>2]=o[ek>>2],o[w+4>>2]=o[ek+4>>2],wl(p,3843,w)|0,o[T0>>2]=4,o[T0+4>>2]=0,o[w>>2]=o[T0>>2],o[w+4>>2]=o[T0+4>>2],wl(p,3853,w)|0,o[I1>>2]=9,o[I1+4>>2]=0,o[w>>2]=o[I1>>2],o[w+4>>2]=o[I1+4>>2],Cl(p,3870,w)|0,o[qT>>2]=10,o[qT+4>>2]=0,o[w>>2]=o[qT>>2],o[w+4>>2]=o[qT+4>>2],Cl(p,3884,w)|0,o[CN>>2]=11,o[CN+4>>2]=0,o[w>>2]=o[CN>>2],o[w+4>>2]=o[CN+4>>2],Cl(p,3896,w)|0,o[GF>>2]=1,o[GF+4>>2]=0,o[w>>2]=o[GF>>2],o[w+4>>2]=o[GF+4>>2],$f(p,3907,w)|0,o[lA>>2]=2,o[lA+4>>2]=0,o[w>>2]=o[lA>>2],o[w+4>>2]=o[lA+4>>2],$f(p,3915,w)|0,o[UA>>2]=3,o[UA+4>>2]=0,o[w>>2]=o[UA>>2],o[w+4>>2]=o[UA+4>>2],$f(p,3928,w)|0,o[gI>>2]=4,o[gI+4>>2]=0,o[w>>2]=o[gI>>2],o[w+4>>2]=o[gI+4>>2],$f(p,3948,w)|0,o[xF>>2]=5,o[xF+4>>2]=0,o[w>>2]=o[xF>>2],o[w+4>>2]=o[xF+4>>2],$f(p,3960,w)|0,o[MI>>2]=6,o[MI+4>>2]=0,o[w>>2]=o[MI>>2],o[w+4>>2]=o[MI+4>>2],$f(p,3974,w)|0,o[f2>>2]=7,o[f2+4>>2]=0,o[w>>2]=o[f2>>2],o[w+4>>2]=o[f2+4>>2],$f(p,3983,w)|0,o[Zl>>2]=20,o[Zl+4>>2]=0,o[w>>2]=o[Zl>>2],o[w+4>>2]=o[Zl+4>>2],dc(p,3999,w)|0,o[Yg>>2]=8,o[Yg+4>>2]=0,o[w>>2]=o[Yg>>2],o[w+4>>2]=o[Yg+4>>2],$f(p,4012,w)|0,o[jo>>2]=9,o[jo+4>>2]=0,o[w>>2]=o[jo>>2],o[w+4>>2]=o[jo+4>>2],$f(p,4022,w)|0,o[og>>2]=21,o[og+4>>2]=0,o[w>>2]=o[og>>2],o[w+4>>2]=o[og+4>>2],dc(p,4039,w)|0,o[OI>>2]=10,o[OI+4>>2]=0,o[w>>2]=o[OI>>2],o[w+4>>2]=o[OI+4>>2],$f(p,4053,w)|0,o[hg>>2]=11,o[hg+4>>2]=0,o[w>>2]=o[hg>>2],o[w+4>>2]=o[hg+4>>2],$f(p,4065,w)|0,o[p2>>2]=12,o[p2+4>>2]=0,o[w>>2]=o[p2>>2],o[w+4>>2]=o[p2+4>>2],$f(p,4084,w)|0,o[Km>>2]=13,o[Km+4>>2]=0,o[w>>2]=o[Km>>2],o[w+4>>2]=o[Km+4>>2],$f(p,4097,w)|0,o[zT>>2]=14,o[zT+4>>2]=0,o[w>>2]=o[zT>>2],o[w+4>>2]=o[zT+4>>2],$f(p,4117,w)|0,o[mN>>2]=15,o[mN+4>>2]=0,o[w>>2]=o[mN>>2],o[w+4>>2]=o[mN+4>>2],$f(p,4129,w)|0,o[Um>>2]=16,o[Um+4>>2]=0,o[w>>2]=o[Um>>2],o[w+4>>2]=o[Um+4>>2],$f(p,4148,w)|0,o[EE>>2]=17,o[EE+4>>2]=0,o[w>>2]=o[EE>>2],o[w+4>>2]=o[EE+4>>2],$f(p,4161,w)|0,o[GB>>2]=18,o[GB+4>>2]=0,o[w>>2]=o[GB>>2],o[w+4>>2]=o[GB+4>>2],$f(p,4181,w)|0,o[Iv>>2]=5,o[Iv+4>>2]=0,o[w>>2]=o[Iv>>2],o[w+4>>2]=o[Iv+4>>2],wl(p,4196,w)|0,o[xB>>2]=6,o[xB+4>>2]=0,o[w>>2]=o[xB>>2],o[w+4>>2]=o[xB+4>>2],wl(p,4206,w)|0,o[Fx>>2]=7,o[Fx+4>>2]=0,o[w>>2]=o[Fx>>2],o[w+4>>2]=o[Fx+4>>2],wl(p,4217,w)|0,o[fv>>2]=3,o[fv+4>>2]=0,o[w>>2]=o[fv>>2],o[w+4>>2]=o[fv+4>>2],j2(p,4235,w)|0,o[jT>>2]=1,o[jT+4>>2]=0,o[w>>2]=o[jT>>2],o[w+4>>2]=o[jT+4>>2],_x(p,4251,w)|0,o[d2>>2]=4,o[d2+4>>2]=0,o[w>>2]=o[d2>>2],o[w+4>>2]=o[d2+4>>2],j2(p,4263,w)|0,o[mf>>2]=5,o[mf+4>>2]=0,o[w>>2]=o[mf>>2],o[w+4>>2]=o[mf+4>>2],j2(p,4279,w)|0,o[aS>>2]=6,o[aS+4>>2]=0,o[w>>2]=o[aS>>2],o[w+4>>2]=o[aS+4>>2],j2(p,4293,w)|0,o[zL>>2]=7,o[zL+4>>2]=0,o[w>>2]=o[zL>>2],o[w+4>>2]=o[zL+4>>2],j2(p,4306,w)|0,o[jL>>2]=8,o[jL+4>>2]=0,o[w>>2]=o[jL>>2],o[w+4>>2]=o[jL+4>>2],j2(p,4323,w)|0,o[KT>>2]=9,o[KT+4>>2]=0,o[w>>2]=o[KT>>2],o[w+4>>2]=o[KT+4>>2],j2(p,4335,w)|0,o[Zw>>2]=2,o[Zw+4>>2]=0,o[w>>2]=o[Zw>>2],o[w+4>>2]=o[Zw+4>>2],_x(p,4353,w)|0,o[kF>>2]=12,o[kF+4>>2]=0,o[w>>2]=o[kF>>2],o[w+4>>2]=o[kF+4>>2],z2(p,4363,w)|0,o[mh>>2]=1,o[mh+4>>2]=0,o[w>>2]=o[mh>>2],o[w+4>>2]=o[mh+4>>2],tv(p,4376,w)|0,o[Fw>>2]=2,o[Fw+4>>2]=0,o[w>>2]=o[Fw>>2],o[w+4>>2]=o[Fw+4>>2],tv(p,4388,w)|0,o[$D>>2]=13,o[$D+4>>2]=0,o[w>>2]=o[$D>>2],o[w+4>>2]=o[$D+4>>2],z2(p,4402,w)|0,o[x_>>2]=14,o[x_+4>>2]=0,o[w>>2]=o[x_>>2],o[w+4>>2]=o[x_+4>>2],z2(p,4411,w)|0,o[nh>>2]=15,o[nh+4>>2]=0,o[w>>2]=o[nh>>2],o[w+4>>2]=o[nh+4>>2],z2(p,4421,w)|0,o[bE>>2]=16,o[bE+4>>2]=0,o[w>>2]=o[bE>>2],o[w+4>>2]=o[bE+4>>2],z2(p,4433,w)|0,o[w0>>2]=17,o[w0+4>>2]=0,o[w>>2]=o[w0>>2],o[w+4>>2]=o[w0+4>>2],z2(p,4446,w)|0,o[em>>2]=18,o[em+4>>2]=0,o[w>>2]=o[em>>2],o[w+4>>2]=o[em+4>>2],z2(p,4458,w)|0,o[wg>>2]=3,o[wg+4>>2]=0,o[w>>2]=o[wg>>2],o[w+4>>2]=o[wg+4>>2],tv(p,4471,w)|0,o[Dg>>2]=1,o[Dg+4>>2]=0,o[w>>2]=o[Dg>>2],o[w+4>>2]=o[Dg+4>>2],Yu(p,4486,w)|0,o[Bg>>2]=10,o[Bg+4>>2]=0,o[w>>2]=o[Bg>>2],o[w+4>>2]=o[Bg+4>>2],j2(p,4496,w)|0,o[Tc>>2]=11,o[Tc+4>>2]=0,o[w>>2]=o[Tc>>2],o[w+4>>2]=o[Tc+4>>2],j2(p,4508,w)|0,o[fl>>2]=3,o[fl+4>>2]=0,o[w>>2]=o[fl>>2],o[w+4>>2]=o[fl+4>>2],_x(p,4519,w)|0,o[uu>>2]=4,o[uu+4>>2]=0,o[w>>2]=o[uu>>2],o[w+4>>2]=o[uu+4>>2],qO(p,4530,w)|0,o[hl>>2]=19,o[hl+4>>2]=0,o[w>>2]=o[hl>>2],o[w+4>>2]=o[hl+4>>2],hB(p,4542,w)|0,o[pi>>2]=12,o[pi+4>>2]=0,o[w>>2]=o[pi>>2],o[w+4>>2]=o[pi+4>>2],mw(p,4554,w)|0,o[ss>>2]=13,o[ss+4>>2]=0,o[w>>2]=o[ss>>2],o[w+4>>2]=o[ss+4>>2],AF(p,4568,w)|0,o[So>>2]=2,o[So+4>>2]=0,o[w>>2]=o[So>>2],o[w+4>>2]=o[So+4>>2],$O(p,4578,w)|0,o[Si>>2]=20,o[Si+4>>2]=0,o[w>>2]=o[Si>>2],o[w+4>>2]=o[Si+4>>2],iY(p,4587,w)|0,o[Ds>>2]=22,o[Ds+4>>2]=0,o[w>>2]=o[Ds>>2],o[w+4>>2]=o[Ds+4>>2],dc(p,4602,w)|0,o[Un>>2]=23,o[Un+4>>2]=0,o[w>>2]=o[Un>>2],o[w+4>>2]=o[Un+4>>2],dc(p,4619,w)|0,o[zi>>2]=14,o[zi+4>>2]=0,o[w>>2]=o[zi>>2],o[w+4>>2]=o[zi+4>>2],LT(p,4629,w)|0,o[Ks>>2]=1,o[Ks+4>>2]=0,o[w>>2]=o[Ks>>2],o[w+4>>2]=o[Ks+4>>2],GD(p,4637,w)|0,o[an>>2]=4,o[an+4>>2]=0,o[w>>2]=o[an>>2],o[w+4>>2]=o[an+4>>2],tv(p,4653,w)|0,o[rr>>2]=5,o[rr+4>>2]=0,o[w>>2]=o[rr>>2],o[w+4>>2]=o[rr+4>>2],tv(p,4669,w)|0,o[It>>2]=6,o[It+4>>2]=0,o[w>>2]=o[It>>2],o[w+4>>2]=o[It+4>>2],tv(p,4686,w)|0,o[bt>>2]=7,o[bt+4>>2]=0,o[w>>2]=o[bt>>2],o[w+4>>2]=o[bt+4>>2],tv(p,4701,w)|0,o[Xe>>2]=8,o[Xe+4>>2]=0,o[w>>2]=o[Xe>>2],o[w+4>>2]=o[Xe+4>>2],tv(p,4719,w)|0,o[Ge>>2]=9,o[Ge+4>>2]=0,o[w>>2]=o[Ge>>2],o[w+4>>2]=o[Ge+4>>2],tv(p,4736,w)|0,o[le>>2]=21,o[le+4>>2]=0,o[w>>2]=o[le>>2],o[w+4>>2]=o[le+4>>2],dF(p,4754,w)|0,o[U>>2]=2,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],Yu(p,4772,w)|0,o[J>>2]=3,o[J+4>>2]=0,o[w>>2]=o[J>>2],o[w+4>>2]=o[J+4>>2],Yu(p,4790,w)|0,o[G>>2]=4,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],Yu(p,4808,w)|0,B=y}function Ci(p,y){p=p|0,y=y|0;var w=0;w=lVt()|0,o[p>>2]=w,uZe(w,y),BF(o[p>>2]|0)}function Po(p,y,w){return p=p|0,y=y|0,w=w|0,Jge(p,ff(y)|0,w,0),p|0}function ec(p,y,w){return p=p|0,y=y|0,w=w|0,Yge(p,ff(y)|0,w,0),p|0}function Ra(p,y,w){return p=p|0,y=y|0,w=w|0,A1(p,ff(y)|0,w,0),p|0}function dc(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],$Fe(p,y,J),B=G,p|0}function Iu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],OT(p,y,J),B=G,p|0}function Cl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],ie(p,y,J),B=G,p|0}function wl(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],IP(p,y,J),B=G,p|0}function $f(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Yre(p,y,J),B=G,p|0}function j2(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],mF(p,y,J),B=G,p|0}function _x(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vY(p,y,J),B=G,p|0}function z2(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],qu(p,y,J),B=G,p|0}function tv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],WT(p,y,J),B=G,p|0}function Yu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vJ(p,y,J),B=G,p|0}function qO(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Db(p,y,J),B=G,p|0}function hB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],yJ(p,y,J),B=G,p|0}function mw(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],nye(p,y,J),B=G,p|0}function AF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],sge(p,y,J),B=G,p|0}function $O(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],gY(p,y,J),B=G,p|0}function iY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],a1(p,y,J),B=G,p|0}function LT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],vL(p,y,J),B=G,p|0}function GD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],ad(p,y,J),B=G,p|0}function dF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],EL(p,y,J),B=G,p|0}function EL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],FD(p,w,J,1),B=G}function ff(p){return p=p|0,p|0}function FD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=fE()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=n2(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,mB(U,G)|0,G),B=J}function fE(){var p=0,y=0;if(n[7616]|0||(Jt(9136),pu(24,9136,X|0)|0,y=7616,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9136)|0)){p=9136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jt(9136)}return 9136}function n2(p){return p=p|0,0}function mB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=fE()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],iy(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(sY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function bd(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0;le=B,B=B+32|0,an=le+24|0,rr=le+20|0,Xe=le+16|0,It=le+12|0,bt=le+8|0,Ge=le+4|0,Ks=le,o[rr>>2]=y,o[Xe>>2]=w,o[It>>2]=G,o[bt>>2]=J,o[Ge>>2]=U,U=p+28|0,o[Ks>>2]=o[U>>2],o[an>>2]=o[Ks>>2],s1(p+24|0,an,rr,It,bt,Xe,Ge)|0,o[U>>2]=o[o[U>>2]>>2],B=le}function s1(p,y,w,G,J,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,p=Uh(y)|0,y=Ku(24)|0,wb(y+4|0,o[w>>2]|0,o[G>>2]|0,o[J>>2]|0,o[U>>2]|0,o[le>>2]|0),o[y>>2]=o[p>>2],o[p>>2]=y,y|0}function Uh(p){return p=p|0,o[p>>2]|0}function wb(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=J,o[p+16>>2]=U}function Uu(p,y){return p=p|0,y=y|0,y|p|0}function iy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function sY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=oY(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,jR(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],iy(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,aY(p,Ge),tt(Ge),B=bt;return}}function oY(p){return p=p|0,357913941}function jR(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function aY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Jt(p){p=p|0,Is(p)}function kr(p){p=p|0,ui(p+24|0)}function Xr(p){return p=p|0,o[p>>2]|0}function ui(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Is(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,Rs()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hs(){return 9228}function Rs(){return 1140}function ja(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=sl(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=Nd(y,G)|0,B=w,y|0}function ho(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,o[p>>2]=y,o[p+4>>2]=w,o[p+8>>2]=G,o[p+12>>2]=J,o[p+16>>2]=U}function sl(p){return p=p|0,(o[(fE()|0)+24>>2]|0)+(p*12|0)|0}function Nd(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+48|0,G=J,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),qD[w&31](G,p),G=ed(G)|0,B=J,G|0}function ed(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(Og()|0)|0,G?(o1(y,G),Tb(w,y),q2(p,w),p=IE(y)|0):p=zR(p)|0,B=J,p|0}function Og(){var p=0;return n[7632]|0||(ye(9184),pu(25,9184,X|0)|0,p=7632,o[p>>2]=1,o[p+4>>2]=0),9184}function Nh(p){return p=p|0,o[p+36>>2]|0}function o1(p,y){p=p|0,y=y|0,o[p>>2]=y,o[p+4>>2]=p,o[p+8>>2]=0}function Tb(p,y){p=p|0,y=y|0,o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=0}function q2(p,y){p=p|0,y=y|0,wA(y,p,p+8|0,p+16|0,p+24|0,p+32|0,p+40|0)|0}function IE(p){return p=p|0,o[(o[p+4>>2]|0)+8>>2]|0}function zR(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;Xe=B,B=B+16|0,w=Xe+4|0,G=Xe,J=Fb(8)|0,U=J,le=Ku(48)|0,Ge=le,y=Ge+48|0;do o[Ge>>2]=o[p>>2],Ge=Ge+4|0,p=p+4|0;while((Ge|0)<(y|0));return y=U+4|0,o[y>>2]=le,Ge=Ku(8)|0,le=o[y>>2]|0,o[G>>2]=0,o[w>>2]=o[G>>2],e3(Ge,le,w),o[J>>2]=Ge,B=Xe,U|0}function e3(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1092,o[w+12>>2]=y,o[p+4>>2]=w}function IA(p){p=p|0,dz(p),ti(p)}function EI(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function zd(p){p=p|0,ti(p)}function wA(p,y,w,G,J,U,le){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,U=qR(o[p>>2]|0,y,w,G,J,U,le)|0,le=p+4|0,o[(o[le>>2]|0)+8>>2]=U,o[(o[le>>2]|0)+8>>2]|0}function qR(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0;var Ge=0,Xe=0;return Ge=B,B=B+16|0,Xe=Ge,xw(Xe),p=qf(p)|0,le=sy(p,+C[y>>3],+C[w>>3],+C[G>>3],+C[J>>3],+C[U>>3],+C[le>>3])|0,oS(Xe),B=Ge,le|0}function sy(p,y,w,G,J,U,le){p=p|0,y=+y,w=+w,G=+G,J=+J,U=+U,le=+le;var Ge=0;return Ge=Sb($2()|0)|0,y=+mp(y),w=+mp(w),G=+mp(G),J=+mp(J),U=+mp(U),Ps(0,Ge|0,p|0,+y,+w,+G,+J,+U,+ +mp(le))|0}function $2(){var p=0;return n[7624]|0||(Eo(9172),p=7624,o[p>>2]=1,o[p+4>>2]=0),9172}function Eo(p){p=p|0,Ny(p,z()|0,6)}function z(){return 1112}function ye(p){p=p|0,Hc(p)}function Ve(p){p=p|0,Ct(p+24|0),wr(p+16|0)}function Ct(p){p=p|0,Lo(p)}function wr(p){p=p|0,ai(p)}function ai(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Lo(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function Hc(p){p=p|0;var y=0;o[p+16>>2]=0,o[p+20>>2]=0,y=p+24|0,o[y>>2]=0,o[p+28>>2]=y,o[p+36>>2]=0,n[p+40>>0]=0,n[p+41>>0]=0}function ad(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],dm(p,w,J,0),B=G}function dm(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=rv()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=nv(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yx(U,G)|0,G),B=J}function rv(){var p=0,y=0;if(n[7640]|0||(Vo(9232),pu(26,9232,X|0)|0,y=7640,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9232)|0)){p=9232,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Vo(9232)}return 9232}function nv(p){return p=p|0,0}function yx(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=rv()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Dd(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(ji(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Dd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function ji(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=SL(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,$l(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Dd(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Ap(p,Ge),Bc(Ge),B=bt;return}}function SL(p){return p=p|0,357913941}function $l(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Ap(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bc(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Vo(p){p=p|0,J6(p)}function iv(p){p=p|0,nf(p+24|0)}function nf(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function J6(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,cY()|0,3),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cY(){return 1144}function t3(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,le=U+8|0,Ge=U,Xe=pF(p)|0,p=o[Xe+4>>2]|0,o[Ge>>2]=o[Xe>>2],o[Ge+4>>2]=p,o[le>>2]=o[Ge>>2],o[le+4>>2]=o[Ge+4>>2],rh(y,le,w,G,J),B=U}function pF(p){return p=p|0,(o[(rv()|0)+24>>2]|0)+(p*12|0)|0}function rh(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;bt=B,B=B+16|0,le=bt+2|0,Ge=bt+1|0,Xe=bt,U=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(U=o[(o[p>>2]|0)+U>>2]|0),Cw(le,w),w=+Il(le,w),Cw(Ge,G),G=+Il(Ge,G),CB(Xe,J),Xe=Rb(Xe,J)|0,eQ[U&1](p,w,G,Xe),B=bt}function Cw(p,y){p=p|0,y=+y}function Il(p,y){return p=p|0,y=+y,+ +Cre(y)}function CB(p,y){p=p|0,y=y|0}function Rb(p,y){return p=p|0,y=y|0,$R(y)|0}function $R(p){return p=p|0,p|0}function Cre(p){return p=+p,+p}function vL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],uJ(p,w,J,1),B=G}function uJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=lY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=r3(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,U6(U,G)|0,G),B=J}function lY(){var p=0,y=0;if(n[7648]|0||(Es(9268),pu(27,9268,X|0)|0,y=7648,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9268)|0)){p=9268,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Es(9268)}return 9268}function r3(p){return p=p|0,0}function U6(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=lY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],gJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(K6(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function gJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function K6(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=uY(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,bx(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],gJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,_re(p,Ge),Ex(Ge),B=bt;return}}function uY(p){return p=p|0,357913941}function bx(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function _re(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Ex(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Es(p){p=p|0,Ua(p)}function Aa(p){p=p|0,ha(p+24|0)}function ha(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Ua(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,wc()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function wc(){return 1160}function hA(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=Pd(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=Kh(y,G)|0,B=w,y|0}function Pd(p){return p=p|0,(o[(lY()|0)+24>>2]|0)+(p*12|0)|0}function Kh(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),i2(mC[w&31](p)|0)|0}function i2(p){return p=p|0,p&1|0}function a1(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Nb(p,w,J,0),B=G}function Nb(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sv()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=oP(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,fF(U,G)|0,G),B=J}function sv(){var p=0,y=0;if(n[7656]|0||(dJ(9304),pu(28,9304,X|0)|0,y=7656,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9304)|0)){p=9304,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));dJ(9304)}return 9304}function oP(p){return p=p|0,0}function fF(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sv()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],ov(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(eN(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function ov(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function eN(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=AJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,j6(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ov(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sx(p,Ge),c1(Ge),B=bt;return}}function AJ(p){return p=p|0,357913941}function j6(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sx(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c1(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function dJ(p){p=p|0,UFe(p)}function rye(p){p=p|0,pJ(p+24|0)}function pJ(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function UFe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,ZD()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ZD(){return 1164}function n3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=_w(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],fJ(y,J,w),B=G}function _w(p){return p=p|0,(o[(sv()|0)+24>>2]|0)+(p*12|0)|0}function fJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),vx(J,w),w=IF(J,w)|0,qD[G&31](p,w),_B(J),B=U}function vx(p,y){p=p|0,y=y|0,GC(p,y)}function IF(p,y){return p=p|0,y=y|0,p|0}function _B(p){p=p|0,yb(p)}function GC(p,y){p=p|0,y=y|0,aP(p,y)}function aP(p,y){p=p|0,y=y|0,o[p>>2]=y}function gY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],i3(p,w,J,0),B=G}function i3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=IJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=s2(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,o2(U,G)|0,G),B=J}function IJ(){var p=0,y=0;if(n[7664]|0||(BL(9340),pu(29,9340,X|0)|0,y=7664,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9340)|0)){p=9340,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));BL(9340)}return 9340}function s2(p){return p=p|0,0}function o2(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=IJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],hJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(AY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function hJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function AY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=yre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dY(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],hJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,z6(p,Ge),q6(Ge),B=bt;return}}function yre(p){return p=p|0,357913941}function dY(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function z6(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function q6(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function BL(p){p=p|0,wL(p)}function tN(p){p=p|0,pY(p+24|0)}function pY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function wL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,4,y,bre()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bre(){return 1180}function LD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=ige(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=$6(y,J,w)|0,B=G,w|0}function ige(p){return p=p|0,(o[(IJ()|0)+24>>2]|0)+(p*12|0)|0}function $6(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),eS(J,w),J=rN(J,w)|0,J=mJ(uie[G&15](p,J)|0)|0,B=U,J|0}function eS(p,y){p=p|0,y=y|0}function rN(p,y){return p=p|0,y=y|0,nN(y)|0}function mJ(p){return p=p|0,p|0}function nN(p){return p=p|0,p|0}function sge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Ere(p,w,J,0),B=G}function Ere(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=e7()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=kp(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,TL(U,G)|0,G),B=J}function e7(){var p=0,y=0;if(n[7672]|0||(Ig(9376),pu(30,9376,X|0)|0,y=7672,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9376)|0)){p=9376,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Ig(9376)}return 9376}function kp(p){return p=p|0,0}function TL(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=e7()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],fY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(pC(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function fY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function pC(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=cP(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,VD(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],fY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,IY(p,Ge),Sre(Ge),B=bt;return}}function cP(p){return p=p|0,357913941}function VD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function IY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Sre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Ig(p){p=p|0,RL(p)}function fC(p){p=p|0,VI(p+24|0)}function VI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function RL(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,bu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bu(){return 1196}function s3(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=kd(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=hY(y,G)|0,B=w,y|0}function kd(p){return p=p|0,(o[(e7()|0)+24>>2]|0)+(p*12|0)|0}function hY(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),mJ(mC[w&31](p)|0)|0}function nye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],lP(p,w,J,1),B=G}function lP(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=CJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=PI(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,xa(U,G)|0,G),B=J}function CJ(){var p=0,y=0;if(n[7680]|0||(mY(9412),pu(31,9412,X|0)|0,y=7680,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9412)|0)){p=9412,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));mY(9412)}return 9412}function PI(p){return p=p|0,0}function xa(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=CJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],yB(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(t0(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function yB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function t0(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=vre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,NL(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],yB(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,dp(p,Ge),Bx(Ge),B=bt;return}}function vre(p){return p=p|0,357913941}function NL(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function dp(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Bx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function mY(p){p=p|0,oge(p)}function yw(p){p=p|0,uc(p+24|0)}function uc(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Nu(){return 1200}function CY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=o3(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=uP(y,G)|0,B=w,y|0}function o3(p){return p=p|0,(o[(CJ()|0)+24>>2]|0)+(p*12|0)|0}function uP(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),_J(mC[w&31](p)|0)|0}function _J(p){return p=p|0,p|0}function yJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bJ(p,w,J,0),B=G}function bJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=gP()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Bre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,EJ(U,G)|0,G),B=J}function gP(){var p=0,y=0;if(n[7688]|0||(D_(9448),pu(32,9448,X|0)|0,y=7688,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9448)|0)){p=9448,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));D_(9448)}return 9448}function Bre(p){return p=p|0,0}function EJ(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=gP()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],wre(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(SJ(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function wre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function SJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,hF(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],wre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,av(p,Ge),AP(Ge),B=bt;return}}function Tre(p){return p=p|0,357913941}function hF(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function av(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function AP(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function D_(p){p=p|0,sye(p)}function iye(p){p=p|0,Rre(p+24|0)}function Rre(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function sye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,iN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function iN(){return 1204}function age(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=un(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],_Y(y,J,w),B=G}function un(p){return p=p|0,(o[(gP()|0)+24>>2]|0)+(p*12|0)|0}function _Y(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Ed(J,w),J=VT(J,w)|0,qD[G&31](p,J),B=U}function Ed(p,y){p=p|0,y=y|0}function VT(p,y){return p=p|0,y=y|0,sN(y)|0}function sN(p){return p=p|0,p|0}function Db(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],t7(p,w,J,0),B=G}function t7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=PT()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=DL(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,r7(U,G)|0,G),B=J}function PT(){var p=0,y=0;if(n[7696]|0||(a3(9484),pu(33,9484,X|0)|0,y=7696,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9484)|0)){p=9484,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));a3(9484)}return 9484}function DL(p){return p=p|0,0}function r7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=PT()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],n7(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(hE(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function n7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function hE(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=cge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Nre(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],n7(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,oye(p,Ge),wx(Ge),B=bt;return}}function cge(p){return p=p|0,357913941}function Nre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function oye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function wx(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function a3(p){p=p|0,CE(p)}function mE(p){p=p|0,WI(p+24|0)}function WI(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function CE(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,Dre()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Dre(){return 1212}function lge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=jh(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],uge(y,U,w,G),B=J}function jh(p){return p=p|0,(o[(PT()|0)+24>>2]|0)+(p*12|0)|0}function uge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),Ed(U,w),U=VT(U,w)|0,eS(le,G),le=rN(le,G)|0,UT[J&15](p,U,le),B=Ge}function vJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Lc(p,w,J,1),B=G}function Lc(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=gge()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=kre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,yY(U,G)|0,G),B=J}function gge(){var p=0,y=0;if(n[7704]|0||(RJ(9520),pu(34,9520,X|0)|0,y=7704,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9520)|0)){p=9520,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));RJ(9520)}return 9520}function kre(p){return p=p|0,0}function yY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=gge()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],kL(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(BJ(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function kL(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function BJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=wJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,TJ(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kL(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,eI(p,Ge),c3(Ge),B=bt;return}}function wJ(p){return p=p|0,357913941}function TJ(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function eI(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c3(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function RJ(p){p=p|0,u3(p)}function l3(p){p=p|0,i7(p+24|0)}function i7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function u3(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,cv()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cv(){return 1224}function bB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;return J=B,B=B+16|0,U=J+8|0,le=J,Ge=Xm(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],G=+If(y,U,w),B=J,+G}function Xm(p){return p=p|0,(o[(gge()|0)+24>>2]|0)+(p*12|0)|0}function If(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,le=+Id(+rEe[G&7](p,J)),B=U,+le}function WT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],l1(p,w,J,1),B=G}function l1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=bY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=s7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,IC(U,G)|0,G),B=J}function bY(){var p=0,y=0;if(n[7712]|0||(Fre(9556),pu(35,9556,X|0)|0,y=7712,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9556)|0)){p=9556,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Fre(9556)}return 9556}function s7(p){return p=p|0,0}function IC(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=bY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],xre(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(mA(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function xre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function mA(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tx(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Gre(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],xre(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,EB(p,Ge),aye(Ge),B=bt;return}}function Tx(p){return p=p|0,357913941}function Gre(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function EB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function aye(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Fre(p){p=p|0,EY(p)}function Zre(p){p=p|0,PD(p+24|0)}function PD(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function EY(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,Lre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Lre(){return 1232}function Age(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=Cp(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=+dge(y,J),B=G,+w}function Cp(p){return p=p|0,(o[(bY()|0)+24>>2]|0)+(p*12|0)|0}function dge(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),+ +Id(+GP[w&15](p))}function qu(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bw(p,w,J,1),B=G}function bw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=WD()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=o7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,pge(U,G)|0,G),B=J}function WD(){var p=0,y=0;if(n[7720]|0||(SB(9592),pu(36,9592,X|0)|0,y=7720,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9592)|0)){p=9592,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));SB(9592)}return 9592}function o7(p){return p=p|0,0}function pge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=WD()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],NJ(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(KFe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function NJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function KFe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=fge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,S0(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NJ(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Ew(p,Ge),Dh(Ge),B=bt;return}}function fge(p){return p=p|0,357913941}function S0(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Ew(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Dh(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function SB(p){p=p|0,DJ(p)}function a7(p){p=p|0,dP(p+24|0)}function dP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function DJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,Vre()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Vre(){return 1276}function Ige(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=xL(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=c7(y,G)|0,B=w,y|0}function xL(p){return p=p|0,(o[(WD()|0)+24>>2]|0)+(p*12|0)|0}function c7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;return J=B,B=B+16|0,G=J,w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),qD[w&31](G,p),G=kJ(G)|0,B=J,G|0}function kJ(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(l7()|0)|0,G?(o1(y,G),Tb(w,y),cye(p,w),p=IE(y)|0):p=xJ(p)|0,B=J,p|0}function l7(){var p=0;return n[7736]|0||(Cge(9640),pu(25,9640,X|0)|0,p=7736,o[p>>2]=1,o[p+4>>2]=0),9640}function cye(p,y){p=p|0,y=y|0,GJ(y,p,p+8|0)|0}function xJ(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(16)|0,o[Ge>>2]=o[p>>2],o[Ge+4>>2]=o[p+4>>2],o[Ge+8>>2]=o[p+8>>2],o[Ge+12>>2]=o[p+12>>2],U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],oN(p,U,J),o[G>>2]=p,B=w,y|0}function oN(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1244,o[w+12>>2]=y,o[p+4>>2]=w}function hge(p){p=p|0,dz(p),ti(p)}function Pre(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function pP(p){p=p|0,ti(p)}function GJ(p,y,w){return p=p|0,y=y|0,w=w|0,y=ms(o[p>>2]|0,y,w)|0,w=p+4|0,o[(o[w>>2]|0)+8>>2]=y,o[(o[w>>2]|0)+8>>2]|0}function ms(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;return G=B,B=B+16|0,J=G,xw(J),p=qf(p)|0,w=FJ(p,o[y>>2]|0,+C[w>>3])|0,oS(J),B=G,w|0}function FJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0;return G=Sb(SY()|0)|0,y=r2(y)|0,Xa(0,G|0,p|0,y|0,+ +mp(w))|0}function SY(){var p=0;return n[7728]|0||(mge(9628),p=7728,o[p>>2]=1,o[p+4>>2]=0),9628}function mge(p){p=p|0,Ny(p,OD()|0,2)}function OD(){return 1264}function Cge(p){p=p|0,Hc(p)}function vY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],u7(p,w,J,1),B=G}function u7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=sf()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=u1(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,_ge(U,G)|0,G),B=J}function sf(){var p=0,y=0;if(n[7744]|0||(yge(9684),pu(37,9684,X|0)|0,y=7744,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9684)|0)){p=9684,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));yge(9684)}return 9684}function u1(p){return p=p|0,0}function _ge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=sf()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],BY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(lye(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function BY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function lye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=uye(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,gye(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],BY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sw(p,Ge),Wre(Ge),B=bt;return}}function uye(p){return p=p|0,357913941}function gye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Wre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function yge(p){p=p|0,g7(p)}function FL(p){p=p|0,Ore(p+24|0)}function Ore(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function g7(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,5,y,bge()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function bge(){return 1280}function MD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=Mre(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=Ege(y,J,w)|0,B=G,w|0}function Mre(p){return p=p|0,(o[(sf()|0)+24>>2]|0)+(p*12|0)|0}function Ege(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return le=B,B=B+32|0,J=le,U=le+16|0,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(U,w),U=Rb(U,w)|0,UT[G&15](J,p,U),U=kJ(J)|0,B=le,U|0}function mF(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],jFe(p,w,J,1),B=G}function jFe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=wY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=HD(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,CF(U,G)|0,G),B=J}function wY(){var p=0,y=0;if(n[7752]|0||(g1(9720),pu(38,9720,X|0)|0,y=7752,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9720)|0)){p=9720,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));g1(9720)}return 9720}function HD(p){return p=p|0,0}function CF(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=wY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],lv(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(TY(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function lv(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function TY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=xp(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Aye(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],lv(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,fP(p,Ge),tA(Ge),B=bt;return}}function xp(p){return p=p|0,357913941}function Aye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function fP(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function tA(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function g1(p){p=p|0,Sge(p)}function Hre(p){p=p|0,A7(p+24|0)}function A7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Sge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,zFe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function zFe(){return 1288}function vge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;return w=B,B=B+16|0,G=w+8|0,J=w,U=vw(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],y=ZJ(y,G)|0,B=w,y|0}function vw(p){return p=p|0,(o[(wY()|0)+24>>2]|0)+(p*12|0)|0}function ZJ(p,y){p=p|0,y=y|0;var w=0;return w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),Z(mC[w&31](p)|0)|0}function Yre(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],s_(p,w,J,0),B=G}function s_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=RY()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Qre(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Bge(U,G)|0,G),B=J}function RY(){var p=0,y=0;if(n[7760]|0||(LJ(9756),pu(39,9756,X|0)|0,y=7760,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9756)|0)){p=9756,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));LJ(9756)}return 9756}function Qre(p){return p=p|0,0}function Bge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=RY()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],NY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(wge(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function NY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function wge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=Tge(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,vB(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],NY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,_F(p,Ge),Xre(Ge),B=bt;return}}function Tge(p){return p=p|0,357913941}function vB(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function _F(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Xre(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function LJ(p){p=p|0,Jre(p)}function qFe(p){p=p|0,g3(p+24|0)}function g3(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Jre(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,VJ()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function VJ(){return 1292}function PJ(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=Ure(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Kre(y,J,w),B=G}function Ure(p){return p=p|0,(o[(RY()|0)+24>>2]|0)+(p*12|0)|0}function Kre(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),Cw(J,w),w=+Il(J,w),l$e[G&31](p,w),B=U}function IP(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],Rge(p,w,J,0),B=G}function Rge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=d7()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=p7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Nge(U,G)|0,G),B=J}function d7(){var p=0,y=0;if(n[7768]|0||(kY(9792),pu(40,9792,X|0)|0,y=7768,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9792)|0)){p=9792,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));kY(9792)}return 9792}function p7(p){return p=p|0,0}function Nge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=d7()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],DY(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(f7(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function DY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function f7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=tS(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Dge(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],DY(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Wd(p,Ge),kge(Ge),B=bt;return}}function tS(p){return p=p|0,357913941}function Dge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Wd(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function kY(p){p=p|0,oy(p)}function xY(p){p=p|0,hP(p+24|0)}function hP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function oy(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,1,y,mo()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function mo(){return 1300}function A3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=_E(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],Bw(y,U,w,G),B=J}function _E(p){return p=p|0,(o[(d7()|0)+24>>2]|0)+(p*12|0)|0}function Bw(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),CB(U,w),U=Rb(U,w)|0,Cw(le,G),G=+Il(le,G),Aie[J&15](p,U,G),B=Ge}function ie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],he(p,w,J,0),B=G}function he(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=ze()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Ut(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,Qr(U,G)|0,G),B=J}function ze(){var p=0,y=0;if(n[7776]|0||(fc(9828),pu(41,9828,X|0)|0,y=7776,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9828)|0)){p=9828,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));fc(9828)}return 9828}function Ut(p){return p=p|0,0}function Qr(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=ze()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],kn(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Fi(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function kn(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Fi(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=rs(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,qs(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],kn(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,vc(p,Ge),qa(Ge),B=bt;return}}function rs(p){return p=p|0,357913941}function qs(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function vc(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function qa(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function fc(p){p=p|0,VA(p)}function vl(p){p=p|0,Zu(p+24|0)}function Zu(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function VA(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,7,y,hf()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function hf(){return 1312}function Sd(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=tI(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],rI(y,J,w),B=G}function tI(p){return p=p|0,(o[(ze()|0)+24>>2]|0)+(p*12|0)|0}function rI(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,qD[G&31](p,J),B=U}function OT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],rS(p,w,J,0),B=G}function rS(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Dy()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=Up(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,uv(U,G)|0,G),B=J}function Dy(){var p=0,y=0;if(n[7784]|0||(Fge(9864),pu(42,9864,X|0)|0,y=7784,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9864)|0)){p=9864,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Fge(9864)}return 9864}function Up(p){return p=p|0,0}function uv(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Dy()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],ky(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(nS(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function ky(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function nS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=jre(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,xge(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],ky(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,tVt(p,Ge),Gge(Ge),B=bt;return}}function jre(p){return p=p|0,357913941}function xge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function tVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Gge(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function Fge(p){p=p|0,nVt(p)}function dye(p){p=p|0,rVt(p+24|0)}function rVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function nVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,8,y,iVt()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function iVt(){return 1320}function sVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=oVt(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],aVt(y,J,w),B=G}function oVt(p){return p=p|0,(o[(Dy()|0)+24>>2]|0)+(p*12|0)|0}function aVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),ww(J,w),J=fqe(J,w)|0,qD[G&31](p,J),B=U}function ww(p,y){p=p|0,y=y|0}function fqe(p,y){return p=p|0,y=y|0,yF(y)|0}function yF(p){return p=p|0,p|0}function $Fe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],pye(p,w,J,0),B=G}function pye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=Zge()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=I7(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,h7(U,G)|0,G),B=J}function Zge(){var p=0,y=0;if(n[7792]|0||(a2(9900),pu(43,9900,X|0)|0,y=7792,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9900)|0)){p=9900,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));a2(9900)}return 9900}function I7(p){return p=p|0,0}function h7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=Zge()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],fye(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Lge(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function fye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Lge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=eZe(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,tZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],fye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Iye(p,Ge),mP(Ge),B=bt;return}}function eZe(p){return p=p|0,357913941}function tZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Iye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function mP(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function a2(p){p=p|0,nZe(p)}function Vge(p){p=p|0,rZe(p+24|0)}function rZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function nZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,22,y,WJ()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function WJ(){return 1344}function m7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0;w=B,B=B+16|0,G=w+8|0,J=w,U=Pge(p)|0,p=o[U+4>>2]|0,o[J>>2]=o[U>>2],o[J+4>>2]=p,o[G>>2]=o[J>>2],o[G+4>>2]=o[J+4>>2],zre(y,G),B=w}function Pge(p){return p=p|0,(o[(Zge()|0)+24>>2]|0)+(p*12|0)|0}function zre(p,y){p=p|0,y=y|0;var w=0;w=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(w=o[(o[p>>2]|0)+w>>2]|0),DF[w&127](p)}function A1(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=Wge()|0,p=hC(w)|0,bd(U,y,J,p,iZe(w,G)|0,G)}function Wge(){var p=0,y=0;if(n[7800]|0||(C7(9936),pu(44,9936,X|0)|0,y=7800,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9936)|0)){p=9936,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));C7(9936)}return 9936}function hC(p){return p=p|0,p|0}function iZe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=Wge()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(qre(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Oge(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function qre(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Oge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=r0(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,sZe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,qre(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Mge(p,J),oZe(J),B=Ge;return}}function r0(p){return p=p|0,536870911}function sZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Mge(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function oZe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function C7(p){p=p|0,$re(p)}function ZL(p){p=p|0,xy(p+24|0)}function xy(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function $re(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,23,y,iN()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Hge(p,y){p=p|0,y=y|0,ene(o[(aZe(p)|0)>>2]|0,y)}function aZe(p){return p=p|0,(o[(Wge()|0)+24>>2]|0)+(p<<3)|0}function ene(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,Ed(G,y),y=VT(G,y)|0,DF[p&127](y),B=w}function Yge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=OJ()|0,p=MJ(w)|0,bd(U,y,J,p,tne(w,G)|0,G)}function OJ(){var p=0,y=0;if(n[7808]|0||(rne(9972),pu(45,9972,X|0)|0,y=7808,o[y>>2]=1,o[y+4>>2]=0),!(Xr(9972)|0)){p=9972,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));rne(9972)}return 9972}function MJ(p){return p=p|0,p|0}function tne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=OJ()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(HJ(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Rx(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function HJ(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Rx(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=hye(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,mye(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,HJ(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,YJ(p,J),MT(J),B=Ge;return}}function hye(p){return p=p|0,536870911}function mye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function YJ(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function MT(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function rne(p){p=p|0,LL(p)}function Qge(p){p=p|0,cZe(p+24|0)}function cZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function LL(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,9,y,_7()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function _7(){return 1348}function Cye(p,y){return p=p|0,y=y|0,aN(o[(d3(p)|0)>>2]|0,y)|0}function d3(p){return p=p|0,(o[(OJ()|0)+24>>2]|0)+(p<<3)|0}function aN(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,n0(G,y),y=wo(G,y)|0,y=mJ(mC[p&31](y)|0)|0,B=w,y|0}function n0(p,y){p=p|0,y=y|0}function wo(p,y){return p=p|0,y=y|0,Xge(y)|0}function Xge(p){return p=p|0,p|0}function Jge(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=GY()|0,p=Uge(w)|0,bd(U,y,J,p,ay(w,G)|0,G)}function GY(){var p=0,y=0;if(n[7816]|0||(sne(10008),pu(46,10008,X|0)|0,y=7816,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10008)|0)){p=10008,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));sne(10008)}return 10008}function Uge(p){return p=p|0,p|0}function ay(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=GY()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(y7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(CP(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function y7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function CP(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=lZe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,Iqe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,y7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,nne(p,J),ine(J),B=Ge;return}}function lZe(p){return p=p|0,536870911}function Iqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function nne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ine(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function sne(p){p=p|0,E7(p)}function b7(p){p=p|0,one(p+24|0)}function one(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function E7(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,15,y,bu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function cVt(p){return p=p|0,VL(o[(FY(p)|0)>>2]|0)|0}function FY(p){return p=p|0,(o[(GY()|0)+24>>2]|0)+(p<<3)|0}function VL(p){return p=p|0,mJ(mz[p&7]()|0)|0}function lVt(){var p=0;return n[7832]|0||(gZe(10052),pu(25,10052,X|0)|0,p=7832,o[p>>2]=1,o[p+4>>2]=0),10052}function uZe(p,y){p=p|0,y=y|0,o[p>>2]=_ye()|0,o[p+4>>2]=QJ()|0,o[p+12>>2]=y,o[p+8>>2]=ane()|0,o[p+32>>2]=2}function _ye(){return 11709}function QJ(){return 1188}function ane(){return nI()|0}function p3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(cN(w),ti(w)):y|0&&(xT(y),ti(y))}function _P(p,y){return p=p|0,y=y|0,y&p|0}function cN(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function nI(){var p=0;return n[7824]|0||(o[2511]=f3()|0,o[2512]=0,p=7824,o[p>>2]=1,o[p+4>>2]=0),10044}function f3(){return 0}function gZe(p){p=p|0,Hc(p)}function yye(p){p=p|0;var y=0,w=0,G=0,J=0,U=0;y=B,B=B+32|0,w=y+24|0,U=y+16|0,J=y+8|0,G=y,yP(p,4827),Kge(p,4834,3)|0,I3(p,3682,47)|0,o[U>>2]=9,o[U+4>>2]=0,o[w>>2]=o[U>>2],o[w+4>>2]=o[U+4>>2],cne(p,4841,w)|0,o[J>>2]=1,o[J+4>>2]=0,o[w>>2]=o[J>>2],o[w+4>>2]=o[J+4>>2],uVt(p,4871,w)|0,o[G>>2]=10,o[G+4>>2]=0,o[w>>2]=o[G>>2],o[w+4>>2]=o[G+4>>2],gVt(p,4891,w)|0,B=y}function yP(p,y){p=p|0,y=y|0;var w=0;w=HL()|0,o[p>>2]=w,Rw(w,y),BF(o[p>>2]|0)}function Kge(p,y,w){return p=p|0,y=y|0,w=w|0,bZe(p,ff(y)|0,w,0),p|0}function I3(p,y,w){return p=p|0,y=y|0,w=w|0,Ine(p,ff(y)|0,w,0),p|0}function cne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],hZe(p,y,J),B=G,p|0}function uVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],iS(p,y,J),B=G,p|0}function gVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=o[w+4>>2]|0,o[U>>2]=o[w>>2],o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],jge(p,y,J),B=G,p|0}function jge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],YD(p,w,J,1),B=G}function YD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=XJ()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=bye(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,lne(U,G)|0,G),B=J}function XJ(){var p=0,y=0;if(n[7840]|0||(B7(10100),pu(48,10100,X|0)|0,y=7840,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10100)|0)){p=10100,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));B7(10100)}return 10100}function bye(p){return p=p|0,0}function lne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=XJ()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],Eye(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(S7(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function Eye(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function S7(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=AZe(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,dZe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],Eye(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,ZY(p,Ge),v7(Ge),B=bt;return}}function AZe(p){return p=p|0,357913941}function dZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function ZY(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function v7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function B7(p){p=p|0,JJ(p)}function une(p){p=p|0,LY(p+24|0)}function LY(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function JJ(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,6,y,h3()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function h3(){return 1364}function pZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;return G=B,B=B+16|0,J=G+8|0,U=G,le=VY(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],w=PY(y,J,w)|0,B=G,w|0}function VY(p){return p=p|0,(o[(XJ()|0)+24>>2]|0)+(p*12|0)|0}function PY(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),CB(J,w),J=Rb(J,w)|0,J=i2(uie[G&15](p,J)|0)|0,B=U,J|0}function iS(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],gne(p,w,J,0),B=G}function gne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=fZe()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=hqe(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,mqe(U,G)|0,G),B=J}function fZe(){var p=0,y=0;if(n[7848]|0||(yqe(10136),pu(49,10136,X|0)|0,y=7848,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10136)|0)){p=10136,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));yqe(10136)}return 10136}function hqe(p){return p=p|0,0}function mqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=fZe()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],m3(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(Cqe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function m3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function Cqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=UJ(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Ane(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],m3(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,Sye(p,Ge),_qe(Ge),B=bt;return}}function UJ(p){return p=p|0,357913941}function Ane(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function Sye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function _qe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function yqe(p){p=p|0,zge(p)}function vye(p){p=p|0,dne(p+24|0)}function dne(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function zge(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,9,y,Bye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Bye(){return 1372}function PL(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,J=G+8|0,U=G,le=WL(p)|0,p=o[le+4>>2]|0,o[U>>2]=o[le>>2],o[U+4>>2]=p,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],bP(y,J,w),B=G}function WL(p){return p=p|0,(o[(fZe()|0)+24>>2]|0)+(p*12|0)|0}function bP(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=As;U=B,B=B+16|0,J=U,G=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(G=o[(o[p>>2]|0)+G>>2]|0),KJ(J,w),le=ke(IZe(J,w)),c$e[G&1](p,le),B=U}function KJ(p,y){p=p|0,y=+y}function IZe(p,y){return p=p|0,y=+y,ke(bqe(y))}function bqe(p){return p=+p,ke(p)}function hZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,J=G+8|0,U=G,Ge=o[w>>2]|0,le=o[w+4>>2]|0,w=ff(y)|0,o[U>>2]=Ge,o[U+4>>2]=le,o[J>>2]=o[U>>2],o[J+4>>2]=o[U+4>>2],mZe(p,w,J,0),B=G}function mZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;J=B,B=B+32|0,U=J+16|0,It=J+8|0,Ge=J,bt=o[w>>2]|0,Xe=o[w+4>>2]|0,le=o[p>>2]|0,p=QD()|0,o[It>>2]=bt,o[It+4>>2]=Xe,o[U>>2]=o[It>>2],o[U+4>>2]=o[It+4>>2],w=bF(U)|0,o[Ge>>2]=bt,o[Ge+4>>2]=Xe,o[U>>2]=o[Ge>>2],o[U+4>>2]=o[Ge+4>>2],bd(le,y,p,w,AVt(U,G)|0,G),B=J}function QD(){var p=0,y=0;if(n[7856]|0||(wye(10172),pu(50,10172,X|0)|0,y=7856,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10172)|0)){p=10172,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));wye(10172)}return 10172}function bF(p){return p=p|0,0}function AVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;return It=B,B=B+32|0,J=It+24|0,le=It+16|0,Ge=It,Xe=It+8|0,U=o[p>>2]|0,G=o[p+4>>2]|0,o[Ge>>2]=U,o[Ge+4>>2]=G,rr=QD()|0,bt=rr+24|0,p=Uu(y,4)|0,o[Xe>>2]=p,y=rr+28|0,w=o[y>>2]|0,w>>>0<(o[rr+32>>2]|0)>>>0?(o[le>>2]=U,o[le+4>>2]=G,o[J>>2]=o[le>>2],o[J+4>>2]=o[le+4>>2],qge(w,J,p),p=(o[y>>2]|0)+12|0,o[y>>2]=p):(CZe(bt,Ge,Xe),p=o[y>>2]|0),B=It,((p-(o[bt>>2]|0)|0)/12|0)+-1|0}function qge(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=o[y+4>>2]|0,o[p>>2]=o[y>>2],o[p+4>>2]=G,o[p+8>>2]=w}function CZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;if(bt=B,B=B+48|0,G=bt+32|0,le=bt+24|0,Ge=bt,Xe=p+4|0,J=(((o[Xe>>2]|0)-(o[p>>2]|0)|0)/12|0)+1|0,U=C3(p)|0,U>>>0>>0)me(p);else{It=o[p>>2]|0,an=((o[p+8>>2]|0)-It|0)/12|0,rr=an<<1,Eqe(Ge,an>>>0>>1>>>0?rr>>>0>>0?J:rr:U,((o[Xe>>2]|0)-It|0)/12|0,p+8|0),Xe=Ge+8|0,U=o[Xe>>2]|0,J=o[y+4>>2]|0,w=o[w>>2]|0,o[le>>2]=o[y>>2],o[le+4>>2]=J,o[G>>2]=o[le>>2],o[G+4>>2]=o[le+4>>2],qge(U,G,w),o[Xe>>2]=(o[Xe>>2]|0)+12,pne(p,Ge),gv(Ge),B=bt;return}}function C3(p){return p=p|0,357913941}function Eqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>357913941)Ko();else{J=Ku(y*12|0)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w*12|0)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y*12|0)}function pne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(((J|0)/-12|0)*12|0)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function gv(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~(((G+-12-y|0)>>>0)/12|0)*12|0)),p=o[p>>2]|0,p|0&&ti(p)}function wye(p){p=p|0,Tye(p)}function w7(p){p=p|0,QA(p+24|0)}function QA(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~(((y+-12-G|0)>>>0)/12|0)*12|0)),ti(w))}function Tye(p){p=p|0;var y=0;y=Hs()|0,ho(p,2,3,y,EP()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function EP(){return 1380}function HT(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+8|0,le=J,Ge=T7(p)|0,p=o[Ge+4>>2]|0,o[le>>2]=o[Ge>>2],o[le+4>>2]=p,o[U>>2]=o[le>>2],o[U+4>>2]=o[le+4>>2],fne(y,U,w,G),B=J}function T7(p){return p=p|0,(o[(QD()|0)+24>>2]|0)+(p*12|0)|0}function fne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;Ge=B,B=B+16|0,U=Ge+1|0,le=Ge,J=o[y>>2]|0,y=o[y+4>>2]|0,p=p+(y>>1)|0,y&1&&(J=o[(o[p>>2]|0)+J>>2]|0),CB(U,w),U=Rb(U,w)|0,_Ze(le,G),le=Rye(le,G)|0,UT[J&15](p,U,le),B=Ge}function _Ze(p,y){p=p|0,y=y|0}function Rye(p,y){return p=p|0,y=y|0,$ge(y)|0}function $ge(p){return p=p|0,(p|0)!=0|0}function Ine(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=hne()|0,p=yZe(w)|0,bd(U,y,J,p,BB(w,G)|0,G)}function hne(){var p=0,y=0;if(n[7864]|0||(v0(10208),pu(51,10208,X|0)|0,y=7864,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10208)|0)){p=10208,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));v0(10208)}return 10208}function yZe(p){return p=p|0,p|0}function BB(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=hne()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(OL(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(jJ(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function OL(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function jJ(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=R7(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,N7(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,OL(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,mne(p,J),ML(J),B=Ge;return}}function R7(p){return p=p|0,536870911}function N7(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function mne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ML(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function v0(p){p=p|0,tAe(p)}function Nye(p){p=p|0,eAe(p+24|0)}function eAe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function tAe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,24,y,Dye()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Dye(){return 1392}function WY(p,y){p=p|0,y=y|0,zJ(o[(kye(p)|0)>>2]|0,y)}function kye(p){return p=p|0,(o[(hne()|0)+24>>2]|0)+(p<<3)|0}function zJ(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,n0(G,y),y=wo(G,y)|0,DF[p&127](y),B=w}function bZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=SI()|0,p=D7(w)|0,bd(U,y,J,p,d1(w,G)|0,G)}function SI(){var p=0,y=0;if(n[7872]|0||(qJ(10244),pu(52,10244,X|0)|0,y=7872,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10244)|0)){p=10244,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));qJ(10244)}return 10244}function D7(p){return p=p|0,p|0}function d1(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=SI()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Cne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(XD(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Cne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function XD(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=rAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,_3(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Cne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Tw(p,J),c2(J),B=Ge;return}}function rAe(p){return p=p|0,536870911}function _3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Tw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function c2(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function qJ(p){p=p|0,EZe(p)}function _ne(p){p=p|0,k7(p+24|0)}function k7(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function EZe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,16,y,dVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function dVt(){return 1400}function nAe(p){return p=p|0,kb(o[(xye(p)|0)>>2]|0)|0}function xye(p){return p=p|0,(o[(SI()|0)+24>>2]|0)+(p<<3)|0}function kb(p){return p=p|0,Gye(mz[p&7]()|0)|0}function Gye(p){return p=p|0,p|0}function HL(){var p=0;return n[7880]|0||(x7(10280),pu(25,10280,X|0)|0,p=7880,o[p>>2]=1,o[p+4>>2]=0),10280}function Rw(p,y){p=p|0,y=y|0,o[p>>2]=Fye()|0,o[p+4>>2]=sp()|0,o[p+12>>2]=y,o[p+8>>2]=SZe()|0,o[p+32>>2]=4}function Fye(){return 11711}function sp(){return 1356}function SZe(){return nI()|0}function Zye(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(Lye(w),ti(w)):y|0&&(ty(y),ti(y))}function Lye(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function x7(p){p=p|0,Hc(p)}function Sqe(p){p=p|0,vZe(p,4920),yne(p)|0,bne(p)|0}function vZe(p,y){p=p|0,y=y|0;var w=0;w=l7()|0,o[p>>2]=w,iAe(w,y),BF(o[p>>2]|0)}function yne(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,wqe()|0),p|0}function bne(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,$J()|0),p|0}function $J(){var p=0;return n[7888]|0||(vqe(10328),pu(53,10328,X|0)|0,p=7888,o[p>>2]=1,o[p+4>>2]=0),Xr(10328)|0||vqe(10328),10328}function EF(p,y){p=p|0,y=y|0,bd(p,0,y,0,0,0)}function vqe(p){p=p|0,Pye(p),G7(p,10)}function Vye(p){p=p|0,BZe(p+24|0)}function BZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Pye(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Bqe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function pVt(p,y,w){p=p|0,y=y|0,w=+w,fVt(p,y,w)}function G7(p,y){p=p|0,y=y|0,o[p+20>>2]=y}function fVt(p,y,w){p=p|0,y=y|0,w=+w;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+16|0,U=G+8|0,Ge=G+13|0,J=G,le=G+12|0,CB(Ge,y),o[U>>2]=Rb(Ge,y)|0,Cw(le,w),C[J>>3]=+Il(le,w),IVt(p,U,J),B=G}function IVt(p,y,w){p=p|0,y=y|0,w=w|0,dC(p+8|0,o[y>>2]|0,+C[w>>3]),n[p+24>>0]=1}function Bqe(){return 1404}function hVt(p,y){return p=p|0,y=+y,YT(p,y)|0}function YT(p,y){p=p|0,y=+y;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,U=G+4|0,le=G+8|0,Ge=G,J=Fb(8)|0,w=J,Xe=Ku(16)|0,CB(U,p),p=Rb(U,p)|0,Cw(le,y),dC(Xe,p,+Il(le,y)),le=w+4|0,o[le>>2]=Xe,p=Ku(8)|0,le=o[le>>2]|0,o[Ge>>2]=0,o[U>>2]=o[Ge>>2],oN(p,le,U),o[J>>2]=p,B=G,w|0}function wqe(){var p=0;return n[7896]|0||(Ene(10364),pu(54,10364,X|0)|0,p=7896,o[p>>2]=1,o[p+4>>2]=0),Xr(10364)|0||Ene(10364),10364}function Ene(p){p=p|0,_Vt(p),G7(p,55)}function mVt(p){p=p|0,CVt(p+24|0)}function CVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function _Vt(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,4,y,EVt()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function yVt(p){p=p|0,bVt(p)}function bVt(p){p=p|0,Wye(p)}function Wye(p){p=p|0,l2(p+8|0),n[p+24>>0]=1}function l2(p){p=p|0,o[p>>2]=0,C[p+8>>3]=0}function EVt(){return 1424}function eU(){return Sne()|0}function Sne(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,G=Ku(16)|0,l2(G),U=p+4|0,o[U>>2]=G,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],oN(G,U,J),o[w>>2]=G,B=y,p|0}function iAe(p,y){p=p|0,y=y|0,o[p>>2]=vne()|0,o[p+4>>2]=Bne()|0,o[p+12>>2]=y,o[p+8>>2]=Oye()|0,o[p+32>>2]=5}function vne(){return 11710}function Bne(){return 1416}function Oye(){return F7()|0}function y3(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(JD(w),ti(w)):y|0&&ti(y)}function JD(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function F7(){var p=0;return n[7904]|0||(o[2600]=Tqe()|0,o[2601]=0,p=7904,o[p>>2]=1,o[p+4>>2]=0),10400}function Tqe(){return o[357]|0}function wZe(p){p=p|0,Mye(p,4926),TZe(p)|0}function Mye(p,y){p=p|0,y=y|0;var w=0;w=Og()|0,o[p>>2]=w,Rqe(w,y),BF(o[p>>2]|0)}function TZe(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,RZe()|0),p|0}function RZe(){var p=0;return n[7912]|0||(wne(10412),pu(56,10412,X|0)|0,p=7912,o[p>>2]=1,o[p+4>>2]=0),Xr(10412)|0||wne(10412),10412}function wne(p){p=p|0,Yye(p),G7(p,57)}function sAe(p){p=p|0,Hye(p+24|0)}function Hye(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Yye(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,5,y,cAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function oAe(p){p=p|0,aAe(p)}function aAe(p){p=p|0,SP(p)}function SP(p){p=p|0;var y=0,w=0;y=p+8|0,w=y+48|0;do o[y>>2]=0,y=y+4|0;while((y|0)<(w|0));n[p+56>>0]=1}function cAe(){return 1432}function NZe(){return lAe()|0}function lAe(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;le=B,B=B+16|0,p=le+4|0,y=le,w=Fb(8)|0,G=w,J=Ku(48)|0,U=J,Ge=U+48|0;do o[U>>2]=0,U=U+4|0;while((U|0)<(Ge|0));return U=G+4|0,o[U>>2]=J,Ge=Ku(8)|0,U=o[U>>2]|0,o[y>>2]=0,o[p>>2]=o[y>>2],e3(Ge,U,p),o[w>>2]=Ge,B=le,G|0}function Rqe(p,y){p=p|0,y=y|0,o[p>>2]=Qye()|0,o[p+4>>2]=Z7()|0,o[p+12>>2]=y,o[p+8>>2]=tU()|0,o[p+32>>2]=6}function Qye(){return 11704}function Z7(){return 1436}function tU(){return F7()|0}function lN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(L7(w),ti(w)):y|0&&ti(y)}function L7(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function DZe(p){p=p|0,vP(p,4933),SF(p)|0,vF(p)|0}function vP(p,y){p=p|0,y=y|0;var w=0;w=b3()|0,o[p>>2]=w,p1(w,y),BF(o[p>>2]|0)}function SF(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,wVt()|0),p|0}function vF(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,OY()|0),p|0}function OY(){var p=0;return n[7920]|0||(YL(10452),pu(58,10452,X|0)|0,p=7920,o[p>>2]=1,o[p+4>>2]=0),Xr(10452)|0||YL(10452),10452}function YL(p){p=p|0,kh(p),G7(p,1)}function Xye(p){p=p|0,BP(p+24|0)}function BP(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function kh(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,1,y,Jye()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function kZe(p,y,w){p=p|0,y=+y,w=+w,xb(p,y,w)}function xb(p,y,w){p=p|0,y=+y,w=+w;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,U=G+8|0,Ge=G+17|0,J=G,le=G+16|0,Cw(Ge,y),C[U>>3]=+Il(Ge,y),Cw(le,w),C[J>>3]=+Il(le,w),uAe(p,U,J),B=G}function uAe(p,y,w){p=p|0,y=y|0,w=w|0,Nqe(p+8|0,+C[y>>3],+C[w>>3]),n[p+24>>0]=1}function Nqe(p,y,w){p=p|0,y=+y,w=+w,C[p>>3]=y,C[p+8>>3]=w}function Jye(){return 1472}function SVt(p,y){return p=+p,y=+y,vVt(p,y)|0}function vVt(p,y){p=+p,y=+y;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+16|0,le=G+4|0,Ge=G+8|0,Xe=G,J=Fb(8)|0,w=J,U=Ku(16)|0,Cw(le,p),p=+Il(le,p),Cw(Ge,y),Nqe(U,p,+Il(Ge,y)),Ge=w+4|0,o[Ge>>2]=U,U=Ku(8)|0,Ge=o[Ge>>2]|0,o[Xe>>2]=0,o[le>>2]=o[Xe>>2],Uye(U,Ge,le),o[J>>2]=U,B=G,w|0}function Uye(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1452,o[w+12>>2]=y,o[p+4>>2]=w}function BVt(p){p=p|0,dz(p),ti(p)}function xZe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function rU(p){p=p|0,ti(p)}function wVt(){var p=0;return n[7928]|0||(GZe(10488),pu(59,10488,X|0)|0,p=7928,o[p>>2]=1,o[p+4>>2]=0),Xr(10488)|0||GZe(10488),10488}function GZe(p){p=p|0,Gb(p),G7(p,60)}function Kye(p){p=p|0,FZe(p+24|0)}function FZe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Gb(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,6,y,wP()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Ga(p){p=p|0,cg(p)}function cg(p){p=p|0,zh(p)}function zh(p){p=p|0,Tne(p+8|0),n[p+24>>0]=1}function Tne(p){p=p|0,o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,o[p+12>>2]=0}function wP(){return 1492}function jye(){return Nw()|0}function Nw(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,G=Ku(16)|0,Tne(G),U=p+4|0,o[U>>2]=G,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],Uye(G,U,J),o[w>>2]=G,B=y,p|0}function b3(){var p=0;return n[7936]|0||(Nx(10524),pu(25,10524,X|0)|0,p=7936,o[p>>2]=1,o[p+4>>2]=0),10524}function p1(p,y){p=p|0,y=y|0,o[p>>2]=MY()|0,o[p+4>>2]=ZZe()|0,o[p+12>>2]=y,o[p+8>>2]=LZe()|0,o[p+32>>2]=7}function MY(){return 11700}function ZZe(){return 1484}function LZe(){return F7()|0}function o_(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(VZe(w),ti(w)):y|0&&ti(y)}function VZe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function Nx(p){p=p|0,Hc(p)}function Dqe(p,y,w){p=p|0,y=y|0,w=w|0,p=ff(y)|0,y=TVt(w)|0,w=kqe(w,0)|0,YZe(p,y,w,PZe()|0,0)}function TVt(p){return p=p|0,p|0}function kqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=PZe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(gAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(AAe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function PZe(){var p=0,y=0;if(n[7944]|0||(zye(10568),pu(61,10568,X|0)|0,y=7944,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10568)|0)){p=10568,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zye(10568)}return 10568}function zye(p){p=p|0,HY(p)}function qye(p){p=p|0,Dw(p+24|0)}function Dw(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function HY(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,17,y,Nu()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Rne(p){return p=p|0,V7(o[(WZe(p)|0)>>2]|0)|0}function WZe(p){return p=p|0,(o[(PZe()|0)+24>>2]|0)+(p<<3)|0}function V7(p){return p=p|0,_J(mz[p&7]()|0)|0}function gAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function AAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Nne(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,UD(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,gAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,$ye(p,J),ebe(J),B=Ge;return}}function Nne(p){return p=p|0,536870911}function UD(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function $ye(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function ebe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Jm(){Dx()}function Dx(){dAe(10604)}function dAe(p){p=p|0,Od(p,4955)}function Od(p,y){p=p|0,y=y|0;var w=0;w=B0()|0,o[p>>2]=w,Dne(w,y),BF(o[p>>2]|0)}function B0(){var p=0;return n[7952]|0||(W7(10612),pu(25,10612,X|0)|0,p=7952,o[p>>2]=1,o[p+4>>2]=0),10612}function Dne(p,y){p=p|0,y=y|0,o[p>>2]=OZe()|0,o[p+4>>2]=pAe()|0,o[p+12>>2]=y,o[p+8>>2]=MZe()|0,o[p+32>>2]=8}function BF(p){p=p|0;var y=0,w=0;y=B,B=B+16|0,w=y,TP()|0,o[w>>2]=p,wF(10608,w),B=y}function TP(){return n[11714]|0||(o[2652]=0,pu(62,10608,X|0)|0,n[11714]=1),10608}function wF(p,y){p=p|0,y=y|0;var w=0;w=Ku(8)|0,o[w+4>>2]=o[y>>2],o[w>>2]=o[p>>2],o[p>>2]=w}function P7(p){p=p|0,tbe(p)}function tbe(p){p=p|0;var y=0,w=0;if(y=o[p>>2]|0,y|0)do w=y,y=o[y>>2]|0,ti(w);while(y|0);o[p>>2]=0}function OZe(){return 11715}function pAe(){return 1496}function MZe(){return nI()|0}function rbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(HZe(w),ti(w)):y|0&&ti(y)}function HZe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function W7(p){p=p|0,Hc(p)}function RVt(p,y){p=p|0,y=y|0;var w=0,G=0;TP()|0,w=o[2652]|0;e:do if(w|0){for(;G=o[w+4>>2]|0,!(G|0&&!(Kqe(O7(G)|0,p)|0));)if(w=o[w>>2]|0,!w)break e;NVt(G,y)}while(!1)}function O7(p){return p=p|0,o[p+12>>2]|0}function NVt(p,y){p=p|0,y=y|0;var w=0;p=p+36|0,w=o[p>>2]|0,w|0&&(yb(w),ti(w)),w=Ku(4)|0,dB(w,y),o[p>>2]=w}function RP(){return n[11716]|0||(o[2664]=0,pu(63,10656,X|0)|0,n[11716]=1),10656}function nbe(){var p=0;return n[11717]|0?p=o[2665]|0:(DVt(),o[2665]=1504,n[11717]=1,p=1504),p|0}function DVt(){n[11740]|0||(n[11718]=Uu(Uu(8,0)|0,0)|0,n[11719]=Uu(Uu(0,0)|0,0)|0,n[11720]=Uu(Uu(0,16)|0,0)|0,n[11721]=Uu(Uu(8,0)|0,0)|0,n[11722]=Uu(Uu(0,0)|0,0)|0,n[11723]=Uu(Uu(8,0)|0,0)|0,n[11724]=Uu(Uu(0,0)|0,0)|0,n[11725]=Uu(Uu(8,0)|0,0)|0,n[11726]=Uu(Uu(0,0)|0,0)|0,n[11727]=Uu(Uu(8,0)|0,0)|0,n[11728]=Uu(Uu(0,0)|0,0)|0,n[11729]=Uu(Uu(0,0)|0,32)|0,n[11730]=Uu(Uu(0,0)|0,32)|0,n[11740]=1)}function ibe(){return 1572}function YZe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0;U=B,B=B+32|0,It=U+16|0,bt=U+12|0,Xe=U+8|0,Ge=U+4|0,le=U,o[It>>2]=p,o[bt>>2]=y,o[Xe>>2]=w,o[Ge>>2]=G,o[le>>2]=J,RP()|0,sbe(10656,It,bt,Xe,Ge,le),B=U}function sbe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0;le=Ku(24)|0,wb(le+4|0,o[y>>2]|0,o[w>>2]|0,o[G>>2]|0,o[J>>2]|0,o[U>>2]|0),o[le>>2]=o[p>>2],o[p>>2]=le}function E3(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0;if(So=B,B=B+32|0,zi=So+20|0,Un=So+8|0,Ds=So+4|0,Si=So,y=o[y>>2]|0,y|0){Ks=zi+4|0,Xe=zi+8|0,bt=Un+4|0,It=Un+8|0,rr=Un+8|0,an=zi+8|0;do{if(le=y+4|0,Ge=nU(le)|0,Ge|0){if(J=f1(Ge)|0,o[zi>>2]=0,o[Ks>>2]=0,o[Xe>>2]=0,G=(fAe(Ge)|0)+1|0,kVt(zi,G),G|0)for(;G=G+-1|0,RB(Un,o[J>>2]|0),U=o[Ks>>2]|0,U>>>0<(o[an>>2]|0)>>>0?(o[U>>2]=o[Un>>2],o[Ks>>2]=(o[Ks>>2]|0)+4):uN(zi,Un),G;)J=J+4|0;G=Gy(Ge)|0,o[Un>>2]=0,o[bt>>2]=0,o[It>>2]=0;e:do if(o[G>>2]|0)for(J=0,U=0;;){if((J|0)==(U|0)?IAe(Un,G):(o[J>>2]=o[G>>2],o[bt>>2]=(o[bt>>2]|0)+4),G=G+4|0,!(o[G>>2]|0))break e;J=o[bt>>2]|0,U=o[rr>>2]|0}while(!1);o[Ds>>2]=KD(le)|0,o[Si>>2]=Xr(Ge)|0,jD(w,p,Ds,Si,zi,Un),Av(Un),QL(zi)}y=o[y>>2]|0}while(y|0)}B=So}function nU(p){return p=p|0,o[p+12>>2]|0}function f1(p){return p=p|0,o[p+12>>2]|0}function fAe(p){return p=p|0,o[p+16>>2]|0}function kVt(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+32|0,w=J,G=o[p>>2]|0,(o[p+8>>2]|0)-G>>2>>>0>>0&&(lbe(w,y,(o[p+4>>2]|0)-G>>2,p+8|0),AN(p,w),la(w)),B=J}function uN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;if(le=B,B=B+32|0,w=le,G=p+4|0,J=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=_Ae(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,bt=(o[p+8>>2]|0)-Ge|0,Xe=bt>>1,lbe(w,bt>>2>>>0>>1>>>0?Xe>>>0>>0?J:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,AN(p,w),la(w),B=le;return}}function Gy(p){return p=p|0,o[p+8>>2]|0}function IAe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;if(le=B,B=B+32|0,w=le,G=p+4|0,J=((o[G>>2]|0)-(o[p>>2]|0)>>2)+1|0,U=B3(p)|0,U>>>0>>0)me(p);else{Ge=o[p>>2]|0,bt=(o[p+8>>2]|0)-Ge|0,Xe=bt>>1,Fy(w,bt>>2>>>0>>1>>>0?Xe>>>0>>0?J:Xe:U,(o[G>>2]|0)-Ge>>2,p+8|0),U=w+8|0,o[o[U>>2]>>2]=o[y>>2],o[U>>2]=(o[U>>2]|0)+4,gN(p,w),Q7(w),B=le;return}}function KD(p){return p=p|0,o[p>>2]|0}function jD(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,S3(p,y,w,G,J,U)}function Av(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function QL(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-4-G|0)>>>2)<<2)),ti(w))}function S3(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+48|0,It=le+40|0,Ge=le+32|0,rr=le+24|0,Xe=le+12|0,bt=le,xw(Ge),p=qf(p)|0,o[rr>>2]=o[y>>2],w=o[w>>2]|0,G=o[G>>2]|0,M7(Xe,J),QZe(bt,U),o[It>>2]=o[rr>>2],XZe(p,It,w,G,Xe,bt),Av(bt),QL(Xe),oS(Ge),B=le}function M7(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(Y7(p,G),xVt(p,o[y>>2]|0,o[w>>2]|0,G))}function QZe(p,y){p=p|0,y=y|0;var w=0,G=0;o[p>>2]=0,o[p+4>>2]=0,o[p+8>>2]=0,w=y+4|0,G=(o[w>>2]|0)-(o[y>>2]|0)>>2,G|0&&(sU(p,G),CAe(p,o[y>>2]|0,o[w>>2]|0,G))}function XZe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+32|0,It=le+28|0,rr=le+24|0,Ge=le+12|0,Xe=le,bt=Sb(kne()|0)|0,o[rr>>2]=o[y>>2],o[It>>2]=o[rr>>2],y=v3(It)|0,w=JZe(w)|0,G=hAe(G)|0,o[Ge>>2]=o[J>>2],It=J+4|0,o[Ge+4>>2]=o[It>>2],rr=J+8|0,o[Ge+8>>2]=o[rr>>2],o[rr>>2]=0,o[It>>2]=0,o[J>>2]=0,J=yE(Ge)|0,o[Xe>>2]=o[U>>2],It=U+4|0,o[Xe+4>>2]=o[It>>2],rr=U+8|0,o[Xe+8>>2]=o[rr>>2],o[rr>>2]=0,o[It>>2]=0,o[U>>2]=0,Yl(0,bt|0,p|0,y|0,w|0,G|0,J|0,H7(Xe)|0)|0,Av(Xe),QL(Ge),B=le}function kne(){var p=0;return n[7968]|0||(u2(10708),p=7968,o[p>>2]=1,o[p+4>>2]=0),10708}function v3(p){return p=p|0,mAe(p)|0}function JZe(p){return p=p|0,obe(p)|0}function hAe(p){return p=p|0,_J(p)|0}function yE(p){return p=p|0,cy(p)|0}function H7(p){return p=p|0,UZe(p)|0}function UZe(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Fb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=obe(o[(o[p>>2]|0)+(y<<2)>>2]|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function obe(p){return p=p|0,p|0}function cy(p){p=p|0;var y=0,w=0,G=0;if(G=(o[p+4>>2]|0)-(o[p>>2]|0)|0,w=G>>2,G=Fb(G+4|0)|0,o[G>>2]=w,w|0){y=0;do o[G+4+(y<<2)>>2]=mAe((o[p>>2]|0)+(y<<2)|0)|0,y=y+1|0;while((y|0)!=(w|0))}return G|0}function mAe(p){p=p|0;var y=0,w=0,G=0,J=0;return J=B,B=B+32|0,y=J+12|0,w=J,G=Nh(xqe()|0)|0,G?(o1(y,G),Tb(w,y),Lbe(p,w),p=IE(y)|0):p=abe(p)|0,B=J,p|0}function xqe(){var p=0;return n[7960]|0||(iI(10664),pu(25,10664,X|0)|0,p=7960,o[p>>2]=1,o[p+4>>2]=0),10664}function abe(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(4)|0,o[Ge>>2]=o[p>>2],U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],iU(p,U,J),o[G>>2]=p,B=w,y|0}function iU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1656,o[w+12>>2]=y,o[p+4>>2]=w}function xne(p){p=p|0,dz(p),ti(p)}function cbe(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function dv(p){p=p|0,ti(p)}function iI(p){p=p|0,Hc(p)}function u2(p){p=p|0,Ny(p,FC()|0,5)}function FC(){return 1676}function sU(p,y){p=p|0,y=y|0;var w=0;if((B3(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function CAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function B3(p){return p=p|0,1073741823}function Y7(p,y){p=p|0,y=y|0;var w=0;if((_Ae(p)|0)>>>0>>0&&me(p),y>>>0>1073741823)Ko();else{w=Ku(y<<2)|0,o[p+4>>2]=w,o[p>>2]=w,o[p+8>>2]=w+(y<<2);return}}function xVt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,G=p+4|0,p=w-y|0,(p|0)>0&&(Md(o[G>>2]|0,y|0,p|0)|0,o[G>>2]=(o[G>>2]|0)+(p>>>2<<2))}function _Ae(p){return p=p|0,1073741823}function Fy(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function gN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Q7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function lbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>1073741823)Ko();else{J=Ku(y<<2)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<2)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<2)}function AN(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>2)<<2)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function la(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-4-y|0)>>>2)<<2)),p=o[p>>2]|0,p|0&&ti(p)}function yAe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(Un=B,B=B+32|0,It=Un+20|0,rr=Un+12|0,bt=Un+16|0,an=Un+4|0,Ks=Un,zi=Un+8|0,Ge=nbe()|0,U=o[Ge>>2]|0,le=o[U>>2]|0,le|0)for(Xe=o[Ge+8>>2]|0,Ge=o[Ge+4>>2]|0;RB(It,le),KZe(p,It,Ge,Xe),U=U+4|0,le=o[U>>2]|0,le;)Xe=Xe+1|0,Ge=Ge+1|0;if(U=ibe()|0,le=o[U>>2]|0,le|0)do RB(It,le),o[rr>>2]=o[U+4>>2],ube(y,It,rr),U=U+8|0,le=o[U>>2]|0;while(le|0);if(U=o[(TP()|0)>>2]|0,U|0)do y=o[U+4>>2]|0,RB(It,o[(Zy(y)|0)>>2]|0),o[rr>>2]=O7(y)|0,YY(w,It,rr),U=o[U>>2]|0;while(U|0);if(RB(bt,0),U=RP()|0,o[It>>2]=o[bt>>2],E3(It,U,J),U=o[(TP()|0)>>2]|0,U|0){p=It+4|0,y=It+8|0,w=It+8|0;do{if(Xe=o[U+4>>2]|0,RB(rr,o[(Zy(Xe)|0)>>2]|0),_p(an,bAe(Xe)|0),le=o[an>>2]|0,le|0){o[It>>2]=0,o[p>>2]=0,o[y>>2]=0;do RB(Ks,o[(Zy(o[le+4>>2]|0)|0)>>2]|0),Ge=o[p>>2]|0,Ge>>>0<(o[w>>2]|0)>>>0?(o[Ge>>2]=o[Ks>>2],o[p>>2]=(o[p>>2]|0)+4):uN(It,Ks),le=o[le>>2]|0;while(le|0);gbe(G,rr,It),QL(It)}o[zi>>2]=o[rr>>2],bt=Gne(Xe)|0,o[It>>2]=o[zi>>2],E3(It,bt,J),wr(an),U=o[U>>2]|0}while(U|0)}B=Un}function KZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,zZe(p,y,w,G)}function ube(p,y,w){p=p|0,y=y|0,w=w|0,Zqe(p,y,w)}function Zy(p){return p=p|0,p|0}function YY(p,y,w){p=p|0,y=y|0,w=w|0,LVt(p,y,w)}function bAe(p){return p=p|0,p+16|0}function _p(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;if(U=B,B=B+16|0,J=U+8|0,w=U,o[p>>2]=0,G=o[y>>2]|0,o[J>>2]=G,o[w>>2]=p,w=ZVt(w)|0,G|0){if(G=Ku(12)|0,le=(Abe(J)|0)+4|0,p=o[le+4>>2]|0,y=G+4|0,o[y>>2]=o[le>>2],o[y+4>>2]=p,y=o[o[J>>2]>>2]|0,o[J>>2]=y,!y)p=G;else for(y=G;p=Ku(12)|0,Xe=(Abe(J)|0)+4|0,Ge=o[Xe+4>>2]|0,le=p+4|0,o[le>>2]=o[Xe>>2],o[le+4>>2]=Ge,o[y>>2]=p,le=o[o[J>>2]>>2]|0,o[J>>2]=le,le;)y=p;o[p>>2]=o[w>>2],o[w>>2]=G}B=U}function gbe(p,y,w){p=p|0,y=y|0,w=w|0,oU(p,y,w)}function Gne(p){return p=p|0,p+24|0}function oU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+24|0,J=G+16|0,Ge=G+12|0,U=G,xw(J),p=qf(p)|0,o[Ge>>2]=o[y>>2],M7(U,w),o[le>>2]=o[Ge>>2],jZe(p,le,U),QL(U),oS(J),B=G}function jZe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=B,B=B+32|0,le=G+16|0,Ge=G+12|0,J=G,U=Sb(aU()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=v3(le)|0,o[J>>2]=o[w>>2],le=w+4|0,o[J+4>>2]=o[le>>2],Ge=w+8|0,o[J+8>>2]=o[Ge>>2],o[Ge>>2]=0,o[le>>2]=0,o[w>>2]=0,Ei(0,U|0,p|0,y|0,yE(J)|0)|0,QL(J),B=G}function aU(){var p=0;return n[7976]|0||(GVt(10720),p=7976,o[p>>2]=1,o[p+4>>2]=0),10720}function GVt(p){p=p|0,Ny(p,FVt()|0,2)}function FVt(){return 1732}function ZVt(p){return p=p|0,o[p>>2]|0}function Abe(p){return p=p|0,o[p>>2]|0}function LVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,J=G+8|0,le=G,xw(J),p=qf(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],Gqe(p,U,w),oS(J),B=G}function Gqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+16|0,U=G+4|0,le=G,J=Sb(VVt()|0)|0,o[le>>2]=o[y>>2],o[U>>2]=o[le>>2],y=v3(U)|0,Ei(0,J|0,p|0,y|0,JZe(w)|0)|0,B=G}function VVt(){var p=0;return n[7984]|0||(ZC(10732),p=7984,o[p>>2]=1,o[p+4>>2]=0),10732}function ZC(p){p=p|0,Ny(p,Fqe()|0,2)}function Fqe(){return 1744}function Zqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;G=B,B=B+32|0,U=G+16|0,J=G+8|0,le=G,xw(J),p=qf(p)|0,o[le>>2]=o[y>>2],w=o[w>>2]|0,o[U>>2]=o[le>>2],Gqe(p,U,w),oS(J),B=G}function zZe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+32|0,le=J+16|0,U=J+8|0,Ge=J,xw(U),p=qf(p)|0,o[Ge>>2]=o[y>>2],w=n[w>>0]|0,G=n[G>>0]|0,o[le>>2]=o[Ge>>2],dN(p,le,w,G),oS(U),B=J}function dN(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,le=J+4|0,Ge=J,U=Sb(EAe()|0)|0,o[Ge>>2]=o[y>>2],o[le>>2]=o[Ge>>2],y=v3(le)|0,w=cU(w)|0,oA(0,U|0,p|0,y|0,w|0,cU(G)|0)|0,B=J}function EAe(){var p=0;return n[7992]|0||(Bu(10744),p=7992,o[p>>2]=1,o[p+4>>2]=0),10744}function cU(p){return p=p|0,qZe(p)|0}function qZe(p){return p=p|0,p&255|0}function Bu(p){p=p|0,Ny(p,QY()|0,3)}function QY(){return 1756}function PVt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;switch(an=B,B=B+32|0,Ge=an+8|0,Xe=an+4|0,bt=an+20|0,It=an,aP(p,0),G=Zbe(y)|0,o[Ge>>2]=0,rr=Ge+4|0,o[rr>>2]=0,o[Ge+8>>2]=0,G<<24>>24){case 0:{n[bt>>0]=0,Lqe(Xe,w,bt),XL(p,Xe)|0,r_(Xe);break}case 8:{rr=YAe(y)|0,n[bt>>0]=8,RB(It,o[rr+4>>2]|0),qh(Xe,w,bt,It,rr+8|0),XL(p,Xe)|0,r_(Xe);break}case 9:{if(U=YAe(y)|0,y=o[U+4>>2]|0,y|0)for(le=Ge+8|0,J=U+12|0;y=y+-1|0,RB(Xe,o[J>>2]|0),G=o[rr>>2]|0,G>>>0<(o[le>>2]|0)>>>0?(o[G>>2]=o[Xe>>2],o[rr>>2]=(o[rr>>2]|0)+4):uN(Ge,Xe),y;)J=J+4|0;n[bt>>0]=9,RB(It,o[U+8>>2]|0),XY(Xe,w,bt,It,Ge),XL(p,Xe)|0,r_(Xe);break}default:rr=YAe(y)|0,n[bt>>0]=G,RB(It,o[rr+4>>2]|0),Nf(Xe,w,bt,It),XL(p,Xe)|0,r_(Xe)}QL(Ge),B=an}function Lqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;G=B,B=B+16|0,J=G,xw(J),y=qf(y)|0,fbe(p,y,n[w>>0]|0),oS(J),B=G}function XL(p,y){p=p|0,y=y|0;var w=0;return w=o[p>>2]|0,w|0&&oo(w|0),o[p>>2]=o[y>>2],o[y>>2]=0,p|0}function qh(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+32|0,Ge=U+16|0,le=U+8|0,Xe=U,xw(le),y=qf(y)|0,w=n[w>>0]|0,o[Xe>>2]=o[G>>2],J=o[J>>2]|0,o[Ge>>2]=o[Xe>>2],Vqe(p,y,w,Ge,J),oS(le),B=U}function XY(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;U=B,B=B+32|0,Xe=U+24|0,le=U+16|0,bt=U+12|0,Ge=U,xw(le),y=qf(y)|0,w=n[w>>0]|0,o[bt>>2]=o[G>>2],M7(Ge,J),o[Xe>>2]=o[bt>>2],$Ze(p,y,w,Xe,Ge),QL(Ge),oS(le),B=U}function Nf(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+32|0,le=J+16|0,U=J+8|0,Ge=J,xw(U),y=qf(y)|0,w=n[w>>0]|0,o[Ge>>2]=o[G>>2],o[le>>2]=o[Ge>>2],SAe(p,y,w,le),oS(U),B=J}function SAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0,le=0,Ge=0;J=B,B=B+16|0,U=J+4|0,Ge=J,le=Sb(wu()|0)|0,w=cU(w)|0,o[Ge>>2]=o[G>>2],o[U>>2]=o[Ge>>2],Fne(p,Ei(0,le|0,y|0,w|0,v3(U)|0)|0),B=J}function wu(){var p=0;return n[8e3]|0||(dbe(10756),p=8e3,o[p>>2]=1,o[p+4>>2]=0),10756}function Fne(p,y){p=p|0,y=y|0,aP(p,y)}function dbe(p){p=p|0,Ny(p,X7()|0,2)}function X7(){return 1772}function $Ze(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0;U=B,B=B+32|0,Xe=U+16|0,bt=U+12|0,le=U,Ge=Sb(WVt()|0)|0,w=cU(w)|0,o[bt>>2]=o[G>>2],o[Xe>>2]=o[bt>>2],G=v3(Xe)|0,o[le>>2]=o[J>>2],Xe=J+4|0,o[le+4>>2]=o[Xe>>2],bt=J+8|0,o[le+8>>2]=o[bt>>2],o[bt>>2]=0,o[Xe>>2]=0,o[J>>2]=0,Fne(p,oA(0,Ge|0,y|0,w|0,G|0,yE(le)|0)|0),QL(le),B=U}function WVt(){var p=0;return n[8008]|0||(OVt(10768),p=8008,o[p>>2]=1,o[p+4>>2]=0),10768}function OVt(p){p=p|0,Ny(p,MVt()|0,3)}function MVt(){return 1784}function Vqe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0;U=B,B=B+16|0,Ge=U+4|0,Xe=U,le=Sb(Pqe()|0)|0,w=cU(w)|0,o[Xe>>2]=o[G>>2],o[Ge>>2]=o[Xe>>2],G=v3(Ge)|0,Fne(p,oA(0,le|0,y|0,w|0,G|0,hAe(J)|0)|0),B=U}function Pqe(){var p=0;return n[8016]|0||(vAe(10780),p=8016,o[p>>2]=1,o[p+4>>2]=0),10780}function vAe(p){p=p|0,Ny(p,pbe()|0,3)}function pbe(){return 1800}function fbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;G=Sb(HVt()|0)|0,Fne(p,Ki(0,G|0,y|0,cU(w)|0)|0)}function HVt(){var p=0;return n[8024]|0||(Zne(10792),p=8024,o[p>>2]=1,o[p+4>>2]=0),10792}function Zne(p){p=p|0,Ny(p,Wqe()|0,1)}function Wqe(){return 1816}function YVt(){QVt(),Lne(),Ibe()}function QVt(){o[2702]=pz(65536)|0}function Lne(){rLe(10856)}function Ibe(){Jqr(10816)}function Jqr(p){p=p|0,LC(p,5044),J7(p)|0}function LC(p,y){p=p|0,y=y|0;var w=0;w=xqe()|0,o[p>>2]=w,DP(w,y),BF(o[p>>2]|0)}function J7(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,eLe()|0),p|0}function eLe(){var p=0;return n[8032]|0||(Mg(10820),pu(64,10820,X|0)|0,p=8032,o[p>>2]=1,o[p+4>>2]=0),Xr(10820)|0||Mg(10820),10820}function Mg(p){p=p|0,tLe(p),G7(p,25)}function i0(p){p=p|0,k_(p+24|0)}function k_(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function tLe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,18,y,Vne()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function sS(p,y){p=p|0,y=y|0,kw(p,y)}function kw(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;w=B,B=B+16|0,G=w,J=w+4|0,eS(J,y),o[G>>2]=rN(J,y)|0,JY(p,G),B=w}function JY(p,y){p=p|0,y=y|0,U7(p+4|0,o[y>>2]|0),n[p+8>>0]=1}function U7(p,y){p=p|0,y=y|0,o[p>>2]=y}function Vne(){return 1824}function NP(p){return p=p|0,Ly(p)|0}function Ly(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0;return w=B,B=B+16|0,J=w+4|0,le=w,G=Fb(8)|0,y=G,Ge=Ku(4)|0,eS(J,p),U7(Ge,rN(J,p)|0),U=y+4|0,o[U>>2]=Ge,p=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],iU(p,U,J),o[G>>2]=p,B=w,y|0}function Fb(p){p=p|0;var y=0,w=0;return p=p+7&-8,p>>>0<=32768&&(y=o[2701]|0,p>>>0<=(65536-y|0)>>>0)?(w=(o[2702]|0)+y|0,o[2701]=y+p,p=w):(p=pz(p+8|0)|0,o[p>>2]=o[2703],o[2703]=p,p=p+8|0),p|0}function DP(p,y){p=p|0,y=y|0,o[p>>2]=BAe()|0,o[p+4>>2]=TF()|0,o[p+12>>2]=y,o[p+8>>2]=Pne()|0,o[p+32>>2]=9}function BAe(){return 11744}function TF(){return 1832}function Pne(){return F7()|0}function Wne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(wAe(w),ti(w)):y|0&&ti(y)}function wAe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function rLe(p){p=p|0,nLe(p,5052),lU(p)|0,iLe(p,5058,26)|0,a_(p,5069,1)|0,TAe(p,5077,10)|0,hbe(p,5087,19)|0,sLe(p,5094,27)|0}function nLe(p,y){p=p|0,y=y|0;var w=0;w=az()|0,o[p>>2]=w,MAe(w,y),BF(o[p>>2]|0)}function lU(p){p=p|0;var y=0;return y=o[p>>2]|0,EF(y,bLe()|0),p|0}function iLe(p,y,w){return p=p|0,y=y|0,w=w|0,Dbe(p,ff(y)|0,w,0),p|0}function a_(p,y,w){return p=p|0,y=y|0,w=w|0,Xne(p,ff(y)|0,w,0),p|0}function TAe(p,y,w){return p=p|0,y=y|0,w=w|0,$Vt(p,ff(y)|0,w,0),p|0}function hbe(p,y,w){return p=p|0,y=y|0,w=w|0,Yqe(p,ff(y)|0,w,0),p|0}function mbe(p,y){p=p|0,y=y|0;var w=0,G=0;e:for(;;){for(w=o[2703]|0;;){if((w|0)==(y|0))break e;if(G=o[w>>2]|0,o[2703]=G,!w)w=G;else break}ti(w)}o[2701]=p}function sLe(p,y,w){return p=p|0,y=y|0,w=w|0,oLe(p,ff(y)|0,w,0),p|0}function oLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=K7()|0,p=RAe(w)|0,bd(U,y,J,p,One(w,G)|0,G)}function K7(){var p=0,y=0;if(n[8040]|0||(NAe(10860),pu(65,10860,X|0)|0,y=8040,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10860)|0)){p=10860,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));NAe(10860)}return 10860}function RAe(p){return p=p|0,p|0}function One(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=K7()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Mne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(Cbe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Mne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function Cbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=_be(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,XVt(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Mne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,Oqe(p,J),JVt(J),B=Ge;return}}function _be(p){return p=p|0,536870911}function XVt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function Oqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function JVt(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function NAe(p){p=p|0,UVt(p)}function aLe(p){p=p|0,Mqe(p+24|0)}function Mqe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function UVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,KVt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function KVt(){return 1840}function jVt(p,y,w){p=p|0,y=y|0,w=w|0,Hqe(o[(cLe(p)|0)>>2]|0,y,w)}function cLe(p){return p=p|0,(o[(K7()|0)+24>>2]|0)+(p<<3)|0}function Hqe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;G=B,B=B+16|0,U=G+1|0,J=G,eS(U,y),y=rN(U,y)|0,eS(J,w),w=rN(J,w)|0,qD[p&31](y,w),B=G}function Yqe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=ybe()|0,p=lLe(w)|0,bd(U,y,J,p,j7(w,G)|0,G)}function ybe(){var p=0,y=0;if(n[8048]|0||(zD(10896),pu(66,10896,X|0)|0,y=8048,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10896)|0)){p=10896,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));zD(10896)}return 10896}function lLe(p){return p=p|0,p|0}function j7(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=ybe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(Hne(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(bbe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function Hne(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function bbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=Ebe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,DAe(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,Hne(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,uLe(p,J),kAe(J),B=Ge;return}}function Ebe(p){return p=p|0,536870911}function DAe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function uLe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kAe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function zD(p){p=p|0,qVt(p)}function Sbe(p){p=p|0,zVt(p+24|0)}function zVt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function qVt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,11,y,xAe()|0,1),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function xAe(){return 1852}function GAe(p,y){return p=p|0,y=y|0,vbe(o[(FAe(p)|0)>>2]|0,y)|0}function FAe(p){return p=p|0,(o[(ybe()|0)+24>>2]|0)+(p<<3)|0}function vbe(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,eS(G,y),y=rN(G,y)|0,y=_J(mC[p&31](y)|0)|0,B=w,y|0}function $Vt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=gLe()|0,p=ePt(w)|0,bd(U,y,J,p,uU(w,G)|0,G)}function gLe(){var p=0,y=0;if(n[8056]|0||(q7(10932),pu(67,10932,X|0)|0,y=8056,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10932)|0)){p=10932,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));q7(10932)}return 10932}function ePt(p){return p=p|0,p|0}function uU(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=gLe()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(ZAe(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(tPt(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function ZAe(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function tPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=LAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,Yne(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,ZAe(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,VAe(p,J),z7(J),B=Ge;return}}function LAe(p){return p=p|0,536870911}function Yne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function VAe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function z7(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function q7(p){p=p|0,w3(p)}function rPt(p){p=p|0,pN(p+24|0)}function pN(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function w3(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,7,y,ALe()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ALe(){return 1860}function dLe(p,y,w){return p=p|0,y=y|0,w=w|0,pLe(o[(nPt(p)|0)>>2]|0,y,w)|0}function nPt(p){return p=p|0,(o[(gLe()|0)+24>>2]|0)+(p<<3)|0}function pLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0;return G=B,B=B+32|0,le=G+12|0,U=G+8|0,Ge=G,Xe=G+16|0,J=G+4|0,iPt(Xe,y),Bbe(Ge,Xe,y),vx(J,w),w=IF(J,w)|0,o[le>>2]=o[Ge>>2],UT[p&15](U,le,w),w=Qqe(U)|0,r_(U),_B(J),B=G,w|0}function iPt(p,y){p=p|0,y=y|0}function Bbe(p,y,w){p=p|0,y=y|0,w=w|0,Qne(p,w)}function Qqe(p){return p=p|0,qf(p)|0}function Qne(p,y){p=p|0,y=y|0;var w=0,G=0,J=0;J=B,B=B+16|0,w=J,G=y,G&1?(fLe(w,0),mI(G|0,w|0)|0,s0(p,w),ILe(w)):o[p>>2]=o[y>>2],B=J}function fLe(p,y){p=p|0,y=y|0,j(p,y),o[p+4>>2]=0,n[p+8>>0]=0}function s0(p,y){p=p|0,y=y|0,o[p>>2]=o[y+4>>2]}function ILe(p){p=p|0,n[p+8>>0]=0}function Xne(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=fN()|0,p=UY(w)|0,bd(U,y,J,p,Xqe(w,G)|0,G)}function fN(){var p=0,y=0;if(n[8064]|0||(QT(10968),pu(68,10968,X|0)|0,y=8064,o[y>>2]=1,o[y+4>>2]=0),!(Xr(10968)|0)){p=10968,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));QT(10968)}return 10968}function UY(p){return p=p|0,p|0}function Xqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=fN()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?($7(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(wB(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function $7(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function wB(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=PAe(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,ez(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,$7(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,tz(p,J),Jqe(J),B=Ge;return}}function PAe(p){return p=p|0,536870911}function ez(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function tz(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function Jqe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function QT(p){p=p|0,Tbe(p)}function rz(p){p=p|0,wbe(p+24|0)}function wbe(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Tbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,1,y,Rbe()|0,5),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function Rbe(){return 1872}function lg(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,Nbe(o[(hLe(p)|0)>>2]|0,y,w,G,J,U)}function hLe(p){return p=p|0,(o[(fN()|0)+24>>2]|0)+(p<<3)|0}function Nbe(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0;le=B,B=B+32|0,Ge=le+16|0,Xe=le+12|0,bt=le+8|0,It=le+4|0,rr=le,vx(Ge,y),y=IF(Ge,y)|0,vx(Xe,w),w=IF(Xe,w)|0,vx(bt,G),G=IF(bt,G)|0,vx(It,J),J=IF(It,J)|0,vx(rr,U),U=IF(rr,U)|0,a$e[p&1](y,w,G,J,U),_B(rr),_B(It),_B(bt),_B(Xe),_B(Ge),B=le}function Dbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;U=o[p>>2]|0,J=T3()|0,p=mLe(w)|0,bd(U,y,J,p,Uqe(w,G)|0,G)}function T3(){var p=0,y=0;if(n[8072]|0||(Jne(11004),pu(69,11004,X|0)|0,y=8072,o[y>>2]=1,o[y+4>>2]=0),!(Xr(11004)|0)){p=11004,y=p+36|0;do o[p>>2]=0,p=p+4|0;while((p|0)<(y|0));Jne(11004)}return 11004}function mLe(p){return p=p|0,p|0}function Uqe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;return Ge=B,B=B+16|0,J=Ge,U=Ge+4|0,o[J>>2]=p,Xe=T3()|0,le=Xe+24|0,y=Uu(y,4)|0,o[U>>2]=y,w=Xe+28|0,G=o[w>>2]|0,G>>>0<(o[Xe+32>>2]|0)>>>0?(gU(G,p,y),y=(o[w>>2]|0)+8|0,o[w>>2]=y):(WAe(le,J,U),y=o[w>>2]|0),B=Ge,(y-(o[le>>2]|0)>>3)+-1|0}function gU(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,o[p+4>>2]=w}function WAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0;if(Ge=B,B=B+32|0,J=Ge,U=p+4|0,le=((o[U>>2]|0)-(o[p>>2]|0)>>3)+1|0,G=nz(p)|0,G>>>0>>0)me(p);else{Xe=o[p>>2]|0,It=(o[p+8>>2]|0)-Xe|0,bt=It>>2,kP(J,It>>3>>>0>>1>>>0?bt>>>0>>0?le:bt:G,(o[U>>2]|0)-Xe>>3,p+8|0),le=J+8|0,gU(o[le>>2]|0,o[y>>2]|0,o[w>>2]|0),o[le>>2]=(o[le>>2]|0)+8,CLe(p,J),kbe(J),B=Ge;return}}function nz(p){return p=p|0,536870911}function kP(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0;o[p+12>>2]=0,o[p+16>>2]=G;do if(y)if(y>>>0>536870911)Ko();else{J=Ku(y<<3)|0;break}else J=0;while(!1);o[p>>2]=J,G=J+(w<<3)|0,o[p+8>>2]=G,o[p+4>>2]=G,o[p+12>>2]=J+(y<<3)}function CLe(p,y){p=p|0,y=y|0;var w=0,G=0,J=0,U=0,le=0;G=o[p>>2]|0,le=p+4|0,U=y+4|0,J=(o[le>>2]|0)-G|0,w=(o[U>>2]|0)+(0-(J>>3)<<3)|0,o[U>>2]=w,(J|0)>0?(Md(w|0,G|0,J|0)|0,G=U,w=o[U>>2]|0):G=U,U=o[p>>2]|0,o[p>>2]=w,o[G>>2]=U,U=y+8|0,J=o[le>>2]|0,o[le>>2]=o[U>>2],o[U>>2]=J,U=p+8|0,le=y+12|0,p=o[U>>2]|0,o[U>>2]=o[le>>2],o[le>>2]=p,o[y>>2]=o[G>>2]}function kbe(p){p=p|0;var y=0,w=0,G=0;y=o[p+4>>2]|0,w=p+8|0,G=o[w>>2]|0,(G|0)!=(y|0)&&(o[w>>2]=G+(~((G+-8-y|0)>>>3)<<3)),p=o[p>>2]|0,p|0&&ti(p)}function Jne(p){p=p|0,oPt(p)}function JL(p){p=p|0,sPt(p+24|0)}function sPt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function oPt(p){p=p|0;var y=0;y=Hs()|0,ho(p,1,12,y,aPt()|0,2),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function aPt(){return 1896}function _Le(p,y,w){p=p|0,y=y|0,w=w|0,iz(o[(yLe(p)|0)>>2]|0,y,w)}function yLe(p){return p=p|0,(o[(T3()|0)+24>>2]|0)+(p<<3)|0}function iz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;G=B,B=B+16|0,U=G+4|0,J=G,AU(U,y),y=TB(U,y)|0,vx(J,w),w=IF(J,w)|0,qD[p&31](y,w),_B(J),B=G}function AU(p,y){p=p|0,y=y|0}function TB(p,y){return p=p|0,y=y|0,xbe(y)|0}function xbe(p){return p=p|0,p|0}function bLe(){var p=0;return n[8080]|0||(XA(11040),pu(70,11040,X|0)|0,p=8080,o[p>>2]=1,o[p+4>>2]=0),Xr(11040)|0||XA(11040),11040}function XA(p){p=p|0,Gbe(p),G7(p,71)}function UL(p){p=p|0,cPt(p+24|0)}function cPt(p){p=p|0;var y=0,w=0,G=0;w=o[p>>2]|0,G=w,w|0&&(p=p+4|0,y=o[p>>2]|0,(y|0)!=(w|0)&&(o[p>>2]=y+(~((y+-8-G|0)>>>3)<<3)),ti(w))}function Gbe(p){p=p|0;var y=0;y=Hs()|0,ho(p,5,7,y,OAe()|0,0),o[p+24>>2]=0,o[p+28>>2]=0,o[p+32>>2]=0}function ELe(p){p=p|0,sz(p)}function sz(p){p=p|0,SLe(p)}function SLe(p){p=p|0,n[p+8>>0]=1}function OAe(){return 1936}function oz(){return vLe()|0}function vLe(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0;return y=B,B=B+16|0,J=y+4|0,le=y,w=Fb(8)|0,p=w,U=p+4|0,o[U>>2]=Ku(1)|0,G=Ku(8)|0,U=o[U>>2]|0,o[le>>2]=0,o[J>>2]=o[le>>2],RF(G,U,J),o[w>>2]=G,B=y,p|0}function RF(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]=y,w=Ku(16)|0,o[w+4>>2]=0,o[w+8>>2]=0,o[w>>2]=1916,o[w+12>>2]=y,o[p+4>>2]=w}function xP(p){p=p|0,dz(p),ti(p)}function IN(p){p=p|0,p=o[p+12>>2]|0,p|0&&ti(p)}function Une(p){p=p|0,ti(p)}function az(){var p=0;return n[8088]|0||(HAe(11076),pu(25,11076,X|0)|0,p=8088,o[p>>2]=1,o[p+4>>2]=0),11076}function MAe(p,y){p=p|0,y=y|0,o[p>>2]=KY()|0,o[p+4>>2]=Kne()|0,o[p+12>>2]=y,o[p+8>>2]=jne()|0,o[p+32>>2]=10}function KY(){return 11745}function Kne(){return 1940}function jne(){return nI()|0}function Fbe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,(_P(G,896)|0)==512?w|0&&(BLe(w),ti(w)):y|0&&ti(y)}function BLe(p){p=p|0,p=o[p+4>>2]|0,p|0&&IU(p)}function HAe(p){p=p|0,Hc(p)}function RB(p,y){p=p|0,y=y|0,o[p>>2]=y}function YAe(p){return p=p|0,o[p>>2]|0}function Zbe(p){return p=p|0,n[o[p>>2]>>0]|0}function Lbe(p,y){p=p|0,y=y|0;var w=0,G=0;w=B,B=B+16|0,G=w,o[G>>2]=o[p>>2],QAe(y,G)|0,B=w}function QAe(p,y){p=p|0,y=y|0;var w=0;return w=cz(o[p>>2]|0,y)|0,y=p+4|0,o[(o[y>>2]|0)+8>>2]=w,o[(o[y>>2]|0)+8>>2]|0}function cz(p,y){p=p|0,y=y|0;var w=0,G=0;return w=B,B=B+16|0,G=w,xw(G),p=qf(p)|0,y=wLe(p,o[y>>2]|0)|0,oS(G),B=w,y|0}function xw(p){p=p|0,o[p>>2]=o[2701],o[p+4>>2]=o[2703]}function wLe(p,y){p=p|0,y=y|0;var w=0;return w=Sb(lz()|0)|0,Ki(0,w|0,p|0,hAe(y)|0)|0}function oS(p){p=p|0,mbe(o[p>>2]|0,o[p+4>>2]|0)}function lz(){var p=0;return n[8096]|0||(Vbe(11120),p=8096,o[p>>2]=1,o[p+4>>2]=0),11120}function Vbe(p){p=p|0,Ny(p,g2()|0,1)}function g2(){return 1948}function A2(){jY()}function jY(){var p=0,y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;if(zi=B,B=B+16|0,It=zi+4|0,rr=zi,Ul(65536,10804,o[2702]|0,10812),w=nbe()|0,y=o[w>>2]|0,p=o[y>>2]|0,p|0)for(G=o[w+8>>2]|0,w=o[w+4>>2]|0;Do(p|0,l[w>>0]|0|0,n[G>>0]|0),y=y+4|0,p=o[y>>2]|0,p;)G=G+1|0,w=w+1|0;if(p=ibe()|0,y=o[p>>2]|0,y|0)do Wt(y|0,o[p+4>>2]|0),p=p+8|0,y=o[p>>2]|0;while(y|0);Wt(TLe()|0,5167),bt=TP()|0,p=o[bt>>2]|0;e:do if(p|0){do lPt(o[p+4>>2]|0),p=o[p>>2]|0;while(p|0);if(p=o[bt>>2]|0,p|0){Xe=bt;do{for(;J=p,p=o[p>>2]|0,J=o[J+4>>2]|0,!!(R3(J)|0);)if(o[rr>>2]=Xe,o[It>>2]=o[rr>>2],XAe(bt,It)|0,!p)break e;if(RLe(J),Xe=o[Xe>>2]|0,y=$h(J)|0,U=OA()|0,le=B,B=B+((1*(y<<2)|0)+15&-16)|0,Ge=B,B=B+((1*(y<<2)|0)+15&-16)|0,y=o[(bAe(J)|0)>>2]|0,y|0)for(w=le,G=Ge;o[w>>2]=o[(Zy(o[y+4>>2]|0)|0)>>2],o[G>>2]=o[y+8>>2],y=o[y>>2]|0,y;)w=w+4|0,G=G+4|0;Un=Zy(J)|0,y=NLe(J)|0,w=$h(J)|0,G=Pbe(J)|0,Ju(Un|0,y|0,le|0,Ge|0,w|0,G|0,O7(J)|0),Da(U|0)}while(p|0)}}while(!1);if(p=o[(RP()|0)>>2]|0,p|0)do Un=p+4|0,bt=nU(Un)|0,J=Gy(bt)|0,U=f1(bt)|0,le=(fAe(bt)|0)+1|0,Ge=zY(bt)|0,Xe=JAe(Un)|0,bt=Xr(bt)|0,It=KD(Un)|0,rr=uz(Un)|0,Ru(0,J|0,U|0,le|0,Ge|0,Xe|0,bt|0,It|0,rr|0,UAe(Un)|0),p=o[p>>2]|0;while(p|0);p=o[(TP()|0)>>2]|0;e:do if(p|0){t:for(;;){if(y=o[p+4>>2]|0,y|0&&(an=o[(Zy(y)|0)>>2]|0,Ks=o[(Gne(y)|0)>>2]|0,Ks|0)){w=Ks;do{y=w+4|0,G=nU(y)|0;r:do if(G|0)switch(Xr(G)|0){case 0:break t;case 4:case 3:case 2:{Ge=Gy(G)|0,Xe=f1(G)|0,bt=(fAe(G)|0)+1|0,It=zY(G)|0,rr=Xr(G)|0,Un=KD(y)|0,Ru(an|0,Ge|0,Xe|0,bt|0,It|0,0,rr|0,Un|0,uz(y)|0,UAe(y)|0);break r}case 1:{le=Gy(G)|0,Ge=f1(G)|0,Xe=(fAe(G)|0)+1|0,bt=zY(G)|0,It=JAe(y)|0,rr=Xr(G)|0,Un=KD(y)|0,Ru(an|0,le|0,Ge|0,Xe|0,bt|0,It|0,rr|0,Un|0,uz(y)|0,UAe(y)|0);break r}case 5:{bt=Gy(G)|0,It=f1(G)|0,rr=(fAe(G)|0)+1|0,Un=zY(G)|0,Ru(an|0,bt|0,It|0,rr|0,Un|0,KAe(G)|0,Xr(G)|0,0,0,0);break r}default:break r}while(!1);w=o[w>>2]|0}while(w|0)}if(p=o[p>>2]|0,!p)break e}Ko()}while(!1);Yn(),B=zi}function TLe(){return 11703}function lPt(p){p=p|0,n[p+40>>0]=0}function R3(p){return p=p|0,(n[p+40>>0]|0)!=0|0}function XAe(p,y){return p=p|0,y=y|0,y=Wbe(y)|0,p=o[y>>2]|0,o[y>>2]=o[p>>2],ti(p),o[y>>2]|0}function RLe(p){p=p|0,n[p+40>>0]=1}function $h(p){return p=p|0,o[p+20>>2]|0}function NLe(p){return p=p|0,o[p+8>>2]|0}function Pbe(p){return p=p|0,o[p+32>>2]|0}function zY(p){return p=p|0,o[p+4>>2]|0}function JAe(p){return p=p|0,o[p+4>>2]|0}function uz(p){return p=p|0,o[p+8>>2]|0}function UAe(p){return p=p|0,o[p+16>>2]|0}function KAe(p){return p=p|0,o[p+20>>2]|0}function Wbe(p){return p=p|0,o[p>>2]|0}function zne(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0;hl=B,B=B+16|0,an=hl;do if(p>>>0<245){if(bt=p>>>0<11?16:p+11&-8,p=bt>>>3,rr=o[2783]|0,w=rr>>>p,w&3|0)return y=(w&1^1)+p|0,p=11172+(y<<1<<2)|0,w=p+8|0,G=o[w>>2]|0,J=G+8|0,U=o[J>>2]|0,(p|0)==(U|0)?o[2783]=rr&~(1<>2]=p,o[w>>2]=U),pi=y<<3,o[G+4>>2]=pi|3,pi=G+pi+4|0,o[pi>>2]=o[pi>>2]|1,pi=J,B=hl,pi|0;if(It=o[2785]|0,bt>>>0>It>>>0){if(w|0)return y=2<>>12&16,y=y>>>le,w=y>>>5&8,y=y>>>w,J=y>>>2&4,y=y>>>J,p=y>>>1&2,y=y>>>p,G=y>>>1&1,G=(w|le|J|p|G)+(y>>>G)|0,y=11172+(G<<1<<2)|0,p=y+8|0,J=o[p>>2]|0,le=J+8|0,w=o[le>>2]|0,(y|0)==(w|0)?(p=rr&~(1<>2]=y,o[p>>2]=w,p=rr),U=(G<<3)-bt|0,o[J+4>>2]=bt|3,G=J+bt|0,o[G+4>>2]=U|1,o[G+U>>2]=U,It|0&&(J=o[2788]|0,y=It>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=J,o[y+12>>2]=J,o[J+8>>2]=y,o[J+12>>2]=w),o[2785]=U,o[2788]=G,pi=le,B=hl,pi|0;if(Ge=o[2784]|0,Ge){if(w=(Ge&0-Ge)+-1|0,le=w>>>12&16,w=w>>>le,U=w>>>5&8,w=w>>>U,Xe=w>>>2&4,w=w>>>Xe,G=w>>>1&2,w=w>>>G,p=w>>>1&1,p=o[11436+((U|le|Xe|G|p)+(w>>>p)<<2)>>2]|0,w=(o[p+4>>2]&-8)-bt|0,G=o[p+16+(((o[p+16>>2]|0)==0&1)<<2)>>2]|0,!G)Xe=p,U=w;else{do le=(o[G+4>>2]&-8)-bt|0,Xe=le>>>0>>0,w=Xe?le:w,p=Xe?G:p,G=o[G+16+(((o[G+16>>2]|0)==0&1)<<2)>>2]|0;while(G|0);Xe=p,U=w}if(le=Xe+bt|0,Xe>>>0>>0){J=o[Xe+24>>2]|0,y=o[Xe+12>>2]|0;do if((y|0)==(Xe|0)){if(p=Xe+20|0,y=o[p>>2]|0,!y&&(p=Xe+16|0,y=o[p>>2]|0,!y)){w=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0,w=y}else w=o[Xe+8>>2]|0,o[w+12>>2]=y,o[y+8>>2]=w,w=y;while(!1);do if(J|0){if(y=o[Xe+28>>2]|0,p=11436+(y<<2)|0,(Xe|0)==(o[p>>2]|0)){if(o[p>>2]=w,!w){o[2784]=Ge&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=J,y=o[Xe+16>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),y=o[Xe+20>>2]|0,y|0&&(o[w+20>>2]=y,o[y+24>>2]=w)}while(!1);return U>>>0<16?(pi=U+bt|0,o[Xe+4>>2]=pi|3,pi=Xe+pi+4|0,o[pi>>2]=o[pi>>2]|1):(o[Xe+4>>2]=bt|3,o[le+4>>2]=U|1,o[le+U>>2]=U,It|0&&(G=o[2788]|0,y=It>>>3,w=11172+(y<<1<<2)|0,y=1<>2]|0):(o[2783]=rr|y,y=w,p=w+8|0),o[p>>2]=G,o[y+12>>2]=G,o[G+8>>2]=y,o[G+12>>2]=w),o[2785]=U,o[2788]=le),pi=Xe+8|0,B=hl,pi|0}else rr=bt}else rr=bt}else rr=bt}else if(p>>>0<=4294967231)if(p=p+11|0,bt=p&-8,Xe=o[2784]|0,Xe){G=0-bt|0,p=p>>>8,p?bt>>>0>16777215?Ge=31:(rr=(p+1048320|0)>>>16&8,ss=p<>>16&4,ss=ss<>>16&2,Ge=14-(It|rr|Ge)+(ss<>>15)|0,Ge=bt>>>(Ge+7|0)&1|Ge<<1):Ge=0,w=o[11436+(Ge<<2)>>2]|0;e:do if(!w)w=0,p=0,ss=57;else for(p=0,le=bt<<((Ge|0)==31?0:25-(Ge>>>1)|0),U=0;;){if(J=(o[w+4>>2]&-8)-bt|0,J>>>0>>0)if(J)p=w,G=J;else{p=w,G=0,J=w,ss=61;break e}if(J=o[w+20>>2]|0,w=o[w+16+(le>>>31<<2)>>2]|0,U=(J|0)==0|(J|0)==(w|0)?U:J,J=(w|0)==0,J){w=U,ss=57;break}else le=le<<((J^1)&1)}while(!1);if((ss|0)==57){if((w|0)==0&(p|0)==0){if(p=2<>>12&16,rr=rr>>>le,U=rr>>>5&8,rr=rr>>>U,Ge=rr>>>2&4,rr=rr>>>Ge,It=rr>>>1&2,rr=rr>>>It,w=rr>>>1&1,p=0,w=o[11436+((U|le|Ge|It|w)+(rr>>>w)<<2)>>2]|0}w?(J=w,ss=61):(Ge=p,le=G)}if((ss|0)==61)for(;;)if(ss=0,w=(o[J+4>>2]&-8)-bt|0,rr=w>>>0>>0,w=rr?w:G,p=rr?J:p,J=o[J+16+(((o[J+16>>2]|0)==0&1)<<2)>>2]|0,J)G=w,ss=61;else{Ge=p,le=w;break}if(Ge|0&&le>>>0<((o[2785]|0)-bt|0)>>>0){if(U=Ge+bt|0,Ge>>>0>=U>>>0)return pi=0,B=hl,pi|0;J=o[Ge+24>>2]|0,y=o[Ge+12>>2]|0;do if((y|0)==(Ge|0)){if(p=Ge+20|0,y=o[p>>2]|0,!y&&(p=Ge+16|0,y=o[p>>2]|0,!y)){y=0;break}for(;;){if(w=y+20|0,G=o[w>>2]|0,G|0){y=G,p=w;continue}if(w=y+16|0,G=o[w>>2]|0,G)y=G,p=w;else break}o[p>>2]=0}else pi=o[Ge+8>>2]|0,o[pi+12>>2]=y,o[y+8>>2]=pi;while(!1);do if(J){if(p=o[Ge+28>>2]|0,w=11436+(p<<2)|0,(Ge|0)==(o[w>>2]|0)){if(o[w>>2]=y,!y){G=Xe&~(1<>2]|0)!=(Ge|0)&1)<<2)>>2]=y,!y){G=Xe;break}o[y+24>>2]=J,p=o[Ge+16>>2]|0,p|0&&(o[y+16>>2]=p,o[p+24>>2]=y),p=o[Ge+20>>2]|0,p&&(o[y+20>>2]=p,o[p+24>>2]=y),G=Xe}else G=Xe;while(!1);do if(le>>>0>=16){if(o[Ge+4>>2]=bt|3,o[U+4>>2]=le|1,o[U+le>>2]=le,y=le>>>3,le>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=U,o[y+12>>2]=U,o[U+8>>2]=y,o[U+12>>2]=w;break}if(y=le>>>8,y?le>>>0>16777215?y=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=le>>>(y+7|0)&1|y<<1):y=0,w=11436+(y<<2)|0,o[U+28>>2]=y,p=U+16|0,o[p+4>>2]=0,o[p>>2]=0,p=1<>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}for(p=le<<((y|0)==31?0:25-(y>>>1)|0),w=o[w>>2]|0;;){if((o[w+4>>2]&-8|0)==(le|0)){ss=97;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=96;break}}if((ss|0)==96){o[G>>2]=U,o[U+24>>2]=w,o[U+12>>2]=U,o[U+8>>2]=U;break}else if((ss|0)==97){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=U,o[ss>>2]=U,o[U+8>>2]=pi,o[U+12>>2]=w,o[U+24>>2]=0;break}}else pi=le+bt|0,o[Ge+4>>2]=pi|3,pi=Ge+pi+4|0,o[pi>>2]=o[pi>>2]|1;while(!1);return pi=Ge+8|0,B=hl,pi|0}else rr=bt}else rr=bt;else rr=-1;while(!1);if(w=o[2785]|0,w>>>0>=rr>>>0)return y=w-rr|0,p=o[2788]|0,y>>>0>15?(pi=p+rr|0,o[2788]=pi,o[2785]=y,o[pi+4>>2]=y|1,o[pi+y>>2]=y,o[p+4>>2]=rr|3):(o[2785]=0,o[2788]=0,o[p+4>>2]=w|3,pi=p+w+4|0,o[pi>>2]=o[pi>>2]|1),pi=p+8|0,B=hl,pi|0;if(le=o[2786]|0,le>>>0>rr>>>0)return So=le-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=hl,pi|0;if(o[2901]|0?p=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,p=an&-16^1431655768,o[an>>2]=p,o[2901]=p,p=4096),Ge=rr+48|0,Xe=rr+47|0,U=p+Xe|0,J=0-p|0,bt=U&J,bt>>>0<=rr>>>0||(p=o[2893]|0,p|0&&(It=o[2891]|0,an=It+bt|0,an>>>0<=It>>>0|an>>>0>p>>>0)))return pi=0,B=hl,pi|0;e:do if(o[2894]&4)y=0,ss=133;else{w=o[2789]|0;t:do if(w){for(G=11580;p=o[G>>2]|0,!(p>>>0<=w>>>0&&(Un=G+4|0,(p+(o[Un>>2]|0)|0)>>>0>w>>>0));)if(p=o[G+8>>2]|0,p)G=p;else{ss=118;break t}if(y=U-le&J,y>>>0<2147483647)if(p=kB(y|0)|0,(p|0)==((o[G>>2]|0)+(o[Un>>2]|0)|0)){if((p|0)!=-1){le=y,U=p,ss=135;break e}}else G=p,ss=126;else y=0}else ss=118;while(!1);do if((ss|0)==118)if(w=kB(0)|0,(w|0)!=-1&&(y=w,Ks=o[2902]|0,zi=Ks+-1|0,y=(zi&y|0?(zi+y&0-Ks)-y|0:0)+bt|0,Ks=o[2891]|0,zi=y+Ks|0,y>>>0>rr>>>0&y>>>0<2147483647)){if(Un=o[2893]|0,Un|0&&zi>>>0<=Ks>>>0|zi>>>0>Un>>>0){y=0;break}if(p=kB(y|0)|0,(p|0)==(w|0)){le=y,U=w,ss=135;break e}else G=p,ss=126}else y=0;while(!1);do if((ss|0)==126){if(w=0-y|0,!(Ge>>>0>y>>>0&(y>>>0<2147483647&(G|0)!=-1)))if((G|0)==-1){y=0;break}else{le=y,U=G,ss=135;break e}if(p=o[2903]|0,p=Xe-y+p&0-p,p>>>0>=2147483647){le=y,U=G,ss=135;break e}if((kB(p|0)|0)==-1){kB(w|0)|0,y=0;break}else{le=p+y|0,U=G,ss=135;break e}}while(!1);o[2894]=o[2894]|4,ss=133}while(!1);if((ss|0)==133&&bt>>>0<2147483647&&(So=kB(bt|0)|0,Un=kB(0)|0,Ds=Un-So|0,Si=Ds>>>0>(rr+40|0)>>>0,!((So|0)==-1|Si^1|So>>>0>>0&((So|0)!=-1&(Un|0)!=-1)^1))&&(le=Si?Ds:y,U=So,ss=135),(ss|0)==135){y=(o[2891]|0)+le|0,o[2891]=y,y>>>0>(o[2892]|0)>>>0&&(o[2892]=y),Xe=o[2789]|0;do if(Xe){for(y=11580;;){if(p=o[y>>2]|0,w=y+4|0,G=o[w>>2]|0,(U|0)==(p+G|0)){ss=145;break}if(J=o[y+8>>2]|0,J)y=J;else break}if((ss|0)==145&&!(o[y+12>>2]&8|0)&&Xe>>>0>>0&Xe>>>0>=p>>>0){o[w>>2]=G+le,pi=Xe+8|0,pi=pi&7|0?0-pi&7:0,ss=Xe+pi|0,pi=(o[2786]|0)+(le-pi)|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905];break}for(U>>>0<(o[2787]|0)>>>0&&(o[2787]=U),w=U+le|0,y=11580;;){if((o[y>>2]|0)==(w|0)){ss=153;break}if(p=o[y+8>>2]|0,p)y=p;else break}if((ss|0)==153&&!(o[y+12>>2]&8|0)){o[y>>2]=U,It=y+4|0,o[It>>2]=(o[It>>2]|0)+le,It=U+8|0,It=U+(It&7|0?0-It&7:0)|0,y=w+8|0,y=w+(y&7|0?0-y&7:0)|0,bt=It+rr|0,Ge=y-It-rr|0,o[It+4>>2]=rr|3;do if((y|0)!=(Xe|0)){if((y|0)==(o[2788]|0)){pi=(o[2785]|0)+Ge|0,o[2785]=pi,o[2788]=bt,o[bt+4>>2]=pi|1,o[bt+pi>>2]=pi;break}if(p=o[y+4>>2]|0,(p&3|0)==1){le=p&-8,G=p>>>3;e:do if(p>>>0<256)if(p=o[y+8>>2]|0,w=o[y+12>>2]|0,(w|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=w,o[w+8>>2]=p;break}else{U=o[y+24>>2]|0,p=o[y+12>>2]|0;do if((p|0)==(y|0)){if(G=y+16|0,w=G+4|0,p=o[w>>2]|0,!p)if(p=o[G>>2]|0,p)w=G;else{p=0;break}for(;;){if(G=p+20|0,J=o[G>>2]|0,J|0){p=J,w=G;continue}if(G=p+16|0,J=o[G>>2]|0,J)p=J,w=G;else break}o[w>>2]=0}else pi=o[y+8>>2]|0,o[pi+12>>2]=p,o[p+8>>2]=pi;while(!1);if(!U)break;w=o[y+28>>2]|0,G=11436+(w<<2)|0;do if((y|0)!=(o[G>>2]|0)){if(o[U+16+(((o[U+16>>2]|0)!=(y|0)&1)<<2)>>2]=p,!p)break e}else{if(o[G>>2]=p,p|0)break;o[2784]=o[2784]&~(1<>2]=U,w=y+16|0,G=o[w>>2]|0,G|0&&(o[p+16>>2]=G,o[G+24>>2]=p),w=o[w+4>>2]|0,!w)break;o[p+20>>2]=w,o[w+24>>2]=p}while(!1);y=y+le|0,J=le+Ge|0}else J=Ge;if(y=y+4|0,o[y>>2]=o[y>>2]&-2,o[bt+4>>2]=J|1,o[bt+J>>2]=J,y=J>>>3,J>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=bt,o[y+12>>2]=bt,o[bt+8>>2]=y,o[bt+12>>2]=w;break}y=J>>>8;do if(!y)y=0;else{if(J>>>0>16777215){y=31;break}ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,y=14-(So|ss|y)+(pi<>>15)|0,y=J>>>(y+7|0)&1|y<<1}while(!1);if(G=11436+(y<<2)|0,o[bt+28>>2]=y,p=bt+16|0,o[p+4>>2]=0,o[p>>2]=0,p=o[2784]|0,w=1<>2]=bt,o[bt+24>>2]=G,o[bt+12>>2]=bt,o[bt+8>>2]=bt;break}for(p=J<<((y|0)==31?0:25-(y>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(J|0)){ss=194;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=193;break}}if((ss|0)==193){o[G>>2]=bt,o[bt+24>>2]=w,o[bt+12>>2]=bt,o[bt+8>>2]=bt;break}else if((ss|0)==194){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=bt,o[ss>>2]=bt,o[bt+8>>2]=pi,o[bt+12>>2]=w,o[bt+24>>2]=0;break}}else pi=(o[2786]|0)+Ge|0,o[2786]=pi,o[2789]=bt,o[bt+4>>2]=pi|1;while(!1);return pi=It+8|0,B=hl,pi|0}for(y=11580;p=o[y>>2]|0,!(p>>>0<=Xe>>>0&&(pi=p+(o[y+4>>2]|0)|0,pi>>>0>Xe>>>0));)y=o[y+8>>2]|0;J=pi+-47|0,p=J+8|0,p=J+(p&7|0?0-p&7:0)|0,J=Xe+16|0,p=p>>>0>>0?Xe:p,y=p+8|0,w=U+8|0,w=w&7|0?0-w&7:0,ss=U+w|0,w=le+-40-w|0,o[2789]=ss,o[2786]=w,o[ss+4>>2]=w|1,o[ss+w+4>>2]=40,o[2790]=o[2905],w=p+4|0,o[w>>2]=27,o[y>>2]=o[2895],o[y+4>>2]=o[2896],o[y+8>>2]=o[2897],o[y+12>>2]=o[2898],o[2895]=U,o[2896]=le,o[2898]=0,o[2897]=y,y=p+24|0;do ss=y,y=y+4|0,o[y>>2]=7;while((ss+8|0)>>>0>>0);if((p|0)!=(Xe|0)){if(U=p-Xe|0,o[w>>2]=o[w>>2]&-2,o[Xe+4>>2]=U|1,o[p>>2]=U,y=U>>>3,U>>>0<256){w=11172+(y<<1<<2)|0,p=o[2783]|0,y=1<>2]|0):(o[2783]=p|y,y=w,p=w+8|0),o[p>>2]=Xe,o[y+12>>2]=Xe,o[Xe+8>>2]=y,o[Xe+12>>2]=w;break}if(y=U>>>8,y?U>>>0>16777215?w=31:(ss=(y+1048320|0)>>>16&8,pi=y<>>16&4,pi=pi<>>16&2,w=14-(So|ss|w)+(pi<>>15)|0,w=U>>>(w+7|0)&1|w<<1):w=0,G=11436+(w<<2)|0,o[Xe+28>>2]=w,o[Xe+20>>2]=0,o[J>>2]=0,y=o[2784]|0,p=1<>2]=Xe,o[Xe+24>>2]=G,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}for(p=U<<((w|0)==31?0:25-(w>>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(U|0)){ss=216;break}if(G=w+16+(p>>>31<<2)|0,y=o[G>>2]|0,y)p=p<<1,w=y;else{ss=215;break}}if((ss|0)==215){o[G>>2]=Xe,o[Xe+24>>2]=w,o[Xe+12>>2]=Xe,o[Xe+8>>2]=Xe;break}else if((ss|0)==216){ss=w+8|0,pi=o[ss>>2]|0,o[pi+12>>2]=Xe,o[ss>>2]=Xe,o[Xe+8>>2]=pi,o[Xe+12>>2]=w,o[Xe+24>>2]=0;break}}}else{pi=o[2787]|0,(pi|0)==0|U>>>0>>0&&(o[2787]=U),o[2895]=U,o[2896]=le,o[2898]=0,o[2792]=o[2901],o[2791]=-1,y=0;do pi=11172+(y<<1<<2)|0,o[pi+12>>2]=pi,o[pi+8>>2]=pi,y=y+1|0;while((y|0)!=32);pi=U+8|0,pi=pi&7|0?0-pi&7:0,ss=U+pi|0,pi=le+-40-pi|0,o[2789]=ss,o[2786]=pi,o[ss+4>>2]=pi|1,o[ss+pi+4>>2]=40,o[2790]=o[2905]}while(!1);if(y=o[2786]|0,y>>>0>rr>>>0)return So=y-rr|0,o[2786]=So,pi=o[2789]|0,ss=pi+rr|0,o[2789]=ss,o[ss+4>>2]=So|1,o[pi+4>>2]=rr|3,pi=pi+8|0,B=hl,pi|0}return o[(qY()|0)>>2]=12,pi=0,B=hl,pi|0}function qne(p){p=p|0;var y=0,w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0;if(p){w=p+-8|0,J=o[2787]|0,p=o[p+-4>>2]|0,y=p&-8,Xe=w+y|0;do if(p&1)Ge=w,le=w;else{if(G=o[w>>2]|0,!(p&3)||(le=w+(0-G)|0,U=G+y|0,le>>>0>>0))return;if((le|0)==(o[2788]|0)){if(p=Xe+4|0,y=o[p>>2]|0,(y&3|0)!=3){Ge=le,y=U;break}o[2785]=U,o[p>>2]=y&-2,o[le+4>>2]=U|1,o[le+U>>2]=U;return}if(w=G>>>3,G>>>0<256)if(p=o[le+8>>2]|0,y=o[le+12>>2]|0,(y|0)==(p|0)){o[2783]=o[2783]&~(1<>2]=y,o[y+8>>2]=p,Ge=le,y=U;break}J=o[le+24>>2]|0,p=o[le+12>>2]|0;do if((p|0)==(le|0)){if(w=le+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{p=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0}else Ge=o[le+8>>2]|0,o[Ge+12>>2]=p,o[p+8>>2]=Ge;while(!1);if(J){if(y=o[le+28>>2]|0,w=11436+(y<<2)|0,(le|0)==(o[w>>2]|0)){if(o[w>>2]=p,!p){o[2784]=o[2784]&~(1<>2]|0)!=(le|0)&1)<<2)>>2]=p,!p){Ge=le,y=U;break}o[p+24>>2]=J,y=le+16|0,w=o[y>>2]|0,w|0&&(o[p+16>>2]=w,o[w+24>>2]=p),y=o[y+4>>2]|0,y?(o[p+20>>2]=y,o[y+24>>2]=p,Ge=le,y=U):(Ge=le,y=U)}else Ge=le,y=U}while(!1);if(!(le>>>0>=Xe>>>0)&&(p=Xe+4|0,G=o[p>>2]|0,!!(G&1))){if(G&2)o[p>>2]=G&-2,o[Ge+4>>2]=y|1,o[le+y>>2]=y,J=y;else{if(p=o[2788]|0,(Xe|0)==(o[2789]|0)){if(Xe=(o[2786]|0)+y|0,o[2786]=Xe,o[2789]=Ge,o[Ge+4>>2]=Xe|1,(Ge|0)!=(p|0))return;o[2788]=0,o[2785]=0;return}if((Xe|0)==(p|0)){Xe=(o[2785]|0)+y|0,o[2785]=Xe,o[2788]=le,o[Ge+4>>2]=Xe|1,o[le+Xe>>2]=Xe;return}J=(G&-8)+y|0,w=G>>>3;do if(G>>>0<256)if(y=o[Xe+8>>2]|0,p=o[Xe+12>>2]|0,(p|0)==(y|0)){o[2783]=o[2783]&~(1<>2]=p,o[p+8>>2]=y;break}else{U=o[Xe+24>>2]|0,p=o[Xe+12>>2]|0;do if((p|0)==(Xe|0)){if(w=Xe+16|0,y=w+4|0,p=o[y>>2]|0,!p)if(p=o[w>>2]|0,p)y=w;else{w=0;break}for(;;){if(w=p+20|0,G=o[w>>2]|0,G|0){p=G,y=w;continue}if(w=p+16|0,G=o[w>>2]|0,G)p=G,y=w;else break}o[y>>2]=0,w=p}else w=o[Xe+8>>2]|0,o[w+12>>2]=p,o[p+8>>2]=w,w=p;while(!1);if(U|0){if(p=o[Xe+28>>2]|0,y=11436+(p<<2)|0,(Xe|0)==(o[y>>2]|0)){if(o[y>>2]=w,!w){o[2784]=o[2784]&~(1<>2]|0)!=(Xe|0)&1)<<2)>>2]=w,!w)break;o[w+24>>2]=U,p=Xe+16|0,y=o[p>>2]|0,y|0&&(o[w+16>>2]=y,o[y+24>>2]=w),p=o[p+4>>2]|0,p|0&&(o[w+20>>2]=p,o[p+24>>2]=w)}}while(!1);if(o[Ge+4>>2]=J|1,o[le+J>>2]=J,(Ge|0)==(o[2788]|0)){o[2785]=J;return}}if(p=J>>>3,J>>>0<256){w=11172+(p<<1<<2)|0,y=o[2783]|0,p=1<>2]|0):(o[2783]=y|p,p=w,y=w+8|0),o[y>>2]=Ge,o[p+12>>2]=Ge,o[Ge+8>>2]=p,o[Ge+12>>2]=w;return}p=J>>>8,p?J>>>0>16777215?p=31:(le=(p+1048320|0)>>>16&8,Xe=p<>>16&4,Xe=Xe<>>16&2,p=14-(U|le|p)+(Xe<

>>15)|0,p=J>>>(p+7|0)&1|p<<1):p=0,G=11436+(p<<2)|0,o[Ge+28>>2]=p,o[Ge+20>>2]=0,o[Ge+16>>2]=0,y=o[2784]|0,w=1<>>1)|0),w=o[G>>2]|0;;){if((o[w+4>>2]&-8|0)==(J|0)){p=73;break}if(G=w+16+(y>>>31<<2)|0,p=o[G>>2]|0,p)y=y<<1,w=p;else{p=72;break}}if((p|0)==72){o[G>>2]=Ge,o[Ge+24>>2]=w,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;break}else if((p|0)==73){le=w+8|0,Xe=o[le>>2]|0,o[Xe+12>>2]=Ge,o[le>>2]=Ge,o[Ge+8>>2]=Xe,o[Ge+12>>2]=w,o[Ge+24>>2]=0;break}}else o[2784]=y|w,o[G>>2]=Ge,o[Ge+24>>2]=G,o[Ge+12>>2]=Ge,o[Ge+8>>2]=Ge;while(!1);if(Xe=(o[2791]|0)+-1|0,o[2791]=Xe,!Xe)p=11588;else return;for(;p=o[p>>2]|0,p;)p=p+8|0;o[2791]=-1}}}function jAe(){return 11628}function dU(p){p=p|0;var y=0,w=0;return y=B,B=B+16|0,w=y,o[w>>2]=gz(o[p+60>>2]|0)|0,p=eie(Xs(6,w|0)|0)|0,B=y,p|0}function $ne(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0;rr=B,B=B+48|0,bt=rr+16|0,U=rr,J=rr+32|0,Ge=p+28|0,G=o[Ge>>2]|0,o[J>>2]=G,Xe=p+20|0,G=(o[Xe>>2]|0)-G|0,o[J+4>>2]=G,o[J+8>>2]=y,o[J+12>>2]=w,G=G+w|0,le=p+60|0,o[U>>2]=o[le>>2],o[U+4>>2]=J,o[U+8>>2]=2,U=eie(Ma(146,U|0)|0)|0;e:do if((G|0)!=(U|0)){for(y=2;!((U|0)<0);)if(G=G-U|0,Ks=o[J+4>>2]|0,an=U>>>0>Ks>>>0,J=an?J+8|0:J,y=(an<<31>>31)+y|0,Ks=U-(an?Ks:0)|0,o[J>>2]=(o[J>>2]|0)+Ks,an=J+4|0,o[an>>2]=(o[an>>2]|0)-Ks,o[bt>>2]=o[le>>2],o[bt+4>>2]=J,o[bt+8>>2]=y,U=eie(Ma(146,bt|0)|0)|0,(G|0)==(U|0)){It=3;break e}o[p+16>>2]=0,o[Ge>>2]=0,o[Xe>>2]=0,o[p>>2]=o[p>>2]|32,(y|0)==2?w=0:w=w-(o[J+4>>2]|0)|0}else It=3;while(!1);return(It|0)==3&&(Ks=o[p+44>>2]|0,o[p+16>>2]=Ks+(o[p+48>>2]|0),o[Ge>>2]=Ks,o[Xe>>2]=Ks),B=rr,w|0}function uPt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;return J=B,B=B+32|0,U=J,G=J+20|0,o[U>>2]=o[p+60>>2],o[U+4>>2]=0,o[U+8>>2]=y,o[U+12>>2]=G,o[U+16>>2]=w,(eie(Gs(140,U|0)|0)|0)<0?(o[G>>2]=-1,p=-1):p=o[G>>2]|0,B=J,p|0}function eie(p){return p=p|0,p>>>0>4294963200&&(o[(qY()|0)>>2]=0-p,p=-1),p|0}function qY(){return(Obe()|0)+64|0}function Obe(){return tie()|0}function tie(){return 2084}function gz(p){return p=p|0,p|0}function Mbe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;return J=B,B=B+32|0,G=J,o[p+36>>2]=1,!(o[p>>2]&64|0)&&(o[G>>2]=o[p+60>>2],o[G+4>>2]=21523,o[G+8>>2]=J+16,GA(54,G|0)|0)&&(n[p+75>>0]=-1),G=$ne(p,y,w)|0,B=J,G|0}function Kqe(p,y){p=p|0,y=y|0;var w=0,G=0;if(w=n[p>>0]|0,G=n[y>>0]|0,!(w<<24>>24)||w<<24>>24!=G<<24>>24)p=G;else{do p=p+1|0,y=y+1|0,w=n[p>>0]|0,G=n[y>>0]|0;while(!(!(w<<24>>24)||w<<24>>24!=G<<24>>24));p=G}return(w&255)-(p&255)|0}function DLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0;e:do if(!w)p=0;else{for(;G=n[p>>0]|0,J=n[y>>0]|0,G<<24>>24==J<<24>>24;)if(w=w+-1|0,w)p=p+1|0,y=y+1|0;else{p=0;break e}p=(G&255)-(J&255)|0}while(!1);return p|0}function zAe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0;Un=B,B=B+224|0,It=Un+120|0,rr=Un+80|0,Ks=Un,zi=Un+136|0,G=rr,J=G+40|0;do o[G>>2]=0,G=G+4|0;while((G|0)<(J|0));return o[It>>2]=o[w>>2],(JA(0,y,It,Ks,rr)|0)<0?w=-1:((o[p+76>>2]|0)>-1?an=rie(p)|0:an=0,w=o[p>>2]|0,bt=w&32,(n[p+74>>0]|0)<1&&(o[p>>2]=w&-33),G=p+48|0,o[G>>2]|0?w=JA(p,y,It,Ks,rr)|0:(J=p+44|0,U=o[J>>2]|0,o[J>>2]=zi,le=p+28|0,o[le>>2]=zi,Ge=p+20|0,o[Ge>>2]=zi,o[G>>2]=80,Xe=p+16|0,o[Xe>>2]=zi+80,w=JA(p,y,It,Ks,rr)|0,U&&(KL[o[p+36>>2]&7](p,0,0)|0,w=o[Ge>>2]|0?w:-1,o[J>>2]=U,o[G>>2]=0,o[Xe>>2]=0,o[le>>2]=0,o[Ge>>2]=0)),G=o[p>>2]|0,o[p>>2]=G|bt,an|0&&jqe(p),w=G&32|0?-1:w),B=Un,w|0}function JA(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0;wg=B,B=B+64|0,fl=wg+16|0,Tc=wg,hl=wg+24|0,Bg=wg+8|0,Dg=wg+20|0,o[fl>>2]=y,So=(p|0)!=0,ss=hl+40|0,pi=ss,hl=hl+39|0,uu=Bg+4|0,le=0,U=0,It=0;e:for(;;){do if((U|0)>-1)if((le|0)>(2147483647-U|0)){o[(qY()|0)>>2]=75,U=-1;break}else{U=le+U|0;break}while(!1);if(le=n[y>>0]|0,le<<24>>24)Ge=y;else{Si=87;break}t:for(;;){switch(le<<24>>24){case 37:{le=Ge,Si=9;break t}case 0:{le=Ge;break t}default:}Ds=Ge+1|0,o[fl>>2]=Ds,le=n[Ds>>0]|0,Ge=Ds}t:do if((Si|0)==9)for(;;){if(Si=0,(n[Ge+1>>0]|0)!=37)break t;if(le=le+1|0,Ge=Ge+2|0,o[fl>>2]=Ge,(n[Ge>>0]|0)==37)Si=9;else break}while(!1);if(le=le-y|0,So&&o0(p,y,le),le|0){y=Ge;continue}Xe=Ge+1|0,le=(n[Xe>>0]|0)+-48|0,le>>>0<10?(Ds=(n[Ge+2>>0]|0)==36,Un=Ds?le:-1,It=Ds?1:It,Xe=Ds?Ge+3|0:Xe):Un=-1,o[fl>>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0;t:do if(Ge>>>0<32)for(bt=0,rr=le;;){if(le=1<>2]=Xe,le=n[Xe>>0]|0,Ge=(le<<24>>24)+-32|0,Ge>>>0>=32)break;rr=le}else bt=0;while(!1);if(le<<24>>24==42){if(Ge=Xe+1|0,le=(n[Ge>>0]|0)+-48|0,le>>>0<10&&(n[Xe+2>>0]|0)==36)o[J+(le<<2)>>2]=10,le=o[G+((n[Ge>>0]|0)+-48<<3)>>2]|0,It=1,Xe=Xe+3|0;else{if(It|0){U=-1;break}So?(It=(o[w>>2]|0)+3&-4,le=o[It>>2]|0,o[w>>2]=It+4,It=0,Xe=Ge):(le=0,It=0,Xe=Ge)}o[fl>>2]=Xe,Ds=(le|0)<0,le=Ds?0-le|0:le,bt=Ds?bt|8192:bt}else{if(le=qAe(fl)|0,(le|0)<0){U=-1;break}Xe=o[fl>>2]|0}do if((n[Xe>>0]|0)==46){if((n[Xe+1>>0]|0)!=42){o[fl>>2]=Xe+1,Ge=qAe(fl)|0,Xe=o[fl>>2]|0;break}if(rr=Xe+2|0,Ge=(n[rr>>0]|0)+-48|0,Ge>>>0<10&&(n[Xe+3>>0]|0)==36){o[J+(Ge<<2)>>2]=10,Ge=o[G+((n[rr>>0]|0)+-48<<3)>>2]|0,Xe=Xe+4|0,o[fl>>2]=Xe;break}if(It|0){U=-1;break e}So?(Ds=(o[w>>2]|0)+3&-4,Ge=o[Ds>>2]|0,o[w>>2]=Ds+4):Ge=0,o[fl>>2]=rr,Xe=rr}else Ge=-1;while(!1);for(zi=0;;){if(((n[Xe>>0]|0)+-65|0)>>>0>57){U=-1;break e}if(Ds=Xe+1|0,o[fl>>2]=Ds,rr=n[(n[Xe>>0]|0)+-65+(5178+(zi*58|0))>>0]|0,an=rr&255,(an+-1|0)>>>0<8)zi=an,Xe=Ds;else break}if(!(rr<<24>>24)){U=-1;break}Ks=(Un|0)>-1;do if(rr<<24>>24==19)if(Ks){U=-1;break e}else Si=49;else{if(Ks){o[J+(Un<<2)>>2]=an,Ks=G+(Un<<3)|0,Un=o[Ks+4>>2]|0,Si=Tc,o[Si>>2]=o[Ks>>2],o[Si+4>>2]=Un,Si=49;break}if(!So){U=0;break e}Vy(Tc,an,w)}while(!1);if((Si|0)==49&&(Si=0,!So)){le=0,y=Ds;continue}Xe=n[Xe>>0]|0,Xe=(zi|0)!=0&(Xe&15|0)==3?Xe&-33:Xe,Ks=bt&-65537,Un=bt&8192|0?Ks:bt;t:do switch(Xe|0){case 110:switch((zi&255)<<24>>24){case 0:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 1:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 2:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}case 3:{a[o[Tc>>2]>>1]=U,le=0,y=Ds;continue e}case 4:{n[o[Tc>>2]>>0]=U,le=0,y=Ds;continue e}case 6:{o[o[Tc>>2]>>2]=U,le=0,y=Ds;continue e}case 7:{le=o[Tc>>2]|0,o[le>>2]=U,o[le+4>>2]=((U|0)<0)<<31>>31,le=0,y=Ds;continue e}default:{le=0,y=Ds;continue e}}case 112:{Xe=120,Ge=Ge>>>0>8?Ge:8,y=Un|8,Si=61;break}case 88:case 120:{y=Un,Si=61;break}case 111:{Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,an=kLe(y,Xe,ss)|0,Ks=pi-an|0,bt=0,rr=5642,Ge=(Un&8|0)==0|(Ge|0)>(Ks|0)?Ge:Ks+1|0,Ks=Un,Si=67;break}case 105:case 100:if(Xe=Tc,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,(Xe|0)<0){y=XT(0,0,y|0,Xe|0)|0,Xe=ct,bt=Tc,o[bt>>2]=y,o[bt+4>>2]=Xe,bt=1,rr=5642,Si=66;break t}else{bt=(Un&2049|0)!=0&1,rr=Un&2048|0?5643:Un&1|0?5644:5642,Si=66;break t}case 117:{Xe=Tc,bt=0,rr=5642,y=o[Xe>>2]|0,Xe=o[Xe+4>>2]|0,Si=66;break}case 99:{n[hl>>0]=o[Tc>>2],y=hl,bt=0,rr=5642,an=ss,Xe=1,Ge=Ks;break}case 109:{Xe=gPt(o[(qY()|0)>>2]|0)|0,Si=71;break}case 115:{Xe=o[Tc>>2]|0,Xe=Xe|0?Xe:5652,Si=71;break}case 67:{o[Bg>>2]=o[Tc>>2],o[uu>>2]=0,o[Tc>>2]=Bg,an=-1,Xe=Bg,Si=75;break}case 83:{y=o[Tc>>2]|0,Ge?(an=Ge,Xe=y,Si=75):(pv(p,32,le,0,Un),y=0,Si=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{le=GLe(p,+C[Tc>>3],le,Ge,Un,Xe)|0,y=Ds;continue e}default:bt=0,rr=5642,an=ss,Xe=Ge,Ge=Un}while(!1);t:do if((Si|0)==61)Un=Tc,zi=o[Un>>2]|0,Un=o[Un+4>>2]|0,an=Hbe(zi,Un,ss,Xe&32)|0,rr=(y&8|0)==0|(zi|0)==0&(Un|0)==0,bt=rr?0:2,rr=rr?5642:5642+(Xe>>4)|0,Ks=y,y=zi,Xe=Un,Si=67;else if((Si|0)==66)an=pU(y,Xe,ss)|0,Ks=Un,Si=67;else if((Si|0)==71)Si=0,Un=xLe(Xe,0,Ge)|0,zi=(Un|0)==0,y=Xe,bt=0,rr=5642,an=zi?Xe+Ge|0:Un,Xe=zi?Ge:Un-Xe|0,Ge=Ks;else if((Si|0)==75){for(Si=0,rr=Xe,y=0,Ge=0;bt=o[rr>>2]|0,!(!bt||(Ge=Ybe(Dg,bt)|0,(Ge|0)<0|Ge>>>0>(an-y|0)>>>0));)if(y=Ge+y|0,an>>>0>y>>>0)rr=rr+4|0;else break;if((Ge|0)<0){U=-1;break e}if(pv(p,32,le,y,Un),!y)y=0,Si=84;else for(bt=0;;){if(Ge=o[Xe>>2]|0,!Ge){Si=84;break t}if(Ge=Ybe(Dg,Ge)|0,bt=Ge+bt|0,(bt|0)>(y|0)){Si=84;break t}if(o0(p,Dg,Ge),bt>>>0>=y>>>0){Si=84;break}else Xe=Xe+4|0}}while(!1);if((Si|0)==67)Si=0,Xe=(y|0)!=0|(Xe|0)!=0,Un=(Ge|0)!=0|Xe,Xe=((Xe^1)&1)+(pi-an)|0,y=Un?an:ss,an=ss,Xe=Un?(Ge|0)>(Xe|0)?Ge:Xe:Ge,Ge=(Ge|0)>-1?Ks&-65537:Ks;else if((Si|0)==84){Si=0,pv(p,32,le,y,Un^8192),le=(le|0)>(y|0)?le:y,y=Ds;continue}zi=an-y|0,Ks=(Xe|0)<(zi|0)?zi:Xe,Un=Ks+bt|0,le=(le|0)<(Un|0)?Un:le,pv(p,32,le,Un,Ge),o0(p,rr,bt),pv(p,48,le,Un,Ge^65536),pv(p,48,Ks,zi,0),o0(p,y,zi),pv(p,32,le,Un,Ge^8192),y=Ds}e:do if((Si|0)==87&&!p)if(!It)U=0;else{for(U=1;y=o[J+(U<<2)>>2]|0,!!y;)if(Vy(G+(U<<3)|0,y,w),U=U+1|0,(U|0)>=10){U=1;break e}for(;;){if(o[J+(U<<2)>>2]|0){U=-1;break e}if(U=U+1|0,(U|0)>=10){U=1;break}}}while(!1);return B=wg,U|0}function rie(p){return p=p|0,0}function jqe(p){p=p|0}function o0(p,y,w){p=p|0,y=y|0,w=w|0,o[p>>2]&32||iie(y,w,p)|0}function qAe(p){p=p|0;var y=0,w=0,G=0;if(w=o[p>>2]|0,G=(n[w>>0]|0)+-48|0,G>>>0<10){y=0;do y=G+(y*10|0)|0,w=w+1|0,o[p>>2]=w,G=(n[w>>0]|0)+-48|0;while(G>>>0<10)}else y=0;return y|0}function Vy(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;e:do if(y>>>0<=20)do switch(y|0){case 9:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,o[p>>2]=y;break e}case 10:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=((y|0)<0)<<31>>31;break e}case 11:{G=(o[w>>2]|0)+3&-4,y=o[G>>2]|0,o[w>>2]=G+4,G=p,o[G>>2]=y,o[G+4>>2]=0;break e}case 12:{G=(o[w>>2]|0)+7&-8,y=G,J=o[y>>2]|0,y=o[y+4>>2]|0,o[w>>2]=G+8,G=p,o[G>>2]=J,o[G+4>>2]=y;break e}case 13:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,G=(G&65535)<<16>>16,J=p,o[J>>2]=G,o[J+4>>2]=((G|0)<0)<<31>>31;break e}case 14:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,J=p,o[J>>2]=G&65535,o[J+4>>2]=0;break e}case 15:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,G=(G&255)<<24>>24,J=p,o[J>>2]=G,o[J+4>>2]=((G|0)<0)<<31>>31;break e}case 16:{J=(o[w>>2]|0)+3&-4,G=o[J>>2]|0,o[w>>2]=J+4,J=p,o[J>>2]=G&255,o[J+4>>2]=0;break e}case 17:{J=(o[w>>2]|0)+7&-8,U=+C[J>>3],o[w>>2]=J+8,C[p>>3]=U;break e}case 18:{J=(o[w>>2]|0)+7&-8,U=+C[J>>3],o[w>>2]=J+8,C[p>>3]=U;break e}default:break e}while(!1);while(!1)}function Hbe(p,y,w,G){if(p=p|0,y=y|0,w=w|0,G=G|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=l[5694+(p&15)>>0]|0|G,p=D3(p|0,y|0,4)|0,y=ct;while(!((p|0)==0&(y|0)==0));return w|0}function kLe(p,y,w){if(p=p|0,y=y|0,w=w|0,!((p|0)==0&(y|0)==0))do w=w+-1|0,n[w>>0]=p&7|48,p=D3(p|0,y|0,3)|0,y=ct;while(!((p|0)==0&(y|0)==0));return w|0}function pU(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if(y>>>0>0|(y|0)==0&p>>>0>4294967295){for(;G=hU(p|0,y|0,10,0)|0,w=w+-1|0,n[w>>0]=G&255|48,G=p,p=k3(p|0,y|0,10,0)|0,y>>>0>9|(y|0)==9&G>>>0>4294967295;)y=ct;y=p}else y=p;if(y)for(;w=w+-1|0,n[w>>0]=(y>>>0)%10|0|48,!(y>>>0<10);)y=(y>>>0)/10|0;return w|0}function gPt(p){return p=p|0,Ube(p,o[(nie()|0)+188>>2]|0)|0}function xLe(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;U=y&255,G=(w|0)!=0;e:do if(G&(p&3|0)!=0)for(J=y&255;;){if((n[p>>0]|0)==J<<24>>24){le=6;break e}if(p=p+1|0,w=w+-1|0,G=(w|0)!=0,!(G&(p&3|0)!=0)){le=5;break}}else le=5;while(!1);(le|0)==5&&(G?le=6:w=0);e:do if((le|0)==6&&(J=y&255,(n[p>>0]|0)!=J<<24>>24)){G=cr(U,16843009)|0;t:do if(w>>>0>3){for(;U=o[p>>2]^G,!((U&-2139062144^-2139062144)&U+-16843009|0);)if(p=p+4|0,w=w+-4|0,w>>>0<=3){le=11;break t}}else le=11;while(!1);if((le|0)==11&&!w){w=0;break}for(;;){if((n[p>>0]|0)==J<<24>>24)break e;if(p=p+1|0,w=w+-1|0,!w){w=0;break}}}while(!1);return(w|0?p:0)|0}function pv(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0;if(le=B,B=B+256|0,U=le,(w|0)>(G|0)&(J&73728|0)==0){if(J=w-G|0,fz(U|0,y|0,(J>>>0<256?J:256)|0)|0,J>>>0>255){y=w-G|0;do o0(p,U,256),J=J+-256|0;while(J>>>0>255);J=y&255}o0(p,U,J)}B=le}function Ybe(p,y){return p=p|0,y=y|0,p?p=zqe(p,y,0)|0:p=0,p|0}function GLe(p,y,w,G,J,U){p=p|0,y=+y,w=w|0,G=G|0,J=J|0,U=U|0;var le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0,Un=0,Ds=0,Si=0,So=0,ss=0,pi=0,hl=0,uu=0,fl=0,Tc=0,Bg=0,Dg=0,wg=0,em=0;em=B,B=B+560|0,Xe=em+8|0,Ds=em,wg=em+524|0,Dg=wg,bt=em+512|0,o[Ds>>2]=0,Bg=bt+12|0,Qbe(y)|0,(ct|0)<0?(y=-y,fl=1,uu=5659):(fl=(J&2049|0)!=0&1,uu=J&2048|0?5662:J&1|0?5665:5660),Qbe(y)|0,Tc=ct&2146435072;do if(Tc>>>0<2146435072|(Tc|0)==2146435072&!1){if(Ks=+Xbe(y,Ds)*2,le=Ks!=0,le&&(o[Ds>>2]=(o[Ds>>2]|0)+-1),So=U|32,(So|0)==97){zi=U&32,an=zi|0?uu+9|0:uu,rr=fl|2,le=12-G|0;do if(G>>>0>11|(le|0)==0)y=Ks;else{y=8;do le=le+-1|0,y=y*16;while(le|0);if((n[an>>0]|0)==45){y=-(y+(-Ks-y));break}else{y=Ks+y-y;break}}while(!1);Ge=o[Ds>>2]|0,le=(Ge|0)<0?0-Ge|0:Ge,le=pU(le,((le|0)<0)<<31>>31,Bg)|0,(le|0)==(Bg|0)&&(le=bt+11|0,n[le>>0]=48),n[le+-1>>0]=(Ge>>31&2)+43,It=le+-2|0,n[It>>0]=U+15,bt=(G|0)<1,Xe=(J&8|0)==0,le=wg;do Tc=~~y,Ge=le+1|0,n[le>>0]=l[5694+Tc>>0]|zi,y=(y-+(Tc|0))*16,(Ge-Dg|0)==1&&!(Xe&(bt&y==0))?(n[Ge>>0]=46,le=le+2|0):le=Ge;while(y!=0);Tc=le-Dg|0,Dg=Bg-It|0,Bg=(G|0)!=0&(Tc+-2|0)<(G|0)?G+2|0:Tc,le=Dg+rr+Bg|0,pv(p,32,w,le,J),o0(p,an,rr),pv(p,48,w,le,J^65536),o0(p,wg,Tc),pv(p,48,Bg-Tc|0,0,0),o0(p,It,Dg),pv(p,32,w,le,J^8192);break}Ge=(G|0)<0?6:G,le?(le=(o[Ds>>2]|0)+-28|0,o[Ds>>2]=le,y=Ks*268435456):(y=Ks,le=o[Ds>>2]|0),Tc=(le|0)<0?Xe:Xe+288|0,Xe=Tc;do pi=~~y>>>0,o[Xe>>2]=pi,Xe=Xe+4|0,y=(y-+(pi>>>0))*1e9;while(y!=0);if((le|0)>0)for(bt=Tc,rr=Xe;;){if(It=(le|0)<29?le:29,le=rr+-4|0,le>>>0>=bt>>>0){Xe=0;do ss=Kbe(o[le>>2]|0,0,It|0)|0,ss=Hg(ss|0,ct|0,Xe|0,0)|0,pi=ct,Si=hU(ss|0,pi|0,1e9,0)|0,o[le>>2]=Si,Xe=k3(ss|0,pi|0,1e9,0)|0,le=le+-4|0;while(le>>>0>=bt>>>0);Xe&&(bt=bt+-4|0,o[bt>>2]=Xe)}for(Xe=rr;!(Xe>>>0<=bt>>>0);)if(le=Xe+-4|0,!(o[le>>2]|0))Xe=le;else break;if(le=(o[Ds>>2]|0)-It|0,o[Ds>>2]=le,(le|0)>0)rr=Xe;else break}else bt=Tc;if((le|0)<0){G=((Ge+25|0)/9|0)+1|0,Un=(So|0)==102;do{if(zi=0-le|0,zi=(zi|0)<9?zi:9,bt>>>0>>0){It=(1<>>zi,an=0,le=bt;do pi=o[le>>2]|0,o[le>>2]=(pi>>>zi)+an,an=cr(pi&It,rr)|0,le=le+4|0;while(le>>>0>>0);le=o[bt>>2]|0?bt:bt+4|0,an?(o[Xe>>2]=an,bt=le,le=Xe+4|0):(bt=le,le=Xe)}else bt=o[bt>>2]|0?bt:bt+4|0,le=Xe;Xe=Un?Tc:bt,Xe=(le-Xe>>2|0)>(G|0)?Xe+(G<<2)|0:le,le=(o[Ds>>2]|0)+zi|0,o[Ds>>2]=le}while((le|0)<0);le=bt,G=Xe}else le=bt,G=Xe;if(pi=Tc,le>>>0>>0){if(Xe=(pi-le>>2)*9|0,It=o[le>>2]|0,It>>>0>=10){bt=10;do bt=bt*10|0,Xe=Xe+1|0;while(It>>>0>=bt>>>0)}}else Xe=0;if(Un=(So|0)==103,Si=(Ge|0)!=0,bt=Ge-((So|0)!=102?Xe:0)+((Si&Un)<<31>>31)|0,(bt|0)<(((G-pi>>2)*9|0)+-9|0)){if(bt=bt+9216|0,zi=Tc+4+(((bt|0)/9|0)+-1024<<2)|0,bt=((bt|0)%9|0)+1|0,(bt|0)<9){It=10;do It=It*10|0,bt=bt+1|0;while((bt|0)!=9)}else It=10;if(rr=o[zi>>2]|0,an=(rr>>>0)%(It>>>0)|0,bt=(zi+4|0)==(G|0),bt&(an|0)==0)bt=zi;else if(Ks=((rr>>>0)/(It>>>0)|0)&1|0?9007199254740994:9007199254740992,ss=(It|0)/2|0,y=an>>>0>>0?.5:bt&(an|0)==(ss|0)?1:1.5,fl&&(ss=(n[uu>>0]|0)==45,y=ss?-y:y,Ks=ss?-Ks:Ks),bt=rr-an|0,o[zi>>2]=bt,Ks+y!=Ks){if(ss=bt+It|0,o[zi>>2]=ss,ss>>>0>999999999)for(Xe=zi;bt=Xe+-4|0,o[Xe>>2]=0,bt>>>0>>0&&(le=le+-4|0,o[le>>2]=0),ss=(o[bt>>2]|0)+1|0,o[bt>>2]=ss,ss>>>0>999999999;)Xe=bt;else bt=zi;if(Xe=(pi-le>>2)*9|0,rr=o[le>>2]|0,rr>>>0>=10){It=10;do It=It*10|0,Xe=Xe+1|0;while(rr>>>0>=It>>>0)}}else bt=zi;bt=bt+4|0,bt=G>>>0>bt>>>0?bt:G,ss=le}else bt=G,ss=le;for(So=bt;;){if(So>>>0<=ss>>>0){Ds=0;break}if(le=So+-4|0,!(o[le>>2]|0))So=le;else{Ds=1;break}}G=0-Xe|0;do if(Un)if(le=((Si^1)&1)+Ge|0,(le|0)>(Xe|0)&(Xe|0)>-5?(It=U+-1|0,Ge=le+-1-Xe|0):(It=U+-2|0,Ge=le+-1|0),le=J&8,le)zi=le;else{if(Ds&&(hl=o[So+-4>>2]|0,(hl|0)!=0))if((hl>>>0)%10|0)bt=0;else{bt=0,le=10;do le=le*10|0,bt=bt+1|0;while(!((hl>>>0)%(le>>>0)|0|0))}else bt=9;if(le=((So-pi>>2)*9|0)+-9|0,(It|32|0)==102){zi=le-bt|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}else{zi=le+Xe-bt|0,zi=(zi|0)>0?zi:0,Ge=(Ge|0)<(zi|0)?Ge:zi,zi=0;break}}else It=U,zi=J&8;while(!1);if(Un=Ge|zi,rr=(Un|0)!=0&1,an=(It|32|0)==102,an)Si=0,le=(Xe|0)>0?Xe:0;else{if(le=(Xe|0)<0?G:Xe,le=pU(le,((le|0)<0)<<31>>31,Bg)|0,bt=Bg,(bt-le|0)<2)do le=le+-1|0,n[le>>0]=48;while((bt-le|0)<2);n[le+-1>>0]=(Xe>>31&2)+43,le=le+-2|0,n[le>>0]=It,Si=le,le=bt-le|0}if(le=fl+1+Ge+rr+le|0,pv(p,32,w,le,J),o0(p,uu,fl),pv(p,48,w,le,J^65536),an){It=ss>>>0>Tc>>>0?Tc:ss,zi=wg+9|0,rr=zi,an=wg+8|0,bt=It;do{if(Xe=pU(o[bt>>2]|0,0,zi)|0,(bt|0)==(It|0))(Xe|0)==(zi|0)&&(n[an>>0]=48,Xe=an);else if(Xe>>>0>wg>>>0){fz(wg|0,48,Xe-Dg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}o0(p,Xe,rr-Xe|0),bt=bt+4|0}while(bt>>>0<=Tc>>>0);if(Un|0&&o0(p,5710,1),bt>>>0>>0&(Ge|0)>0)for(;;){if(Xe=pU(o[bt>>2]|0,0,zi)|0,Xe>>>0>wg>>>0){fz(wg|0,48,Xe-Dg|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}if(o0(p,Xe,(Ge|0)<9?Ge:9),bt=bt+4|0,Xe=Ge+-9|0,bt>>>0>>0&(Ge|0)>9)Ge=Xe;else{Ge=Xe;break}}pv(p,48,Ge+9|0,9,0)}else{if(Un=Ds?So:ss+4|0,(Ge|0)>-1){Ds=wg+9|0,zi=(zi|0)==0,G=Ds,rr=0-Dg|0,an=wg+8|0,It=ss;do{Xe=pU(o[It>>2]|0,0,Ds)|0,(Xe|0)==(Ds|0)&&(n[an>>0]=48,Xe=an);do if((It|0)==(ss|0)){if(bt=Xe+1|0,o0(p,Xe,1),zi&(Ge|0)<1){Xe=bt;break}o0(p,5710,1),Xe=bt}else{if(Xe>>>0<=wg>>>0)break;fz(wg|0,48,Xe+rr|0)|0;do Xe=Xe+-1|0;while(Xe>>>0>wg>>>0)}while(!1);Dg=G-Xe|0,o0(p,Xe,(Ge|0)>(Dg|0)?Dg:Ge),Ge=Ge-Dg|0,It=It+4|0}while(It>>>0>>0&(Ge|0)>-1)}pv(p,48,Ge+18|0,18,0),o0(p,Si,Bg-Si|0)}pv(p,32,w,le,J^8192)}else wg=(U&32|0)!=0,le=fl+3|0,pv(p,32,w,le,J&-65537),o0(p,uu,fl),o0(p,y!=y|!1?wg?5686:5690:wg?5678:5682,3),pv(p,32,w,le,J^8192);while(!1);return B=em,((le|0)<(w|0)?w:le)|0}function Qbe(p){p=+p;var y=0;return C[E>>3]=p,y=o[E>>2]|0,ct=o[E+4>>2]|0,y|0}function Xbe(p,y){return p=+p,y=y|0,+ +Jbe(p,y)}function Jbe(p,y){p=+p,y=y|0;var w=0,G=0,J=0;switch(C[E>>3]=p,w=o[E>>2]|0,G=o[E+4>>2]|0,J=D3(w|0,G|0,52)|0,J&2047){case 0:{p!=0?(p=+Jbe(p*18446744073709552e3,y),w=(o[y>>2]|0)+-64|0):w=0,o[y>>2]=w;break}case 2047:break;default:o[y>>2]=(J&2047)+-1022,o[E>>2]=w,o[E+4>>2]=G&-2146435073|1071644672,p=+C[E>>3]}return+p}function zqe(p,y,w){p=p|0,y=y|0,w=w|0;do if(p){if(y>>>0<128){n[p>>0]=y,p=1;break}if(!(o[o[(qqe()|0)+188>>2]>>2]|0))if((y&-128|0)==57216){n[p>>0]=y,p=1;break}else{o[(qY()|0)>>2]=84,p=-1;break}if(y>>>0<2048){n[p>>0]=y>>>6|192,n[p+1>>0]=y&63|128,p=2;break}if(y>>>0<55296|(y&-8192|0)==57344){n[p>>0]=y>>>12|224,n[p+1>>0]=y>>>6&63|128,n[p+2>>0]=y&63|128,p=3;break}if((y+-65536|0)>>>0<1048576){n[p>>0]=y>>>18|240,n[p+1>>0]=y>>>12&63|128,n[p+2>>0]=y>>>6&63|128,n[p+3>>0]=y&63|128,p=4;break}else{o[(qY()|0)>>2]=84,p=-1;break}}else p=1;while(!1);return p|0}function qqe(){return tie()|0}function nie(){return tie()|0}function Ube(p,y){p=p|0,y=y|0;var w=0,G=0;for(G=0;;){if((l[5712+G>>0]|0)==(p|0)){p=2;break}if(w=G+1|0,(w|0)==87){w=5800,G=87,p=5;break}else G=w}if((p|0)==2&&(G?(w=5800,p=5):w=5800),(p|0)==5)for(;;){do p=w,w=w+1|0;while(n[p>>0]|0);if(G=G+-1|0,G)p=5;else break}return kx(w,o[y+20>>2]|0)|0}function kx(p,y){return p=p|0,y=y|0,$qe(p,y)|0}function $qe(p,y){return p=p|0,y=y|0,y?y=APt(o[y>>2]|0,o[y+4>>2]|0,p)|0:y=0,(y|0?y:p)|0}function APt(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0;an=(o[p>>2]|0)+1794895138|0,U=NB(o[p+8>>2]|0,an)|0,G=NB(o[p+12>>2]|0,an)|0,J=NB(o[p+16>>2]|0,an)|0;e:do if(U>>>0>>2>>>0&&(rr=y-(U<<2)|0,G>>>0>>0&J>>>0>>0)&&!((J|G)&3|0)){for(rr=G>>>2,It=J>>>2,bt=0;;){if(Ge=U>>>1,Xe=bt+Ge|0,le=Xe<<1,J=le+rr|0,G=NB(o[p+(J<<2)>>2]|0,an)|0,J=NB(o[p+(J+1<<2)>>2]|0,an)|0,!(J>>>0>>0&G>>>0<(y-J|0)>>>0)){G=0;break e}if(n[p+(J+G)>>0]|0){G=0;break e}if(G=Kqe(w,p+J|0)|0,!G)break;if(G=(G|0)<0,(U|0)==1){G=0;break e}else bt=G?bt:Xe,U=G?Ge:U-Ge|0}G=le+It|0,J=NB(o[p+(G<<2)>>2]|0,an)|0,G=NB(o[p+(G+1<<2)>>2]|0,an)|0,G>>>0>>0&J>>>0<(y-G|0)>>>0?G=n[p+(G+J)>>0]|0?0:p+G|0:G=0}else G=0;while(!1);return G|0}function NB(p,y){p=p|0,y=y|0;var w=0;return w=x3(p|0)|0,(y|0?w:p)|0}function iie(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0,Ge=0;G=w+16|0,J=o[G>>2]|0,J?U=5:dPt(w)|0?G=0:(J=o[G>>2]|0,U=5);e:do if((U|0)==5){if(Ge=w+20|0,le=o[Ge>>2]|0,G=le,(J-le|0)>>>0>>0){G=KL[o[w+36>>2]&7](w,p,y)|0;break}t:do if((n[w+75>>0]|0)>-1){for(le=y;;){if(!le){U=0,J=p;break t}if(J=le+-1|0,(n[p+J>>0]|0)==10)break;le=J}if(G=KL[o[w+36>>2]&7](w,p,le)|0,G>>>0>>0)break e;U=le,J=p+le|0,y=y-le|0,G=o[Ge>>2]|0}else U=0,J=p;while(!1);Md(G|0,J|0,y|0)|0,o[Ge>>2]=(o[Ge>>2]|0)+y,G=U+y|0}while(!1);return G|0}function dPt(p){p=p|0;var y=0,w=0;return y=p+74|0,w=n[y>>0]|0,n[y>>0]=w+255|w,y=o[p>>2]|0,y&8?(o[p>>2]=y|32,p=-1):(o[p+8>>2]=0,o[p+4>>2]=0,w=o[p+44>>2]|0,o[p+28>>2]=w,o[p+20>>2]=w,o[p+16>>2]=w+(o[p+48>>2]|0),p=0),p|0}function zs(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=CA(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=CA(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?y:p;break}else{p=p>2]=p,o[E>>2]|0|0}function fU(p,y){p=ke(p),y=ke(y);var w=0,G=0;w=e$e(p)|0;do if((w&2147483647)>>>0<=2139095040){if(G=e$e(y)|0,(G&2147483647)>>>0<=2139095040)if((G^w|0)<0){p=(w|0)<0?p:y;break}else{p=p>2]=p,o[E>>2]|0|0}function Az(p,y){p=ke(p),y=ke(y);var w=0,G=0,J=0,U=0,le=0,Ge=0,Xe=0,bt=0;U=(I[E>>2]=p,o[E>>2]|0),Ge=(I[E>>2]=y,o[E>>2]|0),w=U>>>23&255,le=Ge>>>23&255,Xe=U&-2147483648,J=Ge<<1;e:do if(J|0&&!((w|0)==255|(($Ae(y)|0)&2147483647)>>>0>2139095040)){if(G=U<<1,G>>>0<=J>>>0)return y=ke(p*ke(0)),ke((G|0)==(J|0)?y:p);if(w)G=U&8388607|8388608;else{if(w=U<<9,(w|0)>-1){G=w,w=0;do w=w+-1|0,G=G<<1;while((G|0)>-1)}else w=0;G=U<<1-w}if(le)Ge=Ge&8388607|8388608;else{if(U=Ge<<9,(U|0)>-1){J=0;do J=J+-1|0,U=U<<1;while((U|0)>-1)}else J=0;le=J,Ge=Ge<<1-J}J=G-Ge|0,U=(J|0)>-1;t:do if((w|0)>(le|0)){for(;;){if(U)if(J)G=J;else break;if(G=G<<1,w=w+-1|0,J=G-Ge|0,U=(J|0)>-1,(w|0)<=(le|0))break t}y=ke(p*ke(0));break e}while(!1);if(U)if(J)G=J;else{y=ke(p*ke(0));break}if(G>>>0<8388608)do G=G<<1,w=w+-1|0;while(G>>>0<8388608);(w|0)>0?w=G+-8388608|w<<23:w=G>>>(1-w|0),y=(o[E>>2]=w|Xe,ke(I[E>>2]))}else bt=3;while(!1);return(bt|0)==3&&(y=ke(p*y),y=ke(y/y)),ke(y)}function $Ae(p){return p=ke(p),I[E>>2]=p,o[E>>2]|0|0}function pPt(p,y){return p=p|0,y=y|0,zAe(o[582]|0,p,y)|0}function me(p){p=p|0,Ko()}function dz(p){p=p|0}function t$e(p,y){return p=p|0,y=y|0,0}function ua(p){return p=p|0,(r$e(p+4|0)|0)==-1?(DF[o[(o[p>>2]|0)+8>>2]&127](p),p=1):p=0,p|0}function r$e(p){p=p|0;var y=0;return y=o[p>>2]|0,o[p>>2]=y+-1,y+-1|0}function IU(p){p=p|0,ua(p)|0&&c_(p)}function c_(p){p=p|0;var y=0;y=p+8|0,o[y>>2]|0&&(r$e(y)|0)!=-1||DF[o[(o[p>>2]|0)+16>>2]&127](p)}function Ku(p){p=p|0;var y=0;for(y=p|0?p:1;p=zne(y)|0,!(p|0);){if(p=sie()|0,!p){p=0;break}nEe[p&0]()}return p|0}function pz(p){return p=p|0,Ku(p)|0}function ti(p){p=p|0,qne(p)}function Gw(p){p=p|0,(n[p+11>>0]|0)<0&&ti(o[p>>2]|0)}function sie(){var p=0;return p=o[2923]|0,o[2923]=p+0,p|0}function N3(){}function XT(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,G=y-G-(w>>>0>p>>>0|0)>>>0,ct=G,p-w>>>0|0|0}function Hg(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,w=p+w>>>0,ct=y+G+(w>>>0

>>0|0)>>>0,w|0|0}function fz(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0,le=0;if(U=p+w|0,y=y&255,(w|0)>=67){for(;p&3;)n[p>>0]=y,p=p+1|0;for(G=U&-4|0,J=G-64|0,le=y|y<<8|y<<16|y<<24;(p|0)<=(J|0);)o[p>>2]=le,o[p+4>>2]=le,o[p+8>>2]=le,o[p+12>>2]=le,o[p+16>>2]=le,o[p+20>>2]=le,o[p+24>>2]=le,o[p+28>>2]=le,o[p+32>>2]=le,o[p+36>>2]=le,o[p+40>>2]=le,o[p+44>>2]=le,o[p+48>>2]=le,o[p+52>>2]=le,o[p+56>>2]=le,o[p+60>>2]=le,p=p+64|0;for(;(p|0)<(G|0);)o[p>>2]=le,p=p+4|0}for(;(p|0)<(U|0);)n[p>>0]=y,p=p+1|0;return U-w|0}function Kbe(p,y,w){return p=p|0,y=y|0,w=w|0,(w|0)<32?(ct=y<>>32-w,p<>>w,p>>>w|(y&(1<>>w-32|0)}function Md(p,y,w){p=p|0,y=y|0,w=w|0;var G=0,J=0,U=0;if((w|0)>=8192)return Hu(p|0,y|0,w|0)|0;if(U=p|0,J=p+w|0,(p&3)==(y&3)){for(;p&3;){if(!w)return U|0;n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0,w=w-1|0}for(w=J&-4|0,G=w-64|0;(p|0)<=(G|0);)o[p>>2]=o[y>>2],o[p+4>>2]=o[y+4>>2],o[p+8>>2]=o[y+8>>2],o[p+12>>2]=o[y+12>>2],o[p+16>>2]=o[y+16>>2],o[p+20>>2]=o[y+20>>2],o[p+24>>2]=o[y+24>>2],o[p+28>>2]=o[y+28>>2],o[p+32>>2]=o[y+32>>2],o[p+36>>2]=o[y+36>>2],o[p+40>>2]=o[y+40>>2],o[p+44>>2]=o[y+44>>2],o[p+48>>2]=o[y+48>>2],o[p+52>>2]=o[y+52>>2],o[p+56>>2]=o[y+56>>2],o[p+60>>2]=o[y+60>>2],p=p+64|0,y=y+64|0;for(;(p|0)<(w|0);)o[p>>2]=o[y>>2],p=p+4|0,y=y+4|0}else for(w=J-4|0;(p|0)<(w|0);)n[p>>0]=n[y>>0]|0,n[p+1>>0]=n[y+1>>0]|0,n[p+2>>0]=n[y+2>>0]|0,n[p+3>>0]=n[y+3>>0]|0,p=p+4|0,y=y+4|0;for(;(p|0)<(J|0);)n[p>>0]=n[y>>0]|0,p=p+1|0,y=y+1|0;return U|0}function DB(p){p=p|0;var y=0;return y=n[Q+(p&255)>>0]|0,(y|0)<8?y|0:(y=n[Q+(p>>8&255)>>0]|0,(y|0)<8?y+8|0:(y=n[Q+(p>>16&255)>>0]|0,(y|0)<8?y+16|0:(n[Q+(p>>>24)>>0]|0)+24|0))}function hh(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0;var U=0,le=0,Ge=0,Xe=0,bt=0,It=0,rr=0,an=0,Ks=0,zi=0;if(It=p,Xe=y,bt=Xe,le=w,an=G,Ge=an,!bt)return U=(J|0)!=0,Ge?U?(o[J>>2]=p|0,o[J+4>>2]=y&0,an=0,J=0,ct=an,J|0):(an=0,J=0,ct=an,J|0):(U&&(o[J>>2]=(It>>>0)%(le>>>0),o[J+4>>2]=0),an=0,J=(It>>>0)/(le>>>0)>>>0,ct=an,J|0);U=(Ge|0)==0;do if(le){if(!U){if(U=(_n(Ge|0)|0)-(_n(bt|0)|0)|0,U>>>0<=31){rr=U+1|0,Ge=31-U|0,y=U-31>>31,le=rr,p=It>>>(rr>>>0)&y|bt<>>(rr>>>0)&y,U=0,Ge=It<>2]=p|0,o[J+4>>2]=Xe|y&0,an=0,J=0,ct=an,J|0):(an=0,J=0,ct=an,J|0)}if(U=le-1|0,U&le|0){Ge=(_n(le|0)|0)+33-(_n(bt|0)|0)|0,zi=64-Ge|0,rr=32-Ge|0,Xe=rr>>31,Ks=Ge-32|0,y=Ks>>31,le=Ge,p=rr-1>>31&bt>>>(Ks>>>0)|(bt<>>(Ge>>>0))&y,y=y&bt>>>(Ge>>>0),U=It<>>(Ks>>>0))&Xe|It<>31;break}return J|0&&(o[J>>2]=U&It,o[J+4>>2]=0),(le|0)==1?(Ks=Xe|y&0,zi=p|0|0,ct=Ks,zi|0):(zi=DB(le|0)|0,Ks=bt>>>(zi>>>0)|0,zi=bt<<32-zi|It>>>(zi>>>0)|0,ct=Ks,zi|0)}else{if(U)return J|0&&(o[J>>2]=(bt>>>0)%(le>>>0),o[J+4>>2]=0),Ks=0,zi=(bt>>>0)/(le>>>0)>>>0,ct=Ks,zi|0;if(!It)return J|0&&(o[J>>2]=0,o[J+4>>2]=(bt>>>0)%(Ge>>>0)),Ks=0,zi=(bt>>>0)/(Ge>>>0)>>>0,ct=Ks,zi|0;if(U=Ge-1|0,!(U&Ge))return J|0&&(o[J>>2]=p|0,o[J+4>>2]=U&bt|y&0),Ks=0,zi=bt>>>((DB(Ge|0)|0)>>>0),ct=Ks,zi|0;if(U=(_n(Ge|0)|0)-(_n(bt|0)|0)|0,U>>>0<=30){y=U+1|0,Ge=31-U|0,le=y,p=bt<>>(y>>>0),y=bt>>>(y>>>0),U=0,Ge=It<>2]=p|0,o[J+4>>2]=Xe|y&0,Ks=0,zi=0,ct=Ks,zi|0):(Ks=0,zi=0,ct=Ks,zi|0)}while(!1);if(!le)bt=Ge,Xe=0,Ge=0;else{rr=w|0|0,It=an|G&0,bt=Hg(rr|0,It|0,-1,-1)|0,w=ct,Xe=Ge,Ge=0;do G=Xe,Xe=U>>>31|Xe<<1,U=Ge|U<<1,G=p<<1|G>>>31|0,an=p>>>31|y<<1|0,XT(bt|0,w|0,G|0,an|0)|0,zi=ct,Ks=zi>>31|((zi|0)<0?-1:0)<<1,Ge=Ks&1,p=XT(G|0,an|0,Ks&rr|0,(((zi|0)<0?-1:0)>>31|((zi|0)<0?-1:0)<<1)&It|0)|0,y=ct,le=le-1|0;while(le|0);bt=Xe,Xe=0}return le=0,J|0&&(o[J>>2]=p,o[J+4>>2]=y),Ks=(U|0)>>>31|(bt|le)<<1|(le<<1|U>>>31)&0|Xe,zi=(U<<1|0)&-2|Ge,ct=Ks,zi|0}function k3(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,hh(p,y,w,G,0)|0}function kB(p){p=p|0;var y=0,w=0;return w=p+15&-16|0,y=o[b>>2]|0,p=y+w|0,(w|0)>0&(p|0)<(y|0)|(p|0)<0?(po()|0,Vs(12),-1):(o[b>>2]=p,(p|0)>(Hi()|0)&&!(Nn()|0)?(o[b>>2]=y,Vs(12),-1):y|0)}function JT(p,y,w){p=p|0,y=y|0,w=w|0;var G=0;if((y|0)<(p|0)&(p|0)<(y+w|0)){for(G=p,y=y+w|0,p=p+w|0;(w|0)>0;)p=p-1|0,y=y-1|0,w=w-1|0,n[p>>0]=n[y>>0]|0;p=G}else Md(p,y,w)|0;return p|0}function hU(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0;var J=0,U=0;return U=B,B=B+16|0,J=U|0,hh(p,y,w,G,J)|0,B=U,ct=o[J+4>>2]|0,o[J>>2]|0|0}function x3(p){return p=p|0,(p&255)<<24|(p>>8&255)<<16|(p>>16&255)<<8|p>>>24|0}function Iz(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,a$e[p&1](y|0,w|0,G|0,J|0,U|0)}function FLe(p,y,w){p=p|0,y=y|0,w=ke(w),c$e[p&1](y|0,ke(w))}function ZLe(p,y,w){p=p|0,y=y|0,w=+w,l$e[p&31](y|0,+w)}function LLe(p,y,w,G){return p=p|0,y=y|0,w=ke(w),G=ke(G),ke(lie[p&0](y|0,ke(w),ke(G)))}function $Y(p,y){p=p|0,y=y|0,DF[p&127](y|0)}function hN(p,y,w){p=p|0,y=y|0,w=w|0,qD[p&31](y|0,w|0)}function n$e(p,y){return p=p|0,y=y|0,mC[p&31](y|0)|0}function jbe(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0,eQ[p&1](y|0,+w,+G,J|0)}function VLe(p,y,w,G){p=p|0,y=y|0,w=+w,G=+G,Zg[p&1](y|0,+w,+G)}function zbe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,KL[p&7](y|0,w|0,G|0)|0}function qbe(p,y,w,G){return p=p|0,y=y|0,w=w|0,G=G|0,+tEe[p&1](y|0,w|0,G|0)}function $be(p,y){return p=p|0,y=y|0,+GP[p&15](y|0)}function PLe(p,y,w){return p=p|0,y=y|0,w=+w,tQ[p&1](y|0,+w)|0}function WLe(p,y,w){return p=p|0,y=y|0,w=w|0,uie[p&15](y|0,w|0)|0}function xx(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=+G,J=+J,U=U|0,rde[p&1](y|0,w|0,+G,+J,U|0)}function G3(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,le=le|0,nde[p&1](y|0,w|0,G|0,J|0,U|0,le|0)}function oie(p,y,w){return p=p|0,y=y|0,w=w|0,+rEe[p&7](y|0,w|0)}function i$e(p){return p=p|0,mz[p&7]()|0}function OLe(p,y,w,G,J,U){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,ide[p&1](y|0,w|0,G|0,J|0,U|0)|0}function MLe(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=+J,gie[p&1](y|0,w|0,G|0,+J)}function HLe(p,y,w,G,J,U,le){p=p|0,y=y|0,w=w|0,G=ke(G),J=J|0,U=ke(U),le=le|0,Cz[p&1](y|0,w|0,ke(G),J|0,ke(U),le|0)}function YLe(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,UT[p&15](y|0,w|0,G|0)}function QLe(p){p=p|0,nEe[p&0]()}function s$e(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,Aie[p&15](y|0,w|0,+G)}function fPt(p,y,w){return p=p|0,y=+y,w=+w,ULe[p&1](+y,+w)|0}function IPt(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,Ir[p&15](y|0,w|0,G|0,J|0)}function hPt(p,y,w,G,J){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,jt(0)}function mPt(p,y){p=p|0,y=ke(y),jt(1)}function Gx(p,y){p=p|0,y=+y,jt(2)}function CPt(p,y,w){return p=p|0,y=ke(y),w=ke(w),jt(3),As}function td(p){p=p|0,jt(4)}function ede(p,y){p=p|0,y=y|0,jt(5)}function NF(p){return p=p|0,jt(6),0}function _Pt(p,y,w,G){p=p|0,y=+y,w=+w,G=G|0,jt(7)}function yPt(p,y,w){p=p|0,y=+y,w=+w,jt(8)}function bPt(p,y,w){return p=p|0,y=y|0,w=w|0,jt(9),0}function EPt(p,y,w){return p=p|0,y=y|0,w=w|0,jt(10),0}function hz(p){return p=p|0,jt(11),0}function SPt(p,y){return p=p|0,y=+y,jt(12),0}function tde(p,y){return p=p|0,y=y|0,jt(13),0}function vPt(p,y,w,G,J){p=p|0,y=y|0,w=+w,G=+G,J=J|0,jt(14)}function BPt(p,y,w,G,J,U){p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,U=U|0,jt(15)}function XLe(p,y){return p=p|0,y=y|0,jt(16),0}function wPt(){return jt(17),0}function JLe(p,y,w,G,J){return p=p|0,y=y|0,w=w|0,G=G|0,J=J|0,jt(18),0}function TPt(p,y,w,G){p=p|0,y=y|0,w=w|0,G=+G,jt(19)}function o$e(p,y,w,G,J,U){p=p|0,y=y|0,w=ke(w),G=G|0,J=ke(J),U=U|0,jt(20)}function eEe(p,y,w){p=p|0,y=y|0,w=w|0,jt(21)}function RPt(){jt(22)}function aie(p,y,w){p=p|0,y=y|0,w=+w,jt(23)}function NPt(p,y){return p=+p,y=+y,jt(24),0}function cie(p,y,w,G){p=p|0,y=y|0,w=w|0,G=G|0,jt(25)}var a$e=[hPt,yAe],c$e=[mPt,$1],l$e=[Gx,xC,$_,r1,gB,hw,GT,b0,e2,yd,ag,Eb,n1,U2,e0,n_,Xp,cE,lE,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx,Gx],lie=[CPt],DF=[td,dz,IA,EI,zd,hge,Pre,pP,BVt,xZe,rU,xne,cbe,dv,xP,IN,Une,ZA,ry,bb,ia,bI,xD,IB,kr,Ve,iv,Aa,rye,tN,fC,yw,iye,mE,l3,Zre,a7,FL,Hre,qFe,xY,vl,dye,Vge,ZL,Qge,b7,JR,une,vye,w7,Nye,_ne,Vye,mVt,yVt,sAe,oAe,Xye,Kye,Ga,qye,P7,Ct,i0,aLe,Sbe,rPt,rz,JL,UL,ELe,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td,td],qD=[ede,lB,ND,kD,UR,lc,fh,rf,yI,Qp,uB,Ih,Np,t2,Ro,AE,AB,Xc,iu,ny,i_,ft,m7,Hge,WY,sS,RVt,mbe,ede,ede,ede,ede],mC=[NF,dU,t1,aA,uE,eh,Wf,Mo,gp,lF,gE,FT,hp,Am,Bb,cVt,nAe,Rne,NP,Fb,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF,NF],eQ=[_Pt,bL],Zg=[yPt,kZe],KL=[bPt,$ne,uPt,Mbe,LD,MD,pZe,dLe],tEe=[EPt,bB],GP=[hz,Dm,Dp,dE,gF,x,L,te,Re,Le,hz,hz,hz,hz,hz,hz],tQ=[SPt,hVt],uie=[tde,t$e,K2,ja,hA,s3,CY,Ige,vge,Cye,$E,GAe,tde,tde,tde,tde],rde=[vPt,t3],nde=[BPt,lg],rEe=[XLe,yL,dr,Ur,mi,Age,XLe,XLe],mz=[wPt,Vi,N_,RD,eU,NZe,jye,oz],ide=[JLe,Yp],gie=[TPt,A3],Cz=[o$e,ZT],UT=[eEe,fu,uF,KR,Ou,n3,age,Sd,sVt,cF,PVt,jVt,_Le,eEe,eEe,eEe],nEe=[RPt],Aie=[aie,DD,q_,aE,qS,Ip,Xh,E0,PJ,PL,pVt,aie,aie,aie,aie,aie],ULe=[NPt,SVt],Ir=[cie,lge,p3,HT,Zye,y3,lN,o_,rbe,Wne,Fbe,cie,cie,cie,cie,cie];return{_llvm_bswap_i32:x3,dynCall_idd:fPt,dynCall_i:i$e,_i64Subtract:XT,___udivdi3:k3,dynCall_vif:FLe,setThrew:sd,dynCall_viii:YLe,_bitshift64Lshr:D3,_bitshift64Shl:Kbe,dynCall_vi:$Y,dynCall_viiddi:xx,dynCall_diii:qbe,dynCall_iii:WLe,_memset:fz,_sbrk:kB,_memcpy:Md,__GLOBAL__sub_I_Yoga_cpp:cB,dynCall_vii:hN,___uremdi3:hU,dynCall_vid:ZLe,stackAlloc:Tf,_nbind_init:A2,getTempRet0:il,dynCall_di:$be,dynCall_iid:PLe,setTempRet0:Om,_i64Add:Hg,dynCall_fiff:LLe,dynCall_iiii:zbe,_emscripten_get_global_libc:jAe,dynCall_viid:s$e,dynCall_viiid:MLe,dynCall_viififi:HLe,dynCall_ii:n$e,__GLOBAL__sub_I_Binding_cc:YVt,dynCall_viiii:IPt,dynCall_iiiiii:OLe,stackSave:cm,dynCall_viiiii:Iz,__GLOBAL__sub_I_nbind_cc:Ta,dynCall_vidd:VLe,_free:qne,runPostSets:N3,dynCall_viiiiii:G3,establishStackSpace:rc,_memmove:JT,stackRestore:Fl,_malloc:zne,__GLOBAL__sub_I_common_cc:Jm,dynCall_viddi:jbe,dynCall_dii:oie,dynCall_v:QLe}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function n(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(n){r=n(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var WW=H((wtu,GMn)=>{"use strict";var jUo=kMn(),zUo=xMn(),kIr=!1,xIr=null;zUo({},function(e,t){if(!kIr){if(kIr=!0,e)throw e;xIr=t}});if(!kIr)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");GMn.exports=jUo(xIr.bind,xIr.lib)});var FIr=H((Ttu,GIr)=>{"use strict";var FMn=e=>Number.isNaN(e)?!1:e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141);GIr.exports=FMn;GIr.exports.default=FMn});var LMn=H((Rtu,ZMn)=>{"use strict";ZMn.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var ABe=H((Ntu,ZIr)=>{"use strict";var qUo=q5(),$Uo=FIr(),eKo=LMn(),VMn=e=>{if(typeof e!="string"||e.length===0||(e=qUo(e),e.length===0))return 0;e=e.replace(eKo()," ");let t=0;for(let r=0;r=127&&n<=159||n>=768&&n<=879||(n>65535&&r++,t+=$Uo(n)?2:1)}return t};ZIr.exports=VMn;ZIr.exports.default=VMn});var GMe=H((Dtu,LIr)=>{"use strict";var tKo=ABe(),PMn=e=>{let t=0;for(let r of e.split(` -`))t=Math.max(t,tKo(r));return t};LIr.exports=PMn;LIr.exports.default=PMn});var WMn=H(FMe=>{"use strict";var rKo=FMe&&FMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FMe,"__esModule",{value:!0});var nKo=rKo(GMe()),VIr={};FMe.default=e=>{if(e.length===0)return{width:0,height:0};if(VIr[e])return VIr[e];let t=nKo.default(e),r=e.split(` -`).length;return VIr[e]={width:t,height:r},{width:t,height:r}}});var OMn=H(ZMe=>{"use strict";var iKo=ZMe&&ZMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZMe,"__esModule",{value:!0});var C_=iKo(WW()),sKo=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?C_.default.POSITION_TYPE_ABSOLUTE:C_.default.POSITION_TYPE_RELATIVE)},oKo=(e,t)=>{"marginLeft"in t&&e.setMargin(C_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(C_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(C_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(C_.default.EDGE_BOTTOM,t.marginBottom||0)},aKo=(e,t)=>{"paddingLeft"in t&&e.setPadding(C_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(C_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(C_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(C_.default.EDGE_BOTTOM,t.paddingBottom||0)},cKo=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(C_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(C_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(C_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(C_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(C_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(C_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(C_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(C_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(C_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(C_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(C_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(C_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(C_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(C_.default.JUSTIFY_SPACE_AROUND))},lKo=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},uKo=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?C_.default.DISPLAY_FLEX:C_.default.DISPLAY_NONE)},gKo=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(C_.default.EDGE_TOP,r),e.setBorder(C_.default.EDGE_BOTTOM,r),e.setBorder(C_.default.EDGE_LEFT,r),e.setBorder(C_.default.EDGE_RIGHT,r)}};ZMe.default=(e,t={})=>{sKo(e,t),oKo(e,t),aKo(e,t),cKo(e,t),lKo(e,t),uKo(e,t),gKo(e,t)}});var OIr=H((Gtu,HMn)=>{"use strict";var LMe=ABe(),AKo=q5(),dKo=llt(),WIr=new Set(["\x1B","\x9B"]),pKo=39,MMn=e=>`${WIr.values().next().value}[${e}m`,fKo=e=>e.split(" ").map(t=>LMe(t)),PIr=(e,t,r)=>{let n=[...t],a=!1,o=LMe(AKo(e[e.length-1]));for(let[l,A]of n.entries()){let f=LMe(A);if(o+f<=r?e[e.length-1]+=A:(e.push(A),o=0),WIr.has(A))a=!0;else if(a&&A==="m"){a=!1;continue}a||(o+=f,o===r&&l0&&e.length>1&&(e[e.length-2]+=e.pop())},IKo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(LMe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},hKo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a="",o,l=fKo(e),A=[""];for(let[f,I]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let C=LMe(A[A.length-1]);if(f!==0&&(C>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),C=0),(C>0||r.trim===!1)&&(A[A.length-1]+=" ",C++)),r.hard&&l[f]>t){let b=t-C,E=1+Math.floor((l[f]-b-1)/t);Math.floor((l[f]-1)/t)t&&C>0&&l[f]>0){if(r.wordWrap===!1&&Ct&&r.wordWrap===!1){PIr(A,I,t);continue}A[A.length-1]+=I}r.trim!==!1&&(A=A.map(IKo)),n=A.join(` -`);for(let[f,I]of[...n].entries()){if(a+=I,WIr.has(I)){let b=parseFloat(/\d[^m]*/.exec(n.slice(f,f+4)));o=b===pKo?null:b}let C=dKo.codes.get(Number(o));o&&C&&(n[f+1]===` -`?a+=MMn(C):I===` -`&&(a+=MMn(o)))}return a};HMn.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` -`).split(` -`).map(n=>hKo(n,t,r)).join(` -`)});var XMn=H((Ftu,QMn)=>{"use strict";var YMn="[\uD800-\uDBFF][\uDC00-\uDFFF]",mKo=e=>e&&e.exact?new RegExp(`^${YMn}$`):new RegExp(YMn,"g");QMn.exports=mKo});var Rpt=H((Ztu,jMn)=>{"use strict";var CKo=FIr(),_Ko=XMn(),JMn=llt(),KMn=["\x1B","\x9B"],Tpt=e=>`${KMn[0]}[${e}m`,UMn=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let l=JMn.codes.get(parseInt(a,10));if(l){let A=e.indexOf(l.toString());A>=0?e.splice(A,1):n.push(Tpt(t?l:o))}else if(t){n.push(Tpt(0));break}else n.push(Tpt(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=Tpt(JMn.codes.get(parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")};jMn.exports=(e,t,r)=>{let n=[...e.normalize()],a=[];r=typeof r=="number"?r:n.length;let o=!1,l,A=0,f="";for(let[I,C]of n.entries()){let b=!1;if(KMn.includes(C)){let E=/\d[^m]*/.exec(e.slice(I,I+18));l=E&&E.length>0?E[0]:void 0,At&&A<=r)f+=C;else if(A===t&&!o&&l!==void 0)f=UMn(a);else if(A>=r){f+=UMn(a,!0,l);break}}return f}});var MIr=H((Ltu,zMn)=>{"use strict";var Ooe=Rpt(),yKo=ABe();function Npt(e,t,r){if(e.charAt(t)===" ")return t;for(let n=1;n<=3;n++)if(r){if(e.charAt(t+n)===" ")return t+n}else if(e.charAt(t-n)===" ")return t-n;return t}zMn.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:n,space:a,preferTruncationOnSpace:o}=r,l="\u2026",A=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let f=yKo(e);if(f<=t)return e;if(n==="start"){if(o){let I=Npt(e,f-t+1,!0);return l+Ooe(e,I,f).trim()}return a===!0&&(l+=" ",A=2),l+Ooe(e,f-t+A,f)}if(n==="middle"){a===!0&&(l=" "+l+" ",A=3);let I=Math.floor(t/2);if(o){let C=Npt(e,I),b=Npt(e,f-(t-I)+1,!0);return Ooe(e,0,C)+l+Ooe(e,b,f).trim()}return Ooe(e,0,I)+l+Ooe(e,f-(t-I)+A,f)}if(n==="end"){if(o){let I=Npt(e,t-1);return Ooe(e,0,I)+l}return a===!0&&(l=" "+l,A=2),Ooe(e,0,t-A)+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}});var YIr=H(VMe=>{"use strict";var qMn=VMe&&VMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VMe,"__esModule",{value:!0});var bKo=qMn(OIr()),EKo=qMn(MIr()),HIr={};VMe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(HIr[n])return HIr[n];let a=e;if(r==="wrap"&&(a=bKo.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=EKo.default(e,t,{position:o})}return HIr[n]=a,a}});var XIr=H(QIr=>{"use strict";Object.defineProperty(QIr,"__esModule",{value:!0});var $Mn=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=$Mn(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};QIr.default=$Mn});var JIr=H(Z1=>{"use strict";var PMe=Z1&&Z1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Z1,"__esModule",{value:!0});Z1.setTextNodeValue=Z1.createTextNode=Z1.setStyle=Z1.setAttribute=Z1.removeChildNode=Z1.insertBeforeNode=Z1.appendChildNode=Z1.createNode=Z1.TEXT_NAME=void 0;var SKo=PMe(WW()),eHn=PMe(WMn()),vKo=PMe(OMn()),BKo=PMe(YIr()),wKo=PMe(XIr());Z1.TEXT_NAME="#text";Z1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:SKo.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(TKo.bind(null,r))),r};Z1.appendChildNode=(e,t)=>{var r;t.parentNode&&Z1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Dpt(e)};Z1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&Z1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Dpt(e)};Z1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&Dpt(e)};Z1.setAttribute=(e,t,r)=>{e.attributes[t]=r};Z1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&vKo.default(e.yogaNode,t)};Z1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return Z1.setTextNodeValue(t,e),t};var TKo=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:wKo.default(e),o=eHn.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=BKo.default(a,t,l);return eHn.default(A)},tHn=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:tHn(e.parentNode)},Dpt=e=>{let t=tHn(e);t?.markDirty()};Z1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,Dpt(e)}});var oHn=H(WMe=>{"use strict";var sHn=WMe&&WMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WMe,"__esModule",{value:!0});var rHn=kMe(),RKo=sHn(BMn()),nHn=sHn(WW()),mG=JIr(),iHn=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};WMe.default=RKo.default({schedulePassiveEffects:rHn.unstable_scheduleCallback,cancelPassiveEffects:rHn.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=mG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?mG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:mG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return mG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{mG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{mG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(nHn.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(nHn.default.DISPLAY_FLEX)},appendInitialChild:mG.appendChildNode,appendChild:mG.appendChildNode,insertBefore:mG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:mG.appendChildNode,insertInContainerBefore:mG.insertBeforeNode,removeChildFromContainer:(e,t)=>{mG.removeChildNode(e,t),iHn(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?mG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:mG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{mG.setTextNodeValue(e,r)},removeChild:(e,t)=>{mG.removeChildNode(e,t),iHn(t.yogaNode)}})});var UIr=H((Mtu,aHn)=>{"use strict";aHn.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var cHn=H(OMe=>{"use strict";var NKo=OMe&&OMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OMe,"__esModule",{value:!0});var kpt=NKo(WW());OMe.default=e=>e.getComputedWidth()-e.getComputedPadding(kpt.default.EDGE_LEFT)-e.getComputedPadding(kpt.default.EDGE_RIGHT)-e.getComputedBorder(kpt.default.EDGE_LEFT)-e.getComputedBorder(kpt.default.EDGE_RIGHT)});var lHn=H((Ytu,DKo)=>{DKo.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var jIr=H((Qtu,KIr)=>{"use strict";var uHn=lHn();KIr.exports=uHn;KIr.exports.default=uHn});var zIr=H(HMe=>{"use strict";var kKo=HMe&&HMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HMe,"__esModule",{value:!0});var MMe=kKo(VK()),xKo=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,GKo=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,xpt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);HMe.default=(e,t,r)=>{if(!t)return e;if(t in MMe.default){let a=xpt(t,r);return MMe.default[a](e)}if(t.startsWith("#")){let a=xpt("hex",r);return MMe.default[a](t)(e)}if(t.startsWith("ansi")){let a=GKo.exec(t);if(!a)return e;let o=xpt(a[1],r),l=Number(a[2]);return MMe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=xKo.exec(t);if(!a)return e;let o=xpt(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return MMe.default[o](l,A,f)(e)}return e}});var AHn=H(YMe=>{"use strict";var gHn=YMe&&YMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YMe,"__esModule",{value:!0});var FKo=gHn(jIr()),qIr=gHn(zIr());YMe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=FKo.default[r.style.borderStyle],f=qIr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=(qIr.default(A.vertical,l,"foreground")+` -`).repeat(o-2),C=qIr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var pHn=H(QMe=>{"use strict";var TIe=QMe&&QMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QMe,"__esModule",{value:!0});var ZKo=TIe(WW()),LKo=TIe(GMe()),VKo=TIe(UIr()),PKo=TIe(YIr()),WKo=TIe(cHn()),OKo=TIe(XIr()),MKo=TIe(AHn()),HKo=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` -`.repeat(o)+VKo.default(t,a)}return t},dHn=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===ZKo.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=OKo.default(e);if(E.length>0){let N=LKo.default(E),B=WKo.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=PKo.default(E,B,F)}E=HKo(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&MKo.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)dHn(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};QMe.default=dHn});var hHn=H(XMe=>{"use strict";var IHn=XMe&&XMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XMe,"__esModule",{value:!0});var fHn=IHn(Rpt()),YKo=IHn(ABe()),$Ir=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` -`),height:t.length}}};XMe.default=$Ir});var _Hn=H(JMe=>{"use strict";var ehr=JMe&&JMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JMe,"__esModule",{value:!0});var QKo=ehr(WW()),mHn=ehr(pHn()),CHn=ehr(hHn());JMe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,QKo.default.DIRECTION_LTR);let n=new CHn.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});mHn.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new CHn.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),mHn.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var rhr=H((ztu,EHn)=>{"use strict";var yHn=wt("stream"),bHn=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],thr={},XKo=e=>{let t=new yHn.PassThrough,r=new yHn.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let n=new console.Console(t,r);for(let a of bHn)thr[a]=console[a],console[a]=n[a];return()=>{for(let a of bHn)console[a]=thr[a];thr={}}};EHn.exports=XKo});var ihr=H(nhr=>{"use strict";Object.defineProperty(nhr,"__esModule",{value:!0});nhr.default=new WeakMap});var ohr=H(shr=>{"use strict";Object.defineProperty(shr,"__esModule",{value:!0});var JKo=Ec(),SHn=JKo.createContext({exit:()=>{}});SHn.displayName="InternalAppContext";shr.default=SHn});var chr=H(ahr=>{"use strict";Object.defineProperty(ahr,"__esModule",{value:!0});var UKo=Ec(),vHn=UKo.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});vHn.displayName="InternalStdinContext";ahr.default=vHn});var uhr=H(lhr=>{"use strict";Object.defineProperty(lhr,"__esModule",{value:!0});var KKo=Ec(),BHn=KKo.createContext({stdout:void 0,write:()=>{}});BHn.displayName="InternalStdoutContext";lhr.default=BHn});var Ahr=H(ghr=>{"use strict";Object.defineProperty(ghr,"__esModule",{value:!0});var jKo=Ec(),wHn=jKo.createContext({stderr:void 0,write:()=>{}});wHn.displayName="InternalStderrContext";ghr.default=wHn});var Gpt=H(dhr=>{"use strict";Object.defineProperty(dhr,"__esModule",{value:!0});var zKo=Ec(),THn=zKo.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});THn.displayName="InternalFocusContext";dhr.default=THn});var NHn=H((iru,RHn)=>{"use strict";var qKo=/[|\\{}()[\]^$+*?.-]/g;RHn.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(qKo,"\\$&")}});var Fpt=H((sru,xHn)=>{"use strict";var $Ko=NHn(),e8o=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",kHn=[].concat(wt("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));kHn.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var phr=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=e8o),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,t8o(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...kHn]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` -`)),!/^\s*at /.test(t[0])&&/^\s*at /.test(t[1])&&(t=t.slice(1));let n=!1,a=null,o=[];return t.forEach(l=>{if(l=l.replace(/\\/g,"/"),this._internals.some(f=>f.test(l)))return;let A=/^\s*at /.test(l);n?l=l.trimEnd().replace(/^(\s+)at /,"$1"):(l=l.trim(),A&&(l=l.slice(3))),l=l.replace(`${this._cwd}/`,""),l&&(A?(a&&(o.push(a),a=null),o.push(l)):(n=!0,a=l))}),o.map(l=>`${r}${l} -`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:n}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=n,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:n,stackTraceLimit:a}=Error;Error.prepareStackTrace=(A,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:l}=o;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:a}),l}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let n={line:r.getLineNumber(),column:r.getColumnNumber()};DHn(n,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(n,"constructor",{value:!0,configurable:!0}),r.isEval()&&(n.evalOrigin=r.getEvalOrigin()),r.isNative()&&(n.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(n.type=a);let o=r.getFunctionName();o&&(n.function=o);let l=r.getMethodName();return l&&o!==l&&(n.method=l),n}parseLine(t){let r=t&&t.match(r8o);if(!r)return null;let n=r[1]==="new",a=r[2],o=r[3],l=r[4],A=Number(r[5]),f=Number(r[6]),I=r[7],C=r[8],b=r[9],E=r[10]==="native",N=r[11]===")",B,F={};if(C&&(F.line=Number(C)),b&&(F.column=Number(b)),N&&I){let Q=0;for(let X=I.length-1;X>0;X--)if(I.charAt(X)===")")Q++;else if(I.charAt(X)==="("&&I.charAt(X-1)===" "&&(Q--,Q===-1&&I.charAt(X-1)===" ")){let ae=I.slice(0,X-1);I=I.slice(X+1),a+=` (${ae}`;break}}if(a){let Q=a.match(n8o);Q&&(a=Q[1],B=Q[2])}return DHn(F,I,this._cwd),n&&Object.defineProperty(F,"constructor",{value:!0,configurable:!0}),o&&(F.evalOrigin=o,F.evalLine=A,F.evalColumn=f,F.evalFile=l&&l.replace(/\\/g,"/")),E&&(F.native=!0),a&&(F.function=a),B&&a!==B&&(F.method=B),F}};function DHn(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function t8o(e){if(e.length===0)return[];let t=e.map(r=>$Ko(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var r8o=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),n8o=/^(.*?) \[as (.*?)\]$/;xHn.exports=phr});var FHn=H((oru,GHn)=>{"use strict";GHn.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var fhr=H((aru,ZHn)=>{"use strict";var i8o=FHn(),s8o=(e,t)=>{let r=[],n=e-t,a=e+t;for(let o=n;o<=a;o++)r.push(o);return r};ZHn.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=i8o(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},s8o(t,r.around).filter(n=>e[n-1]!==void 0).map(n=>({line:n,value:e[n-1]}))}});var Zpt=H(yX=>{"use strict";var o8o=yX&&yX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),a8o=yX&&yX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),c8o=yX&&yX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&o8o(t,e,r);return a8o(t,e),t},l8o=yX&&yX.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=l8o(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return LHn.default.createElement("ink-box",{ref:t,style:a},r)});Ihr.displayName="Box";Ihr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};yX.default=Ihr});var Chr=H(UMe=>{"use strict";var hhr=UMe&&UMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UMe,"__esModule",{value:!0});var u8o=hhr(Ec()),dBe=hhr(VK()),VHn=hhr(zIr()),mhr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=dBe.default.dim(b)),e&&(b=VHn.default(b,e,"foreground")),t&&(b=VHn.default(b,t,"background")),n&&(b=dBe.default.bold(b)),a&&(b=dBe.default.italic(b)),o&&(b=dBe.default.underline(b)),l&&(b=dBe.default.strikethrough(b)),A&&(b=dBe.default.inverse(b)),b);return u8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};mhr.displayName="Text";mhr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};UMe.default=mhr});var MHn=H(bX=>{"use strict";var g8o=bX&&bX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),A8o=bX&&bX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),d8o=bX&&bX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&g8o(t,e,r);return A8o(t,e),t},KMe=bX&&bX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bX,"__esModule",{value:!0});var PHn=d8o(wt("fs")),wR=KMe(Ec()),WHn=KMe(Fpt()),p8o=KMe(fhr()),C$=KMe(Zpt()),g8=KMe(Chr()),OHn=new WHn.default({cwd:process.cwd(),internals:WHn.default.nodeInternals()}),f8o=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?OHn.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&PHn.existsSync(r.file)){let o=PHn.readFileSync(r.file,"utf8");if(n=p8o.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return wR.default.createElement(C$.default,{flexDirection:"column",padding:1},wR.default.createElement(C$.default,null,wR.default.createElement(g8.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),wR.default.createElement(g8.default,null," ",e.message)),r&&wR.default.createElement(C$.default,{marginTop:1},wR.default.createElement(g8.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&wR.default.createElement(C$.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>wR.default.createElement(C$.default,{key:o},wR.default.createElement(C$.default,{width:a+1},wR.default.createElement(g8.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),wR.default.createElement(g8.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&wR.default.createElement(C$.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let l=OHn.parseLine(o);return l?wR.default.createElement(C$.default,{key:o},wR.default.createElement(g8.default,{dimColor:!0},"- "),wR.default.createElement(g8.default,{dimColor:!0,bold:!0},l.function),wR.default.createElement(g8.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):wR.default.createElement(C$.default,{key:o},wR.default.createElement(g8.default,{dimColor:!0},"- "),wR.default.createElement(g8.default,{dimColor:!0,bold:!0},o))})))};bX.default=f8o});var YHn=H(EX=>{"use strict";var I8o=EX&&EX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),h8o=EX&&EX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),m8o=EX&&EX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&I8o(t,e,r);return h8o(t,e),t},NIe=EX&&EX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EX,"__esModule",{value:!0});var RIe=m8o(Ec()),HHn=NIe(lBe()),C8o=NIe(ohr()),_8o=NIe(chr()),y8o=NIe(uhr()),b8o=NIe(Ahr()),E8o=NIe(Gpt()),S8o=NIe(MHn()),v8o=" ",B8o="\x1B[Z",w8o="\x1B",Lpt=class extends RIe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===w8o&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===v8o&&this.focusNext(),t===B8o&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return RIe.default.createElement(C8o.default.Provider,{value:{exit:this.handleExit}},RIe.default.createElement(_8o.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},RIe.default.createElement(y8o.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},RIe.default.createElement(b8o.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},RIe.default.createElement(E8o.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?RIe.default.createElement(S8o.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){HHn.default.hide(this.props.stdout)}componentWillUnmount(){HHn.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};EX.default=Lpt;Lpt.displayName="InternalApp"});var JHn=H(SX=>{"use strict";var T8o=SX&&SX.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),R8o=SX&&SX.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),N8o=SX&&SX.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&T8o(t,e,r);return R8o(t,e),t},vX=SX&&SX.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SX,"__esModule",{value:!0});var D8o=vX(Ec()),QHn=AIr(),k8o=vX(cMn()),x8o=vX(vMe()),G8o=vX(hIr()),F8o=vX(mIr()),_hr=vX(oHn()),Z8o=vX(_Hn()),L8o=vX(mpt()),V8o=vX(rhr()),P8o=N8o(JIr()),W8o=vX(ihr()),O8o=vX(YHn()),pBe=process.env.CI==="false"?!1:G8o.default,XHn=()=>{},yhr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=Z8o.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(pBe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(x8o.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},F8o.default(this),this.options=t,this.rootNode=P8o.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:QHn.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=k8o.default.create(t.stdout),this.throttledLog=t.debug?this.log:QHn.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=_hr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=L8o.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),pBe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=D8o.default.createElement(O8o.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);_hr.default.updateContainer(r,this.container,null,XHn)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(pBe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(pBe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),pBe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,_hr.default.updateContainer(null,this.container,null,XHn),W8o.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!pBe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=V8o.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};SX.default=yhr});var KHn=H(jMe=>{"use strict";var UHn=jMe&&jMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jMe,"__esModule",{value:!0});var M8o=UHn(JHn()),Vpt=UHn(ihr()),H8o=wt("stream"),Y8o=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},Q8o(t)),n=X8o(r.stdout,()=>new M8o.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>Vpt.default.delete(r.stdout),clear:n.clear}};jMe.default=Y8o;var Q8o=(e={})=>e instanceof H8o.Stream?{stdout:e,stdin:process.stdin}:e,X8o=(e,t)=>{let r;return Vpt.default.has(e)?r=Vpt.default.get(e):(r=t(),Vpt.default.set(e,r)),r}});var zHn=H(_$=>{"use strict";var J8o=_$&&_$.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),U8o=_$&&_$.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),K8o=_$&&_$.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&J8o(t,e,r);return U8o(t,e),t};Object.defineProperty(_$,"__esModule",{value:!0});var zMe=K8o(Ec()),jHn=e=>{let{items:t,children:r,style:n}=e,[a,o]=zMe.useState(0),l=zMe.useMemo(()=>t.slice(a),[t,a]);zMe.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=zMe.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return zMe.default.createElement("ink-box",{internal_static:!0,style:f},A)};jHn.displayName="Static";_$.default=jHn});var $Hn=H(qMe=>{"use strict";var j8o=qMe&&qMe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qMe,"__esModule",{value:!0});var z8o=j8o(Ec()),qHn=({children:e,transform:t})=>e==null?null:z8o.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);qHn.displayName="Transform";qMe.default=qHn});var tYn=H($Me=>{"use strict";var q8o=$Me&&$Me.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($Me,"__esModule",{value:!0});var $8o=q8o(Ec()),eYn=({count:e=1})=>$8o.default.createElement("ink-text",null,` -`.repeat(e));eYn.displayName="Newline";$Me.default=eYn});var iYn=H(eHe=>{"use strict";var rYn=eHe&&eHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eHe,"__esModule",{value:!0});var ejo=rYn(Ec()),tjo=rYn(Zpt()),nYn=()=>ejo.default.createElement(tjo.default,{flexGrow:1});nYn.displayName="Spacer";eHe.default=nYn});var Ppt=H(tHe=>{"use strict";var rjo=tHe&&tHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tHe,"__esModule",{value:!0});var njo=Ec(),ijo=rjo(chr()),sjo=()=>njo.useContext(ijo.default);tHe.default=sjo});var oYn=H(rHe=>{"use strict";var ojo=rHe&&rHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rHe,"__esModule",{value:!0});var sYn=Ec(),ajo=ojo(Ppt()),cjo=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=ajo.default();sYn.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),sYn.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};rHe.default=cjo});var aYn=H(nHe=>{"use strict";var ljo=nHe&&nHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nHe,"__esModule",{value:!0});var ujo=Ec(),gjo=ljo(ohr()),Ajo=()=>ujo.useContext(gjo.default);nHe.default=Ajo});var cYn=H(iHe=>{"use strict";var djo=iHe&&iHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iHe,"__esModule",{value:!0});var pjo=Ec(),fjo=djo(uhr()),Ijo=()=>pjo.useContext(fjo.default);iHe.default=Ijo});var lYn=H(sHe=>{"use strict";var hjo=sHe&&sHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sHe,"__esModule",{value:!0});var mjo=Ec(),Cjo=hjo(Ahr()),_jo=()=>mjo.useContext(Cjo.default);sHe.default=_jo});var gYn=H(aHe=>{"use strict";var uYn=aHe&&aHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aHe,"__esModule",{value:!0});var oHe=Ec(),yjo=uYn(Gpt()),bjo=uYn(Ppt()),Ejo=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=bjo.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=oHe.useContext(yjo.default),b=oHe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return oHe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),oHe.useEffect(()=>{e?f(b):I(b)},[e,b]),oHe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};aHe.default=Ejo});var AYn=H(cHe=>{"use strict";var Sjo=cHe&&cHe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cHe,"__esModule",{value:!0});var vjo=Ec(),Bjo=Sjo(Gpt()),wjo=()=>{let e=vjo.useContext(Bjo.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};cHe.default=wjo});var dYn=H(bhr=>{"use strict";Object.defineProperty(bhr,"__esModule",{value:!0});bhr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var Al=H(wk=>{"use strict";Object.defineProperty(wk,"__esModule",{value:!0});var Tjo=KHn();Object.defineProperty(wk,"render",{enumerable:!0,get:function(){return Tjo.default}});var Rjo=Zpt();Object.defineProperty(wk,"Box",{enumerable:!0,get:function(){return Rjo.default}});var Njo=Chr();Object.defineProperty(wk,"Text",{enumerable:!0,get:function(){return Njo.default}});var Djo=zHn();Object.defineProperty(wk,"Static",{enumerable:!0,get:function(){return Djo.default}});var kjo=$Hn();Object.defineProperty(wk,"Transform",{enumerable:!0,get:function(){return kjo.default}});var xjo=tYn();Object.defineProperty(wk,"Newline",{enumerable:!0,get:function(){return xjo.default}});var Gjo=iYn();Object.defineProperty(wk,"Spacer",{enumerable:!0,get:function(){return Gjo.default}});var Fjo=oYn();Object.defineProperty(wk,"useInput",{enumerable:!0,get:function(){return Fjo.default}});var Zjo=aYn();Object.defineProperty(wk,"useApp",{enumerable:!0,get:function(){return Zjo.default}});var Ljo=Ppt();Object.defineProperty(wk,"useStdin",{enumerable:!0,get:function(){return Ljo.default}});var Vjo=cYn();Object.defineProperty(wk,"useStdout",{enumerable:!0,get:function(){return Vjo.default}});var Pjo=lYn();Object.defineProperty(wk,"useStderr",{enumerable:!0,get:function(){return Pjo.default}});var Wjo=gYn();Object.defineProperty(wk,"useFocus",{enumerable:!0,get:function(){return Wjo.default}});var Ojo=AYn();Object.defineProperty(wk,"useFocusManager",{enumerable:!0,get:function(){return Ojo.default}});var Mjo=dYn();Object.defineProperty(wk,"measureElement",{enumerable:!0,get:function(){return Mjo.default}})});var fYn=H(Wpt=>{"use strict";var Hjo=Ec(),Yjo=Symbol.for("react.element"),Qjo=Symbol.for("react.fragment"),Xjo=Object.prototype.hasOwnProperty,Jjo=Hjo.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Ujo={key:!0,ref:!0,__self:!0,__source:!0};function pYn(e,t,r){var n,a={},o=null,l=null;r!==void 0&&(o=""+r),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)Xjo.call(t,n)&&!Ujo.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)a[n]===void 0&&(a[n]=t[n]);return{$$typeof:Yjo,type:e,key:o,ref:l,props:a,_owner:Jjo.current}}Wpt.Fragment=Qjo;Wpt.jsx=pYn;Wpt.jsxs=pYn});var Pc=H((Tru,IYn)=>{"use strict";IYn.exports=fYn()});var DYn=H(kIe=>{"use strict";var{promisify:s6o}=wt("util"),NYn=wt("fs");async function Thr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await s6o(NYn[e])(r))[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function Rhr(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return NYn[e](r)[t]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}kIe.isFile=Thr.bind(null,"stat","isFile");kIe.isDirectory=Thr.bind(null,"stat","isDirectory");kIe.isSymlink=Thr.bind(null,"lstat","isSymbolicLink");kIe.isFileSync=Rhr.bind(null,"statSync","isFile");kIe.isDirectorySync=Rhr.bind(null,"statSync","isDirectory");kIe.isSymlinkSync=Rhr.bind(null,"lstatSync","isSymbolicLink")});var ZYn=H((anu,Nhr)=>{"use strict";var xIe=wt("path"),kYn=DYn(),xYn=e=>e.length>1?`{${e.join(",")}}`:e[0],GYn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return xIe.isAbsolute(r)?r:xIe.join(t,r)},o6o=(e,t)=>xIe.extname(e)?`**/${e}`:`**/${e}.${xYn(t)}`,FYn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>xIe.posix.join(e,o6o(r,t.extensions))):t.files?t.files.map(r=>xIe.posix.join(e,`**/${r}`)):t.extensions?[xIe.posix.join(e,`**/*.${xYn(t.extensions)}`)]:[xIe.posix.join(e,"**")]};Nhr.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async n=>await kYn.isDirectory(GYn(n,t.cwd))?FYn(n,t):n));return[].concat.apply([],r)};Nhr.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(n=>kYn.isDirectorySync(GYn(n,t.cwd))?FYn(n,t):n);return[].concat.apply([],r)}});var lHe=H((cnu,YYn)=>{function LYn(e){return Array.isArray(e)?e:[e]}var xhr="",VYn=" ",Dhr="\\",a6o=/^\s+$/,c6o=/(?:[^\\]|^)\\$/,l6o=/^\\!/,u6o=/^\\#/,g6o=/\r?\n/g,A6o=/^\.*\/|^\.+$/,khr="/",OYn="node-ignore";typeof Symbol<"u"&&(OYn=Symbol.for("node-ignore"));var PYn=OYn,d6o=(e,t,r)=>Object.defineProperty(e,t,{value:r}),p6o=/([0-z])-([0-z])/g,MYn=()=>!1,f6o=e=>e.replace(p6o,(t,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?t:xhr),I6o=e=>{let{length:t}=e;return e.slice(0,t-t%2)},h6o=[[/^\uFEFF/,()=>xhr],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?VYn:xhr)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+VYn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let n=r.replace(/\\\*/g,"[^\\/]*");return t+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>Dhr],[/\\\\/g,()=>Dhr],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,n,a)=>t===Dhr?`\\[${r}${I6o(n)}${a}`:a==="]"&&n.length%2===0?`[${f6o(r)}${n}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],WYn=Object.create(null),m6o=(e,t)=>{let r=WYn[e];return r||(r=h6o.reduce((n,[a,o])=>n.replace(a,o.bind(e)),e),WYn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},Zhr=e=>typeof e=="string",C6o=e=>e&&Zhr(e)&&!a6o.test(e)&&!c6o.test(e)&&e.indexOf("#")!==0,_6o=e=>e.split(g6o),Ghr=class{constructor(t,r,n,a){this.origin=t,this.pattern=r,this.negative=n,this.regex=a}},y6o=(e,t)=>{let r=e,n=!1;e.indexOf("!")===0&&(n=!0,e=e.substr(1)),e=e.replace(l6o,"!").replace(u6o,"#");let a=m6o(e,t);return new Ghr(r,e,n,a)},b6o=(e,t)=>{throw new t(e)},y$=(e,t,r)=>Zhr(e)?e?y$.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),HYn=e=>A6o.test(e);y$.isNotRelative=HYn;y$.convert=e=>e;var Fhr=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:n=!1}={}){d6o(this,PYn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[PYn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(C6o(t)){let r=y6o(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,LYn(Zhr(t)?_6o(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let n=!1,a=!1;return this._rules.forEach(o=>{let{negative:l}=o;if(a===l&&n!==a||l&&!n&&!a&&!r)return;o.regex.test(t)&&(n=!l,a=l)}),{ignored:n,unignored:a}}_test(t,r,n,a){let o=t&&y$.convert(t);return y$(o,t,this._allowRelativePaths?MYn:b6o),this._t(o,r,n,a)}_t(t,r,n,a){if(t in r)return r[t];if(a||(a=t.split(khr)),a.pop(),!a.length)return r[t]=this._testOne(t,n);let o=this._t(a.join(khr)+khr,r,n,a);return r[t]=o.ignored?o:this._testOne(t,n)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return LYn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},Hpt=e=>new Fhr(e),E6o=e=>y$(e&&y$.convert(e),e,MYn);Hpt.isPathValid=E6o;Hpt.default=Hpt;YYn.exports=Hpt;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");y$.convert=e;let t=/^[a-z]:\//i;y$.isNotRelative=r=>t.test(r)||HYn(r)}});var Mhr=H(Upt=>{"use strict";Object.defineProperty(Upt,"__esModule",{value:!0});Upt.Context=void 0;var fQn=wt("fs"),Q6o=wt("os"),Ohr=class{constructor(){var t,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,fQn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,fQn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${Q6o.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};Upt.Context=Ohr});var hQn=H(CBe=>{"use strict";Object.defineProperty(CBe,"__esModule",{value:!0});CBe.checkBypass=CBe.getProxyUrl=void 0;function X6o(e){let t=e.protocol==="https:";if(IQn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new Kpt(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new Kpt(`http://${r}`)}else return}CBe.getProxyUrl=X6o;function IQn(e){if(!e.hostname)return!1;let t=e.hostname;if(J6o(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;e.port?n=Number(e.port):e.protocol==="http:"?n=80:e.protocol==="https:"&&(n=443);let a=[e.hostname.toUpperCase()];typeof n=="number"&&a.push(`${a[0]}:${n}`);for(let o of r.split(",").map(l=>l.trim().toUpperCase()).filter(l=>l))if(o==="*"||a.some(l=>l===o||l.endsWith(`.${o}`)||o.startsWith(".")&&l.endsWith(`${o}`)))return!0;return!1}CBe.checkBypass=IQn;function J6o(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var Kpt=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var yQn=H(_Be=>{"use strict";var $nu=wt("net"),U6o=wt("tls"),Hhr=wt("http"),mQn=wt("https"),K6o=wt("events"),eiu=wt("assert"),j6o=wt("util");_Be.httpOverHttp=z6o;_Be.httpsOverHttp=q6o;_Be.httpOverHttps=$6o;_Be.httpsOverHttps=e7o;function z6o(e){var t=new E$(e);return t.request=Hhr.request,t}function q6o(e){var t=new E$(e);return t.request=Hhr.request,t.createSocket=CQn,t.defaultPort=443,t}function $6o(e){var t=new E$(e);return t.request=mQn.request,t}function e7o(e){var t=new E$(e);return t.request=mQn.request,t.createSocket=CQn,t.defaultPort=443,t}function E$(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||Hhr.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(n,a,o,l){for(var A=_Qn(a,o,l),f=0,I=t.requests.length;f=this.maxSockets){o.requests.push(l);return}o.createSocket(l,function(A){A.on("free",f),A.on("close",I),A.on("agentRemove",I),t.onSocket(A);function f(){o.emit("free",A,l)}function I(C){o.removeSocket(A),A.removeListener("free",f),A.removeListener("close",I),A.removeListener("agentRemove",I)}})};E$.prototype.createSocket=function(t,r){var n=this,a={};n.sockets.push(a);var o=Yhr({},n.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Hoe("making CONNECT request");var l=n.request(o);l.useChunkedEncodingByDefault=!1,l.once("response",A),l.once("upgrade",f),l.once("connect",I),l.once("error",C),l.end();function A(b){b.upgrade=!0}function f(b,E,N){process.nextTick(function(){I(b,E,N)})}function I(b,E,N){if(l.removeAllListeners(),E.removeAllListeners(),b.statusCode!==200){Hoe("tunneling socket could not be established, statusCode=%d",b.statusCode),E.destroy();var B=new Error("tunneling socket could not be established, statusCode="+b.statusCode);B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}if(N.length>0){Hoe("got illegal response body from proxy"),E.destroy();var B=new Error("got illegal response body from proxy");B.code="ECONNRESET",t.request.emit("error",B),n.removeSocket(a);return}return Hoe("tunneling connection has established"),n.sockets[n.sockets.indexOf(a)]=E,r(E)}function C(b){l.removeAllListeners(),Hoe(`tunneling socket could not be established, cause=%s -`,b.message,b.stack);var E=new Error("tunneling socket could not be established, cause="+b.message);E.code="ECONNRESET",t.request.emit("error",E),n.removeSocket(a)}};E$.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(a){n.request.onSocket(a)})}};function CQn(e,t){var r=this;E$.prototype.createSocket.call(r,e,function(n){var a=e.request.getHeader("host"),o=Yhr({},r.options,{socket:n,servername:a?a.replace(/:.*$/,""):e.host}),l=U6o.connect(0,o);r.sockets[r.sockets.indexOf(n)]=l,t(l)})}function _Qn(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function Yhr(e){for(var t=1,r=arguments.length;t{bQn.exports=yQn()});var GE=H((niu,SQn)=>{SQn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var Ub=H((iiu,vQn)=>{"use strict";var qB=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},Qhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},Xhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},Jhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},Uhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},Khr=class e extends qB{constructor(t,r,n,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},jhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},zhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},qhr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},$hr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},emr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},tmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},rmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},nmr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},imr=class e extends qB{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},jpt=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},smr=class extends qB{constructor(t){super(t),Error.captureStackTrace(this,jpt),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},omr=class e extends Error{constructor(t,r,n){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},amr=class e extends qB{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},cmr=class e extends qB{constructor(t,r,{headers:n,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}};vQn.exports={HTTPParserError:omr,UndiciError:qB,HeadersTimeoutError:Xhr,HeadersOverflowError:Jhr,BodyTimeoutError:Uhr,RequestContentLengthMismatchError:emr,ConnectTimeoutError:Qhr,ResponseStatusCodeError:Khr,InvalidArgumentError:jhr,InvalidReturnValueError:zhr,RequestAbortedError:qhr,ClientDestroyedError:rmr,ClientClosedError:nmr,InformationalError:$hr,SocketError:imr,NotSupportedError:jpt,ResponseContentLengthMismatchError:tmr,BalancedPoolMissingUpstreamError:smr,ResponseExceededMaxSizeError:amr,RequestRetryError:cmr}});var wQn=H((siu,BQn)=>{"use strict";var zpt={},lmr=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var DQn=wt("assert"),{kDestroyed:kQn,kBodyUsed:TQn}=GE(),{IncomingMessage:t7o}=wt("http"),yBe=wt("stream"),r7o=wt("net"),{InvalidArgumentError:Tk}=Ub(),{Blob:RQn}=wt("buffer"),qpt=wt("util"),{stringify:n7o}=wt("querystring"),{headerNameLowerCasedRecord:i7o}=wQn(),[umr,NQn]=process.versions.node.split(".").map(e=>Number(e));function s7o(){}function gmr(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function xQn(e){return RQn&&e instanceof RQn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function o7o(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=n7o(t);return r&&(e+="?"+r),e}function GQn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new Tk("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new Tk("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new Tk("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new Tk("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new Tk("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new Tk("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new Tk("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new Tk("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),n&&!n.startsWith("/")&&(n=`/${n}`),e=new URL(r+n)}return e}function a7o(e){if(e=GQn(e),e.pathname!=="/"||e.search||e.hash)throw new Tk("invalid url");return e}function c7o(e){if(e[0]==="["){let r=e.indexOf("]");return DQn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function l7o(e){if(!e)return null;DQn.strictEqual(typeof e,"string");let t=c7o(e);return r7o.isIP(t)?"":t}function u7o(e){return JSON.parse(JSON.stringify(e))}function g7o(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function A7o(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function d7o(e){if(e==null)return 0;if(gmr(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(xQn(e))return e.size!=null?e.size:null;if(ZQn(e))return e.byteLength}return null}function Amr(e){return!e||!!(e.destroyed||e[kQn])}function FQn(e){let t=e&&e._readableState;return Amr(e)&&t&&!t.endEmitted}function p7o(e,t){e==null||!gmr(e)||Amr(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===t7o&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,n)=>{r.emit("error",n)},e,t),e.destroyed!==!0&&(e[kQn]=!0))}var f7o=/timeout=(\d+)/;function I7o(e){let t=e.toString().match(f7o);return t?parseInt(t[1],10)*1e3:null}function h7o(e){return i7o[e]||e.toLowerCase()}function m7o(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[n]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function C7o(e){let t=[],r=!1,n=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function w7o(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function T7o(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function R7o(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var N7o=!!String.prototype.toWellFormed;function D7o(e){return N7o?`${e}`.toWellFormed():qpt.toUSVString?qpt.toUSVString(e):`${e}`}function k7o(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var LQn=Object.create(null);LQn.enumerable=!0;VQn.exports={kEnumerableProperty:LQn,nop:s7o,isDisturbed:y7o,isErrored:b7o,isReadable:E7o,toUSVString:D7o,isReadableAborted:FQn,isBlobLike:xQn,parseOrigin:a7o,parseURL:GQn,getServerName:l7o,isStream:gmr,isIterable:A7o,isAsyncIterable:g7o,isDestroyed:Amr,headerNameToString:h7o,parseRawHeaders:C7o,parseHeaders:m7o,parseKeepAliveTimeout:I7o,destroy:p7o,bodyLength:d7o,deepClone:u7o,ReadableStreamFrom:B7o,isBuffer:ZQn,validateHandler:_7o,getSocketInfo:S7o,isFormDataLike:w7o,buildURL:o7o,throwIfAborted:T7o,addAbortListener:R7o,parseRangeHeader:k7o,nodeMajor:umr,nodeMinor:NQn,nodeHasAutoSelectFamily:umr>18||umr===18&&NQn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var OQn=H((aiu,WQn)=>{"use strict";var dmr=Date.now(),Yoe,Qoe=[];function x7o(){dmr=Date.now();let e=Qoe.length,t=0;for(;t0&&dmr>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?Qoe[t]=Qoe.pop():Qoe.pop(),e-=1):t+=1}Qoe.length>0&&PQn()}function PQn(){Yoe&&Yoe.refresh?Yoe.refresh():(clearTimeout(Yoe),Yoe=setTimeout(x7o,1e3),Yoe.unref&&Yoe.unref())}var $pt=class{constructor(t,r,n){this.callback=t,this.delay=r,this.opaque=n,this.state=-2,this.refresh()}refresh(){this.state===-2&&(Qoe.push(this),(!Yoe||Qoe.length===1)&&PQn()),this.state=0}clear(){this.state=-1}};WQn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new $pt(e,t,r)},clearTimeout(e){e instanceof $pt?e.clear():clearTimeout(e)}}});var pmr=H((ciu,MQn)=>{"use strict";var G7o=wt("node:events").EventEmitter,F7o=wt("node:util").inherits;function GIe(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let A=this._lookbehind_size+o;return A>0&&this.emit("info",!1,this._lookbehind,0,A),this._lookbehind.copy(this._lookbehind,0,A,this._lookbehind_size-A),this._lookbehind_size-=A,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+n;for(o=t-n;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var Z7o=wt("node:util").inherits,HQn=wt("node:stream").Readable;function fmr(e){HQn.call(this,e)}Z7o(fmr,HQn);fmr.prototype._read=function(e){};YQn.exports=fmr});var eft=H((uiu,XQn)=>{"use strict";XQn.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var jQn=H((giu,KQn)=>{"use strict";var UQn=wt("node:events").EventEmitter,L7o=wt("node:util").inherits,JQn=eft(),V7o=pmr(),P7o=Buffer.from(`\r -\r -`),W7o=/\r\n/g,O7o=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function bBe(e){UQn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=JQn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=JQn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new V7o(P7o),this.ss.on("info",function(r,n,a,o){n&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=n.toString("binary",a,o)),r&&t._finish()})}L7o(bBe,UQn);bBe.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};bBe.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};bBe.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};bBe.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(W7o),t=e.length,r,n;for(var a=0;a{"use strict";var Imr=wt("node:stream").Writable,M7o=wt("node:util").inherits,H7o=pmr(),zQn=QQn(),Y7o=jQn(),Q7o=45,X7o=Buffer.from("-"),J7o=Buffer.from(`\r -`),U7o=function(){};function BX(e){if(!(this instanceof BX))return new BX(e);if(Imr.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new Y7o(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}M7o(BX,Imr);BX.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else Imr.prototype.emit.apply(this,arguments)};BX.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new zQn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var $Qn=new TextDecoder("utf-8"),eXn=new Map([["utf-8",$Qn],["utf8",$Qn]]);function K7o(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return pHe.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return pHe.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return pHe.utf16le;case"base64":return pHe.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return pHe.other.bind(e)}}var pHe={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),eXn.has(mmr.toString()))try{return eXn.get(mmr).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function j7o(e,t,r){return e&&K7o(r)(e,t)}tXn.exports=j7o});var _mr=H((diu,oXn)=>{"use strict";var rft=tft(),rXn=/%[a-fA-F0-9][a-fA-F0-9]/g,z7o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` -`,"%0A":` -`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function nXn(e){return z7o[e]}var nft=0,iXn=1,Cmr=2,sXn=3;function q7o(e){let t=[],r=nft,n="",a=!1,o=!1,l=0,A="",f=e.length;for(var I=0;I{"use strict";aXn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var AXn=H((fiu,gXn)=>{"use strict";var{Readable:uXn}=wt("node:stream"),{inherits:$7o}=wt("node:util"),ezo=hmr(),lXn=_mr(),tzo=tft(),rzo=cXn(),FIe=eft(),nzo=/^boundary$/i,izo=/^form-data$/i,szo=/^charset$/i,ozo=/^filename$/i,azo=/^name$/i;ift.detect=/^multipart\/form-data/i;function ift(e,t){let r,n,a=this,o,l=t.limits,A=t.isPartAFile||((k,et,ct)=>et==="application/octet-stream"||ct!==void 0),f=t.parsedConType||[],I=t.defCharset||"utf8",C=t.preservePath,b={highWaterMark:t.fileHwm};for(r=0,n=f.length;rX)return a.parser.removeListener("part",k),a.parser.on("part",EBe),e.hitPartsLimit=!0,e.emit("partsLimit"),EBe(et);if(be){let ct=be;ct.emit("end"),ct.removeAllListeners("end")}et.on("header",function(ct){let Me,je,St,At,Yt,Tr,Nr=0;if(ct["content-type"]&&(St=lXn(ct["content-type"][0]),St[0])){for(Me=St[0].toLowerCase(),r=0,n=St.length;rB){let qt=B-Nr+Zr.length;qt>0&&xt.push(Zr.slice(0,qt)),xt.truncated=!0,xt.bytesRead=B,et.removeAllListeners("data"),xt.emit("limit");return}else xt.push(Zr)||(a._pause=!0);xt.bytesRead=Nr},vt=function(){de=void 0,xt.push(null)}}else{if(fe===Q)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),EBe(et);++fe,++ue;let xt="",Zr=!1;be=et,er=function(qt){if((Nr+=qt.length)>N){let Xt=N-(Nr-qt.length);xt+=qt.toString("binary",0,Xt),Zr=!0,et.removeAllListeners("data")}else xt+=qt.toString("binary")},vt=function(){be=void 0,xt.length&&(xt=tzo(xt,"binary",At)),e.emit("field",je,xt,!1,Zr,Yt,Me),--ue,E()}}et._readableState.sync=!1,et.on("data",er),et.on("end",vt)}).on("error",function(ct){de&&de.emit("error",ct)})}).on("error",function(k){e.emit("error",k)}).on("finish",function(){Se=!0,E()})}ift.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};ift.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function EBe(e){e.resume()}function ymr(e){uXn.call(this,e),this.bytesRead=0,this.truncated=!1}$7o(ymr,uXn);ymr.prototype._read=function(e){};gXn.exports=ift});var pXn=H((Iiu,dXn)=>{"use strict";var czo=/\+/g,lzo=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function bmr(){this.buffer=void 0}bmr.prototype.write=function(e){e=e.replace(czo," ");let t="",r=0,n=0,a=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var uzo=pXn(),SBe=tft(),Emr=eft(),gzo=/^charset$/i;sft.detect=/^application\/x-www-form-urlencoded/i;function sft(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=Emr(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=Emr(r,"fieldNameSize",100),this.fieldsLimit=Emr(r,"fields",1/0);let a;for(var o=0,l=n.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(n!==void 0){++this._fields;let A,f=this._keyTrunc;if(n>o?A=this._key+=this.decoder.write(e.toString("binary",o,n)):A=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),A.length&&this.boy.emit("field",SBe(A,"binary",this.charset),"",f,!1),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,n))),this.boy.emit("field",SBe(this._key,"binary",this.charset),SBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",SBe(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",SBe(this._key,"binary",this.charset),SBe(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};fXn.exports=sft});var CXn=H((miu,fHe)=>{"use strict";var Smr=wt("node:stream").Writable,{inherits:Azo}=wt("node:util"),dzo=hmr(),hXn=AXn(),mXn=IXn(),pzo=_mr();function S$(e){if(!(this instanceof S$))return new S$(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},Smr.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}Azo(S$,Smr);S$.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}Smr.prototype.emit.apply(this,arguments)};S$.prototype.getParserByHeaders=function(e){let t=pzo(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(hXn.detect.test(t[0]))return new hXn(this,r);if(mXn.detect.test(t[0]))return new mXn(this,r);throw new Error("Unsupported Content-Type.")};S$.prototype._write=function(e,t,r){this._parser.write(e,r)};fHe.exports=S$;fHe.exports.default=S$;fHe.exports.Busboy=S$;fHe.exports.Dicer=dzo});var Xoe=H((Ciu,wXn)=>{"use strict";var{MessageChannel:fzo,receiveMessageOnPort:Izo}=wt("worker_threads"),_Xn=["GET","HEAD","POST"],hzo=new Set(_Xn),mzo=[101,204,205,304],yXn=[301,302,303,307,308],Czo=new Set(yXn),bXn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],_zo=new Set(bXn),EXn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],yzo=new Set(EXn),bzo=["follow","manual","error"],SXn=["GET","HEAD","OPTIONS","TRACE"],Ezo=new Set(SXn),Szo=["navigate","same-origin","no-cors","cors"],vzo=["omit","same-origin","include"],Bzo=["default","no-store","reload","no-cache","force-cache","only-if-cached"],wzo=["content-encoding","content-language","content-location","content-type","content-length"],Tzo=["half"],vXn=["CONNECT","TRACE","TRACK"],Rzo=new Set(vXn),BXn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Nzo=new Set(BXn),Dzo=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),vBe,kzo=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return vBe||(vBe=new fzo),vBe.port1.unref(),vBe.port2.unref(),vBe.port1.postMessage(t,r?.transfer),Izo(vBe.port2).message};wXn.exports={DOMException:Dzo,structuredClone:kzo,subresource:BXn,forbiddenMethods:vXn,requestBodyHeader:wzo,referrerPolicy:EXn,requestRedirect:bzo,requestMode:Szo,requestCredentials:vzo,requestCache:Bzo,redirectStatus:yXn,corsSafeListedMethods:_Xn,nullBodyStatus:mzo,safeMethods:SXn,badPorts:bXn,requestDuplex:Tzo,subresourceSet:Nzo,badPortsSet:_zo,redirectStatusSet:Czo,corsSafeListedMethodsSet:hzo,safeMethodsSet:Ezo,forbiddenMethodsSet:Rzo,referrerPolicySet:yzo}});var BBe=H((_iu,TXn)=>{"use strict";var vmr=Symbol.for("undici.globalOrigin.1");function xzo(){return globalThis[vmr]}function Gzo(e){if(e===void 0){Object.defineProperty(globalThis,vmr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,vmr,{value:t,writable:!0,enumerable:!1,configurable:!1})}TXn.exports={getGlobalOrigin:xzo,setGlobalOrigin:Gzo}});var EM=H((yiu,ZXn)=>{"use strict";var{redirectStatusSet:Fzo,referrerPolicySet:Zzo,badPortsSet:Lzo}=Xoe(),{getGlobalOrigin:Vzo}=BBe(),{performance:Pzo}=wt("perf_hooks"),{isBlobLike:Wzo,toUSVString:Ozo,ReadableStreamFrom:Mzo}=zC(),wBe=wt("assert"),{isUint8Array:Hzo}=wt("util/types"),RXn=[],oft;try{oft=wt("crypto");let e=["sha256","sha384","sha512"];RXn=oft.getHashes().filter(t=>e.includes(t))}catch{}function NXn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function Yzo(e,t){if(!Fzo.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&kXn(r)&&(r=new URL(r,NXn(e))),r&&!r.hash&&(r.hash=t),r}function hHe(e){return e.urlList[e.urlList.length-1]}function Qzo(e){let t=hHe(e);return FXn(t)&&Lzo.has(t.port)?"blocked":"allowed"}function Xzo(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Jzo(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function Uzo(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function DXn(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(Zzo.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function zzo(){return"allowed"}function qzo(){return"success"}function $zo(){return"success"}function eqo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function tqo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&Tmr(e.origin)&&!Tmr(hHe(e))&&(t=null);break;case"same-origin":aft(e,hHe(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function rqo(e){return Pzo.now()}function nqo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function iqo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function sqo(e){return{referrerPolicy:e.referrerPolicy}}function oqo(e){let t=e.referrerPolicy;wBe(t);let r=null;if(e.referrer==="client"){let A=Vzo();if(!A||A.origin==="null")return"no-referrer";r=new URL(A)}else e.referrer instanceof URL&&(r=e.referrer);let n=Bmr(r),a=Bmr(r,!0);n.toString().length>4096&&(n=a);let o=aft(e,n),l=IHe(n)&&!IHe(e.url);switch(t){case"origin":return a??Bmr(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=hHe(e);return aft(n,A)?n:IHe(n)&&!IHe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function Bmr(e,t){return wBe(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function IHe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function aqo(e,t){if(oft===void 0)return!0;let r=xXn(t);if(r==="no metadata"||r.length===0)return!0;let n=lqo(r),a=uqo(r,n);for(let o of a){let l=o.algo,A=o.hash,f=oft.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),gqo(f,A))return!0}return!1}var cqo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function xXn(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=cqo.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();RXn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function lqo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function pqo(e){return e.controller.state==="aborted"}function fqo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var Rmr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(Rmr,null);function Iqo(e){return Rmr[e.toLowerCase()]??e}function hqo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return wBe(typeof t=="string"),t}var mqo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function Cqo(e,t,r){let n={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:l,target:A}=n,f=A(),I=f.length;if(o>=I)return{value:void 0,done:!0};let C=f[o];return n.index=o+1,_qo(C,l)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,mqo),Object.setPrototypeOf({},a)}function _qo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function yqo(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{let l=await GXn(o);n(l)}catch(l){a(l)}}var wmr=globalThis.ReadableStream;function bqo(e){return wmr||(wmr=wt("stream/web").ReadableStream),e instanceof wmr||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var Eqo=65535;function Sqo(e){return e.lengtht+String.fromCharCode(r),"")}function vqo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function Bqo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));ZXn.exports={isAborted:pqo,isCancelled:fqo,createDeferredPromise:dqo,ReadableStreamFrom:Mzo,toUSVString:Ozo,tryUpgradeRequestToAPotentiallyTrustworthyURL:Aqo,coarsenedSharedCurrentTime:rqo,determineRequestsReferrer:oqo,makePolicyContainer:iqo,clonePolicyContainer:sqo,appendFetchMetadata:eqo,appendRequestOriginHeader:tqo,TAOCheck:$zo,corsCheck:qzo,crossOriginResourcePolicyCheck:zzo,createOpaqueTimingInfo:nqo,setRequestReferrerPolicyOnRedirect:jzo,isValidHTTPToken:DXn,requestBadPort:Qzo,requestCurrentURL:hHe,responseURL:NXn,responseLocationURL:Yzo,isBlobLike:Wzo,isURLPotentiallyTrustworthy:IHe,isValidReasonPhrase:Jzo,sameOrigin:aft,normalizeMethod:Iqo,serializeJavascriptValueToJSONString:hqo,makeIterator:Cqo,isValidHeaderName:Kzo,isValidHeaderValue:kXn,hasOwn:Tqo,isErrorLike:Xzo,fullyReadBody:yqo,bytesMatch:aqo,isReadableStreamLike:bqo,readableStreamClose:vqo,isomorphicEncode:Bqo,isomorphicDecode:Sqo,urlIsLocal:wqo,urlHasHttpsScheme:Tmr,urlIsHttpHttpsScheme:FXn,readAllBytes:GXn,normalizeMethodRecord:Rmr,parseMetadata:xXn}});var v$=H((biu,LXn)=>{"use strict";LXn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var xZ=H((Eiu,PXn)=>{"use strict";var{types:p8}=wt("util"),{hasOwn:VXn,toUSVString:Rqo}=EM(),pg={};pg.converters={};pg.util={};pg.errors={};pg.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};pg.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return pg.errors.exception({header:e.prefix,message:r})};pg.errors.invalidArgument=function(e){return pg.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};pg.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};pg.argumentLengthCheck=function({length:e},t,r){if(ea)throw pg.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=pg.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};pg.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};pg.sequenceConverter=function(e){return t=>{if(pg.util.Type(t)!=="Object")throw pg.errors.exception({header:"Sequence",message:`Value of type ${pg.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),n=[];if(r===void 0||typeof r.next!="function")throw pg.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;n.push(e(o))}return n}};pg.recordConverter=function(e,t){return r=>{if(pg.util.Type(r)!=="Object")throw pg.errors.exception({header:"Record",message:`Value of type ${pg.util.Type(r)} is not an Object.`});let n={};if(!p8.isProxy(r)){let o=Object.keys(r);for(let l of o){let A=e(l),f=t(r[l]);n[A]=f}return n}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let A=e(o),f=t(r[o]);n[A]=f}return n}};pg.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw pg.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};pg.dictionaryConverter=function(e){return t=>{let r=pg.util.Type(t),n={};if(r==="Null"||r==="Undefined")return n;if(r!=="Object")throw pg.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:l,required:A,converter:f}=a;if(A===!0&&!VXn(t,o))throw pg.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let I=t[o],C=VXn(a,"defaultValue");if(C&&I!==null&&(I=I??l),A||C||I!==void 0){if(I=f(I),a.allowedValues&&!a.allowedValues.includes(I))throw pg.errors.exception({header:"Dictionary",message:`${I} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});n[o]=I}}return n}};pg.nullableConverter=function(e){return t=>t===null?t:e(t)};pg.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};pg.converters.ByteString=function(e){let t=pg.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};pg.converters.USVString=Rqo;pg.converters.boolean=function(e){return!!e};pg.converters.any=function(e){return e};pg.converters["long long"]=function(e){return pg.util.ConvertToInt(e,64,"signed")};pg.converters["unsigned long long"]=function(e){return pg.util.ConvertToInt(e,64,"unsigned")};pg.converters["unsigned long"]=function(e){return pg.util.ConvertToInt(e,32,"unsigned")};pg.converters["unsigned short"]=function(e,t){return pg.util.ConvertToInt(e,16,"unsigned",t)};pg.converters.ArrayBuffer=function(e,t={}){if(pg.util.Type(e)!=="Object"||!p8.isAnyArrayBuffer(e))throw pg.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&p8.isSharedArrayBuffer(e))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.TypedArray=function(e,t,r={}){if(pg.util.Type(e)!=="Object"||!p8.isTypedArray(e)||e.constructor.name!==t.name)throw pg.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&p8.isSharedArrayBuffer(e.buffer))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.DataView=function(e,t={}){if(pg.util.Type(e)!=="Object"||!p8.isDataView(e))throw pg.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&p8.isSharedArrayBuffer(e.buffer))throw pg.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};pg.converters.BufferSource=function(e,t={}){if(p8.isAnyArrayBuffer(e))return pg.converters.ArrayBuffer(e,t);if(p8.isTypedArray(e))return pg.converters.TypedArray(e,e.constructor);if(p8.isDataView(e))return pg.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};pg.converters["sequence"]=pg.sequenceConverter(pg.converters.ByteString);pg.converters["sequence>"]=pg.sequenceConverter(pg.converters["sequence"]);pg.converters["record"]=pg.recordConverter(pg.converters.ByteString,pg.converters.ByteString);PXn.exports={webidl:pg}});var wX=H((Siu,QXn)=>{var lft=wt("assert"),{atob:Nqo}=wt("buffer"),{isomorphicDecode:Dqo}=EM(),kqo=new TextEncoder,cft=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,xqo=/(\u000A|\u000D|\u0009|\u0020)/,Gqo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function Fqo(e){lft(e.protocol==="data:");let t=MXn(e,!0);t=t.slice(5);let r={position:0},n=TBe(",",t,r),a=n.length;if(n=Pqo(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=HXn(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=Dqo(l);if(l=Lqo(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=Dmr(n);return A==="failure"&&(A=Dmr("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function MXn(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length;return n===0?r:r.substring(0,r.length-n)}function uft(e,t,r){let n="";for(;r.positione.length)return"failure";t.position++;let n=TBe(";",e,t);if(n=Nmr(n,!1,!0),n.length===0||!cft.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionxqo.test(I),e,t);let A=uft(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=YXn(e,t,!0),TBe(";",e,t);else if(f=TBe(";",e,t),f=Nmr(f,!1,!0),f.length===0)continue;A.length!==0&&cft.test(A)&&(f.length===0||Gqo.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function Lqo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=Nqo(e),r=new Uint8Array(t.length);for(let n=0;nl!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{lft(o==='"');break}}return r?a:e.slice(n,t.position)}function Vqo(e){lft(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",cft.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function WXn(e){return e==="\r"||e===` -`||e===" "||e===" "}function Nmr(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&WXn(e[a]);a--);return e.slice(n,a+1)}function OXn(e){return e==="\r"||e===` -`||e===" "||e==="\f"||e===" "}function Pqo(e,t=!0,r=!0){let n=0,a=e.length-1;if(t)for(;n0&&OXn(e[a]);a--);return e.slice(n,a+1)}QXn.exports={dataURLProcessor:Fqo,URLSerializer:MXn,collectASequenceOfCodePoints:uft,collectASequenceOfCodePointsFast:TBe,stringPercentDecode:HXn,parseMIMEType:Dmr,collectAnHTTPQuotedString:YXn,serializeAMimeType:Vqo}});var gft=H((viu,jXn)=>{"use strict";var{Blob:UXn,File:XXn}=wt("buffer"),{types:kmr}=wt("util"),{kState:MW}=v$(),{isBlobLike:KXn}=EM(),{webidl:H0}=xZ(),{parseMIMEType:Wqo,serializeAMimeType:Oqo}=wX(),{kEnumerableProperty:JXn}=zC(),Mqo=new TextEncoder,mHe=class e extends UXn{constructor(t,r,n={}){H0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=H0.converters["sequence"](t),r=H0.converters.USVString(r),n=H0.converters.FilePropertyBag(n);let a=r,o=n.type,l;e:{if(o){if(o=Wqo(o),o==="failure"){o="";break e}o=Oqo(o).toLowerCase()}l=n.lastModified}super(Hqo(t,n),{type:o}),this[MW]={name:a,lastModified:l,type:o}}get name(){return H0.brandCheck(this,e),this[MW].name}get lastModified(){return H0.brandCheck(this,e),this[MW].lastModified}get type(){return H0.brandCheck(this,e),this[MW].type}},xmr=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[MW]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return H0.brandCheck(this,e),this[MW].blobLike.stream(...t)}arrayBuffer(...t){return H0.brandCheck(this,e),this[MW].blobLike.arrayBuffer(...t)}slice(...t){return H0.brandCheck(this,e),this[MW].blobLike.slice(...t)}text(...t){return H0.brandCheck(this,e),this[MW].blobLike.text(...t)}get size(){return H0.brandCheck(this,e),this[MW].blobLike.size}get type(){return H0.brandCheck(this,e),this[MW].blobLike.type}get name(){return H0.brandCheck(this,e),this[MW].name}get lastModified(){return H0.brandCheck(this,e),this[MW].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(mHe.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:JXn,lastModified:JXn});H0.converters.Blob=H0.interfaceConverter(UXn);H0.converters.BlobPart=function(e,t){if(H0.util.Type(e)==="Object"){if(KXn(e))return H0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||kmr.isAnyArrayBuffer(e))return H0.converters.BufferSource(e,t)}return H0.converters.USVString(e,t)};H0.converters["sequence"]=H0.sequenceConverter(H0.converters.BlobPart);H0.converters.FilePropertyBag=H0.dictionaryConverter([{key:"lastModified",converter:H0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:H0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=H0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function Hqo(e,t){let r=[];for(let n of e)if(typeof n=="string"){let a=n;t.endings==="native"&&(a=Yqo(a)),r.push(Mqo.encode(a))}else kmr.isAnyArrayBuffer(n)||kmr.isTypedArray(n)?n.buffer?r.push(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)):r.push(new Uint8Array(n)):KXn(n)&&r.push(n);return r}function Yqo(e){let t=` -`;return process.platform==="win32"&&(t=`\r -`),e.replace(/\r?\n/g,t)}function Qqo(e){return XXn&&e instanceof XXn||e instanceof mHe||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}jXn.exports={File:mHe,FileLike:xmr,isFileLike:Qqo}});var dft=H((Biu,t4n)=>{"use strict";var{isBlobLike:Aft,toUSVString:Xqo,makeIterator:Gmr}=EM(),{kState:CG}=v$(),{File:e4n,FileLike:zXn,isFileLike:Jqo}=gft(),{webidl:Cy}=xZ(),{Blob:Uqo,File:Fmr}=wt("buffer"),qXn=Fmr??e4n,RBe=class e{constructor(t){if(t!==void 0)throw Cy.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[CG]=[]}append(t,r,n=void 0){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!Aft(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=Cy.converters.USVString(t),r=Aft(r)?Cy.converters.Blob(r,{strict:!1}):Cy.converters.USVString(r),n=arguments.length===3?Cy.converters.USVString(n):void 0;let a=$Xn(t,r,n);this[CG].push(a)}delete(t){Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=Cy.converters.USVString(t),this[CG]=this[CG].filter(r=>r.name!==t)}get(t){Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=Cy.converters.USVString(t);let r=this[CG].findIndex(n=>n.name===t);return r===-1?null:this[CG][r].value}getAll(t){return Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=Cy.converters.USVString(t),this[CG].filter(r=>r.name===t).map(r=>r.value)}has(t){return Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=Cy.converters.USVString(t),this[CG].findIndex(r=>r.name===t)!==-1}set(t,r,n=void 0){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!Aft(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=Cy.converters.USVString(t),r=Aft(r)?Cy.converters.Blob(r,{strict:!1}):Cy.converters.USVString(r),n=arguments.length===3?Xqo(n):void 0;let a=$Xn(t,r,n),o=this[CG].findIndex(l=>l.name===t);o!==-1?this[CG]=[...this[CG].slice(0,o),a,...this[CG].slice(o+1).filter(l=>l.name!==t)]:this[CG].push(a)}entries(){return Cy.brandCheck(this,e),Gmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return Cy.brandCheck(this,e),Gmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","key")}values(){return Cy.brandCheck(this,e),Gmr(()=>this[CG].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(Cy.brandCheck(this,e),Cy.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}};RBe.prototype[Symbol.iterator]=RBe.prototype.entries;Object.defineProperties(RBe.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function $Xn(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(Jqo(t)||(t=t instanceof Uqo?new qXn([t],"blob",{type:t.type}):new zXn(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=Fmr&&t instanceof Fmr||t instanceof e4n?new qXn([t],r,n):new zXn(t,r,n)}return{name:e,value:t}}t4n.exports={FormData:RBe}});var CHe=H((wiu,u4n)=>{"use strict";var Kqo=CXn(),NBe=zC(),{ReadableStreamFrom:jqo,isBlobLike:r4n,isReadableStreamLike:zqo,readableStreamClose:qqo,createDeferredPromise:$qo,fullyReadBody:e$o}=EM(),{FormData:n4n}=dft(),{kState:w$}=v$(),{webidl:Zmr}=xZ(),{DOMException:o4n,structuredClone:t$o}=Xoe(),{Blob:r$o,File:n$o}=wt("buffer"),{kBodyUsed:i$o}=GE(),Lmr=wt("assert"),{isErrored:s$o}=zC(),{isUint8Array:a4n,isArrayBuffer:o$o}=wt("util/types"),{File:a$o}=gft(),{parseMIMEType:c$o,serializeAMimeType:l$o}=wX(),B$=globalThis.ReadableStream,i4n=n$o??a$o,pft=new TextEncoder,u$o=new TextDecoder;function c4n(e,t=!1){B$||(B$=wt("stream/web").ReadableStream);let r=null;e instanceof B$?r=e:r4n(e)?r=e.stream():r=new B$({async pull(f){f.enqueue(typeof a=="string"?pft.encode(a):a),queueMicrotask(()=>qqo(f))},start(){},type:void 0}),Lmr(zqo(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(o$o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(NBe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r -Content-Disposition: form-data`;let C=Q=>Q.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),b=Q=>Q.replace(/\r?\n|\r/g,`\r -`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,X]of e)if(typeof X=="string"){let ae=pft.encode(I+`; name="${C(b(Q))}"\r -\r -${b(X)}\r -`);E.push(ae),o+=ae.byteLength}else{let ae=pft.encode(`${I}; name="${C(b(Q))}"`+(X.name?`; filename="${C(X.name)}"`:"")+`\r -Content-Type: ${X.type||"application/octet-stream"}\r -\r -`);E.push(ae,X,N),typeof X.size=="number"?o+=ae.byteLength+X.size+N.byteLength:B=!0}let F=pft.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l="multipart/form-data; boundary="+f}else if(r4n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(NBe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof B$?e:jqo(e)}if((typeof a=="string"||NBe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new B$({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();return b?queueMicrotask(()=>{I.close()}):s$o(r)||I.enqueue(new Uint8Array(C)),I.desiredSize>0},async cancel(I){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},l]}function g$o(e,t=!1){return B$||(B$=wt("stream/web").ReadableStream),e instanceof B$&&(Lmr(!NBe.isDisturbed(e),"The body has already been consumed."),Lmr(!e.locked,"The stream is locked.")),c4n(e,t)}function A$o(e){let[t,r]=e.stream.tee(),n=t$o(r,{transfer:[r]}),[,a]=n.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*s4n(e){if(e)if(a4n(e))yield e;else{let t=e.stream;if(NBe.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[i$o]=!0,yield*t}}function Vmr(e){if(e.aborted)throw new o4n("The operation was aborted.","AbortError")}function d$o(e){return{blob(){return fft(this,r=>{let n=h$o(this);return n==="failure"?n="":n&&(n=l$o(n)),new r$o([r],{type:n})},e)},arrayBuffer(){return fft(this,r=>new Uint8Array(r).buffer,e)},text(){return fft(this,l4n,e)},json(){return fft(this,I$o,e)},async formData(){Zmr.brandCheck(this,e),Vmr(this[w$]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let n={};for(let[A,f]of this.headers)n[A.toLowerCase()]=f;let a=new n4n,o;try{o=new Kqo({headers:n,preservePath:!0})}catch(A){throw new o4n(`${A}`,"AbortError")}o.on("field",(A,f)=>{a.append(A,f)}),o.on("file",(A,f,I,C,b)=>{let E=[];if(C==="base64"||C.toLowerCase()==="base64"){let N="";f.on("data",B=>{N+=B.toString().replace(/[\r\n]/gm,"");let F=N.length-N.length%4;E.push(Buffer.from(N.slice(0,F),"base64")),N=N.slice(F)}),f.on("end",()=>{E.push(Buffer.from(N,"base64")),a.append(A,new i4n(E,I,{type:b}))})}else f.on("data",N=>{E.push(N)}),f.on("end",()=>{a.append(A,new i4n(E,I,{type:b}))})});let l=new Promise((A,f)=>{o.on("finish",A),o.on("error",I=>f(new TypeError(I)))});if(this.body!==null)for await(let A of s4n(this[w$].body))o.write(A);return o.end(),await l,a}else if(/application\/x-www-form-urlencoded/.test(r)){let n;try{let o="",l=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let A of s4n(this[w$].body)){if(!a4n(A))throw new TypeError("Expected Uint8Array chunk");o+=l.decode(A,{stream:!0})}o+=l.decode(),n=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new n4n;for(let[o,l]of n)a.append(o,l);return a}else throw await Promise.resolve(),Vmr(this[w$]),Zmr.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function p$o(e){Object.assign(e.prototype,d$o(e))}async function fft(e,t,r){if(Zmr.brandCheck(e,r),Vmr(e[w$]),f$o(e[w$].body))throw new TypeError("Body is unusable");let n=$qo(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[w$].body==null?(o(new Uint8Array),n.promise):(await e$o(e[w$].body,o,a),n.promise)}function f$o(e){return e!=null&&(e.stream.locked||NBe.isDisturbed(e.stream))}function l4n(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),u$o.decode(e))}function I$o(e){return JSON.parse(l4n(e))}function h$o(e){let{headersList:t}=e[w$],r=t.get("content-type");return r===null?"failure":c$o(r)}u4n.exports={extractBody:c4n,safelyExtractBody:g$o,cloneBody:A$o,mixinBody:p$o}});var p4n=H((Tiu,d4n)=>{"use strict";var{InvalidArgumentError:FE,NotSupportedError:m$o}=Ub(),T$=wt("assert"),{kHTTP2BuildRequest:C$o,kHTTP2CopyHeaders:_$o,kHTTP1BuildRequest:y$o}=GE(),U9=zC(),g4n=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,A4n=/[^\t\x20-\x7e\x80-\xff]/,b$o=/[^\u0021-\u00ff]/,TX=Symbol("handler"),sT={},Pmr;try{let e=wt("diagnostics_channel");sT.create=e.channel("undici:request:create"),sT.bodySent=e.channel("undici:request:bodySent"),sT.headers=e.channel("undici:request:headers"),sT.trailers=e.channel("undici:request:trailers"),sT.error=e.channel("undici:request:error")}catch{sT.create={hasSubscribers:!1},sT.bodySent={hasSubscribers:!1},sT.headers={hasSubscribers:!1},sT.trailers={hasSubscribers:!1},sT.error={hasSubscribers:!1}}var Wmr=class e{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B},F){if(typeof r!="string")throw new FE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new FE("path must be an absolute URL or start with a slash");if(b$o.exec(r)!==null)throw new FE("invalid request path");if(typeof n!="string")throw new FE("method must be a string");if(g4n.exec(n)===null)throw new FE("invalid request method");if(I&&typeof I!="string")throw new FE("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new FE("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new FE("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new FE("invalid reset");if(B!=null&&typeof B!="boolean")throw new FE("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if(U9.isStream(a)){this.body=a;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=function(){U9.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=X=>{this.abort?this.abort(X):this.error=X},this.body.on("error",this.errorHandler)}else if(U9.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(U9.isFormDataLike(a)||U9.isIterable(a)||U9.isBlobLike(a))this.body=a;else throw new FE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?U9.buildURL(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new FE("headers array must be even");for(let Q=0;Q{"use strict";var E$o=wt("events"),Omr=class extends E$o{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};f4n.exports=Omr});var bHe=H((Niu,I4n)=>{"use strict";var S$o=Ift(),{ClientDestroyedError:Mmr,ClientClosedError:v$o,InvalidArgumentError:DBe}=Ub(),{kDestroy:B$o,kClose:w$o,kDispatch:Hmr,kInterceptors:LIe}=GE(),kBe=Symbol("destroyed"),yHe=Symbol("closed"),R$=Symbol("onDestroyed"),xBe=Symbol("onClosed"),hft=Symbol("Intercepted Dispatch"),Ymr=class extends S$o{constructor(){super(),this[kBe]=!1,this[R$]=null,this[yHe]=!1,this[xBe]=[]}get destroyed(){return this[kBe]}get closed(){return this[yHe]}get interceptors(){return this[LIe]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[LIe][r]!="function")throw new DBe("interceptor must be an function")}this[LIe]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new DBe("invalid callback");if(this[kBe]){queueMicrotask(()=>t(new Mmr,null));return}if(this[yHe]){this[xBe]?this[xBe].push(t):queueMicrotask(()=>t(null,null));return}this[yHe]=!0,this[xBe].push(t);let r=()=>{let n=this[xBe];this[xBe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new DBe("invalid callback");if(this[kBe]){this[R$]?this[R$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new Mmr),this[kBe]=!0,this[R$]=this[R$]||[],this[R$].push(r);let n=()=>{let a=this[R$];this[R$]=null;for(let o=0;o{queueMicrotask(n)})}[hft](t,r){if(!this[LIe]||this[LIe].length===0)return this[hft]=this[Hmr],this[Hmr](t,r);let n=this[Hmr].bind(this);for(let a=this[LIe].length-1;a>=0;a--)n=this[LIe][a](n);return this[hft]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new DBe("handler must be an object");try{if(!t||typeof t!="object")throw new DBe("opts must be an object.");if(this[kBe]||this[R$])throw new Mmr;if(this[yHe])throw new v$o;return this[hft](t,r)}catch(n){if(typeof r.onError!="function")throw new DBe("invalid onError method");return r.onError(n),!1}}};I4n.exports=Ymr});var EHe=H((xiu,C4n)=>{"use strict";var T$o=wt("net"),h4n=wt("assert"),m4n=zC(),{InvalidArgumentError:R$o,ConnectTimeoutError:N$o}=Ub(),Qmr,Xmr;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?Xmr=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function D$o({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new R$o("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},l=new Xmr(t??100);return n=n??1e4,e=e??!1,function({hostname:f,host:I,protocol:C,port:b,servername:E,localAddress:N,httpSocket:B},F){let Q;if(C==="https:"){Qmr||(Qmr=wt("tls")),E=E||o.servername||m4n.getServerName(I)||null;let ae=E||f,ne=l.get(ae)||null;h4n(ae),Q=Qmr.connect({highWaterMark:16384,...o,servername:E,session:ne,localAddress:N,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:B,port:b||443,host:f}),Q.on("session",function(ce){l.set(ae,ce)})}else h4n(!B,"httpSocket can only be sent on TLS update"),Q=T$o.connect({highWaterMark:64*1024,...o,localAddress:N,port:b||80,host:f});if(o.keepAlive==null||o.keepAlive){let ae=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;Q.setKeepAlive(!0,ae)}let X=k$o(()=>x$o(Q),n);return Q.setNoDelay(!0).once(C==="https:"?"secureConnect":"connect",function(){if(X(),F){let ae=F;F=null,ae(null,this)}}).on("error",function(ae){if(X(),F){let ne=F;F=null,ne(ae)}}),Q}}function k$o(e,t){if(!t)return()=>{};let r=null,n=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?n=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(n)}}function x$o(e){m4n.destroy(e,new N$o)}C4n.exports=D$o});var _4n=H(mft=>{"use strict";Object.defineProperty(mft,"__esModule",{value:!0});mft.enumToMap=void 0;function G$o(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}mft.enumToMap=G$o});var y4n=H(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.SPECIAL_HEADERS=xu.HEADER_STATE=xu.MINOR=xu.MAJOR=xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS=xu.TOKEN=xu.STRICT_TOKEN=xu.HEX=xu.URL_CHAR=xu.STRICT_URL_CHAR=xu.USERINFO_CHARS=xu.MARK=xu.ALPHANUM=xu.NUM=xu.HEX_MAP=xu.NUM_MAP=xu.ALPHA=xu.FINISH=xu.H_METHOD_MAP=xu.METHOD_MAP=xu.METHODS_RTSP=xu.METHODS_ICE=xu.METHODS_HTTP=xu.METHODS=xu.LENIENT_FLAGS=xu.FLAGS=xu.TYPE=xu.ERROR=void 0;var F$o=_4n(),Z$o;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Z$o=xu.ERROR||(xu.ERROR={}));var L$o;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(L$o=xu.TYPE||(xu.TYPE={}));var V$o;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(V$o=xu.FLAGS||(xu.FLAGS={}));var P$o;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(P$o=xu.LENIENT_FLAGS||(xu.LENIENT_FLAGS={}));var Zp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Zp=xu.METHODS||(xu.METHODS={}));xu.METHODS_HTTP=[Zp.DELETE,Zp.GET,Zp.HEAD,Zp.POST,Zp.PUT,Zp.CONNECT,Zp.OPTIONS,Zp.TRACE,Zp.COPY,Zp.LOCK,Zp.MKCOL,Zp.MOVE,Zp.PROPFIND,Zp.PROPPATCH,Zp.SEARCH,Zp.UNLOCK,Zp.BIND,Zp.REBIND,Zp.UNBIND,Zp.ACL,Zp.REPORT,Zp.MKACTIVITY,Zp.CHECKOUT,Zp.MERGE,Zp["M-SEARCH"],Zp.NOTIFY,Zp.SUBSCRIBE,Zp.UNSUBSCRIBE,Zp.PATCH,Zp.PURGE,Zp.MKCALENDAR,Zp.LINK,Zp.UNLINK,Zp.PRI,Zp.SOURCE];xu.METHODS_ICE=[Zp.SOURCE];xu.METHODS_RTSP=[Zp.OPTIONS,Zp.DESCRIBE,Zp.ANNOUNCE,Zp.SETUP,Zp.PLAY,Zp.PAUSE,Zp.TEARDOWN,Zp.GET_PARAMETER,Zp.SET_PARAMETER,Zp.REDIRECT,Zp.RECORD,Zp.FLUSH,Zp.GET,Zp.POST];xu.METHOD_MAP=F$o.enumToMap(Zp);xu.H_METHOD_MAP={};Object.keys(xu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(xu.H_METHOD_MAP[e]=xu.METHOD_MAP[e])});var W$o;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(W$o=xu.FINISH||(xu.FINISH={}));xu.ALPHA=[];for(let e=65;e<=90;e++)xu.ALPHA.push(String.fromCharCode(e)),xu.ALPHA.push(String.fromCharCode(e+32));xu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};xu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};xu.NUM=["0","1","2","3","4","5","6","7","8","9"];xu.ALPHANUM=xu.ALPHA.concat(xu.NUM);xu.MARK=["-","_",".","!","~","*","'","(",")"];xu.USERINFO_CHARS=xu.ALPHANUM.concat(xu.MARK).concat(["%",";",":","&","=","+","$",","]);xu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(xu.ALPHANUM);xu.URL_CHAR=xu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)xu.URL_CHAR.push(e);xu.HEX=xu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);xu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(xu.ALPHANUM);xu.TOKEN=xu.STRICT_TOKEN.concat([" "]);xu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&xu.HEADER_CHARS.push(e);xu.CONNECTION_TOKEN_CHARS=xu.HEADER_CHARS.filter(e=>e!==44);xu.MAJOR=xu.NUM_MAP;xu.MINOR=xu.MAJOR;var GBe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(GBe=xu.HEADER_STATE||(xu.HEADER_STATE={}));xu.SPECIAL_HEADERS={connection:GBe.CONNECTION,"content-length":GBe.CONTENT_LENGTH,"proxy-connection":GBe.CONNECTION,"transfer-encoding":GBe.TRANSFER_ENCODING,upgrade:GBe.UPGRADE}});var Kmr=H((Ziu,S4n)=>{"use strict";var N$=zC(),{kBodyUsed:SHe}=GE(),Umr=wt("assert"),{InvalidArgumentError:O$o}=Ub(),M$o=wt("events"),H$o=[300,301,302,303,307,308],b4n=Symbol("body"),Cft=class{constructor(t){this[b4n]=t,this[SHe]=!1}async*[Symbol.asyncIterator](){Umr(!this[SHe],"disturbed"),this[SHe]=!0,yield*this[b4n]}},Jmr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new O$o("maxRedirections must be a positive number");N$.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],N$.isStream(this.opts.body)?(N$.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){Umr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[SHe]=!1,M$o.prototype.on.call(this.opts.body,"data",function(){this[SHe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Cft(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&N$.isIterable(this.opts.body)&&(this.opts.body=new Cft(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||N$.isDisturbed(this.opts.body)?null:Y$o(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=N$.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=Q$o(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Y$o(e,t){if(H$o.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var X$o=Kmr();function J$o({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new X$o(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}v4n.exports=J$o});var jmr=H((Viu,B4n)=>{B4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var T4n=H((Piu,w4n)=>{w4n.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJsbGh0dHBfc3RhdHVzX25hbWUAIRpsbGh0dHBfc2V0X2xlbmllbnRfaGVhZGVycwAiIWxsaHR0cF9zZXRfbGVuaWVudF9jaHVua2VkX2xlbmd0aAAjHWxsaHR0cF9zZXRfbGVuaWVudF9rZWVwX2FsaXZlACQkbGxodHRwX3NldF9sZW5pZW50X3RyYW5zZmVyX2VuY29kaW5nACUYbGxodHRwX21lc3NhZ2VfbmVlZHNfZW9mAD8JFwEAQQELEQECAwQFCwYHNTk3MS8tJyspCrLgAkUCAAsIABCIgICAAAsZACAAEMKAgIAAGiAAIAI2AjggACABOgAoCxwAIAAgAC8BMiAALQAuIAAQwYCAgAAQgICAgAALKgEBf0HAABDGgICAACIBEMKAgIAAGiABQYCIgIAANgI4IAEgADoAKCABCwoAIAAQyICAgAALBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LRQEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABDCgICAABogACAENgI4IAAgAzoAKCAAIAI6AC0gACABNgIYCxEAIAAgASABIAJqEMOAgIAACxAAIABBAEHcABDMgICAABoLZwEBf0EAIQECQCAAKAIMDQACQAJAAkACQCAALQAvDgMBAAMCCyAAKAI4IgFFDQAgASgCLCIBRQ0AIAAgARGAgICAAAAiAQ0DC0EADwsQyoCAgAAACyAAQcOWgIAANgIQQQ4hAQsgAQseAAJAIAAoAgwNACAAQdGbgIAANgIQIABBFTYCDAsLFgACQCAAKAIMQRVHDQAgAEEANgIMCwsWAAJAIAAoAgxBFkcNACAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsiAAJAIABBJEkNABDKgICAAAALIABBAnRBoLOAgABqKAIACyIAAkAgAEEuSQ0AEMqAgIAAAAsgAEECdEGwtICAAGooAgAL7gsBAX9B66iAgAAhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBnH9qDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0Hhp4CAAA8LQaShgIAADwtBy6yAgAAPC0H+sYCAAA8LQcCkgIAADwtBq6SAgAAPC0GNqICAAA8LQeKmgIAADwtBgLCAgAAPC0G5r4CAAA8LQdekgIAADwtB75+AgAAPC0Hhn4CAAA8LQfqfgIAADwtB8qCAgAAPC0Gor4CAAA8LQa6ygIAADwtBiLCAgAAPC0Hsp4CAAA8LQYKigIAADwtBjp2AgAAPC0HQroCAAA8LQcqjgIAADwtBxbKAgAAPC0HfnICAAA8LQdKcgIAADwtBxKCAgAAPC0HXoICAAA8LQaKfgIAADwtB7a6AgAAPC0GrsICAAA8LQdSlgIAADwtBzK6AgAAPC0H6roCAAA8LQfyrgIAADwtB0rCAgAAPC0HxnYCAAA8LQbuggIAADwtB96uAgAAPC0GQsYCAAA8LQdexgIAADwtBoq2AgAAPC0HUp4CAAA8LQeCrgIAADwtBn6yAgAAPC0HrsYCAAA8LQdWfgIAADwtByrGAgAAPC0HepYCAAA8LQdSegIAADwtB9JyAgAAPC0GnsoCAAA8LQbGdgIAADwtBoJ2AgAAPC0G5sYCAAA8LQbywgIAADwtBkqGAgAAPC0GzpoCAAA8LQemsgIAADwtBrJ6AgAAPC0HUq4CAAA8LQfemgIAADwtBgKaAgAAPC0GwoYCAAA8LQf6egIAADwtBjaOAgAAPC0GJrYCAAA8LQfeigIAADwtBoLGAgAAPC0Gun4CAAA8LQcalgIAADwtB6J6AgAAPC0GTooCAAA8LQcKvgIAADwtBw52AgAAPC0GLrICAAA8LQeGdgIAADwtBja+AgAAPC0HqoYCAAA8LQbStgIAADwtB0q+AgAAPC0HfsoCAAA8LQdKygIAADwtB8LCAgAAPC0GpooCAAA8LQfmjgIAADwtBmZ6AgAAPC0G1rICAAA8LQZuwgIAADwtBkrKAgAAPC0G2q4CAAA8LQcKigIAADwtB+LKAgAAPC0GepYCAAA8LQdCigIAADwtBup6AgAAPC0GBnoCAAA8LEMqAgIAAAAtB1qGAgAAhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAgAiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCBCIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQcaRgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIwIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAggiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2ioCAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCNCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIMIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZqAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAjgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCECIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZWQgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAI8IgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAhQiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEGqm4CAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCQCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIYIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZOAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCJCIERQ0AIAAgBBGAgICAAAAhAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIsIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAigiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2iICAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCUCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIcIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABBwpmAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCICIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZSUgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAJMIgRFDQAgACAEEYCAgIAAACEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAlQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCWCIERQ0AIAAgBBGAgICAAAAhAwsgAwtFAQF/AkACQCAALwEwQRRxQRRHDQBBASEDIAAtAChBAUYNASAALwEyQeUARiEDDAELIAAtAClBBUYhAwsgACADOgAuQQAL/gEBA39BASEDAkAgAC8BMCIEQQhxDQAgACkDIEIAUiEDCwJAAkAgAC0ALkUNAEEBIQUgAC0AKUEFRg0BQQEhBSAEQcAAcUUgA3FBAUcNAQtBACEFIARBwABxDQBBAiEFIARB//8DcSIDQQhxDQACQCADQYAEcUUNAAJAIAAtAChBAUcNACAALQAtQQpxDQBBBQ8LQQQPCwJAIANBIHENAAJAIAAtAChBAUYNACAALwEyQf//A3EiAEGcf2pB5ABJDQAgAEHMAUYNACAAQbACRg0AQQQhBSAEQShxRQ0CIANBiARxQYAERg0CC0EADwtBAEEDIAApAyBQGyEFCyAFC2IBAn9BACEBAkAgAC0AKEEBRg0AIAAvATJB//8DcSICQZx/akHkAEkNACACQcwBRg0AIAJBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhASAAQYgEcUGABEYNACAAQShxRSEBCyABC6cBAQN/AkACQAJAIAAtACpFDQAgAC0AK0UNAEEAIQMgAC8BMCIEQQJxRQ0BDAILQQAhAyAALwEwIgRBAXFFDQELQQEhAyAALQAoQQFGDQAgAC8BMkH//wNxIgVBnH9qQeQASQ0AIAVBzAFGDQAgBUGwAkYNACAEQcAAcQ0AQQAhAyAEQYgEcUGABEYNACAEQShxQQBHIQMLIABBADsBMCAAQQA6AC8gAwuZAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQBBACEBIAAvATAiAkECcUUNAQwCC0EAIQEgAC8BMCICQQFxRQ0BC0EBIQEgAC0AKEEBRg0AIAAvATJB//8DcSIAQZx/akHkAEkNACAAQcwBRg0AIABBsAJGDQAgAkHAAHENAEEAIQEgAkGIBHFBgARGDQAgAkEocUEARyEBCyABC0kBAXsgAEEQav0MAAAAAAAAAAAAAAAAAAAAACIB/QsDACAAIAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var DHe=H((Wiu,J4n)=>{"use strict";var kA=wt("assert"),D4n=wt("net"),U$o=wt("http"),{pipeline:K$o}=wt("stream"),vp=zC(),zmr=OQn(),$mr=p4n(),j$o=bHe(),{RequestContentLengthMismatchError:D$,ResponseContentLengthMismatchError:z$o,InvalidArgumentError:$B,RequestAbortedError:aCr,HeadersTimeoutError:q$o,HeadersOverflowError:$$o,SocketError:ZBe,InformationalError:m8,BodyTimeoutError:eea,HTTPParserError:tea,ResponseExceededMaxSizeError:rea,ClientDestroyedError:nea}=Ub(),iea=EHe(),{kUrl:Rk,kReset:GZ,kServerName:Joe,kClient:C8,kBusy:eCr,kParser:Pv,kConnect:sea,kBlocking:LBe,kResuming:VIe,kRunning:TS,kPending:WIe,kSize:PIe,kWriting:k$,kQueue:L1,kConnected:oea,kConnecting:FBe,kNeedDrain:Koe,kNoRef:vHe,kKeepAliveDefaultTimeout:tCr,kHostHeader:k4n,kPendingIdx:HW,kRunningIdx:V1,kError:Nk,kPipelining:joe,kSocket:Wv,kKeepAliveTimeoutValue:THe,kMaxHeadersSize:Eft,kKeepAliveMaxTimeout:x4n,kKeepAliveTimeoutThreshold:G4n,kHeadersTimeout:F4n,kBodyTimeout:Z4n,kStrictContentLength:RHe,kConnector:BHe,kMaxRedirections:aea,kMaxRequests:NHe,kCounter:L4n,kClose:cea,kDestroy:lea,kDispatch:uea,kInterceptors:gea,kLocalAddress:wHe,kMaxResponseSize:V4n,kHTTPConnVersion:_8,kHost:P4n,kHTTP2Session:YW,kHTTP2SessionState:vft,kHTTP2BuildRequest:Aea,kHTTP2CopyHeaders:dea,kHTTP1BuildRequest:pea}=GE(),Bft;try{Bft=wt("http2")}catch{Bft={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:fea,HTTP2_HEADER_METHOD:Iea,HTTP2_HEADER_PATH:hea,HTTP2_HEADER_SCHEME:mea,HTTP2_HEADER_CONTENT_LENGTH:Cea,HTTP2_HEADER_EXPECT:_ea,HTTP2_HEADER_STATUS:yea}}=Bft,R4n=!1,yft=Buffer[Symbol.species],Uoe=Symbol("kClosedResolve"),_G={};try{let e=wt("diagnostics_channel");_G.sendHeaders=e.channel("undici:client:sendHeaders"),_G.beforeConnect=e.channel("undici:client:beforeConnect"),_G.connectError=e.channel("undici:client:connectError"),_G.connected=e.channel("undici:client:connected")}catch{_G.sendHeaders={hasSubscribers:!1},_G.beforeConnect={hasSubscribers:!1},_G.connectError={hasSubscribers:!1},_G.connected={hasSubscribers:!1}}var rCr=class extends j$o{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:X,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,allowH2:k,maxConcurrentStreams:et}={}){if(super(),C!==void 0)throw new $B("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new $B("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new $B("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new $B("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new $B("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new $B("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new $B("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new $B("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new $B("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new $B("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new $B("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new $B("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new $B("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new $B("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new $B("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new $B("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||D4n.isIP(de)===0))throw new $B("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new $B("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new $B("autoSelectFamilyAttemptTimeout must be a positive number");if(k!=null&&typeof k!="boolean")throw new $B("allowH2 must be a valid boolean value");if(et!=null&&(typeof et!="number"||et<1))throw new $B("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=iea({...X,maxCachedSessions:ne,allowH2:k,socketPath:F,timeout:A,...vp.nodeHasAutoSelectFamily&&Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),this[gea]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[Bea({maxRedirections:ce})],this[Rk]=vp.parseOrigin(t),this[BHe]=fe,this[Wv]=null,this[joe]=Q??1,this[Eft]=n||U$o.maxHeaderSize,this[tCr]=b??4e3,this[x4n]=N??6e5,this[G4n]=B??1e3,this[THe]=this[tCr],this[Joe]=null,this[wHe]=de??null,this[VIe]=0,this[Koe]=0,this[k4n]=`host: ${this[Rk].hostname}${this[Rk].port?`:${this[Rk].port}`:""}\r -`,this[Z4n]=f??3e5,this[F4n]=a??3e5,this[RHe]=ae??!0,this[aea]=ce,this[NHe]=ue,this[Uoe]=null,this[V4n]=be>-1?be:-1,this[_8]="h1",this[YW]=null,this[vft]=k?{openStreams:0,maxConcurrentStreams:et??100}:null,this[P4n]=`${this[Rk].hostname}${this[Rk].port?`:${this[Rk].port}`:""}`,this[L1]=[],this[V1]=0,this[HW]=0}get pipelining(){return this[joe]}set pipelining(t){this[joe]=t,QW(this,!0)}get[WIe](){return this[L1].length-this[HW]}get[TS](){return this[HW]-this[V1]}get[PIe](){return this[L1].length-this[V1]}get[oea](){return!!this[Wv]&&!this[FBe]&&!this[Wv].destroyed}get[eCr](){let t=this[Wv];return t&&(t[GZ]||t[k$]||t[LBe])||this[PIe]>=(this[joe]||1)||this[WIe]>0}[sea](t){H4n(this),this.once("connect",t)}[uea](t,r){let n=t.origin||this[Rk].origin,a=this[_8]==="h2"?$mr[Aea](n,t,r):$mr[pea](n,t,r);return this[L1].push(a),this[VIe]||(vp.bodyLength(a.body)==null&&vp.isIterable(a.body)?(this[VIe]=1,process.nextTick(QW,this)):QW(this,!0)),this[VIe]&&this[Koe]!==2&&this[eCr]&&(this[Koe]=2),this[Koe]<2}async[cea](){return new Promise(t=>{this[PIe]?this[Uoe]=t:t(null)})}async[lea](t){return new Promise(r=>{let n=this[L1].splice(this[HW]);for(let o=0;o{this[Uoe]&&(this[Uoe](),this[Uoe]=null),r()};this[YW]!=null&&(vp.destroy(this[YW],t),this[YW]=null,this[vft]=null),this[Wv]?vp.destroy(this[Wv].on("close",a),t):queueMicrotask(a),QW(this)})}};function bea(e){kA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Wv][Nk]=e,Rft(this[C8],e)}function Eea(e,t,r){let n=new m8(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[Wv][Nk]=n,Rft(this[C8],n))}function Sea(){vp.destroy(this,new ZBe("other side closed")),vp.destroy(this[Wv],new ZBe("other side closed"))}function vea(e){let t=this[C8],r=new m8(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[Wv]=null,t[YW]=null,t.destroyed){kA(this[WIe]===0);let n=t[L1].splice(t[V1]);for(let a=0;a0){let n=t[L1][t[V1]];t[L1][t[V1]++]=null,FZ(t,n,r)}t[HW]=t[V1],kA(t[TS]===0),t.emit("disconnect",t[Rk],[t],r),QW(t)}var f8=y4n(),Bea=_ft(),wea=Buffer.alloc(0);async function Tea(){let e=process.env.JEST_WORKER_ID?jmr():void 0,t;try{t=await WebAssembly.compile(Buffer.from(T4n(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||jmr(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onStatus(new yft(I8.buffer,o,a))||0},wasm_on_message_begin:r=>(kA.strictEqual(TR.ptr,r),TR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onHeaderField(new yft(I8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onHeaderValue(new yft(I8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(kA.strictEqual(TR.ptr,r),TR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{kA.strictEqual(TR.ptr,r);let o=n-h8+I8.byteOffset;return TR.onBody(new yft(I8.buffer,o,a))||0},wasm_on_message_complete:r=>(kA.strictEqual(TR.ptr,r),TR.onMessageComplete()||0)}})}var qmr=null,nCr=Tea();nCr.catch();var TR=null,I8=null,bft=0,h8=null,VBe=1,Sft=2,iCr=3,sCr=class{constructor(t,r,{exports:n}){kA(Number.isFinite(t[Eft])&&t[Eft]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(f8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[Eft],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[V4n]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(zmr.clearTimeout(this.timeout),t?(this.timeout=zmr.setTimeout(Rea,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(kA(this.ptr!=null),kA(TR==null),this.llhttp.llhttp_resume(this.ptr),kA(this.timeoutType===Sft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||wea),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){kA(this.ptr!=null),kA(TR==null),kA(!this.paused);let{socket:r,llhttp:n}=this;t.length>bft&&(h8&&n.free(h8),bft=Math.ceil(t.length/4096)*4096,h8=n.malloc(bft)),new Uint8Array(n.memory.buffer,h8,bft).set(t);try{let a;try{I8=t,TR=this,a=n.llhttp_execute(this.ptr,h8,t.length)}catch(l){throw l}finally{TR=null,I8=null}let o=n.llhttp_get_error_pos(this.ptr)-h8;if(a===f8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===f8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==f8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new tea(A,f8.ERROR[a],t.slice(o))}}catch(a){vp.destroy(r,a)}}destroy(){kA(this.ptr!=null),kA(TR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,zmr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[L1][r[V1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];n.length===10&&n.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():n.length===10&&n.toString().toLowerCase()==="connection"?this.connection+=t.toString():n.length===14&&n.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&vp.destroy(this.socket,new $$o)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;kA(r);let A=n[L1][n[V1]];kA(A),kA(!a.destroyed),kA(a===n[Wv]),kA(!this.paused),kA(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[Pv].destroy(),a[Pv]=null,a[C8]=null,a[Nk]=null,a.removeListener("error",O4n).removeListener("readable",W4n).removeListener("end",M4n).removeListener("close",oCr),n[Wv]=null,n[L1][n[V1]++]=null,n.emit("disconnect",n[Rk],[n],new m8("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){vp.destroy(a,f)}QW(n)}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[L1][a[V1]];if(!f)return-1;if(kA(!this.upgrade),kA(this.statusCode<200),t===100)return vp.destroy(o,new ZBe("bad response",vp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return vp.destroy(o,new ZBe("bad upgrade",vp.getSocketInfo(o))),-1;if(kA.strictEqual(this.timeoutType,VBe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[GZ]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[Z4n];this.setTimeout(C,Sft)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return kA(a[TS]===1),this.upgrade=!0,2;if(r)return kA(a[TS]===1),this.upgrade=!0,2;if(kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[joe]){let C=this.keepAlive?vp.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[G4n],a[x4n]);b<=0?o[GZ]=!0:a[THe]=b}else a[THe]=a[tCr]}else o[GZ]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[LBe]&&(o[LBe]=!1,QW(a)),I?f8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[L1][r[V1]];if(kA(l),kA.strictEqual(this.timeoutType,Sft),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),kA(a>=200),o>-1&&this.bytesRead+t.length>o)return vp.destroy(n,new rea),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return f8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;let I=t[L1][t[V1]];if(kA(I),kA(n>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",kA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return vp.destroy(r,new z$o),-1;if(I.onComplete(o),t[L1][t[V1]++]=null,r[k$])return kA.strictEqual(t[TS],0),vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED;if(f){if(r[GZ]&&t[TS]===0)return vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED;t[joe]===1?setImmediate(QW,t):QW(t)}else return vp.destroy(r,new m8("reset")),f8.ERROR.PAUSED}}};function Rea(e){let{socket:t,timeoutType:r,client:n}=e;r===VBe?(!t[k$]||t.writableNeedDrain||n[TS]>1)&&(kA(!e.paused,"cannot be paused while waiting for headers"),vp.destroy(t,new q$o)):r===Sft?e.paused||vp.destroy(t,new eea):r===iCr&&(kA(n[TS]===0&&n[THe]),vp.destroy(t,new m8("socket idle timeout")))}function W4n(){let{[Pv]:e}=this;e&&e.readMore()}function O4n(e){let{[C8]:t,[Pv]:r}=this;if(kA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[_8]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[Nk]=e,Rft(this[C8],e)}function Rft(e,t){if(e[TS]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){kA(e[HW]===e[V1]);let r=e[L1].splice(e[V1]);for(let n=0;n0&&r.code!=="UND_ERR_INFO"){let n=e[L1][e[V1]];e[L1][e[V1]++]=null,FZ(e,n,r)}e[HW]=e[V1],kA(e[TS]===0),e.emit("disconnect",e[Rk],[e],r),QW(e)}async function H4n(e){kA(!e[FBe]),kA(!e[Wv]);let{host:t,hostname:r,protocol:n,port:a}=e[Rk];if(r[0]==="["){let o=r.indexOf("]");kA(o!==-1);let l=r.substring(1,o);kA(D4n.isIP(l)),r=l}e[FBe]=!0,_G.beforeConnect.hasSubscribers&&_G.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},connector:e[BHe]});try{let o=await new Promise((A,f)=>{e[BHe]({host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},(I,C)=>{I?f(I):A(C)})});if(e.destroyed){vp.destroy(o.on("error",()=>{}),new nea);return}if(e[FBe]=!1,kA(o),o.alpnProtocol==="h2"){R4n||(R4n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let A=Bft.connect(e[Rk],{createConnection:()=>o,peerMaxConcurrentStreams:e[vft].maxConcurrentStreams});e[_8]="h2",A[C8]=e,A[Wv]=o,A.on("error",bea),A.on("frameError",Eea),A.on("end",Sea),A.on("goaway",vea),A.on("close",oCr),A.unref(),e[YW]=A,o[YW]=A}else qmr||(qmr=await nCr,nCr=null),o[vHe]=!1,o[k$]=!1,o[GZ]=!1,o[LBe]=!1,o[Pv]=new sCr(e,o,qmr);o[L4n]=0,o[NHe]=e[NHe],o[C8]=e,o[Nk]=null,o.on("error",O4n).on("readable",W4n).on("end",M4n).on("close",oCr),e[Wv]=o,_G.connected.hasSubscribers&&_G.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},connector:e[BHe],socket:o}),e.emit("connect",e[Rk],[e])}catch(o){if(e.destroyed)return;if(e[FBe]=!1,_G.connectError.hasSubscribers&&_G.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,servername:e[Joe],localAddress:e[wHe]},connector:e[BHe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(kA(e[TS]===0);e[WIe]>0&&e[L1][e[HW]].servername===e[Joe];){let l=e[L1][e[HW]++];FZ(e,l,o)}else Rft(e,o);e.emit("connectionError",e[Rk],[e],o)}QW(e)}function N4n(e){e[Koe]=0,e.emit("drain",e[Rk],[e])}function QW(e,t){e[VIe]!==2&&(e[VIe]=2,Nea(e,t),e[VIe]=0,e[V1]>256&&(e[L1].splice(0,e[V1]),e[HW]-=e[V1],e[V1]=0))}function Nea(e,t){for(;;){if(e.destroyed){kA(e[WIe]===0);return}if(e[Uoe]&&!e[PIe]){e[Uoe](),e[Uoe]=null;return}let r=e[Wv];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[PIe]===0?!r[vHe]&&r.unref&&(r.unref(),r[vHe]=!0):r[vHe]&&r.ref&&(r.ref(),r[vHe]=!1),e[PIe]===0)r[Pv].timeoutType!==iCr&&r[Pv].setTimeout(e[THe],iCr);else if(e[TS]>0&&r[Pv].statusCode<200&&r[Pv].timeoutType!==VBe){let a=e[L1][e[V1]],o=a.headersTimeout!=null?a.headersTimeout:e[F4n];r[Pv].setTimeout(o,VBe)}}if(e[eCr])e[Koe]=2;else if(e[Koe]===2){t?(e[Koe]=1,process.nextTick(N4n,e)):N4n(e);continue}if(e[WIe]===0||e[TS]>=(e[joe]||1))return;let n=e[L1][e[HW]];if(e[Rk].protocol==="https:"&&e[Joe]!==n.servername){if(e[TS]>0)return;if(e[Joe]=n.servername,r&&r.servername!==n.servername){vp.destroy(r,new m8("servername changed"));return}}if(e[FBe])return;if(!r&&!e[YW]){H4n(e);return}if(r.destroyed||r[k$]||r[GZ]||r[LBe]||e[TS]>0&&!n.idempotent||e[TS]>0&&(n.upgrade||n.method==="CONNECT")||e[TS]>0&&vp.bodyLength(n.body)!==0&&(vp.isStream(n.body)||vp.isAsyncIterable(n.body)))return;!n.aborted&&Dea(e,n)?e[HW]++:e[L1].splice(e[HW],1)}}function Y4n(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Dea(e,t){if(e[_8]==="h2"){kea(e,e[YW],t);return}let{body:r,method:n,path:a,host:o,upgrade:l,headers:A,blocking:f,reset:I}=t,C=n==="PUT"||n==="POST"||n==="PATCH";r&&typeof r.read=="function"&&r.read(0);let b=vp.bodyLength(r),E=b;if(E===null&&(E=t.contentLength),E===0&&!C&&(E=null),Y4n(n)&&E>0&&t.contentLength!==null&&t.contentLength!==E){if(e[RHe])return FZ(e,t,new D$),!1;process.emitWarning(new D$)}let N=e[Wv];try{t.onConnect(F=>{t.aborted||t.completed||(FZ(e,t,F||new aCr),vp.destroy(N,new m8("aborted")))})}catch(F){FZ(e,t,F)}if(t.aborted)return!1;n==="HEAD"&&(N[GZ]=!0),(l||n==="CONNECT")&&(N[GZ]=!0),I!=null&&(N[GZ]=I),e[NHe]&&N[L4n]++>=e[NHe]&&(N[GZ]=!0),f&&(N[LBe]=!0);let B=`${n} ${a} HTTP/1.1\r -`;return typeof o=="string"?B+=`host: ${o}\r -`:B+=e[k4n],l?B+=`connection: upgrade\r -upgrade: ${l}\r -`:e[joe]&&!N[GZ]?B+=`connection: keep-alive\r -`:B+=`connection: close\r -`,A&&(B+=A),_G.sendHeaders.hasSubscribers&&_G.sendHeaders.publish({request:t,headers:B,socket:N}),!r||b===0?(E===0?N.write(`${B}content-length: 0\r -\r -`,"latin1"):(kA(E===null,"no body must not have content length"),N.write(`${B}\r -`,"latin1")),t.onRequestSent()):vp.isBuffer(r)?(kA(E===r.byteLength,"buffer body must have content length"),N.cork(),N.write(`${B}content-length: ${E}\r -\r -`,"latin1"),N.write(r),N.uncork(),t.onBodySent(r),t.onRequestSent(),C||(N[GZ]=!0)):vp.isBlobLike(r)?typeof r.stream=="function"?wft({body:r.stream(),client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):X4n({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):vp.isStream(r)?Q4n({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):vp.isIterable(r)?wft({body:r,client:e,request:t,socket:N,contentLength:E,header:B,expectsPayload:C}):kA(!1),!0}function kea(e,t,r){let{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=r,b;if(typeof C=="string"?b=$mr[dea](C.trim()):b=C,A)return FZ(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(ae=>{r.aborted||r.completed||FZ(e,r,ae||new aCr)})}catch(ae){FZ(e,r,ae)}if(r.aborted)return!1;let E,N=e[vft];if(b[fea]=l||e[P4n],b[Iea]=a,a==="CONNECT")return t.ref(),E=t.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(r.onUpgrade(null,null,E),++N.openStreams):E.once("ready",()=>{r.onUpgrade(null,null,E),++N.openStreams}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),!0;b[hea]=o,b[mea]="https";let B=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let F=vp.bodyLength(n);if(F==null&&(F=r.contentLength),(F===0||!B)&&(F=null),Y4n(a)&&F>0&&r.contentLength!=null&&r.contentLength!==F){if(e[RHe])return FZ(e,r,new D$),!1;process.emitWarning(new D$)}F!=null&&(kA(n,"no body must not have content length"),b[Cea]=`${F}`),t.ref();let Q=a==="GET"||a==="HEAD";return f?(b[_ea]="100-continue",E=t.request(b,{endStream:Q,signal:I}),E.once("continue",X)):(E=t.request(b,{endStream:Q,signal:I}),X()),++N.openStreams,E.once("response",ae=>{let{[yea]:ne,...ce}=ae;r.onHeaders(Number(ne),ce,E.resume.bind(E),"")===!1&&E.pause()}),E.once("end",()=>{r.onComplete([])}),E.on("data",ae=>{r.onData(ae)===!1&&E.pause()}),E.once("close",()=>{N.openStreams-=1,N.openStreams===0&&t.unref()}),E.once("error",function(ae){e[YW]&&!e[YW].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,vp.destroy(E,ae))}),E.once("frameError",(ae,ne)=>{let ce=new m8(`HTTP/2: "frameError" received - type ${ae}, code ${ne}`);FZ(e,r,ce),e[YW]&&!e[YW].destroyed&&!this.closed&&!this.destroyed&&(N.streams-=1,vp.destroy(E,ce))}),!0;function X(){n?vp.isBuffer(n)?(kA(F===n.byteLength,"buffer body must have content length"),E.cork(),E.write(n),E.uncork(),E.end(),r.onBodySent(n),r.onRequestSent()):vp.isBlobLike(n)?typeof n.stream=="function"?wft({client:e,request:r,contentLength:F,h2stream:E,expectsPayload:B,body:n.stream(),socket:e[Wv],header:""}):X4n({body:n,client:e,request:r,contentLength:F,expectsPayload:B,h2stream:E,header:"",socket:e[Wv]}):vp.isStream(n)?Q4n({body:n,client:e,request:r,contentLength:F,expectsPayload:B,socket:e[Wv],h2stream:E,header:""}):vp.isIterable(n)?wft({body:n,client:e,request:r,contentLength:F,expectsPayload:B,header:"",h2stream:E,socket:e[Wv]}):kA(!1):r.onRequestSent()}}function Q4n({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){if(kA(o!==0||r[TS]===0,"stream body cannot be pipelined"),r[_8]==="h2"){let F=function(Q){n.onBodySent(Q)},B=K$o(t,e,Q=>{Q?(vp.destroy(t,Q),vp.destroy(e,Q)):n.onRequestSent()});B.on("data",F),B.once("end",()=>{B.removeListener("data",F),vp.destroy(B)});return}let f=!1,I=new Tft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l}),C=function(B){if(!f)try{!I.write(B)&&this.pause&&this.pause()}catch(F){vp.destroy(this,F)}},b=function(){f||t.resume&&t.resume()},E=function(){if(f)return;let B=new aCr;queueMicrotask(()=>N(B))},N=function(B){if(!f){if(f=!0,kA(a.destroyed||a[k$]&&r[TS]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("error",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?vp.destroy(t,B):vp.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N)}async function X4n({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){kA(o===t.size,"blob body must have content length");let f=r[_8]==="h2";try{if(o!=null&&o!==t.size)throw new D$;let I=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(I),e.uncork()):(a.cork(),a.write(`${l}content-length: ${o}\r -\r -`,"latin1"),a.write(I),a.uncork()),n.onBodySent(I),n.onRequestSent(),A||(a[GZ]=!0),QW(r)}catch(I){vp.destroy(f?e:a,I)}}async function wft({h2stream:e,body:t,client:r,request:n,socket:a,contentLength:o,header:l,expectsPayload:A}){kA(o!==0||r[TS]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{kA(f===null),a[Nk]?N(a[Nk]):f=E});if(r[_8]==="h2"){e.on("close",I).on("drain",I);try{for await(let E of t){if(a[Nk])throw a[Nk];let N=e.write(E);n.onBodySent(E),N||await C()}}catch(E){e.destroy(E)}finally{n.onRequestSent(),e.end(),e.off("close",I).off("drain",I)}return}a.on("close",I).on("drain",I);let b=new Tft({socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[Nk])throw a[Nk];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var Tft=class{constructor({socket:t,request:r,contentLength:n,client:a,expectsPayload:o,header:l}){this.socket=t,this.request=r,this.contentLength=n,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=l,t[k$]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[Nk])throw r[Nk];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[RHe])throw new D$;process.emitWarning(new D$)}r.cork(),l===0&&(A||(r[GZ]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r -`,"latin1"):r.write(`${f}content-length: ${a}\r -\r -`,"latin1")),a===null&&r.write(`\r -${I.toString(16)}\r -`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Pv].timeout&&r[Pv].timeoutType===VBe&&r[Pv].timeout.refresh&&r[Pv].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[k$]=!1,t[Nk])throw t[Nk];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r -\r -`,"latin1"):t.write(`${l}\r -`,"latin1"):r===null&&t.write(`\r -0\r -\r -`,"latin1"),r!==null&&a!==r){if(n[RHe])throw new D$;process.emitWarning(new D$)}t[Pv].timeout&&t[Pv].timeoutType===VBe&&t[Pv].timeout.refresh&&t[Pv].timeout.refresh(),QW(n)}}destroy(t){let{socket:r,client:n}=this;r[k$]=!1,t&&(kA(n[TS]<=1,"pipeline should only contain this request"),vp.destroy(r,t))}};function FZ(e,t,r){try{t.onError(r),kA(t.aborted)}catch(n){e.emit("error",n)}}J4n.exports=rCr});var K4n=H((Miu,U4n)=>{"use strict";var Nft=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};U4n.exports=class{constructor(){this.head=this.tail=new Nft}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Nft),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var z4n=H((Hiu,j4n)=>{var{kFree:xea,kConnected:Gea,kPending:Fea,kQueued:Zea,kRunning:Lea,kSize:Vea}=GE(),OIe=Symbol("pool"),cCr=class{constructor(t){this[OIe]=t}get connected(){return this[OIe][Gea]}get free(){return this[OIe][xea]}get pending(){return this[OIe][Fea]}get queued(){return this[OIe][Zea]}get running(){return this[OIe][Lea]}get size(){return this[OIe][Vea]}};j4n.exports=cCr});var pCr=H((Yiu,aJn)=>{"use strict";var Pea=bHe(),Wea=K4n(),{kConnected:lCr,kSize:q4n,kRunning:$4n,kPending:eJn,kQueued:kHe,kBusy:Oea,kFree:Mea,kUrl:Hea,kClose:Yea,kDestroy:Qea,kDispatch:Xea}=GE(),Jea=z4n(),K9=Symbol("clients"),ZZ=Symbol("needDrain"),xHe=Symbol("queue"),uCr=Symbol("closed resolve"),gCr=Symbol("onDrain"),tJn=Symbol("onConnect"),rJn=Symbol("onDisconnect"),nJn=Symbol("onConnectionError"),ACr=Symbol("get dispatcher"),sJn=Symbol("add client"),oJn=Symbol("remove client"),iJn=Symbol("stats"),dCr=class extends Pea{constructor(){super(),this[xHe]=new Wea,this[K9]=[],this[kHe]=0;let t=this;this[gCr]=function(n,a){let o=t[xHe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[kHe]--,l=!this.dispatch(A.opts,A.handler)}this[ZZ]=l,!this[ZZ]&&t[ZZ]&&(t[ZZ]=!1,t.emit("drain",n,[t,...a])),t[uCr]&&o.isEmpty()&&Promise.all(t[K9].map(A=>A.close())).then(t[uCr])},this[tJn]=(r,n)=>{t.emit("connect",r,[t,...n])},this[rJn]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[nJn]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[iJn]=new Jea(this)}get[Oea](){return this[ZZ]}get[lCr](){return this[K9].filter(t=>t[lCr]).length}get[Mea](){return this[K9].filter(t=>t[lCr]&&!t[ZZ]).length}get[eJn](){let t=this[kHe];for(let{[eJn]:r}of this[K9])t+=r;return t}get[$4n](){let t=0;for(let{[$4n]:r}of this[K9])t+=r;return t}get[q4n](){let t=this[kHe];for(let{[q4n]:r}of this[K9])t+=r;return t}get stats(){return this[iJn]}async[Yea](){return this[xHe].isEmpty()?Promise.all(this[K9].map(t=>t.close())):new Promise(t=>{this[uCr]=t})}async[Qea](t){for(;;){let r=this[xHe].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[K9].map(r=>r.destroy(t)))}[Xea](t,r){let n=this[ACr]();return n?n.dispatch(t,r)||(n[ZZ]=!0,this[ZZ]=!this[ACr]()):(this[ZZ]=!0,this[xHe].push({opts:t,handler:r}),this[kHe]++),!this[ZZ]}[sJn](t){return t.on("drain",this[gCr]).on("connect",this[tJn]).on("disconnect",this[rJn]).on("connectionError",this[nJn]),this[K9].push(t),this[ZZ]&&process.nextTick(()=>{this[ZZ]&&this[gCr](t[Hea],[this,t])}),this}[oJn](t){t.close(()=>{let r=this[K9].indexOf(t);r!==-1&&this[K9].splice(r,1)}),this[ZZ]=this[K9].some(r=>!r[ZZ]&&r.closed!==!0&&r.destroyed!==!0)}};aJn.exports={PoolBase:dCr,kClients:K9,kNeedDrain:ZZ,kAddClient:sJn,kRemoveClient:oJn,kGetDispatcher:ACr}});var PBe=H((Qiu,gJn)=>{"use strict";var{PoolBase:Uea,kClients:cJn,kNeedDrain:Kea,kAddClient:jea,kGetDispatcher:zea}=pCr(),qea=DHe(),{InvalidArgumentError:fCr}=Ub(),ICr=zC(),{kUrl:lJn,kInterceptors:$ea}=GE(),eta=EHe(),hCr=Symbol("options"),mCr=Symbol("connections"),uJn=Symbol("factory");function tta(e,t){return new qea(e,t)}var CCr=class extends Uea{constructor(t,{connections:r,factory:n=tta,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new fCr("invalid connections");if(typeof n!="function")throw new fCr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new fCr("connect must be a function or an object");typeof a!="function"&&(a=eta({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...ICr.nodeHasAutoSelectFamily&&I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[$ea]=E.interceptors&&E.interceptors.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[mCr]=r||null,this[lJn]=ICr.parseOrigin(t),this[hCr]={...ICr.deepClone(E),connect:a,allowH2:b},this[hCr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[uJn]=n}[zea](){let t=this[cJn].find(r=>!r[Kea]);return t||((!this[mCr]||this[cJn].length{"use strict";var{BalancedPoolMissingUpstreamError:rta,InvalidArgumentError:nta}=Ub(),{PoolBase:ita,kClients:LZ,kNeedDrain:GHe,kAddClient:sta,kRemoveClient:ota,kGetDispatcher:ata}=pCr(),cta=PBe(),{kUrl:_Cr,kInterceptors:lta}=GE(),{parseOrigin:AJn}=zC(),dJn=Symbol("factory"),Dft=Symbol("options"),pJn=Symbol("kGreatestCommonDivisor"),MIe=Symbol("kCurrentWeight"),HIe=Symbol("kIndex"),SM=Symbol("kWeight"),kft=Symbol("kMaxWeightPerServer"),xft=Symbol("kErrorPenalty");function fJn(e,t){return t===0?e:fJn(t,e%t)}function uta(e,t){return new cta(e,t)}var yCr=class extends ita{constructor(t=[],{factory:r=uta,...n}={}){if(super(),this[Dft]=n,this[HIe]=-1,this[MIe]=0,this[kft]=this[Dft].maxWeightPerServer||100,this[xft]=this[Dft].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new nta("factory must be a function.");this[lta]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[dJn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=AJn(t).origin;if(this[LZ].find(a=>a[_Cr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[dJn](r,Object.assign({},this[Dft]));this[sta](n),n.on("connect",()=>{n[SM]=Math.min(this[kft],n[SM]+this[xft])}),n.on("connectionError",()=>{n[SM]=Math.max(1,n[SM]-this[xft]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[SM]=Math.max(1,n[SM]-this[xft]),this._updateBalancedPoolStats())});for(let a of this[LZ])a[SM]=this[kft];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[pJn]=this[LZ].map(t=>t[SM]).reduce(fJn,0)}removeUpstream(t){let r=AJn(t).origin,n=this[LZ].find(a=>a[_Cr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[ota](n),this}get upstreams(){return this[LZ].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[_Cr].origin)}[ata](){if(this[LZ].length===0)throw new rta;if(!this[LZ].find(o=>!o[GHe]&&o.closed!==!0&&o.destroyed!==!0)||this[LZ].map(o=>o[GHe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[LZ].findIndex(o=>!o[GHe]);for(;n++this[LZ][a][SM]&&!o[GHe]&&(a=this[HIe]),this[HIe]===0&&(this[MIe]=this[MIe]-this[pJn],this[MIe]<=0&&(this[MIe]=this[kft])),o[SM]>=this[MIe]&&!o[GHe])return o}return this[MIe]=this[LZ][a][SM],this[HIe]=a,this[LZ][a]}};IJn.exports=yCr});var bCr=H((Jiu,_Jn)=>{"use strict";var{kConnected:mJn,kSize:CJn}=GE(),Gft=class{constructor(t){this.value=t}deref(){return this.value[mJn]===0&&this.value[CJn]===0?void 0:this.value}},Fft=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[mJn]===0&&t[CJn]===0&&this.finalizer(r)})}};_Jn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:Gft,FinalizationRegistry:Fft}:{WeakRef:global.WeakRef||Gft,FinalizationRegistry:global.FinalizationRegistry||Fft}}});var FHe=H((Uiu,TJn)=>{"use strict";var{InvalidArgumentError:Zft}=Ub(),{kClients:zoe,kRunning:yJn,kClose:gta,kDestroy:Ata,kDispatch:dta,kInterceptors:pta}=GE(),fta=bHe(),Ita=PBe(),hta=DHe(),mta=zC(),Cta=_ft(),{WeakRef:_ta,FinalizationRegistry:yta}=bCr()(),bJn=Symbol("onConnect"),EJn=Symbol("onDisconnect"),SJn=Symbol("onConnectionError"),bta=Symbol("maxRedirections"),vJn=Symbol("onDrain"),BJn=Symbol("factory"),wJn=Symbol("finalizer"),ECr=Symbol("options");function Eta(e,t){return t&&t.connections===1?new hta(e,t):new Ita(e,t)}var SCr=class extends fta{constructor({factory:t=Eta,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new Zft("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new Zft("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Zft("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[pta]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[Cta({maxRedirections:r})],this[ECr]={...mta.deepClone(a),connect:n},this[ECr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[bta]=r,this[BJn]=t,this[zoe]=new Map,this[wJn]=new yta(l=>{let A=this[zoe].get(l);A!==void 0&&A.deref()===void 0&&this[zoe].delete(l)});let o=this;this[vJn]=(l,A)=>{o.emit("drain",l,[o,...A])},this[bJn]=(l,A)=>{o.emit("connect",l,[o,...A])},this[EJn]=(l,A,f)=>{o.emit("disconnect",l,[o,...A],f)},this[SJn]=(l,A,f)=>{o.emit("connectionError",l,[o,...A],f)}}get[yJn](){let t=0;for(let r of this[zoe].values()){let n=r.deref();n&&(t+=n[yJn])}return t}[dta](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new Zft("opts.origin must be a non-empty string or URL.");let a=this[zoe].get(n),o=a?a.deref():null;return o||(o=this[BJn](t.origin,this[ECr]).on("drain",this[vJn]).on("connect",this[bJn]).on("disconnect",this[EJn]).on("connectionError",this[SJn]),this[zoe].set(n,new _ta(o)),this[wJn].register(o,n)),o.dispatch(t,r)}async[gta](){let t=[];for(let r of this[zoe].values()){let n=r.deref();n&&t.push(n.close())}await Promise.all(t)}async[Ata](t){let r=[];for(let n of this[zoe].values()){let a=n.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};TJn.exports=SCr});var LJn=H((jiu,ZJn)=>{"use strict";var kJn=wt("assert"),{Readable:Sta}=wt("stream"),{RequestAbortedError:xJn,NotSupportedError:vta,InvalidArgumentError:Bta}=Ub(),Pft=zC(),{ReadableStreamFrom:wta,toUSVString:Tta}=zC(),vCr,XW=Symbol("kConsume"),Lft=Symbol("kReading"),qoe=Symbol("kBody"),RJn=Symbol("abort"),GJn=Symbol("kContentType"),NJn=()=>{};ZJn.exports=class extends Sta{constructor({resume:t,abort:r,contentType:n="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[RJn]=r,this[XW]=null,this[qoe]=null,this[GJn]=n,this[Lft]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new xJn),t&&this[RJn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[Lft]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[Lft]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[XW]&&t!==null&&this.readableLength===0?(FJn(this[XW],t),this[Lft]?super.push(t):!0):super.push(t)}async text(){return Vft(this,"text")}async json(){return Vft(this,"json")}async blob(){return Vft(this,"blob")}async arrayBuffer(){return Vft(this,"arrayBuffer")}async formData(){throw new vta}get bodyUsed(){return Pft.isDisturbed(this)}get body(){return this[qoe]||(this[qoe]=wta(this),this[XW]&&(this[qoe].getReader(),kJn(this[qoe].locked))),this[qoe]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,n=t&&t.signal;if(n)try{if(typeof n!="object"||!("aborted"in n))throw new Bta("signal must be an AbortSignal");Pft.throwIfAborted(n)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let l=n?Pft.addAbortListener(n,()=>{this.destroy()}):NJn;this.on("close",function(){l(),n&&n.aborted?o(n.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",NJn).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Rta(e){return e[qoe]&&e[qoe].locked===!0||e[XW]}function Nta(e){return Pft.isDisturbed(e)||Rta(e)}async function Vft(e,t){if(Nta(e))throw new TypeError("unusable");return kJn(!e[XW]),new Promise((r,n)=>{e[XW]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){BCr(this[XW],a)}).on("close",function(){this[XW].body!==null&&BCr(this[XW],new xJn)}),process.nextTick(Dta,e[XW])})}function Dta(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)FJn(e,r);for(t.endEmitted?DJn(this[XW]):e.stream.on("end",function(){DJn(this[XW])}),e.stream.resume();e.stream.read()!=null;);}function DJn(e){let{type:t,body:r,resolve:n,stream:a,length:o}=e;try{if(t==="text")n(Tta(Buffer.concat(r)));else if(t==="json")n(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let l=new Uint8Array(o),A=0;for(let f of r)l.set(f,A),A+=f.byteLength;n(l.buffer)}else t==="blob"&&(vCr||(vCr=wt("buffer").Blob),n(new vCr(r,{type:a[GJn]})));BCr(e)}catch(l){a.destroy(l)}}function FJn(e,t){e.length+=t.length,e.body.push(t)}function BCr(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var wCr=H((ziu,PJn)=>{var kta=wt("assert"),{ResponseStatusCodeError:Wft}=Ub(),{toUSVString:VJn}=zC();async function xta({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){kta(t);let l=[],A=0;for await(let f of t)if(l.push(f),A+=f.length,A>128*1024){l=null;break}if(n===204||!r||!l){process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(VJn(Buffer.concat(l)));process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}if(r.startsWith("text/")){let f=VJn(Buffer.concat(l));process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o,f));return}}catch{}process.nextTick(e,new Wft(`Response status code ${n}${a?`: ${a}`:""}`,n,o))}PJn.exports={getResolveErrorBodyCallback:xta}});var OBe=H((qiu,OJn)=>{var{addAbortListener:Gta}=zC(),{RequestAbortedError:Fta}=Ub(),WBe=Symbol("kListener"),$oe=Symbol("kSignal");function WJn(e){e.abort?e.abort():e.onError(new Fta)}function Zta(e,t){if(e[$oe]=null,e[WBe]=null,!!t){if(t.aborted){WJn(e);return}e[$oe]=t,e[WBe]=()=>{WJn(e)},Gta(e[$oe],e[WBe])}}function Lta(e){e[$oe]&&("removeEventListener"in e[$oe]?e[$oe].removeEventListener("abort",e[WBe]):e[$oe].removeListener("abort",e[WBe]),e[$oe]=null,e[WBe]=null)}OJn.exports={addSignal:Zta,removeSignal:Lta}});var YJn=H(($iu,TCr)=>{"use strict";var Vta=LJn(),{InvalidArgumentError:MBe,RequestAbortedError:Pta}=Ub(),y8=zC(),{getResolveErrorBodyCallback:Wta}=wCr(),{AsyncResource:Ota}=wt("async_hooks"),{addSignal:Mta,removeSignal:MJn}=OBe(),Oft=class extends Ota{constructor(t,r){if(!t||typeof t!="object")throw new MBe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new MBe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new MBe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new MBe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new MBe("invalid method");if(A&&typeof A!="function")throw new MBe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw y8.isStream(l)&&y8.destroy(l.on("error",y8.nop),b),b}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,y8.isStream(l)&&l.on("error",b=>{this.onError(b)}),Mta(this,n)}onConnect(t,r){if(!this.callback)throw new Pta;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?y8.parseRawHeaders(r):y8.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let N=(I==="raw"?y8.parseHeaders(r):b)["content-type"],B=new Vta({resume:n,abort:A,contentType:N,highWaterMark:C});this.callback=null,this.res=B,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(Wta,null,{callback:o,body:B,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:B,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;MJn(this),y8.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;MJn(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{y8.destroy(r,t)})),a&&(this.body=null,y8.destroy(a,t))}};function HJn(e,t){if(t===void 0)return new Promise((r,n)=>{HJn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new Oft(e,t))}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}TCr.exports=HJn;TCr.exports.RequestHandler=Oft});var UJn=H((esu,JJn)=>{"use strict";var{finished:Hta,PassThrough:Yta}=wt("stream"),{InvalidArgumentError:HBe,InvalidReturnValueError:Qta,RequestAbortedError:Xta}=Ub(),RX=zC(),{getResolveErrorBodyCallback:Jta}=wCr(),{AsyncResource:Uta}=wt("async_hooks"),{addSignal:Kta,removeSignal:QJn}=OBe(),RCr=class extends Uta{constructor(t,r,n){if(!t||typeof t!="object")throw new HBe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new HBe("invalid callback");if(typeof r!="function")throw new HBe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new HBe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new HBe("invalid method");if(f&&typeof f!="function")throw new HBe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw RX.isStream(A)&&RX.destroy(A.on("error",RX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,RX.isStream(A)&&A.on("error",b=>{this.onError(b)}),Kta(this,a)}onConnect(t,r){if(!this.callback)throw new Xta;this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?RX.parseRawHeaders(r):RX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?RX.parseHeaders(r):C)["content-type"];b=new Yta,this.callback=null,this.runInAsyncScope(Jta,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new Qta("expected Writable");Hta(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:X,abort:ae}=this;this.res=null,(N||!F.readable)&&RX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:X}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState&&b._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;QJn(this),r&&(this.trailers=RX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;QJn(this),this.factory=null,r?(this.res=null,RX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,RX.destroy(o,t))}};function XJn(e,t,r){if(r===void 0)return new Promise((n,a)=>{XJn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new RCr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e&&e.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}JJn.exports=XJn});var zJn=H((tsu,jJn)=>{"use strict";var{Readable:KJn,Duplex:jta,PassThrough:zta}=wt("stream"),{InvalidArgumentError:ZHe,InvalidReturnValueError:qta,RequestAbortedError:Mft}=Ub(),vM=zC(),{AsyncResource:$ta}=wt("async_hooks"),{addSignal:era,removeSignal:tra}=OBe(),rra=wt("assert"),YBe=Symbol("resume"),NCr=class extends KJn{constructor(){super({autoDestroy:!0}),this[YBe]=null}_read(){let{[YBe]:t}=this;t&&(this[YBe]=null,t())}_destroy(t,r){this._read(),r(t)}},DCr=class extends KJn{constructor(t){super({autoDestroy:!0}),this[YBe]=t}_read(){this[YBe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Mft),r(t)}},kCr=class extends $ta{constructor(t,r){if(!t||typeof t!="object")throw new ZHe("invalid opts");if(typeof r!="function")throw new ZHe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new ZHe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new ZHe("invalid method");if(l&&typeof l!="function")throw new ZHe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new NCr().on("error",vM.nop),this.ret=new jta({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[YBe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new Mft),B&&f&&B(),vM.destroy(C,f),vM.destroy(b,f),vM.destroy(E,f),tra(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,era(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(rra(!a,"pipeline cannot be retried"),n.destroyed)throw new Mft;this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?vM.parseRawHeaders(r):vM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new DCr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?vM.parseRawHeaders(r):vM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",vM.nop),f}if(!A||typeof A.on!="function")throw new qta("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;vM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||vM.destroy(f,new Mft)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,vM.destroy(r,t)}};function nra(e,t){try{let r=new kCr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new zta().destroy(r)}}jJn.exports=nra});var rUn=H((rsu,tUn)=>{"use strict";var{InvalidArgumentError:xCr,RequestAbortedError:ira,SocketError:sra}=Ub(),{AsyncResource:ora}=wt("async_hooks"),qJn=zC(),{addSignal:ara,removeSignal:$Jn}=OBe(),cra=wt("assert"),GCr=class extends ora{constructor(t,r){if(!t||typeof t!="object")throw new xCr("invalid opts");if(typeof r!="function")throw new xCr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new xCr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,ara(this,n)}onConnect(t,r){if(!this.callback)throw new ira;this.abort=t,this.context=null}onHeaders(){throw new sra("bad upgrade",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;cra.strictEqual(t,101),$Jn(this),this.callback=null;let A=this.responseHeaders==="raw"?qJn.parseRawHeaders(r):qJn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;$Jn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function eUn(e,t){if(t===void 0)return new Promise((r,n)=>{eUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new GCr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}tUn.exports=eUn});var aUn=H((nsu,oUn)=>{"use strict";var{AsyncResource:lra}=wt("async_hooks"),{InvalidArgumentError:FCr,RequestAbortedError:ura,SocketError:gra}=Ub(),nUn=zC(),{addSignal:Ara,removeSignal:iUn}=OBe(),ZCr=class extends lra{constructor(t,r){if(!t||typeof t!="object")throw new FCr("invalid opts");if(typeof r!="function")throw new FCr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new FCr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Ara(this,n)}onConnect(t,r){if(!this.callback)throw new ura;this.abort=t,this.context=r}onHeaders(){throw new gra("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;iUn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?nUn.parseRawHeaders(r):nUn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;iUn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function sUn(e,t){if(t===void 0)return new Promise((r,n)=>{sUn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new ZCr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}oUn.exports=sUn});var cUn=H((isu,QBe)=>{"use strict";QBe.exports.request=YJn();QBe.exports.stream=UJn();QBe.exports.pipeline=zJn();QBe.exports.upgrade=rUn();QBe.exports.connect=aUn()});var VCr=H((ssu,lUn)=>{"use strict";var{UndiciError:dra}=Ub(),LCr=class e extends dra{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};lUn.exports={MockNotMatchedError:LCr}});var XBe=H((osu,uUn)=>{"use strict";uUn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var LHe=H((asu,bUn)=>{"use strict";var{MockNotMatchedError:YIe}=VCr(),{kDispatches:Hft,kMockAgent:pra,kOriginalDispatch:fra,kOrigin:Ira,kGetNetConnect:hra}=XBe(),{buildURL:mra,nop:Cra}=zC(),{STATUS_CODES:_ra}=wt("http"),{types:{isPromise:yra}}=wt("util");function x$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function AUn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function dUn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=dUn(t,r);if(!x$(n,a))return!1}return!0}function gUn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function bra(e,{path:t,method:r,body:n,headers:a}){let o=x$(e.path,t),l=x$(e.method,r),A=typeof e.body<"u"?x$(e.body,n):!0,f=fUn(e,a);return o&&l&&A&&f}function IUn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function hUn(e,t){let r=t.query?mra(t.path,t.query):t.path,n=typeof r=="string"?gUn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>x$(gUn(o),n));if(a.length===0)throw new YIe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>x$(o,t.method)),a.length===0)throw new YIe(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?x$(o,t.body):!0),a.length===0)throw new YIe(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>fUn(o,t.headers)),a.length===0)throw new YIe(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function Era(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function PCr(e,t){let r=e.findIndex(n=>n.consumed?bra(n,t):!1);r!==-1&&e.splice(r,1)}function mUn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function WCr(e){return Object.entries(e).reduce((t,[r,n])=>[...t,Buffer.from(`${r}`),Array.isArray(n)?n.map(a=>Buffer.from(`${a}`)):Buffer.from(`${n}`)],[])}function CUn(e){return _ra[e]||"unknown"}async function Sra(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function _Un(e,t){let r=mUn(e),n=hUn(this[Hft],r);n.timesInvoked++,n.data.callback&&(n.data={...n.data,...n.data.callback(e)});let{data:{statusCode:a,data:o,headers:l,trailers:A,error:f},delay:I,persist:C}=n,{timesInvoked:b,times:E}=n;if(n.consumed=!C&&b>=E,n.pending=b0?setTimeout(()=>{N(this[Hft])},I):N(this[Hft]);function N(F,Q=o){let X=Array.isArray(e.headers)?pUn(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:X}):Q;if(yra(ae)){ae.then(ue=>N(F,ue));return}let ne=IUn(ae),ce=WCr(l),fe=WCr(A);t.abort=Cra,t.onHeaders(a,ce,B,CUn(a)),t.onData(Buffer.from(ne)),t.onComplete(fe),PCr(F,r)}function B(){}return!0}function vra(){let e=this[pra],t=this[Ira],r=this[fra];return function(a,o){if(e.isMockActive)try{_Un.call(this,a,o)}catch(l){if(l instanceof YIe){let A=e[hra]();if(A===!1)throw new YIe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(yUn(A,t))r.call(this,a,o);else throw new YIe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function yUn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>x$(n,r.host)))}function Bra(e){if(e){let{agent:t,...r}=e;return r}}bUn.exports={getResponseData:IUn,getMockDispatch:hUn,addMockDispatch:Era,deleteMockDispatch:PCr,buildKey:mUn,generateKeyValues:WCr,matchValue:x$,getResponse:Sra,getStatusText:CUn,mockDispatch:_Un,buildMockDispatch:vra,checkNetConnect:yUn,buildMockOptions:Bra,getHeaderByName:dUn}});var JCr=H((csu,XCr)=>{"use strict";var{getResponseData:wra,buildKey:Tra,addMockDispatch:OCr}=LHe(),{kDispatches:Yft,kDispatchKey:Qft,kDefaultHeaders:MCr,kDefaultTrailers:HCr,kContentLength:YCr,kMockDispatch:Xft}=XBe(),{InvalidArgumentError:NX}=Ub(),{buildURL:Rra}=zC(),JBe=class{constructor(t){this[Xft]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new NX("waitInMs must be a valid integer > 0");return this[Xft].delay=t,this}persist(){return this[Xft].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new NX("repeatTimes must be a valid integer > 0");return this[Xft].times=t,this}},QCr=class{constructor(t,r){if(typeof t!="object")throw new NX("opts must be an object");if(typeof t.path>"u")throw new NX("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Rra(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Qft]=Tra(t),this[Yft]=r,this[MCr]={},this[HCr]={},this[YCr]=!1}createMockScopeDispatchData(t,r,n={}){let a=wra(r),o=this[YCr]?{"content-length":a.length}:{},l={...this[MCr],...o,...n.headers},A={...this[HCr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t,r,n){if(typeof t>"u")throw new NX("statusCode must be defined");if(typeof r>"u")throw new NX("data must be defined");if(typeof n!="object")throw new NX("responseOptions must be an object")}reply(t){if(typeof t=="function"){let A=I=>{let C=t(I);if(typeof C!="object")throw new NX("reply options callback must return an object");let{statusCode:b,data:E="",responseOptions:N={}}=C;return this.validateReplyParameters(b,E,N),{...this.createMockScopeDispatchData(b,E,N)}},f=OCr(this[Yft],this[Qft],A);return new JBe(f)}let[r,n="",a={}]=[...arguments];this.validateReplyParameters(r,n,a);let o=this.createMockScopeDispatchData(r,n,a),l=OCr(this[Yft],this[Qft],o);return new JBe(l)}replyWithError(t){if(typeof t>"u")throw new NX("error must be defined");let r=OCr(this[Yft],this[Qft],{error:t});return new JBe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new NX("headers must be defined");return this[MCr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new NX("trailers must be defined");return this[HCr]=t,this}replyContentLength(){return this[YCr]=!0,this}};XCr.exports.MockInterceptor=QCr;XCr.exports.MockScope=JBe});var jCr=H((lsu,RUn)=>{"use strict";var{promisify:Nra}=wt("util"),Dra=DHe(),{buildMockDispatch:kra}=LHe(),{kDispatches:EUn,kMockAgent:SUn,kClose:vUn,kOriginalClose:BUn,kOrigin:wUn,kOriginalDispatch:xra,kConnected:UCr}=XBe(),{MockInterceptor:Gra}=JCr(),TUn=GE(),{InvalidArgumentError:Fra}=Ub(),KCr=class extends Dra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Fra("Argument opts.agent must implement Agent");this[SUn]=r.agent,this[wUn]=t,this[EUn]=[],this[UCr]=1,this[xra]=this.dispatch,this[BUn]=this.close.bind(this),this.dispatch=kra.call(this),this.close=this[vUn]}get[TUn.kConnected](){return this[UCr]}intercept(t){return new Gra(t,this[EUn])}async[vUn](){await Nra(this[BUn])(),this[UCr]=0,this[SUn][TUn.kClients].delete(this[wUn])}};RUn.exports=KCr});var $Cr=H((usu,ZUn)=>{"use strict";var{promisify:Zra}=wt("util"),Lra=PBe(),{buildMockDispatch:Vra}=LHe(),{kDispatches:NUn,kMockAgent:DUn,kClose:kUn,kOriginalClose:xUn,kOrigin:GUn,kOriginalDispatch:Pra,kConnected:zCr}=XBe(),{MockInterceptor:Wra}=JCr(),FUn=GE(),{InvalidArgumentError:Ora}=Ub(),qCr=class extends Lra{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ora("Argument opts.agent must implement Agent");this[DUn]=r.agent,this[GUn]=t,this[NUn]=[],this[zCr]=1,this[Pra]=this.dispatch,this[xUn]=this.close.bind(this),this.dispatch=Vra.call(this),this.close=this[kUn]}get[FUn.kConnected](){return this[zCr]}intercept(t){return new Wra(t,this[NUn])}async[kUn](){await Zra(this[xUn])(),this[zCr]=0,this[DUn][FUn.kClients].delete(this[GUn])}};ZUn.exports=qCr});var VUn=H((Asu,LUn)=>{"use strict";var Mra={pronoun:"it",is:"is",was:"was",this:"this"},Hra={pronoun:"they",is:"are",was:"were",this:"these"};LUn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?Mra:Hra,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var WUn=H((psu,PUn)=>{"use strict";var{Transform:Yra}=wt("stream"),{Console:Qra}=wt("console");PUn.exports=class{constructor({disableColors:t}={}){this.transform=new Yra({transform(r,n,a){a(null,r)}}),this.logger=new Qra({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?"\u2705":"\u274C",Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var YUn=H((fsu,HUn)=>{"use strict";var{kClients:QIe}=GE(),Xra=FHe(),{kAgent:e_r,kMockAgentSet:Jft,kMockAgentGet:OUn,kDispatches:t_r,kIsMockActive:Uft,kNetConnect:XIe,kGetNetConnect:Jra,kOptions:Kft,kFactory:jft}=XBe(),Ura=jCr(),Kra=$Cr(),{matchValue:jra,buildMockOptions:zra}=LHe(),{InvalidArgumentError:MUn,UndiciError:qra}=Ub(),$ra=Ift(),ena=VUn(),tna=WUn(),r_r=class{constructor(t){this.value=t}deref(){return this.value}},n_r=class extends $ra{constructor(t){if(super(t),this[XIe]=!0,this[Uft]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new MUn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new Xra(t);this[e_r]=r,this[QIe]=r[QIe],this[Kft]=zra(t)}get(t){let r=this[OUn](t);return r||(r=this[jft](t),this[Jft](t,r)),r}dispatch(t,r){return this.get(t.origin),this[e_r].dispatch(t,r)}async close(){await this[e_r].close(),this[QIe].clear()}deactivate(){this[Uft]=!1}activate(){this[Uft]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[XIe])?this[XIe].push(t):this[XIe]=[t];else if(typeof t>"u")this[XIe]=!0;else throw new MUn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[XIe]=!1}get isMockActive(){return this[Uft]}[Jft](t,r){this[QIe].set(t,new r_r(r))}[jft](t){let r=Object.assign({agent:this},this[Kft]);return this[Kft]&&this[Kft].connections===1?new Ura(t,r):new Kra(t,r)}[OUn](t){let r=this[QIe].get(t);if(r)return r.deref();if(typeof t!="string"){let n=this[jft]("http://localhost:9999");return this[Jft](t,n),n}for(let[n,a]of Array.from(this[QIe])){let o=a.deref();if(o&&typeof n!="string"&&jra(n,t)){let l=this[jft](t);return this[Jft](t,l),l[t_r]=o[t_r],l}}}[Jra](){return this[XIe]}pendingInterceptors(){let t=this[QIe];return Array.from(t.entries()).flatMap(([r,n])=>n.deref()[t_r].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new tna}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new ena("interceptor","interceptors").pluralize(r.length);throw new qra(` -${n.count} ${n.noun} ${n.is} pending: - -${t.format(r)} -`.trim())}};HUn.exports=n_r});var jUn=H((Isu,KUn)=>{"use strict";var{kProxy:rna,kClose:nna,kDestroy:ina,kInterceptors:sna}=GE(),{URL:QUn}=wt("url"),XUn=FHe(),ona=PBe(),ana=bHe(),{InvalidArgumentError:WHe,RequestAbortedError:cna}=Ub(),JUn=EHe(),VHe=Symbol("proxy agent"),zft=Symbol("proxy client"),PHe=Symbol("proxy headers"),i_r=Symbol("request tls settings"),lna=Symbol("proxy tls settings"),UUn=Symbol("connect endpoint function");function una(e){return e==="https:"?443:80}function gna(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new WHe("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function Ana(e,t){return new ona(e,t)}var s_r=class extends ana{constructor(t){if(super(t),this[rna]=gna(t),this[VHe]=new XUn(t),this[sna]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new WHe("Proxy opts.uri is mandatory");let{clientFactory:r=Ana}=t;if(typeof r!="function")throw new WHe("Proxy opts.clientFactory must be a function.");this[i_r]=t.requestTls,this[lna]=t.proxyTls,this[PHe]=t.headers||{};let n=new QUn(t.uri),{origin:a,port:o,host:l,username:A,password:f}=n;if(t.auth&&t.token)throw new WHe("opts.auth cannot be used in combination with opts.token");t.auth?this[PHe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[PHe]["proxy-authorization"]=t.token:A&&f&&(this[PHe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:${decodeURIComponent(f)}`).toString("base64")}`);let I=JUn({...t.proxyTls});this[UUn]=JUn({...t.requestTls}),this[zft]=r(n,{connect:I}),this[VHe]=new XUn({...t,connect:async(C,b)=>{let E=C.host;C.port||(E+=`:${una(C.protocol)}`);try{let{socket:N,statusCode:B}=await this[zft].connect({origin:a,port:o,path:E,signal:C.signal,headers:{...this[PHe],host:l}});if(B!==200&&(N.on("error",()=>{}).destroy(),b(new cna(`Proxy response (${B}) !== 200 when HTTP Tunneling`))),C.protocol!=="https:"){b(null,N);return}let F;this[i_r]?F=this[i_r].servername:F=C.servername,this[UUn]({...C,servername:F,httpSocket:N},b)}catch(N){b(N)}}})}dispatch(t,r){let{host:n}=new QUn(t.origin),a=dna(t.headers);return pna(a),this[VHe].dispatch({...t,headers:{...a,host:n}},r)}async[nna](){await this[VHe].close(),await this[zft].close()}async[ina](){await this[VHe].destroy(),await this[zft].destroy()}};function dna(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new WHe("Proxy-Authorization should be sent in ProxyAgent constructor")}KUn.exports=s_r});var tKn=H((hsu,eKn)=>{var JIe=wt("assert"),{kRetryHandlerDefaultRetry:zUn}=GE(),{RequestRetryError:qft}=Ub(),{isDisturbed:qUn,parseHeaders:fna,parseRangeHeader:$Un}=zC();function Ina(e){let t=Date.now();return new Date(e).getTime()-t}var o_r=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[zUn],retryAfter:E??!0,maxTimeout:A??30*1e3,timeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[zUn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,timeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:X,currentTimeout:ae}=r;if(ae=ae!=null&&ae>0?ae:b,l&&l!=="UND_ERR_REQ_RETRY"&&l!=="UND_ERR_SOCKET"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(X>C){a(t);return}let ne=A!=null&&A["retry-after"];ne&&(ne=Number(ne),ne=isNaN(ne)?Ina(ne):ne*1e3);let ce=ne>0?Math.min(ne,E):Math.min(ae*N**X,E);r.currentTimeout=ce,setTimeout(()=>a(null),ce)}onHeaders(t,r,n,a){let o=fna(r);if(this.retryCount+=1,t>=300)return this.abort(new qft("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let A=$Un(o["content-range"]);if(!A)return this.abort(new qft("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new qft("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:I,end:C=I}=A;return JIe(this.start===f,"content-range mismatch"),JIe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=$Un(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;JIe(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),JIe(Number.isFinite(f)),JIe(C!=null&&Number.isFinite(C)&&this.end!==C,"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return JIe(Number.isFinite(this.start)),JIe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,n,a)}let l=new qft("Request failed",t,{headers:o,count:this.retryCount});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||qUn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||qUn(this.opts.body))return this.handler.onError(n);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};eKn.exports=o_r});var UBe=H((msu,sKn)=>{"use strict";var rKn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:hna}=Ub(),mna=FHe();iKn()===void 0&&nKn(new mna);function nKn(e){if(!e||typeof e.dispatch!="function")throw new hna("Argument agent must implement Agent");Object.defineProperty(globalThis,rKn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function iKn(){return globalThis[rKn]}sKn.exports={setGlobalDispatcher:nKn,getGlobalDispatcher:iKn}});var aKn=H((_su,oKn)=>{"use strict";oKn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var UIe=H((ysu,AKn)=>{"use strict";var{kHeadersList:z9,kConstruct:Cna}=GE(),{kGuard:E8}=v$(),{kEnumerableProperty:b8}=zC(),{makeIterator:KBe,isValidHeaderName:OHe,isValidHeaderValue:lKn}=EM(),{webidl:sm}=xZ(),_na=wt("assert"),j9=Symbol("headers map"),Dk=Symbol("headers map sorted");function cKn(e){return e===10||e===13||e===9||e===32}function uKn(e){let t=0,r=e.length;for(;r>t&&cKn(e.charCodeAt(r-1));)--r;for(;r>t&&cKn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function gKn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function a_r(e,t,r){if(r=uKn(r),OHe(t)){if(!lKn(r))throw sm.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw sm.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[E8]==="immutable")throw new TypeError("immutable");return e[E8],e[z9].append(t,r)}var $ft=class e{cookies=null;constructor(t){t instanceof e?(this[j9]=new Map(t[j9]),this[Dk]=t[Dk],this.cookies=t.cookies===null?null:[...t.cookies]):(this[j9]=new Map(t),this[Dk]=null)}contains(t){return t=t.toLowerCase(),this[j9].has(t)}clear(){this[j9].clear(),this[Dk]=null,this.cookies=null}append(t,r){this[Dk]=null;let n=t.toLowerCase(),a=this[j9].get(n);if(a){let o=n==="cookie"?"; ":", ";this[j9].set(n,{name:a.name,value:`${a.value}${o}${r}`})}else this[j9].set(n,{name:t,value:r});n==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[Dk]=null;let n=t.toLowerCase();n==="set-cookie"&&(this.cookies=[r]),this[j9].set(n,{name:t,value:r})}delete(t){this[Dk]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[j9].delete(t)}get(t){let r=this[j9].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[j9])yield[t,r]}get entries(){let t={};if(this[j9].size)for(let{name:r,value:n}of this[j9].values())t[r]=n;return t}},jBe=class e{constructor(t=void 0){t!==Cna&&(this[z9]=new $ft,this[E8]="none",t!==void 0&&(t=sm.converters.HeadersInit(t),gKn(this,t)))}append(t,r){return sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=sm.converters.ByteString(t),r=sm.converters.ByteString(r),a_r(this,t,r)}delete(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=sm.converters.ByteString(t),!OHe(t))throw sm.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[E8]==="immutable")throw new TypeError("immutable");this[E8],this[z9].contains(t)&&this[z9].delete(t)}get(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=sm.converters.ByteString(t),!OHe(t))throw sm.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[z9].get(t)}has(t){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=sm.converters.ByteString(t),!OHe(t))throw sm.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[z9].contains(t)}set(t,r){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=sm.converters.ByteString(t),r=sm.converters.ByteString(r),r=uKn(r),OHe(t)){if(!lKn(r))throw sm.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw sm.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[E8]==="immutable")throw new TypeError("immutable");this[E8],this[z9].set(t,r)}getSetCookie(){sm.brandCheck(this,e);let t=this[z9].cookies;return t?[...t]:[]}get[Dk](){if(this[z9][Dk])return this[z9][Dk];let t=[],r=[...this[z9]].sort((a,o)=>a[0]t,"Headers","key")}return KBe(()=>[...this[Dk].values()],"Headers","key")}values(){if(sm.brandCheck(this,e),this[E8]==="immutable"){let t=this[Dk];return KBe(()=>t,"Headers","value")}return KBe(()=>[...this[Dk].values()],"Headers","value")}entries(){if(sm.brandCheck(this,e),this[E8]==="immutable"){let t=this[Dk];return KBe(()=>t,"Headers","key+value")}return KBe(()=>[...this[Dk].values()],"Headers","key+value")}forEach(t,r=globalThis){if(sm.brandCheck(this,e),sm.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[n,a]of this)t.apply(r,[a,n,this])}[Symbol.for("nodejs.util.inspect.custom")](){return sm.brandCheck(this,e),this[z9]}};jBe.prototype[Symbol.iterator]=jBe.prototype.entries;Object.defineProperties(jBe.prototype,{append:b8,delete:b8,get:b8,has:b8,set:b8,getSetCookie:b8,keys:b8,values:b8,entries:b8,forEach:b8,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});sm.converters.HeadersInit=function(e){if(sm.util.Type(e)==="Object")return e[Symbol.iterator]?sm.converters["sequence>"](e):sm.converters["record"](e);throw sm.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};AKn.exports={fill:gKn,Headers:jBe,HeadersList:$ft}});var nIt=H((bsu,_Kn)=>{"use strict";var{Headers:yna,HeadersList:dKn,fill:bna}=UIe(),{extractBody:pKn,cloneBody:Ena,mixinBody:Sna}=CHe(),u_r=zC(),{kEnumerableProperty:UW}=u_r,{isValidReasonPhrase:vna,isCancelled:Bna,isAborted:wna,isBlobLike:Tna,serializeJavascriptValueToJSONString:Rna,isErrorLike:Nna,isomorphicEncode:Dna}=EM(),{redirectStatusSet:kna,nullBodyStatus:xna,DOMException:fKn}=Xoe(),{kState:v2,kHeaders:$N,kGuard:zBe,kRealm:JW}=v$(),{webidl:Wh}=xZ(),{FormData:Gna}=dft(),{getGlobalOrigin:Fna}=BBe(),{URLSerializer:IKn}=wX(),{kHeadersList:c_r,kConstruct:Zna}=GE(),g_r=wt("assert"),{types:l_r}=wt("util"),mKn=globalThis.ReadableStream||wt("stream/web").ReadableStream,Lna=new TextEncoder("utf-8"),qBe=class e{static error(){let t={settingsObject:{}},r=new e;return r[v2]=tIt(),r[JW]=t,r[$N][c_r]=r[v2].headersList,r[$N][zBe]="immutable",r[$N][JW]=t,r}static json(t,r={}){Wh.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=Wh.converters.ResponseInit(r));let n=Lna.encode(Rna(t)),a=pKn(n),o={settingsObject:{}},l=new e;return l[JW]=o,l[$N][zBe]="response",l[$N][JW]=o,hKn(l,r,{body:a[0],type:"application/json"}),l}static redirect(t,r=302){let n={settingsObject:{}};Wh.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=Wh.converters.USVString(t),r=Wh.converters["unsigned short"](r);let a;try{a=new URL(t,Fna())}catch(A){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:A})}if(!kna.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[JW]=n,o[$N][zBe]="immutable",o[$N][JW]=n,o[v2].status=r;let l=Dna(IKn(a));return o[v2].headersList.append("location",l),o}constructor(t=null,r={}){t!==null&&(t=Wh.converters.BodyInit(t)),r=Wh.converters.ResponseInit(r),this[JW]={settingsObject:{}},this[v2]=rIt({}),this[$N]=new yna(Zna),this[$N][zBe]="response",this[$N][c_r]=this[v2].headersList,this[$N][JW]=this[JW];let n=null;if(t!=null){let[a,o]=pKn(t);n={body:a,type:o}}hKn(this,r,n)}get type(){return Wh.brandCheck(this,e),this[v2].type}get url(){Wh.brandCheck(this,e);let t=this[v2].urlList,r=t[t.length-1]??null;return r===null?"":IKn(r,!0)}get redirected(){return Wh.brandCheck(this,e),this[v2].urlList.length>1}get status(){return Wh.brandCheck(this,e),this[v2].status}get ok(){return Wh.brandCheck(this,e),this[v2].status>=200&&this[v2].status<=299}get statusText(){return Wh.brandCheck(this,e),this[v2].statusText}get headers(){return Wh.brandCheck(this,e),this[$N]}get body(){return Wh.brandCheck(this,e),this[v2].body?this[v2].body.stream:null}get bodyUsed(){return Wh.brandCheck(this,e),!!this[v2].body&&u_r.isDisturbed(this[v2].body.stream)}clone(){if(Wh.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw Wh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=A_r(this[v2]),r=new e;return r[v2]=t,r[JW]=this[JW],r[$N][c_r]=t.headersList,r[$N][zBe]=this[$N][zBe],r[$N][JW]=this[$N][JW],r}};Sna(qBe);Object.defineProperties(qBe.prototype,{type:UW,url:UW,status:UW,ok:UW,redirected:UW,statusText:UW,headers:UW,clone:UW,body:UW,bodyUsed:UW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(qBe,{json:UW,redirect:UW,error:UW});function A_r(e){if(e.internalResponse)return CKn(A_r(e.internalResponse),e.type);let t=rIt({...e,body:null});return e.body!=null&&(t.body=Ena(e.body)),t}function rIt(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new dKn(e.headersList):new dKn,urlList:e.urlList?[...e.urlList]:[]}}function tIt(e){let t=Nna(e);return rIt({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function eIt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return g_r(!(n in t)),r[n]=a,!0}})}function CKn(e,t){if(t==="basic")return eIt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return eIt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return eIt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return eIt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});g_r(!1)}function Vna(e,t=null){return g_r(Bna(e)),wna(e)?tIt(Object.assign(new fKn("The operation was aborted.","AbortError"),{cause:t})):tIt(Object.assign(new fKn("Request was cancelled."),{cause:t}))}function hKn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!vna(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[v2].status=t.status),"statusText"in t&&t.statusText!=null&&(e[v2].statusText=t.statusText),"headers"in t&&t.headers!=null&&bna(e[$N],t.headers),r){if(xna.includes(e.status))throw Wh.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[v2].body=r.body,r.type!=null&&!e[v2].headersList.contains("Content-Type")&&e[v2].headersList.append("content-type",r.type)}}Wh.converters.ReadableStream=Wh.interfaceConverter(mKn);Wh.converters.FormData=Wh.interfaceConverter(Gna);Wh.converters.URLSearchParams=Wh.interfaceConverter(URLSearchParams);Wh.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?Wh.converters.USVString(e):Tna(e)?Wh.converters.Blob(e,{strict:!1}):l_r.isArrayBuffer(e)||l_r.isTypedArray(e)||l_r.isDataView(e)?Wh.converters.BufferSource(e):u_r.isFormDataLike(e)?Wh.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?Wh.converters.URLSearchParams(e):Wh.converters.DOMString(e)};Wh.converters.BodyInit=function(e){return e instanceof mKn?Wh.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:Wh.converters.XMLHttpRequestBodyInit(e)};Wh.converters.ResponseInit=Wh.dictionaryConverter([{key:"status",converter:Wh.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:Wh.converters.ByteString,defaultValue:""},{key:"headers",converter:Wh.converters.HeadersInit}]);_Kn.exports={makeNetworkError:tIt,makeResponse:rIt,makeAppropriateNetworkError:Vna,filterResponse:CKn,Response:qBe,cloneResponse:A_r}});var YHe=H((Esu,BKn)=>{"use strict";var{extractBody:Pna,mixinBody:Wna,cloneBody:Ona}=CHe(),{Headers:yKn,fill:Mna,HeadersList:aIt}=UIe(),{FinalizationRegistry:Hna}=bCr()(),HHe=zC(),{isValidHTTPToken:Yna,sameOrigin:bKn,normalizeMethod:Qna,makePolicyContainer:Xna,normalizeMethodRecord:Jna}=EM(),{forbiddenMethodsSet:Una,corsSafeListedMethodsSet:Kna,referrerPolicy:jna,requestRedirect:zna,requestMode:qna,requestCredentials:$na,requestCache:eia,requestDuplex:tia}=Xoe(),{kEnumerableProperty:oT}=HHe,{kHeaders:yG,kSignal:MHe,kState:P1,kGuard:iIt,kRealm:KW}=v$(),{webidl:Ff}=xZ(),{getGlobalOrigin:ria}=BBe(),{URLSerializer:nia}=wX(),{kHeadersList:sIt,kConstruct:oIt}=GE(),iia=wt("assert"),{getMaxListeners:EKn,setMaxListeners:SKn,getEventListeners:sia,defaultMaxListeners:vKn}=wt("events"),d_r=globalThis.TransformStream,oia=Symbol("abortController"),aia=new Hna(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),KIe=class e{constructor(t,r={}){if(t===oIt)return;Ff.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=Ff.converters.RequestInfo(t),r=Ff.converters.RequestInit(r),this[KW]={settingsObject:{baseUrl:ria(),get origin(){return this.baseUrl?.origin},policyContainer:Xna()}};let n=null,a=null,o=this[KW].settingsObject.baseUrl,l=null;if(typeof t=="string"){let Q;try{Q=new URL(t,o)}catch(X){throw new TypeError("Failed to parse URL from "+t,{cause:X})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);n=cIt({urlList:[Q]}),a="cors"}else iia(t instanceof e),n=t[P1],l=t[MHe];let A=this[KW].settingsObject.origin,f="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&bKn(n.window,A)&&(f=n.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),n=cIt({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:this[KW].settingsObject,window:f,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let I=Object.keys(r).length!==0;if(I&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),r.referrer!==void 0){let Q=r.referrer;if(Q==="")n.referrer="no-referrer";else{let X;try{X=new URL(Q,o)}catch(ae){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:ae})}X.protocol==="about:"&&X.hostname==="client"||A&&!bKn(X,this[KW].settingsObject.baseUrl)?n.referrer="client":n.referrer=X}}r.referrerPolicy!==void 0&&(n.referrerPolicy=r.referrerPolicy);let C;if(r.mode!==void 0?C=r.mode:C=a,C==="navigate")throw Ff.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(C!=null&&(n.mode=C),r.credentials!==void 0&&(n.credentials=r.credentials),r.cache!==void 0&&(n.cache=r.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(n.redirect=r.redirect),r.integrity!=null&&(n.integrity=String(r.integrity)),r.keepalive!==void 0&&(n.keepalive=!!r.keepalive),r.method!==void 0){let Q=r.method;if(!Yna(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);if(Una.has(Q.toUpperCase()))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=Jna[Q]??Qna(Q),n.method=Q}r.signal!==void 0&&(l=r.signal),this[P1]=n;let b=new AbortController;if(this[MHe]=b.signal,this[MHe][KW]=this[KW],l!=null){if(!l||typeof l.aborted!="boolean"||typeof l.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(l.aborted)b.abort(l.reason);else{this[oia]=b;let Q=new WeakRef(b),X=function(){let ae=Q.deref();ae!==void 0&&ae.abort(this.reason)};try{(typeof EKn=="function"&&EKn(l)===vKn||sia(l,"abort").length>=vKn)&&SKn(100,l)}catch{}HHe.addAbortListener(l,X),aia.register(b,{signal:l,abort:X})}}if(this[yG]=new yKn(oIt),this[yG][sIt]=n.headersList,this[yG][iIt]="request",this[yG][KW]=this[KW],C==="no-cors"){if(!Kna.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);this[yG][iIt]="request-no-cors"}if(I){let Q=this[yG][sIt],X=r.headers!==void 0?r.headers:new aIt(Q);if(Q.clear(),X instanceof aIt){for(let[ae,ne]of X)Q.append(ae,ne);Q.cookies=X.cookies}else Mna(this[yG],X)}let E=t instanceof e?t[P1].body:null;if((r.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let N=null;if(r.body!=null){let[Q,X]=Pna(r.body,n.keepalive);N=Q,X&&!this[yG][sIt].contains("content-type")&&this[yG].append("content-type",X)}let B=N??E;if(B!=null&&B.source==null){if(N!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let F=B;if(N==null&&E!=null){if(HHe.isDisturbed(E.stream)||E.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");d_r||(d_r=wt("stream/web").TransformStream);let Q=new d_r;E.stream.pipeThrough(Q),F={source:E.source,length:E.length,stream:Q.readable}}this[P1].body=F}get method(){return Ff.brandCheck(this,e),this[P1].method}get url(){return Ff.brandCheck(this,e),nia(this[P1].url)}get headers(){return Ff.brandCheck(this,e),this[yG]}get destination(){return Ff.brandCheck(this,e),this[P1].destination}get referrer(){return Ff.brandCheck(this,e),this[P1].referrer==="no-referrer"?"":this[P1].referrer==="client"?"about:client":this[P1].referrer.toString()}get referrerPolicy(){return Ff.brandCheck(this,e),this[P1].referrerPolicy}get mode(){return Ff.brandCheck(this,e),this[P1].mode}get credentials(){return this[P1].credentials}get cache(){return Ff.brandCheck(this,e),this[P1].cache}get redirect(){return Ff.brandCheck(this,e),this[P1].redirect}get integrity(){return Ff.brandCheck(this,e),this[P1].integrity}get keepalive(){return Ff.brandCheck(this,e),this[P1].keepalive}get isReloadNavigation(){return Ff.brandCheck(this,e),this[P1].reloadNavigation}get isHistoryNavigation(){return Ff.brandCheck(this,e),this[P1].historyNavigation}get signal(){return Ff.brandCheck(this,e),this[MHe]}get body(){return Ff.brandCheck(this,e),this[P1].body?this[P1].body.stream:null}get bodyUsed(){return Ff.brandCheck(this,e),!!this[P1].body&&HHe.isDisturbed(this[P1].body.stream)}get duplex(){return Ff.brandCheck(this,e),"half"}clone(){if(Ff.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=cia(this[P1]),r=new e(oIt);r[P1]=t,r[KW]=this[KW],r[yG]=new yKn(oIt),r[yG][sIt]=t.headersList,r[yG][iIt]=this[yG][iIt],r[yG][KW]=this[yG][KW];let n=new AbortController;return this.signal.aborted?n.abort(this.signal.reason):HHe.addAbortListener(this.signal,()=>{n.abort(this.signal.reason)}),r[MHe]=n.signal,r}};Wna(KIe);function cIt(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new aIt(e.headersList):new aIt};return t.url=t.urlList[0],t}function cia(e){let t=cIt({...e,body:null});return e.body!=null&&(t.body=Ona(e.body)),t}Object.defineProperties(KIe.prototype,{method:oT,url:oT,headers:oT,redirect:oT,clone:oT,signal:oT,duplex:oT,destination:oT,body:oT,bodyUsed:oT,isHistoryNavigation:oT,isReloadNavigation:oT,keepalive:oT,integrity:oT,cache:oT,credentials:oT,attribute:oT,referrerPolicy:oT,referrer:oT,mode:oT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Ff.converters.Request=Ff.interfaceConverter(KIe);Ff.converters.RequestInfo=function(e){return typeof e=="string"?Ff.converters.USVString(e):e instanceof KIe?Ff.converters.Request(e):Ff.converters.USVString(e)};Ff.converters.AbortSignal=Ff.interfaceConverter(AbortSignal);Ff.converters.RequestInit=Ff.dictionaryConverter([{key:"method",converter:Ff.converters.ByteString},{key:"headers",converter:Ff.converters.HeadersInit},{key:"body",converter:Ff.nullableConverter(Ff.converters.BodyInit)},{key:"referrer",converter:Ff.converters.USVString},{key:"referrerPolicy",converter:Ff.converters.DOMString,allowedValues:jna},{key:"mode",converter:Ff.converters.DOMString,allowedValues:qna},{key:"credentials",converter:Ff.converters.DOMString,allowedValues:$na},{key:"cache",converter:Ff.converters.DOMString,allowedValues:eia},{key:"redirect",converter:Ff.converters.DOMString,allowedValues:zna},{key:"integrity",converter:Ff.converters.DOMString},{key:"keepalive",converter:Ff.converters.boolean},{key:"signal",converter:Ff.nullableConverter(e=>Ff.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:Ff.converters.any},{key:"duplex",converter:Ff.converters.DOMString,allowedValues:tia}]);BKn.exports={Request:KIe,makeRequest:cIt}});var fIt=H((Ssu,WKn)=>{"use strict";var{Response:lia,makeNetworkError:Kb,makeAppropriateNetworkError:lIt,filterResponse:p_r,makeResponse:uIt}=nIt(),{Headers:wKn}=UIe(),{Request:uia,makeRequest:gia}=YHe(),QHe=wt("zlib"),{bytesMatch:Aia,makePolicyContainer:dia,clonePolicyContainer:pia,requestBadPort:fia,TAOCheck:Iia,appendRequestOriginHeader:hia,responseLocationURL:mia,requestCurrentURL:S8,setRequestReferrerPolicyOnRedirect:Cia,tryUpgradeRequestToAPotentiallyTrustworthyURL:_ia,createOpaqueTimingInfo:E_r,appendFetchMetadata:yia,corsCheck:bia,crossOriginResourcePolicyCheck:Eia,determineRequestsReferrer:Sia,coarsenedSharedCurrentTime:S_r,createDeferredPromise:via,isBlobLike:Bia,sameOrigin:__r,isCancelled:ewe,isAborted:TKn,isErrorLike:wia,fullyReadBody:kKn,readableStreamClose:Tia,isomorphicEncode:y_r,urlIsLocal:Ria,urlIsHttpHttpsScheme:v_r,urlHasHttpsScheme:Nia}=EM(),{kState:b_r,kHeaders:f_r,kGuard:Dia,kRealm:RKn}=v$(),twe=wt("assert"),{safelyExtractBody:gIt}=CHe(),{redirectStatusSet:xKn,nullBodyStatus:GKn,safeMethodsSet:kia,requestBodyHeader:xia,subresourceSet:Gia,DOMException:AIt}=Xoe(),{kHeadersList:$Be}=GE(),Fia=wt("events"),{Readable:Zia,pipeline:Lia}=wt("stream"),{addAbortListener:Via,isErrored:Pia,isReadable:dIt,nodeMajor:NKn,nodeMinor:Wia}=zC(),{dataURLProcessor:Oia,serializeAMimeType:Mia}=wX(),{TransformStream:Hia}=wt("stream/web"),{getGlobalDispatcher:Yia}=UBe(),{webidl:Qia}=xZ(),{STATUS_CODES:Xia}=wt("http"),Jia=["GET","HEAD"],I_r,h_r=globalThis.ReadableStream,pIt=class extends Fia{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new AIt("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function Uia(e,t={}){Qia.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=via(),n;try{n=new uia(e,t)}catch(E){return r.reject(E),r.promise}let a=n[b_r];if(n.signal.aborted)return m_r(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=null,f=!1,I=null;return Via(n.signal,()=>{f=!0,twe(I!=null),I.abort(n.signal.reason),m_r(r,a,l,n.signal.reason)}),I=ZKn({request:a,processResponseEndOfBody:E=>FKn(E,"fetch"),processResponse:E=>{if(f)return Promise.resolve();if(E.aborted)return m_r(r,a,l,I.serializedAbortReason),Promise.resolve();if(E.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:E.error})),Promise.resolve();l=new lia,l[b_r]=E,l[RKn]=A,l[f_r][$Be]=E.headersList,l[f_r][Dia]="immutable",l[f_r][RKn]=A,r.resolve(l)},dispatcher:t.dispatcher??Yia()}),r.promise}function FKn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;v_r(r)&&n!==null&&(e.timingAllowPassed||(n=E_r({startTime:n.startTime}),a=""),n.endTime=S_r(),e.timingInfo=n,Kia(n,r,t,globalThis,a))}function Kia(e,t,r,n,a){(NKn>18||NKn===18&&Wia>=2)&&performance.markResourceTiming(e,t.href,r,n,a)}function m_r(e,t,r,n){if(n||(n=new AIt("The operation was aborted.","AbortError")),e.reject(n),t.body!=null&&dIt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[b_r];a.body!=null&&dIt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function ZKn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A}){let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=S_r(I),b=E_r({startTime:C}),E={controller:new pIt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return twe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=pia(e.client.policyContainer):e.policyContainer=dia()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,Gia.has(e.destination),LKn(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function LKn(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!Ria(S8(r))&&(n=Kb("local URLs only")),_ia(r),fia(r)==="blocked"&&(n=Kb("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=Sia(r)),n===null&&(n=await(async()=>{let o=S8(r);return __r(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await DKn(e)):r.mode==="same-origin"?Kb('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?Kb('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await DKn(e)):v_r(S8(r))?(r.responseTainting="cors",await VKn(e)):Kb("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=p_r(n,"basic"):r.responseTainting==="cors"?n=p_r(n,"cors"):r.responseTainting==="opaque"?n=p_r(n,"opaque"):twe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(n=a=Kb()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||GKn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>C_r(e,Kb(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!Aia(A,r.integrity)){o("integrity mismatch");return}n.body=gIt(A)[0],C_r(e,n)};await kKn(n.body,l,o)}else C_r(e,n)}function DKn(e){if(ewe(e)&&e.request.redirectCount===0)return Promise.resolve(lIt(e));let{request:t}=e,{protocol:r}=S8(t);switch(r){case"about:":return Promise.resolve(Kb("about scheme is not supported"));case"blob:":{I_r||(I_r=wt("buffer").resolveObjectURL);let n=S8(t);if(n.search.length!==0)return Promise.resolve(Kb("NetworkError when attempting to fetch resource."));let a=I_r(n.toString());if(t.method!=="GET"||!Bia(a))return Promise.resolve(Kb("invalid method"));let o=gIt(a),l=o[0],A=y_r(`${l.length}`),f=o[1]??"",I=uIt({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:A}],["content-type",{name:"Content-Type",value:f}]]});return I.body=l,Promise.resolve(I)}case"data:":{let n=S8(t),a=Oia(n);if(a==="failure")return Promise.resolve(Kb("failed to fetch the data URL"));let o=Mia(a.mimeType);return Promise.resolve(uIt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:gIt(a.body)[0]}))}case"file:":return Promise.resolve(Kb("not implemented... yet..."));case"http:":case"https:":return VKn(e).catch(n=>Kb(n));default:return Promise.resolve(Kb("unknown scheme"))}}function jia(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function C_r(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=E_r({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let n=(o,l)=>{l.enqueue(o)},a=new Hia({start(){},transform:n,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let n=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>n(null));else return kKn(t.body,n,a);return Promise.resolve()}}async function VKn(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await PKn(e),t.responseTainting==="cors"&&bia(t,r)==="failure")return Kb("cors failure");Iia(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&Eia(t.origin,t.client,t.destination,n)==="blocked"?Kb("blocked"):(xKn.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=Kb("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await zia(e,r):twe(!1)),r.timingInfo=a,r)}function zia(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=mia(n,S8(r).hash),a==null)return t}catch(l){return Promise.resolve(Kb(l))}if(!v_r(a))return Promise.resolve(Kb("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(Kb("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!__r(r,a))return Promise.resolve(Kb('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(Kb('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(Kb());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!Jia.includes(r.method)){r.method="GET",r.body=null;for(let l of xia)r.headersList.delete(l)}__r(S8(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(twe(r.body.source!=null),r.body=gIt(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=S_r(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),Cia(r,n),LKn(e,!0)}async function PKn(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=gia(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=y_r(`${C}`)),b!=null&&o.headersList.append("content-length",b),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",y_r(o.referrer.href)),hia(o),yia(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(Nia(S8(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),A==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,l==null){if(o.mode==="only-if-cached")return Kb("only if cached");let E=await qia(a,I,r);!kia.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range")&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?Kb():ewe(e)?lIt(e):Kb("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(ewe(e))return lIt(e);e.controller.connection.destroy(),l=await PKn(e,t,!0)}return l}async function qia(e,t=!1,r=!1){twe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B){this.destroyed||(this.destroyed=!0,this.abort?.(B??new AIt("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(X){ewe(e)||(yield X,e.processRequestBodyChunkLength?.(X.byteLength))},F=()=>{ewe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=X=>{ewe(e)||(X.name==="AbortError"?e.controller.abort():e.controller.terminate(X))};f=async function*(){try{for await(let X of n.body.stream)yield*B(X);F()}catch(X){Q(X)}}()}try{let{body:B,status:F,statusText:Q,headersList:X,socket:ae}=await N({body:f});if(ae)a=uIt({status:F,statusText:Q,headersList:X,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=uIt({status:F,statusText:Q,headersList:X})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),lIt(e,B)):Kb(B)}let I=()=>{e.controller.resume()},C=B=>{e.controller.abort(B)};h_r||(h_r=wt("stream/web").ReadableStream);let b=new h_r({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)}},{highWaterMark:0,size(){return 1}});a.body={stream:b},e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:Q,value:X}=await e.controller.next();if(TKn(e))break;B=Q?void 0:X}catch(Q){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=Q,F=!0)}if(B===void 0){Tia(e.controller.controller),jia(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}if(e.controller.controller.enqueue(new Uint8Array(B)),Pia(b)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function E(B){TKn(e)?(a.aborted=!0,dIt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):dIt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:wia(B)?B:void 0})),e.controller.connection.destroy()}return a;async function N({body:B}){let F=S8(n),Q=e.controller.dispatcher;return new Promise((X,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:e.controller.dispatcher.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;ce.destroyed?ne(new AIt("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new wKn;if(Array.isArray(ce))for(let et=0;etje.trim()):ct.toLowerCase()==="location"&&(be=Me),Se[$Be].append(ct,Me)}else{let et=Object.keys(ce);for(let ct of et){let Me=ce[ct];ct.toLowerCase()==="content-encoding"?de=Me.toLowerCase().split(",").map(je=>je.trim()).reverse():ct.toLowerCase()==="location"&&(be=Me),Se[$Be].append(ct,Me)}}this.body=new Zia({read:fe});let De=[],k=n.redirect==="follow"&&be&&xKn.has(ne);if(n.method!=="HEAD"&&n.method!=="CONNECT"&&!GKn.includes(ne)&&!k)for(let et of de)if(et==="x-gzip"||et==="gzip")De.push(QHe.createGunzip({flush:QHe.constants.Z_SYNC_FLUSH,finishFlush:QHe.constants.Z_SYNC_FLUSH}));else if(et==="deflate")De.push(QHe.createInflate());else if(et==="br")De.push(QHe.createBrotliDecompress());else{De.length=0;break}return X({status:ne,statusText:ue,headersList:Se[$Be],body:De.length?Lia(this.body,...De,()=>{}):this.body.on("error",()=>{})}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new wKn;for(let de=0;de{"use strict";OKn.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var HKn=H((Bsu,MKn)=>{"use strict";var{webidl:jW}=xZ(),IIt=Symbol("ProgressEvent state"),w_r=class e extends Event{constructor(t,r={}){t=jW.converters.DOMString(t),r=jW.converters.ProgressEventInit(r??{}),super(t,r),this[IIt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return jW.brandCheck(this,e),this[IIt].lengthComputable}get loaded(){return jW.brandCheck(this,e),this[IIt].loaded}get total(){return jW.brandCheck(this,e),this[IIt].total}};jW.converters.ProgressEventInit=jW.dictionaryConverter([{key:"lengthComputable",converter:jW.converters.boolean,defaultValue:!1},{key:"loaded",converter:jW.converters["unsigned long long"],defaultValue:0},{key:"total",converter:jW.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:jW.converters.boolean,defaultValue:!1},{key:"cancelable",converter:jW.converters.boolean,defaultValue:!1},{key:"composed",converter:jW.converters.boolean,defaultValue:!1}]);MKn.exports={ProgressEvent:w_r}});var QKn=H((wsu,YKn)=>{"use strict";function $ia(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}YKn.exports={getEncoding:$ia}});var $Kn=H((Tsu,qKn)=>{"use strict";var{kState:rwe,kError:T_r,kResult:XKn,kAborted:XHe,kLastProgressEventFired:R_r}=B_r(),{ProgressEvent:esa}=HKn(),{getEncoding:JKn}=QKn(),{DOMException:tsa}=Xoe(),{serializeAMimeType:rsa,parseMIMEType:UKn}=wX(),{types:nsa}=wt("util"),{StringDecoder:KKn}=wt("string_decoder"),{btoa:jKn}=wt("buffer"),isa={enumerable:!0,writable:!1,configurable:!1};function ssa(e,t,r,n){if(e[rwe]==="loading")throw new tsa("Invalid state","InvalidStateError");e[rwe]="loading",e[XKn]=null,e[T_r]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[XHe];)try{let{done:I,value:C}=await A;if(f&&!e[XHe]&&queueMicrotask(()=>{eae("loadstart",e)}),f=!1,!I&&nsa.isUint8Array(C))l.push(C),(e[R_r]===void 0||Date.now()-e[R_r]>=50)&&!e[XHe]&&(e[R_r]=Date.now(),queueMicrotask(()=>{eae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[rwe]="done";try{let b=osa(l,r,t.type,n);if(e[XHe])return;e[XKn]=b,eae("load",e)}catch(b){e[T_r]=b,eae("error",e)}e[rwe]!=="loading"&&eae("loadend",e)});break}}catch(I){if(e[XHe])return;queueMicrotask(()=>{e[rwe]="done",e[T_r]=I,eae("error",e),e[rwe]!=="loading"&&eae("loadend",e)});break}})()}function eae(e,t){let r=new esa(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function osa(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=UKn(r||"application/octet-stream");o!=="failure"&&(a+=rsa(o)),a+=";base64,";let l=new KKn("latin1");for(let A of e)a+=jKn(l.write(A));return a+=jKn(l.end()),a}case"Text":{let a="failure";if(n&&(a=JKn(n)),a==="failure"&&r){let o=UKn(r);o!=="failure"&&(a=JKn(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),asa(e,a)}case"ArrayBuffer":return zKn(e).buffer;case"BinaryString":{let a="",o=new KKn("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function asa(e,t){let r=zKn(e),n=csa(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function csa(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function zKn(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}qKn.exports={staticPropertyDescriptors:isa,readOperation:ssa,fireAProgressEvent:eae}});var n8n=H((Rsu,r8n)=>{"use strict";var{staticPropertyDescriptors:nwe,readOperation:hIt,fireAProgressEvent:e8n}=$Kn(),{kState:jIe,kError:t8n,kResult:mIt,kEvents:I0,kAborted:lsa}=B_r(),{webidl:nb}=xZ(),{kEnumerableProperty:q9}=zC(),DX=class e extends EventTarget{constructor(){super(),this[jIe]="empty",this[mIt]=null,this[t8n]=null,this[I0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=nb.converters.Blob(t,{strict:!1}),hIt(this,t,"ArrayBuffer")}readAsBinaryString(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=nb.converters.Blob(t,{strict:!1}),hIt(this,t,"BinaryString")}readAsText(t,r=void 0){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=nb.converters.Blob(t,{strict:!1}),r!==void 0&&(r=nb.converters.DOMString(r)),hIt(this,t,"Text",r)}readAsDataURL(t){nb.brandCheck(this,e),nb.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=nb.converters.Blob(t,{strict:!1}),hIt(this,t,"DataURL")}abort(){if(this[jIe]==="empty"||this[jIe]==="done"){this[mIt]=null;return}this[jIe]==="loading"&&(this[jIe]="done",this[mIt]=null),this[lsa]=!0,e8n("abort",this),this[jIe]!=="loading"&&e8n("loadend",this)}get readyState(){switch(nb.brandCheck(this,e),this[jIe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return nb.brandCheck(this,e),this[mIt]}get error(){return nb.brandCheck(this,e),this[t8n]}get onloadend(){return nb.brandCheck(this,e),this[I0].loadend}set onloadend(t){nb.brandCheck(this,e),this[I0].loadend&&this.removeEventListener("loadend",this[I0].loadend),typeof t=="function"?(this[I0].loadend=t,this.addEventListener("loadend",t)):this[I0].loadend=null}get onerror(){return nb.brandCheck(this,e),this[I0].error}set onerror(t){nb.brandCheck(this,e),this[I0].error&&this.removeEventListener("error",this[I0].error),typeof t=="function"?(this[I0].error=t,this.addEventListener("error",t)):this[I0].error=null}get onloadstart(){return nb.brandCheck(this,e),this[I0].loadstart}set onloadstart(t){nb.brandCheck(this,e),this[I0].loadstart&&this.removeEventListener("loadstart",this[I0].loadstart),typeof t=="function"?(this[I0].loadstart=t,this.addEventListener("loadstart",t)):this[I0].loadstart=null}get onprogress(){return nb.brandCheck(this,e),this[I0].progress}set onprogress(t){nb.brandCheck(this,e),this[I0].progress&&this.removeEventListener("progress",this[I0].progress),typeof t=="function"?(this[I0].progress=t,this.addEventListener("progress",t)):this[I0].progress=null}get onload(){return nb.brandCheck(this,e),this[I0].load}set onload(t){nb.brandCheck(this,e),this[I0].load&&this.removeEventListener("load",this[I0].load),typeof t=="function"?(this[I0].load=t,this.addEventListener("load",t)):this[I0].load=null}get onabort(){return nb.brandCheck(this,e),this[I0].abort}set onabort(t){nb.brandCheck(this,e),this[I0].abort&&this.removeEventListener("abort",this[I0].abort),typeof t=="function"?(this[I0].abort=t,this.addEventListener("abort",t)):this[I0].abort=null}};DX.EMPTY=DX.prototype.EMPTY=0;DX.LOADING=DX.prototype.LOADING=1;DX.DONE=DX.prototype.DONE=2;Object.defineProperties(DX.prototype,{EMPTY:nwe,LOADING:nwe,DONE:nwe,readAsArrayBuffer:q9,readAsBinaryString:q9,readAsText:q9,readAsDataURL:q9,abort:q9,readyState:q9,result:q9,error:q9,onloadstart:q9,onprogress:q9,onload:q9,onabort:q9,onerror:q9,onloadend:q9,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(DX,{EMPTY:nwe,LOADING:nwe,DONE:nwe});r8n.exports={FileReader:DX}});var CIt=H((Nsu,i8n)=>{"use strict";i8n.exports={kConstruct:GE().kConstruct}});var a8n=H((Dsu,o8n)=>{"use strict";var usa=wt("assert"),{URLSerializer:s8n}=wX(),{isValidHeaderName:gsa}=EM();function Asa(e,t,r=!1){let n=s8n(e,r),a=s8n(t,r);return n===a}function dsa(e){usa(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!gsa(r))continue}else continue;t.push(r)}return t}o8n.exports={urlEquals:Asa,fieldValues:dsa}});var d8n=H((ksu,A8n)=>{"use strict";var{kConstruct:psa}=CIt(),{urlEquals:fsa,fieldValues:N_r}=a8n(),{kEnumerableProperty:zIe,isDisturbed:Isa}=zC(),{kHeadersList:c8n}=GE(),{webidl:Lp}=xZ(),{Response:u8n,cloneResponse:hsa}=nIt(),{Request:v8}=YHe(),{kState:VZ,kHeaders:_It,kGuard:l8n,kRealm:msa}=v$(),{fetching:Csa}=fIt(),{urlIsHttpHttpsScheme:yIt,createDeferredPromise:iwe,readAllBytes:_sa}=EM(),D_r=wt("assert"),{getGlobalDispatcher:ysa}=UBe(),bIt=class e{#e;constructor(){arguments[0]!==psa&&Lp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.CacheQueryOptions(r);let n=await this.matchAll(t,r);if(n.length!==0)return n[0]}async matchAll(t=void 0,r={}){Lp.brandCheck(this,e),t!==void 0&&(t=Lp.converters.RequestInfo(t)),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new v8(t)[VZ]);let a=[];if(t===void 0)for(let l of this.#e)a.push(l[1]);else{let l=this.#n(n,r);for(let A of l)a.push(A[1])}let o=[];for(let l of a){let A=new u8n(l.body?.source??null),f=A[VZ].body;A[VZ]=l,A[VZ].body=f,A[_It][c8n]=l.headersList,A[_It][l8n]="immutable",o.push(A)}return Object.freeze(o)}async add(t){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Lp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Lp.converters["sequence"](t);let r=[],n=[];for(let b of t){if(typeof b=="string")continue;let E=b[VZ];if(!yIt(E.url)||E.method!=="GET")throw Lp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let b of t){let E=new v8(b)[VZ];if(!yIt(E.url))throw Lp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let N=iwe();a.push(Csa({request:E,dispatcher:ysa(),processResponse(B){if(B.type==="error"||B.status===206||B.status<200||B.status>299)N.reject(Lp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(B.headersList.contains("vary")){let F=N_r(B.headersList.get("vary"));for(let Q of F)if(Q==="*"){N.reject(Lp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let X of a)X.abort();return}}},processResponseEndOfBody(B){if(B.aborted){N.reject(new DOMException("aborted","AbortError"));return}N.resolve(B)}})),r.push(N.promise)}let l=await Promise.all(r),A=[],f=0;for(let b of l){let E={type:"put",request:n[f],response:b};A.push(E),f++}let I=iwe(),C=null;try{this.#t(A)}catch(b){C=b}return queueMicrotask(()=>{C===null?I.resolve(void 0):I.reject(C)}),I.promise}async put(t,r){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.Response(r);let n=null;if(t instanceof v8?n=t[VZ]:n=new v8(t)[VZ],!yIt(n.url)||n.method!=="GET")throw Lp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[VZ];if(a.status===206)throw Lp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let E=N_r(a.headersList.get("vary"));for(let N of E)if(N==="*")throw Lp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(Isa(a.body.stream)||a.body.stream.locked))throw Lp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=hsa(a),l=iwe();if(a.body!=null){let N=a.body.stream.getReader();_sa(N).then(l.resolve,l.reject)}else l.resolve(void 0);let A=[],f={type:"put",request:n,response:o};A.push(f);let I=await l.promise;o.body!=null&&(o.body.source=I);let C=iwe(),b=null;try{this.#t(A)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve():C.reject(b)}),C.promise}async delete(t,r={}){Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Lp.converters.RequestInfo(t),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return!1}else D_r(typeof t=="string"),n=new v8(t)[VZ];let a=[],o={type:"delete",request:n,options:r};a.push(o);let l=iwe(),A=null,f;try{f=this.#t(a)}catch(I){A=I}return queueMicrotask(()=>{A===null?l.resolve(!!f?.length):l.reject(A)}),l.promise}async keys(t=void 0,r={}){Lp.brandCheck(this,e),t!==void 0&&(t=Lp.converters.RequestInfo(t)),r=Lp.converters.CacheQueryOptions(r);let n=null;if(t!==void 0)if(t instanceof v8){if(n=t[VZ],n.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(n=new v8(t)[VZ]);let a=iwe(),o=[];if(t===void 0)for(let l of this.#e)o.push(l[0]);else{let l=this.#n(n,r);for(let A of l)o.push(A[0])}return queueMicrotask(()=>{let l=[];for(let A of o){let f=new v8("https://a");f[VZ]=A,f[_It][c8n]=A.headersList,f[_It][l8n]="immutable",f[msa]=A.client,l.push(f)}a.resolve(Object.freeze(l))}),a.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);D_r(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!yIt(f.url))throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Lp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);D_r(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!fsa(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=N_r(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}};Object.defineProperties(bIt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:zIe,matchAll:zIe,add:zIe,addAll:zIe,put:zIe,delete:zIe,keys:zIe});var g8n=[{key:"ignoreSearch",converter:Lp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Lp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Lp.converters.boolean,defaultValue:!1}];Lp.converters.CacheQueryOptions=Lp.dictionaryConverter(g8n);Lp.converters.MultiCacheQueryOptions=Lp.dictionaryConverter([...g8n,{key:"cacheName",converter:Lp.converters.DOMString}]);Lp.converters.Response=Lp.interfaceConverter(u8n);Lp.converters["sequence"]=Lp.sequenceConverter(Lp.converters.RequestInfo);A8n.exports={Cache:bIt}});var f8n=H((xsu,p8n)=>{"use strict";var{kConstruct:JHe}=CIt(),{Cache:EIt}=d8n(),{webidl:PZ}=xZ(),{kEnumerableProperty:UHe}=zC(),SIt=class e{#e=new Map;constructor(){arguments[0]!==JHe&&PZ.illegalConstructor()}async match(t,r={}){if(PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=PZ.converters.RequestInfo(t),r=PZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new EIt(JHe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new EIt(JHe,n).match(t,r);if(o!==void 0)return o}}async has(t){return PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=PZ.converters.DOMString(t),this.#e.has(t)}async open(t){if(PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=PZ.converters.DOMString(t),this.#e.has(t)){let n=this.#e.get(t);return new EIt(JHe,n)}let r=[];return this.#e.set(t,r),new EIt(JHe,r)}async delete(t){return PZ.brandCheck(this,e),PZ.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=PZ.converters.DOMString(t),this.#e.delete(t)}async keys(){return PZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(SIt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:UHe,has:UHe,open:UHe,delete:UHe,keys:UHe});p8n.exports={CacheStorage:SIt}});var h8n=H((Gsu,I8n)=>{"use strict";I8n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var k_r=H((Fsu,_8n)=>{"use strict";var m8n=wt("assert"),{kHeadersList:C8n}=GE();function bsa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function Esa(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function Ssa(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function vsa(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function Bsa(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function wsa(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],n=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],l=e.getUTCFullYear(),A=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),I=e.getUTCSeconds().toString().padStart(2,"0");return`${n}, ${a} ${o} ${l} ${A}:${f}:${I} GMT`}function Tsa(e){if(e<0)throw new Error("Invalid cookie max-age")}function Rsa(e){if(e.name.length===0)return null;Esa(e.name),Ssa(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(Tsa(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Bsa(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(vsa(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${wsa(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}var vIt;function Nsa(e){if(e[C8n])return e[C8n];vIt||(vIt=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),m8n(vIt,"Headers cannot be parsed"));let t=e[vIt];return m8n(t),t}_8n.exports={isCTLExcludingHtab:bsa,stringify:Rsa,getHeadersList:Nsa}});var b8n=H((Zsu,y8n)=>{"use strict";var{maxNameValuePairSize:Dsa,maxAttributeValueSize:ksa}=h8n(),{isCTLExcludingHtab:xsa}=k_r(),{collectASequenceOfCodePointsFast:BIt}=wX(),Gsa=wt("assert");function Fsa(e){if(xsa(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=BIt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=BIt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Dsa?null:{name:n,value:a,...swe(r)}}function swe(e,t={}){if(e.length===0)return t;Gsa(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=BIt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=BIt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>ksa)return swe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return swe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return swe(e,t)}y8n.exports={parseSetCookie:Fsa,parseUnparsedAttributes:swe}});var B8n=H((Lsu,v8n)=>{"use strict";var{parseSetCookie:Zsa}=b8n(),{stringify:E8n,getHeadersList:Lsa}=k_r(),{webidl:rC}=xZ(),{Headers:wIt}=UIe();function Vsa(e){rC.argumentLengthCheck(arguments,1,{header:"getCookies"}),rC.brandCheck(e,wIt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function Psa(e,t,r){rC.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),rC.brandCheck(e,wIt,{strict:!1}),t=rC.converters.DOMString(t),r=rC.converters.DeleteCookieAttributes(r),S8n(e,{name:t,value:"",expires:new Date(0),...r})}function Wsa(e){rC.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),rC.brandCheck(e,wIt,{strict:!1});let t=Lsa(e).cookies;return t?t.map(r=>Zsa(Array.isArray(r)?r[1]:r)):[]}function S8n(e,t){rC.argumentLengthCheck(arguments,2,{header:"setCookie"}),rC.brandCheck(e,wIt,{strict:!1}),t=rC.converters.Cookie(t),E8n(t)&&e.append("Set-Cookie",E8n(t))}rC.converters.DeleteCookieAttributes=rC.dictionaryConverter([{converter:rC.nullableConverter(rC.converters.DOMString),key:"path",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"domain",defaultValue:null}]);rC.converters.Cookie=rC.dictionaryConverter([{converter:rC.converters.DOMString,key:"name"},{converter:rC.converters.DOMString,key:"value"},{converter:rC.nullableConverter(e=>typeof e=="number"?rC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:rC.nullableConverter(rC.converters["long long"]),key:"maxAge",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"domain",defaultValue:null},{converter:rC.nullableConverter(rC.converters.DOMString),key:"path",defaultValue:null},{converter:rC.nullableConverter(rC.converters.boolean),key:"secure",defaultValue:null},{converter:rC.nullableConverter(rC.converters.boolean),key:"httpOnly",defaultValue:null},{converter:rC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:rC.sequenceConverter(rC.converters.DOMString),key:"unparsed",defaultValue:[]}]);v8n.exports={getCookies:Vsa,deleteCookie:Psa,getSetCookies:Wsa,setCookie:S8n}});var owe=H((Vsu,w8n)=>{"use strict";var Osa="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",Msa={enumerable:!0,writable:!1,configurable:!1},Hsa={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},Ysa={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},Qsa=2**16-1,Xsa={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},Jsa=Buffer.allocUnsafe(0);w8n.exports={uid:Osa,staticPropertyDescriptors:Msa,states:Hsa,opcodes:Ysa,maxUnsigned16Bit:Qsa,parserStates:Xsa,emptyBuffer:Jsa}});var KHe=H((Psu,T8n)=>{"use strict";T8n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var G_r=H((Wsu,R8n)=>{"use strict";var{webidl:Vp}=xZ(),{kEnumerableProperty:$9}=zC(),{MessagePort:Usa}=wt("worker_threads"),TIt=class e extends Event{#e;constructor(t,r={}){Vp.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Vp.converters.DOMString(t),r=Vp.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Vp.brandCheck(this,e),this.#e.data}get origin(){return Vp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Vp.brandCheck(this,e),this.#e.lastEventId}get source(){return Vp.brandCheck(this,e),this.#e.source}get ports(){return Vp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Vp.brandCheck(this,e),Vp.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}},RIt=class e extends Event{#e;constructor(t,r={}){Vp.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Vp.converters.DOMString(t),r=Vp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Vp.brandCheck(this,e),this.#e.wasClean}get code(){return Vp.brandCheck(this,e),this.#e.code}get reason(){return Vp.brandCheck(this,e),this.#e.reason}},NIt=class e extends Event{#e;constructor(t,r){Vp.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Vp.converters.DOMString(t),r=Vp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Vp.brandCheck(this,e),this.#e.message}get filename(){return Vp.brandCheck(this,e),this.#e.filename}get lineno(){return Vp.brandCheck(this,e),this.#e.lineno}get colno(){return Vp.brandCheck(this,e),this.#e.colno}get error(){return Vp.brandCheck(this,e),this.#e.error}};Object.defineProperties(TIt.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:$9,origin:$9,lastEventId:$9,source:$9,ports:$9,initMessageEvent:$9});Object.defineProperties(RIt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:$9,code:$9,wasClean:$9});Object.defineProperties(NIt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:$9,filename:$9,lineno:$9,colno:$9,error:$9});Vp.converters.MessagePort=Vp.interfaceConverter(Usa);Vp.converters["sequence"]=Vp.sequenceConverter(Vp.converters.MessagePort);var x_r=[{key:"bubbles",converter:Vp.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Vp.converters.boolean,defaultValue:!1},{key:"composed",converter:Vp.converters.boolean,defaultValue:!1}];Vp.converters.MessageEventInit=Vp.dictionaryConverter([...x_r,{key:"data",converter:Vp.converters.any,defaultValue:null},{key:"origin",converter:Vp.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Vp.converters.DOMString,defaultValue:""},{key:"source",converter:Vp.nullableConverter(Vp.converters.MessagePort),defaultValue:null},{key:"ports",converter:Vp.converters["sequence"],get defaultValue(){return[]}}]);Vp.converters.CloseEventInit=Vp.dictionaryConverter([...x_r,{key:"wasClean",converter:Vp.converters.boolean,defaultValue:!1},{key:"code",converter:Vp.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Vp.converters.USVString,defaultValue:""}]);Vp.converters.ErrorEventInit=Vp.dictionaryConverter([...x_r,{key:"message",converter:Vp.converters.DOMString,defaultValue:""},{key:"filename",converter:Vp.converters.USVString,defaultValue:""},{key:"lineno",converter:Vp.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Vp.converters["unsigned long"],defaultValue:0},{key:"error",converter:Vp.converters.any}]);R8n.exports={MessageEvent:TIt,CloseEvent:RIt,ErrorEvent:NIt}});var xIt=H((Osu,k8n)=>{"use strict";var{kReadyState:DIt,kController:Ksa,kResponse:jsa,kBinaryType:zsa,kWebSocketURL:qsa}=KHe(),{states:kIt,opcodes:N8n}=owe(),{MessageEvent:$sa,ErrorEvent:eoa}=G_r();function toa(e){return e[DIt]===kIt.OPEN}function roa(e){return e[DIt]===kIt.CLOSING}function noa(e){return e[DIt]===kIt.CLOSED}function F_r(e,t,r=Event,n){let a=new r(e,n);t.dispatchEvent(a)}function ioa(e,t,r){if(e[DIt]!==kIt.OPEN)return;let n;if(t===N8n.TEXT)try{n=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{D8n(e,"Received invalid UTF-8 in text frame.");return}else t===N8n.BINARY&&(e[zsa]==="blob"?n=new Blob([r]):n=new Uint8Array(r).buffer);F_r("message",e,$sa,{origin:e[qsa].origin,data:n})}function soa(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function ooa(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function D8n(e,t){let{[Ksa]:r,[jsa]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&F_r("error",e,eoa,{error:new Error(t)})}k8n.exports={isEstablished:toa,isClosing:roa,isClosed:noa,fireEvent:F_r,isValidSubprotocol:soa,isValidStatusCode:ooa,failWebsocketConnection:D8n,websocketMessageReceived:ioa}});var V8n=H((Msu,L8n)=>{"use strict";var L_r=wt("diagnostics_channel"),{uid:aoa,states:G8n}=owe(),{kReadyState:F8n,kSentClose:x8n,kByteParser:Z8n,kReceivedClose:coa}=KHe(),{fireEvent:loa,failWebsocketConnection:qIe}=xIt(),{CloseEvent:uoa}=G_r(),{makeRequest:goa}=YHe(),{fetching:Aoa}=fIt(),{Headers:doa}=UIe(),{getGlobalDispatcher:poa}=UBe(),{kHeadersList:foa}=GE(),G$={};G$.open=L_r.channel("undici:websocket:open");G$.close=L_r.channel("undici:websocket:close");G$.socketError=L_r.channel("undici:websocket:socket_error");var Z_r;try{Z_r=wt("crypto")}catch{}function Ioa(e,t,r,n,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let l=goa({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let C=new doa(a.headers)[foa];l.headersList=C}let A=Z_r.randomBytes(16).toString("base64");l.headersList.append("sec-websocket-key",A),l.headersList.append("sec-websocket-version","13");for(let C of t)l.headersList.append("sec-websocket-protocol",C);let f="";return Aoa({request:l,useParallelQueue:!0,dispatcher:a.dispatcher??poa(),processResponse(C){if(C.type==="error"||C.status!==101){qIe(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!C.headersList.get("Sec-WebSocket-Protocol")){qIe(r,"Server did not respond with sent protocols.");return}if(C.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){qIe(r,'Server did not set Upgrade header to "websocket".');return}if(C.headersList.get("Connection")?.toLowerCase()!=="upgrade"){qIe(r,'Server did not set Connection header to "upgrade".');return}let b=C.headersList.get("Sec-WebSocket-Accept"),E=Z_r.createHash("sha1").update(A+aoa).digest("base64");if(b!==E){qIe(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let N=C.headersList.get("Sec-WebSocket-Extensions");if(N!==null&&N!==f){qIe(r,"Received different permessage-deflate than the one set.");return}let B=C.headersList.get("Sec-WebSocket-Protocol");if(B!==null&&B!==l.headersList.get("Sec-WebSocket-Protocol")){qIe(r,"Protocol was not set in the opening handshake.");return}C.socket.on("data",hoa),C.socket.on("close",moa),C.socket.on("error",Coa),G$.open.hasSubscribers&&G$.open.publish({address:C.socket.address(),protocol:B,extensions:N}),n(C)}})}function hoa(e){this.ws[Z8n].write(e)||this.pause()}function moa(){let{ws:e}=this,t=e[x8n]&&e[coa],r=1005,n="",a=e[Z8n].closingInfo;a?(r=a.code??1005,n=a.reason):e[x8n]||(r=1006),e[F8n]=G8n.CLOSED,loa("close",e,uoa,{wasClean:t,code:r,reason:n}),G$.close.hasSubscribers&&G$.close.publish({websocket:e,code:r,reason:n})}function Coa(e){let{ws:t}=this;t[F8n]=G8n.CLOSING,G$.socketError.hasSubscribers&&G$.socketError.publish(e),this.destroy()}L8n.exports={establishWebSocketConnection:Ioa}});var P_r=H((Hsu,W8n)=>{"use strict";var{maxUnsigned16Bit:_oa}=owe(),P8n;try{P8n=wt("crypto")}catch{}var V_r=class{constructor(t){this.frameData=t,this.maskKey=P8n.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,n=r,a=6;r>_oa?(a+=8,n=127):r>125&&(a+=2,n=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=n,n===126?o.writeUInt16BE(r,2):n===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let l=0;l{"use strict";var{Writable:yoa}=wt("stream"),X8n=wt("diagnostics_channel"),{parserStates:BM,opcodes:wM,states:boa,emptyBuffer:Eoa}=owe(),{kReadyState:Soa,kSentClose:O8n,kResponse:M8n,kReceivedClose:H8n}=KHe(),{isValidStatusCode:Y8n,failWebsocketConnection:jHe,websocketMessageReceived:voa}=xIt(),{WebsocketFrameSend:Q8n}=P_r(),awe={};awe.ping=X8n.channel("undici:websocket:ping");awe.pong=X8n.channel("undici:websocket:pong");var W_r=class extends yoa{#e=[];#t=0;#n=BM.INFO;#r={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.run(n)}run(t){for(;;){if(this.#n===BM.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#r.fin=(r[0]&128)!==0,this.#r.opcode=r[0]&15,this.#r.originalOpcode??=this.#r.opcode,this.#r.fragmented=!this.#r.fin&&this.#r.opcode!==wM.CONTINUATION,this.#r.fragmented&&this.#r.opcode!==wM.BINARY&&this.#r.opcode!==wM.TEXT){jHe(this.ws,"Invalid frame type was fragmented.");return}let n=r[1]&127;if(n<=125?(this.#r.payloadLength=n,this.#n=BM.READ_DATA):n===126?this.#n=BM.PAYLOADLENGTH_16:n===127&&(this.#n=BM.PAYLOADLENGTH_64),this.#r.fragmented&&n>125){jHe(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#r.opcode===wM.PING||this.#r.opcode===wM.PONG||this.#r.opcode===wM.CLOSE)&&n>125){jHe(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#r.opcode===wM.CLOSE){if(n===1){jHe(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(n);if(this.#r.closeInfo=this.parseCloseBody(!1,a),!this.ws[O8n]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#r.closeInfo.code,0);let l=new Q8n(o);this.ws[M8n].socket.write(l.createFrame(wM.CLOSE),A=>{A||(this.ws[O8n]=!0)})}this.ws[Soa]=boa.CLOSING,this.ws[H8n]=!0,this.end();return}else if(this.#r.opcode===wM.PING){let a=this.consume(n);if(!this.ws[H8n]){let o=new Q8n(a);this.ws[M8n].socket.write(o.createFrame(wM.PONG)),awe.ping.hasSubscribers&&awe.ping.publish({payload:a})}if(this.#n=BM.INFO,this.#t>0)continue;t();return}else if(this.#r.opcode===wM.PONG){let a=this.consume(n);if(awe.pong.hasSubscribers&&awe.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#n===BM.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=BM.READ_DATA}else if(this.#n===BM.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){jHe(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#r.payloadLength=(n<<8)+a,this.#n=BM.READ_DATA}else if(this.#n===BM.READ_DATA){if(this.#t=this.#r.payloadLength){let r=this.consume(this.#r.payloadLength);if(this.#i.push(r),!this.#r.fragmented||this.#r.fin&&this.#r.opcode===wM.CONTINUATION){let n=Buffer.concat(this.#i);voa(this.ws,this.#r.originalOpcode,n),this.#r={},this.#i.length=0}this.#n=BM.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return Eoa;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let n;if(r.length>=2&&(n=r.readUInt16BE(0)),t)return Y8n(n)?{code:n}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),n!==void 0&&!Y8n(n))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:n,reason:a}}get closingInfo(){return this.#r.closeInfo}};J8n.exports={ByteParser:W_r}});var rjn=H((Qsu,tjn)=>{"use strict";var{webidl:fI}=xZ(),{DOMException:tae}=Xoe(),{URLSerializer:Boa}=wX(),{getGlobalOrigin:woa}=BBe(),{staticPropertyDescriptors:rae,states:cwe,opcodes:zHe,emptyBuffer:Toa}=owe(),{kWebSocketURL:K8n,kReadyState:F$,kController:Roa,kBinaryType:GIt,kResponse:FIt,kSentClose:Noa,kByteParser:Doa}=KHe(),{isEstablished:j8n,isClosing:z8n,isValidSubprotocol:koa,failWebsocketConnection:xoa,fireEvent:Goa}=xIt(),{establishWebSocketConnection:Foa}=V8n(),{WebsocketFrameSend:qHe}=P_r(),{ByteParser:Zoa}=U8n(),{kEnumerableProperty:TM,isBlobLike:$8n}=zC(),{getGlobalDispatcher:Loa}=UBe(),{types:ejn}=wt("util"),q8n=!1,zW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";constructor(t,r=[]){super(),fI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),q8n||(q8n=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let n=fI.converters["DOMString or sequence or WebSocketInit"](r);t=fI.converters.USVString(t),r=n.protocols;let a=woa(),o;try{o=new URL(t,a)}catch(l){throw new tae(l,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new tae(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new tae("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(l=>l.toLowerCase())).size)throw new tae("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(l=>koa(l)))throw new tae("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[K8n]=new URL(o.href),this[Roa]=Foa(o,r,this,l=>this.#i(l),n),this[F$]=e.CONNECTING,this[GIt]="blob"}close(t=void 0,r=void 0){if(fI.brandCheck(this,e),t!==void 0&&(t=fI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=fI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new tae("invalid code","InvalidAccessError");let n=0;if(r!==void 0&&(n=Buffer.byteLength(r),n>123))throw new tae(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");if(!(this[F$]===e.CLOSING||this[F$]===e.CLOSED))if(!j8n(this))xoa(this,"Connection was closed before it was established."),this[F$]=e.CLOSING;else if(z8n(this))this[F$]=e.CLOSING;else{let a=new qHe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Toa,this[FIt].socket.write(a.createFrame(zHe.CLOSE),l=>{l||(this[Noa]=!0)}),this[F$]=cwe.CLOSING}}send(t){if(fI.brandCheck(this,e),fI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=fI.converters.WebSocketSendData(t),this[F$]===e.CONNECTING)throw new tae("Sent before connected.","InvalidStateError");if(!j8n(this)||z8n(this))return;let r=this[FIt].socket;if(typeof t=="string"){let n=Buffer.from(t),o=new qHe(n).createFrame(zHe.TEXT);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ejn.isArrayBuffer(t)){let n=Buffer.from(t),o=new qHe(n).createFrame(zHe.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if(ArrayBuffer.isView(t)){let n=Buffer.from(t,t.byteOffset,t.byteLength),o=new qHe(n).createFrame(zHe.BINARY);this.#t+=n.byteLength,r.write(o,()=>{this.#t-=n.byteLength})}else if($8n(t)){let n=new qHe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);n.frameData=o;let l=n.createFrame(zHe.BINARY);this.#t+=o.byteLength,r.write(l,()=>{this.#t-=o.byteLength})})}}get readyState(){return fI.brandCheck(this,e),this[F$]}get bufferedAmount(){return fI.brandCheck(this,e),this.#t}get url(){return fI.brandCheck(this,e),Boa(this[K8n])}get extensions(){return fI.brandCheck(this,e),this.#r}get protocol(){return fI.brandCheck(this,e),this.#n}get onopen(){return fI.brandCheck(this,e),this.#e.open}set onopen(t){fI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return fI.brandCheck(this,e),this.#e.error}set onerror(t){fI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return fI.brandCheck(this,e),this.#e.close}set onclose(t){fI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return fI.brandCheck(this,e),this.#e.message}set onmessage(t){fI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return fI.brandCheck(this,e),this[GIt]}set binaryType(t){fI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[GIt]="blob":this[GIt]=t}#i(t){this[FIt]=t;let r=new Zoa(this);r.on("drain",function(){this.ws[FIt].socket.resume()}),t.socket.ws=this,this[Doa]=r,this[F$]=cwe.OPEN;let n=t.headersList.get("sec-websocket-extensions");n!==null&&(this.#r=n);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#n=a),Goa("open",this)}};zW.CONNECTING=zW.prototype.CONNECTING=cwe.CONNECTING;zW.OPEN=zW.prototype.OPEN=cwe.OPEN;zW.CLOSING=zW.prototype.CLOSING=cwe.CLOSING;zW.CLOSED=zW.prototype.CLOSED=cwe.CLOSED;Object.defineProperties(zW.prototype,{CONNECTING:rae,OPEN:rae,CLOSING:rae,CLOSED:rae,url:TM,readyState:TM,bufferedAmount:TM,onopen:TM,onerror:TM,onclose:TM,close:TM,onmessage:TM,binaryType:TM,send:TM,extensions:TM,protocol:TM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(zW,{CONNECTING:rae,OPEN:rae,CLOSING:rae,CLOSED:rae});fI.converters["sequence"]=fI.sequenceConverter(fI.converters.DOMString);fI.converters["DOMString or sequence"]=function(e){return fI.util.Type(e)==="Object"&&Symbol.iterator in e?fI.converters["sequence"](e):fI.converters.DOMString(e)};fI.converters.WebSocketInit=fI.dictionaryConverter([{key:"protocols",converter:fI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return Loa()}},{key:"headers",converter:fI.nullableConverter(fI.converters.HeadersInit)}]);fI.converters["DOMString or sequence or WebSocketInit"]=function(e){return fI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?fI.converters.WebSocketInit(e):{protocols:fI.converters["DOMString or sequence"](e)}};fI.converters.WebSocketSendData=function(e){if(fI.util.Type(e)==="Object"){if($8n(e))return fI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||ejn.isAnyArrayBuffer(e))return fI.converters.BufferSource(e)}return fI.converters.USVString(e)};tjn.exports={WebSocket:zW}});var ojn=H((Xsu,Eh)=>{"use strict";var Voa=DHe(),njn=Ift(),ijn=Ub(),Poa=PBe(),Woa=hJn(),Ooa=FHe(),$Ie=zC(),{InvalidArgumentError:ZIt}=ijn,lwe=cUn(),Moa=EHe(),Hoa=jCr(),Yoa=YUn(),Qoa=$Cr(),Xoa=VCr(),Joa=jUn(),Uoa=tKn(),{getGlobalDispatcher:sjn,setGlobalDispatcher:Koa}=UBe(),joa=aKn(),zoa=Kmr(),qoa=_ft(),O_r;try{wt("crypto"),O_r=!0}catch{O_r=!1}Object.assign(njn.prototype,lwe);Eh.exports.Dispatcher=njn;Eh.exports.Client=Voa;Eh.exports.Pool=Poa;Eh.exports.BalancedPool=Woa;Eh.exports.Agent=Ooa;Eh.exports.ProxyAgent=Joa;Eh.exports.RetryHandler=Uoa;Eh.exports.DecoratorHandler=joa;Eh.exports.RedirectHandler=zoa;Eh.exports.createRedirectInterceptor=qoa;Eh.exports.buildConnector=Moa;Eh.exports.errors=ijn;function $He(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new ZIt("invalid url");if(r!=null&&typeof r!="object")throw new ZIt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new ZIt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL($Ie.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=$Ie.parseURL(t);let{agent:a,dispatcher:o=sjn()}=r;if(a)throw new ZIt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Eh.exports.setGlobalDispatcher=Koa;Eh.exports.getGlobalDispatcher=sjn;if($Ie.nodeMajor>16||$Ie.nodeMajor===16&&$Ie.nodeMinor>=8){let e=null;Eh.exports.fetch=async function(l){e||(e=fIt().fetch);try{return await e(...arguments)}catch(A){throw typeof A=="object"&&Error.captureStackTrace(A,this),A}},Eh.exports.Headers=UIe().Headers,Eh.exports.Response=nIt().Response,Eh.exports.Request=YHe().Request,Eh.exports.FormData=dft().FormData,Eh.exports.File=gft().File,Eh.exports.FileReader=n8n().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=BBe();Eh.exports.setGlobalOrigin=t,Eh.exports.getGlobalOrigin=r;let{CacheStorage:n}=f8n(),{kConstruct:a}=CIt();Eh.exports.caches=new n(a)}if($Ie.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:n}=B8n();Eh.exports.deleteCookie=e,Eh.exports.getCookies=t,Eh.exports.getSetCookies=r,Eh.exports.setCookie=n;let{parseMIMEType:a,serializeAMimeType:o}=wX();Eh.exports.parseMIMEType=a,Eh.exports.serializeAMimeType=o}if($Ie.nodeMajor>=18&&O_r){let{WebSocket:e}=rjn();Eh.exports.WebSocket=e}Eh.exports.request=$He(lwe.request);Eh.exports.stream=$He(lwe.stream);Eh.exports.pipeline=$He(lwe.pipeline);Eh.exports.connect=$He(lwe.connect);Eh.exports.upgrade=$He(lwe.upgrade);Eh.exports.MockClient=Hoa;Eh.exports.MockPool=Qoa;Eh.exports.MockAgent=Yoa;Eh.exports.mockErrors=Xoa});var cjn=H(ZE=>{"use strict";var $oa=ZE&&ZE.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),eaa=ZE&&ZE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),OIt=ZE&&ZE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&$oa(t,e,r);return eaa(t,e),t},ew=ZE&&ZE.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(ZE,"__esModule",{value:!0});ZE.HttpClient=ZE.isHttps=ZE.HttpClientResponse=ZE.HttpClientError=ZE.getProxyUrl=ZE.MediaTypes=ZE.Headers=ZE.HttpCodes=void 0;var M_r=OIt(wt("http")),ajn=OIt(wt("https")),H_r=OIt(hQn()),LIt=OIt(EQn()),taa=ojn(),RM;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(RM||(ZE.HttpCodes=RM={}));var bG;(function(e){e.Accept="accept",e.ContentType="content-type"})(bG||(ZE.Headers=bG={}));var Z$;(function(e){e.ApplicationJson="application/json"})(Z$||(ZE.MediaTypes=Z$={}));function raa(e){let t=H_r.getProxyUrl(new URL(e));return t?t.href:""}ZE.getProxyUrl=raa;var naa=[RM.MovedPermanently,RM.ResourceMoved,RM.SeeOther,RM.TemporaryRedirect,RM.PermanentRedirect],iaa=[RM.BadGateway,RM.ServiceUnavailable,RM.GatewayTimeout],saa=["OPTIONS","GET","DELETE","HEAD"],oaa=10,aaa=5,PIt=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};ZE.HttpClientError=PIt;var WIt=class{constructor(t){this.message=t}readBody(){return ew(this,void 0,void 0,function*(){return new Promise(t=>ew(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return ew(this,void 0,void 0,function*(){return new Promise(t=>ew(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};ZE.HttpClientResponse=WIt;function caa(e){return new URL(e).protocol==="https:"}ZE.isHttps=caa;var Y_r=class{constructor(t,r,n){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(t,r){return ew(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return ew(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return ew(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("POST",t,r,n||{})})}patch(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("PATCH",t,r,n||{})})}put(t,r,n){return ew(this,void 0,void 0,function*(){return this.request("PUT",t,r,n||{})})}head(t,r){return ew(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,n,a){return ew(this,void 0,void 0,function*(){return this.request(t,r,n,a)})}getJson(t,r={}){return ew(this,void 0,void 0,function*(){r[bG.Accept]=this._getExistingOrDefaultHeader(r,bG.Accept,Z$.ApplicationJson);let n=yield this.get(t,r);return this._processResponse(n,this.requestOptions)})}postJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.post(t,a,n);return this._processResponse(o,this.requestOptions)})}putJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.put(t,a,n);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,n={}){return ew(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);n[bG.Accept]=this._getExistingOrDefaultHeader(n,bG.Accept,Z$.ApplicationJson),n[bG.ContentType]=this._getExistingOrDefaultHeader(n,bG.ContentType,Z$.ApplicationJson);let o=yield this.patch(t,a,n);return this._processResponse(o,this.requestOptions)})}request(t,r,n,a){return ew(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),l=this._prepareRequest(t,o,a),A=this._allowRetries&&saa.includes(t)?this._maxRetries+1:1,f=0,I;do{if(I=yield this.requestRaw(l,n),I&&I.message&&I.message.statusCode===RM.Unauthorized){let b;for(let E of this.handlers)if(E.canHandleAuthentication(I)){b=E;break}return b?b.handleAuthentication(this,l,n):I}let C=this._maxRedirects;for(;I.message.statusCode&&naa.includes(I.message.statusCode)&&this._allowRedirects&&C>0;){let b=I.message.headers.location;if(!b)break;let E=new URL(b);if(o.protocol==="https:"&&o.protocol!==E.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield I.readBody(),E.hostname!==o.hostname)for(let N in a)N.toLowerCase()==="authorization"&&delete a[N];l=this._prepareRequest(t,E,a),I=yield this.requestRaw(l,n),C--}if(!I.message.statusCode||!iaa.includes(I.message.statusCode))return I;f+=1,f{function o(l,A){l?a(l):A?n(A):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,n){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,I){a||(a=!0,n(f,I))}let l=t.httpModule.request(t.options,f=>{let I=new WIt(f);o(void 0,I)}),A;l.on("socket",f=>{A=f}),l.setTimeout(this._socketTimeout||3*6e4,()=>{A&&A.end(),o(new Error(`Request timeout: ${t.options.path}`))}),l.on("error",function(f){o(f)}),r&&typeof r=="string"&&l.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){l.end()}),r.pipe(l)):l.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),n=H_r.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(t,r,n){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?ajn:M_r;let l=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):l,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let A of this.handlers)A.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},VIt(this.requestOptions.headers),VIt(t||{})):VIt(t||{})}_getExistingOrDefaultHeader(t,r,n){let a;return this.requestOptions&&this.requestOptions.headers&&(a=VIt(this.requestOptions.headers)[r]),t[r]||a||n}_getAgent(t){let r,n=H_r.getProxyUrl(t),a=n&&n.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||M_r.globalAgent.maxSockets),n&&n.hostname){let A={maxSockets:l,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},f,I=n.protocol==="https:";o?f=I?LIt.httpsOverHttps:LIt.httpsOverHttp:f=I?LIt.httpOverHttps:LIt.httpOverHttp,r=f(A),this._proxyAgent=r}if(!r){let A={keepAlive:this._keepAlive,maxSockets:l};r=o?new ajn.Agent(A):new M_r.Agent(A),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let a=t.protocol==="https:";return n=new taa.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,a&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_performExponentialBackoff(t){return ew(this,void 0,void 0,function*(){t=Math.min(oaa,t);let r=aaa*Math.pow(2,t);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(t,r){return ew(this,void 0,void 0,function*(){return new Promise((n,a)=>ew(this,void 0,void 0,function*(){let o=t.message.statusCode||0,l={statusCode:o,result:null,headers:{}};o===RM.NotFound&&n(l);function A(C,b){if(typeof b=="string"){let E=new Date(b);if(!isNaN(E.valueOf()))return E}return b}let f,I;try{I=yield t.readBody(),I&&I.length>0&&(r&&r.deserializeDates?f=JSON.parse(I,A):f=JSON.parse(I),l.result=f),l.headers=t.message.headers}catch{}if(o>299){let C;f&&f.message?C=f.message:I&&I.length>0?C=I:C=`Failed request: (${o})`;let b=new PIt(C,o);b.result=l.result,a(b)}else n(l)}))})}};ZE.HttpClient=Y_r;var VIt=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var B2=H((Usu,ljn)=>{ljn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Y0=H((Ksu,ujn)=>{"use strict";var RS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},Q_r=class extends RS{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},X_r=class extends RS{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},J_r=class extends RS{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},U_r=class extends RS{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},K_r=class extends RS{constructor(t,r,n,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=n}},j_r=class extends RS{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},z_r=class extends RS{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},MIt=class extends RS{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},q_r=class extends MIt{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},$_r=class extends RS{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},e0r=class extends RS{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},t0r=class extends RS{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},r0r=class extends RS{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},n0r=class extends RS{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},i0r=class extends RS{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},s0r=class extends RS{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},o0r=class extends RS{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},a0r=class extends Error{constructor(t,r,n){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}},c0r=class extends RS{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},l0r=class extends RS{constructor(t,r,{headers:n,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=n}},u0r=class extends RS{constructor(t,r,{headers:n,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=n}},g0r=class extends RS{constructor(t,r,n){super(r,{cause:t,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};ujn.exports={AbortError:MIt,HTTPParserError:a0r,UndiciError:RS,HeadersTimeoutError:X_r,HeadersOverflowError:J_r,BodyTimeoutError:U_r,RequestContentLengthMismatchError:e0r,ConnectTimeoutError:Q_r,ResponseStatusCodeError:K_r,InvalidArgumentError:j_r,InvalidReturnValueError:z_r,RequestAbortedError:q_r,ClientDestroyedError:r0r,ClientClosedError:n0r,InformationalError:$_r,SocketError:i0r,NotSupportedError:s0r,ResponseContentLengthMismatchError:t0r,BalancedPoolMissingUpstreamError:o0r,ResponseExceededMaxSizeError:c0r,RequestRetryError:l0r,ResponseError:u0r,SecureProxyConnectionError:g0r}});var YIt=H((jsu,gjn)=>{"use strict";var HIt={},A0r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:Ajn,headerNameLowerCasedRecord:laa}=YIt(),d0r=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,n){if(n===void 0||n>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(n))>127)throw new TypeError("key must be ascii string");t.length!==++n?this.middle=new e(t,r,n):this.value=r}add(t,r){let n=t.length;if(n===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let l=t.charCodeAt(a);if(l>127)throw new TypeError("key must be ascii string");if(o.code===l)if(n===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++n)return a;a=a.middle;break}a=a.code{"use strict";var eYe=wt("node:assert"),{kDestroyed:hjn,kBodyUsed:uwe,kListeners:p0r,kBody:Ijn}=B2(),{IncomingMessage:uaa}=wt("node:http"),UIt=wt("node:stream"),gaa=wt("node:net"),{Blob:Aaa}=wt("node:buffer"),daa=wt("node:util"),{stringify:paa}=wt("node:querystring"),{EventEmitter:faa}=wt("node:events"),{InvalidArgumentError:eD}=Y0(),{headerNameLowerCasedRecord:Iaa}=YIt(),{tree:mjn}=fjn(),[haa,maa]=process.versions.node.split(".").map(e=>Number(e)),JIt=class{constructor(t){this[Ijn]=t,this[uwe]=!1}async*[Symbol.asyncIterator](){eYe(!this[uwe],"disturbed"),this[uwe]=!0,yield*this[Ijn]}};function Caa(e){return KIt(e)?(Ejn(e)===0&&e.on("data",function(){eYe(!1)}),typeof e.readableDidRead!="boolean"&&(e[uwe]=!1,faa.prototype.on.call(e,"data",function(){this[uwe]=!0})),e):e&&typeof e.pipeTo=="function"?new JIt(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&bjn(e)?new JIt(e):e}function _aa(){}function KIt(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Cjn(e){if(e===null)return!1;if(e instanceof Aaa)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function yaa(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=paa(t);return r&&(e+="?"+r),e}function _jn(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function XIt(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function yjn(e){if(typeof e=="string"){if(e=new URL(e),!XIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new eD("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&_jn(e.port)===!1)throw new eD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new eD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new eD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new eD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new eD("Invalid URL origin: the origin must be a string or null/undefined.");if(!XIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,n=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!XIt(e.origin||e.protocol))throw new eD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function baa(e){if(e=yjn(e),e.pathname!=="/"||e.search||e.hash)throw new eD("invalid url");return e}function Eaa(e){if(e[0]==="["){let r=e.indexOf("]");return eYe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function Saa(e){if(!e)return null;eYe(typeof e=="string");let t=Eaa(e);return gaa.isIP(t)?"":t}function vaa(e){return JSON.parse(JSON.stringify(e))}function Baa(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function bjn(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Ejn(e){if(e==null)return 0;if(KIt(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(Cjn(e))return e.size!=null?e.size:null;if(Bjn(e))return e.byteLength}return null}function Sjn(e){return e&&!!(e.destroyed||e[hjn]||UIt.isDestroyed?.(e))}function waa(e,t){e==null||!KIt(e)||Sjn(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===uaa&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[hjn]=!0))}var Taa=/timeout=(\d+)/;function Raa(e){let t=e.toString().match(Taa);return t?parseInt(t[1],10)*1e3:null}function vjn(e){return typeof e=="string"?Iaa[e]??e.toLowerCase():mjn.lookup(e)??e.toString("latin1").toLowerCase()}function Naa(e){return mjn.lookup(e)??e.toString("latin1").toLowerCase()}function Daa(e,t){t===void 0&&(t={});for(let r=0;rl.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function kaa(e){let t=e.length,r=new Array(t),n=!1,a=-1,o,l,A=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function Paa(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Waa(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var Oaa=typeof String.prototype.toWellFormed=="function",Maa=typeof String.prototype.isWellFormed=="function";function wjn(e){return Oaa?`${e}`.toWellFormed():daa.toUSVString(e)}function Haa(e){return Maa?`${e}`.isWellFormed():wjn(e)===`${e}`}function Tjn(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function Yaa(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var Q0=wt("node:diagnostics_channel"),h0r=wt("node:util"),jIt=h0r.debuglog("undici"),I0r=h0r.debuglog("fetch"),ehe=h0r.debuglog("websocket"),kjn=!1,zaa={beforeConnect:Q0.channel("undici:client:beforeConnect"),connected:Q0.channel("undici:client:connected"),connectError:Q0.channel("undici:client:connectError"),sendHeaders:Q0.channel("undici:client:sendHeaders"),create:Q0.channel("undici:request:create"),bodySent:Q0.channel("undici:request:bodySent"),headers:Q0.channel("undici:request:headers"),trailers:Q0.channel("undici:request:trailers"),error:Q0.channel("undici:request:error"),open:Q0.channel("undici:websocket:open"),close:Q0.channel("undici:websocket:close"),socketError:Q0.channel("undici:websocket:socket_error"),ping:Q0.channel("undici:websocket:ping"),pong:Q0.channel("undici:websocket:pong")};if(jIt.enabled||I0r.enabled){let e=I0r.enabled?I0r:jIt;Q0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),Q0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,n,r)}),Q0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,n,r,l.message)}),Q0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)}),Q0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:n,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,n,o)}),Q0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("trailers received from %s %s/%s",r,a,n)}),Q0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:n,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,n,o.message)}),kjn=!0}if(ehe.enabled){if(!kjn){let e=jIt.enabled?jIt:ehe;Q0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),Q0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",n,r)}),Q0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:n,port:a,host:o},error:l}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",n,r,l.message)}),Q0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:n,origin:a}}=t;e("sending request to %s %s/%s",r,a,n)})}Q0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;ehe("connection opened %s%s",t,r?`:${r}`:"")}),Q0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:n}=e;ehe("closed connection to %s - %s %s",t.url,r,n)}),Q0.channel("undici:websocket:socket_error").subscribe(e=>{ehe("connection errored - %s",e.message)}),Q0.channel("undici:websocket:ping").subscribe(e=>{ehe("ping received")}),Q0.channel("undici:websocket:pong").subscribe(e=>{ehe("pong received")})}xjn.exports={channels:zaa}});var Vjn=H((eou,Ljn)=>{"use strict";var{InvalidArgumentError:NS,NotSupportedError:qaa}=Y0(),L$=wt("node:assert"),{isValidHTTPToken:Zjn,isValidHeaderValue:Gjn,isStream:$aa,destroy:eca,isBuffer:tca,isFormDataLike:rca,isIterable:nca,isBlobLike:ica,buildURL:sca,validateHandler:oca,getServerName:aca,normalizedMethodRecords:cca}=Em(),{channels:B8}=gwe(),{headerNameLowerCasedRecord:Fjn}=YIt(),lca=/[^\u0021-\u00ff]/,NM=Symbol("handler"),m0r=class{constructor(t,{path:r,method:n,body:a,headers:o,query:l,idempotent:A,blocking:f,upgrade:I,headersTimeout:C,bodyTimeout:b,reset:E,throwOnError:N,expectContinue:B,servername:F},Q){if(typeof r!="string")throw new NS("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new NS("path must be an absolute URL or start with a slash");if(lca.test(r))throw new NS("invalid request path");if(typeof n!="string")throw new NS("method must be a string");if(cca[n]===void 0&&!Zjn(n))throw new NS("invalid request method");if(I&&typeof I!="string")throw new NS("upgrade must be a string");if(C!=null&&(!Number.isFinite(C)||C<0))throw new NS("invalid headersTimeout");if(b!=null&&(!Number.isFinite(b)||b<0))throw new NS("invalid bodyTimeout");if(E!=null&&typeof E!="boolean")throw new NS("invalid reset");if(B!=null&&typeof B!="boolean")throw new NS("invalid expectContinue");if(this.headersTimeout=C,this.bodyTimeout=b,this.throwOnError=N===!0,this.method=n,this.abort=null,a==null)this.body=null;else if($aa(a)){this.body=a;let X=this.body._readableState;(!X||!X.autoDestroy)&&(this.endHandler=function(){eca(this)},this.body.on("end",this.endHandler)),this.errorHandler=ae=>{this.abort?this.abort(ae):this.error=ae},this.body.on("error",this.errorHandler)}else if(tca(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(rca(a)||nca(a)||ica(a))this.body=a;else throw new NS("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=I||null,this.path=l?sca(r,l):r,this.origin=t,this.idempotent=A??(n==="HEAD"||n==="GET"),this.blocking=f??!1,this.reset=E??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=B??!1,Array.isArray(o)){if(o.length%2!==0)throw new NS("headers array must be even");for(let X=0;X{"use strict";var uca=wt("node:events"),qIt=class extends uca{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,n=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(n=a(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new C0r(this,n)}},C0r=class extends qIt{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};Pjn.exports=qIt});var fwe=H((rou,Wjn)=>{"use strict";var gca=tYe(),{ClientDestroyedError:_0r,ClientClosedError:Aca,InvalidArgumentError:Awe}=Y0(),{kDestroy:dca,kClose:pca,kClosed:rYe,kDestroyed:dwe,kDispatch:y0r,kInterceptors:the}=B2(),V$=Symbol("onDestroyed"),pwe=Symbol("onClosed"),$It=Symbol("Intercepted Dispatch"),b0r=class extends gca{constructor(){super(),this[dwe]=!1,this[V$]=null,this[rYe]=!1,this[pwe]=[]}get destroyed(){return this[dwe]}get closed(){return this[rYe]}get interceptors(){return this[the]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[the][r]!="function")throw new Awe("interceptor must be an function")}this[the]=t}close(t){if(t===void 0)return new Promise((n,a)=>{this.close((o,l)=>o?a(o):n(l))});if(typeof t!="function")throw new Awe("invalid callback");if(this[dwe]){queueMicrotask(()=>t(new _0r,null));return}if(this[rYe]){this[pwe]?this[pwe].push(t):queueMicrotask(()=>t(null,null));return}this[rYe]=!0,this[pwe].push(t);let r=()=>{let n=this[pwe];this[pwe]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(l,A)=>l?o(l):a(A))});if(typeof r!="function")throw new Awe("invalid callback");if(this[dwe]){this[V$]?this[V$].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new _0r),this[dwe]=!0,this[V$]=this[V$]||[],this[V$].push(r);let n=()=>{let a=this[V$];this[V$]=null;for(let o=0;o{queueMicrotask(n)})}[$It](t,r){if(!this[the]||this[the].length===0)return this[$It]=this[y0r],this[y0r](t,r);let n=this[y0r].bind(this);for(let a=this[the].length-1;a>=0;a--)n=this[the][a](n);return this[$It]=n,n(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new Awe("handler must be an object");try{if(!t||typeof t!="object")throw new Awe("opts must be an object.");if(this[dwe]||this[V$])throw new _0r;if(this[rYe])throw new Aca;return this[$It](t,r)}catch(n){if(typeof r.onError!="function")throw new Awe("invalid onError method");return r.onError(n),!1}}};Wjn.exports=b0r});var R0r=H((nou,Yjn)=>{"use strict";var Iwe=0,E0r=1e3,S0r=(E0r>>1)-1,P$,v0r=Symbol("kFastTimer"),W$=[],B0r=-2,w0r=-1,Mjn=0,Ojn=1;function T0r(){Iwe+=S0r;let e=0,t=W$.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=w0r,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===w0r?(r._state=B0r,--t!==0&&(W$[e]=W$[t])):++e}W$.length=t,W$.length!==0&&Hjn()}function Hjn(){P$?P$.refresh():(clearTimeout(P$),P$=setTimeout(T0r,S0r),P$.unref&&P$.unref())}var eht=class{[v0r]=!0;_state=B0r;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,n){this._onTimeout=t,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===B0r&&W$.push(this),(!P$||W$.length===1)&&Hjn(),this._state=Mjn}clear(){this._state=w0r,this._idleStart=-1}};Yjn.exports={setTimeout(e,t,r){return t<=E0r?setTimeout(e,t,r):new eht(e,t,r)},clearTimeout(e){e[v0r]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new eht(e,t,r)},clearFastTimeout(e){e.clear()},now(){return Iwe},tick(e=0){Iwe+=e-E0r+1,T0r(),T0r()},reset(){Iwe=0,W$.length=0,clearTimeout(P$),P$=null},kFastTimer:v0r}});var nYe=H((oou,Kjn)=>{"use strict";var fca=wt("node:net"),Qjn=wt("node:assert"),Ujn=Em(),{InvalidArgumentError:Ica,ConnectTimeoutError:hca}=Y0(),tht=R0r();function Xjn(){}var N0r,D0r;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?D0r=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(t,r)}}};function mca({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:n,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new Ica("maxCachedSessions must be a positive integer or zero");let l={path:r,...o},A=new D0r(t??100);return n=n??1e4,e=e??!1,function({hostname:I,host:C,protocol:b,port:E,servername:N,localAddress:B,httpSocket:F},Q){let X;if(b==="https:"){N0r||(N0r=wt("node:tls")),N=N||l.servername||Ujn.getServerName(C)||null;let ne=N||I;Qjn(ne);let ce=a||A.get(ne)||null;E=E||443,X=N0r.connect({highWaterMark:16384,...l,servername:N,session:ce,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:F,port:E,host:I}),X.on("session",function(fe){A.set(ne,fe)})}else Qjn(!F,"httpSocket can only be sent on TLS update"),E=E||80,X=fca.connect({highWaterMark:64*1024,...l,localAddress:B,port:E,host:I});if(l.keepAlive==null||l.keepAlive){let ne=l.keepAliveInitialDelay===void 0?6e4:l.keepAliveInitialDelay;X.setKeepAlive(!0,ne)}let ae=Cca(new WeakRef(X),{timeout:n,hostname:I,port:E});return X.setNoDelay(!0).once(b==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(ae),Q){let ne=Q;Q=null,ne(null,this)}}).on("error",function(ne){if(queueMicrotask(ae),Q){let ce=Q;Q=null,ce(ne)}}),X}}var Cca=process.platform==="win32"?(e,t)=>{if(!t.timeout)return Xjn;let r=null,n=null,a=tht.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>Jjn(e.deref(),t))})},t.timeout);return()=>{tht.clearFastTimeout(a),clearImmediate(r),clearImmediate(n)}}:(e,t)=>{if(!t.timeout)return Xjn;let r=null,n=tht.setFastTimeout(()=>{r=setImmediate(()=>{Jjn(e.deref(),t)})},t.timeout);return()=>{tht.clearFastTimeout(n),clearImmediate(r)}};function Jjn(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,Ujn.destroy(e,new hca(r))}Kjn.exports=mca});var jjn=H(rht=>{"use strict";Object.defineProperty(rht,"__esModule",{value:!0});rht.enumToMap=void 0;function _ca(e){let t={};return Object.keys(e).forEach(r=>{let n=e[r];typeof n=="number"&&(t[r]=n)}),t}rht.enumToMap=_ca});var zjn=H(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.SPECIAL_HEADERS=Gu.HEADER_STATE=Gu.MINOR=Gu.MAJOR=Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS=Gu.TOKEN=Gu.STRICT_TOKEN=Gu.HEX=Gu.URL_CHAR=Gu.STRICT_URL_CHAR=Gu.USERINFO_CHARS=Gu.MARK=Gu.ALPHANUM=Gu.NUM=Gu.HEX_MAP=Gu.NUM_MAP=Gu.ALPHA=Gu.FINISH=Gu.H_METHOD_MAP=Gu.METHOD_MAP=Gu.METHODS_RTSP=Gu.METHODS_ICE=Gu.METHODS_HTTP=Gu.METHODS=Gu.LENIENT_FLAGS=Gu.FLAGS=Gu.TYPE=Gu.ERROR=void 0;var yca=jjn(),bca;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(bca=Gu.ERROR||(Gu.ERROR={}));var Eca;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(Eca=Gu.TYPE||(Gu.TYPE={}));var Sca;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(Sca=Gu.FLAGS||(Gu.FLAGS={}));var vca;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(vca=Gu.LENIENT_FLAGS||(Gu.LENIENT_FLAGS={}));var Pp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Pp=Gu.METHODS||(Gu.METHODS={}));Gu.METHODS_HTTP=[Pp.DELETE,Pp.GET,Pp.HEAD,Pp.POST,Pp.PUT,Pp.CONNECT,Pp.OPTIONS,Pp.TRACE,Pp.COPY,Pp.LOCK,Pp.MKCOL,Pp.MOVE,Pp.PROPFIND,Pp.PROPPATCH,Pp.SEARCH,Pp.UNLOCK,Pp.BIND,Pp.REBIND,Pp.UNBIND,Pp.ACL,Pp.REPORT,Pp.MKACTIVITY,Pp.CHECKOUT,Pp.MERGE,Pp["M-SEARCH"],Pp.NOTIFY,Pp.SUBSCRIBE,Pp.UNSUBSCRIBE,Pp.PATCH,Pp.PURGE,Pp.MKCALENDAR,Pp.LINK,Pp.UNLINK,Pp.PRI,Pp.SOURCE];Gu.METHODS_ICE=[Pp.SOURCE];Gu.METHODS_RTSP=[Pp.OPTIONS,Pp.DESCRIBE,Pp.ANNOUNCE,Pp.SETUP,Pp.PLAY,Pp.PAUSE,Pp.TEARDOWN,Pp.GET_PARAMETER,Pp.SET_PARAMETER,Pp.REDIRECT,Pp.RECORD,Pp.FLUSH,Pp.GET,Pp.POST];Gu.METHOD_MAP=yca.enumToMap(Pp);Gu.H_METHOD_MAP={};Object.keys(Gu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Gu.H_METHOD_MAP[e]=Gu.METHOD_MAP[e])});var Bca;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Bca=Gu.FINISH||(Gu.FINISH={}));Gu.ALPHA=[];for(let e=65;e<=90;e++)Gu.ALPHA.push(String.fromCharCode(e)),Gu.ALPHA.push(String.fromCharCode(e+32));Gu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Gu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Gu.NUM=["0","1","2","3","4","5","6","7","8","9"];Gu.ALPHANUM=Gu.ALPHA.concat(Gu.NUM);Gu.MARK=["-","_",".","!","~","*","'","(",")"];Gu.USERINFO_CHARS=Gu.ALPHANUM.concat(Gu.MARK).concat(["%",";",":","&","=","+","$",","]);Gu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Gu.ALPHANUM);Gu.URL_CHAR=Gu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Gu.URL_CHAR.push(e);Gu.HEX=Gu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Gu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Gu.ALPHANUM);Gu.TOKEN=Gu.STRICT_TOKEN.concat([" "]);Gu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Gu.HEADER_CHARS.push(e);Gu.CONNECTION_TOKEN_CHARS=Gu.HEADER_CHARS.filter(e=>e!==44);Gu.MAJOR=Gu.NUM_MAP;Gu.MINOR=Gu.MAJOR;var hwe;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(hwe=Gu.HEADER_STATE||(Gu.HEADER_STATE={}));Gu.SPECIAL_HEADERS={connection:hwe.CONNECTION,"content-length":hwe.CONTENT_LENGTH,"proxy-connection":hwe.CONNECTION,"transfer-encoding":hwe.TRANSFER_ENCODING,upgrade:hwe.UPGRADE}});var k0r=H((lou,qjn)=>{"use strict";var{Buffer:wca}=wt("node:buffer");qjn.exports=wca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var e6n=H((uou,$jn)=>{"use strict";var{Buffer:Tca}=wt("node:buffer");$jn.exports=Tca.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var iYe=H((gou,c6n)=>{"use strict";var t6n=["GET","HEAD","POST"],Rca=new Set(t6n),Nca=[101,204,205,304],r6n=[301,302,303,307,308],Dca=new Set(r6n),n6n=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],kca=new Set(n6n),i6n=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],xca=new Set(i6n),Gca=["follow","manual","error"],s6n=["GET","HEAD","OPTIONS","TRACE"],Fca=new Set(s6n),Zca=["navigate","same-origin","no-cors","cors"],Lca=["omit","same-origin","include"],Vca=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Pca=["content-encoding","content-language","content-location","content-type","content-length"],Wca=["half"],o6n=["CONNECT","TRACE","TRACK"],Oca=new Set(o6n),a6n=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Mca=new Set(a6n);c6n.exports={subresource:a6n,forbiddenMethods:o6n,requestBodyHeader:Pca,referrerPolicy:i6n,requestRedirect:Gca,requestMode:Zca,requestCredentials:Lca,requestCache:Vca,redirectStatus:r6n,corsSafeListedMethods:t6n,nullBodyStatus:Nca,safeMethods:s6n,badPorts:n6n,requestDuplex:Wca,subresourceSet:Mca,badPortsSet:kca,redirectStatusSet:Dca,corsSafeListedMethodsSet:Rca,safeMethodsSet:Fca,forbiddenMethodsSet:Oca,referrerPolicySet:xca}});var G0r=H((Aou,l6n)=>{"use strict";var x0r=Symbol.for("undici.globalOrigin.1");function Hca(){return globalThis[x0r]}function Yca(e){if(e===void 0){Object.defineProperty(globalThis,x0r,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,x0r,{value:t,writable:!0,enumerable:!1,configurable:!1})}l6n.exports={getGlobalOrigin:Hca,setGlobalOrigin:Yca}});var eV=H((dou,I6n)=>{"use strict";var iht=wt("node:assert"),Qca=new TextEncoder,sYe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Xca=/[\u000A\u000D\u0009\u0020]/,Jca=/[\u0009\u000A\u000C\u000D\u0020]/g,Uca=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Kca(e){iht(e.protocol==="data:");let t=A6n(e,!0);t=t.slice(5);let r={position:0},n=mwe(",",t,r),a=n.length;if(n=tla(n,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),l=d6n(o);if(/;(\u0020){0,}base64$/i.test(n)){let f=f6n(l);if(l=zca(f),l==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let A=F0r(n);return A==="failure"&&(A=F0r("text/plain;charset=US-ASCII")),{mimeType:A,body:l}}function A6n(e,t=!1){if(!t)return e.href;let r=e.href,n=e.hash.length,a=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?a.slice(0,-1):a}function sht(e,t,r){let n="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function g6n(e){return e>=48&&e<=57?e-48:(e&223)-55}function jca(e){let t=e.length,r=new Uint8Array(t),n=0;for(let a=0;ae.length)return"failure";t.position++;let n=mwe(";",e,t);if(n=nht(n,!1,!0),n.length===0||!sYe.test(n))return"failure";let a=r.toLowerCase(),o=n.toLowerCase(),l={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionXca.test(I),e,t);let A=sht(I=>I!==";"&&I!=="=",e,t);if(A=A.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=p6n(e,t,!0),mwe(";",e,t);else if(f=mwe(";",e,t),f=nht(f,!1,!0),f.length===0)continue;A.length!==0&&sYe.test(A)&&(f.length===0||Uca.test(f))&&!l.parameters.has(A)&&l.parameters.set(A,f)}return l}function zca(e){e=e.replace(Jca,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function p6n(e,t,r){let n=t.position,a="";for(iht(e[t.position]==='"'),t.position++;a+=sht(l=>l!=='"'&&l!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{iht(o==='"');break}}return r?a:e.slice(n,t.position)}function qca(e){iht(e!=="failure");let{parameters:t,essence:r}=e,n=r;for(let[a,o]of t.entries())n+=";",n+=a,n+="=",sYe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function $ca(e){return e===13||e===10||e===9||e===32}function nht(e,t=!0,r=!0){return Z0r(e,t,r,$ca)}function ela(e){return e===13||e===10||e===9||e===12||e===32}function tla(e,t=!0,r=!0){return Z0r(e,t,r,ela)}function Z0r(e,t,r,n){let a=0,o=e.length-1;if(t)for(;a0&&n(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function f6n(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",n=0,a=65535;for(;nt&&(a=t-n),r+=String.fromCharCode.apply(null,e.subarray(n,n+=a));return r}function rla(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}I6n.exports={dataURLProcessor:Kca,URLSerializer:A6n,collectASequenceOfCodePoints:sht,collectASequenceOfCodePointsFast:mwe,stringPercentDecode:d6n,parseMIMEType:F0r,collectAnHTTPQuotedString:p6n,serializeAMimeType:qca,removeChars:Z0r,removeHTTPWhitespace:nht,minimizeSupportedMimeType:rla,HTTP_TOKEN_CODEPOINTS:sYe,isomorphicDecode:f6n}});var kk=H((pou,h6n)=>{"use strict";var{types:w8,inspect:nla}=wt("node:util"),{toUSVString:ila}=Em(),Cu={};Cu.converters={};Cu.util={};Cu.errors={};Cu.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};Cu.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return Cu.errors.exception({header:e.prefix,message:r})};Cu.errors.invalidArgument=function(e){return Cu.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};Cu.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};Cu.argumentLengthCheck=function({length:e},t,r){if(ea)throw Cu.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${l}.`});return l}return!Number.isNaN(l)&&n?.clamp===!0?(l=Math.min(Math.max(l,o),a),Math.floor(l)%2===0?l=Math.floor(l):l=Math.ceil(l),l):Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY?0:(l=Cu.util.IntegerPart(l),l=l%Math.pow(2,t),r==="signed"&&l>=Math.pow(2,t)-1?l-Math.pow(2,t):l)};Cu.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};Cu.util.Stringify=function(e){switch(Cu.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return nla(e);case"String":return`"${e}"`;default:return`${e}`}};Cu.sequenceConverter=function(e){return(t,r,n,a)=>{if(Cu.util.Type(t)!=="Object")throw Cu.errors.exception({header:r,message:`${n} (${Cu.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),l=[],A=0;if(o===void 0||typeof o.next!="function")throw Cu.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:f,value:I}=o.next();if(f)break;l.push(e(I,r,`${n}[${A++}]`))}return l}};Cu.recordConverter=function(e,t){return(r,n,a)=>{if(Cu.util.Type(r)!=="Object")throw Cu.errors.exception({header:n,message:`${a} ("${Cu.util.Type(r)}") is not an Object.`});let o={};if(!w8.isProxy(r)){let A=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of A){let I=e(f,n,a),C=t(r[f],n,a);o[I]=C}return o}let l=Reflect.ownKeys(r);for(let A of l)if(Reflect.getOwnPropertyDescriptor(r,A)?.enumerable){let I=e(A,n,a),C=t(r[A],n,a);o[I]=C}return o}};Cu.interfaceConverter=function(e){return(t,r,n,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw Cu.errors.exception({header:r,message:`Expected ${n} ("${Cu.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};Cu.dictionaryConverter=function(e){return(t,r,n)=>{let a=Cu.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw Cu.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let l of e){let{key:A,defaultValue:f,required:I,converter:C}=l;if(I===!0&&!Object.hasOwn(t,A))throw Cu.errors.exception({header:r,message:`Missing required key "${A}".`});let b=t[A],E=Object.hasOwn(l,"defaultValue");if(E&&b!==null&&(b??=f()),I||E||b!==void 0){if(b=C(b,r,`${n}.${A}`),l.allowedValues&&!l.allowedValues.includes(b))throw Cu.errors.exception({header:r,message:`${b} is not an accepted type. Expected one of ${l.allowedValues.join(", ")}.`});o[A]=b}}return o}};Cu.nullableConverter=function(e){return(t,r,n)=>t===null?t:e(t,r,n)};Cu.converters.DOMString=function(e,t,r,n){if(e===null&&n?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw Cu.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};Cu.converters.ByteString=function(e,t,r){let n=Cu.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${n.charCodeAt(a)} which is greater than 255.`);return n};Cu.converters.USVString=ila;Cu.converters.boolean=function(e){return!!e};Cu.converters.any=function(e){return e};Cu.converters["long long"]=function(e,t,r){return Cu.util.ConvertToInt(e,64,"signed",void 0,t,r)};Cu.converters["unsigned long long"]=function(e,t,r){return Cu.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};Cu.converters["unsigned long"]=function(e,t,r){return Cu.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};Cu.converters["unsigned short"]=function(e,t,r,n){return Cu.util.ConvertToInt(e,16,"unsigned",n,t,r)};Cu.converters.ArrayBuffer=function(e,t,r,n){if(Cu.util.Type(e)!=="Object"||!w8.isAnyArrayBuffer(e))throw Cu.errors.conversionFailed({prefix:t,argument:`${r} ("${Cu.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&w8.isSharedArrayBuffer(e))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.TypedArray=function(e,t,r,n,a){if(Cu.util.Type(e)!=="Object"||!w8.isTypedArray(e)||e.constructor.name!==t.name)throw Cu.errors.conversionFailed({prefix:r,argument:`${n} ("${Cu.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.DataView=function(e,t,r,n){if(Cu.util.Type(e)!=="Object"||!w8.isDataView(e))throw Cu.errors.exception({header:t,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&w8.isSharedArrayBuffer(e.buffer))throw Cu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Cu.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Cu.converters.BufferSource=function(e,t,r,n){if(w8.isAnyArrayBuffer(e))return Cu.converters.ArrayBuffer(e,t,r,{...n,allowShared:!1});if(w8.isTypedArray(e))return Cu.converters.TypedArray(e,e.constructor,t,r,{...n,allowShared:!1});if(w8.isDataView(e))return Cu.converters.DataView(e,t,r,{...n,allowShared:!1});throw Cu.errors.conversionFailed({prefix:t,argument:`${r} ("${Cu.util.Stringify(e)}")`,types:["BufferSource"]})};Cu.converters["sequence"]=Cu.sequenceConverter(Cu.converters.ByteString);Cu.converters["sequence>"]=Cu.sequenceConverter(Cu.converters["sequence"]);Cu.converters["record"]=Cu.recordConverter(Cu.converters.ByteString,Cu.converters.ByteString);h6n.exports={webidl:Cu}});var qW=H((fou,D6n)=>{"use strict";var{Transform:sla}=wt("node:stream"),m6n=wt("node:zlib"),{redirectStatusSet:ola,referrerPolicySet:ala,badPortsSet:cla}=iYe(),{getGlobalOrigin:C6n}=G0r(),{collectASequenceOfCodePoints:rhe,collectAnHTTPQuotedString:lla,removeChars:ula,parseMIMEType:gla}=eV(),{performance:Ala}=wt("node:perf_hooks"),{isBlobLike:dla,ReadableStreamFrom:pla,isValidHTTPToken:_6n,normalizedMethodRecordsBase:fla}=Em(),nhe=wt("node:assert"),{isUint8Array:Ila}=wt("node:util/types"),{webidl:oYe}=kk(),y6n=[],aht;try{aht=wt("node:crypto");let e=["sha256","sha384","sha512"];y6n=aht.getHashes().filter(t=>e.includes(t))}catch{}function b6n(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function hla(e,t){if(!ola.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&S6n(r)&&(E6n(r)||(r=mla(r)),r=new URL(r,b6n(e))),r&&!r.hash&&(r.hash=t),r}function E6n(e){for(let t=0;t126||r<32)return!1}return!0}function mla(e){return Buffer.from(e,"binary").toString("utf8")}function cYe(e){return e.urlList[e.urlList.length-1]}function Cla(e){let t=cYe(e);return R6n(t)&&cla.has(t.port)?"blocked":"allowed"}function _la(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function yla(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var bla=_6n;function S6n(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` -`)||e.includes("\r")||e.includes("\0"))===!1}function Ela(e,t){let{headersList:r}=t,n=(r.get("referrer-policy",!0)??"").split(","),a="";if(n.length>0)for(let o=n.length;o!==0;o--){let l=n[o-1].trim();if(ala.has(l)){a=l;break}}a!==""&&(e.referrerPolicy=a)}function Sla(){return"allowed"}function vla(){return"success"}function Bla(){return"success"}function wla(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function Tla(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&V0r(e.origin)&&!V0r(cYe(e))&&(t=null);break;case"same-origin":cht(e,cYe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function Cwe(e,t){return e}function Rla(e,t,r){return!e?.startTime||e.startTime4096&&(n=a);let o=cht(e,n),l=aYe(n)&&!aYe(e.url);switch(t){case"origin":return a??L0r(r,!0);case"unsafe-url":return n;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?n:a;case"strict-origin-when-cross-origin":{let A=cYe(e);return cht(n,A)?n:aYe(n)&&!aYe(A)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":a}}function L0r(e,t){return nhe(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function aYe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function Gla(e,t){if(aht===void 0)return!0;let r=B6n(t);if(r==="no metadata"||r.length===0)return!0;let n=Zla(r),a=Lla(r,n);for(let o of a){let l=o.algo,A=o.hash,f=aht.createHash(l).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),Vla(f,A))return!0}return!1}var Fla=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function B6n(e){let t=[],r=!0;for(let n of e.split(" ")){r=!1;let a=Fla.exec(n);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();y6n.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function Zla(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=n,t=a}),resolve:e,reject:t}}function Ola(e){return e.controller.state==="aborted"}function Mla(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function Hla(e){return fla[e.toLowerCase()]??e}function Yla(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return nhe(typeof t=="string"),t}var Qla=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function w6n(e,t,r=0,n=1){class a{#e;#t;#n;constructor(l,A){this.#e=l,this.#t=A,this.#n=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let l=this.#n,A=this.#e[t],f=A.length;if(l>=f)return{value:void 0,done:!0};let{[r]:I,[n]:C}=A[l];this.#n=l+1;let b;switch(this.#t){case"key":b=I;break;case"value":b=C;break;case"key+value":b=[I,C];break}return{value:b,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,Qla),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,l){return new a(o,l)}}function Xla(e,t,r,n=0,a=1){let o=w6n(e,r,n,a),l={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return oYe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return oYe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return oYe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,I=globalThis){if(oYe.brandCheck(this,t),oYe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:C,1:b}of o(this,"key+value"))f.call(I,b,C,this)}}};return Object.defineProperties(t.prototype,{...l,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:l.entries.value}})}async function Jla(e,t,r){let n=t,a=r,o;try{o=e.stream.getReader()}catch(l){a(l);return}try{n(await T6n(o))}catch(l){a(l)}}function Ula(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function Kla(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var jla=/[^\x00-\xFF]/;function oht(e){return nhe(!jla.test(e)),e}async function T6n(e){let t=[],r=0;for(;;){let{done:n,value:a}=await e.read();if(n)return Buffer.concat(t,r);if(!Ila(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function zla(e){nhe("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function V0r(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function R6n(e){nhe("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function qla(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(t&&rhe(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,t&&rhe(f=>f===" "||f===" ",r,n);let a=rhe(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),o=a.length?Number(a):null;if(t&&rhe(f=>f===" "||f===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,t&&rhe(f=>f===" "||f===" ",r,n);let l=rhe(f=>{let I=f.charCodeAt(0);return I>=48&&I<=57},r,n),A=l.length?Number(l):null;return n.positionA?"failure":{rangeStartValue:o,rangeEndValue:A}}function $la(e,t,r){let n="bytes ";return n+=oht(`${e}`),n+="-",n+=oht(`${t}`),n+="/",n+=oht(`${r}`),n}var P0r=class extends sla{#e;constructor(t){super(),this.#e=t}_transform(t,r,n){if(!this._inflateStream){if(t.length===0){n();return}this._inflateStream=(t[0]&15)===8?m6n.createInflate(this.#e):m6n.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,n)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function eua(e){return new P0r(e)}function tua(e){let t=null,r=null,n=null,a=N6n("content-type",e);if(a===null)return"failure";for(let o of a){let l=gla(o);l==="failure"||l.essence==="*/*"||(n=l,n.essence!==r?(t=null,n.parameters.has("charset")&&(t=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&t!==null&&n.parameters.set("charset",t))}return n??"failure"}function rua(e){let t=e,r={position:0},n=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),n.push(a),a=""}return n}function N6n(e,t){let r=t.get(e,!0);return r===null?null:rua(r)}var nua=new TextDecoder;function iua(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),nua.decode(e))}var W0r=class{get baseUrl(){return C6n()}get origin(){return this.baseUrl?.origin}policyContainer=v6n()},O0r=class{settingsObject=new W0r},sua=new O0r;D6n.exports={isAborted:Ola,isCancelled:Mla,isValidEncodedURL:E6n,createDeferredPromise:Wla,ReadableStreamFrom:pla,tryUpgradeRequestToAPotentiallyTrustworthyURL:Pla,clampAndCoarsenConnectionTimingInfo:Rla,coarsenedSharedCurrentTime:Nla,determineRequestsReferrer:xla,makePolicyContainer:v6n,clonePolicyContainer:kla,appendFetchMetadata:wla,appendRequestOriginHeader:Tla,TAOCheck:Bla,corsCheck:vla,crossOriginResourcePolicyCheck:Sla,createOpaqueTimingInfo:Dla,setRequestReferrerPolicyOnRedirect:Ela,isValidHTTPToken:_6n,requestBadPort:Cla,requestCurrentURL:cYe,responseURL:b6n,responseLocationURL:hla,isBlobLike:dla,isURLPotentiallyTrustworthy:aYe,isValidReasonPhrase:yla,sameOrigin:cht,normalizeMethod:Hla,serializeJavascriptValueToJSONString:Yla,iteratorMixin:Xla,createIterator:w6n,isValidHeaderName:bla,isValidHeaderValue:S6n,isErrorLike:_la,fullyReadBody:Jla,bytesMatch:Gla,isReadableStreamLike:Ula,readableStreamClose:Kla,isomorphicEncode:oht,urlIsLocal:zla,urlHasHttpsScheme:V0r,urlIsHttpHttpsScheme:R6n,readAllBytes:T6n,simpleRangeHeaderValue:qla,buildContentRange:$la,parseMetadata:B6n,createInflate:eua,extractMimeType:tua,getDecodeSplit:N6n,utf8DecodeBytes:iua,environmentSettingsObject:sua}});var nae=H((Iou,k6n)=>{"use strict";k6n.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var H0r=H((hou,x6n)=>{"use strict";var{Blob:oua,File:aua}=wt("node:buffer"),{kState:O$}=nae(),{webidl:T8}=kk(),M0r=class e{constructor(t,r,n={}){let a=r,o=n.type,l=n.lastModified??Date.now();this[O$]={blobLike:t,name:a,type:o,lastModified:l}}stream(...t){return T8.brandCheck(this,e),this[O$].blobLike.stream(...t)}arrayBuffer(...t){return T8.brandCheck(this,e),this[O$].blobLike.arrayBuffer(...t)}slice(...t){return T8.brandCheck(this,e),this[O$].blobLike.slice(...t)}text(...t){return T8.brandCheck(this,e),this[O$].blobLike.text(...t)}get size(){return T8.brandCheck(this,e),this[O$].blobLike.size}get type(){return T8.brandCheck(this,e),this[O$].blobLike.type}get name(){return T8.brandCheck(this,e),this[O$].name}get lastModified(){return T8.brandCheck(this,e),this[O$].lastModified}get[Symbol.toStringTag](){return"File"}};T8.converters.Blob=T8.interfaceConverter(oua);function cua(e){return e instanceof aua||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}x6n.exports={FileLike:M0r,isFileLike:cua}});var uYe=H((mou,V6n)=>{"use strict";var{isBlobLike:lht,iteratorMixin:lua}=qW(),{kState:WZ}=nae(),{kEnumerableProperty:_we}=Em(),{FileLike:G6n,isFileLike:uua}=H0r(),{webidl:W1}=kk(),{File:L6n}=wt("node:buffer"),F6n=wt("node:util"),Z6n=globalThis.File??L6n,lYe=class e{constructor(t){if(t!==void 0)throw W1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[WZ]=[]}append(t,r,n=void 0){W1.brandCheck(this,e);let a="FormData.append";if(W1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!lht(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=W1.converters.USVString(t,a,"name"),r=lht(r)?W1.converters.Blob(r,a,"value",{strict:!1}):W1.converters.USVString(r,a,"value"),n=arguments.length===3?W1.converters.USVString(n,a,"filename"):void 0;let o=Y0r(t,r,n);this[WZ].push(o)}delete(t){W1.brandCheck(this,e);let r="FormData.delete";W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ]=this[WZ].filter(n=>n.name!==t)}get(t){W1.brandCheck(this,e);let r="FormData.get";W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name");let n=this[WZ].findIndex(a=>a.name===t);return n===-1?null:this[WZ][n].value}getAll(t){W1.brandCheck(this,e);let r="FormData.getAll";return W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ].filter(n=>n.name===t).map(n=>n.value)}has(t){W1.brandCheck(this,e);let r="FormData.has";return W1.argumentLengthCheck(arguments,1,r),t=W1.converters.USVString(t,r,"name"),this[WZ].findIndex(n=>n.name===t)!==-1}set(t,r,n=void 0){W1.brandCheck(this,e);let a="FormData.set";if(W1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!lht(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=W1.converters.USVString(t,a,"name"),r=lht(r)?W1.converters.Blob(r,a,"name",{strict:!1}):W1.converters.USVString(r,a,"name"),n=arguments.length===3?W1.converters.USVString(n,a,"name"):void 0;let o=Y0r(t,r,n),l=this[WZ].findIndex(A=>A.name===t);l!==-1?this[WZ]=[...this[WZ].slice(0,l),o,...this[WZ].slice(l+1).filter(A=>A.name!==t)]:this[WZ].push(o)}[F6n.inspect.custom](t,r){let n=this[WZ].reduce((o,l)=>(o[l.name]?Array.isArray(o[l.name])?o[l.name].push(l.value):o[l.name]=[o[l.name],l.value]:o[l.name]=l.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=F6n.formatWithOptions(r,n);return`FormData ${a.slice(a.indexOf("]")+2)}`}};lua("FormData",lYe,WZ,"name","value");Object.defineProperties(lYe.prototype,{append:_we,delete:_we,get:_we,getAll:_we,has:_we,set:_we,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Y0r(e,t,r){if(typeof t!="string"){if(uua(t)||(t=t instanceof Blob?new Z6n([t],"blob",{type:t.type}):new G6n(t,"blob",{type:t.type})),r!==void 0){let n={type:t.type,lastModified:t.lastModified};t=t instanceof L6n?new Z6n([t],r,n):new G6n(t,r,n)}}return{name:e,value:t}}V6n.exports={FormData:lYe,makeEntry:Y0r}});var Y6n=H((Cou,H6n)=>{"use strict";var{isUSVString:P6n,bufferToLowerCasedHeaderName:gua}=Em(),{utf8DecodeBytes:Aua}=qW(),{HTTP_TOKEN_CODEPOINTS:dua,isomorphicDecode:W6n}=eV(),{isFileLike:pua}=H0r(),{makeEntry:fua}=uYe(),uht=wt("node:assert"),{File:Iua}=wt("node:buffer"),hua=globalThis.File??Iua,mua=Buffer.from('form-data; name="'),O6n=Buffer.from("; filename"),Cua=Buffer.from("--"),_ua=Buffer.from(`--\r -`);function yua(e){for(let t=0;t70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}function Eua(e,t){uht(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let l=e.length;for(;e[l-1]===10&&e[l-2]===13;)l-=2;for(l!==e.length&&(e=e.subarray(0,l));;){if(e.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===e.length-2&&ght(e,Cua,o)||o.position===e.length-4&&ght(e,_ua,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let A=Sua(e,o);if(A==="failure")return"failure";let{name:f,filename:I,contentType:C,encoding:b}=A;o.position+=2;let E;{let B=e.indexOf(n.subarray(2),o.position);if(B===-1)return"failure";E=e.subarray(o.position,B-4),o.position+=E.length,b==="base64"&&(E=Buffer.from(E.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let N;I!==null?(C??="text/plain",yua(C)||(C=""),N=new hua([E],I,{type:C})):N=Aua(Buffer.from(E)),uht(P6n(f)),uht(typeof N=="string"&&P6n(N)||pua(N)),a.push(fua(f,N,I))}}function Sua(e,t){let r=null,n=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:a,encoding:o};let l=ywe(A=>A!==10&&A!==13&&A!==58,e,t);if(l=Q0r(l,!0,!0,A=>A===9||A===32),!dua.test(l.toString())||e[t.position]!==58)return"failure";switch(t.position++,ywe(A=>A===32||A===9,e,t),gua(l)){case"content-disposition":{if(r=n=null,!ght(e,mua,t)||(t.position+=17,r=M6n(e,t),r===null))return"failure";if(ght(e,O6n,t)){let A=t.position+O6n.length;if(e[A]===42&&(t.position+=1,A+=1),e[A]!==61||e[A+1]!==34||(t.position+=12,n=M6n(e,t),n===null))return"failure"}break}case"content-type":{let A=ywe(f=>f!==10&&f!==13,e,t);A=Q0r(A,!1,!0,f=>f===9||f===32),a=W6n(A);break}case"content-transfer-encoding":{let A=ywe(f=>f!==10&&f!==13,e,t);A=Q0r(A,!1,!0,f=>f===9||f===32),o=W6n(A);break}default:ywe(A=>A!==10&&A!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function M6n(e,t){uht(e[t.position-1]===34);let r=ywe(n=>n!==10&&n!==13&&n!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function ywe(e,t,r){let n=r.position;for(;n0&&n(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function ght(e,t,r){if(e.length{"use strict";var gYe=Em(),{ReadableStreamFrom:vua,isBlobLike:Q6n,isReadableStreamLike:Bua,readableStreamClose:wua,createDeferredPromise:Tua,fullyReadBody:Rua,extractMimeType:Nua,utf8DecodeBytes:U6n}=qW(),{FormData:X6n}=uYe(),{kState:Ewe}=nae(),{webidl:Dua}=kk(),{Blob:kua}=wt("node:buffer"),X0r=wt("node:assert"),{isErrored:K6n,isDisturbed:xua}=wt("node:stream"),{isArrayBuffer:Gua}=wt("node:util/types"),{serializeAMimeType:Fua}=eV(),{multipartFormDataParser:Zua}=Y6n(),Aht=new TextEncoder;function Lua(){}var J0r=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,U0r;J0r&&(U0r=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!xua(t)&&!K6n(t)&&t.cancel("Response object has been garbage collected").catch(Lua)}));function j6n(e,t=!1){let r=null;e instanceof ReadableStream?r=e:Q6n(e)?r=e.stream():r=new ReadableStream({async pull(f){let I=typeof a=="string"?Aht.encode(a):a;I.byteLength&&f.enqueue(I),queueMicrotask(()=>wua(f))},start(){},type:"bytes"}),X0r(Bua(r));let n=null,a=null,o=null,l=null;if(typeof e=="string")a=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(Gua(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(gYe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,I=`--${f}\r -Content-Disposition: form-data`;let C=Q=>Q.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),b=Q=>Q.replace(/\r?\n|\r/g,`\r -`),E=[],N=new Uint8Array([13,10]);o=0;let B=!1;for(let[Q,X]of e)if(typeof X=="string"){let ae=Aht.encode(I+`; name="${C(b(Q))}"\r -\r -${b(X)}\r -`);E.push(ae),o+=ae.byteLength}else{let ae=Aht.encode(`${I}; name="${C(b(Q))}"`+(X.name?`; filename="${C(X.name)}"`:"")+`\r -Content-Type: ${X.type||"application/octet-stream"}\r -\r -`);E.push(ae,X,N),typeof X.size=="number"?o+=ae.byteLength+X.size+N.byteLength:B=!0}let F=Aht.encode(`--${f}--`);E.push(F),o+=F.byteLength,B&&(o=null),a=e,n=async function*(){for(let Q of E)Q.stream?yield*Q.stream():yield Q},l=`multipart/form-data; boundary=${f}`}else if(Q6n(e))a=e,o=e.size,e.type&&(l=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(gYe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:vua(e)}if((typeof a=="string"||gYe.isBuffer(a))&&(o=Buffer.byteLength(a)),n!=null){let f;r=new ReadableStream({async start(){f=n(e)[Symbol.asyncIterator]()},async pull(I){let{value:C,done:b}=await f.next();if(b)queueMicrotask(()=>{I.close(),I.byobRequest?.respond(0)});else if(!K6n(r)){let E=new Uint8Array(C);E.byteLength&&I.enqueue(E)}return I.desiredSize>0},async cancel(I){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},l]}function Vua(e,t=!1){return e instanceof ReadableStream&&(X0r(!gYe.isDisturbed(e),"The body has already been consumed."),X0r(!e.locked,"The stream is locked.")),j6n(e,t)}function Pua(e,t){let[r,n]=t.stream.tee();return J0r&&U0r.register(e,new WeakRef(r)),t.stream=r,{stream:n,length:t.length,source:t.source}}function Wua(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function Oua(e){return{blob(){return bwe(this,r=>{let n=J6n(this);return n===null?n="":n&&(n=Fua(n)),new kua([r],{type:n})},e)},arrayBuffer(){return bwe(this,r=>new Uint8Array(r).buffer,e)},text(){return bwe(this,U6n,e)},json(){return bwe(this,Hua,e)},formData(){return bwe(this,r=>{let n=J6n(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let a=Zua(r,n);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new X6n;return o[Ewe]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new X6n;for(let[l,A]of a)o.append(l,A);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return bwe(this,r=>new Uint8Array(r),e)}}}function Mua(e){Object.assign(e.prototype,Oua(e))}async function bwe(e,t,r){if(Dua.brandCheck(e,r),z6n(e))throw new TypeError("Body is unusable: Body has already been read");Wua(e[Ewe]);let n=Tua(),a=l=>n.reject(l),o=l=>{try{n.resolve(t(l))}catch(A){a(A)}};return e[Ewe].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await Rua(e[Ewe].body,o,a),n.promise)}function z6n(e){let t=e[Ewe].body;return t!=null&&(t.stream.locked||gYe.isDisturbed(t.stream))}function Hua(e){return JSON.parse(U6n(e))}function J6n(e){let t=e[Ewe].headersList,r=Nua(t);return r==="failure"?null:r}q6n.exports={extractBody:j6n,safelyExtractBody:Vua,cloneBody:Pua,mixinBody:Mua,streamRegistry:U0r,hasFinalizationRegistry:J0r,bodyUnusable:z6n}});var l7n=H((you,c7n)=>{"use strict";var Af=wt("node:assert"),II=Em(),{channels:$6n}=gwe(),K0r=R0r(),{RequestContentLengthMismatchError:ihe,ResponseContentLengthMismatchError:Yua,RequestAbortedError:s7n,HeadersTimeoutError:Qua,HeadersOverflowError:Xua,SocketError:mht,InformationalError:Swe,BodyTimeoutError:Jua,HTTPParserError:Uua,ResponseExceededMaxSizeError:Kua}=Y0(),{kUrl:o7n,kReset:tV,kClient:$0r,kParser:Ov,kBlocking:fYe,kRunning:EG,kPending:jua,kSize:e7n,kWriting:sae,kQueue:kX,kNoRef:dYe,kKeepAliveDefaultTimeout:zua,kHostHeader:qua,kPendingIdx:$ua,kRunningIdx:DM,kError:kM,kPipelining:Iht,kSocket:vwe,kKeepAliveTimeoutValue:Cht,kMaxHeadersSize:j0r,kKeepAliveMaxTimeout:ega,kKeepAliveTimeoutThreshold:tga,kHeadersTimeout:rga,kBodyTimeout:nga,kStrictContentLength:eyr,kMaxRequests:t7n,kCounter:iga,kMaxResponseSize:sga,kOnError:oga,kResume:iae,kHTTPContext:a7n}=B2(),R8=zjn(),aga=Buffer.alloc(0),dht=Buffer[Symbol.species],pht=II.addListener,cga=II.removeAllListeners,z0r;async function lga(){let e=process.env.JEST_WORKER_ID?k0r():void 0,t;try{t=await WebAssembly.compile(e6n())}catch{t=await WebAssembly.compile(e||k0r())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,n,a)=>0,wasm_on_status:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onStatus(new dht(N8.buffer,o,a))||0},wasm_on_message_begin:r=>(Af(RR.ptr===r),RR.onMessageBegin()||0),wasm_on_header_field:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onHeaderField(new dht(N8.buffer,o,a))||0},wasm_on_header_value:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onHeaderValue(new dht(N8.buffer,o,a))||0},wasm_on_headers_complete:(r,n,a,o)=>(Af(RR.ptr===r),RR.onHeadersComplete(n,!!a,!!o)||0),wasm_on_body:(r,n,a)=>{Af(RR.ptr===r);let o=n-D8+N8.byteOffset;return RR.onBody(new dht(N8.buffer,o,a))||0},wasm_on_message_complete:r=>(Af(RR.ptr===r),RR.onMessageComplete()||0)}})}var q0r=null,tyr=lga();tyr.catch();var RR=null,N8=null,fht=0,D8=null,uga=0,pYe=1,Bwe=2|pYe,hht=4|pYe,ryr=8|uga,nyr=class{constructor(t,r,{exports:n}){Af(Number.isFinite(t[j0r])&&t[j0r]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(R8.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[j0r],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[sga]}setTimeout(t,r){t!==this.timeoutValue||r&pYe^this.timeoutType&pYe?(this.timeout&&(K0r.clearTimeout(this.timeout),this.timeout=null),t&&(r&pYe?this.timeout=K0r.setFastTimeout(r7n,t,new WeakRef(this)):(this.timeout=setTimeout(r7n,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(Af(this.ptr!=null),Af(RR==null),this.llhttp.llhttp_resume(this.ptr),Af(this.timeoutType===hht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||aga),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){Af(this.ptr!=null),Af(RR==null),Af(!this.paused);let{socket:r,llhttp:n}=this;t.length>fht&&(D8&&n.free(D8),fht=Math.ceil(t.length/4096)*4096,D8=n.malloc(fht)),new Uint8Array(n.memory.buffer,D8,fht).set(t);try{let a;try{N8=t,RR=this,a=n.llhttp_execute(this.ptr,D8,t.length)}catch(l){throw l}finally{RR=null,N8=null}let o=n.llhttp_get_error_pos(this.ptr)-D8;if(a===R8.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===R8.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==R8.ERROR.OK){let l=n.llhttp_get_error_reason(this.ptr),A="";if(l){let f=new Uint8Array(n.memory.buffer,l).indexOf(0);A="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,l,f).toString()+")"}throw new Uua(A,R8.ERROR[a],t.slice(o))}}catch(a){II.destroy(r,a)}}destroy(){Af(this.ptr!=null),Af(RR==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&K0r.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let n=r[kX][r[DM]];if(!n)return-1;n.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let n=this.headers[r-2];if(n.length===10){let a=II.bufferToLowerCasedHeaderName(n);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else n.length===14&&II.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&II.destroy(this.socket,new Xua)}onUpgrade(t){let{upgrade:r,client:n,socket:a,headers:o,statusCode:l}=this;Af(r),Af(n[vwe]===a),Af(!a.destroyed),Af(!this.paused),Af((o.length&1)===0);let A=n[kX][n[DM]];Af(A),Af(A.upgrade||A.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[Ov].destroy(),a[Ov]=null,a[$0r]=null,a[kM]=null,cga(a),n[vwe]=null,n[a7n]=null,n[kX][n[DM]++]=null,n.emit("disconnect",n[o7n],[n],new Swe("upgrade"));try{A.onUpgrade(l,o,a)}catch(f){II.destroy(a,f)}n[iae]()}onHeadersComplete(t,r,n){let{client:a,socket:o,headers:l,statusText:A}=this;if(o.destroyed)return-1;let f=a[kX][a[DM]];if(!f)return-1;if(Af(!this.upgrade),Af(this.statusCode<200),t===100)return II.destroy(o,new mht("bad response",II.getSocketInfo(o))),-1;if(r&&!f.upgrade)return II.destroy(o,new mht("bad upgrade",II.getSocketInfo(o))),-1;if(Af(this.timeoutType===Bwe),this.statusCode=t,this.shouldKeepAlive=n||f.method==="HEAD"&&!o[tV]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let C=f.bodyTimeout!=null?f.bodyTimeout:a[nga];this.setTimeout(C,hht)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return Af(a[EG]===1),this.upgrade=!0,2;if(r)return Af(a[EG]===1),this.upgrade=!0,2;if(Af((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[Iht]){let C=this.keepAlive?II.parseKeepAliveTimeout(this.keepAlive):null;if(C!=null){let b=Math.min(C-a[tga],a[ega]);b<=0?o[tV]=!0:a[Cht]=b}else a[Cht]=a[zua]}else o[tV]=!0;let I=f.onHeaders(t,l,this.resume,A)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[fYe]&&(o[fYe]=!1,a[iae]()),I?R8.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let l=r[kX][r[DM]];if(Af(l),Af(this.timeoutType===hht),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),Af(a>=200),o>-1&&this.bytesRead+t.length>o)return II.destroy(n,new Kua),-1;if(this.bytesRead+=t.length,l.onData(t)===!1)return R8.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:n,upgrade:a,headers:o,contentLength:l,bytesRead:A,shouldKeepAlive:f}=this;if(r.destroyed&&(!n||f))return-1;if(a)return;Af(n>=100),Af((this.headers.length&1)===0);let I=t[kX][t[DM]];if(Af(I),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(I.method!=="HEAD"&&l&&A!==parseInt(l,10))return II.destroy(r,new Yua),-1;if(I.onComplete(o),t[kX][t[DM]++]=null,r[sae])return Af(t[EG]===0),II.destroy(r,new Swe("reset")),R8.ERROR.PAUSED;if(f){if(r[tV]&&t[EG]===0)return II.destroy(r,new Swe("reset")),R8.ERROR.PAUSED;t[Iht]==null||t[Iht]===1?setImmediate(()=>t[iae]()):t[iae]()}else return II.destroy(r,new Swe("reset")),R8.ERROR.PAUSED}}};function r7n(e){let{socket:t,timeoutType:r,client:n,paused:a}=e.deref();r===Bwe?(!t[sae]||t.writableNeedDrain||n[EG]>1)&&(Af(!a,"cannot be paused while waiting for headers"),II.destroy(t,new Qua)):r===hht?a||II.destroy(t,new Jua):r===ryr&&(Af(n[EG]===0&&n[Cht]),II.destroy(t,new Swe("socket idle timeout")))}async function gga(e,t){e[vwe]=t,q0r||(q0r=await tyr,tyr=null),t[dYe]=!1,t[sae]=!1,t[tV]=!1,t[fYe]=!1,t[Ov]=new nyr(e,t,q0r),pht(t,"error",function(n){Af(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[Ov];if(n.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[kM]=n,this[$0r][oga](n)}),pht(t,"readable",function(){let n=this[Ov];n&&n.readMore()}),pht(t,"end",function(){let n=this[Ov];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}II.destroy(this,new mht("other side closed",II.getSocketInfo(this)))}),pht(t,"close",function(){let n=this[$0r],a=this[Ov];a&&(!this[kM]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[Ov].destroy(),this[Ov]=null);let o=this[kM]||new mht("closed",II.getSocketInfo(this));if(n[vwe]=null,n[a7n]=null,n.destroyed){Af(n[jua]===0);let l=n[kX].splice(n[DM]);for(let A=0;A0&&o.code!=="UND_ERR_INFO"){let l=n[kX][n[DM]];n[kX][n[DM]++]=null,II.errorRequest(n,l,o)}n[$ua]=n[DM],Af(n[EG]===0),n.emit("disconnect",n[o7n],[n],o),n[iae]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return pga(e,...n)},resume(){Aga(e)},destroy(n,a){r?queueMicrotask(a):t.destroy(n).on("close",a)},get destroyed(){return t.destroyed},busy(n){return!!(t[sae]||t[tV]||t[fYe]||n&&(e[EG]>0&&!n.idempotent||e[EG]>0&&(n.upgrade||n.method==="CONNECT")||e[EG]>0&&II.bodyLength(n.body)!==0&&(II.isStream(n.body)||II.isAsyncIterable(n.body)||II.isFormDataLike(n.body))))}}}function Aga(e){let t=e[vwe];if(t&&!t.destroyed){if(e[e7n]===0?!t[dYe]&&t.unref&&(t.unref(),t[dYe]=!0):t[dYe]&&t.ref&&(t.ref(),t[dYe]=!1),e[e7n]===0)t[Ov].timeoutType!==ryr&&t[Ov].setTimeout(e[Cht],ryr);else if(e[EG]>0&&t[Ov].statusCode<200&&t[Ov].timeoutType!==Bwe){let r=e[kX][e[DM]],n=r.headersTimeout!=null?r.headersTimeout:e[rga];t[Ov].setTimeout(n,Bwe)}}}function dga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function pga(e,t){let{method:r,path:n,host:a,upgrade:o,blocking:l,reset:A}=t,{body:f,headers:I,contentLength:C}=t,b=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(II.isFormDataLike(f)){z0r||(z0r=AYe().extractBody);let[Q,X]=z0r(f);t.contentType==null&&I.push("content-type",X),f=Q.stream,C=Q.length}else II.isBlobLike(f)&&t.contentType==null&&f.type&&I.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let E=II.bodyLength(f);if(C=E??C,C===null&&(C=t.contentLength),C===0&&!b&&(C=null),dga(r)&&C>0&&t.contentLength!==null&&t.contentLength!==C){if(e[eyr])return II.errorRequest(e,t,new ihe),!1;process.emitWarning(new ihe)}let N=e[vwe],B=Q=>{t.aborted||t.completed||(II.errorRequest(e,t,Q||new s7n),II.destroy(f),II.destroy(N,new Swe("aborted")))};try{t.onConnect(B)}catch(Q){II.errorRequest(e,t,Q)}if(t.aborted)return!1;r==="HEAD"&&(N[tV]=!0),(o||r==="CONNECT")&&(N[tV]=!0),A!=null&&(N[tV]=A),e[t7n]&&N[iga]++>=e[t7n]&&(N[tV]=!0),l&&(N[fYe]=!0);let F=`${r} ${n} HTTP/1.1\r -`;if(typeof a=="string"?F+=`host: ${a}\r -`:F+=e[qua],o?F+=`connection: upgrade\r -upgrade: ${o}\r -`:e[Iht]&&!N[tV]?F+=`connection: keep-alive\r -`:F+=`connection: close\r -`,Array.isArray(I))for(let Q=0;Q{t.removeListener("error",N)}),!f){let B=new s7n;queueMicrotask(()=>N(B))}},N=function(B){if(!f){if(f=!0,Af(a.destroyed||a[sae]&&r[EG]<=1),a.off("drain",b).off("error",N),t.removeListener("data",C).removeListener("end",N).removeListener("close",E),!B)try{I.end()}catch(F){B=F}I.destroy(B),B&&(B.code!=="UND_ERR_INFO"||B.message!=="reset")?II.destroy(t,B):II.destroy(t)}};t.on("data",C).on("end",N).on("error",N).on("close",E),t.resume&&t.resume(),a.on("drain",b).on("error",N),t.errorEmitted??t.errored?setImmediate(()=>N(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>N(null)),(t.closeEmitted??t.closed)&&setImmediate(E)}function n7n(e,t,r,n,a,o,l,A){try{t?II.isBuffer(t)&&(Af(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${l}content-length: ${o}\r -\r -`,"latin1"),a.write(t),a.uncork(),n.onBodySent(t),!A&&n.reset!==!1&&(a[tV]=!0)):o===0?a.write(`${l}content-length: 0\r -\r -`,"latin1"):(Af(o===null,"no body must not have content length"),a.write(`${l}\r -`,"latin1")),n.onRequestSent(),r[iae]()}catch(f){e(f)}}async function Iga(e,t,r,n,a,o,l,A){Af(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new ihe;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${l}content-length: ${o}\r -\r -`,"latin1"),a.write(f),a.uncork(),n.onBodySent(f),n.onRequestSent(),!A&&n.reset!==!1&&(a[tV]=!0),r[iae]()}catch(f){e(f)}}async function i7n(e,t,r,n,a,o,l,A){Af(o!==0||r[EG]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let E=f;f=null,E()}}let C=()=>new Promise((E,N)=>{Af(f===null),a[kM]?N(a[kM]):f=E});a.on("close",I).on("drain",I);let b=new _ht({abort:e,socket:a,request:n,contentLength:o,client:r,expectsPayload:A,header:l});try{for await(let E of t){if(a[kM])throw a[kM];b.write(E)||await C()}b.end()}catch(E){b.destroy(E)}finally{a.off("close",I).off("drain",I)}}var _ht=class{constructor({abort:t,socket:r,request:n,contentLength:a,client:o,expectsPayload:l,header:A}){this.socket=r,this.request=n,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=l,this.header=A,this.abort=t,r[sae]=!0}write(t){let{socket:r,request:n,contentLength:a,client:o,bytesWritten:l,expectsPayload:A,header:f}=this;if(r[kM])throw r[kM];if(r.destroyed)return!1;let I=Buffer.byteLength(t);if(!I)return!0;if(a!==null&&l+I>a){if(o[eyr])throw new ihe;process.emitWarning(new ihe)}r.cork(),l===0&&(!A&&n.reset!==!1&&(r[tV]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r -`,"latin1"):r.write(`${f}content-length: ${a}\r -\r -`,"latin1")),a===null&&r.write(`\r -${I.toString(16)}\r -`,"latin1"),this.bytesWritten+=I;let C=r.write(t);return r.uncork(),n.onBodySent(t),C||r[Ov].timeout&&r[Ov].timeoutType===Bwe&&r[Ov].timeout.refresh&&r[Ov].timeout.refresh(),C}end(){let{socket:t,contentLength:r,client:n,bytesWritten:a,expectsPayload:o,header:l,request:A}=this;if(A.onRequestSent(),t[sae]=!1,t[kM])throw t[kM];if(!t.destroyed){if(a===0?o?t.write(`${l}content-length: 0\r -\r -`,"latin1"):t.write(`${l}\r -`,"latin1"):r===null&&t.write(`\r -0\r -\r -`,"latin1"),r!==null&&a!==r){if(n[eyr])throw new ihe;process.emitWarning(new ihe)}t[Ov].timeout&&t[Ov].timeoutType===Bwe&&t[Ov].timeout.refresh&&t[Ov].timeout.refresh(),n[iae]()}}destroy(t){let{socket:r,client:n,abort:a}=this;r[sae]=!1,t&&(Af(n[EG]<=1,"pipeline should only contain this request"),a(t))}};c7n.exports=gga});var I7n=H((bou,f7n)=>{"use strict";var xM=wt("node:assert"),{pipeline:hga}=wt("node:stream"),EC=Em(),{RequestContentLengthMismatchError:iyr,RequestAbortedError:u7n,SocketError:IYe,InformationalError:syr}=Y0(),{kUrl:yht,kReset:Eht,kClient:wwe,kRunning:Sht,kPending:mga,kQueue:she,kPendingIdx:oyr,kRunningIdx:k8,kError:GX,kSocket:tD,kStrictContentLength:Cga,kOnError:ayr,kMaxConcurrentStreams:p7n,kHTTP2Session:xX,kResume:oae,kSize:_ga,kHTTPContext:yga}=B2(),M$=Symbol("open streams"),g7n=!1,bht;try{bht=wt("node:http2")}catch{bht={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:bga,HTTP2_HEADER_METHOD:Ega,HTTP2_HEADER_PATH:Sga,HTTP2_HEADER_SCHEME:vga,HTTP2_HEADER_CONTENT_LENGTH:Bga,HTTP2_HEADER_EXPECT:wga,HTTP2_HEADER_STATUS:Tga}}=bht;function Rga(e){let t=[];for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let a of n)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(n));return t}async function Nga(e,t){e[tD]=t,g7n||(g7n=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=bht.connect(e[yht],{createConnection:()=>t,peerMaxConcurrentStreams:e[p7n]});r[M$]=0,r[wwe]=e,r[tD]=t,EC.addListener(r,"error",kga),EC.addListener(r,"frameError",xga),EC.addListener(r,"end",Gga),EC.addListener(r,"goaway",Fga),EC.addListener(r,"close",function(){let{[wwe]:a}=this,{[tD]:o}=a,l=this[tD][GX]||this[GX]||new IYe("closed",EC.getSocketInfo(o));if(a[xX]=null,a.destroyed){xM(a[mga]===0);let A=a[she].splice(a[k8]);for(let f=0;f{n=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return Lga(e,...a)},resume(){Dga(e)},destroy(a,o){n?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function Dga(e){let t=e[tD];t?.destroyed===!1&&(e[_ga]===0&&e[p7n]===0?(t.unref(),e[xX].unref()):(t.ref(),e[xX].ref()))}function kga(e){xM(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[tD][GX]=e,this[wwe][ayr](e)}function xga(e,t,r){if(r===0){let n=new syr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[tD][GX]=n,this[wwe][ayr](n)}}function Gga(){let e=new IYe("other side closed",EC.getSocketInfo(this[tD]));this.destroy(e),EC.destroy(this[tD],e)}function Fga(e){let t=this[GX]||new IYe(`HTTP/2: "GOAWAY" frame received with code ${e}`,EC.getSocketInfo(this)),r=this[wwe];r[tD]=null,r[yga]=null,this[xX]!=null&&(this[xX].destroy(t),this[xX]=null),EC.destroy(this[tD],t);let n=r[she][r[k8]];r[she][r[k8]++]=null,EC.errorRequest(r,n,t),r[oyr]=r[k8],xM(r[Sht]===0),r.emit("disconnect",r[yht],[r],t),r[oae]()}function Zga(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Lga(e,t){let r=e[xX],{body:n,method:a,path:o,host:l,upgrade:A,expectContinue:f,signal:I,headers:C}=t;if(A)return EC.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let b={};for(let ce=0;ce{t.aborted||t.completed||(ce=ce||new u7n,EC.errorRequest(e,t,ce),E!=null&&EC.destroy(E,ce),EC.destroy(n,ce),e[she][e[k8]++]=null,e[oae]())};try{t.onConnect(F)}catch(ce){EC.errorRequest(e,t,ce)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),E=r.request(b,{endStream:!1,signal:I}),E.id&&!E.pending?(t.onUpgrade(null,null,E),++r[M$],e[she][e[k8]++]=null):E.once("ready",()=>{t.onUpgrade(null,null,E),++r[M$],e[she][e[k8]++]=null}),E.once("close",()=>{r[M$]-=1,r[M$]===0&&r.unref()}),!0;b[Sga]=o,b[vga]="https";let Q=a==="PUT"||a==="POST"||a==="PATCH";n&&typeof n.read=="function"&&n.read(0);let X=EC.bodyLength(n);if(X==null&&(X=t.contentLength),(X===0||!Q)&&(X=null),Zga(a)&&X>0&&t.contentLength!=null&&t.contentLength!==X){if(e[Cga])return EC.errorRequest(e,t,new iyr),!1;process.emitWarning(new iyr)}X!=null&&(xM(n,"no body must not have content length"),b[Bga]=`${X}`),r.ref();let ae=a==="GET"||a==="HEAD"||n===null;return f?(b[wga]="100-continue",E=r.request(b,{endStream:ae,signal:I}),E.once("continue",ne)):(E=r.request(b,{endStream:ae,signal:I}),ne()),++r[M$],E.once("response",ce=>{let{[Tga]:fe,...ue}=ce;if(t.onResponseStarted(),t.aborted){let de=new u7n;EC.errorRequest(e,t,de),EC.destroy(E,de);return}t.onHeaders(Number(fe),Rga(ue),E.resume.bind(E),"")===!1&&E.pause(),E.on("data",de=>{t.onData(de)===!1&&E.pause()})}),E.once("end",()=>{(E.state?.state==null||E.state.state<6)&&t.onComplete([]),r[M$]===0&&r.unref(),F(new syr("HTTP/2: stream half-closed (remote)")),e[she][e[k8]++]=null,e[oyr]=e[k8],e[oae]()}),E.once("close",()=>{r[M$]-=1,r[M$]===0&&r.unref()}),E.once("error",function(ce){F(ce)}),E.once("frameError",(ce,fe)=>{F(new syr(`HTTP/2: "frameError" received - type ${ce}, code ${fe}`))}),!0;function ne(){!n||X===0?A7n(F,E,null,e,t,e[tD],X,Q):EC.isBuffer(n)?A7n(F,E,n,e,t,e[tD],X,Q):EC.isBlobLike(n)?typeof n.stream=="function"?d7n(F,E,n.stream(),e,t,e[tD],X,Q):Pga(F,E,n,e,t,e[tD],X,Q):EC.isStream(n)?Vga(F,e[tD],Q,E,n,e,t,X):EC.isIterable(n)?d7n(F,E,n,e,t,e[tD],X,Q):xM(!1)}}function A7n(e,t,r,n,a,o,l,A){try{r!=null&&EC.isBuffer(r)&&(xM(l===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),A||(o[Eht]=!0),a.onRequestSent(),n[oae]()}catch(f){e(f)}}function Vga(e,t,r,n,a,o,l,A){xM(A!==0||o[Sht]===0,"stream body cannot be pipelined");let f=hga(a,n,C=>{C?(EC.destroy(f,C),e(C)):(EC.removeAllListeners(f),l.onRequestSent(),r||(t[Eht]=!0),o[oae]())});EC.addListener(f,"data",I);function I(C){l.onBodySent(C)}}async function Pga(e,t,r,n,a,o,l,A){xM(l===r.size,"blob body must have content length");try{if(l!=null&&l!==r.size)throw new iyr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),A||(o[Eht]=!0),n[oae]()}catch(f){e(f)}}async function d7n(e,t,r,n,a,o,l,A){xM(l!==0||n[Sht]===0,"iterator body cannot be pipelined");let f=null;function I(){if(f){let b=f;f=null,b()}}let C=()=>new Promise((b,E)=>{xM(f===null),o[GX]?E(o[GX]):f=b});t.on("close",I).on("drain",I);try{for await(let b of r){if(o[GX])throw o[GX];let E=t.write(b);a.onBodySent(b),E||await C()}t.end(),a.onRequestSent(),A||(o[Eht]=!0),n[oae]()}catch(b){e(b)}finally{t.off("close",I).off("drain",I)}}f7n.exports=Nga});var Bht=H((Eou,C7n)=>{"use strict";var x8=Em(),{kBodyUsed:hYe}=B2(),lyr=wt("node:assert"),{InvalidArgumentError:Wga}=Y0(),Oga=wt("node:events"),Mga=[300,301,302,303,307,308],h7n=Symbol("body"),vht=class{constructor(t){this[h7n]=t,this[hYe]=!1}async*[Symbol.asyncIterator](){lyr(!this[hYe],"disturbed"),this[hYe]=!0,yield*this[h7n]}},cyr=class{constructor(t,r,n,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Wga("maxRedirections must be a positive number");x8.validateHandler(a,n.method,n.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,x8.isStream(this.opts.body)?(x8.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){lyr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[hYe]=!1,Oga.prototype.on.call(this.opts.body,"data",function(){this[hYe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new vht(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&x8.isIterable(this.opts.body)&&(this.opts.body=new vht(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,n){this.handler.onUpgrade(t,r,n)}onError(t){this.handler.onError(t)}onHeaders(t,r,n,a){if(this.location=this.history.length>=this.maxRedirections||x8.isDisturbed(this.opts.body)?null:Hga(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,n,a);let{origin:o,pathname:l,search:A}=x8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=A?`${l}${A}`:l;this.opts.headers=Yga(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Hga(e,t){if(Mga.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var Qga=Bht();function Xga({maxRedirections:e}){return t=>function(n,a){let{maxRedirections:o=e}=n;if(!o)return t(n,a);let l=new Qga(t,o,n,a);return n={...n,maxRedirections:0},t(n,l)}}_7n.exports=Xga});var SYe=H((vou,N7n)=>{"use strict";var H$=wt("node:assert"),B7n=wt("node:net"),Jga=wt("node:http"),ohe=Em(),{channels:Twe}=gwe(),Uga=Vjn(),Kga=fwe(),{InvalidArgumentError:tw,InformationalError:jga,ClientDestroyedError:zga}=Y0(),qga=nYe(),{kUrl:G8,kServerName:aae,kClient:$ga,kBusy:uyr,kConnect:eAa,kResuming:ahe,kRunning:bYe,kPending:EYe,kSize:yYe,kQueue:FX,kConnected:tAa,kConnecting:Rwe,kNeedDrain:lae,kKeepAliveDefaultTimeout:y7n,kHostHeader:rAa,kPendingIdx:ZX,kRunningIdx:Y$,kError:nAa,kPipelining:Tht,kKeepAliveTimeoutValue:iAa,kMaxHeadersSize:sAa,kKeepAliveMaxTimeout:oAa,kKeepAliveTimeoutThreshold:aAa,kHeadersTimeout:cAa,kBodyTimeout:lAa,kStrictContentLength:uAa,kConnector:mYe,kMaxRedirections:gAa,kMaxRequests:gyr,kCounter:AAa,kClose:dAa,kDestroy:pAa,kDispatch:fAa,kInterceptors:b7n,kLocalAddress:CYe,kMaxResponseSize:IAa,kOnError:hAa,kHTTPContext:rw,kMaxConcurrentStreams:mAa,kResume:_Ye}=B2(),CAa=l7n(),_Aa=I7n(),E7n=!1,cae=Symbol("kClosedResolve"),S7n=()=>{};function w7n(e){return e[Tht]??e[rw]?.defaultPipelining??1}var Ayr=class extends Kga{constructor(t,{interceptors:r,maxHeaderSize:n,headersTimeout:a,socketTimeout:o,requestTimeout:l,connectTimeout:A,bodyTimeout:f,idleTimeout:I,keepAlive:C,keepAliveTimeout:b,maxKeepAliveTimeout:E,keepAliveMaxTimeout:N,keepAliveTimeoutThreshold:B,socketPath:F,pipelining:Q,tls:X,strictContentLength:ae,maxCachedSessions:ne,maxRedirections:ce,connect:fe,maxRequestsPerClient:ue,localAddress:de,maxResponseSize:be,autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:k,allowH2:et}={}){if(super(),C!==void 0)throw new tw("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new tw("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new tw("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(I!==void 0)throw new tw("unsupported idleTimeout, use keepAliveTimeout instead");if(E!==void 0)throw new tw("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new tw("invalid maxHeaderSize");if(F!=null&&typeof F!="string")throw new tw("invalid socketPath");if(A!=null&&(!Number.isFinite(A)||A<0))throw new tw("invalid connectTimeout");if(b!=null&&(!Number.isFinite(b)||b<=0))throw new tw("invalid keepAliveTimeout");if(N!=null&&(!Number.isFinite(N)||N<=0))throw new tw("invalid keepAliveMaxTimeout");if(B!=null&&!Number.isFinite(B))throw new tw("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new tw("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new tw("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new tw("connect must be a function or an object");if(ce!=null&&(!Number.isInteger(ce)||ce<0))throw new tw("maxRedirections must be a positive number");if(ue!=null&&(!Number.isInteger(ue)||ue<0))throw new tw("maxRequestsPerClient must be a positive number");if(de!=null&&(typeof de!="string"||B7n.isIP(de)===0))throw new tw("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new tw("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new tw("autoSelectFamilyAttemptTimeout must be a positive number");if(et!=null&&typeof et!="boolean")throw new tw("allowH2 must be a valid boolean value");if(k!=null&&(typeof k!="number"||k<1))throw new tw("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=qga({...X,maxCachedSessions:ne,allowH2:et,socketPath:F,timeout:A,...Se?{autoSelectFamily:Se,autoSelectFamilyAttemptTimeout:De}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[b7n]=r.Client,E7n||(E7n=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[b7n]=[yAa({maxRedirections:ce})],this[G8]=ohe.parseOrigin(t),this[mYe]=fe,this[Tht]=Q??1,this[sAa]=n||Jga.maxHeaderSize,this[y7n]=b??4e3,this[oAa]=N??6e5,this[aAa]=B??2e3,this[iAa]=this[y7n],this[aae]=null,this[CYe]=de??null,this[ahe]=0,this[lae]=0,this[rAa]=`host: ${this[G8].hostname}${this[G8].port?`:${this[G8].port}`:""}\r -`,this[lAa]=f??3e5,this[cAa]=a??3e5,this[uAa]=ae??!0,this[gAa]=ce,this[gyr]=ue,this[cae]=null,this[IAa]=be>-1?be:-1,this[mAa]=k??100,this[rw]=null,this[FX]=[],this[Y$]=0,this[ZX]=0,this[_Ye]=ct=>dyr(this,ct),this[hAa]=ct=>T7n(this,ct)}get pipelining(){return this[Tht]}set pipelining(t){this[Tht]=t,this[_Ye](!0)}get[EYe](){return this[FX].length-this[ZX]}get[bYe](){return this[ZX]-this[Y$]}get[yYe](){return this[FX].length-this[Y$]}get[tAa](){return!!this[rw]&&!this[Rwe]&&!this[rw].destroyed}get[uyr](){return!!(this[rw]?.busy(null)||this[yYe]>=(w7n(this)||1)||this[EYe]>0)}[eAa](t){R7n(this),this.once("connect",t)}[fAa](t,r){let n=t.origin||this[G8].origin,a=new Uga(n,t,r);return this[FX].push(a),this[ahe]||(ohe.bodyLength(a.body)==null&&ohe.isIterable(a.body)?(this[ahe]=1,queueMicrotask(()=>dyr(this))):this[_Ye](!0)),this[ahe]&&this[lae]!==2&&this[uyr]&&(this[lae]=2),this[lae]<2}async[dAa](){return new Promise(t=>{this[yYe]?this[cae]=t:t(null)})}async[pAa](t){return new Promise(r=>{let n=this[FX].splice(this[ZX]);for(let o=0;o{this[cae]&&(this[cae](),this[cae]=null),r(null)};this[rw]?(this[rw].destroy(t,a),this[rw]=null):queueMicrotask(a),this[_Ye]()})}},yAa=wht();function T7n(e,t){if(e[bYe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){H$(e[ZX]===e[Y$]);let r=e[FX].splice(e[Y$]);for(let n=0;n{e[mYe]({host:t,hostname:r,protocol:n,port:a,servername:e[aae],localAddress:e[CYe]},(f,I)=>{f?A(f):l(I)})});if(e.destroyed){ohe.destroy(o.on("error",S7n),new zga);return}H$(o);try{e[rw]=o.alpnProtocol==="h2"?await _Aa(e,o):await CAa(e,o)}catch(l){throw o.destroy().on("error",S7n),l}e[Rwe]=!1,o[AAa]=0,o[gyr]=e[gyr],o[$ga]=e,o[nAa]=null,Twe.connected.hasSubscribers&&Twe.connected.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[rw]?.version,servername:e[aae],localAddress:e[CYe]},connector:e[mYe],socket:o}),e.emit("connect",e[G8],[e])}catch(o){if(e.destroyed)return;if(e[Rwe]=!1,Twe.connectError.hasSubscribers&&Twe.connectError.publish({connectParams:{host:t,hostname:r,protocol:n,port:a,version:e[rw]?.version,servername:e[aae],localAddress:e[CYe]},connector:e[mYe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(H$(e[bYe]===0);e[EYe]>0&&e[FX][e[ZX]].servername===e[aae];){let l=e[FX][e[ZX]++];ohe.errorRequest(e,l,o)}else T7n(e,o);e.emit("connectionError",e[G8],[e],o)}e[_Ye]()}function v7n(e){e[lae]=0,e.emit("drain",e[G8],[e])}function dyr(e,t){e[ahe]!==2&&(e[ahe]=2,bAa(e,t),e[ahe]=0,e[Y$]>256&&(e[FX].splice(0,e[Y$]),e[ZX]-=e[Y$],e[Y$]=0))}function bAa(e,t){for(;;){if(e.destroyed){H$(e[EYe]===0);return}if(e[cae]&&!e[yYe]){e[cae](),e[cae]=null;return}if(e[rw]&&e[rw].resume(),e[uyr])e[lae]=2;else if(e[lae]===2){t?(e[lae]=1,queueMicrotask(()=>v7n(e))):v7n(e);continue}if(e[EYe]===0||e[bYe]>=(w7n(e)||1))return;let r=e[FX][e[ZX]];if(e[G8].protocol==="https:"&&e[aae]!==r.servername){if(e[bYe]>0)return;e[aae]=r.servername,e[rw]?.destroy(new jga("servername changed"),()=>{e[rw]=null,dyr(e)})}if(e[Rwe])return;if(!e[rw]){R7n(e);return}if(e[rw].destroyed||e[rw].busy(r))return;!r.aborted&&e[rw].write(r)?e[ZX]++:e[FX].splice(e[ZX],1)}}N7n.exports=Ayr});var pyr=H((wou,D7n)=>{"use strict";var Rht=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};D7n.exports=class{constructor(){this.head=this.tail=new Rht}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Rht),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var x7n=H((Tou,k7n)=>{var{kFree:EAa,kConnected:SAa,kPending:vAa,kQueued:BAa,kRunning:wAa,kSize:TAa}=B2(),che=Symbol("pool"),fyr=class{constructor(t){this[che]=t}get connected(){return this[che][SAa]}get free(){return this[che][EAa]}get pending(){return this[che][vAa]}get queued(){return this[che][BAa]}get running(){return this[che][wAa]}get size(){return this[che][TAa]}};k7n.exports=fyr});var yyr=H((Rou,H7n)=>{"use strict";var RAa=fwe(),NAa=pyr(),{kConnected:Iyr,kSize:G7n,kRunning:F7n,kPending:Z7n,kQueued:vYe,kBusy:DAa,kFree:kAa,kUrl:xAa,kClose:GAa,kDestroy:FAa,kDispatch:ZAa}=B2(),LAa=x7n(),rV=Symbol("clients"),OZ=Symbol("needDrain"),BYe=Symbol("queue"),hyr=Symbol("closed resolve"),myr=Symbol("onDrain"),L7n=Symbol("onConnect"),V7n=Symbol("onDisconnect"),P7n=Symbol("onConnectionError"),Cyr=Symbol("get dispatcher"),O7n=Symbol("add client"),M7n=Symbol("remove client"),W7n=Symbol("stats"),_yr=class extends RAa{constructor(){super(),this[BYe]=new NAa,this[rV]=[],this[vYe]=0;let t=this;this[myr]=function(n,a){let o=t[BYe],l=!1;for(;!l;){let A=o.shift();if(!A)break;t[vYe]--,l=!this.dispatch(A.opts,A.handler)}this[OZ]=l,!this[OZ]&&t[OZ]&&(t[OZ]=!1,t.emit("drain",n,[t,...a])),t[hyr]&&o.isEmpty()&&Promise.all(t[rV].map(A=>A.close())).then(t[hyr])},this[L7n]=(r,n)=>{t.emit("connect",r,[t,...n])},this[V7n]=(r,n,a)=>{t.emit("disconnect",r,[t,...n],a)},this[P7n]=(r,n,a)=>{t.emit("connectionError",r,[t,...n],a)},this[W7n]=new LAa(this)}get[DAa](){return this[OZ]}get[Iyr](){return this[rV].filter(t=>t[Iyr]).length}get[kAa](){return this[rV].filter(t=>t[Iyr]&&!t[OZ]).length}get[Z7n](){let t=this[vYe];for(let{[Z7n]:r}of this[rV])t+=r;return t}get[F7n](){let t=0;for(let{[F7n]:r}of this[rV])t+=r;return t}get[G7n](){let t=this[vYe];for(let{[G7n]:r}of this[rV])t+=r;return t}get stats(){return this[W7n]}async[GAa](){this[BYe].isEmpty()?await Promise.all(this[rV].map(t=>t.close())):await new Promise(t=>{this[hyr]=t})}async[FAa](t){for(;;){let r=this[BYe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[rV].map(r=>r.destroy(t)))}[ZAa](t,r){let n=this[Cyr]();return n?n.dispatch(t,r)||(n[OZ]=!0,this[OZ]=!this[Cyr]()):(this[OZ]=!0,this[BYe].push({opts:t,handler:r}),this[vYe]++),!this[OZ]}[O7n](t){return t.on("drain",this[myr]).on("connect",this[L7n]).on("disconnect",this[V7n]).on("connectionError",this[P7n]),this[rV].push(t),this[OZ]&&queueMicrotask(()=>{this[OZ]&&this[myr](t[xAa],[this,t])}),this}[M7n](t){t.close(()=>{let r=this[rV].indexOf(t);r!==-1&&this[rV].splice(r,1)}),this[OZ]=this[rV].some(r=>!r[OZ]&&r.closed!==!0&&r.destroyed!==!0)}};H7n.exports={PoolBase:_yr,kClients:rV,kNeedDrain:OZ,kAddClient:O7n,kRemoveClient:M7n,kGetDispatcher:Cyr}});var Nwe=H((Nou,U7n)=>{"use strict";var{PoolBase:VAa,kClients:Y7n,kNeedDrain:PAa,kAddClient:WAa,kGetDispatcher:OAa}=yyr(),MAa=SYe(),{InvalidArgumentError:byr}=Y0(),Q7n=Em(),{kUrl:X7n,kInterceptors:HAa}=B2(),YAa=nYe(),Eyr=Symbol("options"),Syr=Symbol("connections"),J7n=Symbol("factory");function QAa(e,t){return new MAa(e,t)}var vyr=class extends VAa{constructor(t,{connections:r,factory:n=QAa,connect:a,connectTimeout:o,tls:l,maxCachedSessions:A,socketPath:f,autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C,allowH2:b,...E}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new byr("invalid connections");if(typeof n!="function")throw new byr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new byr("connect must be a function or an object");typeof a!="function"&&(a=YAa({...l,maxCachedSessions:A,allowH2:b,socketPath:f,timeout:o,...I?{autoSelectFamily:I,autoSelectFamilyAttemptTimeout:C}:void 0,...a})),this[HAa]=E.interceptors?.Pool&&Array.isArray(E.interceptors.Pool)?E.interceptors.Pool:[],this[Syr]=r||null,this[X7n]=Q7n.parseOrigin(t),this[Eyr]={...Q7n.deepClone(E),connect:a,allowH2:b},this[Eyr].interceptors=E.interceptors?{...E.interceptors}:void 0,this[J7n]=n}[OAa](){for(let t of this[Y7n])if(!t[PAa])return t;if(!this[Syr]||this[Y7n].length{"use strict";var{BalancedPoolMissingUpstreamError:XAa,InvalidArgumentError:JAa}=Y0(),{PoolBase:UAa,kClients:SG,kNeedDrain:wYe,kAddClient:KAa,kRemoveClient:jAa,kGetDispatcher:zAa}=yyr(),qAa=Nwe(),{kUrl:Byr,kInterceptors:$Aa}=B2(),{parseOrigin:K7n}=Em(),j7n=Symbol("factory"),Nht=Symbol("options"),z7n=Symbol("kGreatestCommonDivisor"),lhe=Symbol("kCurrentWeight"),uhe=Symbol("kIndex"),GM=Symbol("kWeight"),Dht=Symbol("kMaxWeightPerServer"),kht=Symbol("kErrorPenalty");function eda(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function tda(e,t){return new qAa(e,t)}var wyr=class extends UAa{constructor(t=[],{factory:r=tda,...n}={}){if(super(),this[Nht]=n,this[uhe]=-1,this[lhe]=0,this[Dht]=this[Nht].maxWeightPerServer||100,this[kht]=this[Nht].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new JAa("factory must be a function.");this[$Aa]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[j7n]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=K7n(t).origin;if(this[SG].find(a=>a[Byr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let n=this[j7n](r,Object.assign({},this[Nht]));this[KAa](n),n.on("connect",()=>{n[GM]=Math.min(this[Dht],n[GM]+this[kht])}),n.on("connectionError",()=>{n[GM]=Math.max(1,n[GM]-this[kht]),this._updateBalancedPoolStats()}),n.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(n[GM]=Math.max(1,n[GM]-this[kht]),this._updateBalancedPoolStats())});for(let a of this[SG])a[GM]=this[Dht];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[Byr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return n&&this[jAa](n),this}get upstreams(){return this[SG].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[Byr].origin)}[zAa](){if(this[SG].length===0)throw new XAa;if(!this[SG].find(o=>!o[wYe]&&o.closed!==!0&&o.destroyed!==!0)||this[SG].map(o=>o[wYe]).reduce((o,l)=>o&&l,!0))return;let n=0,a=this[SG].findIndex(o=>!o[wYe]);for(;n++this[SG][a][GM]&&!o[wYe]&&(a=this[uhe]),this[uhe]===0&&(this[lhe]=this[lhe]-this[z7n],this[lhe]<=0&&(this[lhe]=this[Dht])),o[GM]>=this[lhe]&&!o[wYe])return o}return this[lhe]=this[SG][a][GM],this[uhe]=a,this[SG][a]}};q7n.exports=wyr});var Dwe=H((kou,ozn)=>{"use strict";var{InvalidArgumentError:xht}=Y0(),{kClients:uae,kRunning:ezn,kClose:rda,kDestroy:nda,kDispatch:ida,kInterceptors:sda}=B2(),oda=fwe(),ada=Nwe(),cda=SYe(),lda=Em(),uda=wht(),tzn=Symbol("onConnect"),rzn=Symbol("onDisconnect"),nzn=Symbol("onConnectionError"),gda=Symbol("maxRedirections"),izn=Symbol("onDrain"),szn=Symbol("factory"),Tyr=Symbol("options");function Ada(e,t){return t&&t.connections===1?new cda(e,t):new ada(e,t)}var Ryr=class extends oda{constructor({factory:t=Ada,maxRedirections:r=0,connect:n,...a}={}){if(super(),typeof t!="function")throw new xht("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new xht("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new xht("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[sda]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[uda({maxRedirections:r})],this[Tyr]={...lda.deepClone(a),connect:n},this[Tyr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[gda]=r,this[szn]=t,this[uae]=new Map,this[izn]=(o,l)=>{this.emit("drain",o,[this,...l])},this[tzn]=(o,l)=>{this.emit("connect",o,[this,...l])},this[rzn]=(o,l,A)=>{this.emit("disconnect",o,[this,...l],A)},this[nzn]=(o,l,A)=>{this.emit("connectionError",o,[this,...l],A)}}get[ezn](){let t=0;for(let r of this[uae].values())t+=r[ezn];return t}[ida](t,r){let n;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))n=String(t.origin);else throw new xht("opts.origin must be a non-empty string or URL.");let a=this[uae].get(n);return a||(a=this[szn](t.origin,this[Tyr]).on("drain",this[izn]).on("connect",this[tzn]).on("disconnect",this[rzn]).on("connectionError",this[nzn]),this[uae].set(n,a)),a.dispatch(t,r)}async[rda](){let t=[];for(let r of this[uae].values())t.push(r.close());this[uae].clear(),await Promise.all(t)}async[nda](t){let r=[];for(let n of this[uae].values())r.push(n.destroy(t));this[uae].clear(),await Promise.all(r)}};ozn.exports=Ryr});var kyr=H((xou,uzn)=>{"use strict";var{kProxy:dda,kClose:pda,kDestroy:fda,kInterceptors:Ida}=B2(),{URL:TYe}=wt("node:url"),hda=Dwe(),mda=Nwe(),Cda=fwe(),{InvalidArgumentError:Zht,RequestAbortedError:_da,SecureProxyConnectionError:yda}=Y0(),azn=nYe(),Ght=Symbol("proxy agent"),Fht=Symbol("proxy client"),RYe=Symbol("proxy headers"),Nyr=Symbol("request tls settings"),czn=Symbol("proxy tls settings"),lzn=Symbol("connect endpoint function");function bda(e){return e==="https:"?443:80}function Eda(e,t){return new mda(e,t)}var Sda=()=>{},Dyr=class extends Cda{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof TYe)&&!t.uri)throw new Zht("Proxy uri is mandatory");let{clientFactory:r=Eda}=t;if(typeof r!="function")throw new Zht("Proxy opts.clientFactory must be a function.");let n=this.#e(t),{href:a,origin:o,port:l,protocol:A,username:f,password:I,hostname:C}=n;if(this[dda]={uri:a,protocol:A},this[Ida]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[Nyr]=t.requestTls,this[czn]=t.proxyTls,this[RYe]=t.headers||{},t.auth&&t.token)throw new Zht("opts.auth cannot be used in combination with opts.token");t.auth?this[RYe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[RYe]["proxy-authorization"]=t.token:f&&I&&(this[RYe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(I)}`).toString("base64")}`);let b=azn({...t.proxyTls});this[lzn]=azn({...t.requestTls}),this[Fht]=r(n,{connect:b}),this[Ght]=new hda({...t,connect:async(E,N)=>{let B=E.host;E.port||(B+=`:${bda(E.protocol)}`);try{let{socket:F,statusCode:Q}=await this[Fht].connect({origin:o,port:l,path:B,signal:E.signal,headers:{...this[RYe],host:E.host},servername:this[czn]?.servername||C});if(Q!==200&&(F.on("error",Sda).destroy(),N(new _da(`Proxy response (${Q}) !== 200 when HTTP Tunneling`))),E.protocol!=="https:"){N(null,F);return}let X;this[Nyr]?X=this[Nyr].servername:X=E.servername,this[lzn]({...E,servername:X,httpSocket:F},N)}catch(F){F.code==="ERR_TLS_CERT_ALTNAME_INVALID"?N(new yda(F)):N(F)}}})}dispatch(t,r){let n=vda(t.headers);if(Bda(n),n&&!("host"in n)&&!("Host"in n)){let{host:a}=new TYe(t.origin);n.host=a}return this[Ght].dispatch({...t,headers:n},r)}#e(t){return typeof t=="string"?new TYe(t):t instanceof TYe?t:new TYe(t.uri)}async[pda](){await this[Ght].close(),await this[Fht].close()}async[fda](){await this[Ght].destroy(),await this[Fht].destroy()}};function vda(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new Zht("Proxy-Authorization should be sent in ProxyAgent constructor")}uzn.exports=Dyr});var Izn=H((Gou,fzn)=>{"use strict";var wda=fwe(),{kClose:Tda,kDestroy:Rda,kClosed:gzn,kDestroyed:Azn,kDispatch:Nda,kNoProxyAgent:NYe,kHttpProxyAgent:gae,kHttpsProxyAgent:ghe}=B2(),dzn=kyr(),Dda=Dwe(),kda={"http:":80,"https:":443},pzn=!1,xyr=class extends wda{#e=null;#t=null;#n=null;constructor(t={}){super(),this.#n=t,pzn||(pzn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:a,...o}=t;this[NYe]=new Dda(o);let l=r??process.env.http_proxy??process.env.HTTP_PROXY;l?this[gae]=new dzn({...o,uri:l}):this[gae]=this[NYe];let A=n??process.env.https_proxy??process.env.HTTPS_PROXY;A?this[ghe]=new dzn({...o,uri:A}):this[ghe]=this[gae],this.#s()}[Nda](t,r){let n=new URL(t.origin);return this.#r(n).dispatch(t,r)}async[Tda](){await this[NYe].close(),this[gae][gzn]||await this[gae].close(),this[ghe][gzn]||await this[ghe].close()}async[Rda](t){await this[NYe].destroy(t),this[gae][Azn]||await this[gae].destroy(t),this[ghe][Azn]||await this[ghe].destroy(t)}#r(t){let{protocol:r,host:n,port:a}=t;return n=n.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||kda[r]||0,this.#i(n,a)?r==="https:"?this[ghe]:this[gae]:this[NYe]}#i(t,r){if(this.#o&&this.#s(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var kwe=wt("node:assert"),{kRetryHandlerDefaultRetry:hzn}=B2(),{RequestRetryError:DYe}=Y0(),{isDisturbed:mzn,parseHeaders:xda,parseRangeHeader:Czn,wrapRequestBody:Gda}=Em();function Fda(e){let t=Date.now();return new Date(e).getTime()-t}var Gyr=class e{constructor(t,r){let{retryOptions:n,...a}=t,{retry:o,maxRetries:l,maxTimeout:A,minTimeout:f,timeoutFactor:I,methods:C,errorCodes:b,retryAfter:E,statusCodes:N}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:Gda(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[hzn],retryAfter:E??!0,maxTimeout:A??30*1e3,minTimeout:f??500,timeoutFactor:I??2,maxRetries:l??5,methods:C??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:N??[500,502,503,504,429],errorCodes:b??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(B=>{this.aborted=!0,this.abort?this.abort(B):this.reason=B})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,n)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[hzn](t,{state:r,opts:n},a){let{statusCode:o,code:l,headers:A}=t,{method:f,retryOptions:I}=n,{maxRetries:C,minTimeout:b,maxTimeout:E,timeoutFactor:N,statusCodes:B,errorCodes:F,methods:Q}=I,{counter:X}=r;if(l&&l!=="UND_ERR_REQ_RETRY"&&!F.includes(l)){a(t);return}if(Array.isArray(Q)&&!Q.includes(f)){a(t);return}if(o!=null&&Array.isArray(B)&&!B.includes(o)){a(t);return}if(X>C){a(t);return}let ae=A?.["retry-after"];ae&&(ae=Number(ae),ae=Number.isNaN(ae)?Fda(ae):ae*1e3);let ne=ae>0?Math.min(ae,E):Math.min(b*N**(X-1),E);setTimeout(()=>a(null),ne)}onHeaders(t,r,n,a){let o=xda(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,n,a):(this.abort(new DYe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new DYe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let A=Czn(o["content-range"]);if(!A)return this.abort(new DYe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new DYe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:I,end:C=I}=A;return kwe(this.start===f,"content-range mismatch"),kwe(this.end==null||this.end===C,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(t===206){let A=Czn(o["content-range"]);if(A==null)return this.handler.onHeaders(t,r,n,a);let{start:f,size:I,end:C=I}=A;kwe(f!=null&&Number.isFinite(f),"content-range mismatch"),kwe(C!=null&&Number.isFinite(C),"invalid content-length"),this.start=f,this.end=C}if(this.end==null){let A=o["content-length"];this.end=A!=null?Number(A):null}return kwe(Number.isFinite(this.start)),kwe(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,n,a)}let l=new DYe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(l),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||mzn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(n){if(n!=null||this.aborted||mzn(this.opts.body))return this.handler.onError(n);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};_zn.exports=Gyr});var bzn=H((Zou,yzn)=>{"use strict";var Zda=tYe(),Lda=Lht(),Fyr=class extends Zda{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let n=new Lda({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};yzn.exports=Fyr});var Oyr=H((Lou,Dzn)=>{"use strict";var wzn=wt("node:assert"),{Readable:Vda}=wt("node:stream"),{RequestAbortedError:Tzn,NotSupportedError:Pda,InvalidArgumentError:Wda,AbortError:Zyr}=Y0(),Rzn=Em(),{ReadableStreamFrom:Oda}=Em(),$W=Symbol("kConsume"),kYe=Symbol("kReading"),Aae=Symbol("kBody"),Ezn=Symbol("kAbort"),Nzn=Symbol("kContentType"),Szn=Symbol("kContentLength"),Mda=()=>{},Lyr=class extends Vda{constructor({resume:t,abort:r,contentType:n="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[Ezn]=r,this[$W]=null,this[Aae]=null,this[Nzn]=n,this[Szn]=a,this[kYe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new Tzn),t&&this[Ezn](),super.destroy(t)}_destroy(t,r){this[kYe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[kYe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let n=super.off(t,...r);return(t==="data"||t==="readable")&&(this[kYe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(t,...r){return this.off(t,...r)}push(t){return this[$W]&&t!==null?(Pyr(this[$W],t),this[kYe]?super.push(t):!0):super.push(t)}async text(){return xYe(this,"text")}async json(){return xYe(this,"json")}async blob(){return xYe(this,"blob")}async bytes(){return xYe(this,"bytes")}async arrayBuffer(){return xYe(this,"arrayBuffer")}async formData(){throw new Pda}get bodyUsed(){return Rzn.isDisturbed(this)}get body(){return this[Aae]||(this[Aae]=Oda(this),this[$W]&&(this[Aae].getReader(),wzn(this[Aae].locked))),this[Aae]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,n=t?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new Wda("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[Szn]>r&&this.destroy(new Zyr);let l=()=>{this.destroy(n.reason??new Zyr)};n?.addEventListener("abort",l),this.on("close",function(){n?.removeEventListener("abort",l),n?.aborted?o(n.reason??new Zyr):a(null)}).on("error",Mda).on("data",function(A){r-=A.length,r<=0&&this.destroy()}).resume()})}};function Hda(e){return e[Aae]&&e[Aae].locked===!0||e[$W]}function Yda(e){return Rzn.isDisturbed(e)||Hda(e)}async function xYe(e,t){return wzn(!e[$W]),new Promise((r,n)=>{if(Yda(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[$W]={type:t,stream:e,resolve:r,reject:n,length:0,body:[]},e.on("error",function(a){Wyr(this[$W],a)}).on("close",function(){this[$W].body!==null&&Wyr(this[$W],new Tzn)}),Qda(e[$W])})})}function Qda(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,n=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,n)}function vzn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),n=0;for(let a=0;a{var Xda=wt("node:assert"),{ResponseStatusCodeError:kzn}=Y0(),{chunksDecode:xzn}=Oyr(),Jda=128*1024;async function Uda({callback:e,body:t,contentType:r,statusCode:n,statusMessage:a,headers:o}){Xda(t);let l=[],A=0;try{for await(let b of t)if(l.push(b),A+=b.length,A>Jda){l=[],A=0;break}}catch{l=[],A=0}let f=`Response status code ${n}${a?`: ${a}`:""}`;if(n===204||!r||!A){queueMicrotask(()=>e(new kzn(f,n,o)));return}let I=Error.stackTraceLimit;Error.stackTraceLimit=0;let C;try{Gzn(r)?C=JSON.parse(xzn(l,A)):Fzn(r)&&(C=xzn(l,A))}catch{}finally{Error.stackTraceLimit=I}queueMicrotask(()=>e(new kzn(f,n,o,C)))}var Gzn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",Fzn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";Zzn.exports={getResolveErrorBodyCallback:Uda,isContentTypeApplicationJson:Gzn,isContentTypeText:Fzn}});var Pzn=H((Pou,Hyr)=>{"use strict";var Kda=wt("node:assert"),{Readable:jda}=Oyr(),{InvalidArgumentError:xwe,RequestAbortedError:Lzn}=Y0(),FM=Em(),{getResolveErrorBodyCallback:zda}=Myr(),{AsyncResource:qda}=wt("node:async_hooks"),Vht=class extends qda{constructor(t,r){if(!t||typeof t!="object")throw new xwe("invalid opts");let{signal:n,method:a,opaque:o,body:l,onInfo:A,responseHeaders:f,throwOnError:I,highWaterMark:C}=t;try{if(typeof r!="function")throw new xwe("invalid callback");if(C&&(typeof C!="number"||C<0))throw new xwe("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new xwe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new xwe("invalid method");if(A&&typeof A!="function")throw new xwe("invalid onInfo callback");super("UNDICI_REQUEST")}catch(b){throw FM.isStream(l)&&FM.destroy(l.on("error",FM.nop),b),b}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=l,this.trailers={},this.context=null,this.onInfo=A||null,this.throwOnError=I,this.highWaterMark=C,this.signal=n,this.reason=null,this.removeAbortListener=null,FM.isStream(l)&&l.on("error",b=>{this.onError(b)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new Lzn:this.removeAbortListener=FM.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new Lzn,this.res?FM.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}Kda(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{callback:o,opaque:l,abort:A,context:f,responseHeaders:I,highWaterMark:C}=this,b=I==="raw"?FM.parseRawHeaders(r):FM.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:b});return}let E=I==="raw"?FM.parseHeaders(r):b,N=E["content-type"],B=E["content-length"],F=new jda({resume:n,abort:A,contentType:N,contentLength:this.method!=="HEAD"&&B?Number(B):null,highWaterMark:C});this.removeAbortListener&&F.on("close",this.removeAbortListener),this.callback=null,this.res=F,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(zda,null,{callback:o,body:F,contentType:N,statusCode:t,statusMessage:a,headers:b}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:b,trailers:this.trailers,opaque:l,body:F,context:f}))}onData(t){return this.res.push(t)}onComplete(t){FM.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:n,body:a,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{FM.destroy(r,t)})),a&&(this.body=null,FM.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function Vzn(e,t){if(t===void 0)return new Promise((r,n)=>{Vzn.call(this,e,(a,o)=>a?n(a):r(o))});try{this.dispatch(e,new Vht(e,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}Hyr.exports=Vzn;Hyr.exports.RequestHandler=Vht});var GYe=H((Wou,Mzn)=>{var{addAbortListener:$da}=Em(),{RequestAbortedError:epa}=Y0(),Gwe=Symbol("kListener"),F8=Symbol("kSignal");function Wzn(e){e.abort?e.abort(e[F8]?.reason):e.reason=e[F8]?.reason??new epa,Ozn(e)}function tpa(e,t){if(e.reason=null,e[F8]=null,e[Gwe]=null,!!t){if(t.aborted){Wzn(e);return}e[F8]=t,e[Gwe]=()=>{Wzn(e)},$da(e[F8],e[Gwe])}}function Ozn(e){e[F8]&&("removeEventListener"in e[F8]?e[F8].removeEventListener("abort",e[Gwe]):e[F8].removeListener("abort",e[Gwe]),e[F8]=null,e[Gwe]=null)}Mzn.exports={addSignal:tpa,removeSignal:Ozn}});var Xzn=H((Oou,Qzn)=>{"use strict";var rpa=wt("node:assert"),{finished:npa,PassThrough:ipa}=wt("node:stream"),{InvalidArgumentError:Fwe,InvalidReturnValueError:spa}=Y0(),LX=Em(),{getResolveErrorBodyCallback:opa}=Myr(),{AsyncResource:apa}=wt("node:async_hooks"),{addSignal:cpa,removeSignal:Hzn}=GYe(),Yyr=class extends apa{constructor(t,r,n){if(!t||typeof t!="object")throw new Fwe("invalid opts");let{signal:a,method:o,opaque:l,body:A,onInfo:f,responseHeaders:I,throwOnError:C}=t;try{if(typeof n!="function")throw new Fwe("invalid callback");if(typeof r!="function")throw new Fwe("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new Fwe("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new Fwe("invalid method");if(f&&typeof f!="function")throw new Fwe("invalid onInfo callback");super("UNDICI_STREAM")}catch(b){throw LX.isStream(A)&&LX.destroy(A.on("error",LX.nop),b),b}this.responseHeaders=I||null,this.opaque=l||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=A,this.onInfo=f||null,this.throwOnError=C||!1,LX.isStream(A)&&A.on("error",b=>{this.onError(b)}),cpa(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}rpa(this.callback),this.abort=t,this.context=r}onHeaders(t,r,n,a){let{factory:o,opaque:l,context:A,callback:f,responseHeaders:I}=this,C=I==="raw"?LX.parseRawHeaders(r):LX.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:C});return}this.factory=null;let b;if(this.throwOnError&&t>=400){let B=(I==="raw"?LX.parseHeaders(r):C)["content-type"];b=new ipa,this.callback=null,this.runInAsyncScope(opa,null,{callback:f,body:b,contentType:B,statusCode:t,statusMessage:a,headers:C})}else{if(o===null)return;if(b=this.runInAsyncScope(o,null,{statusCode:t,headers:C,opaque:l,context:A}),!b||typeof b.write!="function"||typeof b.end!="function"||typeof b.on!="function")throw new spa("expected Writable");npa(b,{readable:!1},N=>{let{callback:B,res:F,opaque:Q,trailers:X,abort:ae}=this;this.res=null,(N||!F.readable)&&LX.destroy(F,N),this.callback=null,this.runInAsyncScope(B,null,N||null,{opaque:Q,trailers:X}),N&&ae()})}return b.on("drain",n),this.res=b,(b.writableNeedDrain!==void 0?b.writableNeedDrain:b._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;Hzn(this),r&&(this.trailers=LX.parseHeaders(t),r.end())}onError(t){let{res:r,callback:n,opaque:a,body:o}=this;Hzn(this),this.factory=null,r?(this.res=null,LX.destroy(r,t)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,t,{opaque:a})})),o&&(this.body=null,LX.destroy(o,t))}};function Yzn(e,t,r){if(r===void 0)return new Promise((n,a)=>{Yzn.call(this,e,t,(o,l)=>o?a(o):n(l))});try{this.dispatch(e,new Yyr(e,t,r))}catch(n){if(typeof r!="function")throw n;let a=e?.opaque;queueMicrotask(()=>r(n,{opaque:a}))}}Qzn.exports=Yzn});var jzn=H((Mou,Kzn)=>{"use strict";var{Readable:Uzn,Duplex:lpa,PassThrough:upa}=wt("node:stream"),{InvalidArgumentError:FYe,InvalidReturnValueError:gpa,RequestAbortedError:Qyr}=Y0(),ZM=Em(),{AsyncResource:Apa}=wt("node:async_hooks"),{addSignal:dpa,removeSignal:ppa}=GYe(),Jzn=wt("node:assert"),Zwe=Symbol("resume"),Xyr=class extends Uzn{constructor(){super({autoDestroy:!0}),this[Zwe]=null}_read(){let{[Zwe]:t}=this;t&&(this[Zwe]=null,t())}_destroy(t,r){this._read(),r(t)}},Jyr=class extends Uzn{constructor(t){super({autoDestroy:!0}),this[Zwe]=t}_read(){this[Zwe]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Qyr),r(t)}},Uyr=class extends Apa{constructor(t,r){if(!t||typeof t!="object")throw new FYe("invalid opts");if(typeof r!="function")throw new FYe("invalid handler");let{signal:n,method:a,opaque:o,onInfo:l,responseHeaders:A}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new FYe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new FYe("invalid method");if(l&&typeof l!="function")throw new FYe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=A||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=l||null,this.req=new Xyr().on("error",ZM.nop),this.ret=new lpa({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,I,C)=>{let{req:b}=this;b.push(f,I)||b._readableState.destroyed?C():b[Zwe]=C},destroy:(f,I)=>{let{body:C,req:b,res:E,ret:N,abort:B}=this;!f&&!N._readableState.endEmitted&&(f=new Qyr),B&&f&&B(),ZM.destroy(C,f),ZM.destroy(b,f),ZM.destroy(E,f),ppa(this),I(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,dpa(this,n)}onConnect(t,r){let{ret:n,res:a}=this;if(this.reason){t(this.reason);return}Jzn(!a,"pipeline cannot be retried"),Jzn(!n.destroyed),this.abort=t,this.context=r}onHeaders(t,r,n){let{opaque:a,handler:o,context:l}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?ZM.parseRawHeaders(r):ZM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new Jyr(n);let A;try{this.handler=null;let f=this.responseHeaders==="raw"?ZM.parseRawHeaders(r):ZM.parseHeaders(r);A=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:l})}catch(f){throw this.res.on("error",ZM.nop),f}if(!A||typeof A.on!="function")throw new gpa("expected Readable");A.on("data",f=>{let{ret:I,body:C}=this;!I.push(f)&&C.pause&&C.pause()}).on("error",f=>{let{ret:I}=this;ZM.destroy(I,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||ZM.destroy(f,new Qyr)}),this.body=A}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,ZM.destroy(r,t)}};function fpa(e,t){try{let r=new Uyr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new upa().destroy(r)}}Kzn.exports=fpa});var rqn=H((Hou,tqn)=>{"use strict";var{InvalidArgumentError:Kyr,SocketError:Ipa}=Y0(),{AsyncResource:hpa}=wt("node:async_hooks"),zzn=Em(),{addSignal:mpa,removeSignal:qzn}=GYe(),$zn=wt("node:assert"),jyr=class extends hpa{constructor(t,r){if(!t||typeof t!="object")throw new Kyr("invalid opts");if(typeof r!="function")throw new Kyr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new Kyr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,mpa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}$zn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new Ipa("bad upgrade",null)}onUpgrade(t,r,n){$zn(t===101);let{callback:a,opaque:o,context:l}=this;qzn(this),this.callback=null;let A=this.responseHeaders==="raw"?zzn.parseRawHeaders(r):zzn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;qzn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function eqn(e,t){if(t===void 0)return new Promise((r,n)=>{eqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new jyr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}tqn.exports=eqn});var aqn=H((You,oqn)=>{"use strict";var Cpa=wt("node:assert"),{AsyncResource:_pa}=wt("node:async_hooks"),{InvalidArgumentError:zyr,SocketError:ypa}=Y0(),nqn=Em(),{addSignal:bpa,removeSignal:iqn}=GYe(),qyr=class extends _pa{constructor(t,r){if(!t||typeof t!="object")throw new zyr("invalid opts");if(typeof r!="function")throw new zyr("invalid callback");let{signal:n,opaque:a,responseHeaders:o}=t;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new zyr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,bpa(this,n)}onConnect(t,r){if(this.reason){t(this.reason);return}Cpa(this.callback),this.abort=t,this.context=r}onHeaders(){throw new ypa("bad connect",null)}onUpgrade(t,r,n){let{callback:a,opaque:o,context:l}=this;iqn(this),this.callback=null;let A=r;A!=null&&(A=this.responseHeaders==="raw"?nqn.parseRawHeaders(r):nqn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:A,socket:n,opaque:o,context:l})}onError(t){let{callback:r,opaque:n}=this;iqn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:n})}))}};function sqn(e,t){if(t===void 0)return new Promise((r,n)=>{sqn.call(this,e,(a,o)=>a?n(a):r(o))});try{let r=new qyr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}oqn.exports=sqn});var cqn=H((Qou,Lwe)=>{"use strict";Lwe.exports.request=Pzn();Lwe.exports.stream=Xzn();Lwe.exports.pipeline=jzn();Lwe.exports.upgrade=rqn();Lwe.exports.connect=aqn()});var ebr=H((Xou,lqn)=>{"use strict";var{UndiciError:Epa}=Y0(),$yr=class e extends Epa{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};lqn.exports={MockNotMatchedError:$yr}});var Vwe=H((Jou,uqn)=>{"use strict";uqn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var ZYe=H((Uou,yqn)=>{"use strict";var{MockNotMatchedError:Ahe}=ebr(),{kDispatches:Pht,kMockAgent:Spa,kOriginalDispatch:vpa,kOrigin:Bpa,kGetNetConnect:wpa}=Vwe(),{buildURL:Tpa}=Em(),{STATUS_CODES:Rpa}=wt("node:http"),{types:{isPromise:Npa}}=wt("node:util");function Q$(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function Aqn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function dqn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,n]of Object.entries(e.headers)){let a=dqn(t,r);if(!Q$(n,a))return!1}return!0}function gqn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Dpa(e,{path:t,method:r,body:n,headers:a}){let o=Q$(e.path,t),l=Q$(e.method,r),A=typeof e.body<"u"?Q$(e.body,n):!0,f=pqn(e,a);return o&&l&&A&&f}function fqn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function Iqn(e,t){let r=t.query?Tpa(t.path,t.query):t.path,n=typeof r=="string"?gqn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>Q$(gqn(o),n));if(a.length===0)throw new Ahe(`Mock dispatch not matched for path '${n}'`);if(a=a.filter(({method:o})=>Q$(o,t.method)),a.length===0)throw new Ahe(`Mock dispatch not matched for method '${t.method}' on path '${n}'`);if(a=a.filter(({body:o})=>typeof o<"u"?Q$(o,t.body):!0),a.length===0)throw new Ahe(`Mock dispatch not matched for body '${t.body}' on path '${n}'`);if(a=a.filter(o=>pqn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new Ahe(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return a[0]}function kpa(e,t,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...n,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function tbr(e,t){let r=e.findIndex(n=>n.consumed?Dpa(n,t):!1);r!==-1&&e.splice(r,1)}function hqn(e){let{path:t,method:r,body:n,headers:a,query:o}=e;return{path:t,method:r,body:n,headers:a,query:o}}function rbr(e){let t=Object.keys(e),r=[];for(let n=0;n=E,n.pending=b0?setTimeout(()=>{N(this[Pht])},I):N(this[Pht]);function N(F,Q=o){let X=Array.isArray(e.headers)?nbr(e.headers):e.headers,ae=typeof Q=="function"?Q({...e,headers:X}):Q;if(Npa(ae)){ae.then(ue=>N(F,ue));return}let ne=fqn(ae),ce=rbr(l),fe=rbr(A);t.onConnect?.(ue=>t.onError(ue),null),t.onHeaders?.(a,ce,B,mqn(a)),t.onData?.(Buffer.from(ne)),t.onComplete?.(fe),tbr(F,r)}function B(){}return!0}function Gpa(){let e=this[Spa],t=this[Bpa],r=this[vpa];return function(a,o){if(e.isMockActive)try{Cqn.call(this,a,o)}catch(l){if(l instanceof Ahe){let A=e[wpa]();if(A===!1)throw new Ahe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(_qn(A,t))r.call(this,a,o);else throw new Ahe(`${l.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw l}else r.call(this,a,o)}}function _qn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(n=>Q$(n,r.host)))}function Fpa(e){if(e){let{agent:t,...r}=e;return r}}yqn.exports={getResponseData:fqn,getMockDispatch:Iqn,addMockDispatch:kpa,deleteMockDispatch:tbr,buildKey:hqn,generateKeyValues:rbr,matchValue:Q$,getResponse:xpa,getStatusText:mqn,mockDispatch:Cqn,buildMockDispatch:Gpa,checkNetConnect:_qn,buildMockOptions:Fpa,getHeaderByName:dqn,buildHeadersFromArray:nbr}});var ubr=H((Kou,lbr)=>{"use strict";var{getResponseData:Zpa,buildKey:Lpa,addMockDispatch:ibr}=ZYe(),{kDispatches:Wht,kDispatchKey:Oht,kDefaultHeaders:sbr,kDefaultTrailers:obr,kContentLength:abr,kMockDispatch:Mht}=Vwe(),{InvalidArgumentError:Z8}=Y0(),{buildURL:Vpa}=Em(),Pwe=class{constructor(t){this[Mht]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new Z8("waitInMs must be a valid integer > 0");return this[Mht].delay=t,this}persist(){return this[Mht].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new Z8("repeatTimes must be a valid integer > 0");return this[Mht].times=t,this}},cbr=class{constructor(t,r){if(typeof t!="object")throw new Z8("opts must be an object");if(typeof t.path>"u")throw new Z8("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Vpa(t.path,t.query);else{let n=new URL(t.path,"data://");t.path=n.pathname+n.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Oht]=Lpa(t),this[Wht]=r,this[sbr]={},this[obr]={},this[abr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:n}){let a=Zpa(r),o=this[abr]?{"content-length":a.length}:{},l={...this[sbr],...o,...n.headers},A={...this[obr],...n.trailers};return{statusCode:t,data:r,headers:l,trailers:A}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new Z8("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new Z8("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=A=>{let f=t(A);if(typeof f!="object"||f===null)throw new Z8("reply options callback must return an object");let I={data:"",responseOptions:{},...f};return this.validateReplyParameters(I),{...this.createMockScopeDispatchData(I)}},l=ibr(this[Wht],this[Oht],o);return new Pwe(l)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),a=ibr(this[Wht],this[Oht],n);return new Pwe(a)}replyWithError(t){if(typeof t>"u")throw new Z8("error must be defined");let r=ibr(this[Wht],this[Oht],{error:t});return new Pwe(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new Z8("headers must be defined");return this[sbr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new Z8("trailers must be defined");return this[obr]=t,this}replyContentLength(){return this[abr]=!0,this}};lbr.exports.MockInterceptor=cbr;lbr.exports.MockScope=Pwe});var dbr=H((jou,Tqn)=>{"use strict";var{promisify:Ppa}=wt("node:util"),Wpa=SYe(),{buildMockDispatch:Opa}=ZYe(),{kDispatches:bqn,kMockAgent:Eqn,kClose:Sqn,kOriginalClose:vqn,kOrigin:Bqn,kOriginalDispatch:Mpa,kConnected:gbr}=Vwe(),{MockInterceptor:Hpa}=ubr(),wqn=B2(),{InvalidArgumentError:Ypa}=Y0(),Abr=class extends Wpa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ypa("Argument opts.agent must implement Agent");this[Eqn]=r.agent,this[Bqn]=t,this[bqn]=[],this[gbr]=1,this[Mpa]=this.dispatch,this[vqn]=this.close.bind(this),this.dispatch=Opa.call(this),this.close=this[Sqn]}get[wqn.kConnected](){return this[gbr]}intercept(t){return new Hpa(t,this[bqn])}async[Sqn](){await Ppa(this[vqn])(),this[gbr]=0,this[Eqn][wqn.kClients].delete(this[Bqn])}};Tqn.exports=Abr});var Ibr=H((zou,Fqn)=>{"use strict";var{promisify:Qpa}=wt("node:util"),Xpa=Nwe(),{buildMockDispatch:Jpa}=ZYe(),{kDispatches:Rqn,kMockAgent:Nqn,kClose:Dqn,kOriginalClose:kqn,kOrigin:xqn,kOriginalDispatch:Upa,kConnected:pbr}=Vwe(),{MockInterceptor:Kpa}=ubr(),Gqn=B2(),{InvalidArgumentError:jpa}=Y0(),fbr=class extends Xpa{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new jpa("Argument opts.agent must implement Agent");this[Nqn]=r.agent,this[xqn]=t,this[Rqn]=[],this[pbr]=1,this[Upa]=this.dispatch,this[kqn]=this.close.bind(this),this.dispatch=Jpa.call(this),this.close=this[Dqn]}get[Gqn.kConnected](){return this[pbr]}intercept(t){return new Kpa(t,this[Rqn])}async[Dqn](){await Qpa(this[kqn])(),this[pbr]=0,this[Nqn][Gqn.kClients].delete(this[xqn])}};Fqn.exports=fbr});var Lqn=H(($ou,Zqn)=>{"use strict";var zpa={pronoun:"it",is:"is",was:"was",this:"this"},qpa={pronoun:"they",is:"are",was:"were",this:"these"};Zqn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,n=r?zpa:qpa,a=r?this.singular:this.plural;return{...n,count:t,noun:a}}}});var Pqn=H((tau,Vqn)=>{"use strict";var{Transform:$pa}=wt("node:stream"),{Console:efa}=wt("node:console"),tfa=process.versions.icu?"\u2705":"Y ",rfa=process.versions.icu?"\u274C":"N ";Vqn.exports=class{constructor({disableColors:t}={}){this.transform=new $pa({transform(r,n,a){a(null,r)}}),this.logger=new efa({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:n,path:a,data:{statusCode:o},persist:l,times:A,timesInvoked:f,origin:I})=>({Method:n,Origin:I,Path:a,"Status code":o,Persistent:l?tfa:rfa,Invocations:f,Remaining:l?1/0:A-f}));return this.logger.table(r),this.transform.read().toString()}}});var Hqn=H((rau,Mqn)=>{"use strict";var{kClients:dhe}=B2(),nfa=Dwe(),{kAgent:hbr,kMockAgentSet:Hht,kMockAgentGet:Wqn,kDispatches:mbr,kIsMockActive:Yht,kNetConnect:phe,kGetNetConnect:ifa,kOptions:Qht,kFactory:Xht}=Vwe(),sfa=dbr(),ofa=Ibr(),{matchValue:afa,buildMockOptions:cfa}=ZYe(),{InvalidArgumentError:Oqn,UndiciError:lfa}=Y0(),ufa=tYe(),gfa=Lqn(),Afa=Pqn(),Cbr=class extends ufa{constructor(t){if(super(t),this[phe]=!0,this[Yht]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new Oqn("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new nfa(t);this[hbr]=r,this[dhe]=r[dhe],this[Qht]=cfa(t)}get(t){let r=this[Wqn](t);return r||(r=this[Xht](t),this[Hht](t,r)),r}dispatch(t,r){return this.get(t.origin),this[hbr].dispatch(t,r)}async close(){await this[hbr].close(),this[dhe].clear()}deactivate(){this[Yht]=!1}activate(){this[Yht]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[phe])?this[phe].push(t):this[phe]=[t];else if(typeof t>"u")this[phe]=!0;else throw new Oqn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[phe]=!1}get isMockActive(){return this[Yht]}[Hht](t,r){this[dhe].set(t,r)}[Xht](t){let r=Object.assign({agent:this},this[Qht]);return this[Qht]&&this[Qht].connections===1?new sfa(t,r):new ofa(t,r)}[Wqn](t){let r=this[dhe].get(t);if(r)return r;if(typeof t!="string"){let n=this[Xht]("http://localhost:9999");return this[Hht](t,n),n}for(let[n,a]of Array.from(this[dhe]))if(a&&typeof n!="string"&&afa(n,t)){let o=this[Xht](t);return this[Hht](t,o),o[mbr]=a[mbr],o}}[ifa](){return this[phe]}pendingInterceptors(){let t=this[dhe];return Array.from(t.entries()).flatMap(([r,n])=>n[mbr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new Afa}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new gfa("interceptor","interceptors").pluralize(r.length);throw new lfa(` -${n.count} ${n.noun} ${n.is} pending: - -${t.format(r)} -`.trim())}};Mqn.exports=Cbr});var Jht=H((nau,Jqn)=>{"use strict";var Yqn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:dfa}=Y0(),pfa=Dwe();Xqn()===void 0&&Qqn(new pfa);function Qqn(e){if(!e||typeof e.dispatch!="function")throw new dfa("Argument agent must implement Agent");Object.defineProperty(globalThis,Yqn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function Xqn(){return globalThis[Yqn]}Jqn.exports={setGlobalDispatcher:Qqn,getGlobalDispatcher:Xqn}});var _br=H((sau,Uqn)=>{"use strict";Uqn.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var jqn=H((oau,Kqn)=>{"use strict";var ffa=Bht();Kqn.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:l=t,...A}=a;if(!l)return r(a,o);let f=new ffa(r,l,a,o);return r(A,f)}}});var qqn=H((aau,zqn)=>{"use strict";var Ifa=Lht();zqn.exports=e=>t=>function(n,a){return t(n,new Ifa({...n,retryOptions:{...e,...n.retryOptions}},{handler:a,dispatch:t}))}});var e$n=H((cau,$qn)=>{"use strict";var hfa=Em(),{InvalidArgumentError:mfa,RequestAbortedError:Cfa}=Y0(),_fa=_br(),ybr=class extends _fa{#e=1024*1024;#t=null;#n=!1;#r=!1;#i=0;#s=null;#o=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new mfa("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#o=r}onConnect(t){this.#t=t,this.#o.onConnect(this.#g.bind(this))}#g(t){this.#r=!0,this.#s=t}onHeaders(t,r,n,a){let l=hfa.parseHeaders(r)["content-length"];if(l!=null&&l>this.#e)throw new Cfa(`Response size (${l}) larger than maxSize (${this.#e})`);return this.#r?!0:this.#o.onHeaders(t,r,n,a)}onError(t){this.#n||(t=this.#s??t,this.#o.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#n=!0,this.#r?this.#o.onError(this.#s):this.#o.onComplete([])),!0}onComplete(t){if(!this.#n){if(this.#r){this.#o.onError(this.reason);return}this.#o.onComplete(t)}}};function yfa({maxSize:e}={maxSize:1024*1024}){return t=>function(n,a){let{dumpMaxSize:o=e}=n,l=new ybr({maxSize:o},a);return t(n,l)}}$qn.exports=yfa});var fhe=H((lau,a$n)=>{"use strict";var{kConstruct:bfa}=B2(),{kEnumerableProperty:Wwe}=Em(),{iteratorMixin:Efa,isValidHeaderName:LYe,isValidHeaderValue:r$n}=qW(),{webidl:__}=kk(),bbr=wt("node:assert"),Uht=wt("node:util"),aT=Symbol("headers map"),eO=Symbol("headers map sorted");function t$n(e){return e===10||e===13||e===9||e===32}function n$n(e){let t=0,r=e.length;for(;r>t&&t$n(e.charCodeAt(r-1));)--r;for(;r>t&&t$n(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function i$n(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function Ebr(e,t,r){if(r=n$n(r),LYe(t)){if(!r$n(r))throw __.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw __.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(o$n(e)==="immutable")throw new TypeError("immutable");return Sbr(e).append(t,r,!1)}function s$n(e,t){return e[0]>1),r[I][0]<=C[0]?f=I+1:A=I;if(o!==I){for(l=o;l>f;)r[l]=r[--l];r[f]=C}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:a,1:{value:o}}of this[aT])r[n++]=[a,o],bbr(o!==null);return r.sort(s$n)}}},VX=class e{#e;#t;constructor(t=void 0){t!==bfa&&(this.#t=new Kht,this.#e="none",t!==void 0&&(t=__.converters.HeadersInit(t,"Headers contructor","init"),i$n(this,t)))}append(t,r){__.brandCheck(this,e),__.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return t=__.converters.ByteString(t,n,"name"),r=__.converters.ByteString(r,n,"value"),Ebr(this,t,r)}delete(t){if(__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.delete"),t=__.converters.ByteString(t,"Headers.delete","name"),!LYe(t))throw __.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=__.converters.ByteString(t,r,"name"),!LYe(t))throw __.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){__.brandCheck(this,e),__.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=__.converters.ByteString(t,r,"name"),!LYe(t))throw __.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){__.brandCheck(this,e),__.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(t=__.converters.ByteString(t,n,"name"),r=__.converters.ByteString(r,n,"value"),r=n$n(r),LYe(t)){if(!r$n(r))throw __.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw __.errors.invalidArgument({prefix:n,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){__.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[eO](){if(this.#t[eO])return this.#t[eO];let t=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[eO]=r;for(let a=0;a>"](e,t,r,n.bind(e)):__.converters["record"](e,t,r)}throw __.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};a$n.exports={fill:i$n,compareHeaderName:s$n,Headers:VX,HeadersList:Kht,getHeadersGuard:o$n,setHeadersGuard:Sfa,setHeadersList:vfa,getHeadersList:Sbr}});var PYe=H((uau,h$n)=>{"use strict";var{Headers:d$n,HeadersList:c$n,fill:Bfa,getHeadersGuard:wfa,setHeadersGuard:p$n,setHeadersList:f$n}=fhe(),{extractBody:l$n,cloneBody:Tfa,mixinBody:Rfa,hasFinalizationRegistry:Nfa,streamRegistry:Dfa,bodyUnusable:kfa}=AYe(),vbr=Em(),u$n=wt("node:util"),{kEnumerableProperty:tO}=vbr,{isValidReasonPhrase:xfa,isCancelled:Gfa,isAborted:Ffa,isBlobLike:Zfa,serializeJavascriptValueToJSONString:Lfa,isErrorLike:Vfa,isomorphicEncode:Pfa,environmentSettingsObject:Wfa}=qW(),{redirectStatusSet:Ofa,nullBodyStatus:Mfa}=iYe(),{kState:Mv,kHeaders:X$}=nae(),{webidl:Oh}=kk(),{FormData:Hfa}=uYe(),{URLSerializer:g$n}=eV(),{kConstruct:zht}=B2(),Bbr=wt("node:assert"),{types:Yfa}=wt("node:util"),Qfa=new TextEncoder("utf-8"),Ihe=class e{static error(){return VYe(qht(),"immutable")}static json(t,r={}){Oh.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=Oh.converters.ResponseInit(r));let n=Qfa.encode(Lfa(t)),a=l$n(n),o=VYe(Owe({}),"response");return A$n(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){Oh.argumentLengthCheck(arguments,1,"Response.redirect"),t=Oh.converters.USVString(t),r=Oh.converters["unsigned short"](r);let n;try{n=new URL(t,Wfa.settingsObject.baseUrl)}catch(l){throw new TypeError(`Failed to parse URL from ${t}`,{cause:l})}if(!Ofa.has(r))throw new RangeError(`Invalid status code ${r}`);let a=VYe(Owe({}),"immutable");a[Mv].status=r;let o=Pfa(g$n(n));return a[Mv].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===zht)return;t!==null&&(t=Oh.converters.BodyInit(t)),r=Oh.converters.ResponseInit(r),this[Mv]=Owe({}),this[X$]=new d$n(zht),p$n(this[X$],"response"),f$n(this[X$],this[Mv].headersList);let n=null;if(t!=null){let[a,o]=l$n(t);n={body:a,type:o}}A$n(this,r,n)}get type(){return Oh.brandCheck(this,e),this[Mv].type}get url(){Oh.brandCheck(this,e);let t=this[Mv].urlList,r=t[t.length-1]??null;return r===null?"":g$n(r,!0)}get redirected(){return Oh.brandCheck(this,e),this[Mv].urlList.length>1}get status(){return Oh.brandCheck(this,e),this[Mv].status}get ok(){return Oh.brandCheck(this,e),this[Mv].status>=200&&this[Mv].status<=299}get statusText(){return Oh.brandCheck(this,e),this[Mv].statusText}get headers(){return Oh.brandCheck(this,e),this[X$]}get body(){return Oh.brandCheck(this,e),this[Mv].body?this[Mv].body.stream:null}get bodyUsed(){return Oh.brandCheck(this,e),!!this[Mv].body&&vbr.isDisturbed(this[Mv].body.stream)}clone(){if(Oh.brandCheck(this,e),kfa(this))throw Oh.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=wbr(this[Mv]);return VYe(t,wfa(this[X$]))}[u$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${u$n.formatWithOptions(r,n)}`}};Rfa(Ihe);Object.defineProperties(Ihe.prototype,{type:tO,url:tO,status:tO,ok:tO,redirected:tO,statusText:tO,headers:tO,clone:tO,body:tO,bodyUsed:tO,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(Ihe,{json:tO,redirect:tO,error:tO});function wbr(e){if(e.internalResponse)return I$n(wbr(e.internalResponse),e.type);let t=Owe({...e,body:null});return e.body!=null&&(t.body=Tfa(t,e.body)),t}function Owe(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new c$n(e?.headersList):new c$n,urlList:e?.urlList?[...e.urlList]:[]}}function qht(e){let t=Vfa(e);return Owe({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function Xfa(e){return e.type==="error"&&e.status===0}function jht(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,n){return n in t?t[n]:r[n]},set(r,n,a){return Bbr(!(n in t)),r[n]=a,!0}})}function I$n(e,t){if(t==="basic")return jht(e,{type:"basic",headersList:e.headersList});if(t==="cors")return jht(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return jht(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return jht(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Bbr(!1)}function Jfa(e,t=null){return Bbr(Gfa(e)),Ffa(e)?qht(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):qht(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function A$n(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!xfa(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[Mv].status=t.status),"statusText"in t&&t.statusText!=null&&(e[Mv].statusText=t.statusText),"headers"in t&&t.headers!=null&&Bfa(e[X$],t.headers),r){if(Mfa.includes(e.status))throw Oh.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[Mv].body=r.body,r.type!=null&&!e[Mv].headersList.contains("content-type",!0)&&e[Mv].headersList.append("content-type",r.type,!0)}}function VYe(e,t){let r=new Ihe(zht);return r[Mv]=e,r[X$]=new d$n(zht),f$n(r[X$],e.headersList),p$n(r[X$],t),Nfa&&e.body?.stream&&Dfa.register(r,new WeakRef(e.body.stream)),r}Oh.converters.ReadableStream=Oh.interfaceConverter(ReadableStream);Oh.converters.FormData=Oh.interfaceConverter(Hfa);Oh.converters.URLSearchParams=Oh.interfaceConverter(URLSearchParams);Oh.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?Oh.converters.USVString(e,t,r):Zfa(e)?Oh.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||Yfa.isArrayBuffer(e)?Oh.converters.BufferSource(e,t,r):vbr.isFormDataLike(e)?Oh.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?Oh.converters.URLSearchParams(e,t,r):Oh.converters.DOMString(e,t,r)};Oh.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?Oh.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:Oh.converters.XMLHttpRequestBodyInit(e,t,r)};Oh.converters.ResponseInit=Oh.dictionaryConverter([{key:"status",converter:Oh.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:Oh.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:Oh.converters.HeadersInit}]);h$n.exports={isNetworkError:Xfa,makeNetworkError:qht,makeResponse:Owe,makeAppropriateNetworkError:Jfa,filterResponse:I$n,Response:Ihe,cloneResponse:wbr,fromInnerResponse:VYe}});var y$n=H((gau,_$n)=>{"use strict";var{kConnected:m$n,kSize:C$n}=B2(),Tbr=class{constructor(t){this.value=t}deref(){return this.value[m$n]===0&&this.value[C$n]===0?void 0:this.value}},Rbr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[m$n]===0&&t[C$n]===0&&this.finalizer(r)})}unregister(t){}};_$n.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Tbr,FinalizationRegistry:Rbr}):{WeakRef,FinalizationRegistry}}});var Mwe=H((Aau,Z$n)=>{"use strict";var{extractBody:Ufa,mixinBody:Kfa,cloneBody:jfa,bodyUnusable:b$n}=AYe(),{Headers:D$n,fill:zfa,HeadersList:rmt,setHeadersGuard:Dbr,getHeadersGuard:qfa,setHeadersList:k$n,getHeadersList:E$n}=fhe(),{FinalizationRegistry:$fa}=y$n()(),emt=Em(),S$n=wt("node:util"),{isValidHTTPToken:eIa,sameOrigin:v$n,environmentSettingsObject:$ht}=qW(),{forbiddenMethodsSet:tIa,corsSafeListedMethodsSet:rIa,referrerPolicy:nIa,requestRedirect:iIa,requestMode:sIa,requestCredentials:oIa,requestCache:aIa,requestDuplex:cIa}=iYe(),{kEnumerableProperty:cT,normalizedMethodRecordsBase:lIa,normalizedMethodRecords:uIa}=emt,{kHeaders:rO,kSignal:tmt,kState:O1,kDispatcher:Nbr}=nae(),{webidl:vf}=kk(),{URLSerializer:gIa}=eV(),{kConstruct:nmt}=B2(),AIa=wt("node:assert"),{getMaxListeners:B$n,setMaxListeners:w$n,getEventListeners:dIa,defaultMaxListeners:T$n}=wt("node:events"),pIa=Symbol("abortController"),x$n=new $fa(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),imt=new WeakMap;function R$n(e){return t;function t(){let r=e.deref();if(r!==void 0){x$n.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let n=imt.get(r.signal);if(n!==void 0){if(n.size!==0){for(let a of n){let o=a.deref();o!==void 0&&o.abort(this.reason)}n.clear()}imt.delete(r.signal)}}}}var N$n=!1,dae=class e{constructor(t,r={}){if(t===nmt)return;let n="Request constructor";vf.argumentLengthCheck(arguments,1,n),t=vf.converters.RequestInfo(t,n,"input"),r=vf.converters.RequestInit(r,n,"init");let a=null,o=null,l=$ht.settingsObject.baseUrl,A=null;if(typeof t=="string"){this[Nbr]=r.dispatcher;let X;try{X=new URL(t,l)}catch(ae){throw new TypeError("Failed to parse URL from "+t,{cause:ae})}if(X.username||X.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=smt({urlList:[X]}),o="cors"}else this[Nbr]=r.dispatcher||t[Nbr],AIa(t instanceof e),a=t[O1],A=t[tmt];let f=$ht.settingsObject.origin,I="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&v$n(a.window,f)&&(I=a.window),r.window!=null)throw new TypeError(`'window' option '${I}' must be null`);"window"in r&&(I="no-window"),a=smt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:$ht.settingsObject,window:I,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let C=Object.keys(r).length!==0;if(C&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let X=r.referrer;if(X==="")a.referrer="no-referrer";else{let ae;try{ae=new URL(X,l)}catch(ne){throw new TypeError(`Referrer "${X}" is not a valid URL.`,{cause:ne})}ae.protocol==="about:"&&ae.hostname==="client"||f&&!v$n(ae,$ht.settingsObject.baseUrl)?a.referrer="client":a.referrer=ae}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let b;if(r.mode!==void 0?b=r.mode:b=o,b==="navigate")throw vf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(b!=null&&(a.mode=b),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let X=r.method,ae=uIa[X];if(ae!==void 0)a.method=ae;else{if(!eIa(X))throw new TypeError(`'${X}' is not a valid HTTP method.`);let ne=X.toUpperCase();if(tIa.has(ne))throw new TypeError(`'${X}' HTTP method is unsupported.`);X=lIa[ne]??X,a.method=X}!N$n&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),N$n=!0)}r.signal!==void 0&&(A=r.signal),this[O1]=a;let E=new AbortController;if(this[tmt]=E.signal,A!=null){if(!A||typeof A.aborted!="boolean"||typeof A.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(A.aborted)E.abort(A.reason);else{this[pIa]=E;let X=new WeakRef(E),ae=R$n(X);try{(typeof B$n=="function"&&B$n(A)===T$n||dIa(A,"abort").length>=T$n)&&w$n(1500,A)}catch{}emt.addAbortListener(A,ae),x$n.register(E,{signal:A,abort:ae},ae)}}if(this[rO]=new D$n(nmt),k$n(this[rO],a.headersList),Dbr(this[rO],"request"),b==="no-cors"){if(!rIa.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);Dbr(this[rO],"request-no-cors")}if(C){let X=E$n(this[rO]),ae=r.headers!==void 0?r.headers:new rmt(X);if(X.clear(),ae instanceof rmt){for(let{name:ne,value:ce}of ae.rawValues())X.append(ne,ce,!1);X.cookies=ae.cookies}else zfa(this[rO],ae)}let N=t instanceof e?t[O1].body:null;if((r.body!=null||N!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let B=null;if(r.body!=null){let[X,ae]=Ufa(r.body,a.keepalive);B=X,ae&&!E$n(this[rO]).contains("content-type",!0)&&this[rO].append("content-type",ae)}let F=B??N;if(F!=null&&F.source==null){if(B!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let Q=F;if(B==null&&N!=null){if(b$n(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let X=new TransformStream;N.stream.pipeThrough(X),Q={source:N.source,length:N.length,stream:X.readable}}this[O1].body=Q}get method(){return vf.brandCheck(this,e),this[O1].method}get url(){return vf.brandCheck(this,e),gIa(this[O1].url)}get headers(){return vf.brandCheck(this,e),this[rO]}get destination(){return vf.brandCheck(this,e),this[O1].destination}get referrer(){return vf.brandCheck(this,e),this[O1].referrer==="no-referrer"?"":this[O1].referrer==="client"?"about:client":this[O1].referrer.toString()}get referrerPolicy(){return vf.brandCheck(this,e),this[O1].referrerPolicy}get mode(){return vf.brandCheck(this,e),this[O1].mode}get credentials(){return this[O1].credentials}get cache(){return vf.brandCheck(this,e),this[O1].cache}get redirect(){return vf.brandCheck(this,e),this[O1].redirect}get integrity(){return vf.brandCheck(this,e),this[O1].integrity}get keepalive(){return vf.brandCheck(this,e),this[O1].keepalive}get isReloadNavigation(){return vf.brandCheck(this,e),this[O1].reloadNavigation}get isHistoryNavigation(){return vf.brandCheck(this,e),this[O1].historyNavigation}get signal(){return vf.brandCheck(this,e),this[tmt]}get body(){return vf.brandCheck(this,e),this[O1].body?this[O1].body.stream:null}get bodyUsed(){return vf.brandCheck(this,e),!!this[O1].body&&emt.isDisturbed(this[O1].body.stream)}get duplex(){return vf.brandCheck(this,e),"half"}clone(){if(vf.brandCheck(this,e),b$n(this))throw new TypeError("unusable");let t=G$n(this[O1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=imt.get(this.signal);n===void 0&&(n=new Set,imt.set(this.signal,n));let a=new WeakRef(r);n.add(a),emt.addAbortListener(r.signal,R$n(a))}return F$n(t,r.signal,qfa(this[rO]))}[S$n.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${S$n.formatWithOptions(r,n)}`}};Kfa(dae);function smt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new rmt(e.headersList):new rmt}}function G$n(e){let t=smt({...e,body:null});return e.body!=null&&(t.body=jfa(t,e.body)),t}function F$n(e,t,r){let n=new dae(nmt);return n[O1]=e,n[tmt]=t,n[rO]=new D$n(nmt),k$n(n[rO],e.headersList),Dbr(n[rO],r),n}Object.defineProperties(dae.prototype,{method:cT,url:cT,headers:cT,redirect:cT,clone:cT,signal:cT,duplex:cT,destination:cT,body:cT,bodyUsed:cT,isHistoryNavigation:cT,isReloadNavigation:cT,keepalive:cT,integrity:cT,cache:cT,credentials:cT,attribute:cT,referrerPolicy:cT,referrer:cT,mode:cT,[Symbol.toStringTag]:{value:"Request",configurable:!0}});vf.converters.Request=vf.interfaceConverter(dae);vf.converters.RequestInfo=function(e,t,r){return typeof e=="string"?vf.converters.USVString(e,t,r):e instanceof dae?vf.converters.Request(e,t,r):vf.converters.USVString(e,t,r)};vf.converters.AbortSignal=vf.interfaceConverter(AbortSignal);vf.converters.RequestInit=vf.dictionaryConverter([{key:"method",converter:vf.converters.ByteString},{key:"headers",converter:vf.converters.HeadersInit},{key:"body",converter:vf.nullableConverter(vf.converters.BodyInit)},{key:"referrer",converter:vf.converters.USVString},{key:"referrerPolicy",converter:vf.converters.DOMString,allowedValues:nIa},{key:"mode",converter:vf.converters.DOMString,allowedValues:sIa},{key:"credentials",converter:vf.converters.DOMString,allowedValues:oIa},{key:"cache",converter:vf.converters.DOMString,allowedValues:aIa},{key:"redirect",converter:vf.converters.DOMString,allowedValues:iIa},{key:"integrity",converter:vf.converters.DOMString},{key:"keepalive",converter:vf.converters.boolean},{key:"signal",converter:vf.nullableConverter(e=>vf.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:vf.converters.any},{key:"duplex",converter:vf.converters.DOMString,allowedValues:cIa},{key:"dispatcher",converter:vf.converters.any}]);Z$n.exports={Request:dae,makeRequest:smt,fromInnerRequest:F$n,cloneRequest:G$n}});var OYe=H((dau,z$n)=>{"use strict";var{makeNetworkError:_y,makeAppropriateNetworkError:omt,filterResponse:kbr,makeResponse:amt,fromInnerResponse:fIa}=PYe(),{HeadersList:L$n}=fhe(),{Request:IIa,cloneRequest:hIa}=Mwe(),pae=wt("node:zlib"),{bytesMatch:mIa,makePolicyContainer:CIa,clonePolicyContainer:_Ia,requestBadPort:yIa,TAOCheck:bIa,appendRequestOriginHeader:EIa,responseLocationURL:SIa,requestCurrentURL:L8,setRequestReferrerPolicyOnRedirect:vIa,tryUpgradeRequestToAPotentiallyTrustworthyURL:BIa,createOpaqueTimingInfo:Lbr,appendFetchMetadata:wIa,corsCheck:TIa,crossOriginResourcePolicyCheck:RIa,determineRequestsReferrer:NIa,coarsenedSharedCurrentTime:WYe,createDeferredPromise:DIa,isBlobLike:kIa,sameOrigin:Zbr,isCancelled:hhe,isAborted:V$n,isErrorLike:xIa,fullyReadBody:GIa,readableStreamClose:FIa,isomorphicEncode:cmt,urlIsLocal:ZIa,urlIsHttpHttpsScheme:Vbr,urlHasHttpsScheme:LIa,clampAndCoarsenConnectionTimingInfo:VIa,simpleRangeHeaderValue:PIa,buildContentRange:WIa,createInflate:OIa,extractMimeType:MIa}=qW(),{kState:M$n,kDispatcher:HIa}=nae(),mhe=wt("node:assert"),{safelyExtractBody:Pbr,extractBody:P$n}=AYe(),{redirectStatusSet:H$n,nullBodyStatus:Y$n,safeMethodsSet:YIa,requestBodyHeader:QIa,subresourceSet:XIa}=iYe(),JIa=wt("node:events"),{Readable:UIa,pipeline:KIa,finished:jIa}=wt("node:stream"),{addAbortListener:zIa,isErrored:qIa,isReadable:lmt,bufferToLowerCasedHeaderName:W$n}=Em(),{dataURLProcessor:$Ia,serializeAMimeType:eha,minimizeSupportedMimeType:tha}=eV(),{getGlobalDispatcher:rha}=Jht(),{webidl:nha}=kk(),{STATUS_CODES:iha}=wt("node:http"),sha=["GET","HEAD"],oha=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",xbr,umt=class extends JIa{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function aha(e){Q$n(e,"fetch")}function cha(e,t=void 0){nha.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=DIa(),n;try{n=new IIa(e,t)}catch(C){return r.reject(C),r.promise}let a=n[M$n];if(n.signal.aborted)return Gbr(r,a,null,n.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let l=null,A=!1,f=null;return zIa(n.signal,()=>{A=!0,mhe(f!=null),f.abort(n.signal.reason);let C=l?.deref();Gbr(r,a,C,n.signal.reason)}),f=J$n({request:a,processResponseEndOfBody:aha,processResponse:C=>{if(!A){if(C.aborted){Gbr(r,a,l,f.serializedAbortReason);return}if(C.type==="error"){r.reject(new TypeError("fetch failed",{cause:C.error}));return}l=new WeakRef(fIa(C,"immutable")),r.resolve(l.deref()),r=null}},dispatcher:n[HIa]}),r.promise}function Q$n(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],n=e.timingInfo,a=e.cacheState;Vbr(r)&&n!==null&&(e.timingAllowPassed||(n=Lbr({startTime:n.startTime}),a=""),n.endTime=WYe(),e.timingInfo=n,X$n(n,r.href,t,globalThis,a))}var X$n=performance.markResourceTiming;function Gbr(e,t,r,n){if(e&&e.reject(n),t.body!=null&&lmt(t.body?.stream)&&t.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[M$n];a.body!=null&&lmt(a.body?.stream)&&a.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function J$n({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:l=!1,dispatcher:A=rha()}){mhe(A);let f=null,I=!1;e.client!=null&&(f=e.client.globalObject,I=e.client.crossOriginIsolatedCapability);let C=WYe(I),b=Lbr({startTime:C}),E={controller:new umt(A),request:e,timingInfo:b,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:I};return mhe(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=_Ia(e.client.policyContainer):e.policyContainer=CIa()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,XIa.has(e.destination),U$n(E).catch(N=>{E.controller.terminate(N)}),E.controller}async function U$n(e,t=!1){let r=e.request,n=null;if(r.localURLsOnly&&!ZIa(L8(r))&&(n=_y("local URLs only")),BIa(r),yIa(r)==="blocked"&&(n=_y("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=NIa(r)),n===null&&(n=await(async()=>{let o=L8(r);return Zbr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await O$n(e)):r.mode==="same-origin"?_y('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?_y('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await O$n(e)):Vbr(L8(r))?(r.responseTainting="cors",await K$n(e)):_y("URL scheme must be a HTTP(S) scheme")})()),t)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=kbr(n,"basic"):r.responseTainting==="cors"?n=kbr(n,"cors"):r.responseTainting==="opaque"?n=kbr(n,"opaque"):mhe(!1));let a=n.status===0?n:n.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(n=a=_y()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||Y$n.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=A=>Fbr(e,_y(A));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let l=A=>{if(!mIa(A,r.integrity)){o("integrity mismatch");return}n.body=Pbr(A)[0],Fbr(e,n)};await GIa(n.body,l,o)}else Fbr(e,n)}function O$n(e){if(hhe(e)&&e.request.redirectCount===0)return Promise.resolve(omt(e));let{request:t}=e,{protocol:r}=L8(t);switch(r){case"about:":return Promise.resolve(_y("about scheme is not supported"));case"blob:":{xbr||(xbr=wt("node:buffer").resolveObjectURL);let n=L8(t);if(n.search.length!==0)return Promise.resolve(_y("NetworkError when attempting to fetch resource."));let a=xbr(n.toString());if(t.method!=="GET"||!kIa(a))return Promise.resolve(_y("invalid method"));let o=amt(),l=a.size,A=cmt(`${l}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let I=t.headersList.get("range",!0),C=PIa(I,!0);if(C==="failure")return Promise.resolve(_y("failed to fetch the data URL"));let{rangeStartValue:b,rangeEndValue:E}=C;if(b===null)b=l-E,E=b+E-1;else{if(b>=l)return Promise.resolve(_y("Range start is greater than the blob's size."));(E===null||E>=l)&&(E=l-1)}let N=a.slice(b,E,f),B=P$n(N);o.body=B[0];let F=cmt(`${N.size}`),Q=WIa(b,E,l);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",F,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",Q,!0)}else{let I=P$n(a);o.statusText="OK",o.body=I[0],o.headersList.set("content-length",A,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let n=L8(t),a=$Ia(n);if(a==="failure")return Promise.resolve(_y("failed to fetch the data URL"));let o=eha(a.mimeType);return Promise.resolve(amt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:Pbr(a.body)[0]}))}case"file:":return Promise.resolve(_y("not implemented... yet..."));case"http:":case"https:":return K$n(e).catch(n=>_y(n));default:return Promise.resolve(_y("unknown scheme"))}}function lha(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Fbr(e,t){let r=e.timingInfo,n=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let A=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=Lbr(r),A="");let I=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){I=t.status;let C=MIa(t.headersList);C!=="failure"&&(f.contentType=tha(C))}e.request.initiatorType!=null&&X$n(r,e.request.url.href,e.request.initiatorType,globalThis,A,f,I)};let l=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>l())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?n():jIa(a.body.stream,()=>{n()})}async function K$n(e){let t=e.request,r=null,n=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),n=r=await j$n(e),t.responseTainting==="cors"&&TIa(t,r)==="failure")return _y("cors failure");bIa(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&RIa(t.origin,t.client,t.destination,n)==="blocked"?_y("blocked"):(H$n.has(n.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=_y("unexpected redirect"):t.redirect==="manual"?r=n:t.redirect==="follow"?r=await uha(e,r):mhe(!1)),r.timingInfo=a,r)}function uha(e,t){let r=e.request,n=t.internalResponse?t.internalResponse:t,a;try{if(a=SIa(n,L8(r).hash),a==null)return t}catch(l){return Promise.resolve(_y(l))}if(!Vbr(a))return Promise.resolve(_y("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(_y("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!Zbr(r,a))return Promise.resolve(_y('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(_y('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(_y());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!sha.includes(r.method)){r.method="GET",r.body=null;for(let l of QIa)r.headersList.delete(l)}Zbr(L8(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(mhe(r.body.source!=null),r.body=Pbr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=WYe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),vIa(r,n),U$n(e,!0)}async function j$n(e,t=!1,r=!1){let n=e.request,a=null,o=null,l=null,A=null,f=!1;n.window==="no-window"&&n.redirect==="error"?(a=e,o=n):(o=hIa(n),a={...e},a.request=o);let I=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",C=o.body?o.body.length:null,b=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(b="0"),C!=null&&(b=cmt(`${C}`)),b!=null&&o.headersList.append("content-length",b,!0),C!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",cmt(o.referrer.href),!0),EIa(o),wIa(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",oha),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(LIa(L8(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),A==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,l==null){if(o.cache==="only-if-cached")return _y("only if cached");let E=await gha(a,I,r);!YIa.has(o.method)&&E.status>=200&&E.status<=399,f&&E.status,l==null&&(l=E)}if(l.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(l.rangeRequested=!0),l.requestIncludesCredentials=I,l.status===407)return n.window==="no-window"?_y():hhe(e)?omt(e):_y("proxy authentication required");if(l.status===421&&!r&&(n.body==null||n.body.source!=null)){if(hhe(e))return omt(e);e.controller.connection.destroy(),l=await j$n(e,t,!0)}return l}async function gha(e,t=!1,r=!1){mhe(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(B,F=!0){this.destroyed||(this.destroyed=!0,F&&this.abort?.(B??new DOMException("The operation was aborted.","AbortError")))}};let n=e.request,a=null,o=e.timingInfo;null==null&&(n.cache="no-store");let A=r?"yes":"no";n.mode;let f=null;if(n.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(n.body!=null){let B=async function*(X){hhe(e)||(yield X,e.processRequestBodyChunkLength?.(X.byteLength))},F=()=>{hhe(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},Q=X=>{hhe(e)||(X.name==="AbortError"?e.controller.abort():e.controller.terminate(X))};f=async function*(){try{for await(let X of n.body.stream)yield*B(X);F()}catch(X){Q(X)}}()}try{let{body:B,status:F,statusText:Q,headersList:X,socket:ae}=await N({body:f});if(ae)a=amt({status:F,statusText:Q,headersList:X,socket:ae});else{let ne=B[Symbol.asyncIterator]();e.controller.next=()=>ne.next(),a=amt({status:F,statusText:Q,headersList:X})}}catch(B){return B.name==="AbortError"?(e.controller.connection.destroy(),omt(e,B)):_y(B)}let I=async()=>{await e.controller.resume()},C=B=>{hhe(e)||e.controller.abort(B)},b=new ReadableStream({async start(B){e.controller.controller=B},async pull(B){await I(B)},async cancel(B){await C(B)},type:"bytes"});a.body={stream:b,source:null,length:null},e.controller.onAborted=E,e.controller.on("terminated",E),e.controller.resume=async()=>{for(;;){let B,F;try{let{done:X,value:ae}=await e.controller.next();if(V$n(e))break;B=X?void 0:ae}catch(X){e.controller.ended&&!o.encodedBodySize?B=void 0:(B=X,F=!0)}if(B===void 0){FIa(e.controller.controller),lha(e,a);return}if(o.decodedBodySize+=B?.byteLength??0,F){e.controller.terminate(B);return}let Q=new Uint8Array(B);if(Q.byteLength&&e.controller.controller.enqueue(Q),qIa(b)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function E(B){V$n(e)?(a.aborted=!0,lmt(b)&&e.controller.controller.error(e.controller.serializedAbortReason)):lmt(b)&&e.controller.controller.error(new TypeError("terminated",{cause:xIa(B)?B:void 0})),e.controller.connection.destroy()}return a;function N({body:B}){let F=L8(n),Q=e.controller.dispatcher;return new Promise((X,ae)=>Q.dispatch({path:F.pathname+F.search,origin:F.origin,method:n.method,body:Q.isMockActive?n.body&&(n.body.source||n.body.stream):B,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ne){let{connection:ce}=e.controller;o.finalConnectionTimingInfo=VIa(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ce.destroyed?ne(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ne),this.abort=ce.abort=ne),o.finalNetworkRequestStartTime=WYe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=WYe(e.crossOriginIsolatedCapability)},onHeaders(ne,ce,fe,ue){if(ne<200)return;let de=[],be="",Se=new L$n;for(let Me=0;MeMe.trim())),be=Se.get("location",!0),this.body=new UIa({read:fe});let k=[],et=be&&n.redirect==="follow"&&H$n.has(ne);if(de.length!==0&&n.method!=="HEAD"&&n.method!=="CONNECT"&&!Y$n.includes(ne)&&!et)for(let Me=0;Me{Me&&this.onError(Me)}).on("error",ct):this.body.on("error",ct)}),!0},onData(ne){if(e.controller.dump)return;let ce=ne;return o.encodedBodySize+=ce.byteLength,this.body.push(ce)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ne){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ne),e.controller.terminate(ne),ae(ne)},onUpgrade(ne,ce,fe){if(ne!==101)return;let ue=new L$n;for(let de=0;de{"use strict";q$n.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var eei=H((fau,$$n)=>{"use strict";var{webidl:nO}=kk(),gmt=Symbol("ProgressEvent state"),Obr=class e extends Event{constructor(t,r={}){t=nO.converters.DOMString(t,"ProgressEvent constructor","type"),r=nO.converters.ProgressEventInit(r??{}),super(t,r),this[gmt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return nO.brandCheck(this,e),this[gmt].lengthComputable}get loaded(){return nO.brandCheck(this,e),this[gmt].loaded}get total(){return nO.brandCheck(this,e),this[gmt].total}};nO.converters.ProgressEventInit=nO.dictionaryConverter([{key:"lengthComputable",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:nO.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:nO.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:nO.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:nO.converters.boolean,defaultValue:()=>!1}]);$$n.exports={ProgressEvent:Obr}});var rei=H((Iau,tei)=>{"use strict";function Aha(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}tei.exports={getEncoding:Aha}});var uei=H((hau,lei)=>{"use strict";var{kState:Hwe,kError:Mbr,kResult:nei,kAborted:MYe,kLastProgressEventFired:Hbr}=Wbr(),{ProgressEvent:dha}=eei(),{getEncoding:iei}=rei(),{serializeAMimeType:pha,parseMIMEType:sei}=eV(),{types:fha}=wt("node:util"),{StringDecoder:oei}=wt("string_decoder"),{btoa:aei}=wt("node:buffer"),Iha={enumerable:!0,writable:!1,configurable:!1};function hha(e,t,r,n){if(e[Hwe]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[Hwe]="loading",e[nei]=null,e[Mbr]=null;let o=t.stream().getReader(),l=[],A=o.read(),f=!0;(async()=>{for(;!e[MYe];)try{let{done:I,value:C}=await A;if(f&&!e[MYe]&&queueMicrotask(()=>{fae("loadstart",e)}),f=!1,!I&&fha.isUint8Array(C))l.push(C),(e[Hbr]===void 0||Date.now()-e[Hbr]>=50)&&!e[MYe]&&(e[Hbr]=Date.now(),queueMicrotask(()=>{fae("progress",e)})),A=o.read();else if(I){queueMicrotask(()=>{e[Hwe]="done";try{let b=mha(l,r,t.type,n);if(e[MYe])return;e[nei]=b,fae("load",e)}catch(b){e[Mbr]=b,fae("error",e)}e[Hwe]!=="loading"&&fae("loadend",e)});break}}catch(I){if(e[MYe])return;queueMicrotask(()=>{e[Hwe]="done",e[Mbr]=I,fae("error",e),e[Hwe]!=="loading"&&fae("loadend",e)});break}})()}function fae(e,t){let r=new dha(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function mha(e,t,r,n){switch(t){case"DataURL":{let a="data:",o=sei(r||"application/octet-stream");o!=="failure"&&(a+=pha(o)),a+=";base64,";let l=new oei("latin1");for(let A of e)a+=aei(l.write(A));return a+=aei(l.end()),a}case"Text":{let a="failure";if(n&&(a=iei(n)),a==="failure"&&r){let o=sei(r);o!=="failure"&&(a=iei(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),Cha(e,a)}case"ArrayBuffer":return cei(e).buffer;case"BinaryString":{let a="",o=new oei("latin1");for(let l of e)a+=o.write(l);return a+=o.end(),a}}}function Cha(e,t){let r=cei(e),n=_ha(r),a=0;n!==null&&(t=n,a=n==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function _ha(e){let[t,r,n]=e;return t===239&&r===187&&n===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function cei(e){let t=e.reduce((n,a)=>n+a.byteLength,0),r=0;return e.reduce((n,a)=>(n.set(a,r),r+=a.byteLength,n),new Uint8Array(t))}lei.exports={staticPropertyDescriptors:Iha,readOperation:hha,fireAProgressEvent:fae}});var pei=H((mau,dei)=>{"use strict";var{staticPropertyDescriptors:Ywe,readOperation:Amt,fireAProgressEvent:gei}=uei(),{kState:Che,kError:Aei,kResult:dmt,kEvents:h0,kAborted:yha}=Wbr(),{webidl:ib}=kk(),{kEnumerableProperty:nV}=Em(),PX=class e extends EventTarget{constructor(){super(),this[Che]="empty",this[dmt]=null,this[Aei]=null,this[h0]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=ib.converters.Blob(t,{strict:!1}),Amt(this,t,"ArrayBuffer")}readAsBinaryString(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=ib.converters.Blob(t,{strict:!1}),Amt(this,t,"BinaryString")}readAsText(t,r=void 0){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=ib.converters.Blob(t,{strict:!1}),r!==void 0&&(r=ib.converters.DOMString(r,"FileReader.readAsText","encoding")),Amt(this,t,"Text",r)}readAsDataURL(t){ib.brandCheck(this,e),ib.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=ib.converters.Blob(t,{strict:!1}),Amt(this,t,"DataURL")}abort(){if(this[Che]==="empty"||this[Che]==="done"){this[dmt]=null;return}this[Che]==="loading"&&(this[Che]="done",this[dmt]=null),this[yha]=!0,gei("abort",this),this[Che]!=="loading"&&gei("loadend",this)}get readyState(){switch(ib.brandCheck(this,e),this[Che]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return ib.brandCheck(this,e),this[dmt]}get error(){return ib.brandCheck(this,e),this[Aei]}get onloadend(){return ib.brandCheck(this,e),this[h0].loadend}set onloadend(t){ib.brandCheck(this,e),this[h0].loadend&&this.removeEventListener("loadend",this[h0].loadend),typeof t=="function"?(this[h0].loadend=t,this.addEventListener("loadend",t)):this[h0].loadend=null}get onerror(){return ib.brandCheck(this,e),this[h0].error}set onerror(t){ib.brandCheck(this,e),this[h0].error&&this.removeEventListener("error",this[h0].error),typeof t=="function"?(this[h0].error=t,this.addEventListener("error",t)):this[h0].error=null}get onloadstart(){return ib.brandCheck(this,e),this[h0].loadstart}set onloadstart(t){ib.brandCheck(this,e),this[h0].loadstart&&this.removeEventListener("loadstart",this[h0].loadstart),typeof t=="function"?(this[h0].loadstart=t,this.addEventListener("loadstart",t)):this[h0].loadstart=null}get onprogress(){return ib.brandCheck(this,e),this[h0].progress}set onprogress(t){ib.brandCheck(this,e),this[h0].progress&&this.removeEventListener("progress",this[h0].progress),typeof t=="function"?(this[h0].progress=t,this.addEventListener("progress",t)):this[h0].progress=null}get onload(){return ib.brandCheck(this,e),this[h0].load}set onload(t){ib.brandCheck(this,e),this[h0].load&&this.removeEventListener("load",this[h0].load),typeof t=="function"?(this[h0].load=t,this.addEventListener("load",t)):this[h0].load=null}get onabort(){return ib.brandCheck(this,e),this[h0].abort}set onabort(t){ib.brandCheck(this,e),this[h0].abort&&this.removeEventListener("abort",this[h0].abort),typeof t=="function"?(this[h0].abort=t,this.addEventListener("abort",t)):this[h0].abort=null}};PX.EMPTY=PX.prototype.EMPTY=0;PX.LOADING=PX.prototype.LOADING=1;PX.DONE=PX.prototype.DONE=2;Object.defineProperties(PX.prototype,{EMPTY:Ywe,LOADING:Ywe,DONE:Ywe,readAsArrayBuffer:nV,readAsBinaryString:nV,readAsText:nV,readAsDataURL:nV,abort:nV,readyState:nV,result:nV,error:nV,onloadstart:nV,onprogress:nV,onload:nV,onabort:nV,onerror:nV,onloadend:nV,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(PX,{EMPTY:Ywe,LOADING:Ywe,DONE:Ywe});dei.exports={FileReader:PX}});var pmt=H((Cau,fei)=>{"use strict";fei.exports={kConstruct:B2().kConstruct}});var mei=H((_au,hei)=>{"use strict";var bha=wt("node:assert"),{URLSerializer:Iei}=eV(),{isValidHeaderName:Eha}=qW();function Sha(e,t,r=!1){let n=Iei(e,r),a=Iei(t,r);return n===a}function vha(e){bha(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),Eha(r)&&t.push(r);return t}hei.exports={urlEquals:Sha,getFieldValues:vha}});var yei=H((yau,_ei)=>{"use strict";var{kConstruct:Bha}=pmt(),{urlEquals:wha,getFieldValues:Ybr}=mei(),{kEnumerableProperty:_he,isDisturbed:Tha}=Em(),{webidl:Bp}=kk(),{Response:Rha,cloneResponse:Nha,fromInnerResponse:Dha}=PYe(),{Request:J$,fromInnerRequest:kha}=Mwe(),{kState:WX}=nae(),{fetching:xha}=OYe(),{urlIsHttpHttpsScheme:fmt,createDeferredPromise:Qwe,readAllBytes:Gha}=qW(),Qbr=wt("node:assert"),Imt=class e{#e;constructor(){arguments[0]!==Bha&&Bp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Bp.brandCheck(this,e);let n="Cache.match";Bp.argumentLengthCheck(arguments,1,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){Bp.brandCheck(this,e);let n="Cache.matchAll";return t!==void 0&&(t=Bp.converters.RequestInfo(t,n,"request")),r=Bp.converters.CacheQueryOptions(r,n,"options"),this.#i(t,r)}async add(t){Bp.brandCheck(this,e);let r="Cache.add";Bp.argumentLengthCheck(arguments,1,r),t=Bp.converters.RequestInfo(t,r,"request");let n=[t];return await this.addAll(n)}async addAll(t){Bp.brandCheck(this,e);let r="Cache.addAll";Bp.argumentLengthCheck(arguments,1,r);let n=[],a=[];for(let E of t){if(E===void 0)throw Bp.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(E=Bp.converters.RequestInfo(E),typeof E=="string")continue;let N=E[WX];if(!fmt(N.url)||N.method!=="GET")throw Bp.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let E of t){let N=new J$(E)[WX];if(!fmt(N.url))throw Bp.errors.exception({header:r,message:"Expected http/s scheme."});N.initiator="fetch",N.destination="subresource",a.push(N);let B=Qwe();o.push(xha({request:N,processResponse(F){if(F.type==="error"||F.status===206||F.status<200||F.status>299)B.reject(Bp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(F.headersList.contains("vary")){let Q=Ybr(F.headersList.get("vary"));for(let X of Q)if(X==="*"){B.reject(Bp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let ae of o)ae.abort();return}}},processResponseEndOfBody(F){if(F.aborted){B.reject(new DOMException("aborted","AbortError"));return}B.resolve(F)}})),n.push(B.promise)}let A=await Promise.all(n),f=[],I=0;for(let E of A){let N={type:"put",request:a[I],response:E};f.push(N),I++}let C=Qwe(),b=null;try{this.#t(f)}catch(E){b=E}return queueMicrotask(()=>{b===null?C.resolve(void 0):C.reject(b)}),C.promise}async put(t,r){Bp.brandCheck(this,e);let n="Cache.put";Bp.argumentLengthCheck(arguments,2,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.Response(r,n,"response");let a=null;if(t instanceof J$?a=t[WX]:a=new J$(t)[WX],!fmt(a.url)||a.method!=="GET")throw Bp.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[WX];if(o.status===206)throw Bp.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let N=Ybr(o.headersList.get("vary"));for(let B of N)if(B==="*")throw Bp.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(Tha(o.body.stream)||o.body.stream.locked))throw Bp.errors.exception({header:n,message:"Response body is locked or disturbed"});let l=Nha(o),A=Qwe();if(o.body!=null){let B=o.body.stream.getReader();Gha(B).then(A.resolve,A.reject)}else A.resolve(void 0);let f=[],I={type:"put",request:a,response:l};f.push(I);let C=await A.promise;l.body!=null&&(l.body.source=C);let b=Qwe(),E=null;try{this.#t(f)}catch(N){E=N}return queueMicrotask(()=>{E===null?b.resolve():b.reject(E)}),b.promise}async delete(t,r={}){Bp.brandCheck(this,e);let n="Cache.delete";Bp.argumentLengthCheck(arguments,1,n),t=Bp.converters.RequestInfo(t,n,"request"),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return!1}else Qbr(typeof t=="string"),a=new J$(t)[WX];let o=[],l={type:"delete",request:a,options:r};o.push(l);let A=Qwe(),f=null,I;try{I=this.#t(o)}catch(C){f=C}return queueMicrotask(()=>{f===null?A.resolve(!!I?.length):A.reject(f)}),A.promise}async keys(t=void 0,r={}){Bp.brandCheck(this,e);let n="Cache.keys";t!==void 0&&(t=Bp.converters.RequestInfo(t,n,"request")),r=Bp.converters.CacheQueryOptions(r,n,"options");let a=null;if(t!==void 0)if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new J$(t)[WX]);let o=Qwe(),l=[];if(t===void 0)for(let A of this.#e)l.push(A[0]);else{let A=this.#n(a,r);for(let f of A)l.push(f[0])}return queueMicrotask(()=>{let A=[];for(let f of l){let I=kha(f,new AbortController().signal,"immutable");A.push(I)}o.resolve(Object.freeze(A))}),o.promise}#t(t){let r=this.#e,n=[...r],a=[],o=[];try{for(let l of t){if(l.type!=="delete"&&l.type!=="put")throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(l.type==="delete"&&l.response!=null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(l.request,l.options,a).length)throw new DOMException("???","InvalidStateError");let A;if(l.type==="delete"){if(A=this.#n(l.request,l.options),A.length===0)return[];for(let f of A){let I=r.indexOf(f);Qbr(I!==-1),r.splice(I,1)}}else if(l.type==="put"){if(l.response==null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=l.request;if(!fmt(f.url))throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(l.options!=null)throw Bp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});A=this.#n(l.request);for(let I of A){let C=r.indexOf(I);Qbr(C!==-1),r.splice(C,1)}r.push([l.request,l.response]),a.push([l.request,l.response])}o.push([l.request,l.response])}return o}catch(l){throw this.#e.length=0,this.#e=n,l}}#n(t,r,n){let a=[],o=n??this.#e;for(let l of o){let[A,f]=l;this.#r(t,A,f,r)&&a.push(l)}return a}#r(t,r,n=null,a){let o=new URL(t.url),l=new URL(r.url);if(a?.ignoreSearch&&(l.search="",o.search=""),!wha(o,l,!0))return!1;if(n==null||a?.ignoreVary||!n.headersList.contains("vary"))return!0;let A=Ybr(n.headersList.get("vary"));for(let f of A){if(f==="*")return!1;let I=r.headersList.get(f),C=t.headersList.get(f);if(I!==C)return!1}return!0}#i(t,r,n=1/0){let a=null;if(t!==void 0)if(t instanceof J$){if(a=t[WX],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new J$(t)[WX]);let o=[];if(t===void 0)for(let A of this.#e)o.push(A[1]);else{let A=this.#n(a,r);for(let f of A)o.push(f[1])}let l=[];for(let A of o){let f=Dha(A,"immutable");if(l.push(f.clone()),l.length>=n)break}return Object.freeze(l)}};Object.defineProperties(Imt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:_he,matchAll:_he,add:_he,addAll:_he,put:_he,delete:_he,keys:_he});var Cei=[{key:"ignoreSearch",converter:Bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Bp.converters.boolean,defaultValue:()=>!1}];Bp.converters.CacheQueryOptions=Bp.dictionaryConverter(Cei);Bp.converters.MultiCacheQueryOptions=Bp.dictionaryConverter([...Cei,{key:"cacheName",converter:Bp.converters.DOMString}]);Bp.converters.Response=Bp.interfaceConverter(Rha);Bp.converters["sequence"]=Bp.sequenceConverter(Bp.converters.RequestInfo);_ei.exports={Cache:Imt}});var Eei=H((bau,bei)=>{"use strict";var{kConstruct:HYe}=pmt(),{Cache:hmt}=yei(),{webidl:MZ}=kk(),{kEnumerableProperty:YYe}=Em(),mmt=class e{#e=new Map;constructor(){arguments[0]!==HYe&&MZ.illegalConstructor()}async match(t,r={}){if(MZ.brandCheck(this,e),MZ.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=MZ.converters.RequestInfo(t),r=MZ.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new hmt(HYe,n).match(t,r)}}else for(let n of this.#e.values()){let o=await new hmt(HYe,n).match(t,r);if(o!==void 0)return o}}async has(t){MZ.brandCheck(this,e);let r="CacheStorage.has";return MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){MZ.brandCheck(this,e);let r="CacheStorage.open";if(MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new hmt(HYe,a)}let n=[];return this.#e.set(t,n),new hmt(HYe,n)}async delete(t){MZ.brandCheck(this,e);let r="CacheStorage.delete";return MZ.argumentLengthCheck(arguments,1,r),t=MZ.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return MZ.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(mmt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:YYe,has:YYe,open:YYe,delete:YYe,keys:YYe});bei.exports={CacheStorage:mmt}});var vei=H((Eau,Sei)=>{"use strict";Sei.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Xbr=H((Sau,Nei)=>{"use strict";function Fha(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function Bei(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function wei(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}function Tei(e){for(let t=0;tt.toString().padStart(2,"0"));function Rei(e){return typeof e=="number"&&(e=new Date(e)),`${Lha[e.getUTCDay()]}, ${Cmt[e.getUTCDate()]} ${Vha[e.getUTCMonth()]} ${e.getUTCFullYear()} ${Cmt[e.getUTCHours()]}:${Cmt[e.getUTCMinutes()]}:${Cmt[e.getUTCSeconds()]} GMT`}function Pha(e){if(e<0)throw new Error("Invalid cookie max-age")}function Wha(e){if(e.name.length===0)return null;Bei(e.name),wei(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(Pha(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Zha(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(Tei(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${Rei(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...a]=r.split("=");t.push(`${n.trim()}=${a.join("=")}`)}return t.join("; ")}Nei.exports={isCTLExcludingHtab:Fha,validateCookieName:Bei,validateCookiePath:Tei,validateCookieValue:wei,toIMFDate:Rei,stringify:Wha}});var kei=H((vau,Dei)=>{"use strict";var{maxNameValuePairSize:Oha,maxAttributeValueSize:Mha}=vei(),{isCTLExcludingHtab:Hha}=Xbr(),{collectASequenceOfCodePointsFast:_mt}=eV(),Yha=wt("node:assert");function Qha(e){if(Hha(e))return null;let t="",r="",n="",a="";if(e.includes(";")){let o={position:0};t=_mt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};n=_mt("=",t,o),a=t.slice(o.position+1)}return n=n.trim(),a=a.trim(),n.length+a.length>Oha?null:{name:n,value:a,...Xwe(r)}}function Xwe(e,t={}){if(e.length===0)return t;Yha(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=_mt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let n="",a="";if(r.includes("=")){let l={position:0};n=_mt("=",r,l),a=r.slice(l.position+1)}else n=r;if(n=n.trim(),a=a.trim(),a.length>Mha)return Xwe(e,t);let o=n.toLowerCase();if(o==="expires"){let l=new Date(a);t.expires=l}else if(o==="max-age"){let l=a.charCodeAt(0);if((l<48||l>57)&&a[0]!=="-"||!/^\d+$/.test(a))return Xwe(e,t);let A=Number(a);t.maxAge=A}else if(o==="domain"){let l=a;l[0]==="."&&(l=l.slice(1)),l=l.toLowerCase(),t.domain=l}else if(o==="path"){let l="";a.length===0||a[0]!=="/"?l="/":l=a,t.path=l}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let l="Default",A=a.toLowerCase();A.includes("none")&&(l="None"),A.includes("strict")&&(l="Strict"),A.includes("lax")&&(l="Lax"),t.sameSite=l}else t.unparsed??=[],t.unparsed.push(`${n}=${a}`);return Xwe(e,t)}Dei.exports={parseSetCookie:Qha,parseUnparsedAttributes:Xwe}});var Fei=H((Bau,Gei)=>{"use strict";var{parseSetCookie:Xha}=kei(),{stringify:Jha}=Xbr(),{webidl:nC}=kk(),{Headers:ymt}=fhe();function Uha(e){nC.argumentLengthCheck(arguments,1,"getCookies"),nC.brandCheck(e,ymt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let n of t.split(";")){let[a,...o]=n.split("=");r[a.trim()]=o.join("=")}return r}function Kha(e,t,r){nC.brandCheck(e,ymt,{strict:!1});let n="deleteCookie";nC.argumentLengthCheck(arguments,2,n),t=nC.converters.DOMString(t,n,"name"),r=nC.converters.DeleteCookieAttributes(r),xei(e,{name:t,value:"",expires:new Date(0),...r})}function jha(e){nC.argumentLengthCheck(arguments,1,"getSetCookies"),nC.brandCheck(e,ymt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>Xha(r)):[]}function xei(e,t){nC.argumentLengthCheck(arguments,2,"setCookie"),nC.brandCheck(e,ymt,{strict:!1}),t=nC.converters.Cookie(t);let r=Jha(t);r&&e.append("Set-Cookie",r)}nC.converters.DeleteCookieAttributes=nC.dictionaryConverter([{converter:nC.nullableConverter(nC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"domain",defaultValue:()=>null}]);nC.converters.Cookie=nC.dictionaryConverter([{converter:nC.converters.DOMString,key:"name"},{converter:nC.converters.DOMString,key:"value"},{converter:nC.nullableConverter(e=>typeof e=="number"?nC.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.DOMString),key:"path",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.boolean),key:"secure",defaultValue:()=>null},{converter:nC.nullableConverter(nC.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:nC.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:nC.sequenceConverter(nC.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);Gei.exports={getCookies:Uha,deleteCookie:Kha,getSetCookies:jha,setCookie:xei}});var Uwe=H((wau,Lei)=>{"use strict";var{webidl:Wp}=kk(),{kEnumerableProperty:iV}=Em(),{kConstruct:Zei}=B2(),{MessagePort:zha}=wt("node:worker_threads"),Jwe=class e extends Event{#e;constructor(t,r={}){if(t===Zei){super(arguments[1],arguments[2]);return}let n="MessageEvent constructor";Wp.argumentLengthCheck(arguments,1,n),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.MessageEventInit(r,n,"eventInitDict"),super(t,r),this.#e=r}get data(){return Wp.brandCheck(this,e),this.#e.data}get origin(){return Wp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Wp.brandCheck(this,e),this.#e.lastEventId}get source(){return Wp.brandCheck(this,e),this.#e.source}get ports(){return Wp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,n=!1,a=null,o="",l="",A=null,f=[]){return Wp.brandCheck(this,e),Wp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:n,data:a,origin:o,lastEventId:l,source:A,ports:f})}static createFastMessageEvent(t,r){let n=new e(Zei,t,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:qha}=Jwe;delete Jwe.createFastMessageEvent;var bmt=class e extends Event{#e;constructor(t,r={}){let n="CloseEvent constructor";Wp.argumentLengthCheck(arguments,1,n),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Wp.brandCheck(this,e),this.#e.wasClean}get code(){return Wp.brandCheck(this,e),this.#e.code}get reason(){return Wp.brandCheck(this,e),this.#e.reason}},Emt=class e extends Event{#e;constructor(t,r){let n="ErrorEvent constructor";Wp.argumentLengthCheck(arguments,1,n),super(t,r),t=Wp.converters.DOMString(t,n,"type"),r=Wp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Wp.brandCheck(this,e),this.#e.message}get filename(){return Wp.brandCheck(this,e),this.#e.filename}get lineno(){return Wp.brandCheck(this,e),this.#e.lineno}get colno(){return Wp.brandCheck(this,e),this.#e.colno}get error(){return Wp.brandCheck(this,e),this.#e.error}};Object.defineProperties(Jwe.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:iV,origin:iV,lastEventId:iV,source:iV,ports:iV,initMessageEvent:iV});Object.defineProperties(bmt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:iV,code:iV,wasClean:iV});Object.defineProperties(Emt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:iV,filename:iV,lineno:iV,colno:iV,error:iV});Wp.converters.MessagePort=Wp.interfaceConverter(zha);Wp.converters["sequence"]=Wp.sequenceConverter(Wp.converters.MessagePort);var Jbr=[{key:"bubbles",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Wp.converters.boolean,defaultValue:()=>!1}];Wp.converters.MessageEventInit=Wp.dictionaryConverter([...Jbr,{key:"data",converter:Wp.converters.any,defaultValue:()=>null},{key:"origin",converter:Wp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Wp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Wp.nullableConverter(Wp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Wp.converters["sequence"],defaultValue:()=>new Array(0)}]);Wp.converters.CloseEventInit=Wp.dictionaryConverter([...Jbr,{key:"wasClean",converter:Wp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Wp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Wp.converters.USVString,defaultValue:()=>""}]);Wp.converters.ErrorEventInit=Wp.dictionaryConverter([...Jbr,{key:"message",converter:Wp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Wp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Wp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Wp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Wp.converters.any}]);Lei.exports={MessageEvent:Jwe,CloseEvent:bmt,ErrorEvent:Emt,createFastMessageEvent:qha}});var yhe=H((Tau,Vei)=>{"use strict";var $ha="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",ema={enumerable:!0,writable:!1,configurable:!1},tma={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},rma={NOT_SENT:0,PROCESSING:1,SENT:2},nma={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},ima=2**16-1,sma={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},oma=Buffer.allocUnsafe(0),ama={string:1,typedArray:2,arrayBuffer:3,blob:4};Vei.exports={uid:$ha,sentCloseFrameState:rma,staticPropertyDescriptors:ema,states:tma,opcodes:nma,maxUnsigned16Bit:ima,parserStates:sma,emptyBuffer:oma,sendHints:ama}});var QYe=H((Rau,Pei)=>{"use strict";Pei.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var UYe=H((Nau,Uei)=>{"use strict";var{kReadyState:XYe,kController:cma,kResponse:lma,kBinaryType:uma,kWebSocketURL:gma}=QYe(),{states:JYe,opcodes:Iae}=yhe(),{ErrorEvent:Ama,createFastMessageEvent:dma}=Uwe(),{isUtf8:pma}=wt("node:buffer"),{collectASequenceOfCodePointsFast:fma,removeHTTPWhitespace:Wei}=eV();function Ima(e){return e[XYe]===JYe.CONNECTING}function hma(e){return e[XYe]===JYe.OPEN}function mma(e){return e[XYe]===JYe.CLOSING}function Cma(e){return e[XYe]===JYe.CLOSED}function Ubr(e,t,r=(a,o)=>new Event(a,o),n={}){let a=r(e,n);t.dispatchEvent(a)}function _ma(e,t,r){if(e[XYe]!==JYe.OPEN)return;let n;if(t===Iae.TEXT)try{n=Jei(r)}catch{Mei(e,"Received invalid UTF-8 in text frame.");return}else t===Iae.BINARY&&(e[uma]==="blob"?n=new Blob([r]):n=yma(r));Ubr("message",e,dma,{origin:e[gma].origin,data:n})}function yma(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function bma(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function Ema(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function Mei(e,t){let{[cma]:r,[lma]:n}=e;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),t&&Ubr("error",e,(a,o)=>new Ama(a,o),{error:new Error(t),message:t})}function Hei(e){return e===Iae.CLOSE||e===Iae.PING||e===Iae.PONG}function Yei(e){return e===Iae.CONTINUATION}function Qei(e){return e===Iae.TEXT||e===Iae.BINARY}function Sma(e){return Qei(e)||Yei(e)||Hei(e)}function vma(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var Xei=typeof process.versions.icu=="string",Oei=Xei?new TextDecoder("utf-8",{fatal:!0}):void 0,Jei=Xei?Oei.decode.bind(Oei):function(e){if(pma(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};Uei.exports={isConnecting:Ima,isEstablished:hma,isClosing:mma,isClosed:Cma,fireEvent:Ubr,isValidSubprotocol:bma,isValidStatusCode:Ema,failWebsocketConnection:Mei,websocketMessageReceived:_ma,utf8Decode:Jei,isControlFrame:Hei,isContinuationFrame:Yei,isTextBinaryFrame:Qei,isValidOpcode:Sma,parseExtensions:vma,isValidClientWindowBits:Bma}});var vmt=H((Dau,Kei)=>{"use strict";var{maxUnsigned16Bit:wma}=yhe(),Smt=16386,Kbr,KYe=null,Kwe=Smt;try{Kbr=wt("node:crypto")}catch{Kbr={randomFillSync:function(t,r,n){for(let a=0;awma?(l+=8,o=127):a>125&&(l+=2,o=126);let A=Buffer.allocUnsafe(a+l);A[0]=A[1]=0,A[0]|=128,A[0]=(A[0]&240)+t;A[l-4]=n[0],A[l-3]=n[1],A[l-2]=n[2],A[l-1]=n[3],A[1]=o,o===126?A.writeUInt16BE(a,2):o===127&&(A[2]=A[3]=0,A.writeUIntBE(a,4,6)),A[1]|=128;for(let f=0;f{"use strict";var{uid:Rma,states:jYe,sentCloseFrameState:Bmt,emptyBuffer:Nma,opcodes:Dma}=yhe(),{kReadyState:zYe,kSentClose:wmt,kByteParser:zei,kReceivedClose:jei,kResponse:qei}=QYe(),{fireEvent:kma,failWebsocketConnection:hae,isClosing:xma,isClosed:Gma,isEstablished:Fma,parseExtensions:Zma}=UYe(),{channels:jwe}=gwe(),{CloseEvent:Lma}=Uwe(),{makeRequest:Vma}=Mwe(),{fetching:Pma}=OYe(),{Headers:Wma,getHeadersList:Oma}=fhe(),{getDecodeSplit:Mma}=qW(),{WebsocketFrameSend:Hma}=vmt(),zbr;try{zbr=wt("node:crypto")}catch{}function Yma(e,t,r,n,a,o){let l=e;l.protocol=e.protocol==="ws:"?"http:":"https:";let A=Vma({urlList:[l],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let b=Oma(new Wma(o.headers));A.headersList=b}let f=zbr.randomBytes(16).toString("base64");A.headersList.append("sec-websocket-key",f),A.headersList.append("sec-websocket-version","13");for(let b of t)A.headersList.append("sec-websocket-protocol",b);return A.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),Pma({request:A,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(b){if(b.type==="error"||b.status!==101){hae(n,"Received network error or non-101 status code.");return}if(t.length!==0&&!b.headersList.get("Sec-WebSocket-Protocol")){hae(n,"Server did not respond with sent protocols.");return}if(b.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){hae(n,'Server did not set Upgrade header to "websocket".');return}if(b.headersList.get("Connection")?.toLowerCase()!=="upgrade"){hae(n,'Server did not set Connection header to "upgrade".');return}let E=b.headersList.get("Sec-WebSocket-Accept"),N=zbr.createHash("sha1").update(f+Rma).digest("base64");if(E!==N){hae(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let B=b.headersList.get("Sec-WebSocket-Extensions"),F;if(B!==null&&(F=Zma(B),!F.has("permessage-deflate"))){hae(n,"Sec-WebSocket-Extensions header does not match.");return}let Q=b.headersList.get("Sec-WebSocket-Protocol");if(Q!==null&&!Mma("sec-websocket-protocol",A.headersList).includes(Q)){hae(n,"Protocol was not set in the opening handshake.");return}b.socket.on("data",$ei),b.socket.on("close",eti),b.socket.on("error",tti),jwe.open.hasSubscribers&&jwe.open.publish({address:b.socket.address(),protocol:Q,extensions:B}),a(b,F)}})}function Qma(e,t,r,n){if(!(xma(e)||Gma(e)))if(!Fma(e))hae(e,"Connection was closed before it was established."),e[zYe]=jYe.CLOSING;else if(e[wmt]===Bmt.NOT_SENT){e[wmt]=Bmt.PROCESSING;let a=new Hma;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+n),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=Nma,e[qei].socket.write(a.createFrame(Dma.CLOSE)),e[wmt]=Bmt.SENT,e[zYe]=jYe.CLOSING}else e[zYe]=jYe.CLOSING}function $ei(e){this.ws[zei].write(e)||this.pause()}function eti(){let{ws:e}=this,{[qei]:t}=e;t.socket.off("data",$ei),t.socket.off("close",eti),t.socket.off("error",tti);let r=e[wmt]===Bmt.SENT&&e[jei],n=1005,a="",o=e[zei].closingInfo;o&&!o.error?(n=o.code??1005,a=o.reason):e[jei]||(n=1006),e[zYe]=jYe.CLOSED,kma("close",e,(l,A)=>new Lma(l,A),{wasClean:r,code:n,reason:a}),jwe.close.hasSubscribers&&jwe.close.publish({websocket:e,code:n,reason:a})}function tti(e){let{ws:t}=this;t[zYe]=jYe.CLOSING,jwe.socketError.hasSubscribers&&jwe.socketError.publish(e),this.destroy()}rti.exports={establishWebSocketConnection:Yma,closeWebSocketConnection:Qma}});var iti=H((xau,nti)=>{"use strict";var{createInflateRaw:Xma,Z_DEFAULT_WINDOWBITS:Jma}=wt("node:zlib"),{isValidClientWindowBits:Uma}=UYe(),Kma=Buffer.from([0,0,255,255]),Tmt=Symbol("kBuffer"),Rmt=Symbol("kLength"),$br=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,n){if(!this.#e){let a=Jma;if(this.#t.serverMaxWindowBits){if(!Uma(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=Xma({windowBits:a}),this.#e[Tmt]=[],this.#e[Rmt]=0,this.#e.on("data",o=>{this.#e[Tmt].push(o),this.#e[Rmt]+=o.length}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#e.write(t),r&&this.#e.write(Kma),this.#e.flush(()=>{let a=Buffer.concat(this.#e[Tmt],this.#e[Rmt]);this.#e[Tmt].length=0,this.#e[Rmt]=0,n(null,a)})}};nti.exports={PerMessageDeflate:$br}});var fti=H((Gau,pti)=>{"use strict";var{Writable:jma}=wt("node:stream"),zma=wt("node:assert"),{parserStates:sV,opcodes:zwe,states:qma,emptyBuffer:sti,sentCloseFrameState:oti}=yhe(),{kReadyState:$ma,kSentClose:ati,kResponse:cti,kReceivedClose:lti}=QYe(),{channels:Nmt}=gwe(),{isValidStatusCode:eCa,isValidOpcode:tCa,failWebsocketConnection:LM,websocketMessageReceived:uti,utf8Decode:rCa,isControlFrame:gti,isTextBinaryFrame:eEr,isContinuationFrame:nCa}=UYe(),{WebsocketFrameSend:Ati}=vmt(),{closeWebSocketConnection:dti}=qbr(),{PerMessageDeflate:iCa}=iti(),tEr=class extends jma{#e=[];#t=0;#n=!1;#r=sV.INFO;#i={};#s=[];#o;constructor(t,r){super(),this.ws=t,this.#o=r??new Map,this.#o.has("permessage-deflate")&&this.#o.set("permessage-deflate",new iCa(r))}_write(t,r,n){this.#e.push(t),this.#t+=t.length,this.#n=!0,this.run(n)}run(t){for(;this.#n;)if(this.#r===sV.INFO){if(this.#t<2)return t();let r=this.consume(2),n=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,l=!n&&a!==zwe.CONTINUATION,A=r[1]&127,f=r[0]&64,I=r[0]&32,C=r[0]&16;if(!tCa(a))return LM(this.ws,"Invalid opcode received"),t();if(o)return LM(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#o.has("permessage-deflate")){LM(this.ws,"Expected RSV1 to be clear.");return}if(I!==0||C!==0){LM(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(l&&!eEr(a)){LM(this.ws,"Invalid frame type was fragmented.");return}if(eEr(a)&&this.#s.length>0){LM(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&l){LM(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((A>125||l)&>i(a)){LM(this.ws,"Control frame either too large or fragmented");return}if(nCa(a)&&this.#s.length===0&&!this.#i.compressed){LM(this.ws,"Unexpected continuation frame");return}A<=125?(this.#i.payloadLength=A,this.#r=sV.READ_DATA):A===126?this.#r=sV.PAYLOADLENGTH_16:A===127&&(this.#r=sV.PAYLOADLENGTH_64),eEr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=n,this.#i.fragmented=l}else if(this.#r===sV.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#r=sV.READ_DATA}else if(this.#r===sV.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),n=r.readUInt32BE(0);if(n>2**31-1){LM(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(n<<8)+a,this.#r=sV.READ_DATA}else if(this.#r===sV.READ_DATA){if(this.#t{if(n){dti(this.ws,1007,n.message,n.message.length);return}if(this.#s.push(a),!this.#i.fin){this.#r=sV.INFO,this.#n=!0,this.run(t);return}uti(this.ws,this.#i.binaryType,Buffer.concat(this.#s)),this.#n=!0,this.#r=sV.INFO,this.#s.length=0,this.run(t)}),this.#n=!1;break}else{if(this.#s.push(r),!this.#i.fragmented&&this.#i.fin){let n=Buffer.concat(this.#s);uti(this.ws,this.#i.binaryType,n),this.#s.length=0}this.#r=sV.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return sti;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),n=0;for(;n!==t;){let a=this.#e[0],{length:o}=a;if(o+n===t){r.set(this.#e.shift(),n);break}else if(o+n>t){r.set(a.subarray(0,t-n),n),this.#e[0]=a.subarray(t-n);break}else r.set(this.#e.shift(),n),n+=a.length}return this.#t-=t,r}parseCloseBody(t){zma(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!eCa(r))return{code:1002,reason:"Invalid status code",error:!0};let n=t.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=rCa(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:n}=this.#i;if(r===zwe.CLOSE){if(n===1)return LM(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return dti(this.ws,a,o,o.length),LM(this.ws,o),!1}if(this.ws[ati]!==oti.SENT){let a=sti;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new Ati(a);this.ws[cti].socket.write(o.createFrame(zwe.CLOSE),l=>{l||(this.ws[ati]=oti.SENT)})}return this.ws[$ma]=qma.CLOSING,this.ws[lti]=!0,!1}else if(r===zwe.PING){if(!this.ws[lti]){let a=new Ati(t);this.ws[cti].socket.write(a.createFrame(zwe.PONG)),Nmt.ping.hasSubscribers&&Nmt.ping.publish({payload:t})}}else r===zwe.PONG&&Nmt.pong.hasSubscribers&&Nmt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};pti.exports={ByteParser:tEr}});var _ti=H((Fau,Cti)=>{"use strict";var{WebsocketFrameSend:sCa}=vmt(),{opcodes:Iti,sendHints:qwe}=yhe(),oCa=pyr(),hti=Buffer[Symbol.species],rEr=class{#e=new oCa;#t=!1;#n;constructor(t){this.#n=t}add(t,r,n){if(n!==qwe.blob){let o=mti(t,n);if(!this.#t)this.#n.write(o,r);else{let l={promise:null,callback:r,frame:o};this.#e.push(l)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=mti(o,n)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#n.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function mti(e,t){return new sCa(aCa(e,t)).createFrame(t===qwe.string?Iti.TEXT:Iti.BINARY)}function aCa(e,t){switch(t){case qwe.string:return Buffer.from(e);case qwe.arrayBuffer:case qwe.blob:return new hti(e);case qwe.typedArray:return new hti(e.buffer,e.byteOffset,e.byteLength)}}Cti.exports={SendQueue:rEr}});var Rti=H((Zau,Tti)=>{"use strict";var{webidl:aI}=kk(),{URLSerializer:cCa}=eV(),{environmentSettingsObject:yti}=qW(),{staticPropertyDescriptors:mae,states:qYe,sentCloseFrameState:lCa,sendHints:Dmt}=yhe(),{kWebSocketURL:bti,kReadyState:nEr,kController:uCa,kBinaryType:kmt,kResponse:Eti,kSentClose:gCa,kByteParser:ACa}=QYe(),{isConnecting:dCa,isEstablished:pCa,isClosing:fCa,isValidSubprotocol:ICa,fireEvent:Sti}=UYe(),{establishWebSocketConnection:hCa,closeWebSocketConnection:vti}=qbr(),{ByteParser:mCa}=fti(),{kEnumerableProperty:VM,isBlobLike:Bti}=Em(),{getGlobalDispatcher:CCa}=Jht(),{types:wti}=wt("node:util"),{ErrorEvent:_Ca,CloseEvent:yCa}=Uwe(),{SendQueue:bCa}=_ti(),iO=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n="";#r="";#i;constructor(t,r=[]){super();let n="WebSocket constructor";aI.argumentLengthCheck(arguments,1,n);let a=aI.converters["DOMString or sequence or WebSocketInit"](r,n,"options");t=aI.converters.USVString(t,n,"url"),r=a.protocols;let o=yti.settingsObject.baseUrl,l;try{l=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(l.protocol==="http:"?l.protocol="ws:":l.protocol==="https:"&&(l.protocol="wss:"),l.protocol!=="ws:"&&l.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError");if(l.hash||l.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>ICa(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[bti]=new URL(l.href);let A=yti.settingsObject;this[uCa]=hCa(l,r,A,this,(f,I)=>this.#s(f,I),a),this[nEr]=e.CONNECTING,this[gCa]=lCa.NOT_SENT,this[kmt]="blob"}close(t=void 0,r=void 0){aI.brandCheck(this,e);let n="WebSocket.close";if(t!==void 0&&(t=aI.converters["unsigned short"](t,n,"code",{clamp:!0})),r!==void 0&&(r=aI.converters.USVString(r,n,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");vti(this,t,r,a)}send(t){aI.brandCheck(this,e);let r="WebSocket.send";if(aI.argumentLengthCheck(arguments,1,r),t=aI.converters.WebSocketSendData(t,r,"data"),dCa(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!pCa(this)||fCa(this)))if(typeof t=="string"){let n=Buffer.byteLength(t);this.#t+=n,this.#i.add(t,()=>{this.#t-=n},Dmt.string)}else wti.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},Dmt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},Dmt.typedArray)):Bti(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},Dmt.blob))}get readyState(){return aI.brandCheck(this,e),this[nEr]}get bufferedAmount(){return aI.brandCheck(this,e),this.#t}get url(){return aI.brandCheck(this,e),cCa(this[bti])}get extensions(){return aI.brandCheck(this,e),this.#r}get protocol(){return aI.brandCheck(this,e),this.#n}get onopen(){return aI.brandCheck(this,e),this.#e.open}set onopen(t){aI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return aI.brandCheck(this,e),this.#e.error}set onerror(t){aI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return aI.brandCheck(this,e),this.#e.close}set onclose(t){aI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return aI.brandCheck(this,e),this.#e.message}set onmessage(t){aI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return aI.brandCheck(this,e),this[kmt]}set binaryType(t){aI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[kmt]="blob":this[kmt]=t}#s(t,r){this[Eti]=t;let n=new mCa(this,r);n.on("drain",ECa),n.on("error",SCa.bind(this)),t.socket.ws=this,this[ACa]=n,this.#i=new bCa(t.socket),this[nEr]=qYe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#r=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#n=o),Sti("open",this)}};iO.CONNECTING=iO.prototype.CONNECTING=qYe.CONNECTING;iO.OPEN=iO.prototype.OPEN=qYe.OPEN;iO.CLOSING=iO.prototype.CLOSING=qYe.CLOSING;iO.CLOSED=iO.prototype.CLOSED=qYe.CLOSED;Object.defineProperties(iO.prototype,{CONNECTING:mae,OPEN:mae,CLOSING:mae,CLOSED:mae,url:VM,readyState:VM,bufferedAmount:VM,onopen:VM,onerror:VM,onclose:VM,close:VM,onmessage:VM,binaryType:VM,send:VM,extensions:VM,protocol:VM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(iO,{CONNECTING:mae,OPEN:mae,CLOSING:mae,CLOSED:mae});aI.converters["sequence"]=aI.sequenceConverter(aI.converters.DOMString);aI.converters["DOMString or sequence"]=function(e,t,r){return aI.util.Type(e)==="Object"&&Symbol.iterator in e?aI.converters["sequence"](e):aI.converters.DOMString(e,t,r)};aI.converters.WebSocketInit=aI.dictionaryConverter([{key:"protocols",converter:aI.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:aI.converters.any,defaultValue:()=>CCa()},{key:"headers",converter:aI.nullableConverter(aI.converters.HeadersInit)}]);aI.converters["DOMString or sequence or WebSocketInit"]=function(e){return aI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?aI.converters.WebSocketInit(e):{protocols:aI.converters["DOMString or sequence"](e)}};aI.converters.WebSocketSendData=function(e){if(aI.util.Type(e)==="Object"){if(Bti(e))return aI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||wti.isArrayBuffer(e))return aI.converters.BufferSource(e)}return aI.converters.USVString(e)};function ECa(){this.ws[Eti].socket.resume()}function SCa(e){let t,r;e instanceof yCa?(t=e.reason,r=e.code):t=e.message,Sti("error",this,()=>new _Ca("error",{error:e,message:t})),vti(this,r)}Tti.exports={WebSocket:iO}});var iEr=H((Lau,Nti)=>{"use strict";function vCa(e){return e.indexOf("\0")===-1}function BCa(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function wCa(e){return new Promise(t=>{setTimeout(t,e).unref()})}Nti.exports={isValidLastEventId:vCa,isASCIINumber:BCa,delay:wCa}});var Gti=H((Vau,xti)=>{"use strict";var{Transform:TCa}=wt("node:stream"),{isASCIINumber:Dti,isValidLastEventId:kti}=iEr(),U$=[239,187,191],sEr=10,xmt=13,RCa=58,NCa=32,oEr=class extends TCa{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,n){if(t.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===U$[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]&&this.buffer[2]===U$[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===U$[0]&&this.buffer[1]===U$[1]&&this.buffer[2]===U$[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&Dti(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&kti(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};xti.exports={EventSourceStream:oEr}});var Mti=H((Pau,Oti)=>{"use strict";var{pipeline:DCa}=wt("node:stream"),{fetching:kCa}=OYe(),{makeRequest:xCa}=Mwe(),{webidl:Cae}=kk(),{EventSourceStream:GCa}=Gti(),{parseMIMEType:FCa}=eV(),{createFastMessageEvent:ZCa}=Uwe(),{isNetworkError:Fti}=PYe(),{delay:LCa}=iEr(),{kEnumerableProperty:bhe}=Em(),{environmentSettingsObject:Zti}=qW(),Lti=!1,Vti=3e3,$Ye=0,Pti=1,eQe=2,VCa="anonymous",PCa="use-credentials",$we=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#n=!1;#r=$Ye;#i=null;#s=null;#o;#g;constructor(t,r={}){super();let n="EventSource constructor";Cae.argumentLengthCheck(arguments,1,n),Lti||(Lti=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=Cae.converters.USVString(t,n,"url"),r=Cae.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#o=r.dispatcher,this.#g={lastEventId:"",reconnectionTime:Vti};let a=Zti,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#g.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let l=VCa;r.withCredentials&&(l=PCa,this.#n=!0);let A={redirect:"follow",keepalive:!0,mode:"cors",credentials:l==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};A.client=Zti.settingsObject,A.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],A.cache="no-store",A.initiator="other",A.urlList=[new URL(this.#t)],this.#i=xCa(A),this.#l()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#l(){if(this.#r===eQe)return;this.#r=$Ye;let t={request:this.#i,dispatcher:this.#o},r=n=>{Fti(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#u()};t.processResponseEndOfBody=r,t.processResponse=n=>{if(Fti(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#u();return}let a=n.headersList.get("content-type",!0),o=a!==null?FCa(a):"failure",l=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||l===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#r=Pti,this.dispatchEvent(new Event("open")),this.#g.origin=n.urlList[n.urlList.length-1].origin;let A=new GCa({eventSourceSettings:this.#g,push:f=>{this.dispatchEvent(ZCa(f.type,f.options))}});DCa(n.body.stream,A,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#s=kCa(t)}async#u(){this.#r!==eQe&&(this.#r=$Ye,this.dispatchEvent(new Event("error")),await LCa(this.#g.reconnectionTime),this.#r===$Ye&&(this.#g.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#g.lastEventId,!0),this.#l()))}close(){Cae.brandCheck(this,e),this.#r!==eQe&&(this.#r=eQe,this.#s.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},Wti={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:$Ye,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:Pti,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:eQe,writable:!1}};Object.defineProperties($we,Wti);Object.defineProperties($we.prototype,Wti);Object.defineProperties($we.prototype,{close:bhe,onerror:bhe,onmessage:bhe,onopen:bhe,readyState:bhe,url:bhe,withCredentials:bhe});Cae.converters.EventSourceInitDict=Cae.dictionaryConverter([{key:"withCredentials",converter:Cae.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:Cae.converters.any}]);Oti.exports={EventSource:$we,defaultReconnectionTime:Vti}});var Xti=H((Wau,Bf)=>{"use strict";var WCa=SYe(),Hti=tYe(),OCa=Nwe(),MCa=$7n(),HCa=Dwe(),YCa=kyr(),QCa=Izn(),XCa=bzn(),Yti=Y0(),Fmt=Em(),{InvalidArgumentError:Gmt}=Yti,eTe=cqn(),JCa=nYe(),UCa=dbr(),KCa=Hqn(),jCa=Ibr(),zCa=ebr(),qCa=Lht(),{getGlobalDispatcher:Qti,setGlobalDispatcher:$Ca}=Jht(),e_a=_br(),t_a=Bht(),r_a=wht();Object.assign(Hti.prototype,eTe);Bf.exports.Dispatcher=Hti;Bf.exports.Client=WCa;Bf.exports.Pool=OCa;Bf.exports.BalancedPool=MCa;Bf.exports.Agent=HCa;Bf.exports.ProxyAgent=YCa;Bf.exports.EnvHttpProxyAgent=QCa;Bf.exports.RetryAgent=XCa;Bf.exports.RetryHandler=qCa;Bf.exports.DecoratorHandler=e_a;Bf.exports.RedirectHandler=t_a;Bf.exports.createRedirectInterceptor=r_a;Bf.exports.interceptors={redirect:jqn(),retry:qqn(),dump:e$n()};Bf.exports.buildConnector=JCa;Bf.exports.errors=Yti;Bf.exports.util={parseHeaders:Fmt.parseHeaders,headerNameToString:Fmt.headerNameToString};function tQe(e){return(t,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new Gmt("invalid url");if(r!=null&&typeof r!="object")throw new Gmt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new Gmt("invalid opts.path");let l=r.path;r.path.startsWith("/")||(l=`/${l}`),t=new URL(Fmt.parseOrigin(t).origin+l)}else r||(r=typeof t=="object"?t:{}),t=Fmt.parseURL(t);let{agent:a,dispatcher:o=Qti()}=r;if(a)throw new Gmt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Bf.exports.setGlobalDispatcher=$Ca;Bf.exports.getGlobalDispatcher=Qti;var n_a=OYe().fetch;Bf.exports.fetch=async function(t,r=void 0){try{return await n_a(t,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}};Bf.exports.Headers=fhe().Headers;Bf.exports.Response=PYe().Response;Bf.exports.Request=Mwe().Request;Bf.exports.FormData=uYe().FormData;Bf.exports.File=globalThis.File??wt("node:buffer").File;Bf.exports.FileReader=pei().FileReader;var{setGlobalOrigin:i_a,getGlobalOrigin:s_a}=G0r();Bf.exports.setGlobalOrigin=i_a;Bf.exports.getGlobalOrigin=s_a;var{CacheStorage:o_a}=Eei(),{kConstruct:a_a}=pmt();Bf.exports.caches=new o_a(a_a);var{deleteCookie:c_a,getCookies:l_a,getSetCookies:u_a,setCookie:g_a}=Fei();Bf.exports.deleteCookie=c_a;Bf.exports.getCookies=l_a;Bf.exports.getSetCookies=u_a;Bf.exports.setCookie=g_a;var{parseMIMEType:A_a,serializeAMimeType:d_a}=eV();Bf.exports.parseMIMEType=A_a;Bf.exports.serializeAMimeType=d_a;var{CloseEvent:p_a,ErrorEvent:f_a,MessageEvent:I_a}=Uwe();Bf.exports.WebSocket=Rti().WebSocket;Bf.exports.CloseEvent=p_a;Bf.exports.ErrorEvent=f_a;Bf.exports.MessageEvent=I_a;Bf.exports.request=tQe(eTe.request);Bf.exports.stream=tQe(eTe.stream);Bf.exports.pipeline=tQe(eTe.pipeline);Bf.exports.connect=tQe(eTe.connect);Bf.exports.upgrade=tQe(eTe.upgrade);Bf.exports.MockClient=UCa;Bf.exports.MockPool=jCa;Bf.exports.MockAgent=KCa;Bf.exports.mockErrors=zCa;var{EventSource:h_a}=Mti();Bf.exports.EventSource=h_a});var Kti=H(lT=>{"use strict";var m_a=lT&&lT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),C_a=lT&&lT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__a=lT&&lT.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&m_a(t,e,r);return C_a(t,e),t},y_a=lT&&lT.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(lT,"__esModule",{value:!0});lT.getApiBaseUrl=lT.getProxyFetch=lT.getProxyAgentDispatcher=lT.getProxyAgent=lT.getAuthString=void 0;var Jti=__a(cjn()),b_a=Xti();function E_a(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}lT.getAuthString=E_a;function S_a(e){return new Jti.HttpClient().getAgent(e)}lT.getProxyAgent=S_a;function Uti(e){return new Jti.HttpClient().getAgentDispatcher(e)}lT.getProxyAgentDispatcher=Uti;function v_a(e){let t=Uti(e);return(n,a)=>y_a(this,void 0,void 0,function*(){return(0,b_a.fetch)(n,Object.assign(Object.assign({},a),{dispatcher:t}))})}lT.getProxyFetch=v_a;function B_a(){return process.env.GITHUB_API_URL||"https://api.github.com"}lT.getApiBaseUrl=B_a});var rQe=H(aEr=>{"use strict";Object.defineProperty(aEr,"__esModule",{value:!0});function w_a(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}aEr.getUserAgent=w_a});var qti=H((Hau,zti)=>{zti.exports=jti;function jti(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return jti.bind(null,e,o,a,n)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,n)},r)():r(n)})}});var eri=H((Yau,$ti)=>{$ti.exports=T_a;function T_a(e,t,r,n){var a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=function(o,l){return Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))}),t==="after"&&(n=function(o,l){var A;return Promise.resolve().then(o.bind(null,l)).then(function(f){return A=f,a(A,l)}).then(function(){return A})}),t==="error"&&(n=function(o,l){return Promise.resolve().then(o.bind(null,l)).catch(function(A){return a(A,l)})}),e.registry[r].push({hook:n,orig:a})}});var rri=H((Qau,tri)=>{tri.exports=R_a;function R_a(e,t,r){if(e.registry[t]){var n=e.registry[t].map(function(a){return a.orig}).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}}});var lri=H((Xau,nQe)=>{var ori=qti(),N_a=eri(),D_a=rri(),nri=Function.bind,iri=nri.bind(nri);function ari(e,t,r){var n=iri(D_a,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=iri(N_a,null).apply(null,o)})}function k_a(){var e="h",t={registry:{}},r=ori.bind(null,t,e);return ari(r,t,e),r}function cri(){var e={registry:{}},t=ori.bind(null,e);return ari(t,e),t}var sri=!1;function tTe(){return sri||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),sri=!0),cri()}tTe.Singular=k_a.bind();tTe.Collection=cri.bind();nQe.exports=tTe;nQe.exports.Hook=tTe;nQe.exports.Singular=tTe.Singular;nQe.exports.Collection=tTe.Collection});var mri=H((Jau,hri)=>{"use strict";var uEr=Object.defineProperty,x_a=Object.getOwnPropertyDescriptor,G_a=Object.getOwnPropertyNames,F_a=Object.prototype.hasOwnProperty,Z_a=(e,t)=>{for(var r in t)uEr(e,r,{get:t[r],enumerable:!0})},L_a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of G_a(t))!F_a.call(e,a)&&a!==r&&uEr(e,a,{get:()=>t[a],enumerable:!(n=x_a(t,a))||n.enumerable});return e},V_a=e=>L_a(uEr({},"__esModule",{value:!0}),e),Ari={};Z_a(Ari,{endpoint:()=>$_a});hri.exports=V_a(Ari);var P_a=rQe(),W_a="9.0.5",O_a=`octokit-endpoint.js/${W_a} ${(0,P_a.getUserAgent)()}`,M_a={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":O_a},mediaType:{format:""}};function H_a(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function Y_a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function dri(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{Y_a(t[n])?n in e?r[n]=dri(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function uri(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function lEr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=H_a(r.headers),uri(r),uri(r.headers);let n=dri(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function Q_a(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var X_a=/\{[^}]+\}/g;function J_a(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function U_a(e){let t=e.match(X_a);return t?t.map(J_a).reduce((r,n)=>r.concat(n),[]):[]}function gri(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function pri(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function nTe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function iQe(e,t,r){return t=e==="+"||e==="#"?pri(t):nTe(t),r?nTe(r)+"="+t:t}function rTe(e){return e!=null}function cEr(e){return e===";"||e==="&"||e==="?"}function K_a(e,t,r,n){var a=e[r],o=[];if(rTe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(iQe(t,a,cEr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(rTe).forEach(function(l){o.push(iQe(t,l,cEr(t)?r:""))}):Object.keys(a).forEach(function(l){rTe(a[l])&&o.push(iQe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(rTe).forEach(function(A){l.push(iQe(t,A))}):Object.keys(a).forEach(function(A){rTe(a[A])&&(l.push(nTe(A)),l.push(iQe(t,a[A].toString())))}),cEr(t)?o.push(nTe(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?rTe(a)&&o.push(nTe(r)):a===""&&(t==="&"||t==="?")?o.push(nTe(r)+"="):a===""&&o.push("");return o}function j_a(e){return{expand:z_a.bind(null,e)}}function z_a(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(K_a(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return pri(o)}),e==="/"?e:e.replace(/\/$/,"")}function fri(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=gri(e,["method","baseUrl","url","headers","request","mediaType"]),l=U_a(r);r=j_a(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=gri(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=Q_a(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function q_a(e,t,r){return fri(lEr(e,t,r))}function Iri(e,t){let r=lEr(e,t),n=q_a.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:Iri.bind(null,r),merge:lEr.bind(null,r),parse:fri})}var $_a=Iri(null,M_a)});var Cri=H(AEr=>{"use strict";Object.defineProperty(AEr,"__esModule",{value:!0});var gEr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};AEr.Deprecation=gEr});var vri=H((Kau,Sri)=>{"use strict";var e0a=Object.create,Zmt=Object.defineProperty,t0a=Object.getOwnPropertyDescriptor,r0a=Object.getOwnPropertyNames,n0a=Object.getPrototypeOf,i0a=Object.prototype.hasOwnProperty,s0a=(e,t)=>{for(var r in t)Zmt(e,r,{get:t[r],enumerable:!0})},yri=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of r0a(t))!i0a.call(e,a)&&a!==r&&Zmt(e,a,{get:()=>t[a],enumerable:!(n=t0a(t,a))||n.enumerable});return e},o0a=(e,t,r)=>(r=e!=null?e0a(n0a(e)):{},yri(t||!e||!e.__esModule?Zmt(r,"default",{value:e,enumerable:!0}):r,e)),a0a=e=>yri(Zmt({},"__esModule",{value:!0}),e),bri={};s0a(bri,{RequestError:()=>u0a});Sri.exports=a0a(bri);var _ri=Cri(),Eri=o0a(hgt()),c0a=(0,Eri.default)(e=>console.warn(e)),l0a=(0,Eri.default)(e=>console.warn(e)),u0a=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let n;"headers"in r&&typeof r.headers<"u"&&(n=r.headers),"response"in r&&(this.response=r.response,n=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return c0a(new _ri.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return l0a(new _ri.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),n||{}}})}}});var oQe=H((zau,Tri)=>{"use strict";var fEr=Object.defineProperty,g0a=Object.getOwnPropertyDescriptor,A0a=Object.getOwnPropertyNames,d0a=Object.prototype.hasOwnProperty,p0a=(e,t)=>{for(var r in t)fEr(e,r,{get:t[r],enumerable:!0})},f0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of A0a(t))!d0a.call(e,a)&&a!==r&&fEr(e,a,{get:()=>t[a],enumerable:!(n=g0a(t,a))||n.enumerable});return e},I0a=e=>f0a(fEr({},"__esModule",{value:!0}),e),wri={};p0a(wri,{request:()=>E0a});Tri.exports=I0a(wri);var h0a=mri(),m0a=rQe(),C0a="8.4.0";function _0a(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var sQe=vri();function y0a(e){return e.arrayBuffer()}function Bri(e){var t,r,n,a;let o=e.request&&e.request.log?e.request.log:console,l=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(_0a(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let A={},f,I,{fetch:C}=globalThis;if((r=e.request)!=null&&r.fetch&&(C=e.request.fetch),!C)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return C(e.url,{method:e.method,body:e.body,redirect:(n=e.request)==null?void 0:n.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async b=>{I=b.url,f=b.status;for(let E of b.headers)A[E[0]]=E[1];if("deprecation"in A){let E=A.link&&A.link.match(/<([^>]+)>; rel="deprecation"/),N=E&&E.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${A.sunset}${N?`. See ${N}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new sQe.RequestError(b.statusText,f,{response:{url:I,status:f,headers:A,data:void 0},request:e})}if(f===304)throw new sQe.RequestError("Not modified",f,{response:{url:I,status:f,headers:A,data:await dEr(b)},request:e});if(f>=400){let E=await dEr(b);throw new sQe.RequestError(b0a(E),f,{response:{url:I,status:f,headers:A,data:E},request:e})}return l?await dEr(b):b.body}}).then(b=>({status:f,url:I,headers:A,data:b})).catch(b=>{if(b instanceof sQe.RequestError)throw b;if(b.name==="AbortError")throw b;let E=b.message;throw b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause)),new sQe.RequestError(E,500,{request:e})})}async function dEr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():y0a(e)}function b0a(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function pEr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return Bri(r.parse(l));let A=(f,I)=>Bri(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:pEr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:pEr.bind(null,r)})}var E0a=pEr(h0a.endpoint,{headers:{"user-agent":`octokit-request.js/${C0a} ${(0,m0a.getUserAgent)()}`}})});var xri=H((ecu,kri)=>{"use strict";var IEr=Object.defineProperty,S0a=Object.getOwnPropertyDescriptor,v0a=Object.getOwnPropertyNames,B0a=Object.prototype.hasOwnProperty,w0a=(e,t)=>{for(var r in t)IEr(e,r,{get:t[r],enumerable:!0})},T0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of v0a(t))!B0a.call(e,a)&&a!==r&&IEr(e,a,{get:()=>t[a],enumerable:!(n=S0a(t,a))||n.enumerable});return e},R0a=e=>T0a(IEr({},"__esModule",{value:!0}),e),Nri={};w0a(Nri,{GraphqlResponseError:()=>Dri,graphql:()=>L0a,withCustomRequest:()=>V0a});kri.exports=R0a(Nri);var N0a=oQe(),D0a=rQe(),k0a="7.1.0",qau=oQe(),$au=oQe();function x0a(e){return`Request failed due to following response errors: -`+e.errors.map(t=>` - ${t.message}`).join(` -`)}var Dri=class extends Error{constructor(e,t,r){super(x0a(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},G0a=["method","baseUrl","url","headers","request","query","mediaType"],F0a=["query","method","url"],Rri=/\/api\/v3\/?$/;function Z0a(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(F0a.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>G0a.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Rri.test(o)&&(a.url=o.replace(Rri,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Dri(a,A,l.data)}return l.data.data})}function hEr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>Z0a(r,a,o),{defaults:hEr.bind(null,r),endpoint:r.endpoint})}var L0a=hEr(N0a.request,{headers:{"user-agent":`octokit-graphql.js/${k0a} ${(0,D0a.getUserAgent)()}`},method:"POST",url:"/graphql"});function V0a(e){return hEr(e,{method:"POST",url:"/graphql"})}});var Zri=H((rcu,Fri)=>{"use strict";var mEr=Object.defineProperty,P0a=Object.getOwnPropertyDescriptor,W0a=Object.getOwnPropertyNames,O0a=Object.prototype.hasOwnProperty,M0a=(e,t)=>{for(var r in t)mEr(e,r,{get:t[r],enumerable:!0})},H0a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of W0a(t))!O0a.call(e,a)&&a!==r&&mEr(e,a,{get:()=>t[a],enumerable:!(n=P0a(t,a))||n.enumerable});return e},Y0a=e=>H0a(mEr({},"__esModule",{value:!0}),e),Gri={};M0a(Gri,{createTokenAuth:()=>z0a});Fri.exports=Y0a(Gri);var Q0a=/^v1\./,X0a=/^ghs_/,J0a=/^ghu_/;async function U0a(e){let t=e.split(/\./).length===3,r=Q0a.test(e)||X0a.test(e),n=J0a.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function K0a(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function j0a(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=K0a(e),t(a)}var z0a=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(U0a.bind(null,t),{hook:j0a.bind(null,t)})}});var Hri=H((ncu,Mri)=>{"use strict";var CEr=Object.defineProperty,q0a=Object.getOwnPropertyDescriptor,$0a=Object.getOwnPropertyNames,eya=Object.prototype.hasOwnProperty,tya=(e,t)=>{for(var r in t)CEr(e,r,{get:t[r],enumerable:!0})},rya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $0a(t))!eya.call(e,a)&&a!==r&&CEr(e,a,{get:()=>t[a],enumerable:!(n=q0a(t,a))||n.enumerable});return e},nya=e=>rya(CEr({},"__esModule",{value:!0}),e),Wri={};tya(Wri,{Octokit:()=>uya});Mri.exports=nya(Wri);var iya=rQe(),sya=lri(),Lri=oQe(),oya=xri(),aya=Zri(),Ori="5.2.0",Vri=()=>{},cya=console.warn.bind(console),lya=console.error.bind(console),Pri=`octokit-core.js/${Ori} ${(0,iya.getUserAgent)()}`,uya=class{static{this.VERSION=Ori}static defaults(e){return class extends this{constructor(...r){let n=r[0]||{};if(typeof e=="function"){super(e(n));return}super(Object.assign({},e,n,n.userAgent&&e.userAgent?{userAgent:`${n.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(n=>!t.includes(n)))}}}constructor(e={}){let t=new sya.Collection,r={baseUrl:Lri.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${Pri}`:Pri,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=Lri.request.defaults(r),this.graphql=(0,oya.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:Vri,info:Vri,warn:cya,error:lya},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,l=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",l.hook),this.auth=l}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,aya.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let n=this.constructor;for(let a=0;a{"use strict";var _Er=Object.defineProperty,gya=Object.getOwnPropertyDescriptor,Aya=Object.getOwnPropertyNames,dya=Object.prototype.hasOwnProperty,pya=(e,t)=>{for(var r in t)_Er(e,r,{get:t[r],enumerable:!0})},fya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Aya(t))!dya.call(e,a)&&a!==r&&_Er(e,a,{get:()=>t[a],enumerable:!(n=gya(t,a))||n.enumerable});return e},Iya=e=>fya(_Er({},"__esModule",{value:!0}),e),Yri={};pya(Yri,{legacyRestEndpointMethods:()=>Uri,restEndpointMethods:()=>Jri});Kri.exports=Iya(Yri);var Qri="10.4.1",hya={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},mya=hya,Ehe=new Map;for(let[e,t]of Object.entries(mya))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);Ehe.has(e)||Ehe.set(e,new Map),Ehe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var Cya={has({scope:e},t){return Ehe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Ehe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=Ehe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=_ya(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function Xri(e){let t={};for(let r of Ehe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},Cya);return t}function _ya(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function Jri(e){return{rest:Xri(e)}}Jri.VERSION=Qri;function Uri(e){let t=Xri(e);return{...t,rest:t}}Uri.VERSION=Qri});var nni=H((ccu,rni)=>{"use strict";var yEr=Object.defineProperty,yya=Object.getOwnPropertyDescriptor,bya=Object.getOwnPropertyNames,Eya=Object.prototype.hasOwnProperty,Sya=(e,t)=>{for(var r in t)yEr(e,r,{get:t[r],enumerable:!0})},vya=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of bya(t))!Eya.call(e,a)&&a!==r&&yEr(e,a,{get:()=>t[a],enumerable:!(n=yya(t,a))||n.enumerable});return e},Bya=e=>vya(yEr({},"__esModule",{value:!0}),e),zri={};Sya(zri,{composePaginateRest:()=>Rya,isPaginatingEndpoint:()=>Nya,paginateRest:()=>tni,paginatingEndpoints:()=>eni});rni.exports=Bya(zri);var wya="9.2.1";function Tya(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function bEr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=Tya(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function qri(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),$ri(e,[],bEr(e,t,r)[Symbol.asyncIterator](),n)}function $ri(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:$ri(e,t,r,n)})}var Rya=Object.assign(qri,{iterator:bEr}),eni=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function Nya(e){return typeof e=="string"?eni.includes(e):!1}function tni(e){return{paginate:Object.assign(qri.bind(null,e),{iterator:bEr.bind(null,e)})}}tni.VERSION=wya});var sni=H(xk=>{"use strict";var Dya=xk&&xk.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kya=xk&&xk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ini=xk&&xk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Dya(t,e,r);return kya(t,e),t};Object.defineProperty(xk,"__esModule",{value:!0});xk.getOctokitOptions=xk.GitHub=xk.defaults=xk.context=void 0;var xya=ini(Mhr()),Lmt=ini(Kti()),Gya=Hri(),Fya=jri(),Zya=nni();xk.context=new xya.Context;var EEr=Lmt.getApiBaseUrl();xk.defaults={baseUrl:EEr,request:{agent:Lmt.getProxyAgent(EEr),fetch:Lmt.getProxyFetch(EEr)}};xk.GitHub=Gya.Octokit.plugin(Fya.restEndpointMethods,Zya.paginateRest).defaults(xk.defaults);function Lya(e,t){let r=Object.assign({},t||{}),n=Lmt.getAuthString(e,r);return n&&(r.auth=n),r}xk.getOctokitOptions=Lya});var iTe=H(PM=>{"use strict";var Vya=PM&&PM.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pya=PM&&PM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wya=PM&&PM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Vya(t,e,r);return Pya(t,e),t};Object.defineProperty(PM,"__esModule",{value:!0});PM.getOctokit=PM.context=void 0;var Oya=Wya(Mhr()),oni=sni();PM.context=new Oya.Context;function Mya(e,t,...r){let n=oni.GitHub.plugin(...r);return new n((0,oni.getOctokitOptions)(e,t))}PM.getOctokit=Mya});function kEr({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Rni=bc(()=>{});function K$(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(sba,"")}var sba,gQe=bc(()=>{Rni();sba=kEr()});var Tii=H((Fuu,wii)=>{"use strict";function Rba(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var n=t[t.length-1];return n in r}function vii(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function Bii(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}wii.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ce){r.bools[ce]=!0});var n={};function a(ce){return n[ce].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ce){n[ce]=[].concat(t.alias[ce]),n[ce].forEach(function(fe){n[fe]=[ce].concat(n[ce].filter(function(ue){return fe!==ue}))})}),[].concat(t.string).filter(Boolean).forEach(function(ce){r.strings[ce]=!0,n[ce]&&[].concat(n[ce]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},l={_:[]};function A(ce,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ce]||r.bools[ce]||n[ce]}function f(ce,fe,ue){for(var de=ce,be=0;be{"use strict";var{Transform:Nba}=wt("stream"),{StringDecoder:Dba}=wt("string_decoder"),_ae=Symbol("last"),Umt=Symbol("decoder");function kba(e,t,r){let n;if(this.overflow){if(n=this[Umt].write(e).split(this.matcher),n.length===1)return r();n.shift(),this.overflow=!1}else this[_ae]+=this[Umt].write(e),n=this[_ae].split(this.matcher);this[_ae]=n.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function xba(e){if(this[_ae]+=this[Umt].end(),this[_ae])try{Nii(this,this.mapper(this[_ae]))}catch(t){return e(t)}e()}function Nii(e,t){t!==void 0&&e.push(t)}function Rii(e){return e}function Gba(e,t,r){switch(e=e||/\r?\n/,t=t||Rii,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=Rii)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=kba,r.flush=xba,r.readableObjectMode=!0;let n=new Nba(r);return n[_ae]="",n[Umt]=new Dba("utf8"),n.matcher=e,n.mapper=t,n.maxLength=r.maxLength,n.skipOverflow=r.skipOverflow||!1,n.overflow=!1,n._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},n}Dii.exports=Gba});var Fii={};sI(Fii,{default:()=>Gii});function Gii(e,t){let r=[],n=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(A,f)=>{let I=t.shortFlag&&A.length===1?"-":"--",C=t.allowCamelCase?A:A.replace(/[A-Z]/g,"-$&").toLowerCase();A=I+C,t.useEquals?r.push(A+(f?`=${f}`:"")):(r.push(A),f&&r.push(f))},l=(A,f)=>{r.push(`-${A}`),f&&r.push(f)};for(let[A,f]of Object.entries(e)){let I=o;if(!(Array.isArray(t.excludes)&&xii(t.excludes,A))&&!(Array.isArray(t.includes)&&!xii(t.includes,A))){if(typeof t.aliases=="object"&&t.aliases[A]&&(A=t.aliases[A],I=l),A==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(A==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);n=f;continue}if(f===!0&&!t.ignoreTrue&&I(A,""),f===!1&&!t.ignoreFalse&&I(`no-${A}`),typeof f=="string"&&I(A,f),typeof f=="number"&&!Number.isNaN(f)&&I(A,String(f)),Array.isArray(f))for(let C of f)I(A,C)}}for(let A of n)r.push(String(A));a.length>0&&r.push("--");for(let A of a)r.push(String(A));return r}var xii,Zii=bc(()=>{xii=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var Wii=H((Luu,Pii)=>{var{Readable:Fba,Transform:Lii}=wt("stream"),{execFile:Zba}=wt("child_process"),Lba=kii(),Vii="------------------------ >8 ------------------------";function Vba(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function Pba(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function Wba(e){let{default:t}=await Promise.resolve().then(()=>(Zii(),Fii)),r=`--format=${e.format||""}%n${Vii}`,n=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,n].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function Oba(e,t){let r=new Fba;r._read=()=>{};let n=Pba(e),a=Vba(t),o=!1;return Wba(n).then(l=>{n.debug&&n.debug(`Your git-log command is: -git `+l.join(" "));let A=typeof n.ignore=="string"?new RegExp(n.ignore):n.ignore,f=A?C=>!A.test(C.toString()):()=>!0,I=Zba("git",l,{cwd:a.cwd,maxBuffer:1/0});I.stdout.pipe(Lba(Vii+` -`)).pipe(new Lii({transform(C,b,E){o=!1,setImmediate(()=>{f(C)&&r.push(C),E()})},flush(C){setImmediate(()=>{o||(r.push(null),r.emit("close")),C()})}})),I.stderr.pipe(new Lii({objectMode:!0,highWaterMark:16,transform(C){o=!0,r.emit("error",new Error(C)),r.emit("close")}}))}),r}Pii.exports=Oba});var Bhe,osi=bc(()=>{Bhe=[];Bhe.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&Bhe.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Bhe.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var rCt,A1r,d1r,SEa,p1r,nCt,vEa,f1r,I1r,h1r,iCt,Ygu,Qgu,m1r=bc(()=>{osi();rCt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",A1r=Symbol.for("signal-exit emitter"),d1r=globalThis,SEa=Object.defineProperty.bind(Object),p1r=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(d1r[A1r])return d1r[A1r];SEa(d1r,A1r,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let n=this.listeners[t],a=n.indexOf(r);a!==-1&&(a===0&&n.length===1?n.length=0:n.splice(a,1))}emit(t,r,n){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,n)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,n)||a),a}},nCt=class{},vEa=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),f1r=class extends nCt{onExit(){return()=>{}}load(){}unload(){}},I1r=class extends nCt{#e=h1r.platform==="win32"?"SIGINT":"SIGHUP";#t=new p1r;#n;#r;#i;#s={};#o=!1;constructor(t){super(),this.#n=t,this.#s={};for(let r of Bhe)this.#s[r]=()=>{let n=this.#n.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),n.length===a){this.unload();let l=this.#t.emit("exit",null,r),A=r==="SIGHUP"?this.#e:r;l||t.kill(t.pid,A)}};this.#i=t.reallyExit,this.#r=t.emit}onExit(t,r){if(!rCt(this.#n))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#t.on(n,t),()=>{this.#t.removeListener(n,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#t.count+=1;for(let t of Bhe)try{let r=this.#s[t];r&&this.#n.on(t,r)}catch{}this.#n.emit=(t,...r)=>this.#l(t,...r),this.#n.reallyExit=t=>this.#g(t)}}unload(){this.#o&&(this.#o=!1,Bhe.forEach(t=>{let r=this.#s[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#n.removeListener(t,r)}catch{}}),this.#n.emit=this.#r,this.#n.reallyExit=this.#i,this.#t.count-=1)}#g(t){return rCt(this.#n)?(this.#n.exitCode=t||0,this.#t.emit("exit",this.#n.exitCode,null),this.#i.call(this.#n,this.#n.exitCode)):0}#l(t,...r){let n=this.#r;if(t==="exit"&&rCt(this.#n)){typeof r[0]=="number"&&(this.#n.exitCode=r[0]);let a=n.call(this.#n,t,...r);return this.#t.emit("exit",this.#n.exitCode,null),a}else return n.call(this.#n,t,...r)}},h1r=globalThis.process,{onExit:iCt,load:Ygu,unload:Qgu}=vEa(rCt(h1r)?new I1r(h1r):new f1r)});var Esi=H((yAu,bsi)=>{"use strict";var{PassThrough:$Ea}=wt("stream");bsi.exports=function(){var e=[],t=new $Ea({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=n,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function n(){return e.length==0}function a(o){e=e.filter(function(l){return l!==o}),!e.length&&t.readable&&t.end()}}});var ooi=H((xdu,soi)=>{"use strict";var Y1a=/()(.+)/gi,Q1a="# ------------------------ >8 ------------------------";function mCt(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,n=e.length-1;for(;e[n]==="\r"||e[n]===` -`;)n--;return e.substring(r,n+1)}function whe(e,t){return e?e+=` -`+t:e=t,e}function X1a(e){return function(t){return t.charAt(0)!==e}}function J1a(e){let t=e.indexOf(Q1a);return t===-1?e:e.slice(0,t)}function ioi(e,t){let r=[],n,a,o=e.match(t.references)!==null?t.references:Y1a;for(;n=o.exec(e);){let l=n[1]||null,A=n[2];for(;a=t.referenceParts.exec(A);){let f=null,I=a[1]||"",C=I.split("/");C.length>1&&(f=C.shift(),I=C.join("/"));let b={action:l,owner:f,repository:I||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(b)}}return r}function U1a(){return!0}function K1a(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let n,a,o={},l=typeof t.commentChar=="string"?X1a(t.commentChar):U1a,A=ct=>!ct.match(/^\s*gpg:/),f=mCt(e).split(/\r?\n/),I=J1a(f).filter(l).filter(A),C=!1,b=!0,E=t.headerCorrespondence?.map(function(ct){return ct.trim()})||[],N=t.revertCorrespondence?.map(function(ct){return ct.trim()})||[],B=t.mergeCorrespondence?.map(function(ct){return ct.trim()})||[],F=null,Q=null,X=null,ae=[],ne=null,ce=[],fe=[],ue=null;if(I.length===0)return{body:F,footer:Q,header:X,mentions:ae,merge:ne,notes:ce,references:fe,revert:ue,scope:null,subject:null,type:null};ne=I.shift();let de={},be={};F="",Q="";let Se=ne.match(t.mergePattern);if(Se&&t.mergePattern){for(ne=Se[0],X=I.shift();X!==void 0&&!X.trim();)X=I.shift();X||(X=""),B.forEach(function(ct,Me){let je=Se[Me+1]||null;de[ct]=je})}else X=ne,ne=null,B.forEach(function(ct){de[ct]=null});let De=X.match(t.headerPattern);if(De?E.forEach(function(ct,Me){let je=De[Me+1]||null;be[ct]=je}):E.forEach(function(ct){be[ct]=null}),fe.push(...ioi(X,{references:r.references,referenceParts:r.referenceParts})),I.forEach(function(ct){if(t.fieldPattern){let At=t.fieldPattern.exec(ct);if(At){n=At[1];return}if(n){o[n]=whe(o[n],ct);return}}let Me,je=ct.match(r.notes);if(je){C=!0,b=!1,Q=whe(Q,ct);let At={title:je[1],text:je[2]};ce.push(At);return}let St=ioi(ct,{references:r.references,referenceParts:r.referenceParts});if(St.length>0&&(b=!1,Me=!0,C=!1),Array.prototype.push.apply(fe,St),Me){Q=whe(Q,ct);return}if(C){ce[ce.length-1].text=whe(ce[ce.length-1].text,ct),Q=whe(Q,ct);return}b?F=whe(F,ct):Q=whe(Q,ct)}),t.breakingHeaderPattern&&ce.length===0){let ct=X.match(t.breakingHeaderPattern);if(ct){let Me=ct[3];ce.push({title:"BREAKING CHANGE",text:Me})}}for(;a=r.mentions.exec(e);)ae.push(a[1]);let k=e.match(t.revertPattern);return k?(ue={},N.forEach(function(ct,Me){let je=k[Me+1]||null;ue[ct]=je})):ue=null,ce.forEach(function(ct){ct.text=mCt(ct.text)}),{...be,...de,merge:ne,header:X,body:F?mCt(F):null,footer:Q?mCt(Q):null,notes:ce,references:fe,mentions:ae,revert:ue,...o}}soi.exports=K1a});var loi=H((Gdu,coi)=>{"use strict";var aoi=/(?!.*)/;function V1r(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function j1a(e,t){if(!e)return aoi;let r=V1r(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function z1a(e,t){if(!e)return aoi;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+V1r(e,"|")+")([\\w-]*\\d+)",r)}function q1a(e){if(!e)return/()(.+)/gi;let t=V1r(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}coi.exports=function(e){e=e||{};let t=j1a(e.noteKeywords,e.notesPattern),r=z1a(e.issuePrefixes,e.issuePrefixesCaseSensitive),n=q1a(e.referenceActions);return{notes:t,referenceParts:r,references:n,mentions:/@([\w-]+)/g}}});var doi=H((Fdu,P1r)=>{"use strict";var{Transform:$1a}=wt("stream"),uoi=ooi(),goi=loi();function Aoi(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function e2a(e){e=Aoi(e);let t=goi(e);return new $1a({objectMode:!0,highWaterMark:16,transform(r,n,a){let o;try{o=uoi(r.toString(),e,t),a(null,o)}catch(l){e.warn===!0?a(l):(e.warn(l.toString()),a(null,""))}}})}function t2a(e,t){t=Aoi(t);let r=goi(t);return uoi(e,t,r)}P1r.exports=e2a;P1r.exports.sync=t2a});var foi=H((Zdu,poi)=>{"use strict";function r2a(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}poi.exports.createParserOpts=r2a});var hoi=H((Ldu,Ioi)=>{"use strict";var n2a=Xfr();async function i2a(){let e=s2a();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}Ioi.exports.createWriterOpts=i2a;function s2a(){return{transform:(e,t)=>{let r=!0,n=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,l)=>(n.push(l),`[#${l}](${a}${l})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,l)=>l.includes("/")?`@${l}`:`[@${l}](${t.host}/${l})`))}return e.references=e.references.filter(a=>n.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:n2a}}});var Coi=H((Vdu,moi)=>{"use strict";function o2a(e,t){return{parserOpts:e,writerOpts:t}}moi.exports.createConventionalChangelogOpts=o2a});var yoi=H((Pdu,_oi)=>{"use strict";function a2a(e){return{parserOpts:e,whatBump(t){let r=2,n=0,a=0;return t.forEach(o=>{o.notes.length>0?(n+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:n===1?`There is ${n} BREAKING CHANGE and ${a} features`:`There are ${n} BREAKING CHANGES and ${a} features`}}}}_oi.exports.createConventionalRecommendedBumpOpts=a2a});var Eoi=H((Wdu,boi)=>{"use strict";var{createParserOpts:c2a}=foi(),{createWriterOpts:l2a}=hoi(),{createConventionalChangelogOpts:u2a}=Coi(),{createConventionalRecommendedBumpOpts:g2a}=yoi();async function A2a(){let e=c2a(),t=await l2a(),r=g2a(e),n=u2a(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:n}}boi.exports=A2a});var zoi=H((Mdu,joi)=>{var p2a=1/0,f2a="[object Symbol]",I2a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,h2a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_Ct="\\ud800-\\udfff",Goi="\\u0300-\\u036f\\ufe20-\\ufe23",Foi="\\u20d0-\\u20f0",Zoi="\\u2700-\\u27bf",Loi="a-z\\xdf-\\xf6\\xf8-\\xff",m2a="\\xac\\xb1\\xd7\\xf7",C2a="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",_2a="\\u2000-\\u206f",y2a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Voi="A-Z\\xc0-\\xd6\\xd8-\\xde",Poi="\\ufe0e\\ufe0f",Woi=m2a+C2a+_2a+y2a,O1r="['\u2019]",b2a="["+_Ct+"]",woi="["+Woi+"]",CCt="["+Goi+Foi+"]",Ooi="\\d+",E2a="["+Zoi+"]",Moi="["+Loi+"]",Hoi="[^"+_Ct+Woi+Ooi+Zoi+Loi+Voi+"]",W1r="\\ud83c[\\udffb-\\udfff]",S2a="(?:"+CCt+"|"+W1r+")",Yoi="[^"+_Ct+"]",M1r="(?:\\ud83c[\\udde6-\\uddff]){2}",H1r="[\\ud800-\\udbff][\\udc00-\\udfff]",gTe="["+Voi+"]",Qoi="\\u200d",Toi="(?:"+Moi+"|"+Hoi+")",v2a="(?:"+gTe+"|"+Hoi+")",Roi="(?:"+O1r+"(?:d|ll|m|re|s|t|ve))?",Noi="(?:"+O1r+"(?:D|LL|M|RE|S|T|VE))?",Xoi=S2a+"?",Joi="["+Poi+"]?",B2a="(?:"+Qoi+"(?:"+[Yoi,M1r,H1r].join("|")+")"+Joi+Xoi+")*",Uoi=Joi+Xoi+B2a,w2a="(?:"+[E2a,M1r,H1r].join("|")+")"+Uoi,T2a="(?:"+[Yoi+CCt+"?",CCt,M1r,H1r,b2a].join("|")+")",R2a=RegExp(O1r,"g"),N2a=RegExp(CCt,"g"),D2a=RegExp(W1r+"(?="+W1r+")|"+T2a+Uoi,"g"),k2a=RegExp([gTe+"?"+Moi+"+"+Roi+"(?="+[woi,gTe,"$"].join("|")+")",v2a+"+"+Noi+"(?="+[woi,gTe+Toi,"$"].join("|")+")",gTe+"?"+Toi+"+"+Roi,gTe+"+"+Noi,Ooi,w2a].join("|"),"g"),x2a=RegExp("["+Qoi+_Ct+Goi+Foi+Poi+"]"),G2a=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,F2a={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},Z2a=typeof global=="object"&&global&&global.Object===Object&&global,L2a=typeof self=="object"&&self&&self.Object===Object&&self,V2a=Z2a||L2a||Function("return this")();function P2a(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:j2a(e,t,r)}function $2a(e){return function(t){t=yCt(t);var r=Koi(t)?Q2a(t):void 0,n=r?r[0]:t.charAt(0),a=r?q2a(r,1).join(""):t.slice(1);return n[e]()+a}}function eSa(e){return function(t){return P2a(aSa(sSa(t).replace(R2a,"")),e,"")}}function tSa(e){return!!e&&typeof e=="object"}function rSa(e){return typeof e=="symbol"||tSa(e)&&K2a.call(e)==f2a}function yCt(e){return e==null?"":z2a(e)}var nSa=eSa(function(e,t,r){return t=t.toLowerCase(),e+(r?iSa(t):t)});function iSa(e){return oSa(yCt(e).toLowerCase())}function sSa(e){return e=yCt(e),e&&e.replace(h2a,H2a).replace(N2a,"")}var oSa=$2a("toUpperCase");function aSa(e,t,r){return e=yCt(e),t=r?void 0:t,t===void 0?Y2a(e)?J2a(e):O2a(e):e.match(t)||[]}joi.exports=nSa});var _ai=H((Hdu,Cai)=>{var cSa=1/0,lSa="[object Symbol]",uSa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,gSa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,sai="\\ud800-\\udfff",ASa="\\u0300-\\u036f\\ufe20-\\ufe23",dSa="\\u20d0-\\u20f0",oai="\\u2700-\\u27bf",aai="a-z\\xdf-\\xf6\\xf8-\\xff",pSa="\\xac\\xb1\\xd7\\xf7",fSa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ISa="\\u2000-\\u206f",hSa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",cai="A-Z\\xc0-\\xd6\\xd8-\\xde",mSa="\\ufe0e\\ufe0f",lai=pSa+fSa+ISa+hSa,Y1r="['\u2019]",qoi="["+lai+"]",uai="["+ASa+dSa+"]",gai="\\d+",CSa="["+oai+"]",Aai="["+aai+"]",dai="[^"+sai+lai+gai+oai+aai+cai+"]",_Sa="\\ud83c[\\udffb-\\udfff]",ySa="(?:"+uai+"|"+_Sa+")",bSa="[^"+sai+"]",pai="(?:\\ud83c[\\udde6-\\uddff]){2}",fai="[\\ud800-\\udbff][\\udc00-\\udfff]",ATe="["+cai+"]",ESa="\\u200d",$oi="(?:"+Aai+"|"+dai+")",SSa="(?:"+ATe+"|"+dai+")",eai="(?:"+Y1r+"(?:d|ll|m|re|s|t|ve))?",tai="(?:"+Y1r+"(?:D|LL|M|RE|S|T|VE))?",Iai=ySa+"?",hai="["+mSa+"]?",vSa="(?:"+ESa+"(?:"+[bSa,pai,fai].join("|")+")"+hai+Iai+")*",BSa=hai+Iai+vSa,wSa="(?:"+[CSa,pai,fai].join("|")+")"+BSa,TSa=RegExp(Y1r,"g"),RSa=RegExp(uai,"g"),NSa=RegExp([ATe+"?"+Aai+"+"+eai+"(?="+[qoi,ATe,"$"].join("|")+")",SSa+"+"+tai+"(?="+[qoi,ATe+$oi,"$"].join("|")+")",ATe+"?"+$oi+"+"+eai,ATe+"+"+tai,gai,wSa].join("|"),"g"),DSa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,kSa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},xSa=typeof global=="object"&&global&&global.Object===Object&&global,GSa=typeof self=="object"&&self&&self.Object===Object&&self,FSa=xSa||GSa||Function("return this")();function ZSa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var zSa=1/0,qSa="[object Symbol]",$Sa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,eva=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Tai="\\ud800-\\udfff",tva="\\u0300-\\u036f\\ufe20-\\ufe23",rva="\\u20d0-\\u20f0",Rai="\\u2700-\\u27bf",Nai="a-z\\xdf-\\xf6\\xf8-\\xff",nva="\\xac\\xb1\\xd7\\xf7",iva="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",sva="\\u2000-\\u206f",ova=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Dai="A-Z\\xc0-\\xd6\\xd8-\\xde",ava="\\ufe0e\\ufe0f",kai=nva+iva+sva+ova,Q1r="['\u2019]",yai="["+kai+"]",xai="["+tva+rva+"]",Gai="\\d+",cva="["+Rai+"]",Fai="["+Nai+"]",Zai="[^"+Tai+kai+Gai+Rai+Nai+Dai+"]",lva="\\ud83c[\\udffb-\\udfff]",uva="(?:"+xai+"|"+lva+")",gva="[^"+Tai+"]",Lai="(?:\\ud83c[\\udde6-\\uddff]){2}",Vai="[\\ud800-\\udbff][\\udc00-\\udfff]",dTe="["+Dai+"]",Ava="\\u200d",bai="(?:"+Fai+"|"+Zai+")",dva="(?:"+dTe+"|"+Zai+")",Eai="(?:"+Q1r+"(?:d|ll|m|re|s|t|ve))?",Sai="(?:"+Q1r+"(?:D|LL|M|RE|S|T|VE))?",Pai=uva+"?",Wai="["+ava+"]?",pva="(?:"+Ava+"(?:"+[gva,Lai,Vai].join("|")+")"+Wai+Pai+")*",fva=Wai+Pai+pva,Iva="(?:"+[cva,Lai,Vai].join("|")+")"+fva,hva=RegExp(Q1r,"g"),mva=RegExp(xai,"g"),Cva=RegExp([dTe+"?"+Fai+"+"+Eai+"(?="+[yai,dTe,"$"].join("|")+")",dva+"+"+Sai+"(?="+[yai,dTe+bai,"$"].join("|")+")",dTe+"?"+bai+"+"+Eai,dTe+"+"+Sai,Gai,Iva].join("|"),"g"),_va=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,yva={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},bva=typeof global=="object"&&global&&global.Object===Object&&global,Eva=typeof self=="object"&&self&&self.Object===Object&&self,Sva=bva||Eva||Function("return this")();function vva(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++a{var Wva=1/0,Ova="[object Symbol]",U1r="\\ud800-\\udfff",Jai="\\u0300-\\u036f\\ufe20-\\ufe23",Uai="\\u20d0-\\u20f0",Kai="\\ufe0e\\ufe0f",Mva="["+U1r+"]",X1r="["+Jai+Uai+"]",J1r="\\ud83c[\\udffb-\\udfff]",Hva="(?:"+X1r+"|"+J1r+")",jai="[^"+U1r+"]",zai="(?:\\ud83c[\\udde6-\\uddff]){2}",qai="[\\ud800-\\udbff][\\udc00-\\udfff]",$ai="\\u200d",eci=Hva+"?",tci="["+Kai+"]?",Yva="(?:"+$ai+"(?:"+[jai,zai,qai].join("|")+")"+tci+eci+")*",Qva=tci+eci+Yva,Xva="(?:"+[jai+X1r+"?",X1r,zai,qai,Mva].join("|")+")",Jva=RegExp(J1r+"(?="+J1r+")|"+Xva+Qva,"g"),Uva=RegExp("["+$ai+U1r+Jai+Uai+Kai+"]"),Kva=typeof global=="object"&&global&&global.Object===Object&&global,jva=typeof self=="object"&&self&&self.Object===Object&&self,zva=Kva||jva||Function("return this")();function qva(e){return e.split("")}function rci(e){return Uva.test(e)}function $va(e){return rci(e)?eBa(e):qva(e)}function eBa(e){return e.match(Jva)||[]}var tBa=Object.prototype,rBa=tBa.toString,Yai=zva.Symbol,Qai=Yai?Yai.prototype:void 0,Xai=Qai?Qai.toString:void 0;function nBa(e,t,r){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:nBa(e,t,r)}function oBa(e){return function(t){t=lBa(t);var r=rci(t)?$va(t):void 0,n=r?r[0]:t.charAt(0),a=r?sBa(r,1).join(""):t.slice(1);return n[e]()+a}}function aBa(e){return!!e&&typeof e=="object"}function cBa(e){return typeof e=="symbol"||aBa(e)&&rBa.call(e)==Ova}function lBa(e){return e==null?"":iBa(e)}var uBa=oBa("toUpperCase");nci.exports=uBa});var Rci=H((Xdu,Tci)=>{var gBa=1/0,ABa="[object Symbol]",dBa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pBa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ECt="\\ud800-\\udfff",Aci="\\u0300-\\u036f\\ufe20-\\ufe23",dci="\\u20d0-\\u20f0",pci="\\u2700-\\u27bf",fci="a-z\\xdf-\\xf6\\xf8-\\xff",fBa="\\xac\\xb1\\xd7\\xf7",IBa="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",hBa="\\u2000-\\u206f",mBa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ici="A-Z\\xc0-\\xd6\\xd8-\\xde",hci="\\ufe0e\\ufe0f",mci=fBa+IBa+hBa+mBa,j1r="['\u2019]",CBa="["+ECt+"]",sci="["+mci+"]",bCt="["+Aci+dci+"]",Cci="\\d+",_Ba="["+pci+"]",_ci="["+fci+"]",yci="[^"+ECt+mci+Cci+pci+fci+Ici+"]",K1r="\\ud83c[\\udffb-\\udfff]",yBa="(?:"+bCt+"|"+K1r+")",bci="[^"+ECt+"]",z1r="(?:\\ud83c[\\udde6-\\uddff]){2}",q1r="[\\ud800-\\udbff][\\udc00-\\udfff]",pTe="["+Ici+"]",Eci="\\u200d",oci="(?:"+_ci+"|"+yci+")",bBa="(?:"+pTe+"|"+yci+")",aci="(?:"+j1r+"(?:d|ll|m|re|s|t|ve))?",cci="(?:"+j1r+"(?:D|LL|M|RE|S|T|VE))?",Sci=yBa+"?",vci="["+hci+"]?",EBa="(?:"+Eci+"(?:"+[bci,z1r,q1r].join("|")+")"+vci+Sci+")*",Bci=vci+Sci+EBa,SBa="(?:"+[_Ba,z1r,q1r].join("|")+")"+Bci,vBa="(?:"+[bci+bCt+"?",bCt,z1r,q1r,CBa].join("|")+")",BBa=RegExp(j1r,"g"),wBa=RegExp(bCt,"g"),TBa=RegExp(K1r+"(?="+K1r+")|"+vBa+Bci,"g"),RBa=RegExp([pTe+"?"+_ci+"+"+aci+"(?="+[sci,pTe,"$"].join("|")+")",bBa+"+"+cci+"(?="+[sci,pTe+oci,"$"].join("|")+")",pTe+"?"+oci+"+"+aci,pTe+"+"+cci,Cci,SBa].join("|"),"g"),NBa=RegExp("["+Eci+ECt+Aci+dci+hci+"]"),DBa=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,kBa={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},xBa=typeof global=="object"&&global&&global.Object===Object&&global,GBa=typeof self=="object"&&self&&self.Object===Object&&self,FBa=xBa||GBa||Function("return this")();function ZBa(e,t,r,n){var a=-1,o=e?e.length:0;for(n&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n=n?e:JBa(e,t,r)}function jBa(e){return function(t){t=$1r(t);var r=wci(t)?MBa(t):void 0,n=r?r[0]:t.charAt(0),a=r?KBa(r,1).join(""):t.slice(1);return n[e]()+a}}function zBa(e){return function(t){return ZBa(nwa(ewa(t).replace(BBa,"")),e,"")}}function qBa(e){return!!e&&typeof e=="object"}function $Ba(e){return typeof e=="symbol"||qBa(e)&&XBa.call(e)==ABa}function $1r(e){return e==null?"":UBa(e)}function ewa(e){return e=$1r(e),e&&e.replace(pBa,WBa).replace(wBa,"")}var twa=zBa(function(e,t,r){return e+(r?" ":"")+rwa(t)}),rwa=jBa("toUpperCase");function nwa(e,t,r){return e=$1r(e),t=r?void 0:t,t===void 0?OBa(e)?YBa(e):VBa(e):e.match(t)||[]}Tci.exports=twa});var bli=H(Rhe=>{"use strict";Object.defineProperty(Rhe,"__esModule",{value:!0});Rhe.Application=Rhe.MinistoreContext=void 0;var lwa=(Pa(),vi(Va)),uwa=Al(),NQe=lwa.__importStar(Ec()),gwa=wt("readline");Rhe.MinistoreContext=NQe.default.createContext(null);var Awa=({children:e})=>{let{stdin:t,setRawMode:r}=(0,uwa.useStdin)();(0,NQe.useEffect)(()=>{r&&r(!0),t&&(0,gwa.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,NQe.useState)(new Map),o=(0,NQe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(new Map([...n,[l,A]]))}),[n,a]);return NQe.default.createElement(Rhe.MinistoreContext.Provider,{value:o,children:e})};Rhe.Application=Awa});var Sli=H(l2r=>{"use strict";Object.defineProperty(l2r,"__esModule",{value:!0});l2r.useKeypress=pwa;var dwa=Al(),Eli=Ec();function pwa({active:e},t,r){let{stdin:n}=(0,dwa.useStdin)(),a=(0,Eli.useCallback)((o,l)=>t(o,l),r);(0,Eli.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var wli=H(u2r=>{"use strict";Object.defineProperty(u2r,"__esModule",{value:!0});u2r.renderForm=mwa;var fwa=(Pa(),vi(Va)),vli=Al(),Bli=fwa.__importDefault(Ec()),Iwa=bli(),hwa=Sli();async function mwa(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,vli.useApp)();(0,hwa.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,vli.render)(Bli.default.createElement(Iwa.Application,null,Bli.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var Nli=H(wCt=>{"use strict";Object.defineProperty(wCt,"__esModule",{value:!0});wCt.forceStdinTty=void 0;var Tli=Rli(wt("fs")),Cwa=Rli(wt("tty"));function Rli(e){return e&&e.__esModule?e:{default:e}}var _wa=function(){if(process.stdin.isTTY)return!1;var t=Tli.default.constants,r=t.O_RDONLY,n=t.O_NOCTTY,a=Tli.default.openSync("/dev/tty",r+n),o=new Cwa.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};wCt.forceStdinTty=_wa});var kli=H((ahu,Dli)=>{function ywa(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function bwa(e){return e.split(` -`).map(n=>ywa(n)).join(` -`)}Dli.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,n=typeof t.indent=="string"?t.indent:" ",a=t.newline||` -`+n,o=typeof t.escape=="function"?t.escape:Ewa,l=".{1,"+r+"}";t.cut!==!0&&(l+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var A=new RegExp(l,"g"),f=e.match(A)||[],I=n+f.map(function(C){return C.slice(-1)===` -`&&(C=C.slice(0,C.length-1)),o(C)}).join(a);return t.trim===!0&&(I=bwa(I)),I};function Ewa(e){return e}});var Gli=H((chu,xli)=>{"use strict";var Swa="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";xli.exports=Swa});var Vli=H((lhu,Lli)=>{"use strict";var vwa=Gli();function Fli(){}function Zli(){}Zli.resetWarningCache=Fli;Lli.exports=function(){function e(n,a,o,l,A,f){if(f!==vwa){var I=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw I.name="Invariant Violation",I}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:Zli,resetWarningCache:Fli};return r.PropTypes=r,r}});var hTe=H((Ahu,Pli)=>{Pli.exports=Vli()();var uhu,ghu});var b2r=H((DQe,CTe)=>{var Bwa=200,y2r="__lodash_hash_undefined__",FCt=1,zli=2,qli=9007199254740991,TCt="[object Arguments]",p2r="[object Array]",wwa="[object AsyncFunction]",$li="[object Boolean]",eui="[object Date]",tui="[object Error]",rui="[object Function]",Twa="[object GeneratorFunction]",RCt="[object Map]",nui="[object Number]",Rwa="[object Null]",mTe="[object Object]",Wli="[object Promise]",Nwa="[object Proxy]",iui="[object RegExp]",NCt="[object Set]",sui="[object String]",Dwa="[object Symbol]",kwa="[object Undefined]",f2r="[object WeakMap]",oui="[object ArrayBuffer]",DCt="[object DataView]",xwa="[object Float32Array]",Gwa="[object Float64Array]",Fwa="[object Int8Array]",Zwa="[object Int16Array]",Lwa="[object Int32Array]",Vwa="[object Uint8Array]",Pwa="[object Uint8ClampedArray]",Wwa="[object Uint16Array]",Owa="[object Uint32Array]",Mwa=/[\\^$.*+?()[\]{}|]/g,Hwa=/^\[object .+?Constructor\]$/,Ywa=/^(?:0|[1-9]\d*)$/,M1={};M1[xwa]=M1[Gwa]=M1[Fwa]=M1[Zwa]=M1[Lwa]=M1[Vwa]=M1[Pwa]=M1[Wwa]=M1[Owa]=!0;M1[TCt]=M1[p2r]=M1[oui]=M1[$li]=M1[DCt]=M1[eui]=M1[tui]=M1[rui]=M1[RCt]=M1[nui]=M1[mTe]=M1[iui]=M1[NCt]=M1[sui]=M1[f2r]=!1;var aui=typeof global=="object"&&global&&global.Object===Object&&global,Qwa=typeof self=="object"&&self&&self.Object===Object&&self,z$=aui||Qwa||Function("return this")(),cui=typeof DQe=="object"&&DQe&&!DQe.nodeType&&DQe,Oli=cui&&typeof CTe=="object"&&CTe&&!CTe.nodeType&&CTe,lui=Oli&&Oli.exports===cui,g2r=lui&&aui.process,Mli=function(){try{return g2r&&g2r.binding&&g2r.binding("util")}catch{}}(),Hli=Mli&&Mli.isTypedArray;function Xwa(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r-1}function bTa(e,t){var r=this.__data__,n=LCt(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}q$.prototype.clear=mTa;q$.prototype.delete=CTa;q$.prototype.get=_Ta;q$.prototype.has=yTa;q$.prototype.set=bTa;function khe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tA))return!1;var I=o.get(e);if(I&&o.get(t))return I==t;var C=-1,b=!0,E=r&zli?new xCt:void 0;for(o.set(e,t),o.set(t,e);++C-1&&e%1==0&&e-1&&e%1==0&&e<=qli}function mui(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function GQe(e){return e!=null&&typeof e=="object"}var Cui=Hli?jwa(Hli):PTa;function $Ta(e){return zTa(e)?FTa(e):WTa(e)}function eRa(){return[]}function tRa(){return!1}CTe.exports=qTa});var yui=H((dhu,_ui)=>{"use strict";_ui.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),n=typeof t=="number"?t:0;return r.splice(-n%r.length).concat(r)}});var E2r=H((phu,Eui)=>{"use strict";var rRa=jfr(),bui=process.platform,YX={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},nRa={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:YX.heart,arrowUp:YX.arrowUp,arrowDown:YX.arrowDown,arrowLeft:YX.arrowLeft,arrowRight:YX.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};bui==="linux"&&(YX.questionMarkPrefix="?");var PCt=bui==="win32"?nRa:YX,iRa=e=>(PCt===YX||Object.keys(YX).forEach(t=>{YX[t]!==PCt[t]&&(e=e.replace(new RegExp(rRa(YX[t]),"g"),PCt[t]))}),e);Eui.exports=Object.assign(iRa,PCt)});var Bui=H(WCt=>{"use strict";Object.defineProperty(WCt,"__esModule",{value:!0});WCt.default=void 0;var Sui=S2r(Ec()),sRa=S2r(hTe()),vui=Al(),oRa=S2r(E2r());function S2r(e){return e&&e.__esModule?e:{default:e}}var v2r=({isHighlighted:e})=>Sui.default.createElement(vui.Box,{marginRight:1},Sui.default.createElement(vui.Text,{color:e?"blue":void 0},e?oRa.default.pointer:" "));v2r.propTypes={isHighlighted:sRa.default.bool};v2r.defaultProps={isHighlighted:!1};var aRa=v2r;WCt.default=aRa});var Rui=H(OCt=>{"use strict";Object.defineProperty(OCt,"__esModule",{value:!0});OCt.default=void 0;var cRa=Tui(Ec()),wui=Tui(hTe()),lRa=Al();function Tui(e){return e&&e.__esModule?e:{default:e}}var B2r=({isHighlighted:e,label:t})=>cRa.default.createElement(lRa.Text,{color:e?"blue":void 0},t);B2r.propTypes={isHighlighted:wui.default.bool,label:wui.default.string.isRequired};B2r.defaultProps={isHighlighted:!1};var uRa=B2r;OCt.default=uRa});var xui=H(MCt=>{"use strict";Object.defineProperty(MCt,"__esModule",{value:!0});MCt.default=void 0;var Nui=w2r(Ec()),gRa=w2r(hTe()),Dui=Al(),kui=w2r(E2r());function w2r(e){return e&&e.__esModule?e:{default:e}}var T2r=({isSelected:e})=>Nui.default.createElement(Dui.Box,{marginRight:1},Nui.default.createElement(Dui.Text,{color:"green"},e?kui.default.circleFilled:kui.default.circle));T2r.propTypes={isSelected:gRa.default.bool};T2r.defaultProps={isSelected:!1};var ARa=T2r;MCt.default=ARa});var Vui=H(Fhe=>{"use strict";Object.defineProperty(Fhe,"__esModule",{value:!0});Object.defineProperty(Fhe,"Indicator",{enumerable:!0,get:function(){return Gui.default}});Object.defineProperty(Fhe,"Item",{enumerable:!0,get:function(){return Fui.default}});Object.defineProperty(Fhe,"CheckBox",{enumerable:!0,get:function(){return Zui.default}});Fhe.default=void 0;var Ghe=pRa(Ec()),YZ=yTe(hTe()),dRa=yTe(b2r()),HCt=yTe(yui()),R2r=Al(),Gui=yTe(Bui()),Fui=yTe(Rui()),Zui=yTe(xui());function yTe(e){return e&&e.__esModule?e:{default:e}}function Lui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Lui=function(){return e},e}function pRa(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Lui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function N2r(){return N2r=Object.assign||function(e){for(var t=1;t{let{items:n,focus:a,onHighlight:o,onSubmit:l}=this.props,{rotateIndex:A,highlightedIndex:f}=this.state,I=this.props.selected||this.state.selected,{limit:C,hasLimit:b}=this;if(a===!1)return;let E=String(r);if(E===fRa||E==="k"){let N=(b?C:n.length)-1,B=f===0,F=b?f:N,Q=B?A+1:A,X=B?F:f-1;this.setState({rotateIndex:Q,highlightedIndex:X});let ae=b?(0,HCt.default)(n,Q).slice(0,C):n;o(ae[X])}if(E===IRa||E==="j"){let N=f===(b?C:n.length)-1,B=b?f:0,F=N?A-1:A,Q=N?B:f+1;this.setState({rotateIndex:F,highlightedIndex:Q});let X=b?(0,HCt.default)(n,F).slice(0,C):n;o(X[Q])}if(E===mRa){let B=(b?(0,HCt.default)(n,A).slice(0,C):n)[f];this.setSelectedState(this.selectItem(B))}E===hRa&&l(I)})}render(){let{items:t,indicatorComponent:r,itemComponent:n,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:l}=this.state,{limit:A,hasLimit:f}=this,I=f?(0,HCt.default)(t,o).slice(0,A):t;return Ghe.default.createElement(R2r.Box,{flexDirection:"column"},I.map((C,b)=>{let E=C.key||C.value,N=b===l,B=this.isSelected(C.value);return Ghe.default.createElement(R2r.Box,{key:E},Ghe.default.createElement(r,{isHighlighted:N}),Ghe.default.createElement(a,{isSelected:B}),Ghe.default.createElement(n,{...C,isHighlighted:N}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,dRa.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:n})=>n).includes(t)}selectItem(t){let{onSelect:r,onUnselect:n}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(n(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};YCt(ZQe,"propTypes",{items:YZ.default.array,selected:YZ.default.array,defaultSelected:YZ.default.array,focus:YZ.default.bool,initialIndex:YZ.default.number,indicatorComponent:YZ.default.func,checkboxComponent:YZ.default.func,itemComponent:YZ.default.func,limit:YZ.default.number,onSelect:YZ.default.func,onUnselect:YZ.default.func,onSubmit:YZ.default.func,onHighlight:YZ.default.func,stdin:YZ.default.any.isRequired,setRawMode:YZ.default.func.isRequired});YCt(ZQe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:Gui.default,checkboxComponent:Zui.default,itemComponent:Fui.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var CRa=e=>{let{stdin:t,setRawMode:r}=(0,R2r.useStdin)();return Ghe.default.createElement(ZQe,N2r({},e,{stdin:t,setRawMode:r}))};Fhe.default=CRa});var Wui=H(bTe=>{"use strict";Object.defineProperty(bTe,"__esModule",{value:!0});Object.defineProperty(bTe,"default",{enumerable:!0,get:function(){return QCt.default}});Object.defineProperty(bTe,"Item",{enumerable:!0,get:function(){return QCt.Item}});Object.defineProperty(bTe,"Indicator",{enumerable:!0,get:function(){return QCt.Indicator}});Object.defineProperty(bTe,"CheckBox",{enumerable:!0,get:function(){return QCt.CheckBox}});var QCt=_Ra(Vui());function Pui(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return Pui=function(){return e},e}function _Ra(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=Pui();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var X2r=H((Tmu,hgi)=>{var kTe=1e3,xTe=kTe*60,GTe=xTe*60,Zhe=GTe*24,ZRa=Zhe*7,LRa=Zhe*365.25;hgi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return VRa(e);if(r==="number"&&isFinite(e))return t.long?WRa(e):PRa(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function VRa(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*LRa;case"weeks":case"week":case"w":return r*ZRa;case"days":case"day":case"d":return r*Zhe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*GTe;case"minutes":case"minute":case"mins":case"min":case"m":return r*xTe;case"seconds":case"second":case"secs":case"sec":case"s":return r*kTe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function PRa(e){var t=Math.abs(e);return t>=Zhe?Math.round(e/Zhe)+"d":t>=GTe?Math.round(e/GTe)+"h":t>=xTe?Math.round(e/xTe)+"m":t>=kTe?Math.round(e/kTe)+"s":e+"ms"}function WRa(e){var t=Math.abs(e);return t>=Zhe?t_t(e,t,Zhe,"day"):t>=GTe?t_t(e,t,GTe,"hour"):t>=xTe?t_t(e,t,xTe,"minute"):t>=kTe?t_t(e,t,kTe,"second"):e+" ms"}function t_t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var J2r=H((Rmu,mgi)=>{function ORa(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=X2r(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{lO.formatArgs=HRa;lO.save=YRa;lO.load=QRa;lO.useColors=MRa;lO.storage=XRa();lO.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();lO.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function MRa(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function HRa(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+r_t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}lO.log=console.debug||console.log||(()=>{});function YRa(e){try{e?lO.storage.setItem("debug",e):lO.storage.removeItem("debug")}catch{}}function QRa(){let e;try{e=lO.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function XRa(){try{return localStorage}catch{}}r_t.exports=J2r()(lO);var{formatters:JRa}=r_t.exports;JRa.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var ygi=H((rD,i_t)=>{var URa=wt("tty"),n_t=wt("util");rD.init=tNa;rD.log=qRa;rD.formatArgs=jRa;rD.save=$Ra;rD.load=eNa;rD.useColors=KRa;rD.destroy=n_t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");rD.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(rD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}rD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function KRa(){return"colors"in rD.inspectOpts?!!rD.inspectOpts.colors:URa.isatty(process.stderr.fd)}function jRa(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` -`).join(` -`+o),e.push(a+"m+"+i_t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=zRa()+t+" "+e[0]}function zRa(){return rD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function qRa(...e){return process.stderr.write(n_t.formatWithOptions(rD.inspectOpts,...e)+` -`)}function $Ra(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function eNa(){return process.env.DEBUG}function tNa(e){e.inspectOpts={};let t=Object.keys(rD.inspectOpts);for(let r=0;rt.trim()).join(" ")};_gi.O=function(e){return this.inspectOpts.colors=this.useColors,n_t.inspect(e,this.inspectOpts)}});var uT=H((Nmu,U2r)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?U2r.exports=Cgi():U2r.exports=ygi()});var Sgi=H((xmu,K2r)=>{"use strict";var sNa=Object.prototype.hasOwnProperty,XZ="~";function WQe(){}Object.create&&(WQe.prototype=Object.create(null),new WQe().__proto__||(XZ=!1));function oNa(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function Egi(e,t,r,n,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new oNa(r,n||e,a),l=XZ?XZ+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function s_t(e,t){--e._eventsCount===0?e._events=new WQe:delete e._events[t]}function BG(){this._events=new WQe,this._eventsCount=0}BG.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)sNa.call(r,n)&&t.push(XZ?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};BG.prototype.listeners=function(t){var r=XZ?XZ+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,o=n.length,l=new Array(o);a{"use strict";Dgi.exports=INa;function FTe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function INa(e){if(e=e||{},e.circles)return hNa(e);let t=new Map;if(t.set(Date,l=>new Date(l)),t.set(Map,(l,A)=>new Map(n(Array.from(l),A))),t.set(Set,(l,A)=>new Set(n(Array.from(l),A))),e.constructorHandlers)for(let l of e.constructorHandlers)t.set(l[0],l[1]);let r=null;return e.proto?o:a;function n(l,A){let f=Object.keys(l),I=new Array(f.length);for(let C=0;Cnew Date(f)),n.set(Map,(f,I)=>new Map(o(Array.from(f),I))),n.set(Set,(f,I)=>new Set(o(Array.from(f),I))),e.constructorHandlers)for(let f of e.constructorHandlers)n.set(f[0],f[1]);let a=null;return e.proto?A:l;function o(f,I){let C=Object.keys(f),b=new Array(C.length);for(let E=0;E{a_t=globalThis.window?.document!==void 0,SCu=globalThis.process?.versions?.node!==void 0,vCu=globalThis.process?.versions?.bun!==void 0,BCu=globalThis.Deno?.version?.deno!==void 0,wCu=globalThis.process?.versions?.electron!==void 0,TCu=globalThis.navigator?.userAgent?.includes("jsdom")===!0,RCu=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,NCu=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,DCu=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,kCu=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,OQe=globalThis.navigator?.userAgentData?.platform,xCu=OQe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",GCu=OQe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",FCu=OQe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",ZCu=OQe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),LCu=OQe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var YQe={};sI(YQe,{beep:()=>HNa,clearScreen:()=>PNa,clearTerminal:()=>WNa,cursorBackward:()=>SNa,cursorDown:()=>bNa,cursorForward:()=>ENa,cursorGetPosition:()=>wNa,cursorHide:()=>NNa,cursorLeft:()=>Zgi,cursorMove:()=>yNa,cursorNextLine:()=>TNa,cursorPrevLine:()=>RNa,cursorRestorePosition:()=>BNa,cursorSavePosition:()=>vNa,cursorShow:()=>DNa,cursorTo:()=>_Na,cursorUp:()=>Fgi,enterAlternativeScreen:()=>ONa,eraseDown:()=>FNa,eraseEndLine:()=>xNa,eraseLine:()=>Lgi,eraseLines:()=>kNa,eraseScreen:()=>z2r,eraseStartLine:()=>GNa,eraseUp:()=>ZNa,exitAlternativeScreen:()=>MNa,iTerm:()=>XNa,image:()=>QNa,link:()=>YNa,scrollDown:()=>VNa,scrollUp:()=>LNa});import q2r from"node:process";var m0,HQe,ZTe,MQe,Ggi,mNa,CNa,_Na,yNa,Fgi,bNa,ENa,SNa,Zgi,vNa,BNa,wNa,TNa,RNa,NNa,DNa,kNa,xNa,GNa,Lgi,FNa,ZNa,z2r,LNa,VNa,PNa,WNa,ONa,MNa,HNa,YNa,QNa,XNa,$2r=bc(()=>{xgi();m0="\x1B[",HQe="\x1B]",ZTe="\x07",MQe=";",Ggi=!a_t&&q2r.env.TERM_PROGRAM==="Apple_Terminal",mNa=!a_t&&q2r.platform==="win32",CNa=a_t?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:q2r.cwd,_Na=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?m0+(e+1)+"G":m0+(t+1)+MQe+(e+1)+"H"},yNa=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=m0+-e+"D":e>0&&(r+=m0+e+"C"),t<0?r+=m0+-t+"A":t>0&&(r+=m0+t+"B"),r},Fgi=(e=1)=>m0+e+"A",bNa=(e=1)=>m0+e+"B",ENa=(e=1)=>m0+e+"C",SNa=(e=1)=>m0+e+"D",Zgi=m0+"G",vNa=Ggi?"\x1B7":m0+"s",BNa=Ggi?"\x1B8":m0+"u",wNa=m0+"6n",TNa=m0+"E",RNa=m0+"F",NNa=m0+"?25l",DNa=m0+"?25h",kNa=e=>{let t="";for(let r=0;r[HQe,"8",MQe,MQe,t,ZTe,e,HQe,"8",MQe,MQe,ZTe].join(""),QNa=(e,t={})=>{let r=`${HQe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+ZTe},XNa={setCwd:(e=CNa())=>`${HQe}50;CurrentDir=${e}${ZTe}`,annotation(e,t={}){let r=`${HQe}1337;`,n=t.x!==void 0,a=t.y!==void 0;if((n||a)&&!(n&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+ZTe}}});var Vgi=bc(()=>{$2r();$2r()});function eSr(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))JNa(e,t,a,r);return KNa(e,t),$Na(e,t,n),e}var JNa,UNa,KNa,jNa,zNa,qNa,$Na,Pgi=bc(()=>{JNa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!UNa(a,o)&&n||Object.defineProperty(e,r,o)},UNa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},KNa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},jNa=(e,t)=>`/* Wrapped ${e}*/ -${t}`,zNa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),qNa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),$Na=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=jNa.bind(null,n,t.toString());Object.defineProperty(a,"name",qNa);let{writable:o,enumerable:l,configurable:A}=zNa;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:l,configurable:A})}});var c_t,Wgi,Ogi,Mgi=bc(()=>{Pgi();c_t=new WeakMap,Wgi=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(c_t.set(o,++n),n===1)r=e.apply(this,l),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return eSr(o,e),c_t.set(o,n),o};Wgi.callCount=e=>{if(!c_t.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return c_t.get(e)};Ogi=Wgi});import l_t from"node:process";var Hgi,eDa,Ygi,Qgi=bc(()=>{Mgi();m1r();Hgi=l_t.stderr.isTTY?l_t.stderr:l_t.stdout.isTTY?l_t.stdout:void 0,eDa=Hgi?Ogi(()=>{iCt(()=>{Hgi.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},Ygi=eDa});import Xgi from"node:process";var u_t,LTe,tSr,Jgi=bc(()=>{Qgi();u_t=!1,LTe={};LTe.show=(e=Xgi.stderr)=>{e.isTTY&&(u_t=!1,e.write("\x1B[?25h"))};LTe.hide=(e=Xgi.stderr)=>{e.isTTY&&(Ygi(),u_t=!0,e.write("\x1B[?25l"))};LTe.toggle=(e,t)=>{e!==void 0&&(u_t=e),u_t?LTe.show(t):LTe.hide(t)};tSr=LTe});function Ugi(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function Kgi(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function jgi(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var zgi=bc(()=>{});function tDa(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function g_t(e,{ambiguousAsWide:t=!1}={}){return tDa(e),Kgi(e)||jgi(e)||t&&Ugi(e)?2:1}var rSr=bc(()=>{zgi()});var $gi=H((n_u,qgi)=>{qgi.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function MM(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:n=!1}=t;if(n||(e=K$(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:l}of rDa.segment(e)){let A=l.codePointAt(0);if(!(A<=31||A>=127&&A<=159)&&!(A>=8203&&A<=8207||A===65279)&&!(A>=768&&A<=879||A>=6832&&A<=6911||A>=7616&&A<=7679||A>=8400&&A<=8447||A>=65056&&A<=65071)&&!(A>=55296&&A<=57343)&&!(A>=65024&&A<=65039)&&!nDa.test(l)){if((0,eAi.default)().test(l)){a+=2;continue}a+=g_t(A,o)}}return a}var eAi,rDa,nDa,nSr=bc(()=>{gQe();rSr();eAi=Nt($gi(),1),rDa=new Intl.Segmenter,nDa=/^\p{Default_Ignorable_Code_Point}$/u});function oDa(){let e=new Map;for(let[t,r]of Object.entries(T2)){for(let[n,a]of Object.entries(r))T2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=T2[n],e.set(a[0],a[1]);Object.defineProperty(T2,t,{value:r,enumerable:!1})}return Object.defineProperty(T2,"codes",{value:e,enumerable:!1}),T2.color.close="\x1B[39m",T2.bgColor.close="\x1B[49m",T2.color.ansi=tAi(),T2.color.ansi256=rAi(),T2.color.ansi16m=nAi(),T2.bgColor.ansi=tAi(10),T2.bgColor.ansi256=rAi(10),T2.bgColor.ansi16m=nAi(10),Object.defineProperties(T2,{rgbToAnsi256:{value:(t,r,n)=>t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>T2.rgbToAnsi256(...T2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>T2.ansi256ToAnsi(T2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>T2.ansi256ToAnsi(T2.hexToAnsi256(t)),enumerable:!1}}),T2}var tAi,rAi,nAi,T2,a_u,iDa,sDa,c_u,aDa,aV,A_t=bc(()=>{tAi=(e=0)=>t=>`\x1B[${t+e}m`,rAi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,nAi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,T2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},a_u=Object.keys(T2.modifier),iDa=Object.keys(T2.color),sDa=Object.keys(T2.bgColor),c_u=[...iDa,...sDa];aDa=oDa(),aV=aDa});var cAi={};sI(cAi,{default:()=>f_t});function f_t(e,t,r){return String(e).normalize().replaceAll(`\r -`,` -`).split(` -`).map(n=>ADa(n,t,r)).join(` -`)}var p_t,cDa,sSr,oAi,lDa,aAi,d_t,iAi,sAi,uDa,iSr,gDa,ADa,oSr=bc(()=>{nSr();gQe();A_t();p_t=new Set(["\x1B","\x9B"]),cDa=39,sSr="\x07",oAi="[",lDa="]",aAi="m",d_t=`${lDa}8;;`,iAi=e=>`${p_t.values().next().value}${oAi}${e}${aAi}`,sAi=e=>`${p_t.values().next().value}${d_t}${e}${sSr}`,uDa=e=>e.split(" ").map(t=>MM(t)),iSr=(e,t,r)=>{let n=[...t],a=!1,o=!1,l=MM(K$(e.at(-1)));for(let[A,f]of n.entries()){let I=MM(f);if(l+I<=r?e[e.length-1]+=f:(e.push(f),l=0),p_t.has(f)&&(a=!0,o=n.slice(A+1,A+1+d_t.length).join("")===d_t),a){o?f===sSr&&(a=!1,o=!1):f===aAi&&(a=!1);continue}l+=I,l===r&&A0&&e.length>1&&(e[e.length-2]+=e.pop())},gDa=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(MM(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},ADa=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",a,o,l=uDa(e),A=[""];for(let[b,E]of e.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A.at(-1).trimStart());let N=MM(A.at(-1));if(b!==0&&(N>=t&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),N=0),(N>0||r.trim===!1)&&(A[A.length-1]+=" ",N++)),r.hard&&l[b]>t){let B=t-N,F=1+Math.floor((l[b]-B-1)/t);Math.floor((l[b]-1)/t)t&&N>0&&l[b]>0){if(r.wordWrap===!1&&Nt&&r.wordWrap===!1){iSr(A,E,t);continue}A[A.length-1]+=E}r.trim!==!1&&(A=A.map(b=>gDa(b)));let f=A.join(` -`),I=[...f],C=0;for(let[b,E]of I.entries()){if(n+=E,p_t.has(E)){let{groups:B}=new RegExp(`(?:\\${oAi}(?\\d+)m|\\${d_t}(?.*)${sSr})`).exec(f.slice(C))||{groups:{}};if(B.code!==void 0){let F=Number.parseFloat(B.code);a=F===cDa?void 0:F}else B.uri!==void 0&&(o=B.uri.length===0?void 0:B.uri)}let N=aV.codes.get(Number(a));I[b+1]===` -`?(o&&(n+=sAi("")),a&&N&&(n+=iAi(N))):E===` -`&&(a&&N&&(n+=iAi(a)),o&&(n+=sAi(o))),C+=E.length}return n}});function aSr(e){return Number.isInteger(e)?g_t(e)===2:!1}var lAi=bc(()=>{rSr()});function IDa(e){if(lSr.has(e))return e;if(cSr.has(e))return cSr.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=aV.codes.get(Number.parseInt(e,10));return t?aV.color.ansi(t):aV.reset.open}function hDa(e){for(let t=0;t=pDa&&r<=fDa)return t}return-1}function mDa(e,t){e=e.slice(t,t+19);let r=hDa(e);if(r!==-1){let n=e.indexOf("m",r);return n===-1&&(n=e.length),e.slice(0,n+1)}}function CDa(e,t=Number.POSITIVE_INFINITY){let r=[],n=0,a=0;for(;n=t)break}return r}function uAi(e){let t=[];for(let r of e)r.code===aV.reset.open?t=[]:lSr.has(r.code)?t=t.filter(n=>n.endCode!==r.code):(t=t.filter(n=>n.endCode!==r.endCode),t.push(r));return t}function _Da(e){return uAi(e).map(({endCode:n})=>n).reverse().join("")}function uSr(e,t,r){let n=CDa(e,r),a=[],o=0,l="",A=!1;for(let f of n){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),A&&(l+=f.code)):(!A&&o>=t&&(A=!0,a=uAi(a),l=a.map(({code:I})=>I).join("")),A&&(l+=f.value),o+=f.isFullWidth?2:f.value.length)}return l+=_Da(a),l}var dDa,pDa,fDa,lSr,cSr,gAi=bc(()=>{A_t();lAi();dDa=new Set([27,155]),pDa="0".codePointAt(0),fDa="9".codePointAt(0),lSr=new Set,cSr=new Map;for(let[e,t]of aV.codes)lSr.add(aV.color.ansi(t)),cSr.set(aV.color.ansi(e),aV.color.ansi(t))});var dAi={};sI(dAi,{createLogUpdate:()=>ASr,default:()=>SDa,logUpdateStderr:()=>vDa});import AAi from"node:process";function ASr(e,{showCursor:t=!1}={}){let r=0,n=gSr(e),a="",o=()=>{a="",n=gSr(e),r=0},l=(...A)=>{t||tSr.hide();let f=bDa(e,A.join(" ")+` -`),I=gSr(e);f===a&&n===I||(a=f,n=I,f=f_t(f,I,{trim:!1,hard:!0,wordWrap:!1}),e.write(YQe.eraseLines(r)+f),r=f.split(` -`).length)};return l.clear=()=>{e.write(YQe.eraseLines(r)),o()},l.done=()=>{o(),t||tSr.show()},l}var yDa,gSr,bDa,EDa,SDa,vDa,pAi=bc(()=>{Vgi();Jgi();oSr();gAi();gQe();yDa=24,gSr=({columns:e=80})=>e,bDa=(e,t)=>{let r=e.rows??yDa,n=t.split(` -`),a=Math.max(0,n.length-r);return a?uSr(t,K$(n.slice(0,a).join(` -`)).length+1):t};EDa=ASr(AAi.stdout),SDa=EDa,vDa=ASr(AAi.stderr)});function dSr(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var fAi=bc(()=>{});function X8(e,t,r){let n=[...e],a=[],o=typeof r=="number"?r:n.length,l=!1,A,f=0,I="";for(let[C,b]of n.entries()){let E=!1;if(hAi.includes(b)){let N=/\d[^m]*/.exec(e.slice(C,C+18));A=N&&N.length>0?N[0]:void 0,ft&&f<=o)I+=b;else if(f===t&&!l&&A!==void 0)I=IAi(a);else if(f>=o){I+=IAi(a,!0,A);break}}return I}var BDa,hAi,I_t,IAi,mAi=bc(()=>{fAi();A_t();BDa=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,hAi=["\x1B","\x9B"],I_t=e=>`${hAi[0]}[${e}m`,IAi=(e,t,r)=>{let n=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let l=aV.codes.get(Number.parseInt(a,10));if(l){let A=e.indexOf(l.toString());A===-1?n.push(I_t(t?l:o)):e.splice(A,1)}else if(t){n.push(I_t(0));break}else n.push(I_t(o))}if(t&&(n=n.filter((a,o)=>n.indexOf(a)===o),r!==void 0)){let a=I_t(aV.codes.get(Number.parseInt(r,10)));n=n.reduce((o,l)=>l===a?[l,...o]:[...o,l],[])}return n.join("")}});var _Ai={};sI(_Ai,{default:()=>CAi});function h_t(e,t,r){if(e.charAt(t)===" ")return t;let n=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*n;if(e.charAt(o)===" ")return o}return t}function CAi(e,t,r={}){let{position:n="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:l="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return l;let A=MM(e);if(A<=t)return e;if(n==="start"){if(o){let f=h_t(e,A-t+1,!0);return l+X8(e,f,A).trim()}return a===!0&&(l+=" "),l+X8(e,A-t+MM(l),A)}if(n==="middle"){a===!0&&(l=` ${l} `);let f=Math.floor(t/2);if(o){let I=h_t(e,f),C=h_t(e,A-(t-f)+1,!0);return X8(e,0,I)+l+X8(e,C,A).trim()}return X8(e,0,f)+l+X8(e,A-(t-f)+MM(l),A)}if(n==="end"){if(o){let f=h_t(e,t-1);return X8(e,0,f)+l}return a===!0&&(l=` ${l}`),X8(e,0,t-MM(l))+l}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${n}`)}var yAi=bc(()=>{mAi();nSr()});var LSr=H((U0u,Edi)=>{"use strict";var Aka=wt("child_process").spawn;function dka(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function pka(e,t,r,n){typeof r=="function"&&(n=r,r=void 0);var a=!1,o=Aka(e,t,r),l="",A="";o.stdout.on("data",function(f){l+=f.toString()}),o.stderr.on("data",function(f){A+=f.toString()}),o.on("error",function(f){a||(a=!0,n(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,A=dka(A),A)return n(new Error(A));n(null,l,f)}})}Edi.exports=pka});var vdi=H((K0u,Sdi)=>{"use strict";var fka=wt("os"),Ika=LSr();function hka(e){var t=["-A","-o","ppid,pid"];Ika("ps",t,function(r,n,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{n=n.split(fka.EOL);for(var o=[],l=1;l{"use strict";var mka=wt("os"),Cka=LSr();function _ka(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};Cka("wmic",t,r,function(n,a,o){if(n){e(n);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split(mka.EOL);for(var l=[],A=1;A{"use strict";var Rdi=wt("os"),yka={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},bka={ps:()=>vdi(),wmic:()=>wdi()},VSr=Rdi.platform();VSr.startsWith("win")&&(VSr="win");var Tdi=yka[VSr];function Eka(e){Tdi===void 0&&e(new Error(Rdi.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=bka[Tdi]();t(e)}Ndi.exports=Eka});var xdi=H((q0u,kdi)=>{"use strict";var Ska=Ddi();function vka(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}Ska(function(n,a){if(n){r(n);return}if(e===-1){for(var o=0;o0;){var I=a.pop();f[I[0]]?f[I[0]].push(I[1]):f[I[0]]=[I[1]]}for(var C=0,b=[l];C{"use strict";function Bka(e,t,r){return new Promise(function(n,a){e(t,r,function(o,l){if(o)return a(o);n(l)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var Gdi=xdi();function wka(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){Gdi(e,t,r);return}return Bka(Gdi,e,t)}Fdi.exports=wka});var C0=H(Gk=>{"use strict";var MSr=Symbol.for("yaml.alias"),qdi=Symbol.for("yaml.document"),N_t=Symbol.for("yaml.map"),$di=Symbol.for("yaml.pair"),HSr=Symbol.for("yaml.scalar"),D_t=Symbol.for("yaml.seq"),tee=Symbol.for("yaml.node.type"),Gka=e=>!!e&&typeof e=="object"&&e[tee]===MSr,Fka=e=>!!e&&typeof e=="object"&&e[tee]===qdi,Zka=e=>!!e&&typeof e=="object"&&e[tee]===N_t,Lka=e=>!!e&&typeof e=="object"&&e[tee]===$di,epi=e=>!!e&&typeof e=="object"&&e[tee]===HSr,Vka=e=>!!e&&typeof e=="object"&&e[tee]===D_t;function tpi(e){if(e&&typeof e=="object")switch(e[tee]){case N_t:case D_t:return!0}return!1}function Pka(e){if(e&&typeof e=="object")switch(e[tee]){case MSr:case N_t:case HSr:case D_t:return!0}return!1}var Wka=e=>(epi(e)||tpi(e))&&!!e.anchor;Gk.ALIAS=MSr;Gk.DOC=qdi;Gk.MAP=N_t;Gk.NODE_TYPE=tee;Gk.PAIR=$di;Gk.SCALAR=HSr;Gk.SEQ=D_t;Gk.hasAnchor=Wka;Gk.isAlias=Gka;Gk.isCollection=tpi;Gk.isDocument=Fka;Gk.isMap=Zka;Gk.isNode=Pka;Gk.isPair=Lka;Gk.isScalar=epi;Gk.isSeq=Vka});var eXe=H(YSr=>{"use strict";var NR=C0(),cV=Symbol("break visit"),rpi=Symbol("skip children"),J8=Symbol("remove node");function k_t(e,t){let r=npi(t);NR.isDocument(e)?YTe(null,e.contents,r,Object.freeze([e]))===J8&&(e.contents=null):YTe(null,e,r,Object.freeze([]))}k_t.BREAK=cV;k_t.SKIP=rpi;k_t.REMOVE=J8;function YTe(e,t,r,n){let a=ipi(e,t,r,n);if(NR.isNode(a)||NR.isPair(a))return spi(e,n,a),YTe(e,a,r,n);if(typeof a!="symbol"){if(NR.isCollection(t)){n=Object.freeze(n.concat(t));for(let o=0;o{"use strict";var opi=C0(),Oka=eXe(),Mka={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Hka=e=>e.replace(/[!,[\]{}]/g,t=>Mka[t]),tXe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let n=t.trim().split(/[ \t]+/),a=n.shift();switch(a){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[o,l]=n;return this.tags[o]=l,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=n;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let l=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,l),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let l=t.slice(2,-1);return l==="!"||l==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),l)}let[,n,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[n];if(o)try{return o+decodeURIComponent(a)}catch(l){return r(String(l)),null}return n==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,n]of Object.entries(this.tags))if(t.startsWith(n))return r+Hka(t.substring(n.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),a;if(t&&n.length>0&&opi.isNode(t.contents)){let o={};Oka.visit(t.contents,(l,A)=>{opi.isNode(A)&&A.tag&&(o[A.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,l]of n)o==="!!"&&l==="tag:yaml.org,2002:"||(!t||a.some(A=>A.startsWith(l)))&&r.push(`%TAG ${o} ${l}`);return r.join(` -`)}};tXe.defaultYaml={explicit:!1,version:"1.2"};tXe.defaultTags={"!!":"tag:yaml.org,2002:"};api.Directives=tXe});var G_t=H(rXe=>{"use strict";var cpi=C0(),Yka=eXe();function Qka(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function lpi(e){let t=new Set;return Yka.visit(e,{Value(r,n){n.anchor&&t.add(n.anchor)}}),t}function upi(e,t){for(let r=1;;++r){let n=`${e}${r}`;if(!t.has(n))return n}}function Xka(e,t){let r=[],n=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=lpi(e));let l=upi(t,a);return a.add(l),l},setAnchors:()=>{for(let o of r){let l=n.get(o);if(typeof l=="object"&&l.anchor&&(cpi.isScalar(l.node)||cpi.isCollection(l.node)))l.node.anchor=l.anchor;else{let A=new Error("Failed to resolve repeated object (this should not happen)");throw A.source=o,A}}},sourceObjects:n}}rXe.anchorIsValid=Qka;rXe.anchorNames=lpi;rXe.createNodeAnchors=Xka;rXe.findNewAnchor=upi});var XSr=H(gpi=>{"use strict";function nXe(e,t,r,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let a=0,o=n.length;a{"use strict";var Jka=C0();function Api(e,t,r){if(Array.isArray(e))return e.map((n,a)=>Api(n,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!Jka.hasAnchor(e))return e.toJSON(t,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(e,n),r.onCreate=o=>{n.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}dpi.toJS=Api});var F_t=H(fpi=>{"use strict";var Uka=XSr(),ppi=C0(),Kka=Nae(),JSr=class{constructor(t){Object.defineProperty(this,ppi.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:n,onAnchor:a,reviver:o}={}){if(!ppi.isDocument(t))throw new TypeError("A document argument is required");let l={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},A=Kka.toJS(this,"",l);if(typeof a=="function")for(let{count:f,res:I}of l.anchors.values())a(I,f);return typeof o=="function"?Uka.applyReviver(o,{"":A},"",A):A}};fpi.NodeBase=JSr});var iXe=H(hpi=>{"use strict";var jka=G_t(),Ipi=eXe(),Z_t=C0(),zka=F_t(),qka=Nae(),USr=class extends zka.NodeBase{constructor(t){super(Z_t.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return Ipi.visit(t,{Node:(n,a)=>{if(a===this)return Ipi.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:n,doc:a,maxAliasCount:o}=r,l=this.resolve(a);if(!l){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let A=n.get(l);if(A||(qka.toJS(l,null,r),A=n.get(l)),!A||A.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(A.count+=1,A.aliasCount===0&&(A.aliasCount=L_t(a,l,n)),A.count*A.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return A.res}toString(t,r,n){let a=`*${this.source}`;if(t){if(jka.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function L_t(e,t,r){if(Z_t.isAlias(t)){let n=t.resolve(e),a=r&&n&&r.get(n);return a?a.count*a.aliasCount:0}else if(Z_t.isCollection(t)){let n=0;for(let a of t.items){let o=L_t(e,a,r);o>n&&(n=o)}return n}else if(Z_t.isPair(t)){let n=L_t(e,t.key,r),a=L_t(e,t.value,r);return Math.max(n,a)}return 1}hpi.Alias=USr});var gT=H(KSr=>{"use strict";var $ka=C0(),exa=F_t(),txa=Nae(),rxa=e=>!e||typeof e!="function"&&typeof e!="object",Dae=class extends exa.NodeBase{constructor(t){super($ka.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:txa.toJS(this.value,t,r)}toString(){return String(this.value)}};Dae.BLOCK_FOLDED="BLOCK_FOLDED";Dae.BLOCK_LITERAL="BLOCK_LITERAL";Dae.PLAIN="PLAIN";Dae.QUOTE_DOUBLE="QUOTE_DOUBLE";Dae.QUOTE_SINGLE="QUOTE_SINGLE";KSr.Scalar=Dae;KSr.isScalarValue=rxa});var sXe=H(Cpi=>{"use strict";var nxa=iXe(),Whe=C0(),mpi=gT(),ixa="tag:yaml.org,2002:";function sxa(e,t,r){if(t){let n=r.filter(o=>o.tag===t),a=n.find(o=>!o.format)??n[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(n=>n.identify?.(e)&&!n.format)}function oxa(e,t,r){if(Whe.isDocument(e)&&(e=e.contents),Whe.isNode(e))return e;if(Whe.isPair(e)){let b=r.schema[Whe.MAP].createNode?.(r.schema,null,r);return b.items.push(e),b}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:n,onAnchor:a,onTagObj:o,schema:l,sourceObjects:A}=r,f;if(n&&e&&typeof e=="object"){if(f=A.get(e),f)return f.anchor||(f.anchor=a(e)),new nxa.Alias(f.anchor);f={anchor:null,node:null},A.set(e,f)}t?.startsWith("!!")&&(t=ixa+t.slice(2));let I=sxa(e,t,l.tags);if(!I){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let b=new mpi.Scalar(e);return f&&(f.node=b),b}I=e instanceof Map?l[Whe.MAP]:Symbol.iterator in Object(e)?l[Whe.SEQ]:l[Whe.MAP]}o&&(o(I),delete r.onTagObj);let C=I?.createNode?I.createNode(r.schema,e,r):typeof I?.nodeClass?.from=="function"?I.nodeClass.from(r.schema,e,r):new mpi.Scalar(e);return t?C.tag=t:I.default||(C.tag=I.tag),f&&(f.node=C),C}Cpi.createNode=oxa});var P_t=H(V_t=>{"use strict";var axa=sXe(),U8=C0(),cxa=F_t();function jSr(e,t,r){let n=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let l=[];l[o]=n,n=l}else n=new Map([[o,n]])}return axa.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var _pi=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,zSr=class extends cxa.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(n=>U8.isNode(n)||U8.isPair(n)?n.clone(t):n),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(_pi(t))this.add(r);else{let[n,...a]=t,o=this.get(n,!0);if(U8.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(n,jSr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}deleteIn(t){let[r,...n]=t;if(n.length===0)return this.delete(r);let a=this.get(r,!0);if(U8.isCollection(a))return a.deleteIn(n);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}getIn(t,r){let[n,...a]=t,o=this.get(n,!0);return a.length===0?!r&&U8.isScalar(o)?o.value:o:U8.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!U8.isPair(r))return!1;let n=r.value;return n==null||t&&U8.isScalar(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(t){let[r,...n]=t;if(n.length===0)return this.has(r);let a=this.get(r,!0);return U8.isCollection(a)?a.hasIn(n):!1}setIn(t,r){let[n,...a]=t;if(a.length===0)this.set(n,r);else{let o=this.get(n,!0);if(U8.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(n,jSr(this.schema,a,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}}};V_t.Collection=zSr;V_t.collectionFromPath=jSr;V_t.isEmptyPath=_pi});var oXe=H(W_t=>{"use strict";var lxa=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function qSr(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var uxa=(e,t,r)=>e.endsWith(` -`)?qSr(r,t):r.includes(` -`)?` -`+qSr(r,t):(e.endsWith(" ")?"":" ")+r;W_t.indentComment=qSr;W_t.lineComment=uxa;W_t.stringifyComment=lxa});var bpi=H(aXe=>{"use strict";var gxa="flow",$Sr="block",O_t="quoted";function Axa(e,t,r="flow",{indentAtStart:n,lineWidth:a=80,minContentWidth:o=20,onFold:l,onOverflow:A}={}){if(!a||a<0)return e;aa-Math.max(2,o)?I.push(0):b=a-n);let E,N,B=!1,F=-1,Q=-1,X=-1;r===$Sr&&(F=ypi(e,F,t.length),F!==-1&&(b=F+f));for(let ne;ne=e[F+=1];){if(r===O_t&&ne==="\\"){switch(Q=F,e[F+1]){case"x":F+=3;break;case"u":F+=5;break;case"U":F+=9;break;default:F+=1}X=F}if(ne===` -`)r===$Sr&&(F=ypi(e,F,t.length)),b=F+t.length+f,E=void 0;else{if(ne===" "&&N&&N!==" "&&N!==` -`&&N!==" "){let ce=e[F+1];ce&&ce!==" "&&ce!==` -`&&ce!==" "&&(E=F)}if(F>=b)if(E)I.push(E),b=E+f,E=void 0;else if(r===O_t){for(;N===" "||N===" ";)N=ne,ne=e[F+=1],B=!0;let ce=F>X+1?F-2:Q-1;if(C[ce])return e;I.push(ce),C[ce]=!0,b=ce+f,E=void 0}else B=!0}N=ne}if(B&&A&&A(),I.length===0)return e;l&&l();let ae=e.slice(0,I[0]);for(let ne=0;ne{"use strict";var K8=gT(),kae=bpi(),H_t=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Y_t=e=>/^(%|---|\.\.\.)/m.test(e);function dxa(e,t,r){if(!t||t<0)return!1;let n=t-r,a=e.length;if(a<=n)return!1;for(let o=0,l=0;on)return!0;if(l=o+1,a-l<=n)return!1}return!0}function cXe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:n}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(Y_t(e)?" ":""),l="",A=0;for(let f=0,I=r[f];I;I=r[++f])if(I===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(l+=r.slice(A,f)+"\\ ",f+=1,A=f,I="\\"),I==="\\")switch(r[f+1]){case"u":{l+=r.slice(A,f);let C=r.substr(f+2,4);switch(C){case"0000":l+="\\0";break;case"0007":l+="\\a";break;case"000b":l+="\\v";break;case"001b":l+="\\e";break;case"0085":l+="\\N";break;case"00a0":l+="\\_";break;case"2028":l+="\\L";break;case"2029":l+="\\P";break;default:C.substr(0,2)==="00"?l+="\\x"+C.substr(2):l+=r.substr(f,6)}f+=5,A=f+1}break;case"n":if(n||r[f+2]==='"'||r.length -`;let b,E;for(E=r.length;E>0;--E){let ue=r[E-1];if(ue!==` -`&&ue!==" "&&ue!==" ")break}let N=r.substring(E),B=N.indexOf(` -`);B===-1?b="-":r===N||B!==N.length-1?(b="+",o&&o()):b="",N&&(r=r.slice(0,-N.length),N[N.length-1]===` -`&&(N=N.slice(0,-1)),N=N.replace(tvr,`$&${I}`));let F=!1,Q,X=-1;for(Q=0;Q")+(F?I?"2":"1":"")+b;if(e&&(ce+=" "+A(e.replace(/ ?[\r\n]+/g," ")),a&&a()),C)return r=r.replace(/\n+/g,`$&${I}`),`${ce} -${I}${ae}${r}${N}`;r=r.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${I}`);let fe=kae.foldFlowLines(`${ae}${r}${N}`,I,kae.FOLD_BLOCK,H_t(n,!0));return`${ce} -${I}${fe}`}function pxa(e,t,r,n){let{type:a,value:o}=e,{actualString:l,implicitKey:A,indent:f,indentStep:I,inFlow:C}=t;if(A&&o.includes(` -`)||C&&/[[\]{},]/.test(o))return XTe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return A||C||!o.includes(` -`)?XTe(o,t):M_t(e,t,r,n);if(!A&&!C&&a!==K8.Scalar.PLAIN&&o.includes(` -`))return M_t(e,t,r,n);if(Y_t(o)){if(f==="")return t.forceBlockIndent=!0,M_t(e,t,r,n);if(A&&f===I)return XTe(o,t)}let b=o.replace(/\n+/g,`$& -${f}`);if(l){let E=F=>F.default&&F.tag!=="tag:yaml.org,2002:str"&&F.test?.test(b),{compat:N,tags:B}=t.doc.schema;if(B.some(E)||N?.some(E))return XTe(o,t)}return A?b:kae.foldFlowLines(b,f,kae.FOLD_FLOW,H_t(t,!1))}function fxa(e,t,r,n){let{implicitKey:a,inFlow:o}=t,l=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:A}=e;A!==K8.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(l.value)&&(A=K8.Scalar.QUOTE_DOUBLE);let f=C=>{switch(C){case K8.Scalar.BLOCK_FOLDED:case K8.Scalar.BLOCK_LITERAL:return a||o?XTe(l.value,t):M_t(l,t,r,n);case K8.Scalar.QUOTE_DOUBLE:return cXe(l.value,t);case K8.Scalar.QUOTE_SINGLE:return evr(l.value,t);case K8.Scalar.PLAIN:return pxa(l,t,r,n);default:return null}},I=f(A);if(I===null){let{defaultKeyType:C,defaultStringType:b}=t.options,E=a&&C||b;if(I=f(E),I===null)throw new Error(`Unsupported default string type ${E}`)}return I}Epi.stringifyString=fxa});var uXe=H(rvr=>{"use strict";var Ixa=G_t(),xae=C0(),hxa=oXe(),mxa=lXe();function Cxa(e,t){let r=Object.assign({blockQuote:!0,commentString:hxa.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),n;switch(r.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:n,options:r}}function _xa(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,n;if(xae.isScalar(t)){n=t.value;let a=e.filter(o=>o.identify?.(n));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else n=t,r=e.find(a=>a.nodeClass&&n instanceof a.nodeClass);if(!r){let a=n?.constructor?.name??typeof n;throw new Error(`Tag not resolved for ${a} value`)}return r}function yxa(e,t,{anchors:r,doc:n}){if(!n.directives)return"";let a=[],o=(xae.isScalar(e)||xae.isCollection(e))&&e.anchor;o&&Ixa.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let l=e.tag?e.tag:t.default?null:t.tag;return l&&a.push(n.directives.tagString(l)),a.join(" ")}function bxa(e,t,r,n){if(xae.isPair(e))return e.toString(t,r,n);if(xae.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=xae.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=_xa(t.doc.schema.tags,o));let l=yxa(o,a,t);l.length>0&&(t.indentAtStart=(t.indentAtStart??0)+l.length+1);let A=typeof a.stringify=="function"?a.stringify(o,t,r,n):xae.isScalar(o)?mxa.stringifyString(o,t,r,n):o.toString(t,r,n);return l?xae.isScalar(o)||A[0]==="{"||A[0]==="["?`${l} ${A}`:`${l} -${t.indent}${A}`:A}rvr.createStringifyContext=Cxa;rvr.stringify=bxa});var wpi=H(Bpi=>{"use strict";var ree=C0(),Spi=gT(),vpi=uXe(),gXe=oXe();function Exa({key:e,value:t},r,n,a){let{allNullValues:o,doc:l,indent:A,indentStep:f,options:{commentString:I,indentSeq:C,simpleKeys:b}}=r,E=ree.isNode(e)&&e.comment||null;if(b){if(E)throw new Error("With simple keys, key nodes cannot have comments");if(ree.isCollection(e)||!ree.isNode(e)&&typeof e=="object"){let de="With simple keys, collection cannot be used as a key value";throw new Error(de)}}let N=!b&&(!e||E&&t==null&&!r.inFlow||ree.isCollection(e)||(ree.isScalar(e)?e.type===Spi.Scalar.BLOCK_FOLDED||e.type===Spi.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!N&&(b||!o),indent:A+f});let B=!1,F=!1,Q=vpi.stringify(e,r,()=>B=!0,()=>F=!0);if(!N&&!r.inFlow&&Q.length>1024){if(b)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");N=!0}if(r.inFlow){if(o||t==null)return B&&n&&n(),Q===""?"?":N?`? ${Q}`:Q}else if(o&&!b||t==null&&N)return Q=`? ${Q}`,E&&!B?Q+=gXe.lineComment(Q,r.indent,I(E)):F&&a&&a(),Q;B&&(E=null),N?(E&&(Q+=gXe.lineComment(Q,r.indent,I(E))),Q=`? ${Q} -${A}:`):(Q=`${Q}:`,E&&(Q+=gXe.lineComment(Q,r.indent,I(E))));let X,ae,ne;ree.isNode(t)?(X=!!t.spaceBefore,ae=t.commentBefore,ne=t.comment):(X=!1,ae=null,ne=null,t&&typeof t=="object"&&(t=l.createNode(t))),r.implicitKey=!1,!N&&!E&&ree.isScalar(t)&&(r.indentAtStart=Q.length+1),F=!1,!C&&f.length>=2&&!r.inFlow&&!N&&ree.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ce=!1,fe=vpi.stringify(t,r,()=>ce=!0,()=>F=!0),ue=" ";if(E||X||ae){if(ue=X?` -`:"",ae){let de=I(ae);ue+=` -${gXe.indentComment(de,r.indent)}`}fe===""&&!r.inFlow?ue===` -`&&(ue=` - -`):ue+=` -${r.indent}`}else if(!N&&ree.isCollection(t)){let de=fe[0],be=fe.indexOf(` -`),Se=be!==-1,De=r.inFlow??t.flow??t.items.length===0;if(Se||!De){let k=!1;if(Se&&(de==="&"||de==="!")){let et=fe.indexOf(" ");de==="&"&&et!==-1&&et{"use strict";function Sxa(e,...t){e==="debug"&&console.log(...t)}function vxa(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}nvr.debug=Sxa;nvr.warn=vxa});var avr=H(Rpi=>{"use strict";var Bxa=ivr(),wxa=uXe(),JTe=C0(),Txa=gT(),svr=Nae(),Tpi="<<";function Rxa(e,t,{key:r,value:n}){if(e?.doc.schema.merge&&Nxa(r))if(n=JTe.isAlias(n)?n.resolve(e.doc):n,JTe.isSeq(n))for(let a of n.items)ovr(e,t,a);else if(Array.isArray(n))for(let a of n)ovr(e,t,a);else ovr(e,t,n);else{let a=svr.toJS(r,"",e);if(t instanceof Map)t.set(a,svr.toJS(n,a,e));else if(t instanceof Set)t.add(a);else{let o=Dxa(r,a,e),l=svr.toJS(n,o,e);o in t?Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0}):t[o]=l}}return t}var Nxa=e=>e===Tpi||JTe.isScalar(e)&&e.value===Tpi&&(!e.type||e.type===Txa.Scalar.PLAIN);function ovr(e,t,r){let n=e&&JTe.isAlias(r)?r.resolve(e.doc):r;if(!JTe.isMap(n))throw new Error("Merge sources must be maps or map aliases");let a=n.toJSON(null,e,Map);for(let[o,l]of a)t instanceof Map?t.has(o)||t.set(o,l):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0});return t}function Dxa(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(JTe.isNode(e)&&r?.doc){let n=wxa.createStringifyContext(r.doc,{});n.anchors=new Set;for(let o of r.anchors.keys())n.anchors.add(o.anchor);n.inFlow=!0,n.inStringifyKey=!0;let a=e.toString(n);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),Bxa.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}Rpi.addPairToJSMap=Rxa});var Gae=H(cvr=>{"use strict";var Npi=sXe(),kxa=wpi(),xxa=avr(),Q_t=C0();function Gxa(e,t,r){let n=Npi.createNode(e,void 0,r),a=Npi.createNode(t,void 0,r);return new X_t(n,a)}var X_t=class e{constructor(t,r=null){Object.defineProperty(this,Q_t.NODE_TYPE,{value:Q_t.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:n}=this;return Q_t.isNode(r)&&(r=r.clone(t)),Q_t.isNode(n)&&(n=n.clone(t)),new e(r,n)}toJSON(t,r){let n=r?.mapAsMap?new Map:{};return xxa.addPairToJSMap(r,n,this)}toString(t,r,n){return t?.doc?kxa.stringifyPair(this,t,r,n):JSON.stringify(this)}};cvr.Pair=X_t;cvr.createPair=Gxa});var lvr=H(kpi=>{"use strict";var Ohe=C0(),Dpi=uXe(),J_t=oXe();function Fxa(e,t,r){return(t.inFlow??e.flow?Lxa:Zxa)(e,t,r)}function Zxa({comment:e,items:t},r,{blockItemPrefix:n,flowChars:a,itemIndent:o,onChompKeep:l,onComment:A}){let{indent:f,options:{commentString:I}}=r,C=Object.assign({},r,{indent:o,type:null}),b=!1,E=[];for(let B=0;BQ=null,()=>b=!0);Q&&(X+=J_t.lineComment(X,o,I(Q))),b&&Q&&(b=!1),E.push(n+X)}let N;if(E.length===0)N=a.start+a.end;else{N=E[0];for(let B=1;BQ=null);BC||X.includes(` -`))&&(I=!0),b.push(X),C=b.length}let{start:E,end:N}=r;if(b.length===0)return E+N;if(!I){let B=b.reduce((F,Q)=>F+Q.length+2,2);I=t.options.lineWidth>0&&B>t.options.lineWidth}if(I){let B=E;for(let F of b)B+=F?` -${o}${a}${F}`:` -`;return`${B} -${a}${N}`}else return`${E}${l}${b.join(" ")}${l}${N}`}function U_t({indent:e,options:{commentString:t}},r,n,a){if(n&&a&&(n=n.replace(/^\n+/,"")),n){let o=J_t.indentComment(t(n),e);r.push(o.trimStart())}}kpi.stringifyCollection=Fxa});var Zae=H(gvr=>{"use strict";var Vxa=lvr(),Pxa=avr(),Wxa=P_t(),Fae=C0(),K_t=Gae(),Oxa=gT();function AXe(e,t){let r=Fae.isScalar(t)?t.value:t;for(let n of e)if(Fae.isPair(n)&&(n.key===t||n.key===r||Fae.isScalar(n.key)&&n.key.value===r))return n}var uvr=class extends Wxa.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Fae.MAP,t),this.items=[]}static from(t,r,n){let{keepUndefined:a,replacer:o}=n,l=new this(t),A=(f,I)=>{if(typeof o=="function")I=o.call(r,f,I);else if(Array.isArray(o)&&!o.includes(f))return;(I!==void 0||a)&&l.items.push(K_t.createPair(f,I,n))};if(r instanceof Map)for(let[f,I]of r)A(f,I);else if(r&&typeof r=="object")for(let f of Object.keys(r))A(f,r[f]);return typeof t.sortMapEntries=="function"&&l.items.sort(t.sortMapEntries),l}add(t,r){let n;Fae.isPair(t)?n=t:!t||typeof t!="object"||!("key"in t)?n=new K_t.Pair(t,t?.value):n=new K_t.Pair(t.key,t.value);let a=AXe(this.items,n.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${n.key} already set`);Fae.isScalar(a.value)&&Oxa.isScalarValue(n.value)?a.value.value=n.value:a.value=n.value}else if(o){let l=this.items.findIndex(A=>o(n,A)<0);l===-1?this.items.push(n):this.items.splice(l,0,n)}else this.items.push(n)}delete(t){let r=AXe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=AXe(this.items,t)?.value;return(!r&&Fae.isScalar(a)?a.value:a)??void 0}has(t){return!!AXe(this.items,t)}set(t,r){this.add(new K_t.Pair(t,r),!0)}toJSON(t,r,n){let a=n?new n:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)Pxa.addPairToJSMap(r,a,o);return a}toString(t,r,n){if(!t)return JSON.stringify(this);for(let a of this.items)if(!Fae.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),Vxa.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:n,onComment:r})}};gvr.YAMLMap=uvr;gvr.findPair=AXe});var UTe=H(Gpi=>{"use strict";var Mxa=C0(),xpi=Zae(),Hxa={collection:"map",default:!0,nodeClass:xpi.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return Mxa.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>xpi.YAMLMap.from(e,t,r)};Gpi.map=Hxa});var Lae=H(Fpi=>{"use strict";var Yxa=sXe(),Qxa=lvr(),Xxa=P_t(),z_t=C0(),Jxa=gT(),Uxa=Nae(),Avr=class extends Xxa.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(z_t.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=j_t(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let n=j_t(t);if(typeof n!="number")return;let a=this.items[n];return!r&&z_t.isScalar(a)?a.value:a}has(t){let r=j_t(t);return typeof r=="number"&&r=0?t:null}Fpi.YAMLSeq=Avr});var KTe=H(Lpi=>{"use strict";var Kxa=C0(),Zpi=Lae(),jxa={collection:"seq",default:!0,nodeClass:Zpi.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return Kxa.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>Zpi.YAMLSeq.from(e,t,r)};Lpi.seq=jxa});var dXe=H(Vpi=>{"use strict";var zxa=lXe(),qxa={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,n){return t=Object.assign({actualString:!0},t),zxa.stringifyString(e,t,r,n)}};Vpi.string=qxa});var q_t=H(Opi=>{"use strict";var Ppi=gT(),Wpi={identify:e=>e==null,createNode:()=>new Ppi.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new Ppi.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&Wpi.test.test(e)?e:t.options.nullStr};Opi.nullTag=Wpi});var dvr=H(Hpi=>{"use strict";var $xa=gT(),Mpi={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new $xa.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&Mpi.test.test(e)){let n=e[0]==="t"||e[0]==="T";if(t===n)return e}return t?r.options.trueStr:r.options.falseStr}};Hpi.boolTag=Mpi});var jTe=H(Ypi=>{"use strict";function eGa({format:e,minFractionDigits:t,tag:r,value:n}){if(typeof n=="bigint")return String(n);let a=typeof n=="number"?n:Number(n);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(n);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let l=o.indexOf(".");l<0&&(l=o.length,o+=".");let A=t-(o.length-l-1);for(;A-- >0;)o+="0"}return o}Ypi.stringifyNumber=eGa});var fvr=H($_t=>{"use strict";var tGa=gT(),pvr=jTe(),rGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:pvr.stringifyNumber},nGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():pvr.stringifyNumber(e)}},iGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new tGa.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:pvr.stringifyNumber};$_t.float=iGa;$_t.floatExp=nGa;$_t.floatNaN=rGa});var hvr=H(t0t=>{"use strict";var Qpi=jTe(),e0t=e=>typeof e=="bigint"||Number.isInteger(e),Ivr=(e,t,r,{intAsBigInt:n})=>n?BigInt(e):parseInt(e.substring(t),r);function Xpi(e,t,r){let{value:n}=e;return e0t(n)&&n>=0?r+n.toString(t):Qpi.stringifyNumber(e)}var sGa={identify:e=>e0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>Ivr(e,2,8,r),stringify:e=>Xpi(e,8,"0o")},oGa={identify:e0t,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>Ivr(e,0,10,r),stringify:Qpi.stringifyNumber},aGa={identify:e=>e0t(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>Ivr(e,2,16,r),stringify:e=>Xpi(e,16,"0x")};t0t.int=oGa;t0t.intHex=aGa;t0t.intOct=sGa});var Upi=H(Jpi=>{"use strict";var cGa=UTe(),lGa=q_t(),uGa=KTe(),gGa=dXe(),AGa=dvr(),mvr=fvr(),Cvr=hvr(),dGa=[cGa.map,uGa.seq,gGa.string,lGa.nullTag,AGa.boolTag,Cvr.intOct,Cvr.int,Cvr.intHex,mvr.floatNaN,mvr.floatExp,mvr.float];Jpi.schema=dGa});var zpi=H(jpi=>{"use strict";var pGa=gT(),fGa=UTe(),IGa=KTe();function Kpi(e){return typeof e=="bigint"||Number.isInteger(e)}var r0t=({value:e})=>JSON.stringify(e),hGa=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:r0t},{identify:e=>e==null,createNode:()=>new pGa.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:r0t},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:r0t},{identify:Kpi,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>Kpi(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:r0t}],mGa={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},CGa=[fGa.map,IGa.seq].concat(hGa,mGa);jpi.schema=CGa});var yvr=H(qpi=>{"use strict";var _vr=gT(),_Ga=lXe(),yGa={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),n=new Uint8Array(r.length);for(let a=0;a{"use strict";var n0t=C0(),bvr=Gae(),bGa=gT(),EGa=Lae();function $pi(e,t){if(n0t.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=n.items[0]||new bvr.Pair(new bGa.Scalar(null));if(n.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${n.commentBefore} -${a.key.commentBefore}`:n.commentBefore),n.comment){let o=a.value??a.key;o.comment=o.comment?`${n.comment} -${o.comment}`:n.comment}n=a}e.items[r]=n0t.isPair(n)?n:new bvr.Pair(n)}}else t("Expected a sequence for this tag");return e}function efi(e,t,r){let{replacer:n}=r,a=new EGa.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let l of t){typeof n=="function"&&(l=n.call(t,String(o++),l));let A,f;if(Array.isArray(l))if(l.length===2)A=l[0],f=l[1];else throw new TypeError(`Expected [key, value] tuple: ${l}`);else if(l&&l instanceof Object){let I=Object.keys(l);if(I.length===1)A=I[0],f=l[A];else throw new TypeError(`Expected tuple with one key, not ${I.length} keys`)}else A=l;a.items.push(bvr.createPair(A,f,r))}return a}var SGa={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:$pi,createNode:efi};i0t.createPairs=efi;i0t.pairs=SGa;i0t.resolvePairs=$pi});var vvr=H(Svr=>{"use strict";var tfi=C0(),Evr=Nae(),pXe=Zae(),vGa=Lae(),rfi=s0t(),Mhe=class e extends vGa.YAMLSeq{constructor(){super(),this.add=pXe.YAMLMap.prototype.add.bind(this),this.delete=pXe.YAMLMap.prototype.delete.bind(this),this.get=pXe.YAMLMap.prototype.get.bind(this),this.has=pXe.YAMLMap.prototype.has.bind(this),this.set=pXe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let n=new Map;r?.onCreate&&r.onCreate(n);for(let a of this.items){let o,l;if(tfi.isPair(a)?(o=Evr.toJS(a.key,"",r),l=Evr.toJS(a.value,o,r)):o=Evr.toJS(a,"",r),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,l)}return n}static from(t,r,n){let a=rfi.createPairs(t,r,n),o=new this;return o.items=a.items,o}};Mhe.tag="tag:yaml.org,2002:omap";var BGa={collection:"seq",identify:e=>e instanceof Map,nodeClass:Mhe,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=rfi.resolvePairs(e,t),n=[];for(let{key:a}of r.items)tfi.isScalar(a)&&(n.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):n.push(a.value));return Object.assign(new Mhe,r)},createNode:(e,t,r)=>Mhe.from(e,t,r)};Svr.YAMLOMap=Mhe;Svr.omap=BGa});var afi=H(Bvr=>{"use strict";var nfi=gT();function ifi({value:e,source:t},r){return t&&(e?sfi:ofi).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var sfi={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new nfi.Scalar(!0),stringify:ifi},ofi={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new nfi.Scalar(!1),stringify:ifi};Bvr.falseTag=ofi;Bvr.trueTag=sfi});var cfi=H(o0t=>{"use strict";var wGa=gT(),wvr=jTe(),TGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:wvr.stringifyNumber},RGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():wvr.stringifyNumber(e)}},NGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new wGa.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let n=e.substring(r+1).replace(/_/g,"");n[n.length-1]==="0"&&(t.minFractionDigits=n.length)}return t},stringify:wvr.stringifyNumber};o0t.float=NGa;o0t.floatExp=RGa;o0t.floatNaN=TGa});var ufi=H(IXe=>{"use strict";var lfi=jTe(),fXe=e=>typeof e=="bigint"||Number.isInteger(e);function a0t(e,t,r,{intAsBigInt:n}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),n){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let l=BigInt(e);return a==="-"?BigInt(-1)*l:l}let o=parseInt(e,r);return a==="-"?-1*o:o}function Tvr(e,t,r){let{value:n}=e;if(fXe(n)){let a=n.toString(t);return n<0?"-"+r+a.substr(1):r+a}return lfi.stringifyNumber(e)}var DGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>a0t(e,2,2,r),stringify:e=>Tvr(e,2,"0b")},kGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>a0t(e,1,8,r),stringify:e=>Tvr(e,8,"0")},xGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>a0t(e,0,10,r),stringify:lfi.stringifyNumber},GGa={identify:fXe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>a0t(e,2,16,r),stringify:e=>Tvr(e,16,"0x")};IXe.int=xGa;IXe.intBin=DGa;IXe.intHex=GGa;IXe.intOct=kGa});var Nvr=H(Rvr=>{"use strict";var u0t=C0(),c0t=Gae(),l0t=Zae(),Hhe=class e extends l0t.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;u0t.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new c0t.Pair(t.key,null):r=new c0t.Pair(t,null),l0t.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let n=l0t.findPair(this.items,t);return!r&&u0t.isPair(n)?u0t.isScalar(n.key)?n.key.value:n.key:n}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let n=l0t.findPair(this.items,t);n&&!r?this.items.splice(this.items.indexOf(n),1):!n&&r&&this.items.push(new c0t.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,n){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,n);throw new Error("Set items must all have null values")}static from(t,r,n){let{replacer:a}=n,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let l of r)typeof a=="function"&&(l=a.call(r,l,l)),o.items.push(c0t.createPair(l,null,n));return o}};Hhe.tag="tag:yaml.org,2002:set";var FGa={collection:"map",identify:e=>e instanceof Set,nodeClass:Hhe,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Hhe.from(e,t,r),resolve(e,t){if(u0t.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new Hhe,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};Rvr.YAMLSet=Hhe;Rvr.set=FGa});var kvr=H(g0t=>{"use strict";var ZGa=jTe();function Dvr(e,t){let r=e[0],n=r==="-"||r==="+"?e.substring(1):e,a=l=>t?BigInt(l):Number(l),o=n.replace(/_/g,"").split(":").reduce((l,A)=>l*a(60)+a(A),a(0));return r==="-"?a(-1)*o:o}function gfi(e){let{value:t}=e,r=l=>l;if(typeof t=="bigint")r=l=>BigInt(l);else if(isNaN(t)||!isFinite(t))return ZGa.stringifyNumber(e);let n="";t<0&&(n="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),n+o.map(l=>String(l).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var LGa={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>Dvr(e,r),stringify:gfi},VGa={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>Dvr(e,!1),stringify:gfi},Afi={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(Afi.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,n,a,o,l,A]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,I=Date.UTC(r,n-1,a,o||0,l||0,A||0,f),C=t[8];if(C&&C!=="Z"){let b=Dvr(C,!1);Math.abs(b)<30&&(b*=60),I-=6e4*b}return new Date(I)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};g0t.floatTime=VGa;g0t.intTime=LGa;g0t.timestamp=Afi});var ffi=H(pfi=>{"use strict";var PGa=UTe(),WGa=q_t(),OGa=KTe(),MGa=dXe(),HGa=yvr(),dfi=afi(),xvr=cfi(),A0t=ufi(),YGa=vvr(),QGa=s0t(),XGa=Nvr(),Gvr=kvr(),JGa=[PGa.map,OGa.seq,MGa.string,WGa.nullTag,dfi.trueTag,dfi.falseTag,A0t.intBin,A0t.intOct,A0t.int,A0t.intHex,xvr.floatNaN,xvr.floatExp,xvr.float,HGa.binary,YGa.omap,QGa.pairs,XGa.set,Gvr.intTime,Gvr.floatTime,Gvr.timestamp];pfi.schema=JGa});var vfi=H(Lvr=>{"use strict";var Cfi=UTe(),UGa=q_t(),_fi=KTe(),KGa=dXe(),jGa=dvr(),Fvr=fvr(),Zvr=hvr(),zGa=Upi(),qGa=zpi(),yfi=yvr(),bfi=vvr(),Efi=s0t(),Ifi=ffi(),Sfi=Nvr(),d0t=kvr(),hfi=new Map([["core",zGa.schema],["failsafe",[Cfi.map,_fi.seq,KGa.string]],["json",qGa.schema],["yaml11",Ifi.schema],["yaml-1.1",Ifi.schema]]),mfi={binary:yfi.binary,bool:jGa.boolTag,float:Fvr.float,floatExp:Fvr.floatExp,floatNaN:Fvr.floatNaN,floatTime:d0t.floatTime,int:Zvr.int,intHex:Zvr.intHex,intOct:Zvr.intOct,intTime:d0t.intTime,map:Cfi.map,null:UGa.nullTag,omap:bfi.omap,pairs:Efi.pairs,seq:_fi.seq,set:Sfi.set,timestamp:d0t.timestamp},$Ga={"tag:yaml.org,2002:binary":yfi.binary,"tag:yaml.org,2002:omap":bfi.omap,"tag:yaml.org,2002:pairs":Efi.pairs,"tag:yaml.org,2002:set":Sfi.set,"tag:yaml.org,2002:timestamp":d0t.timestamp};function eFa(e,t){let r=hfi.get(t);if(!r)if(Array.isArray(e))r=[];else{let n=Array.from(hfi.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${n} or define customTags array`)}if(Array.isArray(e))for(let n of e)r=r.concat(n);else typeof e=="function"&&(r=e(r.slice()));return r.map(n=>{if(typeof n!="string")return n;let a=mfi[n];if(a)return a;let o=Object.keys(mfi).map(l=>JSON.stringify(l)).join(", ");throw new Error(`Unknown custom tag "${n}"; use one of ${o}`)})}Lvr.coreKnownTags=$Ga;Lvr.getTags=eFa});var Wvr=H(Bfi=>{"use strict";var Vvr=C0(),tFa=UTe(),rFa=KTe(),nFa=dXe(),p0t=vfi(),iFa=(e,t)=>e.keyt.key?1:0,Pvr=class e{constructor({compat:t,customTags:r,merge:n,resolveKnownTags:a,schema:o,sortMapEntries:l,toStringDefaults:A}){this.compat=Array.isArray(t)?p0t.getTags(t,"compat"):t?p0t.getTags(null,t):null,this.merge=!!n,this.name=typeof o=="string"&&o||"core",this.knownTags=a?p0t.coreKnownTags:{},this.tags=p0t.getTags(r,this.name),this.toStringOptions=A??null,Object.defineProperty(this,Vvr.MAP,{value:tFa.map}),Object.defineProperty(this,Vvr.SCALAR,{value:nFa.string}),Object.defineProperty(this,Vvr.SEQ,{value:rFa.seq}),this.sortMapEntries=typeof l=="function"?l:l===!0?iFa:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};Bfi.Schema=Pvr});var Tfi=H(wfi=>{"use strict";var sFa=C0(),Ovr=uXe(),hXe=oXe();function oFa(e,t){let r=[],n=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),n=!0):e.directives.docStart&&(n=!0)}n&&r.push("---");let a=Ovr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(hXe.indentComment(f,""))}let l=!1,A=null;if(e.contents){if(sFa.isNode(e.contents)){if(e.contents.spaceBefore&&n&&r.push(""),e.contents.commentBefore){let C=o(e.contents.commentBefore);r.push(hXe.indentComment(C,""))}a.forceBlockIndent=!!e.comment,A=e.contents.comment}let f=A?void 0:()=>l=!0,I=Ovr.stringify(e.contents,a,()=>A=null,f);A&&(I+=hXe.lineComment(I,"",o(A))),(I[0]==="|"||I[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${I}`:r.push(I)}else r.push(Ovr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` -`)?(r.push("..."),r.push(hXe.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&l&&(f=f.replace(/^\n+/,"")),f&&((!l||A)&&r[r.length-1]!==""&&r.push(""),r.push(hXe.indentComment(o(f),"")))}return r.join(` -`)+` -`}wfi.stringifyDocument=oFa});var mXe=H(Rfi=>{"use strict";var aFa=iXe(),zTe=P_t(),YM=C0(),cFa=Gae(),lFa=Nae(),uFa=Wvr(),gFa=Tfi(),Mvr=G_t(),AFa=XSr(),dFa=sXe(),Hvr=QSr(),Yvr=class e{constructor(t,r,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,YM.NODE_TYPE,{value:YM.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:n===void 0&&r&&(n=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},n);this.options=o;let{version:l}=o;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(l=this.directives.yaml.version)):this.directives=new Hvr.Directives({version:l}),this.setSchema(l,n),this.contents=t===void 0?null:this.createNode(t,a,n)}clone(){let t=Object.create(e.prototype,{[YM.NODE_TYPE]:{value:YM.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=YM.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){qTe(this.contents)&&this.contents.add(t)}addIn(t,r){qTe(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let n=Mvr.anchorNames(this);t.anchor=!r||n.has(r)?Mvr.findNewAnchor(r||"a",n):r}return new aFa.Alias(t.anchor)}createNode(t,r,n){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let Q=ae=>typeof ae=="number"||ae instanceof String||ae instanceof Number,X=r.filter(Q).map(String);X.length>0&&(r=r.concat(X)),a=r}else n===void 0&&r&&(n=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:l,flow:A,keepUndefined:f,onTagObj:I,tag:C}=n??{},{onAnchor:b,setAnchors:E,sourceObjects:N}=Mvr.createNodeAnchors(this,l||"a"),B={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:b,onTagObj:I,replacer:a,schema:this.schema,sourceObjects:N},F=dFa.createNode(t,C,B);return A&&YM.isCollection(F)&&(F.flow=!0),E(),F}createPair(t,r,n={}){let a=this.createNode(t,null,n),o=this.createNode(r,null,n);return new cFa.Pair(a,o)}delete(t){return qTe(this.contents)?this.contents.delete(t):!1}deleteIn(t){return zTe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):qTe(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return YM.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return zTe.isEmptyPath(t)?!r&&YM.isScalar(this.contents)?this.contents.value:this.contents:YM.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return YM.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return zTe.isEmptyPath(t)?this.contents!==void 0:YM.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=zTe.collectionFromPath(this.schema,[t],r):qTe(this.contents)&&this.contents.set(t,r)}setIn(t,r){zTe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=zTe.collectionFromPath(this.schema,Array.from(t),r):qTe(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let n;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Hvr.Directives({version:"1.1"}),n={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new Hvr.Directives({version:t}),n={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,n=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(n)this.schema=new uFa.Schema(Object.assign(n,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:n,maxAliasCount:a,onAnchor:o,reviver:l}={}){let A={anchors:new Map,doc:this,keep:!t,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=lFa.toJS(this.contents,r??"",A);if(typeof o=="function")for(let{count:I,res:C}of A.anchors.values())o(C,I);return typeof l=="function"?AFa.applyReviver(l,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return gFa.stringifyDocument(this,t)}};function qTe(e){if(YM.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}Rfi.Document=Yvr});var yXe=H(_Xe=>{"use strict";var CXe=class extends Error{constructor(t,r,n,a){super(),this.name=t,this.code=n,this.message=a,this.pos=r}},Qvr=class extends CXe{constructor(t,r,n){super("YAMLParseError",t,r,n)}},Xvr=class extends CXe{constructor(t,r,n){super("YAMLWarning",t,r,n)}},pFa=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(A=>t.linePos(A));let{line:n,col:a}=r.linePos[0];r.message+=` at line ${n}, column ${a}`;let o=a-1,l=e.substring(t.lineStarts[n-1],t.lineStarts[n]).replace(/[\n\r]+$/,"");if(o>=60&&l.length>80){let A=Math.min(o-39,l.length-79);l="\u2026"+l.substring(A),o-=A-1}if(l.length>80&&(l=l.substring(0,79)+"\u2026"),n>1&&/^ *$/.test(l.substring(0,o))){let A=e.substring(t.lineStarts[n-2],t.lineStarts[n-1]);A.length>80&&(A=A.substring(0,79)+`\u2026 -`),l=A+l}if(/[^ ]/.test(l)){let A=1,f=r.linePos[1];f&&f.line===n&&f.col>a&&(A=Math.max(1,Math.min(f.col-a,80-o)));let I=" ".repeat(o)+"^".repeat(A);r.message+=`: - -${l} -${I} -`}};_Xe.YAMLError=CXe;_Xe.YAMLParseError=Qvr;_Xe.YAMLWarning=Xvr;_Xe.prettifyError=pFa});var bXe=H(Nfi=>{"use strict";function fFa(e,{flow:t,indicator:r,next:n,offset:a,onError:o,parentIndent:l,startOnNewline:A}){let f=!1,I=A,C=A,b="",E="",N=!1,B=!1,F=null,Q=null,X=null,ae=null,ne=null,ce=null,fe=null;for(let be of e)switch(B&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),B=!1),F&&(I&&be.type!=="comment"&&be.type!=="newline"&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),F=null),be.type){case"space":!t&&(r!=="doc-start"||n?.type!=="flow-collection")&&be.source.includes(" ")&&(F=be),C=!0;break;case"comment":{C||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Se=be.source.substring(1)||" ";b?b+=E+Se:b=Se,E="",I=!1;break}case"newline":I?b?b+=be.source:f=!0:E+=be.source,I=!0,N=!0,(Q||X)&&(ae=be),C=!0;break;case"anchor":Q&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),Q=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break;case"tag":{X&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),X=be,fe===null&&(fe=be.offset),I=!1,C=!1,B=!0;break}case r:(Q||X)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ce&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ce=be,I=r==="seq-item-ind"||r==="explicit-key-ind",C=!1;break;case"comma":if(t){ne&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ne=be,I=!1,C=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),I=!1,C=!1}let ue=e[e.length-1],de=ue?ue.offset+ue.source.length:a;return B&&n&&n.type!=="space"&&n.type!=="newline"&&n.type!=="comma"&&(n.type!=="scalar"||n.source!=="")&&o(n.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),F&&(I&&F.indent<=l||n?.type==="block-map"||n?.type==="block-seq")&&o(F,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ne,found:ce,spaceBefore:f,comment:b,hasNewline:N,anchor:Q,tag:X,newlineAfterProp:ae,end:de,start:fe??de}}Nfi.resolveProps=fFa});var f0t=H(Dfi=>{"use strict";function Jvr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` -`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(Jvr(t.key)||Jvr(t.value))return!0}return!1;default:return!0}}Dfi.containsNewline=Jvr});var Uvr=H(kfi=>{"use strict";var IFa=f0t();function hFa(e,t,r){if(t?.type==="flow-collection"){let n=t.end[0];n.indent===e&&(n.source==="]"||n.source==="}")&&IFa.containsNewline(t)&&r(n,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}kfi.flowIndentCheck=hFa});var Kvr=H(Gfi=>{"use strict";var xfi=C0();function mFa(e,t,r){let{uniqueKeys:n}=e.options;if(n===!1)return!1;let a=typeof n=="function"?n:(o,l)=>o===l||xfi.isScalar(o)&&xfi.isScalar(l)&&o.value===l.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}Gfi.mapIncludes=mFa});var Wfi=H(Pfi=>{"use strict";var Ffi=Gae(),CFa=Zae(),Zfi=bXe(),_Fa=f0t(),Lfi=Uvr(),yFa=Kvr(),Vfi="All mapping items must start at the same column";function bFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??CFa.YAMLMap,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let C of n.items){let{start:b,key:E,sep:N,value:B}=C,F=Zfi.resolveProps(b,{indicator:"explicit-key-ind",next:E??N?.[0],offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0}),Q=!F.found;if(Q){if(E&&(E.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==n.indent&&a(f,"BAD_INDENT",Vfi)),!F.anchor&&!F.tag&&!N){I=F.end,F.comment&&(A.comment?A.comment+=` -`+F.comment:A.comment=F.comment);continue}(F.newlineAfterProp||_Fa.containsNewline(E))&&a(E??b[b.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else F.found?.indent!==n.indent&&a(f,"BAD_INDENT",Vfi);let X=F.end,ae=E?e(r,E,F,a):t(r,X,b,null,F,a);r.schema.compat&&Lfi.flowIndentCheck(n.indent,E,a),yFa.mapIncludes(r,A.items,ae)&&a(X,"DUPLICATE_KEY","Map keys must be unique");let ne=Zfi.resolveProps(N??[],{indicator:"map-value-ind",next:B,offset:ae.range[2],onError:a,parentIndent:n.indent,startOnNewline:!E||E.type==="block-scalar"});if(f=ne.end,ne.found){Q&&(B?.type==="block-map"&&!ne.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&F.start{"use strict";var EFa=Lae(),SFa=bXe(),vFa=Uvr();function BFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=o?.nodeClass??EFa.YAMLSeq,A=new l(r.schema);r.atRoot&&(r.atRoot=!1);let f=n.offset,I=null;for(let{start:C,value:b}of n.items){let E=SFa.resolveProps(C,{indicator:"seq-item-ind",next:b,offset:f,onError:a,parentIndent:n.indent,startOnNewline:!0});if(!E.found)if(E.anchor||E.tag||b)b&&b.type==="block-seq"?a(E.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{I=E.end,E.comment&&(A.comment=E.comment);continue}let N=b?e(r,b,E,a):t(r,E.end,C,null,E,a);r.schema.compat&&vFa.flowIndentCheck(n.indent,b,a),f=N.range[2],A.items.push(N)}return A.range=[n.offset,f,I??f],A}Ofi.resolveBlockSeq=BFa});var $Te=H(Hfi=>{"use strict";function wFa(e,t,r,n){let a="";if(e){let o=!1,l="";for(let A of e){let{source:f,type:I}=A;switch(I){case"space":o=!0;break;case"comment":{r&&!o&&n(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let C=f.substring(1)||" ";a?a+=l+C:a=C,l="";break}case"newline":a&&(l+=f),o=!0;break;default:n(A,"UNEXPECTED_TOKEN",`Unexpected ${I} at node end`)}t+=f.length}}return{comment:a,offset:t}}Hfi.resolveEnd=wFa});var Jfi=H(Xfi=>{"use strict";var TFa=C0(),RFa=Gae(),Yfi=Zae(),NFa=Lae(),DFa=$Te(),Qfi=bXe(),kFa=f0t(),xFa=Kvr(),jvr="Block collections are not allowed within flow collections",zvr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function GFa({composeNode:e,composeEmptyNode:t},r,n,a,o){let l=n.start.source==="{",A=l?"flow map":"flow sequence",f=o?.nodeClass??(l?Yfi.YAMLMap:NFa.YAMLSeq),I=new f(r.schema);I.flow=!0;let C=r.atRoot;C&&(r.atRoot=!1);let b=n.offset+n.start.source.length;for(let Q=0;Q0){let Q=DFa.resolveEnd(B,F,r.options.strict,a);Q.comment&&(I.comment?I.comment+=` -`+Q.comment:I.comment=Q.comment),I.range=[n.offset,F,Q.offset]}else I.range=[n.offset,F,F];return I}Xfi.resolveFlowCollection=GFa});var Kfi=H(Ufi=>{"use strict";var FFa=C0(),ZFa=gT(),LFa=Zae(),VFa=Lae(),PFa=Wfi(),WFa=Mfi(),OFa=Jfi();function qvr(e,t,r,n,a,o){let l=r.type==="block-map"?PFa.resolveBlockMap(e,t,r,n,o):r.type==="block-seq"?WFa.resolveBlockSeq(e,t,r,n,o):OFa.resolveFlowCollection(e,t,r,n,o),A=l.constructor;return a==="!"||a===A.tagName?(l.tag=A.tagName,l):(a&&(l.tag=a),l)}function MFa(e,t,r,n,a){let o=n.tag,l=o?t.directives.tagName(o.source,E=>a(o,"TAG_RESOLVE_FAILED",E)):null;if(r.type==="block-seq"){let{anchor:E,newlineAfterProp:N}=n,B=E&&o?E.offset>o.offset?E:o:E??o;B&&(!N||N.offsetE.tag===l&&E.collection===A);if(!f){let E=t.schema.knownTags[l];if(E&&E.collection===A)t.schema.tags.push(Object.assign({},E,{default:!1})),f=E;else return E?.collection?a(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${A} collection, but expects ${E.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${l}`,!0),qvr(e,t,r,a,l)}let I=qvr(e,t,r,a,l,f),C=f.resolve?.(I,E=>a(o,"TAG_RESOLVE_FAILED",E),t.options)??I,b=FFa.isNode(C)?C:new ZFa.Scalar(C);return b.range=I.range,b.tag=l,f?.format&&(b.format=f.format),b}Ufi.composeCollection=MFa});var eBr=H(jfi=>{"use strict";var $vr=gT();function HFa(e,t,r){let n=t.offset,a=YFa(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[n,n,n]};let o=a.mode===">"?$vr.Scalar.BLOCK_FOLDED:$vr.Scalar.BLOCK_LITERAL,l=t.source?QFa(t.source):[],A=l.length;for(let F=l.length-1;F>=0;--F){let Q=l[F][1];if(Q===""||Q==="\r")A=F;else break}if(A===0){let F=a.chomp==="+"&&l.length>0?` -`.repeat(Math.max(1,l.length-1)):"",Q=n+a.length;return t.source&&(Q+=t.source.length),{value:F,type:o,comment:a.comment,range:[n,Q,Q]}}let f=t.indent+a.indent,I=t.offset+a.length,C=0;for(let F=0;Ff&&(f=Q.length);else{Q.length=A;--F)l[F][0].length>f&&(A=F+1);let b="",E="",N=!1;for(let F=0;Ff||X[0]===" "?(E===" "?E=` -`:!N&&E===` -`&&(E=` - -`),b+=E+Q.slice(f)+X,E=` -`,N=!0):X===""?E===` -`?b+=` -`:E=` -`:(b+=E+X,E=" ",N=!1)}switch(a.chomp){case"-":break;case"+":for(let F=A;F{"use strict";var tBr=gT(),XFa=$Te();function JFa(e,t,r){let{offset:n,type:a,source:o,end:l}=e,A,f,I=(E,N,B)=>r(n+E,N,B);switch(a){case"scalar":A=tBr.Scalar.PLAIN,f=UFa(o,I);break;case"single-quoted-scalar":A=tBr.Scalar.QUOTE_SINGLE,f=KFa(o,I);break;case"double-quoted-scalar":A=tBr.Scalar.QUOTE_DOUBLE,f=jFa(o,I);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[n,n+o.length,n+o.length]}}let C=n+o.length,b=XFa.resolveEnd(l,C,t,r);return{value:f,type:A,comment:b.comment,range:[n,C,b.offset]}}function UFa(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),zfi(e)}function KFa(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),zfi(e.slice(1,-1)).replace(/''/g,"'")}function zfi(e){let t,r;try{t=new RegExp(`(.*?)(?o?e.slice(o,n+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function zFa(e,t){let r="",n=e[t+1];for(;(n===" "||n===" "||n===` -`||n==="\r")&&!(n==="\r"&&e[t+2]!==` -`);)n===` -`&&(r+=` -`),t+=1,n=e[t+1];return r||(r=" "),{fold:r,offset:t}}var qFa={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` -`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function $Fa(e,t,r,n){let a=e.substr(t,r),l=a.length===r&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;if(isNaN(l)){let A=e.substr(t-2,r+2);return n(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${A}`),A}return String.fromCodePoint(l)}qfi.resolveFlowScalar=JFa});var tIi=H(eIi=>{"use strict";var eRe=C0(),$fi=gT(),eZa=eBr(),tZa=rBr();function rZa(e,t,r,n){let{value:a,type:o,comment:l,range:A}=t.type==="block-scalar"?eZa.resolveBlockScalar(e,t,n):tZa.resolveFlowScalar(t,e.options.strict,n),f=r?e.directives.tagName(r.source,b=>n(r,"TAG_RESOLVE_FAILED",b)):null,I=r&&f?nZa(e.schema,a,f,r,n):t.type==="scalar"?iZa(e,a,t,n):e.schema[eRe.SCALAR],C;try{let b=I.resolve(a,E=>n(r??t,"TAG_RESOLVE_FAILED",E),e.options);C=eRe.isScalar(b)?b:new $fi.Scalar(b)}catch(b){let E=b instanceof Error?b.message:String(b);n(r??t,"TAG_RESOLVE_FAILED",E),C=new $fi.Scalar(a)}return C.range=A,C.source=a,o&&(C.type=o),f&&(C.tag=f),I.format&&(C.format=I.format),l&&(C.comment=l),C}function nZa(e,t,r,n,a){if(r==="!")return e[eRe.SCALAR];let o=[];for(let A of e.tags)if(!A.collection&&A.tag===r)if(A.default&&A.test)o.push(A);else return A;for(let A of o)if(A.test?.test(t))return A;let l=e.knownTags[r];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(a(n,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[eRe.SCALAR])}function iZa({directives:e,schema:t},r,n,a){let o=t.tags.find(l=>l.default&&l.test?.test(r))||t[eRe.SCALAR];if(t.compat){let l=t.compat.find(A=>A.default&&A.test?.test(r))??t[eRe.SCALAR];if(o.tag!==l.tag){let A=e.tagString(o.tag),f=e.tagString(l.tag),I=`Value may be parsed as either ${A} or ${f}`;a(n,"TAG_RESOLVE_FAILED",I,!0)}}return o}eIi.composeScalar=rZa});var nIi=H(rIi=>{"use strict";function sZa(e,t,r){if(t){r===null&&(r=t.length);for(let n=r-1;n>=0;--n){let a=t[n];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++n];a?.type==="space";)e+=a.source.length,a=t[++n];break}}return e}rIi.emptyScalarPosition=sZa});var oIi=H(iBr=>{"use strict";var oZa=iXe(),aZa=Kfi(),iIi=tIi(),cZa=$Te(),lZa=nIi(),uZa={composeNode:sIi,composeEmptyNode:nBr};function sIi(e,t,r,n){let{spaceBefore:a,comment:o,anchor:l,tag:A}=r,f,I=!0;switch(t.type){case"alias":f=gZa(e,t,n),(l||A)&&n(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=iIi.composeScalar(e,t,A,n),l&&(f.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=aZa.composeCollection(uZa,e,t,r,n),l&&(f.anchor=l.source.substring(1));break;default:{let C=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;n(t,"UNEXPECTED_TOKEN",C),f=nBr(e,t.offset,void 0,null,r,n),I=!1}}return l&&f.anchor===""&&n(l,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&I&&(f.srcToken=t),f}function nBr(e,t,r,n,{spaceBefore:a,comment:o,anchor:l,tag:A,end:f},I){let C={type:"scalar",offset:lZa.emptyScalarPosition(t,r,n),indent:-1,source:""},b=iIi.composeScalar(e,C,A,I);return l&&(b.anchor=l.source.substring(1),b.anchor===""&&I(l,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(b.spaceBefore=!0),o&&(b.comment=o,b.range[2]=f),b}function gZa({options:e},{offset:t,source:r,end:n},a){let o=new oZa.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let l=t+r.length,A=cZa.resolveEnd(n,l,e.strict,a);return o.range=[t,l,A.offset],A.comment&&(o.comment=A.comment),o}iBr.composeEmptyNode=nBr;iBr.composeNode=sIi});var lIi=H(cIi=>{"use strict";var AZa=mXe(),aIi=oIi(),dZa=$Te(),pZa=bXe();function fZa(e,t,{offset:r,start:n,value:a,end:o},l){let A=Object.assign({_directives:t},e),f=new AZa.Document(void 0,A),I={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},C=pZa.resolveProps(n,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:l,parentIndent:0,startOnNewline:!0});C.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!C.hasNewline&&l(C.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?aIi.composeNode(I,a,C,l):aIi.composeEmptyNode(I,C.end,n,null,C,l);let b=f.contents.range[2],E=dZa.resolveEnd(o,b,!1,l);return E.comment&&(f.comment=E.comment),f.range=[r,b,E.offset],f}cIi.composeDoc=fZa});var oBr=H(AIi=>{"use strict";var IZa=QSr(),hZa=mXe(),EXe=yXe(),uIi=C0(),mZa=lIi(),CZa=$Te();function SXe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function gIi(e){let t="",r=!1,n=!1;for(let a=0;a{let l=SXe(r);o?this.warnings.push(new EXe.YAMLWarning(l,n,a)):this.errors.push(new EXe.YAMLParseError(l,n,a))},this.directives=new IZa.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:n,afterEmptyLine:a}=gIi(this.prelude);if(n){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} -${n}`:n;else if(a||t.directives.docStart||!o)t.commentBefore=n;else if(uIi.isCollection(o)&&!o.flow&&o.items.length>0){let l=o.items[0];uIi.isPair(l)&&(l=l.key);let A=l.commentBefore;l.commentBefore=A?`${n} -${A}`:n}else{let l=o.commentBefore;o.commentBefore=l?`${n} -${l}`:n}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:gIi(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,n=-1){for(let a of t)yield*this.next(a);yield*this.end(r,n)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,n,a)=>{let o=SXe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",n,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=mZa.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,n=new EXe.YAMLParseError(SXe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case"doc-end":{if(!this.doc){let n="Unexpected doc-end without preceding document";this.errors.push(new EXe.YAMLParseError(SXe(t),"UNEXPECTED_TOKEN",n));break}this.doc.directives.docEnd=!0;let r=CZa.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let n=this.doc.comment;this.doc.comment=n?`${n} -${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new EXe.YAMLParseError(SXe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let n=Object.assign({_directives:this.directives},this.options),a=new hZa.Document(void 0,n);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};AIi.Composer=sBr});var fIi=H(I0t=>{"use strict";var _Za=eBr(),yZa=rBr(),bZa=yXe(),dIi=lXe();function EZa(e,t=!0,r){if(e){let n=(a,o,l)=>{let A=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(A,o,l);else throw new bZa.YAMLParseError([A,A+1],o,l)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yZa.resolveFlowScalar(e,t,n);case"block-scalar":return _Za.resolveBlockScalar({options:{strict:t}},e,n)}}return null}function SZa(e,t){let{implicitKey:r=!1,indent:n,inFlow:a=!1,offset:o=-1,type:l="PLAIN"}=t,A=dIi.stringifyString({type:l,value:e},{implicitKey:r,indent:n>0?" ".repeat(n):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:n,source:` -`}];switch(A[0]){case"|":case">":{let I=A.indexOf(` -`),C=A.substring(0,I),b=A.substring(I+1)+` -`,E=[{type:"block-scalar-header",offset:o,indent:n,source:C}];return pIi(E,f)||E.push({type:"newline",offset:-1,indent:n,source:` -`}),{type:"block-scalar",offset:o,indent:n,props:E,source:b}}case'"':return{type:"double-quoted-scalar",offset:o,indent:n,source:A,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:n,source:A,end:f};default:return{type:"scalar",offset:o,indent:n,source:A,end:f}}}function vZa(e,t,r={}){let{afterKey:n=!1,implicitKey:a=!1,inFlow:o=!1,type:l}=r,A="indent"in e?e.indent:null;if(n&&typeof A=="number"&&(A+=2),!l)switch(e.type){case"single-quoted-scalar":l="QUOTE_SINGLE";break;case"double-quoted-scalar":l="QUOTE_DOUBLE";break;case"block-scalar":{let I=e.props[0];if(I.type!=="block-scalar-header")throw new Error("Invalid block scalar header");l=I.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:l="PLAIN"}let f=dIi.stringifyString({type:l,value:t},{implicitKey:a||A===null,indent:A!==null&&A>0?" ".repeat(A):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":BZa(e,f);break;case'"':aBr(e,f,"double-quoted-scalar");break;case"'":aBr(e,f,"single-quoted-scalar");break;default:aBr(e,f,"scalar")}}function BZa(e,t){let r=t.indexOf(` -`),n=t.substring(0,r),a=t.substring(r+1)+` -`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=n,e.source=a}else{let{offset:o}=e,l="indent"in e?e.indent:-1,A=[{type:"block-scalar-header",offset:o,indent:l,source:n}];pIi(A,"end"in e?e.end:void 0)||A.push({type:"newline",offset:-1,indent:l,source:` -`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:l,props:A,source:a})}}function pIi(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function aBr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let n=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of n)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:n});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` -`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let n="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:n,source:t,end:a})}}}I0t.createScalarToken=SZa;I0t.resolveAsScalar=EZa;I0t.setScalarValue=vZa});var hIi=H(IIi=>{"use strict";var wZa=e=>"type"in e?m0t(e):h0t(e);function m0t(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=m0t(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=h0t(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=h0t(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=h0t(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function h0t({start:e,key:t,sep:r,value:n}){let a="";for(let o of e)a+=o.source;if(t&&(a+=m0t(t)),r)for(let o of r)a+=o.source;return n&&(a+=m0t(n)),a}IIi.stringify=wZa});var yIi=H(_Ii=>{"use strict";var cBr=Symbol("break visit"),TZa=Symbol("skip children"),mIi=Symbol("remove item");function Yhe(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),CIi(Object.freeze([]),e,t)}Yhe.BREAK=cBr;Yhe.SKIP=TZa;Yhe.REMOVE=mIi;Yhe.itemAtPath=(e,t)=>{let r=e;for(let[n,a]of t){let o=r?.[n];if(o&&"items"in o)r=o.items[a];else return}return r};Yhe.parentCollection=(e,t)=>{let r=Yhe.itemAtPath(e,t.slice(0,-1)),n=t[t.length-1][0],a=r?.[n];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function CIi(e,t,r){let n=r(t,e);if(typeof n=="symbol")return n;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let l=0;l{"use strict";var lBr=fIi(),RZa=hIi(),NZa=yIi(),uBr="\uFEFF",gBr="",ABr="",dBr="",DZa=e=>!!e&&"items"in e,kZa=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function xZa(e){switch(e){case uBr:return"";case gBr:return"";case ABr:return"";case dBr:return"";default:return JSON.stringify(e)}}function GZa(e){switch(e){case uBr:return"byte-order-mark";case gBr:return"doc-mode";case ABr:return"flow-error-end";case dBr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` -`:case`\r -`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}lV.createScalarToken=lBr.createScalarToken;lV.resolveAsScalar=lBr.resolveAsScalar;lV.setScalarValue=lBr.setScalarValue;lV.stringify=RZa.stringify;lV.visit=NZa.visit;lV.BOM=uBr;lV.DOCUMENT=gBr;lV.FLOW_END=ABr;lV.SCALAR=dBr;lV.isCollection=DZa;lV.isScalar=kZa;lV.prettyToken=xZa;lV.tokenType=GZa});var IBr=H(EIi=>{"use strict";var vXe=C0t();function XX(e){switch(e){case void 0:case" ":case` -`:case"\r":case" ":return!0;default:return!1}}var bIi=new Set("0123456789ABCDEFabcdef"),FZa=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),_0t=new Set(",[]{}"),ZZa=new Set(` ,[]{} -\r `),pBr=e=>!e||ZZa.has(e),fBr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let n=this.next??"stream";for(;n&&(r||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` -`?!0:r==="\r"?this.buffer[t+1]===` -`:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let r=this.buffer[t];if(this.indentNext>0){let n=0;for(;r===" ";)r=this.buffer[++n+t];if(r==="\r"){let a=this.buffer[n+t+1];if(a===` -`||!a&&!this.atEnd)return t+n+1}return r===` -`||n>=this.indentNext||!r&&!this.atEnd?t+n:-1}if(r==="-"||r==="."){let n=this.buffer.substr(t,3);if((n==="---"||n==="...")&&XX(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!XX(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&XX(r)){let n=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=n,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(pBr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,n=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=n=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((n!==-1&&n"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>XX(r)||r==="#")}*parseBlockScalar(){let t=this.pos-1,r=0,n;e:for(let o=this.pos;n=this.buffer[o];++o)switch(n){case" ":r+=1;break;case` -`:t=o,r=0;break;case"\r":{let l=this.buffer[o+1];if(!l&&!this.atEnd)return this.setNext("block-scalar");if(l===` -`)break}default:break e}if(!n&&!this.atEnd)return this.setNext("block-scalar");if(r>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=r:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(t+1);if(o===-1)break;t=this.buffer.indexOf(` -`,o)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let a=t+1;for(n=this.buffer[a];n===" ";)n=this.buffer[++a];if(n===" "){for(;n===" "||n===" "||n==="\r"||n===` -`;)n=this.buffer[++a];t=a-1}else if(!this.blockScalarKeep)do{let o=t-1,l=this.buffer[o];l==="\r"&&(l=this.buffer[--o]);let A=o;for(;l===" ";)l=this.buffer[--o];if(l===` -`&&o>=this.pos&&o+1+r>A)t=o;else break}while(!0);return yield vXe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,n=this.pos-1,a;for(;a=this.buffer[++n];)if(a===":"){let o=this.buffer[n+1];if(XX(o)||t&&_0t.has(o))break;r=n}else if(XX(a)){let o=this.buffer[n+1];if(a==="\r"&&(o===` -`?(n+=1,a=` -`,o=this.buffer[n+1]):r=n),o==="#"||t&&_0t.has(o))break;if(a===` -`){let l=this.continueScalar(n+1);if(l===-1)break;n=Math.max(n,l-2)}}else{if(t&&_0t.has(a))break;r=n}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield vXe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let n=this.buffer.slice(this.pos,t);return n?(yield n,this.pos+=n.length,n.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(pBr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(XX(r)||t&&_0t.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!XX(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(FZa.has(r))r=this.buffer[++t];else if(r==="%"&&bIi.has(this.buffer[t+1])&&bIi.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` -`?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===` -`?yield*this.pushCount(2):0}*pushSpaces(t){let r=this.pos-1,n;do n=this.buffer[++r];while(n===" "||t&&n===" ");let a=r-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,n=this.buffer[r];for(;!t(n);)n=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};EIi.Lexer=fBr});var mBr=H(SIi=>{"use strict";var hBr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,n=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var vIi=C0t(),LZa=IBr();function Qhe(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function wIi(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!Qhe(t.start,"explicit-key-ind")&&!Qhe(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,TIi(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var CBr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new LZa.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let n of this.lexer.lex(t,r))yield*this.next(n);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",vIi.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=vIi.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let n=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:n,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let n=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in n?n.indent:0:r.type==="flow-collection"&&n.type==="document"&&(r.indent=0),r.type==="flow-collection"&&wIi(r),n.type){case"document":n.value=r;break;case"block-scalar":n.props.push(r);break;case"block-map":{let a=n.items[n.items.length-1];if(a.value){n.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=n.items[n.items.length-1];a.value?n.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=n.items[n.items.length-1];!a||a.value?n.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((n.type==="document"||n.type==="block-map"||n.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&BIi(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent=t.indent){let n=!this.onKeyLine&&this.indent===t.indent,a=n&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let l=[];for(let A=0;At.indent&&(l.length=0);break;default:l.length=0}}l.length>=2&&(o=r.sep.splice(l[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Qhe(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(TIi(r.key)&&!Qhe(r.sep,"newline")){let l=tRe(r.start),A=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:A,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(Qhe(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let l=tRe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):Qhe(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let l=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:l,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(l):(Object.assign(r,{key:l,sep:[]}),this.onKeyLine=!0);return}default:{let l=this.startBlockValue(t);if(l){n&&l.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(l);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||Qhe(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let n=this.startBlockValue(t);if(n){this.stack.push(n);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let n;do yield*this.pop(),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let n=this.startBlockValue(t);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===t.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){let a=y0t(n),o=tRe(a);wIi(t);let l=t.end.splice(1,t.end.length);l.push(this.sourceToken);let A={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=A}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` -`)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(` -`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=y0t(t),n=tRe(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=y0t(t),n=tRe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};RIi.Parser=CBr});var GIi=H(wXe=>{"use strict";var NIi=oBr(),VZa=mXe(),BXe=yXe(),PZa=ivr(),WZa=mBr(),DIi=_Br();function kIi(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new WZa.LineCounter||null,prettyErrors:t}}function OZa(e,t={}){let{lineCounter:r,prettyErrors:n}=kIi(t),a=new DIi.Parser(r?.addNewLine),o=new NIi.Composer(t),l=Array.from(o.compose(a.parse(e)));if(n&&r)for(let A of l)A.errors.forEach(BXe.prettifyError(e,r)),A.warnings.forEach(BXe.prettifyError(e,r));return l.length>0?l:Object.assign([],{empty:!0},o.streamInfo())}function xIi(e,t={}){let{lineCounter:r,prettyErrors:n}=kIi(t),a=new DIi.Parser(r?.addNewLine),o=new NIi.Composer(t),l=null;for(let A of o.compose(a.parse(e),!0,e.length))if(!l)l=A;else if(l.options.logLevel!=="silent"){l.errors.push(new BXe.YAMLParseError(A.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(l.errors.forEach(BXe.prettifyError(e,r)),l.warnings.forEach(BXe.prettifyError(e,r))),l}function MZa(e,t,r){let n;typeof t=="function"?n=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=xIi(e,r);if(!a)return null;if(a.warnings.forEach(o=>PZa.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:n},r))}function HZa(e,t,r){let n=null;if(typeof t=="function"||Array.isArray(t)?n=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new VZa.Document(e,n,r).toString(r)}wXe.parse=MZa;wXe.parseAllDocuments=OZa;wXe.parseDocument=xIi;wXe.stringify=HZa});var ZIi=H(J0=>{"use strict";var YZa=oBr(),QZa=mXe(),XZa=Wvr(),yBr=yXe(),JZa=iXe(),Vae=C0(),UZa=Gae(),KZa=gT(),jZa=Zae(),zZa=Lae(),qZa=C0t(),$Za=IBr(),eLa=mBr(),tLa=_Br(),b0t=GIi(),FIi=eXe();J0.Composer=YZa.Composer;J0.Document=QZa.Document;J0.Schema=XZa.Schema;J0.YAMLError=yBr.YAMLError;J0.YAMLParseError=yBr.YAMLParseError;J0.YAMLWarning=yBr.YAMLWarning;J0.Alias=JZa.Alias;J0.isAlias=Vae.isAlias;J0.isCollection=Vae.isCollection;J0.isDocument=Vae.isDocument;J0.isMap=Vae.isMap;J0.isNode=Vae.isNode;J0.isPair=Vae.isPair;J0.isScalar=Vae.isScalar;J0.isSeq=Vae.isSeq;J0.Pair=UZa.Pair;J0.Scalar=KZa.Scalar;J0.YAMLMap=jZa.YAMLMap;J0.YAMLSeq=zZa.YAMLSeq;J0.CST=qZa;J0.Lexer=$Za.Lexer;J0.LineCounter=eLa.LineCounter;J0.Parser=tLa.Parser;J0.parse=b0t.parse;J0.parseAllDocuments=b0t.parseAllDocuments;J0.parseDocument=b0t.parseDocument;J0.stringify=b0t.stringify;J0.visit=FIi.visit;J0.visitAsync=FIi.visitAsync});var YIi=H((Wbu,RXe)=>{var JX=wt("path"),TXe=wt("fs"),iLa=wt("os"),VIi=TXe.promises.readFile;function sLa(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function T0t(e){return JX.dirname(e)||JX.sep}var SBr=(e,t)=>JSON.parse(t),w0t=typeof __webpack_require__=="function"?__non_webpack_require__:wt,PIi=Object.freeze({".js":w0t,".json":w0t,".cjs":w0t,noExt:SBr});RXe.exports.defaultLoadersSync=PIi;var EBr=async e=>{try{return(await import(e)).default}catch(t){try{return w0t(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},WIi=Object.freeze({".js":EBr,".mjs":EBr,".cjs":EBr,".json":SBr,noExt:SBr});RXe.exports.defaultLoaders=WIi;function OIi(e,t,r){let n={stopDir:iLa.homedir(),searchPlaces:sLa(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?PIi:WIi,...t.loaders}};return n.searchPlaces.forEach(a=>{let o=JX.extname(a)||"noExt",l=n.loaders[o];if(!l)throw new Error(`Missing loader for extension "${a}"`);if(typeof l!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof l}.`)}),n}function R0t(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,n)=>r===void 0?r:r[n],t)||null}function MIi(e){if(!e)throw new Error("load must pass a non-empty string")}function N0t(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var HIi=e=>(t,r,n)=>(e&&t.set(r,n),n);RXe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=OIi(t,r??{},!1),C=new Map,b=new Map,E=HIi(I);return{async search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=JX.join(Q,ae);try{await TXe.promises.access(ne)}catch{continue}let ce=String(await VIi(ne)),fe=JX.extname(ae)||"noExt",ue=a[fe];if(ae==="package.json"){let be=await ue(ne,ce),Se=R0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ce.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(N0t(ue,fe),B.config=await ue(ne,ce)),B.filepath=ne;break e}}if(Q===A||Q===T0t(Q))break e;Q=T0t(Q)}let X=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,X);return X},async load(N){MIi(N);let B=JX.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=JX.parse(B),X=Q||"noExt",ae=a[X];N0t(ae,X);let ne=String(await VIi(B));if(F==="package.json"){let ue=await ae(B,ne);return E(b,B,f({config:R0t(o,ue),filepath:B}))}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({config:void 0,filepath:B,isEmpty:!0})):(ce.config=fe?void 0:await ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}};RXe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:n,loaders:a,packageProp:o,searchPlaces:l,stopDir:A,transform:f,cache:I}=OIi(t,r??{},!0),C=new Map,b=new Map,E=HIi(I);return{search(N=process.cwd()){let B={config:null,filepath:""},F=new Set,Q=N;e:for(;;){if(I){let ae=C.get(Q);if(ae!==void 0){for(let ne of F)C.set(ne,ae);return ae}F.add(Q)}for(let ae of l){let ne=JX.join(Q,ae);try{TXe.accessSync(ne)}catch{continue}let ce=JX.extname(ae)||"noExt",fe=a[ce],ue=String(TXe.readFileSync(ne));if(ae==="package.json"){let be=fe(ne,ue),Se=R0t(o,be);if(Se!=null){B.config=Se,B.filepath=ne;break e}continue}let de=ue.trim()==="";if(!(de&&n)){de?(B.isEmpty=!0,B.config=void 0):(N0t(fe,ce),B.config=fe(ne,ue)),B.filepath=ne;break e}}if(Q===A||Q===T0t(Q))break e;Q=T0t(Q)}let X=B.filepath===""&&B.config===null?f(null):f(B);if(I)for(let ae of F)C.set(ae,X);return X},load(N){MIi(N);let B=JX.resolve(process.cwd(),N);if(I&&b.has(B))return b.get(B);let{base:F,ext:Q}=JX.parse(B),X=Q||"noExt",ae=a[X];N0t(ae,X);let ne=String(TXe.readFileSync(B));if(F==="package.json"){let ue=ae(B,ne);return f({config:R0t(o,ue),filepath:B})}let ce={config:null,filepath:B},fe=ne.trim()==="";return fe&&n?E(b,B,f({filepath:B,config:void 0,isEmpty:!0})):(ce.config=fe?void 0:ae(B,ne),E(b,B,f(fe?{...ce,isEmpty:fe,config:void 0}:ce)))},clearLoadCache(){I&&b.clear()},clearSearchCache(){I&&C.clear()},clearCaches(){I&&(b.clear(),C.clear())}}}});var DBr=H((A1u,Shi)=>{Shi.exports=wt("stream")});var Nhi=H((d1u,Rhi)=>{"use strict";function vhi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Bhi(e){for(var t=1;t0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,a=""+n.data;n=n.next;)a+=r+n.data;return a}},{key:"concat",value:function(r){if(this.length===0)return L0t.alloc(0);for(var n=L0t.allocUnsafe(r>>>0),a=this.head,o=0;a;)QLa(a.data,n,o),o+=a.data.length,a=a.next;return n}},{key:"consume",value:function(r,n){var a;return rl.length?l.length:r;if(A===l.length?o+=l:o+=l.slice(0,r),r-=A,r===0){A===l.length?(++a,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=l.slice(A));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var n=L0t.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(n),r-=a.data.length;a=a.next;){var l=a.data,A=r>l.length?l.length:r;if(l.copy(n,n.length-r,0,A),r-=A,r===0){A===l.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=l.slice(A));break}++o}return this.length-=o,n}},{key:YLa,value:function(r,n){return kBr(this,Bhi(Bhi({},n),{},{depth:0,customInspect:!1}))}}]),e}()});var GBr=H((p1u,khi)=>{"use strict";function XLa(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return n||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(xBr,this,e)):process.nextTick(xBr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(V0t,r):(r._writableState.errorEmitted=!0,process.nextTick(Dhi,r,o)):process.nextTick(Dhi,r,o):t?(process.nextTick(V0t,r),t(o)):process.nextTick(V0t,r)}),this)}function Dhi(e,t){xBr(e,t),V0t(e)}function V0t(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function JLa(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function xBr(e,t){e.emit("error",t)}function ULa(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}khi.exports={destroy:XLa,undestroy:JLa,errorOrDestroy:ULa}});var Pae=H((f1u,Fhi)=>{"use strict";var Ghi={};function QM(e,t,r){r||(r=Error);function n(o,l,A){return typeof t=="string"?t:t(o,l,A)}class a extends r{constructor(l,A,f){super(n(l,A,f))}}a.prototype.name=r.name,a.prototype.code=e,Ghi[e]=a}function xhi(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(n=>String(n)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function KLa(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function jLa(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function zLa(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}QM("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);QM("ERR_INVALID_ARG_TYPE",function(e,t,r){let n;typeof t=="string"&&KLa(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";let a;if(jLa(e," argument"))a=`The ${e} ${n} ${xhi(t,"type")}`;else{let o=zLa(e,".")?"property":"argument";a=`The "${e}" ${o} ${n} ${xhi(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);QM("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");QM("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});QM("ERR_STREAM_PREMATURE_CLOSE","Premature close");QM("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});QM("ERR_MULTIPLE_CALLBACK","Callback called multiple times");QM("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");QM("ERR_STREAM_WRITE_AFTER_END","write after end");QM("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);QM("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);QM("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Fhi.exports.codes=Ghi});var FBr=H((I1u,Zhi)=>{"use strict";var qLa=Pae().codes.ERR_INVALID_OPT_VALUE;function $La(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function e9a(e,t,r,n){var a=$La(t,n,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=n?r:"highWaterMark";throw new qLa(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}Zhi.exports={getHighWaterMark:e9a}});var Lhi=H((h1u,ZBr)=>{typeof Object.create=="function"?ZBr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:ZBr.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var Wae=H((m1u,VBr)=>{try{if(LBr=wt("util"),typeof LBr.inherits!="function")throw"";VBr.exports=LBr.inherits}catch{VBr.exports=Lhi()}var LBr});var Phi=H((C1u,Vhi)=>{Vhi.exports=wt("util").deprecate});var OBr=H((_1u,Qhi)=>{"use strict";Qhi.exports=Hv;function Ohi(e){var t=this;this.next=null,this.entry=null,this.finish=function(){w9a(t,e)}}var iRe;Hv.WritableState=ZXe;var t9a={deprecate:Phi()},Mhi=DBr(),W0t=wt("buffer").Buffer,r9a=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function n9a(e){return W0t.from(e)}function i9a(e){return W0t.isBuffer(e)||e instanceof r9a}var WBr=GBr(),s9a=FBr(),o9a=s9a.getHighWaterMark,Oae=Pae().codes,a9a=Oae.ERR_INVALID_ARG_TYPE,c9a=Oae.ERR_METHOD_NOT_IMPLEMENTED,l9a=Oae.ERR_MULTIPLE_CALLBACK,u9a=Oae.ERR_STREAM_CANNOT_PIPE,g9a=Oae.ERR_STREAM_DESTROYED,A9a=Oae.ERR_STREAM_NULL_VALUES,d9a=Oae.ERR_STREAM_WRITE_AFTER_END,p9a=Oae.ERR_UNKNOWN_ENCODING,sRe=WBr.errorOrDestroy;Wae()(Hv,Mhi);function f9a(){}function ZXe(e,t,r){iRe=iRe||Xhe(),e=e||{},typeof r!="boolean"&&(r=t instanceof iRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=o9a(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){b9a(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Ohi(this)}ZXe.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(ZXe.prototype,"buffer",{get:t9a.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var P0t;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(P0t=Function.prototype[Symbol.hasInstance],Object.defineProperty(Hv,Symbol.hasInstance,{value:function(t){return P0t.call(this,t)?!0:this!==Hv?!1:t&&t._writableState instanceof ZXe}})):P0t=function(t){return t instanceof this};function Hv(e){iRe=iRe||Xhe();var t=this instanceof iRe;if(!t&&!P0t.call(Hv,this))return new Hv(e);this._writableState=new ZXe(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),Mhi.call(this)}Hv.prototype.pipe=function(){sRe(this,new u9a)};function I9a(e,t){var r=new d9a;sRe(e,r),process.nextTick(t,r)}function h9a(e,t,r,n){var a;return r===null?a=new A9a:typeof r!="string"&&!t.objectMode&&(a=new a9a("chunk",["string","Buffer"],r)),a?(sRe(e,a),process.nextTick(n,a),!1):!0}Hv.prototype.write=function(e,t,r){var n=this._writableState,a=!1,o=!n.objectMode&&i9a(e);return o&&!W0t.isBuffer(e)&&(e=n9a(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=f9a),n.ending?I9a(this,r):(o||h9a(this,n,e,r))&&(n.pendingcb++,a=C9a(this,n,o,e,t,r)),a};Hv.prototype.cork=function(){this._writableState.corked++};Hv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&Hhi(this,e))};Hv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new p9a(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(Hv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function m9a(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=W0t.from(t,r)),t}Object.defineProperty(Hv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function C9a(e,t,r,n,a,o){if(!r){var l=m9a(t,n,a);n!==l&&(r=!0,a="buffer",n=l)}var A=t.objectMode?1:n.length;t.length+=A;var f=t.length{"use strict";var T9a=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};Jhi.exports=j8;var Xhi=YBr(),HBr=OBr();Wae()(j8,Xhi);for(MBr=T9a(HBr.prototype),O0t=0;O0t{var H0t=wt("buffer"),z8=H0t.Buffer;function Uhi(e,t){for(var r in e)t[r]=e[r]}z8.from&&z8.alloc&&z8.allocUnsafe&&z8.allocUnsafeSlow?Khi.exports=H0t:(Uhi(H0t,QBr),QBr.Buffer=Jhe);function Jhe(e,t,r){return z8(e,t,r)}Jhe.prototype=Object.create(z8.prototype);Uhi(z8,Jhe);Jhe.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return z8(e,t,r)};Jhe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=z8(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};Jhe.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return z8(e)};Jhe.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return H0t.SlowBuffer(e)}});var UBr=H(qhi=>{"use strict";var JBr=jhi().Buffer,zhi=JBr.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function D9a(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function k9a(e){var t=D9a(e);if(typeof t!="string"&&(JBr.isEncoding===zhi||!zhi(e)))throw new Error("Unknown encoding: "+e);return t||e}qhi.StringDecoder=LXe;function LXe(e){this.encoding=k9a(e);var t;switch(this.encoding){case"utf16le":this.text=V9a,this.end=P9a,t=4;break;case"utf8":this.fillLast=F9a,t=4;break;case"base64":this.text=W9a,this.end=O9a,t=3;break;default:this.write=M9a,this.end=H9a;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=JBr.allocUnsafe(t)}LXe.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function x9a(e,t,r){var n=t.length-1;if(n=0?(a>0&&(e.lastNeed=a-1),a):--n=0?(a>0&&(e.lastNeed=a-2),a):--n=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function G9a(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function F9a(e){var t=this.lastTotal-this.lastNeed,r=G9a(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function Z9a(e,t){var r=x9a(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function L9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function V9a(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function P9a(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function W9a(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function O9a(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function M9a(e){return e.toString(this.encoding)}function H9a(e){return e&&e.length?this.write(e):""}});var Y0t=H((E1u,tmi)=>{"use strict";var $hi=Pae().codes.ERR_STREAM_PREMATURE_CLOSE;function Y9a(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),a=0;a{"use strict";var Q0t;function Mae(e,t,r){return t=J9a(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function J9a(e){var t=U9a(e,"string");return typeof t=="symbol"?t:String(t)}function U9a(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var K9a=Y0t(),Hae=Symbol("lastResolve"),Uhe=Symbol("lastReject"),VXe=Symbol("error"),X0t=Symbol("ended"),Khe=Symbol("lastPromise"),KBr=Symbol("handlePromise"),jhe=Symbol("stream");function Yae(e,t){return{value:e,done:t}}function j9a(e){var t=e[Hae];if(t!==null){var r=e[jhe].read();r!==null&&(e[Khe]=null,e[Hae]=null,e[Uhe]=null,t(Yae(r,!1)))}}function z9a(e){process.nextTick(j9a,e)}function q9a(e,t){return function(r,n){e.then(function(){if(t[X0t]){r(Yae(void 0,!0));return}t[KBr](r,n)},n)}}var $9a=Object.getPrototypeOf(function(){}),eVa=Object.setPrototypeOf((Q0t={get stream(){return this[jhe]},next:function(){var t=this,r=this[VXe];if(r!==null)return Promise.reject(r);if(this[X0t])return Promise.resolve(Yae(void 0,!0));if(this[jhe].destroyed)return new Promise(function(l,A){process.nextTick(function(){t[VXe]?A(t[VXe]):l(Yae(void 0,!0))})});var n=this[Khe],a;if(n)a=new Promise(q9a(n,this));else{var o=this[jhe].read();if(o!==null)return Promise.resolve(Yae(o,!1));a=new Promise(this[KBr])}return this[Khe]=a,a}},Mae(Q0t,Symbol.asyncIterator,function(){return this}),Mae(Q0t,"return",function(){var t=this;return new Promise(function(r,n){t[jhe].destroy(null,function(a){if(a){n(a);return}r(Yae(void 0,!0))})})}),Q0t),$9a),tVa=function(t){var r,n=Object.create(eVa,(r={},Mae(r,jhe,{value:t,writable:!0}),Mae(r,Hae,{value:null,writable:!0}),Mae(r,Uhe,{value:null,writable:!0}),Mae(r,VXe,{value:null,writable:!0}),Mae(r,X0t,{value:t._readableState.endEmitted,writable:!0}),Mae(r,KBr,{value:function(o,l){var A=n[jhe].read();A?(n[Khe]=null,n[Hae]=null,n[Uhe]=null,o(Yae(A,!1))):(n[Hae]=o,n[Uhe]=l)},writable:!0}),r));return n[Khe]=null,K9a(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=n[Uhe];o!==null&&(n[Khe]=null,n[Hae]=null,n[Uhe]=null,o(a)),n[VXe]=a;return}var l=n[Hae];l!==null&&(n[Khe]=null,n[Hae]=null,n[Uhe]=null,l(Yae(void 0,!0))),n[X0t]=!0}),t.on("readable",z9a.bind(null,n)),n};rmi.exports=tVa});var ami=H((v1u,omi)=>{"use strict";function imi(e,t,r,n,a,o,l){try{var A=e[o](l),f=A.value}catch(I){r(I);return}A.done?t(f):Promise.resolve(f).then(n,a)}function rVa(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function l(f){imi(o,n,a,l,A,"next",f)}function A(f){imi(o,n,a,l,A,"throw",f)}l(void 0)})}}function smi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function nVa(e){for(var t=1;t{"use strict";hmi.exports=y_;var oRe;y_.ReadableState=gmi;var B1u=wt("events").EventEmitter,umi=function(t,r){return t.listeners(r).length},WXe=DBr(),J0t=wt("buffer").Buffer,lVa=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function uVa(e){return J0t.from(e)}function gVa(e){return J0t.isBuffer(e)||e instanceof lVa}var jBr=wt("util"),Sm;jBr&&jBr.debuglog?Sm=jBr.debuglog("stream"):Sm=function(){};var AVa=Nhi(),nwr=GBr(),dVa=FBr(),pVa=dVa.getHighWaterMark,U0t=Pae().codes,fVa=U0t.ERR_INVALID_ARG_TYPE,IVa=U0t.ERR_STREAM_PUSH_AFTER_EOF,hVa=U0t.ERR_METHOD_NOT_IMPLEMENTED,mVa=U0t.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,aRe,zBr,qBr;Wae()(y_,WXe);var PXe=nwr.errorOrDestroy,$Br=["error","close","destroy","pause","resume"];function CVa(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function gmi(e,t,r){oRe=oRe||Xhe(),e=e||{},typeof r!="boolean"&&(r=t instanceof oRe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=pVa(this,e,"readableHighWaterMark",r),this.buffer=new AVa,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(aRe||(aRe=UBr().StringDecoder),this.decoder=new aRe(e.encoding),this.encoding=e.encoding)}function y_(e){if(oRe=oRe||Xhe(),!(this instanceof y_))return new y_(e);var t=this instanceof oRe;this._readableState=new gmi(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),WXe.call(this)}Object.defineProperty(y_.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});y_.prototype.destroy=nwr.destroy;y_.prototype._undestroy=nwr.undestroy;y_.prototype._destroy=function(e,t){t(e)};y_.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=J0t.from(e,t),t=""),n=!0),Ami(this,e,t,!1,n)};y_.prototype.unshift=function(e){return Ami(this,e,null,!0,!1)};function Ami(e,t,r,n,a){Sm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,bVa(e,o);else{var l;if(a||(l=_Va(o,t)),l)PXe(e,l);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==J0t.prototype&&(t=uVa(t)),n)o.endEmitted?PXe(e,new mVa):ewr(e,o,t,!0);else if(o.ended)PXe(e,new IVa);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?ewr(e,o,t,!1):rwr(e,o)):ewr(e,o,t,!1)}else n||(o.reading=!1,rwr(e,o))}return!o.ended&&(o.length=cmi?e=cmi:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function lmi(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=yVa(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}y_.prototype.read=function(e){Sm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Sm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?twr(this):K0t(this),null;if(e=lmi(e,t),e===0&&t.ended)return t.length===0&&twr(this),null;var n=t.needReadable;Sm("need readable",n),(t.length===0||t.length-e0?a=fmi(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&twr(this)),a!==null&&this.emit("data",a),a};function bVa(e,t){if(Sm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?K0t(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,dmi(e)))}}function K0t(e){var t=e._readableState;Sm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Sm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(dmi,e))}function dmi(e){var t=e._readableState;Sm("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,iwr(e)}function rwr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(EVa,e,t))}function EVa(e,t){for(;!t.reading&&!t.ended&&(t.length1&&Imi(n.pipes,e)!==-1)&&!I&&(Sm("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function E(Q){Sm("onerror",Q),F(),e.removeListener("error",E),umi(e,"error")===0&&PXe(e,Q)}CVa(e,"error",E);function N(){e.removeListener("finish",B),F()}e.once("close",N);function B(){Sm("onfinish"),e.removeListener("close",N),F()}e.once("finish",B);function F(){Sm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Sm("pipe resume"),r.resume()),e};function SVa(e){return function(){var r=e._readableState;Sm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&umi(e,"data")&&(r.flowing=!0,iwr(e))}}y_.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Sm("on readable",n.length,n.reading),n.length?K0t(this):n.reading||process.nextTick(vVa,this)),r};y_.prototype.addListener=y_.prototype.on;y_.prototype.removeListener=function(e,t){var r=WXe.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(pmi,this),r};y_.prototype.removeAllListeners=function(e){var t=WXe.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(pmi,this),t};function pmi(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function vVa(e){Sm("readable nexttick read 0"),e.read(0)}y_.prototype.resume=function(){var e=this._readableState;return e.flowing||(Sm("resume"),e.flowing=!e.readableListening,BVa(this,e)),e.paused=!1,this};function BVa(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(wVa,e,t))}function wVa(e,t){Sm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),iwr(e),t.flowing&&!t.reading&&e.read(0)}y_.prototype.pause=function(){return Sm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Sm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function iwr(e){var t=e._readableState;for(Sm("flow",t.flowing);t.flowing&&e.read()!==null;);}y_.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Sm("wrapped end"),r.decoder&&!r.ended){var l=r.decoder.end();l&&l.length&&t.push(l)}t.push(null)}),e.on("data",function(l){if(Sm("wrapped data"),r.decoder&&(l=r.decoder.write(l)),!(r.objectMode&&l==null)&&!(!r.objectMode&&(!l||!l.length))){var A=t.push(l);A||(n=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(A){return function(){return e[A].apply(e,arguments)}}(a));for(var o=0;o<$Br.length;o++)e.on($Br[o],this.emit.bind(this,$Br[o]));return this._read=function(l){Sm("wrapped _read",l),n&&(n=!1,e.resume())},this};typeof Symbol=="function"&&(y_.prototype[Symbol.asyncIterator]=function(){return zBr===void 0&&(zBr=nmi()),zBr(this)});Object.defineProperty(y_.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});Object.defineProperty(y_.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}});Object.defineProperty(y_.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}});y_._fromList=fmi;Object.defineProperty(y_.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function fmi(e,t){if(t.length===0)return null;var r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function twr(e){var t=e._readableState;Sm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(TVa,t,e))}function TVa(e,t){if(Sm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(y_.from=function(e,t){return qBr===void 0&&(qBr=ami()),qBr(y_,e,t)});function Imi(e,t){for(var r=0,n=e.length;r{"use strict";Cmi.exports=iee;var j0t=Pae().codes,RVa=j0t.ERR_METHOD_NOT_IMPLEMENTED,NVa=j0t.ERR_MULTIPLE_CALLBACK,DVa=j0t.ERR_TRANSFORM_ALREADY_TRANSFORMING,kVa=j0t.ERR_TRANSFORM_WITH_LENGTH_0,z0t=Xhe();Wae()(iee,z0t);function xVa(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new NVa);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";ymi.exports=OXe;var _mi=swr();Wae()(OXe,_mi);function OXe(e){if(!(this instanceof OXe))return new OXe(e);_mi.call(this,e)}OXe.prototype._transform=function(e,t,r){r(null,e)}});var wmi=H((N1u,Bmi)=>{"use strict";var owr;function FVa(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var vmi=Pae().codes,ZVa=vmi.ERR_MISSING_ARGS,LVa=vmi.ERR_STREAM_DESTROYED;function Emi(e){if(e)throw e}function VVa(e){return e.setHeader&&typeof e.abort=="function"}function PVa(e,t,r,n){n=FVa(n);var a=!1;e.on("close",function(){a=!0}),owr===void 0&&(owr=Y0t()),owr(e,{readable:t,writable:r},function(l){if(l)return n(l);a=!0,n()});var o=!1;return function(l){if(!a&&!o){if(o=!0,VVa(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(l||new LVa("pipe"))}}}function Smi(e){e()}function WVa(e,t){return e.pipe(t)}function OVa(e){return!e.length||typeof e[e.length-1]!="function"?Emi:e.pop()}function MVa(){for(var e=arguments.length,t=new Array(e),r=0;r0;return PVa(l,f,I,function(C){a||(a=C),C&&o.forEach(Smi),!f&&(o.forEach(Smi),n(a))})});return t.reduce(WVa)}Bmi.exports=MVa});var cRe=H((XM,HXe)=>{var MXe=wt("stream");process.env.READABLE_STREAM==="disable"&&MXe?(HXe.exports=MXe.Readable,Object.assign(HXe.exports,MXe),HXe.exports.Stream=MXe):(XM=HXe.exports=YBr(),XM.Stream=MXe||XM,XM.Readable=XM,XM.Writable=OBr(),XM.Duplex=Xhe(),XM.Transform=swr(),XM.PassThrough=bmi(),XM.finished=Y0t(),XM.pipeline=wmi())});var Nmi=H((D1u,Rmi)=>{"use strict";var{Buffer:UX}=wt("buffer"),Tmi=Symbol.for("BufferList");function LE(e){if(!(this instanceof LE))return new LE(e);LE._init.call(this,e)}LE._init=function(t){Object.defineProperty(this,Tmi,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};LE.prototype._new=function(t){return new LE(t)};LE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let n=0;nthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};LE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};LE.prototype.copy=function(t,r,n,a){if((typeof n!="number"||n<0)&&(n=0),(typeof a!="number"||a>this.length)&&(a=this.length),n>=this.length||a<=0)return t||UX.alloc(0);let o=!!t,l=this._offset(n),A=a-n,f=A,I=o&&r||0,C=l[1];if(n===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:UX.concat(this._bufs,this.length);for(let b=0;bE)this._bufs[b].copy(t,I,C),I+=E;else{this._bufs[b].copy(t,I,C,C+f),I+=E;break}f-=E,C&&(C=0)}return t.length>I?t.slice(0,I):t};LE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let n=this._offset(t),a=this._offset(r),o=this._bufs.slice(n[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),n[1]!==0&&(o[0]=o[0].slice(n[1])),this._new(o)};LE.prototype.toString=function(t,r,n){return this.slice(r,n).toString(t)};LE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};LE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let n=this._offset(t),a=n[0],o=n[1];for(;a=e.length){let f=l.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=l.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};LE.prototype._match=function(e,t){if(this.length-e{"use strict";var awr=cRe().Duplex,HVa=Wae(),YXe=Nmi();function TG(e){if(!(this instanceof TG))return new TG(e);if(typeof e=="function"){this._callback=e;let t=function(n){this._callback&&(this._callback(n),this._callback=null)}.bind(this);this.on("pipe",function(n){n.on("error",t)}),this.on("unpipe",function(n){n.removeListener("error",t)}),e=null}YXe._init.call(this,e),awr.call(this)}HVa(TG,awr);Object.assign(TG.prototype,YXe.prototype);TG.prototype._new=function(t){return new TG(t)};TG.prototype._write=function(t,r,n){this._appendBuffer(t),typeof n=="function"&&n()};TG.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};TG.prototype.end=function(t){awr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};TG.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};TG.prototype._isBufferList=function(t){return t instanceof TG||t instanceof YXe||TG.isBufferList(t)};TG.isBufferList=YXe.isBufferList;q0t.exports=TG;q0t.exports.BufferListStream=TG;q0t.exports.BufferList=YXe});var gwr=H(uRe=>{var YVa=Buffer.alloc,QVa="0000000000000000000",XVa="7777777777777777777",Dmi=48,kmi=Buffer.from("ustar\0","binary"),JVa=Buffer.from("00","binary"),UVa=Buffer.from("ustar ","binary"),KVa=Buffer.from(" \0","binary"),jVa=parseInt("7777",8),QXe=257,uwr=263,zVa=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},qVa=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},$Va=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},xmi=function(e,t,r,n){for(;rt?XVa.slice(0,t)+" ":QVa.slice(0,t-e.length)+e+" "};function ePa(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],n=e.length-1;n>0;n--){var a=e[n];t?r.push(a):r.push(255-a)}var o=0,l=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e};uRe.decodeLongPath=function(e,t){return lRe(e,0,e.length,t)};uRe.encodePax=function(e){var t="";e.name&&(t+=lwr(" path="+e.name+` -`)),e.linkname&&(t+=lwr(" linkpath="+e.linkname+` -`));var r=e.pax;if(r)for(var n in r)t+=lwr(" "+n+"="+r[n]+` -`);return Buffer.from(t)};uRe.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;n+=n?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(n)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(Qae(e.mode&jVa,6),100),t.write(Qae(e.uid,6),108),t.write(Qae(e.gid,6),116),t.write(Qae(e.size,11),124),t.write(Qae(e.mtime.getTime()/1e3|0,11),136),t[156]=Dmi+$Va(e.type),e.linkname&&t.write(e.linkname,157),kmi.copy(t,QXe),JVa.copy(t,uwr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(Qae(e.devmajor||0,6),329),t.write(Qae(e.devminor||0,6),337),n&&t.write(n,345),t.write(Qae(Gmi(t),6),148),t)};uRe.decode=function(e,t,r){var n=e[156]===0?0:e[156]-Dmi,a=lRe(e,0,100,t),o=Xae(e,100,8),l=Xae(e,108,8),A=Xae(e,116,8),f=Xae(e,124,12),I=Xae(e,136,12),C=qVa(n),b=e[157]===0?null:lRe(e,157,100,t),E=lRe(e,265,32),N=lRe(e,297,32),B=Xae(e,329,8),F=Xae(e,337,8),Q=Gmi(e);if(Q===8*32)return null;if(Q!==Xae(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(kmi.compare(e,QXe,QXe+6)===0)e[345]&&(a=lRe(e,345,155,t)+"/"+a);else if(!(UVa.compare(e,QXe,QXe+6)===0&&KVa.compare(e,uwr,uwr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return n===0&&a&&a[a.length-1]==="/"&&(n=5),{name:a,mode:o,uid:l,gid:A,size:f,mtime:new Date(1e3*I),type:C,linkname:b,uname:E,gname:N,devmajor:B,devminor:F}}});var Omi=H((G1u,Wmi)=>{var Zmi=wt("util"),tPa=cwr(),XXe=gwr(),Lmi=cRe().Writable,Vmi=cRe().PassThrough,Pmi=function(){},Fmi=function(e){return e&=511,e&&512-e},rPa=function(e,t){var r=new $0t(e,t);return r.end(),r},nPa=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},$0t=function(e,t){this._parent=e,this.offset=t,Vmi.call(this,{autoDestroy:!1})};Zmi.inherits($0t,Vmi);$0t.prototype.destroy=function(e){this._parent.destroy(e)};var see=function(e){if(!(this instanceof see))return new see(e);Lmi.call(this,e),e=e||{},this._offset=0,this._buffer=tPa(),this._missing=0,this._partial=!1,this._onparse=Pmi,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},a=function(E){if(t._locked=!1,E)return t.destroy(E);t._stream||n()},o=function(){t._stream=null;var E=Fmi(t._header.size);E?t._parse(E,l):t._parse(512,b),t._locked||n()},l=function(){t._buffer.consume(Fmi(t._header.size)),t._parse(512,b),n()},A=function(){var E=t._header.size;t._paxGlobal=XXe.decodePax(r.slice(0,E)),r.consume(E),o()},f=function(){var E=t._header.size;t._pax=XXe.decodePax(r.slice(0,E)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(E),o()},I=function(){var E=t._header.size;this._gnuLongPath=XXe.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},C=function(){var E=t._header.size;this._gnuLongLinkPath=XXe.decodeLongPath(r.slice(0,E),e.filenameEncoding),r.consume(E),o()},b=function(){var E=t._offset,N;try{N=t._header=XXe.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(B){t.emit("error",B)}if(r.consume(512),!N){t._parse(512,b),n();return}if(N.type==="gnu-long-path"){t._parse(N.size,I),n();return}if(N.type==="gnu-long-link-path"){t._parse(N.size,C),n();return}if(N.type==="pax-global-header"){t._parse(N.size,A),n();return}if(N.type==="pax-header"){t._parse(N.size,f),n();return}if(t._gnuLongPath&&(N.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(N.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=N=nPa(N,t._pax),t._pax=null),t._locked=!0,!N.size||N.type==="directory"){t._parse(512,b),t.emit("entry",N,rPa(t,E),a);return}t._stream=new $0t(t,E),t.emit("entry",N,t._stream,a),t._parse(N.size,o),n()};this._onheader=b,this._parse(512,b)};Zmi.inherits(see,Lmi);see.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};see.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};see.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=Pmi,this._overflow?this._write(this._overflow,void 0,e):e()}};see.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(l=e.slice(o),e=e.slice(0,o)),n?n.end(e):a.append(e),this._overflow=l,this._onparse()}};see.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};Wmi.exports=see});var Hmi=H((F1u,Mmi)=>{Mmi.exports=wt("fs").constants||wt("constants")});var Umi=H((Z1u,Jmi)=>{var gRe=Hmi(),Ymi=Uur(),tyt=Wae(),iPa=Buffer.alloc,Qmi=cRe().Readable,ARe=cRe().Writable,sPa=wt("string_decoder").StringDecoder,eyt=gwr(),oPa=parseInt("755",8),aPa=parseInt("644",8),Xmi=iPa(1024),dwr=function(){},Awr=function(e,t){t&=511,t&&e.push(Xmi.slice(0,512-t))};function cPa(e){switch(e&gRe.S_IFMT){case gRe.S_IFBLK:return"block-device";case gRe.S_IFCHR:return"character-device";case gRe.S_IFDIR:return"directory";case gRe.S_IFIFO:return"fifo";case gRe.S_IFLNK:return"symlink"}return"file"}var ryt=function(e){ARe.call(this),this.written=0,this._to=e,this._destroyed=!1};tyt(ryt,ARe);ryt.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};ryt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var nyt=function(){ARe.call(this),this.linkname="",this._decoder=new sPa("utf-8"),this._destroyed=!1};tyt(nyt,ARe);nyt.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};nyt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var JXe=function(){ARe.call(this),this._destroyed=!1};tyt(JXe,ARe);JXe.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};JXe.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var q8=function(e){if(!(this instanceof q8))return new q8(e);Qmi.call(this,e),this._drain=dwr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};tyt(q8,Qmi);q8.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=dwr);var n=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=cPa(e.mode)),e.mode||(e.mode=e.type==="directory"?oPa:aPa),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return Awr(n,e.size),a?process.nextTick(r):this._drain=r,new JXe}if(e.type==="symlink"&&!e.linkname){var o=new nyt;return Ymi(o,function(A){if(A)return n.destroy(),r(A);e.linkname=o.linkname,n._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new JXe;var l=new ryt(this);return this._stream=l,Ymi(l,function(A){if(n._stream=null,A)return n.destroy(),r(A);if(l.written!==e.size)return n.destroy(),r(new Error("size mismatch"));Awr(n,e.size),n._finalizing&&n.finalize(),r()}),l}};q8.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(Xmi),this.push(null))};q8.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};q8.prototype._encode=function(e){if(!e.pax){var t=eyt.encode(e);if(t){this.push(t);return}}this._encodePax(e)};q8.prototype._encodePax=function(e){var t=eyt.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(eyt.encode(r)),this.push(t),Awr(this,t.length),r.size=e.size,r.type=e.type,this.push(eyt.encode(r))};q8.prototype._read=function(e){var t=this._drain;this._drain=dwr,t()};Jmi.exports=q8});var Kmi=H(pwr=>{pwr.extract=Omi();pwr.pack=Umi()});var fwr=H(zhe=>{"use strict";Object.defineProperty(zhe,"__esModule",{value:!0});zhe.hasPackScripts=dPa;zhe.prepareForPack=pPa;zhe.genPackStream=fPa;zhe.genPackageManifest=tCi;zhe.genPackList=rCi;var eCi=(Pa(),vi(Va)),UXe=Sn(),Mh=ro(),jmi=eCi.__importDefault(Ek()),lPa=eCi.__importDefault(Kmi()),uPa=wt("zlib"),gPa=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],APa=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function dPa(e){return!!(UXe.scriptUtils.hasWorkspaceScript(e,"prepack")||UXe.scriptUtils.hasWorkspaceScript(e,"postpack"))}async function pPa(e,{report:t},r){await UXe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let n=Mh.ppath.join(e.cwd,UXe.Manifest.fileName);await Mh.xfs.existsPromise(n)&&await e.manifest.loadFile(n,{baseFs:Mh.xfs}),await r()}finally{await UXe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}async function fPa(e,t){typeof t>"u"&&(t=await rCi(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(Mh.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(Mh.ppath.normalize(o));let n=lPa.default.pack();process.nextTick(async()=>{for(let o of t){let l=Mh.ppath.normalize(o),A=Mh.ppath.resolve(e.cwd,l),f=Mh.ppath.join("package",l),I=await Mh.xfs.lstatPromise(A),C={name:f,mtime:new Date(Mh.constants.SAFE_TIME*1e3)},b=r.has(l)?493:420,E,N,B=new Promise((Q,X)=>{E=Q,N=X}),F=Q=>{Q?N(Q):E()};if(I.isFile()){let Q;l==="package.json"?Q=Buffer.from(JSON.stringify(await tCi(e),null,2)):Q=await Mh.xfs.readFilePromise(A),n.entry({...C,mode:b,type:"file"},Q,F)}else I.isSymbolicLink()?n.entry({...C,mode:b,type:"symlink",linkname:await Mh.xfs.readlinkPromise(A)},F):F(new Error(`Unsupported file type ${I.mode} for ${Mh.npath.fromPortablePath(l)}`));await B}n.finalize()});let a=(0,uPa.createGzip)();return n.pipe(a),a}async function tCi(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}async function rCi(e){let t=e.project,r=t.configuration,n={accept:[],reject:[]};for(let b of APa)n.reject.push(b);for(let b of gPa)n.accept.push(b);n.reject.push(r.get("rcFilename"));let a=b=>{if(b===null||!b.startsWith(`${e.cwd}/`))return;let E=Mh.ppath.relative(e.cwd,b),N=Mh.ppath.resolve(Mh.PortablePath.root,E);n.reject.push(N)};a(Mh.ppath.resolve(t.cwd,Mh.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(b=>b.populateYarnPaths,t,b=>{a(b)});for(let b of t.workspaces){let E=Mh.ppath.relative(e.cwd,b.cwd);E!==""&&!E.match(/^(\.\.)?\//)&&n.reject.push(`/${E}`)}let o={accept:[],reject:[]},l=e.manifest.publishConfig?.main??e.manifest.main,A=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,I=e.manifest.publishConfig?.bin??e.manifest.bin;l!=null&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,l)),A!=null&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,A)),typeof f=="string"&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,f));for(let b of I.values())o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,b));if(f instanceof Map)for(let[b,E]of f.entries())o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,b)),typeof E=="string"&&o.accept.push(Mh.ppath.resolve(Mh.PortablePath.root,E));let C=e.manifest.files!==null;if(C){o.reject.push("/*");for(let b of e.manifest.files)nCi(o.accept,b,{cwd:Mh.PortablePath.root})}return await IPa(e.cwd,{hasExplicitFileList:C,globalList:n,ignoreList:o})}async function IPa(e,{hasExplicitFileList:t,globalList:r,ignoreList:n}){let a=[],o=new Mh.JailFS(e),l=[[Mh.PortablePath.root,[n]]];for(;l.length>0;){let[A,f]=l.pop(),I=await o.lstatPromise(A);if(!qmi(A,{globalList:r,ignoreLists:I.isDirectory()?null:f}))if(I.isDirectory()){let C=await o.readdirPromise(A),b=!1,E=!1;if(!t||A!==Mh.PortablePath.root)for(let F of C)b=b||F===".gitignore",E=E||F===".npmignore";let N=E?await zmi(o,A,".npmignore"):b?await zmi(o,A,".gitignore"):null,B=N!==null?[N].concat(f):f;qmi(A,{globalList:r,ignoreLists:f})&&(B=[...f,{accept:[],reject:["**/*"]}]);for(let F of C)l.push([Mh.ppath.resolve(A,F),B])}else(I.isFile()||I.isSymbolicLink())&&a.push(Mh.ppath.relative(Mh.PortablePath.root,A))}return a.sort()}async function zmi(e,t,r){let n={accept:[],reject:[]},a=await e.readFilePromise(Mh.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))nCi(n.reject,o,{cwd:t});return n}function hPa(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=Mh.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function nCi(e,t,{cwd:r}){let n=t.trim();n===""||n[0]==="#"||e.push(hPa(n,{cwd:r}))}var uO;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(uO||(uO={}));function qmi(e,{globalList:t,ignoreLists:r}){let n=iyt(e,t.accept);if(n!==uO.None)return n===uO.NegatedMatch;let a=iyt(e,t.reject);if(a!==uO.None)return a===uO.Match;if(r!==null)for(let o of r){let l=iyt(e,o.accept);if(l!==uO.None)return l===uO.NegatedMatch;let A=iyt(e,o.reject);if(A!==uO.None)return A===uO.Match}return!1}function iyt(e,t){let r=t,n=[];for(let a=0;a{"use strict";Object.defineProperty(Iwr,"__esModule",{value:!0});var mPa=(Pa(),vi(Va)),iCi=el(),oee=Sn(),$8=ro(),dRe=($c(),vi(rg)),syt=mPa.__importStar(fwr()),KXe=class extends iCi.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=dRe.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=dRe.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=dRe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=dRe.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=dRe.Option.String("--filename",{hidden:!0})}async execute(){let t=await oee.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await oee.Project.find(t,this.context.cwd);if(!n)throw new iCi.WorkspaceRequiredError(r.cwd,this.context.cwd);await syt.hasPackScripts(n)&&(this.installIfNeeded?await r.install({cache:await oee.Cache.find(t),report:new oee.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?$8.ppath.resolve(this.context.cwd,CPa(a,{workspace:n})):$8.ppath.resolve(n.cwd,"package.tgz");return(await oee.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async A=>{await syt.prepareForPack(n,{report:A},async()=>{A.reportJson({base:$8.npath.fromPortablePath(n.cwd)});let f=await syt.genPackList(n);for(let I of f)A.reportInfo(null,$8.npath.fromPortablePath(I)),A.reportJson({location:$8.npath.fromPortablePath(I)});if(!this.dryRun){let I=await syt.genPackStream(n,f);await $8.xfs.mkdirPromise($8.ppath.dirname(o),{recursive:!0});let C=$8.xfs.createWriteStream(o);I.pipe(C),await new Promise(b=>{C.on("finish",b)})}}),this.dryRun||(A.reportInfo(oee.MessageName.UNNAMED,`Package archive generated in ${oee.formatUtils.pretty(t,o,oee.formatUtils.Type.PATH)}`),A.reportJson({output:$8.npath.fromPortablePath(o)}))})).exitCode()}};KXe.paths=[["pack"]];KXe.usage=dRe.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,--out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});Iwr.default=KXe;function CPa(e,{workspace:t}){let r=e.replace("%s",_Pa(t)).replace("%v",yPa(t));return $8.npath.toPortablePath(r)}function _Pa(e){return e.manifest.name!==null?oee.structUtils.slugifyIdent(e.manifest.name):"package"}function yPa(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var $he=H(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});qhe.packUtils=qhe.PackCommand=void 0;var aCi=(Pa(),vi(Va)),jXe=Sn(),oCi=Sn(),cCi=aCi.__importDefault(sCi());qhe.PackCommand=cCi.default;var bPa=aCi.__importStar(fwr());qhe.packUtils=bPa;var EPa=["dependencies","devDependencies","peerDependencies"],SPa="workspace:",vPa=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let n of EPa)for(let a of e.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(a),l=jXe.structUtils.parseRange(a.range);if(l.protocol===SPa)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new oCi.ReportError(oCi.MessageName.WORKSPACE_NOT_FOUND,`${jXe.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let A;jXe.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||l.selector==="*"?A=o.manifest.version??"0.0.0":l.selector==="~"||l.selector==="^"?A=`${l.selector}${o.manifest.version??"0.0.0"}`:A=l.selector;let f=n==="dependencies"?jXe.structUtils.makeDescriptor(a,"unknown"):null,I=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":n;t[I][jXe.structUtils.stringifyIdent(a)]=A}}},BPa={hooks:{beforeWorkspacePacking:vPa},commands:[cCi.default]};qhe.default=BPa});var ICi=H((M1u,fCi)=>{fCi.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var mCi=H((H1u,hCi)=>{hCi.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):ICi()});var _Ci=H((Q1u,CCi)=>{CCi.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var Cwr=H((J1u,bCi)=>{var yCi=_Ci();bCi.exports=class{constructor(t){this.hwm=t||16,this.head=new yCi(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new yCi(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var SCi=H((K1u,ECi)=>{ECi.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var BCi=H((z1u,vCi)=>{vCi.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let n=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var TCi=H(($1u,wCi)=>{var wPa=SCi(),TPa=BCi();wCi.exports=class{constructor(t="utf8"){switch(this.encoding=RPa(t),this.encoding){case"utf8":this.decoder=new TPa;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new wPa(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function RPa(e){switch(e=e.toLowerCase(),e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:throw new Error("Unknown encoding: "+e)}}});var Fwr=H((e2u,$Ci)=>{var{EventEmitter:NPa}=wt("events"),Ayt=new Error("Stream was destroyed"),_wr=new Error("Premature close"),GCi=mCi(),FCi=Cwr(),DPa=TCi(),kS=(1<<29)-1,ime=1,wwr=2,eme=4,zXe=8,ZCi=kS^ime,kPa=kS^wwr,n4e=16,qXe=32,mRe=64,Jae=128,i4e=256,Twr=512,tme=1024,ywr=2048,Rwr=4096,Nwr=8192,KX=16384,pRe=32768,dyt=65536,rme=131072,LCi=i4e|Twr,xPa=n4e|dyt,GPa=mRe|n4e,FPa=Rwr|Jae,Dwr=i4e|rme,ZPa=kS^n4e,LPa=kS^mRe,VPa=kS^(mRe|dyt),RCi=kS^dyt,PPa=kS^i4e,WPa=kS^(Jae|Nwr),OPa=kS^tme,NCi=kS^LCi,VCi=kS^pRe,MPa=kS^qXe,PCi=kS^rme,HPa=kS^Dwr,Uae=1<<18,IRe=2<<18,s4e=4<<18,nme=8<<18,o4e=16<<18,sme=32<<18,bwr=64<<18,fRe=128<<18,kwr=256<<18,hRe=512<<18,pyt=1024<<18,WCi=kS^(Uae|kwr),OCi=kS^s4e,YPa=kS^hRe,QPa=kS^o4e,XPa=kS^nme,MCi=kS^fRe,JPa=kS^IRe,HCi=kS^pyt,$Xe=n4e|Uae,YCi=kS^$Xe,xwr=KX|sme,aee=eme|zXe|wwr,gO=aee|ime,QCi=aee|xwr,UPa=OCi&LPa,Gwr=fRe|pRe,KPa=Gwr&YCi,XCi=gO|KPa,jPa=gO|tme|KX,DCi=gO|KX|Jae,zPa=gO|tme|Jae,qPa=gO|Rwr|Jae|Nwr,$Pa=gO|n4e|tme|KX|dyt|rme,eWa=aee|tme|KX,tWa=qXe|gO|pRe|mRe,rWa=gO|hRe|sme,nWa=nme|o4e,JCi=nme|Uae,iWa=nme|o4e|gO|Uae,kCi=gO|Uae|nme|pyt,sWa=s4e|Uae,oWa=Uae|kwr,aWa=gO|hRe|JCi|sme,cWa=o4e|aee|hRe|sme,lWa=IRe|gO|fRe|s4e,ayt=Symbol.asyncIterator||Symbol("asyncIterator"),cyt=class{constructor(t,{highWaterMark:r=16384,map:n=null,mapWritable:a,byteLength:o,byteLengthWritable:l}={}){this.stream=t,this.queue=new FCi,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=l||o||qCi,this.map=a||n,this.afterWrite=AWa.bind(this),this.afterUpdateNextTick=fWa.bind(this)}get ended(){return(this.stream._duplexState&sme)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=l||o||qCi,this.map=a||n,this.pipeTo=null,this.afterRead=dWa.bind(this),this.afterUpdateNextTick=pWa.bind(this)}get ended(){return(this.stream._duplexState&KX)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=Twr,this.pipeTo=t,this.pipeline=new vwr(this.stream,t,r),r&&this.stream.on("error",xCi),r4e(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",xCi),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let n=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",n),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",uWa.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|tme)&VPa,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=RCi,this.buffered0;)r.push(this.shift());for(let n=0;n0;)n.drains.shift().resolve(!1);n.pipeline!==null&&n.pipeline.done(t,e)}}function AWa(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=WCi,this.drains!==null&&IWa(this.drains),(t._duplexState&iWa)===o4e&&(t._duplexState&=QPa,(t._duplexState&bwr)===bwr&&t.emit("drain")),this.updateCallback()}function dWa(e){e&&this.stream.destroy(e),this.stream._duplexState&=ZPa,this.readAhead===!1&&!(this.stream._duplexState&i4e)&&(this.stream._duplexState&=PCi),this.updateCallback()}function pWa(){this.stream._duplexState&qXe||(this.stream._duplexState&=VCi,this.update())}function fWa(){this.stream._duplexState&IRe||(this.stream._duplexState&=MCi,this.update())}function IWa(e){for(let t=0;t0)?null:n(l)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=Dwr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?HPa:PPa,this}static _fromAsyncIterator(t,r){let n,a=new e({...r,read(l){t.next().then(o).then(l.bind(null,null)).catch(l)},predestroy(){n=t.return()},destroy(l){if(!n)return l(null);n.then(l.bind(null,null)).catch(l)}});return a;function o(l){l.done?a.push(null):a.push(l.value)}}static from(t,r){if(vWa(t))return t;if(t[ayt])return this._fromAsyncIterator(t[ayt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let n=0;return new e({...r,read(a){this.push(n===t.length?null:t[n++]),a(null)}})}static isBackpressured(t){return(t._duplexState&eWa)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&i4e)===0}[ayt](){let t=this,r=null,n=null,a=null;return this.on("error",I=>{r=I}),this.on("readable",o),this.on("close",l),{[ayt](){return this},next(){return new Promise(function(I,C){n=I,a=C;let b=t.read();b!==null?A(b):t._duplexState&zXe&&A(null)})},return(){return f(null)},throw(I){return f(I)}};function o(){n!==null&&A(t.read())}function l(){n!==null&&A(null)}function A(I){a!==null&&(r?a(r):I===null&&!(t._duplexState&KX)?a(Ayt):n({value:I,done:I===null}),a=n=null)}function f(I){return t.destroy(I),new Promise((C,b)=>{if(t._duplexState&zXe)return C({value:void 0,done:!0});t.once("close",function(){I?b(I):C({value:void 0,done:!0})})})}}},uyt=class extends e4e{constructor(t){super(t),this._duplexState|=ime|KX,this._writableState=new cyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=pyt}uncork(){this._duplexState&=HCi,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&cWa)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(TWa(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&kwr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},t4e=class extends lyt{constructor(t){super(t),this._duplexState=ime|this._duplexState&rme,this._writableState=new cyt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=pyt}uncork(){this._duplexState&=HCi,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},gyt=class extends t4e{constructor(t){super(t),this._transformState=new Swr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(CWa.bind(this))}},Bwr=class extends gyt{};function CWa(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function _Wa(...e){return new Promise((t,r)=>jCi(...e,n=>{if(n)return r(n);t()}))}function jCi(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],n=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,l=null;for(let I=1;I1,f),a.pipe(o)),a=o;if(n){let I=!1,C=r4e(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",b=>{l===null&&(l=b)}),o.on("finish",()=>{I=!0,C||n(l)}),C&&o.on("close",()=>n(l||(I?null:_wr)))}return o;function A(I,C,b,E){I.on("error",E),I.on("close",N);function N(){if(C&&I._readableState&&!I._readableState.ended||b&&I._writableState&&!I._writableState.ended)return E(_wr)}}function f(I){if(!(!I||l)){l=I;for(let C of r)C.destroy(I)}}}function yWa(e){return e}function zCi(e){return!!e._readableState||!!e._writableState}function r4e(e){return typeof e._duplexState=="number"&&zCi(e)}function bWa(e){return!!e._readableState&&e._readableState.ended}function EWa(e){return!!e._writableState&&e._writableState.ended}function SWa(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===Ayt?null:r}function vWa(e){return r4e(e)&&e.readable}function BWa(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function qCi(e){return BWa(e)?e.byteLength:1024}function xCi(){}function wWa(){this.destroy(new Error("Stream aborted."))}function TWa(e){return e._writev!==uyt.prototype._writev&&e._writev!==t4e.prototype._writev}$Ci.exports={pipeline:jCi,pipelinePromise:_Wa,isStream:zCi,isStreamx:r4e,isEnded:bWa,isFinished:EWa,getStreamError:SWa,Stream:e4e,Writable:uyt,Readable:lyt,Duplex:t4e,Transform:gyt,PassThrough:Bwr}});var fyt=H((t2u,e_i)=>{function RWa(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function NWa(e){return Buffer.isEncoding(e)}function DWa(e,t,r){return Buffer.alloc(e,t,r)}function kWa(e){return Buffer.allocUnsafe(e)}function xWa(e){return Buffer.allocUnsafeSlow(e)}function GWa(e,t){return Buffer.byteLength(e,t)}function FWa(e,t){return Buffer.compare(e,t)}function ZWa(e,t){return Buffer.concat(e,t)}function LWa(e,t,r,n,a){return ob(e).copy(t,r,n,a)}function VWa(e,t){return ob(e).equals(t)}function PWa(e,t,r,n,a){return ob(e).fill(t,r,n,a)}function WWa(e,t,r){return Buffer.from(e,t,r)}function OWa(e,t,r,n){return ob(e).includes(t,r,n)}function MWa(e,t,r,n){return ob(e).indexOf(t,r,n)}function HWa(e,t,r,n){return ob(e).lastIndexOf(t,r,n)}function YWa(e){return ob(e).swap16()}function QWa(e){return ob(e).swap32()}function XWa(e){return ob(e).swap64()}function ob(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function JWa(e,t,r,n){return ob(e).toString(t,r,n)}function UWa(e,t,r,n,a){return ob(e).write(t,r,n,a)}function KWa(e,t,r){return ob(e).writeDoubleLE(t,r)}function jWa(e,t,r){return ob(e).writeFloatLE(t,r)}function zWa(e,t,r){return ob(e).writeUInt32LE(t,r)}function qWa(e,t,r){return ob(e).writeInt32LE(t,r)}function $Wa(e,t){return ob(e).readDoubleLE(t)}function eOa(e,t){return ob(e).readFloatLE(t)}function tOa(e,t){return ob(e).readUInt32LE(t)}function rOa(e,t){return ob(e).readInt32LE(t)}function nOa(e,t,r){return ob(e).writeDoubleBE(t,r)}function iOa(e,t,r){return ob(e).writeFloatBE(t,r)}function sOa(e,t,r){return ob(e).writeUInt32BE(t,r)}function oOa(e,t,r){return ob(e).writeInt32BE(t,r)}function aOa(e,t){return ob(e).readDoubleBE(t)}function cOa(e,t){return ob(e).readFloatBE(t)}function lOa(e,t){return ob(e).readUInt32BE(t)}function uOa(e,t){return ob(e).readInt32BE(t)}e_i.exports={isBuffer:RWa,isEncoding:NWa,alloc:DWa,allocUnsafe:kWa,allocUnsafeSlow:xWa,byteLength:GWa,compare:FWa,concat:ZWa,copy:LWa,equals:VWa,fill:PWa,from:WWa,includes:OWa,indexOf:MWa,lastIndexOf:HWa,swap16:YWa,swap32:QWa,swap64:XWa,toBuffer:ob,toString:JWa,write:UWa,writeDoubleLE:KWa,writeFloatLE:jWa,writeUInt32LE:zWa,writeInt32LE:qWa,readDoubleLE:$Wa,readFloatLE:eOa,readUInt32LE:tOa,readInt32LE:rOa,writeDoubleBE:nOa,writeFloatBE:iOa,writeUInt32BE:sOa,writeInt32BE:oOa,readDoubleBE:aOa,readFloatBE:cOa,readUInt32BE:lOa,readInt32BE:uOa}});var Vwr=H(_Re=>{var qC=fyt(),gOa="0000000000000000000",AOa="7777777777777777777",Iyt=48,t_i=qC.from([117,115,116,97,114,0]),dOa=qC.from([Iyt,Iyt]),pOa=qC.from([117,115,116,97,114,32]),fOa=qC.from([32,0]),IOa=4095,a4e=257,Lwr=263;_Re.decodeLongPath=function(t,r){return CRe(t,0,t.length,r)};_Re.encodePax=function(t){let r="";t.name&&(r+=Zwr(" path="+t.name+` -`)),t.linkname&&(r+=Zwr(" linkpath="+t.linkname+` -`));let n=t.pax;if(n)for(let a in n)r+=Zwr(" "+a+"="+n[a]+` -`);return qC.from(r)};_Re.decodePax=function(t){let r={};for(;t.length;){let n=0;for(;n100;){let o=n.indexOf("/");if(o===-1)return null;a+=a?"/"+n.slice(0,o):n.slice(0,o),n=n.slice(o+1)}return qC.byteLength(n)>100||qC.byteLength(a)>155||t.linkname&&qC.byteLength(t.linkname)>100?null:(qC.write(r,n),qC.write(r,jae(t.mode&IOa,6),100),qC.write(r,jae(t.uid,6),108),qC.write(r,jae(t.gid,6),116),EOa(t.size,r,124),qC.write(r,jae(t.mtime.getTime()/1e3|0,11),136),r[156]=Iyt+yOa(t.type),t.linkname&&qC.write(r,t.linkname,157),qC.copy(t_i,r,a4e),qC.copy(dOa,r,Lwr),t.uname&&qC.write(r,t.uname,265),t.gname&&qC.write(r,t.gname,297),qC.write(r,jae(t.devmajor||0,6),329),qC.write(r,jae(t.devminor||0,6),337),a&&qC.write(r,a,345),qC.write(r,jae(n_i(r),6),148),r)};_Re.decode=function(t,r,n){let a=t[156]===0?0:t[156]-Iyt,o=CRe(t,0,100,r),l=Kae(t,100,8),A=Kae(t,108,8),f=Kae(t,116,8),I=Kae(t,124,12),C=Kae(t,136,12),b=_Oa(a),E=t[157]===0?null:CRe(t,157,100,r),N=CRe(t,265,32),B=CRe(t,297,32),F=Kae(t,329,8),Q=Kae(t,337,8),X=n_i(t);if(X===8*32)return null;if(X!==Kae(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(hOa(t))t[345]&&(o=CRe(t,345,155,r)+"/"+o);else if(!mOa(t)){if(!n)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:l,uid:A,gid:f,size:I,mtime:new Date(1e3*C),type:b,linkname:E,uname:N,gname:B,devmajor:F,devminor:Q,pax:null}};function hOa(e){return qC.equals(t_i,e.subarray(a4e,a4e+6))}function mOa(e){return qC.equals(pOa,e.subarray(a4e,a4e+6))&&qC.equals(fOa,e.subarray(Lwr,Lwr+2))}function COa(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function _Oa(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function yOa(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function r_i(e,t,r,n){for(;rt?AOa.slice(0,t)+" ":gOa.slice(0,t-e.length)+e+" "}function bOa(e,t,r){t[r]=128;for(let n=11;n>0;n--)t[r+n]=e&255,e=Math.floor(e/256)}function EOa(e,t,r){e.toString(8).length>11?bOa(e,t,r):qC.write(t,jae(e,11),r)}function SOa(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],n;for(n=e.length-1;n>0;n--){let l=e[n];t?r.push(l):r.push(255-l)}let a=0,o=r.length;for(n=0;n=Math.pow(10,r)&&r++,t+r+e}});var c_i=H((n2u,a_i)=>{var{Writable:vOa,Readable:BOa,getStreamError:i_i}=Fwr(),wOa=Cwr(),s_i=fyt(),yRe=Vwr(),TOa=s_i.alloc(0),Wwr=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new wOa,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return TOa;let r=this._next(t);if(t===r.byteLength)return r;let n=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),n.push(r);return s_i.concat(n)}_next(t){let r=this.queue.peek(),n=r.byteLength-this._offset;if(t>=n){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=n,this.shifted+=n,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},Owr=class extends BOa{constructor(t,r,n){super(),this.header=r,this.offset=n,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(i_i(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=o_i(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},Mwr=class extends vOa{constructor(t){super(t),t||(t={}),this._buffer=new Wwr,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=Pwr,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=yRe.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=yRe.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=yRe.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=yRe.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?yRe.decodePax(t):Object.assign({},this._paxGlobal,yRe.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=o_i(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new Owr(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=Pwr,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(i_i(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,n=null,a=null,o=null,l=this;return this.on("entry",I),this.on("error",E=>{t=E}),this.on("close",C),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return b(null)},throw(E){return b(E)}};function A(E){if(!o)return;let N=o;o=null,N(E)}function f(E,N){if(t)return N(t);if(a){E({value:a,done:!1}),a=null;return}r=E,n=N,A(null),l._finished&&r&&(r({value:void 0,done:!0}),r=n=null)}function I(E,N,B){o=B,N.on("error",Pwr),r?(r({value:N,done:!1}),r=n=null):a=N}function C(){A(t),r&&(t?n(t):r({value:void 0,done:!0}),r=n=null)}function b(E){return l.destroy(E),A(E),new Promise((N,B)=>{if(l.destroyed)return N({value:void 0,done:!0});l.once("close",function(){E?B(E):N({value:void 0,done:!0})})})}}};a_i.exports=function(t){return new Mwr(t)};function Pwr(){}function o_i(e){return e&=511,e&&512-e}});var u_i=H((i2u,Hwr)=>{var l_i={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{Hwr.exports=wt("fs").constants||l_i}catch{Hwr.exports=l_i}});var f_i=H((s2u,p_i)=>{var{Readable:ROa,Writable:NOa,getStreamError:g_i}=Fwr(),ome=fyt(),bRe=u_i(),hyt=Vwr(),DOa=493,kOa=420,A_i=ome.alloc(1024),Qwr=class extends NOa{constructor(t,r,n){super({mapWritable:GOa,eagerOpen:!0}),this.written=0,this.header=r,this._callback=n,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?ome.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?ome.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),d_i(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return g_i(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},Xwr=class extends ROa{constructor(t){super(t),this._drain=Ywr,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,n){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(n=r,r=null),n||(n=Ywr),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=xOa(t.mode)),t.mode||(t.mode=t.type==="directory"?DOa:kOa),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=ome.from(r));let a=new Qwr(this,t,n);return ome.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(A_i),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=hyt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=hyt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),n={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(hyt.encode(n)),this.push(r),d_i(this,r.byteLength),n.size=t.size,n.type=t.type,this.push(hyt.encode(n))}_doDrain(){let t=this._drain;this._drain=Ywr,t()}_predestroy(){let t=g_i(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};p_i.exports=function(t){return new Xwr(t)};function xOa(e){switch(e&bRe.S_IFMT){case bRe.S_IFBLK:return"block-device";case bRe.S_IFCHR:return"character-device";case bRe.S_IFDIR:return"directory";case bRe.S_IFIFO:return"fifo";case bRe.S_IFLNK:return"symlink"}return"file"}function Ywr(){}function d_i(e,t){t&=511,t&&e.push(A_i.subarray(0,512-t))}function GOa(e){return ome.isBuffer(e)?e:ome.from(e)}});var I_i=H(Jwr=>{Jwr.extract=c_i();Jwr.pack=f_i()});var q_i=H((Q2u,z_i)=>{"use strict";var YOa=e7t(),vRe=z6t();function j_i(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function iTr(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(vRe("no-hyperlink")||vRe("no-hyperlinks")||vRe("hyperlink=false")||vRe("hyperlink=never"))return!1;if(vRe("hyperlink=true")||vRe("hyperlink=always")||"NETLIFY"in t)return!0;if(!YOa.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=j_i(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=j_i(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}z_i.exports={supportsHyperlink:iTr,stdout:iTr(process.stdout),stderr:iTr(process.stderr)}});var oTr=H((mSu,c0i)=>{"use strict";var zOa=function(t){return qOa(t)&&!$Oa(t)};function qOa(e){return!!e&&typeof e=="object"}function $Oa(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||r3a(e)}var e3a=typeof Symbol=="function"&&Symbol.for,t3a=e3a?Symbol.for("react.element"):60103;function r3a(e){return e.$$typeof===t3a}function n3a(e){return Array.isArray(e)?[]:{}}function u4e(e,t){return t.clone!==!1&&t.isMergeableObject(e)?wRe(n3a(e),e,t):e}function i3a(e,t,r){return e.concat(t).map(function(n){return u4e(n,r)})}function s3a(e,t){if(!t.customMerge)return wRe;var r=t.customMerge(e);return typeof r=="function"?r:wRe}function o3a(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function o0i(e){return Object.keys(e).concat(o3a(e))}function a0i(e,t){try{return t in e}catch{return!1}}function a3a(e,t){return a0i(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function c3a(e,t,r){var n={};return r.isMergeableObject(e)&&o0i(e).forEach(function(a){n[a]=u4e(e[a],r)}),o0i(t).forEach(function(a){a3a(e,a)||(a0i(e,a)&&r.isMergeableObject(t[a])?n[a]=s3a(a,r)(e[a],t[a],r):n[a]=u4e(t[a],r))}),n}function wRe(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||i3a,r.isMergeableObject=r.isMergeableObject||zOa,r.cloneUnlessOtherwiseSpecified=u4e;var n=Array.isArray(t),a=Array.isArray(e),o=n===a;return o?n?r.arrayMerge(e,t,r):c3a(e,t,r):u4e(t,r)}wRe.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return wRe(n,a,r)},{})};var l3a=wRe;c0i.exports=l3a});var CRi=H((TNu,mRi)=>{mRi.exports=function(t,r){var n,a;typeof r=="function"?a=r:n=r;var o=Object.keys(t);return(n||[]).concat(o.sort(a)).reduce(function(l,A){return o.indexOf(A)!==-1&&(l[A]=t[A]),l},Object.create(null))}});var RRi=H((LNu,FEt)=>{"use strict";FEt.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r -`}).length,n=t.length-r;return r>n?`\r -`:` -`};FEt.exports.graceful=function(e){return FEt.exports(e)||` -`}});var Skr=H((VNu,NRi)=>{"use strict";var qlc=wt("os");NRi.exports=qlc.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var vkr=H((PNu,DRi)=>{DRi.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,n){return n};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var kRi=H((WNu,XJe)=>{"use strict";var $lc=process.platform==="win32",euc=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Bkr={};function tuc(e){return euc.exec(e).slice(1)}Bkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=tuc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var ruc=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,wkr={};function nuc(e){return ruc.exec(e).slice(1)}wkr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=nuc(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};$lc?XJe.exports=Bkr.parse:XJe.exports=wkr.parse;XJe.exports.posix=wkr.parse;XJe.exports.win32=Bkr.parse});var Tkr=H((ONu,ZRi)=>{var FRi=wt("path"),xRi=FRi.parse||kRi(),GRi=function(t,r){var n="/";/^([A-Za-z]:)/.test(t)?n="":/^\\\\/.test(t)&&(n="\\\\");for(var a=[t],o=xRi(t);o.dir!==a[a.length-1];)a.push(o.dir),o=xRi(o.dir);return a.reduce(function(l,A){return l.concat(r.map(function(f){return FRi.resolve(n,A,f)}))},[])};ZRi.exports=function(t,r,n){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(n,t,function(){return GRi(t,a)},r);var o=GRi(t,a);return r&&r.paths?o.concat(r.paths):o}});var Rkr=H((MNu,LRi)=>{var JJe=wt("path");LRi.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=wt("module"),n=(I,C)=>{let b=I.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!b)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${I}")`);C.charAt(C.length-1)!=="/"&&(C=JJe.join(C,"/"));let E=r(C);if(E===null)return;let N;try{N=E.resolveToUnqualified(`${b[1]}/package.json`,C,{considerBuiltins:!1})}catch{return null}if(N===null)throw new Error(`Assertion failed: The resolution thinks that "${b[1]}" is a Node builtin`);let B=JJe.dirname(N),F=typeof b[2]<"u"?JJe.join(B,b[2]):B;return{packagePath:B,unqualifiedPath:F}},a=(I,C)=>{for(let b=0;b{let N=[C].concat(o),B=a(I,N);return B==null?b():[B.unqualifiedPath]},A=(I,C,b,E)=>{let N=[C].concat(o),B=a(I,N);if(B==null)return b().concat(o);let F=JJe.dirname(B.packagePath);return I.match(/^@[^/]+\//)&&(F=JJe.dirname(F)),[F]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(I,C,b,E){f=!0;try{return l(I,C,b,E)}finally{f=!1}}),t.paths=function(I,C,b,E){return f?b().concat(o):A(I,C,b,E)},t}});var WRi=H((HNu,PRi)=>{"use strict";var iuc="Function.prototype.bind called on incompatible ",suc=Object.prototype.toString,ouc=Math.max,auc="[object Function]",VRi=function(t,r){for(var n=[],a=0;a{"use strict";var uuc=WRi();ORi.exports=Function.prototype.bind||uuc});var YRi=H((QNu,HRi)=>{"use strict";var guc=Function.prototype.call,Auc=Object.prototype.hasOwnProperty,duc=MRi();HRi.exports=duc.call(guc,Auc)});var QRi=H((XNu,puc)=>{puc.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var UJe=H((JNu,URi)=>{"use strict";var fuc=YRi();function Iuc(e,t){for(var r=e.split("."),n=t.split(" "),a=n.length>1?n[0]:"=",o=(n.length>1?n[1]:n[0]).split("."),l=0;l<3;++l){var A=parseInt(r[l]||0,10),f=parseInt(o[l]||0,10);if(A!==f)return a==="<"?A="?A>=f:!1}return a===">="}function XRi(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var n=0;n"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var n=0;n{var aCe=wt("fs"),muc=Skr(),pT=wt("path"),Cuc=vkr(),_uc=Tkr(),yuc=Rkr(),buc=UJe(),Euc=process.platform!=="win32"&&aCe.realpath&&typeof aCe.realpath.native=="function"?aCe.realpath.native:aCe.realpath,KRi=muc(),Suc=function(){return[pT.join(KRi,".node_modules"),pT.join(KRi,".node_libraries")]},vuc=function(t,r){aCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isFile()||a.isFIFO())})},Buc=function(t,r){aCe.stat(t,function(n,a){return n?n.code==="ENOENT"||n.code==="ENOTDIR"?r(null,!1):r(n):r(null,a.isDirectory())})},wuc=function(t,r){Euc(t,function(n,a){n&&n.code!=="ENOENT"?r(n):r(null,n?t:a)})},KJe=function(t,r,n,a){n&&n.preserveSymlinks===!1?t(r,a):a(null,r)},Tuc=function(t,r,n){t(r,function(a,o){if(a)n(a);else try{var l=JSON.parse(o);n(null,l)}catch{n(null)}})},Ruc=function(t,r,n){for(var a=_uc(r,n,t),o=0;o{Nuc.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var rNi=H((jNu,tNi)=>{"use strict";var Duc=UJe(),$Ri=qRi(),eNi={};for(ZEt in $Ri)Object.prototype.hasOwnProperty.call($Ri,ZEt)&&(eNi[ZEt]=Duc(ZEt));var ZEt;tNi.exports=eNi});var iNi=H((zNu,nNi)=>{var kuc=UJe();nNi.exports=function(t){return kuc(t)}});var aNi=H((qNu,oNi)=>{var xuc=UJe(),cCe=wt("fs"),xG=wt("path"),Guc=Skr(),Fuc=vkr(),Zuc=Tkr(),Luc=Rkr(),Vuc=process.platform!=="win32"&&cCe.realpathSync&&typeof cCe.realpathSync.native=="function"?cCe.realpathSync.native:cCe.realpathSync,sNi=Guc(),Puc=function(){return[xG.join(sNi,".node_modules"),xG.join(sNi,".node_libraries")]},Wuc=function(t){try{var r=cCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&(r.isFile()||r.isFIFO())},Ouc=function(t){try{var r=cCe.statSync(t,{throwIfNoEntry:!1})}catch(n){if(n&&(n.code==="ENOENT"||n.code==="ENOTDIR"))return!1;throw n}return!!r&&r.isDirectory()},Muc=function(t){try{return Vuc(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},jJe=function(t,r,n){return n&&n.preserveSymlinks===!1?t(r):r},Huc=function(t,r){var n=t(r);try{var a=JSON.parse(n);return a}catch{}},Yuc=function(t,r,n){for(var a=Zuc(r,n,t),o=0;o{var LEt=zRi();LEt.core=rNi();LEt.isCore=iNi();LEt.sync=aNi();cNi.exports=LEt});var gNi=H((eDu,uNi)=>{"use strict";var{builtinModules:Quc}=wt("module"),Xuc=["sys"];uNi.exports=(Quc||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!Xuc.includes(e)).sort()});var pNi=H((tDu,dNi)=>{"use strict";var Juc=gNi(),Uuc=new Set(Juc),ANi="node:";dNi.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(ANi)&&(e=e.slice(ANi.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),Uuc.has(e)}});var hNi=H(Nkr=>{"use strict";Object.defineProperty(Nkr,"__esModule",{value:!0});var Kuc=wt("path"),juc=lNi(),zuc=pNi();function quc(e){if(e.length===1){let r=e;return n=>{let a=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return r(a)}}let t=e;return(r,n)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=n.defaultMember||n.namespaceMember||n.namedMembers[0].alias;return t(a,o)}}function $uc(e){if(e.length===1){let r=e;return n=>{let a=n.moduleName;return r(a)}}let t=e;return(r,n)=>{let a=r.moduleName,o=n.moduleName;return t(a,o)}}function egc(e){return(t,r)=>e(t.name,r.name)}function tgc(e){return(t,r)=>e(t.alias,r.alias)}function rgc(){return!0}function ngc(e){return t=>!e(t)}function igc(...e){return t=>e.every(r=>r(t))}function sgc(...e){return t=>e.some(r=>r(t))}function zJe(e){return!!e.defaultMember}function QNe(e){return!!e.namespaceMember}function qJe(e){return e.namedMembers.length>0}function fNi(e){return zJe(e)||QNe(e)||qJe(e)}function ogc(e){return!fNi(e)}function agc(e){return zJe(e)&&!QNe(e)&&!qJe(e)}function cgc(e){return!zJe(e)&&QNe(e)&&!qJe(e)}function lgc(e){return!zJe(e)&&!QNe(e)&&qJe(e)}function ugc(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function ggc(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!QNe(e)}function Agc(e){return zuc(e.moduleName)}function INi(e){return e.moduleName.indexOf(".")===0}function dgc(e){return!INi(e)}function pgc(e){return t=>{try{return juc.sync(t.moduleName,{basedir:Kuc.dirname(e)}).includes("node_modules")}catch{return!1}}}function fgc(e){return e.moduleName.startsWith("@")}function Igc(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function hgc(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function mgc(e){return!!e.match(/^[A-Za-z0-9]/)}function Cgc(...e){return t=>e.some(r=>t.startsWith(r))}function _gc(e,t){return e.localeCompare(t,"en")}function ygc(e,t){return et?1:0}function bgc(e,t){let r=/\.+(?=\/)/g,n=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return n>a?-1:n{"use strict";Object.defineProperty($Je,"__esModule",{value:!0});var Sgc=RRi(),vgc=hNi();function Bgc(e,t,r,n,a){let o,l=typeof t=="string"?wt(t):t;return typeof r=="string"?(o=wt(r),o.default&&(o=o.default)):o=r,mNi(e,l,o,n,a)}$Je.default=Bgc;function mNi(e,t,r,n,a){let o=Rgc(r,n,a||{})(vgc.default),l=o.map(()=>[]),A=t.parseImports(e,{file:n});if(A.length===0)return{code:e,changes:[]};let f=Sgc.graceful(e),I=[];for(let fe of A){let ue=fe,de=o.findIndex(be=>(ue=wgc(fe,be.sortNamedMembers),!!be.match&&be.match(ue)));de!==-1&&l[de].push(ue)}l.forEach((fe,ue)=>{let{sort:de}=o[ue];if(!de)return;if(!Array.isArray(de)){fe.sort(de);return}let be=de;if(be.length===0)return;let Se=(De,k)=>{let et=0,ct=0;for(;ct===0&&be[et];)ct=be[et](De,k),et+=1;return ct};fe.sort(Se)});let C="",b=!1;l.forEach((fe,ue)=>{fe.length>0&&b&&(C+=f,b=!1),fe.forEach(de=>{let be=t.formatImport(e,de,f);C+=be+f}),o[ue].separator&&C!==""&&(b=!0)});let E=e;A.slice().reverse().forEach(fe=>{let ue=fe.end;E.charAt(fe.end).match(/\s/)&&(ue+=1),I.push({start:fe.start,end:ue,code:"",note:"import-remove"}),E=E.slice(0,fe.start)+E.slice(ue,e.length)});let{start:N}=A[0],B=e.substring(0,N),F=E.substring(N,E.length),Q=B.length,X=F.length,ae,ne;B=B.replace(/\s+$/,fe=>(ae={start:N-fe.length,end:N,code:f+f,note:"before-collapse"},f+f)),F=F.replace(/^\s+/,fe=>(ne={start:N,end:N+fe.length,code:f,note:"after-collapse"},f)),B.match(/^\s+$/)&&(ae={start:N-Q,end:N,code:"",note:"before-trim"},B=""),F.match(/^\s+$/)&&(ne={start:N,end:N+X,code:"",note:"after-trim"},F=""),ne&&I.push(ne),ae&&I.push(ae);let ce={start:B.length,end:B.length,code:C,note:"imports"};return I.push(ce),e===B+C+F?{code:e,changes:[]}:{code:B+C+F,changes:I}}$Je.sortImports=mNi;function wgc(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let l=Object.assign({},e);return l.namedMembers=[...e.namedMembers].sort(r),l}let n=r;if(n.length===0)return e;let a=(l,A)=>{let f=0,I=0;for(;I===0&&n[f];)I=n[f](l,A),f+=1;return I},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function Tgc(e,t){let r=e;for(let n of t)r=r.slice(0,n.start)+n.code+r.slice(n.end,r.length);return r}$Je.applyChanges=Tgc;function Rgc(e,t,r){return n=>{let a=[{separator:!0},{match:n.always}];return e(n,t,r).concat(a)}}});var JNi=H((uku,XNi)=>{"use strict";var lCe=class e extends Error{constructor(t,r,n){super("[ParserError] "+t,r,n),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},WEt=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},tUe=class{constructor(){this.pos=0,this.col=0,this.line=0,this.obj={},this.ctx=this.obj,this.stack=[],this._buf="",this.char=null,this.ii=0,this.state=new WEt(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";UNi.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var OEt=H((Aku,jNi)=>{"use strict";jNi.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var XNe=OEt(),Gkr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${XNe(2,this.getUTCMonth()+1)}-${XNe(2,this.getUTCDate())}`,r=`${XNe(2,this.getUTCHours())}:${XNe(2,this.getUTCMinutes())}:${XNe(2,this.getUTCSeconds())}.${XNe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};zNi.exports=e=>{let t=new Gkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var tDi=H((pku,eDi)=>{"use strict";var $Ni=OEt(),qgc=global.Date,Fkr=class extends qgc{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${$Ni(2,this.getUTCMonth()+1)}-${$Ni(2,this.getUTCDate())}`}};eDi.exports=e=>{let t=new Fkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var nDi=H((fku,rDi)=>{"use strict";var MEt=OEt(),Zkr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${MEt(2,this.getUTCHours())}:${MEt(2,this.getUTCMinutes())}:${MEt(2,this.getUTCSeconds())}.${MEt(3,this.getUTCMilliseconds())}`}};rDi.exports=e=>{let t=new Zkr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var HEt=H((exports,module)=>{"use strict";module.exports=makeParserClass(JNi());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=KNi(),createDateTimeFloat=qNi(),createDate=tDi(),createTime=nDi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` -`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}catch{this.value=null}Object.defineProperty(this,_type,{value:INTEGER})}isNaN(){return this.value===null}toString(){return String(this.value)}[_inspect](){return`[BigInt: ${this.toString()}]}`}valueOf(){return this.value}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_type]){case INLINE_TABLE:return"inline-table";case INLINE_LIST:return"inline-list";case TABLE:return"table";case LIST:return"list";case FLOAT:return"float";case INTEGER:return"integer"}}return t}function makeParserClass(e){class t extends e{constructor(){super(),this.ctx=this.obj=Table()}atEndOfWord(){return this.char===CHAR_NUM||this.char===CTRL_I||this.char===CHAR_SP||this.atEndOfLine()}atEndOfLine(){return this.char===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);throw this.error(new TomlError(`Unknown character "${this.char}"`))}parseWhitespaceToEOL(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();throw this.error(new TomlError("Unexpected character, expected only whitespace or comments till end of line"))}parseAssignStatement(){return this.callNow(this.parseAssign,this.recordAssignStatement)}recordAssignStatement(n){let a=this.ctx,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(n){return this.state.resultTable?this.state.resultTable.push(n):this.state.resultTable=[n],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.goto(this.parseAssignEqual)}parseAssignKeywordPostDot(){if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.callNow(this.parseKeyword,this.recordAssignKeyword)}parseAssignEqual(){if(this.char===CHAR_EQUALS)return this.next(this.parseAssignPreValue);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(n){return this.returnNow({key:this.state.resultTable,value:n})}parseComment(){do if(this.char===e.END||this.char===CTRL_J)return this.return();while(this.nextChar())}parseTableOrList(){if(this.char===CHAR_LSQB)this.next(this.parseList);else return this.goto(this.parseTable)}parseTable(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)&&(!isTable(this.ctx[n])||this.ctx[n][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[n]=this.ctx[n]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else throw this.error(new TomlError("Can't redefine existing key"));return this.next(this.parseTableNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseList(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(n){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,n)||(this.ctx[n]=List()),isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[n])){let a=Table();this.ctx[n].push(a),this.ctx=a}else throw this.error(new TomlError("Can't redefine an existing key"));return this.next(this.parseListEnd)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,n))this.ctx=this.ctx[n]=Table();else{if(isInlineList(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[n]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[n]))this.ctx=this.ctx[n][this.ctx[n].length-1];else if(isTable(this.ctx[n]))this.ctx=this.ctx[n];else throw this.error(new TomlError("Can't redefine an existing key"))}return this.next(this.parseListNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseListEnd(n){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(n){return this.returnNow(n)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}errorControlCharInString(){let n="\\u00";return this.char<16&&(n+="0"),n+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${n} instead`))}recordMultiEscapeReplacement(n){return this.state.buf+=n,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(n){try{let a=parseInt(n,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseNoUnder(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD||this.char===CHAR_E||this.char===CHAR_e)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNoUnderHexOctBinLiteral(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNumberFloat(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberFloat);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.call(this.parseNoUnder,this.parseNumberExponent);else throw this.error(new TomlError("Unexpected character, expected -, + or digit"))}parseNumberExponent(){if(isDigit(this.char))this.consume();else return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);throw this.error(new TomlError("Expected digit while parsing year part of a date"))}else{if(this.char===CHAR_HYPHEN)return this.goto(this.parseDateTime);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let n=Integer(this.state.buf);if(n.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(n)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseDateMonth)}parseDateMonth(){if(this.char===CHAR_HYPHEN){if(this.state.buf.length<2)throw this.error(new TomlError("Months less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseDateDay)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseDateDay(){if(this.char===CHAR_T||this.char===CHAR_SP){if(this.state.buf.length<2)throw this.error(new TomlError("Days less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):this.goto(this.parseTimeHour)}parseTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result+="T"+this.state.buf,this.state.buf="",this.next(this.parseTimeMin)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeZoneOrFraction)}else throw this.error(new TomlError("Incomplete datetime"))}parseOnlyTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeMin)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,this.char===CHAR_PERIOD)this.state.buf="",this.next(this.parseOnlyTimeFraction);else return this.return(createTime(this.state.result))}parseOnlyTimeFraction(){if(isDigit(this.char))this.consume();else if(this.atEndOfWord()){if(this.state.buf.length===0)throw this.error(new TomlError("Expected digit in milliseconds"));return this.returnNow(createTime(this.state.result+"."+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}parseTimeZoneOrFraction(){if(this.char===CHAR_PERIOD)this.consume(),this.next(this.parseDateTimeFraction);else if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}parseDateTimeFraction(){if(isDigit(this.char))this.consume();else{if(this.state.buf.length===1)throw this.error(new TomlError("Expected digit in milliseconds"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.next(this.parseTimeZoneSep)}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseTimeZoneSep(){if(this.char===CHAR_COLON)this.consume(),this.next(this.parseTimeZoneMin);else throw this.error(new TomlError("Unexpected character in datetime, expected colon"))}parseTimeZoneMin(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.return(createDateTime(this.state.result+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseBoolean(){if(this.char===CHAR_t)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseInlineList(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(n){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(n);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(n));return isFloat(n)||isInteger(n)?this.state.resultArr.push(n.valueOf()):this.state.resultArr.push(n),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}parseInlineTable(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(n){let a=this.state.resultTable,o=n.key.pop();for(let l of n.key){if(hasKey(a,l)&&(!isTable(a[l])||a[l][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[l]=a[l]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(n.value)||isFloat(n.value)?a[o]=n.value.valueOf():a[o]=n.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var YEt=H((Iku,iDi)=>{"use strict";iDi.exports=$gc;function $gc(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: -`,t&&t.split){let n=t.split(/\n/),a=String(Math.min(n.length,e.line+3)).length,o=" ";for(;o.length "+n[l]+` -`,r+=o+" ";for(let f=0;f{"use strict";sDi.exports=rAc;var eAc=HEt(),tAc=YEt();function rAc(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new eAc;try{return t.parse(e),t.finish()}catch(r){throw tAc(r,e)}}});var lDi=H((mku,cDi)=>{"use strict";cDi.exports=iAc;var nAc=HEt(),aDi=YEt();function iAc(e,t){t||(t={});let r=0,n=t.blocksize||40960,a=new nAc;return new Promise((l,A)=>{setImmediate(o,r,n,l,A)});function o(l,A,f,I){if(l>=e.length)try{return f(a.finish())}catch(C){return I(aDi(C,e))}try{a.parse(e.slice(l,l+A)),setImmediate(o,l+A,A,f,I)}catch(C){I(aDi(C,e))}}}});var ADi=H((Cku,gDi)=>{"use strict";gDi.exports=oAc;var sAc=wt("stream"),uDi=HEt();function oAc(e){return e?aAc(e):cAc(e)}function aAc(e){let t=new uDi;return e.setEncoding("utf8"),new Promise((r,n)=>{let a,o=!1,l=!1;function A(){if(o=!0,!a)try{r(t.finish())}catch(C){n(C)}}function f(C){l=!0,n(C)}e.once("end",A),e.once("error",f),I();function I(){a=!0;let C;for(;(C=e.read())!==null;)try{t.parse(C)}catch(b){return f(b)}if(a=!1,o)return A();l||e.once("readable",I)}})}function cAc(){let e=new uDi;return new sAc.Transform({objectMode:!0,transform(t,r,n){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}n()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var dDi=H((_ku,rUe)=>{"use strict";rUe.exports=oDi();rUe.exports.async=lDi();rUe.exports.stream=ADi();rUe.exports.prettyError=YEt()});var yDi=H((yku,Pkr)=>{"use strict";Pkr.exports=lAc;Pkr.exports.value=Vkr;function lAc(e){if(e===null)throw uCe("null");if(e===void 0)throw uCe("undefined");if(typeof e!="object")throw uCe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=vV(e);if(t!=="table")throw uCe(t);return Lkr("","",e)}function uCe(e){return new Error("Can only stringify objects, not "+e)}function uAc(){return new Error("Array values can't have mixed types")}function pDi(e){return Object.keys(e).filter(t=>fDi(e[t]))}function gAc(e){return Object.keys(e).filter(t=>!fDi(e[t]))}function QEt(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function Lkr(e,t,r){r=QEt(r);var n,a;n=pDi(r),a=gAc(r);var o=[],l=t||"";n.forEach(f=>{var I=vV(r[f]);I!=="undefined"&&I!=="null"&&o.push(l+XEt(f)+" = "+mDi(r[f],!0))}),o.length>0&&o.push("");var A=e&&n.length>0?t+" ":"";return a.forEach(f=>{o.push(bAc(e,A,f,r[f]))}),o.join(` -`)}function fDi(e){switch(vV(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||vV(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function vV(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function XEt(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:IDi(t)}function IDi(e){return'"'+hDi(e).replace(/"/g,'\\"')+'"'}function AAc(e){return"'"+e+"'"}function dAc(e,t){for(;t.length"\\u"+dAc(4,t.codePointAt(0).toString(16)))}function pAc(e){let t=e.split(/\n/).map(r=>hDi(r).replace(/"(?="")/g,'\\"')).join(` -`);return t.slice(-1)==='"'&&(t+=`\\ -`),`""" -`+t+'"""'}function mDi(e,t){let r=vV(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),Vkr(e,r)}function Vkr(e,t){switch(t||(t=vV(e)),t){case"string-multiline":return pAc(e);case"string":return IDi(e);case"string-literal":return AAc(e);case"integer":return CDi(e);case"float":return fAc(e);case"boolean":return IAc(e);case"datetime":return hAc(e);case"array":return _Ac(e.filter(r=>vV(r)!=="null"&&vV(r)!=="undefined"&&vV(r)!=="nan"));case"table":return yAc(e);default:throw uCe(t)}}function CDi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function fAc(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],n=t[1]||0;return CDi(r)+"."+n}function IAc(e){return String(e)}function hAc(e){return e.toISOString()}function mAc(e){return e==="float"||e==="integer"}function CAc(e){var t=vV(e[0]);return e.every(r=>vV(r)===t)?t:e.every(r=>mAc(vV(r)))?"float":"mixed"}function _Di(e){let t=CAc(e);if(t==="mixed")throw uAc();return t}function _Ac(e){e=QEt(e);let t=_Di(e);var r="[",n=e.map(a=>Vkr(a,t));return n.join(", ").length>60||/\n/.test(n)?r+=` - `+n.join(`, - `)+` -`:r+=" "+n.join(", ")+(n.length>0?" ":""),r+"]"}function yAc(e){e=QEt(e);var t=[];return Object.keys(e).forEach(r=>{t.push(XEt(r)+" = "+mDi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function bAc(e,t,r,n){var a=vV(n);if(a==="array")return EAc(e,t,r,n);if(a==="table")return SAc(e,t,r,n);throw uCe(a)}function EAc(e,t,r,n){n=QEt(n),_Di(n);var a=vV(n[0]);if(a!=="table")throw uCe(a);var o=e+XEt(r),l="";return n.forEach(A=>{l.length>0&&(l+=` -`),l+=t+"[["+o+`]] -`,l+=Lkr(o+".",t,A)}),l}function SAc(e,t,r,n){var a=e+XEt(r),o="";return pDi(n).length>0&&(o+=t+"["+a+`] -`),o+Lkr(a+".",t,n)}});var bDi=H(Wkr=>{"use strict";Wkr.parse=dDi();Wkr.stringify=yDi()});var jDi=H((qku,UEt)=>{var MDi={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(s,c)=>{for(var g in c)t(s,g,{get:c[g],enumerable:!0})},l=(s,c,g,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let h of n(c))!a.call(s,h)&&h!==g&&t(s,h,{get:()=>c[h],enumerable:!(d=r(c,h))||d.enumerable});return s},A=s=>s,f={};o(f,{ANONYMOUS:()=>tnt,AccessFlags:()=>Ty,AssertionLevel:()=>El,AssignmentDeclarationKind:()=>Ry,AssignmentKind:()=>hZe,Associativity:()=>SZe,BreakpointResolver:()=>$nt,BuilderFileEmit:()=>N3t,BuilderProgramKind:()=>V3t,BuilderState:()=>nR,CallHierarchy:()=>Mz,CharacterCodes:()=>J2,CheckFlags:()=>sB,CheckMode:()=>Eet,ClassificationType:()=>Art,ClassificationTypeNames:()=>W5t,CommentDirectiveType:()=>JS,Comparison:()=>b,CompletionInfoFlags:()=>x5t,CompletionTriggerKind:()=>urt,Completions:()=>Jz,ContainerFlags:()=>uOt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>KS,Diagnostics:()=>Z,DocumentHighlights:()=>IPe,ElementFlags:()=>tf,EmitFlags:()=>cB,EmitHint:()=>ty,EmitOnly:()=>Q2,EndOfLineState:()=>Z5t,ExitStatus:()=>ut,ExportKind:()=>NMt,Extension:()=>ey,ExternalEmitHelpers:()=>JR,FileIncludeKind:()=>$0,FilePreprocessingDiagnosticsKind:()=>fw,FileSystemEntryKind:()=>r1,FileWatcherEventKind:()=>yb,FindAllReferences:()=>Kp,FlattenLevel:()=>kOt,FlowFlags:()=>Yp,ForegroundColorEscapeSequences:()=>_3t,FunctionFlags:()=>bZe,GeneratedIdentifierFlags:()=>od,GetLiteralTextFlags:()=>A7,GoToDefinition:()=>nse,HighlightSpanKind:()=>D5t,IdentifierNameMap:()=>kie,ImportKind:()=>RMt,ImportsNotUsedAsValues:()=>zS,IndentStyle:()=>k5t,IndexFlags:()=>US,IndexKind:()=>Qm,InferenceFlags:()=>R_,InferencePriority:()=>mb,InlayHintKind:()=>N5t,InlayHints:()=>Yit,InternalEmitFlags:()=>RD,InternalNodeBuilderFlags:()=>vg,InternalSymbolName:()=>RT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>a5t,JSDocParsingMode:()=>t1,JsDoc:()=>n5,JsTyping:()=>YP,JsxEmit:()=>XR,JsxFlags:()=>Ym,JsxReferenceKind:()=>$I,LanguageFeatureMinimumTarget:()=>Rd,LanguageServiceMode:()=>T5t,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>$1,ListFormat:()=>$E,LogLevel:()=>fb,MapCode:()=>Qit,MemberOverrideStatus:()=>ar,ModifierFlags:()=>JE,ModuleDetectionKind:()=>zE,ModuleInstanceState:()=>cOt,ModuleKind:()=>jS,ModuleResolutionKind:()=>z_,ModuleSpecifierEnding:()=>dLe,NavigateTo:()=>eHt,NavigationBar:()=>rHt,NewLineKind:()=>qE,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>wy,NodeFactoryFlags:()=>Jbe,NodeFlags:()=>AC,NodeResolutionFeatures:()=>jWt,ObjectFlags:()=>j_,OperationCanceledException:()=>By,OperatorPrecedence:()=>vZe,OrganizeImports:()=>i5,OrganizeImportsMode:()=>lrt,OuterExpressionKinds:()=>cF,OutliningElementsCollector:()=>Jit,OutliningSpanKind:()=>G5t,OutputFileType:()=>F5t,PackageJsonAutoImportPreference:()=>w5t,PackageJsonDependencyGroup:()=>B5t,PatternMatchKind:()=>_nt,PollingInterval:()=>r_,PollingWatchKind:()=>aB,PragmaKindFlags:()=>N_,PredicateSemantics:()=>K_,PreparePasteEdits:()=>cst,PrivateIdentifierKind:()=>HLe,ProcessLevel:()=>ZOt,ProgramUpdateLevel:()=>f3t,QuotePreference:()=>cMt,RegularExpressionFlags:()=>UE,RelationComparisonResult:()=>vy,Rename:()=>$Pe,ScriptElementKind:()=>V5t,ScriptElementKindModifier:()=>P5t,ScriptKind:()=>X2,ScriptSnapshot:()=>TVe,ScriptTarget:()=>kT,SemanticClassificationFormat:()=>R5t,SemanticMeaning:()=>O5t,SemicolonPreference:()=>grt,SignatureCheckMode:()=>vet,SignatureFlags:()=>$A,SignatureHelp:()=>X1e,SignatureInfo:()=>R3t,SignatureKind:()=>BA,SmartSelectionRange:()=>jit,SnippetKind:()=>Iw,StatisticType:()=>I5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>uI,SymbolDisplay:()=>i9,SymbolDisplayPartKind:()=>NVe,SymbolFlags:()=>TT,SymbolFormatFlags:()=>Rf,SyntaxKind:()=>Ld,Ternary:()=>Cb,ThrottledCancellationToken:()=>uYt,TokenClass:()=>L5t,TokenFlags:()=>KE,TransformFlags:()=>up,TypeFacts:()=>bet,TypeFlags:()=>jE,TypeFormatFlags:()=>Ng,TypeMapKind:()=>zf,TypePredicateKind:()=>Th,TypeReferenceSerializationKind:()=>oE,UnionReduction:()=>Jr,UpToDateStatusType:()=>e5t,VarianceFlags:()=>NT,Version:()=>O,VersionRange:()=>gt,WatchDirectoryFlags:()=>q1,WatchDirectoryKind:()=>DT,WatchFileKind:()=>oB,WatchLogLevel:()=>h3t,WatchType:()=>jm,accessPrivateIdentifier:()=>DOt,addEmitFlags:()=>Gw,addEmitHelper:()=>$Y,addEmitHelpers:()=>hN,addInternalEmitFlags:()=>N3,addNodeFactoryPatcher:()=>qqe,addObjectAllocatorPatcher:()=>Zqe,addRange:()=>Or,addRelatedInfo:()=>lg,addSyntheticLeadingComment:()=>JT,addSyntheticTrailingComment:()=>Iz,addToSeen:()=>Zy,advancedAsyncSuperHelper:()=>DF,affectsDeclarationPathOptionDeclarations:()=>yWt,affectsEmitOptionDeclarations:()=>_Wt,allKeysStartWithDot:()=>x9e,altDirectorySeparator:()=>Eb,and:()=>dh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>yLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Ju,arrayToNumericMap:()=>Vs,assertType:()=>nE,assign:()=>Wt,asyncSuperHelper:()=>lie,attachFileToDiagnostics:()=>XL,base64decode:()=>YZe,base64encode:()=>ibe,binarySearch:()=>Wc,binarySearchKey:()=>Sg,bindSourceFile:()=>gOt,breakIntoCharacterSpans:()=>XMt,breakIntoWordSpans:()=>JMt,buildLinkParts:()=>IMt,buildOpts:()=>CEe,buildOverload:()=>Bpn,bundlerModuleNameResolver:()=>zWt,canBeConvertedToAsync:()=>Bnt,canHaveDecorators:()=>oQ,canHaveExportModifier:()=>Kne,canHaveFlowNode:()=>UJ,canHaveIllegalDecorators:()=>D$e,canHaveIllegalModifiers:()=>tWt,canHaveIllegalType:()=>l$r,canHaveIllegalTypeParameters:()=>eWt,canHaveJSDoc:()=>Ane,canHaveLocals:()=>WI,canHaveModifiers:()=>LB,canHaveModuleSpecifier:()=>dZe,canHaveSymbol:()=>mE,canIncludeBindAndCheckDiagnostics:()=>gU,canJsonReportNoInputFiles:()=>vEe,canProduceDiagnostics:()=>ZEe,canUsePropertyAccess:()=>Fbe,canWatchAffectingLocation:()=>X3t,canWatchAtTypes:()=>Q3t,canWatchDirectoryOrFile:()=>Btt,canWatchDirectoryOrFilePath:()=>zEe,cartesianProduct:()=>XE,cast:()=>Ma,chainBundle:()=>rR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>K2,changeCompilerHostLikeToUseCache:()=>Gde,changeExtension:()=>fN,changeFullExtension:()=>i_,changesAffectModuleResolution:()=>NJ,changesAffectingProgramStructure:()=>fge,characterCodeToRegularExpressionFlag:()=>Wg,childIsDecorated:()=>HJ,classElementOrClassElementParameterIsDecorated:()=>hye,classHasClassThisAssignment:()=>Wet,classHasDeclaredOrExplicitlyAssignedName:()=>Oet,classHasExplicitlyAssignedName:()=>X9e,classOrConstructorParameterIsDecorated:()=>Rx,classicNameResolver:()=>oOt,classifier:()=>pYt,cleanExtendedConfigCache:()=>q9e,clear:()=>St,clearMap:()=>Fy,clearSharedExtendedConfigFileWatcher:()=>ttt,climbPastPropertyAccess:()=>xVe,clone:()=>Eg,cloneCompilerOptions:()=>Drt,closeFileWatcher:()=>dv,closeFileWatcherOf:()=>Cv,codefix:()=>x0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>Zet,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>SWt,commentPragmas:()=>e1,commonOptionsWithBuild:()=>d9e,compact:()=>Hr,compareBooleans:()=>Ml,compareDataObjects:()=>_Ae,compareDiagnostics:()=>X7,compareEmitHelpers:()=>QLe,compareNumberOfDirectorySeparators:()=>Qne,comparePaths:()=>qf,comparePathsCaseInsensitive:()=>pB,comparePathsCaseSensitive:()=>Cx,comparePatternKeys:()=>fet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Wa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>so,compareTextSpans:()=>yn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>oLe,compilerOptionsAffectEmit:()=>sLe,compilerOptionsAffectSemanticDiagnostics:()=>mbe,compilerOptionsDidYouMeanDiagnostics:()=>h9e,compilerOptionsIndicateEsModules:()=>Lrt,computeCommonSourceDirectoryOfFilenames:()=>m3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Po,computeLineStarts:()=>cA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>_tt,computeSuggestionDiagnostics:()=>Ent,computedOptions:()=>J7,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Fne,consumesNodeCoreModules:()=>aPe,contains:()=>k,containsIgnoredPath:()=>sz,containsObjectRestOrSpread:()=>fEe,containsParseError:()=>pP,containsPath:()=>Jh,convertCompilerOptionsForTelemetry:()=>PWt,convertCompilerOptionsFromJson:()=>men,convertJsonOption:()=>vU,convertToBase64:()=>nbe,convertToJson:()=>bEe,convertToObject:()=>xWt,convertToOptionsWithAbsolutePaths:()=>y9e,convertToRelativePath:()=>r2,convertToTSConfig:()=>z$e,convertTypeAcquisitionFromJson:()=>Cen,copyComments:()=>xU,copyEntries:()=>a7,copyLeadingComments:()=>Uie,copyProperties:()=>GA,copyTrailingAsLeadingComments:()=>m1e,copyTrailingComments:()=>jde,couldStartTrivia:()=>tv,countWhere:()=>ct,createAbstractBuilder:()=>wrn,createAccessorPropertyBackingField:()=>G$e,createAccessorPropertyGetRedirector:()=>lWt,createAccessorPropertySetRedirector:()=>uWt,createBaseNodeFactory:()=>xLe,createBinaryExpressionTrampoline:()=>c9e,createBuilderProgram:()=>ytt,createBuilderProgramUsingIncrementalBuildInfo:()=>M3t,createBuilderStatusReporter:()=>_Ve,createCacheableExportInfoMap:()=>Ant,createCachedDirectoryStructureHost:()=>j9e,createClassifier:()=>nin,createCommentDirectivesMap:()=>bge,createCompilerDiagnostic:()=>Nf,createCompilerDiagnosticForInvalidCustomType:()=>vWt,createCompilerDiagnosticFromMessageChain:()=>SAe,createCompilerHost:()=>C3t,createCompilerHostFromProgramHost:()=>Ott,createCompilerHostWorker:()=>$9e,createDetachedDiagnostic:()=>QY,createDiagnosticCollection:()=>EF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>A3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Bw,createDiagnosticForNodeInSourceFile:()=>_E,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Gz,createDocumentPositionMapper:()=>BOt,createDocumentRegistry:()=>FMt,createDocumentRegistryInternal:()=>hnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>vtt,createEmitHelperFactory:()=>YLe,createEmptyExports:()=>aEe,createEvaluator:()=>NLe,createExpressionForJsxElement:()=>UPt,createExpressionForJsxFragment:()=>KPt,createExpressionForObjectLiteralElementLike:()=>jPt,createExpressionForPropertyName:()=>v$e,createExpressionFromEntityName:()=>cEe,createExternalHelpersImportDeclarationIfNeeded:()=>T$e,createFileDiagnostic:()=>qh,createFileDiagnosticFromMessageChain:()=>ze,createFlowNode:()=>rk,createForOfBindingStatement:()=>S$e,createFutureSourceFile:()=>dPe,createGetCanonicalFileName:()=>_d,createGetIsolatedDeclarationErrors:()=>s3t,createGetSourceFile:()=>ott,createGetSymbolAccessibilityDiagnosticForNode:()=>J3,createGetSymbolAccessibilityDiagnosticForNodeName:()=>i3t,createGetSymbolWalker:()=>AOt,createIncrementalCompilerHost:()=>CVe,createIncrementalProgram:()=>$3t,createJsxFactoryExpression:()=>E$e,createLanguageService:()=>gYt,createLanguageServiceSourceFile:()=>kPe,createMemberAccessForPropertyName:()=>EU,createModeAwareCache:()=>wie,createModeAwareCacheKey:()=>Cde,createModeMismatchDetails:()=>l7,createModuleNotFoundChain:()=>kJ,createModuleResolutionCache:()=>Tie,createModuleResolutionLoader:()=>Att,createModuleResolutionLoaderUsingGlobalCache:()=>j3t,createModuleSpecifierResolutionHost:()=>z3,createMultiMap:()=>dl,createNameResolver:()=>JAe,createNodeConverters:()=>GLe,createNodeFactory:()=>nie,createOptionNameMap:()=>f9e,createOverload:()=>ust,createPackageJsonImportFilter:()=>jie,createPackageJsonInfo:()=>int,createParenthesizerRules:()=>pv,createPatternMatcher:()=>WMt,createPrinter:()=>MP,createPrinterWithDefaults:()=>d3t,createPrinterWithRemoveComments:()=>gQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>p3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>ett,createProgram:()=>UEe,createProgramDiagnostics:()=>w3t,createProgramHost:()=>Mtt,createPropertyNameNodeForIdentifierOrLiteral:()=>Une,createQueue:()=>oA,createRange:()=>Gy,createRedirectedBuilderProgram:()=>Stt,createResolutionCache:()=>Ttt,createRuntimeTypeSerializer:()=>OOt,createScanner:()=>wb,createSemanticDiagnosticsBuilderProgram:()=>Brn,createSet:()=>oo,createSolutionBuilder:()=>i5t,createSolutionBuilderHost:()=>r5t,createSolutionBuilderWithWatch:()=>s5t,createSolutionBuilderWithWatchHost:()=>n5t,createSortedArray:()=>Ya,createSourceFile:()=>vz,createSourceMapGenerator:()=>yOt,createSourceMapSource:()=>t$e,createSuperAccessVariableStatement:()=>U9e,createSymbolTable:()=>qu,createSymlinkCache:()=>_be,createSyntacticTypeNodeBuilder:()=>E5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>g1e,createTextChangeFromStartLength:()=>XVe,createTextChangeRange:()=>$2,createTextRangeFromNode:()=>Grt,createTextRangeFromSpan:()=>QVe,createTextSpan:()=>zd,createTextSpanFromBounds:()=>wA,createTextSpanFromNode:()=>Oy,createTextSpanFromRange:()=>t9,createTextSpanFromStringLiteralLikeContent:()=>xrt,createTextWriter:()=>Bne,createTokenRange:()=>QL,createTypeChecker:()=>COt,createTypeReferenceDirectiveResolutionCache:()=>D9e,createTypeReferenceResolutionLoader:()=>rVe,createWatchCompilerHost:()=>Lrn,createWatchCompilerHostOfConfigFile:()=>Htt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Ytt,createWatchFactory:()=>Wtt,createWatchHost:()=>Ptt,createWatchProgram:()=>Qtt,createWatchStatusReporter:()=>Rtt,createWriteFileMeasuringIO:()=>att,declarationNameToString:()=>Wd,decodeMappings:()=>xet,decodedTextSpanIntersectsWith:()=>IE,deduplicate:()=>io,defaultHoverMaximumTruncationLength:()=>Age,defaultInitCompilerOptions:()=>V$r,defaultMaximumTruncationLength:()=>EY,diagnosticCategoryName:()=>_b,diagnosticToString:()=>IQ,diagnosticsEqualityComparer:()=>vAe,directoryProbablyExists:()=>f1,directorySeparator:()=>ag,displayPart:()=>SE,displayPartsToString:()=>D1e,disposeEmitNodes:()=>Ku,documentSpansEqual:()=>Yrt,dumpTracingLegend:()=>jf,elementAt:()=>Cg,elideNodes:()=>cWt,emitDetachedComments:()=>xZe,emitFiles:()=>qet,emitFilesAndReportErrors:()=>fVe,emitFilesAndReportErrorsAndGetExitStatus:()=>Vtt,emitModuleKindIsNonNodeESM:()=>Wne,emitNewLineBeforeLeadingCommentOfPosition:()=>Uye,emitResolverSkipsTypeChecking:()=>zet,emitSkippedWithNoDiagnostics:()=>ftt,emptyArray:()=>E,emptyFileSystemEntries:()=>wbe,emptyMap:()=>N,emptyOptions:()=>VB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Am,ensureScriptKind:()=>xAe,ensureTrailingDirectorySeparator:()=>hp,entityNameToString:()=>oy,enumerateInsertsAndDeletes:()=>q0,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Mp,equateStringsCaseSensitive:()=>MA,equateValues:()=>yg,escapeJsxAttributeString:()=>Wye,escapeLeadingUnderscores:()=>Ap,escapeNonAsciiString:()=>Ene,escapeSnippetText:()=>xP,escapeString:()=>YT,escapeTemplateSubstitution:()=>Vye,evaluatorResult:()=>$h,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>jAe,executeCommandLine:()=>Inn,expandPreOrPostfixIncrementOrDecrementExpression:()=>n9e,explainFiles:()=>xtt,explainIfFileIsRedirectAndImpliedFormat:()=>Gtt,exportAssignmentIsAlias:()=>Ine,expressionResultIsUnused:()=>ELe,extend:()=>OA,extensionFromPath:()=>tz,extensionIsTS:()=>PAe,extensionsNotSupportingExtensionlessResolution:()=>VAe,externalHelpersModuleNameText:()=>PD,factory:()=>me,fileExtensionIs:()=>aA,fileExtensionIsOneOf:()=>fu,fileIncludeReasonToDiagnostics:()=>Ltt,fileShouldUseJavaScriptRequire:()=>gnt,filter:()=>Me,filterMutate:()=>je,filterSemanticDiagnostics:()=>oVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>YA,findChildOfKind:()=>qd,findComputedPropertyNameCacheAssignment:()=>l9e,findConfigFile:()=>itt,findConstructorDeclaration:()=>zY,findContainingList:()=>VVe,findDiagnosticForNode:()=>BMt,findFirstNonJsxWhitespaceToken:()=>K5t,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>U5t,findModifier:()=>Qie,findNextToken:()=>fQ,findPackageJson:()=>vMt,findPackageJsons:()=>nnt,findPrecedingMatchingToken:()=>HVe,findPrecedingToken:()=>Gm,findSuperStatementIndexPath:()=>M9e,findTokenOnLeftOfPosition:()=>Hde,findUseStrictPrologue:()=>w$e,first:()=>ma,firstDefined:()=>X,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>ant,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>iA,fixupCompilerOptions:()=>wnt,flatMap:()=>er,flatMapIterator:()=>xt,flatMapToMutable:()=>vt,flatten:()=>Nr,flattenCommaList:()=>gWt,flattenDestructuringAssignment:()=>TU,flattenDestructuringBinding:()=>uQ,flattenDiagnosticMessageText:()=>wN,forEach:()=>F,forEachAncestor:()=>Ew,forEachAncestorDirectory:()=>pE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>vN,forEachChild:()=>Lu,forEachChildRecursively:()=>Sz,forEachDynamicImportOrRequireCall:()=>$ne,forEachEmittedFile:()=>Jet,forEachEnclosingBlockScopeContainer:()=>Dge,forEachEntry:()=>Dh,forEachExternalModuleToImportFrom:()=>pnt,forEachImportClauseDeclaration:()=>pZe,forEachKey:()=>SB,forEachLeadingCommentRange:()=>GD,forEachNameInAccessChainWalkingLeft:()=>jZe,forEachNameOfDefaultExport:()=>fPe,forEachOptionsSyntaxByName:()=>zAe,forEachProjectReference:()=>gz,forEachPropertyAssignment:()=>WJ,forEachResolvedProjectReference:()=>tie,forEachReturnStatement:()=>yF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>dF,forEachTsConfigPropArray:()=>zre,forEachUnique:()=>Xrt,forEachYieldExpression:()=>$Fe,formatColorAndReset:()=>AQ,formatDiagnostic:()=>ctt,formatDiagnostics:()=>ern,formatDiagnosticsWithColorAndContext:()=>E3t,formatGeneratedName:()=>M3,formatGeneratedNamePart:()=>Eie,formatLocation:()=>ltt,formatMessage:()=>XY,formatStringFromArgs:()=>dN,formatting:()=>Im,generateDjb2Hash:()=>ry,generateTSConfig:()=>GWt,getAdjustedReferenceLocation:()=>vrt,getAdjustedRenameLocation:()=>WVe,getAliasDeclarationFromName:()=>Rye,getAllAccessorDeclarations:()=>BP,getAllDecoratorsOfClass:()=>Vet,getAllDecoratorsOfClassElement:()=>Y9e,getAllJSDocTags:()=>dJ,getAllJSDocTagsOfKind:()=>rye,getAllKeys:()=>mI,getAllProjectOutputs:()=>K9e,getAllSuperTypeNodes:()=>R7,getAllowImportingTsExtensions:()=>eLe,getAllowJSCompilerOption:()=>TF,getAllowSyntheticDefaultImports:()=>JY,getAncestor:()=>ML,getAnyExtensionFromPath:()=>gE,getAreDeclarationMapsEnabled:()=>BAe,getAssignedExpandoInitializer:()=>FY,getAssignedName:()=>CB,getAssignmentDeclarationKind:()=>nI,getAssignmentDeclarationPropertyAccessKind:()=>XJ,getAssignmentTargetKind:()=>QD,getAutomaticTypeDirectiveNames:()=>R9e,getBaseFileName:()=>gp,getBinaryOperatorPrecedence:()=>bne,getBuildInfo:()=>$et,getBuildInfoFileVersionMap:()=>Ett,getBuildInfoText:()=>g3t,getBuildOrderFromAnyBuildOrder:()=>$Ee,getBuilderCreationParameters:()=>uVe,getBuilderFileEmit:()=>HP,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>iI,getClassExtendsHeritageElement:()=>OL,getClassLikeDeclarationOfSymbol:()=>AN,getCombinedLocalAndExportSymbolFlags:()=>sU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>dm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ad,getCommentRange:()=>DB,getCommonSourceDirectory:()=>xde,getCommonSourceDirectoryOfConfig:()=>RU,getCompilerOptionValue:()=>K7,getConditions:()=>PP,getConfigFileParsingDiagnostics:()=>dQ,getConstantValue:()=>ZLe,getContainerFlags:()=>het,getContainerNode:()=>kU,getContainingClass:()=>hC,getContainingClassExcludingClassDecorators:()=>Oge,getContainingClassStaticBlock:()=>iZe,getContainingFunction:()=>A1,getContainingFunctionDeclaration:()=>Wge,getContainingFunctionOrClassStaticBlock:()=>qre,getContainingNodeArray:()=>SLe,getContainingObjectLiteralElement:()=>k1e,getContextualTypeFromParent:()=>tPe,getContextualTypeFromParentOrAncestorTypeNode:()=>PVe,getDeclarationDiagnostics:()=>o3t,getDeclarationEmitExtensionForPath:()=>sAe,getDeclarationEmitOutputFilePath:()=>RZe,getDeclarationEmitOutputFilePathWorker:()=>wne,getDeclarationFileExtension:()=>g9e,getDeclarationFromName:()=>T7,getDeclarationModifierFlagsFromSymbol:()=>u2,getDeclarationOfKind:()=>Cp,getDeclarationsOfKind:()=>dge,getDeclaredExpandoInitializer:()=>E7,getDecorators:()=>Rb,getDefaultCompilerOptions:()=>DPe,getDefaultFormatCodeSettings:()=>RVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>AYt,getDefaultLikeExportInfo:()=>pPe,getDefaultLikeExportNameFromDeclaration:()=>cnt,getDefaultResolutionModeForFileWorker:()=>sVe,getDiagnosticText:()=>Zb,getDiagnosticsWithinSpan:()=>wMt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>wtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>U3t,getDocumentPositionMapper:()=>bnt,getDocumentSpansEqualityComparer:()=>Qrt,getESModuleInterop:()=>kw,getEditsForFileRename:()=>LMt,getEffectiveBaseTypeNode:()=>BB,getEffectiveConstraintOfTypeParameter:()=>n3,getEffectiveContainerForJSDocTemplateTag:()=>zge,getEffectiveImplementsTypeNodes:()=>jJ,getEffectiveInitializer:()=>one,getEffectiveJSDocHost:()=>WL,getEffectiveModifierFlags:()=>o_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>VZe,getEffectiveModifierFlagsNoCache:()=>zye,getEffectiveReturnTypeNode:()=>xb,getEffectiveSetAccessorTypeAnnotationNode:()=>Jye,getEffectiveTypeAnnotationNode:()=>kh,getEffectiveTypeParameterDeclarations:()=>ZD,getEffectiveTypeRoots:()=>mde,getElementOrPropertyAccessArgumentExpressionOrName:()=>jge,getElementOrPropertyAccessName:()=>YD,getElementsOfBindingOrAssignmentPattern:()=>bie,getEmitDeclarations:()=>Ly,getEmitFlags:()=>tA,getEmitHelpers:()=>jbe,getEmitModuleDetectionKind:()=>tLe,getEmitModuleFormatOfFileWorker:()=>Lde,getEmitModuleKind:()=>i0,getEmitModuleResolutionKind:()=>k_,getEmitScriptTarget:()=>Mg,getEmitStandardClassFields:()=>hbe,getEnclosingBlockScopeContainer:()=>tS,getEnclosingContainer:()=>f7,getEncodedSemanticClassifications:()=>fnt,getEncodedSyntacticClassifications:()=>Int,getEndLinePosition:()=>vY,getEntityNameFromTypeNode:()=>ene,getEntrypointsFromPackageJsonInfo:()=>Aet,getErrorCountForSummary:()=>dVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>Dtt,getEscapedTextOfIdentifierOrLiteral:()=>qJ,getEscapedTextOfJsxAttributeName:()=>cz,getEscapedTextOfJsxNamespacedName:()=>oS,getExpandoInitializer:()=>VL,getExportAssignmentExpression:()=>hne,getExportInfoMap:()=>S1e,getExportNeedsImportStarHelper:()=>wOt,getExpressionAssociativity:()=>Zye,getExpressionPrecedence:()=>x7,getExternalHelpersModuleName:()=>uEe,getExternalModuleImportEqualsDeclarationExpression:()=>_7,getExternalModuleName:()=>LY,getExternalModuleNameFromDeclaration:()=>wZe,getExternalModuleNameFromPath:()=>Mye,getExternalModuleNameLiteral:()=>Ez,getExternalModuleRequireArgument:()=>Cye,getFallbackOptions:()=>QEe,getFileEmitOutput:()=>T3t,getFileMatcherPatterns:()=>kAe,getFileNamesFromConfigSpecs:()=>Ide,getFileWatcherEventKind:()=>qS,getFilesInErrorForSummary:()=>pVe,getFirstConstructorWithBody:()=>lN,getFirstIdentifier:()=>B0,getFirstNonSpaceCharacterPosition:()=>CMt,getFirstProjectOutput:()=>jet,getFixableErrorSpanExpression:()=>snt,getFormatCodeSettingsForWriting:()=>gPe,getFullWidth:()=>DJ,getFunctionFlags:()=>SI,getHeritageClause:()=>mne,getHostSignatureFromJSDoc:()=>PL,getIdentifierAutoGenerate:()=>i$e,getIdentifierGeneratedImportReference:()=>MLe,getIdentifierTypeArguments:()=>G3,getImmediatelyInvokedFunctionExpression:()=>ZL,getImpliedNodeFormatForEmitWorker:()=>NU,getImpliedNodeFormatForFile:()=>JEe,getImpliedNodeFormatForFileWorker:()=>iVe,getImportNeedsImportDefaultHelper:()=>Fet,getImportNeedsImportStarHelper:()=>W9e,getIndentString:()=>iAe,getInferredLibraryNameResolveFrom:()=>nVe,getInitializedVariables:()=>iU,getInitializerOfBinaryExpression:()=>bye,getInitializerOfBindingOrAssignmentElement:()=>AEe,getInterfaceBaseTypeNodes:()=>N7,getInternalEmitFlags:()=>g1,getInvokedExpression:()=>Yge,getIsFileExcluded:()=>kMt,getIsolatedModules:()=>sS,getJSDocAugmentsTag:()=>K6,getJSDocClassTag:()=>bx,getJSDocCommentRanges:()=>dye,getJSDocCommentsAndTags:()=>Sye,getJSDocDeprecatedTag:()=>Kh,getJSDocDeprecatedTagNoCache:()=>i2,getJSDocEnumTag:()=>a1,getJSDocHost:()=>bP,getJSDocImplementsTags:()=>uY,getJSDocOverloadTags:()=>Bye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>vL,getJSDocParameterTagsNoCache:()=>uJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>_re,getJSDocPublicTagNoCache:()=>Ex,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>hA,getJSDocReturnTag:()=>sv,getJSDocReturnType:()=>AJ,getJSDocRoot:()=>KJ,getJSDocSatisfiesExpressionType:()=>Lbe,getJSDocSatisfiesTag:()=>fF,getJSDocTags:()=>Sx,getJSDocTemplateTag:()=>oP,getJSDocThisTag:()=>Nb,getJSDocType:()=>eN,getJSDocTypeAliasName:()=>N$e,getJSDocTypeAssertionType:()=>_ie,getJSDocTypeParameterDeclarations:()=>uAe,getJSDocTypeParameterTags:()=>r3,getJSDocTypeParameterTagsNoCache:()=>U6,getJSDocTypeTag:()=>ov,getJSXImplicitImportBase:()=>One,getJSXRuntimeImport:()=>Mne,getJSXTransformEnabled:()=>RAe,getKeyForCompilerOptions:()=>oet,getLanguageVariant:()=>Zne,getLastChild:()=>ube,getLeadingCommentRanges:()=>fE,getLeadingCommentRangesOfNode:()=>Fge,getLeftmostAccessExpression:()=>oU,getLeftmostExpression:()=>aU,getLibFileNameFromLibReference:()=>Obe,getLibNameFromLibReference:()=>qY,getLibraryNameFromLibFileName:()=>dtt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ket,getLineOfLocalPosition:()=>Z7,getLineStartPositionForPosition:()=>PB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>obe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>UZe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>v3,getLinesBetweenRangeEndPositions:()=>JZe,getLiteralText:()=>Sge,getLocalNameForExternalImport:()=>yie,getLocalSymbolForExportDefault:()=>W7,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>qEe,getMappedContextSpan:()=>Jrt,getMappedDocumentSpan:()=>qVe,getMappedLocation:()=>Jde,getMatchedFileSpec:()=>Ftt,getMatchedIncludeSpec:()=>Ztt,getMeaningFromDeclaration:()=>DVe,getMeaningFromLocation:()=>DU,getMembersOfDeclaration:()=>Zge,getModeForFileReference:()=>S3t,getModeForResolutionAtIndex:()=>orn,getModeForUsageLocation:()=>gtt,getModifiedTime:()=>bb,getModifiers:()=>$R,getModuleInstanceState:()=>PF,getModuleNameStringLiteralAt:()=>KEe,getModuleSpecifierEndingPreference:()=>pLe,getModuleSpecifierResolverHost:()=>Vrt,getNameForExportedSymbol:()=>cPe,getNameFromImportAttribute:()=>XAe,getNameFromIndexInfo:()=>kge,getNameFromPropertyName:()=>d1e,getNameOfAccessExpression:()=>gbe,getNameOfCompilerOptionValue:()=>_9e,getNameOfDeclaration:()=>Il,getNameOfExpando:()=>_ye,getNameOfJSDocTypedef:()=>pF,getNameOfScriptTarget:()=>TAe,getNameOrArgument:()=>cne,getNameTable:()=>qnt,getNamespaceDeclarationNode:()=>JJ,getNewLineCharacter:()=>uN,getNewLineKind:()=>E1e,getNewLineOrDefaultFromHost:()=>OF,getNewTargetContainer:()=>oZe,getNextJSDocCommentLocation:()=>vye,getNodeChildren:()=>y$e,getNodeForGeneratedName:()=>pEe,getNodeId:()=>rd,getNodeKind:()=>pQ,getNodeModifiers:()=>Yde,getNodeModulePathParts:()=>MAe,getNonAssignedNameOfDeclaration:()=>Cw,getNonAssignmentOperatorForCompoundAssignment:()=>Bde,getNonAugmentationDeclaration:()=>LJ,getNonDecoratorTokenPosOfNode:()=>Mre,getNonIncrementalBuildInfoRoots:()=>H3t,getNonModifierTokenPosOfNode:()=>Ege,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>KR,getNormalizedPathComponents:()=>AB,getObjectFlags:()=>la,getOperatorAssociativity:()=>Lye,getOperatorPrecedence:()=>yne,getOptionFromName:()=>X$e,getOptionsForLibraryResolution:()=>aet,getOptionsNameMap:()=>vie,getOptionsSyntaxByArrayElementValue:()=>Mbe,getOptionsSyntaxByValue:()=>DLe,getOrCreateEmitNode:()=>c_,getOrUpdate:()=>cr,getOriginalNode:()=>Dd,getOriginalNodeId:()=>Wy,getOutputDeclarationFileName:()=>kde,getOutputDeclarationFileNameWorker:()=>Uet,getOutputExtension:()=>MEe,getOutputFileNames:()=>qtn,getOutputJSFileNameWorker:()=>Ket,getOutputPathsFor:()=>Dde,getOwnEmitOutputFilePath:()=>TZe,getOwnKeys:()=>_g,getOwnValues:()=>Qh,getPackageJsonTypesVersionsPaths:()=>T9e,getPackageNameFromTypesPackageName:()=>bde,getPackageScopeForPath:()=>yde,getParameterSymbolFromJSDoc:()=>dne,getParentNodeInSpan:()=>f1e,getParseTreeNode:()=>$l,getParsedCommandLineOfConfigFile:()=>_Ee,getPathComponents:()=>Np,getPathFromPathComponents:()=>Dm,getPathUpdater:()=>Cnt,getPathsBasePath:()=>oAe,getPatternFromSpec:()=>Ebe,getPendingEmitKindWithSeen:()=>lVe,getPositionOfLineAndCharacter:()=>th,getPossibleGenericSignatures:()=>wrt,getPossibleOriginalInputExtensionForExtension:()=>Hye,getPossibleOriginalInputPathWithoutChangingExt:()=>Yye,getPossibleTypeArgumentsInfo:()=>Trt,getPreEmitDiagnostics:()=>$tn,getPrecedingNonSpaceCharacterPosition:()=>$Ve,getPrivateIdentifier:()=>Pet,getProperties:()=>Let,getProperty:()=>pu,getPropertyAssignmentAliasLikeExpression:()=>yZe,getPropertyNameForPropertyNameNode:()=>_3,getPropertyNameFromType:()=>A2,getPropertyNameOfBindingOrAssignmentElement:()=>R$e,getPropertySymbolFromBindingElement:()=>zVe,getPropertySymbolsFromContextualType:()=>xPe,getQuoteFromPreference:()=>Wrt,getQuotePreference:()=>_1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>Vz,getReferencedFileLocation:()=>Zde,getRegexFromPattern:()=>zD,getRegularExpressionForWildcard:()=>j7,getRegularExpressionsForWildcards:()=>Hne,getRelativePathFromDirectory:()=>mp,getRelativePathFromFile:()=>i1,getRelativePathToDirectoryOrUrl:()=>Of,getRenameLocation:()=>h1e,getReplacementSpanForContextToken:()=>krt,getResolutionDiagnostic:()=>htt,getResolutionModeOverride:()=>Gie,getResolveJsonModule:()=>NP,getResolvePackageJsonExports:()=>U7,getResolvePackageJsonImports:()=>Vne,getResolvedExternalModuleName:()=>F7,getResolvedModuleFromResolution:()=>xL,getResolvedTypeReferenceDirectiveFromResolution:()=>c7,getRestIndicatorOfBindingOrAssignmentElement:()=>o9e,getRestParameterElementType:()=>pye,getRightMostAssignedExpression:()=>ane,getRootDeclaration:()=>Rw,getRootDirectoryOfResolutionCache:()=>K3t,getRootLength:()=>Wf,getScriptKind:()=>zrt,getScriptKindFromFileName:()=>GAe,getScriptTargetFeatures:()=>Hre,getSelectedEffectiveModifierFlags:()=>MY,getSelectedSyntacticModifierFlags:()=>ZZe,getSemanticClassifications:()=>xMt,getSemanticJsxChildren:()=>$J,getSetAccessorTypeAnnotationNode:()=>DZe,getSetAccessorValueParameter:()=>L7,getSetExternalModuleIndicator:()=>Lne,getShebang:()=>mB,getSingleVariableOfVariableStatement:()=>m3,getSnapshotText:()=>Lz,getSnippetElement:()=>zbe,getSourceFileOfModule:()=>FJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>cAe,getSourceFileVersionAsHashFromText:()=>IVe,getSourceFilesToEmit:()=>aAe,getSourceMapRange:()=>XT,getSourceMapper:()=>KMt,getSourceTextOfNodeFromSourceFile:()=>mF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>OD,getStartPositionOfRange:()=>H7,getStartsOnNewLine:()=>D3,getStaticPropertiesAndClassStaticBlock:()=>H9e,getStrictOptionValue:()=>a_,getStringComparer:()=>ld,getSubPatternFromSpec:()=>DAe,getSuperCallFromStatement:()=>O9e,getSuperContainer:()=>C7,getSupportedCodeFixes:()=>jnt,getSupportedExtensions:()=>z7,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>q7,getSwitchedType:()=>ent,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>_ne,getSymbolTarget:()=>qrt,getSyntacticClassifications:()=>GMt,getSyntacticModifierFlags:()=>Nx,getSyntacticModifierFlagsNoCache:()=>qye,getSynthesizedDeepClone:()=>JA,getSynthesizedDeepCloneWithReplacements:()=>rie,getSynthesizedDeepClones:()=>o0,getSynthesizedDeepClonesWithReplacements:()=>qAe,getSyntheticLeadingComments:()=>k3,getSyntheticTrailingComments:()=>hU,getTargetLabel:()=>GVe,getTargetOfBindingOrAssignmentElement:()=>ZP,getTemporaryModuleResolutionState:()=>_de,getTextOfConstantValue:()=>vge,getTextOfIdentifierOrLiteral:()=>c2,getTextOfJSDocComment:()=>pJ,getTextOfJsxAttributeName:()=>xw,getTextOfJsxNamespacedName:()=>lz,getTextOfNode:()=>xp,getTextOfNodeFromSourceText:()=>TY,getTextOfPropertyName:()=>hP,getThisContainer:()=>r0,getThisParameter:()=>vP,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>MD,getTokenSourceMapRange:()=>fz,getTouchingPropertyName:()=>Lb,getTouchingToken:()=>Hie,getTrailingCommentRanges:()=>n2,getTrailingSemicolonDeferringWriter:()=>Oye,getTransformers:()=>c3t,getTsBuildInfoEmitOutputFilePath:()=>U3,getTsConfigObjectLiteralExpression:()=>m7,getTsConfigPropArrayElementValue:()=>Pge,getTypeAnnotationNode:()=>kZe,getTypeArgumentOrTypeParameterList:()=>rMt,getTypeKeywordOfTypeOnlyImport:()=>Hrt,getTypeNode:()=>WLe,getTypeNodeIfAccessible:()=>qde,getTypeParameterFromJsDoc:()=>IZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>G9e,getUILocale:()=>df,getUniqueName:()=>GU,getUniqueSymbolId:()=>mMt,getUseDefineForClassFields:()=>Pne,getWatchErrorSummaryDiagnosticMessage:()=>Ntt,getWatchFactory:()=>ntt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>xre,handleNoEmitOptions:()=>Itt,handleWatchOptionsConfigDirTemplateSubstitution:()=>b9e,hasAbstractModifier:()=>wP,hasAccessorModifier:()=>Nw,hasAmbientModifier:()=>jye,hasChangesInResolutions:()=>Pre,hasContextSensitiveParameters:()=>OAe,hasDecorators:()=>p1,hasDocComment:()=>eMt,hasDynamicName:()=>XD,hasEffectiveModifier:()=>Gb,hasEffectiveModifiers:()=>Kye,hasEffectiveReadonlyModifier:()=>b3,hasExtension:()=>E0,hasImplementationTSFileExtension:()=>ALe,hasIndexSignature:()=>$rt,hasInferredType:()=>KAe,hasInitializer:()=>WT,hasInvalidEscape:()=>Pye,hasJSDocNodes:()=>Xm,hasJSDocParameterTags:()=>gJ,hasJSFileExtension:()=>pN,hasJsonModuleEmitEnabled:()=>wAe,hasOnlyExpressionInitializer:()=>l1,hasOverrideModifier:()=>Tne,hasPossibleExternalModuleReference:()=>Nge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>s1e,hasQuestionToken:()=>VY,hasRecordedExternalHelpers:()=>$Pt,hasResolutionModeOverride:()=>TLe,hasRestParameter:()=>Gre,hasScopeMarker:()=>Db,hasStaticModifier:()=>zh,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>FZe,hasTSFileExtension:()=>w3,hasTabstop:()=>BLe,hasTrailingDirectorySeparator:()=>Jp,hasType:()=>If,hasTypeArguments:()=>bqe,hasZeroOrOneAsteriskCharacter:()=>Cbe,hostGetCanonicalFileName:()=>JD,hostUsesCaseSensitiveFileNames:()=>y3,idText:()=>Vo,identifierIsThisKeyword:()=>Xye,identifierToKeywordKind:()=>iv,identity:()=>Fl,identitySourceMapConsumer:()=>Get,ignoreSourceNewlines:()=>$be,ignoredPaths:()=>Qp,importFromModuleSpecifier:()=>v7,importSyntaxAffectsModuleResolution:()=>Ibe,indexOfAnyCharCode:()=>et,indexOfNode:()=>fP,indicesOf:()=>po,inferredTypesContainingFile:()=>Fde,injectClassNamedEvaluationHelperBlockIfMissing:()=>J9e,injectClassThisAssignmentIfMissing:()=>FOt,insertImports:()=>Mrt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>FL,insertStatementAfterStandardPrologue:()=>yge,insertStatementsAfterCustomPrologue:()=>Wre,insertStatementsAfterStandardPrologue:()=>Sw,intersperse:()=>fe,intrinsicTagNameToString:()=>Vbe,introducesArgumentsExoticObject:()=>tZe,inverseJsxOptionMap:()=>mEe,isAbstractConstructorSymbol:()=>lbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>_p,isAccessibilityModifier:()=>Nrt,isAccessor:()=>yB,isAccessorModifier:()=>It,isAliasableExpression:()=>$ge,isAmbientModule:()=>s_,isAmbientPropertyDeclaration:()=>VJ,isAnyDirectorySeparator:()=>e0,isAnyImportOrBareOrAccessedRequire:()=>Rge,isAnyImportOrReExport:()=>DY,isAnyImportOrRequireStatement:()=>d7,isAnyImportSyntax:()=>IP,isAnySupportedFileExtension:()=>Jqe,isApplicableVersionedTypesKey:()=>REe,isArgumentExpressionOfElementAccess:()=>Crt,isArray:()=>Ki,isArrayBindingElement:()=>o3,isArrayBindingOrAssignmentElement:()=>EJ,isArrayBindingOrAssignmentPattern:()=>Bre,isArrayBindingPattern:()=>p2,isArrayLiteralExpression:()=>OI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>e9,isArrayTypeNode:()=>kF,isArrowFunction:()=>lA,isAsExpression:()=>Yd,isAssertClause:()=>xPt,isAssertEntry:()=>$qr,isAssertionExpression:()=>Ed,isAssertsKeyword:()=>J,isAssignmentDeclaration:()=>b7,isAssignmentExpression:()=>Jm,isAssignmentOperator:()=>UD,isAssignmentPattern:()=>CY,isAssignmentTarget:()=>bF,isAsteriskToken:()=>gie,isAsyncFunction:()=>D7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>t0,isAwaitExpression:()=>I1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>eQ,isBinaryExpression:()=>fo,isBinaryLogicalOperator:()=>Rne,isBinaryOperatorToken:()=>aWt,isBindableObjectDefinePropertyCall:()=>f3,isBindableStaticAccessExpression:()=>yP,isBindableStaticElementAccessExpression:()=>Kge,isBindableStaticNameExpression:()=>I3,isBindingElement:()=>hg,isBindingElementOfBareOrAccessedRequire:()=>lZe,isBindingName:()=>RL,isBindingOrAssignmentElement:()=>_J,isBindingOrAssignmentPattern:()=>yJ,isBindingPattern:()=>Nu,isBlock:()=>$u,isBlockLike:()=>Pz,isBlockOrCatchScoped:()=>ZJ,isBlockScope:()=>PJ,isBlockScopedContainerTopLevel:()=>Tge,isBooleanLiteral:()=>hY,isBreakOrContinueStatement:()=>AY,isBreakStatement:()=>jqr,isBuildCommand:()=>h5t,isBuildInfoFile:()=>l3t,isBuilderProgram:()=>ktt,isBundle:()=>LPt,isCallChain:()=>_B,isCallExpression:()=>Zl,isCallExpressionTarget:()=>drt,isCallLikeExpression:()=>hF,isCallLikeOrFunctionLikeExpression:()=>Tre,isCallOrNewExpression:()=>av,isCallOrNewExpressionTarget:()=>prt,isCallSignatureDeclaration:()=>wg,isCallToHelper:()=>qD,isCaseBlock:()=>ade,isCaseClause:()=>fie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>RJ,isCatchClause:()=>iQ,isCatchClauseVariableDeclaration:()=>vLe,isCatchClauseVariableDeclarationOrBindingElement:()=>Yre,isCheckJsEnabledForFile:()=>rz,isCircularBuildOrder:()=>Fz,isClassDeclaration:()=>pm,isClassElement:()=>PI,isClassExpression:()=>vd,isClassInstanceProperty:()=>vre,isClassLike:()=>xa,isClassMemberModifier:()=>Sre,isClassNamedEvaluationHelperBlock:()=>kz,isClassOrTypeElement:()=>mY,isClassStaticBlockDeclaration:()=>fl,isClassThisAssignmentBlock:()=>Tde,isColonToken:()=>nEe,isCommaExpression:()=>lEe,isCommaListExpression:()=>sde,isCommaSequence:()=>Ade,isCommaToken:()=>rEe,isComment:()=>YVe,isCommonJsExportPropertyAssignment:()=>Lge,isCommonJsExportedExpression:()=>fye,isCompoundAssignment:()=>vde,isComputedNonLiteralName:()=>kY,isComputedPropertyName:()=>Un,isConciseBody:()=>r7,isConditionalExpression:()=>Lw,isConditionalTypeNode:()=>d2,isConstAssertion:()=>Pbe,isConstTypeReference:()=>s2,isConstructSignatureDeclaration:()=>em,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>$D,isContextualKeyword:()=>tAe,isContinueStatement:()=>Kqr,isCustomPrologue:()=>jre,isDebuggerStatement:()=>zqr,isDeclaration:()=>jh,isDeclarationBindingElement:()=>uP,isDeclarationFileName:()=>PC,isDeclarationName:()=>HT,isDeclarationNameOfEnumOrNamespace:()=>abe,isDeclarationReadonly:()=>hf,isDeclarationStatement:()=>uge,isDeclarationWithTypeParameterChildren:()=>Kre,isDeclarationWithTypeParameters:()=>Ure,isDecorator:()=>So,isDecoratorTarget:()=>H5t,isDefaultClause:()=>cde,isDefaultImport:()=>h3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>uZe,isDeleteExpression:()=>GF,isDeleteTarget:()=>Tye,isDeprecatedDeclaration:()=>lPe,isDestructuringAssignment:()=>Dx,isDiskPathRoot:()=>cE,isDoStatement:()=>Uqr,isDocumentRegistryEntry:()=>v1e,isDotDotDotToken:()=>nde,isDottedName:()=>Dne,isDynamicName:()=>rAe,isEffectiveExternalModule:()=>g3,isEffectiveStrictModeSourceFile:()=>Jre,isElementAccessChain:()=>IF,isElementAccessExpression:()=>Yg,isEmittedFileOfProgram:()=>I3t,isEmptyArrayLiteral:()=>HZe,isEmptyBindingElement:()=>wr,isEmptyBindingPattern:()=>Ct,isEmptyObjectLiteral:()=>rbe,isEmptyStatement:()=>u$e,isEmptyStringLiteral:()=>mye,isEntityName:()=>fC,isEntityNameExpression:()=>Od,isEnumConst:()=>VA,isEnumDeclaration:()=>V3,isEnumMember:()=>LF,isEqualityOperatorKind:()=>rPe,isEqualsGreaterThanToken:()=>ULe,isExclamationToken:()=>Cz,isExcludedFile:()=>ZWt,isExclusivelyTypeOnlyImportOrExport:()=>utt,isExpandoPropertyDeclaration:()=>jY,isExportAssignment:()=>Cf,isExportDeclaration:()=>Gh,isExportModifier:()=>y,isExportName:()=>i9e,isExportNamespaceAsDefaultDeclaration:()=>wY,isExportOrDefaultModifier:()=>dEe,isExportSpecifier:()=>R0,isExportsIdentifier:()=>p3,isExportsOrModuleExportsOrAlias:()=>cQ,isExpression:()=>un,isExpressionNode:()=>MT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>X5t,isExpressionOfOptionalChainRoot:()=>gY,isExpressionStatement:()=>VC,isExpressionWithTypeArguments:()=>l_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>dAe,isExternalModule:()=>xm,isExternalModuleAugmentation:()=>_F,isExternalModuleImportEqualsDeclaration:()=>LL,isExternalModuleIndicator:()=>PT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>ZF,isExternalModuleSymbol:()=>WD,isExternalOrCommonJsModule:()=>vl,isFileLevelReservedGeneratedIdentifier:()=>fY,isFileLevelUniqueName:()=>u7,isFileProbablyExternalModule:()=>IEe,isFirstDeclarationOfSymbolParameter:()=>Urt,isFixablePromiseHandler:()=>vnt,isForInOrOfStatement:()=>DL,isForInStatement:()=>KLe,isForInitializer:()=>hE,isForOfStatement:()=>iEe,isForStatement:()=>L3,isFullSourceFile:()=>aN,isFunctionBlock:()=>mP,isFunctionBody:()=>n7,isFunctionDeclaration:()=>ih,isFunctionExpression:()=>UA,isFunctionExpressionOrArrowFunction:()=>RF,isFunctionLike:()=>bu,isFunctionLikeDeclaration:()=>kd,isFunctionLikeKind:()=>lP,isFunctionLikeOrClassStaticBlockDeclaration:()=>s3,isFunctionOrConstructorTypeNode:()=>oge,isFunctionOrModuleBlock:()=>CJ,isFunctionSymbol:()=>AZe,isFunctionTypeNode:()=>x_,isGeneratedIdentifier:()=>kp,isGeneratedPrivateIdentifier:()=>TL,isGetAccessor:()=>bB,isGetAccessorDeclaration:()=>Bg,isGetOrSetAccessorDeclaration:()=>fJ,isGlobalScopeAugmentation:()=>vB,isGlobalSourceFile:()=>fc,isGrammarError:()=>_ge,isHeritageClause:()=>h1,isHoistedFunction:()=>xge,isHoistedVariableStatement:()=>Gge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>kye,isIdentifierName:()=>_Ze,isIdentifierOrThisTypeNode:()=>nWt,isIdentifierPart:()=>s1,isIdentifierStart:()=>bd,isIdentifierText:()=>Uh,isIdentifierTypePredicate:()=>rZe,isIdentifierTypeReference:()=>_Le,isIfStatement:()=>Z3,isIgnoredFileFromWildCardWatching:()=>YEe,isImplicitGlob:()=>bbe,isImportAttribute:()=>GPt,isImportAttributeName:()=>e7,isImportAttributes:()=>CU,isImportCall:()=>Up,isImportClause:()=>Vw,isImportDeclaration:()=>Mf,isImportEqualsDeclaration:()=>km,isImportKeyword:()=>an,isImportMeta:()=>uv,isImportOrExportSpecifier:()=>eS,isImportOrExportSpecifierName:()=>hMt,isImportSpecifier:()=>uy,isImportTypeAssertionContainer:()=>qqr,isImportTypeNode:()=>Um,isImportable:()=>dnt,isInComment:()=>$L,isInCompoundLikeAssignment:()=>qge,isInExpressionContext:()=>rne,isInJSDoc:()=>GY,isInJSFile:()=>wo,isInJSXText:()=>$5t,isInJsonFile:()=>Xge,isInNonReferenceComment:()=>sMt,isInReferenceComment:()=>iMt,isInRightSideOfInternalImportEqualsDeclaration:()=>kVe,isInString:()=>Zz,isInTemplateString:()=>Brt,isInTopLevelContext:()=>Mge,isInTypeQuery:()=>OY,isIncrementalBuildInfo:()=>jEe,isIncrementalBundleEmitBuildInfo:()=>L3t,isIncrementalCompilation:()=>DP,isIndexSignatureDeclaration:()=>w0,isIndexedAccessTypeNode:()=>Iv,isInferTypeNode:()=>jT,isInfinityOrNaNString:()=>oz,isInitializedProperty:()=>GEe,isInitializedVariable:()=>xne,isInsideJsxElement:()=>MVe,isInsideJsxElementOrAttribute:()=>q5t,isInsideNodeModules:()=>_1e,isInsideTemplateLiteral:()=>u1e,isInstanceOfExpression:()=>pAe,isInstantiatedModule:()=>wet,isInterfaceDeclaration:()=>g_,isInternalDeclaration:()=>Fre,isInternalModuleImportEqualsDeclaration:()=>d3,isInternalName:()=>B$e,isIntersectionTypeNode:()=>mf,isIntrinsicJsxName:()=>eU,isIterationStatement:()=>VT,isJSDoc:()=>tR,isJSDocAllType:()=>WPt,isJSDocAugmentsTag:()=>bz,isJSDocAuthorTag:()=>n$r,isJSDocCallbackTag:()=>p$e,isJSDocClassTag:()=>MPt,isJSDocCommentContainingNode:()=>i7,isJSDocConstructSignature:()=>PY,isJSDocDeprecatedTag:()=>C$e,isJSDocEnumTag:()=>oEe,isJSDocFunctionType:()=>hie,isJSDocImplementsTag:()=>t9e,isJSDocImportTag:()=>SN,isJSDocIndexSignature:()=>Uge,isJSDocLikeText:()=>F$e,isJSDocLink:()=>VPt,isJSDocLinkCode:()=>PPt,isJSDocLinkLike:()=>Tx,isJSDocLinkPlain:()=>t$r,isJSDocMemberName:()=>O3,isJSDocNameReference:()=>lde,isJSDocNamepathType:()=>r$r,isJSDocNamespaceBody:()=>oye,isJSDocNode:()=>l3,isJSDocNonNullableType:()=>zLe,isJSDocNullableType:()=>Iie,isJSDocOptionalParameter:()=>HAe,isJSDocOptionalType:()=>d$e,isJSDocOverloadTag:()=>mie,isJSDocOverrideTag:()=>$Le,isJSDocParameterTag:()=>cS,isJSDocPrivateTag:()=>I$e,isJSDocPropertyLikeTag:()=>dY,isJSDocPropertyTag:()=>HPt,isJSDocProtectedTag:()=>h$e,isJSDocPublicTag:()=>f$e,isJSDocReadonlyTag:()=>m$e,isJSDocReturnTag:()=>e9e,isJSDocSatisfiesExpression:()=>Zbe,isJSDocSatisfiesTag:()=>r9e,isJSDocSeeTag:()=>i$r,isJSDocSignature:()=>qL,isJSDocTag:()=>u3,isJSDocTemplateTag:()=>ZB,isJSDocThisTag:()=>_$e,isJSDocThrowsTag:()=>o$r,isJSDocTypeAlias:()=>iS,isJSDocTypeAssertion:()=>sQ,isJSDocTypeExpression:()=>W3,isJSDocTypeLiteral:()=>yU,isJSDocTypeTag:()=>ude,isJSDocTypedefTag:()=>bU,isJSDocUnknownTag:()=>s$r,isJSDocUnknownType:()=>OPt,isJSDocVariadicType:()=>qLe,isJSXTagName:()=>YJ,isJsonEqual:()=>WAe,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>EN,isJsxAttributeLike:()=>wJ,isJsxAttributeName:()=>wLe,isJsxAttributes:()=>nQ,isJsxCallLike:()=>c3,isJsxChild:()=>BJ,isJsxClosingElement:()=>rQ,isJsxClosingFragment:()=>ZPt,isJsxElement:()=>bN,isJsxExpression:()=>pie,isJsxFragment:()=>P3,isJsxNamespacedName:()=>eR,isJsxOpeningElement:()=>$T,isJsxOpeningFragment:()=>Pw,isJsxOpeningLikeElement:()=>eI,isJsxOpeningLikeElementTagName:()=>Y5t,isJsxSelfClosingElement:()=>_U,isJsxSpreadAttribute:()=>yz,isJsxTagNameExpression:()=>kL,isJsxText:()=>KL,isJumpStatementTarget:()=>o1e,isKeyword:()=>v0,isKeywordOrPunctuation:()=>eAe,isKnownSymbol:()=>k7,isLabelName:()=>hrt,isLabelOfLabeledStatement:()=>Irt,isLabeledStatement:()=>FP,isLateVisibilityPaintedStatement:()=>p7,isLeftHandSideExpression:()=>D_,isLet:()=>rS,isLineBreak:()=>Cl,isLiteralComputedPropertyDeclarationName:()=>fne,isLiteralExpression:()=>wL,isLiteralExpressionOfObject:()=>bre,isLiteralImportTypeNode:()=>ky,isLiteralKind:()=>pY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>FVe,isLiteralTypeLiteral:()=>age,isLiteralTypeNode:()=>EE,isLocalName:()=>VF,isLogicalOperator:()=>WZe,isLogicalOrCoalescingAssignmentExpression:()=>gAe,isLogicalOrCoalescingAssignmentOperator:()=>V7,isLogicalOrCoalescingBinaryExpression:()=>Nne,isLogicalOrCoalescingBinaryOperator:()=>AAe,isMappedTypeNode:()=>GB,isMemberName:()=>_w,isMetaProperty:()=>Du,isMethodDeclaration:()=>uu,isMethodOrAccessor:()=>NL,isMethodSignature:()=>hl,isMinusToken:()=>ide,isMissingDeclaration:()=>e$r,isMissingPackageJsonInfo:()=>JWt,isModifier:()=>Ig,isModifierKind:()=>VD,isModifierLike:()=>dp,isModuleAugmentationExternal:()=>Xre,isModuleBlock:()=>_N,isModuleBody:()=>cge,isModuleDeclaration:()=>xh,isModuleExportName:()=>jLe,isModuleExportsAccessExpression:()=>cN,isModuleIdentifier:()=>_P,isModuleName:()=>oWt,isModuleOrEnumDeclaration:()=>a3,isModuleReference:()=>yY,isModuleSpecifierLike:()=>jVe,isModuleWithStringLiteralName:()=>RY,isNameOfFunctionDeclaration:()=>yrt,isNameOfModuleDeclaration:()=>_rt,isNamedDeclaration:()=>rh,isNamedEvaluation:()=>kb,isNamedEvaluationSource:()=>xye,isNamedExportBindings:()=>yre,isNamedExports:()=>mv,isNamedImportBindings:()=>wx,isNamedImports:()=>yN,isNamedImportsOrExports:()=>Gne,isNamedTupleMember:()=>KT,isNamespaceBody:()=>Nre,isNamespaceExport:()=>tk,isNamespaceExportDeclaration:()=>sEe,isNamespaceImport:()=>Zx,isNamespaceReexportDeclaration:()=>cZe,isNewExpression:()=>f2,isNewExpressionTarget:()=>Ode,isNewScopeNode:()=>eie,isNoSubstitutionTemplateLiteral:()=>GP,isNodeArray:()=>tN,isNodeArrayMultiLine:()=>hAe,isNodeDescendantOf:()=>EP,isNodeKind:()=>z6,isNodeLikeSystem:()=>Mm,isNodeModulesDirectory:()=>Vd,isNodeWithPossibleHoistedDeclaration:()=>CZe,isNonContextualKeyword:()=>Dye,isNonGlobalAmbientModule:()=>Qre,isNonNullAccess:()=>YAe,isNonNullChain:()=>hJ,isNonNullExpression:()=>hv,isNonStaticMethodOrAccessorWithPrivateName:()=>TOt,isNotEmittedStatement:()=>FPt,isNullishCoalesce:()=>IJ,isNumber:()=>ws,isNumericLiteral:()=>mC,isNumericLiteralName:()=>IN,isObjectBindingElementWithoutPropertyName:()=>p1e,isObjectBindingOrAssignmentElement:()=>gP,isObjectBindingOrAssignmentPattern:()=>bJ,isObjectBindingPattern:()=>Km,isObjectLiteralElement:()=>bY,isObjectLiteralElementLike:()=>yw,isObjectLiteralExpression:()=>og,isObjectLiteralMethod:()=>a2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Vge,isObjectTypeDeclaration:()=>YY,isOmittedExpression:()=>yp,isOptionalChain:()=>GC,isOptionalChainRoot:()=>aP,isOptionalDeclaration:()=>RB,isOptionalJSDocPropertyLikeTag:()=>jne,isOptionalTypeNode:()=>jL,isOuterExpression:()=>s9e,isOutermostOptionalChain:()=>i3,isOverrideModifier:()=>bt,isPackageJsonInfo:()=>N9e,isPackedArrayLiteral:()=>Gbe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>Ve,isParameterPropertyModifier:()=>IY,isParenthesizedExpression:()=>gI,isParenthesizedTypeNode:()=>fv,isParseTreeNode:()=>SL,isPartOfParameterDeclaration:()=>HL,isPartOfTypeNode:()=>ww,isPartOfTypeOnlyImportOrExportDeclaration:()=>sge,isPartOfTypeQuery:()=>Qge,isPartiallyEmittedExpression:()=>ly,isPatternMatch:()=>jd,isPinnedComment:()=>g7,isPlainJsFile:()=>SY,isPlusToken:()=>mz,isPossiblyTypeArgumentPosition:()=>l1e,isPostfixUnaryExpression:()=>ek,isPrefixUnaryExpression:()=>T0,isPrimitiveLiteralValue:()=>uz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>pC,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>EZe,isProgramUptoDate:()=>ptt,isPrologueDirective:()=>nS,isPropertyAccessChain:()=>vx,isPropertyAccessEntityNameExpression:()=>BF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>SJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>wre,isPropertyAssignment:()=>fm,isPropertyDeclaration:()=>pi,isPropertyName:()=>VI,isPropertyNameLiteral:()=>Tw,isPropertySignature:()=>ss,isPrototypeAccess:()=>wF,isPrototypePropertyAssignment:()=>lne,isPunctuation:()=>Nye,isPushOrUnshiftIdentifier:()=>Gye,isQualifiedName:()=>zi,isQuestionDotToken:()=>Aie,isQuestionOrExclamationToken:()=>rWt,isQuestionOrPlusOrMinusToken:()=>sWt,isQuestionToken:()=>UT,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>iWt,isRecognizedTripleSlashComment:()=>Ore,isReferenceFileLocation:()=>Fie,isReferencedFile:()=>K3,isRegularExpressionLiteral:()=>tEe,isRequireCall:()=>ay,isRequireVariableStatement:()=>nne,isRestParameter:()=>EB,isRestTypeNode:()=>zL,isReturnStatement:()=>I2,isReturnStatementWithFixablePromiseHandler:()=>hPe,isRightSideOfAccessExpression:()=>tbe,isRightSideOfInstanceofExpression:()=>MZe,isRightSideOfPropertyAccess:()=>Wie,isRightSideOfQualifiedName:()=>Q5t,isRightSideOfQualifiedNameOrPropertyAccess:()=>P7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>OZe,isRootedDiskPath:()=>Xp,isSameEntityName:()=>QJ,isSatisfiesExpression:()=>Qg,isSemicolonClassElement:()=>DPt,isSetAccessor:()=>cv,isSetAccessorDeclaration:()=>Dg,isShiftOperatorOrHigher:()=>k$e,isShorthandAmbientModuleSymbol:()=>NY,isShorthandPropertyAssignment:()=>a0,isSideEffectImport:()=>Wbe,isSignedNumericLiteral:()=>Cne,isSimpleCopiableExpression:()=>lQ,isSimpleInlineableExpression:()=>BN,isSimpleParameterList:()=>FEe,isSingleOrDoubleQuote:()=>ine,isSolutionConfig:()=>tet,isSourceElement:()=>RLe,isSourceFile:()=>ll,isSourceFileFromLibrary:()=>zie,isSourceFileJS:()=>n0,isSourceFileNotJson:()=>Jge,isSourceMapping:()=>vOt,isSpecialPropertyDeclaration:()=>Eye,isSpreadAssignment:()=>Lx,isSpreadElement:()=>of,isStatement:()=>Lc,isStatementButNotDeclaration:()=>vJ,isStatementOrBlock:()=>kre,isStatementWithLocals:()=>mge,isStatic:()=>cg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>WY,isStringAndEmptyAnonymousObjectIntersection:()=>nMt,isStringDoubleQuoted:()=>sne,isStringLiteral:()=>Zg,isStringLiteralLike:()=>mA,isStringLiteralOrJsxExpression:()=>TJ,isStringLiteralOrTemplate:()=>yMt,isStringOrNumericLiteralLike:()=>d1,isStringOrRegularExpressionOrTemplateLiteral:()=>Rrt,isStringTextContainingNode:()=>Ere,isSuperCall:()=>Dy,isSuperKeyword:()=>rr,isSuperProperty:()=>xy,isSupportedSourceFileName:()=>Bbe,isSwitchStatement:()=>ode,isSyntaxList:()=>Cie,isSyntheticExpression:()=>F3,isSyntheticReference:()=>_z,isTagName:()=>mrt,isTaggedTemplateExpression:()=>MI,isTaggedTemplateTag:()=>M5t,isTemplateExpression:()=>FF,isTemplateHead:()=>tQ,isTemplateLiteral:()=>AP,isTemplateLiteralKind:()=>LD,isTemplateLiteralToken:()=>ige,isTemplateLiteralTypeNode:()=>zT,isTemplateLiteralTypeSpan:()=>mN,isTemplateMiddle:()=>uie,isTemplateMiddleOrTemplateTail:()=>$6,isTemplateSpan:()=>die,isTemplateTail:()=>rde,isTextWhiteSpaceLike:()=>lMt,isThis:()=>Oie,isThisContainerOrFunctionBlock:()=>sZe,isThisIdentifier:()=>vF,isThisInTypeQuery:()=>YL,isThisInitializedDeclaration:()=>Hge,isThisInitializedObjectBindingExpression:()=>aZe,isThisProperty:()=>$re,isThisTypeNode:()=>Fx,isThisTypeParameter:()=>az,isThisTypePredicate:()=>nZe,isThrowStatement:()=>A$e,isToken:()=>BL,isTokenKind:()=>q6,isTraceEnabled:()=>VP,isTransientSymbol:()=>bw,isTrivia:()=>zJ,isTryStatement:()=>mU,isTupleTypeNode:()=>Zw,isTypeAlias:()=>gne,isTypeAliasDeclaration:()=>FB,isTypeAssertionExpression:()=>xF,isTypeDeclaration:()=>KY,isTypeElement:()=>Bx,isTypeKeyword:()=>Qde,isTypeKeywordTokenOrIdentifier:()=>JVe,isTypeLiteralNode:()=>mh,isTypeNode:()=>uc,isTypeNodeKind:()=>bAe,isTypeOfExpression:()=>CN,isTypeOnlyExportDeclaration:()=>mJ,isTypeOnlyImportDeclaration:()=>rN,isTypeOnlyImportOrExportDeclaration:()=>nN,isTypeOperatorNode:()=>xB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>bE,isTypeQueryNode:()=>Fw,isTypeReferenceNode:()=>nh,isTypeReferenceType:()=>s7,isTypeUsableAsPropertyName:()=>g2,isUMDExportSymbol:()=>yAe,isUnaryExpression:()=>Rre,isUnaryExpressionWithWrite:()=>iN,isUnicodeIdentifierStart:()=>ft,isUnionTypeNode:()=>aS,isUrl:()=>n_,isValidBigIntString:()=>Jne,isValidESSymbolDeclaration:()=>eZe,isValidTypeOnlyAliasUseSite:()=>JL,isValueSignatureDeclaration:()=>C3,isVarAwaitUsing:()=>Sd,isVarConst:()=>rI,isVarConstLike:()=>OT,isVarUsing:()=>tI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>h7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>CP,isVariableDeclarationInitializedToRequire:()=>y7,isVariableDeclarationList:()=>u_,isVariableLike:()=>I7,isVariableStatement:()=>Ch,isVoidExpression:()=>qT,isWatchSet:()=>cbe,isWhileStatement:()=>g$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>Iu,isWithStatement:()=>kPt,isWriteAccess:()=>B3,isWriteOnlyAccess:()=>CAe,isYieldExpression:()=>Hd,jsxModeNeedsExplicitImport:()=>unt,keywordPart:()=>y1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>W$e,libs:()=>A9e,lineBreakPart:()=>Jie,loadModuleFromGlobalCache:()=>aOt,loadWithModeAwareCache:()=>XEe,makeIdentifierFromModuleName:()=>vw,makeImport:()=>QP,makeStringLiteral:()=>Xde,mangleScopedPackageName:()=>Nie,map:()=>At,mapAllOrFail:()=>qt,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Yt,mapOneOrMany:()=>ont,mapToDisplayParts:()=>XP,matchFiles:()=>Sbe,matchPatternOrExact:()=>Tbe,matchedText:()=>pw,matchesExclude:()=>v9e,matchesExcludeWorker:()=>B9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>qZe,memoize:()=>FA,memoizeOne:()=>ZA,min:()=>oa,minAndMax:()=>hLe,missingFileModifiedTime:()=>Rh,modifierToFlag:()=>HY,modifiersToFlags:()=>Dw,moduleExportNameIsDefault:()=>lv,moduleExportNameTextEscaped:()=>CF,moduleExportNameTextUnescaped:()=>HD,moduleOptionDeclaration:()=>mWt,moduleResolutionIsEqualTo:()=>Ige,moduleResolutionNameAndModeGetter:()=>tVe,moduleResolutionOptionDeclarations:()=>M$e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>lU,moduleResolutionUsesNodeModules:()=>UVe,moduleSpecifierToValidIdentifier:()=>b1e,moduleSpecifiers:()=>WF,moduleSupportsImportAttributes:()=>iLe,moduleSymbolToValidIdentifier:()=>y1e,moveEmitHelpers:()=>VLe,moveRangeEnd:()=>IAe,moveRangePastDecorators:()=>jD,moveRangePastModifiers:()=>Av,moveRangePos:()=>KD,moveSyntheticComments:()=>FLe,mutateMap:()=>Q7,mutateMapSkippingNewValues:()=>gN,needsParentheses:()=>ePe,needsScopeMarker:()=>t7,newCaseClauseTracker:()=>APe,newPrivateEnvironment:()=>NOt,noEmitNotification:()=>PEe,noEmitSubstitution:()=>Nde,noTransformers:()=>a3t,noTruncationMaximumTruncationLength:()=>Lre,nodeCanBeDecorated:()=>OJ,nodeCoreModules:()=>dU,nodeHasName:()=>t3,nodeIsDecorated:()=>MJ,nodeIsMissing:()=>sf,nodeIsPresent:()=>u1,nodeIsSynthesized:()=>sp,nodeModuleNameResolver:()=>qWt,nodeModulesPathPart:()=>Vx,nodeNextJsonConfigResolver:()=>$Wt,nodeOrChildIsDecorated:()=>tne,nodeOverlapsWithStartEnd:()=>ZVe,nodePosToString:()=>Cge,nodeSeenTracker:()=>Yie,nodeStartsNewLexicalEnvironment:()=>Fye,noop:()=>Dc,noopFileWatcher:()=>Vie,normalizePath:()=>iu,normalizeSlashes:()=>Dp,normalizeSpans:()=>EI,not:()=>uC,notImplemented:()=>il,notImplementedResolver:()=>A3t,nullNodeConverters:()=>Qbe,nullParenthesizerRules:()=>Ybe,nullTransformationContext:()=>OEe,objectAllocator:()=>ZC,operatorPart:()=>Ude,optionDeclarations:()=>Ww,optionMapToObject:()=>C9e,optionsAffectingProgramStructure:()=>bWt,optionsForBuild:()=>Y$e,optionsForWatch:()=>wz,optionsHaveChanges:()=>S0,or:()=>Hp,orderedRemoveItem:()=>Ql,orderedRemoveItemAt:()=>LA,packageIdToPackageName:()=>xJ,packageIdToString:()=>oN,parameterIsThisKeyword:()=>SF,parameterNamePart:()=>gMt,parseBaseNodeFactory:()=>AWt,parseBigInt:()=>CLe,parseBuildCommand:()=>NWt,parseCommandLine:()=>TWt,parseCommandLineWorker:()=>Q$e,parseConfigFileTextToJson:()=>J$e,parseConfigFileWithSystem:()=>z3t,parseConfigHostFromCompilerHostLike:()=>aVe,parseCustomTypeOption:()=>I9e,parseIsolatedEntityName:()=>Bz,parseIsolatedJSDocComment:()=>pWt,parseJSDocTypeExpressionForTests:()=>N$r,parseJsonConfigFileContent:()=>oen,parseJsonSourceFileConfigFileContent:()=>EEe,parseJsonText:()=>hEe,parseListTypeOption:()=>BWt,parseNodeFactory:()=>H3,parseNodeModuleFromPath:()=>wEe,parsePackageName:()=>TEe,parsePseudoBigInt:()=>nz,parseValidBigInt:()=>kbe,pasteEdits:()=>lst,patchWriteFileEnsuringDirectory:()=>e2,pathContainsNodeModules:()=>WP,pathIsAbsolute:()=>lE,pathIsBareSpecifier:()=>Xh,pathIsRelative:()=>Ip,patternText:()=>j1,performIncrementalCompilation:()=>q3t,performance:()=>hb,positionBelongsToNode:()=>brt,positionIsASICandidate:()=>nPe,positionIsSynthesized:()=>wB,positionsAreOnSameLine:()=>yE,preProcessFile:()=>hin,probablyUsesSemicolons:()=>C1e,processCommentPragmas:()=>V$e,processPragmasIntoFields:()=>P$e,processTaggedTemplateExpression:()=>Met,programContainsEsModules:()=>aMt,programContainsModules:()=>oMt,projectReferenceIsEqualTo:()=>Vre,propertyNamePart:()=>AMt,pseudoBigIntToString:()=>kP,punctuationPart:()=>k0,pushIfUnique:()=>Qi,quote:()=>zde,quotePreferenceFromString:()=>Prt,rangeContainsPosition:()=>Mie,rangeContainsPositionExclusive:()=>a1e,rangeContainsRange:()=>cy,rangeContainsRangeExclusive:()=>J5t,rangeContainsStartEnd:()=>c1e,rangeEndIsOnSameLineAsRangeStart:()=>kne,rangeEndPositionsAreOnSameLine:()=>QZe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>S3,rangeOfNode:()=>Nbe,rangeOfTypeParameters:()=>Dbe,rangeOverlapsWithStartEnd:()=>Mde,rangeStartIsOnSameLineAsRangeEnd:()=>XZe,rangeStartPositionsAreOnSameLine:()=>M7,readBuilderProgram:()=>mVe,readConfigFile:()=>yEe,readJson:()=>E3,readJsonConfigFile:()=>DWt,readJsonOrUndefined:()=>sbe,reduceEachLeadingCommentRange:()=>EL,reduceEachTrailingCommentRange:()=>ff,reduceLeft:()=>Ul,reduceLeftIterator:()=>ne,reducePathComponents:()=>t2,refactor:()=>Oz,regExpEscape:()=>Mqe,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Wr,removeAllComments:()=>pz,removeEmitHelper:()=>n$e,removeExtension:()=>Xne,removeFileExtension:()=>s0,removeIgnoredPath:()=>gVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Nm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>ny,repeatString:()=>A1e,replaceElement:()=>Yl,replaceFirstStar:()=>R3,resolutionExtensionIsTSOrJson:()=>ez,resolveConfigFileProjectName:()=>Xtt,resolveJSModule:()=>KWt,resolveLibrary:()=>k9e,resolveModuleName:()=>BU,resolveModuleNameFromCache:()=>Ven,resolvePackageNameToPackageJson:()=>set,resolvePath:()=>AE,resolveProjectReferencePath:()=>xz,resolveTripleslashReference:()=>stt,resolveTypeReferenceDirective:()=>QWt,resolvingEmptyArray:()=>Zre,returnFalse:()=>As,returnNoopFileWatcher:()=>Vde,returnTrue:()=>Tf,returnUndefined:()=>cm,returnsPromise:()=>Snt,rewriteModuleSpecifier:()=>Nz,sameFlatMap:()=>Zr,sameMap:()=>Tr,sameMapping:()=>Ttn,scanTokenAtPosition:()=>qs,scanner:()=>A_,semanticDiagnosticsOptionDeclarations:()=>CWt,serializeCompilerOptions:()=>q$e,server:()=>_fn,servicesVersion:()=>oon,setCommentRange:()=>hh,setConfigFileInOptions:()=>$$e,setConstantValue:()=>LLe,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>hVe,setIdentifierAutoGenerate:()=>oie,setIdentifierGeneratedImportReference:()=>OLe,setIdentifierTypeArguments:()=>xx,setInternalEmitFlags:()=>sie,setLocalizedDiagnosticMessages:()=>cU,setNodeChildren:()=>YPt,setNodeFlags:()=>bLe,setObjectAllocator:()=>zZe,setOriginalNode:()=>ua,setParent:()=>XA,setParentRecursive:()=>UL,setPrivateIdentifier:()=>wU,setSnippetElement:()=>qbe,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>xT,setStartsOnNewLine:()=>Md,setSyntheticLeadingComments:()=>kB,setSyntheticTrailingComments:()=>x3,setSys:()=>bI,setSysLog:()=>xC,setTextRange:()=>gn,setTextRangeEnd:()=>AU,setTextRangePos:()=>iz,setTextRangePosEnd:()=>TB,setTextRangePosWidth:()=>xbe,setTokenSourceMapRange:()=>Kbe,setTypeNode:()=>PLe,setUILocale:()=>Zs,setValueDeclaration:()=>S7,shouldAllowImportingTsExtension:()=>Die,shouldPreserveConstEnums:()=>Fb,shouldRewriteModuleSpecifier:()=>une,shouldUseUriStyleNodeCoreModules:()=>uPe,showModuleSpecifier:()=>KZe,signatureHasRestParameter:()=>D0,signatureToDisplayParts:()=>jrt,single:()=>Xa,singleElementArray:()=>J_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ps,skipAlias:()=>FC,skipConstraint:()=>Zrt,skipOuterExpressions:()=>HI,skipParentheses:()=>QA,skipPartiallyEmittedExpressions:()=>o2,skipTrivia:()=>Yu,skipTypeChecking:()=>T3,skipTypeCheckingIgnoringNoCheck:()=>mLe,skipTypeParentheses:()=>w7,skipWhile:()=>cp,sliceAfter:()=>Rbe,some:()=>jt,sortAndDeduplicate:()=>cl,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>H$e,sourceFileMayBeEmitted:()=>SP,sourceMapCommentRegExp:()=>Net,sourceMapCommentRegExpDontCareLineStart:()=>bOt,spacePart:()=>BI,spanMap:()=>_n,startEndContainsRange:()=>mAe,startEndOverlapsWithStartEnd:()=>LVe,startOnNewLine:()=>N0,startTracing:()=>fd,startsWith:()=>Ac,startsWithDirectory:()=>$S,startsWithUnderscore:()=>lnt,startsWithUseStrict:()=>zPt,stringContainsAt:()=>TMt,stringToToken:()=>Ta,stripQuotes:()=>l2,supportedDeclarationExtensions:()=>LAe,supportedJSExtensionsFlat:()=>uU,supportedLocaleDirectories:()=>nv,supportedTSExtensionsFlat:()=>vbe,supportedTSImplementationExtensions:()=>Yne,suppressLeadingAndTrailingTrivia:()=>Vy,suppressLeadingTrivia:()=>Hbe,suppressTrailingTrivia:()=>kLe,symbolEscapedNameNoDefault:()=>KVe,symbolName:()=>nf,symbolNameNoDefault:()=>Ort,symbolToDisplayParts:()=>Kde,sys:()=>yd,sysLog:()=>Ih,tagNamesAreEquivalent:()=>Q3,takeWhile:()=>t_,targetOptionDeclaration:()=>O$e,targetToLibMap:()=>Is,testFormatSettings:()=>Pnn,textChangeRangeIsUnchanged:()=>sy,textChangeRangeNewSpan:()=>qR,textChanges:()=>xo,textOrKeywordPart:()=>Krt,textPart:()=>gS,textRangeContainsPositionInclusive:()=>sl,textRangeContainsTextSpan:()=>Og,textRangeIntersectsWithTextSpan:()=>e3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>ed,textSpanContainsTextSpan:()=>Nd,textSpanEnd:()=>Rs,textSpanIntersection:()=>IA,textSpanIntersectsWith:()=>q2,textSpanIntersectsWithPosition:()=>zR,textSpanIntersectsWithTextSpan:()=>Tb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>o1,textSpanOverlapsWith:()=>Nh,textSpansEqual:()=>Xie,textToKeywordObj:()=>ev,timestamp:()=>Fg,toArray:()=>cc,toBuilderFileEmit:()=>W3t,toBuilderStateFileInfoForMultiEmit:()=>P3t,toEditorSettings:()=>N1e,toFileNameLowerCase:()=>Om,toPath:()=>Ou,toProgramEmitPending:()=>O3t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>Id,tokenIsIdentifierOrKeywordOrGreaterThan:()=>fB,tokenToString:()=>Vi,trace:()=>eu,tracing:()=>ki,tracingEnabled:()=>Kl,transferSourceFileChildren:()=>QPt,transform:()=>Ion,transformClassFields:()=>WOt,transformDeclarations:()=>Xet,transformECMAScriptModule:()=>Qet,transformES2015:()=>e3t,transformES2016:()=>$Ot,transformES2017:()=>YOt,transformES2018:()=>QOt,transformES2019:()=>XOt,transformES2020:()=>JOt,transformES2021:()=>UOt,transformESDecorators:()=>HOt,transformESNext:()=>KOt,transformGenerators:()=>t3t,transformImpliedNodeFormatDependentModule:()=>n3t,transformJsx:()=>qOt,transformLegacyDecorators:()=>MOt,transformModule:()=>Yet,transformNamedEvaluation:()=>m1,transformNodes:()=>WEe,transformSystemModule:()=>r3t,transformTypeScript:()=>POt,transpile:()=>Bin,transpileDeclaration:()=>Sin,transpileModule:()=>zMt,transpileOptionValueCompilerOptions:()=>EWt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>oPe,tryCast:()=>Gs,tryDirectoryExists:()=>sPe,tryExtractTSExtension:()=>O7,tryFileExists:()=>Kie,tryGetClassExtendingExpressionWithTypeArguments:()=>$ye,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>ebe,tryGetDirectories:()=>iPe,tryGetExtensionFromPath:()=>QT,tryGetImportFromModuleSpecifier:()=>B7,tryGetJSDocSatisfiesTypeNode:()=>QAe,tryGetModuleNameFromFile:()=>gEe,tryGetModuleSpecifierFromDeclaration:()=>ZY,tryGetNativePerformanceHooks:()=>YS,tryGetPropertyAccessOrIdentifierToString:()=>TP,tryGetPropertyNameOfBindingOrAssignmentElement:()=>a9e,tryGetSourceMappingURL:()=>EOt,tryGetTextOfPropertyName:()=>xY,tryParseJson:()=>nU,tryParsePattern:()=>UY,tryParsePatterns:()=>$7,tryParseRawSourceMap:()=>SOt,tryReadDirectory:()=>rnt,tryReadFile:()=>fde,tryRemoveDirectoryPrefix:()=>NAe,tryRemoveExtension:()=>ILe,tryRemovePrefix:()=>HS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>SU,typeAcquisitionDeclarations:()=>p9e,typeAliasNamePart:()=>dMt,typeDirectiveIsEqualTo:()=>hge,typeKeywords:()=>Frt,typeParameterNamePart:()=>pMt,typeToDisplayParts:()=>I1e,unchangedPollThresholds:()=>q_,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>NEe,unorderedRemoveItem:()=>ef,unprefixedNodeCoreModules:()=>qne,unreachableCodeIsError:()=>rLe,unsetNodeChildren:()=>b$e,unusedLabelIsError:()=>nLe,unwrapInnermostStatementOfLabel:()=>Iye,unwrapParenthesizedExpression:()=>UAe,updateErrorForNoInputFiles:()=>S9e,updateLanguageServiceSourceFile:()=>znt,updateMissingFilePathsWatch:()=>rtt,updateResolutionField:()=>Bie,updateSharedExtendedConfigFileWatcher:()=>z9e,updateSourceFile:()=>Z$e,updateWatchingWildcardDirectories:()=>HEe,usingSingleLineStringWriter:()=>dP,utf16EncodeAsString:()=>jR,validateLocaleAndSetLanguage:()=>yx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Ede,visitCommaListElements:()=>xEe,visitEachChild:()=>_s,visitFunctionBody:()=>uS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>Ret,visitNode:()=>Mr,visitNodes:()=>Ws,visitParameterList:()=>vI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>qPt,walkUpParenthesizedExpressions:()=>gv,walkUpParenthesizedTypes:()=>pne,walkUpParenthesizedTypesAndGetParentAndChild:()=>wye,whitespaceOrMapCommentRegExp:()=>Det,writeCommentRange:()=>rU,writeFile:()=>lAe,writeFileEnsuringDirectories:()=>Qye,zipWith:()=>ce}),e.exports=A(f);var I="5.9",C="5.9.3",b=(s=>(s[s.LessThan=-1]="LessThan",s[s.EqualTo=0]="EqualTo",s[s.GreaterThan=1]="GreaterThan",s))(b||{}),E=[],N=new Map;function B(s){return s!==void 0?s.length:0}function F(s,c){if(s!==void 0)for(let g=0;g=0;g--){let d=c(s[g],g);if(d)return d}}function X(s,c){if(s!==void 0)for(let g=0;g=0;d--){let h=s[d];if(c(h,d))return h}}function Se(s,c,g){if(s===void 0)return-1;for(let d=g??0;d=0;d--)if(c(s[d],d))return d;return-1}function k(s,c,g=yg){if(s!==void 0){for(let d=0;d{let[_,S]=c(h,d);g.set(_,S)}),g}function jt(s,c){if(s!==void 0)if(c!==void 0){for(let g=0;g0;return!1}function Fn(s,c,g){let d;for(let h=0;hs[S])}function xi(s,c){let g=[];for(let d=0;d0&&d(c,s[S-1]))return!1;if(S0&&pe.assertGreaterThanOrEqual(g(c[_],c[_-1]),0);t:for(let S=h;hS&&pe.assertGreaterThanOrEqual(g(s[h],s[h-1]),0),g(c[_],s[h])){case-1:d.push(c[_]);continue e;case 0:continue e;case 1:continue t}}return d}function Ft(s,c){return c===void 0?s:s===void 0?[c]:(s.push(c),s)}function zr(s,c){return s===void 0?c:c===void 0?s:Ki(s)?Ki(c)?Nn(s,c):Ft(s,c):Ki(c)?Ft(c,s):[s,c]}function Rn(s,c){return c<0?s.length+c:c}function Or(s,c,g,d){if(c===void 0||c.length===0)return s;if(s===void 0)return c.slice(g,d);g=g===void 0?0:Rn(c,g),d=d===void 0?c.length:Rn(c,d);for(let h=g;hg(s[d],s[h])||Zt(d,h))}function bo(s,c){return s.length===0?E:s.slice().sort(c)}function*Qa(s){for(let c=s.length-1;c>=0;c--)yield s[c]}function gc(s,c,g,d){for(;gs?.at(c):(s,c)=>{if(s!==void 0&&(c=Rn(s,c),c>1),T=g(s[R],R);switch(d(T,c)){case-1:_=R+1;break;case 0:return R;case 1:S=R-1;break}}return~_}function Ul(s,c,g,d,h){if(s&&s.length>0){let _=s.length;if(_>0){let S=d===void 0||d<0?0:d,R=h===void 0||S+h>_-1?_-1:S+h,T;for(arguments.length<=2?(T=s[S],S++):T=g;S<=R;)T=c(T,s[S],S),S++;return T}}return g}var Xu=Object.prototype.hasOwnProperty;function Da(s,c){return Xu.call(s,c)}function pu(s,c){return Xu.call(s,c)?s[c]:void 0}function _g(s){let c=[];for(let g in s)Xu.call(s,g)&&c.push(g);return c}function mI(s){let c=[];do{let g=Object.getOwnPropertyNames(s);for(let d of g)Qi(c,d)}while(s=Object.getPrototypeOf(s));return c}function Qh(s){let c=[];for(let g in s)Xu.call(s,g)&&c.push(s[g]);return c}function Ri(s,c){let g=new Array(s);for(let d=0;d100&&g>c.length>>1){let R=c.length-g;c.copyWithin(0,g),c.length=R,g=0}return S}return{enqueue:h,dequeue:_,isEmpty:d}}function oo(s,c){let g=new Map,d=0;function*h(){for(let S of g.values())Ki(S)?yield*S:yield S}let _={has(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);return Ki(T)?k(T,S,c):c(T,S)},add(S){let R=s(S);if(g.has(R)){let T=g.get(R);if(Ki(T))k(T,S,c)||(T.push(S),d++);else{let W=T;c(W,S)||(g.set(R,[W,S]),d++)}}else g.set(R,S),d++;return this},delete(S){let R=s(S);if(!g.has(R))return!1;let T=g.get(R);if(Ki(T)){for(let W=0;Wh(),[Symbol.toStringTag]:g[Symbol.toStringTag]};return _}function Ki(s){return Array.isArray(s)}function cc(s){return Ki(s)?s:[s]}function Xs(s){return typeof s=="string"}function ws(s){return typeof s=="number"}function Gs(s,c){return s!==void 0&&c(s)?s:void 0}function Ma(s,c){return s!==void 0&&c(s)?s:pe.fail(`Invalid cast. The supplied value ${s} did not pass the test '${pe.getFunctionName(c)}'.`)}function Dc(s){}function As(){return!1}function Tf(){return!0}function cm(){}function Fl(s){return s}function rc(s){return s.toLowerCase()}var sd=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function Om(s){return sd.test(s)?s.replace(sd,rc):s}function il(){throw new Error("Not implemented")}function FA(s){let c;return()=>(s&&(c=s(),s=void 0),c)}function ZA(s){let c=new Map;return g=>{let d=`${typeof g}:${g}`,h=c.get(d);return h===void 0&&!c.has(d)&&(h=s(g),c.set(d,h)),h}}var El=(s=>(s[s.None=0]="None",s[s.Normal=1]="Normal",s[s.Aggressive=2]="Aggressive",s[s.VeryAggressive=3]="VeryAggressive",s))(El||{});function yg(s,c){return s===c}function Mp(s,c){return s===c||s!==void 0&&c!==void 0&&s.toUpperCase()===c.toUpperCase()}function MA(s,c){return yg(s,c)}function Er(s,c){return s===c?0:s===void 0?-1:c===void 0?1:sc(g,d)===-1?g:d)}function Fs(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toUpperCase(),c=c.toUpperCase(),sc?1:0)}function Wa(s,c){return s===c?0:s===void 0?-1:c===void 0?1:(s=s.toLowerCase(),c=c.toLowerCase(),sc?1:0)}function Ca(s,c){return Er(s,c)}function ld(s){return s?Fs:Ca}var Rp=(()=>{return c;function s(g,d,h){if(g===d)return 0;if(g===void 0)return-1;if(d===void 0)return 1;let _=h(g,d);return _<0?-1:_>0?1:0}function c(g){let d=new Intl.Collator(g,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(h,_)=>s(h,_,d)}})(),np,HA;function df(){return HA}function Zs(s){HA!==s&&(HA=s,np=void 0)}function so(s,c){return np??(np=Rp(HA)),np(s,c)}function Ea(s,c,g,d){return s===c?0:s===void 0?-1:c===void 0?1:d(s[g],c[g])}function Ml(s,c){return Zt(s?1:0,c?1:0)}function Dr(s,c,g){let d=Math.max(2,Math.floor(s.length*.34)),h=Math.floor(s.length*.4)+1,_;for(let S of c){let R=g(S);if(R!==void 0&&Math.abs(R.length-s.length)<=d){if(R===s||R.length<3&&R.toLowerCase()!==s.toLowerCase())continue;let T=Wn(s,R,h-.1);if(T===void 0)continue;pe.assert(Tg?R-g:1),V=Math.floor(c.length>g+R?g+R:c.length);h[0]=R;let M=R;for(let re=1;reg)return;let ee=d;d=h,h=ee}let S=d[c.length];return S>g?void 0:S}function di(s,c,g){let d=s.length-c.length;return d>=0&&(g?Mp(s.slice(d),c):s.indexOf(c,d)===d)}function aa(s,c){return di(s,c)?s.slice(0,s.length-c.length):s}function Bo(s,c){return di(s,c)?s.slice(0,s.length-c.length):void 0}function us(s){let c=s.length;for(let g=c-1;g>0;g--){let d=s.charCodeAt(g);if(d>=48&&d<=57)do--g,d=s.charCodeAt(g);while(g>0&&d>=48&&d<=57);else if(g>4&&(d===110||d===78)){if(--g,d=s.charCodeAt(g),d!==105&&d!==73||(--g,d=s.charCodeAt(g),d!==109&&d!==77))break;--g,d=s.charCodeAt(g)}else break;if(d!==45&&d!==46)break;c=g}return c===s.length?s:s.slice(0,c)}function Ql(s,c){for(let g=0;gg===c)}function ip(s,c){for(let g=0;gh&&jd(R,g)&&(h=R.prefix.length,d=S)}return d}function Ac(s,c,g){return g?Mp(s.slice(0,c.length),c):s.lastIndexOf(c,0)===0}function Nm(s,c){return Ac(s,c)?s.substr(c.length):s}function HS(s,c,g=Fl){return Ac(g(s),g(c))?s.substring(c.length):void 0}function jd({prefix:s,suffix:c},g){return g.length>=s.length+c.length&&Ac(g,s)&&di(g,c)}function dh(s,c){return g=>s(g)&&c(g)}function Hp(...s){return(...c)=>{let g;for(let d of s)if(g=d(...c),g)return g;return g}}function uC(s){return(...c)=>!s(...c)}function nE(s){}function J_(s){return s===void 0?void 0:[s]}function q0(s,c,g,d,h,_){_??(_=Dc);let S=0,R=0,T=s.length,W=c.length,V=!1;for(;S(s[s.Off=0]="Off",s[s.Error=1]="Error",s[s.Warning=2]="Warning",s[s.Info=3]="Info",s[s.Verbose=4]="Verbose",s))(fb||{}),pe;(s=>{let c=0;s.currentLogLevel=2,s.isDebugging=!1;function g(yr){return s.currentLogLevel<=yr}s.shouldLog=g;function d(yr,hn){s.loggingHost&&g(yr)&&s.loggingHost.log(yr,hn)}function h(yr){d(3,yr)}s.log=h,(yr=>{function hn(Oa){d(1,Oa)}yr.error=hn;function Oi(Oa){d(2,Oa)}yr.warn=Oi;function lo(Oa){d(3,Oa)}yr.log=lo;function pa(Oa){d(4,Oa)}yr.trace=pa})(h=s.log||(s.log={}));let _={};function S(){return c}s.getAssertionLevel=S;function R(yr){let hn=c;if(c=yr,yr>hn)for(let Oi of _g(_)){let lo=_[Oi];lo!==void 0&&s[Oi]!==lo.assertion&&yr>=lo.level&&(s[Oi]=lo,_[Oi]=void 0)}}s.setAssertionLevel=R;function T(yr){return c>=yr}s.shouldAssert=T;function W(yr,hn){return T(yr)?!0:(_[hn]={level:yr,assertion:s[hn]},s[hn]=Dc,!1)}function V(yr,hn){debugger;let Oi=new Error(yr?`Debug Failure. ${yr}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Oi,hn||V),Oi}s.fail=V;function M(yr,hn,Oi){return V(`${hn||"Unexpected node."}\r -Node ${Pt(yr.kind)} was unexpected.`,Oi||M)}s.failBadSyntaxKind=M;function ee(yr,hn,Oi,lo){yr||(hn=hn?`False expression: ${hn}`:"False expression.",Oi&&(hn+=`\r -Verbose Debug Information: `+(typeof Oi=="string"?Oi:Oi())),V(hn,lo||ee))}s.assert=ee;function re(yr,hn,Oi,lo,pa){if(yr!==hn){let Oa=Oi?lo?`${Oi} ${lo}`:Oi:"";V(`Expected ${yr} === ${hn}. ${Oa}`,pa||re)}}s.assertEqual=re;function ge(yr,hn,Oi,lo){yr>=hn&&V(`Expected ${yr} < ${hn}. ${Oi||""}`,lo||ge)}s.assertLessThan=ge;function Ie(yr,hn,Oi){yr>hn&&V(`Expected ${yr} <= ${hn}`,Oi||Ie)}s.assertLessThanOrEqual=Ie;function _e(yr,hn,Oi){yr= ${hn}`,Oi||_e)}s.assertGreaterThanOrEqual=_e;function Ee(yr,hn,Oi){yr==null&&V(hn,Oi||Ee)}s.assertIsDefined=Ee;function Ne(yr,hn,Oi){return Ee(yr,hn,Oi||Ne),yr}s.checkDefined=Ne;function Te(yr,hn,Oi){for(let lo of yr)Ee(lo,hn,Oi||Te)}s.assertEachIsDefined=Te;function Ze(yr,hn,Oi){return Te(yr,hn,Oi||Ze),yr}s.checkEachDefined=Ze;function We(yr,hn="Illegal value:",Oi){let lo=typeof yr=="object"&&Da(yr,"kind")&&Da(yr,"pos")?"SyntaxKind: "+Pt(yr.kind):JSON.stringify(yr);return V(`${hn} ${lo}`,Oi||We)}s.assertNever=We;function Ue(yr,hn,Oi,lo){W(1,"assertEachNode")&&ee(hn===void 0||ue(yr,hn),Oi||"Unexpected node.",()=>`Node array did not pass test '${ht(hn)}'.`,lo||Ue)}s.assertEachNode=Ue;function $e(yr,hn,Oi,lo){W(1,"assertNode")&&ee(yr!==void 0&&(hn===void 0||hn(yr)),Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} did not pass test '${ht(hn)}'.`,lo||$e)}s.assertNode=$e;function Ye(yr,hn,Oi,lo){W(1,"assertNotNode")&&ee(yr===void 0||hn===void 0||!hn(yr),Oi||"Unexpected node.",()=>`Node ${Pt(yr.kind)} should not have passed test '${ht(hn)}'.`,lo||Ye)}s.assertNotNode=Ye;function Tt(yr,hn,Oi,lo){W(1,"assertOptionalNode")&&ee(hn===void 0||yr===void 0||hn(yr),Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} did not pass test '${ht(hn)}'.`,lo||Tt)}s.assertOptionalNode=Tt;function ot(yr,hn,Oi,lo){W(1,"assertOptionalToken")&&ee(hn===void 0||yr===void 0||yr.kind===hn,Oi||"Unexpected node.",()=>`Node ${Pt(yr?.kind)} was not a '${Pt(hn)}' token.`,lo||ot)}s.assertOptionalToken=ot;function Qe(yr,hn,Oi){W(1,"assertMissingNode")&&ee(yr===void 0,hn||"Unexpected node.",()=>`Node ${Pt(yr.kind)} was unexpected'.`,Oi||Qe)}s.assertMissingNode=Qe;function mt(yr){}s.type=mt;function ht(yr){if(typeof yr!="function")return"";if(Da(yr,"name"))return yr.name;{let hn=Function.prototype.toString.call(yr),Oi=/^function\s+([\w$]+)\s*\(/.exec(hn);return Oi?Oi[1]:""}}s.getFunctionName=ht;function _t(yr){return`{ name: ${Bc(yr.escapedName)}; flags: ${dt(yr.flags)}; declarations: ${At(yr.declarations,hn=>Pt(hn.kind))} }`}s.formatSymbol=_t;function Rt(yr=0,hn,Oi){let lo=Ke(hn);if(yr===0)return lo.length>0&&lo[0][0]===0?lo[0][1]:"0";if(Oi){let pa=[],Oa=yr;for(let[tl,Qu]of lo){if(tl>yr)break;tl!==0&&tl&yr&&(pa.push(Qu),Oa&=~tl)}if(Oa===0)return pa.join("|")}else for(let[pa,Oa]of lo)if(pa===yr)return Oa;return yr.toString()}s.formatEnum=Rt;let Lt=new Map;function Ke(yr){let hn=Lt.get(yr);if(hn)return hn;let Oi=[];for(let pa in yr){let Oa=yr[pa];typeof Oa=="number"&&Oi.push([Oa,pa])}let lo=bo(Oi,(pa,Oa)=>Zt(pa[0],Oa[0]));return Lt.set(yr,lo),lo}function Pt(yr){return Rt(yr,Ld,!1)}s.formatSyntaxKind=Pt;function _r(yr){return Rt(yr,Iw,!1)}s.formatSnippetKind=_r;function Gt(yr){return Rt(yr,X2,!1)}s.formatScriptKind=Gt;function nt(yr){return Rt(yr,AC,!0)}s.formatNodeFlags=nt;function Dt(yr){return Rt(yr,wy,!0)}s.formatNodeCheckFlags=Dt;function tr(yr){return Rt(yr,JE,!0)}s.formatModifierFlags=tr;function ur(yr){return Rt(yr,up,!0)}s.formatTransformFlags=ur;function Gr(yr){return Rt(yr,cB,!0)}s.formatEmitFlags=Gr;function dt(yr){return Rt(yr,TT,!0)}s.formatSymbolFlags=dt;function pr(yr){return Rt(yr,jE,!0)}s.formatTypeFlags=pr;function st(yr){return Rt(yr,$A,!0)}s.formatSignatureFlags=st;function ir(yr){return Rt(yr,j_,!0)}s.formatObjectFlags=ir;function zt(yr){return Rt(yr,Yp,!0)}s.formatFlowFlags=zt;function Ht(yr){return Rt(yr,vy,!0)}s.formatRelationComparisonResult=Ht;function Br(yr){return Rt(yr,Eet,!0)}s.formatCheckMode=Br;function mn(yr){return Rt(yr,vet,!0)}s.formatSignatureCheckMode=mn;function jn(yr){return Rt(yr,bet,!0)}s.formatTypeFacts=jn;let Zi=!1,Ns;function An(yr){"__debugFlowFlags"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(){let hn=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Oi=this.flags&-2048;return`${hn}${Oi?` (${zt(Oi)})`:""}`}},__debugFlowFlags:{get(){return Rt(this.flags,Yp,!0)}},__debugToString:{value(){return hc(this)}}})}function si(yr){return Zi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),An(Ns)),Object.setPrototypeOf(yr,Ns)):An(yr)),yr}s.attachFlowNodeDebugInfo=si;let ks;function Ic(yr){"__tsDebuggerDisplay"in yr||Object.defineProperties(yr,{__tsDebuggerDisplay:{value(hn){return hn=String(hn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${hn}`}}})}function su(yr){Zi&&(typeof Object.setPrototypeOf=="function"?(ks||(ks=Object.create(Array.prototype),Ic(ks)),Object.setPrototypeOf(yr,ks)):Ic(yr))}s.attachNodeArrayDebugInfo=su;function Zn(){if(Zi)return;let yr=new WeakMap,hn=new WeakMap;Object.defineProperties(ZC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let lo=this.flags&33554432?"TransientSymbol":"Symbol",pa=this.flags&-33554433;return`${lo} '${nf(this)}'${pa?` (${dt(pa)})`:""}`}},__debugFlags:{get(){return dt(this.flags)}}}),Object.defineProperties(ZC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let lo=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",pa=this.flags&524288?this.objectFlags&-1344:0;return`${lo}${this.symbol?` '${nf(this.symbol)}'`:""}${pa?` (${ir(pa)})`:""}`}},__debugFlags:{get(){return pr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?ir(this.objectFlags):""}},__debugTypeToString:{value(){let lo=yr.get(this);return lo===void 0&&(lo=this.checker.typeToString(this),yr.set(this,lo)),lo}}}),Object.defineProperties(ZC.getSignatureConstructor().prototype,{__debugFlags:{get(){return st(this.flags)}},__debugSignatureToString:{value(){var lo;return(lo=this.checker)==null?void 0:lo.signatureToString(this)}}});let Oi=[ZC.getNodeConstructor(),ZC.getIdentifierConstructor(),ZC.getTokenConstructor(),ZC.getSourceFileConstructor()];for(let lo of Oi)Da(lo.prototype,"__debugKind")||Object.defineProperties(lo.prototype,{__tsDebuggerDisplay:{value(){return`${kp(this)?"GeneratedIdentifier":Ir(this)?`Identifier '${Vo(this)}'`:p(this)?`PrivateIdentifier '${Vo(this)}'`:Zg(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:mC(this)?`NumericLiteral ${this.text}`:eQ(this)?`BigIntLiteral ${this.text}n`:Ds(this)?"TypeParameterDeclaration":Si(this)?"ParameterDeclaration":Tc(this)?"ConstructorDeclaration":Bg(this)?"GetAccessorDeclaration":Dg(this)?"SetAccessorDeclaration":wg(this)?"CallSignatureDeclaration":em(this)?"ConstructSignatureDeclaration":w0(this)?"IndexSignatureDeclaration":bE(this)?"TypePredicateNode":nh(this)?"TypeReferenceNode":x_(this)?"FunctionTypeNode":$D(this)?"ConstructorTypeNode":Fw(this)?"TypeQueryNode":mh(this)?"TypeLiteralNode":kF(this)?"ArrayTypeNode":Zw(this)?"TupleTypeNode":jL(this)?"OptionalTypeNode":zL(this)?"RestTypeNode":aS(this)?"UnionTypeNode":mf(this)?"IntersectionTypeNode":d2(this)?"ConditionalTypeNode":jT(this)?"InferTypeNode":fv(this)?"ParenthesizedTypeNode":Fx(this)?"ThisTypeNode":xB(this)?"TypeOperatorNode":Iv(this)?"IndexedAccessTypeNode":GB(this)?"MappedTypeNode":EE(this)?"LiteralTypeNode":KT(this)?"NamedTupleMember":Um(this)?"ImportTypeNode":Pt(this.kind)}${this.flags?` (${nt(this.flags)})`:""}`}},__debugKind:{get(){return Pt(this.kind)}},__debugNodeFlags:{get(){return nt(this.flags)}},__debugModifierFlags:{get(){return tr(zye(this))}},__debugTransformFlags:{get(){return ur(this.transformFlags)}},__debugIsParseTreeNode:{get(){return SL(this)}},__debugEmitFlags:{get(){return Gr(tA(this))}},__debugGetText:{value(pa){if(sp(this))return"";let Oa=hn.get(this);if(Oa===void 0){let tl=$l(this),Qu=tl&&ms(tl);Oa=Qu?mF(Qu,tl,pa):"",hn.set(this,Oa)}return Oa}}});Zi=!0}s.enableDebugInfo=Zn;function ya(yr){let hn=yr&7,Oi=hn===0?"in out":hn===3?"[bivariant]":hn===2?"in":hn===1?"out":hn===4?"[independent]":"";return yr&8?Oi+=" (unmeasurable)":yr&16&&(Oi+=" (unreliable)"),Oi}s.formatVariance=ya;class Gl{__debugToString(){var hn;switch(this.kind){case 3:return((hn=this.debugInfo)==null?void 0:hn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||At(this.sources,()=>"any"),(Oi,lo)=>`${Oi.__debugTypeToString()} -> ${typeof lo=="string"?lo:lo.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(Oi,lo)=>`${Oi.__debugTypeToString()} -> ${lo().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` -`).join(` - `)} -m2: ${this.mapper2.__debugToString().split(` -`).join(` - `)}`;default:return We(this)}}}s.DebugTypeMapper=Gl;function ba(yr){return s.isDebugging?Object.setPrototypeOf(yr,Gl.prototype):yr}s.attachDebugPrototypeIfDebug=ba;function Wo(yr){return console.log(hc(yr))}s.printControlFlowGraph=Wo;function hc(yr){let hn=-1;function Oi(Je){return Je.id||(Je.id=hn,hn--),Je.id}let lo;(Je=>{Je.lr="\u2500",Je.ud="\u2502",Je.dr="\u256D",Je.dl="\u256E",Je.ul="\u256F",Je.ur="\u2570",Je.udr="\u251C",Je.udl="\u2524",Je.dlr="\u252C",Je.ulr="\u2534",Je.udlr="\u256B"})(lo||(lo={}));let pa;(Je=>{Je[Je.None=0]="None",Je[Je.Up=1]="Up",Je[Je.Down=2]="Down",Je[Je.Left=4]="Left",Je[Je.Right=8]="Right",Je[Je.UpDown=3]="UpDown",Je[Je.LeftRight=12]="LeftRight",Je[Je.UpLeft=5]="UpLeft",Je[Je.UpRight=9]="UpRight",Je[Je.DownLeft=6]="DownLeft",Je[Je.DownRight=10]="DownRight",Je[Je.UpDownLeft=7]="UpDownLeft",Je[Je.UpDownRight=11]="UpDownRight",Je[Je.UpLeftRight=13]="UpLeftRight",Je[Je.DownLeftRight=14]="DownLeftRight",Je[Je.UpDownLeftRight=15]="UpDownLeftRight",Je[Je.NoChildren=16]="NoChildren"})(pa||(pa={}));let Oa=2032,tl=882,Qu=Object.create(null),Tg=[],Cs=[],Tu=Dn(yr,new Set);for(let Je of Tg)Je.text=Mt(Je.flowNode,Je.circular),En(Je);let Pr=Ni(Tu),Pn=Gi(Pr);return nn(Tu,0),cn();function pt(Je){return!!(Je.flags&128)}function on(Je){return!!(Je.flags&12)&&!!Je.antecedent}function it(Je){return!!(Je.flags&Oa)}function nr(Je){return!!(Je.flags&tl)}function Fr(Je){let In=[];for(let Hn of Je.edges)Hn.source===Je&&In.push(Hn.target);return In}function Kr(Je){let In=[];for(let Hn of Je.edges)Hn.target===Je&&In.push(Hn.source);return In}function Dn(Je,In){let Hn=Oi(Je),Ot=Qu[Hn];if(Ot&&In.has(Je))return Ot.circular=!0,Ot={id:-1,flowNode:Je,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Tg.push(Ot),Ot;if(In.add(Je),!Ot)if(Qu[Hn]=Ot={id:Hn,flowNode:Je,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Tg.push(Ot),on(Je))for(let $r of Je.antecedent)hr(Ot,$r,In);else it(Je)&&hr(Ot,Je.antecedent,In);return In.delete(Je),Ot}function hr(Je,In,Hn){let Ot=Dn(In,Hn),$r={source:Je,target:Ot};Cs.push($r),Je.edges.push($r),Ot.edges.push($r)}function En(Je){if(Je.level!==-1)return Je.level;let In=0;for(let Hn of Kr(Je))In=Math.max(In,En(Hn)+1);return Je.level=In}function Ni(Je){let In=0;for(let Hn of Fr(Je))In=Math.max(In,Ni(Hn));return In+1}function Gi(Je){let In=xe(Array(Je),0);for(let Hn of Tg)In[Hn.level]=Math.max(In[Hn.level],Hn.text.length);return In}function nn(Je,In){if(Je.lane===-1){Je.lane=In,Je.endLane=In;let Hn=Fr(Je);for(let Ot=0;Ot0&&In++;let $r=Hn[Ot];nn($r,In),$r.endLane>Je.endLane&&(In=$r.endLane)}Je.endLane=In}}function bn(Je){if(Je&2)return"Start";if(Je&4)return"Branch";if(Je&8)return"Loop";if(Je&16)return"Assignment";if(Je&32)return"True";if(Je&64)return"False";if(Je&128)return"SwitchClause";if(Je&256)return"ArrayMutation";if(Je&512)return"Call";if(Je&1024)return"ReduceLabel";if(Je&1)return"Unreachable";throw new Error}function ds(Je){let In=ms(Je);return mF(In,Je,!1)}function Mt(Je,In){let Hn=bn(Je.flags);if(In&&(Hn=`${Hn}#${Oi(Je)}`),pt(Je)){let Ot=[],{switchStatement:$r,clauseStart:ri,clauseEnd:ao}=Je.node;for(let Bs=ri;Bsao.lane)+1,Hn=xe(Array(In),""),Ot=Pn.map(()=>Array(In)),$r=Pn.map(()=>xe(Array(In),0));for(let ao of Tg){Ot[ao.level][ao.lane]=ao;let Bs=Fr(ao);for(let tn=0;tn0&&(Mn|=1),tn0&&(Mn|=1),tn0?$r[ao-1][Bs]:0,tn=Bs>0?$r[ao][Bs-1]:0,wn=$r[ao][Bs];wn||(Ys&8&&(wn|=12),tn&2&&(wn|=3),$r[ao][Bs]=wn)}for(let ao=0;ao0?Je.repeat(In):"";let Hn="";for(;Hn.length=0,"Invalid argument: major"),pe.assert(g>=0,"Invalid argument: minor"),pe.assert(d>=0,"Invalid argument: patch");let S=h?Ki(h)?h:h.split("."):E,R=_?Ki(_)?_:_.split("."):E;pe.assert(ue(S,T=>CI.test(T)),"Invalid argument: prerelease"),pe.assert(ue(R,T=>H2.test(T)),"Invalid argument: build"),this.major=c,this.minor=g,this.patch=d,this.prerelease=S,this.build=R}static tryParse(c){let g=K(c);if(!g)return;let{major:d,minor:h,patch:_,prerelease:S,build:R}=g;return new UNe(d,h,_,S,R)}compareTo(c){return this===c?0:c===void 0?1:Zt(this.major,c.major)||Zt(this.minor,c.minor)||Zt(this.patch,c.patch)||we(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new UNe(this.major+1,0,0);case"minor":return new UNe(this.major,this.minor+1,0);case"patch":return new UNe(this.major,this.minor,this.patch+1);default:return pe.assertNever(c)}}with(c){let{major:g=this.major,minor:d=this.minor,patch:h=this.patch,prerelease:_=this.prerelease,build:S=this.build}=c;return new UNe(g,d,h,_,S)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return jt(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),jt(this.build)&&(c+=`+${this.build.join(".")}`),c}};se.zero=new se(0,0,0,["0"]);var O=se;function K(s){let c=lm.exec(s);if(!c)return;let[,g,d="0",h="0",_="",S=""]=c;if(!(_&&!Kf.test(_))&&!(S&&!_I.test(S)))return{major:parseInt(g,10),minor:parseInt(d,10),patch:parseInt(h,10),prerelease:_,build:S}}function we(s,c){if(s===c)return 0;if(s.length===0)return c.length===0?0:1;if(c.length===0)return-1;let g=Math.min(s.length,c.length);for(let d=0;d=]|<=|>=)?\s*([a-z0-9-+.*]+)$/i;function ra(s){let c=[];for(let g of s.trim().split(sr)){if(!g)continue;let d=[];g=g.trim();let h=fi.exec(g);if(h){if(!Nl(h[1],h[2],d))return}else for(let _ of g.split(Yr)){let S=$n.exec(_.trim());if(!S||!ca(S[1],S[2],d))return}c.push(d)}return c}function kc(s){let c=Lr.exec(s);if(!c)return;let[,g,d="*",h="*",_,S]=c;return{version:new O(Bl(g)?0:parseInt(g,10),Bl(g)||Bl(d)?0:parseInt(d,10),Bl(g)||Bl(d)||Bl(h)?0:parseInt(h,10),_,S),major:g,minor:d,patch:h}}function Nl(s,c,g){let d=kc(s);if(!d)return!1;let h=kc(c);return h?(Bl(d.major)||g.push($g(">=",d.version)),Bl(h.major)||g.push(Bl(h.minor)?$g("<",h.version.increment("major")):Bl(h.patch)?$g("<",h.version.increment("minor")):$g("<=",h.version)),!0):!1}function ca(s,c,g){let d=kc(c);if(!d)return!1;let{version:h,major:_,minor:S,patch:R}=d;if(Bl(_))(s==="<"||s===">")&&g.push($g("<",O.zero));else switch(s){case"~":g.push($g(">=",h)),g.push($g("<",h.increment(Bl(S)?"major":"minor")));break;case"^":g.push($g(">=",h)),g.push($g("<",h.increment(h.major>0||Bl(S)?"major":h.minor>0||Bl(R)?"minor":"patch")));break;case"<":case">=":g.push(Bl(S)||Bl(R)?$g(s,h.with({prerelease:"0"})):$g(s,h));break;case"<=":case">":g.push(Bl(S)?$g(s==="<="?"<":">=",h.increment("major").with({prerelease:"0"})):Bl(R)?$g(s==="<="?"<":">=",h.increment("minor").with({prerelease:"0"})):$g(s,h));break;case"=":case void 0:Bl(S)||Bl(R)?(g.push($g(">=",h.with({prerelease:"0"}))),g.push($g("<",h.increment(Bl(S)?"major":"minor").with({prerelease:"0"})))):g.push($g("=",h));break;default:return!1}return!0}function Bl(s){return s==="*"||s==="x"||s==="X"}function $g(s,c){return{operator:s,operand:c}}function SA(s,c){if(c.length===0)return!0;for(let g of c)if(lI(s,g))return!0;return!1}function lI(s,c){for(let g of c)if(!lp(s,g.operator,g.operand))return!1;return!0}function lp(s,c,g){let d=s.compareTo(g);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return pe.assertNever(c)}}function Ib(s){return At(s,Na).join(" || ")||"*"}function Na(s){return At(s,wd).join(" ")}function wd(s){return`${s.operator}${s.operand}`}function z1(){if(Mm())try{let{performance:s}=wt("perf_hooks");if(s)return{shouldWriteNativeEvents:!1,performance:s}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function T_(){let s=z1();if(!s)return;let{shouldWriteNativeEvents:c,performance:g}=s,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof g.timeOrigin=="number"&&typeof g.now=="function"&&(d.performanceTime=g),d.performanceTime&&typeof g.mark=="function"&&typeof g.measure=="function"&&typeof g.clearMarks=="function"&&typeof g.clearMeasures=="function"&&(d.performance=g),d}var RC=T_(),Hm=RC?.performanceTime;function YS(){return RC}var Fg=Hm?()=>Hm.now():Date.now,hb={};o(hb,{clearMarks:()=>gm,clearMeasures:()=>um,createTimer:()=>U_,createTimerIf:()=>Y2,disable:()=>ko,enable:()=>na,forEachMark:()=>XS,forEachMeasure:()=>QS,getCount:()=>sE,getDuration:()=>eA,isEnabled:()=>cs,mark:()=>Mc,measure:()=>Pf,nullTimer:()=>DC});var gC,NC;function Y2(s,c,g,d){return s?U_(c,g,d):DC}function U_(s,c,g){let d=0;return{enter:h,exit:_};function h(){++d===1&&Mc(c)}function _(){--d===0?(Mc(g),Pf(s,c,g)):d<0&&pe.fail("enter/exit count does not match.")}}var DC={enter:Dc,exit:Dc},kC=!1,qI=Fg(),ph=new Map,vA=new Map,Td=new Map;function Mc(s){if(kC){let c=vA.get(s)??0;vA.set(s,c+1),ph.set(s,Fg()),NC?.mark(s),typeof onProfilerEvent=="function"&&onProfilerEvent(s)}}function Pf(s,c,g){if(kC){let d=(g!==void 0?ph.get(g):void 0)??Fg(),h=(c!==void 0?ph.get(c):void 0)??qI,_=Td.get(s)||0;Td.set(s,_+(d-h)),NC?.measure(s,c,g)}}function sE(s){return vA.get(s)||0}function eA(s){return Td.get(s)||0}function QS(s){Td.forEach((c,g)=>s(g,c))}function XS(s){ph.forEach((c,g)=>s(g))}function um(s){s!==void 0?Td.delete(s):Td.clear(),NC?.clearMeasures(s)}function gm(s){s!==void 0?(vA.delete(s),ph.delete(s)):(vA.clear(),ph.clear()),NC?.clearMarks(s)}function cs(){return kC}function na(s=yd){var c;return kC||(kC=!0,gC||(gC=YS()),gC?.performance&&(qI=gC.performance.timeOrigin,(gC.shouldWriteNativeEvents||(c=s?.cpuProfilingEnabled)!=null&&c.call(s)||s?.debugMode)&&(NC=gC.performance))),!0}function ko(){kC&&(ph.clear(),vA.clear(),Td.clear(),NC=void 0,kC=!1)}var ki,Kl;(s=>{let c,g=0,d=0,h,_=[],S,R=[];function T($e,Ye,Tt){if(pe.assert(!ki,"Tracing already started"),c===void 0)try{c=wt("fs")}catch(_t){throw new Error(`tracing requires having fs -(original error: ${_t.message||_t})`)}h=$e,_.length=0,S===void 0&&(S=Ro(Ye,"legend.json")),c.existsSync(Ye)||c.mkdirSync(Ye,{recursive:!0});let ot=h==="build"?`.${process.pid}-${++g}`:h==="server"?`.${process.pid}`:"",Qe=Ro(Ye,`trace${ot}.json`),mt=Ro(Ye,`types${ot}.json`);R.push({configFilePath:Tt,tracePath:Qe,typesPath:mt}),d=c.openSync(Qe,"w"),ki=s;let ht={cat:"__metadata",ph:"M",ts:1e3*Fg(),pid:1,tid:1};c.writeSync(d,`[ -`+[{name:"process_name",args:{name:"tsc"},...ht},{name:"thread_name",args:{name:"Main"},...ht},{name:"TracingStartedInBrowser",...ht,cat:"disabled-by-default-devtools.timeline"}].map(_t=>JSON.stringify(_t)).join(`, -`))}s.startTracing=T;function W(){pe.assert(ki,"Tracing is not in progress"),pe.assert(!!_.length==(h!=="server")),c.writeSync(d,` -] -`),c.closeSync(d),ki=void 0,_.length?We(_):R[R.length-1].typesPath=void 0}s.stopTracing=W;function V($e){h!=="server"&&_.push($e)}s.recordType=V;let M;($e=>{$e.Parse="parse",$e.Program="program",$e.Bind="bind",$e.Check="check",$e.CheckTypes="checkTypes",$e.Emit="emit",$e.Session="session"})(M=s.Phase||(s.Phase={}));function ee($e,Ye,Tt){Te("I",$e,Ye,Tt,'"s":"g"')}s.instant=ee;let re=[];function ge($e,Ye,Tt,ot=!1){ot&&Te("B",$e,Ye,Tt),re.push({phase:$e,name:Ye,args:Tt,time:1e3*Fg(),separateBeginAndEnd:ot})}s.push=ge;function Ie($e){pe.assert(re.length>0),Ne(re.length-1,1e3*Fg(),$e),re.length--}s.pop=Ie;function _e(){let $e=1e3*Fg();for(let Ye=re.length-1;Ye>=0;Ye--)Ne(Ye,$e);re.length=0}s.popAll=_e;let Ee=1e3*10;function Ne($e,Ye,Tt){let{phase:ot,name:Qe,args:mt,time:ht,separateBeginAndEnd:_t}=re[$e];_t?(pe.assert(!Tt,"`results` are not supported for events with `separateBeginAndEnd`"),Te("E",ot,Qe,mt,void 0,Ye)):Ee-ht%Ee<=Ye-ht&&Te("X",ot,Qe,{...mt,results:Tt},`"dur":${Ye-ht}`,ht)}function Te($e,Ye,Tt,ot,Qe,mt=1e3*Fg()){h==="server"&&Ye==="checkTypes"||(Mc("beginTracing"),c.writeSync(d,`, -{"pid":1,"tid":1,"ph":"${$e}","cat":"${Ye}","ts":${mt},"name":"${Tt}"`),Qe&&c.writeSync(d,`,${Qe}`),ot&&c.writeSync(d,`,"args":${JSON.stringify(ot)}`),c.writeSync(d,"}"),Mc("endTracing"),Pf("Tracing","beginTracing","endTracing"))}function Ze($e){let Ye=ms($e);return Ye?{path:Ye.path,start:Tt(Ra(Ye,$e.pos)),end:Tt(Ra(Ye,$e.end))}:void 0;function Tt(ot){return{line:ot.line+1,character:ot.character+1}}}function We($e){var Ye,Tt,ot,Qe,mt,ht,_t,Rt,Lt,Ke,Pt,_r,Gt,nt,Dt,tr,ur,Gr,dt;Mc("beginDumpTypes");let pr=R[R.length-1].typesPath,st=c.openSync(pr,"w"),ir=new Map;c.writeSync(st,"[");let zt=$e.length;for(let Ht=0;HtWo.id),referenceLocation:Ze(ba.node)}}let si={};if(Br.flags&16777216){let ba=Br;si={conditionalCheckType:(ht=ba.checkType)==null?void 0:ht.id,conditionalExtendsType:(_t=ba.extendsType)==null?void 0:_t.id,conditionalTrueType:((Rt=ba.resolvedTrueType)==null?void 0:Rt.id)??-1,conditionalFalseType:((Lt=ba.resolvedFalseType)==null?void 0:Lt.id)??-1}}let ks={};if(Br.flags&33554432){let ba=Br;ks={substitutionBaseType:(Ke=ba.baseType)==null?void 0:Ke.id,constraintType:(Pt=ba.constraint)==null?void 0:Pt.id}}let Ic={};if(mn&1024){let ba=Br;Ic={reverseMappedSourceType:(_r=ba.source)==null?void 0:_r.id,reverseMappedMappedType:(Gt=ba.mappedType)==null?void 0:Gt.id,reverseMappedConstraintType:(nt=ba.constraintType)==null?void 0:nt.id}}let su={};if(mn&256){let ba=Br;su={evolvingArrayElementType:ba.elementType.id,evolvingArrayFinalType:(Dt=ba.finalArrayType)==null?void 0:Dt.id}}let Zn,ya=Br.checker.getRecursionIdentity(Br);ya&&(Zn=ir.get(ya),Zn||(Zn=ir.size,ir.set(ya,Zn)));let Gl={id:Br.id,intrinsicName:Br.intrinsicName,symbolName:jn?.escapedName&&Bc(jn.escapedName),recursionId:Zn,isTuple:mn&8?!0:void 0,unionTypes:Br.flags&1048576?(tr=Br.types)==null?void 0:tr.map(ba=>ba.id):void 0,intersectionTypes:Br.flags&2097152?Br.types.map(ba=>ba.id):void 0,aliasTypeArguments:(ur=Br.aliasTypeArguments)==null?void 0:ur.map(ba=>ba.id),keyofType:Br.flags&4194304?(Gr=Br.type)==null?void 0:Gr.id:void 0,...Ns,...An,...si,...ks,...Ic,...su,destructuringPattern:Ze(Br.pattern),firstDeclaration:Ze((dt=jn?.declarations)==null?void 0:dt[0]),flags:pe.formatTypeFlags(Br.flags).split("|"),display:Zi};c.writeSync(st,JSON.stringify(Gl)),Ht(s[s.Unknown=0]="Unknown",s[s.EndOfFileToken=1]="EndOfFileToken",s[s.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",s[s.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",s[s.NewLineTrivia=4]="NewLineTrivia",s[s.WhitespaceTrivia=5]="WhitespaceTrivia",s[s.ShebangTrivia=6]="ShebangTrivia",s[s.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",s[s.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",s[s.NumericLiteral=9]="NumericLiteral",s[s.BigIntLiteral=10]="BigIntLiteral",s[s.StringLiteral=11]="StringLiteral",s[s.JsxText=12]="JsxText",s[s.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",s[s.RegularExpressionLiteral=14]="RegularExpressionLiteral",s[s.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",s[s.TemplateHead=16]="TemplateHead",s[s.TemplateMiddle=17]="TemplateMiddle",s[s.TemplateTail=18]="TemplateTail",s[s.OpenBraceToken=19]="OpenBraceToken",s[s.CloseBraceToken=20]="CloseBraceToken",s[s.OpenParenToken=21]="OpenParenToken",s[s.CloseParenToken=22]="CloseParenToken",s[s.OpenBracketToken=23]="OpenBracketToken",s[s.CloseBracketToken=24]="CloseBracketToken",s[s.DotToken=25]="DotToken",s[s.DotDotDotToken=26]="DotDotDotToken",s[s.SemicolonToken=27]="SemicolonToken",s[s.CommaToken=28]="CommaToken",s[s.QuestionDotToken=29]="QuestionDotToken",s[s.LessThanToken=30]="LessThanToken",s[s.LessThanSlashToken=31]="LessThanSlashToken",s[s.GreaterThanToken=32]="GreaterThanToken",s[s.LessThanEqualsToken=33]="LessThanEqualsToken",s[s.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",s[s.EqualsEqualsToken=35]="EqualsEqualsToken",s[s.ExclamationEqualsToken=36]="ExclamationEqualsToken",s[s.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",s[s.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",s[s.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",s[s.PlusToken=40]="PlusToken",s[s.MinusToken=41]="MinusToken",s[s.AsteriskToken=42]="AsteriskToken",s[s.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",s[s.SlashToken=44]="SlashToken",s[s.PercentToken=45]="PercentToken",s[s.PlusPlusToken=46]="PlusPlusToken",s[s.MinusMinusToken=47]="MinusMinusToken",s[s.LessThanLessThanToken=48]="LessThanLessThanToken",s[s.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",s[s.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",s[s.AmpersandToken=51]="AmpersandToken",s[s.BarToken=52]="BarToken",s[s.CaretToken=53]="CaretToken",s[s.ExclamationToken=54]="ExclamationToken",s[s.TildeToken=55]="TildeToken",s[s.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",s[s.BarBarToken=57]="BarBarToken",s[s.QuestionToken=58]="QuestionToken",s[s.ColonToken=59]="ColonToken",s[s.AtToken=60]="AtToken",s[s.QuestionQuestionToken=61]="QuestionQuestionToken",s[s.BacktickToken=62]="BacktickToken",s[s.HashToken=63]="HashToken",s[s.EqualsToken=64]="EqualsToken",s[s.PlusEqualsToken=65]="PlusEqualsToken",s[s.MinusEqualsToken=66]="MinusEqualsToken",s[s.AsteriskEqualsToken=67]="AsteriskEqualsToken",s[s.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",s[s.SlashEqualsToken=69]="SlashEqualsToken",s[s.PercentEqualsToken=70]="PercentEqualsToken",s[s.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",s[s.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",s[s.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",s[s.AmpersandEqualsToken=74]="AmpersandEqualsToken",s[s.BarEqualsToken=75]="BarEqualsToken",s[s.BarBarEqualsToken=76]="BarBarEqualsToken",s[s.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",s[s.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",s[s.CaretEqualsToken=79]="CaretEqualsToken",s[s.Identifier=80]="Identifier",s[s.PrivateIdentifier=81]="PrivateIdentifier",s[s.JSDocCommentTextToken=82]="JSDocCommentTextToken",s[s.BreakKeyword=83]="BreakKeyword",s[s.CaseKeyword=84]="CaseKeyword",s[s.CatchKeyword=85]="CatchKeyword",s[s.ClassKeyword=86]="ClassKeyword",s[s.ConstKeyword=87]="ConstKeyword",s[s.ContinueKeyword=88]="ContinueKeyword",s[s.DebuggerKeyword=89]="DebuggerKeyword",s[s.DefaultKeyword=90]="DefaultKeyword",s[s.DeleteKeyword=91]="DeleteKeyword",s[s.DoKeyword=92]="DoKeyword",s[s.ElseKeyword=93]="ElseKeyword",s[s.EnumKeyword=94]="EnumKeyword",s[s.ExportKeyword=95]="ExportKeyword",s[s.ExtendsKeyword=96]="ExtendsKeyword",s[s.FalseKeyword=97]="FalseKeyword",s[s.FinallyKeyword=98]="FinallyKeyword",s[s.ForKeyword=99]="ForKeyword",s[s.FunctionKeyword=100]="FunctionKeyword",s[s.IfKeyword=101]="IfKeyword",s[s.ImportKeyword=102]="ImportKeyword",s[s.InKeyword=103]="InKeyword",s[s.InstanceOfKeyword=104]="InstanceOfKeyword",s[s.NewKeyword=105]="NewKeyword",s[s.NullKeyword=106]="NullKeyword",s[s.ReturnKeyword=107]="ReturnKeyword",s[s.SuperKeyword=108]="SuperKeyword",s[s.SwitchKeyword=109]="SwitchKeyword",s[s.ThisKeyword=110]="ThisKeyword",s[s.ThrowKeyword=111]="ThrowKeyword",s[s.TrueKeyword=112]="TrueKeyword",s[s.TryKeyword=113]="TryKeyword",s[s.TypeOfKeyword=114]="TypeOfKeyword",s[s.VarKeyword=115]="VarKeyword",s[s.VoidKeyword=116]="VoidKeyword",s[s.WhileKeyword=117]="WhileKeyword",s[s.WithKeyword=118]="WithKeyword",s[s.ImplementsKeyword=119]="ImplementsKeyword",s[s.InterfaceKeyword=120]="InterfaceKeyword",s[s.LetKeyword=121]="LetKeyword",s[s.PackageKeyword=122]="PackageKeyword",s[s.PrivateKeyword=123]="PrivateKeyword",s[s.ProtectedKeyword=124]="ProtectedKeyword",s[s.PublicKeyword=125]="PublicKeyword",s[s.StaticKeyword=126]="StaticKeyword",s[s.YieldKeyword=127]="YieldKeyword",s[s.AbstractKeyword=128]="AbstractKeyword",s[s.AccessorKeyword=129]="AccessorKeyword",s[s.AsKeyword=130]="AsKeyword",s[s.AssertsKeyword=131]="AssertsKeyword",s[s.AssertKeyword=132]="AssertKeyword",s[s.AnyKeyword=133]="AnyKeyword",s[s.AsyncKeyword=134]="AsyncKeyword",s[s.AwaitKeyword=135]="AwaitKeyword",s[s.BooleanKeyword=136]="BooleanKeyword",s[s.ConstructorKeyword=137]="ConstructorKeyword",s[s.DeclareKeyword=138]="DeclareKeyword",s[s.GetKeyword=139]="GetKeyword",s[s.InferKeyword=140]="InferKeyword",s[s.IntrinsicKeyword=141]="IntrinsicKeyword",s[s.IsKeyword=142]="IsKeyword",s[s.KeyOfKeyword=143]="KeyOfKeyword",s[s.ModuleKeyword=144]="ModuleKeyword",s[s.NamespaceKeyword=145]="NamespaceKeyword",s[s.NeverKeyword=146]="NeverKeyword",s[s.OutKeyword=147]="OutKeyword",s[s.ReadonlyKeyword=148]="ReadonlyKeyword",s[s.RequireKeyword=149]="RequireKeyword",s[s.NumberKeyword=150]="NumberKeyword",s[s.ObjectKeyword=151]="ObjectKeyword",s[s.SatisfiesKeyword=152]="SatisfiesKeyword",s[s.SetKeyword=153]="SetKeyword",s[s.StringKeyword=154]="StringKeyword",s[s.SymbolKeyword=155]="SymbolKeyword",s[s.TypeKeyword=156]="TypeKeyword",s[s.UndefinedKeyword=157]="UndefinedKeyword",s[s.UniqueKeyword=158]="UniqueKeyword",s[s.UnknownKeyword=159]="UnknownKeyword",s[s.UsingKeyword=160]="UsingKeyword",s[s.FromKeyword=161]="FromKeyword",s[s.GlobalKeyword=162]="GlobalKeyword",s[s.BigIntKeyword=163]="BigIntKeyword",s[s.OverrideKeyword=164]="OverrideKeyword",s[s.OfKeyword=165]="OfKeyword",s[s.DeferKeyword=166]="DeferKeyword",s[s.QualifiedName=167]="QualifiedName",s[s.ComputedPropertyName=168]="ComputedPropertyName",s[s.TypeParameter=169]="TypeParameter",s[s.Parameter=170]="Parameter",s[s.Decorator=171]="Decorator",s[s.PropertySignature=172]="PropertySignature",s[s.PropertyDeclaration=173]="PropertyDeclaration",s[s.MethodSignature=174]="MethodSignature",s[s.MethodDeclaration=175]="MethodDeclaration",s[s.ClassStaticBlockDeclaration=176]="ClassStaticBlockDeclaration",s[s.Constructor=177]="Constructor",s[s.GetAccessor=178]="GetAccessor",s[s.SetAccessor=179]="SetAccessor",s[s.CallSignature=180]="CallSignature",s[s.ConstructSignature=181]="ConstructSignature",s[s.IndexSignature=182]="IndexSignature",s[s.TypePredicate=183]="TypePredicate",s[s.TypeReference=184]="TypeReference",s[s.FunctionType=185]="FunctionType",s[s.ConstructorType=186]="ConstructorType",s[s.TypeQuery=187]="TypeQuery",s[s.TypeLiteral=188]="TypeLiteral",s[s.ArrayType=189]="ArrayType",s[s.TupleType=190]="TupleType",s[s.OptionalType=191]="OptionalType",s[s.RestType=192]="RestType",s[s.UnionType=193]="UnionType",s[s.IntersectionType=194]="IntersectionType",s[s.ConditionalType=195]="ConditionalType",s[s.InferType=196]="InferType",s[s.ParenthesizedType=197]="ParenthesizedType",s[s.ThisType=198]="ThisType",s[s.TypeOperator=199]="TypeOperator",s[s.IndexedAccessType=200]="IndexedAccessType",s[s.MappedType=201]="MappedType",s[s.LiteralType=202]="LiteralType",s[s.NamedTupleMember=203]="NamedTupleMember",s[s.TemplateLiteralType=204]="TemplateLiteralType",s[s.TemplateLiteralTypeSpan=205]="TemplateLiteralTypeSpan",s[s.ImportType=206]="ImportType",s[s.ObjectBindingPattern=207]="ObjectBindingPattern",s[s.ArrayBindingPattern=208]="ArrayBindingPattern",s[s.BindingElement=209]="BindingElement",s[s.ArrayLiteralExpression=210]="ArrayLiteralExpression",s[s.ObjectLiteralExpression=211]="ObjectLiteralExpression",s[s.PropertyAccessExpression=212]="PropertyAccessExpression",s[s.ElementAccessExpression=213]="ElementAccessExpression",s[s.CallExpression=214]="CallExpression",s[s.NewExpression=215]="NewExpression",s[s.TaggedTemplateExpression=216]="TaggedTemplateExpression",s[s.TypeAssertionExpression=217]="TypeAssertionExpression",s[s.ParenthesizedExpression=218]="ParenthesizedExpression",s[s.FunctionExpression=219]="FunctionExpression",s[s.ArrowFunction=220]="ArrowFunction",s[s.DeleteExpression=221]="DeleteExpression",s[s.TypeOfExpression=222]="TypeOfExpression",s[s.VoidExpression=223]="VoidExpression",s[s.AwaitExpression=224]="AwaitExpression",s[s.PrefixUnaryExpression=225]="PrefixUnaryExpression",s[s.PostfixUnaryExpression=226]="PostfixUnaryExpression",s[s.BinaryExpression=227]="BinaryExpression",s[s.ConditionalExpression=228]="ConditionalExpression",s[s.TemplateExpression=229]="TemplateExpression",s[s.YieldExpression=230]="YieldExpression",s[s.SpreadElement=231]="SpreadElement",s[s.ClassExpression=232]="ClassExpression",s[s.OmittedExpression=233]="OmittedExpression",s[s.ExpressionWithTypeArguments=234]="ExpressionWithTypeArguments",s[s.AsExpression=235]="AsExpression",s[s.NonNullExpression=236]="NonNullExpression",s[s.MetaProperty=237]="MetaProperty",s[s.SyntheticExpression=238]="SyntheticExpression",s[s.SatisfiesExpression=239]="SatisfiesExpression",s[s.TemplateSpan=240]="TemplateSpan",s[s.SemicolonClassElement=241]="SemicolonClassElement",s[s.Block=242]="Block",s[s.EmptyStatement=243]="EmptyStatement",s[s.VariableStatement=244]="VariableStatement",s[s.ExpressionStatement=245]="ExpressionStatement",s[s.IfStatement=246]="IfStatement",s[s.DoStatement=247]="DoStatement",s[s.WhileStatement=248]="WhileStatement",s[s.ForStatement=249]="ForStatement",s[s.ForInStatement=250]="ForInStatement",s[s.ForOfStatement=251]="ForOfStatement",s[s.ContinueStatement=252]="ContinueStatement",s[s.BreakStatement=253]="BreakStatement",s[s.ReturnStatement=254]="ReturnStatement",s[s.WithStatement=255]="WithStatement",s[s.SwitchStatement=256]="SwitchStatement",s[s.LabeledStatement=257]="LabeledStatement",s[s.ThrowStatement=258]="ThrowStatement",s[s.TryStatement=259]="TryStatement",s[s.DebuggerStatement=260]="DebuggerStatement",s[s.VariableDeclaration=261]="VariableDeclaration",s[s.VariableDeclarationList=262]="VariableDeclarationList",s[s.FunctionDeclaration=263]="FunctionDeclaration",s[s.ClassDeclaration=264]="ClassDeclaration",s[s.InterfaceDeclaration=265]="InterfaceDeclaration",s[s.TypeAliasDeclaration=266]="TypeAliasDeclaration",s[s.EnumDeclaration=267]="EnumDeclaration",s[s.ModuleDeclaration=268]="ModuleDeclaration",s[s.ModuleBlock=269]="ModuleBlock",s[s.CaseBlock=270]="CaseBlock",s[s.NamespaceExportDeclaration=271]="NamespaceExportDeclaration",s[s.ImportEqualsDeclaration=272]="ImportEqualsDeclaration",s[s.ImportDeclaration=273]="ImportDeclaration",s[s.ImportClause=274]="ImportClause",s[s.NamespaceImport=275]="NamespaceImport",s[s.NamedImports=276]="NamedImports",s[s.ImportSpecifier=277]="ImportSpecifier",s[s.ExportAssignment=278]="ExportAssignment",s[s.ExportDeclaration=279]="ExportDeclaration",s[s.NamedExports=280]="NamedExports",s[s.NamespaceExport=281]="NamespaceExport",s[s.ExportSpecifier=282]="ExportSpecifier",s[s.MissingDeclaration=283]="MissingDeclaration",s[s.ExternalModuleReference=284]="ExternalModuleReference",s[s.JsxElement=285]="JsxElement",s[s.JsxSelfClosingElement=286]="JsxSelfClosingElement",s[s.JsxOpeningElement=287]="JsxOpeningElement",s[s.JsxClosingElement=288]="JsxClosingElement",s[s.JsxFragment=289]="JsxFragment",s[s.JsxOpeningFragment=290]="JsxOpeningFragment",s[s.JsxClosingFragment=291]="JsxClosingFragment",s[s.JsxAttribute=292]="JsxAttribute",s[s.JsxAttributes=293]="JsxAttributes",s[s.JsxSpreadAttribute=294]="JsxSpreadAttribute",s[s.JsxExpression=295]="JsxExpression",s[s.JsxNamespacedName=296]="JsxNamespacedName",s[s.CaseClause=297]="CaseClause",s[s.DefaultClause=298]="DefaultClause",s[s.HeritageClause=299]="HeritageClause",s[s.CatchClause=300]="CatchClause",s[s.ImportAttributes=301]="ImportAttributes",s[s.ImportAttribute=302]="ImportAttribute",s[s.AssertClause=301]="AssertClause",s[s.AssertEntry=302]="AssertEntry",s[s.ImportTypeAssertionContainer=303]="ImportTypeAssertionContainer",s[s.PropertyAssignment=304]="PropertyAssignment",s[s.ShorthandPropertyAssignment=305]="ShorthandPropertyAssignment",s[s.SpreadAssignment=306]="SpreadAssignment",s[s.EnumMember=307]="EnumMember",s[s.SourceFile=308]="SourceFile",s[s.Bundle=309]="Bundle",s[s.JSDocTypeExpression=310]="JSDocTypeExpression",s[s.JSDocNameReference=311]="JSDocNameReference",s[s.JSDocMemberName=312]="JSDocMemberName",s[s.JSDocAllType=313]="JSDocAllType",s[s.JSDocUnknownType=314]="JSDocUnknownType",s[s.JSDocNullableType=315]="JSDocNullableType",s[s.JSDocNonNullableType=316]="JSDocNonNullableType",s[s.JSDocOptionalType=317]="JSDocOptionalType",s[s.JSDocFunctionType=318]="JSDocFunctionType",s[s.JSDocVariadicType=319]="JSDocVariadicType",s[s.JSDocNamepathType=320]="JSDocNamepathType",s[s.JSDoc=321]="JSDoc",s[s.JSDocComment=321]="JSDocComment",s[s.JSDocText=322]="JSDocText",s[s.JSDocTypeLiteral=323]="JSDocTypeLiteral",s[s.JSDocSignature=324]="JSDocSignature",s[s.JSDocLink=325]="JSDocLink",s[s.JSDocLinkCode=326]="JSDocLinkCode",s[s.JSDocLinkPlain=327]="JSDocLinkPlain",s[s.JSDocTag=328]="JSDocTag",s[s.JSDocAugmentsTag=329]="JSDocAugmentsTag",s[s.JSDocImplementsTag=330]="JSDocImplementsTag",s[s.JSDocAuthorTag=331]="JSDocAuthorTag",s[s.JSDocDeprecatedTag=332]="JSDocDeprecatedTag",s[s.JSDocClassTag=333]="JSDocClassTag",s[s.JSDocPublicTag=334]="JSDocPublicTag",s[s.JSDocPrivateTag=335]="JSDocPrivateTag",s[s.JSDocProtectedTag=336]="JSDocProtectedTag",s[s.JSDocReadonlyTag=337]="JSDocReadonlyTag",s[s.JSDocOverrideTag=338]="JSDocOverrideTag",s[s.JSDocCallbackTag=339]="JSDocCallbackTag",s[s.JSDocOverloadTag=340]="JSDocOverloadTag",s[s.JSDocEnumTag=341]="JSDocEnumTag",s[s.JSDocParameterTag=342]="JSDocParameterTag",s[s.JSDocReturnTag=343]="JSDocReturnTag",s[s.JSDocThisTag=344]="JSDocThisTag",s[s.JSDocTypeTag=345]="JSDocTypeTag",s[s.JSDocTemplateTag=346]="JSDocTemplateTag",s[s.JSDocTypedefTag=347]="JSDocTypedefTag",s[s.JSDocSeeTag=348]="JSDocSeeTag",s[s.JSDocPropertyTag=349]="JSDocPropertyTag",s[s.JSDocThrowsTag=350]="JSDocThrowsTag",s[s.JSDocSatisfiesTag=351]="JSDocSatisfiesTag",s[s.JSDocImportTag=352]="JSDocImportTag",s[s.SyntaxList=353]="SyntaxList",s[s.NotEmittedStatement=354]="NotEmittedStatement",s[s.NotEmittedTypeElement=355]="NotEmittedTypeElement",s[s.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",s[s.CommaListExpression=357]="CommaListExpression",s[s.SyntheticReferenceExpression=358]="SyntheticReferenceExpression",s[s.Count=359]="Count",s[s.FirstAssignment=64]="FirstAssignment",s[s.LastAssignment=79]="LastAssignment",s[s.FirstCompoundAssignment=65]="FirstCompoundAssignment",s[s.LastCompoundAssignment=79]="LastCompoundAssignment",s[s.FirstReservedWord=83]="FirstReservedWord",s[s.LastReservedWord=118]="LastReservedWord",s[s.FirstKeyword=83]="FirstKeyword",s[s.LastKeyword=166]="LastKeyword",s[s.FirstFutureReservedWord=119]="FirstFutureReservedWord",s[s.LastFutureReservedWord=127]="LastFutureReservedWord",s[s.FirstTypeNode=183]="FirstTypeNode",s[s.LastTypeNode=206]="LastTypeNode",s[s.FirstPunctuation=19]="FirstPunctuation",s[s.LastPunctuation=79]="LastPunctuation",s[s.FirstToken=0]="FirstToken",s[s.LastToken=166]="LastToken",s[s.FirstTriviaToken=2]="FirstTriviaToken",s[s.LastTriviaToken=7]="LastTriviaToken",s[s.FirstLiteralToken=9]="FirstLiteralToken",s[s.LastLiteralToken=15]="LastLiteralToken",s[s.FirstTemplateToken=15]="FirstTemplateToken",s[s.LastTemplateToken=18]="LastTemplateToken",s[s.FirstBinaryOperator=30]="FirstBinaryOperator",s[s.LastBinaryOperator=79]="LastBinaryOperator",s[s.FirstStatement=244]="FirstStatement",s[s.LastStatement=260]="LastStatement",s[s.FirstNode=167]="FirstNode",s[s.FirstJSDocNode=310]="FirstJSDocNode",s[s.LastJSDocNode=352]="LastJSDocNode",s[s.FirstJSDocTagNode=328]="FirstJSDocTagNode",s[s.LastJSDocTagNode=352]="LastJSDocTagNode",s[s.FirstContextualKeyword=128]="FirstContextualKeyword",s[s.LastContextualKeyword=166]="LastContextualKeyword",s))(Ld||{}),AC=(s=>(s[s.None=0]="None",s[s.Let=1]="Let",s[s.Const=2]="Const",s[s.Using=4]="Using",s[s.AwaitUsing=6]="AwaitUsing",s[s.NestedNamespace=8]="NestedNamespace",s[s.Synthesized=16]="Synthesized",s[s.Namespace=32]="Namespace",s[s.OptionalChain=64]="OptionalChain",s[s.ExportContext=128]="ExportContext",s[s.ContainsThis=256]="ContainsThis",s[s.HasImplicitReturn=512]="HasImplicitReturn",s[s.HasExplicitReturn=1024]="HasExplicitReturn",s[s.GlobalAugmentation=2048]="GlobalAugmentation",s[s.HasAsyncFunctions=4096]="HasAsyncFunctions",s[s.DisallowInContext=8192]="DisallowInContext",s[s.YieldContext=16384]="YieldContext",s[s.DecoratorContext=32768]="DecoratorContext",s[s.AwaitContext=65536]="AwaitContext",s[s.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",s[s.ThisNodeHasError=262144]="ThisNodeHasError",s[s.JavaScriptFile=524288]="JavaScriptFile",s[s.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",s[s.HasAggregatedChildData=2097152]="HasAggregatedChildData",s[s.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",s[s.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",s[s.JSDoc=16777216]="JSDoc",s[s.Ambient=33554432]="Ambient",s[s.InWithStatement=67108864]="InWithStatement",s[s.JsonFile=134217728]="JsonFile",s[s.TypeCached=268435456]="TypeCached",s[s.Deprecated=536870912]="Deprecated",s[s.BlockScoped=7]="BlockScoped",s[s.Constant=6]="Constant",s[s.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",s[s.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",s[s.ContextFlags=101441536]="ContextFlags",s[s.TypeExcludesFlags=81920]="TypeExcludesFlags",s[s.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",s[s.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",s[s.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",s))(AC||{}),JE=(s=>(s[s.None=0]="None",s[s.Public=1]="Public",s[s.Private=2]="Private",s[s.Protected=4]="Protected",s[s.Readonly=8]="Readonly",s[s.Override=16]="Override",s[s.Export=32]="Export",s[s.Abstract=64]="Abstract",s[s.Ambient=128]="Ambient",s[s.Static=256]="Static",s[s.Accessor=512]="Accessor",s[s.Async=1024]="Async",s[s.Default=2048]="Default",s[s.Const=4096]="Const",s[s.In=8192]="In",s[s.Out=16384]="Out",s[s.Decorator=32768]="Decorator",s[s.Deprecated=65536]="Deprecated",s[s.JSDocPublic=8388608]="JSDocPublic",s[s.JSDocPrivate=16777216]="JSDocPrivate",s[s.JSDocProtected=33554432]="JSDocProtected",s[s.JSDocReadonly=67108864]="JSDocReadonly",s[s.JSDocOverride=134217728]="JSDocOverride",s[s.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",s[s.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",s[s.SyntacticModifiers=65535]="SyntacticModifiers",s[s.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",s[s.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",s[s.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",s[s.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",s[s.HasComputedFlags=536870912]="HasComputedFlags",s[s.AccessibilityModifier=7]="AccessibilityModifier",s[s.ParameterPropertyModifier=31]="ParameterPropertyModifier",s[s.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",s[s.TypeScriptModifier=28895]="TypeScriptModifier",s[s.ExportDefault=2080]="ExportDefault",s[s.All=131071]="All",s[s.Modifier=98303]="Modifier",s))(JE||{}),Ym=(s=>(s[s.None=0]="None",s[s.IntrinsicNamedElement=1]="IntrinsicNamedElement",s[s.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",s[s.IntrinsicElement=3]="IntrinsicElement",s))(Ym||{}),vy=(s=>(s[s.None=0]="None",s[s.Succeeded=1]="Succeeded",s[s.Failed=2]="Failed",s[s.ReportsUnmeasurable=8]="ReportsUnmeasurable",s[s.ReportsUnreliable=16]="ReportsUnreliable",s[s.ReportsMask=24]="ReportsMask",s[s.ComplexityOverflow=32]="ComplexityOverflow",s[s.StackDepthOverflow=64]="StackDepthOverflow",s[s.Overflow=96]="Overflow",s))(vy||{}),K_=(s=>(s[s.None=0]="None",s[s.Always=1]="Always",s[s.Never=2]="Never",s[s.Sometimes=3]="Sometimes",s))(K_||{}),od=(s=>(s[s.None=0]="None",s[s.Auto=1]="Auto",s[s.Loop=2]="Loop",s[s.Unique=3]="Unique",s[s.Node=4]="Node",s[s.KindMask=7]="KindMask",s[s.ReservedInNestedScopes=8]="ReservedInNestedScopes",s[s.Optimistic=16]="Optimistic",s[s.FileLevel=32]="FileLevel",s[s.AllowNameSubstitution=64]="AllowNameSubstitution",s))(od||{}),UE=(s=>(s[s.None=0]="None",s[s.HasIndices=1]="HasIndices",s[s.Global=2]="Global",s[s.IgnoreCase=4]="IgnoreCase",s[s.Multiline=8]="Multiline",s[s.DotAll=16]="DotAll",s[s.Unicode=32]="Unicode",s[s.UnicodeSets=64]="UnicodeSets",s[s.Sticky=128]="Sticky",s[s.AnyUnicodeMode=96]="AnyUnicodeMode",s[s.Modifiers=28]="Modifiers",s))(UE||{}),KE=(s=>(s[s.None=0]="None",s[s.PrecedingLineBreak=1]="PrecedingLineBreak",s[s.PrecedingJSDocComment=2]="PrecedingJSDocComment",s[s.Unterminated=4]="Unterminated",s[s.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",s[s.Scientific=16]="Scientific",s[s.Octal=32]="Octal",s[s.HexSpecifier=64]="HexSpecifier",s[s.BinarySpecifier=128]="BinarySpecifier",s[s.OctalSpecifier=256]="OctalSpecifier",s[s.ContainsSeparator=512]="ContainsSeparator",s[s.UnicodeEscape=1024]="UnicodeEscape",s[s.ContainsInvalidEscape=2048]="ContainsInvalidEscape",s[s.HexEscape=4096]="HexEscape",s[s.ContainsLeadingZero=8192]="ContainsLeadingZero",s[s.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",s[s.PrecedingJSDocLeadingAsterisks=32768]="PrecedingJSDocLeadingAsterisks",s[s.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",s[s.WithSpecifier=448]="WithSpecifier",s[s.StringLiteralFlags=7176]="StringLiteralFlags",s[s.NumericLiteralFlags=25584]="NumericLiteralFlags",s[s.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",s[s.IsInvalid=26656]="IsInvalid",s))(KE||{}),Yp=(s=>(s[s.Unreachable=1]="Unreachable",s[s.Start=2]="Start",s[s.BranchLabel=4]="BranchLabel",s[s.LoopLabel=8]="LoopLabel",s[s.Assignment=16]="Assignment",s[s.TrueCondition=32]="TrueCondition",s[s.FalseCondition=64]="FalseCondition",s[s.SwitchClause=128]="SwitchClause",s[s.ArrayMutation=256]="ArrayMutation",s[s.Call=512]="Call",s[s.ReduceLabel=1024]="ReduceLabel",s[s.Referenced=2048]="Referenced",s[s.Shared=4096]="Shared",s[s.Label=12]="Label",s[s.Condition=96]="Condition",s))(Yp||{}),JS=(s=>(s[s.ExpectError=0]="ExpectError",s[s.Ignore=1]="Ignore",s))(JS||{}),By=class{},$0=(s=>(s[s.RootFile=0]="RootFile",s[s.SourceFromProjectReference=1]="SourceFromProjectReference",s[s.OutputFromProjectReference=2]="OutputFromProjectReference",s[s.Import=3]="Import",s[s.ReferenceFile=4]="ReferenceFile",s[s.TypeReferenceDirective=5]="TypeReferenceDirective",s[s.LibFile=6]="LibFile",s[s.LibReferenceDirective=7]="LibReferenceDirective",s[s.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",s))($0||{}),fw=(s=>(s[s.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",s[s.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",s[s.ResolutionDiagnostics=2]="ResolutionDiagnostics",s))(fw||{}),Q2=(s=>(s[s.Js=0]="Js",s[s.Dts=1]="Dts",s[s.BuilderSignature=2]="BuilderSignature",s))(Q2||{}),xc=(s=>(s[s.Not=0]="Not",s[s.SafeModules=1]="SafeModules",s[s.Completely=2]="Completely",s))(xc||{}),ut=(s=>(s[s.Success=0]="Success",s[s.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",s[s.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",s[s.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",s[s.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",s))(ut||{}),ar=(s=>(s[s.Ok=0]="Ok",s[s.NeedsOverride=1]="NeedsOverride",s[s.HasInvalidOverride=2]="HasInvalidOverride",s))(ar||{}),Jr=(s=>(s[s.None=0]="None",s[s.Literal=1]="Literal",s[s.Subtype=2]="Subtype",s))(Jr||{}),Gn=(s=>(s[s.None=0]="None",s[s.NoSupertypeReduction=1]="NoSupertypeReduction",s[s.NoConstraintReduction=2]="NoConstraintReduction",s))(Gn||{}),Ts=(s=>(s[s.None=0]="None",s[s.Signature=1]="Signature",s[s.NoConstraints=2]="NoConstraints",s[s.Completions=4]="Completions",s[s.SkipBindingPatterns=8]="SkipBindingPatterns",s))(Ts||{}),Qo=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",s[s.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",s[s.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",s[s.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",s[s.AllowEmptyTuple=524288]="AllowEmptyTuple",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",s[s.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",s[s.IgnoreErrors=70221824]="IgnoreErrors",s[s.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.InInitialEntityName=16777216]="InInitialEntityName",s))(Qo||{}),vg=(s=>(s[s.None=0]="None",s[s.WriteComputedProps=1]="WriteComputedProps",s[s.NoSyntacticPrinter=2]="NoSyntacticPrinter",s[s.DoNotIncludeSymbolChain=4]="DoNotIncludeSymbolChain",s[s.AllowUnresolvedNames=8]="AllowUnresolvedNames",s))(vg||{}),Ng=(s=>(s[s.None=0]="None",s[s.NoTruncation=1]="NoTruncation",s[s.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",s[s.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",s[s.UseStructuralFallback=8]="UseStructuralFallback",s[s.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",s[s.UseFullyQualifiedType=64]="UseFullyQualifiedType",s[s.SuppressAnyReturnType=256]="SuppressAnyReturnType",s[s.MultilineObjectLiterals=1024]="MultilineObjectLiterals",s[s.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",s[s.UseTypeOfFunction=4096]="UseTypeOfFunction",s[s.OmitParameterModifiers=8192]="OmitParameterModifiers",s[s.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",s[s.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",s[s.NoTypeReduction=536870912]="NoTypeReduction",s[s.OmitThisParameter=33554432]="OmitThisParameter",s[s.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",s[s.AddUndefined=131072]="AddUndefined",s[s.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",s[s.InArrayType=524288]="InArrayType",s[s.InElementType=2097152]="InElementType",s[s.InFirstTypeArgument=4194304]="InFirstTypeArgument",s[s.InTypeAlias=8388608]="InTypeAlias",s[s.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",s))(Ng||{}),Rf=(s=>(s[s.None=0]="None",s[s.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",s[s.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",s[s.AllowAnyNodeKind=4]="AllowAnyNodeKind",s[s.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",s[s.WriteComputedProps=16]="WriteComputedProps",s[s.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",s))(Rf||{}),uI=(s=>(s[s.Accessible=0]="Accessible",s[s.NotAccessible=1]="NotAccessible",s[s.CannotBeNamed=2]="CannotBeNamed",s[s.NotResolved=3]="NotResolved",s))(uI||{}),Th=(s=>(s[s.This=0]="This",s[s.Identifier=1]="Identifier",s[s.AssertsThis=2]="AssertsThis",s[s.AssertsIdentifier=3]="AssertsIdentifier",s))(Th||{}),oE=(s=>(s[s.Unknown=0]="Unknown",s[s.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",s[s.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",s[s.NumberLikeType=3]="NumberLikeType",s[s.BigIntLikeType=4]="BigIntLikeType",s[s.StringLikeType=5]="StringLikeType",s[s.BooleanType=6]="BooleanType",s[s.ArrayLikeType=7]="ArrayLikeType",s[s.ESSymbolType=8]="ESSymbolType",s[s.Promise=9]="Promise",s[s.TypeWithCallSignature=10]="TypeWithCallSignature",s[s.ObjectType=11]="ObjectType",s))(oE||{}),TT=(s=>(s[s.None=0]="None",s[s.FunctionScopedVariable=1]="FunctionScopedVariable",s[s.BlockScopedVariable=2]="BlockScopedVariable",s[s.Property=4]="Property",s[s.EnumMember=8]="EnumMember",s[s.Function=16]="Function",s[s.Class=32]="Class",s[s.Interface=64]="Interface",s[s.ConstEnum=128]="ConstEnum",s[s.RegularEnum=256]="RegularEnum",s[s.ValueModule=512]="ValueModule",s[s.NamespaceModule=1024]="NamespaceModule",s[s.TypeLiteral=2048]="TypeLiteral",s[s.ObjectLiteral=4096]="ObjectLiteral",s[s.Method=8192]="Method",s[s.Constructor=16384]="Constructor",s[s.GetAccessor=32768]="GetAccessor",s[s.SetAccessor=65536]="SetAccessor",s[s.Signature=131072]="Signature",s[s.TypeParameter=262144]="TypeParameter",s[s.TypeAlias=524288]="TypeAlias",s[s.ExportValue=1048576]="ExportValue",s[s.Alias=2097152]="Alias",s[s.Prototype=4194304]="Prototype",s[s.ExportStar=8388608]="ExportStar",s[s.Optional=16777216]="Optional",s[s.Transient=33554432]="Transient",s[s.Assignment=67108864]="Assignment",s[s.ModuleExports=134217728]="ModuleExports",s[s.All=-1]="All",s[s.Enum=384]="Enum",s[s.Variable=3]="Variable",s[s.Value=111551]="Value",s[s.Type=788968]="Type",s[s.Namespace=1920]="Namespace",s[s.Module=1536]="Module",s[s.Accessor=98304]="Accessor",s[s.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",s[s.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",s[s.ParameterExcludes=111551]="ParameterExcludes",s[s.PropertyExcludes=0]="PropertyExcludes",s[s.EnumMemberExcludes=900095]="EnumMemberExcludes",s[s.FunctionExcludes=110991]="FunctionExcludes",s[s.ClassExcludes=899503]="ClassExcludes",s[s.InterfaceExcludes=788872]="InterfaceExcludes",s[s.RegularEnumExcludes=899327]="RegularEnumExcludes",s[s.ConstEnumExcludes=899967]="ConstEnumExcludes",s[s.ValueModuleExcludes=110735]="ValueModuleExcludes",s[s.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",s[s.MethodExcludes=103359]="MethodExcludes",s[s.GetAccessorExcludes=46015]="GetAccessorExcludes",s[s.SetAccessorExcludes=78783]="SetAccessorExcludes",s[s.AccessorExcludes=13247]="AccessorExcludes",s[s.TypeParameterExcludes=526824]="TypeParameterExcludes",s[s.TypeAliasExcludes=788968]="TypeAliasExcludes",s[s.AliasExcludes=2097152]="AliasExcludes",s[s.ModuleMember=2623475]="ModuleMember",s[s.ExportHasLocal=944]="ExportHasLocal",s[s.BlockScoped=418]="BlockScoped",s[s.PropertyOrAccessor=98308]="PropertyOrAccessor",s[s.ClassMember=106500]="ClassMember",s[s.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",s[s.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",s[s.Classifiable=2885600]="Classifiable",s[s.LateBindingContainer=6256]="LateBindingContainer",s))(TT||{}),sB=(s=>(s[s.None=0]="None",s[s.Instantiated=1]="Instantiated",s[s.SyntheticProperty=2]="SyntheticProperty",s[s.SyntheticMethod=4]="SyntheticMethod",s[s.Readonly=8]="Readonly",s[s.ReadPartial=16]="ReadPartial",s[s.WritePartial=32]="WritePartial",s[s.HasNonUniformType=64]="HasNonUniformType",s[s.HasLiteralType=128]="HasLiteralType",s[s.ContainsPublic=256]="ContainsPublic",s[s.ContainsProtected=512]="ContainsProtected",s[s.ContainsPrivate=1024]="ContainsPrivate",s[s.ContainsStatic=2048]="ContainsStatic",s[s.Late=4096]="Late",s[s.ReverseMapped=8192]="ReverseMapped",s[s.OptionalParameter=16384]="OptionalParameter",s[s.RestParameter=32768]="RestParameter",s[s.DeferredType=65536]="DeferredType",s[s.HasNeverType=131072]="HasNeverType",s[s.Mapped=262144]="Mapped",s[s.StripOptional=524288]="StripOptional",s[s.Unresolved=1048576]="Unresolved",s[s.Synthetic=6]="Synthetic",s[s.Discriminant=192]="Discriminant",s[s.Partial=48]="Partial",s))(sB||{}),RT=(s=>(s.Call="__call",s.Constructor="__constructor",s.New="__new",s.Index="__index",s.ExportStar="__export",s.Global="__global",s.Missing="__missing",s.Type="__type",s.Object="__object",s.JSXAttributes="__jsxAttributes",s.Class="__class",s.Function="__function",s.Computed="__computed",s.Resolving="__resolving__",s.ExportEquals="export=",s.Default="default",s.This="this",s.InstantiationExpression="__instantiationExpression",s.ImportAttributes="__importAttributes",s))(RT||{}),wy=(s=>(s[s.None=0]="None",s[s.TypeChecked=1]="TypeChecked",s[s.LexicalThis=2]="LexicalThis",s[s.CaptureThis=4]="CaptureThis",s[s.CaptureNewTarget=8]="CaptureNewTarget",s[s.SuperInstance=16]="SuperInstance",s[s.SuperStatic=32]="SuperStatic",s[s.ContextChecked=64]="ContextChecked",s[s.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",s[s.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",s[s.CaptureArguments=512]="CaptureArguments",s[s.EnumValuesComputed=1024]="EnumValuesComputed",s[s.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",s[s.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",s[s.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",s[s.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",s[s.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",s[s.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",s[s.AssignmentsMarked=131072]="AssignmentsMarked",s[s.ContainsConstructorReference=262144]="ContainsConstructorReference",s[s.ConstructorReference=536870912]="ConstructorReference",s[s.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",s[s.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",s[s.InCheckIdentifier=4194304]="InCheckIdentifier",s[s.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",s[s.LazyFlags=539358128]="LazyFlags",s))(wy||{}),jE=(s=>(s[s.Any=1]="Any",s[s.Unknown=2]="Unknown",s[s.String=4]="String",s[s.Number=8]="Number",s[s.Boolean=16]="Boolean",s[s.Enum=32]="Enum",s[s.BigInt=64]="BigInt",s[s.StringLiteral=128]="StringLiteral",s[s.NumberLiteral=256]="NumberLiteral",s[s.BooleanLiteral=512]="BooleanLiteral",s[s.EnumLiteral=1024]="EnumLiteral",s[s.BigIntLiteral=2048]="BigIntLiteral",s[s.ESSymbol=4096]="ESSymbol",s[s.UniqueESSymbol=8192]="UniqueESSymbol",s[s.Void=16384]="Void",s[s.Undefined=32768]="Undefined",s[s.Null=65536]="Null",s[s.Never=131072]="Never",s[s.TypeParameter=262144]="TypeParameter",s[s.Object=524288]="Object",s[s.Union=1048576]="Union",s[s.Intersection=2097152]="Intersection",s[s.Index=4194304]="Index",s[s.IndexedAccess=8388608]="IndexedAccess",s[s.Conditional=16777216]="Conditional",s[s.Substitution=33554432]="Substitution",s[s.NonPrimitive=67108864]="NonPrimitive",s[s.TemplateLiteral=134217728]="TemplateLiteral",s[s.StringMapping=268435456]="StringMapping",s[s.Reserved1=536870912]="Reserved1",s[s.Reserved2=1073741824]="Reserved2",s[s.AnyOrUnknown=3]="AnyOrUnknown",s[s.Nullable=98304]="Nullable",s[s.Literal=2944]="Literal",s[s.Unit=109472]="Unit",s[s.Freshable=2976]="Freshable",s[s.StringOrNumberLiteral=384]="StringOrNumberLiteral",s[s.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",s[s.DefinitelyFalsy=117632]="DefinitelyFalsy",s[s.PossiblyFalsy=117724]="PossiblyFalsy",s[s.Intrinsic=67359327]="Intrinsic",s[s.StringLike=402653316]="StringLike",s[s.NumberLike=296]="NumberLike",s[s.BigIntLike=2112]="BigIntLike",s[s.BooleanLike=528]="BooleanLike",s[s.EnumLike=1056]="EnumLike",s[s.ESSymbolLike=12288]="ESSymbolLike",s[s.VoidLike=49152]="VoidLike",s[s.Primitive=402784252]="Primitive",s[s.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",s[s.DisjointDomains=469892092]="DisjointDomains",s[s.UnionOrIntersection=3145728]="UnionOrIntersection",s[s.StructuredType=3670016]="StructuredType",s[s.TypeVariable=8650752]="TypeVariable",s[s.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",s[s.InstantiablePrimitive=406847488]="InstantiablePrimitive",s[s.Instantiable=465829888]="Instantiable",s[s.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",s[s.ObjectFlagsType=3899393]="ObjectFlagsType",s[s.Simplifiable=25165824]="Simplifiable",s[s.Singleton=67358815]="Singleton",s[s.Narrowable=536624127]="Narrowable",s[s.IncludesMask=473694207]="IncludesMask",s[s.IncludesMissingType=262144]="IncludesMissingType",s[s.IncludesNonWideningType=4194304]="IncludesNonWideningType",s[s.IncludesWildcard=8388608]="IncludesWildcard",s[s.IncludesEmptyObject=16777216]="IncludesEmptyObject",s[s.IncludesInstantiable=33554432]="IncludesInstantiable",s[s.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",s[s.IncludesError=1073741824]="IncludesError",s[s.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",s))(jE||{}),j_=(s=>(s[s.None=0]="None",s[s.Class=1]="Class",s[s.Interface=2]="Interface",s[s.Reference=4]="Reference",s[s.Tuple=8]="Tuple",s[s.Anonymous=16]="Anonymous",s[s.Mapped=32]="Mapped",s[s.Instantiated=64]="Instantiated",s[s.ObjectLiteral=128]="ObjectLiteral",s[s.EvolvingArray=256]="EvolvingArray",s[s.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",s[s.ReverseMapped=1024]="ReverseMapped",s[s.JsxAttributes=2048]="JsxAttributes",s[s.JSLiteral=4096]="JSLiteral",s[s.FreshLiteral=8192]="FreshLiteral",s[s.ArrayLiteral=16384]="ArrayLiteral",s[s.PrimitiveUnion=32768]="PrimitiveUnion",s[s.ContainsWideningType=65536]="ContainsWideningType",s[s.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",s[s.NonInferrableType=262144]="NonInferrableType",s[s.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",s[s.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",s[s.SingleSignatureType=134217728]="SingleSignatureType",s[s.ClassOrInterface=3]="ClassOrInterface",s[s.RequiresWidening=196608]="RequiresWidening",s[s.PropagatingFlags=458752]="PropagatingFlags",s[s.InstantiatedMapped=96]="InstantiatedMapped",s[s.ObjectTypeKindMask=1343]="ObjectTypeKindMask",s[s.ContainsSpread=2097152]="ContainsSpread",s[s.ObjectRestType=4194304]="ObjectRestType",s[s.InstantiationExpressionType=8388608]="InstantiationExpressionType",s[s.IsClassInstanceClone=16777216]="IsClassInstanceClone",s[s.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",s[s.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",s[s.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",s[s.IsGenericObjectType=4194304]="IsGenericObjectType",s[s.IsGenericIndexType=8388608]="IsGenericIndexType",s[s.IsGenericType=12582912]="IsGenericType",s[s.ContainsIntersections=16777216]="ContainsIntersections",s[s.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",s[s.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",s[s.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",s[s.IsNeverIntersection=33554432]="IsNeverIntersection",s[s.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",s))(j_||{}),NT=(s=>(s[s.Invariant=0]="Invariant",s[s.Covariant=1]="Covariant",s[s.Contravariant=2]="Contravariant",s[s.Bivariant=3]="Bivariant",s[s.Independent=4]="Independent",s[s.VarianceMask=7]="VarianceMask",s[s.Unmeasurable=8]="Unmeasurable",s[s.Unreliable=16]="Unreliable",s[s.AllowsStructuralFallback=24]="AllowsStructuralFallback",s))(NT||{}),tf=(s=>(s[s.Required=1]="Required",s[s.Optional=2]="Optional",s[s.Rest=4]="Rest",s[s.Variadic=8]="Variadic",s[s.Fixed=3]="Fixed",s[s.Variable=12]="Variable",s[s.NonRequired=14]="NonRequired",s[s.NonRest=11]="NonRest",s))(tf||{}),Ty=(s=>(s[s.None=0]="None",s[s.IncludeUndefined=1]="IncludeUndefined",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.Writing=4]="Writing",s[s.CacheSymbol=8]="CacheSymbol",s[s.AllowMissing=16]="AllowMissing",s[s.ExpressionPosition=32]="ExpressionPosition",s[s.ReportDeprecated=64]="ReportDeprecated",s[s.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",s[s.Contextual=256]="Contextual",s[s.Persistent=1]="Persistent",s))(Ty||{}),US=(s=>(s[s.None=0]="None",s[s.StringsOnly=1]="StringsOnly",s[s.NoIndexSignatures=2]="NoIndexSignatures",s[s.NoReducibleCheck=4]="NoReducibleCheck",s))(US||{}),$I=(s=>(s[s.Component=0]="Component",s[s.Function=1]="Function",s[s.Mixed=2]="Mixed",s))($I||{}),BA=(s=>(s[s.Call=0]="Call",s[s.Construct=1]="Construct",s))(BA||{}),$A=(s=>(s[s.None=0]="None",s[s.HasRestParameter=1]="HasRestParameter",s[s.HasLiteralTypes=2]="HasLiteralTypes",s[s.Abstract=4]="Abstract",s[s.IsInnerCallChain=8]="IsInnerCallChain",s[s.IsOuterCallChain=16]="IsOuterCallChain",s[s.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",s[s.IsNonInferrable=64]="IsNonInferrable",s[s.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",s[s.PropagatingFlags=167]="PropagatingFlags",s[s.CallChainFlags=24]="CallChainFlags",s))($A||{}),Qm=(s=>(s[s.String=0]="String",s[s.Number=1]="Number",s))(Qm||{}),zf=(s=>(s[s.Simple=0]="Simple",s[s.Array=1]="Array",s[s.Deferred=2]="Deferred",s[s.Function=3]="Function",s[s.Composite=4]="Composite",s[s.Merged=5]="Merged",s))(zf||{}),mb=(s=>(s[s.None=0]="None",s[s.NakedTypeVariable=1]="NakedTypeVariable",s[s.SpeculativeTuple=2]="SpeculativeTuple",s[s.SubstituteSource=4]="SubstituteSource",s[s.HomomorphicMappedType=8]="HomomorphicMappedType",s[s.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",s[s.MappedTypeConstraint=32]="MappedTypeConstraint",s[s.ContravariantConditional=64]="ContravariantConditional",s[s.ReturnType=128]="ReturnType",s[s.LiteralKeyof=256]="LiteralKeyof",s[s.NoConstraints=512]="NoConstraints",s[s.AlwaysStrict=1024]="AlwaysStrict",s[s.MaxValue=2048]="MaxValue",s[s.PriorityImpliesCombination=416]="PriorityImpliesCombination",s[s.Circularity=-1]="Circularity",s))(mb||{}),R_=(s=>(s[s.None=0]="None",s[s.NoDefault=1]="NoDefault",s[s.AnyDefault=2]="AnyDefault",s[s.SkippedGenericFunction=4]="SkippedGenericFunction",s))(R_||{}),Cb=(s=>(s[s.False=0]="False",s[s.Unknown=1]="Unknown",s[s.Maybe=3]="Maybe",s[s.True=-1]="True",s))(Cb||{}),Ry=(s=>(s[s.None=0]="None",s[s.ExportsProperty=1]="ExportsProperty",s[s.ModuleExports=2]="ModuleExports",s[s.PrototypeProperty=3]="PrototypeProperty",s[s.ThisProperty=4]="ThisProperty",s[s.Property=5]="Property",s[s.Prototype=6]="Prototype",s[s.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",s[s.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",s[s.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",s))(Ry||{}),KS=(s=>(s[s.Warning=0]="Warning",s[s.Error=1]="Error",s[s.Suggestion=2]="Suggestion",s[s.Message=3]="Message",s))(KS||{});function _b(s,c=!0){let g=KS[s.category];return c?g.toLowerCase():g}var z_=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s[s.Node10=2]="Node10",s[s.Node16=3]="Node16",s[s.NodeNext=99]="NodeNext",s[s.Bundler=100]="Bundler",s))(z_||{}),zE=(s=>(s[s.Legacy=1]="Legacy",s[s.Auto=2]="Auto",s[s.Force=3]="Force",s))(zE||{}),oB=(s=>(s[s.FixedPollingInterval=0]="FixedPollingInterval",s[s.PriorityPollingInterval=1]="PriorityPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s[s.UseFsEvents=4]="UseFsEvents",s[s.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",s))(oB||{}),DT=(s=>(s[s.UseFsEvents=0]="UseFsEvents",s[s.FixedPollingInterval=1]="FixedPollingInterval",s[s.DynamicPriorityPolling=2]="DynamicPriorityPolling",s[s.FixedChunkSizePolling=3]="FixedChunkSizePolling",s))(DT||{}),aB=(s=>(s[s.FixedInterval=0]="FixedInterval",s[s.PriorityInterval=1]="PriorityInterval",s[s.DynamicPriority=2]="DynamicPriority",s[s.FixedChunkSize=3]="FixedChunkSize",s))(aB||{}),jS=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ES2020=6]="ES2020",s[s.ES2022=7]="ES2022",s[s.ESNext=99]="ESNext",s[s.Node16=100]="Node16",s[s.Node18=101]="Node18",s[s.Node20=102]="Node20",s[s.NodeNext=199]="NodeNext",s[s.Preserve=200]="Preserve",s))(jS||{}),XR=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(XR||{}),zS=(s=>(s[s.Remove=0]="Remove",s[s.Preserve=1]="Preserve",s[s.Error=2]="Error",s))(zS||{}),qE=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(qE||{}),X2=(s=>(s[s.Unknown=0]="Unknown",s[s.JS=1]="JS",s[s.JSX=2]="JSX",s[s.TS=3]="TS",s[s.TSX=4]="TSX",s[s.External=5]="External",s[s.JSON=6]="JSON",s[s.Deferred=7]="Deferred",s))(X2||{}),kT=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ES2021=8]="ES2021",s[s.ES2022=9]="ES2022",s[s.ES2023=10]="ES2023",s[s.ES2024=11]="ES2024",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(kT||{}),pn=(s=>(s[s.Standard=0]="Standard",s[s.JSX=1]="JSX",s))(pn||{}),q1=(s=>(s[s.None=0]="None",s[s.Recursive=1]="Recursive",s))(q1||{}),J2=(s=>(s[s.EOF=-1]="EOF",s[s.nullCharacter=0]="nullCharacter",s[s.maxAsciiCharacter=127]="maxAsciiCharacter",s[s.lineFeed=10]="lineFeed",s[s.carriageReturn=13]="carriageReturn",s[s.lineSeparator=8232]="lineSeparator",s[s.paragraphSeparator=8233]="paragraphSeparator",s[s.nextLine=133]="nextLine",s[s.space=32]="space",s[s.nonBreakingSpace=160]="nonBreakingSpace",s[s.enQuad=8192]="enQuad",s[s.emQuad=8193]="emQuad",s[s.enSpace=8194]="enSpace",s[s.emSpace=8195]="emSpace",s[s.threePerEmSpace=8196]="threePerEmSpace",s[s.fourPerEmSpace=8197]="fourPerEmSpace",s[s.sixPerEmSpace=8198]="sixPerEmSpace",s[s.figureSpace=8199]="figureSpace",s[s.punctuationSpace=8200]="punctuationSpace",s[s.thinSpace=8201]="thinSpace",s[s.hairSpace=8202]="hairSpace",s[s.zeroWidthSpace=8203]="zeroWidthSpace",s[s.narrowNoBreakSpace=8239]="narrowNoBreakSpace",s[s.ideographicSpace=12288]="ideographicSpace",s[s.mathematicalSpace=8287]="mathematicalSpace",s[s.ogham=5760]="ogham",s[s.replacementCharacter=65533]="replacementCharacter",s[s._=95]="_",s[s.$=36]="$",s[s._0=48]="_0",s[s._1=49]="_1",s[s._2=50]="_2",s[s._3=51]="_3",s[s._4=52]="_4",s[s._5=53]="_5",s[s._6=54]="_6",s[s._7=55]="_7",s[s._8=56]="_8",s[s._9=57]="_9",s[s.a=97]="a",s[s.b=98]="b",s[s.c=99]="c",s[s.d=100]="d",s[s.e=101]="e",s[s.f=102]="f",s[s.g=103]="g",s[s.h=104]="h",s[s.i=105]="i",s[s.j=106]="j",s[s.k=107]="k",s[s.l=108]="l",s[s.m=109]="m",s[s.n=110]="n",s[s.o=111]="o",s[s.p=112]="p",s[s.q=113]="q",s[s.r=114]="r",s[s.s=115]="s",s[s.t=116]="t",s[s.u=117]="u",s[s.v=118]="v",s[s.w=119]="w",s[s.x=120]="x",s[s.y=121]="y",s[s.z=122]="z",s[s.A=65]="A",s[s.B=66]="B",s[s.C=67]="C",s[s.D=68]="D",s[s.E=69]="E",s[s.F=70]="F",s[s.G=71]="G",s[s.H=72]="H",s[s.I=73]="I",s[s.J=74]="J",s[s.K=75]="K",s[s.L=76]="L",s[s.M=77]="M",s[s.N=78]="N",s[s.O=79]="O",s[s.P=80]="P",s[s.Q=81]="Q",s[s.R=82]="R",s[s.S=83]="S",s[s.T=84]="T",s[s.U=85]="U",s[s.V=86]="V",s[s.W=87]="W",s[s.X=88]="X",s[s.Y=89]="Y",s[s.Z=90]="Z",s[s.ampersand=38]="ampersand",s[s.asterisk=42]="asterisk",s[s.at=64]="at",s[s.backslash=92]="backslash",s[s.backtick=96]="backtick",s[s.bar=124]="bar",s[s.caret=94]="caret",s[s.closeBrace=125]="closeBrace",s[s.closeBracket=93]="closeBracket",s[s.closeParen=41]="closeParen",s[s.colon=58]="colon",s[s.comma=44]="comma",s[s.dot=46]="dot",s[s.doubleQuote=34]="doubleQuote",s[s.equals=61]="equals",s[s.exclamation=33]="exclamation",s[s.greaterThan=62]="greaterThan",s[s.hash=35]="hash",s[s.lessThan=60]="lessThan",s[s.minus=45]="minus",s[s.openBrace=123]="openBrace",s[s.openBracket=91]="openBracket",s[s.openParen=40]="openParen",s[s.percent=37]="percent",s[s.plus=43]="plus",s[s.question=63]="question",s[s.semicolon=59]="semicolon",s[s.singleQuote=39]="singleQuote",s[s.slash=47]="slash",s[s.tilde=126]="tilde",s[s.backspace=8]="backspace",s[s.formFeed=12]="formFeed",s[s.byteOrderMark=65279]="byteOrderMark",s[s.tab=9]="tab",s[s.verticalTab=11]="verticalTab",s))(J2||{}),ey=(s=>(s.Ts=".ts",s.Tsx=".tsx",s.Dts=".d.ts",s.Js=".js",s.Jsx=".jsx",s.Json=".json",s.TsBuildInfo=".tsbuildinfo",s.Mjs=".mjs",s.Mts=".mts",s.Dmts=".d.mts",s.Cjs=".cjs",s.Cts=".cts",s.Dcts=".d.cts",s))(ey||{}),up=(s=>(s[s.None=0]="None",s[s.ContainsTypeScript=1]="ContainsTypeScript",s[s.ContainsJsx=2]="ContainsJsx",s[s.ContainsESNext=4]="ContainsESNext",s[s.ContainsES2022=8]="ContainsES2022",s[s.ContainsES2021=16]="ContainsES2021",s[s.ContainsES2020=32]="ContainsES2020",s[s.ContainsES2019=64]="ContainsES2019",s[s.ContainsES2018=128]="ContainsES2018",s[s.ContainsES2017=256]="ContainsES2017",s[s.ContainsES2016=512]="ContainsES2016",s[s.ContainsES2015=1024]="ContainsES2015",s[s.ContainsGenerator=2048]="ContainsGenerator",s[s.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",s[s.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",s[s.ContainsLexicalThis=16384]="ContainsLexicalThis",s[s.ContainsRestOrSpread=32768]="ContainsRestOrSpread",s[s.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",s[s.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",s[s.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",s[s.ContainsBindingPattern=524288]="ContainsBindingPattern",s[s.ContainsYield=1048576]="ContainsYield",s[s.ContainsAwait=2097152]="ContainsAwait",s[s.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",s[s.ContainsDynamicImport=8388608]="ContainsDynamicImport",s[s.ContainsClassFields=16777216]="ContainsClassFields",s[s.ContainsDecorators=33554432]="ContainsDecorators",s[s.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",s[s.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",s[s.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",s[s.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",s[s.HasComputedFlags=-2147483648]="HasComputedFlags",s[s.AssertTypeScript=1]="AssertTypeScript",s[s.AssertJsx=2]="AssertJsx",s[s.AssertESNext=4]="AssertESNext",s[s.AssertES2022=8]="AssertES2022",s[s.AssertES2021=16]="AssertES2021",s[s.AssertES2020=32]="AssertES2020",s[s.AssertES2019=64]="AssertES2019",s[s.AssertES2018=128]="AssertES2018",s[s.AssertES2017=256]="AssertES2017",s[s.AssertES2016=512]="AssertES2016",s[s.AssertES2015=1024]="AssertES2015",s[s.AssertGenerator=2048]="AssertGenerator",s[s.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",s[s.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",s[s.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",s[s.NodeExcludes=-2147483648]="NodeExcludes",s[s.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",s[s.FunctionExcludes=-1937940480]="FunctionExcludes",s[s.ConstructorExcludes=-1937948672]="ConstructorExcludes",s[s.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",s[s.PropertyExcludes=-2013249536]="PropertyExcludes",s[s.ClassExcludes=-2147344384]="ClassExcludes",s[s.ModuleExcludes=-1941676032]="ModuleExcludes",s[s.TypeExcludes=-2]="TypeExcludes",s[s.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",s[s.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",s[s.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",s[s.ParameterExcludes=-2147483648]="ParameterExcludes",s[s.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",s[s.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",s[s.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",s[s.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",s))(up||{}),Iw=(s=>(s[s.TabStop=0]="TabStop",s[s.Placeholder=1]="Placeholder",s[s.Choice=2]="Choice",s[s.Variable=3]="Variable",s))(Iw||{}),cB=(s=>(s[s.None=0]="None",s[s.SingleLine=1]="SingleLine",s[s.MultiLine=2]="MultiLine",s[s.AdviseOnEmitNode=4]="AdviseOnEmitNode",s[s.NoSubstitution=8]="NoSubstitution",s[s.CapturesThis=16]="CapturesThis",s[s.NoLeadingSourceMap=32]="NoLeadingSourceMap",s[s.NoTrailingSourceMap=64]="NoTrailingSourceMap",s[s.NoSourceMap=96]="NoSourceMap",s[s.NoNestedSourceMaps=128]="NoNestedSourceMaps",s[s.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",s[s.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",s[s.NoTokenSourceMaps=768]="NoTokenSourceMaps",s[s.NoLeadingComments=1024]="NoLeadingComments",s[s.NoTrailingComments=2048]="NoTrailingComments",s[s.NoComments=3072]="NoComments",s[s.NoNestedComments=4096]="NoNestedComments",s[s.HelperName=8192]="HelperName",s[s.ExportName=16384]="ExportName",s[s.LocalName=32768]="LocalName",s[s.InternalName=65536]="InternalName",s[s.Indented=131072]="Indented",s[s.NoIndentation=262144]="NoIndentation",s[s.AsyncFunctionBody=524288]="AsyncFunctionBody",s[s.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",s[s.CustomPrologue=2097152]="CustomPrologue",s[s.NoHoisting=4194304]="NoHoisting",s[s.Iterator=8388608]="Iterator",s[s.NoAsciiEscaping=16777216]="NoAsciiEscaping",s))(cB||{}),RD=(s=>(s[s.None=0]="None",s[s.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",s[s.NeverApplyImportHelper=2]="NeverApplyImportHelper",s[s.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",s[s.Immutable=8]="Immutable",s[s.IndirectCall=16]="IndirectCall",s[s.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",s))(RD||{}),Rd={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},JR=(s=>(s[s.Extends=1]="Extends",s[s.Assign=2]="Assign",s[s.Rest=4]="Rest",s[s.Decorate=8]="Decorate",s[s.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",s[s.Metadata=16]="Metadata",s[s.Param=32]="Param",s[s.Awaiter=64]="Awaiter",s[s.Generator=128]="Generator",s[s.Values=256]="Values",s[s.Read=512]="Read",s[s.SpreadArray=1024]="SpreadArray",s[s.Await=2048]="Await",s[s.AsyncGenerator=4096]="AsyncGenerator",s[s.AsyncDelegator=8192]="AsyncDelegator",s[s.AsyncValues=16384]="AsyncValues",s[s.ExportStar=32768]="ExportStar",s[s.ImportStar=65536]="ImportStar",s[s.ImportDefault=131072]="ImportDefault",s[s.MakeTemplateObject=262144]="MakeTemplateObject",s[s.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",s[s.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",s[s.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",s[s.SetFunctionName=4194304]="SetFunctionName",s[s.PropKey=8388608]="PropKey",s[s.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",s[s.RewriteRelativeImportExtension=33554432]="RewriteRelativeImportExtension",s[s.FirstEmitHelper=1]="FirstEmitHelper",s[s.LastEmitHelper=16777216]="LastEmitHelper",s[s.ForOfIncludes=256]="ForOfIncludes",s[s.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",s[s.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",s[s.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",s[s.SpreadIncludes=1536]="SpreadIncludes",s))(JR||{}),ty=(s=>(s[s.SourceFile=0]="SourceFile",s[s.Expression=1]="Expression",s[s.IdentifierName=2]="IdentifierName",s[s.MappedTypeParameter=3]="MappedTypeParameter",s[s.Unspecified=4]="Unspecified",s[s.EmbeddedStatement=5]="EmbeddedStatement",s[s.JsxAttributeValue=6]="JsxAttributeValue",s[s.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",s))(ty||{}),cF=(s=>(s[s.Parentheses=1]="Parentheses",s[s.TypeAssertions=2]="TypeAssertions",s[s.NonNullAssertions=4]="NonNullAssertions",s[s.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",s[s.ExpressionsWithTypeArguments=16]="ExpressionsWithTypeArguments",s[s.Satisfies=32]="Satisfies",s[s.Assertions=38]="Assertions",s[s.All=63]="All",s[s.ExcludeJSDocTypeAssertion=-2147483648]="ExcludeJSDocTypeAssertion",s))(cF||{}),$1=(s=>(s[s.None=0]="None",s[s.InParameters=1]="InParameters",s[s.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",s))($1||{}),$E=(s=>(s[s.None=0]="None",s[s.SingleLine=0]="SingleLine",s[s.MultiLine=1]="MultiLine",s[s.PreserveLines=2]="PreserveLines",s[s.LinesMask=3]="LinesMask",s[s.NotDelimited=0]="NotDelimited",s[s.BarDelimited=4]="BarDelimited",s[s.AmpersandDelimited=8]="AmpersandDelimited",s[s.CommaDelimited=16]="CommaDelimited",s[s.AsteriskDelimited=32]="AsteriskDelimited",s[s.DelimitersMask=60]="DelimitersMask",s[s.AllowTrailingComma=64]="AllowTrailingComma",s[s.Indented=128]="Indented",s[s.SpaceBetweenBraces=256]="SpaceBetweenBraces",s[s.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",s[s.Braces=1024]="Braces",s[s.Parenthesis=2048]="Parenthesis",s[s.AngleBrackets=4096]="AngleBrackets",s[s.SquareBrackets=8192]="SquareBrackets",s[s.BracketsMask=15360]="BracketsMask",s[s.OptionalIfUndefined=16384]="OptionalIfUndefined",s[s.OptionalIfEmpty=32768]="OptionalIfEmpty",s[s.Optional=49152]="Optional",s[s.PreferNewLine=65536]="PreferNewLine",s[s.NoTrailingNewLine=131072]="NoTrailingNewLine",s[s.NoInterveningComments=262144]="NoInterveningComments",s[s.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",s[s.SingleElement=1048576]="SingleElement",s[s.SpaceAfterList=2097152]="SpaceAfterList",s[s.Modifiers=2359808]="Modifiers",s[s.HeritageClauses=512]="HeritageClauses",s[s.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",s[s.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",s[s.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",s[s.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",s[s.UnionTypeConstituents=516]="UnionTypeConstituents",s[s.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",s[s.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",s[s.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",s[s.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",s[s.ImportAttributes=526226]="ImportAttributes",s[s.ImportClauseEntries=526226]="ImportClauseEntries",s[s.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",s[s.CommaListElements=528]="CommaListElements",s[s.CallExpressionArguments=2576]="CallExpressionArguments",s[s.NewExpressionArguments=18960]="NewExpressionArguments",s[s.TemplateExpressionSpans=262144]="TemplateExpressionSpans",s[s.SingleLineBlockStatements=768]="SingleLineBlockStatements",s[s.MultiLineBlockStatements=129]="MultiLineBlockStatements",s[s.VariableDeclarationList=528]="VariableDeclarationList",s[s.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",s[s.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",s[s.ClassHeritageClauses=0]="ClassHeritageClauses",s[s.ClassMembers=129]="ClassMembers",s[s.InterfaceMembers=129]="InterfaceMembers",s[s.EnumMembers=145]="EnumMembers",s[s.CaseBlockClauses=129]="CaseBlockClauses",s[s.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",s[s.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",s[s.JsxElementAttributes=262656]="JsxElementAttributes",s[s.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",s[s.HeritageClauseTypes=528]="HeritageClauseTypes",s[s.SourceFileStatements=131073]="SourceFileStatements",s[s.Decorators=2146305]="Decorators",s[s.TypeArguments=53776]="TypeArguments",s[s.TypeParameters=53776]="TypeParameters",s[s.Parameters=2576]="Parameters",s[s.IndexSignatureParameters=8848]="IndexSignatureParameters",s[s.JSDocComment=33]="JSDocComment",s))($E||{}),N_=(s=>(s[s.None=0]="None",s[s.TripleSlashXML=1]="TripleSlashXML",s[s.SingleLine=2]="SingleLine",s[s.MultiLine=4]="MultiLine",s[s.All=7]="All",s[s.Default=7]="Default",s))(N_||{}),e1={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},t1=(s=>(s[s.ParseAll=0]="ParseAll",s[s.ParseNone=1]="ParseNone",s[s.ParseForTypeErrors=2]="ParseForTypeErrors",s[s.ParseForTypeInfo=3]="ParseForTypeInfo",s))(t1||{});function ry(s){let c=5381;for(let g=0;g(s[s.Created=0]="Created",s[s.Changed=1]="Changed",s[s.Deleted=2]="Deleted",s))(yb||{}),r_=(s=>(s[s.High=2e3]="High",s[s.Medium=500]="Medium",s[s.Low=250]="Low",s))(r_||{}),Rh=new Date(0);function bb(s,c){return s.getModifiedTime(c)||Rh}function lB(s){return{250:s.Low,500:s.Medium,2e3:s.High}}var ND={Low:32,Medium:64,High:256},DD=lB(ND),q_=lB(ND);function kD(s){if(!s.getEnvironmentVariable)return;let c=h("TSC_WATCH_POLLINGINTERVAL",r_);DD=_("TSC_WATCH_POLLINGCHUNKSIZE",ND)||DD,q_=_("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",ND)||q_;function g(S,R){return s.getEnvironmentVariable(`${S}_${R.toUpperCase()}`)}function d(S){let R;return T("Low"),T("Medium"),T("High"),R;function T(W){let V=g(S,W);V&&((R||(R={}))[W]=Number(V))}}function h(S,R){let T=d(S);if(T)return W("Low"),W("Medium"),W("High"),!0;return!1;function W(V){R[V]=T[V]||R[V]}}function _(S,R){let T=d(S);return(c||T)&&lB(T?{...R,...T}:R)}}function UR(s,c,g,d,h){let _=g;for(let R=c.length;d&&R;S(),R--){let T=c[g];if(T){if(T.isClosed){c[g]=void 0;continue}}else continue;d--;let W=aE(T,bb(s,T.fileName));if(T.isClosed){c[g]=void 0;continue}h?.(T,g,W),c[g]&&(_{Te.isClosed=!0,ef(c,Te)}}}function R(_e){let Ee=[];return Ee.pollingInterval=_e,Ee.pollIndex=0,Ee.pollScheduled=!1,Ee}function T(_e,Ee){Ee.pollIndex=V(Ee,Ee.pollingInterval,Ee.pollIndex,DD[Ee.pollingInterval]),Ee.length?Ie(Ee.pollingInterval):(pe.assert(Ee.pollIndex===0),Ee.pollScheduled=!1)}function W(_e,Ee){V(g,250,0,g.length),T(_e,Ee),!Ee.pollScheduled&&g.length&&Ie(250)}function V(_e,Ee,Ne,Te){return UR(s,_e,Ne,Te,Ze);function Ze(We,Ue,$e){$e?(We.unchangedPolls=0,_e!==g&&(_e[Ue]=void 0,re(We))):We.unchangedPolls!==q_[Ee]?We.unchangedPolls++:_e===g?(We.unchangedPolls=1,_e[Ue]=void 0,ee(We,250)):Ee!==2e3&&(We.unchangedPolls++,_e[Ue]=void 0,ee(We,Ee===250?500:2e3))}}function M(_e){switch(_e){case 250:return d;case 500:return h;case 2e3:return _}}function ee(_e,Ee){M(Ee).push(_e),ge(Ee)}function re(_e){g.push(_e),ge(250)}function ge(_e){M(_e).pollScheduled||Ie(_e)}function Ie(_e){M(_e).pollScheduled=s.setTimeout(_e===250?W:T,_e,_e===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",M(_e))}}function fh(s,c,g,d){let h=dl(),_=d?new Map:void 0,S=new Map,R=_d(c);return T;function T(V,M,ee,re){let ge=R(V);h.add(ge,M).length===1&&_&&_.set(ge,g(V)||Rh);let Ie=Mo(ge)||".",_e=S.get(Ie)||W(Mo(V)||".",Ie,re);return _e.referenceCount++,{close:()=>{_e.referenceCount===1?(_e.close(),S.delete(Ie)):_e.referenceCount--,h.remove(ge,M)}}}function W(V,M,ee){let re=s(V,1,(ge,Ie)=>{if(!Xs(Ie))return;let _e=Xc(Ie,V),Ee=R(_e),Ne=_e&&h.get(Ee);if(Ne){let Te,Ze=1;if(_){let We=_.get(Ee);if(ge==="change"&&(Te=g(_e)||Rh,Te.getTime()===We.getTime()))return;Te||(Te=g(_e)||Rh),_.set(Ee,Te),We===Rh?Ze=0:Te===Rh&&(Ze=2)}for(let We of Ne)We(_e,Ze,Te)}},!1,500,ee);return re.referenceCount=0,S.set(M,re),re}}function rf(s){let c=[],g=0,d;return h;function h(R,T){let W={fileName:R,callback:T,mtime:bb(s,R)};return c.push(W),S(),{close:()=>{W.isClosed=!0,ef(c,W)}}}function _(){d=void 0,g=UR(s,c,g,DD[250]),S()}function S(){!c.length||d||(d=s.setTimeout(_,2e3,"pollQueue"))}}function yI(s,c,g,d,h){let S=_d(c)(g),R=s.get(S);return R?R.callbacks.push(d):s.set(S,{watcher:h((T,W,V)=>{var M;return(M=s.get(S))==null?void 0:M.callbacks.slice().forEach(ee=>ee(T,W,V))}),callbacks:[d]}),{close:()=>{let T=s.get(S);T&&(!Ql(T.callbacks,d)||T.callbacks.length||(s.delete(S),Cv(T)))}}}function aE(s,c){let g=s.mtime.getTime(),d=c.getTime();return g!==d?(s.mtime=c,s.callback(s.fileName,qS(g,d),c),!0):!1}function qS(s,c){return s===0?0:c===0?2:1}var Qp=["/node_modules/.","/.git","/.#"],uB=Dc;function Ih(s){return uB(s)}function xC(s){uB=s}function $_({watchDirectory:s,useCaseSensitiveFileNames:c,getCurrentDirectory:g,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:h,realpath:_,setTimeout:S,clearTimeout:R}){let T=new Map,W=dl(),V=new Map,M,ee=ld(!c),re=_d(c);return(Ye,Tt,ot,Qe)=>ot?ge(Ye,Qe,Tt):s(Ye,Tt,ot,Qe);function ge(Ye,Tt,ot,Qe){let mt=re(Ye),ht=T.get(mt);ht?ht.refCount++:(ht={watcher:s(Ye,Rt=>{var Lt;Ue(Rt,Tt)||(Tt?.synchronousWatchDirectory?((Lt=T.get(mt))!=null&&Lt.targetWatcher||Ie(Ye,mt,Rt),We(Ye,mt,Tt)):_e(Ye,mt,Rt,Tt))},!1,Tt),refCount:1,childWatches:E,targetWatcher:void 0,links:void 0},T.set(mt,ht),We(Ye,mt,Tt)),Qe&&(ht.links??(ht.links=new Set)).add(Qe);let _t=ot&&{dirName:Ye,callback:ot};return _t&&W.add(mt,_t),{dirName:Ye,close:()=>{var Rt;let Lt=pe.checkDefined(T.get(mt));_t&&W.remove(mt,_t),Qe&&((Rt=Lt.links)==null||Rt.delete(Qe)),Lt.refCount--,!Lt.refCount&&(T.delete(mt),Lt.links=void 0,Cv(Lt),Ze(Lt),Lt.childWatches.forEach(dv))}}}function Ie(Ye,Tt,ot,Qe){var mt,ht;let _t,Rt;Xs(ot)?_t=ot:Rt=ot,W.forEach((Lt,Ke)=>{if(!(Rt&&Rt.get(Ke)===!0)&&(Ke===Tt||Ac(Tt,Ke)&&Tt[Ke.length]===ag))if(Rt)if(Qe){let Pt=Rt.get(Ke);Pt?Pt.push(...Qe):Rt.set(Ke,Qe.slice())}else Rt.set(Ke,!0);else Lt.forEach(({callback:Pt})=>Pt(_t))}),(ht=(mt=T.get(Tt))==null?void 0:mt.links)==null||ht.forEach(Lt=>{let Ke=Pt=>Ro(Lt,mp(Ye,Pt,re));Rt?Ie(Lt,re(Lt),Rt,Qe?.map(Ke)):Ie(Lt,re(Lt),Ke(_t))})}function _e(Ye,Tt,ot,Qe){let mt=T.get(Tt);if(mt&&h(Ye,1)){Ee(Ye,Tt,ot,Qe);return}Ie(Ye,Tt,ot),Ze(mt),Te(mt)}function Ee(Ye,Tt,ot,Qe){let mt=V.get(Tt);mt?mt.fileNames.push(ot):V.set(Tt,{dirName:Ye,options:Qe,fileNames:[ot]}),M&&(R(M),M=void 0),M=S(Ne,1e3,"timerToUpdateChildWatches")}function Ne(){var Ye;M=void 0,Ih(`sysLog:: onTimerToUpdateChildWatches:: ${V.size}`);let Tt=Fg(),ot=new Map;for(;!M&&V.size;){let mt=V.entries().next();pe.assert(!mt.done);let{value:[ht,{dirName:_t,options:Rt,fileNames:Lt}]}=mt;V.delete(ht);let Ke=We(_t,ht,Rt);(Ye=T.get(ht))!=null&&Ye.targetWatcher||Ie(_t,ht,ot,Ke?void 0:Lt)}Ih(`sysLog:: invokingWatchers:: Elapsed:: ${Fg()-Tt}ms:: ${V.size}`),W.forEach((mt,ht)=>{let _t=ot.get(ht);_t&&mt.forEach(({callback:Rt,dirName:Lt})=>{Ki(_t)?_t.forEach(Rt):Rt(Lt)})});let Qe=Fg()-Tt;Ih(`sysLog:: Elapsed:: ${Qe}ms:: onTimerToUpdateChildWatches:: ${V.size} ${M}`)}function Te(Ye){if(!Ye)return;let Tt=Ye.childWatches;Ye.childWatches=E;for(let ot of Tt)ot.close(),Te(T.get(re(ot.dirName)))}function Ze(Ye){Ye?.targetWatcher&&(Ye.targetWatcher.close(),Ye.targetWatcher=void 0)}function We(Ye,Tt,ot){let Qe=T.get(Tt);if(!Qe)return!1;let mt=iu(_(Ye)),ht,_t;return ee(mt,Ye)===0?ht=q0(h(Ye,1)?Xt(d(Ye),Ke=>{let Pt=Xc(Ke,Ye);return!Ue(Pt,ot)&&ee(Pt,iu(_(Pt)))===0?Pt:void 0}):E,Qe.childWatches,(Ke,Pt)=>ee(Ke,Pt.dirName),Rt,dv,Lt):Qe.targetWatcher&&ee(mt,Qe.targetWatcher.dirName)===0?(ht=!1,pe.assert(Qe.childWatches===E)):(Ze(Qe),Qe.targetWatcher=ge(mt,ot,void 0,Ye),Qe.childWatches.forEach(dv),ht=!0),Qe.childWatches=_t||E,ht;function Rt(Ke){let Pt=ge(Ke,ot);Lt(Pt)}function Lt(Ke){(_t||(_t=[])).push(Ke)}}function Ue(Ye,Tt){return jt(Qp,ot=>$e(Ye,ot))||GT(Ye,Tt,c,g)}function $e(Ye,Tt){return Ye.includes(Tt)?!0:c?!1:re(Ye).includes(Tt)}}var r1=(s=>(s[s.File=0]="File",s[s.Directory=1]="Directory",s))(r1||{});function gB(s){return(c,g,d)=>s(g===1?"change":"rename","",d)}function hw(s,c,g){return(d,h,_)=>{d==="rename"?(_||(_=g(s)||Rh),c(s,_!==Rh?0:2,_)):c(s,1,_)}}function GT(s,c,g,d){return(c?.excludeDirectories||c?.excludeFiles)&&(v9e(s,c?.excludeFiles,g,d())||v9e(s,c?.excludeDirectories,g,d()))}function b0(s,c,g,d,h){return(_,S)=>{if(_==="rename"){let R=S?iu(Ro(s,S)):s;(!S||!GT(R,g,d,h))&&c(R)}}}function ia({pollingWatchFileWorker:s,getModifiedTime:c,setTimeout:g,clearTimeout:d,fsWatchWorker:h,fileSystemEntryExists:_,useCaseSensitiveFileNames:S,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:T,getAccessibleSortedChildDirectories:W,realpath:V,tscWatchFile:M,useNonPollingWatchers:ee,tscWatchDirectory:re,inodeWatching:ge,fsWatchWithTimestamp:Ie,sysLog:_e}){let Ee=new Map,Ne=new Map,Te=new Map,Ze,We,Ue,$e,Ye=!1;return{watchFile:Tt,watchDirectory:_t};function Tt(nt,Dt,tr,ur){ur=mt(ur,ee);let Gr=pe.checkDefined(ur.watchFile);switch(Gr){case 0:return Ke(nt,Dt,250,void 0);case 1:return Ke(nt,Dt,tr,void 0);case 2:return ot()(nt,Dt,tr,void 0);case 3:return Qe()(nt,Dt,void 0,void 0);case 4:return Pt(nt,0,hw(nt,Dt,c),!1,tr,QEe(ur));case 5:return Ue||(Ue=fh(Pt,S,c,Ie)),Ue(nt,Dt,tr,QEe(ur));default:pe.assertNever(Gr)}}function ot(){return Ze||(Ze=lc({getModifiedTime:c,setTimeout:g}))}function Qe(){return We||(We=rf({getModifiedTime:c,setTimeout:g}))}function mt(nt,Dt){if(nt&&nt.watchFile!==void 0)return nt;switch(M){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return ht(4,1,nt);case"UseFsEventsWithFallbackDynamicPolling":return ht(4,2,nt);case"UseFsEventsOnParentDirectory":Dt=!0;default:return Dt?ht(5,1,nt):{watchFile:4}}}function ht(nt,Dt,tr){let ur=tr?.fallbackPolling;return{watchFile:nt,fallbackPolling:ur===void 0?Dt:ur}}function _t(nt,Dt,tr,ur){return T?Pt(nt,1,b0(nt,Dt,ur,S,R),tr,500,QEe(ur)):($e||($e=$_({useCaseSensitiveFileNames:S,getCurrentDirectory:R,fileSystemEntryExists:_,getAccessibleSortedChildDirectories:W,watchDirectory:Rt,realpath:V,setTimeout:g,clearTimeout:d})),$e(nt,Dt,tr,ur))}function Rt(nt,Dt,tr,ur){pe.assert(!tr);let Gr=Lt(ur),dt=pe.checkDefined(Gr.watchDirectory);switch(dt){case 1:return Ke(nt,()=>Dt(nt),500,void 0);case 2:return ot()(nt,()=>Dt(nt),500,void 0);case 3:return Qe()(nt,()=>Dt(nt),void 0,void 0);case 0:return Pt(nt,1,b0(nt,Dt,ur,S,R),tr,500,QEe(Gr));default:pe.assertNever(dt)}}function Lt(nt){if(nt&&nt.watchDirectory!==void 0)return nt;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let Dt=nt?.fallbackPolling;return{watchDirectory:0,fallbackPolling:Dt!==void 0?Dt:void 0}}}function Ke(nt,Dt,tr,ur){return yI(Ee,S,nt,Dt,Gr=>s(nt,Gr,tr,ur))}function Pt(nt,Dt,tr,ur,Gr,dt){return yI(ur?Te:Ne,S,nt,tr,pr=>_r(nt,Dt,pr,ur,Gr,dt))}function _r(nt,Dt,tr,ur,Gr,dt){let pr,st;ge&&(pr=nt.substring(nt.lastIndexOf(ag)),st=pr.slice(ag.length));let ir=_(nt,Dt)?Ht():jn();return{close:()=>{ir&&(ir.close(),ir=void 0)}};function zt(Zi){ir&&(_e(`sysLog:: ${nt}:: Changing watcher to ${Zi===Ht?"Present":"Missing"}FileSystemEntryWatcher`),ir.close(),ir=Zi())}function Ht(){if(Ye)return _e(`sysLog:: ${nt}:: Defaulting to watchFile`),mn();try{let Zi=(Dt===1||!Ie?h:Gt)(nt,ur,ge?Br:tr);return Zi.on("error",()=>{tr("rename",""),zt(jn)}),Zi}catch(Zi){return Ye||(Ye=Zi.code==="ENOSPC"),_e(`sysLog:: ${nt}:: Changing to watchFile`),mn()}}function Br(Zi,Ns){let An;if(Ns&&di(Ns,"~")&&(An=Ns,Ns=Ns.slice(0,Ns.length-1)),Zi==="rename"&&(!Ns||Ns===st||di(Ns,pr))){let si=c(nt)||Rh;An&&tr(Zi,An,si),tr(Zi,Ns,si),ge?zt(si===Rh?jn:Ht):si===Rh&&zt(jn)}else An&&tr(Zi,An),tr(Zi,Ns)}function mn(){return Tt(nt,gB(tr),Gr,dt)}function jn(){return Tt(nt,(Zi,Ns,An)=>{Ns===0&&(An||(An=c(nt)||Rh),An!==Rh&&(tr("rename","",An),zt(Ht)))},Gr,dt)}}function Gt(nt,Dt,tr){let ur=c(nt)||Rh;return h(nt,Dt,(Gr,dt,pr)=>{Gr==="change"&&(pr||(pr=c(nt)||Rh),pr.getTime()===ur.getTime())||(ur=pr||c(nt)||Rh,tr(Gr,dt,ur))})}}function e2(s){let c=s.writeFile;s.writeFile=(g,d,h)=>Qye(g,d,!!h,(_,S,R)=>c.call(s,_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_))}var yd=(()=>{let s="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(?:internal[\\/]|[\w\s]+(?:\.js)?$)/,h=wt("fs"),_=wt("path"),S=wt("os"),R;try{R=wt("crypto")}catch{R=void 0}let T,W="./profile.cpuprofile",V=process.platform==="darwin",M=process.platform==="linux"||V,ee={throwIfNoEntry:!1},re=S.platform(),ge=ot(),Ie=h.realpathSync.native?process.platform==="win32"?Dt:h.realpathSync.native:h.realpathSync,_e=__filename.endsWith("sys.js")?_.join(_.dirname(__dirname),"__fake__.js"):__filename,Ee=process.platform==="win32"||V,Ne=FA(()=>process.cwd()),{watchFile:Te,watchDirectory:Ze}=ia({pollingWatchFileWorker:mt,getModifiedTime:ur,setTimeout,clearTimeout,fsWatchWorker:ht,useCaseSensitiveFileNames:ge,getCurrentDirectory:Ne,fileSystemEntryExists:Pt,fsSupportsRecursiveFsWatch:Ee,getAccessibleSortedChildDirectories:st=>Lt(st).directories,realpath:tr,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:M,fsWatchWithTimestamp:V,sysLog:Ih}),We={args:process.argv.slice(2),newLine:S.EOL,useCaseSensitiveFileNames:ge,write(st){process.stdout.write(st)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:_t,writeFile:Rt,watchFile:Te,watchDirectory:Ze,preferNonRecursiveWatch:!Ee,resolvePath:st=>_.resolve(st),fileExists:_r,directoryExists:Gt,getAccessibleFileSystemEntries:Lt,createDirectory(st){if(!We.directoryExists(st))try{h.mkdirSync(st)}catch(ir){if(ir.code!=="EEXIST")throw ir}},getExecutingFilePath(){return _e},getCurrentDirectory:Ne,getDirectories:nt,getEnvironmentVariable(st){return process.env[st]||""},readDirectory:Ke,getModifiedTime:ur,setModifiedTime:Gr,deleteFile:dt,createHash:R?pr:ry,createSHA256Hash:R?pr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(st){let ir=Ue(st);return ir?.isFile()?ir.size:0},exit(st){Tt(()=>process.exit(st))},enableCPUProfiler:$e,disableCPUProfiler:Tt,cpuProfilingEnabled:()=>!!T||k(process.execArgv,"--cpu-prof")||k(process.execArgv,"--prof"),realpath:tr,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||jt(process.execArgv,st=>/^--(?:inspect|debug)(?:-brk)?(?:=\d+)?$/i.test(st))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{wt("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")},setBlocking:()=>{var st;let ir=(st=process.stdout)==null?void 0:st._handle;ir&&ir.setBlocking&&ir.setBlocking(!0)},base64decode:st=>Buffer.from(st,"base64").toString("utf8"),base64encode:st=>Buffer.from(st).toString("base64"),require:(st,ir)=>{try{let zt=KWt(ir,st,We);return{module:wt(zt),modulePath:zt,error:void 0}}catch(zt){return{module:void 0,modulePath:void 0,error:zt}}}};return We;function Ue(st){try{return h.statSync(st,ee)}catch{return}}function $e(st,ir){if(T)return ir(),!1;let zt=wt("inspector");if(!zt||!zt.Session)return ir(),!1;let Ht=new zt.Session;return Ht.connect(),Ht.post("Profiler.enable",()=>{Ht.post("Profiler.start",()=>{T=Ht,W=st,ir()})}),!0}function Ye(st){let ir=0,zt=new Map,Ht=Dp(_.dirname(_e)),Br=`file://${Wf(Ht)===1?"":"/"}${Ht}`;for(let mn of st.nodes)if(mn.callFrame.url){let jn=Dp(mn.callFrame.url);Jh(Br,jn,ge)?mn.callFrame.url=Of(Br,jn,Br,_d(ge),!0):d.test(jn)||(mn.callFrame.url=(zt.has(jn)?zt:zt.set(jn,`external${ir}.js`)).get(jn),ir++)}return st}function Tt(st){if(T&&T!=="stopping"){let ir=T;return T.post("Profiler.stop",(zt,{profile:Ht})=>{var Br;if(!zt){(Br=Ue(W))!=null&&Br.isDirectory()&&(W=_.join(W,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`));try{h.mkdirSync(_.dirname(W),{recursive:!0})}catch{}h.writeFileSync(W,JSON.stringify(Ye(Ht)))}T=void 0,ir.disconnect(),st()}),T="stopping",!0}else return st(),!1}function ot(){return typeof process.versions.pnp<"u"?!0:re==="win32"||re==="win64"?!1:!_r(Qe(__filename))}function Qe(st){return st.replace(/\w/g,ir=>{let zt=ir.toUpperCase();return ir===zt?ir.toLowerCase():zt})}function mt(st,ir,zt){h.watchFile(st,{persistent:!0,interval:zt},Br);let Ht;return{close:()=>h.unwatchFile(st,Br)};function Br(mn,jn){let Zi=+jn.mtime==0||Ht===2;if(+mn.mtime==0){if(Zi)return;Ht=2}else if(Zi)Ht=0;else{if(+mn.mtime==+jn.mtime)return;Ht=1}ir(st,Ht,mn.mtime)}}function ht(st,ir,zt){return h.watch(st,Ee?{persistent:!0,recursive:!!ir}:{persistent:!0},zt)}function _t(st,ir){let zt;try{zt=h.readFileSync(st)}catch{return}let Ht=zt.length;if(Ht>=2&&zt[0]===254&&zt[1]===255){Ht&=-2;for(let Br=0;Br=2&&zt[0]===255&&zt[1]===254?zt.toString("utf16le",2):Ht>=3&&zt[0]===239&&zt[1]===187&&zt[2]===191?zt.toString("utf8",3):zt.toString("utf8")}function Rt(st,ir,zt){zt&&(ir=s+ir);let Ht;try{Ht=h.openSync(st,"w"),h.writeSync(Ht,ir,void 0,"utf8")}finally{Ht!==void 0&&h.closeSync(Ht)}}function Lt(st){try{let ir=h.readdirSync(st||".",{withFileTypes:!0}),zt=[],Ht=[];for(let Br of ir){let mn=typeof Br=="string"?Br:Br.name;if(mn==="."||mn==="..")continue;let jn;if(typeof Br=="string"||Br.isSymbolicLink()){let Zi=Ro(st,mn);if(jn=Ue(Zi),!jn)continue}else jn=Br;jn.isFile()?zt.push(mn):jn.isDirectory()&&Ht.push(mn)}return zt.sort(),Ht.sort(),{files:zt,directories:Ht}}catch{return wbe}}function Ke(st,ir,zt,Ht,Br){return Sbe(st,ir,zt,Ht,ge,process.cwd(),Br,Lt,tr)}function Pt(st,ir){let zt=Ue(st);if(!zt)return!1;switch(ir){case 0:return zt.isFile();case 1:return zt.isDirectory();default:return!1}}function _r(st){return Pt(st,0)}function Gt(st){return Pt(st,1)}function nt(st){return Lt(st).directories.slice()}function Dt(st){return st.length<260?h.realpathSync.native(st):h.realpathSync(st)}function tr(st){try{return Ie(st)}catch{return st}}function ur(st){var ir;return(ir=Ue(st))==null?void 0:ir.mtime}function Gr(st,ir){try{h.utimesSync(st,ir,ir)}catch{return}}function dt(st){try{return h.unlinkSync(st)}catch{return}}function pr(st){let ir=R.createHash("sha256");return ir.update(st),ir.digest("hex")}}let g;return Mm()&&(g=c()),g&&e2(g),g})();function bI(s){yd=s}yd&&yd.getEnvironmentVariable&&(kD(yd),pe.setAssertionLevel(/^development$/i.test(yd.getEnvironmentVariable("NODE_ENV"))?1:0)),yd&&yd.debugMode&&(pe.isDebugging=!0);var ag="/",Eb="\\",n1="://",U2=/\\/g;function e0(s){return s===47||s===92}function n_(s){return eh(s)<0}function Xp(s){return eh(s)>0}function cE(s){let c=eh(s);return c>0&&c===s.length}function lE(s){return eh(s)!==0}function Ip(s){return/^\.\.?(?:$|[\\/])/.test(s)}function Xh(s){return!lE(s)&&!Ip(s)}function E0(s){return gp(s).includes(".")}function aA(s,c){return s.length>c.length&&di(s,c)}function fu(s,c){for(let g of c)if(aA(s,g))return!0;return!1}function Jp(s){return s.length>0&&e0(s.charCodeAt(s.length-1))}function dC(s){return s>=97&&s<=122||s>=65&&s<=90}function uE(s,c){let g=s.charCodeAt(c);if(g===58)return c+1;if(g===37&&s.charCodeAt(c+1)===51){let d=s.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function eh(s){if(!s)return 0;let c=s.charCodeAt(0);if(c===47||c===92){if(s.charCodeAt(1)!==c)return 1;let d=s.indexOf(c===47?ag:Eb,2);return d<0?s.length:d+1}if(dC(c)&&s.charCodeAt(1)===58){let d=s.charCodeAt(2);if(d===47||d===92)return 3;if(s.length===2)return 2}let g=s.indexOf(n1);if(g!==-1){let d=g+n1.length,h=s.indexOf(ag,d);if(h!==-1){let _=s.slice(0,g),S=s.slice(d,h);if(_==="file"&&(S===""||S==="localhost")&&dC(s.charCodeAt(h+1))){let R=uE(s,h+2);if(R!==-1){if(s.charCodeAt(R)===47)return~(R+1);if(R===s.length)return~R}}return~(h+1)}return~s.length}return 0}function Wf(s){let c=eh(s);return c<0?~c:c}function Mo(s){s=Dp(s);let c=Wf(s);return c===s.length?s:(s=ny(s),s.slice(0,Math.max(c,s.lastIndexOf(ag))))}function gp(s,c,g){if(s=Dp(s),Wf(s)===s.length)return"";s=ny(s);let h=s.slice(Math.max(Wf(s),s.lastIndexOf(ag)+1)),_=c!==void 0&&g!==void 0?gE(h,c,g):void 0;return _?h.slice(0,h.length-_.length):h}function lF(s,c,g){if(Ac(c,".")||(c="."+c),s.length>=c.length&&s.charCodeAt(s.length-c.length)===46){let d=s.slice(s.length-c.length);if(g(d,c))return d}}function uF(s,c,g){if(typeof c=="string")return lF(s,c,g)||"";for(let d of c){let h=lF(s,d,g);if(h)return h}return""}function gE(s,c,g){if(c)return uF(ny(s),c,g?Mp:MA);let d=gp(s),h=d.lastIndexOf(".");return h>=0?d.substring(h):""}function FT(s,c){let g=s.substring(0,c),d=s.substring(c).split(ag);return d.length&&!li(d)&&d.pop(),[g,...d]}function Np(s,c=""){return s=Ro(c,s),FT(s,Wf(s))}function Dm(s,c){return s.length===0?"":(s[0]&&hp(s[0]))+s.slice(1,c).join(ag)}function Dp(s){return s.includes("\\")?s.replace(U2,ag):s}function t2(s){if(!jt(s))return[];let c=[s[0]];for(let g=1;g1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function Ro(s,...c){s&&(s=Dp(s));for(let g of c)g&&(g=Dp(g),!s||Wf(g)!==0?s=g:s=hp(s)+g);return s}function AE(s,...c){return iu(jt(c)?Ro(s,...c):Dp(s))}function AB(s,c){return t2(Np(s,c))}function Xc(s,c){let g=Wf(s);g===0&&c?(s=Ro(c,s),g=Wf(s)):s=Dp(s);let d=dE(s);if(d!==void 0)return d.length>g?ny(d):d;let h=s.length,_=s.substring(0,g),S,R=g,T=R,W=R,V=g!==0;for(;RT&&(S??(S=s.substring(0,T-1)),T=R);let ee=s.indexOf(ag,R+1);ee===-1&&(ee=h);let re=ee-T;if(re===1&&s.charCodeAt(R)===46)S??(S=s.substring(0,W));else if(re===2&&s.charCodeAt(R)===46&&s.charCodeAt(R+1)===46)if(!V)S!==void 0?S+=S.length===g?"..":"/..":W=R+2;else if(S===void 0)W-2>=0?S=s.substring(0,Math.max(g,s.lastIndexOf(ag,W-2))):S=s.substring(0,W);else{let ge=S.lastIndexOf(ag);ge!==-1?S=S.substring(0,Math.max(g,ge)):S=_,S.length===g&&(V=g!==0)}else S!==void 0?(S.length!==g&&(S+=ag),V=!0,S+=s.substring(T,ee)):(V=!0,W=ee);R=ee+1}return S??(h>g?ny(s):s)}function iu(s){s=Dp(s);let c=dE(s);return c!==void 0?c:(c=Xc(s,""),c&&Jp(s)?hp(c):c)}function dE(s){if(!dB.test(s))return s;let c=s.replace(/\/\.\//g,"/");if(c.startsWith("./")&&(c=c.slice(2)),c!==s&&(s=c,!dB.test(s)))return s}function yL(s){return s.length===0?"":s.slice(1).join(ag)}function KR(s,c){return yL(AB(s,c))}function Ou(s,c,g){let d=Xp(s)?iu(s):Xc(s,c);return g(d)}function ny(s){return Jp(s)?s.substr(0,s.length-1):s}function hp(s){return Jp(s)?s:s+ag}function Am(s){return!lE(s)&&!Ip(s)?"./"+s:s}function K2(s,c,g,d){let h=g!==void 0&&d!==void 0?gE(s,g,d):gE(s);return h?s.slice(0,s.length-h.length)+(Ac(c,".")?c:"."+c):s}function i_(s,c){let g=g9e(s);return g?s.slice(0,s.length-g.length)+(Ac(c,".")?c:"."+c):K2(s,c)}var dB=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function ZT(s,c,g){if(s===c)return 0;if(s===void 0)return-1;if(c===void 0)return 1;let d=s.substring(0,Wf(s)),h=c.substring(0,Wf(c)),_=Fs(d,h);if(_!==0)return _;let S=s.substring(d.length),R=c.substring(h.length);if(!dB.test(S)&&!dB.test(R))return g(S,R);let T=t2(Np(s)),W=t2(Np(c)),V=Math.min(T.length,W.length);for(let M=1;M0==Wf(c)>0,"Paths must either both be absolute or both be relative");let _=Sb(s,c,(typeof g=="boolean"?g:!1)?Mp:MA,typeof g=="function"?g:Fl);return Dm(_)}function r2(s,c,g){return Xp(s)?Of(c,s,c,g,!1):s}function i1(s,c,g){return Am(mp(Mo(s),c,g))}function Of(s,c,g,d,h){let _=Sb(AE(g,s),AE(g,c),MA,d),S=_[0];if(h&&Xp(S)){let R=S.charAt(0)===ag?"file://":"file:///";_[0]=R+S}return Dm(_)}function pE(s,c){for(;;){let g=c(s);if(g!==void 0)return g;let d=Mo(s);if(d===s)return;s=d}}function Vd(s){return di(s,"/node_modules")}function j(s,c,g,d,h,_,S){return{code:s,category:c,key:g,message:d,reportsUnnecessary:h,elidedInCompatabilityPyramid:_,reportsDeprecated:S}}var Z={Unterminated_string_literal:j(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:j(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:j(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:j(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:j(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:j(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:j(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:j(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:j(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:j(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:j(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:j(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:j(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:j(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:j(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:j(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:j(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:j(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:j(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:j(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:j(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:j(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:j(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:j(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:j(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:j(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:j(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:j(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:j(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:j(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:j(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:j(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:j(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:j(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:j(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:j(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:j(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:j(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:j(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:j(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:j(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:j(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:j(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:j(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:j(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:j(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:j(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:j(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:j(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:j(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:j(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:j(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:j(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:j(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:j(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:j(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:j(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:j(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:j(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:j(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:j(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:j(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:j(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:j(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:j(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:j(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:j(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:j(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:j(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:j(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:j(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:j(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:j(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:j(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:j(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:j(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:j(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:j(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:j(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:j(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:j(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:j(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:j(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:j(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:j(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:j(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:j(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:j(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:j(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:j(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:j(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:j(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:j(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:j(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:j(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:j(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:j(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:j(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:j(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:j(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:j(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:j(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:j(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:j(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:j(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:j(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:j(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:j(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:j(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:j(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:j(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:j(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:j(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:j(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:j(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:j(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:j(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:j(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:j(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:j(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:j(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:j(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:j(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:j(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:j(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:j(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:j(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:j(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:j(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:j(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:j(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:j(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:j(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:j(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:j(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:j(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:j(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:j(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:j(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:j(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:j(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:j(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:j(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:j(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:j(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:j(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:j(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:j(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:j(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:j(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:j(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:j(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:j(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:j(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:j(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:j(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:j(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:j(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:j(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:j(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:j(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:j(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:j(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:j(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:j(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:j(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:j(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:j(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:j(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:j(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:j(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:j(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:j(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:j(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:j(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:j(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:j(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:j(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:j(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:j(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:j(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:j(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:j(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:j(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:j(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:j(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:j(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:j(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:j(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:j(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:j(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:j(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:j(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:j(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:j(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:j(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:j(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:j(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:j(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:j(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:j(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:j(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:j(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:j(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:j(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:j(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:j(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:j(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:j(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:j(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:j(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:j(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:j(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:j(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:j(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:j(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:j(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:j(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:j(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:j(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:j(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:j(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:j(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:j(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:j(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:j(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:j(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:j(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:j(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:j(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:j(1286,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_1286","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:j(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:j(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:j(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:j(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:j(1293,1,"ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ECMAScript module syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled:j(1294,1,"This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled_1294","This syntax is not allowed when 'erasableSyntaxOnly' is enabled."),ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript:j(1295,1,"ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjus_1295","ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'. Adjust the 'type' field in the nearest 'package.json' to make this file an ECMAScript module, or adjust your 'verbatimModuleSyntax', 'module', and 'moduleResolution' settings in TypeScript."),with_statements_are_not_allowed_in_an_async_function_block:j(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:j(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:j(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:j(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:j(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:j(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:j(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:j(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:j(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:j(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:j(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext:j(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', 'node18', 'node20', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve:j(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'node18', 'node20', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:j(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:j(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:j(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:j(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:j(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:j(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:j(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:j(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:j(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:j(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:j(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:j(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:j(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:j(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:j(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:j(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext:j(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', or 'nodenext'."),A_label_is_not_allowed_here:j(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:j(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:j(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:j(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:j(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:j(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:j(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:j(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:j(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:j(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:j(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:j(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:j(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:j(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:j(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:j(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:j(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:j(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:j(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:j(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:j(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:j(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:j(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:j(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:j(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:j(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:j(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:j(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:j(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:j(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:j(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:j(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:j(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:j(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:j(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:j(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:j(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:j(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:j(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:j(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:j(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:j(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:j(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:j(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:j(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:j(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:j(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:j(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:j(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:j(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:j(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:j(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:j(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:j(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:j(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:j(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:j(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:j(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:j(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:j(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:j(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:j(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:j(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:j(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:j(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:j(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:j(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:j(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:j(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:j(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:j(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:j(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:j(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:j(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:j(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:j(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:j(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:j(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:j(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:j(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:j(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:j(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:j(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:j(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:j(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:j(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:j(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:j(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:j(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:j(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:j(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:j(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:j(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:j(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:j(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:j(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:j(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:j(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:j(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:j(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:j(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:j(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:j(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:j(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:j(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:j(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:j(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:j(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:j(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:j(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:j(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:j(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:j(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:j(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:j(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:j(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:j(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:j(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:j(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:j(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:j(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:j(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:j(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:j(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:j(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:j(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:j(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:j(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:j(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:j(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:j(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:j(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:j(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:j(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:j(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:j(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:j(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:j(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:j(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:j(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:j(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:j(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:j(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:j(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:j(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:j(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:j(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:j(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:j(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:j(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:j(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:j(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:j(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:j(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:j(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:j(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:j(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:j(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:j(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:j(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:j(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:j(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:j(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:j(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:j(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:j(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:j(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:j(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:j(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:j(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:j(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:j(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:j(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:j(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:j(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),using_declarations_are_not_allowed_in_ambient_contexts:j(1545,1,"using_declarations_are_not_allowed_in_ambient_contexts_1545","'using' declarations are not allowed in ambient contexts."),await_using_declarations_are_not_allowed_in_ambient_contexts:j(1546,1,"await_using_declarations_are_not_allowed_in_ambient_contexts_1546","'await using' declarations are not allowed in ambient contexts."),The_types_of_0_are_incompatible_between_these_types:j(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:j(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:j(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:j(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:j(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:j(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:j(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:j(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:j(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:j(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:j(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:j(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:j(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:j(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:j(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:j(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:j(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:j(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:j(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:j(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:j(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:j(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:j(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:j(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:j(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:j(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:j(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:j(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:j(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:j(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:j(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:j(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:j(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:j(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:j(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:j(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:j(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:j(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:j(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:j(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:j(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:j(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:j(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:j(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:j(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:j(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:j(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:j(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:j(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:j(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:j(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:j(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:j(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:j(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:j(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:j(2346,1,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:j(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:j(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:j(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:j(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:j(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:j(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:j(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:j(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:j(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:j(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:j(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:j(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:j(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:j(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:j(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:j(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:j(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:j(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:j(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:j(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:j(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:j(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:j(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:j(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:j(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:j(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:j(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:j(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:j(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:j(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:j(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:j(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:j(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:j(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:j(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:j(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:j(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:j(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:j(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:j(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:j(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:j(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:j(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:j(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:j(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:j(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:j(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:j(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:j(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:j(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:j(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:j(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:j(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:j(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:j(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:j(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:j(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:j(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:j(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:j(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:j(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:j(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:j(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:j(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:j(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:j(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:j(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:j(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:j(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:j(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:j(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:j(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:j(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:j(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:j(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:j(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:j(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:j(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:j(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:j(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:j(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:j(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:j(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:j(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:j(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:j(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:j(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:j(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:j(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:j(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:j(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:j(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:j(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:j(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:j(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:j(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:j(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:j(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:j(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:j(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:j(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:j(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:j(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:j(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:j(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:j(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:j(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:j(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:j(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:j(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:j(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:j(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:j(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:j(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:j(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:j(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:j(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:j(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:j(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:j(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:j(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:j(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:j(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:j(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:j(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:j(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:j(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:j(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:j(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:j(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:j(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:j(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:j(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:j(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:j(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:j(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:j(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:j(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:j(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:j(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:j(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:j(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:j(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:j(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:j(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:j(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:j(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:j(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:j(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:j(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:j(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:j(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:j(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:j(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:j(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:j(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:j(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:j(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:j(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:j(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:j(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:j(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:j(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:j(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:j(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:j(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:j(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:j(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:j(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:j(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:j(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:j(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:j(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:j(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:j(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:j(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:j(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:j(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:j(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:j(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:j(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:j(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:j(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:j(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:j(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:j(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:j(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:j(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:j(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:j(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:j(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:j(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:j(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:j(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:j(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:j(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:j(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:j(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:j(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:j(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:j(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:j(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:j(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:j(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:j(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:j(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:j(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:j(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:j(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:j(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:j(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:j(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:j(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:j(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:j(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:j(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:j(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:j(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:j(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:j(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:j(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:j(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:j(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:j(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:j(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:j(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:j(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:j(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:j(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:j(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:j(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:j(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:j(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:j(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:j(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:j(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:j(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:j(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:j(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:j(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:j(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:j(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:j(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:j(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:j(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:j(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:j(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:j(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:j(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:j(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:j(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:j(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:j(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:j(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:j(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:j(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:j(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:j(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:j(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:j(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:j(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:j(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:j(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:j(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:j(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:j(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:j(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:j(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:j(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:j(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:j(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:j(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:j(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:j(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:j(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:j(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:j(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:j(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:j(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:j(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:j(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:j(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:j(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:j(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:j(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:j(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:j(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:j(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:j(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:j(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:j(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:j(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:j(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:j(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:j(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:j(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:j(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:j(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:j(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:j(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:j(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:j(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:j(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:j(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:j(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:j(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:j(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:j(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:j(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:j(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:j(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:j(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:j(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:j(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:j(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:j(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:j(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:j(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:j(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:j(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:j(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:j(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:j(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:j(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:j(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:j(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:j(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0:j(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 and above with module {0}."),Cannot_find_lib_definition_for_0:j(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:j(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:j(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:j(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:j(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:j(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:j(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:j(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:j(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:j(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:j(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:j(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:j(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:j(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:j(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:j(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:j(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:j(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:j(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:j(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:j(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:j(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:j(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:j(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:j(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:j(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:j(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:j(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:j(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:j(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:j(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:j(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:j(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:j(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:j(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:j(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:j(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:j(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:j(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:j(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:j(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:j(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:j(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:j(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:j(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:j(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:j(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:j(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:j(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:j(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:j(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:j(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:j(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:j(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:j(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:j(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:j(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:j(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:j(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:j(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:j(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:j(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:j(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:j(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:j(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:j(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:j(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:j(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:j(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:j(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:j(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:j(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:j(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:j(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:j(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:j(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:j(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:j(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:j(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:j(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:j(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:j(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:j(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:j(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:j(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:j(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:j(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:j(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks:j(2815,1,"arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks_2815","'arguments' cannot be referenced in property initializers or class static initialization blocks."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:j(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:j(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:j(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:j(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:j(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:j(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:j(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:j(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:j(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:j(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:j(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:j(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:j(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:j(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:j(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:j(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:j(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:j(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:j(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:j(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:j(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:j(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:j(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:j(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:j(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:j(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:j(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:j(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:j(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:j(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:j(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:j(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:j(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:j(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:j(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:j(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:j(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:j(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:j(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:j(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:j(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:j(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:j(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:j(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:j(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:j(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:j(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:j(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:j(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:j(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert:j(2880,1,"Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert_2880","Import assertions have been replaced by import attributes. Use 'with' instead of 'assert'."),This_expression_is_never_nullish:j(2881,1,"This_expression_is_never_nullish_2881","This expression is never nullish."),Import_declaration_0_is_using_private_name_1:j(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:j(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:j(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:j(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:j(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:j(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:j(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:j(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:j(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:j(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:j(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:j(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:j(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:j(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:j(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:j(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:j(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:j(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:j(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:j(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:j(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:j(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:j(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:j(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:j(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:j(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:j(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:j(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:j(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:j(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:j(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:j(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:j(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:j(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:j(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:j(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:j(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:j(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:j(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:j(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:j(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:j(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:j(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:j(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:j(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:j(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:j(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:j(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:j(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected:j(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:j(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:j(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:j(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:j(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:j(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:j(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:j(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:j(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:j(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:j(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:j(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:j(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:j(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:j(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:j(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:j(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:j(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:j(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:j(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:j(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:j(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:j(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:j(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:j(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:j(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:j(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:j(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:j(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:j(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic:j(4127,1,"This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic_4127","This member cannot have an 'override' modifier because its name is dynamic."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:j(4128,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic_4128","This member cannot have a JSDoc comment with an '@override' tag because its name is dynamic."),The_current_host_does_not_support_the_0_option:j(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:j(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:j(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:j(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:j(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:j(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:j(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:j(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:j(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:j(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:j(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:j(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:j(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:j(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:j(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:j(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:j(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:j(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:j(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:j(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:j(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:j(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:j(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:j(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:j(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:j(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:j(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:j(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:j(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:j(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:j(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:j(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:j(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:j(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:j(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:j(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:j(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:j(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:j(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:j(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:j(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:j(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:j(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:j(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:j(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:j(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:j(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:j(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:j(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:j(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:j(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:j(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:j(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:j(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:j(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:j(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:j(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:j(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:j(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:j(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:j(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:j(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:j(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:j(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:j(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:j(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:j(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:j(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:j(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:j(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:j(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:j(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:j(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:j(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:j(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:j(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:j(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:j(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:j(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:j(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:j(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:j(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:j(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:j(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:j(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:j(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:j(6024,3,"options_6024","options"),file:j(6025,3,"file_6025","file"),Examples_Colon_0:j(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:j(6027,3,"Options_Colon_6027","Options:"),Version_0:j(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:j(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:j(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:j(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:j(6034,3,"KIND_6034","KIND"),FILE:j(6035,3,"FILE_6035","FILE"),VERSION:j(6036,3,"VERSION_6036","VERSION"),LOCATION:j(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:j(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:j(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:j(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:j(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:j(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:j(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:j(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:j(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:j(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:j(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:j(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:j(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:j(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:j(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:j(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:j(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:j(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:j(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:j(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:j(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:j(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:j(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:j(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:j(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:j(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:j(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:j(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:j(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:j(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:j(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:j(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:j(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:j(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:j(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:j(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:j(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:j(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:j(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:j(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:j(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:j(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:j(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:j(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:j(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:j(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:j(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:j(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:j(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:j(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:j(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:j(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:j(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:j(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:j(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:j(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:j(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:j(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:j(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:j(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:j(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:j(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:j(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:j(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:j(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:j(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:j(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:j(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:j(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:j(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:j(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:j(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:j(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:j(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:j(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:j(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:j(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:j(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:j(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:j(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:j(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:j(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:j(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:j(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:j(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:j(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:j(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:j(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:j(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:j(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:j(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:j(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:j(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:j(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:j(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:j(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:j(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:j(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:j(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:j(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:j(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:j(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:j(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:j(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:j(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:j(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:j(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:j(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:j(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:j(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:j(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:j(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:j(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:j(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:j(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:j(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:j(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:j(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:j(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:j(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:j(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:j(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:j(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:j(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:j(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:j(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:j(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:j(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:j(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:j(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:j(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:j(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:j(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:j(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:j(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:j(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:j(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:j(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:j(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:j(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:j(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:j(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:j(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:j(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:j(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:j(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:j(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:j(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:j(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:j(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:j(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:j(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:j(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:j(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:j(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:j(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:j(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:j(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:j(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:j(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:j(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:j(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:j(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:j(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:j(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:j(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:j(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:j(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:j(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:j(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:j(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:j(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:j(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:j(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:j(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:j(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:j(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:j(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:j(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:j(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:j(6244,3,"Modules_6244","Modules"),File_Management:j(6245,3,"File_Management_6245","File Management"),Emit:j(6246,3,"Emit_6246","Emit"),JavaScript_Support:j(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:j(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:j(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:j(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:j(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:j(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:j(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:j(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:j(6255,3,"Projects_6255","Projects"),Output_Formatting:j(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:j(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:j(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:j(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:j(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:j(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:j(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:j(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:j(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:j(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:j(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:j(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:j(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:j(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:j(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:j(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:j(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:j(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:j(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:j(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:j(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:j(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:j(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:j(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:j(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),File_Layout:j(6284,3,"File_Layout_6284","File Layout"),Environment_Settings:j(6285,3,"Environment_Settings_6285","Environment Settings"),See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule:j(6286,3,"See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule_6286","See also https://aka.ms/tsconfig/module"),For_nodejs_Colon:j(6287,3,"For_nodejs_Colon_6287","For nodejs:"),and_npm_install_D_types_Slashnode:j(6290,3,"and_npm_install_D_types_Slashnode_6290","and npm install -D @types/node"),Other_Outputs:j(6291,3,"Other_Outputs_6291","Other Outputs"),Stricter_Typechecking_Options:j(6292,3,"Stricter_Typechecking_Options_6292","Stricter Typechecking Options"),Style_Options:j(6293,3,"Style_Options_6293","Style Options"),Recommended_Options:j(6294,3,"Recommended_Options_6294","Recommended Options"),Enable_project_compilation:j(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:j(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:j(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:j(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:j(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:j(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:j(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:j(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:j(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:j(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:j(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:j(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:j(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:j(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:j(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:j(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:j(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:j(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:j(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:j(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:j(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:j(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:j(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:j(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:j(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:j(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:j(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:j(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:j(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:j(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:j(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:j(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:j(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:j(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:j(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:j(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:j(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:j(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:j(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:j(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:j(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:j(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:j(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:j(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:j(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:j(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:j(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:j(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:j(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:j(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:j(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:j(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:j(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:j(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:j(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:j(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:j(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:j(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:j(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:j(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:j(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:j(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:j(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:j(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:j(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:j(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:j(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:j(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:j(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:j(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:j(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:j(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:j(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:j(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:j(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:j(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:j(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files:j(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJs' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:j(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:j(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:j(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:j(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:j(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:j(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:j(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:j(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:j(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:j(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:j(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:j(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:j(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:j(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:j(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:j(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:j(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:j(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:j(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:j(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:j(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:j(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:j(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:j(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:j(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:j(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:j(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:j(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:j(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:j(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:j(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:j(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:j(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:j(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:j(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:j(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:j(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:j(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Skip_building_downstream_projects_on_error_in_upstream_project:j(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:j(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:j(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:j(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:j(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:j(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:j(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:j(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:j(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:j(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:j(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:j(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:j(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:j(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:j(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:j(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:j(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:j(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:j(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:j(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:j(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:j(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:j(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:j(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:j(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:j(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:j(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:j(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:j(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:j(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:j(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:j(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:j(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:j(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:j(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:j(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:j(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:j(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:j(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:j(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:j(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:j(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:j(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:j(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:j(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:j(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:j(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:j(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:j(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:j(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:j(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:j(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:j(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:j(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:j(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:j(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:j(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:j(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:j(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:j(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:j(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:j(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:j(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:j(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:j(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:j(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:j(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:j(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:j(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:j(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:j(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:j(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:j(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:j(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:j(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:j(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:j(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:j(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript:j(6721,3,"Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript_6721","Do not allow runtime constructs that are not part of ECMAScript."),Default_catch_clause_variables_as_unknown_instead_of_any:j(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:j(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:j(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:j(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:j(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),Enable_lib_replacement:j(6808,3,"Enable_lib_replacement_6808","Enable lib replacement."),one_of_Colon:j(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:j(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:j(6902,3,"type_Colon_6902","type:"),default_Colon:j(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:j(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:j(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:j(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:j(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:j(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:j(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:j(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:j(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:j(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:j(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:j(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:j(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:j(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:j(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:j(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:j(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:j(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:j(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:j(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:j(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:j(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:j(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:j(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:j(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:j(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:j(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:j(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:j(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:j(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:j(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:j(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:j(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:j(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:j(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:j(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:j(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:j(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:j(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:j(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:j(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:j(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:j(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:j(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:j(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:j(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:j(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation:j(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:j(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:j(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:j(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:j(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:j(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:j(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:j(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:j(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:j(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:j(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:j(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:j(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:j(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:j(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:j(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:j(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:j(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:j(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:j(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:j(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:j(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:j(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:j(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:j(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:j(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:j(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:j(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:j(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:j(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:j(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:j(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:j(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:j(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:j(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:j(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:j(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:j(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:j(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:j(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:j(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:j(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:j(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:j(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:j(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:j(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:j(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:j(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:j(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:j(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:j(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:j(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:j(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:j(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:j(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:j(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:j(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:j(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:j(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:j(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:j(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:j(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:j(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:j(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:j(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:j(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:j(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:j(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:j(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:j(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:j(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:j(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:j(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:j(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:j(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:j(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:j(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:j(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:j(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:j(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:j(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:j(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:j(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:j(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:j(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:j(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:j(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:j(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:j(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:j(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:j(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:j(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:j(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:j(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:j(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:j(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:j(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:j(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:j(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:j(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:j(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:j(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:j(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:j(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:j(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:j(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:j(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:j(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:j(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:j(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:j(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:j(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:j(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:j(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:j(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:j(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:j(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:j(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:j(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:j(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:j(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:j(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:j(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:j(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:j(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:j(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:j(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:j(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:j(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:j(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:j(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:j(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:j(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:j(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:j(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:j(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:j(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:j(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:j(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:j(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:j(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:j(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:j(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:j(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:j(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:j(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:j(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:j(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:j(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:j(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:j(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:j(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:j(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:j(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:j(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:j(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:j(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:j(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:j(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:j(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:j(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:j(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:j(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:j(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:j(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:j(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:j(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:j(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:j(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:j(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:j(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:j(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:j(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:j(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:j(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:j(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:j(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:j(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:j(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:j(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:j(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:j(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:j(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:j(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:j(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:j(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:j(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:j(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:j(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:j(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:j(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:j(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:j(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:j(95005,3,"Extract_function_95005","Extract function"),Extract_constant:j(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:j(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:j(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:j(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:j(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:j(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:j(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:j(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:j(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:j(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:j(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:j(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:j(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:j(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:j(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:j(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:j(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:j(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:j(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:j(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:j(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:j(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:j(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:j(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:j(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:j(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:j(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:j(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:j(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:j(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:j(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:j(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:j(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:j(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:j(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:j(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:j(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:j(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:j(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:j(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:j(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:j(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:j(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:j(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:j(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:j(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:j(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:j(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:j(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:j(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:j(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:j(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:j(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:j(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:j(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:j(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:j(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:j(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:j(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:j(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:j(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:j(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:j(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:j(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:j(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:j(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:j(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:j(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:j(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:j(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:j(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:j(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:j(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:j(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:j(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:j(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:j(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:j(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:j(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:j(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:j(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:j(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:j(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:j(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:j(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:j(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:j(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:j(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:j(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:j(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:j(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:j(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:j(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:j(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:j(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:j(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:j(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:j(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:j(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:j(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:j(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:j(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:j(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:j(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:j(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:j(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:j(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:j(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:j(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:j(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:j(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:j(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:j(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:j(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:j(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:j(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:j(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:j(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:j(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:j(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:j(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:j(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:j(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:j(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:j(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:j(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:j(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:j(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:j(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:j(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:j(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:j(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:j(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:j(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:j(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:j(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:j(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:j(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:j(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:j(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:j(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:j(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:j(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:j(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:j(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:j(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:j(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:j(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:j(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:j(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:j(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:j(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:j(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:j(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:j(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:j(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:j(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:j(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:j(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:j(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:j(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:j(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:j(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:j(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:j(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:j(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:j(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:j(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:j(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:j(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:j(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:j(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:j(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:j(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:j(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:j(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:j(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:j(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:j(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:j(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:j(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:j(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:j(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:j(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:j(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:j(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:j(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:j(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:j(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:j(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:j(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:j(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:j(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:j(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:j(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:j(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:j(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:j(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:j(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:j(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:j(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:j(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:j(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:j(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:j(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:j(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:j(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:j(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:j(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:j(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:j(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:j(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:j(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:j(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:j(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:j(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:j(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:j(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:j(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:j(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:j(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:j(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:j(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:j(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:j(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:j(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:j(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:j(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:j(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:j(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:j(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:j(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:j(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'."),Default_imports_are_not_allowed_in_a_deferred_import:j(18058,1,"Default_imports_are_not_allowed_in_a_deferred_import_18058","Default imports are not allowed in a deferred import."),Named_imports_are_not_allowed_in_a_deferred_import:j(18059,1,"Named_imports_are_not_allowed_in_a_deferred_import_18059","Named imports are not allowed in a deferred import."),Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve:j(18060,1,"Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve_18060","Deferred imports are only supported when the '--module' flag is set to 'esnext' or 'preserve'."),_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer:j(18061,1,"_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer_18061","'{0}' is not a valid meta-property for keyword 'import'. Did you mean 'meta' or 'defer'?")};function Id(s){return s>=80}function fB(s){return s===32||Id(s)}var ev={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,defer:166,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},Ny=new Map(Object.entries(ev)),vb=new Map(Object.entries({...ev,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),xD=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),IB=new Map([[1,Rd.RegularExpressionFlagsHasIndices],[16,Rd.RegularExpressionFlagsDotAll],[32,Rd.RegularExpressionFlagsUnicode],[64,Rd.RegularExpressionFlagsUnicodeSets],[128,Rd.RegularExpressionFlagsSticky]]),Bb=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],bL=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],gF=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],x=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,te=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Re=/@(?:see|link)/i;function Le(s,c){if(s=2?Le(s,gF):Le(s,Bb)}function dr(s,c){return c>=2?Le(s,x):Le(s,bL)}function Ur(s){let c=[];return s.forEach((g,d)=>{c[g]=d}),c}var mi=Ur(vb);function Vi(s){return mi[s]}function Ta(s){return vb.get(s)}var Sl=Ur(xD);function Ho(s){return Sl[s]}function Wg(s){return xD.get(s)}function cA(s){let c=[],g=0,d=0;for(;g127&&Cl(h)&&(c.push(d),d=g);break}}return c.push(d),c}function th(s,c,g,d){return s.getPositionOfLineAndCharacter?s.getPositionOfLineAndCharacter(c,g,d):xn(rn(s),c,g,s.text,d)}function xn(s,c,g,d,h){(c<0||c>=s.length)&&(h?c=c<0?0:c>=s.length?s.length-1:c:pe.fail(`Bad line number. Line: ${c}, lineStarts.length: ${s.length} , line map is correct? ${d!==void 0?Sc(s,cA(d)):"unknown"}`));let _=s[c]+g;return h?_>s[c+1]?s[c+1]:typeof d=="string"&&_>d.length?d.length:_:(c=8192&&s<=8203||s===8239||s===8287||s===12288||s===65279}function Cl(s){return s===10||s===13||s===8232||s===8233}function wl(s){return s>=48&&s<=57}function $f(s){return wl(s)||s>=65&&s<=70||s>=97&&s<=102}function j2(s){return s>=65&&s<=90||s>=97&&s<=122}function _x(s){return j2(s)||wl(s)||s===95}function z2(s){return s>=48&&s<=55}function tv(s,c){let g=s.charCodeAt(c);switch(g){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return c===0;default:return g>127}}function Yu(s,c,g,d,h){if(wB(c))return c;let _=!1;for(;;){let S=s.charCodeAt(c);switch(S){case 13:s.charCodeAt(c+1)===10&&c++;case 10:if(c++,g)return c;_=!!h;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(s.charCodeAt(c+1)===47){for(c+=2;c127&&dc(S)){c++;continue}break}return c}}var qO=7;function hB(s,c){if(pe.assert(c>=0),c===0||Cl(s.charCodeAt(c-1))){let g=s.charCodeAt(c);if(c+qO=0&&g127&&dc(ge)){M&&Cl(ge)&&(V=!0),g++;continue}break e}}return M&&(re=h(R,T,W,V,_,re)),re}function GD(s,c,g,d){return LT(!1,s,c,!1,g,d)}function dF(s,c,g,d){return LT(!1,s,c,!0,g,d)}function EL(s,c,g,d,h){return LT(!0,s,c,!1,g,d,h)}function ff(s,c,g,d,h){return LT(!0,s,c,!0,g,d,h)}function FD(s,c,g,d,h,_=[]){return _.push({kind:g,pos:s,end:c,hasTrailingNewLine:d}),_}function fE(s,c){return EL(s,c,FD,void 0,void 0)}function n2(s,c){return ff(s,c,FD,void 0,void 0)}function mB(s){let c=AF.exec(s);if(c)return c[0]}function bd(s,c){return j2(s)||s===36||s===95||s>127&&ft(s,c)}function s1(s,c,g){return _x(s)||s===36||(g===1?s===45||s===58:!1)||s>127&&dr(s,c)}function Uh(s,c,g){let d=Uu(s,0);if(!bd(d,c))return!1;for(let h=iy(d);hV,getStartPos:()=>V,getTokenEnd:()=>T,getTextPos:()=>T,getToken:()=>ee,getTokenStart:()=>M,getTokenPos:()=>M,getTokenText:()=>R.substring(M,T),getTokenValue:()=>re,hasUnicodeEscape:()=>(ge&1024)!==0,hasExtendedUnicodeEscape:()=>(ge&8)!==0,hasPrecedingLineBreak:()=>(ge&1)!==0,hasPrecedingJSDocComment:()=>(ge&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(ge&32768)!==0,isIdentifier:()=>ee===80||ee>118,isReservedWord:()=>ee>=83&&ee<=118,isUnterminated:()=>(ge&4)!==0,getCommentDirectives:()=>Ie,getNumericLiteralFlags:()=>ge&25584,getTokenFlags:()=>ge,reScanGreaterToken:zt,reScanAsteriskEqualsToken:Ht,reScanSlashToken:Br,reScanTemplateToken:An,reScanTemplateHeadOrNoSubstitutionTemplate:si,scanJsxIdentifier:Gl,scanJsxAttributeValue:ba,reScanJsxAttributeValue:Wo,reScanJsxToken:ks,reScanLessThanToken:Ic,reScanHashToken:su,reScanQuestionToken:Zn,reScanInvalidIdentifier:st,scanJsxToken:ya,scanJsDocToken:yr,scanJSDocCommentTextToken:hc,scan:dt,getText:Oa,clearCommentDirectives:tl,setText:Qu,setScriptTarget:Cs,setLanguageVariant:Tu,setScriptKind:Pr,setJSDocParsingMode:Pn,setOnError:Tg,resetTokenState:pt,setTextPos:pt,setSkipJsDocLeadingAsterisks:on,tryScan:pa,lookAhead:lo,scanRange:Oi};return pe.isDebugging&&Object.defineProperty(Te,"__debugShowCurrentPositionInText",{get:()=>{let it=Te.getText();return it.slice(0,Te.getTokenFullStart())+"\u2551"+it.slice(Te.getTokenFullStart())}}),Te;function Ze(it){return Uu(R,it)}function We(it){return it>=0&&it=0&&it=65&&En<=70)En+=32;else if(!(En>=48&&En<=57||En>=97&&En<=102))break;Kr.push(En),T++,hr=!1}return Kr.length=W){Fr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}let Dn=Ue(T);if(Dn===nr){Fr+=R.substring(Kr,T),T++;break}if(Dn===92&&!it){Fr+=R.substring(Kr,T),Fr+=Pt(3),Kr=T;continue}if((Dn===10||Dn===13)&&!it){Fr+=R.substring(Kr,T),ge|=4,Ye(Z.Unterminated_string_literal);break}T++}return Fr}function Ke(it){let nr=Ue(T)===96;T++;let Fr=T,Kr="",Dn;for(;;){if(T>=W){Kr+=R.substring(Fr,T),ge|=4,Ye(Z.Unterminated_template_literal),Dn=nr?15:18;break}let hr=Ue(T);if(hr===96){Kr+=R.substring(Fr,T),T++,Dn=nr?15:18;break}if(hr===36&&T+1=W)return Ye(Z.Unexpected_end_of_text),"";let Fr=Ue(T);switch(T++,Fr){case 48:if(T>=W||!wl(Ue(T)))return"\0";case 49:case 50:case 51:T=55296&&Kr<=56319&&T+6=56320&&Ni<=57343)return T=En,Dn+String.fromCharCode(Ni)}return Dn;case 120:for(;T1114111&&(it&&Ye(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Fr,T-Fr),hr=!0),T>=W?(it&&Ye(Z.Unexpected_end_of_text),hr=!0):Ue(T)===125?T++:(it&&Ye(Z.Unterminated_Unicode_escape_sequence),hr=!0),hr?(ge|=2048,R.substring(nr,T)):(ge|=8,jR(Dn))}function Gt(){if(T+5=0&&s1(Fr,s)){it+=_r(!0),nr=T;continue}if(Fr=Gt(),!(Fr>=0&&s1(Fr,s)))break;ge|=1024,it+=R.substring(nr,T),it+=jR(Fr),T+=6,nr=T}else break}return it+=R.substring(nr,T),it}function tr(){let it=re.length;if(it>=2&&it<=12){let nr=re.charCodeAt(0);if(nr>=97&&nr<=122){let Fr=Ny.get(re);if(Fr!==void 0)return ee=Fr}}return ee=80}function ur(it){let nr="",Fr=!1,Kr=!1;for(;;){let Dn=Ue(T);if(Dn===95){ge|=512,Fr?(Fr=!1,Kr=!0):Ye(Kr?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,T,1),T++;continue}if(Fr=!0,!wl(Dn)||Dn-48>=it)break;nr+=R[T],T++,Kr=!1}return Ue(T-1)===95&&Ye(Z.Numeric_separators_are_not_allowed_here,T-1,1),nr}function Gr(){return Ue(T)===110?(re+="n",ge&384&&(re=nz(re)+"n"),T++,10):(re=""+(ge&128?parseInt(re.slice(2),2):ge&256?parseInt(re.slice(2),8):+re),9)}function dt(){for(V=T,ge=0;;){if(M=T,T>=W)return ee=1;let it=Ze(T);if(T===0&&it===35&&$O(R,T)){if(T=iY(R,T),c)continue;return ee=6}switch(it){case 10:case 13:if(ge|=1,c){T++;continue}else return it===13&&T+1=0&&bd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Fr=Gt();return Fr>=0&&bd(Fr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Fr)+Dt(),ee=tr()):(Ye(Z.Invalid_character),T++,ee=0);case 35:if(T!==0&&R[T+1]==="!")return Ye(Z.can_only_be_used_at_the_start_of_a_file,T,2),T++,ee=0;let Kr=Ze(T+1);if(Kr===92){T++;let En=nt();if(En>=0&&bd(En,s))return re="#"+_r(!0)+Dt(),ee=81;let Ni=Gt();if(Ni>=0&&bd(Ni,s))return T+=6,ge|=1024,re="#"+String.fromCharCode(Ni)+Dt(),ee=81;T--}return bd(Kr,s)?(T++,ir(Kr,s)):(re="#",Ye(Z.Invalid_character,T++,iy(it))),ee=81;case 65533:return Ye(Z.File_appears_to_be_binary,0,0),T=W,ee=8;default:let Dn=ir(it,s);if(Dn)return ee=Dn;if(Iu(it)){T+=iy(it);continue}else if(Cl(it)){ge|=1,T+=iy(it);continue}let hr=iy(it);return Ye(Z.Invalid_character,T,hr),T+=hr,ee=0}}}function pr(){switch(Ne){case 0:return!0;case 1:return!1}return Ee!==3&&Ee!==4?!0:Ne===3?!1:Re.test(R.slice(V,T))}function st(){pe.assert(ee===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),T=M=V,ge=0;let it=Ze(T),nr=ir(it,99);return nr?ee=nr:(T+=iy(it),ee)}function ir(it,nr){let Fr=it;if(bd(Fr,nr)){for(T+=iy(Fr);T=W)return ee=1;let nr=Ue(T);if(nr===60)return Ue(T+1)===47?(T+=2,ee=31):(T++,ee=30);if(nr===123)return T++,ee=19;let Fr=0;for(;T0)break;dc(nr)||(Fr=T)}T++}return re=R.substring(V,T),Fr===-1?13:12}function Gl(){if(Id(ee)){for(;T=W)return ee=1;for(let nr=Ue(T);T=0&&Iu(Ue(T-1))&&!(T+1=W)return ee=1;let it=Ze(T);switch(T+=iy(it),it){case 9:case 11:case 12:case 32:for(;T=0&&bd(nr,s))return re=_r(!0)+Dt(),ee=tr();let Fr=Gt();return Fr>=0&&bd(Fr,s)?(T+=6,ge|=1024,re=String.fromCharCode(Fr)+Dt(),ee=tr()):(T++,ee=0)}if(bd(it,s)){let nr=it;for(;T=0),T=it,V=it,M=it,ee=0,re=void 0,ge=0}function on(it){_e+=it?1:-1}}function Uu(s,c){return s.codePointAt(c)}function iy(s){return s>=65536?2:s===-1?0:1}function sY(s){if(pe.assert(0<=s&&s<=1114111),s<=65535)return String.fromCharCode(s);let c=Math.floor((s-65536)/1024)+55296,g=(s-65536)%1024+56320;return String.fromCharCode(c,g)}var oY=String.fromCodePoint?s=>String.fromCodePoint(s):sY;function jR(s){return oY(s)}var aY=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),tt=new Set(["ASCII","ASCII_Hex_Digit","AHex","Alphabetic","Alpha","Any","Assigned","Bidi_Control","Bidi_C","Bidi_Mirrored","Bidi_M","Case_Ignorable","CI","Cased","Changes_When_Casefolded","CWCF","Changes_When_Casemapped","CWCM","Changes_When_Lowercased","CWL","Changes_When_NFKC_Casefolded","CWKCF","Changes_When_Titlecased","CWT","Changes_When_Uppercased","CWU","Dash","Default_Ignorable_Code_Point","DI","Deprecated","Dep","Diacritic","Dia","Emoji","Emoji_Component","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","Extender","Ext","Grapheme_Base","Gr_Base","Grapheme_Extend","Gr_Ext","Hex_Digit","Hex","IDS_Binary_Operator","IDSB","IDS_Trinary_Operator","IDST","ID_Continue","IDC","ID_Start","IDS","Ideographic","Ideo","Join_Control","Join_C","Logical_Order_Exception","LOE","Lowercase","Lower","Math","Noncharacter_Code_Point","NChar","Pattern_Syntax","Pat_Syn","Pattern_White_Space","Pat_WS","Quotation_Mark","QMark","Radical","Regional_Indicator","RI","Sentence_Terminal","STerm","Soft_Dotted","SD","Terminal_Punctuation","Term","Unified_Ideograph","UIdeo","Uppercase","Upper","Variation_Selector","VS","White_Space","space","XID_Continue","XIDC","XID_Start","XIDS"]),Jt=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),kr={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};kr.Script_Extensions=kr.Script;function Xr(s){return Ip(s)||Xp(s)}function ui(s){return cl(s,X7,vAe)}var Is=new Map([[99,"lib.esnext.full.d.ts"],[11,"lib.es2024.full.d.ts"],[10,"lib.es2023.full.d.ts"],[9,"lib.es2022.full.d.ts"],[8,"lib.es2021.full.d.ts"],[7,"lib.es2020.full.d.ts"],[6,"lib.es2019.full.d.ts"],[5,"lib.es2018.full.d.ts"],[4,"lib.es2017.full.d.ts"],[3,"lib.es2016.full.d.ts"],[2,"lib.es6.d.ts"]]);function Hs(s){let c=Mg(s);switch(c){case 99:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:return Is.get(c);default:return"lib.d.ts"}}function Rs(s){return s.start+s.length}function ja(s){return s.length===0}function ho(s,c){return c>=s.start&&c=s.pos&&c<=s.end}function Nd(s,c){return c.start>=s.start&&Rs(c)<=Rs(s)}function ed(s,c){return c.pos>=s.start&&c.end<=Rs(s)}function Og(s,c){return c.start>=s.pos&&Rs(c)<=s.end}function Nh(s,c){return o1(s,c)!==void 0}function o1(s,c){let g=IA(s,c);return g&&g.length===0?void 0:g}function Tb(s,c){return IE(s.start,s.length,c.start,c.length)}function q2(s,c,g){return IE(s.start,s.length,c,g)}function IE(s,c,g,d){let h=s+c,_=g+d;return g<=h&&_>=s}function zR(s,c){return c<=Rs(s)&&c>=s.start}function e3(s,c){return q2(c,s.pos,s.end-s.pos)}function IA(s,c){let g=Math.max(s.start,c.start),d=Math.min(Rs(s),Rs(c));return g<=d?wA(g,d):void 0}function EI(s){s=s.filter(d=>d.length>0).sort((d,h)=>d.start!==h.start?d.start-h.start:d.length-h.length);let c=[],g=0;for(;g=2&&s.charCodeAt(0)===95&&s.charCodeAt(1)===95?"_"+s:s}function Bc(s){let c=s;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function Vo(s){return Bc(s.escapedText)}function iv(s){let c=Ta(s.escapedText);return c?Gs(c,v0):void 0}function nf(s){return s.valueDeclaration&&pC(s.valueDeclaration)?Vo(s.valueDeclaration.name):Bc(s.escapedName)}function J6(s){let c=s.parent.parent;if(c){if(jh(c))return cY(c);switch(c.kind){case 244:if(c.declarationList&&c.declarationList.declarations[0])return cY(c.declarationList.declarations[0]);break;case 245:let g=c.expression;switch(g.kind===227&&g.operatorToken.kind===64&&(g=g.left),g.kind){case 212:return g.name;case 213:let d=g.argumentExpression;if(Ir(d))return d}break;case 218:return cY(c.expression);case 257:{if(jh(c.statement)||un(c.statement))return cY(c.statement);break}}}}function cY(s){let c=Il(s);return c&&Ir(c)?c:void 0}function t3(s,c){return!!(rh(s)&&Ir(s.name)&&Vo(s.name)===Vo(c)||Ch(s)&&jt(s.declarationList.declarations,g=>t3(g,c)))}function pF(s){return s.name||J6(s)}function rh(s){return!!s.name}function Cw(s){switch(s.kind){case 80:return s;case 349:case 342:{let{name:g}=s;if(g.kind===167)return g.right;break}case 214:case 227:{let g=s;switch(nI(g)){case 1:case 4:case 5:case 3:return jge(g.left);case 7:case 8:case 9:return g.arguments[1];default:return}}case 347:return pF(s);case 341:return J6(s);case 278:{let{expression:g}=s;return Ir(g)?g:void 0}case 213:let c=s;if(Kge(c))return c.argumentExpression}return s.name}function Il(s){if(s!==void 0)return Cw(s)||(UA(s)||lA(s)||vd(s)?CB(s):void 0)}function CB(s){if(s.parent){if(fm(s.parent)||hg(s.parent))return s.parent.name;if(fo(s.parent)&&s===s.parent.right){if(Ir(s.parent.left))return s.parent.left;if(_p(s.parent.left))return jge(s.parent.left)}else if(nc(s.parent)&&Ir(s.parent.name))return s.parent.name}else return}function Rb(s){if(p1(s))return Me(s.modifiers,So)}function $R(s){if(Ga(s,98303))return Me(s.modifiers,Ig)}function Cre(s,c){if(s.name)if(Ir(s.name)){let g=s.name.escapedText;return j6(s.parent,c).filter(d=>cS(d)&&Ir(d.name)&&d.name.escapedText===g)}else{let g=s.parent.parameters.indexOf(s);pe.assert(g>-1,"Parameters should always be in their parents' parameter list");let d=j6(s.parent,c).filter(cS);if(gZB(d)&&d.typeParameters.some(h=>h.name.escapedText===g))}function r3(s){return lY(s,!1)}function U6(s){return lY(s,!0)}function gJ(s){return!!c1(s,cS)}function K6(s){return c1(s,bz)}function uY(s){return dJ(s,t9e)}function bx(s){return c1(s,MPt)}function _re(s){return c1(s,f$e)}function Ex(s){return c1(s,f$e,!0)}function Es(s){return c1(s,I$e)}function Aa(s){return c1(s,I$e,!0)}function ha(s){return c1(s,h$e)}function Ua(s){return c1(s,h$e,!0)}function wc(s){return c1(s,m$e)}function hA(s){return c1(s,m$e,!0)}function Pd(s){return c1(s,$Le,!0)}function Kh(s){return c1(s,C$e)}function i2(s){return c1(s,C$e,!0)}function a1(s){return c1(s,oEe)}function Nb(s){return c1(s,_$e)}function sv(s){return c1(s,e9e)}function oP(s){return c1(s,ZB)}function fF(s){return c1(s,r9e)}function ov(s){let c=c1(s,ude);if(c&&c.typeExpression&&c.typeExpression.type)return c}function eN(s){let c=c1(s,ude);return!c&&Si(s)&&(c=de(vL(s),g=>!!g.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function AJ(s){let c=sv(s);if(c&&c.typeExpression)return c.typeExpression.type;let g=ov(s);if(g&&g.typeExpression){let d=g.typeExpression.type;if(mh(d)){let h=de(d.members,wg);return h&&h.type}if(x_(d)||hie(d))return d.type}}function j6(s,c){var g;if(!Ane(s))return E;let d=(g=s.jsDoc)==null?void 0:g.jsDocCache;if(d===void 0||c){let h=Sye(s,c);pe.assert(h.length<2||h[0]!==h[1]),d=er(h,_=>tR(_)?_.tags:_),c||(s.jsDoc??(s.jsDoc=[]),s.jsDoc.jsDocCache=d)}return d}function Sx(s){return j6(s,!1)}function c1(s,c,g){return de(j6(s,g),c)}function dJ(s,c){return Sx(s).filter(c)}function rye(s,c){return Sx(s).filter(g=>g.kind===c)}function pJ(s){return typeof s=="string"?s:s?.map(c=>c.kind===322?c.text:UFe(c)).join("")}function UFe(s){let c=s.kind===325?"link":s.kind===326?"linkcode":"linkplain",g=s.name?oy(s.name):"",d=s.name&&(s.text===""||s.text.startsWith("://"))?"":" ";return`{@${c} ${g}${d}${s.text}}`}function ZD(s){if(qL(s)){if(mie(s.parent)){let c=KJ(s.parent);if(c&&B(c.tags))return er(c.tags,g=>ZB(g)?g.typeParameters:void 0)}return E}if(iS(s))return pe.assert(s.parent.kind===321),er(s.parent.tags,c=>ZB(c)?c.typeParameters:void 0);if(s.typeParameters||eWt(s)&&s.typeParameters)return s.typeParameters;if(wo(s)){let c=uAe(s);if(c.length)return c;let g=eN(s);if(g&&x_(g)&&g.typeParameters)return g.typeParameters}return E}function n3(s){return s.constraint?s.constraint:ZB(s.parent)&&s===s.parent.typeParameters[0]?s.parent.constraint:void 0}function _w(s){return s.kind===80||s.kind===81}function fJ(s){return s.kind===179||s.kind===178}function vx(s){return jo(s)&&!!(s.flags&64)}function IF(s){return Yg(s)&&!!(s.flags&64)}function _B(s){return Zl(s)&&!!(s.flags&64)}function GC(s){let c=s.kind;return!!(s.flags&64)&&(c===212||c===213||c===214||c===236)}function aP(s){return GC(s)&&!hv(s)&&!!s.questionDotToken}function gY(s){return aP(s.parent)&&s.parent.expression===s}function i3(s){return!GC(s.parent)||aP(s.parent)||s!==s.parent.expression}function IJ(s){return s.kind===227&&s.operatorToken.kind===61}function s2(s){return nh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="const"&&!s.typeArguments}function o2(s){return HI(s,8)}function hJ(s){return hv(s)&&!!(s.flags&64)}function AY(s){return s.kind===253||s.kind===252}function yre(s){return s.kind===281||s.kind===280}function dY(s){return s.kind===349||s.kind===342}function z6(s){return s>=167}function q6(s){return s>=0&&s<=166}function BL(s){return q6(s.kind)}function tN(s){return Da(s,"pos")&&Da(s,"end")}function pY(s){return 9<=s&&s<=15}function wL(s){return pY(s.kind)}function bre(s){switch(s.kind){case 211:case 210:case 14:case 219:case 232:return!0}return!1}function LD(s){return 15<=s&&s<=18}function ige(s){return LD(s.kind)}function $6(s){let c=s.kind;return c===17||c===18}function eS(s){return uy(s)||R0(s)}function rN(s){switch(s.kind){case 277:return s.isTypeOnly||s.parent.parent.phaseModifier===156;case 275:return s.parent.phaseModifier===156;case 274:return s.phaseModifier===156;case 272:return s.isTypeOnly}return!1}function mJ(s){switch(s.kind){case 282:return s.isTypeOnly||s.parent.parent.isTypeOnly;case 279:return s.isTypeOnly&&!!s.moduleSpecifier&&!s.exportClause;case 281:return s.parent.isTypeOnly}return!1}function nN(s){return rN(s)||mJ(s)}function sge(s){return ji(s,nN)!==void 0}function Ere(s){return s.kind===11||LD(s.kind)}function e7(s){return Zg(s)||Ir(s)}function kp(s){var c;return Ir(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function TL(s){var c;return p(s)&&((c=s.emitNode)==null?void 0:c.autoGenerate)!==void 0}function fY(s){let c=s.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function pC(s){return(pi(s)||NL(s))&&p(s.name)}function cP(s){return jo(s)&&p(s.name)}function VD(s){switch(s){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function IY(s){return!!(HY(s)&31)}function Sre(s){return IY(s)||s===126||s===164||s===129}function Ig(s){return VD(s.kind)}function fC(s){let c=s.kind;return c===167||c===80}function VI(s){let c=s.kind;return c===80||c===81||c===11||c===9||c===168}function RL(s){let c=s.kind;return c===80||c===207||c===208}function bu(s){return!!s&&lP(s.kind)}function s3(s){return!!s&&(lP(s.kind)||fl(s))}function kd(s){return s&&nye(s.kind)}function hY(s){return s.kind===112||s.kind===97}function nye(s){switch(s){case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function lP(s){switch(s){case 174:case 180:case 324:case 181:case 182:case 185:case 318:case 186:return!0;default:return nye(s)}}function CJ(s){return ll(s)||_N(s)||$u(s)&&bu(s.parent)}function PI(s){let c=s.kind;return c===177||c===173||c===175||c===178||c===179||c===182||c===176||c===241}function xa(s){return s&&(s.kind===264||s.kind===232)}function yB(s){return s&&(s.kind===178||s.kind===179)}function t0(s){return pi(s)&&Nw(s)}function vre(s){return wo(s)&&jY(s)?(!yP(s)||!wF(s.expression))&&!I3(s,!0):s.parent&&xa(s.parent)&&pi(s)&&!Nw(s)}function NL(s){switch(s.kind){case 175:case 178:case 179:return!0;default:return!1}}function dp(s){return Ig(s)||So(s)}function Bx(s){let c=s.kind;return c===181||c===180||c===172||c===174||c===182||c===178||c===179||c===355}function mY(s){return Bx(s)||PI(s)}function yw(s){let c=s.kind;return c===304||c===305||c===306||c===175||c===178||c===179}function uc(s){return bAe(s.kind)}function oge(s){switch(s.kind){case 185:case 186:return!0}return!1}function Nu(s){if(s){let c=s.kind;return c===208||c===207}return!1}function CY(s){let c=s.kind;return c===210||c===211}function o3(s){let c=s.kind;return c===209||c===233}function uP(s){switch(s.kind){case 261:case 170:case 209:return!0}return!1}function _J(s){return nc(s)||Si(s)||gP(s)||EJ(s)}function yJ(s){return bJ(s)||Bre(s)}function bJ(s){switch(s.kind){case 207:case 211:return!0}return!1}function gP(s){switch(s.kind){case 209:case 304:case 305:case 306:return!0}return!1}function Bre(s){switch(s.kind){case 208:case 210:return!0}return!1}function EJ(s){switch(s.kind){case 209:case 233:case 231:case 210:case 211:case 80:case 212:case 213:return!0}return Jm(s,!0)}function wre(s){let c=s.kind;return c===212||c===167||c===206}function SJ(s){let c=s.kind;return c===212||c===167}function Tre(s){return hF(s)||RF(s)}function hF(s){switch(s.kind){case 214:case 215:case 216:case 171:case 287:case 286:case 290:return!0;case 227:return s.operatorToken.kind===104;default:return!1}}function av(s){return s.kind===214||s.kind===215}function AP(s){let c=s.kind;return c===229||c===15}function D_(s){return iye(o2(s).kind)}function iye(s){switch(s){case 212:case 213:case 215:case 214:case 285:case 286:case 289:case 216:case 210:case 218:case 211:case 232:case 219:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 229:case 97:case 106:case 110:case 112:case 108:case 236:case 234:case 237:case 102:case 283:return!0;default:return!1}}function Rre(s){return sye(o2(s).kind)}function sye(s){switch(s){case 225:case 226:case 221:case 222:case 223:case 224:case 217:return!0;default:return iye(s)}}function iN(s){switch(s.kind){case 226:return!0;case 225:return s.operator===46||s.operator===47;default:return!1}}function age(s){switch(s.kind){case 106:case 112:case 97:case 225:return!0;default:return wL(s)}}function un(s){return _Y(o2(s).kind)}function _Y(s){switch(s){case 228:case 230:case 220:case 227:case 231:case 235:case 233:case 357:case 356:case 239:return!0;default:return sye(s)}}function Ed(s){let c=s.kind;return c===217||c===235}function VT(s,c){switch(s.kind){case 249:case 250:case 251:case 247:case 248:return!0;case 257:return c&&VT(s.statement,c)}return!1}function sN(s){return Cf(s)||Gh(s)}function Db(s){return jt(s,sN)}function t7(s){return!DY(s)&&!Cf(s)&&!Ga(s,32)&&!s_(s)}function PT(s){return DY(s)||Cf(s)||Ga(s,32)}function DL(s){return s.kind===250||s.kind===251}function r7(s){return $u(s)||un(s)}function n7(s){return $u(s)}function hE(s){return u_(s)||un(s)}function cge(s){let c=s.kind;return c===269||c===268||c===80}function Nre(s){let c=s.kind;return c===269||c===268}function oye(s){let c=s.kind;return c===80||c===268}function wx(s){let c=s.kind;return c===276||c===275}function a3(s){return s.kind===268||s.kind===267}function mE(s){switch(s.kind){case 220:case 227:case 209:case 214:case 180:case 264:case 232:case 176:case 177:case 186:case 181:case 213:case 267:case 307:case 278:case 279:case 282:case 263:case 219:case 185:case 178:case 80:case 274:case 272:case 277:case 182:case 265:case 339:case 341:case 318:case 342:case 349:case 324:case 347:case 323:case 292:case 293:case 294:case 201:case 175:case 174:case 268:case 203:case 281:case 271:case 275:case 215:case 15:case 9:case 211:case 170:case 212:case 304:case 173:case 172:case 179:case 305:case 308:case 306:case 11:case 266:case 188:case 169:case 261:return!0;default:return!1}}function WI(s){switch(s.kind){case 220:case 242:case 180:case 270:case 300:case 176:case 195:case 177:case 186:case 181:case 249:case 250:case 251:case 263:case 219:case 185:case 178:case 182:case 339:case 341:case 318:case 324:case 347:case 201:case 175:case 174:case 268:case 179:case 308:case 266:return!0;default:return!1}}function CE(s){return s===220||s===209||s===264||s===232||s===176||s===177||s===267||s===307||s===282||s===263||s===219||s===178||s===274||s===272||s===277||s===265||s===292||s===175||s===174||s===268||s===271||s===275||s===281||s===170||s===304||s===173||s===172||s===179||s===305||s===266||s===169||s===261||s===347||s===339||s===349||s===203}function Dre(s){return s===263||s===283||s===264||s===265||s===266||s===267||s===268||s===273||s===272||s===279||s===278||s===271}function lge(s){return s===253||s===252||s===260||s===247||s===245||s===243||s===250||s===251||s===249||s===246||s===257||s===254||s===256||s===258||s===259||s===244||s===248||s===255||s===354}function jh(s){return s.kind===169?s.parent&&s.parent.kind!==346||wo(s):CE(s.kind)}function uge(s){return Dre(s.kind)}function vJ(s){return lge(s.kind)}function Lc(s){let c=s.kind;return lge(c)||Dre(c)||gge(s)}function gge(s){return s.kind!==242||s.parent!==void 0&&(s.parent.kind===259||s.parent.kind===300)?!1:!mP(s)}function kre(s){let c=s.kind;return lge(c)||Dre(c)||c===242}function yY(s){let c=s.kind;return c===284||c===167||c===80}function kL(s){let c=s.kind;return c===110||c===80||c===212||c===296}function BJ(s){let c=s.kind;return c===285||c===295||c===286||c===12||c===289}function wJ(s){let c=s.kind;return c===292||c===294}function TJ(s){let c=s.kind;return c===11||c===295}function eI(s){let c=s.kind;return c===287||c===286}function c3(s){let c=s.kind;return c===287||c===286||c===290}function RJ(s){let c=s.kind;return c===297||c===298}function l3(s){return s.kind>=310&&s.kind<=352}function i7(s){return s.kind===321||s.kind===320||s.kind===322||Tx(s)||u3(s)||yU(s)||qL(s)}function u3(s){return s.kind>=328&&s.kind<=352}function cv(s){return s.kind===179}function bB(s){return s.kind===178}function Xm(s){if(!Ane(s))return!1;let{jsDoc:c}=s;return!!c&&c.length>0}function If(s){return!!s.type}function WT(s){return!!s.initializer}function l1(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:case 307:return!0;default:return!1}}function bY(s){return s.kind===292||s.kind===294||yw(s)}function s7(s){return s.kind===184||s.kind===234}var IC=1073741823;function xre(s){let c=IC;for(let g of s){if(!g.length)continue;let d=0;for(;d0?g.parent.parameters[h-1]:void 0,S=c.text,R=_?Nn(n2(S,Yu(S,_.end+1,!1,!0)),fE(S,s.pos)):n2(S,Yu(S,s.pos,!1,!0));return jt(R)&&aye(Ei(R),c)}let d=g&&Fge(g,c);return!!F(d,h=>aye(h,c))}var Zre=[],PD="tslib",EY=160,Lre=1e6,Age=500;function Cp(s,c){let g=s.declarations;if(g){for(let d of g)if(d.kind===c)return d}}function dge(s,c){return Me(s.declarations||E,g=>g.kind===c)}function qu(s){let c=new Map;if(s)for(let g of s)c.set(g.escapedName,g);return c}function bw(s){return(s.flags&33554432)!==0}function WD(s){return!!(s.flags&1536)&&s.escapedName.charCodeAt(0)===34}var o7=pge();function pge(){var s="";let c=g=>s+=g;return{getText:()=>s,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(g,d)=>c(g),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>s.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!s.length&&dc(s.charCodeAt(s.length-1)),writeLine:()=>s+=" ",increaseIndent:Dc,decreaseIndent:Dc,clear:()=>s=""}}function NJ(s,c){return s.configFilePath!==c.configFilePath||KFe(s,c)}function KFe(s,c){return S0(s,c,M$e)}function fge(s,c){return S0(s,c,bWt)}function S0(s,c,g){return s!==c&&g.some(d=>!WAe(K7(s,d),K7(c,d)))}function Ew(s,c){for(;;){let g=c(s);if(g==="quit")return;if(g!==void 0)return g;if(ll(s))return;s=s.parent}}function Dh(s,c){let g=s.entries();for(let[d,h]of g){let _=c(h,d);if(_)return _}}function SB(s,c){let g=s.keys();for(let d of g){let h=c(d);if(h)return h}}function a7(s,c){s.forEach((g,d)=>{c.set(d,g)})}function dP(s){let c=o7.getText();try{return s(o7),o7.getText()}finally{o7.clear(),o7.writeKeyword(c)}}function DJ(s){return s.end-s.pos}function Vre(s,c){return s.path===c.path&&!s.prepend==!c.prepend&&!s.circular==!c.circular}function Ige(s,c){return s===c||s.resolvedModule===c.resolvedModule||!!s.resolvedModule&&!!c.resolvedModule&&s.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&s.resolvedModule.extension===c.resolvedModule.extension&&s.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&s.resolvedModule.originalPath===c.resolvedModule.originalPath&&cye(s.resolvedModule.packageId,c.resolvedModule.packageId)&&s.alternateResult===c.alternateResult}function xL(s){return s.resolvedModule}function c7(s){return s.resolvedTypeReferenceDirective}function kJ(s,c,g,d,h){var _;let S=(_=c.getResolvedModule(s,g,d))==null?void 0:_.alternateResult,R=S&&(k_(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[S]]:[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings,[S,S.includes(Vx+"@types/")?`@types/${Nie(h)}`:h]]),T=R?wu(void 0,R[0],...R[1]):c.typesPackageExists(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,h,Nie(h)):c.packageBundlesTypes(h)?wu(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,h,g):wu(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,g,Nie(h));return T&&(T.repopulateInfo=()=>({moduleReference:g,mode:d,packageName:h===g?void 0:h})),T}function l7(s){let c=QT(s.fileName),g=s.packageJsonScope,d=c===".ts"?".mts":c===".js"?".mjs":void 0,h=g&&!g.contents.packageJsonContent.type?d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,d,Ro(g.packageDirectory,"package.json")):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Ro(g.packageDirectory,"package.json")):d?wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module,d):wu(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module);return h.repopulateInfo=()=>!0,h}function cye(s,c){return s===c||!!s&&!!c&&s.name===c.name&&s.subModuleName===c.subModuleName&&s.version===c.version&&s.peerDependencies===c.peerDependencies}function xJ({name:s,subModuleName:c}){return c?`${s}/${c}`:s}function oN(s){return`${xJ(s)}@${s.version}${s.peerDependencies??""}`}function hge(s,c){return s===c||s.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!s.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&s.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!s.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&s.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function Pre(s,c,g,d){pe.assert(s.length===c.length);for(let h=0;h=0),rn(c)[s]}function Cge(s){let c=ms(s),g=Ra(c,s.pos);return`${c.fileName}(${g.line+1},${g.character+1})`}function vY(s,c){pe.assert(s>=0);let g=rn(c),d=s,h=c.text;if(d+1===g.length)return h.length-1;{let _=g[d],S=g[d+1]-1;for(pe.assert(Cl(h.charCodeAt(S)));_<=S&&Cl(h.charCodeAt(S));)S--;return S}}function u7(s,c,g){return!(g&&g(c))&&!s.identifiers.has(c)}function sf(s){return s===void 0?!0:s.pos===s.end&&s.pos>=0&&s.kind!==1}function u1(s){return!sf(s)}function _ge(s,c){return Ds(s)?c===s.expression:fl(s)?c===s.modifiers:ss(s)?c===s.initializer:pi(s)?c===s.questionToken&&t0(s):fm(s)?c===s.modifiers||c===s.questionToken||c===s.exclamationToken||BY(s.modifiers,c,dp):a0(s)?c===s.equalsToken||c===s.modifiers||c===s.questionToken||c===s.exclamationToken||BY(s.modifiers,c,dp):uu(s)?c===s.exclamationToken:Tc(s)?c===s.typeParameters||c===s.type||BY(s.typeParameters,c,Ds):Bg(s)?c===s.typeParameters||BY(s.typeParameters,c,Ds):Dg(s)?c===s.typeParameters||c===s.type||BY(s.typeParameters,c,Ds):sEe(s)?c===s.modifiers||BY(s.modifiers,c,dp):!1}function BY(s,c,g){return!s||Ki(c)||!g(c)?!1:k(s,c)}function lye(s,c,g){if(c===void 0||c.length===0)return s;let d=0;for(;d[`${Ra(s,S.range.end).line}`,S])),d=new Map;return{getUnusedExpectations:h,markUsed:_};function h(){return Do(g.entries()).filter(([S,R])=>R.type===0&&!d.get(S)).map(([S,R])=>R)}function _(S){return g.has(`${S}`)?(d.set(`${S}`,!0),!0):!1}}function MD(s,c,g){if(sf(s))return s.pos;if(l3(s)||s.kind===12)return Yu((c??ms(s)).text,s.pos,!1,!0);if(g&&Xm(s))return MD(s.jsDoc[0],c);if(s.kind===353){c??(c=ms(s));let d=Nc(y$e(s,c));if(d)return MD(d,c,g)}return Yu((c??ms(s)).text,s.pos,!1,!1,GY(s))}function Mre(s,c){let g=!sf(s)&&LB(s)?be(s.modifiers,So):void 0;return g?Yu((c||ms(s)).text,g.end):MD(s,c)}function Ege(s,c){let g=!sf(s)&&LB(s)&&s.modifiers?Ei(s.modifiers):void 0;return g?Yu((c||ms(s)).text,g.end):MD(s,c)}function mF(s,c,g=!1){return TY(s.text,c,g)}function jFe(s){return!!ji(s,W3)}function wY(s){return!!(Gh(s)&&s.exportClause&&tk(s.exportClause)&&lv(s.exportClause.name))}function HD(s){return s.kind===11?s.text:Bc(s.escapedText)}function CF(s){return s.kind===11?Ap(s.text):s.escapedText}function lv(s){return(s.kind===11?s.text:s.escapedText)==="default"}function TY(s,c,g=!1){if(sf(c))return"";let d=s.substring(g?c.pos:Yu(s,c.pos),c.end);return jFe(c)&&(d=d.split(/\r\n|\n|\r/).map(h=>h.replace(/^\s*\*/,"").trimStart()).join(` -`)),d}function xp(s,c=!1){return mF(ms(s),s,c)}function Aye(s){return s.pos}function fP(s,c){return Wc(s,c,Aye,Zt)}function tA(s){let c=s.emitNode;return c&&c.flags||0}function g1(s){let c=s.emitNode;return c&&c.internalFlags||0}var Hre=FA(()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Iterator:new Map(Object.entries({es2015:E})),AsyncIterator:new Map(Object.entries({es2015:E})),ArrayBuffer:new Map(Object.entries({es2024:["maxByteLength","resizable","resize","detached","transfer","transferToFixedLength"]})),Atomics:new Map(Object.entries({es2017:["add","and","compareExchange","exchange","isLockFree","load","or","store","sub","wait","notify","xor"],es2024:["waitAsync"],esnext:["pause"]})),SharedArrayBuffer:new Map(Object.entries({es2017:["byteLength","slice"],es2024:["growable","maxByteLength","grow"]})),AsyncIterable:new Map(Object.entries({es2018:E})),AsyncIterableIterator:new Map(Object.entries({es2018:E})),AsyncGenerator:new Map(Object.entries({es2018:E})),AsyncGeneratorFunction:new Map(Object.entries({es2018:E})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"],es2024:["unicodeSets"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"],esnext:["fromAsync"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"],es2024:["groupBy"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],esnext:["f16round"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),MapConstructor:new Map(Object.entries({es2024:["groupBy"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"],esnext:["union","intersection","difference","symmetricDifference","isSubsetOf","isSupersetOf","isDisjointFrom"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"],es2024:["withResolvers"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"],es2024:["isWellFormed","toWellFormed"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:E,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"],esnext:["metadata","dispose","asyncDispose"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],esnext:["setFloat16","getFloat16"]})),BigInt:new Map(Object.entries({es2020:E})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float16Array:new Map(Object.entries({esnext:E})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigInt64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),BigUint64Array:new Map(Object.entries({es2020:E,es2022:["at"],es2023:["findLastIndex","findLast","toReversed","toSorted","toSpliced","with"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),A7=(s=>(s[s.None=0]="None",s[s.NeverAsciiEscape=1]="NeverAsciiEscape",s[s.JsxAttributeEscape=2]="JsxAttributeEscape",s[s.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",s[s.AllowNumericSeparator=8]="AllowNumericSeparator",s))(A7||{});function Sge(s,c,g){if(c&&zFe(s,g))return mF(c,s);switch(s.kind){case 11:{let d=g&2?Wye:g&1||tA(s)&16777216?YT:Ene;return s.singleQuote?"'"+d(s.text,39)+"'":'"'+d(s.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=g&1||tA(s)&16777216?YT:Ene,h=s.rawText??Vye(d(s.text,96));switch(s.kind){case 15:return"`"+h+"`";case 16:return"`"+h+"${";case 17:return"}"+h+"${";case 18:return"}"+h+"`"}break}case 9:case 10:return s.text;case 14:return g&4&&s.isUnterminated?s.text+(s.text.charCodeAt(s.text.length-1)===92?" /":"/"):s.text}return pe.fail(`Literal kind '${s.kind}' not accounted for.`)}function zFe(s,c){if(sp(s)||!s.parent||c&4&&s.isUnterminated)return!1;if(mC(s)){if(s.numericLiteralFlags&26656)return!1;if(s.numericLiteralFlags&512)return!!(c&8)}return!eQ(s)}function vge(s){return Xs(s)?`"${YT(s)}"`:""+s}function vw(s){return gp(s).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function ZJ(s){return(dm(s)&7)!==0||Yre(s)}function Yre(s){let c=Rw(s);return c.kind===261&&c.parent.kind===300}function s_(s){return xh(s)&&(s.name.kind===11||vB(s))}function RY(s){return xh(s)&&s.name.kind===11}function Qre(s){return xh(s)&&Zg(s.name)}function Bge(s){return xh(s)||Ir(s)}function NY(s){return wge(s.valueDeclaration)}function wge(s){return!!s&&s.kind===268&&!s.body}function Tge(s){return s.kind===308||s.kind===268||s3(s)}function vB(s){return!!(s.flags&2048)}function _F(s){return s_(s)&&Xre(s)}function Xre(s){switch(s.parent.kind){case 308:return xm(s.parent);case 269:return s_(s.parent.parent)&&ll(s.parent.parent.parent)&&!xm(s.parent.parent.parent)}return!1}function LJ(s){var c;return(c=s.declarations)==null?void 0:c.find(g=>!_F(g)&&!(xh(g)&&vB(g)))}function qFe(s){return s===1||100<=s&&s<=199}function g3(s,c){return xm(s)||qFe(i0(c))&&!!s.commonJsModuleIndicator}function Jre(s,c){switch(s.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return s.isDeclarationFile?!1:!!(a_(c,"alwaysStrict")||zPt(s.statements)||xm(s)||sS(c))}function VJ(s){return!!(s.flags&33554432)||Ga(s,128)}function PJ(s,c){switch(s.kind){case 308:case 270:case 300:case 268:case 249:case 250:case 251:case 177:case 175:case 178:case 179:case 263:case 219:case 220:case 173:case 176:return!0;case 242:return!s3(c)}return!1}function Ure(s){switch(pe.type(s),s.kind){case 339:case 347:case 324:return!0;default:return Kre(s)}}function Kre(s){switch(pe.type(s),s.kind){case 180:case 181:case 174:case 182:case 185:case 186:case 318:case 264:case 232:case 265:case 266:case 346:case 263:case 175:case 177:case 178:case 179:case 219:case 220:return!0;default:return!1}}function IP(s){switch(s.kind){case 273:case 272:return!0;default:return!1}}function Rge(s){return IP(s)||CP(s)}function d7(s){return IP(s)||nne(s)}function p7(s){switch(s.kind){case 273:case 272:case 244:case 264:case 263:case 268:case 266:case 265:case 267:return!0;default:return!1}}function Nge(s){return DY(s)||xh(s)||Um(s)||Up(s)}function DY(s){return IP(s)||Gh(s)}function f7(s){return ji(s.parent,c=>!!(het(c)&1))}function tS(s){return ji(s.parent,c=>PJ(c,c.parent))}function Dge(s,c){let g=tS(s);for(;g;)c(g),g=tS(g)}function Wd(s){return!s||DJ(s)===0?"(Missing)":xp(s)}function kge(s){return s.declaration?Wd(s.declaration.parameters[0].name):void 0}function kY(s){return s.kind===168&&!d1(s.expression)}function xY(s){var c;switch(s.kind){case 80:case 81:return(c=s.emitNode)!=null&&c.autoGenerate?void 0:s.escapedText;case 11:case 9:case 10:case 15:return Ap(s.text);case 168:return d1(s.expression)?Ap(s.expression.text):void 0;case 296:return oS(s);default:return pe.assertNever(s)}}function hP(s){return pe.checkDefined(xY(s))}function oy(s){switch(s.kind){case 110:return"this";case 81:case 80:return DJ(s)===0?Vo(s):xp(s);case 167:return oy(s.left)+"."+oy(s.right);case 212:return Ir(s.name)||p(s.name)?oy(s.expression)+"."+oy(s.name):pe.assertNever(s.name);case 312:return oy(s.left)+"#"+oy(s.right);case 296:return oy(s.namespace)+":"+oy(s.name);default:return pe.assertNever(s)}}function mo(s,c,...g){let d=ms(s);return _E(d,s,c,...g)}function A3(s,c,g,...d){let h=Yu(s.text,c.pos);return qh(s,h,c.end-h,g,...d)}function _E(s,c,g,...d){let h=qa(s,c);return qh(s,h.start,h.length,g,...d)}function Bw(s,c,g,d){let h=qa(s,c);return ze(s,h.start,h.length,g,d)}function ie(s,c,g,d){let h=Yu(s.text,c.pos);return ze(s,h,c.end-h,g,d)}function he(s,c,g){pe.assertGreaterThanOrEqual(c,0),pe.assertGreaterThanOrEqual(g,0),pe.assertLessThanOrEqual(c,s.length),pe.assertLessThanOrEqual(c+g,s.length)}function ze(s,c,g,d,h){return he(s.text,c,g),{file:s,start:c,length:g,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:h,canonicalHead:d.canonicalHead}}function Ut(s,c,g){return{file:s,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:g}}function Qr(s){return typeof s.messageText=="string"?{code:s.code,category:s.category,messageText:s.messageText,next:s.next}:s.messageText}function kn(s,c,g){return{file:s,start:c.pos,length:c.end-c.pos,code:g.code,category:g.category,messageText:g.message}}function Fi(s,...c){return{code:s.code,messageText:XY(s,...c)}}function rs(s,c){let g=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);g.scan();let d=g.getTokenStart();return wA(d,g.getTokenEnd())}function qs(s,c){let g=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,c);return g.scan(),g.getToken()}function vc(s,c){let g=Yu(s.text,c.pos);if(c.body&&c.body.kind===242){let{line:d}=Ra(s,c.body.pos),{line:h}=Ra(s,c.body.end);if(d0?c.statements[0].pos:c.end;return wA(_,S)}case 254:case 230:{let _=Yu(s.text,c.pos);return rs(s,_)}case 239:{let _=Yu(s.text,c.expression.end);return rs(s,_)}case 351:{let _=Yu(s.text,c.tagName.pos);return rs(s,_)}case 177:{let _=c,S=Yu(s.text,_.pos),R=wb(s.languageVersion,!0,s.languageVariant,s.text,void 0,S),T=R.scan();for(;T!==137&&T!==1;)T=R.scan();let W=R.getTokenEnd();return wA(S,W)}}if(g===void 0)return rs(s,c.pos);pe.assert(!tR(g));let d=sf(g),h=d||KL(c)?g.pos:Yu(s.text,g.pos);return d?(pe.assert(h===g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h===g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(pe.assert(h>=g.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),pe.assert(h<=g.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),wA(h,g.end)}function fc(s){return s.kind===308&&!vl(s)}function vl(s){return(s.externalModuleIndicator||s.commonJsModuleIndicator)!==void 0}function Zu(s){return s.scriptKind===6}function VA(s){return!!(Hc(s)&4096)}function hf(s){return!!(Hc(s)&8&&!Ve(s,s.parent))}function Sd(s){return(dm(s)&7)===6}function tI(s){return(dm(s)&7)===4}function rI(s){return(dm(s)&7)===2}function OT(s){let c=dm(s)&7;return c===2||c===4||c===6}function rS(s){return(dm(s)&7)===1}function Dy(s){return s.kind===214&&s.expression.kind===108}function Up(s){if(s.kind!==214)return!1;let c=s.expression;return c.kind===102||Du(c)&&c.keywordToken===102&&c.name.escapedText==="defer"}function uv(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}function ky(s){return Um(s)&&EE(s.argument)&&Zg(s.argument.literal)}function nS(s){return s.kind===245&&s.expression.kind===11}function jre(s){return!!(tA(s)&2097152)}function xge(s){return jre(s)&&ih(s)}function tVt(s){return Ir(s.name)&&!s.initializer}function Gge(s){return jre(s)&&Ch(s)&&ue(s.declarationList.declarations,tVt)}function Fge(s,c){return s.kind!==12?fE(c.text,s.pos):void 0}function dye(s,c){let g=s.kind===170||s.kind===169||s.kind===219||s.kind===220||s.kind===218||s.kind===261||s.kind===282?Nn(n2(c,s.pos),fE(c,s.pos)):fE(c,s.pos);return Me(g,d=>d.end<=s.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var rVt=/^\/\/\/\s*/,nVt=/^\/\/\/\s*/,iVt=/^\/\/\/\s*/,sVt=/^\/\/\/\s*/,oVt=/^\/\/\/\s*/,aVt=/^\/\/\/\s*/;function ww(s){if(183<=s.kind&&s.kind<=206)return!0;switch(s.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return s.parent.kind!==223;case 234:return fqe(s);case 169:return s.parent.kind===201||s.parent.kind===196;case 80:(s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s)&&(s=s.parent),pe.assert(s.kind===80||s.kind===167||s.kind===212,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 167:case 212:case 110:{let{parent:c}=s;if(c.kind===187)return!1;if(c.kind===206)return!c.isTypeOf;if(183<=c.kind&&c.kind<=206)return!0;switch(c.kind){case 234:return fqe(c);case 169:return s===c.constraint;case 346:return s===c.constraint;case 173:case 172:case 170:case 261:return s===c.type;case 263:case 219:case 220:case 177:case 175:case 174:case 178:case 179:return s===c.type;case 180:case 181:case 182:return s===c.type;case 217:return s===c.type;case 214:case 215:case 216:return k(c.typeArguments,s)}}}return!1}function fqe(s){return t9e(s.parent)||bz(s.parent)||h1(s.parent)&&!dAe(s)}function yF(s,c){return g(s);function g(d){switch(d.kind){case 254:return c(d);case 270:case 242:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 297:case 298:case 257:case 259:case 300:return Lu(d,g)}}}function $Fe(s,c){return g(s);function g(d){switch(d.kind){case 230:c(d);let h=d.expression;h&&g(h);return;case 267:case 265:case 268:case 266:return;default:if(bu(d)){if(d.name&&d.name.kind===168){g(d.name.expression);return}}else ww(d)||Lu(d,g)}}}function pye(s){return s&&s.kind===189?s.elementType:s&&s.kind===184?Ps(s.typeArguments):void 0}function Zge(s){switch(s.kind){case 265:case 264:case 232:case 188:return s.members;case 211:return s.properties}}function I7(s){if(s)switch(s.kind){case 209:case 307:case 170:case 304:case 173:case 172:case 305:case 261:return!0}return!1}function h7(s){return s.parent.kind===262&&s.parent.parent.kind===244}function fye(s){return wo(s)?og(s.parent)&&fo(s.parent.parent)&&nI(s.parent.parent)===2||Lge(s.parent):!1}function Lge(s){return wo(s)?fo(s)&&nI(s)===1:!1}function eZe(s){return(nc(s)?rI(s)&&Ir(s.name)&&h7(s):pi(s)?b3(s)&&zh(s):ss(s)&&b3(s))||Lge(s)}function tZe(s){switch(s.kind){case 175:case 174:case 177:case 178:case 179:case 263:case 219:return!0}return!1}function Iye(s,c){for(;;){if(c&&c(s),s.statement.kind!==257)return s.statement;s=s.statement}}function mP(s){return s&&s.kind===242&&bu(s.parent)}function a2(s){return s&&s.kind===175&&s.parent.kind===211}function Vge(s){return(s.kind===175||s.kind===178||s.kind===179)&&(s.parent.kind===211||s.parent.kind===232)}function rZe(s){return s&&s.kind===1}function nZe(s){return s&&s.kind===0}function WJ(s,c,g,d){return F(s?.properties,h=>{if(!fm(h))return;let _=xY(h.name);return c===_||d&&d===_?g(h):void 0})}function m7(s){if(s&&s.statements.length){let c=s.statements[0].expression;return Gs(c,og)}}function Pge(s,c,g){return zre(s,c,d=>OI(d.initializer)?de(d.initializer.elements,h=>Zg(h)&&h.text===g):void 0)}function zre(s,c,g){return WJ(m7(s),c,g)}function A1(s){return ji(s.parent,bu)}function Wge(s){return ji(s.parent,kd)}function hC(s){return ji(s.parent,xa)}function iZe(s){return ji(s.parent,c=>xa(c)||bu(c)?"quit":fl(c))}function qre(s){return ji(s.parent,s3)}function Oge(s){let c=ji(s.parent,g=>xa(g)?"quit":So(g));return c&&xa(c.parent)?hC(c.parent):hC(c??s)}function r0(s,c,g){for(pe.assert(s.kind!==308);;){if(s=s.parent,!s)return pe.fail();switch(s.kind){case 168:if(g&&xa(s.parent.parent))return s;s=s.parent.parent;break;case 171:s.parent.kind===170&&PI(s.parent.parent)?s=s.parent.parent:PI(s.parent)&&(s=s.parent);break;case 220:if(!c)continue;case 263:case 219:case 268:case 176:case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 180:case 181:case 182:case 267:case 308:return s}}}function sZe(s){switch(s.kind){case 220:case 263:case 219:case 173:return!0;case 242:switch(s.parent.kind){case 177:case 175:case 178:case 179:return!0;default:return!1}default:return!1}}function Mge(s){Ir(s)&&(pm(s.parent)||ih(s.parent))&&s.parent.name===s&&(s=s.parent);let c=r0(s,!0,!1);return ll(c)}function oZe(s){let c=r0(s,!1,!1);if(c)switch(c.kind){case 177:case 263:case 219:return c}}function C7(s,c){for(;;){if(s=s.parent,!s)return;switch(s.kind){case 168:s=s.parent;break;case 263:case 219:case 220:if(!c)continue;case 173:case 172:case 175:case 174:case 177:case 178:case 179:case 176:return s;case 171:s.parent.kind===170&&PI(s.parent.parent)?s=s.parent.parent:PI(s.parent)&&(s=s.parent);break}}}function ZL(s){if(s.kind===219||s.kind===220){let c=s,g=s.parent;for(;g.kind===218;)c=g,g=g.parent;if(g.kind===214&&g.expression===c)return g}}function xy(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===108}function $re(s){let c=s.kind;return(c===212||c===213)&&s.expression.kind===110}function Hge(s){var c;return!!s&&nc(s)&&((c=s.initializer)==null?void 0:c.kind)===110}function aZe(s){return!!s&&(a0(s)||fm(s))&&fo(s.parent.parent)&&s.parent.parent.operatorToken.kind===64&&s.parent.parent.right.kind===110}function ene(s){switch(s.kind){case 184:return s.typeName;case 234:return Od(s.expression)?s.expression:void 0;case 80:case 167:return s}}function Yge(s){switch(s.kind){case 216:return s.tag;case 287:case 286:return s.tagName;case 227:return s.right;case 290:return s;default:return s.expression}}function OJ(s,c,g,d){if(s&&rh(c)&&p(c.name))return!1;switch(c.kind){case 264:return!0;case 232:return!s;case 173:return g!==void 0&&(s?pm(g):xa(g)&&!wP(c)&&!jye(c));case 178:case 179:case 175:return c.body!==void 0&&g!==void 0&&(s?pm(g):xa(g));case 170:return s?g!==void 0&&g.body!==void 0&&(g.kind===177||g.kind===175||g.kind===179)&&vP(g)!==c&&d!==void 0&&d.kind===264:!1}return!1}function MJ(s,c,g,d){return p1(c)&&OJ(s,c,g,d)}function tne(s,c,g,d){return MJ(s,c,g,d)||HJ(s,c,g)}function HJ(s,c,g){switch(c.kind){case 264:return jt(c.members,d=>tne(s,d,c,g));case 232:return!s&&jt(c.members,d=>tne(s,d,c,g));case 175:case 179:case 177:return jt(c.parameters,d=>MJ(s,d,c,g));default:return!1}}function Rx(s,c){if(MJ(s,c))return!0;let g=lN(c);return!!g&&HJ(s,g,c)}function hye(s,c,g){let d;if(yB(c)){let{firstAccessor:h,secondAccessor:_,setAccessor:S}=BP(g.members,c),R=p1(h)?h:_&&p1(_)?_:void 0;if(!R||c!==R)return!1;d=S?.parameters}else uu(c)&&(d=c.parameters);if(MJ(s,c,g))return!0;if(d){for(let h of d)if(!SF(h)&&MJ(s,h,c,g))return!0}return!1}function mye(s){if(s.textSourceNode){switch(s.textSourceNode.kind){case 11:return mye(s.textSourceNode);case 15:return s.text===""}return!1}return s.text===""}function YJ(s){let{parent:c}=s;return c.kind===287||c.kind===286||c.kind===288?c.tagName===s:!1}function MT(s){switch(s.kind){case 108:case 106:case 112:case 97:case 14:case 210:case 211:case 212:case 213:case 214:case 215:case 216:case 235:case 217:case 239:case 236:case 218:case 219:case 232:case 220:case 223:case 221:case 222:case 225:case 226:case 227:case 228:case 231:case 229:case 233:case 285:case 286:case 289:case 230:case 224:return!0;case 237:return!Up(s.parent)||s.parent.expression!==s;case 234:return!h1(s.parent)&&!bz(s.parent);case 167:for(;s.parent.kind===167;)s=s.parent;return s.parent.kind===187||Tx(s.parent)||lde(s.parent)||O3(s.parent)||YJ(s);case 312:for(;O3(s.parent);)s=s.parent;return s.parent.kind===187||Tx(s.parent)||lde(s.parent)||O3(s.parent)||YJ(s);case 81:return fo(s.parent)&&s.parent.left===s&&s.parent.operatorToken.kind===103;case 80:if(s.parent.kind===187||Tx(s.parent)||lde(s.parent)||O3(s.parent)||YJ(s))return!0;case 9:case 10:case 11:case 15:case 110:return rne(s);default:return!1}}function rne(s){let{parent:c}=s;switch(c.kind){case 261:case 170:case 173:case 172:case 307:case 304:case 209:return c.initializer===s;case 245:case 246:case 247:case 248:case 254:case 255:case 256:case 297:case 258:return c.expression===s;case 249:let g=c;return g.initializer===s&&g.initializer.kind!==262||g.condition===s||g.incrementor===s;case 250:case 251:let d=c;return d.initializer===s&&d.initializer.kind!==262||d.expression===s;case 217:case 235:return s===c.expression;case 240:return s===c.expression;case 168:return s===c.expression;case 171:case 295:case 294:case 306:return!0;case 234:return c.expression===s&&!ww(c);case 305:return c.objectAssignmentInitializer===s;case 239:return s===c.expression;default:return MT(c)}}function Qge(s){for(;s.kind===167||s.kind===80;)s=s.parent;return s.kind===187}function cZe(s){return tk(s)&&!!s.parent.moduleSpecifier}function LL(s){return s.kind===272&&s.moduleReference.kind===284}function _7(s){return pe.assert(LL(s)),s.moduleReference.expression}function Cye(s){return CP(s)&&oU(s.initializer).arguments[0]}function d3(s){return s.kind===272&&s.moduleReference.kind!==284}function aN(s){return s?.kind===308}function n0(s){return wo(s)}function wo(s){return!!s&&!!(s.flags&524288)}function Xge(s){return!!s&&!!(s.flags&134217728)}function Jge(s){return!Zu(s)}function GY(s){return!!s&&!!(s.flags&16777216)}function Uge(s){return nh(s)&&Ir(s.typeName)&&s.typeName.escapedText==="Object"&&s.typeArguments&&s.typeArguments.length===2&&(s.typeArguments[0].kind===154||s.typeArguments[0].kind===150)}function ay(s,c){if(s.kind!==214)return!1;let{expression:g,arguments:d}=s;if(g.kind!==80||g.escapedText!=="require"||d.length!==1)return!1;let h=d[0];return!c||mA(h)}function y7(s){return Iqe(s,!1)}function CP(s){return Iqe(s,!0)}function lZe(s){return hg(s)&&CP(s.parent.parent)}function Iqe(s,c){return nc(s)&&!!s.initializer&&ay(c?oU(s.initializer):s.initializer,!0)}function nne(s){return Ch(s)&&s.declarationList.declarations.length>0&&ue(s.declarationList.declarations,c=>y7(c))}function ine(s){return s===39||s===34}function sne(s,c){return mF(c,s).charCodeAt(0)===34}function b7(s){return fo(s)||_p(s)||Ir(s)||Zl(s)}function one(s){return wo(s)&&s.initializer&&fo(s.initializer)&&(s.initializer.operatorToken.kind===57||s.initializer.operatorToken.kind===61)&&s.name&&Od(s.name)&&QJ(s.name,s.initializer.left)?s.initializer.right:s.initializer}function E7(s){let c=one(s);return c&&VL(c,wF(s.name))}function cVt(s,c){return F(s.properties,g=>fm(g)&&Ir(g.name)&&g.name.escapedText==="value"&&g.initializer&&VL(g.initializer,c))}function FY(s){if(s&&s.parent&&fo(s.parent)&&s.parent.operatorToken.kind===64){let c=wF(s.parent.left);return VL(s.parent.right,c)||lVt(s.parent.left,s.parent.right,c)}if(s&&Zl(s)&&f3(s)){let c=cVt(s.arguments[2],s.arguments[1].text==="prototype");if(c)return c}}function VL(s,c){if(Zl(s)){let g=QA(s.expression);return g.kind===219||g.kind===220?s:void 0}if(s.kind===219||s.kind===232||s.kind===220||og(s)&&(s.properties.length===0||c))return s}function lVt(s,c,g){let d=fo(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&VL(c.right,g);if(d&&QJ(s,c.left))return d}function uZe(s){let c=nc(s.parent)?s.parent.name:fo(s.parent)&&s.parent.operatorToken.kind===64?s.parent.left:void 0;return c&&VL(s.right,wF(c))&&Od(c)&&QJ(c,s.left)}function _ye(s){if(fo(s.parent)){let c=(s.parent.operatorToken.kind===57||s.parent.operatorToken.kind===61)&&fo(s.parent.parent)?s.parent.parent:s.parent;if(c.operatorToken.kind===64&&Ir(c.left))return c.left}else if(nc(s.parent))return s.parent.name}function QJ(s,c){return Tw(s)&&Tw(c)?c2(s)===c2(c):_w(s)&&gZe(c)&&(c.expression.kind===110||Ir(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?QJ(s,cne(c)):gZe(s)&&gZe(c)?YD(s)===YD(c)&&QJ(s.expression,c.expression):!1}function ane(s){for(;Jm(s,!0);)s=s.right;return s}function p3(s){return Ir(s)&&s.escapedText==="exports"}function _P(s){return Ir(s)&&s.escapedText==="module"}function cN(s){return(jo(s)||yye(s))&&_P(s.expression)&&YD(s)==="exports"}function nI(s){let c=uVt(s);return c===5||wo(s)?c:0}function f3(s){return B(s.arguments)===3&&jo(s.expression)&&Ir(s.expression.expression)&&Vo(s.expression.expression)==="Object"&&Vo(s.expression.name)==="defineProperty"&&d1(s.arguments[1])&&I3(s.arguments[0],!0)}function gZe(s){return jo(s)||yye(s)}function yye(s){return Yg(s)&&d1(s.argumentExpression)}function yP(s,c){return jo(s)&&(!c&&s.expression.kind===110||Ir(s.name)&&I3(s.expression,!0))||Kge(s,c)}function Kge(s,c){return yye(s)&&(!c&&s.expression.kind===110||Od(s.expression)||yP(s.expression,!0))}function I3(s,c){return Od(s)||yP(s,c)}function cne(s){return jo(s)?s.name:s.argumentExpression}function uVt(s){if(Zl(s)){if(!f3(s))return 0;let c=s.arguments[0];return p3(c)||cN(c)?8:yP(c)&&YD(c)==="prototype"?9:7}return s.operatorToken.kind!==64||!_p(s.left)||gVt(ane(s))?0:I3(s.left.expression,!0)&&YD(s.left)==="prototype"&&og(bye(s))?6:XJ(s.left)}function gVt(s){return qT(s)&&mC(s.expression)&&s.expression.text==="0"}function jge(s){if(jo(s))return s.name;let c=QA(s.argumentExpression);return mC(c)||mA(c)?c:s}function YD(s){let c=jge(s);if(c){if(Ir(c))return c.escapedText;if(mA(c)||mC(c))return Ap(c.text)}}function XJ(s){if(s.expression.kind===110)return 4;if(cN(s))return 2;if(I3(s.expression,!0)){if(wF(s.expression))return 3;let c=s;for(;!Ir(c.expression);)c=c.expression;let g=c.expression;if((g.escapedText==="exports"||g.escapedText==="module"&&YD(c)==="exports")&&yP(s))return 1;if(I3(s,!0)||Yg(s)&&rAe(s))return 5}return 0}function bye(s){for(;fo(s.right);)s=s.right;return s.right}function lne(s){return fo(s)&&nI(s)===3}function Eye(s){return wo(s)&&s.parent&&s.parent.kind===245&&(!Yg(s)||yye(s))&&!!ov(s.parent)}function S7(s,c){let{valueDeclaration:g}=s;(!g||!(c.flags&33554432&&!wo(c)&&!(g.flags&33554432))&&b7(g)&&!b7(c)||g.kind!==c.kind&&Bge(g))&&(s.valueDeclaration=c)}function AZe(s){if(!s||!s.valueDeclaration)return!1;let c=s.valueDeclaration;return c.kind===263||nc(c)&&c.initializer&&bu(c.initializer)}function dZe(s){switch(s?.kind){case 261:case 209:case 273:case 279:case 272:case 274:case 281:case 275:case 282:case 277:case 206:return!0}return!1}function ZY(s){var c,g;switch(s.kind){case 261:case 209:return(c=ji(s.initializer,d=>ay(d,!0)))==null?void 0:c.arguments[0];case 273:case 279:case 352:return Gs(s.moduleSpecifier,mA);case 272:return Gs((g=Gs(s.moduleReference,ZF))==null?void 0:g.expression,mA);case 274:case 281:return Gs(s.parent.moduleSpecifier,mA);case 275:case 282:return Gs(s.parent.parent.moduleSpecifier,mA);case 277:return Gs(s.parent.parent.parent.moduleSpecifier,mA);case 206:return ky(s)?s.argument.literal:void 0;default:pe.assertNever(s)}}function v7(s){return B7(s)||pe.failBadSyntaxKind(s.parent)}function B7(s){switch(s.parent.kind){case 273:case 279:case 352:return s.parent;case 284:return s.parent.parent;case 214:return Up(s.parent)||ay(s.parent,!1)?s.parent:void 0;case 202:if(!Zg(s))break;return Gs(s.parent.parent,Um);default:return}}function une(s,c){return!!c.rewriteRelativeImportExtensions&&Ip(s)&&!PC(s)&&w3(s)}function LY(s){switch(s.kind){case 273:case 279:case 352:return s.moduleSpecifier;case 272:return s.moduleReference.kind===284?s.moduleReference.expression:void 0;case 206:return ky(s)?s.argument.literal:void 0;case 214:return s.arguments[0];case 268:return s.name.kind===11?s.name:void 0;default:return pe.assertNever(s)}}function JJ(s){switch(s.kind){case 273:return s.importClause&&Gs(s.importClause.namedBindings,Zx);case 272:return s;case 279:return s.exportClause&&Gs(s.exportClause,tk);default:return pe.assertNever(s)}}function h3(s){return(s.kind===273||s.kind===352)&&!!s.importClause&&!!s.importClause.name}function pZe(s,c){if(s.name){let g=c(s);if(g)return g}if(s.namedBindings){let g=Zx(s.namedBindings)?c(s.namedBindings):F(s.namedBindings.elements,c);if(g)return g}}function VY(s){switch(s.kind){case 170:case 175:case 174:case 305:case 304:case 173:case 172:return s.questionToken!==void 0}return!1}function PY(s){let c=hie(s)?Nc(s.parameters):void 0,g=Gs(c&&c.name,Ir);return!!g&&g.escapedText==="new"}function iS(s){return s.kind===347||s.kind===339||s.kind===341}function gne(s){return iS(s)||FB(s)}function fZe(s){return VC(s)&&fo(s.expression)&&s.expression.operatorToken.kind===64?ane(s.expression):void 0}function hqe(s){return VC(s)&&fo(s.expression)&&nI(s.expression)!==0&&fo(s.expression.right)&&(s.expression.right.operatorToken.kind===57||s.expression.right.operatorToken.kind===61)?s.expression.right.right:void 0}function mqe(s){switch(s.kind){case 244:let c=m3(s);return c&&c.initializer;case 173:return s.initializer;case 304:return s.initializer}}function m3(s){return Ch(s)?Nc(s.declarationList.declarations):void 0}function Cqe(s){return xh(s)&&s.body&&s.body.kind===268?s.body:void 0}function UJ(s){if(s.kind>=244&&s.kind<=260)return!0;switch(s.kind){case 80:case 110:case 108:case 167:case 237:case 213:case 212:case 209:case 219:case 220:case 175:case 178:case 179:return!0;default:return!1}}function Ane(s){switch(s.kind){case 220:case 227:case 242:case 253:case 180:case 297:case 264:case 232:case 176:case 177:case 186:case 181:case 252:case 260:case 247:case 213:case 243:case 1:case 267:case 307:case 278:case 279:case 282:case 245:case 250:case 251:case 249:case 263:case 219:case 185:case 178:case 80:case 246:case 273:case 272:case 182:case 265:case 318:case 324:case 257:case 175:case 174:case 268:case 203:case 271:case 211:case 170:case 218:case 212:case 304:case 173:case 172:case 254:case 241:case 179:case 305:case 306:case 256:case 258:case 259:case 266:case 169:case 261:case 244:case 248:case 255:return!0;default:return!1}}function Sye(s,c){let g;I7(s)&&WT(s)&&Xm(s.initializer)&&(g=Or(g,_qe(s,s.initializer.jsDoc)));let d=s;for(;d&&d.parent;){if(Xm(d)&&(g=Or(g,_qe(s,d.jsDoc))),d.kind===170){g=Or(g,(c?uJ:vL)(d));break}if(d.kind===169){g=Or(g,(c?U6:r3)(d));break}d=vye(d)}return g||E}function _qe(s,c){let g=Ei(c);return er(c,d=>{if(d===g){let h=Me(d.tags,_=>yqe(s,_));return d.tags===h?[d]:h}else return Me(d.tags,mie)})}function yqe(s,c){return!(ude(c)||r9e(c))||!c.parent||!tR(c.parent)||!gI(c.parent.parent)||c.parent.parent===s}function vye(s){let c=s.parent;if(c.kind===304||c.kind===278||c.kind===173||c.kind===245&&s.kind===212||c.kind===254||Cqe(c)||Jm(s))return c;if(c.parent&&(m3(c.parent)===s||Jm(c)))return c.parent;if(c.parent&&c.parent.parent&&(m3(c.parent.parent)||mqe(c.parent.parent)===s||hqe(c.parent.parent)))return c.parent.parent}function dne(s){if(s.symbol)return s.symbol;if(!Ir(s.name))return;let c=s.name.escapedText,g=PL(s);if(!g)return;let d=de(g.parameters,h=>h.name.kind===80&&h.name.escapedText===c);return d&&d.symbol}function zge(s){if(tR(s.parent)&&s.parent.tags){let c=de(s.parent.tags,iS);if(c)return c}return PL(s)}function Bye(s){return dJ(s,mie)}function PL(s){let c=WL(s);if(c)return ss(c)&&c.type&&bu(c.type)?c.type:bu(c)?c:void 0}function WL(s){let c=bP(s);if(c)return hqe(c)||fZe(c)||mqe(c)||m3(c)||Cqe(c)||c}function bP(s){let c=KJ(s);if(!c)return;let g=c.parent;if(g&&g.jsDoc&&c===li(g.jsDoc))return g}function KJ(s){return ji(s.parent,tR)}function IZe(s){let c=s.name.escapedText,{typeParameters:g}=s.parent.parent.parent;return g&&de(g,d=>d.name.escapedText===c)}function bqe(s){return!!s.typeArguments}var hZe=(s=>(s[s.None=0]="None",s[s.Definite=1]="Definite",s[s.Compound=2]="Compound",s))(hZe||{});function mZe(s){let c=s.parent;for(;;){switch(c.kind){case 227:let g=c,d=g.operatorToken.kind;return UD(d)&&g.left===s?g:void 0;case 225:case 226:let h=c,_=h.operator;return _===46||_===47?h:void 0;case 250:case 251:let S=c;return S.initializer===s?S:void 0;case 218:case 210:case 231:case 236:s=c;break;case 306:s=c.parent;break;case 305:if(c.name!==s)return;s=c.parent;break;case 304:if(c.name===s)return;s=c.parent;break;default:return}c=s.parent}}function QD(s){let c=mZe(s);if(!c)return 0;switch(c.kind){case 227:let g=c.operatorToken.kind;return g===64||V7(g)?1:2;case 225:case 226:return 2;case 250:case 251:return 1}}function bF(s){return!!mZe(s)}function AVt(s){let c=QA(s.right);return c.kind===227&&k$e(c.operatorToken.kind)}function qge(s){let c=mZe(s);return!!c&&Jm(c,!0)&&AVt(c)}function CZe(s){switch(s.kind){case 242:case 244:case 255:case 246:case 256:case 270:case 297:case 298:case 257:case 249:case 250:case 251:case 247:case 248:case 259:case 300:return!0}return!1}function C3(s){return UA(s)||lA(s)||NL(s)||ih(s)||Tc(s)}function Eqe(s,c){for(;s&&s.kind===c;)s=s.parent;return s}function pne(s){return Eqe(s,197)}function gv(s){return Eqe(s,218)}function wye(s){let c;for(;s&&s.kind===197;)c=s,s=s.parent;return[c,s]}function w7(s){for(;fv(s);)s=s.type;return s}function QA(s,c){return HI(s,c?-2147483647:1)}function Tye(s){return s.kind!==212&&s.kind!==213?!1:(s=gv(s.parent),s&&s.kind===221)}function EP(s,c){for(;s;){if(s===c)return!0;s=s.parent}return!1}function HT(s){return!ll(s)&&!Nu(s)&&jh(s.parent)&&s.parent.name===s}function T7(s){let c=s.parent;switch(s.kind){case 11:case 15:case 9:if(Un(c))return c.parent;case 80:if(jh(c))return c.name===s?c:void 0;if(zi(c)){let g=c.parent;return cS(g)&&g.name===c?g:void 0}else{let g=c.parent;return fo(g)&&nI(g)!==0&&(g.left.symbol||g.symbol)&&Il(g)===s?g:void 0}case 81:return jh(c)&&c.name===s?c:void 0;default:return}}function fne(s){return d1(s)&&s.parent.kind===168&&jh(s.parent.parent)}function _Ze(s){let c=s.parent;switch(c.kind){case 173:case 172:case 175:case 174:case 178:case 179:case 307:case 304:case 212:return c.name===s;case 167:return c.right===s;case 209:case 277:return c.propertyName===s;case 282:case 292:case 286:case 287:case 288:return!0}return!1}function Rye(s){switch(s.parent.kind){case 274:case 277:case 275:case 282:case 278:case 272:case 281:return s.parent;case 167:do s=s.parent;while(s.parent.kind===167);return Rye(s)}}function $ge(s){return Od(s)||vd(s)}function Ine(s){let c=hne(s);return $ge(c)}function hne(s){return Cf(s)?s.expression:s.right}function yZe(s){return s.kind===305?s.name:s.kind===304?s.initializer:s.parent.right}function BB(s){let c=OL(s);if(c&&wo(s)){let g=K6(s);if(g)return g.class}return c}function OL(s){let c=mne(s.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function jJ(s){if(wo(s))return uY(s).map(c=>c.class);{let c=mne(s.heritageClauses,119);return c?.types}}function R7(s){return g_(s)?N7(s)||E:xa(s)&&Nn(J_(BB(s)),jJ(s))||E}function N7(s){let c=mne(s.heritageClauses,96);return c?c.types:void 0}function mne(s,c){if(s){for(let g of s)if(g.token===c)return g}}function ML(s,c){for(;s;){if(s.kind===c)return s;s=s.parent}}function v0(s){return 83<=s&&s<=166}function Nye(s){return 19<=s&&s<=79}function eAe(s){return v0(s)||Nye(s)}function tAe(s){return 128<=s&&s<=166}function Dye(s){return v0(s)&&!tAe(s)}function WY(s){let c=Ta(s);return c!==void 0&&Dye(c)}function kye(s){let c=iv(s);return!!c&&!tAe(c)}function zJ(s){return 2<=s&&s<=7}var bZe=(s=>(s[s.Normal=0]="Normal",s[s.Generator=1]="Generator",s[s.Async=2]="Async",s[s.Invalid=4]="Invalid",s[s.AsyncGenerator=3]="AsyncGenerator",s))(bZe||{});function SI(s){if(!s)return 4;let c=0;switch(s.kind){case 263:case 219:case 175:s.asteriskToken&&(c|=1);case 220:Ga(s,1024)&&(c|=2);break}return s.body||(c|=4),c}function D7(s){switch(s.kind){case 263:case 219:case 220:case 175:return s.body!==void 0&&s.asteriskToken===void 0&&Ga(s,1024)}return!1}function d1(s){return mA(s)||mC(s)}function Cne(s){return T0(s)&&(s.operator===40||s.operator===41)&&mC(s.operand)}function XD(s){let c=Il(s);return!!c&&rAe(c)}function rAe(s){if(!(s.kind===168||s.kind===213))return!1;let c=Yg(s)?QA(s.argumentExpression):s.expression;return!d1(c)&&!Cne(c)}function _3(s){switch(s.kind){case 80:case 81:return s.escapedText;case 11:case 15:case 9:case 10:return Ap(s.text);case 168:let c=s.expression;return d1(c)?Ap(c.text):Cne(c)?c.operator===41?Vi(c.operator)+c.operand.text:c.operand.text:void 0;case 296:return oS(s);default:return pe.assertNever(s)}}function Tw(s){switch(s.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function c2(s){return _w(s)?Vo(s):eR(s)?lz(s):s.text}function qJ(s){return _w(s)?s.escapedText:eR(s)?oS(s):Ap(s.text)}function _ne(s,c){return`__#${kg(s)}@${c}`}function k7(s){return Ac(s.escapedName,"__@")}function EZe(s){return Ac(s.escapedName,"__#")}function dVt(s){return Ir(s)?Vo(s)==="__proto__":Zg(s)&&s.text==="__proto__"}function nAe(s,c){switch(s=HI(s),s.kind){case 232:if(Oet(s))return!1;break;case 219:if(s.name)return!1;break;case 220:break;default:return!1}return typeof c=="function"?c(s):!0}function xye(s){switch(s.kind){case 304:return!dVt(s.name);case 305:return!!s.objectAssignmentInitializer;case 261:return Ir(s.name)&&!!s.initializer;case 170:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 209:return Ir(s.name)&&!!s.initializer&&!s.dotDotDotToken;case 173:return!!s.initializer;case 227:switch(s.operatorToken.kind){case 64:case 77:case 76:case 78:return Ir(s.left)}break;case 278:return!0}return!1}function kb(s,c){if(!xye(s))return!1;switch(s.kind){case 304:return nAe(s.initializer,c);case 305:return nAe(s.objectAssignmentInitializer,c);case 261:case 170:case 209:case 173:return nAe(s.initializer,c);case 227:return nAe(s.right,c);case 278:return nAe(s.expression,c)}}function Gye(s){return s.escapedText==="push"||s.escapedText==="unshift"}function HL(s){return Rw(s).kind===170}function Rw(s){for(;s.kind===209;)s=s.parent.parent;return s}function Fye(s){let c=s.kind;return c===177||c===219||c===263||c===220||c===175||c===178||c===179||c===268||c===308}function sp(s){return wB(s.pos)||wB(s.end)}var SZe=(s=>(s[s.Left=0]="Left",s[s.Right=1]="Right",s))(SZe||{});function Zye(s){let c=Sqe(s),g=s.kind===215&&s.arguments!==void 0;return Lye(s.kind,c,g)}function Lye(s,c,g){switch(s){case 215:return g?0:1;case 225:case 222:case 223:case 221:case 224:case 228:case 230:return 1;case 227:switch(c){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function x7(s){let c=Sqe(s),g=s.kind===215&&s.arguments!==void 0;return yne(s.kind,c,g)}function Sqe(s){return s.kind===227?s.operatorToken.kind:s.kind===225||s.kind===226?s.operator:s.kind}var vZe=(s=>(s[s.Comma=0]="Comma",s[s.Spread=1]="Spread",s[s.Yield=2]="Yield",s[s.Assignment=3]="Assignment",s[s.Conditional=4]="Conditional",s[s.LogicalOR=5]="LogicalOR",s[s.Coalesce=5]="Coalesce",s[s.LogicalAND=6]="LogicalAND",s[s.BitwiseOR=7]="BitwiseOR",s[s.BitwiseXOR=8]="BitwiseXOR",s[s.BitwiseAND=9]="BitwiseAND",s[s.Equality=10]="Equality",s[s.Relational=11]="Relational",s[s.Shift=12]="Shift",s[s.Additive=13]="Additive",s[s.Multiplicative=14]="Multiplicative",s[s.Exponentiation=15]="Exponentiation",s[s.Unary=16]="Unary",s[s.Update=17]="Update",s[s.LeftHandSide=18]="LeftHandSide",s[s.Member=19]="Member",s[s.Primary=20]="Primary",s[s.Highest=20]="Highest",s[s.Lowest=0]="Lowest",s[s.Invalid=-1]="Invalid",s))(vZe||{});function yne(s,c,g){switch(s){case 357:return 0;case 231:return 1;case 230:return 2;case 228:return 4;case 227:switch(c){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return bne(c)}case 217:case 236:case 225:case 222:case 223:case 221:case 224:return 16;case 226:return 17;case 214:return 18;case 215:return g?19:18;case 216:case 212:case 213:case 237:return 19;case 235:case 239:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 210:case 211:case 219:case 220:case 232:case 14:case 15:case 229:case 218:case 233:case 285:case 286:case 289:return 20;default:return-1}}function bne(s){switch(s){case 61:return 5;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function $J(s){return Me(s,c=>{switch(c.kind){case 295:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function EF(){let s=[],c=[],g=new Map,d=!1;return{add:_,lookup:h,getGlobalDiagnostics:S,getDiagnostics:R};function h(T){let W;if(T.file?W=g.get(T.file.fileName):W=s,!W)return;let V=Wc(W,T,Fl,$Ze);if(V>=0)return W[V];if(~V>0&&vAe(T,W[~V-1]))return W[~V-1]}function _(T){let W;T.file?(W=g.get(T.file.fileName),W||(W=[],g.set(T.file.fileName,W),Gc(c,T.file.fileName,Ca))):(d&&(d=!1,s=s.slice()),W=s),Gc(W,T,$Ze,vAe)}function S(){return d=!0,s}function R(T){if(T)return g.get(T)||[];let W=vt(c,V=>g.get(V));return s.length&&W.unshift(...s),W}}var vqe=/\$\{/g;function Vye(s){return s.replace(vqe,"\\${")}function BZe(s){return!!((s.templateFlags||0)&2048)}function Pye(s){return s&&!!(GP(s)?BZe(s):BZe(s.head)||jt(s.templateSpans,c=>BZe(c.literal)))}var pVt=/[\\"\u0000-\u001f\u2028\u2029\u0085]/g,G7=/[\\'\u0000-\u001f\u2028\u2029\u0085]/g,fVt=/\r\n|[\\`\u0000-\u0009\u000b-\u001f\u2028\u2029\u0085]/g,IVt=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function Bqe(s){return"\\u"+("0000"+s.toString(16).toUpperCase()).slice(-4)}function hVt(s,c,g){if(s.charCodeAt(0)===0){let d=g.charCodeAt(c+s.length);return d>=48&&d<=57?"\\x00":"\\0"}return IVt.get(s)||Bqe(s.charCodeAt(0))}function YT(s,c){let g=c===96?fVt:c===39?G7:pVt;return s.replace(g,hVt)}var wqe=/[^\u0000-\u007F]/g;function Ene(s,c){return s=YT(s,c),wqe.test(s)?s.replace(wqe,g=>Bqe(g.charCodeAt(0))):s}var mVt=/["\u0000-\u001f\u2028\u2029\u0085]/g,CVt=/['\u0000-\u001f\u2028\u2029\u0085]/g,_Vt=new Map(Object.entries({'"':""","'":"'"}));function yVt(s){return"&#x"+s.toString(16).toUpperCase()+";"}function bVt(s){return s.charCodeAt(0)===0?"�":_Vt.get(s)||yVt(s.charCodeAt(0))}function Wye(s,c){let g=c===39?CVt:mVt;return s.replace(g,bVt)}function l2(s){let c=s.length;return c>=2&&s.charCodeAt(0)===s.charCodeAt(c-1)&&EVt(s.charCodeAt(0))?s.substring(1,c-1):s}function EVt(s){return s===39||s===34||s===96}function eU(s){let c=s.charCodeAt(0);return c>=97&&c<=122||s.includes("-")}var Sne=[""," "];function iAe(s){let c=Sne[1];for(let g=Sne.length;g<=s;g++)Sne.push(Sne[g-1]+c);return Sne[s]}function vne(){return Sne[1].length}function Bne(s){var c,g,d,h,_,S=!1;function R(Ie){let _e=cA(Ie);_e.length>1?(h=h+_e.length-1,_=c.length-Ie.length+Ei(_e),d=_-c.length===0):d=!1}function T(Ie){Ie&&Ie.length&&(d&&(Ie=iAe(g)+Ie,d=!1),c+=Ie,R(Ie))}function W(Ie){Ie&&(S=!1),T(Ie)}function V(Ie){Ie&&(S=!0),T(Ie)}function M(){c="",g=0,d=!0,h=0,_=0,S=!1}function ee(Ie){Ie!==void 0&&(c+=Ie,R(Ie),S=!1)}function re(Ie){Ie&&Ie.length&&W(Ie)}function ge(Ie){(!d||Ie)&&(c+=s,h++,_=c.length,d=!0,S=!1)}return M(),{write:W,rawWrite:ee,writeLiteral:re,writeLine:ge,increaseIndent:()=>{g++},decreaseIndent:()=>{g--},getIndent:()=>g,getTextPos:()=>c.length,getLine:()=>h,getColumn:()=>d?g*vne():c.length-_,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>S,hasTrailingWhitespace:()=>!!c.length&&dc(c.charCodeAt(c.length-1)),clear:M,writeKeyword:W,writeOperator:W,writeParameter:W,writeProperty:W,writePunctuation:W,writeSpace:W,writeStringLiteral:W,writeSymbol:(Ie,_e)=>W(Ie),writeTrailingSemicolon:W,writeComment:V}}function Oye(s){let c=!1;function g(){c&&(s.writeTrailingSemicolon(";"),c=!1)}return{...s,writeTrailingSemicolon(){c=!0},writeLiteral(d){g(),s.writeLiteral(d)},writeStringLiteral(d){g(),s.writeStringLiteral(d)},writeSymbol(d,h){g(),s.writeSymbol(d,h)},writePunctuation(d){g(),s.writePunctuation(d)},writeKeyword(d){g(),s.writeKeyword(d)},writeOperator(d){g(),s.writeOperator(d)},writeParameter(d){g(),s.writeParameter(d)},writeSpace(d){g(),s.writeSpace(d)},writeProperty(d){g(),s.writeProperty(d)},writeComment(d){g(),s.writeComment(d)},writeLine(){g(),s.writeLine()},increaseIndent(){g(),s.increaseIndent()},decreaseIndent(){g(),s.decreaseIndent()}}}function y3(s){return s.useCaseSensitiveFileNames?s.useCaseSensitiveFileNames():!1}function JD(s){return _d(y3(s))}function F7(s,c,g){return c.moduleName||Mye(s,c.fileName,g&&g.fileName)}function Tqe(s,c){return s.getCanonicalFileName(Xc(c,s.getCurrentDirectory()))}function wZe(s,c,g){let d=c.getExternalModuleFileFromDeclaration(g);if(!d||d.isDeclarationFile)return;let h=LY(g);if(!(h&&mA(h)&&!Ip(h.text)&&!Tqe(s,d.path).includes(Tqe(s,hp(s.getCommonSourceDirectory())))))return F7(s,d)}function Mye(s,c,g){let d=T=>s.getCanonicalFileName(T),h=Ou(g?Mo(g):s.getCommonSourceDirectory(),s.getCurrentDirectory(),d),_=Xc(c,s.getCurrentDirectory()),S=Of(h,_,h,d,!1),R=s0(S);return g?Am(R):R}function TZe(s,c,g){let d=c.getCompilerOptions(),h;return d.outDir?h=s0(cAe(s,c,d.outDir)):h=s0(s),h+g}function RZe(s,c){return wne(s,c.getCompilerOptions(),c)}function wne(s,c,g){let d=c.declarationDir||c.outDir,h=d?NZe(s,d,g.getCurrentDirectory(),g.getCommonSourceDirectory(),S=>g.getCanonicalFileName(S)):s,_=sAe(h);return s0(h)+_}function sAe(s){return fu(s,[".mjs",".mts"])?".d.mts":fu(s,[".cjs",".cts"])?".d.cts":fu(s,[".json"])?".d.json.ts":".d.ts"}function Hye(s){return fu(s,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:fu(s,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:fu(s,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Yye(s,c,g,d){return g?AE(d(),mp(g,s,c)):s}function oAe(s,c){var g;if(s.paths)return s.baseUrl??pe.checkDefined(s.pathsBasePath||((g=c.getCurrentDirectory)==null?void 0:g.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function aAe(s,c,g){let d=s.getCompilerOptions();if(d.outFile){let h=i0(d),_=d.emitDeclarationOnly||h===2||h===4;return Me(s.getSourceFiles(),S=>(_||!xm(S))&&SP(S,s,g))}else{let h=c===void 0?s.getSourceFiles():[c];return Me(h,_=>SP(_,s,g))}}function SP(s,c,g){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&n0(s)||s.isDeclarationFile||c.isSourceFileFromExternalLibrary(s))return!1;if(g)return!0;if(c.isSourceOfProjectReferenceRedirect(s.fileName))return!1;if(!Zu(s))return!0;if(c.getRedirectFromSourceFile(s.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let h=Xc(xde(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),_=NZe(s.fileName,d.outDir,c.getCurrentDirectory(),h,c.getCanonicalFileName);if(qf(s.fileName,_,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function cAe(s,c,g){return NZe(s,g,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function NZe(s,c,g,d,h){let _=Xc(s,g);return _=h(_).indexOf(h(d))===0?_.substring(d.length):_,Ro(c,_)}function lAe(s,c,g,d,h,_,S){s.writeFile(g,d,h,R=>{c.add(Nf(Z.Could_not_write_file_0_Colon_1,g,R))},_,S)}function Rqe(s,c,g){if(s.length>Wf(s)&&!g(s)){let d=Mo(s);Rqe(d,c,g),c(s)}}function Qye(s,c,g,d,h,_){try{d(s,c,g)}catch{Rqe(Mo(iu(s)),h,_),d(s,c,g)}}function Z7(s,c){let g=rn(s);return Po(g,c)}function tU(s,c){return Po(s,c)}function lN(s){return de(s.members,c=>Tc(c)&&u1(c.body))}function L7(s){if(s&&s.parameters.length>0){let c=s.parameters.length===2&&SF(s.parameters[0]);return s.parameters[c?1:0]}}function DZe(s){let c=L7(s);return c&&c.type}function vP(s){if(s.parameters.length&&!qL(s)){let c=s.parameters[0];if(SF(c))return c}}function SF(s){return vF(s.name)}function vF(s){return!!s&&s.kind===80&&Xye(s)}function OY(s){return!!ji(s,c=>c.kind===187?!0:c.kind===80||c.kind===167?!1:"quit")}function YL(s){if(!vF(s))return!1;for(;zi(s.parent)&&s.parent.left===s;)s=s.parent;return s.parent.kind===187}function Xye(s){return s.escapedText==="this"}function BP(s,c){let g,d,h,_;return XD(c)?(g=c,c.kind===178?h=c:c.kind===179?_=c:pe.fail("Accessor has wrong kind")):F(s,S=>{if(yB(S)&&cg(S)===cg(c)){let R=_3(S.name),T=_3(c.name);R===T&&(g?d||(d=S):g=S,S.kind===178&&!h&&(h=S),S.kind===179&&!_&&(_=S))}}),{firstAccessor:g,secondAccessor:d,getAccessor:h,setAccessor:_}}function kh(s){if(!wo(s)&&ih(s)||FB(s))return;let c=s.type;return c||!wo(s)?c:dY(s)?s.typeExpression&&s.typeExpression.type:eN(s)}function kZe(s){return s.type}function xb(s){return qL(s)?s.type&&s.type.typeExpression&&s.type.typeExpression.type:s.type||(wo(s)?AJ(s):void 0)}function uAe(s){return er(Sx(s),c=>Nqe(c)?c.typeParameters:void 0)}function Nqe(s){return ZB(s)&&!(s.parent.kind===321&&(s.parent.tags.some(iS)||s.parent.tags.some(mie)))}function Jye(s){let c=L7(s);return c&&kh(c)}function SVt(s,c,g,d){vVt(s,c,g.pos,d)}function vVt(s,c,g,d){d&&d.length&&g!==d[0].pos&&tU(s,g)!==tU(s,d[0].pos)&&c.writeLine()}function Uye(s,c,g,d){g!==d&&tU(s,g)!==tU(s,d)&&c.writeLine()}function BVt(s,c,g,d,h,_,S,R){if(d&&d.length>0){h&&g.writeSpace(" ");let T=!1;for(let W of d)T&&(g.writeSpace(" "),T=!1),R(s,c,g,W.pos,W.end,S),W.hasTrailingNewLine?g.writeLine():T=!0;T&&_&&g.writeSpace(" ")}}function xZe(s,c,g,d,h,_,S){let R,T;if(S?h.pos===0&&(R=Me(fE(s,h.pos),W)):R=fE(s,h.pos),R){let V=[],M;for(let ee of R){if(M){let re=tU(c,M.end);if(tU(c,ee.pos)>=re+2)break}V.push(ee),M=ee}if(V.length){let ee=tU(c,Ei(V).end);tU(c,Yu(s,h.pos))>=ee+2&&(SVt(c,g,h,R),BVt(s,c,g,V,!1,!0,_,d),T={nodePos:h.pos,detachedCommentEndPos:Ei(V).end})}}return T;function W(V){return g7(s,V.pos)}}function rU(s,c,g,d,h,_){if(s.charCodeAt(d+1)===42){let S=Ci(c,d),R=c.length,T;for(let W=d,V=S.line;W0){let ge=re%vne(),Ie=iAe((re-ge)/vne());for(g.rawWrite(Ie);ge;)g.rawWrite(" "),ge--}else g.rawWrite("")}wVt(s,h,g,_,W,M),W=M}}else g.writeComment(s.substring(d,h))}function wVt(s,c,g,d,h,_){let S=Math.min(c,_-1),R=s.substring(h,S).trim();R?(g.writeComment(R),S!==c&&g.writeLine()):g.rawWrite(d)}function GZe(s,c,g){let d=0;for(;c=0&&s.kind<=166?0:(s.modifierFlagsCache&536870912||(s.modifierFlagsCache=qye(s)|536870912),g||c&&wo(s)?(!(s.modifierFlagsCache&268435456)&&s.parent&&(s.modifierFlagsCache|=Dqe(s)|268435456),kqe(s.modifierFlagsCache)):TVt(s.modifierFlagsCache))}function o_(s){return LZe(s,!0)}function VZe(s){return LZe(s,!0,!0)}function Nx(s){return LZe(s,!1)}function Dqe(s){let c=0;return s.parent&&!Si(s)&&(wo(s)&&(Ex(s)&&(c|=8388608),Aa(s)&&(c|=16777216),Ua(s)&&(c|=33554432),hA(s)&&(c|=67108864),Pd(s)&&(c|=134217728)),i2(s)&&(c|=65536)),c}function TVt(s){return s&65535}function kqe(s){return s&131071|(s&260046848)>>>23}function PZe(s){return kqe(Dqe(s))}function zye(s){return qye(s)|PZe(s)}function qye(s){let c=LB(s)?Dw(s.modifiers):0;return(s.flags&8||s.kind===80&&s.flags&4096)&&(c|=32),c}function Dw(s){let c=0;if(s)for(let g of s)c|=HY(g.kind);return c}function HY(s){switch(s){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 171:return 32768}return 0}function Rne(s){return s===57||s===56}function WZe(s){return Rne(s)||s===54}function V7(s){return s===76||s===77||s===78}function gAe(s){return fo(s)&&V7(s.operatorToken.kind)}function AAe(s){return Rne(s)||s===61}function Nne(s){return fo(s)&&AAe(s.operatorToken.kind)}function UD(s){return s>=64&&s<=79}function $ye(s){let c=ebe(s);return c&&!c.isImplements?c.class:void 0}function ebe(s){if(l_(s)){if(h1(s.parent)&&xa(s.parent.parent))return{class:s.parent.parent,isImplements:s.parent.token===119};if(bz(s.parent)){let c=WL(s.parent);if(c&&xa(c))return{class:c,isImplements:!1}}}}function Jm(s,c){return fo(s)&&(c?s.operatorToken.kind===64:UD(s.operatorToken.kind))&&D_(s.left)}function Dx(s){if(Jm(s,!0)){let c=s.left.kind;return c===211||c===210}return!1}function dAe(s){return $ye(s)!==void 0}function Od(s){return s.kind===80||BF(s)}function B0(s){switch(s.kind){case 80:return s;case 167:do s=s.left;while(s.kind!==80);return s;case 212:do s=s.expression;while(s.kind!==80);return s}}function Dne(s){return s.kind===80||s.kind===110||s.kind===108||s.kind===237||s.kind===212&&Dne(s.expression)||s.kind===218&&Dne(s.expression)}function BF(s){return jo(s)&&Ir(s.name)&&Od(s.expression)}function TP(s){if(jo(s)){let c=TP(s.expression);if(c!==void 0)return c+"."+oy(s.name)}else if(Yg(s)){let c=TP(s.expression);if(c!==void 0&&VI(s.argumentExpression))return c+"."+_3(s.argumentExpression)}else{if(Ir(s))return Bc(s.escapedText);if(eR(s))return lz(s)}}function wF(s){return yP(s)&&YD(s)==="prototype"}function P7(s){return s.parent.kind===167&&s.parent.right===s||s.parent.kind===212&&s.parent.name===s||s.parent.kind===237&&s.parent.name===s}function tbe(s){return!!s.parent&&(jo(s.parent)&&s.parent.name===s||Yg(s.parent)&&s.parent.argumentExpression===s)}function OZe(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s||O3(s.parent)&&s.parent.right===s}function pAe(s){return fo(s)&&s.operatorToken.kind===104}function MZe(s){return pAe(s.parent)&&s===s.parent.right}function rbe(s){return s.kind===211&&s.properties.length===0}function HZe(s){return s.kind===210&&s.elements.length===0}function W7(s){if(!(!RVt(s)||!s.declarations)){for(let c of s.declarations)if(c.localSymbol)return c.localSymbol}}function RVt(s){return s&&B(s.declarations)>0&&Ga(s.declarations[0],2048)}function O7(s){return de(gLe,c=>aA(s,c))}function NVt(s){let c=[],g=s.length;for(let d=0;d>6|192),c.push(h&63|128)):h<65536?(c.push(h>>12|224),c.push(h>>6&63|128),c.push(h&63|128)):h<131072?(c.push(h>>18|240),c.push(h>>12&63|128),c.push(h>>6&63|128),c.push(h&63|128)):pe.assert(!1,"Unexpected code point")}return c}var RP="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function nbe(s){let c="",g=NVt(s),d=0,h=g.length,_,S,R,T;for(;d>2,S=(g[d]&3)<<4|g[d+1]>>4,R=(g[d+1]&15)<<2|g[d+2]>>6,T=g[d+2]&63,d+1>=h?R=T=64:d+2>=h&&(T=64),c+=RP.charAt(_)+RP.charAt(S)+RP.charAt(R)+RP.charAt(T),d+=3;return c}function DVt(s){let c="",g=0,d=s.length;for(;g>4&3,V=(S&15)<<4|R>>2&15,M=(R&3)<<6|T&63;V===0&&R!==0?d.push(W):M===0&&T!==0?d.push(W,V):d.push(W,V,M),h+=4}return DVt(d)}function sbe(s,c){let g=Xs(c)?c:c.readFile(s);if(!g)return;let d=nU(g);if(d===void 0){let h=J$e(s,g);h.error||(d=h.config)}return d}function E3(s,c){return sbe(s,c)||{}}function nU(s){try{return JSON.parse(s)}catch{return}}function f1(s,c){return!c.directoryExists||c.directoryExists(s)}var fAe=`\r -`,kVt=` -`;function uN(s){switch(s.newLine){case 0:return fAe;case 1:case void 0:return kVt}}function Gy(s,c=s){return pe.assert(c>=s||c===-1),{pos:s,end:c}}function IAe(s,c){return Gy(s.pos,c)}function KD(s,c){return Gy(c,s.end)}function jD(s){let c=LB(s)?be(s.modifiers,So):void 0;return c&&!wB(c.end)?KD(s,c.end):s}function Av(s){if(pi(s)||uu(s))return KD(s,s.name.pos);let c=LB(s)?li(s.modifiers):void 0;return c&&!wB(c.end)?KD(s,c.end):jD(s)}function QL(s,c){return Gy(s,s+Vi(c).length)}function S3(s,c){return XZe(s,s,c)}function M7(s,c,g){return yE(H7(s,g,!1),H7(c,g,!1),g)}function QZe(s,c,g){return yE(s.end,c.end,g)}function XZe(s,c,g){return yE(H7(s,g,!1),c.end,g)}function kne(s,c,g){return yE(s.end,H7(c,g,!1),g)}function v3(s,c,g,d){let h=H7(c,g,d);return ec(g,s.end,h)}function JZe(s,c,g){return ec(g,s.end,c.end)}function hAe(s,c){return!yE(s.pos,s.end,c)}function yE(s,c,g){return ec(g,s,c)===0}function H7(s,c,g){return wB(s.pos)?-1:Yu(c.text,s.pos,!1,g)}function UZe(s,c,g,d){let h=Yu(g.text,s,!1,d),_=xqe(h,c,g);return ec(g,_??c,h)}function obe(s,c,g,d){let h=Yu(g.text,s,!1,d);return ec(g,s,Math.min(c,h))}function cy(s,c){return mAe(s.pos,s.end,c)}function mAe(s,c,g){return s<=g.pos&&c>=g.end}function xqe(s,c=0,g){for(;s-- >c;)if(!dc(g.text.charCodeAt(s)))return s}function abe(s){let c=$l(s);if(c)switch(c.parent.kind){case 267:case 268:return c===c.parent.name}return!1}function iU(s){return Me(s.declarations,xne)}function xne(s){return nc(s)&&s.initializer!==void 0}function cbe(s){return s.watch&&Da(s,"watch")}function dv(s){s.close()}function iI(s){return s.flags&33554432?s.links.checkFlags:0}function u2(s,c=!1){if(s.valueDeclaration){let g=c&&s.declarations&&de(s.declarations,Dg)||s.flags&32768&&de(s.declarations,Bg)||s.valueDeclaration,d=Hc(g);return s.parent&&s.parent.flags&32?d:d&-8}if(iI(s)&6){let g=s.links.checkFlags,d=g&1024?2:g&256?1:4,h=g&2048?256:0;return d|h}return s.flags&4194304?257:0}function FC(s,c){return s.flags&2097152?c.getAliasedSymbol(s):s}function sU(s){return s.exportSymbol?s.exportSymbol.flags|s.flags:s.flags}function CAe(s){return Y7(s)===1}function B3(s){return Y7(s)!==0}function Y7(s){let{parent:c}=s;switch(c?.kind){case 218:return Y7(c);case 226:case 225:let{operator:g}=c;return g===46||g===47?2:0;case 227:let{left:d,operatorToken:h}=c;return d===s&&UD(h.kind)?h.kind===64?1:2:0;case 212:return c.name!==s?0:Y7(c);case 304:{let _=Y7(c.parent);return s===c.name?xVt(_):_}case 305:return s===c.objectAssignmentInitializer?0:Y7(c.parent);case 210:return Y7(c);case 250:case 251:return s===c.initializer?1:0;default:return 0}}function xVt(s){switch(s){case 0:return 1;case 1:return 0;case 2:return 2;default:return pe.assertNever(s)}}function _Ae(s,c){if(!s||!c||Object.keys(s).length!==Object.keys(c).length)return!1;for(let g in s)if(typeof s[g]=="object"){if(!_Ae(s[g],c[g]))return!1}else if(typeof s[g]!="function"&&s[g]!==c[g])return!1;return!0}function Fy(s,c){s.forEach(c),s.clear()}function gN(s,c,g){let{onDeleteValue:d,onExistingValue:h}=g;s.forEach((_,S)=>{var R;c?.has(S)?h&&h(_,(R=c.get)==null?void 0:R.call(c,S),S):(s.delete(S),d(_,S))})}function Q7(s,c,g){gN(s,c,g);let{createNewValue:d}=g;c?.forEach((h,_)=>{s.has(_)||s.set(_,d(_,h))})}function lbe(s){if(s.flags&32){let c=AN(s);return!!c&&Ga(c,64)}return!1}function AN(s){var c;return(c=s.declarations)==null?void 0:c.find(xa)}function la(s){return s.flags&3899393?s.objectFlags:0}function yAe(s){return!!s&&!!s.declarations&&!!s.declarations[0]&&sEe(s.declarations[0])}function KZe({moduleSpecifier:s}){return Zg(s)?s.text:xp(s)}function ube(s){let c;return Lu(s,g=>{u1(g)&&(c=g)},g=>{for(let d=g.length-1;d>=0;d--)if(u1(g[d])){c=g[d];break}}),c}function Zy(s,c){return s.has(c)?!1:(s.add(c),!0)}function YY(s){return xa(s)||g_(s)||mh(s)}function bAe(s){return s>=183&&s<=206||s===133||s===159||s===150||s===163||s===151||s===136||s===154||s===155||s===116||s===157||s===146||s===141||s===234||s===313||s===314||s===315||s===316||s===317||s===318||s===319}function _p(s){return s.kind===212||s.kind===213}function gbe(s){return s.kind===212?s.name:(pe.assert(s.kind===213),s.argumentExpression)}function Gne(s){return s.kind===276||s.kind===280}function oU(s){for(;_p(s);)s=s.expression;return s}function jZe(s,c){if(_p(s.parent)&&tbe(s))return g(s.parent);function g(d){if(d.kind===212){let h=c(d.name);if(h!==void 0)return h}else if(d.kind===213)if(Ir(d.argumentExpression)||mA(d.argumentExpression)){let h=c(d.argumentExpression);if(h!==void 0)return h}else return;if(_p(d.expression))return g(d.expression);if(Ir(d.expression))return c(d.expression)}}function aU(s,c){for(;;){switch(s.kind){case 226:s=s.operand;continue;case 227:s=s.left;continue;case 228:s=s.condition;continue;case 216:s=s.tag;continue;case 214:if(c)return s;case 235:case 213:case 212:case 236:case 356:case 239:s=s.expression;continue}return s}}function GVt(s,c){this.flags=s,this.escapedName=c,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function FVt(s,c){this.flags=c,(pe.isDebugging||ki)&&(this.checker=s)}function ZVt(s,c){this.flags=c,pe.isDebugging&&(this.checker=s)}function Abe(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function LVt(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function Gqe(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function VVt(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}var ZC={getNodeConstructor:()=>Abe,getTokenConstructor:()=>LVt,getIdentifierConstructor:()=>Gqe,getPrivateIdentifierConstructor:()=>Abe,getSourceFileConstructor:()=>Abe,getSymbolConstructor:()=>GVt,getTypeConstructor:()=>FVt,getSignatureConstructor:()=>ZVt,getSourceMapSourceConstructor:()=>VVt},Fqe=[];function Zqe(s){Fqe.push(s),s(ZC)}function zZe(s){Object.assign(ZC,s),F(Fqe,c=>c(ZC))}function dN(s,c){return s.replace(/\{(\d+)\}/g,(g,d)=>""+pe.checkDefined(c[+d]))}var EAe;function cU(s){EAe=s}function qZe(s){!EAe&&s&&(EAe=s())}function Bu(s){return EAe&&EAe[s.key]||s.message}function QY(s,c,g,d,h,..._){g+d>c.length&&(d=c.length-g),he(c,g,d);let S=Bu(h);return jt(_)&&(S=dN(S,_)),{file:void 0,start:g,length:d,messageText:S,category:h.category,code:h.code,reportsUnnecessary:h.reportsUnnecessary,fileName:s}}function PVt(s){return s.file===void 0&&s.start!==void 0&&s.length!==void 0&&typeof s.fileName=="string"}function Lqe(s,c){let g=c.fileName||"",d=c.text.length;pe.assertEqual(s.fileName,g),pe.assertLessThanOrEqual(s.start,d),pe.assertLessThanOrEqual(s.start+s.length,d);let h={file:c,start:s.start,length:s.length,messageText:s.messageText,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary};if(s.relatedInformation){h.relatedInformation=[];for(let _ of s.relatedInformation)PVt(_)&&_.fileName===g?(pe.assertLessThanOrEqual(_.start,d),pe.assertLessThanOrEqual(_.start+_.length,d),h.relatedInformation.push(Lqe(_,c))):h.relatedInformation.push(_)}return h}function XL(s,c){let g=[];for(let d of s)g.push(Lqe(d,c));return g}function qh(s,c,g,d,...h){he(s.text,c,g);let _=Bu(d);return jt(h)&&(_=dN(_,h)),{file:s,start:c,length:g,messageText:_,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function XY(s,...c){let g=Bu(s);return jt(c)&&(g=dN(g,c)),g}function Nf(s,...c){let g=Bu(s);return jt(c)&&(g=dN(g,c)),{file:void 0,start:void 0,length:void 0,messageText:g,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function SAe(s,c){return{file:void 0,start:void 0,length:void 0,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:c}}function wu(s,c,...g){let d=Bu(c);return jt(g)&&(d=dN(d,g)),{messageText:d,category:c.category,code:c.code,next:s===void 0||Array.isArray(s)?s:[s]}}function Fne(s,c){let g=s;for(;g.next;)g=g.next[0];g.next=[c]}function dbe(s){return s.file?s.file.path:void 0}function X7(s,c){return $Ze(s,c)||WVt(s,c)||0}function $Ze(s,c){let g=pbe(s),d=pbe(c);return Ca(dbe(s),dbe(c))||Zt(s.start,c.start)||Zt(s.length,c.length)||Zt(g,d)||OVt(s,c)||0}function WVt(s,c){return!s.relatedInformation&&!c.relatedInformation?0:s.relatedInformation&&c.relatedInformation?Zt(c.relatedInformation.length,s.relatedInformation.length)||F(s.relatedInformation,(g,d)=>{let h=c.relatedInformation[d];return X7(g,h)})||0:s.relatedInformation?-1:1}function OVt(s,c){let g=fbe(s),d=fbe(c);typeof g!="string"&&(g=g.messageText),typeof d!="string"&&(d=d.messageText);let h=typeof s.messageText!="string"?s.messageText.next:void 0,_=typeof c.messageText!="string"?c.messageText.next:void 0,S=Ca(g,d);return S||(S=MVt(h,_),S)?S:s.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!s.canonicalHead?1:0}function MVt(s,c){return s===void 0&&c===void 0?0:s===void 0?1:c===void 0?-1:Vqe(s,c)||Pqe(s,c)}function Vqe(s,c){if(s===void 0&&c===void 0)return 0;if(s===void 0)return 1;if(c===void 0)return-1;let g=Zt(c.length,s.length);if(g)return g;for(let d=0;d{h.externalModuleIndicator=IEe(h)||!h.isDeclarationFile||void 0};case 1:return h=>{h.externalModuleIndicator=IEe(h)};case 2:let c=[IEe];(s.jsx===4||s.jsx===5)&&c.push(YVt),c.push(QVt);let g=Hp(...c);return h=>void(h.externalModuleIndicator=g(h,s))}}function Ibe(s){let c=k_(s);return 3<=c&&c<=99||U7(s)||Vne(s)}function Jqr(s){return s}var LC={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:s=>!!(s.allowImportingTsExtensions||s.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:s=>(s.target===0?void 0:s.target)??(s.module===100&&9||s.module===101&&9||s.module===102&&10||s.module===199&&99||1)},module:{dependencies:["target"],computeValue:s=>typeof s.module=="number"?s.module:LC.target.computeValue(s)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:s=>{let c=s.moduleResolution;if(c===void 0)switch(LC.module.computeValue(s)){case 1:c=2;break;case 100:case 101:case 102:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:s=>{if(s.moduleDetection!==void 0)return s.moduleDetection;let c=LC.module.computeValue(s);return 100<=c&&c<=199?3:2}},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:s=>!!(s.isolatedModules||s.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:s=>{if(s.esModuleInterop!==void 0)return s.esModuleInterop;switch(LC.module.computeValue(s)){case 100:case 101:case 102:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:s=>s.allowSyntheticDefaultImports!==void 0?s.allowSyntheticDefaultImports:LC.esModuleInterop.computeValue(s)||LC.module.computeValue(s)===4||LC.moduleResolution.computeValue(s)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:s=>{let c=LC.moduleResolution.computeValue(s);if(!lU(c))return!1;if(s.resolvePackageJsonExports!==void 0)return s.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:s=>{let c=LC.moduleResolution.computeValue(s);if(!lU(c))return!1;if(s.resolvePackageJsonImports!==void 0)return s.resolvePackageJsonImports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:s=>{if(s.resolveJsonModule!==void 0)return s.resolveJsonModule;switch(LC.module.computeValue(s)){case 102:case 199:return!0}return LC.moduleResolution.computeValue(s)===100}},declaration:{dependencies:["composite"],computeValue:s=>!!(s.declaration||s.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:s=>!!(s.preserveConstEnums||LC.isolatedModules.computeValue(s))},incremental:{dependencies:["composite"],computeValue:s=>!!(s.incremental||s.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:s=>!!(s.declarationMap&&LC.declaration.computeValue(s))},allowJs:{dependencies:["checkJs"],computeValue:s=>s.allowJs===void 0?!!s.checkJs:s.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:s=>s.useDefineForClassFields===void 0?LC.target.computeValue(s)>=9:s.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:s=>a_(s,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:s=>a_(s,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:s=>a_(s,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:s=>a_(s,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:s=>a_(s,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:s=>a_(s,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:s=>a_(s,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:s=>a_(s,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:s=>a_(s,"useUnknownInCatchVariables")}},J7=LC,eLe=LC.allowImportingTsExtensions.computeValue,Mg=LC.target.computeValue,i0=LC.module.computeValue,k_=LC.moduleResolution.computeValue,tLe=LC.moduleDetection.computeValue,sS=LC.isolatedModules.computeValue,kw=LC.esModuleInterop.computeValue,JY=LC.allowSyntheticDefaultImports.computeValue,U7=LC.resolvePackageJsonExports.computeValue,Vne=LC.resolvePackageJsonImports.computeValue,NP=LC.resolveJsonModule.computeValue,Ly=LC.declaration.computeValue,Fb=LC.preserveConstEnums.computeValue,DP=LC.incremental.computeValue,BAe=LC.declarationMap.computeValue,TF=LC.allowJs.computeValue,Pne=LC.useDefineForClassFields.computeValue;function Wne(s){return s>=5&&s<=99}function wAe(s){switch(i0(s)){case 0:case 4:case 3:return!1}return!0}function rLe(s){return s.allowUnreachableCode===!1}function nLe(s){return s.allowUnusedLabels===!1}function lU(s){return s>=3&&s<=99||s===100}function iLe(s){return 101<=s&&s<=199||s===200||s===99}function a_(s,c){return s[c]===void 0?!!s.strict:!!s[c]}function TAe(s){return Dh(O$e.type,(c,g)=>c===s?g:void 0)}function hbe(s){return s.useDefineForClassFields!==!1&&Mg(s)>=9}function mbe(s,c){return S0(c,s,CWt)}function sLe(s,c){return S0(c,s,_Wt)}function oLe(s,c){return S0(c,s,yWt)}function K7(s,c){return c.strictFlag?a_(s,c.name):c.allowJsFlag?TF(s):s[c.name]}function RAe(s){let c=s.jsx;return c===2||c===4||c===5}function One(s,c){let g=c?.pragmas.get("jsximportsource"),d=Ki(g)?g[g.length-1]:g,h=c?.pragmas.get("jsxruntime"),_=Ki(h)?h[h.length-1]:h;if(_?.arguments.factory!=="classic")return s.jsx===4||s.jsx===5||s.jsxImportSource||d||_?.arguments.factory==="automatic"?d?.arguments.factory||s.jsxImportSource||"react":void 0}function Mne(s,c){return s?`${s}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function Cbe(s){let c=!1;for(let g=0;gh,getSymlinkedDirectories:()=>g,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(T,W)=>(h||(h=new Map)).set(T,W),setSymlinkedDirectory:(T,W)=>{let V=Ou(T,s,c);sz(V)||(V=hp(V),W!==!1&&!g?.has(V)&&(d||(d=dl())).add(W.realPath,T),(g||(g=new Map)).set(V,W))},setSymlinksFromResolutions(T,W,V){pe.assert(!_),_=!0,T(M=>R(this,M.resolvedModule)),W(M=>R(this,M.resolvedTypeReferenceDirective)),V.forEach(M=>R(this,M.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>_,setSymlinksFromResolution(T){R(this,T)},hasAnySymlinks:S};function S(){return!!h?.size||!!g&&!!Dh(g,T=>!!T)}function R(T,W){if(!W||!W.originalPath||!W.resolvedFileName)return;let{resolvedFileName:V,originalPath:M}=W;T.setSymlinkedFile(Ou(M,s,c),V);let[ee,re]=XVt(V,M,s,c)||E;ee&&re&&T.setSymlinkedDirectory(re,{real:hp(ee),realPath:hp(Ou(ee,s,c))})}}function XVt(s,c,g,d){let h=Np(Xc(s,g)),_=Np(Xc(c,g)),S=!1;for(;h.length>=2&&_.length>=2&&!Oqe(h[h.length-2],d)&&!Oqe(_[_.length-2],d)&&d(h[h.length-1])===d(_[_.length-1]);)h.pop(),_.pop(),S=!0;return S?[Dm(h),Dm(_)]:void 0}function Oqe(s,c){return s!==void 0&&(c(s)==="node_modules"||Ac(s,"@"))}function JVt(s){return e0(s.charCodeAt(0))?s.slice(1):void 0}function NAe(s,c,g){let d=HS(s,c,g);return d===void 0?void 0:JVt(d)}var aLe=/[^\w\s/]/g;function Mqe(s){return s.replace(aLe,UVt)}function UVt(s){return"\\"+s}var KVt=[42,63],jVt=["node_modules","bower_components","jspm_packages"],cLe=`(?!(?:${jVt.join("|")})(?:/|$))`,Hqe={singleAsteriskRegexFragment:"(?:[^./]|(?:\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(?:/${cLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>uLe(s,Hqe.singleAsteriskRegexFragment)},Yqe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(?:/${cLe}[^/.][^/]*)*?`,replaceWildcardCharacter:s=>uLe(s,Yqe.singleAsteriskRegexFragment)},ybe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(?:/.+?)?",replaceWildcardCharacter:s=>uLe(s,ybe.singleAsteriskRegexFragment)},lLe={files:Hqe,directories:Yqe,exclude:ybe};function j7(s,c,g){let d=Hne(s,c,g);return!d||!d.length?void 0:`^(?:${d.map(S=>`(?:${S})`).join("|")})${g==="exclude"?"(?:$|/)":"$"}`}function Hne(s,c,g){if(!(s===void 0||s.length===0))return er(s,d=>d&&DAe(d,c,g,lLe[g]))}function bbe(s){return!/[.*?]/.test(s)}function Ebe(s,c,g){let d=s&&DAe(s,c,g,lLe[g]);return d&&`^(?:${d})${g==="exclude"?"(?:$|/)":"$"}`}function DAe(s,c,g,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:h,replaceWildcardCharacter:_}=lLe[g]){let S="",R=!1,T=AB(s,c),W=Ei(T);if(g!=="exclude"&&W==="**")return;T[0]=ny(T[0]),bbe(W)&&T.push("**","*");let V=0;for(let M of T){if(M==="**")S+=h;else if(g==="directories"&&(S+="(?:",V++),R&&(S+=ag),g!=="exclude"){let ee="";M.charCodeAt(0)===42?(ee+="(?:[^./]"+d+")?",M=M.substr(1)):M.charCodeAt(0)===63&&(ee+="[^./]",M=M.substr(1)),ee+=M.replace(aLe,_),ee!==M&&(S+=cLe),S+=ee}else S+=M.replace(aLe,_);R=!0}for(;V>0;)S+=")?",V--;return S}function uLe(s,c){return s==="*"?c:s==="?"?"[^/]":"\\"+s}function kAe(s,c,g,d,h){s=iu(s),h=iu(h);let _=Ro(h,s);return{includeFilePatterns:At(Hne(g,_,"files"),S=>`^${S}$`),includeFilePattern:j7(g,_,"files"),includeDirectoryPattern:j7(g,_,"directories"),excludePattern:j7(c,_,"exclude"),basePaths:zVt(s,g,d)}}function zD(s,c){return new RegExp(s,c?"":"i")}function Sbe(s,c,g,d,h,_,S,R,T){s=iu(s),_=iu(_);let W=kAe(s,g,d,h,_),V=W.includeFilePatterns&&W.includeFilePatterns.map(Ee=>zD(Ee,h)),M=W.includeDirectoryPattern&&zD(W.includeDirectoryPattern,h),ee=W.excludePattern&&zD(W.excludePattern,h),re=V?V.map(()=>[]):[[]],ge=new Map,Ie=_d(h);for(let Ee of W.basePaths)_e(Ee,Ro(_,Ee),S);return Nr(re);function _e(Ee,Ne,Te){let Ze=Ie(T(Ne));if(ge.has(Ze))return;ge.set(Ze,!0);let{files:We,directories:Ue}=R(Ee);for(let $e of bo(We,Ca)){let Ye=Ro(Ee,$e),Tt=Ro(Ne,$e);if(!(c&&!fu(Ye,c))&&!(ee&&ee.test(Tt)))if(!V)re[0].push(Ye);else{let ot=Se(V,Qe=>Qe.test(Tt));ot!==-1&&re[ot].push(Ye)}}if(!(Te!==void 0&&(Te--,Te===0)))for(let $e of bo(Ue,Ca)){let Ye=Ro(Ee,$e),Tt=Ro(Ne,$e);(!M||M.test(Tt))&&(!ee||!ee.test(Tt))&&_e(Ye,Tt,Te)}}}function zVt(s,c,g){let d=[s];if(c){let h=[];for(let _ of c){let S=Xp(_)?_:iu(Ro(s,_));h.push(qVt(S))}h.sort(ld(!g));for(let _ of h)ue(d,S=>!Jh(S,_,s,!g))&&d.push(_)}return d}function qVt(s){let c=et(s,KVt);return c<0?E0(s)?ny(Mo(s)):s:s.substring(0,s.lastIndexOf(ag,c))}function xAe(s,c){return c||GAe(s)||3}function GAe(s){switch(s.substr(s.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var FAe=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],vbe=Nr(FAe),$Vt=[...FAe,[".json"]],gLe=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],ePt=[[".js",".jsx"],[".mjs"],[".cjs"]],uU=Nr(ePt),ZAe=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],tPt=[...ZAe,[".json"]],LAe=[".d.ts",".d.cts",".d.mts"],Yne=[".ts",".cts",".mts",".tsx"],VAe=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function z7(s,c){let g=s&&TF(s);if(!c||c.length===0)return g?ZAe:FAe;let d=g?ZAe:FAe,h=Nr(d);return[...d,...Xt(c,S=>S.scriptKind===7||g&&rPt(S.scriptKind)&&!h.includes(S.extension)?[S.extension]:void 0)]}function q7(s,c){return!s||!NP(s)?c:c===ZAe?tPt:c===FAe?$Vt:[...c,[".json"]]}function rPt(s){return s===1||s===2}function pN(s){return jt(uU,c=>aA(s,c))}function w3(s){return jt(vbe,c=>aA(s,c))}function ALe(s){return jt(Yne,c=>aA(s,c))&&!PC(s)}var dLe=(s=>(s[s.Minimal=0]="Minimal",s[s.Index=1]="Index",s[s.JsExtension=2]="JsExtension",s[s.TsExtension=3]="TsExtension",s))(dLe||{});function nPt({imports:s},c=Hp(pN,w3)){return X(s,({text:g})=>Ip(g)&&!fu(g,VAe)?c(g):void 0)||!1}function pLe(s,c,g,d){let h=k_(g),_=3<=h&&h<=99;if(s==="js"||c===99&&_)return Die(g)&&S()!==2?3:2;if(s==="minimal")return 0;if(s==="index")return 1;if(!Die(g))return d&&nPt(d)?2:0;return S();function S(){let R=!1,T=d?.imports.length?d.imports:d&&n0(d)?iPt(d).map(W=>W.arguments[0]):E;for(let W of T)if(Ip(W.text)){if(_&&c===1&>t(d,W,g)===99||fu(W.text,VAe))continue;if(w3(W.text))return 3;pN(W.text)&&(R=!0)}return R?2:0}}function iPt(s){let c=0,g;for(let d of s.statements){if(c>3)break;nne(d)?g=Nn(g,d.declarationList.declarations.map(h=>h.initializer)):VC(d)&&ay(d.expression,!0)?g=Ft(g,d.expression):c++}return g||E}function Bbe(s,c,g){if(!s)return!1;let d=z7(c,g);for(let h of Nr(q7(c,d)))if(aA(s,h))return!0;return!1}function Qqe(s){let c=s.match(/\//g);return c?c.length:0}function Qne(s,c){return Zt(Qqe(s),Qqe(c))}var fLe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function s0(s){for(let c of fLe){let g=ILe(s,c);if(g!==void 0)return g}return s}function ILe(s,c){return aA(s,c)?Xne(s,c):void 0}function Xne(s,c){return s.substring(0,s.length-c.length)}function fN(s,c){return K2(s,c,fLe,!1)}function UY(s){let c=s.indexOf("*");return c===-1?s:s.indexOf("*",c+1)!==-1?void 0:{prefix:s.substr(0,c),suffix:s.substr(c+1)}}var Xqe=new WeakMap;function $7(s){let c=Xqe.get(s);if(c!==void 0)return c;let g,d,h=_g(s);for(let _ of h){let S=UY(_);S!==void 0&&(typeof S=="string"?(g??(g=new Set)).add(S):(d??(d=[])).push(S))}return Xqe.set(s,c={matchableStringSet:g,patterns:d}),c}function wB(s){return!(s>=0)}function PAe(s){return s===".ts"||s===".tsx"||s===".d.ts"||s===".cts"||s===".mts"||s===".d.mts"||s===".d.cts"||Ac(s,".d.")&&di(s,".ts")}function ez(s){return PAe(s)||s===".json"}function tz(s){let c=QT(s);return c!==void 0?c:pe.fail(`File ${s} has unknown extension.`)}function Jqe(s){return QT(s)!==void 0}function QT(s){return de(fLe,c=>aA(s,c))}function rz(s,c){return s.checkJsDirective?s.checkJsDirective.enabled:c.checkJs}var wbe={files:E,directories:E};function Tbe(s,c){let{matchableStringSet:g,patterns:d}=s;if(g?.has(c))return c;if(!(d===void 0||d.length===0))return YA(d,h=>h,c)}function Rbe(s,c){let g=s.indexOf(c);return pe.assert(g!==-1),s.slice(g)}function lg(s,...c){return c.length&&(s.relatedInformation||(s.relatedInformation=[]),pe.assert(s.relatedInformation!==E,"Diagnostic had empty array singleton for related info, but is still being constructed!"),s.relatedInformation.push(...c)),s}function hLe(s,c){pe.assert(s.length!==0);let g=c(s[0]),d=g;for(let h=1;hd&&(d=_)}return{min:g,max:d}}function Nbe(s){return{pos:MD(s),end:s.end}}function Dbe(s,c){let g=c.pos-1,d=Math.min(s.text.length,Yu(s.text,c.end)+1);return{pos:g,end:d}}function T3(s,c,g){return Uqe(s,c,g,!1)}function mLe(s,c,g){return Uqe(s,c,g,!0)}function Uqe(s,c,g,d){return c.skipLibCheck&&s.isDeclarationFile||c.skipDefaultLibCheck&&s.hasNoDefaultLib||!d&&c.noCheck||g.isSourceOfProjectReferenceRedirect(s.fileName)||!gU(s,c)}function gU(s,c){if(s.checkJsDirective&&s.checkJsDirective.enabled===!1)return!1;if(s.scriptKind===3||s.scriptKind===4||s.scriptKind===5)return!0;let d=(s.scriptKind===1||s.scriptKind===2)&&rz(s,c);return SY(s,c.checkJs)||d||s.scriptKind===7}function WAe(s,c){return s===c||typeof s=="object"&&s!==null&&typeof c=="object"&&c!==null&&Hu(s,c,WAe)}function nz(s){let c;switch(s.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let W=s.length-1,V=0;for(;s.charCodeAt(V)===48;)V++;return s.slice(V,W)||"0"}let g=2,d=s.length-1,h=(d-g)*c,_=new Uint16Array((h>>>4)+(h&15?1:0));for(let W=d-1,V=0;W>=g;W--,V+=c){let M=V>>>4,ee=s.charCodeAt(W),ge=(ee<=57?ee-48:10+ee-(ee<=70?65:97))<<(V&15);_[M]|=ge;let Ie=ge>>>16;Ie&&(_[M+1]|=Ie)}let S="",R=_.length-1,T=!0;for(;T;){let W=0;T=!1;for(let V=R;V>=0;V--){let M=W<<16|_[V],ee=M/10|0;_[V]=ee,W=M-ee*10,ee&&!T&&(R=V,T=!0)}S=W+S}return S}function kP({negative:s,base10Value:c}){return(s&&c!=="0"?"-":"")+c}function CLe(s){if(Jne(s,!1))return kbe(s)}function kbe(s){let c=s.startsWith("-"),g=nz(`${c?s.slice(1):s}n`);return{negative:c,base10Value:g}}function Jne(s,c){if(s==="")return!1;let g=wb(99,!1),d=!0;g.setOnError(()=>d=!1),g.setText(s+"n");let h=g.scan(),_=h===41;_&&(h=g.scan());let S=g.getTokenFlags();return d&&h===10&&g.getTokenEnd()===s.length+1&&!(S&512)&&(!c||s===kP({negative:_,base10Value:nz(g.getTokenValue())}))}function JL(s){return!!(s.flags&33554432)||GY(s)||Qge(s)||aPt(s)||oPt(s)||!(MT(s)||sPt(s))}function sPt(s){return Ir(s)&&a0(s.parent)&&s.parent.name===s}function oPt(s){for(;s.kind===80||s.kind===212;)s=s.parent;if(s.kind!==168)return!1;if(Ga(s.parent,64))return!0;let c=s.parent.parent.kind;return c===265||c===188}function aPt(s){if(s.kind!==80)return!1;let c=ji(s.parent,g=>{switch(g.kind){case 299:return!0;case 212:case 234:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===265}function _Le(s){return nh(s)&&Ir(s.typeName)}function yLe(s,c=yg){if(s.length<2)return!0;let g=s[0];for(let d=1,h=s.length;ds.includes(c))}function SLe(s){if(!s.parent)return;switch(s.kind){case 169:let{parent:g}=s;return g.kind===196?void 0:g.typeParameters;case 170:return s.parent.parameters;case 205:return s.parent.templateSpans;case 240:return s.parent.templateSpans;case 171:{let{parent:d}=s;return oQ(d)?d.modifiers:void 0}case 299:return s.parent.heritageClauses}let{parent:c}=s;if(u3(s))return yU(s.parent)?void 0:s.parent.tags;switch(c.kind){case 188:case 265:return Bx(s)?c.members:void 0;case 193:case 194:return c.types;case 190:case 210:case 357:case 276:case 280:return c.elements;case 211:case 293:return c.properties;case 214:case 215:return uc(s)?c.typeArguments:c.expression===s?void 0:c.arguments;case 285:case 289:return BJ(s)?c.children:void 0;case 287:case 286:return uc(s)?c.typeArguments:void 0;case 242:case 297:case 298:case 269:return c.statements;case 270:return c.clauses;case 264:case 232:return PI(s)?c.members:void 0;case 267:return LF(s)?c.members:void 0;case 308:return c.statements}}function OAe(s){if(!s.typeParameters){if(jt(s.parameters,c=>!kh(c)))return!0;if(s.kind!==220){let c=Nc(s.parameters);if(!(c&&SF(c)))return!0}}return!1}function oz(s){return s==="Infinity"||s==="-Infinity"||s==="NaN"}function vLe(s){return s.kind===261&&s.parent.kind===300}function RF(s){return s.kind===219||s.kind===220}function xP(s){return s.replace(/\$/g,()=>"\\$")}function IN(s){return(+s).toString()===s}function Une(s,c,g,d,h){let _=h&&s==="new";return!_&&Uh(s,c)?me.createIdentifier(s):!d&&!_&&IN(s)&&+s>=0?me.createNumericLiteral(+s):me.createStringLiteral(s,!!g)}function az(s){return!!(s.flags&262144&&s.isThisType)}function MAe(s){let c=0,g=0,d=0,h=0,_;(W=>{W[W.BeforeNodeModules=0]="BeforeNodeModules",W[W.NodeModules=1]="NodeModules",W[W.Scope=2]="Scope",W[W.PackageContent=3]="PackageContent"})(_||(_={}));let S=0,R=0,T=0;for(;R>=0;)switch(S=R,R=s.indexOf("/",S+1),T){case 0:s.indexOf(Vx,S)===S&&(c=S,g=R,T=1);break;case 1:case 2:T===1&&s.charAt(S+1)==="@"?T=2:(d=R,T=3);break;case 3:s.indexOf(Vx,S)===S?T=1:T=3;break}return h=S,T>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:g,packageRootIndex:d,fileNameIndex:h}:void 0}function KY(s){switch(s.kind){case 169:case 264:case 265:case 266:case 267:case 347:case 339:case 341:return!0;case 274:return s.phaseModifier===156;case 277:return s.parent.parent.phaseModifier===156;case 282:return s.parent.parent.isTypeOnly;default:return!1}}function Kne(s){return V3(s)||Ch(s)||ih(s)||pm(s)||g_(s)||KY(s)||xh(s)&&!_F(s)&&!vB(s)}function jne(s){if(!dY(s))return!1;let{isBracketed:c,typeExpression:g}=s;return c||!!g&&g.type.kind===317}function Fbe(s,c){if(s.length===0)return!1;let g=s.charCodeAt(0);return g===35?s.length>1&&bd(s.charCodeAt(1),c):bd(g,c)}function BLe(s){var c;return((c=zbe(s))==null?void 0:c.kind)===0}function HAe(s){return wo(s)&&(s.type&&s.type.kind===317||vL(s).some(jne))}function RB(s){switch(s.kind){case 173:case 172:return!!s.questionToken;case 170:return!!s.questionToken||HAe(s);case 349:case 342:return jne(s);default:return!1}}function YAe(s){let c=s.kind;return(c===212||c===213)&&hv(s.expression)}function Zbe(s){return wo(s)&&gI(s)&&Xm(s)&&!!fF(s)}function Lbe(s){return pe.checkDefined(QAe(s))}function QAe(s){let c=fF(s);return c&&c.typeExpression&&c.typeExpression.type}function cz(s){return Ir(s)?s.escapedText:oS(s)}function xw(s){return Ir(s)?Vo(s):lz(s)}function wLe(s){let c=s.kind;return c===80||c===296}function oS(s){return`${s.namespace.escapedText}:${Vo(s.name)}`}function lz(s){return`${Vo(s.namespace)}:${Vo(s.name)}`}function Vbe(s){return Ir(s)?Vo(s):lz(s)}function g2(s){return!!(s.flags&8576)}function A2(s){return s.flags&8192?s.escapedName:s.flags&384?Ap(""+s.value):pe.fail()}function jY(s){return!!s&&(jo(s)||Yg(s)||fo(s))}function TLe(s){return s===void 0?!1:!!Gie(s.attributes)}var lPt=String.prototype.replace;function R3(s,c){return lPt.call(s,"*",c)}function XAe(s){return Ir(s.name)?s.name.escapedText:Ap(s.name.text)}function RLe(s){switch(s.kind){case 169:case 170:case 173:case 172:case 186:case 185:case 180:case 181:case 182:case 175:case 174:case 176:case 177:case 178:case 179:case 184:case 183:case 187:case 188:case 189:case 190:case 193:case 194:case 197:case 191:case 192:case 198:case 199:case 195:case 196:case 204:case 206:case 203:case 329:case 330:case 347:case 339:case 341:case 346:case 345:case 325:case 326:case 327:case 342:case 349:case 318:case 316:case 315:case 313:case 314:case 323:case 319:case 310:case 334:case 336:case 335:case 351:case 344:case 200:case 201:case 263:case 242:case 269:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 252:case 253:case 254:case 255:case 256:case 257:case 258:case 259:case 261:case 209:case 264:case 265:case 266:case 267:case 268:case 273:case 272:case 279:case 278:case 243:case 260:case 283:return!0}return!1}function $h(s,c=!1,g=!1,d=!1){return{value:s,isSyntacticallyString:c,resolvedOtherFiles:g,hasExternalReferences:d}}function NLe({evaluateElementAccessExpression:s,evaluateEntityNameExpression:c}){function g(h,_){let S=!1,R=!1,T=!1;switch(h=QA(h),h.kind){case 225:let W=g(h.operand,_);if(R=W.resolvedOtherFiles,T=W.hasExternalReferences,typeof W.value=="number")switch(h.operator){case 40:return $h(W.value,S,R,T);case 41:return $h(-W.value,S,R,T);case 55:return $h(~W.value,S,R,T)}break;case 227:{let V=g(h.left,_),M=g(h.right,_);if(S=(V.isSyntacticallyString||M.isSyntacticallyString)&&h.operatorToken.kind===40,R=V.resolvedOtherFiles||M.resolvedOtherFiles,T=V.hasExternalReferences||M.hasExternalReferences,typeof V.value=="number"&&typeof M.value=="number")switch(h.operatorToken.kind){case 52:return $h(V.value|M.value,S,R,T);case 51:return $h(V.value&M.value,S,R,T);case 49:return $h(V.value>>M.value,S,R,T);case 50:return $h(V.value>>>M.value,S,R,T);case 48:return $h(V.value<=2)break;case 175:case 177:case 178:case 179:case 263:if(Ue&3&&nt==="arguments"){_t=g;break e}break;case 219:if(Ue&3&&nt==="arguments"){_t=g;break e}if(Ue&16){let ur=Ze.name;if(ur&&nt===ur.escapedText){_t=Ze.symbol;break e}}break;case 171:Ze.parent&&Ze.parent.kind===170&&(Ze=Ze.parent),Ze.parent&&(PI(Ze.parent)||Ze.parent.kind===264)&&(Ze=Ze.parent);break;case 347:case 339:case 341:case 352:let tr=KJ(Ze);tr&&(Ze=tr.parent);break;case 170:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&(Pt||(Pt=Ze));break;case 209:Rt&&(Rt===Ze.initializer||Rt===Ze.name&&Nu(Rt))&&HL(Ze)&&!Pt&&(Pt=Ze);break;case 196:if(Ue&262144){let ur=Ze.typeParameter.name;if(ur&&nt===ur.escapedText){_t=Ze.typeParameter.symbol;break e}}break;case 282:Rt&&Rt===Ze.propertyName&&Ze.parent.parent.moduleSpecifier&&(Ze=Ze.parent.parent.parent);break}Ne(Ze,Rt)&&(Lt=Ze),Rt=Ze,Ze=ZB(Ze)?zge(Ze)||Ze.parent:(cS(Ze)||e9e(Ze))&&PL(Ze)||Ze.parent}if(Ye&&_t&&(!Lt||_t!==Lt.symbol)&&(_t.isReferenced|=Ue),!_t){if(Rt&&(pe.assertNode(Rt,ll),Rt.commonJsModuleIndicator&&nt==="exports"&&Ue&Rt.symbol.flags))return Rt.symbol;Tt||(_t=S(_,nt,Ue))}if(!_t&&ht&&wo(ht)&&ht.parent&&ay(ht.parent,!1))return c;if($e){if(Ke&&W(ht,nt,Ke,_t))return;_t?M(ht,_t,Ue,Rt,Pt,_r):V(ht,We,Ue,$e)}return _t}function _e(Ze,We,Ue){let $e=Mg(s),Ye=We;if(Si(Ue)&&Ye.body&&Ze.valueDeclaration&&Ze.valueDeclaration.pos>=Ye.body.pos&&Ze.valueDeclaration.end<=Ye.body.end&&$e>=2){let Qe=T(Ye);return Qe===void 0&&(Qe=F(Ye.parameters,Tt)||!1,R(Ye,Qe)),!Qe}return!1;function Tt(Qe){return ot(Qe.name)||!!Qe.initializer&&ot(Qe.initializer)}function ot(Qe){switch(Qe.kind){case 220:case 219:case 263:case 177:return!1;case 175:case 178:case 179:case 304:return ot(Qe.name);case 173:return zh(Qe)?!re:ot(Qe.name);default:return IJ(Qe)||GC(Qe)?$e<7:hg(Qe)&&Qe.dotDotDotToken&&Km(Qe.parent)?$e<4:uc(Qe)?!1:Lu(Qe,ot)||!1}}}function Ee(Ze,We){return Ze.kind!==220&&Ze.kind!==219?Fw(Ze)||(kd(Ze)||Ze.kind===173&&!cg(Ze))&&(!We||We!==Ze.name):We&&We===Ze.name?!1:Ze.asteriskToken||Ga(Ze,1024)?!0:!ZL(Ze)}function Ne(Ze,We){switch(Ze.kind){case 170:return!!We&&We===Ze.name;case 263:case 264:case 265:case 267:case 266:case 268:return!0;default:return!1}}function Te(Ze,We){if(Ze.declarations){for(let Ue of Ze.declarations)if(Ue.kind===169&&(ZB(Ue.parent)?bP(Ue.parent):Ue.parent)===We)return!(ZB(Ue.parent)&&de(Ue.parent.parent.tags,iS))}return!1}}function uz(s,c=!0){switch(pe.type(s),s.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 225:return s.operator===41?mC(s.operand)||c&&eQ(s.operand):s.operator===40?mC(s.operand):!1;default:return!1}}function UAe(s){for(;s.kind===218;)s=s.expression;return s}function KAe(s){switch(pe.type(s),s.kind){case 170:case 172:case 173:case 209:case 212:case 213:case 227:case 261:case 278:case 304:case 305:case 342:case 349:return!0;default:return!1}}function Wbe(s){let c=ji(s,Mf);return!!c&&!c.importClause}var zne=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],qne=new Set(zne),jAe=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),dU=new Set([...zne,...zne.map(s=>`node:${s}`),...jAe]);function $ne(s,c,g,d){let h=wo(s),_=/import|require/g;for(;_.exec(s.text)!==null;){let S=uPt(s,_.lastIndex,c);if(h&&ay(S,g))d(S,S.arguments[0]);else if(Up(S)&&S.arguments.length>=1&&(!g||mA(S.arguments[0])))d(S,S.arguments[0]);else if(c&&ky(S))d(S,S.argument.literal);else if(c&&SN(S)){let R=LY(S);R&&Zg(R)&&R.text&&d(S,R)}}}function uPt(s,c,g){let d=wo(s),h=s,_=S=>{if(S.pos<=c&&(cg&&c(g))}function gz(s,c,g,d){let h;return _(s,c,void 0);function _(S,R,T){if(d){let V=d(S,T);if(V)return V}let W;return F(R,(V,M)=>{if(V&&h?.has(V.sourceFile.path)){(W??(W=new Set)).add(V);return}let ee=g(V,T,M);if(ee||!V)return ee;(h||(h=new Set)).add(V.sourceFile.path)})||F(R,V=>V&&!W?.has(V)?_(V.commandLine.projectReferences,V.references,V):void 0)}}function Mbe(s,c,g){return s&&Kqe(s,c,g)}function Kqe(s,c,g){return WJ(s,c,d=>OI(d.initializer)?de(d.initializer.elements,h=>Zg(h)&&h.text===g):void 0)}function DLe(s,c,g){return zAe(s,c,d=>Zg(d.initializer)&&d.initializer.text===g?d.initializer:void 0)}function zAe(s,c,g){return WJ(s,c,g)}function JA(s,c=!0){let g=s&&jqe(s);return g&&!c&&Vy(g),UL(g,!1)}function rie(s,c,g){let d=g(s);return d?ua(d,s):d=jqe(s,g),d&&!c&&Vy(d),d}function jqe(s,c){let g=c?_=>rie(_,!0,c):JA,h=_s(s,g,void 0,c?_=>_&&qAe(_,!0,c):_=>_&&o0(_),g);if(h===s){let _=Zg(s)?ua(me.createStringLiteralFromNode(s),s):mC(s)?ua(me.createNumericLiteral(s.text,s.numericLiteralFlags),s):me.cloneNode(s);return gn(_,s)}return h.parent=void 0,h}function o0(s,c=!0){if(s){let g=me.createNodeArray(s.map(d=>JA(d,c)),s.hasTrailingComma);return gn(g,s),g}return s}function qAe(s,c,g){return me.createNodeArray(s.map(d=>rie(d,c,g)),s.hasTrailingComma)}function Vy(s){Hbe(s),kLe(s)}function Hbe(s){pU(s,1024,gPt)}function kLe(s){pU(s,2048,ube)}function pU(s,c,g){Gw(s,c);let d=g(s);d&&pU(d,c,g)}function gPt(s){return Lu(s,c=>c)}function xLe(){let s,c,g,d,h;return{createBaseSourceFileNode:_,createBaseIdentifierNode:S,createBasePrivateIdentifierNode:R,createBaseTokenNode:T,createBaseNode:W};function _(V){return new(h||(h=ZC.getSourceFileConstructor()))(V,-1,-1)}function S(V){return new(g||(g=ZC.getIdentifierConstructor()))(V,-1,-1)}function R(V){return new(d||(d=ZC.getPrivateIdentifierConstructor()))(V,-1,-1)}function T(V){return new(c||(c=ZC.getTokenConstructor()))(V,-1,-1)}function W(V){return new(s||(s=ZC.getNodeConstructor()))(V,-1,-1)}}function pv(s){let c,g;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:h,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:M,parenthesizeExpressionOfComputedPropertyName:ee,parenthesizeConditionOfConditionalExpression:re,parenthesizeBranchOfConditionalExpression:ge,parenthesizeExpressionOfExportDefault:Ie,parenthesizeExpressionOfNew:_e,parenthesizeLeftSideOfAccess:Ee,parenthesizeOperandOfPostfixUnary:Ne,parenthesizeOperandOfPrefixUnary:Te,parenthesizeExpressionsOfCommaDelimitedList:Ze,parenthesizeExpressionForDisallowedComma:We,parenthesizeExpressionOfExpressionStatement:Ue,parenthesizeConciseBodyOfArrowFunction:$e,parenthesizeCheckTypeOfConditionalType:Ye,parenthesizeExtendsTypeOfConditionalType:Tt,parenthesizeConstituentTypesOfUnionType:Qe,parenthesizeConstituentTypeOfUnionType:ot,parenthesizeConstituentTypesOfIntersectionType:ht,parenthesizeConstituentTypeOfIntersectionType:mt,parenthesizeOperandOfTypeOperator:_t,parenthesizeOperandOfReadonlyTypeOperator:Rt,parenthesizeNonArrayTypeOfPostfixType:Lt,parenthesizeElementTypesOfTupleType:Ke,parenthesizeElementTypeOfTupleType:Pt,parenthesizeTypeOfOptionalType:Gt,parenthesizeTypeArguments:tr,parenthesizeLeadingTypeArgument:nt};function d(ur){c||(c=new Map);let Gr=c.get(ur);return Gr||(Gr=dt=>V(ur,dt),c.set(ur,Gr)),Gr}function h(ur){g||(g=new Map);let Gr=g.get(ur);return Gr||(Gr=dt=>M(ur,void 0,dt),g.set(ur,Gr)),Gr}function _(ur,Gr){return ur===61?Gr===56||Gr===57:Gr===61?ur===56||ur===57:!1}function S(ur,Gr,dt,pr){let st=o2(Gr);if(fo(st)&&_(ur,st.operatorToken.kind))return!0;let ir=yne(227,ur),zt=Lye(227,ur);if(!dt&&Gr.kind===220&&ir>3)return!0;let Ht=x7(st);switch(Zt(Ht,ir)){case-1:return!(!dt&&zt===1&&Gr.kind===230);case 1:return!1;case 0:if(dt)return zt===1;if(fo(st)&&st.operatorToken.kind===ur){if(R(ur))return!1;if(ur===40){let mn=pr?T(pr):0;if(pY(mn)&&mn===T(st))return!1}}return Zye(st)===0}}function R(ur){return ur===42||ur===52||ur===51||ur===53||ur===28}function T(ur){if(ur=o2(ur),pY(ur.kind))return ur.kind;if(ur.kind===227&&ur.operatorToken.kind===40){if(ur.cachedLiteralKind!==void 0)return ur.cachedLiteralKind;let Gr=T(ur.left),dt=pY(Gr)&&Gr===T(ur.right)?Gr:0;return ur.cachedLiteralKind=dt,dt}return 0}function W(ur,Gr,dt,pr){return o2(Gr).kind===218?Gr:S(ur,Gr,dt,pr)?s.createParenthesizedExpression(Gr):Gr}function V(ur,Gr){return W(ur,Gr,!0)}function M(ur,Gr,dt){return W(ur,dt,!1,Gr)}function ee(ur){return Ade(ur)?s.createParenthesizedExpression(ur):ur}function re(ur){let Gr=yne(228,58),dt=o2(ur),pr=x7(dt);return Zt(pr,Gr)!==1?s.createParenthesizedExpression(ur):ur}function ge(ur){let Gr=o2(ur);return Ade(Gr)?s.createParenthesizedExpression(ur):ur}function Ie(ur){let Gr=o2(ur),dt=Ade(Gr);if(!dt)switch(aU(Gr,!1).kind){case 232:case 219:dt=!0}return dt?s.createParenthesizedExpression(ur):ur}function _e(ur){let Gr=aU(ur,!0);switch(Gr.kind){case 214:return s.createParenthesizedExpression(ur);case 215:return Gr.arguments?ur:s.createParenthesizedExpression(ur)}return Ee(ur)}function Ee(ur,Gr){let dt=o2(ur);return D_(dt)&&(dt.kind!==215||dt.arguments)&&(Gr||!GC(dt))?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ne(ur){return D_(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Te(ur){return Rre(ur)?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ze(ur){let Gr=Tr(ur,We);return gn(s.createNodeArray(Gr,ur.hasTrailingComma),ur)}function We(ur){let Gr=o2(ur),dt=x7(Gr),pr=yne(227,28);return dt>pr?ur:gn(s.createParenthesizedExpression(ur),ur)}function Ue(ur){let Gr=o2(ur);if(Zl(Gr)){let pr=Gr.expression,st=o2(pr).kind;if(st===219||st===220){let ir=s.updateCallExpression(Gr,gn(s.createParenthesizedExpression(pr),pr),Gr.typeArguments,Gr.arguments);return s.restoreOuterExpressions(ur,ir,8)}}let dt=aU(Gr,!1).kind;return dt===211||dt===219?gn(s.createParenthesizedExpression(ur),ur):ur}function $e(ur){return!$u(ur)&&(Ade(ur)||aU(ur,!1).kind===211)?gn(s.createParenthesizedExpression(ur),ur):ur}function Ye(ur){switch(ur.kind){case 185:case 186:case 195:return s.createParenthesizedType(ur)}return ur}function Tt(ur){switch(ur.kind){case 195:return s.createParenthesizedType(ur)}return ur}function ot(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return Ye(ur)}function Qe(ur){return s.createNodeArray(Tr(ur,ot))}function mt(ur){switch(ur.kind){case 193:case 194:return s.createParenthesizedType(ur)}return ot(ur)}function ht(ur){return s.createNodeArray(Tr(ur,mt))}function _t(ur){switch(ur.kind){case 194:return s.createParenthesizedType(ur)}return mt(ur)}function Rt(ur){switch(ur.kind){case 199:return s.createParenthesizedType(ur)}return _t(ur)}function Lt(ur){switch(ur.kind){case 196:case 199:case 187:return s.createParenthesizedType(ur)}return _t(ur)}function Ke(ur){return s.createNodeArray(Tr(ur,Pt))}function Pt(ur){return _r(ur)?s.createParenthesizedType(ur):ur}function _r(ur){return Iie(ur)?ur.postfix:KT(ur)||x_(ur)||$D(ur)||xB(ur)?_r(ur.type):d2(ur)?_r(ur.falseType):aS(ur)||mf(ur)?_r(Ei(ur.types)):jT(ur)?!!ur.typeParameter.constraint&&_r(ur.typeParameter.constraint):!1}function Gt(ur){return _r(ur)?s.createParenthesizedType(ur):Lt(ur)}function nt(ur){return oge(ur)&&ur.typeParameters?s.createParenthesizedType(ur):ur}function Dt(ur,Gr){return Gr===0?nt(ur):ur}function tr(ur){if(jt(ur))return s.createNodeArray(Tr(ur,Dt))}}var Ybe={getParenthesizeLeftSideOfBinaryForOperator:s=>Fl,getParenthesizeRightSideOfBinaryForOperator:s=>Fl,parenthesizeLeftSideOfBinary:(s,c)=>c,parenthesizeRightSideOfBinary:(s,c,g)=>g,parenthesizeExpressionOfComputedPropertyName:Fl,parenthesizeConditionOfConditionalExpression:Fl,parenthesizeBranchOfConditionalExpression:Fl,parenthesizeExpressionOfExportDefault:Fl,parenthesizeExpressionOfNew:s=>Ma(s,D_),parenthesizeLeftSideOfAccess:s=>Ma(s,D_),parenthesizeOperandOfPostfixUnary:s=>Ma(s,D_),parenthesizeOperandOfPrefixUnary:s=>Ma(s,Rre),parenthesizeExpressionsOfCommaDelimitedList:s=>Ma(s,tN),parenthesizeExpressionForDisallowedComma:Fl,parenthesizeExpressionOfExpressionStatement:Fl,parenthesizeConciseBodyOfArrowFunction:Fl,parenthesizeCheckTypeOfConditionalType:Fl,parenthesizeExtendsTypeOfConditionalType:Fl,parenthesizeConstituentTypesOfUnionType:s=>Ma(s,tN),parenthesizeConstituentTypeOfUnionType:Fl,parenthesizeConstituentTypesOfIntersectionType:s=>Ma(s,tN),parenthesizeConstituentTypeOfIntersectionType:Fl,parenthesizeOperandOfTypeOperator:Fl,parenthesizeOperandOfReadonlyTypeOperator:Fl,parenthesizeNonArrayTypeOfPostfixType:Fl,parenthesizeElementTypesOfTupleType:s=>Ma(s,tN),parenthesizeElementTypeOfTupleType:Fl,parenthesizeTypeOfOptionalType:Fl,parenthesizeTypeArguments:s=>s&&Ma(s,tN),parenthesizeLeadingTypeArgument:Fl};function GLe(s){return{convertToFunctionBlock:c,convertToFunctionExpression:g,convertToClassExpression:d,convertToArrayAssignmentElement:h,convertToObjectAssignmentElement:_,convertToAssignmentPattern:S,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:T,convertToAssignmentElementTarget:W};function c(V,M){if($u(V))return V;let ee=s.createReturnStatement(V);gn(ee,V);let re=s.createBlock([ee],M);return gn(re,V),re}function g(V){var M;if(!V.body)return pe.fail("Cannot convert a FunctionDeclaration without a body");let ee=s.createFunctionExpression((M=$R(V))==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.asteriskToken,V.name,V.typeParameters,V.parameters,V.type,V.body);return ua(ee,V),gn(ee,V),D3(V)&&Md(ee,!0),ee}function d(V){var M;let ee=s.createClassExpression((M=V.modifiers)==null?void 0:M.filter(re=>!y(re)&&!w(re)),V.name,V.typeParameters,V.heritageClauses,V.members);return ua(ee,V),gn(ee,V),D3(V)&&Md(ee,!0),ee}function h(V){if(hg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadElement(V.name),V),V);let M=W(V.name);return V.initializer?ua(gn(s.createAssignment(M,V.initializer),V),V):M}return Ma(V,un)}function _(V){if(hg(V)){if(V.dotDotDotToken)return pe.assertNode(V.name,Ir),ua(gn(s.createSpreadAssignment(V.name),V),V);if(V.propertyName){let M=W(V.name);return ua(gn(s.createPropertyAssignment(V.propertyName,V.initializer?s.createAssignment(M,V.initializer):M),V),V)}return pe.assertNode(V.name,Ir),ua(gn(s.createShorthandPropertyAssignment(V.name,V.initializer),V),V)}return Ma(V,yw)}function S(V){switch(V.kind){case 208:case 210:return T(V);case 207:case 211:return R(V)}}function R(V){return Km(V)?ua(gn(s.createObjectLiteralExpression(At(V.elements,_)),V),V):Ma(V,og)}function T(V){return p2(V)?ua(gn(s.createArrayLiteralExpression(At(V.elements,h)),V),V):Ma(V,OI)}function W(V){return Nu(V)?S(V):Ma(V,un)}}var Qbe={convertToFunctionBlock:il,convertToFunctionExpression:il,convertToClassExpression:il,convertToArrayAssignmentElement:il,convertToObjectAssignmentElement:il,convertToAssignmentPattern:il,convertToObjectAssignmentPattern:il,convertToArrayAssignmentPattern:il,convertToAssignmentElementTarget:il},Xbe=0,Jbe=(s=>(s[s.None=0]="None",s[s.NoParenthesizerRules=1]="NoParenthesizerRules",s[s.NoNodeConverters=2]="NoNodeConverters",s[s.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",s[s.NoOriginalNode=8]="NoOriginalNode",s))(Jbe||{}),zqe=[];function qqe(s){zqe.push(s)}function nie(s,c){let g=s&8?Fl:ua,d=FA(()=>s&1?Ybe:pv(Ee)),h=FA(()=>s&2?Qbe:GLe(Ee)),_=ZA(q=>(Ce,Pe)=>$s(Ce,q,Pe)),S=ZA(q=>Ce=>en(q,Ce)),R=ZA(q=>Ce=>_i(Ce,q)),T=ZA(q=>()=>hu(q)),W=ZA(q=>Ce=>KU(q,Ce)),V=ZA(q=>(Ce,Pe)=>Fo(q,Ce,Pe)),M=ZA(q=>(Ce,Pe)=>vE(q,Ce,Pe)),ee=ZA(q=>(Ce,Pe)=>$P(q,Ce,Pe)),re=ZA(q=>(Ce,Pe)=>y5(q,Ce,Pe)),ge=ZA(q=>(Ce,Pe,yt)=>rZ(q,Ce,Pe,yt)),Ie=ZA(q=>(Ce,Pe,yt)=>Cse(q,Ce,Pe,yt)),_e=ZA(q=>(Ce,Pe,yt,Rr)=>b5(q,Ce,Pe,yt,Rr)),Ee={get parenthesizer(){return d()},get converters(){return h()},baseFactory:c,flags:s,createNodeArray:Ne,createNumericLiteral:Ue,createBigIntLiteral:$e,createStringLiteral:Tt,createStringLiteralFromNode:ot,createRegularExpressionLiteral:Qe,createLiteralLikeNode:mt,createIdentifier:Rt,createTempVariable:Lt,createLoopVariable:Ke,createUniqueName:Pt,getGeneratedNameForNode:_r,createPrivateIdentifier:nt,createUniquePrivateName:tr,getGeneratedPrivateNameForNode:ur,createToken:dt,createSuper:pr,createThis:st,createNull:ir,createTrue:zt,createFalse:Ht,createModifier:Br,createModifiersFromModifierFlags:mn,createQualifiedName:jn,updateQualifiedName:Zi,createComputedPropertyName:Ns,updateComputedPropertyName:An,createTypeParameterDeclaration:si,updateTypeParameterDeclaration:ks,createParameterDeclaration:Ic,updateParameterDeclaration:su,createDecorator:Zn,updateDecorator:ya,createPropertySignature:Gl,updatePropertySignature:ba,createPropertyDeclaration:hc,updatePropertyDeclaration:yr,createMethodSignature:hn,updateMethodSignature:Oi,createMethodDeclaration:lo,updateMethodDeclaration:pa,createConstructorDeclaration:Cs,updateConstructorDeclaration:Tu,createGetAccessorDeclaration:Pn,updateGetAccessorDeclaration:pt,createSetAccessorDeclaration:it,updateSetAccessorDeclaration:nr,createCallSignature:Kr,updateCallSignature:Dn,createConstructSignature:hr,updateConstructSignature:En,createIndexSignature:Ni,updateIndexSignature:Gi,createClassStaticBlockDeclaration:tl,updateClassStaticBlockDeclaration:Qu,createTemplateLiteralTypeSpan:nn,updateTemplateLiteralTypeSpan:bn,createKeywordTypeNode:ds,createTypePredicateNode:Mt,updateTypePredicateNode:cn,createTypeReferenceNode:Bt,updateTypeReferenceNode:xe,createFunctionTypeNode:fr,updateFunctionTypeNode:Je,createConstructorTypeNode:Hn,updateConstructorTypeNode:ri,createTypeQueryNode:Ys,updateTypeQueryNode:tn,createTypeLiteralNode:wn,updateTypeLiteralNode:Mn,createArrayTypeNode:ci,updateArrayTypeNode:es,createTupleTypeNode:Wi,updateTupleTypeNode:Vn,createNamedTupleMember:Ui,updateNamedTupleMember:gs,createOptionalTypeNode:fs,updateOptionalTypeNode:bi,createRestTypeNode:mc,updateRestTypeNode:gg,createUnionTypeNode:wI,updateUnionTypeNode:AI,createIntersectionTypeNode:pp,updateIntersectionTypeNode:Dl,createConditionalTypeNode:yu,updateConditionalTypeNode:tm,createInferTypeNode:jp,updateInferTypeNode:Xg,createImportTypeNode:gu,updateImportTypeNode:bg,createParenthesizedType:KA,updateParenthesizedType:TA,createThisTypeNode:oi,createTypeOperatorNode:$d,updateTypeOperatorNode:YI,createIndexedAccessTypeNode:Fh,updateIndexedAccessTypeNode:WC,createMappedTypeNode:_f,updateMappedTypeNode:QI,createLiteralTypeNode:ve,updateLiteralTypeNode:mr,createTemplateLiteralType:sh,updateTemplateLiteralType:dS,createObjectBindingPattern:ln,updateObjectBindingPattern:ni,createArrayBindingPattern:Ls,updateArrayBindingPattern:Za,createBindingElement:Go,updateBindingElement:Ss,createArrayLiteralExpression:Uc,updateArrayLiteralExpression:rl,createObjectLiteralExpression:xd,updateObjectLiteralExpression:Lg,createPropertyAccessExpression:s&4?(q,Ce)=>ti(rm(q,Ce),262144):rm,updatePropertyAccessExpression:_h,createPropertyAccessChain:s&4?(q,Ce,Pe)=>ti(Gp(q,Ce,Pe),262144):Gp,updatePropertyAccessChain:oh,createElementAccessExpression:Z_,updateElementAccessExpression:m2,createElementAccessChain:Vb,updateElementAccessChain:or,createCallExpression:Js,updateCallExpression:Hl,createCallChain:RA,updateCallChain:NA,createNewExpression:uA,updateNewExpression:hm,createTaggedTemplateExpression:af,updateTaggedTemplateExpression:dI,createTypeAssertion:XI,updateTypeAssertion:C2,createParenthesizedExpression:d_,updateParenthesizedExpression:OC,createFunctionExpression:E1,updateFunctionExpression:gy,createArrowFunction:yv,updateArrowFunction:ik,createDeleteExpression:Wx,updateDeleteExpression:Ox,createTypeOfExpression:Pb,updateTypeOfExpression:qm,createVoidExpression:oR,updateVoidExpression:pS,createAwaitExpression:xN,updateAwaitExpression:at,createPrefixUnaryExpression:en,updatePrefixUnaryExpression:gi,createPostfixUnaryExpression:_i,updatePostfixUnaryExpression:ys,createBinaryExpression:$s,updateBinaryExpression:pc,createConditionalExpression:ul,updateConditionalExpression:Fe,createTemplateExpression:gr,updateTemplateExpression:Ln,createTemplateHead:Df,createTemplateMiddle:Jg,createTemplateTail:MC,createNoSubstitutionTemplateLiteral:S1,createTemplateLiteralLikeNode:Eu,createYieldExpression:fS,updateYieldExpression:bv,createSpreadElement:XF,updateSpreadElement:o9,createClassExpression:My,updateClassExpression:sk,createOmittedExpression:aR,createExpressionWithTypeArguments:WB,updateExpressionWithTypeArguments:UP,createAsExpression:br,updateAsExpression:sn,createNonNullExpression:ei,updateNonNullExpression:is,createSatisfiesExpression:Qs,updateSatisfiesExpression:Oo,createNonNullChain:Os,updateNonNullChain:co,createMetaProperty:Yc,updateMetaProperty:tu,createTemplateSpan:$a,updateTemplateSpan:ru,createSemicolonClassElement:gl,createBlock:kf,updateBlock:Wb,createVariableStatement:OB,updateVariableStatement:p_,createEmptyStatement:MB,createExpressionStatement:v1,updateExpressionStatement:s5,createIfStatement:GN,updateIfStatement:ok,createDoStatement:o5,updateDoStatement:ak,createWhileStatement:gse,updateWhileStatement:hpe,createForStatement:Ase,updateForStatement:Mx,createForInStatement:a5,updateForInStatement:WU,createForOfStatement:a9,updateForOfStatement:OU,createContinueStatement:qz,updateContinueStatement:mpe,createBreakStatement:MU,updateBreakStatement:$z,createReturnStatement:c5,updateReturnStatement:dse,createWithStatement:HU,updateWithStatement:eq,createSwitchStatement:EQ,updateSwitchStatement:KP,createLabeledStatement:tq,updateLabeledStatement:rq,createThrowStatement:SQ,updateThrowStatement:jP,createTryStatement:c9,updateTryStatement:JF,createDebuggerStatement:UF,createVariableDeclaration:KF,updateVariableDeclaration:zP,createVariableDeclarationList:l5,updateVariableDeclarationList:YU,createFunctionDeclaration:u5,updateFunctionDeclaration:PA,createClassDeclaration:pse,updateClassDeclaration:jF,createInterfaceDeclaration:zF,updateInterfaceDeclaration:ck,createTypeAliasDeclaration:bf,updateTypeAliasDeclaration:l0,createEnumDeclaration:Ob,updateEnumDeclaration:u0,createModuleDeclaration:g5,updateModuleDeclaration:Ay,createModuleBlock:lk,updateModuleBlock:Hy,createCaseBlock:HB,updateCaseBlock:Mw,createNamespaceExportDeclaration:A5,updateNamespaceExportDeclaration:d5,createImportEqualsDeclaration:fse,updateImportEqualsDeclaration:l9,createImportDeclaration:vQ,updateImportDeclaration:Sr,createImportClause:XU,updateImportClause:Hx,createAssertClause:Hw,updateAssertClause:u9,createAssertEntry:qP,updateAssertEntry:dy,createImportTypeAssertionContainer:cR,updateImportTypeAssertionContainer:YB,createImportAttributes:p5,updateImportAttributes:gA,createImportAttribute:IS,updateImportAttribute:g9,createNamespaceImport:JU,updateNamespaceImport:qF,createNamespaceExport:BQ,updateNamespaceExport:Ev,createNamedImports:Yx,updateNamedImports:f5,createImportSpecifier:A9,updateImportSpecifier:FN,createExportAssignment:wQ,updateExportAssignment:I5,createExportDeclaration:fa,updateExportDeclaration:sa,createNamedExports:UU,updateNamedExports:$F,createExportSpecifier:TQ,updateExportSpecifier:Ise,createMissingDeclaration:_pe,createExternalModuleReference:qo,updateExternalModuleReference:py,get createJSDocAllType(){return T(313)},get createJSDocUnknownType(){return T(314)},get createJSDocNonNullableType(){return M(316)},get updateJSDocNonNullableType(){return ee(316)},get createJSDocNullableType(){return M(315)},get updateJSDocNullableType(){return ee(315)},get createJSDocOptionalType(){return W(317)},get updateJSDocOptionalType(){return V(317)},get createJSDocVariadicType(){return W(319)},get updateJSDocVariadicType(){return V(319)},get createJSDocNamepathType(){return W(320)},get updateJSDocNamepathType(){return V(320)},createJSDocFunctionType:hse,updateJSDocFunctionType:nq,createJSDocTypeLiteral:G0,updateJSDocTypeLiteral:uk,createJSDocTypeExpression:lR,updateJSDocTypeExpression:eW,createJSDocSignature:jU,updateJSDocSignature:tW,createJSDocTemplateTag:Mb,updateJSDocTemplateTag:d9,createJSDocTypedefTag:h5,updateJSDocTypedefTag:iq,createJSDocParameterTag:m5,updateJSDocParameterTag:rW,createJSDocPropertyTag:sq,updateJSDocPropertyTag:eZ,createJSDocCallbackTag:ZN,updateJSDocCallbackTag:nW,createJSDocOverloadTag:C5,updateJSDocOverloadTag:p9,createJSDocAugmentsTag:iW,updateJSDocAugmentsTag:Qw,createJSDocImplementsTag:tZ,updateJSDocImplementsTag:cq,createJSDocSeeTag:Qx,updateJSDocSeeTag:sW,createJSDocImportTag:Hb,updateJSDocImportTag:vv,createJSDocNameReference:HC,updateJSDocNameReference:RQ,createJSDocMemberName:Xx,updateJSDocMemberName:_5,createJSDocLink:zU,updateJSDocLink:Jx,createJSDocLinkCode:mse,updateJSDocLinkCode:oq,createJSDocLinkPlain:aq,updateJSDocLinkPlain:ype,get createJSDocTypeTag(){return Ie(345)},get updateJSDocTypeTag(){return _e(345)},get createJSDocReturnTag(){return Ie(343)},get updateJSDocReturnTag(){return _e(343)},get createJSDocThisTag(){return Ie(344)},get updateJSDocThisTag(){return _e(344)},get createJSDocAuthorTag(){return re(331)},get updateJSDocAuthorTag(){return ge(331)},get createJSDocClassTag(){return re(333)},get updateJSDocClassTag(){return ge(333)},get createJSDocPublicTag(){return re(334)},get updateJSDocPublicTag(){return ge(334)},get createJSDocPrivateTag(){return re(335)},get updateJSDocPrivateTag(){return ge(335)},get createJSDocProtectedTag(){return re(336)},get updateJSDocProtectedTag(){return ge(336)},get createJSDocReadonlyTag(){return re(337)},get updateJSDocReadonlyTag(){return ge(337)},get createJSDocOverrideTag(){return re(338)},get updateJSDocOverrideTag(){return ge(338)},get createJSDocDeprecatedTag(){return re(332)},get updateJSDocDeprecatedTag(){return ge(332)},get createJSDocThrowsTag(){return Ie(350)},get updateJSDocThrowsTag(){return _e(350)},get createJSDocSatisfiesTag(){return Ie(351)},get updateJSDocSatisfiesTag(){return _e(351)},createJSDocEnumTag:YC,updateJSDocEnumTag:lq,createJSDocUnknownTag:qU,updateJSDocUnknownTag:Zh,createJSDocText:NQ,updateJSDocText:uR,createJSDocComment:oW,updateJSDocComment:f9,createJsxElement:uq,updateJsxElement:bpe,createJsxSelfClosingElement:TI,updateJsxSelfClosingElement:_se,createJsxOpeningElement:$U,updateJsxOpeningElement:DQ,createJsxClosingElement:gq,updateJsxClosingElement:F0,createJsxFragment:BE,createJsxText:E5,updateJsxText:wE,createJsxOpeningFragment:tK,createJsxJsxClosingFragment:Ux,updateJsxFragment:eK,createJsxAttribute:Aq,updateJsxAttribute:rK,createJsxAttributes:Xw,updateJsxAttributes:dq,createJsxSpreadAttribute:yse,updateJsxSpreadAttribute:pq,createJsxExpression:nK,updateJsxExpression:fq,createJsxNamespacedName:I9,updateJsxNamespacedName:B1,createCaseClause:LN,updateCaseClause:iK,createDefaultClause:sK,updateDefaultClause:jA,createHeritageClause:Uo,updateHeritageClause:mS,createCatchClause:$m,updateCatchClause:S5,createPropertyAssignment:oK,updatePropertyAssignment:kQ,createShorthandPropertyAssignment:aK,updateShorthandPropertyAssignment:Ae,createSpreadAssignment:fn,updateSpreadAssignment:qi,createEnumMember:ic,updateEnumMember:Oc,createSourceFile:zl,updateSourceFile:B5,createRedirectedSourceFile:Vc,createBundle:Qy,updateBundle:aW,createSyntheticExpression:Iq,createSyntaxList:QB,createNotEmittedStatement:Hf,createNotEmittedTypeElement:Jw,createPartiallyEmittedExpression:cK,updatePartiallyEmittedExpression:h9,createCommaListExpression:xQ,updateCommaListExpression:lWe,createSyntheticReferenceExpression:Epe,updateSyntheticReferenceExpression:hq,cloneNode:lK,get createComma(){return _(28)},get createAssignment(){return _(64)},get createLogicalOr(){return _(57)},get createLogicalAnd(){return _(56)},get createBitwiseOr(){return _(52)},get createBitwiseXor(){return _(53)},get createBitwiseAnd(){return _(51)},get createStrictEquality(){return _(37)},get createStrictInequality(){return _(38)},get createEquality(){return _(35)},get createInequality(){return _(36)},get createLessThan(){return _(30)},get createLessThanEquals(){return _(33)},get createGreaterThan(){return _(32)},get createGreaterThanEquals(){return _(34)},get createLeftShift(){return _(48)},get createRightShift(){return _(49)},get createUnsignedRightShift(){return _(50)},get createAdd(){return _(40)},get createSubtract(){return _(41)},get createMultiply(){return _(42)},get createDivide(){return _(44)},get createModulo(){return _(45)},get createExponent(){return _(43)},get createPrefixPlus(){return S(40)},get createPrefixMinus(){return S(41)},get createPrefixIncrement(){return S(46)},get createPrefixDecrement(){return S(47)},get createBitwiseNot(){return S(55)},get createLogicalNot(){return S(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:uWe,createImmediatelyInvokedArrowFunction:GQ,createVoidZero:uK,createExportDefault:vpe,createExternalModuleExport:Cq,createTypeCheck:kl,createIsNotTypeCheck:lW,createMethodCall:no,createGlobalMethodCall:FQ,createFunctionBindCall:Bpe,createFunctionCallCall:bse,createFunctionApplyCall:Ese,createArraySliceCall:l2e,createArrayConcatCall:gK,createObjectDefinePropertyCall:gWe,createObjectGetOwnPropertyDescriptorCall:Sse,createReflectGetCall:gk,createReflectSetCall:u2e,createPropertyDescriptor:AWe,createCallBinding:vse,createAssignmentTargetWrapper:VN,inlineExpressions:rt,getInternalName:xr,getLocalName:Tn,getExportName:Ai,getDeclarationName:Pi,getNamespaceMemberName:Ba,getExternalModuleOrNamespaceExportName:Xo,restoreOuterExpressions:Tpe,restoreEnclosingLabel:T5,createUseStrictPrologue:Tl,copyPrologue:uo,copyStandardPrologue:bp,copyCustomPrologue:ep,ensureUseStrict:zA,liftToBlock:Bv,mergeLexicalEnvironment:C9,replaceModifiers:_9,replaceDecoratorsAndModifiers:Kx,replacePropertyName:uW};return F(zqe,q=>q(Ee)),Ee;function Ne(q,Ce){if(q===void 0||q===E)q=[];else if(tN(q)){if(Ce===void 0||q.hasTrailingComma===Ce)return q.transformFlags===void 0&&fU(q),pe.attachNodeArrayDebugInfo(q),q;let Rr=q.slice();return Rr.pos=q.pos,Rr.end=q.end,Rr.hasTrailingComma=Ce,Rr.transformFlags=q.transformFlags,pe.attachNodeArrayDebugInfo(Rr),Rr}let Pe=q.length,yt=Pe>=1&&Pe<=4?q.slice():q;return yt.pos=-1,yt.end=-1,yt.hasTrailingComma=!!Ce,yt.transformFlags=0,fU(yt),pe.attachNodeArrayDebugInfo(yt),yt}function Te(q){return c.createBaseNode(q)}function Ze(q){let Ce=Te(q);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function We(q,Ce){return q!==Ce&&(q.typeArguments=Ce.typeArguments),vo(q,Ce)}function Ue(q,Ce=0){let Pe=typeof q=="number"?q+"":q;pe.assert(Pe.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let yt=Ze(9);return yt.text=Pe,yt.numericLiteralFlags=Ce,Ce&384&&(yt.transformFlags|=1024),yt}function $e(q){let Ce=Gr(10);return Ce.text=typeof q=="string"?q:kP(q)+"n",Ce.transformFlags|=32,Ce}function Ye(q,Ce){let Pe=Ze(11);return Pe.text=q,Pe.singleQuote=Ce,Pe}function Tt(q,Ce,Pe){let yt=Ye(q,Ce);return yt.hasExtendedUnicodeEscape=Pe,Pe&&(yt.transformFlags|=1024),yt}function ot(q){let Ce=Ye(c2(q),void 0);return Ce.textSourceNode=q,Ce}function Qe(q){let Ce=Gr(14);return Ce.text=q,Ce}function mt(q,Ce){switch(q){case 9:return Ue(Ce,0);case 10:return $e(Ce);case 11:return Tt(Ce,void 0);case 12:return E5(Ce,!1);case 13:return E5(Ce,!0);case 14:return Qe(Ce);case 15:return Eu(q,Ce,void 0,0)}}function ht(q){let Ce=c.createBaseIdentifierNode(80);return Ce.escapedText=q,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function _t(q,Ce,Pe,yt){let Rr=ht(Ap(q));return oie(Rr,{flags:Ce,id:Xbe,prefix:Pe,suffix:yt}),Xbe++,Rr}function Rt(q,Ce,Pe){Ce===void 0&&q&&(Ce=Ta(q)),Ce===80&&(Ce=void 0);let yt=ht(Ap(q));return Pe&&(yt.flags|=256),yt.escapedText==="await"&&(yt.transformFlags|=67108864),yt.flags&256&&(yt.transformFlags|=1024),yt}function Lt(q,Ce,Pe,yt){let Rr=1;Ce&&(Rr|=8);let Ii=_t("",Rr,Pe,yt);return q&&q(Ii),Ii}function Ke(q){let Ce=2;return q&&(Ce|=8),_t("",Ce,void 0,void 0)}function Pt(q,Ce=0,Pe,yt){return pe.assert(!(Ce&7),"Argument out of range: flags"),pe.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),_t(q,3|Ce,Pe,yt)}function _r(q,Ce=0,Pe,yt){pe.assert(!(Ce&7),"Argument out of range: flags");let Rr=q?_w(q)?M3(!1,Pe,q,yt,Vo):`generated@${rd(q)}`:"";(Pe||yt)&&(Ce|=16);let Ii=_t(Rr,4|Ce,Pe,yt);return Ii.original=q,Ii}function Gt(q){let Ce=c.createBasePrivateIdentifierNode(81);return Ce.escapedText=q,Ce.transformFlags|=16777216,Ce}function nt(q){return Ac(q,"#")||pe.fail("First character of private identifier must be #: "+q),Gt(Ap(q))}function Dt(q,Ce,Pe,yt){let Rr=Gt(Ap(q));return oie(Rr,{flags:Ce,id:Xbe,prefix:Pe,suffix:yt}),Xbe++,Rr}function tr(q,Ce,Pe){q&&!Ac(q,"#")&&pe.fail("First character of private identifier must be #: "+q);let yt=8|(q?3:1);return Dt(q??"",yt,Ce,Pe)}function ur(q,Ce,Pe){let yt=_w(q)?M3(!0,Ce,q,Pe,Vo):`#generated@${rd(q)}`,Ii=Dt(yt,4|(Ce||Pe?16:0),Ce,Pe);return Ii.original=q,Ii}function Gr(q){return c.createBaseTokenNode(q)}function dt(q){pe.assert(q>=0&&q<=166,"Invalid token"),pe.assert(q<=15||q>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),pe.assert(q<=9||q>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),pe.assert(q!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=Gr(q),Pe=0;switch(q){case 134:Pe=384;break;case 160:Pe=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Pe=1;break;case 108:Pe=134218752,Ce.flowNode=void 0;break;case 126:Pe=1024;break;case 129:Pe=16777216;break;case 110:Pe=16384,Ce.flowNode=void 0;break}return Pe&&(Ce.transformFlags|=Pe),Ce}function pr(){return dt(108)}function st(){return dt(110)}function ir(){return dt(106)}function zt(){return dt(112)}function Ht(){return dt(97)}function Br(q){return dt(q)}function mn(q){let Ce=[];return q&32&&Ce.push(Br(95)),q&128&&Ce.push(Br(138)),q&2048&&Ce.push(Br(90)),q&4096&&Ce.push(Br(87)),q&1&&Ce.push(Br(125)),q&2&&Ce.push(Br(123)),q&4&&Ce.push(Br(124)),q&64&&Ce.push(Br(128)),q&256&&Ce.push(Br(126)),q&16&&Ce.push(Br(164)),q&8&&Ce.push(Br(148)),q&512&&Ce.push(Br(129)),q&1024&&Ce.push(Br(134)),q&8192&&Ce.push(Br(103)),q&16384&&Ce.push(Br(147)),Ce.length?Ce:void 0}function jn(q,Ce){let Pe=Te(167);return Pe.left=q,Pe.right=Fm(Ce),Pe.transformFlags|=zs(Pe.left)|iie(Pe.right),Pe.flowNode=void 0,Pe}function Zi(q,Ce,Pe){return q.left!==Ce||q.right!==Pe?vo(jn(Ce,Pe),q):q}function Ns(q){let Ce=Te(168);return Ce.expression=d().parenthesizeExpressionOfComputedPropertyName(q),Ce.transformFlags|=zs(Ce.expression)|1024|131072,Ce}function An(q,Ce){return q.expression!==Ce?vo(Ns(Ce),q):q}function si(q,Ce,Pe,yt){let Rr=Ze(169);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.constraint=Pe,Rr.default=yt,Rr.transformFlags=1,Rr.expression=void 0,Rr.jsDoc=void 0,Rr}function ks(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.constraint!==yt||q.default!==Rr?vo(si(Ce,Pe,yt,Rr),q):q}function Ic(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(170);return Jo.modifiers=nd(q),Jo.dotDotDotToken=Ce,Jo.name=Fm(Pe),Jo.questionToken=yt,Jo.type=Rr,Jo.initializer=Z0(Ii),vF(Jo.name)?Jo.transformFlags=1:Jo.transformFlags=CA(Jo.modifiers)|zs(Jo.dotDotDotToken)|NB(Jo.name)|zs(Jo.questionToken)|zs(Jo.initializer)|(Jo.questionToken??Jo.type?1:0)|(Jo.dotDotDotToken??Jo.initializer?1024:0)|(Dw(Jo.modifiers)&31?8192:0),Jo.jsDoc=void 0,Jo}function su(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.dotDotDotToken!==Pe||q.name!==yt||q.questionToken!==Rr||q.type!==Ii||q.initializer!==Jo?vo(Ic(Ce,Pe,yt,Rr,Ii,Jo),q):q}function Zn(q){let Ce=Te(171);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1|8192|33554432,Ce}function ya(q,Ce){return q.expression!==Ce?vo(Zn(Ce),q):q}function Gl(q,Ce,Pe,yt){let Rr=Ze(172);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.type=yt,Rr.questionToken=Pe,Rr.transformFlags=1,Rr.initializer=void 0,Rr.jsDoc=void 0,Rr}function ba(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==yt||q.type!==Rr?Wo(Gl(Ce,Pe,yt,Rr),q):q}function Wo(q,Ce){return q!==Ce&&(q.initializer=Ce.initializer),vo(q,Ce)}function hc(q,Ce,Pe,yt,Rr){let Ii=Ze(173);Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.questionToken=Pe&&UT(Pe)?Pe:void 0,Ii.exclamationToken=Pe&&Cz(Pe)?Pe:void 0,Ii.type=yt,Ii.initializer=Z0(Rr);let Jo=Ii.flags&33554432||Dw(Ii.modifiers)&128;return Ii.transformFlags=CA(Ii.modifiers)|NB(Ii.name)|zs(Ii.initializer)|(Jo||Ii.questionToken||Ii.exclamationToken||Ii.type?1:0)|(Un(Ii.name)||Dw(Ii.modifiers)&256&&Ii.initializer?8192:0)|16777216,Ii.jsDoc=void 0,Ii}function yr(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==(yt!==void 0&&UT(yt)?yt:void 0)||q.exclamationToken!==(yt!==void 0&&Cz(yt)?yt:void 0)||q.type!==Rr||q.initializer!==Ii?vo(hc(Ce,Pe,yt,Rr,Ii),q):q}function hn(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(174);return Jo.modifiers=nd(q),Jo.name=Fm(Ce),Jo.questionToken=Pe,Jo.typeParameters=nd(yt),Jo.parameters=nd(Rr),Jo.type=Ii,Jo.transformFlags=1,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.typeArguments=void 0,Jo}function Oi(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.name!==Pe||q.questionToken!==yt||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo?We(hn(Ce,Pe,yt,Rr,Ii,Jo),q):q}function lo(q,Ce,Pe,yt,Rr,Ii,Jo,Au){let cf=Ze(175);if(cf.modifiers=nd(q),cf.asteriskToken=Ce,cf.name=Fm(Pe),cf.questionToken=yt,cf.exclamationToken=void 0,cf.typeParameters=nd(Rr),cf.parameters=Ne(Ii),cf.type=Jo,cf.body=Au,!cf.body)cf.transformFlags=1;else{let _2=Dw(cf.modifiers)&1024,gW=!!cf.asteriskToken,gR=_2&&gW;cf.transformFlags=CA(cf.modifiers)|zs(cf.asteriskToken)|NB(cf.name)|zs(cf.questionToken)|CA(cf.typeParameters)|CA(cf.parameters)|zs(cf.type)|zs(cf.body)&-67108865|(gR?128:_2?256:gW?2048:0)|(cf.questionToken||cf.typeParameters||cf.type?1:0)|1024}return cf.typeArguments=void 0,cf.jsDoc=void 0,cf.locals=void 0,cf.nextContainer=void 0,cf.flowNode=void 0,cf.endFlowNode=void 0,cf.returnFlowNode=void 0,cf}function pa(q,Ce,Pe,yt,Rr,Ii,Jo,Au,cf){return q.modifiers!==Ce||q.asteriskToken!==Pe||q.name!==yt||q.questionToken!==Rr||q.typeParameters!==Ii||q.parameters!==Jo||q.type!==Au||q.body!==cf?Oa(lo(Ce,Pe,yt,Rr,Ii,Jo,Au,cf),q):q}function Oa(q,Ce){return q!==Ce&&(q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function tl(q){let Ce=Ze(176);return Ce.body=q,Ce.transformFlags=zs(q)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Qu(q,Ce){return q.body!==Ce?Tg(tl(Ce),q):q}function Tg(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function Cs(q,Ce,Pe){let yt=Ze(177);return yt.modifiers=nd(q),yt.parameters=Ne(Ce),yt.body=Pe,yt.body?yt.transformFlags=CA(yt.modifiers)|CA(yt.parameters)|zs(yt.body)&-67108865|1024:yt.transformFlags=1,yt.typeParameters=void 0,yt.type=void 0,yt.typeArguments=void 0,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.endFlowNode=void 0,yt.returnFlowNode=void 0,yt}function Tu(q,Ce,Pe,yt){return q.modifiers!==Ce||q.parameters!==Pe||q.body!==yt?Pr(Cs(Ce,Pe,yt),q):q}function Pr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),We(q,Ce)}function Pn(q,Ce,Pe,yt,Rr){let Ii=Ze(178);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.parameters=Ne(Pe),Ii.type=yt,Ii.body=Rr,Ii.body?Ii.transformFlags=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.parameters)|zs(Ii.type)|zs(Ii.body)&-67108865|(Ii.type?1:0):Ii.transformFlags=1,Ii.typeArguments=void 0,Ii.typeParameters=void 0,Ii.jsDoc=void 0,Ii.locals=void 0,Ii.nextContainer=void 0,Ii.flowNode=void 0,Ii.endFlowNode=void 0,Ii.returnFlowNode=void 0,Ii}function pt(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.parameters!==yt||q.type!==Rr||q.body!==Ii?on(Pn(Ce,Pe,yt,Rr,Ii),q):q}function on(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters),We(q,Ce)}function it(q,Ce,Pe,yt){let Rr=Ze(179);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.parameters=Ne(Pe),Rr.body=yt,Rr.body?Rr.transformFlags=CA(Rr.modifiers)|NB(Rr.name)|CA(Rr.parameters)|zs(Rr.body)&-67108865|(Rr.type?1:0):Rr.transformFlags=1,Rr.typeArguments=void 0,Rr.typeParameters=void 0,Rr.type=void 0,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr.endFlowNode=void 0,Rr.returnFlowNode=void 0,Rr}function nr(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.parameters!==yt||q.body!==Rr?Fr(it(Ce,Pe,yt,Rr),q):q}function Fr(q,Ce){return q!==Ce&&(q.typeParameters=Ce.typeParameters,q.type=Ce.type),We(q,Ce)}function Kr(q,Ce,Pe){let yt=Ze(180);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Dn(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?We(Kr(Ce,Pe,yt),q):q}function hr(q,Ce,Pe){let yt=Ze(181);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function En(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?We(hr(Ce,Pe,yt),q):q}function Ni(q,Ce,Pe){let yt=Ze(182);return yt.modifiers=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Gi(q,Ce,Pe,yt){return q.parameters!==Pe||q.type!==yt||q.modifiers!==Ce?We(Ni(Ce,Pe,yt),q):q}function nn(q,Ce){let Pe=Te(205);return Pe.type=q,Pe.literal=Ce,Pe.transformFlags=1,Pe}function bn(q,Ce,Pe){return q.type!==Ce||q.literal!==Pe?vo(nn(Ce,Pe),q):q}function ds(q){return dt(q)}function Mt(q,Ce,Pe){let yt=Te(183);return yt.assertsModifier=q,yt.parameterName=Fm(Ce),yt.type=Pe,yt.transformFlags=1,yt}function cn(q,Ce,Pe,yt){return q.assertsModifier!==Ce||q.parameterName!==Pe||q.type!==yt?vo(Mt(Ce,Pe,yt),q):q}function Bt(q,Ce){let Pe=Te(184);return Pe.typeName=Fm(q),Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ne(Ce)),Pe.transformFlags=1,Pe}function xe(q,Ce,Pe){return q.typeName!==Ce||q.typeArguments!==Pe?vo(Bt(Ce,Pe),q):q}function fr(q,Ce,Pe){let yt=Ze(185);return yt.typeParameters=nd(q),yt.parameters=nd(Ce),yt.type=Pe,yt.transformFlags=1,yt.modifiers=void 0,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.typeArguments=void 0,yt}function Je(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?In(fr(Ce,Pe,yt),q):q}function In(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),We(q,Ce)}function Hn(...q){return q.length===4?Ot(...q):q.length===3?$r(...q):pe.fail("Incorrect number of arguments specified.")}function Ot(q,Ce,Pe,yt){let Rr=Ze(186);return Rr.modifiers=nd(q),Rr.typeParameters=nd(Ce),Rr.parameters=nd(Pe),Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.typeArguments=void 0,Rr}function $r(q,Ce,Pe){return Ot(void 0,q,Ce,Pe)}function ri(...q){return q.length===5?ao(...q):q.length===4?Bs(...q):pe.fail("Incorrect number of arguments specified.")}function ao(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.typeParameters!==Pe||q.parameters!==yt||q.type!==Rr?We(Hn(Ce,Pe,yt,Rr),q):q}function Bs(q,Ce,Pe,yt){return ao(q,q.modifiers,Ce,Pe,yt)}function Ys(q,Ce){let Pe=Te(187);return Pe.exprName=q,Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Pe.transformFlags=1,Pe}function tn(q,Ce,Pe){return q.exprName!==Ce||q.typeArguments!==Pe?vo(Ys(Ce,Pe),q):q}function wn(q){let Ce=Ze(188);return Ce.members=Ne(q),Ce.transformFlags=1,Ce}function Mn(q,Ce){return q.members!==Ce?vo(wn(Ce),q):q}function ci(q){let Ce=Te(189);return Ce.elementType=d().parenthesizeNonArrayTypeOfPostfixType(q),Ce.transformFlags=1,Ce}function es(q,Ce){return q.elementType!==Ce?vo(ci(Ce),q):q}function Wi(q){let Ce=Te(190);return Ce.elements=Ne(d().parenthesizeElementTypesOfTupleType(q)),Ce.transformFlags=1,Ce}function Vn(q,Ce){return q.elements!==Ce?vo(Wi(Ce),q):q}function Ui(q,Ce,Pe,yt){let Rr=Ze(203);return Rr.dotDotDotToken=q,Rr.name=Ce,Rr.questionToken=Pe,Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr}function gs(q,Ce,Pe,yt,Rr){return q.dotDotDotToken!==Ce||q.name!==Pe||q.questionToken!==yt||q.type!==Rr?vo(Ui(Ce,Pe,yt,Rr),q):q}function fs(q){let Ce=Te(191);return Ce.type=d().parenthesizeTypeOfOptionalType(q),Ce.transformFlags=1,Ce}function bi(q,Ce){return q.type!==Ce?vo(fs(Ce),q):q}function mc(q){let Ce=Te(192);return Ce.type=q,Ce.transformFlags=1,Ce}function gg(q,Ce){return q.type!==Ce?vo(mc(Ce),q):q}function Ag(q,Ce,Pe){let yt=Te(q);return yt.types=Ee.createNodeArray(Pe(Ce)),yt.transformFlags=1,yt}function _u(q,Ce,Pe){return q.types!==Ce?vo(Ag(q.kind,Ce,Pe),q):q}function wI(q){return Ag(193,q,d().parenthesizeConstituentTypesOfUnionType)}function AI(q,Ce){return _u(q,Ce,d().parenthesizeConstituentTypesOfUnionType)}function pp(q){return Ag(194,q,d().parenthesizeConstituentTypesOfIntersectionType)}function Dl(q,Ce){return _u(q,Ce,d().parenthesizeConstituentTypesOfIntersectionType)}function yu(q,Ce,Pe,yt){let Rr=Te(195);return Rr.checkType=d().parenthesizeCheckTypeOfConditionalType(q),Rr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(Ce),Rr.trueType=Pe,Rr.falseType=yt,Rr.transformFlags=1,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function tm(q,Ce,Pe,yt,Rr){return q.checkType!==Ce||q.extendsType!==Pe||q.trueType!==yt||q.falseType!==Rr?vo(yu(Ce,Pe,yt,Rr),q):q}function jp(q){let Ce=Te(196);return Ce.typeParameter=q,Ce.transformFlags=1,Ce}function Xg(q,Ce){return q.typeParameter!==Ce?vo(jp(Ce),q):q}function sh(q,Ce){let Pe=Te(204);return Pe.head=q,Pe.templateSpans=Ne(Ce),Pe.transformFlags=1,Pe}function dS(q,Ce,Pe){return q.head!==Ce||q.templateSpans!==Pe?vo(sh(Ce,Pe),q):q}function gu(q,Ce,Pe,yt,Rr=!1){let Ii=Te(206);return Ii.argument=q,Ii.attributes=Ce,Ii.assertions&&Ii.assertions.assertClause&&Ii.attributes&&(Ii.assertions.assertClause=Ii.attributes),Ii.qualifier=Pe,Ii.typeArguments=yt&&d().parenthesizeTypeArguments(yt),Ii.isTypeOf=Rr,Ii.transformFlags=1,Ii}function bg(q,Ce,Pe,yt,Rr,Ii=q.isTypeOf){return q.argument!==Ce||q.attributes!==Pe||q.qualifier!==yt||q.typeArguments!==Rr||q.isTypeOf!==Ii?vo(gu(Ce,Pe,yt,Rr,Ii),q):q}function KA(q){let Ce=Te(197);return Ce.type=q,Ce.transformFlags=1,Ce}function TA(q,Ce){return q.type!==Ce?vo(KA(Ce),q):q}function oi(){let q=Te(198);return q.transformFlags=1,q}function $d(q,Ce){let Pe=Te(199);return Pe.operator=q,Pe.type=q===148?d().parenthesizeOperandOfReadonlyTypeOperator(Ce):d().parenthesizeOperandOfTypeOperator(Ce),Pe.transformFlags=1,Pe}function YI(q,Ce){return q.type!==Ce?vo($d(q.operator,Ce),q):q}function Fh(q,Ce){let Pe=Te(200);return Pe.objectType=d().parenthesizeNonArrayTypeOfPostfixType(q),Pe.indexType=Ce,Pe.transformFlags=1,Pe}function WC(q,Ce,Pe){return q.objectType!==Ce||q.indexType!==Pe?vo(Fh(Ce,Pe),q):q}function _f(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(201);return Jo.readonlyToken=q,Jo.typeParameter=Ce,Jo.nameType=Pe,Jo.questionToken=yt,Jo.type=Rr,Jo.members=Ii&&Ne(Ii),Jo.transformFlags=1,Jo.locals=void 0,Jo.nextContainer=void 0,Jo}function QI(q,Ce,Pe,yt,Rr,Ii,Jo){return q.readonlyToken!==Ce||q.typeParameter!==Pe||q.nameType!==yt||q.questionToken!==Rr||q.type!==Ii||q.members!==Jo?vo(_f(Ce,Pe,yt,Rr,Ii,Jo),q):q}function ve(q){let Ce=Te(202);return Ce.literal=q,Ce.transformFlags=1,Ce}function mr(q,Ce){return q.literal!==Ce?vo(ve(Ce),q):q}function ln(q){let Ce=Te(207);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function ni(q,Ce){return q.elements!==Ce?vo(ln(Ce),q):q}function Ls(q){let Ce=Te(208);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements)|1024|524288,Ce}function Za(q,Ce){return q.elements!==Ce?vo(Ls(Ce),q):q}function Go(q,Ce,Pe,yt){let Rr=Ze(209);return Rr.dotDotDotToken=q,Rr.propertyName=Fm(Ce),Rr.name=Fm(Pe),Rr.initializer=Z0(yt),Rr.transformFlags|=zs(Rr.dotDotDotToken)|NB(Rr.propertyName)|NB(Rr.name)|zs(Rr.initializer)|(Rr.dotDotDotToken?32768:0)|1024,Rr.flowNode=void 0,Rr}function Ss(q,Ce,Pe,yt,Rr){return q.propertyName!==Pe||q.dotDotDotToken!==Ce||q.name!==yt||q.initializer!==Rr?vo(Go(Ce,Pe,yt,Rr),q):q}function Uc(q,Ce){let Pe=Te(210),yt=q&&li(q),Rr=Ne(q,yt&&yp(yt)?!0:void 0);return Pe.elements=d().parenthesizeExpressionsOfCommaDelimitedList(Rr),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.elements),Pe}function rl(q,Ce){return q.elements!==Ce?vo(Uc(Ce,q.multiLine),q):q}function xd(q,Ce){let Pe=Ze(211);return Pe.properties=Ne(q),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.properties),Pe.jsDoc=void 0,Pe}function Lg(q,Ce){return q.properties!==Ce?vo(xd(Ce,q.multiLine),q):q}function yf(q,Ce,Pe){let yt=Ze(212);return yt.expression=q,yt.questionDotToken=Ce,yt.name=Pe,yt.transformFlags=zs(yt.expression)|zs(yt.questionDotToken)|(Ir(yt.name)?iie(yt.name):zs(yt.name)|536870912),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function rm(q,Ce){let Pe=yf(d().parenthesizeLeftSideOfAccess(q,!1),void 0,Fm(Ce));return rr(q)&&(Pe.transformFlags|=384),Pe}function _h(q,Ce,Pe){return vx(q)?oh(q,Ce,q.questionDotToken,Ma(Pe,Ir)):q.expression!==Ce||q.name!==Pe?vo(rm(Ce,Pe),q):q}function Gp(q,Ce,Pe){let yt=yf(d().parenthesizeLeftSideOfAccess(q,!0),Ce,Fm(Pe));return yt.flags|=64,yt.transformFlags|=32,yt}function oh(q,Ce,Pe,yt){return pe.assert(!!(q.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.name!==yt?vo(Gp(Ce,Pe,yt),q):q}function b1(q,Ce,Pe){let yt=Ze(213);return yt.expression=q,yt.questionDotToken=Ce,yt.argumentExpression=Pe,yt.transformFlags|=zs(yt.expression)|zs(yt.questionDotToken)|zs(yt.argumentExpression),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function Z_(q,Ce){let Pe=b1(d().parenthesizeLeftSideOfAccess(q,!1),void 0,y9(Ce));return rr(q)&&(Pe.transformFlags|=384),Pe}function m2(q,Ce,Pe){return IF(q)?or(q,Ce,q.questionDotToken,Pe):q.expression!==Ce||q.argumentExpression!==Pe?vo(Z_(Ce,Pe),q):q}function Vb(q,Ce,Pe){let yt=b1(d().parenthesizeLeftSideOfAccess(q,!0),Ce,y9(Pe));return yt.flags|=64,yt.transformFlags|=32,yt}function or(q,Ce,Pe,yt){return pe.assert(!!(q.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.argumentExpression!==yt?vo(Vb(Ce,Pe,yt),q):q}function qn(q,Ce,Pe,yt){let Rr=Ze(214);return Rr.expression=q,Rr.questionDotToken=Ce,Rr.typeArguments=Pe,Rr.arguments=yt,Rr.transformFlags|=zs(Rr.expression)|zs(Rr.questionDotToken)|CA(Rr.typeArguments)|CA(Rr.arguments),Rr.typeArguments&&(Rr.transformFlags|=1),xy(Rr.expression)&&(Rr.transformFlags|=16384),Rr}function Js(q,Ce,Pe){let yt=qn(d().parenthesizeLeftSideOfAccess(q,!1),void 0,nd(Ce),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(Pe)));return an(yt.expression)&&(yt.transformFlags|=8388608),yt}function Hl(q,Ce,Pe,yt){return _B(q)?NA(q,Ce,q.questionDotToken,Pe,yt):q.expression!==Ce||q.typeArguments!==Pe||q.arguments!==yt?vo(Js(Ce,Pe,yt),q):q}function RA(q,Ce,Pe,yt){let Rr=qn(d().parenthesizeLeftSideOfAccess(q,!0),Ce,nd(Pe),d().parenthesizeExpressionsOfCommaDelimitedList(Ne(yt)));return Rr.flags|=64,Rr.transformFlags|=32,Rr}function NA(q,Ce,Pe,yt,Rr){return pe.assert(!!(q.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),q.expression!==Ce||q.questionDotToken!==Pe||q.typeArguments!==yt||q.arguments!==Rr?vo(RA(Ce,Pe,yt,Rr),q):q}function uA(q,Ce,Pe){let yt=Ze(215);return yt.expression=d().parenthesizeExpressionOfNew(q),yt.typeArguments=nd(Ce),yt.arguments=Pe?d().parenthesizeExpressionsOfCommaDelimitedList(Pe):void 0,yt.transformFlags|=zs(yt.expression)|CA(yt.typeArguments)|CA(yt.arguments)|32,yt.typeArguments&&(yt.transformFlags|=1),yt}function hm(q,Ce,Pe,yt){return q.expression!==Ce||q.typeArguments!==Pe||q.arguments!==yt?vo(uA(Ce,Pe,yt),q):q}function af(q,Ce,Pe){let yt=Te(216);return yt.tag=d().parenthesizeLeftSideOfAccess(q,!1),yt.typeArguments=nd(Ce),yt.template=Pe,yt.transformFlags|=zs(yt.tag)|CA(yt.typeArguments)|zs(yt.template)|1024,yt.typeArguments&&(yt.transformFlags|=1),Pye(yt.template)&&(yt.transformFlags|=128),yt}function dI(q,Ce,Pe,yt){return q.tag!==Ce||q.typeArguments!==Pe||q.template!==yt?vo(af(Ce,Pe,yt),q):q}function XI(q,Ce){let Pe=Te(217);return Pe.expression=d().parenthesizeOperandOfPrefixUnary(Ce),Pe.type=q,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.type)|1,Pe}function C2(q,Ce,Pe){return q.type!==Ce||q.expression!==Pe?vo(XI(Ce,Pe),q):q}function d_(q){let Ce=Te(218);return Ce.expression=q,Ce.transformFlags=zs(Ce.expression),Ce.jsDoc=void 0,Ce}function OC(q,Ce){return q.expression!==Ce?vo(d_(Ce),q):q}function E1(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=Ze(219);Au.modifiers=nd(q),Au.asteriskToken=Ce,Au.name=Fm(Pe),Au.typeParameters=nd(yt),Au.parameters=Ne(Rr),Au.type=Ii,Au.body=Jo;let cf=Dw(Au.modifiers)&1024,_2=!!Au.asteriskToken,gW=cf&&_2;return Au.transformFlags=CA(Au.modifiers)|zs(Au.asteriskToken)|NB(Au.name)|CA(Au.typeParameters)|CA(Au.parameters)|zs(Au.type)|zs(Au.body)&-67108865|(gW?128:cf?256:_2?2048:0)|(Au.typeParameters||Au.type?1:0)|4194304,Au.typeArguments=void 0,Au.jsDoc=void 0,Au.locals=void 0,Au.nextContainer=void 0,Au.flowNode=void 0,Au.endFlowNode=void 0,Au.returnFlowNode=void 0,Au}function gy(q,Ce,Pe,yt,Rr,Ii,Jo,Au){return q.name!==yt||q.modifiers!==Ce||q.asteriskToken!==Pe||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo||q.body!==Au?We(E1(Ce,Pe,yt,Rr,Ii,Jo,Au),q):q}function yv(q,Ce,Pe,yt,Rr,Ii){let Jo=Ze(220);Jo.modifiers=nd(q),Jo.typeParameters=nd(Ce),Jo.parameters=Ne(Pe),Jo.type=yt,Jo.equalsGreaterThanToken=Rr??dt(39),Jo.body=d().parenthesizeConciseBodyOfArrowFunction(Ii);let Au=Dw(Jo.modifiers)&1024;return Jo.transformFlags=CA(Jo.modifiers)|CA(Jo.typeParameters)|CA(Jo.parameters)|zs(Jo.type)|zs(Jo.equalsGreaterThanToken)|zs(Jo.body)&-67108865|(Jo.typeParameters||Jo.type?1:0)|(Au?16640:0)|1024,Jo.typeArguments=void 0,Jo.jsDoc=void 0,Jo.locals=void 0,Jo.nextContainer=void 0,Jo.flowNode=void 0,Jo.endFlowNode=void 0,Jo.returnFlowNode=void 0,Jo}function ik(q,Ce,Pe,yt,Rr,Ii,Jo){return q.modifiers!==Ce||q.typeParameters!==Pe||q.parameters!==yt||q.type!==Rr||q.equalsGreaterThanToken!==Ii||q.body!==Jo?We(yv(Ce,Pe,yt,Rr,Ii,Jo),q):q}function Wx(q){let Ce=Te(221);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function Ox(q,Ce){return q.expression!==Ce?vo(Wx(Ce),q):q}function Pb(q){let Ce=Te(222);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function qm(q,Ce){return q.expression!==Ce?vo(Pb(Ce),q):q}function oR(q){let Ce=Te(223);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression),Ce}function pS(q,Ce){return q.expression!==Ce?vo(oR(Ce),q):q}function xN(q){let Ce=Te(224);return Ce.expression=d().parenthesizeOperandOfPrefixUnary(q),Ce.transformFlags|=zs(Ce.expression)|256|128|2097152,Ce}function at(q,Ce){return q.expression!==Ce?vo(xN(Ce),q):q}function en(q,Ce){let Pe=Te(225);return Pe.operator=q,Pe.operand=d().parenthesizeOperandOfPrefixUnary(Ce),Pe.transformFlags|=zs(Pe.operand),(q===46||q===47)&&Ir(Pe.operand)&&!kp(Pe.operand)&&!VF(Pe.operand)&&(Pe.transformFlags|=268435456),Pe}function gi(q,Ce){return q.operand!==Ce?vo(en(q.operator,Ce),q):q}function _i(q,Ce){let Pe=Te(226);return Pe.operator=Ce,Pe.operand=d().parenthesizeOperandOfPostfixUnary(q),Pe.transformFlags|=zs(Pe.operand),Ir(Pe.operand)&&!kp(Pe.operand)&&!VF(Pe.operand)&&(Pe.transformFlags|=268435456),Pe}function ys(q,Ce){return q.operand!==Ce?vo(_i(Ce,q.operator),q):q}function $s(q,Ce,Pe){let yt=Ze(227),Rr=_q(Ce),Ii=Rr.kind;return yt.left=d().parenthesizeLeftSideOfBinary(Ii,q),yt.operatorToken=Rr,yt.right=d().parenthesizeRightSideOfBinary(Ii,yt.left,Pe),yt.transformFlags|=zs(yt.left)|zs(yt.operatorToken)|zs(yt.right),Ii===61?yt.transformFlags|=32:Ii===64?og(yt.left)?yt.transformFlags|=5248|wa(yt.left):OI(yt.left)&&(yt.transformFlags|=5120|wa(yt.left)):Ii===43||Ii===68?yt.transformFlags|=512:V7(Ii)&&(yt.transformFlags|=16),Ii===103&&p(yt.left)&&(yt.transformFlags|=536870912),yt.jsDoc=void 0,yt}function wa(q){return fEe(q)?65536:0}function pc(q,Ce,Pe,yt){return q.left!==Ce||q.operatorToken!==Pe||q.right!==yt?vo($s(Ce,Pe,yt),q):q}function ul(q,Ce,Pe,yt,Rr){let Ii=Te(228);return Ii.condition=d().parenthesizeConditionOfConditionalExpression(q),Ii.questionToken=Ce??dt(58),Ii.whenTrue=d().parenthesizeBranchOfConditionalExpression(Pe),Ii.colonToken=yt??dt(59),Ii.whenFalse=d().parenthesizeBranchOfConditionalExpression(Rr),Ii.transformFlags|=zs(Ii.condition)|zs(Ii.questionToken)|zs(Ii.whenTrue)|zs(Ii.colonToken)|zs(Ii.whenFalse),Ii.flowNodeWhenFalse=void 0,Ii.flowNodeWhenTrue=void 0,Ii}function Fe(q,Ce,Pe,yt,Rr,Ii){return q.condition!==Ce||q.questionToken!==Pe||q.whenTrue!==yt||q.colonToken!==Rr||q.whenFalse!==Ii?vo(ul(Ce,Pe,yt,Rr,Ii),q):q}function gr(q,Ce){let Pe=Te(229);return Pe.head=q,Pe.templateSpans=Ne(Ce),Pe.transformFlags|=zs(Pe.head)|CA(Pe.templateSpans)|1024,Pe}function Ln(q,Ce,Pe){return q.head!==Ce||q.templateSpans!==Pe?vo(gr(Ce,Pe),q):q}function bs(q,Ce,Pe,yt=0){pe.assert(!(yt&-7177),"Unsupported template flags.");let Rr;if(Pe!==void 0&&Pe!==Ce&&(Rr=APt(q,Pe),typeof Rr=="object"))return pe.fail("Invalid raw text");if(Ce===void 0){if(Rr===void 0)return pe.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=Rr}else Rr!==void 0&&pe.assert(Ce===Rr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Xl(q){let Ce=1024;return q&&(Ce|=128),Ce}function eg(q,Ce,Pe,yt){let Rr=Gr(q);return Rr.text=Ce,Rr.rawText=Pe,Rr.templateFlags=yt&7176,Rr.transformFlags=Xl(Rr.templateFlags),Rr}function jl(q,Ce,Pe,yt){let Rr=Ze(q);return Rr.text=Ce,Rr.rawText=Pe,Rr.templateFlags=yt&7176,Rr.transformFlags=Xl(Rr.templateFlags),Rr}function Eu(q,Ce,Pe,yt){return q===15?jl(q,Ce,Pe,yt):eg(q,Ce,Pe,yt)}function Df(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(16,q,Ce,Pe)}function Jg(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(17,q,Ce,Pe)}function MC(q,Ce,Pe){return q=bs(16,q,Ce,Pe),Eu(18,q,Ce,Pe)}function S1(q,Ce,Pe){return q=bs(16,q,Ce,Pe),jl(15,q,Ce,Pe)}function fS(q,Ce){pe.assert(!q||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Pe=Te(230);return Pe.expression=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.asteriskToken=q,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.asteriskToken)|1024|128|1048576,Pe}function bv(q,Ce,Pe){return q.expression!==Pe||q.asteriskToken!==Ce?vo(fS(Ce,Pe),q):q}function XF(q){let Ce=Te(231);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|1024|32768,Ce}function o9(q,Ce){return q.expression!==Ce?vo(XF(Ce),q):q}function My(q,Ce,Pe,yt,Rr){let Ii=Ze(232);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Ii.transformFlags|=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.typeParameters)|CA(Ii.heritageClauses)|CA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.jsDoc=void 0,Ii}function sk(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(My(Ce,Pe,yt,Rr,Ii),q):q}function aR(){return Te(233)}function WB(q,Ce){let Pe=Te(234);return Pe.expression=d().parenthesizeLeftSideOfAccess(q,!1),Pe.typeArguments=Ce&&d().parenthesizeTypeArguments(Ce),Pe.transformFlags|=zs(Pe.expression)|CA(Pe.typeArguments)|1024,Pe}function UP(q,Ce,Pe){return q.expression!==Ce||q.typeArguments!==Pe?vo(WB(Ce,Pe),q):q}function br(q,Ce){let Pe=Te(235);return Pe.expression=q,Pe.type=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.type)|1,Pe}function sn(q,Ce,Pe){return q.expression!==Ce||q.type!==Pe?vo(br(Ce,Pe),q):q}function ei(q){let Ce=Te(236);return Ce.expression=d().parenthesizeLeftSideOfAccess(q,!1),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function is(q,Ce){return hJ(q)?co(q,Ce):q.expression!==Ce?vo(ei(Ce),q):q}function Qs(q,Ce){let Pe=Te(239);return Pe.expression=q,Pe.type=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.type)|1,Pe}function Oo(q,Ce,Pe){return q.expression!==Ce||q.type!==Pe?vo(Qs(Ce,Pe),q):q}function Os(q){let Ce=Te(236);return Ce.flags|=64,Ce.expression=d().parenthesizeLeftSideOfAccess(q,!0),Ce.transformFlags|=zs(Ce.expression)|1,Ce}function co(q,Ce){return pe.assert(!!(q.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),q.expression!==Ce?vo(Os(Ce),q):q}function Yc(q,Ce){let Pe=Te(237);switch(Pe.keywordToken=q,Pe.name=Ce,Pe.transformFlags|=zs(Pe.name),q){case 105:Pe.transformFlags|=1024;break;case 102:Pe.transformFlags|=32;break;default:return pe.assertNever(q)}return Pe.flowNode=void 0,Pe}function tu(q,Ce){return q.name!==Ce?vo(Yc(q.keywordToken,Ce),q):q}function $a(q,Ce){let Pe=Te(240);return Pe.expression=q,Pe.literal=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.literal)|1024,Pe}function ru(q,Ce,Pe){return q.expression!==Ce||q.literal!==Pe?vo($a(Ce,Pe),q):q}function gl(){let q=Te(241);return q.transformFlags|=1024,q}function kf(q,Ce){let Pe=Te(242);return Pe.statements=Ne(q),Pe.multiLine=Ce,Pe.transformFlags|=CA(Pe.statements),Pe.jsDoc=void 0,Pe.locals=void 0,Pe.nextContainer=void 0,Pe}function Wb(q,Ce){return q.statements!==Ce?vo(kf(Ce,q.multiLine),q):q}function OB(q,Ce){let Pe=Te(244);return Pe.modifiers=nd(q),Pe.declarationList=Ki(Ce)?l5(Ce):Ce,Pe.transformFlags|=CA(Pe.modifiers)|zs(Pe.declarationList),Dw(Pe.modifiers)&128&&(Pe.transformFlags=1),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function p_(q,Ce,Pe){return q.modifiers!==Ce||q.declarationList!==Pe?vo(OB(Ce,Pe),q):q}function MB(){let q=Te(243);return q.jsDoc=void 0,q}function v1(q){let Ce=Te(245);return Ce.expression=d().parenthesizeExpressionOfExpressionStatement(q),Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function s5(q,Ce){return q.expression!==Ce?vo(v1(Ce),q):q}function GN(q,Ce,Pe){let yt=Te(246);return yt.expression=q,yt.thenStatement=jx(Ce),yt.elseStatement=jx(Pe),yt.transformFlags|=zs(yt.expression)|zs(yt.thenStatement)|zs(yt.elseStatement),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function ok(q,Ce,Pe,yt){return q.expression!==Ce||q.thenStatement!==Pe||q.elseStatement!==yt?vo(GN(Ce,Pe,yt),q):q}function o5(q,Ce){let Pe=Te(247);return Pe.statement=jx(q),Pe.expression=Ce,Pe.transformFlags|=zs(Pe.statement)|zs(Pe.expression),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function ak(q,Ce,Pe){return q.statement!==Ce||q.expression!==Pe?vo(o5(Ce,Pe),q):q}function gse(q,Ce){let Pe=Te(248);return Pe.expression=q,Pe.statement=jx(Ce),Pe.transformFlags|=zs(Pe.expression)|zs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function hpe(q,Ce,Pe){return q.expression!==Ce||q.statement!==Pe?vo(gse(Ce,Pe),q):q}function Ase(q,Ce,Pe,yt){let Rr=Te(249);return Rr.initializer=q,Rr.condition=Ce,Rr.incrementor=Pe,Rr.statement=jx(yt),Rr.transformFlags|=zs(Rr.initializer)|zs(Rr.condition)|zs(Rr.incrementor)|zs(Rr.statement),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function Mx(q,Ce,Pe,yt,Rr){return q.initializer!==Ce||q.condition!==Pe||q.incrementor!==yt||q.statement!==Rr?vo(Ase(Ce,Pe,yt,Rr),q):q}function a5(q,Ce,Pe){let yt=Te(250);return yt.initializer=q,yt.expression=Ce,yt.statement=jx(Pe),yt.transformFlags|=zs(yt.initializer)|zs(yt.expression)|zs(yt.statement),yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt.flowNode=void 0,yt}function WU(q,Ce,Pe,yt){return q.initializer!==Ce||q.expression!==Pe||q.statement!==yt?vo(a5(Ce,Pe,yt),q):q}function a9(q,Ce,Pe,yt){let Rr=Te(251);return Rr.awaitModifier=q,Rr.initializer=Ce,Rr.expression=d().parenthesizeExpressionForDisallowedComma(Pe),Rr.statement=jx(yt),Rr.transformFlags|=zs(Rr.awaitModifier)|zs(Rr.initializer)|zs(Rr.expression)|zs(Rr.statement)|1024,q&&(Rr.transformFlags|=128),Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr.flowNode=void 0,Rr}function OU(q,Ce,Pe,yt,Rr){return q.awaitModifier!==Ce||q.initializer!==Pe||q.expression!==yt||q.statement!==Rr?vo(a9(Ce,Pe,yt,Rr),q):q}function qz(q){let Ce=Te(252);return Ce.label=Fm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function mpe(q,Ce){return q.label!==Ce?vo(qz(Ce),q):q}function MU(q){let Ce=Te(253);return Ce.label=Fm(q),Ce.transformFlags|=zs(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function $z(q,Ce){return q.label!==Ce?vo(MU(Ce),q):q}function c5(q){let Ce=Te(254);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function dse(q,Ce){return q.expression!==Ce?vo(c5(Ce),q):q}function HU(q,Ce){let Pe=Te(255);return Pe.expression=q,Pe.statement=jx(Ce),Pe.transformFlags|=zs(Pe.expression)|zs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function eq(q,Ce,Pe){return q.expression!==Ce||q.statement!==Pe?vo(HU(Ce,Pe),q):q}function EQ(q,Ce){let Pe=Te(256);return Pe.expression=d().parenthesizeExpressionForDisallowedComma(q),Pe.caseBlock=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.caseBlock),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe.possiblyExhaustive=!1,Pe}function KP(q,Ce,Pe){return q.expression!==Ce||q.caseBlock!==Pe?vo(EQ(Ce,Pe),q):q}function tq(q,Ce){let Pe=Te(257);return Pe.label=Fm(q),Pe.statement=jx(Ce),Pe.transformFlags|=zs(Pe.label)|zs(Pe.statement),Pe.jsDoc=void 0,Pe.flowNode=void 0,Pe}function rq(q,Ce,Pe){return q.label!==Ce||q.statement!==Pe?vo(tq(Ce,Pe),q):q}function SQ(q){let Ce=Te(258);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function jP(q,Ce){return q.expression!==Ce?vo(SQ(Ce),q):q}function c9(q,Ce,Pe){let yt=Te(259);return yt.tryBlock=q,yt.catchClause=Ce,yt.finallyBlock=Pe,yt.transformFlags|=zs(yt.tryBlock)|zs(yt.catchClause)|zs(yt.finallyBlock),yt.jsDoc=void 0,yt.flowNode=void 0,yt}function JF(q,Ce,Pe,yt){return q.tryBlock!==Ce||q.catchClause!==Pe||q.finallyBlock!==yt?vo(c9(Ce,Pe,yt),q):q}function UF(){let q=Te(260);return q.jsDoc=void 0,q.flowNode=void 0,q}function KF(q,Ce,Pe,yt){let Rr=Ze(261);return Rr.name=Fm(q),Rr.exclamationToken=Ce,Rr.type=Pe,Rr.initializer=Z0(yt),Rr.transformFlags|=NB(Rr.name)|zs(Rr.initializer)|(Rr.exclamationToken??Rr.type?1:0),Rr.jsDoc=void 0,Rr}function zP(q,Ce,Pe,yt,Rr){return q.name!==Ce||q.type!==yt||q.exclamationToken!==Pe||q.initializer!==Rr?vo(KF(Ce,Pe,yt,Rr),q):q}function l5(q,Ce=0){let Pe=Te(262);return Pe.flags|=Ce&7,Pe.declarations=Ne(q),Pe.transformFlags|=CA(Pe.declarations)|4194304,Ce&7&&(Pe.transformFlags|=263168),Ce&4&&(Pe.transformFlags|=4),Pe}function YU(q,Ce){return q.declarations!==Ce?vo(l5(Ce,q.flags),q):q}function u5(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=Ze(263);if(Au.modifiers=nd(q),Au.asteriskToken=Ce,Au.name=Fm(Pe),Au.typeParameters=nd(yt),Au.parameters=Ne(Rr),Au.type=Ii,Au.body=Jo,!Au.body||Dw(Au.modifiers)&128)Au.transformFlags=1;else{let cf=Dw(Au.modifiers)&1024,_2=!!Au.asteriskToken,gW=cf&&_2;Au.transformFlags=CA(Au.modifiers)|zs(Au.asteriskToken)|NB(Au.name)|CA(Au.typeParameters)|CA(Au.parameters)|zs(Au.type)|zs(Au.body)&-67108865|(gW?128:cf?256:_2?2048:0)|(Au.typeParameters||Au.type?1:0)|4194304}return Au.typeArguments=void 0,Au.jsDoc=void 0,Au.locals=void 0,Au.nextContainer=void 0,Au.endFlowNode=void 0,Au.returnFlowNode=void 0,Au}function PA(q,Ce,Pe,yt,Rr,Ii,Jo,Au){return q.modifiers!==Ce||q.asteriskToken!==Pe||q.name!==yt||q.typeParameters!==Rr||q.parameters!==Ii||q.type!==Jo||q.body!==Au?QU(u5(Ce,Pe,yt,Rr,Ii,Jo,Au),q):q}function QU(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),We(q,Ce)}function pse(q,Ce,Pe,yt,Rr){let Ii=Ze(264);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Dw(Ii.modifiers)&128?Ii.transformFlags=1:(Ii.transformFlags|=CA(Ii.modifiers)|NB(Ii.name)|CA(Ii.typeParameters)|CA(Ii.heritageClauses)|CA(Ii.members)|(Ii.typeParameters?1:0)|1024,Ii.transformFlags&8192&&(Ii.transformFlags|=1)),Ii.jsDoc=void 0,Ii}function jF(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(pse(Ce,Pe,yt,Rr,Ii),q):q}function zF(q,Ce,Pe,yt,Rr){let Ii=Ze(265);return Ii.modifiers=nd(q),Ii.name=Fm(Ce),Ii.typeParameters=nd(Pe),Ii.heritageClauses=nd(yt),Ii.members=Ne(Rr),Ii.transformFlags=1,Ii.jsDoc=void 0,Ii}function ck(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.heritageClauses!==Rr||q.members!==Ii?vo(zF(Ce,Pe,yt,Rr,Ii),q):q}function bf(q,Ce,Pe,yt){let Rr=Ze(266);return Rr.modifiers=nd(q),Rr.name=Fm(Ce),Rr.typeParameters=nd(Pe),Rr.type=yt,Rr.transformFlags=1,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function l0(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.name!==Pe||q.typeParameters!==yt||q.type!==Rr?vo(bf(Ce,Pe,yt,Rr),q):q}function Ob(q,Ce,Pe){let yt=Ze(267);return yt.modifiers=nd(q),yt.name=Fm(Ce),yt.members=Ne(Pe),yt.transformFlags|=CA(yt.modifiers)|zs(yt.name)|CA(yt.members)|1,yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function u0(q,Ce,Pe,yt){return q.modifiers!==Ce||q.name!==Pe||q.members!==yt?vo(Ob(Ce,Pe,yt),q):q}function g5(q,Ce,Pe,yt=0){let Rr=Ze(268);return Rr.modifiers=nd(q),Rr.flags|=yt&2088,Rr.name=Ce,Rr.body=Pe,Dw(Rr.modifiers)&128?Rr.transformFlags=1:Rr.transformFlags|=CA(Rr.modifiers)|zs(Rr.name)|zs(Rr.body)|1,Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function Ay(q,Ce,Pe,yt){return q.modifiers!==Ce||q.name!==Pe||q.body!==yt?vo(g5(Ce,Pe,yt,q.flags),q):q}function lk(q){let Ce=Te(269);return Ce.statements=Ne(q),Ce.transformFlags|=CA(Ce.statements),Ce.jsDoc=void 0,Ce}function Hy(q,Ce){return q.statements!==Ce?vo(lk(Ce),q):q}function HB(q){let Ce=Te(270);return Ce.clauses=Ne(q),Ce.transformFlags|=CA(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function Mw(q,Ce){return q.clauses!==Ce?vo(HB(Ce),q):q}function A5(q){let Ce=Ze(271);return Ce.name=Fm(q),Ce.transformFlags|=iie(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function d5(q,Ce){return q.name!==Ce?Cpe(A5(Ce),q):q}function Cpe(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function fse(q,Ce,Pe,yt){let Rr=Ze(272);return Rr.modifiers=nd(q),Rr.name=Fm(Pe),Rr.isTypeOnly=Ce,Rr.moduleReference=yt,Rr.transformFlags|=CA(Rr.modifiers)|iie(Rr.name)|zs(Rr.moduleReference),ZF(Rr.moduleReference)||(Rr.transformFlags|=1),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function l9(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.isTypeOnly!==Pe||q.name!==yt||q.moduleReference!==Rr?vo(fse(Ce,Pe,yt,Rr),q):q}function vQ(q,Ce,Pe,yt){let Rr=Te(273);return Rr.modifiers=nd(q),Rr.importClause=Ce,Rr.moduleSpecifier=Pe,Rr.attributes=Rr.assertClause=yt,Rr.transformFlags|=zs(Rr.importClause)|zs(Rr.moduleSpecifier),Rr.transformFlags&=-67108865,Rr.jsDoc=void 0,Rr}function Sr(q,Ce,Pe,yt,Rr){return q.modifiers!==Ce||q.importClause!==Pe||q.moduleSpecifier!==yt||q.attributes!==Rr?vo(vQ(Ce,Pe,yt,Rr),q):q}function XU(q,Ce,Pe){let yt=Ze(274);return typeof q=="boolean"&&(q=q?156:void 0),yt.isTypeOnly=q===156,yt.phaseModifier=q,yt.name=Ce,yt.namedBindings=Pe,yt.transformFlags|=zs(yt.name)|zs(yt.namedBindings),q===156&&(yt.transformFlags|=1),yt.transformFlags&=-67108865,yt}function Hx(q,Ce,Pe,yt){return typeof Ce=="boolean"&&(Ce=Ce?156:void 0),q.phaseModifier!==Ce||q.name!==Pe||q.namedBindings!==yt?vo(XU(Ce,Pe,yt),q):q}function Hw(q,Ce){let Pe=Te(301);return Pe.elements=Ne(q),Pe.multiLine=Ce,Pe.token=132,Pe.transformFlags|=4,Pe}function u9(q,Ce,Pe){return q.elements!==Ce||q.multiLine!==Pe?vo(Hw(Ce,Pe),q):q}function qP(q,Ce){let Pe=Te(302);return Pe.name=q,Pe.value=Ce,Pe.transformFlags|=4,Pe}function dy(q,Ce,Pe){return q.name!==Ce||q.value!==Pe?vo(qP(Ce,Pe),q):q}function cR(q,Ce){let Pe=Te(303);return Pe.assertClause=q,Pe.multiLine=Ce,Pe}function YB(q,Ce,Pe){return q.assertClause!==Ce||q.multiLine!==Pe?vo(cR(Ce,Pe),q):q}function p5(q,Ce,Pe){let yt=Te(301);return yt.token=Pe??118,yt.elements=Ne(q),yt.multiLine=Ce,yt.transformFlags|=4,yt}function gA(q,Ce,Pe){return q.elements!==Ce||q.multiLine!==Pe?vo(p5(Ce,Pe,q.token),q):q}function IS(q,Ce){let Pe=Te(302);return Pe.name=q,Pe.value=Ce,Pe.transformFlags|=4,Pe}function g9(q,Ce,Pe){return q.name!==Ce||q.value!==Pe?vo(IS(Ce,Pe),q):q}function JU(q){let Ce=Ze(275);return Ce.name=q,Ce.transformFlags|=zs(Ce.name),Ce.transformFlags&=-67108865,Ce}function qF(q,Ce){return q.name!==Ce?vo(JU(Ce),q):q}function BQ(q){let Ce=Ze(281);return Ce.name=q,Ce.transformFlags|=zs(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function Ev(q,Ce){return q.name!==Ce?vo(BQ(Ce),q):q}function Yx(q){let Ce=Te(276);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function f5(q,Ce){return q.elements!==Ce?vo(Yx(Ce),q):q}function A9(q,Ce,Pe){let yt=Ze(277);return yt.isTypeOnly=q,yt.propertyName=Ce,yt.name=Pe,yt.transformFlags|=zs(yt.propertyName)|zs(yt.name),yt.transformFlags&=-67108865,yt}function FN(q,Ce,Pe,yt){return q.isTypeOnly!==Ce||q.propertyName!==Pe||q.name!==yt?vo(A9(Ce,Pe,yt),q):q}function wQ(q,Ce,Pe){let yt=Ze(278);return yt.modifiers=nd(q),yt.isExportEquals=Ce,yt.expression=Ce?d().parenthesizeRightSideOfBinary(64,void 0,Pe):d().parenthesizeExpressionOfExportDefault(Pe),yt.transformFlags|=CA(yt.modifiers)|zs(yt.expression),yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function I5(q,Ce,Pe){return q.modifiers!==Ce||q.expression!==Pe?vo(wQ(Ce,q.isExportEquals,Pe),q):q}function fa(q,Ce,Pe,yt,Rr){let Ii=Ze(279);return Ii.modifiers=nd(q),Ii.isTypeOnly=Ce,Ii.exportClause=Pe,Ii.moduleSpecifier=yt,Ii.attributes=Ii.assertClause=Rr,Ii.transformFlags|=CA(Ii.modifiers)|zs(Ii.exportClause)|zs(Ii.moduleSpecifier),Ii.transformFlags&=-67108865,Ii.jsDoc=void 0,Ii}function sa(q,Ce,Pe,yt,Rr,Ii){return q.modifiers!==Ce||q.isTypeOnly!==Pe||q.exportClause!==yt||q.moduleSpecifier!==Rr||q.attributes!==Ii?f_(fa(Ce,Pe,yt,Rr,Ii),q):q}function f_(q,Ce){return q!==Ce&&q.modifiers===Ce.modifiers&&(q.modifiers=Ce.modifiers),vo(q,Ce)}function UU(q){let Ce=Te(280);return Ce.elements=Ne(q),Ce.transformFlags|=CA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function $F(q,Ce){return q.elements!==Ce?vo(UU(Ce),q):q}function TQ(q,Ce,Pe){let yt=Te(282);return yt.isTypeOnly=q,yt.propertyName=Fm(Ce),yt.name=Fm(Pe),yt.transformFlags|=zs(yt.propertyName)|zs(yt.name),yt.transformFlags&=-67108865,yt.jsDoc=void 0,yt}function Ise(q,Ce,Pe,yt){return q.isTypeOnly!==Ce||q.propertyName!==Pe||q.name!==yt?vo(TQ(Ce,Pe,yt),q):q}function _pe(){let q=Ze(283);return q.jsDoc=void 0,q}function qo(q){let Ce=Te(284);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression),Ce.transformFlags&=-67108865,Ce}function py(q,Ce){return q.expression!==Ce?vo(qo(Ce),q):q}function hu(q){return Te(q)}function vE(q,Ce,Pe=!1){let yt=KU(q,Pe?Ce&&d().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return yt.postfix=Pe,yt}function KU(q,Ce){let Pe=Te(q);return Pe.type=Ce,Pe}function $P(q,Ce,Pe){return Ce.type!==Pe?vo(vE(q,Pe,Ce.postfix),Ce):Ce}function Fo(q,Ce,Pe){return Ce.type!==Pe?vo(KU(q,Pe),Ce):Ce}function hse(q,Ce){let Pe=Ze(318);return Pe.parameters=nd(q),Pe.type=Ce,Pe.transformFlags=CA(Pe.parameters)|(Pe.type?1:0),Pe.jsDoc=void 0,Pe.locals=void 0,Pe.nextContainer=void 0,Pe.typeArguments=void 0,Pe}function nq(q,Ce,Pe){return q.parameters!==Ce||q.type!==Pe?vo(hse(Ce,Pe),q):q}function G0(q,Ce=!1){let Pe=Ze(323);return Pe.jsDocPropertyTags=nd(q),Pe.isArrayType=Ce,Pe}function uk(q,Ce,Pe){return q.jsDocPropertyTags!==Ce||q.isArrayType!==Pe?vo(G0(Ce,Pe),q):q}function lR(q){let Ce=Te(310);return Ce.type=q,Ce}function eW(q,Ce){return q.type!==Ce?vo(lR(Ce),q):q}function jU(q,Ce,Pe){let yt=Ze(324);return yt.typeParameters=nd(q),yt.parameters=Ne(Ce),yt.type=Pe,yt.jsDoc=void 0,yt.locals=void 0,yt.nextContainer=void 0,yt}function tW(q,Ce,Pe,yt){return q.typeParameters!==Ce||q.parameters!==Pe||q.type!==yt?vo(jU(Ce,Pe,yt),q):q}function hS(q){let Ce=Ube(q.kind);return q.tagName.escapedText===Ap(Ce)?q.tagName:Rt(Ce)}function Yw(q,Ce,Pe){let yt=Te(q);return yt.tagName=Ce,yt.comment=Pe,yt}function Sv(q,Ce,Pe){let yt=Ze(q);return yt.tagName=Ce,yt.comment=Pe,yt}function Mb(q,Ce,Pe,yt){let Rr=Yw(346,q??Rt("template"),yt);return Rr.constraint=Ce,Rr.typeParameters=Ne(Pe),Rr}function d9(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.constraint!==Pe||q.typeParameters!==yt||q.comment!==Rr?vo(Mb(Ce,Pe,yt,Rr),q):q}function h5(q,Ce,Pe,yt){let Rr=Sv(347,q??Rt("typedef"),yt);return Rr.typeExpression=Ce,Rr.fullName=Pe,Rr.name=N$e(Pe),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function iq(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.typeExpression!==Pe||q.fullName!==yt||q.comment!==Rr?vo(h5(Ce,Pe,yt,Rr),q):q}function m5(q,Ce,Pe,yt,Rr,Ii){let Jo=Sv(342,q??Rt("param"),Ii);return Jo.typeExpression=yt,Jo.name=Ce,Jo.isNameFirst=!!Rr,Jo.isBracketed=Pe,Jo}function rW(q,Ce=hS(q),Pe,yt,Rr,Ii,Jo){return q.tagName!==Ce||q.name!==Pe||q.isBracketed!==yt||q.typeExpression!==Rr||q.isNameFirst!==Ii||q.comment!==Jo?vo(m5(Ce,Pe,yt,Rr,Ii,Jo),q):q}function sq(q,Ce,Pe,yt,Rr,Ii){let Jo=Sv(349,q??Rt("prop"),Ii);return Jo.typeExpression=yt,Jo.name=Ce,Jo.isNameFirst=!!Rr,Jo.isBracketed=Pe,Jo}function eZ(q,Ce=hS(q),Pe,yt,Rr,Ii,Jo){return q.tagName!==Ce||q.name!==Pe||q.isBracketed!==yt||q.typeExpression!==Rr||q.isNameFirst!==Ii||q.comment!==Jo?vo(sq(Ce,Pe,yt,Rr,Ii,Jo),q):q}function ZN(q,Ce,Pe,yt){let Rr=Sv(339,q??Rt("callback"),yt);return Rr.typeExpression=Ce,Rr.fullName=Pe,Rr.name=N$e(Pe),Rr.locals=void 0,Rr.nextContainer=void 0,Rr}function nW(q,Ce=hS(q),Pe,yt,Rr){return q.tagName!==Ce||q.typeExpression!==Pe||q.fullName!==yt||q.comment!==Rr?vo(ZN(Ce,Pe,yt,Rr),q):q}function C5(q,Ce,Pe){let yt=Yw(340,q??Rt("overload"),Pe);return yt.typeExpression=Ce,yt}function p9(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.typeExpression!==Pe||q.comment!==yt?vo(C5(Ce,Pe,yt),q):q}function iW(q,Ce,Pe){let yt=Yw(329,q??Rt("augments"),Pe);return yt.class=Ce,yt}function Qw(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.class!==Pe||q.comment!==yt?vo(iW(Ce,Pe,yt),q):q}function tZ(q,Ce,Pe){let yt=Yw(330,q??Rt("implements"),Pe);return yt.class=Ce,yt}function Qx(q,Ce,Pe){let yt=Yw(348,q??Rt("see"),Pe);return yt.name=Ce,yt}function sW(q,Ce,Pe,yt){return q.tagName!==Ce||q.name!==Pe||q.comment!==yt?vo(Qx(Ce,Pe,yt),q):q}function HC(q){let Ce=Te(311);return Ce.name=q,Ce}function RQ(q,Ce){return q.name!==Ce?vo(HC(Ce),q):q}function Xx(q,Ce){let Pe=Te(312);return Pe.left=q,Pe.right=Ce,Pe.transformFlags|=zs(Pe.left)|zs(Pe.right),Pe}function _5(q,Ce,Pe){return q.left!==Ce||q.right!==Pe?vo(Xx(Ce,Pe),q):q}function zU(q,Ce){let Pe=Te(325);return Pe.name=q,Pe.text=Ce,Pe}function Jx(q,Ce,Pe){return q.name!==Ce?vo(zU(Ce,Pe),q):q}function mse(q,Ce){let Pe=Te(326);return Pe.name=q,Pe.text=Ce,Pe}function oq(q,Ce,Pe){return q.name!==Ce?vo(mse(Ce,Pe),q):q}function aq(q,Ce){let Pe=Te(327);return Pe.name=q,Pe.text=Ce,Pe}function ype(q,Ce,Pe){return q.name!==Ce?vo(aq(Ce,Pe),q):q}function cq(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.class!==Pe||q.comment!==yt?vo(tZ(Ce,Pe,yt),q):q}function y5(q,Ce,Pe){return Yw(q,Ce??Rt(Ube(q)),Pe)}function rZ(q,Ce,Pe=hS(Ce),yt){return Ce.tagName!==Pe||Ce.comment!==yt?vo(y5(q,Pe,yt),Ce):Ce}function Cse(q,Ce,Pe,yt){let Rr=Yw(q,Ce??Rt(Ube(q)),yt);return Rr.typeExpression=Pe,Rr}function b5(q,Ce,Pe=hS(Ce),yt,Rr){return Ce.tagName!==Pe||Ce.typeExpression!==yt||Ce.comment!==Rr?vo(Cse(q,Pe,yt,Rr),Ce):Ce}function qU(q,Ce){return Yw(328,q,Ce)}function Zh(q,Ce,Pe){return q.tagName!==Ce||q.comment!==Pe?vo(qU(Ce,Pe),q):q}function YC(q,Ce,Pe){let yt=Sv(341,q??Rt(Ube(341)),Pe);return yt.typeExpression=Ce,yt.locals=void 0,yt.nextContainer=void 0,yt}function lq(q,Ce=hS(q),Pe,yt){return q.tagName!==Ce||q.typeExpression!==Pe||q.comment!==yt?vo(YC(Ce,Pe,yt),q):q}function Hb(q,Ce,Pe,yt,Rr){let Ii=Yw(352,q??Rt("import"),Rr);return Ii.importClause=Ce,Ii.moduleSpecifier=Pe,Ii.attributes=yt,Ii.comment=Rr,Ii}function vv(q,Ce,Pe,yt,Rr,Ii){return q.tagName!==Ce||q.comment!==Ii||q.importClause!==Pe||q.moduleSpecifier!==yt||q.attributes!==Rr?vo(Hb(Ce,Pe,yt,Rr,Ii),q):q}function NQ(q){let Ce=Te(322);return Ce.text=q,Ce}function uR(q,Ce){return q.text!==Ce?vo(NQ(Ce),q):q}function oW(q,Ce){let Pe=Te(321);return Pe.comment=q,Pe.tags=nd(Ce),Pe}function f9(q,Ce,Pe){return q.comment!==Ce||q.tags!==Pe?vo(oW(Ce,Pe),q):q}function uq(q,Ce,Pe){let yt=Te(285);return yt.openingElement=q,yt.children=Ne(Ce),yt.closingElement=Pe,yt.transformFlags|=zs(yt.openingElement)|CA(yt.children)|zs(yt.closingElement)|2,yt}function bpe(q,Ce,Pe,yt){return q.openingElement!==Ce||q.children!==Pe||q.closingElement!==yt?vo(uq(Ce,Pe,yt),q):q}function TI(q,Ce,Pe){let yt=Te(286);return yt.tagName=q,yt.typeArguments=nd(Ce),yt.attributes=Pe,yt.transformFlags|=zs(yt.tagName)|CA(yt.typeArguments)|zs(yt.attributes)|2,yt.typeArguments&&(yt.transformFlags|=1),yt}function _se(q,Ce,Pe,yt){return q.tagName!==Ce||q.typeArguments!==Pe||q.attributes!==yt?vo(TI(Ce,Pe,yt),q):q}function $U(q,Ce,Pe){let yt=Te(287);return yt.tagName=q,yt.typeArguments=nd(Ce),yt.attributes=Pe,yt.transformFlags|=zs(yt.tagName)|CA(yt.typeArguments)|zs(yt.attributes)|2,Ce&&(yt.transformFlags|=1),yt}function DQ(q,Ce,Pe,yt){return q.tagName!==Ce||q.typeArguments!==Pe||q.attributes!==yt?vo($U(Ce,Pe,yt),q):q}function gq(q){let Ce=Te(288);return Ce.tagName=q,Ce.transformFlags|=zs(Ce.tagName)|2,Ce}function F0(q,Ce){return q.tagName!==Ce?vo(gq(Ce),q):q}function BE(q,Ce,Pe){let yt=Te(289);return yt.openingFragment=q,yt.children=Ne(Ce),yt.closingFragment=Pe,yt.transformFlags|=zs(yt.openingFragment)|CA(yt.children)|zs(yt.closingFragment)|2,yt}function eK(q,Ce,Pe,yt){return q.openingFragment!==Ce||q.children!==Pe||q.closingFragment!==yt?vo(BE(Ce,Pe,yt),q):q}function E5(q,Ce){let Pe=Te(12);return Pe.text=q,Pe.containsOnlyTriviaWhiteSpaces=!!Ce,Pe.transformFlags|=2,Pe}function wE(q,Ce,Pe){return q.text!==Ce||q.containsOnlyTriviaWhiteSpaces!==Pe?vo(E5(Ce,Pe),q):q}function tK(){let q=Te(290);return q.transformFlags|=2,q}function Ux(){let q=Te(291);return q.transformFlags|=2,q}function Aq(q,Ce){let Pe=Ze(292);return Pe.name=q,Pe.initializer=Ce,Pe.transformFlags|=zs(Pe.name)|zs(Pe.initializer)|2,Pe}function rK(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?vo(Aq(Ce,Pe),q):q}function Xw(q){let Ce=Ze(293);return Ce.properties=Ne(q),Ce.transformFlags|=CA(Ce.properties)|2,Ce}function dq(q,Ce){return q.properties!==Ce?vo(Xw(Ce),q):q}function yse(q){let Ce=Te(294);return Ce.expression=q,Ce.transformFlags|=zs(Ce.expression)|2,Ce}function pq(q,Ce){return q.expression!==Ce?vo(yse(Ce),q):q}function nK(q,Ce){let Pe=Te(295);return Pe.dotDotDotToken=q,Pe.expression=Ce,Pe.transformFlags|=zs(Pe.dotDotDotToken)|zs(Pe.expression)|2,Pe}function fq(q,Ce){return q.expression!==Ce?vo(nK(q.dotDotDotToken,Ce),q):q}function I9(q,Ce){let Pe=Te(296);return Pe.namespace=q,Pe.name=Ce,Pe.transformFlags|=zs(Pe.namespace)|zs(Pe.name)|2,Pe}function B1(q,Ce,Pe){return q.namespace!==Ce||q.name!==Pe?vo(I9(Ce,Pe),q):q}function LN(q,Ce){let Pe=Te(297);return Pe.expression=d().parenthesizeExpressionForDisallowedComma(q),Pe.statements=Ne(Ce),Pe.transformFlags|=zs(Pe.expression)|CA(Pe.statements),Pe.jsDoc=void 0,Pe}function iK(q,Ce,Pe){return q.expression!==Ce||q.statements!==Pe?vo(LN(Ce,Pe),q):q}function sK(q){let Ce=Te(298);return Ce.statements=Ne(q),Ce.transformFlags=CA(Ce.statements),Ce}function jA(q,Ce){return q.statements!==Ce?vo(sK(Ce),q):q}function Uo(q,Ce){let Pe=Te(299);switch(Pe.token=q,Pe.types=Ne(Ce),Pe.transformFlags|=CA(Pe.types),q){case 96:Pe.transformFlags|=1024;break;case 119:Pe.transformFlags|=1;break;default:return pe.assertNever(q)}return Pe}function mS(q,Ce){return q.types!==Ce?vo(Uo(q.token,Ce),q):q}function $m(q,Ce){let Pe=Te(300);return Pe.variableDeclaration=dk(q),Pe.block=Ce,Pe.transformFlags|=zs(Pe.variableDeclaration)|zs(Pe.block)|(q?0:64),Pe.locals=void 0,Pe.nextContainer=void 0,Pe}function S5(q,Ce,Pe){return q.variableDeclaration!==Ce||q.block!==Pe?vo($m(Ce,Pe),q):q}function oK(q,Ce){let Pe=Ze(304);return Pe.name=Fm(q),Pe.initializer=d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=NB(Pe.name)|zs(Pe.initializer),Pe.modifiers=void 0,Pe.questionToken=void 0,Pe.exclamationToken=void 0,Pe.jsDoc=void 0,Pe}function kQ(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?v5(oK(Ce,Pe),q):q}function v5(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken),vo(q,Ce)}function aK(q,Ce){let Pe=Ze(305);return Pe.name=Fm(q),Pe.objectAssignmentInitializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=iie(Pe.name)|zs(Pe.objectAssignmentInitializer)|1024,Pe.equalsToken=void 0,Pe.modifiers=void 0,Pe.questionToken=void 0,Pe.exclamationToken=void 0,Pe.jsDoc=void 0,Pe}function Ae(q,Ce,Pe){return q.name!==Ce||q.objectAssignmentInitializer!==Pe?Et(aK(Ce,Pe),q):q}function Et(q,Ce){return q!==Ce&&(q.modifiers=Ce.modifiers,q.questionToken=Ce.questionToken,q.exclamationToken=Ce.exclamationToken,q.equalsToken=Ce.equalsToken),vo(q,Ce)}function fn(q){let Ce=Ze(306);return Ce.expression=d().parenthesizeExpressionForDisallowedComma(q),Ce.transformFlags|=zs(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function qi(q,Ce){return q.expression!==Ce?vo(fn(Ce),q):q}function ic(q,Ce){let Pe=Ze(307);return Pe.name=Fm(q),Pe.initializer=Ce&&d().parenthesizeExpressionForDisallowedComma(Ce),Pe.transformFlags|=zs(Pe.name)|zs(Pe.initializer)|1,Pe.jsDoc=void 0,Pe}function Oc(q,Ce,Pe){return q.name!==Ce||q.initializer!==Pe?vo(ic(Ce,Pe),q):q}function zl(q,Ce,Pe){let yt=c.createBaseSourceFileNode(308);return yt.statements=Ne(q),yt.endOfFileToken=Ce,yt.flags|=Pe,yt.text="",yt.fileName="",yt.path="",yt.resolvedPath="",yt.originalFileName="",yt.languageVersion=1,yt.languageVariant=0,yt.scriptKind=0,yt.isDeclarationFile=!1,yt.hasNoDefaultLib=!1,yt.transformFlags|=CA(yt.statements)|zs(yt.endOfFileToken),yt.locals=void 0,yt.nextContainer=void 0,yt.endFlowNode=void 0,yt.nodeCount=0,yt.identifierCount=0,yt.symbolCount=0,yt.parseDiagnostics=void 0,yt.bindDiagnostics=void 0,yt.bindSuggestionDiagnostics=void 0,yt.lineMap=void 0,yt.externalModuleIndicator=void 0,yt.setExternalModuleIndicator=void 0,yt.pragmas=void 0,yt.checkJsDirective=void 0,yt.referencedFiles=void 0,yt.typeReferenceDirectives=void 0,yt.libReferenceDirectives=void 0,yt.amdDependencies=void 0,yt.commentDirectives=void 0,yt.identifiers=void 0,yt.packageJsonLocations=void 0,yt.packageJsonScope=void 0,yt.imports=void 0,yt.moduleAugmentations=void 0,yt.ambientModuleNames=void 0,yt.classifiableNames=void 0,yt.impliedNodeFormat=void 0,yt}function Vc(q){let Ce=Object.create(q.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Pe){this.redirectInfo.redirectTarget.id=Pe}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Pe){this.redirectInfo.redirectTarget.symbol=Pe}}}),Ce.redirectInfo=q,Ce}function _A(q){let Ce=Vc(q.redirectInfo);return Ce.flags|=q.flags&-17,Ce.fileName=q.fileName,Ce.path=q.path,Ce.resolvedPath=q.resolvedPath,Ce.originalFileName=q.originalFileName,Ce.packageJsonLocations=q.packageJsonLocations,Ce.packageJsonScope=q.packageJsonScope,Ce.emitNode=void 0,Ce}function Lh(q){let Ce=c.createBaseSourceFileNode(308);Ce.flags|=q.flags&-17;for(let Pe in q)if(!(Da(Ce,Pe)||!Da(q,Pe))){if(Pe==="emitNode"){Ce.emitNode=void 0;continue}Ce[Pe]=q[Pe]}return Ce}function g0(q){let Ce=q.redirectInfo?_A(q):Lh(q);return g(Ce,q),Ce}function Yy(q,Ce,Pe,yt,Rr,Ii,Jo){let Au=g0(q);return Au.statements=Ne(Ce),Au.isDeclarationFile=Pe,Au.referencedFiles=yt,Au.typeReferenceDirectives=Rr,Au.hasNoDefaultLib=Ii,Au.libReferenceDirectives=Jo,Au.transformFlags=CA(Au.statements)|zs(Au.endOfFileToken),Au}function B5(q,Ce,Pe=q.isDeclarationFile,yt=q.referencedFiles,Rr=q.typeReferenceDirectives,Ii=q.hasNoDefaultLib,Jo=q.libReferenceDirectives){return q.statements!==Ce||q.isDeclarationFile!==Pe||q.referencedFiles!==yt||q.typeReferenceDirectives!==Rr||q.hasNoDefaultLib!==Ii||q.libReferenceDirectives!==Jo?vo(Yy(q,Ce,Pe,yt,Rr,Ii,Jo),q):q}function Qy(q){let Ce=Te(309);return Ce.sourceFiles=q,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function aW(q,Ce){return q.sourceFiles!==Ce?vo(Qy(Ce),q):q}function Iq(q,Ce=!1,Pe){let yt=Te(238);return yt.type=q,yt.isSpread=Ce,yt.tupleNameSource=Pe,yt}function QB(q){let Ce=Te(353);return Ce._children=q,Ce}function Hf(q){let Ce=Te(354);return Ce.original=q,gn(Ce,q),Ce}function cK(q,Ce){let Pe=Te(356);return Pe.expression=q,Pe.original=Ce,Pe.transformFlags|=zs(Pe.expression)|1,gn(Pe,Ce),Pe}function h9(q,Ce){return q.expression!==Ce?vo(cK(Ce,q.original),q):q}function Jw(){return Te(355)}function m9(q){if(sp(q)&&!SL(q)&&!q.original&&!q.emitNode&&!q.id){if(sde(q))return q.elements;if(fo(q)&&rEe(q.operatorToken))return[q.left,q.right]}return q}function xQ(q){let Ce=Te(357);return Ce.elements=Ne(Zr(q,m9)),Ce.transformFlags|=CA(Ce.elements),Ce}function lWe(q,Ce){return q.elements!==Ce?vo(xQ(Ce),q):q}function Epe(q,Ce){let Pe=Te(358);return Pe.expression=q,Pe.thisArg=Ce,Pe.transformFlags|=zs(Pe.expression)|zs(Pe.thisArg),Pe}function hq(q,Ce,Pe){return q.expression!==Ce||q.thisArg!==Pe?vo(Epe(Ce,Pe),q):q}function Spe(q){let Ce=ht(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),oie(Ce,{...q.emitNode.autoGenerate}),Ce}function c2e(q){let Ce=ht(q.escapedText);Ce.flags|=q.flags&-17,Ce.jsDoc=q.jsDoc,Ce.flowNode=q.flowNode,Ce.symbol=q.symbol,Ce.transformFlags=q.transformFlags,g(Ce,q);let Pe=G3(q);return Pe&&xx(Ce,Pe),Ce}function cW(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),oie(Ce,{...q.emitNode.autoGenerate}),Ce}function mq(q){let Ce=Gt(q.escapedText);return Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q),Ce}function lK(q){if(q===void 0)return q;if(ll(q))return g0(q);if(kp(q))return Spe(q);if(Ir(q))return c2e(q);if(TL(q))return cW(q);if(p(q))return mq(q);let Ce=z6(q.kind)?c.createBaseNode(q.kind):c.createBaseTokenNode(q.kind);Ce.flags|=q.flags&-17,Ce.transformFlags=q.transformFlags,g(Ce,q);for(let Pe in q)Da(Ce,Pe)||!Da(q,Pe)||(Ce[Pe]=q[Pe]);return Ce}function uWe(q,Ce,Pe){return Js(E1(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,kf(q,!0)),void 0,Pe?[Pe]:[])}function GQ(q,Ce,Pe){return Js(yv(void 0,void 0,Ce?[Ce]:[],void 0,void 0,kf(q,!0)),void 0,Pe?[Pe]:[])}function uK(){return oR(Ue("0"))}function vpe(q){return wQ(void 0,!1,q)}function Cq(q){return fa(void 0,!1,UU([TQ(!1,void 0,q)]))}function kl(q,Ce){return Ce==="null"?Ee.createStrictEquality(q,ir()):Ce==="undefined"?Ee.createStrictEquality(q,uK()):Ee.createStrictEquality(Pb(q),Tt(Ce))}function lW(q,Ce){return Ce==="null"?Ee.createStrictInequality(q,ir()):Ce==="undefined"?Ee.createStrictInequality(q,uK()):Ee.createStrictInequality(Pb(q),Tt(Ce))}function no(q,Ce,Pe){return _B(q)?RA(Gp(q,void 0,Ce),void 0,void 0,Pe):Js(rm(q,Ce),void 0,Pe)}function Bpe(q,Ce,Pe){return no(q,"bind",[Ce,...Pe])}function bse(q,Ce,Pe){return no(q,"call",[Ce,...Pe])}function Ese(q,Ce,Pe){return no(q,"apply",[Ce,Pe])}function FQ(q,Ce,Pe){return no(Rt(q),Ce,Pe)}function l2e(q,Ce){return no(q,"slice",Ce===void 0?[]:[y9(Ce)])}function gK(q,Ce){return no(q,"concat",Ce)}function gWe(q,Ce,Pe){return FQ("Object","defineProperty",[q,y9(Ce),Pe])}function Sse(q,Ce){return FQ("Object","getOwnPropertyDescriptor",[q,y9(Ce)])}function gk(q,Ce,Pe){return FQ("Reflect","get",Pe?[q,Ce,Pe]:[q,Ce])}function u2e(q,Ce,Pe,yt){return FQ("Reflect","set",yt?[q,Ce,Pe,yt]:[q,Ce,Pe])}function w5(q,Ce,Pe){return Pe?(q.push(oK(Ce,Pe)),!0):!1}function AWe(q,Ce){let Pe=[];w5(Pe,"enumerable",y9(q.enumerable)),w5(Pe,"configurable",y9(q.configurable));let yt=w5(Pe,"writable",y9(q.writable));yt=w5(Pe,"value",q.value)||yt;let Rr=w5(Pe,"get",q.get);return Rr=w5(Pe,"set",q.set)||Rr,pe.assert(!(yt&&Rr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),xd(Pe,!Ce)}function wpe(q,Ce){switch(q.kind){case 218:return OC(q,Ce);case 217:return C2(q,q.type,Ce);case 235:return sn(q,Ce,q.type);case 239:return Oo(q,Ce,q.type);case 236:return is(q,Ce);case 234:return UP(q,Ce,q.typeArguments);case 356:return h9(q,Ce)}}function g2e(q){return gI(q)&&sp(q)&&sp(XT(q))&&sp(DB(q))&&!jt(k3(q))&&!jt(hU(q))}function Tpe(q,Ce,Pe=63){return q&&s9e(q,Pe)&&!g2e(q)?wpe(q,Tpe(q.expression,Ce)):Ce}function T5(q,Ce,Pe){if(!Ce)return q;let yt=rq(Ce,Ce.label,FP(Ce.statement)?T5(q,Ce.statement):q);return Pe&&Pe(Ce),yt}function Ak(q,Ce){let Pe=QA(q);switch(Pe.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 210:return Pe.elements.length!==0;case 211:return Pe.properties.length>0;default:return!0}}function vse(q,Ce,Pe,yt=!1){let Rr=HI(q,63),Ii,Jo;return xy(Rr)?(Ii=st(),Jo=Rr):rr(Rr)?(Ii=st(),Jo=Pe!==void 0&&Pe<2?gn(Rt("_super"),Rr):Rr):tA(Rr)&8192?(Ii=uK(),Jo=d().parenthesizeLeftSideOfAccess(Rr,!1)):jo(Rr)?Ak(Rr.expression,yt)?(Ii=Lt(Ce),Jo=rm(gn(Ee.createAssignment(Ii,Rr.expression),Rr.expression),Rr.name),gn(Jo,Rr)):(Ii=Rr.expression,Jo=Rr):Yg(Rr)?Ak(Rr.expression,yt)?(Ii=Lt(Ce),Jo=Z_(gn(Ee.createAssignment(Ii,Rr.expression),Rr.expression),Rr.argumentExpression),gn(Jo,Rr)):(Ii=Rr.expression,Jo=Rr):(Ii=uK(),Jo=d().parenthesizeLeftSideOfAccess(q,!1)),{target:Jo,thisArg:Ii}}function VN(q,Ce){return rm(d_(xd([it(void 0,"value",[Ic(void 0,void 0,q,void 0,void 0,void 0)],kf([v1(Ce)]))])),"value")}function rt(q){return q.length>10?xQ(q):Ul(q,Ee.createComma)}function Kt(q,Ce,Pe,yt=0,Rr){let Ii=Rr?q&&Cw(q):Il(q);if(Ii&&Ir(Ii)&&!kp(Ii)){let Jo=XA(gn(lK(Ii),Ii),Ii.parent);return yt|=tA(Ii),Pe||(yt|=96),Ce||(yt|=3072),yt&&ti(Jo,yt),Jo}return _r(q)}function xr(q,Ce,Pe){return Kt(q,Ce,Pe,98304)}function Tn(q,Ce,Pe,yt){return Kt(q,Ce,Pe,32768,yt)}function Ai(q,Ce,Pe){return Kt(q,Ce,Pe,16384)}function Pi(q,Ce,Pe){return Kt(q,Ce,Pe)}function Ba(q,Ce,Pe,yt){let Rr=rm(q,sp(Ce)?Ce:lK(Ce));gn(Rr,Ce);let Ii=0;return yt||(Ii|=96),Pe||(Ii|=3072),Ii&&ti(Rr,Ii),Rr}function Xo(q,Ce,Pe,yt){return q&&Ga(Ce,32)?Ba(q,Kt(Ce),Pe,yt):Ai(Ce,Pe,yt)}function uo(q,Ce,Pe,yt){let Rr=bp(q,Ce,0,Pe);return ep(q,Ce,Rr,yt)}function Cc(q){return Zg(q.expression)&&q.expression.text==="use strict"}function Tl(){return N0(v1(Tt("use strict")))}function bp(q,Ce,Pe=0,yt){pe.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let Rr=!1,Ii=q.length;for(;PeAu&&_2.splice(Rr,0,...Ce.slice(Au,cf)),Au>Jo&&_2.splice(yt,0,...Ce.slice(Jo,Au)),Jo>Ii&&_2.splice(Pe,0,...Ce.slice(Ii,Jo)),Ii>0)if(Pe===0)_2.splice(0,0,...Ce.slice(0,Ii));else{let gW=new Map;for(let gR=0;gR=0;gR--){let yq=Ce[gR];gW.has(yq.expression.text)||_2.unshift(yq)}}return tN(q)?gn(Ne(_2,q.hasTrailingComma),q):q}function _9(q,Ce){let Pe;return typeof Ce=="number"?Pe=mn(Ce):Pe=Ce,Ds(q)?ks(q,Pe,q.name,q.constraint,q.default):Si(q)?su(q,Pe,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):$D(q)?ao(q,Pe,q.typeParameters,q.parameters,q.type):ss(q)?ba(q,Pe,q.name,q.questionToken,q.type):pi(q)?yr(q,Pe,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):hl(q)?Oi(q,Pe,q.name,q.questionToken,q.typeParameters,q.parameters,q.type):uu(q)?pa(q,Pe,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Tc(q)?Tu(q,Pe,q.parameters,q.body):Bg(q)?pt(q,Pe,q.name,q.parameters,q.type,q.body):Dg(q)?nr(q,Pe,q.name,q.parameters,q.body):w0(q)?Gi(q,Pe,q.parameters,q.type):UA(q)?gy(q,Pe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):lA(q)?ik(q,Pe,q.typeParameters,q.parameters,q.type,q.equalsGreaterThanToken,q.body):vd(q)?sk(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):Ch(q)?p_(q,Pe,q.declarationList):ih(q)?PA(q,Pe,q.asteriskToken,q.name,q.typeParameters,q.parameters,q.type,q.body):pm(q)?jF(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):g_(q)?ck(q,Pe,q.name,q.typeParameters,q.heritageClauses,q.members):FB(q)?l0(q,Pe,q.name,q.typeParameters,q.type):V3(q)?u0(q,Pe,q.name,q.members):xh(q)?Ay(q,Pe,q.name,q.body):km(q)?l9(q,Pe,q.isTypeOnly,q.name,q.moduleReference):Mf(q)?Sr(q,Pe,q.importClause,q.moduleSpecifier,q.attributes):Cf(q)?I5(q,Pe,q.expression):Gh(q)?sa(q,Pe,q.isTypeOnly,q.exportClause,q.moduleSpecifier,q.attributes):pe.assertNever(q)}function Kx(q,Ce){return Si(q)?su(q,Ce,q.dotDotDotToken,q.name,q.questionToken,q.type,q.initializer):pi(q)?yr(q,Ce,q.name,q.questionToken??q.exclamationToken,q.type,q.initializer):uu(q)?pa(q,Ce,q.asteriskToken,q.name,q.questionToken,q.typeParameters,q.parameters,q.type,q.body):Bg(q)?pt(q,Ce,q.name,q.parameters,q.type,q.body):Dg(q)?nr(q,Ce,q.name,q.parameters,q.body):vd(q)?sk(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pm(q)?jF(q,Ce,q.name,q.typeParameters,q.heritageClauses,q.members):pe.assertNever(q)}function uW(q,Ce){switch(q.kind){case 178:return pt(q,q.modifiers,Ce,q.parameters,q.type,q.body);case 179:return nr(q,q.modifiers,Ce,q.parameters,q.body);case 175:return pa(q,q.modifiers,q.asteriskToken,Ce,q.questionToken,q.typeParameters,q.parameters,q.type,q.body);case 174:return Oi(q,q.modifiers,Ce,q.questionToken,q.typeParameters,q.parameters,q.type);case 173:return yr(q,q.modifiers,Ce,q.questionToken??q.exclamationToken,q.type,q.initializer);case 172:return ba(q,q.modifiers,Ce,q.questionToken,q.type);case 304:return kQ(q,Ce,q.initializer)}}function nd(q){return q?Ne(q):void 0}function Fm(q){return typeof q=="string"?Rt(q):q}function y9(q){return typeof q=="string"?Tt(q):typeof q=="number"?Ue(q):typeof q=="boolean"?q?zt():Ht():q}function Z0(q){return q&&d().parenthesizeExpressionForDisallowedComma(q)}function _q(q){return typeof q=="number"?dt(q):q}function jx(q){return q&&FPt(q)?gn(g(MB(),q),q):q}function dk(q){return typeof q=="string"||q&&!nc(q)?KF(q,void 0,void 0,void 0):q}function vo(q,Ce){return q!==Ce&&(g(q,Ce),gn(q,Ce)),q}}function Ube(s){switch(s){case 345:return"type";case 343:return"returns";case 344:return"this";case 341:return"enum";case 331:return"author";case 333:return"class";case 334:return"public";case 335:return"private";case 336:return"protected";case 337:return"readonly";case 338:return"override";case 346:return"template";case 347:return"typedef";case 342:return"param";case 349:return"prop";case 339:return"callback";case 340:return"overload";case 329:return"augments";case 330:return"implements";case 352:return"import";default:return pe.fail(`Unsupported kind: ${pe.formatSyntaxKind(s)}`)}}var kx,$qe={};function APt(s,c){switch(kx||(kx=wb(99,!1,0)),s){case 15:kx.setText("`"+c+"`");break;case 16:kx.setText("`"+c+"${");break;case 17:kx.setText("}"+c+"${");break;case 18:kx.setText("}"+c+"`");break}let g=kx.scan();if(g===20&&(g=kx.reScanTemplateToken(!1)),kx.isUnterminated())return kx.setText(void 0),$qe;let d;switch(g){case 15:case 16:case 17:case 18:d=kx.getTokenValue();break}return d===void 0||kx.scan()!==1?(kx.setText(void 0),$qe):(kx.setText(void 0),d)}function NB(s){return s&&Ir(s)?iie(s):zs(s)}function iie(s){return zs(s)&-67108865}function dPt(s,c){return c|s.transformFlags&134234112}function zs(s){if(!s)return 0;let c=s.transformFlags&~e$e(s.kind);return rh(s)&&VI(s.name)?dPt(s.name,c):c}function CA(s){return s?s.transformFlags:0}function fU(s){let c=0;for(let g of s)c|=zs(g);s.transformFlags=c}function e$e(s){if(s>=183&&s<=206)return-2;switch(s){case 214:case 215:case 210:return-2147450880;case 268:return-1941676032;case 170:return-2147483648;case 220:return-2072174592;case 219:case 263:return-1937940480;case 262:return-2146893824;case 264:case 232:return-2147344384;case 177:return-1937948672;case 173:return-2013249536;case 175:case 178:case 179:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 169:case 172:case 174:case 180:case 181:case 182:case 265:case 266:return-2;case 211:return-2147278848;case 300:return-2147418112;case 207:case 208:return-2147450880;case 217:case 239:case 235:case 356:case 218:case 108:return-2147483648;case 212:case 213:return-2147483648;default:return-2147483648}}var Az=xLe();function $Ae(s){return s.flags|=16,s}var pPt={createBaseSourceFileNode:s=>$Ae(Az.createBaseSourceFileNode(s)),createBaseIdentifierNode:s=>$Ae(Az.createBaseIdentifierNode(s)),createBasePrivateIdentifierNode:s=>$Ae(Az.createBasePrivateIdentifierNode(s)),createBaseTokenNode:s=>$Ae(Az.createBaseTokenNode(s)),createBaseNode:s=>$Ae(Az.createBaseNode(s))},me=nie(4,pPt),dz;function t$e(s,c,g){return new(dz||(dz=ZC.getSourceMapSourceConstructor()))(s,c,g)}function ua(s,c){if(s.original!==c&&(s.original=c,c)){let g=c.emitNode;g&&(s.emitNode=r$e(g,s.emitNode))}return s}function r$e(s,c){let{flags:g,internalFlags:d,leadingComments:h,trailingComments:_,commentRange:S,sourceMapRange:R,tokenSourceMapRanges:T,constantValue:W,helpers:V,startsOnNewLine:M,snippetElement:ee,classThis:re,assignedName:ge}=s;if(c||(c={}),g&&(c.flags=g),d&&(c.internalFlags=d&-9),h&&(c.leadingComments=Or(h.slice(),c.leadingComments)),_&&(c.trailingComments=Or(_.slice(),c.trailingComments)),S&&(c.commentRange=S),R&&(c.sourceMapRange=R),T&&(c.tokenSourceMapRanges=IU(T,c.tokenSourceMapRanges)),W!==void 0&&(c.constantValue=W),V)for(let Ie of V)c.helpers=ps(c.helpers,Ie);return M!==void 0&&(c.startsOnNewLine=M),ee!==void 0&&(c.snippetElement=ee),re&&(c.classThis=re),ge&&(c.assignedName=ge),c}function IU(s,c){c||(c=[]);for(let g in s)c[g]=s[g];return c}function c_(s){if(s.emitNode)pe.assert(!(s.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(SL(s)){if(s.kind===308)return s.emitNode={annotatedNodes:[s]};let c=ms($l(ms(s)))??pe.fail("Could not determine parsed source file.");c_(c).annotatedNodes.push(s)}s.emitNode={}}return s.emitNode}function Ku(s){var c,g;let d=(g=(c=ms($l(s)))==null?void 0:c.emitNode)==null?void 0:g.annotatedNodes;if(d)for(let h of d)h.emitNode=void 0}function pz(s){let c=c_(s);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,s}function ti(s,c){return c_(s).flags=c,s}function Gw(s,c){let g=c_(s);return g.flags=g.flags|c,s}function sie(s,c){return c_(s).internalFlags=c,s}function N3(s,c){let g=c_(s);return g.internalFlags=g.internalFlags|c,s}function XT(s){var c;return((c=s.emitNode)==null?void 0:c.sourceMapRange)??s}function Hg(s,c){return c_(s).sourceMapRange=c,s}function fz(s,c){var g,d;return(d=(g=s.emitNode)==null?void 0:g.tokenSourceMapRanges)==null?void 0:d[c]}function Kbe(s,c,g){let d=c_(s),h=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return h[c]=g,s}function D3(s){var c;return(c=s.emitNode)==null?void 0:c.startsOnNewLine}function Md(s,c){return c_(s).startsOnNewLine=c,s}function DB(s){var c;return((c=s.emitNode)==null?void 0:c.commentRange)??s}function hh(s,c){return c_(s).commentRange=c,s}function k3(s){var c;return(c=s.emitNode)==null?void 0:c.leadingComments}function kB(s,c){return c_(s).leadingComments=c,s}function JT(s,c,g,d){return kB(s,Ft(k3(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function hU(s){var c;return(c=s.emitNode)==null?void 0:c.trailingComments}function x3(s,c){return c_(s).trailingComments=c,s}function Iz(s,c,g,d){return x3(s,Ft(hU(s),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:g}))}function FLe(s,c){kB(s,k3(c)),x3(s,hU(c));let g=c_(c);return g.leadingComments=void 0,g.trailingComments=void 0,s}function ZLe(s){var c;return(c=s.emitNode)==null?void 0:c.constantValue}function LLe(s,c){let g=c_(s);return g.constantValue=c,s}function $Y(s,c){let g=c_(s);return g.helpers=Ft(g.helpers,c),s}function hN(s,c){if(jt(c)){let g=c_(s);for(let d of c)g.helpers=ps(g.helpers,d)}return s}function n$e(s,c){var g;let d=(g=s.emitNode)==null?void 0:g.helpers;return d?Ql(d,c):!1}function jbe(s){var c;return(c=s.emitNode)==null?void 0:c.helpers}function VLe(s,c,g){let d=s.emitNode,h=d&&d.helpers;if(!jt(h))return;let _=c_(c),S=0;for(let R=0;R0&&(h[R-S]=T)}S>0&&(h.length-=S)}function zbe(s){var c;return(c=s.emitNode)==null?void 0:c.snippetElement}function qbe(s,c){let g=c_(s);return g.snippetElement=c,s}function $be(s){return c_(s).internalFlags|=4,s}function PLe(s,c){let g=c_(s);return g.typeNode=c,s}function WLe(s){var c;return(c=s.emitNode)==null?void 0:c.typeNode}function xx(s,c){return c_(s).identifierTypeArguments=c,s}function G3(s){var c;return(c=s.emitNode)==null?void 0:c.identifierTypeArguments}function oie(s,c){return c_(s).autoGenerate=c,s}function i$e(s){var c;return(c=s.emitNode)==null?void 0:c.autoGenerate}function OLe(s,c){return c_(s).generatedImportReference=c,s}function MLe(s){var c;return(c=s.emitNode)==null?void 0:c.generatedImportReference}var HLe=(s=>(s.Field="f",s.Method="m",s.Accessor="a",s))(HLe||{});function YLe(s){let c=s.factory,g=FA(()=>sie(c.createTrue(),8)),d=FA(()=>sie(c.createFalse(),8));return{getUnscopedHelperName:h,createDecorateHelper:_,createMetadataHelper:S,createParamHelper:R,createESDecorateHelper:Ie,createRunInitializersHelper:_e,createAssignHelper:Ee,createAwaitHelper:Ne,createAsyncGeneratorHelper:Te,createAsyncDelegatorHelper:Ze,createAsyncValuesHelper:We,createRestHelper:Ue,createAwaiterHelper:$e,createExtendsHelper:Ye,createTemplateObjectHelper:Tt,createSpreadArrayHelper:ot,createPropKeyHelper:Qe,createSetFunctionNameHelper:mt,createValuesHelper:ht,createReadHelper:_t,createGeneratorHelper:Rt,createImportStarHelper:Lt,createImportStarCallbackHelper:Ke,createImportDefaultHelper:Pt,createExportStarHelper:_r,createClassPrivateFieldGetHelper:Gt,createClassPrivateFieldSetHelper:nt,createClassPrivateFieldInHelper:Dt,createAddDisposableResourceHelper:tr,createDisposeResourcesHelper:ur,createRewriteRelativeImportExtensionsHelper:Gr};function h(dt){return ti(c.createIdentifier(dt),8196)}function _(dt,pr,st,ir){s.requestEmitHelper(fPt);let zt=[];return zt.push(c.createArrayLiteralExpression(dt,!0)),zt.push(pr),st&&(zt.push(st),ir&&zt.push(ir)),c.createCallExpression(h("__decorate"),void 0,zt)}function S(dt,pr){return s.requestEmitHelper(IPt),c.createCallExpression(h("__metadata"),void 0,[c.createStringLiteral(dt),pr])}function R(dt,pr,st){return s.requestEmitHelper(hPt),gn(c.createCallExpression(h("__param"),void 0,[c.createNumericLiteral(pr+""),dt]),st)}function T(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),dt.name),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function W(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,pr))}function V(dt){let pr=dt.computed?c.createElementAccessExpression(c.createIdentifier("obj"),dt.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),dt.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(pr,c.createIdentifier("value")))])))}function M(dt){let pr=dt.computed?dt.name:Ir(dt.name)?c.createStringLiteralFromNode(dt.name):dt.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(pr,103,c.createIdentifier("obj"))))}function ee(dt,pr){let st=[];return st.push(M(dt)),pr.get&&st.push(W(dt)),pr.set&&st.push(V(dt)),c.createObjectLiteralExpression(st)}function re(dt){let pr=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(dt.kind)),c.createPropertyAssignment(c.createIdentifier("name"),dt.name.computed?dt.name.name:c.createStringLiteralFromNode(dt.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),dt.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),dt.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),ee(dt.name,dt.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),dt.metadata)];return c.createObjectLiteralExpression(pr)}function ge(dt){return dt.kind==="class"?T(dt):re(dt)}function Ie(dt,pr,st,ir,zt,Ht){return s.requestEmitHelper(mPt),c.createCallExpression(h("__esDecorate"),void 0,[dt??c.createNull(),pr??c.createNull(),st,ge(ir),zt,Ht])}function _e(dt,pr,st){return s.requestEmitHelper(Gx),c.createCallExpression(h("__runInitializers"),void 0,st?[dt,pr,st]:[dt,pr])}function Ee(dt){return Mg(s.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,dt):(s.requestEmitHelper(CPt),c.createCallExpression(h("__assign"),void 0,dt))}function Ne(dt){return s.requestEmitHelper(td),c.createCallExpression(h("__await"),void 0,[dt])}function Te(dt,pr){return s.requestEmitHelper(td),s.requestEmitHelper(ede),(dt.emitNode||(dt.emitNode={})).flags|=1572864,c.createCallExpression(h("__asyncGenerator"),void 0,[pr?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),dt])}function Ze(dt){return s.requestEmitHelper(td),s.requestEmitHelper(NF),c.createCallExpression(h("__asyncDelegator"),void 0,[dt])}function We(dt){return s.requestEmitHelper(_Pt),c.createCallExpression(h("__asyncValues"),void 0,[dt])}function Ue(dt,pr,st,ir){s.requestEmitHelper(yPt);let zt=[],Ht=0;for(let Br=0;Br{let d="";for(let h=0;h= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - };`},IPt={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:` - var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - };`},hPt={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:` - var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } - };`},mPt={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:` - var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { - function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; } - var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; - var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; - var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); - var _, done = false; - for (var i = decorators.length - 1; i >= 0; i--) { - var context = {}; - for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p]; - for (var p in contextIn.access) context.access[p] = contextIn.access[p]; - context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); }; - var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); - if (kind === "accessor") { - if (result === void 0) continue; - if (result === null || typeof result !== "object") throw new TypeError("Object expected"); - if (_ = accept(result.get)) descriptor.get = _; - if (_ = accept(result.set)) descriptor.set = _; - if (_ = accept(result.init)) initializers.unshift(_); - } - else if (_ = accept(result)) { - if (kind === "field") initializers.unshift(_); - else descriptor[key] = _; - } - } - if (target) Object.defineProperty(target, contextIn.name, descriptor); - done = true; - };`},Gx={name:"typescript:runInitializers",importName:"__runInitializers",scoped:!1,priority:2,text:` - var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) { - var useValue = arguments.length > 2; - for (var i = 0; i < initializers.length; i++) { - value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); - } - return useValue ? value : void 0; - };`},CPt={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:` - var __assign = (this && this.__assign) || function () { - __assign = Object.assign || function(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - };`},td={name:"typescript:await",importName:"__await",scoped:!1,text:` - var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},ede={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[td],text:` - var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i; - function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; } - function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } } - function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } - function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - function fulfill(value) { resume("next", value); } - function reject(value) { resume("throw", value); } - function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } - };`},NF={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[td],text:` - var __asyncDelegator = (this && this.__asyncDelegator) || function (o) { - var i, p; - return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; - function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; } - };`},_Pt={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:` - var __asyncValues = (this && this.__asyncValues) || function (o) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); - function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } - function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } - };`},yPt={name:"typescript:rest",importName:"__rest",scoped:!1,text:` - var __rest = (this && this.__rest) || function (s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; - };`},bPt={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:` - var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - };`},EPt={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:` - var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - })();`},hz={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:` - var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; - };`},SPt={name:"typescript:read",importName:"__read",scoped:!1,text:` - var __read = (this && this.__read) || function (o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); - } - catch (error) { e = { error: error }; } - finally { - try { - if (r && !r.done && (m = i["return"])) m.call(i); - } - finally { if (e) throw e.error; } - } - return ar; - };`},tde={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` - var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { - if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { - if (ar || !(i in from)) { - if (!ar) ar = Array.prototype.slice.call(from, 0, i); - ar[i] = from[i]; - } - } - return to.concat(ar || Array.prototype.slice.call(from)); - };`},vPt={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:` - var __propKey = (this && this.__propKey) || function (x) { - return typeof x === "symbol" ? x : "".concat(x); - };`},BPt={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:` - var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) { - if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : ""; - return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); - };`},XLe={name:"typescript:values",importName:"__values",scoped:!1,text:` - var __values = (this && this.__values) || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) return m.call(o); - if (o && typeof o.length === "number") return { - next: function () { - if (o && i >= o.length) o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - };`},wPt={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:` - var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype); - return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } - };`},JLe={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:` - var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); - }) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; - }));`},TPt={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:` - var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - }) : function(o, v) { - o["default"] = v; - });`},o$e={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[JLe,TPt],priority:2,text:` - var __importStar = (this && this.__importStar) || (function () { - var ownKeys = function(o) { - ownKeys = Object.getOwnPropertyNames || function (o) { - var ar = []; - for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; - return ar; - }; - return ownKeys(o); - }; - return function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); - __setModuleDefault(result, mod); - return result; - }; - })();`},eEe={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:` - var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; - };`},RPt={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[JLe],priority:2,text:` - var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); - };`},aie={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` - var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { - if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); - if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); - return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); - };`},NPt={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:` - var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { - if (kind === "m") throw new TypeError("Private method is not writable"); - if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); - if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); - return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; - };`},cie={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` - var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) { - if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); - return typeof state === "function" ? receiver === state : state.has(receiver); - };`},a$e={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` - var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) { - if (value !== null && value !== void 0) { - if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); - var dispose, inner; - if (async) { - if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined."); - dispose = value[Symbol.asyncDispose]; - } - if (dispose === void 0) { - if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined."); - dispose = value[Symbol.dispose]; - if (async) inner = dispose; - } - if (typeof dispose !== "function") throw new TypeError("Object not disposable."); - if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } }; - env.stack.push({ value: value, dispose: dispose, async: async }); - } - else if (async) { - env.stack.push({ async: true }); - } - return value; - };`},c$e={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` - var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) { - return function (env) { - function fail(e) { - env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e; - env.hasError = true; - } - var r, s = 0; - function next() { - while (r = env.stack.pop()) { - try { - if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next); - if (r.dispose) { - var result = r.dispose.call(r.value); - if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); }); - } - else s |= 1; - } - catch (e) { - fail(e); - } - } - if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve(); - if (env.hasError) throw env.error; - } - return next(); - }; - })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { - var e = new Error(message); - return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; - });`},l$e={name:"typescript:rewriteRelativeImportExtensions",importName:"__rewriteRelativeImportExtension",scoped:!1,text:` - var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) { - if (typeof path === "string" && /^\\.\\.?\\//.test(path)) { - return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) { - return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js"); - }); - } - return path; - };`},lie={name:"typescript:async-super",scoped:!0,text:s$e` - const ${"_superIndex"} = name => super[name];`},DF={name:"typescript:advanced-async-super",scoped:!0,text:s$e` - const ${"_superIndex"} = (function (geti, seti) { - const cache = Object.create(null); - return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } }); - })(name => super[name], (name, value) => super[name] = value);`};function qD(s,c){return Zl(s)&&Ir(s.expression)&&(tA(s.expression)&8192)!==0&&s.expression.escapedText===c}function mC(s){return s.kind===9}function eQ(s){return s.kind===10}function Zg(s){return s.kind===11}function KL(s){return s.kind===12}function tEe(s){return s.kind===14}function GP(s){return s.kind===15}function tQ(s){return s.kind===16}function uie(s){return s.kind===17}function rde(s){return s.kind===18}function nde(s){return s.kind===26}function rEe(s){return s.kind===28}function mz(s){return s.kind===40}function ide(s){return s.kind===41}function gie(s){return s.kind===42}function Cz(s){return s.kind===54}function UT(s){return s.kind===58}function nEe(s){return s.kind===59}function Aie(s){return s.kind===29}function ULe(s){return s.kind===39}function Ir(s){return s.kind===80}function p(s){return s.kind===81}function y(s){return s.kind===95}function w(s){return s.kind===90}function G(s){return s.kind===134}function J(s){return s.kind===131}function U(s){return s.kind===135}function le(s){return s.kind===148}function Ge(s){return s.kind===126}function Xe(s){return s.kind===128}function bt(s){return s.kind===164}function It(s){return s.kind===129}function rr(s){return s.kind===108}function an(s){return s.kind===102}function Ks(s){return s.kind===84}function zi(s){return s.kind===167}function Un(s){return s.kind===168}function Ds(s){return s.kind===169}function Si(s){return s.kind===170}function So(s){return s.kind===171}function ss(s){return s.kind===172}function pi(s){return s.kind===173}function hl(s){return s.kind===174}function uu(s){return s.kind===175}function fl(s){return s.kind===176}function Tc(s){return s.kind===177}function Bg(s){return s.kind===178}function Dg(s){return s.kind===179}function wg(s){return s.kind===180}function em(s){return s.kind===181}function w0(s){return s.kind===182}function bE(s){return s.kind===183}function nh(s){return s.kind===184}function x_(s){return s.kind===185}function $D(s){return s.kind===186}function Fw(s){return s.kind===187}function mh(s){return s.kind===188}function kF(s){return s.kind===189}function Zw(s){return s.kind===190}function KT(s){return s.kind===203}function jL(s){return s.kind===191}function zL(s){return s.kind===192}function aS(s){return s.kind===193}function mf(s){return s.kind===194}function d2(s){return s.kind===195}function jT(s){return s.kind===196}function fv(s){return s.kind===197}function Fx(s){return s.kind===198}function xB(s){return s.kind===199}function Iv(s){return s.kind===200}function GB(s){return s.kind===201}function EE(s){return s.kind===202}function Um(s){return s.kind===206}function mN(s){return s.kind===205}function zT(s){return s.kind===204}function Km(s){return s.kind===207}function p2(s){return s.kind===208}function hg(s){return s.kind===209}function OI(s){return s.kind===210}function og(s){return s.kind===211}function jo(s){return s.kind===212}function Yg(s){return s.kind===213}function Zl(s){return s.kind===214}function f2(s){return s.kind===215}function MI(s){return s.kind===216}function xF(s){return s.kind===217}function gI(s){return s.kind===218}function UA(s){return s.kind===219}function lA(s){return s.kind===220}function GF(s){return s.kind===221}function CN(s){return s.kind===222}function qT(s){return s.kind===223}function I1(s){return s.kind===224}function T0(s){return s.kind===225}function ek(s){return s.kind===226}function fo(s){return s.kind===227}function Lw(s){return s.kind===228}function FF(s){return s.kind===229}function Hd(s){return s.kind===230}function of(s){return s.kind===231}function vd(s){return s.kind===232}function yp(s){return s.kind===233}function l_(s){return s.kind===234}function Yd(s){return s.kind===235}function Qg(s){return s.kind===239}function hv(s){return s.kind===236}function Du(s){return s.kind===237}function F3(s){return s.kind===238}function ly(s){return s.kind===356}function sde(s){return s.kind===357}function die(s){return s.kind===240}function DPt(s){return s.kind===241}function $u(s){return s.kind===242}function Ch(s){return s.kind===244}function u$e(s){return s.kind===243}function VC(s){return s.kind===245}function Z3(s){return s.kind===246}function Uqr(s){return s.kind===247}function g$e(s){return s.kind===248}function L3(s){return s.kind===249}function KLe(s){return s.kind===250}function iEe(s){return s.kind===251}function Kqr(s){return s.kind===252}function jqr(s){return s.kind===253}function I2(s){return s.kind===254}function kPt(s){return s.kind===255}function ode(s){return s.kind===256}function FP(s){return s.kind===257}function A$e(s){return s.kind===258}function mU(s){return s.kind===259}function zqr(s){return s.kind===260}function nc(s){return s.kind===261}function u_(s){return s.kind===262}function ih(s){return s.kind===263}function pm(s){return s.kind===264}function g_(s){return s.kind===265}function FB(s){return s.kind===266}function V3(s){return s.kind===267}function xh(s){return s.kind===268}function _N(s){return s.kind===269}function ade(s){return s.kind===270}function sEe(s){return s.kind===271}function km(s){return s.kind===272}function Mf(s){return s.kind===273}function Vw(s){return s.kind===274}function qqr(s){return s.kind===303}function xPt(s){return s.kind===301}function $qr(s){return s.kind===302}function CU(s){return s.kind===301}function GPt(s){return s.kind===302}function Zx(s){return s.kind===275}function tk(s){return s.kind===281}function yN(s){return s.kind===276}function uy(s){return s.kind===277}function Cf(s){return s.kind===278}function Gh(s){return s.kind===279}function mv(s){return s.kind===280}function R0(s){return s.kind===282}function jLe(s){return s.kind===80||s.kind===11}function e$r(s){return s.kind===283}function FPt(s){return s.kind===354}function _z(s){return s.kind===358}function ZF(s){return s.kind===284}function bN(s){return s.kind===285}function _U(s){return s.kind===286}function $T(s){return s.kind===287}function rQ(s){return s.kind===288}function P3(s){return s.kind===289}function Pw(s){return s.kind===290}function ZPt(s){return s.kind===291}function EN(s){return s.kind===292}function nQ(s){return s.kind===293}function yz(s){return s.kind===294}function pie(s){return s.kind===295}function eR(s){return s.kind===296}function fie(s){return s.kind===297}function cde(s){return s.kind===298}function h1(s){return s.kind===299}function iQ(s){return s.kind===300}function fm(s){return s.kind===304}function a0(s){return s.kind===305}function Lx(s){return s.kind===306}function LF(s){return s.kind===307}function ll(s){return s.kind===308}function LPt(s){return s.kind===309}function W3(s){return s.kind===310}function lde(s){return s.kind===311}function O3(s){return s.kind===312}function VPt(s){return s.kind===325}function PPt(s){return s.kind===326}function t$r(s){return s.kind===327}function WPt(s){return s.kind===313}function OPt(s){return s.kind===314}function Iie(s){return s.kind===315}function zLe(s){return s.kind===316}function d$e(s){return s.kind===317}function hie(s){return s.kind===318}function qLe(s){return s.kind===319}function r$r(s){return s.kind===320}function tR(s){return s.kind===321}function yU(s){return s.kind===323}function qL(s){return s.kind===324}function bz(s){return s.kind===329}function n$r(s){return s.kind===331}function MPt(s){return s.kind===333}function p$e(s){return s.kind===339}function f$e(s){return s.kind===334}function I$e(s){return s.kind===335}function h$e(s){return s.kind===336}function m$e(s){return s.kind===337}function $Le(s){return s.kind===338}function mie(s){return s.kind===340}function C$e(s){return s.kind===332}function i$r(s){return s.kind===348}function oEe(s){return s.kind===341}function cS(s){return s.kind===342}function e9e(s){return s.kind===343}function _$e(s){return s.kind===344}function ude(s){return s.kind===345}function ZB(s){return s.kind===346}function bU(s){return s.kind===347}function s$r(s){return s.kind===328}function HPt(s){return s.kind===349}function t9e(s){return s.kind===330}function r9e(s){return s.kind===351}function o$r(s){return s.kind===350}function SN(s){return s.kind===352}function Cie(s){return s.kind===353}var gde=new WeakMap;function y$e(s,c){var g;let d=s.kind;return z6(d)?d===353?s._children:(g=gde.get(c))==null?void 0:g.get(s):E}function YPt(s,c,g){s.kind===353&&pe.fail("Should not need to re-set the children of a SyntaxList.");let d=gde.get(c);return d===void 0&&(d=new WeakMap,gde.set(c,d)),d.set(s,g),g}function b$e(s,c){var g;s.kind===353&&pe.fail("Did not expect to unset the children of a SyntaxList."),(g=gde.get(c))==null||g.delete(s)}function QPt(s,c){let g=gde.get(s);g!==void 0&&(gde.delete(s),gde.set(c,g))}function aEe(s){return s.createExportDeclaration(void 0,!1,s.createNamedExports([]),void 0)}function EU(s,c,g,d){if(Un(g))return gn(s.createElementAccessExpression(c,g.expression),d);{let h=gn(_w(g)?s.createPropertyAccessExpression(c,g):s.createElementAccessExpression(c,g),g);return Gw(h,128),h}}function XPt(s,c){let g=H3.createIdentifier(s||"React");return XA(g,$l(c)),g}function JPt(s,c,g){if(zi(c)){let d=JPt(s,c.left,g),h=s.createIdentifier(Vo(c.right));return h.escapedText=c.right.escapedText,s.createPropertyAccessExpression(d,h)}else return XPt(Vo(c),g)}function E$e(s,c,g,d){return c?JPt(s,c,d):s.createPropertyAccessExpression(XPt(g,d),"createElement")}function f2s(s,c,g,d){return c?JPt(s,c,d):s.createPropertyAccessExpression(XPt(g,d),"Fragment")}function UPt(s,c,g,d,h,_){let S=[g];if(d&&S.push(d),h&&h.length>0)if(d||S.push(s.createNull()),h.length>1)for(let R of h)N0(R),S.push(R);else S.push(h[0]);return gn(s.createCallExpression(c,void 0,S),_)}function KPt(s,c,g,d,h,_,S){let T=[f2s(s,g,d,_),s.createNull()];if(h&&h.length>0)if(h.length>1)for(let W of h)N0(W),T.push(W);else T.push(h[0]);return gn(s.createCallExpression(E$e(s,c,d,_),void 0,T),S)}function S$e(s,c,g){if(u_(c)){let d=ma(c.declarations),h=s.updateVariableDeclaration(d,d.name,void 0,void 0,g);return gn(s.createVariableStatement(void 0,s.updateVariableDeclarationList(c,[h])),c)}else{let d=gn(s.createAssignment(c,g),c);return gn(s.createExpressionStatement(d),c)}}function cEe(s,c){if(zi(c)){let g=cEe(s,c.left),d=XA(gn(s.cloneNode(c.right),c.right),c.right.parent);return gn(s.createPropertyAccessExpression(g,d),c)}else return XA(gn(s.cloneNode(c),c),c.parent)}function v$e(s,c){return Ir(c)?s.createStringLiteralFromNode(c):Un(c)?XA(gn(s.cloneNode(c.expression),c.expression),c.expression.parent):XA(gn(s.cloneNode(c),c),c.parent)}function I2s(s,c,g,d,h){let{firstAccessor:_,getAccessor:S,setAccessor:R}=BP(c,g);if(g===_)return gn(s.createObjectDefinePropertyCall(d,v$e(s,g.name),s.createPropertyDescriptor({enumerable:s.createFalse(),configurable:!0,get:S&&gn(ua(s.createFunctionExpression($R(S),void 0,void 0,void 0,S.parameters,void 0,S.body),S),S),set:R&&gn(ua(s.createFunctionExpression($R(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!h)),_)}function h2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),c.initializer),c),c)}function m2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),s.cloneNode(c.name)),c),c)}function C2s(s,c,g){return ua(gn(s.createAssignment(EU(s,g,c.name,c.name),ua(gn(s.createFunctionExpression($R(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function jPt(s,c,g,d){switch(g.name&&p(g.name)&&pe.failBadSyntaxKind(g.name,"Private identifiers are not allowed in object literals."),g.kind){case 178:case 179:return I2s(s,c.properties,g,d,!!c.multiLine);case 304:return h2s(s,g,d);case 305:return m2s(s,g,d);case 175:return C2s(s,g,d)}}function n9e(s,c,g,d,h){let _=c.operator;pe.assert(_===46||_===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let S=s.createTempVariable(d);g=s.createAssignment(S,g),gn(g,c.operand);let R=T0(c)?s.createPrefixUnaryExpression(_,S):s.createPostfixUnaryExpression(S,_);return gn(R,c),h&&(R=s.createAssignment(h,R),gn(R,c)),g=s.createComma(g,R),gn(g,c),ek(c)&&(g=s.createComma(g,S),gn(g,c)),g}function B$e(s){return(tA(s)&65536)!==0}function VF(s){return(tA(s)&32768)!==0}function i9e(s){return(tA(s)&16384)!==0}function a$r(s){return Zg(s.expression)&&s.expression.text==="use strict"}function w$e(s){for(let c of s)if(nS(c)){if(a$r(c))return c}else break}function zPt(s){let c=Nc(s);return c!==void 0&&nS(c)&&a$r(c)}function lEe(s){return s.kind===227&&s.operatorToken.kind===28}function Ade(s){return lEe(s)||sde(s)}function sQ(s){return gI(s)&&wo(s)&&!!ov(s)}function _ie(s){let c=eN(s);return pe.assertIsDefined(c),c}function s9e(s,c=63){switch(s.kind){case 218:return c&-2147483648&&sQ(s)?!1:(c&1)!==0;case 217:case 235:return(c&2)!==0;case 239:return(c&34)!==0;case 234:return(c&16)!==0;case 236:return(c&4)!==0;case 356:return(c&8)!==0}return!1}function HI(s,c=63){for(;s9e(s,c);)s=s.expression;return s}function qPt(s,c=63){let g=s.parent;for(;s9e(g,c);)g=g.parent,pe.assert(g);return g}function N0(s){return Md(s,!0)}function uEe(s){let c=Dd(s,ll),g=c&&c.emitNode;return g&&g.externalHelpersModuleName}function $Pt(s){let c=Dd(s,ll),g=c&&c.emitNode;return!!g&&(!!g.externalHelpersModuleName||!!g.externalHelpers)}function T$e(s,c,g,d,h,_,S){if(d.importHelpers&&g3(g,d)){let R=i0(d),T=NU(g,d),W=_2s(g);if(T!==1&&(R>=5&&R<=99||T===99||T===void 0&&R===200)){if(W){let V=[];for(let M of W){let ee=M.importName;ee&&Qi(V,ee)}if(jt(V)){V.sort(Ca);let M=s.createNamedImports(At(V,Ie=>u7(g,Ie)?s.createImportSpecifier(!1,void 0,s.createIdentifier(Ie)):s.createImportSpecifier(!1,s.createIdentifier(Ie),c.getUnscopedHelperName(Ie)))),ee=Dd(g,ll),re=c_(ee);re.externalHelpers=!0;let ge=s.createImportDeclaration(void 0,s.createImportClause(void 0,void 0,M),s.createStringLiteral(PD),void 0);return N3(ge,2),ge}}}else{let V=y2s(s,g,d,W,h,_||S);if(V){let M=s.createImportEqualsDeclaration(void 0,!1,V,s.createExternalModuleReference(s.createStringLiteral(PD)));return N3(M,2),M}}}}function _2s(s){return Me(jbe(s),c=>!c.scoped)}function y2s(s,c,g,d,h,_){let S=uEe(c);if(S)return S;if(jt(d)||(h||kw(g)&&_)&&Lde(c,g)<4){let T=Dd(c,ll),W=c_(T);return W.externalHelpersModuleName||(W.externalHelpersModuleName=s.createUniqueName(PD))}}function yie(s,c,g){let d=JJ(c);if(d&&!h3(c)&&!wY(c)){let h=d.name;return h.kind===11?s.getGeneratedNameForNode(c):kp(h)?h:s.createIdentifier(mF(g,h)||Vo(h))}if(c.kind===273&&c.importClause||c.kind===279&&c.moduleSpecifier)return s.getGeneratedNameForNode(c)}function Ez(s,c,g,d,h,_){let S=LY(c);if(S&&Zg(S))return E2s(c,d,s,h,_)||b2s(s,S,g)||s.cloneNode(S)}function b2s(s,c,g){let d=g.renamedDependencies&&g.renamedDependencies.get(c.text);return d?s.createStringLiteral(d):void 0}function gEe(s,c,g,d){if(c){if(c.moduleName)return s.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return s.createStringLiteral(Mye(g,c.fileName))}}function E2s(s,c,g,d,h){return gEe(g,d.getExternalModuleFileFromDeclaration(s),c,h)}function AEe(s){if(uP(s))return s.initializer;if(fm(s)){let c=s.initializer;return Jm(c,!0)?c.right:void 0}if(a0(s))return s.objectAssignmentInitializer;if(Jm(s,!0))return s.right;if(of(s))return AEe(s.expression)}function ZP(s){if(uP(s))return s.name;if(yw(s)){switch(s.kind){case 304:return ZP(s.initializer);case 305:return s.name;case 306:return ZP(s.expression)}return}return Jm(s,!0)?ZP(s.left):of(s)?ZP(s.expression):s}function o9e(s){switch(s.kind){case 170:case 209:return s.dotDotDotToken;case 231:case 306:return s}}function R$e(s){let c=a9e(s);return pe.assert(!!c||Lx(s),"Invalid property name for binding element."),c}function a9e(s){switch(s.kind){case 209:if(s.propertyName){let g=s.propertyName;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&c$r(g.expression)?g.expression:g}break;case 304:if(s.name){let g=s.name;return p(g)?pe.failBadSyntaxKind(g):Un(g)&&c$r(g.expression)?g.expression:g}break;case 306:return s.name&&p(s.name)?pe.failBadSyntaxKind(s.name):s.name}let c=ZP(s);if(c&&VI(c))return c}function c$r(s){let c=s.kind;return c===11||c===9}function bie(s){switch(s.kind){case 207:case 208:case 210:return s.elements;case 211:return s.properties}}function N$e(s){if(s){let c=s;for(;;){if(Ir(c)||!c.body)return Ir(c)?c:c.name;c=c.body}}}function l$r(s){let c=s.kind;return c===177||c===179}function eWt(s){let c=s.kind;return c===177||c===178||c===179}function D$e(s){let c=s.kind;return c===304||c===305||c===263||c===177||c===182||c===176||c===283||c===244||c===265||c===266||c===267||c===268||c===272||c===273||c===271||c===279||c===278}function tWt(s){let c=s.kind;return c===176||c===304||c===305||c===283||c===271}function rWt(s){return UT(s)||Cz(s)}function nWt(s){return Ir(s)||Fx(s)}function iWt(s){return le(s)||mz(s)||ide(s)}function sWt(s){return UT(s)||mz(s)||ide(s)}function oWt(s){return Ir(s)||Zg(s)}function S2s(s){return s===43}function v2s(s){return s===42||s===44||s===45}function B2s(s){return S2s(s)||v2s(s)}function w2s(s){return s===40||s===41}function T2s(s){return w2s(s)||B2s(s)}function R2s(s){return s===48||s===49||s===50}function k$e(s){return R2s(s)||T2s(s)}function N2s(s){return s===30||s===33||s===32||s===34||s===104||s===103}function D2s(s){return N2s(s)||k$e(s)}function k2s(s){return s===35||s===37||s===36||s===38}function x2s(s){return k2s(s)||D2s(s)}function G2s(s){return s===51||s===52||s===53}function F2s(s){return G2s(s)||x2s(s)}function Z2s(s){return s===56||s===57}function L2s(s){return Z2s(s)||F2s(s)}function V2s(s){return s===61||L2s(s)||UD(s)}function P2s(s){return V2s(s)||s===28}function aWt(s){return P2s(s.kind)}var x$e;(s=>{function c(V,M,ee,re,ge,Ie,_e){let Ee=M>0?ge[M-1]:void 0;return pe.assertEqual(ee[M],c),ge[M]=V.onEnter(re[M],Ee,_e),ee[M]=R(V,c),M}s.enter=c;function g(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],g),pe.assertIsDefined(V.onLeft),ee[M]=R(V,g);let Ee=V.onLeft(re[M].left,ge[M],re[M]);return Ee?(W(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.left=g;function d(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],d),pe.assertIsDefined(V.onOperator),ee[M]=R(V,d),V.onOperator(re[M].operatorToken,ge[M],re[M]),M}s.operator=d;function h(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],h),pe.assertIsDefined(V.onRight),ee[M]=R(V,h);let Ee=V.onRight(re[M].right,ge[M],re[M]);return Ee?(W(M,re,Ee),T(M,ee,re,ge,Ee)):M}s.right=h;function _(V,M,ee,re,ge,Ie,_e){pe.assertEqual(ee[M],_),ee[M]=R(V,_);let Ee=V.onExit(re[M],ge[M]);if(M>0){if(M--,V.foldState){let Ne=ee[M]===_?"right":"left";ge[M]=V.foldState(ge[M],Ee,Ne)}}else Ie.value=Ee;return M}s.exit=_;function S(V,M,ee,re,ge,Ie,_e){return pe.assertEqual(ee[M],S),M}s.done=S;function R(V,M){switch(M){case c:if(V.onLeft)return g;case g:if(V.onOperator)return d;case d:if(V.onRight)return h;case h:return _;case _:return S;case S:return S;default:pe.fail("Invalid state")}}s.nextState=R;function T(V,M,ee,re,ge){return V++,M[V]=c,ee[V]=ge,re[V]=void 0,V}function W(V,M,ee){if(pe.shouldAssert(2))for(;V>=0;)pe.assert(M[V]!==ee,"Circular traversal detected."),V--}})(x$e||(x$e={}));var W2s=class{constructor(s,c,g,d,h,_){this.onEnter=s,this.onLeft=c,this.onOperator=g,this.onRight=d,this.onExit=h,this.foldState=_}};function c9e(s,c,g,d,h,_){let S=new W2s(s,c,g,d,h,_);return R;function R(T,W){let V={value:void 0},M=[x$e.enter],ee=[T],re=[void 0],ge=0;for(;M[ge]!==x$e.done;)ge=M[ge](S,ge,M,ee,re,V,W);return pe.assertEqual(ge,0),V.value}}function O2s(s){return s===95||s===90}function dEe(s){let c=s.kind;return O2s(c)}function cWt(s,c){if(c!==void 0)return c.length===0?c:gn(s.createNodeArray([],c.hasTrailingComma),c)}function pEe(s){var c;let g=s.emitNode.autoGenerate;if(g.flags&4){let d=g.id,h=s,_=h.original;for(;_;){h=_;let S=(c=h.emitNode)==null?void 0:c.autoGenerate;if(_w(h)&&(S===void 0||S.flags&4&&S.id!==d))break;_=h.original}return h}return s}function Eie(s,c){return typeof s=="object"?M3(!1,s.prefix,s.node,s.suffix,c):typeof s=="string"?s.length>0&&s.charCodeAt(0)===35?s.slice(1):s:""}function M2s(s,c){return typeof s=="string"?s:H2s(s,pe.checkDefined(c))}function H2s(s,c){return TL(s)?c(s).slice(1):kp(s)?c(s):p(s)?s.escapedText.slice(1):Vo(s)}function M3(s,c,g,d,h){return c=Eie(c,h),d=Eie(d,h),g=M2s(g,h),`${s?"#":""}${c}${g}${d}`}function G$e(s,c,g,d){return s.updatePropertyDeclaration(c,g,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function lWt(s,c,g,d,h=s.createThis()){return s.createGetAccessorDeclaration(g,d,[],void 0,s.createBlock([s.createReturnStatement(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function uWt(s,c,g,d,h=s.createThis()){return s.createSetAccessorDeclaration(g,d,[s.createParameterDeclaration(void 0,void 0,"value")],s.createBlock([s.createExpressionStatement(s.createAssignment(s.createPropertyAccessExpression(h,s.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),s.createIdentifier("value")))]))}function l9e(s){let c=s.expression;for(;;){if(c=HI(c),sde(c)){c=Ei(c.elements);continue}if(lEe(c)){c=c.right;continue}if(Jm(c,!0)&&kp(c.left))return c;break}}function Y2s(s){return gI(s)&&sp(s)&&!s.emitNode}function u9e(s,c){if(Y2s(s))u9e(s.expression,c);else if(lEe(s))u9e(s.left,c),u9e(s.right,c);else if(sde(s))for(let g of s.elements)u9e(g,c);else c.push(s)}function gWt(s){let c=[];return u9e(s,c),c}function fEe(s){if(s.transformFlags&65536)return!0;if(s.transformFlags&128)for(let c of bie(s)){let g=ZP(c);if(g&&CY(g)&&(g.transformFlags&65536||g.transformFlags&128&&fEe(g)))return!0}return!1}function gn(s,c){return c?TB(s,c.pos,c.end):s}function LB(s){let c=s.kind;return c===169||c===170||c===172||c===173||c===174||c===175||c===177||c===178||c===179||c===182||c===186||c===219||c===220||c===232||c===244||c===263||c===264||c===265||c===266||c===267||c===268||c===272||c===273||c===278||c===279}function oQ(s){let c=s.kind;return c===170||c===173||c===175||c===178||c===179||c===232||c===264}var u$r,g$r,A$r,d$r,p$r,AWt={createBaseSourceFileNode:s=>new(p$r||(p$r=ZC.getSourceFileConstructor()))(s,-1,-1),createBaseIdentifierNode:s=>new(A$r||(A$r=ZC.getIdentifierConstructor()))(s,-1,-1),createBasePrivateIdentifierNode:s=>new(d$r||(d$r=ZC.getPrivateIdentifierConstructor()))(s,-1,-1),createBaseTokenNode:s=>new(g$r||(g$r=ZC.getTokenConstructor()))(s,-1,-1),createBaseNode:s=>new(u$r||(u$r=ZC.getNodeConstructor()))(s,-1,-1)},H3=nie(1,AWt);function Bi(s,c){return c&&s(c)}function ol(s,c,g){if(g){if(c)return c(g);for(let d of g){let h=s(d);if(h)return h}}}function F$e(s,c){return s.charCodeAt(c+1)===42&&s.charCodeAt(c+2)===42&&s.charCodeAt(c+3)!==47}function IEe(s){return F(s.statements,Q2s)||X2s(s)}function Q2s(s){return LB(s)&&J2s(s,95)||km(s)&&ZF(s.moduleReference)||Mf(s)||Cf(s)||Gh(s)?s:void 0}function X2s(s){return s.flags&8388608?f$r(s):void 0}function f$r(s){return U2s(s)?s:Lu(s,f$r)}function J2s(s,c){return jt(s.modifiers,g=>g.kind===c)}function U2s(s){return Du(s)&&s.keywordToken===102&&s.name.escapedText==="meta"}var K2s={167:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},169:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.constraint)||Bi(g,c.default)||Bi(g,c.expression)},305:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.equalsToken)||Bi(g,c.objectAssignmentInitializer)},306:function(c,g,d){return Bi(g,c.expression)},170:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},173:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},172:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)||Bi(g,c.initializer)},304:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||Bi(g,c.initializer)},261:function(c,g,d){return Bi(g,c.name)||Bi(g,c.exclamationToken)||Bi(g,c.type)||Bi(g,c.initializer)},209:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.propertyName)||Bi(g,c.name)||Bi(g,c.initializer)},182:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},186:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},185:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},180:I$r,181:I$r,175:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.exclamationToken)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},174:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.questionToken)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)},177:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},178:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},179:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},263:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},219:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.asteriskToken)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.body)},220:function(c,g,d){return ol(g,d,c.modifiers)||ol(g,d,c.typeParameters)||ol(g,d,c.parameters)||Bi(g,c.type)||Bi(g,c.equalsGreaterThanToken)||Bi(g,c.body)},176:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.body)},184:function(c,g,d){return Bi(g,c.typeName)||ol(g,d,c.typeArguments)},183:function(c,g,d){return Bi(g,c.assertsModifier)||Bi(g,c.parameterName)||Bi(g,c.type)},187:function(c,g,d){return Bi(g,c.exprName)||ol(g,d,c.typeArguments)},188:function(c,g,d){return ol(g,d,c.members)},189:function(c,g,d){return Bi(g,c.elementType)},190:function(c,g,d){return ol(g,d,c.elements)},193:h$r,194:h$r,195:function(c,g,d){return Bi(g,c.checkType)||Bi(g,c.extendsType)||Bi(g,c.trueType)||Bi(g,c.falseType)},196:function(c,g,d){return Bi(g,c.typeParameter)},206:function(c,g,d){return Bi(g,c.argument)||Bi(g,c.attributes)||Bi(g,c.qualifier)||ol(g,d,c.typeArguments)},303:function(c,g,d){return Bi(g,c.assertClause)},197:m$r,199:m$r,200:function(c,g,d){return Bi(g,c.objectType)||Bi(g,c.indexType)},201:function(c,g,d){return Bi(g,c.readonlyToken)||Bi(g,c.typeParameter)||Bi(g,c.nameType)||Bi(g,c.questionToken)||Bi(g,c.type)||ol(g,d,c.members)},202:function(c,g,d){return Bi(g,c.literal)},203:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.name)||Bi(g,c.questionToken)||Bi(g,c.type)},207:C$r,208:C$r,210:function(c,g,d){return ol(g,d,c.elements)},211:function(c,g,d){return ol(g,d,c.properties)},212:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.name)},213:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.questionDotToken)||Bi(g,c.argumentExpression)},214:_$r,215:_$r,216:function(c,g,d){return Bi(g,c.tag)||Bi(g,c.questionDotToken)||ol(g,d,c.typeArguments)||Bi(g,c.template)},217:function(c,g,d){return Bi(g,c.type)||Bi(g,c.expression)},218:function(c,g,d){return Bi(g,c.expression)},221:function(c,g,d){return Bi(g,c.expression)},222:function(c,g,d){return Bi(g,c.expression)},223:function(c,g,d){return Bi(g,c.expression)},225:function(c,g,d){return Bi(g,c.operand)},230:function(c,g,d){return Bi(g,c.asteriskToken)||Bi(g,c.expression)},224:function(c,g,d){return Bi(g,c.expression)},226:function(c,g,d){return Bi(g,c.operand)},227:function(c,g,d){return Bi(g,c.left)||Bi(g,c.operatorToken)||Bi(g,c.right)},235:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},236:function(c,g,d){return Bi(g,c.expression)},239:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.type)},237:function(c,g,d){return Bi(g,c.name)},228:function(c,g,d){return Bi(g,c.condition)||Bi(g,c.questionToken)||Bi(g,c.whenTrue)||Bi(g,c.colonToken)||Bi(g,c.whenFalse)},231:function(c,g,d){return Bi(g,c.expression)},242:y$r,269:y$r,308:function(c,g,d){return ol(g,d,c.statements)||Bi(g,c.endOfFileToken)},244:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.declarationList)},262:function(c,g,d){return ol(g,d,c.declarations)},245:function(c,g,d){return Bi(g,c.expression)},246:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.thenStatement)||Bi(g,c.elseStatement)},247:function(c,g,d){return Bi(g,c.statement)||Bi(g,c.expression)},248:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},249:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.condition)||Bi(g,c.incrementor)||Bi(g,c.statement)},250:function(c,g,d){return Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},251:function(c,g,d){return Bi(g,c.awaitModifier)||Bi(g,c.initializer)||Bi(g,c.expression)||Bi(g,c.statement)},252:b$r,253:b$r,254:function(c,g,d){return Bi(g,c.expression)},255:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.statement)},256:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.caseBlock)},270:function(c,g,d){return ol(g,d,c.clauses)},297:function(c,g,d){return Bi(g,c.expression)||ol(g,d,c.statements)},298:function(c,g,d){return ol(g,d,c.statements)},257:function(c,g,d){return Bi(g,c.label)||Bi(g,c.statement)},258:function(c,g,d){return Bi(g,c.expression)},259:function(c,g,d){return Bi(g,c.tryBlock)||Bi(g,c.catchClause)||Bi(g,c.finallyBlock)},300:function(c,g,d){return Bi(g,c.variableDeclaration)||Bi(g,c.block)},171:function(c,g,d){return Bi(g,c.expression)},264:E$r,232:E$r,265:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||ol(g,d,c.heritageClauses)||ol(g,d,c.members)},266:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.typeParameters)||Bi(g,c.type)},267:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||ol(g,d,c.members)},307:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},268:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.body)},272:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)||Bi(g,c.moduleReference)},273:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.importClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},274:function(c,g,d){return Bi(g,c.name)||Bi(g,c.namedBindings)},301:function(c,g,d){return ol(g,d,c.elements)},302:function(c,g,d){return Bi(g,c.name)||Bi(g,c.value)},271:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.name)},275:function(c,g,d){return Bi(g,c.name)},281:function(c,g,d){return Bi(g,c.name)},276:S$r,280:S$r,279:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.exportClause)||Bi(g,c.moduleSpecifier)||Bi(g,c.attributes)},277:v$r,282:v$r,278:function(c,g,d){return ol(g,d,c.modifiers)||Bi(g,c.expression)},229:function(c,g,d){return Bi(g,c.head)||ol(g,d,c.templateSpans)},240:function(c,g,d){return Bi(g,c.expression)||Bi(g,c.literal)},204:function(c,g,d){return Bi(g,c.head)||ol(g,d,c.templateSpans)},205:function(c,g,d){return Bi(g,c.type)||Bi(g,c.literal)},168:function(c,g,d){return Bi(g,c.expression)},299:function(c,g,d){return ol(g,d,c.types)},234:function(c,g,d){return Bi(g,c.expression)||ol(g,d,c.typeArguments)},284:function(c,g,d){return Bi(g,c.expression)},283:function(c,g,d){return ol(g,d,c.modifiers)},357:function(c,g,d){return ol(g,d,c.elements)},285:function(c,g,d){return Bi(g,c.openingElement)||ol(g,d,c.children)||Bi(g,c.closingElement)},289:function(c,g,d){return Bi(g,c.openingFragment)||ol(g,d,c.children)||Bi(g,c.closingFragment)},286:B$r,287:B$r,293:function(c,g,d){return ol(g,d,c.properties)},292:function(c,g,d){return Bi(g,c.name)||Bi(g,c.initializer)},294:function(c,g,d){return Bi(g,c.expression)},295:function(c,g,d){return Bi(g,c.dotDotDotToken)||Bi(g,c.expression)},288:function(c,g,d){return Bi(g,c.tagName)},296:function(c,g,d){return Bi(g,c.namespace)||Bi(g,c.name)},191:dde,192:dde,310:dde,316:dde,315:dde,317:dde,319:dde,318:function(c,g,d){return ol(g,d,c.parameters)||Bi(g,c.type)},321:function(c,g,d){return(typeof c.comment=="string"?void 0:ol(g,d,c.comment))||ol(g,d,c.tags)},348:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.name)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},311:function(c,g,d){return Bi(g,c.name)},312:function(c,g,d){return Bi(g,c.left)||Bi(g,c.right)},342:w$r,349:w$r,331:function(c,g,d){return Bi(g,c.tagName)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},330:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},329:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.class)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},346:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.constraint)||ol(g,d,c.typeParameters)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},347:function(c,g,d){return Bi(g,c.tagName)||(c.typeExpression&&c.typeExpression.kind===310?Bi(g,c.typeExpression)||Bi(g,c.fullName)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment)):Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment)))},339:function(c,g,d){return Bi(g,c.tagName)||Bi(g,c.fullName)||Bi(g,c.typeExpression)||(typeof c.comment=="string"?void 0:ol(g,d,c.comment))},343:pde,345:pde,344:pde,341:pde,351:pde,350:pde,340:pde,324:function(c,g,d){return F(c.typeParameters,g)||F(c.parameters,g)||Bi(g,c.type)},325:dWt,326:dWt,327:dWt,323:function(c,g,d){return F(c.jsDocPropertyTags,g)},328:Sie,333:Sie,334:Sie,335:Sie,336:Sie,337:Sie,332:Sie,338:Sie,352:j2s,356:z2s};function I$r(s,c,g){return ol(c,g,s.typeParameters)||ol(c,g,s.parameters)||Bi(c,s.type)}function h$r(s,c,g){return ol(c,g,s.types)}function m$r(s,c,g){return Bi(c,s.type)}function C$r(s,c,g){return ol(c,g,s.elements)}function _$r(s,c,g){return Bi(c,s.expression)||Bi(c,s.questionDotToken)||ol(c,g,s.typeArguments)||ol(c,g,s.arguments)}function y$r(s,c,g){return ol(c,g,s.statements)}function b$r(s,c,g){return Bi(c,s.label)}function E$r(s,c,g){return ol(c,g,s.modifiers)||Bi(c,s.name)||ol(c,g,s.typeParameters)||ol(c,g,s.heritageClauses)||ol(c,g,s.members)}function S$r(s,c,g){return ol(c,g,s.elements)}function v$r(s,c,g){return Bi(c,s.propertyName)||Bi(c,s.name)}function B$r(s,c,g){return Bi(c,s.tagName)||ol(c,g,s.typeArguments)||Bi(c,s.attributes)}function dde(s,c,g){return Bi(c,s.type)}function w$r(s,c,g){return Bi(c,s.tagName)||(s.isNameFirst?Bi(c,s.name)||Bi(c,s.typeExpression):Bi(c,s.typeExpression)||Bi(c,s.name))||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function pde(s,c,g){return Bi(c,s.tagName)||Bi(c,s.typeExpression)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function dWt(s,c,g){return Bi(c,s.name)}function Sie(s,c,g){return Bi(c,s.tagName)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function j2s(s,c,g){return Bi(c,s.tagName)||Bi(c,s.importClause)||Bi(c,s.moduleSpecifier)||Bi(c,s.attributes)||(typeof s.comment=="string"?void 0:ol(c,g,s.comment))}function z2s(s,c,g){return Bi(c,s.expression)}function Lu(s,c,g){if(s===void 0||s.kind<=166)return;let d=K2s[s.kind];return d===void 0?void 0:d(s,c,g)}function Sz(s,c,g){let d=T$r(s),h=[];for(;h.length=0;--R)d.push(_[R]),h.push(S)}else{let R=c(_,S);if(R){if(R==="skip")continue;return R}if(_.kind>=167)for(let T of T$r(_))d.push(T),h.push(_)}}}function T$r(s){let c=[];return Lu(s,g,g),c;function g(d){c.unshift(d)}}function R$r(s){s.externalModuleIndicator=IEe(s)}function vz(s,c,g,d=!1,h){var _,S;(_=ki)==null||_.push(ki.Phase.Parse,"createSourceFile",{path:s},!0),Mc("beforeParse");let R,{languageVersion:T,setExternalModuleIndicator:W,impliedNodeFormat:V,jsDocParsingMode:M}=typeof g=="object"?g:{languageVersion:g};if(T===100)R=Y3.parseSourceFile(s,c,T,void 0,d,6,Dc,M);else{let ee=V===void 0?W:re=>(re.impliedNodeFormat=V,(W||R$r)(re));R=Y3.parseSourceFile(s,c,T,void 0,d,h,ee,M)}return Mc("afterParse"),Pf("Parse","beforeParse","afterParse"),(S=ki)==null||S.pop(),R}function Bz(s,c){return Y3.parseIsolatedEntityName(s,c)}function hEe(s,c){return Y3.parseJsonText(s,c)}function xm(s){return s.externalModuleIndicator!==void 0}function Z$e(s,c,g,d=!1){let h=L$e.updateSourceFile(s,c,g,d);return h.flags|=s.flags&12582912,h}function pWt(s,c,g){let d=Y3.JSDocParser.parseIsolatedJSDocComment(s,c,g);return d&&d.jsDoc&&Y3.fixupParentReferences(d.jsDoc),d}function N$r(s,c,g){return Y3.JSDocParser.parseJSDocTypeExpressionForTests(s,c,g)}var Y3;(s=>{var c=wb(99,!0),g=40960,d,h,_,S,R;function T(rt){return Ht++,rt}var W={createBaseSourceFileNode:rt=>T(new R(rt,0,0)),createBaseIdentifierNode:rt=>T(new _(rt,0,0)),createBasePrivateIdentifierNode:rt=>T(new S(rt,0,0)),createBaseTokenNode:rt=>T(new h(rt,0,0)),createBaseNode:rt=>T(new d(rt,0,0))},V=nie(11,W),{createNodeArray:M,createNumericLiteral:ee,createStringLiteral:re,createLiteralLikeNode:ge,createIdentifier:Ie,createPrivateIdentifier:_e,createToken:Ee,createArrayLiteralExpression:Ne,createObjectLiteralExpression:Te,createPropertyAccessExpression:Ze,createPropertyAccessChain:We,createElementAccessExpression:Ue,createElementAccessChain:$e,createCallExpression:Ye,createCallChain:Tt,createNewExpression:ot,createParenthesizedExpression:Qe,createBlock:mt,createVariableStatement:ht,createExpressionStatement:_t,createIfStatement:Rt,createWhileStatement:Lt,createForStatement:Ke,createForOfStatement:Pt,createVariableDeclaration:_r,createVariableDeclarationList:Gt}=V,nt,Dt,tr,ur,Gr,dt,pr,st,ir,zt,Ht,Br,mn,jn,Zi,Ns,An=!0,si=!1;function ks(rt,Kt,xr,Tn,Ai=!1,Pi,Ba,Xo=0){var uo;if(Pi=xAe(rt,Pi),Pi===6){let Tl=su(rt,Kt,xr,Tn,Ai);return bEe(Tl,(uo=Tl.statements[0])==null?void 0:uo.expression,Tl.parseDiagnostics,!1,void 0),Tl.referencedFiles=E,Tl.typeReferenceDirectives=E,Tl.libReferenceDirectives=E,Tl.amdDependencies=E,Tl.hasNoDefaultLib=!1,Tl.pragmas=N,Tl}Zn(rt,Kt,xr,Tn,Pi,Xo);let Cc=Gl(xr,Ai,Pi,Ba||R$r,Xo);return ya(),Cc}s.parseSourceFile=ks;function Ic(rt,Kt){Zn("",rt,Kt,void 0,1,0),Ot();let xr=en(!0),Tn=Je()===1&&!pr.length;return ya(),Tn?xr:void 0}s.parseIsolatedEntityName=Ic;function su(rt,Kt,xr=2,Tn,Ai=!1){Zn(rt,Kt,xr,Tn,6,0),Dt=Ns,Ot();let Pi=xe(),Ba,Xo;if(Je()===1)Ba=TA([],Pi,Pi),Xo=sh();else{let Tl;for(;Je()!==1;){let zA;switch(Je()){case 23:zA=nW();break;case 112:case 97:case 106:zA=sh();break;case 41:Vn(()=>Ot()===9&&Ot()!==59)?zA=g9():zA=p9();break;case 9:case 11:if(Vn(()=>Ot()!==59)){zA=Ln();break}default:zA=p9();break}Tl&&Ki(Tl)?Tl.push(zA):Tl?Tl=[Tl,zA]:(Tl=zA,Je()!==1&&bn(Z.Unexpected_token))}let bp=Ki(Tl)?oi(Ne(Tl),Pi):pe.checkDefined(Tl),ep=_t(bp);oi(ep,Pi),Ba=TA([ep],Pi),Xo=jp(1,Z.Unexpected_token)}let uo=hn(rt,2,6,!1,Ba,Xo,Dt,Dc);Ai&&yr(uo),uo.nodeCount=Ht,uo.identifierCount=mn,uo.identifiers=Br,uo.parseDiagnostics=XL(pr,uo),st&&(uo.jsDocDiagnostics=XL(st,uo));let Cc=uo;return ya(),Cc}s.parseJsonText=su;function Zn(rt,Kt,xr,Tn,Ai,Pi){switch(d=ZC.getNodeConstructor(),h=ZC.getTokenConstructor(),_=ZC.getIdentifierConstructor(),S=ZC.getPrivateIdentifierConstructor(),R=ZC.getSourceFileConstructor(),nt=iu(rt),tr=Kt,ur=xr,ir=Tn,Gr=Ai,dt=Zne(Ai),pr=[],jn=0,Br=new Map,mn=0,Ht=0,Dt=0,An=!0,Gr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}si=!1,c.setText(tr),c.setOnError(Bt),c.setScriptTarget(ur),c.setLanguageVariant(dt),c.setScriptKind(Gr),c.setJSDocParsingMode(Pi)}function ya(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),tr=void 0,ur=void 0,ir=void 0,Gr=void 0,dt=void 0,Dt=0,pr=void 0,st=void 0,jn=0,Br=void 0,Zi=void 0,An=!0}function Gl(rt,Kt,xr,Tn,Ai){let Pi=PC(nt);Pi&&(Ns|=33554432),Dt=Ns,Ot();let Ba=uA(0,BE);pe.assert(Je()===1);let Xo=fr(),uo=Wo(sh(),Xo),Cc=hn(nt,rt,xr,Pi,Ba,uo,Dt,Tn);return V$e(Cc,tr),P$e(Cc,Tl),Cc.commentDirectives=c.getCommentDirectives(),Cc.nodeCount=Ht,Cc.identifierCount=mn,Cc.identifiers=Br,Cc.parseDiagnostics=XL(pr,Cc),Cc.jsDocParsingMode=Ai,st&&(Cc.jsDocDiagnostics=XL(st,Cc)),Kt&&yr(Cc),Cc;function Tl(bp,ep,zA){pr.push(QY(nt,tr,bp,ep,zA))}}let ba=!1;function Wo(rt,Kt){if(!Kt)return rt;pe.assert(!rt.jsDoc);let xr=Xt(dye(rt,tr),Tn=>VN.parseJSDocComment(rt,Tn.pos,Tn.end-Tn.pos));return xr.length&&(rt.jsDoc=xr),ba&&(ba=!1,rt.flags|=536870912),rt}function hc(rt){let Kt=ir,xr=L$e.createSyntaxCursor(rt);ir={currentNode:Tl};let Tn=[],Ai=pr;pr=[];let Pi=0,Ba=uo(rt.statements,0);for(;Ba!==-1;){let bp=rt.statements[Pi],ep=rt.statements[Ba];Or(Tn,rt.statements,Pi,Ba),Pi=Cc(rt.statements,Ba);let zA=Se(Ai,CS=>CS.start>=bp.pos),Bv=zA>=0?Se(Ai,CS=>CS.start>=ep.pos,zA):-1;zA>=0&&Or(pr,Ai,zA,Bv>=0?Bv:void 0),Wi(()=>{let CS=Ns;for(Ns|=65536,c.resetTokenState(ep.pos),Ot();Je()!==1;){let C9=c.getTokenFullStart(),_9=hm(0,BE);if(Tn.push(_9),C9===c.getTokenFullStart()&&Ot(),Pi>=0){let Kx=rt.statements[Pi];if(_9.end===Kx.pos)break;_9.end>Kx.pos&&(Pi=Cc(rt.statements,Pi+1))}}Ns=CS},2),Ba=Pi>=0?uo(rt.statements,Pi):-1}if(Pi>=0){let bp=rt.statements[Pi];Or(Tn,rt.statements,Pi);let ep=Se(Ai,zA=>zA.start>=bp.pos);ep>=0&&Or(pr,Ai,ep)}return ir=Kt,V.updateSourceFile(rt,gn(M(Tn),rt.statements));function Xo(bp){return!(bp.flags&65536)&&!!(bp.transformFlags&67108864)}function uo(bp,ep){for(let zA=ep;zA118}function fs(){return Je()===80?!0:Je()===127&&hr()||Je()===135&&nn()?!1:Je()>118}function bi(rt,Kt,xr=!0){return Je()===rt?(xr&&Ot(),!0):(Kt?bn(Kt):bn(Z._0_expected,Vi(rt)),!1)}let mc=Object.keys(ev).filter(rt=>rt.length>2);function gg(rt){if(MI(rt)){Mt(Yu(tr,rt.template.pos),rt.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Kt=Ir(rt)?Vo(rt):void 0;if(!Kt||!Uh(Kt,ur)){bn(Z._0_expected,Vi(27));return}let xr=Yu(tr,rt.pos);switch(Kt){case"const":case"let":case"var":Mt(xr,rt.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Ag(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Mt(xr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Ag(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":Ag(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let Tn=Dr(Kt,mc,Fl)??_u(Kt);if(Tn){Mt(xr,rt.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,Tn);return}Je()!==0&&Mt(xr,rt.end,Z.Unexpected_keyword_or_identifier)}function Ag(rt,Kt,xr){Je()===xr?bn(Kt):bn(rt,c.getTokenValue())}function _u(rt){for(let Kt of mc)if(rt.length>Kt.length+2&&Ac(rt,Kt))return`${Kt} ${rt.slice(Kt.length)}`}function wI(rt,Kt,xr){if(Je()===60&&!c.hasPrecedingLineBreak()){bn(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Je()===21){bn(Z.Cannot_start_a_function_call_in_a_type_annotation),Ot();return}if(Kt&&!gu()){xr?bn(Z._0_expected,Vi(27)):bn(Z.Expected_for_property_initializer);return}if(!bg()){if(xr){bn(Z._0_expected,Vi(27));return}gg(rt)}}function AI(rt){return Je()===rt?($r(),!0):(pe.assert(eAe(rt)),bn(Z._0_expected,Vi(rt)),!1)}function pp(rt,Kt,xr,Tn){if(Je()===Kt){Ot();return}let Ai=bn(Z._0_expected,Vi(Kt));xr&&Ai&&lg(Ai,QY(nt,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Vi(rt),Vi(Kt)))}function Dl(rt){return Je()===rt?(Ot(),!0):!1}function yu(rt){if(Je()===rt)return sh()}function tm(rt){if(Je()===rt)return dS()}function jp(rt,Kt,xr){return yu(rt)||$d(rt,!1,Kt||Z._0_expected,xr||Vi(rt))}function Xg(rt){let Kt=tm(rt);return Kt||(pe.assert(eAe(rt)),$d(rt,!1,Z._0_expected,Vi(rt)))}function sh(){let rt=xe(),Kt=Je();return Ot(),oi(Ee(Kt),rt)}function dS(){let rt=xe(),Kt=Je();return $r(),oi(Ee(Kt),rt)}function gu(){return Je()===27?!0:Je()===20||Je()===1||c.hasPrecedingLineBreak()}function bg(){return gu()?(Je()===27&&Ot(),!0):!1}function KA(){return bg()||bi(27)}function TA(rt,Kt,xr,Tn){let Ai=M(rt,Tn);return TB(Ai,Kt,xr??c.getTokenFullStart()),Ai}function oi(rt,Kt,xr){return TB(rt,Kt,xr??c.getTokenFullStart()),Ns&&(rt.flags|=Ns),si&&(si=!1,rt.flags|=262144),rt}function $d(rt,Kt,xr,...Tn){Kt?ds(c.getTokenFullStart(),0,xr,...Tn):xr&&bn(xr,...Tn);let Ai=xe(),Pi=rt===80?Ie("",void 0):LD(rt)?V.createTemplateLiteralLikeNode(rt,"","",void 0):rt===9?ee("",void 0):rt===11?re("",void 0):rt===283?V.createMissingDeclaration():Ee(rt);return oi(Pi,Ai)}function YI(rt){let Kt=Br.get(rt);return Kt===void 0&&Br.set(rt,Kt=rt),Kt}function Fh(rt,Kt,xr){if(rt){mn++;let Xo=c.hasPrecedingJSDocLeadingAsterisks()?c.getTokenStart():xe(),uo=Je(),Cc=YI(c.getTokenValue()),Tl=c.hasExtendedUnicodeEscape();return In(),oi(Ie(Cc,uo,Tl),Xo)}if(Je()===81)return bn(xr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),Fh(!0);if(Je()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return Fh(!0);mn++;let Tn=Je()===1,Ai=c.isReservedWord(),Pi=c.getTokenText(),Ba=Ai?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return $d(80,Tn,Kt||Ba,Pi)}function WC(rt){return Fh(gs(),void 0,rt)}function _f(rt,Kt){return Fh(fs(),rt,Kt)}function QI(rt){return Fh(Id(Je()),rt)}function ve(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&bn(Z.Unicode_escape_sequence_cannot_appear_here),Fh(Id(Je()))}function mr(){return Id(Je())||Je()===11||Je()===9||Je()===10}function ln(){return Id(Je())||Je()===11}function ni(rt){if(Je()===11||Je()===9||Je()===10){let Kt=Ln();return Kt.text=YI(Kt.text),Kt}return rt&&Je()===23?Za():Je()===81?Go():QI()}function Ls(){return ni(!0)}function Za(){let rt=xe();bi(23);let Kt=Cs(Ay);return bi(24),oi(V.createComputedPropertyName(Kt),rt)}function Go(){let rt=xe(),Kt=_e(YI(c.getTokenValue()));return Ot(),oi(Kt,rt)}function Ss(rt){return Je()===rt&&Ui(rl)}function Uc(){return Ot(),c.hasPrecedingLineBreak()?!1:rm()}function rl(){switch(Je()){case 87:return Ot()===94;case 95:return Ot(),Je()===90?Vn(Gp):Je()===156?Vn(Lg):xd();case 90:return Gp();case 126:return Ot(),rm();case 139:case 153:return Ot(),_h();default:return Uc()}}function xd(){return Je()===60||Je()!==42&&Je()!==130&&Je()!==19&&rm()}function Lg(){return Ot(),xd()}function yf(){return VD(Je())&&Ui(rl)}function rm(){return Je()===23||Je()===19||Je()===42||Je()===26||mr()}function _h(){return Je()===23||mr()}function Gp(){return Ot(),Je()===86||Je()===100||Je()===120||Je()===60||Je()===128&&Vn(Hb)||Je()===134&&Vn(vv)}function oh(rt,Kt){if(af(rt))return!0;switch(rt){case 0:case 1:case 3:return!(Je()===27&&Kt)&&f9();case 2:return Je()===84||Je()===90;case 4:return Vn(MB);case 5:return Vn(aK)||Je()===27&&!Kt;case 6:return Je()===23||mr();case 12:switch(Je()){case 23:case 42:case 26:case 25:return!0;default:return mr()}case 18:return mr();case 9:return Je()===23||Je()===26||mr();case 24:return ln();case 7:return Je()===19?Vn(b1):Kt?fs()&&!or():Ob()&&!or();case 8:return fq();case 10:return Je()===28||Je()===26||fq();case 19:return Je()===103||Je()===87||fs();case 15:switch(Je()){case 28:case 25:return!0}case 11:return Je()===26||u0();case 16:return sn(!1);case 17:return sn(!0);case 20:case 21:return Je()===28||KP();case 22:return cK();case 23:return Je()===161&&Vn(Ux)?!1:Je()===11?!0:Id(Je());case 13:return Id(Je())||Je()===19;case 14:return!0;case 25:return!0;case 26:return pe.fail("ParsingContext.Count used as a context");default:pe.assertNever(rt,"Non-exhaustive case in 'isListElement'.")}}function b1(){if(pe.assert(Je()===19),Ot()===20){let rt=Ot();return rt===28||rt===19||rt===96||rt===119}return!0}function Z_(){return Ot(),fs()}function m2(){return Ot(),Id(Je())}function Vb(){return Ot(),fB(Je())}function or(){return Je()===119||Je()===96?Vn(qn):!1}function qn(){return Ot(),u0()}function Js(){return Ot(),KP()}function Hl(rt){if(Je()===1)return!0;switch(rt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Je()===20;case 3:return Je()===20||Je()===84||Je()===90;case 7:return Je()===19||Je()===96||Je()===119;case 8:return RA();case 19:return Je()===32||Je()===21||Je()===19||Je()===96||Je()===119;case 11:return Je()===22||Je()===27;case 15:case 21:case 10:return Je()===24;case 17:case 16:case 18:return Je()===22||Je()===24;case 20:return Je()!==28;case 22:return Je()===19||Je()===20;case 13:return Je()===32||Je()===44;case 14:return Je()===30&&Vn(uWe);default:return!1}}function RA(){return!!(gu()||dy(Je())||Je()===39)}function NA(){pe.assert(jn,"Missing parsing context");for(let rt=0;rt<26;rt++)if(jn&1<=0)}function oR(rt){return rt===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function pS(){let rt=TA([],xe());return rt.isMissingList=!0,rt}function xN(rt){return!!rt.isMissingList}function at(rt,Kt,xr,Tn){if(bi(xr)){let Ai=qm(rt,Kt);return bi(Tn),Ai}return pS()}function en(rt,Kt){let xr=xe(),Tn=rt?QI(Kt):_f(Kt);for(;Dl(25)&&Je()!==30;)Tn=oi(V.createQualifiedName(Tn,_i(rt,!1,!0)),xr);return Tn}function gi(rt,Kt){return oi(V.createQualifiedName(rt,Kt),rt.pos)}function _i(rt,Kt,xr){if(c.hasPrecedingLineBreak()&&Id(Je())&&Vn(lq))return $d(80,!0,Z.Identifier_expected);if(Je()===81){let Tn=Go();return Kt?Tn:$d(80,!0,Z.Identifier_expected)}return rt?xr?QI():ve():_f()}function ys(rt){let Kt=xe(),xr=[],Tn;do Tn=gr(rt),xr.push(Tn);while(Tn.literal.kind===17);return TA(xr,Kt)}function $s(rt){let Kt=xe();return oi(V.createTemplateExpression(bs(rt),ys(rt)),Kt)}function wa(){let rt=xe();return oi(V.createTemplateLiteralType(bs(!1),pc()),rt)}function pc(){let rt=xe(),Kt=[],xr;do xr=ul(),Kt.push(xr);while(xr.literal.kind===17);return TA(Kt,rt)}function ul(){let rt=xe();return oi(V.createTemplateLiteralTypeSpan(bf(),Fe(!1)),rt)}function Fe(rt){return Je()===20?(Ys(rt),Xl()):jp(18,Z._0_expected,Vi(20))}function gr(rt){let Kt=xe();return oi(V.createTemplateSpan(Cs(Ay),Fe(rt)),Kt)}function Ln(){return jl(Je())}function bs(rt){!rt&&c.getTokenFlags()&26656&&Ys(!1);let Kt=jl(Je());return pe.assert(Kt.kind===16,"Template head has wrong token kind"),Kt}function Xl(){let rt=jl(Je());return pe.assert(rt.kind===17||rt.kind===18,"Template fragment has wrong token kind"),rt}function eg(rt){let Kt=rt===15||rt===18,xr=c.getTokenText();return xr.substring(1,xr.length-(c.isUnterminated()?0:Kt?1:2))}function jl(rt){let Kt=xe(),xr=LD(rt)?V.createTemplateLiteralLikeNode(rt,c.getTokenValue(),eg(rt),c.getTokenFlags()&7176):rt===9?ee(c.getTokenValue(),c.getNumericLiteralFlags()):rt===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):pY(rt)?ge(rt,c.getTokenValue()):pe.fail();return c.hasExtendedUnicodeEscape()&&(xr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(xr.isUnterminated=!0),Ot(),oi(xr,Kt)}function Eu(){return en(!0,Z.Type_expected)}function Df(){if(!c.hasPrecedingLineBreak()&&tn()===30)return at(20,bf,30,32)}function Jg(){let rt=xe();return oi(V.createTypeReferenceNode(Eu(),Df()),rt)}function MC(rt){switch(rt.kind){case 184:return sf(rt.typeName);case 185:case 186:{let{parameters:Kt,type:xr}=rt;return xN(Kt)||MC(xr)}case 197:return MC(rt.type);default:return!1}}function S1(rt){return Ot(),oi(V.createTypePredicateNode(void 0,rt,bf()),rt.pos)}function fS(){let rt=xe();return Ot(),oi(V.createThisTypeNode(),rt)}function bv(){let rt=xe();return Ot(),oi(V.createJSDocAllType(),rt)}function XF(){let rt=xe();return Ot(),oi(V.createJSDocNonNullableType(EQ(),!1),rt)}function o9(){let rt=xe();return Ot(),Je()===28||Je()===20||Je()===22||Je()===32||Je()===64||Je()===52?oi(V.createJSDocUnknownType(),rt):oi(V.createJSDocNullableType(bf(),!1),rt)}function My(){let rt=xe(),Kt=fr();if(Ui(mq)){let xr=$a(36),Tn=co(59,!1);return Wo(oi(V.createJSDocFunctionType(xr,Tn),rt),Kt)}return oi(V.createTypeReferenceNode(QI(),void 0),rt)}function sk(){let rt=xe(),Kt;return(Je()===110||Je()===105)&&(Kt=QI(),bi(59)),oi(V.createParameterDeclaration(void 0,void 0,Kt,void 0,aR(),void 0),rt)}function aR(){c.setSkipJsDocLeadingAsterisks(!0);let rt=xe();if(Dl(144)){let Tn=V.createJSDocNamepathType(void 0);e:for(;;)switch(Je()){case 20:case 1:case 28:case 5:break e;default:$r()}return c.setSkipJsDocLeadingAsterisks(!1),oi(Tn,rt)}let Kt=Dl(26),xr=jF();return c.setSkipJsDocLeadingAsterisks(!1),Kt&&(xr=oi(V.createJSDocVariadicType(xr),rt)),Je()===64?(Ot(),oi(V.createJSDocOptionalType(xr),rt)):xr}function WB(){let rt=xe();bi(114);let Kt=en(!0),xr=c.hasPrecedingLineBreak()?void 0:Hf();return oi(V.createTypeQueryNode(Kt,xr),rt)}function UP(){let rt=xe(),Kt=Oc(!1,!0),xr=_f(),Tn,Ai;Dl(96)&&(KP()||!u0()?Tn=bf():Ai=f5());let Pi=Dl(64)?bf():void 0,Ba=V.createTypeParameterDeclaration(Kt,xr,Tn,Pi);return Ba.expression=Ai,oi(Ba,rt)}function br(){if(Je()===30)return at(19,UP,30,32)}function sn(rt){return Je()===26||fq()||VD(Je())||Je()===60||KP(!rt)}function ei(rt){let Kt=I9(Z.Private_identifiers_cannot_be_used_as_parameters);return DJ(Kt)===0&&!jt(rt)&&VD(Je())&&Ot(),Kt}function is(){return gs()||Je()===23||Je()===19}function Qs(rt){return Os(rt)}function Oo(rt){return Os(rt,!1)}function Os(rt,Kt=!0){let xr=xe(),Tn=fr(),Ai=rt?it(()=>Oc(!0)):nr(()=>Oc(!0));if(Je()===110){let uo=V.createParameterDeclaration(Ai,void 0,Fh(!0),void 0,l0(),void 0),Cc=Nc(Ai);return Cc&&cn(Cc,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Wo(oi(uo,xr),Tn)}let Pi=An;An=!1;let Ba=yu(26);if(!Kt&&!is())return;let Xo=Wo(oi(V.createParameterDeclaration(Ai,Ba,ei(Ai),yu(58),l0(),lk()),xr),Tn);return An=Pi,Xo}function co(rt,Kt){if(Yc(rt,Kt))return Pr(jF)}function Yc(rt,Kt){return rt===39?(bi(rt),!0):Dl(59)?!0:Kt&&Je()===39?(bn(Z._0_expected,Vi(59)),Ot(),!0):!1}function tu(rt,Kt){let xr=hr(),Tn=nn();pa(!!(rt&1)),tl(!!(rt&2));let Ai=rt&32?qm(17,sk):qm(16,()=>Kt?Qs(Tn):Oo(Tn));return pa(xr),tl(Tn),Ai}function $a(rt){if(!bi(21))return pS();let Kt=tu(rt,!0);return bi(22),Kt}function ru(){Dl(28)||KA()}function gl(rt){let Kt=xe(),xr=fr();rt===181&&bi(105);let Tn=br(),Ai=$a(4),Pi=co(59,!0);ru();let Ba=rt===180?V.createCallSignature(Tn,Ai,Pi):V.createConstructSignature(Tn,Ai,Pi);return Wo(oi(Ba,Kt),xr)}function kf(){return Je()===23&&Vn(Wb)}function Wb(){if(Ot(),Je()===26||Je()===24)return!0;if(VD(Je())){if(Ot(),fs())return!0}else if(fs())Ot();else return!1;return Je()===59||Je()===28?!0:Je()!==58?!1:(Ot(),Je()===59||Je()===28||Je()===24)}function OB(rt,Kt,xr){let Tn=at(16,()=>Qs(!1),23,24),Ai=l0();ru();let Pi=V.createIndexSignature(xr,Tn,Ai);return Wo(oi(Pi,rt),Kt)}function p_(rt,Kt,xr){let Tn=Ls(),Ai=yu(58),Pi;if(Je()===21||Je()===30){let Ba=br(),Xo=$a(4),uo=co(59,!0);Pi=V.createMethodSignature(xr,Tn,Ai,Ba,Xo,uo)}else{let Ba=l0();Pi=V.createPropertySignature(xr,Tn,Ai,Ba),Je()===64&&(Pi.initializer=lk())}return ru(),Wo(oi(Pi,rt),Kt)}function MB(){if(Je()===21||Je()===30||Je()===139||Je()===153)return!0;let rt=!1;for(;VD(Je());)rt=!0,Ot();return Je()===23?!0:(mr()&&(rt=!0,Ot()),rt?Je()===21||Je()===30||Je()===58||Je()===59||Je()===28||gu():!1)}function v1(){if(Je()===21||Je()===30)return gl(180);if(Je()===105&&Vn(s5))return gl(181);let rt=xe(),Kt=fr(),xr=Oc(!1);return Ss(139)?v5(rt,Kt,xr,178,4):Ss(153)?v5(rt,Kt,xr,179,4):kf()?OB(rt,Kt,xr):p_(rt,Kt,xr)}function s5(){return Ot(),Je()===21||Je()===30}function GN(){return Ot()===25}function ok(){switch(Ot()){case 21:case 30:case 25:return!0}return!1}function o5(){let rt=xe();return oi(V.createTypeLiteralNode(ak()),rt)}function ak(){let rt;return bi(19)?(rt=uA(4,v1),bi(20)):rt=pS(),rt}function gse(){return Ot(),Je()===40||Je()===41?Ot()===148:(Je()===148&&Ot(),Je()===23&&Z_()&&Ot()===103)}function hpe(){let rt=xe(),Kt=QI();bi(103);let xr=bf();return oi(V.createTypeParameterDeclaration(void 0,Kt,xr,void 0),rt)}function Ase(){let rt=xe();bi(19);let Kt;(Je()===148||Je()===40||Je()===41)&&(Kt=sh(),Kt.kind!==148&&bi(148)),bi(23);let xr=hpe(),Tn=Dl(130)?bf():void 0;bi(24);let Ai;(Je()===58||Je()===40||Je()===41)&&(Ai=sh(),Ai.kind!==58&&bi(58));let Pi=l0();KA();let Ba=uA(4,v1);return bi(20),oi(V.createMappedTypeNode(Kt,xr,Tn,Ai,Pi,Ba),rt)}function Mx(){let rt=xe();if(Dl(26))return oi(V.createRestTypeNode(bf()),rt);let Kt=bf();if(Iie(Kt)&&Kt.pos===Kt.type.pos){let xr=V.createOptionalTypeNode(Kt.type);return gn(xr,Kt),xr.flags=Kt.flags,xr}return Kt}function a5(){return Ot()===59||Je()===58&&Ot()===59}function WU(){return Je()===26?Id(Ot())&&a5():Id(Je())&&a5()}function a9(){if(Vn(WU)){let rt=xe(),Kt=fr(),xr=yu(26),Tn=QI(),Ai=yu(58);bi(59);let Pi=Mx(),Ba=V.createNamedTupleMember(xr,Tn,Ai,Pi);return Wo(oi(Ba,rt),Kt)}return Mx()}function OU(){let rt=xe();return oi(V.createTupleTypeNode(at(21,a9,23,24)),rt)}function qz(){let rt=xe();bi(21);let Kt=bf();return bi(22),oi(V.createParenthesizedType(Kt),rt)}function mpe(){let rt;if(Je()===128){let Kt=xe();Ot();let xr=oi(Ee(128),Kt);rt=TA([xr],Kt)}return rt}function MU(){let rt=xe(),Kt=fr(),xr=mpe(),Tn=Dl(105);pe.assert(!xr||Tn,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Ai=br(),Pi=$a(4),Ba=co(39,!1),Xo=Tn?V.createConstructorTypeNode(xr,Ai,Pi,Ba):V.createFunctionTypeNode(Ai,Pi,Ba);return Wo(oi(Xo,rt),Kt)}function $z(){let rt=sh();return Je()===25?void 0:rt}function c5(rt){let Kt=xe();rt&&Ot();let xr=Je()===112||Je()===97||Je()===106?sh():jl(Je());return rt&&(xr=oi(V.createPrefixUnaryExpression(41,xr),Kt)),oi(V.createLiteralTypeNode(xr),Kt)}function dse(){return Ot(),Je()===102}function HU(){Dt|=4194304;let rt=xe(),Kt=Dl(114);bi(102),bi(21);let xr=bf(),Tn;if(Dl(28)){let Ba=c.getTokenStart();bi(19);let Xo=Je();if(Xo===118||Xo===132?Ot():bn(Z._0_expected,Vi(118)),bi(59),Tn=lW(Xo,!0),Dl(28),!bi(20)){let uo=li(pr);uo&&uo.code===Z._0_expected.code&&lg(uo,QY(nt,tr,Ba,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}bi(22);let Ai=Dl(25)?Eu():void 0,Pi=Df();return oi(V.createImportTypeNode(xr,Tn,Ai,Pi,Kt),rt)}function eq(){return Ot(),Je()===9||Je()===10}function EQ(){switch(Je()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ui($z)||Jg();case 67:c.reScanAsteriskEqualsToken();case 42:return bv();case 61:c.reScanQuestionToken();case 58:return o9();case 100:return My();case 54:return XF();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return c5();case 41:return Vn(eq)?c5(!0):Jg();case 116:return sh();case 110:{let rt=fS();return Je()===142&&!c.hasPrecedingLineBreak()?S1(rt):rt}case 114:return Vn(dse)?HU():WB();case 19:return Vn(gse)?Ase():o5();case 23:return OU();case 21:return qz();case 102:return HU();case 131:return Vn(lq)?ck():Jg();case 16:return wa();default:return Jg()}}function KP(rt){switch(Je()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!rt;case 41:return!rt&&Vn(eq);case 21:return!rt&&Vn(tq);default:return fs()}}function tq(){return Ot(),Je()===22||sn(!1)||KP()}function rq(){let rt=xe(),Kt=EQ();for(;!c.hasPrecedingLineBreak();)switch(Je()){case 54:Ot(),Kt=oi(V.createJSDocNonNullableType(Kt,!0),rt);break;case 58:if(Vn(Js))return Kt;Ot(),Kt=oi(V.createJSDocNullableType(Kt,!0),rt);break;case 23:if(bi(23),KP()){let xr=bf();bi(24),Kt=oi(V.createIndexedAccessTypeNode(Kt,xr),rt)}else bi(24),Kt=oi(V.createArrayTypeNode(Kt),rt);break;default:return Kt}return Kt}function SQ(rt){let Kt=xe();return bi(rt),oi(V.createTypeOperatorNode(rt,UF()),Kt)}function jP(){if(Dl(96)){let rt=Pn(bf);if(Ni()||Je()!==58)return rt}}function c9(){let rt=xe(),Kt=_f(),xr=Ui(jP),Tn=V.createTypeParameterDeclaration(void 0,Kt,xr);return oi(Tn,rt)}function JF(){let rt=xe();return bi(140),oi(V.createInferTypeNode(c9()),rt)}function UF(){let rt=Je();switch(rt){case 143:case 158:case 148:return SQ(rt);case 140:return JF()}return Pr(rq)}function KF(rt){if(PA()){let Kt=MU(),xr;return x_(Kt)?xr=rt?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:xr=rt?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,cn(Kt,xr),Kt}}function zP(rt,Kt,xr){let Tn=xe(),Ai=rt===52,Pi=Dl(rt),Ba=Pi&&KF(Ai)||Kt();if(Je()===rt||Pi){let Xo=[Ba];for(;Dl(rt);)Xo.push(KF(Ai)||Kt());Ba=oi(xr(TA(Xo,Tn)),Tn)}return Ba}function l5(){return zP(51,UF,V.createIntersectionTypeNode)}function YU(){return zP(52,l5,V.createUnionTypeNode)}function u5(){return Ot(),Je()===105}function PA(){return Je()===30||Je()===21&&Vn(pse)?!0:Je()===105||Je()===128&&Vn(u5)}function QU(){if(VD(Je())&&Oc(!1),fs()||Je()===110)return Ot(),!0;if(Je()===23||Je()===19){let rt=pr.length;return I9(),rt===pr.length}return!1}function pse(){return Ot(),!!(Je()===22||Je()===26||QU()&&(Je()===59||Je()===28||Je()===58||Je()===64||Je()===22&&(Ot(),Je()===39)))}function jF(){let rt=xe(),Kt=fs()&&Ui(zF),xr=bf();return Kt?oi(V.createTypePredicateNode(void 0,Kt,xr),rt):xr}function zF(){let rt=_f();if(Je()===142&&!c.hasPrecedingLineBreak())return Ot(),rt}function ck(){let rt=xe(),Kt=jp(131),xr=Je()===110?fS():_f(),Tn=Dl(142)?bf():void 0;return oi(V.createTypePredicateNode(Kt,xr,Tn),rt)}function bf(){if(Ns&81920)return Qu(81920,bf);if(PA())return MU();let rt=xe(),Kt=YU();if(!Ni()&&!c.hasPrecedingLineBreak()&&Dl(96)){let xr=Pn(bf);bi(58);let Tn=Pr(bf);bi(59);let Ai=Pr(bf);return oi(V.createConditionalTypeNode(Kt,xr,Tn,Ai),rt)}return Kt}function l0(){return Dl(59)?bf():void 0}function Ob(){switch(Je()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return Vn(ok);default:return fs()}}function u0(){if(Ob())return!0;switch(Je()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return YB()?!0:fs()}}function g5(){return Je()!==19&&Je()!==100&&Je()!==86&&Je()!==60&&u0()}function Ay(){let rt=Gi();rt&&Oa(!1);let Kt=xe(),xr=Hy(!0),Tn;for(;Tn=yu(28);)xr=gA(xr,Tn,Hy(!0),Kt);return rt&&Oa(!0),xr}function lk(){return Dl(64)?Hy(!0):void 0}function Hy(rt){if(HB())return A5();let Kt=Cpe(rt)||Sr(rt);if(Kt)return Kt;let xr=xe(),Tn=fr(),Ai=qP(0);return Ai.kind===80&&Je()===39?d5(xr,Ai,rt,Tn,void 0):D_(Ai)&&UD(ao())?gA(Ai,sh(),Hy(rt),xr):u9(Ai,xr,rt)}function HB(){return Je()===127?hr()?!0:Vn(NQ):!1}function Mw(){return Ot(),!c.hasPrecedingLineBreak()&&fs()}function A5(){let rt=xe();return Ot(),!c.hasPrecedingLineBreak()&&(Je()===42||u0())?oi(V.createYieldExpression(yu(42),Hy(!0)),rt):oi(V.createYieldExpression(void 0,void 0),rt)}function d5(rt,Kt,xr,Tn,Ai){pe.assert(Je()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Pi=V.createParameterDeclaration(void 0,void 0,Kt,void 0,void 0,void 0);oi(Pi,Kt.pos);let Ba=TA([Pi],Pi.pos,Pi.end),Xo=jp(39),uo=Hw(!!Ai,xr),Cc=V.createArrowFunction(Ai,void 0,Ba,void 0,Xo,uo);return Wo(oi(Cc,rt),Tn)}function Cpe(rt){let Kt=fse();if(Kt!==0)return Kt===1?Hx(!0,!0):Ui(()=>vQ(rt))}function fse(){return Je()===21||Je()===30||Je()===134?Vn(l9):Je()===39?1:0}function l9(){if(Je()===134&&(Ot(),c.hasPrecedingLineBreak()||Je()!==21&&Je()!==30))return 0;let rt=Je(),Kt=Ot();if(rt===21){if(Kt===22)switch(Ot()){case 39:case 59:case 19:return 1;default:return 0}if(Kt===23||Kt===19)return 2;if(Kt===26)return 1;if(VD(Kt)&&Kt!==134&&Vn(Z_))return Ot()===130?0:1;if(!fs()&&Kt!==110)return 0;switch(Ot()){case 59:return 1;case 58:return Ot(),Je()===59||Je()===28||Je()===64||Je()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return pe.assert(rt===30),!fs()&&Je()!==87?0:dt===1?Vn(()=>{Dl(87);let Tn=Ot();if(Tn===96)switch(Ot()){case 64:case 32:case 44:return!1;default:return!0}else if(Tn===28||Tn===64)return!0;return!1})?1:0:2}function vQ(rt){let Kt=c.getTokenStart();if(Zi?.has(Kt))return;let xr=Hx(!1,rt);return xr||(Zi||(Zi=new Set)).add(Kt),xr}function Sr(rt){if(Je()===134&&Vn(XU)===1){let Kt=xe(),xr=fr(),Tn=zl(),Ai=qP(0);return d5(Kt,Ai,rt,xr,Tn)}}function XU(){if(Je()===134){if(Ot(),c.hasPrecedingLineBreak()||Je()===39)return 0;let rt=qP(0);if(!c.hasPrecedingLineBreak()&&rt.kind===80&&Je()===39)return 1}return 0}function Hx(rt,Kt){let xr=xe(),Tn=fr(),Ai=zl(),Pi=jt(Ai,G)?2:0,Ba=br(),Xo;if(bi(21)){if(rt)Xo=tu(Pi,rt);else{let C9=tu(Pi,rt);if(!C9)return;Xo=C9}if(!bi(22)&&!rt)return}else{if(!rt)return;Xo=pS()}let uo=Je()===59,Cc=co(59,!1);if(Cc&&!rt&&MC(Cc))return;let Tl=Cc;for(;Tl?.kind===197;)Tl=Tl.type;let bp=Tl&&hie(Tl);if(!rt&&Je()!==39&&(bp||Je()!==19))return;let ep=Je(),zA=jp(39),Bv=ep===39||ep===19?Hw(jt(Ai,G),Kt):_f();if(!Kt&&uo&&Je()!==59)return;let CS=V.createArrowFunction(Ai,Ba,Xo,Cc,zA,Bv);return Wo(oi(CS,xr),Tn)}function Hw(rt,Kt){if(Je()===19)return sW(rt?2:0);if(Je()!==27&&Je()!==100&&Je()!==86&&f9()&&!g5())return sW(16|(rt?2:0));let xr=hr();pa(!1);let Tn=An;An=!1;let Ai=rt?it(()=>Hy(Kt)):nr(()=>Hy(Kt));return An=Tn,pa(xr),Ai}function u9(rt,Kt,xr){let Tn=yu(58);if(!Tn)return rt;let Ai;return oi(V.createConditionalExpression(rt,Tn,Qu(g,()=>Hy(!1)),Ai=jp(59),u1(Ai)?Hy(xr):$d(80,!1,Z._0_expected,Vi(59))),Kt)}function qP(rt){let Kt=xe(),xr=f5();return cR(rt,xr,Kt)}function dy(rt){return rt===103||rt===165}function cR(rt,Kt,xr){for(;;){ao();let Tn=bne(Je());if(!(Je()===43?Tn>=rt:Tn>rt)||Je()===103&&En())break;if(Je()===130||Je()===152){if(c.hasPrecedingLineBreak())break;{let Pi=Je();Ot(),Kt=Pi===152?p5(Kt,bf()):IS(Kt,bf())}}else Kt=gA(Kt,sh(),qP(Tn),xr)}return Kt}function YB(){return En()&&Je()===103?!1:bne(Je())>0}function p5(rt,Kt){return oi(V.createSatisfiesExpression(rt,Kt),rt.pos)}function gA(rt,Kt,xr,Tn){return oi(V.createBinaryExpression(rt,Kt,xr),Tn)}function IS(rt,Kt){return oi(V.createAsExpression(rt,Kt),rt.pos)}function g9(){let rt=xe();return oi(V.createPrefixUnaryExpression(Je(),Hn(A9)),rt)}function JU(){let rt=xe();return oi(V.createDeleteExpression(Hn(A9)),rt)}function qF(){let rt=xe();return oi(V.createTypeOfExpression(Hn(A9)),rt)}function BQ(){let rt=xe();return oi(V.createVoidExpression(Hn(A9)),rt)}function Ev(){return Je()===135?nn()?!0:Vn(NQ):!1}function Yx(){let rt=xe();return oi(V.createAwaitExpression(Hn(A9)),rt)}function f5(){if(FN()){let xr=xe(),Tn=wQ();return Je()===43?cR(bne(Je()),Tn,xr):Tn}let rt=Je(),Kt=A9();if(Je()===43){let xr=Yu(tr,Kt.pos),{end:Tn}=Kt;Kt.kind===217?Mt(xr,Tn,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(pe.assert(eAe(rt)),Mt(xr,Tn,Z.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,Vi(rt)))}return Kt}function A9(){switch(Je()){case 40:case 41:case 55:case 54:return g9();case 91:return JU();case 114:return qF();case 116:return BQ();case 30:return dt===1?f_(!0,void 0,void 0,!0):G0();case 135:if(Ev())return Yx();default:return wQ()}}function FN(){switch(Je()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(dt!==1)return!1;default:return!0}}function wQ(){if(Je()===46||Je()===47){let Kt=xe();return oi(V.createPrefixUnaryExpression(Je(),Hn(I5)),Kt)}else if(dt===1&&Je()===30&&Vn(Vb))return f_(!0);let rt=I5();if(pe.assert(D_(rt)),(Je()===46||Je()===47)&&!c.hasPrecedingLineBreak()){let Kt=Je();return Ot(),oi(V.createPostfixUnaryExpression(rt,Kt),rt.pos)}return rt}function I5(){let rt=xe(),Kt;return Je()===102?Vn(s5)?(Dt|=4194304,Kt=sh()):Vn(GN)?(Ot(),Ot(),Kt=oi(V.createMetaProperty(102,QI()),rt),Kt.name.escapedText==="defer"?(Je()===21||Je()===30)&&(Dt|=4194304):Dt|=8388608):Kt=fa():Kt=Je()===108?sa():fa(),Mb(rt,Kt)}function fa(){let rt=xe(),Kt=m5();return hS(rt,Kt,!0)}function sa(){let rt=xe(),Kt=sh();if(Je()===30){let xr=xe(),Tn=Ui(h5);Tn!==void 0&&(Mt(xr,xe(),Z.super_may_not_use_type_arguments),Yw()||(Kt=V.createExpressionWithTypeArguments(Kt,Tn)))}return Je()===21||Je()===25||Je()===23?Kt:(jp(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),oi(Ze(Kt,_i(!0,!0,!0)),rt))}function f_(rt,Kt,xr,Tn=!1){let Ai=xe(),Pi=_pe(rt),Ba;if(Pi.kind===287){let Xo=TQ(Pi),uo,Cc=Xo[Xo.length-1];if(Cc?.kind===285&&!Q3(Cc.openingElement.tagName,Cc.closingElement.tagName)&&Q3(Pi.tagName,Cc.closingElement.tagName)){let Tl=Cc.children.end,bp=oi(V.createJsxElement(Cc.openingElement,Cc.children,oi(V.createJsxClosingElement(oi(Ie(""),Tl,Tl)),Tl,Tl)),Cc.openingElement.pos,Tl);Xo=TA([...Xo.slice(0,Xo.length-1),bp],Xo.pos,Tl),uo=Cc.closingElement}else uo=hse(Pi,rt),Q3(Pi.tagName,uo.tagName)||(xr&&$T(xr)&&Q3(uo.tagName,xr.tagName)?cn(Pi.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,TY(tr,Pi.tagName)):cn(uo.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,TY(tr,Pi.tagName)));Ba=oi(V.createJsxElement(Pi,Xo,uo),Ai)}else Pi.kind===290?Ba=oi(V.createJsxFragment(Pi,TQ(Pi),nq(rt)),Ai):(pe.assert(Pi.kind===286),Ba=Pi);if(!Tn&&rt&&Je()===30){let Xo=typeof Kt>"u"?Ba.pos:Kt,uo=Ui(()=>f_(!0,Xo));if(uo){let Cc=$d(28,!1);return xbe(Cc,uo.pos,0),Mt(Yu(tr,Xo),uo.end,Z.JSX_expressions_must_have_one_parent_element),oi(V.createBinaryExpression(Ba,Cc,uo),Ai)}}return Ba}function UU(){let rt=xe(),Kt=V.createJsxText(c.getTokenValue(),zt===13);return zt=c.scanJsxToken(),oi(Kt,rt)}function $F(rt,Kt){switch(Kt){case 1:if(Pw(rt))cn(rt,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let xr=rt.tagName,Tn=Math.min(Yu(tr,xr.pos),xr.end);Mt(Tn,xr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,TY(tr,rt.tagName))}return;case 31:case 7:return;case 12:case 13:return UU();case 19:return hu(!1);case 30:return f_(!1,void 0,rt);default:return pe.assertNever(Kt)}}function TQ(rt){let Kt=[],xr=xe(),Tn=jn;for(jn|=16384;;){let Ai=$F(rt,zt=c.reScanJsxToken());if(!Ai||(Kt.push(Ai),$T(rt)&&Ai?.kind===285&&!Q3(Ai.openingElement.tagName,Ai.closingElement.tagName)&&Q3(rt.tagName,Ai.closingElement.tagName)))break}return jn=Tn,TA(Kt,xr)}function Ise(){let rt=xe();return oi(V.createJsxAttributes(uA(13,vE)),rt)}function _pe(rt){let Kt=xe();if(bi(30),Je()===32)return ci(),oi(V.createJsxOpeningFragment(),Kt);let xr=qo(),Tn=Ns&524288?void 0:Hf(),Ai=Ise(),Pi;return Je()===32?(ci(),Pi=V.createJsxOpeningElement(xr,Tn,Ai)):(bi(44),bi(32,void 0,!1)&&(rt?Ot():ci()),Pi=V.createJsxSelfClosingElement(xr,Tn,Ai)),oi(Pi,Kt)}function qo(){let rt=xe(),Kt=py();if(eR(Kt))return Kt;let xr=Kt;for(;Dl(25);)xr=oi(Ze(xr,_i(!0,!1,!1)),rt);return xr}function py(){let rt=xe();Mn();let Kt=Je()===110,xr=ve();return Dl(59)?(Mn(),oi(V.createJsxNamespacedName(xr,ve()),rt)):Kt?oi(V.createToken(110),rt):xr}function hu(rt){let Kt=xe();if(!bi(19))return;let xr,Tn;return Je()!==20&&(rt||(xr=yu(26)),Tn=Ay()),rt?bi(20):bi(20,void 0,!1)&&ci(),oi(V.createJsxExpression(xr,Tn),Kt)}function vE(){if(Je()===19)return Fo();let rt=xe();return oi(V.createJsxAttribute($P(),KU()),rt)}function KU(){if(Je()===64){if(es()===11)return Ln();if(Je()===19)return hu(!0);if(Je()===30)return f_(!0);bn(Z.or_JSX_element_expected)}}function $P(){let rt=xe();Mn();let Kt=ve();return Dl(59)?(Mn(),oi(V.createJsxNamespacedName(Kt,ve()),rt)):Kt}function Fo(){let rt=xe();bi(19),bi(26);let Kt=Ay();return bi(20),oi(V.createJsxSpreadAttribute(Kt),rt)}function hse(rt,Kt){let xr=xe();bi(31);let Tn=qo();return bi(32,void 0,!1)&&(Kt||!Q3(rt.tagName,Tn)?Ot():ci()),oi(V.createJsxClosingElement(Tn),xr)}function nq(rt){let Kt=xe();return bi(31),bi(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(rt?Ot():ci()),oi(V.createJsxJsxClosingFragment(),Kt)}function G0(){pe.assert(dt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let rt=xe();bi(30);let Kt=bf();bi(32);let xr=A9();return oi(V.createTypeAssertion(Kt,xr),rt)}function uk(){return Ot(),Id(Je())||Je()===23||Yw()}function lR(){return Je()===29&&Vn(uk)}function eW(rt){if(rt.flags&64)return!0;if(hv(rt)){let Kt=rt.expression;for(;hv(Kt)&&!(Kt.flags&64);)Kt=Kt.expression;if(Kt.flags&64){for(;hv(rt);)rt.flags|=64,rt=rt.expression;return!0}}return!1}function jU(rt,Kt,xr){let Tn=_i(!0,!0,!0),Ai=xr||eW(Kt),Pi=Ai?We(Kt,xr,Tn):Ze(Kt,Tn);if(Ai&&p(Pi.name)&&cn(Pi.name,Z.An_optional_chain_cannot_contain_private_identifiers),l_(Kt)&&Kt.typeArguments){let Ba=Kt.typeArguments.pos-1,Xo=Yu(tr,Kt.typeArguments.end)+1;Mt(Ba,Xo,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return oi(Pi,rt)}function tW(rt,Kt,xr){let Tn;if(Je()===24)Tn=$d(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let Pi=Cs(Ay);d1(Pi)&&(Pi.text=YI(Pi.text)),Tn=Pi}bi(24);let Ai=xr||eW(Kt)?$e(Kt,xr,Tn):Ue(Kt,Tn);return oi(Ai,rt)}function hS(rt,Kt,xr){for(;;){let Tn,Ai=!1;if(xr&&lR()?(Tn=jp(29),Ai=Id(Je())):Ai=Dl(25),Ai){Kt=jU(rt,Kt,Tn);continue}if((Tn||!Gi())&&Dl(23)){Kt=tW(rt,Kt,Tn);continue}if(Yw()){Kt=!Tn&&Kt.kind===234?Sv(rt,Kt.expression,Tn,Kt.typeArguments):Sv(rt,Kt,Tn,void 0);continue}if(!Tn){if(Je()===54&&!c.hasPrecedingLineBreak()){Ot(),Kt=oi(V.createNonNullExpression(Kt),rt);continue}let Pi=Ui(h5);if(Pi){Kt=oi(V.createExpressionWithTypeArguments(Kt,Pi),rt);continue}}return Kt}}function Yw(){return Je()===15||Je()===16}function Sv(rt,Kt,xr,Tn){let Ai=V.createTaggedTemplateExpression(Kt,Tn,Je()===15?(Ys(!0),Ln()):$s(!0));return(xr||Kt.flags&64)&&(Ai.flags|=64),Ai.questionDotToken=xr,oi(Ai,rt)}function Mb(rt,Kt){for(;;){Kt=hS(rt,Kt,!0);let xr,Tn=yu(29);if(Tn&&(xr=Ui(h5),Yw())){Kt=Sv(rt,Kt,Tn,xr);continue}if(xr||Je()===21){!Tn&&Kt.kind===234&&(xr=Kt.typeArguments,Kt=Kt.expression);let Ai=d9(),Pi=Tn||eW(Kt)?Tt(Kt,Tn,xr,Ai):Ye(Kt,xr,Ai);Kt=oi(Pi,rt);continue}if(Tn){let Ai=$d(80,!1,Z.Identifier_expected);Kt=oi(We(Kt,Tn,Ai),rt)}break}return Kt}function d9(){bi(21);let rt=qm(11,ZN);return bi(22),rt}function h5(){if(Ns&524288||tn()!==30)return;Ot();let rt=qm(20,bf);if(ao()===32)return Ot(),rt&&iq()?rt:void 0}function iq(){switch(Je()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||YB()||!u0()}function m5(){switch(Je()){case 15:c.getTokenFlags()&26656&&Ys(!1);case 9:case 10:case 11:return Ln();case 110:case 108:case 106:case 112:case 97:return sh();case 21:return rW();case 23:return nW();case 19:return p9();case 134:if(!Vn(vv))break;return iW();case 60:return _A();case 86:return Lh();case 100:return iW();case 105:return tZ();case 44:case 69:if(Bs()===14)return Ln();break;case 16:return $s(!1);case 81:return Go()}return _f(Z.Expression_expected)}function rW(){let rt=xe(),Kt=fr();bi(21);let xr=Cs(Ay);return bi(22),Wo(oi(Qe(xr),rt),Kt)}function sq(){let rt=xe();bi(26);let Kt=Hy(!0);return oi(V.createSpreadElement(Kt),rt)}function eZ(){return Je()===26?sq():Je()===28?oi(V.createOmittedExpression(),xe()):Hy(!0)}function ZN(){return Qu(g,eZ)}function nW(){let rt=xe(),Kt=c.getTokenStart(),xr=bi(23),Tn=c.hasPrecedingLineBreak(),Ai=qm(15,eZ);return pp(23,24,xr,Kt),oi(Ne(Ai,Tn),rt)}function C5(){let rt=xe(),Kt=fr();if(yu(26)){let Tl=Hy(!0);return Wo(oi(V.createSpreadAssignment(Tl),rt),Kt)}let xr=Oc(!0);if(Ss(139))return v5(rt,Kt,xr,178,0);if(Ss(153))return v5(rt,Kt,xr,179,0);let Tn=yu(42),Ai=fs(),Pi=Ls(),Ba=yu(58),Xo=yu(54);if(Tn||Je()===21||Je()===30)return S5(rt,Kt,xr,Tn,Pi,Ba,Xo);let uo;if(Ai&&Je()!==59){let Tl=yu(64),bp=Tl?Cs(()=>Hy(!0)):void 0;uo=V.createShorthandPropertyAssignment(Pi,bp),uo.equalsToken=Tl}else{bi(59);let Tl=Cs(()=>Hy(!0));uo=V.createPropertyAssignment(Pi,Tl)}return uo.modifiers=xr,uo.questionToken=Ba,uo.exclamationToken=Xo,Wo(oi(uo,rt),Kt)}function p9(){let rt=xe(),Kt=c.getTokenStart(),xr=bi(19),Tn=c.hasPrecedingLineBreak(),Ai=qm(12,C5,!0);return pp(19,20,xr,Kt),oi(Te(Ai,Tn),rt)}function iW(){let rt=Gi();Oa(!1);let Kt=xe(),xr=fr(),Tn=Oc(!1);bi(100);let Ai=yu(42),Pi=Ai?1:0,Ba=jt(Tn,G)?2:0,Xo=Pi&&Ba?Fr(Qw):Pi?pt(Qw):Ba?it(Qw):Qw(),uo=br(),Cc=$a(Pi|Ba),Tl=co(59,!1),bp=sW(Pi|Ba);Oa(rt);let ep=V.createFunctionExpression(Tn,Ai,Xo,uo,Cc,Tl,bp);return Wo(oi(ep,Kt),xr)}function Qw(){return gs()?WC():void 0}function tZ(){let rt=xe();if(bi(105),Dl(25)){let Pi=QI();return oi(V.createMetaProperty(105,Pi),rt)}let Kt=xe(),xr=hS(Kt,m5(),!1),Tn;xr.kind===234&&(Tn=xr.typeArguments,xr=xr.expression),Je()===29&&bn(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,TY(tr,xr));let Ai=Je()===21?d9():void 0;return oi(ot(xr,Tn,Ai),rt)}function Qx(rt,Kt){let xr=xe(),Tn=fr(),Ai=c.getTokenStart(),Pi=bi(19,Kt);if(Pi||rt){let Ba=c.hasPrecedingLineBreak(),Xo=uA(1,BE);pp(19,20,Pi,Ai);let uo=Wo(oi(mt(Xo,Ba),xr),Tn);return Je()===64&&(bn(Z.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Ot()),uo}else{let Ba=pS();return Wo(oi(mt(Ba,void 0),xr),Tn)}}function sW(rt,Kt){let xr=hr();pa(!!(rt&1));let Tn=nn();tl(!!(rt&2));let Ai=An;An=!1;let Pi=Gi();Pi&&Oa(!1);let Ba=Qx(!!(rt&16),Kt);return Pi&&Oa(!0),An=Ai,pa(xr),tl(Tn),Ba}function HC(){let rt=xe(),Kt=fr();return bi(27),Wo(oi(V.createEmptyStatement(),rt),Kt)}function RQ(){let rt=xe(),Kt=fr();bi(101);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=BE(),Ba=Dl(93)?BE():void 0;return Wo(oi(Rt(Ai,Pi,Ba),rt),Kt)}function Xx(){let rt=xe(),Kt=fr();bi(92);let xr=BE();bi(117);let Tn=c.getTokenStart(),Ai=bi(21),Pi=Cs(Ay);return pp(21,22,Ai,Tn),Dl(27),Wo(oi(V.createDoStatement(xr,Pi),rt),Kt)}function _5(){let rt=xe(),Kt=fr();bi(117);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=BE();return Wo(oi(Lt(Ai,Pi),rt),Kt)}function zU(){let rt=xe(),Kt=fr();bi(99);let xr=yu(135);bi(21);let Tn;Je()!==27&&(Je()===115||Je()===121||Je()===87||Je()===160&&Vn(TI)||Je()===135&&Vn(gq)?Tn=iK(!0):Tn=Tu(Ay));let Ai;if(xr?bi(165):Dl(165)){let Pi=Cs(()=>Hy(!0));bi(22),Ai=Pt(xr,Tn,Pi,BE())}else if(Dl(103)){let Pi=Cs(Ay);bi(22),Ai=V.createForInStatement(Tn,Pi,BE())}else{bi(27);let Pi=Je()!==27&&Je()!==22?Cs(Ay):void 0;bi(27);let Ba=Je()!==22?Cs(Ay):void 0;bi(22),Ai=Ke(Tn,Pi,Ba,BE())}return Wo(oi(Ai,rt),Kt)}function Jx(rt){let Kt=xe(),xr=fr();bi(rt===253?83:88);let Tn=gu()?void 0:_f();KA();let Ai=rt===253?V.createBreakStatement(Tn):V.createContinueStatement(Tn);return Wo(oi(Ai,Kt),xr)}function mse(){let rt=xe(),Kt=fr();bi(107);let xr=gu()?void 0:Cs(Ay);return KA(),Wo(oi(V.createReturnStatement(xr),rt),Kt)}function oq(){let rt=xe(),Kt=fr();bi(118);let xr=c.getTokenStart(),Tn=bi(21),Ai=Cs(Ay);pp(21,22,Tn,xr);let Pi=Tg(67108864,BE);return Wo(oi(V.createWithStatement(Ai,Pi),rt),Kt)}function aq(){let rt=xe(),Kt=fr();bi(84);let xr=Cs(Ay);bi(59);let Tn=uA(3,BE);return Wo(oi(V.createCaseClause(xr,Tn),rt),Kt)}function ype(){let rt=xe();bi(90),bi(59);let Kt=uA(3,BE);return oi(V.createDefaultClause(Kt),rt)}function cq(){return Je()===84?aq():ype()}function y5(){let rt=xe();bi(19);let Kt=uA(2,cq);return bi(20),oi(V.createCaseBlock(Kt),rt)}function rZ(){let rt=xe(),Kt=fr();bi(109),bi(21);let xr=Cs(Ay);bi(22);let Tn=y5();return Wo(oi(V.createSwitchStatement(xr,Tn),rt),Kt)}function Cse(){let rt=xe(),Kt=fr();bi(111);let xr=c.hasPrecedingLineBreak()?void 0:Cs(Ay);return xr===void 0&&(mn++,xr=oi(Ie(""),xe())),bg()||gg(xr),Wo(oi(V.createThrowStatement(xr),rt),Kt)}function b5(){let rt=xe(),Kt=fr();bi(113);let xr=Qx(!1),Tn=Je()===85?qU():void 0,Ai;return(!Tn||Je()===98)&&(bi(98,Z.catch_or_finally_expected),Ai=Qx(!1)),Wo(oi(V.createTryStatement(xr,Tn,Ai),rt),Kt)}function qU(){let rt=xe();bi(85);let Kt;Dl(21)?(Kt=LN(),bi(22)):Kt=void 0;let xr=Qx(!1);return oi(V.createCatchClause(Kt,xr),rt)}function Zh(){let rt=xe(),Kt=fr();return bi(89),KA(),Wo(oi(V.createDebuggerStatement(),rt),Kt)}function YC(){let rt=xe(),Kt=fr(),xr,Tn=Je()===21,Ai=Cs(Ay);return Ir(Ai)&&Dl(59)?xr=V.createLabeledStatement(Ai,BE()):(bg()||gg(Ai),xr=_t(Ai),Tn&&(Kt=!1)),Wo(oi(xr,rt),Kt)}function lq(){return Ot(),Id(Je())&&!c.hasPrecedingLineBreak()}function Hb(){return Ot(),Je()===86&&!c.hasPrecedingLineBreak()}function vv(){return Ot(),Je()===100&&!c.hasPrecedingLineBreak()}function NQ(){return Ot(),(Id(Je())||Je()===9||Je()===10||Je()===11)&&!c.hasPrecedingLineBreak()}function uR(){for(;;)switch(Je()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return DQ();case 135:return F0();case 120:case 156:case 166:return Mw();case 144:case 145:return rK();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let rt=Je();if(Ot(),c.hasPrecedingLineBreak())return!1;if(rt===138&&Je()===156)return!0;continue;case 162:return Ot(),Je()===19||Je()===80||Je()===95;case 102:return Ot(),Je()===166||Je()===11||Je()===42||Je()===19||Id(Je());case 95:let Kt=Ot();if(Kt===156&&(Kt=Vn(Ot)),Kt===64||Kt===42||Kt===19||Kt===90||Kt===130||Kt===60)return!0;continue;case 126:Ot();continue;default:return!1}}function oW(){return Vn(uR)}function f9(){switch(Je()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return oW()||Vn(ok);case 87:case 95:return oW();case 134:case 138:case 120:case 144:case 145:case 156:case 162:case 166:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return oW()||!Vn(lq);default:return u0()}}function uq(){return Ot(),gs()||Je()===19||Je()===23}function bpe(){return Vn(uq)}function TI(){return $U(!0)}function _se(){return Ot(),Je()===64||Je()===27||Je()===59}function $U(rt){return Ot(),rt&&Je()===165?Vn(_se):(gs()||Je()===19)&&!c.hasPrecedingLineBreak()}function DQ(){return Vn($U)}function gq(rt){return Ot()===160?$U(rt):!1}function F0(){return Vn(gq)}function BE(){switch(Je()){case 27:return HC();case 19:return Qx(!1);case 115:return jA(xe(),fr(),void 0);case 121:if(bpe())return jA(xe(),fr(),void 0);break;case 135:if(F0())return jA(xe(),fr(),void 0);break;case 160:if(DQ())return jA(xe(),fr(),void 0);break;case 100:return Uo(xe(),fr(),void 0);case 86:return g0(xe(),fr(),void 0);case 101:return RQ();case 92:return Xx();case 117:return _5();case 99:return zU();case 88:return Jx(252);case 83:return Jx(253);case 107:return mse();case 118:return oq();case 109:return rZ();case 111:return Cse();case 113:case 85:case 98:return b5();case 89:return Zh();case 60:return E5();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(oW())return E5();break}return YC()}function eK(rt){return rt.kind===138}function E5(){let rt=xe(),Kt=fr(),xr=Oc(!0);if(jt(xr,eK)){let Ai=wE(rt);if(Ai)return Ai;for(let Pi of xr)Pi.flags|=33554432;return Tg(33554432,()=>tK(rt,Kt,xr))}else return tK(rt,Kt,xr)}function wE(rt){return Tg(33554432,()=>{let Kt=af(jn,rt);if(Kt)return dI(Kt)})}function tK(rt,Kt,xr){switch(Je()){case 115:case 121:case 87:case 160:case 135:return jA(rt,Kt,xr);case 100:return Uo(rt,Kt,xr);case 86:return g0(rt,Kt,xr);case 120:return Jw(rt,Kt,xr);case 156:return m9(rt,Kt,xr);case 94:return lWe(rt,Kt,xr);case 162:case 144:case 145:return c2e(rt,Kt,xr);case 102:return uK(rt,Kt,xr);case 95:switch(Ot(),Je()){case 90:case 64:return T5(rt,Kt,xr);case 130:return GQ(rt,Kt,xr);default:return Tpe(rt,Kt,xr)}default:if(xr){let Tn=$d(283,!0,Z.Declaration_expected);return iz(Tn,rt),Tn.modifiers=xr,Tn}return}}function Ux(){return Ot()===11}function Aq(){return Ot(),Je()===161||Je()===64}function rK(){return Ot(),!c.hasPrecedingLineBreak()&&(fs()||Je()===11)}function Xw(rt,Kt){if(Je()!==19){if(rt&4){ru();return}if(gu()){KA();return}}return sW(rt,Kt)}function dq(){let rt=xe();if(Je()===28)return oi(V.createOmittedExpression(),rt);let Kt=yu(26),xr=I9(),Tn=lk();return oi(V.createBindingElement(Kt,void 0,xr,Tn),rt)}function yse(){let rt=xe(),Kt=yu(26),xr=gs(),Tn=Ls(),Ai;xr&&Je()!==59?(Ai=Tn,Tn=void 0):(bi(59),Ai=I9());let Pi=lk();return oi(V.createBindingElement(Kt,Tn,Ai,Pi),rt)}function pq(){let rt=xe();bi(19);let Kt=Cs(()=>qm(9,yse));return bi(20),oi(V.createObjectBindingPattern(Kt),rt)}function nK(){let rt=xe();bi(23);let Kt=Cs(()=>qm(10,dq));return bi(24),oi(V.createArrayBindingPattern(Kt),rt)}function fq(){return Je()===19||Je()===23||Je()===81||gs()}function I9(rt){return Je()===23?nK():Je()===19?pq():WC(rt)}function B1(){return LN(!0)}function LN(rt){let Kt=xe(),xr=fr(),Tn=I9(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Ai;rt&&Tn.kind===80&&Je()===54&&!c.hasPrecedingLineBreak()&&(Ai=sh());let Pi=l0(),Ba=dy(Je())?void 0:lk(),Xo=_r(Tn,Ai,Pi,Ba);return Wo(oi(Xo,Kt),xr)}function iK(rt){let Kt=xe(),xr=0;switch(Je()){case 115:break;case 121:xr|=1;break;case 87:xr|=2;break;case 160:xr|=4;break;case 135:pe.assert(F0()),xr|=6,Ot();break;default:pe.fail()}Ot();let Tn;if(Je()===165&&Vn(sK))Tn=pS();else{let Ai=En();lo(rt),Tn=qm(8,rt?LN:B1),lo(Ai)}return oi(Gt(Tn,xr),Kt)}function sK(){return Z_()&&Ot()===22}function jA(rt,Kt,xr){let Tn=iK(!1);KA();let Ai=ht(xr,Tn);return Wo(oi(Ai,rt),Kt)}function Uo(rt,Kt,xr){let Tn=nn(),Ai=Dw(xr);bi(100);let Pi=yu(42),Ba=Ai&2048?Qw():WC(),Xo=Pi?1:0,uo=Ai&1024?2:0,Cc=br();Ai&32&&tl(!0);let Tl=$a(Xo|uo),bp=co(59,!1),ep=Xw(Xo|uo,Z.or_expected);tl(Tn);let zA=V.createFunctionDeclaration(xr,Pi,Ba,Cc,Tl,bp,ep);return Wo(oi(zA,rt),Kt)}function mS(){if(Je()===137)return bi(137);if(Je()===11&&Vn(Ot)===21)return Ui(()=>{let rt=Ln();return rt.text==="constructor"?rt:void 0})}function $m(rt,Kt,xr){return Ui(()=>{if(mS()){let Tn=br(),Ai=$a(0),Pi=co(59,!1),Ba=Xw(0,Z.or_expected),Xo=V.createConstructorDeclaration(xr,Ai,Ba);return Xo.typeParameters=Tn,Xo.type=Pi,Wo(oi(Xo,rt),Kt)}})}function S5(rt,Kt,xr,Tn,Ai,Pi,Ba,Xo){let uo=Tn?1:0,Cc=jt(xr,G)?2:0,Tl=br(),bp=$a(uo|Cc),ep=co(59,!1),zA=Xw(uo|Cc,Xo),Bv=V.createMethodDeclaration(xr,Tn,Ai,Pi,Tl,bp,ep,zA);return Bv.exclamationToken=Ba,Wo(oi(Bv,rt),Kt)}function oK(rt,Kt,xr,Tn,Ai){let Pi=!Ai&&!c.hasPrecedingLineBreak()?yu(54):void 0,Ba=l0(),Xo=Qu(90112,lk);wI(Tn,Ba,Xo);let uo=V.createPropertyDeclaration(xr,Tn,Ai||Pi,Ba,Xo);return Wo(oi(uo,rt),Kt)}function kQ(rt,Kt,xr){let Tn=yu(42),Ai=Ls(),Pi=yu(58);return Tn||Je()===21||Je()===30?S5(rt,Kt,xr,Tn,Ai,Pi,void 0,Z.or_expected):oK(rt,Kt,xr,Ai,Pi)}function v5(rt,Kt,xr,Tn,Ai){let Pi=Ls(),Ba=br(),Xo=$a(0),uo=co(59,!1),Cc=Xw(Ai),Tl=Tn===178?V.createGetAccessorDeclaration(xr,Pi,Xo,uo,Cc):V.createSetAccessorDeclaration(xr,Pi,Xo,Cc);return Tl.typeParameters=Ba,Dg(Tl)&&(Tl.type=uo),Wo(oi(Tl,rt),Kt)}function aK(){let rt;if(Je()===60)return!0;for(;VD(Je());){if(rt=Je(),Sre(rt))return!0;Ot()}if(Je()===42||(mr()&&(rt=Je(),Ot()),Je()===23))return!0;if(rt!==void 0){if(!v0(rt)||rt===153||rt===139)return!0;switch(Je()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return gu()}}return!1}function Ae(rt,Kt,xr){jp(126);let Tn=Et(),Ai=Wo(oi(V.createClassStaticBlockDeclaration(Tn),rt),Kt);return Ai.modifiers=xr,Ai}function Et(){let rt=hr(),Kt=nn();pa(!1),tl(!0);let xr=Qx(!1);return pa(rt),tl(Kt),xr}function fn(){if(nn()&&Je()===135){let rt=xe(),Kt=_f(Z.Expression_expected);Ot();let xr=hS(rt,Kt,!0);return Mb(rt,xr)}return I5()}function qi(){let rt=xe();if(!Dl(60))return;let Kt=on(fn);return oi(V.createDecorator(Kt),rt)}function ic(rt,Kt,xr){let Tn=xe(),Ai=Je();if(Je()===87&&Kt){if(!Ui(Uc))return}else{if(xr&&Je()===126&&Vn(lK))return;if(rt&&Je()===126)return;if(!yf())return}return oi(Ee(Ai),Tn)}function Oc(rt,Kt,xr){let Tn=xe(),Ai,Pi,Ba,Xo=!1,uo=!1,Cc=!1;if(rt&&Je()===60)for(;Pi=qi();)Ai=Ft(Ai,Pi);for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba),uo=!0;if(uo&&rt&&Je()===60)for(;Pi=qi();)Ai=Ft(Ai,Pi),Cc=!0;if(Cc)for(;Ba=ic(Xo,Kt,xr);)Ba.kind===126&&(Xo=!0),Ai=Ft(Ai,Ba);return Ai&&TA(Ai,Tn)}function zl(){let rt;if(Je()===134){let Kt=xe();Ot();let xr=oi(Ee(134),Kt);rt=TA([xr],Kt)}return rt}function Vc(){let rt=xe(),Kt=fr();if(Je()===27)return Ot(),Wo(oi(V.createSemicolonClassElement(),rt),Kt);let xr=Oc(!0,!0,!0);if(Je()===126&&Vn(lK))return Ae(rt,Kt,xr);if(Ss(139))return v5(rt,Kt,xr,178,0);if(Ss(153))return v5(rt,Kt,xr,179,0);if(Je()===137||Je()===11){let Tn=$m(rt,Kt,xr);if(Tn)return Tn}if(kf())return OB(rt,Kt,xr);if(Id(Je())||Je()===11||Je()===9||Je()===10||Je()===42||Je()===23)if(jt(xr,eK)){for(let Ai of xr)Ai.flags|=33554432;return Tg(33554432,()=>kQ(rt,Kt,xr))}else return kQ(rt,Kt,xr);if(xr){let Tn=$d(80,!0,Z.Declaration_expected);return oK(rt,Kt,xr,Tn,void 0)}return pe.fail("Should not have attempted to parse class member declaration.")}function _A(){let rt=xe(),Kt=fr(),xr=Oc(!0);if(Je()===86)return Yy(rt,Kt,xr,232);let Tn=$d(283,!0,Z.Expression_expected);return iz(Tn,rt),Tn.modifiers=xr,Tn}function Lh(){return Yy(xe(),fr(),void 0,232)}function g0(rt,Kt,xr){return Yy(rt,Kt,xr,264)}function Yy(rt,Kt,xr,Tn){let Ai=nn();bi(86);let Pi=B5(),Ba=br();jt(xr,y)&&tl(!0);let Xo=aW(),uo;bi(19)?(uo=h9(),bi(20)):uo=pS(),tl(Ai);let Cc=Tn===264?V.createClassDeclaration(xr,Pi,Ba,Xo,uo):V.createClassExpression(xr,Pi,Ba,Xo,uo);return Wo(oi(Cc,rt),Kt)}function B5(){return gs()&&!Qy()?Fh(gs()):void 0}function Qy(){return Je()===119&&Vn(m2)}function aW(){if(cK())return uA(22,Iq)}function Iq(){let rt=xe(),Kt=Je();pe.assert(Kt===96||Kt===119),Ot();let xr=qm(7,QB);return oi(V.createHeritageClause(Kt,xr),rt)}function QB(){let rt=xe(),Kt=I5();if(Kt.kind===234)return Kt;let xr=Hf();return oi(V.createExpressionWithTypeArguments(Kt,xr),rt)}function Hf(){return Je()===30?at(20,bf,30,32):void 0}function cK(){return Je()===96||Je()===119}function h9(){return uA(5,Vc)}function Jw(rt,Kt,xr){bi(120);let Tn=_f(),Ai=br(),Pi=aW(),Ba=ak(),Xo=V.createInterfaceDeclaration(xr,Tn,Ai,Pi,Ba);return Wo(oi(Xo,rt),Kt)}function m9(rt,Kt,xr){bi(156),c.hasPrecedingLineBreak()&&bn(Z.Line_break_not_permitted_here);let Tn=_f(),Ai=br();bi(64);let Pi=Je()===141&&Ui($z)||bf();KA();let Ba=V.createTypeAliasDeclaration(xr,Tn,Ai,Pi);return Wo(oi(Ba,rt),Kt)}function xQ(){let rt=xe(),Kt=fr(),xr=Ls(),Tn=Cs(lk);return Wo(oi(V.createEnumMember(xr,Tn),rt),Kt)}function lWe(rt,Kt,xr){bi(94);let Tn=_f(),Ai;bi(19)?(Ai=Kr(()=>qm(6,xQ)),bi(20)):Ai=pS();let Pi=V.createEnumDeclaration(xr,Tn,Ai);return Wo(oi(Pi,rt),Kt)}function Epe(){let rt=xe(),Kt;return bi(19)?(Kt=uA(1,BE),bi(20)):Kt=pS(),oi(V.createModuleBlock(Kt),rt)}function hq(rt,Kt,xr,Tn){let Ai=Tn&32,Pi=Tn&8?QI():_f(),Ba=Dl(25)?hq(xe(),!1,void 0,8|Ai):Epe(),Xo=V.createModuleDeclaration(xr,Pi,Ba,Tn);return Wo(oi(Xo,rt),Kt)}function Spe(rt,Kt,xr){let Tn=0,Ai;Je()===162?(Ai=_f(),Tn|=2048):(Ai=Ln(),Ai.text=YI(Ai.text));let Pi;Je()===19?Pi=Epe():KA();let Ba=V.createModuleDeclaration(xr,Ai,Pi,Tn);return Wo(oi(Ba,rt),Kt)}function c2e(rt,Kt,xr){let Tn=0;if(Je()===162)return Spe(rt,Kt,xr);if(Dl(145))Tn|=32;else if(bi(144),Je()===11)return Spe(rt,Kt,xr);return hq(rt,Kt,xr,Tn)}function cW(){return Je()===149&&Vn(mq)}function mq(){return Ot()===21}function lK(){return Ot()===19}function uWe(){return Ot()===44}function GQ(rt,Kt,xr){bi(130),bi(145);let Tn=_f();KA();let Ai=V.createNamespaceExportDeclaration(Tn);return Ai.modifiers=xr,Wo(oi(Ai,rt),Kt)}function uK(rt,Kt,xr){bi(102);let Tn=c.getTokenFullStart(),Ai;fs()&&(Ai=_f());let Pi;if(Ai?.escapedText==="type"&&(Je()!==161||fs()&&Vn(Aq))&&(fs()||no())?(Pi=156,Ai=fs()?_f():void 0):Ai?.escapedText==="defer"&&(Je()===161?!Vn(Ux):Je()!==28&&Je()!==64)&&(Pi=166,Ai=fs()?_f():void 0),Ai&&!Bpe()&&Pi!==166)return bse(rt,Kt,xr,Ai,Pi===156);let Ba=vpe(Ai,Tn,Pi,void 0),Xo=gK(),uo=Cq();KA();let Cc=V.createImportDeclaration(xr,Ba,Xo,uo);return Wo(oi(Cc,rt),Kt)}function vpe(rt,Kt,xr,Tn=!1){let Ai;return(rt||Je()===42||Je()===19)&&(Ai=Ese(rt,Kt,xr,Tn),bi(161)),Ai}function Cq(){let rt=Je();if((rt===118||rt===132)&&!c.hasPrecedingLineBreak())return lW(rt)}function kl(){let rt=xe(),Kt=Id(Je())?QI():jl(11);bi(59);let xr=Hy(!0);return oi(V.createImportAttribute(Kt,xr),rt)}function lW(rt,Kt){let xr=xe();Kt||bi(rt);let Tn=c.getTokenStart();if(bi(19)){let Ai=c.hasPrecedingLineBreak(),Pi=qm(24,kl,!0);if(!bi(20)){let Ba=li(pr);Ba&&Ba.code===Z._0_expected.code&&lg(Ba,QY(nt,tr,Tn,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return oi(V.createImportAttributes(Pi,Ai,rt),xr)}else{let Ai=TA([],xe(),void 0,!1);return oi(V.createImportAttributes(Ai,!1,rt),xr)}}function no(){return Je()===42||Je()===19}function Bpe(){return Je()===28||Je()===161}function bse(rt,Kt,xr,Tn,Ai){bi(64);let Pi=FQ();KA();let Ba=V.createImportEqualsDeclaration(xr,Ai,Tn,Pi);return Wo(oi(Ba,rt),Kt)}function Ese(rt,Kt,xr,Tn){let Ai;return(!rt||Dl(28))&&(Tn&&c.setSkipJsDocLeadingAsterisks(!0),Je()===42?Ai=gWe():Ai=u2e(276),Tn&&c.setSkipJsDocLeadingAsterisks(!1)),oi(V.createImportClause(xr,rt,Ai),Kt)}function FQ(){return cW()?l2e():en(!1)}function l2e(){let rt=xe();bi(149),bi(21);let Kt=gK();return bi(22),oi(V.createExternalModuleReference(Kt),rt)}function gK(){if(Je()===11){let rt=Ln();return rt.text=YI(rt.text),rt}else return Ay()}function gWe(){let rt=xe();bi(42),bi(130);let Kt=_f();return oi(V.createNamespaceImport(Kt),rt)}function Sse(){return Id(Je())||Je()===11}function gk(rt){return Je()===11?Ln():rt()}function u2e(rt){let Kt=xe(),xr=rt===276?V.createNamedImports(at(23,AWe,19,20)):V.createNamedExports(at(23,w5,19,20));return oi(xr,Kt)}function w5(){let rt=fr();return Wo(wpe(282),rt)}function AWe(){return wpe(277)}function wpe(rt){let Kt=xe(),xr=v0(Je())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),Pi=!1,Ba,Xo=!0,uo=gk(QI);if(uo.kind===80&&uo.escapedText==="type")if(Je()===130){let bp=QI();if(Je()===130){let ep=QI();Sse()?(Pi=!0,Ba=bp,uo=gk(Tl),Xo=!1):(Ba=uo,uo=ep,Xo=!1)}else Sse()?(Ba=uo,Xo=!1,uo=gk(Tl)):(Pi=!0,uo=bp)}else Sse()&&(Pi=!0,uo=gk(Tl));Xo&&Je()===130&&(Ba=uo,bi(130),uo=gk(Tl)),rt===277&&(uo.kind!==80?(Mt(Yu(tr,uo.pos),uo.end,Z.Identifier_expected),uo=TB($d(80,!1),uo.pos,uo.pos)):xr&&Mt(Tn,Ai,Z.Identifier_expected));let Cc=rt===277?V.createImportSpecifier(Pi,Ba,uo):V.createExportSpecifier(Pi,Ba,uo);return oi(Cc,Kt);function Tl(){return xr=v0(Je())&&!fs(),Tn=c.getTokenStart(),Ai=c.getTokenEnd(),QI()}}function g2e(rt){return oi(V.createNamespaceExport(gk(QI)),rt)}function Tpe(rt,Kt,xr){let Tn=nn();tl(!0);let Ai,Pi,Ba,Xo=Dl(156),uo=xe();Dl(42)?(Dl(130)&&(Ai=g2e(uo)),bi(161),Pi=gK()):(Ai=u2e(280),(Je()===161||Je()===11&&!c.hasPrecedingLineBreak())&&(bi(161),Pi=gK()));let Cc=Je();Pi&&(Cc===118||Cc===132)&&!c.hasPrecedingLineBreak()&&(Ba=lW(Cc)),KA(),tl(Tn);let Tl=V.createExportDeclaration(xr,Xo,Ai,Pi,Ba);return Wo(oi(Tl,rt),Kt)}function T5(rt,Kt,xr){let Tn=nn();tl(!0);let Ai;Dl(64)?Ai=!0:bi(90);let Pi=Hy(!0);KA(),tl(Tn);let Ba=V.createExportAssignment(xr,Ai,Pi);return Wo(oi(Ba,rt),Kt)}let Ak;(rt=>{rt[rt.SourceElements=0]="SourceElements",rt[rt.BlockStatements=1]="BlockStatements",rt[rt.SwitchClauses=2]="SwitchClauses",rt[rt.SwitchClauseStatements=3]="SwitchClauseStatements",rt[rt.TypeMembers=4]="TypeMembers",rt[rt.ClassMembers=5]="ClassMembers",rt[rt.EnumMembers=6]="EnumMembers",rt[rt.HeritageClauseElement=7]="HeritageClauseElement",rt[rt.VariableDeclarations=8]="VariableDeclarations",rt[rt.ObjectBindingElements=9]="ObjectBindingElements",rt[rt.ArrayBindingElements=10]="ArrayBindingElements",rt[rt.ArgumentExpressions=11]="ArgumentExpressions",rt[rt.ObjectLiteralMembers=12]="ObjectLiteralMembers",rt[rt.JsxAttributes=13]="JsxAttributes",rt[rt.JsxChildren=14]="JsxChildren",rt[rt.ArrayLiteralMembers=15]="ArrayLiteralMembers",rt[rt.Parameters=16]="Parameters",rt[rt.JSDocParameters=17]="JSDocParameters",rt[rt.RestProperties=18]="RestProperties",rt[rt.TypeParameters=19]="TypeParameters",rt[rt.TypeArguments=20]="TypeArguments",rt[rt.TupleElementTypes=21]="TupleElementTypes",rt[rt.HeritageClauses=22]="HeritageClauses",rt[rt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",rt[rt.ImportAttributes=24]="ImportAttributes",rt[rt.JSDocComment=25]="JSDocComment",rt[rt.Count=26]="Count"})(Ak||(Ak={}));let vse;(rt=>{rt[rt.False=0]="False",rt[rt.True=1]="True",rt[rt.Unknown=2]="Unknown"})(vse||(vse={}));let VN;(rt=>{function Kt(Cc,Tl,bp){Zn("file.js",Cc,99,void 0,1,0),c.setText(Cc,Tl,bp),zt=c.scan();let ep=xr(),zA=hn("file.js",99,1,!1,[],Ee(1),0,Dc),Bv=XL(pr,zA);return st&&(zA.jsDocDiagnostics=XL(st,zA)),ya(),ep?{jsDocTypeExpression:ep,diagnostics:Bv}:void 0}rt.parseJSDocTypeExpressionForTests=Kt;function xr(Cc){let Tl=xe(),bp=(Cc?Dl:bi)(19),ep=Tg(16777216,aR);(!Cc||bp)&&AI(20);let zA=V.createJSDocTypeExpression(ep);return yr(zA),oi(zA,Tl)}rt.parseJSDocTypeExpression=xr;function Tn(){let Cc=xe(),Tl=Dl(19),bp=xe(),ep=en(!1);for(;Je()===81;)wn(),$r(),ep=oi(V.createJSDocMemberName(ep,_f()),bp);Tl&&AI(20);let zA=V.createJSDocNameReference(ep);return yr(zA),oi(zA,Cc)}rt.parseJSDocNameReference=Tn;function Ai(Cc,Tl,bp){Zn("",Cc,99,void 0,1,0);let ep=Tg(16777216,()=>uo(Tl,bp)),Bv=XL(pr,{languageVariant:0,text:Cc});return ya(),ep?{jsDoc:ep,diagnostics:Bv}:void 0}rt.parseIsolatedJSDocComment=Ai;function Pi(Cc,Tl,bp){let ep=zt,zA=pr.length,Bv=si,CS=Tg(16777216,()=>uo(Tl,bp));return XA(CS,Cc),Ns&524288&&(st||(st=[]),Or(st,pr,zA)),zt=ep,pr.length=zA,si=Bv,CS}rt.parseJSDocComment=Pi;let Ba;(Cc=>{Cc[Cc.BeginningOfLine=0]="BeginningOfLine",Cc[Cc.SawAsterisk=1]="SawAsterisk",Cc[Cc.SavingComments=2]="SavingComments",Cc[Cc.SavingBackticks=3]="SavingBackticks"})(Ba||(Ba={}));let Xo;(Cc=>{Cc[Cc.Property=1]="Property",Cc[Cc.Parameter=2]="Parameter",Cc[Cc.CallbackParameter=4]="CallbackParameter"})(Xo||(Xo={}));function uo(Cc=0,Tl){let bp=tr,ep=Tl===void 0?bp.length:Cc+Tl;if(Tl=ep-Cc,pe.assert(Cc>=0),pe.assert(Cc<=ep),pe.assert(ep<=bp.length),!F$e(bp,Cc))return;let zA,Bv,CS,C9,_9,Kx=[],uW=[],nd=jn;jn|=1<<25;let Fm=c.scanRange(Cc+3,Tl-5,y9);return jn=nd,Fm;function y9(){let vs=1,da,Sa=Cc-(bp.lastIndexOf(` -`,Cc)+1)+4;function Fc(Ep){da||(da=Sa),Kx.push(Ep),Sa+=Ep.length}for($r();AR(5););AR(4)&&(vs=0,Sa=0);e:for(;;){switch(Je()){case 60:_q(Kx),_9||(_9=xe()),cf(q(Sa)),vs=0,da=void 0;break;case 4:Kx.push(c.getTokenText()),vs=0,Sa=0;break;case 42:let Ep=c.getTokenText();vs===1?(vs=2,Fc(Ep)):(pe.assert(vs===0),vs=1,Sa+=Ep.length);break;case 5:pe.assert(vs!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let I_=c.getTokenText();da!==void 0&&Sa+I_.length>da&&Kx.push(I_.slice(da-Sa)),Sa+=I_.length;break;case 1:break e;case 82:vs=2,Fc(c.getTokenValue());break;case 19:vs=2;let dR=c.getTokenFullStart(),XB=c.getTokenEnd()-1,Uw=yt(XB);if(Uw){C9||Z0(Kx),uW.push(oi(V.createJSDocText(Kx.join("")),C9??Cc,dR)),uW.push(Uw),Kx=[],C9=c.getTokenEnd();break}default:vs=2,Fc(c.getTokenText());break}vs===2?ri(!1):$r()}let Qc=Kx.join("").trimEnd();uW.length&&Qc.length&&uW.push(oi(V.createJSDocText(Qc),C9??Cc,_9)),uW.length&&zA&&pe.assertIsDefined(_9,"having parsed tags implies that the end of the comment span should be set");let Ug=zA&&TA(zA,Bv,CS);return oi(V.createJSDocComment(uW.length?TA(uW,Cc,_9):Qc.length?Qc:void 0,Ug),Cc,ep)}function Z0(vs){for(;vs.length&&(vs[0]===` -`||vs[0]==="\r");)vs.shift()}function _q(vs){for(;vs.length;){let da=vs[vs.length-1].trimEnd();if(da==="")vs.pop();else if(da.lengthI_&&(Fc.push(zx.slice(I_-vs)),Ep=2),vs+=zx.length;break;case 19:Ep=2;let nZ=c.getTokenFullStart(),Bse=c.getTokenEnd()-1,xpe=yt(Bse);xpe?(Qc.push(oi(V.createJSDocText(Fc.join("")),Ug??Sa,nZ)),Qc.push(xpe),Fc=[],Ug=c.getTokenEnd()):dR(c.getTokenText());break;case 62:Ep===3?Ep=2:Ep=3,dR(c.getTokenText());break;case 82:Ep!==3&&(Ep=2),dR(c.getTokenValue());break;case 42:if(Ep===0){Ep=1,vs+=1;break}default:Ep!==3&&(Ep=2),dR(c.getTokenText());break}Ep===2||Ep===3?XB=ri(Ep===3):XB=$r()}Z0(Fc);let Uw=Fc.join("").trimEnd();if(Qc.length)return Uw.length&&Qc.push(oi(V.createJSDocText(Uw),Ug??Sa)),TA(Qc,Sa,c.getTokenEnd());if(Uw.length)return Uw}function yt(vs){let da=Ui(Ii);if(!da)return;$r(),dk();let Sa=Rr(),Fc=[];for(;Je()!==20&&Je()!==4&&Je()!==1;)Fc.push(c.getTokenText()),$r();let Qc=da==="link"?V.createJSDocLink:da==="linkcode"?V.createJSDocLinkCode:V.createJSDocLinkPlain;return oi(Qc(Sa,Fc.join("")),vs,c.getTokenEnd())}function Rr(){if(Id(Je())){let vs=xe(),da=QI();for(;Dl(25);)da=oi(V.createQualifiedName(da,Je()===81?$d(80,!1):QI()),vs);for(;Je()===81;)wn(),$r(),da=oi(V.createJSDocMemberName(da,_f()),vs);return da}}function Ii(){if(vo(),Je()===19&&$r()===60&&Id($r())){let vs=c.getTokenValue();if(Jo(vs))return vs}}function Jo(vs){return vs==="link"||vs==="linkcode"||vs==="linkplain"}function Au(vs,da,Sa,Fc){return oi(V.createJSDocUnknownTag(da,Ce(vs,xe(),Sa,Fc)),vs)}function cf(vs){vs&&(zA?zA.push(vs):(zA=[vs],Bv=vs.pos),CS=vs.end)}function _2(){return vo(),Je()===19?xr():void 0}function gW(){let vs=AR(23);vs&&dk();let da=AR(62),Sa=Mst();return da&&Xg(62),vs&&(dk(),yu(64)&&Ay(),bi(24)),{name:Sa,isBracketed:vs}}function gR(vs){switch(vs.kind){case 151:return!0;case 189:return gR(vs.elementType);default:return nh(vs)&&Ir(vs.typeName)&&vs.typeName.escapedText==="Object"&&!vs.typeArguments}}function yq(vs,da,Sa,Fc){let Qc=_2(),Ug=!Qc;vo();let{name:Ep,isBracketed:I_}=gW(),dR=vo();Ug&&!Vn(Ii)&&(Qc=_2());let XB=Ce(vs,xe(),Fc,dR),Uw=AJt(Qc,Ep,Sa,Fc);Uw&&(Qc=Uw,Ug=!0);let zx=Sa===1?V.createJSDocPropertyTag(da,Ep,I_,Qc,Ug,XB):V.createJSDocParameterTag(da,Ep,I_,Qc,Ug,XB);return oi(zx,vs)}function AJt(vs,da,Sa,Fc){if(vs&&gR(vs.type)){let Qc=xe(),Ug,Ep;for(;Ug=Ui(()=>AK(Sa,Fc,da));)Ug.kind===342||Ug.kind===349?Ep=Ft(Ep,Ug):Ug.kind===346&&cn(Ug.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Ep){let I_=oi(V.createJSDocTypeLiteral(Ep,vs.type.kind===189),Qc);return oi(V.createJSDocTypeExpression(I_),Qc)}}}function Rpe(vs,da,Sa,Fc){jt(zA,e9e)&&Mt(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=_2();return oi(V.createJSDocReturnTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function bq(vs,da,Sa,Fc){jt(zA,ude)&&Mt(da.pos,c.getTokenStart(),Z._0_tag_already_specified,Bc(da.escapedText));let Qc=xr(!0),Ug=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocTypeTag(da,Qc,Ug),vs)}function dJt(vs,da,Sa,Fc){let Ug=Je()===23||Vn(()=>$r()===60&&Id($r())&&Jo(c.getTokenValue()))?void 0:Tn(),Ep=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSeeTag(da,Ug,Ep),vs)}function pJt(vs,da,Sa,Fc){let Qc=_2(),Ug=Ce(vs,xe(),Sa,Fc);return oi(V.createJSDocThrowsTag(da,Qc,Ug),vs)}function A2e(vs,da,Sa,Fc){let Qc=xe(),Ug=Zst(),Ep=c.getTokenFullStart(),I_=Ce(vs,Ep,Sa,Fc);I_||(Ep=c.getTokenFullStart());let dR=typeof I_!="string"?TA(Nn([oi(Ug,Qc,Ep)],I_),Qc):Ug.text+I_;return oi(V.createJSDocAuthorTag(da,dR),vs)}function Zst(){let vs=[],da=!1,Sa=c.getToken();for(;Sa!==1&&Sa!==4;){if(Sa===30)da=!0;else{if(Sa===60&&!da)break;if(Sa===32&&da){vs.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}vs.push(c.getTokenText()),Sa=$r()}return V.createJSDocText(vs.join(""))}function AW(vs,da,Sa,Fc){let Qc=ZQ();return oi(V.createJSDocImplementsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function fJt(vs,da,Sa,Fc){let Qc=ZQ();return oi(V.createJSDocAugmentsTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function IJt(vs,da,Sa,Fc){let Qc=xr(!1),Ug=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocSatisfiesTag(da,Qc,Ug),vs)}function hJt(vs,da,Sa,Fc){let Qc=c.getTokenFullStart(),Ug;fs()&&(Ug=_f());let Ep=vpe(Ug,Qc,156,!0),I_=gK(),dR=Cq(),XB=Sa!==void 0&&Fc!==void 0?Ce(vs,xe(),Sa,Fc):void 0;return oi(V.createJSDocImportTag(da,Ep,I_,dR,XB),vs)}function ZQ(){let vs=Dl(19),da=xe(),Sa=Npe();c.setSkipJsDocLeadingAsterisks(!0);let Fc=Hf();c.setSkipJsDocLeadingAsterisks(!1);let Qc=V.createExpressionWithTypeArguments(Sa,Fc),Ug=oi(Qc,da);return vs&&(dk(),bi(20)),Ug}function Npe(){let vs=xe(),da=w1();for(;Dl(25);){let Sa=w1();da=oi(Ze(da,Sa),vs)}return da}function Eq(vs,da,Sa,Fc,Qc){return oi(da(Sa,Ce(vs,xe(),Fc,Qc)),vs)}function Lst(vs,da,Sa,Fc){let Qc=xr(!0);return dk(),oi(V.createJSDocThisTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Dpe(vs,da,Sa,Fc){let Qc=xr(!0);return dk(),oi(V.createJSDocEnumTag(da,Qc,Ce(vs,xe(),Sa,Fc)),vs)}function Vst(vs,da,Sa,Fc){let Qc=_2();vo();let Ug=d2e();dk();let Ep=Pe(Sa),I_;if(!Qc||gR(Qc.type)){let XB,Uw,zx,nZ=!1;for(;(XB=Ui(()=>_Jt(Sa)))&&XB.kind!==346;)if(nZ=!0,XB.kind===345)if(Uw){let Bse=bn(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);Bse&&lg(Bse,QY(nt,tr,0,0,Z.The_tag_was_first_specified_here));break}else Uw=XB;else zx=Ft(zx,XB);if(nZ){let Bse=Qc&&Qc.type.kind===189,xpe=V.createJSDocTypeLiteral(zx,Bse);Qc=Uw&&Uw.typeExpression&&!gR(Uw.typeExpression.type)?Uw.typeExpression:oi(xpe,vs),I_=Qc.end}}I_=I_||Ep!==void 0?xe():(Ug??Qc??da).end,Ep||(Ep=Ce(vs,I_,Sa,Fc));let dR=V.createJSDocTypedefTag(da,Qc,Ug,Ep);return oi(dR,vs,I_)}function d2e(vs){let da=c.getTokenStart();if(!Id(Je()))return;let Sa=w1();if(Dl(25)){let Fc=d2e(!0),Qc=V.createModuleDeclaration(void 0,Sa,Fc,vs?8:void 0);return oi(Qc,da)}return vs&&(Sa.flags|=4096),Sa}function kpe(vs){let da=xe(),Sa,Fc;for(;Sa=Ui(()=>AK(4,vs));){if(Sa.kind===346){cn(Sa.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Fc=Ft(Fc,Sa)}return TA(Fc||[],da)}function Pst(vs,da){let Sa=kpe(da),Fc=Ui(()=>{if(AR(60)){let Qc=q(da);if(Qc&&Qc.kind===343)return Qc}});return oi(V.createJSDocSignature(void 0,Sa,Fc),vs)}function Wst(vs,da,Sa,Fc){let Qc=d2e();dk();let Ug=Pe(Sa),Ep=Pst(vs,Sa);Ug||(Ug=Ce(vs,xe(),Sa,Fc));let I_=Ug!==void 0?xe():Ep.end;return oi(V.createJSDocCallbackTag(da,Ep,Qc,Ug),vs,I_)}function mJt(vs,da,Sa,Fc){dk();let Qc=Pe(Sa),Ug=Pst(vs,Sa);Qc||(Qc=Ce(vs,xe(),Sa,Fc));let Ep=Qc!==void 0?xe():Ug.end;return oi(V.createJSDocOverloadTag(da,Ug,Qc),vs,Ep)}function CJt(vs,da){for(;!Ir(vs)||!Ir(da);)if(!Ir(vs)&&!Ir(da)&&vs.right.escapedText===da.right.escapedText)vs=vs.left,da=da.left;else return!1;return vs.escapedText===da.escapedText}function _Jt(vs){return AK(1,vs)}function AK(vs,da,Sa){let Fc=!0,Qc=!1;for(;;)switch($r()){case 60:if(Fc){let Ug=Ost(vs,da);return Ug&&(Ug.kind===342||Ug.kind===349)&&Sa&&(Ir(Ug.name)||!CJt(Sa,Ug.name.left))?!1:Ug}Qc=!1;break;case 4:Fc=!0,Qc=!1;break;case 42:Qc&&(Fc=!1),Qc=!0;break;case 80:Fc=!1;break;case 1:return!1}}function Ost(vs,da){pe.assert(Je()===60);let Sa=c.getTokenFullStart();$r();let Fc=w1(),Qc=vo(),Ug;switch(Fc.escapedText){case"type":return vs===1&&bq(Sa,Fc);case"prop":case"property":Ug=1;break;case"arg":case"argument":case"param":Ug=6;break;case"template":return Io(Sa,Fc,da,Qc);case"this":return Lst(Sa,Fc,da,Qc);default:return!1}return vs&Ug?yq(Sa,Fc,vs,da):!1}function yJt(){let vs=xe(),da=AR(23);da&&dk();let Sa=Oc(!1,!0),Fc=w1(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Qc;if(da&&(dk(),bi(64),Qc=Tg(16777216,aR),bi(24)),!sf(Fc))return oi(V.createTypeParameterDeclaration(Sa,Fc,void 0,Qc),vs)}function b9(){let vs=xe(),da=[];do{dk();let Sa=yJt();Sa!==void 0&&da.push(Sa),vo()}while(AR(28));return TA(da,vs)}function Io(vs,da,Sa,Fc){let Qc=Je()===19?xr():void 0,Ug=b9();return oi(V.createJSDocTemplateTag(da,Qc,Ug,Ce(vs,xe(),Sa,Fc)),vs)}function AR(vs){return Je()===vs?($r(),!0):!1}function Mst(){let vs=w1();for(Dl(23)&&bi(24);Dl(25);){let da=w1();Dl(23)&&bi(24),vs=gi(vs,da)}return vs}function w1(vs){if(!Id(Je()))return $d(80,!vs,vs||Z.Identifier_expected);mn++;let da=c.getTokenStart(),Sa=c.getTokenEnd(),Fc=Je(),Qc=YI(c.getTokenValue()),Ug=oi(Ie(Qc,Fc),da,Sa);return $r(),Ug}}})(VN=s.JSDocParser||(s.JSDocParser={}))})(Y3||(Y3={}));var D$r=new WeakSet;function q2s(s){D$r.has(s)&&pe.fail("Source file has already been incrementally parsed"),D$r.add(s)}var k$r=new WeakSet;function $2s(s){return k$r.has(s)}function fWt(s){k$r.add(s)}var L$e;(s=>{function c(re,ge,Ie,_e){if(_e=_e||pe.shouldAssert(2),V(re,ge,Ie,_e),sy(Ie))return re;if(re.statements.length===0)return Y3.parseSourceFile(re.fileName,ge,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);q2s(re),Y3.fixupParentReferences(re);let Ee=re.text,Ne=M(re),Te=T(re,Ie);V(re,ge,Te,_e),pe.assert(Te.span.start<=Ie.span.start),pe.assert(Rs(Te.span)===Rs(Ie.span)),pe.assert(Rs(qR(Te))===Rs(qR(Ie)));let Ze=qR(Te).length-Te.span.length;R(re,Te.span.start,Rs(Te.span),Rs(qR(Te)),Ze,Ee,ge,_e);let We=Y3.parseSourceFile(re.fileName,ge,re.languageVersion,Ne,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return We.commentDirectives=g(re.commentDirectives,We.commentDirectives,Te.span.start,Rs(Te.span),Ze,Ee,ge,_e),We.impliedNodeFormat=re.impliedNodeFormat,QPt(re,We),We}s.updateSourceFile=c;function g(re,ge,Ie,_e,Ee,Ne,Te,Ze){if(!re)return ge;let We,Ue=!1;for(let Ye of re){let{range:Tt,type:ot}=Ye;if(Tt.end_e){$e();let Qe={range:{pos:Tt.pos+Ee,end:Tt.end+Ee},type:ot};We=Ft(We,Qe),Ze&&pe.assert(Ne.substring(Tt.pos,Tt.end)===Te.substring(Qe.range.pos,Qe.range.end))}}return $e(),We;function $e(){Ue||(Ue=!0,We?ge&&We.push(...ge):We=ge)}}function d(re,ge,Ie,_e,Ee,Ne,Te){Ie?We(re):Ze(re);return;function Ze(Ue){let $e="";if(Te&&h(Ue)&&($e=Ee.substring(Ue.pos,Ue.end)),b$e(Ue,ge),TB(Ue,Ue.pos+_e,Ue.end+_e),Te&&h(Ue)&&pe.assert($e===Ne.substring(Ue.pos,Ue.end)),Lu(Ue,Ze,We),Xm(Ue))for(let Ye of Ue.jsDoc)Ze(Ye);S(Ue,Te)}function We(Ue){TB(Ue,Ue.pos+_e,Ue.end+_e);for(let $e of Ue)Ze($e)}}function h(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function _(re,ge,Ie,_e,Ee){pe.assert(re.end>=ge,"Adjusting an element that was entirely before the change range"),pe.assert(re.pos<=Ie,"Adjusting an element that was entirely after the change range"),pe.assert(re.pos<=re.end);let Ne=Math.min(re.pos,_e),Te=re.end>=Ie?re.end+Ee:Math.min(re.end,_e);if(pe.assert(Ne<=Te),re.parent){let Ze=re.parent;pe.assertGreaterThanOrEqual(Ne,Ze.pos),pe.assertLessThanOrEqual(Te,Ze.end)}TB(re,Ne,Te)}function S(re,ge){if(ge){let Ie=re.pos,_e=Ee=>{pe.assert(Ee.pos>=Ie),Ie=Ee.end};if(Xm(re))for(let Ee of re.jsDoc)_e(Ee);Lu(re,_e),pe.assert(Ie<=re.end)}}function R(re,ge,Ie,_e,Ee,Ne,Te,Ze){We(re);return;function We($e){if(pe.assert($e.pos<=$e.end),$e.pos>Ie){d($e,re,!1,Ee,Ne,Te,Ze);return}let Ye=$e.end;if(Ye>=ge){if(fWt($e),b$e($e,re),_($e,ge,Ie,_e,Ee),Lu($e,We,Ue),Xm($e))for(let Tt of $e.jsDoc)We(Tt);S($e,Ze);return}pe.assert(YeIe){d($e,re,!0,Ee,Ne,Te,Ze);return}let Ye=$e.end;if(Ye>=ge){fWt($e),_($e,ge,Ie,_e,Ee);for(let Tt of $e)We(Tt);return}pe.assert(Ye0&&Te<=1;Te++){let Ze=W(re,_e);pe.assert(Ze.pos<=_e);let We=Ze.pos;_e=Math.max(0,We-1)}let Ee=wA(_e,Rs(ge.span)),Ne=ge.newLength+(ge.span.start-_e);return $2(Ee,Ne)}function W(re,ge){let Ie=re,_e;if(Lu(re,Ne),_e){let Te=Ee(_e);Te.pos>Ie.pos&&(Ie=Te)}return Ie;function Ee(Te){for(;;){let Ze=ube(Te);if(Ze)Te=Ze;else return Te}}function Ne(Te){if(!sf(Te))if(Te.pos<=ge){if(Te.pos>=Ie.pos&&(Ie=Te),gege),!0}}function V(re,ge,Ie,_e){let Ee=re.text;if(Ie&&(pe.assert(Ee.length-Ie.span.length+Ie.newLength===ge.length),_e||pe.shouldAssert(3))){let Ne=Ee.substr(0,Ie.span.start),Te=ge.substr(0,Ie.span.start);pe.assert(Ne===Te);let Ze=Ee.substring(Rs(Ie.span),Ee.length),We=ge.substring(Rs(qR(Ie)),ge.length);pe.assert(Ze===We)}}function M(re){let ge=re.statements,Ie=0;pe.assert(Ie=Ue.pos&&Te=Ue.pos&&Te{re[re.Value=-1]="Value"})(ee||(ee={}))})(L$e||(L$e={}));function PC(s){return g9e(s)!==void 0}function g9e(s){let c=gE(s,LAe,!1);if(c)return c;if(aA(s,".ts")){let g=gp(s),d=g.lastIndexOf(".d.");if(d>=0)return g.substring(d)}}function eSs(s,c,g,d){if(s){if(s==="import")return 99;if(s==="require")return 1;d(c,g-c,Z.resolution_mode_should_be_either_require_or_import)}}function V$e(s,c){let g=[];for(let d of fE(c,0)||E){let h=c.substring(d.pos,d.end);iSs(g,d,h)}s.pragmas=new Map;for(let d of g){if(s.pragmas.has(d.name)){let h=s.pragmas.get(d.name);h instanceof Array?h.push(d.args):s.pragmas.set(d.name,[h,d.args]);continue}s.pragmas.set(d.name,d.args)}}function P$e(s,c){s.checkJsDirective=void 0,s.referencedFiles=[],s.typeReferenceDirectives=[],s.libReferenceDirectives=[],s.amdDependencies=[],s.hasNoDefaultLib=!1,s.pragmas.forEach((g,d)=>{switch(d){case"reference":{let h=s.referencedFiles,_=s.typeReferenceDirectives,S=s.libReferenceDirectives;F(cc(g),R=>{let{types:T,lib:W,path:V,["resolution-mode"]:M,preserve:ee}=R.arguments,re=ee==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")s.hasNoDefaultLib=!0;else if(T){let ge=eSs(M,T.pos,T.end,c);_.push({pos:T.pos,end:T.end,fileName:T.value,...ge?{resolutionMode:ge}:{},...re?{preserve:re}:{}})}else W?S.push({pos:W.pos,end:W.end,fileName:W.value,...re?{preserve:re}:{}}):V?h.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{s.amdDependencies=At(cc(g),h=>({name:h.arguments.name,path:h.arguments.path}));break}case"amd-module":{if(g instanceof Array)for(let h of g)s.moduleName&&c(h.range.pos,h.range.end-h.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),s.moduleName=h.arguments.name;else s.moduleName=g.arguments.name;break}case"ts-nocheck":case"ts-check":{F(cc(g),h=>{(!s.checkJsDirective||h.range.pos>s.checkJsDirective.pos)&&(s.checkJsDirective={enabled:d==="ts-check",end:h.range.end,pos:h.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:pe.fail("Unhandled pragma kind")}})}var IWt=new Map;function tSs(s){if(IWt.has(s))return IWt.get(s);let c=new RegExp(`(\\s${s}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return IWt.set(s,c),c}var rSs=/^\/\/\/\s*<(\S+)\s.*?\/>/m,nSs=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function iSs(s,c,g){let d=c.kind===2&&rSs.exec(g);if(d){let _=d[1].toLowerCase(),S=e1[_];if(!S||!(S.kind&1))return;if(S.args){let R={};for(let T of S.args){let V=tSs(T.name).exec(g);if(!V&&!T.optional)return;if(V){let M=V[2]||V[3];if(T.captureSpan){let ee=c.pos+V.index+V[1].length+1;R[T.name]={value:M,pos:ee,end:ee+M.length}}else R[T.name]=M}}s.push({name:_,args:{arguments:R,range:c}})}else s.push({name:_,args:{arguments:{},range:c}});return}let h=c.kind===2&&nSs.exec(g);if(h)return x$r(s,c,2,h);if(c.kind===3){let _=/@(\S+)(\s+(?:\S.*)?)?$/gm,S;for(;S=_.exec(g);)x$r(s,c,4,S)}}function x$r(s,c,g,d){if(!d)return;let h=d[1].toLowerCase(),_=e1[h];if(!_||!(_.kind&g))return;let S=d[2],R=sSs(_,S);R!=="fail"&&s.push({name:h,args:{arguments:R,range:c}})}function sSs(s,c){if(!c)return{};if(!s.args)return{};let g=c.trim().split(/\s+/),d={};for(let h=0;h[""+c,s])),F$r=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["es2024","lib.es2024.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.arraybuffer","lib.es2017.arraybuffer.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["es2023.intl","lib.es2023.intl.d.ts"],["es2024.arraybuffer","lib.es2024.arraybuffer.d.ts"],["es2024.collection","lib.es2024.collection.d.ts"],["es2024.object","lib.es2024.object.d.ts"],["es2024.promise","lib.es2024.promise.d.ts"],["es2024.regexp","lib.es2024.regexp.d.ts"],["es2024.sharedmemory","lib.es2024.sharedmemory.d.ts"],["es2024.string","lib.es2024.string.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.es2024.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.es2024.object.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.regexp","lib.es2024.regexp.d.ts"],["esnext.string","lib.es2024.string.d.ts"],["esnext.iterator","lib.esnext.iterator.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.float16","lib.esnext.float16.d.ts"],["esnext.error","lib.esnext.error.d.ts"],["esnext.sharedmemory","lib.esnext.sharedmemory.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],A9e=F$r.map(s=>s[0]),W$e=new Map(F$r),wz=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:LWt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:LWt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],d9e=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],O$e={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,es2023:10,es2024:11,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},mWt={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,node18:101,node20:102,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},Z$r=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},O$e,mWt,{name:"lib",type:"list",element:{name:"lib",type:W$e,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:G$r,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting,defaultValueDescription:!1},{name:"isolatedDeclarations",type:"boolean",category:Z.Interop_Constraints,description:Z.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"erasableSyntaxOnly",type:"boolean",category:Z.Interop_Constraints,description:Z.Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"libReplacement",type:"boolean",affectsProgramStructure:!0,category:Z.Language_and_Environment,description:Z.Enable_lib_replacement,defaultValueDescription:!0},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBuiltinIteratorReturn",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:Z.Type_Checking,description:Z.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"rewriteRelativeImportExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files,defaultValueDescription:!1},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"noUncheckedSideEffectImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.Check_side_effect_imports,defaultValueDescription:!1},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:Z.Language_and_Environment,description:Z.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSourceFile:!0,category:Z.Language_and_Environment,description:Z.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],Ww=[...d9e,...Z$r],CWt=Ww.filter(s=>!!s.affectsSemanticDiagnostics),_Wt=Ww.filter(s=>!!s.affectsEmit),yWt=Ww.filter(s=>!!s.affectsDeclarationPath),M$e=Ww.filter(s=>!!s.affectsModuleResolution),H$e=Ww.filter(s=>!!s.affectsSourceFile||!!s.affectsBindDiagnostics),bWt=Ww.filter(s=>!!s.affectsProgramStructure),EWt=Ww.filter(s=>Da(s,"transpileOptionValue")),oSs=Ww.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),aSs=wz.filter(s=>s.allowConfigDirTemplateSubstitution||!s.isCommandLineOnly&&s.isFilePath),SWt=Ww.filter(cSs);function cSs(s){return!Xs(s.type)}var SU={name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},Y$e=[SU,{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1},{name:"stopBuildOnErrors",category:Z.Command_line_Options,description:Z.Skip_building_downstream_projects_on_error_in_upstream_project,type:"boolean",defaultValueDescription:!1}],CEe=[...d9e,...Y$e],p9e=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}];function f9e(s){let c=new Map,g=new Map;return F(s,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&g.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:g}}var L$r;function vie(){return L$r||(L$r=f9e(Ww))}var lSs={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:H$r},V$r={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function vWt(s){return P$r(s,Nf)}function P$r(s,c){let g=Do(s.type.keys()),d=(s.deprecatedKeys?g.filter(h=>!s.deprecatedKeys.has(h)):g).map(h=>`'${h}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${s.name}`,d)}function I9e(s,c,g){return Een(s,(c??"").trim(),g)}function BWt(s,c="",g){if(c=c.trim(),Ac(c,"-"))return;if(s.type==="listOrElement"&&!c.includes(","))return Tz(s,c,g);if(c==="")return[];let d=c.split(",");switch(s.element.type){case"number":return Xt(d,h=>Tz(s.element,parseInt(h),g));case"string":return Xt(d,h=>Tz(s.element,h||"",g));case"boolean":case"object":return pe.fail(`List of ${s.element.type} is not yet supported.`);default:return Xt(d,h=>I9e(s.element,h,g))}}function W$r(s){return s.name}function wWt(s,c,g,d,h){var _;let S=(_=c.alternateMode)==null?void 0:_.getOptionsNameMap().optionsNameMap.get(s.toLowerCase());if(S)return X3(h,d,S!==SU?c.alternateMode.diagnostic:Z.Option_build_must_be_the_first_command_line_argument,s);let R=Dr(s,c.optionDeclarations,W$r);return R?X3(h,d,c.unknownDidYouMeanDiagnostic,g||s,R.name):X3(h,d,c.unknownOptionDiagnostic,g||s)}function Q$e(s,c,g){let d={},h,_=[],S=[];return R(c),{options:d,watchOptions:h,fileNames:_,errors:S};function R(W){let V=0;for(;Vyd.readFile(re)));if(!Xs(V)){S.push(V);return}let M=[],ee=0;for(;;){for(;ee=V.length)break;let re=ee;if(V.charCodeAt(re)===34){for(ee++;ee32;)ee++;M.push(V.substring(re,ee))}}R(M)}}function O$r(s,c,g,d,h,_){if(d.isTSConfigOnly){let S=s[c];S==="null"?(h[d.name]=void 0,c++):d.type==="boolean"?S==="false"?(h[d.name]=Tz(d,!1,_),c++):(S==="true"&&c++,_.push(Nf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(_.push(Nf(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),S&&!Ac(S,"-")&&c++)}else if(!s[c]&&d.type!=="boolean"&&_.push(Nf(g.optionTypeMismatchDiagnostic,d.name,j$e(d))),s[c]!=="null")switch(d.type){case"number":h[d.name]=Tz(d,parseInt(s[c]),_),c++;break;case"boolean":let S=s[c];h[d.name]=Tz(d,S!=="false",_),(S==="false"||S==="true")&&c++;break;case"string":h[d.name]=Tz(d,s[c]||"",_),c++;break;case"list":let R=BWt(d,s[c],_);h[d.name]=R||[],R&&c++;break;case"listOrElement":pe.fail("listOrElement not supported here");break;default:h[d.name]=I9e(d,s[c],_),c++;break}else h[d.name]=void 0,c++;return c}var h9e={alternateMode:lSs,getOptionsNameMap:vie,optionDeclarations:Ww,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function TWt(s,c){return Q$e(h9e,s,c)}function X$e(s,c){return RWt(vie,s,c)}function RWt(s,c,g=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:h}=s();if(g){let _=h.get(c);_!==void 0&&(c=_)}return d.get(c)}var M$r;function H$r(){return M$r||(M$r=f9e(CEe))}var uSs={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:vie},gSs={alternateMode:uSs,getOptionsNameMap:H$r,optionDeclarations:CEe,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function NWt(s){let{options:c,watchOptions:g,fileNames:d,errors:h}=Q$e(gSs,s),_=c;return d.length===0&&d.push("."),_.clean&&_.force&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","force")),_.clean&&_.verbose&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),_.clean&&_.watch&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),_.watch&&_.dry&&h.push(Nf(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:_,watchOptions:g,projects:d,errors:h}}function Zb(s,...c){return Ma(Nf(s,...c).messageText,Xs)}function _Ee(s,c,g,d,h,_){let S=fde(s,W=>g.readFile(W));if(!Xs(S)){g.onUnRecoverableConfigFileDiagnostic(S);return}let R=hEe(s,S),T=g.getCurrentDirectory();return R.path=Ou(s,T,_d(g.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,EEe(R,g,Xc(Mo(s),T),c,Xc(s,T),void 0,_,d,h)}function yEe(s,c){let g=fde(s,c);return Xs(g)?J$e(s,g):{config:{},error:g}}function J$e(s,c){let g=hEe(s,c);return{config:ren(g,g.parseDiagnostics,void 0),error:g.parseDiagnostics.length?g.parseDiagnostics[0]:void 0}}function DWt(s,c){let g=fde(s,c);return Xs(g)?hEe(s,g):{fileName:s,parseDiagnostics:[g]}}function fde(s,c){let g;try{g=c(s)}catch(d){return Nf(Z.Cannot_read_file_0_Colon_1,s,d.message)}return g===void 0?Nf(Z.Cannot_read_file_0,s):g}function U$e(s){return Ru(s,W$r)}var Y$r={optionDeclarations:p9e,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},Q$r;function X$r(){return Q$r||(Q$r=f9e(wz))}var K$e={getOptionsNameMap:X$r,optionDeclarations:wz,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},J$r;function U$r(){return J$r||(J$r=U$e(Ww))}var K$r;function j$r(){return K$r||(K$r=U$e(wz))}var z$r;function q$r(){return z$r||(z$r=U$e(p9e))}var m9e={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},$$r={name:"compilerOptions",type:"object",elementOptions:U$r(),extraKeyDiagnostics:h9e},een={name:"watchOptions",type:"object",elementOptions:j$r(),extraKeyDiagnostics:K$e},ten={name:"typeAcquisition",type:"object",elementOptions:q$r(),extraKeyDiagnostics:Y$r},kWt;function ASs(){return kWt===void 0&&(kWt={name:void 0,type:"object",elementOptions:U$e([$$r,een,ten,m9e,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},hWt])}),kWt}function ren(s,c,g){var d;let h=(d=s.statements[0])==null?void 0:d.expression;if(h&&h.kind!==211){if(c.push(_E(s,h,Z.The_root_value_of_a_0_file_must_be_an_object,gp(s.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),OI(h)){let _=de(h.elements,og);if(_)return bEe(s,_,c,!0,g)}return{}}return bEe(s,h,c,!0,g)}function xWt(s,c){var g;return bEe(s,(g=s.statements[0])==null?void 0:g.expression,c,!0,void 0)}function bEe(s,c,g,d,h){if(!c)return d?{}:void 0;return R(c,h?.rootOptions);function _(W,V){var M;let ee=d?{}:void 0;for(let re of W.properties){if(re.kind!==304){g.push(_E(s,re,Z.Property_assignment_expected));continue}re.questionToken&&g.push(_E(s,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),T(re.name)||g.push(_E(s,re.name,Z.String_literal_with_double_quotes_expected));let ge=kY(re.name)?void 0:hP(re.name),Ie=ge&&Bc(ge),_e=Ie?(M=V?.elementOptions)==null?void 0:M.get(Ie):void 0,Ee=R(re.initializer,_e);typeof Ie<"u"&&(d&&(ee[Ie]=Ee),h?.onPropertySet(Ie,Ee,re,V,_e))}return ee}function S(W,V){if(!d){W.forEach(M=>R(M,V));return}return Me(W.map(M=>R(M,V)),M=>M!==void 0)}function R(W,V){switch(W.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return T(W)||g.push(_E(s,W,Z.String_literal_with_double_quotes_expected)),W.text;case 9:return Number(W.text);case 225:if(W.operator!==41||W.operand.kind!==9)break;return-Number(W.operand.text);case 211:return _(W,V);case 210:return S(W.elements,V&&V.element)}V?g.push(_E(s,W,Z.Compiler_option_0_requires_a_value_of_type_1,V.name,j$e(V))):g.push(_E(s,W,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function T(W){return Zg(W)&&sne(W,s)}}function j$e(s){return s.type==="listOrElement"?`${j$e(s.element)} or Array`:s.type==="list"?"Array":Xs(s.type)?s.type:"string"}function nen(s,c){if(s){if(SEe(c))return!s.disallowNullOrUndefined;if(s.type==="list")return Ki(c);if(s.type==="listOrElement")return Ki(c)||nen(s.element,c);let g=Xs(s.type)?s.type:"string";return typeof c===g}return!1}function z$e(s,c,g){var d,h,_;let S=_d(g.useCaseSensitiveFileNames),R=At(Me(s.fileNames,(h=(d=s.options.configFile)==null?void 0:d.configFileSpecs)!=null&&h.validatedIncludeSpecs?fSs(c,s.options.configFile.configFileSpecs.validatedIncludeSpecs,s.options.configFile.configFileSpecs.validatedExcludeSpecs,g):Tf),ge=>i1(Xc(c,g.getCurrentDirectory()),Xc(ge,g.getCurrentDirectory()),S)),T={configFilePath:Xc(c,g.getCurrentDirectory()),useCaseSensitiveFileNames:g.useCaseSensitiveFileNames},W=q$e(s.options,T),V=s.watchOptions&&ISs(s.watchOptions),M={compilerOptions:{...C9e(W),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:V&&C9e(V),references:At(s.projectReferences,ge=>({...ge,path:ge.originalPath?ge.originalPath:"",originalPath:void 0})),files:B(R)?R:void 0,...(_=s.options.configFile)!=null&&_.configFileSpecs?{include:pSs(s.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:s.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:s.compileOnSave?!0:void 0},ee=new Set(W.keys()),re={};for(let ge in J7)if(!ee.has(ge)&&dSs(ge,ee)){let Ie=J7[ge].computeValue(s.options),_e=J7[ge].computeValue({});Ie!==_e&&(re[ge]=J7[ge].computeValue(s.options))}return Wt(M.compilerOptions,C9e(q$e(re,T))),M}function dSs(s,c){let g=new Set;return d(s);function d(h){var _;return Zy(g,h)?jt((_=J7[h])==null?void 0:_.dependencies,S=>c.has(S)||d(S)):!1}}function C9e(s){return Object.fromEntries(s)}function pSs(s){if(B(s)){if(B(s)!==1)return s;if(s[0]!==cen)return s}}function fSs(s,c,g,d){if(!c)return Tf;let h=kAe(s,g,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),_=h.excludePattern&&zD(h.excludePattern,d.useCaseSensitiveFileNames),S=h.includeFilePattern&&zD(h.includeFilePattern,d.useCaseSensitiveFileNames);return S?_?R=>!(S.test(R)&&!_.test(R)):R=>!S.test(R):_?R=>_.test(R):Tf}function ien(s){switch(s.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return ien(s.element);default:return s.type}}function _9e(s,c){return Dh(c,(g,d)=>{if(g===s)return d})}function q$e(s,c){return sen(s,vie(),c)}function ISs(s){return sen(s,X$r())}function sen(s,{optionsNameMap:c},g){let d=new Map,h=g&&_d(g.useCaseSensitiveFileNames);for(let _ in s)if(Da(s,_)){if(c.has(_)&&(c.get(_).category===Z.Command_line_Options||c.get(_).category===Z.Output_Formatting))continue;let S=s[_],R=c.get(_.toLowerCase());if(R){pe.assert(R.type!=="listOrElement");let T=ien(R);T?R.type==="list"?d.set(_,S.map(W=>_9e(W,T))):d.set(_,_9e(S,T)):g&&R.isFilePath?d.set(_,i1(g.configFilePath,Xc(S,Mo(g.configFilePath)),h)):g&&R.type==="list"&&R.element.isFilePath?d.set(_,S.map(W=>i1(g.configFilePath,Xc(W,Mo(g.configFilePath)),h))):d.set(_,S)}}return d}function GWt(s,c){let g=" ",d=[],h=Object.keys(s).filter(V=>V!=="init"&&V!=="help"&&V!=="watch");if(d.push("{"),d.push(`${g}// ${Bu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)}`),d.push(`${g}"compilerOptions": {`),S(Z.File_Layout),R("rootDir","./src","optional"),R("outDir","./dist","optional"),_(),S(Z.Environment_Settings),S(Z.See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule),R("module",199),R("target",99),R("types",[]),s.lib&&R("lib",s.lib),S(Z.For_nodejs_Colon),d.push(`${g}${g}// "lib": ["esnext"],`),d.push(`${g}${g}// "types": ["node"],`),S(Z.and_npm_install_D_types_Slashnode),_(),S(Z.Other_Outputs),R("sourceMap",!0),R("declaration",!0),R("declarationMap",!0),_(),S(Z.Stricter_Typechecking_Options),R("noUncheckedIndexedAccess",!0),R("exactOptionalPropertyTypes",!0),_(),S(Z.Style_Options),R("noImplicitReturns",!0,"optional"),R("noImplicitOverride",!0,"optional"),R("noUnusedLocals",!0,"optional"),R("noUnusedParameters",!0,"optional"),R("noFallthroughCasesInSwitch",!0,"optional"),R("noPropertyAccessFromIndexSignature",!0,"optional"),_(),S(Z.Recommended_Options),R("strict",!0),R("jsx",4),R("verbatimModuleSyntax",!0),R("isolatedModules",!0),R("noUncheckedSideEffectImports",!0),R("moduleDetection",3),R("skipLibCheck",!0),h.length>0)for(_();h.length>0;)R(h[0],s[h[0]]);function _(){d.push("")}function S(V){d.push(`${g}${g}// ${Bu(V)}`)}function R(V,M,ee="never"){let re=h.indexOf(V);re>=0&&h.splice(re,1);let ge;ee==="always"?ge=!0:ee==="never"?ge=!1:ge=!Da(s,V);let Ie=s[V]??M;ge?d.push(`${g}${g}// "${V}": ${T(V,Ie)},`):d.push(`${g}${g}"${V}": ${T(V,Ie)},`)}function T(V,M){let ee=Ww.filter(ge=>ge.name===V)[0];ee||pe.fail(`No option named ${V}?`);let re=ee.type instanceof Map?ee.type:void 0;if(Ki(M)){let ge="element"in ee&&ee.element.type instanceof Map?ee.element.type:void 0;return`[${M.map(Ie=>W(Ie,ge)).join(", ")}]`}else return W(M,re)}function W(V,M){return M&&(V=_9e(V,M)??pe.fail(`No matching value of ${V}`)),JSON.stringify(V)}return d.push(`${g}}`),d.push("}"),d.push(""),d.join(c)}function y9e(s,c){let g={},d=vie().optionsNameMap;for(let h in s)Da(s,h)&&(g[h]=hSs(d.get(h.toLowerCase()),s[h],c));return g.configFilePath&&(g.configFilePath=c(g.configFilePath)),g}function hSs(s,c,g){if(s&&!SEe(c)){if(s.type==="list"){let d=c;if(s.element.isFilePath&&d.length)return d.map(g)}else if(s.isFilePath)return g(c);pe.assert(s.type!=="listOrElement")}return c}function oen(s,c,g,d,h,_,S,R,T){return len(s,void 0,c,g,d,T,h,_,S,R)}function EEe(s,c,g,d,h,_,S,R,T){var W,V;(W=ki)==null||W.push(ki.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:s.fileName});let M=len(void 0,s,c,g,d,T,h,_,S,R);return(V=ki)==null||V.pop(),M}function $$e(s,c){c&&Object.defineProperty(s,"configFile",{enumerable:!1,writable:!1,value:c})}function SEe(s){return s==null}function aen(s,c){return Mo(Xc(s,c))}var cen="**/*";function len(s,c,g,d,h={},_,S,R=[],T=[],W){pe.assert(s===void 0&&c!==void 0||s!==void 0&&c===void 0);let V=[],M=fen(s,c,g,d,S,R,V,W),{raw:ee}=M,re=uen(OA(h,M.options||{}),oSs,d),ge=b9e(_&&M.watchOptions?OA(_,M.watchOptions):M.watchOptions||_,d);re.configFilePath=S&&Dp(S);let Ie=iu(S?aen(S,d):d),_e=Ee();return c&&(c.configFileSpecs=_e),$$e(re,c),{options:re,watchOptions:ge,fileNames:Ne(Ie),projectReferences:Te(Ie),typeAcquisition:M.typeAcquisition||ret(),raw:ee,errors:V,wildcardDirectories:RSs(_e,Ie,g.useCaseSensitiveFileNames),compileOnSave:!!ee.compileOnSave};function Ee(){let Ye=Ue("references",Gt=>typeof Gt=="object","object"),Tt=Ze(We("files"));if(Tt){let Gt=Ye==="no-prop"||Ki(Ye)&&Ye.length===0,nt=Da(ee,"extends");if(Tt.length===0&&Gt&&!nt)if(c){let Dt=S||"tsconfig.json",tr=Z.The_files_list_in_config_file_0_is_empty,ur=zre(c,"files",dt=>dt.initializer),Gr=X3(c,ur,tr,Dt);V.push(Gr)}else $e(Z.The_files_list_in_config_file_0_is_empty,S||"tsconfig.json")}let ot=Ze(We("include")),Qe=We("exclude"),mt=!1,ht=Ze(Qe);if(Qe==="no-prop"){let Gt=re.outDir,nt=re.declarationDir;(Gt||nt)&&(ht=Me([Gt,nt],Dt=>!!Dt))}Tt===void 0&&ot===void 0&&(ot=[cen],mt=!0);let _t,Rt,Lt,Ke;ot&&(_t=Ben(ot,V,!0,c,"include"),Lt=E9e(_t,Ie)||_t),ht&&(Rt=Ben(ht,V,!1,c,"exclude"),Ke=E9e(Rt,Ie)||Rt);let Pt=Me(Tt,Xs),_r=E9e(Pt,Ie)||Pt;return{filesSpecs:Tt,includeSpecs:ot,excludeSpecs:ht,validatedFilesSpec:_r,validatedIncludeSpecs:Lt,validatedExcludeSpecs:Ke,validatedFilesSpecBeforeSubstitution:Pt,validatedIncludeSpecsBeforeSubstitution:_t,validatedExcludeSpecsBeforeSubstitution:Rt,isDefaultIncludeSpec:mt}}function Ne(Ye){let Tt=Ide(_e,Ye,re,g,T);return pen(Tt,vEe(ee),R)&&V.push(den(_e,S)),Tt}function Te(Ye){let Tt,ot=Ue("references",Qe=>typeof Qe=="object","object");if(Ki(ot))for(let Qe of ot)typeof Qe.path!="string"?$e(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(Tt||(Tt=[])).push({path:Xc(Qe.path,Ye),originalPath:Qe.path,prepend:Qe.prepend,circular:Qe.circular});return Tt}function Ze(Ye){return Ki(Ye)?Ye:void 0}function We(Ye){return Ue(Ye,Xs,"string")}function Ue(Ye,Tt,ot){if(Da(ee,Ye)&&!SEe(ee[Ye]))if(Ki(ee[Ye])){let Qe=ee[Ye];return!c&&!ue(Qe,Tt)&&V.push(Nf(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,ot)),Qe}else return $e(Z.Compiler_option_0_requires_a_value_of_type_1,Ye,"Array"),"not-array";return"no-prop"}function $e(Ye,...Tt){c||V.push(Nf(Ye,...Tt))}}function b9e(s,c){return uen(s,aSs,c)}function uen(s,c,g){if(!s)return s;let d;for(let _ of c)if(s[_.name]!==void 0){let S=s[_.name];switch(_.type){case"string":pe.assert(_.isFilePath),eet(S)&&h(_,Aen(S,g));break;case"list":pe.assert(_.element.isFilePath);let R=E9e(S,g);R&&h(_,R);break;case"object":pe.assert(_.name==="paths");let T=mSs(S,g);T&&h(_,T);break;default:pe.fail("option type not supported")}}return d||s;function h(_,S){(d??(d=Wt({},s)))[_.name]=S}}var gen="${configDir}";function eet(s){return Xs(s)&&Ac(s,gen,!0)}function Aen(s,c){return Xc(s.replace(gen,"./"),c)}function E9e(s,c){if(!s)return s;let g;return s.forEach((d,h)=>{eet(d)&&((g??(g=s.slice()))[h]=Aen(d,c))}),g}function mSs(s,c){let g;return _g(s).forEach(h=>{if(!Ki(s[h]))return;let _=E9e(s[h],c);_&&((g??(g=Wt({},s)))[h]=_)}),g}function CSs(s){return s.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function den({includeSpecs:s,excludeSpecs:c},g){return Nf(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,g||"tsconfig.json",JSON.stringify(s||[]),JSON.stringify(c||[]))}function pen(s,c,g){return s.length===0&&c&&(!g||g.length===0)}function tet(s){return!s.fileNames.length&&Da(s.raw,"references")}function vEe(s){return!Da(s,"files")&&!Da(s,"references")}function S9e(s,c,g,d,h){let _=d.length;return pen(s,h)?d.push(den(g,c)):je(d,S=>!CSs(S)),_!==d.length}function _Ss(s){return!!s.options}function fen(s,c,g,d,h,_,S,R){var T;d=Dp(d);let W=Xc(h||"",d);if(_.includes(W))return S.push(Nf(Z.Circularity_detected_while_resolving_configuration_Colon_0,[..._,W].join(" -> "))),{raw:s||xWt(c,S)};let V=s?ySs(s,g,d,h,S):bSs(c,g,d,h,S);if((T=V.options)!=null&&T.paths&&(V.options.pathsBasePath=d),V.extendedConfigPath){_=_.concat([W]);let re={options:{}};Xs(V.extendedConfigPath)?M(re,V.extendedConfigPath):V.extendedConfigPath.forEach(ge=>M(re,ge)),re.include&&(V.raw.include=re.include),re.exclude&&(V.raw.exclude=re.exclude),re.files&&(V.raw.files=re.files),V.raw.compileOnSave===void 0&&re.compileOnSave&&(V.raw.compileOnSave=re.compileOnSave),c&&re.extendedSourceFiles&&(c.extendedSourceFiles=Do(re.extendedSourceFiles.keys())),V.options=Wt(re.options,V.options),V.watchOptions=V.watchOptions&&re.watchOptions?ee(re,V.watchOptions):V.watchOptions||re.watchOptions}return V;function M(re,ge){let Ie=ESs(c,ge,g,_,S,R,re);if(Ie&&_Ss(Ie)){let _e=Ie.raw,Ee,Ne=Te=>{V.raw[Te]||_e[Te]&&(re[Te]=At(_e[Te],Ze=>eet(Ze)||Xp(Ze)?Ze:Ro(Ee||(Ee=r2(Mo(ge),d,_d(g.useCaseSensitiveFileNames))),Ze)))};Ne("include"),Ne("exclude"),Ne("files"),_e.compileOnSave!==void 0&&(re.compileOnSave=_e.compileOnSave),Wt(re.options,Ie.options),re.watchOptions=re.watchOptions&&Ie.watchOptions?ee(re,Ie.watchOptions):re.watchOptions||Ie.watchOptions}}function ee(re,ge){return re.watchOptionsCopied?Wt(re.watchOptions,ge):(re.watchOptionsCopied=!0,Wt({},re.watchOptions,ge))}}function ySs(s,c,g,d,h){Da(s,"excludes")&&h.push(Nf(Z.Unknown_option_excludes_Did_you_mean_exclude));let _=yen(s.compilerOptions,g,h,d),S=ben(s.typeAcquisition,g,h,d),R=vSs(s.watchOptions,g,h);s.compileOnSave=SSs(s,g,h);let T=s.extends||s.extends===""?Ien(s.extends,c,g,d,h):void 0;return{raw:s,options:_,watchOptions:R,typeAcquisition:S,extendedConfigPath:T}}function Ien(s,c,g,d,h,_,S,R){let T,W=d?aen(d,g):g;if(Xs(s))T=hen(s,c,W,h,S,R);else if(Ki(s)){T=[];for(let V=0;VNe.name===re)&&(W=Ft(W,Ie.name))))}}function hen(s,c,g,d,h,_){if(s=Dp(s),Xp(s)||Ac(s,"./")||Ac(s,"../")){let R=Xc(s,g);if(!c.fileExists(R)&&!di(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push(X3(_,h,Z.File_0_not_found,s));return}return R}let S=$Wt(s,Ro(g,"tsconfig.json"),c);if(S.resolvedModule)return S.resolvedModule.resolvedFileName;s===""?d.push(X3(_,h,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push(X3(_,h,Z.File_0_not_found,s))}function ESs(s,c,g,d,h,_,S){let R=g.useCaseSensitiveFileNames?c:Om(c),T,W,V;if(_&&(T=_.get(R))?{extendedResult:W,extendedConfig:V}=T:(W=DWt(c,M=>g.readFile(M)),W.parseDiagnostics.length||(V=fen(void 0,W,g,Mo(c),gp(c),d,h,_)),_&&_.set(R,{extendedResult:W,extendedConfig:V})),s&&((S.extendedSourceFiles??(S.extendedSourceFiles=new Set)).add(W.fileName),W.extendedSourceFiles))for(let M of W.extendedSourceFiles)S.extendedSourceFiles.add(M);if(W.parseDiagnostics.length){h.push(...W.parseDiagnostics);return}return V}function SSs(s,c,g){if(!Da(s,hWt.name))return!1;let d=vU(hWt,s.compileOnSave,c,g);return typeof d=="boolean"&&d}function men(s,c,g){let d=[];return{options:yen(s,c,d,g),errors:d}}function Cen(s,c,g){let d=[];return{options:ben(s,c,d,g),errors:d}}function _en(s){return s&&gp(s)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function yen(s,c,g,d){let h=_en(d);return FWt(U$r(),s,c,h,h9e,g),d&&(h.configFilePath=Dp(d)),h}function ret(s){return{enable:!!s&&gp(s)==="jsconfig.json",include:[],exclude:[]}}function ben(s,c,g,d){let h=ret(d);return FWt(q$r(),s,c,h,Y$r,g),h}function vSs(s,c,g){return FWt(j$r(),s,c,void 0,K$e,g)}function FWt(s,c,g,d,h,_){if(c){for(let S in c){let R=s.get(S);R?(d||(d={}))[R.name]=vU(R,c[S],g,_):_.push(wWt(S,h))}return d}}function X3(s,c,g,...d){return s&&c?_E(s,c,g,...d):Nf(g,...d)}function vU(s,c,g,d,h,_,S){if(s.isCommandLineOnly){d.push(X3(S,h?.name,Z.Option_0_can_only_be_specified_on_command_line,s.name));return}if(nen(s,c)){let R=s.type;if(R==="list"&&Ki(c))return Sen(s,c,g,d,h,_,S);if(R==="listOrElement")return Ki(c)?Sen(s,c,g,d,h,_,S):vU(s.element,c,g,d,h,_,S);if(!Xs(s.type))return Een(s,c,d,_,S);let T=Tz(s,c,d,_,S);return SEe(T)?T:BSs(s,g,T)}else d.push(X3(S,_,Z.Compiler_option_0_requires_a_value_of_type_1,s.name,j$e(s)))}function BSs(s,c,g){return s.isFilePath&&(g=Dp(g),g=eet(g)?g:Xc(g,c),g===""&&(g=".")),g}function Tz(s,c,g,d,h){var _;if(SEe(c))return;let S=(_=s.extraValidation)==null?void 0:_.call(s,c);if(!S)return c;g.push(X3(h,d,...S))}function Een(s,c,g,d,h){if(SEe(c))return;let _=c.toLowerCase(),S=s.type.get(_);if(S!==void 0)return Tz(s,S,g,d,h);g.push(P$r(s,(R,...T)=>X3(h,d,R,...T)))}function Sen(s,c,g,d,h,_,S){return Me(At(c,(R,T)=>vU(s.element,R,g,d,h,_?.elements[T],S)),R=>s.listPreserveFalsyValues?!0:!!R)}var wSs=/(?:^|\/)\*\*\/?$/,TSs=/^[^*?]*(?=\/[^/]*[*?])/;function Ide(s,c,g,d,h=E){c=iu(c);let _=_d(d.useCaseSensitiveFileNames),S=new Map,R=new Map,T=new Map,{validatedFilesSpec:W,validatedIncludeSpecs:V,validatedExcludeSpecs:M}=s,ee=z7(g,h),re=q7(g,ee);if(W)for(let Ee of W){let Ne=Xc(Ee,c);S.set(_(Ne),Ne)}let ge;if(V&&V.length>0)for(let Ee of d.readDirectory(c,Nr(re),M,V,void 0)){if(aA(Ee,".json")){if(!ge){let Ze=V.filter(Ue=>di(Ue,".json")),We=At(Hne(Ze,c,"files"),Ue=>`^${Ue}$`);ge=We?We.map(Ue=>zD(Ue,d.useCaseSensitiveFileNames)):E}if(Se(ge,Ze=>Ze.test(Ee))!==-1){let Ze=_(Ee);!S.has(Ze)&&!T.has(Ze)&&T.set(Ze,Ee)}continue}if(DSs(Ee,S,R,ee,_))continue;kSs(Ee,R,ee,_);let Ne=_(Ee);!S.has(Ne)&&!R.has(Ne)&&R.set(Ne,Ee)}let Ie=Do(S.values()),_e=Do(R.values());return Ie.concat(_e,Do(T.values()))}function ZWt(s,c,g,d,h){let{validatedFilesSpec:_,validatedIncludeSpecs:S,validatedExcludeSpecs:R}=c;if(!B(S)||!B(R))return!1;g=iu(g);let T=_d(d);if(_){for(let W of _)if(T(Xc(W,g))===s)return!1}return B9e(s,R,d,h,g)}function ven(s){let c=Ac(s,"**/")?0:s.indexOf("/**/");return c===-1?!1:(di(s,"/..")?s.length:s.lastIndexOf("/../"))>c}function v9e(s,c,g,d){return B9e(s,Me(c,h=>!ven(h)),g,d)}function B9e(s,c,g,d,h){let _=j7(c,Ro(iu(d),h),"exclude"),S=_&&zD(_,g);return S?S.test(s)?!0:!E0(s)&&S.test(hp(s)):!1}function Ben(s,c,g,d,h){return s.filter(S=>{if(!Xs(S))return!1;let R=LWt(S,g);return R!==void 0&&c.push(_(...R)),R===void 0});function _(S,R){let T=Pge(d,h,R);return X3(d,T,S,R)}}function LWt(s,c){if(pe.assert(typeof s=="string"),c&&wSs.test(s))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s];if(ven(s))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,s]}function RSs({validatedIncludeSpecs:s,validatedExcludeSpecs:c},g,d){let h=j7(c,g,"exclude"),_=h&&new RegExp(h,d?"":"i"),S={},R=new Map;if(s!==void 0){let T=[];for(let W of s){let V=iu(Ro(g,W));if(_&&_.test(V))continue;let M=NSs(V,d);if(M){let{key:ee,path:re,flags:ge}=M,Ie=R.get(ee),_e=Ie!==void 0?S[Ie]:void 0;(_e===void 0||_efu(s,S)?S:void 0);if(!_)return!1;for(let S of _){if(aA(s,S)&&(S!==".ts"||!aA(s,".d.ts")))return!1;let R=h(fN(s,S));if(c.has(R)||g.has(R)){if(S===".d.ts"&&(aA(s,".js")||aA(s,".jsx")))continue;return!0}}return!1}function kSs(s,c,g,d){let h=F(g,_=>fu(s,_)?_:void 0);if(h)for(let _=h.length-1;_>=0;_--){let S=h[_];if(aA(s,S))return;let R=d(fN(s,S));c.delete(R)}}function PWt(s){let c={};for(let g in s)if(Da(s,g)){let d=X$e(g);d!==void 0&&(c[g]=WWt(s[g],d))}return c}function WWt(s,c){if(s===void 0)return s;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof s=="number"?s:"";case"boolean":return typeof s=="boolean"?s:"";case"listOrElement":if(!Ki(s))return WWt(s,c.element);case"list":let g=c.element;return Ki(s)?Xt(s,d=>WWt(d,g)):"";default:return Dh(c.type,(d,h)=>{if(d===s)return h})}}function LP(s){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=wt("module");if(c)return c(`${s}/`)}function wen(s){var c;return(c=LP(s))==null?void 0:c.resolveRequest("pnpapi",null)}function Ten(s){let c=LP(s);if(!c)return[];s=AE(s);let g=c.findPackageLocator(`${s}/`);if(!g)return[];let{packageDependencies:d}=c.getPackageInformation(g),h=[];for(let[_,S]of Array.from(d.entries()))if(_.startsWith("@types/")&&S!==null){let R=c.getLocator(_,S),{packageLocation:T}=c.getPackageInformation(R);h.push(Mo(T))}return h}function xSs(s,c){let g=LP(s),d=g.findPackageLocator(s),h=g.findPackageLocator(c);if(h===null)return!1;let _=g.getPackageInformation(d),S=_.packageDependencies.get(h.name);if(S)return S===h.reference;for(let R of _.packageDependencies.values())if(Array.isArray(R)&&R[0]===h.name&&R[1]===h.reference)return!0;return!1}function eu(s,c,...g){s.trace(XY(c,...g))}function VP(s,c){return!!s.traceResolution&&c.trace!==void 0}function Rz(s,c,g){let d;if(c&&s){let h=s.contents.packageJsonContent;typeof h.name=="string"&&typeof h.version=="string"&&(d={name:h.name,subModuleName:c.path.slice(s.packageDirectory.length+ag.length),version:h.version,peerDependencies:tvs(s,g)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function net(s){return Rz(void 0,s,void 0)}function Ren(s){if(s)return pe.assert(s.packageId===void 0),{path:s.path,ext:s.extension,resolvedUsingTsExtension:s.resolvedUsingTsExtension}}function w9e(s){let c=[];return s&1&&c.push("TypeScript"),s&2&&c.push("JavaScript"),s&4&&c.push("Declaration"),s&8&&c.push("JSON"),c.join(", ")}function GSs(s){let c=[];return s&1&&c.push(...Yne),s&2&&c.push(...uU),s&4&&c.push(...LAe),s&8&&c.push(".json"),c}function OWt(s){if(s)return pe.assert(PAe(s.extension)),{fileName:s.path,packageId:s.packageId}}function Nen(s,c,g,d,h,_,S,R,T){if(!S.resultFromCache&&!S.compilerOptions.preserveSymlinks&&c&&g&&!c.originalPath&&!Xr(s)){let{resolvedFileName:W,originalPath:V}=xen(c.path,S.host,S.traceEnabled);V&&(c={...c,path:W,originalPath:V})}return Den(c,g,d,h,_,S.resultFromCache,R,T)}function Den(s,c,g,d,h,_,S,R){return _?S?.isReadonly?{..._,failedLookupLocations:MWt(_.failedLookupLocations,g),affectingLocations:MWt(_.affectingLocations,d),resolutionDiagnostics:MWt(_.resolutionDiagnostics,h)}:(_.failedLookupLocations=Bie(_.failedLookupLocations,g),_.affectingLocations=Bie(_.affectingLocations,d),_.resolutionDiagnostics=Bie(_.resolutionDiagnostics,h),_):{resolvedModule:s&&{resolvedFileName:s.path,originalPath:s.originalPath===!0?void 0:s.originalPath,extension:s.extension,isExternalLibraryImport:c,packageId:s.packageId,resolvedUsingTsExtension:!!s.resolvedUsingTsExtension},failedLookupLocations:hde(g),affectingLocations:hde(d),resolutionDiagnostics:hde(h),alternateResult:R}}function hde(s){return s.length?s:void 0}function Bie(s,c){return c?.length?s?.length?(s.push(...c),s):c:s}function MWt(s,c){return s?.length?c.length?[...s,...c]:s.slice():hde(c)}function HWt(s,c,g,d){if(!Da(s,c)){d.traceEnabled&&eu(d.host,Z.package_json_does_not_have_a_0_field,c);return}let h=s[c];if(typeof h!==g||h===null){d.traceEnabled&&eu(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,g,h===null?"null":typeof h);return}return h}function iet(s,c,g,d){let h=HWt(s,c,"string",d);if(h===void 0)return;if(!h){d.traceEnabled&&eu(d.host,Z.package_json_had_a_falsy_0_field,c);return}let _=iu(Ro(g,h));return d.traceEnabled&&eu(d.host,Z.package_json_has_0_field_1_that_references_2,c,h,_),_}function FSs(s,c,g){return iet(s,"typings",c,g)||iet(s,"types",c,g)}function ZSs(s,c,g){return iet(s,"tsconfig",c,g)}function LSs(s,c,g){return iet(s,"main",c,g)}function VSs(s,c){let g=HWt(s,"typesVersions","object",c);if(g!==void 0)return c.traceEnabled&&eu(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),g}function PSs(s,c){let g=VSs(s,c);if(g===void 0)return;if(c.traceEnabled)for(let S in g)Da(g,S)&&!gt.tryParse(S)&&eu(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,S);let d=T9e(g);if(!d){c.traceEnabled&&eu(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,I);return}let{version:h,paths:_}=d;if(typeof _!="object"){c.traceEnabled&&eu(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${h}']`,"object",typeof _);return}return d}var YWt;function T9e(s){YWt||(YWt=new O(C));for(let c in s){if(!Da(s,c))continue;let g=gt.tryParse(c);if(g!==void 0&&g.test(YWt))return{version:c,paths:s[c]}}}function mde(s,c){if(s.typeRoots)return s.typeRoots;let g;if(s.configFilePath?g=Mo(s.configFilePath):c.getCurrentDirectory&&(g=c.getCurrentDirectory()),g!==void 0)return MSs(g)}function WSs(s){let c;return pE(iu(s),g=>{let d=Ro(g,OSs);(c??(c=[])).push(d)}),c}var OSs=Ro("node_modules","@types");function ken(s,c,g){let d=typeof g.useCaseSensitiveFileNames=="function"?g.useCaseSensitiveFileNames():g.useCaseSensitiveFileNames;return qf(s,c,!d)===0}function MSs(s){let c=WSs(s),g=Ten(s);if(c?.length)return[...c,...g];if(g.length)return g}function xen(s,c,g){let d=Men(s,c,g),h=ken(s,d,c);return{resolvedFileName:h?s:d,originalPath:h?void 0:s}}function Gen(s,c,g){let d=di(s,"/node_modules/@types")||di(s,"/node_modules/@types/")?iOt(c,g):c;return Ro(s,d)}function QWt(s,c,g,d,h,_,S){pe.assert(typeof s=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");let R=VP(g,d);h&&(g=h.commandLine.options);let T=c?Mo(c):void 0,W=T?_?.getFromDirectoryCache(s,S,T,h):void 0;if(!W&&T&&!Xr(s)&&(W=_?.getFromNonRelativeNameCache(s,S,T,h)),W)return R&&(eu(d,Z.Resolving_type_reference_directive_0_containing_file_1,s,c),h&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName),eu(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,s,T),We(W)),W;let V=mde(g,d);R&&(c===void 0?V===void 0?eu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,s):eu(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,s,V):V===void 0?eu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,s,c):eu(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,s,c,V),h&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let M=[],ee=[],re=XWt(g);S!==void 0&&(re|=30);let ge=k_(g);S===99&&3<=ge&&ge<=99&&(re|=32);let Ie=re&8?PP(g,S):[],_e=[],Ee={compilerOptions:g,host:d,traceEnabled:R,failedLookupLocations:M,affectingLocations:ee,packageJsonInfoCache:_,features:re,conditions:Ie,requestContainingDirectory:T,reportDiagnostic:Ye=>void _e.push(Ye),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Ne=Ue(),Te=!0;Ne||(Ne=$e(),Te=!1);let Ze;if(Ne){let{fileName:Ye,packageId:Tt}=Ne,ot=Ye,Qe;g.preserveSymlinks||({resolvedFileName:ot,originalPath:Qe}=xen(Ye,d,R)),Ze={primary:Te,resolvedFileName:ot,originalPath:Qe,packageId:Tt,isExternalLibraryImport:WP(Ye)}}return W={resolvedTypeReferenceDirective:Ze,failedLookupLocations:hde(M),affectingLocations:hde(ee),resolutionDiagnostics:hde(_e)},T&&_&&!_.isReadonly&&(_.getOrCreateCacheForDirectory(T,h).set(s,S,W),Xr(s)||_.getOrCreateCacheForNonRelativeName(s,S,h).set(T,W)),R&&We(W),W;function We(Ye){var Tt;(Tt=Ye.resolvedTypeReferenceDirective)!=null&&Tt.resolvedFileName?Ye.resolvedTypeReferenceDirective.packageId?eu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,oN(Ye.resolvedTypeReferenceDirective.packageId),Ye.resolvedTypeReferenceDirective.primary):eu(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,s,Ye.resolvedTypeReferenceDirective.resolvedFileName,Ye.resolvedTypeReferenceDirective.primary):eu(d,Z.Type_reference_directive_0_was_not_resolved,s)}function Ue(){if(V&&V.length)return R&&eu(d,Z.Resolving_with_primary_search_path_0,V.join(", ")),X(V,Ye=>{let Tt=Gen(Ye,s,Ee),ot=f1(Ye,d);if(!ot&&R&&eu(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,Ye),g.typeRoots){let Qe=Rie(4,Tt,!ot,Ee);if(Qe){let mt=wEe(Qe.path),ht=mt?aQ(mt,!1,Ee):void 0;return OWt(Rz(ht,Qe,Ee))}}return OWt(tOt(4,Tt,!ot,Ee))});R&&eu(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function $e(){let Ye=c&&Mo(c);if(Ye!==void 0){let Tt;if(!g.typeRoots||!di(c,Fde))if(R&&eu(d,Z.Looking_up_in_node_modules_folder_initial_location_0,Ye),Xr(s)){let{path:ot}=Oen(Ye,s);Tt=cet(4,ot,!1,Ee,!0)}else{let ot=zen(4,s,Ye,Ee,void 0,void 0);Tt=ot&&ot.value}else R&&eu(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return OWt(Tt)}else R&&eu(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function XWt(s){let c=0;switch(k_(s)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return s.resolvePackageJsonExports?c|=8:s.resolvePackageJsonExports===!1&&(c&=-9),s.resolvePackageJsonImports?c|=2:s.resolvePackageJsonImports===!1&&(c&=-3),c}function PP(s,c){let g=k_(s);if(c===void 0){if(g===100)c=99;else if(g===2)return[]}let d=c===99?["import"]:["require"];return s.noDtsResolution||d.push("types"),g!==100&&d.push("node"),Nn(d,s.customConditions)}function set(s,c,g,d,h){let _=_de(h?.getPackageJsonInfoCache(),d,g),S=LP(c);if(S)try{let R=S.resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1}),T=Dp(R).replace(/\/$/,"");return aQ(T,!1,_)}catch{return}return vN(d,c,R=>{if(gp(R)!=="node_modules"){let T=Ro(R,"node_modules"),W=Ro(T,s);return aQ(W,!1,_)}})}function R9e(s,c){if(s.types)return s.types;let g=[];if(c.directoryExists&&c.getDirectories){let d=mde(s,c);if(d){for(let h of d)if(c.directoryExists(h))for(let _ of c.getDirectories(h)){let S=iu(_),R=Ro(h,S,"package.json");if(!(c.fileExists(R)&&E3(R,c).typings===null)){let W=gp(S);W.charCodeAt(0)!==46&&g.push(W)}}}}return g}function N9e(s){return!!s?.contents}function JWt(s){return!!s&&!s.contents}function UWt(s){var c;if(s===null||typeof s!="object")return""+s;if(Ki(s))return`[${(c=s.map(d=>UWt(d)))==null?void 0:c.join(",")}]`;let g="{";for(let d in s)Da(s,d)&&(g+=`${d}: ${UWt(s[d])}`);return g+"}"}function oet(s,c){return c.map(g=>UWt(K7(s,g))).join("|")+`|${s.pathsBasePath}`}function Fen(s,c){let g=new Map,d=new Map,h=new Map;return s&&g.set(s,h),{getMapOfCacheRedirects:_,getOrCreateMapOfCacheRedirects:S,update:R,clear:W,getOwnMap:()=>h};function _(M){return M?T(M.commandLine.options,!1):h}function S(M){return M?T(M.commandLine.options,!0):h}function R(M){s!==M&&(s?h=T(M,!0):g.set(M,h),s=M)}function T(M,ee){let re=g.get(M);if(re)return re;let ge=V(M);if(re=d.get(ge),!re){if(s){let Ie=V(s);Ie===ge?re=h:d.has(Ie)||d.set(Ie,h)}ee&&(re??(re=new Map)),re&&d.set(ge,re)}return re&&g.set(M,re),re}function W(){let M=s&&c.get(s);h.clear(),g.clear(),c.clear(),d.clear(),s&&(M&&c.set(s,M),g.set(s,h))}function V(M){let ee=c.get(M);return ee||c.set(M,ee=oet(M,M$e)),ee}}function HSs(s,c){let g;return{getPackageJsonInfo:d,setPackageJsonInfo:h,clear:_,getInternalMap:S};function d(R){return g?.get(Ou(R,s,c))}function h(R,T){(g||(g=new Map)).set(Ou(R,s,c),T)}function _(){g=void 0}function S(){return g}}function Zen(s,c,g,d){let h=s.getOrCreateMapOfCacheRedirects(c),_=h.get(g);return _||(_=d(),h.set(g,_)),_}function YSs(s,c,g,d){let h=Fen(g,d);return{getFromDirectoryCache:T,getOrCreateCacheForDirectory:R,clear:_,update:S,directoryToModuleNameMap:h};function _(){h.clear()}function S(W){h.update(W)}function R(W,V){let M=Ou(W,s,c);return Zen(h,V,M,()=>wie())}function T(W,V,M,ee){var re,ge;let Ie=Ou(M,s,c);return(ge=(re=h.getMapOfCacheRedirects(ee))==null?void 0:re.get(Ie))==null?void 0:ge.get(W,V)}}function Cde(s,c){return c===void 0?s:`${c}|${s}`}function wie(){let s=new Map,c=new Map,g={get(h,_){return s.get(d(h,_))},set(h,_,S){return s.set(d(h,_),S),g},delete(h,_){return s.delete(d(h,_)),g},has(h,_){return s.has(d(h,_))},forEach(h){return s.forEach((_,S)=>{let[R,T]=c.get(S);return h(_,R,T)})},size(){return s.size}};return g;function d(h,_){let S=Cde(h,_);return c.set(S,[h,_]),S}}function QSs(s){return s.resolvedModule&&(s.resolvedModule.originalPath||s.resolvedModule.resolvedFileName)}function XSs(s){return s.resolvedTypeReferenceDirective&&(s.resolvedTypeReferenceDirective.originalPath||s.resolvedTypeReferenceDirective.resolvedFileName)}function JSs(s,c,g,d,h){let _=Fen(g,h);return{getFromNonRelativeNameCache:T,getOrCreateCacheForNonRelativeName:W,clear:S,update:R};function S(){_.clear()}function R(M){_.update(M)}function T(M,ee,re,ge){var Ie,_e;return pe.assert(!Xr(M)),(_e=(Ie=_.getMapOfCacheRedirects(ge))==null?void 0:Ie.get(Cde(M,ee)))==null?void 0:_e.get(re)}function W(M,ee,re){return pe.assert(!Xr(M)),Zen(_,re,Cde(M,ee),V)}function V(){let M=new Map;return{get:ee,set:re};function ee(Ie){return M.get(Ou(Ie,s,c))}function re(Ie,_e){let Ee=Ou(Ie,s,c);if(M.has(Ee))return;M.set(Ee,_e);let Ne=d(_e),Te=Ne&&ge(Ee,Ne),Ze=Ee;for(;Ze!==Te;){let We=Mo(Ze);if(We===Ze||M.has(We))break;M.set(We,_e),Ze=We}}function ge(Ie,_e){let Ee=Ou(Mo(_e),s,c),Ne=0,Te=Math.min(Ie.length,Ee.length);for(;Ned,clearAllExceptPackageJsonInfoCache:W,optionsToRedirectsKey:_};function T(){W(),d.clear()}function W(){S.clear(),R.clear()}function V(M){S.update(M),R.update(M)}}function Tie(s,c,g,d,h){let _=Len(s,c,g,d,QSs,h);return _.getOrCreateCacheForModuleName=(S,R,T)=>_.getOrCreateCacheForNonRelativeName(S,R,T),_}function D9e(s,c,g,d,h){return Len(s,c,g,d,XSs,h)}function aet(s){return{moduleResolution:2,traceResolution:s.traceResolution}}function k9e(s,c,g,d,h){return BU(s,c,aet(g),d,h)}function Ven(s,c,g,d){let h=Mo(c);return g.getFromDirectoryCache(s,d,h,void 0)}function BU(s,c,g,d,h,_,S){let R=VP(g,d);_&&(g=_.commandLine.options),R&&(eu(d,Z.Resolving_module_0_from_1,s,c),_&&eu(d,Z.Using_compiler_options_of_project_reference_redirect_0,_.sourceFile.fileName));let T=Mo(c),W=h?.getFromDirectoryCache(s,S,T,_);if(W)R&&eu(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,s,T);else{let V=g.moduleResolution;switch(V===void 0?(V=k_(g),R&&eu(d,Z.Module_resolution_kind_is_not_specified_using_0,z_[V])):R&&eu(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,z_[V]),V){case 3:W=zSs(s,c,g,d,h,_,S);break;case 99:W=qSs(s,c,g,d,h,_,S);break;case 2:W=qWt(s,c,g,d,h,_,S?PP(g,S):void 0);break;case 1:W=oOt(s,c,g,d,h,_);break;case 100:W=zWt(s,c,g,d,h,_,S?PP(g,S):void 0);break;default:return pe.fail(`Unexpected moduleResolution: ${V}`)}h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(T,_).set(s,S,W),Xr(s)||h.getOrCreateCacheForNonRelativeName(s,S,_).set(T,W))}return R&&(W.resolvedModule?W.resolvedModule.packageId?eu(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,s,W.resolvedModule.resolvedFileName,oN(W.resolvedModule.packageId)):eu(d,Z.Module_name_0_was_successfully_resolved_to_1,s,W.resolvedModule.resolvedFileName):eu(d,Z.Module_name_0_was_not_resolved,s)),W}function Pen(s,c,g,d,h){let _=USs(s,c,d,h);return _?_.value:Xr(c)?KSs(s,c,g,d,h):jSs(s,c,d,h)}function USs(s,c,g,d){let{baseUrl:h,paths:_}=d.compilerOptions;if(_&&!Ip(c)){d.traceEnabled&&(h&&eu(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),eu(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let S=oAe(d.compilerOptions,d.host),R=$7(_);return rOt(s,c,S,_,R,g,!1,d)}}function KSs(s,c,g,d,h){if(!h.compilerOptions.rootDirs)return;h.traceEnabled&&eu(h.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let _=iu(Ro(g,c)),S,R;for(let T of h.compilerOptions.rootDirs){let W=iu(T);di(W,ag)||(W+=ag);let V=Ac(_,W)&&(R===void 0||R.length(s[s.None=0]="None",s[s.Imports=2]="Imports",s[s.SelfName=4]="SelfName",s[s.Exports=8]="Exports",s[s.ExportsPatternTrailers=16]="ExportsPatternTrailers",s[s.AllFeatures=30]="AllFeatures",s[s.Node16Default=30]="Node16Default",s[s.NodeNextDefault=30]="NodeNextDefault",s[s.BundlerDefault=30]="BundlerDefault",s[s.EsmMode=32]="EsmMode",s))(jWt||{});function zSs(s,c,g,d,h,_,S){return Wen(30,s,c,g,d,h,_,S)}function qSs(s,c,g,d,h,_,S){return Wen(30,s,c,g,d,h,_,S)}function Wen(s,c,g,d,h,_,S,R,T){let W=Mo(g),V=R===99?32:0,M=d.noDtsResolution?3:7;return NP(d)&&(M|=8),BEe(s|V,c,W,d,h,_,M,!1,S,T)}function $Ss(s,c,g){return BEe(0,s,c,{moduleResolution:2,allowJs:!0},g,void 0,2,!1,void 0,void 0)}function zWt(s,c,g,d,h,_,S){let R=Mo(c),T=g.noDtsResolution?3:7;return NP(g)&&(T|=8),BEe(XWt(g),s,R,g,d,h,T,!1,_,S)}function qWt(s,c,g,d,h,_,S,R){let T;return R?T=8:g.noDtsResolution?(T=3,NP(g)&&(T|=8)):T=NP(g)?15:7,BEe(S?30:0,s,Mo(c),g,d,h,T,!!R,_,S)}function $Wt(s,c,g){return BEe(30,s,Mo(c),{moduleResolution:99},g,void 0,8,!0,void 0,void 0)}function BEe(s,c,g,d,h,_,S,R,T,W){var V,M,ee,re,ge;let Ie=VP(d,h),_e=[],Ee=[],Ne=k_(d);W??(W=PP(d,Ne===100||Ne===2?void 0:s&32?99:1));let Te=[],Ze={compilerOptions:d,host:h,traceEnabled:Ie,failedLookupLocations:_e,affectingLocations:Ee,packageJsonInfoCache:_,features:s,conditions:W??E,requestContainingDirectory:g,reportDiagnostic:Ye=>void Te.push(Ye),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ie&&lU(Ne)&&eu(h,Z.Resolving_in_0_mode_with_conditions_1,s&32?"ESM":"CJS",Ze.conditions.map(Ye=>`'${Ye}'`).join(", "));let We;if(Ne===2){let Ye=S&5,Tt=S&-6;We=Ye&&$e(Ye,Ze)||Tt&&$e(Tt,Ze)||void 0}else We=$e(S,Ze);let Ue;if(Ze.resolvedPackageDirectory&&!R&&!Xr(c)){let Ye=We?.value&&S&5&&!Uen(5,We.value.resolved.extension);if((V=We?.value)!=null&&V.isExternalLibraryImport&&Ye&&s&8&&W?.includes("import")){OP(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let Tt={...Ze,features:Ze.features&-9,reportDiagnostic:Dc},ot=$e(S&5,Tt);(M=ot?.value)!=null&&M.isExternalLibraryImport&&(Ue=ot.value.resolved.path)}else if((!We?.value||Ye)&&Ne===2){OP(Ze,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let Tt={...Ze.compilerOptions,moduleResolution:100},ot={...Ze,compilerOptions:Tt,features:30,conditions:PP(Tt),reportDiagnostic:Dc},Qe=$e(S&5,ot);(ee=Qe?.value)!=null&&ee.isExternalLibraryImport&&(Ue=Qe.value.resolved.path)}}return Nen(c,(re=We?.value)==null?void 0:re.resolved,(ge=We?.value)==null?void 0:ge.isExternalLibraryImport,_e,Ee,Te,Ze,_,Ue);function $e(Ye,Tt){let Qe=Pen(Ye,c,g,(mt,ht,_t,Rt)=>cet(mt,ht,_t,Rt,!0),Tt);if(Qe)return h2({resolved:Qe,isExternalLibraryImport:WP(Qe.path)});if(Xr(c)){let{path:mt,parts:ht}=Oen(g,c),_t=cet(Ye,mt,!1,Tt,!0);return _t&&h2({resolved:_t,isExternalLibraryImport:k(ht,"node_modules")})}else{if(s&2&&Ac(c,"#")){let ht=svs(Ye,c,g,Tt,_,T);if(ht)return ht.value&&{value:{resolved:ht.value,isExternalLibraryImport:!1}}}if(s&4){let ht=ivs(Ye,c,g,Tt,_,T);if(ht)return ht.value&&{value:{resolved:ht.value,isExternalLibraryImport:!1}}}if(c.includes(":")){Ie&&eu(h,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,w9e(Ye));return}Ie&&eu(h,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,w9e(Ye));let mt=zen(Ye,c,g,Tt,_,T);return Ye&4&&(mt??(mt=rtn(c,Tt))),mt&&{value:mt.value&&{resolved:mt.value,isExternalLibraryImport:!0}}}}}function Oen(s,c){let g=Ro(s,c),d=Np(g),h=li(d);return{path:h==="."||h===".."?hp(iu(g)):iu(g),parts:d}}function Men(s,c,g){if(!c.realpath)return s;let d=iu(c.realpath(s));return g&&eu(c,Z.Resolving_real_path_for_0_result_1,s,d),d}function cet(s,c,g,d,h){if(d.traceEnabled&&eu(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,w9e(s)),!Jp(c)){if(!g){let S=Mo(c);f1(S,d.host)||(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,S),g=!0)}let _=Rie(s,c,g,d);if(_){let S=h?wEe(_.path):void 0,R=S?aQ(S,!1,d):void 0;return Rz(R,_,d)}}if(g||f1(c,d.host)||(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),g=!0),!(d.features&32))return tOt(s,c,g,d,h)}var Vx="/node_modules/";function WP(s){return s.includes(Vx)}function wEe(s,c){let g=iu(s),d=g.lastIndexOf(Vx);if(d===-1)return;let h=d+Vx.length,_=Hen(g,h,c);return g.charCodeAt(h)===64&&(_=Hen(g,_,c)),g.slice(0,_)}function Hen(s,c,g){let d=s.indexOf(ag,c+1);return d===-1?g?s.length:c:d}function eOt(s,c,g,d){return net(Rie(s,c,g,d))}function Rie(s,c,g,d){let h=Yen(s,c,g,d);if(h)return h;if(!(d.features&32)){let _=Qen(c,s,"",g,d);if(_)return _}}function Yen(s,c,g,d){if(!gp(c).includes("."))return;let _=s0(c);_===c&&(_=c.substring(0,c.lastIndexOf(".")));let S=c.substring(_.length);return d.traceEnabled&&eu(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,S),Qen(_,s,S,g,d)}function uet(s,c,g,d,h){if(s&1&&fu(c,Yne)||s&4&&fu(c,LAe)){let _=get(c,d,h),S=O7(c);return _!==void 0?{path:c,ext:S,resolvedUsingTsExtension:g?!di(g,S):void 0}:void 0}return h.isConfigLookup&&s===8&&aA(c,".json")?get(c,d,h)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:Yen(s,c,d,h)}function Qen(s,c,g,d,h){if(!d){let S=Mo(s);S&&(d=!f1(S,h.host))}switch(g){case".mjs":case".mts":case".d.mts":return c&1&&_(".mts",g===".mts"||g===".d.mts")||c&4&&_(".d.mts",g===".mts"||g===".d.mts")||c&2&&_(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&_(".cts",g===".cts"||g===".d.cts")||c&4&&_(".d.cts",g===".cts"||g===".d.cts")||c&2&&_(".cjs")||void 0;case".json":return c&4&&_(".d.json.ts")||c&8&&_(".json")||void 0;case".tsx":case".jsx":return c&1&&(_(".tsx",g===".tsx")||_(".ts",g===".tsx"))||c&4&&_(".d.ts",g===".tsx")||c&2&&(_(".jsx")||_(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(_(".ts",g===".ts"||g===".d.ts")||_(".tsx",g===".ts"||g===".d.ts"))||c&4&&_(".d.ts",g===".ts"||g===".d.ts")||c&2&&(_(".js")||_(".jsx"))||h.isConfigLookup&&_(".json")||void 0;default:return c&4&&!PC(s+g)&&_(`.d${g}.ts`)||void 0}function _(S,R){let T=get(s+S,d,h);return T===void 0?void 0:{path:T,ext:S,resolvedUsingTsExtension:!h.candidateIsFromPackageJsonField&&R}}}function get(s,c,g){var d;if(!((d=g.compilerOptions.moduleSuffixes)!=null&&d.length))return Xen(s,c,g);let h=QT(s)??"",_=h?Xne(s,h):s;return F(g.compilerOptions.moduleSuffixes,S=>Xen(_+S+h,c,g))}function Xen(s,c,g){var d;if(!c){if(g.host.fileExists(s))return g.traceEnabled&&eu(g.host,Z.File_0_exists_use_it_as_a_name_resolution_result,s),s;g.traceEnabled&&eu(g.host,Z.File_0_does_not_exist,s)}(d=g.failedLookupLocations)==null||d.push(s)}function tOt(s,c,g,d,h=!0){let _=h?aQ(c,g,d):void 0;return Rz(_,det(s,c,g,d,_),d)}function Aet(s,c,g,d,h){if(!h&&s.contents.resolvedEntrypoints!==void 0)return s.contents.resolvedEntrypoints;let _,S=5|(h?2:0),R=XWt(c),T=_de(d?.getPackageJsonInfoCache(),g,c);T.conditions=PP(c),T.requestContainingDirectory=s.packageDirectory;let W=det(S,s.packageDirectory,!1,T,s);if(_=Ft(_,W?.path),R&8&&s.contents.packageJsonContent.exports){let V=io([PP(c,99),PP(c,1)],Sc);for(let M of V){let ee={...T,failedLookupLocations:[],conditions:M,host:g},re=evs(s,s.contents.packageJsonContent.exports,ee,S);if(re)for(let ge of re)_=ps(_,ge.path)}}return s.contents.resolvedEntrypoints=_||!1}function evs(s,c,g,d){let h;if(Ki(c))for(let S of c)_(S);else if(typeof c=="object"&&c!==null&&x9e(c))for(let S in c)_(c[S]);else _(c);return h;function _(S){var R,T;if(typeof S=="string"&&Ac(S,"./"))if(S.includes("*")&&g.host.readDirectory){if(S.indexOf("*")!==S.lastIndexOf("*"))return!1;g.host.readDirectory(s.packageDirectory,GSs(d),void 0,[i_(R3(S,"**/*"),".*")]).forEach(W=>{h=ps(h,{path:W,ext:gE(W),resolvedUsingTsExtension:void 0})})}else{let W=Np(S).slice(2);if(W.includes("..")||W.includes(".")||W.includes("node_modules"))return!1;let V=Ro(s.packageDirectory,S),M=Xc(V,(T=(R=g.host).getCurrentDirectory)==null?void 0:T.call(R)),ee=uet(d,M,S,!1,g);if(ee)return h=ps(h,ee,(re,ge)=>re.path===ge.path),!0}else if(Array.isArray(S)){for(let W of S)if(_(W))return!0}else if(typeof S=="object"&&S!==null)return F(_g(S),W=>{if(W==="default"||k(g.conditions,W)||REe(g.conditions,W))return _(S[W]),!0})}}function _de(s,c,g){return{host:c,compilerOptions:g,traceEnabled:VP(g,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:s,features:0,conditions:E,requestContainingDirectory:void 0,reportDiagnostic:Dc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function yde(s,c){return vN(c.host,s,g=>aQ(g,!1,c))}function Jen(s,c){return s.contents.versionPaths===void 0&&(s.contents.versionPaths=PSs(s.contents.packageJsonContent,c)||!1),s.contents.versionPaths||void 0}function tvs(s,c){return s.contents.peerDependencies===void 0&&(s.contents.peerDependencies=rvs(s,c)||!1),s.contents.peerDependencies||void 0}function rvs(s,c){let g=HWt(s.contents.packageJsonContent,"peerDependencies","object",c);if(g===void 0)return;c.traceEnabled&&eu(c.host,Z.package_json_has_a_peerDependencies_field);let d=Men(s.packageDirectory,c.host,c.traceEnabled),h=d.substring(0,d.lastIndexOf("node_modules")+12)+ag,_="";for(let S in g)if(Da(g,S)){let R=aQ(h+S,!1,c);if(R){let T=R.contents.packageJsonContent.version;_+=`+${S}@${T}`,c.traceEnabled&&eu(c.host,Z.Found_peerDependency_0_with_1_version,S,T)}else c.traceEnabled&&eu(c.host,Z.Failed_to_find_peerDependency_0,S)}return _}function aQ(s,c,g){var d,h,_,S,R,T;let{host:W,traceEnabled:V}=g,M=Ro(s,"package.json");if(c){(d=g.failedLookupLocations)==null||d.push(M);return}let ee=(h=g.packageJsonInfoCache)==null?void 0:h.getPackageJsonInfo(M);if(ee!==void 0){if(N9e(ee))return V&&eu(W,Z.File_0_exists_according_to_earlier_cached_lookups,M),(_=g.affectingLocations)==null||_.push(M),ee.packageDirectory===s?ee:{packageDirectory:s,contents:ee.contents};ee.directoryExists&&V&&eu(W,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,M),(S=g.failedLookupLocations)==null||S.push(M);return}let re=f1(s,W);if(re&&W.fileExists(M)){let ge=E3(M,W);V&&eu(W,Z.Found_package_json_at_0,M);let Ie={packageDirectory:s,contents:{packageJsonContent:ge,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,Ie),(R=g.affectingLocations)==null||R.push(M),Ie}else re&&V&&eu(W,Z.File_0_does_not_exist,M),g.packageJsonInfoCache&&!g.packageJsonInfoCache.isReadonly&&g.packageJsonInfoCache.setPackageJsonInfo(M,{packageDirectory:s,directoryExists:re}),(T=g.failedLookupLocations)==null||T.push(M)}function det(s,c,g,d,h){let _=h&&Jen(h,d),S;h&&ken(h?.packageDirectory,c,d.host)&&(d.isConfigLookup?S=ZSs(h.contents.packageJsonContent,h.packageDirectory,d):S=s&4&&FSs(h.contents.packageJsonContent,h.packageDirectory,d)||s&7&&LSs(h.contents.packageJsonContent,h.packageDirectory,d)||void 0);let R=(ee,re,ge,Ie)=>{let _e=uet(ee,re,void 0,ge,Ie);if(_e)return net(_e);let Ee=ee===4?5:ee,Ne=Ie.features,Te=Ie.candidateIsFromPackageJsonField;Ie.candidateIsFromPackageJsonField=!0,h?.contents.packageJsonContent.type!=="module"&&(Ie.features&=-33);let Ze=cet(Ee,re,ge,Ie,!1);return Ie.features=Ne,Ie.candidateIsFromPackageJsonField=Te,Ze},T=S?!f1(Mo(S),d.host):void 0,W=g||!f1(c,d.host),V=Ro(c,d.isConfigLookup?"tsconfig":"index");if(_&&(!S||Jh(c,S))){let ee=mp(c,S||V,!1);d.traceEnabled&&eu(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,_.version,C,ee);let re=$7(_.paths),ge=rOt(s,ee,c,_.paths,re,R,T||W,d);if(ge)return Ren(ge.value)}let M=S&&Ren(R(s,S,T,d));if(M)return M;if(!(d.features&32))return Rie(s,V,W,d)}function Uen(s,c){return s&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||s&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||s&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||s&8&&c===".json"||!1}function TEe(s){let c=s.indexOf(ag);return s[0]==="@"&&(c=s.indexOf(ag,c+1)),c===-1?{packageName:s,rest:""}:{packageName:s.slice(0,c),rest:s.slice(c+1)}}function x9e(s){return ue(_g(s),c=>Ac(c,"."))}function nvs(s){return!jt(_g(s),c=>Ac(c,"."))}function ivs(s,c,g,d,h,_){var S,R;let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),W=yde(T,d);if(!W||!W.contents.packageJsonContent.exports||typeof W.contents.packageJsonContent.name!="string")return;let V=Np(c),M=Np(W.contents.packageJsonContent.name);if(!ue(M,(_e,Ee)=>V[Ee]===_e))return;let ee=V.slice(M.length),re=B(ee)?`.${ag}${ee.join(ag)}`:".";if(TF(d.compilerOptions)&&!WP(g))return pet(W,s,re,d,h,_);let ge=s&5,Ie=s&-6;return pet(W,ge,re,d,h,_)||pet(W,Ie,re,d,h,_)}function pet(s,c,g,d,h,_){if(s.contents.packageJsonContent.exports){if(g==="."){let S;if(typeof s.contents.packageJsonContent.exports=="string"||Array.isArray(s.contents.packageJsonContent.exports)||typeof s.contents.packageJsonContent.exports=="object"&&nvs(s.contents.packageJsonContent.exports)?S=s.contents.packageJsonContent.exports:Da(s.contents.packageJsonContent.exports,".")&&(S=s.contents.packageJsonContent.exports["."]),S)return jen(c,d,h,_,g,s,!1)(S,"",!1,".")}else if(x9e(s.contents.packageJsonContent.exports)){if(typeof s.contents.packageJsonContent.exports!="object")return d.traceEnabled&&eu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),h2(void 0);let S=Ken(c,d,h,_,g,s.contents.packageJsonContent.exports,s,!1);if(S)return S}return d.traceEnabled&&eu(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,g,s.packageDirectory),h2(void 0)}}function svs(s,c,g,d,h,_){var S,R;if(c==="#"||Ac(c,"#/"))return d.traceEnabled&&eu(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),h2(void 0);let T=Xc(g,(R=(S=d.host).getCurrentDirectory)==null?void 0:R.call(S)),W=yde(T,d);if(!W)return d.traceEnabled&&eu(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,T),h2(void 0);if(!W.contents.packageJsonContent.imports)return d.traceEnabled&&eu(d.host,Z.package_json_scope_0_has_no_imports_defined,W.packageDirectory),h2(void 0);let V=Ken(s,d,h,_,c,W.contents.packageJsonContent.imports,W,!0);return V||(d.traceEnabled&&eu(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,W.packageDirectory),h2(void 0))}function fet(s,c){let g=s.indexOf("*"),d=c.indexOf("*"),h=g===-1?s.length:g+1,_=d===-1?c.length:d+1;return h>_?-1:_>h||g===-1?1:d===-1||s.length>c.length?-1:c.length>s.length?1:0}function Ken(s,c,g,d,h,_,S,R){let T=jen(s,c,g,d,h,S,R);if(!di(h,ag)&&!h.includes("*")&&Da(_,h)){let M=_[h];return T(M,"",!1,h)}let W=bo(Me(_g(_),M=>ovs(M)||di(M,"/")),fet);for(let M of W)if(c.features&16&&V(M,h)){let ee=_[M],re=M.indexOf("*"),ge=h.substring(M.substring(0,re).length,h.length-(M.length-1-re));return T(ee,ge,!0,M)}else if(di(M,"*")&&Ac(h,M.substring(0,M.length-1))){let ee=_[M],re=h.substring(M.length-1);return T(ee,re,!0,M)}else if(Ac(h,M)){let ee=_[M],re=h.substring(M.length);return T(ee,re,!1,M)}function V(M,ee){if(di(M,"*"))return!1;let re=M.indexOf("*");return re===-1?!1:Ac(ee,M.substring(0,re))&&di(ee,M.substring(re+1))}}function ovs(s){let c=s.indexOf("*");return c!==-1&&c===s.lastIndexOf("*")}function jen(s,c,g,d,h,_,S){return R;function R(T,W,V,M){var ee,re;if(typeof T=="string"){if(!V&&W.length>0&&!di(T,"/"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);if(!Ac(T,"./")){if(S&&!Ac(T,"../")&&!Ac(T,"/")&&!Xp(T)){let $e=V?T.replace(/\*/g,W):T+W;OP(c,Z.Using_0_subpath_1_with_target_2,"imports",M,$e),OP(c,Z.Resolving_module_0_from_1,$e,_.packageDirectory+"/");let Ye=BEe(c.features,$e,_.packageDirectory+"/",c.compilerOptions,c.host,g,s,!1,d,c.conditions);return(ee=c.failedLookupLocations)==null||ee.push(...Ye.failedLookupLocations??E),(re=c.affectingLocations)==null||re.push(...Ye.affectingLocations??E),h2(Ye.resolvedModule?{path:Ye.resolvedModule.resolvedFileName,extension:Ye.resolvedModule.extension,packageId:Ye.resolvedModule.packageId,originalPath:Ye.resolvedModule.originalPath,resolvedUsingTsExtension:Ye.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0)}let Ne=(Ip(T)?Np(T).slice(1):Np(T)).slice(1);if(Ne.includes("..")||Ne.includes(".")||Ne.includes("node_modules"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);let Te=Ro(_.packageDirectory,T),Ze=Np(W);if(Ze.includes("..")||Ze.includes(".")||Ze.includes("node_modules"))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);c.traceEnabled&&eu(c.host,Z.Using_0_subpath_1_with_target_2,S?"imports":"exports",M,V?T.replace(/\*/g,W):T+W);let We=ge(V?Te.replace(/\*/g,W):Te+W),Ue=_e(We,W,Ro(_.packageDirectory,"package.json"),S);return Ue||h2(Rz(_,uet(s,We,T,!1,c),c))}else if(typeof T=="object"&&T!==null)if(Array.isArray(T)){if(!B(T))return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);for(let Ee of T){let Ne=R(Ee,W,V,M);if(Ne)return Ne}}else{OP(c,Z.Entering_conditional_exports);for(let Ee of _g(T))if(Ee==="default"||c.conditions.includes(Ee)||REe(c.conditions,Ee)){OP(c,Z.Matched_0_condition_1,S?"imports":"exports",Ee);let Ne=T[Ee],Te=R(Ne,W,V,M);if(Te)return OP(c,Z.Resolved_under_condition_0,Ee),OP(c,Z.Exiting_conditional_exports),Te;OP(c,Z.Failed_to_resolve_under_condition_0,Ee)}else OP(c,Z.Saw_non_matching_condition_0,Ee);OP(c,Z.Exiting_conditional_exports);return}else if(T===null)return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,_.packageDirectory,h),h2(void 0);return c.traceEnabled&&eu(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,_.packageDirectory,h),h2(void 0);function ge(Ee){var Ne,Te;return Ee===void 0?Ee:Xc(Ee,(Te=(Ne=c.host).getCurrentDirectory)==null?void 0:Te.call(Ne))}function Ie(Ee,Ne){return hp(Ro(Ee,Ne))}function _e(Ee,Ne,Te,Ze){var We,Ue,$e,Ye;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ee.includes("/node_modules/")&&(!c.compilerOptions.configFile||Jh(_.packageDirectory,ge(c.compilerOptions.configFile.fileName),!Iet(c)))){let ot=JD({useCaseSensitiveFileNames:()=>Iet(c)}),Qe=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let mt=ge(xde(c.compilerOptions,()=>[],((Ue=(We=c.host).getCurrentDirectory)==null?void 0:Ue.call(We))||"",ot));Qe.push(mt)}else if(c.requestContainingDirectory){let mt=ge(Ro(c.requestContainingDirectory,"index.ts")),ht=ge(xde(c.compilerOptions,()=>[mt,ge(Te)],((Ye=($e=c.host).getCurrentDirectory)==null?void 0:Ye.call($e))||"",ot));Qe.push(ht);let _t=hp(ht);for(;_t&&_t.length>1;){let Rt=Np(_t);Rt.pop();let Lt=Dm(Rt);Qe.unshift(Lt),_t=hp(Lt)}}Qe.length>1&&c.reportDiagnostic(Nf(Ze?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,Ne===""?".":Ne,Te));for(let mt of Qe){let ht=Tt(mt);for(let _t of ht)if(Jh(_t,Ee,!Iet(c))){let Rt=Ee.slice(_t.length+1),Lt=Ro(mt,Rt),Ke=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let Pt of Ke)if(aA(Lt,Pt)){let _r=Hye(Lt);for(let Gt of _r){if(!Uen(s,Gt))continue;let nt=K2(Lt,Gt,Pt,!Iet(c));if(c.host.fileExists(nt))return h2(Rz(_,uet(s,nt,void 0,!1,c),c))}}}}}return;function Tt(ot){var Qe,mt;let ht=c.compilerOptions.configFile?((mt=(Qe=c.host).getCurrentDirectory)==null?void 0:mt.call(Qe))||"":ot,_t=[];return c.compilerOptions.declarationDir&&_t.push(ge(Ie(ht,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&_t.push(ge(Ie(ht,c.compilerOptions.outDir))),_t}}}}function REe(s,c){if(!s.includes("types")||!Ac(c,"types@"))return!1;let g=gt.tryParse(c.substring(6));return g?g.test(C):!1}function zen(s,c,g,d,h,_){return qen(s,c,g,d,!1,h,_)}function avs(s,c,g){return qen(4,s,c,g,!0,void 0,void 0)}function qen(s,c,g,d,h,_,S){let R=d.features===0?void 0:d.features&32||d.conditions.includes("import")?99:1,T=s&5,W=s&-6;if(T){OP(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,w9e(T));let M=V(T);if(M)return M}if(W&&!h)return OP(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,w9e(W)),V(W);function V(M){let ee=Dp(g);if(LP(ee)){let re=sOt(_,c,R,ee,S,d);return re||h2(cvs(M,c,ee,d,h,_,S))}return vN(d.host,Dp(g),re=>{if(gp(re)!=="node_modules"){let ge=sOt(_,c,R,re,S,d);return ge||h2($en(M,c,re,d,h,_,S))}})}}function vN(s,c,g){var d;let h=(d=s?.getGlobalTypingsCacheLocation)==null?void 0:d.call(s);return pE(c,_=>{let S=g(_);if(S!==void 0)return S;if(_===h)return!1})||void 0}function $en(s,c,g,d,h,_,S){let R=Ro(g,"node_modules"),T=f1(R,d.host);if(!T&&d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!h){let W=etn(s,c,R,T,d,_,S);if(W)return W}if(s&4){let W=Ro(R,"@types"),V=T;return T&&!f1(W,d.host)&&(d.traceEnabled&&eu(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,W),V=!1),etn(4,iOt(c,d),W,V,d,_,S)}}function cvs(s,c,g,d,h,_,S){let R=Dp(g);if(!h){let T=ntn(s,c,R,d,_,S);if(T)return T}if(s&4)return ntn(4,`@types/${iOt(c,d)}`,R,d,_,S)}function etn(s,c,g,d,h,_,S){let R=iu(Ro(g,c)),{packageName:T,rest:W}=TEe(c),V=Ro(g,T);return ttn(s,d,h,_,S,R,W,V)}function lvs(s,c,g,d,h,_){let S=iu(Ro(c,g));return ttn(s,!0,d,h,_,S,g,c)}function ttn(s,c,g,d,h,_,S,R){var T,W;let V,M=aQ(_,!c,g);if(S!==""&&M&&(!(g.features&8)||!Da(((T=V=aQ(R,!c,g))==null?void 0:T.contents.packageJsonContent)??E,"exports"))){let ge=Rie(s,_,!c,g);if(ge)return net(ge);let Ie=det(s,_,!c,g,M);return Rz(M,Ie,g)}let ee=(ge,Ie,_e,Ee)=>{let Ne=(S||!(Ee.features&32))&&Rie(ge,Ie,_e,Ee)||det(ge,Ie,_e,Ee,M);return!Ne&&!S&&M&&(M.contents.packageJsonContent.exports===void 0||M.contents.packageJsonContent.exports===null)&&Ee.features&32&&(Ne=Rie(ge,Ro(Ie,"index.js"),_e,Ee)),Rz(M,Ne,Ee)};if(S!==""&&(M=V??aQ(R,!c,g)),M&&(g.resolvedPackageDirectory=!0),M&&M.contents.packageJsonContent.exports&&g.features&8)return(W=pet(M,s,Ro(".",S),g,d,h))==null?void 0:W.value;let re=S!==""&&M?Jen(M,g):void 0;if(re){g.traceEnabled&&eu(g.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,C,S);let ge=c&&f1(R,g.host),Ie=$7(re.paths),_e=rOt(s,S,R,re.paths,Ie,ee,!ge,g);if(_e)return _e.value}return ee(s,_,!c,g)}function rOt(s,c,g,d,h,_,S,R){let T=Tbe(h,c);if(T){let W=Xs(T)?void 0:pw(T,c),V=Xs(T)?T:j1(T);return R.traceEnabled&&eu(R.host,Z.Module_name_0_matched_pattern_1,c,V),{value:F(d[V],ee=>{let re=W?R3(ee,W):ee,ge=iu(Ro(g,re));R.traceEnabled&&eu(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,ee,re);let Ie=QT(ee);if(Ie!==void 0){let _e=get(ge,S,R);if(_e!==void 0)return net({path:_e,ext:Ie,resolvedUsingTsExtension:void 0})}return _(s,ge,S||!f1(Mo(ge),R.host),R)})}}}var nOt="__";function iOt(s,c){let g=Nie(s);return c.traceEnabled&&g!==s&&eu(c.host,Z.Scoped_package_detected_looking_in_0,g),g}function G9e(s){return`@types/${Nie(s)}`}function Nie(s){if(Ac(s,"@")){let c=s.replace(ag,nOt);if(c!==s)return c.slice(1)}return s}function bde(s){let c=Nm(s,"@types/");return c!==s?NEe(c):s}function NEe(s){return s.includes(nOt)?"@"+s.replace(nOt,ag):s}function sOt(s,c,g,d,h,_){let S=s&&s.getFromNonRelativeNameCache(c,g,d,h);if(S)return _.traceEnabled&&eu(_.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),_.resultFromCache=S,{value:S.resolvedModule&&{path:S.resolvedModule.resolvedFileName,originalPath:S.resolvedModule.originalPath||!0,extension:S.resolvedModule.extension,packageId:S.resolvedModule.packageId,resolvedUsingTsExtension:S.resolvedModule.resolvedUsingTsExtension}}}function oOt(s,c,g,d,h,_){let S=VP(g,d),R=[],T=[],W=Mo(c),V=[],M={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:W,reportDiagnostic:ge=>void V.push(ge),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},ee=re(5)||re(2|(g.resolveJsonModule?8:0));return Nen(s,ee&&ee.value,ee?.value&&WP(ee.value.path),R,T,V,M,h);function re(ge){let Ie=Pen(ge,s,W,eOt,M);if(Ie)return{value:Ie};if(Xr(s)){let _e=iu(Ro(W,s));return h2(eOt(ge,_e,!1,M))}else{let _e=vN(M.host,W,Ee=>{let Ne=sOt(h,s,void 0,Ee,_,M);if(Ne)return Ne;let Te=iu(Ro(Ee,s));return h2(eOt(ge,Te,!1,M))});if(_e)return _e;if(ge&5){let Ee=avs(s,W,M);return ge&4&&(Ee??(Ee=rtn(s,M))),Ee}}}}function rtn(s,c){if(c.compilerOptions.typeRoots)for(let g of c.compilerOptions.typeRoots){let d=Gen(g,s,c),h=f1(g,c.host);!h&&c.traceEnabled&&eu(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,g);let _=Rie(4,d,!h,c);if(_){let R=wEe(_.path),T=R?aQ(R,!1,c):void 0;return h2(Rz(T,_,c))}let S=tOt(4,d,!h,c);if(S)return h2(S)}}function Die(s,c){return eLe(s)||!!c&&PC(c)}function aOt(s,c,g,d,h,_){let S=VP(g,d);S&&eu(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,s,h);let R=[],T=[],W=[],V={compilerOptions:g,host:d,traceEnabled:S,failedLookupLocations:R,affectingLocations:T,packageJsonInfoCache:_,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:ee=>void W.push(ee),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},M=$en(4,s,h,V,!1,void 0,void 0);return Den(M,!0,R,T,W,V.resultFromCache,void 0)}function h2(s){return s!==void 0?{value:s}:void 0}function OP(s,c,...g){s.traceEnabled&&eu(s.host,c,...g)}function Iet(s){return s.host.useCaseSensitiveFileNames?typeof s.host.useCaseSensitiveFileNames=="boolean"?s.host.useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames():!0}function uvs(s,c){try{let g=LP(c).resolveToUnqualified(s,`${c}/`,{considerBuiltins:!1});return Dp(g).replace(/\/$/,"")}catch{}}function ntn(s,c,g,d,h,_){let{packageName:S,rest:R}=TEe(c),T=uvs(S,g);return T?lvs(s,T,R,d,h,_):void 0}var cOt=(s=>(s[s.NonInstantiated=0]="NonInstantiated",s[s.Instantiated=1]="Instantiated",s[s.ConstEnumOnly=2]="ConstEnumOnly",s))(cOt||{});function PF(s,c){return s.body&&!s.body.parent&&(XA(s.body,s),UL(s.body,!1)),s.body?lOt(s.body,c):1}function lOt(s,c=new Map){let g=rd(s);if(c.has(g))return c.get(g)||0;c.set(g,void 0);let d=gvs(s,c);return c.set(g,d),d}function gvs(s,c){switch(s.kind){case 265:case 266:return 0;case 267:if(VA(s))return 2;break;case 273:case 272:if(!Ga(s,32))return 0;break;case 279:let g=s;if(!g.moduleSpecifier&&g.exportClause&&g.exportClause.kind===280){let d=0;for(let h of g.exportClause.elements){let _=Avs(h,c);if(_>d&&(d=_),d===1)return d}return d}break;case 269:{let d=0;return Lu(s,h=>{let _=lOt(h,c);switch(_){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:pe.assertNever(_)}}),d}case 268:return PF(s,c);case 80:if(s.flags&4096)return 0}return 1}function Avs(s,c){let g=s.propertyName||s.name;if(g.kind!==80)return 1;let d=s.parent;for(;d;){if($u(d)||_N(d)||ll(d)){let h=d.statements,_;for(let S of h)if(t3(S,g)){S.parent||(XA(S,d),UL(S,!1));let R=lOt(S,c);if((_===void 0||R>_)&&(_=R),_===1)return _;S.kind===272&&(_=1)}if(_!==void 0)return _}d=d.parent}return 1}var uOt=(s=>(s[s.None=0]="None",s[s.IsContainer=1]="IsContainer",s[s.IsBlockScopedContainer=2]="IsBlockScopedContainer",s[s.IsControlFlowContainer=4]="IsControlFlowContainer",s[s.IsFunctionLike=8]="IsFunctionLike",s[s.IsFunctionExpression=16]="IsFunctionExpression",s[s.HasLocals=32]="HasLocals",s[s.IsInterface=64]="IsInterface",s[s.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",s))(uOt||{});function rk(s,c,g){return pe.attachFlowNodeDebugInfo({flags:s,id:0,node:c,antecedent:g})}var dvs=pvs();function gOt(s,c){Mc("beforeBind"),dvs(s,c),Mc("afterBind"),Pf("Bind","beforeBind","afterBind")}function pvs(){var s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt=!1,ot=0,Qe,mt,ht=rk(1,void 0,void 0),_t=rk(1,void 0,void 0),Rt=xe();return Ke;function Lt(Fe,gr,...Ln){return _E(ms(Fe)||s,Fe,gr,...Ln)}function Ke(Fe,gr){var Ln,bs;s=Fe,c=gr,g=Mg(c),Ye=Pt(s,gr),mt=new Set,ot=0,Qe=ZC.getSymbolConstructor(),pe.attachFlowNodeDebugInfo(ht),pe.attachFlowNodeDebugInfo(_t),s.locals||((Ln=ki)==null||Ln.push(ki.Phase.Bind,"bindSourceFile",{path:s.path},!0),Ss(s),(bs=ki)==null||bs.pop(),s.symbolCount=ot,s.classifiableNames=mt,jp(),Xg()),s=void 0,c=void 0,g=void 0,d=void 0,h=void 0,_=void 0,S=void 0,R=void 0,T=void 0,V=void 0,W=!1,M=void 0,ee=void 0,re=void 0,ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Te=void 0,Ze=!1,We=!1,Ue=!1,Tt=!1,$e=0}function Pt(Fe,gr){return a_(gr,"alwaysStrict")&&!Fe.isDeclarationFile?!0:!!Fe.externalModuleIndicator}function _r(Fe,gr){return ot++,new Qe(Fe,gr)}function Gt(Fe,gr,Ln){Fe.flags|=Ln,gr.symbol=Fe,Fe.declarations=ps(Fe.declarations,gr),Ln&1955&&!Fe.exports&&(Fe.exports=qu()),Ln&6240&&!Fe.members&&(Fe.members=qu()),Fe.constEnumOnlyModule&&Fe.flags&304&&(Fe.constEnumOnlyModule=!1),Ln&111551&&S7(Fe,gr)}function nt(Fe){if(Fe.kind===278)return Fe.isExportEquals?"export=":"default";let gr=Il(Fe);if(gr){if(s_(Fe)){let Ln=c2(gr);return vB(Fe)?"__global":`"${Ln}"`}if(gr.kind===168){let Ln=gr.expression;if(d1(Ln))return Ap(Ln.text);if(Cne(Ln))return Vi(Ln.operator)+Ln.operand.text;pe.fail("Only computed properties with literal names have declaration names")}if(p(gr)){let Ln=hC(Fe);if(!Ln)return;let bs=Ln.symbol;return _ne(bs,gr.escapedText)}return eR(gr)?oS(gr):Tw(gr)?qJ(gr):void 0}switch(Fe.kind){case 177:return"__constructor";case 185:case 180:case 324:return"__call";case 186:case 181:return"__new";case 182:return"__index";case 279:return"__export";case 308:return"export=";case 227:if(nI(Fe)===2)return"export=";pe.fail("Unknown binary declaration kind");break;case 318:return PY(Fe)?"__new":"__call";case 170:return pe.assert(Fe.parent.kind===318,"Impossible parameter parent kind",()=>`parent is: ${pe.formatSyntaxKind(Fe.parent.kind)}, expected JSDocFunctionType`),"arg"+Fe.parent.parameters.indexOf(Fe)}}function Dt(Fe){return rh(Fe)?Wd(Fe.name):Bc(pe.checkDefined(nt(Fe)))}function tr(Fe,gr,Ln,bs,Xl,eg,jl){pe.assert(jl||!XD(Ln));let Eu=Ga(Ln,2048)||R0(Ln)&&lv(Ln.name),Df=jl?"__computed":Eu&&gr?"default":nt(Ln),Jg;if(Df===void 0)Jg=_r(0,"__missing");else if(Jg=Fe.get(Df),bs&2885600&&mt.add(Df),!Jg)Fe.set(Df,Jg=_r(0,Df)),eg&&(Jg.isReplaceableByMethod=!0);else{if(eg&&!Jg.isReplaceableByMethod)return Jg;if(Jg.flags&Xl){if(Jg.isReplaceableByMethod)Fe.set(Df,Jg=_r(0,Df));else if(!(bs&3&&Jg.flags&67108864)){rh(Ln)&&XA(Ln.name,Ln);let MC=Jg.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,S1=!0;(Jg.flags&384||bs&384)&&(MC=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,S1=!1);let fS=!1;B(Jg.declarations)&&(Eu||Jg.declarations&&Jg.declarations.length&&Ln.kind===278&&!Ln.isExportEquals)&&(MC=Z.A_module_cannot_have_multiple_default_exports,S1=!1,fS=!0);let bv=[];FB(Ln)&&sf(Ln.type)&&Ga(Ln,32)&&Jg.flags&2887656&&bv.push(Lt(Ln,Z.Did_you_mean_0,`export type { ${Bc(Ln.name.escapedText)} }`));let XF=Il(Ln)||Ln;F(Jg.declarations,(My,sk)=>{let aR=Il(My)||My,WB=S1?Lt(aR,MC,Dt(My)):Lt(aR,MC);s.bindDiagnostics.push(fS?lg(WB,Lt(XF,sk===0?Z.Another_export_default_is_here:Z.and_here)):WB),fS&&bv.push(Lt(aR,Z.The_first_export_default_is_here))});let o9=S1?Lt(XF,MC,Dt(Ln)):Lt(XF,MC);s.bindDiagnostics.push(lg(o9,...bv)),Jg=_r(0,Df)}}}return Gt(Jg,Ln,bs),Jg.parent?pe.assert(Jg.parent===gr,"Existing symbol parent should match new one"):Jg.parent=gr,Jg}function ur(Fe,gr,Ln){let bs=!!(Hc(Fe)&32)||Gr(Fe);if(gr&2097152)return Fe.kind===282||Fe.kind===272&&bs?tr(h.symbol.exports,h.symbol,Fe,gr,Ln):(pe.assertNode(h,WI),tr(h.locals,void 0,Fe,gr,Ln));if(iS(Fe)&&pe.assert(wo(Fe)),!s_(Fe)&&(bs||h.flags&128)){if(!WI(h)||!h.locals||Ga(Fe,2048)&&!nt(Fe))return tr(h.symbol.exports,h.symbol,Fe,gr,Ln);let Xl=gr&111551?1048576:0,eg=tr(h.locals,void 0,Fe,Xl,Ln);return eg.exportSymbol=tr(h.symbol.exports,h.symbol,Fe,gr,Ln),Fe.localSymbol=eg,eg}else return pe.assertNode(h,WI),tr(h.locals,void 0,Fe,gr,Ln)}function Gr(Fe){if(Fe.parent&&xh(Fe)&&(Fe=Fe.parent),!iS(Fe))return!1;if(!oEe(Fe)&&Fe.fullName)return!0;let gr=Il(Fe);return gr?!!(BF(gr.parent)&&yv(gr.parent)||jh(gr.parent)&&Hc(gr.parent)&32):!1}function dt(Fe,gr){let Ln=h,bs=_,Xl=S,eg=We;if(Fe.kind===220&&Fe.body.kind!==242&&(We=!0),gr&1?(Fe.kind!==220&&(_=h),h=S=Fe,gr&32&&(h.locals=qu(),Ui(h))):gr&2&&(S=Fe,gr&32&&(S.locals=void 0)),gr&4){let jl=M,Eu=ee,Df=re,Jg=ge,MC=Ee,S1=Te,fS=Ze,bv=gr&16&&!Ga(Fe,1024)&&!Fe.asteriskToken&&!!ZL(Fe)||Fe.kind===176;bv||(M=rk(2,void 0,void 0),gr&144&&(M.node=Fe)),ge=bv||Fe.kind===177||wo(Fe)&&(Fe.kind===263||Fe.kind===219)?si():void 0,Ee=void 0,ee=void 0,re=void 0,Te=void 0,Ze=!1,zt(Fe),Fe.flags&=-5633,!(M.flags&1)&&gr&8&&u1(Fe.body)&&(Fe.flags|=512,Ze&&(Fe.flags|=1024),Fe.endFlowNode=M),Fe.kind===308&&(Fe.flags|=$e,Fe.endFlowNode=M),ge&&(Zn(ge,M),M=hc(ge),(Fe.kind===177||Fe.kind===176||wo(Fe)&&(Fe.kind===263||Fe.kind===219))&&(Fe.returnFlowNode=M)),bv||(M=jl),ee=Eu,re=Df,ge=Jg,Ee=MC,Te=S1,Ze=fS}else gr&64?(W=!1,zt(Fe),pe.assertNotNode(Fe,Ir),Fe.flags=W?Fe.flags|256:Fe.flags&-257):zt(Fe);We=eg,h=Ln,_=bs,S=Xl}function pr(Fe){st(Fe,gr=>gr.kind===263?Ss(gr):void 0),st(Fe,gr=>gr.kind!==263?Ss(gr):void 0)}function st(Fe,gr=Ss){Fe!==void 0&&F(Fe,gr)}function ir(Fe){Lu(Fe,Ss,st)}function zt(Fe){let gr=Tt;if(Tt=!1,ul(Fe)){UJ(Fe)&&Fe.flowNode&&(Fe.flowNode=void 0),ir(Fe),Uc(Fe),Tt=gr;return}switch(Fe.kind>=244&&Fe.kind<=260&&(!c.allowUnreachableCode||Fe.kind===254)&&(Fe.flowNode=M),Fe.kind){case 248:Tg(Fe);break;case 247:Cs(Fe);break;case 249:Tu(Fe);break;case 250:case 251:Pr(Fe);break;case 246:Pn(Fe);break;case 254:case 258:pt(Fe);break;case 253:case 252:nr(Fe);break;case 259:Fr(Fe);break;case 256:Kr(Fe);break;case 270:Dn(Fe);break;case 297:hr(Fe);break;case 245:En(Fe);break;case 257:Gi(Fe);break;case 225:Mt(Fe);break;case 226:cn(Fe);break;case 227:if(Dx(Fe)){Tt=gr,Bt(Fe);return}Rt(Fe);break;case 221:fr(Fe);break;case 228:Je(Fe);break;case 261:Hn(Fe);break;case 212:case 213:Wi(Fe);break;case 214:Vn(Fe);break;case 236:es(Fe);break;case 347:case 339:case 341:ao(Fe);break;case 352:Ys(Fe);break;case 308:{pr(Fe.statements),Ss(Fe.endOfFileToken);break}case 242:case 269:pr(Fe.statements);break;case 209:Ot(Fe);break;case 170:$r(Fe);break;case 211:case 210:case 304:case 231:Tt=gr;default:ir(Fe);break}Uc(Fe),Tt=gr}function Ht(Fe){switch(Fe.kind){case 80:case 110:return!0;case 212:case 213:return mn(Fe);case 214:return jn(Fe);case 218:if(sQ(Fe))return!1;case 236:return Ht(Fe.expression);case 227:return Ns(Fe);case 225:return Fe.operator===54&&Ht(Fe.operand);case 222:return Ht(Fe.expression)}return!1}function Br(Fe){switch(Fe.kind){case 80:case 110:case 108:case 237:return!0;case 212:case 218:case 236:return Br(Fe.expression);case 213:return(d1(Fe.argumentExpression)||Od(Fe.argumentExpression))&&Br(Fe.expression);case 227:return Fe.operatorToken.kind===28&&Br(Fe.right)||UD(Fe.operatorToken.kind)&&D_(Fe.left)}return!1}function mn(Fe){return Br(Fe)||GC(Fe)&&mn(Fe.expression)}function jn(Fe){if(Fe.arguments){for(let gr of Fe.arguments)if(mn(gr))return!0}return!!(Fe.expression.kind===212&&mn(Fe.expression.expression))}function Zi(Fe,gr){return CN(Fe)&&An(Fe.expression)&&mA(gr)}function Ns(Fe){switch(Fe.operatorToken.kind){case 64:case 76:case 77:case 78:return mn(Fe.left);case 35:case 36:case 37:case 38:let gr=QA(Fe.left),Ln=QA(Fe.right);return An(gr)||An(Ln)||Zi(Ln,gr)||Zi(gr,Ln)||hY(Ln)&&Ht(gr)||hY(gr)&&Ht(Ln);case 104:return An(Fe.left);case 103:return Ht(Fe.right);case 28:return Ht(Fe.right)}return!1}function An(Fe){switch(Fe.kind){case 218:return An(Fe.expression);case 227:switch(Fe.operatorToken.kind){case 64:return An(Fe.left);case 28:return An(Fe.right)}}return mn(Fe)}function si(){return rk(4,void 0,void 0)}function ks(){return rk(8,void 0,void 0)}function Ic(Fe,gr,Ln){return rk(1024,{target:Fe,antecedents:gr},Ln)}function su(Fe){Fe.flags|=Fe.flags&2048?4096:2048}function Zn(Fe,gr){!(gr.flags&1)&&!k(Fe.antecedent,gr)&&((Fe.antecedent||(Fe.antecedent=[])).push(gr),su(gr))}function ya(Fe,gr,Ln){return gr.flags&1?gr:Ln?(Ln.kind===112&&Fe&64||Ln.kind===97&&Fe&32)&&!gY(Ln)&&!IJ(Ln.parent)?ht:Ht(Ln)?(su(gr),rk(Fe,Ln,gr)):gr:Fe&32?gr:ht}function Gl(Fe,gr,Ln,bs){return su(Fe),rk(128,{switchStatement:gr,clauseStart:Ln,clauseEnd:bs},Fe)}function ba(Fe,gr,Ln){su(gr),Ue=!0;let bs=rk(Fe,Ln,gr);return Ee&&Zn(Ee,bs),bs}function Wo(Fe,gr){return su(Fe),Ue=!0,rk(512,gr,Fe)}function hc(Fe){let gr=Fe.antecedent;return gr?gr.length===1?gr[0]:Fe:ht}function yr(Fe){let gr=Fe.parent;switch(gr.kind){case 246:case 248:case 247:return gr.expression===Fe;case 249:case 228:return gr.condition===Fe}return!1}function hn(Fe){for(;;)if(Fe.kind===218)Fe=Fe.expression;else if(Fe.kind===225&&Fe.operator===54)Fe=Fe.operand;else return Nne(Fe)}function Oi(Fe){return gAe(QA(Fe))}function lo(Fe){for(;gI(Fe.parent)||T0(Fe.parent)&&Fe.parent.operator===54;)Fe=Fe.parent;return!yr(Fe)&&!hn(Fe.parent)&&!(GC(Fe.parent)&&Fe.parent.expression===Fe)}function pa(Fe,gr,Ln,bs){let Xl=Ie,eg=_e;Ie=Ln,_e=bs,Fe(gr),Ie=Xl,_e=eg}function Oa(Fe,gr,Ln){pa(Ss,Fe,gr,Ln),(!Fe||!Oi(Fe)&&!hn(Fe)&&!(GC(Fe)&&i3(Fe)))&&(Zn(gr,ya(32,M,Fe)),Zn(Ln,ya(64,M,Fe)))}function tl(Fe,gr,Ln){let bs=ee,Xl=re;ee=gr,re=Ln,Ss(Fe),ee=bs,re=Xl}function Qu(Fe,gr){let Ln=Te;for(;Ln&&Fe.parent.kind===257;)Ln.continueTarget=gr,Ln=Ln.next,Fe=Fe.parent;return gr}function Tg(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si();Zn(gr,M),M=gr,Oa(Fe.expression,Ln,bs),M=hc(Ln),tl(Fe.statement,bs,gr),Zn(gr,M),M=hc(bs)}function Cs(Fe){let gr=ks(),Ln=Qu(Fe,si()),bs=si();Zn(gr,M),M=gr,tl(Fe.statement,bs,Ln),Zn(Ln,M),M=hc(Ln),Oa(Fe.expression,gr,bs),M=hc(bs)}function Tu(Fe){let gr=Qu(Fe,ks()),Ln=si(),bs=si(),Xl=si();Ss(Fe.initializer),Zn(gr,M),M=gr,Oa(Fe.condition,Ln,Xl),M=hc(Ln),tl(Fe.statement,Xl,bs),Zn(bs,M),M=hc(bs),Ss(Fe.incrementor),Zn(gr,M),M=hc(Xl)}function Pr(Fe){let gr=Qu(Fe,ks()),Ln=si();Ss(Fe.expression),Zn(gr,M),M=gr,Fe.kind===251&&Ss(Fe.awaitModifier),Zn(Ln,M),Ss(Fe.initializer),Fe.initializer.kind!==262&&bn(Fe.initializer),tl(Fe.statement,Ln,gr),Zn(gr,M),M=hc(Ln)}function Pn(Fe){let gr=si(),Ln=si(),bs=si();Oa(Fe.expression,gr,Ln),M=hc(gr),Ss(Fe.thenStatement),Zn(bs,M),M=hc(Ln),Ss(Fe.elseStatement),Zn(bs,M),M=hc(bs)}function pt(Fe){let gr=We;We=!0,Ss(Fe.expression),We=gr,Fe.kind===254&&(Ze=!0,ge&&Zn(ge,M)),M=ht,Ue=!0}function on(Fe){for(let gr=Te;gr;gr=gr.next)if(gr.name===Fe)return gr}function it(Fe,gr,Ln){let bs=Fe.kind===253?gr:Ln;bs&&(Zn(bs,M),M=ht,Ue=!0)}function nr(Fe){if(Ss(Fe.label),Fe.label){let gr=on(Fe.label.escapedText);gr&&(gr.referenced=!0,it(Fe,gr.breakTarget,gr.continueTarget))}else it(Fe,ee,re)}function Fr(Fe){let gr=ge,Ln=Ee,bs=si(),Xl=si(),eg=si();if(Fe.finallyBlock&&(ge=Xl),Zn(eg,M),Ee=eg,Ss(Fe.tryBlock),Zn(bs,M),Fe.catchClause&&(M=hc(eg),eg=si(),Zn(eg,M),Ee=eg,Ss(Fe.catchClause),Zn(bs,M)),ge=gr,Ee=Ln,Fe.finallyBlock){let jl=si();jl.antecedent=Nn(Nn(bs.antecedent,eg.antecedent),Xl.antecedent),M=jl,Ss(Fe.finallyBlock),M.flags&1?M=ht:(ge&&Xl.antecedent&&Zn(ge,Ic(jl,Xl.antecedent,M)),Ee&&eg.antecedent&&Zn(Ee,Ic(jl,eg.antecedent,M)),M=bs.antecedent?Ic(jl,bs.antecedent,M):ht)}else M=hc(bs)}function Kr(Fe){let gr=si();Ss(Fe.expression);let Ln=ee,bs=Ne;ee=gr,Ne=M,Ss(Fe.caseBlock),Zn(gr,M);let Xl=F(Fe.caseBlock.clauses,eg=>eg.kind===298);Fe.possiblyExhaustive=!Xl&&!gr.antecedent,Xl||Zn(gr,Gl(Ne,Fe,0,0)),ee=Ln,Ne=bs,M=hc(gr)}function Dn(Fe){let gr=Fe.clauses,Ln=Fe.parent.expression.kind===112||Ht(Fe.parent.expression),bs=ht;for(let Xl=0;XlGh(Ln)||Cf(Ln))}function gg(Fe){Fe.flags&33554432&&!mc(Fe)?Fe.flags|=128:Fe.flags&=-129}function Ag(Fe){if(gg(Fe),s_(Fe))if(Ga(Fe,32)&&ni(Fe,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),Xre(Fe))_u(Fe);else{let gr;if(Fe.name.kind===11){let{text:bs}=Fe.name;gr=UY(bs),gr===void 0&&ni(Fe.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,bs)}let Ln=gs(Fe,512,110735);s.patternAmbientModules=Ft(s.patternAmbientModules,gr&&!Xs(gr)?{pattern:gr,symbol:Ln}:void 0)}else{let gr=_u(Fe);if(gr!==0){let{symbol:Ln}=Fe;Ln.constEnumOnlyModule=!(Ln.flags&304)&&gr===2&&Ln.constEnumOnlyModule!==!1}}}function _u(Fe){let gr=PF(Fe),Ln=gr!==0;return gs(Fe,Ln?512:1024,Ln?110735:0),gr}function wI(Fe){let gr=_r(131072,nt(Fe));Gt(gr,Fe,131072);let Ln=_r(2048,"__type");Gt(Ln,Fe,2048),Ln.members=qu(),Ln.members.set(gr.escapedName,gr)}function AI(Fe){return yu(Fe,4096,"__object")}function pp(Fe){return yu(Fe,4096,"__jsxAttributes")}function Dl(Fe,gr,Ln){return gs(Fe,gr,Ln)}function yu(Fe,gr,Ln){let bs=_r(gr,Ln);return gr&106508&&(bs.parent=h.symbol),Gt(bs,Fe,gr),bs}function tm(Fe,gr,Ln){switch(S.kind){case 268:ur(Fe,gr,Ln);break;case 308:if(vl(h)){ur(Fe,gr,Ln);break}default:pe.assertNode(S,WI),S.locals||(S.locals=qu(),Ui(S)),tr(S.locals,void 0,Fe,gr,Ln)}}function jp(){if(!T)return;let Fe=h,gr=R,Ln=S,bs=d,Xl=M;for(let eg of T){let jl=eg.parent.parent;h=f7(jl)||s,S=tS(jl)||s,M=rk(2,void 0,void 0),d=eg,Ss(eg.typeExpression);let Eu=Il(eg);if((oEe(eg)||!eg.fullName)&&Eu&&BF(Eu.parent)){let Df=yv(Eu.parent);if(Df){E1(s.symbol,Eu.parent,Df,!!ji(Eu,MC=>jo(MC)&&MC.name.escapedText==="prototype"),!1);let Jg=h;switch(XJ(Eu.parent)){case 1:case 2:vl(s)?h=s:h=void 0;break;case 4:h=Eu.parent.expression;break;case 3:h=Eu.parent.expression.name;break;case 5:h=cQ(s,Eu.parent.expression)?s:jo(Eu.parent.expression)?Eu.parent.expression.name:Eu.parent.expression;break;case 0:return pe.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}h&&ur(eg,524288,788968),h=Jg}}else oEe(eg)||!eg.fullName||eg.fullName.kind===80?(d=eg.parent,tm(eg,524288,788968)):Ss(eg.fullName)}h=Fe,R=gr,S=Ln,d=bs,M=Xl}function Xg(){if(V===void 0)return;let Fe=h,gr=R,Ln=S,bs=d,Xl=M;for(let eg of V){let jl=bP(eg),Eu=jl?f7(jl):void 0,Df=jl?tS(jl):void 0;h=Eu||s,S=Df||s,M=rk(2,void 0,void 0),d=eg,Ss(eg.importClause)}h=Fe,R=gr,S=Ln,d=bs,M=Xl}function sh(Fe){if(!s.parseDiagnostics.length&&!(Fe.flags&33554432)&&!(Fe.flags&16777216)&&!_Ze(Fe)){let gr=iv(Fe);if(gr===void 0)return;Ye&&gr>=119&&gr<=127?s.bindDiagnostics.push(Lt(Fe,dS(Fe),Wd(Fe))):gr===135?xm(s)&&Mge(Fe)?s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Wd(Fe))):Fe.flags&65536&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Wd(Fe))):gr===127&&Fe.flags&16384&&s.bindDiagnostics.push(Lt(Fe,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Wd(Fe)))}}function dS(Fe){return hC(Fe)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function gu(Fe){Fe.escapedText==="#constructor"&&(s.parseDiagnostics.length||s.bindDiagnostics.push(Lt(Fe,Z.constructor_is_a_reserved_word,Wd(Fe))))}function bg(Fe){Ye&&D_(Fe.left)&&UD(Fe.operatorToken.kind)&&$d(Fe,Fe.left)}function KA(Fe){Ye&&Fe.variableDeclaration&&$d(Fe,Fe.variableDeclaration.name)}function TA(Fe){if(Ye&&Fe.expression.kind===80){let gr=qa(s,Fe.expression);s.bindDiagnostics.push(qh(s,gr.start,gr.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function oi(Fe){return Ir(Fe)&&(Fe.escapedText==="eval"||Fe.escapedText==="arguments")}function $d(Fe,gr){if(gr&&gr.kind===80){let Ln=gr;if(oi(Ln)){let bs=qa(s,gr);s.bindDiagnostics.push(qh(s,bs.start,bs.length,YI(Fe),Vo(Ln)))}}}function YI(Fe){return hC(Fe)?Z.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:s.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function Fh(Fe){Ye&&!(Fe.flags&33554432)&&$d(Fe,Fe.name)}function WC(Fe){return hC(Fe)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:s.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function _f(Fe){if(g<2&&S.kind!==308&&S.kind!==268&&!s3(S)){let gr=qa(s,Fe);s.bindDiagnostics.push(qh(s,gr.start,gr.length,WC(Fe)))}}function QI(Fe){Ye&&$d(Fe,Fe.operand)}function ve(Fe){Ye&&(Fe.operator===46||Fe.operator===47)&&$d(Fe,Fe.operand)}function mr(Fe){Ye&&ni(Fe,Z.with_statements_are_not_allowed_in_strict_mode)}function ln(Fe){Ye&&Mg(c)>=2&&(uge(Fe.statement)||Ch(Fe.statement))&&ni(Fe.label,Z.A_label_is_not_allowed_here)}function ni(Fe,gr,...Ln){let bs=rs(s,Fe.pos);s.bindDiagnostics.push(qh(s,bs.start,bs.length,gr,...Ln))}function Ls(Fe,gr,Ln){Za(Fe,gr,gr,Ln)}function Za(Fe,gr,Ln,bs){Go(Fe,{pos:MD(gr,s),end:Ln.end},bs)}function Go(Fe,gr,Ln){let bs=qh(s,gr.pos,gr.end-gr.pos,Ln);Fe?s.bindDiagnostics.push(bs):s.bindSuggestionDiagnostics=Ft(s.bindSuggestionDiagnostics,{...bs,category:2})}function Ss(Fe){if(!Fe)return;XA(Fe,d),ki&&(Fe.tracingPath=s.path);let gr=Ye;if(Lg(Fe),Fe.kind>166){let Ln=d;d=Fe;let bs=het(Fe);bs===0?zt(Fe):dt(Fe,bs),d=Ln}else{let Ln=d;Fe.kind===1&&(d=Fe),Uc(Fe),d=Ln}Ye=gr}function Uc(Fe){if(Xm(Fe))if(wo(Fe))for(let gr of Fe.jsDoc)Ss(gr);else for(let gr of Fe.jsDoc)XA(gr,Fe),UL(gr,!1)}function rl(Fe){if(!Ye)for(let gr of Fe){if(!nS(gr))return;if(xd(gr)){Ye=!0;return}}}function xd(Fe){let gr=mF(s,Fe.expression);return gr==='"use strict"'||gr==="'use strict'"}function Lg(Fe){switch(Fe.kind){case 80:if(Fe.flags&4096){let jl=Fe.parent;for(;jl&&!iS(jl);)jl=jl.parent;tm(jl,524288,788968);break}case 110:return M&&(un(Fe)||d.kind===305)&&(Fe.flowNode=M),sh(Fe);case 167:M&&Qge(Fe)&&(Fe.flowNode=M);break;case 237:case 108:Fe.flowNode=M;break;case 81:return gu(Fe);case 212:case 213:let gr=Fe;M&&Br(gr)&&(gr.flowNode=M),Eye(gr)&&hm(gr),wo(gr)&&s.commonJsModuleIndicator&&cN(gr)&&!F9e(S,"module")&&tr(s.locals,void 0,gr.expression,134217729,111550);break;case 227:switch(nI(Fe)){case 1:qn(Fe);break;case 2:Js(Fe);break;case 3:XI(Fe.left,Fe);break;case 6:af(Fe);break;case 4:RA(Fe);break;case 5:let jl=Fe.left.expression;if(wo(Fe)&&Ir(jl)){let Eu=F9e(S,jl.escapedText);if(Hge(Eu?.valueDeclaration)){RA(Fe);break}}d_(Fe);break;case 0:break;default:pe.fail("Unknown binary expression special property assignment kind")}return bg(Fe);case 300:return KA(Fe);case 221:return TA(Fe);case 226:return QI(Fe);case 225:return ve(Fe);case 255:return mr(Fe);case 257:return ln(Fe);case 198:W=!0;return;case 183:break;case 169:return wa(Fe);case 170:return en(Fe);case 261:return at(Fe);case 209:return Fe.flowNode=M,at(Fe);case 173:case 172:return yf(Fe);case 304:case 305:return ys(Fe,4,0);case 307:return ys(Fe,8,900095);case 180:case 181:case 182:return gs(Fe,131072,0);case 175:case 174:return ys(Fe,8192|(Fe.questionToken?16777216:0),a2(Fe)?0:103359);case 263:return gi(Fe);case 177:return gs(Fe,16384,0);case 178:return ys(Fe,32768,46015);case 179:return ys(Fe,65536,78783);case 185:case 318:case 324:case 186:return wI(Fe);case 188:case 323:case 201:return rm(Fe);case 333:return Bs(Fe);case 211:return AI(Fe);case 219:case 220:return _i(Fe);case 214:switch(nI(Fe)){case 7:return C2(Fe);case 8:return or(Fe);case 9:return dI(Fe);case 0:break;default:return pe.fail("Unknown call expression assignment declaration kind")}wo(Fe)&&oR(Fe);break;case 232:case 264:return Ye=!0,pS(Fe);case 265:return tm(Fe,64,788872);case 266:return tm(Fe,524288,788968);case 267:return xN(Fe);case 268:return Ag(Fe);case 293:return pp(Fe);case 292:return Dl(Fe,4,0);case 272:case 275:case 277:case 282:return gs(Fe,2097152,2097152);case 271:return b1(Fe);case 274:return m2(Fe);case 279:return Z_(Fe);case 278:return oh(Fe);case 308:return rl(Fe.statements),_h();case 242:if(!s3(Fe.parent))return;case 269:return rl(Fe.statements);case 342:if(Fe.parent.kind===324)return en(Fe);if(Fe.parent.kind!==323)break;case 349:let Xl=Fe,eg=Xl.isBracketed||Xl.typeExpression&&Xl.typeExpression.type.kind===317?16777220:4;return gs(Xl,eg,0);case 347:case 339:case 341:return(T||(T=[])).push(Fe);case 340:return Ss(Fe.typeExpression);case 352:return(V||(V=[])).push(Fe)}}function yf(Fe){let gr=t0(Fe),Ln=gr?98304:4,bs=gr?13247:0;return ys(Fe,Ln|(Fe.questionToken?16777216:0),bs)}function rm(Fe){return yu(Fe,2048,"__type")}function _h(){if(gg(s),xm(s))Gp();else if(Zu(s)){Gp();let Fe=s.symbol;tr(s.symbol.exports,s.symbol,s,4,-1),s.symbol=Fe}}function Gp(){yu(s,512,`"${s0(s.fileName)}"`)}function oh(Fe){if(!h.symbol||!h.symbol.exports)yu(Fe,111551,nt(Fe));else{let gr=Ine(Fe)?2097152:4,Ln=tr(h.symbol.exports,h.symbol,Fe,gr,-1);Fe.isExportEquals&&S7(Ln,Fe)}}function b1(Fe){jt(Fe.modifiers)&&s.bindDiagnostics.push(Lt(Fe,Z.Modifiers_cannot_appear_here));let gr=ll(Fe.parent)?xm(Fe.parent)?Fe.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;gr?s.bindDiagnostics.push(Lt(Fe,gr)):(s.symbol.globalExports=s.symbol.globalExports||qu(),tr(s.symbol.globalExports,s.symbol,Fe,2097152,2097152))}function Z_(Fe){!h.symbol||!h.symbol.exports?yu(Fe,8388608,nt(Fe)):Fe.exportClause?tk(Fe.exportClause)&&(XA(Fe.exportClause,Fe),tr(h.symbol.exports,h.symbol,Fe.exportClause,2097152,2097152)):tr(h.symbol.exports,h.symbol,Fe,8388608,0)}function m2(Fe){Fe.name&&gs(Fe,2097152,2097152)}function Vb(Fe){return s.externalModuleIndicator&&s.externalModuleIndicator!==!0?!1:(s.commonJsModuleIndicator||(s.commonJsModuleIndicator=Fe,s.externalModuleIndicator||Gp()),!0)}function or(Fe){if(!Vb(Fe))return;let gr=qm(Fe.arguments[0],void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));gr&&tr(gr.exports,gr,Fe,1048580,0)}function qn(Fe){if(!Vb(Fe))return;let gr=qm(Fe.left.expression,void 0,(Ln,bs)=>(bs&&Gt(bs,Ln,67110400),bs));if(gr){let bs=$ge(Fe.right)&&(p3(Fe.left.expression)||cN(Fe.left.expression))?2097152:1048580;XA(Fe.left,Fe),tr(gr.exports,gr,Fe.left,bs,0)}}function Js(Fe){if(!Vb(Fe))return;let gr=ane(Fe.right);if(rbe(gr)||h===s&&cQ(s,gr))return;if(og(gr)&&ue(gr.properties,a0)){F(gr.properties,Hl);return}let Ln=Ine(Fe)?2097152:1049092,bs=tr(s.symbol.exports,s.symbol,Fe,Ln|67108864,0);S7(bs,Fe)}function Hl(Fe){tr(s.symbol.exports,s.symbol,Fe,69206016,0)}function RA(Fe){if(pe.assert(wo(Fe)),fo(Fe)&&jo(Fe.left)&&p(Fe.left.name)||jo(Fe)&&p(Fe.name))return;let Ln=r0(Fe,!1,!1);switch(Ln.kind){case 263:case 219:let bs=Ln.symbol;if(fo(Ln.parent)&&Ln.parent.operatorToken.kind===64){let jl=Ln.parent.left;yP(jl)&&wF(jl.expression)&&(bs=Pb(jl.expression.expression,_))}bs&&bs.valueDeclaration&&(bs.members=bs.members||qu(),XD(Fe)?NA(Fe,bs,bs.members):tr(bs.members,bs,Fe,67108868,0),Gt(bs,bs.valueDeclaration,32));break;case 177:case 173:case 175:case 178:case 179:case 176:let Xl=Ln.parent,eg=cg(Ln)?Xl.symbol.exports:Xl.symbol.members;XD(Fe)?NA(Fe,Xl.symbol,eg):tr(eg,Xl.symbol,Fe,67108868,0,!0);break;case 308:if(XD(Fe))break;Ln.commonJsModuleIndicator?tr(Ln.symbol.exports,Ln.symbol,Fe,1048580,0):gs(Fe,1,111550);break;case 268:break;default:pe.failBadSyntaxKind(Ln)}}function NA(Fe,gr,Ln){tr(Ln,gr,Fe,4,0,!0,!0),uA(Fe,gr)}function uA(Fe,gr){gr&&(gr.assignmentDeclarationMembers||(gr.assignmentDeclarationMembers=new Map)).set(rd(Fe),Fe)}function hm(Fe){Fe.expression.kind===110?RA(Fe):yP(Fe)&&Fe.parent.parent.kind===308&&(wF(Fe.expression)?XI(Fe,Fe.parent):OC(Fe))}function af(Fe){XA(Fe.left,Fe),XA(Fe.right,Fe),ik(Fe.left.expression,Fe.left,!1,!0)}function dI(Fe){let gr=Pb(Fe.arguments[0].expression);gr&&gr.valueDeclaration&&Gt(gr,gr.valueDeclaration,32),gy(Fe,gr,!0)}function XI(Fe,gr){let Ln=Fe.expression,bs=Ln.expression;XA(bs,Ln),XA(Ln,Fe),XA(Fe,gr),ik(bs,Fe,!0,!0)}function C2(Fe){let gr=Pb(Fe.arguments[0]),Ln=Fe.parent.parent.kind===308;gr=E1(gr,Fe.arguments[0],Ln,!1,!1),gy(Fe,gr,!1)}function d_(Fe){var gr;let Ln=Pb(Fe.left.expression,S)||Pb(Fe.left.expression,h);if(!wo(Fe)&&!AZe(Ln))return;let bs=oU(Fe.left);if(!(Ir(bs)&&((gr=F9e(h,bs.escapedText))==null?void 0:gr.flags)&2097152))if(XA(Fe.left,Fe),XA(Fe.right,Fe),Ir(Fe.left.expression)&&h===s&&cQ(s,Fe.left.expression))qn(Fe);else if(XD(Fe)){yu(Fe,67108868,"__computed");let Xl=E1(Ln,Fe.left.expression,yv(Fe.left),!1,!1);uA(Fe,Xl)}else OC(Ma(Fe.left,I3))}function OC(Fe){pe.assert(!Ir(Fe)),XA(Fe.expression,Fe),ik(Fe.expression,Fe,!1,!1)}function E1(Fe,gr,Ln,bs,Xl){return Fe?.flags&2097152||(Ln&&!bs&&(Fe=qm(gr,Fe,(Eu,Df,Jg)=>{if(Df)return Gt(Df,Eu,67110400),Df;{let MC=Jg?Jg.exports:s.jsGlobalAugmentations||(s.jsGlobalAugmentations=qu());return tr(MC,Jg,Eu,67110400,110735)}})),Xl&&Fe&&Fe.valueDeclaration&&Gt(Fe,Fe.valueDeclaration,32)),Fe}function gy(Fe,gr,Ln){if(!gr||!Wx(gr))return;let bs=Ln?gr.members||(gr.members=qu()):gr.exports||(gr.exports=qu()),Xl=0,eg=0;kd(FY(Fe))?(Xl=8192,eg=103359):Zl(Fe)&&f3(Fe)&&(jt(Fe.arguments[2].properties,jl=>{let Eu=Il(jl);return!!Eu&&Ir(Eu)&&Vo(Eu)==="set"})&&(Xl|=65540,eg|=78783),jt(Fe.arguments[2].properties,jl=>{let Eu=Il(jl);return!!Eu&&Ir(Eu)&&Vo(Eu)==="get"})&&(Xl|=32772,eg|=46015)),Xl===0&&(Xl=4,eg=0),tr(bs,gr,Fe,Xl|67108864,eg&-67108865)}function yv(Fe){return fo(Fe.parent)?Ox(Fe.parent).parent.kind===308:Fe.parent.parent.kind===308}function ik(Fe,gr,Ln,bs){let Xl=Pb(Fe,S)||Pb(Fe,h),eg=yv(gr);Xl=E1(Xl,gr.expression,eg,Ln,bs),gy(gr,Xl,Ln)}function Wx(Fe){if(Fe.flags&1072)return!0;let gr=Fe.valueDeclaration;if(gr&&Zl(gr))return!!FY(gr);let Ln=gr?nc(gr)?gr.initializer:fo(gr)?gr.right:jo(gr)&&fo(gr.parent)?gr.parent.right:void 0:void 0;if(Ln=Ln&&ane(Ln),Ln){let bs=wF(nc(gr)?gr.name:fo(gr)?gr.left:gr);return!!VL(fo(Ln)&&(Ln.operatorToken.kind===57||Ln.operatorToken.kind===61)?Ln.right:Ln,bs)}return!1}function Ox(Fe){for(;fo(Fe.parent);)Fe=Fe.parent;return Fe.parent}function Pb(Fe,gr=h){if(Ir(Fe))return F9e(gr,Fe.escapedText);{let Ln=Pb(Fe.expression);return Ln&&Ln.exports&&Ln.exports.get(YD(Fe))}}function qm(Fe,gr,Ln){if(cQ(s,Fe))return s.symbol;if(Ir(Fe))return Ln(Fe,Pb(Fe),gr);{let bs=qm(Fe.expression,gr,Ln),Xl=cne(Fe);return p(Xl)&&pe.fail("unexpected PrivateIdentifier"),Ln(Xl,bs&&bs.exports&&bs.exports.get(YD(Fe)),bs)}}function oR(Fe){!s.commonJsModuleIndicator&&ay(Fe,!1)&&Vb(Fe)}function pS(Fe){if(Fe.kind===264)tm(Fe,32,899503);else{let Xl=Fe.name?Fe.name.escapedText:"__class";yu(Fe,32,Xl),Fe.name&&mt.add(Fe.name.escapedText)}let{symbol:gr}=Fe,Ln=_r(4194308,"prototype"),bs=gr.exports.get(Ln.escapedName);bs&&(Fe.name&&XA(Fe.name,Fe),s.bindDiagnostics.push(Lt(bs.declarations[0],Z.Duplicate_identifier_0,nf(Ln)))),gr.exports.set(Ln.escapedName,Ln),Ln.parent=gr}function xN(Fe){return VA(Fe)?tm(Fe,128,899967):tm(Fe,256,899327)}function at(Fe){if(Ye&&$d(Fe,Fe.name),!Nu(Fe.name)){let gr=Fe.kind===261?Fe:Fe.parent.parent;wo(Fe)&&CP(gr)&&!ov(Fe)&&!(Hc(Fe)&32)?gs(Fe,2097152,2097152):ZJ(Fe)?tm(Fe,2,111551):HL(Fe)?gs(Fe,1,111551):gs(Fe,1,111550)}}function en(Fe){if(!(Fe.kind===342&&h.kind!==324)&&(Ye&&!(Fe.flags&33554432)&&$d(Fe,Fe.name),Nu(Fe.name)?yu(Fe,1,"__"+Fe.parent.parameters.indexOf(Fe)):gs(Fe,1,111551),Ve(Fe,Fe.parent))){let gr=Fe.parent.parent;tr(gr.symbol.members,gr.symbol,Fe,4|(Fe.questionToken?16777216:0),0)}}function gi(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),Fh(Fe),Ye?(_f(Fe),tm(Fe,16,110991)):gs(Fe,16,110991)}function _i(Fe){!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),M&&(Fe.flowNode=M),Fh(Fe);let gr=Fe.name?Fe.name.escapedText:"__function";return yu(Fe,16,gr)}function ys(Fe,gr,Ln){return!s.isDeclarationFile&&!(Fe.flags&33554432)&&D7(Fe)&&($e|=4096),M&&Vge(Fe)&&(Fe.flowNode=M),XD(Fe)?yu(Fe,gr,"__computed"):gs(Fe,gr,Ln)}function $s(Fe){let gr=ji(Fe,Ln=>Ln.parent&&d2(Ln.parent)&&Ln.parent.extendsType===Ln);return gr&&gr.parent}function wa(Fe){if(ZB(Fe.parent)){let gr=zge(Fe.parent);gr?(pe.assertNode(gr,WI),gr.locals??(gr.locals=qu()),tr(gr.locals,void 0,Fe,262144,526824)):gs(Fe,262144,526824)}else if(Fe.parent.kind===196){let gr=$s(Fe.parent);gr?(pe.assertNode(gr,WI),gr.locals??(gr.locals=qu()),tr(gr.locals,void 0,Fe,262144,526824)):yu(Fe,262144,nt(Fe))}else gs(Fe,262144,526824)}function pc(Fe){let gr=PF(Fe);return gr===1||gr===2&&Fb(c)}function ul(Fe){if(!(M.flags&1))return!1;if(M===ht&&(vJ(Fe)&&Fe.kind!==243||Fe.kind===264||itn(Fe,c)||Fe.kind===268&&pc(Fe))&&(M=_t,!c.allowUnreachableCode)){let Ln=rLe(c)&&!(Fe.flags&33554432)&&(!Ch(Fe)||!!(dm(Fe.declarationList)&7)||Fe.declarationList.declarations.some(bs=>!!bs.initializer));fvs(Fe,c,(bs,Xl)=>Za(Ln,bs,Xl,Z.Unreachable_code_detected))}return!0}}function itn(s,c){return s.kind===267&&(!VA(s)||Fb(c))}function fvs(s,c,g){if(Lc(s)&&d(s)&&$u(s.parent)){let{statements:_}=s.parent,S=Rbe(_,s);Fn(S,d,(R,T)=>g(S[R],S[T-1]))}else g(s,s);function d(_){return!ih(_)&&!h(_)&&!(Ch(_)&&!(dm(_)&7)&&_.declarationList.declarations.some(S=>!S.initializer))}function h(_){switch(_.kind){case 265:case 266:return!0;case 268:return PF(_)!==1;case 267:return!itn(_,c);default:return!1}}}function cQ(s,c){let g=0,d=oA();for(d.enqueue(c);!d.isEmpty()&&g<100;){if(g++,c=d.dequeue(),p3(c)||cN(c))return!0;if(Ir(c)){let h=F9e(s,c.escapedText);if(h&&h.valueDeclaration&&nc(h.valueDeclaration)&&h.valueDeclaration.initializer){let _=h.valueDeclaration.initializer;d.enqueue(_),Jm(_,!0)&&(d.enqueue(_.left),d.enqueue(_.right))}}}return!1}function het(s){switch(s.kind){case 232:case 264:case 267:case 211:case 188:case 323:case 293:return 1;case 265:return 65;case 268:case 266:case 201:case 182:return 33;case 308:return 37;case 178:case 179:case 175:if(Vge(s))return 173;case 177:case 263:case 174:case 180:case 324:case 318:case 185:case 181:case 186:case 176:return 45;case 352:return 37;case 219:case 220:return 61;case 269:return 4;case 173:return s.initializer?4:0;case 300:case 249:case 250:case 251:case 270:return 34;case 242:return bu(s.parent)||fl(s.parent)?0:34}return 0}function F9e(s,c){var g,d,h,_;let S=(d=(g=Gs(s,WI))==null?void 0:g.locals)==null?void 0:d.get(c);if(S)return S.exportSymbol??S;if(ll(s)&&s.jsGlobalAugmentations&&s.jsGlobalAugmentations.has(c))return s.jsGlobalAugmentations.get(c);if(mE(s))return(_=(h=s.symbol)==null?void 0:h.exports)==null?void 0:_.get(c)}function AOt(s,c,g,d,h,_,S,R,T,W){return V;function V(M=()=>!0){let ee=[],re=[];return{walkType:Tt=>{try{return ge(Tt),{visitedTypes:Qh(ee),visitedSymbols:Qh(re)}}finally{St(ee),St(re)}},walkSymbol:Tt=>{try{return Ye(Tt),{visitedTypes:Qh(ee),visitedSymbols:Qh(re)}}finally{St(ee),St(re)}}};function ge(Tt){if(!(!Tt||ee[Tt.id]||(ee[Tt.id]=Tt,Ye(Tt.symbol)))){if(Tt.flags&524288){let Qe=Tt,mt=Qe.objectFlags;mt&4&&Ie(Tt),mt&32&&Ze(Tt),mt&3&&Ue(Tt),mt&24&&$e(Qe)}Tt.flags&262144&&_e(Tt),Tt.flags&3145728&&Ee(Tt),Tt.flags&4194304&&Ne(Tt),Tt.flags&8388608&&Te(Tt)}}function Ie(Tt){ge(Tt.target),F(W(Tt),ge)}function _e(Tt){ge(R(Tt))}function Ee(Tt){F(Tt.types,ge)}function Ne(Tt){ge(Tt.type)}function Te(Tt){ge(Tt.objectType),ge(Tt.indexType),ge(Tt.constraint)}function Ze(Tt){ge(Tt.typeParameter),ge(Tt.constraintType),ge(Tt.templateType),ge(Tt.modifiersType)}function We(Tt){let ot=c(Tt);ot&&ge(ot.type),F(Tt.typeParameters,ge);for(let Qe of Tt.parameters)Ye(Qe);ge(s(Tt)),ge(g(Tt))}function Ue(Tt){$e(Tt),F(Tt.typeParameters,ge),F(d(Tt),ge),ge(Tt.thisType)}function $e(Tt){let ot=h(Tt);for(let Qe of ot.indexInfos)ge(Qe.keyType),ge(Qe.type);for(let Qe of ot.callSignatures)We(Qe);for(let Qe of ot.constructSignatures)We(Qe);for(let Qe of ot.properties)Ye(Qe)}function Ye(Tt){if(!Tt)return!1;let ot=kg(Tt);if(re[ot])return!1;if(re[ot]=Tt,!M(Tt))return!0;let Qe=_(Tt);return ge(Qe),Tt.exports&&Tt.exports.forEach(Ye),F(Tt.declarations,mt=>{if(mt.type&&mt.type.kind===187){let ht=mt.type,_t=S(T(ht.exprName));Ye(_t)}}),!1}}}var WF={};o(WF,{RelativePreference:()=>stn,countPathComponents:()=>V9e,forEachFileNameOfModule:()=>gtn,getLocalModuleSpecifierBetweenFileNames:()=>yvs,getModuleSpecifier:()=>mvs,getModuleSpecifierPreferences:()=>DEe,getModuleSpecifiers:()=>ctn,getModuleSpecifiersWithCacheInfo:()=>ltn,getNodeModulesPackageName:()=>Cvs,tryGetJSExtensionForFile:()=>Cet,tryGetModuleSpecifiersFromCache:()=>_vs,tryGetRealFileNameForNonJsDeclarationFileName:()=>Itn,updateModuleSpecifier:()=>hvs});var Ivs=ZA(s=>{try{let c=s.indexOf("/");if(c!==0)return new RegExp(s);let g=s.lastIndexOf("/");if(c===g)return new RegExp(s);for(;(c=s.indexOf("/",c+1))!==g;)if(s[c-1]!=="\\")return new RegExp(s);let d=s.substring(g+1).replace(/[^iu]/g,"");return s=s.substring(1,g),new RegExp(s,d)}catch{return}}),stn=(s=>(s[s.Relative=0]="Relative",s[s.NonRelative=1]="NonRelative",s[s.Shortest=2]="Shortest",s[s.ExternalNonRelative=3]="ExternalNonRelative",s))(stn||{});function DEe({importModuleSpecifierPreference:s,importModuleSpecifierEnding:c,autoImportSpecifierExcludeRegexes:g},d,h,_,S){let R=T();return{excludeRegexes:g,relativePreference:S!==void 0?Xr(S)?0:1:s==="relative"?0:s==="non-relative"?1:s==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:W=>{let V=_et(_,d,h),M=W!==V?T(W):R,ee=k_(h);if((W??V)===99&&3<=ee&&ee<=99)return Die(h,_.fileName)?[3,2]:[2];if(k_(h)===1)return M===2?[2,1]:[1,2];let re=Die(h,_.fileName);switch(M){case 2:return re?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return re?[1,0,3,2]:[1,0,2];case 0:return re?[0,1,3,2]:[0,1,2];default:pe.assertNever(M)}}};function T(W){if(S!==void 0){if(pN(S))return 2;if(di(S,"/index"))return 1}return pLe(c,W??_et(_,d,h),h,aN(_)?_:void 0)}}function hvs(s,c,g,d,h,_,S={}){let R=otn(s,c,g,d,h,DEe({},h,s,c,_),{},S);if(R!==_)return R}function mvs(s,c,g,d,h,_={}){return otn(s,c,g,d,h,DEe({},h,s,c),{},_)}function Cvs(s,c,g,d,h,_={}){let S=L9e(c.fileName,d),R=Atn(S,g,d,h,s,_);return X(R,T=>fOt(T,S,c,d,s,h,!0,_.overrideImportMode))}function otn(s,c,g,d,h,_,S,R={}){let T=L9e(g,h),W=Atn(T,d,h,S,s,R);return X(W,V=>fOt(V,T,c,h,s,S,void 0,R.overrideImportMode))||dOt(d,T,s,h,R.overrideImportMode||_et(c,h,s),_)}function _vs(s,c,g,d,h={}){let _=atn(s,c,g,d,h);return _[1]&&{kind:_[0],moduleSpecifiers:_[1],computedWithoutCache:!1}}function atn(s,c,g,d,h={}){var _;let S=FJ(s);if(!S)return E;let R=(_=g.getModuleSpecifierCache)==null?void 0:_.call(g),T=R?.get(c.path,S.path,d,h);return[T?.kind,T?.moduleSpecifiers,S,T?.modulePaths,R]}function ctn(s,c,g,d,h,_,S={}){return ltn(s,c,g,d,h,_,S,!1).moduleSpecifiers}function ltn(s,c,g,d,h,_,S={},R){let T=!1,W=Bvs(s,c);if(W)return{kind:"ambient",moduleSpecifiers:R&&Z9e(W,_.autoImportSpecifierExcludeRegexes)?E:[W],computedWithoutCache:T};let[V,M,ee,re,ge]=atn(s,d,h,_,S);if(M)return{kind:V,moduleSpecifiers:M,computedWithoutCache:T};if(!ee)return{kind:void 0,moduleSpecifiers:E,computedWithoutCache:T};T=!0,re||(re=dtn(L9e(d.fileName,h),ee.originalFileName,h,g,S));let Ie=bvs(re,g,d,h,_,S,R);return ge?.set(d.path,ee.path,_,S,Ie.kind,re,Ie.moduleSpecifiers),Ie}function yvs(s,c,g,d,h,_={}){let S=L9e(s.fileName,d),R=_.overrideImportMode??s.impliedNodeFormat;return dOt(c,S,g,d,R,DEe(h,d,g,s))}function bvs(s,c,g,d,h,_={},S){let R=L9e(g.fileName,d),T=DEe(h,d,c,g),W=aN(g)&&F(s,Ie=>F(d.getFileIncludeReasons().get(Ou(Ie.path,d.getCurrentDirectory(),R.getCanonicalFileName)),_e=>{if(_e.kind!==3||_e.file!==g.path)return;let Ee=d.getModeForResolutionAtIndex(g,_e.index),Ne=_.overrideImportMode??d.getDefaultResolutionModeForFile(g);if(Ee!==Ne&&Ee!==void 0&&Ne!==void 0)return;let Te=KEe(g,_e.index).text;return T.relativePreference!==1||!Ip(Te)?Te:void 0}));if(W)return{kind:void 0,moduleSpecifiers:[W],computedWithoutCache:!0};let V=jt(s,Ie=>Ie.isInNodeModules),M,ee,re,ge;for(let Ie of s){let _e=Ie.isInNodeModules?fOt(Ie,R,g,d,c,h,void 0,_.overrideImportMode):void 0;if(_e&&!(S&&Z9e(_e,T.excludeRegexes))&&(M=Ft(M,_e),Ie.isRedirect))return{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0};let Ee=dOt(Ie.path,R,c,d,_.overrideImportMode||g.impliedNodeFormat,T,Ie.isRedirect||!!_e);!Ee||S&&Z9e(Ee,T.excludeRegexes)||(Ie.isRedirect?re=Ft(re,Ee):Xh(Ee)?WP(Ee)?ge=Ft(ge,Ee):ee=Ft(ee,Ee):(S||!V||Ie.isInNodeModules)&&(ge=Ft(ge,Ee)))}return ee?.length?{kind:"paths",moduleSpecifiers:ee,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:M?.length?{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:ge??E,computedWithoutCache:!0}}function Z9e(s,c){return jt(c,g=>{var d;return!!((d=Ivs(g))!=null&&d.test(s))})}function L9e(s,c){s=Xc(s,c.getCurrentDirectory());let g=_d(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=Mo(s);return{getCanonicalFileName:g,importingSourceFileName:s,sourceDirectory:d,canonicalSourceDirectory:g(d)}}function dOt(s,c,g,d,h,{getAllowedEndingsInPreferredOrder:_,relativePreference:S,excludeRegexes:R},T){let{baseUrl:W,paths:V,rootDirs:M}=g;if(T&&!V)return;let{sourceDirectory:ee,canonicalSourceDirectory:re,getCanonicalFileName:ge}=c,Ie=_(h),_e=M&&Rvs(M,s,ee,ge,Ie,g)||kEe(Am(mp(ee,s,ge)),Ie,g);if(!W&&!V&&!Vne(g)||S===0)return T?void 0:_e;let Ee=Xc(oAe(g,d)||W,d.getCurrentDirectory()),Ne=IOt(s,Ee,ge);if(!Ne)return T?void 0:_e;let Te=T?void 0:Tvs(s,ee,g,d,h,Dvs(Ie)),Ze=T||Te===void 0?V&&ptn(Ne,V,Ie,Ee,ge,d,g):void 0;if(T)return Ze;let We=Te??(Ze===void 0&&W!==void 0?kEe(Ne,Ie,g):Ze);if(!We)return _e;let Ue=Z9e(_e,R),$e=Z9e(We,R);if(!Ue&&$e)return _e;if(Ue&&!$e||S===1&&!Ip(We))return We;if(S===3&&!Ip(We)){let Ye=g.configFilePath?Ou(Mo(g.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),Tt=Ou(s,Ye,ge),ot=Ac(re,Ye),Qe=Ac(Tt,Ye);if(ot&&!Qe||!ot&&Qe)return We;let mt=pOt(d,Mo(Tt)),ht=pOt(d,ee),_t=!y3(d);return Evs(mt,ht,_t)?_e:We}return htn(We)||V9e(_e)s.fileExists(Ro(g,"package.json"))?g:void 0)}function gtn(s,c,g,d,h){var _,S;let R=JD(g),T=g.getCurrentDirectory(),W=g.isSourceOfProjectReferenceRedirect(c)?(_=g.getRedirectFromSourceFile(c))==null?void 0:_.outputDts:void 0,V=Ou(c,T,R),M=g.redirectTargetsMap.get(V)||E,re=[...W?[W]:E,c,...M].map(Ne=>Xc(Ne,T)),ge=!ue(re,sz);if(!d){let Ne=F(re,Te=>!(ge&&sz(Te))&&h(Te,W===Te));if(Ne)return Ne}let Ie=(S=g.getSymlinkCache)==null?void 0:S.call(g).getSymlinkedDirectoriesByRealpath(),_e=Xc(c,T);return Ie&&vN(g,Mo(_e),Ne=>{let Te=Ie.get(hp(Ou(Ne,T,R)));if(Te)return $S(s,Ne,R)?!1:F(re,Ze=>{if(!$S(Ze,Ne,R))return;let We=mp(Ne,Ze,R);for(let Ue of Te){let $e=AE(Ue,We),Ye=h($e,Ze===W);if(ge=!0,Ye)return Ye}})})||(d?F(re,Ne=>ge&&sz(Ne)?void 0:h(Ne,Ne===W)):void 0)}function Atn(s,c,g,d,h,_={}){var S;let R=Ou(s.importingSourceFileName,g.getCurrentDirectory(),JD(g)),T=Ou(c,g.getCurrentDirectory(),JD(g)),W=(S=g.getModuleSpecifierCache)==null?void 0:S.call(g);if(W){let M=W.get(R,T,d,_);if(M?.modulePaths)return M.modulePaths}let V=dtn(s,c,g,h,_);return W&&W.setModulePaths(R,T,d,_,V),V}var Svs=["dependencies","peerDependencies","optionalDependencies"];function vvs(s){let c;for(let g of Svs){let d=s[g];d&&typeof d=="object"&&(c=Nn(c,_g(d)))}return c}function dtn(s,c,g,d,h){var _,S;let R=(_=g.getModuleResolutionCache)==null?void 0:_.call(g),T=(S=g.getSymlinkCache)==null?void 0:S.call(g);if(R&&T&&g.readFile&&!WP(s.importingSourceFileName)){pe.type(g);let ee=_de(R.getPackageJsonInfoCache(),g,{}),re=yde(Mo(s.importingSourceFileName),ee);if(re){let ge=vvs(re.contents.packageJsonContent);for(let Ie of ge||E){let _e=BU(Ie,Ro(re.packageDirectory,"package.json"),d,g,R,void 0,h.overrideImportMode);T.setSymlinksFromResolution(_e.resolvedModule)}}}let W=new Map,V=!1;gtn(s.importingSourceFileName,c,g,!0,(ee,re)=>{let ge=WP(ee),Ie=LP(ee);if(!ge&&Ie){let _e=Ie.findPackageLocator(s.importingSourceFileName),Ee=Ie.findPackageLocator(ee);_e&&Ee&&_e!==Ee&&(ge=!0)}W.set(ee,{path:s.getCanonicalFileName(ee),isRedirect:re,isInNodeModules:ge}),V=V||ge});let M=[];for(let ee=s.canonicalSourceDirectory;W.size!==0;){let re=hp(ee),ge;W.forEach(({path:_e,isRedirect:Ee,isInNodeModules:Ne},Te)=>{Ac(_e,re)&&((ge||(ge=[])).push({path:Te,isRedirect:Ee,isInNodeModules:Ne}),W.delete(Te))}),ge&&(ge.length>1&&ge.sort(utn),M.push(...ge));let Ie=Mo(ee);if(Ie===ee)break;ee=Ie}if(W.size){let ee=Do(W.entries(),([re,{isRedirect:ge,isInNodeModules:Ie}])=>({path:re,isRedirect:ge,isInNodeModules:Ie}));ee.length>1&&ee.sort(utn),M.push(...ee)}return M}function Bvs(s,c){var g;let d=(g=s.declarations)==null?void 0:g.find(S=>Qre(S)&&(!_F(S)||!Xr(c2(S.name))));if(d)return d.name.text;let _=Xt(s.declarations,S=>{var R,T,W,V;if(!xh(S))return;let M=Ie(S);if(!((R=M?.parent)!=null&&R.parent&&_N(M.parent)&&s_(M.parent.parent)&&ll(M.parent.parent.parent)))return;let ee=(V=(W=(T=M.parent.parent.symbol.exports)==null?void 0:T.get("export="))==null?void 0:W.valueDeclaration)==null?void 0:V.expression;if(!ee)return;let re=c.getSymbolAtLocation(ee);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===S.symbol)return M.parent.parent;function Ie(_e){for(;_e.flags&8;)_e=_e.parent;return _e}})[0];if(_)return _.name.text}function ptn(s,c,g,d,h,_,S){for(let T in c)for(let W of c[T]){let V=iu(W),M=IOt(V,d,h)??V,ee=M.indexOf("*"),re=g.map(ge=>({ending:ge,value:kEe(s,[ge],S)}));if(QT(M)&&re.push({ending:void 0,value:s}),ee!==-1){let ge=M.substring(0,ee),Ie=M.substring(ee+1);for(let{ending:_e,value:Ee}of re)if(Ee.length>=ge.length+Ie.length&&Ac(Ee,ge)&&di(Ee,Ie)&&R({ending:_e,value:Ee})){let Ne=Ee.substring(ge.length,Ee.length-Ie.length);if(!Ip(Ne))return R3(T,Ne)}}else if(jt(re,ge=>ge.ending!==0&&M===ge.value)||jt(re,ge=>ge.ending===0&&M===ge.value&&R(ge)))return T}function R({ending:T,value:W}){return T!==0||W===kEe(s,[T],S,_)}}function P9e(s,c,g,d,h,_,S,R,T,W){if(typeof _=="string"){let V=!y3(c),M=()=>c.getCommonSourceDirectory(),ee=T&&Ket(g,s,V,M),re=T&&Uet(g,s,V,M),ge=Xc(Ro(d,_),void 0),Ie=w3(g)?s0(g)+Cet(g,s):void 0,_e=W&&ALe(g);switch(R){case 0:if(Ie&&qf(Ie,ge,V)===0||qf(g,ge,V)===0||ee&&qf(ee,ge,V)===0||re&&qf(re,ge,V)===0)return{moduleFileToTry:h};break;case 1:if(_e&&Jh(g,ge,V)){let Ze=mp(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(Ie&&Jh(ge,Ie,V)){let Ze=mp(ge,Ie,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(!_e&&Jh(ge,g,V)){let Ze=mp(ge,g,!1);return{moduleFileToTry:Xc(Ro(Ro(h,_),Ze),void 0)}}if(ee&&Jh(ge,ee,V)){let Ze=mp(ge,ee,!1);return{moduleFileToTry:Ro(h,Ze)}}if(re&&Jh(ge,re,V)){let Ze=i_(mp(ge,re,!1),met(re,s));return{moduleFileToTry:Ro(h,Ze)}}break;case 2:let Ee=ge.indexOf("*"),Ne=ge.slice(0,Ee),Te=ge.slice(Ee+1);if(_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(Ie&&Ac(Ie,Ne,V)&&di(Ie,Te,V)){let Ze=Ie.slice(Ne.length,Ie.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(!_e&&Ac(g,Ne,V)&&di(g,Te,V)){let Ze=g.slice(Ne.length,g.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(ee&&Ac(ee,Ne,V)&&di(ee,Te,V)){let Ze=ee.slice(Ne.length,ee.length-Te.length);return{moduleFileToTry:R3(h,Ze)}}if(re&&Ac(re,Ne,V)&&di(re,Te,V)){let Ze=re.slice(Ne.length,re.length-Te.length),We=R3(h,Ze),Ue=Cet(re,s);return Ue?{moduleFileToTry:i_(We,Ue)}:void 0}break}}else{if(Array.isArray(_))return F(_,V=>P9e(s,c,g,d,h,V,S,R,T,W));if(typeof _=="object"&&_!==null){for(let V of _g(_))if(V==="default"||S.indexOf(V)>=0||REe(S,V)){let M=_[V],ee=P9e(s,c,g,d,h,M,S,R,T,W);if(ee)return ee}}}}function wvs(s,c,g,d,h,_,S){return typeof _=="object"&&_!==null&&!Array.isArray(_)&&x9e(_)?F(_g(_),R=>{let T=Xc(Ro(h,R),void 0),W=di(R,"/")?1:R.includes("*")?2:0;return P9e(s,c,g,d,T,_[R],S,W,!1,!1)}):P9e(s,c,g,d,h,_,S,0,!1,!1)}function Tvs(s,c,g,d,h,_){var S,R,T;if(!d.readFile||!Vne(g))return;let W=pOt(d,c);if(!W)return;let V=Ro(W,"package.json"),M=(R=(S=d.getPackageJsonInfoCache)==null?void 0:S.call(d))==null?void 0:R.getPackageJsonInfo(V);if(JWt(M)||!d.fileExists(V))return;let ee=M?.contents.packageJsonContent||nU(d.readFile(V)),re=ee?.imports;if(!re)return;let ge=PP(g,h);return(T=F(_g(re),Ie=>{if(!Ac(Ie,"#")||Ie==="#"||Ac(Ie,"#/"))return;let _e=di(Ie,"/")?1:Ie.includes("*")?2:0;return P9e(g,d,s,W,Ie,re[Ie],ge,_e,!0,_)}))==null?void 0:T.moduleFileToTry}function Rvs(s,c,g,d,h,_){let S=ftn(c,s,d);if(S===void 0)return;let R=ftn(g,s,d),T=er(R,V=>At(S,M=>Am(mp(V,M,d)))),W=oa(T,Qne);if(W)return kEe(W,h,_)}function fOt({path:s,isRedirect:c},{getCanonicalFileName:g,canonicalSourceDirectory:d},h,_,S,R,T,W){if(!_.fileExists||!_.readFile)return;let V=MAe(s),M,ee=LP(s);if(ee){let Ze=ee.findPackageLocator(h.fileName),We=ee.findPackageLocator(s);if(Ze===We)return;if(Ze&&We){let Ue=ee.getPackageInformation(Ze);if(We.reference===Ue.packageDependencies.get(We.name))M=We.name;else for(let[$e,Ye]of Ue.packageDependencies)if(Array.isArray(Ye)&&Ye[0]===We.name&&Ye[1]===We.reference){M=$e;break}V||(V={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:ee.getPackageInformation(We).packageLocation.length-1,fileNameIndex:s.lastIndexOf("/")})}}if(!V)return;let ge=DEe(R,_,S,h).getAllowedEndingsInPreferredOrder(),Ie=s,_e=!1;if(!T){let Ze=V.packageRootIndex,We;for(;;){let{moduleFileToTry:Ue,packageRootPath:$e,blockedByExports:Ye,verbatimFromExports:Tt}=Te(Ze);if(k_(S)!==1){if(Ye)return;if(Tt)return Ue}if($e){Ie=$e,_e=!0;break}if(We||(We=Ue),Ze=s.indexOf(ag,Ze+1),Ze===-1){Ie=kEe(We,ge,S,_);break}}}if(c&&!_e)return;if(typeof process.versions.pnp>"u"){let Ze=_.getGlobalTypingsCacheLocation&&_.getGlobalTypingsCacheLocation(),We=g(Ie.substring(0,V.topLevelNodeModulesIndex));if(!(Ac(d,We)||Ze&&Ac(g(Ze),We)))return}let Ee=typeof M<"u"?M+Ie.substring(V.packageRootIndex):Ie.substring(V.topLevelPackageNameIndex+1),Ne=bde(Ee);return k_(S)===1&&Ne===Ee?void 0:Ne;function Te(Ze){var We,Ue;let $e=s.substring(0,Ze),Ye=Ro($e,"package.json"),Tt=s,ot=!1,Qe=(Ue=(We=_.getPackageJsonInfoCache)==null?void 0:We.call(_))==null?void 0:Ue.getPackageJsonInfo(Ye);if(N9e(Qe)||Qe===void 0&&_.fileExists(Ye)){let mt=Qe?.contents.packageJsonContent||nU(_.readFile(Ye)),ht=W||_et(h,_,S);if(U7(S)){let Lt=$e.substring(V.topLevelPackageNameIndex+1),Ke=bde(M||Lt),Pt=PP(S,ht),_r=mt?.exports?wvs(S,_,s,$e,Ke,mt.exports,Pt):void 0;if(_r)return{..._r,verbatimFromExports:!0};if(mt?.exports)return{moduleFileToTry:s,blockedByExports:!0}}let _t=mt?.typesVersions?T9e(mt.typesVersions):void 0;if(_t){let Lt=s.slice($e.length+1),Ke=ptn(Lt,_t.paths,ge,$e,g,_,S);Ke===void 0?ot=!0:Tt=Ro($e,Ke)}let Rt=mt?.typings||mt?.types||mt?.main||"index.js";if(Xs(Rt)&&!(ot&&Tbe($7(_t.paths),Rt))){let Lt=Ou(Rt,$e,g),Ke=g(Tt);if(s0(Lt)===s0(Ke))return{packageRootPath:$e,moduleFileToTry:Tt};if(mt?.type!=="module"&&!fu(Ke,VAe)&&Ac(Ke,Lt)&&Mo(Ke)===ny(Lt)&&s0(gp(Ke))==="index")return{packageRootPath:$e,moduleFileToTry:Tt}}}else{let mt=g(Tt.substring(V.packageRootIndex+1));if(mt==="index.d.ts"||mt==="index.js"||mt==="index.ts"||mt==="index.tsx")return{moduleFileToTry:Tt,packageRootPath:$e}}return{moduleFileToTry:Tt}}}function Nvs(s,c){if(!s.fileExists)return;let g=Nr(z7({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of g){let h=c+d;if(s.fileExists(h))return h}}function ftn(s,c,g){return Xt(c,d=>{let h=IOt(s,d,g);return h!==void 0&&htn(h)?void 0:h})}function kEe(s,c,g,d){if(fu(s,[".json",".mjs",".cjs"]))return s;let h=s0(s);if(s===h)return s;let _=c.indexOf(2),S=c.indexOf(3);if(fu(s,[".mts",".cts"])&&S!==-1&&S<_)return s;if(fu(s,[".d.mts",".mts",".d.cts",".cts"]))return h+met(s,g);if(!fu(s,[".d.ts"])&&fu(s,[".ts"])&&s.includes(".d."))return Itn(s);switch(c[0]){case 0:let R=aa(h,"/index");return d&&R!==h&&Nvs(d,R)?h:R;case 1:return h;case 2:return h+met(s,g);case 3:if(PC(s)){let T=c.findIndex(W=>W===0||W===1);return T!==-1&&T<_?h:h+met(s,g)}return s;default:return pe.assertNever(c[0])}}function Itn(s){let c=gp(s);if(!di(s,".ts")||!c.includes(".d.")||fu(c,[".d.ts"]))return;let g=Xne(s,".ts"),d=g.substring(g.lastIndexOf("."));return g.substring(0,g.indexOf(".d."))+d}function met(s,c){return Cet(s,c)??pe.fail(`Extension ${tz(s)} is unsupported:: FileName:: ${s}`)}function Cet(s,c){let g=QT(s);switch(g){case".ts":case".d.ts":return".js";case".tsx":return c.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return g;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function IOt(s,c,g){let d=Of(c,s,c,g,!1);return Xp(d)?void 0:d}function htn(s){return Ac(s,"..")}function _et(s,c,g){return aN(s)?c.getDefaultResolutionModeForFile(s):sVe(s,g)}function Dvs(s){let c=s.indexOf(3);return c>-1&&c(s[s.None=0]="None",s[s.TypeofEQString=1]="TypeofEQString",s[s.TypeofEQNumber=2]="TypeofEQNumber",s[s.TypeofEQBigInt=4]="TypeofEQBigInt",s[s.TypeofEQBoolean=8]="TypeofEQBoolean",s[s.TypeofEQSymbol=16]="TypeofEQSymbol",s[s.TypeofEQObject=32]="TypeofEQObject",s[s.TypeofEQFunction=64]="TypeofEQFunction",s[s.TypeofEQHostObject=128]="TypeofEQHostObject",s[s.TypeofNEString=256]="TypeofNEString",s[s.TypeofNENumber=512]="TypeofNENumber",s[s.TypeofNEBigInt=1024]="TypeofNEBigInt",s[s.TypeofNEBoolean=2048]="TypeofNEBoolean",s[s.TypeofNESymbol=4096]="TypeofNESymbol",s[s.TypeofNEObject=8192]="TypeofNEObject",s[s.TypeofNEFunction=16384]="TypeofNEFunction",s[s.TypeofNEHostObject=32768]="TypeofNEHostObject",s[s.EQUndefined=65536]="EQUndefined",s[s.EQNull=131072]="EQNull",s[s.EQUndefinedOrNull=262144]="EQUndefinedOrNull",s[s.NEUndefined=524288]="NEUndefined",s[s.NENull=1048576]="NENull",s[s.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",s[s.Truthy=4194304]="Truthy",s[s.Falsy=8388608]="Falsy",s[s.IsUndefined=16777216]="IsUndefined",s[s.IsNull=33554432]="IsNull",s[s.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",s[s.All=134217727]="All",s[s.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",s[s.BaseStringFacts=12582401]="BaseStringFacts",s[s.StringStrictFacts=16317953]="StringStrictFacts",s[s.StringFacts=16776705]="StringFacts",s[s.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",s[s.EmptyStringFacts=12582401]="EmptyStringFacts",s[s.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",s[s.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",s[s.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",s[s.BaseNumberFacts=12582146]="BaseNumberFacts",s[s.NumberStrictFacts=16317698]="NumberStrictFacts",s[s.NumberFacts=16776450]="NumberFacts",s[s.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",s[s.ZeroNumberFacts=12582146]="ZeroNumberFacts",s[s.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",s[s.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",s[s.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",s[s.BaseBigIntFacts=12581636]="BaseBigIntFacts",s[s.BigIntStrictFacts=16317188]="BigIntStrictFacts",s[s.BigIntFacts=16775940]="BigIntFacts",s[s.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",s[s.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",s[s.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",s[s.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",s[s.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",s[s.BaseBooleanFacts=12580616]="BaseBooleanFacts",s[s.BooleanStrictFacts=16316168]="BooleanStrictFacts",s[s.BooleanFacts=16774920]="BooleanFacts",s[s.FalseStrictFacts=12121864]="FalseStrictFacts",s[s.FalseFacts=12580616]="FalseFacts",s[s.TrueStrictFacts=7927560]="TrueStrictFacts",s[s.TrueFacts=16774920]="TrueFacts",s[s.SymbolStrictFacts=7925520]="SymbolStrictFacts",s[s.SymbolFacts=16772880]="SymbolFacts",s[s.ObjectStrictFacts=7888800]="ObjectStrictFacts",s[s.ObjectFacts=16736160]="ObjectFacts",s[s.FunctionStrictFacts=7880640]="FunctionStrictFacts",s[s.FunctionFacts=16728e3]="FunctionFacts",s[s.VoidFacts=9830144]="VoidFacts",s[s.UndefinedFacts=26607360]="UndefinedFacts",s[s.NullFacts=42917664]="NullFacts",s[s.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",s[s.EmptyObjectFacts=83886079]="EmptyObjectFacts",s[s.UnknownFacts=83886079]="UnknownFacts",s[s.AllTypeofNE=556800]="AllTypeofNE",s[s.OrFactsMask=8256]="OrFactsMask",s[s.AndFactsMask=134209471]="AndFactsMask",s))(bet||{}),mOt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),Eet=(s=>(s[s.Normal=0]="Normal",s[s.Contextual=1]="Contextual",s[s.Inferential=2]="Inferential",s[s.SkipContextSensitive=4]="SkipContextSensitive",s[s.SkipGenericFunctions=8]="SkipGenericFunctions",s[s.IsForSignatureHelp=16]="IsForSignatureHelp",s[s.RestBindingElement=32]="RestBindingElement",s[s.TypeOnly=64]="TypeOnly",s))(Eet||{}),vet=(s=>(s[s.None=0]="None",s[s.BivariantCallback=1]="BivariantCallback",s[s.StrictCallback=2]="StrictCallback",s[s.IgnoreReturnTypes=4]="IgnoreReturnTypes",s[s.StrictArity=8]="StrictArity",s[s.StrictTopSignature=16]="StrictTopSignature",s[s.Callback=3]="Callback",s))(vet||{}),kvs=dh(Etn,Gvs),Bet=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),btn=class{};function xvs(){this.flags=0}function rd(s){return s.id||(s.id=Ctn,Ctn++),s.id}function kg(s){return s.id||(s.id=mtn,mtn++),s.id}function wet(s,c){let g=PF(s);return g===1||c&&g===2}function COt(s){var c=[],g=u=>{c.push(u)},d,h,_=ZC.getSymbolConstructor(),S=ZC.getTypeConstructor(),R=ZC.getSignatureConstructor(),T=0,W=0,V=0,M=0,ee=0,re=0,ge,Ie,_e=!1,Ee=qu(),Ne=[1],Te=s.getCompilerOptions(),Ze=Mg(Te),We=i0(Te),Ue=!!Te.experimentalDecorators,$e=Pne(Te),Ye=hbe(Te),Tt=JY(Te),ot=a_(Te,"strictNullChecks"),Qe=a_(Te,"strictFunctionTypes"),mt=a_(Te,"strictBindCallApply"),ht=a_(Te,"strictPropertyInitialization"),_t=a_(Te,"strictBuiltinIteratorReturn"),Rt=a_(Te,"noImplicitAny"),Lt=a_(Te,"noImplicitThis"),Ke=a_(Te,"useUnknownInCatchVariables"),Pt=Te.exactOptionalPropertyTypes,_r=!!Te.noUncheckedSideEffectImports,Gt=h4s(),nt=t8s(),Dt=gWe(),tr=E5t(Te,Dt.syntacticBuilderResolver),ur=NLe({evaluateElementAccessExpression:QUs,evaluateEntityNameExpression:E0n}),Gr=qu(),dt=gA(4,"undefined");dt.declarations=[];var pr=gA(1536,"globalThis",8);pr.exports=Gr,pr.declarations=[],Gr.set(pr.escapedName,pr);var st=gA(4,"arguments"),ir=gA(4,"require"),zt=Te.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Ht=!Te.verbatimModuleSyntax,Br,mn,jn=0,Zi,Ns=0,An=JAe({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:st,globals:Gr,getSymbolOfDeclaration:Uo,error:Sr,getRequiresScopeChangeCache:TQ,setRequiresScopeChangeCache:Ise,lookup:f_,onPropertyWithInvalidInitializer:_pe,onFailedToResolveSymbol:qo,onSuccessfullyResolvedSymbol:py}),si=JAe({compilerOptions:Te,requireSymbol:ir,argumentsSymbol:st,globals:Gr,getSymbolOfDeclaration:Uo,error:Sr,getRequiresScopeChangeCache:TQ,setRequiresScopeChangeCache:Ise,lookup:VQs});let ks={getNodeCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.nodeCount,0),getIdentifierCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.identifierCount,0),getSymbolCount:()=>Ul(s.getSourceFiles(),(u,m)=>u+m.symbolCount,W),getTypeCount:()=>T,getInstantiationCount:()=>V,getRelationCacheSizes:()=>({assignable:l0.size,identity:u0.size,subtype:ck.size,strictSubtype:bf.size}),isUndefinedSymbol:u=>u===dt,isArgumentsSymbol:u=>u===st,isUnknownSymbol:u=>u===it,getMergedSymbol:jA,symbolIsValue:qi,getDiagnostics:D0n,getGlobalDiagnostics:IKs,getRecursionIdentity:yot,getUnmatchedProperties:JUt,getTypeOfSymbolAtLocation:(u,m)=>{let v=$l(m);return v?KHs(u,v):nn},getTypeOfSymbol:Io,getSymbolsOfParameterPropertyDeclaration:(u,m)=>{let v=$l(u,Si);return v===void 0?pe.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(pe.assert(Ve(v,v.parent)),UU(v,Ap(m)))},getDeclaredTypeOfSymbol:Fp,getPropertiesOfType:Gd,getPropertyOfType:(u,m)=>Gg(u,Ap(m)),getPrivateIdentifierPropertyOfType:(u,m,v)=>{let D=$l(v);if(!D)return;let P=Ap(m),Y=sOe(P,D);return Y?nat(u,Y):void 0},getTypeOfPropertyOfType:(u,m)=>Pi(u,Ap(m)),getIndexInfoOfType:(u,m)=>$x(u,m===0?$r:ri),getIndexInfosOfType:A0,getIndexInfosOfIndexSymbol:zst,getSignaturesOfType:tg,getIndexTypeOfType:(u,m)=>D5(u,m===0?$r:ri),getIndexType:u=>ON(u),getBaseTypes:Kw,getBaseTypeOfLiteralType:uZ,getWidenedType:D1,getWidenedLiteralType:V5,fillMissingTypeArguments:v9,getTypeFromTypeNode:u=>{let m=$l(u,uc);return m?nl(m):nn},getParameterType:CR,getParameterIdentifierInfoAtPosition:kXs,getPromisedTypeOfPromise:eSe,getAwaitedType:u=>Zq(u),getReturnTypeOfSignature:ud,isNullableType:iOe,getNullableType:OWe,getNonNullableType:gZ,getNonOptionalType:vot,getTypeArguments:lf,typeToTypeNode:Dt.typeToTypeNode,typePredicateToTypePredicateNode:Dt.typePredicateToTypePredicateNode,indexInfoToIndexSignatureDeclaration:Dt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:Dt.signatureToSignatureDeclaration,symbolToEntityName:Dt.symbolToEntityName,symbolToExpression:Dt.symbolToExpression,symbolToNode:Dt.symbolToNode,symbolToTypeParameterDeclarations:Dt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:Dt.symbolToParameterDeclaration,typeParameterToDeclaration:Dt.typeParameterToDeclaration,getSymbolsInScope:(u,m)=>{let v=$l(u);return v?hKs(v,m):[]},getSymbolAtLocation:u=>{let m=$l(u);return m?xv(m,!0):void 0},getIndexInfosAtLocation:u=>{let m=$l(u);return m?vKs(m):void 0},getShorthandAssignmentValueSymbol:u=>{let m=$l(u);return m?BKs(m):void 0},getExportSpecifierLocalTargetSymbol:u=>{let m=$l(u,R0);return m?wKs(m):void 0},getExportSymbolOfSymbol(u){return jA(u.exportSymbol||u)},getTypeAtLocation:u=>{let m=$l(u);return m?Vq(m):nn},getTypeOfAssignmentPattern:u=>{let m=$l(u,CY);return m&&xat(m)||nn},getPropertySymbolOfDestructuringAssignment:u=>{let m=$l(u,Ir);return m?TKs(m):void 0},signatureToString:(u,m,v,D)=>lW(u,$l(m),v,D),typeToString:(u,m,v)=>no(u,$l(m),v),symbolToString:(u,m,v,D)=>kl(u,$l(m),v,D),typePredicateToString:(u,m,v)=>gk(u,$l(m),v),writeSignature:(u,m,v,D,P,Y,oe,Be)=>lW(u,$l(m),v,D,P,Y,oe,Be),writeType:(u,m,v,D,P,Y,oe)=>no(u,$l(m),v,D,P,Y,oe),writeSymbol:(u,m,v,D,P)=>kl(u,$l(m),v,D,P),writeTypePredicate:(u,m,v,D)=>gk(u,$l(m),v,D),getAugmentedPropertiesOfType:Z8t,getRootSymbols:P0n,getSymbolOfExpando:lat,getContextualType:(u,m)=>{let v=$l(u,un);if(v)return m&4?ya(v,()=>Jy(v,m)):Jy(v,m)},getContextualTypeForObjectLiteralElement:u=>{let m=$l(u,yw);return m?EKt(m,void 0):void 0},getContextualTypeForArgumentAtIndex:(u,m)=>{let v=$l(u,hF);return v&&_Kt(v,m)},getContextualTypeForJsxAttribute:u=>{let m=$l(u,wJ);return m&&eCn(m,void 0)},isContextSensitive:bS,getTypeOfPropertyOfContextualType:W5,getFullyQualifiedName:f9,getResolvedSignature:(u,m,v)=>Gl(u,m,v,0),getCandidateSignaturesForStringLiteralCompletions:su,getResolvedSignatureForSignatureHelp:(u,m,v)=>Zn(u,()=>Gl(u,m,v,16)),getExpandedParameters:Lfn,hasEffectiveRestParameter:Ck,containsArgumentsReference:PJt,getConstantValue:u=>{let m=$l(u,Q0n);return m?Zat(m):void 0},isValidPropertyAccess:(u,m)=>{let v=$l(u,wre);return!!v&&OQs(v,Ap(m))},isValidPropertyAccessForCompletions:(u,m,v)=>{let D=$l(u,jo);return!!D&&DCn(D,m,v)},getSignatureFromDeclaration:u=>{let m=$l(u,bu);return m?yS(m):void 0},isImplementationOfOverload:u=>{let m=$l(u,bu);return m?H0n(m):void 0},getImmediateAliasedSymbol:jot,getAliasedSymbol:YC,getEmitResolver:Cpe,requiresAddingImplicitUndefined:DOe,getExportsOfModule:dq,getExportsAndPropertiesOfModule:yse,forEachExportAndPropertyOfModule:pq,getSymbolWalker:AOt(d3s,Tv,ud,Kw,pR,Io,L0,Xy,B0,lf),getAmbientModules:H8s,getJsxIntrinsicTagNamesAt:yQs,isOptionalParameter:u=>{let m=$l(u,Si);return m?m2e(m):!1},tryGetMemberInModuleExports:(u,m)=>nK(Ap(u),m),tryGetMemberInModuleExportsAndProperties:(u,m)=>fq(Ap(u),m),tryFindAmbientModule:u=>nIn(u,!0),getApparentType:fy,getUnionType:Ha,isTypeAssignableTo:dg,createAnonymousType:Hf,createSignature:PN,createSymbol:gA,createIndexInfo:eG,getAnyType:()=>hr,getStringType:()=>$r,getStringLiteralType:TE,getNumberType:()=>ri,getNumberLiteralType:fR,getBigIntType:()=>ao,getBigIntLiteralType:RWe,getUnknownType:()=>cn,createPromiseType:pOe,createArrayType:d0,getElementTypeOfArrayType:WWe,getBooleanType:()=>Mn,getFalseType:u=>u?Bs:Ys,getTrueType:u=>u?tn:wn,getVoidType:()=>es,getUndefinedType:()=>Bt,getNullType:()=>Hn,getESSymbolType:()=>ci,getNeverType:()=>Wi,getNonPrimitiveType:()=>fs,getOptionalType:()=>In,getPromiseType:()=>EWe(!1),getPromiseLikeType:()=>wIn(!1),getAnyAsyncIterableType:()=>{let u=SWe(!1);if(u!==oi)return iZ(u,[hr,hr,hr])},isSymbolAccessible:cW,isArrayType:Nv,isTupleType:yA,isArrayLikeType:T9,isEmptyAnonymousObjectType:mk,isTypeInvalidDueToUnionDiscriminant:UOs,getExactOptionalProperties:EMs,getAllPossiblePropertiesOfTypes:KOs,getSuggestedSymbolForNonexistentProperty:ZKt,getSuggestedSymbolForNonexistentJSXAttribute:wCn,getSuggestedSymbolForNonexistentSymbol:(u,m,v)=>RCn(u,Ap(m),v),getSuggestedSymbolForNonexistentModule:LKt,getSuggestedSymbolForNonexistentClassMember:BCn,getBaseConstraintOfType:L_,getDefaultFromTypeParameter:u=>u&&u.flags&262144?VQ(u):void 0,resolveName(u,m,v,D){return An(m,Ap(u),v,void 0,!1,D)},getJsxNamespace:u=>Bc(Mw(u)),getJsxFragmentFactory:u=>{let m=O8t(u);return m&&Bc(B0(m).escapedText)},getAccessibleSymbolChain:m9,getTypePredicateOfSignature:Tv,resolveExternalModuleName:u=>{let m=$l(u,un);return m&&F0(m,m,!0)},resolveExternalModuleSymbol:wE,tryGetThisTypeAt:(u,m,v)=>{let D=$l(u);return D&&IKt(D,m,v)},getTypeArgumentConstraint:u=>{let m=$l(u,uc);return m&&$4s(m)},getSuggestionDiagnostics:(u,m)=>{let v=$l(u,ll)||pe.fail("Could not determine parsed source file.");if(T3(v,Te,s))return E;let D;try{return d=m,G8t(v),pe.assert(!!(sa(v).flags&1)),D=Or(D,QU.getDiagnostics(v.fileName)),K_n(N0n(v),(P,Y,oe)=>{!pP(P)&&!R0n(Y,!!(P.flags&33554432))&&(D||(D=[])).push({...oe,category:2})}),D||E}finally{d=void 0}},runWithCancellationToken:(u,m)=>{try{return d=u,m(ks)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Ug,isDeclarationVisible:Ak,isPropertyAccessible:PKt,getTypeOnlyAliasDeclaration:uR,getMemberOverrideModifierStatus:GUs,isTypeParameterPossiblyReferenced:kWe,typeHasCallOrConstructSignatures:Gat,getSymbolFlags:Hb,getTypeArgumentsForResolvedSignature:Ic,isLibType:Sse};function Ic(u){if(u.mapper!==void 0)return cZ((u.target||u).typeParameters,u.mapper)}function su(u,m){let v=new Set,D=[];ya(m,()=>Gl(u,D,void 0,0));for(let P of D)v.add(P);D.length=0,Zn(m,()=>Gl(u,D,void 0,0));for(let P of D)v.add(P);return Do(v)}function Zn(u,m){if(u=ji(u,Tre),u){let v=[],D=[];for(;u;){let Y=sa(u);if(v.push([Y,Y.resolvedSignature]),Y.resolvedSignature=void 0,RF(u)){let oe=fa(Uo(u)),Be=oe.type;D.push([oe,Be]),oe.type=void 0}u=ji(u.parent,Tre)}let P=m();for(let[Y,oe]of v)Y.resolvedSignature=oe;for(let[Y,oe]of D)Y.type=oe;return P}return m()}function ya(u,m){let v=ji(u,hF);if(v){let P=u;do sa(P).skipDirectInference=!0,P=P.parent;while(P&&P!==v)}_e=!0;let D=Zn(u,m);if(_e=!1,v){let P=u;do sa(P).skipDirectInference=void 0,P=P.parent;while(P&&P!==v)}return D}function Gl(u,m,v,D){let P=$l(u,hF);Br=v;let Y=P?Hse(P,m,D):void 0;return Br=void 0,Y}var ba=new Map,Wo=new Map,hc=new Map,yr=new Map,hn=new Map,Oi=new Map,lo=new Map,pa=new Map,Oa=new Map,tl=new Map,Qu=new Map,Tg=new Map,Cs=new Map,Tu=new Map,Pr=new Map,Pn=[],pt=new Map,on=new Set,it=gA(4,"unknown"),nr=gA(0,"__resolving__"),Fr=new Map,Kr=new Map,Dn=new Set,hr=Vc(1,"any"),En=Vc(1,"any",262144,"auto"),Ni=Vc(1,"any",void 0,"wildcard"),Gi=Vc(1,"any",void 0,"blocked string"),nn=Vc(1,"error"),bn=Vc(1,"unresolved"),ds=Vc(1,"any",65536,"non-inferrable"),Mt=Vc(1,"intrinsic"),cn=Vc(2,"unknown"),Bt=Vc(32768,"undefined"),xe=ot?Bt:Vc(32768,"undefined",65536,"widening"),fr=Vc(32768,"undefined",void 0,"missing"),Je=Pt?fr:Bt,In=Vc(32768,"undefined",void 0,"optional"),Hn=Vc(65536,"null"),Ot=ot?Hn:Vc(65536,"null",65536,"widening"),$r=Vc(4,"string"),ri=Vc(8,"number"),ao=Vc(64,"bigint"),Bs=Vc(512,"false",void 0,"fresh"),Ys=Vc(512,"false"),tn=Vc(512,"true",void 0,"fresh"),wn=Vc(512,"true");tn.regularType=wn,tn.freshType=tn,wn.regularType=wn,wn.freshType=tn,Bs.regularType=Ys,Bs.freshType=Bs,Ys.regularType=Ys,Ys.freshType=Bs;var Mn=Ha([Ys,wn]),ci=Vc(4096,"symbol"),es=Vc(16384,"void"),Wi=Vc(131072,"never"),Vn=Vc(131072,"never",262144,"silent"),Ui=Vc(131072,"never",void 0,"implicit"),gs=Vc(131072,"never",void 0,"unreachable"),fs=Vc(67108864,"object"),bi=Ha([$r,ri]),mc=Ha([$r,ri,ci]),gg=Ha([ri,ao]),Ag=Ha([$r,ri,Mn,ao,Hn,Bt]),_u=hK(["",""],[ri]),wI=DWe(u=>u.flags&262144?K5s(u):u,()=>"(restrictive mapper)"),AI=DWe(u=>u.flags&262144?Ni:u,()=>"(permissive mapper)"),pp=Vc(131072,"never",void 0,"unique literal"),Dl=DWe(u=>u.flags&262144?pp:u,()=>"(unique literal mapper)"),yu,tm=DWe(u=>(yu&&(u===_f||u===QI||u===ve)&&yu(!0),u),()=>"(unmeasurable reporter)"),jp=DWe(u=>(yu&&(u===_f||u===QI||u===ve)&&yu(!1),u),()=>"(unreliable reporter)"),Xg=Hf(void 0,Ee,E,E,E),sh=Hf(void 0,Ee,E,E,E);sh.objectFlags|=2048;var dS=Hf(void 0,Ee,E,E,E);dS.objectFlags|=141440;var gu=gA(2048,"__type");gu.members=qu();var bg=Hf(gu,Ee,E,E,E),KA=Hf(void 0,Ee,E,E,E),TA=ot?Ha([Bt,Hn,KA]):cn,oi=Hf(void 0,Ee,E,E,E);oi.instantiations=new Map;var $d=Hf(void 0,Ee,E,E,E);$d.objectFlags|=262144;var YI=Hf(void 0,Ee,E,E,E),Fh=Hf(void 0,Ee,E,E,E),WC=Hf(void 0,Ee,E,E,E),_f=Yy(),QI=Yy();QI.constraint=_f;var ve=Yy(),mr=Yy(),ln=Yy();ln.constraint=mr;var ni=C2e(1,"<>",0,hr),Ls=PN(void 0,void 0,void 0,E,hr,void 0,0,0),Za=PN(void 0,void 0,void 0,E,nn,void 0,0,0),Go=PN(void 0,void 0,void 0,E,hr,void 0,0,0),Ss=PN(void 0,void 0,void 0,E,Vn,void 0,0,0),Uc=eG(ri,$r,!0),rl=eG($r,hr,!1),xd=new Map,Lg={get yieldType(){return pe.fail("Not supported")},get returnType(){return pe.fail("Not supported")},get nextType(){return pe.fail("Not supported")}},yf=yW(hr,hr,hr),rm=yW(Vn,Vn,Vn),_h={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:T3s,getGlobalIterableType:SWe,getGlobalIterableIteratorType:TIn,getGlobalIteratorObjectType:N3s,getGlobalGeneratorType:D3s,getGlobalBuiltinIteratorTypes:R3s,resolveIterationType:(u,m)=>Zq(u,m,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},Gp={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:k3s,getGlobalIterableType:sot,getGlobalIterableIteratorType:RIn,getGlobalIteratorObjectType:G3s,getGlobalGeneratorType:F3s,getGlobalBuiltinIteratorTypes:x3s,resolveIterationType:(u,m)=>u,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},oh,b1=new Map,Z_=new Map,m2,Vb,or,qn,Js,Hl,RA,NA,uA,hm,af,dI,XI,C2,d_,OC,E1,gy,yv,ik,Wx,Ox,Pb,qm,oR,pS,xN,at,en,gi,_i,ys,$s,wa,pc,ul,Fe,gr,Ln,bs,Xl,eg,jl,Eu,Df,Jg,MC,S1,fS,bv,XF,o9,My,sk,aR,WB,UP,br,sn,ei,is,Qs=new Map,Oo=0,Os=0,co=0,Yc=!1,tu=0,$a,ru,gl,kf=[],Wb=[],OB=[],p_=0,MB=[],v1=[],s5=[],GN=0,ok=[],o5=[],ak=0,gse=TE(""),hpe=fR(0),Ase=RWe({negative:!1,base10Value:"0"}),Mx=[],a5=[],WU=[],a9=0,OU=!1,qz=0,mpe=10,MU=[],$z=[],c5=[],dse=[],HU=[],eq=[],EQ=[],KP=[],tq=[],rq=[],SQ=[],jP=[],c9=[],JF=[],UF=[],KF=[],zP=[],l5=[],YU=[],u5=0,PA=EF(),QU=EF(),pse=g0(),jF,zF,ck=new Map,bf=new Map,l0=new Map,Ob=new Map,u0=new Map,g5=new Map,Ay=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Te.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return r8s(),ks;function lk(u){return!jo(u)||!Ir(u.name)||!jo(u.expression)&&!Ir(u.expression)?!1:Ir(u.expression)?Vo(u.expression)==="Symbol"&&L0(u.expression)===(Gse("Symbol",1160127,void 0)||it):Ir(u.expression.expression)?Vo(u.expression.name)==="Symbol"&&Vo(u.expression.expression)==="globalThis"&&L0(u.expression.expression)===pr:!1}function Hy(u){return u?Pr.get(u):void 0}function HB(u,m){return u&&Pr.set(u,m),m}function Mw(u){if(u){let m=ms(u);if(m)if(Pw(u)){if(m.localJsxFragmentNamespace)return m.localJsxFragmentNamespace;let v=m.pragmas.get("jsxfrag");if(v){let P=Ki(v)?v[0]:v;if(m.localJsxFragmentFactory=Bz(P.arguments.factory,Ze),Mr(m.localJsxFragmentFactory,d5,fC),m.localJsxFragmentFactory)return m.localJsxFragmentNamespace=B0(m.localJsxFragmentFactory).escapedText}let D=O8t(u);if(D)return m.localJsxFragmentFactory=D,m.localJsxFragmentNamespace=B0(D).escapedText}else{let v=A5(m);if(v)return m.localJsxNamespace=v}}return jF||(jF="React",Te.jsxFactory?(zF=Bz(Te.jsxFactory,Ze),Mr(zF,d5),zF&&(jF=B0(zF).escapedText)):Te.reactNamespace&&(jF=Ap(Te.reactNamespace))),zF||(zF=me.createQualifiedName(me.createIdentifier(Bc(jF)),"createElement")),jF}function A5(u){if(u.localJsxNamespace)return u.localJsxNamespace;let m=u.pragmas.get("jsx");if(m){let v=Ki(m)?m[0]:m;if(u.localJsxFactory=Bz(v.arguments.factory,Ze),Mr(u.localJsxFactory,d5,fC),u.localJsxFactory)return u.localJsxNamespace=B0(u.localJsxFactory).escapedText}}function d5(u){return TB(u,-1,-1),_s(u,d5,void 0)}function Cpe(u,m,v){return v||D0n(u,m),nt}function fse(u,m,...v){let D=u?mo(u,m,...v):Nf(m,...v),P=PA.lookup(D);return P||(PA.add(D),D)}function l9(u,m,v,...D){let P=Sr(m,v,...D);return P.skippedOn=u,P}function vQ(u,m,...v){return u?mo(u,m,...v):Nf(m,...v)}function Sr(u,m,...v){let D=vQ(u,m,...v);return PA.add(D),D}function XU(u){let v=ms(u).fileName;return fu(v,[".cts",".cjs"])?Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax:Z.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript}function Hx(u,m){u?PA.add(m):QU.add({...m,category:2})}function Hw(u,m,v,...D){if(m.pos<0||m.end<0){if(!u)return;let P=ms(m);Hx(u,"message"in v?qh(P,0,0,v,...D):Ut(P,v));return}Hx(u,"message"in v?mo(m,v,...D):Bw(ms(m),m,v))}function u9(u,m,v,...D){let P=Sr(u,v,...D);if(m){let Y=mo(u,Z.Did_you_forget_to_use_await);lg(P,Y)}return P}function qP(u,m){let v=Array.isArray(u)?F(u,Kh):Kh(u);return v&&lg(m,mo(v,Z.The_declaration_was_marked_as_deprecated_here)),QU.add(m),m}function dy(u){let m=$m(u);return m&&B(u.declarations)>1?m.flags&64?jt(u.declarations,cR):ue(u.declarations,cR):!!u.valueDeclaration&&cR(u.valueDeclaration)||B(u.declarations)&&ue(u.declarations,cR)}function cR(u){return!!(jQ(u)&536870912)}function YB(u,m,v){let D=mo(u,Z._0_is_deprecated,v);return qP(m,D)}function p5(u,m,v,D){let P=v?mo(u,Z.The_signature_0_of_1_is_deprecated,D,v):mo(u,Z._0_is_deprecated,D);return qP(m,P)}function gA(u,m,v){W++;let D=new _(u|33554432,m);return D.links=new btn,D.links.checkFlags=v||0,D}function IS(u,m){let v=gA(1,u);return v.links.type=m,v}function g9(u,m){let v=gA(4,u);return v.links.type=m,v}function JU(u){let m=0;return u&2&&(m|=111551),u&1&&(m|=111550),u&4&&(m|=0),u&8&&(m|=900095),u&16&&(m|=110991),u&32&&(m|=899503),u&64&&(m|=788872),u&256&&(m|=899327),u&128&&(m|=899967),u&512&&(m|=110735),u&8192&&(m|=103359),u&32768&&(m|=46015),u&65536&&(m|=78783),u&262144&&(m|=526824),u&524288&&(m|=788968),u&2097152&&(m|=2097152),m}function qF(u,m){m.mergeId||(m.mergeId=_tn,_tn++),MU[m.mergeId]=u}function BQ(u){let m=gA(u.flags,u.escapedName);return m.declarations=u.declarations?u.declarations.slice():[],m.parent=u.parent,u.valueDeclaration&&(m.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(m.constEnumOnlyModule=!0),u.members&&(m.members=new Map(u.members)),u.exports&&(m.exports=new Map(u.exports)),qF(m,u),m}function Ev(u,m,v=!1){if(!(u.flags&JU(m.flags))||(m.flags|u.flags)&67108864){if(m===u)return u;if(!(u.flags&33554432)){let Y=Zh(u);if(Y===it)return m;if(!(Y.flags&JU(m.flags))||(m.flags|Y.flags)&67108864)u=BQ(Y);else return D(u,m),m}m.flags&512&&u.flags&512&&u.constEnumOnlyModule&&!m.constEnumOnlyModule&&(u.constEnumOnlyModule=!1),u.flags|=m.flags,m.valueDeclaration&&S7(u,m.valueDeclaration),Or(u.declarations,m.declarations),m.members&&(u.members||(u.members=qu()),FN(u.members,m.members,v)),m.exports&&(u.exports||(u.exports=qu()),FN(u.exports,m.exports,v,u)),v||qF(u,m)}else u.flags&1024?u!==pr&&Sr(m.declarations&&Il(m.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,kl(u)):D(u,m);return u;function D(Y,oe){let Be=!!(Y.flags&384||oe.flags&384),Oe=!!(Y.flags&2||oe.flags&2),He=Be?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Oe?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,qe=oe.declarations&&ms(oe.declarations[0]),Vt=Y.declarations&&ms(Y.declarations[0]),kt=SY(qe,Te.checkJs),vr=SY(Vt,Te.checkJs),dn=kl(oe);if(qe&&Vt&&oh&&!Be&&qe!==Vt){let vn=qf(qe.path,Vt.path)===-1?qe:Vt,ii=vn===qe?Vt:qe,Yi=cr(oh,`${vn.path}|${ii.path}`,()=>({firstFile:vn,secondFile:ii,conflictingSymbols:new Map})),js=cr(Yi.conflictingSymbols,dn,()=>({isBlockScoped:Oe,firstFileLocations:[],secondFileLocations:[]}));kt||P(js.firstFileLocations,oe),vr||P(js.secondFileLocations,Y)}else kt||Yx(oe,He,dn,Y),vr||Yx(Y,He,dn,oe)}function P(Y,oe){if(oe.declarations)for(let Be of oe.declarations)Qi(Y,Be)}}function Yx(u,m,v,D){F(u.declarations,P=>{f5(P,m,v,D.declarations)})}function f5(u,m,v,D){let P=(VL(u,!1)?_ye(u):Il(u))||u,Y=fse(P,m,v);for(let oe of D||E){let Be=(VL(oe,!1)?_ye(oe):Il(oe))||oe;if(Be===P)continue;Y.relatedInformation=Y.relatedInformation||[];let Oe=mo(Be,Z._0_was_also_declared_here,v),He=mo(Be,Z.and_here);B(Y.relatedInformation)>=5||jt(Y.relatedInformation,qe=>X7(qe,He)===0||X7(qe,Oe)===0)||lg(Y,B(Y.relatedInformation)?He:Oe)}}function A9(u,m){if(!u?.size)return m;if(!m?.size)return u;let v=qu();return FN(v,u),FN(v,m),v}function FN(u,m,v=!1,D){m.forEach((P,Y)=>{let oe=u.get(Y),Be=oe?Ev(oe,P,v):jA(P);D&&oe&&(Be.parent=D),u.set(Y,Be)})}function wQ(u){var m,v,D;let P=u.parent;if(((m=P.symbol.declarations)==null?void 0:m[0])!==P){pe.assert(P.symbol.declarations.length>1);return}if(vB(P))FN(Gr,P.symbol.exports);else{let Y=u.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,oe=BE(u,u,Y,!1,!0);if(!oe)return;if(oe=wE(oe),oe.flags&1920)if(jt(Vb,Be=>oe===Be.symbol)){let Be=Ev(P.symbol,oe,!0);or||(or=new Map),or.set(u.text,Be)}else{if((v=oe.exports)!=null&&v.get("__export")&&((D=P.symbol.exports)!=null&&D.size)){let Be=SJt(oe,"resolvedExports");for(let[Oe,He]of Do(P.symbol.exports.entries()))Be.has(Oe)&&!oe.exports.has(Oe)&&Ev(Be.get(Oe),He)}Ev(oe,P.symbol)}else Sr(u,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,u.text)}}function I5(){let u=dt.escapedName,m=Gr.get(u);m?F(m.declarations,v=>{KY(v)||PA.add(mo(v,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,Bc(u)))}):Gr.set(u,dt)}function fa(u){if(u.flags&33554432)return u.links;let m=kg(u);return $z[m]??($z[m]=new btn)}function sa(u){let m=rd(u);return c5[m]||(c5[m]=new xvs)}function f_(u,m,v){if(v){let D=jA(u.get(m));if(D&&(D.flags&v||D.flags&2097152&&Hb(D)&v))return D}}function UU(u,m){let v=u.parent,D=u.parent.parent,P=f_(v.locals,m,111551),Y=f_(pk(D.symbol),m,111551);return P&&Y?[P,Y]:pe.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function $F(u,m){let v=ms(u),D=ms(m),P=tS(u);if(v!==D){if(We&&(v.externalModuleIndicator||D.externalModuleIndicator)||!Te.outFile||OY(m)||u.flags&33554432||oe(m,u))return!0;let He=s.getSourceFiles();return He.indexOf(v)<=He.indexOf(D)}if(m.flags&16777216||OY(m)||eKt(m))return!0;if(u.pos<=m.pos&&!(pi(u)&&$re(m.parent)&&!u.initializer&&!u.exclamationToken)){if(u.kind===209){let He=ML(m,209);return He?ji(He,hg)!==ji(u,hg)||u.posqe===u?"quit":Un(qe)?qe.parent.parent===u:!Ue&&So(qe)&&(qe.parent===u||uu(qe.parent)&&qe.parent.parent===u||fJ(qe.parent)&&qe.parent.parent===u||pi(qe.parent)&&qe.parent.parent===u||Si(qe.parent)&&qe.parent.parent.parent===u));return He?!Ue&&So(He)?!!ji(m,qe=>qe===He?"quit":bu(qe)&&!ZL(qe)):!1:!0}else{if(pi(u))return!Oe(u,m,!1);if(Ve(u,u.parent))return!(Ye&&hC(u)===hC(m)&&oe(m,u))}}return!0}if(m.parent.kind===282||m.parent.kind===278&&m.parent.isExportEquals||m.kind===278&&m.isExportEquals)return!0;if(oe(m,u))return Ye&&hC(u)&&(pi(u)||Ve(u,u.parent))?!Oe(u,m,!0):!0;return!1;function Y(He,qe){switch(He.parent.parent.kind){case 244:case 249:case 251:if(Yw(qe,He,P))return!0;break}let Vt=He.parent.parent;return DL(Vt)&&Yw(qe,Vt.expression,P)}function oe(He,qe){return Be(He,qe)}function Be(He,qe){return!!ji(He,Vt=>{if(Vt===P)return"quit";if(bu(Vt))return!ZL(Vt);if(fl(Vt))return qe.posHe.end?!1:ji(qe,vr=>{if(vr===He)return"quit";switch(vr.kind){case 220:return!0;case 173:return Vt&&(pi(He)&&vr.parent===He.parent||Ve(He,He.parent)&&vr.parent===He.parent.parent)?"quit":!0;case 242:switch(vr.parent.kind){case 178:case 175:case 179:return!0;default:return!1}default:return!1}})===void 0}}function TQ(u){return sa(u).declarationRequiresScopeChange}function Ise(u,m){sa(u).declarationRequiresScopeChange=m}function _pe(u,m,v,D){return Ye?!1:(u&&!D&&KU(u,m,m)||Sr(u,u&&v.type&&sl(v.type,u.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Wd(v.name),vE(m)),!0)}function qo(u,m,v,D){let P=Xs(m)?m:m.escapedText;g(()=>{if(!u||u.parent.kind!==325&&!KU(u,P,m)&&!$P(u)&&!hse(u,P,v)&&!uk(u,P)&&!tW(u,P,v)&&!lR(u,P,v)&&!nq(u,P,v)){let Y,oe;if(m&&(oe=ZQs(m),oe&&Sr(u,D,vE(m),oe)),!oe&&qz{var oe;let Be=m.escapedName,Oe=D&&ll(D)&&vl(D);if(u&&(v&2||(v&32||v&384)&&(v&111551)===111551)){let He=fn(m);(He.flags&2||He.flags&32||He.flags&384)&&hS(He,u)}if(Oe&&(v&111551)===111551&&!(u.flags&16777216)){let He=jA(m);B(He.declarations)&&ue(He.declarations,qe=>sEe(qe)||ll(qe)&&!!qe.symbol.globalExports)&&Hw(!Te.allowUmdGlobalAccess,u,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Bc(Be))}if(P&&!Y&&(v&111551)===111551){let He=jA(Yst(m)),qe=Rw(P);He===Uo(P)?Sr(u,Z.Parameter_0_cannot_reference_itself,Wd(P.name)):He.valueDeclaration&&He.valueDeclaration.pos>P.pos&&qe.parent.locals&&f_(qe.parent.locals,He.escapedName,v)===He&&Sr(u,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,Wd(P.name),Wd(u))}if(u&&v&111551&&m.flags&2097152&&!(m.flags&111551)&&!JL(u)){let He=uR(m,111551);if(He){let qe=He.kind===282||He.kind===279||He.kind===281?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Vt=Bc(Be);hu(Sr(u,qe,Vt),He,Vt)}}if(Te.isolatedModules&&m&&Oe&&(v&111551)===111551){let qe=f_(Gr,Be,v)===m&&ll(D)&&D.locals&&f_(D.locals,Be,-111552);if(qe){let Vt=(oe=qe.declarations)==null?void 0:oe.find(kt=>kt.kind===277||kt.kind===274||kt.kind===275||kt.kind===272);Vt&&!rN(Vt)&&Sr(Vt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Bc(Be))}}})}function hu(u,m,v){return m?lg(u,mo(m,m.kind===282||m.kind===279||m.kind===281?Z._0_was_exported_here:Z._0_was_imported_here,v)):u}function vE(u){return Xs(u)?Bc(u):Wd(u)}function KU(u,m,v){if(!Ir(u)||u.escapedText!==m||k0n(u)||OY(u))return!1;let D=r0(u,!1,!1),P=D;for(;P;){if(xa(P.parent)){let Y=Uo(P.parent);if(!Y)break;let oe=Io(Y);if(Gg(oe,m))return Sr(u,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,vE(v),kl(Y)),!0;if(P===D&&!cg(P)){let Be=Fp(Y).thisType;if(Gg(Be,m))return Sr(u,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,vE(v)),!0}}P=P.parent}return!1}function $P(u){let m=Fo(u);return m&&TI(m,64,!0)?(Sr(u,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,xp(m)),!0):!1}function Fo(u){switch(u.kind){case 80:case 212:return u.parent?Fo(u.parent):void 0;case 234:if(Od(u.expression))return u.expression;default:return}}function hse(u,m,v){let D=1920|(wo(u)?111551:0);if(v===D){let P=Zh(An(u,m,788968&~D,void 0,!1)),Y=u.parent;if(P){if(zi(Y)){pe.assert(Y.left===u,"Should only be resolving left side of qualified name as a namespace");let oe=Y.right.escapedText;if(Gg(Fp(P),oe))return Sr(Y,Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,Bc(m),Bc(oe)),!0}return Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Bc(m)),!0}}return!1}function nq(u,m,v){if(v&788584){let D=Zh(An(u,m,111127,void 0,!1));if(D&&!(D.flags&1920))return Sr(u,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Bc(m)),!0}return!1}function G0(u){return u==="any"||u==="string"||u==="number"||u==="boolean"||u==="never"||u==="unknown"}function uk(u,m){return G0(m)&&u.parent.kind===282?(Sr(u,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,m),!0):!1}function lR(u,m,v){if(v&111551){if(G0(m)){let Y=u.parent.parent;if(Y&&Y.parent&&h1(Y)){let oe=Y.token;Y.parent.kind===265&&oe===96?Sr(u,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Bc(m)):xa(Y.parent)&&oe===96?Sr(u,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Bc(m)):xa(Y.parent)&&oe===119&&Sr(u,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Bc(m))}else Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Bc(m));return!0}let D=Zh(An(u,m,788544,void 0,!1)),P=D&&Hb(D);if(D&&P!==void 0&&!(P&111551)){let Y=Bc(m);return jU(m)?Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,Y):eW(u,D)?Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,Y,Y==="K"?"P":"K"):Sr(u,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Y),!0}}return!1}function eW(u,m){let v=ji(u.parent,D=>Un(D)||ss(D)?!1:mh(D)||"quit");if(v&&v.members.length===1){let D=Fp(m);return!!(D.flags&1048576)&&j2e(D,384,!0)}return!1}function jU(u){switch(u){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function tW(u,m,v){if(v&111127){if(Zh(An(u,m,1024,void 0,!1)))return Sr(u,Z.Cannot_use_namespace_0_as_a_value,Bc(m)),!0}else if(v&788544&&Zh(An(u,m,1536,void 0,!1)))return Sr(u,Z.Cannot_use_namespace_0_as_a_type,Bc(m)),!0;return!1}function hS(u,m){var v;if(pe.assert(!!(u.flags&2||u.flags&32||u.flags&384)),u.flags&67108881&&u.flags&32)return;let D=(v=u.declarations)==null?void 0:v.find(P=>ZJ(P)||xa(P)||P.kind===267);if(D===void 0)return pe.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!$F(D,m)){let P,Y=Wd(Il(D));u.flags&2?P=Sr(m,Z.Block_scoped_variable_0_used_before_its_declaration,Y):u.flags&32?P=Sr(m,Z.Class_0_used_before_its_declaration,Y):u.flags&256?P=Sr(m,Z.Enum_0_used_before_its_declaration,Y):(pe.assert(!!(u.flags&128)),sS(Te)&&(P=Sr(m,Z.Enum_0_used_before_its_declaration,Y))),P&&lg(P,mo(D,Z._0_is_declared_here,Y))}}function Yw(u,m,v){return!!m&&!!ji(u,D=>D===m||(D===v||bu(D)&&(!ZL(D)||SI(D)&3)?"quit":!1))}function Sv(u){switch(u.kind){case 272:return u;case 274:return u.parent;case 275:return u.parent.parent;case 277:return u.parent.parent.parent;default:return}}function Mb(u){return u.declarations&&be(u.declarations,d9)}function d9(u){return u.kind===272||u.kind===271||u.kind===274&&!!u.name||u.kind===275||u.kind===281||u.kind===277||u.kind===282||u.kind===278&&Ine(u)||fo(u)&&nI(u)===2&&Ine(u)||_p(u)&&fo(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64&&h5(u.parent.right)||u.kind===305||u.kind===304&&h5(u.initializer)||u.kind===261&&CP(u)||u.kind===209&&CP(u.parent.parent)}function h5(u){return $ge(u)||UA(u)&&YN(u)}function iq(u,m){let v=aq(u);if(v){let P=oU(v.expression).arguments[0];return Ir(v.name)?Zh(Gg(iIn(P),v.name.escapedText)):void 0}if(nc(u)||u.moduleReference.kind===284){let P=F0(u,Cye(u)||_7(u)),Y=wE(P);if(Y&&102<=We&&We<=199){let oe=RQ(Y,"module.exports",u,m);if(oe)return oe}return vv(u,P,Y,!1),Y}let D=oW(u.moduleReference,m);return m5(u,D),D}function m5(u,m){if(vv(u,void 0,m,!1)&&!u.isTypeOnly){let v=uR(Uo(u)),D=v.kind===282||v.kind===279,P=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,Y=D?Z._0_was_exported_here:Z._0_was_imported_here,oe=v.kind===279?"*":HD(v.name);lg(Sr(u.moduleReference,P),mo(v,Y,oe))}}function rW(u,m,v,D){let P=u.exports.get("export="),Y=P?Gg(Io(P),m,!0):u.exports.get(m),oe=Zh(Y,D);return vv(v,Y,oe,!1),oe}function sq(u){return Cf(u)&&!u.isExportEquals||Ga(u,2048)||R0(u)||tk(u)}function eZ(u){return mA(u)?s.getEmitSyntaxForUsageLocation(ms(u),u):void 0}function ZN(u,m){return u===99&&m===1}function nW(u,m){if(100<=We&&We<=199&&eZ(u)===99){m??(m=F0(u,u,!0));let D=m&&FJ(m);return D&&(Zu(D)||g9e(D.fileName)===".d.json.ts")}return!1}function C5(u,m,v,D){let P=u&&eZ(D);if(u&&P!==void 0){let Y=s.getImpliedNodeFormatForEmit(u);if(P===99&&Y===1&&100<=We&&We<=199)return!0;if(P===99&&Y===99)return!1}if(!Tt)return!1;if(!u||u.isDeclarationFile){let Y=rW(m,"default",void 0,!0);return!(Y&&jt(Y.declarations,sq)||rW(m,Ap("__esModule"),void 0,v))}return n0(u)?typeof u.externalModuleIndicator!="object"&&!rW(m,Ap("__esModule"),void 0,v):Xw(m)}function p9(u,m){let v=F0(u,u.parent.moduleSpecifier);if(v)return iW(v,u,m)}function iW(u,m,v){var D;let P=(D=u.declarations)==null?void 0:D.find(ll),Y=Qw(m),oe,Be;if(NY(u))oe=u;else if(P&&Y&&102<=We&&We<=199&&eZ(Y)===1&&s.getImpliedNodeFormatForEmit(P)===99&&(Be=rW(u,"module.exports",m,v))){if(!kw(Te)){Sr(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,kl(u),"esModuleInterop");return}return vv(m,Be,void 0,!1),Be}else oe=rW(u,"default",m,v);if(!Y)return oe;let Oe=nW(Y,u),He=C5(P,u,v,Y);if(!oe&&!He&&!Oe)if(Xw(u)&&!Tt){let qe=We>=5?"allowSyntheticDefaultImports":"esModuleInterop",kt=u.exports.get("export=").valueDeclaration,vr=Sr(m.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,kl(u),qe);kt&&lg(vr,mo(kt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,qe))}else Vw(m)?tZ(u,m):zU(u,u,m,eS(m)&&m.propertyName||m.name);else if(He||Oe){let qe=wE(u,v)||Zh(u,v);return vv(m,u,qe,!1),qe}return vv(m,oe,void 0,!1),oe}function Qw(u){switch(u.kind){case 274:return u.parent.moduleSpecifier;case 272:return ZF(u.moduleReference)?u.moduleReference.expression:void 0;case 275:return u.parent.parent.moduleSpecifier;case 277:return u.parent.parent.parent.moduleSpecifier;case 282:return u.parent.parent.moduleSpecifier;default:return pe.assertNever(u)}}function tZ(u,m){var v,D,P;if((v=u.exports)!=null&&v.has(m.symbol.escapedName))Sr(m.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,kl(u),kl(m.symbol));else{let Y=Sr(m.name,Z.Module_0_has_no_default_export,kl(u)),oe=(D=u.exports)==null?void 0:D.get("__export");if(oe){let Be=(P=oe.declarations)==null?void 0:P.find(Oe=>{var He,qe;return!!(Gh(Oe)&&Oe.moduleSpecifier&&((qe=(He=F0(Oe,Oe.moduleSpecifier))==null?void 0:He.exports)!=null&&qe.has("default")))});Be&&lg(Y,mo(Be,Z.export_Asterisk_does_not_re_export_a_default))}}}function Qx(u,m){let v=u.parent.parent.moduleSpecifier,D=F0(u,v),P=Ux(D,v,m,!1);return vv(u,D,P,!1),P}function sW(u,m){let v=u.parent.moduleSpecifier,D=v&&F0(u,v),P=v&&Ux(D,v,m,!1);return vv(u,D,P,!1),P}function HC(u,m){if(u===it&&m===it)return it;if(u.flags&790504)return u;let v=gA(u.flags|m.flags,u.escapedName);return pe.assert(u.declarations||m.declarations),v.declarations=io(Nn(u.declarations,m.declarations),yg),v.parent=u.parent||m.parent,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration),m.members&&(v.members=new Map(m.members)),u.exports&&(v.exports=new Map(u.exports)),v}function RQ(u,m,v,D){var P;if(u.flags&1536){let Y=B1(u).get(m),oe=Zh(Y,D),Be=(P=fa(u).typeOnlyExportStarMap)==null?void 0:P.get(m);return vv(v,Y,oe,!1,Be,m),oe}}function Xx(u,m){if(u.flags&3){let v=u.valueDeclaration.type;if(v)return Zh(Gg(nl(v),m))}}function _5(u,m,v=!1){var D;let P=Cye(u)||u.moduleSpecifier,Y=F0(u,P),oe=!jo(m)&&m.propertyName||m.name;if(!Ir(oe)&&oe.kind!==11)return;let Be=CF(oe),He=Ux(Y,P,!1,Be==="default"&&Tt);if(He&&(Be||oe.kind===11)){if(NY(Y))return Y;let qe;Y&&Y.exports&&Y.exports.get("export=")?qe=Gg(Io(He),Be,!0):qe=Xx(He,Be),qe=Zh(qe,v);let Vt=RQ(He,Be,m,v);if(Vt===void 0&&Be==="default"){let vr=(D=Y.declarations)==null?void 0:D.find(ll);(nW(P,Y)||C5(vr,Y,v,P))&&(Vt=wE(Y,v)||Zh(Y,v))}let kt=Vt&&qe&&Vt!==qe?HC(qe,Vt):Vt||qe;return eS(m)&&nW(P,Y)&&Be!=="default"?Sr(oe,Z.Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0,jS[We]):kt||zU(Y,He,u,oe),kt}}function zU(u,m,v,D){var P;let Y=f9(u,v),oe=Wd(D),Be=Ir(D)?LKt(D,m):void 0;if(Be!==void 0){let Oe=kl(Be),He=Sr(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,Y,oe,Oe);Be.valueDeclaration&&lg(He,mo(Be.valueDeclaration,Z._0_is_declared_here,Oe))}else(P=u.exports)!=null&&P.has("default")?Sr(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,Y,oe):Jx(v,D,oe,u,Y)}function Jx(u,m,v,D,P){var Y,oe;let Be=(oe=(Y=Gs(D.valueDeclaration,WI))==null?void 0:Y.locals)==null?void 0:oe.get(CF(m)),Oe=D.exports;if(Be){let He=Oe?.get("export=");if(He)Et(He,Be)?mse(u,m,v,P):Sr(m,Z.Module_0_has_no_exported_member_1,P,v);else{let qe=Oe?de(VJt(Oe),kt=>!!Et(kt,Be)):void 0,Vt=qe?Sr(m,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,P,v,kl(qe)):Sr(m,Z.Module_0_declares_1_locally_but_it_is_not_exported,P,v);Be.declarations&&lg(Vt,...At(Be.declarations,(kt,vr)=>mo(kt,vr===0?Z._0_is_declared_here:Z.and_here,v)))}}else Sr(m,Z.Module_0_has_no_exported_member_1,P,v)}function mse(u,m,v,D){if(We>=5){let P=kw(Te)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v)}else if(wo(u)){let P=kw(Te)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v)}else{let P=kw(Te)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Sr(m,P,v,v,D)}}function oq(u,m){if(uy(u)&&lv(u.propertyName||u.name)){let oe=Qw(u),Be=oe&&F0(u,oe);if(Be)return iW(Be,u,m)}let v=hg(u)?Rw(u):u.parent.parent.parent,D=aq(v),P=_5(v,D||u,m),Y=u.propertyName||u.name;return D&&P&&Ir(Y)?Zh(Gg(Io(P),Y.escapedText),m):(vv(u,void 0,P,!1),P)}function aq(u){if(nc(u)&&u.initializer&&jo(u.initializer))return u.initializer}function ype(u,m){if(mE(u.parent)){let v=wE(u.parent.symbol,m);return vv(u,void 0,v,!1),v}}function cq(u,m,v){let D=u.propertyName||u.name;if(lv(D)){let Y=Qw(u),oe=Y&&F0(u,Y);if(oe)return iW(oe,u,!!v)}let P=u.parent.parent.moduleSpecifier?_5(u.parent.parent,u,v):D.kind===11?void 0:TI(D,m,!1,v);return vv(u,void 0,P,!1),P}function y5(u,m){let v=Cf(u)?u.expression:u.right,D=rZ(v,m);return vv(u,void 0,D,!1),D}function rZ(u,m){if(vd(u))return RI(u).symbol;if(!fC(u)&&!Od(u))return;let v=TI(u,901119,!0,m);return v||(RI(u),sa(u).resolvedSymbol)}function Cse(u,m){if(fo(u.parent)&&u.parent.left===u&&u.parent.operatorToken.kind===64)return rZ(u.parent.right,m)}function b5(u,m=!1){switch(u.kind){case 272:case 261:return iq(u,m);case 274:return p9(u,m);case 275:return Qx(u,m);case 281:return sW(u,m);case 277:case 209:return oq(u,m);case 282:return cq(u,901119,m);case 278:case 227:return y5(u,m);case 271:return ype(u,m);case 305:return TI(u.name,901119,!0,m);case 304:return rZ(u.initializer,m);case 213:case 212:return Cse(u,m);default:return pe.fail()}}function qU(u,m=901119){return u?(u.flags&(2097152|m))===2097152||!!(u.flags&2097152&&u.flags&67108864):!1}function Zh(u,m){return!m&&qU(u)?YC(u):u}function YC(u){pe.assert((u.flags&2097152)!==0,"Should only get Alias here.");let m=fa(u);if(m.aliasTarget)m.aliasTarget===nr&&(m.aliasTarget=it);else{m.aliasTarget=nr;let v=Mb(u);if(!v)return pe.fail();let D=b5(v);m.aliasTarget===nr?m.aliasTarget=D||it:Sr(v,Z.Circular_definition_of_import_alias_0,kl(u))}return m.aliasTarget}function lq(u){if(fa(u).aliasTarget!==nr)return YC(u)}function Hb(u,m,v){let D=m&&uR(u),P=D&&Gh(D),Y=D&&(P?F0(D.moduleSpecifier,D.moduleSpecifier,!0):YC(D.symbol)),oe=P&&Y?LN(Y):void 0,Be=v?0:u.flags,Oe;for(;u.flags&2097152;){let He=fn(YC(u));if(!P&&He===Y||oe?.get(He.escapedName)===He)break;if(He===it)return-1;if(He===u||Oe?.has(He))break;He.flags&2097152&&(Oe?Oe.add(He):Oe=new Set([u,He])),Be|=He.flags,u=He}return Be}function vv(u,m,v,D,P,Y){if(!u||jo(u))return!1;let oe=Uo(u);if(nN(u)){let Oe=fa(oe);return Oe.typeOnlyDeclaration=u,!0}if(P){let Oe=fa(oe);return Oe.typeOnlyDeclaration=P,oe.escapedName!==Y&&(Oe.typeOnlyExportStarName=Y),!0}let Be=fa(oe);return NQ(Be,m,D)||NQ(Be,v,D)}function NQ(u,m,v){var D;if(m&&(u.typeOnlyDeclaration===void 0||v&&u.typeOnlyDeclaration===!1)){let P=((D=m.exports)==null?void 0:D.get("export="))??m,Y=P.declarations&&de(P.declarations,nN);u.typeOnlyDeclaration=Y??fa(P).typeOnlyDeclaration??!1}return!!u.typeOnlyDeclaration}function uR(u,m){var v;if(!(u.flags&2097152))return;let D=fa(u);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let P=Zh(u);vv((v=u.declarations)==null?void 0:v[0],Mb(u)&&jot(u),P,!0)}if(m===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let P=D.typeOnlyDeclaration.kind===279?Zh(LN(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||u.escapedName)):YC(D.typeOnlyDeclaration.symbol);return Hb(P)&m?D.typeOnlyDeclaration:void 0}}function oW(u,m){return u.kind===80&&P7(u)&&(u=u.parent),u.kind===80||u.parent.kind===167?TI(u,1920,!1,m):(pe.assert(u.parent.kind===272),TI(u,901119,!1,m))}function f9(u,m){return u.parent?f9(u.parent,m)+"."+kl(u):kl(u,m,void 0,36)}function uq(u){for(;zi(u.parent);)u=u.parent;return u}function bpe(u){let m=B0(u),v=An(m,m,111551,void 0,!0);if(v){for(;zi(m.parent);){let D=Io(v);if(v=Gg(D,m.parent.right.escapedText),!v)return;m=m.parent}return v}}function TI(u,m,v,D,P){if(sf(u))return;let Y=1920|(wo(u)?m&111551:0),oe;if(u.kind===80){let Be=m===Y||sp(u)?Z.Cannot_find_namespace_0:imn(B0(u)),Oe=wo(u)&&!sp(u)?_se(u,m):void 0;if(oe=jA(An(P||u,u,m,v||Oe?void 0:Be,!0,!1)),!oe)return jA(Oe)}else if(u.kind===167||u.kind===212){let Be=u.kind===167?u.left:u.expression,Oe=u.kind===167?u.right:u.name,He=TI(Be,Y,v,!1,P);if(!He||sf(Oe))return;if(He===it)return He;if(He.valueDeclaration&&wo(He.valueDeclaration)&&k_(Te)!==100&&nc(He.valueDeclaration)&&He.valueDeclaration.initializer&&e_n(He.valueDeclaration.initializer)){let qe=He.valueDeclaration.initializer.arguments[0],Vt=F0(qe,qe);if(Vt){let kt=wE(Vt);kt&&(He=kt)}}if(oe=jA(f_(B1(He),Oe.escapedText,m)),!oe&&He.flags&2097152&&(oe=jA(f_(B1(YC(He)),Oe.escapedText,m))),!oe){if(!v){let qe=f9(He),Vt=Wd(Oe),kt=LKt(Oe,He);if(kt){Sr(Oe,Z._0_has_no_exported_member_named_1_Did_you_mean_2,qe,Vt,kl(kt));return}let vr=zi(u)&&uq(u);if(qn&&m&788968&&vr&&!CN(vr.parent)&&bpe(vr)){Sr(vr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,oy(vr));return}if(m&1920&&zi(u.parent)){let vn=jA(f_(B1(He),Oe.escapedText,788968));if(vn){Sr(u.parent.right,Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,kl(vn),Bc(u.parent.right.escapedText));return}}Sr(Oe,Z.Namespace_0_has_no_exported_member_1,qe,Vt)}return}}else pe.assertNever(u,"Unknown entity name kind.");return!sp(u)&&fC(u)&&(oe.flags&2097152||u.parent.kind===278)&&vv(Rye(u),oe,void 0,!0),oe.flags&m||D?oe:YC(oe)}function _se(u,m){if(rot(u.parent)){let v=$U(u.parent);if(v)return An(v,u,m,void 0,!0)}}function $U(u){if(ji(u,P=>l3(P)||P.flags&16777216?iS(P):"quit"))return;let v=bP(u);if(v&&VC(v)&&lne(v.expression)){let P=Uo(v.expression.left);if(P)return DQ(P)}if(v&&UA(v)&&lne(v.parent)&&VC(v.parent.parent)){let P=Uo(v.parent.left);if(P)return DQ(P)}if(v&&(a2(v)||fm(v))&&fo(v.parent.parent)&&nI(v.parent.parent)===6){let P=Uo(v.parent.parent.left);if(P)return DQ(P)}let D=WL(u);if(D&&bu(D)){let P=Uo(D);return P&&P.valueDeclaration}}function DQ(u){let m=u.parent.valueDeclaration;return m?(b7(m)?FY(m):l1(m)?E7(m):void 0)||m:void 0}function gq(u){let m=u.valueDeclaration;if(!m||!wo(m)||u.flags&524288||VL(m,!1))return;let v=nc(m)?E7(m):FY(m);if(v){let D=mS(v);if(D)return JKt(D,u)}}function F0(u,m,v){let P=k_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return BE(u,m,v?void 0:P,v)}function BE(u,m,v,D=!1,P=!1){return mA(m)?eK(u,m.text,v,D?void 0:m,P):void 0}function eK(u,m,v,D,P=!1){var Y,oe,Be,Oe,He,qe,Vt,kt,vr,dn,vn,ii;if(D&&Ac(m,"@types/")){let Kc=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Vu=Nm(m,"@types/");Sr(D,Kc,Vu,m)}let Yi=nIn(m,!0);if(Yi)return Yi;let js=ms(u),Co=mA(u)?u:((Y=xh(u)?u:u.parent&&xh(u.parent)&&u.parent.name===u?u.parent:void 0)==null?void 0:Y.name)||((oe=ky(u)?u:void 0)==null?void 0:oe.argument.literal)||(nc(u)&&u.initializer&&ay(u.initializer,!0)?u.initializer.arguments[0]:void 0)||((Be=ji(u,Up))==null?void 0:Be.arguments[0])||((Oe=ji(u,Hp(Mf,SN,Gh)))==null?void 0:Oe.moduleSpecifier)||((He=ji(u,LL))==null?void 0:He.moduleReference.expression),Ji=Co&&mA(Co)?s.getModeForUsageLocation(js,Co):s.getDefaultResolutionModeForFile(js),Mi=k_(Te),To=(qe=s.getResolvedModule(js,m,Ji))==null?void 0:qe.resolvedModule,Ka=D&&To&&htt(Te,To,js),yl=To&&(!Ka||Ka===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&s.getSourceFile(To.resolvedFileName);if(yl){if(Ka&&Sr(D,Ka,m,To.resolvedFileName),To.resolvedUsingTsExtension&&PC(m)){let Kc=((Vt=ji(u,Mf))==null?void 0:Vt.importClause)||ji(u,Hp(km,Gh));(D&&Kc&&!Kc.isTypeOnly||ji(u,Up))&&Sr(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,ka(pe.checkDefined(O7(m))))}else if(To.resolvedUsingTsExtension&&!Die(Te,js.fileName)){let Kc=((kt=ji(u,Mf))==null?void 0:kt.importClause)||ji(u,Hp(km,Gh));if(D&&!(Kc?.isTypeOnly||ji(u,Um))){let Vu=pe.checkDefined(O7(m));Sr(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Vu)}}else if(Te.rewriteRelativeImportExtensions&&!(u.flags&33554432)&&!PC(m)&&!ky(u)&&!sge(u)){let Kc=une(m,Te);if(!To.resolvedUsingTsExtension&&Kc)Sr(D,Z.This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0,i1(Xc(js.fileName,s.getCurrentDirectory()),To.resolvedFileName,JD(s)));else if(To.resolvedUsingTsExtension&&!Kc&&SP(yl,s))Sr(D,Z.This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path,gE(m));else if(To.resolvedUsingTsExtension&&Kc){let Vu=(vr=s.getRedirectFromSourceFile(yl.path))==null?void 0:vr.resolvedRef;if(Vu){let gd=!s.useCaseSensitiveFileNames(),Ll=s.getCommonSourceDirectory(),Ef=RU(Vu.commandLine,gd),UI=mp(Ll,Ef,gd),V0=mp(Te.outDir||Ll,Vu.commandLine.options.outDir||Ef,gd);UI!==V0&&Sr(D,Z.This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files)}}}if(yl.symbol){if(D&&To.isExternalLibraryImport&&!ez(To.extension)&&E5(!1,D,js,Ji,To,m),D&&(We===100||We===101)){let Kc=js.impliedNodeFormat===1&&!ji(u,Up)||!!ji(u,km),Vu=ji(u,gd=>Um(gd)||Gh(gd)||Mf(gd)||SN(gd));if(Kc&&yl.impliedNodeFormat===99&&!TLe(Vu))if(ji(u,km))Sr(D,Z.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead,m);else{let gd,Ll=QT(js.fileName);(Ll===".ts"||Ll===".js"||Ll===".tsx"||Ll===".jsx")&&(gd=l7(js));let Ef=Vu?.kind===273&&((dn=Vu.importClause)!=null&&dn.isTypeOnly)?Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Vu?.kind===206?Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:Z.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead;PA.add(Bw(ms(D),D,wu(gd,Ef,m)))}}return jA(yl.symbol)}D&&v&&!Wbe(D)&&Sr(D,Z.File_0_is_not_a_module,yl.fileName);return}if(Vb){let Kc=YA(Vb,Vu=>Vu.pattern,m);if(Kc){let Vu=or&&or.get(m);return jA(Vu||Kc.symbol)}}if(!D)return;if(To&&!ez(To.extension)&&Ka===void 0||Ka===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(P){let Kc=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;Sr(D,Kc,m,To.resolvedFileName)}else E5(Rt&&!!v,D,js,Ji,To,m);return}if(v){if(To){let Kc=s.getRedirectFromSourceFile(To.resolvedFileName);if(Kc?.outputDts){Sr(D,Z.Output_file_0_has_not_been_built_from_source_file_1,Kc.outputDts,To.resolvedFileName);return}}if(Ka)Sr(D,Ka,m,To.resolvedFileName);else{let Kc=Ip(m)&&!E0(m),Vu=Mi===3||Mi===99;if(!NP(Te)&&aA(m,".json")&&Mi!==1&&wAe(Te))Sr(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,m);else if(Ji===99&&Vu&&Kc){let gd=Xc(m,Mo(js.path)),Ll=(vn=Ay.find(([Ef,UI])=>s.fileExists(gd+Ef)))==null?void 0:vn[1];Ll?Sr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,m+Ll):Sr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if((ii=s.getResolvedModule(js,m,Ji))!=null&&ii.alternateResult){let gd=kJ(js,s,m,Ji,m);Hw(!0,D,wu(gd,v,m))}else Sr(D,v,m)}}return;function ka(Kc){let Vu=Xne(m,Kc);if(Wne(We)||Ji===99){let gd=PC(m)&&Die(Te);return Vu+(Kc===".mts"||Kc===".d.mts"?gd?".mts":".mjs":Kc===".cts"||Kc===".d.mts"?gd?".cts":".cjs":gd?".ts":".js")}return Vu}}function E5(u,m,v,D,{packageId:P,resolvedFileName:Y},oe){if(Wbe(m))return;let Be;!Xr(oe)&&P&&(Be=kJ(v,s,oe,D,P.name)),Hw(u,m,wu(Be,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,oe,Y))}function wE(u,m){if(u?.exports){let v=Zh(u.exports.get("export="),m),D=tK(jA(v),jA(u));return jA(D)||u}}function tK(u,m){if(!u||u===it||u===m||m.exports.size===1||u.flags&2097152)return u;let v=fa(u);if(v.cjsExportMerged)return v.cjsExportMerged;let D=u.flags&33554432?u:BQ(u);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=qu()),m.exports.forEach((P,Y)=>{Y!=="export="&&D.exports.set(Y,D.exports.has(Y)?Ev(D.exports.get(Y),P):P)}),D===u&&(fa(D).resolvedExports=void 0,fa(D).resolvedMembers=void 0),fa(D).cjsExportMerged=D,v.cjsExportMerged=D}function Ux(u,m,v,D){var P;let Y=wE(u,v);if(!v&&Y){if(!D&&!(Y.flags&1539)&&!Cp(Y,308)){let Oe=We>=5?"allowSyntheticDefaultImports":"esModuleInterop";return Sr(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Oe),Y}let oe=m.parent,Be=Mf(oe)&&JJ(oe);if(Be||Up(oe)){let Oe=Up(oe)?oe.arguments[0]:oe.moduleSpecifier,He=Io(Y),qe=qCn(He,Y,u,Oe);if(qe)return rK(Y,qe,oe);let Vt=(P=u?.declarations)==null?void 0:P.find(ll),kt=eZ(Oe),vr;if(Be&&Vt&&102<=We&&We<=199&&kt===1&&s.getImpliedNodeFormatForEmit(Vt)===99&&(vr=rW(Y,"module.exports",Be,v)))return!D&&!(Y.flags&1539)&&Sr(m,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,"esModuleInterop"),kw(Te)&&Aq(He)?rK(vr,He,oe):vr;let dn=Vt&&ZN(kt,s.getImpliedNodeFormatForEmit(Vt));if((kw(Te)||dn)&&(Aq(He)||Gg(He,"default",!0)||dn)){let vn=He.flags&3670016?$Cn(He,Y,u,Oe):UKt(Y,Y.parent);return rK(Y,vn,oe)}}}return Y}function Aq(u){return jt(_We(u,0))||jt(_We(u,1))}function rK(u,m,v){let D=gA(u.flags,u.escapedName);D.declarations=u.declarations?u.declarations.slice():[],D.parent=u.parent,D.links.target=u,D.links.originatingImport=v,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),u.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),u.members&&(D.members=new Map(u.members)),u.exports&&(D.exports=new Map(u.exports));let P=pR(m);return D.links.type=Hf(D,P.members,E,E,P.indexInfos),D}function Xw(u){return u.exports.get("export=")!==void 0}function dq(u){return VJt(LN(u))}function yse(u){let m=dq(u),v=wE(u);if(v!==u){let D=Io(v);I9(D)&&Or(m,Gd(D))}return m}function pq(u,m){LN(u).forEach((P,Y)=>{B5(Y)||m(P,Y)});let D=wE(u);if(D!==u){let P=Io(D);I9(P)&&JOs(P,(Y,oe)=>{m(Y,oe)})}}function nK(u,m){let v=LN(m);if(v)return v.get(u)}function fq(u,m){let v=nK(u,m);if(v)return v;let D=wE(m);if(D===m)return;let P=Io(D);return I9(P)?Gg(P,u):void 0}function I9(u){return!(u.flags&402784252||la(u)&1||Nv(u)||yA(u))}function B1(u){return u.flags&6256?SJt(u,"resolvedExports"):u.flags&1536?LN(u):u.exports||Ee}function LN(u){let m=fa(u);if(!m.resolvedExports){let{exports:v,typeOnlyExportStarMap:D}=sK(u);m.resolvedExports=v,m.typeOnlyExportStarMap=D}return m.resolvedExports}function iK(u,m,v,D){m&&m.forEach((P,Y)=>{if(Y==="default")return;let oe=u.get(Y);if(!oe)u.set(Y,P),v&&D&&v.set(Y,{specifierText:xp(D.moduleSpecifier)});else if(v&&D&&oe&&Zh(oe)!==Zh(P)){let Be=v.get(Y);Be.exportsWithDuplicate?Be.exportsWithDuplicate.push(D):Be.exportsWithDuplicate=[D]}})}function sK(u){let m=[],v,D=new Set;u=wE(u);let P=Y(u)||Ee;return v&&D.forEach(oe=>v.delete(oe)),{exports:P,typeOnlyExportStarMap:v};function Y(oe,Be,Oe){if(!Oe&&oe?.exports&&oe.exports.forEach((Vt,kt)=>D.add(kt)),!(oe&&oe.exports&&Qi(m,oe)))return;let He=new Map(oe.exports),qe=oe.exports.get("__export");if(qe){let Vt=qu(),kt=new Map;if(qe.declarations)for(let vr of qe.declarations){let dn=F0(vr,vr.moduleSpecifier),vn=Y(dn,vr,Oe||vr.isTypeOnly);iK(Vt,vn,kt,vr)}kt.forEach(({exportsWithDuplicate:vr},dn)=>{if(!(dn==="export="||!(vr&&vr.length)||He.has(dn)))for(let vn of vr)PA.add(mo(vn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,kt.get(dn).specifierText,Bc(dn)))}),iK(He,Vt)}return Be?.isTypeOnly&&(v??(v=new Map),He.forEach((Vt,kt)=>v.set(kt,Be))),He}}function jA(u){let m;return u&&u.mergeId&&(m=MU[u.mergeId])?m:u}function Uo(u){return jA(u.symbol&&Yst(u.symbol))}function mS(u){return mE(u)?Uo(u):void 0}function $m(u){return jA(u.parent&&Yst(u.parent))}function S5(u){var m,v;return(((m=u.valueDeclaration)==null?void 0:m.kind)===220||((v=u.valueDeclaration)==null?void 0:v.kind)===219)&&mS(u.valueDeclaration.parent)||u}function oK(u,m){let v=ms(m),D=rd(v),P=fa(u),Y;if(P.extendedContainersByFile&&(Y=P.extendedContainersByFile.get(D)))return Y;if(v&&v.imports){for(let Be of v.imports){if(sp(Be))continue;let Oe=F0(m,Be,!0);!Oe||!Ae(Oe,u)||(Y=Ft(Y,Oe))}if(B(Y))return(P.extendedContainersByFile||(P.extendedContainersByFile=new Map)).set(D,Y),Y}if(P.extendedContainers)return P.extendedContainers;let oe=s.getSourceFiles();for(let Be of oe){if(!xm(Be))continue;let Oe=Uo(Be);Ae(Oe,u)&&(Y=Ft(Y,Oe))}return P.extendedContainers=Y||E}function kQ(u,m,v){let D=$m(u);if(D&&!(u.flags&262144))return Oe(D);let P=Xt(u.declarations,qe=>{if(!s_(qe)&&qe.parent){if(GQ(qe.parent))return Uo(qe.parent);if(_N(qe.parent)&&qe.parent.parent&&wE(Uo(qe.parent.parent))===u)return Uo(qe.parent.parent)}if(vd(qe)&&fo(qe.parent)&&qe.parent.operatorToken.kind===64&&_p(qe.parent.left)&&Od(qe.parent.left.expression))return cN(qe.parent.left)||p3(qe.parent.left.expression)?Uo(ms(qe)):(RI(qe.parent.left.expression),sa(qe.parent.left.expression).resolvedSymbol)});if(!B(P))return;let Y=Xt(P,qe=>Ae(qe,u)?qe:void 0),oe=[],Be=[];for(let qe of Y){let[Vt,...kt]=Oe(qe);oe=Ft(oe,Vt),Be=Or(Be,kt)}return Nn(oe,Be);function Oe(qe){let Vt=Xt(qe.declarations,He),kt=m&&oK(u,m),vr=v5(qe,v);if(m&&qe.flags&Jw(v)&&m9(qe,m,1920,!1))return Ft(Nn(Nn([qe],Vt),kt),vr);let dn=!(qe.flags&Jw(v))&&qe.flags&788968&&Fp(qe).flags&524288&&v===111551?h9(m,ii=>Dh(ii,Yi=>{if(Yi.flags&Jw(v)&&Io(Yi)===Fp(qe))return Yi})):void 0,vn=dn?[dn,...Vt,qe]:[...Vt,qe];return vn=Ft(vn,vr),vn=Or(vn,kt),vn}function He(qe){return D&&aK(qe,D)}}function v5(u,m){let v=!!B(u.declarations)&&ma(u.declarations);if(m&111551&&v&&v.parent&&nc(v.parent)&&(og(v)&&v===v.parent.initializer||mh(v)&&v===v.parent.type))return Uo(v.parent)}function aK(u,m){let v=lK(u),D=v&&v.exports&&v.exports.get("export=");return D&&Et(D,m)?v:void 0}function Ae(u,m){if(u===$m(m))return m;let v=u.exports&&u.exports.get("export=");if(v&&Et(v,m))return u;let D=B1(u),P=D.get(m.escapedName);return P&&Et(P,m)?P:Dh(D,Y=>{if(Et(Y,m))return Y})}function Et(u,m){if(jA(Zh(jA(u)))===jA(Zh(jA(m))))return u}function fn(u){return jA(u&&(u.flags&1048576)!==0&&u.exportSymbol||u)}function qi(u,m){return!!(u.flags&111551||u.flags&2097152&&Hb(u,!m)&111551)}function ic(u){var m;let v=new S(ks,u);return T++,v.id=T,(m=ki)==null||m.recordType(v),v}function Oc(u,m){let v=ic(u);return v.symbol=m,v}function zl(u){return new S(ks,u)}function Vc(u,m,v=0,D){_A(m,D);let P=ic(u);return P.intrinsicName=m,P.debugIntrinsicName=D,P.objectFlags=v|524288|2097152|33554432|16777216,P}function _A(u,m){let v=`${u},${m??""}`;Dn.has(v)&&pe.fail(`Duplicate intrinsic type name ${u}${m?` (${m})`:""}; you may need to pass a name to createIntrinsicType.`),Dn.add(v)}function Lh(u,m){let v=Oc(524288,m);return v.objectFlags=u,v.members=void 0,v.properties=void 0,v.callSignatures=void 0,v.constructSignatures=void 0,v.indexInfos=void 0,v}function g0(){return Ha(Do(mOt.keys(),TE))}function Yy(u){return Oc(262144,u)}function B5(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)!==95&&u.charCodeAt(2)!==64&&u.charCodeAt(2)!==35}function Qy(u){let m;return u.forEach((v,D)=>{aW(v,D)&&(m||(m=[])).push(v)}),m||E}function aW(u,m){return!B5(m)&&qi(u)}function Iq(u){let m=Qy(u),v=jst(u);return v?Nn(m,[v]):m}function QB(u,m,v,D,P){let Y=u;return Y.members=m,Y.properties=E,Y.callSignatures=v,Y.constructSignatures=D,Y.indexInfos=P,m!==Ee&&(Y.properties=Qy(m)),Y}function Hf(u,m,v,D,P){return QB(Lh(16,u),m,v,D,P)}function cK(u){if(u.constructSignatures.length===0)return u;if(u.objectTypeWithoutAbstractConstructSignatures)return u.objectTypeWithoutAbstractConstructSignatures;let m=Me(u.constructSignatures,D=>!(D.flags&4));if(u.constructSignatures===m)return u;let v=Hf(u.symbol,u.members,u.callSignatures,jt(m)?m:E,u.indexInfos);return u.objectTypeWithoutAbstractConstructSignatures=v,v.objectTypeWithoutAbstractConstructSignatures=v,v}function h9(u,m){let v;for(let D=u;D;D=D.parent){if(WI(D)&&D.locals&&!fc(D)&&(v=m(D.locals,void 0,!0,D)))return v;switch(D.kind){case 308:if(!vl(D))break;case 268:let P=Uo(D);if(v=m(P?.exports||Ee,void 0,!0,D))return v;break;case 264:case 232:case 265:let Y;if((Uo(D).members||Ee).forEach((oe,Be)=>{oe.flags&788968&&(Y||(Y=qu())).set(Be,oe)}),Y&&(v=m(Y,void 0,!1,D)))return v;break}}return m(Gr,void 0,!0)}function Jw(u){return u===111551?111551:1920}function m9(u,m,v,D,P=new Map){if(!(u&&!lWe(u)))return;let Y=fa(u),oe=Y.accessibleChainCache||(Y.accessibleChainCache=new Map),Be=h9(m,(Yi,js,Co,Ji)=>Ji),Oe=`${D?0:1}|${Be?rd(Be):0}|${v}`;if(oe.has(Oe))return oe.get(Oe);let He=kg(u),qe=P.get(He);qe||P.set(He,qe=[]);let Vt=h9(m,kt);return oe.set(Oe,Vt),Vt;function kt(Yi,js,Co){if(!Qi(qe,Yi))return;let Ji=vn(Yi,js,Co);return qe.pop(),Ji}function vr(Yi,js){return!xQ(Yi,m,js)||!!m9(Yi.parent,m,Jw(js),D,P)}function dn(Yi,js,Co){return(u===(js||Yi)||jA(u)===jA(js||Yi))&&!jt(Yi.declarations,GQ)&&(Co||vr(jA(Yi),v))}function vn(Yi,js,Co){return dn(Yi.get(u.escapedName),void 0,js)?[u]:Dh(Yi,Mi=>{if(Mi.flags&2097152&&Mi.escapedName!=="export="&&Mi.escapedName!=="default"&&!(yAe(Mi)&&m&&xm(ms(m)))&&(!D||jt(Mi.declarations,LL))&&(!Co||!jt(Mi.declarations,cZe))&&(js||!Cp(Mi,282))){let To=YC(Mi),Ka=ii(Mi,To,js);if(Ka)return Ka}if(Mi.escapedName===u.escapedName&&Mi.exportSymbol&&dn(jA(Mi.exportSymbol),void 0,js))return[u]})||(Yi===Gr?ii(pr,pr,js):void 0)}function ii(Yi,js,Co){if(dn(Yi,js,Co))return[Yi];let Ji=B1(js),Mi=Ji&&kt(Ji,!0);if(Mi&&vr(Yi,Jw(v)))return[Yi].concat(Mi)}}function xQ(u,m,v){let D=!1;return h9(m,P=>{let Y=jA(P.get(u.escapedName));if(!Y)return!1;if(Y===u)return!0;let oe=Y.flags&2097152&&!Cp(Y,282);return Y=oe?YC(Y):Y,(oe?Hb(Y):Y.flags)&v?(D=!0,!0):!1}),D}function lWe(u){if(u.declarations&&u.declarations.length){for(let m of u.declarations)switch(m.kind){case 173:case 175:case 178:case 179:continue;default:return!1}return!0}return!1}function Epe(u,m){return mq(u,m,788968,!1,!0).accessibility===0}function hq(u,m){return mq(u,m,111551,!1,!0).accessibility===0}function Spe(u,m,v){return mq(u,m,v,!1,!1).accessibility===0}function c2e(u,m,v,D,P,Y){if(!B(u))return;let oe,Be=!1;for(let Oe of u){let He=m9(Oe,m,D,!1);if(He){oe=Oe;let kt=uK(He[0],P);if(kt)return kt}if(Y&&jt(Oe.declarations,GQ)){if(P){Be=!0;continue}return{accessibility:0}}let qe=kQ(Oe,m,D),Vt=c2e(qe,m,v,v===Oe?Jw(D):D,P,Y);if(Vt)return Vt}if(Be)return{accessibility:0};if(oe)return{accessibility:1,errorSymbolName:kl(v,m,D),errorModuleName:oe!==v?kl(oe,m,1920):void 0}}function cW(u,m,v,D){return mq(u,m,v,D,!0)}function mq(u,m,v,D,P){if(u&&m){let Y=c2e([u],m,u,v,D,P);if(Y)return Y;let oe=F(u.declarations,lK);if(oe){let Be=lK(m);if(oe!==Be)return{accessibility:2,errorSymbolName:kl(u,m,v),errorModuleName:kl(oe),errorNode:wo(m)?m:void 0}}return{accessibility:1,errorSymbolName:kl(u,m,v)}}return{accessibility:0}}function lK(u){let m=ji(u,uWe);return m&&Uo(m)}function uWe(u){return s_(u)||u.kind===308&&vl(u)}function GQ(u){return RY(u)||u.kind===308&&vl(u)}function uK(u,m){let v;if(!ue(Me(u.declarations,Y=>Y.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:v};function D(Y){var oe,Be;if(!Ak(Y)){let Oe=Sv(Y);if(Oe&&!Ga(Oe,32)&&Ak(Oe.parent))return P(Y,Oe);if(nc(Y)&&Ch(Y.parent.parent)&&!Ga(Y.parent.parent,32)&&Ak(Y.parent.parent.parent))return P(Y,Y.parent.parent);if(p7(Y)&&!Ga(Y,32)&&Ak(Y.parent))return P(Y,Y);if(hg(Y)){if(u.flags&2097152&&wo(Y)&&((oe=Y.parent)!=null&&oe.parent)&&nc(Y.parent.parent)&&((Be=Y.parent.parent.parent)!=null&&Be.parent)&&Ch(Y.parent.parent.parent.parent)&&!Ga(Y.parent.parent.parent.parent,32)&&Y.parent.parent.parent.parent.parent&&Ak(Y.parent.parent.parent.parent.parent))return P(Y,Y.parent.parent.parent.parent);if(u.flags&2){let He=ai(Y);if(He.kind===170)return!1;let qe=He.parent.parent;return qe.kind!==244?!1:Ga(qe,32)?!0:Ak(qe.parent)?P(Y,qe):!1}}return!1}return!0}function P(Y,oe){return m&&(sa(Y).isVisible=!0,v=ps(v,oe)),!0}}function vpe(u){let m;return u.parent.kind===187||u.parent.kind===234&&!ww(u.parent)||u.parent.kind===168||u.parent.kind===183&&u.parent.parameterName===u?m=1160127:u.kind===167||u.kind===212||u.parent.kind===272||u.parent.kind===167&&u.parent.left===u||u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u?m=1920:m=788968,m}function Cq(u,m,v=!0){let D=vpe(u),P=B0(u),Y=An(m,P.escapedText,D,void 0,!1);return Y&&Y.flags&262144&&D&788968?{accessibility:0}:!Y&&vF(P)&&cW(Uo(r0(P,!1,!1)),P,D,!1).accessibility===0?{accessibility:0}:Y?uK(Y,v)||{accessibility:1,errorSymbolName:xp(P),errorNode:P}:{accessibility:3,errorSymbolName:xp(P),errorNode:P}}function kl(u,m,v,D=4,P){let Y=70221824,oe=0;D&2&&(Y|=128),D&1&&(Y|=512),D&8&&(Y|=16384),D&32&&(oe|=4),D&16&&(oe|=1);let Be=D&4?Dt.symbolToNode:Dt.symbolToEntityName;return P?Oe(P).getText():dP(Oe);function Oe(He){let qe=Be(u,v,m,Y,oe),Vt=m?.kind===308?p3t():gQ(),kt=m&&ms(m);return Vt.writeNode(4,qe,kt,He),He}}function lW(u,m,v=0,D,P,Y,oe,Be){return P?Oe(P).getText():dP(Oe);function Oe(He){let qe;v&262144?qe=D===1?186:185:qe=D===1?181:180;let Vt=Dt.signatureToSignatureDeclaration(u,qe,m,FQ(v)|70221824|512,void 0,void 0,Y,oe,Be),kt=ett(),vr=m&&ms(m);return kt.writeNode(4,Vt,vr,Oye(He)),He}}function no(u,m,v=1064960,D=Bne(""),P,Y,oe){let Be=!P&&Te.noErrorTruncation||v&1,Oe=Dt.typeToTypeNode(u,m,FQ(v)|70221824|(Be?1:0),void 0,void 0,P,Y,oe);if(Oe===void 0)return pe.fail("should always get typenode");let He=u!==bn?gQ():d3t(),qe=m&&ms(m);He.writeNode(4,Oe,qe,D);let Vt=D.getText(),kt=P||(Be?Lre*2:EY*2);return kt&&Vt&&Vt.length>=kt?Vt.substr(0,kt-3)+"...":Vt}function Bpe(u,m){let v=Ese(u.symbol)?no(u,u.symbol.valueDeclaration):no(u),D=Ese(m.symbol)?no(m,m.symbol.valueDeclaration):no(m);return v===D&&(v=bse(u),D=bse(m)),[v,D]}function bse(u){return no(u,void 0,64)}function Ese(u){return u&&!!u.valueDeclaration&&un(u.valueDeclaration)&&!bS(u.valueDeclaration)}function FQ(u=0){return u&848330095}function l2e(u){return!!u.symbol&&!!(u.symbol.flags&32)&&(u===wv(u.symbol)||!!(u.flags&524288)&&!!(la(u)&16777216))}function gK(u){return nl(u)}function gWe(){return{syntacticBuilderResolver:{evaluateEntityNameExpression:E0n,isExpandoFunctionDeclaration:Y0n,hasLateBindableName:wse,shouldRemoveDeclaration($t,lt){return!($t.internalFlags&8&&Od(lt.name.expression)&&zw(lt.name).flags&1)},createRecoveryBoundary($t){return Kc($t)},isDefinitelyReferenceToGlobalSymbolObject:lk,getAllAccessorDeclarations:P8t,requiresAddingImplicitUndefined($t,lt,hi){var Di;switch($t.kind){case 173:case 172:case 349:lt??(lt=Uo($t));let Qt=Io(lt);return!!(lt.flags&4&<.flags&16777216&&RB($t)&&((Di=lt.links)!=null&&Di.mappedType)&&CMs(Qt));case 170:case 342:return DOe($t,hi);default:pe.assertNever($t)}},isOptionalParameter:m2e,isUndefinedIdentifierExpression($t){return xv($t)===dt},isEntityNameVisible($t,lt,hi){return Cq(lt,$t.enclosingDeclaration,hi)},serializeExistingTypeNode($t,lt,hi){return Qb($t,lt,!!hi)},serializeReturnTypeForSignature($t,lt,hi){let Di=$t,Qt=yS(lt);hi??(hi=Uo(lt));let Cr=Di.enclosingSymbolTypes.get(kg(hi))??_l(ud(Qt),Di.mapper);return nA(Di,Qt,Cr)},serializeTypeOfExpression($t,lt){let hi=$t,Di=_l(D1(Z0n(lt)),hi.mapper);return ii(Di,hi)},serializeTypeOfDeclaration($t,lt,hi){var Di;let Qt=$t;hi??(hi=Uo(lt));let Cr=(Di=Qt.enclosingSymbolTypes)==null?void 0:Di.get(kg(hi));return Cr===void 0&&(Cr=hi.flags&98304&<.kind===179?_l(b9(hi),Qt.mapper):hi&&!(hi.flags&133120)?_l(V5(Io(hi)),Qt.mapper):nn),lt&&(Si(lt)||cS(lt))&&DOe(lt,Qt.enclosingDeclaration)&&(Cr=mW(Cr)),Ao(hi,Qt,Cr)},serializeNameOfParameter($t,lt){return qc(Uo(lt),lt,$t)},serializeEntityName($t,lt){let hi=$t,Di=xv(lt,!0);if(Di&&hq(Di,hi.enclosingDeclaration))return Gv(Di,hi,1160127)},serializeTypeName($t,lt,hi,Di){return tC($t,lt,hi,Di)},getJsDocPropertyOverride($t,lt,hi){let Di=$t,Qt=Ir(hi.name)?hi.name:hi.name.right,Cr=Pi(m(Di,lt),Qt.escapedText);return Cr&&hi.typeExpression&&m(Di,hi.typeExpression.type)!==Cr?ii(Cr,Di):void 0},enterNewScope($t,lt){if(bu(lt)||qL(lt)){let hi=yS(lt);return Vu($t,lt,hi.parameters,hi.typeParameters)}else{let hi=d2(lt)?AUt(lt):[R5(Uo(lt.typeParameter))];return Vu($t,lt,void 0,hi)}},markNodeReuse($t,lt,hi){return v($t,lt,hi)},trackExistingEntityName($t,lt){return Sp(lt,$t)},trackComputedName($t,lt){_o(lt,$t.enclosingDeclaration,$t)},getModuleSpecifierOverride($t,lt,hi){let Di=$t;if(Di.bundled||Di.enclosingFile!==ms(hi)){let Qt=hi.text,Cr=Qt,jr=sa(lt).resolvedSymbol,Qn=lt.isTypeOf?111551:788968,yi=jr&&cW(jr,Di.enclosingDeclaration,Qn,!1).accessibility===0&&du(jr,Di,Qn,!0)[0];if(yi&&WD(yi))Qt=yh(yi,Di);else{let Xn=M8t(lt);Xn&&(Qt=yh(Xn.symbol,Di))}if(Qt.includes("/node_modules/")&&(Di.encounteredError=!0,Di.tracker.reportLikelyUnsafeImportRequiredError&&Di.tracker.reportLikelyUnsafeImportRequiredError(Qt)),Qt!==Cr)return Qt}},canReuseTypeNode($t,lt){return P0($t,lt)},canReuseTypeNodeAnnotation($t,lt,hi,Di,Qt){var Cr;let jr=$t;if(jr.enclosingDeclaration===void 0)return!1;Di??(Di=Uo(lt));let Qn=(Cr=jr.enclosingSymbolTypes)==null?void 0:Cr.get(kg(Di));Qn===void 0&&(Di.flags&98304?Qn=lt.kind===179?b9(Di):Dpe(Di):C3(lt)?Qn=ud(yS(lt)):Qn=Io(Di));let yi=gK(hi);return uo(yi)?!0:(Qt&&yi&&(yi=Z0(yi,!Si(lt))),!!yi&&tc(lt,Qn,yi)&&as(hi,Qn))}},typeToTypeNode:($t,lt,hi,Di,Qt,Cr,jr,Qn)=>He(lt,hi,Di,Qt,Cr,jr,yi=>ii($t,yi),Qn),typePredicateToTypePredicateNode:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>V0($t,Cr)),serializeTypeForDeclaration:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>tr.serializeTypeOfDeclaration($t,lt,jr)),serializeReturnTypeForSignature:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeReturnTypeForSignature($t,Uo($t),Cr)),serializeTypeForExpression:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>tr.serializeTypeOfExpression($t,Cr)),indexInfoToIndexSignatureDeclaration:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>yl($t,Cr,void 0)),signatureToSignatureDeclaration:($t,lt,hi,Di,Qt,Cr,jr,Qn,yi)=>He(hi,Di,Qt,Cr,jr,Qn,Xn=>ka($t,lt,Xn),yi),symbolToEntityName:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>ch($t,jr,lt,!1)),symbolToExpression:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>Gv($t,jr,lt)),symbolToTypeParameterDeclarations:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>uf($t,Cr)),symbolToParameterDeclaration:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>eo($t,Cr)),typeParameterToDeclaration:($t,lt,hi,Di,Qt,Cr,jr,Qn)=>He(lt,hi,Di,Qt,Cr,jr,yi=>UI($t,yi),Qn),symbolTableToDeclarationStatements:($t,lt,hi,Di,Qt)=>He(lt,hi,Di,Qt,void 0,void 0,Cr=>H5($t,Cr)),symbolToNode:($t,lt,hi,Di,Qt,Cr)=>He(hi,Di,Qt,Cr,void 0,void 0,jr=>D($t,jr,lt)),symbolToDeclarations:P};function m($t,lt,hi){let Di=gK(lt);if(!$t.mapper)return Di;let Qt=_l(Di,$t.mapper);return hi&&Qt!==Di?void 0:Qt}function v($t,lt,hi){if((!sp(lt)||!(lt.flags&16)||!$t.enclosingFile||$t.enclosingFile!==ms(Dd(lt)))&&(lt=me.cloneNode(lt)),lt===hi||!hi)return lt;let Di=lt.original;for(;Di&&Di!==hi;)Di=Di.original;return Di||ua(lt,hi),$t.enclosingFile&&$t.enclosingFile===ms(Dd(hi))?gn(lt,hi):lt}function D($t,lt,hi){if(lt.internalFlags&1){if($t.valueDeclaration){let Qt=Il($t.valueDeclaration);if(Qt&&Un(Qt))return Qt}let Di=fa($t).nameType;if(Di&&Di.flags&9216)return lt.enclosingDeclaration=Di.symbol.valueDeclaration,me.createComputedPropertyName(Gv(Di.symbol,lt,hi))}return Gv($t,lt,hi)}function P($t,lt,hi,Di,Qt,Cr){let jr=He(void 0,hi,void 0,void 0,Di,Qt,Qn=>Oe($t,Qn),Cr);return Xt(jr,Qn=>{switch(Qn.kind){case 264:return Y(Qn,$t);case 267:return oe(Qn,V3,$t);case 265:return Be(Qn,$t,lt);case 268:return oe(Qn,xh,$t);default:return}})}function Y($t,lt){let hi=Me(lt.declarations,xa),Di=hi&&hi.length>0?hi[0]:$t,Qt=o_(Di)&-161;return vd(Di)&&($t=me.updateClassDeclaration($t,$t.modifiers,void 0,$t.typeParameters,$t.heritageClauses,$t.members)),me.replaceModifiers($t,Qt)}function oe($t,lt,hi){let Di=Me(hi.declarations,lt),Qt=Di&&Di.length>0?Di[0]:$t,Cr=o_(Qt)&-161;return me.replaceModifiers($t,Cr)}function Be($t,lt,hi){if(hi&64)return oe($t,g_,lt)}function Oe($t,lt){let hi=Fp($t);lt.typeStack.push(hi.id),lt.typeStack.push(-1);let Di=qu([$t]),Qt=H5(Di,lt);return lt.typeStack.pop(),lt.typeStack.pop(),Qt}function He($t,lt,hi,Di,Qt,Cr,jr,Qn){let yi=Di?.trackSymbol?Di.moduleResolverHost:(hi||0)&4?Fvs(s):void 0;lt=lt||0;let Xn=Qt||(lt&1?Lre:EY),Ti={enclosingDeclaration:$t,enclosingFile:$t&&ms($t),flags:lt,internalFlags:hi||0,tracker:void 0,maxTruncationLength:Xn,maxExpansionDepth:Cr??-1,encounteredError:!1,suppressReportInferenceFallback:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Te.outFile&&!!$t&&vl(ms($t)),truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,enclosingSymbolTypes:new Map,mapper:void 0,depth:0,typeStack:[],out:{canIncreaseExpansionDepth:!1,truncated:!1}};Ti.tracker=new _Ot(Ti,Di,yi);let Us=jr(Ti);return Ti.truncating&&Ti.flags&1&&Ti.tracker.reportTruncationError(),Qn&&(Qn.canIncreaseExpansionDepth=Ti.out.canIncreaseExpansionDepth,Qn.truncated=Ti.out.truncated),Ti.encounteredError?void 0:Us}function qe($t,lt,hi){let Di=kg(lt),Qt=$t.enclosingSymbolTypes.get(Di);return $t.enclosingSymbolTypes.set(Di,hi),Cr;function Cr(){Qt?$t.enclosingSymbolTypes.set(Di,Qt):$t.enclosingSymbolTypes.delete(Di)}}function Vt($t){let lt=$t.flags,hi=$t.internalFlags,Di=$t.depth;return Qt;function Qt(){$t.flags=lt,$t.internalFlags=hi,$t.depth=Di}}function kt($t){return $t.maxExpansionDepth>=0&&vr($t)}function vr($t){return $t.truncating?$t.truncating:$t.truncating=$t.approximateLength>$t.maxTruncationLength}function dn($t,lt){for(let hi=0;hi0)return $t.flags&1048576?me.createUnionTypeNode(ta):me.createIntersectionTypeNode(ta);!lt.encounteredError&&!(lt.flags&262144)&&(lt.encounteredError=!0);return}if(jr&48)return pe.assert(!!($t.flags&524288)),No($t);if($t.flags&4194304){let Li=$t.type;lt.approximateLength+=6;let ta=ii(Li,lt);return me.createTypeOperatorNode(143,ta)}if($t.flags&134217728){let Li=$t.texts,ta=$t.types,mu=me.createTemplateHead(Li[0]),Jl=me.createNodeArray(At(ta,(EA,Ad)=>me.createTemplateLiteralTypeSpan(ii(EA,lt),(AdQn(Li));if($t.flags&33554432){let Li=ii($t.baseType,lt),ta=xse($t)&&JJt("NoInfer",!1);return ta?Fd(ta,lt,788968,[Li]):Li}return pe.fail("Should be unreachable.");function Qn(Li){let ta=ii(Li.checkType,lt);if(lt.approximateLength+=15,lt.flags&4&&Li.root.isDistributive&&!(Li.checkType.flags&262144)){let ou=Yy(gA(262144,"T")),mm=Qf(ou,lt),Cm=me.createTypeReferenceNode(mm);lt.approximateLength+=37;let W_=yK(Li.root.checkType,ou,Li.mapper),W0=lt.inferTypeParameters;lt.inferTypeParameters=Li.root.inferTypeParameters;let Uy=ii(_l(Li.root.extendsType,W_),lt);lt.inferTypeParameters=W0;let IZ=yi(_l(m(lt,Li.root.node.trueType),W_)),Q5=yi(_l(m(lt,Li.root.node.falseType),W_));return me.createConditionalTypeNode(ta,me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Cm.typeName))),me.createConditionalTypeNode(me.createTypeReferenceNode(me.cloneNode(mm)),ii(Li.checkType,lt),me.createConditionalTypeNode(Cm,Uy,IZ,Q5),me.createKeywordTypeNode(146)),me.createKeywordTypeNode(146))}let mu=lt.inferTypeParameters;lt.inferTypeParameters=Li.root.inferTypeParameters;let Jl=ii(Li.extendsType,lt);lt.inferTypeParameters=mu;let EA=yi(fW(Li)),Ad=yi(IW(Li));return me.createConditionalTypeNode(ta,Jl,EA,Ad)}function yi(Li){var ta,mu,Jl;return Li.flags&1048576?(ta=lt.visitedTypes)!=null&&ta.has(QC(Li))?(lt.flags&131072||(lt.encounteredError=!0,(Jl=(mu=lt.tracker)==null?void 0:mu.reportCyclicStructureError)==null||Jl.call(mu)),js(lt)):zo(Li,EA=>ii(EA,lt)):ii(Li,lt)}function Xn(Li){return!!B2e(Li)}function Ti(Li){return!!Li.target&&Xn(Li.target)&&!Xn(Li)}function Us(Li){var ta;pe.assert(!!(Li.flags&524288));let mu=Li.declaration.readonlyToken?me.createToken(Li.declaration.readonlyToken.kind):void 0,Jl=Li.declaration.questionToken?me.createToken(Li.declaration.questionToken.kind):void 0,EA,Ad,ou=qx(Li),mm=jw(Li),Cm=!Rse(Li)&&!(N5(Li).flags&2)&<.flags&4&&!(_S(Li).flags&262144&&((ta=Xy(_S(Li)))==null?void 0:ta.flags)&4194304);if(Rse(Li)){if(Ti(Li)&<.flags&4){let EW=Yy(gA(262144,"T")),Oq=Qf(EW,lt),afe=Li.target;Ad=me.createTypeReferenceNode(Oq),ou=_l(qx(afe),dhn([jw(afe),N5(afe)],[mm,EW]))}EA=me.createTypeOperatorNode(143,Ad||ii(N5(Li),lt))}else if(Cm){let EW=Yy(gA(262144,"T")),Oq=Qf(EW,lt);Ad=me.createTypeReferenceNode(Oq),EA=Ad}else EA=ii(_S(Li),lt);let W_=Ll(mm,lt,EA),W0=Vu(lt,Li.declaration,void 0,[R5(Uo(Li.declaration.typeParameter))]),Uy=Li.declaration.nameType?ii(E9(Li),lt):void 0,IZ=ii(AZ(ou,!!(fk(Li)&4)),lt);W0();let Q5=me.createMappedTypeNode(mu,W_,Uy,Jl,IZ,void 0);lt.approximateLength+=10;let zQ=ti(Q5,1);if(Ti(Li)&<.flags&4){let EW=_l(Xy(m(lt,Li.declaration.typeParameter.constraint.type))||cn,Li.mapper);return me.createConditionalTypeNode(ii(N5(Li),lt),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Ad.typeName),EW.flags&2?void 0:ii(EW,lt))),zQ,me.createKeywordTypeNode(146))}else if(Cm)return me.createConditionalTypeNode(ii(_S(Li),lt),me.createInferTypeNode(me.createTypeParameterDeclaration(void 0,me.cloneNode(Ad.typeName),me.createTypeOperatorNode(143,ii(N5(Li),lt)))),zQ,me.createKeywordTypeNode(146));return zQ}function No(Li,ta=!1,mu=!1){var Jl,EA;let Ad=Li.id,ou=Li.symbol;if(ou){if(!!(la(Li)&8388608)){let Uy=Li.node;if(Fw(Uy)&&m(lt,Uy)===Li){let IZ=tr.tryReuseExistingTypeNode(lt,Uy);if(IZ)return IZ}return(Jl=lt.visitedTypes)!=null&&Jl.has(Ad)?js(lt):zo(Li,za)}let W_=l2e(Li)?788968:111551;if(YN(ou.valueDeclaration))return Fd(ou,lt,W_);if(!mu&&(ou.flags&32&&!ta&&!d2e(ou)&&!(ou.valueDeclaration&&xa(ou.valueDeclaration)&<.flags&2048&&(!pm(ou.valueDeclaration)||cW(ou,lt.enclosingDeclaration,W_,!1).accessibility!==0))||ou.flags&896||mm()))if(vn(Li,lt))lt.depth+=1;else return Fd(ou,lt,W_);if((EA=lt.visitedTypes)!=null&&EA.has(Ad)){let W0=AWe(Li);return W0?Fd(W0,lt,788968):js(lt)}else return zo(Li,za)}else return za(Li);function mm(){var Cm;let W_=!!(ou.flags&8192)&&jt(ou.declarations,Uy=>cg(Uy)&&!Nfn(Il(Uy))),W0=!!(ou.flags&16)&&(ou.parent||F(ou.declarations,Uy=>Uy.parent.kind===308||Uy.parent.kind===269));if(W_||W0)return(!!(lt.flags&4096)||((Cm=lt.visitedTypes)==null?void 0:Cm.has(Ad)))&&(!(lt.flags&8)||hq(ou,lt.enclosingDeclaration))}}function zo(Li,ta){var mu,Jl,EA;let Ad=Li.id,ou=la(Li)&16&&Li.symbol&&Li.symbol.flags&32,mm=la(Li)&4&&Li.node?"N"+rd(Li.node):Li.flags&16777216?"N"+rd(Li.root.node):Li.symbol?(ou?"+":"")+kg(Li.symbol):void 0;lt.visitedTypes||(lt.visitedTypes=new Set),mm&&!lt.symbolDepth&&(lt.symbolDepth=new Map);let Cm=lt.maxExpansionDepth>=0?void 0:lt.enclosingDeclaration&&sa(lt.enclosingDeclaration),W_=`${QC(Li)}|${lt.flags}|${lt.internalFlags}`;Cm&&(Cm.serializedTypes||(Cm.serializedTypes=new Map));let W0=(mu=Cm?.serializedTypes)==null?void 0:mu.get(W_);if(W0)return(Jl=W0.trackedSymbols)==null||Jl.forEach(([_k,Jse,GOe])=>lt.tracker.trackSymbol(_k,Jse,GOe)),W0.truncating&&(lt.truncating=!0),lt.approximateLength+=W0.addedLength,Oq(W0.node);let Uy;if(mm){if(Uy=lt.symbolDepth.get(mm)||0,Uy>10)return js(lt);lt.symbolDepth.set(mm,Uy+1)}lt.visitedTypes.add(Ad);let IZ=lt.trackedSymbols;lt.trackedSymbols=void 0;let Q5=lt.approximateLength,zQ=ta(Li),EW=lt.approximateLength-Q5;return!lt.reportedDiagnostic&&!lt.encounteredError&&((EA=Cm?.serializedTypes)==null||EA.set(W_,{node:zQ,truncating:lt.truncating,addedLength:EW,trackedSymbols:lt.trackedSymbols})),lt.visitedTypes.delete(Ad),mm&<.symbolDepth.set(mm,Uy),lt.trackedSymbols=IZ,zQ;function Oq(_k){return!sp(_k)&&$l(_k)===_k?_k:v(lt,me.cloneNode(_s(_k,Oq,void 0,afe,Oq)),_k)}function afe(_k,Jse,GOe,U8t,K8t){return _k&&_k.length===0?gn(me.createNodeArray(void 0,_k.hasTrailingComma),_k):Ws(_k,Jse,GOe,U8t,K8t)}}function za(Li){if(Yb(Li)||Li.containsError)return Us(Li);let ta=pR(Li);if(!ta.properties.length&&!ta.indexInfos.length){if(!ta.callSignatures.length&&!ta.constructSignatures.length)return lt.approximateLength+=2,ti(me.createTypeLiteralNode(void 0),1);if(ta.callSignatures.length===1&&!ta.constructSignatures.length){let ou=ta.callSignatures[0];return ka(ou,185,lt)}if(ta.constructSignatures.length===1&&!ta.callSignatures.length){let ou=ta.constructSignatures[0];return ka(ou,186,lt)}}let mu=Me(ta.constructSignatures,ou=>!!(ou.flags&4));if(jt(mu)){let ou=At(mu,fK);return ta.callSignatures.length+(ta.constructSignatures.length-mu.length)+ta.indexInfos.length+(lt.flags&2048?ct(ta.properties,Cm=>!(Cm.flags&4194304)):B(ta.properties))&&ou.push(cK(ta)),ii(Kg(ou),lt)}let Jl=Vt(lt);lt.flags|=4194304;let EA=DA(ta);Jl();let Ad=me.createTypeLiteralNode(EA);return lt.approximateLength+=2,ti(Ad,lt.flags&1024?0:1),Ad}function La(Li){let ta=lf(Li);if(Li.target===NA||Li.target===uA){if(lt.flags&2){let EA=ii(ta[0],lt);return me.createTypeReferenceNode(Li.target===NA?"Array":"ReadonlyArray",[EA])}let mu=ii(ta[0],lt),Jl=me.createArrayTypeNode(mu);return Li.target===NA?Jl:me.createTypeOperatorNode(148,Jl)}else if(Li.target.objectFlags&8){if(ta=Tr(ta,(mu,Jl)=>AZ(mu,!!(Li.target.elementFlags[Jl]&2))),ta.length>0){let mu=B9(Li),Jl=To(ta.slice(0,mu),lt);if(Jl){let{labeledElementDeclarations:EA}=Li.target;for(let ou=0;ou0){let Cm=0;if(Li.target.typeParameters&&(Cm=Math.min(Li.target.typeParameters.length,ta.length),(w1(Li,sot(!1))||w1(Li,RIn(!1))||w1(Li,SWe(!1))||w1(Li,TIn(!1)))&&(!Li.node||!nh(Li.node)||!Li.node.typeArguments||Li.node.typeArguments.length0;){let W_=ta[Cm-1],W0=Li.target.typeParameters[Cm-1],Uy=VQ(W0);if(!Uy||!rG(W_,Uy))break;Cm--}Ad=To(ta.slice(Jl,Cm),lt)}let ou=Vt(lt);lt.flags|=16;let mm=Fd(Li.symbol,lt,788968,Ad);return ou(),EA?to(EA,mm):mm}}}function to(Li,ta){if(Um(Li)){let mu=Li.typeArguments,Jl=Li.qualifier;Jl&&(Ir(Jl)?mu!==G3(Jl)&&(Jl=xx(me.cloneNode(Jl),mu)):mu!==G3(Jl.right)&&(Jl=me.updateQualifiedName(Jl,Jl.left,xx(me.cloneNode(Jl.right),mu)))),mu=ta.typeArguments;let EA=_c(ta);for(let Ad of EA)Jl=Jl?me.createQualifiedName(Jl,Ad):Ad;return me.updateImportTypeNode(Li,Li.argument,Li.attributes,Jl,mu,Li.isTypeOf)}else{let mu=Li.typeArguments,Jl=Li.typeName;Ir(Jl)?mu!==G3(Jl)&&(Jl=xx(me.cloneNode(Jl),mu)):mu!==G3(Jl.right)&&(Jl=me.updateQualifiedName(Jl,Jl.left,xx(me.cloneNode(Jl.right),mu))),mu=ta.typeArguments;let EA=_c(ta);for(let Ad of EA)Jl=me.createQualifiedName(Jl,Ad);return me.updateTypeReferenceNode(Li,Jl,mu)}}function _c(Li){let ta=Li.typeName,mu=[];for(;!Ir(ta);)mu.unshift(ta.right),ta=ta.left;return mu.unshift(ta),mu}function nu(Li,ta,mu){if(Li.components&&ue(Li.components,EA=>{var Ad;return!!(EA.name&&Un(EA.name)&&Od(EA.name.expression)&&ta.enclosingDeclaration&&((Ad=Cq(EA.name.expression,ta.enclosingDeclaration,!1))==null?void 0:Ad.accessibility)===0)})){let EA=Me(Li.components,Ad=>!wse(Ad));return At(EA,Ad=>(_o(Ad.name.expression,ta.enclosingDeclaration,ta),v(ta,me.createPropertySignature(Li.isReadonly?[me.createModifier(148)]:void 0,Ad.name,(ss(Ad)||pi(Ad)||hl(Ad)||uu(Ad)||bB(Ad)||cv(Ad))&&Ad.questionToken?me.createToken(58):void 0,mu||ii(Io(Ad.symbol),ta)),Ad)))}return[yl(Li,ta,mu)]}function DA(Li){if(vr(lt))return lt.out.truncated=!0,lt.flags&1?[Iz(me.createNotEmittedTypeElement(),3,"elided")]:[me.createPropertySignature(void 0,"...",void 0,void 0)];lt.typeStack.push(-1);let ta=[];for(let EA of Li.callSignatures)ta.push(ka(EA,180,lt));for(let EA of Li.constructSignatures)EA.flags&4||ta.push(ka(EA,181,lt));for(let EA of Li.indexInfos)ta.push(...nu(EA,lt,Li.objectFlags&1024?js(lt):void 0));let mu=Li.properties;if(!mu)return lt.typeStack.pop(),ta;let Jl=0;for(let EA of mu)if(!(Y5(lt)&&EA.flags&4194304)){if(Jl++,lt.flags&2048){if(EA.flags&4194304)continue;u2(EA)&6&<.tracker.reportPrivateInBaseOfClassExpression&<.tracker.reportPrivateInBaseOfClassExpression(Bc(EA.escapedName))}if(vr(lt)&&Jl+2!(za.flags&32768)),0);for(let za of zo){let La=ka(za,174,lt,{name:Qn,questionToken:yi});hi.push(No(La,za.declaration||$t.valueDeclaration))}if(zo.length||!yi)return}let Xn;Co($t,lt)?Xn=js(lt):(Qt&&(lt.reverseMappedStack||(lt.reverseMappedStack=[]),lt.reverseMappedStack.push($t)),Xn=Cr?ea(lt,void 0,Cr,$t):me.createKeywordTypeNode(133),Qt&<.reverseMappedStack.pop());let Ti=yR($t)?[me.createToken(148)]:void 0;Ti&&(lt.approximateLength+=9);let Us=me.createPropertySignature(Ti,Qn,yi,Xn);hi.push(No(Us,$t.valueDeclaration));function No(zo,za){var La;let to=(La=$t.declarations)==null?void 0:La.find(_c=>_c.kind===349);if(to){let _c=pJ(to.comment);_c&&kB(zo,[{kind:3,text:`* - * `+_c.replace(/\n/g,` - * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else za&&Mi(lt,zo,za);return zo}}function Mi($t,lt,hi){return $t.enclosingFile&&$t.enclosingFile===ms(hi)?hh(lt,hi):lt}function To($t,lt,hi){if(jt($t)){if(vr(lt))if(lt.out.truncated=!0,hi){if($t.length>2)return[ii($t[0],lt),lt.flags&1?JT(me.createKeywordTypeNode(133),3,`... ${$t.length-2} more elided ...`):me.createTypeReferenceNode(`... ${$t.length-2} more ...`,void 0),ii($t[$t.length-1],lt)]}else return[lt.flags&1?JT(me.createKeywordTypeNode(133),3,"elided"):me.createTypeReferenceNode("...",void 0)];let Qt=!(lt.flags&64)?dl():void 0,Cr=[],jr=0;for(let Qn of $t){if(jr++,vr(lt)&&jr+2<$t.length-1){lt.out.truncated=!0,Cr.push(lt.flags&1?JT(me.createKeywordTypeNode(133),3,`... ${$t.length-jr} more elided ...`):me.createTypeReferenceNode(`... ${$t.length-jr} more ...`,void 0));let Xn=ii($t[$t.length-1],lt);Xn&&Cr.push(Xn);break}lt.approximateLength+=2;let yi=ii(Qn,lt);yi&&(Cr.push(yi),Qt&&_Le(yi)&&Qt.add(yi.typeName.escapedText,[Qn,Cr.length-1]))}if(Qt){let Qn=Vt(lt);lt.flags|=64,Qt.forEach(yi=>{if(!yLe(yi,([Xn],[Ti])=>Ka(Xn,Ti)))for(let[Xn,Ti]of yi)Cr[Ti]=ii(Xn,lt)}),Qn()}return Cr}}function Ka($t,lt){return $t===lt||!!$t.symbol&&$t.symbol===lt.symbol||!!$t.aliasSymbol&&$t.aliasSymbol===lt.aliasSymbol}function yl($t,lt,hi){let Di=kge($t)||"x",Qt=ii($t.keyType,lt),Cr=me.createParameterDeclaration(void 0,void 0,Di,void 0,Qt,void 0);return hi||(hi=ii($t.type||hr,lt)),!$t.type&&!(lt.flags&2097152)&&(lt.encounteredError=!0),lt.approximateLength+=Di.length+4,me.createIndexSignature($t.isReadonly?[me.createToken(148)]:void 0,[Cr],hi)}function ka($t,lt,hi,Di){var Qt;let Cr,jr,Qn=Lfn($t,!0)[0],yi=Vu(hi,$t.declaration,Qn,$t.typeParameters,$t.parameters,$t.mapper);hi.approximateLength+=3,hi.flags&32&&$t.target&&$t.mapper&&$t.target.typeParameters?jr=$t.target.typeParameters.map(La=>ii(_l(La,$t.mapper),hi)):Cr=$t.typeParameters&&$t.typeParameters.map(La=>UI(La,hi));let Xn=Vt(hi);hi.flags&=-257;let Ti=(jt(Qn,La=>La!==Qn[Qn.length-1]&&!!(iI(La)&32768))?$t.parameters:Qn).map(La=>eo(La,hi,lt===177)),Us=hi.flags&33554432?void 0:gd($t,hi);Us&&Ti.unshift(Us),Xn();let No=jg(hi,$t),zo=Di?.modifiers;if(lt===186&&$t.flags&4){let La=Dw(zo);zo=me.createModifiersFromModifierFlags(La|64)}let za=lt===180?me.createCallSignature(Cr,Ti,No):lt===181?me.createConstructSignature(Cr,Ti,No):lt===174?me.createMethodSignature(zo,Di?.name??me.createIdentifier(""),Di?.questionToken,Cr,Ti,No):lt===175?me.createMethodDeclaration(zo,void 0,Di?.name??me.createIdentifier(""),void 0,Cr,Ti,No,void 0):lt===177?me.createConstructorDeclaration(zo,Ti,void 0):lt===178?me.createGetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,No,void 0):lt===179?me.createSetAccessorDeclaration(zo,Di?.name??me.createIdentifier(""),Ti,void 0):lt===182?me.createIndexSignature(zo,Ti,No):lt===318?me.createJSDocFunctionType(Ti,No):lt===185?me.createFunctionTypeNode(Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):lt===186?me.createConstructorTypeNode(zo,Cr,Ti,No??me.createTypeReferenceNode(me.createIdentifier(""))):lt===263?me.createFunctionDeclaration(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,void 0):lt===219?me.createFunctionExpression(zo,void 0,Di?.name?Ma(Di.name,Ir):me.createIdentifier(""),Cr,Ti,No,me.createBlock([])):lt===220?me.createArrowFunction(zo,Cr,Ti,No,void 0,me.createBlock([])):pe.assertNever(lt);if(jr&&(za.typeArguments=me.createNodeArray(jr)),((Qt=$t.declaration)==null?void 0:Qt.kind)===324&&$t.declaration.parent.kind===340){let La=xp($t.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(to=>to.replace(/^\s+/," ")).join(` -`);JT(za,3,La,!0)}return yi?.(),za}function Kc($t){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let lt,hi,Di=!1,Qt=$t.tracker,Cr=$t.trackedSymbols;$t.trackedSymbols=void 0;let jr=$t.encounteredError;return $t.tracker=new _Ot($t,{...Qt.inner,reportCyclicStructureError(){Qn(()=>Qt.reportCyclicStructureError())},reportInaccessibleThisError(){Qn(()=>Qt.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){Qn(()=>Qt.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(Ti){Qn(()=>Qt.reportLikelyUnsafeImportRequiredError(Ti))},reportNonSerializableProperty(Ti){Qn(()=>Qt.reportNonSerializableProperty(Ti))},reportPrivateInBaseOfClassExpression(Ti){Qn(()=>Qt.reportPrivateInBaseOfClassExpression(Ti))},trackSymbol(Ti,Us,No){return(lt??(lt=[])).push([Ti,Us,No]),!1},moduleResolverHost:$t.tracker.moduleResolverHost},$t.tracker.moduleResolverHost),{startRecoveryScope:yi,finalizeBoundary:Xn,markError:Qn,hadError:()=>Di};function Qn(Ti){Di=!0,Ti&&(hi??(hi=[])).push(Ti)}function yi(){let Ti=lt?.length??0,Us=hi?.length??0;return()=>{Di=!1,lt&&(lt.length=Ti),hi&&(hi.length=Us)}}function Xn(){return $t.tracker=Qt,$t.trackedSymbols=Cr,$t.encounteredError=jr,hi?.forEach(Ti=>Ti()),Di?!1:(lt?.forEach(([Ti,Us,No])=>$t.tracker.trackSymbol(Ti,Us,No)),!0)}}function Vu($t,lt,hi,Di,Qt,Cr){let jr=uSe($t),Qn,yi,Xn=$t.enclosingDeclaration,Ti=$t.mapper;if(Cr&&($t.mapper=Cr),$t.enclosingDeclaration&<){let No=function(zo,za){pe.assert($t.enclosingDeclaration);let La;sa($t.enclosingDeclaration).fakeScopeForSignatureDeclaration===zo?La=$t.enclosingDeclaration:$t.enclosingDeclaration.parent&&sa($t.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===zo&&(La=$t.enclosingDeclaration.parent),pe.assertOptionalNode(La,$u);let to=La?.locals??qu(),_c,nu;if(za((DA,Li)=>{if(La){let ta=to.get(DA);ta?nu=Ft(nu,{name:DA,oldSymbol:ta}):_c=Ft(_c,DA)}to.set(DA,Li)}),La)return function(){F(_c,Li=>to.delete(Li)),F(nu,Li=>to.set(Li.name,Li.oldSymbol))};{let DA=me.createBlock(E);sa(DA).fakeScopeForSignatureDeclaration=zo,DA.locals=to,XA(DA,$t.enclosingDeclaration),$t.enclosingDeclaration=DA}};var Us=No;Qn=jt(hi)?No("params",zo=>{if(hi)for(let za=0;za{if(Si(_c)&&Nu(_c.name))return nu(_c.name),!0;return;function nu(Li){F(Li.elements,ta=>{switch(ta.kind){case 233:return;case 209:return DA(ta);default:return pe.assertNever(ta)}})}function DA(Li){if(Nu(Li.name))return nu(Li.name);let ta=Uo(Li);zo(ta.escapedName,ta)}})||zo(La.escapedName,La)}}):void 0,$t.flags&4&&jt(Di)&&(yi=No("typeParams",zo=>{for(let za of Di??E){let La=Qf(za,$t).escapedText;zo(La,za.symbol)}}))}return()=>{Qn?.(),yi?.(),jr(),$t.enclosingDeclaration=Xn,$t.mapper=Ti}}function gd($t,lt){if($t.thisParameter)return eo($t.thisParameter,lt);if($t.declaration&&wo($t.declaration)){let hi=Nb($t.declaration);if(hi&&hi.typeExpression)return me.createParameterDeclaration(void 0,void 0,"this",void 0,ii(m(lt,hi.typeExpression),lt))}}function Ll($t,lt,hi){let Di=Vt(lt);lt.flags&=-513;let Qt=me.createModifiersFromModifierFlags(kUt($t)),Cr=Qf($t,lt),jr=VQ($t),Qn=jr&&ii(jr,lt);return Di(),me.createTypeParameterDeclaration(Qt,Cr,hi,Qn)}function Ef($t,lt,hi){return!dn($t,hi)&<&&m(hi,lt)===$t&&tr.tryReuseExistingTypeNode(hi,lt)||ii($t,hi)}function UI($t,lt,hi=Xy($t)){let Di=hi&&Ef(hi,$st($t),lt);return Ll($t,lt,Di)}function V0($t,lt){let hi=$t.kind===2||$t.kind===3?me.createToken(131):void 0,Di=$t.kind===1||$t.kind===3?ti(me.createIdentifier($t.parameterName),16777216):me.createThisTypeNode(),Qt=$t.type&&ii($t.type,lt);return me.createTypePredicateNode(hi,Di,Qt)}function xs($t){let lt=Cp($t,170);if(lt)return lt;if(!bw($t))return Cp($t,342)}function eo($t,lt,hi){let Di=xs($t),Qt=Io($t),Cr=ea(lt,Di,Qt,$t),jr=!(lt.flags&8192)&&hi&&Di&&LB(Di)?At($R(Di),me.cloneNode):void 0,yi=Di&&EB(Di)||iI($t)&32768?me.createToken(26):void 0,Xn=qc($t,Di,lt),Us=Di&&m2e(Di)||iI($t)&16384?me.createToken(58):void 0,No=me.createParameterDeclaration(jr,yi,Xn,Us,Cr,void 0);return lt.approximateLength+=nf($t).length+3,No}function qc($t,lt,hi){return lt&<.name?lt.name.kind===80?ti(me.cloneNode(lt.name),16777216):lt.name.kind===167?ti(me.cloneNode(lt.name.right),16777216):Di(lt.name):nf($t);function Di(Qt){return Cr(Qt);function Cr(jr){hi.tracker.canTrackSymbol&&Un(jr)&&EJt(jr)&&_o(jr.expression,hi.enclosingDeclaration,hi);let Qn=_s(jr,Cr,void 0,void 0,Cr);return hg(Qn)&&(Qn=me.updateBindingElement(Qn,Qn.dotDotDotToken,Qn.propertyName,Qn.name,void 0)),sp(Qn)||(Qn=me.cloneNode(Qn)),ti(Qn,16777217)}}}function _o($t,lt,hi){if(!hi.tracker.canTrackSymbol)return;let Di=B0($t),Qt=An(lt,Di.escapedText,1160127,void 0,!0);if(Qt)hi.tracker.trackSymbol(Qt,lt,111551);else{let Cr=An(Di,Di.escapedText,1160127,void 0,!0);Cr&&hi.tracker.trackSymbol(Cr,lt,111551)}}function du($t,lt,hi,Di){return lt.tracker.trackSymbol($t,lt.enclosingDeclaration,hi),Bd($t,lt,hi,Di)}function Bd($t,lt,hi,Di){let Qt;return!($t.flags&262144)&&(lt.enclosingDeclaration||lt.flags&64)&&!(lt.internalFlags&4)?(Qt=pe.checkDefined(jr($t,hi,!0)),pe.assert(Qt&&Qt.length>0)):Qt=[$t],Qt;function jr(Qn,yi,Xn){let Ti=m9(Qn,lt.enclosingDeclaration,yi,!!(lt.flags&128)),Us;if(!Ti||xQ(Ti[0],lt.enclosingDeclaration,Ti.length===1?yi:Jw(yi))){let zo=kQ(Ti?Ti[0]:Qn,lt.enclosingDeclaration,yi);if(B(zo)){Us=zo.map(to=>jt(to.declarations,GQ)?yh(to,lt):void 0);let za=zo.map((to,_c)=>_c);za.sort(No);let La=za.map(to=>zo[to]);for(let to of La){let _c=jr(to,Jw(yi),!1);if(_c){if(to.exports&&to.exports.get("export=")&&Et(to.exports.get("export="),Qn)){Ti=_c;break}Ti=_c.concat(Ti||[Ae(to,Qn)||Qn]);break}}}}if(Ti)return Ti;if(Xn||!(Qn.flags&6144))return!Xn&&!Di&&F(Qn.declarations,GQ)?void 0:[Qn];function No(zo,za){let La=Us[zo],to=Us[za];if(La&&to){let _c=Ip(to);return Ip(La)===_c?V9e(La)-V9e(to):_c?-1:1}return 0}}}function uf($t,lt){let hi;return Xse($t).flags&524384&&(hi=me.createNodeArray(At(Ug($t),Qt=>UI(Qt,lt)))),hi}function JC($t,lt,hi){var Di;pe.assert($t&&0<=lt&<<$t.length);let Qt=$t[lt],Cr=kg(Qt);if((Di=hi.typeParameterSymbolList)!=null&&Di.has(Cr))return;hi.mustCreateTypeParameterSymbolList&&(hi.mustCreateTypeParameterSymbolList=!1,hi.typeParameterSymbolList=new Set(hi.typeParameterSymbolList)),hi.typeParameterSymbolList.add(Cr);let jr;if(hi.flags&512&<<$t.length-1){let Qn=Qt,yi=$t[lt+1];if(iI(yi)&1){let Xn=Ep(Qn.flags&2097152?YC(Qn):Qn);jr=To(At(Xn,Ti=>w9(Ti,yi.links.mapper)),hi)}else jr=uf(Qt,hi)}return jr}function bA($t){return Iv($t.objectType)?bA($t.objectType):$t}function yh($t,lt,hi){let Di=Cp($t,308);if(!Di){let Us=X($t.declarations,No=>aK(No,$t));Us&&(Di=Cp(Us,308))}if(Di&&Di.moduleName!==void 0)return Di.moduleName;if(!Di&&hOt.test($t.escapedName))return $t.escapedName.substring(1,$t.escapedName.length-1);if(!lt.enclosingFile||!lt.tracker.moduleResolverHost)return hOt.test($t.escapedName)?$t.escapedName.substring(1,$t.escapedName.length-1):ms(LJ($t)).fileName;let Qt=Dd(lt.enclosingDeclaration),Cr=dZe(Qt)?ZY(Qt):void 0,jr=lt.enclosingFile,Qn=hi||Cr&&s.getModeForUsageLocation(jr,Cr)||jr&&s.getDefaultResolutionModeForFile(jr),yi=Cde(jr.path,Qn),Xn=fa($t),Ti=Xn.specifierCache&&Xn.specifierCache.get(yi);if(!Ti){let Us=!!Te.outFile,{moduleResolverHost:No}=lt.tracker,zo=Us?{...Te,baseUrl:No.getCommonSourceDirectory()}:Te;Ti=ma(ctn($t,ks,zo,jr,No,{importModuleSpecifierPreference:Us?"non-relative":"project-relative",importModuleSpecifierEnding:Us?"minimal":Qn===99?"js":void 0},{overrideImportMode:hi})),Xn.specifierCache??(Xn.specifierCache=new Map),Xn.specifierCache.set(yi,Ti)}return Ti}function Vh($t){let lt=me.createIdentifier(Bc($t.escapedName));return $t.parent?me.createQualifiedName(Vh($t.parent),lt):lt}function Fd($t,lt,hi,Di){let Qt=du($t,lt,hi,!(lt.flags&16384)),Cr=hi===111551;if(jt(Qt[0].declarations,GQ)){let yi=Qt.length>1?Qn(Qt,Qt.length-1,1):void 0,Xn=Di||JC(Qt,0,lt),Ti=ms(Dd(lt.enclosingDeclaration)),Us=FJ(Qt[0]),No,zo;if((k_(Te)===3||k_(Te)===99)&&Us?.impliedNodeFormat===99&&Us.impliedNodeFormat!==Ti?.impliedNodeFormat&&(No=yh(Qt[0],lt,99),zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral("import"))]))),No||(No=yh(Qt[0],lt)),!(lt.flags&67108864)&&k_(Te)!==1&&No.includes("/node_modules/")){let La=No;if(k_(Te)===3||k_(Te)===99){let to=Ti?.impliedNodeFormat===99?1:99;No=yh(Qt[0],lt,to),No.includes("/node_modules/")?No=La:zo=me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode"),me.createStringLiteral(to===99?"import":"require"))]))}zo||(lt.encounteredError=!0,lt.tracker.reportLikelyUnsafeImportRequiredError&<.tracker.reportLikelyUnsafeImportRequiredError(La))}let za=me.createLiteralTypeNode(me.createStringLiteral(No));if(lt.approximateLength+=No.length+10,!yi||fC(yi)){if(yi){let La=Ir(yi)?yi:yi.right;xx(La,void 0)}return me.createImportTypeNode(za,zo,yi,Xn,Cr)}else{let La=bA(yi),to=La.objectType.typeName;return me.createIndexedAccessTypeNode(me.createImportTypeNode(za,zo,to,Xn,Cr),La.indexType)}}let jr=Qn(Qt,Qt.length-1,0);if(Iv(jr))return jr;if(Cr)return me.createTypeQueryNode(jr);{let yi=Ir(jr)?jr:jr.right,Xn=G3(yi);return xx(yi,void 0),me.createTypeReferenceNode(jr,Xn)}function Qn(yi,Xn,Ti){let Us=Xn===yi.length-1?Di:JC(yi,Xn,lt),No=yi[Xn],zo=yi[Xn-1],za;if(Xn===0)lt.flags|=16777216,za=T5(No,lt),lt.approximateLength+=(za?za.length:0)+1,lt.flags^=16777216;else if(zo&&B1(zo)){let to=B1(zo);Dh(to,(_c,nu)=>{if(Et(_c,No)&&!p2e(nu)&&nu!=="export=")return za=Bc(nu),!0})}if(za===void 0){let to=X(No.declarations,Il);if(to&&Un(to)&&fC(to.expression)){let _c=Qn(yi,Xn-1,Ti);return fC(_c)?me.createIndexedAccessTypeNode(me.createParenthesizedType(me.createTypeQueryNode(_c)),me.createTypeQueryNode(to.expression)):_c}za=T5(No,lt)}if(lt.approximateLength+=za.length+1,!(lt.flags&16)&&zo&&pk(zo)&&pk(zo).get(No.escapedName)&&Et(pk(zo).get(No.escapedName),No)){let to=Qn(yi,Xn-1,Ti);return Iv(to)?me.createIndexedAccessTypeNode(to,me.createLiteralTypeNode(me.createStringLiteral(za))):me.createIndexedAccessTypeNode(me.createTypeReferenceNode(to,Us),me.createLiteralTypeNode(me.createStringLiteral(za)))}let La=ti(me.createIdentifier(za),16777216);if(Us&&xx(La,me.createNodeArray(Us)),La.symbol=No,Xn>Ti){let to=Qn(yi,Xn-1,Ti);return fC(to)?me.createQualifiedName(to,La):pe.fail("Impossible construct - an export of an indexed access cannot be reachable")}return La}}function ES($t,lt,hi){let Di=An(lt.enclosingDeclaration,$t,788968,void 0,!1);return Di&&Di.flags&262144?Di!==hi.symbol:!1}function Qf($t,lt){var hi,Di,Qt,Cr;if(lt.flags&4&<.typeParameterNames){let yi=lt.typeParameterNames.get(QC($t));if(yi)return yi}let jr=ch($t.symbol,lt,788968,!0);if(!(jr.kind&80))return me.createIdentifier("(Missing type parameter)");let Qn=(Di=(hi=$t.symbol)==null?void 0:hi.declarations)==null?void 0:Di[0];if(Qn&&Ds(Qn)&&(jr=v(lt,jr,Qn.name)),lt.flags&4){let yi=jr.escapedText,Xn=((Qt=lt.typeParameterNamesByTextNextNameCount)==null?void 0:Qt.get(yi))||0,Ti=yi;for(;(Cr=lt.typeParameterNamesByText)!=null&&Cr.has(Ti)||ES(Ti,lt,$t);)Xn++,Ti=`${yi}_${Xn}`;if(Ti!==yi){let Us=G3(jr);jr=me.createIdentifier(Ti),xx(jr,Us)}lt.mustCreateTypeParametersNamesLookups&&(lt.mustCreateTypeParametersNamesLookups=!1,lt.typeParameterNames=new Map(lt.typeParameterNames),lt.typeParameterNamesByTextNextNameCount=new Map(lt.typeParameterNamesByTextNextNameCount),lt.typeParameterNamesByText=new Set(lt.typeParameterNamesByText)),lt.typeParameterNamesByTextNextNameCount.set(yi,Xn),lt.typeParameterNames.set(QC($t),jr),lt.typeParameterNamesByText.add(Ti)}return jr}function ch($t,lt,hi,Di){let Qt=du($t,lt,hi);return Di&&Qt.length!==1&&!lt.encounteredError&&!(lt.flags&65536)&&(lt.encounteredError=!0),Cr(Qt,Qt.length-1);function Cr(jr,Qn){let yi=JC(jr,Qn,lt),Xn=jr[Qn];Qn===0&&(lt.flags|=16777216);let Ti=T5(Xn,lt);Qn===0&&(lt.flags^=16777216);let Us=ti(me.createIdentifier(Ti),16777216);return yi&&xx(Us,me.createNodeArray(yi)),Us.symbol=Xn,Qn>0?me.createQualifiedName(Cr(jr,Qn-1),Us):Us}}function Gv($t,lt,hi){let Di=du($t,lt,hi);return Qt(Di,Di.length-1);function Qt(Cr,jr){let Qn=JC(Cr,jr,lt),yi=Cr[jr];jr===0&&(lt.flags|=16777216);let Xn=T5(yi,lt);jr===0&&(lt.flags^=16777216);let Ti=Xn.charCodeAt(0);if(ine(Ti)&&jt(yi.declarations,GQ)){let Us=yh(yi,lt);return lt.approximateLength+=2+Us.length,me.createStringLiteral(Us)}if(jr===0||Fbe(Xn,Ze)){let Us=ti(me.createIdentifier(Xn),16777216);return Qn&&xx(Us,me.createNodeArray(Qn)),Us.symbol=yi,lt.approximateLength+=1+Xn.length,jr>0?me.createPropertyAccessExpression(Qt(Cr,jr-1),Us):Us}else{Ti===91&&(Xn=Xn.substring(1,Xn.length-1),Ti=Xn.charCodeAt(0));let Us;if(ine(Ti)&&!(yi.flags&8)){let No=l2(Xn).replace(/\\./g,zo=>zo.substring(1));lt.approximateLength+=No.length+2,Us=me.createStringLiteral(No,Ti===39)}else""+ +Xn===Xn&&(lt.approximateLength+=Xn.length,Us=me.createNumericLiteral(+Xn));if(!Us){let No=ti(me.createIdentifier(Xn),16777216);Qn&&xx(No,me.createNodeArray(Qn)),No.symbol=yi,lt.approximateLength+=Xn.length,Us=No}return lt.approximateLength+=2,me.createElementAccessExpression(Qt(Cr,jr-1),Us)}}}function sfe($t){let lt=Il($t);return lt?Un(lt)?!!(Ol(lt.expression).flags&402653316):Yg(lt)?!!(Ol(lt.argumentExpression).flags&402653316):Zg(lt):!1}function lSe($t){let lt=Il($t);return!!(lt&&Zg(lt)&&(lt.singleQuote||!sp(lt)&&Ac(xp(lt,!1),"'")))}function ofe($t,lt){let hi=Mat($t);if(hi)if(!!lt.tracker.reportPrivateInBaseOfClassExpression&<.flags&2048){let Xn=Bc($t.escapedName);return Xn=Xn.replace(/__#\d+@#/g,"__#private@#"),Une(Xn,Mg(Te),!1,!0,!!($t.flags&8192))}else return hi;let Di=!!B($t.declarations)&&ue($t.declarations,sfe),Qt=!!B($t.declarations)&&ue($t.declarations,lSe),Cr=!!($t.flags&8192),jr=y2($t,lt,Qt,Di,Cr);if(jr)return jr;let Qn=Bc($t.escapedName);return Une(Qn,Mg(Te),Qt,Di,Cr)}function y2($t,lt,hi,Di,Qt){let Cr=fa($t).nameType;if(Cr){if(Cr.flags&384){let jr=""+Cr.value;return!Uh(jr,Mg(Te))&&(Di||!IN(jr))?me.createStringLiteral(jr,!!hi):IN(jr)&&Ac(jr,"-")?me.createComputedPropertyName(me.createPrefixUnaryExpression(41,me.createNumericLiteral(-jr))):Une(jr,Mg(Te),hi,Di,Qt)}if(Cr.flags&8192)return me.createComputedPropertyName(Gv(Cr.symbol,lt,111551))}}function uSe($t){let lt=$t.mustCreateTypeParameterSymbolList,hi=$t.mustCreateTypeParametersNamesLookups;$t.mustCreateTypeParameterSymbolList=!0,$t.mustCreateTypeParametersNamesLookups=!0;let Di=$t.typeParameterNames,Qt=$t.typeParameterNamesByText,Cr=$t.typeParameterNamesByTextNextNameCount,jr=$t.typeParameterSymbolList;return()=>{$t.typeParameterNames=Di,$t.typeParameterNamesByText=Qt,$t.typeParameterNamesByTextNextNameCount=Cr,$t.typeParameterSymbolList=jr,$t.mustCreateTypeParameterSymbolList=lt,$t.mustCreateTypeParametersNamesLookups=hi}}function zn($t,lt){return $t.declarations&&de($t.declarations,hi=>!!X0n(hi)&&(!lt||!!ji(hi,Di=>Di===lt)))}function as($t,lt){if(!(la(lt)&4)||!nh($t))return!0;not($t);let hi=sa($t).resolvedSymbol,Di=hi&&Fp(hi);return!Di||Di!==lt.target?!0:B($t.typeArguments)>=Ik(lt.target.typeParameters)}function Ms($t){for(;sa($t).fakeScopeForSignatureDeclaration;)$t=$t.parent;return $t}function Ao($t,lt,hi){return hi.flags&8192&&hi.symbol===$t&&(!lt.enclosingDeclaration||jt($t.declarations,Qt=>ms(Qt)===lt.enclosingFile))&&(lt.flags|=1048576),ii(hi,lt)}function ea($t,lt,hi,Di){var Qt;let Cr,jr=lt&&(Si(lt)||cS(lt))&&DOe(lt,$t.enclosingDeclaration),Qn=lt??Di.valueDeclaration??zn(Di)??((Qt=Di.declarations)==null?void 0:Qt[0]);if(!dn(hi,$t)&&Qn){let yi=qe($t,Di,hi);yB(Qn)?Cr=tr.serializeTypeOfAccessor(Qn,Di,$t):KAe(Qn)&&!sp(Qn)&&!(la(hi)&196608)&&(Cr=tr.serializeTypeOfDeclaration(Qn,Di,$t)),yi()}return Cr||(jr&&(hi=mW(hi)),Cr=Ao(Di,$t,hi)),Cr??me.createKeywordTypeNode(133)}function tc($t,lt,hi){return hi===lt?!0:$t&&((ss($t)||pi($t))&&$t.questionToken||Si($t)&&Xst($t))?Dv(lt,524288)===hi:!1}function jg($t,lt){let hi=$t.flags&256,Di=Vt($t);hi&&($t.flags&=-257);let Qt,Cr=ud(lt);if(!(hi&&Xo(Cr))){if(lt.declaration&&!sp(lt.declaration)&&!dn(Cr,$t)){let jr=Uo(lt.declaration),Qn=qe($t,jr,Cr);Qt=tr.serializeReturnTypeForSignature(lt.declaration,jr,$t),Qn()}Qt||(Qt=nA($t,lt,Cr))}return!Qt&&!hi&&(Qt=me.createKeywordTypeNode(133)),Di(),Qt}function nA($t,lt,hi){let Di=$t.suppressReportInferenceFallback;$t.suppressReportInferenceFallback=!0;let Qt=Tv(lt),Cr=Qt?V0($t.mapper?Ihn(Qt,$t.mapper):Qt,$t):ii(hi,$t);return $t.suppressReportInferenceFallback=Di,Cr}function Sp($t,lt,hi=lt.enclosingDeclaration){let Di=!1,Qt=B0($t);if(wo($t)&&(p3(Qt)||cN(Qt.parent)||zi(Qt.parent)&&_P(Qt.parent.left)&&p3(Qt.parent.right)))return Di=!0,{introducesError:Di,node:$t};let Cr=vpe($t),jr;if(vF(Qt))return jr=Uo(r0(Qt,!1,!1)),cW(jr,Qt,Cr,!1).accessibility!==0&&(Di=!0,lt.tracker.reportInaccessibleThisError()),{introducesError:Di,node:Qn($t)};if(jr=TI(Qt,Cr,!0,!0),lt.enclosingDeclaration&&!(jr&&jr.flags&262144)){jr=fn(jr);let yi=TI(Qt,Cr,!0,!0,lt.enclosingDeclaration);if(yi===it||yi===void 0&&jr!==void 0||yi&&jr&&!Et(fn(yi),jr))return yi!==it&<.tracker.reportInferenceFallback($t),Di=!0,{introducesError:Di,node:$t,sym:jr};jr=yi}if(jr)return jr.flags&1&&jr.valueDeclaration&&(HL(jr.valueDeclaration)||cS(jr.valueDeclaration))?{introducesError:Di,node:Qn($t)}:(!(jr.flags&262144)&&!HT($t)&&cW(jr,hi,Cr,!1).accessibility!==0?(lt.tracker.reportInferenceFallback($t),Di=!0):lt.tracker.trackSymbol(jr,hi,Cr),{introducesError:Di,node:Qn($t)});return{introducesError:Di,node:$t};function Qn(yi){if(yi===Qt){let Ti=Fp(jr),Us=jr.flags&262144?Qf(Ti,lt):me.cloneNode(yi);return Us.symbol=jr,v(lt,ti(Us,16777216),yi)}let Xn=_s(yi,Ti=>Qn(Ti),void 0);return v(lt,Xn,yi)}}function tC($t,lt,hi,Di){let Qt=hi?111551:788968,Cr=TI(lt,Qt,!0);if(!Cr)return;let jr=Cr.flags&2097152?YC(Cr):Cr;if(cW(Cr,$t.enclosingDeclaration,Qt,!1).accessibility===0)return Fd(jr,$t,Qt,Di)}function P0($t,lt){let hi=m($t,lt,!0);if(!hi)return!1;if(wo(lt)&&ky(lt)){ahn(lt);let Di=sa(lt).resolvedSymbol;return!Di||!(!lt.isTypeOf&&!(Di.flags&788968)||!(B(lt.typeArguments)>=Ik(Ug(Di))))}if(nh(lt)){if(s2(lt))return!1;let Di=sa(lt).resolvedSymbol;if(!Di)return!1;if(Di.flags&262144){let Qt=Fp(Di);return!($t.mapper&&w9(Qt,$t.mapper)!==Qt)}if(GY(lt))return as(lt,hi)&&!mIn(lt)&&!!(Di.flags&788968)}if(xB(lt)&<.operator===158&<.type.kind===155){let Di=$t.enclosingDeclaration&&Ms($t.enclosingDeclaration);return!!ji(lt,Qt=>Qt===Di)}return!0}function Qb($t,lt,hi){let Di=m($t,lt);if(hi&&!kv(Di,Qt=>!!(Qt.flags&32768))&&P0($t,lt)){let Qt=tr.tryReuseExistingTypeNode($t,lt);if(Qt)return me.createUnionTypeNode([Qt,me.createKeywordTypeNode(157)])}return ii(Di,$t)}function H5($t,lt){var hi;let Di=cyn(me.createPropertyDeclaration,175,!0),Qt=cyn((Bn,go,sc,yc)=>me.createPropertySignature(Bn,go,sc,yc),174,!1),Cr=lt.enclosingDeclaration,jr=[],Qn=new Set,yi=[],Xn=lt;lt={...Xn,usedSymbolNames:new Set(Xn.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((hi=Xn.remappedSymbolReferences)==null?void 0:hi.entries()),tracker:void 0};let Ti={...Xn.tracker.inner,trackSymbol:(Bn,go,sc)=>{var yc,Yo;if((yc=lt.remappedSymbolNames)!=null&&yc.has(kg(Bn)))return!1;if(cW(Bn,go,sc,!1).accessibility===0){let sA=Bd(Bn,lt,sc);if(!(Bn.flags&4)){let Pu=sA[0],Zc=ms(Xn.enclosingDeclaration);jt(Pu.declarations,Rg=>ms(Rg)===Zc)&&EA(Pu)}}else if((Yo=Xn.tracker.inner)!=null&&Yo.trackSymbol)return Xn.tracker.inner.trackSymbol(Bn,go,sc);return!1}};lt.tracker=new _Ot(lt,Ti,Xn.tracker.moduleResolverHost),Dh($t,(Bn,go)=>{let sc=Bc(go);yk(Bn,sc)});let Us=!lt.bundled,No=$t.get("export=");return No&&$t.size>1&&No.flags&2098688&&($t=qu(),$t.set("export=",No)),ta($t),nu(jr);function zo(Bn){return!!Bn&&Bn.kind===80}function za(Bn){return Ch(Bn)?Me(At(Bn.declarationList.declarations,Il),zo):Me([Il(Bn)],zo)}function La(Bn){let go=de(Bn,Cf),sc=Se(Bn,xh),yc=sc!==-1?Bn[sc]:void 0;if(yc&&go&&go.isExportEquals&&Ir(go.expression)&&Ir(yc.name)&&Vo(yc.name)===Vo(go.expression)&&yc.body&&_N(yc.body)){let Yo=Me(Bn,Pu=>!!(o_(Pu)&32)),Vg=yc.name,sA=yc.body;if(B(Yo)&&(yc=me.updateModuleDeclaration(yc,yc.modifiers,yc.name,sA=me.updateModuleBlock(sA,me.createNodeArray([...yc.body.statements,me.createExportDeclaration(void 0,!1,me.createNamedExports(At(er(Yo,Pu=>za(Pu)),Pu=>me.createExportSpecifier(!1,void 0,Pu))),void 0)]))),Bn=[...Bn.slice(0,sc),yc,...Bn.slice(sc+1)]),!de(Bn,Pu=>Pu!==yc&&t3(Pu,Vg))){jr=[];let Pu=!jt(sA.statements,Zc=>Ga(Zc,32)||Cf(Zc)||Gh(Zc));F(sA.statements,Zc=>{ou(Zc,Pu?32:0)}),Bn=[...Me(Bn,Zc=>Zc!==yc&&Zc!==go),...jr]}}return Bn}function to(Bn){let go=Me(Bn,yc=>Gh(yc)&&!yc.moduleSpecifier&&!!yc.exportClause&&mv(yc.exportClause));B(go)>1&&(Bn=[...Me(Bn,Yo=>!Gh(Yo)||!!Yo.moduleSpecifier||!Yo.exportClause),me.createExportDeclaration(void 0,!1,me.createNamedExports(er(go,Yo=>Ma(Yo.exportClause,mv).elements)),void 0)]);let sc=Me(Bn,yc=>Gh(yc)&&!!yc.moduleSpecifier&&!!yc.exportClause&&mv(yc.exportClause));if(B(sc)>1){let yc=Yn(sc,Yo=>Zg(Yo.moduleSpecifier)?">"+Yo.moduleSpecifier.text:">");if(yc.length!==sc.length)for(let Yo of yc)Yo.length>1&&(Bn=[...Me(Bn,Vg=>!Yo.includes(Vg)),me.createExportDeclaration(void 0,!1,me.createNamedExports(er(Yo,Vg=>Ma(Vg.exportClause,mv).elements)),Yo[0].moduleSpecifier)])}return Bn}function _c(Bn){let go=Se(Bn,sc=>Gh(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&mv(sc.exportClause));if(go>=0){let sc=Bn[go],yc=Xt(sc.exportClause.elements,Yo=>{if(!Yo.propertyName&&Yo.name.kind!==11){let Vg=Yo.name,sA=po(Bn),Pu=Me(sA,Zc=>t3(Bn[Zc],Vg));if(B(Pu)&&ue(Pu,Zc=>Kne(Bn[Zc]))){for(let Zc of Pu)Bn[Zc]=DA(Bn[Zc]);return}}return Yo});B(yc)?Bn[go]=me.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,me.updateNamedExports(sc.exportClause,yc),sc.moduleSpecifier,sc.attributes):LA(Bn,go)}return Bn}function nu(Bn){return Bn=La(Bn),Bn=to(Bn),Bn=_c(Bn),Cr&&(ll(Cr)&&vl(Cr)||xh(Cr))&&(!jt(Bn,PT)||!Db(Bn)&&jt(Bn,t7))&&Bn.push(aEe(me)),Bn}function DA(Bn){let go=(o_(Bn)|32)&-129;return me.replaceModifiers(Bn,go)}function Li(Bn){let go=o_(Bn)&-33;return me.replaceModifiers(Bn,go)}function ta(Bn,go,sc){go||yi.push(new Map);let yc=0,Yo=Array.from(Bn.values());for(let Vg of Yo){if(yc++,kt(lt)&&yc+2{mu(Vg,!0,!!sc)}),yi.pop())}function mu(Bn,go,sc){Gd(Io(Bn));let yc=jA(Bn);if(Qn.has(kg(yc)))return;if(Qn.add(kg(yc)),!go||B(Bn.declarations)&&jt(Bn.declarations,Vg=>!!ji(Vg,sA=>sA===Cr))){let Vg=uSe(lt);lt.tracker.pushErrorFallbackNode(de(Bn.declarations,sA=>ms(sA)===lt.enclosingFile)),Jl(Bn,go,sc),lt.tracker.popErrorFallbackNode(),Vg()}}function Jl(Bn,go,sc,yc=Bn.escapedName){var Yo,Vg,sA,Pu,Zc,Rg,_m;let xf=Bc(yc),f0=yc==="default";if(go&&!(lt.flags&131072)&&WY(xf)&&!f0){lt.encounteredError=!0;return}let KI=f0&&!!(Bn.flags&-113||Bn.flags&16&&B(Gd(Io(Bn))))&&!(Bn.flags&2097152),gf=!KI&&!go&&WY(xf)&&!f0;(KI||gf)&&(go=!0);let pI=(go?0:32)|(f0&&!KI?2048:0),NI=Bn.flags&1536&&Bn.flags&7&&yc!=="export=",SS=NI&&j8t(Io(Bn),Bn);if((Bn.flags&8208||SS)&&EW(Io(Bn),Bn,yk(Bn,xf),pI),Bn.flags&524288&&mm(Bn,xf,pI),Bn.flags&98311&&yc!=="export="&&!(Bn.flags&4194304)&&!(Bn.flags&32)&&!(Bn.flags&8192)&&!SS)if(sc)FOe(Bn)&&(gf=!1,KI=!1);else{let Ph=Io(Bn),Ky=yk(Bn,xf);if(Ph.symbol&&Ph.symbol!==Bn&&Ph.symbol.flags&16&&jt(Ph.symbol.declarations,RF)&&((Yo=Ph.symbol.members)!=null&&Yo.size||(Vg=Ph.symbol.exports)!=null&&Vg.size))lt.remappedSymbolReferences||(lt.remappedSymbolReferences=new Map),lt.remappedSymbolReferences.set(kg(Ph.symbol),Bn),Jl(Ph.symbol,go,sc,yc),lt.remappedSymbolReferences.delete(kg(Ph.symbol));else if(!(Bn.flags&16)&&j8t(Ph,Bn))EW(Ph,Bn,Ky,pI);else{let k9=Bn.flags&2?kq(Bn)?2:1:(sA=Bn.parent)!=null&&sA.valueDeclaration&&ll((Pu=Bn.parent)==null?void 0:Pu.valueDeclaration)?2:void 0,vS=KI||!(Bn.flags&4)?Ky:LOe(Ky,Bn),oG=Bn.declarations&&de(Bn.declarations,vW=>nc(vW));oG&&u_(oG.parent)&&oG.parent.declarations.length===1&&(oG=oG.parent.parent);let SW=(Zc=Bn.declarations)==null?void 0:Zc.find(jo);if(SW&&fo(SW.parent)&&Ir(SW.parent.right)&&((Rg=Ph.symbol)!=null&&Rg.valueDeclaration)&&ll(Ph.symbol.valueDeclaration)){let vW=Ky===SW.parent.right.escapedText?void 0:SW.parent.right;lt.approximateLength+=12+(((_m=vW?.escapedText)==null?void 0:_m.length)??0),ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vW,Ky)])),0),lt.tracker.trackSymbol(Ph.symbol,lt.enclosingDeclaration,111551)}else{let vW=v(lt,me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(vS,void 0,ea(lt,void 0,Ph,Bn))],k9)),oG);lt.approximateLength+=7+vS.length,ou(vW,vS!==Ky?pI&-33:pI),vS!==Ky&&!go&&(lt.approximateLength+=16+vS.length+Ky.length,ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,vS,Ky)])),0),gf=!1,KI=!1)}}}if(Bn.flags&384&&zQ(Bn,xf,pI),Bn.flags&32&&(Bn.flags&4&&Bn.valueDeclaration&&fo(Bn.valueDeclaration.parent)&&vd(Bn.valueDeclaration.parent.right)?ayn(Bn,yk(Bn,xf),pI):U8t(Bn,yk(Bn,xf),pI)),(Bn.flags&1536&&(!NI||IZ(Bn))||SS)&&Q5(Bn,xf,pI),Bn.flags&64&&!(Bn.flags&32)&&Cm(Bn,xf,pI),Bn.flags&2097152&&ayn(Bn,yk(Bn,xf),pI),Bn.flags&4&&Bn.escapedName==="export="&&FOe(Bn),Bn.flags&8388608&&Bn.declarations)for(let Ph of Bn.declarations){let Ky=F0(Ph,Ph.moduleSpecifier);if(!Ky)continue;let k9=Ph.isTypeOnly,vS=yh(Ky,lt);lt.approximateLength+=17+vS.length,ou(me.createExportDeclaration(void 0,k9,void 0,me.createStringLiteral(vS)),0)}if(KI){let Ph=yk(Bn,xf);lt.approximateLength+=16+Ph.length,ou(me.createExportAssignment(void 0,!1,me.createIdentifier(Ph)),0)}else if(gf){let Ph=yk(Bn,xf);lt.approximateLength+=22+xf.length+Ph.length,ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Ph,xf)])),0)}}function EA(Bn){if(jt(Bn.declarations,HL))return;pe.assertIsDefined(yi[yi.length-1]),LOe(Bc(Bn.escapedName),Bn);let go=!!(Bn.flags&2097152)&&!jt(Bn.declarations,sc=>!!ji(sc,Gh)||tk(sc)||km(sc)&&!ZF(sc.moduleReference));yi[go?0:yi.length-1].set(kg(Bn),Bn)}function Ad(Bn){return ll(Bn)&&(vl(Bn)||Zu(Bn))||s_(Bn)&&!vB(Bn)}function ou(Bn,go){if(LB(Bn)){let sc=o_(Bn),yc=0,Yo=lt.enclosingDeclaration&&(iS(lt.enclosingDeclaration)?ms(lt.enclosingDeclaration):lt.enclosingDeclaration);go&32&&Yo&&(Ad(Yo)||xh(Yo))&&Kne(Bn)&&(yc|=32),Us&&!(yc&32)&&(!Yo||!(Yo.flags&33554432))&&(V3(Bn)||Ch(Bn)||ih(Bn)||pm(Bn)||xh(Bn))&&(yc|=128),go&2048&&(pm(Bn)||g_(Bn)||ih(Bn))&&(yc|=2048),yc&&(Bn=me.replaceModifiers(Bn,yc|sc)),lt.approximateLength+=ZOe(yc|sc)}jr.push(Bn)}function mm(Bn,go,sc){var yc;let Yo=yfn(Bn),Vg=fa(Bn).typeParameters,sA=At(Vg,KI=>UI(KI,lt)),Pu=(yc=Bn.declarations)==null?void 0:yc.find(iS),Zc=pJ(Pu?Pu.comment||Pu.parent.comment:void 0),Rg=Vt(lt);lt.flags|=8388608;let _m=lt.enclosingDeclaration;lt.enclosingDeclaration=Pu;let xf=Pu&&Pu.typeExpression&&W3(Pu.typeExpression)&&tr.tryReuseExistingTypeNode(lt,Pu.typeExpression.type)||ii(Yo,lt),f0=yk(Bn,go);lt.approximateLength+=8+(Zc?.length??0)+f0.length,ou(kB(me.createTypeAliasDeclaration(void 0,f0,sA,xf),Zc?[{kind:3,text:`* - * `+Zc.replace(/\n/g,` - * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Rg(),lt.enclosingDeclaration=_m}function Cm(Bn,go,sc){let yc=yk(Bn,go);lt.approximateLength+=14+yc.length;let Yo=wv(Bn),Vg=Ug(Bn),sA=At(Vg,gf=>UI(gf,lt)),Pu=Kw(Yo),Zc=B(Pu)?Kg(Pu):void 0,Rg=W_(Gd(Yo),!1,Zc),_m=z8t(0,Yo,Zc,180),xf=z8t(1,Yo,Zc,181),f0=uyn(Yo,Zc),KI=B(Pu)?[me.createHeritageClause(96,Xt(Pu,gf=>q8t(gf,111551)))]:void 0;ou(me.createInterfaceDeclaration(void 0,yc,sA,KI,[...f0,...xf,..._m,...Rg]),sc)}function W_(Bn,go,sc,yc){let Yo=[],Vg=0;for(let sA of Bn){if(Vg++,kt(lt)&&Vg+2Jse(yc)&&Uh(yc.escapedName,99))}function IZ(Bn){return ue(Uy(Bn),go=>!(Hb(Zh(go))&111551))}function Q5(Bn,go,sc){let yc=Uy(Bn),Yo=Y5(lt),Vg=Ju(yc,Zc=>Zc.parent&&Zc.parent===Bn||Yo?"real":"merged"),sA=Vg.get("real")||E,Pu=Vg.get("merged")||E;if(B(sA)||Yo){let Zc;if(Yo){let Rg=lt.flags;lt.flags|=514,Zc=D(Bn,lt,-1),lt.flags=Rg}else{let Rg=yk(Bn,go);Zc=me.createIdentifier(Rg),lt.approximateLength+=Rg.length}_k(sA,Zc,sc,!!(Bn.flags&67108880))}if(B(Pu)){let Zc=ms(lt.enclosingDeclaration),Rg=yk(Bn,go),_m=me.createModuleBlock([me.createExportDeclaration(void 0,!1,me.createNamedExports(Xt(Me(Pu,xf=>xf.escapedName!=="export="),xf=>{var f0,KI;let gf=Bc(xf.escapedName),pI=yk(xf,gf),NI=xf.declarations&&Mb(xf);if(Zc&&(NI?Zc!==ms(NI):!jt(xf.declarations,Ky=>ms(Ky)===Zc))){(KI=(f0=lt.tracker)==null?void 0:f0.reportNonlocalAugmentation)==null||KI.call(f0,Zc,Bn,xf);return}let SS=NI&&b5(NI,!0);EA(SS||xf);let Ph=SS?yk(SS,Bc(SS.escapedName)):pI;return me.createExportSpecifier(!1,gf===Ph?void 0:Ph,gf)})))]);ou(me.createModuleDeclaration(void 0,me.createIdentifier(Rg),_m,32),0)}}function zQ(Bn,go,sc){let yc=yk(Bn,go);lt.approximateLength+=9+yc.length;let Yo=[],Vg=Me(Gd(Io(Bn)),Pu=>!!(Pu.flags&8)),sA=0;for(let Pu of Vg){if(sA++,kt(lt)&&sA+2!B(NI.declarations)||jt(NI.declarations,SS=>ms(SS)===ms(lt.enclosingDeclaration))||Vg?"local":"remote").get("local")||E,Zc=H3.createModuleDeclaration(void 0,go,me.createModuleBlock([]),Yo);XA(Zc,Cr),Zc.locals=qu(Bn),Zc.symbol=Bn[0].parent;let Rg=jr;jr=[];let _m=Us;Us=!1;let xf={...lt,enclosingDeclaration:Zc},f0=lt;lt=xf,ta(qu(Pu),yc,!0),lt=f0,Us=_m;let KI=jr;jr=Rg;let gf=At(KI,NI=>Cf(NI)&&!NI.isExportEquals&&Ir(NI.expression)?me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,NI.expression,me.createIdentifier("default"))])):NI),pI=ue(gf,NI=>Ga(NI,32))?At(gf,Li):gf;Zc=me.updateModuleDeclaration(Zc,Zc.modifiers,Zc.name,me.createModuleBlock(pI)),ou(Zc,sc)}else Vg&&(lt.approximateLength+=14,ou(me.createModuleDeclaration(void 0,go,me.createModuleBlock([]),Yo),sc))}function Jse(Bn){return!!(Bn.flags&2887656)||!(Bn.flags&4194304||Bn.escapedName==="prototype"||Bn.valueDeclaration&&cg(Bn.valueDeclaration)&&xa(Bn.valueDeclaration.parent))}function GOe(Bn){let go=Xt(Bn,sc=>{let yc=lt.enclosingDeclaration;lt.enclosingDeclaration=sc;let Yo=sc.expression;if(Od(Yo)){if(Ir(Yo)&&Vo(Yo)==="")return Vg(void 0);let sA;if({introducesError:sA,node:Yo}=Sp(Yo,lt),sA)return Vg(void 0)}return Vg(me.createExpressionWithTypeArguments(Yo,At(sc.typeArguments,sA=>tr.tryReuseExistingTypeNode(lt,sA)||ii(m(lt,sA),lt))));function Vg(sA){return lt.enclosingDeclaration=yc,sA}});if(go.length===Bn.length)return go}function U8t(Bn,go,sc){var yc,Yo;lt.approximateLength+=9+go.length;let Vg=(yc=Bn.declarations)==null?void 0:yc.find(xa),sA=lt.enclosingDeclaration;lt.enclosingDeclaration=Vg||sA;let Pu=Ug(Bn),Zc=At(Pu,x9=>UI(x9,lt));F(Pu,x9=>lt.approximateLength+=nf(x9.symbol).length);let Rg=T1(wv(Bn)),_m=Kw(Rg),xf=Vg&&jJ(Vg),f0=xf&&GOe(xf)||Xt(Bse(Rg),ejs),KI=Io(Bn),gf=!!((Yo=KI.symbol)!=null&&Yo.valueDeclaration)&&xa(KI.symbol.valueDeclaration),pI=gf?nZ(KI):hr;lt.approximateLength+=(B(_m)?8:0)+(B(f0)?11:0);let NI=[...B(_m)?[me.createHeritageClause(96,At(_m,x9=>$8s(x9,pI,go)))]:[],...B(f0)?[me.createHeritageClause(119,f0)]:[]],SS=LUs(Rg,_m,Gd(Rg)),Ph=Me(SS,x9=>!xOe(x9)),Ky=jt(SS,xOe),k9=Ky?Y5(lt)?W_(Me(SS,xOe),!0,_m[0],!1):[me.createPropertyDeclaration(void 0,me.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:E;Ky&&!Y5(lt)&&(lt.approximateLength+=9);let vS=W_(Ph,!0,_m[0],!1),oG=W_(Me(Gd(KI),x9=>!(x9.flags&4194304)&&x9.escapedName!=="prototype"&&!Jse(x9)),!0,pI,!0),SW=!gf&&!!Bn.valueDeclaration&&wo(Bn.valueDeclaration)&&!jt(tg(KI,1));SW&&(lt.approximateLength+=21);let vW=SW?[me.createConstructorDeclaration(me.createModifiersFromModifierFlags(2),[],void 0)]:z8t(1,KI,pI,177),tjs=uyn(Rg,_m[0]);lt.enclosingDeclaration=sA,ou(v(lt,me.createClassDeclaration(void 0,go,Zc,NI,[...tjs,...oG,...vW,...vS,...k9]),Bn.declarations&&Me(Bn.declarations,x9=>pm(x9)||vd(x9))[0]),sc)}function K8t(Bn){return X(Bn,go=>{if(uy(go)||R0(go))return HD(go.propertyName||go.name);if(fo(go)||Cf(go)){let sc=Cf(go)?go.expression:go.right;if(jo(sc))return Vo(sc.name)}if(d9(go)){let sc=Il(go);if(sc&&Ir(sc))return Vo(sc)}})}function ayn(Bn,go,sc){var yc,Yo,Vg,sA,Pu;let Zc=Mb(Bn);if(!Zc)return pe.fail();let Rg=jA(b5(Zc,!0));if(!Rg)return;let _m=NY(Rg)&&K8t(Bn.declarations)||Bc(Rg.escapedName);_m==="export="&&Tt&&(_m="default");let xf=yk(Rg,_m);switch(EA(Rg),Zc.kind){case 209:if(((Yo=(yc=Zc.parent)==null?void 0:yc.parent)==null?void 0:Yo.kind)===261){let gf=yh(Rg.parent||Rg,lt),{propertyName:pI}=Zc,NI=pI&&Ir(pI)?Vo(pI):void 0;lt.approximateLength+=24+go.length+gf.length+(NI?.length??0),ou(me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,NI?me.createIdentifier(NI):void 0,me.createIdentifier(go))])),me.createStringLiteral(gf),void 0),0);break}pe.failBadSyntaxKind(((Vg=Zc.parent)==null?void 0:Vg.parent)||Zc,"Unhandled binding element grandparent kind in declaration serialization");break;case 305:((Pu=(sA=Zc.parent)==null?void 0:sA.parent)==null?void 0:Pu.kind)===227&&cfe(Bc(Bn.escapedName),xf);break;case 261:if(jo(Zc.initializer)){let gf=Zc.initializer,pI=me.createUniqueName(go),NI=yh(Rg.parent||Rg,lt);lt.approximateLength+=22+NI.length+Vo(pI).length,ou(me.createImportEqualsDeclaration(void 0,!1,pI,me.createExternalModuleReference(me.createStringLiteral(NI))),0),lt.approximateLength+=12+go.length+Vo(pI).length+Vo(gf.name).length,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(go),me.createQualifiedName(pI,gf.name)),sc);break}case 272:if(Rg.escapedName==="export="&&jt(Rg.declarations,gf=>ll(gf)&&Zu(gf))){FOe(Bn);break}let f0=!(Rg.flags&512)&&!nc(Zc);lt.approximateLength+=11+go.length+Bc(Rg.escapedName).length,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(go),f0?ch(Rg,lt,-1,!1):me.createExternalModuleReference(me.createStringLiteral(yh(Rg,lt)))),f0?sc:0);break;case 271:ou(me.createNamespaceExportDeclaration(Vo(Zc.name)),0);break;case 274:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.moduleSpecifier,NI=Mf(Zc.parent)?Zc.parent.attributes:void 0,SS=SN(Zc.parent);lt.approximateLength+=14+go.length+3+(SS?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(SS?156:void 0,me.createIdentifier(go),void 0),pI,NI),0);break}case 275:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.parent.moduleSpecifier,NI=SN(Zc.parent.parent);lt.approximateLength+=19+go.length+3+(NI?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(NI?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(go))),pI,Zc.parent.attributes),0);break}case 281:lt.approximateLength+=19+go.length+3,ou(me.createExportDeclaration(void 0,!1,me.createNamespaceExport(me.createIdentifier(go)),me.createStringLiteral(yh(Rg,lt))),0);break;case 277:{let gf=yh(Rg.parent||Rg,lt),pI=lt.bundled?me.createStringLiteral(gf):Zc.parent.parent.parent.moduleSpecifier,NI=SN(Zc.parent.parent.parent);lt.approximateLength+=19+go.length+3+(NI?4:0),ou(me.createImportDeclaration(void 0,me.createImportClause(NI?156:void 0,void 0,me.createNamedImports([me.createImportSpecifier(!1,go!==_m?me.createIdentifier(_m):void 0,me.createIdentifier(go))])),pI,Zc.parent.parent.parent.attributes),0);break}case 282:let KI=Zc.parent.parent.moduleSpecifier;if(KI){let gf=Zc.propertyName;gf&&lv(gf)&&(_m="default")}cfe(Bc(Bn.escapedName),KI?_m:xf,KI&&mA(KI)?me.createStringLiteral(KI.text):void 0);break;case 278:FOe(Bn);break;case 227:case 212:case 213:Bn.escapedName==="default"||Bn.escapedName==="export="?FOe(Bn):cfe(go,xf);break;default:return pe.failBadSyntaxKind(Zc,"Unhandled alias declaration kind in symbol serializer!")}}function cfe(Bn,go,sc){lt.approximateLength+=16+Bn.length+(Bn!==go?go.length:0),ou(me.createExportDeclaration(void 0,!1,me.createNamedExports([me.createExportSpecifier(!1,Bn!==go?go:void 0,Bn)]),sc),0)}function FOe(Bn){var go;if(Bn.flags&4194304)return!1;let sc=Bc(Bn.escapedName),yc=sc==="export=",Vg=yc||sc==="default",sA=Bn.declarations&&Mb(Bn),Pu=sA&&b5(sA,!0);if(Pu&&B(Pu.declarations)&&jt(Pu.declarations,Zc=>ms(Zc)===ms(Cr))){let Zc=sA&&(Cf(sA)||fo(sA)?hne(sA):yZe(sA)),Rg=Zc&&Od(Zc)?qUs(Zc):void 0,_m=Rg&&TI(Rg,-1,!0,!0,Cr);(_m||Pu)&&EA(_m||Pu);let xf=lt.tracker.disableTrackSymbol;if(lt.tracker.disableTrackSymbol=!0,Vg)lt.approximateLength+=10,jr.push(me.createExportAssignment(void 0,yc,Gv(Pu,lt,-1)));else if(Rg===Zc&&Rg)cfe(sc,Vo(Rg));else if(Zc&&vd(Zc))cfe(sc,yk(Pu,nf(Pu)));else{let f0=LOe(sc,Bn);lt.approximateLength+=f0.length+10,ou(me.createImportEqualsDeclaration(void 0,!1,me.createIdentifier(f0),ch(Pu,lt,-1,!1)),0),cfe(sc,f0)}return lt.tracker.disableTrackSymbol=xf,!0}else{let Zc=LOe(sc,Bn),Rg=D1(Io(jA(Bn)));if(j8t(Rg,Bn))EW(Rg,Bn,Zc,Vg?0:32);else{let _m=((go=lt.enclosingDeclaration)==null?void 0:go.kind)===268&&(!(Bn.flags&98304)||Bn.flags&65536)?1:2;lt.approximateLength+=Zc.length+5;let xf=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zc,void 0,ea(lt,void 0,Rg,Bn))],_m));ou(xf,Pu&&Pu.flags&4&&Pu.escapedName==="export="?128:sc===Zc?32:0)}return Vg?(lt.approximateLength+=Zc.length+10,jr.push(me.createExportAssignment(void 0,yc,me.createIdentifier(Zc))),!0):sc!==Zc?(cfe(sc,Zc),!0):!1}}function j8t(Bn,go){var sc;let yc=ms(lt.enclosingDeclaration);return la(Bn)&48&&!jt((sc=Bn.symbol)==null?void 0:sc.declarations,uc)&&!B(A0(Bn))&&!l2e(Bn)&&!!(B(Me(Gd(Bn),Jse))||B(tg(Bn,0)))&&!B(tg(Bn,1))&&!zn(go,Cr)&&!(Bn.symbol&&jt(Bn.symbol.declarations,Yo=>ms(Yo)!==yc))&&!jt(Gd(Bn),Yo=>p2e(Yo.escapedName))&&!jt(Gd(Bn),Yo=>jt(Yo.declarations,Vg=>ms(Vg)!==yc))&&ue(Gd(Bn),Yo=>Uh(nf(Yo),Ze)?Yo.flags&98304?AR(Yo)===b9(Yo):!0:!1)}function cyn(Bn,go,sc){return function(Yo,Vg,sA){var Pu,Zc,Rg,_m,xf,f0;let KI=u2(Yo),gf=!!(KI&2)&&!Y5(lt);if(Vg&&Yo.flags&2887656)return[];if(Yo.flags&4194304||Yo.escapedName==="constructor"||sA&&Gg(sA,Yo.escapedName)&&yR(Gg(sA,Yo.escapedName))===yR(Yo)&&(Yo.flags&16777216)===(Gg(sA,Yo.escapedName).flags&16777216)&&rG(Io(Yo),Pi(sA,Yo.escapedName)))return[];let pI=KI&-1025|(Vg?256:0),NI=ofe(Yo,lt),SS=(Pu=Yo.declarations)==null?void 0:Pu.find(Hp(pi,yB,nc,ss,fo,jo));if(Yo.flags&98304&&sc){let Ph=[];if(Yo.flags&65536){let Ky=Yo.declarations&&F(Yo.declarations,oG=>{if(oG.kind===179)return oG;if(Zl(oG)&&f3(oG))return F(oG.arguments[2].properties,SW=>{let vW=Il(SW);if(vW&&Ir(vW)&&Vo(vW)==="set")return SW})});pe.assert(!!Ky);let k9=kd(Ky)?yS(Ky).parameters[0]:void 0,vS=(Zc=Yo.declarations)==null?void 0:Zc.find(cv);lt.approximateLength+=ZOe(pI)+7+(k9?nf(k9).length:5)+(gf?0:2),Ph.push(v(lt,me.createSetAccessorDeclaration(me.createModifiersFromModifierFlags(pI),NI,[me.createParameterDeclaration(void 0,void 0,k9?qc(k9,xs(k9),lt):"value",void 0,gf?void 0:ea(lt,vS,b9(Yo),Yo))],void 0),vS??SS))}if(Yo.flags&32768){let Ky=(Rg=Yo.declarations)==null?void 0:Rg.find(bB);lt.approximateLength+=ZOe(pI)+8+(gf?0:2),Ph.push(v(lt,me.createGetAccessorDeclaration(me.createModifiersFromModifierFlags(pI),NI,[],gf?void 0:ea(lt,Ky,Io(Yo),Yo),void 0),Ky??SS))}return Ph}else if(Yo.flags&98311){let Ph=(yR(Yo)?8:0)|pI;return lt.approximateLength+=2+(gf?0:2)+ZOe(Ph),v(lt,Bn(me.createModifiersFromModifierFlags(Ph),NI,Yo.flags&16777216?me.createToken(58):void 0,gf?void 0:ea(lt,(_m=Yo.declarations)==null?void 0:_m.find(Dg),b9(Yo),Yo),void 0),((xf=Yo.declarations)==null?void 0:xf.find(Hp(pi,nc)))||SS)}if(Yo.flags&8208){let Ph=Io(Yo),Ky=tg(Ph,0);if(gf){let vS=(yR(Yo)?8:0)|pI;return lt.approximateLength+=1+ZOe(vS),v(lt,Bn(me.createModifiersFromModifierFlags(vS),NI,Yo.flags&16777216?me.createToken(58):void 0,void 0,void 0),((f0=Yo.declarations)==null?void 0:f0.find(kd))||Ky[0]&&Ky[0].declaration||Yo.declarations&&Yo.declarations[0])}let k9=[];for(let vS of Ky){lt.approximateLength+=1;let oG=ka(vS,go,lt,{name:NI,questionToken:Yo.flags&16777216?me.createToken(58):void 0,modifiers:pI?me.createModifiersFromModifierFlags(pI):void 0}),SW=vS.declaration&&lne(vS.declaration.parent)?vS.declaration.parent:vS.declaration;k9.push(v(lt,oG,SW))}return k9}return pe.fail(`Unhandled class member kind! ${Yo.__debugFlags||Yo.flags}`)}}function ZOe(Bn){let go=0;return Bn&32&&(go+=7),Bn&128&&(go+=8),Bn&2048&&(go+=8),Bn&4096&&(go+=6),Bn&1&&(go+=7),Bn&2&&(go+=8),Bn&4&&(go+=10),Bn&64&&(go+=9),Bn&256&&(go+=7),Bn&16&&(go+=9),Bn&8&&(go+=9),Bn&512&&(go+=9),Bn&1024&&(go+=6),Bn&8192&&(go+=3),Bn&16384&&(go+=4),go}function lyn(Bn,go){return Qt(Bn,!1,go)}function z8t(Bn,go,sc,yc){let Yo=tg(go,Bn);if(Bn===1){if(!sc&&ue(Yo,Pu=>B(Pu.parameters)===0))return[];if(sc){let Pu=tg(sc,1);if(!B(Pu)&&ue(Yo,Zc=>B(Zc.parameters)===0))return[];if(Pu.length===Yo.length){let Zc=!1;for(let Rg=0;Rgii(Yo,lt)),yc=Gv(Bn.target.symbol,lt,788968)):Bn.symbol&&Spe(Bn.symbol,Cr,go)&&(yc=Gv(Bn.symbol,lt,788968)),yc)return me.createExpressionWithTypeArguments(yc,sc)}function ejs(Bn){let go=q8t(Bn,788968);if(go)return go;if(Bn.symbol)return me.createExpressionWithTypeArguments(Gv(Bn.symbol,lt,788968),void 0)}function LOe(Bn,go){var sc,yc;let Yo=go?kg(go):void 0;if(Yo&<.remappedSymbolNames.has(Yo))return lt.remappedSymbolNames.get(Yo);go&&(Bn=gyn(go,Bn));let Vg=0,sA=Bn;for(;(sc=lt.usedSymbolNames)!=null&&sc.has(Bn);)Vg++,Bn=`${sA}_${Vg}`;return(yc=lt.usedSymbolNames)==null||yc.add(Bn),Yo&<.remappedSymbolNames.set(Yo,Bn),Bn}function gyn(Bn,go){if(go==="default"||go==="__class"||go==="__function"){let sc=Vt(lt);lt.flags|=16777216;let yc=T5(Bn,lt);sc(),go=yc.length>0&&ine(yc.charCodeAt(0))?l2(yc):yc}return go==="default"?go="_default":go==="export="&&(go="_exports"),go=Uh(go,Ze)&&!WY(go)?go:"_"+go.replace(/[^a-z0-9]/gi,"_"),go}function yk(Bn,go){let sc=kg(Bn);return lt.remappedSymbolNames.has(sc)?lt.remappedSymbolNames.get(sc):(go=gyn(Bn,go),lt.remappedSymbolNames.set(sc,go),go)}}function Y5($t){return $t.maxExpansionDepth!==-1}function xOe($t){return!!$t.valueDeclaration&&rh($t.valueDeclaration)&&p($t.valueDeclaration.name)}function Mat($t){if($t.valueDeclaration&&rh($t.valueDeclaration)&&p($t.valueDeclaration.name))return me.cloneNode($t.valueDeclaration.name)}}function Sse(u){var m;let v=la(u)&4?u.target.symbol:u.symbol;return yA(u)||!!((m=v?.declarations)!=null&&m.some(D=>s.isSourceFileDefaultLibrary(ms(D))))}function gk(u,m,v=16384,D){return D?P(D).getText():dP(P);function P(Y){let oe=FQ(v)|70221824|512,Be=Dt.typePredicateToTypePredicateNode(u,m,oe),Oe=gQ(),He=m&&ms(m);return Oe.writeNode(4,Be,He,Y),Y}}function u2e(u,m){let v=[],D=0;for(let P=0;PIl(oe)?oe:void 0),Y=P&&Il(P);if(P&&Y){if(Zl(P)&&f3(P))return nf(u);if(Un(Y)&&!(iI(u)&4096)){let oe=fa(u).nameType;if(oe&&oe.flags&384){let Be=Tpe(u,m);if(Be!==void 0)return Be}}return Wd(Y)}if(P||(P=u.declarations[0]),P.parent&&P.parent.kind===261)return Wd(P.parent.name);switch(P.kind){case 232:case 219:case 220:return m&&!m.encounteredError&&!(m.flags&131072)&&(m.encounteredError=!0),P.kind===232?"(Anonymous class)":"(Anonymous function)"}}let D=Tpe(u,m);return D!==void 0?D:nf(u)}function Ak(u){if(u){let v=sa(u);return v.isVisible===void 0&&(v.isVisible=!!m()),v.isVisible}return!1;function m(){switch(u.kind){case 339:case 347:case 341:return!!(u.parent&&u.parent.parent&&u.parent.parent.parent&&ll(u.parent.parent.parent));case 209:return Ak(u.parent.parent);case 261:if(Nu(u.name)&&!u.name.elements.length)return!1;case 268:case 264:case 265:case 266:case 263:case 267:case 272:if(_F(u))return!0;let v=Tn(u);return!(Oat(u)&32)&&!(u.kind!==272&&v.kind!==308&&v.flags&33554432)?fc(v):Ak(v);case 173:case 172:case 178:case 179:case 175:case 174:if(Gb(u,6))return!1;case 177:case 181:case 180:case 182:case 170:case 269:case 185:case 186:case 188:case 184:case 189:case 190:case 193:case 194:case 197:case 203:return Ak(u.parent);case 274:case 275:case 277:return!1;case 169:case 308:case 271:return!0;case 278:return!1;default:return!1}}}function vse(u,m){let v;u.kind!==11&&u.parent&&u.parent.kind===278?v=An(u,u,2998271,void 0,!1):u.parent.kind===282&&(v=cq(u.parent,2998271));let D,P;return v&&(P=new Set,P.add(kg(v)),Y(v.declarations)),D;function Y(oe){F(oe,Be=>{let Oe=Sv(Be)||Be;if(m?sa(Be).isVisible=!0:(D=D||[],Qi(D,Oe)),d3(Be)){let He=Be.moduleReference,qe=B0(He),Vt=An(Be,qe.escapedText,901119,void 0,!1);Vt&&P&&Ar(P,kg(Vt))&&Y(Vt.declarations)}})}}function VN(u,m){let v=rt(u,m);if(v>=0){let{length:D}=Mx;for(let P=v;P=a9;v--){if(Kt(Mx[v],WU[v]))return-1;if(Mx[v]===u&&WU[v]===m)return v}return-1}function Kt(u,m){switch(m){case 0:return!!fa(u).type;case 2:return!!fa(u).declaredType;case 1:return!!u.resolvedBaseConstructorType;case 3:return!!u.resolvedReturnType;case 4:return!!u.immediateBaseConstraint;case 5:return!!u.resolvedTypeArguments;case 6:return!!u.baseTypesResolved;case 7:return!!fa(u).writeType;case 8:return sa(u).parameterInitializerContainsUndefined!==void 0}return pe.assertNever(m)}function xr(){return Mx.pop(),WU.pop(),a5.pop()}function Tn(u){return ji(Rw(u),m=>{switch(m.kind){case 261:case 262:case 277:case 276:case 275:case 274:return!1;default:return!0}}).parent}function Ai(u){let m=Fp($m(u));return m.typeParameters?iZ(m,At(m.typeParameters,v=>hr)):m}function Pi(u,m){let v=Gg(u,m);return v?Io(v):void 0}function Ba(u,m){var v;let D;return Pi(u,m)||(D=(v=vq(u,m))==null?void 0:v.type)&&Z0(D,!0,!0)}function Xo(u){return u&&(u.flags&1)!==0}function uo(u){return u===nn||!!(u.flags&1&&u.aliasSymbol)}function Cc(u,m){if(m!==0)return _q(u,!1,m);let v=Uo(u);return v&&fa(v).type||_q(u,!1,m)}function Tl(u,m,v){if(u=nm(u,Oe=>!(Oe.flags&98304)),u.flags&131072)return Xg;if(u.flags&1048576)return Yf(u,Oe=>Tl(Oe,m,v));let D=Ha(At(m,sZ)),P=[],Y=[];for(let Oe of Gd(u)){let He=Bq(Oe,8576);!dg(He,D)&&!(u2(Oe)&6)&&lot(Oe)?P.push(Oe):Y.push(He)}if(CK(u)||_K(D)){if(Y.length&&(D=Ha([D,...Y])),D.flags&131072)return u;let Oe=W3s();return Oe?kse(Oe,[u,D]):nn}let oe=qu();for(let Oe of P)oe.set(Oe.escapedName,fUt(Oe,!1));let Be=Hf(v,oe,E,E,A0(u));return Be.objectFlags|=4194304,Be}function bp(u){return!!(u.flags&465829888)&&ah(L_(u)||cn,32768)}function ep(u){let m=kv(u,bp)?Yf(u,v=>v.flags&465829888?WN(v):v):u;return Dv(m,524288)}function zA(u,m){let v=Bv(u);return v?dZ(v,m):m}function Bv(u){let m=CS(u);if(m&&UJ(m)&&m.flowNode){let v=C9(u);if(v){let D=gn(H3.createStringLiteral(v),u),P=D_(m)?m:H3.createParenthesizedExpression(m),Y=gn(H3.createElementAccessExpression(P,D),u);return XA(D,Y),XA(Y,u),P!==m&&XA(P,Y),Y.flowNode=m.flowNode,Y}}}function CS(u){let m=u.parent.parent;switch(m.kind){case 209:case 304:return Bv(m);case 210:return Bv(u.parent);case 261:return m.initializer;case 227:return m.right}}function C9(u){let m=u.parent;return u.kind===209&&m.kind===207?_9(u.propertyName||u.name):u.kind===304||u.kind===305?_9(u.name):""+m.elements.indexOf(u)}function _9(u){let m=sZ(u);return m.flags&384?""+m.value:void 0}function Kx(u){let m=u.dotDotDotToken?32:0,v=Cc(u.parent.parent,m);return v&&uW(u,v,!1)}function uW(u,m,v){if(Xo(m))return m;let D=u.parent;ot&&u.flags&33554432&&HL(u)?m=gZ(m):ot&&D.parent.initializer&&!hR(fmn(D.parent.initializer),65536)&&(m=Dv(m,524288));let P=32|(v||Gq(u)?16:0),Y;if(D.kind===207)if(u.dotDotDotToken){if(m=JB(m),m.flags&2||!tOe(m))return Sr(u,Z.Rest_types_may_only_be_created_from_object_types),nn;let oe=[];for(let Be of D.elements)Be.dotDotDotToken||oe.push(Be.propertyName||Be.name);Y=Tl(m,oe,u.symbol)}else{let oe=u.propertyName||u.name,Be=sZ(oe),Oe=R1(m,Be,P,oe);Y=zA(u,Oe)}else{let oe=N9(65|(u.dotDotDotToken?0:128),m,Bt,D),Be=D.elements.indexOf(u);if(u.dotDotDotToken){let Oe=Yf(m,He=>He.flags&58982400?WN(He):He);Y=RE(Oe,yA)?Yf(Oe,He=>Ope(He,Be)):d0(oe)}else if(T9(m)){let Oe=fR(Be),He=pW(m,Oe,P,u.name)||nn;Y=zA(u,He)}else Y=oe}return u.initializer?kh(ai(u))?ot&&!hR(zpe(u,0),16777216)?ep(Y):Y:u8t(u,Ha([ep(Y),zpe(u,0)],2)):Y}function nd(u){let m=eN(u);if(m)return nl(m)}function Fm(u){let m=QA(u,!0);return m.kind===106||m.kind===80&&L0(m)===dt}function y9(u){let m=QA(u,!0);return m.kind===210&&m.elements.length===0}function Z0(u,m=!1,v=!0){return ot&&v?mW(u,m):u}function _q(u,m,v){if(nc(u)&&u.parent.parent.kind===250){let oe=ON(DKt(Ol(u.parent.parent.expression,v)));return oe.flags&4456448?KIn(oe):$r}if(nc(u)&&u.parent.parent.kind===251){let oe=u.parent.parent;return BOe(oe)||hr}if(Nu(u.parent))return Kx(u);let D=pi(u)&&!Nw(u)||ss(u)||HPt(u),P=m&&RB(u),Y=AW(u);if(Yre(u))return Y?Xo(Y)||Y===cn?Y:nn:Ke?cn:hr;if(Y)return Z0(Y,D,P);if((Rt||wo(u))&&nc(u)&&!Nu(u.name)&&!(Oat(u)&32)&&!(u.flags&33554432)){if(!(jQ(u)&6)&&(!u.initializer||Fm(u.initializer)))return En;if(u.initializer&&y9(u.initializer))return OC}if(Si(u)){if(!u.symbol)return;let oe=u.parent;if(oe.kind===179&&Tse(oe)){let He=Cp(Uo(u.parent),178);if(He){let qe=yS(He),Vt=Q8t(oe);return Vt&&u===Vt?(pe.assert(!Vt.type),Io(qe.thisParameter)):ud(qe)}}let Be=u3s(oe,u);if(Be)return Be;let Oe=u.symbol.escapedName==="this"?hKt(oe):Xmn(u);if(Oe)return Z0(Oe,!1,P)}if(l1(u)&&u.initializer){if(wo(u)&&!Si(u)){let Be=Ii(u,Uo(u),E7(u));if(Be)return Be}let oe=u8t(u,zpe(u,v));return Z0(oe,D,P)}if(pi(u)&&(Rt||wo(u)))if(zh(u)){let oe=Me(u.parent.members,fl),Be=oe.length?Ce(u.symbol,oe):o_(u)&128?_ot(u.symbol):void 0;return Be&&Z0(Be,!0,P)}else{let oe=zY(u.parent),Be=oe?Pe(u.symbol,oe):o_(u)&128?_ot(u.symbol):void 0;return Be&&Z0(Be,!0,P)}if(EN(u))return tn;if(Nu(u.name))return Rpe(u.name,!1,!0)}function jx(u){if(u.valueDeclaration&&fo(u.valueDeclaration)){let m=fa(u);return m.isConstructorDeclaredProperty===void 0&&(m.isConstructorDeclaredProperty=!1,m.isConstructorDeclaredProperty=!!vo(u)&&ue(u.declarations,v=>fo(v)&&Qot(v)&&(v.left.kind!==213||d1(v.left.argumentExpression))&&!Jo(void 0,v,u,v))),m.isConstructorDeclaredProperty}return!1}function dk(u){let m=u.valueDeclaration;return m&&pi(m)&&!kh(m)&&!m.initializer&&(Rt||wo(m))}function vo(u){if(u.declarations)for(let m of u.declarations){let v=r0(m,!1,!1);if(v&&(v.kind===177||YN(v)))return v}}function q(u){let m=ms(u.declarations[0]),v=Bc(u.escapedName),D=u.declarations.every(Y=>wo(Y)&&_p(Y)&&cN(Y.expression)),P=D?me.createPropertyAccessExpression(me.createPropertyAccessExpression(me.createIdentifier("module"),me.createIdentifier("exports")),v):me.createPropertyAccessExpression(me.createIdentifier("exports"),v);return D&&XA(P.expression.expression,P.expression),XA(P.expression,P),XA(P,m),P.flowNode=m.endFlowNode,dZ(P,En,Bt)}function Ce(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName);for(let D of m){let P=me.createPropertyAccessExpression(me.createThis(),v);XA(P.expression,P),XA(P,D),P.flowNode=D.returnFlowNode;let Y=yt(P,u);if(Rt&&(Y===En||Y===OC)&&Sr(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,kl(u),no(Y)),!RE(Y,iOe))return iSe(Y)}}function Pe(u,m){let v=Ac(u.escapedName,"__#")?me.createPrivateIdentifier(u.escapedName.split("@")[1]):Bc(u.escapedName),D=me.createPropertyAccessExpression(me.createThis(),v);XA(D.expression,D),XA(D,m),D.flowNode=m.returnFlowNode;let P=yt(D,u);return Rt&&(P===En||P===OC)&&Sr(u.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,kl(u),no(P)),RE(P,iOe)?void 0:iSe(P)}function yt(u,m){let v=m?.valueDeclaration&&(!dk(m)||o_(m.valueDeclaration)&128)&&_ot(m)||Bt;return dZ(u,En,v)}function Rr(u,m){let v=FY(u.valueDeclaration);if(v){let Be=wo(v)?ov(v):void 0;return Be&&Be.typeExpression?nl(Be.typeExpression):u.valueDeclaration&&Ii(u.valueDeclaration,u,v)||V5(RI(v))}let D,P=!1,Y=!1;if(jx(u)&&(D=Pe(u,vo(u))),!D){let Be;if(u.declarations){let Oe;for(let He of u.declarations){let qe=fo(He)||Zl(He)?He:_p(He)?fo(He.parent)?He.parent:He:void 0;if(!qe)continue;let Vt=_p(qe)?XJ(qe):nI(qe);(Vt===4||fo(qe)&&Qot(qe,Vt))&&(_2(qe)?P=!0:Y=!0),Zl(qe)||(Oe=Jo(Oe,qe,u,He)),Oe||(Be||(Be=[])).push(fo(qe)||Zl(qe)?Au(u,m,qe,Vt):Wi)}D=Oe}if(!D){if(!B(Be))return nn;let Oe=P&&u.declarations?gW(Be,u.declarations):void 0;if(Y){let qe=_ot(u);qe&&((Oe||(Oe=[])).push(qe),P=!0)}let He=jt(Oe,qe=>!!(qe.flags&-98305))?Oe:Be;D=Ha(He)}}let oe=D1(Z0(D,!1,Y&&!P));return u.valueDeclaration&&wo(u.valueDeclaration)&&nm(oe,Be=>!!(Be.flags&-98305))===Wi?(P5(u.valueDeclaration,hr),hr):oe}function Ii(u,m,v){var D,P;if(!wo(u)||!v||!og(v)||v.properties.length)return;let Y=qu();for(;fo(u)||jo(u);){let Oe=mS(u);(D=Oe?.exports)!=null&&D.size&&FN(Y,Oe.exports),u=fo(u)?u.parent:u.parent.parent}let oe=mS(u);(P=oe?.exports)!=null&&P.size&&FN(Y,oe.exports);let Be=Hf(m,Y,E,E,E);return Be.objectFlags|=4096,Be}function Jo(u,m,v,D){var P;let Y=kh(m.parent);if(Y){let oe=D1(nl(Y));if(u)!uo(u)&&!uo(oe)&&!rG(u,oe)&&e0n(void 0,u,D,oe);else return oe}if((P=v.parent)!=null&&P.valueDeclaration){let oe=S5(v.parent);if(oe.valueDeclaration){let Be=kh(oe.valueDeclaration);if(Be){let Oe=Gg(nl(Be),v.escapedName);if(Oe)return AR(Oe)}}}return u}function Au(u,m,v,D){if(Zl(v)){if(m)return Io(m);let oe=RI(v.arguments[2]),Be=Pi(oe,"value");if(Be)return Be;let Oe=Pi(oe,"get");if(Oe){let qe=kK(Oe);if(qe)return ud(qe)}let He=Pi(oe,"set");if(He){let qe=kK(He);if(qe)return e8t(qe)}return hr}if(cf(v.left,v.right))return hr;let P=D===1&&(jo(v.left)||Yg(v.left))&&(cN(v.left.expression)||Ir(v.left.expression)&&p3(v.left.expression)),Y=m?Io(m):P?Iy(RI(v.right)):V5(RI(v.right));if(Y.flags&524288&&D===2&&u.escapedName==="export="){let oe=pR(Y),Be=qu();a7(oe.members,Be);let Oe=Be.size;m&&!m.exports&&(m.exports=qu()),(m||u).exports.forEach((qe,Vt)=>{var kt;let vr=Be.get(Vt);if(vr&&vr!==qe&&!(qe.flags&2097152))if(qe.flags&111551&&vr.flags&111551){if(qe.valueDeclaration&&vr.valueDeclaration&&ms(qe.valueDeclaration)!==ms(vr.valueDeclaration)){let vn=Bc(qe.escapedName),ii=((kt=Gs(vr.valueDeclaration,rh))==null?void 0:kt.name)||vr.valueDeclaration;lg(Sr(qe.valueDeclaration,Z.Duplicate_identifier_0,vn),mo(ii,Z._0_was_also_declared_here,vn)),lg(Sr(ii,Z.Duplicate_identifier_0,vn),mo(qe.valueDeclaration,Z._0_was_also_declared_here,vn))}let dn=gA(qe.flags|vr.flags,Vt);dn.links.type=Ha([Io(qe),Io(vr)]),dn.valueDeclaration=vr.valueDeclaration,dn.declarations=Nn(vr.declarations,qe.declarations),Be.set(Vt,dn)}else Be.set(Vt,Ev(qe,vr));else Be.set(Vt,qe)});let He=Hf(Oe!==Be.size?void 0:oe.symbol,Be,oe.callSignatures,oe.constructSignatures,oe.indexInfos);if(Oe===Be.size&&(Y.aliasSymbol&&(He.aliasSymbol=Y.aliasSymbol,He.aliasTypeArguments=Y.aliasTypeArguments),la(Y)&4)){He.aliasSymbol=Y.symbol;let qe=lf(Y);He.aliasTypeArguments=B(qe)?qe:void 0}return He.objectFlags|=yWe([Y])|la(Y)&20608,He.symbol&&He.symbol.flags&32&&Y===wv(He.symbol)&&(He.objectFlags|=16777216),He}return bot(Y)?(P5(v,d_),d_):Y}function cf(u,m){return jo(u)&&u.expression.kind===110&&Sz(m,v=>h_(u,v))}function _2(u){let m=r0(u,!1,!1);return m.kind===177||m.kind===263||m.kind===219&&!lne(m.parent)}function gW(u,m){return pe.assert(u.length===m.length),u.filter((v,D)=>{let P=m[D],Y=fo(P)?P:fo(P.parent)?P.parent:void 0;return Y&&_2(Y)})}function gR(u,m,v){if(u.initializer){let D=Nu(u.name)?Rpe(u.name,!0,!1):cn;return Z0(B_n(u,zpe(u,0,D)))}return Nu(u.name)?Rpe(u.name,m,v):(v&&!Zst(u)&&P5(u,hr),m?ds:hr)}function yq(u,m,v){let D=qu(),P,Y=131200;F(u.elements,Be=>{let Oe=Be.propertyName||Be.name;if(Be.dotDotDotToken){P=eG($r,hr,!1);return}let He=sZ(Oe);if(!g2(He)){Y|=512;return}let qe=A2(He),Vt=4|(Be.initializer?16777216:0),kt=gA(Vt,qe);kt.links.type=gR(Be,m,v),D.set(kt.escapedName,kt)});let oe=Hf(void 0,D,E,E,P?[P]:E);return oe.objectFlags|=Y,m&&(oe.pattern=u,oe.objectFlags|=131072),oe}function AJt(u,m,v){let D=u.elements,P=li(D),Y=P&&P.kind===209&&P.dotDotDotToken?P:void 0;if(D.length===0||D.length===1&&Y)return Ze>=2?xIn(hr):d_;let oe=At(D,qe=>yp(qe)?hr:gR(qe,m,v)),Be=De(D,qe=>!(qe===Y||yp(qe)||Gq(qe)),D.length-1)+1,Oe=At(D,(qe,Vt)=>qe===Y?4:Vt>=Be?2:1),He=hk(oe,Oe);return m&&(He=gIn(He),He.pattern=u,He.objectFlags|=131072),He}function Rpe(u,m=!1,v=!1){m&&MB.push(u);let D=u.kind===207?yq(u,m,v):AJt(u,m,v);return m&&MB.pop(),D}function bq(u,m){return A2e(_q(u,!0,0),u,m)}function dJt(u){let m=sa(u);if(!m.resolvedType){let v=gA(4096,"__importAttributes"),D=qu();F(u.elements,Y=>{let oe=gA(4,XAe(Y));oe.parent=v,oe.links.type=$Us(Y),oe.links.target=oe,D.set(oe.escapedName,oe)});let P=Hf(v,D,E,E,E);P.objectFlags|=262272,m.resolvedType=P}return m.resolvedType}function pJt(u){let m=mS(u),v=B3s(!1);return v&&m&&m===v}function A2e(u,m,v){return u?(u.flags&4096&&pJt(m.parent)&&(u=IUt(m)),v&&Not(m,u),u.flags&8192&&(hg(m)||!AW(m))&&u.symbol!==Uo(m)&&(u=ci),D1(u)):(u=Si(m)&&m.dotDotDotToken?d_:hr,v&&(Zst(m)||P5(m,u)),u)}function Zst(u){let m=Rw(u),v=m.kind===170?m.parent:m;return _Oe(v)}function AW(u){let m=kh(u);if(m)return nl(m)}function fJt(u){let m=u.valueDeclaration;return m?(hg(m)&&(m=ai(m)),Si(m)?dot(m.parent):!1):!1}function IJt(u){let m=fa(u);if(!m.type){let v=hJt(u);return!m.type&&!fJt(u)&&(m.type=v),v}return m.type}function hJt(u){if(u.flags&4194304)return Ai(u);if(u===ir)return hr;if(u.flags&134217728&&u.valueDeclaration){let D=Uo(ms(u.valueDeclaration)),P=gA(D.flags,"exports");P.declarations=D.declarations?D.declarations.slice():[],P.parent=u,P.links.target=D,D.valueDeclaration&&(P.valueDeclaration=D.valueDeclaration),D.members&&(P.members=new Map(D.members)),D.exports&&(P.exports=new Map(D.exports));let Y=qu();return Y.set("exports",P),Hf(u,Y,E,E,E)}pe.assertIsDefined(u.valueDeclaration);let m=u.valueDeclaration;if(ll(m)&&Zu(m))return m.statements.length?D1(V5(Ol(m.statements[0].expression))):Xg;if(yB(m))return Dpe(u);if(!VN(u,0))return u.flags&512&&!(u.flags&67108864)?kpe(u):AK(u);let v;if(m.kind===278)v=A2e(AW(m)||RI(m.expression),m);else if(fo(m)||wo(m)&&(Zl(m)||(jo(m)||Kge(m))&&fo(m.parent)))v=Rr(u);else if(jo(m)||Yg(m)||Ir(m)||mA(m)||mC(m)||pm(m)||ih(m)||uu(m)&&!a2(m)||hl(m)||ll(m)){if(u.flags&9136)return kpe(u);v=fo(m.parent)?Rr(u):AW(m)||hr}else if(fm(m))v=AW(m)||w_n(m);else if(EN(m))v=AW(m)||aCn(m);else if(a0(m))v=AW(m)||$pe(m.name,0);else if(a2(m))v=AW(m)||T_n(m,0);else if(Si(m)||pi(m)||ss(m)||nc(m)||hg(m)||dY(m))v=bq(m,!0);else if(V3(m))v=kpe(u);else if(LF(m))v=Wst(u);else return pe.fail("Unhandled declaration kind! "+pe.formatSyntaxKind(m.kind)+" for "+pe.formatSymbol(u));return xr()?v:u.flags&512&&!(u.flags&67108864)?kpe(u):AK(u)}function ZQ(u){if(u)switch(u.kind){case 178:return xb(u);case 179:return Jye(u);case 173:return pe.assert(Nw(u)),kh(u)}}function Npe(u){let m=ZQ(u);return m&&nl(m)}function Eq(u){let m=Q8t(u);return m&&m.symbol}function Lst(u){return k5(yS(u))}function Dpe(u){let m=fa(u);if(!m.type){if(!VN(u,0))return nn;let v=Cp(u,178),D=Cp(u,179),P=Gs(Cp(u,173),t0),Y=v&&wo(v)&&nd(v)||Npe(v)||Npe(D)||Npe(P)||v&&v.body&&gat(v)||P&&bq(P,!0);Y||(D&&!_Oe(D)?Hw(Rt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,kl(u)):v&&!_Oe(v)?Hw(Rt,v,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,kl(u)):P&&!_Oe(P)&&Hw(Rt,P,Z.Member_0_implicitly_has_an_1_type,kl(u),"any"),Y=hr),xr()||(ZQ(v)?Sr(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)):ZQ(D)||ZQ(P)?Sr(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)):v&&Rt&&Sr(v,Z._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,kl(u)),Y=hr),m.type??(m.type=Y)}return m.type}function Vst(u){let m=fa(u);if(!m.writeType){if(!VN(u,7))return nn;let v=Cp(u,179)??Gs(Cp(u,173),t0),D=Npe(v);xr()||(ZQ(v)&&Sr(v,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)),D=hr),m.writeType??(m.writeType=D||Dpe(u))}return m.writeType}function d2e(u){let m=nZ(wv(u));return m.flags&8650752?m:m.flags&2097152?de(m.types,v=>!!(v.flags&8650752)):void 0}function kpe(u){let m=fa(u),v=m;if(!m.type){let D=u.valueDeclaration&&lat(u.valueDeclaration,!1);if(D){let P=JKt(u,D);P&&(u=P,m=P.links)}v.type=m.type=Pst(u)}return m.type}function Pst(u){let m=u.valueDeclaration;if(u.flags&1536&&NY(u))return hr;if(m&&(m.kind===227||_p(m)&&m.parent.kind===227))return Rr(u);if(u.flags&512&&m&&ll(m)&&m.commonJsModuleIndicator){let D=wE(u);if(D!==u){if(!VN(u,0))return nn;let P=jA(u.exports.get("export=")),Y=Rr(P,P===D?void 0:D);return xr()?Y:AK(u)}}let v=Lh(16,u);if(u.flags&32){let D=d2e(u);return D?Kg([v,D]):v}else return ot&&u.flags&16777216?mW(v,!0):v}function Wst(u){let m=fa(u);return m.type||(m.type=Sfn(u))}function mJt(u){let m=fa(u);if(!m.type){if(!VN(u,0))return nn;let v=YC(u),D=u.declarations&&b5(Mb(u),!0),P=X(D?.declarations,Y=>Cf(Y)?AW(Y):void 0);if(m.type??(m.type=D?.declarations&&Dat(D.declarations)&&u.declarations.length?q(D):Dat(u.declarations)?En:P||(Hb(v)&111551?Io(v):nn)),!xr())return AK(D??u),m.type??(m.type=nn)}return m.type}function CJt(u){let m=fa(u);return m.type||(m.type=_l(Io(m.target),m.mapper))}function _Jt(u){let m=fa(u);return m.writeType||(m.writeType=_l(b9(m.target),m.mapper))}function AK(u){let m=u.valueDeclaration;if(m){if(kh(m))return Sr(u.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,kl(u)),nn;Rt&&(m.kind!==170||m.initializer)&&Sr(u.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,kl(u))}else if(u.flags&2097152){let v=Mb(u);v&&Sr(v,Z.Circular_definition_of_import_alias_0,kl(u))}return hr}function Ost(u){let m=fa(u);return m.type||(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.type=m.deferralParent.flags&1048576?Ha(m.deferralConstituents):Kg(m.deferralConstituents)),m.type}function yJt(u){let m=fa(u);return!m.writeType&&m.deferralWriteConstituents&&(pe.assertIsDefined(m.deferralParent),pe.assertIsDefined(m.deferralConstituents),m.writeType=m.deferralParent.flags&1048576?Ha(m.deferralWriteConstituents):Kg(m.deferralWriteConstituents)),m.writeType}function b9(u){let m=iI(u);return m&2?m&65536?yJt(u)||Ost(u):u.links.writeType||u.links.type:u.flags&4?AZ(Io(u),!!(u.flags&16777216)):u.flags&98304?m&1?_Jt(u):Vst(u):Io(u)}function Io(u){let m=iI(u);return m&65536?Ost(u):m&1?CJt(u):m&262144?QOs(u):m&8192?cHs(u):u.flags&7?IJt(u):u.flags&9136?kpe(u):u.flags&8?Wst(u):u.flags&98304?Dpe(u):u.flags&2097152?mJt(u):nn}function AR(u){return AZ(Io(u),!!(u.flags&16777216))}function Mst(u,m){if(u===void 0||!(la(u)&4))return!1;for(let v of m)if(u.target===v)return!0;return!1}function w1(u,m){return u!==void 0&&m!==void 0&&(la(u)&4)!==0&&u.target===m}function vs(u){return la(u)&4?u.target:u}function da(u,m){return v(u);function v(D){if(la(D)&7){let P=vs(D);return P===m||jt(Kw(P),v)}else if(D.flags&2097152)return jt(D.types,v);return!1}}function Sa(u,m){for(let v of m)u=ps(u,R5(Uo(v)));return u}function Fc(u,m){for(;;){if(u=u.parent,u&&fo(u)){let D=nI(u);if(D===6||D===3){let P=Uo(u.left);P&&P.parent&&!ji(P.parent.valueDeclaration,Y=>u===Y)&&(u=P.parent.valueDeclaration)}}if(!u)return;let v=u.kind;switch(v){case 264:case 232:case 265:case 180:case 181:case 174:case 185:case 186:case 318:case 263:case 175:case 219:case 220:case 266:case 346:case 347:case 341:case 339:case 201:case 195:{let P=Fc(u,m);if((v===219||v===220||a2(u))&&bS(u)){let Be=Nc(tg(Io(Uo(u)),0));if(Be&&Be.typeParameters)return[...P||E,...Be.typeParameters]}if(v===201)return Ft(P,R5(Uo(u.typeParameter)));if(v===195)return Nn(P,AUt(u));let Y=Sa(P,ZD(u)),oe=m&&(v===264||v===232||v===265||YN(u))&&wv(Uo(u)).thisType;return oe?Ft(Y,oe):Y}case 342:let D=dne(u);D&&(u=D.valueDeclaration);break;case 321:{let P=Fc(u,m);return u.tags?Sa(P,er(u.tags,Y=>ZB(Y)?Y.typeParameters:void 0)):P}}}}function Qc(u){var m;let v=u.flags&32||u.flags&16?u.valueDeclaration:(m=u.declarations)==null?void 0:m.find(D=>{if(D.kind===265)return!0;if(D.kind!==261)return!1;let P=D.initializer;return!!P&&(P.kind===219||P.kind===220)});return pe.assert(!!v,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Fc(v)}function Ug(u){if(!u.declarations)return;let m;for(let v of u.declarations)(v.kind===265||v.kind===264||v.kind===232||YN(v)||gne(v))&&(m=Sa(m,ZD(v)));return m}function Ep(u){return Nn(Qc(u),Ug(u))}function I_(u){let m=tg(u,1);if(m.length===1){let v=m[0];if(!v.typeParameters&&v.parameters.length===1&&D0(v)){let D=gOe(v.parameters[0]);return Xo(D)||WWe(D)===hr}}return!1}function dR(u){if(tg(u,1).length>0)return!0;if(u.flags&8650752){let m=L_(u);return!!m&&I_(m)}return!1}function XB(u){let m=AN(u.symbol);return m&&BB(m)}function Uw(u,m,v){let D=B(m),P=wo(v);return Me(tg(u,1),Y=>(P||D>=Ik(Y.typeParameters))&&D<=B(Y.typeParameters))}function zx(u,m,v){let D=Uw(u,m,v),P=At(m,nl);return Tr(D,Y=>jt(Y.typeParameters)?_2e(Y,P,wo(v)):Y)}function nZ(u){if(!u.resolvedBaseConstructorType){let m=AN(u.symbol),v=m&&BB(m),D=XB(u);if(!D)return u.resolvedBaseConstructorType=Bt;if(!VN(u,1))return nn;let P=Ol(D.expression);if(v&&D!==v&&(pe.assert(!v.typeArguments),Ol(v.expression)),P.flags&2621440&&pR(P),!xr())return Sr(u.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,kl(u.symbol)),u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn);if(!(P.flags&1)&&P!==Ot&&!dR(P)){let Y=Sr(D.expression,Z.Type_0_is_not_a_constructor_function_type,no(P));if(P.flags&262144){let oe=Vpe(P),Be=cn;if(oe){let Oe=tg(oe,1);Oe[0]&&(Be=ud(Oe[0]))}P.symbol.declarations&&lg(Y,mo(P.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,kl(P.symbol),no(Be)))}return u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=nn)}u.resolvedBaseConstructorType??(u.resolvedBaseConstructorType=P)}return u.resolvedBaseConstructorType}function Bse(u){let m=E;if(u.symbol.declarations)for(let v of u.symbol.declarations){let D=jJ(v);if(D)for(let P of D){let Y=nl(P);uo(Y)||(m===E?m=[Y]:m.push(Y))}}return m}function xpe(u,m){Sr(u,Z.Type_0_recursively_references_itself_as_a_base_type,no(m,void 0,2))}function Kw(u){if(!u.baseTypesResolved){if(VN(u,6)&&(u.objectFlags&8?u.resolvedBaseTypes=[IOs(u)]:u.symbol.flags&96?(u.symbol.flags&32&&hOs(u),u.symbol.flags&64&&COs(u)):pe.fail("type must be class or interface"),!xr()&&u.symbol.declarations))for(let m of u.symbol.declarations)(m.kind===264||m.kind===265)&&xpe(m,u);u.baseTypesResolved=!0}return u.resolvedBaseTypes}function IOs(u){let m=Tr(u.typeParameters,(v,D)=>u.elementFlags[D]&8?R1(v,ri):v);return d0(Ha(m||E),u.readonly)}function hOs(u){u.resolvedBaseTypes=Zre;let m=fy(nZ(u));if(!(m.flags&2621441))return u.resolvedBaseTypes=E;let v=XB(u),D,P=m.symbol?Fp(m.symbol):void 0;if(m.symbol&&m.symbol.flags&32&&mOs(P))D=AIn(v,m.symbol);else if(m.flags&1)D=m;else{let oe=zx(m,v.typeArguments,v);if(!oe.length)return Sr(v.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),u.resolvedBaseTypes=E;D=ud(oe[0])}if(uo(D))return u.resolvedBaseTypes=E;let Y=JB(D);if(!dWe(Y)){let oe=GJt(void 0,D),Be=wu(oe,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,no(Y));return PA.add(Bw(ms(v.expression),v.expression,Be)),u.resolvedBaseTypes=E}return u===Y||da(Y,u)?(Sr(u.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,no(u,void 0,2)),u.resolvedBaseTypes=E):(u.resolvedBaseTypes===Zre&&(u.members=void 0),u.resolvedBaseTypes=[Y])}function mOs(u){let m=u.outerTypeParameters;if(m){let v=m.length-1,D=lf(u);return m[v].symbol!==D[v].symbol}return!0}function dWe(u){if(u.flags&262144){let m=L_(u);if(m)return dWe(m)}return!!(u.flags&67633153&&!Yb(u)||u.flags&2097152&&ue(u.types,dWe))}function COs(u){if(u.resolvedBaseTypes=u.resolvedBaseTypes||E,u.symbol.declarations){for(let m of u.symbol.declarations)if(m.kind===265&&N7(m))for(let v of N7(m)){let D=JB(nl(v));uo(D)||(dWe(D)?u!==D&&!da(D,u)?u.resolvedBaseTypes===E?u.resolvedBaseTypes=[D]:u.resolvedBaseTypes.push(D):xpe(m,u):Sr(v,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function _Os(u){if(!u.declarations)return!0;for(let m of u.declarations)if(m.kind===265){if(m.flags&256)return!1;let v=N7(m);if(v){for(let D of v)if(Od(D.expression)){let P=TI(D.expression,788968,!0);if(!P||!(P.flags&64)||wv(P).thisType)return!1}}}return!0}function wv(u){let m=fa(u),v=m;if(!m.declaredType){let D=u.flags&32?1:2,P=JKt(u,u.valueDeclaration&&_Xs(u.valueDeclaration));P&&(u=P,m=P.links);let Y=v.declaredType=m.declaredType=Lh(D,u),oe=Qc(u),Be=Ug(u);(oe||Be||D===1||!_Os(u))&&(Y.objectFlags|=4,Y.typeParameters=Nn(oe,Be),Y.outerTypeParameters=oe,Y.localTypeParameters=Be,Y.instantiations=new Map,Y.instantiations.set(UB(Y.typeParameters),Y),Y.target=Y,Y.resolvedTypeArguments=Y.typeParameters,Y.thisType=Yy(u),Y.thisType.isThisType=!0,Y.thisType.constraint=Y)}return m.declaredType}function yfn(u){var m;let v=fa(u);if(!v.declaredType){if(!VN(u,2))return nn;let D=pe.checkDefined((m=u.declarations)==null?void 0:m.find(gne),"Type alias symbol with no valid declaration found"),P=iS(D)?D.typeExpression:D.type,Y=P?nl(P):nn;if(xr()){let oe=Ug(u);oe&&(v.typeParameters=oe,v.instantiations=new Map,v.instantiations.set(UB(oe),Y)),Y===Mt&&u.escapedName==="BuiltinIteratorReturn"&&(Y=jJt())}else Y=nn,D.kind===341?Sr(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,kl(u)):Sr(rh(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,kl(u));v.declaredType??(v.declaredType=Y)}return v.declaredType}function Hst(u){return u.flags&1056&&u.symbol.flags&8?Fp($m(u.symbol)):u}function bfn(u){let m=fa(u);if(!m.declaredType){let v=[];if(u.declarations){for(let P of u.declarations)if(P.kind===267){for(let Y of P.members)if(Tse(Y)){let oe=Uo(Y),Be=GK(Y).value,Oe=Rq(Be!==void 0?M5s(Be,kg(u),oe):Efn(oe));fa(oe).declaredType=Oe,v.push(Iy(Oe))}}}let D=v.length?Ha(v,1,u,void 0):Efn(u);D.flags&1048576&&(D.flags|=1024,D.symbol=u),m.declaredType=D}return m.declaredType}function Efn(u){let m=Oc(32,u),v=Oc(32,u);return m.regularType=m,m.freshType=v,v.regularType=m,v.freshType=v,m}function Sfn(u){let m=fa(u);if(!m.declaredType){let v=bfn($m(u));m.declaredType||(m.declaredType=v)}return m.declaredType}function R5(u){let m=fa(u);return m.declaredType||(m.declaredType=Yy(u))}function yOs(u){let m=fa(u);return m.declaredType||(m.declaredType=Fp(YC(u)))}function Fp(u){return vfn(u)||nn}function vfn(u){if(u.flags&96)return wv(u);if(u.flags&524288)return yfn(u);if(u.flags&262144)return R5(u);if(u.flags&384)return bfn(u);if(u.flags&8)return Sfn(u);if(u.flags&2097152)return yOs(u)}function pWe(u){switch(u.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 202:return!0;case 189:return pWe(u.elementType);case 184:return!u.typeArguments||u.typeArguments.every(pWe)}return!1}function bOs(u){let m=n3(u);return!m||pWe(m)}function Bfn(u){let m=kh(u);return m?pWe(m):!WT(u)}function EOs(u){let m=xb(u),v=ZD(u);return(u.kind===177||!!m&&pWe(m))&&u.parameters.every(Bfn)&&v.every(bOs)}function SOs(u){if(u.declarations&&u.declarations.length===1){let m=u.declarations[0];if(m)switch(m.kind){case 173:case 172:return Bfn(m);case 175:case 174:case 177:case 178:case 179:return EOs(m)}}return!1}function wfn(u,m,v){let D=qu();for(let P of u)D.set(P.escapedName,v&&SOs(P)?P:_Ut(P,m));return D}function Tfn(u,m){for(let v of m){if(Rfn(v))continue;let D=u.get(v.escapedName);(!D||D.valueDeclaration&&fo(D.valueDeclaration)&&!jx(D)&&!iZe(D.valueDeclaration))&&(u.set(v.escapedName,v),u.set(v.escapedName,v))}}function Rfn(u){return!!u.valueDeclaration&&pC(u.valueDeclaration)&&cg(u.valueDeclaration)}function bJt(u){if(!u.declaredProperties){let m=u.symbol,v=pk(m);u.declaredProperties=Qy(v),u.declaredCallSignatures=E,u.declaredConstructSignatures=E,u.declaredIndexInfos=E,u.declaredCallSignatures=PQ(v.get("__call")),u.declaredConstructSignatures=PQ(v.get("__new")),u.declaredIndexInfos=cIn(m)}return u}function EJt(u){return Dfn(u)&&g2(Un(u)?zw(u):RI(u.argumentExpression))}function Nfn(u){return Dfn(u)&&vOs(Un(u)?zw(u):RI(u.argumentExpression))}function Dfn(u){if(!Un(u)&&!Yg(u))return!1;let m=Un(u)?u.expression:u.argumentExpression;return Od(m)}function vOs(u){return dg(u,mc)}function p2e(u){return u.charCodeAt(0)===95&&u.charCodeAt(1)===95&&u.charCodeAt(2)===64}function wse(u){let m=Il(u);return!!m&&EJt(m)}function kfn(u){let m=Il(u);return!!m&&Nfn(m)}function Tse(u){return!XD(u)||wse(u)}function xfn(u){return rAe(u)&&!EJt(u)}function BOs(u,m,v){pe.assert(!!(iI(u)&4096),"Expected a late-bound symbol."),u.flags|=v,fa(m.symbol).lateSymbol=u,u.declarations?m.symbol.isReplaceableByMethod||u.declarations.push(m):u.declarations=[m],v&111551&&S7(u,m)}function Gfn(u,m,v,D){pe.assert(!!D.symbol,"The member is expected to have a symbol.");let P=sa(D);if(!P.resolvedSymbol){P.resolvedSymbol=D.symbol;let Y=fo(D)?D.left:D.name,oe=Yg(Y)?RI(Y.argumentExpression):zw(Y);if(g2(oe)){let Be=A2(oe),Oe=D.symbol.flags,He=v.get(Be);He||v.set(Be,He=gA(0,Be,4096));let qe=m&&m.get(Be);if(!(u.flags&32)&&He.flags&JU(Oe)){let Vt=qe?Nn(qe.declarations,He.declarations):He.declarations,kt=!(oe.flags&8192)&&Bc(Be)||Wd(Y);F(Vt,vr=>Sr(Il(vr)||vr,Z.Property_0_was_also_declared_here,kt)),Sr(Y||D,Z.Duplicate_property_0,kt),He=gA(0,Be,4096)}return He.links.nameType=oe,BOs(He,D,Oe),He.parent?pe.assert(He.parent===u,"Existing symbol parent should match new one"):He.parent=u,P.resolvedSymbol=He}}return P.resolvedSymbol}function wOs(u,m,v,D){let P=v.get("__index");if(!P){let Y=m?.get("__index");Y?(P=BQ(Y),P.links.checkFlags|=4096):P=gA(0,"__index",4096),v.set("__index",P)}P.declarations?D.symbol.isReplaceableByMethod||P.declarations.push(D):P.declarations=[D]}function SJt(u,m){let v=fa(u);if(!v[m]){let D=m==="resolvedExports",P=D?u.flags&1536?sK(u).exports:u.exports:u.members;v[m]=P||Ee;let Y=qu();for(let Oe of u.declarations||E){let He=Zge(Oe);if(He)for(let qe of He)D===zh(qe)&&(wse(qe)?Gfn(u,P,Y,qe):kfn(qe)&&wOs(u,P,Y,qe))}let oe=S5(u).assignmentDeclarationMembers;if(oe){let Oe=Do(oe.values());for(let He of Oe){let qe=nI(He),Vt=qe===3||fo(He)&&Qot(He,qe)||qe===9||qe===6;D===!Vt&&wse(He)&&Gfn(u,P,Y,He)}}let Be=A9(P,Y);if(u.flags&33554432&&v.cjsExportMerged&&u.declarations)for(let Oe of u.declarations){let He=fa(Oe.symbol)[m];if(!Be){Be=He;continue}He&&He.forEach((qe,Vt)=>{let kt=Be.get(Vt);if(!kt)Be.set(Vt,qe);else{if(kt===qe)return;Be.set(Vt,Ev(kt,qe))}})}v[m]=Be||Ee}return v[m]}function pk(u){return u.flags&6256?SJt(u,"resolvedMembers"):u.members||Ee}function Yst(u){if(u.flags&106500&&u.escapedName==="__computed"){let m=fa(u);if(!m.lateSymbol&&jt(u.declarations,wse)){let v=jA(u.parent);jt(u.declarations,zh)?B1(v):pk(v)}return m.lateSymbol||(m.lateSymbol=u)}return u}function T1(u,m,v){if(la(u)&4){let D=u.target,P=lf(u);return B(D.typeParameters)===B(P)?iZ(D,Nn(P,[m||D.thisType])):u}else if(u.flags&2097152){let D=Tr(u.types,P=>T1(P,m,v));return D!==u.types?Kg(D):u}return v?fy(u):u}function Ffn(u,m,v,D){let P,Y,oe,Be,Oe;gc(v,D,0,v.length)?(Y=m.symbol?pk(m.symbol):qu(m.declaredProperties),oe=m.declaredCallSignatures,Be=m.declaredConstructSignatures,Oe=m.declaredIndexInfos):(P=N1(v,D),Y=wfn(m.declaredProperties,P,v.length===1),oe=got(m.declaredCallSignatures,P),Be=got(m.declaredConstructSignatures,P),Oe=Ahn(m.declaredIndexInfos,P));let He=Kw(m);if(He.length){if(m.symbol&&Y===pk(m.symbol)){let Vt=qu(m.declaredProperties),kt=Kst(m.symbol);kt&&Vt.set("__index",kt),Y=Vt}QB(u,Y,oe,Be,Oe);let qe=li(D);for(let Vt of He){let kt=qe?T1(_l(Vt,P),qe):Vt;Tfn(Y,Gd(kt)),oe=Nn(oe,tg(kt,0)),Be=Nn(Be,tg(kt,1));let vr=kt!==hr?A0(kt):[rl];Oe=Nn(Oe,Me(vr,dn=>!Zpe(Oe,dn.keyType)))}}QB(u,Y,oe,Be,Oe)}function TOs(u){Ffn(u,bJt(u),E,E)}function ROs(u){let m=bJt(u.target),v=Nn(m.typeParameters,[m.thisType]),D=lf(u),P=D.length===v.length?D:Nn(D,[u]);Ffn(u,m,v,P)}function PN(u,m,v,D,P,Y,oe,Be){let Oe=new R(ks,Be);return Oe.declaration=u,Oe.typeParameters=m,Oe.parameters=D,Oe.thisParameter=v,Oe.resolvedReturnType=P,Oe.resolvedTypePredicate=Y,Oe.minArgumentCount=oe,Oe.resolvedMinArgumentCount=void 0,Oe.target=void 0,Oe.mapper=void 0,Oe.compositeSignatures=void 0,Oe.compositeKind=void 0,Oe}function f2e(u){let m=PN(u.declaration,u.typeParameters,u.thisParameter,u.parameters,void 0,void 0,u.minArgumentCount,u.flags&167);return m.target=u.target,m.mapper=u.mapper,m.compositeSignatures=u.compositeSignatures,m.compositeKind=u.compositeKind,m}function Zfn(u,m){let v=f2e(u);return v.compositeSignatures=m,v.compositeKind=1048576,v.target=void 0,v.mapper=void 0,v}function NOs(u,m){if((u.flags&24)===m)return u;u.optionalCallSignatureCache||(u.optionalCallSignatureCache={});let v=m===8?"inner":"outer";return u.optionalCallSignatureCache[v]||(u.optionalCallSignatureCache[v]=DOs(u,m))}function DOs(u,m){pe.assert(m===8||m===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let v=f2e(u);return v.flags|=m,v}function Lfn(u,m){if(D0(u)){let P=u.parameters.length-1,Y=u.parameters[P],oe=Io(Y);if(yA(oe))return[v(oe,P,Y)];if(!m&&oe.flags&1048576&&ue(oe.types,yA))return At(oe.types,Be=>v(Be,P,Y))}return[u.parameters];function v(P,Y,oe){let Be=lf(P),Oe=D(P,oe),He=At(Be,(qe,Vt)=>{let kt=Oe&&Oe[Vt]?Oe[Vt]:jpe(u,Y+Vt,P),vr=P.target.elementFlags[Vt],dn=vr&12?32768:vr&2?16384:0,vn=gA(1,kt,dn);return vn.links.type=vr&4?d0(qe):qe,vn});return Nn(u.parameters.slice(0,Y),He)}function D(P,Y){let oe=At(P.target.labeledElementDeclarations,(Be,Oe)=>$Kt(Be,Oe,P.target.elementFlags[Oe],Y));if(oe){let Be=[],Oe=new Set;for(let qe=0;qe=Vt&&Oe<=kt){let vr=kt?Ust(qe,v9(Be,qe.typeParameters,Vt,oe)):f2e(qe);vr.typeParameters=u.localTypeParameters,vr.resolvedReturnType=u,vr.flags=P?vr.flags|4:vr.flags&-5,He.push(vr)}}return He}function Qst(u,m,v,D,P){for(let Y of u)if(VWe(Y,m,v,D,P,v?sMs:T2e))return Y}function xOs(u,m,v){if(m.typeParameters){if(v>0)return;for(let P=1;P1&&(v=v===void 0?D:-1);for(let P of u[D])if(!m||!Qst(m,P,!1,!1,!0)){let Y=xOs(u,P,D);if(Y){let oe=P;if(Y.length>1){let Be=P.thisParameter,Oe=F(Y,He=>He.thisParameter);if(Oe){let He=Kg(Xt(Y,qe=>qe.thisParameter&&Io(qe.thisParameter)));Be=SK(Oe,He)}oe=Zfn(P,Y),oe.thisParameter=Be}(m||(m=[])).push(oe)}}}if(!B(m)&&v!==-1){let D=u[v!==void 0?v:0],P=D.slice();for(let Y of u)if(Y!==D){let oe=Y[0];if(pe.assert(!!oe,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),P=oe.typeParameters&&jt(P,Be=>!!Be.typeParameters&&!Vfn(oe.typeParameters,Be.typeParameters))?void 0:At(P,Be=>ZOs(Be,oe)),!P)break}m=P}return m||E}function Vfn(u,m){if(B(u)!==B(m))return!1;if(!u||!m)return!0;let v=N1(m,u);for(let D=0;D=P?u:m,oe=Y===u?m:u,Be=Y===u?D:P,Oe=Ck(u)||Ck(m),He=Oe&&!Ck(Y),qe=new Array(Be+(He?1:0));for(let Vt=0;Vt=_R(Y)&&Vt>=_R(oe),Yi=Vt>=D?void 0:jpe(u,Vt),js=Vt>=P?void 0:jpe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=gA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?d0(dn):dn,qe[Vt]=Ji}if(He){let Vt=gA(1,"args",32768);Vt.links.type=d0(CR(oe,Be)),oe===m&&(Vt.links.type=_l(Vt.links.type,v)),qe[Be]=Vt}return qe}function ZOs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=N1(m.typeParameters,u.typeParameters));let P=(u.flags|m.flags)&166,Y=u.declaration,oe=FOs(u,m,D),Be=li(oe);Be&&iI(Be)&32768&&(P|=1);let Oe=GOs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),qe=PN(Y,v,Oe,oe,void 0,void 0,He,P);return qe.compositeKind=1048576,qe.compositeSignatures=Nn(u.compositeKind!==2097152&&u.compositeSignatures||[u],[m]),D?qe.mapper=u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures?F5(u.mapper,D):D:u.compositeKind!==2097152&&u.mapper&&u.compositeSignatures&&(qe.mapper=u.mapper),qe}function Pfn(u){let m=A0(u[0]);if(m){let v=[];for(let D of m){let P=D.keyType;ue(u,Y=>!!$x(Y,P))&&v.push(eG(P,Ha(At(u,Y=>D5(Y,P))),jt(u,Y=>$x(Y,P).isReadonly)))}return v}return E}function LOs(u){let m=vJt(At(u.types,P=>P===Js?[Za]:tg(P,0))),v=vJt(At(u.types,P=>tg(P,1))),D=Pfn(u.types);QB(u,Ee,m,v,D)}function fWe(u,m){return u?m?Kg([u,m]):u:m}function Wfn(u){let m=ct(u,D=>tg(D,1).length>0),v=At(u,I_);if(m>0&&m===ct(v,D=>D)){let D=v.indexOf(!0);v[D]=!1}return v}function VOs(u,m,v,D){let P=[];for(let Y=0;YBe);for(let Be=0;Be0&&(He=At(He,qe=>{let Vt=f2e(qe);return Vt.resolvedReturnType=VOs(ud(qe),P,Y,Be),Vt})),v=Ofn(v,He)}m=Ofn(m,tg(Oe,0)),D=Ul(A0(Oe),(He,qe)=>Mfn(He,qe,!1),D)}QB(u,Ee,m||E,v||E,D||E)}function Ofn(u,m){for(let v of m)(!u||ue(u,D=>!VWe(D,v,!1,!1,!1,T2e)))&&(u=Ft(u,v));return u}function Mfn(u,m,v){if(u)for(let D=0;D{var Oe;!(Be.flags&418)&&!(Be.flags&512&&((Oe=Be.declarations)!=null&&Oe.length)&&ue(Be.declarations,s_))&&oe.set(Be.escapedName,Be)}),v=oe}let P;if(QB(u,v,E,E,E),m.flags&32){let oe=wv(m),Be=nZ(oe);Be.flags&11272192?(v=qu(Iq(v)),Tfn(v,Gd(Be))):Be===hr&&(P=rl)}let Y=jst(v);if(Y?D=zst(Y,Do(v.values())):(P&&(D=Ft(D,P)),m.flags&384&&(Fp(m).flags&32||jt(u.properties,oe=>!!(Io(oe).flags&296)))&&(D=Ft(D,Uc))),QB(u,v,E,E,D||E),m.flags&8208&&(u.callSignatures=PQ(m)),m.flags&32){let oe=wv(m),Be=m.members?PQ(m.members.get("__constructor")):E;m.flags&16&&(Be=Or(Be.slice(),Xt(u.callSignatures,Oe=>YN(Oe.declaration)?PN(Oe.declaration,Oe.typeParameters,Oe.thisParameter,Oe.parameters,oe,void 0,Oe.minArgumentCount,Oe.flags&167):void 0))),Be.length||(Be=kOs(oe)),u.constructSignatures=Be}}function OOs(u,m,v){return _l(u,N1([m.indexType,m.objectType],[fR(0),hk([v])]))}function MOs(u){let m=_S(u.mappedType);if(!(m.flags&1048576||m.flags&2097152))return;let v=m.flags&1048576?m.origin:m;if(!v||!(v.flags&2097152))return;let D=Kg(v.types.filter(P=>P!==u.constraintType));return D!==Wi?D:void 0}function HOs(u){let m=$x(u.source,$r),v=fk(u.mappedType),D=!(v&1),P=v&4?0:16777216,Y=m?[eG($r,kot(m.type,u.mappedType,u.constraintType)||cn,D&&m.isReadonly)]:E,oe=qu(),Be=MOs(u);for(let Oe of Gd(u.source)){if(Be){let Vt=Bq(Oe,8576);if(!dg(Vt,Be))continue}let He=8192|(D&&yR(Oe)?8:0),qe=gA(4|Oe.flags&P,Oe.escapedName,He);if(qe.declarations=Oe.declarations,qe.links.nameType=fa(Oe).nameType,qe.links.propertyType=Io(Oe),u.constraintType.type.flags&8388608&&u.constraintType.type.objectType.flags&262144&&u.constraintType.type.indexType.flags&262144){let Vt=u.constraintType.type.objectType,kt=OOs(u.mappedType,u.constraintType.type,Vt);qe.links.mappedType=kt,qe.links.constraintType=ON(Vt)}else qe.links.mappedType=u.mappedType,qe.links.constraintType=u.constraintType;oe.set(Oe.escapedName,qe)}QB(u,oe,E,E,Y)}function IWe(u){if(u.flags&4194304){let m=fy(u.type);return hW(m)?LIn(m):ON(m)}if(u.flags&16777216){if(u.root.isDistributive){let m=u.checkType,v=IWe(m);if(v!==m)return bUt(u,yK(u.root.checkType,v,u.mapper),!1)}return u}if(u.flags&1048576)return Yf(u,IWe,!0);if(u.flags&2097152){let m=u.types;return m.length===2&&m[0].flags&76&&m[1]===bg?u:Kg(Tr(u.types,IWe))}return u}function BJt(u){return iI(u)&4096}function wJt(u,m,v,D){for(let P of Gd(u))D(Bq(P,m));if(u.flags&1)D($r);else for(let P of A0(u))(!v||P.keyType.flags&134217732)&&D(P.keyType)}function YOs(u){let m=qu(),v;QB(u,Ee,E,E,E);let D=jw(u),P=_S(u),Y=u.target||u,oe=E9(Y),Be=I2e(Y)!==2,Oe=qx(Y),He=fy(N5(u)),qe=fk(u);Rse(u)?wJt(He,8576,!1,kt):TK(IWe(P),kt),QB(u,m,E,E,v||E);function kt(dn){let vn=oe?_l(oe,v2e(u.mapper,D,dn)):dn;TK(vn,ii=>vr(dn,ii))}function vr(dn,vn){if(g2(vn)){let ii=A2(vn),Yi=m.get(ii);if(Yi)Yi.links.nameType=Ha([Yi.links.nameType,vn]),Yi.links.keyType=Ha([Yi.links.keyType,dn]);else{let js=g2(dn)?Gg(He,A2(dn)):void 0,Co=!!(qe&4||!(qe&8)&&js&&js.flags&16777216),Ji=!!(qe&1||!(qe&2)&&js&&yR(js)),Mi=ot&&!Co&&js&&js.flags&16777216,To=js?BJt(js):0,Ka=gA(4|(Co?16777216:0),ii,To|262144|(Ji?8:0)|(Mi?524288:0));Ka.links.mappedType=u,Ka.links.nameType=vn,Ka.links.keyType=dn,js&&(Ka.links.syntheticOrigin=js,Ka.declarations=Be?js.declarations:void 0),m.set(ii,Ka)}}else if(qst(vn)||vn.flags&33){let ii=vn.flags&5?$r:vn.flags&40?ri:vn,Yi=_l(Oe,v2e(u.mapper,D,dn)),js=h2e(He,vn),Co=!!(qe&1||!(qe&2)&&js?.isReadonly),Ji=eG(ii,Yi,Co);v=Mfn(v,Ji,!0)}}}function QOs(u){var m;if(!u.links.type){let v=u.links.mappedType;if(!VN(u,0))return v.containsError=!0,nn;let D=qx(v.target||v),P=v2e(v.mapper,jw(v),u.links.keyType),Y=_l(D,P),oe=ot&&u.flags&16777216&&!ah(Y,49152)?mW(Y,!0):u.links.checkFlags&524288?wot(Y):Y;xr()||(Sr(ge,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,kl(u),no(v)),oe=nn),(m=u.links).type??(m.type=oe)}return u.links.type}function jw(u){return u.typeParameter||(u.typeParameter=R5(Uo(u.declaration.typeParameter)))}function _S(u){return u.constraintType||(u.constraintType=Xy(jw(u))||nn)}function E9(u){return u.declaration.nameType?u.nameType||(u.nameType=_l(nl(u.declaration.nameType),u.mapper)):void 0}function qx(u){return u.templateType||(u.templateType=u.declaration.type?_l(Z0(nl(u.declaration.type),!0,!!(fk(u)&4)),u.mapper):nn)}function Hfn(u){return n3(u.declaration.typeParameter)}function Rse(u){let m=Hfn(u);return m.kind===199&&m.operator===143}function N5(u){if(!u.modifiersType)if(Rse(u))u.modifiersType=_l(nl(Hfn(u).type),u.mapper);else{let m=uUt(u.declaration),v=_S(m),D=v&&v.flags&262144?Xy(v):v;u.modifiersType=D&&D.flags&4194304?_l(D.type,u.mapper):cn}return u.modifiersType}function fk(u){let m=u.declaration;return(m.readonlyToken?m.readonlyToken.kind===41?2:1:0)|(m.questionToken?m.questionToken.kind===41?8:4:0)}function Yfn(u){let m=fk(u);return m&8?-1:m&4?1:0}function Gpe(u){if(la(u)&32)return Yfn(u)||Gpe(N5(u));if(u.flags&2097152){let m=Gpe(u.types[0]);return ue(u.types,(v,D)=>D===0||Gpe(v)===m)?m:0}return 0}function XOs(u){return!!(la(u)&32&&fk(u)&4)}function Yb(u){if(la(u)&32){let m=_S(u);if(_K(m))return!0;let v=E9(u);if(v&&_K(_l(v,HQ(jw(u),m))))return!0}return!1}function I2e(u){let m=E9(u);return m?dg(m,jw(u))?1:2:0}function pR(u){return u.members||(u.flags&524288?u.objectFlags&4?ROs(u):u.objectFlags&3?TOs(u):u.objectFlags&1024?HOs(u):u.objectFlags&16?WOs(u):u.objectFlags&32?YOs(u):pe.fail("Unhandled object type "+pe.formatObjectFlags(u.objectFlags)):u.flags&1048576?LOs(u):u.flags&2097152?POs(u):pe.fail("Unhandled type "+pe.formatTypeFlags(u.flags))),u}function S9(u){return u.flags&524288?pR(u).properties:E}function LQ(u,m){if(u.flags&524288){let D=pR(u).members.get(m);if(D&&qi(D))return D}}function hWe(u){if(!u.resolvedProperties){let m=qu();for(let v of u.types){for(let D of Gd(v))if(!m.has(D.escapedName)){let P=CWe(u,D.escapedName,!!(u.flags&2097152));P&&m.set(D.escapedName,P)}if(u.flags&1048576&&A0(v).length===0)break}u.resolvedProperties=Qy(m)}return u.resolvedProperties}function Gd(u){return u=Fpe(u),u.flags&3145728?hWe(u):S9(u)}function JOs(u,m){u=Fpe(u),u.flags&3670016&&pR(u).members.forEach((v,D)=>{aW(v,D)&&m(v,D)})}function UOs(u,m){return m.properties.some(D=>{let P=D.name&&(eR(D.name)?TE(xw(D.name)):sZ(D.name)),Y=P&&g2(P)?A2(P):void 0,oe=Y===void 0?void 0:Pi(u,Y);return!!oe&&D2e(oe)&&!dg(Vq(D),oe)})}function KOs(u){let m=Ha(u);if(!(m.flags&1048576))return Z8t(m);let v=qu();for(let D of u)for(let{escapedName:P}of Z8t(D))if(!v.has(P)){let Y=zfn(m,P);Y&&v.set(P,Y)}return Do(v.values())}function dK(u){return u.flags&262144?Xy(u):u.flags&8388608?zOs(u):u.flags&16777216?Jfn(u):L_(u)}function Xy(u){return mWe(u)?Vpe(u):void 0}function jOs(u,m){let v=B2e(u);return!!v&&pK(v,m)}function pK(u,m=0){var v;return m<5&&!!(u&&(u.flags&262144&&jt((v=u.symbol)==null?void 0:v.declarations,D=>Ga(D,4096))||u.flags&3145728&&jt(u.types,D=>pK(D,m))||u.flags&8388608&&pK(u.objectType,m+1)||u.flags&16777216&&pK(Jfn(u),m+1)||u.flags&33554432&&pK(u.baseType,m)||la(u)&32&&jOs(u,m)||hW(u)&&Se(WQ(u),(D,P)=>!!(u.target.elementFlags[P]&8)&&pK(D,m))>=0))}function zOs(u){return mWe(u)?qOs(u):void 0}function TJt(u){let m=oZ(u,!1);return m!==u?m:dK(u)}function qOs(u){if(kJt(u))return aot(u.objectType,u.indexType);let m=TJt(u.indexType);if(m&&m!==u.indexType){let D=pW(u.objectType,m,u.accessFlags);if(D)return D}let v=TJt(u.objectType);if(v&&v!==u.objectType)return pW(v,u.indexType,u.accessFlags)}function RJt(u){if(!u.resolvedDefaultConstraint){let m=L5s(u),v=IW(u);u.resolvedDefaultConstraint=Xo(m)?v:Xo(v)?m:Ha([m,v])}return u.resolvedDefaultConstraint}function Qfn(u){if(u.resolvedConstraintOfDistributive!==void 0)return u.resolvedConstraintOfDistributive||void 0;if(u.root.isDistributive&&u.restrictiveInstantiation!==u){let m=oZ(u.checkType,!1),v=m===u.checkType?dK(m):m;if(v&&v!==u.checkType){let D=bUt(u,yK(u.root.checkType,v,u.mapper),!0);if(!(D.flags&131072))return u.resolvedConstraintOfDistributive=D,D}}u.resolvedConstraintOfDistributive=!1}function Xfn(u){return Qfn(u)||RJt(u)}function Jfn(u){return mWe(u)?Xfn(u):void 0}function $Os(u,m){let v,D=!1;for(let P of u)if(P.flags&465829888){let Y=dK(P);for(;Y&&Y.flags&21233664;)Y=dK(Y);Y&&(v=Ft(v,Y),m&&(v=Ft(v,P)))}else(P.flags&469892092||mk(P))&&(D=!0);if(v&&(m||D)){if(D)for(let P of u)(P.flags&469892092||mk(P))&&(v=Ft(v,P));return FWe(Kg(v,2),!1)}}function L_(u){if(u.flags&464781312||hW(u)){let m=NJt(u);return m!==YI&&m!==Fh?m:void 0}return u.flags&4194304?mc:void 0}function WN(u){return L_(u)||u}function mWe(u){return NJt(u)!==Fh}function NJt(u){if(u.resolvedBaseConstraint)return u.resolvedBaseConstraint;let m=[];return u.resolvedBaseConstraint=v(u);function v(Y){if(!Y.immediateBaseConstraint){if(!VN(Y,4))return Fh;let oe,Be=yot(Y);if((m.length<10||m.length<50&&!k(m,Be))&&(m.push(Be),oe=P(oZ(Y,!1)),m.pop()),!xr()){if(Y.flags&262144){let Oe=$st(Y);if(Oe){let He=Sr(Oe,Z.Type_parameter_0_has_a_circular_constraint,no(Y));ge&&!EP(Oe,ge)&&!EP(ge,Oe)&&lg(He,mo(ge,Z.Circularity_originates_in_type_at_this_location))}}oe=Fh}Y.immediateBaseConstraint??(Y.immediateBaseConstraint=oe||YI)}return Y.immediateBaseConstraint}function D(Y){let oe=v(Y);return oe!==YI&&oe!==Fh?oe:void 0}function P(Y){if(Y.flags&262144){let oe=Vpe(Y);return Y.isThisType||!oe?oe:D(oe)}if(Y.flags&3145728){let oe=Y.types,Be=[],Oe=!1;for(let He of oe){let qe=D(He);qe?(qe!==He&&(Oe=!0),Be.push(qe)):Oe=!0}return Oe?Y.flags&1048576&&Be.length===oe.length?Ha(Be):Y.flags&2097152&&Be.length?Kg(Be):void 0:Y}if(Y.flags&4194304)return mc;if(Y.flags&134217728){let oe=Y.types,Be=Xt(oe,D);return Be.length===oe.length?hK(Y.texts,Be):$r}if(Y.flags&268435456){let oe=D(Y.type);return oe&&oe!==Y.type?wq(Y.symbol,oe):$r}if(Y.flags&8388608){if(kJt(Y))return D(aot(Y.objectType,Y.indexType));let oe=D(Y.objectType),Be=D(Y.indexType),Oe=oe&&Be&&pW(oe,Be,Y.accessFlags);return Oe&&D(Oe)}if(Y.flags&16777216){let oe=Xfn(Y);return oe&&D(oe)}if(Y.flags&33554432)return D(QJt(Y));if(hW(Y)){let oe=At(WQ(Y),(Be,Oe)=>{let He=Be.flags&262144&&Y.target.elementFlags[Oe]&8&&D(Be)||Be;return He!==Be&&RE(He,qe=>L5(qe)&&!hW(qe))?He:Be});return hk(oe,Y.target.elementFlags,Y.target.readonly,Y.target.labeledElementDeclarations)}return Y}}function e3s(u,m){if(u===m)return u.resolvedApparentType||(u.resolvedApparentType=T1(u,m,!0));let v=`I${QC(u)},${QC(m)}`;return Hy(v)??HB(v,T1(u,m,!0))}function DJt(u){if(u.default)u.default===WC&&(u.default=Fh);else if(u.target){let m=DJt(u.target);u.default=m?_l(m,u.mapper):YI}else{u.default=WC;let m=u.symbol&&F(u.symbol.declarations,D=>Ds(D)&&D.default),v=m?nl(m):YI;u.default===WC&&(u.default=v)}return u.default}function VQ(u){let m=DJt(u);return m!==YI&&m!==Fh?m:void 0}function t3s(u){return DJt(u)!==Fh}function Ufn(u){return!!(u.symbol&&F(u.symbol.declarations,m=>Ds(m)&&m.default))}function Kfn(u){return u.resolvedApparentType||(u.resolvedApparentType=r3s(u))}function r3s(u){let m=u.target??u,v=B2e(m);if(v&&!m.declaration.nameType){let D=N5(u),P=Yb(D)?Kfn(D):L_(D);if(P&&RE(P,Y=>L5(Y)||jfn(Y)))return _l(m,yK(v,P,u.mapper))}return u}function jfn(u){return!!(u.flags&2097152)&&ue(u.types,L5)}function kJt(u){let m;return!!(u.flags&8388608&&la(m=u.objectType)&32&&!Yb(m)&&_K(u.indexType)&&!(fk(m)&8)&&!m.declaration.nameType)}function fy(u){let m=u.flags&465829888?L_(u)||cn:u,v=la(m);return v&32?Kfn(m):v&4&&m!==u?T1(m,u):m.flags&2097152?e3s(m,u):m.flags&402653316?hm:m.flags&296?af:m.flags&2112?O3s():m.flags&528?dI:m.flags&12288?BIn():m.flags&67108864?Xg:m.flags&4194304?mc:m.flags&2&&!ot?Xg:m}function Fpe(u){return JB(fy(JB(u)))}function zfn(u,m,v){var D,P,Y;let oe=0,Be,Oe,He,qe=u.flags&1048576,Vt,kt=4,vr=qe?0:8,dn=!1;for(let yl of u.types){let ka=fy(yl);if(!(uo(ka)||ka.flags&131072)){let Kc=Gg(ka,m,v),Vu=Kc?u2(Kc):0;if(Kc){if(Kc.flags&106500&&(Vt??(Vt=qe?0:16777216),qe?Vt|=Kc.flags&16777216:Vt&=Kc.flags),!Be)Be=Kc,oe=Kc.flags&98304||4;else if(Kc!==Be){if((Xse(Kc)||Kc)===(Xse(Be)||Be)&&xUt(Be,Kc,(Ll,Ef)=>Ll===Ef?-1:0)===-1)dn=!!Be.parent&&!!B(Ug(Be.parent));else{Oe||(Oe=new Map,Oe.set(kg(Be),Be));let Ll=kg(Kc);Oe.has(Ll)||Oe.set(Ll,Kc)}oe&98304&&(Kc.flags&98304)!==(oe&98304)&&(oe=oe&-98305|4)}qe&&yR(Kc)?vr|=8:!qe&&!yR(Kc)&&(vr&=-9),vr|=(Vu&6?0:256)|(Vu&4?512:0)|(Vu&2?1024:0)|(Vu&256?2048:0),RKt(Kc)||(kt=2)}else if(qe){let gd=!p2e(m)&&vq(ka,m);gd?(oe=oe&-98305|4,vr|=32|(gd.isReadonly?8:0),He=Ft(He,yA(ka)?Sot(ka)||Bt:gd.type)):R9(ka)&&!(la(ka)&2097152)?(vr|=32,He=Ft(He,Bt)):vr|=16}}}if(!Be||qe&&(Oe||vr&48)&&vr&1536&&!(Oe&&n3s(Oe.values())))return;if(!Oe&&!(vr&16)&&!He)if(dn){let yl=(D=Gs(Be,bw))==null?void 0:D.links,ka=SK(Be,yl?.type);return ka.parent=(Y=(P=Be.valueDeclaration)==null?void 0:P.symbol)==null?void 0:Y.parent,ka.links.containingType=u,ka.links.mapper=yl?.mapper,ka.links.writeType=b9(Be),ka}else return Be;let vn=Oe?Do(Oe.values()):[Be],ii,Yi,js,Co=[],Ji,Mi,To=!1;for(let yl of vn){Mi?yl.valueDeclaration&&yl.valueDeclaration!==Mi&&(To=!0):Mi=yl.valueDeclaration,ii=Or(ii,yl.declarations);let ka=Io(yl);Yi||(Yi=ka,js=fa(yl).nameType);let Kc=b9(yl);(Ji||Kc!==ka)&&(Ji=Ft(Ji||Co.slice(),Kc)),ka!==Yi&&(vr|=64),(D2e(ka)||mK(ka))&&(vr|=128),ka.flags&131072&&ka!==pp&&(vr|=131072),Co.push(ka)}Or(Co,He);let Ka=gA(oe|(Vt??0),m,kt|vr);return Ka.links.containingType=u,!To&&Mi&&(Ka.valueDeclaration=Mi,Mi.symbol.parent&&(Ka.parent=Mi.symbol.parent)),Ka.declarations=ii,Ka.links.nameType=js,Co.length>2?(Ka.links.checkFlags|=65536,Ka.links.deferralParent=u,Ka.links.deferralConstituents=Co,Ka.links.deferralWriteConstituents=Ji):(Ka.links.type=qe?Ha(Co):Kg(Co),Ji&&(Ka.links.writeType=qe?Ha(Ji):Kg(Ji))),Ka}function qfn(u,m,v){var D,P,Y;let oe=v?(D=u.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(m):(P=u.propertyCache)==null?void 0:P.get(m);return oe||(oe=zfn(u,m,v),oe&&((v?u.propertyCacheWithoutObjectFunctionPropertyAugment||(u.propertyCacheWithoutObjectFunctionPropertyAugment=qu()):u.propertyCache||(u.propertyCache=qu())).set(m,oe),v&&!(iI(oe)&48)&&!((Y=u.propertyCache)!=null&&Y.get(m))&&(u.propertyCache||(u.propertyCache=qu())).set(m,oe))),oe}function n3s(u){let m;for(let v of u){if(!v.declarations)return;if(!m){m=new Set(v.declarations);continue}if(m.forEach(D=>{k(v.declarations,D)||m.delete(D)}),m.size===0)return}return m}function CWe(u,m,v){let D=qfn(u,m,v);return D&&!(iI(D)&16)?D:void 0}function JB(u){return u.flags&1048576&&u.objectFlags&16777216?u.resolvedReducedType||(u.resolvedReducedType=i3s(u)):u.flags&2097152?(u.objectFlags&16777216||(u.objectFlags|=16777216|(jt(hWe(u),s3s)?33554432:0)),u.objectFlags&33554432?Wi:u):u}function i3s(u){let m=Tr(u.types,JB);if(m===u.types)return u;let v=Ha(m);return v.flags&1048576&&(v.resolvedReducedType=v),v}function s3s(u){return $fn(u)||eIn(u)}function $fn(u){return!(u.flags&16777216)&&(iI(u)&131264)===192&&!!(Io(u).flags&131072)}function eIn(u){return!u.valueDeclaration&&!!(iI(u)&1024)}function xJt(u){return!!(u.flags&1048576&&u.objectFlags&16777216&&jt(u.types,xJt)||u.flags&2097152&&o3s(u))}function o3s(u){let m=u.uniqueLiteralFilledInstantiation||(u.uniqueLiteralFilledInstantiation=_l(u,Dl));return JB(m)!==m}function GJt(u,m){if(m.flags&2097152&&la(m)&33554432){let v=de(hWe(m),$fn);if(v)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,no(m,void 0,536870912),kl(v));let D=de(hWe(m),eIn);if(D)return wu(u,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,no(m,void 0,536870912),kl(D))}return u}function Gg(u,m,v,D){var P,Y;if(u=Fpe(u),u.flags&524288){let oe=pR(u),Be=oe.members.get(m);if(Be&&!D&&((P=u.symbol)==null?void 0:P.flags)&512&&((Y=fa(u.symbol).typeOnlyExportStarMap)!=null&&Y.has(m)))return;if(Be&&qi(Be,D))return Be;if(v)return;let Oe=oe===$d?Js:oe.callSignatures.length?Hl:oe.constructSignatures.length?RA:void 0;if(Oe){let He=LQ(Oe,m);if(He)return He}return LQ(qn,m)}if(u.flags&2097152){let oe=CWe(u,m,!0);return oe||(v?void 0:CWe(u,m,v))}if(u.flags&1048576)return CWe(u,m,v)}function _We(u,m){if(u.flags&3670016){let v=pR(u);return m===0?v.callSignatures:v.constructSignatures}return E}function tg(u,m){let v=_We(Fpe(u),m);if(m===0&&!B(v)&&u.flags&1048576){if(u.arrayFallbackSignatures)return u.arrayFallbackSignatures;let D;if(RE(u,P=>{var Y;return!!((Y=P.symbol)!=null&&Y.parent)&&a3s(P.symbol.parent)&&(D?D===P.symbol.escapedName:(D=P.symbol.escapedName,!0))})){let P=Yf(u,oe=>w9((tIn(oe.symbol.parent)?uA:NA).typeParameters[0],oe.mapper)),Y=d0(P,kv(u,oe=>tIn(oe.symbol.parent)));return u.arrayFallbackSignatures=tg(Pi(Y,D),m)}u.arrayFallbackSignatures=v}return v}function a3s(u){return!u||!NA.symbol||!uA.symbol?!1:!!Et(u,NA.symbol)||!!Et(u,uA.symbol)}function tIn(u){return!u||!uA.symbol?!1:!!Et(u,uA.symbol)}function Zpe(u,m){return de(u,v=>v.keyType===m)}function FJt(u,m){let v,D,P;for(let Y of u)Y.keyType===$r?v=Y:Sq(m,Y.keyType)&&(D?(P||(P=[D])).push(Y):D=Y);return P?eG(cn,Kg(At(P,Y=>Y.type)),Ul(P,(Y,oe)=>Y&&oe.isReadonly,!0)):D||(v&&Sq(m,$r)?v:void 0)}function Sq(u,m){return dg(u,m)||m===$r&&dg(u,ri)||m===ri&&(u===_u||!!(u.flags&128)&&IN(u.value))}function ZJt(u){return u.flags&3670016?pR(u).indexInfos:E}function A0(u){return ZJt(Fpe(u))}function $x(u,m){return Zpe(A0(u),m)}function D5(u,m){var v;return(v=$x(u,m))==null?void 0:v.type}function LJt(u,m){return A0(u).filter(v=>Sq(m,v.keyType))}function h2e(u,m){return FJt(A0(u),m)}function vq(u,m){return h2e(u,p2e(m)?ci:TE(Bc(m)))}function rIn(u){var m;let v;for(let D of ZD(u))v=ps(v,R5(D.symbol));return v?.length?v:ih(u)?(m=Lpe(u))==null?void 0:m.typeParameters:void 0}function VJt(u){let m=[];return u.forEach((v,D)=>{B5(D)||m.push(v)}),m}function nIn(u,m){if(Xr(u))return;let v=f_(Gr,'"'+u+'"',512);return v&&m?jA(v):v}function Xst(u){return VY(u)||jne(u)||Si(u)&&HAe(u)}function m2e(u){if(Xst(u))return!0;if(!Si(u))return!1;if(u.initializer){let v=yS(u.parent),D=u.parent.parameters.indexOf(u);return pe.assert(D>=0),D>=_R(v,3)}let m=ZL(u.parent);return m?!u.type&&!u.dotDotDotToken&&u.parent.parameters.indexOf(u)>=aat(m).length:!1}function c3s(u){return pi(u)&&!Nw(u)&&u.questionToken}function C2e(u,m,v,D){return{kind:u,parameterName:m,parameterIndex:v,type:D}}function Ik(u){let m=0;if(u)for(let v=0;v=v&&Y<=P){let oe=u?u.slice():[];for(let Oe=Y;Oe!!eN(dn))&&!eN(u)&&!Kot(u)&&(D|=32);for(let dn=He?1:0;dnOe.arguments.length&&!Yi||(P=v.length)}if((u.kind===178||u.kind===179)&&Tse(u)&&(!Be||!Y)){let dn=u.kind===178?179:178,vn=Cp(Uo(u),dn);vn&&(Y=Eq(vn))}oe&&oe.typeExpression&&(Y=SK(gA(1,"this"),nl(oe.typeExpression)));let Vt=qL(u)?WL(u):u,kt=Vt&&Tc(Vt)?wv(jA(Vt.parent.symbol)):void 0,vr=kt?kt.localTypeParameters:rIn(u);(Gre(u)||wo(u)&&l3s(u,v))&&(D|=1),($D(u)&&Ga(u,64)||Tc(u)&&Ga(u.parent,64))&&(D|=4),m.resolvedSignature=PN(u,vr,Y,v,void 0,void 0,P,D)}return m.resolvedSignature}function l3s(u,m){if(qL(u)||!PJt(u))return!1;let v=li(u.parameters),D=v?vL(v):Sx(u).filter(cS),P=X(D,oe=>oe.typeExpression&&qLe(oe.typeExpression.type)?oe.typeExpression.type:void 0),Y=gA(3,"args",32768);return P?Y.links.type=d0(nl(P.type)):(Y.links.checkFlags|=65536,Y.links.deferralParent=Wi,Y.links.deferralConstituents=[d_],Y.links.deferralWriteConstituents=[d_]),P&&m.pop(),m.push(Y),!0}function Lpe(u){if(!(wo(u)&&kd(u)))return;let m=ov(u);return m?.typeExpression&&kK(nl(m.typeExpression))}function u3s(u,m){let v=Lpe(u);if(!v)return;let D=u.parameters.indexOf(m);return m.dotDotDotToken?AOe(v,D):CR(v,D)}function g3s(u){let m=Lpe(u);return m&&ud(m)}function PJt(u){let m=sa(u);return m.containsArgumentsReference===void 0&&(m.flags&512?m.containsArgumentsReference=!0:m.containsArgumentsReference=v(u.body)),m.containsArgumentsReference;function v(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===st.escapedName&&aSe(D)===st;case 173:case 175:case 178:case 179:return D.name.kind===168&&v(D.name);case 212:case 213:return v(D.expression);case 304:return v(D.initializer);default:return!Fye(D)&&!ww(D)&&!!Lu(D,v)}}}function PQ(u){if(!u||!u.declarations)return E;let m=[];for(let v=0;v0&&D.body){let P=u.declarations[v-1];if(D.parent===P.parent&&D.kind===P.kind&&D.pos===P.end)continue}if(wo(D)&&D.jsDoc){let P=Bye(D);if(B(P)){for(let Y of P){let oe=Y.typeExpression;oe.type===void 0&&!Tc(D)&&P5(oe,hr),m.push(yS(oe))}continue}}m.push(!RF(D)&&!a2(D)&&Lpe(D)||yS(D))}}return m}function iIn(u){let m=F0(u,u);if(m){let v=wE(m);if(v)return Io(v)}return hr}function k5(u){if(u.thisParameter)return Io(u.thisParameter)}function Tv(u){if(!u.resolvedTypePredicate){if(u.target){let m=Tv(u.target);u.resolvedTypePredicate=m?Ihn(m,u.mapper):ni}else if(u.compositeSignatures)u.resolvedTypePredicate=A5s(u.compositeSignatures,u.compositeKind)||ni;else{let m=u.declaration&&xb(u.declaration),v;if(!m){let D=Lpe(u.declaration);D&&u!==D&&(v=Tv(D))}if(m||v)u.resolvedTypePredicate=m&&bE(m)?A3s(m,u):v||ni;else if(u.declaration&&kd(u.declaration)&&(!u.resolvedReturnType||u.resolvedReturnType.flags&16)&&NE(u)>0){let{declaration:D}=u;u.resolvedTypePredicate=ni,u.resolvedTypePredicate=qXs(D)||ni}else u.resolvedTypePredicate=ni}pe.assert(!!u.resolvedTypePredicate)}return u.resolvedTypePredicate===ni?void 0:u.resolvedTypePredicate}function A3s(u,m){let v=u.parameterName,D=u.type&&nl(u.type);return v.kind===198?C2e(u.assertsModifier?2:0,void 0,void 0,D):C2e(u.assertsModifier?3:1,v.escapedText,Se(m.parameters,P=>P.escapedName===v.escapedText),D)}function sIn(u,m,v){return m!==2097152?Ha(u,v):Kg(u)}function ud(u){if(!u.resolvedReturnType){if(!VN(u,3))return nn;let m=u.target?_l(ud(u.target),u.mapper):u.compositeSignatures?_l(sIn(At(u.compositeSignatures,ud),u.compositeKind,2),u.mapper):Nse(u.declaration)||(sf(u.declaration.body)?hr:gat(u.declaration));if(u.flags&8?m=Qhn(m):u.flags&16&&(m=mW(m)),!xr()){if(u.declaration){let v=xb(u.declaration);if(v)Sr(v,Z.Return_type_annotation_circularly_references_itself);else if(Rt){let D=u.declaration,P=Il(D);P?Sr(P,Z._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Wd(P)):Sr(D,Z.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}m=hr}u.resolvedReturnType??(u.resolvedReturnType=m)}return u.resolvedReturnType}function Nse(u){if(u.kind===177)return wv(jA(u.parent.symbol));let m=xb(u);if(qL(u)){let v=KJ(u);if(v&&Tc(v.parent)&&!m)return wv(jA(v.parent.parent.symbol))}if(PY(u))return nl(u.parameters[0].type);if(m)return nl(m);if(u.kind===178&&Tse(u)){let v=wo(u)&&nd(u);if(v)return v;let D=Cp(Uo(u),179),P=Npe(D);if(P)return P}return g3s(u)}function Jst(u){return u.compositeSignatures&&jt(u.compositeSignatures,Jst)||!u.resolvedReturnType&&rt(u,3)>=0}function d3s(u){return oIn(u)||hr}function oIn(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]),v=yA(m)?Sot(m):m;return v&&D5(v,ri)}}function _2e(u,m,v,D){let P=WJt(u,v9(m,u.typeParameters,Ik(u.typeParameters),v));if(D){let Y=ZCn(ud(P));if(Y){let oe=f2e(Y);oe.typeParameters=D;let Be=fK(oe);Be.mapper=P.mapper;let Oe=f2e(P);return Oe.resolvedReturnType=Be,Oe}}return P}function WJt(u,m){let v=u.instantiations||(u.instantiations=new Map),D=UB(m),P=v.get(D);return P||v.set(D,P=Ust(u,m)),P}function Ust(u,m){return bK(u,p3s(u,m),!0)}function aIn(u){return Tr(u.typeParameters,m=>m.mapper?_l(m,m.mapper):m)}function p3s(u,m){return N1(aIn(u),m)}function y2e(u){return u.typeParameters?u.erasedSignatureCache||(u.erasedSignatureCache=f3s(u)):u}function f3s(u){return bK(u,phn(u.typeParameters),!0)}function I3s(u){return u.typeParameters?u.canonicalSignatureCache||(u.canonicalSignatureCache=h3s(u)):u}function h3s(u){return _2e(u,At(u.typeParameters,m=>m.target&&!Xy(m.target)?m.target:m),wo(u.declaration))}function m3s(u){let m=u.typeParameters;if(m){if(u.baseSignatureCache)return u.baseSignatureCache;let v=phn(m),D=N1(m,At(m,Y=>Xy(Y)||cn)),P=At(m,Y=>_l(Y,D)||cn);for(let Y=0;Y{qst(vr)&&!Zpe(v,vr)&&v.push(eG(vr,Vt.type?nl(Vt.type):hr,Gb(Vt,8),Vt))})}}else if(kfn(Vt)){let kt=fo(Vt)?Vt.left:Vt.name,vr=Yg(kt)?RI(kt.argumentExpression):zw(kt);if(Zpe(v,vr))continue;dg(vr,mc)&&(dg(vr,ri)?(D=!0,b3(Vt)||(P=!1)):dg(vr,ci)?(Y=!0,b3(Vt)||(oe=!1)):(Be=!0,b3(Vt)||(Oe=!1)),He.push(Vt.symbol))}let qe=Nn(He,Me(m,Vt=>Vt!==u));return Be&&!Zpe(v,$r)&&v.push(M2e(Oe,0,qe,$r)),D&&!Zpe(v,ri)&&v.push(M2e(P,0,qe,ri)),Y&&!Zpe(v,ci)&&v.push(M2e(oe,0,qe,ci)),v}return E}function qst(u){return!!(u.flags&4108)||mK(u)||!!(u.flags&2097152)&&!G5(u)&&jt(u.types,qst)}function $st(u){return Xt(Me(u.symbol&&u.symbol.declarations,Ds),n3)[0]}function lIn(u,m){var v;let D;if((v=u.symbol)!=null&&v.declarations){for(let P of u.symbol.declarations)if(P.parent.kind===196){let[Y=P.parent,oe]=wye(P.parent.parent);if(oe.kind===184&&!m){let Be=oe,Oe=f8t(Be);if(Oe){let He=Be.typeArguments.indexOf(Y);if(He()=>z4s(Be,Oe,dn))),kt=_l(qe,Vt);kt!==u&&(D=Ft(D,kt))}}}}else if(oe.kind===170&&oe.dotDotDotToken||oe.kind===192||oe.kind===203&&oe.dotDotDotToken)D=Ft(D,d0(cn));else if(oe.kind===205)D=Ft(D,$r);else if(oe.kind===169&&oe.parent.kind===201)D=Ft(D,mc);else if(oe.kind===201&&oe.type&&QA(oe.type)===P.parent&&oe.parent.kind===195&&oe.parent.extendsType===oe&&oe.parent.checkType.kind===201&&oe.parent.checkType.type){let Be=oe.parent.checkType,Oe=nl(Be.type);D=Ft(D,_l(Oe,HQ(R5(Uo(Be.typeParameter)),Be.typeParameter.constraint?nl(Be.typeParameter.constraint):mc)))}}}return D&&Kg(D)}function Vpe(u){if(!u.constraint)if(u.target){let m=Xy(u.target);u.constraint=m?_l(m,u.mapper):YI}else{let m=$st(u);if(!m)u.constraint=lIn(u)||YI;else{let v=nl(m);v.flags&1&&!uo(v)&&(v=m.parent.parent.kind===201?mc:cn),u.constraint=v}}return u.constraint===YI?void 0:u.constraint}function uIn(u){let m=Cp(u.symbol,169),v=ZB(m.parent)?zge(m.parent):m.parent;return v&&mS(v)}function UB(u){let m="";if(u){let v=u.length,D=0;for(;D1&&(m+=":"+Y),D+=Y}}return m}function IK(u,m){return u?`@${kg(u)}`+(m?`:${UB(m)}`:""):""}function yWe(u,m){let v=0;for(let D of u)(m===void 0||!(D.flags&m))&&(v|=la(D));return v&458752}function Dse(u,m){return jt(m)&&u===oi?cn:iZ(u,m)}function iZ(u,m){let v=UB(m),D=u.instantiations.get(v);return D||(D=Lh(4,u.symbol),u.instantiations.set(v,D),D.objectFlags|=m?yWe(m):0,D.target=u,D.resolvedTypeArguments=m),D}function gIn(u){let m=Oc(u.flags,u.symbol);return m.objectFlags=u.objectFlags,m.target=u.target,m.resolvedTypeArguments=u.resolvedTypeArguments,m}function OJt(u,m,v,D,P){if(!D){D=Tq(m);let oe=Fse(D);P=v?cZ(oe,v):oe}let Y=Lh(4,u.symbol);return Y.target=u,Y.node=m,Y.mapper=v,Y.aliasSymbol=D,Y.aliasTypeArguments=P,Y}function lf(u){var m,v;if(!u.resolvedTypeArguments){if(!VN(u,5))return Nn(u.target.outerTypeParameters,(m=u.target.localTypeParameters)==null?void 0:m.map(()=>nn))||E;let D=u.node,P=D?D.kind===184?Nn(u.target.outerTypeParameters,hat(D,u.target.localTypeParameters)):D.kind===189?[nl(D.elementType)]:At(D.elements,nl):E;xr()?u.resolvedTypeArguments??(u.resolvedTypeArguments=u.mapper?cZ(P,u.mapper):P):(u.resolvedTypeArguments??(u.resolvedTypeArguments=Nn(u.target.outerTypeParameters,((v=u.target.localTypeParameters)==null?void 0:v.map(()=>nn))||E)),Sr(u.node||ge,u.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,u.target.symbol&&kl(u.target.symbol)))}return u.resolvedTypeArguments}function B9(u){return B(u.target.typeParameters)}function AIn(u,m){let v=Fp(jA(m)),D=v.localTypeParameters;if(D){let P=B(u.typeArguments),Y=Ik(D),oe=wo(u);if(!(!Rt&&oe)&&(PD.length)){let He=oe&&l_(u)&&!bz(u.parent),qe=Y===D.length?He?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:He?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Vt=no(v,void 0,2);if(Sr(u,qe,Vt,Y,D.length),!oe)return nn}if(u.kind===184&&FIn(u,B(u.typeArguments)!==D.length))return OJt(v,u,void 0);let Oe=Nn(v.outerTypeParameters,v9(bWe(u),D,Y,oe));return iZ(v,Oe)}return x5(u,m)?v:nn}function kse(u,m,v,D){let P=Fp(u);if(P===Mt){let He=Bet.get(u.escapedName);if(He!==void 0&&m&&m.length===1)return He===4?MJt(m[0]):wq(u,m[0])}let Y=fa(u),oe=Y.typeParameters,Be=UB(m)+IK(v,D),Oe=Y.instantiations.get(Be);return Oe||Y.instantiations.set(Be,Oe=Chn(P,N1(oe,v9(m,oe,Ik(oe),wo(u.valueDeclaration))),v,D)),Oe}function C3s(u,m){if(iI(m)&1048576){let P=bWe(u),Y=IK(m,P),oe=Kr.get(Y);return oe||(oe=Vc(1,"error",void 0,`alias ${Y}`),oe.aliasSymbol=m,oe.aliasTypeArguments=P,Kr.set(Y,oe)),oe}let v=Fp(m),D=fa(m).typeParameters;if(D){let P=B(u.typeArguments),Y=Ik(D);if(PD.length)return Sr(u,Y===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,kl(m),Y,D.length),nn;let oe=Tq(u),Be=oe&&(dIn(m)||!dIn(oe))?oe:void 0,Oe;if(Be)Oe=Fse(Be);else if(s7(u)){let He=Ppe(u,2097152,!0);if(He&&He!==it){let qe=YC(He);qe&&qe.flags&524288&&(Be=qe,Oe=bWe(u)||(D?[]:void 0))}}return kse(m,bWe(u),Be,Oe)}return x5(u,m)?v:nn}function dIn(u){var m;let v=(m=u.declarations)==null?void 0:m.find(gne);return!!(v&&A1(v))}function _3s(u){switch(u.kind){case 184:return u.typeName;case 234:let m=u.expression;if(Od(m))return m}}function pIn(u){return u.parent?`${pIn(u.parent)}.${u.escapedName}`:u.escapedName}function eot(u){let v=(u.kind===167?u.right:u.kind===212?u.name:u).escapedText;if(v){let D=u.kind===167?eot(u.left):u.kind===212?eot(u.expression):void 0,P=D?`${pIn(D)}.${v}`:v,Y=Fr.get(P);return Y||(Fr.set(P,Y=gA(524288,v,1048576)),Y.parent=D,Y.links.declaredType=bn),Y}return it}function Ppe(u,m,v){let D=_3s(u);if(!D)return it;let P=TI(D,m,v);return P&&P!==it?P:v?it:eot(D)}function tot(u,m){if(m===it)return nn;if(m=gq(m)||m,m.flags&96)return AIn(u,m);if(m.flags&524288)return C3s(u,m);let v=vfn(m);if(v)return x5(u,m)?Iy(v):nn;if(m.flags&111551&&rot(u)){let D=y3s(u,m);return D||(Ppe(u,788968),Io(m))}return nn}function y3s(u,m){let v=sa(u);if(!v.resolvedJSDocType){let D=Io(m),P=D;if(m.valueDeclaration){let Y=u.kind===206&&u.qualifier;D.symbol&&D.symbol!==m&&Y&&(P=tot(u,D.symbol))}v.resolvedJSDocType=P}return v.resolvedJSDocType}function MJt(u){return HJt(u)?fIn(u,cn):u}function HJt(u){return!!(u.flags&3145728&&jt(u.types,HJt)||u.flags&33554432&&!xse(u)&&HJt(u.baseType)||u.flags&524288&&!mk(u)||u.flags&432275456&&!mK(u))}function xse(u){return!!(u.flags&33554432&&u.constraint.flags&2)}function YJt(u,m){return m.flags&3||m===u||u.flags&1?u:fIn(u,m)}function fIn(u,m){let v=`${QC(u)}>${QC(m)}`,D=Tg.get(v);if(D)return D;let P=ic(33554432);return P.baseType=u,P.constraint=m,Tg.set(v,P),P}function QJt(u){return xse(u)?u.baseType:Kg([u.constraint,u.baseType])}function IIn(u){return u.kind===190&&u.elements.length===1}function hIn(u,m,v){return IIn(m)&&IIn(v)?hIn(u,m.elements[0],v.elements[0]):aZ(nl(m))===aZ(u)?nl(v):void 0}function b3s(u,m){let v,D=!0;for(;m&&!Lc(m)&&m.kind!==321;){let P=m.parent;if(P.kind===170&&(D=!D),(D||u.flags&8650752)&&P.kind===195&&m===P.trueType){let Y=hIn(u,P.checkType,P.extendsType);Y&&(v=Ft(v,Y))}else if(u.flags&262144&&P.kind===201&&!P.nameType&&m===P.type){let Y=nl(P);if(jw(Y)===aZ(u)){let oe=B2e(Y);if(oe){let Be=Xy(oe);Be&&RE(Be,L5)&&(v=Ft(v,Ha([ri,_u])))}}}m=P}return v?YJt(u,Kg(v)):u}function rot(u){return!!(u.flags&16777216)&&(u.kind===184||u.kind===206)}function x5(u,m){return u.typeArguments?(Sr(u,Z.Type_0_is_not_generic,m?kl(m):u.typeName?Wd(u.typeName):yet),!1):!0}function mIn(u){if(Ir(u.typeName)){let m=u.typeArguments;switch(u.typeName.escapedText){case"String":return x5(u),$r;case"Number":return x5(u),ri;case"BigInt":return x5(u),ao;case"Boolean":return x5(u),Mn;case"Void":return x5(u),es;case"Undefined":return x5(u),Bt;case"Null":return x5(u),Hn;case"Function":case"function":return x5(u),Js;case"array":return(!m||!m.length)&&!Rt?d_:void 0;case"promise":return(!m||!m.length)&&!Rt?pOe(hr):void 0;case"Object":if(m&&m.length===2){if(Uge(u)){let v=nl(m[0]),D=nl(m[1]),P=v===$r||v===ri?[eG(v,D,!1)]:E;return Hf(void 0,Ee,E,E,P)}return hr}return x5(u),Rt?void 0:hr}}}function E3s(u){let m=nl(u.type);return ot?OWe(m,65536):m}function not(u){let m=sa(u);if(!m.resolvedType){if(s2(u)&&Ed(u.parent))return m.resolvedSymbol=it,m.resolvedType=RI(u.parent.expression);let v,D,P=788968;rot(u)&&(D=mIn(u),D||(v=Ppe(u,P,!0),v===it?v=Ppe(u,P|111551):Ppe(u,P),D=tot(u,v))),D||(v=Ppe(u,P),D=tot(u,v)),m.resolvedSymbol=v,m.resolvedType=D}return m.resolvedType}function bWe(u){return At(u.typeArguments,nl)}function CIn(u){let m=sa(u);if(!m.resolvedType){let v=n_n(u);m.resolvedType=Iy(D1(v))}return m.resolvedType}function _In(u,m){function v(P){let Y=P.declarations;if(Y)for(let oe of Y)switch(oe.kind){case 264:case 265:case 267:return oe}}if(!u)return m?oi:Xg;let D=Fp(u);return D.flags&524288?B(D.typeParameters)!==m?(Sr(v(u),Z.Global_type_0_must_have_1_type_parameter_s,nf(u),m),m?oi:Xg):D:(Sr(v(u),Z.Global_type_0_must_be_a_class_or_interface_type,nf(u)),m?oi:Xg)}function XJt(u,m){return Gse(u,111551,m?Z.Cannot_find_global_value_0:void 0)}function JJt(u,m){return Gse(u,788968,m?Z.Cannot_find_global_type_0:void 0)}function iot(u,m,v){let D=Gse(u,788968,v?Z.Cannot_find_global_type_0:void 0);if(D&&(Fp(D),B(fa(D).typeParameters)!==m)){let P=D.declarations&&de(D.declarations,FB);Sr(P,Z.Global_type_0_must_have_1_type_parameter_s,nf(D),m);return}return D}function Gse(u,m,v){return An(void 0,u,m,v,!1,!1)}function JI(u,m,v){let D=JJt(u,v);return D||v?_In(D,m):void 0}function yIn(u,m){let v;for(let D of u)v=Ft(v,JI(D,m,!1));return v??E}function S3s(){return Ox||(Ox=JI("TypedPropertyDescriptor",1,!0)||oi)}function v3s(){return Xl||(Xl=JI("TemplateStringsArray",0,!0)||Xg)}function bIn(){return eg||(eg=JI("ImportMeta",0,!0)||Xg)}function EIn(){if(!jl){let u=gA(0,"ImportMetaExpression"),m=bIn(),v=gA(4,"meta",8);v.parent=u,v.links.type=m;let D=qu([v]);u.members=D,jl=Hf(u,D,E,E,E)}return jl}function SIn(u){return Eu||(Eu=JI("ImportCallOptions",0,u))||Xg}function UJt(u){return Df||(Df=JI("ImportAttributes",0,u))||Xg}function vIn(u){return yv||(yv=XJt("Symbol",u))}function B3s(u){return ik||(ik=JJt("SymbolConstructor",u))}function BIn(){return Wx||(Wx=JI("Symbol",0,!1))||Xg}function EWe(u){return Pb||(Pb=JI("Promise",1,u))||oi}function wIn(u){return qm||(qm=JI("PromiseLike",1,u))||oi}function KJt(u){return oR||(oR=XJt("Promise",u))}function w3s(u){return pS||(pS=JI("PromiseConstructorLike",0,u))||Xg}function SWe(u){return wa||(wa=JI("AsyncIterable",3,u))||oi}function T3s(u){return pc||(pc=JI("AsyncIterator",3,u))||oi}function TIn(u){return ul||(ul=JI("AsyncIterableIterator",3,u))||oi}function R3s(){return gr??(gr=yIn(["ReadableStreamAsyncIterator"],1))}function N3s(u){return Ln||(Ln=JI("AsyncIteratorObject",3,u))||oi}function D3s(u){return bs||(bs=JI("AsyncGenerator",3,u))||oi}function sot(u){return xN||(xN=JI("Iterable",3,u))||oi}function k3s(u){return at||(at=JI("Iterator",3,u))||oi}function RIn(u){return en||(en=JI("IterableIterator",3,u))||oi}function jJt(){return _t?Bt:hr}function x3s(){return Fe??(Fe=yIn(["ArrayIterator","MapIterator","SetIterator","StringIterator"],1))}function G3s(u){return gi||(gi=JI("IteratorObject",3,u))||oi}function F3s(u){return _i||(_i=JI("Generator",3,u))||oi}function Z3s(u){return ys||(ys=JI("IteratorYieldResult",1,u))||oi}function L3s(u){return $s||($s=JI("IteratorReturnResult",1,u))||oi}function NIn(u){return Jg||(Jg=JI("Disposable",0,u))||Xg}function V3s(u){return MC||(MC=JI("AsyncDisposable",0,u))||Xg}function DIn(u,m=0){let v=Gse(u,788968,void 0);return v&&_In(v,m)}function P3s(){return S1||(S1=iot("Extract",2,!0)||it),S1===it?void 0:S1}function W3s(){return fS||(fS=iot("Omit",2,!0)||it),fS===it?void 0:fS}function zJt(u){return bv||(bv=iot("Awaited",1,u)||(u?it:void 0)),bv===it?void 0:bv}function O3s(){return XF||(XF=JI("BigInt",0,!1))||Xg}function M3s(u){return sk??(sk=JI("ClassDecoratorContext",1,u))??oi}function H3s(u){return aR??(aR=JI("ClassMethodDecoratorContext",2,u))??oi}function Y3s(u){return WB??(WB=JI("ClassGetterDecoratorContext",2,u))??oi}function Q3s(u){return UP??(UP=JI("ClassSetterDecoratorContext",2,u))??oi}function X3s(u){return br??(br=JI("ClassAccessorDecoratorContext",2,u))??oi}function J3s(u){return sn??(sn=JI("ClassAccessorDecoratorTarget",2,u))??oi}function U3s(u){return ei??(ei=JI("ClassAccessorDecoratorResult",2,u))??oi}function K3s(u){return is??(is=JI("ClassFieldDecoratorContext",2,u))??oi}function j3s(){return o9||(o9=XJt("NaN",!1))}function z3s(){return My||(My=iot("Record",2,!0)||it),My===it?void 0:My}function Wpe(u,m){return u!==oi?iZ(u,m):Xg}function kIn(u){return Wpe(S3s(),[u])}function xIn(u){return Wpe(sot(!0),[u,es,Bt])}function d0(u,m){return Wpe(m?uA:NA,[u])}function qJt(u){switch(u.kind){case 191:return 2;case 192:return GIn(u);case 203:return u.questionToken?2:u.dotDotDotToken?GIn(u):1;default:return 1}}function GIn(u){return NWe(u.type)?4:8}function q3s(u){let m=t5s(u.parent);if(NWe(u))return m?uA:NA;let D=At(u.elements,qJt);return $Jt(D,m,At(u.elements,$3s))}function $3s(u){return KT(u)||Si(u)?u:void 0}function FIn(u,m){return!!Tq(u)||ZIn(u)&&(u.kind===189?dW(u.elementType):u.kind===190?jt(u.elements,dW):m||jt(u.typeArguments,dW))}function ZIn(u){let m=u.parent;switch(m.kind){case 197:case 203:case 184:case 193:case 194:case 200:case 195:case 199:case 189:case 190:return ZIn(m);case 266:return!0}return!1}function dW(u){switch(u.kind){case 184:return rot(u)||!!(Ppe(u,788968).flags&524288);case 187:return!0;case 199:return u.operator!==158&&dW(u.type);case 197:case 191:case 203:case 317:case 315:case 316:case 310:return dW(u.type);case 192:return u.type.kind!==189||dW(u.type.elementType);case 193:case 194:return jt(u.types,dW);case 200:return dW(u.objectType)||dW(u.indexType);case 195:return dW(u.checkType)||dW(u.extendsType)||dW(u.trueType)||dW(u.falseType)}return!1}function e5s(u){let m=sa(u);if(!m.resolvedType){let v=q3s(u);if(v===oi)m.resolvedType=Xg;else if(!(u.kind===190&&jt(u.elements,D=>!!(qJt(D)&8)))&&FIn(u))m.resolvedType=u.kind===190&&u.elements.length===0?v:OJt(v,u,void 0);else{let D=u.kind===189?[nl(u.elementType)]:At(u.elements,nl);m.resolvedType=eUt(v,D)}}return m.resolvedType}function t5s(u){return xB(u)&&u.operator===148}function hk(u,m,v=!1,D=[]){let P=$Jt(m||At(u,Y=>1),v,D);return P===oi?Xg:u.length?eUt(P,u):P}function $Jt(u,m,v){if(u.length===1&&u[0]&4)return m?uA:NA;let D=At(u,Y=>Y&1?"#":Y&2?"?":Y&4?".":"*").join()+(m?"R":"")+(jt(v,Y=>!!Y)?","+At(v,Y=>Y?rd(Y):"_").join(","):""),P=ba.get(D);return P||ba.set(D,P=r5s(u,m,v)),P}function r5s(u,m,v){let D=u.length,P=ct(u,Vt=>!!(Vt&9)),Y,oe=[],Be=0;if(D){Y=new Array(D);for(let Vt=0;Vt!!(u.elementFlags[ii]&8&&vn.flags&1179648));if(dn>=0)return BWe(At(m,(vn,ii)=>u.elementFlags[ii]&8?vn:cn))?Yf(m[dn],vn=>tUt(u,Yl(m,dn,vn))):nn}let oe=[],Be=[],Oe=[],He=-1,qe=-1,Vt=-1;for(let dn=0;dn=1e4)return Sr(ge,ww(ge)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),nn;F(Yi,(js,Co)=>{var Ji;return vr(js,vn.target.elementFlags[Co],(Ji=vn.target.labeledElementDeclarations)==null?void 0:Ji[Co])})}else vr(T9(vn)&&D5(vn,ri)||nn,4,(P=u.labeledElementDeclarations)==null?void 0:P[dn]);else vr(vn,ii,(Y=u.labeledElementDeclarations)==null?void 0:Y[dn])}for(let dn=0;dn=0&&qeBe[qe+vn]&8?R1(dn,ri):dn)),oe.splice(qe+1,Vt-qe),Be.splice(qe+1,Vt-qe),Oe.splice(qe+1,Vt-qe));let kt=$Jt(Be,u.readonly,Oe);return kt===oi?Xg:Be.length?iZ(kt,oe):kt;function vr(dn,vn,ii){vn&1&&(He=Be.length),vn&4&&qe<0&&(qe=Be.length),vn&6&&(Vt=Be.length),oe.push(vn&2?Z0(dn,!0):dn),Be.push(vn),Oe.push(ii)}}function Ope(u,m,v=0){let D=u.target,P=B9(u)-v;return m>D.fixedLength?HMs(u)||hk(E):hk(lf(u).slice(m,P),D.elementFlags.slice(m,P),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(m,P))}function LIn(u){return Ha(Ft(Ri(u.target.fixedLength,m=>TE(""+m)),ON(u.target.readonly?uA:NA)))}function n5s(u,m){let v=Se(u.elementFlags,D=>!(D&m));return v>=0?v:u.elementFlags.length}function b2e(u,m){return u.elementFlags.length-De(u.elementFlags,v=>!(v&m))-1}function rUt(u){return u.fixedLength+b2e(u,3)}function WQ(u){let m=lf(u),v=B9(u);return m.length===v?m:m.slice(0,v)}function i5s(u){return Z0(nl(u.type),!0)}function QC(u){return u.id}function tG(u,m){return Wc(u,m,QC,Zt)>=0}function vWe(u,m){let v=Wc(u,m,QC,Zt);return v<0?(u.splice(~v,0,m),!0):!1}function s5s(u,m,v){let D=v.flags;if(!(D&131072))if(m|=D&473694207,D&465829888&&(m|=33554432),D&2097152&&la(v)&67108864&&(m|=536870912),v===Ni&&(m|=8388608),uo(v)&&(m|=1073741824),!ot&&D&98304)la(v)&65536||(m|=4194304);else{let P=u.length,Y=P&&v.id>u[P-1].id?~P:Wc(u,v,QC,Zt);Y<0&&u.splice(~Y,0,v)}return m}function VIn(u,m,v){let D;for(let P of v)P!==D&&(m=P.flags&1048576?VIn(u,m|(g5s(P)?1048576:0),P.types):s5s(u,m,P),D=P);return m}function o5s(u,m){var v;if(u.length<2)return u;let D=UB(u),P=Cs.get(D);if(P)return P;let Y=m&&jt(u,He=>!!(He.flags&524288)&&!Yb(He)&&BUt(pR(He))),oe=u.length,Be=oe,Oe=0;for(;Be>0;){Be--;let He=u[Be];if(Y||He.flags&469499904){if(He.flags&262144&&WN(He).flags&1048576){MN(He,Ha(At(u,kt=>kt===He?Wi:kt)),bf)&&LA(u,Be);continue}let qe=He.flags&61603840?de(Gd(He),kt=>IR(Io(kt))):void 0,Vt=qe&&Iy(Io(qe));for(let kt of u)if(He!==kt){if(Oe===1e5&&Oe/(oe-Be)*oe>1e6){(v=ki)==null||v.instant(ki.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:u.map(dn=>dn.id)}),Sr(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Oe++,qe&&kt.flags&61603840){let vr=Pi(kt,qe.escapedName);if(vr&&IR(vr)&&Iy(vr)!==Vt)continue}if(MN(He,kt,bf)&&(!(la(vs(He))&1)||!(la(vs(kt))&1)||Z5(He,kt))){LA(u,Be);break}}}}return Cs.set(D,u),u}function a5s(u,m,v){let D=u.length;for(;D>0;){D--;let P=u[D],Y=P.flags;(Y&402653312&&m&4||Y&256&&m&8||Y&2048&&m&64||Y&8192&&m&4096||v&&Y&32768&&m&16384||MQ(P)&&tG(u,P.regularType))&&LA(u,D)}}function c5s(u){let m=Me(u,mK);if(m.length){let v=u.length;for(;v>0;){v--;let D=u[v];D.flags&128&&jt(m,P=>l5s(D,P))&&LA(u,v)}}}function l5s(u,m){return m.flags&134217728?Got(u,m):xot(u,m)}function u5s(u){let m=[];for(let v of u)if(v.flags&2097152&&la(v)&67108864){let D=v.types[0].flags&8650752?0:1;Qi(m,v.types[D])}for(let v of m){let D=[];for(let Y of u)if(Y.flags&2097152&&la(Y)&67108864){let oe=Y.types[0].flags&8650752?0:1;Y.types[oe]===v&&vWe(D,Y.types[1-oe])}let P=L_(v);if(RE(P,Y=>tG(D,Y))){let Y=u.length;for(;Y>0;){Y--;let oe=u[Y];if(oe.flags&2097152&&la(oe)&67108864){let Be=oe.types[0].flags&8650752?0:1;oe.types[Be]===v&&tG(D,oe.types[1-Be])&&LA(u,Y)}}vWe(u,v)}}}function g5s(u){return!!(u.flags&1048576&&(u.aliasSymbol||u.origin))}function PIn(u,m){for(let v of m)if(v.flags&1048576){let D=v.origin;v.aliasSymbol||D&&!(D.flags&1048576)?Qi(u,v):D&&D.flags&1048576&&PIn(u,D.types)}}function nUt(u,m){let v=zl(u);return v.types=m,v}function Ha(u,m=1,v,D,P){if(u.length===0)return Wi;if(u.length===1)return u[0];if(u.length===2&&!P&&(u[0].flags&1048576||u[1].flags&1048576)){let Y=m===0?"N":m===2?"S":"L",oe=u[0].id=2&&Y[0]===Bt&&Y[1]===fr&&LA(Y,1),(oe&402664352||oe&16384&&oe&32768)&&a5s(Y,oe,!!(m&2)),oe&128&&oe&402653184&&c5s(Y),oe&536870912&&u5s(Y),m===2&&(Y=o5s(Y,!!(oe&524288)),!Y))return nn;if(Y.length===0)return oe&65536?oe&4194304?Hn:Ot:oe&32768?oe&4194304?Bt:xe:Wi}if(!P&&oe&1048576){let Oe=[];PIn(Oe,u);let He=[];for(let Vt of Y)jt(Oe,kt=>tG(kt.types,Vt))||He.push(Vt);if(!v&&Oe.length===1&&He.length===0)return Oe[0];if(Ul(Oe,(Vt,kt)=>Vt+kt.types.length,0)+He.length===Y.length){for(let Vt of Oe)vWe(He,Vt);P=nUt(1048576,He)}}let Be=(oe&36323331?0:32768)|(oe&2097152?16777216:0);return sUt(Y,Be,v,D,P)}function A5s(u,m){let v,D=[];for(let Y of u){let oe=Tv(Y);if(oe){if(oe.kind!==0&&oe.kind!==1||v&&!iUt(v,oe))return;v=oe,D.push(oe.type)}else{let Be=m!==2097152?ud(Y):void 0;if(Be!==Bs&&Be!==Ys)return}}if(!v)return;let P=sIn(D,m);return C2e(v.kind,v.parameterName,v.parameterIndex,P)}function iUt(u,m){return u.kind===m.kind&&u.parameterIndex===m.parameterIndex}function sUt(u,m,v,D,P){if(u.length===0)return Wi;if(u.length===1)return u[0];let oe=(P?P.flags&1048576?`|${UB(P.types)}`:P.flags&2097152?`&${UB(P.types)}`:`#${P.type.id}|${UB(u)}`:UB(u))+IK(v,D),Be=Wo.get(oe);return Be||(Be=ic(1048576),Be.objectFlags=m|yWe(u,98304),Be.types=u,Be.origin=P,Be.aliasSymbol=v,Be.aliasTypeArguments=D,u.length===2&&u[0].flags&512&&u[1].flags&512&&(Be.flags|=16,Be.intrinsicName="boolean"),Wo.set(oe,Be)),Be}function d5s(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u);m.resolvedType=Ha(At(u.types,nl),1,v,Fse(v))}return m.resolvedType}function p5s(u,m,v){let D=v.flags;return D&2097152?OIn(u,m,v.types):(mk(v)?m&16777216||(m|=16777216,u.set(v.id.toString(),v)):(D&3?(v===Ni&&(m|=8388608),uo(v)&&(m|=1073741824)):(ot||!(D&98304))&&(v===fr&&(m|=262144,v=Bt),u.has(v.id.toString())||(v.flags&109472&&m&109472&&(m|=67108864),u.set(v.id.toString(),v))),m|=D&473694207),m)}function OIn(u,m,v){for(let D of v)m=p5s(u,m,Iy(D));return m}function f5s(u,m){let v=u.length;for(;v>0;){v--;let D=u[v];(D.flags&4&&m&402653312||D.flags&8&&m&256||D.flags&64&&m&2048||D.flags&4096&&m&8192||D.flags&16384&&m&32768||mk(D)&&m&470302716)&&LA(u,v)}}function I5s(u,m){for(let v of u)if(!tG(v.types,m)){if(m===fr)return tG(v.types,Bt);if(m===Bt)return tG(v.types,fr);let D=m.flags&128?$r:m.flags&288?ri:m.flags&2048?ao:m.flags&8192?ci:void 0;if(!D||!tG(v.types,D))return!1}return!0}function h5s(u){let m=u.length,v=Me(u,D=>!!(D.flags&128));for(;m>0;){m--;let D=u[m];if(D.flags&402653184){for(let P of v)if(YQ(P,D)){LA(u,m);break}else if(mK(D))return!0}}return!1}function MIn(u,m){for(let v=0;v!(D.flags&m))}function m5s(u){let m,v=Se(u,oe=>!!(la(oe)&32768));if(v<0)return!1;let D=v+1;for(;D!!(dn.flags&469893116)||mk(dn))){if(Mpe(vr,kt))return Vt;if(!(vr.flags&1048576&&kv(vr,dn=>Mpe(dn,kt)))&&!Mpe(kt,vr))return Wi;Be=67108864}}}let Oe=UB(oe)+(m&2?"*":IK(v,D)),He=yr.get(Oe);if(!He){if(Y&1048576)if(m5s(oe))He=Kg(oe,m,v,D);else if(ue(oe,qe=>!!(qe.flags&1048576&&qe.types[0].flags&32768))){let qe=jt(oe,x2e)?fr:Bt;MIn(oe,32768),He=Ha([Kg(oe,m),qe],1,v,D)}else if(ue(oe,qe=>!!(qe.flags&1048576&&(qe.types[0].flags&65536||qe.types[1].flags&65536))))MIn(oe,65536),He=Ha([Kg(oe,m),Hn],1,v,D);else if(oe.length>=3&&u.length>2){let qe=Math.floor(oe.length/2);He=Kg([Kg(oe.slice(0,qe),m),Kg(oe.slice(qe),m)],m,v,D)}else{if(!BWe(oe))return nn;let qe=_5s(oe,m),Vt=jt(qe,kt=>!!(kt.flags&2097152))&&oUt(qe)>oUt(oe)?nUt(2097152,oe):void 0;He=Ha(qe,1,v,D,Vt)}else He=C5s(oe,Be,v,D);yr.set(Oe,He)}return He}function HIn(u){return Ul(u,(m,v)=>v.flags&1048576?m*v.types.length:v.flags&131072?0:m,1)}function BWe(u){var m;let v=HIn(u);return v>=1e5?((m=ki)==null||m.instant(ki.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:u.map(D=>D.id),size:v}),Sr(ge,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function _5s(u,m){let v=HIn(u),D=[];for(let P=0;P=0;Oe--)if(u[Oe].flags&1048576){let He=u[Oe].types,qe=He.length;Y[Oe]=He[oe%qe],oe=Math.floor(oe/qe)}let Be=Kg(Y,m);Be.flags&131072||D.push(Be)}return D}function YIn(u){return!(u.flags&3145728)||u.aliasSymbol?1:u.flags&1048576&&u.origin?YIn(u.origin):oUt(u.types)}function oUt(u){return Ul(u,(m,v)=>m+YIn(v),0)}function y5s(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u),D=At(u.types,nl),P=D.length===2?D.indexOf(bg):-1,Y=P>=0?D[1-P]:cn,oe=!!(Y.flags&76||Y.flags&134217728&&mK(Y));m.resolvedType=Kg(D,oe?1:0,v,Fse(v))}return m.resolvedType}function QIn(u,m){let v=ic(4194304);return v.type=u,v.indexFlags=m,v}function b5s(u){let m=zl(4194304);return m.type=u,m}function XIn(u,m){return m&1?u.resolvedStringIndexType||(u.resolvedStringIndexType=QIn(u,1)):u.resolvedIndexType||(u.resolvedIndexType=QIn(u,0))}function JIn(u,m){let v=jw(u),D=_S(u),P=E9(u.target||u);if(!P&&!(m&2))return D;let Y=[];if(_K(D)){if(Rse(u))return XIn(u,m);TK(D,Be)}else if(Rse(u)){let Oe=fy(N5(u));wJt(Oe,8576,!!(m&1),Be)}else TK(IWe(D),Be);let oe=m&2?nm(Ha(Y),Oe=>!(Oe.flags&5)):Ha(Y);if(oe.flags&1048576&&D.flags&1048576&&UB(oe.types)===UB(D.types))return D;return oe;function Be(Oe){let He=P?_l(P,v2e(u.mapper,v,Oe)):Oe;Y.push(He===$r?bi:He)}}function E5s(u){let m=jw(u);return v(E9(u)||m);function v(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===m:D.flags&137363456?ue(D.types,v):D.flags&8388608?v(D.objectType)&&v(D.indexType):D.flags&33554432?v(D.baseType)&&v(D.constraint):D.flags&268435456?v(D.type):!1}}function sZ(u){if(p(u))return Wi;if(mC(u))return Iy(Ol(u));if(Un(u))return Iy(zw(u));let m=_3(u);return m!==void 0?TE(Bc(m)):un(u)?Iy(Ol(u)):Wi}function Bq(u,m,v){if(v||!(u2(u)&6)){let D=fa(Yst(u)).nameType;if(!D){let P=Il(u.valueDeclaration);D=u.escapedName==="default"?TE("default"):P&&sZ(P)||(k7(u)?void 0:TE(nf(u)))}if(D&&D.flags&m)return D}return Wi}function UIn(u,m){return!!(u.flags&m||u.flags&2097152&&jt(u.types,v=>UIn(v,m)))}function S5s(u,m,v){let D=v&&(la(u)&7||u.aliasSymbol)?b5s(u):void 0,P=At(Gd(u),oe=>Bq(oe,m)),Y=At(A0(u),oe=>oe!==Uc&&UIn(oe.keyType,m)?oe.keyType===$r&&m&8?bi:oe.keyType:Wi);return Ha(Nn(P,Y),1,void 0,void 0,D)}function aUt(u,m=0){return!!(u.flags&58982400||hW(u)||Yb(u)&&(!E5s(u)||I2e(u)===2)||u.flags&1048576&&!(m&4)&&xJt(u)||u.flags&2097152&&ah(u,465829888)&&jt(u.types,mk))}function ON(u,m=0){return u=JB(u),xse(u)?MJt(ON(u.baseType,m)):aUt(u,m)?XIn(u,m):u.flags&1048576?Kg(At(u.types,v=>ON(v,m))):u.flags&2097152?Ha(At(u.types,v=>ON(v,m))):la(u)&32?JIn(u,m):u===Ni?Ni:u.flags&2?Wi:u.flags&131073?mc:S5s(u,(m&2?128:402653316)|(m&1?0:12584),m===0)}function KIn(u){let m=P3s();return m?kse(m,[u,$r]):$r}function v5s(u){let m=KIn(ON(u));return m.flags&131072?$r:m}function B5s(u){let m=sa(u);if(!m.resolvedType)switch(u.operator){case 143:m.resolvedType=ON(nl(u.type));break;case 158:m.resolvedType=u.type.kind===155?IUt(pne(u.parent)):nn;break;case 148:m.resolvedType=nl(u.type);break;default:pe.assertNever(u.operator)}return m.resolvedType}function w5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=hK([u.head.text,...At(u.templateSpans,v=>v.literal.text)],At(u.templateSpans,v=>nl(v.type)))),m.resolvedType}function hK(u,m){let v=Se(m,He=>!!(He.flags&1179648));if(v>=0)return BWe(m)?Yf(m[v],He=>hK(u,Yl(m,v,He))):nn;if(k(m,Ni))return Ni;let D=[],P=[],Y=u[0];if(!Oe(u,m))return $r;if(D.length===0)return TE(Y);if(P.push(Y),ue(P,He=>He==="")){if(ue(D,He=>!!(He.flags&4)))return $r;if(D.length===1&&mK(D[0]))return D[0]}let oe=`${UB(D)}|${At(P,He=>He.length).join(",")}|${P.join("")}`,Be=tl.get(oe);return Be||tl.set(oe,Be=R5s(P,D)),Be;function Oe(He,qe){for(let Vt=0;Vtwq(u,v)):m.flags&128?TE(jIn(u,m.value)):m.flags&134217728?hK(...N5s(u,m.texts,m.types)):m.flags&268435456&&u===m.symbol?m:m.flags&268435461||_K(m)?zIn(u,m):wWe(m)?zIn(u,hK(["",""],[m])):m}function jIn(u,m){switch(Bet.get(u.escapedName)){case 0:return m.toUpperCase();case 1:return m.toLowerCase();case 2:return m.charAt(0).toUpperCase()+m.slice(1);case 3:return m.charAt(0).toLowerCase()+m.slice(1)}return m}function N5s(u,m,v){switch(Bet.get(u.escapedName)){case 0:return[m.map(D=>D.toUpperCase()),v.map(D=>wq(u,D))];case 1:return[m.map(D=>D.toLowerCase()),v.map(D=>wq(u,D))];case 2:return[m[0]===""?m:[m[0].charAt(0).toUpperCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[wq(u,v[0]),...v.slice(1)]:v];case 3:return[m[0]===""?m:[m[0].charAt(0).toLowerCase()+m[0].slice(1),...m.slice(1)],m[0]===""?[wq(u,v[0]),...v.slice(1)]:v]}return[m,v]}function zIn(u,m){let v=`${kg(u)},${QC(m)}`,D=Qu.get(v);return D||Qu.set(v,D=D5s(u,m)),D}function D5s(u,m){let v=Oc(268435456,u);return v.type=m,v}function k5s(u,m,v,D,P){let Y=ic(8388608);return Y.objectType=u,Y.indexType=m,Y.accessFlags=v,Y.aliasSymbol=D,Y.aliasTypeArguments=P,Y}function E2e(u){if(Rt)return!1;if(la(u)&4096)return!0;if(u.flags&1048576)return ue(u.types,E2e);if(u.flags&2097152)return jt(u.types,E2e);if(u.flags&465829888){let m=NJt(u);return m!==u&&E2e(m)}return!1}function oot(u,m){return g2(u)?A2(u):m&&VI(m)?_3(m):void 0}function cUt(u,m){if(m.flags&8208){let v=ji(u.parent,D=>!_p(D))||u.parent;return hF(v)?av(v)&&Ir(u)&&lmn(v,u):ue(m.declarations,D=>!bu(D)||cR(D))}return!0}function qIn(u,m,v,D,P,Y){let oe=P&&P.kind===213?P:void 0,Be=P&&p(P)?void 0:oot(v,P);if(Be!==void 0){if(Y&256)return W5(m,Be)||hr;let He=Gg(m,Be);if(He){if(Y&64&&P&&He.declarations&&dy(He)&&cUt(P,He)){let Vt=oe?.argumentExpression??(Iv(P)?P.indexType:P);YB(Vt,He.declarations,Be)}if(oe){if(aOe(He,oe,NCn(oe.expression,m.symbol)),m_n(oe,He,QD(oe))){Sr(oe.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,kl(He));return}if(Y&8&&(sa(P).resolvedSymbol=He),bCn(oe,He))return En}let qe=Y&4?b9(He):Io(He);return oe&&QD(oe)!==1?dZ(oe,qe):P&&Iv(P)&&x2e(qe)?Ha([qe,Bt]):qe}if(RE(m,yA)&&IN(Be)){let qe=+Be;if(P&&RE(m,Vt=>!(Vt.target.combinedFlags&12))&&!(Y&16)){let Vt=lUt(P);if(yA(m)){if(qe<0)return Sr(Vt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),Bt;Sr(Vt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,no(m),B9(m),Bc(Be))}else Sr(Vt,Z.Property_0_does_not_exist_on_type_1,Bc(Be),no(m))}if(qe>=0)return Oe($x(m,ri)),Mhn(m,qe,Y&1?fr:void 0)}}if(!(v.flags&98304)&&V_(v,402665900)){if(m.flags&131073)return m;let He=h2e(m,v)||$x(m,$r);if(He){if(Y&2&&He.keyType!==ri){oe&&(Y&4?Sr(oe,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,no(u)):Sr(oe,Z.Type_0_cannot_be_used_to_index_type_1,no(v),no(u)));return}if(P&&He.keyType===$r&&!V_(v,12)){let qe=lUt(P);return Sr(qe,Z.Type_0_cannot_be_used_as_an_index_type,no(v)),Y&1?Ha([He.type,fr]):He.type}return Oe(He),Y&1&&!(m.symbol&&m.symbol.flags&384&&v.symbol&&v.flags&1024&&$m(v.symbol)===m.symbol)?Ha([He.type,fr]):He.type}if(v.flags&131072)return Wi;if(E2e(m))return hr;if(oe&&!pat(m)){if(R9(m)){if(Rt&&v.flags&384)return PA.add(mo(oe,Z.Property_0_does_not_exist_on_type_1,v.value,no(m))),Bt;if(v.flags&12){let qe=At(m.properties,Vt=>Io(Vt));return Ha(Ft(qe,Bt))}}if(m.symbol===pr&&Be!==void 0&&pr.exports.has(Be)&&pr.exports.get(Be).flags&418)Sr(oe,Z.Property_0_does_not_exist_on_type_1,Bc(Be),no(m));else if(Rt&&!(Y&128))if(Be!==void 0&&vCn(Be,m)){let qe=no(m);Sr(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Be,qe,qe+"["+xp(oe.argumentExpression)+"]")}else if(D5(m,ri))Sr(oe.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let qe;if(Be!==void 0&&(qe=TCn(Be,m)))qe!==void 0&&Sr(oe.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Be,no(m),qe);else{let Vt=PQs(m,oe,v);if(Vt!==void 0)Sr(oe,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,no(m),Vt);else{let kt;if(v.flags&1024)kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+no(v)+"]",no(m));else if(v.flags&8192){let vr=f9(v.symbol,oe);kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,"["+vr+"]",no(m))}else v.flags&128||v.flags&256?kt=wu(void 0,Z.Property_0_does_not_exist_on_type_1,v.value,no(m)):v.flags&12&&(kt=wu(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,no(v),no(m)));kt=wu(kt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,no(D),no(m)),PA.add(Bw(ms(oe),oe,kt))}}}return}}if(Y&16&&R9(m))return Bt;if(E2e(m))return hr;if(P){let He=lUt(P);if(He.kind!==10&&v.flags&384)Sr(He,Z.Property_0_does_not_exist_on_type_1,""+v.value,no(m));else if(v.flags&12)Sr(He,Z.Type_0_has_no_matching_index_signature_for_type_1,no(m),no(v));else{let qe=He.kind===10?"bigint":no(v);Sr(He,Z.Type_0_cannot_be_used_as_an_index_type,qe)}}if(Xo(v))return v;return;function Oe(He){He&&He.isReadonly&&oe&&(bF(oe)||Tye(oe))&&Sr(oe,Z.Index_signature_in_type_0_only_permits_reading,no(m))}}function lUt(u){return u.kind===213?u.argumentExpression:u.kind===200?u.indexType:u.kind===168?u.expression:u}function wWe(u){if(u.flags&2097152){let m=!1;for(let v of u.types)if(v.flags&101248||wWe(v))m=!0;else if(!(v.flags&524288))return!1;return m}return!!(u.flags&77)||mK(u)}function mK(u){return!!(u.flags&134217728)&&ue(u.types,wWe)||!!(u.flags&268435456)&&wWe(u.type)}function $In(u){return!!(u.flags&402653184)&&!mK(u)}function G5(u){return!!S2e(u)}function CK(u){return!!(S2e(u)&4194304)}function _K(u){return!!(S2e(u)&8388608)}function S2e(u){return u.flags&3145728?(u.objectFlags&2097152||(u.objectFlags|=2097152|Ul(u.types,(m,v)=>m|S2e(v),0)),u.objectFlags&12582912):u.flags&33554432?(u.objectFlags&2097152||(u.objectFlags|=2097152|S2e(u.baseType)|S2e(u.constraint)),u.objectFlags&12582912):(u.flags&58982400||Yb(u)||hW(u)?4194304:0)|(u.flags&63176704||$In(u)?8388608:0)}function oZ(u,m){return u.flags&8388608?G5s(u,m):u.flags&16777216?F5s(u,m):u}function ehn(u,m,v){if(u.flags&1048576||u.flags&2097152&&!aUt(u)){let D=At(u.types,P=>oZ(R1(P,m),v));return u.flags&2097152||v?Kg(D):Ha(D)}}function x5s(u,m,v){if(m.flags&1048576){let D=At(m.types,P=>oZ(R1(u,P),v));return v?Kg(D):Ha(D)}}function G5s(u,m){let v=m?"simplifiedForWriting":"simplifiedForReading";if(u[v])return u[v]===Fh?u:u[v];u[v]=Fh;let D=oZ(u.objectType,m),P=oZ(u.indexType,m),Y=x5s(D,P,m);if(Y)return u[v]=Y;if(!(P.flags&465829888)){let oe=ehn(D,P,m);if(oe)return u[v]=oe}if(hW(D)&&P.flags&296){let oe=Qpe(D,P.flags&8?0:D.target.fixedLength,0,m);if(oe)return u[v]=oe}return Yb(D)&&I2e(D)!==2?u[v]=Yf(aot(D,u.indexType),oe=>oZ(oe,m)):u[v]=u}function F5s(u,m){let v=u.checkType,D=u.extendsType,P=fW(u),Y=IW(u);if(Y.flags&131072&&aZ(P)===aZ(v)){if(v.flags&1||dg(EK(v),EK(D)))return oZ(P,m);if(thn(v,D))return Wi}else if(P.flags&131072&&aZ(Y)===aZ(v)){if(!(v.flags&1)&&dg(EK(v),EK(D)))return Wi;if(v.flags&1||thn(v,D))return oZ(Y,m)}return u}function thn(u,m){return!!(Ha([fWe(u,m),Wi]).flags&131072)}function aot(u,m){let v=N1([jw(u)],[m]),D=F5(u.mapper,v),P=_l(qx(u.target||u),D),Y=Yfn(u)>0||(G5(u)?Gpe(N5(u))>0:Z5s(u,m));return Z0(P,!0,Y)}function Z5s(u,m){let v=L_(m);return!!v&&jt(Gd(u),D=>!!(D.flags&16777216)&&dg(Bq(D,8576),v))}function R1(u,m,v=0,D,P,Y){return pW(u,m,v,D,P,Y)||(D?nn:cn)}function rhn(u,m){return RE(u,v=>{if(v.flags&384){let D=A2(v);if(IN(D)){let P=+D;return P>=0&&P0&&!jt(u.elements,m=>jL(m)||zL(m)||KT(m)&&!!(m.questionToken||m.dotDotDotToken))}function shn(u,m){return G5(u)||m&&yA(u)&&jt(WQ(u),G5)}function gUt(u,m,v,D,P){let Y,oe,Be=0;for(;;){if(Be===1e3)return Sr(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let He=_l(aZ(u.checkType),m),qe=_l(u.extendsType,m);if(He===nn||qe===nn)return nn;if(He===Ni||qe===Ni)return Ni;let Vt=w7(u.node.checkType),kt=w7(u.node.extendsType),vr=ihn(Vt)&&ihn(kt)&&B(Vt.elements)===B(kt.elements),dn=shn(He,vr),vn;if(u.inferTypeParameters){let Yi=F2e(u.inferTypeParameters,void 0,0);m&&(Yi.nonFixingMapper=F5(Yi.nonFixingMapper,m)),dn||nG(Yi.inferences,He,qe,1536),vn=m?F5(Yi.mapper,m):Yi.mapper}let ii=vn?_l(u.extendsType,vn):qe;if(!dn&&!shn(ii,vr)){if(!(ii.flags&3)&&(He.flags&1||!dg(w2e(He),w2e(ii)))){(He.flags&1||v&&!(ii.flags&131072)&&kv(w2e(ii),js=>dg(js,w2e(He))))&&(oe||(oe=[])).push(_l(nl(u.node.trueType),vn||m));let Yi=nl(u.node.falseType);if(Yi.flags&16777216){let js=Yi.root;if(js.node.parent===u.node&&(!js.isDistributive||js.checkType===u.checkType)){u=js;continue}if(Oe(Yi,m))continue}Y=_l(Yi,m);break}if(ii.flags&3||dg(EK(He),EK(ii))){let Yi=nl(u.node.trueType),js=vn||m;if(Oe(Yi,js))continue;Y=_l(Yi,js);break}}Y=ic(16777216),Y.root=u,Y.checkType=_l(u.checkType,m),Y.extendsType=_l(u.extendsType,m),Y.mapper=m,Y.combinedMapper=vn,Y.aliasSymbol=D||u.aliasSymbol,Y.aliasTypeArguments=D?P:cZ(u.aliasTypeArguments,m);break}return oe?Ha(Ft(oe,Y)):Y;function Oe(He,qe){if(He.flags&16777216&&qe){let Vt=He.root;if(Vt.outerTypeParameters){let kt=F5(He.mapper,qe),vr=At(Vt.outerTypeParameters,ii=>w9(ii,kt)),dn=N1(Vt.outerTypeParameters,vr),vn=Vt.isDistributive?w9(Vt.checkType,dn):void 0;if(!vn||vn===Vt.checkType||!(vn.flags&1179648))return u=Vt,m=dn,D=void 0,P=void 0,Vt.aliasSymbol&&Be++,!0}}return!1}}function fW(u){return u.resolvedTrueType||(u.resolvedTrueType=_l(nl(u.root.node.trueType),u.mapper))}function IW(u){return u.resolvedFalseType||(u.resolvedFalseType=_l(nl(u.root.node.falseType),u.mapper))}function L5s(u){return u.resolvedInferredTrueType||(u.resolvedInferredTrueType=u.combinedMapper?_l(nl(u.root.node.trueType),u.combinedMapper):fW(u))}function AUt(u){let m;return u.locals&&u.locals.forEach(v=>{v.flags&262144&&(m=Ft(m,Fp(v)))}),m}function V5s(u){return u.isDistributive&&(kWe(u.checkType,u.node.trueType)||kWe(u.checkType,u.node.falseType))}function P5s(u){let m=sa(u);if(!m.resolvedType){let v=nl(u.checkType),D=Tq(u),P=Fse(D),Y=Fc(u,!0),oe=P?Y:Me(Y,Oe=>kWe(Oe,u)),Be={node:u,checkType:v,extendsType:nl(u.extendsType),isDistributive:!!(v.flags&262144),inferTypeParameters:AUt(u),outerTypeParameters:oe,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:P};m.resolvedType=gUt(Be,void 0,!1),oe&&(Be.instantiations=new Map,Be.instantiations.set(UB(oe),m.resolvedType))}return m.resolvedType}function W5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=R5(Uo(u.typeParameter))),m.resolvedType}function ohn(u){return Ir(u)?[u]:Ft(ohn(u.left),u.right)}function ahn(u){var m;let v=sa(u);if(!v.resolvedType){if(!ky(u))return Sr(u.argument,Z.String_literal_expected),v.resolvedSymbol=it,v.resolvedType=nn;let D=u.isTypeOf?111551:u.flags&16777216?900095:788968,P=F0(u,u.argument.literal);if(!P)return v.resolvedSymbol=it,v.resolvedType=nn;let Y=!!((m=P.exports)!=null&&m.get("export=")),oe=wE(P,!1);if(sf(u.qualifier))if(oe.flags&D)v.resolvedType=chn(u,v,oe,D);else{let Be=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;Sr(u,Be,u.argument.literal.text),v.resolvedSymbol=it,v.resolvedType=nn}else{let Be=ohn(u.qualifier),Oe=oe,He;for(;He=Be.shift();){let qe=Be.length?1920:D,Vt=jA(Zh(Oe)),kt=u.isTypeOf||wo(u)&&Y?Gg(Io(Vt),He.escapedText,!1,!0):void 0,dn=(u.isTypeOf?void 0:f_(B1(Vt),He.escapedText,qe))??kt;if(!dn)return Sr(He,Z.Namespace_0_has_no_exported_member_1,f9(Oe),Wd(He)),v.resolvedType=nn;sa(He).resolvedSymbol=dn,sa(He.parent).resolvedSymbol=dn,Oe=dn}v.resolvedType=chn(u,v,Oe,D)}}return v.resolvedType}function chn(u,m,v,D){let P=Zh(v);return m.resolvedSymbol=P,D===111551?i_n(Io(v),u):tot(u,P)}function lhn(u){let m=sa(u);if(!m.resolvedType){let v=Tq(u);if(!u.symbol||pk(u.symbol).size===0&&!v)m.resolvedType=bg;else{let D=Lh(16,u.symbol);D.aliasSymbol=v,D.aliasTypeArguments=Fse(v),yU(u)&&u.isArrayType&&(D=d0(D)),m.resolvedType=D}}return m.resolvedType}function Tq(u){let m=u.parent;for(;fv(m)||W3(m)||xB(m)&&m.operator===148;)m=m.parent;return gne(m)?Uo(m):void 0}function Fse(u){return u?Ug(u):void 0}function cot(u){return!!(u.flags&524288)&&!Yb(u)}function dUt(u){return lZ(u)||!!(u.flags&474058748)}function pUt(u,m){if(!(u.flags&1048576))return u;if(ue(u.types,dUt))return de(u.types,lZ)||Xg;let v=de(u.types,Y=>!dUt(Y));if(!v||de(u.types,Y=>Y!==v&&!dUt(Y)))return u;return P(v);function P(Y){let oe=qu();for(let Oe of Gd(Y))if(!(u2(Oe)&6)){if(lot(Oe)){let He=Oe.flags&65536&&!(Oe.flags&32768),Vt=gA(16777220,Oe.escapedName,BJt(Oe)|(m?8:0));Vt.links.type=He?Bt:Z0(Io(Oe),!0),Vt.declarations=Oe.declarations,Vt.links.nameType=fa(Oe).nameType,Vt.links.syntheticOrigin=Oe,oe.set(Oe.escapedName,Vt)}}let Be=Hf(Y.symbol,oe,E,E,A0(Y));return Be.objectFlags|=131200,Be}}function OQ(u,m,v,D,P){if(u.flags&1||m.flags&1)return hr;if(u.flags&2||m.flags&2)return cn;if(u.flags&131072)return m;if(m.flags&131072)return u;if(u=pUt(u,P),u.flags&1048576)return BWe([u,m])?Yf(u,He=>OQ(He,m,v,D,P)):nn;if(m=pUt(m,P),m.flags&1048576)return BWe([u,m])?Yf(m,He=>OQ(u,He,v,D,P)):nn;if(m.flags&473960444)return u;if(CK(u)||CK(m)){if(lZ(u))return m;if(u.flags&2097152){let He=u.types,qe=He[He.length-1];if(cot(qe)&&cot(m))return Kg(Nn(He.slice(0,He.length-1),[OQ(qe,m,v,D,P)]))}return Kg([u,m])}let Y=qu(),oe=new Set,Be=u===Xg?A0(m):Pfn([u,m]);for(let He of Gd(m))u2(He)&6?oe.add(He.escapedName):lot(He)&&Y.set(He.escapedName,fUt(He,P));for(let He of Gd(u))if(!(oe.has(He.escapedName)||!lot(He)))if(Y.has(He.escapedName)){let qe=Y.get(He.escapedName),Vt=Io(qe);if(qe.flags&16777216){let kt=Nn(He.declarations,qe.declarations),vr=4|He.flags&16777216,dn=gA(vr,He.escapedName),vn=Io(He),ii=wot(vn),Yi=wot(Vt);dn.links.type=ii===Yi?vn:Ha([vn,Yi],2),dn.links.leftSpread=He,dn.links.rightSpread=qe,dn.declarations=kt,dn.links.nameType=fa(He).nameType,Y.set(He.escapedName,dn)}}else Y.set(He.escapedName,fUt(He,P));let Oe=Hf(v,Y,E,E,Tr(Be,He=>O5s(He,P)));return Oe.objectFlags|=2228352|D,Oe}function lot(u){var m;return!jt(u.declarations,pC)&&(!(u.flags&106496)||!((m=u.declarations)!=null&&m.some(v=>xa(v.parent))))}function fUt(u,m){let v=u.flags&65536&&!(u.flags&32768);if(!v&&m===yR(u))return u;let D=4|u.flags&16777216,P=gA(D,u.escapedName,BJt(u)|(m?8:0));return P.links.type=v?Bt:Io(u),P.declarations=u.declarations,P.links.nameType=fa(u).nameType,P.links.syntheticOrigin=u,P}function O5s(u,m){return u.isReadonly!==m?eG(u.keyType,u.type,m,u.declaration,u.components):u}function TWe(u,m,v,D){let P=Oc(u,v);return P.value=m,P.regularType=D||P,P}function Rq(u){if(u.flags&2976){if(!u.freshType){let m=TWe(u.flags,u.value,u.symbol,u);m.freshType=m,u.freshType=m}return u.freshType}return u}function Iy(u){return u.flags&2976?u.regularType:u.flags&1048576?u.regularType||(u.regularType=Yf(u,Iy)):u}function MQ(u){return!!(u.flags&2976)&&u.freshType===u}function TE(u){let m;return hn.get(u)||(hn.set(u,m=TWe(128,u)),m)}function fR(u){let m;return Oi.get(u)||(Oi.set(u,m=TWe(256,u)),m)}function RWe(u){let m,v=kP(u);return lo.get(v)||(lo.set(v,m=TWe(2048,u)),m)}function M5s(u,m,v){let D,P=`${m}${typeof u=="string"?"@":"#"}${u}`,Y=1024|(typeof u=="string"?128:256);return pa.get(P)||(pa.set(P,D=TWe(Y,u,v)),D)}function H5s(u){if(u.literal.kind===106)return Hn;let m=sa(u);return m.resolvedType||(m.resolvedType=Iy(Ol(u.literal))),m.resolvedType}function Y5s(u){let m=Oc(8192,u);return m.escapedName=`__@${m.symbol.escapedName}@${kg(m.symbol)}`,m}function IUt(u){if(wo(u)&&W3(u)){let m=bP(u);m&&(u=m3(m)||m)}if(eZe(u)){let m=Lge(u)?mS(u.left):mS(u);if(m){let v=fa(m);return v.uniqueESSymbolType||(v.uniqueESSymbolType=Y5s(m))}}return ci}function Q5s(u){let m=r0(u,!1,!1),v=m&&m.parent;if(v&&(xa(v)||v.kind===265)&&!cg(m)&&(!Tc(m)||EP(u,m.body)))return wv(Uo(v)).thisType;if(v&&og(v)&&fo(v.parent)&&nI(v.parent)===6)return wv(mS(v.parent.left).parent).thisType;let D=u.flags&16777216?PL(u):void 0;return D&&UA(D)&&fo(D.parent)&&nI(D.parent)===3?wv(mS(D.parent.left).parent).thisType:YN(m)&&EP(u,m.body)?wv(Uo(m)).thisType:(Sr(u,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),nn)}function hUt(u){let m=sa(u);return m.resolvedType||(m.resolvedType=Q5s(u)),m.resolvedType}function uhn(u){return nl(NWe(u.type)||u.type)}function NWe(u){switch(u.kind){case 197:return NWe(u.type);case 190:if(u.elements.length===1&&(u=u.elements[0],u.kind===192||u.kind===203&&u.dotDotDotToken))return NWe(u.type);break;case 189:return u.elementType}}function X5s(u){let m=sa(u);return m.resolvedType||(m.resolvedType=u.dotDotDotToken?uhn(u):Z0(nl(u.type),!0,!!u.questionToken))}function nl(u){return b3s(ghn(u),u)}function ghn(u){switch(u.kind){case 133:case 313:case 314:return hr;case 159:return cn;case 154:return $r;case 150:return ri;case 163:return ao;case 136:return Mn;case 155:return ci;case 116:return es;case 157:return Bt;case 106:return Hn;case 146:return Wi;case 151:return u.flags&524288&&!Rt?hr:fs;case 141:return Mt;case 198:case 110:return hUt(u);case 202:return H5s(u);case 184:return not(u);case 183:return u.assertsModifier?es:Mn;case 234:return not(u);case 187:return CIn(u);case 189:case 190:return e5s(u);case 191:return i5s(u);case 193:return d5s(u);case 194:return y5s(u);case 315:return E3s(u);case 317:return Z0(nl(u.type));case 203:return X5s(u);case 197:case 316:case 310:return nl(u.type);case 192:return uhn(u);case 319:return uKs(u);case 185:case 186:case 188:case 323:case 318:case 324:return lhn(u);case 199:return B5s(u);case 200:return nhn(u);case 201:return uUt(u);case 195:return P5s(u);case 196:return W5s(u);case 204:return w5s(u);case 206:return ahn(u);case 80:case 167:case 212:let m=xv(u);return m?Fp(m):nn;default:return nn}}function uot(u,m,v){if(u&&u.length)for(let D=0;DD.typeParameter),At(v,()=>cn))}function U5s(u){return u.outerReturnMapper??(u.outerReturnMapper=fhn(u.returnMapper,Uhn(u).mapper))}function F5(u,m){return u?Aot(4,u,m):m}function fhn(u,m){return u?Aot(5,u,m):m}function yK(u,m,v){return v?Aot(5,HQ(u,m),v):HQ(u,m)}function v2e(u,m,v){return u?Aot(5,u,HQ(m,v)):HQ(m,v)}function K5s(u){return!u.constraint&&!$st(u)||u.constraint===YI?u:u.restrictiveInstantiation||(u.restrictiveInstantiation=Yy(u.symbol),u.restrictiveInstantiation.constraint=YI,u.restrictiveInstantiation)}function CUt(u){let m=Yy(u.symbol);return m.target=u,m}function Ihn(u,m){return C2e(u.kind,u.parameterName,u.parameterIndex,_l(u.type,m))}function bK(u,m,v){let D;if(u.typeParameters&&!v){D=At(u.typeParameters,CUt),m=F5(N1(u.typeParameters,D),m);for(let Y of D)Y.mapper=m}let P=PN(u.declaration,D,u.thisParameter&&_Ut(u.thisParameter,m),uot(u.parameters,m,_Ut),void 0,void 0,u.minArgumentCount,u.flags&167);return P.target=u,P.mapper=m,P}function _Ut(u,m){let v=fa(u);if(v.type&&!CW(v.type)&&(!(u.flags&65536)||v.writeType&&!CW(v.writeType)))return u;iI(u)&1&&(u=v.target,m=F5(v.mapper,m));let D=gA(u.flags,u.escapedName,1|iI(u)&53256);return D.declarations=u.declarations,D.parent=u.parent,D.links.target=u,D.links.mapper=m,u.valueDeclaration&&(D.valueDeclaration=u.valueDeclaration),v.nameType&&(D.links.nameType=v.nameType),D}function j5s(u,m,v,D){let P=u.objectFlags&4||u.objectFlags&8388608?u.node:u.symbol.declarations[0],Y=sa(P),oe=u.objectFlags&4?Y.resolvedType:u.objectFlags&64?u.target:u,Be=Y.outerTypeParameters;if(!Be){let Oe=Fc(P,!0);if(YN(P)){let qe=rIn(P);Oe=Or(Oe,qe)}Be=Oe||E;let He=u.objectFlags&8388612?[P]:u.symbol.declarations;Be=(oe.objectFlags&8388612||oe.symbol.flags&8192||oe.symbol.flags&2048)&&!oe.aliasTypeArguments?Me(Be,qe=>jt(He,Vt=>kWe(qe,Vt))):Be,Y.outerTypeParameters=Be}if(Be.length){let Oe=F5(u.mapper,m),He=At(Be,dn=>w9(dn,Oe)),qe=v||u.aliasSymbol,Vt=v?D:cZ(u.aliasTypeArguments,m),kt=UB(He)+IK(qe,Vt);oe.instantiations||(oe.instantiations=new Map,oe.instantiations.set(UB(Be)+IK(oe.aliasSymbol,oe.aliasTypeArguments),oe));let vr=oe.instantiations.get(kt);if(!vr){let dn=N1(Be,He);oe.objectFlags&134217728&&m&&(dn=F5(dn,m)),vr=oe.objectFlags&4?OJt(u.target,u.node,dn,qe,Vt):oe.objectFlags&32?q5s(oe,dn,qe,Vt):yUt(oe,dn,qe,Vt),oe.instantiations.set(kt,vr);let vn=la(vr);if(vr.flags&3899393&&!(vn&524288)){let ii=jt(He,CW);la(vr)&524288||(vn&52?vr.objectFlags|=524288|(ii?1048576:0):vr.objectFlags|=ii?0:524288)}}return vr}return u}function z5s(u){return!(u.parent.kind===184&&u.parent.typeArguments&&u===u.parent.typeName||u.parent.kind===206&&u.parent.typeArguments&&u===u.parent.qualifier)}function kWe(u,m){if(u.symbol&&u.symbol.declarations&&u.symbol.declarations.length===1){let D=u.symbol.declarations[0].parent;for(let P=m;P!==D;P=P.parent)if(!P||P.kind===242||P.kind===195&&Lu(P.extendsType,v))return!0;return v(m)}return!0;function v(D){switch(D.kind){case 198:return!!u.isThisType;case 80:return!u.isThisType&&ww(D)&&z5s(D)&&ghn(D)===u;case 187:let P=D.exprName,Y=B0(P);if(!vF(Y)){let oe=L0(Y),Be=u.symbol.declarations[0],Oe=Be.kind===169?Be.parent:u.isThisType?Be:void 0;if(oe.declarations&&Oe)return jt(oe.declarations,He=>EP(He,Oe))||jt(D.typeArguments,v)}return!0;case 175:case 174:return!D.type&&!!D.body||jt(D.typeParameters,v)||jt(D.parameters,v)||!!D.type&&v(D.type)}return!!Lu(D,v)}}function B2e(u){let m=_S(u);if(m.flags&4194304){let v=aZ(m.type);if(v.flags&262144)return v}}function q5s(u,m,v,D){let P=B2e(u);if(P){let oe=_l(P,m);if(P!==oe)return Cmn(JB(oe),Y,v,D)}return _l(_S(u),m)===Ni?Ni:yUt(u,m,v,D);function Y(oe){if(oe.flags&61603843&&oe!==Ni&&!uo(oe)){if(!u.declaration.nameType){let Be;if(Nv(oe)||oe.flags&1&&rt(P,4)<0&&(Be=Xy(P))&&RE(Be,L5))return eMs(oe,u,yK(P,oe,m));if(yA(oe))return $5s(oe,u,P,m);if(jfn(oe))return Kg(At(oe.types,Y))}return yUt(u,yK(P,oe,m))}return oe}}function hhn(u,m){return m&1?!0:m&2?!1:u}function $5s(u,m,v,D){let P=u.target.elementFlags,Y=u.target.fixedLength,oe=Y?yK(v,u,D):D,Be=At(WQ(u),(Vt,kt)=>{let vr=P[kt];return ktVt&1?2:Vt):Oe&8?At(P,Vt=>Vt&2?1:Vt):P,qe=hhn(u.target.readonly,fk(m));return k(Be,nn)?nn:hk(Be,He,qe,u.target.labeledElementDeclarations)}function eMs(u,m,v){let D=mhn(m,ri,!0,v);return uo(D)?nn:d0(D,hhn(Hpe(u),fk(m)))}function mhn(u,m,v,D){let P=v2e(D,jw(u),m),Y=_l(qx(u.target||u),P),oe=fk(u);return ot&&oe&4&&!ah(Y,49152)?mW(Y,!0):ot&&oe&8&&v?Dv(Y,524288):Y}function yUt(u,m,v,D){pe.assert(u.symbol,"anonymous type must have symbol to be instantiated");let P=Lh(u.objectFlags&-1572865|64,u.symbol);if(u.objectFlags&32){P.declaration=u.declaration;let Y=jw(u),oe=CUt(Y);P.typeParameter=oe,m=F5(HQ(Y,oe),m),oe.mapper=m}return u.objectFlags&8388608&&(P.node=u.node),P.target=u,P.mapper=m,P.aliasSymbol=v||u.aliasSymbol,P.aliasTypeArguments=v?D:cZ(u.aliasTypeArguments,m),P.objectFlags|=P.aliasTypeArguments?yWe(P.aliasTypeArguments):0,P}function bUt(u,m,v,D,P){let Y=u.root;if(Y.outerTypeParameters){let oe=At(Y.outerTypeParameters,He=>w9(He,m)),Be=(v?"C":"")+UB(oe)+IK(D,P),Oe=Y.instantiations.get(Be);if(!Oe){let He=N1(Y.outerTypeParameters,oe),qe=Y.checkType,Vt=Y.isDistributive?JB(w9(qe,He)):void 0;Oe=Vt&&qe!==Vt&&Vt.flags&1179648?Cmn(Vt,kt=>gUt(Y,yK(qe,kt,He),v),D,P):gUt(Y,He,v,D,P),Y.instantiations.set(Be,Oe)}return Oe}return u}function _l(u,m){return u&&m?Chn(u,m,void 0,void 0):u}function Chn(u,m,v,D){var P;if(!CW(u))return u;if(ee===100||M>=5e6)return(P=ki)==null||P.instant(ki.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:u.id,instantiationDepth:ee,instantiationCount:M}),Sr(ge,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),nn;let Y=WYs(m);Y===-1&&VYs(m);let oe=u.id+IK(v,D),Be=o5[Y!==-1?Y:ak-1],Oe=Be.get(oe);if(Oe)return Oe;V++,M++,ee++;let He=tMs(u,m,v,D);return Y===-1?PYs():Be.set(oe,He),ee--,He}function tMs(u,m,v,D){let P=u.flags;if(P&262144)return w9(u,m);if(P&524288){let Y=u.objectFlags;if(Y&52){if(Y&4&&!u.node){let oe=u.resolvedTypeArguments,Be=cZ(oe,m);return Be!==oe?eUt(u.target,Be):u}return Y&1024?rMs(u,m):j5s(u,m,v,D)}return u}if(P&3145728){let Y=u.flags&1048576?u.origin:void 0,oe=Y&&Y.flags&3145728?Y.types:u.types,Be=cZ(oe,m);if(Be===oe&&v===u.aliasSymbol)return u;let Oe=v||u.aliasSymbol,He=v?D:cZ(u.aliasTypeArguments,m);return P&2097152||Y&&Y.flags&2097152?Kg(Be,0,Oe,He):Ha(Be,1,Oe,He)}if(P&4194304)return ON(_l(u.type,m));if(P&134217728)return hK(u.texts,cZ(u.types,m));if(P&268435456)return wq(u.symbol,_l(u.type,m));if(P&8388608){let Y=v||u.aliasSymbol,oe=v?D:cZ(u.aliasTypeArguments,m);return R1(_l(u.objectType,m),_l(u.indexType,m),u.accessFlags,void 0,Y,oe)}if(P&16777216)return bUt(u,F5(u.mapper,m),!1,v,D);if(P&33554432){let Y=_l(u.baseType,m);if(xse(u))return MJt(Y);let oe=_l(u.constraint,m);return Y.flags&8650752&&G5(oe)?YJt(Y,oe):oe.flags&3||dg(EK(Y),EK(oe))?Y:Y.flags&8650752?YJt(Y,oe):Kg([oe,Y])}return u}function rMs(u,m){let v=_l(u.mappedType,m);if(!(la(v)&32))return u;let D=_l(u.constraintType,m);if(!(D.flags&4194304))return u;let P=zhn(_l(u.source,m),v,D);return P||u}function w2e(u){return u.flags&402915327?u:u.permissiveInstantiation||(u.permissiveInstantiation=_l(u,AI))}function EK(u){return u.flags&402915327?u:(u.restrictiveInstantiation||(u.restrictiveInstantiation=_l(u,wI),u.restrictiveInstantiation.restrictiveInstantiation=u.restrictiveInstantiation),u.restrictiveInstantiation)}function nMs(u,m){return eG(u.keyType,_l(u.type,m),u.isReadonly,u.declaration,u.components)}function bS(u){switch(pe.assert(u.kind!==175||a2(u)),u.kind){case 219:case 220:case 175:case 263:return _hn(u);case 211:return jt(u.properties,bS);case 210:return jt(u.elements,bS);case 228:return bS(u.whenTrue)||bS(u.whenFalse);case 227:return(u.operatorToken.kind===57||u.operatorToken.kind===61)&&(bS(u.left)||bS(u.right));case 304:return bS(u.initializer);case 218:return bS(u.expression);case 293:return jt(u.properties,bS)||$T(u.parent)&&jt(u.parent.parent.children,bS);case 292:{let{initializer:m}=u;return!!m&&bS(m)}case 295:{let{expression:m}=u;return!!m&&bS(m)}}return!1}function _hn(u){return OAe(u)||iMs(u)}function iMs(u){return u.typeParameters||xb(u)||!u.body?!1:u.body.kind!==242?bS(u.body):!!yF(u.body,m=>!!m.expression&&bS(m.expression))}function dot(u){return(RF(u)||a2(u))&&_hn(u)}function yhn(u){if(u.flags&524288){let m=pR(u);if(m.constructSignatures.length||m.callSignatures.length){let v=Lh(16,u.symbol);return v.members=m.members,v.properties=m.properties,v.callSignatures=E,v.constructSignatures=E,v.indexInfos=E,v}}else if(u.flags&2097152)return Kg(At(u.types,yhn));return u}function rG(u,m){return MN(u,m,u0)}function T2e(u,m){return MN(u,m,u0)?-1:0}function EUt(u,m){return MN(u,m,l0)?-1:0}function sMs(u,m){return MN(u,m,ck)?-1:0}function YQ(u,m){return MN(u,m,ck)}function Mpe(u,m){return MN(u,m,bf)}function dg(u,m){return MN(u,m,l0)}function Z5(u,m){return u.flags&1048576?ue(u.types,v=>Z5(v,m)):m.flags&1048576?jt(m.types,v=>Z5(u,v)):u.flags&2097152?jt(u.types,v=>Z5(v,m)):u.flags&58982400?Z5(L_(u)||cn,m):mk(m)?!!(u.flags&67633152):m===qn?!!(u.flags&67633152)&&!mk(u):m===Js?!!(u.flags&524288)&&nKt(u):da(u,vs(m))||Nv(m)&&!Hpe(m)&&Z5(u,uA)}function pot(u,m){return MN(u,m,Ob)}function xWe(u,m){return pot(u,m)||pot(m,u)}function p0(u,m,v,D,P,Y){return Rv(u,m,l0,v,D,P,Y)}function QQ(u,m,v,D,P,Y){return SUt(u,m,l0,v,D,P,Y,void 0)}function SUt(u,m,v,D,P,Y,oe,Be){return MN(u,m,v)?!0:!D||!R2e(P,u,m,v,Y,oe,Be)?Rv(u,m,v,D,Y,oe,Be):!1}function bhn(u){return!!(u.flags&16777216||u.flags&2097152&&jt(u.types,bhn))}function R2e(u,m,v,D,P,Y,oe){if(!u||bhn(v))return!1;if(!Rv(m,v,D,void 0)&&oMs(u,m,v,D,P,Y,oe))return!0;switch(u.kind){case 235:if(!Pbe(u))break;case 295:case 218:return R2e(u.expression,m,v,D,P,Y,oe);case 227:switch(u.operatorToken.kind){case 64:case 28:return R2e(u.right,m,v,D,P,Y,oe)}break;case 211:return pMs(u,m,v,D,Y,oe);case 210:return AMs(u,m,v,D,Y,oe);case 293:return gMs(u,m,v,D,Y,oe);case 220:return aMs(u,m,v,D,Y,oe)}return!1}function oMs(u,m,v,D,P,Y,oe){let Be=tg(m,0),Oe=tg(m,1);for(let He of[Oe,Be])if(jt(He,qe=>{let Vt=ud(qe);return!(Vt.flags&131073)&&Rv(Vt,v,D,void 0)})){let qe=oe||{};p0(m,v,u,P,Y,qe);let Vt=qe.errors[qe.errors.length-1];return lg(Vt,mo(u,He===Oe?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function aMs(u,m,v,D,P,Y){if($u(u.body)||jt(u.parameters,If))return!1;let oe=kK(m);if(!oe)return!1;let Be=tg(v,0);if(!B(Be))return!1;let Oe=u.body,He=ud(oe),qe=Ha(At(Be,ud));if(!Rv(He,qe,D,void 0)){let Vt=Oe&&R2e(Oe,He,qe,D,void 0,P,Y);if(Vt)return Vt;let kt=Y||{};if(Rv(He,qe,D,Oe,void 0,P,kt),kt.errors)return v.symbol&&B(v.symbol.declarations)&&lg(kt.errors[kt.errors.length-1],mo(v.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(SI(u)&2)&&!Pi(He,"then")&&Rv(pOe(He),qe,D,void 0)&&lg(kt.errors[kt.errors.length-1],mo(u,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function Ehn(u,m,v){let D=pW(m,v);if(D)return D;if(m.flags&1048576){let P=Dhn(u,m);if(P)return pW(P,v)}}function Shn(u,m){eOe(u,m,!1);let v=$pe(u,1);return W2e(),v}function GWe(u,m,v,D,P,Y){let oe=!1;for(let Be of u){let{errorNode:Oe,innerExpression:He,nameType:qe,errorMessage:Vt}=Be,kt=Ehn(m,v,qe);if(!kt||kt.flags&8388608)continue;let vr=pW(m,qe);if(!vr)continue;let dn=oot(qe,void 0);if(!Rv(vr,kt,D,void 0)){let vn=He&&R2e(He,vr,kt,D,void 0,P,Y);if(oe=!0,!vn){let ii=Y||{},Yi=He?Shn(He,vr):vr;if(Pt&&Iot(Yi,kt)){let js=mo(Oe,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,no(Yi),no(kt));PA.add(js),ii.errors=[js]}else{let js=!!(dn&&(Gg(v,dn)||it).flags&16777216),Co=!!(dn&&(Gg(m,dn)||it).flags&16777216);kt=AZ(kt,js),vr=AZ(vr,js&&Co),Rv(Yi,kt,D,Oe,Vt,P,ii)&&Yi!==vr&&Rv(vr,kt,D,Oe,Vt,P,ii)}if(ii.errors){let js=ii.errors[ii.errors.length-1],Co=g2(qe)?A2(qe):void 0,Ji=Co!==void 0?Gg(v,Co):void 0,Mi=!1;if(!Ji){let To=h2e(v,qe);To&&To.declaration&&!ms(To.declaration).hasNoDefaultLib&&(Mi=!0,lg(js,mo(To.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Mi&&(Ji&&B(Ji.declarations)||v.symbol&&B(v.symbol.declarations))){let To=Ji&&B(Ji.declarations)?Ji.declarations[0]:v.symbol.declarations[0];ms(To).hasNoDefaultLib||lg(js,mo(To,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,Co&&!(qe.flags&8192)?Bc(Co):no(qe),no(v)))}}}}}return oe}function cMs(u,m,v,D,P,Y){let oe=nm(v,Eot),Be=nm(v,qe=>!Eot(qe)),Oe=Be!==Wi?v8t(13,0,Be,void 0):void 0,He=!1;for(let qe=u.next();!qe.done;qe=u.next()){let{errorNode:Vt,innerExpression:kt,nameType:vr,errorMessage:dn}=qe.value,vn=Oe,ii=oe!==Wi?Ehn(m,oe,vr):void 0;if(ii&&!(ii.flags&8388608)&&(vn=Oe?Ha([Oe,ii]):ii),!vn)continue;let Yi=pW(m,vr);if(!Yi)continue;let js=oot(vr,void 0);if(!Rv(Yi,vn,D,void 0)){let Co=kt&&R2e(kt,Yi,vn,D,void 0,P,Y);if(He=!0,!Co){let Ji=Y||{},Mi=kt?Shn(kt,Yi):Yi;if(Pt&&Iot(Mi,vn)){let To=mo(Vt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,no(Mi),no(vn));PA.add(To),Ji.errors=[To]}else{let To=!!(js&&(Gg(oe,js)||it).flags&16777216),Ka=!!(js&&(Gg(m,js)||it).flags&16777216);vn=AZ(vn,To),Yi=AZ(Yi,To&&Ka),Rv(Mi,vn,D,Vt,dn,P,Ji)&&Mi!==Yi&&Rv(Yi,vn,D,Vt,dn,P,Ji)}}}}return He}function*lMs(u){if(B(u.properties))for(let m of u.properties)yz(m)||BKt(xw(m.name))||(yield{errorNode:m.name,innerExpression:m.initializer,nameType:TE(xw(m.name))})}function*uMs(u,m){if(!B(u.children))return;let v=0;for(let D=0;D1,ii,Yi;if(sot(!1)!==oi){let Co=xIn(hr);ii=nm(vr,Ji=>dg(Ji,Co)),Yi=nm(vr,Ji=>!dg(Ji,Co))}else ii=nm(vr,Eot),Yi=nm(vr,Co=>!Eot(Co));if(vn){if(ii!==Wi){let Co=hk(zot(He,0)),Ji=uMs(He,Oe);oe=cMs(Ji,Co,ii,D,P,Y)||oe}else if(!MN(R1(m,kt),vr,D)){oe=!0;let Co=Sr(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Vt,no(vr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}else if(Yi!==Wi){let Co=dn[0],Ji=vhn(Co,kt,Oe);Ji&&(oe=GWe(function*(){yield Ji}(),m,v,D,P,Y)||oe)}else if(!MN(R1(m,kt),vr,D)){oe=!0;let Co=Sr(He.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Vt,no(vr));Y&&Y.skipLogging&&(Y.errors||(Y.errors=[])).push(Co)}}return oe;function Oe(){if(!Be){let He=xp(u.parent.tagName),qe=rOe(NK(u)),Vt=qe===void 0?"children":Bc(qe),kt=R1(v,TE(Vt)),vr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Be={...vr,key:"!!ALREADY FORMATTED!!",message:XY(vr,He,Vt,no(kt))}}return Be}}function*Bhn(u,m){let v=B(u.elements);if(v)for(let D=0;DOe:_R(u)>Oe))return D&&!(v&8)&&P(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,_R(u),Oe),0;u.typeParameters&&u.typeParameters!==m.typeParameters&&(m=I3s(m),u=LCn(u,m,void 0,oe));let qe=NE(u),Vt=U2e(u),kt=U2e(m);(Vt||kt)&&_l(Vt||kt,Be);let vr=m.declaration?m.declaration.kind:0,dn=!(v&3)&&Qe&&vr!==175&&vr!==174&&vr!==177,vn=-1,ii=k5(u);if(ii&&ii!==es){let Co=k5(m);if(Co){let Ji=!dn&&oe(ii,Co,!1)||oe(Co,ii,D);if(!Ji)return D&&P(Z.The_this_types_of_each_signature_are_incompatible),0;vn&=Ji}}let Yi=Vt||kt?Math.min(qe,Oe):Math.max(qe,Oe),js=Vt||kt?Yi-1:-1;for(let Co=0;Co=_R(u)&&Co<_R(m)&&oe(Ji,Mi,!1)&&(ka=0),!ka)return D&&P(Z.Types_of_parameters_0_and_1_are_incompatible,Bc(jpe(u,Co)),Bc(jpe(m,Co))),0;vn&=ka}}if(!(v&4)){let Co=Jst(m)?hr:m.declaration&&YN(m.declaration)?wv(jA(m.declaration.symbol)):ud(m);if(Co===es||Co===hr)return vn;let Ji=Jst(u)?hr:u.declaration&&YN(u.declaration)?wv(jA(u.declaration.symbol)):ud(u),Mi=Tv(m);if(Mi){let To=Tv(u);if(To)vn&=IMs(To,Mi,D,P,oe);else if(rZe(Mi)||nZe(Mi))return D&&P(Z.Signature_0_must_be_a_type_predicate,lW(u)),0}else vn&=v&1&&oe(Co,Ji,!1)||oe(Ji,Co,D),!vn&&D&&Y&&Y(Ji,Co)}return vn}function IMs(u,m,v,D,P){if(u.kind!==m.kind)return v&&(D(Z.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m))),0;if((u.kind===1||u.kind===3)&&u.parameterIndex!==m.parameterIndex)return v&&(D(Z.Parameter_0_is_not_in_the_same_position_as_parameter_1,u.parameterName,m.parameterName),D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m))),0;let Y=u.type===m.type?-1:u.type&&m.type?P(u.type,m.type,v):0;return Y===0&&v&&D(Z.Type_predicate_0_is_not_assignable_to_1,gk(u),gk(m)),Y}function hMs(u,m){let v=y2e(u),D=y2e(m),P=ud(v),Y=ud(D);return Y===es||MN(Y,P,l0)||MN(P,Y,l0)?fMs(v,D,!0):!1}function BUt(u){return u!==$d&&u.properties.length===0&&u.callSignatures.length===0&&u.constructSignatures.length===0&&u.indexInfos.length===0}function lZ(u){return u.flags&524288?!Yb(u)&&BUt(pR(u)):u.flags&67108864?!0:u.flags&1048576?jt(u.types,lZ):u.flags&2097152?ue(u.types,lZ):!1}function mk(u){return!!(la(u)&16&&(u.members&&BUt(u)||u.symbol&&u.symbol.flags&2048&&pk(u.symbol).size===0))}function mMs(u){if(ot&&u.flags&1048576){if(!(u.objectFlags&33554432)){let m=u.types;u.objectFlags|=33554432|(m.length>=3&&m[0].flags&32768&&m[1].flags&65536&&jt(m,mk)?67108864:0)}return!!(u.objectFlags&67108864)}return!1}function Zse(u){return!!((u.flags&1048576?u.types[0]:u).flags&32768)}function CMs(u){let m=u.flags&1048576?u.types[0]:u;return!!(m.flags&32768)&&m!==fr}function Thn(u){return u.flags&524288&&!Yb(u)&&Gd(u).length===0&&A0(u).length===1&&!!$x(u,$r)||u.flags&3145728&&ue(u.types,Thn)||!1}function wUt(u,m,v){let D=u.flags&8?$m(u):u,P=m.flags&8?$m(m):m;if(D===P)return!0;if(D.escapedName!==P.escapedName||!(D.flags&256)||!(P.flags&256))return!1;let Y=kg(D)+","+kg(P),oe=g5.get(Y);if(oe!==void 0&&!(oe&2&&v))return!!(oe&1);let Be=Io(P);for(let Oe of Gd(Io(D)))if(Oe.flags&8){let He=Gg(Be,Oe.escapedName);if(!He||!(He.flags&8))return v&&v(Z.Property_0_is_missing_in_type_1,nf(Oe),no(Fp(P),void 0,64)),g5.set(Y,2),!1;let qe=GK(Cp(Oe,307)).value,Vt=GK(Cp(He,307)).value;if(qe!==Vt){let kt=typeof qe=="string",vr=typeof Vt=="string";if(qe!==void 0&&Vt!==void 0){if(v){let dn=kt?`"${YT(qe)}"`:qe,vn=vr?`"${YT(Vt)}"`:Vt;v(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,nf(P),nf(He),vn,dn)}return g5.set(Y,2),!1}if(kt||vr){if(v){let dn=qe??Vt;pe.assert(typeof dn=="string");let vn=`"${YT(dn)}"`;v(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,nf(P),nf(He),vn)}return g5.set(Y,2),!1}}}return g5.set(Y,1),!0}function N2e(u,m,v,D){let P=u.flags,Y=m.flags;return Y&1||P&131072||u===Ni||Y&2&&!(v===bf&&P&1)?!0:Y&131072?!1:!!(P&402653316&&Y&4||P&128&&P&1024&&Y&128&&!(Y&1024)&&u.value===m.value||P&296&&Y&8||P&256&&P&1024&&Y&256&&!(Y&1024)&&u.value===m.value||P&2112&&Y&64||P&528&&Y&16||P&12288&&Y&4096||P&32&&Y&32&&u.symbol.escapedName===m.symbol.escapedName&&wUt(u.symbol,m.symbol,D)||P&1024&&Y&1024&&(P&1048576&&Y&1048576&&wUt(u.symbol,m.symbol,D)||P&2944&&Y&2944&&u.value===m.value&&wUt(u.symbol,m.symbol,D))||P&32768&&(!ot&&!(Y&3145728)||Y&49152)||P&65536&&(!ot&&!(Y&3145728)||Y&65536)||P&524288&&Y&67108864&&!(v===bf&&mk(u)&&!(la(u)&8192))||(v===l0||v===Ob)&&(P&1||P&8&&(Y&32||Y&256&&Y&1024)||P&256&&!(P&1024)&&(Y&32||Y&256&&Y&1024&&u.value===m.value)||mMs(m)))}function MN(u,m,v){if(MQ(u)&&(u=u.regularType),MQ(m)&&(m=m.regularType),u===m)return!0;if(v!==u0){if(v===Ob&&!(m.flags&131072)&&N2e(m,u,v)||N2e(u,m,v))return!0}else if(!((u.flags|m.flags)&61865984)){if(u.flags!==m.flags)return!1;if(u.flags&67358815)return!0}if(u.flags&524288&&m.flags&524288){let D=v.get(Cot(u,m,0,v,!1));if(D!==void 0)return!!(D&1)}return u.flags&469499904||m.flags&469499904?Rv(u,m,v,void 0):!1}function Rhn(u,m){return la(u)&2048&&BKt(m.escapedName)}function FWe(u,m){for(;;){let v=MQ(u)?u.regularType:hW(u)?bMs(u,m):la(u)&4?u.node?iZ(u.target,lf(u)):FUt(u)||u:u.flags&3145728?_Ms(u,m):u.flags&33554432?m?u.baseType:QJt(u):u.flags&25165824?oZ(u,m):u;if(v===u)return v;u=v}}function _Ms(u,m){let v=JB(u);if(v!==u)return v;if(u.flags&2097152&&yMs(u)){let D=Tr(u.types,P=>FWe(P,m));if(D!==u.types)return Kg(D)}return u}function yMs(u){let m=!1,v=!1;for(let D of u.types)if(m||(m=!!(D.flags&465829888)),v||(v=!!(D.flags&98304)||mk(D)),m&&v)return!0;return!1}function bMs(u,m){let v=WQ(u),D=Tr(v,P=>P.flags&25165824?oZ(P,m):P);return v!==D?tUt(u.target,D):u}function Rv(u,m,v,D,P,Y,oe){var Be;let Oe,He,qe,Vt,kt,vr,dn=0,vn=0,ii=0,Yi=0,js=!1,Co=0,Ji=0,Mi,To,Ka=16e6-v.size>>3;pe.assert(v!==u0||!D,"no error reporting in identity checking");let yl=_o(u,m,3,!!D,P);if(To&&gd(),js){let Qt=Cot(u,m,0,v,!1);v.set(Qt,2|(Ka<=0?32:64)),(Be=ki)==null||Be.instant(ki.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:u.id,targetId:m.id,depth:vn,targetDepth:ii});let Cr=Ka<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,jr=Sr(D||ge,Cr,no(u),no(m));oe&&(oe.errors||(oe.errors=[])).push(jr)}else if(Oe){if(Y){let jr=Y();jr&&(Fne(jr,Oe),Oe=jr)}let Qt;if(P&&D&&!yl&&u.symbol){let jr=fa(u.symbol);if(jr.originatingImport&&!Up(jr.originatingImport)&&Rv(Io(jr.target),m,v,void 0)){let yi=mo(jr.originatingImport,Z.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);Qt=Ft(Qt,yi)}}let Cr=Bw(ms(D),D,Oe,Qt);He&&lg(Cr,...He),oe&&(oe.errors||(oe.errors=[])).push(Cr),(!oe||!oe.skipLogging)&&PA.add(Cr)}return D&&oe&&oe.skipLogging&&yl===0&&pe.assert(!!oe.errors,"missed opportunity to interact with error."),yl!==0;function ka(Qt){Oe=Qt.errorInfo,Mi=Qt.lastSkippedInfo,To=Qt.incompatibleStack,Co=Qt.overrideNextErrorInfo,Ji=Qt.skipParentCounter,He=Qt.relatedInfo}function Kc(){return{errorInfo:Oe,lastSkippedInfo:Mi,incompatibleStack:To?.slice(),overrideNextErrorInfo:Co,skipParentCounter:Ji,relatedInfo:He?.slice()}}function Vu(Qt,...Cr){Co++,Mi=void 0,(To||(To=[])).push([Qt,...Cr])}function gd(){let Qt=To||[];To=void 0;let Cr=Mi;if(Mi=void 0,Qt.length===1){Ll(...Qt[0]),Cr&&V0(void 0,...Cr);return}let jr="",Qn=[];for(;Qt.length;){let[yi,...Xn]=Qt.pop();switch(yi.code){case Z.Types_of_property_0_are_incompatible.code:{jr.indexOf("new ")===0&&(jr=`(${jr})`);let Ti=""+Xn[0];jr.length===0?jr=`${Ti}`:Uh(Ti,Mg(Te))?jr=`${jr}.${Ti}`:Ti[0]==="["&&Ti[Ti.length-1]==="]"?jr=`${jr}${Ti}`:jr=`${jr}[${Ti}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(jr.length===0){let Ti=yi;yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?Ti=Z.Call_signature_return_types_0_and_1_are_incompatible:yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(Ti=Z.Construct_signature_return_types_0_and_1_are_incompatible),Qn.unshift([Ti,Xn[0],Xn[1]])}else{let Ti=yi.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",Us=yi.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||yi.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";jr=`${Ti}${jr}(${Us})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Qn.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Xn[0],Xn[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Qn.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Xn[0],Xn[1],Xn[2]]);break}default:return pe.fail(`Unhandled Diagnostic: ${yi.code}`)}}jr?Ll(jr[jr.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,jr):Qn.shift();for(let[yi,...Xn]of Qn){let Ti=yi.elidedInCompatabilityPyramid;yi.elidedInCompatabilityPyramid=!1,Ll(yi,...Xn),yi.elidedInCompatabilityPyramid=Ti}Cr&&V0(void 0,...Cr)}function Ll(Qt,...Cr){pe.assert(!!D),To&&gd(),!Qt.elidedInCompatabilityPyramid&&(Ji===0?Oe=wu(Oe,Qt,...Cr):Ji--)}function Ef(Qt,...Cr){Ll(Qt,...Cr),Ji++}function UI(Qt){pe.assert(!!Oe),He?He.push(Qt):He=[Qt]}function V0(Qt,Cr,jr){To&&gd();let[Qn,yi]=Bpe(Cr,jr),Xn=Cr,Ti=Qn;if(!(jr.flags&131072)&&D2e(Cr)&&!TUt(jr)&&(Xn=uZ(Cr),pe.assert(!dg(Xn,jr),"generalized source shouldn't be assignable"),Ti=bse(Xn)),(jr.flags&8388608&&!(Cr.flags&8388608)?jr.objectType.flags:jr.flags)&262144&&jr!==mr&&jr!==ln){let No=L_(jr),zo;No&&(dg(Xn,No)||(zo=dg(Cr,No)))?Ll(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,zo?Qn:Ti,yi,no(No)):(Oe=void 0,Ll(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,yi,Ti))}if(Qt)Qt===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&Pt&&Nhn(Cr,jr).length&&(Qt=Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties);else if(v===Ob)Qt=Z.Type_0_is_not_comparable_to_type_1;else if(Qn===yi)Qt=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(Pt&&Nhn(Cr,jr).length)Qt=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(Cr.flags&128&&jr.flags&1048576){let No=WQs(Cr,jr);if(No){Ll(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,Ti,yi,no(No));return}}Qt=Z.Type_0_is_not_assignable_to_type_1}Ll(Qt,Ti,yi)}function xs(Qt,Cr){let jr=Ese(Qt.symbol)?no(Qt,Qt.symbol.valueDeclaration):no(Qt),Qn=Ese(Cr.symbol)?no(Cr,Cr.symbol.valueDeclaration):no(Cr);(hm===Qt&&$r===Cr||af===Qt&&ri===Cr||dI===Qt&&Mn===Cr||BIn()===Qt&&ci===Cr)&&Ll(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Qn,jr)}function eo(Qt,Cr,jr){return yA(Qt)?Qt.target.readonly&&PWe(Cr)?(jr&&Ll(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,no(Qt),no(Cr)),!1):L5(Cr):Hpe(Qt)&&PWe(Cr)?(jr&&Ll(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,no(Qt),no(Cr)),!1):yA(Cr)?Nv(Qt):!0}function qc(Qt,Cr,jr){return _o(Qt,Cr,3,jr)}function _o(Qt,Cr,jr=3,Qn=!1,yi,Xn=0){if(Qt===Cr)return-1;if(Qt.flags&524288&&Cr.flags&402784252)return v===Ob&&!(Cr.flags&131072)&&N2e(Cr,Qt,v)||N2e(Qt,Cr,v,Qn?Ll:void 0)?-1:(Qn&&du(Qt,Cr,Qt,Cr,yi),0);let Ti=FWe(Qt,!1),Us=FWe(Cr,!0);if(Ti===Us)return-1;if(v===u0)return Ti.flags!==Us.flags?0:Ti.flags&67358815?-1:(Bd(Ti,Us),lSe(Ti,Us,!1,0,jr));if(Ti.flags&262144&&dK(Ti)===Us)return-1;if(Ti.flags&470302716&&Us.flags&1048576){let No=Us.types,zo=No.length===2&&No[0].flags&98304?No[1]:No.length===3&&No[0].flags&98304&&No[1].flags&98304?No[2]:void 0;if(zo&&!(zo.flags&98304)&&(Us=FWe(zo,!0),Ti===Us))return-1}if(v===Ob&&!(Us.flags&131072)&&N2e(Us,Ti,v)||N2e(Ti,Us,v,Qn?Ll:void 0))return-1;if(Ti.flags&469499904||Us.flags&469499904){if(!(Xn&2)&&R9(Ti)&&la(Ti)&8192&&JC(Ti,Us,Qn))return Qn&&V0(yi,Ti,Cr.aliasSymbol?Cr:Us),0;let zo=(v!==Ob||IR(Ti))&&!(Xn&2)&&Ti.flags&405405692&&Ti!==qn&&Us.flags&2621440&&NUt(Us)&&(Gd(Ti).length>0||Gat(Ti)),za=!!(la(Ti)&2048);if(zo&&!SMs(Ti,Us,za)){if(Qn){let _c=no(Qt.aliasSymbol?Qt:Ti),nu=no(Cr.aliasSymbol?Cr:Us),DA=tg(Ti,0),Li=tg(Ti,1);DA.length>0&&_o(ud(DA[0]),Us,1,!1)||Li.length>0&&_o(ud(Li[0]),Us,1,!1)?Ll(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,_c,nu):Ll(Z.Type_0_has_no_properties_in_common_with_type_1,_c,nu)}return 0}Bd(Ti,Us);let to=Ti.flags&1048576&&Ti.types.length<4&&!(Us.flags&1048576)||Us.flags&1048576&&Us.types.length<4&&!(Ti.flags&469499904)?yh(Ti,Us,Qn,Xn):lSe(Ti,Us,Qn,Xn,jr);if(to)return to}return Qn&&du(Qt,Cr,Ti,Us,yi),0}function du(Qt,Cr,jr,Qn,yi){var Xn,Ti;let Us=!!FUt(Qt),No=!!FUt(Cr);jr=Qt.aliasSymbol||Us?Qt:jr,Qn=Cr.aliasSymbol||No?Cr:Qn;let zo=Co>0;if(zo&&Co--,jr.flags&524288&&Qn.flags&524288){let za=Oe;eo(jr,Qn,!0),Oe!==za&&(zo=!!Oe)}if(jr.flags&524288&&Qn.flags&402784252)xs(jr,Qn);else if(jr.symbol&&jr.flags&524288&&qn===jr)Ll(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(la(jr)&2048&&Qn.flags&2097152){let za=Qn.types,La=UQ(lS.IntrinsicAttributes,D),to=UQ(lS.IntrinsicClassAttributes,D);if(!uo(La)&&!uo(to)&&(k(za,La)||k(za,to)))return}else Oe=GJt(Oe,Cr);if(!yi&&zo){let za=Kc();V0(yi,jr,Qn);let La;Oe&&Oe!==za.errorInfo&&(La={code:Oe.code,messageText:Oe.messageText}),ka(za),La&&Oe&&(Oe.canonicalHead=La),Mi=[jr,Qn];return}if(V0(yi,jr,Qn),jr.flags&262144&&((Ti=(Xn=jr.symbol)==null?void 0:Xn.declarations)!=null&&Ti[0])&&!dK(jr)){let za=CUt(jr);if(za.constraint=_l(Qn,HQ(jr,za)),mWe(za)){let La=no(Qn,jr.symbol.declarations[0]);UI(mo(jr.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,La))}}}function Bd(Qt,Cr){if(ki&&Qt.flags&3145728&&Cr.flags&3145728){let jr=Qt,Qn=Cr;if(jr.objectFlags&Qn.objectFlags&32768)return;let yi=jr.types.length,Xn=Qn.types.length;yi*Xn>1e6&&ki.instant(ki.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Qt.id,sourceSize:yi,targetId:Cr.id,targetSize:Xn,pos:D?.pos,end:D?.end})}}function uf(Qt,Cr){return Ha(Ul(Qt,(Qn,yi)=>{var Xn;yi=fy(yi);let Ti=yi.flags&3145728?CWe(yi,Cr):LQ(yi,Cr),Us=Ti&&Io(Ti)||((Xn=vq(yi,Cr))==null?void 0:Xn.type)||Bt;return Ft(Qn,Us)},void 0)||E)}function JC(Qt,Cr,jr){var Qn;if(!H2e(Cr)||!Rt&&la(Cr)&4096)return!1;let yi=!!(la(Qt)&2048);if((v===l0||v===Ob)&&(Jpe(qn,Cr)||!yi&&lZ(Cr)))return!1;let Xn=Cr,Ti;Cr.flags&1048576&&(Xn=oyn(Qt,Cr,_o)||j8s(Cr),Ti=Xn.flags&1048576?Xn.types:[Xn]);for(let Us of Gd(Qt))if(bA(Us,Qt.symbol)&&!Rhn(Qt,Us)){if(!eat(Xn,Us.escapedName,yi)){if(jr){let No=nm(Xn,H2e);if(!D)return pe.fail();if(nQ(D)||eI(D)||eI(D.parent)){Us.valueDeclaration&&EN(Us.valueDeclaration)&&ms(D)===ms(Us.valueDeclaration.name)&&(D=Us.valueDeclaration.name);let zo=kl(Us),za=wCn(zo,No),La=za?kl(za):void 0;La?Ll(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,zo,no(No),La):Ll(Z.Property_0_does_not_exist_on_type_1,zo,no(No))}else{let zo=((Qn=Qt.symbol)==null?void 0:Qn.declarations)&&Nc(Qt.symbol.declarations),za;if(Us.valueDeclaration&&ji(Us.valueDeclaration,La=>La===zo)&&ms(zo)===ms(D)){let La=Us.valueDeclaration;pe.assertNode(La,yw);let to=La.name;D=to,Ir(to)&&(za=TCn(to,No))}za!==void 0?Ef(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,kl(Us),no(No),za):Ef(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,kl(Us),no(No))}}return!0}if(Ti&&!_o(Io(Us),uf(Ti,Us.escapedName),3,jr))return jr&&Vu(Z.Types_of_property_0_are_incompatible,kl(Us)),!0}return!1}function bA(Qt,Cr){return Qt.valueDeclaration&&Cr.valueDeclaration&&Qt.valueDeclaration.parent===Cr.valueDeclaration}function yh(Qt,Cr,jr,Qn){if(Qt.flags&1048576){if(Cr.flags&1048576){let yi=Qt.origin;if(yi&&yi.flags&2097152&&Cr.aliasSymbol&&k(yi.types,Cr))return-1;let Xn=Cr.origin;if(Xn&&Xn.flags&1048576&&Qt.aliasSymbol&&k(Xn.types,Qt))return-1}return v===Ob?Qf(Qt,Cr,jr&&!(Qt.flags&402784252),Qn):Gv(Qt,Cr,jr&&!(Qt.flags&402784252),Qn)}if(Cr.flags&1048576)return Fd(G2e(Qt),Cr,jr&&!(Qt.flags&402784252)&&!(Cr.flags&402784252),Qn);if(Cr.flags&2097152)return ES(Qt,Cr,jr,2);if(v===Ob&&Cr.flags&402784252){let yi=Tr(Qt.types,Xn=>Xn.flags&465829888?L_(Xn)||cn:Xn);if(yi!==Qt.types){if(Qt=Kg(yi),Qt.flags&131072)return 0;if(!(Qt.flags&2097152))return _o(Qt,Cr,1,!1)||_o(Cr,Qt,1,!1)}}return Qf(Qt,Cr,!1,1)}function Vh(Qt,Cr){let jr=-1,Qn=Qt.types;for(let yi of Qn){let Xn=Fd(yi,Cr,!1,0);if(!Xn)return 0;jr&=Xn}return jr}function Fd(Qt,Cr,jr,Qn){let yi=Cr.types;if(Cr.flags&1048576){if(tG(yi,Qt))return-1;if(v!==Ob&&la(Cr)&32768&&!(Qt.flags&1024)&&(Qt.flags&2688||(v===ck||v===bf)&&Qt.flags&256)){let Ti=Qt===Qt.regularType?Qt.freshType:Qt.regularType,Us=Qt.flags&128?$r:Qt.flags&256?ri:Qt.flags&2048?ao:void 0;return Us&&tG(yi,Us)||Ti&&tG(yi,Ti)?-1:0}let Xn=amn(Cr,Qt);if(Xn){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}}for(let Xn of yi){let Ti=_o(Qt,Xn,2,!1,void 0,Qn);if(Ti)return Ti}if(jr){let Xn=Dhn(Qt,Cr,_o);Xn&&_o(Qt,Xn,2,!0,void 0,Qn)}return 0}function ES(Qt,Cr,jr,Qn){let yi=-1,Xn=Cr.types;for(let Ti of Xn){let Us=_o(Qt,Ti,2,jr,void 0,Qn);if(!Us)return 0;yi&=Us}return yi}function Qf(Qt,Cr,jr,Qn){let yi=Qt.types;if(Qt.flags&1048576&&tG(yi,Cr))return-1;let Xn=yi.length;for(let Ti=0;Ti=Ti.types.length&&Xn.length%Ti.types.length===0){let za=_o(No,Ti.types[Us%Ti.types.length],3,!1,void 0,Qn);if(za){yi&=za;continue}}let zo=_o(No,Cr,1,jr,void 0,Qn);if(!zo)return 0;yi&=zo}return yi}function sfe(Qt=E,Cr=E,jr=E,Qn,yi){if(Qt.length!==Cr.length&&v===u0)return 0;let Xn=Qt.length<=Cr.length?Qt.length:Cr.length,Ti=-1;for(let Us=0;Us(_c|=Li?16:8,to(Li)));let nu;return Yi===3?((Xn=ki)==null||Xn.instant(ki.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Qt.id,sourceIdStack:kt.map(Li=>Li.id),targetId:Cr.id,targetIdStack:vr.map(Li=>Li.id),depth:vn,targetDepth:ii}),nu=3):((Ti=ki)==null||Ti.push(ki.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Qt.id,targetId:Cr.id}),nu=ofe(Qt,Cr,jr,Qn),(Us=ki)==null||Us.pop()),yu&&(yu=to),yi&1&&vn--,yi&2&&ii--,Yi=La,nu?(nu===-1||vn===0&&ii===0)&&DA(nu===-1||nu===3):(v.set(No,2|_c),Ka--,DA(!1)),nu;function DA(Li){for(let ta=za;taUs!==Qt)&&(Xn=_o(Ti,Cr,1,!1,void 0,Qn))}Xn&&!(Qn&2)&&Cr.flags&2097152&&!CK(Cr)&&Qt.flags&2621440?(Xn&=jg(Qt,Cr,jr,void 0,!1,0),Xn&&R9(Qt)&&la(Qt)&8192&&(Xn&=$t(Qt,Cr,!1,jr,0))):Xn&&cot(Cr)&&!L5(Cr)&&Qt.flags&2097152&&fy(Qt).flags&3670016&&!jt(Qt.types,Ti=>Ti===Cr||!!(la(Ti)&262144))&&(Xn&=jg(Qt,Cr,jr,void 0,!0,Qn))}return Xn&&ka(yi),Xn}function y2(Qt,Cr){let jr=fy(N5(Cr)),Qn=[];return wJt(jr,8576,!1,yi=>void Qn.push(_l(Qt,v2e(Cr.mapper,jw(Cr),yi)))),Ha(Qn)}function uSe(Qt,Cr,jr,Qn,yi){let Xn,Ti,Us=!1,No=Qt.flags,zo=Cr.flags;if(v===u0){if(No&3145728){let to=Vh(Qt,Cr);return to&&(to&=Vh(Cr,Qt)),to}if(No&4194304)return _o(Qt.type,Cr.type,3,!1);if(No&8388608&&(Xn=_o(Qt.objectType,Cr.objectType,3,!1))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,!1))||No&16777216&&Qt.root.isDistributive===Cr.root.isDistributive&&(Xn=_o(Qt.checkType,Cr.checkType,3,!1))&&(Xn&=_o(Qt.extendsType,Cr.extendsType,3,!1))&&(Xn&=_o(fW(Qt),fW(Cr),3,!1))&&(Xn&=_o(IW(Qt),IW(Cr),3,!1))||No&33554432&&(Xn=_o(Qt.baseType,Cr.baseType,3,!1))&&(Xn&=_o(Qt.constraint,Cr.constraint,3,!1)))return Xn;if(No&134217728&&Sc(Qt.texts,Cr.texts)){let to=Qt.types,_c=Cr.types;Xn=-1;for(let nu=0;nu!!(_c.flags&262144));){if(Xn=_o(to,Cr,1,!1))return Xn;to=Xy(to)}return 0}}else if(zo&4194304){let to=Cr.type;if(No&4194304&&(Xn=_o(to,Qt.type,3,!1)))return Xn;if(yA(to)){if(Xn=_o(Qt,LIn(to),2,jr))return Xn}else{let _c=TJt(to);if(_c){if(_o(Qt,ON(_c,Cr.indexFlags|4),2,jr)===-1)return-1}else if(Yb(to)){let nu=E9(to),DA=_S(to),Li;if(nu&&Rse(to)){let ta=y2(nu,to);Li=Ha([ta,nu])}else Li=nu||DA;if(_o(Qt,Li,2,jr)===-1)return-1}}}else if(zo&8388608){if(No&8388608){if((Xn=_o(Qt.objectType,Cr.objectType,3,jr))&&(Xn&=_o(Qt.indexType,Cr.indexType,3,jr)),Xn)return Xn;jr&&(Ti=Oe)}if(v===l0||v===Ob){let to=Cr.objectType,_c=Cr.indexType,nu=L_(to)||to,DA=L_(_c)||_c;if(!CK(nu)&&!_K(DA)){let Li=4|(nu!==to?2:0),ta=pW(nu,DA,Li);if(ta){if(jr&&Ti&&ka(yi),Xn=_o(Qt,ta,2,jr,void 0,Qn))return Xn;jr&&Ti&&Oe&&(Oe=za([Ti])<=za([Oe])?Ti:Oe)}}}jr&&(Ti=void 0)}else if(Yb(Cr)&&v!==u0){let to=!!Cr.declaration.nameType,_c=qx(Cr),nu=fk(Cr);if(!(nu&8)){if(!to&&_c.flags&8388608&&_c.objectType===Qt&&_c.indexType===jw(Cr))return-1;if(!Yb(Qt)){let DA=to?E9(Cr):_S(Cr),Li=ON(Qt,2),ta=nu&4,mu=ta?fWe(DA,Li):void 0;if(ta?!(mu.flags&131072):_o(DA,Li,3)){let Jl=qx(Cr),EA=jw(Cr),Ad=Upe(Jl,-98305);if(!to&&Ad.flags&8388608&&Ad.indexType===EA){if(Xn=_o(Qt,Ad.objectType,2,jr))return Xn}else{let ou=to?mu||DA:mu?Kg([mu,EA]):EA,mm=R1(Qt,ou);if(Xn=_o(mm,Jl,3,jr))return Xn}}Ti=Oe,ka(yi)}}}else if(zo&16777216){if(Dq(Cr,vr,ii,10))return 3;let to=Cr;if(!to.root.inferTypeParameters&&!V5s(to.root)&&!(Qt.flags&16777216&&Qt.root===to.root)){let _c=!dg(w2e(to.checkType),w2e(to.extendsType)),nu=!_c&&dg(EK(to.checkType),EK(to.extendsType));if((Xn=_c?-1:_o(Qt,fW(to),2,!1,void 0,Qn))&&(Xn&=nu?-1:_o(Qt,IW(to),2,!1,void 0,Qn),Xn))return Xn}}else if(zo&134217728){if(No&134217728){if(v===Ob)return AHs(Qt,Cr)?0:-1;_l(Qt,tm)}if(Got(Qt,Cr))return-1}else if(Cr.flags&268435456&&!(Qt.flags&268435456)&&xot(Qt,Cr))return-1;if(No&8650752){if(!(No&8388608&&zo&8388608)){let to=dK(Qt)||cn;if(Xn=_o(to,Cr,1,!1,void 0,Qn))return Xn;if(Xn=_o(T1(to,Qt),Cr,1,jr&&to!==cn&&!(zo&No&262144),void 0,Qn))return Xn;if(kJt(Qt)){let _c=dK(Qt.indexType);if(_c&&(Xn=_o(R1(Qt.objectType,_c),Cr,1,jr)))return Xn}}}else if(No&4194304){let to=aUt(Qt.type,Qt.indexFlags)&&la(Qt.type)&32;if(Xn=_o(mc,Cr,1,jr&&!to))return Xn;if(to){let _c=Qt.type,nu=E9(_c),DA=nu&&Rse(_c)?y2(nu,_c):nu||_S(_c);if(Xn=_o(DA,Cr,1,jr))return Xn}}else if(No&134217728&&!(zo&524288)){if(!(zo&134217728)){let to=L_(Qt);if(to&&to!==Qt&&(Xn=_o(to,Cr,1,jr)))return Xn}}else if(No&268435456)if(zo&268435456){if(Qt.symbol!==Cr.symbol)return 0;if(Xn=_o(Qt.type,Cr.type,3,jr))return Xn}else{let to=L_(Qt);if(to&&(Xn=_o(to,Cr,1,jr)))return Xn}else if(No&16777216){if(Dq(Qt,kt,vn,10))return 3;if(zo&16777216){let nu=Qt.root.inferTypeParameters,DA=Qt.extendsType,Li;if(nu){let ta=F2e(nu,void 0,0,qc);nG(ta.inferences,Cr.extendsType,DA,1536),DA=_l(DA,ta.mapper),Li=ta.mapper}if(rG(DA,Cr.extendsType)&&(_o(Qt.checkType,Cr.checkType,3)||_o(Cr.checkType,Qt.checkType,3))&&((Xn=_o(_l(fW(Qt),Li),fW(Cr),3,jr))&&(Xn&=_o(IW(Qt),IW(Cr),3,jr)),Xn))return Xn}let to=RJt(Qt);if(to&&(Xn=_o(to,Cr,1,jr)))return Xn;let _c=!(zo&16777216)&&mWe(Qt)?Qfn(Qt):void 0;if(_c&&(ka(yi),Xn=_o(_c,Cr,1,jr)))return Xn}else{if(v!==ck&&v!==bf&&XOs(Cr)&&lZ(Qt))return-1;if(Yb(Cr))return Yb(Qt)&&(Xn=zn(Qt,Cr,jr))?Xn:0;let to=!!(No&402784252);if(v!==u0)Qt=fy(Qt),No=Qt.flags;else if(Yb(Qt))return 0;if(la(Qt)&4&&la(Cr)&4&&Qt.target===Cr.target&&!yA(Qt)&&!(hot(Qt)||hot(Cr))){if(bot(Qt))return-1;let _c=DUt(Qt.target);if(_c===E)return 1;let nu=La(lf(Qt),lf(Cr),_c,Qn);if(nu!==void 0)return nu}else{if(Hpe(Cr)?RE(Qt,L5):Nv(Cr)&&RE(Qt,_c=>yA(_c)&&!_c.target.readonly))return v!==u0?_o(D5(Qt,ri)||hr,D5(Cr,ri)||hr,3,jr):0;if(hW(Qt)&&yA(Cr)&&!hW(Cr)){let _c=WN(Qt);if(_c!==Qt)return _o(_c,Cr,1,jr)}else if((v===ck||v===bf)&&lZ(Cr)&&la(Cr)&8192&&!lZ(Qt))return 0}if(No&2621440&&zo&524288){let _c=jr&&Oe===yi.errorInfo&&!to;if(Xn=jg(Qt,Cr,_c,void 0,!1,Qn),Xn&&(Xn&=Sp(Qt,Cr,0,_c,Qn),Xn&&(Xn&=Sp(Qt,Cr,1,_c,Qn),Xn&&(Xn&=$t(Qt,Cr,to,_c,Qn)))),Us&&Xn)Oe=Ti||Oe||yi.errorInfo;else if(Xn)return Xn}if(No&2621440&&zo&1048576){let _c=Upe(Cr,36175872);if(_c.flags&1048576){let nu=as(Qt,_c);if(nu)return nu}}}return 0;function za(to){return to?Ul(to,(_c,nu)=>_c+1+za(nu.next),0):0}function La(to,_c,nu,DA){if(Xn=sfe(to,_c,nu,jr,DA))return Xn;if(jt(nu,ta=>!!(ta&24))){Ti=void 0,ka(yi);return}let Li=_c&&vMs(_c,nu);if(Us=!Li,nu!==E&&!Li){if(Us&&!(jr&&jt(nu,ta=>(ta&7)===0)))return 0;Ti=Oe,ka(yi)}}}function zn(Qt,Cr,jr){if(v===Ob||(v===u0?fk(Qt)===fk(Cr):Gpe(Qt)<=Gpe(Cr))){let yi,Xn=_S(Cr),Ti=_l(_S(Qt),Gpe(Qt)<0?jp:tm);if(yi=_o(Xn,Ti,3,jr)){let Us=N1([jw(Qt)],[jw(Cr)]);if(_l(E9(Qt),Us)===_l(E9(Cr),Us))return yi&_o(_l(qx(Qt),Us),qx(Cr),3,jr)}}return 0}function as(Qt,Cr){var jr;let Qn=Gd(Qt),yi=omn(Qn,Cr);if(!yi)return 0;let Xn=1;for(let La of yi)if(Xn*=WHs(AR(La)),Xn>25)return(jr=ki)==null||jr.instant(ki.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Qt.id,targetId:Cr.id,numCombinations:Xn}),0;let Ti=new Array(yi.length),Us=new Set;for(let La=0;LaLa[nu],!1,0,ot||v===Ob))continue e}Qi(zo,_c,yg),to=!0}if(!to)return 0}let za=-1;for(let La of zo)if(za&=jg(Qt,La,!1,Us,!1,0),za&&(za&=Sp(Qt,La,0,!1,0),za&&(za&=Sp(Qt,La,1,!1,0),za&&!(yA(Qt)&&yA(La))&&(za&=$t(Qt,La,!1,!1,0)))),!za)return za;return za}function Ms(Qt,Cr){if(!Cr||Qt.length===0)return Qt;let jr;for(let Qn=0;Qn5?Ll(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,no(Qt),no(Cr),At(Xn.slice(0,4),Ti=>kl(Ti)).join(", "),Xn.length-4):Ll(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,no(Qt),no(Cr),At(Xn,Ti=>kl(Ti)).join(", ")),yi&&Oe&&Co++)}function jg(Qt,Cr,jr,Qn,yi,Xn){if(v===u0)return nA(Qt,Cr,Qn);let Ti=-1;if(yA(Cr)){if(L5(Qt)){if(!Cr.target.readonly&&(Hpe(Qt)||yA(Qt)&&Qt.target.readonly))return 0;let La=B9(Qt),to=B9(Cr),_c=yA(Qt)?Qt.target.combinedFlags&4:4,nu=!!(Cr.target.combinedFlags&12),DA=yA(Qt)?Qt.target.minLength:0,Li=Cr.target.minLength;if(!_c&&La=Jl?to-1-Math.min(Cm,EA):ou,W0=Cr.target.elementFlags[W_];if(W0&8&&!(mm&8))return jr&&Ll(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,W_),0;if(mm&8&&!(W0&12))return jr&&Ll(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,ou,W_),0;if(W0&1&&!(mm&1))return jr&&Ll(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,W_),0;if(Ad&&((mm&12||W0&12)&&(Ad=!1),Ad&&Qn?.has(""+ou)))continue;let Uy=AZ(ta[ou],!!(mm&W0&2)),IZ=mu[W_],Q5=mm&8&&W0&4?d0(IZ):AZ(IZ,!!(W0&2)),zQ=_o(Uy,Q5,3,jr,void 0,Xn);if(!zQ)return jr&&(to>1||La>1)&&(nu&&ou>=Jl&&Cm>=EA&&Jl!==La-EA-1?Vu(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Jl,La-EA-1,W_):Vu(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,ou,W_)),0;Ti&=zQ}return Ti}if(Cr.target.combinedFlags&12)return 0}let Us=(v===ck||v===bf)&&!R9(Qt)&&!bot(Qt)&&!yA(Qt),No=UUt(Qt,Cr,Us,!1);if(No)return jr&&tC(Qt,Cr)&&tc(Qt,Cr,No,Us),0;if(R9(Cr)){for(let La of Ms(Gd(Qt),Qn))if(!LQ(Cr,La.escapedName)&&!(Io(La).flags&32768))return jr&&Ll(Z.Property_0_does_not_exist_on_type_1,kl(La),no(Cr)),0}let zo=Gd(Cr),za=yA(Qt)&&yA(Cr);for(let La of Ms(zo,Qn)){let to=La.escapedName;if(!(La.flags&4194304)&&(!za||IN(to)||to==="length")&&(!yi||La.flags&16777216)){let _c=Gg(Qt,to);if(_c&&_c!==La){let nu=ea(Qt,Cr,_c,La,AR,jr,Xn,v===Ob);if(!nu)return 0;Ti&=nu}}}return Ti}function nA(Qt,Cr,jr){if(!(Qt.flags&524288&&Cr.flags&524288))return 0;let Qn=Ms(S9(Qt),jr),yi=Ms(S9(Cr),jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti of Qn){let Us=LQ(Cr,Ti.escapedName);if(!Us)return 0;let No=xUt(Ti,Us,_o);if(!No)return 0;Xn&=No}return Xn}function Sp(Qt,Cr,jr,Qn,yi){var Xn,Ti;if(v===u0)return Y5(Qt,Cr,jr);if(Cr===$d||Qt===$d)return-1;let Us=Qt.symbol&&YN(Qt.symbol.valueDeclaration),No=Cr.symbol&&YN(Cr.symbol.valueDeclaration),zo=tg(Qt,Us&&jr===1?0:jr),za=tg(Cr,No&&jr===1?0:jr);if(jr===1&&zo.length&&za.length){let DA=!!(zo[0].flags&4),Li=!!(za[0].flags&4);if(DA&&!Li)return Qn&&Ll(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!Di(zo[0],za[0],Qn))return 0}let La=-1,to=jr===1?Qb:P0,_c=la(Qt),nu=la(Cr);if(_c&64&&nu&64&&Qt.symbol===Cr.symbol||_c&4&&nu&4&&Qt.target===Cr.target){pe.assertEqual(zo.length,za.length);for(let DA=0;DAlW(Jl,void 0,262144,jr);return Ll(Z.Type_0_is_not_assignable_to_type_1,mu(Li),mu(ta)),Ll(Z.Types_of_construct_signatures_are_incompatible),La}}else e:for(let DA of za){let Li=Kc(),ta=Qn;for(let mu of zo){let Jl=H5(mu,DA,!0,ta,yi,to(mu,DA));if(Jl){La&=Jl,ka(Li);continue e}ta=!1}return ta&&Ll(Z.Type_0_provides_no_match_for_the_signature_1,no(Qt),lW(DA,void 0,void 0,jr)),0}return La}function tC(Qt,Cr){let jr=_We(Qt,0),Qn=_We(Qt,1),yi=S9(Qt);return(jr.length||Qn.length)&&!yi.length?!!(tg(Cr,0).length&&jr.length||tg(Cr,1).length&&Qn.length):!0}function P0(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,no(jr),no(Qn)):(jr,Qn)=>Vu(Z.Call_signature_return_types_0_and_1_are_incompatible,no(jr),no(Qn))}function Qb(Qt,Cr){return Qt.parameters.length===0&&Cr.parameters.length===0?(jr,Qn)=>Vu(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,no(jr),no(Qn)):(jr,Qn)=>Vu(Z.Construct_signature_return_types_0_and_1_are_incompatible,no(jr),no(Qn))}function H5(Qt,Cr,jr,Qn,yi,Xn){let Ti=v===ck?16:v===bf?24:0;return vUt(jr?y2e(Qt):Qt,jr?y2e(Cr):Cr,Ti,Qn,Ll,Xn,Us,tm);function Us(No,zo,za){return _o(No,zo,3,za,void 0,yi)}}function Y5(Qt,Cr,jr){let Qn=tg(Qt,jr),yi=tg(Cr,jr);if(Qn.length!==yi.length)return 0;let Xn=-1;for(let Ti=0;TiNo.keyType===$r),Us=-1;for(let No of Xn){let zo=v!==bf&&!jr&&Ti&&No.type.flags&1?-1:Yb(Qt)&&Ti?_o(qx(Qt),No.type,3,Qn):lt(Qt,No,Qn,yi);if(!zo)return 0;Us&=zo}return Us}function lt(Qt,Cr,jr,Qn){let yi=h2e(Qt,Cr.keyType);return yi?Mat(yi,Cr,jr,Qn):!(Qn&1)&&(v!==bf||la(Qt)&8192)&&Tot(Qt)?xOe(Qt,Cr,jr,Qn):(jr&&Ll(Z.Index_signature_for_type_0_is_missing_in_type_1,no(Cr.keyType),no(Qt)),0)}function hi(Qt,Cr){let jr=A0(Qt),Qn=A0(Cr);if(jr.length!==Qn.length)return 0;for(let yi of Qn){let Xn=$x(Qt,yi.keyType);if(!(Xn&&_o(Xn.type,yi.type,3)&&Xn.isReadonly===yi.isReadonly))return 0}return-1}function Di(Qt,Cr,jr){if(!Qt.declaration||!Cr.declaration)return!0;let Qn=MY(Qt.declaration,6),yi=MY(Cr.declaration,6);return yi===2||yi===4&&Qn!==2||yi!==4&&!Qn?!0:(jr&&Ll(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,w5(Qn),w5(yi)),!1)}}function TUt(u){if(u.flags&16)return!1;if(u.flags&3145728)return!!F(u.types,TUt);if(u.flags&465829888){let m=dK(u);if(m&&m!==u)return TUt(m)}return IR(u)||!!(u.flags&134217728)||!!(u.flags&268435456)}function Nhn(u,m){return yA(u)&&yA(m)?E:Gd(m).filter(v=>Iot(Pi(u,v.escapedName),Io(v)))}function Iot(u,m){return!!u&&!!m&&ah(u,32768)&&!!x2e(m)}function EMs(u){return Gd(u).filter(m=>x2e(Io(m)))}function Dhn(u,m,v=EUt){return oyn(u,m,v)||X8s(u,m)||J8s(u,m)||U8s(u,m)||K8s(u,m)}function RUt(u,m,v){let D=u.types,P=D.map(oe=>oe.flags&402784252?0:-1);for(let[oe,Be]of m){let Oe=!1;for(let He=0;He!!v(Vt,qe))?Oe=!0:P[He]=3)}for(let He=0;HeP[Be]),0):u;return Y.flags&131072?u:Y}function NUt(u){if(u.flags&524288){let m=pR(u);return m.callSignatures.length===0&&m.constructSignatures.length===0&&m.indexInfos.length===0&&m.properties.length>0&&ue(m.properties,v=>!!(v.flags&16777216))}return u.flags&33554432?NUt(u.baseType):u.flags&2097152?ue(u.types,NUt):!1}function SMs(u,m,v){for(let D of Gd(u))if(eat(m,D.escapedName,v))return!0;return!1}function DUt(u){return u===NA||u===uA||u.objectFlags&8?Ne:xhn(u.symbol,u.typeParameters)}function khn(u){return xhn(u,fa(u).typeParameters)}function xhn(u,m=E){var v,D;let P=fa(u);if(!P.variances){(v=ki)==null||v.push(ki.Phase.CheckTypes,"getVariancesWorker",{arity:m.length,id:QC(Fp(u))});let Y=OU,oe=a9;OU||(OU=!0,a9=Mx.length),P.variances=E;let Be=[];for(let Oe of m){let He=kUt(Oe),qe=He&16384?He&8192?0:1:He&8192?2:void 0;if(qe===void 0){let Vt=!1,kt=!1,vr=yu;yu=ii=>ii?kt=!0:Vt=!0;let dn=ZWe(u,Oe,_f),vn=ZWe(u,Oe,QI);qe=(dg(vn,dn)?1:0)|(dg(dn,vn)?2:0),qe===3&&dg(ZWe(u,Oe,ve),dn)&&(qe=4),yu=vr,(Vt||kt)&&(Vt&&(qe|=8),kt&&(qe|=16))}Be.push(qe)}Y||(OU=!1,a9=oe),P.variances=Be,(D=ki)==null||D.pop({variances:Be.map(pe.formatVariance)})}return P.variances}function ZWe(u,m,v){let D=HQ(m,v),P=Fp(u);if(uo(P))return P;let Y=u.flags&524288?kse(u,cZ(fa(u).typeParameters,D)):iZ(P,cZ(P.typeParameters,D));return on.add(QC(Y)),Y}function hot(u){return on.has(QC(u))}function kUt(u){var m;return Ul((m=u.symbol)==null?void 0:m.declarations,(v,D)=>v|o_(D),0)&28672}function vMs(u,m){for(let v=0;v!!(m.flags&262144)||mot(m))}function TMs(u,m,v,D){let P=[],Y="",oe=Oe(u,0),Be=Oe(m,0);return`${Y}${oe},${Be}${v}`;function Oe(He,qe=0){let Vt=""+He.target.id;for(let kt of lf(He)){if(kt.flags&262144){if(D||BMs(kt)){let vr=P.indexOf(kt);vr<0&&(vr=P.length,P.push(kt)),Vt+="="+vr;continue}Y="*"}else if(qe<4&&mot(kt)){Vt+="<"+Oe(kt,qe+1)+">";continue}Vt+="-"+kt.id}return Vt}}function Cot(u,m,v,D,P){if(D===u0&&u.id>m.id){let oe=u;u=m,m=oe}let Y=v?":"+v:"";return mot(u)&&mot(m)?TMs(u,m,Y,P):`${u.id},${m.id}${Y}`}function LWe(u,m){if(iI(u)&6){for(let v of u.links.containingType.types){let D=Gg(v,u.escapedName),P=D&&LWe(D,m);if(P)return P}return}return m(u)}function Nq(u){return u.parent&&u.parent.flags&32?Fp($m(u)):void 0}function _ot(u){let m=Nq(u),v=m&&Kw(m)[0];return v&&Pi(v,u.escapedName)}function RMs(u,m){return LWe(u,v=>{let D=Nq(v);return D?da(D,m):!1})}function NMs(u,m){return!LWe(m,v=>u2(v)&4?!RMs(u,Nq(v)):!1)}function Ghn(u,m,v){return LWe(m,D=>u2(D,v)&4?!da(u,Nq(D)):!1)?void 0:u}function Dq(u,m,v,D=3){if(v>=D){if((la(u)&96)===96&&(u=Fhn(u)),u.flags&2097152)return jt(u.types,Be=>Dq(Be,m,v,D));let P=yot(u),Y=0,oe=0;for(let Be=0;Be=oe&&(Y++,Y>=D))return!0;oe=Oe.id}}}return!1}function Fhn(u){let m;for(;(la(u)&96)===96&&(m=N5(u))&&(m.symbol||m.flags&2097152&&jt(m.types,v=>!!v.symbol));)u=m;return u}function Zhn(u,m){return(la(u)&96)===96&&(u=Fhn(u)),u.flags&2097152?jt(u.types,v=>Zhn(v,m)):yot(u)===m}function yot(u){if(u.flags&524288&&!jUt(u)){if(la(u)&4&&u.node)return u.node;if(u.symbol&&!(la(u)&16&&u.symbol.flags&32))return u.symbol;if(yA(u))return u.target}if(u.flags&262144)return u.symbol;if(u.flags&8388608){do u=u.objectType;while(u.flags&8388608);return u}return u.flags&16777216?u.root:u}function DMs(u,m){return xUt(u,m,T2e)!==0}function xUt(u,m,v){if(u===m)return-1;let D=u2(u)&6,P=u2(m)&6;if(D!==P)return 0;if(D){if(Xse(u)!==Xse(m))return 0}else if((u.flags&16777216)!==(m.flags&16777216))return 0;return yR(u)!==yR(m)?0:v(Io(u),Io(m))}function kMs(u,m,v){let D=NE(u),P=NE(m),Y=_R(u),oe=_R(m),Be=Ck(u),Oe=Ck(m);return!!(D===P&&Y===oe&&Be===Oe||v&&Y<=oe)}function VWe(u,m,v,D,P,Y){if(u===m)return-1;if(!kMs(u,m,v)||B(u.typeParameters)!==B(m.typeParameters))return 0;if(m.typeParameters){let Oe=N1(u.typeParameters,m.typeParameters);for(let He=0;Hem|(v.flags&1048576?Lhn(v.types):v.flags),0)}function FMs(u){if(u.length===1)return u[0];let m=ot?Tr(u,D=>nm(D,P=>!(P.flags&98304))):u,v=GMs(m)?Ha(m):ZMs(m);return m===u?v:OWe(v,Lhn(u)&98304)}function ZMs(u){let m=Ul(u,(v,D)=>Mpe(v,D)?D:v);return ue(u,v=>v===m||Mpe(v,m))?m:Ul(u,(v,D)=>YQ(v,D)?D:v)}function LMs(u){return Ul(u,(m,v)=>YQ(v,m)?v:m)}function Nv(u){return!!(la(u)&4)&&(u.target===NA||u.target===uA)}function Hpe(u){return!!(la(u)&4)&&u.target===uA}function L5(u){return Nv(u)||yA(u)}function PWe(u){return Nv(u)&&!Hpe(u)||yA(u)&&!u.target.readonly}function WWe(u){return Nv(u)?lf(u)[0]:void 0}function T9(u){return Nv(u)||!(u.flags&98304)&&dg(u,E1)}function GUt(u){return PWe(u)||!(u.flags&98305)&&dg(u,d_)}function FUt(u){if(!(la(u)&4)||!(la(u.target)&3))return;if(la(u)&33554432)return la(u)&67108864?u.cachedEquivalentBaseType:void 0;u.objectFlags|=33554432;let m=u.target;if(la(m)&1){let P=XB(m);if(P&&P.expression.kind!==80&&P.expression.kind!==212)return}let v=Kw(m);if(v.length!==1||pk(u.symbol).size)return;let D=B(m.typeParameters)?_l(v[0],N1(m.typeParameters,lf(u).slice(0,m.typeParameters.length))):v[0];return B(lf(u))>B(m.typeParameters)&&(D=T1(D,Ei(lf(u)))),u.objectFlags|=67108864,u.cachedEquivalentBaseType=D}function Vhn(u){return ot?u===Ui:u===xe}function bot(u){let m=WWe(u);return!!m&&Vhn(m)}function Ype(u){let m;return yA(u)||!!Gg(u,"0")||T9(u)&&!!(m=Pi(u,"length"))&&RE(m,v=>!!(v.flags&256))}function Eot(u){return T9(u)||Ype(u)}function VMs(u,m){let v=Pi(u,""+m);if(v)return v;if(RE(u,yA))return Mhn(u,m,Te.noUncheckedIndexedAccess?Bt:void 0)}function PMs(u){return!(u.flags&240544)}function IR(u){return!!(u.flags&109472)}function Phn(u){let m=WN(u);return m.flags&2097152?jt(m.types,IR):IR(m)}function WMs(u){return u.flags&2097152&&de(u.types,IR)||u}function D2e(u){return u.flags&16?!0:u.flags&1048576?u.flags&1024?!0:ue(u.types,IR):IR(u)}function uZ(u){return u.flags&1056?Hst(u):u.flags&402653312?$r:u.flags&256?ri:u.flags&2048?ao:u.flags&512?Mn:u.flags&1048576?OMs(u):u}function OMs(u){let m=`B${QC(u)}`;return Hy(m)??HB(m,Yf(u,uZ))}function ZUt(u){return u.flags&402653312?$r:u.flags&288?ri:u.flags&2048?ao:u.flags&512?Mn:u.flags&1048576?Yf(u,ZUt):u}function V5(u){return u.flags&1056&&MQ(u)?Hst(u):u.flags&128&&MQ(u)?$r:u.flags&256&&MQ(u)?ri:u.flags&2048&&MQ(u)?ao:u.flags&512&&MQ(u)?Mn:u.flags&1048576?Yf(u,V5):u}function Whn(u){return u.flags&8192?ci:u.flags&1048576?Yf(u,Whn):u}function LUt(u,m){return fat(u,m)||(u=Whn(V5(u))),Iy(u)}function MMs(u,m,v){if(u&&IR(u)){let D=m?v?eSe(m):m:void 0;u=LUt(u,D)}return u}function VUt(u,m,v,D){if(u&&IR(u)){let P=m?D9(v,m,D):void 0;u=LUt(u,P)}return u}function yA(u){return!!(la(u)&4&&u.target.objectFlags&8)}function hW(u){return yA(u)&&!!(u.target.combinedFlags&8)}function Ohn(u){return hW(u)&&u.target.elementFlags.length===1}function Sot(u){return Qpe(u,u.target.fixedLength)}function Mhn(u,m,v){return Yf(u,D=>{let P=D,Y=Sot(P);return Y?v&&m>=rUt(P.target)?Ha([Y,v]):Y:Bt})}function HMs(u){let m=Sot(u);return m&&d0(m)}function Qpe(u,m,v=0,D=!1,P=!1){let Y=B9(u)-v;if(m(v&12)===(m.target.elementFlags[D]&12))}function Hhn({value:u}){return u.base10Value==="0"}function Yhn(u){return nm(u,m=>hR(m,4194304))}function QMs(u){return Yf(u,XMs)}function XMs(u){return u.flags&4?gse:u.flags&8?hpe:u.flags&64?Ase:u===Ys||u===Bs||u.flags&114691||u.flags&128&&u.value===""||u.flags&256&&u.value===0||u.flags&2048&&Hhn(u)?u:Wi}function OWe(u,m){let v=m&~u.flags&98304;return v===0?u:Ha(v===32768?[u,Bt]:v===65536?[u,Hn]:[u,Bt,Hn])}function mW(u,m=!1){pe.assert(ot);let v=m?Je:Bt;return u===v||u.flags&1048576&&u.types[0]===v?u:Ha([u,v])}function JMs(u){return gy||(gy=Gse("NonNullable",524288,void 0)||it),gy!==it?kse(gy,[u]):Kg([u,Xg])}function gZ(u){return ot?wK(u,2097152):u}function Qhn(u){return ot?Ha([u,In]):u}function vot(u){return ot?Zot(u,In):u}function Bot(u,m,v){return v?i3(m)?mW(u):Qhn(u):u}function k2e(u,m){return gY(m)?gZ(u):GC(m)?vot(u):u}function AZ(u,m){return Pt&&m?Zot(u,fr):u}function x2e(u){return u===fr||!!(u.flags&1048576)&&u.types[0]===fr}function wot(u){return Pt?Zot(u,fr):Dv(u,524288)}function UMs(u,m){return(u.flags&524)!==0&&(m.flags&28)!==0}function Tot(u){let m=la(u);return u.flags&2097152?ue(u.types,Tot):!!(u.symbol&&u.symbol.flags&7040&&!(u.symbol.flags&32)&&!Gat(u))||!!(m&4194304)||!!(m&1024&&Tot(u.source))}function SK(u,m){let v=gA(u.flags,u.escapedName,iI(u)&8);v.declarations=u.declarations,v.parent=u.parent,v.links.type=m,v.links.target=u,u.valueDeclaration&&(v.valueDeclaration=u.valueDeclaration);let D=fa(u).nameType;return D&&(v.links.nameType=D),v}function KMs(u,m){let v=qu();for(let D of S9(u)){let P=Io(D),Y=m(P);v.set(D.escapedName,Y===P?D:SK(D,Y))}return v}function G2e(u){if(!(R9(u)&&la(u)&8192))return u;let m=u.regularType;if(m)return m;let v=u,D=KMs(u,G2e),P=Hf(v.symbol,D,v.callSignatures,v.constructSignatures,v.indexInfos);return P.flags=v.flags,P.objectFlags|=v.objectFlags&-8193,u.regularType=P,P}function Xhn(u,m,v){return{parent:u,propertyName:m,siblings:v,resolvedProperties:void 0}}function Jhn(u){if(!u.siblings){let m=[];for(let v of Jhn(u.parent))if(R9(v)){let D=LQ(v,u.propertyName);D&&TK(Io(D),P=>{m.push(P)})}u.siblings=m}return u.siblings}function jMs(u){if(!u.resolvedProperties){let m=new Map;for(let v of Jhn(u))if(R9(v)&&!(la(v)&2097152))for(let D of Gd(v))m.set(D.escapedName,D);u.resolvedProperties=Do(m.values())}return u.resolvedProperties}function zMs(u,m){if(!(u.flags&4))return u;let v=Io(u),D=m&&Xhn(m,u.escapedName,void 0),P=PUt(v,D);return P===v?u:SK(u,P)}function qMs(u){let m=pt.get(u.escapedName);if(m)return m;let v=SK(u,Je);return v.flags|=16777216,pt.set(u.escapedName,v),v}function $Ms(u,m){let v=qu();for(let P of S9(u))v.set(P.escapedName,zMs(P,m));if(m)for(let P of jMs(m))v.has(P.escapedName)||v.set(P.escapedName,qMs(P));let D=Hf(u.symbol,v,E,E,Tr(A0(u),P=>eG(P.keyType,D1(P.type),P.isReadonly,P.declaration,P.components)));return D.objectFlags|=la(u)&266240,D}function D1(u){return PUt(u,void 0)}function PUt(u,m){if(la(u)&196608){if(m===void 0&&u.widened)return u.widened;let v;if(u.flags&98305)v=hr;else if(R9(u))v=$Ms(u,m);else if(u.flags&1048576){let D=m||Xhn(void 0,void 0,u.types),P=Tr(u.types,Y=>Y.flags&98304?Y:PUt(Y,D));v=Ha(P,jt(P,lZ)?2:1)}else u.flags&2097152?v=Kg(Tr(u.types,D1)):L5(u)&&(v=iZ(u.target,Tr(lf(u),D1)));return v&&m===void 0&&(u.widened=v),v||u}return u}function Rot(u){var m;let v=!1;if(la(u)&65536){if(u.flags&1048576)if(jt(u.types,lZ))v=!0;else for(let D of u.types)v||(v=Rot(D));else if(L5(u))for(let D of lf(u))v||(v=Rot(D));else if(R9(u))for(let D of S9(u)){let P=Io(D);if(la(P)&65536&&(v=Rot(P),!v)){let Y=(m=D.declarations)==null?void 0:m.find(oe=>{var Be;return((Be=oe.symbol.valueDeclaration)==null?void 0:Be.parent)===u.symbol.valueDeclaration});Y&&(Sr(Y,Z.Object_literal_s_property_0_implicitly_has_an_1_type,kl(D),no(D1(P))),v=!0)}}}return v}function P5(u,m,v){let D=no(D1(m));if(wo(u)&&!rz(ms(u),Te))return;let P;switch(u.kind){case 227:case 173:case 172:P=Rt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 170:let Y=u;if(Ir(Y.name)){let oe=iv(Y.name);if((wg(Y.parent)||hl(Y.parent)||x_(Y.parent))&&Y.parent.parameters.includes(Y)&&(An(Y,Y.name.escapedText,788968,void 0,!0)||oe&&bAe(oe))){let Be="arg"+Y.parent.parameters.indexOf(Y),Oe=Wd(Y.name)+(Y.dotDotDotToken?"[]":"");Hw(Rt,u,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Be,Oe);return}}P=u.dotDotDotToken?Rt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Rt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 209:if(P=Z.Binding_element_0_implicitly_has_an_1_type,!Rt)return;break;case 318:Sr(u,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 324:Rt&&mie(u.parent)&&Sr(u.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 263:case 175:case 174:case 178:case 179:case 219:case 220:if(Rt&&!u.name){v===3?Sr(u,Z.Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation,D):Sr(u,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}P=Rt?v===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 201:Rt&&Sr(u,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:P=Rt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}Hw(Rt,u,P,Wd(Il(u)),D)}function eHs(u,m){let v=Kot(u);if(!v)return!0;let D=ud(v),P=SI(u);switch(m){case 1:return P&1?D=D9(1,D,!!(P&2))??D:P&2&&(D=pZ(D)??D),G5(D);case 3:let Y=D9(0,D,!!(P&2));return!!Y&&G5(Y);case 2:let oe=D9(2,D,!!(P&2));return!!oe&&G5(oe)}return!1}function Not(u,m,v){g(()=>{Rt&&la(m)&65536&&(!v||kd(u)&&eHs(u,v))&&(Rot(m)||P5(u,m,v))})}function WUt(u,m,v){let D=NE(u),P=NE(m),Y=J2e(u),oe=J2e(m),Be=oe?P-1:P,Oe=Y?Be:Math.min(D,Be),He=k5(u);if(He){let qe=k5(m);qe&&v(He,qe)}for(let qe=0;qem.typeParameter),At(u.inferences,(m,v)=>()=>(m.isFixed||(nHs(u),Dot(u.inferences),m.isFixed=!0),zUt(u,v))))}function rHs(u){return mUt(At(u.inferences,m=>m.typeParameter),At(u.inferences,(m,v)=>()=>zUt(u,v)))}function Dot(u){for(let m of u)m.isFixed||(m.inferredType=void 0)}function HUt(u,m,v){(u.intraExpressionInferenceSites??(u.intraExpressionInferenceSites=[])).push({node:m,type:v})}function nHs(u){if(u.intraExpressionInferenceSites){for(let{node:m,type:v}of u.intraExpressionInferenceSites){let D=m.kind===175?$mn(m,2):Jy(m,2);D&&nG(u.inferences,v,D)}u.intraExpressionInferenceSites=void 0}}function YUt(u){return{typeParameter:u,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function Khn(u){return{typeParameter:u.typeParameter,candidates:u.candidates&&u.candidates.slice(),contraCandidates:u.contraCandidates&&u.contraCandidates.slice(),inferredType:u.inferredType,priority:u.priority,topLevel:u.topLevel,isFixed:u.isFixed,impliedArity:u.impliedArity}}function iHs(u){let m=Me(u.inferences,Qse);return m.length?MUt(At(m,Khn),u.signature,u.flags,u.compareTypes):void 0}function QUt(u){return u&&u.mapper}function CW(u){let m=la(u);if(m&524288)return!!(m&1048576);let v=!!(u.flags&465829888||u.flags&524288&&!jhn(u)&&(m&4&&(u.node||jt(lf(u),CW))||m&16&&u.symbol&&u.symbol.flags&14384&&u.symbol.declarations||m&12583968)||u.flags&3145728&&!(u.flags&1024)&&!jhn(u)&&jt(u.types,CW));return u.flags&3899393&&(u.objectFlags|=524288|(v?1048576:0)),v}function jhn(u){if(u.aliasSymbol&&!u.aliasTypeArguments){let m=Cp(u.aliasSymbol,266);return!!(m&&ji(m.parent,v=>v.kind===308?!0:v.kind===268?!1:"quit"))}return!1}function Z2e(u,m,v=0){return!!(u===m||u.flags&3145728&&jt(u.types,D=>Z2e(D,m,v))||v<3&&u.flags&16777216&&(Z2e(fW(u),m,v+1)||Z2e(IW(u),m,v+1)))}function sHs(u,m){let v=Tv(u);return v?!!v.type&&Z2e(v.type,m):Z2e(ud(u),m)}function oHs(u){let m=qu();TK(u,D=>{if(!(D.flags&128))return;let P=Ap(D.value),Y=gA(4,P);Y.links.type=hr,D.symbol&&(Y.declarations=D.symbol.declarations,Y.valueDeclaration=D.symbol.valueDeclaration),m.set(P,Y)});let v=u.flags&4?[eG($r,Xg,!1)]:E;return Hf(void 0,m,E,E,v)}function zhn(u,m,v){let D=u.id+","+m.id+","+v.id;if(Z_.has(D))return Z_.get(D);let P=aHs(u,m,v);return Z_.set(D,P),P}function XUt(u){return!(la(u)&262144)||R9(u)&&jt(Gd(u),m=>XUt(Io(m)))||yA(u)&&jt(WQ(u),XUt)}function aHs(u,m,v){if(!($x(u,$r)||Gd(u).length!==0&&XUt(u)))return;if(Nv(u)){let P=kot(lf(u)[0],m,v);return P?d0(P,Hpe(u)):void 0}if(yA(u)){let P=At(WQ(u),oe=>kot(oe,m,v));if(!ue(P,oe=>!!oe))return;let Y=fk(m)&4?Tr(u.target.elementFlags,oe=>oe&2?1:oe):u.target.elementFlags;return hk(P,Y,u.target.readonly,u.target.labeledElementDeclarations)}let D=Lh(1040,void 0);return D.source=u,D.mappedType=m,D.constraintType=v,D}function cHs(u){let m=fa(u);return m.type||(m.type=kot(u.links.propertyType,u.links.mappedType,u.links.constraintType)||cn),m.type}function lHs(u,m,v){let D=R1(v.type,jw(m)),P=qx(m),Y=YUt(D);return nG([Y],u,P),qhn(Y)||cn}function kot(u,m,v){let D=u.id+","+m.id+","+v.id;if(b1.has(D))return b1.get(D)||cn;l5.push(u),YU.push(m);let P=u5;Dq(u,l5,l5.length,2)&&(u5|=1),Dq(m,YU,YU.length,2)&&(u5|=2);let Y;return u5!==3&&(Y=lHs(u,m,v)),l5.pop(),YU.pop(),u5=P,b1.set(D,Y),Y}function*JUt(u,m,v,D){let P=Gd(m);for(let Y of P)if(!Rfn(Y)&&(v||!(Y.flags&16777216||iI(Y)&48))){let oe=Gg(u,Y.escapedName);if(!oe)yield Y;else if(D){let Be=Io(Y);if(Be.flags&109472){let Oe=Io(oe);Oe.flags&1||Iy(Oe)===Iy(Be)||(yield Y)}}}}function UUt(u,m,v,D){return iA(JUt(u,m,v,D))}function uHs(u,m){return!(m.target.combinedFlags&8)&&m.target.minLength>u.target.minLength||!(m.target.combinedFlags&12)&&(!!(u.target.combinedFlags&12)||m.target.fixedLengthwq(Y,P),u)===u&&xot(u,m)}return!1}function tmn(u,m){if(m.flags&2097152)return ue(m.types,v=>v===bg||tmn(u,v));if(m.flags&4||dg(u,m))return!0;if(u.flags&128){let v=u.value;return!!(m.flags&8&&emn(v,!1)||m.flags&64&&Jne(v,!1)||m.flags&98816&&v===m.intrinsicName||m.flags&268435456&&xot(u,m)||m.flags&134217728&&Got(u,m))}if(u.flags&134217728){let v=u.texts;return v.length===2&&v[0]===""&&v[1]===""&&dg(u.types[0],m)}return!1}function rmn(u,m){return u.flags&128?nmn([u.value],E,m):u.flags&134217728?Sc(u.texts,m.texts)?At(u.types,(v,D)=>dg(WN(v),WN(m.types[D]))?v:pHs(v)):nmn(u.texts,u.types,m):void 0}function Got(u,m){let v=rmn(u,m);return!!v&&ue(v,(D,P)=>tmn(D,m.types[P]))}function pHs(u){return u.flags&402653317?u:hK(["",""],[u])}function nmn(u,m,v){let D=u.length-1,P=u[0],Y=u[D],oe=v.texts,Be=oe.length-1,Oe=oe[0],He=oe[Be];if(D===0&&P.length0){let js=kt,Co=vr;for(;Co=dn(js).indexOf(Yi,Co),!(Co>=0);){if(js++,js===u.length)return;Co=0}vn(js,Co),vr+=Yi.length}else if(vr!k(_o,Bd)):xs,du?Me(eo,Bd=>!k(du,Bd)):eo]}function js(xs,eo,qc){let _o=xs.length!!Mi(du));if(!_o||eo&&_o!==eo)return;eo=_o}return eo}function Ka(xs,eo,qc){let _o=0;if(qc&1048576){let du,Bd=xs.flags&1048576?xs.types:[xs],uf=new Array(Bd.length),JC=!1;for(let bA of eo)if(Mi(bA))du=bA,_o++;else for(let yh=0;yhuf[Vh]?void 0:yh);if(bA.length){kt(Ha(bA),du);return}}}else for(let du of eo)Mi(du)?_o++:kt(xs,du);if(qc&2097152?_o===1:_o>0)for(let du of eo)Mi(du)&&vr(xs,du,1)}function yl(xs,eo,qc){if(qc.flags&1048576||qc.flags&2097152){let _o=!1;for(let du of qc.types)_o=yl(xs,eo,du)||_o;return _o}if(qc.flags&4194304){let _o=Mi(qc.type);if(_o&&!_o.isFixed&&!$hn(xs)){let du=zhn(xs,eo,qc);du&&vr(du,_o.typeParameter,la(xs)&262144?16:8)}return!0}if(qc.flags&262144){vr(ON(xs,xs.pattern?2:0),qc,32);let _o=dK(qc);if(_o&&yl(xs,eo,_o))return!0;let du=At(Gd(xs),Io),Bd=At(A0(xs),uf=>uf!==Uc?uf.type:Wi);return kt(Ha(Nn(du,Bd)),qx(eo)),!0}return!1}function ka(xs,eo){if(xs.flags&16777216)kt(xs.checkType,eo.checkType),kt(xs.extendsType,eo.extendsType),kt(fW(xs),fW(eo)),kt(IW(xs),IW(eo));else{let qc=[fW(eo),IW(eo)];vn(xs,qc,eo.flags,P?64:0)}}function Kc(xs,eo){let qc=rmn(xs,eo),_o=eo.types;if(qc||ue(eo.texts,du=>du.length===0))for(let du=0;du<_o.length;du++){let Bd=qc?qc[du]:Wi,uf=_o[du];if(Bd.flags&128&&uf.flags&8650752){let JC=Mi(uf),bA=JC?L_(JC.typeParameter):void 0;if(bA&&!Xo(bA)){let yh=bA.flags&1048576?bA.types:[bA],Vh=Ul(yh,(Fd,ES)=>Fd|ES.flags,0);if(!(Vh&4)){let Fd=Bd.value;Vh&296&&!emn(Fd,!0)&&(Vh&=-297),Vh&2112&&!Jne(Fd,!0)&&(Vh&=-2113);let ES=Ul(yh,(Qf,ch)=>ch.flags&Vh?Qf.flags&4?Qf:ch.flags&4?Bd:Qf.flags&134217728?Qf:ch.flags&134217728&&Got(Bd,ch)?Bd:Qf.flags&268435456?Qf:ch.flags&268435456&&Fd===jIn(ch.symbol,Fd)?Bd:Qf.flags&128?Qf:ch.flags&128&&ch.value===Fd?ch:Qf.flags&8?Qf:ch.flags&8?fR(+Fd):Qf.flags&32?Qf:ch.flags&32?fR(+Fd):Qf.flags&256?Qf:ch.flags&256&&ch.value===+Fd?ch:Qf.flags&64?Qf:ch.flags&64?dHs(Fd):Qf.flags&2048?Qf:ch.flags&2048&&kP(ch.value)===Fd?ch:Qf.flags&16?Qf:ch.flags&16?Fd==="true"?tn:Fd==="false"?Bs:Mn:Qf.flags&512?Qf:ch.flags&512&&ch.intrinsicName===Fd?ch:Qf.flags&32768?Qf:ch.flags&32768&&ch.intrinsicName===Fd?ch:Qf.flags&65536?Qf:ch.flags&65536&&ch.intrinsicName===Fd?ch:Qf:Qf,Wi);if(!(ES.flags&131072)){kt(ES,uf);continue}}}}kt(Bd,uf)}}function Vu(xs,eo){kt(_S(xs),_S(eo)),kt(qx(xs),qx(eo));let qc=E9(xs),_o=E9(eo);qc&&_o&&kt(qc,_o)}function gd(xs,eo){var qc,_o;if(la(xs)&4&&la(eo)&4&&(xs.target===eo.target||Nv(xs)&&Nv(eo))){js(lf(xs),lf(eo),DUt(xs.target));return}if(Yb(xs)&&Yb(eo)&&Vu(xs,eo),la(eo)&32&&!eo.declaration.nameType){let du=_S(eo);if(yl(xs,eo,du))return}if(!gHs(xs,eo)){if(L5(xs)){if(yA(eo)){let du=B9(xs),Bd=B9(eo),uf=lf(eo),JC=eo.target.elementFlags;if(yA(xs)&&YMs(xs,eo)){for(let Vh=0;Vh0){let Bd=tg(eo,qc),uf=Bd.length;for(let JC=0;JC1){let m=Me(u,jUt);if(m.length){let v=Ha(m,2);return Nn(Me(u,D=>!jUt(D)),[v])}}return u}function CHs(u){return u.priority&416?Kg(u.contraCandidates):LMs(u.contraCandidates)}function _Hs(u,m){let v=mHs(u.candidates),D=hHs(u.typeParameter)||pK(u.typeParameter),P=!D&&u.topLevel&&(u.isFixed||!sHs(m,u.typeParameter)),Y=D?Tr(v,Iy):P?Tr(v,V5):v,oe=u.priority&416?Ha(Y,2):FMs(Y);return D1(oe)}function zUt(u,m){let v=u.inferences[m];if(!v.inferredType){let D,P;if(u.signature){let oe=v.candidates?_Hs(v,u.signature):void 0,Be=v.contraCandidates?CHs(v):void 0;if(oe||Be){let Oe=oe&&(!Be||!(oe.flags&131073)&&jt(v.contraCandidates,He=>dg(oe,He))&&ue(u.inferences,He=>He!==v&&Xy(He.typeParameter)!==v.typeParameter||ue(He.candidates,qe=>dg(qe,oe))));D=Oe?oe:Be,P=Oe?Be:oe}else if(u.flags&1)D=Vn;else{let Oe=VQ(v.typeParameter);Oe&&(D=_l(Oe,fhn(J5s(u,m),u.nonFixingMapper)))}}else D=qhn(v);v.inferredType=D||qUt(!!(u.flags&2));let Y=Xy(v.typeParameter);if(Y){let oe=_l(Y,u.nonFixingMapper);(!D||!u.compareTypes(D,T1(oe,D)))&&(v.inferredType=P&&u.compareTypes(P,T1(oe,P))?P:oe)}OYs()}return v.inferredType}function qUt(u){return u?hr:cn}function $Ut(u){let m=[];for(let v=0;vg_(m)||FB(m)||mh(m)))}function MWe(u,m,v,D){switch(u.kind){case 80:if(!YL(u)){let oe=L0(u);return oe!==it?`${D?rd(D):"-1"}|${QC(m)}|${QC(v)}|${kg(oe)}`:void 0}case 110:return`0|${D?rd(D):"-1"}|${QC(m)}|${QC(v)}`;case 236:case 218:return MWe(u.expression,m,v,D);case 167:let P=MWe(u.left,m,v,D);return P&&`${P}.${u.right.escapedText}`;case 212:case 213:let Y=vK(u);if(Y!==void 0){let oe=MWe(u.expression,m,v,D);return oe&&`${oe}.${Y}`}if(Yg(u)&&Ir(u.argumentExpression)){let oe=L0(u.argumentExpression);if(kq(oe)||P2e(oe)&&!V2e(oe)){let Be=MWe(u.expression,m,v,D);return Be&&`${Be}.@${kg(oe)}`}}break;case 207:case 208:case 263:case 219:case 220:case 175:return`${rd(u)}#${QC(m)}`}}function h_(u,m){switch(m.kind){case 218:case 236:return h_(u,m.expression);case 227:return Jm(m)&&h_(u,m.left)||fo(m)&&m.operatorToken.kind===28&&h_(u,m.right)}switch(u.kind){case 237:return m.kind===237&&u.keywordToken===m.keywordToken&&u.name.escapedText===m.name.escapedText;case 80:case 81:return YL(u)?m.kind===110:m.kind===80&&L0(u)===L0(m)||(nc(m)||hg(m))&&fn(L0(u))===Uo(m);case 110:return m.kind===110;case 108:return m.kind===108;case 236:case 218:case 239:return h_(u.expression,m);case 212:case 213:let v=vK(u);if(v!==void 0){let D=_p(m)?vK(m):void 0;if(D!==void 0)return D===v&&h_(u.expression,m.expression)}if(Yg(u)&&Yg(m)&&Ir(u.argumentExpression)&&Ir(m.argumentExpression)){let D=L0(u.argumentExpression);if(D===L0(m.argumentExpression)&&(kq(D)||P2e(D)&&!V2e(D)))return h_(u.expression,m.expression)}break;case 167:return _p(m)&&u.right.escapedText===vK(m)&&h_(u.left,m.expression);case 227:return fo(u)&&u.operatorToken.kind===28&&h_(u.right,m)}return!1}function vK(u){if(jo(u))return u.name.escapedText;if(Yg(u))return yHs(u);if(hg(u)){let m=C9(u);return m?Ap(m):void 0}if(Si(u))return""+u.parent.parameters.indexOf(u)}function tKt(u){return u.flags&8192?u.escapedName:u.flags&384?Ap(""+u.value):void 0}function yHs(u){return d1(u.argumentExpression)?Ap(u.argumentExpression.text):Od(u.argumentExpression)?bHs(u.argumentExpression):void 0}function bHs(u){let m=TI(u,111551,!0);if(!m||!(kq(m)||m.flags&8))return;let v=m.valueDeclaration;if(v===void 0)return;let D=AW(v);if(D){let P=tKt(D);if(P!==void 0)return P}if(l1(v)&&$F(v,u)){let P=one(v);if(P){let Y=Nu(v.parent)?Kx(v):P_(P);return Y&&tKt(Y)}if(LF(v))return hP(v.name)}}function smn(u,m){for(;_p(u);)if(u=u.expression,h_(u,m))return!0;return!1}function BK(u,m){for(;GC(u);)if(u=u.expression,h_(u,m))return!0;return!1}function Xpe(u,m){if(u&&u.flags&1048576){let v=qfn(u,m);if(v&&iI(v)&2)return v.links.isDiscriminantProperty===void 0&&(v.links.isDiscriminantProperty=(v.links.checkFlags&192)===192&&!G5(Io(v))),!!v.links.isDiscriminantProperty}return!1}function omn(u,m){let v;for(let D of u)if(Xpe(m,D.escapedName)){if(v){v.push(D);continue}v=[D]}return v}function EHs(u,m){let v=new Map,D=0;for(let P of u)if(P.flags&61603840){let Y=Pi(P,m);if(Y){if(!D2e(Y))return;let oe=!1;TK(Y,Be=>{let Oe=QC(Iy(Be)),He=v.get(Oe);He?He!==cn&&(v.set(Oe,cn),oe=!0):v.set(Oe,P)}),oe||D++}}return D>=10&&D*2>=u.length?v:void 0}function HWe(u){let m=u.types;if(!(m.length<10||la(u)&32768||ct(m,v=>!!(v.flags&59506688))<10)){if(u.keyPropertyName===void 0){let v=F(m,P=>P.flags&59506688?F(Gd(P),Y=>IR(Io(Y))?Y.escapedName:void 0):void 0),D=v&&EHs(m,v);u.keyPropertyName=D?v:"",u.constituentMap=D}return u.keyPropertyName.length?u.keyPropertyName:void 0}}function YWe(u,m){var v;let D=(v=u.constituentMap)==null?void 0:v.get(QC(Iy(m)));return D!==cn?D:void 0}function amn(u,m){let v=HWe(u),D=v&&Pi(m,v);return D&&YWe(u,D)}function SHs(u,m){let v=HWe(u),D=v&&de(m.properties,Y=>Y.symbol&&Y.kind===304&&Y.symbol.escapedName===v&&$We(Y.initializer)),P=D&&COe(D.initializer);return P&&YWe(u,P)}function cmn(u,m){return h_(u,m)||smn(u,m)}function lmn(u,m){if(u.arguments){for(let v of u.arguments)if(cmn(m,v)||BK(v,m))return!0}return!!(u.expression.kind===212&&cmn(m,u.expression.expression))}function rKt(u){return u.id<=0&&(u.id=ytn,ytn++),u.id}function vHs(u,m){if(!(u.flags&1048576))return dg(u,m);for(let v of u.types)if(dg(v,m))return!0;return!1}function BHs(u,m){if(u===m)return u;if(m.flags&131072)return m;let v=`A${QC(u)},${QC(m)}`;return Hy(v)??HB(v,wHs(u,m))}function wHs(u,m){let v=nm(u,P=>vHs(m,P)),D=m.flags&512&&MQ(m)?Yf(v,Rq):v;return dg(m,D)?D:u}function nKt(u){if(la(u)&256)return!1;let m=pR(u);return!!(m.callSignatures.length||m.constructSignatures.length||m.members.get("bind")&&YQ(u,Js))}function Lse(u,m){return iKt(u,m)&m}function hR(u,m){return Lse(u,m)!==0}function iKt(u,m){u.flags&467927040&&(u=L_(u)||cn);let v=u.flags;if(v&268435460)return ot?16317953:16776705;if(v&134217856){let D=v&128&&u.value==="";return ot?D?12123649:7929345:D?12582401:16776705}if(v&40)return ot?16317698:16776450;if(v&256){let D=u.value===0;return ot?D?12123394:7929090:D?12582146:16776450}if(v&64)return ot?16317188:16775940;if(v&2048){let D=Hhn(u);return ot?D?12122884:7928580:D?12581636:16775940}return v&16?ot?16316168:16774920:v&528?ot?u===Bs||u===Ys?12121864:7927560:u===Bs||u===Ys?12580616:16774920:v&524288?m&(ot?83427327:83886079)?la(u)&16&&lZ(u)?ot?83427327:83886079:nKt(u)?ot?7880640:16728e3:ot?7888800:16736160:0:v&16384?9830144:v&32768?26607360:v&65536?42917664:v&12288?ot?7925520:16772880:v&67108864?ot?7888800:16736160:v&131072?0:v&1048576?Ul(u.types,(D,P)=>D|iKt(P,m),0):v&2097152?THs(u,m):83886079}function THs(u,m){let v=ah(u,402784252),D=0,P=134217727;for(let Y of u.types)if(!(v&&Y.flags&524288)){let oe=iKt(Y,m);D|=oe,P&=oe}return D&8256|P&134209471}function Dv(u,m){return nm(u,v=>hR(v,m))}function wK(u,m){let v=sKt(Dv(ot&&u.flags&2?TA:u,m));if(ot)switch(m){case 524288:return umn(v,65536,131072,33554432,Hn);case 1048576:return umn(v,131072,65536,16777216,Bt);case 2097152:case 4194304:return Yf(v,D=>hR(D,262144)?JMs(D):D)}return v}function umn(u,m,v,D,P){let Y=Lse(u,50528256);if(!(Y&m))return u;let oe=Ha([Xg,P]);return Yf(u,Be=>hR(Be,m)?Kg([Be,!(Y&D)&&hR(Be,v)?oe:Xg]):Be)}function sKt(u){return u===TA?cn:u}function oKt(u,m){return m?Ha([ep(u),P_(m)]):u}function gmn(u,m){var v;let D=sZ(m);if(!g2(D))return nn;let P=A2(D);return Pi(u,P)||L2e((v=vq(u,P))==null?void 0:v.type)||nn}function Amn(u,m){return RE(u,Ype)&&VMs(u,m)||L2e(N9(65,u,Bt,void 0))||nn}function L2e(u){return u&&(Te.noUncheckedIndexedAccess?Ha([u,fr]):u)}function dmn(u){return d0(N9(65,u,Bt,void 0)||nn)}function RHs(u){return u.parent.kind===210&&aKt(u.parent)||u.parent.kind===304&&aKt(u.parent.parent)?oKt(QWe(u),u.right):P_(u.right)}function aKt(u){return u.parent.kind===227&&u.parent.left===u||u.parent.kind===251&&u.parent.initializer===u}function NHs(u,m){return Amn(QWe(u),u.elements.indexOf(m))}function DHs(u){return dmn(QWe(u.parent))}function pmn(u){return gmn(QWe(u.parent),u.name)}function kHs(u){return oKt(pmn(u),u.objectAssignmentInitializer)}function QWe(u){let{parent:m}=u;switch(m.kind){case 250:return $r;case 251:return BOe(m)||nn;case 227:return RHs(m);case 221:return Bt;case 210:return NHs(m,u);case 231:return DHs(m);case 304:return pmn(m);case 305:return kHs(m)}return nn}function xHs(u){let m=u.parent,v=Imn(m.parent),D=m.kind===207?gmn(v,u.propertyName||u.name):u.dotDotDotToken?dmn(v):Amn(v,m.elements.indexOf(u));return oKt(D,u.initializer)}function fmn(u){return sa(u).resolvedType||P_(u)}function GHs(u){return u.initializer?fmn(u.initializer):u.parent.parent.kind===250?$r:u.parent.parent.kind===251&&BOe(u.parent.parent)||nn}function Imn(u){return u.kind===261?GHs(u):xHs(u)}function FHs(u){return u.kind===261&&u.initializer&&y9(u.initializer)||u.kind!==209&&u.parent.kind===227&&y9(u.parent.right)}function XQ(u){switch(u.kind){case 218:return XQ(u.expression);case 227:switch(u.operatorToken.kind){case 64:case 76:case 77:case 78:return XQ(u.left);case 28:return XQ(u.right)}}return u}function hmn(u){let{parent:m}=u;return m.kind===218||m.kind===227&&m.operatorToken.kind===64&&m.left===u||m.kind===227&&m.operatorToken.kind===28&&m.right===u?hmn(m):u}function ZHs(u){return u.kind===297?Iy(P_(u.expression)):Wi}function Fot(u){let m=sa(u);if(!m.switchTypes){m.switchTypes=[];for(let v of u.caseBlock.clauses)m.switchTypes.push(ZHs(v))}return m.switchTypes}function mmn(u){if(jt(u.caseBlock.clauses,v=>v.kind===297&&!mA(v.expression)))return;let m=[];for(let v of u.caseBlock.clauses){let D=v.kind===297?v.expression.text:void 0;m.push(D&&!k(m,D)?D:void 0)}return m}function LHs(u,m){return u.flags&1048576?!F(u.types,v=>!k(m,v)):k(m,u)}function Jpe(u,m){return!!(u===m||u.flags&131072||m.flags&1048576&&VHs(u,m))}function VHs(u,m){if(u.flags&1048576){for(let v of u.types)if(!tG(m.types,v))return!1;return!0}return u.flags&1056&&Hst(u)===m?!0:tG(m.types,u)}function TK(u,m){return u.flags&1048576?F(u.types,m):m(u)}function kv(u,m){return u.flags&1048576?jt(u.types,m):m(u)}function RE(u,m){return u.flags&1048576?ue(u.types,m):m(u)}function PHs(u,m){return u.flags&3145728?ue(u.types,m):m(u)}function nm(u,m){if(u.flags&1048576){let v=u.types,D=Me(v,m);if(D===v)return u;let P=u.origin,Y;if(P&&P.flags&1048576){let oe=P.types,Be=Me(oe,Oe=>!!(Oe.flags&1048576)||m(Oe));if(oe.length-Be.length===v.length-D.length){if(Be.length===1)return Be[0];Y=nUt(1048576,Be)}}return sUt(D,u.objectFlags&16809984,void 0,void 0,Y)}return u.flags&131072||m(u)?u:Wi}function Zot(u,m){return nm(u,v=>v!==m)}function WHs(u){return u.flags&1048576?u.types.length:1}function Yf(u,m,v){if(u.flags&131072)return u;if(!(u.flags&1048576))return m(u);let D=u.origin,P=D&&D.flags&1048576?D.types:u.types,Y,oe=!1;for(let Be of P){let Oe=Be.flags&1048576?Yf(Be,m,v):m(Be);oe||(oe=Be!==Oe),Oe&&(Y?Y.push(Oe):Y=[Oe])}return oe?Y&&Ha(Y,v?0:1):u}function Cmn(u,m,v,D){return u.flags&1048576&&v?Ha(At(u.types,m),1,v,D):Yf(u,m)}function Upe(u,m){return nm(u,v=>(v.flags&m)!==0)}function _mn(u,m){return ah(u,134217804)&&ah(m,402655616)?Yf(u,v=>v.flags&4?Upe(m,402653316):mK(v)&&!ah(m,402653188)?Upe(m,128):v.flags&8?Upe(m,264):v.flags&64?Upe(m,2112):v):u}function Vse(u){return u.flags===0}function RK(u){return u.flags===0?u.type:u}function Pse(u,m){return m?{flags:0,type:u.flags&131072?Vn:u}:u}function OHs(u){let m=Lh(256);return m.elementType=u,m}function cKt(u){return Pn[u.id]||(Pn[u.id]=OHs(u))}function ymn(u,m){let v=G2e(uZ(COe(m)));return Jpe(v,u.elementType)?u:cKt(Ha([u.elementType,v]))}function MHs(u){return u.flags&131072?OC:d0(u.flags&1048576?Ha(u.types,2):u)}function HHs(u){return u.finalArrayType||(u.finalArrayType=MHs(u.elementType))}function XWe(u){return la(u)&256?HHs(u):u}function YHs(u){return la(u)&256?u.elementType:Wi}function QHs(u){let m=!1;for(let v of u)if(!(v.flags&131072)){if(!(la(v)&256))return!1;m=!0}return m}function bmn(u){let m=hmn(u),v=m.parent,D=jo(v)&&(v.name.escapedText==="length"||v.parent.kind===214&&Ir(v.name)&&Gye(v.name)),P=v.kind===213&&v.expression===m&&v.parent.kind===227&&v.parent.operatorToken.kind===64&&v.parent.left===v&&!bF(v.parent)&&V_(P_(v.argumentExpression),296);return D||P}function XHs(u){return(nc(u)||pi(u)||ss(u)||Si(u))&&!!(kh(u)||wo(u)&&WT(u)&&u.initializer&&RF(u.initializer)&&xb(u.initializer))}function Lot(u,m){if(u=Zh(u),u.flags&8752)return Io(u);if(u.flags&7){if(iI(u)&262144){let D=u.links.syntheticOrigin;if(D&&Lot(D))return Io(u)}let v=u.valueDeclaration;if(v){if(XHs(v))return Io(u);if(nc(v)&&v.parent.parent.kind===251){let D=v.parent.parent,P=JWe(D.expression,void 0);if(P){let Y=D.awaitModifier?15:13;return N9(Y,P,Bt,void 0)}}m&&lg(m,mo(v,Z._0_needs_an_explicit_type_annotation,kl(u)))}}}function JWe(u,m){if(!(u.flags&67108864))switch(u.kind){case 80:let v=fn(L0(u));return Lot(v,m);case 110:return dYs(u);case 108:return Hot(u);case 212:{let D=JWe(u.expression,m);if(D){let P=u.name,Y;if(p(P)){if(!D.symbol)return;Y=Gg(D,_ne(D.symbol,P.escapedText))}else Y=Gg(D,P.escapedText);return Y&&Lot(Y,m)}return}case 218:return JWe(u.expression,m)}}function UWe(u){let m=sa(u),v=m.effectsSignature;if(v===void 0){let D;if(fo(u)){let oe=Ose(u.right);D=c8t(oe)}else u.parent.kind===245?D=JWe(u.expression,void 0):u.expression.kind!==108&&(GC(u)?D=HN(k2e(Ol(u.expression),u.expression),u.expression):D=Ose(u.expression));let P=tg(D&&fy(D)||cn,0),Y=P.length===1&&!P[0].typeParameters?P[0]:jt(P,Emn)?Hse(u):void 0;v=m.effectsSignature=Y&&Emn(Y)?Y:Za}return v===Za?void 0:v}function Emn(u){return!!(Tv(u)||u.declaration&&(Nse(u.declaration)||cn).flags&131072)}function JHs(u,m){if(u.kind===1||u.kind===3)return m.arguments[u.parameterIndex];let v=QA(m.expression);return _p(v)?QA(v.expression):void 0}function UHs(u){let m=ji(u,CJ),v=ms(u),D=rs(v,m.statements.pos);PA.add(qh(v,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function KWe(u){let m=Vot(u,!1);return $a=u,ru=m,m}function jWe(u){let m=QA(u,!0);return m.kind===97||m.kind===227&&(m.operatorToken.kind===56&&(jWe(m.left)||jWe(m.right))||m.operatorToken.kind===57&&jWe(m.left)&&jWe(m.right))}function Vot(u,m){for(;;){if(u===$a)return ru;let v=u.flags;if(v&4096){if(!m){let D=rKt(u),P=rq[D];return P!==void 0?P:rq[D]=Vot(u,!0)}m=!1}if(v&368)u=u.antecedent;else if(v&512){let D=UWe(u.node);if(D){let P=Tv(D);if(P&&P.kind===3&&!P.type){let Y=u.node.arguments[P.parameterIndex];if(Y&&jWe(Y))return!1}if(ud(D).flags&131072)return!1}u=u.antecedent}else{if(v&4)return jt(u.antecedent,D=>Vot(D,!1));if(v&8){let D=u.antecedent;if(D===void 0||D.length===0)return!1;u=D[0]}else if(v&128){let D=u.node;if(D.clauseStart===D.clauseEnd&&f_n(D.switchStatement))return!1;u=u.antecedent}else if(v&1024){$a=void 0;let D=u.node.target,P=D.antecedent;D.antecedent=u.node.antecedents;let Y=Vot(u.antecedent,!1);return D.antecedent=P,Y}else return!(v&1)}}}function Pot(u,m){for(;;){let v=u.flags;if(v&4096){if(!m){let D=rKt(u),P=SQ[D];return P!==void 0?P:SQ[D]=Pot(u,!0)}m=!1}if(v&496)u=u.antecedent;else if(v&512){if(u.node.expression.kind===108)return!0;u=u.antecedent}else{if(v&4)return ue(u.antecedent,D=>Pot(D,!1));if(v&8)u=u.antecedent[0];else if(v&1024){let D=u.node.target,P=D.antecedent;D.antecedent=u.node.antecedents;let Y=Pot(u.antecedent,!1);return D.antecedent=P,Y}else return!!(v&1)}}}function lKt(u){switch(u.kind){case 110:return!0;case 80:if(!YL(u)){let v=L0(u);return kq(v)||P2e(v)&&!V2e(v)||!!v.valueDeclaration&&UA(v.valueDeclaration)}break;case 212:case 213:return lKt(u.expression)&&yR(sa(u).resolvedSymbol||it);case 207:case 208:let m=Rw(u.parent);return Si(m)||vLe(m)?!uKt(m):nc(m)&&cSe(m)}return!1}function dZ(u,m,v=m,D,P=(Y=>(Y=Gs(u,UJ))==null?void 0:Y.flowNode)()){let Y,oe=!1,Be=0;if(Yc)return nn;if(!P)return m;tu++;let Oe=co,He=RK(kt(P));co=Oe;let qe=la(He)&256&&bmn(u)?OC:XWe(He);if(qe===gs||u.parent&&u.parent.kind===236&&!(qe.flags&131072)&&Dv(qe,2097152).flags&131072)return m;return qe;function Vt(){return oe?Y:(oe=!0,Y=MWe(u,m,v,D))}function kt(zn){var as;if(Be===2e3)return(as=ki)==null||as.instant(ki.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:zn.id}),Yc=!0,UHs(u),nn;Be++;let Ms;for(;;){let Ao=zn.flags;if(Ao&4096){for(let tc=Oe;tc=0&&Ms.parameterIndex!(tc.flags&163840)):as.kind===222&&BK(as.expression,u)&&(Ao=Bd(Ao,zn.node,tc=>!(tc.flags&131072||tc.flags&128&&tc.value==="undefined"))));let ea=yl(as,Ao);ea&&(Ao=Vu(Ao,ea,zn.node))}return Pse(Ao,Vse(Ms))}function Ji(zn){let as=[],Ms=!1,Ao=!1,ea;for(let tc of zn.antecedent){if(!ea&&tc.flags&128&&tc.node.clauseStart===tc.node.clauseEnd){ea=tc;continue}let jg=kt(tc),nA=RK(jg);if(nA===m&&m===v)return nA;Qi(as,nA),Jpe(nA,v)||(Ms=!0),Vse(jg)&&(Ao=!0)}if(ea){let tc=kt(ea),jg=RK(tc);if(!(jg.flags&131072)&&!k(as,jg)&&!f_n(ea.node.switchStatement)){if(jg===m&&m===v)return jg;as.push(jg),Jpe(jg,v)||(Ms=!0),Vse(tc)&&(Ao=!0)}}return Pse(To(as,Ms?2:1),Ao)}function Mi(zn){let as=rKt(zn),Ms=dse[as]||(dse[as]=new Map),Ao=Vt();if(!Ao)return m;let ea=Ms.get(Ao);if(ea)return ea;for(let tC=Oo;tC{let tC=Ba(Sp,Ao)||cn;return!(tC.flags&131072)&&!(nA.flags&131072)&&xWe(nA,tC)})}function Kc(zn,as,Ms,Ao,ea){if((Ms===37||Ms===38)&&zn.flags&1048576){let tc=HWe(zn);if(tc&&tc===vK(as)){let jg=YWe(zn,P_(Ao));if(jg)return Ms===(ea?37:38)?jg:IR(Pi(jg,tc)||cn)?Zot(zn,jg):zn}}return ka(zn,as,tc=>qc(tc,Ms,Ao,ea))}function Vu(zn,as,Ms){if(Ms.clauseStartYWe(zn,tc)||cn));if(ea!==cn)return ea}return ka(zn,as,Ao=>uf(Ao,Ms))}function gd(zn,as,Ms){if(h_(u,as))return wK(zn,Ms?4194304:8388608);ot&&Ms&&BK(as,u)&&(zn=wK(zn,2097152));let Ao=yl(as,zn);return Ao?ka(zn,Ao,ea=>Dv(ea,Ms?4194304:8388608)):zn}function Ll(zn,as,Ms){let Ao=Gg(zn,as);return Ao?!!(Ao.flags&16777216||iI(Ao)&48)||Ms:!!vq(zn,as)||!Ms}function Ef(zn,as,Ms){let Ao=A2(as);if(kv(zn,tc=>Ll(tc,Ao,!0)))return nm(zn,tc=>Ll(tc,Ao,Ms));if(Ms){let tc=z3s();if(tc)return Kg([zn,kse(tc,[as,cn])])}return zn}function UI(zn,as,Ms,Ao,ea){return ea=ea!==(Ms.kind===112)!=(Ao!==38&&Ao!==36),y2(zn,as,ea)}function V0(zn,as,Ms){switch(as.operatorToken.kind){case 64:case 76:case 77:case 78:return gd(y2(zn,as.right,Ms),as.left,Ms);case 35:case 36:case 37:case 38:let Ao=as.operatorToken.kind,ea=XQ(as.left),tc=XQ(as.right);if(ea.kind===222&&mA(tc))return _o(zn,ea,Ao,tc,Ms);if(tc.kind===222&&mA(ea))return _o(zn,tc,Ao,ea,Ms);if(h_(u,ea))return qc(zn,Ao,tc,Ms);if(h_(u,tc))return qc(zn,Ao,ea,Ms);ot&&(BK(ea,u)?zn=eo(zn,Ao,tc,Ms):BK(tc,u)&&(zn=eo(zn,Ao,ea,Ms)));let jg=yl(ea,zn);if(jg)return Kc(zn,jg,Ao,tc,Ms);let nA=yl(tc,zn);if(nA)return Kc(zn,nA,Ao,ea,Ms);if(Fd(ea))return ES(zn,Ao,tc,Ms);if(Fd(tc))return ES(zn,Ao,ea,Ms);if(hY(tc)&&!_p(ea))return UI(zn,ea,tc,Ao,Ms);if(hY(ea)&&!_p(tc))return UI(zn,tc,ea,Ao,Ms);break;case 104:return Qf(zn,as,Ms);case 103:if(p(as.left))return xs(zn,as,Ms);let Sp=XQ(as.right);if(x2e(zn)&&_p(u)&&h_(u.expression,Sp)){let tC=P_(as.left);if(g2(tC)&&vK(u)===A2(tC))return Dv(zn,Ms?524288:65536)}if(h_(u,Sp)){let tC=P_(as.left);if(g2(tC))return Ef(zn,tC,Ms)}break;case 28:return y2(zn,as.right,Ms);case 56:return Ms?y2(y2(zn,as.left,!0),as.right,!0):Ha([y2(zn,as.left,!1),y2(zn,as.right,!1)]);case 57:return Ms?Ha([y2(zn,as.left,!0),y2(zn,as.right,!0)]):y2(y2(zn,as.left,!1),as.right,!1)}return zn}function xs(zn,as,Ms){let Ao=XQ(as.right);if(!h_(u,Ao))return zn;pe.assertNode(as.left,p);let ea=rat(as.left);if(ea===void 0)return zn;let tc=ea.parent,jg=zh(pe.checkDefined(ea.valueDeclaration,"should always have a declaration"))?Io(tc):Fp(tc);return Gv(zn,jg,Ms,!0)}function eo(zn,as,Ms,Ao){let ea=as===35||as===37,tc=as===35||as===36?98304:32768,jg=P_(Ms);return ea!==Ao&&RE(jg,Sp=>!!(Sp.flags&tc))||ea===Ao&&RE(jg,Sp=>!(Sp.flags&(3|tc)))?wK(zn,2097152):zn}function qc(zn,as,Ms,Ao){if(zn.flags&1)return zn;(as===36||as===38)&&(Ao=!Ao);let ea=P_(Ms),tc=as===35||as===36;if(ea.flags&98304){if(!ot)return zn;let jg=tc?Ao?262144:2097152:ea.flags&65536?Ao?131072:1048576:Ao?65536:524288;return wK(zn,jg)}if(Ao){if(!tc&&(zn.flags&2||kv(zn,mk))){if(ea.flags&469893116||mk(ea))return ea;if(ea.flags&524288)return fs}let jg=nm(zn,nA=>xWe(nA,ea)||tc&&UMs(nA,ea));return _mn(jg,ea)}return IR(ea)?nm(zn,jg=>!(Phn(jg)&&xWe(jg,ea))):zn}function _o(zn,as,Ms,Ao,ea){(Ms===36||Ms===38)&&(ea=!ea);let tc=XQ(as.expression);if(!h_(u,tc)){ot&&BK(tc,u)&&ea===(Ao.text!=="undefined")&&(zn=wK(zn,2097152));let jg=yl(tc,zn);return jg?ka(zn,jg,nA=>du(nA,Ao,ea)):zn}return du(zn,Ao,ea)}function du(zn,as,Ms){return Ms?JC(zn,as.text):wK(zn,mOt.get(as.text)||32768)}function Bd(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao},ea){return Ms!==Ao&&ue(Fot(as).slice(Ms,Ao),ea)?Dv(zn,2097152):zn}function uf(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=Fot(as);if(!ea.length)return zn;let tc=ea.slice(Ms,Ao),jg=Ms===Ao||k(tc,Wi);if(zn.flags&2&&!jg){let P0;for(let Qb=0;QbxWe(nA,P0)),nA);if(!jg)return Sp;let tC=nm(zn,P0=>!(Phn(P0)&&k(ea,P0.flags&32768?Bt:Iy(WMs(P0)))));return Sp.flags&131072?tC:Ha([Sp,tC])}function JC(zn,as){switch(as){case"string":return bA(zn,$r,1);case"number":return bA(zn,ri,2);case"bigint":return bA(zn,ao,4);case"boolean":return bA(zn,Mn,8);case"symbol":return bA(zn,ci,16);case"object":return zn.flags&1?zn:Ha([bA(zn,fs,32),bA(zn,Hn,131072)]);case"function":return zn.flags&1?zn:bA(zn,Js,64);case"undefined":return bA(zn,Bt,65536)}return bA(zn,fs,128)}function bA(zn,as,Ms){return Yf(zn,Ao=>MN(Ao,as,bf)?hR(Ao,Ms)?Ao:Wi:YQ(as,Ao)?as:hR(Ao,Ms)?Kg([Ao,as]):Wi)}function yh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=mmn(as);if(!ea)return zn;let tc=Se(as.caseBlock.clauses,Sp=>Sp.kind===298);if(Ms===Ao||tc>=Ms&&tcLse(tC,Sp)===Sp)}let nA=ea.slice(Ms,Ao);return Ha(At(nA,Sp=>Sp?JC(zn,Sp):Wi))}function Vh(zn,{switchStatement:as,clauseStart:Ms,clauseEnd:Ao}){let ea=Se(as.caseBlock.clauses,nA=>nA.kind===298),tc=Ms===Ao||ea>=Ms&&eanA.kind===297?y2(zn,nA.expression,!0):Wi))}function Fd(zn){return(jo(zn)&&Vo(zn.name)==="constructor"||Yg(zn)&&mA(zn.argumentExpression)&&zn.argumentExpression.text==="constructor")&&h_(u,zn.expression)}function ES(zn,as,Ms,Ao){if(Ao?as!==35&&as!==37:as!==36&&as!==38)return zn;let ea=P_(Ms);if(!V8t(ea)&&!dR(ea))return zn;let tc=Gg(ea,"prototype");if(!tc)return zn;let jg=Io(tc),nA=Xo(jg)?void 0:jg;if(!nA||nA===qn||nA===Js)return zn;if(Xo(zn))return nA;return nm(zn,tC=>Sp(tC,nA));function Sp(tC,P0){return tC.flags&524288&&la(tC)&1||P0.flags&524288&&la(P0)&1?tC.symbol===P0.symbol:YQ(tC,P0)}}function Qf(zn,as,Ms){let Ao=XQ(as.left);if(!h_(u,Ao))return Ms&&ot&&BK(Ao,u)?wK(zn,2097152):zn;let ea=as.right,tc=P_(ea);if(!Z5(tc,qn))return zn;let jg=UWe(as),nA=jg&&Tv(jg);if(nA&&nA.kind===1&&nA.parameterIndex===0)return Gv(zn,nA.type,Ms,!0);if(!Z5(tc,Js))return zn;let Sp=Yf(tc,ch);return Xo(zn)&&(Sp===qn||Sp===Js)||!Ms&&!(Sp.flags&524288&&!mk(Sp))?zn:Gv(zn,Sp,Ms,!0)}function ch(zn){let as=Pi(zn,"prototype");if(as&&!Xo(as))return as;let Ms=tg(zn,1);return Ms.length?Ha(At(Ms,Ao=>ud(y2e(Ao)))):Xg}function Gv(zn,as,Ms,Ao){let ea=zn.flags&1048576?`N${QC(zn)},${QC(as)},${(Ms?1:0)|(Ao?2:0)}`:void 0;return Hy(ea)??HB(ea,sfe(zn,as,Ms,Ao))}function sfe(zn,as,Ms,Ao){if(!Ms){if(zn===as)return Wi;if(Ao)return nm(zn,Sp=>!Z5(Sp,as));zn=zn.flags&2?TA:zn;let nA=Gv(zn,as,!0,!1);return sKt(nm(zn,Sp=>!Jpe(Sp,nA)))}if(zn.flags&3||zn===as)return as;let ea=Ao?Z5:YQ,tc=zn.flags&1048576?HWe(zn):void 0,jg=Yf(as,nA=>{let Sp=tc&&Pi(nA,tc),tC=Sp&&YWe(zn,Sp),P0=Yf(tC||zn,Ao?Qb=>Z5(Qb,nA)?Qb:Z5(nA,Qb)?nA:Wi:Qb=>Mpe(Qb,nA)?Qb:Mpe(nA,Qb)?nA:YQ(Qb,nA)?Qb:YQ(nA,Qb)?nA:Wi);return P0.flags&131072?Yf(zn,Qb=>ah(Qb,465829888)&&ea(nA,L_(Qb)||cn)?Kg([Qb,nA]):Wi):P0});return jg.flags&131072?YQ(as,zn)?as:dg(zn,as)?zn:dg(as,zn)?as:Kg([zn,as]):jg}function lSe(zn,as,Ms){if(lmn(as,u)){let Ao=Ms||!_B(as)?UWe(as):void 0,ea=Ao&&Tv(Ao);if(ea&&(ea.kind===0||ea.kind===1))return ofe(zn,ea,as,Ms)}if(x2e(zn)&&_p(u)&&jo(as.expression)){let Ao=as.expression;if(h_(u.expression,XQ(Ao.expression))&&Ir(Ao.name)&&Ao.name.escapedText==="hasOwnProperty"&&as.arguments.length===1){let ea=as.arguments[0];if(mA(ea)&&vK(u)===Ap(ea.text))return Dv(zn,Ms?524288:65536)}}return zn}function ofe(zn,as,Ms,Ao){if(as.type&&!(Xo(zn)&&(as.type===qn||as.type===Js))){let ea=JHs(as,Ms);if(ea){if(h_(u,ea))return Gv(zn,as.type,Ao,!1);ot&&BK(ea,u)&&(Ao&&!hR(as.type,65536)||!Ao&&RE(as.type,iOe))&&(zn=wK(zn,2097152));let tc=yl(ea,zn);if(tc)return ka(zn,tc,jg=>Gv(jg,as.type,Ao,!1))}}return zn}function y2(zn,as,Ms){if(gY(as)||fo(as.parent)&&(as.parent.operatorToken.kind===61||as.parent.operatorToken.kind===78)&&as.parent.left===as)return uSe(zn,as,Ms);switch(as.kind){case 80:if(!h_(u,as)&&re<5){let Ao=L0(as);if(kq(Ao)){let ea=Ao.valueDeclaration;if(ea&&nc(ea)&&!ea.type&&ea.initializer&&lKt(u)){re++;let tc=y2(zn,ea.initializer,Ms);return re--,tc}}}case 110:case 108:case 212:case 213:return gd(zn,as,Ms);case 214:return lSe(zn,as,Ms);case 218:case 236:case 239:return y2(zn,as.expression,Ms);case 227:return V0(zn,as,Ms);case 225:if(as.operator===54)return y2(zn,as.operand,!Ms);break}return zn}function uSe(zn,as,Ms){if(h_(u,as))return wK(zn,Ms?2097152:262144);let Ao=yl(as,zn);return Ao?ka(zn,Ao,ea=>Dv(ea,Ms?2097152:262144)):zn}}function KHs(u,m){if(u=fn(u),(m.kind===80||m.kind===81)&&(P7(m)&&(m=m.parent),MT(m)&&(!bF(m)||B3(m)))){let v=vot(B3(m)&&m.kind===212?tat(m,void 0,!0):P_(m));if(fn(sa(m).resolvedSymbol)===u)return v}return HT(m)&&cv(m.parent)&&ZQ(m.parent)?Vst(m.parent.symbol):tbe(m)&&B3(m.parent)?b9(u):AR(u)}function Kpe(u){return ji(u.parent,m=>bu(m)&&!ZL(m)||m.kind===269||m.kind===308||m.kind===173)}function jHs(u){return(u.lastAssignmentPos!==void 0||V2e(u)&&u.lastAssignmentPos!==void 0)&&u.lastAssignmentPos<0}function V2e(u){return!Smn(u,void 0)}function Smn(u,m){let v=ji(u.valueDeclaration,Wot);if(!v)return!1;let D=sa(v);return D.flags&131072||(D.flags|=131072,zHs(v)||Bmn(v)),!u.lastAssignmentPos||m&&Math.abs(u.lastAssignmentPos)m.kind!==233&&vmn(m.name))}function zHs(u){return!!ji(u.parent,m=>Wot(m)&&!!(sa(m).flags&131072))}function Wot(u){return kd(u)||ll(u)}function Bmn(u){switch(u.kind){case 80:let m=QD(u);if(m!==0){let P=L0(u),Y=m===1||P.lastAssignmentPos!==void 0&&P.lastAssignmentPos<0;if(P2e(P)){if(P.lastAssignmentPos===void 0||Math.abs(P.lastAssignmentPos)!==Number.MAX_VALUE){let oe=ji(u,Wot),Be=ji(P.valueDeclaration,Wot);P.lastAssignmentPos=oe===Be?qHs(u,P.valueDeclaration):Number.MAX_VALUE}Y&&P.lastAssignmentPos>0&&(P.lastAssignmentPos*=-1)}}return;case 282:let v=u.parent.parent,D=u.propertyName||u.name;if(!u.isTypeOnly&&!v.isTypeOnly&&!v.moduleSpecifier&&D.kind!==11){let P=TI(D,111551,!0,!0);if(P&&P2e(P)){let Y=P.lastAssignmentPos!==void 0&&P.lastAssignmentPos<0?-1:1;P.lastAssignmentPos=Y*Number.MAX_VALUE}}return;case 265:case 266:case 267:return}uc(u)||Lu(u,Bmn)}function qHs(u,m){let v=u.pos;for(;u&&u.pos>m.pos;){switch(u.kind){case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 251:case 255:case 256:case 259:case 264:v=u.end}u=u.parent}return v}function kq(u){return u.flags&3&&(TKt(u)&6)!==0}function P2e(u){let m=u.valueDeclaration&&Rw(u.valueDeclaration);return!!m&&(Si(m)||nc(m)&&(iQ(m.parent)||wmn(m)))}function wmn(u){return!!(u.parent.flags&1)&&!(Hc(u)&32||u.parent.parent.kind===244&&fc(u.parent.parent.parent))}function $Hs(u){let m=sa(u);if(m.parameterInitializerContainsUndefined===void 0){if(!VN(u,8))return AK(u.symbol),!0;let v=!!hR(zpe(u,0),16777216);if(!xr())return AK(u.symbol),!0;m.parameterInitializerContainsUndefined??(m.parameterInitializerContainsUndefined=v)}return m.parameterInitializerContainsUndefined}function eYs(u,m){return ot&&m.kind===170&&m.initializer&&hR(u,16777216)&&!$Hs(m)?Dv(u,524288):u}function tYs(u,m){let v=m.parent;return v.kind===212||v.kind===167||v.kind===214&&v.expression===m||v.kind===215&&v.expression===m||v.kind===213&&v.expression===m&&!(kv(u,Rmn)&&_K(P_(v.argumentExpression)))}function Tmn(u){return u.flags&2097152?jt(u.types,Tmn):!!(u.flags&465829888&&WN(u).flags&1146880)}function Rmn(u){return u.flags&2097152?jt(u.types,Rmn):!!(u.flags&465829888&&!ah(WN(u),98304))}function rYs(u,m){let v=(Ir(u)||jo(u)||Yg(u))&&!(($T(u.parent)||_U(u.parent))&&u.parent.tagName===u)&&(m&&m&32?Jy(u,8):Jy(u,void 0));return v&&!G5(v)}function gKt(u,m,v){return xse(u)&&(u=u.baseType),!(v&&v&2)&&kv(u,Tmn)&&(tYs(u,m)||rYs(m,v))?Yf(u,WN):u}function Nmn(u){return!!ji(u,m=>{let v=m.parent;return v===void 0?"quit":Cf(v)?v.expression===m&&Od(m):R0(v)?v.name===m||v.propertyName===m:!1})}function xq(u,m,v,D){if(Ht&&!(u.flags&33554432&&!ss(u)&&!pi(u)))switch(m){case 1:return Oot(u);case 2:return Dmn(u,v,D);case 3:return kmn(u);case 4:return AKt(u);case 5:return xmn(u);case 6:return Gmn(u);case 7:return Fmn(u);case 8:return Zmn(u);case 0:{if(Ir(u)&&(MT(u)||a0(u.parent)||km(u.parent)&&u.parent.moduleReference===u)&&Wmn(u)){if(SJ(u.parent)&&(jo(u.parent)?u.parent.expression:u.parent.left)!==u)return;Oot(u);return}if(SJ(u)){let P=u;for(;SJ(P);){if(ww(P))return;P=P.parent}return Dmn(u)}return Cf(u)?kmn(u):eI(u)||Pw(u)?AKt(u):km(u)?d3(u)||wat(u)?Gmn(u):void 0:R0(u)?Fmn(u):((kd(u)||hl(u))&&xmn(u),!Te.emitDecoratorMetadata||!oQ(u)||!p1(u)||!u.modifiers||!OJ(Ue,u,u.parent,u.parent.parent)?void 0:Zmn(u))}default:pe.assertNever(m,`Unhandled reference hint: ${m}`)}}function Oot(u){let m=L0(u);m&&m!==st&&m!==it&&!YL(u)&&zWe(m,u)}function Dmn(u,m,v){let D=jo(u)?u.expression:u.left;if(vF(D)||!Ir(D))return;let P=L0(D);if(!P||P===it)return;if(sS(Te)||Fb(Te)&&Nmn(u)){zWe(P,u);return}let Y=v||RI(D);if(Xo(Y)||Y===Vn){zWe(P,u);return}let oe=m;if(!oe&&!v){let Be=jo(u)?u.name:u.right,Oe=p(Be)&&sOe(Be.escapedText,Be),He=QD(u),qe=fy(He!==0||kKt(u)?D1(Y):Y);oe=p(Be)?Oe&&nat(qe,Oe)||void 0:Gg(qe,Be.escapedText)}oe&&(oSe(oe)||oe.flags&8&&u.parent.kind===307)||zWe(P,u)}function kmn(u){if(Ir(u.expression)){let m=u.expression,v=fn(TI(m,-1,!0,!0,u));v&&zWe(v,m)}}function AKt(u){if(!$ot(u)){let m=PA&&Te.jsx===2?Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:void 0,v=Mw(u),D=eI(u)?u.tagName:u,P=Te.jsx!==1&&Te.jsx!==3,Y;if(Pw(u)&&v==="null"||(Y=An(D,v,P?111551:111167,m,!0)),Y&&(Y.isReferenced=-1,Ht&&Y.flags&2097152&&!uR(Y)&&Mot(Y)),Pw(u)){let oe=ms(u),Be=W8t(oe);if(Be){let Oe=B0(Be).escapedText;An(D,Oe,P?111551:111167,m,!0)}}}}function xmn(u){if(Ze<2&&SI(u)&2){let m=xb(u);nYs(m)}}function Gmn(u){Ga(u,32)&&Lmn(u)}function Fmn(u){if(!u.parent.parent.moduleSpecifier&&!u.isTypeOnly&&!u.parent.parent.isTypeOnly){let m=u.propertyName||u.name;if(m.kind===11)return;let v=An(m,m.escapedText,2998271,void 0,!0);if(!(v&&(v===dt||v===pr||v.declarations&&fc(Tn(v.declarations[0]))))){let D=v&&(v.flags&2097152?YC(v):v);(!D||Hb(D)&111551)&&(Lmn(u),Oot(m))}return}}function Zmn(u){if(Te.emitDecoratorMetadata){let m=de(u.modifiers,So);if(!m)return;switch(eC(m,16),u.kind){case 264:let v=lN(u);if(v)for(let oe of v.parameters)Wse(_at(oe));break;case 178:case 179:let D=u.kind===178?179:178,P=Cp(Uo(u),D);Wse(ZQ(u)||P&&ZQ(P));break;case 175:for(let oe of u.parameters)Wse(_at(oe));Wse(xb(u));break;case 173:Wse(kh(u));break;case 170:Wse(_at(u));let Y=u.parent;for(let oe of Y.parameters)Wse(_at(oe));Wse(xb(Y));break}}}function zWe(u,m){if(Ht&&qU(u,111551)&&!OY(m)){let v=YC(u);Hb(u,!0)&1160127&&(sS(Te)||Fb(Te)&&Nmn(m)||!oSe(fn(v)))&&Mot(u)}}function Mot(u){pe.assert(Ht);let m=fa(u);if(!m.referenced){m.referenced=!0;let v=Mb(u);if(!v)return pe.fail();if(d3(v)&&Hb(Zh(u))&111551){let D=B0(v.moduleReference);Oot(D)}}}function Lmn(u){let m=Uo(u),v=YC(m);v&&(v===it||Hb(m,!0)&111551&&!oSe(v))&&Mot(m)}function Vmn(u,m){if(!u)return;let v=B0(u),D=(u.kind===80?788968:1920)|2097152,P=An(v,v.escapedText,D,void 0,!0);if(P&&P.flags&2097152){if(Ht&&qi(P)&&!oSe(YC(P))&&!uR(P))Mot(P);else if(m&&sS(Te)&&i0(Te)>=5&&!qi(P)&&!jt(P.declarations,nN)){let Y=Sr(u,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),oe=de(P.declarations||E,d9);oe&&lg(Y,mo(oe,Z._0_was_imported_here,Vo(v)))}}}function nYs(u){Vmn(u&&ene(u),!1)}function Wse(u){let m=m8t(u);m&&fC(m)&&Vmn(m,!0)}function iYs(u,m){var v;let D=Io(u),P=u.valueDeclaration;if(P){if(hg(P)&&!P.initializer&&!P.dotDotDotToken&&P.parent.elements.length>=2){let Y=P.parent.parent,oe=Rw(Y);if(oe.kind===261&&jQ(oe)&6||oe.kind===170){let Be=sa(Y);if(!(Be.flags&4194304)){Be.flags|=4194304;let Oe=Cc(Y,0),He=Oe&&Yf(Oe,WN);if(Be.flags&=-4194305,He&&He.flags&1048576&&!(oe.kind===170&&uKt(oe))){let qe=P.parent,Vt=dZ(qe,He,He,void 0,m.flowNode);return Vt.flags&131072?Wi:uW(P,Vt,!0)}}}}if(Si(P)&&!P.type&&!P.initializer&&!P.dotDotDotToken){let Y=P.parent;if(Y.parameters.length>=2&&dot(Y)){let oe=O2e(Y);if(oe&&oe.parameters.length===1&&D0(oe)){let Be=Fpe(_l(Io(oe.parameters[0]),(v=JQ(Y))==null?void 0:v.nonFixingMapper));if(Be.flags&1048576&&RE(Be,yA)&&!jt(Y.parameters,uKt)){let Oe=dZ(Y,Be,Be,void 0,m.flowNode),He=Y.parameters.indexOf(P)-(vP(Y)?1:0);return R1(Oe,fR(He))}}}}}return D}function Pmn(u,m){if(YL(u))return;if(m===st){if(FKt(u,!0)){Sr(u,Z.arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks);return}let Y=A1(u);if(Y)for(Ze<2&&(Y.kind===220?Sr(u,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):Ga(Y,1024)&&Sr(u,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),sa(Y).flags|=512;Y&&lA(Y);)Y=A1(Y),Y&&(sa(Y).flags|=512);return}let v=fn(m),D=D8t(v,u);dy(D)&&cUt(u,D)&&D.declarations&&YB(u,D.declarations,u.escapedText);let P=v.valueDeclaration;if(P&&v.flags&32&&xa(P)&&P.name!==u){let Y=r0(u,!1,!1);for(;Y.kind!==308&&Y.parent!==P;)Y=r0(Y,!1,!1);Y.kind!==308&&(sa(P).flags|=262144,sa(Y).flags|=262144,sa(u).flags|=536870912)}lYs(u,m)}function sYs(u,m){if(YL(u))return qWe(u);let v=L0(u);if(v===it)return nn;if(Pmn(u,v),v===st)return FKt(u)?nn:Io(v);Wmn(u)&&xq(u,1);let D=fn(v),P=D.valueDeclaration,Y=P;if(P&&P.kind===209&&k(MB,P.parent)&&ji(u,Mi=>Mi===P.parent))return ds;let oe=iYs(D,u),Be=QD(u);if(Be){if(!(D.flags&3)&&!(wo(u)&&D.flags&512)){let Mi=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return Sr(u,Mi,kl(v)),nn}if(yR(D))return D.flags&3?Sr(u,Z.Cannot_assign_to_0_because_it_is_a_constant,kl(v)):Sr(u,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,kl(v)),nn}let Oe=D.flags&2097152;if(D.flags&3){if(Be===1)return qge(u)?uZ(oe):oe}else if(Oe)P=Mb(v);else return oe;if(!P)return oe;oe=gKt(oe,u,m);let He=Rw(P).kind===170,qe=Kpe(P),Vt=Kpe(u),kt=Vt!==qe,vr=u.parent&&u.parent.parent&&Lx(u.parent)&&aKt(u.parent.parent),dn=v.flags&134217728,vn=oe===En||oe===OC,ii=vn&&u.parent.kind===236;for(;Vt!==qe&&(Vt.kind===219||Vt.kind===220||Vge(Vt))&&(kq(D)&&oe!==OC||P2e(D)&&Smn(D,u));)Vt=Kpe(Vt);let Yi=Y&&nc(Y)&&!Y.initializer&&!Y.exclamationToken&&wmn(Y)&&!jHs(v),js=He||Oe||kt&&!Yi||vr||dn||oYs(u,P)||oe!==En&&oe!==OC&&(!ot||(oe.flags&16387)!==0||OY(u)||eKt(u)||u.parent.kind===282)||u.parent.kind===236||P.kind===261&&P.exclamationToken||P.flags&33554432,Co=ii?Bt:js?He?eYs(oe,P):oe:vn?Bt:mW(oe),Ji=ii?gZ(dZ(u,oe,Co,Vt)):dZ(u,oe,Co,Vt);if(!bmn(u)&&(oe===En||oe===OC)){if(Ji===En||Ji===OC)return Rt&&(Sr(Il(P),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,kl(v),no(Ji)),Sr(u,Z.Variable_0_implicitly_has_an_1_type,kl(v),no(Ji))),iSe(Ji)}else if(!js&&!Zse(oe)&&Zse(Ji))return Sr(u,Z.Variable_0_is_used_before_being_assigned,kl(v)),oe;return Be?uZ(Ji):Ji}function oYs(u,m){if(hg(m)){let v=ji(u,hg);return v&&Rw(v)===Rw(m)}}function Wmn(u){var m;let v=u.parent;if(v){if(jo(v)&&v.expression===u||R0(v)&&v.isTypeOnly)return!1;let D=(m=v.parent)==null?void 0:m.parent;if(D&&Gh(D)&&D.isTypeOnly)return!1}return!0}function aYs(u,m){return!!ji(u,v=>v===m?"quit":bu(v)||v.parent&&pi(v.parent)&&!zh(v.parent)&&v.parent.initializer===v)}function cYs(u,m){return ji(u,v=>v===m?"quit":v===m.initializer||v===m.condition||v===m.incrementor||v===m.statement)}function dKt(u){return ji(u,m=>!m||Fye(m)?"quit":VT(m,!1))}function lYs(u,m){if(Ze>=2||!(m.flags&34)||!m.valueDeclaration||ll(m.valueDeclaration)||m.valueDeclaration.parent.kind===300)return;let v=tS(m.valueDeclaration),D=aYs(u,v),P=dKt(v);if(P){if(D){let Y=!0;if(L3(v)){let oe=ML(m.valueDeclaration,262);if(oe&&oe.parent===v){let Be=cYs(u.parent,v);if(Be){let Oe=sa(Be);Oe.flags|=8192;let He=Oe.capturedBlockScopeBindings||(Oe.capturedBlockScopeBindings=[]);Qi(He,m),Be===v.initializer&&(Y=!1)}}}Y&&(sa(P).flags|=4096)}if(L3(v)){let Y=ML(m.valueDeclaration,262);Y&&Y.parent===v&&gYs(u,v)&&(sa(m.valueDeclaration).flags|=65536)}sa(m.valueDeclaration).flags|=32768}D&&(sa(m.valueDeclaration).flags|=16384)}function uYs(u,m){let v=sa(u);return!!v&&k(v.capturedBlockScopeBindings,Uo(m))}function gYs(u,m){let v=u;for(;v.parent.kind===218;)v=v.parent;let D=!1;if(bF(v))D=!0;else if(v.parent.kind===225||v.parent.kind===226){let P=v.parent;D=P.operator===46||P.operator===47}return D?!!ji(v,P=>P===m?"quit":P===m.statement):!1}function pKt(u,m){if(sa(u).flags|=2,m.kind===173||m.kind===177){let v=m.parent;sa(v).flags|=4}else sa(m).flags|=4}function Omn(u){return Dy(u)?u:bu(u)?void 0:Lu(u,Omn)}function fKt(u){let m=Uo(u),v=Fp(m);return nZ(v)===Ot}function Mmn(u,m,v){let D=m.parent;OL(D)&&!fKt(D)&&UJ(u)&&u.flowNode&&!Pot(u.flowNode,!1)&&Sr(u,v)}function AYs(u,m){pi(m)&&zh(m)&&Ue&&m.initializer&&sl(m.initializer,u.pos)&&p1(m.parent)&&Sr(u,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function qWe(u){let m=OY(u),v=r0(u,!0,!0),D=!1,P=!1;for(v.kind===177&&Mmn(u,v,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(v.kind===220&&(v=r0(v,!1,!P),D=!0),v.kind===168){v=r0(v,!D,!1),P=!0;continue}break}if(AYs(u,v),P)Sr(u,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(v.kind){case 268:Sr(u,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 267:Sr(u,Z.this_cannot_be_referenced_in_current_location);break}!m&&D&&Ze<2&&pKt(u,v);let Y=IKt(u,!0,v);if(Lt){let oe=Io(pr);if(Y===oe&&D)Sr(u,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!Y){let Be=Sr(u,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!ll(v)){let Oe=IKt(v);Oe&&Oe!==oe&&lg(Be,mo(v,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return Y||hr}function IKt(u,m=!0,v=r0(u,!1,!1)){let D=wo(u);if(bu(v)&&(!CKt(u)||vP(v))){let P=Lst(v)||D&&fYs(v);if(!P){let Y=pYs(v);if(D&&Y){let oe=Ol(Y).symbol;oe&&oe.members&&oe.flags&16&&(P=Fp(oe).thisType)}else YN(v)&&(P=Fp(jA(v.symbol)).thisType);P||(P=hKt(v))}if(P)return dZ(u,P)}if(xa(v.parent)){let P=Uo(v.parent),Y=cg(v)?Io(P):Fp(P).thisType;return dZ(u,Y)}if(ll(v))if(v.commonJsModuleIndicator){let P=Uo(v);return P&&Io(P)}else{if(v.externalModuleIndicator)return Bt;if(m)return Io(pr)}}function dYs(u){let m=r0(u,!1,!1);if(bu(m)){let v=yS(m);if(v.thisParameter)return Lot(v.thisParameter)}if(xa(m.parent)){let v=Uo(m.parent);return cg(m)?Io(v):Fp(v).thisType}}function pYs(u){if(u.kind===219&&fo(u.parent)&&nI(u.parent)===3)return u.parent.left.expression.expression;if(u.kind===175&&u.parent.kind===211&&fo(u.parent.parent)&&nI(u.parent.parent)===6)return u.parent.parent.left.expression;if(u.kind===219&&u.parent.kind===304&&u.parent.parent.kind===211&&fo(u.parent.parent.parent)&&nI(u.parent.parent.parent)===6)return u.parent.parent.parent.left.expression;if(u.kind===219&&fm(u.parent)&&Ir(u.parent.name)&&(u.parent.name.escapedText==="value"||u.parent.name.escapedText==="get"||u.parent.name.escapedText==="set")&&og(u.parent.parent)&&Zl(u.parent.parent.parent)&&u.parent.parent.parent.arguments[2]===u.parent.parent&&nI(u.parent.parent.parent)===9)return u.parent.parent.parent.arguments[0].expression;if(uu(u)&&Ir(u.name)&&(u.name.escapedText==="value"||u.name.escapedText==="get"||u.name.escapedText==="set")&&og(u.parent)&&Zl(u.parent.parent)&&u.parent.parent.arguments[2]===u.parent&&nI(u.parent.parent)===9)return u.parent.parent.arguments[0].expression}function fYs(u){let m=Nb(u);if(m&&m.typeExpression)return nl(m.typeExpression);let v=Lpe(u);if(v)return k5(v)}function IYs(u,m){return!!ji(u,v=>kd(v)?"quit":v.kind===170&&v.parent===m)}function Hot(u){let m=u.parent.kind===214&&u.parent.expression===u,v=C7(u,!0),D=v,P=!1,Y=!1;if(!m){for(;D&&D.kind===220;)Ga(D,1024)&&(Y=!0),D=C7(D,!0),P=Ze<2;D&&Ga(D,1024)&&(Y=!0)}let oe=0;if(!D||!qe(D)){let Vt=ji(u,kt=>kt===D?"quit":kt.kind===168);return Vt&&Vt.kind===168?Sr(u,Z.super_cannot_be_referenced_in_a_computed_property_name):m?Sr(u,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(xa(D.parent)||D.parent.kind===211)?Sr(u,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):Sr(u,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),nn}if(!m&&v.kind===177&&Mmn(u,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),cg(D)||m?(oe=32,!m&&Ze>=2&&Ze<=8&&(pi(D)||fl(D))&&Dge(u.parent,Vt=>{(!ll(Vt)||vl(Vt))&&(sa(Vt).flags|=2097152)})):oe=16,sa(u).flags|=oe,D.kind===175&&Y&&(xy(u.parent)&&bF(u.parent)?sa(D).flags|=256:sa(D).flags|=128),P&&pKt(u.parent,D),D.parent.kind===211)return Ze<2?(Sr(u,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),nn):hr;let Be=D.parent;if(!OL(Be))return Sr(u,Z.super_can_only_be_referenced_in_a_derived_class),nn;if(fKt(Be))return m?nn:Ot;let Oe=Fp(Uo(Be)),He=Oe&&Kw(Oe)[0];if(!He)return nn;if(D.kind===177&&IYs(u,D))return Sr(u,Z.super_cannot_be_referenced_in_constructor_arguments),nn;return oe===32?nZ(Oe):T1(He,Oe.thisType);function qe(Vt){return m?Vt.kind===177:xa(Vt.parent)||Vt.parent.kind===211?cg(Vt)?Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===176:Vt.kind===175||Vt.kind===174||Vt.kind===178||Vt.kind===179||Vt.kind===173||Vt.kind===172||Vt.kind===177:!1}}function Hmn(u){return(u.kind===175||u.kind===178||u.kind===179)&&u.parent.kind===211?u.parent:u.kind===219&&u.parent.kind===304?u.parent.parent:void 0}function Ymn(u){return la(u)&4&&u.target===C2?lf(u)[0]:void 0}function hYs(u){return Yf(u,m=>m.flags&2097152?F(m.types,Ymn):Ymn(m))}function Qmn(u,m){let v=u,D=m;for(;D;){let P=hYs(D);if(P)return P;if(v.parent.kind!==304)break;v=v.parent.parent,D=O5(v,void 0)}}function hKt(u){if(u.kind===220)return;if(dot(u)){let v=O2e(u);if(v){let D=v.thisParameter;if(D)return Io(D)}}let m=wo(u);if(Lt||m){let v=Hmn(u);if(v){let P=O5(v,void 0),Y=Qmn(v,P);return Y?_l(Y,QUt(JQ(v))):D1(P?gZ(P):RI(v))}let D=gv(u.parent);if(Jm(D)){let P=D.left;if(_p(P)){let{expression:Y}=P;if(m&&Ir(Y)){let oe=ms(D);if(oe.commonJsModuleIndicator&&L0(Y)===oe.symbol)return}return D1(RI(Y))}}}}function Xmn(u){let m=u.parent;if(!dot(m))return;let v=ZL(m);if(v&&v.arguments){let P=aat(v),Y=m.parameters.indexOf(u);if(u.dotDotDotToken)return HKt(P,Y,P.length,hr,void 0,0);let oe=sa(v),Be=oe.resolvedSignature;oe.resolvedSignature=Ls;let Oe=Y0)return Rpe(v.name,!0,!1)}}function yYs(u,m){let v=A1(u);if(v){let D=Yot(v,m);if(D){let P=SI(v);if(P&1){let Y=(P&2)!==0;D.flags&1048576&&(D=nm(D,Be=>!!D9(1,Be,Y)));let oe=D9(1,D,(P&2)!==0);if(!oe)return;D=oe}if(P&2){let Y=Yf(D,pZ);return Y&&Ha([Y,A_n(Y)])}return D}}}function bYs(u,m){let v=Jy(u,m);if(v){let D=pZ(v);return D&&Ha([D,A_n(D)])}}function EYs(u,m){let v=A1(u);if(v){let D=SI(v),P=Yot(v,m);if(P){let Y=(D&2)!==0;if(!u.asteriskToken&&P.flags&1048576&&(P=nm(P,oe=>!!D9(1,oe,Y))),u.asteriskToken){let oe=R8t(P,Y),Be=oe?.yieldType??Vn,Oe=Jy(u,m)??Vn,He=oe?.nextType??cn,qe=Aat(Be,Oe,He,!1);if(Y){let Vt=Aat(Be,Oe,He,!0);return Ha([qe,Vt])}return qe}return D9(0,P,Y)}}}function CKt(u){let m=!1;for(;u.parent&&!bu(u.parent);){if(Si(u.parent)&&(m||u.parent.initializer===u))return!0;hg(u.parent)&&u.parent.initializer===u&&(m=!0),u=u.parent}return!1}function Jmn(u,m){let v=!!(SI(m)&2),D=Yot(m,void 0);if(D)return D9(u,D,v)||void 0}function Yot(u,m){let v=Nse(u);if(v)return v;let D=Kot(u);if(D&&!Jst(D)){let Y=ud(D),oe=SI(u);return oe&1?nm(Y,Be=>!!(Be.flags&58998787)||d8t(Be,oe,void 0)):oe&2?nm(Y,Be=>!!(Be.flags&58998787)||!!efe(Be)):Y}let P=ZL(u);if(P)return Jy(P,m)}function Umn(u,m){let D=aat(u).indexOf(m);return D===-1?void 0:_Kt(u,D)}function _Kt(u,m){if(Up(u))return m===0?$r:m===1?SIn(!1):hr;let v=sa(u).resolvedSignature===Go?Go:Hse(u);if(eI(u)&&m===0)return Uot(v,u);let D=v.parameters.length-1;return D0(v)&&m>=D?R1(Io(v.parameters[D]),fR(m-D),256):CR(v,m)}function SYs(u){let m=n8t(u);return m?fK(m):void 0}function vYs(u,m){if(u.parent.kind===216)return Umn(u.parent,m)}function BYs(u,m){let v=u.parent,{left:D,operatorToken:P,right:Y}=v;switch(P.kind){case 64:case 77:case 76:case 78:return u===Y?TYs(v):void 0;case 57:case 61:let oe=Jy(v,m);return u===Y&&(oe&&oe.pattern||!oe&&!uZe(v))?P_(D):oe;case 56:case 28:return u===Y?Jy(v,m):void 0;default:return}}function wYs(u){if(mE(u)&&u.symbol)return u.symbol;if(Ir(u))return L0(u);if(jo(u)){let v=P_(u.expression);return p(u.name)?m(v,u.name):Gg(v,u.name.escapedText)}if(Yg(u)){let v=RI(u.argumentExpression);if(!g2(v))return;let D=P_(u.expression);return Gg(D,A2(v))}return;function m(v,D){let P=sOe(D.escapedText,D);return P&&nat(v,P)}}function TYs(u){var m,v;let D=nI(u);switch(D){case 0:case 4:let P=wYs(u.left),Y=P&&P.valueDeclaration;if(Y&&(pi(Y)||ss(Y))){let Oe=kh(Y);return Oe&&_l(nl(Oe),fa(P).mapper)||(pi(Y)?Y.initializer&&P_(u.left):void 0)}return D===0?P_(u.left):Kmn(u);case 5:if(Qot(u,D))return Kmn(u);if(!mE(u.left)||!u.left.symbol)return P_(u.left);{let Oe=u.left.symbol.valueDeclaration;if(!Oe)return;let He=Ma(u.left,_p),qe=kh(Oe);if(qe)return nl(qe);if(Ir(He.expression)){let Vt=He.expression,kt=An(Vt,Vt.escapedText,111551,void 0,!0);if(kt){let vr=kt.valueDeclaration&&kh(kt.valueDeclaration);if(vr){let dn=YD(He);if(dn!==void 0)return W5(nl(vr),dn)}return}}return wo(Oe)||Oe===u.left?void 0:P_(u.left)}case 1:case 6:case 3:case 2:let oe;D!==2&&(oe=mE(u.left)?(m=u.left.symbol)==null?void 0:m.valueDeclaration:void 0),oe||(oe=(v=u.symbol)==null?void 0:v.valueDeclaration);let Be=oe&&kh(oe);return Be?nl(Be):void 0;case 7:case 8:case 9:return pe.fail("Does not apply");default:return pe.assertNever(D)}}function Qot(u,m=nI(u)){if(m===4)return!0;if(!wo(u)||m!==5||!Ir(u.left.expression))return!1;let v=u.left.expression.escapedText,D=An(u.left,v,111551,void 0,!0,!0);return Hge(D?.valueDeclaration)}function Kmn(u){if(!u.symbol)return P_(u.left);if(u.symbol.valueDeclaration){let P=kh(u.symbol.valueDeclaration);if(P){let Y=nl(P);if(Y)return Y}}let m=Ma(u.left,_p);if(!a2(r0(m.expression,!1,!1)))return;let v=qWe(m.expression),D=YD(m);return D!==void 0&&W5(v,D)||void 0}function RYs(u){return!!(iI(u)&262144&&!u.links.type&&rt(u,0)>=0)}function yKt(u,m){if(u.flags&16777216){let v=u;return!!(JB(fW(v)).flags&131072)&&aZ(IW(v))===aZ(v.checkType)&&dg(m,v.extendsType)}return u.flags&2097152?jt(u.types,v=>yKt(v,m)):!1}function W5(u,m,v){return Yf(u,D=>{if(D.flags&2097152){let P,Y,oe=!1;for(let Be of D.types){if(!(Be.flags&524288))continue;if(Yb(Be)&&I2e(Be)!==2){let He=jmn(Be,m,v);P=bKt(P,He);continue}let Oe=zmn(Be,m);if(!Oe){oe||(Y=Ft(Y,Be));continue}oe=!0,Y=void 0,P=bKt(P,Oe)}if(Y)for(let Be of Y){let Oe=qmn(Be,m,v);P=bKt(P,Oe)}return P?P.length===1?P[0]:Kg(P):void 0}if(D.flags&524288)return Yb(D)&&I2e(D)!==2?jmn(D,m,v):zmn(D,m)??qmn(D,m,v)},!0)}function bKt(u,m){return m?Ft(u,m.flags&1?cn:m):u}function jmn(u,m,v){let D=v||TE(Bc(m)),P=_S(u);if(u.nameType&&yKt(u.nameType,D)||yKt(P,D))return;let Y=L_(P)||P;if(dg(D,Y))return aot(u,D)}function zmn(u,m){let v=Gg(u,m);if(!(!v||RYs(v)))return AZ(Io(v),!!(v.flags&16777216))}function qmn(u,m,v){var D;if(yA(u)&&IN(m)&&+m>=0){let P=Qpe(u,u.target.fixedLength,0,!1,!0);if(P)return P}return(D=FJt(ZJt(u),v||TE(Bc(m))))==null?void 0:D.type}function $mn(u,m){if(pe.assert(a2(u)),!(u.flags&67108864))return EKt(u,m)}function EKt(u,m){let v=u.parent,D=fm(u)&&mKt(u,m);if(D)return D;let P=O5(v,m);if(P){if(Tse(u)){let Y=Uo(u);return W5(P,Y.escapedName,fa(Y).nameType)}if(XD(u)){let Y=Il(u);if(Y&&Un(Y)){let oe=Ol(Y.expression),Be=g2(oe)&&W5(P,A2(oe));if(Be)return Be}}if(u.name){let Y=sZ(u.name);return Yf(P,oe=>{var Be;return(Be=FJt(ZJt(oe),Y))==null?void 0:Be.type},!0)}}}function NYs(u){let m,v;for(let D=0;D{if(yA(Y)){if((D===void 0||mP)?v-m:0,Be=oe>0&&Y.target.combinedFlags&12?b2e(Y.target,3):0;return oe>0&&oe<=Be?lf(Y)[B9(Y)-oe]:Qpe(Y,D===void 0?Y.target.fixedLength:Math.min(Y.target.fixedLength,D),v===void 0||P===void 0?Be:Math.min(Be,v-P),!1,!0)}return(!D||mT9(Oe)?R1(Oe,fR(oe)):Oe,!0))}function xYs(u,m){let v=u.parent;return wJ(v)?Jy(u,m):bN(v)?kYs(v,u,m):void 0}function eCn(u,m){if(EN(u)){let v=O5(u.parent,m);return!v||Xo(v)?void 0:W5(v,cz(u.name))}else return Jy(u.parent,m)}function $We(u){switch(u.kind){case 11:case 9:case 10:case 15:case 229:case 112:case 97:case 106:case 80:case 157:return!0;case 212:case 218:return $We(u.expression);case 295:return!u.expression||$We(u.expression)}return!1}function GYs(u,m){let v=`D${rd(u)},${QC(m)}`;return Hy(v)??HB(v,SHs(m,u)??RUt(m,Nn(At(Me(u.properties,D=>D.symbol?D.kind===304?$We(D.initializer)&&Xpe(m,D.symbol.escapedName):D.kind===305?Xpe(m,D.symbol.escapedName):!1:!1),D=>[()=>COe(D.kind===304?D.initializer:D.name),D.symbol.escapedName]),At(Me(Gd(m),D=>{var P;return!!(D.flags&16777216)&&!!((P=u?.symbol)!=null&&P.members)&&!u.symbol.members.has(D.escapedName)&&Xpe(m,D.escapedName)}),D=>[()=>Bt,D.escapedName])),dg))}function FYs(u,m){let v=`D${rd(u)},${QC(m)}`,D=Hy(v);if(D)return D;let P=rOe(NK(u));return HB(v,RUt(m,Nn(At(Me(u.properties,Y=>!!Y.symbol&&Y.kind===292&&Xpe(m,Y.symbol.escapedName)&&(!Y.initializer||$We(Y.initializer))),Y=>[Y.initializer?()=>COe(Y.initializer):()=>tn,Y.symbol.escapedName]),At(Me(Gd(m),Y=>{var oe;if(!(Y.flags&16777216)||!((oe=u?.symbol)!=null&&oe.members))return!1;let Be=u.parent.parent;return Y.escapedName===P&&bN(Be)&&$J(Be.children).length?!1:!u.symbol.members.has(Y.escapedName)&&Xpe(m,Y.escapedName)}),Y=>[()=>Bt,Y.escapedName])),dg))}function O5(u,m){let v=a2(u)?$mn(u,m):Jy(u,m),D=Xot(v,u,m);if(D&&!(m&&m&2&&D.flags&8650752)){let P=Yf(D,Y=>la(Y)&32?Y:fy(Y),!0);return P.flags&1048576&&og(u)?GYs(u,P):P.flags&1048576&&nQ(u)?FYs(u,P):P}}function Xot(u,m,v){if(u&&ah(u,465829888)){let D=JQ(m);if(D&&v&1&&jt(D.inferences,D4s))return Jot(u,D.nonFixingMapper);if(D?.returnMapper){let P=Jot(u,D.returnMapper);return P.flags&1048576&&tG(P.types,Ys)&&tG(P.types,wn)?nm(P,Y=>Y!==Ys&&Y!==wn):P}}return u}function Jot(u,m){return u.flags&465829888?_l(u,m):u.flags&1048576?Ha(At(u.types,v=>Jot(v,m)),0):u.flags&2097152?Kg(At(u.types,v=>Jot(v,m))):u}function Jy(u,m){var v;if(u.flags&67108864)return;let D=rCn(u,!m);if(D>=0)return Wb[D];let{parent:P}=u;switch(P.kind){case 261:case 170:case 173:case 172:case 209:return _Ys(u,m);case 220:case 254:return yYs(u,m);case 230:return EYs(P,m);case 224:return bYs(P,m);case 214:case 215:return Umn(P,u);case 171:return SYs(P);case 217:case 235:return s2(P.type)?Jy(P,m):nl(P.type);case 227:return BYs(u,m);case 304:case 305:return EKt(P,m);case 306:return Jy(P.parent,m);case 210:{let Y=P,oe=O5(Y,m),Be=fP(Y.elements,u),Oe=(v=sa(Y)).spreadIndices??(v.spreadIndices=NYs(Y.elements));return SKt(oe,Be,Y.elements.length,Oe.first,Oe.last)}case 228:return DYs(u,m);case 240:return pe.assert(P.parent.kind===229),vYs(P.parent,u);case 218:{if(wo(P)){if(Zbe(P))return nl(Lbe(P));let Y=ov(P);if(Y&&!s2(Y.typeExpression.type))return nl(Y.typeExpression.type)}return Jy(P,m)}case 236:return Jy(P,m);case 239:return nl(P.type);case 278:return AW(P);case 295:return xYs(P,m);case 292:case 294:return eCn(P,m);case 287:case 286:return HYs(P,m);case 302:return MYs(P)}}function tCn(u){eOe(u,Jy(u,void 0),!0)}function eOe(u,m,v){kf[p_]=u,Wb[p_]=m,OB[p_]=v,p_++}function W2e(){p_--,kf[p_]=void 0,Wb[p_]=void 0,OB[p_]=void 0}function rCn(u,m){for(let v=p_-1;v>=0;v--)if(u===kf[v]&&(m||!OB[v]))return v;return-1}function ZYs(u,m){v1[GN]=u,s5[GN]=m,GN++}function LYs(){GN--,v1[GN]=void 0,s5[GN]=void 0}function JQ(u){for(let m=GN-1;m>=0;m--)if(EP(u,v1[m]))return s5[m]}function VYs(u){ok[ak]=u,o5[ak]??(o5[ak]=new Map),ak++}function PYs(){ak--,ok[ak]=void 0,o5[ak].clear()}function WYs(u){for(let m=ak-1;m>=0;m--)if(u===ok[m])return m;return-1}function OYs(){for(let u=ak-1;u>=0;u--)o5[u].clear()}function MYs(u){return W5(UJt(!1),XAe(u))}function HYs(u,m){if($T(u)&&m!==4){let v=rCn(u.parent,!m);if(v>=0)return Wb[v]}return _Kt(u,0)}function Uot(u,m){return Pw(m)||WCn(m)!==0?YYs(u,m):JYs(u,m)}function YYs(u,m){let v=t8t(u,cn);v=nCn(m,NK(m),v);let D=UQ(lS.IntrinsicAttributes,m);return uo(D)||(v=fWe(D,v)),v}function QYs(u,m){if(u.compositeSignatures){let D=[];for(let P of u.compositeSignatures){let Y=ud(P);if(Xo(Y))return Y;let oe=Pi(Y,m);if(!oe)return;D.push(oe)}return Kg(D)}let v=ud(u);return Xo(v)?v:Pi(v,m)}function XYs(u){if(Pw(u))return jCn(u);if(Fq(u.tagName)){let v=dCn(u),D=cat(u,v);return fK(D)}let m=RI(u.tagName);if(m.flags&128){let v=ACn(m,u);if(!v)return nn;let D=cat(u,v);return fK(D)}return m}function nCn(u,m,v){let D=IQs(m);if(D){let P=XYs(u),Y=ICn(D,wo(u),P,v);if(Y)return Y}return v}function JYs(u,m){let v=NK(m),D=mQs(v),P=D===void 0?t8t(u,cn):D===""?ud(u):QYs(u,D);if(!P)return D&&B(m.attributes.properties)&&Sr(m,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Bc(D)),cn;if(P=nCn(m,v,P),Xo(P))return P;{let Y=P,oe=UQ(lS.IntrinsicClassAttributes,m);if(!uo(oe)){let Oe=Ug(oe.symbol),He=ud(u),qe;if(Oe){let Vt=v9([He],Oe,Ik(Oe),wo(m));qe=_l(oe,N1(Oe,Vt))}else qe=oe;Y=fWe(qe,Y)}let Be=UQ(lS.IntrinsicAttributes,m);return uo(Be)||(Y=fWe(Be,Y)),Y}}function UYs(u){return a_(Te,"noImplicitAny")?Ul(u,(m,v)=>m===v||!m?m:Vfn(m.typeParameters,v.typeParameters)?zYs(m,v):void 0):void 0}function KYs(u,m,v){if(!u||!m)return u||m;let D=Ha([Io(u),_l(Io(m),v)]);return SK(u,D)}function jYs(u,m,v){let D=NE(u),P=NE(m),Y=D>=P?u:m,oe=Y===u?m:u,Be=Y===u?D:P,Oe=Ck(u)||Ck(m),He=Oe&&!Ck(Y),qe=new Array(Be+(He?1:0));for(let Vt=0;Vt=_R(Y)&&Vt>=_R(oe),Yi=Vt>=D?void 0:jpe(u,Vt),js=Vt>=P?void 0:jpe(m,Vt),Co=Yi===js?Yi:Yi?js?void 0:Yi:js,Ji=gA(1|(ii&&!vn?16777216:0),Co||`arg${Vt}`,vn?32768:ii?16384:0);Ji.links.type=vn?d0(dn):dn,qe[Vt]=Ji}if(He){let Vt=gA(1,"args",32768);Vt.links.type=d0(CR(oe,Be)),oe===m&&(Vt.links.type=_l(Vt.links.type,v)),qe[Be]=Vt}return qe}function zYs(u,m){let v=u.typeParameters||m.typeParameters,D;u.typeParameters&&m.typeParameters&&(D=N1(m.typeParameters,u.typeParameters));let P=(u.flags|m.flags)&166,Y=u.declaration,oe=jYs(u,m,D),Be=li(oe);Be&&iI(Be)&32768&&(P|=1);let Oe=KYs(u.thisParameter,m.thisParameter,D),He=Math.max(u.minArgumentCount,m.minArgumentCount),qe=PN(Y,v,Oe,oe,void 0,void 0,He,P);return qe.compositeKind=2097152,qe.compositeSignatures=Nn(u.compositeKind===2097152&&u.compositeSignatures||[u],[m]),D&&(qe.mapper=u.compositeKind===2097152&&u.mapper&&u.compositeSignatures?F5(u.mapper,D):D),qe}function vKt(u,m){let v=tg(u,0),D=Me(v,P=>!qYs(P,m));return D.length===1?D[0]:UYs(D)}function qYs(u,m){let v=0;for(;v{let oe=h.getTokenEnd();if(D.category===3&&v&&oe===v.start&&P===v.length){let Be=QY(m.fileName,m.text,oe,P,D,Y);lg(v,Be)}else(!v||oe!==v.start)&&(v=qh(m,oe,P,D,Y),PA.add(v))}),h.setText(m.text,u.pos,u.end-u.pos);try{return h.scan(),pe.assert(h.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!v}finally{h.setText(""),h.setOnError(void 0)}}return!1}function eQs(u){let m=sa(u);return m.flags&1||(m.flags|=1,g(()=>$Ys(u))),XI}function tQs(u,m){ZeYpe(kt)||Yb(kt)&&!kt.nameType&&!!B2e(kt.target||kt)),Vt=!1;for(let kt=0;ktoe[vr]&8?pW(kt,ri)||hr:kt),2):ot?Ui:xe,Oe))}function sCn(u){if(!(la(u)&4))return u;let m=u.literalType;return m||(m=u.literalType=gIn(u),m.objectFlags|=147456),m}function iQs(u){switch(u.kind){case 168:return sQs(u);case 80:return IN(u.escapedText);case 9:case 11:return IN(u.text);default:return!1}}function sQs(u){return V_(zw(u),296)}function zw(u){let m=sa(u.expression);if(!m.resolvedType){if((mh(u.parent.parent)||xa(u.parent.parent)||g_(u.parent.parent))&&fo(u.expression)&&u.expression.operatorToken.kind===103&&u.parent.kind!==178&&u.parent.kind!==179)return m.resolvedType=nn;if(m.resolvedType=Ol(u.expression),pi(u.parent)&&!zh(u.parent)&&vd(u.parent.parent)){let v=tS(u.parent.parent),D=dKt(v);D&&(sa(D).flags|=4096,sa(u).flags|=32768,sa(u.parent.parent).flags|=32768)}(m.resolvedType.flags&98304||!V_(m.resolvedType,402665900)&&!dg(m.resolvedType,mc))&&Sr(u,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return m.resolvedType}function oQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return IN(u.escapedName)||v&&rh(v)&&iQs(v.name)}function oCn(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return k7(u)||v&&rh(v)&&Un(v.name)&&V_(zw(v.name),4096)}function aQs(u){var m;let v=(m=u.declarations)==null?void 0:m[0];return v&&rh(v)&&Un(v.name)}function M2e(u,m,v,D){var P;let Y=[],oe;for(let Oe=m;Oe0&&(oe=OQ(oe,Ji(),u.symbol,dn,He),Y=[],P=qu(),ii=!1,Yi=!1,js=!1);let yl=JB(Ol(Mi.expression,m&2));if(tOe(yl)){let ka=pUt(yl,He);if(D&&lCn(ka,D,Mi),Co=Y.length,uo(oe))continue;oe=OQ(oe,ka,u.symbol,dn,He)}else Sr(Mi,Z.Spread_types_may_only_be_created_from_object_types),oe=nn;continue}else pe.assert(Mi.kind===178||Mi.kind===179),Lq(Mi);Ka&&!(Ka.flags&8576)?dg(Ka,mc)&&(dg(Ka,ri)?Yi=!0:dg(Ka,ci)?js=!0:ii=!0,v&&(vn=!0)):P.set(To.escapedName,To),Y.push(To)}if(W2e(),uo(oe))return nn;if(oe!==Xg)return Y.length>0&&(oe=OQ(oe,Ji(),u.symbol,dn,He),Y=[],P=qu(),ii=!1,Yi=!1),Yf(oe,Mi=>Mi===Xg?Ji():Mi);return Ji();function Ji(){let Mi=[],To=qpe(u);ii&&Mi.push(M2e(To,Co,Y,$r)),Yi&&Mi.push(M2e(To,Co,Y,ri)),js&&Mi.push(M2e(To,Co,Y,ci));let Ka=Hf(u.symbol,P,E,E,Mi);return Ka.objectFlags|=dn|128|131072,vr&&(Ka.objectFlags|=4096),vn&&(Ka.objectFlags|=512),v&&(Ka.pattern=u),Ka}}function tOe(u){let m=Yhn(Yf(u,WN));return!!(m.flags&126615553||m.flags&3145728&&ue(m.types,tOe))}function lQs(u){wKt(u)}function uQs(u,m){return Lq(u),nOe(u)||hr}function gQs(u){wKt(u.openingElement),Fq(u.closingElement.tagName)?qot(u.closingElement):Ol(u.closingElement.tagName),zot(u)}function AQs(u,m){return Lq(u),nOe(u)||hr}function dQs(u){wKt(u.openingFragment);let m=ms(u);RAe(Te)&&(Te.jsxFactory||m.pragmas.has("jsx"))&&!Te.jsxFragmentFactory&&!m.pragmas.has("jsxfrag")&&Sr(u,Te.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),zot(u);let v=nOe(u);return uo(v)?hr:v}function BKt(u){return u.includes("-")}function Fq(u){return Ir(u)&&eU(u.escapedText)||eR(u)}function aCn(u,m){return u.initializer?$pe(u.initializer,m):tn}function cCn(u,m=0){let v=ot?qu():void 0,D=qu(),P=sh,Y=!1,oe,Be=!1,Oe=2048,He=rOe(NK(u)),qe=Pw(u),Vt,kt=u;if(!qe){let vn=u.attributes;Vt=vn.symbol,kt=vn;let ii=Jy(vn,0);for(let Yi of vn.properties){let js=Yi.symbol;if(EN(Yi)){let Co=aCn(Yi,m);Oe|=la(Co)&458752;let Ji=gA(4|js.flags,js.escapedName);if(Ji.declarations=js.declarations,Ji.parent=js.parent,js.valueDeclaration&&(Ji.valueDeclaration=js.valueDeclaration),Ji.links.type=Co,Ji.links.target=js,D.set(Ji.escapedName,Ji),v?.set(Ji.escapedName,Ji),cz(Yi.name)===He&&(Be=!0),ii){let Mi=Gg(ii,js.escapedName);Mi&&Mi.declarations&&dy(Mi)&&Ir(Yi.name)&&YB(Yi.name,Mi.declarations,Yi.name.escapedText)}if(ii&&m&2&&!(m&4)&&bS(Yi)){let Mi=JQ(vn);pe.assert(Mi);let To=Yi.initializer.expression;HUt(Mi,To,Co)}}else{pe.assert(Yi.kind===294),D.size>0&&(P=OQ(P,dn(),vn.symbol,Oe,!1),D=qu());let Co=JB(Ol(Yi.expression,m&2));Xo(Co)&&(Y=!0),tOe(Co)?(P=OQ(P,Co,vn.symbol,Oe,!1),v&&lCn(Co,v,Yi)):(Sr(Yi.expression,Z.Spread_types_may_only_be_created_from_object_types),oe=oe?Kg([oe,Co]):Co)}}Y||D.size>0&&(P=OQ(P,dn(),vn.symbol,Oe,!1))}let vr=u.parent;if((bN(vr)&&vr.openingElement===u||P3(vr)&&vr.openingFragment===u)&&$J(vr.children).length>0){let vn=zot(vr,m);if(!Y&&He&&He!==""){Be&&Sr(kt,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Bc(He));let ii=$T(u)?O5(u.attributes,void 0):void 0,Yi=ii&&W5(ii,He),js=gA(4,He);js.links.type=vn.length===1?vn[0]:Yi&&kv(Yi,Ype)?hk(vn):d0(Ha(vn)),js.valueDeclaration=me.createPropertySignature(void 0,Bc(He),void 0,void 0),XA(js.valueDeclaration,kt),js.valueDeclaration.symbol=js;let Co=qu();Co.set(He,js),P=OQ(P,Hf(Vt,Co,E,E,E),Vt,Oe,!1)}}if(Y)return hr;if(oe&&P!==sh)return Kg([oe,P]);return oe||(P===sh?dn():P);function dn(){return Oe|=8192,pQs(Oe,Vt,D)}}function pQs(u,m,v){let D=Hf(m,v,E,E,E);return D.objectFlags|=u|8192|128|131072,D}function zot(u,m){let v=[];for(let D of u.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||v.push($r);else{if(D.kind===295&&!D.expression)continue;v.push($pe(D,m))}return v}function lCn(u,m,v){for(let D of Gd(u))if(!(D.flags&16777216)){let P=m.get(D.escapedName);if(P){let Y=Sr(P.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Bc(P.escapedName));lg(Y,mo(v,Z.This_spread_always_overwrites_this_property))}}}function fQs(u,m){return cCn(u.parent,m)}function UQ(u,m){let v=NK(m),D=v&&B1(v),P=D&&f_(D,u,788968);return P?Fp(P):nn}function qot(u){let m=sa(u);if(!m.resolvedSymbol){let v=UQ(lS.IntrinsicElements,u);if(uo(v))return Rt&&Sr(u,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Bc(lS.IntrinsicElements)),m.resolvedSymbol=it;{if(!Ir(u.tagName)&&!eR(u.tagName))return pe.fail();let D=eR(u.tagName)?oS(u.tagName):u.tagName.escapedText,P=Gg(v,D);if(P)return m.jsxFlags|=1,m.resolvedSymbol=P;let Y=F0n(v,TE(Bc(D)));return Y?(m.jsxFlags|=2,m.resolvedSymbol=Y):Ba(v,D)?(m.jsxFlags|=2,m.resolvedSymbol=v.symbol):(Sr(u,Z.Property_0_does_not_exist_on_type_1,Vbe(u.tagName),"JSX."+lS.IntrinsicElements),m.resolvedSymbol=it)}}return m.resolvedSymbol}function $ot(u){let m=u&&ms(u),v=m&&sa(m);if(v&&v.jsxImplicitImportContainer===!1)return;if(v&&v.jsxImplicitImportContainer)return v.jsxImplicitImportContainer;let D=Mne(One(Te,m),Te);if(!D)return;let Y=k_(Te)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed,oe=z8s(m,D),Be=eK(oe||u,D,Y,u),Oe=Be&&Be!==it?jA(Zh(Be)):void 0;return v&&(v.jsxImplicitImportContainer=Oe||!1),Oe}function NK(u){let m=u&&sa(u);if(m&&m.jsxNamespace)return m.jsxNamespace;if(!m||m.jsxNamespace!==!1){let D=$ot(u);if(!D||D===it){let P=Mw(u);D=An(u,P,1920,void 0,!1)}if(D){let P=Zh(f_(B1(Zh(D)),lS.JSX,1920));if(P&&P!==it)return m&&(m.jsxNamespace=P),P}m&&(m.jsxNamespace=!1)}let v=Zh(Gse(lS.JSX,1920,void 0));if(v!==it)return v}function uCn(u,m){let v=m&&f_(m.exports,u,788968),D=v&&Fp(v),P=D&&Gd(D);if(P){if(P.length===0)return"";if(P.length===1)return P[0].escapedName;P.length>1&&v.declarations&&Sr(v.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,Bc(u))}}function IQs(u){return u&&f_(u.exports,lS.LibraryManagedAttributes,788968)}function hQs(u){return u&&f_(u.exports,lS.ElementType,788968)}function mQs(u){return uCn(lS.ElementAttributesPropertyNameContainer,u)}function rOe(u){return Te.jsx===4||Te.jsx===5?"children":uCn(lS.ElementChildrenAttributeNameContainer,u)}function gCn(u,m){if(u.flags&4)return[Ls];if(u.flags&128){let P=ACn(u,m);return P?[cat(m,P)]:(Sr(m,Z.Property_0_does_not_exist_on_type_1,u.value,"JSX."+lS.IntrinsicElements),E)}let v=fy(u),D=tg(v,1);return D.length===0&&(D=tg(v,0)),D.length===0&&v.flags&1048576&&(D=vJt(At(v.types,P=>gCn(P,m)))),D}function ACn(u,m){let v=UQ(lS.IntrinsicElements,m);if(!uo(v)){let D=u.value,P=Gg(v,Ap(D));if(P)return Io(P);let Y=D5(v,$r);return Y||void 0}return hr}function CQs(u,m,v){if(u===1){let P=fCn(v);P&&Rv(m,P,l0,v.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(u===0){let P=pCn(v);P&&Rv(m,P,l0,v.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let P=fCn(v),Y=pCn(v);if(!P||!Y)return;let oe=Ha([P,Y]);Rv(m,oe,l0,v.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let P=xp(v.tagName);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,P)}}function dCn(u){var m;pe.assert(Fq(u.tagName));let v=sa(u);if(!v.resolvedJsxElementAttributesType){let D=qot(u);if(v.jsxFlags&1)return v.resolvedJsxElementAttributesType=Io(D)||nn;if(v.jsxFlags&2){let P=eR(u.tagName)?oS(u.tagName):u.tagName.escapedText;return v.resolvedJsxElementAttributesType=((m=vq(UQ(lS.IntrinsicElements,u),P))==null?void 0:m.type)||nn}else return v.resolvedJsxElementAttributesType=nn}return v.resolvedJsxElementAttributesType}function pCn(u){let m=UQ(lS.ElementClass,u);if(!uo(m))return m}function nOe(u){return UQ(lS.Element,u)}function fCn(u){let m=nOe(u);if(m)return Ha([m,Hn])}function _Qs(u){let m=NK(u);if(!m)return;let v=hQs(m);if(!v)return;let D=ICn(v,wo(u));if(!(!D||uo(D)))return D}function ICn(u,m,...v){let D=Fp(u);if(u.flags&524288){let P=fa(u).typeParameters;if(B(P)>=v.length){let Y=v9(v,P,v.length,m);return B(Y)===0?D:kse(u,Y)}}if(B(D.typeParameters)>=v.length){let P=v9(v,D.typeParameters,v.length,m);return iZ(D,P)}}function yQs(u){let m=UQ(lS.IntrinsicElements,u);return m?Gd(m):E}function bQs(u){(Te.jsx||0)===0&&Sr(u,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),nOe(u)===void 0&&Rt&&Sr(u,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function wKt(u){let m=eI(u);m&&b8s(u),bQs(u),AKt(u);let v=Hse(u);if(uat(v,u),m){let D=u,P=_Qs(D);if(P!==void 0){let Y=D.tagName,oe=Fq(Y)?TE(Vbe(Y)):Ol(Y);Rv(oe,P,l0,Y,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Be=xp(Y);return wu(void 0,Z._0_cannot_be_used_as_a_JSX_component,Be)})}else CQs(WCn(D),ud(v),D)}}function eat(u,m,v){if(u.flags&524288&&(LQ(u,m)||vq(u,m)||p2e(m)&&$x(u,$r)||v&&BKt(m)))return!0;if(u.flags&33554432)return eat(u.baseType,m,v);if(u.flags&3145728&&H2e(u)){for(let D of u.types)if(eat(D,m,v))return!0}return!1}function H2e(u){return!!(u.flags&524288&&!(la(u)&512)||u.flags&67108864||u.flags&33554432&&H2e(u.baseType)||u.flags&1048576&&jt(u.types,H2e)||u.flags&2097152&&ue(u.types,H2e))}function EQs(u,m){if(S8s(u),u.expression){let v=Ol(u.expression,m);return u.dotDotDotToken&&v!==hr&&!Nv(v)&&Sr(u,Z.JSX_spread_child_must_be_an_array_type),v}else return nn}function TKt(u){return u.valueDeclaration?jQ(u.valueDeclaration):0}function RKt(u){if(u.flags&8192||iI(u)&4)return!0;if(wo(u.valueDeclaration)){let m=u.valueDeclaration.parent;return m&&fo(m)&&nI(m)===3}}function NKt(u,m,v,D,P,Y=!0){let oe=Y?u.kind===167?u.right:u.kind===206?u:u.kind===209&&u.propertyName?u.propertyName:u.name:void 0;return hCn(u,m,v,D,P,oe)}function hCn(u,m,v,D,P,Y){var oe;let Be=u2(P,v);if(m){if(Ze<2&&mCn(P))return Y&&Sr(Y,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Be&64)return Y&&Sr(Y,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,kl(P),no(Nq(P))),!1;if(!(Be&256)&&((oe=P.declarations)!=null&&oe.some(vre)))return Y&&Sr(Y,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,kl(P)),!1}if(Be&64&&mCn(P)&&($re(u)||aZe(u)||Km(u.parent)&&Hge(u.parent.parent))){let He=AN($m(P));if(He&&_Ks(u))return Y&&Sr(Y,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,kl(P),c2(He.name)),!1}if(!(Be&6))return!0;if(Be&2){let He=AN($m(P));return F8t(u,He)?!0:(Y&&Sr(Y,Z.Property_0_is_private_and_only_accessible_within_class_1,kl(P),no(Nq(P))),!1)}if(m)return!0;let Oe=x0n(u,He=>{let qe=Fp(Uo(He));return Ghn(qe,P,v)});return!Oe&&(Oe=SQs(u),Oe=Oe&&Ghn(Oe,P,v),Be&256||!Oe)?(Y&&Sr(Y,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,kl(P),no(Nq(P)||D)),!1):Be&256?!0:(D.flags&262144&&(D=D.isThisType?Xy(D):L_(D)),!D||!da(D,Oe)?(Y&&Sr(Y,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,kl(P),no(Oe),no(D)),!1):!0)}function SQs(u){let m=vQs(u),v=m?.type&&nl(m.type);if(v)v.flags&262144&&(v=Xy(v));else{let D=r0(u,!1,!1);bu(D)&&(v=hKt(D))}if(v&&la(v)&7)return vs(v)}function vQs(u){let m=r0(u,!1,!1);return m&&bu(m)?vP(m):void 0}function mCn(u){return!!LWe(u,m=>!(m.flags&8192))}function Ose(u){return HN(Ol(u),u)}function iOe(u){return hR(u,50331648)}function DKt(u){return iOe(u)?gZ(u):u}function BQs(u,m){let v=Od(u)?oy(u):void 0;if(u.kind===106){Sr(u,Z.The_value_0_cannot_be_used_here,"null");return}if(v!==void 0&&v.length<100){if(Ir(u)&&v==="undefined"){Sr(u,Z.The_value_0_cannot_be_used_here,"undefined");return}Sr(u,m&16777216?m&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,v)}else Sr(u,m&16777216?m&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function wQs(u,m){Sr(u,m&16777216?m&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function CCn(u,m,v){if(ot&&u.flags&2){if(Od(m)){let P=oy(m);if(P.length<100)return Sr(m,Z._0_is_of_type_unknown,P),nn}return Sr(m,Z.Object_is_of_type_unknown),nn}let D=Lse(u,50331648);if(D&50331648){v(m,D);let P=gZ(u);return P.flags&229376?nn:P}return u}function HN(u,m){return CCn(u,m,BQs)}function _Cn(u,m){let v=HN(u,m);if(v.flags&16384){if(Od(m)){let D=oy(m);if(Ir(m)&&D==="undefined")return Sr(m,Z.The_value_0_cannot_be_used_here,D),v;if(D.length<100)return Sr(m,Z._0_is_possibly_undefined,D),v}Sr(m,Z.Object_is_possibly_undefined)}return v}function tat(u,m,v){return u.flags&64?TQs(u,m):xKt(u,u.expression,Ose(u.expression),u.name,m,v)}function TQs(u,m){let v=Ol(u.expression),D=k2e(v,u.expression);return Bot(xKt(u,u.expression,HN(D,u.expression),u.name,m),u,D!==v)}function yCn(u,m){let v=Qge(u)&&vF(u.left)?HN(qWe(u.left),u.left):Ose(u.left);return xKt(u,u.left,v,u.right,m)}function kKt(u){for(;u.parent.kind===218;)u=u.parent;return av(u.parent)&&u.parent.expression===u}function sOe(u,m){for(let v=Oge(m);v;v=hC(v)){let{symbol:D}=v,P=_ne(D,u),Y=D.members&&D.members.get(P)||D.exports&&D.exports.get(P);if(Y)return Y}}function RQs(u){if(!hC(u))return os(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!KLe(u.parent)){if(!MT(u))return os(u,Z.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression);let m=fo(u.parent)&&u.parent.operatorToken.kind===103;if(!rat(u)&&!m)return os(u,Z.Cannot_find_name_0,Vo(u))}return!1}function NQs(u){RQs(u);let m=rat(u);return m&&aOe(m,void 0,!1),hr}function rat(u){if(!MT(u))return;let m=sa(u);return m.resolvedSymbol===void 0&&(m.resolvedSymbol=sOe(u.escapedText,u)),m.resolvedSymbol}function nat(u,m){return Gg(u,m.escapedName)}function DQs(u,m,v){let D,P=Gd(u);P&&F(P,oe=>{let Be=oe.valueDeclaration;if(Be&&rh(Be)&&p(Be.name)&&Be.name.escapedText===m.escapedText)return D=oe,!0});let Y=vE(m);if(D){let oe=pe.checkDefined(D.valueDeclaration),Be=pe.checkDefined(hC(oe));if(v?.valueDeclaration){let Oe=v.valueDeclaration,He=hC(Oe);if(pe.assert(!!He),ji(He,qe=>Be===qe)){let qe=Sr(m,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,Y,no(u));return lg(qe,mo(Oe,Z.The_shadowing_declaration_of_0_is_defined_here,Y),mo(oe,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,Y)),!0}}return Sr(m,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,Y,vE(Be.name||yet)),!0}return!1}function bCn(u,m){return(jx(m)||$re(u)&&dk(m))&&r0(u,!0,!1)===vo(m)}function xKt(u,m,v,D,P,Y){let oe=sa(m).resolvedSymbol,Be=QD(u),Oe=fy(Be!==0||kKt(u)?D1(v):v),He=Xo(Oe)||Oe===Vn,qe;if(p(D)){(Ze{switch(v.kind){case 173:case 176:return!0;case 187:case 288:return"quit";case 220:return m?!1:"quit";case 242:return kd(v.parent)&&v.parent.kind!==220?"quit":!1;default:return!1}})}function xQs(u){if(!(u.parent.flags&32))return!1;let m=Io(u.parent);for(;;){if(m=m.symbol&&GQs(m),!m)return!1;let v=Gg(m,u.escapedName);if(v&&v.valueDeclaration)return!0}}function GQs(u){let m=Kw(u);if(m.length!==0)return Kg(m)}function SCn(u,m,v){let D=sa(u),P=D.nonExistentPropCheckCache||(D.nonExistentPropCheckCache=new Set),Y=`${QC(m)}|${v}`;if(P.has(Y))return;P.add(Y);let oe,Be;if(!p(u)&&m.flags&1048576&&!(m.flags&402784252)){for(let He of m.types)if(!Gg(He,u.escapedText)&&!vq(He,u.escapedText)){oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Wd(u),no(He));break}}if(vCn(u.escapedText,m)){let He=Wd(u),qe=no(m);oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,He,qe,qe+"."+He)}else{let He=eSe(m);if(He&&Gg(He,u.escapedText))oe=wu(oe,Z.Property_0_does_not_exist_on_type_1,Wd(u),no(m)),Be=mo(u,Z.Did_you_forget_to_use_await);else{let qe=Wd(u),Vt=no(m),kt=LQs(qe,m);if(kt!==void 0)oe=wu(oe,Z.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,qe,Vt,kt);else{let vr=ZKt(u,m);if(vr!==void 0){let dn=nf(vr),vn=v?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;oe=wu(oe,vn,qe,Vt,dn),Be=vr.valueDeclaration&&mo(vr.valueDeclaration,Z._0_is_declared_here,dn)}else{let dn=FQs(m)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;oe=wu(GJt(oe,m),dn,qe,Vt)}}}}let Oe=Bw(ms(u),u,oe);Be&&lg(Oe,Be),Hx(!v||oe.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Oe)}function FQs(u){return Te.lib&&!Te.lib.includes("lib.dom.d.ts")&&PHs(u,m=>m.symbol&&/^(?:EventTarget|Node|(?:HTML[a-zA-Z]*)?Element)$/.test(Bc(m.symbol.escapedName)))&&lZ(u)}function vCn(u,m){let v=m.symbol&&Gg(Io(m.symbol),u);return v!==void 0&&!!v.valueDeclaration&&cg(v.valueDeclaration)}function ZQs(u){let m=vE(u),D=Hre().get(m);return D&&vu(D.keys())}function LQs(u,m){let v=fy(m).symbol;if(!v)return;let D=nf(v),Y=Hre().get(D);if(Y){for(let[oe,Be]of Y)if(k(Be,u))return oe}}function BCn(u,m){return oOe(u,Gd(m),106500)}function ZKt(u,m){let v=Gd(m);if(typeof u!="string"){let D=u.parent;jo(D)&&(v=Me(v,P=>DCn(D,m,P))),u=Vo(u)}return oOe(u,v,111551)}function wCn(u,m){let v=Xs(u)?u:Vo(u),D=Gd(m);return(v==="for"?de(D,Y=>nf(Y)==="htmlFor"):v==="class"?de(D,Y=>nf(Y)==="className"):void 0)??oOe(v,D,111551)}function TCn(u,m){let v=ZKt(u,m);return v&&nf(v)}function VQs(u,m,v){let D=f_(u,m,v);if(D)return D;let P;return u===Gr?P=Xt(["string","number","boolean","object","bigint","symbol"],oe=>u.has(oe.charAt(0).toUpperCase()+oe.slice(1))?gA(524288,oe):void 0).concat(Do(u.values())):P=Do(u.values()),oOe(Bc(m),P,v)}function RCn(u,m,v){return pe.assert(m!==void 0,"outername should always be defined"),si(u,m,v,void 0,!1,!1)}function LKt(u,m){return m.exports&&oOe(Vo(u),dq(m),2623475)}function PQs(u,m,v){function D(oe){let Be=LQ(u,oe);if(Be){let Oe=kK(Io(Be));return!!Oe&&_R(Oe)>=1&&dg(v,CR(Oe,0))}return!1}let P=bF(m)?"set":"get";if(!D(P))return;let Y=TP(m.expression);return Y===void 0?Y=P:Y+="."+P,Y}function WQs(u,m){let v=m.types.filter(D=>!!(D.flags&128));return Dr(u.value,v,D=>D.value)}function oOe(u,m,v){return Dr(u,m,D);function D(P){let Y=nf(P);if(!Ac(Y,'"')){if(P.flags&v)return Y;if(P.flags&2097152){let oe=lq(P);if(oe&&oe.flags&v)return Y}}}}function aOe(u,m,v){let D=u&&u.flags&106500&&u.valueDeclaration;if(!D)return;let P=Gb(D,2),Y=u.valueDeclaration&&rh(u.valueDeclaration)&&p(u.valueDeclaration.name);if(!(!P&&!Y)&&!(m&&CAe(m)&&!(u.flags&65536))){if(v){let oe=ji(m,kd);if(oe&&oe.symbol===u)return}(iI(u)&1?fa(u).target:u).isReferenced=-1}}function NCn(u,m){return u.kind===110||!!m&&Od(u)&&m===L0(B0(u))}function OQs(u,m){switch(u.kind){case 212:return VKt(u,u.expression.kind===108,m,D1(Ol(u.expression)));case 167:return VKt(u,!1,m,D1(Ol(u.left)));case 206:return VKt(u,!1,m,nl(u))}}function DCn(u,m,v){return PKt(u,u.kind===212&&u.expression.kind===108,!1,m,v)}function VKt(u,m,v,D){if(Xo(D))return!0;let P=Gg(D,v);return!!P&&PKt(u,m,!1,D,P)}function PKt(u,m,v,D,P){if(Xo(D))return!0;if(P.valueDeclaration&&pC(P.valueDeclaration)){let Y=hC(P.valueDeclaration);return!GC(u)&&!!ji(u,oe=>oe===Y)}return hCn(u,m,v,D,P)}function MQs(u){let m=u.initializer;if(m.kind===262){let v=m.declarations[0];if(v&&!Nu(v.name))return Uo(v)}else if(m.kind===80)return L0(m)}function HQs(u){return A0(u).length===1&&!!$x(u,ri)}function YQs(u){let m=QA(u);if(m.kind===80){let v=L0(m);if(v.flags&3){let D=u,P=u.parent;for(;P;){if(P.kind===250&&D===P.statement&&MQs(P)===v&&HQs(P_(P.expression)))return!0;D=P,P=P.parent}}}return!1}function QQs(u,m){return u.flags&64?XQs(u,m):kCn(u,Ose(u.expression),m)}function XQs(u,m){let v=Ol(u.expression),D=k2e(v,u.expression);return Bot(kCn(u,HN(D,u.expression),m),u,D!==v)}function kCn(u,m,v){let D=QD(u)!==0||kKt(u)?D1(m):m,P=u.argumentExpression,Y=Ol(P);if(uo(D)||D===Vn)return D;if(pat(D)&&!mA(P))return Sr(P,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),nn;let oe=YQs(P)?ri:Y,Be=QD(u),Oe;Be===0?Oe=32:(Oe=4|(CK(D)&&!az(D)?2:0),Be===2&&(Oe|=32));let He=pW(D,oe,Oe,u)||nn;return O_n(ECn(u,sa(u).resolvedSymbol,He,P,v),u)}function xCn(u){return av(u)||MI(u)||eI(u)}function DK(u){return xCn(u)&&F(u.typeArguments,rA),u.kind===216?Ol(u.template):eI(u)?Ol(u.attributes):fo(u)?Ol(u.left):av(u)&&F(u.arguments,m=>{Ol(m)}),Ls}function mR(u){return DK(u),Za}function JQs(u,m,v){let D,P,Y=0,oe,Be=-1,Oe;pe.assert(!m.length);for(let He of u){let qe=He.declaration&&Uo(He.declaration),Vt=He.declaration&&He.declaration.parent;!P||qe===P?D&&Vt===D?oe=oe+1:(D=Vt,oe=Y):(oe=Y=m.length,D=Vt),P=qe,Btn(He)?(Be++,Oe=Be,Y++):Oe=oe,m.splice(Oe,0,v?NOs(He,v):He)}}function iat(u){return!!u&&(u.kind===231||u.kind===238&&u.isSpread)}function WKt(u){return Se(u,iat)}function GCn(u){return!!(u.flags&16384)}function UQs(u){return!!(u.flags&49155)}function sat(u,m,v,D=!1){if(Pw(u))return!0;let P,Y=!1,oe=NE(v),Be=_R(v);if(u.kind===216)if(P=m.length,u.template.kind===229){let Oe=Ei(u.template.templateSpans);Y=sf(Oe.literal)||!!Oe.literal.isUnterminated}else{let Oe=u.template;pe.assert(Oe.kind===15),Y=!!Oe.isUnterminated}else if(u.kind===171)P=MCn(u,v);else if(u.kind===227)P=1;else if(eI(u)){if(Y=u.attributes.end===u.end,Y)return!0;P=Be===0?m.length:1,oe=m.length===0?oe:1,Be=Math.min(Be,1)}else if(u.arguments){P=D?m.length+1:m.length,Y=u.arguments.end===u.end;let Oe=WKt(m);if(Oe>=0)return Oe>=_R(v)&&(Ck(v)||Oeoe)return!1;if(Y||P>=Be)return!0;for(let Oe=P;Oe=D&&m.length<=v}function FCn(u,m){let v;return!!(u.target&&(v=KQ(u.target,m))&&G5(v))}function kK(u){return Y2e(u,0,!1)}function ZCn(u){return Y2e(u,0,!1)||Y2e(u,1,!1)}function Y2e(u,m,v){if(u.flags&524288){let D=pR(u);if(v||D.properties.length===0&&D.indexInfos.length===0){if(m===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(m===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function LCn(u,m,v,D){let P=F2e(aIn(u),u,0,D),Y=J2e(m),oe=v&&(Y&&Y.flags&262144?v.nonFixingMapper:v.mapper),Be=oe?bK(m,oe):m;return WUt(Be,u,(Oe,He)=>{nG(P.inferences,Oe,He)}),v||OUt(m,u,(Oe,He)=>{nG(P.inferences,Oe,He,128)}),_2e(u,$Ut(P),wo(m.declaration))}function KQs(u,m,v,D){let P=Uot(m,u),Y=Yse(u.attributes,P,D,v);return nG(D.inferences,Y,P),$Ut(D)}function VCn(u){if(!u)return es;let m=Ol(u);return MZe(u)?m:aP(u.parent)?gZ(m):GC(u.parent)?vot(m):m}function MKt(u,m,v,D,P){if(eI(u))return KQs(u,m,D,P);if(u.kind!==171&&u.kind!==227){let Oe=ue(m.typeParameters,qe=>!!VQ(qe)),He=Jy(u,Oe?8:0);if(He){let qe=ud(m);if(CW(qe)){let Vt=JQ(u);if(!(!Oe&&Jy(u,8)!==He)){let vn=QUt(Uhn(Vt,1)),ii=_l(He,vn),Yi=kK(ii),js=Yi&&Yi.typeParameters?fK(WJt(Yi,Yi.typeParameters)):ii;nG(P.inferences,js,qe,128)}let vr=F2e(m.typeParameters,m,P.flags),dn=_l(He,Vt&&U5s(Vt));nG(vr.inferences,dn,qe),P.returnMapper=jt(vr.inferences,Qse)?QUt(iHs(vr)):void 0}}}let Y=U2e(m),oe=Y?Math.min(NE(m)-1,v.length):v.length;if(Y&&Y.flags&262144){let Oe=de(P.inferences,He=>He.typeParameter===Y);Oe&&(Oe.impliedArity=Se(v,iat,oe)<0?v.length-oe:void 0)}let Be=k5(m);if(Be&&CW(Be)){let Oe=OCn(u);nG(P.inferences,VCn(Oe),Be)}for(let Oe=0;Oe=v-1){let qe=u[v-1];if(iat(qe)){let Vt=qe.kind===238?qe.type:Yse(qe.expression,D,P,Y);return T9(Vt)?PCn(Vt):d0(N9(33,Vt,Bt,qe.kind===231?qe.expression:qe),oe)}}let Be=[],Oe=[],He=[];for(let qe=m;qewu(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Vt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Be||(Be=N1(Y,oe));let kt=oe[Oe];if(!p0(kt,T1(_l(He,Be),kt),v?m[Oe]:void 0,Vt,qe))return}}return oe}function WCn(u){if(Fq(u.tagName))return 2;let m=fy(Ol(u.tagName));return B(tg(m,1))?0:B(tg(m,0))?1:2}function jQs(u,m,v,D,P,Y,oe){let Be=Uot(m,u),Oe=Pw(u)?cCn(u):Yse(u.attributes,Be,void 0,D),He=D&4?G2e(Oe):Oe;return qe()&&SUt(He,Be,v,P?Pw(u)?u:u.tagName:void 0,Pw(u)?void 0:u.attributes,void 0,Y,oe);function qe(){var Vt;if($ot(u))return!0;let kt=($T(u)||_U(u))&&!(Fq(u.tagName)||eR(u.tagName))?Ol(u.tagName):void 0;if(!kt)return!0;let vr=tg(kt,0);if(!B(vr))return!0;let dn=W8t(u);if(!dn)return!0;let vn=TI(dn,111551,!0,!1,u);if(!vn)return!0;let ii=Io(vn),Yi=tg(ii,0);if(!B(Yi))return!0;let js=!1,Co=0;for(let Mi of Yi){let To=CR(Mi,0),Ka=tg(To,0);if(B(Ka))for(let yl of Ka){if(js=!0,Ck(yl))return!0;let ka=NE(yl);ka>Co&&(Co=ka)}}if(!js)return!0;let Ji=1/0;for(let Mi of vr){let To=_R(Mi);To{P.push(Y.expression)}),P}if(u.kind===171)return zQs(u);if(u.kind===227)return[u.left];if(eI(u))return u.attributes.properties.length>0||$T(u)&&u.parent.children.length>0?[u.attributes]:E;let m=u.arguments||E,v=WKt(m);if(v>=0){let D=m.slice(0,v);for(let P=v;P{var He;let qe=oe.target.elementFlags[Oe],Vt=Q2e(Y,qe&4?d0(Be):Be,!!(qe&12),(He=oe.target.labeledElementDeclarations)==null?void 0:He[Oe]);D.push(Vt)}):D.push(Y)}return D}return m}function zQs(u){let m=u.expression,v=n8t(u);if(v){let D=[];for(let P of v.parameters){let Y=Io(P);D.push(Q2e(m,Y))}return D}return pe.fail()}function MCn(u,m){return Te.experimentalDecorators?qQs(u,m):Math.min(Math.max(NE(m),1),2)}function qQs(u,m){switch(u.parent.kind){case 264:case 232:return 1;case 173:return Nw(u.parent)?3:2;case 175:case 178:case 179:return m.parameters.length<=2?2:3;case 170:return 3;default:return pe.fail()}}function HCn(u){let m=ms(u),{start:v,length:D}=qa(m,jo(u.expression)?u.expression.name:u.expression);return{start:v,length:D,sourceFile:m}}function X2e(u,m,...v){if(Zl(u)){let{sourceFile:D,start:P,length:Y}=HCn(u);return"message"in m?qh(D,P,Y,m,...v):Ut(D,m)}else return"message"in m?mo(u,m,...v):Bw(ms(u),u,m)}function $Qs(u){return av(u)?jo(u.expression)?u.expression.name:u.expression:MI(u)?jo(u.tag)?u.tag.name:u.tag:eI(u)?u.tagName:u}function eXs(u){if(!Zl(u)||!Ir(u.expression))return!1;let m=An(u.expression,u.expression.escapedText,111551,void 0,!1),v=m?.valueDeclaration;if(!v||!Si(v)||!RF(v.parent)||!f2(v.parent.parent)||!Ir(v.parent.parent.expression))return!1;let D=KJt(!1);return D?xv(v.parent.parent.expression,!0)===D:!1}function YCn(u,m,v,D){var P;let Y=WKt(v);if(Y>-1)return mo(v[Y],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let oe=Number.POSITIVE_INFINITY,Be=Number.NEGATIVE_INFINITY,Oe=Number.NEGATIVE_INFINITY,He=Number.POSITIVE_INFINITY,qe;for(let vn of m){let ii=_R(vn),Yi=NE(vn);iiOe&&(Oe=ii),v.lengthP?oe=Math.min(oe,Oe):He1&&(vn=yl(Yi,ck,Ji,Mi)),vn||(vn=yl(Yi,l0,Ji,Mi));let To=sa(u);if(To.resolvedSignature!==Go&&!v)return pe.assert(To.resolvedSignature),To.resolvedSignature;if(vn)return vn;if(vn=rXs(u,Yi,Co,!!v,D),To.resolvedSignature=vn,Vt){if(!Y&&qe&&(Y=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),kt)if(kt.length===1||kt.length>3){let ka=kt[kt.length-1],Kc;kt.length>3&&(Kc=wu(Kc,Z.The_last_overload_gave_the_following_error),Kc=wu(Kc,Z.No_overload_matches_this_call)),Y&&(Kc=wu(Kc,Y));let Vu=cOe(u,Co,ka,l0,0,!0,()=>Kc);if(Vu)for(let gd of Vu)ka.declaration&&kt.length>3&&lg(gd,mo(ka.declaration,Z.The_last_overload_is_declared_here)),Ka(ka,gd),PA.add(gd);else pe.fail("No error for last overload signature")}else{let ka=[],Kc=0,Vu=Number.MAX_VALUE,gd=0,Ll=0;for(let eo of kt){let _o=cOe(u,Co,eo,l0,0,!0,()=>wu(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Ll+1,Yi.length,lW(eo)));_o?(_o.length<=Vu&&(Vu=_o.length,gd=Ll),Kc=Math.max(Kc,_o.length),ka.push(_o)):pe.fail("No error for 3 or fewer overload signatures"),Ll++}let Ef=Kc>1?ka[gd]:Nr(ka);pe.assert(Ef.length>0,"No errors reported for 3 or fewer overload signatures");let UI=wu(At(Ef,Qr),Z.No_overload_matches_this_call);Y&&(UI=wu(UI,Y));let V0=[...er(Ef,eo=>eo.relatedInformation)],xs;if(ue(Ef,eo=>eo.start===Ef[0].start&&eo.length===Ef[0].length&&eo.file===Ef[0].file)){let{file:eo,start:qc,length:_o}=Ef[0];xs={file:eo,start:qc,length:_o,code:UI.code,category:UI.category,messageText:UI,relatedInformation:V0}}else xs=Bw(ms(u),$Qs(u),UI,V0);Ka(kt[0],xs),PA.add(xs)}else if(vr)PA.add(YCn(u,[vr],Co,Y));else if(dn)YKt(dn,u.typeArguments,!0,Y);else if(!He){let ka=Me(m,Kc=>OKt(Kc,js));ka.length===0?PA.add(tXs(u,m,js,Y)):PA.add(YCn(u,ka,Co,Y))}}return vn;function Ka(ka,Kc){var Vu,gd;let Ll=kt,Ef=vr,UI=dn,V0=((gd=(Vu=ka.declaration)==null?void 0:Vu.symbol)==null?void 0:gd.declarations)||E,eo=V0.length>1?de(V0,qc=>kd(qc)&&u1(qc.body)):void 0;if(eo){let qc=yS(eo),_o=!qc.typeParameters;yl([qc],l0,_o)&&lg(Kc,mo(eo,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}kt=Ll,vr=Ef,dn=UI}function yl(ka,Kc,Vu,gd=!1){if(kt=void 0,vr=void 0,dn=void 0,Vu){let Ll=ka[0];if(jt(js)||!sat(u,Co,Ll,gd))return;if(cOe(u,Co,Ll,Kc,0,!1,void 0)){kt=[Ll];return}return Ll}for(let Ll=0;Ll0),Lq(u),D||m.length===1||m.some(Y=>!!Y.typeParameters)?sXs(u,m,v,P):nXs(m)}function nXs(u){let m=Xt(u,Oe=>Oe.thisParameter),v;m.length&&(v=QCn(m,m.map(gOe)));let{min:D,max:P}=hLe(u,iXs),Y=[];for(let Oe=0;OeD0(qe)?OeKQ(qe,Oe))))}let oe=Xt(u,Oe=>D0(Oe)?Ei(Oe.parameters):void 0),Be=128;if(oe.length!==0){let Oe=d0(Ha(Xt(u,oIn),2));Y.push(XCn(oe,Oe)),Be|=1}return u.some(Btn)&&(Be|=2),PN(u[0].declaration,void 0,v,Y,Kg(u.map(ud)),void 0,D,Be)}function iXs(u){let m=u.parameters.length;return D0(u)?m-1:m}function QCn(u,m){return XCn(u,Ha(m,2))}function XCn(u,m){return SK(ma(u),m)}function sXs(u,m,v,D){let P=cXs(m,Br===void 0?v.length:Br),Y=m[P],{typeParameters:oe}=Y;if(!oe)return Y;let Be=xCn(u)?u.typeArguments:void 0,Oe=Be?Ust(Y,oXs(Be,oe,wo(u))):aXs(u,oe,Y,v,D);return m[P]=Oe,Oe}function oXs(u,m,v){let D=u.map(Vq);for(;D.length>m.length;)D.pop();for(;D.length=m)return P;oe>D&&(D=oe,v=P)}return v}function lXs(u,m,v){if(u.expression.kind===108){let Oe=Hot(u.expression);if(Xo(Oe)){for(let He of u.arguments)Ol(He);return Ls}if(!uo(Oe)){let He=BB(hC(u));if(He){let qe=zx(Oe,He.typeArguments,He);return Mse(u,qe,m,v,0)}}return DK(u)}let D,P=Ol(u.expression);if(_B(u)){let Oe=k2e(P,u.expression);D=Oe===P?0:i3(u)?16:8,P=Oe}else D=0;if(P=CCn(P,u.expression,wQs),P===Vn)return Ss;let Y=fy(P);if(uo(Y))return mR(u);let oe=tg(Y,0),Be=tg(Y,1).length;if(lOe(P,Y,oe.length,Be))return!uo(P)&&u.typeArguments&&Sr(u,Z.Untyped_function_calls_may_not_accept_type_arguments),DK(u);if(!oe.length){if(Be)Sr(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,no(P));else{let Oe;if(u.arguments.length===1){let He=ms(u).text;Cl(He.charCodeAt(Yu(He,u.expression.end,!0)-1))&&(Oe=mo(u.expression,Z.Are_you_missing_a_semicolon))}XKt(u.expression,Y,0,Oe)}return mR(u)}return v&8&&!u.typeArguments&&oe.some(uXs)?(N_n(u,v),Go):oe.some(Oe=>wo(Oe.declaration)&&!!bx(Oe.declaration))?(Sr(u,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,no(P)),mR(u)):Mse(u,oe,m,v,D)}function uXs(u){return!!(u.typeParameters&&V8t(ud(u)))}function lOe(u,m,v,D){return Xo(u)||Xo(m)&&!!(u.flags&262144)||!v&&!D&&!(m.flags&1048576)&&!(JB(m).flags&131072)&&dg(u,Js)}function gXs(u,m,v){let D=Ose(u.expression);if(D===Vn)return Ss;if(D=fy(D),uo(D))return mR(u);if(Xo(D))return u.typeArguments&&Sr(u,Z.Untyped_function_calls_may_not_accept_type_arguments),DK(u);let P=tg(D,1);if(P.length){if(!AXs(u,P[0]))return mR(u);if(JCn(P,Be=>!!(Be.flags&4)))return Sr(u,Z.Cannot_create_an_instance_of_an_abstract_class),mR(u);let oe=D.symbol&&AN(D.symbol);return oe&&Ga(oe,64)?(Sr(u,Z.Cannot_create_an_instance_of_an_abstract_class),mR(u)):Mse(u,P,m,v,0)}let Y=tg(D,0);if(Y.length){let oe=Mse(u,Y,m,v,0);return Rt||(oe.declaration&&!YN(oe.declaration)&&ud(oe)!==es&&Sr(u,Z.Only_a_void_function_can_be_called_with_the_new_keyword),k5(oe)===es&&Sr(u,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),oe}return XKt(u.expression,D,1),mR(u)}function JCn(u,m){return Ki(u)?jt(u,v=>JCn(v,m)):u.compositeKind===1048576?jt(u.compositeSignatures,m):m(u)}function QKt(u,m){let v=Kw(m);if(!B(v))return!1;let D=v[0];if(D.flags&2097152){let P=D.types,Y=Wfn(P),oe=0;for(let Be of D.types){if(!Y[oe]&&la(Be)&3&&(Be.symbol===u||QKt(u,Be)))return!0;oe++}return!1}return D.symbol===u?!0:QKt(u,D)}function AXs(u,m){if(!m||!m.declaration)return!0;let v=m.declaration,D=MY(v,6);if(!D||v.kind!==177)return!0;let P=AN(v.parent.symbol),Y=Fp(v.parent.symbol);if(!F8t(u,P)){let oe=hC(u);if(oe&&D&4){let Be=Vq(oe);if(QKt(v.parent.symbol,Be))return!0}return D&2&&Sr(u,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,no(Y)),D&4&&Sr(u,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,no(Y)),!1}return!0}function UCn(u,m,v){let D,P=v===0,Y=Zq(m),oe=Y&&tg(Y,v).length>0;if(m.flags&1048576){let Oe=m.types,He=!1;for(let qe of Oe)if(tg(qe,v).length!==0){if(He=!0,D)break}else if(D||(D=wu(D,P?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,no(qe)),D=wu(D,P?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,no(m))),He)break;He||(D=wu(void 0,P?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,no(m))),D||(D=wu(D,P?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,no(m)))}else D=wu(D,P?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,no(m));let Be=P?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(Zl(u.parent)&&u.parent.arguments.length===0){let{resolvedSymbol:Oe}=sa(u);Oe&&Oe.flags&32768&&(Be=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:wu(D,Be),relatedMessage:oe?Z.Did_you_forget_to_use_await:void 0}}function XKt(u,m,v,D){let{messageChain:P,relatedMessage:Y}=UCn(u,m,v),oe=Bw(ms(u),u,P);if(Y&&lg(oe,mo(u,Y)),Zl(u.parent)){let{start:Be,length:Oe}=HCn(u.parent);oe.start=Be,oe.length=Oe}PA.add(oe),KCn(m,v,D?lg(oe,D):oe)}function KCn(u,m,v){if(!u.symbol)return;let D=fa(u.symbol).originatingImport;if(D&&!Up(D)){let P=tg(Io(fa(u.symbol).target),m);if(!P||!P.length)return;lg(v,mo(D,Z.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}function dXs(u,m,v){let D=Ol(u.tag),P=fy(D);if(uo(P))return mR(u);let Y=tg(P,0),oe=tg(P,1).length;if(lOe(D,P,Y.length,oe))return DK(u);if(!Y.length){if(OI(u.parent)){let Be=mo(u.tag,Z.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return PA.add(Be),mR(u)}return XKt(u.tag,P,0),mR(u)}return Mse(u,Y,m,v,0)}function pXs(u){switch(u.parent.kind){case 264:case 232:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 170:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 173:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 175:case 178:case 179:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return pe.fail()}}function fXs(u,m,v){let D=Ol(u.expression),P=fy(D);if(uo(P))return mR(u);let Y=tg(P,0),oe=tg(P,1).length;if(lOe(D,P,Y.length,oe))return DK(u);if(mXs(u,Y)&&!gI(u.expression)){let Oe=xp(u.expression,!1);return Sr(u,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Oe),mR(u)}let Be=pXs(u);if(!Y.length){let Oe=UCn(u.expression,P,0),He=wu(Oe.messageChain,Be),qe=Bw(ms(u.expression),u.expression,He);return Oe.relatedMessage&&lg(qe,mo(u.expression,Oe.relatedMessage)),PA.add(qe),KCn(P,0,qe),mR(u)}return Mse(u,Y,m,v,0,Be)}function cat(u,m){let v=NK(u),D=v&&B1(v),P=D&&f_(D,lS.Element,788968),Y=P&&Dt.symbolToEntityName(P,788968,u),oe=me.createFunctionTypeNode(void 0,[me.createParameterDeclaration(void 0,void 0,"props",void 0,Dt.typeToTypeNode(m,u))],Y?me.createTypeReferenceNode(Y,void 0):me.createKeywordTypeNode(133)),Be=gA(1,"props");return Be.links.type=m,PN(oe,void 0,void 0,[Be],P?Fp(P):nn,void 0,1,0)}function jCn(u){let m=sa(ms(u));if(m.jsxFragmentType!==void 0)return m.jsxFragmentType;let v=Mw(u);if(!((Te.jsx===2||Te.jsxFragmentFactory!==void 0)&&v!=="null"))return m.jsxFragmentType=hr;let P=Te.jsx!==1&&Te.jsx!==3,Y=PA?Z.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:void 0,oe=$ot(u)??An(u,v,P?111551:111167,Y,!0);if(oe===void 0)return m.jsxFragmentType=nn;if(oe.escapedName===Tet.Fragment)return m.jsxFragmentType=Io(oe);let Be=oe.flags&2097152?YC(oe):oe,Oe=oe&&B1(Be),He=Oe&&f_(Oe,Tet.Fragment,2),qe=He&&Io(He);return m.jsxFragmentType=qe===void 0?nn:qe}function IXs(u,m,v){let D=Pw(u),P;if(D)P=jCn(u);else{if(Fq(u.tagName)){let Be=dCn(u),Oe=cat(u,Be);return QQ(Yse(u.attributes,Uot(Oe,u),void 0,0),Be,u.tagName,u.attributes),B(u.typeArguments)&&(F(u.typeArguments,rA),PA.add(A3(ms(u),u.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,B(u.typeArguments)))),Oe}P=Ol(u.tagName)}let Y=fy(P);if(uo(Y))return mR(u);let oe=gCn(P,u);return lOe(P,Y,oe.length,0)?DK(u):oe.length===0?(D?Sr(u,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,xp(u)):Sr(u.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,xp(u.tagName)),mR(u)):Mse(u,oe,m,v,0)}function hXs(u,m,v){let D=Ol(u.right);if(!Xo(D)){let P=c8t(D);if(P){let Y=fy(P);if(uo(Y))return mR(u);let oe=tg(Y,0),Be=tg(Y,1);if(lOe(P,Y,oe.length,Be.length))return DK(u);if(oe.length)return Mse(u,oe,m,v,0)}else if(!(Gat(D)||YQ(D,Js)))return Sr(u.right,Z.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),mR(u)}return Ls}function mXs(u,m){return m.length&&ue(m,v=>v.minArgumentCount===0&&!D0(v)&&v.parameters.length1?RI(u.arguments[1]):void 0;for(let Y=2;Y{let oe=D1(P);pot(Y,oe)||whn(P,Y,v,Z.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)})}function wXs(u){let m=Ol(u.expression),v=k2e(m,u.expression);return Bot(gZ(v),u,v!==m)}function TXs(u){return u.flags&64?wXs(u):gZ(Ol(u.expression))}function n_n(u){if(K0n(u),F(u.typeArguments,rA),u.kind===234){let v=gv(u.parent);v.kind===227&&v.operatorToken.kind===104&&EP(u,v.right)&&Sr(u,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let m=u.kind===234?Ol(u.expression):vF(u.exprName)?qWe(u.exprName):Ol(u.exprName);return i_n(m,u)}function i_n(u,m){let v=m.typeArguments;if(u===Vn||uo(u)||!jt(v))return u;let D=sa(m);if(D.instantiationExpressionTypes||(D.instantiationExpressionTypes=new Map),D.instantiationExpressionTypes.has(u.id))return D.instantiationExpressionTypes.get(u.id);let P=!1,Y,oe=Oe(u);D.instantiationExpressionTypes.set(u.id,oe);let Be=P?Y:u;return Be&&PA.add(A3(ms(m),v,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,no(Be))),oe;function Oe(qe){let Vt=!1,kt=!1,vr=dn(qe);return P||(P=kt),Vt&&!kt&&(Y??(Y=qe)),vr;function dn(vn){if(vn.flags&524288){let ii=pR(vn),Yi=He(ii.callSignatures),js=He(ii.constructSignatures);if(Vt||(Vt=ii.callSignatures.length!==0||ii.constructSignatures.length!==0),kt||(kt=Yi.length!==0||js.length!==0),Yi!==ii.callSignatures||js!==ii.constructSignatures){let Co=Hf(gA(0,"__instantiationExpression"),ii.members,Yi,js,ii.indexInfos);return Co.objectFlags|=8388608,Co.node=m,Co}}else if(vn.flags&58982400){let ii=L_(vn);if(ii){let Yi=dn(ii);if(Yi!==ii)return Yi}}else{if(vn.flags&1048576)return Yf(vn,Oe);if(vn.flags&2097152)return Kg(Tr(vn.types,dn))}return vn}}function He(qe){let Vt=Me(qe,kt=>!!kt.typeParameters&&OKt(kt,v));return Tr(Vt,kt=>{let vr=YKt(kt,v,!0);return vr?_2e(kt,vr,wo(kt.declaration)):kt})}}function RXs(u){return rA(u.type),jKt(u.expression,u.type)}function jKt(u,m,v){let D=Ol(u,v),P=nl(m);if(uo(P))return P;let Y=ji(m.parent,oe=>oe.kind===239||oe.kind===351);return QQ(D,P,Y,u,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function NXs(u){return G8s(u),u.keywordToken===105?zKt(u):u.keywordToken===102?u.name.escapedText==="defer"?(pe.assert(!Zl(u.parent)||u.parent.expression!==u,"Trying to get the type of `import.defer` in `import.defer(...)`"),nn):DXs(u):pe.assertNever(u.keywordToken)}function s_n(u){switch(u.keywordToken){case 102:return EIn();case 105:let m=zKt(u);return uo(m)?nn:UXs(m);default:pe.assertNever(u.keywordToken)}}function zKt(u){let m=oZe(u);if(m)if(m.kind===177){let v=Uo(m.parent);return Io(v)}else{let v=Uo(m);return Io(v)}else return Sr(u,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),nn}function DXs(u){100<=We&&We<=199?ms(u).impliedNodeFormat!==99&&Sr(u,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):We<6&&We!==4&&Sr(u,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext);let m=ms(u);return pe.assert(!!(m.flags&8388608),"Containing file is missing import meta node flag."),u.name.escapedText==="meta"?bIn():nn}function gOe(u){let m=u.valueDeclaration;return Z0(Io(u),!1,!!m&&(WT(m)||RB(m)))}function qKt(u,m,v){switch(u.name.kind){case 80:{let D=u.name.escapedText;return u.dotDotDotToken?v&12?D:`${D}_${m}`:v&3?D:`${D}_n`}case 208:{if(u.dotDotDotToken){let D=u.name.elements,P=Gs(li(D),hg),Y=D.length-(P?.dotDotDotToken?1:0);if(m=D-1)return m===D-1?Y:d0(R1(Y,ri));let oe=[],Be=[],Oe=[];for(let He=m;He!(Oe&1)),Be=oe<0?Y.target.fixedLength:oe;Be>0&&(P=u.parameters.length-1+Be)}}if(P===void 0){if(!v&&u.flags&32)return 0;P=u.minArgumentCount}if(D)return P;for(let Y=P-1;Y>=0;Y--){let oe=CR(u,Y);if(nm(oe,GCn).flags&131072)break;P=Y}u.resolvedMinArgumentCount=P}return u.resolvedMinArgumentCount}function Ck(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]);return!yA(m)||!!(m.target.combinedFlags&12)}return!1}function J2e(u){if(D0(u)){let m=Io(u.parameters[u.parameters.length-1]);if(!yA(m))return Xo(m)?d_:m;if(m.target.combinedFlags&12)return Ope(m,m.target.fixedLength)}}function U2e(u){let m=J2e(u);return m&&!Nv(m)&&!Xo(m)?m:void 0}function e8t(u){return t8t(u,Wi)}function t8t(u,m){return u.parameters.length>0?CR(u,0):m}function l_n(u,m,v){let D=u.parameters.length-(D0(u)?1:0);for(let Y=0;Y=0);let Y=Tc(D.parent)?Io(Uo(D.parent.parent)):L0n(D.parent),oe=Tc(D.parent)?Bt:V0n(D.parent),Be=fR(P),Oe=IS("target",Y),He=IS("propertyKey",oe),qe=IS("parameterIndex",Be);v.decoratorSignature=tSe(void 0,void 0,[Oe,He,qe],es);break}case 175:case 178:case 179:case 173:{let D=m;if(!xa(D.parent))break;let P=L0n(D),Y=IS("target",P),oe=V0n(D),Be=IS("propertyKey",oe),Oe=pi(D)?es:kIn(Vq(D));if(!pi(m)||Nw(m)){let qe=kIn(Vq(D)),Vt=IS("descriptor",qe);v.decoratorSignature=tSe(void 0,void 0,[Y,Be,Vt],Ha([Oe,es]))}else v.decoratorSignature=tSe(void 0,void 0,[Y,Be],Ha([Oe,es]));break}}return v.decoratorSignature===Ls?void 0:v.decoratorSignature}function n8t(u){return Ue?JXs(u):XXs(u)}function pOe(u){let m=EWe(!0);return m!==oi?(u=pZ(tfe(u))||cn,iZ(m,[u])):cn}function A_n(u){let m=wIn(!0);return m!==oi?(u=pZ(tfe(u))||cn,iZ(m,[u])):cn}function fOe(u,m){let v=pOe(m);return v===cn?(Sr(u,Up(u)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),nn):(KJt(!0)||Sr(u,Up(u)?Z.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),v)}function UXs(u){let m=gA(0,"NewTargetExpression"),v=gA(4,"target",8);v.parent=m,v.links.type=u;let D=qu([v]);return m.members=D,Hf(m,D,E,E,E)}function gat(u,m){if(!u.body)return nn;let v=SI(u),D=(v&2)!==0,P=(v&1)!==0,Y,oe,Be,Oe=es;if(u.body.kind!==242)Y=RI(u.body,m&&m&-9),D&&(Y=tfe(yOe(Y,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(P){let He=I_n(u,m);He?He.length>0&&(Y=Ha(He,2)):Oe=Wi;let{yieldTypes:qe,nextTypes:Vt}=KXs(u,m);oe=jt(qe)?Ha(qe,2):void 0,Be=jt(Vt)?Kg(Vt):void 0}else{let He=I_n(u,m);if(!He)return v&2?fOe(u,Wi):Wi;if(He.length===0){let qe=Yot(u,void 0),Vt=qe&&(wOe(qe,v)||es).flags&32768?Bt:es;return v&2?fOe(u,Vt):Vt}Y=Ha(He,2)}if(Y||oe||Be){if(oe&&Not(u,oe,3),Y&&Not(u,Y,1),Be&&Not(u,Be,2),Y&&IR(Y)||oe&&IR(oe)||Be&&IR(Be)){let He=Kot(u),qe=He?He===yS(u)?P?void 0:Y:Xot(ud(He),u,void 0):void 0;P?(oe=VUt(oe,qe,0,D),Y=VUt(Y,qe,1,D),Be=VUt(Be,qe,2,D)):Y=MMs(Y,qe,D)}oe&&(oe=D1(oe)),Y&&(Y=D1(Y)),Be&&(Be=D1(Be))}return P?Aat(oe||Wi,Y||Oe,Be||Jmn(2,u)||cn,D):D?pOe(Y||Oe):Y||Oe}function Aat(u,m,v,D){let P=D?_h:Gp,Y=P.getGlobalGeneratorType(!1);if(u=P.resolveIterationType(u,void 0)||cn,m=P.resolveIterationType(m,void 0)||cn,Y===oi){let oe=P.getGlobalIterableIteratorType(!1);return oe!==oi?Wpe(oe,[u,m,v]):(P.getGlobalIterableIteratorType(!0),Xg)}return Wpe(Y,[u,m,v])}function KXs(u,m){let v=[],D=[],P=(SI(u)&2)!==0;return $Fe(u.body,Y=>{let oe=Y.expression?Ol(Y.expression,m):xe;Qi(v,d_n(Y,oe,hr,P));let Be;if(Y.asteriskToken){let Oe=Sat(oe,P?19:17,Y.expression);Be=Oe&&Oe.nextType}else Be=Jy(Y,void 0);Be&&Qi(D,Be)}),{yieldTypes:v,nextTypes:D}}function d_n(u,m,v,D){if(m===Vn)return Vn;let P=u.expression||u,Y=u.asteriskToken?N9(D?19:17,m,v,P):m;return D?Zq(Y,P,u.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Y}function p_n(u,m,v){let D=0;for(let P=0;P=m?v[P]:void 0;D|=Y!==void 0?mOt.get(Y)||32768:0}return D}function f_n(u){let m=sa(u);if(m.isExhaustive===void 0){m.isExhaustive=0;let v=jXs(u);m.isExhaustive===0&&(m.isExhaustive=v)}else m.isExhaustive===0&&(m.isExhaustive=!1);return m.isExhaustive}function jXs(u){if(u.expression.kind===222){let D=mmn(u);if(!D)return!1;let P=WN(RI(u.expression.expression)),Y=p_n(0,0,D);return P.flags&3?(556800&Y)===556800:!kv(P,oe=>Lse(oe,Y)===Y)}let m=WN(RI(u.expression));if(!D2e(m))return!1;let v=Fot(u);return!v.length||jt(v,PMs)?!1:LHs(Yf(m,Iy),v)}function i8t(u){return u.endFlowNode&&KWe(u.endFlowNode)}function I_n(u,m){let v=SI(u),D=[],P=i8t(u),Y=!1;if(yF(u.body,oe=>{let Be=oe.expression;if(Be){if(Be=QA(Be,!0),v&2&&Be.kind===224&&(Be=QA(Be.expression,!0)),Be.kind===214&&Be.expression.kind===80&&RI(Be.expression).symbol===jA(u.symbol)&&(!RF(u.symbol.valueDeclaration)||lKt(Be.expression))){Y=!0;return}let Oe=RI(Be,m&&m&-9);v&2&&(Oe=tfe(yOe(Oe,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Oe.flags&131072&&(Y=!0),Qi(D,Oe)}else P=!0}),!(D.length===0&&!P&&(Y||zXs(u))))return ot&&D.length&&P&&!(YN(u)&&D.some(oe=>oe.symbol===u.symbol))&&Qi(D,Bt),D}function zXs(u){switch(u.kind){case 219:case 220:return!0;case 175:return u.parent.kind===211;default:return!1}}function qXs(u){switch(u.kind){case 177:case 178:case 179:return}if(SI(u)!==0)return;let v;if(u.body&&u.body.kind!==242)v=u.body;else if(yF(u.body,P=>{if(v||!P.expression)return!0;v=P.expression})||!v||i8t(u))return;return $Xs(u,v)}function $Xs(u,m){if(m=QA(m,!0),!!(RI(m).flags&16))return F(u.parameters,(D,P)=>{let Y=Io(D.symbol);if(!Y||Y.flags&16||!Ir(D.name)||V2e(D.symbol)||EB(D))return;let oe=e4s(u,m,D,Y);if(oe)return C2e(1,Bc(D.name.escapedText),P,oe)})}function e4s(u,m,v,D){let P=UJ(m)&&m.flowNode||m.parent.kind===254&&m.parent.flowNode||rk(2,void 0,void 0),Y=rk(32,m,P),oe=dZ(v.name,D,D,u,Y);if(oe===D)return;let Be=rk(64,m,P);return JB(dZ(v.name,D,oe,u,Be)).flags&131072?oe:void 0}function s8t(u,m){g(v);return;function v(){let D=SI(u),P=m&&wOe(m,D);if(P&&(ah(P,16384)||P.flags&32769)||u.kind===174||sf(u.body)||u.body.kind!==242||!i8t(u))return;let Y=u.flags&1024,oe=xb(u)||u;if(P&&P.flags&131072)Sr(oe,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(P&&!Y)Sr(oe,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(P&&ot&&!dg(Bt,P))Sr(oe,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Te.noImplicitReturns){if(!P){if(!Y)return;let Be=ud(yS(u));if(u0n(u,Be))return}Sr(oe,Z.Not_all_code_paths_return_a_value)}}}function h_n(u,m){if(pe.assert(u.kind!==175||a2(u)),Lq(u),UA(u)&&rfe(u,u.name),m&&m&4&&bS(u)){if(!xb(u)&&!OAe(u)){let D=O2e(u);if(D&&CW(ud(D))){let P=sa(u);if(P.contextFreeType)return P.contextFreeType;let Y=gat(u,m),oe=PN(void 0,void 0,void 0,E,Y,void 0,0,64),Be=Hf(u.symbol,Ee,[oe],E,E);return Be.objectFlags|=262144,P.contextFreeType=Be}}return $d}return!Vat(u)&&u.kind===219&&H8t(u),t4s(u,m),Io(Uo(u))}function t4s(u,m){let v=sa(u);if(!(v.flags&64)){let D=O2e(u);if(!(v.flags&64)){v.flags|=64;let P=Nc(tg(Io(Uo(u)),0));if(!P)return;if(bS(u))if(D){let Y=JQ(u),oe;if(m&&m&2){l_n(P,D,Y);let Be=J2e(D);Be&&Be.flags&262144&&(oe=bK(D,Y.nonFixingMapper))}oe||(oe=Y?bK(D,Y.mapper):D),GXs(P,oe)}else FXs(P);else if(D&&!u.typeParameters&&D.parameters.length>u.parameters.length){let Y=JQ(u);m&&m&2&&l_n(P,D,Y)}if(D&&!Nse(u)&&!P.resolvedReturnType){let Y=gat(u,m);P.resolvedReturnType||(P.resolvedReturnType=Y)}z2e(u)}}}function r4s(u){pe.assert(u.kind!==175||a2(u));let m=SI(u),v=Nse(u);if(s8t(u,v),u.body)if(xb(u)||ud(yS(u)),u.body.kind===242)rA(u.body);else{let D=Ol(u.body),P=v&&wOe(v,m);P&&vat(u,P,u.body,u.body,D)}}function dat(u,m,v,D=!1){if(!dg(m,gg)){let P=D&&efe(m);return u9(u,!!P&&dg(P,gg),v),!1}return!0}function n4s(u){if(!Zl(u)||!f3(u))return!1;let m=RI(u.arguments[2]);if(Pi(m,"value")){let P=Gg(m,"writable"),Y=P&&Io(P);if(!Y||Y===Bs||Y===Ys)return!0;if(P&&P.valueDeclaration&&fm(P.valueDeclaration)){let oe=P.valueDeclaration.initializer,Be=Ol(oe);if(Be===Bs||Be===Ys)return!0}return!1}return!Gg(m,"set")}function yR(u){return!!(iI(u)&8||u.flags&4&&u2(u)&8||u.flags&3&&TKt(u)&6||u.flags&98304&&!(u.flags&65536)||u.flags&8||jt(u.declarations,n4s))}function m_n(u,m,v){var D,P;if(v===0)return!1;if(yR(m)){if(m.flags&4&&_p(u)&&u.expression.kind===110){let Y=Kpe(u);if(!(Y&&(Y.kind===177||YN(Y))))return!0;if(m.valueDeclaration){let oe=fo(m.valueDeclaration),Be=Y.parent===m.valueDeclaration.parent,Oe=Y===m.valueDeclaration.parent,He=oe&&((D=m.parent)==null?void 0:D.valueDeclaration)===Y.parent,qe=oe&&((P=m.parent)==null?void 0:P.valueDeclaration)===Y;return!(Be||Oe||He||qe)}}return!0}if(_p(u)){let Y=QA(u.expression);if(Y.kind===80){let oe=sa(Y).resolvedSymbol;if(oe.flags&2097152){let Be=Mb(oe);return!!Be&&Be.kind===275}}}return!1}function K2e(u,m,v){let D=HI(u,39);return D.kind!==80&&!_p(D)?(Sr(u,m),!1):D.flags&64?(Sr(u,v),!1):!0}function i4s(u){Ol(u.expression);let m=QA(u.expression);if(!_p(m))return Sr(m,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),Mn;jo(m)&&p(m.name)&&Sr(m,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let v=sa(m),D=fn(v.resolvedSymbol);return D&&(yR(D)?Sr(m,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):s4s(m,D)),Mn}function s4s(u,m){let v=Io(m);ot&&!(v.flags&131075)&&!(Pt?m.flags&16777216:hR(v,16777216))&&Sr(u,Z.The_operand_of_a_delete_operator_must_be_optional)}function o4s(u){return Ol(u.expression),pse}function a4s(u){return Lq(u),xe}function C_n(u){let m=!1,v=qre(u);if(v&&fl(v)){let D=I1(u)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;Sr(u,D),m=!0}else if(!(u.flags&65536))if(Mge(u)){let D=ms(u);if(!bW(D)){let P;if(!g3(D,Te)){P??(P=rs(D,u.pos));let Y=I1(u)?Z.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:Z.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module,oe=qh(D,P.start,P.length,Y);PA.add(oe),m=!0}switch(We){case 100:case 101:case 102:case 199:if(D.impliedNodeFormat===1){P??(P=rs(D,u.pos)),PA.add(qh(D,P.start,P.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),m=!0;break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:P??(P=rs(D,u.pos));let Y=I1(u)?Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;PA.add(qh(D,P.start,P.length,Y)),m=!0;break}}}else{let D=ms(u);if(!bW(D)){let P=rs(D,u.pos),Y=I1(u)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,oe=qh(D,P.start,P.length,Y);if(v&&v.kind!==177&&!(SI(v)&2)){let Be=mo(v,Z.Did_you_mean_to_mark_this_function_as_async);lg(oe,Be)}PA.add(oe),m=!0}}return I1(u)&&CKt(u)&&(Sr(u,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),m=!0),m}function c4s(u){g(()=>C_n(u));let m=Ol(u.expression),v=yOe(m,!0,u,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return v===m&&!uo(v)&&!(m.flags&3)&&Hx(!1,mo(u,Z.await_has_no_effect_on_the_type_of_this_expression)),v}function l4s(u){let m=Ol(u.operand);if(m===Vn)return Vn;switch(u.operand.kind){case 9:switch(u.operator){case 41:return Rq(fR(-u.operand.text));case 40:return Rq(fR(+u.operand.text))}break;case 10:if(u.operator===41)return Rq(RWe({negative:!0,base10Value:nz(u.operand.text)}))}switch(u.operator){case 40:case 41:case 55:return HN(m,u.operand),IOe(m,12288)&&Sr(u.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(u.operator)),u.operator===40?(IOe(m,2112)&&Sr(u.operand,Z.Operator_0_cannot_be_applied_to_type_1,Vi(u.operator),no(uZ(m))),ri):o8t(m);case 54:b8t(m,u.operand);let v=Lse(m,12582912);return v===4194304?Bs:v===8388608?tn:Mn;case 46:case 47:return dat(u.operand,HN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&K2e(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),o8t(m)}return nn}function u4s(u){let m=Ol(u.operand);return m===Vn?Vn:(dat(u.operand,HN(m,u.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&K2e(u.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),o8t(m))}function o8t(u){return ah(u,2112)?V_(u,3)||ah(u,296)?gg:ao:ri}function IOe(u,m){if(ah(u,m))return!0;let v=WN(u);return!!v&&ah(v,m)}function ah(u,m){if(u.flags&m)return!0;if(u.flags&3145728){let v=u.types;for(let D of v)if(ah(D,m))return!0}return!1}function V_(u,m,v){return u.flags&m?!0:v&&u.flags&114691?!1:!!(m&296)&&dg(u,ri)||!!(m&2112)&&dg(u,ao)||!!(m&402653316)&&dg(u,$r)||!!(m&528)&&dg(u,Mn)||!!(m&16384)&&dg(u,es)||!!(m&131072)&&dg(u,Wi)||!!(m&65536)&&dg(u,Hn)||!!(m&32768)&&dg(u,Bt)||!!(m&4096)&&dg(u,ci)||!!(m&67108864)&&dg(u,fs)}function j2e(u,m,v){return u.flags&1048576?ue(u.types,D=>j2e(D,m,v)):V_(u,m,v)}function pat(u){return!!(la(u)&16)&&!!u.symbol&&a8t(u.symbol)}function a8t(u){return(u.flags&128)!==0}function c8t(u){let m=o0n("hasInstance");if(j2e(u,67108864)){let v=Gg(u,m);if(v){let D=Io(v);if(D&&tg(D,0).length!==0)return D}}}function g4s(u,m,v,D,P){if(v===Vn||D===Vn)return Vn;!Xo(v)&&j2e(v,402784252)&&Sr(u,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),pe.assert(pAe(u.parent));let Y=Hse(u.parent,void 0,P);if(Y===Go)return Vn;let oe=ud(Y);return p0(oe,Mn,m,Z.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Mn}function A4s(u){return kv(u,m=>m===KA||!!(m.flags&2097152)&&mk(WN(m)))}function d4s(u,m,v,D){if(v===Vn||D===Vn)return Vn;if(p(u)){if((ZeOpe(He,v)):d0(D);return xK(Be,Oe,P)}}}}function xK(u,m,v,D){let P;if(u.kind===305){let Y=u;Y.objectAssignmentInitializer&&(ot&&!hR(Ol(Y.objectAssignmentInitializer),16777216)&&(m=Dv(m,524288)),b4s(Y.name,Y.equalsToken,Y.objectAssignmentInitializer,v)),P=u.name}else P=u;return P.kind===227&&P.operatorToken.kind===64&&(Gt(P,v),P=P.left,ot&&(m=Dv(m,524288))),P.kind===211?p4s(P,m,D):P.kind===210?f4s(P,m,v):I4s(P,m,v)}function I4s(u,m,v){let D=Ol(u,v),P=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Y=u.parent.kind===306?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return K2e(u,P,Y)&&QQ(m,D,u,u),cP(u)&&eC(u.parent,1048576),m}function hOe(u){switch(u=QA(u),u.kind){case 80:case 11:case 14:case 216:case 229:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 219:case 232:case 220:case 210:case 211:case 222:case 236:case 286:case 285:return!0;case 228:return hOe(u.whenTrue)&&hOe(u.whenFalse);case 227:return UD(u.operatorToken.kind)?!1:hOe(u.left)&&hOe(u.right);case 225:case 226:switch(u.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 223:case 217:case 235:default:return!1}}function l8t(u,m){return(m.flags&98304)!==0||pot(u,m)}function h4s(){let u=c9e(m,v,D,P,Y,oe);return(kt,vr)=>{let dn=u(kt,vr);return pe.assertIsDefined(dn),dn};function m(kt,vr,dn){return vr?(vr.stackIndex++,vr.skip=!1,He(vr,void 0),Vt(vr,void 0)):vr={checkMode:dn,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},wo(kt)&&FY(kt)?(vr.skip=!0,Vt(vr,Ol(kt.right,dn)),vr):(m4s(kt),kt.operatorToken.kind===64&&(kt.left.kind===211||kt.left.kind===210)&&(vr.skip=!0,Vt(vr,xK(kt.left,Ol(kt.right,dn),dn,kt.right.kind===110))),vr)}function v(kt,vr,dn){if(!vr.skip)return Be(vr,kt)}function D(kt,vr,dn){if(!vr.skip){let vn=qe(vr);pe.assertIsDefined(vn),He(vr,vn),Vt(vr,void 0);let ii=kt.kind;if(AAe(ii)){let Yi=dn.parent;for(;Yi.kind===218||Nne(Yi);)Yi=Yi.parent;(ii===56||Z3(Yi))&&y8t(dn.left,vn,Z3(Yi)?Yi.thenStatement:void 0),Rne(ii)&&b8t(vn,dn.left)}}}function P(kt,vr,dn){if(!vr.skip)return Be(vr,kt)}function Y(kt,vr){let dn;if(vr.skip)dn=qe(vr);else{let vn=Oe(vr);pe.assertIsDefined(vn);let ii=qe(vr);pe.assertIsDefined(ii),dn=b_n(kt.left,kt.operatorToken,kt.right,vn,ii,vr.checkMode,kt)}return vr.skip=!1,He(vr,void 0),Vt(vr,void 0),vr.stackIndex--,dn}function oe(kt,vr,dn){return Vt(kt,vr),kt}function Be(kt,vr){if(fo(vr))return vr;Vt(kt,Ol(vr,kt.checkMode))}function Oe(kt){return kt.typeStack[kt.stackIndex]}function He(kt,vr){kt.typeStack[kt.stackIndex]=vr}function qe(kt){return kt.typeStack[kt.stackIndex+1]}function Vt(kt,vr){kt.typeStack[kt.stackIndex+1]=vr}}function m4s(u){if(u.operatorToken.kind===61){if(fo(u.parent)){let{left:m,operatorToken:v}=u.parent;fo(m)&&v.kind===57&&os(m,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(v.kind))}else if(fo(u.left)){let{operatorToken:m}=u.left;(m.kind===57||m.kind===56)&&os(u.left,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(m.kind),Vi(61))}else if(fo(u.right)){let{operatorToken:m}=u.right;m.kind===56&&os(u.right,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,Vi(61),Vi(m.kind))}C4s(u),_4s(u)}}function C4s(u){let m=HI(u.left,63),v=mOe(m);v!==3&&(v===1?Sr(m,Z.This_expression_is_always_nullish):Sr(m,Z.Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish))}function _4s(u){let m=HI(u.right,63),v=mOe(m);y4s(u)||(v===1?Sr(m,Z.This_expression_is_always_nullish):v===2&&Sr(m,Z.This_expression_is_never_nullish))}function y4s(u){return!fo(u.parent)||u.parent.operatorToken.kind!==61}function mOe(u){switch(u=HI(u),u.kind){case 224:case 214:case 216:case 213:case 237:case 215:case 212:case 230:case 110:return 3;case 227:switch(u.operatorToken.kind){case 64:case 61:case 78:case 57:case 76:case 56:case 77:return 3;case 28:return mOe(u.right)}return 2;case 228:return mOe(u.whenTrue)|mOe(u.whenFalse);case 106:return 1;case 80:return L0(u)===dt?1:3}return 2}function b4s(u,m,v,D,P){let Y=m.kind;if(Y===64&&(u.kind===211||u.kind===210))return xK(u,Ol(v,D),D,v.kind===110);let oe;Rne(Y)?oe=sSe(u,D):oe=Ol(u,D);let Be=Ol(v,D);return b_n(u,m,v,oe,Be,D,P)}function b_n(u,m,v,D,P,Y,oe){let Be=m.kind;switch(Be){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(D===Vn||P===Vn)return Vn;D=HN(D,u),P=HN(P,v);let Ji;if(D.flags&528&&P.flags&528&&(Ji=kt(m.kind))!==void 0)return Sr(oe||m,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,Vi(m.kind),Vi(Ji)),ri;{let Ka=dat(u,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),yl=dat(v,P,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ka;if(V_(D,3)&&V_(P,3)||!(ah(D,2112)||ah(P,2112)))ka=ri;else if(Oe(D,P)){switch(Be){case 50:case 73:ii();break;case 43:case 68:Ze<3&&Sr(oe,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ka=ao}else ii(Oe),ka=nn;if(Ka&&yl)switch(vr(ka),Be){case 48:case 71:case 49:case 72:case 50:case 73:let Kc=ur(v);typeof Kc.value=="number"&&Math.abs(Kc.value)>=32&&Hw(LF(gv(v.parent.parent)),oe||m,Z.This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2,xp(u),Vi(Be),Kc.value%32);break;default:break}return ka}case 40:case 65:if(D===Vn||P===Vn)return Vn;!V_(D,402653316)&&!V_(P,402653316)&&(D=HN(D,u),P=HN(P,v));let Mi;return V_(D,296,!0)&&V_(P,296,!0)?Mi=ri:V_(D,2112,!0)&&V_(P,2112,!0)?Mi=ao:V_(D,402653316,!0)||V_(P,402653316,!0)?Mi=$r:(Xo(D)||Xo(P))&&(Mi=uo(D)||uo(P)?nn:hr),Mi&&!Vt(Be)?Mi:Mi?(Be===65&&vr(Mi),Mi):(ii((yl,ka)=>V_(yl,402655727)&&V_(ka,402655727)),hr);case 30:case 32:case 33:case 34:return Vt(Be)&&(D=ZUt(HN(D,u)),P=ZUt(HN(P,v)),vn((Ka,yl)=>{if(Xo(Ka)||Xo(yl))return!0;let ka=dg(Ka,gg),Kc=dg(yl,gg);return ka&&Kc||!ka&&!Kc&&xWe(Ka,yl)})),Mn;case 35:case 36:case 37:case 38:if(!(Y&&Y&64)){if((bre(u)||bre(v))&&(!wo(u)||Be===37||Be===38)){let Ka=Be===35||Be===37;Sr(oe,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,Ka?"false":"true")}js(oe,Be,u,v),vn((Ka,yl)=>l8t(Ka,yl)||l8t(yl,Ka))}return Mn;case 104:return g4s(u,v,D,P,Y);case 103:return d4s(u,v,D,P);case 56:case 77:{let Ka=hR(D,4194304)?Ha([QMs(ot?D:uZ(P)),P]):D;return Be===77&&vr(P),Ka}case 57:case 76:{let Ka=hR(D,8388608)?Ha([gZ(Yhn(D)),P],2):D;return Be===76&&vr(P),Ka}case 61:case 78:{let Ka=hR(D,262144)?Ha([gZ(D),P],2):D;return Be===78&&vr(P),Ka}case 64:let To=fo(u.parent)?nI(u.parent):0;return He(To,P),dn(To)?((!(P.flags&524288)||To!==2&&To!==6&&!lZ(P)&&!nKt(P)&&!(la(P)&1))&&vr(P),D):(vr(P),P);case 28:if(!Te.allowUnreachableCode&&hOe(u)&&!qe(u.parent)){let Ka=ms(u),yl=Ka.text,ka=Yu(yl,u.pos);Ka.parseDiagnostics.some(Vu=>Vu.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:ho(Vu,ka))||Sr(u,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return P;default:return pe.fail()}function Oe(Ji,Mi){return V_(Ji,2112)&&V_(Mi,2112)}function He(Ji,Mi){if(Ji===2)for(let To of S9(Mi)){let Ka=Io(To);if(Ka.symbol&&Ka.symbol.flags&32){let yl=To.escapedName,ka=An(To.valueDeclaration,yl,788968,void 0,!1);ka?.declarations&&ka.declarations.some(bU)&&(Yx(ka,Z.Duplicate_identifier_0,Bc(yl),To),Yx(To,Z.Duplicate_identifier_0,Bc(yl),ka))}}}function qe(Ji){return Ji.parent.kind===218&&mC(Ji.left)&&Ji.left.text==="0"&&(Zl(Ji.parent.parent)&&Ji.parent.parent.expression===Ji.parent||Ji.parent.parent.kind===216)&&(_p(Ji.right)||Ir(Ji.right)&&Ji.right.escapedText==="eval")}function Vt(Ji){let Mi=IOe(D,12288)?u:IOe(P,12288)?v:void 0;return Mi?(Sr(Mi,Z.The_0_operator_cannot_be_applied_to_type_symbol,Vi(Ji)),!1):!0}function kt(Ji){switch(Ji){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function vr(Ji){UD(Be)&&g(Mi);function Mi(){let To=D;if(vde(m.kind)&&u.kind===212&&(To=tat(u,void 0,!0)),K2e(u,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let Ka;if(Pt&&jo(u)&&ah(Ji,32768)){let yl=Pi(P_(u.expression),u.name.escapedText);Iot(Ji,yl)&&(Ka=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}QQ(Ji,To,u,v,Ka)}}}function dn(Ji){var Mi;switch(Ji){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let To=mS(u),Ka=FY(v);return!!Ka&&og(Ka)&&!!((Mi=To?.exports)!=null&&Mi.size);default:return!1}}function vn(Ji){return Ji(D,P)?!1:(ii(Ji),!0)}function ii(Ji){let Mi=!1,To=oe||m;if(Ji){let Vu=pZ(D),gd=pZ(P);Mi=!(Vu===D&&gd===P)&&!!(Vu&&gd)&&Ji(Vu,gd)}let Ka=D,yl=P;!Mi&&Ji&&([Ka,yl]=E4s(D,P,Ji));let[ka,Kc]=Bpe(Ka,yl);Yi(To,Mi,ka,Kc)||u9(To,Mi,Z.Operator_0_cannot_be_applied_to_types_1_and_2,Vi(m.kind),ka,Kc)}function Yi(Ji,Mi,To,Ka){switch(m.kind){case 37:case 35:case 38:case 36:return u9(Ji,Mi,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,To,Ka);default:return}}function js(Ji,Mi,To,Ka){let yl=Co(QA(To)),ka=Co(QA(Ka));if(yl||ka){let Kc=Sr(Ji,Z.This_condition_will_always_return_0,Vi(Mi===37||Mi===35?97:112));if(yl&&ka)return;let Vu=Mi===38||Mi===36?Vi(54):"",gd=yl?Ka:To,Ll=QA(gd);lg(Kc,mo(gd,Z.Did_you_mean_0,`${Vu}Number.isNaN(${Od(Ll)?oy(Ll):"..."})`))}}function Co(Ji){if(Ir(Ji)&&Ji.escapedText==="NaN"){let Mi=j3s();return!!Mi&&Mi===L0(Ji)}return!1}}function E4s(u,m,v){let D=u,P=m,Y=uZ(u),oe=uZ(m);return v(Y,oe)||(D=Y,P=oe),[D,P]}function S4s(u){g(Vt);let m=A1(u);if(!m)return hr;let v=SI(m);if(!(v&1))return hr;let D=(v&2)!==0;u.asteriskToken&&(D&&Zed8t(kt,v,void 0)));let Y=P&&R8t(P,D),oe=Y&&Y.yieldType||hr,Be=Y&&Y.nextType||hr,Oe=u.expression?Ol(u.expression):xe,He=d_n(u,Oe,Be,D);if(P&&He&&QQ(He,oe,u.expression||u,u.expression),u.asteriskToken)return v8t(D?19:17,1,Oe,u.expression)||hr;if(P)return D9(2,P,D)||hr;let qe=Jmn(2,m);return qe||(qe=hr,g(()=>{if(Rt&&!ELe(u)){let kt=Jy(u,void 0);(!kt||Xo(kt))&&Sr(u,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),qe;function Vt(){u.flags&16384||XC(u,Z.A_yield_expression_is_only_allowed_in_a_generator_body),CKt(u)&&Sr(u,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function v4s(u,m){let v=sSe(u.condition,m);y8t(u.condition,v,u.whenTrue);let D=Ol(u.whenTrue,m),P=Ol(u.whenFalse,m);return Ha([D,P],2)}function E_n(u){let m=u.parent;return gI(m)&&E_n(m)||Yg(m)&&m.argumentExpression===u}function B4s(u){let m=[u.head.text],v=[];for(let P of u.templateSpans){let Y=Ol(P.expression);IOe(Y,12288)&&Sr(P.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),m.push(P.literal.text),v.push(dg(Y,Ag)?Y:$r)}let D=u.parent.kind!==216&&ur(u).value;return D?Rq(TE(D)):qpe(u)||E_n(u)||kv(Jy(u,void 0)||cn,w4s)?hK(m,v):$r}function w4s(u){return!!(u.flags&134217856||u.flags&58982400&&ah(L_(u)||cn,402653316))}function T4s(u){return nQ(u)&&!_U(u.parent)?u.parent.parent:u}function Yse(u,m,v,D){let P=T4s(u);eOe(P,m,!1),ZYs(P,v);let Y=Ol(u,D|1|(v?2:0));v&&v.intraExpressionInferenceSites&&(v.intraExpressionInferenceSites=void 0);let oe=ah(Y,2944)&&fat(Y,Xot(m,u,void 0))?Iy(Y):Y;return LYs(),W2e(),oe}function RI(u,m){if(m)return Ol(u,m);let v=sa(u);if(!v.resolvedType){let D=Oo,P=gl;Oo=Os,gl=void 0,v.resolvedType=Ol(u,m),gl=P,Oo=D}return v.resolvedType}function S_n(u){return u=QA(u,!0),u.kind===217||u.kind===235||sQ(u)}function zpe(u,m,v){let D=one(u);if(wo(u)){let Y=QAe(u);if(Y)return jKt(D,Y,m)}let P=A8t(D)||(v?Yse(D,v,void 0,m||0):RI(D,m));if(Si(hg(u)?ai(u):u)){if(u.name.kind===207&&R9(P))return R4s(P,u.name);if(u.name.kind===208&&yA(P))return N4s(P,u.name)}return P}function R4s(u,m){let v;for(let Y of m.elements)if(Y.initializer){let oe=v_n(Y);oe&&!Gg(u,oe)&&(v=Ft(v,Y))}if(!v)return u;let D=qu();for(let Y of S9(u))D.set(Y.escapedName,Y);for(let Y of v){let oe=gA(16777220,v_n(Y));oe.links.type=gR(Y,!1,!1),D.set(oe.escapedName,oe)}let P=Hf(u.symbol,D,E,E,A0(u));return P.objectFlags=u.objectFlags,P}function v_n(u){let m=sZ(u.propertyName||u.name);return g2(m)?A2(m):void 0}function N4s(u,m){if(u.target.combinedFlags&12||B9(u)>=m.elements.length)return u;let v=m.elements,D=WQ(u).slice(),P=u.target.elementFlags.slice();for(let Y=B9(u);Yfat(u,D))}if(m.flags&58982400){let v=L_(m)||cn;return ah(v,4)&&ah(u,128)||ah(v,8)&&ah(u,256)||ah(v,64)&&ah(u,2048)||ah(v,4096)&&ah(u,8192)||fat(u,v)}return!!(m.flags&406847616&&ah(u,128)||m.flags&256&&ah(u,256)||m.flags&2048&&ah(u,2048)||m.flags&512&&ah(u,512)||m.flags&8192&&ah(u,8192))}return!1}function qpe(u){let m=u.parent;return Ed(m)&&s2(m.type)||sQ(m)&&s2(_ie(m))||KKt(u)&&pK(Jy(u,0))||(gI(m)||OI(m)||of(m))&&qpe(m)||(fm(m)||a0(m)||die(m))&&qpe(m.parent)}function $pe(u,m,v){let D=Ol(u,m,v);return qpe(u)||fye(u)?Iy(D):S_n(u)?D:LUt(D,Xot(Jy(u,void 0),u,void 0))}function w_n(u,m){return u.name.kind===168&&zw(u.name),$pe(u.initializer,m)}function T_n(u,m){q0n(u),u.name.kind===168&&zw(u.name);let v=h_n(u,m);return R_n(u,v,m)}function R_n(u,m,v){if(v&&v&10){let D=Y2e(m,0,!0),P=Y2e(m,1,!0),Y=D||P;if(Y&&Y.typeParameters){let oe=O5(u,2);if(oe){let Be=Y2e(gZ(oe),D?0:1,!1);if(Be&&!Be.typeParameters){if(v&8)return N_n(u,v),$d;let Oe=JQ(u),He=Oe.signature&&ud(Oe.signature),qe=He&&ZCn(He);if(qe&&!qe.typeParameters&&!ue(Oe.inferences,Qse)){let Vt=G4s(Oe,Y.typeParameters),kt=WJt(Y,Vt),vr=At(Oe.inferences,dn=>YUt(dn.typeParameter));if(WUt(kt,Be,(dn,vn)=>{nG(vr,dn,vn,0,!0)}),jt(vr,Qse)&&(OUt(kt,Be,(dn,vn)=>{nG(vr,dn,vn)}),!k4s(Oe.inferences,vr)))return x4s(Oe.inferences,vr),Oe.inferredTypeParameters=Nn(Oe.inferredTypeParameters,Vt),fK(kt)}return fK(LCn(Y,Be,Oe))}}}}return m}function N_n(u,m){if(m&2){let v=JQ(u);v.flags|=4}}function Qse(u){return!!(u.candidates||u.contraCandidates)}function D4s(u){return!!(u.candidates||u.contraCandidates||Ufn(u.typeParameter))}function k4s(u,m){for(let v=0;vv.symbol.escapedName===m)}function F4s(u,m){let v=m.length;for(;v>1&&m.charCodeAt(v-1)>=48&&m.charCodeAt(v-1)<=57;)v--;let D=m.slice(0,v);for(let P=1;;P++){let Y=D+P;if(!g8t(u,Y))return Y}}function D_n(u){let m=kK(u);if(m&&!m.typeParameters)return ud(m)}function Z4s(u){let m=Ol(u.expression),v=k2e(m,u.expression),D=D_n(m);return D&&Bot(D,u,v!==m)}function P_(u){let m=A8t(u);if(m)return m;if(u.flags&268435456&&gl){let P=gl[rd(u)];if(P)return P}let v=tu,D=Ol(u,64);if(tu!==v){let P=gl||(gl=[]);P[rd(u)]=D,bLe(u,u.flags|268435456)}return D}function A8t(u){let m=QA(u,!0);if(sQ(m)){let v=_ie(m);if(!s2(v))return nl(v)}if(m=QA(u),I1(m)){let v=A8t(m.expression);return v?Zq(v):void 0}if(Zl(m)&&m.expression.kind!==108&&!ay(m,!0)&&!zCn(m)&&!Up(m))return _B(m)?Z4s(m):D_n(Ose(m.expression));if(Ed(m)&&!s2(m.type))return nl(m.type);if(wL(u)||hY(u))return Ol(u)}function COe(u){let m=sa(u);if(m.contextFreeType)return m.contextFreeType;eOe(u,hr,!1);let v=m.contextFreeType=Ol(u,4);return W2e(),v}function Ol(u,m,v){var D,P;(D=ki)==null||D.push(ki.Phase.Check,"checkExpression",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let Y=ge;ge=u,M=0;let oe=P4s(u,m,v),Be=R_n(u,oe,m);return pat(Be)&&L4s(u,Be),ge=Y,(P=ki)==null||P.pop(),Be}function L4s(u,m){var v;let D=u.parent.kind===212&&u.parent.expression===u||u.parent.kind===213&&u.parent.expression===u||(u.kind===80||u.kind===167)&&kat(u)||u.parent.kind===187&&u.parent.exprName===u||u.parent.kind===282;if(D||Sr(u,Z.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query),Te.isolatedModules||Te.verbatimModuleSyntax&&D&&!An(u,B0(u),2097152,void 0,!1,!0)){pe.assert(!!(m.symbol.flags&128));let P=m.symbol.valueDeclaration,Y=(v=s.getRedirectFromOutput(ms(P).resolvedPath))==null?void 0:v.resolvedRef;P.flags&33554432&&!JL(u)&&(!Y||!Fb(Y.commandLine.options))&&Sr(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,zt)}}function V4s(u,m){if(Xm(u)){if(Zbe(u))return jKt(u.expression,Lbe(u),m);if(sQ(u))return t_n(u,m)}return Ol(u.expression,m)}function P4s(u,m,v){let D=u.kind;if(d)switch(D){case 232:case 219:case 220:d.throwIfCancellationRequested()}switch(D){case 80:return sYs(u,m);case 81:return NQs(u);case 110:return qWe(u);case 108:return Hot(u);case 106:return Ot;case 15:case 11:return KUt(u)?Gi:Rq(TE(u.text));case 9:return iyn(u),Rq(fR(+u.text));case 10:return O8s(u),Rq(RWe({negative:!1,base10Value:nz(u.text)}));case 112:return tn;case 97:return Bs;case 229:return B4s(u);case 14:return eQs(u);case 210:return iCn(u,m,v);case 211:return cQs(u,m);case 212:return tat(u,m);case 167:return yCn(u,m);case 213:return QQs(u,m);case 214:if(Up(u))return EXs(u);case 215:return bXs(u,m);case 216:return SXs(u);case 218:return V4s(u,m);case 232:return RUs(u);case 219:case 220:return h_n(u,m);case 222:return o4s(u);case 217:case 235:return vXs(u,m);case 236:return TXs(u);case 234:return n_n(u);case 239:return RXs(u);case 237:return NXs(u);case 221:return i4s(u);case 223:return a4s(u);case 224:return c4s(u);case 225:return l4s(u);case 226:return u4s(u);case 227:return Gt(u,m);case 228:return v4s(u,m);case 231:return tQs(u,m);case 233:return xe;case 230:return S4s(u);case 238:return rQs(u);case 295:return EQs(u,m);case 285:return AQs(u,m);case 286:return uQs(u,m);case 289:return dQs(u);case 293:return fQs(u,m);case 287:pe.fail("Shouldn't ever directly check a JsxOpeningElement")}return nn}function k_n(u){sG(u),u.expression&&XC(u.expression,Z.Type_expected),rA(u.constraint),rA(u.default);let m=R5(Uo(u));L_(m),t3s(m)||Sr(u.default,Z.Type_parameter_0_has_a_circular_default,no(m));let v=Xy(m),D=VQ(m);v&&D&&p0(D,T1(_l(v,HQ(m,D)),D),u.default,Z.Type_0_does_not_satisfy_the_constraint_1),Lq(u),g(()=>nfe(u.name,Z.Type_parameter_name_cannot_be_0))}function W4s(u){var m,v;if(g_(u.parent)||xa(u.parent)||FB(u.parent)){let D=R5(Uo(u)),P=kUt(D)&24576;if(P){let Y=Uo(u.parent);if(FB(u.parent)&&!(la(Fp(Y))&48))Sr(u,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(P===8192||P===16384){(m=ki)==null||m.push(ki.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:QC(Fp(Y)),id:QC(D)});let oe=ZWe(Y,D,P===16384?ln:mr),Be=ZWe(Y,D,P===16384?mr:ln),Oe=D;Ie=D,p0(oe,Be,u,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ie=Oe,(v=ki)==null||v.pop()}}}}function x_n(u){sG(u),vOe(u);let m=A1(u);Ga(u,31)&&(Te.erasableSyntaxOnly&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),m.kind===177&&u1(m.body)||Sr(u,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),m.kind===177&&Ir(u.name)&&u.name.escapedText==="constructor"&&Sr(u.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!u.initializer&&RB(u)&&Nu(u.name)&&m.body&&Sr(u,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),u.name&&Ir(u.name)&&(u.name.escapedText==="this"||u.name.escapedText==="new")&&(m.parameters.indexOf(u)!==0&&Sr(u,Z.A_0_parameter_must_be_the_first_parameter,u.name.escapedText),(m.kind===177||m.kind===181||m.kind===186)&&Sr(u,Z.A_constructor_cannot_have_a_this_parameter),m.kind===220&&Sr(u,Z.An_arrow_function_cannot_have_a_this_parameter),(m.kind===178||m.kind===179)&&Sr(u,Z.get_and_set_accessors_cannot_declare_this_parameters)),u.dotDotDotToken&&!Nu(u.name)&&!dg(JB(Io(u.symbol)),E1)&&Sr(u,Z.A_rest_parameter_must_be_of_an_array_type)}function O4s(u){let m=M4s(u);if(!m){Sr(u,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let v=yS(m),D=Tv(v);if(!D)return;rA(u.type);let{parameterName:P}=u;if(D.kind!==0&&D.kind!==2){if(D.parameterIndex>=0){if(D0(v)&&D.parameterIndex===v.parameters.length-1)Sr(P,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let Y=()=>wu(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);p0(D.type,Io(v.parameters[D.parameterIndex]),u.type,void 0,Y)}}else if(P){let Y=!1;for(let{name:oe}of m.parameters)if(Nu(oe)&&G_n(oe,P,D.parameterName)){Y=!0;break}Y||Sr(u.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}}function M4s(u){switch(u.parent.kind){case 220:case 180:case 263:case 219:case 185:case 175:case 174:let m=u.parent;if(u===m.type)return m}}function G_n(u,m,v){for(let D of u.elements){if(yp(D))continue;let P=D.name;if(P.kind===80&&P.escapedText===v)return Sr(m,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,v),!0;if((P.kind===208||P.kind===207)&&G_n(P,m,v))return!0}}function z2e(u){u.kind===182?I8s(u):(u.kind===185||u.kind===263||u.kind===186||u.kind===180||u.kind===177||u.kind===181)&&Vat(u);let m=SI(u);m&4||((m&3)===3&&Ze0&&v.declarations[0]!==u)return}let m=Kst(Uo(u));if(m?.declarations){let v=new Map;for(let D of m.declarations)w0(D)&&D.parameters.length===1&&D.parameters[0].type&&TK(nl(D.parameters[0].type),P=>{let Y=v.get(QC(P));Y?Y.declarations.push(D):v.set(QC(P),{type:P,declarations:[D]})});v.forEach(D=>{if(D.declarations.length>1)for(let P of D.declarations)Sr(P,Z.Duplicate_index_signature_for_type_0,no(D.type))})}}function Z_n(u){!sG(u)&&!V8s(u)&&Pat(u.name),vOe(u),Iat(u),Ga(u,64)&&u.kind===173&&u.initializer&&Sr(u,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Wd(u.name))}function Q4s(u){return p(u.name)&&Sr(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Z_n(u)}function X4s(u){q0n(u)||Pat(u.name),uu(u)&&u.asteriskToken&&Ir(u.name)&&Vo(u.name)==="constructor"&&Sr(u.name,Z.Class_constructor_may_not_be_a_generator),U_n(u),Ga(u,64)&&u.kind===175&&u.body&&Sr(u,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Wd(u.name)),p(u.name)&&!hC(u)&&Sr(u,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Iat(u)}function Iat(u){if(p(u.name)&&(ZeGa(He,31))))if(!K4s(Be,u.body))Sr(Be,Z.A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers);else{let He;for(let qe of u.body.statements){if(VC(qe)&&Dy(HI(qe.expression))){He=qe;break}if(L_n(qe))break}He===void 0&&Sr(u,Z.A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else oe||Sr(u,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function K4s(u,m){let v=gv(u.parent);return VC(v)&&v.parent===m}function L_n(u){return u.kind===108||u.kind===110?!0:sZe(u)?!1:!!Lu(u,L_n)}function V_n(u){Ir(u.name)&&Vo(u.name)==="constructor"&&xa(u.parent)&&Sr(u.name,Z.Class_constructor_may_not_be_an_accessor),g(m),rA(u.body),Iat(u);function m(){if(!Vat(u)&&!v8s(u)&&Pat(u.name),bOe(u),z2e(u),u.kind===178&&!(u.flags&33554432)&&u1(u.body)&&u.flags&512&&(u.flags&1024||Sr(u.name,Z.A_get_accessor_must_return_a_value)),u.name.kind===168&&zw(u.name),Tse(u)){let D=Uo(u),P=Cp(D,178),Y=Cp(D,179);if(P&&Y&&!(Pq(P)&1)){sa(P).flags|=1;let oe=o_(P),Be=o_(Y);(oe&64)!==(Be&64)&&(Sr(P.name,Z.Accessors_must_both_be_abstract_or_non_abstract),Sr(Y.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(oe&4&&!(Be&6)||oe&2&&!(Be&2))&&(Sr(P.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),Sr(Y.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let v=Dpe(Uo(u));u.kind===178&&s8t(u,v)}}function j4s(u){bOe(u)}function z4s(u,m,v){return u.typeArguments&&v{let D=f8t(u);D&&P_n(u,D)});let v=sa(u).resolvedSymbol;v&&jt(v.declarations,D=>KY(D)&&!!(D.flags&536870912))&&YB(uOe(u),v.declarations,v.escapedName)}}function $4s(u){let m=Gs(u.parent,s7);if(!m)return;let v=f8t(m);if(!v)return;let D=Xy(v[m.typeArguments.indexOf(u)]);return D&&_l(D,N1(v,hat(m,v)))}function eJs(u){CIn(u)}function tJs(u){F(u.members,rA),g(m);function m(){let v=lhn(u);Bat(v,v.symbol),p8t(u),F_n(u)}}function rJs(u){rA(u.elementType)}function nJs(u){let m=!1,v=!1;for(let D of u.elements){let P=qJt(D);if(P&8){let Y=nl(D.type);if(!T9(Y)){Sr(D,Z.A_rest_element_type_must_be_an_array_type);break}(Nv(Y)||yA(Y)&&Y.target.combinedFlags&4)&&(P|=4)}if(P&4){if(v){os(D,Z.A_rest_element_cannot_follow_another_rest_element);break}v=!0}else if(P&2){if(v){os(D,Z.An_optional_element_cannot_follow_a_rest_element);break}m=!0}else if(P&1&&m){os(D,Z.A_required_element_cannot_follow_an_optional_element);break}}F(u.elements,rA),nl(u)}function iJs(u){F(u.types,rA),nl(u)}function O_n(u,m){if(!(u.flags&8388608))return u;let v=u.objectType,D=u.indexType,P=Yb(v)&&I2e(v)===2?JIn(v,0):ON(v,0),Y=!!$x(v,ri);if(RE(D,oe=>dg(oe,P)||Y&&Sq(oe,ri)))return m.kind===213&&bF(m)&&la(v)&32&&fk(v)&1&&Sr(m,Z.Index_signature_in_type_0_only_permits_reading,no(v)),u;if(CK(v)){let oe=oot(D,m);if(oe){let Be=TK(fy(v),Oe=>Gg(Oe,oe));if(Be&&u2(Be)&6)return Sr(m,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Bc(oe)),nn}}return Sr(m,Z.Type_0_cannot_be_used_to_index_type_1,no(D),no(v)),nn}function sJs(u){rA(u.objectType),rA(u.indexType),O_n(nhn(u),u)}function oJs(u){aJs(u),rA(u.typeParameter),rA(u.nameType),rA(u.type),u.type||P5(u,hr);let m=uUt(u),v=E9(m);if(v)p0(v,mc,u.nameType);else{let D=_S(m);p0(D,mc,n3(u.typeParameter))}}function aJs(u){var m;if((m=u.members)!=null&&m.length)return os(u.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function cJs(u){hUt(u)}function lJs(u){w8s(u),rA(u.type)}function uJs(u){Lu(u,rA)}function gJs(u){ji(u,v=>v.parent&&v.parent.kind===195&&v.parent.extendsType===v)||os(u,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),rA(u.typeParameter);let m=Uo(u.typeParameter);if(m.declarations&&m.declarations.length>1){let v=fa(m);if(!v.typeParametersChecked){v.typeParametersChecked=!0;let D=R5(m),P=dge(m,169);if(!d0n(P,[D],Y=>[Y])){let Y=kl(m);for(let oe of P)Sr(oe.name,Z.All_declarations_of_0_must_have_identical_constraints,Y)}}}_W(u)}function AJs(u){for(let m of u.templateSpans){rA(m.type);let v=nl(m.type);p0(v,Ag,m.type)}nl(u)}function dJs(u){rA(u.argument),u.attributes&&Gie(u.attributes,os),W_n(u)}function pJs(u){u.dotDotDotToken&&u.questionToken&&os(u,Z.A_tuple_member_cannot_be_both_optional_and_rest),u.type.kind===191&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),u.type.kind===192&&os(u.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),rA(u.type),nl(u)}function _Oe(u){return(Gb(u,2)||pC(u))&&!!(u.flags&33554432)}function q2e(u,m){let v=Oat(u);if(u.parent.kind!==265&&u.parent.kind!==264&&u.parent.kind!==232&&u.flags&33554432){let D=f7(u);D&&D.flags&128&&!(v&128)&&!(_N(u.parent)&&xh(u.parent.parent)&&vB(u.parent.parent))&&(v|=32),v|=128}return v&m}function mat(u){g(()=>fJs(u))}function fJs(u){function m(Ji,Mi){return Mi!==void 0&&Mi.parent===Ji[0].parent?Mi:Ji[0]}function v(Ji,Mi,To,Ka,yl){if((Ka^yl)!==0){let Kc=q2e(m(Ji,Mi),To);Yn(Ji,Vu=>ms(Vu).fileName).forEach(Vu=>{let gd=q2e(m(Vu,Mi),To);for(let Ll of Vu){let Ef=q2e(Ll,To)^Kc,UI=q2e(Ll,To)^gd;UI&32?Sr(Il(Ll),Z.Overload_signatures_must_all_be_exported_or_non_exported):UI&128?Sr(Il(Ll),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):Ef&6?Sr(Il(Ll)||Ll,Z.Overload_signatures_must_all_be_public_private_or_protected):Ef&64&&Sr(Il(Ll),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)}})}}function D(Ji,Mi,To,Ka){if(To!==Ka){let yl=VY(m(Ji,Mi));F(Ji,ka=>{VY(ka)!==yl&&Sr(Il(ka),Z.Overload_signatures_must_all_be_optional_or_required)})}}let P=230,Y=0,oe=P,Be=!1,Oe=!0,He=!1,qe,Vt,kt,vr=u.declarations,dn=(u.flags&16384)!==0;function vn(Ji){if(Ji.name&&sf(Ji.name))return;let Mi=!1,To=Lu(Ji.parent,yl=>{if(Mi)return yl;Mi=yl===Ji});if(To&&To.pos===Ji.end&&To.kind===Ji.kind){let yl=To.name||To,ka=To.name;if(Ji.name&&ka&&(p(Ji.name)&&p(ka)&&Ji.name.escapedText===ka.escapedText||Un(Ji.name)&&Un(ka)&&rG(zw(Ji.name),zw(ka))||Tw(Ji.name)&&Tw(ka)&&qJ(Ji.name)===qJ(ka))){if((Ji.kind===175||Ji.kind===174)&&cg(Ji)!==cg(To)){let Vu=cg(Ji)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;Sr(yl,Vu)}return}if(u1(To.body)){Sr(yl,Z.Function_implementation_name_must_be_0,Wd(Ji.name));return}}let Ka=Ji.name||Ji;dn?Sr(Ka,Z.Constructor_implementation_is_missing):Ga(Ji,64)?Sr(Ka,Z.All_declarations_of_an_abstract_method_must_be_consecutive):Sr(Ka,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let ii=!1,Yi=!1,js=!1,Co=[];if(vr)for(let Ji of vr){let Mi=Ji,To=Mi.flags&33554432,Ka=Mi.parent&&(Mi.parent.kind===265||Mi.parent.kind===188)||To;if(Ka&&(kt=void 0),(Mi.kind===264||Mi.kind===232)&&!To&&(js=!0),Mi.kind===263||Mi.kind===175||Mi.kind===174||Mi.kind===177){Co.push(Mi);let yl=q2e(Mi,P);Y|=yl,oe&=yl,Be=Be||VY(Mi),Oe=Oe&&VY(Mi);let ka=u1(Mi.body);ka&&qe?dn?Yi=!0:ii=!0:kt?.parent===Mi.parent&&kt.end!==Mi.pos&&vn(kt),ka?qe||(qe=Mi):He=!0,kt=Mi,Ka||(Vt=Mi)}wo(Ji)&&bu(Ji)&&Ji.jsDoc&&(He=B(Bye(Ji))>0)}if(Yi&&F(Co,Ji=>{Sr(Ji,Z.Multiple_constructor_implementations_are_not_allowed)}),ii&&F(Co,Ji=>{Sr(Il(Ji)||Ji,Z.Duplicate_function_implementation)}),js&&!dn&&u.flags&16&&vr){let Ji=Me(vr,Mi=>Mi.kind===264).map(Mi=>mo(Mi,Z.Consider_adding_a_declare_modifier_to_this_class));F(vr,Mi=>{let To=Mi.kind===264?Z.Class_declaration_cannot_implement_overload_list_for_0:Mi.kind===263?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;To&&lg(Sr(Il(Mi)||Mi,To,nf(u)),...Ji)})}if(Vt&&!Vt.body&&!Ga(Vt,64)&&!Vt.questionToken&&vn(Vt),He&&(vr&&(v(vr,qe,P,Y,oe),D(vr,qe,Be,Oe)),qe)){let Ji=PQ(u),Mi=yS(qe);for(let To of Ji)if(!hMs(Mi,To)){let Ka=To.declaration&&qL(To.declaration)?To.declaration.parent.tagName:To.declaration;lg(Sr(Ka,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),mo(qe,Z.The_implementation_signature_is_declared_here));break}}}function $2e(u){g(()=>IJs(u))}function IJs(u){let m=u.localSymbol;if(!m&&(m=Uo(u),!m.exportSymbol)||Cp(m,u.kind)!==u)return;let v=0,D=0,P=0;for(let He of m.declarations){let qe=Oe(He),Vt=q2e(He,2080);Vt&32?Vt&2048?P|=qe:v|=qe:D|=qe}let Y=v|D,oe=v&D,Be=P&Y;if(oe||Be)for(let He of m.declarations){let qe=Oe(He),Vt=Il(He);qe&Be?Sr(Vt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Wd(Vt)):qe&oe&&Sr(Vt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Wd(Vt))}function Oe(He){let qe=He;switch(qe.kind){case 265:case 266:case 347:case 339:case 341:return 2;case 268:return s_(qe)||PF(qe)!==0?5:4;case 264:case 267:case 307:return 3;case 308:return 7;case 278:case 227:let Vt=qe,kt=Cf(Vt)?Vt.expression:Vt.right;if(!Od(kt))return 1;qe=kt;case 272:case 275:case 274:let vr=0,dn=YC(Uo(qe));return F(dn.declarations,vn=>{vr|=Oe(vn)}),vr;case 261:case 209:case 263:case 277:case 80:return 1;case 174:case 172:return 2;default:return pe.failBadSyntaxKind(qe)}}}function efe(u,m,v,...D){let P=eSe(u,m);return P&&Zq(P,m,v,...D)}function eSe(u,m,v){if(Xo(u))return;let D=u;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(w1(u,EWe(!1)))return D.promisedTypeOfPromise=lf(u)[0];if(j2e(WN(u),402915324))return;let P=Pi(u,"then");if(Xo(P))return;let Y=P?tg(P,0):E;if(Y.length===0){m&&Sr(m,Z.A_promise_must_have_a_then_method);return}let oe,Be;for(let qe of Y){let Vt=k5(qe);Vt&&Vt!==es&&!MN(u,Vt,ck)?oe=Vt:Be=Ft(Be,qe)}if(!Be){pe.assertIsDefined(oe),v&&(v.value=oe),m&&Sr(m,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,no(u),no(oe));return}let Oe=Dv(Ha(At(Be,e8t)),2097152);if(Xo(Oe))return;let He=tg(Oe,0);if(He.length===0){m&&Sr(m,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=Ha(At(He,e8t),2)}function yOe(u,m,v,D,...P){return(m?Zq(u,v,D,...P):pZ(u,v,D,...P))||nn}function M_n(u){if(j2e(WN(u),402915324))return!1;let m=Pi(u,"then");return!!m&&tg(Dv(m,2097152),0).length>0}function Cat(u){var m;if(u.flags&16777216){let v=zJt(!1);return!!v&&u.aliasSymbol===v&&((m=u.aliasTypeArguments)==null?void 0:m.length)===1}return!1}function tfe(u){return u.flags&1048576?Yf(u,tfe):Cat(u)?u.aliasTypeArguments[0]:u}function H_n(u){if(Xo(u)||Cat(u))return!1;if(CK(u)){let m=L_(u);if(m?m.flags&3||lZ(m)||kv(m,M_n):ah(u,8650752))return!0}return!1}function hJs(u){let m=zJt(!0);if(m)return kse(m,[tfe(u)])}function mJs(u){return H_n(u)?hJs(u)??u:(pe.assert(Cat(u)||eSe(u)===void 0,"type provided should not be a non-generic 'promise'-like."),u)}function Zq(u,m,v,...D){let P=pZ(u,m,v,...D);return P&&mJs(P)}function pZ(u,m,v,...D){if(Xo(u)||Cat(u))return u;let P=u;if(P.awaitedTypeOfType)return P.awaitedTypeOfType;if(u.flags&1048576){if(zP.lastIndexOf(u.id)>=0){m&&Sr(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Be=m?He=>pZ(He,m,v,...D):pZ;zP.push(u.id);let Oe=Yf(u,Be);return zP.pop(),P.awaitedTypeOfType=Oe}if(H_n(u))return P.awaitedTypeOfType=u;let Y={value:void 0},oe=eSe(u,void 0,Y);if(oe){if(u.id===oe.id||zP.lastIndexOf(oe.id)>=0){m&&Sr(m,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}zP.push(u.id);let Be=pZ(oe,m,v,...D);return zP.pop(),Be?P.awaitedTypeOfType=Be:void 0}if(M_n(u)){if(m){pe.assertIsDefined(v);let Be;Y.value&&(Be=wu(Be,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,no(u),no(Y.value))),Be=wu(Be,v,...D),PA.add(Bw(ms(m),m,Be))}return}return P.awaitedTypeOfType=u}function CJs(u,m,v){let D=nl(m);if(Ze>=2){if(uo(D))return;let Y=EWe(!0);if(Y!==oi&&!w1(D,Y)){P(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,m,v,no(pZ(D)||es));return}}else{if(xq(u,5),uo(D))return;let Y=ene(m);if(Y===void 0){P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,no(D));return}let oe=TI(Y,111551,!0),Be=oe?Io(oe):nn;if(uo(Be)){Y.kind===80&&Y.escapedText==="Promise"&&vs(D)===EWe(!1)?Sr(v,Z.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,oy(Y));return}let Oe=w3s(!0);if(Oe===Xg){P(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,m,v,oy(Y));return}let He=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!p0(Be,Oe,v,He,()=>m===v?void 0:wu(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Vt=Y&&B0(Y),kt=f_(u.locals,Vt.escapedText,111551);if(kt){Sr(kt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,Vo(Vt),oy(Y));return}}yOe(D,!1,u,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function P(Y,oe,Be,Oe){if(oe===Be)Sr(Be,Y,Oe);else{let He=Sr(Be,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);lg(He,mo(oe,Y,Oe))}}}function _Js(u){let m=ms(u);if(!bW(m)){let v=u.expression;if(gI(v))return!1;let D=!0,P;for(;;){if(l_(v)||hv(v)){v=v.expression;continue}if(Zl(v)){D||(P=v),v.questionDotToken&&(P=v.questionDotToken),v=v.expression,D=!1;continue}if(jo(v)){v.questionDotToken&&(P=v.questionDotToken),v=v.expression,D=!1;continue}Ir(v)||(P=v);break}if(P)return lg(Sr(u.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),mo(P,Z.Invalid_syntax_in_decorator)),!0}return!1}function yJs(u){_Js(u);let m=Hse(u);uat(m,u);let v=ud(m);if(v.flags&1)return;let D=n8t(u);if(!D?.resolvedReturnType)return;let P,Y=D.resolvedReturnType;switch(u.parent.kind){case 264:case 232:P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 173:if(!Ue){P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 170:P=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 175:case 178:case 179:P=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return pe.failBadSyntaxKind(u.parent)}p0(v,Y,u.expression,P)}function tSe(u,m,v,D,P,Y=v.length,oe=0){let Be=me.createFunctionTypeNode(void 0,E,me.createKeywordTypeNode(133));return PN(Be,u,m,v,D,P,Y,oe)}function h8t(u,m,v,D,P,Y,oe){let Be=tSe(u,m,v,D,P,Y,oe);return fK(Be)}function Y_n(u){return h8t(void 0,void 0,E,u)}function Q_n(u){let m=IS("value",u);return h8t(void 0,void 0,[m],es)}function m8t(u){if(u)switch(u.kind){case 194:case 193:return X_n(u.types);case 195:return X_n([u.trueType,u.falseType]);case 197:case 203:return m8t(u.type);case 184:return u.typeName}}function X_n(u){let m;for(let v of u){for(;v.kind===197||v.kind===203;)v=v.type;if(v.kind===146||!ot&&(v.kind===202&&v.literal.kind===106||v.kind===157))continue;let D=m8t(v);if(!D)return;if(m){if(!Ir(m)||!Ir(D)||m.escapedText!==D.escapedText)return}else m=D}return m}function _at(u){let m=kh(u);return EB(u)?pye(m):m}function bOe(u){if(!oQ(u)||!p1(u)||!u.modifiers||!OJ(Ue,u,u.parent,u.parent.parent))return;let m=de(u.modifiers,So);if(m){Ue?(eC(m,8),u.kind===170&&eC(m,32)):Ze1)for(let D=1;D0),v.length>1&&Sr(v[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=J_n(u.class.expression),P=OL(m);if(P){let Y=J_n(P.expression);Y&&D.escapedText!==Y.escapedText&&Sr(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,Vo(u.tagName),Vo(D),Vo(Y))}}function FJs(u){let m=bP(u);m&&pC(m)&&Sr(u,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function J_n(u){switch(u.kind){case 80:return u;case 212:return u.name;default:return}}function U_n(u){var m;bOe(u),z2e(u);let v=SI(u);if(u.name&&u.name.kind===168&&zw(u.name),Tse(u)){let Y=Uo(u),oe=u.localSymbol||Y,Be=(m=oe.declarations)==null?void 0:m.find(Oe=>Oe.kind===u.kind&&!(Oe.flags&524288));u===Be&&mat(oe),Y.parent&&mat(Y)}let D=u.kind===174?void 0:u.body;if(rA(D),s8t(u,Nse(u)),g(P),wo(u)){let Y=ov(u);Y&&Y.typeExpression&&!vKt(nl(Y.typeExpression),u)&&Sr(Y.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function P(){xb(u)||(sf(D)&&!_Oe(u)&&P5(u,hr),v&1&&u1(D)&&ud(yS(u)))}}function _W(u){g(m);function m(){let v=ms(u),D=Qs.get(v.path);D||(D=[],Qs.set(v.path,D)),D.push(u)}}function K_n(u,m){for(let v of u)switch(v.kind){case 264:case 232:ZJs(v,m),C8t(v,m);break;case 308:case 268:case 242:case 270:case 249:case 250:case 251:q_n(v,m);break;case 177:case 219:case 263:case 220:case 175:case 178:case 179:v.body&&q_n(v,m),C8t(v,m);break;case 174:case 180:case 181:case 185:case 186:case 266:case 265:C8t(v,m);break;case 196:LJs(v,m);break;default:pe.assertNever(v,"Node should not have been registered for unused identifiers check")}}function j_n(u,m,v){let D=Il(u)||u,P=KY(u)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;v(u,0,mo(D,P,m))}function rSe(u){return Ir(u)&&Vo(u).charCodeAt(0)===95}function ZJs(u,m){for(let v of u.members)switch(v.kind){case 175:case 173:case 178:case 179:if(v.kind===179&&v.symbol.flags&32768)break;let D=Uo(v);!D.isReferenced&&(Gb(v,2)||rh(v)&&p(v.name))&&!(v.flags&33554432)&&m(v,0,mo(v.name,Z._0_is_declared_but_its_value_is_never_read,kl(D)));break;case 177:for(let P of v.parameters)!P.symbol.isReferenced&&Ga(P,2)&&m(P,0,mo(P.name,Z.Property_0_is_declared_but_its_value_is_never_read,nf(P.symbol)));break;case 182:case 241:case 176:break;default:pe.fail("Unexpected class member")}}function LJs(u,m){let{typeParameter:v}=u;_8t(v)&&m(u,1,mo(u,Z._0_is_declared_but_its_value_is_never_read,Vo(v.name)))}function C8t(u,m){let v=Uo(u).declarations;if(!v||Ei(v)!==u)return;let D=ZD(u),P=new Set;for(let Y of D){if(!_8t(Y))continue;let oe=Vo(Y.name),{parent:Be}=Y;if(Be.kind!==196&&Be.typeParameters.every(_8t)){if(Ar(P,Be)){let Oe=ms(Be),He=ZB(Be)?Nbe(Be):Dbe(Oe,Be.typeParameters),Vt=Be.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,oe]:[Z.All_type_parameters_are_unused];m(Y,1,qh(Oe,He.pos,He.end-He.pos,...Vt))}}else m(Y,1,mo(Y,Z._0_is_declared_but_its_value_is_never_read,oe))}}function _8t(u){return!(jA(u.symbol).isReferenced&262144)&&!rSe(u.name)}function EOe(u,m,v,D){let P=String(D(m)),Y=u.get(P);Y?Y[1].push(v):u.set(P,[m,[v]])}function z_n(u){return Gs(Rw(u),Si)}function VJs(u){return hg(u)?Km(u.parent)?!!(u.propertyName&&rSe(u.name)):rSe(u.name):s_(u)||(nc(u)&&DL(u.parent.parent)||$_n(u))&&rSe(u.name)}function q_n(u,m){let v=new Map,D=new Map,P=new Map;u.locals.forEach(Y=>{if(!(Y.flags&262144?!(Y.flags&3&&!(Y.isReferenced&3)):Y.isReferenced||Y.exportSymbol)&&Y.declarations){for(let oe of Y.declarations)if(!VJs(oe))if($_n(oe))EOe(v,WJs(oe),oe,rd);else if(hg(oe)&&Km(oe.parent)){let Be=Ei(oe.parent.elements);(oe===Be||!Ei(oe.parent.elements).dotDotDotToken)&&EOe(D,oe.parent,oe,rd)}else if(nc(oe)){let Be=jQ(oe)&7,Oe=Il(oe);(Be!==4&&Be!==6||!Oe||!rSe(Oe))&&EOe(P,oe.parent,oe,rd)}else{let Be=Y.valueDeclaration&&z_n(Y.valueDeclaration),Oe=Y.valueDeclaration&&Il(Y.valueDeclaration);Be&&Oe?!Ve(Be,Be.parent)&&!SF(Be)&&!rSe(Oe)&&(hg(oe)&&p2(oe.parent)?EOe(D,oe.parent,oe,rd):m(Be,1,mo(Oe,Z._0_is_declared_but_its_value_is_never_read,nf(Y)))):j_n(oe,nf(Y),m)}}}),v.forEach(([Y,oe])=>{let Be=Y.parent;if((Y.name?1:0)+(Y.namedBindings?Y.namedBindings.kind===275?1:Y.namedBindings.elements.length:0)===oe.length)m(Be,0,oe.length===1?mo(Be,Z._0_is_declared_but_its_value_is_never_read,Vo(ma(oe).name)):mo(Be,Z.All_imports_in_import_declaration_are_unused));else for(let He of oe)j_n(He,Vo(He.name),m)}),D.forEach(([Y,oe])=>{let Be=z_n(Y.parent)?1:0;if(Y.elements.length===oe.length)oe.length===1&&Y.parent.kind===261&&Y.parent.parent.kind===262?EOe(P,Y.parent.parent,Y.parent,rd):m(Y,Be,oe.length===1?mo(Y,Z._0_is_declared_but_its_value_is_never_read,SOe(ma(oe).name)):mo(Y,Z.All_destructured_elements_are_unused));else for(let Oe of oe)m(Oe,Be,mo(Oe,Z._0_is_declared_but_its_value_is_never_read,SOe(Oe.name)))}),P.forEach(([Y,oe])=>{if(Y.declarations.length===oe.length)m(Y,0,oe.length===1?mo(ma(oe).name,Z._0_is_declared_but_its_value_is_never_read,SOe(ma(oe).name)):mo(Y.parent.kind===244?Y.parent:Y,Z.All_variables_are_unused));else for(let Be of oe)m(Be,0,mo(Be,Z._0_is_declared_but_its_value_is_never_read,SOe(Be.name)))})}function PJs(){var u;for(let m of KF)if(!((u=Uo(m))!=null&&u.isReferenced)){let v=ai(m);pe.assert(HL(v),"Only parameter declaration should be checked here");let D=mo(m.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Wd(m.name),Wd(m.propertyName));v.type||lg(D,qh(ms(v),v.end,0,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Wd(m.propertyName))),PA.add(D)}}function SOe(u){switch(u.kind){case 80:return Vo(u);case 208:case 207:return SOe(Ma(ma(u.elements),hg).name);default:return pe.assertNever(u)}}function $_n(u){return u.kind===274||u.kind===277||u.kind===275}function WJs(u){return u.kind===274?u:u.kind===275?u.parent:u.parent.parent}function yat(u){if(u.kind===242&&fZ(u),CJ(u)){let m=Yc;F(u.statements,rA),Yc=m}else F(u.statements,rA);u.locals&&_W(u)}function OJs(u){Ze>=2||!Gre(u)||u.flags&33554432||sf(u.body)||F(u.parameters,m=>{m.name&&!Nu(m.name)&&m.name.escapedText===st.escapedName&&l9("noEmit",m,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function nSe(u,m,v){if(m?.escapedText!==v||u.kind===173||u.kind===172||u.kind===175||u.kind===174||u.kind===178||u.kind===179||u.kind===304||u.flags&33554432||(Vw(u)||km(u)||uy(u))&&nN(u))return!1;let D=Rw(u);return!(Si(D)&&sf(D.parent.body))}function MJs(u){ji(u,m=>Pq(m)&4?(u.kind!==80?Sr(Il(u),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):Sr(u,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function HJs(u){ji(u,m=>Pq(m)&8?(u.kind!==80?Sr(Il(u),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):Sr(u,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function YJs(u,m){if(s.getEmitModuleFormatOfFile(ms(u))>=5||!m||!nSe(u,m,"require")&&!nSe(u,m,"exports")||xh(u)&&PF(u)!==1)return;let v=Tn(u);v.kind===308&&vl(v)&&l9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Wd(m),Wd(m))}function QJs(u,m){if(!m||Ze>=4||!nSe(u,m,"Promise")||xh(u)&&PF(u)!==1)return;let v=Tn(u);v.kind===308&&vl(v)&&v.flags&4096&&l9("noEmit",m,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Wd(m),Wd(m))}function XJs(u,m){Ze<=8&&(nSe(u,m,"WeakMap")||nSe(u,m,"WeakSet"))&&JF.push(u)}function JJs(u){let m=tS(u);Pq(m)&1048576&&(pe.assert(rh(u)&&Ir(u.name)&&typeof u.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),l9("noEmit",u,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,u.name.escapedText))}function UJs(u,m){m&&Ze>=2&&Ze<=8&&nSe(u,m,"Reflect")&&UF.push(u)}function KJs(u){let m=!1;if(vd(u)){for(let v of u.members)if(Pq(v)&2097152){m=!0;break}}else if(UA(u))Pq(u)&2097152&&(m=!0);else{let v=tS(u);v&&Pq(v)&2097152&&(m=!0)}m&&(pe.assert(rh(u)&&Ir(u.name),"The target of a Reflect collision check should be an identifier"),l9("noEmit",u,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Wd(u.name),"Reflect"))}function rfe(u,m){m&&(YJs(u,m),QJs(u,m),XJs(u,m),UJs(u,m),xa(u)?(nfe(m,Z.Class_name_cannot_be_0),u.flags&33554432||vUs(m)):V3(u)&&nfe(m,Z.Enum_name_cannot_be_0))}function jJs(u){if(jQ(u)&7||HL(u))return;let m=Uo(u);if(m.flags&1){if(!Ir(u.name))return pe.fail();let v=An(u,u.name.escapedText,3,void 0,!1);if(v&&v!==m&&v.flags&2&&TKt(v)&7){let D=ML(v.valueDeclaration,262),P=D.parent.kind===244&&D.parent.parent?D.parent.parent:void 0;if(!(P&&(P.kind===242&&bu(P.parent)||P.kind===269||P.kind===268||P.kind===308))){let oe=kl(v);Sr(u,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,oe,oe)}}}}function iSe(u){return u===En?hr:u===OC?d_:u}function vOe(u){var m;if(bOe(u),hg(u)||rA(u.type),!u.name)return;if(u.name.kind===168&&(zw(u.name),l1(u)&&u.initializer&&RI(u.initializer)),hg(u)){if(u.propertyName&&Ir(u.name)&&HL(u)&&sf(A1(u).body)){KF.push(u);return}Km(u.parent)&&u.dotDotDotToken&&Ze1&&jt(v.declarations,Y=>Y!==u&&I7(Y)&&!t0n(Y,u))&&Sr(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Wd(u.name))}else{let P=iSe(bq(u));!uo(D)&&!uo(P)&&!rG(D,P)&&!(v.flags&67108864)&&e0n(v.valueDeclaration,D,u,P),l1(u)&&u.initializer&&QQ(RI(u.initializer),P,u,u.initializer,void 0),v.valueDeclaration&&!t0n(u,v.valueDeclaration)&&Sr(u.name,Z.All_declarations_of_0_must_have_identical_modifiers,Wd(u.name))}u.kind!==173&&u.kind!==172&&($2e(u),(u.kind===261||u.kind===209)&&jJs(u),rfe(u,u.name))}function e0n(u,m,v,D){let P=Il(v),Y=v.kind===173||v.kind===172?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,oe=Wd(P),Be=Sr(P,Y,oe,no(m),no(D));u&&lg(Be,mo(u,Z._0_was_also_declared_here,oe))}function t0n(u,m){if(u.kind===170&&m.kind===261||u.kind===261&&m.kind===170)return!0;if(VY(u)!==VY(m))return!1;let v=1358;return MY(u,v)===MY(m,v)}function zJs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkVariableDeclaration",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath}),k8s(u),vOe(u),(v=ki)==null||v.pop()}function qJs(u){return R8s(u),vOe(u)}function bat(u){let m=dm(u)&7;(m===4||m===6)&&Ze=2,Be=!oe&&Te.downlevelIteration,Oe=Te.noUncheckedIndexedAccess&&!!(u&128);if(oe||Be||Y){let vr=Sat(m,u,oe?D:void 0);if(P&&vr){let dn=u&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:u&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:u&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:u&16?Z.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;dn&&p0(v,vr.nextType,D,dn)}if(vr||oe)return Oe?L2e(vr&&vr.yieldType):vr&&vr.yieldType}let He=m,qe=!1;if(u&4){if(He.flags&1048576){let vr=m.types,dn=Me(vr,vn=>!(vn.flags&402653316));dn!==vr&&(He=Ha(dn,2))}else He.flags&402653316&&(He=Wi);if(qe=He!==m,qe&&He.flags&131072)return Oe?L2e($r):$r}if(!T9(He)){if(D){let vr=!!(u&4)&&!qe,[dn,vn]=kt(vr,Be);u9(D,vn&&!!efe(He),dn,no(He))}return qe?Oe?L2e($r):$r:void 0}let Vt=D5(He,ri);if(qe&&Vt)return Vt.flags&402653316&&!Te.noUncheckedIndexedAccess?$r:Ha(Oe?[Vt,$r,Bt]:[Vt,$r],2);return u&128?L2e(Vt):Vt;function kt(vr,dn){var vn;return dn?vr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:v8t(u,0,m,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:lUs((vn=m.symbol)==null?void 0:vn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:vr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function lUs(u){switch(u){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function v8t(u,m,v,D){if(Xo(v))return;let P=Sat(v,u,D);return P&&P[vtn(m)]}function yW(u=Wi,m=Wi,v=cn){if(u.flags&67359327&&m.flags&180227&&v.flags&180227){let D=UB([u,m,v]),P=xd.get(D);return P||(P={yieldType:u,returnType:m,nextType:v},xd.set(D,P)),P}return{yieldType:u,returnType:m,nextType:v}}function r0n(u){let m,v,D;for(let P of u)if(!(P===void 0||P===Lg)){if(P===yf)return yf;m=Ft(m,P.yieldType),v=Ft(v,P.returnType),D=Ft(D,P.nextType)}return m||v||D?yW(m&&Ha(m),v&&Ha(v),D&&Kg(D)):Lg}function Eat(u,m){return u[m]}function iG(u,m,v){return u[m]=v}function Sat(u,m,v){var D,P;if(u===Vn)return rm;if(Xo(u))return yf;if(!(u.flags&1048576)){let He=v?{errors:void 0,skipLogging:!0}:void 0,qe=n0n(u,m,v,He);if(qe===Lg){if(v){let Vt=w8t(v,u,!!(m&2));He?.errors&&lg(Vt,...He.errors)}return}else if((D=He?.errors)!=null&&D.length)for(let Vt of He.errors)PA.add(Vt);return qe}let Y=m&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",oe=Eat(u,Y);if(oe)return oe===Lg?void 0:oe;let Be;for(let He of u.types){let qe=v?{errors:void 0}:void 0,Vt=n0n(He,m,v,qe);if(Vt===Lg){if(v){let kt=w8t(v,u,!!(m&2));qe?.errors&&lg(kt,...qe.errors)}iG(u,Y,Lg);return}else if((P=qe?.errors)!=null&&P.length)for(let kt of qe.errors)PA.add(kt);Be=Ft(Be,Vt)}let Oe=Be?r0n(Be):Lg;return iG(u,Y,Oe),Oe===Lg?void 0:Oe}function B8t(u,m){if(u===Lg)return Lg;if(u===yf)return yf;let{yieldType:v,returnType:D,nextType:P}=u;return m&&zJt(!0),yW(Zq(v,m)||hr,Zq(D,m)||hr,P)}function n0n(u,m,v,D){if(Xo(u))return yf;let P=!1;if(m&2){let Y=i0n(u,_h)||s0n(u,_h);if(Y)if(Y===Lg&&v)P=!0;else return m&8?B8t(Y,v):Y}if(m&1){let Y=i0n(u,Gp)||s0n(u,Gp);if(Y)if(Y===Lg&&v)P=!0;else if(m&2){if(Y!==Lg)return Y=B8t(Y,v),P?Y:iG(u,"iterationTypesOfAsyncIterable",Y)}else return Y}if(m&2){let Y=a0n(u,_h,v,D,P);if(Y!==Lg)return Y}if(m&1){let Y=a0n(u,Gp,v,D,P);if(Y!==Lg)return m&2?(Y=B8t(Y,v),P?Y:iG(u,"iterationTypesOfAsyncIterable",Y)):Y}return Lg}function i0n(u,m){return Eat(u,m.iterableCacheKey)}function s0n(u,m){if(w1(u,m.getGlobalIterableType(!1))||w1(u,m.getGlobalIteratorObjectType(!1))||w1(u,m.getGlobalIterableIteratorType(!1))||w1(u,m.getGlobalGeneratorType(!1))){let[v,D,P]=lf(u);return iG(u,m.iterableCacheKey,yW(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,P))}if(Mst(u,m.getGlobalBuiltinIteratorTypes())){let[v]=lf(u),D=jJt(),P=cn;return iG(u,m.iterableCacheKey,yW(m.resolveIterationType(v,void 0)||v,m.resolveIterationType(D,void 0)||D,P))}}function o0n(u){let m=vIn(!1),v=m&&Pi(Io(m),Ap(u));return v&&g2(v)?A2(v):`__@${u}`}function a0n(u,m,v,D,P){let Y=Gg(u,o0n(m.iteratorSymbolName)),oe=Y&&!(Y.flags&16777216)?Io(Y):void 0;if(Xo(oe))return P?yf:iG(u,m.iterableCacheKey,yf);let Be=oe?tg(oe,0):void 0,Oe=Me(Be,Vt=>_R(Vt)===0);if(!jt(Oe))return v&&jt(Be)&&p0(u,m.getGlobalIterableType(!0),v,void 0,void 0,D),P?Lg:iG(u,m.iterableCacheKey,Lg);let He=Kg(At(Oe,ud)),qe=c0n(He,m,v,D,P)??Lg;return P?qe:iG(u,m.iterableCacheKey,qe)}function w8t(u,m,v){let D=v?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,P=!!efe(m)||!v&&iEe(u.parent)&&u.parent.expression===u&&SWe(!1)!==oi&&dg(m,Wpe(SWe(!1),[hr,hr,hr]));return u9(u,P,D,no(m))}function uUs(u,m,v,D){return c0n(u,m,v,D,!1)}function c0n(u,m,v,D,P){if(Xo(u))return yf;let Y=gUs(u,m)||AUs(u,m);return Y===Lg&&v&&(Y=void 0,P=!0),Y??(Y=IUs(u,m,v,D,P)),Y===Lg?void 0:Y}function gUs(u,m){return Eat(u,m.iteratorCacheKey)}function AUs(u,m){if(w1(u,m.getGlobalIterableIteratorType(!1))||w1(u,m.getGlobalIteratorType(!1))||w1(u,m.getGlobalIteratorObjectType(!1))||w1(u,m.getGlobalGeneratorType(!1))){let[v,D,P]=lf(u);return iG(u,m.iteratorCacheKey,yW(v,D,P))}if(Mst(u,m.getGlobalBuiltinIteratorTypes())){let[v]=lf(u),D=jJt(),P=cn;return iG(u,m.iteratorCacheKey,yW(v,D,P))}}function l0n(u,m){let v=Pi(u,"done")||Bs;return dg(m===0?Bs:tn,v)}function dUs(u){return l0n(u,0)}function pUs(u){return l0n(u,1)}function fUs(u){if(Xo(u))return yf;let m=Eat(u,"iterationTypesOfIteratorResult");if(m)return m;if(w1(u,Z3s(!1))){let oe=lf(u)[0];return iG(u,"iterationTypesOfIteratorResult",yW(oe,void 0,void 0))}if(w1(u,L3s(!1))){let oe=lf(u)[0];return iG(u,"iterationTypesOfIteratorResult",yW(void 0,oe,void 0))}let v=nm(u,dUs),D=v!==Wi?Pi(v,"value"):void 0,P=nm(u,pUs),Y=P!==Wi?Pi(P,"value"):void 0;return!D&&!Y?iG(u,"iterationTypesOfIteratorResult",Lg):iG(u,"iterationTypesOfIteratorResult",yW(D,Y||es,void 0))}function T8t(u,m,v,D,P){var Y,oe,Be,Oe;let He=Gg(u,v);if(!He&&v!=="next")return;let qe=He&&!(v==="next"&&He.flags&16777216)?v==="next"?Io(He):Dv(Io(He),2097152):void 0;if(Xo(qe))return yf;let Vt=qe?tg(qe,0):E;if(Vt.length===0){if(D){let Ji=v==="next"?m.mustHaveANextMethodDiagnostic:m.mustBeAMethodDiagnostic;P?(P.errors??(P.errors=[]),P.errors.push(mo(D,Ji,v))):Sr(D,Ji,v)}return v==="next"?Lg:void 0}if(qe?.symbol&&Vt.length===1){let Ji=m.getGlobalGeneratorType(!1),Mi=m.getGlobalIteratorType(!1),To=((oe=(Y=Ji.symbol)==null?void 0:Y.members)==null?void 0:oe.get(v))===qe.symbol,Ka=!To&&((Oe=(Be=Mi.symbol)==null?void 0:Be.members)==null?void 0:Oe.get(v))===qe.symbol;if(To||Ka){let yl=To?Ji:Mi,{mapper:ka}=qe;return yW(w9(yl.typeParameters[0],ka),w9(yl.typeParameters[1],ka),v==="next"?w9(yl.typeParameters[2],ka):void 0)}}let kt,vr;for(let Ji of Vt)v!=="throw"&&jt(Ji.parameters)&&(kt=Ft(kt,CR(Ji,0))),vr=Ft(vr,ud(Ji));let dn,vn;if(v!=="throw"){let Ji=kt?Ha(kt):cn;if(v==="next")vn=Ji;else if(v==="return"){let Mi=m.resolveIterationType(Ji,D)||hr;dn=Ft(dn,Mi)}}let ii,Yi=vr?Kg(vr):Wi,js=m.resolveIterationType(Yi,D)||hr,Co=fUs(js);return Co===Lg?(D&&(P?(P.errors??(P.errors=[]),P.errors.push(mo(D,m.mustHaveAValueDiagnostic,v))):Sr(D,m.mustHaveAValueDiagnostic,v)),ii=hr,dn=Ft(dn,hr)):(ii=Co.yieldType,dn=Ft(dn,Co.returnType)),yW(ii,Ha(dn),vn)}function IUs(u,m,v,D,P){let Y=r0n([T8t(u,m,"next",v,D),T8t(u,m,"return",v,D),T8t(u,m,"throw",v,D)]);return P?Y:iG(u,m.iteratorCacheKey,Y)}function D9(u,m,v){if(Xo(m))return;let D=R8t(m,v);return D&&D[vtn(u)]}function R8t(u,m){if(Xo(u))return yf;let v=m?2:1,D=m?_h:Gp;return Sat(u,v,void 0)||uUs(u,D,void 0,void 0)}function hUs(u){fZ(u)||T8s(u)}function wOe(u,m){let v=!!(m&1),D=!!(m&2);if(v){let P=D9(1,u,D);return P?D?pZ(tfe(P)):P:nn}return D?pZ(u)||nn:u}function u0n(u,m){let v=wOe(m,SI(u));return!!(v&&(ah(v,16384)||v.flags&32769))}function mUs(u){if(fZ(u))return;let m=qre(u);if(m&&fl(m)){XC(u,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!m){XC(u,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let v=yS(m),D=ud(v);if(ot||u.expression||D.flags&131072){let P=u.expression?RI(u.expression):Bt;if(m.kind===179)u.expression&&Sr(u,Z.Setters_cannot_return_a_value);else if(m.kind===177){let Y=u.expression?RI(u.expression):Bt;u.expression&&!QQ(Y,D,u,u.expression)&&Sr(u,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class)}else if(Nse(m)){let Y=wOe(D,SI(m))??D;vat(m,Y,u,u.expression,P)}}else m.kind!==177&&Te.noImplicitReturns&&!u0n(m,D)&&Sr(u,Z.Not_all_code_paths_return_a_value)}function vat(u,m,v,D,P,Y=!1){let oe=wo(v),Be=SI(u);if(D){let kt=QA(D,oe);if(Lw(kt)){vat(u,m,v,kt.whenTrue,Ol(kt.whenTrue),!0),vat(u,m,v,kt.whenFalse,Ol(kt.whenFalse),!0);return}}let Oe=v.kind===254,He=Be&2?yOe(P,!1,v,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):P,qe=D&&oat(D);QQ(He,m,Oe&&!Y?v:qe,qe)}function CUs(u){fZ(u)||u.flags&65536&&XC(u,Z.with_statements_are_not_allowed_in_an_async_function_block),Ol(u.expression);let m=ms(u);if(!bW(m)){let v=rs(m,u.pos).start,D=u.statement.pos;M5(m,v,D-v,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function _Us(u){fZ(u);let m,v=!1,D=Ol(u.expression);F(u.caseBlock.clauses,P=>{P.kind===298&&!v&&(m===void 0?m=P:(os(P,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),v=!0)),P.kind===297&&g(Y(P)),F(P.statements,rA),Te.noFallthroughCasesInSwitch&&P.fallthroughFlowNode&&KWe(P.fallthroughFlowNode)&&Sr(P,Z.Fallthrough_case_in_switch);function Y(oe){return()=>{let Be=Ol(oe.expression);l8t(D,Be)||whn(Be,D,oe.expression,void 0)}}}),u.caseBlock.locals&&_W(u.caseBlock)}function yUs(u){fZ(u)||ji(u.parent,m=>bu(m)?"quit":m.kind===257&&m.label.escapedText===u.label.escapedText?(os(u.label,Z.Duplicate_label_0,xp(u.label)),!0):!1),rA(u.statement)}function bUs(u){fZ(u)||Ir(u.expression)&&!u.expression.escapedText&&M8s(u,Z.Line_break_not_permitted_here),u.expression&&Ol(u.expression)}function EUs(u){fZ(u),yat(u.tryBlock);let m=u.catchClause;if(m){if(m.variableDeclaration){let v=m.variableDeclaration;vOe(v);let D=kh(v);if(D){let P=nl(D);P&&!(P.flags&3)&&XC(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(v.initializer)XC(v.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let P=m.block.locals;P&&SB(m.locals,Y=>{let oe=P.get(Y);oe?.valueDeclaration&&oe.flags&2&&os(oe.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,Bc(Y))})}}yat(m.block)}u.finallyBlock&&yat(u.finallyBlock)}function Bat(u,m,v){let D=A0(u);if(D.length===0)return;for(let Y of S9(u))v&&Y.flags&4194304||g0n(u,Y,Bq(Y,8576,!0),AR(Y));let P=m.valueDeclaration;if(P&&xa(P)){for(let Y of P.members)if((!v&&!cg(Y)||v&&cg(Y))&&!Tse(Y)){let oe=Uo(Y);g0n(u,oe,P_(Y.name.expression),AR(oe))}}if(D.length>1)for(let Y of D)SUs(u,Y)}function g0n(u,m,v,D){let P=m.valueDeclaration,Y=Il(P);if(Y&&p(Y))return;let oe=LJt(u,v),Be=la(u)&2?Cp(u.symbol,265):void 0,Oe=P&&P.kind===227||Y&&Y.kind===168?P:void 0,He=$m(m)===u.symbol?P:void 0;for(let qe of oe){let Vt=qe.declaration&&$m(Uo(qe.declaration))===u.symbol?qe.declaration:void 0,kt=He||Vt||(Be&&!jt(Kw(u),vr=>!!LQ(vr,m.escapedName)&&!!D5(vr,qe.keyType))?Be:void 0);if(kt&&!dg(D,qe.type)){let vr=vQ(kt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,kl(m),no(D),no(qe.keyType),no(qe.type));Oe&&kt!==Oe&&lg(vr,mo(Oe,Z._0_is_declared_here,kl(m))),PA.add(vr)}}}function SUs(u,m){let v=m.declaration,D=LJt(u,m.keyType),P=la(u)&2?Cp(u.symbol,265):void 0,Y=v&&$m(Uo(v))===u.symbol?v:void 0;for(let oe of D){if(oe===m)continue;let Be=oe.declaration&&$m(Uo(oe.declaration))===u.symbol?oe.declaration:void 0,Oe=Y||Be||(P&&!jt(Kw(u),He=>!!$x(He,m.keyType)&&!!D5(He,oe.keyType))?P:void 0);Oe&&!dg(m.type,oe.type)&&Sr(Oe,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,no(m.keyType),no(m.type),no(oe.keyType),no(oe.type))}}function nfe(u,m){switch(u.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":Sr(u,m,u.escapedText)}}function vUs(u){Ze>=1&&u.escapedText==="Object"&&s.getEmitModuleFormatOfFile(ms(u))<5&&Sr(u,Z.Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0,jS[We])}function BUs(u){let m=Me(Sx(u),cS);if(!B(m))return;let v=wo(u),D=new Set,P=new Set;if(F(u.parameters,({name:oe},Be)=>{Ir(oe)&&D.add(oe.escapedText),Nu(oe)&&P.add(Be)}),PJt(u)){let oe=m.length-1,Be=m[oe];v&&Be&&Ir(Be.name)&&Be.typeExpression&&Be.typeExpression.type&&!D.has(Be.name.escapedText)&&!P.has(oe)&&!Nv(nl(Be.typeExpression.type))&&Sr(Be.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Vo(Be.name))}else F(m,({name:oe,isNameFirst:Be},Oe)=>{P.has(Oe)||Ir(oe)&&D.has(oe.escapedText)||(zi(oe)?v&&Sr(oe,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,oy(oe),oy(oe.left)):Be||Hw(v,oe,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Vo(oe)))})}function TOe(u){let m=!1;if(u)for(let D=0;D{D.default?(m=!0,wUs(D.default,u,P)):m&&Sr(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let Y=0;YD)return!1;for(let Oe=0;Oezh(v)&&pC(v))&&os(m,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!u.name&&!Ga(u,2048)&&XC(u,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),f0n(u),F(u.members,rA),_W(u)}function f0n(u){d8s(u),bOe(u),rfe(u,u.name),TOe(ZD(u)),$2e(u);let m=Uo(u),v=Fp(m),D=T1(v),P=Io(m);A0n(m),mat(m),H4s(u),!!(u.flags&33554432)||Y4s(u);let oe=BB(u);if(oe){F(oe.typeArguments,rA),Ze{let Vt=qe[0],kt=nZ(v),vr=fy(kt);if(xUs(vr,oe),rA(oe.expression),jt(oe.typeArguments)){F(oe.typeArguments,rA);for(let vn of Uw(vr,oe.typeArguments,oe))if(!P_n(oe,vn.typeParameters))break}let dn=T1(Vt,v.thisType);if(p0(D,dn,void 0)?p0(P,yhn(vr),u.name||u,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):m0n(u,D,dn,Z.Class_0_incorrectly_extends_base_class_1),kt.flags&8650752&&(I_(P)?tg(kt,1).some(ii=>ii.flags&4)&&!Ga(u,64)&&Sr(u.name||u,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):Sr(u.name||u,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(vr.symbol&&vr.symbol.flags&32)&&!(kt.flags&8650752)){let vn=zx(vr,oe.typeArguments,oe);F(vn,ii=>!YN(ii.declaration)&&!rG(ud(ii),Vt))&&Sr(oe.expression,Z.Base_constructors_must_all_have_the_same_return_type)}ZUs(v,Vt)})}kUs(u,v,D,P);let Be=jJ(u);if(Be)for(let He of Be)(!Od(He.expression)||GC(He.expression))&&Sr(He.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),I8t(He),g(Oe(He));g(()=>{Bat(v,m),Bat(P,m,!0),p8t(u),PUs(u)});function Oe(He){return()=>{let qe=JB(nl(He));if(!uo(qe))if(dWe(qe)){let Vt=qe.symbol&&qe.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,kt=T1(qe,v.thisType);p0(D,kt,void 0)||m0n(u,D,kt,Vt)}else Sr(He,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function kUs(u,m,v,D){let Y=BB(u)&&Kw(m),oe=Y?.length?T1(ma(Y),m.thisType):void 0,Be=nZ(m);for(let Oe of u.members)jye(Oe)||(Tc(Oe)&&F(Oe.parameters,He=>{Ve(He,Oe)&&I0n(u,D,Be,oe,m,v,He,!0)}),I0n(u,D,Be,oe,m,v,Oe,!1))}function I0n(u,m,v,D,P,Y,oe,Be,Oe=!0){let He=oe.name&&xv(oe.name)||xv(oe);return He?h0n(u,m,v,D,P,Y,Tne(oe),wP(oe),cg(oe),Be,He,Oe?oe:void 0):0}function h0n(u,m,v,D,P,Y,oe,Be,Oe,He,qe,Vt){let kt=wo(u),vr=!!(u.flags&33554432);if(oe&&qe?.valueDeclaration&&PI(qe.valueDeclaration)&&qe.valueDeclaration.name&&xfn(qe.valueDeclaration.name))return Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic:Z.This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic),2;if(D&&(oe||Te.noImplicitOverride)){let dn=Oe?m:Y,vn=Oe?v:D,ii=Gg(dn,qe.escapedName),Yi=Gg(vn,qe.escapedName),js=no(D);if(ii&&!Yi&&oe){if(Vt){let Co=BCn(nf(qe),vn);Co?Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,js,kl(Co)):Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,js)}return 2}else if(ii&&Yi?.declarations&&Te.noImplicitOverride&&!vr){let Co=jt(Yi.declarations,wP);if(oe)return 0;if(Co){if(Be&&Co)return Vt&&Sr(Vt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,js),1}else{if(Vt){let Ji=He?kt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:kt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;Sr(Vt,Ji,js)}return 1}}}else if(oe){if(Vt){let dn=no(P);Sr(Vt,kt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,dn)}return 2}return 0}function m0n(u,m,v,D){let P=!1;for(let Y of u.members){if(cg(Y))continue;let oe=Y.name&&xv(Y.name)||xv(Y);if(oe){let Be=Gg(m,oe.escapedName),Oe=Gg(v,oe.escapedName);if(Be&&Oe){let He=()=>wu(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,kl(oe),no(m),no(v));p0(Io(Be),Io(Oe),Y.name||Y,void 0,He)||(P=!0)}}}P||p0(m,v,u.name||u,D)}function xUs(u,m){let v=tg(u,1);if(v.length){let D=v[0].declaration;if(D&&Gb(D,2)){let P=AN(u.symbol);F8t(m,P)||Sr(m,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,f9(u.symbol))}}}function GUs(u,m,v){if(!m.name)return 0;let D=Uo(u),P=Fp(D),Y=T1(P),oe=Io(D),Oe=BB(u)&&Kw(P),He=Oe?.length?T1(ma(Oe),P.thisType):void 0,qe=nZ(P),Vt=m.parent?Tne(m):Ga(m,16);return h0n(u,oe,qe,He,P,Y,Vt,wP(m),cg(m),!1,v)}function Xse(u){return iI(u)&1?u.links.target:u}function FUs(u){return Me(u.declarations,m=>m.kind===264||m.kind===265)}function ZUs(u,m){var v,D,P,Y,oe;let Be=Gd(m),Oe=new Map;e:for(let He of Be){let qe=Xse(He);if(qe.flags&4194304)continue;let Vt=LQ(u,qe.escapedName);if(!Vt)continue;let kt=Xse(Vt),vr=u2(qe);if(pe.assert(!!kt,"derived should point to something, even if it is the base class' declaration."),kt===qe){let dn=AN(u.symbol);if(vr&64&&(!dn||!Ga(dn,64))){for(let Co of Kw(u)){if(Co===m)continue;let Ji=LQ(Co,qe.escapedName),Mi=Ji&&Xse(Ji);if(Mi&&Mi!==qe)continue e}let vn=no(m),ii=no(u),Yi=kl(He),js=Ft((v=Oe.get(dn))==null?void 0:v.missedProperties,Yi);Oe.set(dn,{baseTypeName:vn,typeName:ii,missedProperties:js})}}else{let dn=u2(kt);if(vr&2||dn&2)continue;let vn,ii=qe.flags&98308,Yi=kt.flags&98308;if(ii&&Yi){if((iI(qe)&6?(D=qe.declarations)!=null&&D.some(Ji=>C0n(Ji,vr)):(P=qe.declarations)!=null&&P.every(Ji=>C0n(Ji,vr)))||iI(qe)&262144||kt.valueDeclaration&&fo(kt.valueDeclaration))continue;let js=ii!==4&&Yi===4;if(js||ii===4&&Yi!==4){let Ji=js?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,Ji,kl(qe),no(m),no(u))}else if($e){let Ji=(Y=kt.declarations)==null?void 0:Y.find(Mi=>Mi.kind===173&&!Mi.initializer);if(Ji&&!(kt.flags&33554432)&&!(vr&64)&&!(dn&64)&&!((oe=kt.declarations)!=null&&oe.some(Mi=>!!(Mi.flags&33554432)))){let Mi=zY(AN(u.symbol)),To=Ji.name;if(Ji.exclamationToken||!Mi||!Ir(To)||!ot||!y0n(To,u,Mi)){let Ka=Z.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,Ka,kl(qe),no(m))}}}continue}else if(RKt(qe)){if(RKt(kt)||kt.flags&4)continue;pe.assert(!!(kt.flags&98304)),vn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else qe.flags&98304?vn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:vn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;Sr(Il(kt.valueDeclaration)||kt.valueDeclaration,vn,no(m),kl(qe),no(u))}}for(let[He,qe]of Oe)if(B(qe.missedProperties)===1)vd(He)?Sr(He,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,ma(qe.missedProperties),qe.baseTypeName):Sr(He,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,qe.typeName,ma(qe.missedProperties),qe.baseTypeName);else if(B(qe.missedProperties)>5){let Vt=At(qe.missedProperties.slice(0,4),vr=>`'${vr}'`).join(", "),kt=B(qe.missedProperties)-4;vd(He)?Sr(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,qe.baseTypeName,Vt,kt):Sr(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,qe.typeName,qe.baseTypeName,Vt,kt)}else{let Vt=At(qe.missedProperties,kt=>`'${kt}'`).join(", ");vd(He)?Sr(He,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,qe.baseTypeName,Vt):Sr(He,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,qe.typeName,qe.baseTypeName,Vt)}}function C0n(u,m){return m&64&&(!pi(u)||!u.initializer)||g_(u.parent)}function LUs(u,m,v){if(!B(m))return v;let D=new Map;F(v,P=>{D.set(P.escapedName,P)});for(let P of m){let Y=Gd(T1(P,u.thisType));for(let oe of Y){let Be=D.get(oe.escapedName);Be&&oe.parent===Be.parent&&D.delete(oe.escapedName)}}return Do(D.values())}function VUs(u,m){let v=Kw(u);if(v.length<2)return!0;let D=new Map;F(bJt(u).declaredProperties,Y=>{D.set(Y.escapedName,{prop:Y,containingType:u})});let P=!0;for(let Y of v){let oe=Gd(T1(Y,u.thisType));for(let Be of oe){let Oe=D.get(Be.escapedName);if(!Oe)D.set(Be.escapedName,{prop:Be,containingType:Y});else if(Oe.containingType!==u&&!DMs(Oe.prop,Be)){P=!1;let qe=no(Oe.containingType),Vt=no(Y),kt=wu(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,kl(Be),qe,Vt);kt=wu(kt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,no(u),qe,Vt),PA.add(Bw(ms(m),m,kt))}}}return P}function PUs(u){if(!ot||!ht||u.flags&33554432)return;let m=zY(u);for(let v of u.members)if(!(o_(v)&128)&&!cg(v)&&_0n(v)){let D=v.name;if(Ir(D)||p(D)||Un(D)){let P=Io(Uo(v));P.flags&3||Zse(P)||(!m||!y0n(D,P,m))&&Sr(v.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Wd(D))}}}function _0n(u){return u.kind===173&&!wP(u)&&!u.exclamationToken&&!u.initializer}function WUs(u,m,v,D,P){for(let Y of v)if(Y.pos>=D&&Y.pos<=P){let oe=me.createPropertyAccessExpression(me.createThis(),u);XA(oe.expression,oe),XA(oe,Y),oe.flowNode=Y.returnFlowNode;let Be=dZ(oe,m,mW(m));if(!Zse(Be))return!0}return!1}function y0n(u,m,v){let D=Un(u)?me.createElementAccessExpression(me.createThis(),u.expression):me.createPropertyAccessExpression(me.createThis(),u);XA(D.expression,D),XA(D,v),D.flowNode=v.returnFlowNode;let P=dZ(D,m,mW(m));return!Zse(P)}function OUs(u){sG(u)||_8s(u),Wat(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"interface"),TOe(u.typeParameters),g(()=>{nfe(u.name,Z.Interface_name_cannot_be_0),$2e(u);let m=Uo(u);A0n(m);let v=Cp(m,265);if(u===v){let D=Fp(m),P=T1(D);if(VUs(D,u.name)){for(let Y of Kw(D))p0(P,T1(Y,D.thisType),u.name,Z.Interface_0_incorrectly_extends_interface_1);Bat(D,m)}}F_n(u)}),F(N7(u),m=>{(!Od(m.expression)||GC(m.expression))&&Sr(m.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),I8t(m)}),F(u.members,rA),g(()=>{p8t(u),_W(u)})}function MUs(u){if(sG(u),nfe(u.name,Z.Type_alias_name_cannot_be_0),Wat(u.parent)||os(u,Z._0_declarations_can_only_be_declared_inside_a_block,"type"),$2e(u),TOe(u.typeParameters),u.type.kind===141){let m=B(u.typeParameters);(m===0?u.name.escapedText==="BuiltinIteratorReturn":m===1&&Bet.has(u.name.escapedText))||Sr(u.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types)}else rA(u.type),_W(u)}function b0n(u){let m=sa(u);if(!(m.flags&1024)){m.flags|=1024;let v=0,D;for(let P of u.members){let Y=HUs(P,v,D);sa(P).enumMemberValue=Y,v=typeof Y.value=="number"?Y.value+1:void 0,D=P}}}function HUs(u,m,v){if(kY(u.name))Sr(u.name,Z.Computed_property_names_are_not_allowed_in_enums);else if(eQ(u.name))Sr(u.name,Z.An_enum_member_cannot_have_a_numeric_name);else{let D=hP(u.name);IN(D)&&!oz(D)&&Sr(u.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(u.initializer)return YUs(u);if(u.parent.flags&33554432&&!VA(u.parent))return $h(void 0);if(m===void 0)return Sr(u.name,Z.Enum_member_must_have_initializer),$h(void 0);if(sS(Te)&&v?.initializer){let D=GK(v);typeof D.value=="number"&&!D.resolvedOtherFiles||Sr(u.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return $h(m)}function YUs(u){let m=VA(u.parent),v=u.initializer,D=ur(v,u);return D.value!==void 0?m&&typeof D.value=="number"&&!isFinite(D.value)?Sr(v,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):sS(Te)&&typeof D.value=="string"&&!D.isSyntacticallyString&&Sr(v,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${Vo(u.parent.name)}.${hP(u.name)}`):m?Sr(v,Z.const_enum_member_initializers_must_be_constant_expressions):u.parent.flags&33554432?Sr(v,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):p0(Ol(v),ri,v,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function E0n(u,m){let v=TI(u,111551,!0);if(!v)return $h(void 0);if(u.kind===80){let D=u;if(oz(D.escapedText)&&v===Gse(D.escapedText,111551,void 0))return $h(+D.escapedText,!1)}if(v.flags&8)return m?S0n(u,v,m):GK(v.valueDeclaration);if(kq(v)){let D=v.valueDeclaration;if(D&&nc(D)&&!D.type&&D.initializer&&(!m||D!==m&&$F(D,m))){let P=ur(D.initializer,D);return m&&ms(m)!==ms(D)?$h(P.value,!1,!0,!0):$h(P.value,P.isSyntacticallyString,P.resolvedOtherFiles,!0)}}return $h(void 0)}function QUs(u,m){let v=u.expression;if(Od(v)&&mA(u.argumentExpression)){let D=TI(v,111551,!0);if(D&&D.flags&384){let P=Ap(u.argumentExpression.text),Y=D.exports.get(P);if(Y)return pe.assert(ms(Y.valueDeclaration)===ms(D.valueDeclaration)),m?S0n(u,Y,m):GK(Y.valueDeclaration)}}return $h(void 0)}function S0n(u,m,v){let D=m.valueDeclaration;if(!D||D===v)return Sr(u,Z.Property_0_is_used_before_being_assigned,kl(m)),$h(void 0);if(!$F(D,v))return Sr(u,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),$h(0);let P=GK(D);return v.parent!==D.parent?$h(P.value,P.isSyntacticallyString,P.resolvedOtherFiles,!0):P}function XUs(u){g(()=>JUs(u))}function JUs(u){sG(u),rfe(u,u.name),$2e(u),u.members.forEach(rA),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),b0n(u);let m=Uo(u),v=Cp(m,u.kind);if(u===v){if(m.declarations&&m.declarations.length>1){let P=VA(u);F(m.declarations,Y=>{V3(Y)&&VA(Y)!==P&&Sr(Il(Y),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;F(m.declarations,P=>{if(P.kind!==267)return!1;let Y=P;if(!Y.members.length)return!1;let oe=Y.members[0];oe.initializer||(D?Sr(oe.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function UUs(u){p(u.name)&&Sr(u,Z.An_enum_member_cannot_be_named_with_a_private_identifier),u.initializer&&Ol(u.initializer)}function KUs(u){let m=u.declarations;if(m){for(let v of m)if((v.kind===264||v.kind===263&&u1(v.body))&&!(v.flags&33554432))return v}}function jUs(u,m){let v=tS(u),D=tS(m);return fc(v)?fc(D):fc(D)?!1:v===D}function zUs(u){u.body&&(rA(u.body),vB(u)||_W(u)),g(m);function m(){var v,D;let P=vB(u),Y=u.flags&33554432;P&&!Y&&Sr(u.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let oe=s_(u),Be=oe?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(ROe(u,Be))return;if(sG(u)||!Y&&u.name.kind===11&&os(u.name,Z.Only_ambient_modules_can_use_quoted_names),Ir(u.name)&&(rfe(u,u.name),!(u.flags&2080))){let He=ms(u),qe=Ege(u),Vt=rs(He,qe);QU.add(qh(He,Vt.start,Vt.length,Z.A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead))}$2e(u);let Oe=Uo(u);if(Oe.flags&512&&!Y&&wet(u,Fb(Te))){if(Te.erasableSyntaxOnly&&Sr(u.name,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),sS(Te)&&!ms(u).externalModuleIndicator&&Sr(u.name,Z.Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement,zt),((v=Oe.declarations)==null?void 0:v.length)>1){let He=KUs(Oe);He&&(ms(u)!==ms(He)?Sr(u.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):u.posqe.kind===95);He&&Sr(He,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(oe)if(_F(u)){if((P||Uo(u).flags&33554432)&&u.body)for(let qe of u.body.statements)N8t(qe,P)}else fc(u.parent)?P?Sr(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Xr(c2(u.name))&&Sr(u.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):P?Sr(u.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Sr(u.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function N8t(u,m){switch(u.kind){case 244:for(let D of u.declarationList.declarations)N8t(D,m);break;case 278:case 279:XC(u,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 272:if(d3(u))break;case 273:XC(u,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 209:case 261:let v=u.name;if(Nu(v)){for(let D of v.elements)N8t(D,m);break}case 264:case 267:case 263:case 265:case 268:case 266:if(m)return;break}}function qUs(u){switch(u.kind){case 80:return u;case 167:do u=u.left;while(u.kind!==80);return u;case 212:do{if(cN(u.expression)&&!p(u.name))return u.name;u=u.expression}while(u.kind!==80);return u}}function wat(u){let m=LY(u);if(!m||sf(m))return!1;if(!Zg(m))return Sr(m,Z.String_literal_expected),!1;let v=u.parent.kind===269&&s_(u.parent.parent);if(u.parent.kind!==308&&!v)return Sr(m,u.kind===279?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(v&&Xr(m.text)&&!wpe(u))return Sr(u,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!km(u)&&u.attributes){let D=u.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,P=!1;for(let Y of u.attributes.elements)Zg(Y.value)||(P=!0,Sr(Y.value,D));return!P}return!0}function Tat(u,m=!0){u===void 0||u.kind!==11||(m?(We===5||We===6)&&os(u,Z.String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020):os(u,Z.Identifier_expected))}function Rat(u){var m,v,D,P,Y;let oe=Uo(u),Be=YC(oe);if(Be!==it){if(oe=jA(oe.exportSymbol||oe),wo(u)&&!(Be.flags&111551)&&!nN(u)){let qe=eS(u)?u.propertyName||u.name:rh(u)?u.name:u;if(pe.assert(u.kind!==281),u.kind===282){let Vt=Sr(qe,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),kt=(v=(m=ms(u).symbol)==null?void 0:m.exports)==null?void 0:v.get(CF(u.propertyName||u.name));if(kt===Be){let vr=(D=kt.declarations)==null?void 0:D.find(l3);vr&&lg(Vt,mo(vr,Z._0_is_automatically_exported_here,Bc(kt.escapedName)))}}else{pe.assert(u.kind!==261);let Vt=ji(u,Hp(Mf,km)),kt=(Vt&&((P=ZY(Vt))==null?void 0:P.text))??"...",vr=Bc(Ir(qe)?qe.escapedText:oe.escapedName);Sr(qe,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,vr,`import("${kt}").${vr}`)}return}let Oe=Hb(Be),He=(oe.flags&1160127?111551:0)|(oe.flags&788968?788968:0)|(oe.flags&1920?1920:0);if(Oe&He){let qe=u.kind===282?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;Sr(u,qe,kl(oe))}else u.kind!==282&&Te.isolatedModules&&!ji(u,nN)&&oe.flags&1160127&&Sr(u,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,kl(oe),zt);if(sS(Te)&&!nN(u)&&!(u.flags&33554432)){let qe=uR(oe),Vt=!(Oe&111551);if(Vt||qe)switch(u.kind){case 274:case 277:case 272:{if(Te.verbatimModuleSyntax){pe.assertIsDefined(u.name,"An ImportClause with a symbol should have a name");let kt=Te.verbatimModuleSyntax&&d3(u)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:Vt?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,vr=HD(u.kind===277&&u.propertyName||u.name);hu(Sr(u,kt,vr),Vt?void 0:qe,vr)}Vt&&u.kind===272&&Gb(u,32)&&Sr(u,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,zt);break}case 282:if(Te.verbatimModuleSyntax||ms(qe)!==ms(u)){let kt=HD(u.propertyName||u.name),vr=Vt?Sr(u,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,zt):Sr(u,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,kt,zt);hu(vr,Vt?void 0:qe,kt);break}}if(Te.verbatimModuleSyntax&&u.kind!==272&&!wo(u)&&s.getEmitModuleFormatOfFile(ms(u))===1?Sr(u,XU(u)):We===200&&u.kind!==272&&u.kind!==261&&s.getEmitModuleFormatOfFile(ms(u))===1&&Sr(u,Z.ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve),Te.verbatimModuleSyntax&&!nN(u)&&!(u.flags&33554432)&&Oe&128){let kt=Be.valueDeclaration,vr=(Y=s.getRedirectFromOutput(ms(kt).resolvedPath))==null?void 0:Y.resolvedRef;kt.flags&33554432&&(!vr||!Fb(vr.commandLine.options))&&Sr(u,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,zt)}}if(uy(u)){let qe=D8t(oe,u);dy(qe)&&qe.declarations&&YB(u,qe.declarations,qe.escapedName)}}}function D8t(u,m){if(!(u.flags&2097152)||dy(u)||!Mb(u))return u;let v=YC(u);if(v===it)return v;for(;u.flags&2097152;){let D=jot(u);if(D){if(D===v)break;if(D.declarations&&B(D.declarations))if(dy(D)){YB(m,D.declarations,D.escapedName);break}else{if(u===v)break;u=D}}else break}return v}function Nat(u){rfe(u,u.name),Rat(u),u.kind===277&&(Tat(u.propertyName),lv(u.propertyName||u.name)&&kw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&eC(u,131072))}function k8t(u){var m;let v=u.attributes;if(v){let D=UJt(!0);D!==Xg&&p0(dJt(v),OWe(D,32768),v);let P=utt(u),Y=Gie(v,P?os:void 0),oe=u.attributes.token===118;if(P&&Y)return;if(!iLe(We))return os(v,oe?Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve);if(102<=We&&We<=199&&!oe)return XC(v,Z.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);if(u.moduleSpecifier&&eZ(u.moduleSpecifier)===1)return os(v,oe?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls);if(SN(u)||(Mf(u)?(m=u.importClause)==null?void 0:m.isTypeOnly:u.isTypeOnly))return os(v,oe?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(Y)return os(v,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function $Us(u){return Iy(RI(u.value))}function eKs(u){if(!ROe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!sG(u)&&u.modifiers&&XC(u,Z.An_import_declaration_cannot_have_modifiers),wat(u)){let m,v=u.importClause;v&&!Y8s(v)?(v.name&&Nat(v),v.namedBindings&&(v.namedBindings.kind===275?(Nat(v.namedBindings),s.getEmitModuleFormatOfFile(ms(u))<4&&kw(Te)&&eC(u,65536)):(m=F0(u,u.moduleSpecifier),m&&F(v.namedBindings.elements,Nat))),!v.isTypeOnly&&101<=We&&We<=199&&nW(u.moduleSpecifier,m)&&!tKs(u)&&Sr(u.moduleSpecifier,Z.Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0,jS[We])):_r&&!v&&F0(u,u.moduleSpecifier)}k8t(u)}}function tKs(u){return!!u.attributes&&u.attributes.elements.some(m=>{var v;return c2(m.name)==="type"&&((v=Gs(m.value,mA))==null?void 0:v.text)==="json"})}function rKs(u){if(!ROe(u,wo(u)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(sG(u),Te.erasableSyntaxOnly&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled),d3(u)||wat(u)))if(Nat(u),xq(u,6),u.moduleReference.kind!==284){let m=YC(Uo(u));if(m!==it){let v=Hb(m);if(v&111551){let D=B0(u.moduleReference);TI(D,112575).flags&1920||Sr(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Wd(D))}v&788968&&nfe(u.name,Z.Import_name_cannot_be_0)}u.isTypeOnly&&os(u,Z.An_import_alias_cannot_use_import_type)}else 5<=We&&We<=99&&!u.isTypeOnly&&!(u.flags&33554432)&&os(u,Z.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}function nKs(u){if(!ROe(u,wo(u)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!sG(u)&&FZe(u)&&XC(u,Z.An_export_declaration_cannot_have_modifiers),iKs(u),!u.moduleSpecifier||wat(u))if(u.exportClause&&!tk(u.exportClause)){F(u.exportClause.elements,sKs);let m=u.parent.kind===269&&s_(u.parent.parent),v=!m&&u.parent.kind===269&&!u.moduleSpecifier&&u.flags&33554432;u.parent.kind!==308&&!m&&!v&&Sr(u,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let m=F0(u,u.moduleSpecifier);m&&Xw(m)?Sr(u.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,kl(m)):u.exportClause&&(Rat(u.exportClause),Tat(u.exportClause.name)),s.getEmitModuleFormatOfFile(ms(u))<4&&(u.exportClause?kw(Te)&&eC(u,65536):eC(u,32768))}k8t(u)}}function iKs(u){var m;return u.isTypeOnly&&((m=u.exportClause)==null?void 0:m.kind)===280?syn(u.exportClause):!1}function ROe(u,m){let v=u.parent.kind===308||u.parent.kind===269||u.parent.kind===268;return v||XC(u,m),!v}function sKs(u){Rat(u);let m=u.parent.parent.moduleSpecifier!==void 0;if(Tat(u.propertyName,m),Tat(u.name),Ly(Te)&&vse(u.propertyName||u.name,!0),m)kw(Te)&&s.getEmitModuleFormatOfFile(ms(u))<4&&lv(u.propertyName||u.name)&&eC(u,131072);else{let v=u.propertyName||u.name;if(v.kind===11)return;let D=An(v,v.escapedText,2998271,void 0,!0);D&&(D===dt||D===pr||D.declarations&&fc(Tn(D.declarations[0])))?Sr(v,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,Vo(v)):xq(u,7)}}function oKs(u){let m=u.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(ROe(u,m))return;Te.erasableSyntaxOnly&&u.isExportEquals&&!(u.flags&33554432)&&Sr(u,Z.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled);let v=u.parent.kind===308?u.parent:u.parent.parent;if(v.kind===268&&!s_(v)){u.isExportEquals?Sr(u,Z.An_export_assignment_cannot_be_used_in_a_namespace):Sr(u,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!sG(u)&&Kye(u)&&XC(u,Z.An_export_assignment_cannot_have_modifiers);let D=kh(u);D&&p0(RI(u.expression),nl(D),u.expression);let P=!u.isExportEquals&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&s.getEmitModuleFormatOfFile(ms(u))===1;if(u.expression.kind===80){let Y=u.expression,oe=fn(TI(Y,-1,!0,!0,u));if(oe){xq(u,3);let Be=uR(oe,111551);if(Hb(oe)&111551?(RI(Y),!P&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Be&&Sr(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,Vo(Y))):!P&&!(u.flags&33554432)&&Te.verbatimModuleSyntax&&Sr(Y,u.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,Vo(Y)),!P&&!(u.flags&33554432)&&sS(Te)&&!(oe.flags&111551)){let Oe=Hb(oe,!1,!0);oe.flags&2097152&&Oe&788968&&!(Oe&111551)&&(!Be||ms(Be)!==ms(u))?Sr(Y,u.isExportEquals?Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),zt):Be&&ms(Be)!==ms(u)&&hu(Sr(Y,u.isExportEquals?Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Z._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Vo(Y),zt),Be,Vo(Y))}}else RI(Y);Ly(Te)&&vse(Y,!0)}else RI(u.expression);P&&Sr(u,XU(u)),v0n(v),u.flags&33554432&&!Od(u.expression)&&os(u.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),u.isExportEquals&&(We>=5&&We!==200&&(u.flags&33554432&&s.getImpliedNodeFormatForEmit(ms(u))===99||!(u.flags&33554432)&&s.getImpliedNodeFormatForEmit(ms(u))!==1)?os(u,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):We===4&&!(u.flags&33554432)&&os(u,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function aKs(u){return Dh(u.exports,(m,v)=>v!=="export=")}function v0n(u){let m=Uo(u),v=fa(m);if(!v.exportsChecked){let D=m.exports.get("export=");if(D&&aKs(m)){let Y=Mb(D)||D.valueDeclaration;Y&&!wpe(Y)&&!wo(Y)&&Sr(Y,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let P=LN(m);P&&P.forEach(({declarations:Y,flags:oe},Be)=>{if(Be==="__export"||oe&1920)return;let Oe=ct(Y,dh(kvs,uC(g_)));if(!(oe&524288&&Oe<=2)&&Oe>1&&!Dat(Y))for(let He of Y)Etn(He)&&PA.add(mo(He,Z.Cannot_redeclare_exported_variable_0,Bc(Be)))}),v.exportsChecked=!0}}function Dat(u){return u&&u.length>1&&u.every(m=>wo(m)&&_p(m)&&(p3(m.expression)||cN(m.expression)))}function rA(u){if(u){let m=ge;ge=u,M=0,cKs(u),ge=m}}function cKs(u){if(Pq(u)&8388608)return;Ane(u)&&F(u.jsDoc,({comment:v,tags:D})=>{B0n(v),F(D,P=>{B0n(P.comment),wo(u)&&rA(P)})});let m=u.kind;if(d)switch(m){case 268:case 264:case 265:case 263:d.throwIfCancellationRequested()}switch(m>=244&&m<=260&&UJ(u)&&u.flowNode&&!KWe(u.flowNode)&&Hw(Te.allowUnreachableCode===!1,u,Z.Unreachable_code_detected),m){case 169:return k_n(u);case 170:return x_n(u);case 173:return Z_n(u);case 172:return Q4s(u);case 186:case 185:case 180:case 181:case 182:return z2e(u);case 175:case 174:return X4s(u);case 176:return J4s(u);case 177:return U4s(u);case 178:case 179:return V_n(u);case 184:return I8t(u);case 183:return O4s(u);case 187:return eJs(u);case 188:return tJs(u);case 189:return rJs(u);case 190:return nJs(u);case 193:case 194:return iJs(u);case 197:case 191:case 192:return rA(u.type);case 198:return cJs(u);case 199:return lJs(u);case 195:return uJs(u);case 196:return gJs(u);case 204:return AJs(u);case 206:return dJs(u);case 203:return pJs(u);case 329:return GJs(u);case 330:return xJs(u);case 347:case 339:case 341:return EJs(u);case 346:return SJs(u);case 345:return vJs(u);case 325:case 326:case 327:return wJs(u);case 342:return TJs(u);case 349:return RJs(u);case 318:NJs(u);case 316:case 315:case 313:case 314:case 323:w0n(u),Lu(u,rA);return;case 319:lKs(u);return;case 310:return rA(u.type);case 334:case 336:case 335:return FJs(u);case 351:return BJs(u);case 344:return DJs(u);case 352:return kJs(u);case 200:return sJs(u);case 201:return oJs(u);case 263:return bJs(u);case 242:case 269:return yat(u);case 244:return $Js(u);case 245:return eUs(u);case 246:return tUs(u);case 247:return iUs(u);case 248:return sUs(u);case 249:return oUs(u);case 250:return cUs(u);case 251:return aUs(u);case 252:case 253:return hUs(u);case 254:return mUs(u);case 255:return CUs(u);case 256:return _Us(u);case 257:return yUs(u);case 258:return bUs(u);case 259:return EUs(u);case 261:return zJs(u);case 209:return qJs(u);case 264:return DUs(u);case 265:return OUs(u);case 266:return MUs(u);case 267:return XUs(u);case 307:return UUs(u);case 268:return zUs(u);case 273:return eKs(u);case 272:return rKs(u);case 279:return nKs(u);case 278:return oKs(u);case 243:case 260:fZ(u);return;case 283:return j4s(u)}}function B0n(u){Ki(u)&&F(u,m=>{Tx(m)&&rA(m)})}function w0n(u){if(!wo(u))if(zLe(u)||Iie(u)){let m=Vi(zLe(u)?54:58),v=u.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=u.type,P=nl(D);os(u,v,m,no(Iie(u)&&!(P===Wi||P===es)?Ha(Ft([P,Bt],u.postfix?void 0:Hn)):P))}else os(u,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function lKs(u){w0n(u),rA(u.type);let{parent:m}=u;if(Si(m)&&hie(m.parent)){Ei(m.parent.parameters)!==m&&Sr(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}W3(m)||Sr(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let v=u.parent.parent;if(!cS(v)){Sr(u,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=dne(v);if(!D)return;let P=PL(v);(!P||Ei(P.parameters).symbol!==D)&&Sr(u,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function uKs(u){let m=nl(u.type),{parent:v}=u,D=u.parent.parent;if(W3(u.parent)&&cS(D)){let P=PL(D),Y=p$e(D.parent.parent);if(P||Y){let oe=li(Y?D.parent.parent.typeExpression.parameters:P.parameters),Be=dne(D);if(!oe||Be&&oe.symbol===Be&&EB(oe))return d0(m)}}return Si(v)&&hie(v.parent)?d0(m):Z0(m)}function Lq(u){let m=ms(u),v=sa(m);v.flags&1?pe.assert(!v.deferredNodes,"A type-checked file should have no deferred nodes."):(v.deferredNodes||(v.deferredNodes=new Set),v.deferredNodes.add(u))}function T0n(u){let m=sa(u);m.deferredNodes&&m.deferredNodes.forEach(gKs),m.deferredNodes=void 0}function gKs(u){var m,v;(m=ki)==null||m.push(ki.Phase.Check,"checkDeferredNode",{kind:u.kind,pos:u.pos,end:u.end,path:u.tracingPath});let D=ge;switch(ge=u,M=0,u.kind){case 214:case 215:case 216:case 171:case 287:DK(u);break;case 219:case 220:case 175:case 174:r4s(u);break;case 178:case 179:V_n(u);break;case 232:NUs(u);break;case 169:W4s(u);break;case 286:lQs(u);break;case 285:gQs(u);break;case 217:case 235:case 218:BXs(u);break;case 223:Ol(u.expression);break;case 227:pAe(u)&&DK(u);break}ge=D,(v=ki)==null||v.pop()}function AKs(u,m){var v,D;(v=ki)==null||v.push(ki.Phase.Check,m?"checkSourceFileNodes":"checkSourceFile",{path:u.path},!0);let P=m?"beforeCheckNodes":"beforeCheck",Y=m?"afterCheckNodes":"afterCheck";Mc(P),m?pKs(u,m):dKs(u),Mc(Y),Pf("Check",P,Y),(D=ki)==null||D.pop()}function R0n(u,m){if(m)return!1;switch(u){case 0:return!!Te.noUnusedLocals;case 1:return!!Te.noUnusedParameters;default:return pe.assertNever(u)}}function N0n(u){return Qs.get(u.path)||E}function dKs(u){let m=sa(u);if(!(m.flags&1)){if(T3(u,Te,s))return;nyn(u),St(jP),St(c9),St(JF),St(UF),St(KF),m.flags&8388608&&(jP=m.potentialThisCollisions,c9=m.potentialNewTargetCollisions,JF=m.potentialWeakMapSetCollisions,UF=m.potentialReflectCollisions,KF=m.potentialUnusedRenamedBindingElementsInTypes),F(u.statements,rA),rA(u.endOfFileToken),T0n(u),vl(u)&&_W(u),g(()=>{!u.isDeclarationFile&&(Te.noUnusedLocals||Te.noUnusedParameters)&&K_n(N0n(u),(v,D,P)=>{!pP(v)&&R0n(D,!!(v.flags&33554432))&&PA.add(P)}),u.isDeclarationFile||PJs()}),vl(u)&&v0n(u),jP.length&&(F(jP,MJs),St(jP)),c9.length&&(F(c9,HJs),St(c9)),JF.length&&(F(JF,JJs),St(JF)),UF.length&&(F(UF,KJs),St(UF)),m.flags|=1}}function pKs(u,m){let v=sa(u);if(!(v.flags&1)){if(T3(u,Te,s))return;nyn(u),St(jP),St(c9),St(JF),St(UF),St(KF),F(m,rA),T0n(u),(v.potentialThisCollisions||(v.potentialThisCollisions=[])).push(...jP),(v.potentialNewTargetCollisions||(v.potentialNewTargetCollisions=[])).push(...c9),(v.potentialWeakMapSetCollisions||(v.potentialWeakMapSetCollisions=[])).push(...JF),(v.potentialReflectCollisions||(v.potentialReflectCollisions=[])).push(...UF),(v.potentialUnusedRenamedBindingElementsInTypes||(v.potentialUnusedRenamedBindingElementsInTypes=[])).push(...KF),v.flags|=8388608;for(let D of m){let P=sa(D);P.flags|=8388608}}}function D0n(u,m,v){try{return d=m,fKs(u,v)}finally{d=void 0}}function x8t(){for(let u of c)u();c=[]}function G8t(u,m){x8t();let v=g;g=D=>D(),AKs(u,m),g=v}function fKs(u,m){if(u){x8t();let v=PA.getGlobalDiagnostics(),D=v.length;G8t(u,m);let P=PA.getDiagnostics(u.fileName);if(m)return P;let Y=PA.getGlobalDiagnostics();if(Y!==v){let oe=Wr(v,Y,X7);return Nn(oe,P)}else if(D===0&&Y.length>0)return Nn(Y,P);return P}return F(s.getSourceFiles(),v=>G8t(v)),PA.getDiagnostics()}function IKs(){return x8t(),PA.getGlobalDiagnostics()}function hKs(u,m){if(u.flags&67108864)return[];let v=qu(),D=!1;return P(),v.delete("this"),VJt(v);function P(){for(;u;){switch(WI(u)&&u.locals&&!fc(u)&&oe(u.locals,m),u.kind){case 308:if(!xm(u))break;case 268:Be(Uo(u).exports,m&2623475);break;case 267:oe(Uo(u).exports,m&8);break;case 232:u.name&&Y(u.symbol,m);case 264:case 265:D||oe(pk(Uo(u)),m&788968);break;case 219:u.name&&Y(u.symbol,m);break}tZe(u)&&Y(st,m),D=cg(u),u=u.parent}oe(Gr,m)}function Y(Oe,He){if(sU(Oe)&He){let qe=Oe.escapedName;v.has(qe)||v.set(qe,Oe)}}function oe(Oe,He){He&&Oe.forEach(qe=>{Y(qe,He)})}function Be(Oe,He){He&&Oe.forEach(qe=>{!Cp(qe,282)&&!Cp(qe,281)&&qe.escapedName!=="default"&&Y(qe,He)})}}function mKs(u){return u.kind===80&&KY(u.parent)&&Il(u.parent)===u}function k0n(u){for(;u.parent.kind===167;)u=u.parent;return u.parent.kind===184}function CKs(u){for(;u.parent.kind===212;)u=u.parent;return u.parent.kind===234}function x0n(u,m){let v,D=hC(u);for(;D&&!(v=m(D));)D=hC(D);return v}function _Ks(u){return!!ji(u,m=>Tc(m)&&u1(m.body)||pi(m)?!0:xa(m)||kd(m)?"quit":!1)}function F8t(u,m){return!!x0n(u,v=>v===m)}function yKs(u){for(;u.parent.kind===167;)u=u.parent;if(u.parent.kind===272)return u.parent.moduleReference===u?u.parent:void 0;if(u.parent.kind===278)return u.parent.expression===u?u.parent:void 0}function kat(u){return yKs(u)!==void 0}function bKs(u){switch(nI(u.parent.parent)){case 1:case 3:return mS(u.parent);case 5:if(jo(u.parent)&&oU(u.parent)===u)return;case 4:case 2:return Uo(u.parent.parent)}}function EKs(u){let m=u.parent;for(;zi(m);)u=m,m=m.parent;if(m&&m.kind===206&&m.qualifier===u)return m}function SKs(u){if(u.expression.kind===110){let m=r0(u,!1,!1);if(bu(m)){let v=Hmn(m);if(v){let D=O5(v,void 0),P=Qmn(v,D);return P&&!Xo(P)}}}}function G0n(u){if(HT(u))return mS(u.parent);if(wo(u)&&u.parent.kind===212&&u.parent===u.parent.parent.left&&!p(u)&&!O3(u)&&!SKs(u.parent)){let m=bKs(u);if(m)return m}if(u.parent.kind===278&&Od(u)){let m=TI(u,2998271,!0);if(m&&m!==it)return m}else if(fC(u)&&kat(u)){let m=ML(u,272);return pe.assert(m!==void 0),oW(u,!0)}if(fC(u)){let m=EKs(u);if(m){nl(m);let v=sa(u).resolvedSymbol;return v===it?void 0:v}}for(;OZe(u);)u=u.parent;if(CKs(u)){let m=0;u.parent.kind===234?(m=ww(u)?788968:111551,dAe(u.parent)&&(m|=111551)):m=1920,m|=2097152;let v=Od(u)?TI(u,m,!0):void 0;if(v)return v}if(u.parent.kind===342)return dne(u.parent);if(u.parent.kind===169&&u.parent.parent.kind===346){pe.assert(!wo(u));let m=IZe(u.parent);return m&&m.symbol}if(MT(u)){if(sf(u))return;let m=ji(u,Hp(Tx,lde,O3)),v=m?901119:111551;if(u.kind===80){if(YJ(u)&&Fq(u)){let P=qot(u.parent);return P===it?void 0:P}let D=TI(u,v,!0,!0,PL(u));if(!D&&m){let P=ji(u,Hp(xa,g_));if(P)return NOe(u,!0,Uo(P))}if(D&&m){let P=bP(u);if(P&&LF(P)&&P===D.valueDeclaration)return TI(u,v,!0,!0,ms(P))||D}return D}else{if(p(u))return rat(u);if(u.kind===212||u.kind===167){let D=sa(u);return D.resolvedSymbol?D.resolvedSymbol:(u.kind===212?(tat(u,0),D.resolvedSymbol||(D.resolvedSymbol=F0n(RI(u.expression),sZ(u.name)))):yCn(u,0),!D.resolvedSymbol&&m&&zi(u)?NOe(u):D.resolvedSymbol)}else if(O3(u))return NOe(u)}}else if(fC(u)&&k0n(u)){let m=u.parent.kind===184?788968:1920,v=TI(u,m,!0,!0);return v&&v!==it?v:eot(u)}if(u.parent.kind===183)return TI(u,1,!0)}function F0n(u,m){let v=LJt(u,m);if(v.length&&u.members){let D=jst(pR(u).members);if(v===A0(u))return D;if(D){let P=fa(D),Y=Xt(v,Be=>Be.declaration),oe=At(Y,rd).join(",");if(P.filteredIndexSymbolCache||(P.filteredIndexSymbolCache=new Map),P.filteredIndexSymbolCache.has(oe))return P.filteredIndexSymbolCache.get(oe);{let Be=gA(131072,"__index");return Be.declarations=Xt(v,Oe=>Oe.declaration),Be.parent=u.aliasSymbol?u.aliasSymbol:u.symbol?u.symbol:xv(Be.declarations[0].parent),P.filteredIndexSymbolCache.set(oe,Be),Be}}}}function NOe(u,m,v){if(fC(u)){let oe=TI(u,901119,m,!0,PL(u));if(!oe&&Ir(u)&&v&&(oe=jA(f_(B1(v),u.escapedText,901119))),oe)return oe}let D=Ir(u)?v:NOe(u.left,m,v),P=Ir(u)?u.escapedText:u.right.escapedText;if(D){let Y=D.flags&111551&&Gg(Io(D),"prototype"),oe=Y?Io(Y):Fp(D);return Gg(oe,P)}}function xv(u,m){if(ll(u))return xm(u)?jA(u.symbol):void 0;let{parent:v}=u,D=v.parent;if(!(u.flags&67108864)){if(Stn(u)){let P=Uo(v);return eS(u.parent)&&u.parent.propertyName===u?jot(P):P}else if(fne(u))return Uo(v.parent);if(u.kind===80){if(kat(u))return G0n(u);if(v.kind===209&&D.kind===207&&u===v.propertyName){let P=Vq(D),Y=Gg(P,u.escapedText);if(Y)return Y}else if(Du(v)&&v.name===u)return v.keywordToken===105&&Vo(u)==="target"?zKt(v).symbol:v.keywordToken===102&&Vo(u)==="meta"?EIn().members.get("meta"):void 0}switch(u.kind){case 80:case 81:case 212:case 167:if(!YL(u))return G0n(u);case 110:let P=r0(u,!1,!1);if(bu(P)){let Be=yS(P);if(Be.thisParameter)return Be.thisParameter}if(rne(u))return Ol(u).symbol;case 198:return hUt(u).symbol;case 108:return Ol(u).symbol;case 137:let Y=u.parent;return Y&&Y.kind===177?Y.parent.symbol:void 0;case 11:case 15:if(LL(u.parent.parent)&&_7(u.parent.parent)===u||(u.parent.kind===273||u.parent.kind===279)&&u.parent.moduleSpecifier===u||wo(u)&&SN(u.parent)&&u.parent.moduleSpecifier===u||wo(u)&&ay(u.parent,!1)||Up(u.parent)||EE(u.parent)&&ky(u.parent.parent)&&u.parent.parent.argument===u.parent)return F0(u,u,m);if(Zl(v)&&f3(v)&&v.arguments[1]===u)return Uo(v);case 9:let oe=Yg(v)?v.argumentExpression===u?P_(v.expression):void 0:EE(v)&&Iv(D)?nl(D.objectType):void 0;return oe&&Gg(oe,Ap(u.text));case 90:case 100:case 39:case 86:return mS(u.parent);case 206:return ky(u)?xv(u.argument.literal,m):void 0;case 95:return Cf(u.parent)?pe.checkDefined(u.parent.symbol):void 0;case 102:if(Du(u.parent)&&u.parent.name.escapedText==="defer")return;case 105:return Du(u.parent)?s_n(u.parent).symbol:void 0;case 104:if(fo(u.parent)){let Be=P_(u.parent.right),Oe=c8t(Be);return Oe?.symbol??Be.symbol}return;case 237:return Ol(u).symbol;case 296:if(YJ(u)&&Fq(u)){let Be=qot(u.parent);return Be===it?void 0:Be}default:return}}}function vKs(u){if(Ir(u)&&jo(u.parent)&&u.parent.name===u){let m=sZ(u),v=P_(u.parent.expression),D=v.flags&1048576?v.types:[v];return er(D,P=>Me(A0(P),Y=>Sq(m,Y.keyType)))}}function BKs(u){if(u&&u.kind===305)return TI(u.name,2208703,!0)}function wKs(u){if(R0(u)){let m=u.propertyName||u.name;return u.parent.parent.moduleSpecifier?_5(u.parent.parent,u):m.kind===11?void 0:TI(m,2998271,!0)}else return TI(u,2998271,!0)}function Vq(u){if(ll(u)&&!xm(u)||u.flags&67108864)return nn;let m=ebe(u),v=m&&wv(Uo(m.class));if(ww(u)){let D=nl(u);return v?T1(D,v.thisType):D}if(MT(u))return Z0n(u);if(v&&!m.isImplements){let D=Nc(Kw(v));return D?T1(D,v.thisType):nn}if(KY(u)){let D=Uo(u);return Fp(D)}if(mKs(u)){let D=xv(u);return D?Fp(D):nn}if(hg(u))return _q(u,!0,0)||nn;if(jh(u)){let D=Uo(u);return D?Io(D):nn}if(Stn(u)){let D=xv(u);return D?Io(D):nn}if(Nu(u))return _q(u.parent,!0,0)||nn;if(kat(u)){let D=xv(u);if(D){let P=Fp(D);return uo(P)?Io(D):P}}return Du(u.parent)&&u.parent.keywordToken===u.kind?s_n(u.parent):CU(u)?UJt(!1):nn}function xat(u){if(pe.assert(u.kind===211||u.kind===210),u.parent.kind===251){let P=BOe(u.parent);return xK(u,P||nn)}if(u.parent.kind===227){let P=P_(u.parent.right);return xK(u,P||nn)}if(u.parent.kind===304){let P=Ma(u.parent.parent,og),Y=xat(P)||nn,oe=fP(P.properties,u.parent);return __n(P,Y,oe)}let m=Ma(u.parent,OI),v=xat(m)||nn,D=N9(65,v,Bt,u.parent)||nn;return y_n(m,v,m.elements.indexOf(u),D)}function TKs(u){let m=xat(Ma(u.parent.parent,CY));return m&&Gg(m,u.escapedText)}function Z0n(u){return P7(u)&&(u=u.parent),Iy(P_(u))}function L0n(u){let m=mS(u.parent);return cg(u)?Io(m):Fp(m)}function V0n(u){let m=u.name;switch(m.kind){case 80:return TE(Vo(m));case 9:case 11:return TE(m.text);case 168:let v=zw(m);return V_(v,12288)?v:$r;default:return pe.fail("Unsupported property name.")}}function Z8t(u){u=fy(u);let m=qu(Gd(u)),v=tg(u,0).length?Hl:tg(u,1).length?RA:void 0;return v&&F(Gd(v),D=>{m.has(D.escapedName)||m.set(D.escapedName,D)}),Qy(m)}function Gat(u){return tg(u,0).length!==0||tg(u,1).length!==0}function P0n(u){let m=RKs(u);return m?er(m,P0n):[u]}function RKs(u){if(iI(u)&6)return Xt(fa(u).containingType.types,m=>Gg(m,u.escapedName));if(u.flags&33554432){let{links:{leftSpread:m,rightSpread:v,syntheticOrigin:D}}=u;return m?[m,v]:D?[D]:J_(NKs(u))}}function NKs(u){let m,v=u;for(;v=fa(v).target;)m=v;return m}function DKs(u){if(kp(u))return!1;let m=$l(u,Ir);if(!m)return!1;let v=m.parent;return v?!((jo(v)||fm(v))&&v.name===m)&&aSe(m)===st:!1}function kKs(u){return a3(u.parent)&&u===u.parent.name}function xKs(u,m){var v;let D=$l(u,Ir);if(D){let P=aSe(D,kKs(D));if(P){if(P.flags&1048576){let oe=jA(P.exportSymbol);if(!m&&oe.flags&944&&!(oe.flags&3))return;P=oe}let Y=$m(P);if(Y){if(Y.flags&512&&((v=Y.valueDeclaration)==null?void 0:v.kind)===308){let oe=Y.valueDeclaration,Be=ms(D);return oe!==Be?void 0:oe}return ji(D.parent,oe=>a3(oe)&&Uo(oe)===Y)}}}}function GKs(u){let m=MLe(u);if(m)return m;let v=$l(u,Ir);if(v){let D=KKs(v);if(qU(D,111551)&&!uR(D,111551))return Mb(D)}}function FKs(u){return u.valueDeclaration&&hg(u.valueDeclaration)&&ai(u.valueDeclaration).parent.kind===300}function W0n(u){if(u.flags&418&&u.valueDeclaration&&!ll(u.valueDeclaration)){let m=fa(u);if(m.isDeclarationWithCollidingName===void 0){let v=tS(u.valueDeclaration);if(mge(v)||FKs(u))if(An(v.parent,u.escapedName,111551,void 0,!1))m.isDeclarationWithCollidingName=!0;else if(L8t(u.valueDeclaration,16384)){let D=L8t(u.valueDeclaration,32768),P=VT(v,!1),Y=v.kind===242&&VT(v.parent,!1);m.isDeclarationWithCollidingName=!Tge(v)&&(!D||!P&&!Y)}else m.isDeclarationWithCollidingName=!1}return m.isDeclarationWithCollidingName}return!1}function ZKs(u){if(!kp(u)){let m=$l(u,Ir);if(m){let v=aSe(m);if(v&&W0n(v))return v.valueDeclaration}}}function LKs(u){let m=$l(u,jh);if(m){let v=Uo(m);if(v)return W0n(v)}return!1}function O0n(u){switch(pe.assert(Ht),u.kind){case 272:return Fat(Uo(u));case 274:case 275:case 277:case 282:let m=Uo(u);return!!m&&Fat(m,!0);case 279:let v=u.exportClause;return!!v&&(tk(v)||jt(v.elements,O0n));case 278:return u.expression&&u.expression.kind===80?Fat(Uo(u),!0):!0}return!1}function VKs(u){let m=$l(u,km);return m===void 0||m.parent.kind!==308||!d3(m)?!1:Fat(Uo(m))&&m.moduleReference&&!sf(m.moduleReference)}function Fat(u,m){if(!u)return!1;let v=ms(u.valueDeclaration),D=v&&Uo(v);wE(D);let P=fn(YC(u));return P===it?!m||!uR(u):!!(Hb(u,m,!0)&111551)&&(Fb(Te)||!oSe(P))}function oSe(u){return a8t(u)||!!u.constEnumOnlyModule}function M0n(u,m){if(pe.assert(Ht),d9(u)){let v=Uo(u),D=v&&fa(v);if(D?.referenced)return!0;let P=fa(v).aliasTarget;if(P&&o_(u)&32&&Hb(P)&111551&&(Fb(Te)||!oSe(P)))return!0}return m?!!Lu(u,v=>M0n(v,m)):!1}function H0n(u){if(u1(u.body)){if(bB(u)||cv(u))return!1;let m=Uo(u),v=PQ(m);return v.length>1||v.length===1&&v[0].declaration!==u}return!1}function PKs(u){let m=X0n(u);if(!m)return!1;let v=nl(m);return uo(v)||Zse(v)}function DOe(u,m){return(WKs(u,m)||OKs(u))&&!PKs(u)}function WKs(u,m){return!ot||m2e(u)||cS(u)||!u.initializer?!1:Ga(u,31)?!!m&&kd(m):!0}function OKs(u){return ot&&m2e(u)&&(cS(u)||!u.initializer)&&Ga(u,31)}function Y0n(u){let m=$l(u,D=>ih(D)||nc(D));if(!m)return!1;let v;if(nc(m)){if(m.type||!wo(m)&&!cSe(m))return!1;let D=E7(m);if(!D||!mE(D))return!1;v=Uo(D)}else v=Uo(m);return!v||!(v.flags&16|3)?!1:!!Dh(B1(v),D=>D.flags&111551&&jY(D.valueDeclaration))}function MKs(u){let m=$l(u,ih);if(!m)return E;let v=Uo(m);return v&&Gd(Io(v))||E}function Pq(u){var m;let v=u.id||0;return v<0||v>=c5.length?0:((m=c5[v])==null?void 0:m.flags)||0}function L8t(u,m){return HKs(u,m),!!(Pq(u)&m)}function HKs(u,m){if(!Te.noCheck&&gU(ms(u),Te)||sa(u).calculatedFlags&m)return;switch(m){case 16:case 32:return oe(u);case 128:case 256:case 2097152:return Y(u);case 512:case 8192:case 65536:case 262144:return Oe(u);case 536870912:return qe(u);case 4096:case 32768:case 16384:return kt(u);default:return pe.assertNever(m,`Unhandled node check flag calculation: ${pe.formatNodeCheckFlags(m)}`)}function D(dn,vn){let ii=vn(dn,dn.parent);if(ii!=="skip")return ii||Sz(dn,vn)}function P(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=2097536,oe(dn)}function Y(dn){D(dn,P)}function oe(dn){let vn=sa(dn);vn.calculatedFlags|=48,dn.kind===108&&Hot(dn)}function Be(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=336384,qe(dn)}function Oe(dn){D(dn,Be)}function He(dn){return MT(dn)||a0(dn.parent)&&(dn.parent.objectAssignmentInitializer??dn.parent.name)===dn}function qe(dn){let vn=sa(dn);if(vn.calculatedFlags|=536870912,Ir(dn)&&(vn.calculatedFlags|=49152,He(dn)&&!(jo(dn.parent)&&dn.parent.name===dn))){let ii=L0(dn);ii&&ii!==it&&Pmn(dn,ii)}}function Vt(dn){let vn=sa(dn);if(vn.calculatedFlags&m)return"skip";vn.calculatedFlags|=53248,vr(dn)}function kt(dn){let vn=tS(HT(dn)?dn.parent:dn);D(vn,Vt)}function vr(dn){qe(dn),Un(dn)&&zw(dn),p(dn)&&PI(dn.parent)&&Iat(dn.parent)}}function GK(u){return b0n(u.parent),sa(u).enumMemberValue??$h(void 0)}function Q0n(u){switch(u.kind){case 307:case 212:case 213:return!0}return!1}function Zat(u){if(u.kind===307)return GK(u).value;sa(u).resolvedSymbol||RI(u);let m=sa(u).resolvedSymbol||(Od(u)?TI(u,111551,!0):void 0);if(m&&m.flags&8){let v=m.valueDeclaration;if(VA(v.parent))return GK(v).value}}function V8t(u){return!!(u.flags&524288)&&tg(u,0).length>0}function YKs(u,m){var v;let D=$l(u,fC);if(!D||m&&(m=$l(m),!m))return 0;let P=!1;if(zi(D)){let qe=TI(B0(D),111551,!0,!0,m);P=!!((v=qe?.declarations)!=null&&v.every(nN))}let Y=TI(D,111551,!0,!0,m),oe=Y&&Y.flags&2097152?YC(Y):Y;P||(P=!!(Y&&uR(Y,111551)));let Be=TI(D,788968,!0,!0,m),Oe=Be&&Be.flags&2097152?YC(Be):Be;if(Y||P||(P=!!(Be&&uR(Be,788968))),oe&&oe===Oe){let qe=KJt(!1);if(qe&&oe===qe)return 9;let Vt=Io(oe);if(Vt&&dR(Vt))return P?10:1}if(!Oe)return P?11:0;let He=Fp(Oe);return uo(He)?P?11:0:He.flags&3?11:V_(He,245760)?2:V_(He,528)?6:V_(He,296)?3:V_(He,2112)?4:V_(He,402653316)?5:yA(He)?7:V_(He,12288)?8:V8t(He)?10:Nv(He)?7:11}function QKs(u,m,v,D,P){let Y=$l(u,KAe);if(!Y)return me.createToken(133);let oe=Uo(Y);return Dt.serializeTypeForDeclaration(Y,oe,m,v|1024,D,P)}function P8t(u){u=$l(u,fJ);let m=u.kind===179?178:179,v=Cp(Uo(u),m),D=v&&v.pos{switch(D.kind){case 261:case 170:case 209:case 173:case 304:case 305:case 307:case 211:case 263:case 219:case 220:case 264:case 232:case 267:case 175:case 178:case 179:case 268:return!0}return!1})}}}function qKs(u){return hf(u)||nc(u)&&cSe(u)?MQ(Io(Uo(u))):!1}function $Ks(u,m,v){let D=u.flags&1056?Dt.symbolToExpression(u.symbol,111551,m,void 0,void 0,v):u===tn?me.createTrue():u===Bs&&me.createFalse();if(D)return D;let P=u.value;return typeof P=="object"?me.createBigIntLiteral(P):typeof P=="string"?me.createStringLiteral(P):P<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-P)):me.createNumericLiteral(P)}function e8s(u,m){let v=Io(Uo(u));return $Ks(v,u,m)}function W8t(u){return u?(Mw(u),ms(u).localJsxFactory||zF):zF}function O8t(u){if(u){let m=ms(u);if(m){if(m.localJsxFragmentFactory)return m.localJsxFragmentFactory;let v=m.pragmas.get("jsxfrag"),D=Ki(v)?v[0]:v;if(D)return m.localJsxFragmentFactory=Bz(D.arguments.factory,Ze),m.localJsxFragmentFactory}}if(Te.jsxFragmentFactory)return Bz(Te.jsxFragmentFactory,Ze)}function X0n(u){let m=kh(u);if(m)return m;if(u.kind===170&&u.parent.kind===179){let v=P8t(u.parent).getAccessor;if(v)return xb(v)}}function t8s(){return{getReferencedExportContainer:xKs,getReferencedImportDeclaration:GKs,getReferencedDeclarationWithCollidingName:ZKs,isDeclarationWithCollidingName:LKs,isValueAliasDeclaration:m=>{let v=$l(m);return v&&Ht?O0n(v):!0},hasGlobalName:UKs,isReferencedAliasDeclaration:(m,v)=>{let D=$l(m);return D&&Ht?M0n(D,v):!0},hasNodeCheckFlag:(m,v)=>{let D=$l(m);return D?L8t(D,v):!1},isTopLevelValueImportEqualsWithEntityName:VKs,isDeclarationVisible:Ak,isImplementationOfOverload:H0n,requiresAddingImplicitUndefined:DOe,isExpandoFunctionDeclaration:Y0n,getPropertiesOfContainerFunction:MKs,createTypeOfDeclaration:QKs,createReturnTypeOfSignatureDeclaration:XKs,createTypeOfExpression:JKs,createLiteralConstValue:e8s,isSymbolAccessible:cW,isEntityNameVisible:Cq,getConstantValue:m=>{let v=$l(m,Q0n);return v?Zat(v):void 0},getEnumMemberValue:m=>{let v=$l(m,LF);return v?GK(v):void 0},collectLinkedAliases:vse,markLinkedReferences:m=>{let v=$l(m);return v&&xq(v,0)},getReferencedValueDeclaration:jKs,getReferencedValueDeclarations:zKs,getTypeReferenceSerializationKind:YKs,isOptionalParameter:m2e,isArgumentsLocalBinding:DKs,getExternalModuleFileFromDeclaration:m=>{let v=$l(m,Nge);return v&&M8t(v)},isLiteralConstDeclaration:qKs,isLateBound:m=>{let v=$l(m,jh),D=v&&Uo(v);return!!(D&&iI(D)&4096)},getJsxFactoryEntity:W8t,getJsxFragmentFactoryEntity:O8t,isBindingCapturedByNode:(m,v)=>{let D=$l(m),P=$l(v);return!!D&&!!P&&(nc(P)||hg(P))&&uYs(D,P)},getDeclarationStatementsForSourceFile:(m,v,D,P)=>{let Y=$l(m);pe.assert(Y&&Y.kind===308,"Non-sourcefile node passed into getDeclarationsForSourceFile");let oe=Uo(m);return oe?(wE(oe),oe.exports?Dt.symbolTableToDeclarationStatements(oe.exports,m,v,D,P):[]):m.locals?Dt.symbolTableToDeclarationStatements(m.locals,m,v,D,P):[]},isImportRequiredByAugmentation:u,isDefinitelyReferenceToGlobalSymbolObject:lk,createLateBoundIndexSignatures:(m,v,D,P,Y)=>{let oe=m.symbol,Be=A0(Io(oe)),Oe=Kst(oe),He=Oe&&zst(Oe,Do(pk(oe).values())),qe;for(let kt of[Be,He])if(B(kt)){qe||(qe=[]);for(let vr of kt){if(vr.declaration||vr===rl)continue;if(vr.components&&ue(vr.components,ii=>{var Yi;return!!(ii.name&&Un(ii.name)&&Od(ii.name.expression)&&v&&((Yi=Cq(ii.name.expression,v,!1))==null?void 0:Yi.accessibility)===0)})){let ii=Me(vr.components,Yi=>!wse(Yi));qe.push(...At(ii,Yi=>{Vt(Yi.name.expression);let js=kt===Be?[me.createModifier(126)]:void 0;return me.createPropertyDeclaration(Ft(js,vr.isReadonly?me.createModifier(148):void 0),Yi.name,(ss(Yi)||pi(Yi)||hl(Yi)||uu(Yi)||bB(Yi)||cv(Yi))&&Yi.questionToken?me.createToken(58):void 0,Dt.typeToTypeNode(Io(Yi.symbol),v,D,P,Y),void 0)}));continue}let dn=Dt.indexInfoToIndexSignatureDeclaration(vr,v,D,P,Y);dn&&kt===Be&&(dn.modifiers||(dn.modifiers=me.createNodeArray())).unshift(me.createModifier(126)),dn&&qe.push(dn)}}return qe;function Vt(kt){if(!Y.trackSymbol)return;let vr=B0(kt),dn=An(vr,vr.escapedText,1160127,void 0,!0);dn&&Y.trackSymbol(dn,v,111551)}},symbolToDeclarations:(m,v,D,P,Y,oe)=>Dt.symbolToDeclarations(m,v,D,P,Y,oe)};function u(m){let v=ms(m);if(!v.symbol)return!1;let D=M8t(m);if(!D||D===v)return!1;let P=LN(v.symbol);for(let Y of Do(P.values()))if(Y.mergeId){let oe=jA(Y);if(oe.declarations){for(let Be of oe.declarations)if(ms(Be)===D)return!0}}return!1}}function M8t(u){let m=u.kind===268?Gs(u.name,Zg):LY(u),v=BE(m,m,void 0);if(v)return Cp(v,308)}function r8s(){for(let m of s.getSourceFiles())gOt(m,Te);oh=new Map;let u;for(let m of s.getSourceFiles())if(!m.redirectInfo){if(!vl(m)){let v=m.locals.get("globalThis");if(v?.declarations)for(let D of v.declarations)PA.add(mo(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));FN(Gr,m.locals)}m.jsGlobalAugmentations&&FN(Gr,m.jsGlobalAugmentations),m.patternAmbientModules&&m.patternAmbientModules.length&&(Vb=Nn(Vb,m.patternAmbientModules)),m.moduleAugmentations.length&&(u||(u=[])).push(m.moduleAugmentations),m.symbol&&m.symbol.globalExports&&m.symbol.globalExports.forEach((D,P)=>{Gr.has(P)||Gr.set(P,D)})}if(u)for(let m of u)for(let v of m)vB(v.parent)&&wQ(v);if(I5(),fa(dt).type=xe,fa(st).type=JI("IArguments",0,!0),fa(it).type=nn,fa(pr).type=Lh(16,pr),NA=JI("Array",1,!0),qn=JI("Object",0,!0),Js=JI("Function",0,!0),Hl=mt&&JI("CallableFunction",0,!0)||Js,RA=mt&&JI("NewableFunction",0,!0)||Js,hm=JI("String",0,!0),af=JI("Number",0,!0),dI=JI("Boolean",0,!0),XI=JI("RegExp",0,!0),d_=d0(hr),OC=d0(En),OC===Xg&&(OC=Hf(void 0,Ee,E,E,E)),uA=DIn("ReadonlyArray",1)||NA,E1=uA?Wpe(uA,[hr]):d_,C2=DIn("ThisType",1),u)for(let m of u)for(let v of m)vB(v.parent)||wQ(v);oh.forEach(({firstFile:m,secondFile:v,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:P,firstFileLocations:Y,secondFileLocations:oe},Be)=>{let Oe=P?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let He of Y)f5(He,Oe,Be,oe);for(let He of oe)f5(He,Oe,Be,Y)});else{let P=Do(D.keys()).join(", ");PA.add(lg(mo(m,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,P),mo(v,Z.Conflicts_are_in_this_file))),PA.add(lg(mo(v,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,P),mo(m,Z.Conflicts_are_in_this_file)))}}),oh=void 0}function eC(u,m){if(Te.importHelpers){let v=ms(u);if(g3(v,Te)&&!(u.flags&33554432)){let D=i8s(v,u);if(D!==it){let P=fa(D);if(P.requestedExternalEmitHelpers??(P.requestedExternalEmitHelpers=0),(P.requestedExternalEmitHelpers&m)!==m){let Y=m&~P.requestedExternalEmitHelpers;for(let oe=1;oe<=16777216;oe<<=1)if(Y&oe)for(let Be of n8s(oe)){let Oe=Zh(f_(LN(D),Ap(Be),111551));Oe?oe&524288?jt(PQ(Oe),He=>NE(He)>3)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,4):oe&1048576?jt(PQ(Oe),He=>NE(He)>4)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,5):oe&1024&&(jt(PQ(Oe),He=>NE(He)>2)||Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,PD,Be,3)):Sr(u,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,PD,Be)}}P.requestedExternalEmitHelpers|=m}}}}function n8s(u){switch(u){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return Ue?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__setFunctionName"];case 8388608:return["__propKey"];case 16777216:return["__addDisposableResource","__disposeResources"];case 33554432:return["__rewriteRelativeImportExtension"];default:return pe.fail("Unrecognized helper")}}function i8s(u,m){let v=sa(u);return v.externalHelpersModule||(v.externalHelpersModule=eK(q8s(u),PD,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,m)||it),v.externalHelpersModule}function sG(u){var m;let v=a8s(u)||s8s(u);if(v!==void 0)return v;if(Si(u)&&SF(u))return XC(u,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Ch(u)?u.declarationList.flags&7:0,P,Y,oe,Be,Oe,He=0,qe=!1,Vt=!1;for(let kt of u.modifiers)if(So(kt)){if(OJ(Ue,u,u.parent,u.parent.parent)){if(Ue&&(u.kind===178||u.kind===179)){let vr=P8t(u);if(p1(vr.firstAccessor)&&u===vr.secondAccessor)return XC(u,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return u.kind===175&&!u1(u.body)?XC(u,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):XC(u,Z.Decorators_are_not_valid_here);if(He&-34849)return os(kt,Z.Decorators_are_not_valid_here);if(Vt&&He&98303){pe.assertIsDefined(Oe);let vr=ms(kt);return bW(vr)?!1:(lg(Sr(kt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),mo(Oe,Z.Decorator_used_before_export_here)),!0)}He|=32768,He&98303?He&32&&(qe=!0):Vt=!0,Oe??(Oe=kt)}else{if(kt.kind!==148){if(u.kind===172||u.kind===174)return os(kt,Z._0_modifier_cannot_appear_on_a_type_member,Vi(kt.kind));if(u.kind===182&&(kt.kind!==126||!xa(u.parent)))return os(kt,Z._0_modifier_cannot_appear_on_an_index_signature,Vi(kt.kind))}if(kt.kind!==103&&kt.kind!==147&&kt.kind!==87&&u.kind===169)return os(kt,Z._0_modifier_cannot_appear_on_a_type_parameter,Vi(kt.kind));switch(kt.kind){case 87:{if(u.kind!==267&&u.kind!==169)return os(u,Z.A_class_member_cannot_have_the_0_keyword,Vi(87));let vn=ZB(u.parent)&&WL(u.parent)||u.parent;if(u.kind===169&&!(kd(vn)||xa(vn)||x_(vn)||$D(vn)||wg(vn)||em(vn)||hl(vn)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,Vi(kt.kind));break}case 164:if(He&16)return os(kt,Z._0_modifier_already_seen,"override");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"override","async");He|=16,Be=kt;break;case 125:case 124:case 123:let vr=w5(HY(kt.kind));if(He&7)return os(kt,Z.Accessibility_modifier_already_seen);if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"override");if(He&256)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"static");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"accessor");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,vr,"async");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,vr);if(He&64)return kt.kind===123?os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,vr,"abstract"):os(kt,Z._0_modifier_must_precede_1_modifier,vr,"abstract");if(pC(u))return os(kt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);He|=HY(kt.kind);break;case 126:if(He&256)return os(kt,Z._0_modifier_already_seen,"static");if(He&8)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","async");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(u.parent.kind===269||u.parent.kind===308)return os(kt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"static","override");He|=256,P=kt;break;case 129:if(He&512)return os(kt,Z._0_modifier_already_seen,"accessor");if(He&8)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(He&128)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(u.kind!==173)return os(kt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);He|=512;break;case 148:if(He&8)return os(kt,Z._0_modifier_already_seen,"readonly");if(u.kind!==173&&u.kind!==172&&u.kind!==182&&u.kind!==170)return os(kt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");He|=8;break;case 95:if(Te.verbatimModuleSyntax&&!(u.flags&33554432)&&u.kind!==266&&u.kind!==265&&u.kind!==268&&u.parent.kind===308&&s.getEmitModuleFormatOfFile(ms(u))===1)return os(kt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(He&32)return os(kt,Z._0_modifier_already_seen,"export");if(He&128)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(He&64)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(He&1024)return os(kt,Z._0_modifier_must_precede_1_modifier,"export","async");if(xa(u.parent))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");He|=32;break;case 90:let dn=u.parent.kind===308?u.parent:u.parent.parent;if(dn.kind===268&&!s_(dn))return os(kt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(He&32){if(qe)return os(Oe,Z.Decorators_are_not_valid_here)}else return os(kt,Z._0_modifier_must_precede_1_modifier,"export","default");He|=2048;break;case 138:if(He&128)return os(kt,Z._0_modifier_already_seen,"declare");if(He&1024)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(He&16)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(xa(u.parent)&&!pi(u))return os(kt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return os(kt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return os(kt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(u.parent.flags&33554432&&u.parent.kind===269)return os(kt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(pC(u))return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(He&512)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");He|=128,Y=kt;break;case 128:if(He&64)return os(kt,Z._0_modifier_already_seen,"abstract");if(u.kind!==264&&u.kind!==186){if(u.kind!==175&&u.kind!==173&&u.kind!==178&&u.kind!==179)return os(kt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(u.parent.kind===264&&Ga(u.parent,64))){let vn=u.kind===173?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return os(kt,vn)}if(He&256)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(He&2)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(He&1024&&oe)return os(oe,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(He&16)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(He&512)return os(kt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(rh(u)&&u.name.kind===81)return os(kt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");He|=64;break;case 134:if(He&1024)return os(kt,Z._0_modifier_already_seen,"async");if(He&128||u.parent.flags&33554432)return os(kt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(u.kind===170)return os(kt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(He&64)return os(kt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");He|=1024,oe=kt;break;case 103:case 147:{let vn=kt.kind===103?8192:16384,ii=kt.kind===103?"in":"out",Yi=ZB(u.parent)&&(WL(u.parent)||de((m=KJ(u.parent))==null?void 0:m.tags,bU))||u.parent;if(u.kind!==169||Yi&&!(g_(Yi)||xa(Yi)||FB(Yi)||bU(Yi)))return os(kt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,ii);if(He&vn)return os(kt,Z._0_modifier_already_seen,ii);if(vn&8192&&He&16384)return os(kt,Z._0_modifier_must_precede_1_modifier,"in","out");He|=vn;break}}}return u.kind===177?He&256?os(P,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):He&16?os(Be,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):He&1024?os(oe,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(u.kind===273||u.kind===272)&&He&128?os(Y,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):u.kind===170&&He&31&&Nu(u.name)?os(u,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):u.kind===170&&He&31&&u.dotDotDotToken?os(u,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):He&1024?l8s(u,oe):!1}function s8s(u){if(!u.modifiers)return!1;let m=o8s(u);return m&&XC(m,Z.Modifiers_cannot_appear_here)}function Lat(u,m){let v=de(u.modifiers,Ig);return v&&v.kind!==m?v:void 0}function o8s(u){switch(u.kind){case 178:case 179:case 177:case 173:case 172:case 175:case 174:case 182:case 268:case 273:case 272:case 279:case 278:case 219:case 220:case 170:case 169:return;case 176:case 304:case 305:case 271:case 283:return de(u.modifiers,Ig);default:if(u.parent.kind===269||u.parent.kind===308)return;switch(u.kind){case 263:return Lat(u,134);case 264:case 186:return Lat(u,128);case 232:case 265:case 266:return de(u.modifiers,Ig);case 244:return u.declarationList.flags&4?Lat(u,135):de(u.modifiers,Ig);case 267:return Lat(u,87);default:pe.assertNever(u)}}}function a8s(u){let m=c8s(u);return m&&XC(m,Z.Decorators_are_not_valid_here)}function c8s(u){return D$e(u)?de(u.modifiers,So):void 0}function l8s(u,m){switch(u.kind){case 175:case 263:case 219:case 220:return!1}return os(m,Z._0_modifier_cannot_be_used_here,"async")}function Wq(u,m=Z.Trailing_comma_not_allowed){return u&&u.hasTrailingComma?M5(u[0],u.end-1,1,m):!1}function J0n(u,m){if(u&&u.length===0){let v=u.pos-1,D=Yu(m.text,u.end)+1;return M5(m,v,D-v,Z.Type_parameter_list_cannot_be_empty)}return!1}function u8s(u){let m=!1,v=u.length;for(let D=0;D!!m.initializer||Nu(m.name)||EB(m))}function A8s(u){if(Ze>=3){let m=u.body&&$u(u.body)&&w$e(u.body.statements);if(m){let v=g8s(u.parameters);if(B(v)){F(v,P=>{lg(Sr(P,Z.This_parameter_is_not_allowed_with_use_strict_directive),mo(m,Z.use_strict_directive_used_here))});let D=v.map((P,Y)=>Y===0?mo(P,Z.Non_simple_parameter_declared_here):mo(P,Z.and_here));return lg(Sr(m,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function Vat(u){let m=ms(u);return sG(u)||J0n(u.typeParameters,m)||u8s(u.parameters)||p8s(u,m)||kd(u)&&A8s(u)}function d8s(u){let m=ms(u);return C8s(u)||J0n(u.typeParameters,m)}function p8s(u,m){if(!lA(u))return!1;u.typeParameters&&!(B(u.typeParameters)>1||u.typeParameters.hasTrailingComma||u.typeParameters[0].constraint)&&m&&fu(m.fileName,[".mts",".cts"])&&os(u.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:v}=u,D=Ra(m,v.pos).line,P=Ra(m,v.end).line;return D!==P&&os(v,Z.Line_terminator_not_permitted_before_arrow)}function f8s(u){let m=u.parameters[0];if(u.parameters.length!==1)return os(m?m.name:u,Z.An_index_signature_must_have_exactly_one_parameter);if(Wq(u.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),m.dotDotDotToken)return os(m.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(Kye(m))return os(m.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(m.questionToken)return os(m.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(m.initializer)return os(m.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!m.type)return os(m.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let v=nl(m.type);return kv(v,D=>!!(D.flags&8576))||G5(v)?os(m.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):RE(v,qst)?u.type?!1:os(u,Z.An_index_signature_must_have_a_type_annotation):os(m.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function I8s(u){return sG(u)||f8s(u)}function h8s(u,m){if(m&&m.length===0){let v=ms(u),D=m.pos-1,P=Yu(v.text,m.end)+1;return M5(v,D,P-D,Z.Type_argument_list_cannot_be_empty)}return!1}function kOe(u,m){return Wq(m)||h8s(u,m)}function m8s(u){return u.questionDotToken||u.flags&64?os(u.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function U0n(u){let m=u.types;if(Wq(m))return!0;if(m&&m.length===0){let v=Vi(u.token);return M5(u,m.pos,0,Z._0_list_cannot_be_empty,v)}return jt(m,K0n)}function K0n(u){return l_(u)&&an(u.expression)&&u.typeArguments?os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):kOe(u,u.typeArguments)}function C8s(u){let m=!1,v=!1;if(!sG(u)&&u.heritageClauses)for(let D of u.heritageClauses){if(D.token===96){if(m)return XC(D,Z.extends_clause_already_seen);if(v)return XC(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return XC(D.types[1],Z.Classes_can_only_extend_a_single_class);m=!0}else{if(pe.assert(D.token===119),v)return XC(D,Z.implements_clause_already_seen);v=!0}U0n(D)}}function _8s(u){let m=!1;if(u.heritageClauses)for(let v of u.heritageClauses){if(v.token===96){if(m)return XC(v,Z.extends_clause_already_seen);m=!0}else return pe.assert(v.token===119),XC(v,Z.Interface_declaration_cannot_have_implements_clause);U0n(v)}return!1}function Pat(u){if(u.kind!==168)return!1;let m=u;return m.expression.kind===227&&m.expression.operatorToken.kind===28?os(m.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function H8t(u){if(u.asteriskToken){if(pe.assert(u.kind===263||u.kind===219||u.kind===175),u.flags&33554432)return os(u.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!u.body)return os(u.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function Y8t(u,m){return!!u&&os(u,m)}function j0n(u,m){return!!u&&os(u,m)}function y8s(u,m){let v=new Map;for(let D of u.properties){if(D.kind===306){if(m){let oe=QA(D.expression);if(OI(oe)||og(oe))return os(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let P=D.name;if(P.kind===168&&Pat(P),D.kind===305&&!m&&D.objectAssignmentInitializer&&os(D.equalsToken,Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern),P.kind===81&&os(P,Z.Private_identifiers_are_not_allowed_outside_class_bodies),LB(D)&&D.modifiers)for(let oe of D.modifiers)Ig(oe)&&(oe.kind!==134||D.kind!==175)&&os(oe,Z._0_modifier_cannot_be_used_here,xp(oe));else if(tWt(D)&&D.modifiers)for(let oe of D.modifiers)Ig(oe)&&os(oe,Z._0_modifier_cannot_be_used_here,xp(oe));let Y;switch(D.kind){case 305:case 304:j0n(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),Y8t(D.questionToken,Z.An_object_member_cannot_be_declared_optional),P.kind===9&&iyn(P),P.kind===10&&Hx(!0,mo(P,Z.A_bigint_literal_cannot_be_used_as_a_property_name)),Y=4;break;case 175:Y=8;break;case 178:Y=1;break;case 179:Y=2;break;default:pe.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!m){let oe=J8t(P);if(oe===void 0)continue;let Be=v.get(oe);if(!Be)v.set(oe,Y);else if(Y&8&&Be&8)os(P,Z.Duplicate_identifier_0,xp(P));else if(Y&4&&Be&4)os(P,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,xp(P));else if(Y&3&&Be&3)if(Be!==3&&Y!==Be)v.set(oe,Y|Be);else return os(P,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return os(P,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function b8s(u){E8s(u.tagName),kOe(u,u.typeArguments);let m=new Map;for(let v of u.attributes.properties){if(v.kind===294)continue;let{name:D,initializer:P}=v,Y=cz(D);if(!m.get(Y))m.set(Y,!0);else return os(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(P&&P.kind===295&&!P.expression)return os(P,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function E8s(u){if(jo(u)&&eR(u.expression))return os(u.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(eR(u)&&RAe(Te)&&!eU(u.namespace.escapedText))return os(u,Z.React_components_cannot_include_JSX_namespace_names)}function S8s(u){if(u.expression&&Ade(u.expression))return os(u.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function z0n(u){if(fZ(u))return!0;if(u.kind===251&&u.awaitModifier&&!(u.flags&65536)){let m=ms(u);if(Mge(u)){if(!bW(m))switch(g3(m,Te)||PA.add(mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),We){case 100:case 101:case 102:case 199:if(m.impliedNodeFormat===1){PA.add(mo(u.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 200:case 4:if(Ze>=4)break;default:PA.add(mo(u.awaitModifier,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!bW(m)){let v=mo(u.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=A1(u);if(D&&D.kind!==177){pe.assert((SI(D)&2)===0,"Enclosing function should never be an async function.");let P=mo(D,Z.Did_you_mean_to_mark_this_function_as_async);lg(v,P)}return PA.add(v),!0}}if(iEe(u)&&!(u.flags&65536)&&Ir(u.initializer)&&u.initializer.escapedText==="async")return os(u.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(u.initializer.kind===262){let m=u.initializer;if(!X8t(m)){let v=m.declarations;if(!v.length)return!1;if(v.length>1){let P=u.kind===250?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return XC(m.declarations[1],P)}let D=v[0];if(D.initializer){let P=u.kind===250?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return os(D.name,P)}if(D.type){let P=u.kind===250?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return os(D,P)}}}return!1}function v8s(u){if(!(u.flags&33554432)&&u.parent.kind!==188&&u.parent.kind!==265){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.body===void 0&&!Ga(u,64))return M5(u,u.end-1,1,Z._0_expected,"{")}if(u.body){if(Ga(u,64))return os(u,Z.An_abstract_accessor_cannot_have_an_implementation);if(u.parent.kind===188||u.parent.kind===265)return os(u.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(u.typeParameters)return os(u.name,Z.An_accessor_cannot_have_type_parameters);if(!B8s(u))return os(u.name,u.kind===178?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(u.kind===179){if(u.type)return os(u.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let m=pe.checkDefined(L7(u),"Return value does not match parameter count assertion.");if(m.dotDotDotToken)return os(m.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(m.questionToken)return os(m.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(m.initializer)return os(u.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function B8s(u){return Q8t(u)||u.parameters.length===(u.kind===178?0:1)}function Q8t(u){if(u.parameters.length===(u.kind===178?1:2))return vP(u)}function w8s(u){if(u.operator===158){if(u.type.kind!==155)return os(u.type,Z._0_expected,Vi(155));let m=pne(u.parent);if(wo(m)&&W3(m)){let v=bP(m);v&&(m=m3(v)||v)}switch(m.kind){case 261:let v=m;if(v.name.kind!==80)return os(u,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!h7(v))return os(u,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(v.parent.flags&2))return os(m.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 173:if(!cg(m)||!b3(m))return os(m.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 172:if(!Ga(m,8))return os(m.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return os(u,Z.unique_symbol_types_are_not_allowed_here)}}else if(u.operator===148&&u.type.kind!==189&&u.type.kind!==190)return XC(u,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,Vi(155))}function ife(u,m){if(xfn(u)&&!Od(Yg(u)?QA(u.argumentExpression):u.expression))return os(u,m)}function q0n(u){if(Vat(u))return!0;if(u.kind===175){if(u.parent.kind===211){if(u.modifiers&&!(u.modifiers.length===1&&ma(u.modifiers).kind===134))return XC(u,Z.Modifiers_cannot_appear_here);if(Y8t(u.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(j0n(u.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(u.body===void 0)return M5(u,u.end-1,1,Z._0_expected,"{")}if(H8t(u))return!0}if(xa(u.parent)){if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(u.flags&33554432)return ife(u.name,Z.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.kind===175&&!u.body)return ife(u.name,Z.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(u.parent.kind===265)return ife(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(u.parent.kind===188)return ife(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function T8s(u){let m=u;for(;m;){if(s3(m))return os(u,Z.Jump_target_cannot_cross_function_boundary);switch(m.kind){case 257:if(u.label&&m.label.escapedText===u.label.escapedText)return u.kind===252&&!VT(m.statement,!0)?os(u,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 256:if(u.kind===253&&!u.label)return!1;break;default:if(VT(m,!1)&&!u.label)return!1;break}m=m.parent}if(u.label){let v=u.kind===253?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return os(u,v)}else{let v=u.kind===253?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return os(u,v)}}function R8s(u){if(u.dotDotDotToken){let m=u.parent.elements;if(u!==Ei(m))return os(u,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(Wq(m,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),u.propertyName)return os(u.name,Z.A_rest_element_cannot_have_a_property_name)}if(u.dotDotDotToken&&u.initializer)return M5(u,u.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function $0n(u){return d1(u)||u.kind===225&&u.operator===41&&u.operand.kind===9}function N8s(u){return u.kind===10||u.kind===225&&u.operator===41&&u.operand.kind===10}function D8s(u){if((jo(u)||Yg(u)&&$0n(u.argumentExpression))&&Od(u.expression))return!!(RI(u).flags&1056)}function eyn(u){let m=u.initializer;if(m){let v=!($0n(m)||D8s(m)||m.kind===112||m.kind===97||N8s(m));if((hf(u)||nc(u)&&cSe(u))&&!u.type){if(v)return os(m,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return os(m,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function k8s(u){let m=jQ(u),v=m&7;if(Nu(u.name))switch(v){case 6:return os(u,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return os(u,Z._0_declarations_may_not_have_binding_patterns,"using")}if(u.parent.parent.kind!==250&&u.parent.parent.kind!==251){if(m&33554432)eyn(u);else if(!u.initializer){if(Nu(u.name)&&!Nu(u.parent))return os(u,Z.A_destructuring_declaration_must_have_an_initializer);switch(v){case 6:return os(u,Z._0_declarations_must_be_initialized,"await using");case 4:return os(u,Z._0_declarations_must_be_initialized,"using");case 2:return os(u,Z._0_declarations_must_be_initialized,"const")}}}if(u.exclamationToken&&(u.parent.parent.kind!==244||!u.type||u.initializer||m&33554432)){let D=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,D)}return s.getEmitModuleFormatOfFile(ms(u))<4&&!(u.parent.parent.flags&33554432)&&Ga(u.parent.parent,32)&&tyn(u.name),!!v&&ryn(u.name)}function tyn(u){if(u.kind===80){if(Vo(u)==="__esModule")return F8s("noEmit",u,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let m=u.elements;for(let v of m)if(!yp(v))return tyn(v.name)}return!1}function ryn(u){if(u.kind===80){if(u.escapedText==="let")return os(u,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let m=u.elements;for(let v of m)yp(v)||ryn(v.name)}return!1}function X8t(u){let m=u.declarations;if(Wq(u.declarations))return!0;if(!u.declarations.length)return M5(u,m.pos,m.end-m.pos,Z.Variable_declaration_list_cannot_be_empty);let v=u.flags&7;if(v===4||v===6){if(KLe(u.parent))return os(u,v===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration);if(u.flags&33554432)return os(u,v===4?Z.using_declarations_are_not_allowed_in_ambient_contexts:Z.await_using_declarations_are_not_allowed_in_ambient_contexts);if(v===6)return C_n(u)}return!1}function Wat(u){switch(u.kind){case 246:case 247:case 248:case 255:case 249:case 250:case 251:return!1;case 257:return Wat(u.parent)}return!0}function x8s(u){if(!Wat(u.parent)){let m=jQ(u.declarationList)&7;if(m){let v=m===1?"let":m===2?"const":m===4?"using":m===6?"await using":pe.fail("Unknown BlockScope flag");Sr(u,Z._0_declarations_can_only_be_declared_inside_a_block,v)}}}function G8s(u){let m=u.name.escapedText;switch(u.keywordToken){case 105:if(m!=="target")return os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"target");break;case 102:if(m!=="meta"){let v=Zl(u.parent)&&u.parent.expression===u;if(m==="defer"){if(!v)return M5(u,u.end,0,Z._0_expected,"(")}else return v?os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer,Bc(u.name.escapedText)):os(u.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Bc(u.name.escapedText),Vi(u.keywordToken),"meta")}break}}function bW(u){return u.parseDiagnostics.length>0}function XC(u,m,...v){let D=ms(u);if(!bW(D)){let P=rs(D,u.pos);return PA.add(qh(D,P.start,P.length,m,...v)),!0}return!1}function M5(u,m,v,D,...P){let Y=ms(u);return bW(Y)?!1:(PA.add(qh(Y,m,v,D,...P)),!0)}function F8s(u,m,v,...D){let P=ms(m);return bW(P)?!1:(l9(u,m,v,...D),!0)}function os(u,m,...v){let D=ms(u);return bW(D)?!1:(Sr(u,m,...v),!0)}function Z8s(u){let m=wo(u)?uAe(u):void 0,v=u.typeParameters||m&&Nc(m);if(v){let D=v.pos===v.end?v.pos:Yu(ms(u).text,v.pos);return M5(u,D,v.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function L8s(u){let m=u.type||xb(u);if(m)return os(m,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function V8s(u){if(Un(u.name)&&fo(u.name.expression)&&u.name.expression.operatorToken.kind===103)return os(u.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(xa(u.parent)){if(Zg(u.name)&&u.name.text==="constructor")return os(u.name,Z.Classes_may_not_have_a_field_named_constructor);if(ife(u.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Ze<2&&p(u.name))return os(u.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Ze<2&&t0(u)&&!(u.flags&33554432))return os(u.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(t0(u)&&Y8t(u.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(u.parent.kind===265){if(ife(u.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(mh(u.parent)){if(ife(u.name,Z.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(pe.assertNode(u,ss),u.initializer)return os(u.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(u.flags&33554432&&eyn(u),pi(u)&&u.exclamationToken&&(!xa(u.parent)||!u.type||u.initializer||u.flags&33554432||cg(u)||wP(u))){let m=u.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:u.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return os(u.exclamationToken,m)}}function P8s(u){return u.kind===265||u.kind===266||u.kind===273||u.kind===272||u.kind===279||u.kind===278||u.kind===271||Ga(u,2208)?!1:XC(u,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function W8s(u){for(let m of u.statements)if((jh(m)||m.kind===244)&&P8s(m))return!0;return!1}function nyn(u){return!!(u.flags&33554432)&&W8s(u)}function fZ(u){if(u.flags&33554432){if(!sa(u).hasReportedStatementInAmbientContext&&(bu(u.parent)||yB(u.parent)))return sa(u).hasReportedStatementInAmbientContext=XC(u,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(u.parent.kind===242||u.parent.kind===269||u.parent.kind===308){let v=sa(u.parent);if(!v.hasReportedStatementInAmbientContext)return v.hasReportedStatementInAmbientContext=XC(u,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function iyn(u){let m=xp(u).includes("."),v=u.numericLiteralFlags&16;m||v||+u.text<=2**53-1||Hx(!1,mo(u,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function O8s(u){return!!(!(EE(u.parent)||T0(u.parent)&&EE(u.parent.parent))&&!(u.flags&33554432)&&Ze<7&&os(u,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function M8s(u,m,...v){let D=ms(u);if(!bW(D)){let P=rs(D,u.pos);return PA.add(qh(D,Rs(P),0,m,...v)),!0}return!1}function H8s(){return m2||(m2=[],Gr.forEach((u,m)=>{hOt.test(m)&&m2.push(u)})),m2}function Y8s(u){var m,v;if(u.phaseModifier===156){if(u.name&&u.namedBindings)return os(u,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);if(((m=u.namedBindings)==null?void 0:m.kind)===276)return syn(u.namedBindings)}else if(u.phaseModifier===166){if(u.name)return os(u,Z.Default_imports_are_not_allowed_in_a_deferred_import);if(((v=u.namedBindings)==null?void 0:v.kind)===276)return os(u,Z.Named_imports_are_not_allowed_in_a_deferred_import);if(We!==99&&We!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}return!1}function syn(u){return!!F(u.elements,m=>{if(m.isTypeOnly)return XC(m,m.kind===277?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function Q8s(u){if(Te.verbatimModuleSyntax&&We===1)return os(u,XU(u));if(u.expression.kind===237){if(We!==99&&We!==200)return os(u,Z.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve)}else if(We===5)return os(u,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext);if(u.typeArguments)return os(u,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let m=u.arguments;if(!(100<=We&&We<=199)&&We!==99&&We!==200&&(Wq(m),m.length>1)){let D=m[1];return os(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve)}if(m.length===0||m.length>2)return os(u,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let v=de(m,of);return v?os(v,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function X8s(u,m){let v=la(u);if(v&20&&m.flags&1048576)return de(m.types,D=>{if(D.flags&524288){let P=v&la(D);if(P&4)return u.target===D.target;if(P&16)return!!u.aliasSymbol&&u.aliasSymbol===D.aliasSymbol}return!1})}function J8s(u,m){if(la(u)&128&&kv(m,T9))return de(m.types,v=>!T9(v))}function U8s(u,m){let v=0;if(tg(u,v).length>0||(v=1,tg(u,v).length>0))return de(m.types,P=>tg(P,v).length>0)}function K8s(u,m){let v;if(!(u.flags&406978556)){let D=0;for(let P of m.types)if(!(P.flags&406978556)){let Y=Kg([ON(u),ON(P)]);if(Y.flags&4194304)return P;if(IR(Y)||Y.flags&1048576){let oe=Y.flags&1048576?ct(Y.types,IR):1;oe>=D&&(v=P,D=oe)}}}return v}function j8s(u){if(ah(u,67108864)){let m=nm(u,v=>!(v.flags&402784252));if(!(m.flags&131072))return m}return u}function oyn(u,m,v){if(m.flags&1048576&&u.flags&2621440){let D=amn(m,u);if(D)return D;let P=Gd(u);if(P){let Y=omn(P,m);if(Y){let oe=RUt(m,At(Y,Be=>[()=>Io(Be),Be.escapedName]),v);if(oe!==m)return oe}}}}function J8t(u){let m=_3(u);return m||(Un(u)?tKt(P_(u.expression)):void 0)}function Oat(u){return Zi===u||(Zi=u,Ns=Hc(u)),Ns}function jQ(u){return mn===u||(mn=u,jn=dm(u)),jn}function cSe(u){let m=jQ(u)&7;return m===2||m===4||m===6}function z8s(u,m){let v=Te.importHelpers?1:0,D=u?.imports[v];return D&&pe.assert(sp(D)&&D.text===m,`Expected sourceFile.imports[${v}] to be the synthesized JSX runtime import`),D}function q8s(u){pe.assert(Te.importHelpers,"Expected importHelpers to be enabled");let m=u.imports[0];return pe.assert(m&&sp(m)&&m.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),m}}function Gvs(s){return!yB(s)}function Etn(s){return s.kind!==263&&s.kind!==175||!!s.body}function Stn(s){switch(s.parent.kind){case 277:case 282:return Ir(s)||s.kind===11;default:return HT(s)}}var lS;(s=>{s.JSX="JSX",s.IntrinsicElements="IntrinsicElements",s.ElementClass="ElementClass",s.ElementAttributesPropertyNameContainer="ElementAttributesProperty",s.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",s.Element="Element",s.ElementType="ElementType",s.IntrinsicAttributes="IntrinsicAttributes",s.IntrinsicClassAttributes="IntrinsicClassAttributes",s.LibraryManagedAttributes="LibraryManagedAttributes"})(lS||(lS={}));var Tet;(s=>{s.Fragment="Fragment"})(Tet||(Tet={}));function vtn(s){switch(s){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function D0(s){return!!(s.flags&1)}function Btn(s){return!!(s.flags&2)}function Fvs(s){return{getCommonSourceDirectory:s.getCommonSourceDirectory?()=>s.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>s.getCurrentDirectory(),getSymlinkCache:$i(s,s.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=s.getPackageJsonInfoCache)==null?void 0:c.call(s)},useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames(),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:c=>s.getRedirectFromSourceFile(c),isSourceOfProjectReferenceRedirect:c=>s.isSourceOfProjectReferenceRedirect(c),fileExists:c=>s.fileExists(c),getFileIncludeReasons:()=>s.getFileIncludeReasons(),readFile:s.readFile?c=>s.readFile(c):void 0,getDefaultResolutionModeForFile:c=>s.getDefaultResolutionModeForFile(c),getModeForResolutionAtIndex:(c,g)=>s.getModeForResolutionAtIndex(c,g),getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)}}var _Ot=class YDi{constructor(c,g,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var h;g instanceof YDi;)g=g.inner;this.inner=g,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((h=this.inner)!=null&&h.trackSymbol)}trackSymbol(c,g,d){var h,_;if((h=this.inner)!=null&&h.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,g,d))return this.onDiagnosticReported(),!0;c.flags&262144||((_=this.context).trackedSymbols??(_.trackedSymbols=[])).push([c,g,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var g;(g=this.inner)!=null&&g.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var g;(g=this.inner)!=null&&g.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,g,d){var h;(h=this.inner)!=null&&h.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,g,d))}reportNonSerializableProperty(c){var g;(g=this.inner)!=null&&g.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var g;(g=this.inner)!=null&&g.reportInferenceFallback&&!this.context.suppressReportInferenceFallback&&(this.onDiagnosticReported(),this.inner.reportInferenceFallback(c))}pushErrorFallbackNode(c){var g,d;return(d=(g=this.inner)==null?void 0:g.pushErrorFallbackNode)==null?void 0:d.call(g,c)}popErrorFallbackNode(){var c,g;return(g=(c=this.inner)==null?void 0:c.popErrorFallbackNode)==null?void 0:g.call(c)}};function Mr(s,c,g,d){if(s===void 0)return s;let h=c(s),_;if(h!==void 0)return Ki(h)?_=(d||Ovs)(h):_=h,pe.assertNode(_,g),_}function Ws(s,c,g,d,h){if(s===void 0)return s;let _=s.length;(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d);let S,R=-1,T=-1;d>0||h<_?S=s.hasTrailingComma&&d+h===_:(R=s.pos,T=s.end,S=s.hasTrailingComma);let W=wtn(s,c,g,d,h);if(W!==s){let V=me.createNodeArray(W,S);return TB(V,R,T),V}return s}function Ede(s,c,g,d,h){if(s===void 0)return s;let _=s.length;return(d===void 0||d<0)&&(d=0),(h===void 0||h>_-d)&&(h=_-d),wtn(s,c,g,d,h)}function wtn(s,c,g,d,h){let _,S=s.length;(d>0||h=2&&(h=Zvs(h,g)),g.setLexicalEnvironmentFlags(1,!1)),g.suspendLexicalEnvironment(),h}function Zvs(s,c){let g;for(let d=0;d{let S=dR,addSource:Rt,setSourceContent:Lt,addName:Ke,addMapping:Gt,appendSourceMap:nt,toJSON:dt,toString:()=>JSON.stringify(dt())};function Rt(st){_();let ir=Of(d,st,s.getCurrentDirectory(),s.getCanonicalFileName,!0),zt=W.get(ir);return zt===void 0&&(zt=T.length,T.push(ir),R.push(st),W.set(ir,zt)),S(),zt}function Lt(st,ir){if(_(),ir!==null){for(V||(V=[]);V.lengthir||Tt===ir&&ot>zt)}function Gt(st,ir,zt,Ht,Br,mn){pe.assert(st>=Ue,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),pe.assert(zt===void 0||zt>=0,"sourceIndex cannot be negative"),pe.assert(Ht===void 0||Ht>=0,"sourceLine cannot be negative"),pe.assert(Br===void 0||Br>=0,"sourceCharacter cannot be negative"),_(),(Pt(st,ir)||_r(zt,Ht,Br))&&(ur(),Ue=st,$e=ir,ht=!1,_t=!1,mt=!0),zt!==void 0&&Ht!==void 0&&Br!==void 0&&(Ye=zt,Tt=Ht,ot=Br,ht=!0,mn!==void 0&&(Qe=mn,_t=!0)),S()}function nt(st,ir,zt,Ht,Br,mn){pe.assert(st>=Ue,"generatedLine cannot backtrack"),pe.assert(ir>=0,"generatedCharacter cannot be negative"),_();let jn=[],Zi,Ns=xet(zt.mappings);for(let An of Ns){if(mn&&(An.generatedLine>mn.line||An.generatedLine===mn.line&&An.generatedCharacter>mn.character))break;if(Br&&(An.generatedLine=1024&&Gr()}function ur(){if(!(!mt||!Dt())){if(_(),Ie0&&(ge+=String.fromCharCode.apply(void 0,re),re.length=0)}function dt(){return ur(),Gr(),{version:3,file:c,sourceRoot:g,sources:T,names:M,mappings:ge,sourcesContent:V}}function pr(st){st<0?st=(-st<<1)+1:st=st<<1;do{let ir=st&31;st=st>>5,st>0&&(ir=ir|32),tr(Yvs(ir))}while(st>0)}}var bOt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,Net=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,Det=/^\s*(\/\/[@#] .*)?$/;function ket(s,c){return{getLineCount:()=>c.length,getLineText:g=>s.substring(c[g],c[g+1])}}function EOt(s){for(let c=s.getLineCount()-1;c>=0;c--){let g=s.getLineText(c),d=Net.exec(g);if(d)return d[1].trimEnd();if(!g.match(Det))break}}function Mvs(s){return typeof s=="string"||s===null}function Hvs(s){return s!==null&&typeof s=="object"&&s.version===3&&typeof s.file=="string"&&typeof s.mappings=="string"&&Ki(s.sources)&&ue(s.sources,Xs)&&(s.sourceRoot===void 0||s.sourceRoot===null||typeof s.sourceRoot=="string")&&(s.sourcesContent===void 0||s.sourcesContent===null||Ki(s.sourcesContent)&&ue(s.sourcesContent,Mvs))&&(s.names===void 0||s.names===null||Ki(s.names)&&ue(s.names,Xs))}function SOt(s){try{let c=JSON.parse(s);if(Hvs(c))return c}catch{}}function xet(s){let c=!1,g=0,d=0,h=0,_=0,S=0,R=0,T=0,W;return{get pos(){return g},get error(){return W},get state(){return V(!0,!0)},next(){for(;!c&&g=s.length)return ee("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Ze=Qvs(s.charCodeAt(g));if(Ze===-1)return ee("Invalid character in VLQ"),-1;Ee=(Ze&32)!==0,Te=Te|(Ze&31)<>1,Te=-Te):Te=Te>>1,Te}}function Ttn(s,c){return s===c||s.generatedLine===c.generatedLine&&s.generatedCharacter===c.generatedCharacter&&s.sourceIndex===c.sourceIndex&&s.sourceLine===c.sourceLine&&s.sourceCharacter===c.sourceCharacter&&s.nameIndex===c.nameIndex}function vOt(s){return s.sourceIndex!==void 0&&s.sourceLine!==void 0&&s.sourceCharacter!==void 0}function Yvs(s){return s>=0&&s<26?65+s:s>=26&&s<52?97+s-26:s>=52&&s<62?48+s-52:s===62?43:s===63?47:pe.fail(`${s}: not a base64 value`)}function Qvs(s){return s>=65&&s<=90?s-65:s>=97&&s<=122?s-97+26:s>=48&&s<=57?s-48+52:s===43?62:s===47?63:-1}function Rtn(s){return s.sourceIndex!==void 0&&s.sourcePosition!==void 0}function Ntn(s,c){return s.generatedPosition===c.generatedPosition&&s.sourceIndex===c.sourceIndex&&s.sourcePosition===c.sourcePosition}function Xvs(s,c){return pe.assert(s.sourceIndex===c.sourceIndex),Zt(s.sourcePosition,c.sourcePosition)}function Jvs(s,c){return Zt(s.generatedPosition,c.generatedPosition)}function Uvs(s){return s.sourcePosition}function Kvs(s){return s.generatedPosition}function BOt(s,c,g){let d=Mo(g),h=c.sourceRoot?Xc(c.sourceRoot,d):d,_=Xc(c.file,d),S=s.getSourceFileLike(_),R=c.sources.map(Ne=>Xc(Ne,h)),T=new Map(R.map((Ne,Te)=>[s.getCanonicalFileName(Ne),Te])),W,V,M;return{getSourcePosition:Ee,getGeneratedPosition:_e};function ee(Ne){let Te=S!==void 0?th(S,Ne.generatedLine,Ne.generatedCharacter,!0):-1,Ze,We;if(vOt(Ne)){let Ue=s.getSourceFileLike(R[Ne.sourceIndex]);Ze=c.sources[Ne.sourceIndex],We=Ue!==void 0?th(Ue,Ne.sourceLine,Ne.sourceCharacter,!0):-1}return{generatedPosition:Te,source:Ze,sourceIndex:Ne.sourceIndex,sourcePosition:We,nameIndex:Ne.nameIndex}}function re(){if(W===void 0){let Ne=xet(c.mappings),Te=Do(Ne,ee);Ne.error!==void 0?(s.log&&s.log(`Encountered error while decoding sourcemap: ${Ne.error}`),W=E):W=Te}return W}function ge(Ne){if(M===void 0){let Te=[];for(let Ze of re()){if(!Rtn(Ze))continue;let We=Te[Ze.sourceIndex];We||(Te[Ze.sourceIndex]=We=[]),We.push(Ze)}M=Te.map(Ze=>cl(Ze,Xvs,Ntn))}return M[Ne]}function Ie(){if(V===void 0){let Ne=[];for(let Te of re())Ne.push(Te);V=cl(Ne,Jvs,Ntn)}return V}function _e(Ne){let Te=T.get(s.getCanonicalFileName(Ne.fileName));if(Te===void 0)return Ne;let Ze=ge(Te);if(!jt(Ze))return Ne;let We=Sg(Ze,Ne.pos,Uvs,Zt);We<0&&(We=~We);let Ue=Ze[We];return Ue===void 0||Ue.sourceIndex!==Te?Ne:{fileName:_,pos:Ue.generatedPosition}}function Ee(Ne){let Te=Ie();if(!jt(Te))return Ne;let Ze=Sg(Te,Ne.pos,Kvs,Zt);Ze<0&&(Ze=~Ze);let We=Te[Ze];return We===void 0||!Rtn(We)?Ne:{fileName:R[We.sourceIndex],pos:We.sourcePosition}}}var Get={getSourcePosition:Fl,getGeneratedPosition:Fl};function Wy(s){return s=Dd(s),s?rd(s):0}function Dtn(s){return!s||!yN(s)&&!mv(s)?!1:jt(s.elements,ktn)}function ktn(s){return lv(s.propertyName||s.name)}function rR(s,c){return g;function g(h){return h.kind===308?c(h):d(h)}function d(h){return s.factory.createBundle(At(h.sourceFiles,c))}}function wOt(s){return!!JJ(s)}function W9e(s){if(JJ(s))return!0;let c=s.importClause&&s.importClause.namedBindings;if(!c||!yN(c))return!1;let g=0;for(let d of c.elements)ktn(d)&&g++;return g>0&&g!==c.elements.length||!!(c.elements.length-g)&&h3(s)}function Fet(s){return!W9e(s)&&(h3(s)||!!s.importClause&&yN(s.importClause.namedBindings)&&Dtn(s.importClause.namedBindings))}function Zet(s,c){let g=s.getEmitResolver(),d=s.getCompilerOptions(),h=[],_=new jvs,S=[],R=new Map,T=new Set,W,V=!1,M,ee=!1,re=!1,ge=!1;for(let Ne of c.statements)switch(Ne.kind){case 273:h.push(Ne),!re&&W9e(Ne)&&(re=!0),!ge&&Fet(Ne)&&(ge=!0);break;case 272:Ne.moduleReference.kind===284&&h.push(Ne);break;case 279:if(Ne.moduleSpecifier)if(!Ne.exportClause)h.push(Ne),ee=!0;else if(h.push(Ne),mv(Ne.exportClause))_e(Ne),ge||(ge=Dtn(Ne.exportClause));else{let Te=Ne.exportClause.name,Ze=HD(Te);R.get(Ze)||(Sde(S,Wy(Ne),Te),R.set(Ze,!0),W=Ft(W,Te)),re=!0}else _e(Ne);break;case 278:Ne.isExportEquals&&!M&&(M=Ne);break;case 244:if(Ga(Ne,32))for(let Te of Ne.declarationList.declarations)W=xtn(Te,R,W,S);break;case 263:Ga(Ne,32)&&Ee(Ne,void 0,Ga(Ne,2048));break;case 264:if(Ga(Ne,32))if(Ga(Ne,2048))V||(Sde(S,Wy(Ne),s.factory.getDeclarationName(Ne)),V=!0);else{let Te=Ne.name;Te&&!R.get(Vo(Te))&&(Sde(S,Wy(Ne),Te),R.set(Vo(Te),!0),W=Ft(W,Te))}break}let Ie=T$e(s.factory,s.getEmitHelperFactory(),c,d,ee,re,ge);return Ie&&h.unshift(Ie),{externalImports:h,exportSpecifiers:_,exportEquals:M,hasExportStarsToExportValues:ee,exportedBindings:S,exportedNames:W,exportedFunctions:T,externalHelpersImportDeclaration:Ie};function _e(Ne){for(let Te of Ma(Ne.exportClause,mv).elements){let Ze=HD(Te.name);if(!R.get(Ze)){let We=Te.propertyName||Te.name;if(We.kind!==11){Ne.moduleSpecifier||_.add(We,Te);let Ue=g.getReferencedImportDeclaration(We)||g.getReferencedValueDeclaration(We);if(Ue){if(Ue.kind===263){Ee(Ue,Te.name,lv(Te.name));continue}Sde(S,Wy(Ue),Te.name)}}R.set(Ze,!0),W=Ft(W,Te.name)}}}function Ee(Ne,Te,Ze){if(T.add(Dd(Ne,ih)),Ze)V||(Sde(S,Wy(Ne),Te??s.factory.getDeclarationName(Ne)),V=!0);else{Te??(Te=Ne.name);let We=HD(Te);R.get(We)||(Sde(S,Wy(Ne),Te),R.set(We,!0))}}}function xtn(s,c,g,d){if(Nu(s.name))for(let h of s.name.elements)yp(h)||(g=xtn(h,c,g,d));else if(!kp(s.name)){let h=Vo(s.name);c.get(h)||(c.set(h,!0),g=Ft(g,s.name),VF(s.name)&&Sde(d,Wy(s),s.name))}return g}function Sde(s,c,g){let d=s[c];return d?d.push(g):s[c]=d=[g],d}var kie=class Gce{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(Gce.toKey(c))}get(c){return this._map.get(Gce.toKey(c))}set(c,g){return this._map.set(Gce.toKey(c),g),this}delete(c){var g;return((g=this._map)==null?void 0:g.delete(Gce.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(TL(c)||kp(c)){let g=c.emitNode.autoGenerate;if((g.flags&7)===4){let d=pEe(c),h=_w(d)&&d!==c?Gce.toKey(d):`(generated@${rd(d)})`;return M3(!1,g.prefix,h,g.suffix,Gce.toKey)}else{let d=`(auto@${g.id})`;return M3(!1,g.prefix,d,g.suffix,Gce.toKey)}}return p(c)?Vo(c).slice(1):Vo(c)}},jvs=class extends kie{add(s,c){let g=this.get(s);return g?g.push(c):this.set(s,g=[c]),g}remove(s,c){let g=this.get(s);g&&(ef(g,c),g.length||this.delete(s))}};function lQ(s){return mA(s)||s.kind===9||v0(s.kind)||Ir(s)}function BN(s){return!Ir(s)&&lQ(s)}function vde(s){return s>=65&&s<=79}function Bde(s){switch(s){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function O9e(s){if(!VC(s))return;let c=QA(s.expression);return Dy(c)?c:void 0}function Gtn(s,c,g){for(let d=c;dqvs(d,c,g))}function zvs(s){return $vs(s)||fl(s)}function H9e(s){return Me(s.members,zvs)}function qvs(s,c,g){return pi(s)&&(!!s.initializer||!c)&&zh(s)===g}function $vs(s){return pi(s)&&zh(s)}function GEe(s){return s.kind===173&&s.initializer!==void 0}function TOt(s){return!cg(s)&&(NL(s)||t0(s))&&p(s.name)}function ROt(s){let c;if(s){let g=s.parameters,d=g.length>0&&SF(g[0]),h=d?1:0,_=d?g.length-1:g.length;for(let S=0;S<_;S++){let R=g[S+h];(c||p1(R))&&(c||(c=new Array(_)),c[S]=Rb(R))}}return c}function Vet(s,c){let g=Rb(s),d=c?ROt(lN(s)):void 0;if(!(!jt(g)&&!jt(d)))return{decorators:g,parameters:d}}function Y9e(s,c,g){switch(s.kind){case 178:case 179:return g?eBs(s,c,!0):Ftn(s,!1);case 175:return Ftn(s,g);case 173:return tBs(s);default:return}}function eBs(s,c,g){if(!s.body)return;let{firstAccessor:d,secondAccessor:h,getAccessor:_,setAccessor:S}=BP(c.members,s),R=p1(d)?d:h&&p1(h)?h:void 0;if(!R||s!==R)return;let T=Rb(R),W=g?ROt(S):void 0;if(!(!jt(T)&&!jt(W)))return{decorators:T,parameters:W,getDecorators:_&&Rb(_),setDecorators:S&&Rb(S)}}function Ftn(s,c){if(!s.body)return;let g=Rb(s),d=c?ROt(s):void 0;if(!(!jt(g)&&!jt(d)))return{decorators:g,parameters:d}}function tBs(s){let c=Rb(s);if(jt(c))return{decorators:c}}function rBs(s,c){for(;s;){let g=c(s);if(g!==void 0)return g;s=s.previous}}function NOt(s){return{data:s}}function Pet(s,c){var g,d;return TL(c)?(g=s?.generatedIdentifiers)==null?void 0:g.get(pEe(c)):(d=s?.identifiers)==null?void 0:d.get(c.escapedText)}function wU(s,c,g){TL(c)?(s.generatedIdentifiers??(s.generatedIdentifiers=new Map),s.generatedIdentifiers.set(pEe(c),g)):(s.identifiers??(s.identifiers=new Map),s.identifiers.set(c.escapedText,g))}function DOt(s,c){return rBs(s,g=>Pet(g.privateEnv,c))}function nBs(s){return!s.initializer&&Ir(s.name)}function FEe(s){return ue(s,nBs)}function Nz(s,c){if(!s||!Zg(s)||!une(s.text,c))return s;let g=fN(s.text,MEe(s.text,c));return g!==s.text?ua(gn(me.createStringLiteral(g,s.singleQuote),s),s):s}var kOt=(s=>(s[s.All=0]="All",s[s.ObjectRest=1]="ObjectRest",s))(kOt||{});function TU(s,c,g,d,h,_){let S=s,R;if(Dx(s))for(R=s.right;HZe(s.left)||rbe(s.left);)if(Dx(R))S=s=R,R=s.right;else return pe.checkDefined(Mr(R,c,un));let T,W={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:V,emitBindingOrAssignment:M,createArrayBindingOrAssignmentPattern:ee=>gBs(g.factory,ee),createObjectBindingOrAssignmentPattern:ee=>dBs(g.factory,ee),createArrayBindingOrAssignmentElement:fBs,visitor:c};if(R&&(R=Mr(R,c,un),pe.assert(R),Ir(R)&&xOt(s,R.escapedText)||GOt(s)?R=Dz(W,R,!1,S):h?R=Dz(W,R,!0,S):sp(s)&&(S=R)),wde(W,s,R,S,Dx(s)),R&&h){if(!jt(T))return R;T.push(R)}return g.factory.inlineExpressions(T)||g.factory.createOmittedExpression();function V(ee){T=Ft(T,ee)}function M(ee,re,ge,Ie){pe.assertNode(ee,_?Ir:un);let _e=_?_(ee,re,ge):gn(g.factory.createAssignment(pe.checkDefined(Mr(ee,c,un)),re),ge);_e.original=Ie,V(_e)}}function xOt(s,c){let g=ZP(s);return yJ(g)?iBs(g,c):Ir(g)?g.escapedText===c:!1}function iBs(s,c){let g=bie(s);for(let d of g)if(xOt(d,c))return!0;return!1}function GOt(s){let c=a9e(s);if(c&&Un(c)&&!wL(c.expression))return!0;let g=ZP(s);return!!g&&yJ(g)&&sBs(g)}function sBs(s){return!!F(bie(s),GOt)}function uQ(s,c,g,d,h,_=!1,S){let R,T=[],W=[],V={context:g,level:d,downlevelIteration:!!g.getCompilerOptions().downlevelIteration,hoistTempVariables:_,emitExpression:M,emitBindingOrAssignment:ee,createArrayBindingOrAssignmentPattern:re=>uBs(g.factory,re),createObjectBindingOrAssignmentPattern:re=>ABs(g.factory,re),createArrayBindingOrAssignmentElement:re=>pBs(g.factory,re),visitor:c};if(nc(s)){let re=AEe(s);re&&(Ir(re)&&xOt(s,re.escapedText)||GOt(s))&&(re=Dz(V,pe.checkDefined(Mr(re,V.visitor,un)),!1,re),s=g.factory.updateVariableDeclaration(s,s.name,void 0,void 0,re))}if(wde(V,s,h,s,S),R){let re=g.factory.createTempVariable(void 0);if(_){let ge=g.factory.inlineExpressions(R);R=void 0,ee(re,ge,void 0,void 0)}else{g.hoistVariableDeclaration(re);let ge=Ei(T);ge.pendingExpressions=Ft(ge.pendingExpressions,g.factory.createAssignment(re,ge.value)),Or(ge.pendingExpressions,R),ge.value=re}}for(let{pendingExpressions:re,name:ge,value:Ie,location:_e,original:Ee}of T){let Ne=g.factory.createVariableDeclaration(ge,void 0,void 0,re?g.factory.inlineExpressions(Ft(re,Ie)):Ie);Ne.original=Ee,gn(Ne,_e),W.push(Ne)}return W;function M(re){R=Ft(R,re)}function ee(re,ge,Ie,_e){pe.assertNode(re,RL),R&&(ge=g.factory.inlineExpressions(Ft(R,ge)),R=void 0),T.push({pendingExpressions:R,name:re,value:ge,location:Ie,original:_e})}}function wde(s,c,g,d,h){let _=ZP(c);if(!h){let S=Mr(AEe(c),s.visitor,un);S?g?(g=cBs(s,g,S,d),!BN(S)&&yJ(_)&&(g=Dz(s,g,!0,d))):g=S:g||(g=s.context.factory.createVoidZero())}bJ(_)?oBs(s,c,_,g,d):Bre(_)?aBs(s,c,_,g,d):s.emitBindingOrAssignment(_,g,d,c)}function oBs(s,c,g,d,h){let _=bie(g),S=_.length;if(S!==1){let W=!uP(c)||S!==0;d=Dz(s,d,W,h)}let R,T;for(let W=0;W=1&&!(V.transformFlags&98304)&&!(ZP(V).transformFlags&98304)&&!Un(M))R=Ft(R,Mr(V,s.visitor,_J));else{R&&(s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g),R=void 0);let ee=lBs(s,d,M);Un(M)&&(T=Ft(T,ee.argumentExpression)),wde(s,V,ee,V)}}}R&&s.emitBindingOrAssignment(s.createObjectBindingOrAssignmentPattern(R),d,h,g)}function aBs(s,c,g,d,h){let _=bie(g),S=_.length;if(s.level<1&&s.downlevelIteration)d=Dz(s,gn(s.context.getEmitHelperFactory().createReadHelper(d,S>0&&o9e(_[S-1])?void 0:S),h),!1,h);else if(S!==1&&(s.level<1||S===0)||ue(_,yp)){let W=!uP(c)||S!==0;d=Dz(s,d,W,h)}let R,T;for(let W=0;W=1)if(V.transformFlags&65536||s.hasTransformedPriorElement&&!Ztn(V)){s.hasTransformedPriorElement=!0;let M=s.context.factory.createTempVariable(void 0);s.hoistTempVariables&&s.context.hoistVariableDeclaration(M),T=Ft(T,[M,V]),R=Ft(R,s.createArrayBindingOrAssignmentElement(M))}else R=Ft(R,V);else{if(yp(V))continue;if(o9e(V)){if(W===S-1){let M=s.context.factory.createArraySliceCall(d,W);wde(s,V,M,V)}}else{let M=s.context.factory.createElementAccessExpression(d,W);wde(s,V,M,V)}}}if(R&&s.emitBindingOrAssignment(s.createArrayBindingOrAssignmentPattern(R),d,h,g),T)for(let[W,V]of T)wde(s,V,W,V)}function Ztn(s){let c=ZP(s);if(!c||yp(c))return!0;let g=a9e(s);if(g&&!Tw(g))return!1;let d=AEe(s);return d&&!BN(d)?!1:yJ(c)?ue(bie(c),Ztn):Ir(c)}function cBs(s,c,g,d){return c=Dz(s,c,!0,d),s.context.factory.createConditionalExpression(s.context.factory.createTypeCheck(c,"undefined"),void 0,g,void 0,c)}function lBs(s,c,g){let{factory:d}=s.context;if(Un(g)){let h=Dz(s,pe.checkDefined(Mr(g.expression,s.visitor,un)),!1,g);return s.context.factory.createElementAccessExpression(c,h)}else if(d1(g)||eQ(g)){let h=d.cloneNode(g);return s.context.factory.createElementAccessExpression(c,h)}else{let h=s.context.factory.createIdentifier(Vo(g));return s.context.factory.createPropertyAccessExpression(c,h)}}function Dz(s,c,g,d){if(Ir(c)&&g)return c;{let h=s.context.factory.createTempVariable(void 0);return s.hoistTempVariables?(s.context.hoistVariableDeclaration(h),s.emitExpression(gn(s.context.factory.createAssignment(h,c),d))):s.emitBindingOrAssignment(h,c,d,void 0),h}}function uBs(s,c){return pe.assertEachNode(c,o3),s.createArrayBindingPattern(c)}function gBs(s,c){return pe.assertEachNode(c,EJ),s.createArrayLiteralExpression(At(c,s.converters.convertToArrayAssignmentElement))}function ABs(s,c){return pe.assertEachNode(c,hg),s.createObjectBindingPattern(c)}function dBs(s,c){return pe.assertEachNode(c,gP),s.createObjectLiteralExpression(At(c,s.converters.convertToObjectAssignmentElement))}function pBs(s,c){return s.createBindingElement(void 0,void 0,c)}function fBs(s){return s}function IBs(s,c,g=s.createThis()){let d=s.createAssignment(c,g),h=s.createExpressionStatement(d),_=s.createBlock([h],!1),S=s.createClassStaticBlockDeclaration(_);return c_(S).classThis=c,S}function Tde(s){var c;if(!fl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return VC(g)&&Jm(g.expression,!0)&&Ir(g.expression.left)&&((c=s.emitNode)==null?void 0:c.classThis)===g.expression.left&&g.expression.right.kind===110}function Wet(s){var c;return!!((c=s.emitNode)!=null&&c.classThis)&&jt(s.members,Tde)}function FOt(s,c,g,d){if(Wet(c))return c;let h=IBs(s,g,d);c.name&&Hg(h.body.statements[0],c.name);let _=s.createNodeArray([h,...c.members]);gn(_,c.members);let S=pm(c)?s.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_):s.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,_);return c_(S).classThis=g,S}function Q9e(s,c,g){let d=Dd(HI(g));return(pm(d)||ih(d))&&!d.name&&Ga(d,2048)?s.createStringLiteral("default"):s.createStringLiteralFromNode(c)}function Ltn(s,c,g){let{factory:d}=s;if(g!==void 0)return{assignedName:d.createStringLiteral(g),name:c};if(Tw(c)||p(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(Tw(c.expression)&&!Ir(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let h=d.getGeneratedNameForNode(c);s.hoistVariableDeclaration(h);let _=s.getEmitHelperFactory().createPropKeyHelper(c.expression),S=d.createAssignment(h,_),R=d.updateComputedPropertyName(c,S);return{assignedName:h,name:R}}function hBs(s,c,g=s.factory.createThis()){let{factory:d}=s,h=s.getEmitHelperFactory().createSetFunctionNameHelper(g,c),_=d.createExpressionStatement(h),S=d.createBlock([_],!1),R=d.createClassStaticBlockDeclaration(S);return c_(R).assignedName=c,R}function kz(s){var c;if(!fl(s)||s.body.statements.length!==1)return!1;let g=s.body.statements[0];return VC(g)&&qD(g.expression,"___setFunctionName")&&g.expression.arguments.length>=2&&g.expression.arguments[1]===((c=s.emitNode)==null?void 0:c.assignedName)}function X9e(s){var c;return!!((c=s.emitNode)!=null&&c.assignedName)&&jt(s.members,kz)}function Oet(s){return!!s.name||X9e(s)}function J9e(s,c,g,d){if(X9e(c))return c;let{factory:h}=s,_=hBs(s,g,d);c.name&&Hg(_.body.statements[0],c.name);let S=Se(c.members,Tde)+1,R=c.members.slice(0,S),T=c.members.slice(S),W=h.createNodeArray([...R,_,...T]);return gn(W,c.members),c=pm(c)?h.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,W):h.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,W),c_(c).assignedName=g,c}function xie(s,c,g,d){if(d&&Zg(g)&&mye(g))return c;let{factory:h}=s,_=HI(c),S=vd(_)?Ma(J9e(s,_,g),vd):s.getEmitHelperFactory().createSetFunctionNameHelper(_,g);return h.restoreOuterExpressions(c,S)}function mBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=Ltn(s,c.name,d),R=xie(s,c.initializer,_,g);return h.updatePropertyAssignment(c,S,R)}function CBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.objectAssignmentInitializer),S=xie(s,c.objectAssignmentInitializer,_,g);return h.updateShorthandPropertyAssignment(c,c.name,S)}function _Bs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.initializer),S=xie(s,c.initializer,_,g);return h.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,S)}function yBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.initializer),S=xie(s,c.initializer,_,g);return h.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,S)}function bBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.name,c.initializer),S=xie(s,c.initializer,_,g);return h.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,S)}function EBs(s,c,g,d){let{factory:h}=s,{assignedName:_,name:S}=Ltn(s,c.name,d),R=xie(s,c.initializer,_,g);return h.updatePropertyDeclaration(c,c.modifiers,S,c.questionToken??c.exclamationToken,c.type,R)}function SBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):Q9e(h,c.left,c.right),S=xie(s,c.right,_,g);return h.updateBinaryExpression(c,c.left,c.operatorToken,S)}function vBs(s,c,g,d){let{factory:h}=s,_=d!==void 0?h.createStringLiteral(d):h.createStringLiteral(c.isExportEquals?"":"default"),S=xie(s,c.expression,_,g);return h.updateExportAssignment(c,c.modifiers,S)}function m1(s,c,g,d){switch(c.kind){case 304:return mBs(s,c,g,d);case 305:return CBs(s,c,g,d);case 261:return _Bs(s,c,g,d);case 170:return yBs(s,c,g,d);case 209:return bBs(s,c,g,d);case 173:return EBs(s,c,g,d);case 227:return SBs(s,c,g,d);case 278:return vBs(s,c,g,d)}}var ZOt=(s=>(s[s.LiftRestriction=0]="LiftRestriction",s[s.All=1]="All",s))(ZOt||{});function Met(s,c,g,d,h,_){let S=Mr(c.tag,g,un);pe.assert(S);let R=[void 0],T=[],W=[],V=c.template;if(_===0&&!Pye(V))return _s(c,g,s);let{factory:M}=s;if(GP(V))T.push(LOt(M,V)),W.push(VOt(M,V,d));else{T.push(LOt(M,V.head)),W.push(VOt(M,V.head,d));for(let re of V.templateSpans)T.push(LOt(M,re.literal)),W.push(VOt(M,re.literal,d)),R.push(pe.checkDefined(Mr(re.expression,g,un)))}let ee=s.getEmitHelperFactory().createTemplateObjectHelper(M.createArrayLiteralExpression(T),M.createArrayLiteralExpression(W));if(xm(d)){let re=M.createUniqueName("templateObject");h(re),R[0]=M.createLogicalOr(re,M.createAssignment(re,ee))}else R[0]=ee;return M.createCallExpression(S,void 0,R)}function LOt(s,c){return c.templateFlags&26656?s.createVoidZero():s.createStringLiteral(c.text)}function VOt(s,c,g){let d=c.rawText;if(d===void 0){pe.assertIsDefined(g,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=mF(g,c);let h=c.kind===15||c.kind===18;d=d.substring(1,d.length-(h?1:2))}return d=d.replace(/\r\n?/g,` -`),gn(s.createStringLiteral(d),c)}var BBs=!1;function POt(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getEmitResolver(),T=s.getCompilerOptions(),W=Mg(T),V=i0(T),M=!!T.experimentalDecorators,ee=T.emitDecoratorMetadata?OOt(s):void 0,re=s.onEmitNode,ge=s.onSubstituteNode;s.onEmitNode=dS,s.onSubstituteNode=gu,s.enableSubstitution(212),s.enableSubstitution(213);let Ie,_e,Ee,Ne,Te,Ze=0,We;return Ue;function Ue(ve){return ve.kind===309?$e(ve):Ye(ve)}function $e(ve){return c.createBundle(ve.sourceFiles.map(Ye))}function Ye(ve){if(ve.isDeclarationFile)return ve;Ie=ve;let mr=Tt(ve,pr);return hN(mr,s.readEmitHelpers()),Ie=void 0,mr}function Tt(ve,mr){let ln=Ne,ni=Te;ot(ve);let Ls=mr(ve);return Ne!==ln&&(Te=ni),Ne=ln,Ls}function ot(ve){switch(ve.kind){case 308:case 270:case 269:case 242:Ne=ve,Te=void 0;break;case 264:case 263:if(Ga(ve,128))break;ve.name?fr(ve):pe.assert(ve.kind===264||Ga(ve,2048));break}}function Qe(ve){return Tt(ve,mt)}function mt(ve){return ve.transformFlags&1?dt(ve):ve}function ht(ve){return Tt(ve,_t)}function _t(ve){switch(ve.kind){case 273:case 272:case 278:case 279:return Lt(ve);default:return mt(ve)}}function Rt(ve){let mr=$l(ve);if(mr===ve||Cf(ve))return!1;if(!mr||mr.kind!==ve.kind)return!0;switch(ve.kind){case 273:if(pe.assertNode(mr,Mf),ve.importClause!==mr.importClause||ve.attributes!==mr.attributes)return!0;break;case 272:if(pe.assertNode(mr,km),ve.name!==mr.name||ve.isTypeOnly!==mr.isTypeOnly||ve.moduleReference!==mr.moduleReference&&(fC(ve.moduleReference)||fC(mr.moduleReference)))return!0;break;case 279:if(pe.assertNode(mr,Gh),ve.exportClause!==mr.exportClause||ve.attributes!==mr.attributes)return!0;break}return!1}function Lt(ve){if(Rt(ve))return ve.transformFlags&1?_s(ve,Qe,s):ve;switch(ve.kind){case 273:return ao(ve);case 272:return gs(ve);case 278:return wn(ve);case 279:return Mn(ve);default:pe.fail("Unhandled ellided statement")}}function Ke(ve){return Tt(ve,Pt)}function Pt(ve){if(!(ve.kind===279||ve.kind===273||ve.kind===274||ve.kind===272&&ve.moduleReference.kind===284))return ve.transformFlags&1||Ga(ve,32)?dt(ve):ve}function _r(ve){return mr=>Tt(mr,ln=>Gt(ln,ve))}function Gt(ve,mr){switch(ve.kind){case 177:return hn(ve);case 173:return yr(ve,mr);case 178:return Qu(ve,mr);case 179:return Tg(ve,mr);case 175:return Oa(ve,mr);case 176:return _s(ve,Qe,s);case 241:return ve;case 182:return;default:return pe.failBadSyntaxKind(ve)}}function nt(ve){return mr=>Tt(mr,ln=>Dt(ln,ve))}function Dt(ve,mr){switch(ve.kind){case 304:case 305:case 306:return Qe(ve);case 178:return Qu(ve,mr);case 179:return Tg(ve,mr);case 175:return Oa(ve,mr);default:return pe.failBadSyntaxKind(ve)}}function tr(ve){return So(ve)?void 0:Qe(ve)}function ur(ve){return Ig(ve)?void 0:Qe(ve)}function Gr(ve){if(!So(ve)&&!(HY(ve.kind)&28895)&&!(_e&&ve.kind===95))return ve}function dt(ve){if(Lc(ve)&&Ga(ve,128))return c.createNotEmittedStatement(ve);switch(ve.kind){case 95:case 90:return _e?void 0:ve;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 189:case 190:case 191:case 192:case 188:case 183:case 169:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 186:case 185:case 187:case 184:case 193:case 194:case 195:case 197:case 198:case 199:case 200:case 201:case 202:case 182:return;case 266:return c.createNotEmittedStatement(ve);case 271:return;case 265:return c.createNotEmittedStatement(ve);case 264:return Br(ve);case 232:return mn(ve);case 299:return ba(ve);case 234:return Wo(ve);case 211:return st(ve);case 177:case 173:case 175:case 178:case 179:case 176:return pe.fail("Class and object literal elements must be visited with their respective visitors");case 263:return Cs(ve);case 219:return Tu(ve);case 220:return Pr(ve);case 170:return Pn(ve);case 218:return nr(ve);case 217:case 235:return Fr(ve);case 239:return Dn(ve);case 214:return hr(ve);case 215:return En(ve);case 216:return Ni(ve);case 236:return Kr(ve);case 267:return ds(ve);case 244:return pt(ve);case 261:return it(ve);case 268:return Ot(ve);case 272:return gs(ve);case 286:return Gi(ve);case 287:return nn(ve);default:return _s(ve,Qe,s)}}function pr(ve){let mr=a_(T,"alwaysStrict")&&!(xm(ve)&&V>=5)&&!Zu(ve);return c.updateSourceFile(ve,Ret(ve.statements,ht,s,0,mr))}function st(ve){return c.updateObjectLiteralExpression(ve,Ws(ve.properties,nt(ve),yw))}function ir(ve){let mr=0;jt(Let(ve,!0,!0))&&(mr|=1);let ln=BB(ve);return ln&&HI(ln.expression).kind!==106&&(mr|=64),Rx(M,ve)&&(mr|=2),HJ(M,ve)&&(mr|=4),fs(ve)?mr|=8:gg(ve)?mr|=32:mc(ve)&&(mr|=16),mr}function zt(ve){return!!(ve.transformFlags&8192)}function Ht(ve){return p1(ve)||jt(ve.typeParameters)||jt(ve.heritageClauses,zt)||jt(ve.members,zt)}function Br(ve){let mr=ir(ve),ln=W<=1&&!!(mr&7);if(!Ht(ve)&&!Rx(M,ve)&&!fs(ve))return c.updateClassDeclaration(ve,Ws(ve.modifiers,Gr,Ig),ve.name,void 0,Ws(ve.heritageClauses,Qe,h1),Ws(ve.members,_r(ve),PI));ln&&s.startLexicalEnvironment();let ni=ln||mr&8,Ls=ni?Ws(ve.modifiers,ur,dp):Ws(ve.modifiers,Qe,dp);mr&2&&(Ls=Zi(Ls,ve));let Go=ni&&!ve.name||mr&4||mr&1?ve.name??c.getGeneratedNameForNode(ve):ve.name,Ss=c.updateClassDeclaration(ve,Ls,Go,void 0,Ws(ve.heritageClauses,Qe,h1),jn(ve)),Uc=tA(ve);mr&1&&(Uc|=64),ti(Ss,Uc);let rl;if(ln){let xd=[Ss],Lg=QL(Yu(Ie.text,ve.members.end),20),yf=c.getInternalName(ve),rm=c.createPartiallyEmittedExpression(yf);AU(rm,Lg.end),ti(rm,3072);let _h=c.createReturnStatement(rm);iz(_h,Lg.pos),ti(_h,3840),xd.push(_h),Sw(xd,s.endLexicalEnvironment());let Gp=c.createImmediatelyInvokedArrowFunction(xd);sie(Gp,1);let oh=c.createVariableDeclaration(c.getLocalName(ve,!1,!1),void 0,void 0,Gp);ua(oh,ve);let b1=c.createVariableStatement(void 0,c.createVariableDeclarationList([oh],1));ua(b1,ve),hh(b1,ve),Hg(b1,jD(ve)),N0(b1),rl=b1}else rl=Ss;if(ni){if(mr&8)return[rl,Ag(ve)];if(mr&32)return[rl,c.createExportDefault(c.getLocalName(ve,!1,!0))];if(mr&16)return[rl,c.createExternalModuleExport(c.getDeclarationName(ve,!1,!0))]}return rl}function mn(ve){let mr=Ws(ve.modifiers,ur,dp);return Rx(M,ve)&&(mr=Zi(mr,ve)),c.updateClassExpression(ve,mr,ve.name,void 0,Ws(ve.heritageClauses,Qe,h1),jn(ve))}function jn(ve){let mr=Ws(ve.members,_r(ve),PI),ln,ni=lN(ve),Ls=ni&&Me(ni.parameters,Za=>Ve(Za,ni));if(Ls)for(let Za of Ls){let Go=c.createPropertyDeclaration(void 0,Za.name,void 0,void 0,void 0);ua(Go,Za),ln=Ft(ln,Go)}return ln?(ln=Or(ln,mr),gn(c.createNodeArray(ln),ve.members)):mr}function Zi(ve,mr){let ln=An(mr,mr);if(jt(ln)){let ni=[];Or(ni,t_(ve,dEe)),Or(ni,Me(ve,So)),Or(ni,ln),Or(ni,Me(cp(ve,dEe),Ig)),ve=gn(c.createNodeArray(ni),ve)}return ve}function Ns(ve,mr,ln){if(xa(ln)&&hye(M,mr,ln)){let ni=An(mr,ln);if(jt(ni)){let Ls=[];Or(Ls,Me(ve,So)),Or(Ls,ni),Or(Ls,Me(ve,Ig)),ve=gn(c.createNodeArray(Ls),ve)}}return ve}function An(ve,mr){if(M)return BBs?ks(ve,mr):si(ve,mr)}function si(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=g().createMetadataHelper("design:type",ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(Zn(ve)){let ni=g().createMetadataHelper("design:paramtypes",ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr));ln=Ft(ln,c.createDecorator(ni))}if(su(ve)){let ni=g().createMetadataHelper("design:returntype",ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve));ln=Ft(ln,c.createDecorator(ni))}return ln}}function ks(ve,mr){if(ee){let ln;if(Ic(ve)){let ni=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(Zn(ve)){let ni=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeParameterTypesOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve,mr)));ln=Ft(ln,ni)}if(su(ve)){let ni=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),ee.serializeReturnTypeOfNode({currentLexicalScope:Ne,currentNameScope:mr},ve)));ln=Ft(ln,ni)}if(ln){let ni=g().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(ln,!0));return[c.createDecorator(ni)]}}}function Ic(ve){let mr=ve.kind;return mr===175||mr===178||mr===179||mr===173}function su(ve){return ve.kind===175}function Zn(ve){switch(ve.kind){case 264:case 232:return lN(ve)!==void 0;case 175:case 178:case 179:return!0}return!1}function ya(ve,mr){let ln=ve.name;return p(ln)?c.createIdentifier(""):Un(ln)?mr&&!BN(ln.expression)?c.getGeneratedNameForNode(ln):ln.expression:Ir(ln)?c.createStringLiteral(Vo(ln)):c.cloneNode(ln)}function Gl(ve){let mr=ve.name;if(M&&Un(mr)&&p1(ve)){let ln=Mr(mr.expression,Qe,un);pe.assert(ln);let ni=o2(ln);if(!BN(ni)){let Ls=c.getGeneratedNameForNode(mr);return S(Ls),c.updateComputedPropertyName(mr,c.createAssignment(Ls,ln))}}return pe.checkDefined(Mr(mr,Qe,VI))}function ba(ve){if(ve.token!==119)return _s(ve,Qe,s)}function Wo(ve){return c.updateExpressionWithTypeArguments(ve,pe.checkDefined(Mr(ve.expression,Qe,D_)),void 0)}function hc(ve){return!sf(ve.body)}function yr(ve,mr){let ln=ve.flags&33554432||Ga(ve,64);if(ln&&!(M&&p1(ve)))return;let ni=xa(mr)?ln?Ws(ve.modifiers,ur,dp):Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ni=Ns(ni,ve,mr),ln?c.updatePropertyDeclaration(ve,Nn(ni,c.createModifiersFromModifierFlags(128)),pe.checkDefined(Mr(ve.name,Qe,VI)),void 0,void 0,void 0):c.updatePropertyDeclaration(ve,ni,Gl(ve),void 0,void 0,Mr(ve.initializer,Qe,un))}function hn(ve){if(hc(ve))return c.updateConstructorDeclaration(ve,void 0,vI(ve.parameters,Qe,s),lo(ve.body,ve))}function Oi(ve,mr,ln,ni,Ls,Za){let Go=ni[Ls],Ss=mr[Go];if(Or(ve,Ws(mr,Qe,Lc,ln,Go-ln)),mU(Ss)){let Uc=[];Oi(Uc,Ss.tryBlock.statements,0,ni,Ls+1,Za);let rl=c.createNodeArray(Uc);gn(rl,Ss.tryBlock.statements),ve.push(c.updateTryStatement(Ss,c.updateBlock(Ss.tryBlock,Uc),Mr(Ss.catchClause,Qe,iQ),Mr(Ss.finallyBlock,Qe,$u)))}else Or(ve,Ws(mr,Qe,Lc,Go,1)),Or(ve,Za);Or(ve,Ws(mr,Qe,Lc,Go+1))}function lo(ve,mr){let ln=mr&&Me(mr.parameters,Uc=>Ve(Uc,mr));if(!jt(ln))return uS(ve,Qe,s);let ni=[];h();let Ls=c.copyPrologue(ve.statements,ni,!1,Qe),Za=M9e(ve.statements,Ls),Go=Xt(ln,pa);Za.length?Oi(ni,ve.statements,Ls,Za,0,Go):(Or(ni,Go),Or(ni,Ws(ve.statements,Qe,Lc,Ls))),ni=c.mergeLexicalEnvironment(ni,_());let Ss=c.createBlock(gn(c.createNodeArray(ni),ve.statements),!0);return gn(Ss,ve),ua(Ss,ve),Ss}function pa(ve){let mr=ve.name;if(!Ir(mr))return;let ln=XA(gn(c.cloneNode(mr),mr),mr.parent);ti(ln,3168);let ni=XA(gn(c.cloneNode(mr),mr),mr.parent);return ti(ni,3072),N0(pz(gn(ua(c.createExpressionStatement(c.createAssignment(gn(c.createPropertyAccessExpression(c.createThis(),ln),ve.name),ni)),ve),KD(ve,-1))))}function Oa(ve,mr){if(!(ve.transformFlags&1))return ve;if(!hc(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateMethodDeclaration(ve,ln,ve.asteriskToken,Gl(ve),void 0,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s))}function tl(ve){return!(sf(ve.body)&&Ga(ve,64))}function Qu(ve,mr){if(!(ve.transformFlags&1))return ve;if(!tl(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateGetAccessorDeclaration(ve,ln,Gl(ve),vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([]))}function Tg(ve,mr){if(!(ve.transformFlags&1))return ve;if(!tl(ve))return;let ln=xa(mr)?Ws(ve.modifiers,Qe,dp):Ws(ve.modifiers,tr,dp);return ln=Ns(ln,ve,mr),c.updateSetAccessorDeclaration(ve,ln,Gl(ve),vI(ve.parameters,Qe,s),uS(ve.body,Qe,s)||c.createBlock([]))}function Cs(ve){if(!hc(ve))return c.createNotEmittedStatement(ve);let mr=c.updateFunctionDeclaration(ve,Ws(ve.modifiers,Gr,Ig),ve.asteriskToken,ve.name,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([]));if(fs(ve)){let ln=[mr];return _u(ln,ve),ln}return mr}function Tu(ve){return hc(ve)?c.updateFunctionExpression(ve,Ws(ve.modifiers,Gr,Ig),ve.asteriskToken,ve.name,void 0,vI(ve.parameters,Qe,s),void 0,uS(ve.body,Qe,s)||c.createBlock([])):c.createOmittedExpression()}function Pr(ve){return c.updateArrowFunction(ve,Ws(ve.modifiers,Gr,Ig),void 0,vI(ve.parameters,Qe,s),void 0,ve.equalsGreaterThanToken,uS(ve.body,Qe,s))}function Pn(ve){if(SF(ve))return;let mr=c.updateParameterDeclaration(ve,Ws(ve.modifiers,ln=>So(ln)?Qe(ln):void 0,dp),ve.dotDotDotToken,pe.checkDefined(Mr(ve.name,Qe,RL)),void 0,void 0,Mr(ve.initializer,Qe,un));return mr!==ve&&(hh(mr,ve),gn(mr,Av(ve)),Hg(mr,Av(ve)),ti(mr.name,64)),mr}function pt(ve){if(fs(ve)){let mr=iU(ve.declarationList);return mr.length===0?void 0:gn(c.createExpressionStatement(c.inlineExpressions(At(mr,on))),ve)}else return _s(ve,Qe,s)}function on(ve){let mr=ve.name;return Nu(mr)?TU(ve,Qe,s,0,!1,AI):gn(c.createAssignment(pp(mr),pe.checkDefined(Mr(ve.initializer,Qe,un))),ve)}function it(ve){let mr=c.updateVariableDeclaration(ve,pe.checkDefined(Mr(ve.name,Qe,RL)),void 0,void 0,Mr(ve.initializer,Qe,un));return ve.type&&PLe(mr.name,ve.type),mr}function nr(ve){let mr=HI(ve.expression,-55);if(Ed(mr)||Qg(mr)){let ln=Mr(ve.expression,Qe,un);return pe.assert(ln),c.createPartiallyEmittedExpression(ln,ve)}return _s(ve,Qe,s)}function Fr(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Kr(ve){let mr=Mr(ve.expression,Qe,D_);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function Dn(ve){let mr=Mr(ve.expression,Qe,un);return pe.assert(mr),c.createPartiallyEmittedExpression(mr,ve)}function hr(ve){return c.updateCallExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Ws(ve.arguments,Qe,un))}function En(ve){return c.updateNewExpression(ve,pe.checkDefined(Mr(ve.expression,Qe,un)),void 0,Ws(ve.arguments,Qe,un))}function Ni(ve){return c.updateTaggedTemplateExpression(ve,pe.checkDefined(Mr(ve.tag,Qe,un)),void 0,pe.checkDefined(Mr(ve.template,Qe,AP)))}function Gi(ve){return c.updateJsxSelfClosingElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,kL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,nQ)))}function nn(ve){return c.updateJsxOpeningElement(ve,pe.checkDefined(Mr(ve.tagName,Qe,kL)),void 0,pe.checkDefined(Mr(ve.attributes,Qe,nQ)))}function bn(ve){return!VA(ve)||Fb(T)}function ds(ve){if(!bn(ve))return c.createNotEmittedStatement(ve);let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=Dl(ve),Za=yu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let rl=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(rl,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,Mt(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(kB(Uc,void 0),x3(Uc,void 0)),gn(Uc,ve),Gw(Uc,ln),mr.push(Uc),mr}function Mt(ve,mr){let ln=Ee;Ee=mr;let ni=[];d();let Ls=At(ve.members,cn);return Sw(ni,_()),Or(ni,Ls),Ee=ln,c.createBlock(gn(c.createNodeArray(ni),ve.members),!0)}function cn(ve){let mr=ya(ve,!1),ln=R.getEnumMemberValue(ve),ni=Bt(ve,ln?.value),Ls=c.createAssignment(c.createElementAccessExpression(Ee,mr),ni),Za=typeof ln?.value=="string"||ln?.isSyntacticallyString?Ls:c.createAssignment(c.createElementAccessExpression(Ee,Ls),mr);return gn(c.createExpressionStatement(gn(Za,ve)),ve)}function Bt(ve,mr){return mr!==void 0?typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr):(tm(),ve.initializer?pe.checkDefined(Mr(ve.initializer,Qe,un)):c.createVoidZero())}function xe(ve){let mr=$l(ve,xh);return mr?wet(mr,Fb(T)):!0}function fr(ve){Te||(Te=new Map);let mr=In(ve);Te.has(mr)||Te.set(mr,ve)}function Je(ve){if(Te){let mr=In(ve);return Te.get(mr)===ve}return!0}function In(ve){return pe.assertNode(ve.name,Ir),ve.name.escapedText}function Hn(ve,mr){let ln=c.createVariableDeclaration(c.getLocalName(mr,!1,!0)),ni=Ne.kind===308?0:1,Ls=c.createVariableStatement(Ws(mr.modifiers,Gr,Ig),c.createVariableDeclarationList([ln],ni));return ua(ln,mr),kB(ln,void 0),x3(ln,void 0),ua(Ls,mr),fr(mr),Je(mr)?(mr.kind===267?Hg(Ls.declarationList,mr):Hg(Ls,mr),hh(Ls,mr),Gw(Ls,2048),ve.push(Ls),!0):!1}function Ot(ve){if(!xe(ve))return c.createNotEmittedStatement(ve);pe.assertNode(ve.name,Ir,"A TypeScript namespace should have an Identifier name."),jp();let mr=[],ln=4,ni=Hn(mr,ve);ni&&(V!==4||Ne!==Ie)&&(ln|=1024);let Ls=Dl(ve),Za=yu(ve),Go=fs(ve)?c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0):c.getDeclarationName(ve,!1,!0),Ss=c.createLogicalOr(Go,c.createAssignment(Go,c.createObjectLiteralExpression()));if(fs(ve)){let rl=c.getLocalName(ve,!1,!0);Ss=c.createAssignment(rl,Ss)}let Uc=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Ls)],void 0,$r(ve,Za)),void 0,[Ss]));return ua(Uc,ve),ni&&(kB(Uc,void 0),x3(Uc,void 0)),gn(Uc,ve),Gw(Uc,ln),mr.push(Uc),mr}function $r(ve,mr){let ln=Ee,ni=_e,Ls=Te;Ee=mr,_e=ve,Te=void 0;let Za=[];d();let Go,Ss;if(ve.body)if(ve.body.kind===269)Tt(ve.body,rl=>Or(Za,Ws(rl.statements,Ke,Lc))),Go=ve.body.statements,Ss=ve.body;else{let rl=Ot(ve.body);rl&&(Ki(rl)?Or(Za,rl):Za.push(rl));let xd=ri(ve).body;Go=KD(xd.statements,-1)}Sw(Za,_()),Ee=ln,_e=ni,Te=Ls;let Uc=c.createBlock(gn(c.createNodeArray(Za),Go),!0);return gn(Uc,Ss),(!ve.body||ve.body.kind!==269)&&ti(Uc,tA(Uc)|3072),Uc}function ri(ve){if(ve.body.kind===268)return ri(ve.body)||ve.body}function ao(ve){if(!ve.importClause)return ve;if(ve.importClause.isTypeOnly)return;let mr=Mr(ve.importClause,Bs,Vw);return mr?c.updateImportDeclaration(ve,void 0,mr,ve.moduleSpecifier,ve.attributes):void 0}function Bs(ve){pe.assert(ve.phaseModifier!==156);let mr=QI(ve)?ve.name:void 0,ln=Mr(ve.namedBindings,Ys,wx);return mr||ln?c.updateImportClause(ve,ve.phaseModifier,mr,ln):void 0}function Ys(ve){if(ve.kind===275)return QI(ve)?ve:void 0;{let mr=T.verbatimModuleSyntax,ln=Ws(ve.elements,tn,uy);return mr||jt(ln)?c.updateNamedImports(ve,ln):void 0}}function tn(ve){return!ve.isTypeOnly&&QI(ve)?ve:void 0}function wn(ve){return T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve)?_s(ve,Qe,s):void 0}function Mn(ve){if(ve.isTypeOnly)return;if(!ve.exportClause||tk(ve.exportClause))return c.updateExportDeclaration(ve,ve.modifiers,ve.isTypeOnly,ve.exportClause,ve.moduleSpecifier,ve.attributes);let mr=!!T.verbatimModuleSyntax,ln=Mr(ve.exportClause,ni=>Wi(ni,mr),yre);return ln?c.updateExportDeclaration(ve,void 0,ve.isTypeOnly,ln,ve.moduleSpecifier,ve.attributes):void 0}function ci(ve,mr){let ln=Ws(ve.elements,Vn,R0);return mr||jt(ln)?c.updateNamedExports(ve,ln):void 0}function es(ve){return c.updateNamespaceExport(ve,pe.checkDefined(Mr(ve.name,Qe,Ir)))}function Wi(ve,mr){return tk(ve)?es(ve):ci(ve,mr)}function Vn(ve){return!ve.isTypeOnly&&(T.verbatimModuleSyntax||R.isValueAliasDeclaration(ve))?ve:void 0}function Ui(ve){return QI(ve)||!xm(Ie)&&R.isTopLevelValueImportEqualsWithEntityName(ve)}function gs(ve){if(ve.isTypeOnly)return;if(LL(ve))return QI(ve)?_s(ve,Qe,s):void 0;if(!Ui(ve))return;let mr=cEe(c,ve.moduleReference);return ti(mr,7168),mc(ve)||!fs(ve)?ua(gn(c.createVariableStatement(Ws(ve.modifiers,Gr,Ig),c.createVariableDeclarationList([ua(c.createVariableDeclaration(ve.name,void 0,void 0,mr),ve)])),ve),ve):ua(wI(ve.name,mr,ve),ve)}function fs(ve){return _e!==void 0&&Ga(ve,32)}function bi(ve){return _e===void 0&&Ga(ve,32)}function mc(ve){return bi(ve)&&!Ga(ve,2048)}function gg(ve){return bi(ve)&&Ga(ve,2048)}function Ag(ve){let mr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Ee,ve,!1,!0),c.getLocalName(ve));Hg(mr,Gy(ve.name?ve.name.pos:ve.pos,ve.end));let ln=c.createExpressionStatement(mr);return Hg(ln,Gy(-1,ve.end)),ln}function _u(ve,mr){ve.push(Ag(mr))}function wI(ve,mr,ln){return gn(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Ee,ve,!1,!0),mr)),ln)}function AI(ve,mr,ln){return gn(c.createAssignment(pp(ve),mr),ln)}function pp(ve){return c.getNamespaceMemberName(Ee,ve,!1,!0)}function Dl(ve){let mr=c.getGeneratedNameForNode(ve);return Hg(mr,ve.name),mr}function yu(ve){return c.getGeneratedNameForNode(ve)}function tm(){Ze&8||(Ze|=8,s.enableSubstitution(80))}function jp(){Ze&2||(Ze|=2,s.enableSubstitution(80),s.enableSubstitution(305),s.enableEmitNotification(268))}function Xg(ve){return Dd(ve).kind===268}function sh(ve){return Dd(ve).kind===267}function dS(ve,mr,ln){let ni=We,Ls=Ie;ll(mr)&&(Ie=mr),Ze&2&&Xg(mr)&&(We|=2),Ze&8&&sh(mr)&&(We|=8),re(ve,mr,ln),We=ni,Ie=Ls}function gu(ve,mr){return mr=ge(ve,mr),ve===1?KA(mr):a0(mr)?bg(mr):mr}function bg(ve){if(Ze&2){let mr=ve.name,ln=oi(mr);if(ln){if(ve.objectAssignmentInitializer){let ni=c.createAssignment(ln,ve.objectAssignmentInitializer);return gn(c.createPropertyAssignment(mr,ni),ve)}return gn(c.createPropertyAssignment(mr,ln),ve)}}return ve}function KA(ve){switch(ve.kind){case 80:return TA(ve);case 212:return $d(ve);case 213:return YI(ve)}return ve}function TA(ve){return oi(ve)||ve}function oi(ve){if(Ze&We&&!kp(ve)&&!VF(ve)){let mr=R.getReferencedExportContainer(ve,!1);if(mr&&mr.kind!==308&&(We&2&&mr.kind===268||We&8&&mr.kind===267))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(mr),ve),ve)}}function $d(ve){return WC(ve)}function YI(ve){return WC(ve)}function Fh(ve){return ve.replace(/\*\//g,"*_/")}function WC(ve){let mr=_f(ve);if(mr!==void 0){LLe(ve,mr);let ln=typeof mr=="string"?c.createStringLiteral(mr):mr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-mr)):c.createNumericLiteral(mr);if(!T.removeComments){let ni=Dd(ve,_p);Iz(ln,3,` ${Fh(xp(ni))} `)}return ln}return ve}function _f(ve){if(!sS(T))return jo(ve)||Yg(ve)?R.getConstantValue(ve):void 0}function QI(ve){return T.verbatimModuleSyntax||wo(ve)||R.isReferencedAliasDeclaration(ve)}}function WOt(s){let{factory:c,getEmitHelperFactory:g,hoistVariableDeclaration:d,endLexicalEnvironment:h,startLexicalEnvironment:_,resumeLexicalEnvironment:S,addBlockScopedVariable:R}=s,T=s.getEmitResolver(),W=s.getCompilerOptions(),V=Mg(W),M=Pne(W),ee=!!W.experimentalDecorators,re=!M,ge=M&&V<9,Ie=re||ge,_e=V<9,Ee=V<99?-1:M?0:3,Ne=V<9,Te=Ne&&V>=2,Ze=Ie||_e||Ee===-1,We=s.onSubstituteNode;s.onSubstituteNode=YI;let Ue=s.onEmitNode;s.onEmitNode=$d;let $e=!1,Ye=0,Tt,ot,Qe,mt,ht=new Map,_t=new Set,Rt,Lt,Ke=!1,Pt=!1;return rR(s,_r);function _r(ve){if(ve.isDeclarationFile||(mt=void 0,$e=!!(g1(ve)&32),!Ze&&!$e))return ve;let mr=_s(ve,nt,s);return hN(mr,s.readEmitHelpers()),mr}function Gt(ve){switch(ve.kind){case 129:return hn()?void 0:ve;default:return Gs(ve,Ig)}}function nt(ve){if(!(ve.transformFlags&16777216)&&!(ve.transformFlags&134234112))return ve;switch(ve.kind){case 264:return bn(ve);case 232:return Mt(ve);case 176:case 173:return pe.fail("Use `classElementVisitor` instead.");case 304:return Ht(ve);case 244:return Br(ve);case 261:return mn(ve);case 170:return jn(ve);case 209:return Zi(ve);case 278:return Ns(ve);case 81:return ir(ve);case 212:return Qu(ve);case 213:return Tg(ve);case 225:case 226:return Cs(ve,!1);case 227:return Fr(ve,!1);case 218:return Dn(ve,!1);case 214:return pt(ve);case 245:return Pr(ve);case 216:return on(ve);case 249:return Tu(ve);case 110:return xe(ve);case 263:case 219:return Zn(void 0,Dt,ve);case 177:case 175:case 178:case 179:return Zn(ve,Dt,ve);default:return Dt(ve)}}function Dt(ve){return _s(ve,nt,s)}function tr(ve){switch(ve.kind){case 225:case 226:return Cs(ve,!0);case 227:return Fr(ve,!0);case 357:return Kr(ve,!0);case 218:return Dn(ve,!0);default:return nt(ve)}}function ur(ve){switch(ve.kind){case 299:return _s(ve,ur,s);case 234:return Gi(ve);default:return nt(ve)}}function Gr(ve){switch(ve.kind){case 211:case 210:return oi(ve);default:return nt(ve)}}function dt(ve){switch(ve.kind){case 177:return Zn(ve,ks,ve);case 178:case 179:case 175:return Zn(ve,su,ve);case 173:return Zn(ve,Oi,ve);case 176:return Zn(ve,Bt,ve);case 168:return si(ve);case 241:return ve;default:return dp(ve)?Gt(ve):nt(ve)}}function pr(ve){switch(ve.kind){case 168:return si(ve);default:return nt(ve)}}function st(ve){switch(ve.kind){case 173:return yr(ve);case 178:case 179:return dt(ve);default:pe.assertMissingNode(ve,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function ir(ve){return!_e||Lc(ve.parent)?ve:ua(c.createIdentifier(""),ve)}function zt(ve){let mr=yu(ve.left);if(mr){let ln=Mr(ve.right,nt,un);return ua(g().createClassPrivateFieldInHelper(mr.brandCheckIdentifier,ln),ve)}return _s(ve,nt,s)}function Ht(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Br(ve){let mr=Qe;Qe=[];let ln=_s(ve,nt,s),ni=jt(Qe)?[ln,...Qe]:ln;return Qe=mr,ni}function mn(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function jn(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Zi(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function Ns(ve){return kb(ve,nr)&&(ve=m1(s,ve,!0,ve.isExportEquals?"":"default")),_s(ve,nt,s)}function An(ve){return jt(ot)&&(gI(ve)?(ot.push(ve.expression),ve=c.updateParenthesizedExpression(ve,c.inlineExpressions(ot))):(ot.push(ve),ve=c.inlineExpressions(ot)),ot=void 0),ve}function si(ve){let mr=Mr(ve.expression,nt,un);return c.updateComputedPropertyName(ve,An(mr))}function ks(ve){return Rt?In(ve,Rt):Dt(ve)}function Ic(ve){return!!(_e||zh(ve)&&g1(ve)&32)}function su(ve){if(pe.assert(!p1(ve)),!pC(ve)||!Ic(ve))return _s(ve,dt,s);let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;let ln=ya(ve);ln&&fs().push(c.createAssignment(ln,c.createFunctionExpression(Me(ve.modifiers,ni=>Ig(ni)&&!Ge(ni)&&!It(ni)),ve.asteriskToken,ln,void 0,vI(ve.parameters,nt,s),void 0,uS(ve.body,nt,s))))}function Zn(ve,mr,ln){if(ve!==Lt){let ni=Lt;Lt=ve;let Ls=mr(ln);return Lt=ni,Ls}return mr(ln)}function ya(ve){pe.assert(p(ve.name));let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),mr.kind==="m")return mr.methodName;if(mr.kind==="a"){if(bB(ve))return mr.getterName;if(cv(ve))return mr.setterName}}function Gl(){let ve=Ui();return ve.classThis??ve.classConstructor??Rt?.name}function ba(ve){let mr=DB(ve),ln=XT(ve),ni=ve.name,Ls=ni,Za=ni;if(Un(ni)&&!BN(ni.expression)){let yf=l9e(ni);if(yf)Ls=c.updateComputedPropertyName(ni,Mr(ni.expression,nt,un)),Za=c.updateComputedPropertyName(ni,yf.left);else{let rm=c.createTempVariable(d);Hg(rm,ni.expression);let _h=Mr(ni.expression,nt,un),Gp=c.createAssignment(rm,_h);Hg(Gp,ni.expression),Ls=c.updateComputedPropertyName(ni,Gp),Za=c.updateComputedPropertyName(ni,rm)}}let Go=Ws(ve.modifiers,Gt,Ig),Ss=G$e(c,ve,Go,ve.initializer);ua(Ss,ve),ti(Ss,3072),Hg(Ss,ln);let Uc=cg(ve)?Gl()??c.createThis():c.createThis(),rl=lWt(c,ve,Go,Ls,Uc);ua(rl,ve),hh(rl,mr),Hg(rl,ln);let xd=c.createModifiersFromModifierFlags(Dw(Go)),Lg=uWt(c,ve,xd,Za,Uc);return ua(Lg,ve),ti(Lg,3072),Hg(Lg,ln),Ede([Ss,rl,Lg],st,PI)}function Wo(ve){if(Ic(ve)){let mr=yu(ve.name);if(pe.assert(mr,"Undeclared private name for property declaration."),!mr.isValid)return ve;if(mr.isStatic&&!_e){let ln=ri(ve,c.createThis());if(ln)return c.createClassStaticBlockDeclaration(c.createBlock([ln],!0))}return}return re&&!cg(ve)&&mt?.data&&mt.data.facts&16?c.updatePropertyDeclaration(ve,Ws(ve.modifiers,nt,dp),ve.name,void 0,void 0,void 0):(kb(ve,nr)&&(ve=m1(s,ve)),c.updatePropertyDeclaration(ve,Ws(ve.modifiers,Gt,Ig),Mr(ve.name,pr,VI),void 0,void 0,Mr(ve.initializer,nt,un)))}function hc(ve){if(Ie&&!t0(ve)){let mr=es(ve.name,!!ve.initializer||M);if(mr&&fs().push(...gWt(mr)),cg(ve)&&!_e){let ln=ri(ve,c.createThis());if(ln){let ni=c.createClassStaticBlockDeclaration(c.createBlock([ln]));return ua(ni,ve),hh(ni,ve),hh(ln,{pos:-1,end:-1}),kB(ln,void 0),x3(ln,void 0),ni}}return}return c.updatePropertyDeclaration(ve,Ws(ve.modifiers,Gt,Ig),Mr(ve.name,pr,VI),void 0,void 0,Mr(ve.initializer,nt,un))}function yr(ve){return pe.assert(!p1(ve),"Decorators should already have been transformed and elided."),pC(ve)?Wo(ve):hc(ve)}function hn(){return Ee===-1||Ee===3&&!!mt?.data&&!!(mt.data.facts&16)}function Oi(ve){return t0(ve)&&(hn()||zh(ve)&&g1(ve)&32)?ba(ve):yr(ve)}function lo(){return!!Lt&&zh(Lt)&&yB(Lt)&&t0(Dd(Lt))}function pa(ve){if(lo()){let mr=HI(ve);mr.kind===110&&_t.add(mr)}}function Oa(ve,mr){return mr=Mr(mr,nt,un),pa(mr),tl(ve,mr)}function tl(ve,mr){switch(hh(mr,KD(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.getterName);case"m":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.methodName);case"f":return g().createClassPrivateFieldGetHelper(mr,ve.brandCheckIdentifier,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function Qu(ve){if(p(ve.name)){let mr=yu(ve.name);if(mr)return gn(ua(Oa(mr,ve.expression),ve),ve)}if(Te&&Lt&&xy(ve)&&Ir(ve.name)&&Rde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,c.createStringLiteralFromNode(ve.name),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,nt,s)}function Tg(ve){if(Te&&Lt&&xy(ve)&&Rde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=c.createReflectGetCall(ln,Mr(ve.argumentExpression,nt,un),mr);return ua(Ls,ve.expression),gn(Ls,ve.expression),Ls}}return _s(ve,nt,s)}function Cs(ve,mr){if(ve.operator===46||ve.operator===47){let ln=QA(ve.operand);if(cP(ln)){let ni;if(ni=yu(ln.name)){let Ls=Mr(ln.expression,nt,un);pa(Ls);let{readExpression:Za,initializeExpression:Go}=Pn(Ls),Ss=Oa(ni,Za),Uc=T0(ve)||mr?void 0:c.createTempVariable(d);return Ss=n9e(c,ve,Ss,d,Uc),Ss=hr(ni,Go||Za,Ss,64),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}else if(Te&&Lt&&xy(ln)&&Rde(Lt)&&mt?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=mt.data;if(Za&1){let Go=ci(ln);return T0(ve)?c.updatePrefixUnaryExpression(ve,Go):c.updatePostfixUnaryExpression(ve,Go)}if(ni&&Ls){let Go,Ss;if(jo(ln)?Ir(ln.name)&&(Ss=Go=c.createStringLiteralFromNode(ln.name)):BN(ln.argumentExpression)?Ss=Go=ln.argumentExpression:(Ss=c.createTempVariable(d),Go=c.createAssignment(Ss,Mr(ln.argumentExpression,nt,un))),Go&&Ss){let Uc=c.createReflectGetCall(Ls,Ss,ni);gn(Uc,ln);let rl=mr?void 0:c.createTempVariable(d);return Uc=n9e(c,ve,Uc,d,rl),Uc=c.createReflectSetCall(Ls,Go,Uc,ni),ua(Uc,ve),gn(Uc,ve),rl&&(Uc=c.createComma(Uc,rl),gn(Uc,ve)),Uc}}}}return _s(ve,nt,s)}function Tu(ve){return c.updateForStatement(ve,Mr(ve.initializer,tr,hE),Mr(ve.condition,nt,un),Mr(ve.incrementor,tr,un),Py(ve.statement,nt,s))}function Pr(ve){return c.updateExpressionStatement(ve,Mr(ve.expression,tr,un))}function Pn(ve){let mr=sp(ve)?ve:c.cloneNode(ve);if(ve.kind===110&&_t.has(ve)&&_t.add(mr),BN(ve))return{readExpression:mr,initializeExpression:void 0};let ln=c.createTempVariable(d),ni=c.createAssignment(ln,mr);return{readExpression:ln,initializeExpression:ni}}function pt(ve){var mr;if(cP(ve.expression)&&yu(ve.expression.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.expression,d,V);return _B(ve)?c.updateCallChain(ve,c.createPropertyAccessChain(Mr(ni,nt,un),ve.questionDotToken,"call"),void 0,void 0,[Mr(ln,nt,un),...Ws(ve.arguments,nt,un)]):c.updateCallExpression(ve,c.createPropertyAccessExpression(Mr(ni,nt,un),"call"),void 0,[Mr(ln,nt,un),...Ws(ve.arguments,nt,un)])}if(Te&&Lt&&xy(ve.expression)&&Rde(Lt)&&((mr=mt?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionCallCall(Mr(ve.expression,nt,un),mt.data.classConstructor,Ws(ve.arguments,nt,un));return ua(ln,ve),gn(ln,ve),ln}return _s(ve,nt,s)}function on(ve){var mr;if(cP(ve.tag)&&yu(ve.tag.name)){let{thisArg:ln,target:ni}=c.createCallBinding(ve.tag,d,V);return c.updateTaggedTemplateExpression(ve,c.createCallExpression(c.createPropertyAccessExpression(Mr(ni,nt,un),"bind"),void 0,[Mr(ln,nt,un)]),void 0,Mr(ve.template,nt,AP))}if(Te&&Lt&&xy(ve.tag)&&Rde(Lt)&&((mr=mt?.data)!=null&&mr.classConstructor)){let ln=c.createFunctionBindCall(Mr(ve.tag,nt,un),mt.data.classConstructor,[]);return ua(ln,ve),gn(ln,ve),c.updateTaggedTemplateExpression(ve,ln,void 0,Mr(ve.template,nt,AP))}return _s(ve,nt,s)}function it(ve){if(mt&&ht.set(Dd(ve),mt),_e){if(Tde(ve)){let ni=Mr(ve.body.statements[0].expression,nt,un);return Jm(ni,!0)&&ni.left===ni.right?void 0:ni}if(kz(ve))return Mr(ve.body.statements[0].expression,nt,un);_();let mr=Zn(ve,ni=>Ws(ni,nt,Lc),ve.body.statements);mr=c.mergeLexicalEnvironment(mr,h());let ln=c.createImmediatelyInvokedArrowFunction(mr);return ua(QA(ln.expression),ve),Gw(QA(ln.expression),4),ua(ln,ve),gn(ln,ve),ln}}function nr(ve){if(vd(ve)&&!ve.name){let mr=H9e(ve);return jt(mr,kz)?!1:(_e||!!g1(ve))&&jt(mr,ni=>fl(ni)||pC(ni)||Ie&&GEe(ni))}return!1}function Fr(ve,mr){if(Dx(ve)){let ln=ot;ot=void 0,ve=c.updateBinaryExpression(ve,Mr(ve.left,Gr,un),ve.operatorToken,Mr(ve.right,nt,un));let ni=jt(ot)?c.inlineExpressions(Hr([...ot,ve])):ve;return ot=ln,ni}if(Jm(ve)){kb(ve,nr)&&(ve=m1(s,ve),pe.assertNode(ve,Jm));let ln=HI(ve.left,9);if(cP(ln)){let ni=yu(ln.name);if(ni)return gn(ua(hr(ni,ln.expression,ve.right,ve.operatorToken.kind),ve),ve)}else if(Te&&Lt&&xy(ve.left)&&Rde(Lt)&&mt?.data){let{classConstructor:ni,superClassReference:Ls,facts:Za}=mt.data;if(Za&1)return c.updateBinaryExpression(ve,ci(ve.left),ve.operatorToken,Mr(ve.right,nt,un));if(ni&&Ls){let Go=Yg(ve.left)?Mr(ve.left.argumentExpression,nt,un):Ir(ve.left.name)?c.createStringLiteralFromNode(ve.left.name):void 0;if(Go){let Ss=Mr(ve.right,nt,un);if(vde(ve.operatorToken.kind)){let rl=Go;BN(Go)||(rl=c.createTempVariable(d),Go=c.createAssignment(rl,Go));let xd=c.createReflectGetCall(Ls,rl,ni);ua(xd,ve.left),gn(xd,ve.left),Ss=c.createBinaryExpression(xd,Bde(ve.operatorToken.kind),Ss),gn(Ss,ve)}let Uc=mr?void 0:c.createTempVariable(d);return Uc&&(Ss=c.createAssignment(Uc,Ss),gn(Uc,ve)),Ss=c.createReflectSetCall(Ls,Go,Ss,ni),ua(Ss,ve),gn(Ss,ve),Uc&&(Ss=c.createComma(Ss,Uc),gn(Ss,ve)),Ss}}}}return DBs(ve)?zt(ve):_s(ve,nt,s)}function Kr(ve,mr){let ln=mr?xEe(ve.elements,tr):xEe(ve.elements,nt,tr);return c.updateCommaListExpression(ve,ln)}function Dn(ve,mr){let ln=mr?tr:nt,ni=Mr(ve.expression,ln,un);return c.updateParenthesizedExpression(ve,ni)}function hr(ve,mr,ln,ni){if(mr=Mr(mr,nt,un),ln=Mr(ln,nt,un),pa(mr),vde(ni)){let{readExpression:Ls,initializeExpression:Za}=Pn(mr);mr=Za||Ls,ln=c.createBinaryExpression(tl(ve,Ls),Bde(ni),ln)}switch(hh(mr,KD(mr,-1)),ve.kind){case"a":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.setterName);case"m":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,void 0);case"f":return g().createClassPrivateFieldSetHelper(mr,ve.brandCheckIdentifier,ln,ve.kind,ve.isStatic?ve.variableName:void 0);case"untransformed":return pe.fail("Access helpers should not be created for untransformed private elements");default:pe.assertNever(ve,"Unknown private element type")}}function En(ve){return Me(ve.members,TOt)}function Ni(ve){var mr;let ln=0,ni=Dd(ve);xa(ni)&&Rx(ee,ni)&&(ln|=1),_e&&(Wet(ve)||X9e(ve))&&(ln|=2);let Ls=!1,Za=!1,Go=!1,Ss=!1;for(let rl of ve.members)cg(rl)?((rl.name&&(p(rl.name)||t0(rl))&&_e||t0(rl)&&Ee===-1&&!ve.name&&!((mr=ve.emitNode)!=null&&mr.classThis))&&(ln|=2),(pi(rl)||fl(rl))&&(Ne&&rl.transformFlags&16384&&(ln|=8,ln&1||(ln|=2)),Te&&rl.transformFlags&134217728&&(ln&1||(ln|=6)))):wP(Dd(rl))||(t0(rl)?(Ss=!0,Go||(Go=pC(rl))):pC(rl)?(Go=!0,T.hasNodeCheckFlag(rl,262144)&&(ln|=2)):pi(rl)&&(Ls=!0,Za||(Za=!!rl.initializer)));return(ge&&Ls||re&&Za||_e&&Go||_e&&Ss&&Ee===-1)&&(ln|=16),ln}function Gi(ve){var mr;if((((mr=mt?.data)==null?void 0:mr.facts)||0)&4){let ni=c.createTempVariable(d,!0);return Ui().superClassReference=ni,c.updateExpressionWithTypeArguments(ve,c.createAssignment(ni,Mr(ve.expression,nt,un)),void 0)}return _s(ve,nt,s)}function nn(ve,mr){var ln;let ni=Rt,Ls=ot,Za=mt;Rt=ve,ot=void 0,Wi();let Go=g1(ve)&32;if(_e||Go){let rl=Il(ve);if(rl&&Ir(rl))gs().data.className=rl;else if((ln=ve.emitNode)!=null&&ln.assignedName&&Zg(ve.emitNode.assignedName)){if(ve.emitNode.assignedName.textSourceNode&&Ir(ve.emitNode.assignedName.textSourceNode))gs().data.className=ve.emitNode.assignedName.textSourceNode;else if(Uh(ve.emitNode.assignedName.text,V)){let xd=c.createIdentifier(ve.emitNode.assignedName.text);gs().data.className=xd}}}if(_e){let rl=En(ve);jt(rl)&&(gs().data.weakSetName=pp("instances",rl[0].name))}let Ss=Ni(ve);Ss&&(Ui().facts=Ss),Ss&8&&wn();let Uc=mr(ve,Ss);return Vn(),pe.assert(mt===Za),Rt=ni,ot=Ls,Uc}function bn(ve){return nn(ve,ds)}function ds(ve,mr){var ln,ni;let Ls;if(mr&2)if(_e&&((ln=ve.emitNode)!=null&&ln.classThis))Ui().classConstructor=ve.emitNode.classThis,Ls=c.createAssignment(ve.emitNode.classThis,c.getInternalName(ve));else{let Gp=c.createTempVariable(d,!0);Ui().classConstructor=c.cloneNode(Gp),Ls=c.createAssignment(Gp,c.getInternalName(ve))}(ni=ve.emitNode)!=null&&ni.classThis&&(Ui().classThis=ve.emitNode.classThis);let Za=T.hasNodeCheckFlag(ve,262144),Go=Ga(ve,32),Ss=Ga(ve,2048),Uc=Ws(ve.modifiers,Gt,Ig),rl=Ws(ve.heritageClauses,ur,h1),{members:xd,prologue:Lg}=fr(ve),yf=[];if(Ls&&fs().unshift(Ls),jt(ot)&&yf.push(c.createExpressionStatement(c.inlineExpressions(ot))),re||_e||g1(ve)&32){let Gp=H9e(ve);jt(Gp)&&$r(yf,Gp,c.getInternalName(ve))}yf.length>0&&Go&&Ss&&(Uc=Ws(Uc,Gp=>dEe(Gp)?void 0:Gp,Ig),yf.push(c.createExportAssignment(void 0,!1,c.getLocalName(ve,!1,!0))));let rm=Ui().classConstructor;Za&&rm&&(tn(),Tt[Wy(ve)]=rm);let _h=c.updateClassDeclaration(ve,Uc,ve.name,void 0,rl,xd);return yf.unshift(_h),Lg&&yf.unshift(c.createExpressionStatement(Lg)),yf}function Mt(ve){return nn(ve,cn)}function cn(ve,mr){var ln,ni,Ls;let Za=!!(mr&1),Go=H9e(ve),Ss=T.hasNodeCheckFlag(ve,262144),Uc=T.hasNodeCheckFlag(ve,32768),rl;function xd(){var Z_;if(_e&&((Z_=ve.emitNode)!=null&&Z_.classThis))return Ui().classConstructor=ve.emitNode.classThis;let m2=c.createTempVariable(Uc?R:d,!0);return Ui().classConstructor=c.cloneNode(m2),m2}(ln=ve.emitNode)!=null&&ln.classThis&&(Ui().classThis=ve.emitNode.classThis),mr&2&&(rl??(rl=xd()));let Lg=Ws(ve.modifiers,Gt,Ig),yf=Ws(ve.heritageClauses,ur,h1),{members:rm,prologue:_h}=fr(ve),Gp=c.updateClassExpression(ve,Lg,ve.name,void 0,yf,rm),oh=[];if(_h&&oh.push(_h),(_e||g1(ve)&32)&&jt(Go,Z_=>fl(Z_)||pC(Z_)||Ie&&GEe(Z_))||jt(ot))if(Za)pe.assertIsDefined(Qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),jt(ot)&&Or(Qe,At(ot,c.createExpressionStatement)),jt(Go)&&$r(Qe,Go,((ni=ve.emitNode)==null?void 0:ni.classThis)??c.getInternalName(ve)),rl?oh.push(c.createAssignment(rl,Gp)):_e&&((Ls=ve.emitNode)!=null&&Ls.classThis)?oh.push(c.createAssignment(ve.emitNode.classThis,Gp)):oh.push(Gp);else{if(rl??(rl=xd()),Ss){tn();let Z_=c.cloneNode(rl);Z_.emitNode.autoGenerate.flags&=-9,Tt[Wy(ve)]=Z_}oh.push(c.createAssignment(rl,Gp)),Or(oh,ot),Or(oh,ao(Go,rl)),oh.push(c.cloneNode(rl))}else oh.push(Gp);return oh.length>1&&(Gw(Gp,131072),oh.forEach(N0)),c.inlineExpressions(oh)}function Bt(ve){if(!_e)return _s(ve,nt,s)}function xe(ve){if(Ne&&Lt&&fl(Lt)&&mt?.data){let{classThis:mr,classConstructor:ln}=mt.data;return mr??ln??ve}return ve}function fr(ve){let mr=!!(g1(ve)&32);if(_e||$e){for(let Go of ve.members)if(pC(Go))if(Ic(Go))AI(Go,Go.name,bi);else{let Ss=gs();wU(Ss,Go.name,{kind:"untransformed"})}if(_e&&jt(En(ve))&&Je(),hn()){for(let Go of ve.members)if(t0(Go)){let Ss=c.getGeneratedPrivateNameForNode(Go.name,void 0,"_accessor_storage");if(_e||mr&&zh(Go))AI(Go,Ss,mc);else{let Uc=gs();wU(Uc,Ss,{kind:"untransformed"})}}}}let ln=Ws(ve.members,dt,PI),ni;jt(ln,Tc)||(ni=In(void 0,ve));let Ls,Za;if(!_e&&jt(ot)){let Go=c.createExpressionStatement(c.inlineExpressions(ot));if(Go.transformFlags&134234112){let Uc=c.createTempVariable(d),rl=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([Go]));Ls=c.createAssignment(Uc,rl),Go=c.createExpressionStatement(c.createCallExpression(Uc,void 0,[]))}let Ss=c.createBlock([Go]);Za=c.createClassStaticBlockDeclaration(Ss),ot=void 0}if(ni||Za){let Go,Ss=de(ln,Tde),Uc=de(ln,kz);Go=Ft(Go,Ss),Go=Ft(Go,Uc),Go=Ft(Go,ni),Go=Ft(Go,Za);let rl=Ss||Uc?Me(ln,xd=>xd!==Ss&&xd!==Uc):ln;Go=Or(Go,rl),ln=gn(c.createNodeArray(Go),ve.members)}return{members:ln,prologue:Ls}}function Je(){let{weakSetName:ve}=gs().data;pe.assert(ve,"weakSetName should be set in private identifier environment"),fs().push(c.createAssignment(ve,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function In(ve,mr){if(ve=Mr(ve,nt,Tc),!mt?.data||!(mt.data.facts&16))return ve;let ln=BB(mr),ni=!!(ln&&HI(ln.expression).kind!==106),Ls=vI(ve?ve.parameters:void 0,nt,s),Za=Ot(mr,ve,ni);return Za?ve?(pe.assert(Ls),c.updateConstructorDeclaration(ve,void 0,Ls,Za)):N0(ua(gn(c.createConstructorDeclaration(void 0,Ls??[],Za),ve||mr),ve)):ve}function Hn(ve,mr,ln,ni,Ls,Za,Go){let Ss=ni[Ls],Uc=mr[Ss];if(Or(ve,Ws(mr,nt,Lc,ln,Ss-ln)),ln=Ss+1,mU(Uc)){let rl=[];Hn(rl,Uc.tryBlock.statements,0,ni,Ls+1,Za,Go);let xd=c.createNodeArray(rl);gn(xd,Uc.tryBlock.statements),ve.push(c.updateTryStatement(Uc,c.updateBlock(Uc.tryBlock,rl),Mr(Uc.catchClause,nt,iQ),Mr(Uc.finallyBlock,nt,$u)))}else{for(Or(ve,Ws(mr,nt,Lc,Ss,1));ln!!_h.initializer||p(_h.name)||Nw(_h)));let Go=En(ve),Ss=jt(Za)||jt(Go);if(!mr&&!Ss)return uS(void 0,nt,s);S();let Uc=!mr&&ln,rl=0,xd=[],Lg=[],yf=c.createThis();if(Mn(Lg,Go,yf),mr){let _h=Me(Ls,oh=>Ve(Dd(oh),mr)),Gp=Me(Za,oh=>!Ve(Dd(oh),mr));$r(Lg,_h,yf),$r(Lg,Gp,yf)}else $r(Lg,Za,yf);if(mr?.body){rl=c.copyPrologue(mr.body.statements,xd,!1,nt);let _h=M9e(mr.body.statements,rl);if(_h.length)Hn(xd,mr.body.statements,rl,_h,0,Lg,mr);else{for(;rl=xd.length?mr.body.multiLine??xd.length>0:xd.length>0;return gn(c.createBlock(gn(c.createNodeArray(xd),((ni=mr?.body)==null?void 0:ni.statements)??ve.members),rm),mr?.body)}function $r(ve,mr,ln){for(let ni of mr){if(cg(ni)&&!_e)continue;let Ls=ri(ni,ln);Ls&&ve.push(Ls)}}function ri(ve,mr){let ln=fl(ve)?Zn(ve,it,ve):Bs(ve,mr);if(!ln)return;let ni=c.createExpressionStatement(ln);ua(ni,ve),Gw(ni,tA(ve)&3072),hh(ni,ve);let Ls=Dd(ve);return Si(Ls)?(Hg(ni,Ls),pz(ni)):Hg(ni,Av(ve)),kB(ln,void 0),x3(ln,void 0),Nw(Ls)&&Gw(ni,3072),ni}function ao(ve,mr){let ln=[];for(let ni of ve){let Ls=fl(ni)?Zn(ni,it,ni):Zn(ni,()=>Bs(ni,mr),void 0);Ls&&(N0(Ls),ua(Ls,ni),Gw(Ls,tA(ni)&3072),Hg(Ls,Av(ni)),hh(Ls,ni),ln.push(Ls))}return ln}function Bs(ve,mr){var ln;let ni=Lt,Ls=Ys(ve,mr);return Ls&&zh(ve)&&((ln=mt?.data)!=null&&ln.facts)&&(ua(Ls,ve),Gw(Ls,4),Hg(Ls,XT(ve.name)),ht.set(Dd(ve),mt)),Lt=ni,Ls}function Ys(ve,mr){let ln=!M;kb(ve,nr)&&(ve=m1(s,ve));let ni=Nw(ve)?c.getGeneratedPrivateNameForNode(ve.name):Un(ve.name)&&!BN(ve.name.expression)?c.updateComputedPropertyName(ve.name,c.getGeneratedNameForNode(ve.name)):ve.name;if(zh(ve)&&(Lt=ve),p(ni)&&Ic(ve)){let Go=yu(ni);if(Go)return Go.kind==="f"?Go.isStatic?wBs(c,Go.variableName,Mr(ve.initializer,nt,un)):TBs(c,mr,Mr(ve.initializer,nt,un),Go.brandCheckIdentifier):void 0;pe.fail("Undeclared private name for property declaration.")}if((p(ni)||zh(ve))&&!ve.initializer)return;let Ls=Dd(ve);if(Ga(Ls,64))return;let Za=Mr(ve.initializer,nt,un);if(Ve(Ls,Ls.parent)&&Ir(ni)){let Go=c.cloneNode(ni);Za?(gI(Za)&&lEe(Za.expression)&&qD(Za.expression.left,"___runInitializers")&&qT(Za.expression.right)&&mC(Za.expression.right.expression)&&(Za=Za.expression.left),Za=c.inlineExpressions([Za,Go])):Za=Go,ti(ni,3168),Hg(Go,Ls.name),ti(Go,3072)}else Za??(Za=c.createVoidZero());if(ln||p(ni)){let Go=EU(c,mr,ni,ni);return Gw(Go,1024),c.createAssignment(Go,Za)}else{let Go=Un(ni)?ni.expression:Ir(ni)?c.createStringLiteral(Bc(ni.escapedText)):ni,Ss=c.createPropertyDescriptor({value:Za,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(mr,Go,Ss)}}function tn(){Ye&1||(Ye|=1,s.enableSubstitution(80),Tt=[])}function wn(){Ye&2||(Ye|=2,s.enableSubstitution(110),s.enableEmitNotification(263),s.enableEmitNotification(219),s.enableEmitNotification(177),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(175),s.enableEmitNotification(173),s.enableEmitNotification(168))}function Mn(ve,mr,ln){if(!_e||!jt(mr))return;let{weakSetName:ni}=gs().data;pe.assert(ni,"weakSetName should be set in private identifier environment"),ve.push(c.createExpressionStatement(RBs(c,ln,ni)))}function ci(ve){return jo(ve)?c.updatePropertyAccessExpression(ve,c.createVoidZero(),ve.name):c.updateElementAccessExpression(ve,c.createVoidZero(),Mr(ve.argumentExpression,nt,un))}function es(ve,mr){if(Un(ve)){let ln=l9e(ve),ni=Mr(ve.expression,nt,un),Ls=o2(ni),Za=BN(Ls);if(!(!!ln||Jm(Ls)&&kp(Ls.left))&&!Za&&mr){let Ss=c.getGeneratedNameForNode(ve);return T.hasNodeCheckFlag(ve,32768)?R(Ss):d(Ss),c.createAssignment(Ss,ni)}return Za||Ir(Ls)?void 0:ni}}function Wi(){mt={previous:mt,data:void 0}}function Vn(){mt=mt?.previous}function Ui(){return pe.assert(mt),mt.data??(mt.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function gs(){return pe.assert(mt),mt.privateEnv??(mt.privateEnv=NOt({className:void 0,weakSetName:void 0}))}function fs(){return ot??(ot=[])}function bi(ve,mr,ln,ni,Ls,Za,Go){t0(ve)?wI(ve,mr,ln,ni,Ls,Za,Go):pi(ve)?mc(ve,mr,ln,ni,Ls,Za,Go):uu(ve)?gg(ve,mr,ln,ni,Ls,Za,Go):Bg(ve)?Ag(ve,mr,ln,ni,Ls,Za,Go):Dg(ve)&&_u(ve,mr,ln,ni,Ls,Za,Go)}function mc(ve,mr,ln,ni,Ls,Za,Go){if(Ls){let Ss=pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"),Uc=Dl(mr);wU(ni,mr,{kind:"f",isStatic:!0,brandCheckIdentifier:Ss,variableName:Uc,isValid:Za})}else{let Ss=Dl(mr);wU(ni,mr,{kind:"f",isStatic:!1,brandCheckIdentifier:Ss,isValid:Za}),fs().push(c.createAssignment(Ss,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function gg(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");wU(ni,mr,{kind:"m",methodName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function Ag(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_get"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.getterName?Go.getterName=Ss:wU(ni,mr,{kind:"a",getterName:Ss,setterName:void 0,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function _u(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_set"),Uc=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");Go?.kind==="a"&&Go.isStatic===Ls&&!Go.setterName?Go.setterName=Ss:wU(ni,mr,{kind:"a",getterName:void 0,setterName:Ss,brandCheckIdentifier:Uc,isStatic:Ls,isValid:Za})}function wI(ve,mr,ln,ni,Ls,Za,Go){let Ss=Dl(mr,"_get"),Uc=Dl(mr,"_set"),rl=Ls?pe.checkDefined(ln.classThis??ln.classConstructor,"classConstructor should be set in private identifier environment"):pe.checkDefined(ni.data.weakSetName,"weakSetName should be set in private identifier environment");wU(ni,mr,{kind:"a",getterName:Ss,setterName:Uc,brandCheckIdentifier:rl,isStatic:Ls,isValid:Za})}function AI(ve,mr,ln){let ni=Ui(),Ls=gs(),Za=Pet(Ls,mr),Go=zh(ve),Ss=!NBs(mr)&&Za===void 0;ln(ve,mr,ni,Ls,Go,Ss,Za)}function pp(ve,mr,ln){let{className:ni}=gs().data,Ls=ni?{prefix:"_",node:ni,suffix:"_"}:"_",Za=typeof ve=="object"?c.getGeneratedNameForNode(ve,24,Ls,ln):typeof ve=="string"?c.createUniqueName(ve,16,Ls,ln):c.createTempVariable(void 0,!0,Ls,ln);return T.hasNodeCheckFlag(mr,32768)?R(Za):d(Za),Za}function Dl(ve,mr){let ln=xY(ve);return pp(ln?.substring(1)??ve,ve,mr)}function yu(ve){let mr=DOt(mt,ve);return mr?.kind==="untransformed"?void 0:mr}function tm(ve){let mr=c.getGeneratedNameForNode(ve),ln=yu(ve.name);if(!ln)return _s(ve,nt,s);let ni=ve.expression;return($re(ve)||xy(ve)||!lQ(ve.expression))&&(ni=c.createTempVariable(d,!0),fs().push(c.createBinaryExpression(ni,64,Mr(ve.expression,nt,un)))),c.createAssignmentTargetWrapper(mr,hr(ln,ni,mr,64))}function jp(ve){if(og(ve)||OI(ve))return oi(ve);if(cP(ve))return tm(ve);if(Te&&Lt&&xy(ve)&&Rde(Lt)&&mt?.data){let{classConstructor:mr,superClassReference:ln,facts:ni}=mt.data;if(ni&1)return ci(ve);if(mr&&ln){let Ls=Yg(ve)?Mr(ve.argumentExpression,nt,un):Ir(ve.name)?c.createStringLiteralFromNode(ve.name):void 0;if(Ls){let Za=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Za,c.createReflectSetCall(ln,Ls,Za,mr))}}}return _s(ve,nt,s)}function Xg(ve){if(kb(ve,nr)&&(ve=m1(s,ve)),Jm(ve,!0)){let mr=jp(ve.left),ln=Mr(ve.right,nt,un);return c.updateBinaryExpression(ve,mr,ve.operatorToken,ln)}return jp(ve)}function sh(ve){if(D_(ve.expression)){let mr=jp(ve.expression);return c.updateSpreadElement(ve,mr)}return _s(ve,nt,s)}function dS(ve){if(EJ(ve)){if(of(ve))return sh(ve);if(!yp(ve))return Xg(ve)}return _s(ve,nt,s)}function gu(ve){let mr=Mr(ve.name,nt,VI);if(Jm(ve.initializer,!0)){let ln=Xg(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}if(D_(ve.initializer)){let ln=jp(ve.initializer);return c.updatePropertyAssignment(ve,mr,ln)}return _s(ve,nt,s)}function bg(ve){return kb(ve,nr)&&(ve=m1(s,ve)),_s(ve,nt,s)}function KA(ve){if(D_(ve.expression)){let mr=jp(ve.expression);return c.updateSpreadAssignment(ve,mr)}return _s(ve,nt,s)}function TA(ve){return pe.assertNode(ve,gP),Lx(ve)?KA(ve):a0(ve)?bg(ve):fm(ve)?gu(ve):_s(ve,nt,s)}function oi(ve){return OI(ve)?c.updateArrayLiteralExpression(ve,Ws(ve.elements,dS,un)):c.updateObjectLiteralExpression(ve,Ws(ve.properties,TA,yw))}function $d(ve,mr,ln){let ni=Dd(mr),Ls=ht.get(ni);if(Ls){let Za=mt,Go=Pt;mt=Ls,Pt=Ke,Ke=!fl(ni)||!(g1(ni)&32),Ue(ve,mr,ln),Ke=Pt,Pt=Go,mt=Za;return}switch(mr.kind){case 219:if(lA(ni)||tA(mr)&524288)break;case 263:case 177:case 178:case 179:case 175:case 173:{let Za=mt,Go=Pt;mt=void 0,Pt=Ke,Ke=!1,Ue(ve,mr,ln),Ke=Pt,Pt=Go,mt=Za;return}case 168:{let Za=mt,Go=Ke;mt=mt?.previous,Ke=Pt,Ue(ve,mr,ln),Ke=Go,mt=Za;return}}Ue(ve,mr,ln)}function YI(ve,mr){return mr=We(ve,mr),ve===1?Fh(mr):mr}function Fh(ve){switch(ve.kind){case 80:return _f(ve);case 110:return WC(ve)}return ve}function WC(ve){if(Ye&2&&mt?.data&&!_t.has(ve)){let{facts:mr,classConstructor:ln,classThis:ni}=mt.data,Ls=Ke?ni??ln:ln;if(Ls)return gn(ua(c.cloneNode(Ls),ve),ve);if(mr&1&&ee)return c.createParenthesizedExpression(c.createVoidZero())}return ve}function _f(ve){return QI(ve)||ve}function QI(ve){if(Ye&1&&T.hasNodeCheckFlag(ve,536870912)){let mr=T.getReferencedValueDeclaration(ve);if(mr){let ln=Tt[mr.id];if(ln){let ni=c.cloneNode(ln);return Hg(ni,ve),hh(ni,ve),ni}}}}}function wBs(s,c,g){return s.createAssignment(c,s.createObjectLiteralExpression([s.createPropertyAssignment("value",g||s.createVoidZero())]))}function TBs(s,c,g,d){return s.createCallExpression(s.createPropertyAccessExpression(d,"set"),void 0,[c,g||s.createVoidZero()])}function RBs(s,c,g){return s.createCallExpression(s.createPropertyAccessExpression(g,"add"),void 0,[c])}function NBs(s){return!TL(s)&&s.escapedText==="#constructor"}function DBs(s){return p(s.left)&&s.operatorToken.kind===103}function kBs(s){return pi(s)&&zh(s)}function Rde(s){return fl(s)||kBs(s)}function OOt(s){let{factory:c,hoistVariableDeclaration:g}=s,d=s.getEmitResolver(),h=s.getCompilerOptions(),_=Mg(h),S=a_(h,"strictNullChecks"),R,T;return{serializeTypeNode:(ot,Qe)=>W(ot,Ie,Qe),serializeTypeOfNode:(ot,Qe,mt)=>W(ot,M,Qe,mt),serializeParameterTypesOfNode:(ot,Qe,mt)=>W(ot,ee,Qe,mt),serializeReturnTypeOfNode:(ot,Qe)=>W(ot,ge,Qe)};function W(ot,Qe,mt,ht){let _t=R,Rt=T;R=ot.currentLexicalScope,T=ot.currentNameScope;let Lt=ht===void 0?Qe(mt):Qe(mt,ht);return R=_t,T=Rt,Lt}function V(ot,Qe){let mt=BP(Qe.members,ot);return mt.setAccessor&&DZe(mt.setAccessor)||mt.getAccessor&&xb(mt.getAccessor)}function M(ot,Qe){switch(ot.kind){case 173:case 170:return Ie(ot.type);case 179:case 178:return Ie(V(ot,Qe));case 264:case 232:case 175:return c.createIdentifier("Function");default:return c.createVoidZero()}}function ee(ot,Qe){let mt=xa(ot)?lN(ot):bu(ot)&&u1(ot.body)?ot:void 0,ht=[];if(mt){let _t=re(mt,Qe),Rt=_t.length;for(let Lt=0;Lt_t.parent&&d2(_t.parent)&&(_t.parent.trueType===_t||_t.parent.falseType===_t)))return c.createIdentifier("Object");let mt=We(ot.typeName),ht=c.createTempVariable(g);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(ht,mt),"function"),void 0,ht,void 0,c.createIdentifier("Object"));case 1:return Ue(ot.typeName);case 2:return c.createVoidZero();case 4:return Tt("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return Tt("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return pe.assertNever(Qe)}}function Ze(ot,Qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(ot),c.createStringLiteral("undefined")),Qe)}function We(ot){if(ot.kind===80){let ht=Ue(ot);return Ze(ht,ht)}if(ot.left.kind===80)return Ze(Ue(ot.left),Ue(ot));let Qe=We(ot.left),mt=c.createTempVariable(g);return c.createLogicalAnd(c.createLogicalAnd(Qe.left,c.createStrictInequality(c.createAssignment(mt,Qe.right),c.createVoidZero())),c.createPropertyAccessExpression(mt,ot.right))}function Ue(ot){switch(ot.kind){case 80:let Qe=XA(gn(H3.cloneNode(ot),ot),ot.parent);return Qe.original=void 0,XA(Qe,$l(R)),Qe;case 167:return $e(ot)}}function $e(ot){return c.createPropertyAccessExpression(Ue(ot.left),ot.right)}function Ye(ot){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(ot),"function"),void 0,c.createIdentifier(ot),void 0,c.createIdentifier("Object"))}function Tt(ot,Qe){return _dEe(hn)||So(hn)?void 0:hn,dp),Ns=Av(Ht),An=ur(Ht),si=S<2?c.getInternalName(Ht,!1,!0):c.getLocalName(Ht,!1,!0),ks=Ws(Ht.heritageClauses,M,h1),Ic=Ws(Ht.members,M,PI),su=[];({members:Ic,decorationStatements:su}=_e(Ht,Ic));let Zn=S>=9&&!!An&&jt(Ic,hn=>pi(hn)&&Ga(hn,256)||fl(hn));Zn&&(Ic=gn(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(An,c.createThis()))])),...Ic]),Ic));let ya=c.createClassExpression(Zi,Br&&kp(Br)?void 0:Br,void 0,ks,Ic);ua(ya,Ht),gn(ya,Ns);let Gl=An&&!Zn?c.createAssignment(An,ya):ya,ba=c.createVariableDeclaration(si,void 0,void 0,Gl);ua(ba,Ht);let Wo=c.createVariableDeclarationList([ba],1),hc=c.createVariableStatement(void 0,Wo);ua(hc,Ht),gn(hc,Ns),hh(hc,Ht);let yr=[hc];if(Or(yr,su),Pt(yr,Ht),mn)if(jn){let hn=c.createExportDefault(si);yr.push(hn)}else{let hn=c.createExternalModuleExport(c.getDeclarationName(Ht));yr.push(hn)}return yr}function Te(Ht){return c.updateClassExpression(Ht,Ws(Ht.modifiers,V,Ig),Ht.name,void 0,Ws(Ht.heritageClauses,M,h1),Ws(Ht.members,M,PI))}function Ze(Ht){return c.updateConstructorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),Ws(Ht.parameters,M,Si),Mr(Ht.body,M,$u))}function We(Ht,Br){return Ht!==Br&&(hh(Ht,Br),Hg(Ht,Av(Br))),Ht}function Ue(Ht){return We(c.updateMethodDeclaration(Ht,Ws(Ht.modifiers,V,Ig),Ht.asteriskToken,pe.checkDefined(Mr(Ht.name,M,VI)),void 0,void 0,Ws(Ht.parameters,M,Si),void 0,Mr(Ht.body,M,$u)),Ht)}function $e(Ht){return We(c.updateGetAccessorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),Ws(Ht.parameters,M,Si),void 0,Mr(Ht.body,M,$u)),Ht)}function Ye(Ht){return We(c.updateSetAccessorDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),Ws(Ht.parameters,M,Si),Mr(Ht.body,M,$u)),Ht)}function Tt(Ht){if(!(Ht.flags&33554432||Ga(Ht,128)))return We(c.updatePropertyDeclaration(Ht,Ws(Ht.modifiers,V,Ig),pe.checkDefined(Mr(Ht.name,M,VI)),void 0,void 0,Mr(Ht.initializer,M,un)),Ht)}function ot(Ht){let Br=c.updateParameterDeclaration(Ht,cWt(c,Ht.modifiers),Ht.dotDotDotToken,pe.checkDefined(Mr(Ht.name,M,RL)),void 0,void 0,Mr(Ht.initializer,M,un));return Br!==Ht&&(hh(Br,Ht),gn(Br,Av(Ht)),Hg(Br,Av(Ht)),ti(Br.name,64)),Br}function Qe(Ht){return qD(Ht.expression,"___metadata")}function mt(Ht){if(!Ht)return;let{false:Br,true:mn}=Ko(Ht.decorators,Qe),jn=[];return Or(jn,At(Br,Gt)),Or(jn,er(Ht.parameters,nt)),Or(jn,At(mn,Gt)),jn}function ht(Ht,Br,mn){Or(Ht,At(Lt(Br,mn),jn=>c.createExpressionStatement(jn)))}function _t(Ht,Br,mn){return tne(!0,Ht,mn)&&Br===cg(Ht)}function Rt(Ht,Br){return Me(Ht.members,mn=>_t(mn,Br,Ht))}function Lt(Ht,Br){let mn=Rt(Ht,Br),jn;for(let Zi of mn)jn=Ft(jn,Ke(Ht,Zi));return jn}function Ke(Ht,Br){let mn=Y9e(Br,Ht,!0),jn=mt(mn);if(!jn)return;let Zi=dt(Ht,Br),Ns=Dt(Br,!Ga(Br,128)),An=pi(Br)&&!Nw(Br)?c.createVoidZero():c.createNull(),si=g().createDecorateHelper(jn,Zi,Ns,An);return ti(si,3072),Hg(si,Av(Br)),si}function Pt(Ht,Br){let mn=_r(Br);mn&&Ht.push(ua(c.createExpressionStatement(mn),Br))}function _r(Ht){let Br=Vet(Ht,!0),mn=mt(Br);if(!mn)return;let jn=T&&T[Wy(Ht)],Zi=S<2?c.getInternalName(Ht,!1,!0):c.getDeclarationName(Ht,!1,!0),Ns=g().createDecorateHelper(mn,Zi),An=c.createAssignment(Zi,jn?c.createAssignment(jn,Ns):Ns);return ti(An,3072),Hg(An,Av(Ht)),An}function Gt(Ht){return pe.checkDefined(Mr(Ht.expression,M,un))}function nt(Ht,Br){let mn;if(Ht){mn=[];for(let jn of Ht){let Zi=g().createParamHelper(Gt(jn),Br);gn(Zi,jn.expression),ti(Zi,3072),mn.push(Zi)}}return mn}function Dt(Ht,Br){let mn=Ht.name;return p(mn)?c.createIdentifier(""):Un(mn)?Br&&!BN(mn.expression)?c.getGeneratedNameForNode(mn):mn.expression:Ir(mn)?c.createStringLiteral(Vo(mn)):c.cloneNode(mn)}function tr(){T||(s.enableSubstitution(80),T=[])}function ur(Ht){if(h.hasNodeCheckFlag(Ht,262144)){tr();let Br=c.createUniqueName(Ht.name&&!kp(Ht.name)?Vo(Ht.name):"default");return T[Wy(Ht)]=Br,d(Br),Br}}function Gr(Ht){return c.createPropertyAccessExpression(c.getDeclarationName(Ht),"prototype")}function dt(Ht,Br){return cg(Br)?c.getDeclarationName(Ht):Gr(Ht)}function pr(Ht,Br){return Br=R(Ht,Br),Ht===1?st(Br):Br}function st(Ht){switch(Ht.kind){case 80:return ir(Ht)}return Ht}function ir(Ht){return zt(Ht)??Ht}function zt(Ht){if(T&&h.hasNodeCheckFlag(Ht,536870912)){let Br=h.getReferencedValueDeclaration(Ht);if(Br){let mn=T[Br.id];if(mn){let jn=c.cloneNode(mn);return Hg(jn,Ht),hh(jn,Ht),jn}}}}}function HOt(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=Mg(s.getCompilerOptions()),R,T,W,V,M,ee;return rR(s,re);function re(xe){R=void 0,ee=!1;let fr=_s(xe,Ye,s);return hN(fr,s.readEmitHelpers()),ee&&(N3(fr,32),ee=!1),fr}function ge(){switch(T=void 0,W=void 0,V=void 0,R?.kind){case"class":T=R.classInfo;break;case"class-element":T=R.next.classInfo,W=R.classThis,V=R.classSuper;break;case"name":let xe=R.next.next.next;xe?.kind==="class-element"&&(T=xe.next.classInfo,W=xe.classThis,V=xe.classSuper);break}}function Ie(xe){R={kind:"class",next:R,classInfo:xe,savedPendingExpressions:M},M=void 0,ge()}function _e(){pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),M=R.savedPendingExpressions,R=R.next,ge()}function Ee(xe){var fr,Je;pe.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},(fl(xe)||pi(xe)&&zh(xe))&&(R.classThis=(fr=R.next.classInfo)==null?void 0:fr.classThis,R.classSuper=(Je=R.next.classInfo)==null?void 0:Je.classSuper),ge()}function Ne(){var xe;pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),pe.assert(((xe=R.next)==null?void 0:xe.kind)==="class","Incorrect value for top.next.kind.",()=>{var fr;return`Expected top.next.kind to be 'class' but got '${(fr=R.next)==null?void 0:fr.kind}' instead.`}),R=R.next,ge()}function Te(){pe.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ge()}function Ze(){pe.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ge()}function We(){R?.kind==="other"?(pe.assert(!M),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:M},M=void 0,ge())}function Ue(){pe.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(pe.assert(!M),R.depth--):(M=R.savedPendingExpressions,R=R.next,ge())}function $e(xe){return!!(xe.transformFlags&33554432)||!!W&&!!(xe.transformFlags&16384)||!!W&&!!V&&!!(xe.transformFlags&134217728)}function Ye(xe){if(!$e(xe))return xe;switch(xe.kind){case 171:return pe.fail("Use `modifierVisitor` instead.");case 264:return _r(xe);case 232:return Gt(xe);case 177:case 173:case 176:return pe.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 170:return Ns(xe);case 227:return su(xe,!1);case 304:return hc(xe);case 261:return yr(xe);case 209:return hn(xe);case 278:return Pr(xe);case 110:return Ht(xe);case 249:return ks(xe);case 245:return Ic(xe);case 357:return ya(xe,!1);case 218:return Pn(xe,!1);case 356:return pt(xe,!1);case 214:return Br(xe);case 216:return mn(xe);case 225:case 226:return Zn(xe,!1);case 212:return jn(xe);case 213:return Zi(xe);case 168:return Wo(xe);case 175:case 179:case 178:case 219:case 263:{We();let fr=_s(xe,Tt,s);return Ue(),fr}default:return _s(xe,Tt,s)}}function Tt(xe){switch(xe.kind){case 171:return;default:return Ye(xe)}}function ot(xe){switch(xe.kind){case 171:return;default:return xe}}function Qe(xe){switch(xe.kind){case 177:return tr(xe);case 175:return dt(xe);case 178:return pr(xe);case 179:return st(xe);case 173:return zt(xe);case 176:return ir(xe);default:return Ye(xe)}}function mt(xe){switch(xe.kind){case 225:case 226:return Zn(xe,!0);case 227:return su(xe,!0);case 357:return ya(xe,!0);case 218:return Pn(xe,!0);default:return Ye(xe)}}function ht(xe){let fr=xe.name&&Ir(xe.name)&&!kp(xe.name)?Vo(xe.name):xe.name&&p(xe.name)&&!kp(xe.name)?Vo(xe.name).slice(1):xe.name&&Zg(xe.name)&&Uh(xe.name.text,99)?xe.name.text:xa(xe)?"class":"member";return bB(xe)&&(fr=`get_${fr}`),cv(xe)&&(fr=`set_${fr}`),xe.name&&p(xe.name)&&(fr=`private_${fr}`),cg(xe)&&(fr=`static_${fr}`),"_"+fr}function _t(xe,fr){return c.createUniqueName(`${ht(xe)}_${fr}`,24)}function Rt(xe,fr){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(xe,void 0,void 0,fr)],1))}function Lt(xe){let fr=c.createUniqueName("_metadata",48),Je,In,Hn=!1,Ot=!1,$r=!1,ri,ao,Bs;if(MJ(!1,xe)){let Ys=jt(xe.members,tn=>(pC(tn)||t0(tn))&&zh(tn));ri=c.createUniqueName("_classThis",Ys?24:48)}for(let Ys of xe.members){if(NL(Ys)&&tne(!1,Ys,xe))if(zh(Ys)){if(!In){In=c.createUniqueName("_staticExtraInitializers",48);let tn=g().createRunInitializersHelper(ri??c.createThis(),In);Hg(tn,xe.name??jD(xe)),ao??(ao=[]),ao.push(tn)}}else{if(!Je){Je=c.createUniqueName("_instanceExtraInitializers",48);let tn=g().createRunInitializersHelper(c.createThis(),Je);Hg(tn,xe.name??jD(xe)),Bs??(Bs=[]),Bs.push(tn)}Je??(Je=c.createUniqueName("_instanceExtraInitializers",48))}if(fl(Ys)?kz(Ys)||(Hn=!0):pi(Ys)&&(zh(Ys)?Hn||(Hn=!!Ys.initializer||p1(Ys)):Ot||(Ot=!VJ(Ys))),(pC(Ys)||t0(Ys))&&zh(Ys)&&($r=!0),In&&Je&&Hn&&Ot&&$r)break}return{class:xe,classThis:ri,metadataReference:fr,instanceMethodExtraInitializersName:Je,staticMethodExtraInitializersName:In,hasStaticInitializers:Hn,hasNonAmbientInstanceFields:Ot,hasStaticPrivateClassElements:$r,pendingStaticInitializers:ao,pendingInstanceInitializers:Bs}}function Ke(xe){d(),!Oet(xe)&&Rx(!1,xe)&&(xe=J9e(s,xe,c.createStringLiteral("")));let fr=c.getLocalName(xe,!1,!1,!0),Je=Lt(xe),In=[],Hn,Ot,$r,ri,ao=!1,Bs=Fr(Vet(xe,!1));Bs&&(Je.classDecoratorsName=c.createUniqueName("_classDecorators",48),Je.classDescriptorName=c.createUniqueName("_classDescriptor",48),Je.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),pe.assertIsDefined(Je.classThis),In.push(Rt(Je.classDecoratorsName,c.createArrayLiteralExpression(Bs)),Rt(Je.classDescriptorName),Rt(Je.classExtraInitializersName,c.createArrayLiteralExpression()),Rt(Je.classThis)),Je.hasStaticPrivateClassElements&&(ao=!0,ee=!0));let Ys=mne(xe.heritageClauses,96),tn=Ys&&Nc(Ys.types),wn=tn&&Mr(tn.expression,Ye,un);if(wn){Je.classSuper=c.createUniqueName("_classSuper",48);let gs=HI(wn),fs=vd(gs)&&!gs.name||UA(gs)&&!gs.name||lA(gs)?c.createComma(c.createNumericLiteral(0),wn):wn;In.push(Rt(Je.classSuper,fs));let bi=c.updateExpressionWithTypeArguments(tn,Je.classSuper,void 0),mc=c.updateHeritageClause(Ys,[bi]);ri=c.createNodeArray([mc])}let Mn=Je.classThis??c.createThis();Ie(Je),Hn=Ft(Hn,Mt(Je.metadataReference,Je.classSuper));let ci=xe.members;if(ci=Ws(ci,gs=>Tc(gs)?gs:Qe(gs),PI),ci=Ws(ci,gs=>Tc(gs)?Qe(gs):gs,PI),M){let gs;for(let fs of M){fs=Mr(fs,function mc(gg){if(!(gg.transformFlags&16384))return gg;switch(gg.kind){case 110:return gs||(gs=c.createUniqueName("_outerThis",16),In.unshift(Rt(gs,c.createThis()))),gs;default:return _s(gg,mc,s)}},un);let bi=c.createExpressionStatement(fs);Hn=Ft(Hn,bi)}M=void 0}if(_e(),jt(Je.pendingInstanceInitializers)&&!lN(xe)){let gs=nt(xe,Je);if(gs){let fs=BB(xe),bi=!!(fs&&HI(fs.expression).kind!==106),mc=[];if(bi){let Ag=c.createSpreadElement(c.createIdentifier("arguments")),_u=c.createCallExpression(c.createSuper(),void 0,[Ag]);mc.push(c.createExpressionStatement(_u))}Or(mc,gs);let gg=c.createBlock(mc,!0);$r=c.createConstructorDeclaration(void 0,[],gg)}}if(Je.staticMethodExtraInitializersName&&In.push(Rt(Je.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Je.instanceMethodExtraInitializersName&&In.push(Rt(Je.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Je.memberInfos&&Dh(Je.memberInfos,(gs,fs)=>{cg(fs)&&(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Je.memberInfos&&Dh(Je.memberInfos,(gs,fs)=>{cg(fs)||(In.push(Rt(gs.memberDecoratorsName)),gs.memberInitializersName&&In.push(Rt(gs.memberInitializersName,c.createArrayLiteralExpression())),gs.memberExtraInitializersName&&In.push(Rt(gs.memberExtraInitializersName,c.createArrayLiteralExpression())),gs.memberDescriptorName&&In.push(Rt(gs.memberDescriptorName)))}),Hn=Or(Hn,Je.staticNonFieldDecorationStatements),Hn=Or(Hn,Je.nonStaticNonFieldDecorationStatements),Hn=Or(Hn,Je.staticFieldDecorationStatements),Hn=Or(Hn,Je.nonStaticFieldDecorationStatements),Je.classDescriptorName&&Je.classDecoratorsName&&Je.classExtraInitializersName&&Je.classThis){Hn??(Hn=[]);let gs=c.createPropertyAssignment("value",Mn),fs=c.createObjectLiteralExpression([gs]),bi=c.createAssignment(Je.classDescriptorName,fs),mc=c.createPropertyAccessExpression(Mn,"name"),gg=g().createESDecorateHelper(c.createNull(),bi,Je.classDecoratorsName,{kind:"class",name:mc,metadata:Je.metadataReference},c.createNull(),Je.classExtraInitializersName),Ag=c.createExpressionStatement(gg);Hg(Ag,jD(xe)),Hn.push(Ag);let _u=c.createPropertyAccessExpression(Je.classDescriptorName,"value"),wI=c.createAssignment(Je.classThis,_u),AI=c.createAssignment(fr,wI);Hn.push(c.createExpressionStatement(AI))}if(Hn.push(cn(Mn,Je.metadataReference)),jt(Je.pendingStaticInitializers)){for(let gs of Je.pendingStaticInitializers){let fs=c.createExpressionStatement(gs);Hg(fs,XT(gs)),Ot=Ft(Ot,fs)}Je.pendingStaticInitializers=void 0}if(Je.classExtraInitializersName){let gs=g().createRunInitializersHelper(Mn,Je.classExtraInitializersName),fs=c.createExpressionStatement(gs);Hg(fs,xe.name??jD(xe)),Ot=Ft(Ot,fs)}Hn&&Ot&&!Je.hasStaticInitializers&&(Or(Hn,Ot),Ot=void 0);let es=Hn&&c.createClassStaticBlockDeclaration(c.createBlock(Hn,!0));es&&ao&&sie(es,32);let Wi=Ot&&c.createClassStaticBlockDeclaration(c.createBlock(Ot,!0));if(es||$r||Wi){let gs=[],fs=ci.findIndex(kz);es?(Or(gs,ci,0,fs+1),gs.push(es),Or(gs,ci,fs+1)):Or(gs,ci),$r&&gs.push($r),Wi&&gs.push(Wi),ci=gn(c.createNodeArray(gs),ci)}let Vn=h(),Ui;if(Bs){Ui=c.createClassExpression(void 0,void 0,void 0,ri,ci),Je.classThis&&(Ui=FOt(c,Ui,Je.classThis));let gs=c.createVariableDeclaration(fr,void 0,void 0,Ui),fs=c.createVariableDeclarationList([gs]),bi=Je.classThis?c.createAssignment(fr,Je.classThis):fr;In.push(c.createVariableStatement(void 0,fs),c.createReturnStatement(bi))}else Ui=c.createClassExpression(void 0,xe.name,void 0,ri,ci),In.push(c.createReturnStatement(Ui));if(ao){N3(Ui,32);for(let gs of Ui.members)(pC(gs)||t0(gs))&&zh(gs)&&N3(gs,32)}return ua(Ui,xe),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(In,Vn))}function Pt(xe){return Rx(!1,xe)||HJ(!1,xe)}function _r(xe){if(Pt(xe)){let fr=[],Je=Dd(xe,xa)??xe,In=Je.name?c.createStringLiteralFromNode(Je.name):c.createStringLiteral("default"),Hn=Ga(xe,32),Ot=Ga(xe,2048);if(xe.name||(xe=J9e(s,xe,In)),Hn&&Ot){let $r=Ke(xe);if(xe.name){let ri=c.createVariableDeclaration(c.getLocalName(xe),void 0,void 0,$r);ua(ri,xe);let ao=c.createVariableDeclarationList([ri],1),Bs=c.createVariableStatement(void 0,ao);fr.push(Bs);let Ys=c.createExportDefault(c.getDeclarationName(xe));ua(Ys,xe),hh(Ys,DB(xe)),Hg(Ys,jD(xe)),fr.push(Ys)}else{let ri=c.createExportDefault($r);ua(ri,xe),hh(ri,DB(xe)),Hg(ri,jD(xe)),fr.push(ri)}}else{pe.assertIsDefined(xe.name,"A class declaration that is not a default export must have a name.");let $r=Ke(xe),ri=Hn?Mn=>y(Mn)?void 0:ot(Mn):ot,ao=Ws(xe.modifiers,ri,Ig),Bs=c.getLocalName(xe,!1,!0),Ys=c.createVariableDeclaration(Bs,void 0,void 0,$r);ua(Ys,xe);let tn=c.createVariableDeclarationList([Ys],1),wn=c.createVariableStatement(ao,tn);if(ua(wn,xe),hh(wn,DB(xe)),fr.push(wn),Hn){let Mn=c.createExternalModuleExport(Bs);ua(Mn,xe),fr.push(Mn)}}return ac(fr)}else{let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.heritageClauses,Ye,h1);Ie(void 0);let In=Ws(xe.members,Qe,PI);return _e(),c.updateClassDeclaration(xe,fr,xe.name,void 0,Je,In)}}function Gt(xe){if(Pt(xe)){let fr=Ke(xe);return ua(fr,xe),fr}else{let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.heritageClauses,Ye,h1);Ie(void 0);let In=Ws(xe.members,Qe,PI);return _e(),c.updateClassExpression(xe,fr,xe.name,void 0,Je,In)}}function nt(xe,fr){if(jt(fr.pendingInstanceInitializers)){let Je=[];return Je.push(c.createExpressionStatement(c.inlineExpressions(fr.pendingInstanceInitializers))),fr.pendingInstanceInitializers=void 0,Je}}function Dt(xe,fr,Je,In,Hn,Ot){let $r=In[Hn],ri=fr[$r];if(Or(xe,Ws(fr,Ye,Lc,Je,$r-Je)),mU(ri)){let ao=[];Dt(ao,ri.tryBlock.statements,0,In,Hn+1,Ot);let Bs=c.createNodeArray(ao);gn(Bs,ri.tryBlock.statements),xe.push(c.updateTryStatement(ri,c.updateBlock(ri.tryBlock,ao),Mr(ri.catchClause,Ye,iQ),Mr(ri.finallyBlock,Ye,$u)))}else Or(xe,Ws(fr,Ye,Lc,$r,1)),Or(xe,Ot);Or(xe,Ws(fr,Ye,Lc,$r+1))}function tr(xe){Ee(xe);let fr=Ws(xe.modifiers,ot,Ig),Je=Ws(xe.parameters,Ye,Si),In;if(xe.body&&T){let Hn=nt(T.class,T);if(Hn){let Ot=[],$r=c.copyPrologue(xe.body.statements,Ot,!1,Ye),ri=M9e(xe.body.statements,$r);ri.length>0?Dt(Ot,xe.body.statements,$r,ri,0,Hn):(Or(Ot,Hn),Or(Ot,Ws(xe.body.statements,Ye,Lc))),In=c.createBlock(Ot,!0),ua(In,xe.body),gn(In,xe.body)}}return In??(In=Mr(xe.body,Ye,$u)),Ne(),c.updateConstructorDeclaration(xe,fr,Je,In)}function ur(xe,fr){return xe!==fr&&(hh(xe,fr),Hg(xe,jD(fr))),xe}function Gr(xe,fr,Je){let In,Hn,Ot,$r,ri,ao;if(!fr){let tn=Ws(xe.modifiers,ot,Ig);return Te(),Hn=ba(xe.name),Ze(),{modifiers:tn,referencedName:In,name:Hn,initializersName:Ot,descriptorName:ao,thisArg:ri}}let Bs=Fr(Y9e(xe,fr.class,!1)),Ys=Ws(xe.modifiers,ot,Ig);if(Bs){let tn=_t(xe,"decorators"),wn=c.createArrayLiteralExpression(Bs),Mn=c.createAssignment(tn,wn),ci={memberDecoratorsName:tn};fr.memberInfos??(fr.memberInfos=new Map),fr.memberInfos.set(xe,ci),M??(M=[]),M.push(Mn);let es=NL(xe)||t0(xe)?cg(xe)?fr.staticNonFieldDecorationStatements??(fr.staticNonFieldDecorationStatements=[]):fr.nonStaticNonFieldDecorationStatements??(fr.nonStaticNonFieldDecorationStatements=[]):pi(xe)&&!t0(xe)?cg(xe)?fr.staticFieldDecorationStatements??(fr.staticFieldDecorationStatements=[]):fr.nonStaticFieldDecorationStatements??(fr.nonStaticFieldDecorationStatements=[]):pe.fail(),Wi=Bg(xe)?"getter":Dg(xe)?"setter":uu(xe)?"method":t0(xe)?"accessor":pi(xe)?"field":pe.fail(),Vn;if(Ir(xe.name)||p(xe.name))Vn={computed:!1,name:xe.name};else if(Tw(xe.name))Vn={computed:!0,name:c.createStringLiteralFromNode(xe.name)};else{let gs=xe.name.expression;Tw(gs)&&!Ir(gs)?Vn={computed:!0,name:c.createStringLiteralFromNode(gs)}:(Te(),{referencedName:In,name:Hn}=Gl(xe.name),Vn={computed:!0,name:In},Ze())}let Ui={kind:Wi,name:Vn,static:cg(xe),private:p(xe.name),access:{get:pi(xe)||Bg(xe)||uu(xe),set:pi(xe)||Dg(xe)},metadata:fr.metadataReference};if(NL(xe)){let gs=cg(xe)?fr.staticMethodExtraInitializersName:fr.instanceMethodExtraInitializersName;pe.assertIsDefined(gs);let fs;pC(xe)&&Je&&(fs=Je(xe,Ws(Ys,gg=>Gs(gg,G),Ig)),ci.memberDescriptorName=ao=_t(xe,"descriptor"),fs=c.createAssignment(ao,fs));let bi=g().createESDecorateHelper(c.createThis(),fs??c.createNull(),tn,Ui,c.createNull(),gs),mc=c.createExpressionStatement(bi);Hg(mc,jD(xe)),es.push(mc)}else if(pi(xe)){Ot=ci.memberInitializersName??(ci.memberInitializersName=_t(xe,"initializers")),$r=ci.memberExtraInitializersName??(ci.memberExtraInitializersName=_t(xe,"extraInitializers")),cg(xe)&&(ri=fr.classThis);let gs;pC(xe)&&Nw(xe)&&Je&&(gs=Je(xe,void 0),ci.memberDescriptorName=ao=_t(xe,"descriptor"),gs=c.createAssignment(ao,gs));let fs=g().createESDecorateHelper(t0(xe)?c.createThis():c.createNull(),gs??c.createNull(),tn,Ui,Ot,$r),bi=c.createExpressionStatement(fs);Hg(bi,jD(xe)),es.push(bi)}}return Hn===void 0&&(Te(),Hn=ba(xe.name),Ze()),!jt(Ys)&&(uu(xe)||pi(xe))&&ti(Hn,1024),{modifiers:Ys,referencedName:In,name:Hn,initializersName:Ot,extraInitializersName:$r,descriptorName:ao,thisArg:ri}}function dt(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,hr);if(In)return Ne(),ur(nn(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateMethodDeclaration(xe,fr,xe.asteriskToken,Je,void 0,void 0,Hn,void 0,Ot),xe)}}function pr(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,En);if(In)return Ne(),ur(bn(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateGetAccessorDeclaration(xe,fr,Je,Hn,void 0,Ot),xe)}}function st(xe){Ee(xe);let{modifiers:fr,name:Je,descriptorName:In}=Gr(xe,T,Ni);if(In)return Ne(),ur(ds(fr,Je,In),xe);{let Hn=Ws(xe.parameters,Ye,Si),Ot=Mr(xe.body,Ye,$u);return Ne(),ur(c.updateSetAccessorDeclaration(xe,fr,Je,Hn,Ot),xe)}}function ir(xe){Ee(xe);let fr;if(kz(xe))fr=_s(xe,Ye,s);else if(Tde(xe)){let Je=W;W=void 0,fr=_s(xe,Ye,s),W=Je}else if(xe=_s(xe,Ye,s),fr=xe,T&&(T.hasStaticInitializers=!0,jt(T.pendingStaticInitializers))){let Je=[];for(let Ot of T.pendingStaticInitializers){let $r=c.createExpressionStatement(Ot);Hg($r,XT(Ot)),Je.push($r)}let In=c.createBlock(Je,!0);fr=[c.createClassStaticBlockDeclaration(In),fr],T.pendingStaticInitializers=void 0}return Ne(),fr}function zt(xe){kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),Ee(xe),pe.assert(!VJ(xe),"Not yet implemented.");let{modifiers:fr,name:Je,initializersName:In,extraInitializersName:Hn,descriptorName:Ot,thisArg:$r}=Gr(xe,T,Nw(xe)?Gi:void 0);d();let ri=Mr(xe.initializer,Ye,un);In&&(ri=g().createRunInitializersHelper($r??c.createThis(),In,ri??c.createVoidZero())),cg(xe)&&T&&ri&&(T.hasStaticInitializers=!0);let ao=h();if(jt(ao)&&(ri=c.createImmediatelyInvokedArrowFunction([...ao,c.createReturnStatement(ri)])),T&&(cg(xe)?(ri=nr(T,!0,ri),Hn&&(T.pendingStaticInitializers??(T.pendingStaticInitializers=[]),T.pendingStaticInitializers.push(g().createRunInitializersHelper(T.classThis??c.createThis(),Hn)))):(ri=nr(T,!1,ri),Hn&&(T.pendingInstanceInitializers??(T.pendingInstanceInitializers=[]),T.pendingInstanceInitializers.push(g().createRunInitializersHelper(c.createThis(),Hn))))),Ne(),Nw(xe)&&Ot){let Bs=DB(xe),Ys=XT(xe),tn=xe.name,wn=tn,Mn=tn;if(Un(tn)&&!BN(tn.expression)){let Ui=l9e(tn);if(Ui)wn=c.updateComputedPropertyName(tn,Mr(tn.expression,Ye,un)),Mn=c.updateComputedPropertyName(tn,Ui.left);else{let gs=c.createTempVariable(_);Hg(gs,tn.expression);let fs=Mr(tn.expression,Ye,un),bi=c.createAssignment(gs,fs);Hg(bi,tn.expression),wn=c.updateComputedPropertyName(tn,bi),Mn=c.updateComputedPropertyName(tn,gs)}}let ci=Ws(fr,Ui=>Ui.kind!==129?Ui:void 0,Ig),es=G$e(c,xe,ci,ri);ua(es,xe),ti(es,3072),Hg(es,Ys),Hg(es.name,xe.name);let Wi=bn(ci,wn,Ot);ua(Wi,xe),hh(Wi,Bs),Hg(Wi,Ys);let Vn=ds(ci,Mn,Ot);return ua(Vn,xe),ti(Vn,3072),Hg(Vn,Ys),[es,Wi,Vn]}return ur(c.updatePropertyDeclaration(xe,fr,Je,void 0,void 0,ri),xe)}function Ht(xe){return W??xe}function Br(xe){if(xy(xe.expression)&&W){let fr=Mr(xe.expression,Ye,un),Je=Ws(xe.arguments,Ye,un),In=c.createFunctionCallCall(fr,W,Je);return ua(In,xe),gn(In,xe),In}return _s(xe,Ye,s)}function mn(xe){if(xy(xe.tag)&&W){let fr=Mr(xe.tag,Ye,un),Je=c.createFunctionBindCall(fr,W,[]);ua(Je,xe),gn(Je,xe);let In=Mr(xe.template,Ye,AP);return c.updateTaggedTemplateExpression(xe,Je,void 0,In)}return _s(xe,Ye,s)}function jn(xe){if(xy(xe)&&Ir(xe.name)&&W&&V){let fr=c.createStringLiteralFromNode(xe.name),Je=c.createReflectGetCall(V,fr,W);return ua(Je,xe.expression),gn(Je,xe.expression),Je}return _s(xe,Ye,s)}function Zi(xe){if(xy(xe)&&W&&V){let fr=Mr(xe.argumentExpression,Ye,un),Je=c.createReflectGetCall(V,fr,W);return ua(Je,xe.expression),gn(Je,xe.expression),Je}return _s(xe,Ye,s)}function Ns(xe){kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer)));let fr=c.updateParameterDeclaration(xe,void 0,xe.dotDotDotToken,Mr(xe.name,Ye,RL),void 0,void 0,Mr(xe.initializer,Ye,un));return fr!==xe&&(hh(fr,xe),gn(fr,Av(xe)),Hg(fr,Av(xe)),ti(fr.name,64)),fr}function An(xe){return vd(xe)&&!xe.name&&Pt(xe)}function si(xe){let fr=HI(xe);return vd(fr)&&!fr.name&&!Rx(!1,fr)}function ks(xe){return c.updateForStatement(xe,Mr(xe.initializer,mt,hE),Mr(xe.condition,Ye,un),Mr(xe.incrementor,mt,un),Py(xe.statement,Ye,s))}function Ic(xe){return _s(xe,mt,s)}function su(xe,fr){if(Dx(xe)){let Je=Tu(xe.left),In=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,Je,xe.operatorToken,In)}if(Jm(xe)){if(kb(xe,An))return xe=m1(s,xe,si(xe.right)),_s(xe,Ye,s);if(xy(xe.left)&&W&&V){let Je=Yg(xe.left)?Mr(xe.left.argumentExpression,Ye,un):Ir(xe.left.name)?c.createStringLiteralFromNode(xe.left.name):void 0;if(Je){let In=Mr(xe.right,Ye,un);if(vde(xe.operatorToken.kind)){let Ot=Je;BN(Je)||(Ot=c.createTempVariable(_),Je=c.createAssignment(Ot,Je));let $r=c.createReflectGetCall(V,Ot,W);ua($r,xe.left),gn($r,xe.left),In=c.createBinaryExpression($r,Bde(xe.operatorToken.kind),In),gn(In,xe)}let Hn=fr?void 0:c.createTempVariable(_);return Hn&&(In=c.createAssignment(Hn,In),gn(Hn,xe)),In=c.createReflectSetCall(V,Je,In,W),ua(In,xe),gn(In,xe),Hn&&(In=c.createComma(In,Hn),gn(In,xe)),In}}}if(xe.operatorToken.kind===28){let Je=Mr(xe.left,mt,un),In=Mr(xe.right,fr?mt:Ye,un);return c.updateBinaryExpression(xe,Je,xe.operatorToken,In)}return _s(xe,Ye,s)}function Zn(xe,fr){if(xe.operator===46||xe.operator===47){let Je=QA(xe.operand);if(xy(Je)&&W&&V){let In=Yg(Je)?Mr(Je.argumentExpression,Ye,un):Ir(Je.name)?c.createStringLiteralFromNode(Je.name):void 0;if(In){let Hn=In;BN(In)||(Hn=c.createTempVariable(_),In=c.createAssignment(Hn,In));let Ot=c.createReflectGetCall(V,Hn,W);ua(Ot,xe),gn(Ot,xe);let $r=fr?void 0:c.createTempVariable(_);return Ot=n9e(c,xe,Ot,_,$r),Ot=c.createReflectSetCall(V,In,Ot,W),ua(Ot,xe),gn(Ot,xe),$r&&(Ot=c.createComma(Ot,$r),gn(Ot,xe)),Ot}}}return _s(xe,Ye,s)}function ya(xe,fr){let Je=fr?xEe(xe.elements,mt):xEe(xe.elements,Ye,mt);return c.updateCommaListExpression(xe,Je)}function Gl(xe){if(Tw(xe)||p(xe)){let Ot=c.createStringLiteralFromNode(xe),$r=Mr(xe,Ye,VI);return{referencedName:Ot,name:$r}}if(Tw(xe.expression)&&!Ir(xe.expression)){let Ot=c.createStringLiteralFromNode(xe.expression),$r=Mr(xe,Ye,VI);return{referencedName:Ot,name:$r}}let fr=c.getGeneratedNameForNode(xe);_(fr);let Je=g().createPropKeyHelper(Mr(xe.expression,Ye,un)),In=c.createAssignment(fr,Je),Hn=c.updateComputedPropertyName(xe,it(In));return{referencedName:fr,name:Hn}}function ba(xe){return Un(xe)?Wo(xe):Mr(xe,Ye,VI)}function Wo(xe){let fr=Mr(xe.expression,Ye,un);return BN(fr)||(fr=it(fr)),c.updateComputedPropertyName(xe,fr)}function hc(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function yr(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function hn(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.initializer))),_s(xe,Ye,s)}function Oi(xe){if(og(xe)||OI(xe))return Tu(xe);if(xy(xe)&&W&&V){let fr=Yg(xe)?Mr(xe.argumentExpression,Ye,un):Ir(xe.name)?c.createStringLiteralFromNode(xe.name):void 0;if(fr){let Je=c.createTempVariable(void 0),In=c.createAssignmentTargetWrapper(Je,c.createReflectSetCall(V,fr,Je,W));return ua(In,xe),gn(In,xe),In}}return _s(xe,Ye,s)}function lo(xe){if(Jm(xe,!0)){kb(xe,An)&&(xe=m1(s,xe,si(xe.right)));let fr=Oi(xe.left),Je=Mr(xe.right,Ye,un);return c.updateBinaryExpression(xe,fr,xe.operatorToken,Je)}else return Oi(xe)}function pa(xe){if(D_(xe.expression)){let fr=Oi(xe.expression);return c.updateSpreadElement(xe,fr)}return _s(xe,Ye,s)}function Oa(xe){return pe.assertNode(xe,EJ),of(xe)?pa(xe):yp(xe)?_s(xe,Ye,s):lo(xe)}function tl(xe){let fr=Mr(xe.name,Ye,VI);if(Jm(xe.initializer,!0)){let Je=lo(xe.initializer);return c.updatePropertyAssignment(xe,fr,Je)}if(D_(xe.initializer)){let Je=Oi(xe.initializer);return c.updatePropertyAssignment(xe,fr,Je)}return _s(xe,Ye,s)}function Qu(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.objectAssignmentInitializer))),_s(xe,Ye,s)}function Tg(xe){if(D_(xe.expression)){let fr=Oi(xe.expression);return c.updateSpreadAssignment(xe,fr)}return _s(xe,Ye,s)}function Cs(xe){return pe.assertNode(xe,gP),Lx(xe)?Tg(xe):a0(xe)?Qu(xe):fm(xe)?tl(xe):_s(xe,Ye,s)}function Tu(xe){if(OI(xe)){let fr=Ws(xe.elements,Oa,un);return c.updateArrayLiteralExpression(xe,fr)}else{let fr=Ws(xe.properties,Cs,yw);return c.updateObjectLiteralExpression(xe,fr)}}function Pr(xe){return kb(xe,An)&&(xe=m1(s,xe,si(xe.expression))),_s(xe,Ye,s)}function Pn(xe,fr){let Je=fr?mt:Ye,In=Mr(xe.expression,Je,un);return c.updateParenthesizedExpression(xe,In)}function pt(xe,fr){let Je=fr?mt:Ye,In=Mr(xe.expression,Je,un);return c.updatePartiallyEmittedExpression(xe,In)}function on(xe,fr){return jt(xe)&&(fr?gI(fr)?(xe.push(fr.expression),fr=c.updateParenthesizedExpression(fr,c.inlineExpressions(xe))):(xe.push(fr),fr=c.inlineExpressions(xe)):fr=c.inlineExpressions(xe)),fr}function it(xe){let fr=on(M,xe);return pe.assertIsDefined(fr),fr!==xe&&(M=void 0),fr}function nr(xe,fr,Je){let In=on(fr?xe.pendingStaticInitializers:xe.pendingInstanceInitializers,Je);return In!==Je&&(fr?xe.pendingStaticInitializers=void 0:xe.pendingInstanceInitializers=void 0),In}function Fr(xe){if(!xe)return;let fr=[];return Or(fr,At(xe.decorators,Kr)),fr}function Kr(xe){let fr=Mr(xe.expression,Ye,un);ti(fr,3072);let Je=HI(fr);if(_p(Je)){let{target:In,thisArg:Hn}=c.createCallBinding(fr,_,S,!0);return c.restoreOuterExpressions(fr,c.createFunctionBindCall(In,Hn,[]))}return fr}function Dn(xe,fr,Je,In,Hn,Ot,$r){let ri=c.createFunctionExpression(Je,In,void 0,void 0,Ot,void 0,$r??c.createBlock([]));ua(ri,xe),Hg(ri,jD(xe)),ti(ri,3072);let ao=Hn==="get"||Hn==="set"?Hn:void 0,Bs=c.createStringLiteralFromNode(fr,void 0),Ys=g().createSetFunctionNameHelper(ri,Bs,ao),tn=c.createPropertyAssignment(c.createIdentifier(Hn),Ys);return ua(tn,xe),Hg(tn,jD(xe)),ti(tn,3072),tn}function hr(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,xe.asteriskToken,"value",Ws(xe.parameters,Ye,Si),Mr(xe.body,Ye,$u))])}function En(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],Mr(xe.body,Ye,$u))])}function Ni(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"set",Ws(xe.parameters,Ye,Si),Mr(xe.body,Ye,$u))])}function Gi(xe,fr){return c.createObjectLiteralExpression([Dn(xe,xe.name,fr,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)))])),Dn(xe,xe.name,fr,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(xe.name)),c.createIdentifier("value")))]))])}function nn(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Je,c.createIdentifier("value")))]))}function bn(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createGetAccessorDeclaration(xe,fr,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Je,c.createIdentifier("get")),c.createThis(),[]))]))}function ds(xe,fr,Je){return xe=Ws(xe,In=>Ge(In)?In:void 0,Ig),c.createSetAccessorDeclaration(xe,fr,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Je,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Mt(xe,fr){let Je=c.createVariableDeclaration(xe,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[fr?Bt(fr):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Je],2))}function cn(xe,fr){let Je=c.createObjectDefinePropertyCall(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:fr},!0));return ti(c.createIfStatement(fr,c.createExpressionStatement(Je)),1)}function Bt(xe){return c.createBinaryExpression(c.createElementAccessExpression(xe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function YOt(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Mg(R),W=0,V=0,M,ee,re,ge,Ie=[],_e=0,Ee=s.onEmitNode,Ne=s.onSubstituteNode;return s.onEmitNode=Ic,s.onSubstituteNode=su,rR(s,Te);function Te(yr){if(yr.isDeclarationFile)return yr;Ze(1,!1),Ze(2,!Jre(yr,R));let hn=_s(yr,Qe,s);return hN(hn,s.readEmitHelpers()),hn}function Ze(yr,hn){_e=hn?_e|yr:_e&~yr}function We(yr){return(_e&yr)!==0}function Ue(){return!We(1)}function $e(){return We(2)}function Ye(yr,hn,Oi){let lo=yr&~_e;if(lo){Ze(lo,!0);let pa=hn(Oi);return Ze(lo,!1),pa}return hn(Oi)}function Tt(yr){return _s(yr,Qe,s)}function ot(yr){switch(yr.kind){case 219:case 263:case 175:case 178:case 179:case 177:return yr;case 170:case 209:case 261:break;case 80:if(ge&&S.isArgumentsLocalBinding(yr))return ge;break}return _s(yr,ot,s)}function Qe(yr){if(!(yr.transformFlags&256))return ge?ot(yr):yr;switch(yr.kind){case 134:return;case 224:return Pt(yr);case 175:return Ye(3,Gt,yr);case 263:return Ye(3,tr,yr);case 219:return Ye(3,ur,yr);case 220:return Ye(1,Gr,yr);case 212:return ee&&jo(yr)&&yr.expression.kind===108&&ee.add(yr.name.escapedText),_s(yr,Qe,s);case 213:return ee&&yr.expression.kind===108&&(re=!0),_s(yr,Qe,s);case 178:return Ye(3,nt,yr);case 179:return Ye(3,Dt,yr);case 177:return Ye(3,_r,yr);case 264:case 232:return Ye(3,Tt,yr);default:return _s(yr,Qe,s)}}function mt(yr){if(CZe(yr))switch(yr.kind){case 244:return _t(yr);case 249:return Ke(yr);case 250:return Rt(yr);case 251:return Lt(yr);case 300:return ht(yr);case 242:case 256:case 270:case 297:case 298:case 259:case 247:case 248:case 246:case 255:case 257:return _s(yr,mt,s);default:return pe.assertNever(yr,"Unhandled node.")}return Qe(yr)}function ht(yr){let hn=new Set;dt(yr.variableDeclaration,hn);let Oi;if(hn.forEach((lo,pa)=>{M.has(pa)&&(Oi||(Oi=new Set(M)),Oi.delete(pa))}),Oi){let lo=M;M=Oi;let pa=_s(yr,mt,s);return M=lo,pa}else return _s(yr,mt,s)}function _t(yr){if(pr(yr.declarationList)){let hn=st(yr.declarationList,!1);return hn?c.createExpressionStatement(hn):void 0}return _s(yr,Qe,s)}function Rt(yr){return c.updateForInStatement(yr,pr(yr.initializer)?st(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,hE)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,mt,s))}function Lt(yr){return c.updateForOfStatement(yr,Mr(yr.awaitModifier,Qe,U),pr(yr.initializer)?st(yr.initializer,!0):pe.checkDefined(Mr(yr.initializer,Qe,hE)),pe.checkDefined(Mr(yr.expression,Qe,un)),Py(yr.statement,mt,s))}function Ke(yr){let hn=yr.initializer;return c.updateForStatement(yr,pr(hn)?st(hn,!1):Mr(yr.initializer,Qe,hE),Mr(yr.condition,Qe,un),Mr(yr.incrementor,Qe,un),Py(yr.statement,mt,s))}function Pt(yr){return Ue()?_s(yr,Qe,s):ua(gn(c.createYieldExpression(void 0,Mr(yr.expression,Qe,un)),yr),yr)}function _r(yr){let hn=ge;ge=void 0;let Oi=c.updateConstructorDeclaration(yr,Ws(yr.modifiers,Qe,Ig),vI(yr.parameters,Qe,s),mn(yr));return ge=hn,Oi}function Gt(yr){let hn,Oi=SI(yr),lo=ge;ge=void 0;let pa=c.updateMethodDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.asteriskToken,yr.name,void 0,void 0,hn=Oi&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,Oi&2?Ns(yr,hn):mn(yr));return ge=lo,pa}function nt(yr){let hn=ge;ge=void 0;let Oi=c.updateGetAccessorDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.name,vI(yr.parameters,Qe,s),void 0,mn(yr));return ge=hn,Oi}function Dt(yr){let hn=ge;ge=void 0;let Oi=c.updateSetAccessorDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.name,vI(yr.parameters,Qe,s),mn(yr));return ge=hn,Oi}function tr(yr){let hn,Oi=ge;ge=void 0;let lo=SI(yr),pa=c.updateFunctionDeclaration(yr,Ws(yr.modifiers,Qe,dp),yr.asteriskToken,yr.name,void 0,hn=lo&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,lo&2?Ns(yr,hn):uS(yr.body,Qe,s));return ge=Oi,pa}function ur(yr){let hn,Oi=ge;ge=void 0;let lo=SI(yr),pa=c.updateFunctionExpression(yr,Ws(yr.modifiers,Qe,Ig),yr.asteriskToken,yr.name,void 0,hn=lo&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,lo&2?Ns(yr,hn):uS(yr.body,Qe,s));return ge=Oi,pa}function Gr(yr){let hn,Oi=SI(yr);return c.updateArrowFunction(yr,Ws(yr.modifiers,Qe,Ig),void 0,hn=Oi&2?Zi(yr):vI(yr.parameters,Qe,s),void 0,yr.equalsGreaterThanToken,Oi&2?Ns(yr,hn):uS(yr.body,Qe,s))}function dt({name:yr},hn){if(Ir(yr))hn.add(yr.escapedText);else for(let Oi of yr.elements)yp(Oi)||dt(Oi,hn)}function pr(yr){return!!yr&&u_(yr)&&!(yr.flags&7)&&yr.declarations.some(Br)}function st(yr,hn){ir(yr);let Oi=iU(yr);return Oi.length===0?hn?Mr(c.converters.convertToAssignmentElementTarget(yr.declarations[0].name),Qe,un):void 0:c.inlineExpressions(At(Oi,Ht))}function ir(yr){F(yr.declarations,zt)}function zt({name:yr}){if(Ir(yr))_(yr);else for(let hn of yr.elements)yp(hn)||zt(hn)}function Ht(yr){let hn=Hg(c.createAssignment(c.converters.convertToAssignmentElementTarget(yr.name),yr.initializer),yr);return pe.checkDefined(Mr(hn,Qe,un))}function Br({name:yr}){if(Ir(yr))return M.has(yr.escapedText);for(let hn of yr.elements)if(!yp(hn)&&Br(hn))return!0;return!1}function mn(yr){pe.assertIsDefined(yr.body);let hn=ee,Oi=re;ee=new Set,re=!1;let lo=uS(yr.body,Qe,s),pa=Dd(yr,kd);if(T>=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128))&&(SI(pa)&3)!==3){if(ks(),ee.size){let tl=U9e(c,S,yr,ee);Ie[rd(tl)]=!0;let Qu=lo.statements.slice();Sw(Qu,[tl]),lo=c.updateBlock(lo,Qu)}re&&(S.hasNodeCheckFlag(yr,256)?$Y(lo,DF):S.hasNodeCheckFlag(yr,128)&&$Y(lo,lie))}return ee=hn,re=Oi,lo}function jn(){pe.assert(ge);let yr=c.createVariableDeclaration(ge,void 0,void 0,c.createIdentifier("arguments")),hn=c.createVariableStatement(void 0,[yr]);return N0(hn),Gw(hn,2097152),hn}function Zi(yr){if(FEe(yr.parameters))return vI(yr.parameters,Qe,s);let hn=[];for(let lo of yr.parameters){if(lo.initializer||lo.dotDotDotToken){if(yr.kind===220){let Oa=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));hn.push(Oa)}break}let pa=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(lo.name,8));hn.push(pa)}let Oi=c.createNodeArray(hn);return gn(Oi,yr.parameters),Oi}function Ns(yr,hn){let Oi=FEe(yr.parameters)?void 0:vI(yr.parameters,Qe,s);d();let pa=Dd(yr,bu).type,Oa=T<2?si(pa):void 0,tl=yr.kind===220,Qu=ge,Cs=S.hasNodeCheckFlag(yr,512)&&!ge;Cs&&(ge=c.createUniqueName("arguments"));let Tu;if(Oi)if(tl){let Fr=[];pe.assert(hn.length<=yr.parameters.length);for(let Kr=0;Kr=2&&(S.hasNodeCheckFlag(yr,256)||S.hasNodeCheckFlag(yr,128));if(Kr&&(ks(),ee.size)){let hr=U9e(c,S,yr,ee);Ie[rd(hr)]=!0,Sw(Fr,[hr])}Cs&&Sw(Fr,[jn()]);let Dn=c.createBlock(Fr,!0);gn(Dn,yr.body),Kr&&re&&(S.hasNodeCheckFlag(yr,256)?$Y(Dn,DF):S.hasNodeCheckFlag(yr,128)&&$Y(Dn,lie)),nr=Dn}return M=Pr,tl||(ee=Pn,re=pt,ge=Qu),nr}function An(yr,hn){return $u(yr)?c.updateBlock(yr,Ws(yr.statements,mt,Lc,hn)):c.converters.convertToFunctionBlock(pe.checkDefined(Mr(yr,mt,r7)))}function si(yr){let hn=yr&&ene(yr);if(hn&&fC(hn)){let Oi=S.getTypeReferenceSerializationKind(hn);if(Oi===1||Oi===0)return hn}}function ks(){W&1||(W|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Ic(yr,hn,Oi){if(W&1&&Wo(hn)){let lo=(S.hasNodeCheckFlag(hn,128)?128:0)|(S.hasNodeCheckFlag(hn,256)?256:0);if(lo!==V){let pa=V;V=lo,Ee(yr,hn,Oi),V=pa;return}}else if(W&&Ie[rd(hn)]){let lo=V;V=0,Ee(yr,hn,Oi),V=lo;return}Ee(yr,hn,Oi)}function su(yr,hn){return hn=Ne(yr,hn),yr===1&&V?Zn(hn):hn}function Zn(yr){switch(yr.kind){case 212:return ya(yr);case 213:return Gl(yr);case 214:return ba(yr)}return yr}function ya(yr){return yr.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),yr.name),yr):yr}function Gl(yr){return yr.expression.kind===108?hc(yr.argumentExpression,yr):yr}function ba(yr){let hn=yr.expression;if(xy(hn)){let Oi=jo(hn)?ya(hn):Gl(hn);return c.createCallExpression(c.createPropertyAccessExpression(Oi,"call"),void 0,[c.createThis(),...yr.arguments])}return yr}function Wo(yr){let hn=yr.kind;return hn===264||hn===177||hn===175||hn===178||hn===179}function hc(yr,hn){return V&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),"value"),hn):gn(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[yr]),hn)}}function U9e(s,c,g,d){let h=c.hasNodeCheckFlag(g,256),_=[];return d.forEach((S,R)=>{let T=Bc(R),W=[];W.push(s.createPropertyAssignment("get",s.createArrowFunction(void 0,void 0,[],void 0,void 0,ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8)))),h&&W.push(s.createPropertyAssignment("set",s.createArrowFunction(void 0,void 0,[s.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,s.createAssignment(ti(s.createPropertyAccessExpression(ti(s.createSuper(),8),T),8),s.createIdentifier("v"))))),_.push(s.createPropertyAssignment(T,s.createObjectLiteralExpression(W)))}),s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.createUniqueName("_super",48),void 0,void 0,s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Object"),"create"),void 0,[s.createNull(),s.createObjectLiteralExpression(_,!0)]))],2))}function QOt(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistVariableDeclaration:_}=s,S=s.getEmitResolver(),R=s.getCompilerOptions(),T=Mg(R),W=s.onEmitNode;s.onEmitNode=Qu;let V=s.onSubstituteNode;s.onSubstituteNode=Tg;let M=!1,ee=0,re,ge,Ie=0,_e=0,Ee,Ne,Te,Ze,We=[];return rR(s,ot);function Ue(it,nr){return _e!==(_e&~it|nr)}function $e(it,nr){let Fr=_e;return _e=(_e&~it|nr)&3,Fr}function Ye(it){_e=it}function Tt(it){Ne=Ft(Ne,c.createVariableDeclaration(it))}function ot(it){if(it.isDeclarationFile)return it;Ee=it;let nr=Gr(it);return hN(nr,s.readEmitHelpers()),Ee=void 0,Ne=void 0,nr}function Qe(it){return Lt(it,!1)}function mt(it){return Lt(it,!0)}function ht(it){if(it.kind!==134)return it}function _t(it,nr,Fr,Kr){if(Ue(Fr,Kr)){let Dn=$e(Fr,Kr),hr=it(nr);return Ye(Dn),hr}return it(nr)}function Rt(it){return _s(it,Qe,s)}function Lt(it,nr){if(!(it.transformFlags&128))return it;switch(it.kind){case 224:return Ke(it);case 230:return Pt(it);case 254:return _r(it);case 257:return Gt(it);case 211:return Dt(it);case 227:return pr(it,nr);case 357:return st(it,nr);case 300:return ir(it);case 244:return zt(it);case 261:return Ht(it);case 247:case 248:case 250:return _t(Rt,it,0,2);case 251:return Zi(it,void 0);case 249:return _t(mn,it,0,2);case 223:return jn(it);case 177:return _t(ya,it,2,1);case 175:return _t(Wo,it,2,1);case 178:return _t(Gl,it,2,1);case 179:return _t(ba,it,2,1);case 263:return _t(hc,it,2,1);case 219:return _t(hn,it,2,1);case 220:return _t(yr,it,2,0);case 170:return su(it);case 245:return tr(it);case 218:return ur(it,nr);case 216:return dt(it);case 212:return Te&&jo(it)&&it.expression.kind===108&&Te.add(it.name.escapedText),_s(it,Qe,s);case 213:return Te&&it.expression.kind===108&&(Ze=!0),_s(it,Qe,s);case 264:case 232:return _t(Rt,it,2,1);default:return _s(it,Qe,s)}}function Ke(it){return re&2&&re&1?ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(Mr(it.expression,Qe,un))),it),it):_s(it,Qe,s)}function Pt(it){if(re&2&&re&1){if(it.asteriskToken){let nr=Mr(pe.checkDefined(it.expression),Qe,un);return ua(gn(c.createYieldExpression(void 0,g().createAwaitHelper(c.updateYieldExpression(it,it.asteriskToken,gn(g().createAsyncDelegatorHelper(gn(g().createAsyncValuesHelper(nr),nr)),nr)))),it),it)}return ua(gn(c.createYieldExpression(void 0,si(it.expression?Mr(it.expression,Qe,un):c.createVoidZero())),it),it)}return _s(it,Qe,s)}function _r(it){return re&2&&re&1?c.updateReturnStatement(it,si(it.expression?Mr(it.expression,Qe,un):c.createVoidZero())):_s(it,Qe,s)}function Gt(it){if(re&2){let nr=Iye(it);return nr.kind===251&&nr.awaitModifier?Zi(nr,it):c.restoreEnclosingLabel(Mr(nr,Qe,Lc,c.liftToBlock),it)}return _s(it,Qe,s)}function nt(it){let nr,Fr=[];for(let Kr of it)if(Kr.kind===306){nr&&(Fr.push(c.createObjectLiteralExpression(nr)),nr=void 0);let Dn=Kr.expression;Fr.push(Mr(Dn,Qe,un))}else nr=Ft(nr,Kr.kind===304?c.createPropertyAssignment(Kr.name,Mr(Kr.initializer,Qe,un)):Mr(Kr,Qe,yw));return nr&&Fr.push(c.createObjectLiteralExpression(nr)),Fr}function Dt(it){if(it.transformFlags&65536){let nr=nt(it.properties);nr.length&&nr[0].kind!==211&&nr.unshift(c.createObjectLiteralExpression());let Fr=nr[0];if(nr.length>1){for(let Kr=1;Kr=2&&(S.hasNodeCheckFlag(it,256)||S.hasNodeCheckFlag(it,128));if(Ni){tl();let nn=U9e(c,S,it,Te);We[rd(nn)]=!0,Sw(Dn,[nn])}Dn.push(En);let Gi=c.updateBlock(it.body,Dn);return Ni&&Ze&&(S.hasNodeCheckFlag(it,256)?$Y(Gi,DF):S.hasNodeCheckFlag(it,128)&&$Y(Gi,lie)),Te=Fr,Ze=Kr,Gi}function pa(it){d();let nr=0,Fr=[],Kr=Mr(it.body,Qe,r7)??c.createBlock([]);$u(Kr)&&(nr=c.copyPrologue(Kr.statements,Fr,!1,Qe)),Or(Fr,Oa(void 0,it));let Dn=h();if(nr>0||jt(Fr)||jt(Dn)){let hr=c.converters.convertToFunctionBlock(Kr,!0);return Sw(Fr,Dn),Or(Fr,hr.statements.slice(nr)),c.updateBlock(hr,gn(c.createNodeArray(Fr),hr.statements))}return Kr}function Oa(it,nr){let Fr=!1;for(let Kr of nr.parameters)if(Fr){if(Nu(Kr.name)){if(Kr.name.elements.length>0){let Dn=uQ(Kr,Qe,s,0,c.getGeneratedNameForNode(Kr));if(jt(Dn)){let hr=c.createVariableDeclarationList(Dn),En=c.createVariableStatement(void 0,hr);ti(En,2097152),it=Ft(it,En)}}else if(Kr.initializer){let Dn=c.getGeneratedNameForNode(Kr),hr=Mr(Kr.initializer,Qe,un),En=c.createAssignment(Dn,hr),Ni=c.createExpressionStatement(En);ti(Ni,2097152),it=Ft(it,Ni)}}else if(Kr.initializer){let Dn=c.cloneNode(Kr.name);gn(Dn,Kr.name),ti(Dn,96);let hr=Mr(Kr.initializer,Qe,un);Gw(hr,3168);let En=c.createAssignment(Dn,hr);gn(En,Kr),ti(En,3072);let Ni=c.createBlock([c.createExpressionStatement(En)]);gn(Ni,Kr),ti(Ni,3905);let Gi=c.createTypeCheck(c.cloneNode(Kr.name),"undefined"),nn=c.createIfStatement(Gi,Ni);N0(nn),gn(nn,Kr),ti(nn,2101056),it=Ft(it,nn)}}else if(Kr.transformFlags&65536){Fr=!0;let Dn=uQ(Kr,Qe,s,1,c.getGeneratedNameForNode(Kr),!1,!0);if(jt(Dn)){let hr=c.createVariableDeclarationList(Dn),En=c.createVariableStatement(void 0,hr);ti(En,2097152),it=Ft(it,En)}}return it}function tl(){ee&1||(ee|=1,s.enableSubstitution(214),s.enableSubstitution(212),s.enableSubstitution(213),s.enableEmitNotification(264),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(177),s.enableEmitNotification(244))}function Qu(it,nr,Fr){if(ee&1&&pt(nr)){let Kr=(S.hasNodeCheckFlag(nr,128)?128:0)|(S.hasNodeCheckFlag(nr,256)?256:0);if(Kr!==Ie){let Dn=Ie;Ie=Kr,W(it,nr,Fr),Ie=Dn;return}}else if(ee&&We[rd(nr)]){let Kr=Ie;Ie=0,W(it,nr,Fr),Ie=Kr;return}W(it,nr,Fr)}function Tg(it,nr){return nr=V(it,nr),it===1&&Ie?Cs(nr):nr}function Cs(it){switch(it.kind){case 212:return Tu(it);case 213:return Pr(it);case 214:return Pn(it)}return it}function Tu(it){return it.expression.kind===108?gn(c.createPropertyAccessExpression(c.createUniqueName("_super",48),it.name),it):it}function Pr(it){return it.expression.kind===108?on(it.argumentExpression,it):it}function Pn(it){let nr=it.expression;if(xy(nr)){let Fr=jo(nr)?Tu(nr):Pr(nr);return c.createCallExpression(c.createPropertyAccessExpression(Fr,"call"),void 0,[c.createThis(),...it.arguments])}return it}function pt(it){let nr=it.kind;return nr===264||nr===177||nr===175||nr===178||nr===179}function on(it,nr){return Ie&256?gn(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[it]),"value"),nr):gn(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[it]),nr)}}function XOt(s){let c=s.factory;return rR(s,g);function g(_){return _.isDeclarationFile?_:_s(_,d,s)}function d(_){if(!(_.transformFlags&64))return _;switch(_.kind){case 300:return h(_);default:return _s(_,d,s)}}function h(_){return _.variableDeclaration?_s(_,d,s):c.updateCatchClause(_,c.createVariableDeclaration(c.createTempVariable(void 0)),Mr(_.block,d,$u))}}function JOt(s){let{factory:c,hoistVariableDeclaration:g}=s;return rR(s,d);function d(ge){return ge.isDeclarationFile?ge:_s(ge,h,s)}function h(ge){if(!(ge.transformFlags&32))return ge;switch(ge.kind){case 214:{let Ie=T(ge,!1);return pe.assertNotNode(Ie,_z),Ie}case 212:case 213:if(GC(ge)){let Ie=V(ge,!1,!1);return pe.assertNotNode(Ie,_z),Ie}return _s(ge,h,s);case 227:return ge.operatorToken.kind===61?ee(ge):_s(ge,h,s);case 221:return re(ge);default:return _s(ge,h,s)}}function _(ge){pe.assertNotNode(ge,hJ);let Ie=[ge];for(;!ge.questionDotToken&&!MI(ge);)ge=Ma(o2(ge.expression),GC),pe.assertNotNode(ge,hJ),Ie.unshift(ge);return{expression:ge.expression,chain:Ie}}function S(ge,Ie,_e){let Ee=W(ge.expression,Ie,_e);return _z(Ee)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ge,Ee.expression),Ee.thisArg):c.updateParenthesizedExpression(ge,Ee)}function R(ge,Ie,_e){if(GC(ge))return V(ge,Ie,_e);let Ee=Mr(ge.expression,h,un);pe.assertNotNode(Ee,_z);let Ne;return Ie&&(lQ(Ee)?Ne=Ee:(Ne=c.createTempVariable(g),Ee=c.createAssignment(Ne,Ee))),Ee=ge.kind===212?c.updatePropertyAccessExpression(ge,Ee,Mr(ge.name,h,Ir)):c.updateElementAccessExpression(ge,Ee,Mr(ge.argumentExpression,h,un)),Ne?c.createSyntheticReferenceExpression(Ee,Ne):Ee}function T(ge,Ie){if(GC(ge))return V(ge,Ie,!1);if(gI(ge.expression)&&GC(QA(ge.expression))){let _e=S(ge.expression,!0,!1),Ee=Ws(ge.arguments,h,un);return _z(_e)?gn(c.createFunctionCallCall(_e.expression,_e.thisArg,Ee),ge):c.updateCallExpression(ge,_e,void 0,Ee)}return _s(ge,h,s)}function W(ge,Ie,_e){switch(ge.kind){case 218:return S(ge,Ie,_e);case 212:case 213:return R(ge,Ie,_e);case 214:return T(ge,Ie);default:return Mr(ge,h,un)}}function V(ge,Ie,_e){let{expression:Ee,chain:Ne}=_(ge),Te=W(o2(Ee),_B(Ne[0]),!1),Ze=_z(Te)?Te.thisArg:void 0,We=_z(Te)?Te.expression:Te,Ue=c.restoreOuterExpressions(Ee,We,8);lQ(We)||(We=c.createTempVariable(g),Ue=c.createAssignment(We,Ue));let $e=We,Ye;for(let ot=0;otLt&&Or(Ke,Ws(_t.statements,M,Lc,Lt,Pt-Lt));break}Pt++}pe.assert(Pt<_t.statements.length,"Should have encountered at least one 'using' statement.");let _r=mt(),Gt=Ne(_t.statements,Pt,_t.statements.length,_r,Ke);return S.size&&Ft(Ke,c.createExportDeclaration(void 0,!1,c.createNamedExports(Do(S.values())))),Or(Ke,_()),R.length&&Ke.push(c.createVariableStatement(c.createModifiersFromModifierFlags(32),c.createVariableDeclarationList(R,1))),Or(Ke,ht(Gt,_r,Rt===2)),W&&Ke.push(c.createExportAssignment(void 0,!0,W)),c.updateSourceFile(_t,Ke)}return _s(_t,M,s)}function re(_t){let Rt=Het(_t.statements);if(Rt){let Lt=Vtn(_t.statements),Ke=mt();return c.updateBlock(_t,[...Ede(_t.statements,M,Lc,0,Lt),...ht(Ne(_t.statements,Lt,_t.statements.length,Ke,void 0),Ke,Rt===2)])}return _s(_t,M,s)}function ge(_t){return _t.initializer&&Ptn(_t.initializer)?Mr(c.createBlock([c.createVariableStatement(void 0,_t.initializer),c.updateForStatement(_t,void 0,_t.condition,_t.incrementor,_t.statement)]),M,Lc):_s(_t,M,s)}function Ie(_t){if(Ptn(_t.initializer)){let Rt=_t.initializer,Lt=Nc(Rt.declarations)||c.createVariableDeclaration(c.createTempVariable(void 0)),Ke=jOt(Rt)===2,Pt=c.getGeneratedNameForNode(Lt.name),_r=c.updateVariableDeclaration(Lt,Lt.name,void 0,void 0,Pt),Gt=c.createVariableDeclarationList([_r],Ke?6:4),nt=c.createVariableStatement(void 0,Gt);return Mr(c.updateForOfStatement(_t,_t.awaitModifier,c.createVariableDeclarationList([c.createVariableDeclaration(Pt)],2),_t.expression,$u(_t.statement)?c.updateBlock(_t.statement,[nt,..._t.statement.statements]):c.createBlock([nt,_t.statement],!0)),M,Lc)}return _s(_t,M,s)}function _e(_t,Rt){return Het(_t.statements)!==0?fie(_t)?c.updateCaseClause(_t,Mr(_t.expression,M,un),Ne(_t.statements,0,_t.statements.length,Rt,void 0)):c.updateDefaultClause(_t,Ne(_t.statements,0,_t.statements.length,Rt,void 0)):_s(_t,M,s)}function Ee(_t){let Rt=GBs(_t.caseBlock.clauses);if(Rt){let Lt=mt();return ht([c.updateSwitchStatement(_t,Mr(_t.expression,M,un),c.updateCaseBlock(_t.caseBlock,_t.caseBlock.clauses.map(Ke=>_e(Ke,Lt))))],Lt,Rt===2)}return _s(_t,M,s)}function Ne(_t,Rt,Lt,Ke,Pt){let _r=[];for(let Dt=Rt;Dtc&&(c=d)}return c}function GBs(s){let c=0;for(let g of s){let d=Het(g.statements);if(d===2)return 2;d>c&&(c=d)}return c}function qOt(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getCompilerOptions(),h,_;return rR(s,M);function S(){if(_.filenameDeclaration)return _.filenameDeclaration.name;let dt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(h.fileName));return _.filenameDeclaration=dt,_.filenameDeclaration.name}function R(dt){return d.jsx===5?"jsxDEV":dt?"jsxs":"jsx"}function T(dt){let pr=R(dt);return V(pr)}function W(){return V("Fragment")}function V(dt){var pr,st;let ir=dt==="createElement"?_.importSpecifier:Mne(_.importSpecifier,d),zt=(st=(pr=_.utilizedImplicitRuntimeImports)==null?void 0:pr.get(ir))==null?void 0:st.get(dt);if(zt)return zt.name;_.utilizedImplicitRuntimeImports||(_.utilizedImplicitRuntimeImports=new Map);let Ht=_.utilizedImplicitRuntimeImports.get(ir);Ht||(Ht=new Map,_.utilizedImplicitRuntimeImports.set(ir,Ht));let Br=c.createUniqueName(`_${dt}`,112),mn=c.createImportSpecifier(!1,c.createIdentifier(dt),Br);return OLe(Br,mn),Ht.set(dt,mn),Br}function M(dt){if(dt.isDeclarationFile)return dt;h=dt,_={},_.importSpecifier=One(d,dt);let pr=_s(dt,ee,s);hN(pr,s.readEmitHelpers());let st=pr.statements;if(_.filenameDeclaration&&(st=FL(st.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([_.filenameDeclaration],2)))),_.utilizedImplicitRuntimeImports){for(let[ir,zt]of Do(_.utilizedImplicitRuntimeImports.entries()))if(xm(dt)){let Ht=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports(Do(zt.values()))),c.createStringLiteral(ir),void 0);UL(Ht,!1),st=FL(st.slice(),Ht)}else if(vl(dt)){let Ht=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(Do(zt.values(),Br=>c.createBindingElement(void 0,Br.propertyName,Br.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(ir)]))],2));UL(Ht,!1),st=FL(st.slice(),Ht)}}return st!==pr.statements&&(pr=c.updateSourceFile(pr,st)),_=void 0,pr}function ee(dt){return dt.transformFlags&2?re(dt):dt}function re(dt){switch(dt.kind){case 285:return Ne(dt,!1);case 286:return Te(dt,!1);case 289:return Ze(dt,!1);case 295:return Gr(dt);default:return _s(dt,ee,s)}}function ge(dt){switch(dt.kind){case 12:return Pt(dt);case 295:return Gr(dt);case 285:return Ne(dt,!0);case 286:return Te(dt,!0);case 289:return Ze(dt,!0);default:return pe.failBadSyntaxKind(dt)}}function Ie(dt){return dt.properties.some(pr=>fm(pr)&&(Ir(pr.name)&&Vo(pr.name)==="__proto__"||Zg(pr.name)&&pr.name.text==="__proto__"))}function _e(dt){let pr=!1;for(let st of dt.attributes.properties)if(yz(st)&&(!og(st.expression)||st.expression.properties.some(Lx)))pr=!0;else if(pr&&EN(st)&&Ir(st.name)&&st.name.escapedText==="key")return!0;return!1}function Ee(dt){return _.importSpecifier===void 0||_e(dt)}function Ne(dt,pr){return(Ee(dt.openingElement)?Tt:$e)(dt.openingElement,dt.children,pr,dt)}function Te(dt,pr){return(Ee(dt)?Tt:$e)(dt,void 0,pr,dt)}function Ze(dt,pr){return(_.importSpecifier===void 0?Qe:ot)(dt.openingFragment,dt.children,pr,dt)}function We(dt){let pr=Ue(dt);return pr&&c.createObjectLiteralExpression([pr])}function Ue(dt){let pr=$J(dt);if(B(pr)===1&&!pr[0].dotDotDotToken){let ir=ge(pr[0]);return ir&&c.createPropertyAssignment("children",ir)}let st=Xt(dt,ge);return B(st)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(st)):void 0}function $e(dt,pr,st,ir){let zt=tr(dt),Ht=pr&&pr.length?Ue(pr):void 0,Br=de(dt.attributes.properties,Zi=>!!Zi.name&&Ir(Zi.name)&&Zi.name.escapedText==="key"),mn=Br?Me(dt.attributes.properties,Zi=>Zi!==Br):dt.attributes.properties,jn=B(mn)?ht(mn,Ht):c.createObjectLiteralExpression(Ht?[Ht]:E);return Ye(zt,jn,Br,pr||E,st,ir)}function Ye(dt,pr,st,ir,zt,Ht){var Br;let mn=$J(ir),jn=B(mn)>1||!!((Br=mn[0])!=null&&Br.dotDotDotToken),Zi=[dt,pr];if(st&&Zi.push(Ke(st.initializer)),d.jsx===5){let An=Dd(h);if(An&&ll(An)){st===void 0&&Zi.push(c.createVoidZero()),Zi.push(jn?c.createTrue():c.createFalse());let si=Ra(An,Ht.pos);Zi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",S()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(si.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(si.character+1))])),Zi.push(c.createThis())}}let Ns=gn(c.createCallExpression(T(jn),void 0,Zi),Ht);return zt&&N0(Ns),Ns}function Tt(dt,pr,st,ir){let zt=tr(dt),Ht=dt.attributes.properties,Br=B(Ht)?ht(Ht):c.createNull(),mn=_.importSpecifier===void 0?E$e(c,s.getEmitResolver().getJsxFactoryEntity(h),d.reactNamespace,dt):V("createElement"),jn=UPt(c,mn,zt,Br,Xt(pr,ge),ir);return st&&N0(jn),jn}function ot(dt,pr,st,ir){let zt;if(pr&&pr.length){let Ht=We(pr);Ht&&(zt=Ht)}return Ye(W(),zt||c.createObjectLiteralExpression([]),void 0,pr,st,ir)}function Qe(dt,pr,st,ir){let zt=KPt(c,s.getEmitResolver().getJsxFactoryEntity(h),s.getEmitResolver().getJsxFragmentFactoryEntity(h),d.reactNamespace,Xt(pr,ge),dt,ir);return st&&N0(zt),zt}function mt(dt){return og(dt.expression)&&!Ie(dt.expression)?Tr(dt.expression.properties,pr=>pe.checkDefined(Mr(pr,ee,yw))):c.createSpreadAssignment(pe.checkDefined(Mr(dt.expression,ee,un)))}function ht(dt,pr){let st=Mg(d);return st&&st>=5?c.createObjectLiteralExpression(_t(dt,pr)):Rt(dt,pr)}function _t(dt,pr){let st=Nr(_n(dt,yz,(ir,zt)=>Nr(At(ir,Ht=>zt?mt(Ht):Lt(Ht)))));return pr&&st.push(pr),st}function Rt(dt,pr){let st=[],ir=[];for(let Ht of dt){if(yz(Ht)){if(og(Ht.expression)&&!Ie(Ht.expression)){for(let Br of Ht.expression.properties){if(Lx(Br)){zt(),st.push(pe.checkDefined(Mr(Br.expression,ee,un)));continue}ir.push(pe.checkDefined(Mr(Br,ee)))}continue}zt(),st.push(pe.checkDefined(Mr(Ht.expression,ee,un)));continue}ir.push(Lt(Ht))}return pr&&ir.push(pr),zt(),st.length&&!og(st[0])&&st.unshift(c.createObjectLiteralExpression()),Ps(st)||g().createAssignHelper(st);function zt(){ir.length&&(st.push(c.createObjectLiteralExpression(ir)),ir=[])}}function Lt(dt){let pr=ur(dt),st=Ke(dt.initializer);return c.createPropertyAssignment(pr,st)}function Ke(dt){if(dt===void 0)return c.createTrue();if(dt.kind===11){let pr=dt.singleQuote!==void 0?dt.singleQuote:!sne(dt,h),st=c.createStringLiteral(Dt(dt.text)||dt.text,pr);return gn(st,dt)}return dt.kind===295?dt.expression===void 0?c.createTrue():pe.checkDefined(Mr(dt.expression,ee,un)):bN(dt)?Ne(dt,!1):_U(dt)?Te(dt,!1):P3(dt)?Ze(dt,!1):pe.failBadSyntaxKind(dt)}function Pt(dt){let pr=_r(dt.text);return pr===void 0?void 0:c.createStringLiteral(pr)}function _r(dt){let pr,st=0,ir=-1;for(let zt=0;zt{if(Ht)return jR(parseInt(Ht,10));if(Br)return jR(parseInt(Br,16));{let jn=FBs.get(mn);return jn?jR(jn):pr}})}function Dt(dt){let pr=nt(dt);return pr===dt?void 0:pr}function tr(dt){if(dt.kind===285)return tr(dt.openingElement);{let pr=dt.tagName;return Ir(pr)&&eU(pr.escapedText)?c.createStringLiteral(Vo(pr)):eR(pr)?c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name)):cEe(c,pr)}}function ur(dt){let pr=dt.name;if(Ir(pr)){let st=Vo(pr);return/^[A-Z_]\w*$/i.test(st)?pr:c.createStringLiteral(st)}return c.createStringLiteral(Vo(pr.namespace)+":"+Vo(pr.name))}function Gr(dt){let pr=Mr(dt.expression,ee,un);return dt.dotDotDotToken?c.createSpreadElement(pr):pr}}var FBs=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}));function $Ot(s){let{factory:c,hoistVariableDeclaration:g}=s;return rR(s,d);function d(T){return T.isDeclarationFile?T:_s(T,h,s)}function h(T){if(!(T.transformFlags&512))return T;switch(T.kind){case 227:return _(T);default:return _s(T,h,s)}}function _(T){switch(T.operatorToken.kind){case 68:return S(T);case 43:return R(T);default:return _s(T,h,s)}}function S(T){let W,V,M=Mr(T.left,h,un),ee=Mr(T.right,h,un);if(Yg(M)){let re=c.createTempVariable(g),ge=c.createTempVariable(g);W=gn(c.createElementAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),gn(c.createAssignment(ge,M.argumentExpression),M.argumentExpression)),M),V=gn(c.createElementAccessExpression(re,ge),M)}else if(jo(M)){let re=c.createTempVariable(g);W=gn(c.createPropertyAccessExpression(gn(c.createAssignment(re,M.expression),M.expression),M.name),M),V=gn(c.createPropertyAccessExpression(re,M.name),M)}else W=M,V=M;return gn(c.createAssignment(W,gn(c.createGlobalMethodCall("Math","pow",[V,ee]),T)),T)}function R(T){let W=Mr(T.left,h,un),V=Mr(T.right,h,un);return gn(c.createGlobalMethodCall("Math","pow",[W,V]),T)}}function Wtn(s,c){return{kind:s,expression:c}}function e3t(s){let{factory:c,getEmitHelperFactory:g,startLexicalEnvironment:d,resumeLexicalEnvironment:h,endLexicalEnvironment:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=s.getEmitResolver(),W=s.onSubstituteNode,V=s.onEmitNode;s.onEmitNode=OC,s.onSubstituteNode=yv;let M,ee,re,ge;function Ie(at){ge=Ft(ge,c.createVariableDeclaration(at))}let _e,Ee=0;return rR(s,Ne);function Ne(at){if(at.isDeclarationFile)return at;M=at,ee=at.text;let en=ht(at);return hN(en,s.readEmitHelpers()),M=void 0,ee=void 0,ge=void 0,re=0,en}function Te(at,en){let gi=re;return re=(re&~at|en)&32767,gi}function Ze(at,en,gi){re=(re&~en|gi)&-32768|at}function We(at){return(re&8192)!==0&&at.kind===254&&!at.expression}function Ue(at){return at.transformFlags&4194304&&(I2(at)||Z3(at)||kPt(at)||ode(at)||ade(at)||fie(at)||cde(at)||mU(at)||iQ(at)||FP(at)||VT(at,!1)||$u(at))}function $e(at){return(at.transformFlags&1024)!==0||_e!==void 0||re&8192&&Ue(at)||VT(at,!1)&&Dl(at)||(g1(at)&1)!==0}function Ye(at){return $e(at)?mt(at,!1):at}function Tt(at){return $e(at)?mt(at,!0):at}function ot(at){if($e(at)){let en=Dd(at);if(pi(en)&&zh(en)){let gi=Te(32670,16449),_i=mt(at,!1);return Ze(gi,229376,0),_i}return mt(at,!1)}return at}function Qe(at){return at.kind===108?C2(at,!0):Ye(at)}function mt(at,en){switch(at.kind){case 126:return;case 264:return tr(at);case 232:return ur(at);case 170:return Tg(at);case 263:return bn(at);case 220:return Gi(at);case 219:return nn(at);case 261:return Bs(at);case 80:return nt(at);case 262:return Ot(at);case 256:return _t(at);case 270:return Rt(at);case 242:return cn(at,!1);case 253:case 252:return Dt(at);case 257:return wn(at);case 247:case 248:return es(at,void 0);case 249:return Wi(at,void 0);case 250:return Ui(at,void 0);case 251:return gs(at,void 0);case 245:return Bt(at);case 211:return Ag(at);case 300:return Uc(at);case 305:return yf(at);case 168:return rm(at);case 210:return Gp(at);case 214:return oh(at);case 215:return m2(at);case 218:return xe(at,en);case 227:return fr(at,en);case 357:return Je(at,en);case 15:case 16:case 17:case 18:return NA(at);case 11:return uA(at);case 9:return hm(at);case 216:return af(at);case 229:return dI(at);case 230:return _h(at);case 231:return RA(at);case 108:return C2(at,!1);case 110:return _r(at);case 237:return d_(at);case 175:return xd(at);case 178:case 179:return Lg(at);case 244:return Hn(at);case 254:return Pt(at);case 223:return Gt(at);default:return _s(at,Ye,s)}}function ht(at){let en=Te(8064,64),gi=[],_i=[];d();let ys=c.copyPrologue(at.statements,gi,!1,Ye);return Or(_i,Ws(at.statements,Ye,Lc,ys)),ge&&_i.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ge))),c.mergeLexicalEnvironment(gi,_()),it(gi,at),Ze(en,0,0),c.updateSourceFile(at,gn(c.createNodeArray(Nn(gi,_i)),at.statements))}function _t(at){if(_e!==void 0){let en=_e.allowedNonLabeledJumps;_e.allowedNonLabeledJumps|=2;let gi=_s(at,Ye,s);return _e.allowedNonLabeledJumps=en,gi}return _s(at,Ye,s)}function Rt(at){let en=Te(7104,0),gi=_s(at,Ye,s);return Ze(en,0,0),gi}function Lt(at){return ua(c.createReturnStatement(Ke()),at)}function Ke(){return c.createUniqueName("_this",48)}function Pt(at){return _e?(_e.nonLocalJumps|=8,We(at)&&(at=Lt(at)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),at.expression?pe.checkDefined(Mr(at.expression,Ye,un)):c.createVoidZero())]))):We(at)?Lt(at):_s(at,Ye,s)}function _r(at){return re|=65536,re&2&&!(re&16384)&&(re|=131072),_e?re&2?(_e.containsLexicalThis=!0,at):_e.thisName||(_e.thisName=c.createUniqueName("this")):at}function Gt(at){return _s(at,Tt,s)}function nt(at){return _e&&T.isArgumentsLocalBinding(at)?_e.argumentsName||(_e.argumentsName=c.createUniqueName("arguments")):at.flags&256?ua(gn(c.createIdentifier(Bc(at.escapedText)),at),at):at}function Dt(at){if(_e){let en=at.kind===253?2:4;if(!(at.label&&_e.labels&&_e.labels.get(Vo(at.label))||!at.label&&_e.allowedNonLabeledJumps&en)){let _i,ys=at.label;ys?at.kind===253?(_i=`break-${ys.escapedText}`,mr(_e,!0,Vo(ys),_i)):(_i=`continue-${ys.escapedText}`,mr(_e,!1,Vo(ys),_i)):at.kind===253?(_e.nonLocalJumps|=2,_i="break"):(_e.nonLocalJumps|=4,_i="continue");let $s=c.createStringLiteral(_i);if(_e.loopOutParameters.length){let wa=_e.loopOutParameters,pc;for(let ul=0;ulIr(en.name)&&!en.initializer)}function Br(at){if(Dy(at))return!0;if(!(at.transformFlags&134217728))return!1;switch(at.kind){case 220:case 219:case 263:case 177:case 176:return!1;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?!!Lu(en.name,Br):!1}}return!!Lu(at,Br)}function mn(at,en,gi,_i){let ys=!!gi&&HI(gi.expression).kind!==106;if(!at)return zt(en,ys);let $s=[],wa=[];h();let pc=c.copyStandardPrologue(at.body.statements,$s,0);(_i||Br(at.body))&&(re|=8192),Or(wa,Ws(at.body.statements,Ye,Lc,pc));let ul=ys||re&8192;Tu($s,at),on($s,at,_i),Fr($s,at),ul?nr($s,at,tl()):it($s,at),c.mergeLexicalEnvironment($s,_()),ul&&!Oa(at.body)&&wa.push(c.createReturnStatement(Ke()));let Fe=c.createBlock(gn(c.createNodeArray([...$s,...wa]),at.body.statements),!0);return gn(Fe,at.body),pa(Fe,at.body,_i)}function jn(at){return kp(at)&&Vo(at)==="_this"}function Zi(at){return kp(at)&&Vo(at)==="_super"}function Ns(at){return Ch(at)&&at.declarationList.declarations.length===1&&An(at.declarationList.declarations[0])}function An(at){return nc(at)&&jn(at.name)&&!!at.initializer}function si(at){return Jm(at,!0)&&jn(at.left)}function ks(at){return Zl(at)&&jo(at.expression)&&Zi(at.expression.expression)&&Ir(at.expression.name)&&(Vo(at.expression.name)==="call"||Vo(at.expression.name)==="apply")&&at.arguments.length>=1&&at.arguments[0].kind===110}function Ic(at){return fo(at)&&at.operatorToken.kind===57&&at.right.kind===110&&ks(at.left)}function su(at){return fo(at)&&at.operatorToken.kind===56&&fo(at.left)&&at.left.operatorToken.kind===38&&Zi(at.left.left)&&at.left.right.kind===106&&ks(at.right)&&Vo(at.right.expression.name)==="apply"}function Zn(at){return fo(at)&&at.operatorToken.kind===57&&at.right.kind===110&&su(at.left)}function ya(at){return si(at)&&Ic(at.right)}function Gl(at){return si(at)&&Zn(at.right)}function ba(at){return ks(at)||Ic(at)||ya(at)||su(at)||Zn(at)||Gl(at)}function Wo(at){for(let en=0;en0;_i--){let ys=at.statements[_i];if(I2(ys)&&ys.expression&&jn(ys.expression)){let $s=at.statements[_i-1],wa;if(VC($s)&&ya(HI($s.expression)))wa=$s.expression;else if(gi&&Ns($s)){let Fe=$s.declarationList.declarations[0];ba(HI(Fe.initializer))&&(wa=c.createAssignment(Ke(),Fe.initializer))}if(!wa)break;let pc=c.createReturnStatement(wa);ua(pc,$s),gn(pc,$s);let ul=c.createNodeArray([...at.statements.slice(0,_i-1),pc,...at.statements.slice(_i+1)]);return gn(ul,at.statements),c.updateBlock(at,ul)}}return at}function yr(at){if(Ns(at)){if(at.declarationList.declarations[0].initializer.kind===110)return}else if(si(at))return c.createPartiallyEmittedExpression(at.right,at);switch(at.kind){case 220:case 219:case 263:case 177:case 176:return at;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?c.replacePropertyName(en,_s(en.name,yr,void 0)):at}}return _s(at,yr,void 0)}function hn(at,en){if(en.transformFlags&16384||re&65536||re&131072)return at;for(let gi of en.statements)if(gi.transformFlags&134217728&&!O9e(gi))return at;return c.updateBlock(at,Ws(at.statements,yr,Lc))}function Oi(at){if(ks(at)&&at.arguments.length===2&&Ir(at.arguments[1])&&Vo(at.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(XI(),c.createNull()),at);switch(at.kind){case 220:case 219:case 263:case 177:case 176:return at;case 178:case 179:case 175:case 173:{let en=at;return Un(en.name)?c.replacePropertyName(en,_s(en.name,Oi,void 0)):at}}return _s(at,Oi,void 0)}function lo(at){return c.updateBlock(at,Ws(at.statements,Oi,Lc))}function pa(at,en,gi){let _i=at;return at=Wo(at),at=hc(at,en),at!==_i&&(at=hn(at,en)),gi&&(at=lo(at)),at}function Oa(at){if(at.kind===254)return!0;if(at.kind===246){let en=at;if(en.elseStatement)return Oa(en.thenStatement)&&Oa(en.elseStatement)}else if(at.kind===242){let en=li(at.statements);if(en&&Oa(en))return!0}return!1}function tl(){return ti(c.createThis(),8)}function Qu(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(XI(),c.createNull()),c.createFunctionApplyCall(XI(),tl(),c.createIdentifier("arguments"))),tl())}function Tg(at){if(!at.dotDotDotToken)return Nu(at.name)?ua(gn(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(at),void 0,void 0,void 0),at),at):at.initializer?ua(gn(c.createParameterDeclaration(void 0,void 0,at.name,void 0,void 0,void 0),at),at):at}function Cs(at){return at.initializer!==void 0||Nu(at.name)}function Tu(at,en){if(!jt(en.parameters,Cs))return!1;let gi=!1;for(let _i of en.parameters){let{name:ys,initializer:$s,dotDotDotToken:wa}=_i;wa||(Nu(ys)?gi=Pr(at,_i,ys,$s)||gi:$s&&(Pn(at,_i,ys,$s),gi=!0))}return gi}function Pr(at,en,gi,_i){return gi.elements.length>0?(FL(at,ti(c.createVariableStatement(void 0,c.createVariableDeclarationList(uQ(en,Ye,s,0,c.getGeneratedNameForNode(en)))),2097152)),!0):_i?(FL(at,ti(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(en),pe.checkDefined(Mr(_i,Ye,un)))),2097152)),!0):!1}function Pn(at,en,gi,_i){_i=pe.checkDefined(Mr(_i,Ye,un));let ys=c.createIfStatement(c.createTypeCheck(c.cloneNode(gi),"undefined"),ti(gn(c.createBlock([c.createExpressionStatement(ti(gn(c.createAssignment(ti(XA(gn(c.cloneNode(gi),gi),gi.parent),96),ti(_i,96|tA(_i)|3072)),en),3072))]),en),3905));N0(ys),gn(ys,en),ti(ys,2101056),FL(at,ys)}function pt(at,en){return!!(at&&at.dotDotDotToken&&!en)}function on(at,en,gi){let _i=[],ys=li(en.parameters);if(!pt(ys,gi))return!1;let $s=ys.name.kind===80?XA(gn(c.cloneNode(ys.name),ys.name),ys.name.parent):c.createTempVariable(void 0);ti($s,96);let wa=ys.name.kind===80?c.cloneNode(ys.name):$s,pc=en.parameters.length-1,ul=c.createLoopVariable();_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration($s,void 0,void 0,c.createArrayLiteralExpression([]))])),ys),2097152));let Fe=c.createForStatement(gn(c.createVariableDeclarationList([c.createVariableDeclaration(ul,void 0,void 0,c.createNumericLiteral(pc))]),ys),gn(c.createLessThan(ul,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),ys),gn(c.createPostfixIncrement(ul),ys),c.createBlock([N0(gn(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(wa,pc===0?ul:c.createSubtract(ul,c.createNumericLiteral(pc))),c.createElementAccessExpression(c.createIdentifier("arguments"),ul))),ys))]));return ti(Fe,2097152),N0(Fe),_i.push(Fe),ys.name.kind!==80&&_i.push(ti(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList(uQ(ys,Ye,s,0,wa))),ys),2097152)),Wre(at,_i),!0}function it(at,en){return re&131072&&en.kind!==220?(nr(at,en,c.createThis()),!0):!1}function nr(at,en,gi){gy();let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ke(),void 0,void 0,gi)]));ti(_i,2100224),Hg(_i,en),FL(at,_i)}function Fr(at,en){if(re&32768){let gi;switch(en.kind){case 220:return at;case 175:case 178:case 179:gi=c.createVoidZero();break;case 177:gi=c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor");break;case 263:case 219:gi=c.createConditionalExpression(c.createLogicalAnd(ti(c.createThis(),8),c.createBinaryExpression(ti(c.createThis(),8),104,c.getLocalName(en))),void 0,c.createPropertyAccessExpression(ti(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return pe.failBadSyntaxKind(en)}let _i=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,gi)]));ti(_i,2100224),FL(at,_i)}return at}function Kr(at,en){for(let gi of en.members)switch(gi.kind){case 241:at.push(Dn(gi));break;case 175:at.push(hr(pS(en,gi),gi,en));break;case 178:case 179:let _i=BP(en.members,gi);gi===_i.firstAccessor&&at.push(En(pS(en,gi),_i,en));break;case 177:case 176:break;default:pe.failBadSyntaxKind(gi,M&&M.fileName);break}}function Dn(at){return gn(c.createEmptyStatement(),at)}function hr(at,en,gi){let _i=DB(en),ys=XT(en),$s=ds(en,en,void 0,gi),wa=Mr(en.name,Ye,VI);pe.assert(wa);let pc;if(!p(wa)&&Pne(s.getCompilerOptions())){let Fe=Un(wa)?wa.expression:Ir(wa)?c.createStringLiteral(Bc(wa.escapedText)):wa;pc=c.createObjectDefinePropertyCall(at,Fe,c.createPropertyDescriptor({value:$s,enumerable:!1,writable:!0,configurable:!0}))}else{let Fe=EU(c,at,wa,en.name);pc=c.createAssignment(Fe,$s)}ti($s,3072),Hg($s,ys);let ul=gn(c.createExpressionStatement(pc),en);return ua(ul,en),hh(ul,_i),ti(ul,96),ul}function En(at,en,gi){let _i=c.createExpressionStatement(Ni(at,en,gi,!1));return ti(_i,3072),Hg(_i,XT(en.firstAccessor)),_i}function Ni(at,{firstAccessor:en,getAccessor:gi,setAccessor:_i},ys,$s){let wa=XA(gn(c.cloneNode(at),at),at.parent);ti(wa,3136),Hg(wa,en.name);let pc=Mr(en.name,Ye,VI);if(pe.assert(pc),p(pc))return pe.failBadSyntaxKind(pc,"Encountered unhandled private identifier while transforming ES2015.");let ul=v$e(c,pc);ti(ul,3104),Hg(ul,en.name);let Fe=[];if(gi){let Ln=ds(gi,void 0,void 0,ys);Hg(Ln,XT(gi)),ti(Ln,1024);let bs=c.createPropertyAssignment("get",Ln);hh(bs,DB(gi)),Fe.push(bs)}if(_i){let Ln=ds(_i,void 0,void 0,ys);Hg(Ln,XT(_i)),ti(Ln,1024);let bs=c.createPropertyAssignment("set",Ln);hh(bs,DB(_i)),Fe.push(bs)}Fe.push(c.createPropertyAssignment("enumerable",gi||_i?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let gr=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[wa,ul,c.createObjectLiteralExpression(Fe,!0)]);return $s&&N0(gr),gr}function Gi(at){at.transformFlags&16384&&!(re&16384)&&(re|=131072);let en=_e;_e=void 0;let gi=Te(15232,66),_i=c.createFunctionExpression(void 0,void 0,void 0,void 0,vI(at.parameters,Ye,s),void 0,Mt(at));return gn(_i,at),ua(_i,at),ti(_i,16),Ze(gi,0,0),_e=en,_i}function nn(at){let en=tA(at)&524288?Te(32662,69):Te(32670,65),gi=_e;_e=void 0;let _i=vI(at.parameters,Ye,s),ys=Mt(at),$s=re&32768?c.getLocalName(at):at.name;return Ze(en,229376,0),_e=gi,c.updateFunctionExpression(at,void 0,at.asteriskToken,$s,void 0,_i,void 0,ys)}function bn(at){let en=_e;_e=void 0;let gi=Te(32670,65),_i=vI(at.parameters,Ye,s),ys=Mt(at),$s=re&32768?c.getLocalName(at):at.name;return Ze(gi,229376,0),_e=en,c.updateFunctionDeclaration(at,Ws(at.modifiers,Ye,Ig),at.asteriskToken,$s,void 0,_i,void 0,ys)}function ds(at,en,gi,_i){let ys=_e;_e=void 0;let $s=_i&&xa(_i)&&!cg(at)?Te(32670,73):Te(32670,65),wa=vI(at.parameters,Ye,s),pc=Mt(at);return re&32768&&!gi&&(at.kind===263||at.kind===219)&&(gi=c.getGeneratedNameForNode(at)),Ze($s,229376,0),_e=ys,ua(gn(c.createFunctionExpression(void 0,at.asteriskToken,gi,void 0,wa,void 0,pc),en),at)}function Mt(at){let en=!1,gi=!1,_i,ys,$s=[],wa=[],pc=at.body,ul;if(h(),$u(pc)&&(ul=c.copyStandardPrologue(pc.statements,$s,0,!1),ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye,xge),ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye,Gge)),en=Tu(wa,at)||en,en=on(wa,at,!1)||en,$u(pc))ul=c.copyCustomPrologue(pc.statements,wa,ul,Ye),_i=pc.statements,Or(wa,Ws(pc.statements,Ye,Lc,ul)),!en&&pc.multiLine&&(en=!0);else{pe.assert(at.kind===220),_i=IAe(pc,-1);let gr=at.equalsGreaterThanToken;!sp(gr)&&!sp(pc)&&(kne(gr,pc,M)?gi=!0:en=!0);let Ln=Mr(pc,Ye,un),bs=c.createReturnStatement(Ln);gn(bs,pc),FLe(bs,pc),ti(bs,2880),wa.push(bs),ys=pc}if(c.mergeLexicalEnvironment($s,_()),Fr($s,at),it($s,at),jt($s)&&(en=!0),wa.unshift(...$s),$u(pc)&&Sc(wa,pc.statements))return pc;let Fe=c.createBlock(gn(c.createNodeArray(wa),_i),en);return gn(Fe,at.body),!en&&gi&&ti(Fe,1),ys&&Kbe(Fe,20,ys),ua(Fe,at.body),Fe}function cn(at,en){if(en)return _s(at,Ye,s);let gi=re&256?Te(7104,512):Te(6976,128),_i=_s(at,Ye,s);return Ze(gi,0,0),_i}function Bt(at){return _s(at,Tt,s)}function xe(at,en){return _s(at,en?Tt:Ye,s)}function fr(at,en){return Dx(at)?TU(at,Ye,s,0,!en):at.operatorToken.kind===28?c.updateBinaryExpression(at,pe.checkDefined(Mr(at.left,Tt,un)),at.operatorToken,pe.checkDefined(Mr(at.right,en?Tt:Ye,un))):_s(at,Ye,s)}function Je(at,en){if(en)return _s(at,Tt,s);let gi;for(let ys=0;ysul.name)),pc=_i?c.createYieldExpression(c.createToken(42),ti(wa,8388608)):wa;if($s)ys.push(c.createExpressionStatement(pc)),_f(en.loopOutParameters,1,0,ys);else{let ul=c.createUniqueName("state"),Fe=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(ul,void 0,void 0,pc)]));if(ys.push(Fe),_f(en.loopOutParameters,1,0,ys),en.nonLocalJumps&8){let gr;gi?(gi.nonLocalJumps|=8,gr=c.createReturnStatement(ul)):gr=c.createReturnStatement(c.createPropertyAccessExpression(ul,"value")),ys.push(c.createIfStatement(c.createTypeCheck(ul,"object"),gr))}if(en.nonLocalJumps&2&&ys.push(c.createIfStatement(c.createStrictEquality(ul,c.createStringLiteral("break")),c.createBreakStatement())),en.labeledNonLocalBreaks||en.labeledNonLocalContinues){let gr=[];ln(en.labeledNonLocalBreaks,!0,ul,gi,gr),ln(en.labeledNonLocalContinues,!1,ul,gi,gr),ys.push(c.createSwitchStatement(ul,c.createCaseBlock(gr)))}}return ys}function mr(at,en,gi,_i){en?(at.labeledNonLocalBreaks||(at.labeledNonLocalBreaks=new Map),at.labeledNonLocalBreaks.set(gi,_i)):(at.labeledNonLocalContinues||(at.labeledNonLocalContinues=new Map),at.labeledNonLocalContinues.set(gi,_i))}function ln(at,en,gi,_i,ys){at&&at.forEach(($s,wa)=>{let pc=[];if(!_i||_i.labels&&_i.labels.get(wa)){let ul=c.createIdentifier(wa);pc.push(en?c.createBreakStatement(ul):c.createContinueStatement(ul))}else mr(_i,en,wa,$s),pc.push(c.createReturnStatement(gi));ys.push(c.createCaseClause(c.createStringLiteral($s),pc))})}function ni(at,en,gi,_i,ys){let $s=en.name;if(Nu($s))for(let wa of $s.elements)yp(wa)||ni(at,wa,gi,_i,ys);else{gi.push(c.createParameterDeclaration(void 0,void 0,$s));let wa=T.hasNodeCheckFlag(en,65536);if(wa||ys){let pc=c.createUniqueName("out_"+Vo($s)),ul=0;wa&&(ul|=1),L3(at)&&(at.initializer&&T.isBindingCapturedByNode(at.initializer,en)&&(ul|=2),(at.condition&&T.isBindingCapturedByNode(at.condition,en)||at.incrementor&&T.isBindingCapturedByNode(at.incrementor,en))&&(ul|=1)),_i.push({flags:ul,originalName:$s,outParamName:pc})}}}function Ls(at,en,gi,_i){let ys=en.properties,$s=ys.length;for(let wa=_i;wa<$s;wa++){let pc=ys[wa];switch(pc.kind){case 178:case 179:let ul=BP(en.properties,pc);pc===ul.firstAccessor&&at.push(Ni(gi,ul,en,!!en.multiLine));break;case 175:at.push(Ss(pc,gi,en,en.multiLine));break;case 304:at.push(Za(pc,gi,en.multiLine));break;case 305:at.push(Go(pc,gi,en.multiLine));break;default:pe.failBadSyntaxKind(en);break}}}function Za(at,en,gi){let _i=c.createAssignment(EU(c,en,pe.checkDefined(Mr(at.name,Ye,VI))),pe.checkDefined(Mr(at.initializer,Ye,un)));return gn(_i,at),gi&&N0(_i),_i}function Go(at,en,gi){let _i=c.createAssignment(EU(c,en,pe.checkDefined(Mr(at.name,Ye,VI))),c.cloneNode(at.name));return gn(_i,at),gi&&N0(_i),_i}function Ss(at,en,gi,_i){let ys=c.createAssignment(EU(c,en,pe.checkDefined(Mr(at.name,Ye,VI))),ds(at,at,void 0,gi));return gn(ys,at),_i&&N0(ys),ys}function Uc(at){let en=Te(7104,0),gi;if(pe.assert(!!at.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),Nu(at.variableDeclaration.name)){let _i=c.createTempVariable(void 0),ys=c.createVariableDeclaration(_i);gn(ys,at.variableDeclaration);let $s=uQ(at.variableDeclaration,Ye,s,0,_i),wa=c.createVariableDeclarationList($s);gn(wa,at.variableDeclaration);let pc=c.createVariableStatement(void 0,wa);gi=c.updateCatchClause(at,ys,rl(at.block,pc))}else gi=_s(at,Ye,s);return Ze(en,0,0),gi}function rl(at,en){let gi=Ws(at.statements,Ye,Lc);return c.updateBlock(at,[en,...gi])}function xd(at){pe.assert(!Un(at.name));let en=ds(at,KD(at,-1),void 0,void 0);return ti(en,1024|tA(en)),gn(c.createPropertyAssignment(at.name,en),at)}function Lg(at){pe.assert(!Un(at.name));let en=_e;_e=void 0;let gi=Te(32670,65),_i,ys=vI(at.parameters,Ye,s),$s=Mt(at);return at.kind===178?_i=c.updateGetAccessorDeclaration(at,at.modifiers,at.name,ys,at.type,$s):_i=c.updateSetAccessorDeclaration(at,at.modifiers,at.name,ys,$s),Ze(gi,229376,0),_e=en,_i}function yf(at){return gn(c.createPropertyAssignment(at.name,nt(c.cloneNode(at.name))),at)}function rm(at){return _s(at,Ye,s)}function _h(at){return _s(at,Ye,s)}function Gp(at){return jt(at.elements,of)?Vb(at.elements,!1,!!at.multiLine,!!at.elements.hasTrailingComma):_s(at,Ye,s)}function oh(at){if(g1(at)&1)return b1(at);let en=HI(at.expression);return en.kind===108||xy(en)||jt(at.arguments,of)?Z_(at,!0):c.updateCallExpression(at,pe.checkDefined(Mr(at.expression,Qe,un)),void 0,Ws(at.arguments,Ye,un))}function b1(at){let en=Ma(Ma(HI(at.expression),lA).body,$u),gi=Jg=>Ch(Jg)&&!!ma(Jg.declarationList.declarations).initializer,_i=_e;_e=void 0;let ys=Ws(en.statements,ot,Lc);_e=_i;let $s=Me(ys,gi),wa=Me(ys,Jg=>!gi(Jg)),ul=Ma(ma($s),Ch).declarationList.declarations[0],Fe=HI(ul.initializer),gr=Gs(Fe,Jm);!gr&&fo(Fe)&&Fe.operatorToken.kind===28&&(gr=Gs(Fe.left,Jm));let Ln=Ma(gr?HI(gr.right):Fe,Zl),bs=Ma(HI(Ln.expression),UA),Xl=bs.body.statements,eg=0,jl=-1,Eu=[];if(gr){let Jg=Gs(Xl[eg],VC);Jg&&(Eu.push(Jg),eg++),Eu.push(Xl[eg]),eg++,Eu.push(c.createExpressionStatement(c.createAssignment(gr.left,Ma(ul.name,Ir))))}for(;!I2(Cg(Xl,jl));)jl--;Or(Eu,Xl,eg,jl),jl<-1&&Or(Eu,Xl,jl+1);let Df=Gs(Cg(Xl,jl),I2);for(let Jg of wa)I2(Jg)&&Df?.expression&&!Ir(Df.expression)?Eu.push(Df):Eu.push(Jg);return Or(Eu,$s,1),c.restoreOuterExpressions(at.expression,c.restoreOuterExpressions(ul.initializer,c.restoreOuterExpressions(gr&&gr.right,c.updateCallExpression(Ln,c.restoreOuterExpressions(Ln.expression,c.updateFunctionExpression(bs,void 0,void 0,void 0,void 0,bs.parameters,void 0,c.updateBlock(bs.body,Eu))),void 0,Ln.arguments))))}function Z_(at,en){if(at.transformFlags&32768||at.expression.kind===108||xy(HI(at.expression))){let{target:gi,thisArg:_i}=c.createCallBinding(at.expression,S);at.expression.kind===108&&ti(_i,8);let ys;if(at.transformFlags&32768?ys=c.createFunctionApplyCall(pe.checkDefined(Mr(gi,Qe,un)),at.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Vb(at.arguments,!0,!1,!1)):ys=gn(c.createFunctionCallCall(pe.checkDefined(Mr(gi,Qe,un)),at.expression.kind===108?_i:pe.checkDefined(Mr(_i,Ye,un)),Ws(at.arguments,Ye,un)),at),at.expression.kind===108){let $s=c.createLogicalOr(ys,tl());ys=en?c.createAssignment(Ke(),$s):$s}return ua(ys,at)}return Dy(at)&&(re|=131072),_s(at,Ye,s)}function m2(at){if(jt(at.arguments,of)){let{target:en,thisArg:gi}=c.createCallBinding(c.createPropertyAccessExpression(at.expression,"bind"),S);return c.createNewExpression(c.createFunctionApplyCall(pe.checkDefined(Mr(en,Ye,un)),gi,Vb(c.createNodeArray([c.createVoidZero(),...at.arguments]),!0,!1,!1)),void 0,[])}return _s(at,Ye,s)}function Vb(at,en,gi,_i){let ys=at.length,$s=Nr(_n(at,or,(Fe,gr,Ln,bs)=>gr(Fe,gi,_i&&bs===ys)));if($s.length===1){let Fe=$s[0];if(en&&!R.downlevelIteration||Gbe(Fe.expression)||qD(Fe.expression,"___spreadArray"))return Fe.expression}let wa=g(),pc=$s[0].kind!==0,ul=pc?c.createArrayLiteralExpression():$s[0].expression;for(let Fe=pc?0:1;Fe<$s.length;Fe++){let gr=$s[Fe];ul=wa.createSpreadArrayHelper(ul,gr.expression,gr.kind===1&&!en)}return ul}function or(at){return of(at)?qn:Hl}function qn(at){return At(at,Js)}function Js(at){pe.assertNode(at,of);let en=Mr(at.expression,Ye,un);pe.assert(en);let gi=qD(en,"___read"),_i=gi||Gbe(en)?2:1;return R.downlevelIteration&&_i===1&&!OI(en)&&!gi&&(en=g().createReadHelper(en,void 0),_i=2),Wtn(_i,en)}function Hl(at,en,gi){let _i=c.createArrayLiteralExpression(Ws(c.createNodeArray(at,gi),Ye,un),en);return Wtn(0,_i)}function RA(at){return Mr(at.expression,Ye,un)}function NA(at){return gn(c.createStringLiteral(at.text),at)}function uA(at){return at.hasExtendedUnicodeEscape?gn(c.createStringLiteral(at.text),at):at}function hm(at){return at.numericLiteralFlags&384?gn(c.createNumericLiteral(at.text),at):at}function af(at){return Met(s,at,Ye,M,Ie,1)}function dI(at){let en=c.createStringLiteral(at.head.text);for(let gi of at.templateSpans){let _i=[pe.checkDefined(Mr(gi.expression,Ye,un))];gi.literal.text.length>0&&_i.push(c.createStringLiteral(gi.literal.text)),en=c.createCallExpression(c.createPropertyAccessExpression(en,"concat"),void 0,_i)}return gn(en,at)}function XI(){return c.createUniqueName("_super",48)}function C2(at,en){let gi=re&8&&!en?c.createPropertyAccessExpression(ua(XI(),at),"prototype"):XI();return ua(gi,at),hh(gi,at),Hg(gi,at),gi}function d_(at){return at.keywordToken===105&&at.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):at}function OC(at,en,gi){if(Ee&1&&bu(en)){let _i=Te(32670,tA(en)&16?81:65);V(at,en,gi),Ze(_i,0,0);return}V(at,en,gi)}function E1(){Ee&2||(Ee|=2,s.enableSubstitution(80))}function gy(){Ee&1||(Ee|=1,s.enableSubstitution(110),s.enableEmitNotification(177),s.enableEmitNotification(175),s.enableEmitNotification(178),s.enableEmitNotification(179),s.enableEmitNotification(220),s.enableEmitNotification(219),s.enableEmitNotification(263))}function yv(at,en){return en=W(at,en),at===1?Ox(en):Ir(en)?ik(en):en}function ik(at){if(Ee&2&&!B$e(at)){let en=$l(at,Ir);if(en&&Wx(en))return gn(c.getGeneratedNameForNode(en),at)}return at}function Wx(at){switch(at.parent.kind){case 209:case 264:case 267:case 261:return at.parent.name===at&&T.isDeclarationWithCollidingName(at.parent)}return!1}function Ox(at){switch(at.kind){case 80:return Pb(at);case 110:return oR(at)}return at}function Pb(at){if(Ee&2&&!B$e(at)){let en=T.getReferencedDeclarationWithCollidingName(at);if(en&&!(xa(en)&&qm(en,at)))return gn(c.getGeneratedNameForNode(Il(en)),at)}return at}function qm(at,en){let gi=$l(en);if(!gi||gi===at||gi.end<=at.pos||gi.pos>=at.end)return!1;let _i=tS(at);for(;gi;){if(gi===_i||gi===at)return!1;if(PI(gi)&&gi.parent===at)return!0;gi=gi.parent}return!1}function oR(at){return Ee&1&&re&16?gn(Ke(),at):at}function pS(at,en){return cg(en)?c.getInternalName(at):c.createPropertyAccessExpression(c.getInternalName(at),"prototype")}function xN(at,en){if(!at||!en||jt(at.parameters))return!1;let gi=Nc(at.body.statements);if(!gi||!sp(gi)||gi.kind!==245)return!1;let _i=gi.expression;if(!sp(_i)||_i.kind!==214)return!1;let ys=_i.expression;if(!sp(ys)||ys.kind!==108)return!1;let $s=Ps(_i.arguments);if(!$s||!sp($s)||$s.kind!==231)return!1;let wa=$s.expression;return Ir(wa)&&wa.escapedText==="arguments"}}function ZBs(s){switch(s){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function t3t(s){let{factory:c,getEmitHelperFactory:g,resumeLexicalEnvironment:d,endLexicalEnvironment:h,hoistFunctionDeclaration:_,hoistVariableDeclaration:S}=s,R=s.getCompilerOptions(),T=Mg(R),W=s.getEmitResolver(),V=s.onSubstituteNode;s.onSubstituteNode=Bt;let M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We=1,Ue,$e,Ye,Tt,ot=0,Qe=0,mt,ht,_t,Rt,Lt,Ke,Pt,_r;return rR(s,Gt);function Gt(or){if(or.isDeclarationFile||!(or.transformFlags&2048))return or;let qn=_s(or,nt,s);return hN(qn,s.readEmitHelpers()),qn}function nt(or){let qn=or.transformFlags;return ge?Dt(or):re?tr(or):kd(or)&&or.asteriskToken?Gr(or):qn&2048?_s(or,nt,s):or}function Dt(or){switch(or.kind){case 247:return Qu(or);case 248:return Cs(or);case 256:return Ni(or);case 257:return nn(or);default:return tr(or)}}function tr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);case 178:case 179:return st(or);case 244:return zt(or);case 249:return Pr(or);case 250:return pt(or);case 253:return Fr(or);case 252:return it(or);case 254:return Dn(or);default:return or.transformFlags&1048576?ur(or):or.transformFlags&4196352?_s(or,nt,s):or}}function ur(or){switch(or.kind){case 227:return Ht(or);case 357:return Zi(or);case 228:return An(or);case 230:return si(or);case 210:return ks(or);case 211:return su(or);case 213:return Zn(or);case 214:return ya(or);case 215:return Gl(or);default:return _s(or,nt,s)}}function Gr(or){switch(or.kind){case 263:return dt(or);case 219:return pr(or);default:return pe.failBadSyntaxKind(or)}}function dt(or){if(or.asteriskToken)or=ua(gn(c.createFunctionDeclaration(or.modifiers,void 0,or.name,void 0,vI(or.parameters,nt,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js}if(re){_(or);return}else return or}function pr(or){if(or.asteriskToken)or=ua(gn(c.createFunctionExpression(void 0,void 0,or.name,void 0,vI(or.parameters,nt,s),void 0,ir(or.body)),or),or);else{let qn=re,Js=ge;re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js}return or}function st(or){let qn=re,Js=ge;return re=!1,ge=!1,or=_s(or,nt,s),re=qn,ge=Js,or}function ir(or){let qn=[],Js=re,Hl=ge,RA=Ie,NA=_e,uA=Ee,hm=Ne,af=Te,dI=Ze,XI=We,C2=Ue,d_=$e,OC=Ye,E1=Tt;re=!0,ge=!1,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Ze=void 0,We=1,Ue=void 0,$e=void 0,Ye=void 0,Tt=c.createTempVariable(void 0),d();let gy=c.copyPrologue(or.statements,qn,!1,nt);ba(or.statements,gy);let yv=mr();return Sw(qn,h()),qn.push(c.createReturnStatement(yv)),re=Js,ge=Hl,Ie=RA,_e=NA,Ee=uA,Ne=hm,Te=af,Ze=dI,We=XI,Ue=C2,$e=d_,Ye=OC,Tt=E1,gn(c.createBlock(qn,or.multiLine),or)}function zt(or){if(or.transformFlags&1048576){lo(or.declarationList);return}else{if(tA(or)&2097152)return or;for(let Js of or.declarationList.declarations)S(Js.name);let qn=iU(or.declarationList);return qn.length===0?void 0:Hg(c.createExpressionStatement(c.inlineExpressions(At(qn,pa))),or)}}function Ht(or){let qn=Zye(or);switch(qn){case 0:return mn(or);case 1:return Br(or);default:return pe.assertNever(qn)}}function Br(or){let{left:qn,right:Js}=or;if(Mt(Js)){let Hl;switch(qn.kind){case 212:Hl=c.updatePropertyAccessExpression(qn,Je(pe.checkDefined(Mr(qn.expression,nt,D_))),qn.name);break;case 213:Hl=c.updateElementAccessExpression(qn,Je(pe.checkDefined(Mr(qn.expression,nt,D_))),Je(pe.checkDefined(Mr(qn.argumentExpression,nt,un))));break;default:Hl=pe.checkDefined(Mr(qn,nt,un));break}let RA=or.operatorToken.kind;return vde(RA)?gn(c.createAssignment(Hl,gn(c.createBinaryExpression(Je(Hl),Bde(RA),pe.checkDefined(Mr(Js,nt,un))),or)),or):c.updateBinaryExpression(or,Hl,or.operatorToken,pe.checkDefined(Mr(Js,nt,un)))}return _s(or,nt,s)}function mn(or){return Mt(or.right)?WZe(or.operatorToken.kind)?Ns(or):or.operatorToken.kind===28?jn(or):c.updateBinaryExpression(or,Je(pe.checkDefined(Mr(or.left,nt,un))),or.operatorToken,pe.checkDefined(Mr(or.right,nt,un))):_s(or,nt,s)}function jn(or){let qn=[];return Js(or.left),Js(or.right),c.inlineExpressions(qn);function Js(Hl){fo(Hl)&&Hl.operatorToken.kind===28?(Js(Hl.left),Js(Hl.right)):(Mt(Hl)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Hl,nt,un))))}}function Zi(or){let qn=[];for(let Js of or.elements)fo(Js)&&Js.operatorToken.kind===28?qn.push(jn(Js)):(Mt(Js)&&qn.length>0&&(ve(1,[c.createExpressionStatement(c.inlineExpressions(qn))]),qn=[]),qn.push(pe.checkDefined(Mr(Js,nt,un))));return c.inlineExpressions(qn)}function Ns(or){let qn=Hn(),Js=In();return KA(Js,pe.checkDefined(Mr(or.left,nt,un)),or.left),or.operatorToken.kind===56?$d(qn,Js,or.left):oi(qn,Js,or.left),KA(Js,pe.checkDefined(Mr(or.right,nt,un)),or.right),Ot(qn),Js}function An(or){if(Mt(or.whenTrue)||Mt(or.whenFalse)){let qn=Hn(),Js=Hn(),Hl=In();return $d(qn,pe.checkDefined(Mr(or.condition,nt,un)),or.condition),KA(Hl,pe.checkDefined(Mr(or.whenTrue,nt,un)),or.whenTrue),TA(Js),Ot(qn),KA(Hl,pe.checkDefined(Mr(or.whenFalse,nt,un)),or.whenFalse),Ot(Js),Hl}return _s(or,nt,s)}function si(or){let qn=Hn(),Js=Mr(or.expression,nt,un);if(or.asteriskToken){let Hl=tA(or.expression)&8388608?Js:gn(g().createValuesHelper(Js),or);YI(Hl,or)}else Fh(Js,or);return Ot(qn),dS(or)}function ks(or){return Ic(or.elements,void 0,void 0,or.multiLine)}function Ic(or,qn,Js,Hl){let RA=cn(or),NA;if(RA>0){NA=In();let af=Ws(or,nt,un,0,RA);KA(NA,c.createArrayLiteralExpression(qn?[qn,...af]:af)),qn=void 0}let uA=Ul(or,hm,[],RA);return NA?c.createArrayConcatCall(NA,[c.createArrayLiteralExpression(uA,Hl)]):gn(c.createArrayLiteralExpression(qn?[qn,...uA]:uA,Hl),Js);function hm(af,dI){if(Mt(dI)&&af.length>0){let XI=NA!==void 0;NA||(NA=In()),KA(NA,XI?c.createArrayConcatCall(NA,[c.createArrayLiteralExpression(af,Hl)]):c.createArrayLiteralExpression(qn?[qn,...af]:af,Hl)),qn=void 0,af=[]}return af.push(pe.checkDefined(Mr(dI,nt,un))),af}}function su(or){let qn=or.properties,Js=or.multiLine,Hl=cn(qn),RA=In();KA(RA,c.createObjectLiteralExpression(Ws(qn,nt,yw,0,Hl),Js));let NA=Ul(qn,uA,[],Hl);return NA.push(Js?N0(XA(gn(c.cloneNode(RA),RA),RA.parent)):RA),c.inlineExpressions(NA);function uA(hm,af){Mt(af)&&hm.length>0&&(bg(c.createExpressionStatement(c.inlineExpressions(hm))),hm=[]);let dI=jPt(c,or,af,RA),XI=Mr(dI,nt,un);return XI&&(Js&&N0(XI),hm.push(XI)),hm}}function Zn(or){return Mt(or.argumentExpression)?c.updateElementAccessExpression(or,Je(pe.checkDefined(Mr(or.expression,nt,D_))),pe.checkDefined(Mr(or.argumentExpression,nt,un))):_s(or,nt,s)}function ya(or){if(!Up(or)&&F(or.arguments,Mt)){let{target:qn,thisArg:Js}=c.createCallBinding(or.expression,S,T,!0);return ua(gn(c.createFunctionApplyCall(Je(pe.checkDefined(Mr(qn,nt,D_))),Js,Ic(or.arguments)),or),or)}return _s(or,nt,s)}function Gl(or){if(F(or.arguments,Mt)){let{target:qn,thisArg:Js}=c.createCallBinding(c.createPropertyAccessExpression(or.expression,"bind"),S);return ua(gn(c.createNewExpression(c.createFunctionApplyCall(Je(pe.checkDefined(Mr(qn,nt,un))),Js,Ic(or.arguments,c.createVoidZero())),void 0,[]),or),or)}return _s(or,nt,s)}function ba(or,qn=0){let Js=or.length;for(let Hl=qn;Hl0)break;RA.push(pa(uA))}RA.length&&(bg(c.createExpressionStatement(c.inlineExpressions(RA))),Hl+=RA.length,RA=[])}}function pa(or){return Hg(c.createAssignment(Hg(c.cloneNode(or.name),or.name),pe.checkDefined(Mr(or.initializer,nt,un))),or)}function Oa(or){if(Mt(or))if(Mt(or.thenStatement)||Mt(or.elseStatement)){let qn=Hn(),Js=or.elseStatement?Hn():void 0;$d(or.elseStatement?Js:qn,pe.checkDefined(Mr(or.expression,nt,un)),or.expression),Wo(or.thenStatement),or.elseStatement&&(TA(qn),Ot(Js),Wo(or.elseStatement)),Ot(qn)}else bg(Mr(or,nt,Lc));else bg(Mr(or,nt,Lc))}function tl(or){if(Mt(or)){let qn=Hn(),Js=Hn();Vn(qn),Ot(Js),Wo(or.statement),Ot(qn),oi(Js,pe.checkDefined(Mr(or.expression,nt,un))),Ui()}else bg(Mr(or,nt,Lc))}function Qu(or){return ge?(Wi(),or=_s(or,nt,s),Ui(),or):_s(or,nt,s)}function Tg(or){if(Mt(or)){let qn=Hn(),Js=Vn(qn);Ot(qn),$d(Js,pe.checkDefined(Mr(or.expression,nt,un))),Wo(or.statement),TA(qn),Ui()}else bg(Mr(or,nt,Lc))}function Cs(or){return ge?(Wi(),or=_s(or,nt,s),Ui(),or):_s(or,nt,s)}function Tu(or){if(Mt(or)){let qn=Hn(),Js=Hn(),Hl=Vn(Js);if(or.initializer){let RA=or.initializer;u_(RA)?lo(RA):bg(gn(c.createExpressionStatement(pe.checkDefined(Mr(RA,nt,un))),RA))}Ot(qn),or.condition&&$d(Hl,pe.checkDefined(Mr(or.condition,nt,un))),Wo(or.statement),Ot(Js),or.incrementor&&bg(gn(c.createExpressionStatement(pe.checkDefined(Mr(or.incrementor,nt,un))),or.incrementor)),TA(qn),Ui()}else bg(Mr(or,nt,Lc))}function Pr(or){ge&&Wi();let qn=or.initializer;if(qn&&u_(qn)){for(let Hl of qn.declarations)S(Hl.name);let Js=iU(qn);or=c.updateForStatement(or,Js.length>0?c.inlineExpressions(At(Js,pa)):void 0,Mr(or.condition,nt,un),Mr(or.incrementor,nt,un),Py(or.statement,nt,s))}else or=_s(or,nt,s);return ge&&Ui(),or}function Pn(or){if(Mt(or)){let qn=In(),Js=In(),Hl=In(),RA=c.createLoopVariable(),NA=or.initializer;S(RA),KA(qn,pe.checkDefined(Mr(or.expression,nt,un))),KA(Js,c.createArrayLiteralExpression()),bg(c.createForInStatement(Hl,qn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Js,"push"),void 0,[Hl])))),KA(RA,c.createNumericLiteral(0));let uA=Hn(),hm=Hn(),af=Vn(hm);Ot(uA),$d(af,c.createLessThan(RA,c.createPropertyAccessExpression(Js,"length"))),KA(Hl,c.createElementAccessExpression(Js,RA)),$d(hm,c.createBinaryExpression(Hl,103,qn));let dI;if(u_(NA)){for(let XI of NA.declarations)S(XI.name);dI=c.cloneNode(NA.declarations[0].name)}else dI=pe.checkDefined(Mr(NA,nt,un)),pe.assert(D_(dI));KA(dI,Hl),Wo(or.statement),Ot(hm),bg(c.createExpressionStatement(c.createPostfixIncrement(RA))),TA(uA),Ui()}else bg(Mr(or,nt,Lc))}function pt(or){ge&&Wi();let qn=or.initializer;if(u_(qn)){for(let Js of qn.declarations)S(Js.name);or=c.updateForInStatement(or,qn.declarations[0].name,pe.checkDefined(Mr(or.expression,nt,un)),pe.checkDefined(Mr(or.statement,nt,Lc,c.liftToBlock)))}else or=_s(or,nt,s);return ge&&Ui(),or}function on(or){let qn=yu(or.label?Vo(or.label):void 0);qn>0?TA(qn,or):bg(or)}function it(or){if(ge){let qn=yu(or.label&&Vo(or.label));if(qn>0)return Xg(qn,or)}return _s(or,nt,s)}function nr(or){let qn=Dl(or.label?Vo(or.label):void 0);qn>0?TA(qn,or):bg(or)}function Fr(or){if(ge){let qn=Dl(or.label&&Vo(or.label));if(qn>0)return Xg(qn,or)}return _s(or,nt,s)}function Kr(or){WC(Mr(or.expression,nt,un),or)}function Dn(or){return sh(Mr(or.expression,nt,un),or)}function hr(or){Mt(or)?(Ys(Je(pe.checkDefined(Mr(or.expression,nt,un)))),Wo(or.statement),tn()):bg(Mr(or,nt,Lc))}function En(or){if(Mt(or.caseBlock)){let qn=or.caseBlock,Js=qn.clauses.length,Hl=fs(),RA=Je(pe.checkDefined(Mr(or.expression,nt,un))),NA=[],uA=-1;for(let dI=0;dI0)break;af.push(c.createCaseClause(pe.checkDefined(Mr(C2.expression,nt,un)),[Xg(NA[XI],C2.expression)]))}else dI++}af.length&&(bg(c.createSwitchStatement(RA,c.createCaseBlock(af))),hm+=af.length,af=[]),dI>0&&(hm+=dI,dI=0)}uA>=0?TA(NA[uA]):TA(Hl);for(let dI=0;dI=0;Js--){let Hl=Ne[Js];if(wI(Hl)){if(Hl.labelText===or)return!0}else break}return!1}function Dl(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(wI(Js)&&Js.labelText===or)return Js.breakLabel;if(_u(Js)&&pp(or,qn-1))return Js.breakLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(_u(Js))return Js.breakLabel}return 0}function yu(or){if(Ne)if(or)for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(AI(Js)&&pp(or,qn-1))return Js.continueLabel}else for(let qn=Ne.length-1;qn>=0;qn--){let Js=Ne[qn];if(AI(Js))return Js.continueLabel}return 0}function tm(or){if(or!==void 0&&or>0){Ze===void 0&&(Ze=[]);let qn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Ze[or]===void 0?Ze[or]=[qn]:Ze[or].push(qn),qn}return c.createOmittedExpression()}function jp(or){let qn=c.createNumericLiteral(or);return Iz(qn,3,ZBs(or)),qn}function Xg(or,qn){return pe.assertLessThan(0,or,"Invalid label"),gn(c.createReturnStatement(c.createArrayLiteralExpression([jp(3),tm(or)])),qn)}function sh(or,qn){return gn(c.createReturnStatement(c.createArrayLiteralExpression(or?[jp(2),or]:[jp(2)])),qn)}function dS(or){return gn(c.createCallExpression(c.createPropertyAccessExpression(Tt,"sent"),void 0,[]),or)}function gu(){ve(0)}function bg(or){or?ve(1,[or]):gu()}function KA(or,qn,Js){ve(2,[or,qn],Js)}function TA(or,qn){ve(3,[or],qn)}function oi(or,qn,Js){ve(4,[or,qn],Js)}function $d(or,qn,Js){ve(5,[or,qn],Js)}function YI(or,qn){ve(7,[or],qn)}function Fh(or,qn){ve(6,[or],qn)}function WC(or,qn){ve(8,[or],qn)}function _f(or,qn){ve(9,[or],qn)}function QI(){ve(10)}function ve(or,qn,Js){Ue===void 0&&(Ue=[],$e=[],Ye=[]),Te===void 0&&Ot(Hn());let Hl=Ue.length;Ue[Hl]=or,$e[Hl]=qn,Ye[Hl]=Js}function mr(){ot=0,Qe=0,mt=void 0,ht=!1,_t=!1,Rt=void 0,Lt=void 0,Ke=void 0,Pt=void 0,_r=void 0;let or=ln();return g().createGeneratorHelper(ti(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Tt)],void 0,c.createBlock(or,or.length>0)),1048576))}function ln(){if(Ue){for(let or=0;or=0;qn--){let Js=_r[qn];Lt=[c.createWithStatement(Js.expression,c.createBlock(Lt))]}if(Pt){let{startLabel:qn,catchLabel:Js,finallyLabel:Hl,endLabel:RA}=Pt;Lt.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(Tt,"trys"),"push"),void 0,[c.createArrayLiteralExpression([tm(qn),tm(Js),tm(Hl),tm(RA)])]))),Pt=void 0}or&&Lt.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(Tt,"label"),c.createNumericLiteral(Qe+1))))}Rt.push(c.createCaseClause(c.createNumericLiteral(Qe),Lt||[])),Lt=void 0}function Ss(or){if(Te)for(let qn=0;qn{(!mA(Je.arguments[0])||une(Je.arguments[0].text,R))&&(Ee=Ft(Ee,Je))});let fr=c(M)(Bt);return Ie=void 0,_e=void 0,Te=!1,fr}function We(){return pN(Ie.fileName)&&Ie.commonJsModuleIndicator&&(!Ie.externalModuleIndicator||Ie.externalModuleIndicator===!0)?!1:!!(!_e.exportEquals&&xm(Ie))}function Ue(Bt){h();let xe=[],fr=a_(R,"alwaysStrict")||xm(Ie),Je=g.copyPrologue(Bt.statements,xe,fr&&!Zu(Bt),ht);if(We()&&Ft(xe,nr()),jt(_e.exportedNames))for(let Ot=0;Ot<_e.exportedNames.length;Ot+=50)Ft(xe,g.createExpressionStatement(Ul(_e.exportedNames.slice(Ot,Ot+50),($r,ri)=>ri.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(ri.text)),$r):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(ri))),$r),g.createVoidZero())));for(let Hn of _e.exportedFunctions)pt(xe,Hn);Ft(xe,Mr(_e.externalHelpersImportDeclaration,ht,Lc)),Or(xe,Ws(Bt.statements,ht,Lc,Je)),mt(xe,!1),Sw(xe,_());let In=g.updateSourceFile(Bt,gn(g.createNodeArray(xe),Bt.statements));return hN(In,s.readEmitHelpers()),In}function $e(Bt){let xe=g.createIdentifier("define"),fr=gEe(g,Bt,W,R),Je=Zu(Bt)&&Bt,{aliasedModuleNames:In,unaliasedModuleNames:Hn,importAliasNames:Ot}=Tt(Bt,!0),$r=g.updateSourceFile(Bt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(xe,void 0,[...fr?[fr]:[],g.createArrayLiteralExpression(Je?E:[g.createStringLiteral("require"),g.createStringLiteral("exports"),...In,...Hn]),Je?Je.statements.length?Je.statements[0].expression:g.createObjectLiteralExpression():g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Ot],void 0,Qe(Bt))]))]),Bt.statements));return hN($r,s.readEmitHelpers()),$r}function Ye(Bt){let{aliasedModuleNames:xe,unaliasedModuleNames:fr,importAliasNames:Je}=Tt(Bt,!1),In=gEe(g,Bt,W,R),Hn=g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"factory")],void 0,gn(g.createBlock([g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("module"),"object"),g.createTypeCheck(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),"object")),g.createBlock([g.createVariableStatement(void 0,[g.createVariableDeclaration("v",void 0,void 0,g.createCallExpression(g.createIdentifier("factory"),void 0,[g.createIdentifier("require"),g.createIdentifier("exports")]))]),ti(g.createIfStatement(g.createStrictInequality(g.createIdentifier("v"),g.createIdentifier("undefined")),g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),g.createIdentifier("v")))),1)]),g.createIfStatement(g.createLogicalAnd(g.createTypeCheck(g.createIdentifier("define"),"function"),g.createPropertyAccessExpression(g.createIdentifier("define"),"amd")),g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("define"),void 0,[...In?[In]:[],g.createArrayLiteralExpression([g.createStringLiteral("require"),g.createStringLiteral("exports"),...xe,...fr]),g.createIdentifier("factory")]))])))],!0),void 0)),Ot=g.updateSourceFile(Bt,gn(g.createNodeArray([g.createExpressionStatement(g.createCallExpression(Hn,void 0,[g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,"require"),g.createParameterDeclaration(void 0,void 0,"exports"),...Je],void 0,Qe(Bt))]))]),Bt.statements));return hN(Ot,s.readEmitHelpers()),Ot}function Tt(Bt,xe){let fr=[],Je=[],In=[];for(let Hn of Bt.amdDependencies)Hn.name?(fr.push(g.createStringLiteral(Hn.path)),In.push(g.createParameterDeclaration(void 0,void 0,Hn.name))):Je.push(g.createStringLiteral(Hn.path));for(let Hn of _e.externalImports){let Ot=Ez(g,Hn,Ie,W,T,R),$r=yie(g,Hn,Ie);Ot&&(xe&&$r?(ti($r,8),fr.push(Ot),In.push(g.createParameterDeclaration(void 0,void 0,$r))):Je.push(Ot))}return{aliasedModuleNames:fr,unaliasedModuleNames:Je,importAliasNames:In}}function ot(Bt){if(km(Bt)||Gh(Bt)||!Ez(g,Bt,Ie,W,T,R))return;let xe=yie(g,Bt,Ie),fr=ba(Bt,xe);if(fr!==xe)return g.createExpressionStatement(g.createAssignment(xe,fr))}function Qe(Bt){h();let xe=[],fr=g.copyPrologue(Bt.statements,xe,!0,ht);We()&&Ft(xe,nr()),jt(_e.exportedNames)&&Ft(xe,g.createExpressionStatement(Ul(_e.exportedNames,(In,Hn)=>Hn.kind===11?g.createAssignment(g.createElementAccessExpression(g.createIdentifier("exports"),g.createStringLiteral(Hn.text)),In):g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.createIdentifier(Vo(Hn))),In),g.createVoidZero())));for(let In of _e.exportedFunctions)pt(xe,In);Ft(xe,Mr(_e.externalHelpersImportDeclaration,ht,Lc)),M===2&&Or(xe,Xt(_e.externalImports,ot)),Or(xe,Ws(Bt.statements,ht,Lc,fr)),mt(xe,!0),Sw(xe,_());let Je=g.createBlock(xe,!0);return Te&&$Y(Je,LBs),Je}function mt(Bt,xe){if(_e.exportEquals){let fr=Mr(_e.exportEquals.expression,Lt,un);if(fr)if(xe){let Je=g.createReturnStatement(fr);gn(Je,_e.exportEquals),ti(Je,3840),Bt.push(Je)}else{let Je=g.createExpressionStatement(g.createAssignment(g.createPropertyAccessExpression(g.createIdentifier("module"),"exports"),fr));gn(Je,_e.exportEquals),ti(Je,3072),Bt.push(Je)}}}function ht(Bt){switch(Bt.kind){case 273:return Wo(Bt);case 272:return yr(Bt);case 279:return hn(Bt);case 278:return Oi(Bt);default:return _t(Bt)}}function _t(Bt){switch(Bt.kind){case 244:return Oa(Bt);case 263:return lo(Bt);case 264:return pa(Bt);case 249:return Gt(Bt,!0);case 250:return nt(Bt);case 251:return Dt(Bt);case 247:return tr(Bt);case 248:return ur(Bt);case 257:return Gr(Bt);case 255:return dt(Bt);case 246:return pr(Bt);case 256:return st(Bt);case 270:return ir(Bt);case 297:return zt(Bt);case 298:return Ht(Bt);case 259:return Br(Bt);case 300:return mn(Bt);case 242:return jn(Bt);default:return Lt(Bt)}}function Rt(Bt,xe){if(!(Bt.transformFlags&276828160)&&!Ee?.length)return Bt;switch(Bt.kind){case 249:return Gt(Bt,!1);case 245:return Zi(Bt);case 218:return Ns(Bt,xe);case 356:return An(Bt,xe);case 214:let fr=Bt===Nc(Ee);if(fr&&Ee.shift(),Up(Bt)&&W.shouldTransformImportCall(Ie))return Ic(Bt,fr);if(fr)return ks(Bt);break;case 227:if(Dx(Bt))return _r(Bt,xe);break;case 225:case 226:return si(Bt,xe)}return _s(Bt,Lt,s)}function Lt(Bt){return Rt(Bt,!1)}function Ke(Bt){return Rt(Bt,!0)}function Pt(Bt){if(og(Bt))for(let xe of Bt.properties)switch(xe.kind){case 304:if(Pt(xe.initializer))return!0;break;case 305:if(Pt(xe.name))return!0;break;case 306:if(Pt(xe.expression))return!0;break;case 175:case 178:case 179:return!1;default:pe.assertNever(xe,"Unhandled object member kind")}else if(OI(Bt)){for(let xe of Bt.elements)if(of(xe)){if(Pt(xe.expression))return!0}else if(Pt(xe))return!0}else if(Ir(Bt))return B(cn(Bt))>(i9e(Bt)?1:0);return!1}function _r(Bt,xe){return Pt(Bt.left)?TU(Bt,Lt,s,0,!xe,tl):_s(Bt,Lt,s)}function Gt(Bt,xe){if(xe&&Bt.initializer&&u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let fr=Pr(void 0,Bt.initializer,!1);if(fr){let Je=[],In=Mr(Bt.initializer,Ke,u_),Hn=g.createVariableStatement(void 0,In);Je.push(Hn),Or(Je,fr);let Ot=Mr(Bt.condition,Lt,un),$r=Mr(Bt.incrementor,Ke,un),ri=Py(Bt.statement,xe?_t:Lt,s);return Je.push(g.updateForStatement(Bt,void 0,Ot,$r,ri)),Je}}return g.updateForStatement(Bt,Mr(Bt.initializer,Ke,hE),Mr(Bt.condition,Lt,un),Mr(Bt.incrementor,Ke,un),Py(Bt.statement,xe?_t:Lt,s))}function nt(Bt){if(u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let xe=Pr(void 0,Bt.initializer,!0);if(jt(xe)){let fr=Mr(Bt.initializer,Ke,hE),Je=Mr(Bt.expression,Lt,un),In=Py(Bt.statement,_t,s),Hn=$u(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0);return g.updateForInStatement(Bt,fr,Je,Hn)}}return g.updateForInStatement(Bt,Mr(Bt.initializer,Ke,hE),Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function Dt(Bt){if(u_(Bt.initializer)&&!(Bt.initializer.flags&7)){let xe=Pr(void 0,Bt.initializer,!0),fr=Mr(Bt.initializer,Ke,hE),Je=Mr(Bt.expression,Lt,un),In=Py(Bt.statement,_t,s);return jt(xe)&&(In=$u(In)?g.updateBlock(In,[...xe,...In.statements]):g.createBlock([...xe,In],!0)),g.updateForOfStatement(Bt,Bt.awaitModifier,fr,Je,In)}return g.updateForOfStatement(Bt,Bt.awaitModifier,Mr(Bt.initializer,Ke,hE),Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function tr(Bt){return g.updateDoStatement(Bt,Py(Bt.statement,_t,s),Mr(Bt.expression,Lt,un))}function ur(Bt){return g.updateWhileStatement(Bt,Mr(Bt.expression,Lt,un),Py(Bt.statement,_t,s))}function Gr(Bt){return g.updateLabeledStatement(Bt,Bt.label,Mr(Bt.statement,_t,Lc,g.liftToBlock)??gn(g.createEmptyStatement(),Bt.statement))}function dt(Bt){return g.updateWithStatement(Bt,Mr(Bt.expression,Lt,un),pe.checkDefined(Mr(Bt.statement,_t,Lc,g.liftToBlock)))}function pr(Bt){return g.updateIfStatement(Bt,Mr(Bt.expression,Lt,un),Mr(Bt.thenStatement,_t,Lc,g.liftToBlock)??g.createBlock([]),Mr(Bt.elseStatement,_t,Lc,g.liftToBlock))}function st(Bt){return g.updateSwitchStatement(Bt,Mr(Bt.expression,Lt,un),pe.checkDefined(Mr(Bt.caseBlock,_t,ade)))}function ir(Bt){return g.updateCaseBlock(Bt,Ws(Bt.clauses,_t,RJ))}function zt(Bt){return g.updateCaseClause(Bt,Mr(Bt.expression,Lt,un),Ws(Bt.statements,_t,Lc))}function Ht(Bt){return _s(Bt,_t,s)}function Br(Bt){return _s(Bt,_t,s)}function mn(Bt){return g.updateCatchClause(Bt,Bt.variableDeclaration,pe.checkDefined(Mr(Bt.block,_t,$u)))}function jn(Bt){return Bt=_s(Bt,_t,s),Bt}function Zi(Bt){return g.updateExpressionStatement(Bt,Mr(Bt.expression,Ke,un))}function Ns(Bt,xe){return g.updateParenthesizedExpression(Bt,Mr(Bt.expression,xe?Ke:Lt,un))}function An(Bt,xe){return g.updatePartiallyEmittedExpression(Bt,Mr(Bt.expression,xe?Ke:Lt,un))}function si(Bt,xe){if((Bt.operator===46||Bt.operator===47)&&Ir(Bt.operand)&&!kp(Bt.operand)&&!VF(Bt.operand)&&!abe(Bt.operand)){let fr=cn(Bt.operand);if(fr){let Je,In=Mr(Bt.operand,Lt,un);T0(Bt)?In=g.updatePrefixUnaryExpression(Bt,In):(In=g.updatePostfixUnaryExpression(Bt,In),xe||(Je=g.createTempVariable(S),In=g.createAssignment(Je,In),gn(In,Bt)),In=g.createComma(In,g.cloneNode(Bt.operand)),gn(In,Bt));for(let Hn of fr)Ne[rd(In)]=!0,In=Kr(Hn,In),gn(In,Bt);return Je&&(Ne[rd(In)]=!0,In=g.createComma(In,Je),gn(In,Bt)),In}}return _s(Bt,Lt,s)}function ks(Bt){return g.updateCallExpression(Bt,Bt.expression,void 0,Ws(Bt.arguments,xe=>xe===Bt.arguments[0]?mA(xe)?Nz(xe,R):d().createRewriteRelativeImportExtensionsHelper(xe):Lt(xe),un))}function Ic(Bt,xe){if(M===0&&V>=7)return _s(Bt,Lt,s);let fr=Ez(g,Bt,Ie,W,T,R),Je=Mr(Nc(Bt.arguments),Lt,un),In=fr&&(!Je||!Zg(Je)||Je.text!==fr.text)?fr:Je&&xe?Zg(Je)?Nz(Je,R):d().createRewriteRelativeImportExtensionsHelper(Je):Je,Hn=!!(Bt.transformFlags&16384);switch(R.module){case 2:return Zn(In,Hn);case 3:return su(In??g.createVoidZero(),Hn);case 1:default:return ya(In)}}function su(Bt,xe){if(Te=!0,lQ(Bt)){let fr=kp(Bt)?Bt:Zg(Bt)?g.createStringLiteralFromNode(Bt):ti(gn(g.cloneNode(Bt),Bt),3072);return g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(Bt),void 0,Zn(fr,xe))}else{let fr=g.createTempVariable(S);return g.createComma(g.createAssignment(fr,Bt),g.createConditionalExpression(g.createIdentifier("__syncRequire"),void 0,ya(fr,!0),void 0,Zn(fr,xe)))}}function Zn(Bt,xe){let fr=g.createUniqueName("resolve"),Je=g.createUniqueName("reject"),In=[g.createParameterDeclaration(void 0,void 0,fr),g.createParameterDeclaration(void 0,void 0,Je)],Hn=g.createBlock([g.createExpressionStatement(g.createCallExpression(g.createIdentifier("require"),void 0,[g.createArrayLiteralExpression([Bt||g.createOmittedExpression()]),fr,Je]))]),Ot;V>=2?Ot=g.createArrowFunction(void 0,void 0,In,void 0,void 0,Hn):(Ot=g.createFunctionExpression(void 0,void 0,void 0,void 0,In,void 0,Hn),xe&&ti(Ot,16));let $r=g.createNewExpression(g.createIdentifier("Promise"),void 0,[Ot]);return kw(R)?g.createCallExpression(g.createPropertyAccessExpression($r,g.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):$r}function ya(Bt,xe){let fr=Bt&&!BN(Bt)&&!xe,Je=g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Promise"),"resolve"),void 0,fr?V>=2?[g.createTemplateExpression(g.createTemplateHead(""),[g.createTemplateSpan(Bt,g.createTemplateTail(""))])]:[g.createCallExpression(g.createPropertyAccessExpression(g.createStringLiteral(""),"concat"),void 0,[Bt])]:[]),In=g.createCallExpression(g.createIdentifier("require"),void 0,fr?[g.createIdentifier("s")]:Bt?[Bt]:[]);kw(R)&&(In=d().createImportStarHelper(In));let Hn=fr?[g.createParameterDeclaration(void 0,void 0,"s")]:[],Ot;return V>=2?Ot=g.createArrowFunction(void 0,void 0,Hn,void 0,void 0,In):Ot=g.createFunctionExpression(void 0,void 0,void 0,void 0,Hn,void 0,g.createBlock([g.createReturnStatement(In)])),g.createCallExpression(g.createPropertyAccessExpression(Je,"then"),void 0,[Ot])}function Gl(Bt,xe){return!kw(R)||g1(Bt)&2?xe:wOt(Bt)?d().createImportStarHelper(xe):xe}function ba(Bt,xe){return!kw(R)||g1(Bt)&2?xe:W9e(Bt)?d().createImportStarHelper(xe):Fet(Bt)?d().createImportDefaultHelper(xe):xe}function Wo(Bt){let xe,fr=JJ(Bt);if(M!==2)if(Bt.importClause){let Je=[];fr&&!h3(Bt)?Je.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,ba(Bt,hc(Bt)))):(Je.push(g.createVariableDeclaration(g.getGeneratedNameForNode(Bt),void 0,void 0,ba(Bt,hc(Bt)))),fr&&h3(Bt)&&Je.push(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(Bt)))),xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList(Je,V>=2?2:0)),Bt),Bt))}else return ua(gn(g.createExpressionStatement(hc(Bt)),Bt),Bt);else fr&&h3(Bt)&&(xe=Ft(xe,g.createVariableStatement(void 0,g.createVariableDeclarationList([ua(gn(g.createVariableDeclaration(g.cloneNode(fr.name),void 0,void 0,g.getGeneratedNameForNode(Bt)),Bt),Bt)],V>=2?2:0))));return xe=Tg(xe,Bt),ac(xe)}function hc(Bt){let xe=Ez(g,Bt,Ie,W,T,R),fr=[];return xe&&fr.push(Nz(xe,R)),g.createCallExpression(g.createIdentifier("require"),void 0,fr)}function yr(Bt){pe.assert(LL(Bt),"import= for internal module references should be handled in an earlier transformer.");let xe;return M!==2?Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(Bt.name,hc(Bt))),Bt),Bt)):xe=Ft(xe,ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(g.cloneNode(Bt.name),void 0,void 0,hc(Bt))],V>=2?2:0)),Bt),Bt)):Ga(Bt,32)&&(xe=Ft(xe,ua(gn(g.createExpressionStatement(Kr(g.getExportName(Bt),g.getLocalName(Bt))),Bt),Bt))),xe=Cs(xe,Bt),ac(xe)}function hn(Bt){if(!Bt.moduleSpecifier)return;let xe=g.getGeneratedNameForNode(Bt);if(Bt.exportClause&&mv(Bt.exportClause)){let fr=[];M!==2&&fr.push(ua(gn(g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(xe,void 0,void 0,hc(Bt))])),Bt),Bt));for(let Je of Bt.exportClause.elements){let In=Je.propertyName||Je.name,Ot=!!kw(R)&&!(g1(Bt)&2)&&lv(In)?d().createImportDefaultHelper(xe):xe,$r=In.kind===11?g.createElementAccessExpression(Ot,In):g.createPropertyAccessExpression(Ot,In);fr.push(ua(gn(g.createExpressionStatement(Kr(Je.name.kind===11?g.cloneNode(Je.name):g.getExportName(Je),$r,void 0,!0)),Je),Je))}return ac(fr)}else if(Bt.exportClause){let fr=[];return fr.push(ua(gn(g.createExpressionStatement(Kr(g.cloneNode(Bt.exportClause.name),Gl(Bt,M!==2?hc(Bt):wY(Bt)||Bt.exportClause.name.kind===11?xe:g.createIdentifier(Vo(Bt.exportClause.name))))),Bt),Bt)),ac(fr)}else return ua(gn(g.createExpressionStatement(d().createExportStarHelper(M!==2?hc(Bt):xe)),Bt),Bt)}function Oi(Bt){if(!Bt.isExportEquals)return Fr(g.createIdentifier("default"),Mr(Bt.expression,Lt,un),Bt,!0)}function lo(Bt){let xe;return Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createFunctionDeclaration(Ws(Bt.modifiers,Dn,Ig),Bt.asteriskToken,g.getDeclarationName(Bt,!0,!0),void 0,Ws(Bt.parameters,Lt,Si),void 0,_s(Bt.body,Lt,s)),Bt),Bt)):xe=Ft(xe,_s(Bt,Lt,s)),ac(xe)}function pa(Bt){let xe;return Ga(Bt,32)?xe=Ft(xe,ua(gn(g.createClassDeclaration(Ws(Bt.modifiers,Dn,dp),g.getDeclarationName(Bt,!0,!0),void 0,Ws(Bt.heritageClauses,Lt,h1),Ws(Bt.members,Lt,PI)),Bt),Bt)):xe=Ft(xe,_s(Bt,Lt,s)),xe=pt(xe,Bt),ac(xe)}function Oa(Bt){let xe,fr,Je;if(Ga(Bt,32)){let In,Hn=!1;for(let Ot of Bt.declarationList.declarations)if(Ir(Ot.name)&&VF(Ot.name))if(In||(In=Ws(Bt.modifiers,Dn,Ig)),Ot.initializer){let $r=g.updateVariableDeclaration(Ot,Ot.name,void 0,void 0,Kr(Ot.name,Mr(Ot.initializer,Lt,un)));fr=Ft(fr,$r)}else fr=Ft(fr,Ot);else if(Ot.initializer)if(!Nu(Ot.name)&&(lA(Ot.initializer)||UA(Ot.initializer)||vd(Ot.initializer))){let $r=g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Ot.name),Ot.name),g.createIdentifier(c2(Ot.name))),ri=g.createVariableDeclaration(Ot.name,Ot.exclamationToken,Ot.type,Mr(Ot.initializer,Lt,un));fr=Ft(fr,ri),Je=Ft(Je,$r),Hn=!0}else Je=Ft(Je,Qu(Ot));if(fr&&(xe=Ft(xe,g.updateVariableStatement(Bt,In,g.updateVariableDeclarationList(Bt.declarationList,fr)))),Je){let Ot=ua(gn(g.createExpressionStatement(g.inlineExpressions(Je)),Bt),Bt);Hn&&pz(Ot),xe=Ft(xe,Ot)}}else xe=Ft(xe,_s(Bt,Lt,s));return xe=Tu(xe,Bt),ac(xe)}function tl(Bt,xe,fr){let Je=cn(Bt);if(Je){let In=i9e(Bt)?xe:g.createAssignment(Bt,xe);for(let Hn of Je)ti(In,8),In=Kr(Hn,In,fr);return In}return g.createAssignment(Bt,xe)}function Qu(Bt){return Nu(Bt.name)?TU(Mr(Bt,Lt,xne),Lt,s,0,!1,tl):g.createAssignment(gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),Bt.name),Bt.name),Bt.initializer?Mr(Bt.initializer,Lt,un):g.createVoidZero())}function Tg(Bt,xe){if(_e.exportEquals)return Bt;let fr=xe.importClause;if(!fr)return Bt;let Je=new kie;fr.name&&(Bt=on(Bt,Je,fr));let In=fr.namedBindings;if(In)switch(In.kind){case 275:Bt=on(Bt,Je,In);break;case 276:for(let Hn of In.elements)Bt=on(Bt,Je,Hn,!0);break}return Bt}function Cs(Bt,xe){return _e.exportEquals?Bt:on(Bt,new kie,xe)}function Tu(Bt,xe){return Pr(Bt,xe.declarationList,!1)}function Pr(Bt,xe,fr){if(_e.exportEquals)return Bt;for(let Je of xe.declarations)Bt=Pn(Bt,Je,fr);return Bt}function Pn(Bt,xe,fr){if(_e.exportEquals)return Bt;if(Nu(xe.name))for(let Je of xe.name.elements)yp(Je)||(Bt=Pn(Bt,Je,fr));else!kp(xe.name)&&(!nc(xe)||xe.initializer||fr)&&(Bt=on(Bt,new kie,xe));return Bt}function pt(Bt,xe){if(_e.exportEquals)return Bt;let fr=new kie;if(Ga(xe,32)){let Je=Ga(xe,2048)?g.createIdentifier("default"):g.getDeclarationName(xe);Bt=it(Bt,fr,Je,g.getLocalName(xe),xe)}return xe.name&&(Bt=on(Bt,fr,xe)),Bt}function on(Bt,xe,fr,Je){let In=g.getDeclarationName(fr),Hn=_e.exportSpecifiers.get(In);if(Hn)for(let Ot of Hn)Bt=it(Bt,xe,Ot.name,In,Ot.name,void 0,Je);return Bt}function it(Bt,xe,fr,Je,In,Hn,Ot){if(fr.kind!==11){if(xe.has(fr))return Bt;xe.set(fr,!0)}return Bt=Ft(Bt,Fr(fr,Je,In,Hn,Ot)),Bt}function nr(){let Bt=g.createExpressionStatement(g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteral("__esModule"),g.createObjectLiteralExpression([g.createPropertyAssignment("value",g.createTrue())])]));return ti(Bt,2097152),Bt}function Fr(Bt,xe,fr,Je,In){let Hn=gn(g.createExpressionStatement(Kr(Bt,xe,void 0,In)),fr);return N0(Hn),Je||ti(Hn,3072),Hn}function Kr(Bt,xe,fr,Je){return gn(Je?g.createCallExpression(g.createPropertyAccessExpression(g.createIdentifier("Object"),"defineProperty"),void 0,[g.createIdentifier("exports"),g.createStringLiteralFromNode(Bt),g.createObjectLiteralExpression([g.createPropertyAssignment("enumerable",g.createTrue()),g.createPropertyAssignment("get",g.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,g.createBlock([g.createReturnStatement(xe)])))])]):g.createAssignment(Bt.kind===11?g.createElementAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)):g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)),xe),fr)}function Dn(Bt){switch(Bt.kind){case 95:case 90:return}return Bt}function hr(Bt,xe,fr){xe.kind===308?(Ie=xe,_e=ge[Wy(Ie)],re(Bt,xe,fr),Ie=void 0,_e=void 0):re(Bt,xe,fr)}function En(Bt,xe){return xe=ee(Bt,xe),xe.id&&Ne[xe.id]?xe:Bt===1?Gi(xe):a0(xe)?Ni(xe):xe}function Ni(Bt){let xe=Bt.name,fr=ds(xe);if(fr!==xe){if(Bt.objectAssignmentInitializer){let Je=g.createAssignment(fr,Bt.objectAssignmentInitializer);return gn(g.createPropertyAssignment(xe,Je),Bt)}return gn(g.createPropertyAssignment(xe,fr),Bt)}return Bt}function Gi(Bt){switch(Bt.kind){case 80:return ds(Bt);case 214:return nn(Bt);case 216:return bn(Bt);case 227:return Mt(Bt)}return Bt}function nn(Bt){if(Ir(Bt.expression)){let xe=ds(Bt.expression);if(Ne[rd(xe)]=!0,!Ir(xe)&&!(tA(Bt.expression)&8192))return N3(g.updateCallExpression(Bt,xe,void 0,Bt.arguments),16)}return Bt}function bn(Bt){if(Ir(Bt.tag)){let xe=ds(Bt.tag);if(Ne[rd(xe)]=!0,!Ir(xe)&&!(tA(Bt.tag)&8192))return N3(g.updateTaggedTemplateExpression(Bt,xe,void 0,Bt.template),16)}return Bt}function ds(Bt){var xe,fr;if(tA(Bt)&8192){let Je=uEe(Ie);return Je?g.createPropertyAccessExpression(Je,Bt):Bt}else if(!(kp(Bt)&&!(Bt.emitNode.autoGenerate.flags&64))&&!VF(Bt)){let Je=T.getReferencedExportContainer(Bt,i9e(Bt));if(Je&&Je.kind===308)return gn(g.createPropertyAccessExpression(g.createIdentifier("exports"),g.cloneNode(Bt)),Bt);let In=T.getReferencedImportDeclaration(Bt);if(In){if(Vw(In))return gn(g.createPropertyAccessExpression(g.getGeneratedNameForNode(In.parent),g.createIdentifier("default")),Bt);if(uy(In)){let Hn=In.propertyName||In.name,Ot=g.getGeneratedNameForNode(((fr=(xe=In.parent)==null?void 0:xe.parent)==null?void 0:fr.parent)||In);return gn(Hn.kind===11?g.createElementAccessExpression(Ot,g.cloneNode(Hn)):g.createPropertyAccessExpression(Ot,g.cloneNode(Hn)),Bt)}}}return Bt}function Mt(Bt){if(UD(Bt.operatorToken.kind)&&Ir(Bt.left)&&(!kp(Bt.left)||fY(Bt.left))&&!VF(Bt.left)){let xe=cn(Bt.left);if(xe){let fr=Bt;for(let Je of xe)Ne[rd(fr)]=!0,fr=Kr(Je,fr,Bt);return fr}}return Bt}function cn(Bt){if(kp(Bt)){if(fY(Bt)){let xe=_e?.exportSpecifiers.get(Bt);if(xe){let fr=[];for(let Je of xe)fr.push(Je.name);return fr}}}else{let xe=T.getReferencedImportDeclaration(Bt);if(xe)return _e?.exportedBindings[Wy(xe)];let fr=new Set,Je=T.getReferencedValueDeclarations(Bt);if(Je){for(let In of Je){let Hn=_e?.exportedBindings[Wy(In)];if(Hn)for(let Ot of Hn)fr.add(Ot)}if(fr.size)return Do(fr)}}}}var LBs={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` - var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function r3t(s){let{factory:c,startLexicalEnvironment:g,endLexicalEnvironment:d,hoistVariableDeclaration:h}=s,_=s.getCompilerOptions(),S=s.getEmitResolver(),R=s.getEmitHost(),T=s.onSubstituteNode,W=s.onEmitNode;s.onSubstituteNode=nr,s.onEmitNode=it,s.enableSubstitution(80),s.enableSubstitution(305),s.enableSubstitution(227),s.enableSubstitution(237),s.enableEmitNotification(308);let V=[],M=[],ee=[],re=[],ge,Ie,_e,Ee,Ne,Te,Ze;return rR(s,We);function We(Mt){if(Mt.isDeclarationFile||!(g3(Mt,_)||Mt.transformFlags&8388608))return Mt;let cn=Wy(Mt);ge=Mt,Te=Mt,Ie=V[cn]=Zet(s,Mt),_e=c.createUniqueName("exports"),M[cn]=_e,Ee=re[cn]=c.createUniqueName("context");let Bt=Ue(Ie.externalImports),xe=$e(Mt,Bt),fr=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,_e),c.createParameterDeclaration(void 0,void 0,Ee)],void 0,xe),Je=gEe(c,Mt,R,_),In=c.createArrayLiteralExpression(At(Bt,Ot=>Ot.name)),Hn=ti(c.updateSourceFile(Mt,gn(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Je?[Je,In,fr]:[In,fr]))]),Mt.statements)),2048);return _.outFile||VLe(Hn,xe,Ot=>!Ot.scoped),Ze&&(ee[cn]=Ze,Ze=void 0),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ne=void 0,Te=void 0,Hn}function Ue(Mt){let cn=new Map,Bt=[];for(let xe of Mt){let fr=Ez(c,xe,ge,R,S,_);if(fr){let Je=fr.text,In=cn.get(Je);In!==void 0?Bt[In].externalImports.push(xe):(cn.set(Je,Bt.length),Bt.push({name:fr,externalImports:[xe]}))}}return Bt}function $e(Mt,cn){let Bt=[];g();let xe=a_(_,"alwaysStrict")||xm(ge),fr=c.copyPrologue(Mt.statements,Bt,xe,Qe);Bt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Ee,c.createPropertyAccessExpression(Ee,"id")))]))),Mr(Ie.externalHelpersImportDeclaration,Qe,Lc);let Je=Ws(Mt.statements,Qe,Lc,fr);Or(Bt,Ne),Sw(Bt,d());let In=Ye(Bt),Hn=Mt.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Ot=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",ot(In,cn)),c.createPropertyAssignment("execute",c.createFunctionExpression(Hn,void 0,void 0,void 0,[],void 0,c.createBlock(Je,!0)))],!0);return Bt.push(c.createReturnStatement(Ot)),c.createBlock(Bt,!0)}function Ye(Mt){if(!Ie.hasExportStarsToExportValues)return;if(!jt(Ie.exportedNames)&&Ie.exportedFunctions.size===0&&Ie.exportSpecifiers.size===0){let fr=!1;for(let Je of Ie.externalImports)if(Je.kind===279&&Je.exportClause){fr=!0;break}if(!fr){let Je=Tt(void 0);return Mt.push(Je),Je.name}}let cn=[];if(Ie.exportedNames)for(let fr of Ie.exportedNames)lv(fr)||cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr),c.createTrue()));for(let fr of Ie.exportedFunctions)Ga(fr,2048)||(pe.assert(!!fr.name),cn.push(c.createPropertyAssignment(c.createStringLiteralFromNode(fr.name),c.createTrue())));let Bt=c.createUniqueName("exportedNames");Mt.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Bt,void 0,void 0,c.createObjectLiteralExpression(cn,!0))])));let xe=Tt(Bt);return Mt.push(xe),xe.name}function Tt(Mt){let cn=c.createUniqueName("exportStar"),Bt=c.createIdentifier("m"),xe=c.createIdentifier("n"),fr=c.createIdentifier("exports"),Je=c.createStrictInequality(xe,c.createStringLiteral("default"));return Mt&&(Je=c.createLogicalAnd(Je,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Mt,"hasOwnProperty"),void 0,[xe])))),c.createFunctionDeclaration(void 0,void 0,cn,void 0,[c.createParameterDeclaration(void 0,void 0,Bt)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(fr,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(xe)]),Bt,c.createBlock([ti(c.createIfStatement(Je,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(fr,xe),c.createElementAccessExpression(Bt,xe)))),1)])),c.createExpressionStatement(c.createCallExpression(_e,void 0,[fr]))],!0))}function ot(Mt,cn){let Bt=[];for(let xe of cn){let fr=F(xe.externalImports,Hn=>yie(c,Hn,ge)),Je=fr?c.getGeneratedNameForNode(fr):c.createUniqueName(""),In=[];for(let Hn of xe.externalImports){let Ot=yie(c,Hn,ge);switch(Hn.kind){case 273:if(!Hn.importClause)break;case 272:pe.assert(Ot!==void 0),In.push(c.createExpressionStatement(c.createAssignment(Ot,Je))),Ga(Hn,32)&&In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(Vo(Ot)),Je])));break;case 279:if(pe.assert(Ot!==void 0),Hn.exportClause)if(mv(Hn.exportClause)){let $r=[];for(let ri of Hn.exportClause.elements)$r.push(c.createPropertyAssignment(c.createStringLiteral(HD(ri.name)),c.createElementAccessExpression(Je,c.createStringLiteral(HD(ri.propertyName||ri.name)))));In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createObjectLiteralExpression($r,!0)])))}else In.push(c.createExpressionStatement(c.createCallExpression(_e,void 0,[c.createStringLiteral(HD(Hn.exportClause.name)),Je])));else In.push(c.createExpressionStatement(c.createCallExpression(Mt,void 0,[Je])));break}}Bt.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Je)],void 0,c.createBlock(In,!0)))}return c.createArrayLiteralExpression(Bt,!0)}function Qe(Mt){switch(Mt.kind){case 273:return mt(Mt);case 272:return _t(Mt);case 279:return ht(Mt);case 278:return Rt(Mt);default:return jn(Mt)}}function mt(Mt){let cn;return Mt.importClause&&h(yie(c,Mt,ge)),ac(Gr(cn,Mt))}function ht(Mt){pe.assertIsDefined(Mt)}function _t(Mt){pe.assert(LL(Mt),"import= for internal module references should be handled in an earlier transformer.");let cn;return h(yie(c,Mt,ge)),ac(dt(cn,Mt))}function Rt(Mt){if(Mt.isExportEquals)return;let cn=Mr(Mt.expression,Oa,un);return Br(c.createIdentifier("default"),cn,!0)}function Lt(Mt){Ga(Mt,32)?Ne=Ft(Ne,c.updateFunctionDeclaration(Mt,Ws(Mt.modifiers,on,dp),Mt.asteriskToken,c.getDeclarationName(Mt,!0,!0),void 0,Ws(Mt.parameters,Oa,Si),void 0,Mr(Mt.body,Oa,$u))):Ne=Ft(Ne,_s(Mt,Oa,s)),Ne=ir(Ne,Mt)}function Ke(Mt){let cn,Bt=c.getLocalName(Mt);return h(Bt),cn=Ft(cn,gn(c.createExpressionStatement(c.createAssignment(Bt,gn(c.createClassExpression(Ws(Mt.modifiers,on,dp),Mt.name,void 0,Ws(Mt.heritageClauses,Oa,h1),Ws(Mt.members,Oa,PI)),Mt))),Mt)),cn=ir(cn,Mt),ac(cn)}function Pt(Mt){if(!Gt(Mt.declarationList))return Mr(Mt,Oa,Lc);let cn;if(tI(Mt.declarationList)||Sd(Mt.declarationList)){let Bt=Ws(Mt.modifiers,on,dp),xe=[];for(let Je of Mt.declarationList.declarations)xe.push(c.updateVariableDeclaration(Je,c.getGeneratedNameForNode(Je.name),void 0,void 0,nt(Je,!1)));let fr=c.updateVariableDeclarationList(Mt.declarationList,xe);cn=Ft(cn,c.updateVariableStatement(Mt,Bt,fr))}else{let Bt,xe=Ga(Mt,32);for(let fr of Mt.declarationList.declarations)fr.initializer?Bt=Ft(Bt,nt(fr,xe)):_r(fr);Bt&&(cn=Ft(cn,gn(c.createExpressionStatement(c.inlineExpressions(Bt)),Mt)))}return cn=pr(cn,Mt,!1),ac(cn)}function _r(Mt){if(Nu(Mt.name))for(let cn of Mt.name.elements)yp(cn)||_r(cn);else h(c.cloneNode(Mt.name))}function Gt(Mt){return(tA(Mt)&4194304)===0&&(Te.kind===308||(Dd(Mt).flags&7)===0)}function nt(Mt,cn){let Bt=cn?Dt:tr;return Nu(Mt.name)?TU(Mt,Oa,s,0,!1,Bt):Mt.initializer?Bt(Mt.name,Mr(Mt.initializer,Oa,un)):Mt.name}function Dt(Mt,cn,Bt){return ur(Mt,cn,Bt,!0)}function tr(Mt,cn,Bt){return ur(Mt,cn,Bt,!1)}function ur(Mt,cn,Bt,xe){return h(c.cloneNode(Mt)),xe?mn(Mt,bn(gn(c.createAssignment(Mt,cn),Bt))):bn(gn(c.createAssignment(Mt,cn),Bt))}function Gr(Mt,cn){if(Ie.exportEquals)return Mt;let Bt=cn.importClause;if(!Bt)return Mt;Bt.name&&(Mt=zt(Mt,Bt));let xe=Bt.namedBindings;if(xe)switch(xe.kind){case 275:Mt=zt(Mt,xe);break;case 276:for(let fr of xe.elements)Mt=zt(Mt,fr);break}return Mt}function dt(Mt,cn){return Ie.exportEquals?Mt:zt(Mt,cn)}function pr(Mt,cn,Bt){if(Ie.exportEquals)return Mt;for(let xe of cn.declarationList.declarations)(xe.initializer||Bt)&&(Mt=st(Mt,xe,Bt));return Mt}function st(Mt,cn,Bt){if(Ie.exportEquals)return Mt;if(Nu(cn.name))for(let xe of cn.name.elements)yp(xe)||(Mt=st(Mt,xe,Bt));else if(!kp(cn.name)){let xe;Bt&&(Mt=Ht(Mt,cn.name,c.getLocalName(cn)),xe=Vo(cn.name)),Mt=zt(Mt,cn,xe)}return Mt}function ir(Mt,cn){if(Ie.exportEquals)return Mt;let Bt;if(Ga(cn,32)){let xe=Ga(cn,2048)?c.createStringLiteral("default"):cn.name;Mt=Ht(Mt,xe,c.getLocalName(cn)),Bt=c2(xe)}return cn.name&&(Mt=zt(Mt,cn,Bt)),Mt}function zt(Mt,cn,Bt){if(Ie.exportEquals)return Mt;let xe=c.getDeclarationName(cn),fr=Ie.exportSpecifiers.get(xe);if(fr)for(let Je of fr)HD(Je.name)!==Bt&&(Mt=Ht(Mt,Je.name,xe));return Mt}function Ht(Mt,cn,Bt,xe){return Mt=Ft(Mt,Br(cn,Bt,xe)),Mt}function Br(Mt,cn,Bt){let xe=c.createExpressionStatement(mn(Mt,cn));return N0(xe),Bt||ti(xe,3072),xe}function mn(Mt,cn){let Bt=Ir(Mt)?c.createStringLiteralFromNode(Mt):Mt;return ti(cn,tA(cn)|3072),hh(c.createCallExpression(_e,void 0,[Bt,cn]),cn)}function jn(Mt){switch(Mt.kind){case 244:return Pt(Mt);case 263:return Lt(Mt);case 264:return Ke(Mt);case 249:return Zi(Mt,!0);case 250:return Ns(Mt);case 251:return An(Mt);case 247:return Ic(Mt);case 248:return su(Mt);case 257:return Zn(Mt);case 255:return ya(Mt);case 246:return Gl(Mt);case 256:return ba(Mt);case 270:return Wo(Mt);case 297:return hc(Mt);case 298:return yr(Mt);case 259:return hn(Mt);case 300:return Oi(Mt);case 242:return lo(Mt);default:return Oa(Mt)}}function Zi(Mt,cn){let Bt=Te;return Te=Mt,Mt=c.updateForStatement(Mt,Mr(Mt.initializer,cn?ks:tl,hE),Mr(Mt.condition,Oa,un),Mr(Mt.incrementor,tl,un),Py(Mt.statement,cn?jn:Oa,s)),Te=Bt,Mt}function Ns(Mt){let cn=Te;return Te=Mt,Mt=c.updateForInStatement(Mt,ks(Mt.initializer),Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s)),Te=cn,Mt}function An(Mt){let cn=Te;return Te=Mt,Mt=c.updateForOfStatement(Mt,Mt.awaitModifier,ks(Mt.initializer),Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s)),Te=cn,Mt}function si(Mt){return u_(Mt)&&Gt(Mt)}function ks(Mt){if(si(Mt)){let cn;for(let Bt of Mt.declarations)cn=Ft(cn,nt(Bt,!1)),Bt.initializer||_r(Bt);return cn?c.inlineExpressions(cn):c.createOmittedExpression()}else return Mr(Mt,tl,hE)}function Ic(Mt){return c.updateDoStatement(Mt,Py(Mt.statement,jn,s),Mr(Mt.expression,Oa,un))}function su(Mt){return c.updateWhileStatement(Mt,Mr(Mt.expression,Oa,un),Py(Mt.statement,jn,s))}function Zn(Mt){return c.updateLabeledStatement(Mt,Mt.label,Mr(Mt.statement,jn,Lc,c.liftToBlock)??c.createExpressionStatement(c.createIdentifier("")))}function ya(Mt){return c.updateWithStatement(Mt,Mr(Mt.expression,Oa,un),pe.checkDefined(Mr(Mt.statement,jn,Lc,c.liftToBlock)))}function Gl(Mt){return c.updateIfStatement(Mt,Mr(Mt.expression,Oa,un),Mr(Mt.thenStatement,jn,Lc,c.liftToBlock)??c.createBlock([]),Mr(Mt.elseStatement,jn,Lc,c.liftToBlock))}function ba(Mt){return c.updateSwitchStatement(Mt,Mr(Mt.expression,Oa,un),pe.checkDefined(Mr(Mt.caseBlock,jn,ade)))}function Wo(Mt){let cn=Te;return Te=Mt,Mt=c.updateCaseBlock(Mt,Ws(Mt.clauses,jn,RJ)),Te=cn,Mt}function hc(Mt){return c.updateCaseClause(Mt,Mr(Mt.expression,Oa,un),Ws(Mt.statements,jn,Lc))}function yr(Mt){return _s(Mt,jn,s)}function hn(Mt){return _s(Mt,jn,s)}function Oi(Mt){let cn=Te;return Te=Mt,Mt=c.updateCatchClause(Mt,Mt.variableDeclaration,pe.checkDefined(Mr(Mt.block,jn,$u))),Te=cn,Mt}function lo(Mt){let cn=Te;return Te=Mt,Mt=_s(Mt,jn,s),Te=cn,Mt}function pa(Mt,cn){if(!(Mt.transformFlags&276828160))return Mt;switch(Mt.kind){case 249:return Zi(Mt,!1);case 245:return Qu(Mt);case 218:return Tg(Mt,cn);case 356:return Cs(Mt,cn);case 227:if(Dx(Mt))return Pr(Mt,cn);break;case 214:if(Up(Mt))return Tu(Mt);break;case 225:case 226:return pt(Mt,cn)}return _s(Mt,Oa,s)}function Oa(Mt){return pa(Mt,!1)}function tl(Mt){return pa(Mt,!0)}function Qu(Mt){return c.updateExpressionStatement(Mt,Mr(Mt.expression,tl,un))}function Tg(Mt,cn){return c.updateParenthesizedExpression(Mt,Mr(Mt.expression,cn?tl:Oa,un))}function Cs(Mt,cn){return c.updatePartiallyEmittedExpression(Mt,Mr(Mt.expression,cn?tl:Oa,un))}function Tu(Mt){let cn=Ez(c,Mt,ge,R,S,_),Bt=Mr(Nc(Mt.arguments),Oa,un),xe=cn&&(!Bt||!Zg(Bt)||Bt.text!==cn.text)?cn:Bt;return c.createCallExpression(c.createPropertyAccessExpression(Ee,c.createIdentifier("import")),void 0,xe?[xe]:[])}function Pr(Mt,cn){return Pn(Mt.left)?TU(Mt,Oa,s,0,!cn):_s(Mt,Oa,s)}function Pn(Mt){if(Jm(Mt,!0))return Pn(Mt.left);if(of(Mt))return Pn(Mt.expression);if(og(Mt))return jt(Mt.properties,Pn);if(OI(Mt))return jt(Mt.elements,Pn);if(a0(Mt))return Pn(Mt.name);if(fm(Mt))return Pn(Mt.initializer);if(Ir(Mt)){let cn=S.getReferencedExportContainer(Mt);return cn!==void 0&&cn.kind===308}else return!1}function pt(Mt,cn){if((Mt.operator===46||Mt.operator===47)&&Ir(Mt.operand)&&!kp(Mt.operand)&&!VF(Mt.operand)&&!abe(Mt.operand)){let Bt=Gi(Mt.operand);if(Bt){let xe,fr=Mr(Mt.operand,Oa,un);T0(Mt)?fr=c.updatePrefixUnaryExpression(Mt,fr):(fr=c.updatePostfixUnaryExpression(Mt,fr),cn||(xe=c.createTempVariable(h),fr=c.createAssignment(xe,fr),gn(fr,Mt)),fr=c.createComma(fr,c.cloneNode(Mt.operand)),gn(fr,Mt));for(let Je of Bt)fr=mn(Je,bn(fr));return xe&&(fr=c.createComma(fr,xe),gn(fr,Mt)),fr}}return _s(Mt,Oa,s)}function on(Mt){switch(Mt.kind){case 95:case 90:return}return Mt}function it(Mt,cn,Bt){if(cn.kind===308){let xe=Wy(cn);ge=cn,Ie=V[xe],_e=M[xe],Ze=ee[xe],Ee=re[xe],Ze&&delete ee[xe],W(Mt,cn,Bt),ge=void 0,Ie=void 0,_e=void 0,Ee=void 0,Ze=void 0}else W(Mt,cn,Bt)}function nr(Mt,cn){return cn=T(Mt,cn),ds(cn)?cn:Mt===1?Dn(cn):Mt===4?Fr(cn):cn}function Fr(Mt){switch(Mt.kind){case 305:return Kr(Mt)}return Mt}function Kr(Mt){var cn,Bt;let xe=Mt.name;if(!kp(xe)&&!VF(xe)){let fr=S.getReferencedImportDeclaration(xe);if(fr){if(Vw(fr))return gn(c.createPropertyAssignment(c.cloneNode(xe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(fr.parent),c.createIdentifier("default"))),Mt);if(uy(fr)){let Je=fr.propertyName||fr.name,In=c.getGeneratedNameForNode(((Bt=(cn=fr.parent)==null?void 0:cn.parent)==null?void 0:Bt.parent)||fr);return gn(c.createPropertyAssignment(c.cloneNode(xe),Je.kind===11?c.createElementAccessExpression(In,c.cloneNode(Je)):c.createPropertyAccessExpression(In,c.cloneNode(Je))),Mt)}}}return Mt}function Dn(Mt){switch(Mt.kind){case 80:return hr(Mt);case 227:return En(Mt);case 237:return Ni(Mt)}return Mt}function hr(Mt){var cn,Bt;if(tA(Mt)&8192){let xe=uEe(ge);return xe?c.createPropertyAccessExpression(xe,Mt):Mt}if(!kp(Mt)&&!VF(Mt)){let xe=S.getReferencedImportDeclaration(Mt);if(xe){if(Vw(xe))return gn(c.createPropertyAccessExpression(c.getGeneratedNameForNode(xe.parent),c.createIdentifier("default")),Mt);if(uy(xe)){let fr=xe.propertyName||xe.name,Je=c.getGeneratedNameForNode(((Bt=(cn=xe.parent)==null?void 0:cn.parent)==null?void 0:Bt.parent)||xe);return gn(fr.kind===11?c.createElementAccessExpression(Je,c.cloneNode(fr)):c.createPropertyAccessExpression(Je,c.cloneNode(fr)),Mt)}}}return Mt}function En(Mt){if(UD(Mt.operatorToken.kind)&&Ir(Mt.left)&&(!kp(Mt.left)||fY(Mt.left))&&!VF(Mt.left)){let cn=Gi(Mt.left);if(cn){let Bt=Mt;for(let xe of cn)Bt=mn(xe,bn(Bt));return Bt}}return Mt}function Ni(Mt){return uv(Mt)?c.createPropertyAccessExpression(Ee,c.createIdentifier("meta")):Mt}function Gi(Mt){let cn,Bt=nn(Mt);if(Bt){let xe=S.getReferencedExportContainer(Mt,!1);xe&&xe.kind===308&&(cn=Ft(cn,c.getDeclarationName(Bt))),cn=Or(cn,Ie?.exportedBindings[Wy(Bt)])}else if(kp(Mt)&&fY(Mt)){let xe=Ie?.exportSpecifiers.get(Mt);if(xe){let fr=[];for(let Je of xe)fr.push(Je.name);return fr}}return cn}function nn(Mt){if(!kp(Mt)){let cn=S.getReferencedImportDeclaration(Mt);if(cn)return cn;let Bt=S.getReferencedValueDeclaration(Mt);if(Bt&&Ie?.exportedBindings[Wy(Bt)])return Bt;let xe=S.getReferencedValueDeclarations(Mt);if(xe){for(let fr of xe)if(fr!==Bt&&Ie?.exportedBindings[Wy(fr)])return fr}return Bt}}function bn(Mt){return Ze===void 0&&(Ze=[]),Ze[rd(Mt)]=!0,Mt}function ds(Mt){return Ze&&Mt.id&&Ze[Mt.id]}}function Qet(s){let{factory:c,getEmitHelperFactory:g}=s,d=s.getEmitHost(),h=s.getEmitResolver(),_=s.getCompilerOptions(),S=Mg(_),R=s.onEmitNode,T=s.onSubstituteNode;s.onEmitNode=Ye,s.onSubstituteNode=Tt,s.enableEmitNotification(308),s.enableSubstitution(80);let W=new Set,V,M,ee,re;return rR(s,ge);function ge(Qe){if(Qe.isDeclarationFile)return Qe;if(xm(Qe)||sS(_)){ee=Qe,re=void 0,_.rewriteRelativeImportExtensions&&(ee.flags&4194304||wo(Qe))&&$ne(Qe,!1,!1,ht=>{(!mA(ht.arguments[0])||une(ht.arguments[0].text,_))&&(V=Ft(V,ht))});let mt=Ie(Qe);return hN(mt,s.readEmitHelpers()),ee=void 0,re&&(mt=c.updateSourceFile(mt,gn(c.createNodeArray(Wre(mt.statements.slice(),re)),mt.statements))),!xm(Qe)||i0(_)===200||jt(mt.statements,PT)?mt:c.updateSourceFile(mt,gn(c.createNodeArray([...mt.statements,aEe(c)]),mt.statements))}return Qe}function Ie(Qe){let mt=T$e(c,g(),Qe,_);if(mt){let ht=[],_t=c.copyPrologue(Qe.statements,ht);return Or(ht,Ede([mt],_e,Lc)),Or(ht,Ws(Qe.statements,_e,Lc,_t)),c.updateSourceFile(Qe,gn(c.createNodeArray(ht),Qe.statements))}else return _s(Qe,_e,s)}function _e(Qe){switch(Qe.kind){case 272:return i0(_)>=100?Ze(Qe):void 0;case 278:return Ue(Qe);case 279:return $e(Qe);case 273:return Ee(Qe);case 214:if(Qe===V?.[0])return Ne(V.shift());default:if(V?.length&&cy(Qe,V[0]))return _s(Qe,_e,s)}return Qe}function Ee(Qe){if(!_.rewriteRelativeImportExtensions)return Qe;let mt=Nz(Qe.moduleSpecifier,_);return mt===Qe.moduleSpecifier?Qe:c.updateImportDeclaration(Qe,Qe.modifiers,Qe.importClause,mt,Qe.attributes)}function Ne(Qe){return c.updateCallExpression(Qe,Qe.expression,Qe.typeArguments,[mA(Qe.arguments[0])?Nz(Qe.arguments[0],_):g().createRewriteRelativeImportExtensionsHelper(Qe.arguments[0]),...Qe.arguments.slice(1)])}function Te(Qe){let mt=Ez(c,Qe,pe.checkDefined(ee),d,h,_),ht=[];if(mt&&ht.push(Nz(mt,_)),i0(_)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,ht);if(!re){let Rt=c.createUniqueName("_createRequire",48),Lt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),Rt)])),c.createStringLiteral("module"),void 0),Ke=c.createUniqueName("__require",48),Pt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ke,void 0,void 0,c.createCallExpression(c.cloneNode(Rt),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],S>=2?2:0));re=[Lt,Pt]}let _t=re[1].declarationList.declarations[0].name;return pe.assertNode(_t,Ir),c.createCallExpression(c.cloneNode(_t),void 0,ht)}function Ze(Qe){pe.assert(LL(Qe),"import= for internal module references should be handled in an earlier transformer.");let mt;return mt=Ft(mt,ua(gn(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Qe.name),void 0,void 0,Te(Qe))],S>=2?2:0)),Qe),Qe)),mt=We(mt,Qe),ac(mt)}function We(Qe,mt){return Ga(mt,32)&&(Qe=Ft(Qe,c.createExportDeclaration(void 0,mt.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,Vo(mt.name))])))),Qe}function Ue(Qe){return Qe.isExportEquals?i0(_)===200?ua(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Qe.expression)),Qe):void 0:Qe}function $e(Qe){let mt=Nz(Qe.moduleSpecifier,_);if(_.module!==void 0&&_.module>5||!Qe.exportClause||!tk(Qe.exportClause)||!Qe.moduleSpecifier)return!Qe.moduleSpecifier||mt===Qe.moduleSpecifier?Qe:c.updateExportDeclaration(Qe,Qe.modifiers,Qe.isTypeOnly,Qe.exportClause,mt,Qe.attributes);let ht=Qe.exportClause.name,_t=c.getGeneratedNameForNode(ht),Rt=c.createImportDeclaration(void 0,c.createImportClause(void 0,void 0,c.createNamespaceImport(_t)),mt,Qe.attributes);ua(Rt,Qe.exportClause);let Lt=wY(Qe)?c.createExportDefault(_t):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,_t,ht)]));return ua(Lt,Qe),[Rt,Lt]}function Ye(Qe,mt,ht){ll(mt)?((xm(mt)||sS(_))&&_.importHelpers&&(M=new Map),ee=mt,R(Qe,mt,ht),ee=void 0,M=void 0):R(Qe,mt,ht)}function Tt(Qe,mt){return mt=T(Qe,mt),mt.id&&W.has(mt.id)?mt:Ir(mt)&&tA(mt)&8192?ot(mt):mt}function ot(Qe){let mt=ee&&uEe(ee);if(mt)return W.add(rd(Qe)),c.createPropertyAccessExpression(mt,Qe);if(M){let ht=Vo(Qe),_t=M.get(ht);return _t||M.set(ht,_t=c.createUniqueName(ht,48)),_t}return Qe}}function n3t(s){let c=s.onSubstituteNode,g=s.onEmitNode,d=Qet(s),h=s.onSubstituteNode,_=s.onEmitNode;s.onSubstituteNode=c,s.onEmitNode=g;let S=Yet(s),R=s.onSubstituteNode,T=s.onEmitNode,W=Ee=>s.getEmitHost().getEmitModuleFormatOfFile(Ee);s.onSubstituteNode=M,s.onEmitNode=ee,s.enableSubstitution(308),s.enableEmitNotification(308);let V;return Ie;function M(Ee,Ne){return ll(Ne)?(V=Ne,c(Ee,Ne)):V?W(V)>=5?h(Ee,Ne):R(Ee,Ne):c(Ee,Ne)}function ee(Ee,Ne,Te){return ll(Ne)&&(V=Ne),V?W(V)>=5?_(Ee,Ne,Te):T(Ee,Ne,Te):g(Ee,Ne,Te)}function re(Ee){return W(Ee)>=5?d:S}function ge(Ee){if(Ee.isDeclarationFile)return Ee;V=Ee;let Ne=re(Ee)(Ee);return V=void 0,pe.assert(ll(Ne)),Ne}function Ie(Ee){return Ee.kind===308?ge(Ee):_e(Ee)}function _e(Ee){return s.factory.createBundle(At(Ee.sourceFiles,ge))}}function ZEe(s){return nc(s)||pi(s)||ss(s)||hg(s)||cv(s)||bB(s)||em(s)||wg(s)||uu(s)||hl(s)||ih(s)||Si(s)||Ds(s)||l_(s)||km(s)||FB(s)||Tc(s)||w0(s)||jo(s)||Yg(s)||fo(s)||iS(s)}function i3t(s){if(cv(s)||bB(s))return c;return hl(s)||uu(s)?d:J3(s);function c(_){let S=g(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function g(_){return cg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(_){let S=h(_);return S!==void 0?{diagnosticMessage:S,errorNode:s,typeName:s.name}:void 0}function h(_){return cg(s)?_.errorModuleName?_.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264?_.errorModuleName?_.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:_.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function J3(s){if(nc(s)||pi(s)||ss(s)||jo(s)||Yg(s)||fo(s)||hg(s)||Tc(s))return g;return cv(s)||bB(s)?d:em(s)||wg(s)||uu(s)||hl(s)||ih(s)||w0(s)?h:Si(s)?Ve(s,s.parent)&&Ga(s.parent,2)?g:_:Ds(s)?R:l_(s)?T:km(s)?W:FB(s)||iS(s)?V:pe.assertNever(s,`Attempted to set a declaration diagnostic context for unhandled node kind: ${pe.formatSyntaxKind(s.kind)}`);function c(M){if(s.kind===261||s.kind===209)return M.errorModuleName?M.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(s.kind===173||s.kind===212||s.kind===213||s.kind===227||s.kind===172||s.kind===170&&Ga(s.parent,2))return cg(s)?M.errorModuleName?M.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:s.parent.kind===264||s.kind===170?M.errorModuleName?M.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function g(M){let ee=c(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function d(M){let ee;return s.kind===179?cg(s)?ee=M.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:cg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:ee,errorNode:s.name,typeName:s.name}}function h(M){let ee;switch(s.kind){case 181:ee=M.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 180:ee=M.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 182:ee=M.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 175:case 174:cg(s)?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:s.parent.kind===264?ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:ee=M.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 263:ee=M.errorModuleName?M.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return pe.fail("This is unknown kind for signature: "+s.kind)}return{diagnosticMessage:ee,errorNode:s.name||s}}function _(M){let ee=S(M);return ee!==void 0?{diagnosticMessage:ee,errorNode:s,typeName:s.name}:void 0}function S(M){switch(s.parent.kind){case 177:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 181:case 186:return M.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 180:return M.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 182:return M.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 175:case 174:return cg(s.parent)?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 263:case 185:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 179:case 178:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return pe.fail(`Unknown parent for parameter: ${pe.formatSyntaxKind(s.parent.kind)}`)}}function R(){let M;switch(s.parent.kind){case 264:M=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 265:M=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 201:M=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 186:case 181:M=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 180:M=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 174:cg(s.parent)?M=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:s.parent.parent.kind===264?M=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 185:case 263:M=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 196:M=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 266:M=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return pe.fail("This is unknown parent for type parameter: "+s.parent.kind)}return{diagnosticMessage:M,errorNode:s,typeName:s.name}}function T(){let M;return pm(s.parent.parent)?M=h1(s.parent)&&s.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:s.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:M=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:M,errorNode:s,typeName:Il(s.parent.parent)}}function W(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:s,typeName:s.name}}function V(M){return{diagnosticMessage:M.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:iS(s)?pe.checkDefined(s.typeExpression):s.type,typeName:iS(s)?Il(s):s.name}}}function s3t(s){let c={220:Z.Add_a_return_type_to_the_function_expression,219:Z.Add_a_return_type_to_the_function_expression,175:Z.Add_a_return_type_to_the_method,178:Z.Add_a_return_type_to_the_get_accessor_declaration,179:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,263:Z.Add_a_return_type_to_the_function_declaration,181:Z.Add_a_return_type_to_the_function_declaration,170:Z.Add_a_type_annotation_to_the_parameter_0,261:Z.Add_a_type_annotation_to_the_variable_0,173:Z.Add_a_type_annotation_to_the_property_0,172:Z.Add_a_type_annotation_to_the_property_0,278:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},g={219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,263:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,220:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,175:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,181:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,179:Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,170:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,261:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,173:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,168:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,306:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,210:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,278:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,231:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(_e){if(ji(_e,h1))return mo(_e,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((ww(_e)||Fw(_e.parent))&&(fC(_e)||Od(_e)))return ge(_e);switch(pe.type(_e),_e.kind){case 178:case 179:return _(_e);case 168:case 305:case 306:return R(_e);case 210:case 231:return T(_e);case 175:case 181:case 219:case 220:case 263:return W(_e);case 209:return V(_e);case 173:case 261:return M(_e);case 170:return ee(_e);case 304:return Ie(_e.initializer);case 232:return re(_e);default:return Ie(_e)}}function h(_e){let Ee=ji(_e,Ne=>Cf(Ne)||Lc(Ne)||nc(Ne)||pi(Ne)||Si(Ne));if(Ee)return Cf(Ee)?Ee:I2(Ee)?ji(Ee,Ne=>kd(Ne)&&!Tc(Ne)):Lc(Ee)?void 0:Ee}function _(_e){let{getAccessor:Ee,setAccessor:Ne}=BP(_e.symbol.declarations,_e),Te=(cv(_e)?_e.parameters[0]:_e)??_e,Ze=mo(Te,g[_e.kind]);return Ne&&lg(Ze,mo(Ne,c[Ne.kind])),Ee&&lg(Ze,mo(Ee,c[Ee.kind])),Ze}function S(_e,Ee){let Ne=h(_e);if(Ne){let Te=Cf(Ne)||!Ne.name?"":xp(Ne.name,!1);lg(Ee,mo(Ne,c[Ne.kind],Te))}return Ee}function R(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function T(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),Ee}function W(_e){let Ee=mo(_e,g[_e.kind]);return S(_e,Ee),lg(Ee,mo(_e,c[_e.kind])),Ee}function V(_e){return mo(_e,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function M(_e){let Ee=mo(_e,g[_e.kind]),Ne=xp(_e.name,!1);return lg(Ee,mo(_e,c[_e.kind],Ne)),Ee}function ee(_e){if(cv(_e.parent))return _(_e.parent);let Ee=s.requiresAddingImplicitUndefined(_e,_e.parent);if(!Ee&&_e.initializer)return Ie(_e.initializer);let Ne=Ee?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:g[_e.kind],Te=mo(_e,Ne),Ze=xp(_e.name,!1);return lg(Te,mo(_e,c[_e.kind],Ze)),Te}function re(_e){return Ie(_e,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ge(_e){let Ee=mo(_e,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,xp(_e,!1));return S(_e,Ee),Ee}function Ie(_e,Ee){let Ne=h(_e),Te;if(Ne){let Ze=Cf(Ne)||!Ne.name?"":xp(Ne.name,!1),We=ji(_e.parent,Ue=>Cf(Ue)||(Lc(Ue)?"quit":!gI(Ue)&&!xF(Ue)&&!Yd(Ue)));Ne===We?(Te=mo(_e,Ee??g[Ne.kind]),lg(Te,mo(Ne,c[Ne.kind],Ze))):(Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),lg(Te,mo(Ne,c[Ne.kind],Ze)),lg(Te,mo(_e,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Te=mo(_e,Ee??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Te}}function o3t(s,c,g){let d=s.getCompilerOptions(),h=Me(aAe(s,g),Jge);return k(h,g)?WEe(c,s,me,d,[g],[Xet],!1).diagnostics:void 0}var LEe=531469,VEe=8;function Xet(s){let c=()=>pe.fail("Diagnostic emitted without context"),g=c,d=!0,h=!1,_=!1,S=!1,R=!1,T,W,V,M,{factory:ee}=s,re=s.getEmitHost(),ge=()=>{},Ie={trackSymbol:_t,reportInaccessibleThisError:_r,reportInaccessibleUniqueSymbolError:Ke,reportCyclicStructureError:Pt,reportPrivateInBaseOfClassExpression:Rt,reportLikelyUnsafeImportRequiredError:Gt,reportTruncationError:nt,moduleResolverHost:re,reportNonlocalAugmentation:Dt,reportNonSerializableProperty:tr,reportInferenceFallback:mt,pushErrorFallbackNode(pt){let on=Ee,it=ge;ge=()=>{ge=it,Ee=on},Ee=pt},popErrorFallbackNode(){ge()}},_e,Ee,Ne,Te,Ze,We,Ue=s.getEmitResolver(),$e=s.getCompilerOptions(),Ye=s3t(Ue),{stripInternal:Tt,isolatedDeclarations:ot}=$e;return Gr;function Qe(pt){Ue.getPropertiesOfContainerFunction(pt).forEach(on=>{if(jY(on.valueDeclaration)){let it=fo(on.valueDeclaration)?on.valueDeclaration.left:on.valueDeclaration;s.addDiagnostic(mo(it,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function mt(pt){!ot||n0(Ne)||ms(pt)===Ne&&(nc(pt)&&Ue.isExpandoFunctionDeclaration(pt)?Qe(pt):s.addDiagnostic(Ye(pt)))}function ht(pt){if(pt.accessibility===0){if(pt.aliasesToMakeVisible)if(!W)W=pt.aliasesToMakeVisible;else for(let on of pt.aliasesToMakeVisible)Qi(W,on)}else if(pt.accessibility!==3){let on=g(pt);if(on)return on.typeName?s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,xp(on.typeName),pt.errorSymbolName,pt.errorModuleName)):s.addDiagnostic(mo(pt.errorNode||on.errorNode,on.diagnosticMessage,pt.errorSymbolName,pt.errorModuleName)),!0}return!1}function _t(pt,on,it){return pt.flags&262144?!1:ht(Ue.isSymbolAccessible(pt,on,it,!0))}function Rt(pt){(_e||Ee)&&s.addDiagnostic(lg(mo(_e||Ee,Z.Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected,pt),...nc((_e||Ee).parent)?[mo(_e||Ee,Z.Add_a_type_annotation_to_the_variable_0,Lt())]:[]))}function Lt(){return _e?Wd(_e):Ee&&Il(Ee)?Wd(Il(Ee)):Ee&&Cf(Ee)?Ee.isExportEquals?"export=":"default":"(Missing)"}function Ke(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"unique symbol"))}function Pt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,Lt()))}function _r(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Lt(),"this"))}function Gt(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,Lt(),pt))}function nt(){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function Dt(pt,on,it){var nr;let Fr=(nr=on.declarations)==null?void 0:nr.find(Dn=>ms(Dn)===pt),Kr=Me(it.declarations,Dn=>ms(Dn)!==pt);if(Fr&&Kr)for(let Dn of Kr)s.addDiagnostic(lg(mo(Dn,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),mo(Fr,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function tr(pt){(_e||Ee)&&s.addDiagnostic(mo(_e||Ee,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,pt))}function ur(pt){let on=g;g=nr=>nr.errorNode&&ZEe(nr.errorNode)?J3(nr.errorNode)(nr):{diagnosticMessage:nr.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:nr.errorNode||pt};let it=Ue.getDeclarationStatementsForSourceFile(pt,LEe,VEe,Ie);return g=on,it}function Gr(pt){if(pt.kind===308&&pt.isDeclarationFile)return pt;if(pt.kind===309){h=!0,Te=[],Ze=[],We=[];let En=!1,Ni=ee.createBundle(At(pt.sourceFiles,nn=>{if(nn.isDeclarationFile)return;if(En=En||nn.hasNoDefaultLib,Ne=nn,T=nn,W=void 0,M=!1,V=new Map,g=c,S=!1,R=!1,nr(nn),vl(nn)||Zu(nn)){_=!1,d=!1;let ds=n0(nn)?ee.createNodeArray(ur(nn)):Ws(nn.statements,hc,Lc);return ee.updateSourceFile(nn,[ee.createModuleDeclaration([ee.createModifier(138)],ee.createStringLiteral(F7(s.getEmitHost(),nn)),ee.createModuleBlock(gn(ee.createNodeArray(Gl(ds)),nn.statements)))],!0,[],[],!1,[])}d=!0;let bn=n0(nn)?ee.createNodeArray(ur(nn)):Ws(nn.statements,hc,Lc);return ee.updateSourceFile(nn,Gl(bn),!0,[],[],!1,[])})),Gi=Mo(Dp(Dde(pt,re,!0).declarationFilePath));return Ni.syntheticFileReferences=hr(Gi),Ni.syntheticTypeReferences=Kr(),Ni.syntheticLibReferences=Dn(),Ni.hasNoDefaultLib=En,Ni}d=!0,S=!1,R=!1,T=pt,Ne=pt,g=c,h=!1,_=!1,M=!1,W=void 0,V=new Map,Te=[],Ze=[],We=[],nr(Ne);let on;if(n0(Ne))on=ee.createNodeArray(ur(pt));else{let En=Ws(pt.statements,hc,Lc);on=gn(ee.createNodeArray(Gl(En)),pt.statements),xm(pt)&&(!_||S&&!R)&&(on=gn(ee.createNodeArray([...on,aEe(ee)]),on))}let it=Mo(Dp(Dde(pt,re,!0).declarationFilePath));return ee.updateSourceFile(pt,on,!0,hr(it),Kr(),pt.hasNoDefaultLib,Dn());function nr(En){Te=Nn(Te,At(En.referencedFiles,Ni=>[En,Ni])),Ze=Nn(Ze,En.typeReferenceDirectives),We=Nn(We,En.libReferenceDirectives)}function Fr(En){let Ni={...En};return Ni.pos=-1,Ni.end=-1,Ni}function Kr(){return Xt(Ze,En=>{if(En.preserve)return Fr(En)})}function Dn(){return Xt(We,En=>{if(En.preserve)return Fr(En)})}function hr(En){return Xt(Te,([Ni,Gi])=>{if(!Gi.preserve)return;let nn=re.getSourceFileFromReference(Ni,Gi);if(!nn)return;let bn;if(nn.isDeclarationFile)bn=nn.fileName;else{if(h&&k(pt.sourceFiles,nn))return;let cn=Dde(nn,re,!0);bn=cn.declarationFilePath||cn.jsFilePath||nn.fileName}if(!bn)return;let ds=Of(En,bn,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Mt=Fr(Gi);return Mt.fileName=ds,Mt})}}function dt(pt){if(pt.kind===80)return pt;return pt.kind===208?ee.updateArrayBindingPattern(pt,Ws(pt.elements,on,o3)):ee.updateObjectBindingPattern(pt,Ws(pt.elements,on,hg));function on(it){return it.kind===233?it:(it.propertyName&&Un(it.propertyName)&&Od(it.propertyName.expression)&&si(it.propertyName.expression,T),ee.updateBindingElement(it,it.dotDotDotToken,it.propertyName,dt(it.name),void 0))}}function pr(pt,on){let it;M||(it=g,g=J3(pt));let nr=ee.updateParameterDeclaration(pt,PBs(ee,pt,on),pt.dotDotDotToken,dt(pt.name),Ue.isOptionalParameter(pt)?pt.questionToken||ee.createToken(58):void 0,zt(pt,!0),ir(pt));return M||(g=it),nr}function st(pt){return Mtn(pt)&&!!pt.initializer&&Ue.isLiteralConstDeclaration($l(pt))}function ir(pt){if(st(pt)){let on=UAe(pt.initializer);return uz(on)||mt(pt),Ue.createLiteralConstValue($l(pt,Mtn),Ie)}}function zt(pt,on){if(!on&&Gb(pt,2)||st(pt))return;if(!Cf(pt)&&!hg(pt)&&pt.type&&(!Si(pt)||!Ue.requiresAddingImplicitUndefined(pt,T)))return Mr(pt.type,ba,uc);let it=_e;_e=pt.name;let nr;M||(nr=g,ZEe(pt)&&(g=J3(pt)));let Fr;return KAe(pt)?Fr=Ue.createTypeOfDeclaration(pt,T,LEe,VEe,Ie):bu(pt)?Fr=Ue.createReturnTypeOfSignatureDeclaration(pt,T,LEe,VEe,Ie):pe.assertNever(pt),_e=it,M||(g=nr),Fr??ee.createKeywordTypeNode(133)}function Ht(pt){switch(pt=$l(pt),pt.kind){case 263:case 268:case 265:case 264:case 266:case 267:return!Ue.isDeclarationVisible(pt);case 261:return!mn(pt);case 272:case 273:case 279:case 278:return!1;case 176:return!0}return!1}function Br(pt){var on;if(pt.body)return!0;let it=(on=pt.symbol.declarations)==null?void 0:on.filter(nr=>ih(nr)&&!nr.body);return!it||it.indexOf(pt)===it.length-1}function mn(pt){return yp(pt)?!1:Nu(pt.name)?jt(pt.name.elements,mn):Ue.isDeclarationVisible(pt)}function jn(pt,on,it){if(Gb(pt,2))return ee.createNodeArray();let nr=At(on,Fr=>pr(Fr,it));return nr?ee.createNodeArray(nr,on.hasTrailingComma):ee.createNodeArray()}function Zi(pt,on){let it;if(!on){let nr=vP(pt);nr&&(it=[pr(nr)])}if(Dg(pt)){let nr;if(!on){let Fr=L7(pt);Fr&&(nr=pr(Fr))}nr||(nr=ee.createParameterDeclaration(void 0,void 0,"value")),it=Ft(it,nr)}return ee.createNodeArray(it||E)}function Ns(pt,on){return Gb(pt,2)?void 0:Ws(on,ba,Ds)}function An(pt){return ll(pt)||FB(pt)||xh(pt)||pm(pt)||g_(pt)||bu(pt)||w0(pt)||GB(pt)}function si(pt,on){let it=Ue.isEntityNameVisible(pt,on);ht(it)}function ks(pt,on){return Xm(pt)&&Xm(on)&&(pt.jsDoc=on.jsDoc),hh(pt,DB(on))}function Ic(pt,on){if(on){if(_=_||pt.kind!==268&&pt.kind!==206,mA(on)&&h){let it=wZe(s.getEmitHost(),Ue,pt);if(it)return ee.createStringLiteral(it)}return on}}function su(pt){if(Ue.isDeclarationVisible(pt))if(pt.moduleReference.kind===284){let on=_7(pt);return ee.updateImportEqualsDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.name,ee.updateExternalModuleReference(pt.moduleReference,Ic(pt,on)))}else{let on=g;return g=J3(pt),si(pt.moduleReference,T),g=on,pt}}function Zn(pt){if(!pt.importClause)return ee.updateImportDeclaration(pt,pt.modifiers,pt.importClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));let on=pt.importClause.phaseModifier===166?void 0:pt.importClause.phaseModifier,it=pt.importClause&&pt.importClause.name&&Ue.isDeclarationVisible(pt.importClause)?pt.importClause.name:void 0;if(!pt.importClause.namedBindings)return it&&ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(pt.importClause.namedBindings.kind===275){let Fr=Ue.isDeclarationVisible(pt.importClause.namedBindings)?pt.importClause.namedBindings:void 0;return it||Fr?ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,Fr),Ic(pt,pt.moduleSpecifier),ya(pt.attributes)):void 0}let nr=Xt(pt.importClause.namedBindings.elements,Fr=>Ue.isDeclarationVisible(Fr)?Fr:void 0);if(nr&&nr.length||it)return ee.updateImportDeclaration(pt,pt.modifiers,ee.updateImportClause(pt.importClause,on,it,nr&&nr.length?ee.updateNamedImports(pt.importClause.namedBindings,nr):void 0),Ic(pt,pt.moduleSpecifier),ya(pt.attributes));if(Ue.isImportRequiredByAugmentation(pt))return ot&&s.addDiagnostic(mo(pt,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),ee.updateImportDeclaration(pt,pt.modifiers,void 0,Ic(pt,pt.moduleSpecifier),ya(pt.attributes))}function ya(pt){let on=Gie(pt);return pt&&on!==void 0?pt:void 0}function Gl(pt){for(;B(W);){let it=W.shift();if(!p7(it))return pe.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${pe.formatSyntaxKind(it.kind)}`);let nr=d;d=it.parent&&ll(it.parent)&&!(xm(it.parent)&&h);let Fr=Oi(it);d=nr,V.set(Wy(it),Fr)}return Ws(pt,on,Lc);function on(it){if(p7(it)){let nr=Wy(it);if(V.has(nr)){let Fr=V.get(nr);return V.delete(nr),Fr&&((Ki(Fr)?jt(Fr,t7):t7(Fr))&&(S=!0),ll(it.parent)&&(Ki(Fr)?jt(Fr,PT):PT(Fr))&&(_=!0)),Fr}}return it}}function ba(pt){if(Qu(pt))return;if(jh(pt)){if(Ht(pt))return;if(XD(pt)){if(ot){if(!Ue.isDefinitelyReferenceToGlobalSymbolObject(pt.name.expression)){if(pm(pt.parent)||og(pt.parent)){s.addDiagnostic(mo(pt,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((g_(pt.parent)||mh(pt.parent))&&!Od(pt.name.expression)){s.addDiagnostic(mo(pt,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!Ue.isLateBound($l(pt))||!Od(pt.name.expression))return}}if(bu(pt)&&Ue.isImplementationOfOverload(pt)||DPt(pt))return;let on;An(pt)&&(on=T,T=pt);let it=g,nr=ZEe(pt),Fr=M,Kr=(pt.kind===188||pt.kind===201)&&pt.parent.kind!==266;if((uu(pt)||hl(pt))&&Gb(pt,2))return pt.symbol&&pt.symbol.declarations&&pt.symbol.declarations[0]!==pt?void 0:Dn(ee.createPropertyDeclaration(Tu(pt),pt.name,void 0,void 0,void 0));if(nr&&!M&&(g=J3(pt)),Fw(pt)&&si(pt.exprName,T),Kr&&(M=!0),OBs(pt))switch(pt.kind){case 234:{(fC(pt.expression)||Od(pt.expression))&&si(pt.expression,T);let hr=_s(pt,ba,s);return Dn(ee.updateExpressionWithTypeArguments(hr,hr.expression,hr.typeArguments))}case 184:{si(pt.typeName,T);let hr=_s(pt,ba,s);return Dn(ee.updateTypeReferenceNode(hr,hr.typeName,hr.typeArguments))}case 181:return Dn(ee.updateConstructSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 177:{let hr=ee.createConstructorDeclaration(Tu(pt),jn(pt,pt.parameters,0),void 0);return Dn(hr)}case 175:{if(p(pt.name))return Dn(void 0);let hr=ee.createMethodDeclaration(Tu(pt),void 0,pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt),void 0);return Dn(hr)}case 178:return p(pt.name)?Dn(void 0):Dn(ee.updateGetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Gb(pt,2)),zt(pt),void 0));case 179:return p(pt.name)?Dn(void 0):Dn(ee.updateSetAccessorDeclaration(pt,Tu(pt),pt.name,Zi(pt,Gb(pt,2)),void 0));case 173:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertyDeclaration(pt,Tu(pt),pt.name,pt.questionToken,zt(pt),ir(pt)));case 172:return p(pt.name)?Dn(void 0):Dn(ee.updatePropertySignature(pt,Tu(pt),pt.name,pt.questionToken,zt(pt)));case 174:return p(pt.name)?Dn(void 0):Dn(ee.updateMethodSignature(pt,Tu(pt),pt.name,pt.questionToken,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 180:return Dn(ee.updateCallSignature(pt,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt)));case 182:return Dn(ee.updateIndexSignature(pt,Tu(pt),jn(pt,pt.parameters),Mr(pt.type,ba,uc)||ee.createKeywordTypeNode(133)));case 261:return Nu(pt.name)?pa(pt.name):(Kr=!0,M=!0,Dn(ee.updateVariableDeclaration(pt,pt.name,void 0,zt(pt),ir(pt))));case 169:return Wo(pt)&&(pt.default||pt.constraint)?Dn(ee.updateTypeParameterDeclaration(pt,pt.modifiers,pt.name,void 0,void 0)):Dn(_s(pt,ba,s));case 195:{let hr=Mr(pt.checkType,ba,uc),En=Mr(pt.extendsType,ba,uc),Ni=T;T=pt.trueType;let Gi=Mr(pt.trueType,ba,uc);T=Ni;let nn=Mr(pt.falseType,ba,uc);return pe.assert(hr),pe.assert(En),pe.assert(Gi),pe.assert(nn),Dn(ee.updateConditionalTypeNode(pt,hr,En,Gi,nn))}case 185:return Dn(ee.updateFunctionTypeNode(pt,Ws(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 186:return Dn(ee.updateConstructorTypeNode(pt,Tu(pt),Ws(pt.typeParameters,ba,Ds),jn(pt,pt.parameters),pe.checkDefined(Mr(pt.type,ba,uc))));case 206:return ky(pt)?Dn(ee.updateImportTypeNode(pt,ee.updateLiteralTypeNode(pt.argument,Ic(pt,pt.argument.literal)),pt.attributes,pt.qualifier,Ws(pt.typeArguments,ba,uc),pt.isTypeOf)):Dn(pt);default:pe.assertNever(pt,`Attempted to process unhandled node kind: ${pe.formatSyntaxKind(pt.kind)}`)}return Zw(pt)&&Ra(Ne,pt.pos).line===Ra(Ne,pt.end).line&&ti(pt,1),Dn(_s(pt,ba,s));function Dn(hr){return hr&&nr&&XD(pt)&&tl(pt),An(pt)&&(T=on),nr&&!M&&(g=it),Kr&&(M=Fr),hr===pt?hr:hr&&ua(ks(hr,pt),pt)}}function Wo(pt){return pt.parent.kind===175&&Gb(pt.parent,2)}function hc(pt){if(!WBs(pt)||Qu(pt))return;switch(pt.kind){case 279:return ll(pt.parent)&&(_=!0),R=!0,ee.updateExportDeclaration(pt,pt.modifiers,pt.isTypeOnly,pt.exportClause,Ic(pt,pt.moduleSpecifier),ya(pt.attributes));case 278:{if(ll(pt.parent)&&(_=!0),R=!0,pt.expression.kind===80)return pt;{let it=ee.createUniqueName("_default",16);g=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:pt}),Ee=pt;let nr=zt(pt),Fr=ee.createVariableDeclaration(it,void 0,nr,void 0);Ee=void 0;let Kr=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([Fr],2));return ks(Kr,pt),pz(pt),[Kr,ee.updateExportAssignment(pt,pt.modifiers,it)]}}}let on=Oi(pt);return V.set(Wy(pt),on),pt}function yr(pt){if(km(pt)||Gb(pt,2048)||!LB(pt))return pt;let on=ee.createModifiersFromModifierFlags(o_(pt)&131039);return ee.replaceModifiers(pt,on)}function hn(pt,on,it,nr){let Fr=ee.updateModuleDeclaration(pt,on,it,nr);if(s_(Fr)||Fr.flags&32)return Fr;let Kr=ee.createModuleDeclaration(Fr.modifiers,Fr.name,Fr.body,Fr.flags|32);return ua(Kr,Fr),gn(Kr,Fr),Kr}function Oi(pt){if(W)for(;Ql(W,pt););if(Qu(pt))return;switch(pt.kind){case 272:return su(pt);case 273:return Zn(pt)}if(jh(pt)&&Ht(pt)||SN(pt)||bu(pt)&&Ue.isImplementationOfOverload(pt))return;let on;An(pt)&&(on=T,T=pt);let it=ZEe(pt),nr=g;it&&(g=J3(pt));let Fr=d;switch(pt.kind){case 266:{d=!1;let Dn=Kr(ee.updateTypeAliasDeclaration(pt,Tu(pt),pt.name,Ws(pt.typeParameters,ba,Ds),pe.checkDefined(Mr(pt.type,ba,uc))));return d=Fr,Dn}case 265:return Kr(ee.updateInterfaceDeclaration(pt,Tu(pt),pt.name,Ns(pt,pt.typeParameters),Pn(pt.heritageClauses),Ws(pt.members,ba,Bx)));case 263:{let Dn=Kr(ee.updateFunctionDeclaration(pt,Tu(pt),void 0,pt.name,Ns(pt,pt.typeParameters),jn(pt,pt.parameters),zt(pt),void 0));if(Dn&&Ue.isExpandoFunctionDeclaration(pt)&&Br(pt)){let hr=Ue.getPropertiesOfContainerFunction(pt);ot&&Qe(pt);let En=H3.createModuleDeclaration(void 0,Dn.name||ee.createIdentifier("_default"),ee.createModuleBlock([]),32);XA(En,T),En.locals=qu(hr),En.symbol=hr[0].parent;let Ni=[],Gi=Xt(hr,Bt=>{if(!jY(Bt.valueDeclaration))return;let xe=Bc(Bt.escapedName);if(!Uh(xe,99))return;g=J3(Bt.valueDeclaration);let fr=Ue.createTypeOfDeclaration(Bt.valueDeclaration,En,LEe,VEe|2,Ie);g=nr;let Je=WY(xe),In=Je?ee.getGeneratedNameForNode(Bt.valueDeclaration):ee.createIdentifier(xe);Je&&Ni.push([In,xe]);let Hn=ee.createVariableDeclaration(In,void 0,fr,void 0);return ee.createVariableStatement(Je?void 0:[ee.createToken(95)],ee.createVariableDeclarationList([Hn]))});Ni.length?Gi.push(ee.createExportDeclaration(void 0,!1,ee.createNamedExports(At(Ni,([Bt,xe])=>ee.createExportSpecifier(!1,Bt,xe))))):Gi=Xt(Gi,Bt=>ee.replaceModifiers(Bt,0));let nn=ee.createModuleDeclaration(Tu(pt),pt.name,ee.createModuleBlock(Gi),32);if(!Gb(Dn,2048))return[Dn,nn];let bn=ee.createModifiersFromModifierFlags(o_(Dn)&-2081|128),ds=ee.updateFunctionDeclaration(Dn,bn,void 0,Dn.name,Dn.typeParameters,Dn.parameters,Dn.type,void 0),Mt=ee.updateModuleDeclaration(nn,bn,nn.name,nn.body),cn=ee.createExportAssignment(void 0,!1,nn.name);return ll(pt.parent)&&(_=!0),R=!0,[ds,Mt,cn]}else return Dn}case 268:{d=!1;let Dn=pt.body;if(Dn&&Dn.kind===269){let hr=S,En=R;R=!1,S=!1;let Ni=Ws(Dn.statements,hc,Lc),Gi=Gl(Ni);pt.flags&33554432&&(S=!1),!vB(pt)&&!Cs(Gi)&&!R&&(S?Gi=ee.createNodeArray([...Gi,aEe(ee)]):Gi=Ws(Gi,yr,Lc));let nn=ee.updateModuleBlock(Dn,Gi);d=Fr,S=hr,R=En;let bn=Tu(pt);return Kr(hn(pt,bn,_F(pt)?Ic(pt,pt.name):pt.name,nn))}else{d=Fr;let hr=Tu(pt);d=!1,Mr(Dn,hc);let En=Wy(Dn),Ni=V.get(En);return V.delete(En),Kr(hn(pt,hr,pt.name,Ni))}}case 264:{_e=pt.name,Ee=pt;let Dn=ee.createNodeArray(Tu(pt)),hr=Ns(pt,pt.typeParameters),En=lN(pt),Ni;if(En){let Bt=g;Ni=Hr(er(En.parameters,xe=>{if(!Ga(xe,31)||Qu(xe))return;if(g=J3(xe),xe.name.kind===80)return ks(ee.createPropertyDeclaration(Tu(xe),xe.name,xe.questionToken,zt(xe),ir(xe)),xe);return fr(xe.name);function fr(Je){let In;for(let Hn of Je.elements)yp(Hn)||(Nu(Hn.name)&&(In=Nn(In,fr(Hn.name))),In=In||[],In.push(ee.createPropertyDeclaration(Tu(xe),Hn.name,void 0,zt(Hn),void 0)));return In}})),g=Bt}let nn=jt(pt.members,Bt=>!!Bt.name&&p(Bt.name))?[ee.createPropertyDeclaration(void 0,ee.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,bn=Ue.createLateBoundIndexSignatures(pt,T,LEe,VEe,Ie),ds=Nn(Nn(Nn(nn,bn),Ni),Ws(pt.members,ba,PI)),Mt=ee.createNodeArray(ds),cn=BB(pt);if(cn&&!Od(cn.expression)&&cn.expression.kind!==106){let Bt=pt.name?Bc(pt.name.escapedText):"default",xe=ee.createUniqueName(`${Bt}_base`,16);g=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:cn,typeName:pt.name});let fr=ee.createVariableDeclaration(xe,void 0,Ue.createTypeOfExpression(cn.expression,pt,LEe,VEe,Ie),void 0),Je=ee.createVariableStatement(d?[ee.createModifier(138)]:[],ee.createVariableDeclarationList([fr],2)),In=ee.createNodeArray(At(pt.heritageClauses,Hn=>{if(Hn.token===96){let Ot=g;g=J3(Hn.types[0]);let $r=ee.updateHeritageClause(Hn,At(Hn.types,ri=>ee.updateExpressionWithTypeArguments(ri,xe,Ws(ri.typeArguments,ba,uc))));return g=Ot,$r}return ee.updateHeritageClause(Hn,Ws(ee.createNodeArray(Me(Hn.types,Ot=>Od(Ot.expression)||Ot.expression.kind===106)),ba,l_))}));return[Je,Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,In,Mt))]}else{let Bt=Pn(pt.heritageClauses);return Kr(ee.updateClassDeclaration(pt,Dn,pt.name,hr,Bt,Mt))}}case 244:return Kr(lo(pt));case 267:return Kr(ee.updateEnumDeclaration(pt,ee.createNodeArray(Tu(pt)),pt.name,ee.createNodeArray(Xt(pt.members,Dn=>{if(Qu(Dn))return;let hr=Ue.getEnumMemberValue(Dn),En=hr?.value;ot&&Dn.initializer&&hr?.hasExternalReferences&&!Un(Dn.name)&&s.addDiagnostic(mo(Dn,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let Ni=En===void 0?void 0:typeof En=="string"?ee.createStringLiteral(En):En<0?ee.createPrefixUnaryExpression(41,ee.createNumericLiteral(-En)):ee.createNumericLiteral(En);return ks(ee.updateEnumMember(Dn,Dn.name,Ni),Dn)}))))}return pe.assertNever(pt,`Unhandled top-level node in declaration emit: ${pe.formatSyntaxKind(pt.kind)}`);function Kr(Dn){return An(pt)&&(T=on),it&&(g=nr),pt.kind===268&&(d=Fr),Dn===pt?Dn:(Ee=void 0,_e=void 0,Dn&&ua(ks(Dn,pt),pt))}}function lo(pt){if(!F(pt.declarationList.declarations,mn))return;let on=Ws(pt.declarationList.declarations,ba,nc);if(!B(on))return;let it=ee.createNodeArray(Tu(pt)),nr;return tI(pt.declarationList)||Sd(pt.declarationList)?(nr=ee.createVariableDeclarationList(on,2),ua(nr,pt.declarationList),gn(nr,pt.declarationList),hh(nr,pt.declarationList)):nr=ee.updateVariableDeclarationList(pt.declarationList,on),ee.updateVariableStatement(pt,it,nr)}function pa(pt){return Nr(Xt(pt.elements,on=>Oa(on)))}function Oa(pt){if(pt.kind!==233&&pt.name)return mn(pt)?Nu(pt.name)?pa(pt.name):ee.createVariableDeclaration(pt.name,void 0,zt(pt),void 0):void 0}function tl(pt){let on;M||(on=g,g=i3t(pt)),_e=pt.name,pe.assert(XD(pt));let nr=pt.name.expression;si(nr,T),M||(g=on),_e=void 0}function Qu(pt){return!!Tt&&!!pt&&Fre(pt,Ne)}function Tg(pt){return Cf(pt)||Gh(pt)}function Cs(pt){return jt(pt,Tg)}function Tu(pt){let on=o_(pt),it=Pr(pt);return on===it?Ede(pt.modifiers,nr=>Gs(nr,Ig),Ig):ee.createModifiersFromModifierFlags(it)}function Pr(pt){let on=130030,it=d&&!VBs(pt)?128:0,nr=pt.parent.kind===308;return(!nr||h&&nr&&xm(pt.parent))&&(on^=128,it=0),Otn(pt,on,it)}function Pn(pt){return ee.createNodeArray(Me(At(pt,on=>ee.updateHeritageClause(on,Ws(ee.createNodeArray(Me(on.types,it=>Od(it.expression)||on.token===96&&it.expression.kind===106)),ba,l_))),on=>on.types&&!!on.types.length))}}function VBs(s){return s.kind===265}function PBs(s,c,g,d){return s.createModifiersFromModifierFlags(Otn(c,g,d))}function Otn(s,c=131070,g=0){let d=o_(s)&c|g;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function Mtn(s){switch(s.kind){case 173:case 172:return!Gb(s,2);case 170:case 261:return!0}return!1}function WBs(s){switch(s.kind){case 263:case 268:case 272:case 265:case 264:case 266:case 267:case 244:case 273:case 279:case 278:return!0}return!1}function OBs(s){switch(s.kind){case 181:case 177:case 175:case 178:case 179:case 173:case 172:case 174:case 180:case 182:case 261:case 169:case 234:case 184:case 195:case 185:case 186:case 206:return!0}return!1}function MBs(s){switch(s){case 200:return Qet;case 99:case 7:case 6:case 5:case 100:case 101:case 102:case 199:case 1:return n3t;case 4:return r3t;default:return Yet}}var a3t={scriptTransformers:E,declarationTransformers:E};function c3t(s,c,g){return{scriptTransformers:HBs(s,c,g),declarationTransformers:YBs(c)}}function HBs(s,c,g){if(g)return E;let d=Mg(s),h=i0(s),_=Pne(s),S=[];return Or(S,c&&At(c.before,Ytn)),S.push(POt),s.experimentalDecorators&&S.push(MOt),RAe(s)&&S.push(qOt),d<99&&S.push(KOt),!s.experimentalDecorators&&(d<99||!_)&&S.push(HOt),S.push(WOt),d<8&&S.push(UOt),d<7&&S.push(JOt),d<6&&S.push(XOt),d<5&&S.push(QOt),d<4&&S.push(YOt),d<3&&S.push($Ot),d<2&&(S.push(e3t),S.push(t3t)),S.push(MBs(h)),Or(S,c&&At(c.after,Ytn)),S}function YBs(s){let c=[];return c.push(Xet),Or(c,s&&At(s.afterDeclarations,XBs)),c}function QBs(s){return c=>LPt(c)?s.transformBundle(c):s.transformSourceFile(c)}function Htn(s,c){return g=>{let d=s(g);return typeof d=="function"?c(g,d):QBs(d)}}function Ytn(s){return Htn(s,rR)}function XBs(s){return Htn(s,(c,g)=>g)}function Nde(s,c){return c}function PEe(s,c,g){g(s,c)}function WEe(s,c,g,d,h,_,S){var R,T;let W=new Array(359),V,M,ee,re=0,ge=[],Ie=[],_e=[],Ee=[],Ne=0,Te=!1,Ze=[],We=0,Ue,$e,Ye=Nde,Tt=PEe,ot=0,Qe=[],mt={factory:g,getCompilerOptions:()=>d,getEmitResolver:()=>s,getEmitHost:()=>c,getEmitHelperFactory:FA(()=>YLe(mt)),startLexicalEnvironment:dt,suspendLexicalEnvironment:pr,resumeLexicalEnvironment:st,endLexicalEnvironment:ir,setLexicalEnvironmentFlags:zt,getLexicalEnvironmentFlags:Ht,hoistVariableDeclaration:tr,hoistFunctionDeclaration:ur,addInitializationStatement:Gr,startBlockScope:Br,endBlockScope:mn,addBlockScopedVariable:jn,requestEmitHelper:Zi,readEmitHelpers:Ns,enableSubstitution:Ke,enableEmitNotification:Gt,isSubstitutionEnabled:Pt,isEmitNotificationEnabled:nt,get onSubstituteNode(){return Ye},set onSubstituteNode(si){pe.assert(ot<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Ye=si},get onEmitNode(){return Tt},set onEmitNode(si){pe.assert(ot<1,"Cannot modify transformation hooks after initialization has completed."),pe.assert(si!==void 0,"Value must not be 'undefined'"),Tt=si},addDiagnostic(si){Qe.push(si)}};for(let si of h)Ku(ms($l(si)));Mc("beforeTransform");let ht=_.map(si=>si(mt)),_t=si=>{for(let ks of ht)si=ks(si);return si};ot=1;let Rt=[];for(let si of h)(R=ki)==null||R.push(ki.Phase.Emit,"transformNodes",si.kind===308?{path:si.path}:{kind:si.kind,pos:si.pos,end:si.end}),Rt.push((S?_t:Lt)(si)),(T=ki)==null||T.pop();return ot=2,Mc("afterTransform"),Pf("transformTime","beforeTransform","afterTransform"),{transformed:Rt,substituteNode:_r,emitNodeWithNotification:Dt,isEmitNotificationEnabled:nt,dispose:An,diagnostics:Qe};function Lt(si){return si&&(!ll(si)||!si.isDeclarationFile)?_t(si):si}function Ke(si){pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),W[si]|=1}function Pt(si){return(W[si.kind]&1)!==0&&(tA(si)&8)===0}function _r(si,ks){return pe.assert(ot<3,"Cannot substitute a node after the result is disposed."),ks&&Pt(ks)&&Ye(si,ks)||ks}function Gt(si){pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),W[si]|=2}function nt(si){return(W[si.kind]&2)!==0||(tA(si)&4)!==0}function Dt(si,ks,Ic){pe.assert(ot<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),ks&&(nt(ks)?Tt(si,ks,Ic):Ic(si,ks))}function tr(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed.");let ks=ti(g.createVariableDeclaration(si),128);V?V.push(ks):V=[ks],re&1&&(re|=2)}function ur(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),M?M.push(si):M=[si]}function Gr(si){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),ti(si,2097152),ee?ee.push(si):ee=[si]}function dt(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended."),ge[Ne]=V,Ie[Ne]=M,_e[Ne]=ee,Ee[Ne]=re,Ne++,V=void 0,M=void 0,ee=void 0,re=0}function pr(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is already suspended."),Te=!0}function st(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(Te,"Lexical environment is not suspended."),Te=!1}function ir(){pe.assert(ot>0,"Cannot modify the lexical environment during initialization."),pe.assert(ot<2,"Cannot modify the lexical environment after transformation has completed."),pe.assert(!Te,"Lexical environment is suspended.");let si;if(V||M||ee){if(M&&(si=[...M]),V){let ks=g.createVariableStatement(void 0,g.createVariableDeclarationList(V));ti(ks,2097152),si?si.push(ks):si=[ks]}ee&&(si?si=[...si,...ee]:si=[...ee])}return Ne--,V=ge[Ne],M=Ie[Ne],ee=_e[Ne],re=Ee[Ne],Ne===0&&(ge=[],Ie=[],_e=[],Ee=[]),si}function zt(si,ks){re=ks?re|si:re&~si}function Ht(){return re}function Br(){pe.assert(ot>0,"Cannot start a block scope during initialization."),pe.assert(ot<2,"Cannot start a block scope after transformation has completed."),Ze[We]=Ue,We++,Ue=void 0}function mn(){pe.assert(ot>0,"Cannot end a block scope during initialization."),pe.assert(ot<2,"Cannot end a block scope after transformation has completed.");let si=jt(Ue)?[g.createVariableStatement(void 0,g.createVariableDeclarationList(Ue.map(ks=>g.createVariableDeclaration(ks)),1))]:void 0;return We--,Ue=Ze[We],We===0&&(Ze=[]),si}function jn(si){pe.assert(We>0,"Cannot add a block scoped variable outside of an iteration body."),(Ue||(Ue=[])).push(si)}function Zi(si){if(pe.assert(ot>0,"Cannot modify the transformation context during initialization."),pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed."),pe.assert(!si.scoped,"Cannot request a scoped emit helper."),si.dependencies)for(let ks of si.dependencies)Zi(ks);$e=Ft($e,si)}function Ns(){pe.assert(ot>0,"Cannot modify the transformation context during initialization."),pe.assert(ot<2,"Cannot modify the transformation context after transformation has completed.");let si=$e;return $e=void 0,si}function An(){if(ot<3){for(let si of h)Ku(ms($l(si)));V=void 0,ge=void 0,M=void 0,Ie=void 0,Ye=void 0,Tt=void 0,$e=void 0,ot=3}}}var OEe={factory:me,getCompilerOptions:()=>({}),getEmitResolver:il,getEmitHost:il,getEmitHelperFactory:il,startLexicalEnvironment:Dc,resumeLexicalEnvironment:Dc,suspendLexicalEnvironment:Dc,endLexicalEnvironment:cm,setLexicalEnvironmentFlags:Dc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:Dc,hoistFunctionDeclaration:Dc,addInitializationStatement:Dc,startBlockScope:Dc,endBlockScope:cm,addBlockScopedVariable:Dc,requestEmitHelper:Dc,readEmitHelpers:il,enableSubstitution:Dc,enableEmitNotification:Dc,isSubstitutionEnabled:il,isEmitNotificationEnabled:il,onSubstituteNode:Nde,onEmitNode:PEe,addDiagnostic:Dc},Qtn=UBs();function l3t(s){return aA(s,".tsbuildinfo")}function Jet(s,c,g,d=!1,h,_){let S=Ki(g)?g:aAe(s,g,d),R=s.getCompilerOptions();if(!h)if(R.outFile){if(S.length){let T=me.createBundle(S),W=c(Dde(T,s,d),T);if(W)return W}}else for(let T of S){let W=c(Dde(T,s,d),T);if(W)return W}if(_){let T=U3(R);if(T)return c({buildInfoPath:T},void 0)}}function U3(s){let c=s.configFilePath;if(!JBs(s))return;if(s.tsBuildInfoFile)return s.tsBuildInfoFile;let g=s.outFile,d;if(g)d=s0(g);else{if(!c)return;let h=s0(c);d=s.outDir?s.rootDir?AE(s.outDir,mp(s.rootDir,h,!0)):Ro(s.outDir,gp(h)):h}return d+".tsbuildinfo"}function JBs(s){return DP(s)||!!s.tscBuild}function u3t(s,c){let g=s.outFile,d=s.emitDeclarationOnly?void 0:g,h=d&&Xtn(d,s),_=c||Ly(s)?s0(g)+".d.ts":void 0,S=_&&BAe(s)?_+".map":void 0;return{jsFilePath:d,sourceMapFilePath:h,declarationFilePath:_,declarationMapPath:S}}function Dde(s,c,g){let d=c.getCompilerOptions();if(s.kind===309)return u3t(d,g);{let h=TZe(s.fileName,c,MEe(s.fileName,d)),_=Zu(s),S=_&&qf(s.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||S?void 0:h,T=!R||Zu(s)?void 0:Xtn(R,d),W=g||Ly(d)&&!_?RZe(s.fileName,c):void 0,V=W&&BAe(d)?W+".map":void 0;return{jsFilePath:R,sourceMapFilePath:T,declarationFilePath:W,declarationMapPath:V}}}function Xtn(s,c){return c.sourceMap&&!c.inlineSourceMap?s+".map":void 0}function MEe(s,c){return aA(s,".json")?".json":c.jsx===1&&fu(s,[".jsx",".tsx"])?".jsx":fu(s,[".mts",".mjs"])?".mjs":fu(s,[".cts",".cjs"])?".cjs":".js"}function Jtn(s,c,g,d){return g?AE(g,mp(d(),s,c)):s}function kde(s,c,g,d=()=>RU(c,g)){return Uet(s,c.options,g,d)}function Uet(s,c,g,d){return fN(Jtn(s,g,c.declarationDir||c.outDir,d),sAe(s))}function Utn(s,c,g,d=()=>RU(c,g)){if(c.options.emitDeclarationOnly)return;let h=aA(s,".json"),_=Ket(s,c.options,g,d);return!h||qf(s,_,pe.checkDefined(c.options.configFilePath),g)!==0?_:void 0}function Ket(s,c,g,d){return fN(Jtn(s,g,c.outDir,d),MEe(s,c))}function Ktn(){let s;return{addOutput:c,getOutputs:g};function c(d){d&&(s||(s=[])).push(d)}function g(){return s||E}}function jtn(s,c){let{jsFilePath:g,sourceMapFilePath:d,declarationFilePath:h,declarationMapPath:_}=u3t(s.options,!1);c(g),c(d),c(h),c(_)}function ztn(s,c,g,d,h){if(PC(c))return;let _=Utn(c,s,g,h);if(d(_),!aA(c,".json")&&(_&&s.options.sourceMap&&d(`${_}.map`),Ly(s.options))){let S=kde(c,s,g,h);d(S),s.options.declarationMap&&d(`${S}.map`)}}function xde(s,c,g,d,h){let _;return s.rootDir?(_=Xc(s.rootDir,g),h?.(s.rootDir)):s.composite&&s.configFilePath?(_=Mo(Dp(s.configFilePath)),h?.(_)):_=m3t(c(),g,d),_&&_[_.length-1]!==ag&&(_+=ag),_}function RU({options:s,fileNames:c},g){return xde(s,()=>Me(c,d=>!(s.noEmitForJsFiles&&fu(d,uU))&&!PC(d)),Mo(Dp(pe.checkDefined(s.configFilePath))),_d(!g))}function K9e(s,c){let{addOutput:g,getOutputs:d}=Ktn();if(s.options.outFile)jtn(s,g);else{let h=FA(()=>RU(s,c));for(let _ of s.fileNames)ztn(s,_,c,g,h)}return g(U3(s.options)),d()}function qtn(s,c,g){c=iu(c),pe.assert(k(s.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:h}=Ktn();return s.options.outFile?jtn(s,d):ztn(s,c,g,d),h()}function jet(s,c){if(s.options.outFile){let{jsFilePath:h,declarationFilePath:_}=u3t(s.options,!1);return pe.checkDefined(h||_,`project ${s.options.configFilePath} expected to have at least one output`)}let g=FA(()=>RU(s,c));for(let h of s.fileNames){if(PC(h))continue;let _=Utn(h,s,c,g);if(_)return _;if(!aA(h,".json")&&Ly(s.options))return kde(h,s,c,g)}let d=U3(s.options);return d||pe.fail(`project ${s.options.configFilePath} expected to have at least one output`)}function zet(s,c){return!!c&&!!s}function qet(s,c,g,{scriptTransformers:d,declarationTransformers:h},_,S,R,T){var W=c.getCompilerOptions(),V=W.sourceMap||W.inlineSourceMap||BAe(W)?[]:void 0,M=W.listEmittedFiles?[]:void 0,ee=EF(),re=uN(W),ge=Bne(re),{enter:Ie,exit:_e}=U_("printTime","beforePrint","afterPrint"),Ee=!1;return Ie(),Jet(c,Ne,aAe(c,g,R),R,S,!g&&!T),_e(),{emitSkipped:Ee,diagnostics:ee.getDiagnostics(),emittedFiles:M,sourceMaps:V};function Ne({jsFilePath:ht,sourceMapFilePath:_t,declarationFilePath:Rt,declarationMapPath:Lt,buildInfoPath:Ke},Pt){var _r,Gt,nt,Dt,tr,ur;(_r=ki)==null||_r.push(ki.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:ht}),Ze(Pt,ht,_t),(Gt=ki)==null||Gt.pop(),(nt=ki)==null||nt.push(ki.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:Rt}),We(Pt,Rt,Lt),(Dt=ki)==null||Dt.pop(),(tr=ki)==null||tr.push(ki.Phase.Emit,"emitBuildInfo",{buildInfoPath:Ke}),Te(Ke),(ur=ki)==null||ur.pop()}function Te(ht){if(!ht||g)return;if(c.isEmitBlocked(ht)){Ee=!0;return}let _t=c.getBuildInfo()||{version:C};lAe(c,ee,ht,g3t(_t),!1,void 0,{buildInfo:_t}),M?.push(ht)}function Ze(ht,_t,Rt){if(!ht||_||!_t)return;if(c.isEmitBlocked(_t)||W.noEmit){Ee=!0;return}(ll(ht)?[ht]:Me(ht.sourceFiles,Jge)).forEach(_r=>{(W.noCheck||!gU(_r,W))&&$e(_r)});let Lt=WEe(s,c,me,W,[ht],d,!1),Ke={removeComments:W.removeComments,newLine:W.newLine,noEmitHelpers:W.noEmitHelpers,module:i0(W),moduleResolution:k_(W),target:Mg(W),sourceMap:W.sourceMap,inlineSourceMap:W.inlineSourceMap,inlineSources:W.inlineSources,extendedDiagnostics:W.extendedDiagnostics},Pt=MP(Ke,{hasGlobalName:s.hasGlobalName,onEmitNode:Lt.emitNodeWithNotification,isEmitNotificationEnabled:Lt.isEmitNotificationEnabled,substituteNode:Lt.substituteNode});pe.assert(Lt.transformed.length===1,"Should only see one output from the transform"),Ye(_t,Rt,Lt,Pt,W),Lt.dispose(),M&&(M.push(_t),Rt&&M.push(Rt))}function We(ht,_t,Rt){if(!ht||_===0)return;if(!_t){(_||W.emitDeclarationOnly)&&(Ee=!0);return}let Lt=ll(ht)?[ht]:ht.sourceFiles,Ke=R?Lt:Me(Lt,Jge),Pt=W.outFile?[me.createBundle(Ke)]:Ke;Ke.forEach(nt=>{(_&&!Ly(W)||W.noCheck||zet(_,R)||!gU(nt,W))&&Ue(nt)});let _r=WEe(s,c,me,W,Pt,h,!1);if(B(_r.diagnostics))for(let nt of _r.diagnostics)ee.add(nt);let Gt=!!_r.diagnostics&&!!_r.diagnostics.length||!!c.isEmitBlocked(_t)||!!W.noEmit;if(Ee=Ee||Gt,!Gt||R){pe.assert(_r.transformed.length===1,"Should only see one output from the decl transform");let nt={removeComments:W.removeComments,newLine:W.newLine,noEmitHelpers:!0,module:W.module,moduleResolution:W.moduleResolution,target:W.target,sourceMap:_!==2&&W.declarationMap,inlineSourceMap:W.inlineSourceMap,extendedDiagnostics:W.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},Dt=MP(nt,{hasGlobalName:s.hasGlobalName,onEmitNode:_r.emitNodeWithNotification,isEmitNotificationEnabled:_r.isEmitNotificationEnabled,substituteNode:_r.substituteNode}),tr=Ye(_t,Rt,_r,Dt,{sourceMap:nt.sourceMap,sourceRoot:W.sourceRoot,mapRoot:W.mapRoot,extendedDiagnostics:W.extendedDiagnostics});M&&(tr&&M.push(_t),Rt&&M.push(Rt))}_r.dispose()}function Ue(ht){if(Cf(ht)){ht.expression.kind===80&&s.collectLinkedAliases(ht.expression,!0);return}else if(R0(ht)){s.collectLinkedAliases(ht.propertyName||ht.name,!0);return}Lu(ht,Ue)}function $e(ht){n0(ht)||Sz(ht,_t=>{if(km(_t)&&!(Nx(_t)&32)||Mf(_t))return"skip";s.markLinkedReferences(_t)})}function Ye(ht,_t,Rt,Lt,Ke){let Pt=Rt.transformed[0],_r=Pt.kind===309?Pt:void 0,Gt=Pt.kind===308?Pt:void 0,nt=_r?_r.sourceFiles:[Gt],Dt;Tt(Ke,Pt)&&(Dt=yOt(c,gp(Dp(ht)),ot(Ke),Qe(Ke,ht,Gt),Ke)),_r?Lt.writeBundle(_r,ge,Dt):Lt.writeFile(Gt,ge,Dt);let tr;if(Dt){V&&V.push({inputSourceFileNames:Dt.getSources(),sourceMap:Dt.toJSON()});let dt=mt(Ke,Dt,ht,_t,Gt);if(dt&&(ge.isAtStartOfLine()||ge.rawWrite(re),tr=ge.getTextPos(),ge.writeComment(`//# sourceMappingURL=${dt}`)),_t){let pr=Dt.toString();lAe(c,ee,_t,pr,!1,nt)}}else ge.writeLine();let ur=ge.getText(),Gr={sourceMapUrlPos:tr,diagnostics:Rt.diagnostics};return lAe(c,ee,ht,ur,!!W.emitBOM,nt,Gr),ge.clear(),!Gr.skippedDtsWrite}function Tt(ht,_t){return(ht.sourceMap||ht.inlineSourceMap)&&(_t.kind!==308||!aA(_t.fileName,".json"))}function ot(ht){let _t=Dp(ht.sourceRoot||"");return _t&&hp(_t)}function Qe(ht,_t,Rt){if(ht.sourceRoot)return c.getCommonSourceDirectory();if(ht.mapRoot){let Lt=Dp(ht.mapRoot);return Rt&&(Lt=Mo(cAe(Rt.fileName,c,Lt))),Wf(Lt)===0&&(Lt=Ro(c.getCommonSourceDirectory(),Lt)),Lt}return Mo(iu(_t))}function mt(ht,_t,Rt,Lt,Ke){if(ht.inlineSourceMap){let _r=_t.toString();return`data:application/json;base64,${ibe(yd,_r)}`}let Pt=gp(Dp(pe.checkDefined(Lt)));if(ht.mapRoot){let _r=Dp(ht.mapRoot);return Ke&&(_r=Mo(cAe(Ke.fileName,c,_r))),Wf(_r)===0?(_r=Ro(c.getCommonSourceDirectory(),_r),encodeURI(Of(Mo(iu(Rt)),Ro(_r,Pt),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(Ro(_r,Pt))}return encodeURI(Pt)}}function g3t(s){return JSON.stringify(s)}function $et(s,c){return sbe(s,c)}var A3t={hasGlobalName:il,getReferencedExportContainer:il,getReferencedImportDeclaration:il,getReferencedDeclarationWithCollidingName:il,isDeclarationWithCollidingName:il,isValueAliasDeclaration:il,isReferencedAliasDeclaration:il,isTopLevelValueImportEqualsWithEntityName:il,hasNodeCheckFlag:il,isDeclarationVisible:il,isLateBound:s=>!1,collectLinkedAliases:il,markLinkedReferences:il,isImplementationOfOverload:il,requiresAddingImplicitUndefined:il,isExpandoFunctionDeclaration:il,getPropertiesOfContainerFunction:il,createTypeOfDeclaration:il,createReturnTypeOfSignatureDeclaration:il,createTypeOfExpression:il,createLiteralConstValue:il,isSymbolAccessible:il,isEntityNameVisible:il,getConstantValue:il,getEnumMemberValue:il,getReferencedValueDeclaration:il,getReferencedValueDeclarations:il,getTypeReferenceSerializationKind:il,isOptionalParameter:il,isArgumentsLocalBinding:il,getExternalModuleFileFromDeclaration:il,isLiteralConstDeclaration:il,getJsxFactoryEntity:il,getJsxFragmentFactoryEntity:il,isBindingCapturedByNode:il,getDeclarationStatementsForSourceFile:il,isImportRequiredByAugmentation:il,isDefinitelyReferenceToGlobalSymbolObject:il,createLateBoundIndexSignatures:il,symbolToDeclarations:il},d3t=FA(()=>MP({})),gQ=FA(()=>MP({removeComments:!0})),p3t=FA(()=>MP({removeComments:!0,neverAsciiEscape:!0})),ett=FA(()=>MP({removeComments:!0,omitTrailingSemicolon:!0}));function MP(s={},c={}){var{hasGlobalName:g,onEmitNode:d=PEe,isEmitNotificationEnabled:h,substituteNode:_=Nde,onBeforeEmitNode:S,onAfterEmitNode:R,onBeforeEmitNodeArray:T,onAfterEmitNodeArray:W,onBeforeEmitToken:V,onAfterEmitToken:M}=c,ee=!!s.extendedDiagnostics,re=!!s.omitBraceSourceMapPositions,ge=uN(s),Ie=i0(s),_e=new Map,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt,ot,Qe,mt,ht,_t,Rt,Lt=s.preserveSourceNewlines,Ke,Pt,_r,Gt=Ise,nt,Dt=!0,tr,ur,Gr=-1,dt,pr=-1,st=-1,ir=-1,zt=-1,Ht,Br,mn=!1,jn=!!s.removeComments,Zi,Ns,{enter:An,exit:si}=Y2(ee,"commentTime","beforeComment","afterComment"),ks=me.parenthesizer,Ic={select:Ae=>Ae===0?ks.parenthesizeLeadingTypeArgument:void 0},su=hm();return Qu(),{printNode:Zn,printList:ya,printFile:ba,printBundle:Gl,writeNode:Wo,writeList:hc,writeFile:hn,writeBundle:yr};function Zn(Ae,Et,fn){switch(Ae){case 0:pe.assert(ll(Et),"Expected a SourceFile node.");break;case 2:pe.assert(Ir(Et),"Expected an Identifier node.");break;case 1:pe.assert(un(Et),"Expected an Expression node.");break}switch(Et.kind){case 308:return ba(Et);case 309:return Gl(Et)}return Wo(Ae,Et,fn,Oi()),lo()}function ya(Ae,Et,fn){return hc(Ae,Et,fn,Oi()),lo()}function Gl(Ae){return yr(Ae,Oi(),void 0),lo()}function ba(Ae){return hn(Ae,Oi(),void 0),lo()}function Wo(Ae,Et,fn,qi){let ic=Pt;tl(qi,void 0),pa(Ae,Et,fn),Qu(),Pt=ic}function hc(Ae,Et,fn,qi){let ic=Pt;tl(qi,void 0),fn&&Oa(fn),fa(void 0,Et,Ae),Qu(),Pt=ic}function yr(Ae,Et,fn){nt=!1;let qi=Pt;tl(Et,fn),u9(Ae),Hw(Ae),bn(Ae),Cpe(Ae);for(let ic of Ae.sourceFiles)pa(0,ic,ic);Qu(),Pt=qi}function hn(Ae,Et,fn){nt=!0;let qi=Pt;tl(Et,fn),u9(Ae),Hw(Ae),pa(0,Ae,Ae),Qu(),Pt=qi}function Oi(){return _r||(_r=Bne(ge))}function lo(){let Ae=_r.getText();return _r.clear(),Ae}function pa(Ae,Et,fn){fn&&Oa(fn),it(Ae,Et,void 0)}function Oa(Ae){Ee=Ae,Ht=void 0,Br=void 0,Ae&&kQ(Ae)}function tl(Ae,Et){Ae&&s.omitTrailingSemicolon&&(Ae=Oye(Ae)),Pt=Ae,tr=Et,Dt=!Pt||!tr}function Qu(){Ne=[],Te=[],Ze=[],We=new Set,Ue=[],$e=new Map,Ye=[],Tt=0,ot=[],Qe=0,mt=[],ht=void 0,_t=[],Rt=void 0,Ee=void 0,Ht=void 0,Br=void 0,tl(void 0,void 0)}function Tg(){return Ht||(Ht=rn(pe.checkDefined(Ee)))}function Cs(Ae,Et){Ae!==void 0&&it(4,Ae,Et)}function Tu(Ae){Ae!==void 0&&it(2,Ae,void 0)}function Pr(Ae,Et){Ae!==void 0&&it(1,Ae,Et)}function Pn(Ae){it(Zg(Ae)?6:4,Ae)}function pt(Ae){Lt&&g1(Ae)&4&&(Lt=!1)}function on(Ae){Lt=Ae}function it(Ae,Et,fn){Ns=fn,Kr(0,Ae,Et)(Ae,Et),Ns=void 0}function nr(Ae){return!jn&&!ll(Ae)}function Fr(Ae){return!Dt&&!ll(Ae)&&!Xge(Ae)}function Kr(Ae,Et,fn){switch(Ae){case 0:if(d!==PEe&&(!h||h(fn)))return hr;case 1:if(_!==Nde&&(Zi=_(Et,fn)||fn)!==fn)return Ns&&(Zi=Ns(Zi)),nn;case 2:if(nr(fn))return NQ;case 3:if(Fr(fn))return sK;case 4:return En;default:return pe.assertNever(Ae)}}function Dn(Ae,Et,fn){return Kr(Ae+1,Et,fn)}function hr(Ae,Et){let fn=Dn(0,Ae,Et);d(Ae,Et,fn)}function En(Ae,Et){if(S?.(Et),Lt){let fn=Lt;pt(Et),Ni(Ae,Et),on(fn)}else Ni(Ae,Et);R?.(Et),Ns=void 0}function Ni(Ae,Et,fn=!0){if(fn){let qi=zbe(Et);if(qi)return Bt(Ae,Et,qi)}if(Ae===0)return d5(Ma(Et,ll));if(Ae===2)return Je(Ma(Et,Ir));if(Ae===6)return cn(Ma(Et,Zg),!0);if(Ae===3)return Gi(Ma(Et,Ds));if(Ae===7)return GN(Ma(Et,CU));if(Ae===5)return pe.assertNode(Et,u$e),oR(!0);if(Ae===4){switch(Et.kind){case 16:case 17:case 18:return cn(Et,!1);case 80:return Je(Et);case 81:return In(Et);case 167:return Hn(Et);case 168:return $r(Et);case 169:return ri(Et);case 170:return ao(Et);case 171:return Bs(Et);case 172:return Ys(Et);case 173:return tn(Et);case 174:return wn(Et);case 175:return Mn(Et);case 176:return ci(Et);case 177:return es(Et);case 178:case 179:return Wi(Et);case 180:return Vn(Et);case 181:return Ui(Et);case 182:return gs(Et);case 183:return mc(Et);case 184:return gg(Et);case 185:return Ag(Et);case 186:return tm(Et);case 187:return jp(Et);case 188:return Xg(Et);case 189:return sh(Et);case 190:return gu(Et);case 191:return KA(Et);case 193:return TA(Et);case 194:return oi(Et);case 195:return $d(Et);case 196:return YI(Et);case 197:return Fh(Et);case 234:return OC(Et);case 198:return WC();case 199:return _f(Et);case 200:return QI(Et);case 201:return ve(Et);case 202:return mr(Et);case 203:return bg(Et);case 204:return ln(Et);case 205:return fs(Et);case 206:return ni(Et);case 207:return Ls(Et);case 208:return Za(Et);case 209:return Go(Et);case 240:return Wx(Et);case 241:return bi();case 242:return Ox(Et);case 244:return qm(Et);case 243:return oR(!1);case 245:return pS(Et);case 246:return xN(Et);case 247:return en(Et);case 248:return gi(Et);case 249:return _i(Et);case 250:return ys(Et);case 251:return $s(Et);case 252:return pc(Et);case 253:return ul(Et);case 254:return eg(Et);case 255:return jl(Et);case 256:return Eu(Et);case 257:return Df(Et);case 258:return Jg(Et);case 259:return MC(Et);case 260:return S1(Et);case 261:return fS(Et);case 262:return bv(Et);case 263:return XF(Et);case 264:return is(Et);case 265:return Oo(Et);case 266:return Os(Et);case 267:return co(Et);case 268:return Yc(Et);case 269:return tu(Et);case 270:return $a(Et);case 271:return ak(Et);case 272:return ru(Et);case 273:return kf(Et);case 274:return Wb(Et);case 275:return OB(Et);case 281:return gse(Et);case 276:return p_(Et);case 277:return MB(Et);case 278:return v1(Et);case 279:return s5(Et);case 280:return hpe(Et);case 282:return Ase(Et);case 301:return ok(Et);case 302:return o5(Et);case 283:return;case 284:return WU(Et);case 12:return MU(Et);case 287:case 290:return mpe(Et);case 288:case 291:return $z(Et);case 292:return dse(Et);case 293:return c5(Et);case 294:return HU(Et);case 295:return tq(Et);case 296:return rq(Et);case 297:return jP(Et);case 298:return c9(Et);case 299:return UF(Et);case 300:return KF(Et);case 304:return zP(Et);case 305:return l5(Et);case 306:return YU(Et);case 307:return u5(Et);case 308:return d5(Et);case 309:return pe.fail("Bundles should be printed using printBundle");case 310:return A5(Et);case 311:return zF(Et);case 313:return qo("*");case 314:return qo("?");case 315:return pp(Et);case 316:return Dl(Et);case 317:return yu(Et);case 318:return AI(Et);case 192:case 319:return dS(Et);case 320:return;case 321:return PA(Et);case 323:return Ay(Et);case 324:return lk(Et);case 328:case 333:case 338:return g5(Et);case 329:case 330:return ck(Et);case 331:case 332:return;case 334:case 335:case 336:case 337:return;case 339:return Ob(Et);case 340:return u0(Et);case 342:case 349:return Hy(Et);case 341:case 343:case 344:case 345:case 350:case 351:return QU(Et);case 346:return bf(Et);case 347:return l0(Et);case 348:return pse(Et);case 352:return jF(Et);case 354:case 355:return}if(un(Et)&&(Ae=1,_!==Nde)){let qi=_(Ae,Et)||Et;qi!==Et&&(Et=qi,Ns&&(Et=Ns(Et)))}}if(Ae===1)switch(Et.kind){case 9:case 10:return Mt(Et);case 11:case 14:case 15:return cn(Et,!1);case 80:return Je(Et);case 81:return In(Et);case 210:return Ss(Et);case 211:return Uc(Et);case 212:return rl(Et);case 213:return Lg(Et);case 214:return yf(Et);case 215:return rm(Et);case 216:return _h(Et);case 217:return Gp(Et);case 218:return oh(Et);case 219:return b1(Et);case 220:return Z_(Et);case 221:return or(Et);case 222:return qn(Et);case 223:return Js(Et);case 224:return Hl(Et);case 225:return RA(Et);case 226:return uA(Et);case 227:return su(Et);case 228:return af(Et);case 229:return dI(Et);case 230:return XI(Et);case 231:return C2(Et);case 232:return d_(Et);case 233:return;case 235:return E1(Et);case 236:return gy(Et);case 234:return OC(Et);case 239:return yv(Et);case 237:return ik(Et);case 238:return pe.fail("SyntheticExpression should never be printed.");case 283:return;case 285:return a9(Et);case 286:return OU(Et);case 289:return qz(Et);case 353:return pe.fail("SyntaxList should not be printed");case 354:return;case 356:return Sr(Et);case 357:return XU(Et);case 358:return pe.fail("SyntheticReferenceExpression should not be printed")}if(v0(Et.kind))return jU(Et,hu);if(q6(Et.kind))return jU(Et,qo);pe.fail(`Unhandled SyntaxKind: ${pe.formatSyntaxKind(Et.kind)}.`)}function Gi(Ae){Cs(Ae.name),Fo(),hu("in"),Fo(),Cs(Ae.constraint)}function nn(Ae,Et){let fn=Dn(1,Ae,Et);pe.assertIsDefined(Zi),Et=Zi,Zi=void 0,fn(Ae,Et)}function bn(Ae){let Et=!1,fn=Ae.kind===309?Ae:void 0;if(fn&&Ie===0)return;let qi=fn?fn.sourceFiles.length:1;for(let ic=0;ic")}function wI(Ae){Fo(),Cs(Ae.type)}function AI(Ae){hu("function"),f5(Ae,Ae.parameters),qo(":"),Cs(Ae.type)}function pp(Ae){qo("?"),Cs(Ae.type)}function Dl(Ae){qo("!"),Cs(Ae.type)}function yu(Ae){Cs(Ae.type),qo("=")}function tm(Ae){cR(Ae,Ae.modifiers),hu("new"),Fo(),My(Ae,_u,wI)}function jp(Ae){hu("typeof"),Fo(),Cs(Ae.exprName),Ev(Ae,Ae.typeArguments)}function Xg(Ae){Qw(Ae),F(Ae.members,RQ),qo("{");let Et=tA(Ae)&1?768:32897;fa(Ae,Ae.members,Et|524288),qo("}"),tZ(Ae)}function sh(Ae){Cs(Ae.elementType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),qo("]")}function dS(Ae){qo("..."),Cs(Ae.type)}function gu(Ae){Fe(23,Ae.pos,qo,Ae);let Et=tA(Ae)&1?528:657;fa(Ae,Ae.elements,Et|524288,ks.parenthesizeElementTypeOfTupleType),Fe(24,Ae.elements.end,qo,Ae)}function bg(Ae){Cs(Ae.dotDotDotToken),Cs(Ae.name),Cs(Ae.questionToken),Fe(59,Ae.name.end,qo,Ae),Fo(),Cs(Ae.type)}function KA(Ae){Cs(Ae.type,ks.parenthesizeTypeOfOptionalType),qo("?")}function TA(Ae){fa(Ae,Ae.types,516,ks.parenthesizeConstituentTypeOfUnionType)}function oi(Ae){fa(Ae,Ae.types,520,ks.parenthesizeConstituentTypeOfIntersectionType)}function $d(Ae){Cs(Ae.checkType,ks.parenthesizeCheckTypeOfConditionalType),Fo(),hu("extends"),Fo(),Cs(Ae.extendsType,ks.parenthesizeExtendsTypeOfConditionalType),Fo(),qo("?"),Fo(),Cs(Ae.trueType),Fo(),qo(":"),Fo(),Cs(Ae.falseType)}function YI(Ae){hu("infer"),Fo(),Cs(Ae.typeParameter)}function Fh(Ae){qo("("),Cs(Ae.type),qo(")")}function WC(){hu("this")}function _f(Ae){tW(Ae.operator,hu),Fo();let Et=Ae.operator===148?ks.parenthesizeOperandOfReadonlyTypeOperator:ks.parenthesizeOperandOfTypeOperator;Cs(Ae.type,Et)}function QI(Ae){Cs(Ae.objectType,ks.parenthesizeNonArrayTypeOfPostfixType),qo("["),Cs(Ae.indexType),qo("]")}function ve(Ae){let Et=tA(Ae);qo("{"),Et&1?Fo():(G0(),uk()),Ae.readonlyToken&&(Cs(Ae.readonlyToken),Ae.readonlyToken.kind!==148&&hu("readonly"),Fo()),qo("["),it(3,Ae.typeParameter),Ae.nameType&&(Fo(),hu("as"),Fo(),Cs(Ae.nameType)),qo("]"),Ae.questionToken&&(Cs(Ae.questionToken),Ae.questionToken.kind!==58&&qo("?")),qo(":"),Fo(),Cs(Ae.type),py(),Et&1?Fo():(G0(),lR()),fa(Ae,Ae.members,2),qo("}")}function mr(Ae){Pr(Ae.literal)}function ln(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function ni(Ae){Ae.isTypeOf&&(hu("typeof"),Fo()),hu("import"),qo("("),Cs(Ae.argument),Ae.attributes&&(qo(","),Fo(),it(7,Ae.attributes)),qo(")"),Ae.qualifier&&(qo("."),Cs(Ae.qualifier)),Ev(Ae,Ae.typeArguments)}function Ls(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function Za(Ae){qo("["),fa(Ae,Ae.elements,524880),qo("]")}function Go(Ae){Cs(Ae.dotDotDotToken),Ae.propertyName&&(Cs(Ae.propertyName),qo(":"),Fo()),Cs(Ae.name),p5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function Ss(Ae){let Et=Ae.elements,fn=Ae.multiLine?65536:0;sa(Ae,Et,8914|fn,ks.parenthesizeExpressionForDisallowedComma)}function Uc(Ae){Qw(Ae),F(Ae.properties,RQ);let Et=tA(Ae)&131072;Et&&uk();let fn=Ae.multiLine?65536:0,qi=Ee&&Ee.languageVersion>=1&&!Zu(Ee)?64:0;fa(Ae,Ae.properties,526226|qi|fn),Et&&lR(),tZ(Ae)}function rl(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess);let Et=Ae.questionDotToken||TB(me.createToken(25),Ae.expression.end,Ae.name.pos),fn=ZN(Ae,Ae.expression,Et),qi=ZN(Ae,Et,Ae.name);Sv(fn,!1),Et.kind!==29&&xd(Ae.expression)&&!Pt.hasTrailingComment()&&!Pt.hasTrailingWhitespace()&&qo("."),Ae.questionDotToken?Cs(Et):Fe(Et.kind,Ae.expression.end,qo,Ae),Sv(qi,!1),Cs(Ae.name),Mb(fn,qi)}function xd(Ae){if(Ae=o2(Ae),mC(Ae)){let Et=iW(Ae,void 0,!0,!1);return!(Ae.numericLiteralFlags&448)&&!Et.includes(Vi(25))&&!Et.includes("E")&&!Et.includes("e")}else if(_p(Ae)){let Et=ZLe(Ae);return typeof Et=="number"&&isFinite(Et)&&Et>=0&&Math.floor(Et)===Et}}function Lg(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Cs(Ae.questionDotToken),Fe(23,Ae.expression.end,qo,Ae),Pr(Ae.argumentExpression),Fe(24,Ae.argumentExpression.end,qo,Ae)}function yf(Ae){let Et=g1(Ae)&16;Et&&(qo("("),$F("0"),qo(","),Fo()),Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Et&&qo(")"),Cs(Ae.questionDotToken),Ev(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,2576,ks.parenthesizeExpressionForDisallowedComma)}function rm(Ae){Fe(105,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeExpressionOfNew),Ev(Ae,Ae.typeArguments),sa(Ae,Ae.arguments,18960,ks.parenthesizeExpressionForDisallowedComma)}function _h(Ae){let Et=g1(Ae)&16;Et&&(qo("("),$F("0"),qo(","),Fo()),Pr(Ae.tag,ks.parenthesizeLeftSideOfAccess),Et&&qo(")"),Ev(Ae,Ae.typeArguments),Fo(),Pr(Ae.template)}function Gp(Ae){qo("<"),Cs(Ae.type),qo(">"),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function oh(Ae){let Et=Fe(21,Ae.pos,qo,Ae),fn=rW(Ae.expression,Ae);Pr(Ae.expression,void 0),sq(Ae.expression,Ae),Mb(fn),Fe(22,Ae.expression?Ae.expression.end:Et,qo,Ae)}function b1(Ae){Xx(Ae.name),o9(Ae)}function Z_(Ae){cR(Ae,Ae.modifiers),My(Ae,m2,Vb)}function m2(Ae){Yx(Ae,Ae.typeParameters),FN(Ae,Ae.parameters),YB(Ae.type),Fo(),Cs(Ae.equalsGreaterThanToken)}function Vb(Ae){$u(Ae.body)?br(Ae.body):(Fo(),Pr(Ae.body,ks.parenthesizeConciseBodyOfArrowFunction))}function or(Ae){Fe(91,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function qn(Ae){Fe(114,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Js(Ae){Fe(116,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function Hl(Ae){Fe(135,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeOperandOfPrefixUnary)}function RA(Ae){tW(Ae.operator,vE),NA(Ae)&&Fo(),Pr(Ae.operand,ks.parenthesizeOperandOfPrefixUnary)}function NA(Ae){let Et=Ae.operand;return Et.kind===225&&(Ae.operator===40&&(Et.operator===40||Et.operator===46)||Ae.operator===41&&(Et.operator===41||Et.operator===47))}function uA(Ae){Pr(Ae.operand,ks.parenthesizeOperandOfPostfixUnary),tW(Ae.operator,vE)}function hm(){return c9e(Ae,Et,fn,qi,ic,void 0);function Ae(zl,Vc){if(Vc){Vc.stackIndex++,Vc.preserveSourceNewlinesStack[Vc.stackIndex]=Lt,Vc.containerPosStack[Vc.stackIndex]=st,Vc.containerEndStack[Vc.stackIndex]=ir,Vc.declarationListContainerEndStack[Vc.stackIndex]=zt;let _A=Vc.shouldEmitCommentsStack[Vc.stackIndex]=nr(zl),Lh=Vc.shouldEmitSourceMapsStack[Vc.stackIndex]=Fr(zl);S?.(zl),_A&&uR(zl),Lh&&jA(zl),pt(zl)}else Vc={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return Vc}function Et(zl,Vc,_A){return Oc(zl,_A,"left")}function fn(zl,Vc,_A){let Lh=zl.kind!==28,g0=ZN(_A,_A.left,zl),Yy=ZN(_A,zl,_A.right);Sv(g0,Lh),Ux(zl.pos),jU(zl,zl.kind===103?hu:vE),Xw(zl.end,!0),Sv(Yy,!0)}function qi(zl,Vc,_A){return Oc(zl,_A,"right")}function ic(zl,Vc){let _A=ZN(zl,zl.left,zl.operatorToken),Lh=ZN(zl,zl.operatorToken,zl.right);if(Mb(_A,Lh),Vc.stackIndex>0){let g0=Vc.preserveSourceNewlinesStack[Vc.stackIndex],Yy=Vc.containerPosStack[Vc.stackIndex],B5=Vc.containerEndStack[Vc.stackIndex],Qy=Vc.declarationListContainerEndStack[Vc.stackIndex],aW=Vc.shouldEmitCommentsStack[Vc.stackIndex],Iq=Vc.shouldEmitSourceMapsStack[Vc.stackIndex];on(g0),Iq&&Uo(zl),aW&&oW(zl,Yy,B5,Qy),R?.(zl),Vc.stackIndex--}}function Oc(zl,Vc,_A){let Lh=_A==="left"?ks.getParenthesizeLeftSideOfBinaryForOperator(Vc.operatorToken.kind):ks.getParenthesizeRightSideOfBinaryForOperator(Vc.operatorToken.kind),g0=Kr(0,1,zl);if(g0===nn&&(pe.assertIsDefined(Zi),zl=Lh(Ma(Zi,un)),g0=Dn(1,1,zl),Zi=void 0),(g0===NQ||g0===sK||g0===En)&&fo(zl))return zl;Ns=Lh,g0(1,zl)}}function af(Ae){let Et=ZN(Ae,Ae.condition,Ae.questionToken),fn=ZN(Ae,Ae.questionToken,Ae.whenTrue),qi=ZN(Ae,Ae.whenTrue,Ae.colonToken),ic=ZN(Ae,Ae.colonToken,Ae.whenFalse);Pr(Ae.condition,ks.parenthesizeConditionOfConditionalExpression),Sv(Et,!0),Cs(Ae.questionToken),Sv(fn,!0),Pr(Ae.whenTrue,ks.parenthesizeBranchOfConditionalExpression),Mb(Et,fn),Sv(qi,!0),Cs(Ae.colonToken),Sv(ic,!0),Pr(Ae.whenFalse,ks.parenthesizeBranchOfConditionalExpression),Mb(qi,ic)}function dI(Ae){Cs(Ae.head),fa(Ae,Ae.templateSpans,262144)}function XI(Ae){Fe(127,Ae.pos,hu,Ae),Cs(Ae.asteriskToken),g9(Ae.expression&&bs(Ae.expression),Xl)}function C2(Ae){Fe(26,Ae.pos,qo,Ae),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma)}function d_(Ae){Xx(Ae.name),Qs(Ae)}function OC(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),Ev(Ae,Ae.typeArguments)}function E1(Ae){Pr(Ae.expression,void 0),Ae.type&&(Fo(),hu("as"),Fo(),Cs(Ae.type))}function gy(Ae){Pr(Ae.expression,ks.parenthesizeLeftSideOfAccess),vE("!")}function yv(Ae){Pr(Ae.expression,void 0),Ae.type&&(Fo(),hu("satisfies"),Fo(),Cs(Ae.type))}function ik(Ae){eW(Ae.keywordToken,Ae.pos,qo),qo("."),Cs(Ae.name)}function Wx(Ae){Pr(Ae.expression),Cs(Ae.literal)}function Ox(Ae){Pb(Ae,!Ae.multiLine&&nW(Ae))}function Pb(Ae,Et){Fe(19,Ae.pos,qo,Ae);let fn=Et||tA(Ae)&1?768:129;fa(Ae,Ae.statements,fn),Fe(20,Ae.statements.end,qo,Ae,!!(fn&1))}function qm(Ae){dy(Ae,Ae.modifiers,!1),Cs(Ae.declarationList),py()}function oR(Ae){Ae?qo(";"):py()}function pS(Ae){Pr(Ae.expression,ks.parenthesizeExpressionOfExpressionStatement),(!Ee||!Zu(Ee)||sp(Ae.expression))&&py()}function xN(Ae){let Et=Fe(101,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.thenStatement),Ae.elseStatement&&(hS(Ae,Ae.thenStatement,Ae.elseStatement),Fe(93,Ae.thenStatement.end,hu,Ae),Ae.elseStatement.kind===246?(Fo(),Cs(Ae.elseStatement)):qF(Ae,Ae.elseStatement))}function at(Ae,Et){let fn=Fe(117,Et,hu,Ae);Fo(),Fe(21,fn,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae)}function en(Ae){Fe(92,Ae.pos,hu,Ae),qF(Ae,Ae.statement),$u(Ae.statement)&&!Lt?Fo():hS(Ae,Ae.statement,Ae.expression),at(Ae,Ae.statement.end),py()}function gi(Ae){at(Ae,Ae.pos),qF(Ae,Ae.statement)}function _i(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo();let fn=Fe(21,Et,qo,Ae);wa(Ae.initializer),fn=Fe(27,Ae.initializer?Ae.initializer.end:fn,qo,Ae),g9(Ae.condition),fn=Fe(27,Ae.condition?Ae.condition.end:fn,qo,Ae),g9(Ae.incrementor),Fe(22,Ae.incrementor?Ae.incrementor.end:fn,qo,Ae),qF(Ae,Ae.statement)}function ys(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),wa(Ae.initializer),Fo(),Fe(103,Ae.initializer.end,hu,Ae),Fo(),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function $s(Ae){let Et=Fe(99,Ae.pos,hu,Ae);Fo(),JU(Ae.awaitModifier),Fe(21,Et,qo,Ae),wa(Ae.initializer),Fo(),Fe(165,Ae.initializer.end,hu,Ae),Fo(),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function wa(Ae){Ae!==void 0&&(Ae.kind===262?Cs(Ae):Pr(Ae))}function pc(Ae){Fe(88,Ae.pos,hu,Ae),IS(Ae.label),py()}function ul(Ae){Fe(83,Ae.pos,hu,Ae),IS(Ae.label),py()}function Fe(Ae,Et,fn,qi,ic){let Oc=$l(qi),zl=Oc&&Oc.kind===qi.kind,Vc=Et;if(zl&&Ee&&(Et=Yu(Ee.text,Et)),zl&&qi.pos!==Vc){let _A=ic&&Ee&&!yE(Vc,Et,Ee);_A&&uk(),Ux(Vc),_A&&lR()}if(!re&&(Ae===19||Ae===20)?Et=eW(Ae,Et,fn,qi):Et=tW(Ae,fn,Et),zl&&qi.end!==Et){let _A=qi.kind===295;Xw(Et,!_A,_A)}return Et}function gr(Ae){return Ae.kind===2||!!Ae.hasTrailingNewLine}function Ln(Ae){if(!Ee)return!1;let Et=fE(Ee.text,Ae.pos);if(Et){let fn=$l(Ae);if(fn&&gI(fn.parent))return!0}return jt(Et,gr)||jt(k3(Ae),gr)?!0:ly(Ae)?Ae.pos!==Ae.expression.pos&&jt(n2(Ee.text,Ae.expression.pos),gr)?!0:Ln(Ae.expression):!1}function bs(Ae){if(!jn)switch(Ae.kind){case 356:if(Ln(Ae)){let Et=$l(Ae);if(Et&&gI(Et)){let fn=me.createParenthesizedExpression(Ae.expression);return ua(fn,Ae),gn(fn,Et),fn}return me.createParenthesizedExpression(Ae)}return me.updatePartiallyEmittedExpression(Ae,bs(Ae.expression));case 212:return me.updatePropertyAccessExpression(Ae,bs(Ae.expression),Ae.name);case 213:return me.updateElementAccessExpression(Ae,bs(Ae.expression),Ae.argumentExpression);case 214:return me.updateCallExpression(Ae,bs(Ae.expression),Ae.typeArguments,Ae.arguments);case 216:return me.updateTaggedTemplateExpression(Ae,bs(Ae.tag),Ae.typeArguments,Ae.template);case 226:return me.updatePostfixUnaryExpression(Ae,bs(Ae.operand));case 227:return me.updateBinaryExpression(Ae,bs(Ae.left),Ae.operatorToken,Ae.right);case 228:return me.updateConditionalExpression(Ae,bs(Ae.condition),Ae.questionToken,Ae.whenTrue,Ae.colonToken,Ae.whenFalse);case 235:return me.updateAsExpression(Ae,bs(Ae.expression),Ae.type);case 239:return me.updateSatisfiesExpression(Ae,bs(Ae.expression),Ae.type);case 236:return me.updateNonNullExpression(Ae,bs(Ae.expression))}return Ae}function Xl(Ae){return bs(ks.parenthesizeExpressionForDisallowedComma(Ae))}function eg(Ae){Fe(107,Ae.pos,hu,Ae),g9(Ae.expression&&bs(Ae.expression),bs),py()}function jl(Ae){let Et=Fe(118,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),qF(Ae,Ae.statement)}function Eu(Ae){let Et=Fe(109,Ae.pos,hu,Ae);Fo(),Fe(21,Et,qo,Ae),Pr(Ae.expression),Fe(22,Ae.expression.end,qo,Ae),Fo(),Cs(Ae.caseBlock)}function Df(Ae){Cs(Ae.label),Fe(59,Ae.label.end,qo,Ae),Fo(),Cs(Ae.statement)}function Jg(Ae){Fe(111,Ae.pos,hu,Ae),g9(bs(Ae.expression),bs),py()}function MC(Ae){Fe(113,Ae.pos,hu,Ae),Fo(),Cs(Ae.tryBlock),Ae.catchClause&&(hS(Ae,Ae.tryBlock,Ae.catchClause),Cs(Ae.catchClause)),Ae.finallyBlock&&(hS(Ae,Ae.catchClause||Ae.tryBlock,Ae.finallyBlock),Fe(98,(Ae.catchClause||Ae.tryBlock).end,hu,Ae),Fo(),Cs(Ae.finallyBlock))}function S1(Ae){eW(89,Ae.pos,hu),py()}function fS(Ae){var Et,fn,qi;Cs(Ae.name),Cs(Ae.exclamationToken),YB(Ae.type),p5(Ae.initializer,((Et=Ae.type)==null?void 0:Et.end)??((qi=(fn=Ae.name.emitNode)==null?void 0:fn.typeNode)==null?void 0:qi.end)??Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function bv(Ae){if(Sd(Ae))hu("await"),Fo(),hu("using");else{let Et=rS(Ae)?"let":rI(Ae)?"const":tI(Ae)?"using":"var";hu(Et)}Fo(),fa(Ae,Ae.declarations,528)}function XF(Ae){o9(Ae)}function o9(Ae){dy(Ae,Ae.modifiers,!1),hu("function"),Cs(Ae.asteriskToken),Fo(),Tu(Ae.name),My(Ae,WB,sk)}function My(Ae,Et,fn){let qi=tA(Ae)&131072;qi&&uk(),Qw(Ae),F(Ae.parameters,HC),Et(Ae),fn(Ae),tZ(Ae),qi&&lR()}function sk(Ae){let Et=Ae.body;Et?br(Et):py()}function aR(Ae){py()}function WB(Ae){Yx(Ae,Ae.typeParameters),f5(Ae,Ae.parameters),YB(Ae.type)}function UP(Ae){if(tA(Ae)&1)return!0;if(Ae.multiLine||!sp(Ae)&&Ee&&!S3(Ae,Ee)||d9(Ae,Nc(Ae.statements),2)||iq(Ae,li(Ae.statements),2,Ae.statements))return!1;let Et;for(let fn of Ae.statements){if(h5(Et,fn,2)>0)return!1;Et=fn}return!0}function br(Ae){HC(Ae),S?.(Ae),Fo(),qo("{"),uk();let Et=UP(Ae)?sn:ei;DQ(Ae,Ae.statements,Et),lR(),eW(20,Ae.statements.end,qo,Ae),R?.(Ae)}function sn(Ae){ei(Ae,!0)}function ei(Ae,Et){let fn=Hx(Ae.statements),qi=Pt.getTextPos();bn(Ae),fn===0&&qi===Pt.getTextPos()&&Et?(lR(),fa(Ae,Ae.statements,768),uk()):fa(Ae,Ae.statements,1,void 0,fn)}function is(Ae){Qs(Ae)}function Qs(Ae){dy(Ae,Ae.modifiers,!0),Fe(86,Av(Ae).pos,hu,Ae),Ae.name&&(Fo(),Tu(Ae.name));let Et=tA(Ae)&131072;Et&&uk(),Yx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,0),Fo(),qo("{"),Qw(Ae),F(Ae.members,RQ),fa(Ae,Ae.members,129),tZ(Ae),qo("}"),Et&&lR()}function Oo(Ae){dy(Ae,Ae.modifiers,!1),hu("interface"),Fo(),Cs(Ae.name),Yx(Ae,Ae.typeParameters),fa(Ae,Ae.heritageClauses,512),Fo(),qo("{"),Qw(Ae),F(Ae.members,RQ),fa(Ae,Ae.members,129),tZ(Ae),qo("}")}function Os(Ae){dy(Ae,Ae.modifiers,!1),hu("type"),Fo(),Cs(Ae.name),Yx(Ae,Ae.typeParameters),Fo(),qo("="),Fo(),Cs(Ae.type),py()}function co(Ae){dy(Ae,Ae.modifiers,!1),hu("enum"),Fo(),Cs(Ae.name),Fo(),qo("{"),fa(Ae,Ae.members,145),qo("}")}function Yc(Ae){dy(Ae,Ae.modifiers,!1),~Ae.flags&2048&&(hu(Ae.flags&32?"namespace":"module"),Fo()),Cs(Ae.name);let Et=Ae.body;if(!Et)return py();for(;Et&&xh(Et);)qo("."),Cs(Et.name),Et=Et.body;Fo(),Cs(Et)}function tu(Ae){Qw(Ae),F(Ae.statements,HC),Pb(Ae,nW(Ae)),tZ(Ae)}function $a(Ae){Fe(19,Ae.pos,qo,Ae),fa(Ae,Ae.clauses,129),Fe(20,Ae.clauses.end,qo,Ae,!0)}function ru(Ae){dy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,hu,Ae),Fo(),Ae.isTypeOnly&&(Fe(156,Ae.pos,hu,Ae),Fo()),Cs(Ae.name),Fo(),Fe(64,Ae.name.end,qo,Ae),Fo(),gl(Ae.moduleReference),py()}function gl(Ae){Ae.kind===80?Pr(Ae):Cs(Ae)}function kf(Ae){dy(Ae,Ae.modifiers,!1),Fe(102,Ae.modifiers?Ae.modifiers.end:Ae.pos,hu,Ae),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,hu,Ae),Fo()),Pr(Ae.moduleSpecifier),Ae.attributes&&IS(Ae.attributes),py()}function Wb(Ae){Ae.phaseModifier!==void 0&&(Fe(Ae.phaseModifier,Ae.pos,hu,Ae),Fo()),Cs(Ae.name),Ae.name&&Ae.namedBindings&&(Fe(28,Ae.name.end,qo,Ae),Fo()),Cs(Ae.namedBindings)}function OB(Ae){let Et=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,Et,hu,Ae),Fo(),Cs(Ae.name)}function p_(Ae){Mx(Ae)}function MB(Ae){a5(Ae)}function v1(Ae){let Et=Fe(95,Ae.pos,hu,Ae);Fo(),Ae.isExportEquals?Fe(64,Et,vE,Ae):Fe(90,Et,hu,Ae),Fo(),Pr(Ae.expression,Ae.isExportEquals?ks.getParenthesizeRightSideOfBinaryForOperator(64):ks.parenthesizeExpressionOfExportDefault),py()}function s5(Ae){dy(Ae,Ae.modifiers,!1);let Et=Fe(95,Ae.pos,hu,Ae);if(Fo(),Ae.isTypeOnly&&(Et=Fe(156,Et,hu,Ae),Fo()),Ae.exportClause?Cs(Ae.exportClause):Et=Fe(42,Et,qo,Ae),Ae.moduleSpecifier){Fo();let fn=Ae.exportClause?Ae.exportClause.end:Et;Fe(161,fn,hu,Ae),Fo(),Pr(Ae.moduleSpecifier)}Ae.attributes&&IS(Ae.attributes),py()}function GN(Ae){qo("{"),Fo(),hu(Ae.token===132?"assert":"with"),qo(":"),Fo();let Et=Ae.elements;fa(Ae,Et,526226),Fo(),qo("}")}function ok(Ae){Fe(Ae.token,Ae.pos,hu,Ae),Fo();let Et=Ae.elements;fa(Ae,Et,526226)}function o5(Ae){Cs(Ae.name),qo(":"),Fo();let Et=Ae.value;if(!(tA(Et)&1024)){let fn=DB(Et);Xw(fn.pos)}Cs(Et)}function ak(Ae){let Et=Fe(95,Ae.pos,hu,Ae);Fo(),Et=Fe(130,Et,hu,Ae),Fo(),Et=Fe(145,Et,hu,Ae),Fo(),Cs(Ae.name),py()}function gse(Ae){let Et=Fe(42,Ae.pos,qo,Ae);Fo(),Fe(130,Et,hu,Ae),Fo(),Cs(Ae.name)}function hpe(Ae){Mx(Ae)}function Ase(Ae){a5(Ae)}function Mx(Ae){qo("{"),fa(Ae,Ae.elements,525136),qo("}")}function a5(Ae){Ae.isTypeOnly&&(hu("type"),Fo()),Ae.propertyName&&(Cs(Ae.propertyName),Fo(),Fe(130,Ae.propertyName.end,hu,Ae),Fo()),Cs(Ae.name)}function WU(Ae){hu("require"),qo("("),Pr(Ae.expression),qo(")")}function a9(Ae){Cs(Ae.openingElement),fa(Ae,Ae.children,262144),Cs(Ae.closingElement)}function OU(Ae){qo("<"),SQ(Ae.tagName),Ev(Ae,Ae.typeArguments),Fo(),Cs(Ae.attributes),qo("/>")}function qz(Ae){Cs(Ae.openingFragment),fa(Ae,Ae.children,262144),Cs(Ae.closingFragment)}function mpe(Ae){if(qo("<"),$T(Ae)){let Et=rW(Ae.tagName,Ae);SQ(Ae.tagName),Ev(Ae,Ae.typeArguments),Ae.attributes.properties&&Ae.attributes.properties.length>0&&Fo(),Cs(Ae.attributes),sq(Ae.attributes,Ae),Mb(Et)}qo(">")}function MU(Ae){Pt.writeLiteral(Ae.text)}function $z(Ae){qo("")}function c5(Ae){fa(Ae,Ae.properties,262656)}function dse(Ae){Cs(Ae.name),gA("=",qo,Ae.initializer,Pn)}function HU(Ae){qo("{..."),Pr(Ae.expression),qo("}")}function eq(Ae){let Et=!1;return dF(Ee?.text||"",Ae+1,()=>Et=!0),Et}function EQ(Ae){let Et=!1;return GD(Ee?.text||"",Ae+1,()=>Et=!0),Et}function KP(Ae){return eq(Ae)||EQ(Ae)}function tq(Ae){var Et;if(Ae.expression||!jn&&!sp(Ae)&&KP(Ae.pos)){let fn=Ee&&!sp(Ae)&&Ra(Ee,Ae.pos).line!==Ra(Ee,Ae.end).line;fn&&Pt.increaseIndent();let qi=Fe(19,Ae.pos,qo,Ae);Cs(Ae.dotDotDotToken),Pr(Ae.expression),Fe(20,((Et=Ae.expression)==null?void 0:Et.end)||qi,qo,Ae),fn&&Pt.decreaseIndent()}}function rq(Ae){Tu(Ae.namespace),qo(":"),Tu(Ae.name)}function SQ(Ae){Ae.kind===80?Pr(Ae):Cs(Ae)}function jP(Ae){Fe(84,Ae.pos,hu,Ae),Fo(),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma),JF(Ae,Ae.statements,Ae.expression.end)}function c9(Ae){let Et=Fe(90,Ae.pos,hu,Ae);JF(Ae,Ae.statements,Et)}function JF(Ae,Et,fn){let qi=Et.length===1&&(!Ee||sp(Ae)||sp(Et[0])||M7(Ae,Et[0],Ee)),ic=163969;qi?(eW(59,fn,qo,Ae),Fo(),ic&=-130):Fe(59,fn,qo,Ae),fa(Ae,Et,ic)}function UF(Ae){Fo(),tW(Ae.token,hu),Fo(),fa(Ae,Ae.types,528)}function KF(Ae){let Et=Fe(85,Ae.pos,hu,Ae);Fo(),Ae.variableDeclaration&&(Fe(21,Et,qo,Ae),Cs(Ae.variableDeclaration),Fe(22,Ae.variableDeclaration.end,qo,Ae),Fo()),Cs(Ae.block)}function zP(Ae){Cs(Ae.name),qo(":"),Fo();let Et=Ae.initializer;if(!(tA(Et)&1024)){let fn=DB(Et);Xw(fn.pos)}Pr(Et,ks.parenthesizeExpressionForDisallowedComma)}function l5(Ae){Cs(Ae.name),Ae.objectAssignmentInitializer&&(Fo(),qo("="),Fo(),Pr(Ae.objectAssignmentInitializer,ks.parenthesizeExpressionForDisallowedComma))}function YU(Ae){Ae.expression&&(Fe(26,Ae.pos,qo,Ae),Pr(Ae.expression,ks.parenthesizeExpressionForDisallowedComma))}function u5(Ae){Cs(Ae.name),p5(Ae.initializer,Ae.name.end,Ae,ks.parenthesizeExpressionForDisallowedComma)}function PA(Ae){if(Gt("/**"),Ae.comment){let Et=pJ(Ae.comment);if(Et){let fn=Et.split(/\r\n?|\n/);for(let qi of fn)G0(),Fo(),qo("*"),Fo(),Gt(qi)}}Ae.tags&&(Ae.tags.length===1&&Ae.tags[0].kind===345&&!Ae.comment?(Fo(),Cs(Ae.tags[0])):fa(Ae,Ae.tags,33)),Fo(),Gt("*/")}function QU(Ae){HB(Ae.tagName),A5(Ae.typeExpression),Mw(Ae.comment)}function pse(Ae){HB(Ae.tagName),Cs(Ae.name),Mw(Ae.comment)}function jF(Ae){HB(Ae.tagName),Fo(),Ae.importClause&&(Cs(Ae.importClause),Fo(),Fe(161,Ae.importClause.end,hu,Ae),Fo()),Pr(Ae.moduleSpecifier),Ae.attributes&&IS(Ae.attributes),Mw(Ae.comment)}function zF(Ae){Fo(),qo("{"),Cs(Ae.name),qo("}")}function ck(Ae){HB(Ae.tagName),Fo(),qo("{"),Cs(Ae.class),qo("}"),Mw(Ae.comment)}function bf(Ae){HB(Ae.tagName),A5(Ae.constraint),Fo(),fa(Ae,Ae.typeParameters,528),Mw(Ae.comment)}function l0(Ae){HB(Ae.tagName),Ae.typeExpression&&(Ae.typeExpression.kind===310?A5(Ae.typeExpression):(Fo(),qo("{"),Gt("Object"),Ae.typeExpression.isArrayType&&(qo("["),qo("]")),qo("}"))),Ae.fullName&&(Fo(),Cs(Ae.fullName)),Mw(Ae.comment),Ae.typeExpression&&Ae.typeExpression.kind===323&&Ay(Ae.typeExpression)}function Ob(Ae){HB(Ae.tagName),Ae.name&&(Fo(),Cs(Ae.name)),Mw(Ae.comment),lk(Ae.typeExpression)}function u0(Ae){Mw(Ae.comment),lk(Ae.typeExpression)}function g5(Ae){HB(Ae.tagName),Mw(Ae.comment)}function Ay(Ae){fa(Ae,me.createNodeArray(Ae.jsDocPropertyTags),33)}function lk(Ae){Ae.typeParameters&&fa(Ae,me.createNodeArray(Ae.typeParameters),33),Ae.parameters&&fa(Ae,me.createNodeArray(Ae.parameters),33),Ae.type&&(G0(),Fo(),qo("*"),Fo(),Cs(Ae.type))}function Hy(Ae){HB(Ae.tagName),A5(Ae.typeExpression),Fo(),Ae.isBracketed&&qo("["),Cs(Ae.name),Ae.isBracketed&&qo("]"),Mw(Ae.comment)}function HB(Ae){qo("@"),Cs(Ae)}function Mw(Ae){let Et=pJ(Ae);Et&&(Fo(),Gt(Et))}function A5(Ae){Ae&&(Fo(),qo("{"),Cs(Ae.type),qo("}"))}function d5(Ae){G0();let Et=Ae.statements;if(Et.length===0||!nS(Et[0])||sp(Et[0])){DQ(Ae,Et,vQ);return}vQ(Ae)}function Cpe(Ae){l9(!!Ae.hasNoDefaultLib,Ae.syntheticFileReferences||[],Ae.syntheticTypeReferences||[],Ae.syntheticLibReferences||[])}function fse(Ae){Ae.isDeclarationFile&&l9(Ae.hasNoDefaultLib,Ae.referencedFiles,Ae.typeReferenceDirectives,Ae.libReferenceDirectives)}function l9(Ae,Et,fn,qi){if(Ae&&($P('/// '),G0()),Ee&&Ee.moduleName&&($P(`/// `),G0()),Ee&&Ee.amdDependencies)for(let Oc of Ee.amdDependencies)Oc.name?$P(`/// `):$P(`/// `),G0();function ic(Oc,zl){for(let Vc of zl){let _A=Vc.resolutionMode?`resolution-mode="${Vc.resolutionMode===99?"import":"require"}" `:"",Lh=Vc.preserve?'preserve="true" ':"";$P(`/// `),G0()}}ic("path",Et),ic("types",fn),ic("lib",qi)}function vQ(Ae){let Et=Ae.statements;Qw(Ae),F(Ae.statements,HC),bn(Ae);let fn=Se(Et,qi=>!nS(qi));fse(Ae),fa(Ae,Et,1,void 0,fn===-1?Et.length:fn),tZ(Ae)}function Sr(Ae){let Et=tA(Ae);!(Et&1024)&&Ae.pos!==Ae.expression.pos&&Xw(Ae.expression.pos),Pr(Ae.expression),!(Et&2048)&&Ae.end!==Ae.expression.end&&Ux(Ae.expression.end)}function XU(Ae){sa(Ae,Ae.elements,528,void 0)}function Hx(Ae,Et,fn){let qi=!!Et;for(let ic=0;ic=fn.length||zl===0;if(_A&&qi&32768){T?.(fn),W?.(fn);return}qi&15360&&(qo(KBs(qi)),_A&&fn&&Xw(fn.pos,!0)),T?.(fn),_A?qi&1&&!(Lt&&(!Et||Ee&&S3(Et,Ee)))?G0():qi&256&&!(qi&524288)&&Fo():UU(Ae,Et,fn,qi,ic,Oc,zl,fn.hasTrailingComma,fn),W?.(fn),qi&15360&&(_A&&fn&&Ux(fn.end),qo(jBs(qi)))}function UU(Ae,Et,fn,qi,ic,Oc,zl,Vc,_A){let Lh=(qi&262144)===0,g0=Lh,Yy=d9(Et,fn[Oc],qi);Yy?(G0(Yy),g0=!1):qi&256&&Fo(),qi&128&&uk();let B5=ews(Ae,ic),Qy,aW=!1;for(let h9=0;h90){if(qi&131||(uk(),aW=!0),g0&&qi&60&&!wB(Jw.pos)){let xQ=DB(Jw);Xw(xQ.pos,!!(qi&512),!0)}G0(m9),g0=!1}else Qy&&qi&512&&Fo()}if(g0){let m9=DB(Jw);Xw(m9.pos)}else g0=Lh;Ke=Jw.pos,B5(Jw,Ae,ic,h9),aW&&(lR(),aW=!1),Qy=Jw}let Iq=Qy?tA(Qy):0,QB=jn||!!(Iq&2048),Hf=Vc&&qi&64&&qi&16;Hf&&(Qy&&!QB?Fe(28,Qy.end,qo,Qy):qo(",")),Qy&&(Et?Et.end:-1)!==Qy.end&&qi&60&&!QB&&Ux(Hf&&_A?.end?_A.end:Qy.end),qi&128&&lR();let cK=iq(Et,fn[Oc+zl-1],qi,_A);cK?G0(cK):qi&2097408&&Fo()}function $F(Ae){Pt.writeLiteral(Ae)}function TQ(Ae){Pt.writeStringLiteral(Ae)}function Ise(Ae){Pt.write(Ae)}function _pe(Ae,Et){Pt.writeSymbol(Ae,Et)}function qo(Ae){Pt.writePunctuation(Ae)}function py(){Pt.writeTrailingSemicolon(";")}function hu(Ae){Pt.writeKeyword(Ae)}function vE(Ae){Pt.writeOperator(Ae)}function KU(Ae){Pt.writeParameter(Ae)}function $P(Ae){Pt.writeComment(Ae)}function Fo(){Pt.writeSpace(" ")}function hse(Ae){Pt.writeProperty(Ae)}function nq(Ae){Pt.nonEscapingWrite?Pt.nonEscapingWrite(Ae):Pt.write(Ae)}function G0(Ae=1){for(let Et=0;Et0)}function uk(){Pt.increaseIndent()}function lR(){Pt.decreaseIndent()}function eW(Ae,Et,fn,qi){return Dt?tW(Ae,fn,Et):oK(qi,Ae,fn,Et,tW)}function jU(Ae,Et){V&&V(Ae),Et(Vi(Ae.kind)),M&&M(Ae)}function tW(Ae,Et,fn){let qi=Vi(Ae);return Et(qi),fn<0?fn:fn+qi.length}function hS(Ae,Et,fn){if(tA(Ae)&1)Fo();else if(Lt){let qi=ZN(Ae,Et,fn);qi?G0(qi):Fo()}else G0()}function Yw(Ae){let Et=Ae.split(/\r\n?|\n/),fn=xre(Et);for(let qi of Et){let ic=fn?qi.slice(fn):qi;ic.length&&(G0(),Gt(ic))}}function Sv(Ae,Et){Ae?(uk(),G0(Ae)):Et&&Fo()}function Mb(Ae,Et){Ae&&lR(),Et&&lR()}function d9(Ae,Et,fn){if(fn&2||Lt){if(fn&65536)return 1;if(Et===void 0)return!Ae||Ee&&S3(Ae,Ee)?0:1;if(Et.pos===Ke||Et.kind===12)return 0;if(Ee&&Ae&&!wB(Ae.pos)&&!sp(Et)&&(!Et.parent||Dd(Et.parent)===Dd(Ae)))return Lt?m5(qi=>UZe(Et.pos,Ae.pos,Ee,qi)):M7(Ae,Et,Ee)?0:1;if(eZ(Et,fn))return 1}return fn&1?1:0}function h5(Ae,Et,fn){if(fn&2||Lt){if(Ae===void 0||Et===void 0||Et.kind===12)return 0;if(Ee&&!sp(Ae)&&!sp(Et))return Lt&&F0(Ae,Et)?m5(qi=>v3(Ae,Et,Ee,qi)):!Lt&&gq(Ae,Et)?kne(Ae,Et,Ee)?0:1:fn&65536?1:0;if(eZ(Ae,fn)||eZ(Et,fn))return 1}else if(D3(Et))return 1;return fn&1?1:0}function iq(Ae,Et,fn,qi){if(fn&2||Lt){if(fn&65536)return 1;if(Et===void 0)return!Ae||Ee&&S3(Ae,Ee)?0:1;if(Ee&&Ae&&!wB(Ae.pos)&&!sp(Et)&&(!Et.parent||Et.parent===Ae)){if(Lt){let ic=qi&&!wB(qi.end)?qi.end:Et.end;return m5(Oc=>obe(ic,Ae.end,Ee,Oc))}return QZe(Ae,Et,Ee)?0:1}if(eZ(Et,fn))return 1}return fn&1&&!(fn&131072)?1:0}function m5(Ae){pe.assert(!!Lt);let Et=Ae(!0);return Et===0?Ae(!1):Et}function rW(Ae,Et){let fn=Lt&&d9(Et,Ae,0);return fn&&Sv(fn,!1),!!fn}function sq(Ae,Et){let fn=Lt&&iq(Et,Ae,0,void 0);fn&&G0(fn)}function eZ(Ae,Et){if(sp(Ae)){let fn=D3(Ae);return fn===void 0?(Et&65536)!==0:fn}return(Et&65536)!==0}function ZN(Ae,Et,fn){return tA(Ae)&262144?0:(Ae=C5(Ae),Et=C5(Et),fn=C5(fn),D3(fn)?1:Ee&&!sp(Ae)&&!sp(Et)&&!sp(fn)?Lt?m5(qi=>v3(Et,fn,Ee,qi)):kne(Et,fn,Ee)?0:1:0)}function nW(Ae){return Ae.statements.length===0&&(!Ee||kne(Ae,Ae,Ee))}function C5(Ae){for(;Ae.kind===218&&sp(Ae);)Ae=Ae.expression;return Ae}function p9(Ae,Et){if(kp(Ae)||TL(Ae))return _5(Ae);if(Zg(Ae)&&Ae.textSourceNode)return p9(Ae.textSourceNode,Et);let fn=Ee,qi=!!fn&&!!Ae.parent&&!sp(Ae);if(_w(Ae)){if(!qi||ms(Ae)!==Dd(fn))return Vo(Ae)}else if(eR(Ae)){if(!qi||ms(Ae)!==Dd(fn))return lz(Ae)}else if(pe.assertNode(Ae,wL),!qi)return Ae.text;return mF(fn,Ae,Et)}function iW(Ae,Et=Ee,fn,qi){if(Ae.kind===11&&Ae.textSourceNode){let Oc=Ae.textSourceNode;if(Ir(Oc)||p(Oc)||mC(Oc)||eR(Oc)){let zl=mC(Oc)?Oc.text:p9(Oc);return qi?`"${Wye(zl)}"`:fn||tA(Ae)&16777216?`"${YT(zl)}"`:`"${Ene(zl)}"`}else return iW(Oc,ms(Oc),fn,qi)}let ic=(fn?1:0)|(qi?2:0)|(s.terminateUnterminatedLiterals?4:0)|(s.target&&s.target>=8?8:0);return Sge(Ae,Et,ic)}function Qw(Ae){Ye.push(Tt),Tt=0,_t.push(Rt),!(Ae&&tA(Ae)&1048576)&&(ot.push(Qe),Qe=0,Ue.push($e),$e=void 0,mt.push(ht))}function tZ(Ae){Tt=Ye.pop(),Rt=_t.pop(),!(Ae&&tA(Ae)&1048576)&&(Qe=ot.pop(),$e=Ue.pop(),ht=mt.pop())}function Qx(Ae){(!ht||ht===li(mt))&&(ht=new Set),ht.add(Ae)}function sW(Ae){(!Rt||Rt===li(_t))&&(Rt=new Set),Rt.add(Ae)}function HC(Ae){if(Ae)switch(Ae.kind){case 242:F(Ae.statements,HC);break;case 257:case 255:case 247:case 248:HC(Ae.statement);break;case 246:HC(Ae.thenStatement),HC(Ae.elseStatement);break;case 249:case 251:case 250:HC(Ae.initializer),HC(Ae.statement);break;case 256:HC(Ae.caseBlock);break;case 270:F(Ae.clauses,HC);break;case 297:case 298:F(Ae.statements,HC);break;case 259:HC(Ae.tryBlock),HC(Ae.catchClause),HC(Ae.finallyBlock);break;case 300:HC(Ae.variableDeclaration),HC(Ae.block);break;case 244:HC(Ae.declarationList);break;case 262:F(Ae.declarations,HC);break;case 261:case 170:case 209:case 264:Xx(Ae.name);break;case 263:Xx(Ae.name),tA(Ae)&1048576&&(F(Ae.parameters,HC),HC(Ae.body));break;case 207:case 208:F(Ae.elements,HC);break;case 273:HC(Ae.importClause);break;case 274:Xx(Ae.name),HC(Ae.namedBindings);break;case 275:Xx(Ae.name);break;case 281:Xx(Ae.name);break;case 276:F(Ae.elements,HC);break;case 277:Xx(Ae.propertyName||Ae.name);break}}function RQ(Ae){if(Ae)switch(Ae.kind){case 304:case 305:case 173:case 172:case 175:case 174:case 178:case 179:Xx(Ae.name);break}}function Xx(Ae){Ae&&(kp(Ae)||TL(Ae)?_5(Ae):Nu(Ae)&&HC(Ae))}function _5(Ae){let Et=Ae.emitNode.autoGenerate;if((Et.flags&7)===4)return zU(pEe(Ae),p(Ae),Et.flags,Et.prefix,Et.suffix);{let fn=Et.id;return Ze[fn]||(Ze[fn]=vv(Ae))}}function zU(Ae,Et,fn,qi,ic){let Oc=rd(Ae),zl=Et?Te:Ne;return zl[Oc]||(zl[Oc]=Hb(Ae,Et,fn??0,Eie(qi,_5),Eie(ic)))}function Jx(Ae,Et){return oq(Ae,Et)&&!mse(Ae,Et)&&!We.has(Ae)}function mse(Ae,Et){let fn,qi;if(Et?(fn=Rt,qi=_t):(fn=ht,qi=mt),fn?.has(Ae))return!0;for(let ic=qi.length-1;ic>=0;ic--)if(fn!==qi[ic]&&(fn=qi[ic],fn?.has(Ae)))return!0;return!1}function oq(Ae,Et){return Ee?u7(Ee,Ae,g):!0}function aq(Ae,Et){for(let fn=Et;fn&&EP(fn,Et);fn=fn.nextContainer)if(WI(fn)&&fn.locals){let qi=fn.locals.get(Ap(Ae));if(qi&&qi.flags&3257279)return!1}return!0}function ype(Ae){switch(Ae){case"":return Qe;case"#":return Tt;default:return $e?.get(Ae)??0}}function cq(Ae,Et){switch(Ae){case"":Qe=Et;break;case"#":Tt=Et;break;default:$e??($e=new Map),$e.set(Ae,Et);break}}function y5(Ae,Et,fn,qi,ic){qi.length>0&&qi.charCodeAt(0)===35&&(qi=qi.slice(1));let Oc=M3(fn,qi,"",ic),zl=ype(Oc);if(Ae&&!(zl&Ae)){let _A=M3(fn,qi,Ae===268435456?"_i":"_n",ic);if(Jx(_A,fn))return zl|=Ae,fn?sW(_A):Et&&Qx(_A),cq(Oc,zl),_A}for(;;){let Vc=zl&268435455;if(zl++,Vc!==8&&Vc!==13){let _A=Vc<26?"_"+String.fromCharCode(97+Vc):"_"+(Vc-26),Lh=M3(fn,qi,_A,ic);if(Jx(Lh,fn))return fn?sW(Lh):Et&&Qx(Lh),cq(Oc,zl),Lh}}}function rZ(Ae,Et=Jx,fn,qi,ic,Oc,zl){if(Ae.length>0&&Ae.charCodeAt(0)===35&&(Ae=Ae.slice(1)),Oc.length>0&&Oc.charCodeAt(0)===35&&(Oc=Oc.slice(1)),fn){let _A=M3(ic,Oc,Ae,zl);if(Et(_A,ic))return ic?sW(_A):qi?Qx(_A):We.add(_A),_A}Ae.charCodeAt(Ae.length-1)!==95&&(Ae+="_");let Vc=1;for(;;){let _A=M3(ic,Oc,Ae+Vc,zl);if(Et(_A,ic))return ic?sW(_A):qi?Qx(_A):We.add(_A),_A;Vc++}}function Cse(Ae){return rZ(Ae,oq,!0,!1,!1,"","")}function b5(Ae){let Et=p9(Ae.name);return aq(Et,Gs(Ae,WI))?Et:rZ(Et,Jx,!1,!1,!1,"","")}function qU(Ae){let Et=LY(Ae),fn=Zg(Et)?vw(Et.text):"module";return rZ(fn,Jx,!1,!1,!1,"","")}function Zh(){return rZ("default",Jx,!1,!1,!1,"","")}function YC(){return rZ("class",Jx,!1,!1,!1,"","")}function lq(Ae,Et,fn,qi){return Ir(Ae.name)?zU(Ae.name,Et):y5(0,!1,Et,fn,qi)}function Hb(Ae,Et,fn,qi,ic){switch(Ae.kind){case 80:case 81:return rZ(p9(Ae),Jx,!!(fn&16),!!(fn&8),Et,qi,ic);case 268:case 267:return pe.assert(!qi&&!ic&&!Et),b5(Ae);case 273:case 279:return pe.assert(!qi&&!ic&&!Et),qU(Ae);case 263:case 264:{pe.assert(!qi&&!ic&&!Et);let Oc=Ae.name;return Oc&&!kp(Oc)?Hb(Oc,!1,fn,qi,ic):Zh()}case 278:return pe.assert(!qi&&!ic&&!Et),Zh();case 232:return pe.assert(!qi&&!ic&&!Et),YC();case 175:case 178:case 179:return lq(Ae,Et,qi,ic);case 168:return y5(0,!0,Et,qi,ic);default:return y5(0,!1,Et,qi,ic)}}function vv(Ae){let Et=Ae.emitNode.autoGenerate,fn=Eie(Et.prefix,_5),qi=Eie(Et.suffix);switch(Et.flags&7){case 1:return y5(0,!!(Et.flags&8),p(Ae),fn,qi);case 2:return pe.assertNode(Ae,Ir),y5(268435456,!!(Et.flags&8),!1,fn,qi);case 3:return rZ(Vo(Ae),Et.flags&32?oq:Jx,!!(Et.flags&16),!!(Et.flags&8),p(Ae),fn,qi)}return pe.fail(`Unsupported GeneratedIdentifierKind: ${pe.formatEnum(Et.flags&7,od,!0)}.`)}function NQ(Ae,Et){let fn=Dn(2,Ae,Et),qi=st,ic=ir,Oc=zt;uR(Et),fn(Ae,Et),oW(Et,qi,ic,Oc)}function uR(Ae){let Et=tA(Ae),fn=DB(Ae);f9(Ae,Et,fn.pos,fn.end),Et&4096&&(jn=!0)}function oW(Ae,Et,fn,qi){let ic=tA(Ae),Oc=DB(Ae);ic&4096&&(jn=!1),uq(Ae,ic,Oc.pos,Oc.end,Et,fn,qi);let zl=WLe(Ae);zl&&uq(Ae,ic,zl.pos,zl.end,Et,fn,qi)}function f9(Ae,Et,fn,qi){An(),mn=!1;let ic=fn<0||(Et&1024)!==0||Ae.kind===12,Oc=qi<0||(Et&2048)!==0||Ae.kind===12;(fn>0||qi>0)&&fn!==qi&&(ic||BE(fn,Ae.kind!==354),(!ic||fn>=0&&Et&1024)&&(st=fn),(!Oc||qi>=0&&Et&2048)&&(ir=qi,Ae.kind===262&&(zt=qi))),F(k3(Ae),bpe),si()}function uq(Ae,Et,fn,qi,ic,Oc,zl){An();let Vc=qi<0||(Et&2048)!==0||Ae.kind===12;F(hU(Ae),TI),(fn>0||qi>0)&&fn!==qi&&(st=ic,ir=Oc,zt=zl,!Vc&&Ae.kind!==354&&Aq(qi)),si()}function bpe(Ae){(Ae.hasLeadingNewline||Ae.kind===2)&&Pt.writeLine(),_se(Ae),Ae.hasTrailingNewLine||Ae.kind===2?Pt.writeLine():Pt.writeSpace(" ")}function TI(Ae){Pt.isAtStartOfLine()||Pt.writeSpace(" "),_se(Ae),Ae.hasTrailingNewLine&&Pt.writeLine()}function _se(Ae){let Et=$U(Ae),fn=Ae.kind===3?cA(Et):void 0;rU(Et,fn,Pt,0,Et.length,ge)}function $U(Ae){return Ae.kind===3?`/*${Ae.text}*/`:`//${Ae.text}`}function DQ(Ae,Et,fn){An();let{pos:qi,end:ic}=Et,Oc=tA(Ae),zl=qi<0||(Oc&1024)!==0,Vc=jn||ic<0||(Oc&2048)!==0;zl||B1(Et),si(),Oc&4096&&!jn?(jn=!0,fn(Ae),jn=!1):fn(Ae),An(),Vc||(BE(Et.end,!0),mn&&!Pt.isAtStartOfLine()&&Pt.writeLine()),si()}function gq(Ae,Et){return Ae=Dd(Ae),Ae.parent&&Ae.parent===Dd(Et).parent}function F0(Ae,Et){if(Et.pos-1&&qi.indexOf(Et)===ic+1}function BE(Ae,Et){mn=!1,Et?Ae===0&&Ee?.isDeclarationFile?pq(Ae,E5):pq(Ae,tK):Ae===0&&pq(Ae,eK)}function eK(Ae,Et,fn,qi,ic){iK(Ae,Et)&&tK(Ae,Et,fn,qi,ic)}function E5(Ae,Et,fn,qi,ic){iK(Ae,Et)||tK(Ae,Et,fn,qi,ic)}function wE(Ae,Et){return s.onlyPrintJsDocStyle?F$e(Ae,Et)||g7(Ae,Et):!0}function tK(Ae,Et,fn,qi,ic){!Ee||!wE(Ee.text,Ae)||(mn||(Uye(Tg(),Pt,ic,Ae),mn=!0),$m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi?Pt.writeLine():fn===3&&Pt.writeSpace(" "))}function Ux(Ae){jn||Ae===-1||BE(Ae,!0)}function Aq(Ae){nK(Ae,rK)}function rK(Ae,Et,fn,qi){!Ee||!wE(Ee.text,Ae)||(Pt.isAtStartOfLine()||Pt.writeSpace(" "),$m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi&&Pt.writeLine())}function Xw(Ae,Et,fn){jn||(An(),nK(Ae,Et?rK:fn?dq:yse),si())}function dq(Ae,Et,fn){Ee&&($m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),fn===2&&Pt.writeLine())}function yse(Ae,Et,fn,qi){Ee&&($m(Ae),rU(Ee.text,Tg(),Pt,Ae,Et,ge),$m(Et),qi?Pt.writeLine():Pt.writeSpace(" "))}function pq(Ae,Et){Ee&&(st===-1||Ae!==st)&&(fq(Ae)?I9(Et):GD(Ee.text,Ae,Et,Ae))}function nK(Ae,Et){Ee&&(ir===-1||Ae!==ir&&Ae!==zt)&&dF(Ee.text,Ae,Et)}function fq(Ae){return Br!==void 0&&Ei(Br).nodePos===Ae}function I9(Ae){if(!Ee)return;let Et=Ei(Br).detachedCommentEndPos;Br.length-1?Br.pop():Br=void 0,GD(Ee.text,Et,Ae,Et)}function B1(Ae){let Et=Ee&&xZe(Ee.text,Tg(),Pt,LN,Ae,ge,jn);Et&&(Br?Br.push(Et):Br=[Et])}function LN(Ae,Et,fn,qi,ic,Oc){!Ee||!wE(Ee.text,qi)||($m(qi),rU(Ae,Et,fn,qi,ic,Oc),$m(ic))}function iK(Ae,Et){return!!Ee&&Ore(Ee.text,Ae,Et)}function sK(Ae,Et){let fn=Dn(3,Ae,Et);jA(Et),fn(Ae,Et),Uo(Et)}function jA(Ae){let Et=tA(Ae),fn=XT(Ae),qi=fn.source||ur;Ae.kind!==354&&!(Et&32)&&fn.pos>=0&&S5(fn.source||ur,mS(qi,fn.pos)),Et&128&&(Dt=!0)}function Uo(Ae){let Et=tA(Ae),fn=XT(Ae);Et&128&&(Dt=!1),Ae.kind!==354&&!(Et&64)&&fn.end>=0&&S5(fn.source||ur,fn.end)}function mS(Ae,Et){return Ae.skipTrivia?Ae.skipTrivia(Et):Yu(Ae.text,Et)}function $m(Ae){if(Dt||wB(Ae)||aK(ur))return;let{line:Et,character:fn}=Ra(ur,Ae);tr.addMapping(Pt.getLine(),Pt.getColumn(),Gr,Et,fn,void 0)}function S5(Ae,Et){if(Ae!==ur){let fn=ur,qi=Gr;kQ(Ae),$m(Et),v5(fn,qi)}else $m(Et)}function oK(Ae,Et,fn,qi,ic){if(Dt||Ae&&Xge(Ae))return ic(Et,fn,qi);let Oc=Ae&&Ae.emitNode,zl=Oc&&Oc.flags||0,Vc=Oc&&Oc.tokenSourceMapRanges&&Oc.tokenSourceMapRanges[Et],_A=Vc&&Vc.source||ur;return qi=mS(_A,Vc?Vc.pos:qi),!(zl&256)&&qi>=0&&S5(_A,qi),qi=ic(Et,fn,qi),Vc&&(qi=Vc.end),!(zl&512)&&qi>=0&&S5(_A,qi),qi}function kQ(Ae){if(!Dt){if(ur=Ae,Ae===dt){Gr=pr;return}aK(Ae)||(Gr=tr.addSource(Ae.fileName),s.inlineSources&&tr.setSourceContent(Gr,Ae.text),dt=Ae,pr=Gr)}}function v5(Ae,Et){ur=Ae,Gr=Et}function aK(Ae){return aA(Ae.fileName,".json")}}function UBs(){let s=[];return s[1024]=["{","}"],s[2048]=["(",")"],s[4096]=["<",">"],s[8192]=["[","]"],s}function KBs(s){return Qtn[s&15360][0]}function jBs(s){return Qtn[s&15360][1]}function zBs(s,c,g,d){c(s)}function qBs(s,c,g,d){c(s,g.select(d))}function $Bs(s,c,g,d){c(s,g)}function ews(s,c){return s.length===1?zBs:typeof c=="object"?qBs:$Bs}function j9e(s,c,g){if(!s.getDirectories||!s.readDirectory)return;let d=new Map,h=_d(g);return{useCaseSensitiveFileNames:g,fileExists:re,readFile:(Ye,Tt)=>s.readFile(Ye,Tt),directoryExists:s.directoryExists&&ge,getDirectories:_e,readDirectory:Ee,createDirectory:s.createDirectory&&Ie,writeFile:s.writeFile&&ee,addOrDeleteFileOrDirectory:Ze,addOrDeleteFile:We,clearCache:$e,realpath:s.realpath&&Ne};function _(Ye){return Ou(Ye,c,h)}function S(Ye){return d.get(hp(Ye))}function R(Ye){let Tt=S(Mo(Ye));return Tt&&(Tt.sortedAndCanonicalizedFiles||(Tt.sortedAndCanonicalizedFiles=Tt.files.map(h).sort(),Tt.sortedAndCanonicalizedDirectories=Tt.directories.map(h).sort()),Tt)}function T(Ye){return gp(iu(Ye))}function W(Ye,Tt){var ot;if(!s.realpath||hp(_(s.realpath(Ye)))===Tt){let Qe={files:At(s.readDirectory(Ye,void 0,void 0,["*.*"]),T)||[],directories:s.getDirectories(Ye)||[]};return d.set(hp(Tt),Qe),Qe}if((ot=s.directoryExists)!=null&&ot.call(s,Ye))return d.set(Tt,!1),!1}function V(Ye,Tt){Tt=hp(Tt);let ot=S(Tt);if(ot)return ot;try{return W(Ye,Tt)}catch{pe.assert(!d.has(hp(Tt)));return}}function M(Ye,Tt){return Wc(Ye,Tt,Fl,Ca)>=0}function ee(Ye,Tt,ot){let Qe=_(Ye),mt=R(Qe);return mt&&Ue(mt,T(Ye),!0),s.writeFile(Ye,Tt,ot)}function re(Ye){let Tt=_(Ye),ot=R(Tt);return ot&&M(ot.sortedAndCanonicalizedFiles,h(T(Ye)))||s.fileExists(Ye)}function ge(Ye){let Tt=_(Ye);return d.has(hp(Tt))||s.directoryExists(Ye)}function Ie(Ye){let Tt=_(Ye),ot=R(Tt);if(ot){let Qe=T(Ye),mt=h(Qe),ht=ot.sortedAndCanonicalizedDirectories;Gc(ht,mt,Ca)&&ot.directories.push(Qe)}s.createDirectory(Ye)}function _e(Ye){let Tt=_(Ye),ot=V(Ye,Tt);return ot?ot.directories.slice():s.getDirectories(Ye)}function Ee(Ye,Tt,ot,Qe,mt){let ht=_(Ye),_t=V(Ye,ht),Rt;if(_t!==void 0)return Sbe(Ye,Tt,ot,Qe,g,c,mt,Lt,Ne);return s.readDirectory(Ye,Tt,ot,Qe,mt);function Lt(Pt){let _r=_(Pt);if(_r===ht)return _t||Ke(Pt,_r);let Gt=V(Pt,_r);return Gt!==void 0?Gt||Ke(Pt,_r):wbe}function Ke(Pt,_r){if(Rt&&_r===ht)return Rt;let Gt={files:At(s.readDirectory(Pt,void 0,void 0,["*.*"]),T)||E,directories:s.getDirectories(Pt)||E};return _r===ht&&(Rt=Gt),Gt}}function Ne(Ye){return s.realpath?s.realpath(Ye):Ye}function Te(Ye){pE(Mo(Ye),Tt=>d.delete(hp(Tt))?!0:void 0)}function Ze(Ye,Tt){if(S(Tt)!==void 0){$e();return}let Qe=R(Tt);if(!Qe){Te(Tt);return}if(!s.directoryExists){$e();return}let mt=T(Ye),ht={fileExists:s.fileExists(Ye),directoryExists:s.directoryExists(Ye)};return ht.directoryExists||M(Qe.sortedAndCanonicalizedDirectories,h(mt))?$e():Ue(Qe,mt,ht.fileExists),ht}function We(Ye,Tt,ot){if(ot===1)return;let Qe=R(Tt);Qe?Ue(Qe,T(Ye),ot===0):Te(Tt)}function Ue(Ye,Tt,ot){let Qe=Ye.sortedAndCanonicalizedFiles,mt=h(Tt);if(ot)Gc(Qe,mt,Ca)&&Ye.files.push(Tt);else{let ht=Wc(Qe,mt,Fl,Ca);if(ht>=0){Qe.splice(ht,1);let _t=Ye.files.findIndex(Rt=>h(Rt)===mt);Ye.files.splice(_t,1)}}}function $e(){d.clear()}}var f3t=(s=>(s[s.Update=0]="Update",s[s.RootNamesAndUpdate=1]="RootNamesAndUpdate",s[s.Full=2]="Full",s[s.Resolutions=3]="Resolutions",s))(f3t||{});function z9e(s,c,g,d,h){var _;let S=Ru(((_=c?.configFile)==null?void 0:_.extendedSourceFiles)||E,h);g.forEach((R,T)=>{S.has(T)||(R.projects.delete(s),R.close())}),S.forEach((R,T)=>{let W=g.get(T);W?W.projects.add(s):g.set(T,{projects:new Set([s]),watcher:d(R,T),close:()=>{let V=g.get(T);!V||V.projects.size!==0||(V.watcher.close(),g.delete(T))}})})}function ttt(s,c){c.forEach(g=>{g.projects.delete(s)&&g.close()})}function q9e(s,c,g){s.delete(c)&&s.forEach(({extendedResult:d},h)=>{var _;(_=d.extendedSourceFiles)!=null&&_.some(S=>g(S)===c)&&q9e(s,h,g)})}function rtt(s,c,g){Q7(c,s.getMissingFilePaths(),{createNewValue:g,onDeleteValue:dv})}function HEe(s,c,g){c?Q7(s,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:Cv,onExistingValue:h}):Fy(s,Cv);function d(_,S){return{watcher:g(_,S),flags:S}}function h(_,S,R){_.flags!==S&&(_.watcher.close(),s.set(R,d(R,S)))}}function YEe({watchedDirPath:s,fileOrDirectory:c,fileOrDirectoryPath:g,configFileName:d,options:h,program:_,extraFileExtensions:S,currentDirectory:R,useCaseSensitiveFileNames:T,writeLog:W,toPath:V,getScriptKind:M}){let ee=gVe(g);if(!ee)return W(`Project: ${d} Detected ignored path: ${c}`),!0;if(g=ee,g===s)return!1;if(E0(g)&&!(Bbe(c,h,S)||Ee()))return W(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(ZWt(c,h.configFile.configFileSpecs,Xc(Mo(d),R),T,R))return W(`Project: ${d} Detected excluded file: ${c}`),!0;if(!_||h.outFile||h.outDir)return!1;if(PC(g)){if(h.declarationDir)return!1}else if(!fu(g,uU))return!1;let re=s0(g),ge=Ki(_)?void 0:ktt(_)?_.getProgramOrUndefined():_,Ie=!ge&&!Ki(_)?_:void 0;if(_e(re+".ts")||_e(re+".tsx"))return W(`Project: ${d} Detected output file: ${c}`),!0;return!1;function _e(Ne){return ge?!!ge.getSourceFileByPath(Ne):Ie?Ie.state.fileInfos.has(Ne):!!de(_,Te=>V(Te)===Ne)}function Ee(){if(!M)return!1;switch(M(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return TF(h);case 6:return NP(h);case 0:return!1}}}function I3t(s,c){return s?s.isEmittedFile(c):!1}var h3t=(s=>(s[s.None=0]="None",s[s.TriggerOnly=1]="TriggerOnly",s[s.Verbose=2]="Verbose",s))(h3t||{});function ntt(s,c,g,d){xC(c===2?g:Dc);let h={watchFile:(Ie,_e,Ee,Ne)=>s.watchFile(Ie,_e,Ee,Ne),watchDirectory:(Ie,_e,Ee,Ne)=>s.watchDirectory(Ie,_e,(Ee&1)!==0,Ne)},_=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,S=c===2?{watchFile:M,watchDirectory:ee}:_||h,R=c===2?V:Vde;return{watchFile:T("watchFile"),watchDirectory:T("watchDirectory")};function T(Ie){return(_e,Ee,Ne,Te,Ze,We)=>{var Ue;return v9e(_e,Ie==="watchFile"?Te?.excludeFiles:Te?.excludeDirectories,W(),((Ue=s.getCurrentDirectory)==null?void 0:Ue.call(s))||"")?R(_e,Ne,Te,Ze,We):S[Ie].call(void 0,_e,Ee,Ne,Te,Ze,We)}}function W(){return typeof s.useCaseSensitiveFileNames=="boolean"?s.useCaseSensitiveFileNames:s.useCaseSensitiveFileNames()}function V(Ie,_e,Ee,Ne,Te){return g(`ExcludeWatcher:: Added:: ${ge(Ie,_e,Ee,Ne,Te,d)}`),{close:()=>g(`ExcludeWatcher:: Close:: ${ge(Ie,_e,Ee,Ne,Te,d)}`)}}function M(Ie,_e,Ee,Ne,Te,Ze){g(`FileWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`);let We=_.watchFile(Ie,_e,Ee,Ne,Te,Ze);return{close:()=>{g(`FileWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`),We.close()}}}function ee(Ie,_e,Ee,Ne,Te,Ze){let We=`DirectoryWatcher:: Added:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(We);let Ue=Fg(),$e=_.watchDirectory(Ie,_e,Ee,Ne,Te,Ze),Ye=Fg()-Ue;return g(`Elapsed:: ${Ye}ms ${We}`),{close:()=>{let Tt=`DirectoryWatcher:: Close:: ${ge(Ie,Ee,Ne,Te,Ze,d)}`;g(Tt);let ot=Fg();$e.close();let Qe=Fg()-ot;g(`Elapsed:: ${Qe}ms ${Tt}`)}}}function re(Ie){return(_e,Ee,Ne,Te,Ze,We)=>h[Ie].call(void 0,_e,(...Ue)=>{let $e=`${Ie==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${Ue[0]} ${Ue[1]!==void 0?Ue[1]:""}:: ${ge(_e,Ne,Te,Ze,We,d)}`;g($e);let Ye=Fg();Ee.call(void 0,...Ue);let Tt=Fg()-Ye;g(`Elapsed:: ${Tt}ms ${$e}`)},Ne,Te,Ze,We)}function ge(Ie,_e,Ee,Ne,Te,Ze){return`WatchInfo: ${Ie} ${_e} ${JSON.stringify(Ee)} ${Ze?Ze(Ne,Te):Te===void 0?Ne:`${Ne} ${Te}`}`}}function QEe(s){let c=s?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function Cv(s){s.watcher.close()}function itt(s,c,g="tsconfig.json"){return pE(s,d=>{let h=Ro(d,g);return c(h)?h:void 0})}function stt(s,c){let g=Mo(c),d=Xp(s)?s:Ro(g,s);return iu(d)}function m3t(s,c,g){let d;return F(s,_=>{let S=AB(_,c);if(S.pop(),!d){d=S;return}let R=Math.min(d.length,S.length);for(let T=0;T{let _;try{Mc("beforeIORead"),_=s(g),Mc("afterIORead"),Pf("I/O Read","beforeIORead","afterIORead")}catch(S){h&&h(S.message),_=""}return _!==void 0?vz(g,_,d,c):void 0}}function att(s,c,g){return(d,h,_,S)=>{try{Mc("beforeIOWrite"),Qye(d,h,_,s,c,g),Mc("afterIOWrite"),Pf("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){S&&S(R.message)}}}function $9e(s,c,g=yd){let d=new Map,h=_d(g.useCaseSensitiveFileNames);function _(V){return d.has(V)?!0:(W.directoryExists||g.directoryExists)(V)?(d.set(V,!0),!0):!1}function S(){return Mo(iu(g.getExecutingFilePath()))}let R=uN(s),T=g.realpath&&(V=>g.realpath(V)),W={getSourceFile:ott(V=>W.readFile(V),c),getDefaultLibLocation:S,getDefaultLibFileName:V=>Ro(S(),Hs(V)),writeFile:att((V,M,ee)=>g.writeFile(V,M,ee),V=>(W.createDirectory||g.createDirectory)(V),V=>_(V)),getCurrentDirectory:FA(()=>g.getCurrentDirectory()),useCaseSensitiveFileNames:()=>g.useCaseSensitiveFileNames,getCanonicalFileName:h,getNewLine:()=>R,fileExists:V=>g.fileExists(V),readFile:V=>g.readFile(V),trace:V=>g.write(V+R),directoryExists:V=>g.directoryExists(V),getEnvironmentVariable:V=>g.getEnvironmentVariable?g.getEnvironmentVariable(V):"",getDirectories:V=>g.getDirectories(V),realpath:T,readDirectory:(V,M,ee,re,ge)=>g.readDirectory(V,M,ee,re,ge),createDirectory:V=>g.createDirectory(V),createHash:$i(g,g.createHash)};return W}function Gde(s,c,g){let d=s.readFile,h=s.fileExists,_=s.directoryExists,S=s.createDirectory,R=s.writeFile,T=new Map,W=new Map,V=new Map,M=new Map,ee=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:re(_e,Ie)},re=(Ie,_e)=>{let Ee=d.call(s,_e);return T.set(Ie,Ee!==void 0?Ee:!1),Ee};s.readFile=Ie=>{let _e=c(Ie),Ee=T.get(_e);return Ee!==void 0?Ee!==!1?Ee:void 0:!aA(Ie,".json")&&!l3t(Ie)?d.call(s,Ie):re(_e,Ie)};let ge=g?(Ie,_e,Ee,Ne)=>{let Te=c(Ie),Ze=typeof _e=="object"?_e.impliedNodeFormat:void 0,We=M.get(Ze),Ue=We?.get(Te);if(Ue)return Ue;let $e=g(Ie,_e,Ee,Ne);return $e&&(PC(Ie)||aA(Ie,".json"))&&M.set(Ze,(We||new Map).set(Te,$e)),$e}:void 0;return s.fileExists=Ie=>{let _e=c(Ie),Ee=W.get(_e);if(Ee!==void 0)return Ee;let Ne=h.call(s,Ie);return W.set(_e,!!Ne),Ne},R&&(s.writeFile=(Ie,_e,...Ee)=>{let Ne=c(Ie);W.delete(Ne);let Te=T.get(Ne);Te!==void 0&&Te!==_e?(T.delete(Ne),M.forEach(Ze=>Ze.delete(Ne))):ge&&M.forEach(Ze=>{let We=Ze.get(Ne);We&&We.text!==_e&&Ze.delete(Ne)}),R.call(s,Ie,_e,...Ee)}),_&&(s.directoryExists=Ie=>{let _e=c(Ie),Ee=V.get(_e);if(Ee!==void 0)return Ee;let Ne=_.call(s,Ie);return V.set(_e,!!Ne),Ne},S&&(s.createDirectory=Ie=>{let _e=c(Ie);V.delete(_e),S.call(s,Ie)})),{originalReadFile:d,originalFileExists:h,originalDirectoryExists:_,originalCreateDirectory:S,originalWriteFile:R,getSourceFileWithCache:ge,readFileWithCache:ee}}function $tn(s,c,g){let d;return d=Or(d,s.getConfigFileParsingDiagnostics()),d=Or(d,s.getOptionsDiagnostics(g)),d=Or(d,s.getSyntacticDiagnostics(c,g)),d=Or(d,s.getGlobalDiagnostics(g)),d=Or(d,s.getSemanticDiagnostics(c,g)),Ly(s.getCompilerOptions())&&(d=Or(d,s.getDeclarationDiagnostics(c,g))),ui(d||E)}function ern(s,c){let g="";for(let d of s)g+=ctt(d,c);return g}function ctt(s,c){let g=`${_b(s)} TS${s.code}: ${wN(s.messageText,c.getNewLine())}${c.getNewLine()}`;if(s.file){let{line:d,character:h}=Ra(s.file,s.start),_=s.file.fileName;return`${r2(_,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${h+1}): `+g}return g}var _3t=(s=>(s.Grey="\x1B[90m",s.Red="\x1B[91m",s.Yellow="\x1B[93m",s.Blue="\x1B[94m",s.Cyan="\x1B[96m",s))(_3t||{}),y3t="\x1B[7m",b3t=" ",trn="\x1B[0m",rrn="...",tws=" ",nrn=" ";function irn(s){switch(s){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return pe.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function AQ(s,c){return c+s+trn}function srn(s,c,g,d,h,_){let{line:S,character:R}=Ra(s,c),{line:T,character:W}=Ra(s,c+g),V=Ra(s,s.text.length).line,M=T-S>=4,ee=(T+1+"").length;M&&(ee=Math.max(rrn.length,ee));let re="";for(let ge=S;ge<=T;ge++){re+=_.getNewLine(),M&&S+1g.getCanonicalFileName(T)):s.fileName,R="";return R+=d(S,"\x1B[96m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R+=":",R+=d(`${_+1}`,"\x1B[93m"),R}function E3t(s,c){let g="";for(let d of s){if(d.file){let{file:h,start:_}=d;g+=ltt(h,_,c),g+=" - "}if(g+=AQ(_b(d),irn(d.category)),g+=AQ(` TS${d.code}: `,"\x1B[90m"),g+=wN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(g+=c.getNewLine(),g+=srn(d.file,d.start,d.length,"",irn(d.category),c)),d.relatedInformation){g+=c.getNewLine();for(let{file:h,start:_,length:S,messageText:R}of d.relatedInformation)h&&(g+=c.getNewLine(),g+=tws+ltt(h,_,c),g+=srn(h,_,S,nrn,"\x1B[96m",c)),g+=c.getNewLine(),g+=nrn+wN(R,c.getNewLine())}g+=c.getNewLine()}return g}function wN(s,c,g=0){if(Xs(s))return s;if(s===void 0)return"";let d="";if(g){d+=c;for(let h=0;hgtt(c,s,g)};function Att(s,c,g,d,h){return{nameAndMode:tVe,resolve:(_,S)=>BU(_,s,g,d,h,c,S)}}function B3t(s){return Xs(s)?s:s.fileName}var lrn={getName:B3t,getMode:(s,c,g)=>S3t(s,c&&sVe(c,g))};function rVe(s,c,g,d,h){return{nameAndMode:lrn,resolve:(_,S)=>QWt(_,s,g,d,c,h,S)}}function XEe(s,c,g,d,h,_,S,R){if(s.length===0)return E;let T=[],W=new Map,V=R(c,g,d,_,S);for(let M of s){let ee=V.nameAndMode.getName(M),re=V.nameAndMode.getMode(M,h,g?.commandLine.options||d),ge=Cde(ee,re),Ie=W.get(ge);Ie||W.set(ge,Ie=V.resolve(ee,re)),T.push(Ie)}return T}var Fde="__inferred type names__.ts";function nVe(s,c,g){let d=s.configFilePath?Mo(s.configFilePath):c;return Ro(d,`__lib_node_modules_lookup_${g}__.ts`)}function dtt(s){let c=s.split("."),g=c[1],d=2;for(;c[d]&&c[d]!=="d";)g+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+g}function K3(s){switch(s?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function Fie(s){return s.pos!==void 0}function Zde(s,c){var g,d,h,_;let S=pe.checkDefined(s.getSourceFileByPath(c.file)),{kind:R,index:T}=c,W,V,M;switch(R){case 3:let ee=KEe(S,T);if(M=(d=(g=s.getResolvedModuleFromModuleSpecifier(ee,S))==null?void 0:g.resolvedModule)==null?void 0:d.packageId,ee.pos===-1)return{file:S,packageId:M,text:ee.text};W=Yu(S.text,ee.pos),V=ee.end;break;case 4:({pos:W,end:V}=S.referencedFiles[T]);break;case 5:({pos:W,end:V}=S.typeReferenceDirectives[T]),M=(_=(h=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S.typeReferenceDirectives[T],S))==null?void 0:h.resolvedTypeReferenceDirective)==null?void 0:_.packageId;break;case 7:({pos:W,end:V}=S.libReferenceDirectives[T]);break;default:return pe.assertNever(R)}return{file:S,pos:W,end:V,packageId:M}}function ptt(s,c,g,d,h,_,S,R,T,W){if(!s||R?.()||!Sc(s.getRootFileNames(),c))return!1;let V;if(!Sc(s.getProjectReferences(),W,Ie)||s.getSourceFiles().some(re))return!1;let M=s.getMissingFilePaths();if(M&&Dh(M,h))return!1;let ee=s.getCompilerOptions();if(!_Ae(ee,g)||s.resolvedLibReferences&&Dh(s.resolvedLibReferences,(Ee,Ne)=>S(Ne)))return!1;if(ee.configFile&&g.configFile)return ee.configFile.text===g.configFile.text;return!0;function re(Ee){return!ge(Ee)||_(Ee.path)}function ge(Ee){return Ee.version===d(Ee.resolvedPath,Ee.fileName)}function Ie(Ee,Ne,Te){return Vre(Ee,Ne)&&_e(s.getResolvedProjectReferences()[Te],Ee)}function _e(Ee,Ne){if(Ee){if(k(V,Ee))return!0;let Ze=xz(Ne),We=T(Ze);return!We||Ee.commandLine.options.configFile!==We.options.configFile||!Sc(Ee.commandLine.fileNames,We.fileNames)?!1:((V||(V=[])).push(Ee),!F(Ee.references,(Ue,$e)=>!_e(Ue,Ee.commandLine.projectReferences[$e])))}let Te=xz(Ne);return!T(Te)}}function dQ(s){return s.options.configFile?[...s.options.configFile.parseDiagnostics,...s.errors]:s.errors}function JEe(s,c,g,d){let h=iVe(s,c,g,d);return typeof h=="object"?h.impliedNodeFormat:h}function iVe(s,c,g,d){let h=k_(d),_=3<=h&&h<=99||WP(s);return fu(s,[".d.mts",".mts",".mjs"])?99:fu(s,[".d.cts",".cts",".cjs"])?1:_&&fu(s,[".d.ts",".ts",".tsx",".js",".jsx"])?S():void 0;function S(){let R=_de(c,g,d),T=[];R.failedLookupLocations=T,R.affectingLocations=T;let W=yde(Mo(s),R);return{impliedNodeFormat:W?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:T,packageJsonScope:W}}}var urn=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode.code,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function rws(s,c){return s?S0(s.getCompilerOptions(),c,H$e):!1}function nws(s,c,g,d,h,_){return{rootNames:s,options:c,host:g,oldProgram:d,configFileParsingDiagnostics:h,typeScriptVersion:_}}function UEe(s,c,g,d,h){var _,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze;let We=Ki(s)?nws(s,c,g,d,h):s,{rootNames:Ue,options:$e,configFileParsingDiagnostics:Ye,projectReferences:Tt,typeScriptVersion:ot,host:Qe}=We,{oldProgram:mt}=We;We=void 0,s=void 0;for(let br of SWt)if(Da($e,br.name)&&typeof $e[br.name]=="string")throw new Error(`${br.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let ht=FA(()=>Ln("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),_t,Rt,Lt,Ke,Pt,_r,Gt,nt,Dt,tr=w3t(jl),ur,Gr,dt,pr,st,ir,zt,Ht,Br,mn=typeof $e.maxNodeModuleJsDepth=="number"?$e.maxNodeModuleJsDepth:0,jn=0,Zi=new Map,Ns=new Map;(_=ki)==null||_.push(ki.Phase.Program,"createProgram",{configFilePath:$e.configFilePath,rootDir:$e.rootDir},!0),Mc("beforeProgram");let An=Qe||C3t($e),si=aVe(An),ks=$e.noLib,Ic=FA(()=>An.getDefaultLibFileName($e)),su=An.getDefaultLibLocation?An.getDefaultLibLocation():Mo(Ic()),Zn=!1,ya=An.getCurrentDirectory(),Gl=z7($e),ba=q7($e,Gl),Wo=new Map,hc,yr,hn,Oi,lo=An.hasInvalidatedResolutions||As;An.resolveModuleNameLiterals?(Oi=An.resolveModuleNameLiterals.bind(An),hn=(S=An.getModuleResolutionCache)==null?void 0:S.call(An)):An.resolveModuleNames?(Oi=(br,sn,ei,is,Qs,Oo)=>An.resolveModuleNames(br.map(v3t),sn,Oo?.map(v3t),ei,is,Qs).map(Os=>Os?Os.extension!==void 0?{resolvedModule:Os}:{resolvedModule:{...Os,extension:tz(Os.resolvedFileName)}}:crn),hn=(R=An.getModuleResolutionCache)==null?void 0:R.call(An)):(hn=Tie(ya,qm,$e),Oi=(br,sn,ei,is,Qs)=>XEe(br,sn,ei,is,Qs,An,hn,Att));let pa;if(An.resolveTypeReferenceDirectiveReferences)pa=An.resolveTypeReferenceDirectiveReferences.bind(An);else if(An.resolveTypeReferenceDirectives)pa=(br,sn,ei,is,Qs)=>An.resolveTypeReferenceDirectives(br.map(B3t),sn,ei,is,Qs?.impliedNodeFormat).map(Oo=>({resolvedTypeReferenceDirective:Oo}));else{let br=D9e(ya,qm,void 0,hn?.getPackageJsonInfoCache(),hn?.optionsToRedirectsKey);pa=(sn,ei,is,Qs,Oo)=>XEe(sn,ei,is,Qs,Oo,An,br,rVe)}let Oa=An.hasInvalidatedLibResolutions||As,tl;if(An.resolveLibrary)tl=An.resolveLibrary.bind(An);else{let br=Tie(ya,qm,$e,hn?.getPackageJsonInfoCache());tl=(sn,ei,is)=>k9e(sn,ei,is,An,br)}let Qu=new Map,Tg=new Map,Cs=dl(),Tu,Pr=new Map,Pn=new Map,pt=An.useCaseSensitiveFileNames()?new Map:void 0,on,it,nr,Fr,Kr=!!((T=An.useSourceOfProjectReferenceRedirect)!=null&&T.call(An))&&!$e.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Dn,fileExists:hr,directoryExists:En}=iws({compilerHost:An,getSymlinkCache:fS,useSourceOfProjectReferenceRedirect:Kr,toPath:Mn,getResolvedProjectReferences:Ag,getRedirectFromOutput:XI,forEachResolvedProjectReference:dI}),Ni=An.readFile.bind(An);(W=ki)==null||W.push(ki.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!mt});let Gi=rws(mt,$e);(V=ki)==null||V.pop();let nn;if((M=ki)==null||M.push(ki.Phase.Program,"tryReuseStructureFromOldProgram",{}),nn=fs(),(ee=ki)==null||ee.pop(),nn!==2){if(_t=[],Rt=[],Tt&&(on||(on=Tt.map(xN)),Ue.length&&on?.forEach((br,sn)=>{if(!br)return;let ei=br.commandLine.options.outFile;if(Kr){if(ei||i0(br.commandLine.options)===0)for(let is of br.commandLine.fileNames)Vb(is,{kind:1,index:sn})}else if(ei)Vb(fN(ei,".d.ts"),{kind:2,index:sn});else if(i0(br.commandLine.options)===0){let is=FA(()=>RU(br.commandLine,!An.useCaseSensitiveFileNames()));for(let Qs of br.commandLine.fileNames)!PC(Qs)&&!aA(Qs,".json")&&Vb(kde(Qs,br.commandLine,!An.useCaseSensitiveFileNames(),is),{kind:2,index:sn})}})),(re=ki)==null||re.push(ki.Phase.Program,"processRootFiles",{count:Ue.length}),F(Ue,(br,sn)=>Lg(br,!1,!1,{kind:0,index:sn})),(ge=ki)==null||ge.pop(),ur??(ur=Ue.length?R9e($e,An):E),Gr=wie(),ur.length){(Ie=ki)==null||Ie.push(ki.Phase.Program,"processTypeReferences",{count:ur.length});let br=$e.configFilePath?Mo($e.configFilePath):ya,sn=Ro(br,Fde),ei=Vn(ur,sn);for(let is=0;is{Lg(Wx(sn),!0,!1,{kind:6,index:ei})})}Lt=bo(_t,tn).concat(Rt),_t=void 0,Rt=void 0,Gt=void 0}if(mt&&An.onReleaseOldSourceFile){let br=mt.getSourceFiles();for(let sn of br){let ei=Xg(sn.resolvedPath);(Gi||!ei||ei.impliedNodeFormat!==sn.impliedNodeFormat||sn.resolvedPath===sn.path&&ei.resolvedPath!==sn.path)&&An.onReleaseOldSourceFile(sn,mt.getCompilerOptions(),!!Xg(sn.path),ei)}An.getParsedCommandLine||mt.forEachResolvedProjectReference(sn=>{d_(sn.sourceFile.path)||An.onReleaseOldSourceFile(sn.sourceFile,mt.getCompilerOptions(),!1,void 0)})}mt&&An.onReleaseParsedCommandLine&&gz(mt.getProjectReferences(),mt.getResolvedProjectReferences(),(br,sn,ei)=>{let is=sn?.commandLine.projectReferences[ei]||mt.getProjectReferences()[ei],Qs=xz(is);it?.has(Mn(Qs))||An.onReleaseParsedCommandLine(Qs,br,mt.getCompilerOptions())}),mt=void 0,pr=void 0,ir=void 0,Ht=void 0;let bn={getRootFileNames:()=>Ue,getSourceFile:jp,getSourceFileByPath:Xg,getSourceFiles:()=>Lt,getMissingFilePaths:()=>Pn,getModuleResolutionCache:()=>hn,getFilesByNameMap:()=>Pr,getCompilerOptions:()=>$e,getSyntacticDiagnostics:dS,getOptionsDiagnostics:Ss,getGlobalDiagnostics:rl,getSemanticDiagnostics:gu,getCachedSemanticDiagnostics:bg,getSuggestionDiagnostics:mr,getDeclarationDiagnostics:oi,getBindAndCheckDiagnostics:KA,getProgramDiagnostics:TA,getTypeChecker:pp,getClassifiableNames:es,getCommonSourceDirectory:ci,emit:Dl,getCurrentDirectory:()=>ya,getNodeCount:()=>pp().getNodeCount(),getIdentifierCount:()=>pp().getIdentifierCount(),getSymbolCount:()=>pp().getSymbolCount(),getTypeCount:()=>pp().getTypeCount(),getInstantiationCount:()=>pp().getInstantiationCount(),getRelationCacheSizes:()=>pp().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>tr.getFileProcessingDiagnostics(),getAutomaticTypeDirectiveNames:()=>ur,getAutomaticTypeDirectiveResolutions:()=>Gr,isSourceFileFromExternalLibrary:wI,isSourceFileDefaultLibrary:AI,getModeForUsageLocation:bv,getEmitSyntaxForUsageLocation:XF,getModeForResolutionAtIndex:o9,getSourceFileFromReference:b1,getLibFileFromReference:oh,sourceFileToPackageName:Tg,redirectTargetsMap:Cs,usesUriStyleNodeCoreModules:Tu,resolvedModules:st,resolvedTypeReferenceDirectiveNames:zt,resolvedLibReferences:dt,getProgramDiagnosticsContainer:()=>tr,getResolvedModule:ds,getResolvedModuleFromModuleSpecifier:Mt,getResolvedTypeReferenceDirective:cn,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:Bt,forEachResolvedModule:xe,forEachResolvedTypeReferenceDirective:fr,getCurrentPackagesMap:()=>Br,typesPackageExists:Hn,packageBundlesTypes:Ot,isEmittedFile:MC,getConfigFileParsingDiagnostics:xd,getProjectReferences:_u,getResolvedProjectReferences:Ag,getRedirectFromSourceFile:af,getResolvedProjectReferenceByPath:d_,forEachResolvedProjectReference:dI,isSourceOfProjectReferenceRedirect:C2,getRedirectFromOutput:XI,getCompilerOptionsForFile:gy,getDefaultResolutionModeForFile:My,getEmitModuleFormatOfFile:aR,getImpliedNodeFormatForEmit:sk,shouldTransformImportCall:WB,emitBuildInfo:gg,fileExists:hr,readFile:Ni,directoryExists:En,getSymlinkCache:fS,realpath:(Te=An.realpath)==null?void 0:Te.bind(An),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getCanonicalFileName:qm,getFileIncludeReasons:()=>tr.getFileReasons(),structureIsReused:nn,writeFile:mc,getGlobalTypingsCacheLocation:$i(An,An.getGlobalTypingsCacheLocation)};return Dn(),Zn||at(),Mc("afterProgram"),Pf("Program","beforeProgram","afterProgram"),(Ze=ki)==null||Ze.pop(),bn;function ds(br,sn,ei){var is;return(is=st?.get(br.path))==null?void 0:is.get(sn,ei)}function Mt(br,sn){return sn??(sn=ms(br)),pe.assertIsDefined(sn,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ds(sn,br.text,bv(sn,br))}function cn(br,sn,ei){var is;return(is=zt?.get(br.path))==null?void 0:is.get(sn,ei)}function Bt(br,sn){return cn(sn,br.fileName,UP(br,sn))}function xe(br,sn){Je(st,br,sn)}function fr(br,sn){Je(zt,br,sn)}function Je(br,sn,ei){var is;ei?(is=br?.get(ei.path))==null||is.forEach((Qs,Oo,Os)=>sn(Qs,Oo,Os,ei.path)):br?.forEach((Qs,Oo)=>Qs.forEach((Os,co,Yc)=>sn(Os,co,Yc,Oo)))}function In(){return Br||(Br=new Map,xe(({resolvedModule:br})=>{br?.packageId&&Br.set(br.packageId.name,br.extension===".d.ts"||!!Br.get(br.packageId.name))}),Br)}function Hn(br){return In().has(G9e(br))}function Ot(br){return!!In().get(br)}function $r(br){var sn;(sn=br.resolutionDiagnostics)!=null&&sn.length&&tr.addFileProcessingDiagnostic({kind:2,diagnostics:br.resolutionDiagnostics})}function ri(br,sn,ei,is){if(An.resolveModuleNameLiterals||!An.resolveModuleNames)return $r(ei);if(!hn||Xr(sn))return;let Qs=Xc(br.originalFileName,ya),Oo=Mo(Qs),Os=Ys(br),co=hn.getFromNonRelativeNameCache(sn,is,Oo,Os);co&&$r(co)}function ao(br,sn,ei){var is,Qs;let Oo=Xc(sn.originalFileName,ya),Os=Ys(sn);(is=ki)==null||is.push(ki.Phase.Program,"resolveModuleNamesWorker",{containingFileName:Oo}),Mc("beforeResolveModule");let co=Oi(br,Oo,Os,$e,sn,ei);return Mc("afterResolveModule"),Pf("ResolveModule","beforeResolveModule","afterResolveModule"),(Qs=ki)==null||Qs.pop(),co}function Bs(br,sn,ei){var is,Qs;let Oo=Xs(sn)?void 0:sn,Os=Xs(sn)?sn:Xc(sn.originalFileName,ya),co=Oo&&Ys(Oo);(is=ki)==null||is.push(ki.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:Os}),Mc("beforeResolveTypeReference");let Yc=pa(br,Os,co,$e,Oo,ei);return Mc("afterResolveTypeReference"),Pf("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Qs=ki)==null||Qs.pop(),Yc}function Ys(br){var sn,ei;let is=af(br.originalFileName);if(is||!PC(br.originalFileName))return is?.resolvedRef;let Qs=(sn=XI(br.path))==null?void 0:sn.resolvedRef;if(Qs)return Qs;if(!An.realpath||!$e.preserveSymlinks||!br.originalFileName.includes(Vx))return;let Oo=Mn(An.realpath(br.originalFileName));return Oo===br.path||(ei=XI(Oo))==null?void 0:ei.resolvedRef}function tn(br,sn){return Zt(wn(br),wn(sn))}function wn(br){if(Jh(su,br.fileName,!1)){let sn=gp(br.fileName);if(sn==="lib.d.ts"||sn==="lib.es6.d.ts")return 0;let ei=aa(Nm(sn,"lib."),".d.ts"),is=A9e.indexOf(ei);if(is!==-1)return is+1}return A9e.length+2}function Mn(br){return Ou(br,ya,qm)}function ci(){let br=tr.getCommonSourceDirectory();if(br!==void 0)return br;let sn=Me(Lt,ei=>SP(ei,bn));return br=xde($e,()=>Xt(sn,ei=>ei.isDeclarationFile?void 0:ei.fileName),ya,qm,ei=>pS(sn,ei)),tr.setCommonSourceDirectory(br),br}function es(){var br;if(!_r){pp(),_r=new Set;for(let sn of Lt)(br=sn.classifiableNames)==null||br.forEach(ei=>_r.add(ei))}return _r}function Wi(br,sn){return Ui({entries:br,containingFile:sn,containingSourceFile:sn,redirectedReference:Ys(sn),nameAndModeGetter:tVe,resolutionWorker:ao,getResolutionFromOldProgram:(ei,is)=>mt?.getResolvedModule(sn,ei,is),getResolved:xL,canReuseResolutionsInFile:()=>sn===mt?.getSourceFile(sn.fileName)&&!lo(sn.path),resolveToOwnAmbientModule:!0})}function Vn(br,sn){let ei=Xs(sn)?void 0:sn;return Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:ei&&Ys(ei),nameAndModeGetter:lrn,resolutionWorker:Bs,getResolutionFromOldProgram:(is,Qs)=>{var Oo;return ei?mt?.getResolvedTypeReferenceDirective(ei,is,Qs):(Oo=mt?.getAutomaticTypeDirectiveResolutions())==null?void 0:Oo.get(is,Qs)},getResolved:c7,canReuseResolutionsInFile:()=>ei?ei===mt?.getSourceFile(ei.fileName)&&!lo(ei.path):!lo(Mn(sn))})}function Ui({entries:br,containingFile:sn,containingSourceFile:ei,redirectedReference:is,nameAndModeGetter:Qs,resolutionWorker:Oo,getResolutionFromOldProgram:Os,getResolved:co,canReuseResolutionsInFile:Yc,resolveToOwnAmbientModule:tu}){if(!br.length)return E;if(nn===0&&(!tu||!ei.ambientModuleNames.length))return Oo(br,sn,void 0);let $a,ru,gl,kf,Wb=Yc();for(let p_=0;p_gl[ru[MB]]=p_),gl):OB}function gs(){return!gz(mt.getProjectReferences(),mt.getResolvedProjectReferences(),(br,sn,ei)=>{let is=(sn?sn.commandLine.projectReferences:Tt)[ei],Qs=xN(is);return br?!Qs||Qs.sourceFile!==br.sourceFile||!Sc(br.commandLine.fileNames,Qs.commandLine.fileNames):Qs!==void 0},(br,sn)=>{let ei=sn?d_(sn.sourceFile.path).commandLine.projectReferences:Tt;return!Sc(br,ei,Vre)})}function fs(){var br;if(!mt)return 0;let sn=mt.getCompilerOptions();if(NJ(sn,$e))return 0;let ei=mt.getRootFileNames();if(!Sc(ei,Ue)||!gs())return 0;Tt&&(on=Tt.map(xN));let is=[],Qs=[];if(nn=2,Dh(mt.getMissingFilePaths(),$a=>An.fileExists($a)))return 0;let Oo=mt.getSourceFiles(),Os;($a=>{$a[$a.Exists=0]="Exists",$a[$a.Modified=1]="Modified"})(Os||(Os={}));let co=new Map;for(let $a of Oo){let ru=Hl($a.fileName,hn,An,$e),gl=An.getSourceFileByPath?An.getSourceFileByPath($a.fileName,$a.resolvedPath,ru,void 0,Gi):An.getSourceFile($a.fileName,ru,void 0,Gi);if(!gl)return 0;gl.packageJsonLocations=(br=ru.packageJsonLocations)!=null&&br.length?ru.packageJsonLocations:void 0,gl.packageJsonScope=ru.packageJsonScope,pe.assert(!gl.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let kf;if($a.redirectInfo){if(gl!==$a.redirectInfo.unredirected)return 0;kf=!1,gl=$a}else if(mt.redirectTargetsMap.has($a.path)){if(gl!==$a)return 0;kf=!1}else kf=gl!==$a;gl.path=$a.path,gl.originalFileName=$a.originalFileName,gl.resolvedPath=$a.resolvedPath,gl.fileName=$a.fileName;let Wb=mt.sourceFileToPackageName.get($a.path);if(Wb!==void 0){let OB=co.get(Wb),p_=kf?1:0;if(OB!==void 0&&p_===1||OB===1)return 0;co.set(Wb,p_)}kf?($a.impliedNodeFormat!==gl.impliedNodeFormat?nn=1:Sc($a.libReferenceDirectives,gl.libReferenceDirectives,yf)?$a.hasNoDefaultLib!==gl.hasNoDefaultLib?nn=1:Sc($a.referencedFiles,gl.referencedFiles,yf)?(Gp(gl),Sc($a.imports,gl.imports,rm)&&Sc($a.moduleAugmentations,gl.moduleAugmentations,rm)?($a.flags&12582912)!==(gl.flags&12582912)?nn=1:Sc($a.typeReferenceDirectives,gl.typeReferenceDirectives,yf)||(nn=1):nn=1):nn=1:nn=1,Qs.push(gl)):lo($a.path)&&(nn=1,Qs.push(gl)),is.push(gl)}if(nn!==2)return nn;for(let $a of Qs){let ru=Arn($a),gl=Wi(ru,$a);(ir??(ir=new Map)).set($a.path,gl);let kf=gy($a);Pre(ru,gl,v1=>mt.getResolvedModule($a,v1.text,eVe($a,v1,kf)),Ige)&&(nn=1);let OB=$a.typeReferenceDirectives,p_=Vn(OB,$a);(Ht??(Ht=new Map)).set($a.path,p_),Pre(OB,p_,v1=>mt.getResolvedTypeReferenceDirective($a,B3t(v1),UP(v1,$a)),hge)&&(nn=1)}if(nn!==2)return nn;if(fge(sn,$e)||mt.resolvedLibReferences&&Dh(mt.resolvedLibReferences,($a,ru)=>Ox(ru).actual!==$a.actual))return 1;if(An.hasChangedAutomaticTypeDirectiveNames){if(An.hasChangedAutomaticTypeDirectiveNames())return 1}else if(ur=R9e($e,An),!Sc(mt.getAutomaticTypeDirectiveNames(),ur))return 1;Pn=mt.getMissingFilePaths(),pe.assert(is.length===mt.getSourceFiles().length);for(let $a of is)Pr.set($a.path,$a);mt.getFilesByNameMap().forEach(($a,ru)=>{if(!$a){Pr.set(ru,$a);return}if($a.path===ru){mt.isSourceFileFromExternalLibrary($a)&&Ns.set($a.path,!0);return}Pr.set(ru,Pr.get($a.path))});let tu=sn.configFile&&sn.configFile===$e.configFile||!sn.configFile&&!$e.configFile&&!S0(sn,$e,Ww);return tr.reuseStateFromOldProgram(mt.getProgramDiagnosticsContainer(),tu),Zn=tu,Lt=is,ur=mt.getAutomaticTypeDirectiveNames(),Gr=mt.getAutomaticTypeDirectiveResolutions(),Tg=mt.sourceFileToPackageName,Cs=mt.redirectTargetsMap,Tu=mt.usesUriStyleNodeCoreModules,st=mt.resolvedModules,zt=mt.resolvedTypeReferenceDirectiveNames,dt=mt.resolvedLibReferences,Br=mt.getCurrentPackagesMap(),2}function bi(br){return{getCanonicalFileName:qm,getCommonSourceDirectory:bn.getCommonSourceDirectory,getCompilerOptions:bn.getCompilerOptions,getCurrentDirectory:()=>ya,getSourceFile:bn.getSourceFile,getSourceFileByPath:bn.getSourceFileByPath,getSourceFiles:bn.getSourceFiles,isSourceFileFromExternalLibrary:wI,getRedirectFromSourceFile:af,isSourceOfProjectReferenceRedirect:C2,getSymlinkCache:fS,writeFile:br||mc,isEmitBlocked:yu,shouldTransformImportCall:WB,getEmitModuleFormatOfFile:aR,getDefaultResolutionModeForFile:My,getModeForResolutionAtIndex:o9,readFile:sn=>An.readFile(sn),fileExists:sn=>{let ei=Mn(sn);return Xg(ei)?!0:Pn.has(ei)?!1:An.fileExists(sn)},realpath:$i(An,An.realpath),useCaseSensitiveFileNames:()=>An.useCaseSensitiveFileNames(),getBuildInfo:()=>{var sn;return(sn=bn.getBuildInfo)==null?void 0:sn.call(bn)},getSourceFileFromReference:(sn,ei)=>bn.getSourceFileFromReference(sn,ei),redirectTargetsMap:Cs,getFileIncludeReasons:bn.getFileIncludeReasons,createHash:$i(An,An.createHash),getModuleResolutionCache:()=>bn.getModuleResolutionCache(),trace:$i(An,An.trace),getGlobalTypingsCacheLocation:bn.getGlobalTypingsCacheLocation}}function mc(br,sn,ei,is,Qs,Oo){An.writeFile(br,sn,ei,is,Qs,Oo)}function gg(br){var sn,ei;(sn=ki)==null||sn.push(ki.Phase.Emit,"emitBuildInfo",{},!0),Mc("beforeEmit");let is=qet(A3t,bi(br),void 0,a3t,!1,!0);return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),(ei=ki)==null||ei.pop(),is}function Ag(){return on}function _u(){return Tt}function wI(br){return!!Ns.get(br.path)}function AI(br){if(!br.isDeclarationFile)return!1;if(br.hasNoDefaultLib)return!0;if($e.noLib)return!1;let sn=An.useCaseSensitiveFileNames()?MA:Mp;return $e.lib?jt($e.lib,ei=>{let is=dt.get(ei);return!!is&&sn(br.fileName,is.actual)}):sn(br.fileName,Ic())}function pp(){return Pt||(Pt=COt(bn))}function Dl(br,sn,ei,is,Qs,Oo,Os){var co,Yc;(co=ki)==null||co.push(ki.Phase.Emit,"emit",{path:br?.path},!0);let tu=YI(()=>tm(bn,br,sn,ei,is,Qs,Oo,Os));return(Yc=ki)==null||Yc.pop(),tu}function yu(br){return Wo.has(Mn(br))}function tm(br,sn,ei,is,Qs,Oo,Os,co){if(!Os){let ru=Itt(br,sn,ei,is);if(ru)return ru}let Yc=pp(),tu=Yc.getEmitResolver($e.outFile?void 0:sn,is,zet(Qs,Os));Mc("beforeEmit");let $a=Yc.runWithCancellationToken(is,()=>qet(tu,bi(ei),sn,c3t($e,Oo,Qs),Qs,!1,Os,co));return Mc("afterEmit"),Pf("Emit","beforeEmit","afterEmit"),$a}function jp(br){return Xg(Mn(br))}function Xg(br){return Pr.get(br)||void 0}function sh(br,sn,ei){return ui(br?sn(br,ei):er(bn.getSourceFiles(),is=>(ei&&ei.throwIfCancellationRequested(),sn(is,ei))))}function dS(br,sn){return sh(br,$d,sn)}function gu(br,sn,ei){return sh(br,(is,Qs)=>Fh(is,Qs,ei),sn)}function bg(br){return nt?.get(br.path)}function KA(br,sn){return WC(br,sn,void 0)}function TA(br){var sn;if(T3(br,$e,bn))return E;let ei=tr.getCombinedDiagnostics(bn).getDiagnostics(br.fileName);return(sn=br.commentDirectives)!=null&&sn.length?ve(br,br.commentDirectives,ei).diagnostics:ei}function oi(br,sn){return sh(br,Go,sn)}function $d(br){return n0(br)?(br.additionalSyntacticDiagnostics||(br.additionalSyntacticDiagnostics=ni(br)),Nn(br.additionalSyntacticDiagnostics,br.parseDiagnostics)):br.parseDiagnostics}function YI(br){try{return br()}catch(sn){throw sn instanceof By&&(Pt=void 0),sn}}function Fh(br,sn,ei){return Nn(oVe(WC(br,sn,ei),$e),TA(br))}function WC(br,sn,ei){if(ei)return _f(br,sn,ei);let is=nt?.get(br.path);return is||(nt??(nt=new Map)).set(br.path,is=_f(br,sn)),is}function _f(br,sn,ei){return YI(()=>{if(T3(br,$e,bn))return E;let is=pp();pe.assert(!!br.bindDiagnostics);let Qs=br.scriptKind===1||br.scriptKind===2,Oo=SY(br,$e.checkJs),Os=Qs&&rz(br,$e),co=br.bindDiagnostics,Yc=is.getDiagnostics(br,sn,ei);return Oo&&(co=Me(co,tu=>urn.has(tu.code)),Yc=Me(Yc,tu=>urn.has(tu.code))),QI(br,!Oo,!!ei,co,Yc,Os?br.jsDocDiagnostics:void 0)})}function QI(br,sn,ei,...is){var Qs;let Oo=Nr(is);if(!sn||!((Qs=br.commentDirectives)!=null&&Qs.length))return Oo;let{diagnostics:Os,directives:co}=ve(br,br.commentDirectives,Oo);if(ei)return Os;for(let Yc of co.getUnusedExpectations())Os.push(kn(br,Yc.range,Z.Unused_ts_expect_error_directive));return Os}function ve(br,sn,ei){let is=bge(br,sn);return{diagnostics:ei.filter(Oo=>ln(Oo,is)===-1),directives:is}}function mr(br,sn){return YI(()=>pp().getSuggestionDiagnostics(br,sn))}function ln(br,sn){let{file:ei,start:is}=br;if(!ei)return-1;let Qs=rn(ei),Oo=Ci(Qs,is).line-1;for(;Oo>=0;){if(sn.markUsed(Oo))return Oo;let Os=ei.text.slice(Qs[Oo],Qs[Oo+1]).trim();if(Os!==""&&!/^\s*\/\/.*$/.test(Os))return-1;Oo--}return-1}function ni(br){return YI(()=>{let sn=[];return ei(br,br),Sz(br,ei,is),sn;function ei(co,Yc){switch(Yc.kind){case 170:case 173:case 175:if(Yc.questionToken===co)return sn.push(Os(co,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 174:case 177:case 178:case 179:case 219:case 263:case 220:case 261:if(Yc.type===co)return sn.push(Os(co,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(co.kind){case 274:if(co.isTypeOnly)return sn.push(Os(Yc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 279:if(co.isTypeOnly)return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 277:case 282:if(co.isTypeOnly)return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,uy(co)?"import...type":"export...type")),"skip";break;case 272:return sn.push(Os(co,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 278:if(co.isExportEquals)return sn.push(Os(co,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 299:if(co.token===119)return sn.push(Os(co,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 265:let $a=Vi(120);return pe.assertIsDefined($a),sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,$a)),"skip";case 268:let ru=co.flags&32?Vi(145):Vi(144);return pe.assertIsDefined(ru),sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,ru)),"skip";case 266:return sn.push(Os(co,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 177:case 175:case 263:return co.body?void 0:(sn.push(Os(co,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 267:let gl=pe.checkDefined(Vi(94));return sn.push(Os(co,Z._0_declarations_can_only_be_used_in_TypeScript_files,gl)),"skip";case 236:return sn.push(Os(co,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 235:return sn.push(Os(co.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 239:return sn.push(Os(co.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 217:pe.fail()}}function is(co,Yc){if(D$e(Yc)){let tu=de(Yc.modifiers,So);tu&&sn.push(Os(tu,Z.Decorators_are_not_valid_here))}else if(oQ(Yc)&&Yc.modifiers){let tu=Se(Yc.modifiers,So);if(tu>=0){if(Si(Yc)&&!$e.experimentalDecorators)sn.push(Os(Yc.modifiers[tu],Z.Decorators_are_not_valid_here));else if(pm(Yc)){let $a=Se(Yc.modifiers,y);if($a>=0){let ru=Se(Yc.modifiers,w);if(tu>$a&&ru>=0&&tu=0&&tu<$a){let gl=Se(Yc.modifiers,So,$a);gl>=0&&sn.push(lg(Os(Yc.modifiers[gl],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Os(Yc.modifiers[tu],Z.Decorator_used_before_export_here)))}}}}}switch(Yc.kind){case 264:case 232:case 175:case 177:case 178:case 179:case 219:case 263:case 220:if(co===Yc.typeParameters)return sn.push(Oo(co,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 244:if(co===Yc.modifiers)return Qs(Yc.modifiers,Yc.kind===244),"skip";break;case 173:if(co===Yc.modifiers){for(let tu of co)Ig(tu)&&tu.kind!==126&&tu.kind!==129&&sn.push(Os(tu,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(tu.kind)));return"skip"}break;case 170:if(co===Yc.modifiers&&jt(co,Ig))return sn.push(Oo(co,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 214:case 215:case 234:case 286:case 287:case 216:if(co===Yc.typeArguments)return sn.push(Oo(co,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Qs(co,Yc){for(let tu of co)switch(tu.kind){case 87:if(Yc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:sn.push(Os(tu,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,Vi(tu.kind)));break;case 126:case 95:case 90:case 129:}}function Oo(co,Yc,...tu){let $a=co.pos;return qh(br,$a,co.end-$a,Yc,...tu)}function Os(co,Yc,...tu){return _E(br,co,Yc,...tu)}})}function Ls(br,sn){let ei=Dt?.get(br.path);return ei||(Dt??(Dt=new Map)).set(br.path,ei=Za(br,sn)),ei}function Za(br,sn){return YI(()=>{let ei=pp().getEmitResolver(br,sn);return o3t(bi(Dc),ei,br)||E})}function Go(br,sn){return br.isDeclarationFile?E:Ls(br,sn)}function Ss(){return ui(Nn(tr.getCombinedDiagnostics(bn).getGlobalDiagnostics(),Uc()))}function Uc(){if(!$e.configFile)return E;let br=tr.getCombinedDiagnostics(bn).getDiagnostics($e.configFile.fileName);return dI(sn=>{br=Nn(br,tr.getCombinedDiagnostics(bn).getDiagnostics(sn.sourceFile.fileName))}),br}function rl(){return Ue.length?ui(pp().getGlobalDiagnostics().slice()):E}function xd(){return Ye||E}function Lg(br,sn,ei,is){m2(iu(br),sn,ei,void 0,is)}function yf(br,sn){return br.fileName===sn.fileName}function rm(br,sn){return br.kind===80?sn.kind===80&&br.escapedText===sn.escapedText:sn.kind===11&&br.text===sn.text}function _h(br,sn){let ei=me.createStringLiteral(br),is=me.createImportDeclaration(void 0,void 0,ei);return N3(is,2),XA(ei,is),XA(is,sn),ei.flags&=-17,is.flags&=-17,ei}function Gp(br){if(br.imports)return;let sn=n0(br),ei=xm(br),is,Qs,Oo;if(sn||!br.isDeclarationFile&&(sS($e)||xm(br))){$e.importHelpers&&(is=[_h(PD,br)]);let co=Mne(One($e,br),$e);co&&(is||(is=[])).push(_h(co,br))}for(let co of br.statements)Os(co,!1);(br.flags&4194304||sn)&&$ne(br,!0,!0,(co,Yc)=>{UL(co,!1),is=Ft(is,Yc)}),br.imports=is||E,br.moduleAugmentations=Qs||E,br.ambientModuleNames=Oo||E;return;function Os(co,Yc){if(DY(co)){let tu=LY(co);tu&&Zg(tu)&&tu.text&&(!Yc||!Xr(tu.text))&&(UL(co,!1),is=Ft(is,tu),!Tu&&jn===0&&!br.isDeclarationFile&&(Ac(tu.text,"node:")&&!jAe.has(tu.text)?Tu=!0:Tu===void 0&&qne.has(tu.text)&&(Tu=!1)))}else if(xh(co)&&s_(co)&&(Yc||Ga(co,128)||br.isDeclarationFile)){co.name.parent=co;let tu=c2(co.name);if(ei||Yc&&!Xr(tu))(Qs||(Qs=[])).push(co.name);else if(!Yc){br.isDeclarationFile&&(Oo||(Oo=[])).push(tu);let $a=co.body;if($a)for(let ru of $a.statements)Os(ru,!0)}}}}function oh(br){var sn;let ei=Obe(br),is=ei&&((sn=dt?.get(ei))==null?void 0:sn.actual);return is!==void 0?jp(is):void 0}function b1(br,sn){return Z_(stt(sn.fileName,br.fileName),jp)}function Z_(br,sn,ei,is){if(E0(br)){let Qs=An.getCanonicalFileName(br);if(!$e.allowNonTsExtensions&&!F(Nr(ba),Os=>aA(Qs,Os))){ei&&(pN(Qs)?ei(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,br):ei(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,br,"'"+Nr(Gl).join("', '")+"'"));return}let Oo=sn(br);if(ei)if(Oo)K3(is)&&Qs===An.getCanonicalFileName(Xg(is.file).fileName)&&ei(Z.A_file_cannot_have_a_reference_to_itself);else{let Os=af(br);Os?.outputDts?ei(Z.Output_file_0_has_not_been_built_from_source_file_1,Os.outputDts,br):ei(Z.File_0_not_found,br)}return Oo}else{let Qs=$e.allowNonTsExtensions&&sn(br);if(Qs)return Qs;if(ei&&$e.allowNonTsExtensions){ei(Z.File_0_not_found,br);return}let Oo=F(Gl[0],Os=>sn(br+Os));return ei&&!Oo&&ei(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,br,"'"+Nr(Gl).join("', '")+"'"),Oo}}function m2(br,sn,ei,is,Qs){Z_(br,Oo=>Js(Oo,sn,ei,Qs,is),(Oo,...Os)=>$s(void 0,Qs,Oo,Os),Qs)}function Vb(br,sn){return m2(br,!1,!1,void 0,sn)}function or(br,sn,ei){!K3(ei)&&jt(tr.getFileReasons().get(sn.path),K3)?$s(sn,ei,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[sn.fileName,br]):$s(sn,ei,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[br,sn.fileName])}function qn(br,sn,ei,is,Qs,Oo,Os){var co;let Yc=H3.createRedirectedSourceFile({redirectTarget:br,unredirected:sn});return Yc.fileName=ei,Yc.path=is,Yc.resolvedPath=Qs,Yc.originalFileName=Oo,Yc.packageJsonLocations=(co=Os.packageJsonLocations)!=null&&co.length?Os.packageJsonLocations:void 0,Yc.packageJsonScope=Os.packageJsonScope,Ns.set(is,jn>0),Yc}function Js(br,sn,ei,is,Qs){var Oo,Os;(Oo=ki)==null||Oo.push(ki.Phase.Program,"findSourceFile",{fileName:br,isDefaultLib:sn||void 0,fileIncludeKind:$0[is.kind]});let co=RA(br,sn,ei,is,Qs);return(Os=ki)==null||Os.pop(),co}function Hl(br,sn,ei,is){let Qs=iVe(Xc(br,ya),sn?.getPackageJsonInfoCache(),ei,is),Oo=Mg(is),Os=Lne(is);return typeof Qs=="object"?{...Qs,languageVersion:Oo,setExternalModuleIndicator:Os,jsDocParsingMode:ei.jsDocParsingMode}:{languageVersion:Oo,impliedNodeFormat:Qs,setExternalModuleIndicator:Os,jsDocParsingMode:ei.jsDocParsingMode}}function RA(br,sn,ei,is,Qs){var Oo,Os;let co=Mn(br);if(Kr){let gl=XI(co);if(!gl&&An.realpath&&$e.preserveSymlinks&&PC(br)&&br.includes(Vx)){let kf=Mn(An.realpath(br));kf!==co&&(gl=XI(kf))}if(gl?.source){let kf=Js(gl.source,sn,ei,is,Qs);return kf&&uA(kf,co,br,void 0),kf}}let Yc=br;if(Pr.has(co)){let gl=Pr.get(co),kf=NA(gl||void 0,is,!0);if(gl&&kf&&$e.forceConsistentCasingInFileNames!==!1){let Wb=gl.fileName;Mn(Wb)!==Mn(br)&&(br=((Oo=af(br))==null?void 0:Oo.outputDts)||br);let p_=KR(Wb,ya),MB=KR(br,ya);p_!==MB&&or(br,gl,is)}return gl&&Ns.get(gl.path)&&jn===0?(Ns.set(gl.path,!1),$e.noResolve||(OC(gl,sn),E1(gl)),$e.noLib||Pb(gl),Zi.set(gl.path,!1),oR(gl)):gl&&Zi.get(gl.path)&&jn$s(void 0,is,Z.Cannot_read_file_0_Colon_1,[br,gl]),Gi);if(Qs){let gl=oN(Qs),kf=Qu.get(gl);if(kf){let Wb=qn(kf,ru,br,co,Mn(br),Yc,$a);return Cs.add(kf.path,br),uA(Wb,co,br,tu),NA(Wb,is,!1),Tg.set(co,xJ(Qs)),Rt.push(Wb),Wb}else ru&&(Qu.set(gl,ru),Tg.set(co,xJ(Qs)))}if(uA(ru,co,br,tu),ru){if(Ns.set(co,jn>0),ru.fileName=br,ru.path=co,ru.resolvedPath=Mn(br),ru.originalFileName=Yc,ru.packageJsonLocations=(Os=$a.packageJsonLocations)!=null&&Os.length?$a.packageJsonLocations:void 0,ru.packageJsonScope=$a.packageJsonScope,NA(ru,is,!1),An.useCaseSensitiveFileNames()){let gl=Om(co),kf=pt.get(gl);kf?or(br,kf,is):pt.set(gl,ru)}ks=ks||ru.hasNoDefaultLib&&!ei,$e.noResolve||(OC(ru,sn),E1(ru)),$e.noLib||Pb(ru),oR(ru),sn?_t.push(ru):Rt.push(ru),(Gt??(Gt=new Set)).add(ru.path)}return ru}function NA(br,sn,ei){return br&&(!ei||!K3(sn)||!Gt?.has(sn.file))?(tr.getFileReasons().add(br.path,sn),!0):!1}function uA(br,sn,ei,is){is?(hm(ei,is,br),hm(ei,sn,br||!1)):hm(ei,sn,br)}function hm(br,sn,ei){Pr.set(sn,ei),ei!==void 0?Pn.delete(sn):Pn.set(sn,br)}function af(br){return nr?.get(Mn(br))}function dI(br){return tie(on,br)}function XI(br){return Fr?.get(br)}function C2(br){return Kr&&!!af(br)}function d_(br){if(it)return it.get(br)||void 0}function OC(br,sn){F(br.referencedFiles,(ei,is)=>{m2(stt(ei.fileName,br.fileName),sn,!1,void 0,{kind:4,file:br.path,index:is})})}function E1(br){let sn=br.typeReferenceDirectives;if(!sn.length)return;let ei=Ht?.get(br.path)||Vn(sn,br),is=wie();(zt??(zt=new Map)).set(br.path,is);for(let Qs=0;Qs{let is=Obe(sn);is?Lg(Wx(is),!0,!0,{kind:7,file:br.path,index:ei}):tr.addFileProcessingDiagnostic({kind:0,reason:{kind:7,file:br.path,index:ei}})})}function qm(br){return An.getCanonicalFileName(br)}function oR(br){if(Gp(br),br.imports.length||br.moduleAugmentations.length){let sn=Arn(br),ei=ir?.get(br.path)||Wi(sn,br);pe.assert(ei.length===sn.length);let is=gy(br),Qs=wie();(st??(st=new Map)).set(br.path,Qs);for(let Oo=0;Oomn,Wb=gl&&!htt(is,Os,br)&&!is.noResolve&&OoRU(Os.commandLine,!An.useCaseSensitiveFileNames()));Qs.fileNames.forEach(tu=>{let $a=Mn(tu),ru;!PC(tu)&&!aA(tu,".json")&&(Qs.options.outFile?ru=co:(ru=kde(tu,Os.commandLine,!An.useCaseSensitiveFileNames(),Yc),Fr.set(Mn(ru),{resolvedRef:Os,source:tu}))),nr.set($a,{resolvedRef:Os,outputDts:ru})})}return Qs.projectReferences&&(Os.references=Qs.projectReferences.map(xN)),Os}function at(){$e.strictPropertyInitialization&&!a_($e,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks"),$e.exactOptionalPropertyTypes&&!a_($e,"strictNullChecks")&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks"),($e.isolatedModules||$e.verbatimModuleSyntax)&&$e.outFile&&gr(Z.Option_0_cannot_be_specified_with_option_1,"outFile",$e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules"),$e.isolatedDeclarations&&(TF($e)&&gr(Z.Option_0_cannot_be_specified_with_option_1,"allowJs","isolatedDeclarations"),Ly($e)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"isolatedDeclarations","declaration","composite")),$e.inlineSourceMap&&($e.sourceMap&&gr(Z.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),$e.mapRoot&&gr(Z.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")),$e.composite&&($e.declaration===!1&&gr(Z.Composite_projects_may_not_disable_declaration_emit,"declaration"),$e.incremental===!1&&gr(Z.Composite_projects_may_not_disable_incremental_compilation,"declaration"));let br=$e.outFile;if(!$e.tsBuildInfoFile&&$e.incremental&&!br&&!$e.configFilePath&&tr.addConfigDiagnostic(Nf(Z.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)),_i(),wa(),$e.composite){let Os=new Set(Ue.map(Mn));for(let co of Lt)SP(co,bn)&&!Os.has(co.path)&&tr.addLazyConfigDiagnostic(co,Z.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,co.fileName,$e.configFilePath||"")}if($e.paths){for(let Os in $e.paths)if(Da($e.paths,Os))if(Cbe(Os)||ul(!0,Os,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Os),Ki($e.paths[Os])){let co=$e.paths[Os].length;co===0&&ul(!1,Os,Z.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,Os);for(let Yc=0;Ycxm(Os)&&!Os.isDeclarationFile);if($e.isolatedModules||$e.verbatimModuleSyntax)$e.module===0&&sn<2&&$e.isolatedModules&&gr(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),$e.preserveConstEnums===!1&&gr(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,$e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(ei&&sn<2&&$e.module===0){let Os=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(qh(ei,Os.start,Os.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(br&&!$e.emitDeclarationOnly){if($e.module&&!($e.module===2||$e.module===4))gr(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if($e.module===void 0&&ei){let Os=qa(ei,typeof ei.externalModuleIndicator=="boolean"?ei:ei.externalModuleIndicator);tr.addConfigDiagnostic(qh(ei,Os.start,Os.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(NP($e)&&(k_($e)===1?gr(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):wAe($e)||gr(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),$e.outDir||$e.rootDir||$e.sourceRoot||$e.mapRoot||Ly($e)&&$e.declarationDir){let Os=ci();$e.outDir&&Os===""&&Lt.some(co=>Wf(co.fileName)>1)&&gr(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}$e.checkJs&&!TF($e)&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),$e.emitDeclarationOnly&&(Ly($e)||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite")),$e.emitDecoratorMetadata&&!$e.experimentalDecorators&&gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),$e.jsxFactory?($e.reactNamespace&&gr(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",mEe.get(""+$e.jsx)),Bz($e.jsxFactory,sn)||Ln("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,$e.jsxFactory)):$e.reactNamespace&&!Uh($e.reactNamespace,sn)&&Ln("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,$e.reactNamespace),$e.jsxFragmentFactory&&($e.jsxFactory||gr(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",mEe.get(""+$e.jsx)),Bz($e.jsxFragmentFactory,sn)||Ln("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,$e.jsxFragmentFactory)),$e.reactNamespace&&($e.jsx===4||$e.jsx===5)&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",mEe.get(""+$e.jsx)),$e.jsxImportSource&&$e.jsx===2&&gr(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",mEe.get(""+$e.jsx));let is=i0($e);$e.verbatimModuleSyntax&&(is===2||is===3||is===4)&&gr(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),$e.allowImportingTsExtensions&&!($e.noEmit||$e.emitDeclarationOnly||$e.rewriteRelativeImportExtensions)&&Ln("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Qs=k_($e);if($e.resolvePackageJsonExports&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),$e.resolvePackageJsonImports&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),$e.customConditions&&!lU(Qs)&&gr(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Qs===100&&!Wne(is)&&is!==200&&Ln("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),jS[is]&&100<=is&&is<=199&&!(3<=Qs&&Qs<=99)){let Os=jS[is],co=z_[Os]?Os:"Node16";Ln("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,co,Os)}else if(z_[Qs]&&3<=Qs&&Qs<=99&&!(100<=is&&is<=199)){let Os=z_[Qs];Ln("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,Os,Os)}if(!$e.noEmit&&!$e.suppressOutputPathCheck){let Os=bi(),co=new Set;Jet(Os,Yc=>{$e.emitDeclarationOnly||Oo(Yc.jsFilePath,co),Oo(Yc.declarationFilePath,co)})}function Oo(Os,co){if(Os){let Yc=Mn(Os);if(Pr.has(Yc)){let $a;$e.configFilePath||($a=wu(void 0,Z.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),$a=wu($a,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,Os),Jg(Os,SAe($a))}let tu=An.useCaseSensitiveFileNames()?Yc:Om(Yc);co.has(tu)?Jg(Os,Nf(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,Os)):co.add(tu)}}}function en(){let br=$e.ignoreDeprecations;if(br){if(br==="5.0")return new O(br);ht()}return O.zero}function gi(br,sn,ei,is){let Qs=new O(br),Oo=new O(sn),Os=new O(ot||I),co=en(),Yc=Oo.compareTo(Os)!==1,tu=!Yc&&co.compareTo(Qs)===-1;(Yc||tu)&&is(($a,ru,gl)=>{Yc?ru===void 0?ei($a,ru,gl,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,$a):ei($a,ru,gl,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,$a,ru):ru===void 0?ei($a,ru,gl,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,$a,sn,br):ei($a,ru,gl,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,$a,ru,sn,br)})}function _i(){function br(sn,ei,is,Qs,...Oo){if(is){let Os=wu(void 0,Z.Use_0_instead,is),co=wu(Os,Qs,...Oo);Xl(!ei,sn,void 0,co)}else Xl(!ei,sn,void 0,Qs,...Oo)}gi("5.0","5.5",br,sn=>{$e.target===0&&sn("target","ES3"),$e.noImplicitUseStrict&&sn("noImplicitUseStrict"),$e.keyofStringsOnly&&sn("keyofStringsOnly"),$e.suppressExcessPropertyErrors&&sn("suppressExcessPropertyErrors"),$e.suppressImplicitAnyIndexErrors&&sn("suppressImplicitAnyIndexErrors"),$e.noStrictGenericChecks&&sn("noStrictGenericChecks"),$e.charset&&sn("charset"),$e.out&&sn("out",void 0,"outFile"),$e.importsNotUsedAsValues&&sn("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),$e.preserveValueImports&&sn("preserveValueImports",void 0,"verbatimModuleSyntax")})}function ys(br,sn,ei){function is(Qs,Oo,Os,co,...Yc){bs(sn,ei,co,...Yc)}gi("5.0","5.5",is,Qs=>{br.prepend&&Qs("prepend")})}function $s(br,sn,ei,is){tr.addFileProcessingDiagnostic({kind:1,file:br&&br.path,fileProcessingReason:sn,diagnostic:ei,args:is})}function wa(){let br=$e.suppressOutputPathCheck?void 0:U3($e);gz(Tt,on,(sn,ei,is)=>{let Qs=(ei?ei.commandLine.projectReferences:Tt)[is],Oo=ei&&ei.sourceFile;if(ys(Qs,Oo,is),!sn){bs(Oo,is,Z.File_0_not_found,Qs.path);return}let Os=sn.commandLine.options;(!Os.composite||Os.noEmit)&&(ei?ei.commandLine.fileNames:Ue).length&&(Os.composite||bs(Oo,is,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Qs.path),Os.noEmit&&bs(Oo,is,Z.Referenced_project_0_may_not_disable_emit,Qs.path)),!ei&&br&&br===U3(Os)&&(bs(Oo,is,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,br,Qs.path),Wo.set(Mn(br),!0))})}function pc(br,sn,ei,...is){let Qs=!0;Fe(Oo=>{og(Oo.initializer)&&WJ(Oo.initializer,br,Os=>{let co=Os.initializer;OI(co)&&co.elements.length>sn&&(tr.addConfigDiagnostic(_E($e.configFile,co.elements[sn],ei,...is)),Qs=!1)})}),Qs&&eg(ei,...is)}function ul(br,sn,ei,...is){let Qs=!0;Fe(Oo=>{og(Oo.initializer)&&Df(Oo.initializer,br,sn,void 0,ei,...is)&&(Qs=!1)}),Qs&&eg(ei,...is)}function Fe(br){return zAe(jl(),"paths",br)}function gr(br,sn,ei,is){Xl(!0,sn,ei,br,sn,ei,is)}function Ln(br,sn,...ei){Xl(!1,br,void 0,sn,...ei)}function bs(br,sn,ei,...is){let Qs=zre(br||$e.configFile,"references",Oo=>OI(Oo.initializer)?Oo.initializer:void 0);Qs&&Qs.elements.length>sn?tr.addConfigDiagnostic(_E(br||$e.configFile,Qs.elements[sn],ei,...is)):tr.addConfigDiagnostic(Nf(ei,...is))}function Xl(br,sn,ei,is,...Qs){let Oo=jl();(!Oo||!Df(Oo,br,sn,ei,is,...Qs))&&eg(is,...Qs)}function eg(br,...sn){let ei=Eu();ei?"messageText"in br?tr.addConfigDiagnostic(Bw($e.configFile,ei.name,br)):tr.addConfigDiagnostic(_E($e.configFile,ei.name,br,...sn)):"messageText"in br?tr.addConfigDiagnostic(SAe(br)):tr.addConfigDiagnostic(Nf(br,...sn))}function jl(){if(hc===void 0){let br=Eu();hc=br&&Gs(br.initializer,og)||!1}return hc||void 0}function Eu(){return yr===void 0&&(yr=WJ(m7($e.configFile),"compilerOptions",Fl)||!1),yr||void 0}function Df(br,sn,ei,is,Qs,...Oo){let Os=!1;return WJ(br,ei,co=>{"messageText"in Qs?tr.addConfigDiagnostic(Bw($e.configFile,sn?co.name:co.initializer,Qs)):tr.addConfigDiagnostic(_E($e.configFile,sn?co.name:co.initializer,Qs,...Oo)),Os=!0},is),Os}function Jg(br,sn){Wo.set(Mn(br),!0),tr.addConfigDiagnostic(sn)}function MC(br){if($e.noEmit)return!1;let sn=Mn(br);if(Xg(sn))return!1;let ei=$e.outFile;if(ei)return S1(sn,ei)||S1(sn,s0(ei)+".d.ts");if($e.declarationDir&&Jh($e.declarationDir,sn,ya,!An.useCaseSensitiveFileNames()))return!0;if($e.outDir)return Jh($e.outDir,sn,ya,!An.useCaseSensitiveFileNames());if(fu(sn,uU)||PC(sn)){let is=s0(sn);return!!Xg(is+".ts")||!!Xg(is+".tsx")}return!1}function S1(br,sn){return qf(br,sn,ya,!An.useCaseSensitiveFileNames())===0}function fS(){return An.getSymlinkCache?An.getSymlinkCache():(Ke||(Ke=_be(ya,qm)),Lt&&!Ke.hasProcessedResolutions()&&Ke.setSymlinksFromResolutions(xe,fr,Gr),Ke)}function bv(br,sn){return eVe(br,sn,gy(br))}function XF(br,sn){return arn(br,sn,gy(br))}function o9(br,sn){return bv(br,KEe(br,sn))}function My(br){return sVe(br,gy(br))}function sk(br){return NU(br,gy(br))}function aR(br){return Lde(br,gy(br))}function WB(br){return grn(br,gy(br))}function UP(br,sn){return br.resolutionMode||My(sn)}}function grn(s,c){let g=i0(c);return 100<=g&&g<=199||g===200?!1:Lde(s,c)<5}function Lde(s,c){return NU(s,c)??i0(c)}function NU(s,c){var g,d;let h=i0(c);if(100<=h&&h<=199)return s.impliedNodeFormat;if(s.impliedNodeFormat===1&&(((g=s.packageJsonScope)==null?void 0:g.contents.packageJsonContent.type)==="commonjs"||fu(s.fileName,[".cjs",".cts"])))return 1;if(s.impliedNodeFormat===99&&(((d=s.packageJsonScope)==null?void 0:d.contents.packageJsonContent.type)==="module"||fu(s.fileName,[".mjs",".mts"])))return 99}function sVe(s,c){return Ibe(c)?NU(s,c):void 0}function iws(s){let c,g=s.compilerHost.fileExists,d=s.compilerHost.directoryExists,h=s.compilerHost.getDirectories,_=s.compilerHost.realpath;if(!s.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:Dc,fileExists:T};s.compilerHost.fileExists=T;let S;return d&&(S=s.compilerHost.directoryExists=re=>d.call(s.compilerHost,re)?(M(re),!0):s.getResolvedProjectReferences()?(c||(c=new Set,s.forEachResolvedProjectReference(ge=>{let Ie=ge.commandLine.options.outFile;if(Ie)c.add(Mo(s.toPath(Ie)));else{let _e=ge.commandLine.options.declarationDir||ge.commandLine.options.outDir;_e&&c.add(s.toPath(_e))}})),ee(re,!1)):!1),h&&(s.compilerHost.getDirectories=re=>!s.getResolvedProjectReferences()||d&&d.call(s.compilerHost,re)?h.call(s.compilerHost,re):[]),_&&(s.compilerHost.realpath=re=>{var ge;return((ge=s.getSymlinkCache().getSymlinkedFiles())==null?void 0:ge.get(s.toPath(re)))||_.call(s.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:T,directoryExists:S};function R(){s.compilerHost.fileExists=g,s.compilerHost.directoryExists=d,s.compilerHost.getDirectories=h}function T(re){return g.call(s.compilerHost,re)?!0:!s.getResolvedProjectReferences()||!PC(re)?!1:ee(re,!0)}function W(re){let ge=s.getRedirectFromOutput(s.toPath(re));return ge!==void 0?Xs(ge.source)?g.call(s.compilerHost,ge.source):!0:void 0}function V(re){let ge=s.toPath(re),Ie=`${ge}${ag}`;return SB(c,_e=>ge===_e||Ac(_e,Ie)||Ac(ge,`${_e}/`))}function M(re){var ge;if(!s.getResolvedProjectReferences()||sz(re)||!_||!re.includes(Vx))return;let Ie=s.getSymlinkCache(),_e=hp(s.toPath(re));if((ge=Ie.getSymlinkedDirectories())!=null&&ge.has(_e))return;let Ee=iu(_.call(s.compilerHost,re)),Ne;if(Ee===re||(Ne=hp(s.toPath(Ee)))===_e){Ie.setSymlinkedDirectory(_e,!1);return}Ie.setSymlinkedDirectory(re,{real:hp(Ee),realPath:Ne})}function ee(re,ge){var Ie;let _e=ge?W:V,Ee=_e(re);if(Ee!==void 0)return Ee;let Ne=s.getSymlinkCache(),Te=Ne.getSymlinkedDirectories();if(!Te)return!1;let Ze=s.toPath(re);return Ze.includes(Vx)?ge&&((Ie=Ne.getSymlinkedFiles())!=null&&Ie.has(Ze))?!0:ae(Te.entries(),([We,Ue])=>{if(!Ue||!Ac(Ze,We))return;let $e=_e(Ze.replace(We,Ue.realPath));if(ge&&$e){let Ye=Xc(re,s.compilerHost.getCurrentDirectory());Ne.setSymlinkedFile(Ze,`${Ue.real}${Ye.replace(new RegExp(We,"i"),"")}`)}return $e})||!1:!1}}var ftt={diagnostics:E,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function Itt(s,c,g,d){let h=s.getCompilerOptions();if(h.noEmit)return c?ftt:s.emitBuildInfo(g,d);if(!h.noEmitOnError)return;let _=[...s.getOptionsDiagnostics(d),...s.getSyntacticDiagnostics(c,d),...s.getGlobalDiagnostics(d),...s.getSemanticDiagnostics(c,d)];if(_.length===0&&Ly(s.getCompilerOptions())&&(_=s.getDeclarationDiagnostics(void 0,d)),!_.length)return;let S;if(!c){let R=s.emitBuildInfo(g,d);R.diagnostics&&(_=[..._,...R.diagnostics]),S=R.emittedFiles}return{diagnostics:_,sourceMaps:void 0,emittedFiles:S,emitSkipped:!0}}function oVe(s,c){return Me(s,g=>!g.skippedOn||!c[g.skippedOn])}function aVe(s,c=s){return{fileExists:g=>c.fileExists(g),readDirectory(g,d,h,_,S){return pe.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(g,d,h,_,S)},readFile:g=>c.readFile(g),directoryExists:$i(c,c.directoryExists),getDirectories:$i(c,c.getDirectories),realpath:$i(c,c.realpath),useCaseSensitiveFileNames:s.useCaseSensitiveFileNames(),getCurrentDirectory:()=>s.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:s.onUnRecoverableConfigFileDiagnostic||cm,trace:s.trace?g=>s.trace(g):void 0}}function xz(s){return Xtt(s.path)}function htt(s,{extension:c},{isDeclarationFile:g}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||h();case".js":case".mjs":case".cjs":return h();case".json":return _();default:return S()}function d(){return s.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function h(){return TF(s)||!a_(s,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function _(){return NP(s)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function S(){return g||s.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function Arn({imports:s,moduleAugmentations:c}){let g=s.map(d=>d);for(let d of c)d.kind===11&&g.push(d);return g}function KEe({imports:s,moduleAugmentations:c},g){if(gc.add(ge)),d?.forEach(ge=>{switch(ge.kind){case 1:return c.add(V(re,ge.file&&re.getSourceFileByPath(ge.file),ge.fileProcessingReason,ge.diagnostic,ge.args||E));case 0:return c.add(W(re,ge));case 2:return ge.diagnostics.forEach(Ie=>c.add(Ie));default:pe.assertNever(ge)}}),S?.forEach(({file:ge,diagnostic:Ie,args:_e})=>c.add(V(re,ge,void 0,Ie,_e))),R=void 0,T=void 0,c)}};function W(re,{reason:ge}){let{file:Ie,pos:_e,end:Ee}=Zde(re,ge),Ne=Ie.libReferenceDirectives[ge.index],Te=qY(Ne),Ze=aa(Nm(Te,"lib."),".d.ts"),We=Dr(Ze,A9e,Fl);return qh(Ie,pe.checkDefined(_e),pe.checkDefined(Ee)-_e,We?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,Te,We)}function V(re,ge,Ie,_e,Ee){let Ne,Te,Ze,We,Ue,$e,Ye=ge&&g.get(ge.path),Tt=K3(Ie)?Ie:void 0,ot=ge&&R?.get(ge.path);ot?(ot.fileIncludeReasonDetails?(Ne=new Set(Ye),Ye?.forEach(_t)):Ye?.forEach(ht),Ue=ot.redirectInfo):(Ye?.forEach(ht),Ue=ge&&Gtt(ge,re.getCompilerOptionsForFile(ge))),Ie&&ht(Ie);let Qe=Ne?.size!==Ye?.length;Tt&&Ne?.size===1&&(Ne=void 0),Ne&&ot&&(ot.details&&!Qe?$e=wu(ot.details,_e,...Ee??E):ot.fileIncludeReasonDetails&&(Qe?Rt()?Te=Ft(ot.fileIncludeReasonDetails.next.slice(0,Ye.length),Te[0]):Te=[...ot.fileIncludeReasonDetails.next,Te[0]]:Rt()?Te=ot.fileIncludeReasonDetails.next.slice(0,Ye.length):We=ot.fileIncludeReasonDetails)),$e||(We||(We=Ne&&wu(Te,Z.The_file_is_in_the_program_because_Colon)),$e=wu(Ue?We?[We,...Ue]:Ue:We,_e,...Ee||E)),ge&&(ot?(!ot.fileIncludeReasonDetails||!Qe&&We)&&(ot.fileIncludeReasonDetails=We):(R??(R=new Map)).set(ge.path,ot={fileIncludeReasonDetails:We,redirectInfo:Ue}),!ot.details&&!Qe&&(ot.details=$e.next));let mt=Tt&&Zde(re,Tt);return mt&&Fie(mt)?ze(mt.file,mt.pos,mt.end-mt.pos,$e,Ze):SAe($e,Ze);function ht(Lt){Ne?.has(Lt)||((Ne??(Ne=new Set)).add(Lt),(Te??(Te=[])).push(Ltt(re,Lt)),_t(Lt))}function _t(Lt){!Tt&&K3(Lt)?Tt=Lt:Tt!==Lt&&(Ze=Ft(Ze,M(re,Lt)))}function Rt(){var Lt;return((Lt=ot.fileIncludeReasonDetails.next)==null?void 0:Lt.length)!==Ye?.length}}function M(re,ge){let Ie=T?.get(ge);return Ie===void 0&&(T??(T=new Map)).set(ge,Ie=ee(re,ge)??!1),Ie||void 0}function ee(re,ge){if(K3(ge)){let Ze=Zde(re,ge),We;switch(ge.kind){case 3:We=Z.File_is_included_via_import_here;break;case 4:We=Z.File_is_included_via_reference_here;break;case 5:We=Z.File_is_included_via_type_library_reference_here;break;case 7:We=Z.File_is_included_via_library_reference_here;break;default:pe.assertNever(ge)}return Fie(Ze)?qh(Ze.file,Ze.pos,Ze.end-Ze.pos,We):void 0}let Ie=re.getCurrentDirectory(),_e=re.getRootFileNames(),Ee=re.getCompilerOptions();if(!Ee.configFile)return;let Ne,Te;switch(ge.kind){case 0:if(!Ee.configFile.configFileSpecs)return;let Ze=Xc(_e[ge.index],Ie),We=Ftt(re,Ze);if(We){Ne=Pge(Ee.configFile,"files",We),Te=Z.File_is_matched_by_files_list_specified_here;break}let Ue=Ztt(re,Ze);if(!Ue||!Xs(Ue))return;Ne=Pge(Ee.configFile,"include",Ue),Te=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let $e=re.getResolvedProjectReferences(),Ye=re.getProjectReferences(),Tt=pe.checkDefined($e?.[ge.index]),ot=gz(Ye,$e,(Rt,Lt,Ke)=>Rt===Tt?{sourceFile:Lt?.sourceFile||Ee.configFile,index:Ke}:void 0);if(!ot)return;let{sourceFile:Qe,index:mt}=ot,ht=zre(Qe,"references",Rt=>OI(Rt.initializer)?Rt.initializer:void 0);return ht&&ht.elements.length>mt?_E(Qe,ht.elements[mt],ge.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Ee.types)return;Ne=Mbe(s(),"types",ge.typeReference),Te=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(ge.index!==void 0){Ne=Mbe(s(),"lib",Ee.lib[ge.index]),Te=Z.File_is_library_specified_here;break}let _t=TAe(Mg(Ee));Ne=_t?DLe(s(),"target",_t):void 0,Te=Z.File_is_default_library_for_target_specified_here;break;default:pe.assertNever(ge)}return Ne&&_E(Ee.configFile,Ne,Te)}}function T3t(s,c,g,d,h,_){let S=[],{emitSkipped:R,diagnostics:T}=s.emit(c,W,d,g,h,_);return{outputFiles:S,emitSkipped:R,diagnostics:T};function W(V,M,ee){S.push({name:V,writeByteOrderMark:ee,text:M})}}var R3t=(s=>(s[s.ComputedDts=0]="ComputedDts",s[s.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",s[s.UsedVersion=2]="UsedVersion",s))(R3t||{}),nR;(s=>{function c(){function ot(Qe,mt,ht){let _t={getKeys:Rt=>mt.get(Rt),getValues:Rt=>Qe.get(Rt),keys:()=>Qe.keys(),size:()=>Qe.size,deleteKey:Rt=>{(ht||(ht=new Set)).add(Rt);let Lt=Qe.get(Rt);return Lt?(Lt.forEach(Ke=>d(mt,Ke,Rt)),Qe.delete(Rt),!0):!1},set:(Rt,Lt)=>{ht?.delete(Rt);let Ke=Qe.get(Rt);return Qe.set(Rt,Lt),Ke?.forEach(Pt=>{Lt.has(Pt)||d(mt,Pt,Rt)}),Lt.forEach(Pt=>{Ke?.has(Pt)||g(mt,Pt,Rt)}),_t}};return _t}return ot(new Map,new Map,void 0)}s.createManyToManyPathMap=c;function g(ot,Qe,mt){let ht=ot.get(Qe);ht||(ht=new Set,ot.set(Qe,ht)),ht.add(mt)}function d(ot,Qe,mt){let ht=ot.get(Qe);return ht?.delete(mt)?(ht.size||ot.delete(Qe),!0):!1}function h(ot){return Xt(ot.declarations,Qe=>{var mt;return(mt=ms(Qe))==null?void 0:mt.resolvedPath})}function _(ot,Qe){let mt=ot.getSymbolAtLocation(Qe);return mt&&h(mt)}function S(ot,Qe,mt,ht){var _t;return Ou(((_t=ot.getRedirectFromSourceFile(Qe))==null?void 0:_t.outputDts)||Qe,mt,ht)}function R(ot,Qe,mt){let ht;if(Qe.imports&&Qe.imports.length>0){let Ke=ot.getTypeChecker();for(let Pt of Qe.imports){let _r=_(Ke,Pt);_r?.forEach(Lt)}}let _t=Mo(Qe.resolvedPath);if(Qe.referencedFiles&&Qe.referencedFiles.length>0)for(let Ke of Qe.referencedFiles){let Pt=S(ot,Ke.fileName,_t,mt);Lt(Pt)}if(ot.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:Ke})=>{if(!Ke)return;let Pt=Ke.resolvedFileName,_r=S(ot,Pt,_t,mt);Lt(_r)},Qe),Qe.moduleAugmentations.length){let Ke=ot.getTypeChecker();for(let Pt of Qe.moduleAugmentations){if(!Zg(Pt))continue;let _r=Ke.getSymbolAtLocation(Pt);_r&&Rt(_r)}}for(let Ke of ot.getTypeChecker().getAmbientModules())Ke.declarations&&Ke.declarations.length>1&&Rt(Ke);return ht;function Rt(Ke){if(Ke.declarations)for(let Pt of Ke.declarations){let _r=ms(Pt);_r&&_r!==Qe&&Lt(_r.resolvedPath)}}function Lt(Ke){(ht||(ht=new Set)).add(Ke)}}function T(ot,Qe){return Qe&&!Qe.referencedMap==!ot}s.canReuseOldState=T;function W(ot){return ot.module!==0&&!ot.outFile?c():void 0}s.createReferencedMap=W;function V(ot,Qe,mt){var ht,_t;let Rt=new Map,Lt=ot.getCompilerOptions(),Ke=W(Lt),Pt=T(Ke,Qe);ot.getTypeChecker();for(let _r of ot.getSourceFiles()){let Gt=pe.checkDefined(_r.version,"Program intended to be used with Builder should have source files with versions set"),nt=Pt?(ht=Qe.oldSignatures)==null?void 0:ht.get(_r.resolvedPath):void 0,Dt=nt===void 0?Pt?(_t=Qe.fileInfos.get(_r.resolvedPath))==null?void 0:_t.signature:void 0:nt||void 0;if(Ke){let tr=R(ot,_r,ot.getCanonicalFileName);tr&&Ke.set(_r.resolvedPath,tr)}Rt.set(_r.resolvedPath,{version:Gt,signature:Dt,affectsGlobalScope:Lt.outFile?void 0:Ue(_r)||void 0,impliedFormat:_r.impliedNodeFormat})}return{fileInfos:Rt,referencedMap:Ke,useFileVersionAsSignature:!mt&&!Pt}}s.create=V;function M(ot){ot.allFilesExcludingDefaultLibraryFile=void 0,ot.allFileNames=void 0}s.releaseCache=M;function ee(ot,Qe,mt,ht,_t){var Rt;let Lt=re(ot,Qe,mt,ht,_t);return(Rt=ot.oldSignatures)==null||Rt.clear(),Lt}s.getFilesAffectedBy=ee;function re(ot,Qe,mt,ht,_t){let Rt=Qe.getSourceFileByPath(mt);return Rt?_e(ot,Qe,Rt,ht,_t)?(ot.referencedMap?Tt:Ye)(ot,Qe,Rt,ht,_t):[Rt]:E}s.getFilesAffectedByWithOldState=re;function ge(ot,Qe,mt){ot.fileInfos.get(mt).signature=Qe,(ot.hasCalledUpdateShapeSignature||(ot.hasCalledUpdateShapeSignature=new Set)).add(mt)}s.updateSignatureOfFile=ge;function Ie(ot,Qe,mt,ht,_t){ot.emit(Qe,(Rt,Lt,Ke,Pt,_r,Gt)=>{pe.assert(PC(Rt),`File extension for signature expected to be dts: Got:: ${Rt}`),_t(_tt(ot,Qe,Lt,ht,Gt),_r)},mt,2,void 0,!0)}s.computeDtsSignature=Ie;function _e(ot,Qe,mt,ht,_t,Rt=ot.useFileVersionAsSignature){var Lt;if((Lt=ot.hasCalledUpdateShapeSignature)!=null&&Lt.has(mt.resolvedPath))return!1;let Ke=ot.fileInfos.get(mt.resolvedPath),Pt=Ke.signature,_r;return!mt.isDeclarationFile&&!Rt&&Ie(Qe,mt,ht,_t,Gt=>{_r=Gt,_t.storeSignatureInfo&&(ot.signatureInfo??(ot.signatureInfo=new Map)).set(mt.resolvedPath,0)}),_r===void 0&&(_r=mt.version,_t.storeSignatureInfo&&(ot.signatureInfo??(ot.signatureInfo=new Map)).set(mt.resolvedPath,2)),(ot.oldSignatures||(ot.oldSignatures=new Map)).set(mt.resolvedPath,Pt||!1),(ot.hasCalledUpdateShapeSignature||(ot.hasCalledUpdateShapeSignature=new Set)).add(mt.resolvedPath),Ke.signature=_r,_r!==Pt}s.updateShapeSignature=_e;function Ee(ot,Qe,mt){if(Qe.getCompilerOptions().outFile||!ot.referencedMap||Ue(mt))return Ne(ot,Qe);let _t=new Set,Rt=[mt.resolvedPath];for(;Rt.length;){let Lt=Rt.pop();if(!_t.has(Lt)){_t.add(Lt);let Ke=ot.referencedMap.getValues(Lt);if(Ke)for(let Pt of Ke.keys())Rt.push(Pt)}}return Do(lr(_t.keys(),Lt=>{var Ke;return((Ke=Qe.getSourceFileByPath(Lt))==null?void 0:Ke.fileName)??Lt}))}s.getAllDependencies=Ee;function Ne(ot,Qe){if(!ot.allFileNames){let mt=Qe.getSourceFiles();ot.allFileNames=mt===E?E:mt.map(ht=>ht.fileName)}return ot.allFileNames}function Te(ot,Qe){let mt=ot.referencedMap.getKeys(Qe);return mt?Do(mt.keys()):[]}s.getReferencedByPaths=Te;function Ze(ot){for(let Qe of ot.statements)if(!RY(Qe))return!1;return!0}function We(ot){return jt(ot.moduleAugmentations,Qe=>vB(Qe.parent))}function Ue(ot){return We(ot)||!vl(ot)&&!Zu(ot)&&!Ze(ot)}function $e(ot,Qe,mt){if(ot.allFilesExcludingDefaultLibraryFile)return ot.allFilesExcludingDefaultLibraryFile;let ht;mt&&_t(mt);for(let Rt of Qe.getSourceFiles())Rt!==mt&&_t(Rt);return ot.allFilesExcludingDefaultLibraryFile=ht||E,ot.allFilesExcludingDefaultLibraryFile;function _t(Rt){Qe.isSourceFileDefaultLibrary(Rt)||(ht||(ht=[])).push(Rt)}}s.getAllFilesExcludingDefaultLibraryFile=$e;function Ye(ot,Qe,mt){let ht=Qe.getCompilerOptions();return ht&&ht.outFile?[mt]:$e(ot,Qe,mt)}function Tt(ot,Qe,mt,ht,_t){if(Ue(mt))return $e(ot,Qe,mt);let Rt=Qe.getCompilerOptions();if(Rt&&(sS(Rt)||Rt.outFile))return[mt];let Lt=new Map;Lt.set(mt.resolvedPath,mt);let Ke=Te(ot,mt.resolvedPath);for(;Ke.length>0;){let Pt=Ke.pop();if(!Lt.has(Pt)){let _r=Qe.getSourceFileByPath(Pt);Lt.set(Pt,_r),_r&&_e(ot,Qe,_r,ht,_t)&&Ke.push(...Te(ot,_r.resolvedPath))}}return Do(lr(Lt.values(),Pt=>Pt))}})(nR||(nR={}));var N3t=(s=>(s[s.None=0]="None",s[s.Js=1]="Js",s[s.JsMap=2]="JsMap",s[s.JsInlineMap=4]="JsInlineMap",s[s.DtsErrors=8]="DtsErrors",s[s.DtsEmit=16]="DtsEmit",s[s.DtsMap=32]="DtsMap",s[s.Dts=24]="Dts",s[s.AllJs=7]="AllJs",s[s.AllDtsEmit=48]="AllDtsEmit",s[s.AllDts=56]="AllDts",s[s.All=63]="All",s))(N3t||{});function Zie(s){return s.program!==void 0}function sws(s){return pe.assert(Zie(s)),s}function HP(s){let c=1;return s.sourceMap&&(c=c|2),s.inlineSourceMap&&(c=c|4),Ly(s)&&(c=c|24),s.declarationMap&&(c=c|32),s.emitDeclarationOnly&&(c=c&56),c}function cVe(s,c){let g=c&&(ws(c)?c:HP(c)),d=ws(s)?s:HP(s);if(g===d)return 0;if(!g||!d)return d;let h=g^d,_=0;return h&7&&(_=d&7),h&8&&(_=_|d&8),h&48&&(_=_|d&48),_}function ows(s,c){return s===c||s!==void 0&&c!==void 0&&s.size===c.size&&!SB(s,g=>!c.has(g))}function aws(s,c){var g,d;let h=nR.create(s,c,!1);h.program=s;let _=s.getCompilerOptions();h.compilerOptions=_;let S=_.outFile;h.semanticDiagnosticsPerFile=new Map,S&&_.composite&&c?.outSignature&&S===c.compilerOptions.outFile&&(h.outSignature=c.outSignature&&drn(_,c.compilerOptions,c.outSignature)),h.changedFilesSet=new Set,h.latestChangedDtsFile=_.composite?c?.latestChangedDtsFile:void 0,h.checkPending=h.compilerOptions.noCheck?!0:void 0;let R=nR.canReuseOldState(h.referencedMap,c),T=R?c.compilerOptions:void 0,W=R&&!mbe(_,T),V=_.composite&&c?.emitSignatures&&!S&&!oLe(_,c.compilerOptions),M=!0;R?((g=c.changedFilesSet)==null||g.forEach(Ee=>h.changedFilesSet.add(Ee)),!S&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(h.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),h.seenAffectedFiles=new Set),h.programEmitPending=c.programEmitPending,S&&h.changedFilesSet.size&&(W=!1,M=!1),h.hasErrorsFromOldState=c.hasErrors):h.buildInfoEmitPending=DP(_);let ee=h.referencedMap,re=R?c.referencedMap:void 0,ge=W&&!_.skipLibCheck==!T.skipLibCheck,Ie=ge&&!_.skipDefaultLibCheck==!T.skipDefaultLibCheck;if(h.fileInfos.forEach((Ee,Ne)=>{var Te;let Ze,We;if(!R||!(Ze=c.fileInfos.get(Ne))||Ze.version!==Ee.version||Ze.impliedFormat!==Ee.impliedFormat||!ows(We=ee&&ee.getValues(Ne),re&&re.getValues(Ne))||We&&SB(We,Ue=>!h.fileInfos.has(Ue)&&c.fileInfos.has(Ue)))_e(Ne);else{let Ue=s.getSourceFileByPath(Ne),$e=M?(Te=c.emitDiagnosticsPerFile)==null?void 0:Te.get(Ne):void 0;if($e&&(h.emitDiagnosticsPerFile??(h.emitDiagnosticsPerFile=new Map)).set(Ne,c.hasReusableDiagnostic?frn($e,Ne,s):prn($e,s)),W){if(Ue.isDeclarationFile&&!ge||Ue.hasNoDefaultLib&&!Ie)return;let Ye=c.semanticDiagnosticsPerFile.get(Ne);Ye&&(h.semanticDiagnosticsPerFile.set(Ne,c.hasReusableDiagnostic?frn(Ye,Ne,s):prn(Ye,s)),(h.semanticDiagnosticsFromOldState??(h.semanticDiagnosticsFromOldState=new Set)).add(Ne))}}if(V){let Ue=c.emitSignatures.get(Ne);Ue&&(h.emitSignatures??(h.emitSignatures=new Map)).set(Ne,drn(_,c.compilerOptions,Ue))}}),R&&Dh(c.fileInfos,(Ee,Ne)=>h.fileInfos.has(Ne)?!1:Ee.affectsGlobalScope?!0:(h.buildInfoEmitPending=!0,!!S)))nR.getAllFilesExcludingDefaultLibraryFile(h,s,void 0).forEach(Ee=>_e(Ee.resolvedPath));else if(T){let Ee=sLe(_,T)?HP(_):cVe(_,T);Ee!==0&&(S?h.changedFilesSet.size||(h.programEmitPending=h.programEmitPending?h.programEmitPending|Ee:Ee):(s.getSourceFiles().forEach(Ne=>{h.changedFilesSet.has(Ne.resolvedPath)||btt(h,Ne.resolvedPath,Ee)}),pe.assert(!h.seenAffectedFiles||!h.seenAffectedFiles.size),h.seenAffectedFiles=h.seenAffectedFiles||new Set),h.buildInfoEmitPending=!0)}return R&&h.semanticDiagnosticsPerFile.size!==h.fileInfos.size&&c.checkPending!==h.checkPending&&(h.buildInfoEmitPending=!0),h;function _e(Ee){h.changedFilesSet.add(Ee),S&&(W=!1,M=!1,h.semanticDiagnosticsFromOldState=void 0,h.semanticDiagnosticsPerFile.clear(),h.emitDiagnosticsPerFile=void 0),h.buildInfoEmitPending=!0,h.programEmitPending=void 0}}function drn(s,c,g){return!!s.declarationMap==!!c.declarationMap?g:Xs(g)?[g]:g[0]}function prn(s,c){return s.length?Tr(s,g=>{if(Xs(g.messageText))return g;let d=D3t(g.messageText,g.file,c,h=>{var _;return(_=h.repopulateInfo)==null?void 0:_.call(h)});return d===g.messageText?g:{...g,messageText:d}}):s}function D3t(s,c,g,d){let h=d(s);if(h===!0)return{...l7(c),next:k3t(s.next,c,g,d)};if(h)return{...kJ(c,g,h.moduleReference,h.mode,h.packageName||h.moduleReference),next:k3t(s.next,c,g,d)};let _=k3t(s.next,c,g,d);return _===s.next?s:{...s,next:_}}function k3t(s,c,g,d){return Tr(s,h=>D3t(h,c,g,d))}function frn(s,c,g){if(!s.length)return E;let d;return s.map(_=>{let S=Irn(_,c,g,h);S.reportsUnnecessary=_.reportsUnnecessary,S.reportsDeprecated=_.reportDeprecated,S.source=_.source,S.skippedOn=_.skippedOn;let{relatedInformation:R}=_;return S.relatedInformation=R?R.length?R.map(T=>Irn(T,c,g,h)):[]:void 0,S});function h(_){return d??(d=Mo(Xc(U3(g.getCompilerOptions()),g.getCurrentDirectory()))),Ou(_,d,g.getCanonicalFileName)}}function Irn(s,c,g,d){let{file:h}=s,_=h!==!1?g.getSourceFileByPath(h?d(h):c):void 0;return{...s,file:_,messageText:Xs(s.messageText)?s.messageText:D3t(s.messageText,_,g,S=>S.info)}}function cws(s){nR.releaseCache(s),s.program=void 0}function x3t(s,c){pe.assert(!c||!s.affectedFiles||s.affectedFiles[s.affectedFilesIndex-1]!==c||!s.semanticDiagnosticsPerFile.has(c.resolvedPath))}function hrn(s,c,g){for(var d;;){let{affectedFiles:h}=s;if(h){let R=s.seenAffectedFiles,T=s.affectedFilesIndex;for(;T{let R=g?_&55:_&7;R?s.affectedFilesPendingEmit.set(S,R):s.affectedFilesPendingEmit.delete(S)}),s.programEmitPending)){let _=g?s.programEmitPending&55:s.programEmitPending&7;_?s.programEmitPending=_:s.programEmitPending=void 0}}function lVe(s,c,g,d){let h=cVe(s,c);return g&&(h=h&56),d&&(h=h&8),h}function mtt(s){return s?8:56}function lws(s,c,g){var d;if((d=s.affectedFilesPendingEmit)!=null&&d.size)return Dh(s.affectedFilesPendingEmit,(h,_)=>{var S;let R=s.program.getSourceFileByPath(_);if(!R||!SP(R,s.program)){s.affectedFilesPendingEmit.delete(_);return}let T=(S=s.seenEmittedFiles)==null?void 0:S.get(R.resolvedPath),W=lVe(h,T,c,g);if(W)return{affectedFile:R,emitKind:W}})}function uws(s,c){var g;if((g=s.emitDiagnosticsPerFile)!=null&&g.size)return Dh(s.emitDiagnosticsPerFile,(d,h)=>{var _;let S=s.program.getSourceFileByPath(h);if(!S||!SP(S,s.program)){s.emitDiagnosticsPerFile.delete(h);return}let R=((_=s.seenEmittedFiles)==null?void 0:_.get(S.resolvedPath))||0;if(!(R&mtt(c)))return{affectedFile:S,diagnostics:d,seenKind:R}})}function Crn(s){if(!s.cleanedDiagnosticsOfLibFiles){s.cleanedDiagnosticsOfLibFiles=!0;let c=s.program.getCompilerOptions();F(s.program.getSourceFiles(),g=>s.program.isSourceFileDefaultLibrary(g)&&!mLe(g,c,s.program)&&F3t(s,g.resolvedPath))}}function gws(s,c,g,d){if(F3t(s,c.resolvedPath),s.allFilesExcludingDefaultLibraryFile===s.affectedFiles){Crn(s),nR.updateShapeSignature(s,s.program,c,g,d);return}s.compilerOptions.assumeChangesOnlyAffectDirectDependencies||Aws(s,c,g,d)}function G3t(s,c,g,d,h){if(F3t(s,c),!s.changedFilesSet.has(c)){let _=s.program.getSourceFileByPath(c);_&&(nR.updateShapeSignature(s,s.program,_,d,h,!0),g?btt(s,c,HP(s.compilerOptions)):Ly(s.compilerOptions)&&btt(s,c,s.compilerOptions.declarationMap?56:24))}}function F3t(s,c){return s.semanticDiagnosticsFromOldState?(s.semanticDiagnosticsFromOldState.delete(c),s.semanticDiagnosticsPerFile.delete(c),!s.semanticDiagnosticsFromOldState.size):!0}function _rn(s,c){let g=pe.checkDefined(s.oldSignatures).get(c)||void 0;return pe.checkDefined(s.fileInfos.get(c)).signature!==g}function Z3t(s,c,g,d,h){var _;return(_=s.fileInfos.get(c))!=null&&_.affectsGlobalScope?(nR.getAllFilesExcludingDefaultLibraryFile(s,s.program,void 0).forEach(S=>G3t(s,S.resolvedPath,g,d,h)),Crn(s),!0):!1}function Aws(s,c,g,d){var h,_;if(!s.referencedMap||!s.changedFilesSet.has(c.resolvedPath)||!_rn(s,c.resolvedPath))return;if(sS(s.compilerOptions)){let T=new Map;T.set(c.resolvedPath,!0);let W=nR.getReferencedByPaths(s,c.resolvedPath);for(;W.length>0;){let V=W.pop();if(!T.has(V)){if(T.set(V,!0),Z3t(s,V,!1,g,d))return;if(G3t(s,V,!1,g,d),_rn(s,V)){let M=s.program.getSourceFileByPath(V);W.push(...nR.getReferencedByPaths(s,M.resolvedPath))}}}}let S=new Set,R=!!((h=c.symbol)!=null&&h.exports)&&!!Dh(c.symbol.exports,T=>{if(T.flags&128)return!0;let W=FC(T,s.program.getTypeChecker());return W===T?!1:(W.flags&128)!==0&&jt(W.declarations,V=>ms(V)===c)});(_=s.referencedMap.getKeys(c.resolvedPath))==null||_.forEach(T=>{if(Z3t(s,T,R,g,d))return!0;let W=s.referencedMap.getKeys(T);return W&&SB(W,V=>yrn(s,V,R,S,g,d))})}function yrn(s,c,g,d,h,_){var S;if(Ar(d,c)){if(Z3t(s,c,g,h,_))return!0;G3t(s,c,g,h,_),(S=s.referencedMap.getKeys(c))==null||S.forEach(R=>yrn(s,R,g,d,h,_))}}function Ctt(s,c,g,d){return s.compilerOptions.noCheck?E:Nn(dws(s,c,g,d),s.program.getProgramDiagnostics(c))}function dws(s,c,g,d){d??(d=s.semanticDiagnosticsPerFile);let h=c.resolvedPath,_=d.get(h);if(_)return oVe(_,s.compilerOptions);let S=s.program.getBindAndCheckDiagnostics(c,g);return d.set(h,S),s.buildInfoEmitPending=!0,oVe(S,s.compilerOptions)}function L3t(s){var c;return!!((c=s.options)!=null&&c.outFile)}function jEe(s){return!!s.fileNames}function pws(s){return!jEe(s)&&!!s.root}function brn(s){s.hasErrors===void 0&&(DP(s.compilerOptions)?s.hasErrors=!jt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return h===void 0||!!h.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})&&(Ern(s)||jt(s.program.getSourceFiles(),c=>!!s.program.getProgramDiagnostics(c).length)):s.hasErrors=jt(s.program.getSourceFiles(),c=>{var g,d;let h=s.semanticDiagnosticsPerFile.get(c.resolvedPath);return!!h?.length||!!((d=(g=s.emitDiagnosticsPerFile)==null?void 0:g.get(c.resolvedPath))!=null&&d.length)})||Ern(s))}function Ern(s){return!!s.program.getConfigFileParsingDiagnostics().length||!!s.program.getSyntacticDiagnostics().length||!!s.program.getOptionsDiagnostics().length||!!s.program.getGlobalDiagnostics().length}function Srn(s){return brn(s),s.buildInfoEmitPending??(s.buildInfoEmitPending=!!s.hasErrorsFromOldState!=!!s.hasErrors)}function fws(s){var c,g;let d=s.program.getCurrentDirectory(),h=Mo(Xc(U3(s.compilerOptions),d)),_=s.latestChangedDtsFile?Ne(s.latestChangedDtsFile):void 0,S=[],R=new Map,T=new Set(s.program.getRootFileNames().map(Ke=>Ou(Ke,d,s.program.getCanonicalFileName)));if(brn(s),!DP(s.compilerOptions))return{root:Do(T,Pt=>Te(Pt)),errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};let W=[];if(s.compilerOptions.outFile){let Ke=Do(s.fileInfos.entries(),([_r,Gt])=>{let nt=Ze(_r);return Ue(_r,nt),Gt.impliedFormat?{version:Gt.version,impliedFormat:Gt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Gt.version});return{fileNames:S,fileInfos:Ke,root:W,resolvedRoot:$e(),options:Ye(s.compilerOptions),semanticDiagnosticsPerFile:s.changedFilesSet.size?void 0:ot(),emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),outSignature:s.outSignature,latestChangedDtsFile:_,pendingEmit:s.programEmitPending?s.programEmitPending===HP(s.compilerOptions)?!1:s.programEmitPending:void 0,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C}}let V,M,ee,re=Do(s.fileInfos.entries(),([Ke,Pt])=>{var _r,Gt;let nt=Ze(Ke);Ue(Ke,nt),pe.assert(S[nt-1]===Te(Ke));let Dt=(_r=s.oldSignatures)==null?void 0:_r.get(Ke),tr=Dt!==void 0?Dt||void 0:Pt.signature;if(s.compilerOptions.composite){let ur=s.program.getSourceFileByPath(Ke);if(!Zu(ur)&&SP(ur,s.program)){let Gr=(Gt=s.emitSignatures)==null?void 0:Gt.get(Ke);Gr!==tr&&(ee=Ft(ee,Gr===void 0?nt:[nt,!Xs(Gr)&&Gr[0]===tr?E:Gr]))}}return Pt.version===tr?Pt.affectsGlobalScope||Pt.impliedFormat?{version:Pt.version,signature:void 0,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}:Pt.version:tr!==void 0?Dt===void 0?Pt:{version:Pt.version,signature:tr,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}:{version:Pt.version,signature:!1,affectsGlobalScope:Pt.affectsGlobalScope,impliedFormat:Pt.impliedFormat}}),ge;(c=s.referencedMap)!=null&&c.size()&&(ge=Do(s.referencedMap.keys()).sort(Ca).map(Ke=>[Ze(Ke),We(s.referencedMap.getValues(Ke))]));let Ie=ot(),_e;if((g=s.affectedFilesPendingEmit)!=null&&g.size){let Ke=HP(s.compilerOptions),Pt=new Set;for(let _r of Do(s.affectedFilesPendingEmit.keys()).sort(Ca))if(Ar(Pt,_r)){let Gt=s.program.getSourceFileByPath(_r);if(!Gt||!SP(Gt,s.program))continue;let nt=Ze(_r),Dt=s.affectedFilesPendingEmit.get(_r);_e=Ft(_e,Dt===Ke?nt:Dt===24?[nt]:[nt,Dt])}}return{fileNames:S,fileIdsList:V,fileInfos:re,root:W,resolvedRoot:$e(),options:Ye(s.compilerOptions),referencedMap:ge,semanticDiagnosticsPerFile:Ie,emitDiagnosticsPerFile:Qe(),changeFileSet:Lt(),affectedFilesPendingEmit:_e,emitSignatures:ee,latestChangedDtsFile:_,errors:s.hasErrors?!0:void 0,checkPending:s.checkPending,version:C};function Ne(Ke){return Te(Xc(Ke,d))}function Te(Ke){return Am(mp(h,Ke,s.program.getCanonicalFileName))}function Ze(Ke){let Pt=R.get(Ke);return Pt===void 0&&(S.push(Te(Ke)),R.set(Ke,Pt=S.length)),Pt}function We(Ke){let Pt=Do(Ke.keys(),Ze).sort(Zt),_r=Pt.join(),Gt=M?.get(_r);return Gt===void 0&&(V=Ft(V,Pt),(M??(M=new Map)).set(_r,Gt=V.length)),Gt}function Ue(Ke,Pt){let _r=s.program.getSourceFile(Ke);if(!s.program.getFileIncludeReasons().get(_r.path).some(tr=>tr.kind===0))return;if(!W.length)return W.push(Pt);let Gt=W[W.length-1],nt=Ki(Gt);if(nt&&Gt[1]===Pt-1)return Gt[1]=Pt;if(nt||W.length===1||Gt!==Pt-1)return W.push(Pt);let Dt=W[W.length-2];return!ws(Dt)||Dt!==Gt-1?W.push(Pt):(W[W.length-2]=[Dt,Pt],W.length=W.length-1)}function $e(){let Ke;return T.forEach(Pt=>{let _r=s.program.getSourceFileByPath(Pt);_r&&Pt!==_r.resolvedPath&&(Ke=Ft(Ke,[Ze(_r.resolvedPath),Ze(Pt)]))}),Ke}function Ye(Ke){let Pt,{optionsNameMap:_r}=vie();for(let Gt of _g(Ke).sort(Ca)){let nt=_r.get(Gt.toLowerCase());nt?.affectsBuildInfo&&((Pt||(Pt={}))[Gt]=Tt(nt,Ke[Gt]))}return Pt}function Tt(Ke,Pt){if(Ke){if(pe.assert(Ke.type!=="listOrElement"),Ke.type==="list"){let _r=Pt;if(Ke.element.isFilePath&&_r.length)return _r.map(Ne)}else if(Ke.isFilePath)return Ne(Pt)}return Pt}function ot(){let Ke;return s.fileInfos.forEach((Pt,_r)=>{let Gt=s.semanticDiagnosticsPerFile.get(_r);Gt?Gt.length&&(Ke=Ft(Ke,[Ze(_r),mt(Gt,_r)])):s.changedFilesSet.has(_r)||(Ke=Ft(Ke,Ze(_r)))}),Ke}function Qe(){var Ke;let Pt;if(!((Ke=s.emitDiagnosticsPerFile)!=null&&Ke.size))return Pt;for(let _r of Do(s.emitDiagnosticsPerFile.keys()).sort(Ca)){let Gt=s.emitDiagnosticsPerFile.get(_r);Pt=Ft(Pt,[Ze(_r),mt(Gt,_r)])}return Pt}function mt(Ke,Pt){return pe.assert(!!Ke.length),Ke.map(_r=>{let Gt=ht(_r,Pt);Gt.reportsUnnecessary=_r.reportsUnnecessary,Gt.reportDeprecated=_r.reportsDeprecated,Gt.source=_r.source,Gt.skippedOn=_r.skippedOn;let{relatedInformation:nt}=_r;return Gt.relatedInformation=nt?nt.length?nt.map(Dt=>ht(Dt,Pt)):[]:void 0,Gt})}function ht(Ke,Pt){let{file:_r}=Ke;return{...Ke,file:_r?_r.resolvedPath===Pt?void 0:Te(_r.resolvedPath):!1,messageText:Xs(Ke.messageText)?Ke.messageText:_t(Ke.messageText)}}function _t(Ke){if(Ke.repopulateInfo)return{info:Ke.repopulateInfo(),next:Rt(Ke.next)};let Pt=Rt(Ke.next);return Pt===Ke.next?Ke:{...Ke,next:Pt}}function Rt(Ke){return Ke&&(F(Ke,(Pt,_r)=>{let Gt=_t(Pt);if(Pt===Gt)return;let nt=_r>0?Ke.slice(0,_r-1):[];nt.push(Gt);for(let Dt=_r+1;Dt(s[s.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",s[s.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",s))(V3t||{});function uVe(s,c,g,d,h,_){let S,R,T;return s===void 0?(pe.assert(c===void 0),S=g,T=d,pe.assert(!!T),R=T.getProgram()):Ki(s)?(T=d,R=UEe({rootNames:s,options:c,host:g,oldProgram:T&&T.getProgramOrUndefined(),configFileParsingDiagnostics:h,projectReferences:_}),S=g):(R=s,S=c,T=g,h=d),{host:S,newProgram:R,oldProgram:T,configFileParsingDiagnostics:h||E}}function vrn(s,c){return c?.sourceMapUrlPos!==void 0?s.substring(0,c.sourceMapUrlPos):s}function _tt(s,c,g,d,h){var _;g=vrn(g,h);let S;return(_=h?.diagnostics)!=null&&_.length&&(g+=h.diagnostics.map(W=>`${T(W)}${KS[W.category]}${W.code}: ${R(W.messageText)}`).join(` -`)),(d.createHash??ry)(g);function R(W){return Xs(W)?W:W===void 0?"":W.next?W.messageText+W.next.map(R).join(` -`):W.messageText}function T(W){return W.file.resolvedPath===c.resolvedPath?`(${W.start},${W.length})`:(S===void 0&&(S=Mo(c.resolvedPath)),`${Am(mp(S,W.file.resolvedPath,s.getCanonicalFileName))}(${W.start},${W.length})`)}}function Iws(s,c,g){return(c.createHash??ry)(vrn(s,g))}function ytt(s,{newProgram:c,host:g,oldProgram:d,configFileParsingDiagnostics:h}){let _=d&&d.state;if(_&&c===_.program&&h===c.getConfigFileParsingDiagnostics())return c=void 0,_=void 0,d;let S=aws(c,_);c.getBuildInfo=()=>fws(sws(S)),c=void 0,d=void 0,_=void 0;let R=Stt(S,h);return R.state=S,R.hasChangedEmitSignature=()=>!!S.hasChangedEmitSignature,R.getAllDependencies=Ne=>nR.getAllDependencies(S,pe.checkDefined(S.program),Ne),R.getSemanticDiagnostics=Ee,R.getDeclarationDiagnostics=Ie,R.emit=re,R.releaseProgram=()=>cws(S),s===0?R.getSemanticDiagnosticsOfNextAffectedFile=_e:s===1?(R.getSemanticDiagnosticsOfNextAffectedFile=_e,R.emitNextAffectedFile=M,R.emitBuildInfo=T):il(),R;function T(Ne,Te){if(pe.assert(Zie(S)),Srn(S)){let Ze=S.program.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,Ze}return ftt}function W(Ne,Te,Ze,We,Ue){var $e,Ye,Tt,ot;pe.assert(Zie(S));let Qe=hrn(S,Te,g),mt=HP(S.compilerOptions),ht=Ue?8:Ze?mt&56:mt;if(!Qe){if(S.compilerOptions.outFile){if(S.programEmitPending&&(ht=lVe(S.programEmitPending,S.seenProgramEmit,Ze,Ue),ht&&(Qe=S.program)),!Qe&&(($e=S.emitDiagnosticsPerFile)!=null&&$e.size)){let Lt=S.seenProgramEmit||0;if(!(Lt&mtt(Ue))){S.seenProgramEmit=mtt(Ue)|Lt;let Ke=[];return S.emitDiagnosticsPerFile.forEach(Pt=>Or(Ke,Pt)),{result:{emitSkipped:!0,diagnostics:Ke},affected:S.program}}}}else{let Lt=lws(S,Ze,Ue);if(Lt)({affectedFile:Qe,emitKind:ht}=Lt);else{let Ke=uws(S,Ue);if(Ke)return(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Ke.affectedFile.resolvedPath,Ke.seenKind|mtt(Ue)),{result:{emitSkipped:!0,diagnostics:Ke.diagnostics},affected:Ke.affectedFile}}}if(!Qe){if(Ue||!Srn(S))return;let Lt=S.program,Ke=Lt.emitBuildInfo(Ne||$i(g,g.writeFile),Te);return S.buildInfoEmitPending=!1,{result:Ke,affected:Lt}}}let _t;ht&7&&(_t=0),ht&56&&(_t=_t===void 0?1:void 0);let Rt=Ue?{emitSkipped:!0,diagnostics:S.program.getDeclarationDiagnostics(Qe===S.program?void 0:Qe,Te)}:S.program.emit(Qe===S.program?void 0:Qe,ee(Ne,We),Te,_t,We,void 0,!0);if(Qe!==S.program){let Lt=Qe;S.seenAffectedFiles.add(Lt.resolvedPath),S.affectedFilesIndex!==void 0&&S.affectedFilesIndex++,S.buildInfoEmitPending=!0;let Ke=((Ye=S.seenEmittedFiles)==null?void 0:Ye.get(Lt.resolvedPath))||0;(S.seenEmittedFiles??(S.seenEmittedFiles=new Map)).set(Lt.resolvedPath,ht|Ke);let Pt=((Tt=S.affectedFilesPendingEmit)==null?void 0:Tt.get(Lt.resolvedPath))||mt,_r=cVe(Pt,ht|Ke);_r?(S.affectedFilesPendingEmit??(S.affectedFilesPendingEmit=new Map)).set(Lt.resolvedPath,_r):(ot=S.affectedFilesPendingEmit)==null||ot.delete(Lt.resolvedPath),Rt.diagnostics.length&&(S.emitDiagnosticsPerFile??(S.emitDiagnosticsPerFile=new Map)).set(Lt.resolvedPath,Rt.diagnostics)}else S.changedFilesSet.clear(),S.programEmitPending=S.changedFilesSet.size?cVe(mt,ht):S.programEmitPending?cVe(S.programEmitPending,ht):void 0,S.seenProgramEmit=ht|(S.seenProgramEmit||0),V(Rt.diagnostics),S.buildInfoEmitPending=!0;return{result:Rt,affected:Qe}}function V(Ne){let Te;Ne.forEach(Ze=>{if(!Ze.file)return;let We=Te?.get(Ze.file.resolvedPath);We||(Te??(Te=new Map)).set(Ze.file.resolvedPath,We=[]),We.push(Ze)}),Te&&(S.emitDiagnosticsPerFile=Te)}function M(Ne,Te,Ze,We){return W(Ne,Te,Ze,We,!1)}function ee(Ne,Te){return pe.assert(Zie(S)),Ly(S.compilerOptions)?(Ze,We,Ue,$e,Ye,Tt)=>{var ot,Qe,mt;if(PC(Ze))if(S.compilerOptions.outFile){if(S.compilerOptions.composite){let _t=ht(S.outSignature,void 0);if(!_t)return Tt.skippedDtsWrite=!0;S.outSignature=_t}}else{pe.assert(Ye?.length===1);let _t;if(!Te){let Rt=Ye[0],Lt=S.fileInfos.get(Rt.resolvedPath);if(Lt.signature===Rt.version){let Ke=_tt(S.program,Rt,We,g,Tt);(ot=Tt?.diagnostics)!=null&&ot.length||(_t=Ke),Ke!==Rt.version&&(g.storeSignatureInfo&&(S.signatureInfo??(S.signatureInfo=new Map)).set(Rt.resolvedPath,1),S.affectedFiles&&((Qe=S.oldSignatures)==null?void 0:Qe.get(Rt.resolvedPath))===void 0&&(S.oldSignatures??(S.oldSignatures=new Map)).set(Rt.resolvedPath,Lt.signature||!1),Lt.signature=Ke)}}if(S.compilerOptions.composite){let Rt=Ye[0].resolvedPath;if(_t=ht((mt=S.emitSignatures)==null?void 0:mt.get(Rt),_t),!_t)return Tt.skippedDtsWrite=!0;(S.emitSignatures??(S.emitSignatures=new Map)).set(Rt,_t)}}Ne?Ne(Ze,We,Ue,$e,Ye,Tt):g.writeFile?g.writeFile(Ze,We,Ue,$e,Ye,Tt):S.program.writeFile(Ze,We,Ue,$e,Ye,Tt);function ht(_t,Rt){let Lt=!_t||Xs(_t)?_t:_t[0];if(Rt??(Rt=Iws(We,g,Tt)),Rt===Lt){if(_t===Lt)return;Tt?Tt.differsOnlyInMap=!0:Tt={differsOnlyInMap:!0}}else S.hasChangedEmitSignature=!0,S.latestChangedDtsFile=Ze;return Rt}}:Ne||$i(g,g.writeFile)}function re(Ne,Te,Ze,We,Ue){pe.assert(Zie(S)),s===1&&x3t(S,Ne);let $e=Itt(R,Ne,Te,Ze);if($e)return $e;if(!Ne)if(s===1){let Tt=[],ot=!1,Qe,mt=[],ht;for(;ht=M(Te,Ze,We,Ue);)ot=ot||ht.result.emitSkipped,Qe=Or(Qe,ht.result.diagnostics),mt=Or(mt,ht.result.emittedFiles),Tt=Or(Tt,ht.result.sourceMaps);return{emitSkipped:ot,diagnostics:Qe||E,emittedFiles:mt,sourceMaps:Tt}}else mrn(S,We,!1);let Ye=S.program.emit(Ne,ee(Te,Ue),Ze,We,Ue);return ge(Ne,We,!1,Ye.diagnostics),Ye}function ge(Ne,Te,Ze,We){!Ne&&s!==1&&(mrn(S,Te,Ze),V(We))}function Ie(Ne,Te){var Ze;if(pe.assert(Zie(S)),s===1){x3t(S,Ne);let We,Ue;for(;We=W(void 0,Te,void 0,void 0,!0);)Ne||(Ue=Or(Ue,We.result.diagnostics));return(Ne?(Ze=S.emitDiagnosticsPerFile)==null?void 0:Ze.get(Ne.resolvedPath):Ue)||E}else{let We=S.program.getDeclarationDiagnostics(Ne,Te);return ge(Ne,void 0,!0,We),We}}function _e(Ne,Te){for(pe.assert(Zie(S));;){let Ze=hrn(S,Ne,g),We;if(Ze)if(Ze!==S.program){let Ue=Ze;if((!Te||!Te(Ue))&&(We=Ctt(S,Ue,Ne)),S.seenAffectedFiles.add(Ue.resolvedPath),S.affectedFilesIndex++,S.buildInfoEmitPending=!0,!We)continue}else{let Ue,$e=new Map;S.program.getSourceFiles().forEach(Ye=>Ue=Or(Ue,Ctt(S,Ye,Ne,$e))),S.semanticDiagnosticsPerFile=$e,We=Ue||E,S.changedFilesSet.clear(),S.programEmitPending=HP(S.compilerOptions),S.compilerOptions.noCheck||(S.checkPending=void 0),S.buildInfoEmitPending=!0}else{S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0);return}return{result:We,affected:Ze}}}function Ee(Ne,Te){if(pe.assert(Zie(S)),x3t(S,Ne),Ne)return Ctt(S,Ne,Te);for(;;){let We=_e(Te);if(!We)break;if(We.affected===S.program)return We.result}let Ze;for(let We of S.program.getSourceFiles())Ze=Or(Ze,Ctt(S,We,Te));return S.checkPending&&!S.compilerOptions.noCheck&&(S.checkPending=void 0,S.buildInfoEmitPending=!0),Ze||E}}function btt(s,c,g){var d,h;let _=((d=s.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(s.affectedFilesPendingEmit??(s.affectedFilesPendingEmit=new Map)).set(c,_|g),(h=s.emitDiagnosticsPerFile)==null||h.delete(c)}function P3t(s){return Xs(s)?{version:s,signature:s,affectsGlobalScope:void 0,impliedFormat:void 0}:Xs(s.signature)?s:{version:s.version,signature:s.signature===!1?void 0:s.version,affectsGlobalScope:s.affectsGlobalScope,impliedFormat:s.impliedFormat}}function W3t(s,c){return ws(s)?c:s[1]||24}function O3t(s,c){return s||HP(c||{})}function M3t(s,c,g){var d,h,_,S;let R=Mo(Xc(c,g.getCurrentDirectory())),T=_d(g.useCaseSensitiveFileNames()),W,V=(d=s.fileNames)==null?void 0:d.map(Ie),M,ee=s.latestChangedDtsFile?_e(s.latestChangedDtsFile):void 0,re=new Map,ge=new Set(At(s.changeFileSet,Ee));if(L3t(s))s.fileInfos.forEach((Ue,$e)=>{let Ye=Ee($e+1);re.set(Ye,Xs(Ue)?{version:Ue,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:Ue)}),W={fileInfos:re,compilerOptions:s.options?y9e(s.options,_e):{},semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:We(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,latestChangedDtsFile:ee,outSignature:s.outSignature,programEmitPending:s.pendingEmit===void 0?void 0:O3t(s.pendingEmit,s.options),hasErrors:s.errors,checkPending:s.checkPending};else{M=(h=s.fileIdsList)==null?void 0:h.map(Ye=>new Set(Ye.map(Ee)));let Ue=(_=s.options)!=null&&_.composite&&!s.options.outFile?new Map:void 0;s.fileInfos.forEach((Ye,Tt)=>{let ot=Ee(Tt+1),Qe=P3t(Ye);re.set(ot,Qe),Ue&&Qe.signature&&Ue.set(ot,Qe.signature)}),(S=s.emitSignatures)==null||S.forEach(Ye=>{if(ws(Ye))Ue.delete(Ee(Ye));else{let Tt=Ee(Ye[0]);Ue.set(Tt,!Xs(Ye[1])&&!Ye[1].length?[Ue.get(Tt)]:Ye[1])}});let $e=s.affectedFilesPendingEmit?HP(s.options||{}):void 0;W={fileInfos:re,compilerOptions:s.options?y9e(s.options,_e):{},referencedMap:Te(s.referencedMap,s.options??{}),semanticDiagnosticsPerFile:Ze(s.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:We(s.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,changedFilesSet:ge,affectedFilesPendingEmit:s.affectedFilesPendingEmit&&Ru(s.affectedFilesPendingEmit,Ye=>Ee(ws(Ye)?Ye:Ye[0]),Ye=>W3t(Ye,$e)),latestChangedDtsFile:ee,emitSignatures:Ue?.size?Ue:void 0,hasErrors:s.errors,checkPending:s.checkPending}}return{state:W,getProgram:il,getProgramOrUndefined:cm,releaseProgram:Dc,getCompilerOptions:()=>W.compilerOptions,getSourceFile:il,getSourceFiles:il,getOptionsDiagnostics:il,getGlobalDiagnostics:il,getConfigFileParsingDiagnostics:il,getSyntacticDiagnostics:il,getDeclarationDiagnostics:il,getSemanticDiagnostics:il,emit:il,getAllDependencies:il,getCurrentDirectory:il,emitNextAffectedFile:il,getSemanticDiagnosticsOfNextAffectedFile:il,emitBuildInfo:il,close:Dc,hasChangedEmitSignature:As};function Ie(Ue){return Ou(Ue,R,T)}function _e(Ue){return Xc(Ue,R)}function Ee(Ue){return V[Ue-1]}function Ne(Ue){return M[Ue-1]}function Te(Ue,$e){let Ye=nR.createReferencedMap($e);return!Ye||!Ue||Ue.forEach(([Tt,ot])=>Ye.set(Ee(Tt),Ne(ot))),Ye}function Ze(Ue){let $e=new Map(lr(re.keys(),Ye=>ge.has(Ye)?void 0:[Ye,E]));return Ue?.forEach(Ye=>{ws(Ye)?$e.delete(Ee(Ye)):$e.set(Ee(Ye[0]),Ye[1])}),$e}function We(Ue){return Ue&&Ru(Ue,$e=>Ee($e[0]),$e=>$e[1])}}function Ett(s,c,g){let d=Mo(Xc(c,g.getCurrentDirectory())),h=_d(g.useCaseSensitiveFileNames()),_=new Map,S=0,R=new Map,T=new Map(s.resolvedRoot);return s.fileInfos.forEach((V,M)=>{let ee=Ou(s.fileNames[M],d,h),re=Xs(V)?V:V.version;if(_.set(ee,re),SOu(_,d,h))}function Stt(s,c){return{state:void 0,getProgram:g,getProgramOrUndefined:()=>s.program,releaseProgram:()=>s.program=void 0,getCompilerOptions:()=>s.compilerOptions,getSourceFile:d=>g().getSourceFile(d),getSourceFiles:()=>g().getSourceFiles(),getOptionsDiagnostics:d=>g().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>g().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,h)=>g().getSyntacticDiagnostics(d,h),getDeclarationDiagnostics:(d,h)=>g().getDeclarationDiagnostics(d,h),getSemanticDiagnostics:(d,h)=>g().getSemanticDiagnostics(d,h),emit:(d,h,_,S,R)=>g().emit(d,h,_,S,R),emitBuildInfo:(d,h)=>g().emitBuildInfo(d,h),getAllDependencies:il,getCurrentDirectory:()=>g().getCurrentDirectory(),close:Dc};function g(){return pe.checkDefined(s.program)}}function Brn(s,c,g,d,h,_){return ytt(0,uVe(s,c,g,d,h,_))}function vtt(s,c,g,d,h,_){return ytt(1,uVe(s,c,g,d,h,_))}function wrn(s,c,g,d,h,_){let{newProgram:S,configFileParsingDiagnostics:R}=uVe(s,c,g,d,h,_);return Stt({program:S,compilerOptions:S.getCompilerOptions()},R)}function gVe(s){return di(s,"/node_modules/.staging")?aa(s,"/.staging"):jt(Qp,c=>s.includes(c))?void 0:s}function Y3t(s,c){if(c<=1)return 1;let g=1,d=s[0].search(/[a-z]:/i)===0;if(s[0]!==ag&&!d&&s[1].search(/[a-z]\$$/i)===0){if(c===2)return 2;g=2,d=!0}return d&&!s[g].match(/^users$/i)?g:s[g].match(/^workspaces$/i)?g+1:g+2}function Btt(s,c){if(c===void 0&&(c=s.length),c<=2)return!1;let g=Y3t(s,c);return c>g+1}function zEe(s){return Btt(Np(s))}function Q3t(s){return Rrn(Mo(s))}function Trn(s,c){if(c.lengthh.length+1?J3t(W,T,Math.max(h.length+1,V+1),ee):{dir:g,dirPath:d,nonRecursive:!0}:Nrn(W,T,T.length-1,V,M,h,ee,R)}function Nrn(s,c,g,d,h,_,S,R){if(h!==-1)return J3t(s,c,h+1,S);let T=!0,W=g;if(!R){for(let V=0;V=g&&d+2hws(d,h,_,s,g,c,S)}}function hws(s,c,g,d,h,_,S){let R=AVe(s),T=BU(g,d,h,R,c,_,S);if(!s.getGlobalTypingsCacheLocation)return T;let W=s.getGlobalTypingsCacheLocation();if(W!==void 0&&!Xr(g)&&!(T.resolvedModule&&PAe(T.resolvedModule.extension))){let{resolvedModule:V,failedLookupLocations:M,affectingLocations:ee,resolutionDiagnostics:re}=aOt(pe.checkDefined(s.globalCacheResolutionModuleName)(g),s.projectName,h,R,W,c);if(V)return T.resolvedModule=V,T.failedLookupLocations=Bie(T.failedLookupLocations,M),T.affectingLocations=Bie(T.affectingLocations,ee),T.resolutionDiagnostics=Bie(T.resolutionDiagnostics,re),T}return T}function Ttt(s,c,g){let d,h,_,S=new Set,R=new Set,T=new Set,W=new Map,V=new Map,M=!1,ee,re,ge,Ie,_e,Ee=!1,Ne=FA(()=>s.getCurrentDirectory()),Te=s.getCachedDirectoryStructureHost(),Ze=new Map,We=Tie(Ne(),s.getCanonicalFileName,s.getCompilationSettings()),Ue=new Map,$e=D9e(Ne(),s.getCanonicalFileName,s.getCompilationSettings(),We.getPackageJsonInfoCache(),We.optionsToRedirectsKey),Ye=new Map,Tt=Tie(Ne(),s.getCanonicalFileName,aet(s.getCompilationSettings()),We.getPackageJsonInfoCache()),ot=new Map,Qe=new Map,mt=K3t(c,Ne),ht=s.toPath(mt),_t=Np(ht),Rt=Btt(_t),Lt=new Map,Ke=new Map,Pt=new Map,_r=new Map;return{rootDirForResolution:c,resolvedModuleNames:Ze,resolvedTypeReferenceDirectives:Ue,resolvedLibraries:Ye,resolvedFileToResolution:W,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:T,directoryWatchesOfFailedLookups:ot,fileWatchesOfAffectingLocations:Qe,packageDirWatchers:Ke,dirPathToSymlinkPackageRefCount:Pt,watchFailedLookupLocationsOfExternalModuleResolutions:si,getModuleResolutionCache:()=>We,startRecordingFilesWithChangedResolutions:Dt,finishRecordingFilesWithChangedResolutions:tr,startCachingPerDirectoryResolution:dt,finishCachingPerDirectoryResolution:st,resolveModuleNameLiterals:jn,resolveTypeReferenceDirectiveReferences:mn,resolveLibrary:Zi,resolveSingleModuleNameWithoutWatching:Ns,removeResolutionsFromProjectReferenceRedirects:Oa,removeResolutionsOfFile:tl,hasChangedAutomaticTypeDirectiveNames:()=>M,invalidateResolutionOfFile:Tg,invalidateResolutionsOfFailedLookupLocations:Pn,setFilesWithInvalidatedNonRelativeUnresolvedImports:Cs,createHasInvalidatedResolutions:Gr,isFileWithInvalidatedNonRelativeUnresolvedImports:ur,updateTypeRootsWatch:Kr,closeTypeRootsWatch:nr,clear:Gt,onChangesAffectModuleResolution:nt};function Gt(){Fy(ot,Cv),Fy(Qe,Cv),Lt.clear(),Ke.clear(),Pt.clear(),S.clear(),nr(),Ze.clear(),Ue.clear(),W.clear(),R.clear(),T.clear(),ge=void 0,Ie=void 0,_e=void 0,re=void 0,ee=void 0,Ee=!1,We.clear(),$e.clear(),We.update(s.getCompilationSettings()),$e.update(s.getCompilationSettings()),Tt.clear(),V.clear(),Ye.clear(),M=!1}function nt(){Ee=!0,We.clearAllExceptPackageJsonInfoCache(),$e.clearAllExceptPackageJsonInfoCache(),We.update(s.getCompilationSettings()),$e.update(s.getCompilationSettings())}function Dt(){d=[]}function tr(){let hr=d;return d=void 0,hr}function ur(hr){if(!_)return!1;let En=_.get(hr);return!!En&&!!En.length}function Gr(hr,En){Pn();let Ni=h;return h=void 0,{hasInvalidatedResolutions:Gi=>hr(Gi)||Ee||!!Ni?.has(Gi)||ur(Gi),hasInvalidatedLibResolutions:Gi=>{var nn;return En(Gi)||!!((nn=Ye?.get(Gi))!=null&&nn.isInvalidated)}}}function dt(){We.isReadonly=void 0,$e.isReadonly=void 0,Tt.isReadonly=void 0,We.getPackageJsonInfoCache().isReadonly=void 0,We.clearAllExceptPackageJsonInfoCache(),$e.clearAllExceptPackageJsonInfoCache(),Tt.clearAllExceptPackageJsonInfoCache(),Gl(),Lt.clear()}function pr(hr){Ye.forEach((En,Ni)=>{var Gi;(Gi=hr?.resolvedLibReferences)!=null&&Gi.has(Ni)||(hn(En,s.toPath(nVe(s.getCompilationSettings(),Ne(),Ni)),xL),Ye.delete(Ni))})}function st(hr,En){_=void 0,Ee=!1,Gl(),hr!==En&&(pr(hr),hr?.getSourceFiles().forEach(Ni=>{var Gi;let nn=((Gi=Ni.packageJsonLocations)==null?void 0:Gi.length)??0,bn=V.get(Ni.resolvedPath)??E;for(let ds=bn.length;dsnn)for(let ds=nn;ds{let nn=hr?.getSourceFileByPath(Gi);(!nn||nn.resolvedPath!==Gi)&&(Ni.forEach(bn=>Qe.get(bn).files--),V.delete(Gi))})),ot.forEach(zt),Qe.forEach(Ht),Ke.forEach(ir),M=!1,We.isReadonly=!0,$e.isReadonly=!0,Tt.isReadonly=!0,We.getPackageJsonInfoCache().isReadonly=!0,Lt.clear()}function ir(hr,En){hr.dirPathToWatcher.size===0&&Ke.delete(En)}function zt(hr,En){hr.refCount===0&&(ot.delete(En),hr.watcher.close())}function Ht(hr,En){var Ni;hr.files===0&&hr.resolutions===0&&!((Ni=hr.symlinks)!=null&&Ni.size)&&(Qe.delete(En),hr.watcher.close())}function Br({entries:hr,containingFile:En,containingSourceFile:Ni,redirectedReference:Gi,options:nn,perFileCache:bn,reusedNames:ds,loader:Mt,getResolutionWithResolvedFileName:cn,deferWatchingNonRelativeResolution:Bt,shouldRetryResolution:xe,logChanges:fr}){var Je;let In=s.toPath(En),Hn=bn.get(In)||bn.set(In,wie()).get(In),Ot=[],$r=fr&&ur(In),ri=s.getCurrentProgram(),ao=ri&&((Je=ri.getRedirectFromSourceFile(En))==null?void 0:Je.resolvedRef),Bs=ao?!Gi||Gi.sourceFile.path!==ao.sourceFile.path:!!Gi,Ys=wie();for(let wn of hr){let Mn=Mt.nameAndMode.getName(wn),ci=Mt.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),es=Hn.get(Mn,ci);if(!Ys.has(Mn,ci)&&(Ee||Bs||!es||es.isInvalidated||$r&&!Xr(Mn)&&xe(es))){let Wi=es;es=Mt.resolve(Mn,ci),s.onDiscoveredSymlink&&mws(es)&&s.onDiscoveredSymlink(),Hn.set(Mn,ci,es),es!==Wi&&(si(Mn,es,In,cn,Bt),Wi&&hn(Wi,In,cn)),fr&&d&&!tn(Wi,es)&&(d.push(In),fr=!1)}else{let Wi=AVe(s);if(VP(nn,Wi)&&!Ys.has(Mn,ci)){let Vn=cn(es);eu(Wi,bn===Ze?Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Vn?.resolvedFileName?Vn.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Mn,En,Vn?.resolvedFileName,Vn?.packageId&&oN(Vn.packageId))}}pe.assert(es!==void 0&&!es.isInvalidated),Ys.set(Mn,ci,!0),Ot.push(es)}return ds?.forEach(wn=>Ys.set(Mt.nameAndMode.getName(wn),Mt.nameAndMode.getMode(wn,Ni,Gi?.commandLine.options||nn),!0)),Hn.size()!==Ys.size()&&Hn.forEach((wn,Mn,ci)=>{Ys.has(Mn,ci)||(hn(wn,In,cn),Hn.delete(Mn,ci))}),Ot;function tn(wn,Mn){if(wn===Mn)return!0;if(!wn||!Mn)return!1;let ci=cn(wn),es=cn(Mn);return ci===es?!0:!ci||!es?!1:ci.resolvedFileName===es.resolvedFileName}}function mn(hr,En,Ni,Gi,nn,bn){return Br({entries:hr,containingFile:En,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:bn,perFileCache:Ue,loader:rVe(En,Ni,Gi,AVe(s),$e),getResolutionWithResolvedFileName:c7,shouldRetryResolution:ds=>ds.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function jn(hr,En,Ni,Gi,nn,bn){return Br({entries:hr,containingFile:En,containingSourceFile:nn,redirectedReference:Ni,options:Gi,reusedNames:bn,perFileCache:Ze,loader:j3t(En,Ni,Gi,s,We),getResolutionWithResolvedFileName:xL,shouldRetryResolution:ds=>!ds.resolvedModule||!ez(ds.resolvedModule.extension),logChanges:g,deferWatchingNonRelativeResolution:!0})}function Zi(hr,En,Ni,Gi){let nn=AVe(s),bn=Ye?.get(Gi);if(!bn||bn.isInvalidated){let ds=bn;bn=k9e(hr,En,Ni,nn,Tt);let Mt=s.toPath(En);si(hr,bn,Mt,xL,!1),Ye.set(Gi,bn),ds&&hn(ds,Mt,xL)}else if(VP(Ni,nn)){let ds=xL(bn);eu(nn,ds?.resolvedFileName?ds.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,hr,En,ds?.resolvedFileName,ds?.packageId&&oN(ds.packageId))}return bn}function Ns(hr,En){var Ni,Gi;let nn=s.toPath(En),bn=Ze.get(nn),ds=bn?.get(hr,void 0);if(ds&&!ds.isInvalidated)return ds;let Mt=(Ni=s.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Ni.call(s,We),cn=AVe(s),Bt=BU(hr,En,s.getCompilationSettings(),cn,We);return(Gi=s.afterResolveSingleModuleNameWithoutWatching)==null||Gi.call(s,We,hr,En,Bt,Mt),Bt}function An(hr){return di(hr,"/node_modules/@types")}function si(hr,En,Ni,Gi,nn){if((En.files??(En.files=new Set)).add(Ni),En.files.size!==1)return;!nn||Xr(hr)?Ic(En):S.add(En);let bn=Gi(En);if(bn&&bn.resolvedFileName){let ds=s.toPath(bn.resolvedFileName),Mt=W.get(ds);Mt||W.set(ds,Mt=new Set),Mt.add(En)}}function ks(hr,En){let Ni=s.toPath(hr),Gi=wtt(hr,Ni,mt,ht,_t,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dir:nn,dirPath:bn,nonRecursive:ds,packageDir:Mt,packageDirPath:cn}=Gi;bn===ht?(pe.assert(ds),pe.assert(!Mt),En=!0):Wo(nn,bn,Mt,cn,ds)}return En}function Ic(hr){var En;pe.assert(!!((En=hr.files)!=null&&En.size));let{failedLookupLocations:Ni,affectingLocations:Gi,alternateResult:nn}=hr;if(!Ni?.length&&!Gi?.length&&!nn)return;(Ni?.length||nn)&&R.add(hr);let bn=!1;if(Ni)for(let ds of Ni)bn=ks(ds,bn);nn&&(bn=ks(nn,bn)),bn&&Wo(mt,ht,void 0,void 0,!0),su(hr,!Ni?.length&&!nn)}function su(hr,En){var Ni;pe.assert(!!((Ni=hr.files)!=null&&Ni.size));let{affectingLocations:Gi}=hr;if(Gi?.length){En&&T.add(hr);for(let nn of Gi)Zn(nn,!0)}}function Zn(hr,En){let Ni=Qe.get(hr);if(Ni){En?Ni.resolutions++:Ni.files++;return}let Gi=hr,nn=!1,bn;s.realpath&&(Gi=s.realpath(hr),hr!==Gi&&(nn=!0,bn=Qe.get(Gi)));let ds=En?1:0,Mt=En?0:1;if(!nn||!bn){let cn={watcher:X3t(s.toPath(Gi))?s.watchAffectingFileLocation(Gi,(Bt,xe)=>{Te?.addOrDeleteFile(Bt,s.toPath(Gi),xe),ya(Gi,We.getPackageJsonInfoCache().getInternalMap()),s.scheduleInvalidateResolutionsOfFailedLookupLocations()}):Vie,resolutions:nn?0:ds,files:nn?0:Mt,symlinks:void 0};Qe.set(Gi,cn),nn&&(bn=cn)}if(nn){pe.assert(!!bn);let cn={watcher:{close:()=>{var Bt;let xe=Qe.get(Gi);(Bt=xe?.symlinks)!=null&&Bt.delete(hr)&&!xe.symlinks.size&&!xe.resolutions&&!xe.files&&(Qe.delete(Gi),xe.watcher.close())}},resolutions:ds,files:Mt,symlinks:void 0};Qe.set(hr,cn),(bn.symlinks??(bn.symlinks=new Set)).add(hr)}}function ya(hr,En){var Ni;let Gi=Qe.get(hr);Gi?.resolutions&&(re??(re=new Set)).add(hr),Gi?.files&&(ee??(ee=new Set)).add(hr),(Ni=Gi?.symlinks)==null||Ni.forEach(nn=>ya(nn,En)),En?.delete(s.toPath(hr))}function Gl(){S.forEach(Ic),S.clear()}function ba(hr,En,Ni,Gi,nn){pe.assert(!nn);let bn=Lt.get(Gi),ds=Ke.get(Gi);if(bn===void 0){let Bt=s.realpath(Ni);bn=Bt!==Ni&&s.toPath(Bt)!==Gi,Lt.set(Gi,bn),ds?ds.isSymlink!==bn&&(ds.dirPathToWatcher.forEach(xe=>{Oi(ds.isSymlink?Gi:En),xe.watcher=cn()}),ds.isSymlink=bn):Ke.set(Gi,ds={dirPathToWatcher:new Map,isSymlink:bn})}else pe.assertIsDefined(ds),pe.assert(bn===ds.isSymlink);let Mt=ds.dirPathToWatcher.get(En);Mt?Mt.refCount++:(ds.dirPathToWatcher.set(En,{watcher:cn(),refCount:1}),bn&&Pt.set(En,(Pt.get(En)??0)+1));function cn(){return bn?hc(Ni,Gi,nn):hc(hr,En,nn)}}function Wo(hr,En,Ni,Gi,nn){!Gi||!s.realpath?hc(hr,En,nn):ba(hr,En,Ni,Gi,nn)}function hc(hr,En,Ni){let Gi=ot.get(En);return Gi?(pe.assert(!!Ni==!!Gi.nonRecursive),Gi.refCount++):ot.set(En,Gi={watcher:lo(hr,En,Ni),refCount:1,nonRecursive:Ni}),Gi}function yr(hr,En){let Ni=s.toPath(hr),Gi=wtt(hr,Ni,mt,ht,_t,Rt,Ne,s.preferNonRecursiveWatch);if(Gi){let{dirPath:nn,packageDirPath:bn}=Gi;if(nn===ht)En=!0;else if(bn&&s.realpath){let ds=Ke.get(bn),Mt=ds.dirPathToWatcher.get(nn);if(Mt.refCount--,Mt.refCount===0&&(Oi(ds.isSymlink?bn:nn),ds.dirPathToWatcher.delete(nn),ds.isSymlink)){let cn=Pt.get(nn)-1;cn===0?Pt.delete(nn):Pt.set(nn,cn)}}else Oi(nn)}return En}function hn(hr,En,Ni){if(pe.checkDefined(hr.files).delete(En),hr.files.size)return;hr.files=void 0;let Gi=Ni(hr);if(Gi&&Gi.resolvedFileName){let Mt=s.toPath(Gi.resolvedFileName),cn=W.get(Mt);cn?.delete(hr)&&!cn.size&&W.delete(Mt)}let{failedLookupLocations:nn,affectingLocations:bn,alternateResult:ds}=hr;if(R.delete(hr)){let Mt=!1;if(nn)for(let cn of nn)Mt=yr(cn,Mt);ds&&(Mt=yr(ds,Mt)),Mt&&Oi(ht)}else bn?.length&&T.delete(hr);if(bn)for(let Mt of bn){let cn=Qe.get(Mt);cn.resolutions--}}function Oi(hr){let En=ot.get(hr);En.refCount--}function lo(hr,En,Ni){return s.watchDirectoryOfFailedLookupLocation(hr,Gi=>{let nn=s.toPath(Gi);Te&&Te.addOrDeleteFileOrDirectory(Gi,nn),Tu(nn,En===nn)},Ni?0:1)}function pa(hr,En,Ni){let Gi=hr.get(En);Gi&&(Gi.forEach(nn=>hn(nn,En,Ni)),hr.delete(En))}function Oa(hr){if(!aA(hr,".json"))return;let En=s.getCurrentProgram();if(!En)return;let Ni=En.getResolvedProjectReferenceByPath(hr);Ni&&Ni.commandLine.fileNames.forEach(Gi=>tl(s.toPath(Gi)))}function tl(hr){pa(Ze,hr,xL),pa(Ue,hr,c7)}function Qu(hr,En){if(!hr)return!1;let Ni=!1;return hr.forEach(Gi=>{if(!(Gi.isInvalidated||!En(Gi))){Gi.isInvalidated=Ni=!0;for(let nn of pe.checkDefined(Gi.files))(h??(h=new Set)).add(nn),M=M||di(nn,Fde)}}),Ni}function Tg(hr){tl(hr);let En=M;Qu(W.get(hr),Tf)&&M&&!En&&s.onChangedAutomaticTypeDirectiveNames()}function Cs(hr){pe.assert(_===hr||_===void 0),_=hr}function Tu(hr,En){if(En)(_e||(_e=new Set)).add(hr);else{let Ni=gVe(hr);if(!Ni||(hr=Ni,s.fileIsOpen(hr)))return!1;let Gi=Mo(hr);if(An(hr)||Vd(hr)||An(Gi)||Vd(Gi))(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);else{if(I3t(s.getCurrentProgram(),hr)||aA(hr,".map"))return!1;(ge||(ge=new Set)).add(hr),(Ie||(Ie=new Set)).add(hr);let nn=wEe(hr,!0);nn&&(Ie||(Ie=new Set)).add(nn)}}s.scheduleInvalidateResolutionsOfFailedLookupLocations()}function Pr(){let hr=We.getPackageJsonInfoCache().getInternalMap();hr&&(ge||Ie||_e)&&hr.forEach((En,Ni)=>on(Ni)?hr.delete(Ni):void 0)}function Pn(){var hr;if(Ee)return ee=void 0,Pr(),(ge||Ie||_e||re)&&Qu(Ye,pt),ge=void 0,Ie=void 0,_e=void 0,re=void 0,!0;let En=!1;return ee&&((hr=s.getCurrentProgram())==null||hr.getSourceFiles().forEach(Ni=>{jt(Ni.packageJsonLocations,Gi=>ee.has(Gi))&&((h??(h=new Set)).add(Ni.path),En=!0)}),ee=void 0),!ge&&!Ie&&!_e&&!re||(En=Qu(R,pt)||En,Pr(),ge=void 0,Ie=void 0,_e=void 0,En=Qu(T,it)||En,re=void 0),En}function pt(hr){var En;return it(hr)?!0:!ge&&!Ie&&!_e?!1:((En=hr.failedLookupLocations)==null?void 0:En.some(Ni=>on(s.toPath(Ni))))||!!hr.alternateResult&&on(s.toPath(hr.alternateResult))}function on(hr){return ge?.has(hr)||ae(Ie?.keys()||[],En=>Ac(hr,En)?!0:void 0)||ae(_e?.keys()||[],En=>hr.length>En.length&&Ac(hr,En)&&(cE(En)||hr[En.length]===ag)?!0:void 0)}function it(hr){var En;return!!re&&((En=hr.affectingLocations)==null?void 0:En.some(Ni=>re.has(Ni)))}function nr(){Fy(_r,dv)}function Fr(hr){return Dn(hr)?s.watchTypeRootsDirectory(hr,En=>{let Ni=s.toPath(En);Te&&Te.addOrDeleteFileOrDirectory(En,Ni),M=!0,s.onChangedAutomaticTypeDirectiveNames();let Gi=U3t(hr,s.toPath(hr),ht,_t,Rt,Ne,s.preferNonRecursiveWatch,nn=>ot.has(nn)||Pt.has(nn));Gi&&Tu(Ni,Gi===Ni)},1):Vie}function Kr(){let hr=s.getCompilationSettings();if(hr.types){nr();return}let En=mde(hr,{getCurrentDirectory:Ne});En?Q7(_r,new Set(En),{createNewValue:Fr,onDeleteValue:dv}):nr()}function Dn(hr){return s.getCompilationSettings().typeRoots?!0:Q3t(s.toPath(hr))}}function mws(s){var c,g;return!!((c=s.resolvedModule)!=null&&c.originalPath||(g=s.resolvedTypeReferenceDirective)!=null&&g.originalPath)}var Drn=yd?{getCurrentDirectory:()=>yd.getCurrentDirectory(),getNewLine:()=>yd.newLine,getCanonicalFileName:_d(yd.useCaseSensitiveFileNames)}:void 0;function Gz(s,c){let g=s===yd&&Drn?Drn:{getCurrentDirectory:()=>s.getCurrentDirectory(),getNewLine:()=>s.newLine,getCanonicalFileName:_d(s.useCaseSensitiveFileNames)};if(!c)return h=>s.write(ctt(h,g));let d=new Array(1);return h=>{d[0]=h,s.write(E3t(d,g)+g.getNewLine()),d[0]=void 0}}function krn(s,c,g){return s.clearScreen&&!g.preserveWatchOutput&&!g.extendedDiagnostics&&!g.diagnostics&&k(xrn,c.code)?(s.clearScreen(),!0):!1}var xrn=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function Cws(s,c){return k(xrn,s.code)?c+c:c}function qEe(s){return s.now?s.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function Rtt(s,c){return c?(g,d,h)=>{krn(s,g,h);let _=`[${AQ(qEe(s),"\x1B[90m")}] `;_+=`${wN(g.messageText,s.newLine)}${d+d}`,s.write(_)}:(g,d,h)=>{let _="";krn(s,g,h)||(_+=d),_+=`${qEe(s)} - `,_+=`${wN(g.messageText,s.newLine)}${Cws(g,d)}`,s.write(_)}}function z3t(s,c,g,d,h,_){let S=h;S.onUnRecoverableConfigFileDiagnostic=T=>Zrn(h,_,T);let R=_Ee(s,c,S,g,d);return S.onUnRecoverableConfigFileDiagnostic=void 0,R}function dVe(s){return ct(s,c=>c.category===1)}function pVe(s){return Me(s,g=>g.category===1).map(g=>{if(g.file!==void 0)return`${g.file.fileName}`}).map(g=>{if(g===void 0)return;let d=de(s,h=>h.file!==void 0&&h.file.fileName===g);if(d!==void 0){let{line:h}=Ra(d.file,d.start);return{fileName:g,line:h+1}}})}function Ntt(s){return s===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function Grn(s,c){let g=AQ(":"+s.line,"\x1B[90m");return lE(s.fileName)&&lE(c)?mp(c,s.fileName,!1)+g:s.fileName+g}function Dtt(s,c,g,d){if(s===0)return"";let h=c.filter(V=>V!==void 0),_=h.map(V=>`${V.fileName}:${V.line}`).filter((V,M,ee)=>ee.indexOf(V)===M),S=h[0]&&Grn(h[0],d.getCurrentDirectory()),R;s===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,S]:[Z.Found_1_error]:R=_.length===0?[Z.Found_0_errors,s]:_.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,s,S]:[Z.Found_0_errors_in_1_files,s,_.length];let T=Nf(...R),W=_.length>1?_ws(h,d):"";return`${g}${wN(T.messageText,g)}${g}${g}${W}`}function _ws(s,c){let g=s.filter((M,ee,re)=>ee===re.findIndex(ge=>ge?.fileName===M?.fileName));if(g.length===0)return"";let d=M=>Math.log(M)*Math.LOG10E+1,h=g.map(M=>[M,ct(s,ee=>ee.fileName===M.fileName)]),_=ls(h,0,M=>M[1]),S=Z.Errors_Files.message,R=S.split(" ")[0].length,T=Math.max(R,d(_)),W=Math.max(d(_)-R,0),V="";return V+=" ".repeat(W)+S+` -`,h.forEach(M=>{let[ee,re]=M,ge=Math.log(re)*Math.LOG10E+1|0,Ie=ge{c(d.fileName)})}function xtt(s,c){var g,d;let h=s.getFileIncludeReasons(),_=S=>r2(S,s.getCurrentDirectory(),s.getCanonicalFileName);for(let S of s.getSourceFiles())c(`${Lie(S,_)}`),(g=h.get(S.path))==null||g.forEach(R=>c(` ${Ltt(s,R,_).messageText}`)),(d=Gtt(S,s.getCompilerOptionsForFile(S),_))==null||d.forEach(R=>c(` ${R.messageText}`))}function Gtt(s,c,g){var d;let h;if(s.path!==s.resolvedPath&&(h??(h=[])).push(wu(void 0,Z.File_is_output_of_project_reference_source_0,Lie(s.originalFileName,g))),s.redirectInfo&&(h??(h=[])).push(wu(void 0,Z.File_redirects_to_file_0,Lie(s.redirectInfo.redirectTarget,g))),vl(s))switch(NU(s,c)){case 99:s.packageJsonScope&&(h??(h=[])).push(wu(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,Lie(Ei(s.packageJsonLocations),g)));break;case 1:s.packageJsonScope?(h??(h=[])).push(wu(void 0,s.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,Lie(Ei(s.packageJsonLocations),g))):(d=s.packageJsonLocations)!=null&&d.length&&(h??(h=[])).push(wu(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return h}function Ftt(s,c){var g;let d=s.getCompilerOptions().configFile;if(!((g=d?.configFileSpecs)!=null&&g.validatedFilesSpec))return;let h=s.getCanonicalFileName(c),_=Mo(Xc(d.fileName,s.getCurrentDirectory())),S=Se(d.configFileSpecs.validatedFilesSpec,R=>s.getCanonicalFileName(Xc(R,_))===h);return S!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[S]:void 0}function Ztt(s,c){var g,d;let h=s.getCompilerOptions().configFile;if(!((g=h?.configFileSpecs)!=null&&g.validatedIncludeSpecs))return;if(h.configFileSpecs.isDefaultIncludeSpec)return!0;let _=aA(c,".json"),S=Mo(Xc(h.fileName,s.getCurrentDirectory())),R=s.useCaseSensitiveFileNames(),T=Se((d=h?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,W=>{if(_&&!di(W,".json"))return!1;let V=Ebe(W,S,"files");return!!V&&zD(`(?:${V})$`,R).test(c)});return T!==-1?h.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[T]:void 0}function Ltt(s,c,g){var d,h;let _=s.getCompilerOptions();if(K3(c)){let S=Zde(s,c),R=Fie(S)?S.file.text.substring(S.pos,S.end):`"${S.text}"`,T;switch(pe.assert(Fie(S)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:Fie(S)?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:S.text===PD?T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:T=S.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:pe.assert(!S.packageId),T=Z.Referenced_via_0_from_file_1;break;case 5:T=S.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:pe.assert(!S.packageId),T=Z.Library_referenced_via_0_from_file_1;break;default:pe.assertNever(c)}return wu(void 0,T,R,Lie(S.file,g),S.packageId&&oN(S.packageId))}switch(c.kind){case 0:if(!((d=_.configFile)!=null&&d.configFileSpecs))return wu(void 0,Z.Root_file_specified_for_compilation);let S=Xc(s.getRootFileNames()[c.index],s.getCurrentDirectory());if(Ftt(s,S))return wu(void 0,Z.Part_of_files_list_in_tsconfig_json);let T=Ztt(s,S);return Xs(T)?wu(void 0,Z.Matched_by_include_pattern_0_in_1,T,Lie(_.configFile,g)):wu(void 0,T?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let W=c.kind===2,V=pe.checkDefined((h=s.getResolvedProjectReferences())==null?void 0:h[c.index]);return wu(void 0,_.outFile?W?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:W?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,Lie(V.sourceFile.fileName,g),_.outFile?"--outFile":"--out");case 8:{let M=_.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,oN(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,oN(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return wu(void 0,...M)}case 6:{if(c.index!==void 0)return wu(void 0,Z.Library_0_specified_in_compilerOptions,_.lib[c.index]);let M=TAe(Mg(_)),ee=M?[Z.Default_library_for_target_0,M]:[Z.Default_library];return wu(void 0,...ee)}default:pe.assertNever(c)}}function Lie(s,c){let g=Xs(s)?s:s.fileName;return c?c(g):g}function fVe(s,c,g,d,h,_,S,R){let T=s.getCompilerOptions(),W=s.getConfigFileParsingDiagnostics().slice(),V=W.length;Or(W,s.getSyntacticDiagnostics(void 0,_)),W.length===V&&(Or(W,s.getOptionsDiagnostics(_)),T.listFilesOnly||(Or(W,s.getGlobalDiagnostics(_)),W.length===V&&Or(W,s.getSemanticDiagnostics(void 0,_)),T.noEmit&&Ly(T)&&W.length===V&&Or(W,s.getDeclarationDiagnostics(void 0,_))));let M=T.listFilesOnly?{emitSkipped:!0,diagnostics:E}:s.emit(void 0,h,_,S,R);Or(W,M.diagnostics);let ee=ui(W);if(ee.forEach(c),g){let re=s.getCurrentDirectory();F(M.emittedFiles,ge=>{let Ie=Xc(ge,re);g(`TSFILE: ${Ie}`)}),yws(s,g)}return d&&d(dVe(ee),pVe(ee)),{emitResult:M,diagnostics:ee}}function Vtt(s,c,g,d,h,_,S,R){let{emitResult:T,diagnostics:W}=fVe(s,c,g,d,h,_,S,R);return T.emitSkipped&&W.length>0?1:W.length>0?2:0}var Vie={close:Dc},Vde=()=>Vie;function Ptt(s=yd,c){return{onWatchStatusChange:c||Rtt(s),watchFile:$i(s,s.watchFile)||Vde,watchDirectory:$i(s,s.watchDirectory)||Vde,setTimeout:$i(s,s.setTimeout)||Dc,clearTimeout:$i(s,s.clearTimeout)||Dc,preferNonRecursiveWatch:s.preferNonRecursiveWatch}}var jm={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"};function Wtt(s,c){let g=s.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=g!==0?_=>s.trace(_):Dc,h=ntt(s,g,d);return h.writeLog=d,h}function Ott(s,c,g=s){let d=s.useCaseSensitiveFileNames(),h={getSourceFile:ott((_,S)=>S?s.readFile(_,S):h.readFile(_),void 0),getDefaultLibLocation:$i(s,s.getDefaultLibLocation),getDefaultLibFileName:_=>s.getDefaultLibFileName(_),writeFile:att((_,S,R)=>s.writeFile(_,S,R),_=>s.createDirectory(_),_=>s.directoryExists(_)),getCurrentDirectory:FA(()=>s.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:_d(d),getNewLine:()=>uN(c()),fileExists:_=>s.fileExists(_),readFile:_=>s.readFile(_),trace:$i(s,s.trace),directoryExists:$i(g,g.directoryExists),getDirectories:$i(g,g.getDirectories),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable)||(()=>""),createHash:$i(s,s.createHash),readDirectory:$i(s,s.readDirectory),storeSignatureInfo:s.storeSignatureInfo,jsDocParsingMode:s.jsDocParsingMode};return h}function IVe(s,c){if(c.match(bOt)){let g=c.length,d=g;for(let h=g-1;h>=0;h--){let _=c.charCodeAt(h);switch(_){case 10:h&&c.charCodeAt(h-1)===13&&h--;case 13:break;default:if(_<127||!Cl(_)){d=h;continue}break}let S=c.substring(d,g);if(S.match(Net)){c=c.substring(0,d);break}else if(!S.match(Det))break;g=d}}return(s.createHash||ry)(c)}function hVe(s){let c=s.getSourceFile;s.getSourceFile=(...g)=>{let d=c.call(s,...g);return d&&(d.version=IVe(s,d.text)),d}}function Mtt(s,c){let g=FA(()=>Mo(iu(s.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>s.useCaseSensitiveFileNames,getNewLine:()=>s.newLine,getCurrentDirectory:FA(()=>s.getCurrentDirectory()),getDefaultLibLocation:g,getDefaultLibFileName:d=>Ro(g(),Hs(d)),fileExists:d=>s.fileExists(d),readFile:(d,h)=>s.readFile(d,h),directoryExists:d=>s.directoryExists(d),getDirectories:d=>s.getDirectories(d),readDirectory:(d,h,_,S,R)=>s.readDirectory(d,h,_,S,R),realpath:$i(s,s.realpath),getEnvironmentVariable:$i(s,s.getEnvironmentVariable),trace:d=>s.write(d+s.newLine),createDirectory:d=>s.createDirectory(d),writeFile:(d,h,_)=>s.writeFile(d,h,_),createHash:$i(s,s.createHash),createProgram:c||vtt,storeSignatureInfo:s.storeSignatureInfo,now:$i(s,s.now)}}function Frn(s=yd,c,g,d){let h=S=>s.write(S+s.newLine),_=Mtt(s,c);return GA(_,Ptt(s,d)),_.afterProgramCreate=S=>{let R=S.getCompilerOptions(),T=uN(R);fVe(S,g,h,W=>_.onWatchStatusChange(Nf(Ntt(W),W),T,R,W))},_}function Zrn(s,c,g){c(g),s.exit(1)}function Htt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:g,extraFileExtensions:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=S||Gz(h),W=Frn(h,_,T,R);return W.onUnRecoverableConfigFileDiagnostic=V=>Zrn(h,T,V),W.configFileName=s,W.optionsToExtend=c,W.watchOptionsToExtend=g,W.extraFileExtensions=d,W}function Ytt({rootFiles:s,options:c,watchOptions:g,projectReferences:d,system:h,createProgram:_,reportDiagnostic:S,reportWatchStatus:R}){let T=Frn(h,_,S||Gz(h),R);return T.rootFiles=s,T.options=c,T.watchOptions=g,T.projectReferences=d,T}function q3t(s){let c=s.system||yd,g=s.host||(s.host=CVe(s.options,c)),d=$3t(s),h=Vtt(d,s.reportDiagnostic||Gz(c),_=>g.trace&&g.trace(_),s.reportErrorSummary||s.options.pretty?(_,S)=>c.write(Dtt(_,S,c.newLine,g)):void 0);return s.afterProgramEmitAndDiagnostics&&s.afterProgramEmitAndDiagnostics(d),h}function mVe(s,c){let g=U3(s);if(!g)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(g,s.configFilePath);else{let h=c.readFile(g);if(!h)return;d=$et(g,h)}if(!(!d||d.version!==C||!jEe(d)))return M3t(d,g,c)}function CVe(s,c=yd){let g=$9e(s,void 0,c);return g.createHash=$i(c,c.createHash),g.storeSignatureInfo=c.storeSignatureInfo,hVe(g),Gde(g,d=>Ou(d,g.getCurrentDirectory(),g.getCanonicalFileName)),g}function $3t({rootNames:s,options:c,configFileParsingDiagnostics:g,projectReferences:d,host:h,createProgram:_}){h=h||CVe(c),_=_||vtt;let S=mVe(c,h);return _(s,c,h,S,g,d)}function Lrn(s,c,g,d,h,_,S,R){return Ki(s)?Ytt({rootFiles:s,options:c,watchOptions:R,projectReferences:S,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_}):Htt({configFileName:s,optionsToExtend:c,watchOptionsToExtend:S,extraFileExtensions:R,system:g,createProgram:d,reportDiagnostic:h,reportWatchStatus:_})}function Qtt(s){let c,g,d,h,_=new Map([[void 0,void 0]]),S,R,T,W,V=s.extendedConfigCache,M=!1,ee=new Map,re,ge=!1,Ie=s.useCaseSensitiveFileNames(),_e=s.getCurrentDirectory(),{configFileName:Ee,optionsToExtend:Ne={},watchOptionsToExtend:Te,extraFileExtensions:Ze,createProgram:We}=s,{rootFiles:Ue,options:$e,watchOptions:Ye,projectReferences:Tt}=s,ot,Qe,mt=!1,ht=!1,_t=Ee===void 0?void 0:j9e(s,_e,Ie),Rt=_t||s,Lt=aVe(s,Rt),Ke=si();Ee&&s.configFileParsingResult&&(Pn(s.configFileParsingResult),Ke=si()),hc(Z.Starting_compilation_in_watch_mode),Ee&&!s.configFileParsingResult&&(Ke=uN(Ne),pe.assert(!Ue),Pr(),Ke=si()),pe.assert($e),pe.assert(Ue);let{watchFile:Pt,watchDirectory:_r,writeLog:Gt}=Wtt(s,$e),nt=_d(Ie);Gt(`Current directory: ${_e} CaseSensitiveFileNames: ${Ie}`);let Dt;Ee&&(Dt=Pt(Ee,Oa,2e3,Ye,jm.ConfigFile));let tr,ur=wen(__filename);ur&&(tr=Pt(ur,tl,2e3,Ye,jm.ConfigFile));let Gr=Ott(s,()=>$e,Rt);hVe(Gr);let dt=Gr.getSourceFile;Gr.getSourceFile=(bn,...ds)=>ya(bn,ks(bn),...ds),Gr.getSourceFileByPath=ya,Gr.getNewLine=()=>Ke,Gr.fileExists=Zn,Gr.onReleaseOldSourceFile=Wo,Gr.onReleaseParsedCommandLine=it,Gr.toPath=ks,Gr.getCompilationSettings=()=>$e,Gr.useSourceOfProjectReferenceRedirect=$i(s,s.useSourceOfProjectReferenceRedirect),Gr.preferNonRecursiveWatch=s.preferNonRecursiveWatch,Gr.watchDirectoryOfFailedLookupLocation=(bn,ds,Mt)=>_r(bn,ds,Mt,Ye,jm.FailedLookupLocations),Gr.watchAffectingFileLocation=(bn,ds)=>Pt(bn,ds,2e3,Ye,jm.AffectingFileLocation),Gr.watchTypeRootsDirectory=(bn,ds,Mt)=>_r(bn,ds,Mt,Ye,jm.TypeRoots),Gr.getCachedDirectoryStructureHost=()=>_t,Gr.scheduleInvalidateResolutionsOfFailedLookupLocations=Oi,Gr.onInvalidatedResolution=pa,Gr.onChangedAutomaticTypeDirectiveNames=pa,Gr.fileIsOpen=As,Gr.getCurrentProgram=jn,Gr.writeLog=Gt,Gr.getParsedCommandLine=pt;let pr=Ttt(Gr,Ee?Mo(Xc(Ee,_e)):_e,!1);Gr.resolveModuleNameLiterals=$i(s,s.resolveModuleNameLiterals),Gr.resolveModuleNames=$i(s,s.resolveModuleNames),!Gr.resolveModuleNameLiterals&&!Gr.resolveModuleNames&&(Gr.resolveModuleNameLiterals=pr.resolveModuleNameLiterals.bind(pr)),Gr.resolveTypeReferenceDirectiveReferences=$i(s,s.resolveTypeReferenceDirectiveReferences),Gr.resolveTypeReferenceDirectives=$i(s,s.resolveTypeReferenceDirectives),!Gr.resolveTypeReferenceDirectiveReferences&&!Gr.resolveTypeReferenceDirectives&&(Gr.resolveTypeReferenceDirectiveReferences=pr.resolveTypeReferenceDirectiveReferences.bind(pr)),Gr.resolveLibrary=s.resolveLibrary?s.resolveLibrary.bind(s):pr.resolveLibrary.bind(pr),Gr.getModuleResolutionCache=s.resolveModuleNameLiterals||s.resolveModuleNames?$i(s,s.getModuleResolutionCache):()=>pr.getModuleResolutionCache();let ir=!!s.resolveModuleNameLiterals||!!s.resolveTypeReferenceDirectiveReferences||!!s.resolveModuleNames||!!s.resolveTypeReferenceDirectives?$i(s,s.hasInvalidatedResolutions)||Tf:As,zt=s.resolveLibrary?$i(s,s.hasInvalidatedLibResolutions)||Tf:As;return c=mVe($e,Gr),Zi(),Ee?{getCurrentProgram:mn,getProgram:Tg,close:Ht,getResolutionCache:Br}:{getCurrentProgram:mn,getProgram:Tg,updateRootFileNames:An,close:Ht,getResolutionCache:Br};function Ht(){hn(),pr.clear(),Fy(ee,bn=>{bn&&bn.fileWatcher&&(bn.fileWatcher.close(),bn.fileWatcher=void 0)}),Dt&&(Dt.close(),Dt=void 0),tr&&(tr.close(),tr=void 0),V?.clear(),V=void 0,W&&(Fy(W,Cv),W=void 0),h&&(Fy(h,Cv),h=void 0),d&&(Fy(d,dv),d=void 0),T&&(Fy(T,bn=>{var ds;(ds=bn.watcher)==null||ds.close(),bn.watcher=void 0,bn.watchedDirectories&&Fy(bn.watchedDirectories,Cv),bn.watchedDirectories=void 0}),T=void 0),c=void 0}function Br(){return pr}function mn(){return c}function jn(){return c&&c.getProgramOrUndefined()}function Zi(bn=!1){Gt("Synchronizing program"),pe.assert($e),pe.assert(Ue),hn();let ds=mn();ge&&(Ke=si(),ds&&NJ(ds.getCompilerOptions(),$e)&&pr.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:Mt,hasInvalidatedLibResolutions:cn}=pr.createHasInvalidatedResolutions(bn?Tf:ir,zt),{originalReadFile:Bt,originalFileExists:xe,originalDirectoryExists:fr,originalCreateDirectory:Je,originalWriteFile:In,readFileWithCache:Hn}=Gde(Gr,ks);return ptt(jn(),Ue,$e,Ot=>ba(Ot,Hn),Ot=>Gr.fileExists(Ot),Mt,cn,yr,pt,Tt)?ht&&(M&&hc(Z.File_change_detected_Starting_incremental_compilation),c=We(void 0,void 0,Gr,c,Qe,Tt),ht=!1):(M&&hc(Z.File_change_detected_Starting_incremental_compilation),Ns(Mt,cn)),M=!1,s.afterProgramCreate&&ds!==c&&s.afterProgramCreate(c),Gr.readFile=Bt,Gr.fileExists=xe,Gr.directoryExists=fr,Gr.createDirectory=Je,Gr.writeFile=In,_?.forEach((Ot,$r)=>{if(!$r)En(),Ee&&Gi(ks(Ee),$e,Ye,jm.ExtendedConfigFile);else{let ri=T?.get($r);ri&&nn(Ot,$r,ri)}}),_=void 0,c}function Ns(bn,ds){Gt("CreatingProgramWith::"),Gt(` roots: ${JSON.stringify(Ue)}`),Gt(` options: ${JSON.stringify($e)}`),Tt&&Gt(` projectReferences: ${JSON.stringify(Tt)}`);let Mt=ge||!jn();ge=!1,ht=!1,pr.startCachingPerDirectoryResolution(),Gr.hasInvalidatedResolutions=bn,Gr.hasInvalidatedLibResolutions=ds,Gr.hasChangedAutomaticTypeDirectiveNames=yr;let cn=jn();if(c=We(Ue,$e,Gr,c,Qe,Tt),pr.finishCachingPerDirectoryResolution(c.getProgram(),cn),rtt(c.getProgram(),d||(d=new Map),Dn),Mt&&pr.updateTypeRootsWatch(),re){for(let Bt of re)d.has(Bt)||ee.delete(Bt);re=void 0}}function An(bn){pe.assert(!Ee,"Cannot update root file names with config file watch mode"),Ue=bn,pa()}function si(){return uN($e||Ne)}function ks(bn){return Ou(bn,_e,nt)}function Ic(bn){return typeof bn=="boolean"}function su(bn){return typeof bn.version=="boolean"}function Zn(bn){let ds=ks(bn);return Ic(ee.get(ds))?!1:Rt.fileExists(bn)}function ya(bn,ds,Mt,cn,Bt){let xe=ee.get(ds);if(Ic(xe))return;let fr=typeof Mt=="object"?Mt.impliedNodeFormat:void 0;if(xe===void 0||Bt||su(xe)||xe.sourceFile.impliedNodeFormat!==fr){let Je=dt(bn,Mt,cn);if(xe)Je?(xe.sourceFile=Je,xe.version=Je.version,xe.fileWatcher||(xe.fileWatcher=nr(ds,bn,Fr,250,Ye,jm.SourceFile))):(xe.fileWatcher&&xe.fileWatcher.close(),ee.set(ds,!1));else if(Je){let In=nr(ds,bn,Fr,250,Ye,jm.SourceFile);ee.set(ds,{sourceFile:Je,version:Je.version,fileWatcher:In})}else ee.set(ds,!1);return Je}return xe.sourceFile}function Gl(bn){let ds=ee.get(bn);ds!==void 0&&(Ic(ds)?ee.set(bn,{version:!1}):ds.version=!1)}function ba(bn,ds){let Mt=ee.get(bn);if(!Mt)return;if(Mt.version)return Mt.version;let cn=ds(bn);return cn!==void 0?IVe(Gr,cn):void 0}function Wo(bn,ds,Mt){let cn=ee.get(bn.resolvedPath);cn!==void 0&&(Ic(cn)?(re||(re=[])).push(bn.path):cn.sourceFile===bn&&(cn.fileWatcher&&cn.fileWatcher.close(),ee.delete(bn.resolvedPath),Mt||pr.removeResolutionsOfFile(bn.path)))}function hc(bn){s.onWatchStatusChange&&s.onWatchStatusChange(Nf(bn),Ke,$e||Ne)}function yr(){return pr.hasChangedAutomaticTypeDirectiveNames()}function hn(){return R?(s.clearTimeout(R),R=void 0,!0):!1}function Oi(){if(!s.setTimeout||!s.clearTimeout)return pr.invalidateResolutionsOfFailedLookupLocations();let bn=hn();Gt(`Scheduling invalidateFailedLookup${bn?", Cancelled earlier one":""}`),R=s.setTimeout(lo,250,"timerToInvalidateFailedLookupResolutions")}function lo(){R=void 0,pr.invalidateResolutionsOfFailedLookupLocations()&&pa()}function pa(){!s.setTimeout||!s.clearTimeout||(S&&s.clearTimeout(S),Gt("Scheduling update"),S=s.setTimeout(Qu,250,"timerToUpdateProgram"))}function Oa(){pe.assert(!!Ee),g=2,pa()}function tl(){Gt("Clearing resolutions"),pr.clear(),g=3,pa()}function Qu(){S=void 0,M=!0,Tg()}function Tg(){switch(g){case 1:Cs();break;case 2:Tu();break;case 3:Zi(!0);break;default:Zi();break}return mn()}function Cs(){Gt("Reloading new file names and options"),pe.assert($e),pe.assert(Ee),g=0,Ue=Ide($e.configFile.configFileSpecs,Xc(Mo(Ee),_e),$e,Lt,Ze),S9e(Ue,Xc(Ee,_e),$e.configFile.configFileSpecs,Qe,mt)&&(ht=!0),Zi()}function Tu(){pe.assert(Ee),Gt(`Reloading config file: ${Ee}`),g=0,_t&&_t.clearCache(),Pr(),ge=!0,(_??(_=new Map)).set(void 0,void 0),Zi()}function Pr(){pe.assert(Ee),Pn(_Ee(Ee,Ne,Lt,V||(V=new Map),Te,Ze))}function Pn(bn){Ue=bn.fileNames,$e=bn.options,Ye=bn.watchOptions,Tt=bn.projectReferences,ot=bn.wildcardDirectories,Qe=dQ(bn).slice(),mt=vEe(bn.raw),ht=!0}function pt(bn){let ds=ks(bn),Mt=T?.get(ds);if(Mt){if(!Mt.updateLevel)return Mt.parsedCommandLine;if(Mt.parsedCommandLine&&Mt.updateLevel===1&&!s.getParsedCommandLine){Gt("Reloading new file names and options"),pe.assert($e);let Bt=Ide(Mt.parsedCommandLine.options.configFile.configFileSpecs,Xc(Mo(bn),_e),$e,Lt);return Mt.parsedCommandLine={...Mt.parsedCommandLine,fileNames:Bt},Mt.updateLevel=void 0,Mt.parsedCommandLine}}Gt(`Loading config file: ${bn}`);let cn=s.getParsedCommandLine?s.getParsedCommandLine(bn):on(bn);return Mt?(Mt.parsedCommandLine=cn,Mt.updateLevel=void 0):(T||(T=new Map)).set(ds,Mt={parsedCommandLine:cn}),(_??(_=new Map)).set(ds,bn),cn}function on(bn){let ds=Lt.onUnRecoverableConfigFileDiagnostic;Lt.onUnRecoverableConfigFileDiagnostic=Dc;let Mt=_Ee(bn,void 0,Lt,V||(V=new Map),Te);return Lt.onUnRecoverableConfigFileDiagnostic=ds,Mt}function it(bn){var ds;let Mt=ks(bn),cn=T?.get(Mt);cn&&(T.delete(Mt),cn.watchedDirectories&&Fy(cn.watchedDirectories,Cv),(ds=cn.watcher)==null||ds.close(),ttt(Mt,W))}function nr(bn,ds,Mt,cn,Bt,xe){return Pt(ds,(fr,Je)=>Mt(fr,Je,bn),cn,Bt,xe)}function Fr(bn,ds,Mt){Kr(bn,Mt,ds),ds===2&&ee.has(Mt)&&pr.invalidateResolutionOfFile(Mt),Gl(Mt),pa()}function Kr(bn,ds,Mt){_t&&_t.addOrDeleteFile(bn,ds,Mt)}function Dn(bn,ds){return T?.has(bn)?Vie:nr(bn,ds,hr,500,Ye,jm.MissingFile)}function hr(bn,ds,Mt){Kr(bn,Mt,ds),ds===0&&d.has(Mt)&&(d.get(Mt).close(),d.delete(Mt),Gl(Mt),pa())}function En(){HEe(h||(h=new Map),ot,Ni)}function Ni(bn,ds){return _r(bn,Mt=>{pe.assert(Ee),pe.assert($e);let cn=ks(Mt);_t&&_t.addOrDeleteFileOrDirectory(Mt,cn),Gl(cn),!YEe({watchedDirPath:ks(bn),fileOrDirectory:Mt,fileOrDirectoryPath:cn,configFileName:Ee,extraFileExtensions:Ze,options:$e,program:mn()||Ue,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})&&g!==2&&(g=1,pa())},ds,Ye,jm.WildcardDirectory)}function Gi(bn,ds,Mt,cn){z9e(bn,ds,W||(W=new Map),(Bt,xe)=>Pt(Bt,(fr,Je)=>{var In;Kr(Bt,xe,Je),V&&q9e(V,xe,ks);let Hn=(In=W.get(xe))==null?void 0:In.projects;Hn?.size&&Hn.forEach(Ot=>{if(Ee&&ks(Ee)===Ot)g=2;else{let $r=T?.get(Ot);$r&&($r.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(Ot)}pa()})},2e3,Mt,cn),ks)}function nn(bn,ds,Mt){var cn,Bt,xe,fr;Mt.watcher||(Mt.watcher=Pt(bn,(Je,In)=>{Kr(bn,ds,In);let Hn=T?.get(ds);Hn&&(Hn.updateLevel=2),pr.removeResolutionsFromProjectReferenceRedirects(ds),pa()},2e3,((cn=Mt.parsedCommandLine)==null?void 0:cn.watchOptions)||Ye,jm.ConfigFileOfReferencedProject)),HEe(Mt.watchedDirectories||(Mt.watchedDirectories=new Map),(Bt=Mt.parsedCommandLine)==null?void 0:Bt.wildcardDirectories,(Je,In)=>{var Hn;return _r(Je,Ot=>{let $r=ks(Ot);_t&&_t.addOrDeleteFileOrDirectory(Ot,$r),Gl($r);let ri=T?.get(ds);ri?.parsedCommandLine&&(YEe({watchedDirPath:ks(Je),fileOrDirectory:Ot,fileOrDirectoryPath:$r,configFileName:bn,options:ri.parsedCommandLine.options,program:ri.parsedCommandLine.fileNames,currentDirectory:_e,useCaseSensitiveFileNames:Ie,writeLog:Gt,toPath:ks})||ri.updateLevel!==2&&(ri.updateLevel=1,pa()))},In,((Hn=Mt.parsedCommandLine)==null?void 0:Hn.watchOptions)||Ye,jm.WildcardDirectoryOfReferencedProject)}),Gi(ds,(xe=Mt.parsedCommandLine)==null?void 0:xe.options,((fr=Mt.parsedCommandLine)==null?void 0:fr.watchOptions)||Ye,jm.ExtendedConfigOfReferencedProject)}}var e5t=(s=>(s[s.Unbuildable=0]="Unbuildable",s[s.UpToDate=1]="UpToDate",s[s.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",s[s.OutputMissing=3]="OutputMissing",s[s.ErrorReadingFile=4]="ErrorReadingFile",s[s.OutOfDateWithSelf=5]="OutOfDateWithSelf",s[s.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",s[s.OutOfDateBuildInfoWithPendingEmit=7]="OutOfDateBuildInfoWithPendingEmit",s[s.OutOfDateBuildInfoWithErrors=8]="OutOfDateBuildInfoWithErrors",s[s.OutOfDateOptions=9]="OutOfDateOptions",s[s.OutOfDateRoots=10]="OutOfDateRoots",s[s.UpstreamOutOfDate=11]="UpstreamOutOfDate",s[s.UpstreamBlocked=12]="UpstreamBlocked",s[s.ComputingUpstream=13]="ComputingUpstream",s[s.TsVersionOutputOfDate=14]="TsVersionOutputOfDate",s[s.UpToDateWithInputFileText=15]="UpToDateWithInputFileText",s[s.ContainerOnly=16]="ContainerOnly",s[s.ForceBuild=17]="ForceBuild",s))(e5t||{});function Xtt(s){return aA(s,".json")?s:Ro(s,"tsconfig.json")}var bws=new Date(-864e13);function Ews(s,c,g){let d=s.get(c),h;return d||(h=g(),s.set(c,h)),d||h}function t5t(s,c){return Ews(s,c,()=>new Map)}function Jtt(s){return s.now?s.now():new Date}function Fz(s){return!!s&&!!s.buildOrder}function $Ee(s){return Fz(s)?s.buildOrder:s}function _Ve(s,c){return g=>{let d=c?`[${AQ(qEe(s),"\x1B[90m")}] `:`${qEe(s)} - `;d+=`${wN(g.messageText,s.newLine)}${s.newLine+s.newLine}`,s.write(d)}}function Vrn(s,c,g,d){let h=Mtt(s,c);return h.getModifiedTime=s.getModifiedTime?_=>s.getModifiedTime(_):cm,h.setModifiedTime=s.setModifiedTime?(_,S)=>s.setModifiedTime(_,S):Dc,h.deleteFile=s.deleteFile?_=>s.deleteFile(_):Dc,h.reportDiagnostic=g||Gz(s),h.reportSolutionBuilderStatus=d||_Ve(s),h.now=$i(s,s.now),h}function r5t(s=yd,c,g,d,h){let _=Vrn(s,c,g,d);return _.reportErrorSummary=h,_}function n5t(s=yd,c,g,d,h){let _=Vrn(s,c,g,d),S=Ptt(s,h);return GA(_,S),_}function Sws(s){let c={};return d9e.forEach(g=>{Da(s,g.name)&&(c[g.name]=s[g.name])}),c.tscBuild=!0,c}function i5t(s,c,g){return snn(!1,s,c,g)}function s5t(s,c,g,d){return snn(!0,s,c,g,d)}function vws(s,c,g,d,h){let _=c,S=c,R=Sws(d),T=Ott(_,()=>Ie.projectCompilerOptions);hVe(T),T.getParsedCommandLine=_e=>Pie(Ie,_e,nk(Ie,_e)),T.resolveModuleNameLiterals=$i(_,_.resolveModuleNameLiterals),T.resolveTypeReferenceDirectiveReferences=$i(_,_.resolveTypeReferenceDirectiveReferences),T.resolveLibrary=$i(_,_.resolveLibrary),T.resolveModuleNames=$i(_,_.resolveModuleNames),T.resolveTypeReferenceDirectives=$i(_,_.resolveTypeReferenceDirectives),T.getModuleResolutionCache=$i(_,_.getModuleResolutionCache);let W,V;!T.resolveModuleNameLiterals&&!T.resolveModuleNames&&(W=Tie(T.getCurrentDirectory(),T.getCanonicalFileName),T.resolveModuleNameLiterals=(_e,Ee,Ne,Te,Ze)=>XEe(_e,Ee,Ne,Te,Ze,_,W,Att),T.getModuleResolutionCache=()=>W),!T.resolveTypeReferenceDirectiveReferences&&!T.resolveTypeReferenceDirectives&&(V=D9e(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,W?.getPackageJsonInfoCache(),W?.optionsToRedirectsKey),T.resolveTypeReferenceDirectiveReferences=(_e,Ee,Ne,Te,Ze)=>XEe(_e,Ee,Ne,Te,Ze,_,V,rVe));let M;T.resolveLibrary||(M=Tie(T.getCurrentDirectory(),T.getCanonicalFileName,void 0,W?.getPackageJsonInfoCache()),T.resolveLibrary=(_e,Ee,Ne)=>k9e(_e,Ee,Ne,_,M)),T.getBuildInfo=(_e,Ee)=>jrn(Ie,_e,nk(Ie,Ee),void 0);let{watchFile:ee,watchDirectory:re,writeLog:ge}=Wtt(S,d),Ie={host:_,hostWithWatch:S,parseConfigFileHost:aVe(_),write:$i(_,_.trace),options:d,baseCompilerOptions:R,rootNames:g,baseWatchOptions:h,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:T,moduleResolutionCache:W,typeReferenceDirectiveResolutionCache:V,libraryResolutionCache:M,buildOrder:void 0,readFileWithCache:_e=>_.readFile(_e),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:s,watch:s,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:ee,watchDirectory:re,writeLog:ge};return Ie}function Ow(s,c){return Ou(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function nk(s,c){let{resolvedConfigFilePaths:g}=s,d=g.get(c);if(d!==void 0)return d;let h=Ow(s,c);return g.set(c,h),h}function Prn(s){return!!s.options}function Bws(s,c){let g=s.configFileCache.get(c);return g&&Prn(g)?g:void 0}function Pie(s,c,g){let{configFileCache:d}=s,h=d.get(g);if(h)return Prn(h)?h:void 0;Mc("SolutionBuilder::beforeConfigFileParsing");let _,{parseConfigFileHost:S,baseCompilerOptions:R,baseWatchOptions:T,extendedConfigCache:W,host:V}=s,M;return V.getParsedCommandLine?(M=V.getParsedCommandLine(c),M||(_=Nf(Z.File_0_not_found,c))):(S.onUnRecoverableConfigFileDiagnostic=ee=>_=ee,M=_Ee(c,R,S,W,T),S.onUnRecoverableConfigFileDiagnostic=Dc),d.set(g,M||_),Mc("SolutionBuilder::afterConfigFileParsing"),Pf("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),M}function e1e(s,c){return Xtt(AE(s.compilerHost.getCurrentDirectory(),c))}function Wrn(s,c){let g=new Map,d=new Map,h=[],_,S;for(let T of c)R(T);return S?{buildOrder:_||E,circularDiagnostics:S}:_||E;function R(T,W){let V=nk(s,T);if(d.has(V))return;if(g.has(V)){W||(S||(S=[])).push(Nf(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,h.join(`\r -`)));return}g.set(V,!0),h.push(T);let M=Pie(s,T,V);if(M&&M.projectReferences)for(let ee of M.projectReferences){let re=e1e(s,ee.path);R(re,W||ee.circular)}h.pop(),d.set(V,!0),(_||(_=[])).push(T)}}function yVe(s){return s.buildOrder||wws(s)}function wws(s){let c=Wrn(s,s.rootNames.map(h=>e1e(s,h)));s.resolvedConfigFilePaths.clear();let g=new Set($Ee(c).map(h=>nk(s,h))),d={onDeleteValue:Dc};return gN(s.configFileCache,g,d),gN(s.projectStatus,g,d),gN(s.builderPrograms,g,d),gN(s.diagnostics,g,d),gN(s.projectPendingBuild,g,d),gN(s.projectErrorsReported,g,d),gN(s.buildInfoCache,g,d),gN(s.outputTimeStamps,g,d),gN(s.lastCachedPackageJsonLookups,g,d),s.watch&&(gN(s.allWatchedConfigFiles,g,{onDeleteValue:dv}),s.allWatchedExtendedConfigFiles.forEach(h=>{h.projects.forEach(_=>{g.has(_)||h.projects.delete(_)}),h.close()}),gN(s.allWatchedWildcardDirectories,g,{onDeleteValue:h=>h.forEach(Cv)}),gN(s.allWatchedInputFiles,g,{onDeleteValue:h=>h.forEach(dv)}),gN(s.allWatchedPackageJsonFiles,g,{onDeleteValue:h=>h.forEach(dv)})),s.buildOrder=c}function Orn(s,c,g){let d=c&&e1e(s,c),h=yVe(s);if(Fz(h))return h;if(d){let S=nk(s,d);if(Se(h,T=>nk(s,T)===S)===-1)return}let _=d?Wrn(s,[d]):h;return pe.assert(!Fz(_)),pe.assert(!g||d!==void 0),pe.assert(!g||_[_.length-1]===d),g?_.slice(0,_.length-1):_}function Mrn(s){s.cache&&o5t(s);let{compilerHost:c,host:g}=s,d=s.readFileWithCache,h=c.getSourceFile,{originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:W,getSourceFileWithCache:V,readFileWithCache:M}=Gde(g,ee=>Ow(s,ee),(...ee)=>h.call(c,...ee));s.readFileWithCache=M,c.getSourceFile=V,s.cache={originalReadFile:_,originalFileExists:S,originalDirectoryExists:R,originalCreateDirectory:T,originalWriteFile:W,originalReadFileWithCache:d,originalGetSourceFile:h}}function o5t(s){if(!s.cache)return;let{cache:c,host:g,compilerHost:d,extendedConfigCache:h,moduleResolutionCache:_,typeReferenceDirectiveResolutionCache:S,libraryResolutionCache:R}=s;g.readFile=c.originalReadFile,g.fileExists=c.originalFileExists,g.directoryExists=c.originalDirectoryExists,g.createDirectory=c.originalCreateDirectory,g.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,s.readFileWithCache=c.originalReadFileWithCache,h.clear(),_?.clear(),S?.clear(),R?.clear(),s.cache=void 0}function Hrn(s,c){s.projectStatus.delete(c),s.diagnostics.delete(c)}function Yrn({projectPendingBuild:s},c,g){let d=s.get(c);(d===void 0||ds.projectPendingBuild.set(nk(s,d),0)),c&&c.throwIfCancellationRequested()}var a5t=(s=>(s[s.Build=0]="Build",s[s.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",s))(a5t||{});function Xrn(s,c){return s.projectPendingBuild.delete(c),s.diagnostics.has(c)?1:0}function Tws(s,c,g,d,h){let _=!0;return{kind:1,project:c,projectPath:g,buildOrder:h,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{qrn(s,d,g),_=!1},done:()=>(_&&qrn(s,d,g),Mc("SolutionBuilder::Timestamps only updates"),Xrn(s,g))}}function Rws(s,c,g,d,h,_,S){let R=0,T,W;return{kind:0,project:c,projectPath:g,buildOrder:S,getCompilerOptions:()=>h.options,getCurrentDirectory:()=>s.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>M(Fl),getProgram:()=>M(_e=>_e.getProgramOrUndefined()),getSourceFile:_e=>M(Ee=>Ee.getSourceFile(_e)),getSourceFiles:()=>ee(_e=>_e.getSourceFiles()),getOptionsDiagnostics:_e=>ee(Ee=>Ee.getOptionsDiagnostics(_e)),getGlobalDiagnostics:_e=>ee(Ee=>Ee.getGlobalDiagnostics(_e)),getConfigFileParsingDiagnostics:()=>ee(_e=>_e.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSyntacticDiagnostics(_e,Ee)),getAllDependencies:_e=>ee(Ee=>Ee.getAllDependencies(_e)),getSemanticDiagnostics:(_e,Ee)=>ee(Ne=>Ne.getSemanticDiagnostics(_e,Ee)),getSemanticDiagnosticsOfNextAffectedFile:(_e,Ee)=>M(Ne=>Ne.getSemanticDiagnosticsOfNextAffectedFile&&Ne.getSemanticDiagnosticsOfNextAffectedFile(_e,Ee)),emit:(_e,Ee,Ne,Te,Ze)=>_e||Te?M(We=>{var Ue,$e;return We.emit(_e,Ee,Ne,Te,Ze||(($e=(Ue=s.host).getCustomTransformers)==null?void 0:$e.call(Ue,c)))}):(Ie(0,Ne),ge(Ee,Ne,Ze)),done:V};function V(_e,Ee,Ne){return Ie(3,_e,Ee,Ne),Mc("SolutionBuilder::Projects built"),Xrn(s,g)}function M(_e){return Ie(0),T&&_e(T)}function ee(_e){return M(_e)||E}function re(){var _e,Ee,Ne;if(pe.assert(T===void 0),s.options.dry){C1(s,Z.A_non_dry_build_would_build_project_0,c),W=1,R=2;return}if(s.options.verbose&&C1(s,Z.Building_project_0,c),h.fileNames.length===0){t1e(s,g,dQ(h)),W=0,R=2;return}let{host:Te,compilerHost:Ze}=s;if(s.projectCompilerOptions=h.options,(_e=s.moduleResolutionCache)==null||_e.update(h.options),(Ee=s.typeReferenceDirectiveResolutionCache)==null||Ee.update(h.options),T=Te.createProgram(h.fileNames,h.options,Ze,Nws(s,g,h),dQ(h),h.projectReferences),s.watch){let We=(Ne=s.moduleResolutionCache)==null?void 0:Ne.getPackageJsonInfoCache().getInternalMap();s.lastCachedPackageJsonLookups.set(g,We&&new Set(Do(We.values(),Ue=>s.host.realpath&&(N9e(Ue)||Ue.directoryExists)?s.host.realpath(Ro(Ue.packageDirectory,"package.json")):Ro(Ue.packageDirectory,"package.json")))),s.builderPrograms.set(g,T)}R++}function ge(_e,Ee,Ne){var Te,Ze,We;pe.assertIsDefined(T),pe.assert(R===1);let{host:Ue,compilerHost:$e}=s,Ye=new Map,Tt=T.getCompilerOptions(),ot=DP(Tt),Qe,mt,{emitResult:ht,diagnostics:_t}=fVe(T,Rt=>Ue.reportDiagnostic(Rt),s.write,void 0,(Rt,Lt,Ke,Pt,_r,Gt)=>{var nt;let Dt=Ow(s,Rt);if(Ye.set(Ow(s,Rt),Rt),Gt?.buildInfo){mt||(mt=Jtt(s.host));let ur=(nt=T.hasChangedEmitSignature)==null?void 0:nt.call(T),Gr=jtt(s,Rt,g);Gr?(Gr.buildInfo=Gt.buildInfo,Gr.modifiedTime=mt,ur&&(Gr.latestChangedDtsTime=mt)):s.buildInfoCache.set(g,{path:Ow(s,Rt),buildInfo:Gt.buildInfo,modifiedTime:mt,latestChangedDtsTime:ur?mt:void 0})}let tr=Gt?.differsOnlyInMap?bb(s.host,Rt):void 0;(_e||$e.writeFile)(Rt,Lt,Ke,Pt,_r,Gt),Gt?.differsOnlyInMap?s.host.setModifiedTime(Rt,tr):!ot&&s.watch&&(Qe||(Qe=l5t(s,g))).set(Dt,mt||(mt=Jtt(s.host)))},Ee,void 0,Ne||((Ze=(Te=s.host).getCustomTransformers)==null?void 0:Ze.call(Te,c)));return(!Tt.noEmitOnError||!_t.length)&&(Ye.size||_.type!==8)&&zrn(s,h,g,Z.Updating_unchanged_output_timestamps_of_project_0,Ye),s.projectErrorsReported.set(g,!0),W=(We=T.hasChangedEmitSignature)!=null&&We.call(T)?0:2,_t.length?(s.diagnostics.set(g,_t),s.projectStatus.set(g,{type:0,reason:"it had errors"}),W|=4):(s.diagnostics.delete(g),s.projectStatus.set(g,{type:1,oldestOutputFileName:iA(Ye.values())??jet(h,!Ue.useCaseSensitiveFileNames())})),Dws(s,T),R=2,ht}function Ie(_e,Ee,Ne,Te){for(;R<=_e&&R<3;){let Ze=R;switch(R){case 0:re();break;case 1:ge(Ne,Ee,Te);break;case 2:Fws(s,c,g,d,h,S,pe.checkDefined(W)),R++;break;case 3:default:}pe.assert(R>Ze)}}}function Jrn(s,c,g){if(!s.projectPendingBuild.size||Fz(c))return;let{options:d,projectPendingBuild:h}=s;for(let _=0;_{let re=pe.checkDefined(s.filesWatched.get(R));pe.assert(Utt(re)),re.modifiedTime=ee,re.callbacks.forEach(ge=>ge(V,M,ee))},d,h,_,S);s.filesWatched.set(R,{callbacks:[g],watcher:W,modifiedTime:T})}return{close:()=>{let W=pe.checkDefined(s.filesWatched.get(R));pe.assert(Utt(W)),W.callbacks.length===1?(s.filesWatched.delete(R),Cv(W)):ef(W.callbacks,g)}}}function l5t(s,c){if(!s.watch)return;let g=s.outputTimeStamps.get(c);return g||s.outputTimeStamps.set(c,g=new Map),g}function jtt(s,c,g){let d=Ow(s,c),h=s.buildInfoCache.get(g);return h?.path===d?h:void 0}function jrn(s,c,g,d){let h=Ow(s,c),_=s.buildInfoCache.get(g);if(_!==void 0&&_.path===h)return _.buildInfo||void 0;let S=s.readFileWithCache(c),R=S?$et(c,S):void 0;return s.buildInfoCache.set(g,{path:h,buildInfo:R||!1,modifiedTime:d||Rh}),R}function u5t(s,c,g,d){let h=Krn(s,c);if(gZe&&(Te=_t,Ze=Rt),Ue.add(Lt)}let Ye;if(_e?($e||($e=Ett(_e,M,V)),Ye=Dh($e.roots,(_t,Rt)=>Ue.has(Rt)?void 0:Rt)):Ye=F(H3t(Ie,M,V),_t=>Ue.has(_t)?void 0:_t),Ye)return{type:10,buildInfoFile:M,inputFile:Ye};if(!ee){let _t=K9e(c,!V.useCaseSensitiveFileNames()),Rt=l5t(s,g);for(let Lt of _t){if(Lt===M)continue;let Ke=Ow(s,Lt),Pt=Rt?.get(Ke);if(Pt||(Pt=bb(s.host,Lt),Rt?.set(Ke,Pt)),Pt===Rh)return{type:3,missingOutputFileName:Lt};if(Ptu5t(s,_t,Ee,Ne));if(Qe)return Qe;let mt=s.lastCachedPackageJsonLookups.get(g),ht=mt&&SB(mt,_t=>u5t(s,_t,Ee,Ne));return ht||{type:Tt?2:We?15:1,newestInputFileTime:Ze,newestInputFileName:Te,oldestOutputFileName:Ne}}function xws(s,c,g){return s.buildInfoCache.get(g).path===c.path}function g5t(s,c,g){if(c===void 0)return{type:0,reason:"config file deleted mid-build"};let d=s.projectStatus.get(g);if(d!==void 0)return d;Mc("SolutionBuilder::beforeUpToDateCheck");let h=kws(s,c,g);return Mc("SolutionBuilder::afterUpToDateCheck"),Pf("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),s.projectStatus.set(g,h),h}function zrn(s,c,g,d,h){if(c.options.noEmit)return;let _,S=U3(c.options),R=DP(c.options);if(S&&R){h?.has(Ow(s,S))||(s.options.verbose&&C1(s,d,c.options.configFilePath),s.host.setModifiedTime(S,_=Jtt(s.host)),jtt(s,S,g).modifiedTime=_),s.outputTimeStamps.delete(g);return}let{host:T}=s,W=K9e(c,!T.useCaseSensitiveFileNames()),V=l5t(s,g),M=V?new Set:void 0;if(!h||W.length!==h.size){let ee=!!s.options.verbose;for(let re of W){let ge=Ow(s,re);h?.has(ge)||(ee&&(ee=!1,C1(s,d,c.options.configFilePath)),T.setModifiedTime(re,_||(_=Jtt(s.host))),re===S?jtt(s,S,g).modifiedTime=_:V&&(V.set(ge,_),M.add(ge)))}}V?.forEach((ee,re)=>{!h?.has(re)&&!M.has(re)&&V.delete(re)})}function Gws(s,c,g){if(!c.composite)return;let d=pe.checkDefined(s.buildInfoCache.get(g));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let h=d.buildInfo&&jEe(d.buildInfo)&&d.buildInfo.latestChangedDtsFile?s.host.getModifiedTime(Xc(d.buildInfo.latestChangedDtsFile,Mo(d.path))):void 0;return d.latestChangedDtsTime=h||!1,h}function qrn(s,c,g){if(s.options.dry)return C1(s,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);zrn(s,c,g,Z.Updating_output_timestamps_of_project_0),s.projectStatus.set(g,{type:1,oldestOutputFileName:jet(c,!s.host.useCaseSensitiveFileNames())})}function Fws(s,c,g,d,h,_,S){if(!(s.options.stopBuildOnErrors&&S&4)&&h.options.composite)for(let R=d+1;R<_.length;R++){let T=_[R],W=nk(s,T);if(s.projectPendingBuild.has(W))continue;let V=Pie(s,T,W);if(!(!V||!V.projectReferences))for(let M of V.projectReferences){let ee=e1e(s,M.path);if(nk(s,ee)!==g)continue;let re=s.projectStatus.get(W);if(re)switch(re.type){case 1:if(S&2){re.type=2;break}case 15:case 2:S&2||s.projectStatus.set(W,{type:6,outOfDateOutputFileName:re.oldestOutputFileName,newerProjectName:c});break;case 12:nk(s,e1e(s,re.upstreamProjectName))===g&&Hrn(s,W);break}Yrn(s,W,0);break}}}function $rn(s,c,g,d,h,_){Mc("SolutionBuilder::beforeBuild");let S=Zws(s,c,g,d,h,_);return Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),S}function Zws(s,c,g,d,h,_){let S=Orn(s,c,_);if(!S)return 3;Qrn(s,g);let R=!0,T=0;for(;;){let W=c5t(s,S,R);if(!W)break;R=!1,W.done(g,d,h?.(W.project)),s.diagnostics.has(W.projectPath)||T++}return o5t(s),ann(s,S),Wws(s,S),Fz(S)?4:S.some(W=>s.diagnostics.has(nk(s,W)))?T?2:1:0}function enn(s,c,g){Mc("SolutionBuilder::beforeClean");let d=Lws(s,c,g);return Mc("SolutionBuilder::afterClean"),Pf("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function Lws(s,c,g){let d=Orn(s,c,g);if(!d)return 3;if(Fz(d))return ztt(s,d.circularDiagnostics),4;let{options:h,host:_}=s,S=h.dry?[]:void 0;for(let R of d){let T=nk(s,R),W=Pie(s,R,T);if(W===void 0){onn(s,T);continue}let V=K9e(W,!_.useCaseSensitiveFileNames());if(!V.length)continue;let M=new Set(W.fileNames.map(ee=>Ow(s,ee)));for(let ee of V)M.has(Ow(s,ee))||_.fileExists(ee)&&(S?S.push(ee):(_.deleteFile(ee),A5t(s,T,0)))}return S&&C1(s,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,S.map(R=>`\r - * ${R}`).join("")),0}function A5t(s,c,g){s.host.getParsedCommandLine&&g===1&&(g=2),g===2&&(s.configFileCache.delete(c),s.buildOrder=void 0),s.needsSummary=!0,Hrn(s,c),Yrn(s,c,g),Mrn(s)}function bVe(s,c,g){s.reportFileChangeDetected=!0,A5t(s,c,g),tnn(s,250,!0)}function tnn(s,c,g){let{hostWithWatch:d}=s;!d.setTimeout||!d.clearTimeout||(s.timerToBuildInvalidatedProject&&d.clearTimeout(s.timerToBuildInvalidatedProject),s.timerToBuildInvalidatedProject=d.setTimeout(Vws,c,"timerToBuildInvalidatedProject",s,g))}function Vws(s,c,g){Mc("SolutionBuilder::beforeBuild");let d=Pws(c,g);Mc("SolutionBuilder::afterBuild"),Pf("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&ann(c,d)}function Pws(s,c){s.timerToBuildInvalidatedProject=void 0,s.reportFileChangeDetected&&(s.reportFileChangeDetected=!1,s.projectErrorsReported.clear(),f5t(s,Z.File_change_detected_Starting_incremental_compilation));let g=0,d=yVe(s),h=c5t(s,d,!1);if(h)for(h.done(),g++;s.projectPendingBuild.size;){if(s.timerToBuildInvalidatedProject)return;let _=Jrn(s,d,!1);if(!_)break;if(_.kind!==1&&(c||g===5)){tnn(s,100,!1);return}Urn(s,_,d).done(),_.kind!==1&&g++}return o5t(s),d}function rnn(s,c,g,d){!s.watch||s.allWatchedConfigFiles.has(g)||s.allWatchedConfigFiles.set(g,Ktt(s,c,()=>bVe(s,g,2),2e3,d?.watchOptions,jm.ConfigFile,c))}function nnn(s,c,g){z9e(c,g?.options,s.allWatchedExtendedConfigFiles,(d,h)=>Ktt(s,d,()=>{var _;return(_=s.allWatchedExtendedConfigFiles.get(h))==null?void 0:_.projects.forEach(S=>bVe(s,S,2))},2e3,g?.watchOptions,jm.ExtendedConfigFile),d=>Ow(s,d))}function inn(s,c,g,d){s.watch&&HEe(t5t(s.allWatchedWildcardDirectories,g),d.wildcardDirectories,(h,_)=>s.watchDirectory(h,S=>{var R;YEe({watchedDirPath:Ow(s,h),fileOrDirectory:S,fileOrDirectoryPath:Ow(s,S),configFileName:c,currentDirectory:s.compilerHost.getCurrentDirectory(),options:d.options,program:s.builderPrograms.get(g)||((R=Bws(s,g))==null?void 0:R.fileNames),useCaseSensitiveFileNames:s.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:T=>s.writeLog(T),toPath:T=>Ow(s,T)})||bVe(s,g,1)},_,d?.watchOptions,jm.WildcardDirectory,c))}function d5t(s,c,g,d){s.watch&&Q7(t5t(s.allWatchedInputFiles,g),new Set(d.fileNames),{createNewValue:h=>Ktt(s,h,()=>bVe(s,g,0),250,d?.watchOptions,jm.SourceFile,c),onDeleteValue:dv})}function p5t(s,c,g,d){!s.watch||!s.lastCachedPackageJsonLookups||Q7(t5t(s.allWatchedPackageJsonFiles,g),s.lastCachedPackageJsonLookups.get(g),{createNewValue:h=>Ktt(s,h,()=>bVe(s,g,0),2e3,d?.watchOptions,jm.PackageJson,c),onDeleteValue:dv})}function Wws(s,c){if(s.watchAllProjectsPending){Mc("SolutionBuilder::beforeWatcherCreation"),s.watchAllProjectsPending=!1;for(let g of $Ee(c)){let d=nk(s,g),h=Pie(s,g,d);rnn(s,g,d,h),nnn(s,d,h),h&&(inn(s,g,d,h),d5t(s,g,d,h),p5t(s,g,d,h))}Mc("SolutionBuilder::afterWatcherCreation"),Pf("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function Ows(s){Fy(s.allWatchedConfigFiles,dv),Fy(s.allWatchedExtendedConfigFiles,Cv),Fy(s.allWatchedWildcardDirectories,c=>Fy(c,Cv)),Fy(s.allWatchedInputFiles,c=>Fy(c,dv)),Fy(s.allWatchedPackageJsonFiles,c=>Fy(c,dv))}function snn(s,c,g,d,h){let _=vws(s,c,g,d,h);return{build:(S,R,T,W)=>$rn(_,S,R,T,W),clean:S=>enn(_,S),buildReferences:(S,R,T,W)=>$rn(_,S,R,T,W,!0),cleanReferences:S=>enn(_,S,!0),getNextInvalidatedProject:S=>(Qrn(_,S),c5t(_,yVe(_),!1)),getBuildOrder:()=>yVe(_),getUpToDateStatusOfProject:S=>{let R=e1e(_,S),T=nk(_,R);return g5t(_,Pie(_,R,T),T)},invalidateProject:(S,R)=>A5t(_,S,R||0),close:()=>Ows(_)}}function G_(s,c){return r2(c,s.compilerHost.getCurrentDirectory(),s.compilerHost.getCanonicalFileName)}function C1(s,c,...g){s.host.reportSolutionBuilderStatus(Nf(c,...g))}function f5t(s,c,...g){var d,h;(h=(d=s.hostWithWatch).onWatchStatusChange)==null||h.call(d,Nf(c,...g),s.host.getNewLine(),s.baseCompilerOptions)}function ztt({host:s},c){c.forEach(g=>s.reportDiagnostic(g))}function t1e(s,c,g){ztt(s,g),s.projectErrorsReported.set(c,!0),g.length&&s.diagnostics.set(c,g)}function onn(s,c){t1e(s,c,[s.configFileCache.get(c)])}function ann(s,c){if(!s.needsSummary)return;s.needsSummary=!1;let g=s.watch||!!s.host.reportErrorSummary,{diagnostics:d}=s,h=0,_=[];Fz(c)?(cnn(s,c.buildOrder),ztt(s,c.circularDiagnostics),g&&(h+=dVe(c.circularDiagnostics)),g&&(_=[..._,...pVe(c.circularDiagnostics)])):(c.forEach(S=>{let R=nk(s,S);s.projectErrorsReported.has(R)||ztt(s,d.get(R)||E)}),g&&d.forEach(S=>h+=dVe(S)),g&&d.forEach(S=>[..._,...pVe(S)])),s.watch?f5t(s,Ntt(h),h):s.host.reportErrorSummary&&s.host.reportErrorSummary(h,_)}function cnn(s,c){s.options.verbose&&C1(s,Z.Projects_in_this_build_Colon_0,c.map(g=>`\r - * `+G_(s,g)).join(""))}function Mws(s,c,g){switch(g.type){case 5:return C1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,G_(s,c),G_(s,g.outOfDateOutputFileName),G_(s,g.newerInputFileName));case 6:return C1(s,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,G_(s,c),G_(s,g.outOfDateOutputFileName),G_(s,g.newerProjectName));case 3:return C1(s,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,G_(s,c),G_(s,g.missingOutputFileName));case 4:return C1(s,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,G_(s,c),G_(s,g.fileName));case 7:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,G_(s,c),G_(s,g.buildInfoFile));case 8:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors,G_(s,c),G_(s,g.buildInfoFile));case 9:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,G_(s,c),G_(s,g.buildInfoFile));case 10:return C1(s,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,G_(s,c),G_(s,g.buildInfoFile),G_(s,g.inputFile));case 1:if(g.newestInputFileTime!==void 0)return C1(s,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,G_(s,c),G_(s,g.newestInputFileName||""),G_(s,g.oldestOutputFileName||""));break;case 2:return C1(s,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,G_(s,c));case 15:return C1(s,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,G_(s,c));case 11:return C1(s,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,G_(s,c),G_(s,g.upstreamProjectName));case 12:return C1(s,g.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,G_(s,c),G_(s,g.upstreamProjectName));case 0:return C1(s,Z.Project_0_is_out_of_date_because_1,G_(s,c),g.reason);case 14:return C1(s,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,G_(s,c),g.version,C);case 17:return C1(s,Z.Project_0_is_being_forcibly_rebuilt,G_(s,c));case 16:case 13:break;default:}}function qtt(s,c,g){s.options.verbose&&Mws(s,c,g)}var I5t=(s=>(s[s.time=0]="time",s[s.count=1]="count",s[s.memory=2]="memory",s))(I5t||{});function Hws(s){let c=Yws();return F(s.getSourceFiles(),g=>{let d=Qws(s,g),h=rn(g).length;c.set(d,c.get(d)+h)}),c}function Yws(){let s=new Map;return s.set("Library",0),s.set("Definitions",0),s.set("TypeScript",0),s.set("JavaScript",0),s.set("JSON",0),s.set("Other",0),s}function Qws(s,c){if(s.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let g=c.path;return fu(g,vbe)?"TypeScript":fu(g,uU)?"JavaScript":aA(g,".json")?"JSON":"Other"}function $tt(s,c,g){return EVe(s,g)?Gz(s,!0):c}function lnn(s){return!!s.writeOutputIsTTY&&s.writeOutputIsTTY()&&!s.getEnvironmentVariable("NO_COLOR")}function EVe(s,c){return!c||typeof c.pretty>"u"?lnn(s):c.pretty}function unn(s){return s.options.all?bo(Ww.concat(SU),(c,g)=>Fs(c.name,g.name)):Me(Ww.concat(SU),c=>!!c.showInSimplifiedHelpView)}function ert(s){s.write(Zb(Z.Version_0,C)+s.newLine)}function trt(s){if(!lnn(s))return{bold:V=>V,blue:V=>V,blueBackground:V=>V,brightWhite:V=>V};function g(V){return`\x1B[1m${V}\x1B[22m`}let d=s.getEnvironmentVariable("OS")&&s.getEnvironmentVariable("OS").toLowerCase().includes("windows"),h=s.getEnvironmentVariable("WT_SESSION"),_=s.getEnvironmentVariable("TERM_PROGRAM")&&s.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function S(V){return d&&!h&&!_?W(V):`\x1B[94m${V}\x1B[39m`}let R=s.getEnvironmentVariable("COLORTERM")==="truecolor"||s.getEnvironmentVariable("TERM")==="xterm-256color";function T(V){return R?`\x1B[48;5;68m${V}\x1B[39;49m`:`\x1B[44m${V}\x1B[39;49m`}function W(V){return`\x1B[97m${V}\x1B[39m`}return{bold:g,blue:S,brightWhite:W,blueBackground:T}}function gnn(s){return`--${s.name}${s.shortName?`, -${s.shortName}`:""}`}function Xws(s,c,g,d){var h;let _=[],S=trt(s),R=gnn(c),T=ge(c),W=typeof c.defaultValueDescription=="object"?Zb(c.defaultValueDescription):M(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),V=((h=s.getWidthOfTerminal)==null?void 0:h.call(s))??0;if(V>=80){let Ie="";c.description&&(Ie=Zb(c.description)),_.push(...re(R,Ie,g,d,V,!0),s.newLine),ee(T,c)&&(T&&_.push(...re(T.valueType,T.possibleValues,g,d,V,!1),s.newLine),W&&_.push(...re(Zb(Z.default_Colon),W,g,d,V,!1),s.newLine)),_.push(s.newLine)}else{if(_.push(S.blue(R),s.newLine),c.description){let Ie=Zb(c.description);_.push(Ie)}if(_.push(s.newLine),ee(T,c)){if(T&&_.push(`${T.valueType} ${T.possibleValues}`),W){T&&_.push(s.newLine);let Ie=Zb(Z.default_Colon);_.push(`${Ie} ${W}`)}_.push(s.newLine)}_.push(s.newLine)}return _;function M(Ie,_e){return Ie!==void 0&&typeof _e=="object"?Do(_e.entries()).filter(([,Ee])=>Ee===Ie).map(([Ee])=>Ee).join("/"):String(Ie)}function ee(Ie,_e){let Ee=["string"],Ne=[void 0,"false","n/a"],Te=_e.defaultValueDescription;return!(_e.category===Z.Command_line_Options||k(Ee,Ie?.possibleValues)&&k(Ne,Te))}function re(Ie,_e,Ee,Ne,Te,Ze){let We=[],Ue=!0,$e=_e,Ye=Te-Ne;for(;$e.length>0;){let Tt="";Ue?(Tt=Ie.padStart(Ee),Tt=Tt.padEnd(Ne),Tt=Ze?S.blue(Tt):Tt):Tt="".padStart(Ne);let ot=$e.substr(0,Ye);$e=$e.slice(Ye),We.push(`${Tt}${ot}`),Ue=!1}return We}function ge(Ie){if(Ie.type==="object")return;return{valueType:_e(Ie),possibleValues:Ee(Ie)};function _e(Ne){switch(pe.assert(Ne.type!=="listOrElement"),Ne.type){case"string":case"number":case"boolean":return Zb(Z.type_Colon);case"list":return Zb(Z.one_or_more_Colon);default:return Zb(Z.one_of_Colon)}}function Ee(Ne){let Te;switch(Ne.type){case"string":case"number":case"boolean":Te=Ne.type;break;case"list":case"listOrElement":Te=Ee(Ne.element);break;case"object":Te="";break;default:let Ze={};return Ne.type.forEach((We,Ue)=>{var $e;($e=Ne.deprecatedKeys)!=null&&$e.has(Ue)||(Ze[We]||(Ze[We]=[])).push(Ue)}),Object.entries(Ze).map(([,We])=>We.join("/")).join(", ")}return Te}}}function Ann(s,c){let g=0;for(let S of c){let R=gnn(S).length;g=g>R?g:R}let d=g+2,h=d+2,_=[];for(let S of c){let R=Xws(s,S,d,h);_=[..._,...R]}return _[_.length-2]!==s.newLine&&_.push(s.newLine),_}function r1e(s,c,g,d,h,_){let S=[];if(S.push(trt(s).bold(c)+s.newLine+s.newLine),h&&S.push(h+s.newLine+s.newLine),!d)return S=[...S,...Ann(s,g)],_&&S.push(_+s.newLine+s.newLine),S;let R=new Map;for(let T of g){if(!T.category)continue;let W=Zb(T.category),V=R.get(W)??[];V.push(T),R.set(W,V)}return R.forEach((T,W)=>{S.push(`### ${W}${s.newLine}${s.newLine}`),S=[...S,...Ann(s,T)]}),_&&S.push(_+s.newLine+s.newLine),S}function Jws(s,c){let g=trt(s),d=[...rrt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];d.push(g.bold(Zb(Z.COMMON_COMMANDS))+s.newLine+s.newLine),S("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),S("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),S("tsc -b",Z.Build_a_composite_project_in_the_working_directory),S("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),S("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),S("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),S(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let h=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),_=c.filter(R=>!k(h,R));d=[...d,...r1e(s,Zb(Z.COMMAND_LINE_FLAGS),h,!1,void 0,void 0),...r1e(s,Zb(Z.COMMON_COMPILER_OPTIONS),_,!1,void 0,XY(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)s.write(R);function S(R,T){let W=typeof R=="string"?[R]:R;for(let V of W)d.push(" "+g.blue(V)+s.newLine);d.push(" "+Zb(T)+s.newLine+s.newLine)}}function Uws(s,c,g,d){let h=[...rrt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];h=[...h,...r1e(s,Zb(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,XY(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],h=[...h,...r1e(s,Zb(Z.WATCH_OPTIONS),d,!1,Zb(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],h=[...h,...r1e(s,Zb(Z.BUILD_OPTIONS),Me(g,_=>_!==SU),!1,XY(Z.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(let _ of h)s.write(_)}function dnn(s,c){let g=[...rrt(s,`${Zb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${Zb(Z.Version_0,C)}`)];g=[...g,...r1e(s,Zb(Z.BUILD_OPTIONS),Me(c,d=>d!==SU),!1,XY(Z.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(let d of g)s.write(d)}function rrt(s,c){var g;let d=trt(s),h=[],_=((g=s.getWidthOfTerminal)==null?void 0:g.call(s))??0,S=5,R=d.blueBackground("".padStart(S)),T=d.blueBackground(d.brightWhite("TS ".padStart(S)));if(_>=c.length+S){let V=(_>120?120:_)-S;h.push(c.padEnd(V)+R+s.newLine),h.push("".padStart(V)+T+s.newLine)}else h.push(c+s.newLine),h.push(s.newLine);return h}function pnn(s,c){c.options.all?Uws(s,unn(c),Y$e,wz):Jws(s,unn(c))}function fnn(s,c,g){let d=Gz(s),h;if(g.options.locale&&yx(g.options.locale,s,g.errors),g.errors.length>0)return g.errors.forEach(d),s.exit(1);if(g.options.init)return qws(s,d,g.options),s.exit(0);if(g.options.version)return ert(s),s.exit(0);if(g.options.help||g.options.all)return pnn(s,g),s.exit(0);if(g.options.watch&&g.options.listFilesOnly)return d(Nf(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),s.exit(1);if(g.options.project){if(g.fileNames.length!==0)return d(Nf(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),s.exit(1);let R=iu(g.options.project);if(!R||s.directoryExists(R)){if(h=Ro(R,"tsconfig.json"),!s.fileExists(h))return d(Nf(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,g.options.project)),s.exit(1)}else if(h=R,!s.fileExists(h))return d(Nf(Z.The_specified_path_does_not_exist_Colon_0,g.options.project)),s.exit(1)}else if(g.fileNames.length===0){let R=iu(s.getCurrentDirectory());h=itt(R,T=>s.fileExists(T))}if(g.fileNames.length===0&&!h)return g.options.showConfig?d(Nf(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,iu(s.getCurrentDirectory()))):(ert(s),pnn(s,g)),s.exit(1);let _=s.getCurrentDirectory(),S=y9e(g.options,R=>Xc(R,_));if(h){let R=new Map,T=z3t(h,S,R,g.watchOptions,s,d);if(S.showConfig)return T.errors.length!==0?(d=$tt(s,d,T.options),T.errors.forEach(d),s.exit(1)):(s.write(JSON.stringify(z$e(T,h,s),null,4)+s.newLine),s.exit(0));if(d=$tt(s,d,T.options),cbe(T.options))return m5t(s,d)?void 0:Kws(s,c,d,T,S,g.watchOptions,R);DP(T.options)?Cnn(s,c,d,T):mnn(s,c,d,T)}else{if(S.showConfig)return s.write(JSON.stringify(z$e(g,Ro(_,"tsconfig.json"),s),null,4)+s.newLine),s.exit(0);if(d=$tt(s,d,S),cbe(S))return m5t(s,d)?void 0:jws(s,c,d,g.fileNames,S,g.watchOptions);DP(S)?Cnn(s,c,d,{...g,options:S}):mnn(s,c,d,{...g,options:S})}}function h5t(s){if(s.length>0&&s[0].charCodeAt(0)===45){let c=s[0].slice(s[0].charCodeAt(1)===45?2:1).toLowerCase();return c===SU.name||c===SU.shortName}return!1}function Inn(s,c,g){if(h5t(g)){let{buildOptions:h,watchOptions:_,projects:S,errors:R}=NWt(g);if(h.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(h.generateCpuProfile,()=>hnn(s,c,h,_,S,R));else return hnn(s,c,h,_,S,R)}let d=TWt(g,h=>s.readFile(h));if(d.options.generateCpuProfile&&s.enableCPUProfiler)s.enableCPUProfiler(d.options.generateCpuProfile,()=>fnn(s,c,d));else return fnn(s,c,d)}function m5t(s,c){return!s.watchFile||!s.watchDirectory?(c(Nf(Z.The_current_host_does_not_support_the_0_option,"--watch")),s.exit(1),!0):!1}var SVe=2;function hnn(s,c,g,d,h,_){let S=$tt(s,Gz(s),g);if(g.locale&&yx(g.locale,s,_),_.length>0)return _.forEach(S),s.exit(1);if(g.help||h.length===0)return ert(s),dnn(s,CEe),s.exit(0);if(!s.getModifiedTime||!s.setModifiedTime||g.clean&&!s.deleteFile)return S(Nf(Z.The_current_host_does_not_support_the_0_option,"--build")),s.exit(1);if(g.watch){if(m5t(s,S))return;let M=n5t(s,void 0,S,_Ve(s,EVe(s,g)),_5t(s,g));M.jsDocParsingMode=SVe;let ee=Enn(s,g);_nn(s,c,M,ee);let re=M.onWatchStatusChange,ge=!1;M.onWatchStatusChange=(_e,Ee,Ne,Te)=>{re?.(_e,Ee,Ne,Te),ge&&(_e.code===Z.Found_0_errors_Watching_for_file_changes.code||_e.code===Z.Found_1_error_Watching_for_file_changes.code)&&y5t(Ie,ee)};let Ie=s5t(M,h,g,d);return Ie.build(),y5t(Ie,ee),ge=!0,Ie}let R=r5t(s,void 0,S,_Ve(s,EVe(s,g)),C5t(s,g));R.jsDocParsingMode=SVe;let T=Enn(s,g);_nn(s,c,R,T);let W=i5t(R,h,g),V=g.clean?W.clean():W.build();return y5t(W,T),jf(),s.exit(V)}function C5t(s,c){return EVe(s,c)?(g,d)=>s.write(Dtt(g,d,s.newLine,s)):void 0}function mnn(s,c,g,d){let{fileNames:h,options:_,projectReferences:S}=d,R=$9e(_,void 0,s);R.jsDocParsingMode=SVe;let T=R.getCurrentDirectory(),W=_d(R.useCaseSensitiveFileNames());Gde(R,re=>Ou(re,T,W)),b5t(s,_,!1);let V={rootNames:h,options:_,projectReferences:S,host:R,configFileParsingDiagnostics:dQ(d)},M=UEe(V),ee=Vtt(M,g,re=>s.write(re+s.newLine),C5t(s,_));return irt(s,M,void 0),c(M),s.exit(ee)}function Cnn(s,c,g,d){let{options:h,fileNames:_,projectReferences:S}=d;b5t(s,h,!1);let R=CVe(h,s);R.jsDocParsingMode=SVe;let T=q3t({host:R,system:s,rootNames:_,options:h,configFileParsingDiagnostics:dQ(d),projectReferences:S,reportDiagnostic:g,reportErrorSummary:C5t(s,h),afterProgramEmitAndDiagnostics:W=>{irt(s,W.getProgram(),void 0),c(W)}});return s.exit(T)}function _nn(s,c,g,d){ynn(s,g,!0),g.afterProgramEmitAndDiagnostics=h=>{irt(s,h.getProgram(),d),c(h)}}function ynn(s,c,g){let d=c.createProgram;c.createProgram=(h,_,S,R,T,W)=>(pe.assert(h!==void 0||_===void 0&&!!R),_!==void 0&&b5t(s,_,g),d(h,_,S,R,T,W))}function bnn(s,c,g){g.jsDocParsingMode=SVe,ynn(s,g,!1);let d=g.afterProgramCreate;g.afterProgramCreate=h=>{d(h),irt(s,h.getProgram(),void 0),c(h)}}function _5t(s,c){return Rtt(s,EVe(s,c))}function Kws(s,c,g,d,h,_,S){let R=Htt({configFileName:d.options.configFilePath,optionsToExtend:h,watchOptionsToExtend:_,system:s,reportDiagnostic:g,reportWatchStatus:_5t(s,d.options)});return bnn(s,c,R),R.configFileParsingResult=d,R.extendedConfigCache=S,Qtt(R)}function jws(s,c,g,d,h,_){let S=Ytt({rootFiles:d,options:h,watchOptions:_,system:s,reportDiagnostic:g,reportWatchStatus:_5t(s,h)});return bnn(s,c,S),Qtt(S)}function Enn(s,c){if(s===yd&&c.extendedDiagnostics)return na(),zws()}function zws(){let s;return{addAggregateStatistic:c,forEachAggregateStatistics:g,clear:d};function c(h){let _=s?.get(h.name);_?_.type===2?_.value=Math.max(_.value,h.value):_.value+=h.value:(s??(s=new Map)).set(h.name,h)}function g(h){s?.forEach(h)}function d(){s=void 0}}function y5t(s,c){if(!c)return;if(!cs()){yd.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` -`);return}let g=[];g.push({name:"Projects in scope",value:$Ee(s.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(_=>{_.name=`Aggregate ${_.name}`,g.push(_)}),QS((_,S)=>{nrt(_)&&g.push({name:`${h(_)} time`,value:S,type:0})}),ko(),na(),c.clear(),Bnn(yd,g);function d(_){let S=sE(_);S&&g.push({name:h(_),value:S,type:1})}function h(_){return _.replace("SolutionBuilder::","")}}function Snn(s,c){return s===yd&&(c.diagnostics||c.extendedDiagnostics)}function vnn(s,c){return s===yd&&c.generateTrace}function b5t(s,c,g){Snn(s,c)&&na(s),vnn(s,c)&&fd(g?"build":"project",c.generateTrace,c.configFilePath)}function nrt(s){return Ac(s,"SolutionBuilder::")}function irt(s,c,g){var d;let h=c.getCompilerOptions();vnn(s,h)&&((d=ki)==null||d.stopTracing());let _;if(Snn(s,h)){_=[];let W=s.getMemoryUsage?s.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let V=Hws(c);if(h.extendedDiagnostics)for(let[_e,Ee]of V.entries())R("Lines of "+_e,Ee);else R("Lines",ne(V.values(),(_e,Ee)=>_e+Ee,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),W>=0&&S({name:"Memory used",value:W,type:2},!0);let M=cs(),ee=M?eA("Program"):0,re=M?eA("Bind"):0,ge=M?eA("Check"):0,Ie=M?eA("Emit"):0;if(h.extendedDiagnostics){let _e=c.getRelationCacheSizes();R("Assignability cache size",_e.assignable),R("Identity cache size",_e.identity),R("Subtype cache size",_e.subtype),R("Strict subtype cache size",_e.strictSubtype),M&&QS((Ee,Ne)=>{nrt(Ee)||T(`${Ee} time`,Ne,!0)})}else M&&(T("I/O read",eA("I/O Read"),!0),T("I/O write",eA("I/O Write"),!0),T("Parse time",ee,!0),T("Bind time",re,!0),T("Check time",ge,!0),T("Emit time",Ie,!0));M&&T("Total time",ee+re+ge+Ie,!1),Bnn(s,_),M?g?(QS(_e=>{nrt(_e)||um(_e)}),XS(_e=>{nrt(_e)||gm(_e)})):ko():s.write(Z.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+` -`)}function S(W,V){_.push(W),V&&g?.addAggregateStatistic(W)}function R(W,V){S({name:W,value:V,type:1},!0)}function T(W,V,M){S({name:W,value:V,type:0},M)}}function Bnn(s,c){let g=0,d=0;for(let h of c){h.name.length>g&&(g=h.name.length);let _=wnn(h);_.length>d&&(d=_.length)}for(let h of c)s.write(`${h.name}:`.padEnd(g+2)+wnn(h).toString().padStart(d)+s.newLine)}function wnn(s){switch(s.type){case 1:return""+s.value;case 0:return(s.value/1e3).toFixed(2)+"s";case 2:return Math.round(s.value/1e3)+"K";default:pe.assertNever(s.type)}}function qws(s,c,g){let d=s.getCurrentDirectory(),h=iu(Ro(d,"tsconfig.json"));if(s.fileExists(h))c(Nf(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{s.writeFile(h,GWt(g,s.newLine));let _=[s.newLine,...rrt(s,"Created a new tsconfig.json")];_.push("You can learn more at https://aka.ms/tsconfig"+s.newLine);for(let S of _)s.write(S)}}function TN(s,c=!0){return{type:s,reportFallback:c}}var Tnn=TN(void 0,!1),Rnn=TN(void 0,!1),Pde=TN(void 0,!0);function E5t(s,c){let g=a_(s,"strictNullChecks");return{serializeTypeOfDeclaration:V,serializeReturnTypeForSignature:ee,serializeTypeOfExpression:W,serializeTypeOfAccessor:T,tryReuseExistingTypeNode(st,ir){if(c.canReuseTypeNode(st,ir))return h(st,ir)}};function d(st,ir,zt=ir){return ir===void 0?void 0:c.markNodeReuse(st,ir.flags&16?ir:me.cloneNode(ir),zt??ir)}function h(st,ir){let{finalizeBoundary:zt,startRecoveryScope:Ht,hadError:Br,markError:mn}=c.createRecoveryBoundary(st),jn=Mr(ir,Zi,uc);if(!zt())return;return st.approximateLength+=ir.end-ir.pos,jn;function Zi(Zn){if(Br())return Zn;let ya=Ht(),Gl=eie(Zn)?c.enterNewScope(st,Zn):void 0,ba=su(Zn);return Gl?.(),Br()?uc(Zn)&&!bE(Zn)?(ya(),c.serializeExistingTypeNode(st,Zn)):Zn:ba?c.markNodeReuse(st,ba,Zn):void 0}function Ns(Zn){let ya=w7(Zn);switch(ya.kind){case 184:return Ic(ya);case 187:return ks(ya);case 200:return An(ya);case 199:let Gl=ya;if(Gl.operator===143)return si(Gl)}return Mr(Zn,Zi,uc)}function An(Zn){let ya=Ns(Zn.objectType);if(ya!==void 0)return me.updateIndexedAccessTypeNode(Zn,ya,Mr(Zn.indexType,Zi,uc))}function si(Zn){pe.assertEqual(Zn.operator,143);let ya=Ns(Zn.type);if(ya!==void 0)return me.updateTypeOperatorNode(Zn,ya)}function ks(Zn){let{introducesError:ya,node:Gl}=c.trackExistingEntityName(st,Zn.exprName);if(!ya)return me.updateTypeQueryNode(Zn,Gl,Ws(Zn.typeArguments,Zi,uc));let ba=c.serializeTypeName(st,Zn.exprName,!0);if(ba)return c.markNodeReuse(st,ba,Zn.exprName)}function Ic(Zn){if(c.canReuseTypeNode(st,Zn)){let{introducesError:ya,node:Gl}=c.trackExistingEntityName(st,Zn.typeName),ba=Ws(Zn.typeArguments,Zi,uc);if(ya){let Wo=c.serializeTypeName(st,Zn.typeName,!1,ba);if(Wo)return c.markNodeReuse(st,Wo,Zn.typeName)}else{let Wo=me.updateTypeReferenceNode(Zn,Gl,ba);return c.markNodeReuse(st,Wo,Zn)}}}function su(Zn){var ya;if(W3(Zn))return Mr(Zn.type,Zi,uc);if(WPt(Zn)||Zn.kind===320)return me.createKeywordTypeNode(133);if(OPt(Zn))return me.createKeywordTypeNode(159);if(Iie(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createLiteralTypeNode(me.createNull())]);if(d$e(Zn))return me.createUnionTypeNode([Mr(Zn.type,Zi,uc),me.createKeywordTypeNode(157)]);if(zLe(Zn))return Mr(Zn.type,Zi);if(qLe(Zn))return me.createArrayTypeNode(Mr(Zn.type,Zi,uc));if(yU(Zn))return me.createTypeLiteralNode(At(Zn.jsDocPropertyTags,hn=>{let Oi=Mr(Ir(hn.name)?hn.name:hn.name.right,Zi,Ir),lo=c.getJsDocPropertyOverride(st,Zn,hn);return me.createPropertySignature(void 0,Oi,hn.isBracketed||hn.typeExpression&&d$e(hn.typeExpression.type)?me.createToken(58):void 0,lo||hn.typeExpression&&Mr(hn.typeExpression.type,Zi,uc)||me.createKeywordTypeNode(133))}));if(nh(Zn)&&Ir(Zn.typeName)&&Zn.typeName.escapedText==="")return ua(me.createKeywordTypeNode(133),Zn);if((l_(Zn)||nh(Zn))&&Uge(Zn))return me.createTypeLiteralNode([me.createIndexSignature(void 0,[me.createParameterDeclaration(void 0,void 0,"x",void 0,Mr(Zn.typeArguments[0],Zi,uc))],Mr(Zn.typeArguments[1],Zi,uc))]);if(hie(Zn))if(PY(Zn)){let hn;return me.createConstructorTypeNode(void 0,Ws(Zn.typeParameters,Zi,Ds),Xt(Zn.parameters,(Oi,lo)=>Oi.name&&Ir(Oi.name)&&Oi.name.escapedText==="new"?(hn=Oi.type,void 0):me.createParameterDeclaration(void 0,Wo(Oi),c.markNodeReuse(st,me.createIdentifier(hc(Oi,lo)),Oi),me.cloneNode(Oi.questionToken),Mr(Oi.type,Zi,uc),void 0)),Mr(hn||Zn.type,Zi,uc)||me.createKeywordTypeNode(133))}else return me.createFunctionTypeNode(Ws(Zn.typeParameters,Zi,Ds),At(Zn.parameters,(hn,Oi)=>me.createParameterDeclaration(void 0,Wo(hn),c.markNodeReuse(st,me.createIdentifier(hc(hn,Oi)),hn),me.cloneNode(hn.questionToken),Mr(hn.type,Zi,uc),void 0)),Mr(Zn.type,Zi,uc)||me.createKeywordTypeNode(133));if(Fx(Zn))return c.canReuseTypeNode(st,Zn)||mn(),Zn;if(Ds(Zn)){let{node:hn}=c.trackExistingEntityName(st,Zn.name);return me.updateTypeParameterDeclaration(Zn,Ws(Zn.modifiers,Zi,Ig),hn,Mr(Zn.constraint,Zi,uc),Mr(Zn.default,Zi,uc))}if(Iv(Zn)){let hn=An(Zn);return hn||(mn(),Zn)}if(nh(Zn)){let hn=Ic(Zn);return hn||(mn(),Zn)}if(ky(Zn)){if(((ya=Zn.attributes)==null?void 0:ya.token)===132)return mn(),Zn;if(!c.canReuseTypeNode(st,Zn))return c.serializeExistingTypeNode(st,Zn);let hn=yr(Zn,Zn.argument.literal),Oi=hn===Zn.argument.literal?d(st,Zn.argument.literal):hn;return me.updateImportTypeNode(Zn,Oi===Zn.argument.literal?d(st,Zn.argument):me.createLiteralTypeNode(Oi),Mr(Zn.attributes,Zi,CU),Mr(Zn.qualifier,Zi,fC),Ws(Zn.typeArguments,Zi,uc),Zn.isTypeOf)}if(rh(Zn)&&Zn.name.kind===168&&!c.hasLateBindableName(Zn)){if(!XD(Zn))return Gl(Zn,Zi);if(c.shouldRemoveDeclaration(st,Zn))return}if(bu(Zn)&&!Zn.type||pi(Zn)&&!Zn.type&&!Zn.initializer||ss(Zn)&&!Zn.type&&!Zn.initializer||Si(Zn)&&!Zn.type&&!Zn.initializer){let hn=Gl(Zn,Zi);return hn===Zn&&(hn=c.markNodeReuse(st,me.cloneNode(Zn),Zn)),hn.type=me.createKeywordTypeNode(133),Si(Zn)&&(hn.modifiers=void 0),hn}if(Fw(Zn)){let hn=ks(Zn);return hn||(mn(),Zn)}if(Un(Zn)&&Od(Zn.expression)){let{node:hn,introducesError:Oi}=c.trackExistingEntityName(st,Zn.expression);if(Oi){let lo=c.serializeTypeOfExpression(st,Zn.expression),pa;if(EE(lo))pa=lo.literal;else{let Oa=c.evaluateEntityNameExpression(Zn.expression),tl=typeof Oa.value=="string"?me.createStringLiteral(Oa.value,void 0):typeof Oa.value=="number"?me.createNumericLiteral(Oa.value,0):void 0;if(!tl)return Um(lo)&&c.trackComputedName(st,Zn.expression),Zn;pa=tl}return pa.kind===11&&Uh(pa.text,Mg(s))?me.createIdentifier(pa.text):pa.kind===9&&!pa.text.startsWith("-")?pa:me.updateComputedPropertyName(Zn,pa)}else return me.updateComputedPropertyName(Zn,hn)}if(bE(Zn)){let hn;if(Ir(Zn.parameterName)){let{node:Oi,introducesError:lo}=c.trackExistingEntityName(st,Zn.parameterName);lo&&mn(),hn=Oi}else hn=me.cloneNode(Zn.parameterName);return me.updateTypePredicateNode(Zn,me.cloneNode(Zn.assertsModifier),hn,Mr(Zn.type,Zi,uc))}if(Zw(Zn)||mh(Zn)||GB(Zn)){let hn=Gl(Zn,Zi),Oi=c.markNodeReuse(st,hn===Zn?me.cloneNode(Zn):hn,Zn),lo=tA(Oi);return ti(Oi,lo|(st.flags&1024&&mh(Zn)?0:1)),Oi}if(Zg(Zn)&&st.flags&268435456&&!Zn.singleQuote){let hn=me.cloneNode(Zn);return hn.singleQuote=!0,hn}if(d2(Zn)){let hn=Mr(Zn.checkType,Zi,uc),Oi=c.enterNewScope(st,Zn),lo=Mr(Zn.extendsType,Zi,uc),pa=Mr(Zn.trueType,Zi,uc);Oi();let Oa=Mr(Zn.falseType,Zi,uc);return me.updateConditionalTypeNode(Zn,hn,lo,pa,Oa)}if(xB(Zn)){if(Zn.operator===158&&Zn.type.kind===155){if(!c.canReuseTypeNode(st,Zn))return mn(),Zn}else if(Zn.operator===143){let hn=si(Zn);return hn||(mn(),Zn)}}return Gl(Zn,Zi);function Gl(hn,Oi){let lo=!st.enclosingFile||st.enclosingFile!==ms(hn);return _s(hn,Oi,void 0,lo?ba:void 0)}function ba(hn,Oi,lo,pa,Oa){let tl=Ws(hn,Oi,lo,pa,Oa);return tl&&(tl.pos!==-1||tl.end!==-1)&&(tl===hn&&(tl=me.createNodeArray(hn.slice(),hn.hasTrailingComma)),TB(tl,-1,-1)),tl}function Wo(hn){return hn.dotDotDotToken||(hn.type&&qLe(hn.type)?me.createToken(26):void 0)}function hc(hn,Oi){return hn.name&&Ir(hn.name)&&hn.name.escapedText==="this"?"this":Wo(hn)?"args":`arg${Oi}`}function yr(hn,Oi){let lo=c.getModuleSpecifierOverride(st,hn,Oi);return lo?ua(me.createStringLiteral(lo),Oi):Oi}}}function _(st,ir,zt){if(!st)return;let Ht;return(!zt||ur(st))&&c.canReuseTypeNode(ir,st)&&(Ht=h(ir,st),Ht!==void 0&&(Ht=tr(Ht,zt,void 0,ir))),Ht}function S(st,ir,zt,Ht,Br,mn=Br!==void 0){if(!st||!c.canReuseTypeNodeAnnotation(ir,zt,st,Ht,Br)&&(!Br||!c.canReuseTypeNodeAnnotation(ir,zt,st,Ht,!1)))return;let jn;return(!Br||ur(st))&&(jn=_(st,ir,Br)),jn!==void 0||!mn?jn:(ir.tracker.reportInferenceFallback(zt),c.serializeExistingTypeNode(ir,st,Br)??me.createKeywordTypeNode(133))}function R(st,ir,zt,Ht){if(!st)return;let Br=_(st,ir,zt);return Br!==void 0?Br:(ir.tracker.reportInferenceFallback(Ht??st),c.serializeExistingTypeNode(ir,st,zt)??me.createKeywordTypeNode(133))}function T(st,ir,zt){return Ie(st,ir,zt)??$e(st,c.getAllAccessorDeclarations(st),zt,ir)}function W(st,ir,zt,Ht){let Br=ot(st,ir,!1,zt,Ht);return Br.type!==void 0?Br.type:We(st,ir,Br.reportFallback)}function V(st,ir,zt){switch(st.kind){case 170:case 342:return Ee(st,ir,zt);case 261:return _e(st,ir,zt);case 172:case 349:case 173:return Te(st,ir,zt);case 209:return Ze(st,ir,zt);case 278:return W(st.expression,zt,void 0,!0);case 212:case 213:case 227:return Ne(st,ir,zt);case 304:case 305:return M(st,ir,zt);default:pe.assertNever(st,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(st.kind)}`)}}function M(st,ir,zt){let Ht=kh(st),Br;if(Ht&&c.canReuseTypeNodeAnnotation(zt,st,Ht,ir)&&(Br=_(Ht,zt)),!Br&&st.kind===304){let mn=st.initializer,jn=sQ(mn)?_ie(mn):mn.kind===235||mn.kind===217?mn.type:void 0;jn&&!s2(jn)&&c.canReuseTypeNodeAnnotation(zt,st,jn,ir)&&(Br=_(jn,zt))}return Br??Ze(st,ir,zt,!1)}function ee(st,ir,zt){switch(st.kind){case 178:return T(st,ir,zt);case 175:case 263:case 181:case 174:case 180:case 177:case 179:case 182:case 185:case 186:case 219:case 220:case 318:case 324:return Gr(st,ir,zt);default:pe.assertNever(st,`Node needs to be an inferrable node, found ${pe.formatSyntaxKind(st.kind)}`)}}function re(st){if(st)return st.kind===178?wo(st)&&eN(st)||xb(st):Jye(st)}function ge(st,ir){let zt=re(st);return!zt&&st!==ir.firstAccessor&&(zt=re(ir.firstAccessor)),!zt&&ir.secondAccessor&&st!==ir.secondAccessor&&(zt=re(ir.secondAccessor)),zt}function Ie(st,ir,zt){let Ht=c.getAllAccessorDeclarations(st),Br=ge(st,Ht);if(Br&&!bE(Br))return Ye(zt,st,()=>S(Br,zt,st,ir)??Ze(st,ir,zt));if(Ht.getAccessor)return Ye(zt,Ht.getAccessor,()=>Gr(Ht.getAccessor,ir,zt))}function _e(st,ir,zt){var Ht;let Br=kh(st),mn=Pde;return Br?mn=TN(S(Br,zt,st,ir)):st.initializer&&(((Ht=ir.declarations)==null?void 0:Ht.length)===1||ct(ir.declarations,nc)===1)&&!c.isExpandoFunctionDeclaration(st)&&!pr(st)&&(mn=ot(st.initializer,zt,void 0,void 0,OT(st))),mn.type!==void 0?mn.type:Ze(st,ir,zt,mn.reportFallback)}function Ee(st,ir,zt){let Ht=st.parent;if(Ht.kind===179)return T(Ht,void 0,zt);let Br=kh(st),mn=c.requiresAddingImplicitUndefined(st,ir,zt.enclosingDeclaration),jn=Pde;return Br?jn=TN(S(Br,zt,st,ir,mn)):Si(st)&&st.initializer&&Ir(st.name)&&!pr(st)&&(jn=ot(st.initializer,zt,void 0,mn)),jn.type!==void 0?jn.type:Ze(st,ir,zt,jn.reportFallback)}function Ne(st,ir,zt){let Ht=kh(st),Br;Ht&&(Br=S(Ht,zt,st,ir));let mn=zt.suppressReportInferenceFallback;zt.suppressReportInferenceFallback=!0;let jn=Br??Ze(st,ir,zt,!1);return zt.suppressReportInferenceFallback=mn,jn}function Te(st,ir,zt){let Ht=kh(st),Br=c.requiresAddingImplicitUndefined(st,ir,zt.enclosingDeclaration),mn=Pde;if(Ht)mn=TN(S(Ht,zt,st,ir,Br));else{let jn=pi(st)?st.initializer:void 0;if(jn&&!pr(st)){let Zi=hf(st);mn=ot(jn,zt,void 0,Br,Zi)}}return mn.type!==void 0?mn.type:Ze(st,ir,zt,mn.reportFallback)}function Ze(st,ir,zt,Ht=!0){return Ht&&zt.tracker.reportInferenceFallback(st),zt.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfDeclaration(zt,st,ir)}function We(st,ir,zt=!0,Ht){return pe.assert(!Ht),zt&&ir.tracker.reportInferenceFallback(st),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeTypeOfExpression(ir,st)??me.createKeywordTypeNode(133)}function Ue(st,ir,zt,Ht){return Ht&&ir.tracker.reportInferenceFallback(st),ir.noInferenceFallback===!0?me.createKeywordTypeNode(133):c.serializeReturnTypeForSignature(ir,st,zt)??me.createKeywordTypeNode(133)}function $e(st,ir,zt,Ht,Br=!0){return st.kind===178?Gr(st,Ht,zt,Br):(Br&&zt.tracker.reportInferenceFallback(st),(ir.getAccessor&&Gr(ir.getAccessor,Ht,zt,Br))??c.serializeTypeOfDeclaration(zt,st,Ht)??me.createKeywordTypeNode(133))}function Ye(st,ir,zt){let Ht=c.enterNewScope(st,ir),Br=zt();return Ht(),Br}function Tt(st,ir,zt,Ht){return s2(ir)?ot(st,zt,!0,Ht):TN(R(ir,zt,Ht))}function ot(st,ir,zt=!1,Ht=!1,Br=!1){switch(st.kind){case 218:return sQ(st)?Tt(st.expression,_ie(st),ir,Ht):ot(st.expression,ir,zt,Ht);case 80:if(c.isUndefinedIdentifierExpression(st))return TN(nt());break;case 106:return TN(g?tr(me.createLiteralTypeNode(me.createNull()),Ht,st,ir):me.createKeywordTypeNode(133));case 220:case 219:return pe.type(st),Ye(ir,st,()=>Qe(st,ir));case 217:case 235:let mn=st;return Tt(mn.expression,mn.type,ir,Ht);case 225:let jn=st;if(uz(jn))return Dt(jn.operator===40?jn.operand:jn,jn.operand.kind===10?163:150,ir,zt||Br,Ht);break;case 210:return ht(st,ir,zt,Ht);case 211:return Rt(st,ir,zt,Ht);case 232:return TN(We(st,ir,!0,Ht));case 229:if(!zt&&!Br)return TN(me.createKeywordTypeNode(154));break;default:let Zi,Ns=st;switch(st.kind){case 9:Zi=150;break;case 15:Ns=me.createStringLiteral(st.text),Zi=154;break;case 11:Zi=154;break;case 10:Zi=163;break;case 112:case 97:Zi=136;break}if(Zi)return Dt(Ns,Zi,ir,zt||Br,Ht)}return Pde}function Qe(st,ir){let zt=Gr(st,void 0,ir),Ht=Pt(st.typeParameters,ir),Br=st.parameters.map(mn=>Ke(mn,ir));return TN(me.createFunctionTypeNode(Ht,Br,zt))}function mt(st,ir,zt){if(!zt)return ir.tracker.reportInferenceFallback(st),!1;for(let Ht of st.elements)if(Ht.kind===231)return ir.tracker.reportInferenceFallback(Ht),!1;return!0}function ht(st,ir,zt,Ht){if(!mt(st,ir,zt))return Ht||jh(gv(st).parent)?Rnn:TN(We(st,ir,!1,Ht));let Br=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[];for(let Zi of st.elements)if(pe.assert(Zi.kind!==231),Zi.kind===233)mn.push(nt());else{let Ns=ot(Zi,ir,zt),An=Ns.type!==void 0?Ns.type:We(Zi,ir,Ns.reportFallback);mn.push(An)}let jn=me.createTupleTypeNode(mn);return jn.emitNode={flags:1,autoGenerate:void 0,internalFlags:0},ir.noInferenceFallback=Br,Tnn}function _t(st,ir){let zt=!0;for(let Ht of st.properties){if(Ht.flags&262144){zt=!1;break}if(Ht.kind===305||Ht.kind===306)ir.tracker.reportInferenceFallback(Ht),zt=!1;else if(Ht.name.flags&262144){zt=!1;break}else if(Ht.name.kind===81)zt=!1;else if(Ht.name.kind===168){let Br=Ht.name.expression;!uz(Br,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Br)&&(ir.tracker.reportInferenceFallback(Ht.name),zt=!1)}}return zt}function Rt(st,ir,zt,Ht){if(!_t(st,ir))return Ht||jh(gv(st).parent)?Rnn:TN(We(st,ir,!1,Ht));let Br=ir.noInferenceFallback;ir.noInferenceFallback=!0;let mn=[],jn=ir.flags;ir.flags|=4194304;for(let Ns of st.properties){pe.assert(!a0(Ns)&&!Lx(Ns));let An=Ns.name,si;switch(Ns.kind){case 175:si=Ye(ir,Ns,()=>_r(Ns,An,ir,zt));break;case 304:si=Lt(Ns,An,ir,zt);break;case 179:case 178:si=Gt(Ns,An,ir);break}si&&(hh(si,Ns),mn.push(si))}ir.flags=jn;let Zi=me.createTypeLiteralNode(mn);return ir.flags&1024||ti(Zi,1),ir.noInferenceFallback=Br,Tnn}function Lt(st,ir,zt,Ht){let Br=Ht?[me.createModifier(148)]:[],mn=ot(st.initializer,zt,Ht),jn=mn.type!==void 0?mn.type:Ze(st,void 0,zt,mn.reportFallback);return me.createPropertySignature(Br,d(zt,ir),void 0,jn)}function Ke(st,ir){return me.updateParameterDeclaration(st,void 0,d(ir,st.dotDotDotToken),c.serializeNameOfParameter(ir,st),c.isOptionalParameter(st)?me.createToken(58):void 0,Ee(st,void 0,ir),void 0)}function Pt(st,ir){return st?.map(zt=>{var Ht;let{node:Br}=c.trackExistingEntityName(ir,zt.name);return me.updateTypeParameterDeclaration(zt,(Ht=zt.modifiers)==null?void 0:Ht.map(mn=>d(ir,mn)),Br,R(zt.constraint,ir),R(zt.default,ir))})}function _r(st,ir,zt,Ht){let Br=Gr(st,void 0,zt),mn=Pt(st.typeParameters,zt),jn=st.parameters.map(Zi=>Ke(Zi,zt));return Ht?me.createPropertySignature([me.createModifier(148)],d(zt,ir),d(zt,st.questionToken),me.createFunctionTypeNode(mn,jn,Br)):(Ir(ir)&&ir.escapedText==="new"&&(ir=me.createStringLiteral("new")),me.createMethodSignature([],d(zt,ir),d(zt,st.questionToken),mn,jn,Br))}function Gt(st,ir,zt){let Ht=c.getAllAccessorDeclarations(st),Br=Ht.getAccessor&&re(Ht.getAccessor),mn=Ht.setAccessor&&re(Ht.setAccessor);if(Br!==void 0&&mn!==void 0)return Ye(zt,st,()=>{let jn=st.parameters.map(Zi=>Ke(Zi,zt));return bB(st)?me.updateGetAccessorDeclaration(st,[],d(zt,ir),jn,R(Br,zt),void 0):me.updateSetAccessorDeclaration(st,[],d(zt,ir),jn,void 0)});if(Ht.firstAccessor===st){let Zi=(Br?Ye(zt,Ht.getAccessor,()=>R(Br,zt)):mn?Ye(zt,Ht.setAccessor,()=>R(mn,zt)):void 0)??$e(st,Ht,zt,void 0);return me.createPropertySignature(Ht.setAccessor===void 0?[me.createModifier(148)]:[],d(zt,ir),void 0,Zi)}}function nt(){return g?me.createKeywordTypeNode(157):me.createKeywordTypeNode(133)}function Dt(st,ir,zt,Ht,Br){let mn;return Ht?(st.kind===225&&st.operator===40&&(mn=me.createLiteralTypeNode(d(zt,st.operand))),mn=me.createLiteralTypeNode(d(zt,st))):mn=me.createKeywordTypeNode(ir),TN(tr(mn,Br,st,zt))}function tr(st,ir,zt,Ht){let Br=zt&&gv(zt).parent,mn=Br&&jh(Br)&&RB(Br);return!g||!(ir||mn)?st:(ur(st)||Ht.tracker.reportInferenceFallback(st),aS(st)?me.createUnionTypeNode([...st.types,me.createKeywordTypeNode(157)]):me.createUnionTypeNode([st,me.createKeywordTypeNode(157)]))}function ur(st){return!g||v0(st.kind)||st.kind===202||st.kind===185||st.kind===186||st.kind===189||st.kind===190||st.kind===188||st.kind===204||st.kind===198?!0:st.kind===197?ur(st.type):st.kind===193||st.kind===194?st.types.every(ur):!1}function Gr(st,ir,zt,Ht=!0){let Br=Pde,mn=PY(st)?kh(st.parameters[0]):xb(st);return mn?Br=TN(S(mn,zt,st,ir)):C3(st)&&(Br=dt(st,zt)),Br.type!==void 0?Br.type:Ue(st,zt,ir,Ht&&Br.reportFallback&&!mn)}function dt(st,ir){let zt;if(st&&!sf(st.body)){if(SI(st)&3)return Pde;let Br=st.body;Br&&$u(Br)?yF(Br,mn=>{if(mn.parent!==Br)return zt=void 0,!0;if(!zt)zt=mn.expression;else return zt=void 0,!0}):zt=Br}if(zt)if(pr(zt)){let Ht=sQ(zt)?_ie(zt):Yd(zt)||xF(zt)?zt.type:void 0;if(Ht&&!s2(Ht))return TN(_(Ht,ir))}else return ot(zt,ir);return Pde}function pr(st){return ji(st.parent,ir=>Zl(ir)||!kd(ir)&&!!kh(ir)||bN(ir)||pie(ir))}}var YP={};o(YP,{NameValidationResult:()=>Znn,discoverTypings:()=>tTs,isTypingUpToDate:()=>Gnn,loadSafeList:()=>$ws,loadTypesMap:()=>eTs,nonRelativeModuleNameForTypingCache:()=>Fnn,renderPackageNameValidationFailure:()=>nTs,validatePackageName:()=>rTs});var vVe="action::set",BVe="action::invalidate",wVe="action::packageInstalled",srt="event::typesRegistry",ort="event::beginInstallTypes",art="event::endInstallTypes",S5t="event::initializationFailed",n1e="action::watchTypingLocations",crt;(s=>{s.GlobalCacheLocation="--globalTypingsCacheLocation",s.LogFile="--logFile",s.EnableTelemetry="--enableTelemetry",s.TypingSafeListLocation="--typingSafeListLocation",s.TypesMapLocation="--typesMapLocation",s.NpmLocation="--npmLocation",s.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(crt||(crt={}));function Nnn(s){return yd.args.includes(s)}function Dnn(s){let c=yd.args.indexOf(s);return c>=0&&cs.readFile(d));return new Map(Object.entries(g.config))}function eTs(s,c){var g;let d=yEe(c,h=>s.readFile(h));if((g=d.config)!=null&&g.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function tTs(s,c,g,d,h,_,S,R,T,W){if(!S||!S.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let V=new Map;g=Xt(g,Ze=>{let We=iu(Ze);if(pN(We))return We});let M=[];S.include&&Ee(S.include,"Explicitly included types");let ee=S.exclude||[];if(!W.types){let Ze=new Set(g.map(Mo));Ze.add(d),Ze.forEach(We=>{Ne(We,"bower.json","bower_components",M),Ne(We,"package.json","node_modules",M)})}if(S.disableFilenameBasedTypeAcquisition||Te(g),R){let Ze=io(R.map(Fnn),MA,Ca);Ee(Ze,"Inferred typings from unresolved imports")}for(let Ze of ee)V.delete(Ze)&&c&&c(`Typing for ${Ze} is in exclude list, will be ignored.`);_.forEach((Ze,We)=>{let Ue=T.get(We);V.get(We)===!1&&Ue!==void 0&&Gnn(Ze,Ue)&&V.set(We,Ze.typingLocation)});let re=[],ge=[];V.forEach((Ze,We)=>{Ze?ge.push(Ze):re.push(We)});let Ie={cachedTypingPaths:ge,newTypingNames:re,filesToWatch:M};return c&&c(`Finished typings discovery:${j3(Ie)}`),Ie;function _e(Ze){V.has(Ze)||V.set(Ze,!1)}function Ee(Ze,We){c&&c(`${We}: ${JSON.stringify(Ze)}`),F(Ze,_e)}function Ne(Ze,We,Ue,$e){let Ye=Ro(Ze,We),Tt,ot;s.fileExists(Ye)&&($e.push(Ye),Tt=yEe(Ye,_t=>s.readFile(_t)).config,ot=er([Tt.dependencies,Tt.devDependencies,Tt.optionalDependencies,Tt.peerDependencies],_g),Ee(ot,`Typing names in '${Ye}' dependencies`));let Qe=Ro(Ze,Ue);if($e.push(Qe),!s.directoryExists(Qe))return;let mt=[],ht=ot?ot.map(_t=>Ro(Qe,_t,We)):s.readDirectory(Qe,[".json"],void 0,void 0,3).filter(_t=>{if(gp(_t)!==We)return!1;let Rt=Np(iu(_t)),Lt=Rt[Rt.length-3][0]==="@";return Lt&&Om(Rt[Rt.length-4])===Ue||!Lt&&Om(Rt[Rt.length-3])===Ue});c&&c(`Searching for typing names in ${Qe}; all files: ${JSON.stringify(ht)}`);for(let _t of ht){let Rt=iu(_t),Ke=yEe(Rt,_r=>s.readFile(_r)).config;if(!Ke.name)continue;let Pt=Ke.types||Ke.typings;if(Pt){let _r=Xc(Pt,Mo(Rt));s.fileExists(_r)?(c&&c(` Package '${Ke.name}' provides its own types.`),V.set(Ke.name,_r)):c&&c(` Package '${Ke.name}' provides its own types but they are missing.`)}else mt.push(Ke.name)}Ee(mt," Found package names")}function Te(Ze){let We=Xt(Ze,$e=>{if(!pN($e))return;let Ye=s0(Om(gp($e))),Tt=us(Ye);return h.get(Tt)});We.length&&Ee(We,"Inferred typings from file names"),jt(Ze,$e=>aA($e,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),_e("react"))}}var Znn=(s=>(s[s.Ok=0]="Ok",s[s.EmptyName=1]="EmptyName",s[s.NameTooLong=2]="NameTooLong",s[s.NameStartsWithDot=3]="NameStartsWithDot",s[s.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",s[s.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",s))(Znn||{}),Lnn=214;function rTs(s){return v5t(s,!0)}function v5t(s,c){if(!s)return 1;if(s.length>Lnn)return 2;if(s.charCodeAt(0)===46)return 3;if(s.charCodeAt(0)===95)return 4;if(c){let g=/^@([^/]+)\/([^/]+)$/.exec(s);if(g){let d=v5t(g[1],!1);if(d!==0)return{name:g[1],isScopeName:!0,result:d};let h=v5t(g[2],!1);return h!==0?{name:g[2],isScopeName:!1,result:h}:0}}return encodeURIComponent(s)!==s?5:0}function nTs(s,c){return typeof s=="object"?Vnn(c,s.result,s.name,s.isScopeName):Vnn(c,s,c,!1)}function Vnn(s,c,g,d){let h=d?"Scope":"Package";switch(c){case 1:return`'${s}':: ${h} name '${g}' cannot be empty`;case 2:return`'${s}':: ${h} name '${g}' should be less than ${Lnn} characters`;case 3:return`'${s}':: ${h} name '${g}' cannot start with '.'`;case 4:return`'${s}':: ${h} name '${g}' cannot start with '_'`;case 5:return`'${s}':: ${h} name '${g}' contains non URI safe characters`;case 0:return pe.fail();default:pe.assertNever(c)}}var TVe;(s=>{class c{constructor(h){this.text=h}getText(h,_){return h===0&&_===this.text.length?this.text:this.text.substring(h,_)}getLength(){return this.text.length}getChangeRange(){}}function g(d){return new c(d)}s.fromString=g})(TVe||(TVe={}));var B5t=(s=>(s[s.Dependencies=1]="Dependencies",s[s.DevDependencies=2]="DevDependencies",s[s.PeerDependencies=4]="PeerDependencies",s[s.OptionalDependencies=8]="OptionalDependencies",s[s.All=15]="All",s))(B5t||{}),w5t=(s=>(s[s.Off=0]="Off",s[s.On=1]="On",s[s.Auto=2]="Auto",s))(w5t||{}),T5t=(s=>(s[s.Semantic=0]="Semantic",s[s.PartialSemantic=1]="PartialSemantic",s[s.Syntactic=2]="Syntactic",s))(T5t||{}),VB={},R5t=(s=>(s.Original="original",s.TwentyTwenty="2020",s))(R5t||{}),lrt=(s=>(s.All="All",s.SortAndCombine="SortAndCombine",s.RemoveUnused="RemoveUnused",s))(lrt||{}),urt=(s=>(s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",s))(urt||{}),N5t=(s=>(s.Type="Type",s.Parameter="Parameter",s.Enum="Enum",s))(N5t||{}),D5t=(s=>(s.none="none",s.definition="definition",s.reference="reference",s.writtenReference="writtenReference",s))(D5t||{}),k5t=(s=>(s[s.None=0]="None",s[s.Block=1]="Block",s[s.Smart=2]="Smart",s))(k5t||{}),grt=(s=>(s.Ignore="ignore",s.Insert="insert",s.Remove="remove",s))(grt||{});function RVe(s){return{indentSize:4,tabSize:4,newLineCharacter:s||` -`,convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var Pnn=RVe(` -`),NVe=(s=>(s[s.aliasName=0]="aliasName",s[s.className=1]="className",s[s.enumName=2]="enumName",s[s.fieldName=3]="fieldName",s[s.interfaceName=4]="interfaceName",s[s.keyword=5]="keyword",s[s.lineBreak=6]="lineBreak",s[s.numericLiteral=7]="numericLiteral",s[s.stringLiteral=8]="stringLiteral",s[s.localName=9]="localName",s[s.methodName=10]="methodName",s[s.moduleName=11]="moduleName",s[s.operator=12]="operator",s[s.parameterName=13]="parameterName",s[s.propertyName=14]="propertyName",s[s.punctuation=15]="punctuation",s[s.space=16]="space",s[s.text=17]="text",s[s.typeParameterName=18]="typeParameterName",s[s.enumMemberName=19]="enumMemberName",s[s.functionName=20]="functionName",s[s.regularExpressionLiteral=21]="regularExpressionLiteral",s[s.link=22]="link",s[s.linkName=23]="linkName",s[s.linkText=24]="linkText",s))(NVe||{}),x5t=(s=>(s[s.None=0]="None",s[s.MayIncludeAutoImports=1]="MayIncludeAutoImports",s[s.IsImportStatementCompletion=2]="IsImportStatementCompletion",s[s.IsContinuation=4]="IsContinuation",s[s.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",s[s.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",s[s.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",s))(x5t||{}),G5t=(s=>(s.Comment="comment",s.Region="region",s.Code="code",s.Imports="imports",s))(G5t||{}),F5t=(s=>(s[s.JavaScript=0]="JavaScript",s[s.SourceMap=1]="SourceMap",s[s.Declaration=2]="Declaration",s))(F5t||{}),Z5t=(s=>(s[s.None=0]="None",s[s.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",s[s.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",s[s.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",s[s.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",s[s.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",s[s.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",s))(Z5t||{}),L5t=(s=>(s[s.Punctuation=0]="Punctuation",s[s.Keyword=1]="Keyword",s[s.Operator=2]="Operator",s[s.Comment=3]="Comment",s[s.Whitespace=4]="Whitespace",s[s.Identifier=5]="Identifier",s[s.NumberLiteral=6]="NumberLiteral",s[s.BigIntLiteral=7]="BigIntLiteral",s[s.StringLiteral=8]="StringLiteral",s[s.RegExpLiteral=9]="RegExpLiteral",s))(L5t||{}),V5t=(s=>(s.unknown="",s.warning="warning",s.keyword="keyword",s.scriptElement="script",s.moduleElement="module",s.classElement="class",s.localClassElement="local class",s.interfaceElement="interface",s.typeElement="type",s.enumElement="enum",s.enumMemberElement="enum member",s.variableElement="var",s.localVariableElement="local var",s.variableUsingElement="using",s.variableAwaitUsingElement="await using",s.functionElement="function",s.localFunctionElement="local function",s.memberFunctionElement="method",s.memberGetAccessorElement="getter",s.memberSetAccessorElement="setter",s.memberVariableElement="property",s.memberAccessorVariableElement="accessor",s.constructorImplementationElement="constructor",s.callSignatureElement="call",s.indexSignatureElement="index",s.constructSignatureElement="construct",s.parameterElement="parameter",s.typeParameterElement="type parameter",s.primitiveType="primitive type",s.label="label",s.alias="alias",s.constElement="const",s.letElement="let",s.directory="directory",s.externalModuleName="external module name",s.jsxAttribute="JSX attribute",s.string="string",s.link="link",s.linkName="link name",s.linkText="link text",s))(V5t||{}),P5t=(s=>(s.none="",s.publicMemberModifier="public",s.privateMemberModifier="private",s.protectedMemberModifier="protected",s.exportedModifier="export",s.ambientModifier="declare",s.staticModifier="static",s.abstractModifier="abstract",s.optionalModifier="optional",s.deprecatedModifier="deprecated",s.dtsModifier=".d.ts",s.tsModifier=".ts",s.tsxModifier=".tsx",s.jsModifier=".js",s.jsxModifier=".jsx",s.jsonModifier=".json",s.dmtsModifier=".d.mts",s.mtsModifier=".mts",s.mjsModifier=".mjs",s.dctsModifier=".d.cts",s.ctsModifier=".cts",s.cjsModifier=".cjs",s))(P5t||{}),W5t=(s=>(s.comment="comment",s.identifier="identifier",s.keyword="keyword",s.numericLiteral="number",s.bigintLiteral="bigint",s.operator="operator",s.stringLiteral="string",s.whiteSpace="whitespace",s.text="text",s.punctuation="punctuation",s.className="class name",s.enumName="enum name",s.interfaceName="interface name",s.moduleName="module name",s.typeParameterName="type parameter name",s.typeAliasName="type alias name",s.parameterName="parameter name",s.docCommentTagName="doc comment tag name",s.jsxOpenTagName="jsx open tag name",s.jsxCloseTagName="jsx close tag name",s.jsxSelfClosingTagName="jsx self closing tag name",s.jsxAttribute="jsx attribute",s.jsxText="jsx text",s.jsxAttributeStringLiteralValue="jsx attribute string literal value",s))(W5t||{}),Art=(s=>(s[s.comment=1]="comment",s[s.identifier=2]="identifier",s[s.keyword=3]="keyword",s[s.numericLiteral=4]="numericLiteral",s[s.operator=5]="operator",s[s.stringLiteral=6]="stringLiteral",s[s.regularExpressionLiteral=7]="regularExpressionLiteral",s[s.whiteSpace=8]="whiteSpace",s[s.text=9]="text",s[s.punctuation=10]="punctuation",s[s.className=11]="className",s[s.enumName=12]="enumName",s[s.interfaceName=13]="interfaceName",s[s.moduleName=14]="moduleName",s[s.typeParameterName=15]="typeParameterName",s[s.typeAliasName=16]="typeAliasName",s[s.parameterName=17]="parameterName",s[s.docCommentTagName=18]="docCommentTagName",s[s.jsxOpenTagName=19]="jsxOpenTagName",s[s.jsxCloseTagName=20]="jsxCloseTagName",s[s.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",s[s.jsxAttribute=22]="jsxAttribute",s[s.jsxText=23]="jsxText",s[s.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",s[s.bigintLiteral=25]="bigintLiteral",s))(Art||{}),A_=wb(99,!0),O5t=(s=>(s[s.None=0]="None",s[s.Value=1]="Value",s[s.Type=2]="Type",s[s.Namespace=4]="Namespace",s[s.All=7]="All",s))(O5t||{});function DVe(s){switch(s.kind){case 261:return wo(s)&&a1(s)?7:1;case 170:case 209:case 173:case 172:case 304:case 305:case 175:case 174:case 177:case 178:case 179:case 263:case 219:case 220:case 300:case 292:return 1;case 169:case 265:case 266:case 188:return 2;case 347:return s.name===void 0?3:2;case 307:case 264:return 3;case 268:return s_(s)||PF(s)===1?5:4;case 267:case 276:case 277:case 272:case 273:case 278:case 279:return 7;case 308:return 5}return 7}function DU(s){s=vrt(s);let c=s.parent;return s.kind===308?1:Cf(c)||R0(c)||ZF(c)||uy(c)||Vw(c)||km(c)&&s===c.name?7:kVe(s)?iTs(s):HT(s)?DVe(c):fC(s)&&ji(s,Hp(lde,Tx,O3))?7:cTs(s)?2:sTs(s)?4:Ds(c)?(pe.assert(ZB(c.parent)),2):EE(c)?3:1}function iTs(s){let c=s.kind===167?s:zi(s.parent)&&s.parent.right===s?s.parent:void 0;return c&&c.parent.kind===272?7:4}function kVe(s){if(!s.parent)return!1;for(;s.parent.kind===167;)s=s.parent;return d3(s.parent)&&s.parent.moduleReference===s}function sTs(s){return oTs(s)||aTs(s)}function oTs(s){let c=s,g=!0;if(c.parent.kind===167){for(;c.parent&&c.parent.kind===167;)c=c.parent;g=c.right===s}return c.parent.kind===184&&!g}function aTs(s){let c=s,g=!0;if(c.parent.kind===212){for(;c.parent&&c.parent.kind===212;)c=c.parent;g=c.name===s}if(!g&&c.parent.kind===234&&c.parent.parent.kind===299){let d=c.parent.parent.parent;return d.kind===264&&c.parent.parent.token===119||d.kind===265&&c.parent.parent.token===96}return!1}function cTs(s){switch(P7(s)&&(s=s.parent),s.kind){case 110:return!MT(s);case 198:return!0}switch(s.parent.kind){case 184:return!0;case 206:return!s.parent.isTypeOf;case 234:return ww(s.parent)}return!1}function drt(s,c=!1,g=!1){return i1e(s,Zl,frt,c,g)}function Ode(s,c=!1,g=!1){return i1e(s,f2,frt,c,g)}function prt(s,c=!1,g=!1){return i1e(s,av,frt,c,g)}function M5t(s,c=!1,g=!1){return i1e(s,MI,lTs,c,g)}function H5t(s,c=!1,g=!1){return i1e(s,So,frt,c,g)}function Y5t(s,c=!1,g=!1){return i1e(s,eI,uTs,c,g)}function frt(s){return s.expression}function lTs(s){return s.tag}function uTs(s){return s.tagName}function i1e(s,c,g,d,h){let _=d?gTs(s):xVe(s);return h&&(_=HI(_)),!!_&&!!_.parent&&c(_.parent)&&g(_.parent)===_}function xVe(s){return Wie(s)?s.parent:s}function gTs(s){return Wie(s)||Crt(s)?s.parent:s}function GVe(s,c){for(;s;){if(s.kind===257&&s.label.escapedText===c)return s.label;s=s.parent}}function s1e(s,c){return jo(s.expression)?s.expression.name.text===c:!1}function o1e(s){var c;return Ir(s)&&((c=Gs(s.parent,AY))==null?void 0:c.label)===s}function Irt(s){var c;return Ir(s)&&((c=Gs(s.parent,FP))==null?void 0:c.label)===s}function hrt(s){return Irt(s)||o1e(s)}function mrt(s){var c;return((c=Gs(s.parent,u3))==null?void 0:c.tagName)===s}function Q5t(s){var c;return((c=Gs(s.parent,zi))==null?void 0:c.right)===s}function Wie(s){var c;return((c=Gs(s.parent,jo))==null?void 0:c.name)===s}function Crt(s){var c;return((c=Gs(s.parent,Yg))==null?void 0:c.argumentExpression)===s}function _rt(s){var c;return((c=Gs(s.parent,xh))==null?void 0:c.name)===s}function yrt(s){var c;return Ir(s)&&((c=Gs(s.parent,bu))==null?void 0:c.name)===s}function FVe(s){switch(s.parent.kind){case 173:case 172:case 304:case 307:case 175:case 174:case 178:case 179:case 268:return Il(s.parent)===s;case 213:return s.parent.argumentExpression===s;case 168:return!0;case 202:return s.parent.parent.kind===200;default:return!1}}function X5t(s){return LL(s.parent.parent)&&_7(s.parent.parent)===s}function kU(s){for(iS(s)&&(s=s.parent.parent);;){if(s=s.parent,!s)return;switch(s.kind){case 308:case 175:case 174:case 263:case 219:case 178:case 179:case 264:case 265:case 267:case 268:return s}}}function pQ(s){switch(s.kind){case 308:return xm(s)?"module":"script";case 268:return"module";case 264:case 232:return"class";case 265:return"interface";case 266:case 339:case 347:return"type";case 267:return"enum";case 261:return c(s);case 209:return c(Rw(s));case 220:case 263:case 219:return"function";case 178:return"getter";case 179:return"setter";case 175:case 174:return"method";case 304:let{initializer:g}=s;return bu(g)?"method":"property";case 173:case 172:case 305:case 306:return"property";case 182:return"index";case 181:return"construct";case 180:return"call";case 177:case 176:return"constructor";case 169:return"type parameter";case 307:return"enum member";case 170:return Ga(s,31)?"property":"parameter";case 272:case 277:case 282:case 275:case 281:return"alias";case 227:let d=nI(s),{right:h}=s;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let S=pQ(h);return S===""?"const":S;case 3:return UA(h)?"method":"property";case 4:return"property";case 5:return UA(h)?"method":"property";case 6:return"local class";default:return""}case 80:return Vw(s.parent)?"alias":"";case 278:let _=pQ(s.expression);return _===""?"const":_;default:return""}function c(g){return rI(g)?"const":rS(g)?"let":"var"}}function Oie(s){switch(s.kind){case 110:return!0;case 80:return Xye(s)&&s.parent.kind===170;default:return!1}}var ATs=/^\/\/\/\s*=g}function Mde(s,c,g){return LVe(s.pos,s.end,c,g)}function ZVe(s,c,g,d){return LVe(s.getStart(c),s.end,g,d)}function LVe(s,c,g,d){let h=Math.max(s,g),_=Math.min(c,d);return h<_}function brt(s,c,g){return pe.assert(s.pos<=c),cd.kind===c)}function VVe(s){let c=de(s.parent.getChildren(),g=>Cie(g)&&cy(g,s));return pe.assert(!c||k(c.getChildren(),s)),c}function Wnn(s){return s.kind===90}function dTs(s){return s.kind===86}function pTs(s){return s.kind===100}function fTs(s){if(rh(s))return s.name;if(pm(s)){let c=s.modifiers&&de(s.modifiers,Wnn);if(c)return c}if(vd(s)){let c=de(s.getChildren(),dTs);if(c)return c}}function ITs(s){if(rh(s))return s.name;if(ih(s)){let c=de(s.modifiers,Wnn);if(c)return c}if(UA(s)){let c=de(s.getChildren(),pTs);if(c)return c}}function hTs(s){let c;return ji(s,g=>(uc(g)&&(c=g),!zi(g.parent)&&!uc(g.parent)&&!Bx(g.parent))),c}function PVe(s,c){if(s.flags&16777216)return;let g=tPe(s,c);if(g)return g;let d=hTs(s);return d&&c.getTypeAtLocation(d)}function mTs(s,c){if(!c)switch(s.kind){case 264:case 232:return fTs(s);case 263:case 219:return ITs(s);case 177:return s}if(rh(s))return s.name}function Onn(s,c){if(s.importClause){if(s.importClause.name&&s.importClause.namedBindings)return;if(s.importClause.name)return s.importClause.name;if(s.importClause.namedBindings){if(yN(s.importClause.namedBindings)){let g=Ps(s.importClause.namedBindings.elements);return g?g.name:void 0}else if(Zx(s.importClause.namedBindings))return s.importClause.namedBindings.name}}if(!c)return s.moduleSpecifier}function Mnn(s,c){if(s.exportClause){if(mv(s.exportClause))return Ps(s.exportClause.elements)?s.exportClause.elements[0].name:void 0;if(tk(s.exportClause))return s.exportClause.name}if(!c)return s.moduleSpecifier}function CTs(s){if(s.types.length===1)return s.types[0].expression}function Hnn(s,c){let{parent:g}=s;if(Ig(s)&&(c||s.kind!==90)?LB(g)&&k(g.modifiers,s):s.kind===86?pm(g)||vd(s):s.kind===100?ih(g)||UA(s):s.kind===120?g_(g):s.kind===94?V3(g):s.kind===156?FB(g):s.kind===145||s.kind===144?xh(g):s.kind===102?km(g):s.kind===139?Bg(g):s.kind===153&&Dg(g)){let d=mTs(g,c);if(d)return d}if((s.kind===115||s.kind===87||s.kind===121)&&u_(g)&&g.declarations.length===1){let d=g.declarations[0];if(Ir(d.name))return d.name}if(s.kind===156){if(Vw(g)&&g.isTypeOnly){let d=Onn(g.parent,c);if(d)return d}if(Gh(g)&&g.isTypeOnly){let d=Mnn(g,c);if(d)return d}}if(s.kind===130){if(uy(g)&&g.propertyName||R0(g)&&g.propertyName||Zx(g)||tk(g))return g.name;if(Gh(g)&&g.exportClause&&tk(g.exportClause))return g.exportClause.name}if(s.kind===102&&Mf(g)){let d=Onn(g,c);if(d)return d}if(s.kind===95){if(Gh(g)){let d=Mnn(g,c);if(d)return d}if(Cf(g))return HI(g.expression)}if(s.kind===149&&ZF(g))return g.expression;if(s.kind===161&&(Mf(g)||Gh(g))&&g.moduleSpecifier)return g.moduleSpecifier;if((s.kind===96||s.kind===119)&&h1(g)&&g.token===s.kind){let d=CTs(g);if(d)return d}if(s.kind===96){if(Ds(g)&&g.constraint&&nh(g.constraint))return g.constraint.typeName;if(d2(g)&&nh(g.extendsType))return g.extendsType.typeName}if(s.kind===140&&jT(g))return g.typeParameter.name;if(s.kind===103&&Ds(g)&&GB(g.parent))return g.name;if(s.kind===143&&xB(g)&&g.operator===143&&nh(g.type))return g.type.typeName;if(s.kind===148&&xB(g)&&g.operator===148&&kF(g.type)&&nh(g.type.elementType))return g.type.elementType.typeName;if(!c){if((s.kind===105&&f2(g)||s.kind===116&&qT(g)||s.kind===114&&CN(g)||s.kind===135&&I1(g)||s.kind===127&&Hd(g)||s.kind===91&&GF(g))&&g.expression)return HI(g.expression);if((s.kind===103||s.kind===104)&&fo(g)&&g.operatorToken===s)return HI(g.right);if(s.kind===130&&Yd(g)&&nh(g.type))return g.type.typeName;if(s.kind===103&&KLe(g)||s.kind===165&&iEe(g))return HI(g.expression)}return s}function vrt(s){return Hnn(s,!1)}function WVe(s){return Hnn(s,!0)}function Lb(s,c){return Hie(s,c,g=>Tw(g)||v0(g.kind)||p(g))}function Hie(s,c,g){return Ynn(s,c,!1,g,!1)}function Jc(s,c){return Ynn(s,c,!0,void 0,!1)}function Ynn(s,c,g,d,h){let _=s,S;e:for(;;){let T=_.getChildren(s),W=Sg(T,c,(V,M)=>M,(V,M)=>{let ee=T[V].getEnd();if(eec?1:R(T[V],re,ee)?T[V-1]&&R(T[V-1])?1:0:d&&re===c&&T[V-1]&&T[V-1].getEnd()===c&&R(T[V-1])?1:-1});if(S)return S;if(W>=0&&T[W]){_=T[W];continue e}return _}function R(T,W,V){if(V??(V=T.getEnd()),Vc))return!1;if(cg.getStart(s)&&c(_.pos<=s.pos&&_.end>s.end||_.pos===s.end)&&tMt(_,g)?d(_):void 0)}}function Gm(s,c,g,d){let h=_(g||c);return pe.assert(!(h&&OVe(h))),h;function _(S){if(Qnn(S)&&S.kind!==1)return S;let R=S.getChildren(c),T=Sg(R,s,(V,M)=>M,(V,M)=>s=R[V-1].end?0:1:-1);if(T>=0&&R[T]){let V=R[T];if(s=s||!tMt(V,c)||OVe(V)){let re=z5t(R,T,c,S.kind);return re?!d&&i7(re)&&re.getChildren(c).length?_(re):j5t(re,c):void 0}else return _(V)}pe.assert(g!==void 0||S.kind===308||S.kind===1||i7(S));let W=z5t(R,R.length,c,S.kind);return W&&j5t(W,c)}}function Qnn(s){return BL(s)&&!OVe(s)}function j5t(s,c){if(Qnn(s))return s;let g=s.getChildren(c);if(g.length===0)return s;let d=z5t(g,g.length,c,s.kind);return d&&j5t(d,c)}function z5t(s,c,g,d){for(let h=c-1;h>=0;h--){let _=s[h];if(OVe(_))h===0&&(d===12||d===286)&&pe.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(tMt(s[h],g))return s[h]}}function Zz(s,c,g=Gm(c,s)){if(g&&Ere(g)){let d=g.getStart(s),h=g.getEnd();if(dg.getStart(s)}function $5t(s,c){let g=Jc(s,c);return!!(KL(g)||g.kind===19&&pie(g.parent)&&bN(g.parent.parent)||g.kind===30&&eI(g.parent)&&bN(g.parent.parent))}function MVe(s,c){function g(d){for(;d;)if(d.kind>=286&&d.kind<=295||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===285){if(c>d.getStart(s))return!0;d=d.parent}else return!1;return!1}return g(Jc(s,c))}function HVe(s,c,g){let d=Vi(s.kind),h=Vi(c),_=s.getFullStart(),S=g.text.lastIndexOf(h,_);if(S===-1)return;if(g.text.lastIndexOf(d,_-1)!!_.typeParameters&&_.typeParameters.length>=c)}function Trt(s,c){if(c.text.lastIndexOf("<",s?s.pos:c.text.length)===-1)return;let g=s,d=0,h=0;for(;g;){switch(g.kind){case 30:if(g=Gm(g.getFullStart(),c),g&&g.kind===29&&(g=Gm(g.getFullStart(),c)),!g||!Ir(g))return;if(!d)return HT(g)?void 0:{called:g,nTypeArguments:h};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(g=HVe(g,19,c),!g)return;break;case 22:if(g=HVe(g,21,c),!g)return;break;case 24:if(g=HVe(g,23,c),!g)return;break;case 28:h++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(uc(g))break;return}g=Gm(g.getFullStart(),c)}}function $L(s,c,g){return Im.getRangeOfEnclosingComment(s,c,void 0,g)}function eMt(s,c){let g=Jc(s,c);return!!ji(g,tR)}function tMt(s,c){return s.kind===1?!!s.jsDoc:s.getWidth(c)!==0}function Yde(s,c=0){let g=[],d=jh(s)?ad(s)&~c:0;return d&2&&g.push("private"),d&4&&g.push("protected"),d&1&&g.push("public"),(d&256||fl(s))&&g.push("static"),d&64&&g.push("abstract"),d&32&&g.push("export"),d&65536&&g.push("deprecated"),s.flags&33554432&&g.push("declare"),s.kind===278&&g.push("export"),g.length>0?g.join(","):""}function rMt(s){if(s.kind===184||s.kind===214)return s.typeArguments;if(bu(s)||s.kind===264||s.kind===265)return s.typeParameters}function YVe(s){return s===2||s===3}function Rrt(s){return!!(s===11||s===14||LD(s))}function Xnn(s,c,g){return!!(c.flags&4)&&s.isEmptyAnonymousObjectType(g)}function nMt(s){if(!s.isIntersection())return!1;let{types:c,checker:g}=s;return c.length===2&&(Xnn(g,c[0],c[1])||Xnn(g,c[1],c[0]))}function u1e(s,c,g){return LD(s.kind)&&s.getStart(g){let g=rd(c);return!s[g]&&(s[g]=!0)}}function Lz(s){return s.getText(0,s.getLength())}function A1e(s,c){let g="";for(let d=0;d!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function aMt(s){return s.getSourceFiles().some(c=>!c.isDeclarationFile&&!s.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function Lrt(s){return!!s.module||Mg(s)>=2||!!s.noEmit}function z3(s,c){return{fileExists:g=>s.fileExists(g),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:$i(c,c.readFile),useCaseSensitiveFileNames:$i(c,c.useCaseSensitiveFileNames)||s.useCaseSensitiveFileNames,getSymlinkCache:$i(c,c.getSymlinkCache)||s.getSymlinkCache,getModuleSpecifierCache:$i(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var g;return(g=s.getModuleResolutionCache())==null?void 0:g.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:$i(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:s.redirectTargetsMap,getRedirectFromSourceFile:g=>s.getRedirectFromSourceFile(g),isSourceOfProjectReferenceRedirect:g=>s.isSourceOfProjectReferenceRedirect(g),getNearestAncestorDirectoryWithPackageJson:$i(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>s.getFileIncludeReasons(),getCommonSourceDirectory:()=>s.getCommonSourceDirectory(),getDefaultResolutionModeForFile:g=>s.getDefaultResolutionModeForFile(g),getModeForResolutionAtIndex:(g,d)=>s.getModeForResolutionAtIndex(g,d)}}function Vrt(s,c){return{...z3(s,c),getCommonSourceDirectory:()=>s.getCommonSourceDirectory()}}function UVe(s){return s===2||s>=3&&s<=99||s===100}function QP(s,c,g,d,h){return me.createImportDeclaration(void 0,s||c?me.createImportClause(h?156:void 0,s,c&&c.length?me.createNamedImports(c):void 0):void 0,typeof g=="string"?Xde(g,d):g,void 0)}function Xde(s,c){return me.createStringLiteral(s,c===0)}var cMt=(s=>(s[s.Single=0]="Single",s[s.Double=1]="Double",s))(cMt||{});function Prt(s,c){return sne(s,c)?1:0}function _1(s,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let g=aN(s)&&s.imports&&de(s.imports,d=>Zg(d)&&!sp(d.parent));return g?Prt(g,s):1}}function Wrt(s){switch(s){case 0:return"'";case 1:return'"';default:return pe.assertNever(s)}}function Ort(s){let c=KVe(s);return c===void 0?void 0:Bc(c)}function KVe(s){return s.escapedName!=="default"?s.escapedName:X(s.declarations,c=>{let g=Il(c);return g&&g.kind===80?g.escapedText:void 0})}function jVe(s){return mA(s)&&(ZF(s.parent)||Mf(s.parent)||SN(s.parent)||ay(s.parent,!1)&&s.parent.arguments[0]===s||Up(s.parent)&&s.parent.arguments[0]===s)}function p1e(s){return hg(s)&&Km(s.parent)&&Ir(s.name)&&!s.propertyName}function zVe(s,c){let g=s.getTypeAtLocation(c.parent);return g&&s.getPropertyOfType(g,c.name.text)}function f1e(s,c,g){if(s)for(;s.parent;){if(ll(s.parent)||!yTs(g,s.parent,c))return s;s=s.parent}}function yTs(s,c,g){return ho(s,c.getStart(g))&&c.getEnd()<=Rs(s)}function Qie(s,c){return LB(s)?de(s.modifiers,g=>g.kind===c):void 0}function Mrt(s,c,g,d,h){var _;let R=(Ki(g)?g[0]:g).kind===244?nne:IP,T=Me(c.statements,R),{comparer:W,isSorted:V}=i5.getOrganizeImportsStringComparerWithDetection(T,h),M=Ki(g)?bo(g,(ee,re)=>i5.compareImportsOrRequireStatements(ee,re,W)):[g];if(!T?.length){if(aN(c))s.insertNodesAtTopOfFile(c,M,d);else for(let ee of M)s.insertStatementsInNewFile(c.fileName,[ee],(_=Dd(ee))==null?void 0:_.getSourceFile());return}if(pe.assert(aN(c)),T&&V)for(let ee of M){let re=i5.getImportDeclarationInsertionIndex(T,ee,W);if(re===0){let ge=T[0]===c.statements[0]?{leadingTriviaOption:xo.LeadingTriviaOption.Exclude}:{};s.insertNodeBefore(c,T[0],ee,!1,ge)}else{let ge=T[re-1];s.insertNodeAfter(c,ge,ee)}}else{let ee=li(T);ee?s.insertNodesAfter(c,ee,M):s.insertNodesAtTopOfFile(c,M,d)}}function Hrt(s,c){return pe.assert(s.isTypeOnly),Ma(s.getChildAt(0,c),Unn)}function Xie(s,c){return!!s&&!!c&&s.start===c.start&&s.length===c.length}function Yrt(s,c,g){return(g?MA:Mp)(s.fileName,c.fileName)&&Xie(s.textSpan,c.textSpan)}function Qrt(s){return(c,g)=>Yrt(c,g,s)}function Xrt(s,c){if(s){for(let g=0;gSi(g)?!0:hg(g)||Km(g)||p2(g)?!1:"quit")}var uMt=new Map;function bTs(s){return s=s||EY,uMt.has(s)||uMt.set(s,ETs(s)),uMt.get(s)}function ETs(s){let c=s*10,g,d,h,_;M();let S=ee=>T(ee,17);return{displayParts:()=>{let ee=g.length&&g[g.length-1].text;return _>c&&ee&&ee!=="..."&&(dc(ee.charCodeAt(ee.length-1))||g.push(SE(" ",16)),g.push(SE("...",15))),g},writeKeyword:ee=>T(ee,5),writeOperator:ee=>T(ee,12),writePunctuation:ee=>T(ee,15),writeTrailingSemicolon:ee=>T(ee,15),writeSpace:ee=>T(ee,16),writeStringLiteral:ee=>T(ee,8),writeParameter:ee=>T(ee,13),writeProperty:ee=>T(ee,14),writeLiteral:ee=>T(ee,8),writeSymbol:W,writeLine:V,write:S,writeComment:S,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:il,getIndent:()=>h,increaseIndent:()=>{h++},decreaseIndent:()=>{h--},clear:M};function R(){if(!(_>c)&&d){let ee=iAe(h);ee&&(_+=ee.length,g.push(SE(ee,16))),d=!1}}function T(ee,re){_>c||(R(),_+=ee.length,g.push(SE(ee,re)))}function W(ee,re){_>c||(R(),_+=ee.length,g.push(STs(ee,re)))}function V(){_>c||(_+=1,g.push(Jie()),d=!0)}function M(){g=[],d=!0,h=0,_=0}}function STs(s,c){return SE(s,g(c));function g(d){let h=d.flags;return h&3?Urt(d)?13:9:h&4||h&32768||h&65536?14:h&8?19:h&16?20:h&32?1:h&64?4:h&384?2:h&1536?11:h&8192?10:h&262144?18:h&524288||h&2097152?0:17}}function SE(s,c){return{text:s,kind:NVe[c]}}function BI(){return SE(" ",16)}function y1(s){return SE(Vi(s),5)}function k0(s){return SE(Vi(s),15)}function Ude(s){return SE(Vi(s),12)}function gMt(s){return SE(s,13)}function AMt(s){return SE(s,14)}function Krt(s){let c=Ta(s);return c===void 0?gS(s):y1(c)}function gS(s){return SE(s,17)}function dMt(s){return SE(s,0)}function pMt(s){return SE(s,18)}function fMt(s){return SE(s,24)}function vTs(s,c){return{text:s,kind:NVe[23],target:{fileName:ms(c).fileName,textSpan:Oy(c)}}}function Knn(s){return SE(s,22)}function IMt(s,c){var g;let d=VPt(s)?"link":PPt(s)?"linkcode":"linkplain",h=[Knn(`{@${d} `)];if(!s.name)s.text&&h.push(fMt(s.text));else{let _=c?.getSymbolAtLocation(s.name),S=_&&c?qrt(_,c):void 0,R=wTs(s.text),T=xp(s.name)+s.text.slice(0,R),W=BTs(s.text.slice(R)),V=S?.valueDeclaration||((g=S?.declarations)==null?void 0:g[0]);if(V)h.push(vTs(T,V)),W&&h.push(fMt(W));else{let M=R===0||s.text.charCodeAt(R)===124&&T.charCodeAt(T.length-1)!==32?" ":"";h.push(fMt(T+M+W))}}return h.push(Knn("}")),h}function BTs(s){let c=0;if(s.charCodeAt(c++)===124){for(;c"&&g--,d++,!g)return d}return 0}var TTs=` -`;function OF(s,c){var g;return c?.newLineCharacter||((g=s.getNewLine)==null?void 0:g.call(s))||TTs}function Jie(){return SE(` -`,6)}function XP(s,c){let g=bTs(c);try{return s(g),g.displayParts()}finally{g.clear()}}function I1e(s,c,g,d=0,h,_,S){return XP(R=>{s.writeType(c,g,d|1024|16384,R,h,_,S)},h)}function Kde(s,c,g,d,h=0){return XP(_=>{s.writeSymbol(c,g,d,h|8,_)})}function jrt(s,c,g,d=0,h,_,S){return d|=25632,XP(R=>{s.writeSignature(c,g,d,void 0,R,h,_,S)},h)}function hMt(s){return!!s.parent&&eS(s.parent)&&s.parent.propertyName===s}function zrt(s,c){return xAe(s,c.getScriptKind&&c.getScriptKind(s))}function qrt(s,c){let g=s;for(;RTs(g)||bw(g)&&g.links.target;)bw(g)&&g.links.target?g=g.links.target:g=FC(g,c);return g}function RTs(s){return(s.flags&2097152)!==0}function mMt(s,c){return kg(FC(s,c))}function CMt(s,c){for(;dc(s.charCodeAt(c));)c+=1;return c}function $Ve(s,c){for(;c>-1&&Iu(s.charCodeAt(c));)c-=1;return c+1}function xU(s,c){let g=s.getSourceFile(),d=g.text;NTs(s,d)?Uie(s,c,g):m1e(s,c,g),jde(s,c,g)}function NTs(s,c){let g=s.getFullStart(),d=s.getStart();for(let h=g;h=0),_}function Uie(s,c,g,d,h){GD(g.text,s.pos,_Mt(c,g,d,h,JT))}function jde(s,c,g,d,h){dF(g.text,s.end,_Mt(c,g,d,h,Iz))}function m1e(s,c,g,d,h){dF(g.text,s.pos,_Mt(c,g,d,h,JT))}function _Mt(s,c,g,d,h){return(_,S,R,T)=>{R===3?(_+=2,S-=2):_+=2,h(s,g||R,c.text.slice(_,S),d!==void 0?d:T)}}function DTs(s,c){if(Ac(s,c))return 0;let g=s.indexOf(" "+c);return g===-1&&(g=s.indexOf("."+c)),g===-1&&(g=s.indexOf('"'+c)),g===-1?-1:g+1}function ePe(s){return fo(s)&&s.operatorToken.kind===28||og(s)||(Yd(s)||Qg(s))&&og(s.expression)}function tPe(s,c,g){let d=gv(s.parent);switch(d.kind){case 215:return c.getContextualType(d,g);case 227:{let{left:h,operatorToken:_,right:S}=d;return rPe(_.kind)?c.getTypeAtLocation(s===S?h:S):c.getContextualType(s,g)}case 297:return ent(d,c);default:return c.getContextualType(s,g)}}function zde(s,c,g){let d=_1(s,c),h=JSON.stringify(g);return d===0?`'${l2(h).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:h}function rPe(s){switch(s){case 37:case 35:case 38:case 36:return!0;default:return!1}}function yMt(s){switch(s.kind){case 11:case 15:case 229:case 216:return!0;default:return!1}}function $rt(s){return!!s.getStringIndexType()||!!s.getNumberIndexType()}function ent(s,c){return c.getTypeAtLocation(s.parent.parent.expression)}var tnt="anonymous function";function qde(s,c,g,d){let h=g.getTypeChecker(),_=!0,S=()=>_=!1,R=h.typeToTypeNode(s,c,1,8,{trackSymbol:(T,W,V)=>(_=_&&h.isSymbolAccessible(T,W,V,!1).accessibility===0,!_),reportInaccessibleThisError:S,reportPrivateInBaseOfClassExpression:S,reportInaccessibleUniqueSymbolError:S,moduleResolverHost:Vrt(g,d)});return _?R:void 0}function bMt(s){return s===180||s===181||s===182||s===172||s===174}function jnn(s){return s===263||s===177||s===175||s===178||s===179}function znn(s){return s===268}function EMt(s){return s===244||s===245||s===247||s===252||s===253||s===254||s===258||s===260||s===173||s===266||s===273||s===272||s===279||s===271||s===278}var kTs=Hp(bMt,jnn,znn,EMt);function xTs(s,c){let g=s.getLastToken(c);if(g&&g.kind===27)return!1;if(bMt(s.kind)){if(g&&g.kind===28)return!1}else if(znn(s.kind)){let R=Ei(s.getChildren(c));if(R&&_N(R))return!1}else if(jnn(s.kind)){let R=Ei(s.getChildren(c));if(R&&mP(R))return!1}else if(!EMt(s.kind))return!1;if(s.kind===247)return!0;let d=ji(s,R=>!R.parent),h=fQ(s,d,c);if(!h||h.kind===20)return!0;let _=c.getLineAndCharacterOfPosition(s.getEnd()).line,S=c.getLineAndCharacterOfPosition(h.getStart(c)).line;return _!==S}function nPe(s,c,g){let d=ji(c,h=>h.end!==s?"quit":kTs(h.kind));return!!d&&xTs(d,g)}function C1e(s){let c=0,g=0,d=5;return Lu(s,function h(_){if(EMt(_.kind)){let S=_.getLastToken(s);S?.kind===27?c++:g++}else if(bMt(_.kind)){let S=_.getLastToken(s);if(S?.kind===27)c++;else if(S&&S.kind!==28){let R=Ra(s,S.getStart(s)).line,T=Ra(s,rs(s,S.end).start).line;R!==T&&g++}}return c+g>=d?!0:Lu(_,h)}),c===0&&g<=1?!0:c/g>1/d}function iPe(s,c){return SMt(s,s.getDirectories,c)||[]}function rnt(s,c,g,d,h){return SMt(s,s.readDirectory,c,g,d,h)||E}function Kie(s,c){return SMt(s,s.fileExists,c)}function sPe(s,c){return oPe(()=>f1(c,s))||!1}function oPe(s){try{return s()}catch{return}}function SMt(s,c,...g){return oPe(()=>c&&c.apply(s,g))}function nnt(s,c){let g=[];return vN(c,s,d=>{let h=Ro(d,"package.json");Kie(c,h)&&g.push(h)}),g}function vMt(s,c){let g;return vN(c,s,d=>{if(d==="node_modules"||(g=itt(d,h=>Kie(c,h),"package.json"),g))return!0}),g}function GTs(s,c){if(!c.fileExists)return[];let g=[];return vN(c,Mo(s),d=>{let h=Ro(d,"package.json");if(c.fileExists(h)){let _=int(h,c);_&&g.push(_)}}),g}function int(s,c){if(!c.readFile)return;let g=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(s)||"",h=nU(d),_={};if(h)for(let T of g){let W=h[T];if(!W)continue;let V=new Map;for(let M in W)V.set(M,W[M]);_[T]=V}let S=[[1,_.dependencies],[2,_.devDependencies],[8,_.optionalDependencies],[4,_.peerDependencies]];return{..._,parseable:!!h,fileName:s,get:R,has(T,W){return!!R(T,W)}};function R(T,W=15){for(let[V,M]of S)if(M&&W&V){let ee=M.get(T);if(ee!==void 0)return ee}}}function jie(s,c,g){let d=(g.getPackageJsonsVisibleToFile&&g.getPackageJsonsVisibleToFile(s.fileName)||GTs(s.fileName,g)).filter(ge=>ge.parseable),h,_,S;return{allowsImportingAmbientModule:T,getSourceFileInfo:W,allowsImportingSpecifier:V};function R(ge){let Ie=re(ge);for(let _e of d)if(_e.has(Ie)||_e.has(G9e(Ie)))return!0;return!1}function T(ge,Ie){if(!d.length||!ge.valueDeclaration)return!0;if(!_)_=new Map;else{let Ze=_.get(ge);if(Ze!==void 0)return Ze}let _e=l2(ge.getName());if(M(_e))return _.set(ge,!0),!0;let Ee=ge.valueDeclaration.getSourceFile(),Ne=ee(Ee.fileName,Ie);if(typeof Ne>"u")return _.set(ge,!0),!0;let Te=R(Ne)||R(_e);return _.set(ge,Te),Te}function W(ge,Ie){if(!d.length)return{importable:!0,packageName:void 0};if(!S)S=new Map;else{let Te=S.get(ge);if(Te!==void 0)return Te}let _e=ee(ge.fileName,Ie);if(!_e){let Te={importable:!0,packageName:_e};return S.set(ge,Te),Te}let Ne={importable:R(_e),packageName:_e};return S.set(ge,Ne),Ne}function V(ge){return!d.length||M(ge)||Ip(ge)||Xp(ge)?!0:R(ge)}function M(ge){return!!(aN(s)&&n0(s)&&dU.has(ge)&&(h===void 0&&(h=aPe(s)),h))}function ee(ge,Ie){let _e=LP(ge);if(_e){let Ne=_e.findPackageLocator(s.fileName),Te=_e.findPackageLocator(ge);if(!(Ne&&Te))return}else if(!ge.includes("node_modules"))return;let Ee=WF.getNodeModulesPackageName(g.getCompilationSettings(),s,ge,Ie,c);if(Ee&&!Ip(Ee)&&!Xp(Ee))return re(Ee)}function re(ge){let Ie=Np(bde(ge)).slice(1);return Ac(Ie[0],"@")?`${Ie[0]}/${Ie[1]}`:Ie[0]}}function aPe(s){return jt(s.imports,({text:c})=>dU.has(c))}function _1e(s){return k(Np(s),"node_modules")}function qnn(s){return s.file!==void 0&&s.start!==void 0&&s.length!==void 0}function BMt(s,c){let g=Oy(s),d=Sg(c,g,Fl,yn);if(d>=0){let h=c[d];return pe.assertEqual(h.file,s.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),Ma(h,qnn)}}function wMt(s,c){var g;let d=Sg(c,s.start,S=>S.start,Zt);for(d<0&&(d=~d);((g=c[d-1])==null?void 0:g.start)===s.start;)d--;let h=[],_=Rs(s);for(;;){let S=Gs(c[d],qnn);if(!S||S.start>_)break;Nd(s,S)&&h.push(S),d++}return h}function Vz({startPosition:s,endPosition:c}){return wA(s,c===void 0?s:c)}function snt(s,c){let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":un(h)&&Xie(c,Oy(h,s)))}function ont(s,c,g=Fl){return s?Ki(s)?g(At(s,c)):c(s,0):void 0}function ant(s){return Ki(s)?ma(s):s}function cPe(s,c,g){return s.escapedName==="export="||s.escapedName==="default"?cnt(s)||y1e(FTs(s),c,!!g):s.name}function cnt(s){return X(s.declarations,c=>{var g,d,h;if(Cf(c))return(g=Gs(HI(c.expression),Ir))==null?void 0:g.text;if(R0(c)&&c.symbol.flags===2097152)return(d=Gs(c.propertyName,Ir))==null?void 0:d.text;let _=(h=Gs(Il(c),Ir))==null?void 0:h.text;if(_)return _;if(s.parent&&!WD(s.parent))return s.parent.getName()})}function FTs(s){var c;return pe.checkDefined(s.parent,`Symbol parent was undefined. Flags: ${pe.formatSymbolFlags(s.flags)}. Declarations: ${(c=s.declarations)==null?void 0:c.map(g=>{let d=pe.formatSyntaxKind(g.kind),h=wo(g),{expression:_}=g;return(h?"[JS]":"")+d+(_?` (expression: ${pe.formatSyntaxKind(_.kind)})`:"")}).join(", ")}.`)}function y1e(s,c,g){return b1e(s0(l2(s.name)),c,g)}function b1e(s,c,g){let d=gp(aa(s0(s),"/index")),h="",_=!0,S=d.charCodeAt(0);bd(S,c)?(h+=String.fromCharCode(S),g&&(h=h.toUpperCase())):_=!1;for(let R=1;Rs.length)return!1;for(let h=0;h(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.Namespace=2]="Namespace",s[s.CommonJS=3]="CommonJS",s))(RMt||{}),NMt=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s[s.UMD=3]="UMD",s[s.Module=4]="Module",s))(NMt||{});function Ant(s){let c=1,g=dl(),d=new Map,h=new Map,_,S={isUsableByFile:re=>re===_,isEmpty:()=>!g.size,clear:()=>{g.clear(),d.clear(),_=void 0},add:(re,ge,Ie,_e,Ee,Ne,Te,Ze)=>{re!==_&&(S.clear(),_=re);let We;if(Ee){let Lt=MAe(Ee.fileName);if(Lt){let{topLevelNodeModulesIndex:Ke,topLevelPackageNameIndex:Pt,packageRootIndex:_r}=Lt;if(We=NEe(bde(Ee.fileName.substring(Pt+1,_r))),Ac(re,Ee.path.substring(0,Ke))){let Gt=h.get(We),nt=Ee.fileName.substring(0,Pt+1);if(Gt){let Dt=Gt.indexOf(Vx);Ke>Dt&&h.set(We,nt)}else h.set(We,nt)}}}let $e=Ne===1&&W7(ge)||ge,Ye=Ne===0||WD($e)?Bc(Ie):LTs($e,Ze,void 0),Tt=typeof Ye=="string"?Ye:Ye[0],ot=typeof Ye=="string"?void 0:Ye[1],Qe=l2(_e.name),mt=c++,ht=FC(ge,Ze),_t=ge.flags&33554432?void 0:ge,Rt=_e.flags&33554432?void 0:_e;(!_t||!Rt)&&d.set(mt,[ge,_e]),g.add(T(Tt,ge,Xr(Qe)?void 0:Qe,Ze),{id:mt,symbolTableKey:Ie,symbolName:Tt,capitalizedSymbolName:ot,moduleName:Qe,moduleFile:Ee,moduleFileName:Ee?.fileName,packageName:We,exportKind:Ne,targetFlags:ht.flags,isFromPackageJson:Te,symbol:_t,moduleSymbol:Rt})},get:(re,ge)=>{if(re!==_)return;let Ie=g.get(ge);return Ie?.map(R)},search:(re,ge,Ie,_e)=>{if(re===_)return Dh(g,(Ee,Ne)=>{let{symbolName:Te,ambientModuleName:Ze}=W(Ne),We=ge&&Ee[0].capitalizedSymbolName||Te;if(Ie(We,Ee[0].targetFlags)){let $e=Ee.map(R).filter((Ye,Tt)=>ee(Ye,Ee[Tt].packageName));if($e.length){let Ye=_e($e,We,!!Ze,Ne);if(Ye!==void 0)return Ye}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ge,Ie)=>V(re)&&V(ge)?!1:_&&_!==ge.path||Ie&&aPe(re)!==aPe(ge)||!Sc(re.moduleAugmentations,ge.moduleAugmentations)||!M(re,ge)?(S.clear(),!0):(_=ge.path,!1)};return pe.isDebugging&&Object.defineProperty(S,"__cache",{value:g}),S;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ge,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee,moduleFileName:Ne}=re,[Te,Ze]=d.get(ge)||E;if(Te&&Ze)return{symbol:Te,moduleSymbol:Ze,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee};let We=(Ee?s.getPackageJsonAutoImportProvider():s.getCurrentProgram()).getTypeChecker(),Ue=re.moduleSymbol||Ze||pe.checkDefined(re.moduleFile?We.getMergedSymbol(re.moduleFile.symbol):We.tryFindAmbientModule(re.moduleName)),$e=re.symbol||Te||pe.checkDefined(Ie===2?We.resolveExternalModuleSymbol(Ue):We.tryGetMemberInModuleExportsAndProperties(Bc(re.symbolTableKey),Ue),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${Ue.name}`);return d.set(ge,[$e,Ue]),{symbol:$e,moduleSymbol:Ue,moduleFileName:Ne,exportKind:Ie,targetFlags:_e,isFromPackageJson:Ee}}function T(re,ge,Ie,_e){let Ee=Ie||"";return`${re.length} ${kg(FC(ge,_e))} ${re} ${Ee}`}function W(re){let ge=re.indexOf(" "),Ie=re.indexOf(" ",ge+1),_e=parseInt(re.substring(0,ge),10),Ee=re.substring(Ie+1),Ne=Ee.substring(0,_e),Te=Ee.substring(_e+1);return{symbolName:Ne,ambientModuleName:Te===""?void 0:Te}}function V(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function M(re,ge){if(!Sc(re.ambientModuleNames,ge.ambientModuleNames))return!1;let Ie=-1,_e=-1;for(let Ee of ge.ambientModuleNames){let Ne=Te=>Qre(Te)&&Te.name.text===Ee;if(Ie=Se(re.statements,Ne,Ie+1),_e=Se(ge.statements,Ne,_e+1),re.statements[Ie]!==ge.statements[_e])return!1}return!0}function ee(re,ge){if(!ge||!re.moduleFileName)return!0;let Ie=s.getGlobalTypingsCacheLocation();if(Ie&&Ac(re.moduleFileName,Ie))return!0;let _e=h.get(ge);return!_e||Ac(re.moduleFileName,_e)}}function dnt(s,c,g,d,h,_,S,R){var T;if(!g){let re,ge=l2(d.name);return dU.has(ge)&&(re=uPe(c,s))!==void 0?re===Ac(ge,"node:"):!_||_.allowsImportingAmbientModule(d,S)||DMt(c,ge)}if(pe.assertIsDefined(g),c===g)return!1;let W=R?.get(c.path,g.path,h,{});if(W?.isBlockedByPackageJsonDependencies!==void 0)return!W.isBlockedByPackageJsonDependencies||!!W.packageName&&DMt(c,W.packageName);let V=JD(S),M=(T=S.getGlobalTypingsCacheLocation)==null?void 0:T.call(S),ee=!!WF.forEachFileNameOfModule(c.fileName,g.fileName,S,!1,re=>{let ge=s.getSourceFile(re);return(ge===g||!ge)&&ZTs(c.fileName,re,V,M,S)});if(_){let re=ee?_.getSourceFileInfo(g,S):void 0;return R?.setBlockedByPackageJsonDependencies(c.path,g.path,h,{},re?.packageName,!re?.importable),!!re?.importable||ee&&!!re?.packageName&&DMt(c,re.packageName)}return ee}function DMt(s,c){return s.imports&&s.imports.some(g=>g.text===c||g.text.startsWith(c+"/"))}function ZTs(s,c,g,d,h){if(LP(s))return xSs(s,c);let _=vN(h,c,R=>gp(R)==="node_modules"?R:void 0),S=_&&Mo(g(_));return S===void 0||Ac(g(s),S)||!!d&&Ac(g(d),S)}function pnt(s,c,g,d,h){var _,S;let R=y3(c),T=g.autoImportFileExcludePatterns&&$nn(g,R);ein(s.getTypeChecker(),s.getSourceFiles(),T,c,(V,M)=>h(V,M,s,!1));let W=d&&((_=c.getPackageJsonAutoImportProvider)==null?void 0:_.call(c));if(W){let V=Fg(),M=s.getTypeChecker();ein(W.getTypeChecker(),W.getSourceFiles(),T,c,(ee,re)=>{(re&&!s.getSourceFile(re.fileName)||!re&&!M.resolveName(ee.name,void 0,1536,!1))&&h(ee,re,W,!0)}),(S=c.log)==null||S.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${Fg()-V}`)}}function $nn(s,c){return Xt(s.autoImportFileExcludePatterns,g=>{let d=DAe(g,"","exclude");return d?zD(d,c):void 0})}function ein(s,c,g,d,h){var _;let S=g&&tin(g,d);for(let R of s.getAmbientModules())!R.name.includes("*")&&!(g&&((_=R.declarations)!=null&&_.every(T=>S(T.getSourceFile()))))&&h(R,void 0);for(let R of c)vl(R)&&!S?.(R)&&h(s.getMergedSymbol(R.symbol),R)}function tin(s,c){var g;let d=(g=c.getSymlinkCache)==null?void 0:g.call(c).getSymlinkedDirectoriesByRealpath();return({fileName:h,path:_})=>{if(s.some(S=>S.test(h)))return!0;if(d?.size&&WP(h)){let S=Mo(h);return vN(c,Mo(_),R=>{let T=d.get(hp(R));if(T)return T.some(W=>s.some(V=>V.test(h.replace(S,W))));S=Mo(S)})??!1}return!1}}function kMt(s,c){return c.autoImportFileExcludePatterns?tin($nn(c,y3(s)),s):()=>!1}function S1e(s,c,g,d,h){var _,S,R,T,W;let V=Fg();(_=c.getPackageJsonAutoImportProvider)==null||_.call(c);let M=((S=c.getCachedExportInfoMap)==null?void 0:S.call(c))||Ant({getCurrentProgram:()=>g,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(M.isUsableByFile(s.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),M;(T=c.log)==null||T.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let ee=0;try{pnt(g,c,d,!0,(re,ge,Ie,_e)=>{++ee%100===0&&h?.throwIfCancellationRequested();let Ee=new Set,Ne=Ie.getTypeChecker(),Te=pPe(re,Ne);Te&&rin(Te.symbol,Ne)&&M.add(s.path,Te.symbol,Te.exportKind===1?"default":"export=",re,ge,Te.exportKind,_e,Ne),Ne.forEachExportAndPropertyOfModule(re,(Ze,We)=>{Ze!==Te?.symbol&&rin(Ze,Ne)&&Zy(Ee,We)&&M.add(s.path,Ze,We,re,ge,0,_e,Ne)})})}catch(re){throw M.clear(),re}return(W=c.log)==null||W.call(c,`getExportInfoMap: done in ${Fg()-V} ms`),M}function pPe(s,c){let g=c.resolveExternalModuleSymbol(s);if(g!==s){let h=c.tryGetMemberInModuleExports("default",g);return h?{symbol:h,exportKind:1}:{symbol:g,exportKind:2}}let d=c.tryGetMemberInModuleExports("default",s);if(d)return{symbol:d,exportKind:1}}function rin(s,c){return!c.isUndefinedSymbol(s)&&!c.isUnknownSymbol(s)&&!k7(s)&&!EZe(s)}function LTs(s,c,g){let d;return fPe(s,c,g,(h,_)=>(d=_?[h,_]:h,!0)),pe.checkDefined(d)}function fPe(s,c,g,d){let h,_=s,S=new Set;for(;_;){let R=cnt(_);if(R){let T=d(R);if(T)return T}if(_.escapedName!=="default"&&_.escapedName!=="export="){let T=d(_.name);if(T)return T}if(h=Ft(h,_),!Zy(S,_))break;_=_.flags&2097152?c.getImmediateAliasedSymbol(_):void 0}for(let R of h??E)if(R.parent&&WD(R.parent)){let T=d(y1e(R.parent,g,!1),y1e(R.parent,g,!0));if(T)return T}}function nin(){let s=wb(99,!1);function c(d,h,_){return OTs(g(d,h,_),d)}function g(d,h,_){let S=0,R=0,T=[],{prefix:W,pushTemplate:V}=YTs(h);d=W+d;let M=W.length;V&&T.push(16),s.setText(d);let ee=0,re=[],ge=0;do{S=s.scan(),zJ(S)||(Ie(),R=S);let _e=s.getTokenEnd();if(WTs(s.getTokenStart(),_e,M,JTs(S),re),_e>=d.length){let Ee=PTs(s,S,li(T));Ee!==void 0&&(ee=Ee)}}while(S!==1);function Ie(){switch(S){case 44:case 69:!VTs[R]&&s.reScanSlashToken()===14&&(S=14);break;case 30:R===80&&ge++;break;case 32:ge>0&&ge--;break;case 133:case 154:case 150:case 136:case 155:ge>0&&!_&&(S=80);break;case 16:T.push(S);break;case 19:T.length>0&&T.push(S);break;case 20:if(T.length>0){let _e=li(T);_e===16?(S=s.reScanTemplateToken(!1),S===18?T.pop():pe.assertEqual(S,17,"Should have been a template middle.")):(pe.assertEqual(_e,19,"Should have been an open brace"),T.pop())}break;default:if(!v0(S))break;(R===25||v0(R)&&v0(S)&&!HTs(R,S))&&(S=80)}}return{endOfLineState:ee,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:g}}var VTs=Vs([80,11,9,10,14,110,46,47,22,24,20,112,97],s=>s,()=>!0);function PTs(s,c,g){switch(c){case 11:{if(!s.isUnterminated())return;let d=s.getTokenText(),h=d.length-1,_=0;for(;d.charCodeAt(h-_)===92;)_++;return _&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return s.isUnterminated()?1:void 0;default:if(LD(c)){if(!s.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return pe.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return g===16?6:void 0}}function WTs(s,c,g,d,h){if(d===8)return;s===0&&g>0&&(s+=g);let _=c-s;_>0&&h.push(s-g,_,d)}function OTs(s,c){let g=[],d=s.spans,h=0;for(let S=0;S=0){let V=R-h;V>0&&g.push({length:V,classification:4})}g.push({length:T,classification:MTs(W)}),h=R+T}let _=c.length-h;return _>0&&g.push({length:_,classification:4}),{entries:g,finalLexState:s.endOfLineState}}function MTs(s){switch(s){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function HTs(s,c){if(!Nrt(s))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function YTs(s){switch(s){case 3:return{prefix:`"\\ -`};case 2:return{prefix:`'\\ -`};case 1:return{prefix:`/* -`};case 4:return{prefix:"`\n"};case 5:return{prefix:`} -`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return pe.assertNever(s)}}function QTs(s){switch(s){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}function XTs(s){switch(s){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function JTs(s){if(v0(s))return 3;if(QTs(s)||XTs(s))return 5;if(s>=19&&s<=79)return 10;switch(s){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 80:default:return LD(s)?6:2}}function xMt(s,c,g,d,h){return oin(fnt(s,c,g,d,h))}function iin(s,c){switch(c){case 268:case 264:case 265:case 263:case 232:case 219:case 220:s.throwIfCancellationRequested()}}function fnt(s,c,g,d,h){let _=[];return g.forEachChild(function R(T){if(!(!T||!q2(h,T.pos,T.getFullWidth()))){if(iin(c,T.kind),Ir(T)&&!sf(T)&&d.has(T.escapedText)){let W=s.getSymbolAtLocation(T),V=W&&sin(W,DU(T),s);V&&S(T.getStart(g),T.getEnd(),V)}T.forEachChild(R)}}),{spans:_,endOfLineState:0};function S(R,T,W){let V=T-R;pe.assert(V>0,`Classification had non-positive length of ${V}`),_.push(R),_.push(V),_.push(W)}}function sin(s,c,g){let d=s.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&UTs(s)?14:void 0:d&2097152?sin(g.getAliasedSymbol(s),c,g):c&2?d&64?13:d&262144?15:void 0:void 0}function UTs(s){return jt(s.declarations,c=>xh(c)&&PF(c)===1)}function KTs(s){switch(s){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function oin(s){pe.assert(s.spans.length%3===0);let c=s.spans,g=[];for(let d=0;d])*)(\/>)?)?/m,Ye=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/g,Tt=c.text.substr(We,Ue),ot=$e.exec(Tt);if(!ot||!ot[3]||!(ot[3]in e1))return!1;let Qe=We;M(Qe,ot[1].length),Qe+=ot[1].length,T(Qe,ot[2].length,10),Qe+=ot[2].length,T(Qe,ot[3].length,21),Qe+=ot[3].length;let mt=ot[4],ht=Qe;for(;;){let Rt=Ye.exec(mt);if(!Rt)break;let Lt=Qe+Rt.index+Rt[1].length;Lt>ht&&(M(ht,Lt-ht),ht=Lt),T(ht,Rt[2].length,22),ht+=Rt[2].length,Rt[3].length&&(M(ht,Rt[3].length),ht+=Rt[3].length),T(ht,Rt[4].length,5),ht+=Rt[4].length,Rt[5].length&&(M(ht,Rt[5].length),ht+=Rt[5].length),T(ht,Rt[6].length,24),ht+=Rt[6].length}Qe+=ot[4].length,Qe>ht&&M(ht,Qe-ht),ot[5]&&(T(Qe,ot[5].length,10),Qe+=ot[5].length);let _t=We+Ue;return Qe<_t&&M(Qe,_t-Qe),!0}function ge(We){for(let Ue of We.getChildren())Ze(Ue)}function Ie(We,Ue,$e){let Ye;for(Ye=Ue;Ye<$e&&!Cl(We.charCodeAt(Ye));Ye++);for(T(Ue,Ye-Ue,1),S.resetTokenState(Ye);S.getTokenEnd()<$e;)_e()}function _e(){let We=S.getTokenEnd(),Ue=S.scan(),$e=S.getTokenEnd(),Ye=Te(Ue);Ye&&T(We,$e-We,Ye)}function Ee(We){if(tR(We)||sf(We))return!0;let Ue=Ne(We);if(!BL(We)&&We.kind!==12&&Ue===void 0)return!1;let $e=We.kind===12?We.pos:W(We),Ye=We.end-$e;if(pe.assert(Ye>=0),Ye>0){let Tt=Ue||Te(We.kind,We);Tt&&T($e,Ye,Tt)}return!0}function Ne(We){switch(We.parent&&We.parent.kind){case 287:if(We.parent.tagName===We)return 19;break;case 288:if(We.parent.tagName===We)return 20;break;case 286:if(We.parent.tagName===We)return 21;break;case 292:if(We.parent.name===We)return 22;break}}function Te(We,Ue){if(v0(We))return 3;if((We===30||We===32)&&Ue&&rMt(Ue.parent))return 10;if(Nye(We)){if(Ue){let $e=Ue.parent;if(We===64&&($e.kind===261||$e.kind===173||$e.kind===170||$e.kind===292)||$e.kind===227||$e.kind===225||$e.kind===226||$e.kind===228)return 5}return 10}else{if(We===9)return 4;if(We===10)return 25;if(We===11)return Ue&&Ue.parent.kind===292?24:6;if(We===14)return 6;if(LD(We))return 6;if(We===12)return 23;if(We===80){if(Ue){switch(Ue.parent.kind){case 264:return Ue.parent.name===Ue?11:void 0;case 169:return Ue.parent.name===Ue?15:void 0;case 265:return Ue.parent.name===Ue?13:void 0;case 267:return Ue.parent.name===Ue?12:void 0;case 268:return Ue.parent.name===Ue?14:void 0;case 170:return Ue.parent.name===Ue?vF(Ue)?3:17:void 0}if(s2(Ue.parent))return 3}return 2}}}function Ze(We){if(We&&IE(d,h,We.pos,We.getFullWidth())){iin(s,We.kind);for(let Ue of We.getChildren(c))Ee(Ue)||Ze(Ue)}}}var IPe;(s=>{function c(Qe,mt,ht,_t,Rt){let Lt=Lb(ht,_t);if(Lt.parent&&($T(Lt.parent)&&Lt.parent.tagName===Lt||rQ(Lt.parent))){let{openingElement:Ke,closingElement:Pt}=Lt.parent.parent,_r=[Ke,Pt].map(({tagName:Gt})=>g(Gt,ht));return[{fileName:ht.fileName,highlightSpans:_r}]}return d(_t,Lt,Qe,mt,Rt)||h(Lt,ht)}s.getDocumentHighlights=c;function g(Qe,mt){return{fileName:mt.fileName,textSpan:Oy(Qe,mt),kind:"none"}}function d(Qe,mt,ht,_t,Rt){let Lt=new Set(Rt.map(Gt=>Gt.fileName)),Ke=Kp.getReferenceEntriesForNode(Qe,mt,ht,Rt,_t,void 0,Lt);if(!Ke)return;let Pt=Ju(Ke.map(Kp.toHighlightSpan),Gt=>Gt.fileName,Gt=>Gt.span),_r=_d(ht.useCaseSensitiveFileNames());return Do(lr(Pt.entries(),([Gt,nt])=>{if(!Lt.has(Gt)){if(!ht.redirectTargetsMap.has(Ou(Gt,ht.getCurrentDirectory(),_r)))return;let Dt=ht.getSourceFile(Gt);Gt=de(Rt,ur=>!!ur.redirectInfo&&ur.redirectInfo.redirectTarget===Dt).fileName,pe.assert(Lt.has(Gt))}return{fileName:Gt,highlightSpans:nt}}))}function h(Qe,mt){let ht=_(Qe,mt);return ht&&[{fileName:mt.fileName,highlightSpans:ht}]}function _(Qe,mt){switch(Qe.kind){case 101:case 93:return Z3(Qe.parent)?Ye(Qe.parent,mt):void 0;case 107:return _t(Qe.parent,I2,Ze);case 111:return _t(Qe.parent,A$e,Te);case 113:case 85:case 98:let Lt=Qe.kind===85?Qe.parent.parent:Qe.parent;return _t(Lt,mU,Ne);case 109:return _t(Qe.parent,ode,Ee);case 84:case 90:return cde(Qe.parent)||fie(Qe.parent)?_t(Qe.parent.parent.parent,ode,Ee):void 0;case 83:case 88:return _t(Qe.parent,AY,_e);case 99:case 117:case 92:return _t(Qe.parent,Ke=>VT(Ke,!0),Ie);case 137:return ht(Tc,[137]);case 139:case 153:return ht(yB,[139,153]);case 135:return _t(Qe.parent,I1,We);case 134:return Rt(We(Qe));case 127:return Rt(Ue(Qe));case 103:case 147:return;default:return VD(Qe.kind)&&(jh(Qe.parent)||Ch(Qe.parent))?Rt(ee(Qe.kind,Qe.parent)):void 0}function ht(Lt,Ke){return _t(Qe.parent,Lt,Pt=>{var _r;return Xt((_r=Gs(Pt,mE))==null?void 0:_r.symbol.declarations,Gt=>Lt(Gt)?de(Gt.getChildren(mt),nt=>k(Ke,nt.kind)):void 0)})}function _t(Lt,Ke,Pt){return Ke(Lt)?Rt(Pt(Lt,mt)):void 0}function Rt(Lt){return Lt&&Lt.map(Ke=>g(Ke,mt))}}function S(Qe){return A$e(Qe)?[Qe]:mU(Qe)?Nn(Qe.catchClause?S(Qe.catchClause):Qe.tryBlock&&S(Qe.tryBlock),Qe.finallyBlock&&S(Qe.finallyBlock)):bu(Qe)?void 0:W(Qe,S)}function R(Qe){let mt=Qe;for(;mt.parent;){let ht=mt.parent;if(mP(ht)||ht.kind===308)return ht;if(mU(ht)&&ht.tryBlock===mt&&ht.catchClause)return mt;mt=ht}}function T(Qe){return AY(Qe)?[Qe]:bu(Qe)?void 0:W(Qe,T)}function W(Qe,mt){let ht=[];return Qe.forEachChild(_t=>{let Rt=mt(_t);Rt!==void 0&&ht.push(...cc(Rt))}),ht}function V(Qe,mt){let ht=M(mt);return!!ht&&ht===Qe}function M(Qe){return ji(Qe,mt=>{switch(mt.kind){case 256:if(Qe.kind===252)return!1;case 249:case 250:case 251:case 248:case 247:return!Qe.label||ot(mt,Qe.label.escapedText);default:return bu(mt)&&"quit"}})}function ee(Qe,mt){return Xt(re(mt,HY(Qe)),ht=>Qie(ht,Qe))}function re(Qe,mt){let ht=Qe.parent;switch(ht.kind){case 269:case 308:case 242:case 297:case 298:return mt&64&&pm(Qe)?[...Qe.members,Qe]:ht.statements;case 177:case 175:case 263:return[...ht.parameters,...xa(ht.parent)?ht.parent.members:[]];case 264:case 232:case 265:case 188:let _t=ht.members;if(mt&15){let Rt=de(ht.members,Tc);if(Rt)return[..._t,...Rt.parameters]}else if(mt&64)return[..._t,ht];return _t;default:return}}function ge(Qe,mt,...ht){return mt&&k(ht,mt.kind)?(Qe.push(mt),!0):!1}function Ie(Qe){let mt=[];if(ge(mt,Qe.getFirstToken(),99,117,92)&&Qe.kind===247){let ht=Qe.getChildren();for(let _t=ht.length-1;_t>=0&&!ge(mt,ht[_t],117);_t--);}return F(T(Qe.statement),ht=>{V(Qe,ht)&&ge(mt,ht.getFirstToken(),83,88)}),mt}function _e(Qe){let mt=M(Qe);if(mt)switch(mt.kind){case 249:case 250:case 251:case 247:case 248:return Ie(mt);case 256:return Ee(mt)}}function Ee(Qe){let mt=[];return ge(mt,Qe.getFirstToken(),109),F(Qe.caseBlock.clauses,ht=>{ge(mt,ht.getFirstToken(),84,90),F(T(ht),_t=>{V(Qe,_t)&&ge(mt,_t.getFirstToken(),83)})}),mt}function Ne(Qe,mt){let ht=[];if(ge(ht,Qe.getFirstToken(),113),Qe.catchClause&&ge(ht,Qe.catchClause.getFirstToken(),85),Qe.finallyBlock){let _t=qd(Qe,98,mt);ge(ht,_t,98)}return ht}function Te(Qe,mt){let ht=R(Qe);if(!ht)return;let _t=[];return F(S(ht),Rt=>{_t.push(qd(Rt,111,mt))}),mP(ht)&&yF(ht,Rt=>{_t.push(qd(Rt,107,mt))}),_t}function Ze(Qe,mt){let ht=A1(Qe);if(!ht)return;let _t=[];return yF(Ma(ht.body,$u),Rt=>{_t.push(qd(Rt,107,mt))}),F(S(ht.body),Rt=>{_t.push(qd(Rt,111,mt))}),_t}function We(Qe){let mt=A1(Qe);if(!mt)return;let ht=[];return mt.modifiers&&mt.modifiers.forEach(_t=>{ge(ht,_t,134)}),Lu(mt,_t=>{$e(_t,Rt=>{I1(Rt)&&ge(ht,Rt.getFirstToken(),135)})}),ht}function Ue(Qe){let mt=A1(Qe);if(!mt)return;let ht=[];return Lu(mt,_t=>{$e(_t,Rt=>{Hd(Rt)&&ge(ht,Rt.getFirstToken(),127)})}),ht}function $e(Qe,mt){mt(Qe),!bu(Qe)&&!xa(Qe)&&!g_(Qe)&&!xh(Qe)&&!FB(Qe)&&!uc(Qe)&&Lu(Qe,ht=>$e(ht,mt))}function Ye(Qe,mt){let ht=Tt(Qe,mt),_t=[];for(let Rt=0;Rt=Lt.end;_r--)if(!Iu(mt.text.charCodeAt(_r))){Pt=!1;break}if(Pt){_t.push({fileName:mt.fileName,textSpan:wA(Lt.getStart(),Ke.end),kind:"reference"}),Rt++;continue}}_t.push(g(ht[Rt],mt))}return _t}function Tt(Qe,mt){let ht=[];for(;Z3(Qe.parent)&&Qe.parent.elseStatement===Qe;)Qe=Qe.parent;for(;;){let _t=Qe.getChildren(mt);ge(ht,_t[0],101);for(let Rt=_t.length-1;Rt>=0&&!ge(ht,_t[Rt],93);Rt--);if(!Qe.elseStatement||!Z3(Qe.elseStatement))break;Qe=Qe.elseStatement}return ht}function ot(Qe,mt){return!!ji(Qe.parent,ht=>FP(ht)?ht.label.escapedText===mt:"quit")}})(IPe||(IPe={}));function v1e(s){return!!s.sourceFile}function FMt(s,c,g){return hnt(s,c,g)}function hnt(s,c="",g,d){let h=new Map,_=_d(!!s);function S(){let _e=Do(h.keys()).filter(Ee=>Ee&&Ee.charAt(0)==="_").map(Ee=>{let Ne=h.get(Ee),Te=[];return Ne.forEach((Ze,We)=>{v1e(Ze)?Te.push({name:We,scriptKind:Ze.sourceFile.scriptKind,refCount:Ze.languageServiceRefCount}):Ze.forEach((Ue,$e)=>Te.push({name:We,scriptKind:$e,refCount:Ue.languageServiceRefCount}))}),Te.sort((Ze,We)=>We.refCount-Ze.refCount),{bucket:Ee,sourceFiles:Te}});return JSON.stringify(_e,void 0,2)}function R(_e){return typeof _e.getCompilationSettings=="function"?_e.getCompilationSettings():_e}function T(_e,Ee,Ne,Te,Ze,We){let Ue=Ou(_e,c,_),$e=mnt(R(Ee));return W(_e,Ue,Ee,$e,Ne,Te,Ze,We)}function W(_e,Ee,Ne,Te,Ze,We,Ue,$e){return re(_e,Ee,Ne,Te,Ze,We,!0,Ue,$e)}function V(_e,Ee,Ne,Te,Ze,We){let Ue=Ou(_e,c,_),$e=mnt(R(Ee));return M(_e,Ue,Ee,$e,Ne,Te,Ze,We)}function M(_e,Ee,Ne,Te,Ze,We,Ue,$e){return re(_e,Ee,R(Ne),Te,Ze,We,!1,Ue,$e)}function ee(_e,Ee){let Ne=v1e(_e)?_e:_e.get(pe.checkDefined(Ee,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return pe.assert(Ee===void 0||!Ne||Ne.sourceFile.scriptKind===Ee,`Script kind should match provided ScriptKind:${Ee} and sourceFile.scriptKind: ${Ne?.sourceFile.scriptKind}, !entry: ${!Ne}`),Ne}function re(_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye){var Tt,ot,Qe,mt;$e=xAe(_e,$e);let ht=R(Ne),_t=Ne===ht?void 0:Ne,Rt=$e===6?100:Mg(ht),Lt=typeof Ye=="object"?Ye:{languageVersion:Rt,impliedNodeFormat:_t&&JEe(Ee,(mt=(Qe=(ot=(Tt=_t.getCompilerHost)==null?void 0:Tt.call(_t))==null?void 0:ot.getModuleResolutionCache)==null?void 0:Qe.call(ot))==null?void 0:mt.getPackageJsonInfoCache(),_t,ht),setExternalModuleIndicator:Lne(ht),jsDocParsingMode:g};Lt.languageVersion=Rt,pe.assertEqual(g,Lt.jsDocParsingMode);let Ke=h.size,Pt=ZMt(Te,Lt.impliedNodeFormat),_r=cr(h,Pt,()=>new Map);if(ki){h.size>Ke&&ki.instant(ki.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:ht.configFilePath,key:Pt});let tr=!PC(Ee)&&Dh(h,(ur,Gr)=>Gr!==Pt&&ur.has(Ee)&&Gr);tr&&ki.instant(ki.Phase.Session,"documentRegistryBucketOverlap",{path:Ee,key1:tr,key2:Pt})}let Gt=_r.get(Ee),nt=Gt&&ee(Gt,$e);if(!nt&&d){let tr=d.getDocument(Pt,Ee);tr&&tr.scriptKind===$e&&tr.text===Lz(Ze)&&(pe.assert(Ue),nt={sourceFile:tr,languageServiceRefCount:0},Dt())}if(nt)nt.sourceFile.version!==We&&(nt.sourceFile=znt(nt.sourceFile,Ze,We,Ze.getChangeRange(nt.sourceFile.scriptSnapshot)),d&&d.setDocument(Pt,Ee,nt.sourceFile)),Ue&&nt.languageServiceRefCount++;else{let tr=kPe(_e,Ze,Lt,We,!1,$e);d&&d.setDocument(Pt,Ee,tr),nt={sourceFile:tr,languageServiceRefCount:1},Dt()}return pe.assert(nt.languageServiceRefCount!==0),nt.sourceFile;function Dt(){if(!Gt)_r.set(Ee,nt);else if(v1e(Gt)){let tr=new Map;tr.set(Gt.sourceFile.scriptKind,Gt),tr.set($e,nt),_r.set(Ee,tr)}else Gt.set($e,nt)}}function ge(_e,Ee,Ne,Te){let Ze=Ou(_e,c,_),We=mnt(Ee);return Ie(Ze,We,Ne,Te)}function Ie(_e,Ee,Ne,Te){let Ze=pe.checkDefined(h.get(ZMt(Ee,Te))),We=Ze.get(_e),Ue=ee(We,Ne);Ue.languageServiceRefCount--,pe.assert(Ue.languageServiceRefCount>=0),Ue.languageServiceRefCount===0&&(v1e(We)?Ze.delete(_e):(We.delete(Ne),We.size===1&&Ze.set(_e,ae(We.values(),Fl))))}return{acquireDocument:T,acquireDocumentWithKey:W,updateDocument:V,updateDocumentWithKey:M,releaseDocument:ge,releaseDocumentWithKey:Ie,getKeyForCompilationSettings:mnt,getDocumentRegistryBucketKeyWithMode:ZMt,reportStats:S,getBuckets:()=>h}}function mnt(s){return oet(s,H$e)}function ZMt(s,c){return c?`${s}|${c}`:s}function LMt(s,c,g,d,h,_,S){let R=y3(d),T=_d(R),W=Cnt(c,g,T,S),V=Cnt(g,c,T,S);return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},M=>{zTs(s,M,W,c,g,d.getCurrentDirectory(),R),qTs(s,M,W,V,d,T)})}function Cnt(s,c,g,d){let h=g(s);return S=>{let R=d&&d.tryGetSourcePosition({fileName:S,pos:0}),T=_(R?R.fileName:S);return R?T===void 0?void 0:jTs(R.fileName,T,S,g):T};function _(S){if(g(S)===h)return c;let R=NAe(S,h,g);return R===void 0?void 0:c+"/"+R}}function jTs(s,c,g,d){let h=i1(s,c,d);return VMt(Mo(g),h)}function zTs(s,c,g,d,h,_,S){let{configFile:R}=s.getCompilerOptions();if(!R)return;let T=Mo(R.fileName),W=m7(R);if(!W)return;PMt(W,(re,ge)=>{switch(ge){case"files":case"include":case"exclude":{if(V(re)||ge!=="include"||!OI(re.initializer))return;let _e=Xt(re.initializer.elements,Ne=>Zg(Ne)?Ne.text:void 0);if(_e.length===0)return;let Ee=kAe(T,[],_e,S,_);zD(pe.checkDefined(Ee.includeFilePattern),S).test(d)&&!zD(pe.checkDefined(Ee.includeFilePattern),S).test(h)&&c.insertNodeAfter(R,Ei(re.initializer.elements),me.createStringLiteral(ee(h)));return}case"compilerOptions":PMt(re.initializer,(Ie,_e)=>{let Ee=X$e(_e);pe.assert(Ee?.type!=="listOrElement"),Ee&&(Ee.isFilePath||Ee.type==="list"&&Ee.element.isFilePath)?V(Ie):_e==="paths"&&PMt(Ie.initializer,Ne=>{if(OI(Ne.initializer))for(let Te of Ne.initializer.elements)M(Te)})});return}});function V(re){let ge=OI(re.initializer)?re.initializer.elements:[re.initializer],Ie=!1;for(let _e of ge)Ie=M(_e)||Ie;return Ie}function M(re){if(!Zg(re))return!1;let ge=VMt(T,re.text),Ie=g(ge);return Ie!==void 0?(c.replaceRangeWithText(R,cin(re,R),ee(Ie)),!0):!1}function ee(re){return mp(T,re,!S)}}function qTs(s,c,g,d,h,_){let S=s.getSourceFiles();for(let R of S){let T=g(R.fileName),W=T??R.fileName,V=Mo(W),M=d(R.fileName),ee=M||R.fileName,re=Mo(ee),ge=T!==void 0||M!==void 0;tRs(R,c,Ie=>{if(!Ip(Ie))return;let _e=VMt(re,Ie),Ee=g(_e);return Ee===void 0?void 0:Am(mp(V,Ee,_))},Ie=>{let _e=s.getTypeChecker().getSymbolAtLocation(Ie);if(_e?.declarations&&_e.declarations.some(Ne=>s_(Ne)))return;let Ee=M!==void 0?ain(Ie,BU(Ie.text,ee,s.getCompilerOptions(),h),g,S):eRs(_e,Ie,R,s,h,g);return Ee!==void 0&&(Ee.updated||ge&&Ip(Ie.text))?WF.updateModuleSpecifier(s.getCompilerOptions(),R,W,Ee.newFileName,z3(s,h),Ie.text):void 0})}}function $Ts(s,c){return iu(Ro(s,c))}function VMt(s,c){return Am($Ts(s,c))}function eRs(s,c,g,d,h,_){if(s){let S=de(s.declarations,ll).fileName,R=_(S);return R===void 0?{newFileName:S,updated:!1}:{newFileName:R,updated:!0}}else{let S=d.getModeForUsageLocation(g,c),R=h.resolveModuleNameLiterals||!h.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,g):h.getResolvedModuleWithFailedLookupLocationsFromCache&&h.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,g.fileName,S);return ain(c,R,_,d.getSourceFiles())}}function ain(s,c,g,d){if(!c)return;if(c.resolvedModule){let T=R(c.resolvedModule.resolvedFileName);if(T)return T}let h=F(c.failedLookupLocations,_)||Ip(s.text)&&F(c.failedLookupLocations,S);if(h)return h;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function _(T){let W=g(T);return W&&de(d,V=>V.fileName===W)?S(T):void 0}function S(T){return di(T,"/package.json")?void 0:R(T)}function R(T){let W=g(T);return W&&{newFileName:W,updated:!0}}}function tRs(s,c,g,d){for(let h of s.referencedFiles||E){let _=g(h.fileName);_!==void 0&&_!==s.text.slice(h.pos,h.end)&&c.replaceRangeWithText(s,h,_)}for(let h of s.imports){let _=d(h);_!==void 0&&_!==h.text&&c.replaceRangeWithText(s,cin(h,s),_)}}function cin(s,c){return Gy(s.getStart(c)+1,s.end-1)}function PMt(s,c){if(og(s))for(let g of s.properties)fm(g)&&Zg(g.name)&&c(g,g.name.text)}var _nt=(s=>(s[s.exact=0]="exact",s[s.prefix=1]="prefix",s[s.substring=2]="substring",s[s.camelCase=3]="camelCase",s))(_nt||{});function $de(s,c){return{kind:s,isCaseSensitive:c}}function WMt(s){let c=new Map,g=s.trim().split(".").map(d=>sRs(d.trim()));if(g.length===1&&g[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>$de(2,!0),getFullMatch:()=>$de(2,!0),patternContainsDots:!1};if(!g.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,h)=>rRs(d,h,g,c),getMatchForLastSegmentOfPattern:d=>OMt(d,Ei(g),c),patternContainsDots:g.length>1}}function rRs(s,c,g,d){if(!OMt(c,Ei(g),d)||g.length-1>s.length)return;let _;for(let S=g.length-2,R=s.length-1;S>=0;S-=1,R-=1)_=gin(_,OMt(s[R],g[S],d));return _}function lin(s,c){let g=c.get(s);return g||c.set(s,g=JMt(s)),g}function uin(s,c,g){let d=oRs(s,c.textLowerCase);if(d===0)return $de(c.text.length===s.length?0:1,Ac(s,c.text));if(c.isLowerCase){if(d===-1)return;let h=lin(s,g);for(let _ of h)if(MMt(s,_,c.text,!0))return $de(2,MMt(s,_,c.text,!1));if(c.text.length0)return $de(2,!0);if(c.characterSpans.length>0){let h=lin(s,g),_=Ain(s,h,c,!1)?!0:Ain(s,h,c,!0)?!1:void 0;if(_!==void 0)return $de(3,_)}}}function OMt(s,c,g){if(ynt(c.totalTextChunk.text,_=>_!==32&&_!==42)){let _=uin(s,c.totalTextChunk,g);if(_)return _}let d=c.subWordTextChunks,h;for(let _ of d)h=gin(h,uin(s,_,g));return h}function gin(s,c){return oa([s,c],nRs)}function nRs(s,c){return s===void 0?1:c===void 0?-1:Zt(s.kind,c.kind)||Ml(!s.isCaseSensitive,!c.isCaseSensitive)}function MMt(s,c,g,d,h={start:0,length:g.length}){return h.length<=c.length&&Iin(0,h.length,_=>iRs(g.charCodeAt(h.start+_),s.charCodeAt(c.start+_),d))}function iRs(s,c,g){return g?HMt(s)===HMt(c):s===c}function Ain(s,c,g,d){let h=g.characterSpans,_=0,S=0,R,T;for(;;){if(S===h.length)return!0;if(_===c.length)return!1;let W=c[_],V=!1;for(;S=65&&s<=90)return!0;if(s<127||!ft(s,99))return!1;let c=String.fromCharCode(s);return c===c.toUpperCase()}function din(s){if(s>=97&&s<=122)return!0;if(s<127||!ft(s,99))return!1;let c=String.fromCharCode(s);return c===c.toLowerCase()}function oRs(s,c){let g=s.length-c.length;for(let d=0;d<=g;d++)if(ynt(c,(h,_)=>HMt(s.charCodeAt(_+d))===h))return d;return-1}function HMt(s){return s>=65&&s<=90?97+(s-65):s<127?s:String.fromCharCode(s).toLowerCase().charCodeAt(0)}function YMt(s){return s>=48&&s<=57}function aRs(s){return qie(s)||din(s)||YMt(s)||s===95||s===36}function cRs(s){let c=[],g=0,d=0;for(let h=0;h0&&(c.push(QMt(s.substr(g,d))),d=0)}return d>0&&c.push(QMt(s.substr(g,d))),c}function QMt(s){let c=s.toLowerCase();return{text:s,textLowerCase:c,isLowerCase:s===c,characterSpans:XMt(s)}}function XMt(s){return pin(s,!1)}function JMt(s){return pin(s,!0)}function pin(s,c){let g=[],d=0;for(let h=1;hUMt(d)&&d!==95,c,g)}function lRs(s,c,g){return c!==g&&c+1c(s.charCodeAt(h),h))}function hin(s,c=!0,g=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},h=[],_,S,R,T=0,W=!1;function V(){return S=R,R=A_.scan(),R===19?T++:R===20&&T--,R}function M(){let We=A_.getTokenValue(),Ue=A_.getTokenStart();return{fileName:We,pos:Ue,end:Ue+We.length}}function ee(){_||(_=[]),_.push({ref:M(),depth:T})}function re(){h.push(M()),ge()}function ge(){T===0&&(W=!0)}function Ie(){let We=A_.getToken();return We===138?(We=V(),We===144&&(We=V(),We===11&&ee()),!0):!1}function _e(){if(S===25)return!1;let We=A_.getToken();if(We===102){if(We=V(),We===21){if(We=V(),We===11||We===15)return re(),!0}else{if(We===11)return re(),!0;if(We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e!==161&&($e===42||$e===19||$e===80||v0($e))})&&(We=V()),We===80||v0(We))if(We=V(),We===161){if(We=V(),We===11)return re(),!0}else if(We===64){if(Ne(!0))return!0}else if(We===28)We=V();else return!0;if(We===19){for(We=V();We!==20&&We!==1;)We=V();We===20&&(We=V(),We===161&&(We=V(),We===11&&re()))}else We===42&&(We=V(),We===130&&(We=V(),(We===80||v0(We))&&(We=V(),We===161&&(We=V(),We===11&&re()))))}return!0}return!1}function Ee(){let We=A_.getToken();if(We===95){if(ge(),We=V(),We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e===42||$e===19})&&(We=V()),We===19){for(We=V();We!==20&&We!==1;)We=V();We===20&&(We=V(),We===161&&(We=V(),We===11&&re()))}else if(We===42)We=V(),We===161&&(We=V(),We===11&&re());else if(We===102&&(We=V(),We===156&&A_.lookAhead(()=>{let $e=A_.scan();return $e===80||v0($e)})&&(We=V()),(We===80||v0(We))&&(We=V(),We===64&&Ne(!0))))return!0;return!0}return!1}function Ne(We,Ue=!1){let $e=We?V():A_.getToken();return $e===149?($e=V(),$e===21&&($e=V(),($e===11||Ue&&$e===15)&&re()),!0):!1}function Te(){let We=A_.getToken();if(We===80&&A_.getTokenValue()==="define"){if(We=V(),We!==21)return!0;if(We=V(),We===11||We===15)if(We=V(),We===28)We=V();else return!0;if(We!==23)return!0;for(We=V();We!==24&&We!==1;)(We===11||We===15)&&re(),We=V();return!0}return!1}function Ze(){for(A_.setText(s),V();A_.getToken()!==1;){if(A_.getToken()===16){let We=[A_.getToken()];e:for(;B(We);){let Ue=A_.scan();switch(Ue){case 1:break e;case 102:_e();break;case 16:We.push(Ue);break;case 19:B(We)&&We.push(Ue);break;case 20:B(We)&&(li(We)===16?A_.reScanTemplateToken(!1)===18&&We.pop():We.pop());break}}V()}Ie()||_e()||Ee()||g&&(Ne(!1,!0)||Te())||V()}A_.setText(void 0)}if(c&&Ze(),V$e(d,s),P$e(d,Dc),W){if(_)for(let We of _)h.push(We.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let We;if(_)for(let Ue of _)Ue.depth===0?(We||(We=[]),We.push(Ue.ref.fileName)):h.push(Ue.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:h,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:We}}}var gRs=/^data:(?:application\/json;charset=[uU][tT][fF]-8;base64,([A-Za-z0-9+/=]+)$)?/;function KMt(s){let c=_d(s.useCaseSensitiveFileNames()),g=s.getCurrentDirectory(),d=new Map,h=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:T,toLineColumnOffset:ee,clearCache:re,documentPositionMappers:h};function _(ge){return Ou(ge,g,c)}function S(ge,Ie){let _e=_(ge),Ee=h.get(_e);if(Ee)return Ee;let Ne;if(s.getDocumentPositionMapper)Ne=s.getDocumentPositionMapper(ge,Ie);else if(s.readFile){let Te=M(ge);Ne=Te&&bnt({getSourceFileLike:M,getCanonicalFileName:c,log:Ze=>s.log(Ze)},ge,ket(Te.text,rn(Te)),Ze=>!s.fileExists||s.fileExists(Ze)?s.readFile(Ze):void 0)}return h.set(_e,Ne||Get),Ne||Get}function R(ge){if(!PC(ge.fileName)||!W(ge.fileName))return;let _e=S(ge.fileName).getSourcePosition(ge);return!_e||_e===ge?void 0:R(_e)||_e}function T(ge){if(PC(ge.fileName))return;let Ie=W(ge.fileName);if(!Ie)return;let _e=s.getProgram();if(_e.isSourceOfProjectReferenceRedirect(Ie.fileName))return;let Ne=_e.getCompilerOptions().outFile,Te=Ne?s0(Ne)+".d.ts":wne(ge.fileName,_e.getCompilerOptions(),_e);if(Te===void 0)return;let Ze=S(Te,ge.fileName).getGeneratedPosition(ge);return Ze===ge?void 0:Ze}function W(ge){let Ie=s.getProgram();if(!Ie)return;let _e=_(ge),Ee=Ie.getSourceFileByPath(_e);return Ee&&Ee.resolvedPath===_e?Ee:void 0}function V(ge){let Ie=_(ge),_e=d.get(Ie);if(_e!==void 0)return _e||void 0;if(!s.readFile||s.fileExists&&!s.fileExists(ge)){d.set(Ie,!1);return}let Ee=s.readFile(ge),Ne=Ee?ARs(Ee):!1;return d.set(Ie,Ne),Ne||void 0}function M(ge){return s.getSourceFileLike?s.getSourceFileLike(ge):W(ge)||V(ge)}function ee(ge,Ie){return M(ge).getLineAndCharacterOfPosition(Ie)}function re(){d.clear(),h.clear()}}function bnt(s,c,g,d){let h=EOt(g);if(h){let R=gRs.exec(h);if(R){if(R[1]){let T=R[1];return min(s,YZe(yd,T),c)}h=void 0}}let _=[];h&&_.push(h),_.push(c+".map");let S=h&&Xc(h,Mo(c));for(let R of _){let T=Xc(R,Mo(c)),W=d(T,S);if(Xs(W))return min(s,W,T);if(W!==void 0)return W||void 0}}function min(s,c,g){let d=SOt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Xs)))return BOt(s,d,g)}function ARs(s,c){return{text:s,lineMap:c,getLineAndCharacterOfPosition(g){return Ci(rn(this),g)}}}var jMt=new Map;function Ent(s,c,g){var d;c.getSemanticDiagnostics(s,g);let h=[],_=c.getTypeChecker();!(c.getImpliedNodeFormatForEmit(s)===1||fu(s.fileName,[".cts",".cjs"]))&&s.commonJsModuleIndicator&&(aMt(c)||Lrt(c.getCompilerOptions()))&&dRs(s)&&h.push(mo(hRs(s.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=n0(s);if(jMt.clear(),T(s),JY(c.getCompilerOptions()))for(let W of s.imports){let V=v7(W);if(km(V)&&Ga(V,32))continue;let M=pRs(V);if(!M)continue;let ee=(d=c.getResolvedModuleFromModuleSpecifier(W,s))==null?void 0:d.resolvedModule,re=ee&&c.getSourceFile(ee.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&Cf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&h.push(mo(M,Z.Import_may_be_converted_to_a_default_import))}return Or(h,s.bindSuggestionDiagnostics),Or(h,c.getSuggestionDiagnostics(s,g)),h.sort((W,V)=>W.start-V.start),h;function T(W){if(R)CRs(W,_)&&h.push(mo(nc(W.parent)?W.parent.name:W,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Ch(W)&&W.parent===s&&W.declarationList.flags&2&&W.declarationList.declarations.length===1){let M=W.declarationList.declarations[0].initializer;M&&ay(M,!0)&&h.push(mo(M,Z.require_call_may_be_converted_to_an_import))}let V=x0.getJSDocTypedefNodes(W);for(let M of V)h.push(mo(M,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));x0.parameterShouldGetTypeFromJSDoc(W)&&h.push(mo(W.name||W,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}Bnt(W)&&fRs(W,_,h),W.forEachChild(T)}}function dRs(s){return s.statements.some(c=>{switch(c.kind){case 244:return c.declarationList.declarations.some(g=>!!g.initializer&&ay(Cin(g.initializer),!0));case 245:{let{expression:g}=c;if(!fo(g))return ay(g,!0);let d=nI(g);return d===1||d===2}default:return!1}})}function Cin(s){return jo(s)?Cin(s.expression):s}function pRs(s){switch(s.kind){case 273:let{importClause:c,moduleSpecifier:g}=s;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===275&&Zg(g)?c.namedBindings.name:void 0;case 272:return s.name;default:return}}function fRs(s,c,g){IRs(s,c)&&!jMt.has(Ein(s))&&g.push(mo(!s.name&&nc(s.parent)&&Ir(s.parent.name)?s.parent.name:s,Z.This_may_be_converted_to_an_async_function))}function IRs(s,c){return!D7(s)&&s.body&&$u(s.body)&&mRs(s.body,c)&&Snt(s,c)}function Snt(s,c){let g=c.getSignatureFromDeclaration(s),d=g?c.getReturnTypeOfSignature(g):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function hRs(s){return fo(s)?s.left:s}function mRs(s,c){return!!yF(s,g=>hPe(g,c))}function hPe(s,c){return I2(s)&&!!s.expression&&vnt(s.expression,c)}function vnt(s,c){if(!_in(s)||!yin(s)||!s.arguments.every(d=>bin(d,c)))return!1;let g=s.expression.expression;for(;_in(g)||jo(g);)if(Zl(g)){if(!yin(g)||!g.arguments.every(d=>bin(d,c)))return!1;g=g.expression.expression}else g=g.expression;return!0}function _in(s){return Zl(s)&&(s1e(s,"then")||s1e(s,"catch")||s1e(s,"finally"))}function yin(s){let c=s.expression.name.text,g=c==="then"?2:c==="catch"||c==="finally"?1:0;return s.arguments.length>g?!1:s.arguments.lengthd.kind===106||Ir(d)&&d.text==="undefined")}function bin(s,c){switch(s.kind){case 263:case 219:if(SI(s)&1)return!1;case 220:jMt.set(Ein(s),!0);case 106:return!0;case 80:case 212:{let d=c.getSymbolAtLocation(s);return d?c.isUndefinedSymbol(d)||jt(FC(d,c).declarations,h=>bu(h)||WT(h)&&!!h.initializer&&bu(h.initializer)):!1}default:return!1}}function Ein(s){return`${s.pos.toString()}:${s.end.toString()}`}function CRs(s,c){var g,d,h,_;if(UA(s)){if(nc(s.parent)&&((g=s.symbol.members)!=null&&g.size))return!0;let S=c.getSymbolOfExpando(s,!1);return!!(S&&((d=S.exports)!=null&&d.size||(h=S.members)!=null&&h.size))}return ih(s)?!!((_=s.symbol.members)!=null&&_.size):!1}function Bnt(s){switch(s.kind){case 263:case 175:case 219:case 220:return!0;default:return!1}}var _Rs=new Set(["isolatedModules"]);function zMt(s,c){return vin(s,c,!1)}function Sin(s,c){return vin(s,c,!0)}var yRs=`/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number {} -interface Object {} -interface RegExp {} -interface String {} -interface Array { length: number; [n: number]: T; } -interface SymbolConstructor { - (desc?: string | number): symbol; - for(name: string): symbol; - readonly toStringTag: symbol; -} -declare var Symbol: SymbolConstructor; -interface Symbol { - readonly [Symbol.toStringTag]: string; -}`,mPe="lib.d.ts",qMt;function vin(s,c,g){qMt??(qMt=vz(mPe,yRs,{languageVersion:99}));let d=[],h=c.compilerOptions?wnt(c.compilerOptions,d):{},_=DPe();for(let Ie in _)Da(_,Ie)&&h[Ie]===void 0&&(h[Ie]=_[Ie]);for(let Ie of EWt)h.verbatimModuleSyntax&&_Rs.has(Ie.name)||(h[Ie.name]=Ie.transpileOptionValue);h.suppressOutputPathCheck=!0,h.allowNonTsExtensions=!0,g?(h.declaration=!0,h.emitDeclarationOnly=!0,h.isolatedDeclarations=!0):(h.declaration=!1,h.declarationMap=!1);let S=uN(h),R={getSourceFile:Ie=>Ie===iu(T)?W:Ie===iu(mPe)?qMt:void 0,writeFile:(Ie,_e)=>{aA(Ie,".map")?(pe.assertEqual(M,void 0,"Unexpected multiple source map outputs, file:",Ie),M=_e):(pe.assertEqual(V,void 0,"Unexpected multiple outputs, file:",Ie),V=_e)},getDefaultLibFileName:()=>mPe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ie=>Ie,getCurrentDirectory:()=>"",getNewLine:()=>S,fileExists:Ie=>Ie===T||!!g&&Ie===mPe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},T=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),W=vz(T,s,{languageVersion:Mg(h),impliedNodeFormat:JEe(Ou(T,"",R.getCanonicalFileName),void 0,R,h),setExternalModuleIndicator:Lne(h),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(W.moduleName=c.moduleName),c.renamedDependencies&&(W.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let V,M,re=UEe(g?[T,mPe]:[T],h,R);c.reportDiagnostics&&(Or(d,re.getSyntacticDiagnostics(W)),Or(d,re.getOptionsDiagnostics()));let ge=re.emit(void 0,void 0,void 0,g,c.transformers,g);return Or(d,ge.diagnostics),V===void 0?pe.fail("Output generation failed"):{outputText:V,diagnostics:d,sourceMapText:M}}function Bin(s,c,g,d,h){let _=zMt(s,{compilerOptions:c,fileName:g,reportDiagnostics:!!d,moduleName:h});return Or(d,_.diagnostics),_.outputText}var $Mt;function wnt(s,c){$Mt=$Mt||Me(Ww,g=>typeof g.type=="object"&&!Dh(g.type,d=>typeof d!="number")),s=Drt(s);for(let g of $Mt){if(!Da(s,g.name))continue;let d=s[g.name];Xs(d)?s[g.name]=I9e(g,d,c):Dh(g.type,h=>h===d)||c.push(vWt(g))}return s}var eHt={};o(eHt,{getNavigateToItems:()=>win});function win(s,c,g,d,h,_,S){let R=WMt(d);if(!R)return E;let T=[],W=s.length===1?s[0]:void 0;for(let V of s)g.throwIfCancellationRequested(),!(_&&V.isDeclarationFile)&&(Tin(V,!!S,W)||V.getNamedDeclarations().forEach((M,ee)=>{bRs(R,ee,M,c,V.fileName,!!S,W,T)}));return T.sort(BRs),(h===void 0?T:T.slice(0,h)).map(wRs)}function Tin(s,c,g){return s!==g&&c&&(_1e(s.path)||s.hasNoDefaultLib)}function bRs(s,c,g,d,h,_,S,R){let T=s.getMatchForLastSegmentOfPattern(c);if(T){for(let W of g)if(ERs(W,d,_,S))if(s.patternContainsDots){let V=s.getFullMatch(vRs(W),c);V&&R.push({name:c,fileName:h,matchKind:V.kind,isCaseSensitive:V.isCaseSensitive,declaration:W})}else R.push({name:c,fileName:h,matchKind:T.kind,isCaseSensitive:T.isCaseSensitive,declaration:W})}}function ERs(s,c,g,d){var h;switch(s.kind){case 274:case 277:case 272:let _=c.getSymbolAtLocation(s.name),S=c.getAliasedSymbol(_);return _.escapedName!==S.escapedName&&!((h=S.declarations)!=null&&h.every(R=>Tin(R.getSourceFile(),g,d)));default:return!0}}function SRs(s,c){let g=Il(s);return!!g&&(Rin(g,c)||g.kind===168&&tHt(g.expression,c))}function tHt(s,c){return Rin(s,c)||jo(s)&&(c.push(s.name.text),!0)&&tHt(s.expression,c)}function Rin(s,c){return Tw(s)&&(c.push(c2(s)),!0)}function vRs(s){let c=[],g=Il(s);if(g&&g.kind===168&&!tHt(g.expression,c))return E;c.shift();let d=kU(s);for(;d;){if(!SRs(d,c))return E;d=kU(d)}return c.reverse(),c}function BRs(s,c){return Zt(s.matchKind,c.matchKind)||so(s.name,c.name)}function wRs(s){let c=s.declaration,g=kU(c),d=g&&Il(g);return{name:s.name,kind:pQ(c),kindModifiers:Yde(c),matchKind:_nt[s.matchKind],isCaseSensitive:s.isCaseSensitive,fileName:s.fileName,textSpan:Oy(c),containerName:d?d.text:"",containerKind:d?pQ(g):""}}var rHt={};o(rHt,{getNavigationBarItems:()=>Din,getNavigationTree:()=>kin});var TRs=/\s+/g,nHt=150,Tnt,B1e,CPe=[],r9,Nin=[],$ie,iHt=[];function Din(s,c){Tnt=c,B1e=s;try{return At(xRs(Fin(s)),GRs)}finally{xin()}}function kin(s,c){Tnt=c,B1e=s;try{return Yin(Fin(s))}finally{xin()}}function xin(){B1e=void 0,Tnt=void 0,CPe=[],r9=void 0,iHt=[]}function _Pe(s){return epe(s.getText(B1e))}function Rnt(s){return s.node.kind}function Gin(s,c){s.children?s.children.push(c):s.children=[c]}function Fin(s){pe.assert(!CPe.length);let c={node:s,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};r9=c;for(let g of s.statements)Wz(g);return q3(),pe.assert(!r9&&!CPe.length),c}function hQ(s,c){Gin(r9,sHt(s,c))}function sHt(s,c){return{node:s,name:c||(jh(s)||un(s)?Il(s):void 0),additionalNodes:void 0,parent:r9,children:void 0,indent:r9.indent+1}}function Zin(s){$ie||($ie=new Map),$ie.set(s,!0)}function Lin(s){for(let c=0;c0;d--){let h=g[d];mQ(s,h)}return[g.length-1,g[0]]}function mQ(s,c){let g=sHt(s,c);Gin(r9,g),CPe.push(r9),Nin.push($ie),$ie=void 0,r9=g}function q3(){r9.children&&(Nnt(r9.children,r9),cHt(r9.children)),r9=CPe.pop(),$ie=Nin.pop()}function $3(s,c,g){mQ(s,g),Wz(c),q3()}function Pin(s){s.initializer&&ZRs(s.initializer)?(mQ(s),Lu(s.initializer,Wz),q3()):$3(s,s.initializer)}function oHt(s){let c=Il(s);if(c===void 0)return!1;if(Un(c)){let g=c.expression;return Od(g)||mC(g)||d1(g)}return!!c}function Wz(s){if(Tnt.throwIfCancellationRequested(),!(!s||BL(s)))switch(s.kind){case 177:let c=s;$3(c,c.body);for(let S of c.parameters)Ve(S,c)&&hQ(S);break;case 175:case 178:case 179:case 174:oHt(s)&&$3(s,s.body);break;case 173:oHt(s)&&Pin(s);break;case 172:oHt(s)&&hQ(s);break;case 274:let g=s;g.name&&hQ(g.name);let{namedBindings:d}=g;if(d)if(d.kind===275)hQ(d);else for(let S of d.elements)hQ(S);break;case 305:$3(s,s.name);break;case 306:let{expression:h}=s;Ir(h)?hQ(s,h):hQ(s);break;case 209:case 304:case 261:{let S=s;Nu(S.name)?Wz(S.name):Pin(S);break}case 263:let _=s.name;_&&Ir(_)&&Zin(_.text),$3(s,s.body);break;case 220:case 219:$3(s,s.body);break;case 267:mQ(s);for(let S of s.members)FRs(S)||hQ(S);q3();break;case 264:case 232:case 265:mQ(s);for(let S of s.members)Wz(S);q3();break;case 268:$3(s,Xin(s).body);break;case 278:{let S=s.expression,R=og(S)||Zl(S)?S:lA(S)||UA(S)?S.body:void 0;R?(mQ(s),Wz(R),q3()):hQ(s);break}case 282:case 272:case 182:case 180:case 181:case 266:hQ(s);break;case 214:case 227:{let S=nI(s);switch(S){case 1:case 2:$3(s,s.right);return;case 6:case 3:{let R=s,T=R.left,W=S===3?T.expression:T,V=0,M;Ir(W.expression)?(Zin(W.expression.text),M=W.expression):[V,M]=Vin(R,W.expression),S===6?og(R.right)&&R.right.properties.length>0&&(mQ(R,M),Lu(R.right,Wz),q3()):UA(R.right)||lA(R.right)?$3(s,R.right,M):(mQ(R,M),$3(s,R.right,T.name),q3()),Lin(V);return}case 7:case 9:{let R=s,T=S===7?R.arguments[0]:R.arguments[0].expression,W=R.arguments[1],[V,M]=Vin(s,T);mQ(s,M),mQ(s,gn(me.createIdentifier(W.text),W)),Wz(s.arguments[2]),q3(),q3(),Lin(V);return}case 5:{let R=s,T=R.left,W=T.expression;if(Ir(W)&&YD(T)!=="prototype"&&$ie&&$ie.has(W.text)){UA(R.right)||lA(R.right)?$3(s,R.right,W):yP(T)&&(mQ(R,W),$3(R.left,R.right,cne(T)),q3());return}break}case 4:case 0:case 8:break;default:pe.assertNever(S)}}default:Xm(s)&&F(s.jsDoc,S=>{F(S.tags,R=>{iS(R)&&hQ(R)})}),Lu(s,Wz)}}function Nnt(s,c){let g=new Map;je(s,(d,h)=>{let _=d.name||Il(d.node),S=_&&_Pe(_);if(!S)return!0;let R=g.get(S);if(!R)return g.set(S,d),!0;if(R instanceof Array){for(let T of R)if(Win(T,d,h,c))return!1;return R.push(d),!0}else{let T=R;return Win(T,d,h,c)?!1:(g.set(S,[T,d]),!0)}})}var w1e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function RRs(s,c,g,d){function h(R){return UA(R)||ih(R)||nc(R)}let _=fo(c.node)||Zl(c.node)?nI(c.node):0,S=fo(s.node)||Zl(s.node)?nI(s.node):0;if(w1e[_]&&w1e[S]||h(s.node)&&w1e[_]||h(c.node)&&w1e[S]||pm(s.node)&&aHt(s.node)&&w1e[_]||pm(c.node)&&w1e[S]||pm(s.node)&&aHt(s.node)&&h(c.node)||pm(c.node)&&h(s.node)&&aHt(s.node)){let R=s.additionalNodes&&li(s.additionalNodes)||s.node;if(!pm(s.node)&&!pm(c.node)||h(s.node)||h(c.node)){let W=h(s.node)?s.node:h(c.node)?c.node:void 0;if(W!==void 0){let V=gn(me.createConstructorDeclaration(void 0,[],void 0),W),M=sHt(V);M.indent=s.indent+1,M.children=s.node===W?s.children:c.children,s.children=s.node===W?Nn([M],c.children||[c]):Nn(s.children||[{...s}],[M])}else(s.children||c.children)&&(s.children=Nn(s.children||[{...s}],c.children||[c]),s.children&&(Nnt(s.children,s),cHt(s.children)));R=s.node=gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),s.node)}else s.children=Nn(s.children,c.children),s.children&&Nnt(s.children,s);let T=c.node;return d.children[g-1].node.end===R.end?gn(R,{pos:R.pos,end:T.end}):(s.additionalNodes||(s.additionalNodes=[]),s.additionalNodes.push(gn(me.createClassDeclaration(void 0,s.name||me.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return _!==0}function Win(s,c,g,d){return RRs(s,c,g,d)?!0:NRs(s.node,c.node,d)?(DRs(s,c),!0):!1}function NRs(s,c,g){if(s.kind!==c.kind||s.parent!==c.parent&&!(Oin(s,g)&&Oin(c,g)))return!1;switch(s.kind){case 173:case 175:case 178:case 179:return cg(s)===cg(c);case 268:return Min(s,c)&&gHt(s)===gHt(c);default:return!0}}function aHt(s){return!!(s.flags&16)}function Oin(s,c){if(s.parent===void 0)return!1;let g=_N(s.parent)?s.parent.parent:s.parent;return g===c.node||k(c.additionalNodes,g)}function Min(s,c){return!s.body||!c.body?s.body===c.body:s.body.kind===c.body.kind&&(s.body.kind!==268||Min(s.body,c.body))}function DRs(s,c){s.additionalNodes=s.additionalNodes||[],s.additionalNodes.push(c.node),c.additionalNodes&&s.additionalNodes.push(...c.additionalNodes),s.children=Nn(s.children,c.children),s.children&&(Nnt(s.children,s),cHt(s.children))}function cHt(s){s.sort(kRs)}function kRs(s,c){return so(Hin(s.node),Hin(c.node))||Zt(Rnt(s),Rnt(c))}function Hin(s){if(s.kind===268)return Qin(s);let c=Il(s);if(c&&VI(c)){let g=_3(c);return g&&Bc(g)}switch(s.kind){case 219:case 220:case 232:return Uin(s);default:return}}function lHt(s,c){if(s.kind===268)return epe(Qin(s));if(c){let g=Ir(c)?c.text:Yg(c)?`[${_Pe(c.argumentExpression)}]`:_Pe(c);if(g.length>0)return epe(g)}switch(s.kind){case 308:let g=s;return xm(g)?`"${YT(gp(s0(iu(g.fileName))))}"`:"";case 278:return Cf(s)&&s.isExportEquals?"export=":"default";case 220:case 263:case 219:case 264:case 232:return Nx(s)&2048?"default":Uin(s);case 177:return"constructor";case 181:return"new()";case 180:return"()";case 182:return"[]";default:return""}}function xRs(s){let c=[];function g(h){if(d(h)&&(c.push(h),h.children))for(let _ of h.children)g(_)}return g(s),c;function d(h){if(h.children)return!0;switch(Rnt(h)){case 264:case 232:case 267:case 265:case 268:case 308:case 266:case 347:case 339:return!0;case 220:case 263:case 219:return _(h);default:return!1}function _(S){if(!S.node.body)return!1;switch(Rnt(S.parent)){case 269:case 308:case 175:case 177:return!0;default:return!1}}}}function Yin(s){return{text:lHt(s.node,s.name),kind:pQ(s.node),kindModifiers:Jin(s.node),spans:uHt(s),nameSpan:s.name&&AHt(s.name),childItems:At(s.children,Yin)}}function GRs(s){return{text:lHt(s.node,s.name),kind:pQ(s.node),kindModifiers:Jin(s.node),spans:uHt(s),childItems:At(s.children,c)||iHt,indent:s.indent,bolded:!1,grayed:!1};function c(g){return{text:lHt(g.node,g.name),kind:pQ(g.node),kindModifiers:Yde(g.node),spans:uHt(g),childItems:iHt,indent:0,bolded:!1,grayed:!1}}}function uHt(s){let c=[AHt(s.node)];if(s.additionalNodes)for(let g of s.additionalNodes)c.push(AHt(g));return c}function Qin(s){return s_(s)?xp(s.name):gHt(s)}function gHt(s){let c=[c2(s.name)];for(;s.body&&s.body.kind===268;)s=s.body,c.push(c2(s.name));return c.join(".")}function Xin(s){return s.body&&xh(s.body)?Xin(s.body):s}function FRs(s){return!s.name||s.name.kind===168}function AHt(s){return s.kind===308?t9(s):Oy(s,B1e)}function Jin(s){return s.parent&&s.parent.kind===261&&(s=s.parent),Yde(s)}function Uin(s){let{parent:c}=s;if(s.name&&DJ(s.name)>0)return epe(Wd(s.name));if(nc(c))return epe(Wd(c.name));if(fo(c)&&c.operatorToken.kind===64)return _Pe(c.left).replace(TRs,"");if(fm(c))return _Pe(c.name);if(Nx(s)&2048)return"default";if(xa(s))return"";if(Zl(c)){let g=Kin(c.expression);if(g!==void 0){if(g=epe(g),g.length>nHt)return`${g} callback`;let d=epe(Xt(c.arguments,h=>mA(h)||AP(h)?h.getText(B1e):void 0).join(", "));return`${g}(${d}) callback`}}return""}function Kin(s){if(Ir(s))return s.text;if(jo(s)){let c=Kin(s.expression),g=s.name.text;return c===void 0?g:`${c}.${g}`}else return}function ZRs(s){switch(s.kind){case 220:case 219:case 232:return!0;default:return!1}}function epe(s){return s=s.length>nHt?s.substring(0,nHt)+"...":s,s.replace(/\\?(?:\r?\n|[\r\u2028\u2029])/g,"")}var Oz={};o(Oz,{addExportsInOldFile:()=>EHt,addImportsForMovedSymbols:()=>SHt,addNewFileToTsconfig:()=>bHt,addOrRemoveBracesToArrowFunction:()=>DNs,addTargetFileImports:()=>xHt,containsJsx:()=>wHt,convertArrowFunctionOrFunctionExpression:()=>ZNs,convertParamsToDestructuredObject:()=>JNs,convertStringOrTemplateLiteral:()=>gDs,convertToOptionalChainExpression:()=>yDs,createNewFileName:()=>BHt,doChangeNamedToNamespaceOrDefault:()=>tsn,extractSymbol:()=>Jsn,generateGetAccessorAndSetAccessor:()=>iks,getApplicableRefactors:()=>LRs,getEditsForRefactor:()=>VRs,getExistingLocals:()=>DHt,getIdentifierForNode:()=>kHt,getNewStatementsAndRemoveFromOldFile:()=>yHt,getStatementsToMove:()=>T1e,getUsageInfo:()=>yPe,inferFunctionReturnType:()=>sks,isInImport:()=>Pnt,isRefactorErrorInfo:()=>MF,refactorKindBeginsWith:()=>e5,registerRefactor:()=>Px});var dHt=new Map;function Px(s,c){dHt.set(s,c)}function LRs(s,c){return Do(xt(dHt.values(),g=>{var d;return s.cancellationToken&&s.cancellationToken.isCancellationRequested()||!((d=g.kinds)!=null&&d.some(h=>e5(h,s.kind)))?void 0:g.getAvailableActions(s,c)}))}function VRs(s,c,g,d){let h=dHt.get(c);return h&&h.getEditsForAction(s,g,d)}var pHt="Convert export",Dnt={name:"Convert default export to named export",description:Bu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},knt={name:"Convert named export to default export",description:Bu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};Px(pHt,{kinds:[Dnt.kind,knt.kind],getAvailableActions:function(c){let g=jin(c,c.triggerReason==="invoked");if(!g)return E;if(!MF(g)){let d=g.wasDefault?Dnt:knt;return[{name:pHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:pHt,description:Bu(Z.Convert_default_export_to_named_export),actions:[{...Dnt,notApplicableReason:g.error},{...knt,notApplicableReason:g.error}]}]:E},getEditsForAction:function(c,g){pe.assert(g===Dnt.name||g===knt.name,"Unexpected action name");let d=jin(c);return pe.assert(d&&!MF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>PRs(c.file,c.program,d,_,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function jin(s,c=!0){let{file:g,program:d}=s,h=Vz(s),_=Jc(g,h.start),S=_.parent&&Nx(_.parent)&32&&c?_.parent:f1e(_,g,h);if(!S||!ll(S.parent)&&!(_N(S.parent)&&s_(S.parent.parent)))return{error:Bu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),T=YRs(S.parent,R),W=Nx(S)||(Cf(S)&&!S.isExportEquals?2080:0),V=!!(W&2048);if(!(W&32)||!V&&T.exports.has("default"))return{error:Bu(Z.This_file_already_has_a_default_export)};let M=ee=>Ir(ee)&&R.getSymbolAtLocation(ee)?void 0:{error:Bu(Z.Can_only_convert_named_export)};switch(S.kind){case 263:case 264:case 265:case 267:case 266:case 268:{let ee=S;return ee.name?M(ee.name)||{exportNode:ee,exportName:ee.name,wasDefault:V,exportingModuleSymbol:T}:void 0}case 244:{let ee=S;if(!(ee.declarationList.flags&2)||ee.declarationList.declarations.length!==1)return;let re=ma(ee.declarationList.declarations);return re.initializer?(pe.assert(!V,"Can't have a default flag here"),M(re.name)||{exportNode:ee,exportName:re.name,wasDefault:V,exportingModuleSymbol:T}):void 0}case 278:{let ee=S;return ee.isExportEquals?void 0:M(ee.expression)||{exportNode:ee,exportName:ee.expression,wasDefault:V,exportingModuleSymbol:T}}default:return}}function PRs(s,c,g,d,h){WRs(s,g,d,c.getTypeChecker()),ORs(c,g,d,h)}function WRs(s,{wasDefault:c,exportNode:g,exportName:d},h,_){if(c)if(Cf(g)&&!g.isExportEquals){let S=g.expression,R=zin(S.text,S.text);h.replaceNode(s,g,me.createExportDeclaration(void 0,!1,me.createNamedExports([R])))}else h.delete(s,pe.checkDefined(Qie(g,90),"Should find a default keyword in modifier list"));else{let S=pe.checkDefined(Qie(g,95),"Should find an export keyword in modifier list");switch(g.kind){case 263:case 264:case 265:h.insertNodeAfter(s,S,me.createToken(90));break;case 244:let R=ma(g.declarationList.declarations);if(!Kp.Core.isSymbolReferencedInFile(d,_,s)&&!R.type){h.replaceNode(s,g,me.createExportDefault(pe.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 267:case 266:case 268:h.deleteModifier(s,S),h.insertNodeAfter(s,g,me.createExportDefault(me.createIdentifier(d.text)));break;default:pe.fail(`Unexpected exportNode kind ${g.kind}`)}}}function ORs(s,{wasDefault:c,exportName:g,exportingModuleSymbol:d},h,_){let S=s.getTypeChecker(),R=pe.checkDefined(S.getSymbolAtLocation(g),"Export name should resolve to a symbol");Kp.Core.eachExportReference(s.getSourceFiles(),S,_,R,d,g.text,c,T=>{if(g===T)return;let W=T.getSourceFile();c?MRs(W,T,h,g.text):HRs(W,T,h)})}function MRs(s,c,g,d){let{parent:h}=c;switch(h.kind){case 212:g.replaceNode(s,c,me.createIdentifier(d));break;case 277:case 282:{let S=h;g.replaceNode(s,S,fHt(d,S.name.text));break}case 274:{let S=h;pe.assert(S.name===c,"Import clause name should match provided ref");let R=fHt(d,c.text),{namedBindings:T}=S;if(!T)g.replaceNode(s,c,me.createNamedImports([R]));else if(T.kind===275){g.deleteRange(s,{pos:c.getStart(s),end:T.getStart(s)});let W=Zg(S.parent.moduleSpecifier)?Prt(S.parent.moduleSpecifier,s):1,V=QP(void 0,[fHt(d,c.text)],S.parent.moduleSpecifier,W);g.insertNodeAfter(s,S.parent,V)}else g.delete(s,c),g.insertNodeAtEndOfList(s,T.elements,R);break}case 206:let _=h;g.replaceNode(s,h,me.createImportTypeNode(_.argument,_.attributes,me.createIdentifier(d),_.typeArguments,_.isTypeOf));break;default:pe.failBadSyntaxKind(h)}}function HRs(s,c,g){let d=c.parent;switch(d.kind){case 212:g.replaceNode(s,c,me.createIdentifier("default"));break;case 277:{let h=me.createIdentifier(d.name.text);d.parent.elements.length===1?g.replaceNode(s,d.parent,h):(g.delete(s,d),g.insertNodeBefore(s,d.parent,h));break}case 282:{g.replaceNode(s,d,zin("default",d.name.text));break}default:pe.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function fHt(s,c){return me.createImportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function zin(s,c){return me.createExportSpecifier(!1,s===c?void 0:me.createIdentifier(s),me.createIdentifier(c))}function YRs(s,c){if(ll(s))return s.symbol;let g=s.parent.symbol;return g.valueDeclaration&&_F(g.valueDeclaration)?c.getMergedSymbol(g):g}var IHt="Convert import",xnt={0:{name:"Convert namespace import to named imports",description:Bu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:Bu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:Bu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};Px(IHt,{kinds:Qh(xnt).map(s=>s.kind),getAvailableActions:function(c){let g=qin(c,c.triggerReason==="invoked");if(!g)return E;if(!MF(g)){let d=xnt[g.convertTo];return[{name:IHt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?Qh(xnt).map(d=>({name:IHt,description:d.description,actions:[{...d,notApplicableReason:g.error}]})):E},getEditsForAction:function(c,g){pe.assert(jt(Qh(xnt),_=>_.name===g),"Unexpected action name");let d=qin(c);return pe.assert(d&&!MF(d),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(c,_=>QRs(c.file,c.program,_,d)),renameFilename:void 0,renameLocation:void 0}}});function qin(s,c=!0){let{file:g}=s,d=Vz(s),h=Jc(g,d.start),_=c?ji(h,Hp(Mf,SN)):f1e(h,g,d);if(_===void 0||!(Mf(_)||SN(_)))return{error:"Selection is not an import declaration."};let S=d.start+d.length,R=fQ(_,_.parent,g);if(R&&S>R.getStart())return;let{importClause:T}=_;return T?T.namedBindings?T.namedBindings.kind===275?{convertTo:0,import:T.namedBindings}:$in(s.program,T)?{convertTo:1,import:T.namedBindings}:{convertTo:2,import:T.namedBindings}:{error:Bu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:Bu(Z.Could_not_find_import_clause)}}function $in(s,c){return JY(s.getCompilerOptions())&&URs(c.parent.moduleSpecifier,s.getTypeChecker())}function QRs(s,c,g,d){let h=c.getTypeChecker();d.convertTo===0?XRs(s,h,g,d.import,JY(c.getCompilerOptions())):tsn(s,c,g,d.import,d.convertTo===1)}function XRs(s,c,g,d,h){let _=!1,S=[],R=new Map;Kp.Core.eachSymbolReferenceInFile(d.name,c,s,M=>{if(!SJ(M.parent))_=!0;else{let ee=esn(M.parent).text;c.resolveName(ee,M,-1,!0)&&R.set(ee,!0),pe.assert(JRs(M.parent)===M,"Parent expression should match id"),S.push(M.parent)}});let T=new Map;for(let M of S){let ee=esn(M).text,re=T.get(ee);re===void 0&&T.set(ee,re=R.has(ee)?GU(ee,s):ee),g.replaceNode(s,M,me.createIdentifier(re))}let W=[];T.forEach((M,ee)=>{W.push(me.createImportSpecifier(!1,M===ee?void 0:me.createIdentifier(ee),me.createIdentifier(M)))});let V=d.parent.parent;if(_&&!h&&Mf(V))g.insertNodeAfter(s,V,rsn(V,void 0,W));else{let M=_?me.createIdentifier(d.name.text):void 0;g.replaceNode(s,d.parent,nsn(M,W))}}function esn(s){return jo(s)?s.name:s.right}function JRs(s){return jo(s)?s.expression:s.left}function tsn(s,c,g,d,h=$in(c,d.parent)){let _=c.getTypeChecker(),S=d.parent.parent,{moduleSpecifier:R}=S,T=new Set;d.elements.forEach(ge=>{let Ie=_.getSymbolAtLocation(ge.name);Ie&&T.add(Ie)});let W=R&&Zg(R)?b1e(R.text,99):"module";function V(ge){return!!Kp.Core.eachSymbolReferenceInFile(ge.name,_,s,Ie=>{let _e=_.resolveName(W,Ie,-1,!0);return _e?T.has(_e)?R0(Ie.parent):!0:!1})}let ee=d.elements.some(V)?GU(W,s):W,re=new Set;for(let ge of d.elements){let Ie=ge.propertyName||ge.name;Kp.Core.eachSymbolReferenceInFile(ge.name,_,s,_e=>{let Ee=Ie.kind===11?me.createElementAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie)):me.createPropertyAccessExpression(me.createIdentifier(ee),me.cloneNode(Ie));a0(_e.parent)?g.replaceNode(s,_e.parent,me.createPropertyAssignment(_e.text,Ee)):R0(_e.parent)?re.add(ge):g.replaceNode(s,_e,Ee)})}if(g.replaceNode(s,d,h?me.createIdentifier(ee):me.createNamespaceImport(me.createIdentifier(ee))),re.size&&Mf(S)){let ge=Do(re.values(),Ie=>me.createImportSpecifier(Ie.isTypeOnly,Ie.propertyName&&me.cloneNode(Ie.propertyName),me.cloneNode(Ie.name)));g.insertNodeAfter(s,d.parent.parent,rsn(S,void 0,ge))}}function URs(s,c){let g=c.resolveExternalModuleName(s);if(!g)return!1;let d=c.resolveExternalModuleSymbol(g);return g!==d}function rsn(s,c,g){return me.createImportDeclaration(void 0,nsn(c,g),s.moduleSpecifier,void 0)}function nsn(s,c){return me.createImportClause(void 0,s,c&&c.length?me.createNamedImports(c):void 0)}var hHt="Extract type",Gnt={name:"Extract to type alias",description:Bu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},Fnt={name:"Extract to interface",description:Bu(Z.Extract_to_interface),kind:"refactor.extract.interface"},Znt={name:"Extract to typedef",description:Bu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};Px(hHt,{kinds:[Gnt.kind,Fnt.kind,Znt.kind],getAvailableActions:function(c){let{info:g,affectedTextRange:d}=isn(c,c.triggerReason==="invoked");return g?MF(g)?c.preferences.provideRefactorNotApplicableReason?[{name:hHt,description:Bu(Z.Extract_type),actions:[{...Znt,notApplicableReason:g.error},{...Gnt,notApplicableReason:g.error},{...Fnt,notApplicableReason:g.error}]}]:E:[{name:hHt,description:Bu(Z.Extract_type),actions:g.isJS?[Znt]:Ft([Gnt],g.typeElements&&Fnt)}].map(_=>({..._,actions:_.actions.map(S=>({...S,range:d?{start:{line:Ra(c.file,d.pos).line,offset:Ra(c.file,d.pos).character},end:{line:Ra(c.file,d.end).line,offset:Ra(c.file,d.end).character}}:void 0}))})):E},getEditsForAction:function(c,g){let{file:d}=c,{info:h}=isn(c);pe.assert(h&&!MF(h),"Expected to find a range to extract");let _=GU("NewType",d),S=xo.ChangeTracker.with(c,W=>{switch(g){case Gnt.name:return pe.assert(!h.isJS,"Invalid actionName/JS combo"),zRs(W,d,_,h);case Znt.name:return pe.assert(h.isJS,"Invalid actionName/JS combo"),$Rs(W,c,d,_,h);case Fnt.name:return pe.assert(!h.isJS&&!!h.typeElements,"Invalid actionName/JS combo"),qRs(W,d,_,h);default:pe.fail("Unexpected action name")}}),R=d.fileName,T=h1e(S,R,_,!1);return{edits:S,renameFilename:R,renameLocation:T}}});function isn(s,c=!0){let{file:g,startPosition:d}=s,h=n0(g),_=QVe(Vz(s)),S=_.pos===_.end&&c,R=KRs(g,d,_,S);if(!R||!uc(R))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let T=s.program.getTypeChecker(),W=eNs(R,h);if(W===void 0)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let V=tNs(R,W);if(!uc(V))return{info:{error:Bu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let M=[];(aS(V.parent)||mf(V.parent))&&_.end>R.end&&Or(M,V.parent.types.filter(_e=>ZVe(_e,g,_.pos,_.end)));let ee=M.length>1?M:V,{typeParameters:re,affectedTextRange:ge}=jRs(T,ee,W,g);if(!re)return{info:{error:Bu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ie=Lnt(T,ee);return{info:{isJS:h,selection:ee,enclosingNode:W,typeParameters:re,typeElements:Ie},affectedTextRange:ge}}function KRs(s,c,g,d){let h=[()=>Jc(s,c),()=>Hie(s,c,()=>!0)];for(let _ of h){let S=_(),R=ZVe(S,s,g.pos,g.end),T=ji(S,W=>W.parent&&uc(W)&&!CQ(g,W.parent,s)&&(d||R));if(T)return T}}function Lnt(s,c){if(c){if(Ki(c)){let g=[];for(let d of c){let h=Lnt(s,d);if(!h)return;Or(g,h)}return g}if(mf(c)){let g=[],d=new Set;for(let h of c.types){let _=Lnt(s,h);if(!_||!_.every(S=>S.name&&Zy(d,d1e(S.name))))return;Or(g,_)}return g}else{if(fv(c))return Lnt(s,c.type);if(mh(c))return c.members}}}function CQ(s,c,g){return c1e(s,Yu(g.text,c.pos),c.end)}function jRs(s,c,g,d){let h=[],_=cc(c),S={pos:_[0].getStart(d),end:_[_.length-1].end};for(let T of _)if(R(T))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:h,affectedTextRange:S};function R(T){if(nh(T)){if(Ir(T.typeName)){let W=T.typeName,V=s.resolveName(W.text,W,262144,!0);for(let M of V?.declarations||E)if(Ds(M)&&M.getSourceFile()===d){if(M.name.escapedText===W.escapedText&&CQ(M,S,d))return!0;if(CQ(g,M,d)&&!CQ(S,M,d)){Qi(h,M);break}}}}else if(jT(T)){let W=ji(T,V=>d2(V)&&CQ(V.extendsType,T,d));if(!W||!CQ(S,W,d))return!0}else if(bE(T)||Fx(T)){let W=ji(T.parent,bu);if(W&&W.type&&CQ(W.type,T,d)&&!CQ(S,W,d))return!0}else if(Fw(T)){if(Ir(T.exprName)){let W=s.resolveName(T.exprName.text,T.exprName,111551,!1);if(W?.valueDeclaration&&CQ(g,W.valueDeclaration,d)&&!CQ(S,W.valueDeclaration,d))return!0}else if(vF(T.exprName.left)&&!CQ(S,T.parent,d))return!0}return d&&Zw(T)&&Ra(d,T.pos).line===Ra(d,T.end).line&&ti(T,1),Lu(T,R)}}function zRs(s,c,g,d){let{enclosingNode:h,typeParameters:_}=d,{firstTypeNode:S,lastTypeNode:R,newTypeNode:T}=mHt(d),W=me.createTypeAliasDeclaration(void 0,g,_.map(V=>me.updateTypeParameterDeclaration(V,V.modifiers,V.name,V.constraint,void 0)),T);s.insertNodeBefore(c,h,$be(W),!0),s.replaceNodeRange(c,S,R,me.createTypeReferenceNode(g,_.map(V=>me.createTypeReferenceNode(V.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function qRs(s,c,g,d){var h;let{enclosingNode:_,typeParameters:S,typeElements:R}=d,T=me.createInterfaceDeclaration(void 0,g,S,void 0,R);gn(T,(h=R[0])==null?void 0:h.parent),s.insertNodeBefore(c,_,$be(T),!0);let{firstTypeNode:W,lastTypeNode:V}=mHt(d);s.replaceNodeRange(c,W,V,me.createTypeReferenceNode(g,S.map(M=>me.createTypeReferenceNode(M.name,void 0))),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.ExcludeWhitespace})}function $Rs(s,c,g,d,h){var _;cc(h.selection).forEach(ge=>{ti(ge,7168)});let{enclosingNode:S,typeParameters:R}=h,{firstTypeNode:T,lastTypeNode:W,newTypeNode:V}=mHt(h),M=me.createJSDocTypedefTag(me.createIdentifier("typedef"),me.createJSDocTypeExpression(V),me.createIdentifier(d)),ee=[];F(R,ge=>{let Ie=n3(ge),_e=me.createTypeParameterDeclaration(void 0,ge.name),Ee=me.createJSDocTemplateTag(me.createIdentifier("template"),Ie&&Ma(Ie,W3),[_e]);ee.push(Ee)});let re=me.createJSDocComment(void 0,me.createNodeArray(Nn(ee,[M])));if(tR(S)){let ge=S.getStart(g),Ie=OF(c.host,(_=c.formatContext)==null?void 0:_.options);s.insertNodeAt(g,S.getStart(g),re,{suffix:Ie+Ie+g.text.slice($Ve(g.text,ge-1),ge)})}else s.insertNodeBefore(g,S,re,!0);s.replaceNodeRange(g,T,W,me.createTypeReferenceNode(d,R.map(ge=>me.createTypeReferenceNode(ge.name,void 0))))}function mHt(s){return Ki(s.selection)?{firstTypeNode:s.selection[0],lastTypeNode:s.selection[s.selection.length-1],newTypeNode:aS(s.selection[0].parent)?me.createUnionTypeNode(s.selection):me.createIntersectionTypeNode(s.selection)}:{firstTypeNode:s.selection,lastTypeNode:s.selection,newTypeNode:s.selection}}function eNs(s,c){return ji(s,Lc)||(c?ji(s,tR):void 0)}function tNs(s,c){return ji(s,g=>g===c?"quit":!!(aS(g.parent)||mf(g.parent)))??s}var Vnt="Move to file",CHt=Bu(Z.Move_to_file),_Ht={name:"Move to file",description:CHt,kind:"refactor.move.file"};Px(Vnt,{kinds:[_Ht.kind],getAvailableActions:function(c,g){let d=c.file,h=T1e(c);if(!g)return E;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let _=ji(Jc(d,c.startPosition),Pz),S=ji(Jc(d,c.endPosition),Pz);if(_&&!ll(_)&&S&&!ll(S))return E}if(c.preferences.allowTextChangesInNewFiles&&h){let _={start:{line:Ra(d,h.all[0].getStart(d)).line,offset:Ra(d,h.all[0].getStart(d)).character},end:{line:Ra(d,Ei(h.all).end).line,offset:Ra(d,Ei(h.all).end).character}};return[{name:Vnt,description:CHt,actions:[{..._Ht,range:_}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:Vnt,description:CHt,actions:[{..._Ht,notApplicableReason:Bu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:E},getEditsForAction:function(c,g,d){pe.assert(g===Vnt,"Wrong refactor invoked");let h=pe.checkDefined(T1e(c)),{host:_,program:S}=c;pe.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return pN(R)||w3(R)?_.fileExists(R)&&S.getSourceFile(R)===void 0?ssn(Bu(Z.Cannot_move_statements_to_the_selected_file)):{edits:xo.ChangeTracker.with(c,W=>rNs(c,c.file,d.targetFile,c.program,h,W,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:ssn(Bu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function ssn(s){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:s}}function rNs(s,c,g,d,h,_,S,R){let T=d.getTypeChecker(),W=!S.fileExists(g),V=W?dPe(g,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,S):pe.checkDefined(d.getSourceFile(g)),M=x0.createImportAdder(c,s.program,s.preferences,s.host),ee=x0.createImportAdder(V,s.program,s.preferences,s.host);yHt(c,V,yPe(c,h.all,T,W?void 0:DHt(V,h.all,T)),_,h,d,S,R,ee,M),W&&bHt(d,_,c.fileName,g,JD(S))}function yHt(s,c,g,d,h,_,S,R,T,W){let V=_.getTypeChecker(),M=t_(s.statements,nS),ee=!gnt(c.fileName,_,S,!!s.commonJsModuleIndicator),re=_1(s,R);SHt(g.oldFileImportsFromTargetFile,c.fileName,W,_),iNs(s,h.all,g.unusedImportsFromOldFile,W),W.writeFixes(d,re),nNs(s,h.ranges,d),sNs(d,_,S,s,g.movedSymbols,c.fileName,re),EHt(s,g.targetFileImportsFromOldFile,d,ee),xHt(s,g.oldImportsNeededByTargetFile,g.targetFileImportsFromOldFile,V,_,T),!aN(c)&&M.length&&d.insertStatementsInNewFile(c.fileName,M,s),T.writeFixes(d,re);let ge=gNs(s,h.all,Do(g.oldFileImportsFromTargetFile.keys()),ee);aN(c)&&c.statements.length>0?wNs(d,_,ge,c,h):aN(c)?d.insertNodesAtEndOfFile(c,ge,!1):d.insertStatementsInNewFile(c.fileName,T.hasFixes()?[4,...ge]:ge,s)}function bHt(s,c,g,d,h){let _=s.getCompilerOptions().configFile;if(!_)return;let S=iu(Ro(g,"..",d)),R=i1(_.fileName,S,h),T=_.statements[0]&&Gs(_.statements[0].expression,og),W=T&&de(T.properties,V=>fm(V)&&Zg(V.name)&&V.name.text==="files");W&&OI(W.initializer)&&c.insertNodeInListAfter(_,Ei(W.initializer.elements),me.createStringLiteral(R),W.initializer.elements)}function nNs(s,c,g){for(let{first:d,afterLast:h}of c)g.deleteNodeRangeExcludingEnd(s,d,h)}function iNs(s,c,g,d){for(let h of s.statements)k(c,h)||asn(h,_=>{csn(_,S=>{g.has(S.symbol)&&d.removeExistingImport(S)})})}function EHt(s,c,g,d){let h=Yie();c.forEach((_,S)=>{if(S.declarations)for(let R of S.declarations){if(!NHt(R))continue;let T=CNs(R);if(!T)continue;let W=Asn(R);h(W)&&_Ns(s,W,T,g,d)}})}function sNs(s,c,g,d,h,_,S){let R=c.getTypeChecker();for(let T of c.getSourceFiles())if(T!==d)for(let W of T.statements)asn(W,V=>{if(R.getSymbolAtLocation(lNs(V))!==d.symbol)return;let M=_e=>{let Ee=hg(_e.parent)?zVe(R,_e.parent):FC(R.getSymbolAtLocation(_e),R);return!!Ee&&h.has(Ee)};ANs(T,V,s,M);let ee=AE(Mo(Xc(d.fileName,c.getCurrentDirectory())),_);if(ld(!c.useCaseSensitiveFileNames())(ee,T.fileName)===0)return;let re=WF.getModuleSpecifier(c.getCompilerOptions(),T,T.fileName,ee,z3(c,g)),ge=INs(V,Xde(re,S),M);ge&&s.insertNodeAfter(T,W,ge);let Ie=oNs(V);Ie&&aNs(s,T,R,h,re,Ie,V,S)})}function oNs(s){switch(s.kind){case 273:return s.importClause&&s.importClause.namedBindings&&s.importClause.namedBindings.kind===275?s.importClause.namedBindings.name:void 0;case 272:return s.name;case 261:return Gs(s.name,Ir);default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function aNs(s,c,g,d,h,_,S,R){let T=b1e(h,99),W=!1,V=[];if(Kp.Core.eachSymbolReferenceInFile(_,g,c,M=>{jo(M.parent)&&(W=W||!!g.resolveName(T,M,-1,!0),d.has(g.getSymbolAtLocation(M.parent.name))&&V.push(M))}),V.length){let M=W?GU(T,c):T;for(let ee of V)s.replaceNode(c,ee,me.createIdentifier(M));s.insertNodeAfter(c,S,cNs(S,T,h,R))}}function cNs(s,c,g,d){let h=me.createIdentifier(c),_=Xde(g,d);switch(s.kind){case 273:return me.createImportDeclaration(void 0,me.createImportClause(void 0,void 0,me.createNamespaceImport(h)),_,void 0);case 272:return me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(_));case 261:return me.createVariableDeclaration(h,void 0,void 0,osn(_));default:return pe.assertNever(s,`Unexpected node kind ${s.kind}`)}}function osn(s){return me.createCallExpression(me.createIdentifier("require"),void 0,[s])}function lNs(s){return s.kind===273?s.moduleSpecifier:s.kind===272?s.moduleReference.expression:s.initializer.arguments[0]}function asn(s,c){if(Mf(s))Zg(s.moduleSpecifier)&&c(s);else if(km(s))ZF(s.moduleReference)&&mA(s.moduleReference.expression)&&c(s);else if(Ch(s))for(let g of s.declarationList.declarations)g.initializer&&ay(g.initializer,!0)&&c(g)}function csn(s,c){var g,d,h,_,S;if(s.kind===273){if((g=s.importClause)!=null&&g.name&&c(s.importClause),((h=(d=s.importClause)==null?void 0:d.namedBindings)==null?void 0:h.kind)===275&&c(s.importClause.namedBindings),((S=(_=s.importClause)==null?void 0:_.namedBindings)==null?void 0:S.kind)===276)for(let R of s.importClause.namedBindings.elements)c(R)}else if(s.kind===272)c(s);else if(s.kind===261){if(s.name.kind===80)c(s);else if(s.name.kind===207)for(let R of s.name.elements)Ir(R.name)&&c(R)}}function SHt(s,c,g,d){for(let[h,_]of s){let S=cPe(h,Mg(d.getCompilerOptions())),R=h.name==="default"&&h.parent?1:0;g.addImportForNonExistentExport(S,c,R,h.flags,_)}}function uNs(s,c,g,d=2){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(s,void 0,c,g)],d))}function gNs(s,c,g,d){return er(c,h=>{if(usn(h)&&!lsn(s,h,d)&&RHt(h,_=>{var S;return g.includes(pe.checkDefined((S=Gs(_,mE))==null?void 0:S.symbol))})){let _=dNs(JA(h),d);if(_)return _}return JA(h)})}function lsn(s,c,g,d){var h;return g?!VC(c)&&Ga(c,32)||!!(d&&s.symbol&&((h=s.symbol.exports)!=null&&h.has(d.escapedText))):!!s.symbol&&!!s.symbol.exports&&vHt(c).some(_=>s.symbol.exports.has(Ap(_)))}function ANs(s,c,g,d){if(c.kind===273&&c.importClause){let{name:h,namedBindings:_}=c.importClause;if((!h||d(h))&&(!_||_.kind===276&&_.elements.length!==0&&_.elements.every(S=>d(S.name))))return g.delete(s,c)}csn(c,h=>{h.name&&Ir(h.name)&&d(h.name)&&g.delete(s,h)})}function usn(s){return pe.assert(ll(s.parent),"Node parent should be a SourceFile"),fsn(s)||Ch(s)}function dNs(s,c){return c?[pNs(s)]:fNs(s)}function pNs(s){let c=LB(s)?Nn([me.createModifier(95)],$R(s)):void 0;switch(s.kind){case 263:return me.updateFunctionDeclaration(s,c,s.asteriskToken,s.name,s.typeParameters,s.parameters,s.type,s.body);case 264:let g=oQ(s)?Rb(s):void 0;return me.updateClassDeclaration(s,Nn(g,c),s.name,s.typeParameters,s.heritageClauses,s.members);case 244:return me.updateVariableStatement(s,c,s.declarationList);case 268:return me.updateModuleDeclaration(s,c,s.name,s.body);case 267:return me.updateEnumDeclaration(s,c,s.name,s.members);case 266:return me.updateTypeAliasDeclaration(s,c,s.name,s.typeParameters,s.type);case 265:return me.updateInterfaceDeclaration(s,c,s.name,s.typeParameters,s.heritageClauses,s.members);case 272:return me.updateImportEqualsDeclaration(s,c,s.isTypeOnly,s.name,s.moduleReference);case 245:return pe.fail();default:return pe.assertNever(s,`Unexpected declaration kind ${s.kind}`)}}function fNs(s){return[s,...vHt(s).map(gsn)]}function gsn(s){return me.createExpressionStatement(me.createBinaryExpression(me.createPropertyAccessExpression(me.createIdentifier("exports"),me.createIdentifier(s)),64,me.createIdentifier(s)))}function vHt(s){switch(s.kind){case 263:case 264:return[s.name.text];case 244:return Xt(s.declarationList.declarations,c=>Ir(c.name)?c.name.text:void 0);case 268:case 267:case 266:case 265:case 272:return E;case 245:return pe.fail("Can't export an ExpressionStatement");default:return pe.assertNever(s,`Unexpected decl kind ${s.kind}`)}}function INs(s,c,g){switch(s.kind){case 273:{let d=s.importClause;if(!d)return;let h=d.name&&g(d.name)?d.name:void 0,_=d.namedBindings&&hNs(d.namedBindings,g);return h||_?me.createImportDeclaration(void 0,me.createImportClause(d.phaseModifier,h,_),JA(c),void 0):void 0}case 272:return g(s.name)?s:void 0;case 261:{let d=mNs(s.name,g);return d?uNs(d,s.type,osn(c),s.parent.flags):void 0}default:return pe.assertNever(s,`Unexpected import kind ${s.kind}`)}}function hNs(s,c){if(s.kind===275)return c(s.name)?s:void 0;{let g=s.elements.filter(d=>c(d.name));return g.length?me.createNamedImports(g):void 0}}function mNs(s,c){switch(s.kind){case 80:return c(s)?s:void 0;case 208:return s;case 207:{let g=s.elements.filter(d=>d.propertyName||!Ir(d.name)||c(d.name));return g.length?me.createObjectBindingPattern(g):void 0}}}function CNs(s){return VC(s)?Gs(s.expression.left.name,Ir):Gs(s.name,Ir)}function Asn(s){switch(s.kind){case 261:return s.parent.parent;case 209:return Asn(Ma(s.parent.parent,c=>nc(c)||hg(c)));default:return s}}function _Ns(s,c,g,d,h){if(!lsn(s,c,h,g))if(h)VC(c)||d.insertExportModifier(s,c);else{let _=vHt(c);_.length!==0&&d.insertNodesAfter(s,c,_.map(gsn))}}function BHt(s,c,g,d){let h=c.getTypeChecker();if(d){let _=yPe(s,d.all,h),S=Mo(s.fileName),R=tz(s.fileName);return Ro(S,SNs(vNs(_.oldFileImportsFromTargetFile,_.movedSymbols),R,S,g))+R}return""}function yNs(s){let{file:c}=s,g=QVe(Vz(s)),{statements:d}=c,h=Se(d,W=>W.end>g.pos);if(h===-1)return;let _=d[h],S=Isn(c,_);S&&(h=S.start);let R=Se(d,W=>W.end>=g.end,h);R!==-1&&g.end<=d[R].getStart()&&R--;let T=Isn(c,d[R]);return T&&(R=T.end),{toMove:d.slice(h,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function T1e(s){let c=yNs(s);if(c===void 0)return;let g=[],d=[],{toMove:h,afterLast:_}=c;return Fn(h,bNs,(S,R)=>{for(let T=S;T!!(c.transformFlags&2))}function bNs(s){return!ENs(s)&&!nS(s)}function ENs(s){switch(s.kind){case 273:return!0;case 272:return!Ga(s,32);case 244:return s.declarationList.declarations.every(c=>!!c.initializer&&ay(c.initializer,!0));default:return!1}}function yPe(s,c,g,d=new Set,h){var _;let S=new Set,R=new Map,T=new Map,W=ee(wHt(c));W&&R.set(W,[!1,Gs((_=W.declarations)==null?void 0:_[0],re=>uy(re)||Vw(re)||Zx(re)||km(re)||hg(re)||nc(re))]);for(let re of c)RHt(re,ge=>{S.add(pe.checkDefined(VC(ge)?g.getSymbolAtLocation(ge.expression.left):ge.symbol,"Need a symbol here"))});let V=new Set;for(let re of c)THt(re,g,h,(ge,Ie)=>{if(!jt(ge.declarations))return;if(d.has(FC(ge,g))){V.add(ge);return}let _e=de(ge.declarations,Pnt);if(_e){let Ee=R.get(ge);R.set(ge,[(Ee===void 0||Ee)&&Ie,Gs(_e,Ne=>uy(Ne)||Vw(Ne)||Zx(Ne)||km(Ne)||hg(Ne)||nc(Ne))])}else!S.has(ge)&&ue(ge.declarations,Ee=>NHt(Ee)&&BNs(Ee)===s)&&T.set(ge,Ie)});for(let re of R.keys())V.add(re);let M=new Map;for(let re of s.statements)k(c,re)||(W&&re.transformFlags&2&&V.delete(W),THt(re,g,h,(ge,Ie)=>{S.has(ge)&&M.set(ge,Ie),V.delete(ge)}));return{movedSymbols:S,targetFileImportsFromOldFile:T,oldFileImportsFromTargetFile:M,oldImportsNeededByTargetFile:R,unusedImportsFromOldFile:V};function ee(re){if(re===void 0)return;let ge=g.getJsxNamespace(re),Ie=g.resolveName(ge,re,1920,!0);return Ie&&jt(Ie.declarations,Pnt)?Ie:void 0}}function SNs(s,c,g,d){let h=s;for(let _=1;;_++){let S=Ro(g,h+c);if(!d.fileExists(S))return h;h=`${s}.${_}`}}function vNs(s,c){return SB(s,Ort)||SB(c,Ort)||"newFile"}function THt(s,c,g,d){s.forEachChild(function h(_){if(Ir(_)&&!HT(_)){if(g&&!cy(g,_))return;let S=c.getSymbolAtLocation(_);S&&d(S,JL(_))}else _.forEachChild(h)})}function RHt(s,c){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return c(s);case 244:return X(s.declarationList.declarations,g=>psn(g.name,c));case 245:{let{expression:g}=s;return fo(g)&&nI(g)===1?c(s):void 0}}}function Pnt(s){switch(s.kind){case 272:case 277:case 274:case 275:return!0;case 261:return dsn(s);case 209:return nc(s.parent.parent)&&dsn(s.parent.parent);default:return!1}}function dsn(s){return ll(s.parent.parent.parent)&&!!s.initializer&&ay(s.initializer,!0)}function NHt(s){return fsn(s)&&ll(s.parent)||nc(s)&&ll(s.parent.parent.parent)}function BNs(s){return nc(s)?s.parent.parent.parent:s.parent}function psn(s,c){switch(s.kind){case 80:return c(Ma(s.parent,g=>nc(g)||hg(g)));case 208:case 207:return X(s.elements,g=>yp(g)?void 0:psn(g.name,c));default:return pe.assertNever(s,`Unexpected name kind ${s.kind}`)}}function fsn(s){switch(s.kind){case 263:case 264:case 268:case 267:case 266:case 265:case 272:return!0;default:return!1}}function wNs(s,c,g,d,h){var _;let S=new Set,R=(_=d.symbol)==null?void 0:_.exports;if(R){let W=c.getTypeChecker(),V=new Map;for(let M of h.all)usn(M)&&Ga(M,32)&&RHt(M,ee=>{var re;let ge=mE(ee)?(re=R.get(ee.symbol.escapedName))==null?void 0:re.declarations:void 0,Ie=X(ge,_e=>Gh(_e)?_e:R0(_e)?Gs(_e.parent.parent,Gh):void 0);Ie&&Ie.moduleSpecifier&&V.set(Ie,(V.get(Ie)||new Set).add(ee))});for(let[M,ee]of Do(V))if(M.exportClause&&mv(M.exportClause)&&B(M.exportClause.elements)){let re=M.exportClause.elements,ge=Me(re,Ie=>de(FC(Ie.symbol,W).declarations,_e=>NHt(_e)&&ee.has(_e))===void 0);if(B(ge)===0){s.deleteNode(d,M),S.add(M);continue}B(ge)Gh(W)&&!!W.moduleSpecifier&&!S.has(W));T?s.insertNodesBefore(d,T,g,!0):s.insertNodesAfter(d,d.statements[d.statements.length-1],g)}function Isn(s,c){if(kd(c)){let g=c.symbol.declarations;if(g===void 0||B(g)<=1||!k(g,c))return;let d=g[0],h=g[B(g)-1],_=Xt(g,T=>ms(T)===s&&Lc(T)?T:void 0),S=Se(s.statements,T=>T.end>=h.end),R=Se(s.statements,T=>T.end>=d.end);return{toMove:_,start:R,end:S}}}function DHt(s,c,g){let d=new Set;for(let h of s.imports){let _=v7(h);if(Mf(_)&&_.importClause&&_.importClause.namedBindings&&yN(_.importClause.namedBindings))for(let S of _.importClause.namedBindings.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(FC(R,g))}if(y7(_.parent)&&Km(_.parent.name))for(let S of _.parent.name.elements){let R=g.getSymbolAtLocation(S.propertyName||S.name);R&&d.add(FC(R,g))}}for(let h of c)THt(h,g,void 0,_=>{let S=FC(_,g);S.valueDeclaration&&ms(S.valueDeclaration).path===s.path&&d.add(S)});return d}function MF(s){return s.error!==void 0}function e5(s,c){return c?s.substr(0,c.length)===c:!0}function kHt(s,c,g,d){return jo(s)&&!xa(c)&&!g.resolveName(s.name.text,s,111551,!1)&&!p(s.name)&&!iv(s.name)?s.name.text:GU(xa(c)?"newProperty":"newLocal",d)}function xHt(s,c,g,d,h,_){c.forEach(([S,R],T)=>{var W;let V=FC(T,d);d.isUnknownSymbol(V)?_.addVerbatimImport(pe.checkDefined(R??ji((W=T.declarations)==null?void 0:W[0],d7))):V.parent===void 0?(pe.assert(R!==void 0,"expected module symbol to have a declaration"),_.addImportForModuleSymbol(T,S,R)):_.addImportFromExportedSymbol(V,S,R)}),SHt(g,s.fileName,_,h)}var bPe="Inline variable",GHt=Bu(Z.Inline_variable),FHt={name:bPe,description:GHt,kind:"refactor.inline.variable"};Px(bPe,{kinds:[FHt.kind],getAvailableActions(s){let{file:c,program:g,preferences:d,startPosition:h,triggerReason:_}=s,S=hsn(c,h,_==="invoked",g);return S?Oz.isRefactorErrorInfo(S)?d.provideRefactorNotApplicableReason?[{name:bPe,description:GHt,actions:[{...FHt,notApplicableReason:S.error}]}]:E:[{name:bPe,description:GHt,actions:[FHt]}]:E},getEditsForAction(s,c){pe.assert(c===bPe,"Unexpected refactor invoked");let{file:g,program:d,startPosition:h}=s,_=hsn(g,h,!0,d);if(!_||Oz.isRefactorErrorInfo(_))return;let{references:S,declaration:R,replacement:T}=_;return{edits:xo.ChangeTracker.with(s,V=>{for(let M of S){let ee=Zg(T)&&Ir(M)&&gv(M.parent);ee&&die(ee)&&!MI(ee.parent.parent)?RNs(V,g,ee,T):V.replaceNode(g,M,TNs(M,T))}V.delete(g,R)})}}});function hsn(s,c,g,d){var h,_;let S=d.getTypeChecker(),R=Lb(s,c),T=R.parent;if(Ir(R)){if(xne(T)&&h7(T)&&Ir(T.name)){if(((h=S.getMergedSymbol(T.symbol).declarations)==null?void 0:h.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(msn(T))return;let W=Csn(T,S,s);return W&&{references:W,declaration:T,replacement:T.initializer}}if(g){let W=S.resolveName(R.text,R,111551,!1);if(W=W&&S.getMergedSymbol(W),((_=W?.declarations)==null?void 0:_.length)!==1)return{error:Bu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let V=W.declarations[0];if(!xne(V)||!h7(V)||!Ir(V.name)||msn(V))return;let M=Csn(V,S,s);return M&&{references:M,declaration:V,replacement:V.initializer}}return{error:Bu(Z.Could_not_find_variable_to_inline)}}}function msn(s){let c=Ma(s.parent.parent,Ch);return jt(c.modifiers,y)}function Csn(s,c,g){let d=[],h=Kp.Core.eachSymbolReferenceInFile(s.name,c,g,_=>{if(Kp.isWriteAccessForReference(_)&&!a0(_.parent)||R0(_.parent)||Cf(_.parent)||Fw(_.parent)||sl(s,_.pos))return!0;d.push(_)});return d.length===0||h?void 0:d}function TNs(s,c){c=JA(c);let{parent:g}=s;return un(g)&&(x7(c)NNs(c.file,c.program,d,_,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function NNs(s,c,g,d,h,_,S){let R=c.getTypeChecker(),T=yPe(s,g.all,R),W=BHt(s,c,h,g),V=dPe(W,s.externalModuleIndicator?99:s.commonJsModuleIndicator?1:void 0,c,h),M=x0.createImportAdder(s,_.program,_.preferences,_.host),ee=x0.createImportAdder(V,_.program,_.preferences,_.host);yHt(s,V,T,d,g,c,h,S,ee,M),bHt(c,d,s.fileName,W,JD(h))}var DNs={},VHt="Convert overload list to single signature",_sn=Bu(Z.Convert_overload_list_to_single_signature),ysn={name:VHt,description:_sn,kind:"refactor.rewrite.function.overloadList"};Px(VHt,{kinds:[ysn.kind],getEditsForAction:xNs,getAvailableActions:kNs});function kNs(s){let{file:c,startPosition:g,program:d}=s;return Esn(c,g,d)?[{name:VHt,description:_sn,actions:[ysn]}]:E}function xNs(s){let{file:c,startPosition:g,program:d}=s,h=Esn(c,g,d);if(!h)return;let _=d.getTypeChecker(),S=h[h.length-1],R=S;switch(S.kind){case 174:{R=me.updateMethodSignature(S,S.modifiers,S.name,S.questionToken,S.typeParameters,W(h),S.type);break}case 175:{R=me.updateMethodDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.questionToken,S.typeParameters,W(h),S.type,S.body);break}case 180:{R=me.updateCallSignature(S,S.typeParameters,W(h),S.type);break}case 177:{R=me.updateConstructorDeclaration(S,S.modifiers,W(h),S.body);break}case 181:{R=me.updateConstructSignature(S,S.typeParameters,W(h),S.type);break}case 263:{R=me.updateFunctionDeclaration(S,S.modifiers,S.asteriskToken,S.name,S.typeParameters,W(h),S.type,S.body);break}default:return pe.failBadSyntaxKind(S,"Unhandled signature kind in overload list conversion refactoring")}if(R===S)return;return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,ee=>{ee.replaceNodeRange(c,h[0],h[h.length-1],R)})};function W(ee){let re=ee[ee.length-1];return kd(re)&&re.body&&(ee=ee.slice(0,ee.length-1)),me.createNodeArray([me.createParameterDeclaration(void 0,me.createToken(26),"args",void 0,me.createUnionTypeNode(At(ee,V)))])}function V(ee){let re=At(ee.parameters,M);return ti(me.createTupleTypeNode(re),jt(re,ge=>!!B(k3(ge)))?0:1)}function M(ee){pe.assert(Ir(ee.name));let re=gn(me.createNamedTupleMember(ee.dotDotDotToken,ee.name,ee.questionToken,ee.type||me.createKeywordTypeNode(133)),ee),ge=ee.symbol&&ee.symbol.getDocumentationComment(_);if(ge){let Ie=D1e(ge);Ie.length&&kB(re,[{text:`* -${Ie.split(` -`).map(_e=>` * ${_e}`).join(` -`)} - `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function bsn(s){switch(s.kind){case 174:case 175:case 180:case 177:case 181:case 263:return!0}return!1}function Esn(s,c,g){let d=Jc(s,c),h=ji(d,bsn);if(!h||kd(h)&&h.body&&Mie(h.body,c))return;let _=g.getTypeChecker(),S=h.symbol;if(!S)return;let R=S.declarations;if(B(R)<=1||!ue(R,ee=>ms(ee)===s)||!bsn(R[0]))return;let T=R[0].kind;if(!ue(R,ee=>ee.kind===T))return;let W=R;if(jt(W,ee=>!!ee.typeParameters||jt(ee.parameters,re=>!!re.modifiers||!Ir(re.name))))return;let V=Xt(W,ee=>_.getSignatureFromDeclaration(ee));if(B(V)!==B(R))return;let M=_.getReturnTypeOfSignature(V[0]);if(ue(V,ee=>_.getReturnTypeOfSignature(ee)===M))return W}var PHt="Add or remove braces in an arrow function",Ssn=Bu(Z.Add_or_remove_braces_in_an_arrow_function),Wnt={name:"Add braces to arrow function",description:Bu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},SPe={name:"Remove braces from arrow function",description:Bu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};Px(PHt,{kinds:[SPe.kind],getEditsForAction:FNs,getAvailableActions:GNs});function GNs(s){let{file:c,startPosition:g,triggerReason:d}=s,h=vsn(c,g,d==="invoked");return h?MF(h)?s.preferences.provideRefactorNotApplicableReason?[{name:PHt,description:Ssn,actions:[{...Wnt,notApplicableReason:h.error},{...SPe,notApplicableReason:h.error}]}]:E:[{name:PHt,description:Ssn,actions:[h.addBraces?Wnt:SPe]}]:E}function FNs(s,c){let{file:g,startPosition:d}=s,h=vsn(g,d);pe.assert(h&&!MF(h),"Expected applicable refactor info");let{expression:_,returnStatement:S,func:R}=h,T;if(c===Wnt.name){let V=me.createReturnStatement(_);T=me.createBlock([V],!0),Uie(_,V,g,3,!0)}else if(c===SPe.name&&S){let V=_||me.createVoidZero();T=ePe(V)?me.createParenthesizedExpression(V):V,m1e(S,T,g,3,!1),Uie(S,T,g,3,!1),jde(S,T,g,3,!1)}else pe.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>{V.replaceNode(g,R.body,T)})}}function vsn(s,c,g=!0,d){let h=Jc(s,c),_=A1(h);if(!_)return{error:Bu(Z.Could_not_find_a_containing_arrow_function)};if(!lA(_))return{error:Bu(Z.Containing_function_is_not_an_arrow_function)};if(!(!cy(_,h)||cy(_.body,h)&&!g)){if(e5(Wnt.kind,d)&&un(_.body))return{func:_,addBraces:!0,expression:_.body};if(e5(SPe.kind,d)&&$u(_.body)&&_.body.statements.length===1){let S=ma(_.body.statements);if(I2(S)){let R=S.expression&&og(aU(S.expression,!1))?me.createParenthesizedExpression(S.expression):S.expression;return{func:_,addBraces:!1,expression:R,returnStatement:S}}}}}var ZNs={},Bsn="Convert arrow function or function expression",LNs=Bu(Z.Convert_arrow_function_or_function_expression),vPe={name:"Convert to anonymous function",description:Bu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},BPe={name:"Convert to named function",description:Bu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},wPe={name:"Convert to arrow function",description:Bu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};Px(Bsn,{kinds:[vPe.kind,BPe.kind,wPe.kind],getEditsForAction:PNs,getAvailableActions:VNs});function VNs(s){let{file:c,startPosition:g,program:d,kind:h}=s,_=Tsn(c,g,d);if(!_)return E;let{selectedVariableDeclaration:S,func:R}=_,T=[],W=[];if(e5(BPe.kind,h)){let V=S||lA(R)&&nc(R.parent)?void 0:Bu(Z.Could_not_convert_to_named_function);V?W.push({...BPe,notApplicableReason:V}):T.push(BPe)}if(e5(vPe.kind,h)){let V=!S&&lA(R)?void 0:Bu(Z.Could_not_convert_to_anonymous_function);V?W.push({...vPe,notApplicableReason:V}):T.push(vPe)}if(e5(wPe.kind,h)){let V=UA(R)?void 0:Bu(Z.Could_not_convert_to_arrow_function);V?W.push({...wPe,notApplicableReason:V}):T.push(wPe)}return[{name:Bsn,description:LNs,actions:T.length===0&&s.preferences.provideRefactorNotApplicableReason?W:T}]}function PNs(s,c){let{file:g,startPosition:d,program:h}=s,_=Tsn(g,d,h);if(!_)return;let{func:S}=_,R=[];switch(c){case vPe.name:R.push(...HNs(s,S));break;case BPe.name:let T=MNs(S);if(!T)return;R.push(...YNs(s,S,T));break;case wPe.name:if(!UA(S))return;R.push(...QNs(s,S));break;default:return pe.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function wsn(s){let c=!1;return s.forEachChild(function g(d){if(Oie(d)){c=!0;return}!xa(d)&&!ih(d)&&!UA(d)&&Lu(d,g)}),c}function Tsn(s,c,g){let d=Jc(s,c),h=g.getTypeChecker(),_=ONs(s,h,d.parent);if(_&&!wsn(_.body)&&!h.containsArgumentsReference(_))return{selectedVariableDeclaration:!0,func:_};let S=A1(d);if(S&&(UA(S)||lA(S))&&!cy(S.body,d)&&!wsn(S.body)&&!h.containsArgumentsReference(S))return UA(S)&&Nsn(s,h,S)?void 0:{selectedVariableDeclaration:!1,func:S}}function WNs(s){return nc(s)||u_(s)&&s.declarations.length===1}function ONs(s,c,g){if(!WNs(g))return;let h=(nc(g)?g:ma(g.declarations)).initializer;if(h&&(lA(h)||UA(h)&&!Nsn(s,c,h)))return h}function Rsn(s){if(un(s)){let c=me.createReturnStatement(s),g=s.getSourceFile();return gn(c,s),Vy(c),m1e(s,c,g,void 0,!0),me.createBlock([c],!0)}else return s}function MNs(s){let c=s.parent;if(!nc(c)||!h7(c))return;let g=c.parent,d=g.parent;if(!(!u_(g)||!Ch(d)||!Ir(c.name)))return{variableDeclaration:c,variableDeclarationList:g,statement:d,name:c.name}}function HNs(s,c){let{file:g}=s,d=Rsn(c.body),h=me.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return xo.ChangeTracker.with(s,_=>_.replaceNode(g,c,h))}function YNs(s,c,g){let{file:d}=s,h=Rsn(c.body),{variableDeclaration:_,variableDeclarationList:S,statement:R,name:T}=g;Hbe(R);let W=Hc(_)&32|o_(c),V=me.createModifiersFromModifierFlags(W),M=me.createFunctionDeclaration(B(V)?V:void 0,c.asteriskToken,T,c.typeParameters,c.parameters,c.type,h);return S.declarations.length===1?xo.ChangeTracker.with(s,ee=>ee.replaceNode(d,R,M)):xo.ChangeTracker.with(s,ee=>{ee.delete(d,_),ee.insertNodeAfter(d,R,M)})}function QNs(s,c){let{file:g}=s,h=c.body.statements[0],_;XNs(c.body,h)?(_=h.expression,Vy(_),xU(h,_)):_=c.body;let S=me.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,me.createToken(39),_);return xo.ChangeTracker.with(s,R=>R.replaceNode(g,c,S))}function XNs(s,c){return s.statements.length===1&&I2(c)&&!!c.expression}function Nsn(s,c,g){return!!g.name&&Kp.Core.isSymbolReferencedInFile(g.name,c,s)}var JNs={},Ont="Convert parameters to destructured object",UNs=1,Dsn=Bu(Z.Convert_parameters_to_destructured_object),ksn={name:Ont,description:Dsn,kind:"refactor.rewrite.parameters.toDestructured"};Px(Ont,{kinds:[ksn.kind],getEditsForAction:jNs,getAvailableActions:KNs});function KNs(s){let{file:c,startPosition:g}=s;return n0(c)||!Fsn(c,g,s.program.getTypeChecker())?E:[{name:Ont,description:Dsn,actions:[ksn]}]}function jNs(s,c){pe.assert(c===Ont,"Unexpected action name");let{file:g,startPosition:d,program:h,cancellationToken:_,host:S}=s,R=Fsn(g,d,h.getTypeChecker());if(!R||!_)return;let T=qNs(R,h,_);return T.valid?{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,V=>zNs(g,h,S,V,R,T))}:{edits:[]}}function zNs(s,c,g,d,h,_){let S=_.signature,R=At(Psn(h,c,g),V=>JA(V));if(S){let V=At(Psn(S,c,g),M=>JA(M));W(S,V)}W(h,R);let T=cl(_.functionCalls,(V,M)=>Zt(V.pos,M.pos));for(let V of T)if(V.arguments&&V.arguments.length){let M=JA(cDs(h,V.arguments),!0);d.replaceNodeRange(ms(V),ma(V.arguments),Ei(V.arguments),M,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}function W(V,M){d.replaceNodeRangeWithNodes(s,ma(V.parameters),Ei(V.parameters),M,{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include})}}function qNs(s,c,g){let d=uDs(s),h=Tc(s)?lDs(s):[],_=io([...d,...h],yg),S=c.getTypeChecker(),R=er(_,M=>Kp.getReferenceEntriesForNode(-1,M,c,c.getSourceFiles(),g)),T=W(R);return ue(T.declarations,M=>k(_,M))||(T.valid=!1),T;function W(M){let ee={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:ee,valid:!0},ge=At(d,V),Ie=At(h,V),_e=Tc(s),Ee=At(d,Ne=>WHt(Ne,S));for(let Ne of M){if(Ne.kind===Kp.EntryKind.Span){re.valid=!1;continue}if(k(Ee,V(Ne.node))){if(rDs(Ne.node.parent)){re.signature=Ne.node.parent;continue}let Ze=Gsn(Ne);if(Ze){re.functionCalls.push(Ze);continue}}let Te=WHt(Ne.node,S);if(Te&&k(Ee,Te)){let Ze=OHt(Ne);if(Ze){re.declarations.push(Ze);continue}}if(k(ge,V(Ne.node))||Ode(Ne.node)){if(xsn(Ne))continue;let We=OHt(Ne);if(We){re.declarations.push(We);continue}let Ue=Gsn(Ne);if(Ue){re.functionCalls.push(Ue);continue}}if(_e&&k(Ie,V(Ne.node))){if(xsn(Ne))continue;let We=OHt(Ne);if(We){re.declarations.push(We);continue}let Ue=$Ns(Ne);if(Ue){ee.accessExpressions.push(Ue);continue}if(pm(s.parent)){let $e=eDs(Ne);if($e){ee.typeUsages.push($e);continue}}}re.valid=!1}return re}function V(M){let ee=S.getSymbolAtLocation(M);return ee&&qrt(ee,S)}}function WHt(s,c){let g=k1e(s);if(g){let d=c.getContextualTypeForObjectLiteralElement(g),h=d?.getSymbol();if(h&&!(iI(h)&6))return h}}function xsn(s){let c=s.node;if(uy(c.parent)||Vw(c.parent)||km(c.parent)||Zx(c.parent)||R0(c.parent)||Cf(c.parent))return c}function OHt(s){if(jh(s.node.parent))return s.node}function Gsn(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 214:case 215:let d=Gs(g,av);if(d&&d.expression===c)return d;break;case 212:let h=Gs(g,jo);if(h&&h.parent&&h.name===c){let S=Gs(h.parent,av);if(S&&S.expression===h)return S}break;case 213:let _=Gs(g,Yg);if(_&&_.parent&&_.argumentExpression===c){let S=Gs(_.parent,av);if(S&&S.expression===_)return S}break}}}function $Ns(s){if(s.node.parent){let c=s.node,g=c.parent;switch(g.kind){case 212:let d=Gs(g,jo);if(d&&d.expression===c)return d;break;case 213:let h=Gs(g,Yg);if(h&&h.expression===c)return h;break}}}function eDs(s){let c=s.node;if(DU(c)===2||dAe(c.parent))return c}function Fsn(s,c,g){let d=Hie(s,c),h=Wge(d);if(!tDs(d)&&h&&nDs(h,g)&&cy(h,d)&&!(h.body&&cy(h.body,d)))return h}function tDs(s){let c=ji(s,l3);if(c){let g=ji(c,d=>!l3(d));return!!g&&kd(g)}return!1}function rDs(s){return hl(s)&&(g_(s.parent)||mh(s.parent))}function nDs(s,c){var g;if(!iDs(s.parameters,c))return!1;switch(s.kind){case 263:return Zsn(s)&&TPe(s,c);case 175:if(og(s.parent)){let d=WHt(s.name,c);return((g=d?.declarations)==null?void 0:g.length)===1&&TPe(s,c)}return TPe(s,c);case 177:return pm(s.parent)?Zsn(s.parent)&&TPe(s,c):Lsn(s.parent.parent)&&TPe(s,c);case 219:case 220:return Lsn(s.parent)}return!1}function TPe(s,c){return!!s.body&&!c.isImplementationOfOverload(s)}function Zsn(s){return s.name?!0:!!Qie(s,90)}function iDs(s,c){return oDs(s)>=UNs&&ue(s,g=>sDs(g,c))}function sDs(s,c){if(EB(s)){let g=c.getTypeAtLocation(s);if(!c.isArrayType(g)&&!c.isTupleType(g))return!1}return!s.modifiers&&Ir(s.name)}function Lsn(s){return nc(s)&&rI(s)&&Ir(s.name)&&!s.type}function MHt(s){return s.length>0&&Oie(s[0].name)}function oDs(s){return MHt(s)?s.length-1:s.length}function Vsn(s){return MHt(s)&&(s=me.createNodeArray(s.slice(1),s.hasTrailingComma)),s}function aDs(s,c){return Ir(c)&&c2(c)===s?me.createShorthandPropertyAssignment(s):me.createPropertyAssignment(s,c)}function cDs(s,c){let g=Vsn(s.parameters),d=EB(Ei(g)),h=d?c.slice(0,g.length-1):c,_=At(h,(R,T)=>{let W=Mnt(g[T]),V=aDs(W,R);return Vy(V.name),fm(V)&&Vy(V.initializer),xU(R,V),V});if(d&&c.length>=g.length){let R=c.slice(g.length-1),T=me.createPropertyAssignment(Mnt(Ei(g)),me.createArrayLiteralExpression(R));_.push(T)}return me.createObjectLiteralExpression(_,!1)}function Psn(s,c,g){let d=c.getTypeChecker(),h=Vsn(s.parameters),_=At(h,V),S=me.createObjectBindingPattern(_),R=M(h),T;ue(h,ge)&&(T=me.createObjectLiteralExpression());let W=me.createParameterDeclaration(void 0,void 0,S,void 0,R,T);if(MHt(s.parameters)){let Ie=s.parameters[0],_e=me.createParameterDeclaration(void 0,void 0,Ie.name,void 0,Ie.type);return Vy(_e.name),xU(Ie.name,_e.name),Ie.type&&(Vy(_e.type),xU(Ie.type,_e.type)),me.createNodeArray([_e,W])}return me.createNodeArray([W]);function V(Ie){let _e=me.createBindingElement(void 0,void 0,Mnt(Ie),EB(Ie)&&ge(Ie)?me.createArrayLiteralExpression():Ie.initializer);return Vy(_e),Ie.initializer&&_e.initializer&&xU(Ie.initializer,_e.initializer),_e}function M(Ie){let _e=At(Ie,ee);return Gw(me.createTypeLiteralNode(_e),1)}function ee(Ie){let _e=Ie.type;!_e&&(Ie.initializer||EB(Ie))&&(_e=re(Ie));let Ee=me.createPropertySignature(void 0,Mnt(Ie),ge(Ie)?me.createToken(58):Ie.questionToken,_e);return Vy(Ee),xU(Ie.name,Ee.name),Ie.type&&Ee.type&&xU(Ie.type,Ee.type),Ee}function re(Ie){let _e=d.getTypeAtLocation(Ie);return qde(_e,Ie,c,g)}function ge(Ie){if(EB(Ie)){let _e=d.getTypeAtLocation(Ie);return!d.isTupleType(_e)}return d.isOptionalParameter(Ie)}}function Mnt(s){return c2(s.name)}function lDs(s){switch(s.parent.kind){case 264:let c=s.parent;return c.name?[c.name]:[pe.checkDefined(Qie(c,90),"Nameless class declaration should be a default export")];case 232:let d=s.parent,h=s.parent.parent,_=d.name;return _?[_,h.name]:[h.name]}}function uDs(s){switch(s.kind){case 263:return s.name?[s.name]:[pe.checkDefined(Qie(s,90),"Nameless function declaration should be a default export")];case 175:return[s.name];case 177:let g=pe.checkDefined(qd(s,137,s.getSourceFile()),"Constructor declaration should have constructor keyword");return s.parent.kind===232?[s.parent.parent.name,g]:[g];case 220:return[s.parent.name];case 219:return s.name?[s.name,s.parent.name]:[s.parent.name];default:return pe.assertNever(s,`Unexpected function declaration kind ${s.kind}`)}}var gDs={},HHt="Convert to template string",YHt=Bu(Z.Convert_to_template_string),QHt={name:HHt,description:YHt,kind:"refactor.rewrite.string"};Px(HHt,{kinds:[QHt.kind],getEditsForAction:dDs,getAvailableActions:ADs});function ADs(s){let{file:c,startPosition:g}=s,d=Wsn(c,g),h=XHt(d),_=Zg(h),S={name:HHt,description:YHt,actions:[]};return _&&s.triggerReason!=="invoked"?E:MT(h)&&(_||fo(h)&&JHt(h).isValidConcatenation)?(S.actions.push(QHt),[S]):s.preferences.provideRefactorNotApplicableReason?(S.actions.push({...QHt,notApplicableReason:Bu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[S]):E}function Wsn(s,c){let g=Jc(s,c),d=XHt(g);return!JHt(d).isValidConcatenation&&gI(d.parent)&&fo(d.parent.parent)?d.parent.parent:g}function dDs(s,c){let{file:g,startPosition:d}=s,h=Wsn(g,d);switch(c){case YHt:return{edits:pDs(s,h)};default:return pe.fail("invalid action")}}function pDs(s,c){let g=XHt(c),d=s.file,h=CDs(JHt(g),d),_=n2(d.text,g.end);if(_){let S=_[_.length-1],R={pos:_[0].pos,end:S.end};return xo.ChangeTracker.with(s,T=>{T.deleteRange(d,R),T.replaceNode(d,g,h)})}else return xo.ChangeTracker.with(s,S=>S.replaceNode(d,g,h))}function fDs(s){return!(s.operatorToken.kind===64||s.operatorToken.kind===65)}function XHt(s){return ji(s.parent,g=>{switch(g.kind){case 212:case 213:return!1;case 229:case 227:return!(fo(g.parent)&&fDs(g.parent));default:return"quit"}})||s}function JHt(s){let c=S=>{if(!fo(S))return{nodes:[S],operators:[],validOperators:!0,hasString:Zg(S)||GP(S)};let{nodes:R,operators:T,hasString:W,validOperators:V}=c(S.left);if(!(W||Zg(S.right)||FF(S.right)))return{nodes:[S],operators:[],hasString:!1,validOperators:!0};let M=S.operatorToken.kind===40,ee=V&&M;return R.push(S.right),T.push(S.operatorToken),{nodes:R,operators:T,hasString:!0,validOperators:ee}},{nodes:g,operators:d,validOperators:h,hasString:_}=c(s);return{nodes:g,operators:d,isValidConcatenation:h&&_}}var IDs=(s,c)=>(g,d)=>{g(d,h)=>{for(;d.length>0;){let _=d.shift();jde(s[_],h,c,3,!1),g(_,h)}};function mDs(s){return s.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function Osn(s){let c=tQ(s)||uie(s)?-2:-1;return xp(s).slice(1,c)}function Msn(s,c){let g=[],d="",h="";for(;s{Hsn(Te);let We=Ze===ee.templateSpans.length-1,Ue=Te.literal.text+(We?ge:""),$e=Osn(Te.literal)+(We?Ie:"");return me.createTemplateSpan(Te.expression,Ee&&We?me.createTemplateTail(Ue,$e):me.createTemplateMiddle(Ue,$e))});W.push(...Ne)}else{let Ne=Ee?me.createTemplateTail(ge,Ie):me.createTemplateMiddle(ge,Ie);h(_e,Ne),W.push(me.createTemplateSpan(ee,Ne))}}return me.createTemplateExpression(V,W)}function Hsn(s){let c=s.getSourceFile();jde(s,s.expression,c,3,!1),m1e(s.expression,s.expression,c,3,!1)}function _Ds(s){return gI(s)&&(Hsn(s),s=s.expression),s}var yDs={},Hnt="Convert to optional chain expression",UHt=Bu(Z.Convert_to_optional_chain_expression),KHt={name:Hnt,description:UHt,kind:"refactor.rewrite.expression.optionalChain"};Px(Hnt,{kinds:[KHt.kind],getEditsForAction:EDs,getAvailableActions:bDs});function bDs(s){let c=Ysn(s,s.triggerReason==="invoked");return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Hnt,description:UHt,actions:[{...KHt,notApplicableReason:c.error}]}]:E:[{name:Hnt,description:UHt,actions:[KHt]}]:E}function EDs(s,c){let g=Ysn(s);return pe.assert(g&&!MF(g),"Expected applicable refactor info"),{edits:xo.ChangeTracker.with(s,h=>DDs(s.file,s.program.getTypeChecker(),h,g,c)),renameFilename:void 0,renameLocation:void 0}}function Ynt(s){return fo(s)||Lw(s)}function SDs(s){return VC(s)||I2(s)||Ch(s)}function Qnt(s){return Ynt(s)||SDs(s)}function Ysn(s,c=!0){let{file:g,program:d}=s,h=Vz(s),_=h.length===0;if(_&&!c)return;let S=Jc(g,h.start),R=Hde(g,h.start+h.length),T=wA(S.pos,R&&R.end>=S.pos?R.getEnd():S.getEnd()),W=_?RDs(S):TDs(S,T),V=W&&Qnt(W)?NDs(W):void 0;if(!V)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let M=d.getTypeChecker();return Lw(V)?vDs(V,M):BDs(V)}function vDs(s,c){let g=s.condition,d=zHt(s.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:Bu(Z.Could_not_find_convertible_access_expression)};if((jo(g)||Ir(g))&&jHt(g,d.expression))return{finalExpression:d,occurrences:[g],expression:s};if(fo(g)){let h=Qsn(d.expression,g);return h?{finalExpression:d,occurrences:h,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}}function BDs(s){if(s.operatorToken.kind!==56)return{error:Bu(Z.Can_only_convert_logical_AND_access_chains)};let c=zHt(s.right);if(!c)return{error:Bu(Z.Could_not_find_convertible_access_expression)};let g=Qsn(c.expression,s.left);return g?{finalExpression:c,occurrences:g,expression:s}:{error:Bu(Z.Could_not_find_matching_access_expressions)}}function Qsn(s,c){let g=[];for(;fo(c)&&c.operatorToken.kind===56;){let h=jHt(QA(s),QA(c.right));if(!h)break;g.push(h),s=h,c=c.left}let d=jHt(s,c);return d&&g.push(d),g.length>0?g:void 0}function jHt(s,c){if(!(!Ir(c)&&!jo(c)&&!Yg(c)))return wDs(s,c)?c:void 0}function wDs(s,c){for(;(Zl(s)||jo(s)||Yg(s))&&R1e(s)!==R1e(c);)s=s.expression;for(;jo(s)&&jo(c)||Yg(s)&&Yg(c);){if(R1e(s)!==R1e(c))return!1;s=s.expression,c=c.expression}return Ir(s)&&Ir(c)&&s.getText()===c.getText()}function R1e(s){if(Ir(s)||d1(s))return s.getText();if(jo(s))return R1e(s.name);if(Yg(s))return R1e(s.argumentExpression)}function TDs(s,c){for(;s.parent;){if(Qnt(s)&&c.length!==0&&s.end>=c.start+c.length)return s;s=s.parent}}function RDs(s){for(;s.parent;){if(Qnt(s)&&!Qnt(s.parent))return s;s=s.parent}}function NDs(s){if(Ynt(s))return s;if(Ch(s)){let c=m3(s),g=c?.initializer;return g&&Ynt(g)?g:void 0}return s.expression&&Ynt(s.expression)?s.expression:void 0}function zHt(s){if(s=QA(s),fo(s))return zHt(s.left);if((jo(s)||Yg(s)||Zl(s))&&!GC(s))return s}function Xsn(s,c,g){if(jo(c)||Yg(c)||Zl(c)){let d=Xsn(s,c.expression,g),h=g.length>0?g[g.length-1]:void 0,_=h?.getText()===c.expression.getText();if(_&&g.pop(),Zl(c))return _?me.createCallChain(d,me.createToken(29),c.typeArguments,c.arguments):me.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(jo(c))return _?me.createPropertyAccessChain(d,me.createToken(29),c.name):me.createPropertyAccessChain(d,c.questionDotToken,c.name);if(Yg(c))return _?me.createElementAccessChain(d,me.createToken(29),c.argumentExpression):me.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function DDs(s,c,g,d,h){let{finalExpression:_,occurrences:S,expression:R}=d,T=S[S.length-1],W=Xsn(c,_,S);W&&(jo(W)||Yg(W)||Zl(W))&&(fo(R)?g.replaceNodeRange(s,T,_,W):Lw(R)&&g.replaceNode(s,R,me.createBinaryExpression(W,me.createToken(61),R.whenFalse)))}var Jsn={};o(Jsn,{Messages:()=>F_,RangeFacts:()=>jsn,getRangeToExtract:()=>qHt,getRefactorActionsToExtractSymbol:()=>Usn,getRefactorEditsToExtractSymbol:()=>Ksn});var tpe="Extract Symbol",rpe={name:"Extract Constant",description:Bu(Z.Extract_constant),kind:"refactor.extract.constant"},npe={name:"Extract Function",description:Bu(Z.Extract_function),kind:"refactor.extract.function"};Px(tpe,{kinds:[rpe.kind,npe.kind],getEditsForAction:Ksn,getAvailableActions:Usn});function Usn(s){let c=s.kind,g=qHt(s.file,Vz(s),s.triggerReason==="invoked"),d=g.targetRange;if(d===void 0){if(!g.errors||g.errors.length===0||!s.preferences.provideRefactorNotApplicableReason)return E;let Ie=[];return e5(npe.kind,c)&&Ie.push({name:tpe,description:npe.description,actions:[{...npe,notApplicableReason:ge(g.errors)}]}),e5(rpe.kind,c)&&Ie.push({name:tpe,description:rpe.description,actions:[{...rpe,notApplicableReason:ge(g.errors)}]}),Ie}let{affectedTextRange:h,extractions:_}=LDs(d,s);if(_===void 0)return E;let S=[],R=new Map,T,W=[],V=new Map,M,ee=0;for(let{functionExtraction:Ie,constantExtraction:_e}of _){if(e5(npe.kind,c)){let Ee=Ie.description;Ie.errors.length===0?R.has(Ee)||(R.set(Ee,!0),S.push({description:Ee,name:`function_scope_${ee}`,kind:npe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):T||(T={description:Ee,name:`function_scope_${ee}`,notApplicableReason:ge(Ie.errors),kind:npe.kind})}if(e5(rpe.kind,c)){let Ee=_e.description;_e.errors.length===0?V.has(Ee)||(V.set(Ee,!0),W.push({description:Ee,name:`constant_scope_${ee}`,kind:rpe.kind,range:{start:{line:Ra(s.file,h.pos).line,offset:Ra(s.file,h.pos).character},end:{line:Ra(s.file,h.end).line,offset:Ra(s.file,h.end).character}}})):M||(M={description:Ee,name:`constant_scope_${ee}`,notApplicableReason:ge(_e.errors),kind:rpe.kind})}ee++}let re=[];return S.length?re.push({name:tpe,description:Bu(Z.Extract_function),actions:S}):s.preferences.provideRefactorNotApplicableReason&&T&&re.push({name:tpe,description:Bu(Z.Extract_function),actions:[T]}),W.length?re.push({name:tpe,description:Bu(Z.Extract_constant),actions:W}):s.preferences.provideRefactorNotApplicableReason&&M&&re.push({name:tpe,description:Bu(Z.Extract_constant),actions:[M]}),re.length?re:E;function ge(Ie){let _e=Ie[0].messageText;return typeof _e!="string"&&(_e=_e.messageText),_e}}function Ksn(s,c){let d=qHt(s.file,Vz(s)).targetRange,h=/^function_scope_(\d+)$/.exec(c);if(h){let S=+h[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the function scope index"),FDs(d,s,S)}let _=/^constant_scope_(\d+)$/.exec(c);if(_){let S=+_[1];return pe.assert(isFinite(S),"Expected to parse a finite number from the constant scope index"),ZDs(d,s,S)}pe.fail("Unrecognized action name")}var F_;(s=>{function c(g){return{message:g,code:0,category:3,key:g}}s.cannotExtractRange=c("Cannot extract range."),s.cannotExtractImport=c("Cannot extract import statement."),s.cannotExtractSuper=c("Cannot extract super call."),s.cannotExtractJSDoc=c("Cannot extract JSDoc."),s.cannotExtractEmpty=c("Cannot extract empty range."),s.expressionExpected=c("expression expected."),s.uselessConstantType=c("No reason to extract constant of type."),s.statementOrExpressionExpected=c("Statement or expression expected."),s.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),s.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),s.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),s.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),s.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),s.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),s.cannotExtractIdentifier=c("Select more than a single identifier."),s.cannotExtractExportedEntity=c("Cannot extract exported declaration"),s.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),s.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),s.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),s.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),s.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),s.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),s.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(F_||(F_={}));var jsn=(s=>(s[s.None=0]="None",s[s.HasReturn=1]="HasReturn",s[s.IsGenerator=2]="IsGenerator",s[s.IsAsyncFunction=4]="IsAsyncFunction",s[s.UsesThis=8]="UsesThis",s[s.UsesThisInFunction=16]="UsesThisInFunction",s[s.InStaticRegion=32]="InStaticRegion",s))(jsn||{});function qHt(s,c,g=!0){let{length:d}=c;if(d===0&&!g)return{errors:[qh(s,c.start,d,F_.cannotExtractEmpty)]};let h=d===0&&g,_=K5t(s,c.start),S=Hde(s,Rs(c)),R=_&&S&&g?kDs(_,S,s):c,T=h?nks(_):f1e(_,s,R),W=h?T:f1e(S,s,R),V=0,M;if(!T||!W)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};if(T.flags&16777216)return{errors:[qh(s,c.start,d,F_.cannotExtractJSDoc)]};if(T.parent!==W.parent)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};if(T!==W){if(!Pz(T.parent))return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};let Ne=[];for(let Te of T.parent.statements){if(Te===T||Ne.length){let Ze=Ee(Te);if(Ze)return{errors:Ze};Ne.push(Te)}if(Te===W)break}return Ne.length?{targetRange:{range:Ne,facts:V,thisNode:M}}:{errors:[qh(s,c.start,d,F_.cannotExtractRange)]}}if(I2(T)&&!T.expression)return{errors:[qh(s,c.start,d,F_.cannotExtractRange)]};let ee=ge(T),re=Ie(ee)||Ee(ee);if(re)return{errors:re};return{targetRange:{range:xDs(ee),facts:V,thisNode:M}};function ge(Ne){if(I2(Ne)){if(Ne.expression)return Ne.expression}else if(Ch(Ne)||u_(Ne)){let Te=Ch(Ne)?Ne.declarationList.declarations:Ne.declarations,Ze=0,We;for(let Ue of Te)Ue.initializer&&(Ze++,We=Ue.initializer);if(Ze===1)return We}else if(nc(Ne)&&Ne.initializer)return Ne.initializer;return Ne}function Ie(Ne){if(Ir(VC(Ne)?Ne.expression:Ne))return[mo(Ne,F_.cannotExtractIdentifier)]}function _e(Ne,Te){let Ze=Ne;for(;Ze!==Te;){if(Ze.kind===173){cg(Ze)&&(V|=32);break}else if(Ze.kind===170){A1(Ze).kind===177&&(V|=32);break}else Ze.kind===175&&cg(Ze)&&(V|=32);Ze=Ze.parent}}function Ee(Ne){let Te;if((Tt=>{Tt[Tt.None=0]="None",Tt[Tt.Break=1]="Break",Tt[Tt.Continue=2]="Continue",Tt[Tt.Return=4]="Return"})(Te||(Te={})),pe.assert(Ne.pos<=Ne.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),pe.assert(!wB(Ne.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Lc(Ne)&&!(MT(Ne)&&zsn(Ne))&&!nYt(Ne))return[mo(Ne,F_.statementOrExpressionExpected)];if(Ne.flags&33554432)return[mo(Ne,F_.cannotExtractAmbientBlock)];let Ze=hC(Ne);Ze&&_e(Ne,Ze);let We,Ue=4,$e;if(Ye(Ne),V&8){let Tt=r0(Ne,!1,!1);(Tt.kind===263||Tt.kind===175&&Tt.parent.kind===211||Tt.kind===219)&&(V|=16)}return We;function Ye(Tt){if(We)return!0;if(jh(Tt)){let Qe=Tt.kind===261?Tt.parent.parent:Tt;if(Ga(Qe,32))return(We||(We=[])).push(mo(Tt,F_.cannotExtractExportedEntity)),!0}switch(Tt.kind){case 273:return(We||(We=[])).push(mo(Tt,F_.cannotExtractImport)),!0;case 278:return(We||(We=[])).push(mo(Tt,F_.cannotExtractExportedEntity)),!0;case 108:if(Tt.parent.kind===214){let Qe=hC(Tt);if(Qe===void 0||Qe.pos=c.start+c.length)return(We||(We=[])).push(mo(Tt,F_.cannotExtractSuper)),!0}else V|=8,M=Tt;break;case 220:Lu(Tt,function Qe(mt){if(Oie(mt))V|=8,M=Tt;else{if(xa(mt)||bu(mt)&&!lA(mt))return!1;Lu(mt,Qe)}});case 264:case 263:ll(Tt.parent)&&Tt.parent.externalModuleIndicator===void 0&&(We||(We=[])).push(mo(Tt,F_.functionWillNotBeVisibleInTheNewScope));case 232:case 219:case 175:case 177:case 178:case 179:return!1}let ot=Ue;switch(Tt.kind){case 246:Ue&=-5;break;case 259:Ue=0;break;case 242:Tt.parent&&Tt.parent.kind===259&&Tt.parent.finallyBlock===Tt&&(Ue=4);break;case 298:case 297:Ue|=1;break;default:VT(Tt,!1)&&(Ue|=3);break}switch(Tt.kind){case 198:case 110:V|=8,M=Tt;break;case 257:{let Qe=Tt.label;($e||($e=[])).push(Qe.escapedText),Lu(Tt,Ye),$e.pop();break}case 253:case 252:{let Qe=Tt.label;Qe?k($e,Qe.escapedText)||(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):Ue&(Tt.kind===253?1:2)||(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 224:V|=4;break;case 230:V|=2;break;case 254:Ue&4?V|=1:(We||(We=[])).push(mo(Tt,F_.cannotExtractRangeContainingConditionalReturnStatement));break;default:Lu(Tt,Ye);break}Ue=ot}}}function kDs(s,c,g){let d=s.getStart(g),h=c.getEnd();return g.text.charCodeAt(h)===59&&h++,{start:d,length:h-d}}function xDs(s){if(Lc(s))return[s];if(MT(s))return VC(s.parent)?[s.parent]:s;if(nYt(s))return s}function $Ht(s){return lA(s)?n7(s.body):kd(s)||ll(s)||_N(s)||xa(s)}function GDs(s){let c=n9(s.range)?ma(s.range):s.range;if(s.facts&8&&!(s.facts&16)){let d=hC(c);if(d){let h=ji(c,kd);return h?[h,d]:[d]}}let g=[];for(;;)if(c=c.parent,c.kind===170&&(c=ji(c,d=>kd(d)).parent),$Ht(c)&&(g.push(c),c.kind===308))return g}function FDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,functionErrorsPerScope:S,exposedVariableDeclarations:R}}=eYt(s,c);return pe.assert(!S[g].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),HDs(h,d[g],_[g],R,s,c)}function ZDs(s,c,g){let{scopes:d,readsAndWrites:{target:h,usagesPerScope:_,constantErrorsPerScope:S,exposedVariableDeclarations:R}}=eYt(s,c);pe.assert(!S[g].length,"The extraction went missing? How?"),pe.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let T=un(h)?h:h.statements[0].expression;return YDs(T,d[g],_[g],s.facts,c)}function LDs(s,c){let{scopes:g,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:h,constantErrorsPerScope:_}}=eYt(s,c),S=g.map((R,T)=>{let W=VDs(R),V=PDs(R),M=kd(R)?WDs(R):xa(R)?ODs(R):MDs(R),ee,re;return M===1?(ee=dN(Bu(Z.Extract_to_0_in_1_scope),[W,"global"]),re=dN(Bu(Z.Extract_to_0_in_1_scope),[V,"global"])):M===0?(ee=dN(Bu(Z.Extract_to_0_in_1_scope),[W,"module"]),re=dN(Bu(Z.Extract_to_0_in_1_scope),[V,"module"])):(ee=dN(Bu(Z.Extract_to_0_in_1),[W,M]),re=dN(Bu(Z.Extract_to_0_in_1),[V,M])),T===0&&!xa(R)&&(re=dN(Bu(Z.Extract_to_0_in_enclosing_scope),[V])),{functionExtraction:{description:ee,errors:h[T]},constantExtraction:{description:re,errors:_[T]}}});return{affectedTextRange:d,extractions:S}}function eYt(s,c){let{file:g}=c,d=GDs(s),h=tks(s,g),_=rks(s,d,h,g,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:h,readsAndWrites:_}}function VDs(s){return kd(s)?"inner function":xa(s)?"method":"function"}function PDs(s){return xa(s)?"readonly field":"constant"}function WDs(s){switch(s.kind){case 177:return"constructor";case 219:case 263:return s.name?`function '${s.name.text}'`:tnt;case 220:return"arrow function";case 175:return`method '${s.name.getText()}'`;case 178:return`'get ${s.name.getText()}'`;case 179:return`'set ${s.name.getText()}'`;default:pe.assertNever(s,`Unexpected scope kind ${s.kind}`)}}function ODs(s){return s.kind===264?s.name?`class '${s.name.text}'`:"anonymous class declaration":s.name?`class expression '${s.name.text}'`:"anonymous class expression"}function MDs(s){return s.kind===269?`namespace '${s.parent.name.getText()}'`:s.externalModuleIndicator?0:1}function HDs(s,c,{usages:g,typeParameterUsages:d,substitutions:h},_,S,R){let T=R.program.getTypeChecker(),W=Mg(R.program.getCompilerOptions()),V=x0.createImportAdder(R.file,R.program,R.preferences,R.host),M=c.getSourceFile(),ee=GU(xa(c)?"newMethod":"newFunction",M),re=wo(c),ge=me.createIdentifier(ee),Ie,_e=[],Ee=[],Ne;g.forEach((nt,Dt)=>{let tr;if(!re){let Gr=T.getTypeOfSymbolAtLocation(nt.symbol,nt.node);Gr=T.getBaseTypeOfLiteralType(Gr),tr=x0.typeToAutoImportableTypeNode(T,V,Gr,c,W,1,8)}let ur=me.createParameterDeclaration(void 0,void 0,Dt,void 0,tr);_e.push(ur),nt.usage===2&&(Ne||(Ne=[])).push(nt),Ee.push(me.createIdentifier(Dt))});let Te=Do(d.values(),nt=>({type:nt,declaration:XDs(nt,R.startPosition)}));Te.sort(JDs);let Ze=Te.length===0?void 0:Xt(Te,({declaration:nt})=>nt),We=Ze!==void 0?Ze.map(nt=>me.createTypeReferenceNode(nt.name,void 0)):void 0;if(un(s)&&!re){let nt=T.getContextualType(s);Ie=T.typeToTypeNode(nt,c,1,8)}let{body:Ue,returnValueProperty:$e}=KDs(s,_,Ne,h,!!(S.facts&1));Vy(Ue);let Ye,Tt=!!(S.facts&16);if(xa(c)){let nt=re?[]:[me.createModifier(123)];S.facts&32&&nt.push(me.createModifier(126)),S.facts&4&&nt.push(me.createModifier(134)),Ye=me.createMethodDeclaration(nt.length?nt:void 0,S.facts&2?me.createToken(42):void 0,ge,void 0,Ze,_e,Ie,Ue)}else Tt&&_e.unshift(me.createParameterDeclaration(void 0,void 0,"this",void 0,T.typeToTypeNode(T.getTypeAtLocation(S.thisNode),c,1,8),void 0)),Ye=me.createFunctionDeclaration(S.facts&4?[me.createToken(134)]:void 0,S.facts&2?me.createToken(42):void 0,ge,Ze,_e,Ie,Ue);let ot=xo.ChangeTracker.fromContext(R),Qe=(n9(S.range)?Ei(S.range):S.range).end,mt=qDs(Qe,c);mt?ot.insertNodeBefore(R.file,mt,Ye,!0):ot.insertNodeAtEndOfScope(R.file,c,Ye),V.writeFixes(ot);let ht=[],_t=UDs(c,S,ee);Tt&&Ee.unshift(me.createIdentifier("this"));let Rt=me.createCallExpression(Tt?me.createPropertyAccessExpression(_t,"call"):_t,We,Ee);if(S.facts&2&&(Rt=me.createYieldExpression(me.createToken(42),Rt)),S.facts&4&&(Rt=me.createAwaitExpression(Rt)),rYt(s)&&(Rt=me.createJsxExpression(void 0,Rt)),_.length&&!Ne)if(pe.assert(!$e,"Expected no returnValueProperty"),pe.assert(!(S.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),_.length===1){let nt=_[0];ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(nt.name),void 0,JA(nt.type),Rt)],nt.parent.flags)))}else{let nt=[],Dt=[],tr=_[0].parent.flags,ur=!1;for(let dt of _){nt.push(me.createBindingElement(void 0,void 0,JA(dt.name)));let pr=T.typeToTypeNode(T.getBaseTypeOfLiteralType(T.getTypeAtLocation(dt)),c,1,8);Dt.push(me.createPropertySignature(void 0,dt.symbol.name,void 0,pr)),ur=ur||dt.type!==void 0,tr=tr&dt.parent.flags}let Gr=ur?me.createTypeLiteralNode(Dt):void 0;Gr&&ti(Gr,1),ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(me.createObjectBindingPattern(nt),void 0,Gr,Rt)],tr)))}else if(_.length||Ne){if(_.length)for(let Dt of _){let tr=Dt.parent.flags;tr&2&&(tr=tr&-3|1),ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Dt.symbol.name,void 0,Gt(Dt.type))],tr)))}$e&&ht.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration($e,void 0,Gt(Ie))],1)));let nt=tYt(_,Ne);$e&&nt.unshift(me.createShorthandPropertyAssignment($e)),nt.length===1?(pe.assert(!$e,"Shouldn't have returnValueProperty here"),ht.push(me.createExpressionStatement(me.createAssignment(nt[0].name,Rt))),S.facts&1&&ht.push(me.createReturnStatement())):(ht.push(me.createExpressionStatement(me.createAssignment(me.createObjectLiteralExpression(nt),Rt))),$e&&ht.push(me.createReturnStatement(me.createIdentifier($e))))}else S.facts&1?ht.push(me.createReturnStatement(Rt)):n9(S.range)?ht.push(me.createExpressionStatement(Rt)):ht.push(Rt);n9(S.range)?ot.replaceNodeRangeWithNodes(R.file,ma(S.range),Ei(S.range),ht):ot.replaceNodeWithNodes(R.file,S.range,ht);let Lt=ot.getChanges(),Pt=(n9(S.range)?ma(S.range):S.range).getSourceFile().fileName,_r=h1e(Lt,Pt,ee,!1);return{renameFilename:Pt,renameLocation:_r,edits:Lt};function Gt(nt){if(nt===void 0)return;let Dt=JA(nt),tr=Dt;for(;fv(tr);)tr=tr.type;return aS(tr)&&de(tr.types,ur=>ur.kind===157)?Dt:me.createUnionTypeNode([Dt,me.createKeywordTypeNode(157)])}}function YDs(s,c,{substitutions:g},d,h){let _=h.program.getTypeChecker(),S=c.getSourceFile(),R=kHt(s,c,_,S),T=wo(c),W=T||!_.isContextSensitive(s)?void 0:_.typeToTypeNode(_.getContextualType(s),c,1,8),V=jDs(QA(s),g);({variableType:W,initializer:V}=Ie(W,V)),Vy(V);let M=xo.ChangeTracker.fromContext(h);if(xa(c)){pe.assert(!T,"Cannot extract to a JS class");let _e=[];_e.push(me.createModifier(123)),d&32&&_e.push(me.createModifier(126)),_e.push(me.createModifier(148));let Ee=me.createPropertyDeclaration(_e,R,void 0,W,V),Ne=me.createPropertyAccessExpression(d&32?me.createIdentifier(c.name.getText()):me.createThis(),me.createIdentifier(R));rYt(s)&&(Ne=me.createJsxExpression(void 0,Ne));let Te=s.pos,Ze=$Ds(Te,c);M.insertNodeBefore(h.file,Ze,Ee,!0),M.replaceNode(h.file,s,Ne)}else{let _e=me.createVariableDeclaration(R,void 0,W,V),Ee=QDs(s,c);if(Ee){M.insertNodeBefore(h.file,Ee,_e);let Ne=me.createIdentifier(R);M.replaceNode(h.file,s,Ne)}else if(s.parent.kind===245&&c===ji(s,$Ht)){let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2));M.replaceNode(h.file,s.parent,Ne)}else{let Ne=me.createVariableStatement(void 0,me.createVariableDeclarationList([_e],2)),Te=eks(s,c);if(Te.pos===0?M.insertNodeAtTopOfFile(h.file,Ne,!1):M.insertNodeBefore(h.file,Te,Ne,!1),s.parent.kind===245)M.delete(h.file,s.parent);else{let Ze=me.createIdentifier(R);rYt(s)&&(Ze=me.createJsxExpression(void 0,Ze)),M.replaceNode(h.file,s,Ze)}}}let ee=M.getChanges(),re=s.getSourceFile().fileName,ge=h1e(ee,re,R,!0);return{renameFilename:re,renameLocation:ge,edits:ee};function Ie(_e,Ee){if(_e===void 0)return{variableType:_e,initializer:Ee};if(!UA(Ee)&&!lA(Ee)||Ee.typeParameters)return{variableType:_e,initializer:Ee};let Ne=_.getTypeAtLocation(s),Te=Ps(_.getSignaturesOfType(Ne,0));if(!Te)return{variableType:_e,initializer:Ee};if(Te.getTypeParameters())return{variableType:_e,initializer:Ee};let Ze=[],We=!1;for(let Ue of Ee.parameters)if(Ue.type)Ze.push(Ue);else{let $e=_.getTypeAtLocation(Ue);$e===_.getAnyType()&&(We=!0),Ze.push(me.updateParameterDeclaration(Ue,Ue.modifiers,Ue.dotDotDotToken,Ue.name,Ue.questionToken,Ue.type||_.typeToTypeNode($e,c,1,8),Ue.initializer))}if(We)return{variableType:_e,initializer:Ee};if(_e=void 0,lA(Ee))Ee=me.updateArrowFunction(Ee,LB(s)?$R(s):void 0,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1,8),Ee.equalsGreaterThanToken,Ee.body);else{if(Te&&Te.thisParameter){let Ue=Nc(Ze);if(!Ue||Ir(Ue.name)&&Ue.name.escapedText!=="this"){let $e=_.getTypeOfSymbolAtLocation(Te.thisParameter,s);Ze.splice(0,0,me.createParameterDeclaration(void 0,void 0,"this",void 0,_.typeToTypeNode($e,c,1,8)))}}Ee=me.updateFunctionExpression(Ee,LB(s)?$R(s):void 0,Ee.asteriskToken,Ee.name,Ee.typeParameters,Ze,Ee.type||_.typeToTypeNode(Te.getReturnType(),c,1),Ee.body)}return{variableType:_e,initializer:Ee}}}function QDs(s,c){let g;for(;s!==void 0&&s!==c;){if(nc(s)&&s.initializer===g&&u_(s.parent)&&s.parent.declarations.length>1)return s;g=s,s=s.parent}}function XDs(s,c){let g,d=s.symbol;if(d&&d.declarations)for(let h of d.declarations)(g===void 0||h.pos0;if($u(s)&&!_&&d.size===0)return{body:me.createBlock(s.statements,!0),returnValueProperty:void 0};let S,R=!1,T=me.createNodeArray($u(s)?s.statements.slice(0):[Lc(s)?s:me.createReturnStatement(QA(s))]);if(_||d.size){let V=Ws(T,W,Lc).slice();if(_&&!h&&Lc(s)){let M=tYt(c,g);M.length===1?V.push(me.createReturnStatement(M[0].name)):V.push(me.createReturnStatement(me.createObjectLiteralExpression(M)))}return{body:me.createBlock(V,!0),returnValueProperty:S}}else return{body:me.createBlock(T,!0),returnValueProperty:void 0};function W(V){if(!R&&I2(V)&&_){let M=tYt(c,g);return V.expression&&(S||(S="__return"),M.unshift(me.createPropertyAssignment(S,Mr(V.expression,W,un)))),M.length===1?me.createReturnStatement(M[0].name):me.createReturnStatement(me.createObjectLiteralExpression(M))}else{let M=R;R=R||kd(V)||xa(V);let ee=d.get(rd(V).toString()),re=ee?JA(ee):_s(V,W,void 0);return R=M,re}}}function jDs(s,c){return c.size?g(s):s;function g(d){let h=c.get(rd(d).toString());return h?JA(h):_s(d,g,void 0)}}function zDs(s){if(kd(s)){let c=s.body;if($u(c))return c.statements}else{if(_N(s)||ll(s))return s.statements;if(xa(s))return s.members;}return E}function qDs(s,c){return de(zDs(c),g=>g.pos>=s&&kd(g)&&!Tc(g))}function $Ds(s,c){let g=c.members;pe.assert(g.length>0,"Found no members");let d,h=!0;for(let _ of g){if(_.pos>s)return d||g[0];if(h&&!pi(_)){if(d!==void 0)return _;h=!1}d=_}return d===void 0?pe.fail():d}function eks(s,c){pe.assert(!xa(c));let g;for(let d=s;d!==c;d=d.parent)$Ht(d)&&(g=d);for(let d=(g||s).parent;;d=d.parent){if(Pz(d)){let h;for(let _ of d.statements){if(_.pos>s.pos)break;h=_}return!h&&fie(d)?(pe.assert(ode(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):pe.checkDefined(h,"prevStatement failed to get set")}pe.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function tYt(s,c){let g=At(s,h=>me.createShorthandPropertyAssignment(h.symbol.name)),d=At(c,h=>me.createShorthandPropertyAssignment(h.symbol.name));return g===void 0?d:d===void 0?g:g.concat(d)}function n9(s){return Ki(s)}function tks(s,c){return n9(s.range)?{pos:ma(s.range).getStart(c),end:Ei(s.range).getEnd()}:s.range}function rks(s,c,g,d,h,_){let S=new Map,R=[],T=[],W=[],V=[],M=[],ee=new Map,re=[],ge,Ie=n9(s.range)?s.range.length===1&&VC(s.range[0])?s.range[0].expression:void 0:s.range,_e;if(Ie===void 0){let ht=s.range,_t=ma(ht).getStart(),Rt=Ei(ht).end;_e=qh(d,_t,Rt-_t,F_.expressionExpected)}else h.getTypeAtLocation(Ie).flags&147456&&(_e=mo(Ie,F_.uselessConstantType));for(let ht of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),T.push(new Map),W.push([]);let _t=[];_e&&_t.push(_e),xa(ht)&&wo(ht)&&_t.push(mo(ht,F_.cannotExtractToJSClass)),lA(ht)&&!$u(ht.body)&&_t.push(mo(ht,F_.cannotExtractToExpressionArrowFunction)),V.push(_t)}let Ee=new Map,Ne=n9(s.range)?me.createBlock(s.range):s.range,Te=n9(s.range)?ma(s.range):s.range,Ze=We(Te);if($e(Ne),Ze&&!n9(s.range)&&!EN(s.range)){let ht=h.getContextualType(s.range);Ue(ht)}if(S.size>0){let ht=new Map,_t=0;for(let Rt=Te;Rt!==void 0&&_t{R[_t].typeParameterUsages.set(Ke,Lt)}),_t++),Ure(Rt))for(let Lt of ZD(Rt)){let Ke=h.getTypeAtLocation(Lt);S.has(Ke.id.toString())&&ht.set(Ke.id.toString(),Ke)}pe.assert(_t===c.length,"Should have iterated all scopes")}if(M.length){let ht=PJ(c[0],c[0].parent)?c[0]:tS(c[0]);Lu(ht,ot)}for(let ht=0;ht0&&(_t.usages.size>0||_t.typeParameterUsages.size>0)){let Ke=n9(s.range)?s.range[0]:s.range;V[ht].push(mo(Ke,F_.cannotAccessVariablesFromNestedScopes))}s.facts&16&&xa(c[ht])&&W[ht].push(mo(s.thisNode,F_.cannotExtractFunctionsContainingThisToMethod));let Rt=!1,Lt;if(R[ht].usages.forEach(Ke=>{Ke.usage===2&&(Rt=!0,Ke.symbol.flags&106500&&Ke.symbol.valueDeclaration&&Gb(Ke.symbol.valueDeclaration,8)&&(Lt=Ke.symbol.valueDeclaration))}),pe.assert(n9(s.range)||re.length===0,"No variable declarations expected if something was extracted"),Rt&&!n9(s.range)){let Ke=mo(s.range,F_.cannotWriteInExpression);W[ht].push(Ke),V[ht].push(Ke)}else if(Lt&&ht>0){let Ke=mo(Lt,F_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);W[ht].push(Ke),V[ht].push(Ke)}else if(ge){let Ke=mo(ge,F_.cannotExtractExportedEntity);W[ht].push(Ke),V[ht].push(Ke)}}return{target:Ne,usagesPerScope:R,functionErrorsPerScope:W,constantErrorsPerScope:V,exposedVariableDeclarations:re};function We(ht){return!!ji(ht,_t=>Ure(_t)&&ZD(_t).length!==0)}function Ue(ht){let _t=h.getSymbolWalker(()=>(_.throwIfCancellationRequested(),!0)),{visitedTypes:Rt}=_t.walkType(ht);for(let Lt of Rt)Lt.isTypeParameter()&&S.set(Lt.id.toString(),Lt)}function $e(ht,_t=1){if(Ze){let Rt=h.getTypeAtLocation(ht);Ue(Rt)}if(jh(ht)&&ht.symbol&&M.push(ht),Jm(ht))$e(ht.left,2),$e(ht.right);else if(iN(ht))$e(ht.operand,2);else if(jo(ht)||Yg(ht))Lu(ht,$e);else if(Ir(ht)){if(!ht.parent||zi(ht.parent)&&ht!==ht.parent.left||jo(ht.parent)&&ht!==ht.parent.expression)return;Ye(ht,_t,ww(ht))}else Lu(ht,$e)}function Ye(ht,_t,Rt){let Lt=Tt(ht,_t,Rt);if(Lt)for(let Ke=0;Ke=_t)return Ke;if(Ee.set(Ke,_t),Pt){for(let nt of R)nt.usages.get(ht.text)&&nt.usages.set(ht.text,{usage:_t,symbol:Lt,node:ht});return Ke}let _r=Lt.getDeclarations(),Gt=_r&&de(_r,nt=>nt.getSourceFile()===d);if(Gt&&!c1e(g,Gt.getStart(),Gt.end)){if(s.facts&2&&_t===2){let nt=mo(ht,F_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let Dt of W)Dt.push(nt);for(let Dt of V)Dt.push(nt)}for(let nt=0;ntLt.symbol===_t);if(Rt)if(nc(Rt)){let Lt=Rt.symbol.id.toString();ee.has(Lt)||(re.push(Rt),ee.set(Lt,!0))}else ge=ge||Rt}Lu(ht,ot)}function Qe(ht){return ht.parent&&a0(ht.parent)&&ht.parent.name===ht?h.getShorthandAssignmentValueSymbol(ht.parent):h.getSymbolAtLocation(ht)}function mt(ht,_t,Rt){if(!ht)return;let Lt=ht.getDeclarations();if(Lt&&Lt.some(Pt=>Pt.parent===_t))return me.createIdentifier(ht.name);let Ke=mt(ht.parent,_t,Rt);if(Ke!==void 0)return Rt?me.createQualifiedName(Ke,me.createIdentifier(ht.name)):me.createPropertyAccessExpression(Ke,ht.name)}}function nks(s){return ji(s,c=>c.parent&&zsn(c)&&!fo(c.parent))}function zsn(s){let{parent:c}=s;switch(c.kind){case 307:return!1}switch(s.kind){case 11:return c.kind!==273&&c.kind!==277;case 231:case 207:case 209:return!1;case 80:return c.kind!==209&&c.kind!==277&&c.kind!==282}return!0}function rYt(s){return nYt(s)||(bN(s)||_U(s)||P3(s))&&(bN(s.parent)||P3(s.parent))}function nYt(s){return Zg(s)&&s.parent&&EN(s.parent)}var iks={},Xnt="Generate 'get' and 'set' accessors",iYt=Bu(Z.Generate_get_and_set_accessors),sYt={name:Xnt,description:iYt,kind:"refactor.rewrite.property.generateAccessors"};Px(Xnt,{kinds:[sYt.kind],getEditsForAction:function(c,g){if(!c.endPosition)return;let d=x0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);pe.assert(d&&!MF(d),"Expected applicable refactor info");let h=x0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,g);if(!h)return;let _=c.file.fileName,S=d.renameAccessor?d.accessorName:d.fieldName,T=(Ir(S)?0:-1)+h1e(h,_,S.text,Si(d.declaration));return{renameFilename:_,renameLocation:T,edits:h}},getAvailableActions(s){if(!s.endPosition)return E;let c=x0.getAccessorConvertiblePropertyAtPosition(s.file,s.program,s.startPosition,s.endPosition,s.triggerReason==="invoked");return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Xnt,description:iYt,actions:[{...sYt,notApplicableReason:c.error}]}]:E:[{name:Xnt,description:iYt,actions:[sYt]}]:E}});var sks={},Jnt="Infer function return type",oYt=Bu(Z.Infer_function_return_type),Unt={name:Jnt,description:oYt,kind:"refactor.rewrite.function.returnType"};Px(Jnt,{kinds:[Unt.kind],getEditsForAction:oks,getAvailableActions:aks});function oks(s){let c=qsn(s);if(c&&!MF(c))return{renameFilename:void 0,renameLocation:void 0,edits:xo.ChangeTracker.with(s,d=>cks(s.file,d,c.declaration,c.returnTypeNode))}}function aks(s){let c=qsn(s);return c?MF(c)?s.preferences.provideRefactorNotApplicableReason?[{name:Jnt,description:oYt,actions:[{...Unt,notApplicableReason:c.error}]}]:E:[{name:Jnt,description:oYt,actions:[Unt]}]:E}function cks(s,c,g,d){let h=qd(g,22,s),_=lA(g)&&h===void 0,S=_?ma(g.parameters):h;S&&(_&&(c.insertNodeBefore(s,S,me.createToken(21)),c.insertNodeAfter(s,S,me.createToken(22))),c.insertNodeAt(s,S.end,d,{prefix:": "}))}function qsn(s){if(wo(s.file)||!e5(Unt.kind,s.kind))return;let c=Lb(s.file,s.startPosition),g=ji(c,S=>$u(S)||S.parent&&lA(S.parent)&&(S.kind===39||S.parent.body===S)?"quit":lks(S));if(!g||!g.body||g.type)return{error:Bu(Z.Return_type_must_be_inferred_from_a_function)};let d=s.program.getTypeChecker(),h;if(d.isImplementationOfOverload(g)){let S=d.getTypeAtLocation(g).getCallSignatures();S.length>1&&(h=d.getUnionType(Xt(S,R=>R.getReturnType())))}if(!h){let S=d.getSignatureFromDeclaration(g);if(S){let R=d.getTypePredicateOfSignature(S);if(R&&R.type){let T=d.typePredicateToTypePredicateNode(R,g,1,8);if(T)return{declaration:g,returnTypeNode:T}}else h=d.getReturnTypeOfSignature(S)}}if(!h)return{error:Bu(Z.Could_not_determine_function_return_type)};let _=d.typeToTypeNode(h,g,1,8);if(_)return{declaration:g,returnTypeNode:_}}function lks(s){switch(s.kind){case 263:case 219:case 220:case 175:return!0;default:return!1}}var $sn=(s=>(s[s.typeOffset=8]="typeOffset",s[s.modifierMask=255]="modifierMask",s))($sn||{}),eon=(s=>(s[s.class=0]="class",s[s.enum=1]="enum",s[s.interface=2]="interface",s[s.namespace=3]="namespace",s[s.typeParameter=4]="typeParameter",s[s.type=5]="type",s[s.parameter=6]="parameter",s[s.variable=7]="variable",s[s.enumMember=8]="enumMember",s[s.property=9]="property",s[s.function=10]="function",s[s.member=11]="member",s))(eon||{}),ton=(s=>(s[s.declaration=0]="declaration",s[s.static=1]="static",s[s.async=2]="async",s[s.readonly=3]="readonly",s[s.defaultLibrary=4]="defaultLibrary",s[s.local=5]="local",s))(ton||{});function ron(s,c,g,d){let h=aYt(s,c,g,d);pe.assert(h.spans.length%3===0);let _=h.spans,S=[];for(let R=0;R<_.length;R+=3)S.push({textSpan:zd(_[R],_[R+1]),classificationType:_[R+2]});return S}function aYt(s,c,g,d){return{spans:uks(s,g,d,c),endOfLineState:0}}function uks(s,c,g,d){let h=[];return s&&c&&gks(s,c,g,(S,R,T)=>{h.push(S.getStart(c),S.getWidth(c),(R+1<<8)+T)},d),h}function gks(s,c,g,d,h){let _=s.getTypeChecker(),S=!1;function R(T){switch(T.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 220:h.throwIfCancellationRequested()}if(!T||!q2(g,T.pos,T.getFullWidth())||T.getFullWidth()===0)return;let W=S;if((bN(T)||_U(T))&&(S=!0),pie(T)&&(S=!1),Ir(T)&&!S&&!fks(T)&&!oz(T.escapedText)){let V=_.getSymbolAtLocation(T);if(V){V.flags&2097152&&(V=_.getAliasedSymbol(V));let M=Aks(V,DU(T));if(M!==void 0){let ee=0;T.parent&&(hg(T.parent)||son.get(T.parent.kind)===M)&&T.parent.name===T&&(ee=1),M===6&&ion(T)&&(M=9),M=dks(_,T,M);let re=V.valueDeclaration;if(re){let ge=Hc(re),Ie=dm(re);ge&256&&(ee|=2),ge&1024&&(ee|=4),M!==0&&M!==2&&(ge&8||Ie&2||V.getFlags()&8)&&(ee|=8),(M===7||M===10)&&pks(re,c)&&(ee|=32),s.isSourceFileDefaultLibrary(re.getSourceFile())&&(ee|=16)}else V.declarations&&V.declarations.some(ge=>s.isSourceFileDefaultLibrary(ge.getSourceFile()))&&(ee|=16);d(T,M,ee)}}}Lu(T,R),S=W}R(c)}function Aks(s,c){let g=s.getFlags();if(g&32)return 0;if(g&384)return 1;if(g&524288)return 5;if(g&64){if(c&2)return 2}else if(g&262144)return 4;let d=s.valueDeclaration||s.declarations&&s.declarations[0];return d&&hg(d)&&(d=non(d)),d&&son.get(d.kind)}function dks(s,c,g){if(g===7||g===9||g===6){let d=s.getTypeAtLocation(c);if(d){let h=_=>_(d)||d.isUnion()&&d.types.some(_);if(g!==6&&h(_=>_.getConstructSignatures().length>0))return 0;if(h(_=>_.getCallSignatures().length>0)&&!h(_=>_.getProperties().length>0)||Iks(c))return g===9?11:10}}return g}function pks(s,c){return hg(s)&&(s=non(s)),nc(s)?(!ll(s.parent.parent.parent)||iQ(s.parent))&&s.getSourceFile()===c:ih(s)?!ll(s.parent)&&s.getSourceFile()===c:!1}function non(s){for(;;)if(hg(s.parent.parent))s=s.parent.parent;else return s.parent.parent}function fks(s){let c=s.parent;return c&&(Vw(c)||uy(c)||Zx(c))}function Iks(s){for(;ion(s);)s=s.parent;return Zl(s.parent)&&s.parent.expression===s}function ion(s){return zi(s.parent)&&s.parent.right===s||jo(s.parent)&&s.parent.name===s}var son=new Map([[261,7],[170,6],[173,9],[268,3],[267,1],[307,8],[264,0],[175,11],[263,10],[219,10],[174,11],[178,9],[179,9],[172,9],[265,2],[266,5],[169,4],[304,9],[305,9]]),oon="0.8";function aon(s,c,g,d){let h=z6(s)?new cYt(s,c,g):s===80?new lon(80,c,g):s===81?new uon(81,c,g):new con(s,c,g);return h.parent=d,h.flags=d.flags&101441536,h}var cYt=class{constructor(s,c,g){this.pos=c,this.end=g,this.kind=s,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(s){pe.assert(!wB(this.pos)&&!wB(this.end),s||"Node must have a real position for this operation")}getSourceFile(){return ms(this)}getStart(s,c){return this.assertHasRealPosition(),MD(this,s,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(s){return this.assertHasRealPosition(),this.getEnd()-this.getStart(s)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(s){return this.assertHasRealPosition(),this.getStart(s)-this.pos}getFullText(s){return this.assertHasRealPosition(),(s||this.getSourceFile()).text.substring(this.pos,this.end)}getText(s){return this.assertHasRealPosition(),s||(s=this.getSourceFile()),s.text.substring(this.getStart(s),this.getEnd())}getChildCount(s){return this.getChildren(s).length}getChildAt(s,c){return this.getChildren(c)[s]}getChildren(s=ms(this)){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),y$e(this,s)??YPt(this,s,hks(this,s))}getFirstToken(s){this.assertHasRealPosition();let c=this.getChildren(s);if(!c.length)return;let g=de(c,d=>d.kind<310||d.kind>352);return g.kind<167?g:g.getFirstToken(s)}getLastToken(s){this.assertHasRealPosition();let c=this.getChildren(s),g=li(c);if(g)return g.kind<167?g:g.getLastToken(s)}forEachChild(s,c){return Lu(this,s,c)}};function hks(s,c){let g=[];if(i7(s))return s.forEachChild(S=>{g.push(S)}),g;A_.setText((c||s.getSourceFile()).text);let d=s.pos,h=S=>{RPe(g,d,S.pos,s),g.push(S),d=S.end},_=S=>{RPe(g,d,S.pos,s),g.push(mks(S,s)),d=S.end};return F(s.jsDoc,h),d=s.pos,s.forEachChild(h,_),RPe(g,d,s.end,s),A_.setText(void 0),g}function RPe(s,c,g,d){for(A_.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function Knt(s,c){if(!s)return E;let g=n5.getJsDocTagsFromDeclarations(s,c);if(c&&(g.length===0||s.some(gon))){let d=new Set;for(let h of s){let _=Aon(c,h,S=>{var R;if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualJsDocTags(h,c):((R=S.declarations)==null?void 0:R.length)===1?S.getJsDocTags(c):void 0});_&&(g=[..._,...g])}}return g}function NPe(s,c){if(!s)return E;let g=n5.getJsDocCommentsFromDeclarations(s,c);if(c&&(g.length===0||s.some(gon))){let d=new Set;for(let h of s){let _=Aon(c,h,S=>{if(!d.has(S))return d.add(S),h.kind===178||h.kind===179?S.getContextualDocumentationComment(h,c):S.getDocumentationComment(c)});_&&(g=g.length===0?_.slice():_.concat(Jie(),g))}}return g}function Aon(s,c,g){var d;let h=((d=c.parent)==null?void 0:d.kind)===177?c.parent.parent:c.parent;if(!h)return;let _=zh(c);return X(R7(h),S=>{let R=s.getTypeAtLocation(S),T=_&&R.symbol?s.getTypeOfSymbol(R.symbol):R,W=s.getPropertyOfType(T,c.symbol.name);return W?g(W):void 0})}var bks=class extends cYt{constructor(s,c,g){super(s,c,g)}update(s,c){return Z$e(this,s,c)}getLineAndCharacterOfPosition(s){return Ra(this,s)}getLineStarts(){return rn(this)}getPositionOfLineAndCharacter(s,c,g){return xn(rn(this),s,c,this.text,g)}getLineEndOfPosition(s){let{line:c}=this.getLineAndCharacterOfPosition(s),g=this.getLineStarts(),d;c+1>=g.length&&(d=this.getEnd()),d||(d=g[c+1]-1);let h=this.getFullText();return h[d]===` -`&&h[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let s=dl();return this.forEachChild(h),s;function c(_){let S=d(_);S&&s.add(S,_)}function g(_){let S=s.get(_);return S||s.set(_,S=[]),S}function d(_){let S=Cw(_);return S&&(Un(S)&&jo(S.expression)?S.expression.name.text:VI(S)?d1e(S):void 0)}function h(_){switch(_.kind){case 263:case 219:case 175:case 174:let S=_,R=d(S);if(R){let V=g(R),M=li(V);M&&S.parent===M.parent&&S.symbol===M.symbol?S.body&&!M.body&&(V[V.length-1]=S):V.push(S)}Lu(_,h);break;case 264:case 232:case 265:case 266:case 267:case 268:case 272:case 282:case 277:case 274:case 275:case 178:case 179:case 188:c(_),Lu(_,h);break;case 170:if(!Ga(_,31))break;case 261:case 209:{let V=_;if(Nu(V.name)){Lu(V.name,h);break}V.initializer&&h(V.initializer)}case 307:case 173:case 172:c(_);break;case 279:let T=_;T.exportClause&&(mv(T.exportClause)?F(T.exportClause.elements,h):h(T.exportClause.name));break;case 273:let W=_.importClause;W&&(W.name&&c(W.name),W.namedBindings&&(W.namedBindings.kind===275?c(W.namedBindings):F(W.namedBindings.elements,h)));break;case 227:nI(_)!==0&&c(_);default:Lu(_,h)}}}},Eks=class{constructor(s,c,g){this.fileName=s,this.text=c,this.skipTrivia=g||(d=>d)}getLineAndCharacterOfPosition(s){return Ra(this,s)}};function Sks(){return{getNodeConstructor:()=>cYt,getTokenConstructor:()=>con,getIdentifierConstructor:()=>lon,getPrivateIdentifierConstructor:()=>uon,getSourceFileConstructor:()=>bks,getSymbolConstructor:()=>Cks,getTypeConstructor:()=>_ks,getSignatureConstructor:()=>yks,getSourceMapSourceConstructor:()=>Eks}}function N1e(s){let c=!0;for(let d in s)if(Da(s,d)&&!don(d)){c=!1;break}if(c)return s;let g={};for(let d in s)if(Da(s,d)){let h=don(d)?d:d.charAt(0).toLowerCase()+d.substr(1);g[h]=s[d]}return g}function don(s){return!s.length||s.charAt(0)===s.charAt(0).toLowerCase()}function D1e(s){return s?At(s,c=>c.text).join(""):""}function DPe(){return{target:1,jsx:1}}function jnt(){return x0.getSupportedErrorCodes()}var vks=class{constructor(s){this.host=s}getCurrentSourceFile(s){var c,g,d,h,_,S,R,T;let W=this.host.getScriptSnapshot(s);if(!W)throw new Error("Could not find file: '"+s+"'.");let V=zrt(s,this.host),M=this.host.getScriptVersion(s),ee;if(this.currentFileName!==s){let re={languageVersion:99,impliedNodeFormat:JEe(Ou(s,this.host.getCurrentDirectory(),((d=(g=(c=this.host).getCompilerHost)==null?void 0:g.call(c))==null?void 0:d.getCanonicalFileName)||JD(this.host)),(T=(R=(S=(_=(h=this.host).getCompilerHost)==null?void 0:_.call(h))==null?void 0:S.getModuleResolutionCache)==null?void 0:R.call(S))==null?void 0:T.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:Lne(this.host.getCompilationSettings()),jsDocParsingMode:0};ee=kPe(s,W,re,M,!0,V)}else if(this.currentFileVersion!==M){let re=W.getChangeRange(this.currentFileScriptSnapshot);ee=znt(this.currentSourceFile,W,M,re)}return ee&&(this.currentFileVersion=M,this.currentFileName=s,this.currentFileScriptSnapshot=W,this.currentSourceFile=ee),this.currentSourceFile}};function pon(s,c,g){s.version=g,s.scriptSnapshot=c}function kPe(s,c,g,d,h,_){let S=vz(s,Lz(c),g,h,_);return pon(S,c,d),S}function znt(s,c,g,d,h){if(d&&g!==s.version){let S,R=d.span.start!==0?s.text.substr(0,d.span.start):"",T=Rs(d.span)!==s.text.length?s.text.substr(Rs(d.span)):"";if(d.newLength===0)S=R&&T?R+T:R||T;else{let V=c.getText(d.span.start,d.span.start+d.newLength);S=R&&T?R+V+T:R?R+V:V+T}let W=Z$e(s,S,d,h);return pon(W,c,g),W.nameTable=void 0,s!==W&&s.scriptSnapshot&&(s.scriptSnapshot.dispose&&s.scriptSnapshot.dispose(),s.scriptSnapshot=void 0),W}let _={languageVersion:s.languageVersion,impliedNodeFormat:s.impliedNodeFormat,setExternalModuleIndicator:s.setExternalModuleIndicator,jsDocParsingMode:s.jsDocParsingMode};return kPe(s.fileName,c,_,g,!0,s.scriptKind)}var Bks={isCancellationRequested:As,throwIfCancellationRequested:Dc},wks=class{constructor(s){this.cancellationToken=s}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new By}},uYt=class{constructor(s,c=20){this.hostCancellationToken=s,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let s=Fg();return Math.abs(s-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=s,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var s;if(this.isCancellationRequested())throw(s=ki)==null||s.instant(ki.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new By}},fon=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],Tks=[...fon,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];function gYt(s,c=FMt(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames(),s.getCurrentDirectory(),s.jsDocParsingMode),g){var d;let h;g===void 0?h=0:typeof g=="boolean"?h=g?2:0:h=g;let _=new vks(s),S,R,T=0,W=s.getCancellationToken?new wks(s.getCancellationToken()):Bks,V=s.getCurrentDirectory();qZe((d=s.getLocalizedDiagnosticMessages)==null?void 0:d.bind(s));function M(tn){s.log&&s.log(tn)}let ee=y3(s),re=_d(ee),ge=KMt({useCaseSensitiveFileNames:()=>ee,getCurrentDirectory:()=>V,getProgram:Ne,fileExists:$i(s,s.fileExists),readFile:$i(s,s.readFile),getDocumentPositionMapper:$i(s,s.getDocumentPositionMapper),getSourceFileLike:$i(s,s.getSourceFileLike),log:M});function Ie(tn){let wn=S.getSourceFile(tn);if(!wn){let Mn=new Error(`Could not find source file: '${tn}'.`);throw Mn.ProgramFiles=S.getSourceFiles().map(ci=>ci.fileName),Mn}return wn}function _e(){s.updateFromProject&&!s.updateFromProjectInProgress?s.updateFromProject():Ee()}function Ee(){var tn,wn,Mn;if(pe.assert(h!==2),s.getProjectVersion){let gu=s.getProjectVersion();if(gu){if(R===gu&&!((tn=s.hasChangedAutomaticTypeDirectiveNames)!=null&&tn.call(s)))return;R=gu}}let ci=s.getTypeRootsVersion?s.getTypeRootsVersion():0;T!==ci&&(M("TypeRoots version has changed; provide new program"),S=void 0,T=ci);let es=s.getScriptFileNames().slice(),Wi=s.getCompilationSettings()||DPe(),Vn=s.hasInvalidatedResolutions||As,Ui=$i(s,s.hasInvalidatedLibResolutions)||As,gs=$i(s,s.hasChangedAutomaticTypeDirectiveNames),fs=(wn=s.getProjectReferences)==null?void 0:wn.call(s),bi,mc={getSourceFile:sh,getSourceFileByPath:dS,getCancellationToken:()=>W,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>ee,getNewLine:()=>uN(Wi),getDefaultLibFileName:gu=>s.getDefaultLibFileName(gu),writeFile:Dc,getCurrentDirectory:()=>V,fileExists:gu=>s.fileExists(gu),readFile:gu=>s.readFile&&s.readFile(gu),getSymlinkCache:$i(s,s.getSymlinkCache),realpath:$i(s,s.realpath),directoryExists:gu=>f1(gu,s),getDirectories:gu=>s.getDirectories?s.getDirectories(gu):[],readDirectory:(gu,bg,KA,TA,oi)=>(pe.checkDefined(s.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),s.readDirectory(gu,bg,KA,TA,oi)),onReleaseOldSourceFile:Xg,onReleaseParsedCommandLine:tm,hasInvalidatedResolutions:Vn,hasInvalidatedLibResolutions:Ui,hasChangedAutomaticTypeDirectiveNames:gs,trace:$i(s,s.trace),resolveModuleNames:$i(s,s.resolveModuleNames),getModuleResolutionCache:$i(s,s.getModuleResolutionCache),createHash:$i(s,s.createHash),resolveTypeReferenceDirectives:$i(s,s.resolveTypeReferenceDirectives),resolveModuleNameLiterals:$i(s,s.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:$i(s,s.resolveTypeReferenceDirectiveReferences),resolveLibrary:$i(s,s.resolveLibrary),useSourceOfProjectReferenceRedirect:$i(s,s.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Dl,jsDocParsingMode:s.jsDocParsingMode,getGlobalTypingsCacheLocation:$i(s,s.getGlobalTypingsCacheLocation)},gg=mc.getSourceFile,{getSourceFileWithCache:Ag}=Gde(mc,gu=>Ou(gu,V,re),(...gu)=>gg.call(mc,...gu));mc.getSourceFile=Ag,(Mn=s.setCompilerHost)==null||Mn.call(s,mc);let _u={useCaseSensitiveFileNames:ee,fileExists:gu=>mc.fileExists(gu),readFile:gu=>mc.readFile(gu),directoryExists:gu=>mc.directoryExists(gu),getDirectories:gu=>mc.getDirectories(gu),realpath:mc.realpath,readDirectory:(...gu)=>mc.readDirectory(...gu),trace:mc.trace,getCurrentDirectory:mc.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:Dc},wI=c.getKeyForCompilationSettings(Wi),AI=new Set;if(ptt(S,es,Wi,(gu,bg)=>s.getScriptVersion(bg),gu=>mc.fileExists(gu),Vn,Ui,gs,Dl,fs)){mc=void 0,bi=void 0,AI=void 0;return}S=UEe({rootNames:es,options:Wi,host:mc,oldProgram:S,projectReferences:fs}),mc=void 0,bi=void 0,AI=void 0,ge.clearCache(),S.getTypeChecker();return;function Dl(gu){let bg=Ou(gu,V,re),KA=bi?.get(bg);if(KA!==void 0)return KA||void 0;let TA=s.getParsedCommandLine?s.getParsedCommandLine(gu):yu(gu);return(bi||(bi=new Map)).set(bg,TA||!1),TA}function yu(gu){let bg=sh(gu,100);if(bg)return bg.path=Ou(gu,V,re),bg.resolvedPath=bg.path,bg.originalFileName=bg.fileName,EEe(bg,_u,Xc(Mo(gu),V),void 0,Xc(gu,V))}function tm(gu,bg,KA){var TA;s.getParsedCommandLine?(TA=s.onReleaseParsedCommandLine)==null||TA.call(s,gu,bg,KA):bg&&jp(bg.sourceFile,KA)}function jp(gu,bg){let KA=c.getKeyForCompilationSettings(bg);c.releaseDocumentWithKey(gu.resolvedPath,KA,gu.scriptKind,gu.impliedNodeFormat)}function Xg(gu,bg,KA,TA){var oi;jp(gu,bg),(oi=s.onReleaseOldSourceFile)==null||oi.call(s,gu,bg,KA,TA)}function sh(gu,bg,KA,TA){return dS(gu,Ou(gu,V,re),bg,KA,TA)}function dS(gu,bg,KA,TA,oi){pe.assert(mc,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let $d=s.getScriptSnapshot(gu);if(!$d)return;let YI=zrt(gu,s),Fh=s.getScriptVersion(gu);if(!oi){let WC=S&&S.getSourceFileByPath(bg);if(WC){if(YI===WC.scriptKind||AI.has(WC.resolvedPath))return c.updateDocumentWithKey(gu,bg,s,wI,$d,Fh,YI,KA);c.releaseDocumentWithKey(WC.resolvedPath,c.getKeyForCompilationSettings(S.getCompilerOptions()),WC.scriptKind,WC.impliedNodeFormat),AI.add(WC.resolvedPath)}}return c.acquireDocumentWithKey(gu,bg,s,wI,$d,Fh,YI,KA)}}function Ne(){if(h===2){pe.assert(S===void 0);return}return _e(),S}function Te(){var tn;return(tn=s.getPackageJsonAutoImportProvider)==null?void 0:tn.call(s)}function Ze(tn,wn){let Mn=S.getTypeChecker(),ci=es();if(!ci)return!1;for(let Vn of tn)for(let Ui of Vn.references){let gs=Wi(Ui);if(pe.assertIsDefined(gs),wn.has(Ui)||Kp.isDeclarationOfSymbol(gs,ci)){wn.add(Ui),Ui.isDefinition=!0;let fs=qVe(Ui,ge,$i(s,s.fileExists));fs&&wn.add(fs)}else Ui.isDefinition=!1}return!0;function es(){for(let Vn of tn)for(let Ui of Vn.references){if(wn.has(Ui)){let fs=Wi(Ui);return pe.assertIsDefined(fs),Mn.getSymbolAtLocation(fs)}let gs=qVe(Ui,ge,$i(s,s.fileExists));if(gs&&wn.has(gs)){let fs=Wi(gs);if(fs)return Mn.getSymbolAtLocation(fs)}}}function Wi(Vn){let Ui=S.getSourceFile(Vn.fileName);if(!Ui)return;let gs=Lb(Ui,Vn.textSpan.start);return Kp.Core.getAdjustedNode(gs,{use:Kp.FindReferencesUse.References})}}function We(){if(S){let tn=c.getKeyForCompilationSettings(S.getCompilerOptions());F(S.getSourceFiles(),wn=>c.releaseDocumentWithKey(wn.resolvedPath,tn,wn.scriptKind,wn.impliedNodeFormat)),S=void 0}}function Ue(){We(),s=void 0}function $e(tn){return _e(),S.getSyntacticDiagnostics(Ie(tn),W).slice()}function Ye(tn){_e();let wn=Ie(tn),Mn=S.getSemanticDiagnostics(wn,W);if(!Ly(S.getCompilerOptions()))return Mn.slice();let ci=S.getDeclarationDiagnostics(wn,W);return[...Mn,...ci]}function Tt(tn,wn){_e();let Mn=Ie(tn),ci=S.getCompilerOptions();if(T3(Mn,ci,S)||!gU(Mn,ci)||S.getCachedSemanticDiagnostics(Mn))return;let es=ot(Mn,wn);if(!es)return;let Wi=EI(es.map(Ui=>wA(Ui.getFullStart(),Ui.getEnd())));return{diagnostics:S.getSemanticDiagnostics(Mn,W,es).slice(),spans:Wi}}function ot(tn,wn){let Mn=[],ci=EI(wn.map(es=>t9(es)));for(let es of ci){let Wi=Qe(tn,es);if(!Wi)return;Mn.push(...Wi)}if(Mn.length)return Mn}function Qe(tn,wn){if(ed(wn,tn))return;let Mn=Hde(tn,Rs(wn))||tn,ci=ji(Mn,Wi=>Og(Wi,wn)),es=[];if(mt(wn,ci,es),tn.end===wn.start+wn.length&&es.push(tn.endOfFileToken),!jt(es,ll))return es}function mt(tn,wn,Mn){return ht(wn,tn)?ed(tn,wn)?(_t(wn,Mn),!0):Pz(wn)?Rt(tn,wn,Mn):xa(wn)?Lt(tn,wn,Mn):(_t(wn,Mn),!0):!1}function ht(tn,wn){let Mn=wn.start+wn.length;return tn.poswn.start}function _t(tn,wn){for(;tn.parent&&!RLe(tn);)tn=tn.parent;wn.push(tn)}function Rt(tn,wn,Mn){let ci=[];return wn.statements.filter(Wi=>mt(tn,Wi,ci)).length===wn.statements.length?(_t(wn,Mn),!0):(Mn.push(...ci),!1)}function Lt(tn,wn,Mn){var ci,es,Wi;let Vn=fs=>e3(fs,tn);if((ci=wn.modifiers)!=null&&ci.some(Vn)||wn.name&&Vn(wn.name)||(es=wn.typeParameters)!=null&&es.some(Vn)||(Wi=wn.heritageClauses)!=null&&Wi.some(Vn))return _t(wn,Mn),!0;let Ui=[];return wn.members.filter(fs=>mt(tn,fs,Ui)).length===wn.members.length?(_t(wn,Mn),!0):(Mn.push(...Ui),!1)}function Ke(tn){return _e(),Ent(Ie(tn),S,W)}function Pt(){return _e(),[...S.getOptionsDiagnostics(W),...S.getGlobalDiagnostics(W)]}function _r(tn,wn,Mn=VB,ci){let es={...Mn,includeCompletionsForModuleExports:Mn.includeCompletionsForModuleExports||Mn.includeExternalModuleExports,includeCompletionsWithInsertText:Mn.includeCompletionsWithInsertText||Mn.includeInsertTextCompletions};return _e(),Jz.getCompletionsAtPosition(s,S,M,Ie(tn),wn,es,Mn.triggerCharacter,Mn.triggerKind,W,ci&&Im.getFormatContext(ci,s),Mn.includeSymbol)}function Gt(tn,wn,Mn,ci,es,Wi=VB,Vn){return _e(),Jz.getCompletionEntryDetails(S,M,Ie(tn),wn,{name:Mn,source:es,data:Vn},s,ci&&Im.getFormatContext(ci,s),Wi,W)}function nt(tn,wn,Mn,ci,es=VB){return _e(),Jz.getCompletionEntrySymbol(S,M,Ie(tn),wn,{name:Mn,source:ci},s,es)}function Dt(tn,wn,Mn,ci){_e();let es=Ie(tn),Wi=Lb(es,wn);if(Wi===es)return;let Vn=S.getTypeChecker(),Ui=Gr(Wi),gs=kks(Ui,Vn);if(!gs||Vn.isUnknownSymbol(gs)){let _u=dt(es,Ui,wn)?Vn.getTypeAtLocation(Ui):void 0;return _u&&{kind:"",kindModifiers:"",textSpan:Oy(Ui,es),displayParts:Vn.runWithCancellationToken(W,wI=>I1e(wI,_u,kU(Ui),void 0,ci)),documentation:_u.symbol?_u.symbol.getDocumentationComment(Vn):void 0,tags:_u.symbol?_u.symbol.getJsDocTags(Vn):void 0}}let{symbolKind:fs,displayParts:bi,documentation:mc,tags:gg,canIncreaseVerbosityLevel:Ag}=Vn.runWithCancellationToken(W,_u=>i9.getSymbolDisplayPartsDocumentationAndSymbolKind(_u,gs,es,kU(Ui),Ui,void 0,void 0,Mn??Age,ci));return{kind:fs,kindModifiers:i9.getSymbolModifiers(Vn,gs),textSpan:Oy(Ui,es),displayParts:bi,documentation:mc,tags:gg,canIncreaseVerbosityLevel:Ag}}function tr(tn,wn){return _e(),cst.preparePasteEdits(Ie(tn),wn,S.getTypeChecker())}function ur(tn,wn){return _e(),lst.pasteEditsProvider(Ie(tn.targetFile),tn.pastedText,tn.pasteLocations,tn.copiedFrom?{file:Ie(tn.copiedFrom.file),range:tn.copiedFrom.range}:void 0,s,tn.preferences,Im.getFormatContext(wn,s),W)}function Gr(tn){return f2(tn.parent)&&tn.pos===tn.parent.pos?tn.parent.expression:KT(tn.parent)&&tn.pos===tn.parent.pos||uv(tn.parent)&&tn.parent.name===tn||eR(tn.parent)?tn.parent:tn}function dt(tn,wn,Mn){switch(wn.kind){case 80:return wn.flags&16777216&&!wo(wn)&&(wn.parent.kind===172&&wn.parent.name===wn||ji(wn,ci=>ci.kind===170))?!1:!hrt(wn)&&!mrt(wn)&&!s2(wn.parent);case 212:case 167:return!$L(tn,Mn);case 110:case 198:case 108:case 203:return!0;case 237:return uv(wn);default:return!1}}function pr(tn,wn,Mn,ci){return _e(),nse.getDefinitionAtPosition(S,Ie(tn),wn,Mn,ci)}function st(tn,wn){return _e(),nse.getDefinitionAndBoundSpan(S,Ie(tn),wn)}function ir(tn,wn){return _e(),nse.getTypeDefinitionAtPosition(S.getTypeChecker(),Ie(tn),wn)}function zt(tn,wn){return _e(),Kp.getImplementationsAtPosition(S,W,S.getSourceFiles(),Ie(tn),wn)}function Ht(tn,wn,Mn){let ci=iu(tn);pe.assert(Mn.some(Vn=>iu(Vn)===ci)),_e();let es=Xt(Mn,Vn=>S.getSourceFile(Vn)),Wi=Ie(tn);return IPe.getDocumentHighlights(S,W,Wi,wn,es)}function Br(tn,wn,Mn,ci,es){_e();let Wi=Ie(tn),Vn=WVe(Lb(Wi,wn));if($Pe.nodeIsEligibleForRename(Vn))if(Ir(Vn)&&($T(Vn.parent)||rQ(Vn.parent))&&eU(Vn.escapedText)){let{openingElement:Ui,closingElement:gs}=Vn.parent.parent;return[Ui,gs].map(fs=>{let bi=Oy(fs.tagName,Wi);return{fileName:Wi.fileName,textSpan:bi,...Kp.toContextSpan(bi,Wi,fs.parent)}})}else{let Ui=_1(Wi,es??VB),gs=typeof es=="boolean"?es:es?.providePrefixAndSuffixTextForRename;return jn(Vn,wn,{findInStrings:Mn,findInComments:ci,providePrefixAndSuffixTextForRename:gs,use:Kp.FindReferencesUse.Rename},(fs,bi,mc)=>Kp.toRenameLocation(fs,bi,mc,gs||!1,Ui))}}function mn(tn,wn){return _e(),jn(Lb(Ie(tn),wn),wn,{use:Kp.FindReferencesUse.References},Kp.toReferenceEntry)}function jn(tn,wn,Mn,ci){_e();let es=Mn&&Mn.use===Kp.FindReferencesUse.Rename?S.getSourceFiles().filter(Wi=>!S.isSourceFileDefaultLibrary(Wi)):S.getSourceFiles();return Kp.findReferenceOrRenameEntries(S,W,es,tn,wn,Mn,ci)}function Zi(tn,wn){return _e(),Kp.findReferencedSymbols(S,W,S.getSourceFiles(),Ie(tn),wn)}function Ns(tn){return _e(),Kp.Core.getReferencesForFileName(tn,S,S.getSourceFiles()).map(Kp.toReferenceEntry)}function An(tn,wn,Mn,ci=!1,es=!1){_e();let Wi=Mn?[Ie(Mn)]:S.getSourceFiles();return win(Wi,S.getTypeChecker(),W,tn,wn,ci,es)}function si(tn,wn,Mn){_e();let ci=Ie(tn),es=s.getCustomTransformers&&s.getCustomTransformers();return T3t(S,ci,!!wn,W,es,Mn)}function ks(tn,wn,{triggerReason:Mn}=VB){_e();let ci=Ie(tn);return X1e.getSignatureHelpItems(S,ci,wn,Mn,W)}function Ic(tn){return _.getCurrentSourceFile(tn)}function su(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Lb(ci,wn);if(es===ci)return;switch(es.kind){case 212:case 167:case 11:case 97:case 112:case 106:case 108:case 110:case 198:case 80:break;default:return}let Wi=es;for(;;)if(Wie(Wi)||Q5t(Wi))Wi=Wi.parent;else if(_rt(Wi))if(Wi.parent.parent.kind===268&&Wi.parent.parent.body===Wi.parent)Wi=Wi.parent.parent.name;else break;else break;return wA(Wi.getStart(),es.getEnd())}function Zn(tn,wn){let Mn=_.getCurrentSourceFile(tn);return $nt.spanInSourceFileAtLocation(Mn,wn)}function ya(tn){return Din(_.getCurrentSourceFile(tn),W)}function Gl(tn){return kin(_.getCurrentSourceFile(tn),W)}function ba(tn,wn,Mn){return _e(),(Mn||"original")==="2020"?ron(S,W,Ie(tn),wn):xMt(S.getTypeChecker(),W,Ie(tn),S.getClassifiableNames(),wn)}function Wo(tn,wn,Mn){return _e(),(Mn||"original")==="original"?fnt(S.getTypeChecker(),W,Ie(tn),S.getClassifiableNames(),wn):aYt(S,W,Ie(tn),wn)}function hc(tn,wn){return GMt(W,_.getCurrentSourceFile(tn),wn)}function yr(tn,wn){return Int(W,_.getCurrentSourceFile(tn),wn)}function hn(tn){let wn=_.getCurrentSourceFile(tn);return Jit.collectElements(wn,W)}let Oi=new Map(Object.entries({19:20,21:22,23:24,32:30}));Oi.forEach((tn,wn)=>Oi.set(tn.toString(),Number(wn)));function lo(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Hie(Mn,wn),es=ci.getStart(Mn)===wn?Oi.get(ci.kind.toString()):void 0,Wi=es&&qd(ci.parent,es,Mn);return Wi?[Oy(ci,Mn),Oy(Wi,Mn)].sort((Vn,Ui)=>Vn.start-Ui.start):E}function pa(tn,wn,Mn){let ci=Fg(),es=N1e(Mn),Wi=_.getCurrentSourceFile(tn);M("getIndentationAtPosition: getCurrentSourceFile: "+(Fg()-ci)),ci=Fg();let Vn=Im.SmartIndenter.getIndentation(wn,Wi,es);return M("getIndentationAtPosition: computeIndentation : "+(Fg()-ci)),Vn}function Oa(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn);return Im.formatSelection(wn,Mn,es,Im.getFormatContext(N1e(ci),s))}function tl(tn,wn){return Im.formatDocument(_.getCurrentSourceFile(tn),Im.getFormatContext(N1e(wn),s))}function Qu(tn,wn,Mn,ci){let es=_.getCurrentSourceFile(tn),Wi=Im.getFormatContext(N1e(ci),s);if(!$L(es,wn))switch(Mn){case"{":return Im.formatOnOpeningCurly(wn,es,Wi);case"}":return Im.formatOnClosingCurly(wn,es,Wi);case";":return Im.formatOnSemicolon(wn,es,Wi);case` -`:return Im.formatOnEnter(wn,es,Wi)}return[]}function Tg(tn,wn,Mn,ci,es,Wi=VB){_e();let Vn=Ie(tn),Ui=wA(wn,Mn),gs=Im.getFormatContext(es,s);return er(io(ci,yg,Zt),fs=>(W.throwIfCancellationRequested(),x0.getFixes({errorCode:fs,sourceFile:Vn,span:Ui,program:S,host:s,cancellationToken:W,formatContext:gs,preferences:Wi})))}function Cs(tn,wn,Mn,ci=VB){_e(),pe.assert(tn.type==="file");let es=Ie(tn.fileName),Wi=Im.getFormatContext(Mn,s);return x0.getAllFixes({fixId:wn,sourceFile:es,program:S,host:s,cancellationToken:W,formatContext:Wi,preferences:ci})}function Tu(tn,wn,Mn=VB){_e(),pe.assert(tn.type==="file");let ci=Ie(tn.fileName);if(pP(ci))return E;let es=Im.getFormatContext(wn,s),Wi=tn.mode??(tn.skipDestructiveCodeActions?"SortAndCombine":"All");return i5.organizeImports(ci,es,s,S,Mn,Wi)}function Pr(tn,wn,Mn,ci=VB){return LMt(Ne(),tn,wn,s,Im.getFormatContext(Mn,s),ci,ge)}function Pn(tn,wn){let Mn=typeof tn=="string"?wn:tn;return Ki(Mn)?Promise.all(Mn.map(ci=>pt(ci))):pt(Mn)}function pt(tn){let wn=Mn=>Ou(Mn,V,re);return pe.assertEqual(tn.type,"install package"),s.installPackage?s.installPackage({fileName:wn(tn.file),packageName:tn.packageName}):Promise.reject("Host does not implement `installPackage`")}function on(tn,wn,Mn,ci){let es=ci?Im.getFormatContext(ci,s).options:void 0;return n5.getDocCommentTemplateAtPosition(OF(s,es),_.getCurrentSourceFile(tn),wn,Mn)}function it(tn,wn,Mn){if(Mn===60)return!1;let ci=_.getCurrentSourceFile(tn);if(Zz(ci,wn))return!1;if(q5t(ci,wn))return Mn===123;if(Brt(ci,wn))return!1;switch(Mn){case 39:case 34:case 96:return!$L(ci,wn)}return!0}function nr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Gm(wn,Mn);if(!ci)return;let es=ci.kind===32&&$T(ci.parent)?ci.parent.parent:KL(ci)&&bN(ci.parent)?ci.parent:void 0;if(es&&Gi(es))return{newText:``};let Wi=ci.kind===32&&Pw(ci.parent)?ci.parent.parent:KL(ci)&&P3(ci.parent)?ci.parent:void 0;if(Wi&&nn(Wi))return{newText:""}}function Fr(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=Gm(wn,Mn);if(!ci||ci.parent.kind===308)return;let es="[a-zA-Z0-9:\\-\\._$]*";if(P3(ci.parent.parent)){let Wi=ci.parent.parent.openingFragment,Vn=ci.parent.parent.closingFragment;if(pP(Wi)||pP(Vn))return;let Ui=Wi.getStart(Mn)+1,gs=Vn.getStart(Mn)+2;return wn!==Ui&&wn!==gs?void 0:{ranges:[{start:Ui,length:0},{start:gs,length:0}],wordPattern:es}}else{let Wi=ji(ci.parent,Ag=>!!($T(Ag)||rQ(Ag)));if(!Wi)return;pe.assert($T(Wi)||rQ(Wi),"tag should be opening or closing element");let Vn=Wi.parent.openingElement,Ui=Wi.parent.closingElement,gs=Vn.tagName.getStart(Mn),fs=Vn.tagName.end,bi=Ui.tagName.getStart(Mn),mc=Ui.tagName.end;return gs===Vn.getStart(Mn)||bi===Ui.getStart(Mn)||fs===Vn.getEnd()||mc===Ui.getEnd()||!(gs<=wn&&wn<=fs||bi<=wn&&wn<=mc)||Vn.tagName.getText(Mn)!==Ui.tagName.getText(Mn)?void 0:{ranges:[{start:gs,length:fs-gs},{start:bi,length:mc-bi}],wordPattern:es}}}function Kr(tn,wn){return{lineStarts:tn.getLineStarts(),firstLine:tn.getLineAndCharacterOfPosition(wn.pos).line,lastLine:tn.getLineAndCharacterOfPosition(wn.end).line}}function Dn(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=[],{lineStarts:Wi,firstLine:Vn,lastLine:Ui}=Kr(ci,wn),gs=Mn||!1,fs=Number.MAX_VALUE,bi=new Map,mc=new RegExp(/\S/),gg=MVe(ci,Wi[Vn]),Ag=gg?"{/*":"//";for(let _u=Vn;_u<=Ui;_u++){let wI=ci.text.substring(Wi[_u],ci.getLineEndOfPosition(Wi[_u])),AI=mc.exec(wI);AI&&(fs=Math.min(fs,AI.index),bi.set(_u.toString(),AI.index),wI.substr(AI.index,Ag.length)!==Ag&&(gs=Mn===void 0||Mn))}for(let _u=Vn;_u<=Ui;_u++){if(Vn!==Ui&&Wi[_u]===wn.end)continue;let wI=bi.get(_u.toString());wI!==void 0&&(gg?es.push(...hr(tn,{pos:Wi[_u]+fs,end:ci.getLineEndOfPosition(Wi[_u])},gs,gg)):gs?es.push({newText:Ag,span:{length:0,start:Wi[_u]+fs}}):ci.text.substr(Wi[_u]+wI,Ag.length)===Ag&&es.push({newText:"",span:{length:Ag.length,start:Wi[_u]+wI}}))}return es}function hr(tn,wn,Mn,ci){var es;let Wi=_.getCurrentSourceFile(tn),Vn=[],{text:Ui}=Wi,gs=!1,fs=Mn||!1,bi=[],{pos:mc}=wn,gg=ci!==void 0?ci:MVe(Wi,mc),Ag=gg?"{/*":"/*",_u=gg?"*/}":"*/",wI=gg?"\\{\\/\\*":"\\/\\*",AI=gg?"\\*\\/\\}":"\\*\\/";for(;mc<=wn.end;){let pp=Ui.substr(mc,Ag.length)===Ag?Ag.length:0,Dl=$L(Wi,mc+pp);if(Dl)gg&&(Dl.pos--,Dl.end++),bi.push(Dl.pos),Dl.kind===3&&bi.push(Dl.end),gs=!0,mc=Dl.end+1;else{let yu=Ui.substring(mc,wn.end).search(`(${wI})|(${AI})`);fs=Mn!==void 0?Mn:fs||!lMt(Ui,mc,yu===-1?wn.end:mc+yu),mc=yu===-1?wn.end+1:mc+yu+_u.length}}if(fs||!gs){((es=$L(Wi,wn.pos))==null?void 0:es.kind)!==2&&Gc(bi,wn.pos,Zt),Gc(bi,wn.end,Zt);let pp=bi[0];Ui.substr(pp,Ag.length)!==Ag&&Vn.push({newText:Ag,span:{length:0,start:pp}});for(let Dl=1;Dl0?pp-_u.length:0,yu=Ui.substr(Dl,_u.length)===_u?_u.length:0;Vn.push({newText:"",span:{length:Ag.length,start:pp-yu}})}return Vn}function En(tn,wn){let Mn=_.getCurrentSourceFile(tn),{firstLine:ci,lastLine:es}=Kr(Mn,wn);return ci===es&&wn.pos!==wn.end?hr(tn,wn,!0):Dn(tn,wn,!0)}function Ni(tn,wn){let Mn=_.getCurrentSourceFile(tn),ci=[],{pos:es}=wn,{end:Wi}=wn;es===Wi&&(Wi+=MVe(Mn,es)?2:1);for(let Vn=es;Vn<=Wi;Vn++){let Ui=$L(Mn,Vn);if(Ui){switch(Ui.kind){case 2:ci.push(...Dn(tn,{end:Ui.end,pos:Ui.pos+1},!1));break;case 3:ci.push(...hr(tn,{end:Ui.end,pos:Ui.pos+1},!1))}Vn=Ui.end+1}}return ci}function Gi({openingElement:tn,closingElement:wn,parent:Mn}){return!Q3(tn.tagName,wn.tagName)||bN(Mn)&&Q3(tn.tagName,Mn.openingElement.tagName)&&Gi(Mn)}function nn({closingFragment:tn,parent:wn}){return!!(tn.flags&262144)||P3(wn)&&nn(wn)}function bn(tn,wn,Mn){let ci=_.getCurrentSourceFile(tn),es=Im.getRangeOfEnclosingComment(ci,wn);return es&&(!Mn||es.kind===3)?t9(es):void 0}function ds(tn,wn){_e();let Mn=Ie(tn);W.throwIfCancellationRequested();let ci=Mn.text,es=[];if(wn.length>0&&!gs(Mn.fileName)){let fs=Vn(),bi;for(;bi=fs.exec(ci);){W.throwIfCancellationRequested();let mc=3;pe.assert(bi.length===wn.length+mc);let gg=bi[1],Ag=bi.index+gg.length;if(!$L(Mn,Ag))continue;let _u;for(let AI=0;AI"("+Wi(Dl.text)+")").join("|")+")",_u=/(?:$|\*\/)/.source,wI=/(?:.*?)/.source,AI="("+Ag+wI+")",pp=gg+AI+_u;return new RegExp(pp,"gim")}function Ui(fs){return fs>=97&&fs<=122||fs>=65&&fs<=90||fs>=48&&fs<=57}function gs(fs){return fs.includes("/node_modules/")}}function Mt(tn,wn,Mn){return _e(),$Pe.getRenameInfo(S,Ie(tn),wn,Mn||{})}function cn(tn,wn,Mn,ci,es,Wi){let[Vn,Ui]=typeof wn=="number"?[wn,void 0]:[wn.pos,wn.end];return{file:tn,startPosition:Vn,endPosition:Ui,program:Ne(),host:s,formatContext:Im.getFormatContext(ci,s),cancellationToken:W,preferences:Mn,triggerReason:es,kind:Wi}}function Bt(tn,wn,Mn){return{file:tn,program:Ne(),host:s,span:wn,preferences:Mn,cancellationToken:W}}function xe(tn,wn){return jit.getSmartSelectionRange(wn,_.getCurrentSourceFile(tn))}function fr(tn,wn,Mn=VB,ci,es,Wi){_e();let Vn=Ie(tn);return Oz.getApplicableRefactors(cn(Vn,wn,Mn,VB,ci,es),Wi)}function Je(tn,wn,Mn=VB){_e();let ci=Ie(tn),es=pe.checkDefined(S.getSourceFiles()),Wi=tz(tn),Vn=T1e(cn(ci,wn,Mn,VB)),Ui=wHt(Vn?.all),gs=Xt(es,fs=>{let bi=tz(fs.fileName);return!S?.isSourceFileFromExternalLibrary(ci)&&!(ci===Ie(fs.fileName)||Wi===".ts"&&bi===".d.ts"||Wi===".d.ts"&&Ac(gp(fs.fileName),"lib.")&&bi===".d.ts")&&(Wi===bi||(Wi===".tsx"&&bi===".ts"||Wi===".jsx"&&bi===".js")&&!Ui)?fs.fileName:void 0});return{newFileName:BHt(ci,S,s,Vn),files:gs}}function In(tn,wn,Mn,ci,es,Wi=VB,Vn){_e();let Ui=Ie(tn);return Oz.getEditsForRefactor(cn(Ui,Mn,Wi,wn),ci,es,Vn)}function Hn(tn,wn){return wn===0?{line:0,character:0}:ge.toLineColumnOffset(tn,wn)}function Ot(tn,wn){_e();let Mn=Mz.resolveCallHierarchyDeclaration(S,Lb(Ie(tn),wn));return Mn&&ont(Mn,ci=>Mz.createCallHierarchyItem(S,ci))}function $r(tn,wn){_e();let Mn=Ie(tn),ci=ant(Mz.resolveCallHierarchyDeclaration(S,wn===0?Mn:Lb(Mn,wn)));return ci?Mz.getIncomingCalls(S,ci,W):[]}function ri(tn,wn){_e();let Mn=Ie(tn),ci=ant(Mz.resolveCallHierarchyDeclaration(S,wn===0?Mn:Lb(Mn,wn)));return ci?Mz.getOutgoingCalls(S,ci):[]}function ao(tn,wn,Mn=VB){_e();let ci=Ie(tn);return Yit.provideInlayHints(Bt(ci,wn,Mn))}function Bs(tn,wn,Mn,ci,es){return Qit.mapCode(_.getCurrentSourceFile(tn),wn,Mn,s,Im.getFormatContext(ci,s),es)}let Ys={dispose:Ue,cleanupSemanticCache:We,getSyntacticDiagnostics:$e,getSemanticDiagnostics:Ye,getRegionSemanticDiagnostics:Tt,getSuggestionDiagnostics:Ke,getCompilerOptionsDiagnostics:Pt,getSyntacticClassifications:hc,getSemanticClassifications:ba,getEncodedSyntacticClassifications:yr,getEncodedSemanticClassifications:Wo,getCompletionsAtPosition:_r,getCompletionEntryDetails:Gt,getCompletionEntrySymbol:nt,getSignatureHelpItems:ks,getQuickInfoAtPosition:Dt,getDefinitionAtPosition:pr,getDefinitionAndBoundSpan:st,getImplementationAtPosition:zt,getTypeDefinitionAtPosition:ir,getReferencesAtPosition:mn,findReferences:Zi,getFileReferences:Ns,getDocumentHighlights:Ht,getNameOrDottedNameSpan:su,getBreakpointStatementAtPosition:Zn,getNavigateToItems:An,getRenameInfo:Mt,getSmartSelectionRange:xe,findRenameLocations:Br,getNavigationBarItems:ya,getNavigationTree:Gl,getOutliningSpans:hn,getTodoComments:ds,getBraceMatchingAtPosition:lo,getIndentationAtPosition:pa,getFormattingEditsForRange:Oa,getFormattingEditsForDocument:tl,getFormattingEditsAfterKeystroke:Qu,getDocCommentTemplateAtPosition:on,isValidBraceCompletionAtPosition:it,getJsxClosingTagAtPosition:nr,getLinkedEditingRangeAtPosition:Fr,getSpanOfEnclosingComment:bn,getCodeFixesAtPosition:Tg,getCombinedCodeFix:Cs,applyCodeActionCommand:Pn,organizeImports:Tu,getEditsForFileRename:Pr,getEmitOutput:si,getNonBoundSourceFile:Ic,getProgram:Ne,getCurrentProgram:()=>S,getAutoImportProvider:Te,updateIsDefinitionOfReferencedSymbols:Ze,getApplicableRefactors:fr,getEditsForRefactor:In,getMoveToRefactoringFileSuggestions:Je,toLineColumnOffset:Hn,getSourceMapper:()=>ge,clearSourceMapperCache:()=>ge.clearCache(),prepareCallHierarchy:Ot,provideCallHierarchyIncomingCalls:$r,provideCallHierarchyOutgoingCalls:ri,toggleLineComment:Dn,toggleMultilineComment:hr,commentSelection:En,uncommentSelection:Ni,provideInlayHints:ao,getSupportedCodeFixes:jnt,preparePasteEditsForFile:tr,getPasteEdits:ur,mapCode:Bs};switch(h){case 0:break;case 1:fon.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:Tks.forEach(tn=>Ys[tn]=()=>{throw new Error(`LanguageService Operation: ${tn} not allowed in LanguageServiceMode.Syntactic`)});break;default:pe.assertNever(h)}return Ys}function qnt(s){return s.nameTable||Rks(s),s.nameTable}function Rks(s){let c=s.nameTable=new Map;s.forEachChild(function g(d){if(Ir(d)&&!mrt(d)&&d.escapedText||d1(d)&&Nks(d)){let h=qJ(d);c.set(h,c.get(h)===void 0?d.pos:-1)}else if(p(d)){let h=d.escapedText;c.set(h,c.get(h)===void 0?d.pos:-1)}if(Lu(d,g),Xm(d))for(let h of d.jsDoc)Lu(h,g)})}function Nks(s){return HT(s)||s.parent.kind===284||xks(s)||fne(s)}function k1e(s){let c=Dks(s);return c&&(og(c.parent)||nQ(c.parent))?c:void 0}function Dks(s){switch(s.kind){case 11:case 15:case 9:if(s.parent.kind===168)return bY(s.parent.parent)?s.parent.parent:void 0;case 80:case 296:return bY(s.parent)&&(s.parent.parent.kind===211||s.parent.parent.kind===293)&&s.parent.name===s?s.parent:void 0}}function kks(s,c){let g=k1e(s);if(g){let d=c.getContextualType(g.parent),h=d&&xPe(g,c,d,!1);if(h&&h.length===1)return ma(h)}return c.getSymbolAtLocation(s)}function xPe(s,c,g,d){let h=d1e(s.name);if(!h)return E;if(!g.isUnion()){let R=g.getProperty(h);return R?[R]:E}let _=og(s.parent)||nQ(s.parent)?Me(g.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,s.parent)):g.types,S=Xt(_,R=>R.getProperty(h));if(d&&(S.length===0||S.length===g.types.length)){let R=g.getProperty(h);if(R)return[R]}return!_.length&&!S.length?Xt(g.types,R=>R.getProperty(h)):io(S,yg)}function xks(s){return s&&s.parent&&s.parent.kind===213&&s.parent.argumentExpression===s}function AYt(s){if(yd)return Ro(Mo(iu(yd.getExecutingFilePath())),Hs(s));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}zZe(Sks());function Ion(s,c,g){let d=[];g=wnt(g,d);let h=Ki(s)?s:[s],_=WEe(void 0,void 0,me,g,h,c,!0);return _.diagnostics=Nn(_.diagnostics,d),_}var $nt={};o($nt,{spanInSourceFileAtLocation:()=>Gks});function Gks(s,c){if(s.isDeclarationFile)return;let g=Jc(s,c),d=s.getLineAndCharacterOfPosition(c).line;if(s.getLineAndCharacterOfPosition(g.getStart(s)).line>d){let M=Gm(g.pos,s);if(!M||s.getLineAndCharacterOfPosition(M.getEnd()).line!==d)return;g=M}if(g.flags&33554432)return;return V(g);function h(M,ee){let re=oQ(M)?be(M.modifiers,So):void 0,ge=re?Yu(s.text,re.end):M.getStart(s);return wA(ge,(ee||M).getEnd())}function _(M,ee){return h(M,fQ(ee,ee.parent,s))}function S(M,ee){return M&&d===s.getLineAndCharacterOfPosition(M.getStart(s)).line?V(M):V(ee)}function R(M,ee,re){if(M){let ge=M.indexOf(ee);if(ge>=0){let Ie=ge,_e=ge+1;for(;Ie>0&&re(M[Ie-1]);)Ie--;for(;_e0)return V(Pt.declarations[0])}else return V(Ke.initializer)}function We(Ke){if(Ke.initializer)return Ze(Ke);if(Ke.condition)return h(Ke.condition);if(Ke.incrementor)return h(Ke.incrementor)}function Ue(Ke){let Pt=F(Ke.elements,_r=>_r.kind!==233?_r:void 0);return Pt?V(Pt):Ke.parent.kind===209?h(Ke.parent):ee(Ke.parent)}function $e(Ke){pe.assert(Ke.kind!==208&&Ke.kind!==207);let Pt=Ke.kind===210?Ke.elements:Ke.properties,_r=F(Pt,Gt=>Gt.kind!==233?Gt:void 0);return _r?V(_r):h(Ke.parent.kind===227?Ke.parent:Ke)}function Ye(Ke){switch(Ke.parent.kind){case 267:let Pt=Ke.parent;return S(Gm(Ke.pos,s,Ke.parent),Pt.members.length?Pt.members[0]:Pt.getLastToken(s));case 264:let _r=Ke.parent;return S(Gm(Ke.pos,s,Ke.parent),_r.members.length?_r.members[0]:_r.getLastToken(s));case 270:return S(Ke.parent.parent,Ke.parent.clauses[0])}return V(Ke.parent)}function Tt(Ke){switch(Ke.parent.kind){case 269:if(PF(Ke.parent.parent)!==1)return;case 267:case 264:return h(Ke);case 242:if(mP(Ke.parent))return h(Ke);case 300:return V(li(Ke.parent.statements));case 270:let Pt=Ke.parent,_r=li(Pt.clauses);return _r?V(li(_r.statements)):void 0;case 207:let Gt=Ke.parent;return V(li(Gt.elements)||Gt);default:if(e9(Ke.parent)){let nt=Ke.parent;return h(li(nt.properties)||nt)}return V(Ke.parent)}}function ot(Ke){switch(Ke.parent.kind){case 208:let Pt=Ke.parent;return h(li(Pt.elements)||Pt);default:if(e9(Ke.parent)){let _r=Ke.parent;return h(li(_r.elements)||_r)}return V(Ke.parent)}}function Qe(Ke){return Ke.parent.kind===247||Ke.parent.kind===214||Ke.parent.kind===215?T(Ke):Ke.parent.kind===218?W(Ke):V(Ke.parent)}function mt(Ke){switch(Ke.parent.kind){case 219:case 263:case 220:case 175:case 174:case 178:case 179:case 177:case 248:case 247:case 249:case 251:case 214:case 215:case 218:return T(Ke);default:return V(Ke.parent)}}function ht(Ke){return bu(Ke.parent)||Ke.parent.kind===304||Ke.parent.kind===170?T(Ke):V(Ke.parent)}function _t(Ke){return Ke.parent.kind===217?W(Ke):V(Ke.parent)}function Rt(Ke){return Ke.parent.kind===247?_(Ke,Ke.parent.expression):V(Ke.parent)}function Lt(Ke){return Ke.parent.kind===251?W(Ke):V(Ke.parent)}}}var Mz={};o(Mz,{createCallHierarchyItem:()=>dYt,getIncomingCalls:()=>Mks,getOutgoingCalls:()=>qks,resolveCallHierarchyDeclaration:()=>Son});function Fks(s){return(UA(s)||vd(s))&&rh(s)}function hon(s){return pi(s)||nc(s)}function x1e(s){return(UA(s)||lA(s)||vd(s))&&hon(s.parent)&&s===s.parent.initializer&&Ir(s.parent.name)&&(!!(dm(s.parent)&2)||pi(s.parent))}function mon(s){return ll(s)||xh(s)||ih(s)||UA(s)||pm(s)||vd(s)||fl(s)||uu(s)||hl(s)||Bg(s)||Dg(s)}function ese(s){return ll(s)||xh(s)&&Ir(s.name)||ih(s)||pm(s)||fl(s)||uu(s)||hl(s)||Bg(s)||Dg(s)||Fks(s)||x1e(s)}function Con(s){return ll(s)?s:rh(s)?s.name:x1e(s)?s.parent.name:pe.checkDefined(s.modifiers&&de(s.modifiers,_on))}function _on(s){return s.kind===90}function yon(s,c){let g=Con(c);return g&&s.getSymbolAtLocation(g)}function Zks(s,c){if(ll(c))return{text:c.fileName,pos:0,end:0};if((ih(c)||pm(c))&&!rh(c)){let h=c.modifiers&&de(c.modifiers,_on);if(h)return{text:"default",pos:h.getStart(),end:h.getEnd()}}if(fl(c)){let h=c.getSourceFile(),_=Yu(h.text,Av(c).pos),S=_+6,R=s.getTypeChecker(),T=R.getSymbolAtLocation(c.parent);return{text:`${T?`${R.symbolToString(T,c.parent)} `:""}static {}`,pos:_,end:S}}let g=x1e(c)?c.parent.name:pe.checkDefined(Il(c),"Expected call hierarchy item to have a name"),d=Ir(g)?Vo(g):d1(g)?g.text:Un(g)&&d1(g.expression)?g.expression.text:void 0;if(d===void 0){let h=s.getTypeChecker(),_=h.getSymbolAtLocation(g);_&&(d=h.symbolToString(_,c))}if(d===void 0){let h=ett();d=dP(_=>h.writeNode(4,c,c.getSourceFile(),_))}return{text:d,pos:g.getStart(),end:g.getEnd()}}function Lks(s){var c,g,d,h;if(x1e(s))return pi(s.parent)&&xa(s.parent.parent)?vd(s.parent.parent)?(c=CB(s.parent.parent))==null?void 0:c.getText():(g=s.parent.parent.name)==null?void 0:g.getText():_N(s.parent.parent.parent.parent)&&Ir(s.parent.parent.parent.parent.parent.name)?s.parent.parent.parent.parent.parent.name.getText():void 0;switch(s.kind){case 178:case 179:case 175:return s.parent.kind===211?(d=CB(s.parent))==null?void 0:d.getText():(h=Il(s.parent))==null?void 0:h.getText();case 263:case 264:case 268:if(_N(s.parent)&&Ir(s.parent.parent.name))return s.parent.parent.name.getText()}}function bon(s,c){if(c.body)return c;if(Tc(c))return lN(c.parent);if(ih(c)||uu(c)){let g=yon(s,c);return g&&g.valueDeclaration&&kd(g.valueDeclaration)&&g.valueDeclaration.body?g.valueDeclaration:void 0}return c}function Eon(s,c){let g=yon(s,c),d;if(g&&g.declarations){let h=po(g.declarations),_=At(g.declarations,T=>({file:T.getSourceFile().fileName,pos:T.pos}));h.sort((T,W)=>Ca(_[T].file,_[W].file)||_[T].pos-_[W].pos);let S=At(h,T=>g.declarations[T]),R;for(let T of S)ese(T)&&((!R||R.parent!==T.parent||R.end!==T.pos)&&(d=Ft(d,T)),R=T)}return d}function eit(s,c){return fl(c)?c:kd(c)?bon(s,c)??Eon(s,c)??c:Eon(s,c)??c}function Son(s,c){let g=s.getTypeChecker(),d=!1;for(;;){if(ese(c))return eit(g,c);if(mon(c)){let h=ji(c,ese);return h&&eit(g,h)}if(HT(c)){if(ese(c.parent))return eit(g,c.parent);if(mon(c.parent)){let h=ji(c.parent,ese);return h&&eit(g,h)}return hon(c.parent)&&c.parent.initializer&&x1e(c.parent.initializer)?c.parent.initializer:void 0}if(Tc(c))return ese(c.parent)?c.parent:void 0;if(c.kind===126&&fl(c.parent)){c=c.parent;continue}if(nc(c)&&c.initializer&&x1e(c.initializer))return c.initializer;if(!d){let h=g.getSymbolAtLocation(c);if(h&&(h.flags&2097152&&(h=g.getAliasedSymbol(h)),h.valueDeclaration)){d=!0,c=h.valueDeclaration;continue}}return}}function dYt(s,c){let g=c.getSourceFile(),d=Zks(s,c),h=Lks(c),_=pQ(c),S=Yde(c),R=wA(Yu(g.text,c.getFullStart(),!1,!0),c.getEnd()),T=wA(d.pos,d.end);return{file:g.fileName,kind:_,kindModifiers:S,name:d.text,containerName:h,span:R,selectionSpan:T}}function Vks(s){return s!==void 0}function Pks(s){if(s.kind===Kp.EntryKind.Node){let{node:c}=s;if(prt(c,!0,!0)||M5t(c,!0,!0)||H5t(c,!0,!0)||Y5t(c,!0,!0)||Wie(c)||Crt(c)){let g=c.getSourceFile();return{declaration:ji(c,ese)||g,range:Grt(c,g)}}}}function von(s){return rd(s.declaration)}function Wks(s,c){return{from:s,fromSpans:c}}function Oks(s,c){return Wks(dYt(s,c[0].declaration),At(c,g=>t9(g.range)))}function Mks(s,c,g){if(ll(c)||xh(c)||fl(c))return[];let d=Con(c),h=Me(Kp.findReferenceOrRenameEntries(s,g,s.getSourceFiles(),d,0,{use:Kp.FindReferencesUse.References},Pks),Vks);return h?Yn(h,von,_=>Oks(s,_)):[]}function Hks(s,c){function g(h){let _=MI(h)?h.tag:eI(h)?h.tagName:_p(h)||fl(h)?h:h.expression,S=Son(s,_);if(S){let R=Grt(_,h.getSourceFile());if(Ki(S))for(let T of S)c.push({declaration:T,range:R});else c.push({declaration:S,range:R})}}function d(h){if(h&&!(h.flags&33554432)){if(ese(h)){if(xa(h))for(let _ of h.members)_.name&&Un(_.name)&&d(_.name.expression);return}switch(h.kind){case 80:case 272:case 273:case 279:case 265:case 266:return;case 176:g(h);return;case 217:case 235:d(h.expression);return;case 261:case 170:d(h.name),d(h.initializer);return;case 214:g(h),d(h.expression),F(h.arguments,d);return;case 215:g(h),d(h.expression),F(h.arguments,d);return;case 216:g(h),d(h.tag),d(h.template);return;case 287:case 286:g(h),d(h.tagName),d(h.attributes);return;case 171:g(h),d(h.expression);return;case 212:case 213:g(h),Lu(h,d);break;case 239:d(h.expression);return}ww(h)||Lu(h,d)}}return d}function Yks(s,c){F(s.statements,c)}function Qks(s,c){!Ga(s,128)&&s.body&&_N(s.body)&&F(s.body.statements,c)}function Xks(s,c,g){let d=bon(s,c);d&&(F(d.parameters,g),g(d.body))}function Jks(s,c){c(s.body)}function Uks(s,c){F(s.modifiers,c);let g=OL(s);g&&c(g.expression);for(let d of s.members)LB(d)&&F(d.modifiers,c),pi(d)?c(d.initializer):Tc(d)&&d.body?(F(d.parameters,c),c(d.body)):fl(d)&&c(d)}function Kks(s,c){let g=[],d=Hks(s,g);switch(c.kind){case 308:Yks(c,d);break;case 268:Qks(c,d);break;case 263:case 219:case 220:case 175:case 178:case 179:Xks(s.getTypeChecker(),c,d);break;case 264:case 232:Uks(c,d);break;case 176:Jks(c,d);break;default:pe.assertNever(c)}return g}function jks(s,c){return{to:s,fromSpans:c}}function zks(s,c){return jks(dYt(s,c[0].declaration),At(c,g=>t9(g.range)))}function qks(s,c){return c.flags&33554432||hl(c)?[]:Yn(Kks(s,c),von,g=>zks(s,g))}var pYt={};o(pYt,{v2020:()=>Bon});var Bon={};o(Bon,{TokenEncodingConsts:()=>$sn,TokenModifier:()=>ton,TokenType:()=>eon,getEncodedSemanticClassifications:()=>aYt,getSemanticClassifications:()=>ron});var x0={};o(x0,{PreserveOptionalFlags:()=>Oun,addNewNodeForMemberSymbol:()=>Mun,codeFixAll:()=>Qd,createCodeFixAction:()=>ug,createCodeFixActionMaybeFixAll:()=>hYt,createCodeFixActionWithoutFixAll:()=>sR,createCombinedCodeActions:()=>Hz,createFileTextChanges:()=>won,createImportAdder:()=>yQ,createImportSpecifierResolver:()=>aGs,createMissingMemberNodes:()=>VQt,createSignatureDeclarationFromCallExpression:()=>PQt,createSignatureDeclarationFromSignature:()=>Bit,createStubbedBody:()=>WPe,eachDiagnostic:()=>Yz,findAncestorMatchingSpan:()=>XQt,generateAccessorFromProperty:()=>jun,getAccessorConvertiblePropertyAtPosition:()=>$un,getAllFixes:()=>rxs,getFixes:()=>txs,getImportCompletionAction:()=>cGs,getImportKind:()=>git,getJSDocTypedefNodes:()=>sGs,getNoopSymbolTrackerWithResolver:()=>rse,getPromoteTypeOnlyCompletionAction:()=>lGs,getSupportedErrorCodes:()=>$ks,importFixName:()=>Kan,importSymbols:()=>FU,parameterShouldGetTypeFromJSDoc:()=>ian,registerCodeFix:()=>xg,setJsonCompilerOptionValue:()=>YQt,setJsonCompilerOptionValues:()=>HQt,tryGetAutoImportableReferenceFromTypeNode:()=>bQ,typeNodeToAutoImportableTypeNode:()=>WQt,typePredicateToAutoImportableTypeNode:()=>Qun,typeToAutoImportableTypeNode:()=>wit,typeToMinimizedReferenceType:()=>Yun});var fYt=dl(),IYt=new Map;function sR(s,c,g){return mYt(s,IQ(g),c,void 0,void 0)}function ug(s,c,g,d,h,_){return mYt(s,IQ(g),c,d,IQ(h),_)}function hYt(s,c,g,d,h,_){return mYt(s,IQ(g),c,d,h&&IQ(h),_)}function mYt(s,c,g,d,h,_){return{fixName:s,description:c,changes:g,fixId:d,fixAllDescription:h,commands:_?[_]:void 0}}function xg(s){for(let c of s.errorCodes)CYt=void 0,fYt.add(String(c),s);if(s.fixIds)for(let c of s.fixIds)pe.assert(!IYt.has(c)),IYt.set(c,s)}var CYt;function $ks(){return CYt??(CYt=Do(fYt.keys()))}function exs(s,c){let{errorCodes:g}=s,d=0;for(let _ of c)if(k(g,_.code)&&d++,d>1)break;let h=d<2;return({fixId:_,fixAllDescription:S,...R})=>h?R:{...R,fixId:_,fixAllDescription:S}}function txs(s){let c=Ton(s),g=fYt.get(String(s.errorCode));return er(g,d=>At(d.getCodeActions(s),exs(d,c)))}function rxs(s){return IYt.get(Ma(s.fixId,Xs)).getAllCodeActions(s)}function Hz(s,c){return{changes:s,commands:c}}function won(s,c){return{fileName:s,textChanges:c}}function Qd(s,c,g){let d=[],h=xo.ChangeTracker.with(s,_=>Yz(s,c,S=>g(_,S,d)));return Hz(h,d.length===0?void 0:d)}function Yz(s,c,g){for(let d of Ton(s))k(c,d.code)&&g(d)}function Ton({program:s,sourceFile:c,cancellationToken:g}){let d=[...s.getSemanticDiagnostics(c,g),...s.getSyntacticDiagnostics(c,g),...Ent(c,s,g)];return Ly(s.getCompilerOptions())&&d.push(...s.getDeclarationDiagnostics(c,g)),d}var _Yt="addConvertToUnknownForNonOverlappingTypes",Ron=[Z.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];xg({errorCodes:Ron,getCodeActions:function(c){let g=Don(c.sourceFile,c.span.start);if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>Non(h,c.sourceFile,g));return[ug(_Yt,d,Z.Add_unknown_conversion_for_non_overlapping_types,_Yt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[_Yt],getAllCodeActions:s=>Qd(s,Ron,(c,g)=>{let d=Don(g.file,g.start);d&&Non(c,g.file,d)})});function Non(s,c,g){let d=Yd(g)?me.createAsExpression(g.expression,me.createKeywordTypeNode(159)):me.createTypeAssertion(me.createKeywordTypeNode(159),g.expression);s.replaceNode(c,g.expression,d)}function Don(s,c){if(!wo(s))return ji(Jc(s,c),g=>Yd(g)||xF(g))}xg({errorCodes:[Z.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,Z.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,Z.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(c){let{sourceFile:g}=c,d=xo.ChangeTracker.with(c,h=>{let _=me.createExportDeclaration(void 0,!1,me.createNamedExports([]),void 0);h.insertNodeAtEndOfScope(g,g,_)});return[sR("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var yYt="addMissingAsync",kon=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];xg({fixIds:[yYt],errorCodes:kon,getCodeActions:function(c){let{sourceFile:g,errorCode:d,cancellationToken:h,program:_,span:S}=c,R=de(_.getTypeChecker().getDiagnostics(g,h),ixs(S,d)),T=R&&R.relatedInformation&&de(R.relatedInformation,M=>M.code===Z.Did_you_mean_to_mark_this_function_as_async.code),W=Gon(g,T);return W?[xon(c,W,M=>xo.ChangeTracker.with(c,M))]:void 0},getAllCodeActions:s=>{let{sourceFile:c}=s,g=new Set;return Qd(s,kon,(d,h)=>{let _=h.relatedInformation&&de(h.relatedInformation,T=>T.code===Z.Did_you_mean_to_mark_this_function_as_async.code),S=Gon(c,_);return S?xon(s,S,T=>(T(d),[]),g):void 0})}});function xon(s,c,g,d){let h=g(_=>nxs(_,s.sourceFile,c,d));return ug(yYt,h,Z.Add_async_modifier_to_containing_function,yYt,Z.Add_all_missing_async_modifiers)}function nxs(s,c,g,d){if(d&&d.has(rd(g)))return;d?.add(rd(g));let h=me.replaceModifiers(JA(g,!0),me.createNodeArray(me.createModifiersFromModifierFlags(Nx(g)|1024)));s.replaceNode(c,g,h)}function Gon(s,c){if(!c)return;let g=Jc(s,c.start);return ji(g,h=>h.getStart(s)Rs(c)?"quit":(lA(h)||uu(h)||UA(h)||ih(h))&&Xie(c,Oy(h,s)))}function ixs(s,c){return({start:g,length:d,relatedInformation:h,code:_})=>ws(g)&&ws(d)&&Xie({start:g,length:d},s)&&_===c&&!!h&&jt(h,S=>S.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var bYt="addMissingAwait",Fon=Z.Property_0_does_not_exist_on_type_1.code,Zon=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],EYt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Fon,...Zon];xg({fixIds:[bYt],errorCodes:EYt,getCodeActions:function(c){let{sourceFile:g,errorCode:d,span:h,cancellationToken:_,program:S}=c,R=Lon(g,d,h,_,S);if(!R)return;let T=c.program.getTypeChecker(),W=V=>xo.ChangeTracker.with(c,V);return Hr([Von(c,R,d,T,W),Pon(c,R,d,T,W)])},getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=s.program.getTypeChecker(),_=new Set;return Qd(s,EYt,(S,R)=>{let T=Lon(c,R.code,R,d,g);if(!T)return;let W=V=>(V(S),[]);return Von(s,T,R.code,h,W,_)||Pon(s,T,R.code,h,W,_)})}});function Lon(s,c,g,d,h){let _=snt(s,g);return _&&sxs(s,c,g,d,h)&&Won(_)?_:void 0}function Von(s,c,g,d,h,_){let{sourceFile:S,program:R,cancellationToken:T}=s,W=oxs(c,S,T,R,d);if(W){let V=h(M=>{F(W.initializers,({expression:ee})=>SYt(M,g,S,d,ee,_)),_&&W.needsSecondPassForFixAll&&SYt(M,g,S,d,c,_)});return sR("addMissingAwaitToInitializer",V,W.initializers.length===1?[Z.Add_await_to_initializer_for_0,W.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function Pon(s,c,g,d,h,_){let S=h(R=>SYt(R,g,s.sourceFile,d,c,_));return ug(bYt,S,Z.Add_await,bYt,Z.Fix_all_expressions_possibly_missing_await)}function sxs(s,c,g,d,h){let S=h.getTypeChecker().getDiagnostics(s,d);return jt(S,({start:R,length:T,relatedInformation:W,code:V})=>ws(R)&&ws(T)&&Xie({start:R,length:T},g)&&V===c&&!!W&&jt(W,M=>M.code===Z.Did_you_forget_to_use_await.code))}function oxs(s,c,g,d,h){let _=axs(s,h);if(!_)return;let S=_.isCompleteFix,R;for(let T of _.identifiers){let W=h.getSymbolAtLocation(T);if(!W)continue;let V=Gs(W.valueDeclaration,nc),M=V&&Gs(V.name,Ir),ee=ML(V,244);if(!V||!ee||V.type||!V.initializer||ee.getSourceFile()!==c||Ga(ee,32)||!M||!Won(V.initializer)){S=!1;continue}let re=d.getSemanticDiagnostics(c,g);if(Kp.Core.eachSymbolReferenceInFile(M,h,c,Ie=>T!==Ie&&!cxs(Ie,re,c,h))){S=!1;continue}(R||(R=[])).push({expression:V.initializer,declarationSymbol:W})}return R&&{initializers:R,needsSecondPassForFixAll:!S}}function axs(s,c){if(jo(s.parent)&&Ir(s.parent.expression))return{identifiers:[s.parent.expression],isCompleteFix:!0};if(Ir(s))return{identifiers:[s],isCompleteFix:!0};if(fo(s)){let g,d=!0;for(let h of[s.left,s.right]){let _=c.getTypeAtLocation(h);if(c.getPromisedTypeOfPromise(_)){if(!Ir(h)){d=!1;continue}(g||(g=[])).push(h)}}return g&&{identifiers:g,isCompleteFix:d}}}function cxs(s,c,g,d){let h=jo(s.parent)?s.parent.name:fo(s.parent)?s.parent:s,_=de(c,S=>S.start===h.getStart(g)&&S.start+S.length===h.getEnd());return _&&k(EYt,_.code)||d.getTypeAtLocation(h).flags&1}function Won(s){return s.flags&65536||!!ji(s,c=>c.parent&&lA(c.parent)&&c.parent.body===c||$u(c)&&(c.parent.kind===263||c.parent.kind===219||c.parent.kind===220||c.parent.kind===175))}function SYt(s,c,g,d,h,_){if(iEe(h.parent)&&!h.parent.awaitModifier){let S=d.getTypeAtLocation(h),R=d.getAnyAsyncIterableType();if(R&&d.isTypeAssignableTo(S,R)){let T=h.parent;s.replaceNode(g,T,me.updateForOfStatement(T,me.createToken(135),T.initializer,T.expression,T.statement));return}}if(fo(h))for(let S of[h.left,h.right]){if(_&&Ir(S)){let W=d.getSymbolAtLocation(S);if(W&&_.has(kg(W)))continue}let R=d.getTypeAtLocation(S),T=d.getPromisedTypeOfPromise(R)?me.createAwaitExpression(S):S;s.replaceNode(g,S,T)}else if(c===Fon&&jo(h.parent)){if(_&&Ir(h.parent.expression)){let S=d.getSymbolAtLocation(h.parent.expression);if(S&&_.has(kg(S)))return}s.replaceNode(g,h.parent.expression,me.createParenthesizedExpression(me.createAwaitExpression(h.parent.expression))),Oon(s,h.parent.expression,g)}else if(k(Zon,c)&&av(h.parent)){if(_&&Ir(h)){let S=d.getSymbolAtLocation(h);if(S&&_.has(kg(S)))return}s.replaceNode(g,h,me.createParenthesizedExpression(me.createAwaitExpression(h))),Oon(s,h,g)}else{if(_&&nc(h.parent)&&Ir(h.parent.name)){let S=d.getSymbolAtLocation(h.parent.name);if(S&&!Ar(_,kg(S)))return}s.replaceNode(g,h,me.createAwaitExpression(h))}}function Oon(s,c,g){let d=Gm(c.pos,g);d&&nPe(d.end,d.parent,g)&&s.insertText(g,c.getStart(g),";")}var vYt="addMissingConst",Mon=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];xg({errorCodes:Mon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Hon(d,c.sourceFile,c.span.start,c.program));if(g.length>0)return[ug(vYt,g,Z.Add_const_to_unresolved_variable,vYt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[vYt],getAllCodeActions:s=>{let c=new Set;return Qd(s,Mon,(g,d)=>Hon(g,d.file,d.start,s.program,c))}});function Hon(s,c,g,d,h){let _=Jc(c,g),S=ji(_,W=>DL(W.parent)?W.parent.initializer===W:lxs(W)?!1:"quit");if(S)return tit(s,S,c,h);let R=_.parent;if(fo(R)&&R.operatorToken.kind===64&&VC(R.parent))return tit(s,_,c,h);if(OI(R)){let W=d.getTypeChecker();return ue(R.elements,V=>uxs(V,W))?tit(s,R,c,h):void 0}let T=ji(_,W=>VC(W.parent)?!0:gxs(W)?!1:"quit");if(T){let W=d.getTypeChecker();return Yon(T,W)?tit(s,T,c,h):void 0}}function tit(s,c,g,d){(!d||Ar(d,c))&&s.insertModifierBefore(g,87,c)}function lxs(s){switch(s.kind){case 80:case 210:case 211:case 304:case 305:return!0;default:return!1}}function uxs(s,c){let g=Ir(s)?s:Jm(s,!0)&&Ir(s.left)?s.left:void 0;return!!g&&!c.getSymbolAtLocation(g)}function gxs(s){switch(s.kind){case 80:case 227:case 28:return!0;default:return!1}}function Yon(s,c){return fo(s)?s.operatorToken.kind===28?ue([s.left,s.right],g=>Yon(g,c)):s.operatorToken.kind===64&&Ir(s.left)&&!c.getSymbolAtLocation(s.left):!1}var BYt="addMissingDeclareProperty",Qon=[Z.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];xg({errorCodes:Qon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Xon(d,c.sourceFile,c.span.start));if(g.length>0)return[ug(BYt,g,Z.Prefix_with_declare,BYt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[BYt],getAllCodeActions:s=>{let c=new Set;return Qd(s,Qon,(g,d)=>Xon(g,d.file,d.start,c))}});function Xon(s,c,g,d){let h=Jc(c,g);if(!Ir(h))return;let _=h.parent;_.kind===173&&(!d||Ar(d,_))&&s.insertModifierBefore(c,138,_)}var wYt="addMissingInvocationForDecorator",Jon=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];xg({errorCodes:Jon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Uon(d,c.sourceFile,c.span.start));return[ug(wYt,g,Z.Call_decorator_expression,wYt,Z.Add_to_all_uncalled_decorators)]},fixIds:[wYt],getAllCodeActions:s=>Qd(s,Jon,(c,g)=>Uon(c,g.file,g.start))});function Uon(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createCallExpression(h.expression,void 0,void 0);s.replaceNode(c,h.expression,_)}var TYt="addMissingResolutionModeImportAttribute",Kon=[Z.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code,Z.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code];xg({errorCodes:Kon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>jon(d,c.sourceFile,c.span.start,c.program,c.host,c.preferences));return[ug(TYt,g,Z.Add_resolution_mode_import_attribute,TYt,Z.Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it)]},fixIds:[TYt],getAllCodeActions:s=>Qd(s,Kon,(c,g)=>jon(c,g.file,g.start,s.program,s.host,s.preferences))});function jon(s,c,g,d,h,_){var S,R,T;let W=Jc(c,g),V=ji(W,Hp(Mf,Um));pe.assert(!!V,"Expected position to be owned by an ImportDeclaration or ImportType.");let M=_1(c,_)===0,ee=ZY(V),re=!ee||((S=BU(ee.text,c.fileName,d.getCompilerOptions(),h,d.getModuleResolutionCache(),void 0,99).resolvedModule)==null?void 0:S.resolvedFileName)===((T=(R=d.getResolvedModuleFromModuleSpecifier(ee,c))==null?void 0:R.resolvedModule)==null?void 0:T.resolvedFileName),ge=V.attributes?me.updateImportAttributes(V.attributes,me.createNodeArray([...V.attributes.elements,me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))],V.attributes.elements.hasTrailingComma),V.attributes.multiLine):me.createImportAttributes(me.createNodeArray([me.createImportAttribute(me.createStringLiteral("resolution-mode",M),me.createStringLiteral(re?"import":"require",M))]));V.kind===273?s.replaceNode(c,V,me.updateImportDeclaration(V,V.modifiers,V.importClause,V.moduleSpecifier,ge)):s.replaceNode(c,V,me.updateImportTypeNode(V,V.argument,ge,V.qualifier,V.typeArguments))}var RYt="addNameToNamelessParameter",zon=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];xg({errorCodes:zon,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>qon(d,c.sourceFile,c.span.start));return[ug(RYt,g,Z.Add_parameter_name,RYt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[RYt],getAllCodeActions:s=>Qd(s,zon,(c,g)=>qon(c,g.file,g.start))});function qon(s,c,g){let d=Jc(c,g),h=d.parent;if(!Si(h))return pe.fail("Tried to add a parameter name to a non-parameter: "+pe.formatSyntaxKind(d.kind));let _=h.parent.parameters.indexOf(h);pe.assert(!h.type,"Tried to add a parameter name to a parameter that already had one."),pe.assert(_>-1,"Parameter not found in parent parameter list.");let S=h.name.getEnd(),R=me.createTypeReferenceNode(h.name,void 0),T=$on(c,h);for(;T;)R=me.createArrayTypeNode(R),S=T.getEnd(),T=$on(c,T);let W=me.createParameterDeclaration(h.modifiers,h.dotDotDotToken,"arg"+_,h.questionToken,h.dotDotDotToken&&!kF(R)?me.createArrayTypeNode(R):R,h.initializer);s.replaceRange(c,Gy(h.getStart(c),S),W)}function $on(s,c){let g=fQ(c.name,c.parent,s);if(g&&g.kind===23&&p2(g.parent)&&Si(g.parent.parent))return g.parent.parent}var ean="addOptionalPropertyUndefined",Axs=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code];xg({errorCodes:Axs,getCodeActions(s){let c=s.program.getTypeChecker(),g=dxs(s.sourceFile,s.span,c);if(!g.length)return;let d=xo.ChangeTracker.with(s,h=>fxs(h,g));return[sR(ean,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[ean]});function dxs(s,c,g){var d,h;let _=tan(snt(s,c),g);if(!_)return E;let{source:S,target:R}=_,T=pxs(S,R,g)?g.getTypeAtLocation(R.expression):g.getTypeAtLocation(R);return(h=(d=T.symbol)==null?void 0:d.declarations)!=null&&h.some(W=>ms(W).fileName.match(/\.d\.ts$/))?E:g.getExactOptionalProperties(T)}function pxs(s,c,g){return jo(c)&&!!g.getExactOptionalProperties(g.getTypeAtLocation(c.expression)).length&&g.getTypeAtLocation(s)===g.getUndefinedType()}function tan(s,c){var g;if(s){if(fo(s.parent)&&s.parent.operatorToken.kind===64)return{source:s.parent.right,target:s.parent.left};if(nc(s.parent)&&s.parent.initializer)return{source:s.parent.initializer,target:s.parent.name};if(Zl(s.parent)){let d=c.getSymbolAtLocation(s.parent.expression);if(!d?.valueDeclaration||!lP(d.valueDeclaration.kind)||!un(s))return;let h=s.parent.arguments.indexOf(s);if(h===-1)return;let _=d.valueDeclaration.parameters[h].name;if(Ir(_))return{source:s,target:_}}else if(fm(s.parent)&&Ir(s.parent.name)||a0(s.parent)){let d=tan(s.parent.parent,c);if(!d)return;let h=c.getPropertyOfType(c.getTypeAtLocation(d.target),s.parent.name.text),_=(g=h?.declarations)==null?void 0:g[0];return _?{source:fm(s.parent)?s.parent.initializer:s.parent.name,target:_}:void 0}}else return}function fxs(s,c){for(let g of c){let d=g.valueDeclaration;if(d&&(ss(d)||pi(d))&&d.type){let h=me.createUnionTypeNode([...d.type.kind===193?d.type.types:[d.type],me.createTypeReferenceNode("undefined")]);s.replaceNode(d.getSourceFile(),d.type,h)}}}var NYt="annotateWithTypeFromJSDoc",ran=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];xg({errorCodes:ran,getCodeActions(s){let c=nan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,d=>oan(d,s.sourceFile,c));return[ug(NYt,g,Z.Annotate_with_type_from_JSDoc,NYt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[NYt],getAllCodeActions:s=>Qd(s,ran,(c,g)=>{let d=nan(g.file,g.start);d&&oan(c,g.file,d)})});function nan(s,c){let g=Jc(s,c);return Gs(Si(g.parent)?g.parent.parent:g.parent,ian)}function ian(s){return Ixs(s)&&san(s)}function san(s){return kd(s)?s.parameters.some(san)||!s.type&&!!AJ(s):!s.type&&!!eN(s)}function oan(s,c,g){if(kd(g)&&(AJ(g)||g.parameters.some(d=>!!eN(d)))){if(!g.typeParameters){let h=uAe(g);h.length&&s.insertTypeParameters(c,g,h)}let d=lA(g)&&!qd(g,21,c);d&&s.insertNodeBefore(c,ma(g.parameters),me.createToken(21));for(let h of g.parameters)if(!h.type){let _=eN(h);_&&s.tryInsertTypeAnnotation(c,h,Mr(_,_Q,uc))}if(d&&s.insertNodeAfter(c,Ei(g.parameters),me.createToken(22)),!g.type){let h=AJ(g);h&&s.tryInsertTypeAnnotation(c,g,Mr(h,_Q,uc))}}else{let d=pe.checkDefined(eN(g),"A JSDocType for this declaration should exist");pe.assert(!g.type,"The JSDocType decl should have a type"),s.tryInsertTypeAnnotation(c,g,Mr(d,_Q,uc))}}function Ixs(s){return kd(s)||s.kind===261||s.kind===172||s.kind===173}function _Q(s){switch(s.kind){case 313:case 314:return me.createTypeReferenceNode("any",E);case 317:return mxs(s);case 316:return _Q(s.type);case 315:return Cxs(s);case 319:return _xs(s);case 318:return yxs(s);case 184:return Exs(s);case 323:return hxs(s);default:let c=_s(s,_Q,void 0);return ti(c,1),c}}function hxs(s){let c=me.createTypeLiteralNode(At(s.jsDocPropertyTags,g=>me.createPropertySignature(void 0,Ir(g.name)?g.name:g.name.right,jne(g)?me.createToken(58):void 0,g.typeExpression&&Mr(g.typeExpression.type,_Q,uc)||me.createKeywordTypeNode(133))));return ti(c,1),c}function mxs(s){return me.createUnionTypeNode([Mr(s.type,_Q,uc),me.createTypeReferenceNode("undefined",E)])}function Cxs(s){return me.createUnionTypeNode([Mr(s.type,_Q,uc),me.createTypeReferenceNode("null",E)])}function _xs(s){return me.createArrayTypeNode(Mr(s.type,_Q,uc))}function yxs(s){return me.createFunctionTypeNode(E,s.parameters.map(bxs),s.type??me.createKeywordTypeNode(133))}function bxs(s){let c=s.parent.parameters.indexOf(s),g=s.type.kind===319&&c===s.parent.parameters.length-1,d=s.name||(g?"rest":"arg"+c),h=g?me.createToken(26):s.dotDotDotToken;return me.createParameterDeclaration(s.modifiers,h,d,s.questionToken,Mr(s.type,_Q,uc),s.initializer)}function Exs(s){let c=s.typeName,g=s.typeArguments;if(Ir(s.typeName)){if(Uge(s))return Sxs(s);let d=s.typeName.text;switch(s.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=me.createIdentifier(d),(d==="Array"||d==="Promise")&&!s.typeArguments?g=me.createNodeArray([me.createTypeReferenceNode("any",E)]):g=Ws(s.typeArguments,_Q,uc)}return me.createTypeReferenceNode(c,g)}function Sxs(s){let c=me.createParameterDeclaration(void 0,void 0,s.typeArguments[0].kind===150?"n":"s",void 0,me.createTypeReferenceNode(s.typeArguments[0].kind===150?"number":"string",[]),void 0),g=me.createTypeLiteralNode([me.createIndexSignature(void 0,[c],s.typeArguments[1])]);return ti(g,1),g}var DYt="convertFunctionToEs6Class",aan=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];xg({errorCodes:aan,getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>can(g,s.sourceFile,s.span.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()));return[ug(DYt,c,Z.Convert_function_to_an_ES2015_class,DYt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[DYt],getAllCodeActions:s=>Qd(s,aan,(c,g)=>can(c,g.file,g.start,s.program.getTypeChecker(),s.preferences,s.program.getCompilerOptions()))});function can(s,c,g,d,h,_){let S=d.getSymbolAtLocation(Jc(c,g));if(!S||!S.valueDeclaration||!(S.flags&19))return;let R=S.valueDeclaration;if(ih(R)||UA(R))s.replaceNode(c,R,V(R));else if(nc(R)){let M=W(R);if(!M)return;let ee=R.parent.parent;u_(R.parent)&&R.parent.declarations.length>1?(s.delete(c,R),s.insertNodeAfter(c,ee,M)):s.replaceNode(c,ee,M)}function T(M){let ee=[];return M.exports&&M.exports.forEach(Ie=>{if(Ie.name==="prototype"&&Ie.declarations){let _e=Ie.declarations[0];if(Ie.declarations.length===1&&jo(_e)&&fo(_e.parent)&&_e.parent.operatorToken.kind===64&&og(_e.parent.right)){let Ee=_e.parent.right;ge(Ee.symbol,void 0,ee)}}else ge(Ie,[me.createToken(126)],ee)}),M.members&&M.members.forEach((Ie,_e)=>{var Ee,Ne,Te,Ze;if(_e==="constructor"&&Ie.valueDeclaration){let We=(Ze=(Te=(Ne=(Ee=M.exports)==null?void 0:Ee.get("prototype"))==null?void 0:Ne.declarations)==null?void 0:Te[0])==null?void 0:Ze.parent;We&&fo(We)&&og(We.right)&&jt(We.right.properties,nit)||s.delete(c,Ie.valueDeclaration.parent);return}ge(Ie,void 0,ee)}),ee;function re(Ie,_e){return _p(Ie)?jo(Ie)&&nit(Ie)?!0:bu(_e):ue(Ie.properties,Ee=>!!(uu(Ee)||fJ(Ee)||fm(Ee)&&UA(Ee.initializer)&&Ee.name||nit(Ee)))}function ge(Ie,_e,Ee){if(!(Ie.flags&8192)&&!(Ie.flags&4096))return;let Ne=Ie.valueDeclaration,Te=Ne.parent,Ze=Te.right;if(!re(Ne,Ze)||jt(Ee,Tt=>{let ot=Il(Tt);return!!(ot&&Ir(ot)&&Vo(ot)===nf(Ie))}))return;let We=Te.parent&&Te.parent.kind===245?Te.parent:Te;if(s.delete(c,We),!Ze){Ee.push(me.createPropertyDeclaration(_e,Ie.name,void 0,void 0,void 0));return}if(_p(Ne)&&(UA(Ze)||lA(Ze))){let Tt=_1(c,h),ot=vxs(Ne,_,Tt);ot&&Ue(Ee,Ze,ot);return}else if(og(Ze)){F(Ze.properties,Tt=>{(uu(Tt)||fJ(Tt))&&Ee.push(Tt),fm(Tt)&&UA(Tt.initializer)&&Ue(Ee,Tt.initializer,Tt.name),nit(Tt)});return}else{if(n0(c)||!jo(Ne))return;let Tt=me.createPropertyDeclaration(_e,Ne.name,void 0,void 0,Ze);Uie(Te.parent,Tt,c),Ee.push(Tt);return}function Ue(Tt,ot,Qe){return UA(ot)?$e(Tt,ot,Qe):Ye(Tt,ot,Qe)}function $e(Tt,ot,Qe){let mt=Nn(_e,rit(ot,134)),ht=me.createMethodDeclaration(mt,void 0,Qe,void 0,void 0,ot.parameters,void 0,ot.body);Uie(Te,ht,c),Tt.push(ht)}function Ye(Tt,ot,Qe){let mt=ot.body,ht;mt.kind===242?ht=mt:ht=me.createBlock([me.createReturnStatement(mt)]);let _t=Nn(_e,rit(ot,134)),Rt=me.createMethodDeclaration(_t,void 0,Qe,void 0,void 0,ot.parameters,void 0,ht);Uie(Te,Rt,c),Tt.push(Rt)}}}function W(M){let ee=M.initializer;if(!ee||!UA(ee)||!Ir(M.name))return;let re=T(M.symbol);ee.body&&re.unshift(me.createConstructorDeclaration(void 0,ee.parameters,ee.body));let ge=rit(M.parent.parent,95);return me.createClassDeclaration(ge,M.name,void 0,void 0,re)}function V(M){let ee=T(S);M.body&&ee.unshift(me.createConstructorDeclaration(void 0,M.parameters,M.body));let re=rit(M,95);return me.createClassDeclaration(re,M.name,void 0,void 0,ee)}}function rit(s,c){return LB(s)?Me(s.modifiers,g=>g.kind===c):void 0}function nit(s){return s.name?!!(Ir(s.name)&&s.name.text==="constructor"):!1}function vxs(s,c,g){if(jo(s))return s.name;let d=s.argumentExpression;if(mC(d))return d;if(mA(d))return Uh(d.text,Mg(c))?me.createIdentifier(d.text):GP(d)?me.createStringLiteral(d.text,g===0):d}var kYt="convertToAsyncFunction",lan=[Z.This_may_be_converted_to_an_async_function.code],iit=!0;xg({errorCodes:lan,getCodeActions(s){iit=!0;let c=xo.ChangeTracker.with(s,g=>uan(g,s.sourceFile,s.span.start,s.program.getTypeChecker()));return iit?[ug(kYt,c,Z.Convert_to_async_function,kYt,Z.Convert_all_to_async_functions)]:[]},fixIds:[kYt],getAllCodeActions:s=>Qd(s,lan,(c,g)=>uan(c,g.file,g.start,s.program.getTypeChecker()))});function uan(s,c,g,d){let h=Jc(c,g),_;if(Ir(h)&&nc(h.parent)&&h.parent.initializer&&kd(h.parent.initializer)?_=h.parent.initializer:_=Gs(A1(Jc(c,g)),Bnt),!_)return;let S=new Map,R=wo(_),T=wxs(_,d),W=Txs(_,d,S);if(!Snt(W,d))return;let V=W.body&&$u(W.body)?Bxs(W.body,d):E,M={checker:d,synthNamesMap:S,setOfExpressionsToReturn:T,isInJSFile:R};if(!V.length)return;let ee=Yu(c.text,Av(_).pos);s.insertModifierAt(c,ee,134,{suffix:" "});for(let re of V)if(Lu(re,function ge(Ie){if(Zl(Ie)){let _e=tse(Ie,Ie,M,!1);if(Qz())return!0;s.replaceNodeWithNodes(c,re,_e)}else if(!bu(Ie)&&(Lu(Ie,ge),Qz()))return!0}),Qz())return}function Bxs(s,c){let g=[];return yF(s,d=>{hPe(d,c)&&g.push(d)}),g}function wxs(s,c){if(!s.body)return new Set;let g=new Set;return Lu(s.body,function d(h){G1e(h,c,"then")?(g.add(rd(h)),F(h.arguments,d)):G1e(h,c,"catch")||G1e(h,c,"finally")?(g.add(rd(h)),Lu(h,d)):Aan(h,c)?g.add(rd(h)):Lu(h,d)}),g}function G1e(s,c,g){if(!Zl(s))return!1;let h=s1e(s,g)&&c.getTypeAtLocation(s);return!!(h&&c.getPromisedTypeOfPromise(h))}function gan(s,c){return(la(s)&4)!==0&&s.target===c}function sit(s,c,g){if(s.expression.name.escapedText==="finally")return;let d=g.getTypeAtLocation(s.expression.expression);if(gan(d,g.getPromiseType())||gan(d,g.getPromiseLikeType()))if(s.expression.name.escapedText==="then"){if(c===Cg(s.arguments,0))return Cg(s.typeArguments,0);if(c===Cg(s.arguments,1))return Cg(s.typeArguments,1)}else return Cg(s.typeArguments,0)}function Aan(s,c){return un(s)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(s)):!1}function Txs(s,c,g){let d=new Map,h=dl();return Lu(s,function _(S){if(!Ir(S)){Lu(S,_);return}let R=c.getSymbolAtLocation(S);if(R){let T=c.getTypeAtLocation(S),W=man(T,c),V=kg(R).toString();if(W&&!Si(S.parent)&&!kd(S.parent)&&!g.has(V)){let M=Nc(W.parameters),ee=M?.valueDeclaration&&Si(M.valueDeclaration)&&Gs(M.valueDeclaration.name,Ir)||me.createUniqueName("result",16),re=dan(ee,h);g.set(V,re),h.add(ee.text,R)}else if(S.parent&&(Si(S.parent)||nc(S.parent)||hg(S.parent))){let M=S.text,ee=h.get(M);if(ee&&ee.some(re=>re!==R)){let re=dan(S,h);d.set(V,re.identifier),g.set(V,re),h.add(M,R)}else{let re=JA(S);g.set(V,ipe(re)),h.add(M,R)}}}}),rie(s,!0,_=>{if(hg(_)&&Ir(_.name)&&Km(_.parent)){let S=c.getSymbolAtLocation(_.name),R=S&&d.get(String(kg(S)));if(R&&R.text!==(_.name||_.propertyName).getText())return me.createBindingElement(_.dotDotDotToken,_.propertyName||_.name,R,_.initializer)}else if(Ir(_)){let S=c.getSymbolAtLocation(_),R=S&&d.get(String(kg(S)));if(R)return me.createIdentifier(R.text)}})}function dan(s,c){let g=(c.get(s.text)||E).length,d=g===0?s:me.createIdentifier(s.text+"_"+g);return ipe(d)}function Qz(){return!iit}function t5(){return iit=!1,E}function tse(s,c,g,d,h){if(G1e(c,g.checker,"then"))return Dxs(c,Cg(c.arguments,0),Cg(c.arguments,1),g,d,h);if(G1e(c,g.checker,"catch"))return Ian(c,Cg(c.arguments,0),g,d,h);if(G1e(c,g.checker,"finally"))return Nxs(c,Cg(c.arguments,0),g,d,h);if(jo(c))return tse(s,c.expression,g,d,h);let _=g.checker.getTypeAtLocation(c);return _&&g.checker.getPromisedTypeOfPromise(_)?(pe.assertNode(Dd(c).parent,jo),kxs(s,c,g,d,h)):t5()}function oit({checker:s},c){if(c.kind===106)return!0;if(Ir(c)&&!kp(c)&&Vo(c)==="undefined"){let g=s.getSymbolAtLocation(c);return!g||s.isUndefinedSymbol(g)}return!1}function Rxs(s){let c=me.createUniqueName(s.identifier.text,16);return ipe(c)}function pan(s,c,g){let d;return g&&!Z1e(s,c)&&(F1e(g)?(d=g,c.synthNamesMap.forEach((h,_)=>{if(h.identifier.text===g.identifier.text){let S=Rxs(g);c.synthNamesMap.set(_,S)}})):d=ipe(me.createUniqueName("result",16),g.types),ZYt(d)),d}function fan(s,c,g,d,h){let _=[],S;if(d&&!Z1e(s,c)){S=JA(ZYt(d));let R=d.types,T=c.checker.getUnionType(R,2),W=c.isInJSFile?void 0:c.checker.typeToTypeNode(T,void 0,void 0),V=[me.createVariableDeclaration(S,void 0,W)],M=me.createVariableStatement(void 0,me.createVariableDeclarationList(V,1));_.push(M)}return _.push(g),h&&S&&Fxs(h)&&_.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(ban(h)),void 0,void 0,S)],2))),_}function Nxs(s,c,g,d,h){if(!c||oit(g,c))return tse(s,s.expression.expression,g,d,h);let _=pan(s,g,h),S=tse(s,s.expression.expression,g,!0,_);if(Qz())return t5();let R=GYt(c,d,void 0,void 0,s,g);if(Qz())return t5();let T=me.createBlock(S),W=me.createBlock(R),V=me.createTryStatement(T,void 0,W);return fan(s,g,V,_,h)}function Ian(s,c,g,d,h){if(!c||oit(g,c))return tse(s,s.expression.expression,g,d,h);let _=_an(c,g),S=pan(s,g,h),R=tse(s,s.expression.expression,g,!0,S);if(Qz())return t5();let T=GYt(c,d,S,_,s,g);if(Qz())return t5();let W=me.createBlock(R),V=me.createCatchClause(_&&JA(GPe(_)),me.createBlock(T)),M=me.createTryStatement(W,V,void 0);return fan(s,g,M,S,h)}function Dxs(s,c,g,d,h,_){if(!c||oit(d,c))return Ian(s,g,d,h,_);if(g&&!oit(d,g))return t5();let S=_an(c,d),R=tse(s.expression.expression,s.expression.expression,d,!0,S);if(Qz())return t5();let T=GYt(c,h,_,S,s,d);return Qz()?t5():Nn(R,T)}function kxs(s,c,g,d,h){if(Z1e(s,g)){let _=JA(c);return d&&(_=me.createAwaitExpression(_)),[me.createReturnStatement(_)]}return ait(h,me.createAwaitExpression(c),void 0)}function ait(s,c,g){return!s||yan(s)?[me.createExpressionStatement(c)]:F1e(s)&&s.hasBeenDeclared?[me.createExpressionStatement(me.createAssignment(JA(FYt(s)),c))]:[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(JA(GPe(s)),void 0,g,c)],2))]}function xYt(s,c){if(c&&s){let g=me.createUniqueName("result",16);return[...ait(ipe(g),s,c),me.createReturnStatement(g)]}return[me.createReturnStatement(s)]}function GYt(s,c,g,d,h,_){var S;switch(s.kind){case 106:break;case 212:case 80:if(!d)break;let R=me.createCallExpression(JA(s),void 0,F1e(d)?[FYt(d)]:[]);if(Z1e(h,_))return xYt(R,sit(h,s,_.checker));let T=_.checker.getTypeAtLocation(s),W=_.checker.getSignaturesOfType(T,0);if(!W.length)return t5();let V=W[0].getReturnType(),M=ait(g,me.createAwaitExpression(R),sit(h,s,_.checker));return g&&g.types.push(_.checker.getAwaitedType(V)||V),M;case 219:case 220:{let ee=s.body,re=(S=man(_.checker.getTypeAtLocation(s),_.checker))==null?void 0:S.getReturnType();if($u(ee)){let ge=[],Ie=!1;for(let _e of ee.statements)if(I2(_e))if(Ie=!0,hPe(_e,_.checker))ge=ge.concat(Can(_,_e,c,g));else{let Ee=re&&_e.expression?han(_.checker,re,_e.expression):_e.expression;ge.push(...xYt(Ee,sit(h,s,_.checker)))}else{if(c&&yF(_e,Tf))return t5();ge.push(_e)}return Z1e(h,_)?ge.map(_e=>JA(_e)):xxs(ge,g,_,Ie)}else{let ge=vnt(ee,_.checker)?Can(_,me.createReturnStatement(ee),c,g):E;if(ge.length>0)return ge;if(re){let Ie=han(_.checker,re,ee);if(Z1e(h,_))return xYt(Ie,sit(h,s,_.checker));{let _e=ait(g,Ie,void 0);return g&&g.types.push(_.checker.getAwaitedType(re)||re),_e}}else return t5()}}default:return t5()}return E}function han(s,c,g){let d=JA(g);return s.getPromisedTypeOfPromise(c)?me.createAwaitExpression(d):d}function man(s,c){let g=c.getSignaturesOfType(s,0);return li(g)}function xxs(s,c,g,d){let h=[];for(let _ of s)if(I2(_)){if(_.expression){let S=Aan(_.expression,g.checker)?me.createAwaitExpression(_.expression):_.expression;c===void 0?h.push(me.createExpressionStatement(S)):F1e(c)&&c.hasBeenDeclared?h.push(me.createExpressionStatement(me.createAssignment(FYt(c),S))):h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(GPe(c),void 0,void 0,S)],2)))}}else h.push(JA(_));return!d&&c!==void 0&&h.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(GPe(c),void 0,void 0,me.createIdentifier("undefined"))],2))),h}function Can(s,c,g,d){let h=[];return Lu(c,function _(S){if(Zl(S)){let R=tse(S,S,s,g,d);if(h=h.concat(R),h.length>0)return}else bu(S)||Lu(S,_)}),h}function _an(s,c){let g=[],d;if(kd(s)){if(s.parameters.length>0){let T=s.parameters[0].name;d=h(T)}}else Ir(s)?d=_(s):jo(s)&&Ir(s.name)&&(d=_(s.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function h(T){if(Ir(T))return _(T);let W=er(T.elements,V=>yp(V)?[]:[h(V.name)]);return Gxs(T,W)}function _(T){let W=R(T),V=S(W);return V&&c.synthNamesMap.get(kg(V).toString())||ipe(T,g)}function S(T){var W;return((W=Gs(T,mE))==null?void 0:W.symbol)??c.checker.getSymbolAtLocation(T)}function R(T){return T.original?T.original:T}}function yan(s){return s?F1e(s)?!s.identifier.text:ue(s.elements,yan):!0}function ipe(s,c=[]){return{kind:0,identifier:s,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function Gxs(s,c=E,g=[]){return{kind:1,bindingPattern:s,elements:c,types:g}}function FYt(s){return s.hasBeenReferenced=!0,s.identifier}function GPe(s){return F1e(s)?ZYt(s):ban(s)}function ban(s){for(let c of s.elements)GPe(c);return s.bindingPattern}function ZYt(s){return s.hasBeenDeclared=!0,s.identifier}function F1e(s){return s.kind===0}function Fxs(s){return s.kind===1}function Z1e(s,c){return!!s.original&&c.setOfExpressionsToReturn.has(rd(s.original))}xg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(s){let{sourceFile:c,program:g,preferences:d}=s,h=xo.ChangeTracker.with(s,_=>{if(Lxs(c,g.getTypeChecker(),_,Mg(g.getCompilerOptions()),_1(c,d)))for(let R of g.getSourceFiles())Zxs(R,c,g,_,_1(R,d))});return[sR("convertToEsModule",h,Z.Convert_to_ES_module)]}});function Zxs(s,c,g,d,h){var _;for(let S of s.imports){let R=(_=g.getResolvedModuleFromModuleSpecifier(S,s))==null?void 0:_.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let T=v7(S);switch(T.kind){case 272:d.replaceNode(s,T,QP(T.name,void 0,S,h));break;case 214:ay(T,!1)&&d.replaceNode(s,T,me.createPropertyAccessExpression(JA(T),"default"));break}}}function Lxs(s,c,g,d,h){let _={original:jxs(s),additional:new Set},S=Vxs(s,c,_);Pxs(s,S,g);let R=!1,T;for(let W of Me(s.statements,Ch)){let V=San(s,W,g,c,_,d,h);V&&a7(V,T??(T=new Map))}for(let W of Me(s.statements,V=>!Ch(V))){let V=Wxs(s,W,c,g,_,d,S,T,h);R=R||V}return T?.forEach((W,V)=>{g.replaceNode(s,V,W)}),R}function Vxs(s,c,g){let d=new Map;return Ean(s,h=>{let{text:_}=h.name;!d.has(_)&&(kye(h.name)||c.resolveName(_,h,111551,!0))&&d.set(_,cit(`_${_}`,g))}),d}function Pxs(s,c,g){Ean(s,(d,h)=>{if(h)return;let{text:_}=d.name;g.replaceNode(s,d,me.createIdentifier(c.get(_)||_))})}function Ean(s,c){s.forEachChild(function g(d){if(jo(d)&&cQ(s,d.expression)&&Ir(d.name)){let{parent:h}=d;c(d,fo(h)&&h.left===d&&h.operatorToken.kind===64)}d.forEachChild(g)})}function Wxs(s,c,g,d,h,_,S,R,T){switch(c.kind){case 244:return San(s,c,d,g,h,_,T),!1;case 245:{let{expression:W}=c;switch(W.kind){case 214:return ay(W,!0)&&d.replaceNode(s,c,QP(void 0,void 0,W.arguments[0],T)),!1;case 227:{let{operatorToken:V}=W;return V.kind===64&&Mxs(s,g,W,d,S,R)}}}default:return!1}}function San(s,c,g,d,h,_,S){let{declarationList:R}=c,T=!1,W=At(R.declarations,V=>{let{name:M,initializer:ee}=V;if(ee){if(cQ(s,ee))return T=!0,spe([]);if(ay(ee,!0))return T=!0,Uxs(M,ee.arguments[0],d,h,_,S);if(jo(ee)&&ay(ee.expression,!0))return T=!0,Oxs(M,ee.name.text,ee.expression.arguments[0],h,S)}return spe([me.createVariableStatement(void 0,me.createVariableDeclarationList([V],R.flags))])});if(T){g.replaceNodeWithNodes(s,c,er(W,M=>M.newImports));let V;return F(W,M=>{M.useSitesToUnqualify&&a7(M.useSitesToUnqualify,V??(V=new Map))}),V}}function Oxs(s,c,g,d,h){switch(s.kind){case 207:case 208:{let _=cit(c,d);return spe([Tan(_,c,g,h),lit(void 0,s,me.createIdentifier(_))])}case 80:return spe([Tan(s.text,c,g,h)]);default:return pe.assertNever(s,`Convert to ES module got invalid syntax form ${s.kind}`)}}function Mxs(s,c,g,d,h,_){let{left:S,right:R}=g;if(!jo(S))return!1;if(cQ(s,S))if(cQ(s,R))d.delete(s,g.parent);else{let T=og(R)?Hxs(R,_):ay(R,!0)?Qxs(R.arguments[0],c):void 0;return T?(d.replaceNodeWithNodes(s,g.parent,T[0]),T[1]):(d.replaceRangeWithText(s,Gy(S.getStart(s),R.pos),"export default"),!0)}else cQ(s,S.expression)&&Yxs(s,g,d,h);return!1}function Hxs(s,c){let g=qt(s.properties,d=>{switch(d.kind){case 178:case 179:case 305:case 306:return;case 304:return Ir(d.name)?Jxs(d.name.text,d.initializer,c):void 0;case 175:return Ir(d.name)?wan(d.name.text,[me.createToken(95)],d,c):void 0;default:pe.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return g&&[g,!1]}function Yxs(s,c,g,d){let{text:h}=c.left.name,_=d.get(h);if(_!==void 0){let S=[lit(void 0,_,c.right),PYt([me.createExportSpecifier(!1,_,h)])];g.replaceNodeWithNodes(s,c.parent,S)}else Xxs(c,s,g)}function Qxs(s,c){let g=s.text,d=c.getSymbolAtLocation(s),h=d?d.exports:N;return h.has("export=")?[[LYt(g)],!0]:h.has("default")?h.size>1?[[van(g),LYt(g)],!0]:[[LYt(g)],!0]:[[van(g)],!1]}function van(s){return PYt(void 0,s)}function LYt(s){return PYt([me.createExportSpecifier(!1,void 0,"default")],s)}function Xxs({left:s,right:c,parent:g},d,h){let _=s.name.text;if((UA(c)||lA(c)||vd(c))&&(!c.name||c.name.text===_)){h.replaceRange(d,{pos:s.getStart(d),end:c.getStart(d)},me.createToken(95),{suffix:" "}),c.name||h.insertName(d,c,_);let S=qd(g,27,d);S&&h.delete(d,S)}else h.replaceNodeRangeWithNodes(d,s.expression,qd(s,25,d),[me.createToken(95),me.createToken(87)],{joiner:" ",suffix:" "})}function Jxs(s,c,g){let d=[me.createToken(95)];switch(c.kind){case 219:{let{name:_}=c;if(_&&_.text!==s)return h()}case 220:return wan(s,d,c,g);case 232:return qxs(s,d,c,g);default:return h()}function h(){return lit(d,me.createIdentifier(s),VYt(c,g))}}function VYt(s,c){if(!c||!jt(Do(c.keys()),d=>cy(s,d)))return s;return Ki(s)?qAe(s,!0,g):rie(s,!0,g);function g(d){if(d.kind===212){let h=c.get(d);return c.delete(d),h}}}function Uxs(s,c,g,d,h,_){switch(s.kind){case 207:{let S=qt(s.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!Ir(R.propertyName)||!Ir(R.name)?void 0:Ran(R.propertyName&&R.propertyName.text,R.name.text));if(S)return spe([QP(void 0,S,c,_)])}case 208:{let S=cit(b1e(c.text,h),d);return spe([QP(me.createIdentifier(S),void 0,c,_),lit(void 0,JA(s),me.createIdentifier(S))])}case 80:return Kxs(s,c,g,d,_);default:return pe.assertNever(s,`Convert to ES module got invalid name kind ${s.kind}`)}}function Kxs(s,c,g,d,h){let _=g.getSymbolAtLocation(s),S=new Map,R=!1,T;for(let V of d.original.get(s.text)){if(g.getSymbolAtLocation(V)!==_||V===s)continue;let{parent:M}=V;if(jo(M)){let{name:{text:ee}}=M;if(ee==="default"){R=!0;let re=V.getText();(T??(T=new Map)).set(M,me.createIdentifier(re))}else{pe.assert(M.expression===V,"Didn't expect expression === use");let re=S.get(ee);re===void 0&&(re=cit(ee,d),S.set(ee,re)),(T??(T=new Map)).set(M,me.createIdentifier(re))}}else R=!0}let W=S.size===0?void 0:Do(Yt(S.entries(),([V,M])=>me.createImportSpecifier(!1,V===M?void 0:me.createIdentifier(V),me.createIdentifier(M))));return W||(R=!0),spe([QP(R?JA(s):void 0,W,c,h)],T)}function cit(s,c){for(;c.original.has(s)||c.additional.has(s);)s=`_${s}`;return c.additional.add(s),s}function jxs(s){let c=dl();return Ban(s,g=>c.add(g.text,g)),c}function Ban(s,c){Ir(s)&&zxs(s)&&c(s),s.forEachChild(g=>Ban(g,c))}function zxs(s){let{parent:c}=s;switch(c.kind){case 212:return c.name!==s;case 209:return c.propertyName!==s;case 277:return c.propertyName!==s;default:return!0}}function wan(s,c,g,d){return me.createFunctionDeclaration(Nn(c,o0(g.modifiers)),JA(g.asteriskToken),s,o0(g.typeParameters),o0(g.parameters),JA(g.type),me.converters.convertToFunctionBlock(VYt(g.body,d)))}function qxs(s,c,g,d){return me.createClassDeclaration(Nn(c,o0(g.modifiers)),s,o0(g.typeParameters),o0(g.heritageClauses),VYt(g.members,d))}function Tan(s,c,g,d){return c==="default"?QP(me.createIdentifier(s),void 0,g,d):QP(void 0,[Ran(c,s)],g,d)}function Ran(s,c){return me.createImportSpecifier(!1,s!==void 0&&s!==c?me.createIdentifier(s):void 0,me.createIdentifier(c))}function lit(s,c,g){return me.createVariableStatement(s,me.createVariableDeclarationList([me.createVariableDeclaration(c,void 0,void 0,g)],2))}function PYt(s,c){return me.createExportDeclaration(void 0,!1,s&&me.createNamedExports(s),c===void 0?void 0:me.createStringLiteral(c))}function spe(s,c){return{newImports:s,useSitesToUnqualify:c}}var WYt="correctQualifiedNameToIndexedAccessType",Nan=[Z.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];xg({errorCodes:Nan,getCodeActions(s){let c=Dan(s.sourceFile,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,h=>kan(h,s.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[ug(WYt,g,[Z.Rewrite_as_the_indexed_access_type_0,d],WYt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[WYt],getAllCodeActions:s=>Qd(s,Nan,(c,g)=>{let d=Dan(g.file,g.start);d&&kan(c,g.file,d)})});function Dan(s,c){let g=ji(Jc(s,c),zi);return pe.assert(!!g,"Expected position to be owned by a qualified name."),Ir(g.left)?g:void 0}function kan(s,c,g){let d=g.right.text,h=me.createIndexedAccessTypeNode(me.createTypeReferenceNode(g.left,void 0),me.createLiteralTypeNode(me.createStringLiteral(d)));s.replaceNode(c,g,h)}var OYt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],MYt="convertToTypeOnlyExport";xg({errorCodes:OYt,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Gan(d,xan(c.span,c.sourceFile),c));if(g.length)return[ug(MYt,g,Z.Convert_to_type_only_export,MYt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[MYt],getAllCodeActions:function(c){let g=new Set;return Qd(c,OYt,(d,h)=>{let _=xan(h,c.sourceFile);_&&Zy(g,rd(_.parent.parent))&&Gan(d,_,c)})}});function xan(s,c){return Gs(Jc(c,s.start).parent,R0)}function Gan(s,c,g){if(!c)return;let d=c.parent,h=d.parent,_=$xs(c,g);if(_.length===d.elements.length)s.insertModifierBefore(g.sourceFile,156,d);else{let S=me.updateExportDeclaration(h,h.modifiers,!1,me.updateNamedExports(d,Me(d.elements,T=>!k(_,T))),h.moduleSpecifier,void 0),R=me.createExportDeclaration(void 0,!0,me.createNamedExports(_),h.moduleSpecifier,void 0);s.replaceNode(g.sourceFile,h,S,{leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Exclude}),s.insertNodeAfter(g.sourceFile,h,R)}}function $xs(s,c){let g=s.parent;if(g.elements.length===1)return g.elements;let d=wMt(Oy(g),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Me(g.elements,h=>{var _;return h===s||((_=BMt(h,d))==null?void 0:_.code)===OYt[0]})}var Fan=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],uit="convertToTypeOnlyImport";xg({errorCodes:Fan,getCodeActions:function(c){var g;let d=Zan(c.sourceFile,c.span.start);if(d){let h=xo.ChangeTracker.with(c,R=>FPe(R,c.sourceFile,d)),_=d.kind===277&&Mf(d.parent.parent.parent)&&Lan(d,c.sourceFile,c.program)?xo.ChangeTracker.with(c,R=>FPe(R,c.sourceFile,d.parent.parent.parent)):void 0,S=ug(uit,h,d.kind===277?[Z.Use_type_0,((g=d.propertyName)==null?void 0:g.text)??d.name.text]:Z.Use_import_type,uit,Z.Fix_all_with_type_only_imports);return jt(_)?[sR(uit,_,Z.Use_import_type),S]:[S]}},fixIds:[uit],getAllCodeActions:function(c){let g=new Set;return Qd(c,Fan,(d,h)=>{let _=Zan(h.file,h.start);_?.kind===273&&!g.has(_)?(FPe(d,h.file,_),g.add(_)):_?.kind===277&&Mf(_.parent.parent.parent)&&!g.has(_.parent.parent.parent)&&Lan(_,h.file,c.program)?(FPe(d,h.file,_.parent.parent.parent),g.add(_.parent.parent.parent)):_?.kind===277&&FPe(d,h.file,_)})}});function Zan(s,c){let{parent:g}=Jc(s,c);return uy(g)||Mf(g)&&g.importClause?g:void 0}function Lan(s,c,g){if(s.parent.parent.name)return!1;let d=s.parent.elements.filter(_=>!_.isTypeOnly);if(d.length===1)return!0;let h=g.getTypeChecker();for(let _ of d)if(Kp.Core.eachSymbolReferenceInFile(_.name,h,c,R=>{let T=h.getSymbolAtLocation(R);return!!T&&h.symbolIsValue(T)||!JL(R)}))return!1;return!0}function FPe(s,c,g){var d;if(uy(g))s.replaceNode(c,g,me.updateImportSpecifier(g,!0,g.propertyName,g.name));else{let h=g.importClause;if(h.name&&h.namedBindings)s.replaceNodeWithNodes(c,g,[me.createImportDeclaration(o0(g.modifiers,!0),me.createImportClause(156,JA(h.name,!0),void 0),JA(g.moduleSpecifier,!0),JA(g.attributes,!0)),me.createImportDeclaration(o0(g.modifiers,!0),me.createImportClause(156,void 0,JA(h.namedBindings,!0)),JA(g.moduleSpecifier,!0),JA(g.attributes,!0))]);else{let _=((d=h.namedBindings)==null?void 0:d.kind)===276?me.updateNamedImports(h.namedBindings,Tr(h.namedBindings.elements,R=>me.updateImportSpecifier(R,!1,R.propertyName,R.name))):h.namedBindings,S=me.updateImportDeclaration(g,g.modifiers,me.updateImportClause(h,156,h.name,_),g.moduleSpecifier,g.attributes);s.replaceNode(c,g,S)}}}var HYt="convertTypedefToType",Van=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];xg({fixIds:[HYt],errorCodes:Van,getCodeActions(s){let c=OF(s.host,s.formatContext.options),g=Jc(s.sourceFile,s.span.start);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Pan(h,g,s.sourceFile,c));if(d.length>0)return[ug(HYt,d,Z.Convert_typedef_to_TypeScript_type,HYt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:s=>Qd(s,Van,(c,g)=>{let d=OF(s.host,s.formatContext.options),h=Jc(g.file,g.start);h&&Pan(c,h,g.file,d,!0)})});function Pan(s,c,g,d,h=!1){if(!bU(c))return;let _=tGs(c);if(!_)return;let S=c.parent,{leftSibling:R,rightSibling:T}=eGs(c),W=S.getStart(),V="";!R&&S.comment&&(W=Wan(S,S.getStart(),c.getStart()),V=`${d} */${d}`),R&&(h&&bU(R)?(W=c.getStart(),V=""):(W=Wan(S,R.getStart(),c.getStart()),V=`${d} */${d}`));let M=S.getEnd(),ee="";T&&(h&&bU(T)?(M=T.getStart(),ee=`${d}${d}`):(M=T.getStart(),ee=`${d}/**${d} * `)),s.replaceRange(g,{pos:W,end:M},_,{prefix:V,suffix:ee})}function eGs(s){let c=s.parent,g=c.getChildCount()-1,d=c.getChildren().findIndex(S=>S.getStart()===s.getStart()&&S.getEnd()===s.getEnd()),h=d>0?c.getChildAt(d-1):void 0,_=d0;h--)if(!/[*/\s]/.test(d.substring(h-1,h)))return c+h;return g}function tGs(s){var c;let{typeExpression:g}=s;if(!g)return;let d=(c=s.name)==null?void 0:c.getText();if(d){if(g.kind===323)return rGs(d,g);if(g.kind===310)return nGs(d,g)}}function rGs(s,c){let g=Oan(c);if(jt(g))return me.createInterfaceDeclaration(void 0,s,void 0,void 0,g)}function nGs(s,c){let g=JA(c.type);if(g)return me.createTypeAliasDeclaration(void 0,me.createIdentifier(s),void 0,g)}function Oan(s){let c=s.jsDocPropertyTags;return jt(c)?Xt(c,d=>{var h;let _=iGs(d),S=(h=d.typeExpression)==null?void 0:h.type,R=d.isBracketed,T;if(S&&yU(S)){let W=Oan(S);T=me.createTypeLiteralNode(W)}else S&&(T=JA(S));if(T&&_){let W=R?me.createToken(58):void 0;return me.createPropertySignature(void 0,_,W,T)}}):void 0}function iGs(s){return s.name.kind===80?s.name.text:s.name.right.text}function sGs(s){return Xm(s)?er(s.jsDoc,c=>{var g;return(g=c.tags)==null?void 0:g.filter(d=>bU(d))}):[]}var YYt="convertLiteralTypeToMappedType",Man=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];xg({errorCodes:Man,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Han(g,d.start);if(!h)return;let{name:_,constraint:S}=h,R=xo.ChangeTracker.with(c,T=>Yan(T,g,h));return[ug(YYt,R,[Z.Convert_0_to_1_in_0,S,_],YYt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[YYt],getAllCodeActions:s=>Qd(s,Man,(c,g)=>{let d=Han(g.file,g.start);d&&Yan(c,g.file,d)})});function Han(s,c){let g=Jc(s,c);if(Ir(g)){let d=Ma(g.parent.parent,ss),h=g.getText(s);return{container:Ma(d.parent,mh),typeNode:d.type,constraint:h,name:h==="K"?"P":"K"}}}function Yan(s,c,{container:g,typeNode:d,constraint:h,name:_}){s.replaceNode(c,g,me.createMappedTypeNode(void 0,me.createTypeParameterDeclaration(void 0,_,me.createTypeReferenceNode(h)),void 0,void 0,d,void 0))}var Qan=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],QYt="fixClassIncorrectlyImplementsInterface";xg({errorCodes:Qan,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Xan(c,g.start);return Xt(jJ(d),h=>{let _=xo.ChangeTracker.with(s,S=>Uan(s,h,c,d,S,s.preferences));return _.length===0?void 0:ug(QYt,_,[Z.Implement_interface_0,h.getText(c)],QYt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[QYt],getAllCodeActions(s){let c=new Set;return Qd(s,Qan,(g,d)=>{let h=Xan(d.file,d.start);if(Zy(c,rd(h)))for(let _ of jJ(h))Uan(s,_,d.file,h,g,s.preferences)})}});function Xan(s,c){return pe.checkDefined(hC(Jc(s,c)),"There should be a containing class")}function Jan(s){return!s.valueDeclaration||!(o_(s.valueDeclaration)&2)}function Uan(s,c,g,d,h,_){let S=s.program.getTypeChecker(),R=oGs(d,S),T=S.getTypeAtLocation(c),V=S.getPropertiesOfType(T).filter(dh(Jan,_e=>!R.has(_e.escapedName))),M=S.getTypeAtLocation(d),ee=de(d.members,_e=>Tc(_e));M.getNumberIndexType()||ge(T,1),M.getStringIndexType()||ge(T,0);let re=yQ(g,s.program,_,s.host);VQt(d,V,g,s,_,re,_e=>Ie(g,d,_e)),re.writeFixes(h);function ge(_e,Ee){let Ne=S.getIndexInfoOfType(_e,Ee);Ne&&Ie(g,d,S.indexInfoToIndexSignatureDeclaration(Ne,d,void 0,void 0,rse(s)))}function Ie(_e,Ee,Ne){ee?h.insertNodeAfter(_e,ee,Ne):h.insertMemberAtStart(_e,Ee,Ne)}}function oGs(s,c){let g=BB(s);if(!g)return qu();let d=c.getTypeAtLocation(g),h=c.getPropertiesOfType(d);return qu(h.filter(Jan))}var Kan="import",jan="fixMissingImport",zan=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code,Z.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found.code];xg({errorCodes:zan,getCodeActions(s){let{errorCode:c,preferences:g,sourceFile:d,span:h,program:_}=s,S=ncn(s,c,h.start,!0);if(S)return S.map(({fix:R,symbolName:T,errorIdentifierText:W})=>UYt(s,d,T,R,T!==W,_,g))},fixIds:[jan],getAllCodeActions:s=>{let{sourceFile:c,program:g,preferences:d,host:h,cancellationToken:_}=s,S=qan(c,g,!0,d,h,_);return Yz(s,zan,R=>S.addImportFromDiagnostic(R,s)),Hz(xo.ChangeTracker.with(s,S.writeFixes))}});function yQ(s,c,g,d,h){return qan(s,c,!1,g,d,h)}function qan(s,c,g,d,h,_){let S=c.getCompilerOptions(),R=[],T=[],W=new Map,V=new Set,M=new Set,ee=new Map;return{addImportFromDiagnostic:Ie,addImportFromExportedSymbol:_e,addImportForModuleSymbol:Ee,writeFixes:We,hasFixes:$e,addImportForUnresolvedIdentifier:ge,addImportForNonExistentExport:Ne,removeExistingImport:Te,addVerbatimImport:re};function re(Ye){M.add(Ye)}function ge(Ye,Tt,ot){let Qe=hGs(Ye,Tt,ot);!Qe||!Qe.length||Ze(ma(Qe))}function Ie(Ye,Tt){let ot=ncn(Tt,Ye.code,Ye.start,g);!ot||!ot.length||Ze(ma(ot))}function _e(Ye,Tt,ot){var Qe,mt;let ht=pe.checkDefined(Ye.parent,"Expected exported symbol to have module symbol as parent"),_t=cPe(Ye,Mg(S)),Rt=c.getTypeChecker(),Lt=Rt.getMergedSymbol(FC(Ye,Rt)),Ke=ecn(s,Lt,_t,ht,!1,c,h,d,_);if(!Ke){pe.assert((Qe=d.autoImportFileExcludePatterns)==null?void 0:Qe.length);return}let Pt=L1e(s,c),_r=XYt(s,Ke,c,void 0,!!Tt,Pt,h,d);if(_r){let Gt=((mt=Gs(ot?.name,Ir))==null?void 0:mt.text)??_t,nt,Dt;ot&&rN(ot)&&(_r.kind===3||_r.kind===2)&&_r.addAsTypeOnly===1&&(nt=2),Ye.name!==Gt&&(Dt=Ye.name),_r={..._r,...nt===void 0?{}:{addAsTypeOnly:nt},...Dt===void 0?{}:{propertyName:Dt}},Ze({fix:_r,symbolName:Gt??_t,errorIdentifierText:void 0})}}function Ee(Ye,Tt,ot){var Qe,mt,ht;let _t=c.getTypeChecker(),Rt=_t.getAliasedSymbol(Ye);pe.assert(Rt.flags&1536,"Expected symbol to be a module");let Lt=z3(c,h),Ke=WF.getModuleSpecifiersWithCacheInfo(Rt,_t,S,s,Lt,d,void 0,!0),Pt=L1e(s,c),_r=LPe(Tt,!0,void 0,Ye.flags,c.getTypeChecker(),S);_r=_r===1&&rN(ot)?2:1;let Gt=Mf(ot)?h3(ot)?1:2:uy(ot)?0:Vw(ot)&&ot.name?1:2,nt=[{symbol:Ye,moduleSymbol:Rt,moduleFileName:(ht=(mt=(Qe=Rt.declarations)==null?void 0:Qe[0])==null?void 0:mt.getSourceFile())==null?void 0:ht.fileName,exportKind:4,targetFlags:Ye.flags,isFromPackageJson:!1}],Dt=XYt(s,nt,c,void 0,!!Tt,Pt,h,d),tr;Dt&&Gt!==2&&Dt.kind!==0&&Dt.kind!==1?tr={...Dt,addAsTypeOnly:_r,importKind:Gt}:tr={kind:3,moduleSpecifierKind:Dt!==void 0?Dt.moduleSpecifierKind:Ke.kind,moduleSpecifier:Dt!==void 0?Dt.moduleSpecifier:ma(Ke.moduleSpecifiers),importKind:Gt,addAsTypeOnly:_r,useRequire:Pt},Ze({fix:tr,symbolName:Ye.name,errorIdentifierText:void 0})}function Ne(Ye,Tt,ot,Qe,mt){let ht=c.getSourceFile(Tt),_t=L1e(s,c);if(ht&&ht.symbol){let{fixes:Rt}=ZPe([{exportKind:ot,isFromPackageJson:!1,moduleFileName:Tt,moduleSymbol:ht.symbol,targetFlags:Qe}],void 0,mt,_t,c,s,h,d);Rt.length&&Ze({fix:Rt[0],symbolName:Ye,errorIdentifierText:Ye})}else{let Rt=dPe(Tt,99,c,h),Lt=WF.getLocalModuleSpecifierBetweenFileNames(s,Tt,S,z3(c,h),d),Ke=git(Rt,ot,c),Pt=LPe(mt,!0,void 0,Qe,c.getTypeChecker(),S);Ze({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:Lt,importKind:Ke,addAsTypeOnly:Pt,useRequire:_t},symbolName:Ye,errorIdentifierText:Ye})}}function Te(Ye){Ye.kind===274&&pe.assertIsDefined(Ye.name,"ImportClause should have a name if it's being removed"),V.add(Ye)}function Ze(Ye){var Tt,ot,Qe;let{fix:mt,symbolName:ht}=Ye;switch(mt.kind){case 0:R.push(mt);break;case 1:T.push(mt);break;case 2:{let{importClauseOrBindingPattern:Ke,importKind:Pt,addAsTypeOnly:_r,propertyName:Gt}=mt,nt=W.get(Ke);if(nt||W.set(Ke,nt={importClauseOrBindingPattern:Ke,defaultImport:void 0,namedImports:new Map}),Pt===0){let Dt=(Tt=nt?.namedImports.get(ht))==null?void 0:Tt.addAsTypeOnly;nt.namedImports.set(ht,{addAsTypeOnly:_t(Dt,_r),propertyName:Gt})}else pe.assert(nt.defaultImport===void 0||nt.defaultImport.name===ht,"(Add to Existing) Default import should be missing or match symbolName"),nt.defaultImport={name:ht,addAsTypeOnly:_t((ot=nt.defaultImport)==null?void 0:ot.addAsTypeOnly,_r)};break}case 3:{let{moduleSpecifier:Ke,importKind:Pt,useRequire:_r,addAsTypeOnly:Gt,propertyName:nt}=mt,Dt=Rt(Ke,Pt,_r,Gt);switch(pe.assert(Dt.useRequire===_r,"(Add new) Tried to add an `import` and a `require` for the same module"),Pt){case 1:pe.assert(Dt.defaultImport===void 0||Dt.defaultImport.name===ht,"(Add new) Default import should be missing or match symbolName"),Dt.defaultImport={name:ht,addAsTypeOnly:_t((Qe=Dt.defaultImport)==null?void 0:Qe.addAsTypeOnly,Gt)};break;case 0:let tr=(Dt.namedImports||(Dt.namedImports=new Map)).get(ht);Dt.namedImports.set(ht,[_t(tr,Gt),nt]);break;case 3:if(S.verbatimModuleSyntax){let ur=(Dt.namedImports||(Dt.namedImports=new Map)).get(ht);Dt.namedImports.set(ht,[_t(ur,Gt),nt])}else pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===ht,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Pt,name:ht,addAsTypeOnly:Gt};break;case 2:pe.assert(Dt.namespaceLikeImport===void 0||Dt.namespaceLikeImport.name===ht,"Namespacelike import shoudl be missing or match symbolName"),Dt.namespaceLikeImport={importKind:Pt,name:ht,addAsTypeOnly:Gt};break}break}case 4:break;default:pe.assertNever(mt,`fix wasn't never - got kind ${mt.kind}`)}function _t(Ke,Pt){return Math.max(Ke??0,Pt)}function Rt(Ke,Pt,_r,Gt){let nt=Lt(Ke,!0),Dt=Lt(Ke,!1),tr=ee.get(nt),ur=ee.get(Dt),Gr={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:_r};return Pt===1&&Gt===2?tr||(ee.set(nt,Gr),Gr):Gt===1&&(tr||ur)?tr||ur:ur||(ee.set(Dt,Gr),Gr)}function Lt(Ke,Pt){return`${Pt?1:0}|${Ke}`}}function We(Ye,Tt){var ot,Qe;let mt;s.imports!==void 0&&s.imports.length===0&&Tt!==void 0?mt=Tt:mt=_1(s,d);for(let Rt of R)KYt(Ye,s,Rt);for(let Rt of T)Acn(Ye,s,Rt,mt);let ht;if(V.size){pe.assert(aN(s),"Cannot remove imports from a future source file");let Rt=new Set(Xt([...V],Gt=>ji(Gt,Mf))),Lt=new Set(Xt([...V],Gt=>ji(Gt,y7))),Ke=[...Rt].filter(Gt=>{var nt,Dt,tr;return!W.has(Gt.importClause)&&(!((nt=Gt.importClause)!=null&&nt.name)||V.has(Gt.importClause))&&(!Gs((Dt=Gt.importClause)==null?void 0:Dt.namedBindings,Zx)||V.has(Gt.importClause.namedBindings))&&(!Gs((tr=Gt.importClause)==null?void 0:tr.namedBindings,yN)||ue(Gt.importClause.namedBindings.elements,ur=>V.has(ur)))}),Pt=[...Lt].filter(Gt=>(Gt.name.kind!==207||!W.has(Gt.name))&&(Gt.name.kind!==207||ue(Gt.name.elements,nt=>V.has(nt)))),_r=[...Rt].filter(Gt=>{var nt,Dt;return((nt=Gt.importClause)==null?void 0:nt.namedBindings)&&Ke.indexOf(Gt)===-1&&!((Dt=W.get(Gt.importClause))!=null&&Dt.namedImports)&&(Gt.importClause.namedBindings.kind===275||ue(Gt.importClause.namedBindings.elements,tr=>V.has(tr)))});for(let Gt of[...Ke,...Pt])Ye.delete(s,Gt);for(let Gt of _r)Ye.replaceNode(s,Gt.importClause,me.updateImportClause(Gt.importClause,Gt.importClause.phaseModifier,Gt.importClause.name,void 0));for(let Gt of V){let nt=ji(Gt,Mf);nt&&Ke.indexOf(nt)===-1&&_r.indexOf(nt)===-1?Gt.kind===274?Ye.delete(s,Gt.name):(pe.assert(Gt.kind===277,"NamespaceImport should have been handled earlier"),(ot=W.get(nt.importClause))!=null&&ot.namedImports?(ht??(ht=new Set)).add(Gt):Ye.delete(s,Gt)):Gt.kind===209?(Qe=W.get(Gt.parent))!=null&&Qe.namedImports?(ht??(ht=new Set)).add(Gt):Ye.delete(s,Gt):Gt.kind===272&&Ye.delete(s,Gt)}}W.forEach(({importClauseOrBindingPattern:Rt,defaultImport:Lt,namedImports:Ke})=>{gcn(Ye,s,Rt,Lt,Do(Ke.entries(),([Pt,{addAsTypeOnly:_r,propertyName:Gt}])=>({addAsTypeOnly:_r,propertyName:Gt,name:Pt})),ht,d)});let _t;ee.forEach(({useRequire:Rt,defaultImport:Lt,namedImports:Ke,namespaceLikeImport:Pt},_r)=>{let Gt=_r.slice(2),Dt=(Rt?fcn:pcn)(Gt,mt,Lt,Ke&&Do(Ke.entries(),([tr,[ur,Gr]])=>({addAsTypeOnly:ur,propertyName:Gr,name:tr})),Pt,S,d);_t=zr(_t,Dt)}),_t=zr(_t,Ue()),_t&&Mrt(Ye,s,_t,!0,d)}function Ue(){if(!M.size)return;let Ye=new Set(Xt([...M],ot=>ji(ot,Mf))),Tt=new Set(Xt([...M],ot=>ji(ot,nne)));return[...Xt([...M],ot=>ot.kind===272?JA(ot,!0):void 0),...[...Ye].map(ot=>{var Qe;return M.has(ot)?JA(ot,!0):JA(me.updateImportDeclaration(ot,ot.modifiers,ot.importClause&&me.updateImportClause(ot.importClause,ot.importClause.phaseModifier,M.has(ot.importClause)?ot.importClause.name:void 0,M.has(ot.importClause.namedBindings)?ot.importClause.namedBindings:(Qe=Gs(ot.importClause.namedBindings,yN))!=null&&Qe.elements.some(mt=>M.has(mt))?me.updateNamedImports(ot.importClause.namedBindings,ot.importClause.namedBindings.elements.filter(mt=>M.has(mt))):void 0),ot.moduleSpecifier,ot.attributes),!0)}),...[...Tt].map(ot=>M.has(ot)?JA(ot,!0):JA(me.updateVariableStatement(ot,ot.modifiers,me.updateVariableDeclarationList(ot.declarationList,Xt(ot.declarationList.declarations,Qe=>M.has(Qe)?Qe:me.updateVariableDeclaration(Qe,Qe.name.kind===207?me.updateObjectBindingPattern(Qe.name,Qe.name.elements.filter(mt=>M.has(mt))):Qe.name,Qe.exclamationToken,Qe.type,Qe.initializer)))),!0))]}function $e(){return R.length>0||T.length>0||W.size>0||ee.size>0||M.size>0||V.size>0}}function aGs(s,c,g,d){let h=jie(s,d,g),_=tcn(s,c);return{getModuleSpecifierForBestExportInfo:S};function S(R,T,W,V){let{fixes:M,computedWithoutCacheCount:ee}=ZPe(R,T,W,!1,c,s,g,d,_,V),re=scn(M,s,c,h,g,d);return re&&{...re,computedWithoutCacheCount:ee}}}function cGs(s,c,g,d,h,_,S,R,T,W,V,M){let ee;g?(ee=S1e(d,S,R,V,M).get(d.path,g),pe.assertIsDefined(ee,"Some exportInfo should match the specified exportMapKey")):(ee=Xh(l2(c.name))?[uGs(s,h,c,R,S)]:ecn(d,s,h,c,_,R,S,V,M),pe.assertIsDefined(ee,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=L1e(d,R),ge=JL(Jc(d,W)),Ie=pe.checkDefined(XYt(d,ee,R,W,ge,re,S,V));return{moduleSpecifier:Ie.moduleSpecifier,codeAction:$an(UYt({host:S,formatContext:T,preferences:V},d,h,Ie,!1,R,V))}}function lGs(s,c,g,d,h,_){let S=g.getCompilerOptions(),R=Xa(JYt(s,g.getTypeChecker(),c,S)),T=lcn(s,c,R,g),W=R!==c.text;return T&&$an(UYt({host:d,formatContext:h,preferences:_},s,R,T,W,g,_))}function XYt(s,c,g,d,h,_,S,R){let T=jie(s,R,S);return scn(ZPe(c,d,h,_,g,s,S,R).fixes,s,g,T,S,R)}function $an({description:s,changes:c,commands:g}){return{description:s,changes:c,commands:g}}function ecn(s,c,g,d,h,_,S,R,T){let W=rcn(_,S),V=R.autoImportFileExcludePatterns&&kMt(S,R),M=_.getTypeChecker().getMergedSymbol(d),ee=V&&M.declarations&&Cp(M,308),re=ee&&V(ee);return S1e(s,S,_,R,T).search(s.path,h,ge=>ge===g,ge=>{let Ie=W(ge[0].isFromPackageJson);if(Ie.getMergedSymbol(FC(ge[0].symbol,Ie))===c&&(re||ge.some(_e=>Ie.getMergedSymbol(_e.moduleSymbol)===d||_e.symbol.parent===d)))return ge})}function uGs(s,c,g,d,h){var _,S;let R=W(d.getTypeChecker(),!1);if(R)return R;let T=(S=(_=h.getPackageJsonAutoImportProvider)==null?void 0:_.call(h))==null?void 0:S.getTypeChecker();return pe.checkDefined(T&&W(T,!0),"Could not find symbol in specified module for code actions");function W(V,M){let ee=pPe(g,V);if(ee&&FC(ee.symbol,V)===s)return{symbol:ee.symbol,moduleSymbol:g,moduleFileName:void 0,exportKind:ee.exportKind,targetFlags:FC(s,V).flags,isFromPackageJson:M};let re=V.tryGetMemberInModuleExportsAndProperties(c,g);if(re&&FC(re,V)===s)return{symbol:re,moduleSymbol:g,moduleFileName:void 0,exportKind:0,targetFlags:FC(s,V).flags,isFromPackageJson:M}}}function ZPe(s,c,g,d,h,_,S,R,T=aN(_)?tcn(_,h):void 0,W){let V=h.getTypeChecker(),M=T?er(s,T.getImportsForExportInfo):E,ee=c!==void 0&&gGs(M,c),re=dGs(M,g,V,h.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...ee?[ee]:E,re]};let{fixes:ge,computedWithoutCacheCount:Ie=0}=fGs(s,M,h,_,c,g,d,S,R,W);return{computedWithoutCacheCount:Ie,fixes:[...ee?[ee]:E,...ge]}}function gGs(s,c){return X(s,({declaration:g,importKind:d})=>{var h;if(d!==0)return;let _=AGs(g),S=_&&((h=ZY(g))==null?void 0:h.text);if(S)return{kind:0,namespacePrefix:_,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:S}})}function AGs(s){var c,g,d;switch(s.kind){case 261:return(c=Gs(s.name,Ir))==null?void 0:c.text;case 272:return s.name.text;case 352:case 273:return(d=Gs((g=s.importClause)==null?void 0:g.namedBindings,Zx))==null?void 0:d.name.text;default:return pe.assertNever(s)}}function LPe(s,c,g,d,h,_){return s?g&&_.verbatimModuleSyntax&&(!(d&111551)||h.getTypeOnlyAliasDeclaration(g))?2:1:4}function dGs(s,c,g,d){let h;for(let S of s){let R=_(S);if(!R)continue;let T=rN(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&T||R.addAsTypeOnly===4&&!T)return R;h??(h=R)}return h;function _({declaration:S,importKind:R,symbol:T,targetFlags:W}){if(R===3||R===2||S.kind===272)return;if(S.kind===261)return(R===0||R===1)&&S.name.kind===207?{kind:2,importClauseOrBindingPattern:S.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:V}=S;if(!V||!mA(S.moduleSpecifier))return;let{name:M,namedBindings:ee}=V;if(V.isTypeOnly&&!(R===0&&ee))return;let re=LPe(c,!1,T,W,g,d);if(!(R===1&&(M||re===2&&ee))&&!(R===0&&ee?.kind===275))return{kind:2,importClauseOrBindingPattern:V,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:S.moduleSpecifier.text,addAsTypeOnly:re}}}function tcn(s,c){let g=c.getTypeChecker(),d;for(let h of s.imports){let _=v7(h);if(y7(_.parent)){let S=g.resolveExternalModuleName(h);S&&(d||(d=dl())).add(kg(S),_.parent)}else if(_.kind===273||_.kind===272||_.kind===352){let S=g.getSymbolAtLocation(h);S&&(d||(d=dl())).add(kg(S),_)}}return{getImportsForExportInfo:({moduleSymbol:h,exportKind:_,targetFlags:S,symbol:R})=>{let T=d?.get(kg(h));if(!T||n0(s)&&!(S&111551)&&!ue(T,SN))return E;let W=git(s,_,c);return T.map(V=>({declaration:V,importKind:W,symbol:R,targetFlags:S}))}}}function L1e(s,c){if(!pN(s.fileName))return!1;if(s.commonJsModuleIndicator&&!s.externalModuleIndicator)return!0;if(s.externalModuleIndicator&&!s.commonJsModuleIndicator)return!1;let g=c.getCompilerOptions();if(g.configFile)return i0(g)<5;if(zYt(s,c)===1)return!0;if(zYt(s,c)===99)return!1;for(let d of c.getSourceFiles())if(!(d===s||!n0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function rcn(s,c){return ZA(g=>g?c.getPackageJsonAutoImportProvider().getTypeChecker():s.getTypeChecker())}function pGs(s,c,g,d,h,_,S,R,T){let W=pN(c.fileName),V=s.getCompilerOptions(),M=z3(s,S),ee=rcn(s,S),re=k_(V),ge=UVe(re),Ie=T?Ne=>WF.tryGetModuleSpecifiersFromCache(Ne.moduleSymbol,c,M,R):(Ne,Te)=>WF.getModuleSpecifiersWithCacheInfo(Ne.moduleSymbol,Te,V,c,M,R,void 0,!0),_e=0,Ee=er(_,(Ne,Te)=>{let Ze=ee(Ne.isFromPackageJson),{computedWithoutCache:We,moduleSpecifiers:Ue,kind:$e}=Ie(Ne,Ze)??{},Ye=!!(Ne.targetFlags&111551),Tt=LPe(d,!0,Ne.symbol,Ne.targetFlags,Ze,V);return _e+=We?1:0,Xt(Ue,ot=>{if(ge&&WP(ot))return;if(!Ye&&W&&g!==void 0)return{kind:1,moduleSpecifierKind:$e,moduleSpecifier:ot,usagePosition:g,exportInfo:Ne,isReExport:Te>0};let Qe=git(c,Ne.exportKind,s),mt;if(g!==void 0&&Qe===3&&Ne.exportKind===0){let ht=Ze.resolveExternalModuleSymbol(Ne.moduleSymbol),_t;ht!==Ne.moduleSymbol&&(_t=fPe(ht,Ze,Mg(V),Fl)),_t||(_t=y1e(Ne.moduleSymbol,Mg(V),!1)),mt={namespacePrefix:_t,usagePosition:g}}return{kind:3,moduleSpecifierKind:$e,moduleSpecifier:ot,importKind:Qe,useRequire:h,addAsTypeOnly:Tt,exportInfo:Ne,isReExport:Te>0,qualification:mt}})});return{computedWithoutCacheCount:_e,fixes:Ee}}function fGs(s,c,g,d,h,_,S,R,T,W){let V=X(c,M=>IGs(M,_,S,g.getTypeChecker(),g.getCompilerOptions()));return V?{fixes:[V]}:pGs(g,d,h,_,S,s,R,T,W)}function IGs({declaration:s,importKind:c,symbol:g,targetFlags:d},h,_,S,R){var T;let W=(T=ZY(s))==null?void 0:T.text;if(W){let V=_?4:LPe(h,!0,g,d,S,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:W,importKind:c,addAsTypeOnly:V,useRequire:_}}}function ncn(s,c,g,d){let h=Jc(s.sourceFile,g),_;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)_=yGs(s,h);else if(Ir(h))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=Xa(JYt(s.sourceFile,s.program.getTypeChecker(),h,s.program.getCompilerOptions())),T=lcn(s.sourceFile,h,R,s.program);return T&&[{fix:T,symbolName:R,errorIdentifierText:h.text}]}else _=ccn(s,h,d);else return;let S=jie(s.sourceFile,s.preferences,s.host);return _&&icn(_,s.sourceFile,s.program,S,s.host,s.preferences)}function icn(s,c,g,d,h,_){let S=R=>Ou(R,h.getCurrentDirectory(),JD(h));return bo(s,(R,T)=>Ml(!!R.isJsxNamespaceFix,!!T.isJsxNamespaceFix)||Zt(R.fix.kind,T.fix.kind)||ocn(R.fix,T.fix,c,g,_,d.allowsImportingSpecifier,S))}function hGs(s,c,g){let d=ccn(s,c,g),h=jie(s.sourceFile,s.preferences,s.host);return d&&icn(d,s.sourceFile,s.program,h,s.host,s.preferences)}function scn(s,c,g,d,h,_){if(jt(s))return s[0].kind===0||s[0].kind===2?s[0]:s.reduce((S,R)=>ocn(R,S,c,g,_,d.allowsImportingSpecifier,T=>Ou(T,h.getCurrentDirectory(),JD(h)))===-1?R:S)}function ocn(s,c,g,d,h,_,S){return s.kind!==0&&c.kind!==0?Ml(c.moduleSpecifierKind!=="node_modules"||_(c.moduleSpecifier),s.moduleSpecifierKind!=="node_modules"||_(s.moduleSpecifier))||mGs(s,c,h)||_Gs(s.moduleSpecifier,c.moduleSpecifier,g,d)||Ml(acn(s,g.path,S),acn(c,g.path,S))||Qne(s.moduleSpecifier,c.moduleSpecifier):0}function mGs(s,c,g){return g.importModuleSpecifierPreference==="non-relative"||g.importModuleSpecifierPreference==="project-relative"?Ml(s.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function acn(s,c,g){var d;if(s.isReExport&&((d=s.exportInfo)!=null&&d.moduleFileName)&&CGs(s.exportInfo.moduleFileName)){let h=g(Mo(s.exportInfo.moduleFileName));return Ac(c,h)}return!1}function CGs(s){return gp(s,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function _Gs(s,c,g,d){return Ac(s,"node:")&&!Ac(c,"node:")?uPe(g,d)?-1:1:Ac(c,"node:")&&!Ac(s,"node:")?uPe(g,d)?1:-1:0}function yGs({sourceFile:s,program:c,host:g,preferences:d},h){let _=c.getTypeChecker(),S=bGs(h,_);if(!S)return;let R=_.getAliasedSymbol(S),T=S.name,W=[{symbol:S,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],V=L1e(s,c);return ZPe(W,void 0,!1,V,c,s,g,d).fixes.map(ee=>{var re;return{fix:ee,symbolName:T,errorIdentifierText:(re=Gs(h,Ir))==null?void 0:re.text}})}function bGs(s,c){let g=Ir(s)?c.getSymbolAtLocation(s):void 0;if(yAe(g))return g;let{parent:d}=s;if(eI(d)&&d.tagName===s||Pw(d)){let h=c.resolveName(c.getJsxNamespace(d),eI(d)?s:d,111551,!1);if(yAe(h))return h}}function git(s,c,g,d){if(g.getCompilerOptions().verbatimModuleSyntax&&RGs(s,g)===1)return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return BGs(s,g.getCompilerOptions(),!!d);case 3:return EGs(s,g,!!d);case 4:return 2;default:return pe.assertNever(c)}}function EGs(s,c,g){if(JY(c.getCompilerOptions()))return 1;let d=i0(c.getCompilerOptions());switch(d){case 2:case 1:case 3:return pN(s.fileName)&&(s.externalModuleIndicator||g)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 101:case 102:case 199:return zYt(s,c)===99?2:3;default:return pe.assertNever(d,`Unexpected moduleKind ${d}`)}}function ccn({sourceFile:s,program:c,cancellationToken:g,host:d,preferences:h},_,S){let R=c.getTypeChecker(),T=c.getCompilerOptions();return er(JYt(s,R,_,T),W=>{if(W==="default")return;let V=JL(_),M=L1e(s,c),ee=vGs(W,YJ(_),DU(_),g,s,c,S,d,h);return Do(xt(ee.values(),re=>ZPe(re,_.getStart(s),V,M,c,s,d,h).fixes),re=>({fix:re,symbolName:W,errorIdentifierText:_.text,isJsxNamespaceFix:W!==_.text}))})}function lcn(s,c,g,d){let h=d.getTypeChecker(),_=h.resolveName(g,c,111551,!0);if(!_)return;let S=h.getTypeOnlyAliasDeclaration(_);if(!(!S||ms(S)!==s))return{kind:4,typeOnlyAliasDeclaration:S}}function JYt(s,c,g,d){let h=g.parent;if((eI(h)||rQ(h))&&h.tagName===g&&unt(d.jsx)){let _=c.getJsxNamespace(s);if(SGs(_,g,c))return!eU(g.text)&&!c.resolveName(g.text,g,111551,!1)?[g.text,_]:[_]}return[g.text]}function SGs(s,c,g){if(eU(c.text))return!0;let d=g.resolveName(s,c,111551,!0);return!d||jt(d.declarations,nN)&&!(d.flags&111551)}function vGs(s,c,g,d,h,_,S,R,T){var W;let V=dl(),M=jie(h,T,R),ee=(W=R.getModuleSpecifierCache)==null?void 0:W.call(R),re=ZA(Ie=>z3(Ie?R.getPackageJsonAutoImportProvider():_,R));function ge(Ie,_e,Ee,Ne,Te,Ze){let We=re(Ze);if(dnt(Te,h,_e,Ie,T,M,We,ee)){let Ue=Te.getTypeChecker();V.add(mMt(Ee,Ue).toString(),{symbol:Ee,moduleSymbol:Ie,moduleFileName:_e?.fileName,exportKind:Ne,targetFlags:FC(Ee,Ue).flags,isFromPackageJson:Ze})}}return pnt(_,R,T,S,(Ie,_e,Ee,Ne)=>{let Te=Ee.getTypeChecker();d.throwIfCancellationRequested();let Ze=Ee.getCompilerOptions(),We=pPe(Ie,Te);We&&hcn(Te.getSymbolFlags(We.symbol),g)&&fPe(We.symbol,Te,Mg(Ze),($e,Ye)=>(c?Ye??$e:$e)===s)&&ge(Ie,_e,We.symbol,We.exportKind,Ee,Ne);let Ue=Te.tryGetMemberInModuleExportsAndProperties(s,Ie);Ue&&hcn(Te.getSymbolFlags(Ue),g)&&ge(Ie,_e,Ue,0,Ee,Ne)}),V}function BGs(s,c,g){let d=JY(c),h=pN(s.fileName);if(!h&&i0(c)>=5)return d?1:2;if(h)return s.externalModuleIndicator||g?d?1:2:3;for(let _ of s.statements??E)if(km(_)&&!sf(_.moduleReference))return 3;return d?1:3}function UYt(s,c,g,d,h,_,S){let R,T=xo.ChangeTracker.with(s,W=>{R=wGs(W,c,g,d,h,_,S)});return ug(Kan,T,R,jan,Z.Add_all_missing_imports)}function wGs(s,c,g,d,h,_,S){let R=_1(c,S);switch(d.kind){case 0:return KYt(s,c,d),[Z.Change_0_to_1,g,`${d.namespacePrefix}.${g}`];case 1:return Acn(s,c,d,R),[Z.Change_0_to_1,g,dcn(d.moduleSpecifier,R)+g];case 2:{let{importClauseOrBindingPattern:T,importKind:W,addAsTypeOnly:V,moduleSpecifier:M}=d;gcn(s,c,T,W===1?{name:g,addAsTypeOnly:V}:void 0,W===0?[{name:g,addAsTypeOnly:V}]:E,void 0,S);let ee=l2(M);return h?[Z.Import_0_from_1,g,ee]:[Z.Update_import_from_0,ee]}case 3:{let{importKind:T,moduleSpecifier:W,addAsTypeOnly:V,useRequire:M,qualification:ee}=d,re=M?fcn:pcn,ge=T===1?{name:g,addAsTypeOnly:V}:void 0,Ie=T===0?[{name:g,addAsTypeOnly:V}]:void 0,_e=T===2||T===3?{importKind:T,name:ee?.namespacePrefix||g,addAsTypeOnly:V}:void 0;return Mrt(s,c,re(W,R,ge,Ie,_e,_.getCompilerOptions(),S),!0,S),ee&&KYt(s,c,ee),h?[Z.Import_0_from_1,g,W]:[Z.Add_import_from_0,W]}case 4:{let{typeOnlyAliasDeclaration:T}=d,W=TGs(s,T,_,c,S);return W.kind===277?[Z.Remove_type_from_import_of_0_from_1,g,ucn(W.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,ucn(W)]}default:return pe.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function ucn(s){var c,g;return s.kind===272?((g=Gs((c=Gs(s.moduleReference,ZF))==null?void 0:c.expression,mA))==null?void 0:g.text)||s.moduleReference.getText():Ma(s.parent.moduleSpecifier,Zg).text}function TGs(s,c,g,d,h){let _=g.getCompilerOptions(),S=_.verbatimModuleSyntax;switch(c.kind){case 277:if(c.isTypeOnly){if(c.parent.elements.length>1){let T=me.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:W}=i5.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,h,d),V=i5.getImportSpecifierInsertionIndex(c.parent.elements,T,W);if(V!==c.parent.elements.indexOf(c))return s.delete(d,c),s.insertImportSpecifierAtIndex(d,T,c.parent,V),c}return s.deleteRange(d,{pos:MD(c.getFirstToken()),end:MD(c.propertyName??c.name)}),c}else return pe.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 274:return R(c),c;case 275:return R(c.parent),c.parent;case 272:return s.deleteRange(d,c.getChildAt(1)),c;default:pe.failBadSyntaxKind(c)}function R(T){var W;if(s.delete(d,Hrt(T,d)),!_.allowImportingTsExtensions){let V=ZY(T.parent),M=V&&((W=g.getResolvedModuleFromModuleSpecifier(V,d))==null?void 0:W.resolvedModule);if(M?.resolvedUsingTsExtension){let ee=K2(V.text,MEe(V.text,_));s.replaceNode(d,V,me.createStringLiteral(ee))}}if(S){let V=Gs(T.namedBindings,yN);if(V&&V.elements.length>1){i5.getNamedImportSpecifierComparerWithDetection(T.parent,h,d).isSorted!==!1&&c.kind===277&&V.elements.indexOf(c)!==0&&(s.delete(d,c),s.insertImportSpecifierAtIndex(d,c,V,0));for(let ee of V.elements)ee!==c&&!ee.isTypeOnly&&s.insertModifierBefore(d,156,ee)}}}}function gcn(s,c,g,d,h,_,S){var R;if(g.kind===207){if(_&&g.elements.some(M=>_.has(M))){s.replaceNode(c,g,me.createObjectBindingPattern([...g.elements.filter(M=>!_.has(M)),...d?[me.createBindingElement(void 0,"default",d.name)]:E,...h.map(M=>me.createBindingElement(void 0,M.propertyName,M.name))]));return}d&&V(g,d.name,"default");for(let M of h)V(g,M.name,M.propertyName);return}let T=g.isTypeOnly&&jt([d,...h],M=>M?.addAsTypeOnly===4),W=g.namedBindings&&((R=Gs(g.namedBindings,yN))==null?void 0:R.elements);if(d&&(pe.assert(!g.name,"Cannot add a default import to an import clause that already has one"),s.insertNodeAt(c,g.getStart(c),me.createIdentifier(d.name),{suffix:", "})),h.length){let{specifierComparer:M,isSorted:ee}=i5.getNamedImportSpecifierComparerWithDetection(g.parent,S,c),re=bo(h.map(ge=>me.createImportSpecifier((!g.isTypeOnly||T)&&Ait(ge,S),ge.propertyName===void 0?void 0:me.createIdentifier(ge.propertyName),me.createIdentifier(ge.name))),M);if(_)s.replaceNode(c,g.namedBindings,me.updateNamedImports(g.namedBindings,bo([...W.filter(ge=>!_.has(ge)),...re],M)));else if(W?.length&&ee!==!1){let ge=T&&W?me.updateNamedImports(g.namedBindings,Tr(W,Ie=>me.updateImportSpecifier(Ie,!0,Ie.propertyName,Ie.name))).elements:W;for(let Ie of re){let _e=i5.getImportSpecifierInsertionIndex(ge,Ie,M);s.insertImportSpecifierAtIndex(c,Ie,g.namedBindings,_e)}}else if(W?.length)for(let ge of re)s.insertNodeInListAfter(c,Ei(W),ge,W);else if(re.length){let ge=me.createNamedImports(re);g.namedBindings?s.replaceNode(c,g.namedBindings,ge):s.insertNodeAfter(c,pe.checkDefined(g.name,"Import clause must have either named imports or a default import"),ge)}}if(T&&(s.delete(c,Hrt(g,c)),W))for(let M of W)s.insertModifierBefore(c,156,M);function V(M,ee,re){let ge=me.createBindingElement(void 0,re,ee);M.elements.length?s.insertNodeInListAfter(c,Ei(M.elements),ge):s.replaceNode(c,M,me.createObjectBindingPattern([ge]))}}function KYt(s,c,{namespacePrefix:g,usagePosition:d}){s.insertText(c,d,g+".")}function Acn(s,c,{moduleSpecifier:g,usagePosition:d},h){s.insertText(c,d,dcn(g,h))}function dcn(s,c){let g=Wrt(c);return`import(${g}${s}${g}).`}function jYt({addAsTypeOnly:s}){return s===2}function Ait(s,c){return jYt(s)||!!c.preferTypeOnlyAutoImports&&s.addAsTypeOnly!==4}function pcn(s,c,g,d,h,_,S){let R=Xde(s,c),T;if(g!==void 0||d?.length){let W=(!g||jYt(g))&&ue(d,jYt)||(_.verbatimModuleSyntax||S.preferTypeOnlyAutoImports)&&g?.addAsTypeOnly!==4&&!jt(d,V=>V.addAsTypeOnly===4);T=zr(T,QP(g&&me.createIdentifier(g.name),d?.map(V=>me.createImportSpecifier(!W&&Ait(V,S),V.propertyName===void 0?void 0:me.createIdentifier(V.propertyName),me.createIdentifier(V.name))),s,c,W))}if(h){let W=h.importKind===3?me.createImportEqualsDeclaration(void 0,Ait(h,S),me.createIdentifier(h.name),me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(Ait(h,S)?156:void 0,void 0,me.createNamespaceImport(me.createIdentifier(h.name))),R,void 0);T=zr(T,W)}return pe.checkDefined(T)}function fcn(s,c,g,d,h){let _=Xde(s,c),S;if(g||d?.length){let R=d?.map(({name:W,propertyName:V})=>me.createBindingElement(void 0,V,W))||[];g&&R.unshift(me.createBindingElement(void 0,"default",g.name));let T=Icn(me.createObjectBindingPattern(R),_);S=zr(S,T)}if(h){let R=Icn(h.name,_);S=zr(S,R)}return pe.checkDefined(S)}function Icn(s,c){return me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(typeof s=="string"?me.createIdentifier(s):s,void 0,void 0,me.createCallExpression(me.createIdentifier("require"),void 0,[c]))],2))}function hcn(s,c){return c===7?!0:c&1?!!(s&111551):c&2?!!(s&788968):c&4?!!(s&1920):!1}function zYt(s,c){return aN(s)?c.getImpliedNodeFormatForEmit(s):NU(s,c.getCompilerOptions())}function RGs(s,c){return aN(s)?c.getEmitModuleFormatOfFile(s):Lde(s,c.getCompilerOptions())}var qYt="addMissingConstraint",mcn=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];xg({errorCodes:mcn,getCodeActions(s){let{sourceFile:c,span:g,program:d,preferences:h,host:_}=s,S=Ccn(d,c,g);if(S===void 0)return;let R=xo.ChangeTracker.with(s,T=>_cn(T,d,h,_,c,S));return[ug(qYt,R,Z.Add_extends_constraint,qYt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[qYt],getAllCodeActions:s=>{let{program:c,preferences:g,host:d}=s,h=new Set;return Hz(xo.ChangeTracker.with(s,_=>{Yz(s,mcn,S=>{let R=Ccn(c,S.file,zd(S.start,S.length));if(R&&Zy(h,rd(R.declaration)))return _cn(_,c,g,d,S.file,R)})}))}});function Ccn(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=XQt(h.file,zd(h.start,h.length));if(_!==void 0&&(Ir(_)&&Ds(_.parent)&&(_=_.parent),Ds(_))){if(GB(_.parent))return;let S=Jc(c,g.start),R=s.getTypeChecker();return{constraint:DGs(R,S)||NGs(h.messageText),declaration:_,token:S}}}function _cn(s,c,g,d,h,_){let{declaration:S,constraint:R}=_,T=c.getTypeChecker();if(Xs(R))s.insertText(h,S.name.end,` extends ${R}`);else{let W=Mg(c.getCompilerOptions()),V=rse({program:c,host:d}),M=yQ(h,c,g,d),ee=wit(T,M,R,void 0,W,void 0,void 0,V);ee&&(s.replaceNode(h,S,me.updateTypeParameterDeclaration(S,void 0,S.name,ee,S.default)),M.writeFixes(s))}}function NGs(s){let[,c]=wN(s,` -`,0).match(/`extends (.*)`/)||[];return c}function DGs(s,c){return uc(c.parent)?s.getTypeArgumentConstraint(c.parent):(un(c)?s.getContextualType(c):void 0)||s.getTypeAtLocation(c)}var ycn="fixOverrideModifier",V1e="fixAddOverrideModifier",VPe="fixRemoveOverrideModifier",bcn=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],Ecn={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:V1e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:VPe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};xg({errorCodes:bcn,getCodeActions:function(c){let{errorCode:g,span:d}=c,h=Ecn[g];if(!h)return E;let{descriptions:_,fixId:S,fixAllDescriptions:R}=h,T=xo.ChangeTracker.with(c,W=>Scn(W,c,g,d.start));return[hYt(ycn,T,_,S,R)]},fixIds:[ycn,V1e,VPe],getAllCodeActions:s=>Qd(s,bcn,(c,g)=>{let{code:d,start:h}=g,_=Ecn[d];!_||_.fixId!==s.fixId||Scn(c,s,d,h)})});function Scn(s,c,g,d){switch(g){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return kGs(s,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return xGs(s,c.sourceFile,d);default:pe.fail("Unexpected error code: "+g)}}function kGs(s,c,g){let d=Bcn(c,g);if(n0(c)){s.addJSDocTags(c,d,[me.createJSDocOverrideTag(me.createIdentifier("override"))]);return}let h=d.modifiers||E,_=de(h,Ge),S=de(h,Xe),R=de(h,M=>Nrt(M.kind)),T=be(h,So),W=S?S.end:_?_.end:R?R.end:T?Yu(c.text,T.end):d.getStart(c),V=R||_||S?{prefix:" "}:{suffix:" "};s.insertModifierAt(c,W,164,V)}function xGs(s,c,g){let d=Bcn(c,g);if(n0(c)){s.filterJSDocTags(c,d,uC($Le));return}let h=de(d.modifiers,bt);pe.assertIsDefined(h),s.deleteModifier(c,h)}function vcn(s){switch(s.kind){case 177:case 173:case 175:case 178:case 179:return!0;case 170:return Ve(s,s.parent);default:return!1}}function Bcn(s,c){let g=Jc(s,c),d=ji(g,h=>xa(h)?"quit":vcn(h));return pe.assert(d&&vcn(d)),d}var $Yt="fixNoPropertyAccessFromIndexSignature",wcn=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];xg({errorCodes:wcn,fixIds:[$Yt],getCodeActions(s){let{sourceFile:c,span:g,preferences:d}=s,h=Rcn(c,g.start),_=xo.ChangeTracker.with(s,S=>Tcn(S,s.sourceFile,h,d));return[ug($Yt,_,[Z.Use_element_access_for_0,h.name.text],$Yt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:s=>Qd(s,wcn,(c,g)=>Tcn(c,g.file,Rcn(g.file,g.start),s.preferences))});function Tcn(s,c,g,d){let h=_1(c,d),_=me.createStringLiteral(g.name.text,h===0);s.replaceNode(c,g,vx(g)?me.createElementAccessChain(g.expression,g.questionDotToken,_):me.createElementAccessExpression(g.expression,_))}function Rcn(s,c){return Ma(Jc(s,c).parent,jo)}var eQt="fixImplicitThis",Ncn=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];xg({errorCodes:Ncn,getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_,S=xo.ChangeTracker.with(c,R=>{_=Dcn(R,g,h.start,d.getTypeChecker())});return _?[ug(eQt,S,_,eQt,Z.Fix_all_implicit_this_errors)]:E},fixIds:[eQt],getAllCodeActions:s=>Qd(s,Ncn,(c,g)=>{Dcn(c,g.file,g.start,s.program.getTypeChecker())})});function Dcn(s,c,g,d){let h=Jc(c,g);if(!Oie(h))return;let _=r0(h,!1,!1);if(!(!ih(_)&&!UA(_))&&!ll(r0(_,!1,!1))){let S=pe.checkDefined(qd(_,100,c)),{name:R}=_,T=pe.checkDefined(_.body);return UA(_)?R&&Kp.Core.isSymbolReferencedInFile(R,d,c,T)?void 0:(s.delete(c,S),R&&s.delete(c,R),s.insertText(c,T.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:tnt]):(s.replaceNode(c,S,me.createToken(87)),s.insertText(c,R.end," = "),s.insertText(c,T.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var tQt="fixImportNonExportedMember",kcn=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];xg({errorCodes:kcn,fixIds:[tQt],getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=xcn(c,g.start,d);if(h===void 0)return;let _=xo.ChangeTracker.with(s,S=>GGs(S,d,h));return[ug(tQt,_,[Z.Export_0_from_module_1,h.exportName.node.text,h.moduleSpecifier],tQt,Z.Export_all_referenced_locals)]},getAllCodeActions(s){let{program:c}=s;return Hz(xo.ChangeTracker.with(s,g=>{let d=new Map;Yz(s,kcn,h=>{let _=xcn(h.file,h.start,c);if(_===void 0)return;let{exportName:S,node:R,moduleSourceFile:T}=_;if(dit(T,S.isTypeOnly)===void 0&&Kne(R))g.insertExportModifier(T,R);else{let W=d.get(T)||{typeOnlyExports:[],exports:[]};S.isTypeOnly?W.typeOnlyExports.push(S):W.exports.push(S),d.set(T,W)}}),d.forEach((h,_)=>{let S=dit(_,!0);S&&S.isTypeOnly?(rQt(g,c,_,h.typeOnlyExports,S),rQt(g,c,_,h.exports,dit(_,!1))):rQt(g,c,_,[...h.exports,...h.typeOnlyExports],S)})}))}});function xcn(s,c,g){var d,h;let _=Jc(s,c);if(Ir(_)){let S=ji(_,Mf);if(S===void 0)return;let R=Zg(S.moduleSpecifier)?S.moduleSpecifier:void 0;if(R===void 0)return;let T=(d=g.getResolvedModuleFromModuleSpecifier(R,s))==null?void 0:d.resolvedModule;if(T===void 0)return;let W=g.getSourceFile(T.resolvedFileName);if(W===void 0||zie(g,W))return;let V=W.symbol,M=(h=Gs(V.valueDeclaration,WI))==null?void 0:h.locals;if(M===void 0)return;let ee=M.get(_.escapedText);if(ee===void 0)return;let re=FGs(ee);return re===void 0?void 0:{exportName:{node:_,isTypeOnly:KY(re)},node:re,moduleSourceFile:W,moduleSpecifier:R.text}}}function GGs(s,c,{exportName:g,node:d,moduleSourceFile:h}){let _=dit(h,g.isTypeOnly);_?Gcn(s,c,h,_,[g]):Kne(d)?s.insertExportModifier(h,d):Fcn(s,c,h,[g])}function rQt(s,c,g,d,h){B(d)&&(h?Gcn(s,c,g,h,d):Fcn(s,c,g,d))}function dit(s,c){let g=d=>Gh(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return be(s.statements,g)}function Gcn(s,c,g,d,h){let _=d.exportClause&&mv(d.exportClause)?d.exportClause.elements:me.createNodeArray([]),S=!d.isTypeOnly&&!!(sS(c.getCompilerOptions())||de(_,R=>R.isTypeOnly));s.replaceNode(g,d,me.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,me.createNamedExports(me.createNodeArray([..._,...Zcn(h,S)],_.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function Fcn(s,c,g,d){s.insertNodeAtEndOfScope(g,g,me.createExportDeclaration(void 0,!1,me.createNamedExports(Zcn(d,sS(c.getCompilerOptions()))),void 0,void 0))}function Zcn(s,c){return me.createNodeArray(At(s,g=>me.createExportSpecifier(c&&g.isTypeOnly,void 0,g.node)))}function FGs(s){if(s.valueDeclaration===void 0)return Nc(s.declarations);let c=s.valueDeclaration,g=nc(c)?Gs(c.parent.parent,Ch):void 0;return g&&B(g.declarationList.declarations)===1?g:c}var nQt="fixIncorrectNamedTupleSyntax",ZGs=[Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];xg({errorCodes:ZGs,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=LGs(g,d.start),_=xo.ChangeTracker.with(c,S=>VGs(S,g,h));return[ug(nQt,_,Z.Move_labeled_tuple_element_modifiers_to_labels,nQt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[nQt]});function LGs(s,c){let g=Jc(s,c);return ji(g,d=>d.kind===203)}function VGs(s,c,g){if(!g)return;let d=g.type,h=!1,_=!1;for(;d.kind===191||d.kind===192||d.kind===197;)d.kind===191?h=!0:d.kind===192&&(_=!0),d=d.type;let S=me.updateNamedTupleMember(g,g.dotDotDotToken||(_?me.createToken(26):void 0),g.name,g.questionToken||(h?me.createToken(58):void 0),d);S!==g&&s.replaceNode(c,g,S)}var Lcn="fixSpelling",Vcn=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];xg({errorCodes:Vcn,getCodeActions(s){let{sourceFile:c,errorCode:g}=s,d=Pcn(c,s.span.start,s,g);if(!d)return;let{node:h,suggestedSymbol:_}=d,S=Mg(s.host.getCompilationSettings()),R=xo.ChangeTracker.with(s,T=>Wcn(T,c,h,_,S));return[ug("spelling",R,[Z.Change_spelling_to_0,nf(_)],Lcn,Z.Fix_all_detected_spelling_errors)]},fixIds:[Lcn],getAllCodeActions:s=>Qd(s,Vcn,(c,g)=>{let d=Pcn(g.file,g.start,s,g.code),h=Mg(s.host.getCompilationSettings());d&&Wcn(c,s.sourceFile,d.node,d.suggestedSymbol,h)})});function Pcn(s,c,g,d){let h=Jc(s,c),_=h.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!EN(_))return;let S=g.program.getTypeChecker(),R;if(jo(_)&&_.name===h){pe.assert(_w(h),"Expected an identifier for spelling (property access)");let T=S.getTypeAtLocation(_.expression);_.flags&64&&(T=S.getNonNullableType(T)),R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(fo(_)&&_.operatorToken.kind===103&&_.left===h&&p(h)){let T=S.getTypeAtLocation(_.right);R=S.getSuggestedSymbolForNonexistentProperty(h,T)}else if(zi(_)&&_.right===h){let T=S.getSymbolAtLocation(_.left);T&&T.flags&1536&&(R=S.getSuggestedSymbolForNonexistentModule(_.right,T))}else if(uy(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for spelling (import)");let T=ji(h,Mf),W=WGs(g,T,s);W&&W.symbol&&(R=S.getSuggestedSymbolForNonexistentModule(h,W.symbol))}else if(EN(_)&&_.name===h){pe.assertNode(h,Ir,"Expected an identifier for JSX attribute");let T=ji(h,eI),W=S.getContextualTypeForArgumentAtIndex(T,0);R=S.getSuggestedSymbolForNonexistentJSXAttribute(h,W)}else if(Tne(_)&&PI(_)&&_.name===h){let T=ji(h,xa),W=T?BB(T):void 0,V=W?S.getTypeAtLocation(W):void 0;V&&(R=S.getSuggestedSymbolForNonexistentClassMember(xp(h),V))}else{let T=DU(h),W=xp(h);pe.assert(W!==void 0,"name should be defined"),R=S.getSuggestedSymbolForNonexistentSymbol(h,W,PGs(T))}return R===void 0?void 0:{node:h,suggestedSymbol:R}}function Wcn(s,c,g,d,h){let _=nf(d);if(!Uh(_,h)&&jo(g.parent)){let S=d.valueDeclaration;S&&rh(S)&&p(S.name)?s.replaceNode(c,g,me.createIdentifier(_)):s.replaceNode(c,g.parent,me.createElementAccessExpression(g.parent.expression,me.createStringLiteral(_)))}else s.replaceNode(c,g,me.createIdentifier(_))}function PGs(s){let c=0;return s&4&&(c|=1920),s&2&&(c|=788968),s&1&&(c|=111551),c}function WGs(s,c,g){var d;if(!c||!mA(c.moduleSpecifier))return;let h=(d=s.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,g))==null?void 0:d.resolvedModule;if(h)return s.program.getSourceFile(h.resolvedFileName)}var iQt="returnValueCorrect",sQt="fixAddReturnStatement",oQt="fixRemoveBracesFromArrowFunctionBody",aQt="fixWrapTheBlockWithParen",Ocn=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];xg({errorCodes:Ocn,fixIds:[sQt,oQt,aQt],getCodeActions:function(c){let{program:g,sourceFile:d,span:{start:h},errorCode:_}=c,S=Hcn(g.getTypeChecker(),d,h,_);if(S)return S.kind===0?Ft([MGs(c,S.expression,S.statement)],lA(S.declaration)?HGs(c,S.declaration,S.expression,S.commentSource):void 0):[YGs(c,S.declaration,S.expression)]},getAllCodeActions:s=>Qd(s,Ocn,(c,g)=>{let d=Hcn(s.program.getTypeChecker(),g.file,g.start,g.code);if(d)switch(s.fixId){case sQt:Ycn(c,g.file,d.expression,d.statement);break;case oQt:if(!lA(d.declaration))return;Qcn(c,g.file,d.declaration,d.expression,d.commentSource,!1);break;case aQt:if(!lA(d.declaration))return;Xcn(c,g.file,d.declaration,d.expression);break;default:pe.fail(JSON.stringify(s.fixId))}})});function Mcn(s,c,g){let d=s.createSymbol(4,c.escapedText);d.links.type=s.getTypeAtLocation(g);let h=qu([d]);return s.createAnonymousType(void 0,h,[],[],[])}function cQt(s,c,g,d){if(!c.body||!$u(c.body)||B(c.body.statements)!==1)return;let h=ma(c.body.statements);if(VC(h)&&lQt(s,c,s.getTypeAtLocation(h.expression),g,d))return{declaration:c,kind:0,expression:h.expression,statement:h,commentSource:h.expression};if(FP(h)&&VC(h.statement)){let _=me.createObjectLiteralExpression([me.createPropertyAssignment(h.label,h.statement.expression)]),S=Mcn(s,h.label,h.statement.expression);if(lQt(s,c,S,g,d))return lA(c)?{declaration:c,kind:1,expression:_,statement:h,commentSource:h.statement.expression}:{declaration:c,kind:0,expression:_,statement:h,commentSource:h.statement.expression}}else if($u(h)&&B(h.statements)===1){let _=ma(h.statements);if(FP(_)&&VC(_.statement)){let S=me.createObjectLiteralExpression([me.createPropertyAssignment(_.label,_.statement.expression)]),R=Mcn(s,_.label,_.statement.expression);if(lQt(s,c,R,g,d))return{declaration:c,kind:0,expression:S,statement:h,commentSource:_}}}}function lQt(s,c,g,d,h){if(h){let _=s.getSignatureFromDeclaration(c);if(_){Ga(c,1024)&&(g=s.createPromiseType(g));let S=s.createSignature(c,_.typeParameters,_.thisParameter,_.parameters,g,void 0,_.minArgumentCount,_.flags);g=s.createAnonymousType(void 0,qu(),[S],[],[])}else g=s.getAnyType()}return s.isTypeAssignableTo(g,d)}function Hcn(s,c,g,d){let h=Jc(c,g);if(!h.parent)return;let _=ji(h.parent,kd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!_||!_.body||!_.type||!cy(_.type,h)?void 0:cQt(s,_,s.getTypeFromTypeNode(_.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!_||!Zl(_.parent)||!_.body)return;let S=_.parent.arguments.indexOf(_);if(S===-1)return;let R=s.getContextualTypeForArgumentAtIndex(_.parent,S);return R?cQt(s,_,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!HT(h)||!I7(h.parent)&&!EN(h.parent))return;let T=OGs(h.parent);return!T||!kd(T)||!T.body?void 0:cQt(s,T,s.getTypeAtLocation(h.parent),!0)}}function OGs(s){switch(s.kind){case 261:case 170:case 209:case 173:case 304:return s.initializer;case 292:return s.initializer&&(pie(s.initializer)?s.initializer.expression:void 0);case 305:case 172:case 307:case 349:case 342:return}}function Ycn(s,c,g,d){Vy(g);let h=C1e(c);s.replaceNode(c,d,me.createReturnStatement(g),{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,suffix:h?";":void 0})}function Qcn(s,c,g,d,h,_){let S=_||ePe(d)?me.createParenthesizedExpression(d):d;Vy(h),xU(h,S),s.replaceNode(c,g.body,S)}function Xcn(s,c,g,d){s.replaceNode(c,g.body,me.createParenthesizedExpression(d))}function MGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>Ycn(h,s.sourceFile,c,g));return ug(iQt,d,Z.Add_a_return_statement,sQt,Z.Add_all_missing_return_statement)}function HGs(s,c,g,d){let h=xo.ChangeTracker.with(s,_=>Qcn(_,s.sourceFile,c,g,d,!1));return ug(iQt,h,Z.Remove_braces_from_arrow_function_body,oQt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function YGs(s,c,g){let d=xo.ChangeTracker.with(s,h=>Xcn(h,s.sourceFile,c,g));return ug(iQt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,aQt,Z.Wrap_all_object_literal_with_parentheses)}var r5="fixMissingMember",pit="fixMissingProperties",fit="fixMissingAttributes",Iit="fixMissingFunctionDeclaration",Jcn=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code,Z.Type_0_does_not_satisfy_the_expected_type_1.code];xg({errorCodes:Jcn,getCodeActions(s){let c=s.program.getTypeChecker(),g=Ucn(s.sourceFile,s.span.start,s.errorCode,c,s.program);if(g){if(g.kind===3){let d=xo.ChangeTracker.with(s,h=>iln(h,s,g));return[ug(pit,d,Z.Add_missing_properties,pit,Z.Add_all_missing_properties)]}if(g.kind===4){let d=xo.ChangeTracker.with(s,h=>nln(h,s,g));return[ug(fit,d,Z.Add_missing_attributes,fit,Z.Add_all_missing_attributes)]}if(g.kind===2||g.kind===5){let d=xo.ChangeTracker.with(s,h=>rln(h,s,g));return[ug(Iit,d,[Z.Add_missing_function_declaration_0,g.token.text],Iit,Z.Add_all_missing_function_declarations)]}if(g.kind===1){let d=xo.ChangeTracker.with(s,h=>tln(h,s.program.getTypeChecker(),g));return[ug(r5,d,[Z.Add_missing_enum_member_0,g.token.text],r5,Z.Add_all_missing_members)]}return Nn(KGs(s,g),QGs(s,g))}},fixIds:[r5,Iit,pit,fit],getAllCodeActions:s=>{let{program:c,fixId:g}=s,d=c.getTypeChecker(),h=new Set,_=new Map;return Hz(xo.ChangeTracker.with(s,S=>{Yz(s,Jcn,R=>{let T=Ucn(R.file,R.start,R.code,d,s.program);if(T===void 0)return;let W=rd(T.parentDeclaration)+"#"+(T.kind===3?T.identifier||rd(T.token):T.token.text);if(Zy(h,W)){if(g===Iit&&(T.kind===2||T.kind===5))rln(S,s,T);else if(g===pit&&T.kind===3)iln(S,s,T);else if(g===fit&&T.kind===4)nln(S,s,T);else if(T.kind===1&&tln(S,d,T),T.kind===0){let{parentDeclaration:V,token:M}=T,ee=cr(_,V,()=>[]);ee.some(re=>re.token.text===M.text)||ee.push(T)}}}),_.forEach((R,T)=>{let W=mh(T)?void 0:eFs(T,d);for(let V of R){if(W?.some(Ee=>{let Ne=_.get(Ee);return!!Ne&&Ne.some(({token:Te})=>Te.text===V.token.text)}))continue;let{parentDeclaration:M,declSourceFile:ee,modifierFlags:re,token:ge,call:Ie,isJSFile:_e}=V;if(Ie&&!p(ge))eln(s,S,Ie,ge,re&256,M,ee);else if(_e&&!g_(M)&&!mh(M))Kcn(S,ee,M,ge,!!(re&256));else{let Ee=zcn(d,M,ge);qcn(S,ee,M,ge.text,Ee,re&256)}}})}))}});function Ucn(s,c,g,d,h){var _,S;let R=Jc(s,c),T=R.parent;if(g===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(R.kind===19&&og(T)&&Zl(T.parent)))return;let ge=Se(T.parent.arguments,Ne=>Ne===T);if(ge<0)return;let Ie=d.getResolvedSignature(T.parent);if(!(Ie&&Ie.declaration&&Ie.parameters[ge]))return;let _e=Ie.parameters[ge].valueDeclaration;if(!(_e&&Si(_e)&&Ir(_e.name)))return;let Ee=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),d.getParameterType(Ie,ge).getNonNullableType(),!1,!1));return B(Ee)?{kind:3,token:_e.name,identifier:_e.name.text,properties:Ee,parentDeclaration:T}:void 0}if(R.kind===19||Qg(T)||I2(T)){let ge=(Qg(T)||I2(T))&&T.expression?T.expression:T;if(og(ge)){let Ie=Qg(T)?d.getTypeFromTypeNode(T.type):d.getContextualType(ge)||d.getTypeAtLocation(ge),_e=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T),Ie.getNonNullableType(),!1,!1));return B(_e)?{kind:3,token:T,identifier:void 0,properties:_e,parentDeclaration:ge,indentation:I2(ge.parent)||Hd(ge.parent)?0:void 0}:void 0}}if(!_w(R))return;if(Ir(R)&&WT(T)&&T.initializer&&og(T.initializer)){let ge=(_=d.getContextualType(R)||d.getTypeAtLocation(R))==null?void 0:_.getNonNullableType(),Ie=Do(d.getUnmatchedProperties(d.getTypeAtLocation(T.initializer),ge,!1,!1));return B(Ie)?{kind:3,token:R,identifier:R.text,properties:Ie,parentDeclaration:T.initializer}:void 0}if(Ir(R)&&eI(R.parent)){let ge=Mg(h.getCompilerOptions()),Ie=zGs(d,ge,R.parent);return B(Ie)?{kind:4,token:R,attributes:Ie,parentDeclaration:R.parent}:void 0}if(Ir(R)){let ge=(S=d.getContextualType(R))==null?void 0:S.getNonNullableType();if(ge&&la(ge)&16){let Ie=Nc(d.getSignaturesOfType(ge,0));return Ie===void 0?void 0:{kind:5,token:R,signature:Ie,sourceFile:s,parentDeclaration:sln(R)}}if(Zl(T)&&T.expression===R)return{kind:2,token:R,call:T,sourceFile:s,modifierFlags:0,parentDeclaration:sln(R)}}if(!jo(T))return;let W=Zrt(d.getTypeAtLocation(T.expression)),V=W.symbol;if(!V||!V.declarations)return;if(Ir(R)&&Zl(T.parent)){let ge=de(V.declarations,xh),Ie=ge?.getSourceFile();if(ge&&Ie&&!zie(h,Ie))return{kind:2,token:R,call:T.parent,sourceFile:Ie,modifierFlags:32,parentDeclaration:ge};let _e=de(V.declarations,ll);if(s.commonJsModuleIndicator)return;if(_e&&!zie(h,_e))return{kind:2,token:R,call:T.parent,sourceFile:_e,modifierFlags:32,parentDeclaration:_e}}let M=de(V.declarations,xa);if(!M&&p(R))return;let ee=M||de(V.declarations,ge=>g_(ge)||mh(ge));if(ee&&!zie(h,ee.getSourceFile())){let ge=!mh(ee)&&(W.target||W)!==d.getDeclaredTypeOfSymbol(V);if(ge&&(p(R)||g_(ee)))return;let Ie=ee.getSourceFile(),_e=mh(ee)?0:(ge?256:0)|(lnt(R.text)?2:0),Ee=n0(Ie),Ne=Gs(T.parent,Zl);return{kind:0,token:R,call:Ne,modifierFlags:_e,parentDeclaration:ee,declSourceFile:Ie,isJSFile:Ee}}let re=de(V.declarations,V3);if(re&&!(W.flags&1056)&&!p(R)&&!zie(h,re.getSourceFile()))return{kind:1,token:R,parentDeclaration:re}}function QGs(s,c){return c.isJSFile?J_(XGs(s,c)):JGs(s,c)}function XGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){if(g_(c)||mh(c))return;let _=xo.ChangeTracker.with(s,R=>Kcn(R,g,c,h,!!(d&256)));if(_.length===0)return;let S=d&256?Z.Initialize_static_property_0:p(h)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return ug(r5,_,[S,h.text],r5,Z.Add_all_missing_members)}function Kcn(s,c,g,d,h){let _=d.text;if(h){if(g.kind===232)return;let S=g.name.getText(),R=jcn(me.createIdentifier(S),_);s.insertNodeAfter(c,g,R)}else if(p(d)){let S=me.createPropertyDeclaration(void 0,_,void 0,void 0,void 0),R=$cn(g);R?s.insertNodeAfter(c,R,S):s.insertMemberAtStart(c,g,S)}else{let S=lN(g);if(!S)return;let R=jcn(me.createThis(),_);s.insertNodeAtConstructorEnd(c,S,R)}}function jcn(s,c){return me.createExpressionStatement(me.createAssignment(me.createPropertyAccessExpression(s,c),Xz()))}function JGs(s,{parentDeclaration:c,declSourceFile:g,modifierFlags:d,token:h}){let _=h.text,S=d&256,R=zcn(s.program.getTypeChecker(),c,h),T=V=>xo.ChangeTracker.with(s,M=>qcn(M,g,c,_,R,V)),W=[ug(r5,T(d&256),[S?Z.Declare_static_property_0:Z.Declare_property_0,_],r5,Z.Add_all_missing_members)];return S||p(h)||(d&2&&W.unshift(sR(r5,T(2),[Z.Declare_private_property_0,_])),W.push(UGs(s,g,c,h.text,R))),W}function zcn(s,c,g){let d;if(g.parent.parent.kind===227){let h=g.parent.parent,_=g.parent===h.left?h.right:h.left,S=s.getWidenedType(s.getBaseTypeOfLiteralType(s.getTypeAtLocation(_)));d=s.typeToTypeNode(S,c,1,8)}else{let h=s.getContextualType(g.parent);d=h?s.typeToTypeNode(h,void 0,1,8):void 0}return d||me.createKeywordTypeNode(133)}function qcn(s,c,g,d,h,_){let S=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,R=xa(g)?me.createPropertyDeclaration(S,d,void 0,h,void 0):me.createPropertySignature(void 0,d,void 0,h),T=$cn(g);T?s.insertNodeAfter(c,T,R):s.insertMemberAtStart(c,g,R)}function $cn(s){let c;for(let g of s.members){if(!pi(g))break;c=g}return c}function UGs(s,c,g,d,h){let _=me.createKeywordTypeNode(154),S=me.createParameterDeclaration(void 0,void 0,"x",void 0,_,void 0),R=me.createIndexSignature(void 0,[S],h),T=xo.ChangeTracker.with(s,W=>W.insertMemberAtStart(c,g,R));return sR(r5,T,[Z.Add_index_signature_for_property_0,d])}function KGs(s,c){let{parentDeclaration:g,declSourceFile:d,modifierFlags:h,token:_,call:S}=c;if(S===void 0)return;let R=_.text,T=V=>xo.ChangeTracker.with(s,M=>eln(s,M,S,_,V,g,d)),W=[ug(r5,T(h&256),[h&256?Z.Declare_static_method_0:Z.Declare_method_0,R],r5,Z.Add_all_missing_members)];return h&2&&W.unshift(sR(r5,T(2),[Z.Declare_private_method_0,R])),W}function eln(s,c,g,d,h,_,S){let R=yQ(S,s.program,s.preferences,s.host),T=xa(_)?175:174,W=PQt(T,s,R,g,d,h,_),V=qGs(_,g);V?c.insertNodeAfter(S,V,W):c.insertMemberAtStart(S,_,W),R.writeFixes(c)}function tln(s,c,{token:g,parentDeclaration:d}){let h=jt(d.members,T=>{let W=c.getTypeAtLocation(T);return!!(W&&W.flags&402653316)}),_=d.getSourceFile(),S=me.createEnumMember(g,h?me.createStringLiteral(g.text):void 0),R=li(d.members);R?s.insertNodeInListAfter(_,R,S,d.members):s.insertMemberAtStart(_,d,S)}function rln(s,c,g){let d=_1(c.sourceFile,c.preferences),h=yQ(c.sourceFile,c.program,c.preferences,c.host),_=g.kind===2?PQt(263,c,h,g.call,Vo(g.token),g.modifierFlags,g.parentDeclaration):Bit(263,c,d,g.signature,WPe(Z.Function_not_implemented.message,d),g.token,void 0,void 0,void 0,h);_===void 0&&pe.fail("fixMissingFunctionDeclaration codefix got unexpected error."),I2(g.parentDeclaration)?s.insertNodeBefore(g.sourceFile,g.parentDeclaration,_,!0):s.insertNodeAtEndOfScope(g.sourceFile,g.parentDeclaration,_),h.writeFixes(s)}function nln(s,c,g){let d=yQ(c.sourceFile,c.program,c.preferences,c.host),h=_1(c.sourceFile,c.preferences),_=c.program.getTypeChecker(),S=g.parentDeclaration.attributes,R=jt(S.properties,yz),T=At(g.attributes,M=>{let ee=hit(c,_,d,h,_.getTypeOfSymbol(M),g.parentDeclaration),re=me.createIdentifier(M.name),ge=me.createJsxAttribute(re,me.createJsxExpression(void 0,ee));return XA(re,ge),ge}),W=me.createJsxAttributes(R?[...T,...S.properties]:[...S.properties,...T]),V={prefix:S.pos===S.end?" ":void 0};s.replaceNode(c.sourceFile,S,W,V),d.writeFixes(s)}function iln(s,c,g){let d=yQ(c.sourceFile,c.program,c.preferences,c.host),h=_1(c.sourceFile,c.preferences),_=Mg(c.program.getCompilerOptions()),S=c.program.getTypeChecker(),R=At(g.properties,W=>{let V=hit(c,S,d,h,S.getTypeOfSymbol(W),g.parentDeclaration);return me.createPropertyAssignment($Gs(W,_,h,S),V)}),T={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Exclude,indentation:g.indentation};s.replaceNode(c.sourceFile,g.parentDeclaration,me.createObjectLiteralExpression([...g.parentDeclaration.properties,...R],!0),T),d.writeFixes(s)}function hit(s,c,g,d,h,_){if(h.flags&3)return Xz();if(h.flags&134217732)return me.createStringLiteral("",d===0);if(h.flags&8)return me.createNumericLiteral(0);if(h.flags&64)return me.createBigIntLiteral("0n");if(h.flags&16)return me.createFalse();if(h.flags&1056){let S=h.symbol.exports?iA(h.symbol.exports.values()):h.symbol,R=h.symbol.parent&&h.symbol.parent.flags&256?h.symbol.parent:h.symbol,T=c.symbolToExpression(R,111551,void 0,64);return S===void 0||T===void 0?me.createNumericLiteral(0):me.createPropertyAccessExpression(T,c.symbolToString(S))}if(h.flags&256)return me.createNumericLiteral(h.value);if(h.flags&2048)return me.createBigIntLiteral(h.value);if(h.flags&128)return me.createStringLiteral(h.value,d===0);if(h.flags&512)return h===c.getFalseType()||h===c.getFalseType(!0)?me.createFalse():me.createTrue();if(h.flags&65536)return me.createNull();if(h.flags&1048576)return X(h.types,R=>hit(s,c,g,d,R,_))??Xz();if(c.isArrayLikeType(h))return me.createArrayLiteralExpression();if(jGs(h)){let S=At(c.getPropertiesOfType(h),R=>{let T=hit(s,c,g,d,c.getTypeOfSymbol(R),_);return me.createPropertyAssignment(R.name,T)});return me.createObjectLiteralExpression(S,!0)}if(la(h)&16){if(de(h.symbol.declarations||E,Hp(x_,hl,uu))===void 0)return Xz();let R=c.getSignaturesOfType(h,0);return R===void 0?Xz():Bit(219,s,d,R[0],WPe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,_,g)??Xz()}if(la(h)&1){let S=AN(h.symbol);if(S===void 0||wP(S))return Xz();let R=lN(S);return R&&B(R.parameters)?Xz():me.createNewExpression(me.createIdentifier(h.symbol.name),void 0,void 0)}return Xz()}function Xz(){return me.createIdentifier("undefined")}function jGs(s){return s.flags&524288&&(la(s)&128||s.symbol&&Gs(Ps(s.symbol.declarations),mh))}function zGs(s,c,g){let d=s.getContextualType(g.attributes);if(d===void 0)return E;let h=d.getProperties();if(!B(h))return E;let _=new Set;for(let S of g.attributes.properties)if(EN(S)&&_.add(cz(S.name)),yz(S)){let R=s.getTypeAtLocation(S.expression);for(let T of R.getProperties())_.add(T.escapedName)}return Me(h,S=>Uh(S.name,c,1)&&!(S.flags&16777216||iI(S)&48||_.has(S.escapedName)))}function qGs(s,c){if(mh(s))return;let g=ji(c,d=>uu(d)||Tc(d));return g&&g.parent===s?g:void 0}function $Gs(s,c,g,d){if(bw(s)){let h=d.symbolToNode(s,111551,void 0,void 0,1);if(h&&Un(h))return h}return Une(s.name,c,g===0,!1,!1)}function sln(s){if(ji(s,pie)){let c=ji(s.parent,I2);if(c)return c}return ms(s)}function eFs(s,c){let g=[];for(;s;){let d=OL(s),h=d&&c.getSymbolAtLocation(d.expression);if(!h)break;let _=h.flags&2097152?c.getAliasedSymbol(h):h,S=_.declarations&&de(_.declarations,xa);if(!S)break;g.push(S),s=S}return g}var uQt="addMissingNewOperator",oln=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];xg({errorCodes:oln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=xo.ChangeTracker.with(s,h=>aln(h,c,g));return[ug(uQt,d,Z.Add_missing_new_operator_to_call,uQt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[uQt],getAllCodeActions:s=>Qd(s,oln,(c,g)=>aln(c,s.sourceFile,g))});function aln(s,c,g){let d=Ma(tFs(c,g),Zl),h=me.createNewExpression(d.expression,d.typeArguments,d.arguments);s.replaceNode(c,d,h)}function tFs(s,c){let g=Jc(s,c.start),d=Rs(c);for(;g.end_it(R,s.program,s.preferences,s.host,d,h)),[B(h)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,g],mit,Z.Add_all_missing_parameters)),B(_)&&Ft(S,ug(Cit,xo.ChangeTracker.with(s,R=>_it(R,s.program,s.preferences,s.host,d,_)),[B(_)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,g],Cit,Z.Add_all_optional_parameters)),S},getAllCodeActions:s=>Qd(s,cln,(c,g)=>{let d=lln(s.sourceFile,s.program,g.start);if(d){let{declarations:h,newParameters:_,newOptionalParameters:S}=d;s.fixId===mit&&_it(c,s.program,s.preferences,s.host,h,_),s.fixId===Cit&&_it(c,s.program,s.preferences,s.host,h,S)}})});function lln(s,c,g){let d=Jc(s,g),h=ji(d,Zl);if(h===void 0||B(h.arguments)===0)return;let _=c.getTypeChecker(),S=_.getTypeAtLocation(h.expression),R=Me(S.symbol.declarations,uln);if(R===void 0)return;let T=li(R);if(T===void 0||T.body===void 0||zie(c,T.getSourceFile()))return;let W=rFs(T);if(W===void 0)return;let V=[],M=[],ee=B(T.parameters),re=B(h.arguments);if(ee>re)return;let ge=[T,...iFs(T,R)];for(let Ie=0,_e=0,Ee=0;Ie{let T=ms(R),W=yQ(T,c,g,d);B(R.parameters)?s.replaceNodeRangeWithNodes(T,ma(R.parameters),Ei(R.parameters),gln(W,S,R,_),{joiner:", ",indentation:0,leadingTriviaOption:xo.LeadingTriviaOption.IncludeAll,trailingTriviaOption:xo.TrailingTriviaOption.Include}):F(gln(W,S,R,_),(V,M)=>{B(R.parameters)===0&&M===0?s.insertNodeAt(T,R.parameters.end,V):s.insertNodeAtEndOfList(T,R.parameters,V)}),W.writeFixes(s)})}function uln(s){switch(s.kind){case 263:case 219:case 175:case 220:return!0;default:return!1}}function gln(s,c,g,d){let h=At(g.parameters,_=>me.createParameterDeclaration(_.modifiers,_.dotDotDotToken,_.name,_.questionToken,_.type,_.initializer));for(let{pos:_,declaration:S}of d){let R=_>0?h[_-1]:void 0;h.splice(_,0,me.updateParameterDeclaration(S,S.modifiers,S.dotDotDotToken,S.name,R&&R.questionToken?me.createToken(58):S.questionToken,aFs(s,S.type,c),S.initializer))}return h}function iFs(s,c){let g=[];for(let d of c)if(sFs(d)){if(B(d.parameters)===B(s.parameters)){g.push(d);continue}if(B(d.parameters)>B(s.parameters))return[]}return g}function sFs(s){return uln(s)&&s.body===void 0}function Aln(s,c,g){return me.createParameterDeclaration(void 0,void 0,s,g,c,void 0)}function oFs(s,c){return B(s)&&jt(s,g=>cQd(s,fln,(c,g,d)=>{let h=hln(g.file,g.start);if(h!==void 0)switch(s.fixId){case gQt:{let _=mln(h,s.host,g.code);_&&d.push(Iln(g.file.fileName,_));break}default:pe.fail(`Bad fixId: ${s.fixId}`)}})});function Iln(s,c){return{type:"install package",file:s,packageName:c}}function hln(s,c){let g=Gs(Jc(s,c),Zg);if(!g)return;let d=g.text,{packageName:h}=TEe(d);return Xr(h)?void 0:h}function mln(s,c,g){var d;return g===dln?dU.has(s)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,s)?G9e(s):void 0}var Cln=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],AQt="fixClassDoesntImplementInheritedAbstractMember";xg({errorCodes:Cln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=xo.ChangeTracker.with(c,_=>yln(_ln(g,d.start),g,c,_,c.preferences));return h.length===0?void 0:[ug(AQt,h,Z.Implement_inherited_abstract_class,AQt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[AQt],getAllCodeActions:function(c){let g=new Set;return Qd(c,Cln,(d,h)=>{let _=_ln(h.file,h.start);Zy(g,rd(_))&&yln(_,c.sourceFile,c,d,c.preferences)})}});function _ln(s,c){let g=Jc(s,c);return Ma(g.parent,xa)}function yln(s,c,g,d,h){let _=BB(s),S=g.program.getTypeChecker(),R=S.getTypeAtLocation(_),T=S.getPropertiesOfType(R).filter(lFs),W=yQ(c,g.program,h,g.host);VQt(s,T,c,g,h,W,V=>d.insertMemberAtStart(c,s,V)),W.writeFixes(d)}function lFs(s){let c=Nx(ma(s.getDeclarations()));return!(c&2)&&!!(c&64)}var dQt="classSuperMustPrecedeThisAccess",bln=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];xg({errorCodes:bln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=Sln(c,g.start);if(!d)return;let{constructor:h,superCall:_}=d,S=xo.ChangeTracker.with(s,R=>Eln(R,c,h,_));return[ug(dQt,S,Z.Make_super_call_the_first_statement_in_the_constructor,dQt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[dQt],getAllCodeActions(s){let{sourceFile:c}=s,g=new Set;return Qd(s,bln,(d,h)=>{let _=Sln(h.file,h.start);if(!_)return;let{constructor:S,superCall:R}=_;Zy(g,rd(S.parent))&&Eln(d,c,S,R)})}});function Eln(s,c,g,d){s.insertNodeAtConstructorStart(c,g,d),s.delete(c,d)}function Sln(s,c){let g=Jc(s,c);if(g.kind!==110)return;let d=A1(g),h=vln(d.body);return h&&!h.expression.arguments.some(_=>jo(_)&&_.expression===g)?{constructor:d,superCall:h}:void 0}function vln(s){return VC(s)&&Dy(s.expression)?s:bu(s)?void 0:Lu(s,vln)}var pQt="constructorForDerivedNeedSuperCall",Bln=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];xg({errorCodes:Bln,getCodeActions(s){let{sourceFile:c,span:g}=s,d=wln(c,g.start),h=xo.ChangeTracker.with(s,_=>Tln(_,c,d));return[ug(pQt,h,Z.Add_missing_super_call,pQt,Z.Add_all_missing_super_calls)]},fixIds:[pQt],getAllCodeActions:s=>Qd(s,Bln,(c,g)=>Tln(c,s.sourceFile,wln(g.file,g.start)))});function wln(s,c){let g=Jc(s,c);return pe.assert(Tc(g.parent),"token should be at the constructor declaration"),g.parent}function Tln(s,c,g){let d=me.createExpressionStatement(me.createCallExpression(me.createSuper(),void 0,E));s.insertNodeAtConstructorStart(c,g,d)}var Rln="fixEnableJsxFlag",Nln=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];xg({errorCodes:Nln,getCodeActions:function(c){let{configFile:g}=c.program.getCompilerOptions();if(g===void 0)return;let d=xo.ChangeTracker.with(c,h=>Dln(h,g));return[sR(Rln,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[Rln],getAllCodeActions:s=>Qd(s,Nln,c=>{let{configFile:g}=s.program.getCompilerOptions();g!==void 0&&Dln(c,g)})});function Dln(s,c){YQt(s,c,"jsx",me.createStringLiteral("react"))}var fQt="fixNaNEquality",kln=[Z.This_condition_will_always_return_0.code];xg({errorCodes:kln,getCodeActions(s){let{sourceFile:c,span:g,program:d}=s,h=xln(d,c,g);if(h===void 0)return;let{suggestion:_,expression:S,arg:R}=h,T=xo.ChangeTracker.with(s,W=>Gln(W,c,R,S));return[ug(fQt,T,[Z.Use_0,_],fQt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[fQt],getAllCodeActions:s=>Qd(s,kln,(c,g)=>{let d=xln(s.program,g.file,zd(g.start,g.length));d&&Gln(c,g.file,d.arg,d.expression)})});function xln(s,c,g){let d=de(s.getSemanticDiagnostics(c),S=>S.start===g.start&&S.length===g.length);if(d===void 0||d.relatedInformation===void 0)return;let h=de(d.relatedInformation,S=>S.code===Z.Did_you_mean_0.code);if(h===void 0||h.file===void 0||h.start===void 0||h.length===void 0)return;let _=XQt(h.file,zd(h.start,h.length));if(_!==void 0&&un(_)&&fo(_.parent))return{suggestion:uFs(h.messageText),expression:_.parent,arg:_}}function Gln(s,c,g,d){let h=me.createCallExpression(me.createPropertyAccessExpression(me.createIdentifier("Number"),me.createIdentifier("isNaN")),void 0,[g]),_=d.operatorToken.kind;s.replaceNode(c,d,_===38||_===36?me.createPrefixUnaryExpression(54,h):h)}function uFs(s){let[,c]=wN(s,` -`,0).match(/'(.*)'/)||[];return c}xg({errorCodes:[Z.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,Z.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(c){let g=c.program.getCompilerOptions(),{configFile:d}=g;if(d===void 0)return;let h=[],_=i0(g);if(_>=5&&_<99){let W=xo.ChangeTracker.with(c,V=>{YQt(V,d,"module",me.createStringLiteral("esnext"))});h.push(sR("fixModuleOption",W,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=Mg(g);if(R<4||R>99){let W=xo.ChangeTracker.with(c,V=>{if(!m7(d))return;let ee=[["target",me.createStringLiteral("es2017")]];_===1&&ee.push(["module",me.createStringLiteral("commonjs")]),HQt(V,d,ee)});h.push(sR("fixTargetOption",W,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return h.length?h:void 0}});var IQt="fixPropertyAssignment",Fln=[Z.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];xg({errorCodes:Fln,fixIds:[IQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=Lln(c,g.start),h=xo.ChangeTracker.with(s,_=>Zln(_,s.sourceFile,d));return[ug(IQt,h,[Z.Change_0_to_1,"=",":"],IQt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:s=>Qd(s,Fln,(c,g)=>Zln(c,g.file,Lln(g.file,g.start)))});function Zln(s,c,g){s.replaceNode(c,g,me.createPropertyAssignment(g.name,g.objectAssignmentInitializer))}function Lln(s,c){return Ma(Jc(s,c).parent,a0)}var hQt="extendsInterfaceBecomesImplements",Vln=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];xg({errorCodes:Vln,getCodeActions(s){let{sourceFile:c}=s,g=Pln(c,s.span.start);if(!g)return;let{extendsToken:d,heritageClauses:h}=g,_=xo.ChangeTracker.with(s,S=>Wln(S,c,d,h));return[ug(hQt,_,Z.Change_extends_to_implements,hQt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[hQt],getAllCodeActions:s=>Qd(s,Vln,(c,g)=>{let d=Pln(g.file,g.start);d&&Wln(c,g.file,d.extendsToken,d.heritageClauses)})});function Pln(s,c){let g=Jc(s,c),d=hC(g).heritageClauses,h=d[0].getFirstToken();return h.kind===96?{extendsToken:h,heritageClauses:d}:void 0}function Wln(s,c,g,d){if(s.replaceNode(c,g,me.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let h=d[1].getFirstToken(),_=h.getFullStart();s.replaceRange(c,{pos:_,end:_},me.createToken(28));let S=c.text,R=h.end;for(;RYln(h,c,g));return[ug(mQt,d,[Z.Add_0_to_unresolved_variable,g.className||"this"],mQt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[mQt],getAllCodeActions:s=>Qd(s,Mln,(c,g)=>{let d=Hln(g.file,g.start,g.code);d&&Yln(c,s.sourceFile,d)})});function Hln(s,c,g){let d=Jc(s,c);if(Ir(d)||p(d))return{node:d,className:g===Oln?hC(d).name.text:void 0}}function Yln(s,c,{node:g,className:d}){Vy(g),s.replaceNode(c,g,me.createPropertyAccessExpression(d?me.createIdentifier(d):me.createThis(),g))}var CQt="fixInvalidJsxCharacters_expression",yit="fixInvalidJsxCharacters_htmlEntity",Qln=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];xg({errorCodes:Qln,fixIds:[CQt,yit],getCodeActions(s){let{sourceFile:c,preferences:g,span:d}=s,h=xo.ChangeTracker.with(s,S=>_Qt(S,g,c,d.start,!1)),_=xo.ChangeTracker.with(s,S=>_Qt(S,g,c,d.start,!0));return[ug(CQt,h,Z.Wrap_invalid_character_in_an_expression_container,CQt,Z.Wrap_all_invalid_characters_in_an_expression_container),ug(yit,_,Z.Convert_invalid_character_to_its_html_entity_code,yit,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(s){return Qd(s,Qln,(c,g)=>_Qt(c,s.preferences,g.file,g.start,s.fixId===yit))}});var Xln={">":">","}":"}"};function gFs(s){return Da(Xln,s)}function _Qt(s,c,g,d,h){let _=g.getText()[d];if(!gFs(_))return;let S=h?Xln[_]:`{${zde(g,c,_)}}`;s.replaceRangeWithText(g,{pos:d,end:d+1},S)}var bit="deleteUnmatchedParameter",Jln="renameUnmatchedParameter",Uln=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];xg({fixIds:[bit,Jln],errorCodes:Uln,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=[],_=Kln(g,d.start);if(_)return Ft(h,AFs(c,_)),Ft(h,dFs(c,_)),h},getAllCodeActions:function(c){let g=new Map;return Hz(xo.ChangeTracker.with(c,d=>{Yz(c,Uln,({file:h,start:_})=>{let S=Kln(h,_);S&&g.set(S.signature,Ft(g.get(S.signature),S.jsDocParameterTag))}),g.forEach((h,_)=>{if(c.fixId===bit){let S=new Set(h);d.filterJSDocTags(_.getSourceFile(),_,R=>!S.has(R))}})}))}});function AFs(s,{name:c,jsDocHost:g,jsDocParameterTag:d}){let h=xo.ChangeTracker.with(s,_=>_.filterJSDocTags(s.sourceFile,g,S=>S!==d));return ug(bit,h,[Z.Delete_unused_param_tag_0,c.getText(s.sourceFile)],bit,Z.Delete_all_unused_param_tags)}function dFs(s,{name:c,jsDocHost:g,signature:d,jsDocParameterTag:h}){if(!B(d.parameters))return;let _=s.sourceFile,S=Sx(d),R=new Set;for(let M of S)cS(M)&&Ir(M.name)&&R.add(M.name.escapedText);let T=X(d.parameters,M=>Ir(M.name)&&!R.has(M.name.escapedText)?M.name.getText(_):void 0);if(T===void 0)return;let W=me.updateJSDocParameterTag(h,h.tagName,me.createIdentifier(T),h.isBracketed,h.typeExpression,h.isNameFirst,h.comment),V=xo.ChangeTracker.with(s,M=>M.replaceJSDocComment(_,g,At(S,ee=>ee===h?W:ee)));return sR(Jln,V,[Z.Rename_param_tag_name_0_to_1,c.getText(_),T])}function Kln(s,c){let g=Jc(s,c);if(g.parent&&cS(g.parent)&&Ir(g.parent.name)){let d=g.parent,h=bP(d),_=PL(d);if(h&&_)return{jsDocHost:h,signature:_,name:g.parent.name,jsDocParameterTag:d}}}var yQt="fixUnreferenceableDecoratorMetadata",pFs=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];xg({errorCodes:pFs,getCodeActions:s=>{let c=fFs(s.sourceFile,s.program,s.span.start);if(!c)return;let g=xo.ChangeTracker.with(s,_=>c.kind===277&&hFs(_,s.sourceFile,c,s.program)),d=xo.ChangeTracker.with(s,_=>IFs(_,s.sourceFile,c,s.program)),h;return g.length&&(h=Ft(h,sR(yQt,g,Z.Convert_named_imports_to_namespace_import))),d.length&&(h=Ft(h,sR(yQt,d,Z.Use_import_type))),h},fixIds:[yQt]});function fFs(s,c,g){let d=Gs(Jc(s,g),Ir);if(!d||d.parent.kind!==184)return;let _=c.getTypeChecker().getSymbolAtLocation(d);return de(_?.declarations||E,Hp(Vw,uy,km))}function IFs(s,c,g,d){if(g.kind===272){s.insertModifierBefore(c,156,g.name);return}let h=g.kind===274?g:g.parent.parent;if(h.name&&h.namedBindings)return;let _=d.getTypeChecker();pZe(h,R=>{if(FC(R.symbol,_).flags&111551)return!0})||s.insertModifierBefore(c,156,h)}function hFs(s,c,g,d){Oz.doChangeNamedToNamespaceOrDefault(c,d,s,g.parent)}var PPe="unusedIdentifier",bQt="unusedIdentifier_prefix",EQt="unusedIdentifier_delete",Eit="unusedIdentifier_deleteImports",SQt="unusedIdentifier_infer",jln=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];xg({errorCodes:jln,getCodeActions(s){let{errorCode:c,sourceFile:g,program:d,cancellationToken:h}=s,_=d.getTypeChecker(),S=d.getSourceFiles(),R=Jc(g,s.span.start);if(ZB(R))return[ope(xo.ChangeTracker.with(s,M=>M.delete(g,R)),Z.Remove_template_tag)];if(R.kind===30){let M=xo.ChangeTracker.with(s,ee=>qln(ee,g,R));return[ope(M,Z.Remove_type_parameters)]}let T=$ln(R);if(T){let M=xo.ChangeTracker.with(s,ee=>ee.delete(g,T));return[ug(PPe,M,[Z.Remove_import_from_0,KZe(T)],Eit,Z.Delete_all_unused_imports)]}else if(vQt(R)){let M=xo.ChangeTracker.with(s,ee=>Sit(g,R,ee,_,S,d,h,!1));if(M.length)return[ug(PPe,M,[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)],Eit,Z.Delete_all_unused_imports)]}if(Km(R.parent)||p2(R.parent)){if(Si(R.parent.parent)){let M=R.parent.elements,ee=[M.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,At(M,re=>re.getText(g)).join(", ")];return[ope(xo.ChangeTracker.with(s,re=>mFs(re,g,R.parent)),ee)]}return[ope(xo.ChangeTracker.with(s,M=>CFs(s,M,g,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(eun(g,R))return[ope(xo.ChangeTracker.with(s,M=>tun(M,g,R.parent)),Z.Remove_variable_statement)];if(Ir(R)&&ih(R.parent))return[ope(xo.ChangeTracker.with(s,M=>oun(M,g,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(g)])];let W=[];if(R.kind===140){let M=xo.ChangeTracker.with(s,re=>zln(re,g,R)),ee=Ma(R.parent,jT).typeParameter.name.text;W.push(ug(PPe,M,[Z.Replace_infer_0_with_unknown,ee],SQt,Z.Replace_all_unused_infer_with_unknown))}else{let M=xo.ChangeTracker.with(s,ee=>Sit(g,R,ee,_,S,d,h,!1));if(M.length){let ee=Un(R.parent)?R.parent:R;W.push(ope(M,[Z.Remove_unused_declaration_for_Colon_0,ee.getText(g)]))}}let V=xo.ChangeTracker.with(s,M=>nun(M,c,g,R));return V.length&&W.push(ug(PPe,V,[Z.Prefix_0_with_an_underscore,R.getText(g)],bQt,Z.Prefix_all_unused_declarations_with_where_possible)),W},fixIds:[bQt,EQt,Eit,SQt],getAllCodeActions:s=>{let{sourceFile:c,program:g,cancellationToken:d}=s,h=g.getTypeChecker(),_=g.getSourceFiles();return Qd(s,jln,(S,R)=>{let T=Jc(c,R.start);switch(s.fixId){case bQt:nun(S,R.code,c,T);break;case Eit:{let W=$ln(T);W?S.delete(c,W):vQt(T)&&Sit(c,T,S,h,_,g,d,!0);break}case EQt:{if(T.kind===140||vQt(T))break;if(ZB(T))S.delete(c,T);else if(T.kind===30)qln(S,c,T);else if(Km(T.parent)){if(T.parent.parent.initializer)break;(!Si(T.parent.parent)||iun(T.parent.parent,h,_))&&S.delete(c,T.parent.parent)}else{if(p2(T.parent.parent)&&T.parent.parent.parent.initializer)break;eun(c,T)?tun(S,c,T.parent):Ir(T)&&ih(T.parent)?oun(S,c,T.parent):Sit(c,T,S,h,_,g,d,!0)}break}case SQt:T.kind===140&&zln(S,c,T);break;default:pe.fail(JSON.stringify(s.fixId))}})}});function zln(s,c,g){s.replaceNode(c,g.parent,me.createKeywordTypeNode(159))}function ope(s,c){return ug(PPe,s,c,EQt,Z.Delete_all_unused_declarations)}function qln(s,c,g){s.delete(c,pe.checkDefined(Ma(g.parent,Kre).typeParameters,"The type parameter to delete should exist"))}function vQt(s){return s.kind===102||s.kind===80&&(s.parent.kind===277||s.parent.kind===274)}function $ln(s){return s.kind===102?Gs(s.parent,Mf):void 0}function eun(s,c){return u_(c.parent)&&ma(c.parent.getChildren(s))===c}function tun(s,c,g){s.delete(c,g.parent.kind===244?g.parent:g)}function mFs(s,c,g){F(g.elements,d=>s.delete(c,d))}function CFs(s,c,g,{parent:d}){if(nc(d)&&d.initializer&&hF(d.initializer))if(u_(d.parent)&&B(d.parent.declarations)>1){let h=d.parent.parent,_=h.getStart(g),S=h.end;c.delete(g,d),c.insertNodeAt(g,S,d.initializer,{prefix:OF(s.host,s.formatContext.options)+g.text.slice($Ve(g.text,_-1),_),suffix:C1e(g)?";":""})}else c.replaceNode(g,d.parent,d.initializer);else c.delete(g,d)}function nun(s,c,g,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=Ma(d.parent,jT).typeParameter.name),Ir(d)&&_Fs(d)&&(s.replaceNode(g,d,me.createIdentifier(`_${d.text}`)),Si(d.parent)&&vL(d.parent).forEach(h=>{Ir(h.name)&&s.replaceNode(g,h.name,me.createIdentifier(`_${h.name.text}`))})))}function _Fs(s){switch(s.parent.kind){case 170:case 169:return!0;case 261:switch(s.parent.parent.parent.kind){case 251:case 250:return!0}}return!1}function Sit(s,c,g,d,h,_,S,R){yFs(c,g,s,d,h,_,S,R),Ir(c)&&Kp.Core.eachSymbolReferenceInFile(c,d,s,T=>{jo(T.parent)&&T.parent.name===T&&(T=T.parent),!R&&vFs(T)&&g.delete(s,T.parent.parent)})}function yFs(s,c,g,d,h,_,S,R){let{parent:T}=s;if(Si(T))bFs(c,g,T,d,h,_,S,R);else if(!(R&&Ir(s)&&Kp.Core.isSymbolReferencedInFile(s,d,g))){let W=Vw(T)?s:Un(T)?T.parent:T;pe.assert(W!==g,"should not delete whole source file"),c.delete(g,W)}}function bFs(s,c,g,d,h,_,S,R=!1){if(EFs(d,c,g,h,_,S,R))if(g.modifiers&&g.modifiers.length>0&&(!Ir(g.name)||Kp.Core.isSymbolReferencedInFile(g.name,d,c)))for(let T of g.modifiers)Ig(T)&&s.deleteModifier(c,T);else!g.initializer&&iun(g,d,h)&&s.delete(c,g)}function iun(s,c,g){let d=s.parent.parameters.indexOf(s);return!Kp.Core.someSignatureUsage(s.parent,g,c,(h,_)=>!_||_.arguments.length>d)}function EFs(s,c,g,d,h,_,S){let{parent:R}=g;switch(R.kind){case 175:case 177:let T=R.parameters.indexOf(g),W=uu(R)?R.name:R,V=Kp.Core.getReferencedSymbolsForNode(R.pos,W,h,d,_);if(V){for(let M of V)for(let ee of M.references)if(ee.kind===Kp.EntryKind.Node){let re=rr(ee.node)&&Zl(ee.node.parent)&&ee.node.parent.arguments.length>T,ge=jo(ee.node.parent)&&rr(ee.node.parent.expression)&&Zl(ee.node.parent.parent)&&ee.node.parent.parent.arguments.length>T,Ie=(uu(ee.node.parent)||hl(ee.node.parent))&&ee.node.parent!==g.parent&&ee.node.parent.parameters.length>T;if(re||ge||Ie)return!1}}return!0;case 263:return R.name&&SFs(s,c,R.name)?sun(R,g,S):!0;case 219:case 220:return sun(R,g,S);case 179:return!1;case 178:return!0;default:return pe.failBadSyntaxKind(R)}}function SFs(s,c,g){return!!Kp.Core.eachSymbolReferenceInFile(g,s,c,d=>Ir(d)&&Zl(d.parent)&&d.parent.arguments.includes(d))}function sun(s,c,g){let d=s.parameters,h=d.indexOf(c);return pe.assert(h!==-1,"The parameter should already be in the list"),g?d.slice(h+1).every(_=>Ir(_.name)&&!_.symbol.isReferenced):h===d.length-1}function vFs(s){return(fo(s.parent)&&s.parent.left===s||(ek(s.parent)||T0(s.parent))&&s.parent.operand===s)&&VC(s.parent.parent)}function oun(s,c,g){let d=g.symbol.declarations;if(d)for(let h of d)s.delete(c,h)}var BQt="fixUnreachableCode",aun=[Z.Unreachable_code_detected.code];xg({errorCodes:aun,getCodeActions(s){if(s.program.getSyntacticDiagnostics(s.sourceFile,s.cancellationToken).length)return;let g=xo.ChangeTracker.with(s,d=>cun(d,s.sourceFile,s.span.start,s.span.length,s.errorCode));return[ug(BQt,g,Z.Remove_unreachable_code,BQt,Z.Remove_all_unreachable_code)]},fixIds:[BQt],getAllCodeActions:s=>Qd(s,aun,(c,g)=>cun(c,g.file,g.start,g.length,g.code))});function cun(s,c,g,d,h){let _=Jc(c,g),S=ji(_,Lc);if(S.getStart(c)!==_.getStart(c)){let T=JSON.stringify({statementKind:pe.formatSyntaxKind(S.kind),tokenKind:pe.formatSyntaxKind(_.kind),errorCode:h,start:g,length:d});pe.fail("Token and statement should start at the same point. "+T)}let R=($u(S.parent)?S.parent:S).parent;if(!$u(S.parent)||S===ma(S.parent.statements))switch(R.kind){case 246:if(R.elseStatement){if($u(S.parent))break;s.replaceNode(c,S,me.createBlock(E));return}case 248:case 249:s.delete(c,R);return}if($u(S.parent)){let T=g+d,W=pe.checkDefined(BFs(Rbe(S.parent.statements,S),V=>V.posuun(g,s.sourceFile,s.span.start));return[ug(wQt,c,Z.Remove_unused_label,wQt,Z.Remove_all_unused_labels)]},fixIds:[wQt],getAllCodeActions:s=>Qd(s,lun,(c,g)=>uun(c,g.file,g.start))});function uun(s,c,g){let d=Jc(c,g),h=Ma(d.parent,FP),_=d.getStart(c),S=h.statement.getStart(c),R=yE(_,S,c)?S:Yu(c.text,qd(h,59,c).end,!0);s.deleteRange(c,{pos:_,end:R})}var gun="fixJSDocTypes_plain",TQt="fixJSDocTypes_nullable",Aun=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];xg({errorCodes:Aun,getCodeActions(s){let{sourceFile:c}=s,g=s.program.getTypeChecker(),d=pun(c,s.span.start,g);if(!d)return;let{typeNode:h,type:_}=d,S=h.getText(c),R=[T(_,gun,Z.Change_all_jsdoc_style_types_to_TypeScript)];return h.kind===315&&R.push(T(_,TQt,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function T(W,V,M){let ee=xo.ChangeTracker.with(s,re=>dun(re,c,h,W,g));return ug("jdocTypes",ee,[Z.Change_0_to_1,S,g.typeToString(W)],V,M)}},fixIds:[gun,TQt],getAllCodeActions(s){let{fixId:c,program:g,sourceFile:d}=s,h=g.getTypeChecker();return Qd(s,Aun,(_,S)=>{let R=pun(S.file,S.start,h);if(!R)return;let{typeNode:T,type:W}=R,V=T.kind===315&&c===TQt?h.getNullableType(W,32768):W;dun(_,d,T,V,h)})}});function dun(s,c,g,d,h){s.replaceNode(c,g,h.typeToTypeNode(d,g,void 0))}function pun(s,c,g){let d=ji(Jc(s,c),wFs),h=d&&d.type;return h&&{typeNode:h,type:TFs(g,h)}}function wFs(s){switch(s.kind){case 235:case 180:case 181:case 263:case 178:case 182:case 201:case 175:case 174:case 170:case 173:case 172:case 179:case 266:case 217:case 261:return!0;default:return!1}}function TFs(s,c){if(Iie(c)){let g=s.getTypeFromTypeNode(c.type);return g===s.getNeverType()||g===s.getVoidType()?g:s.getUnionType(Ft([g,s.getUndefinedType()],c.postfix?void 0:s.getNullType()))}return s.getTypeFromTypeNode(c)}var RQt="fixMissingCallParentheses",fun=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];xg({errorCodes:fun,fixIds:[RQt],getCodeActions(s){let{sourceFile:c,span:g}=s,d=hun(c,g.start);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Iun(_,s.sourceFile,d));return[ug(RQt,h,Z.Add_missing_call_parentheses,RQt,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:s=>Qd(s,fun,(c,g)=>{let d=hun(g.file,g.start);d&&Iun(c,g.file,d)})});function Iun(s,c,g){s.replaceNodeWithText(c,g,`${g.text}()`)}function hun(s,c){let g=Jc(s,c);if(jo(g.parent)){let d=g.parent;for(;jo(d.parent);)d=d.parent;return d.name}if(Ir(g))return g}var mun="fixMissingTypeAnnotationOnExports",NQt="add-annotation",DQt="add-type-assertion",RFs="extract-expression",Cun=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],NFs=new Set([178,175,173,263,219,220,261,170,278,264,207,208]),_un=531469,yun=1;xg({errorCodes:Cun,fixIds:[mun],getCodeActions(s){let c=[];return ape(NQt,c,s,0,g=>g.addTypeAnnotation(s.span)),ape(NQt,c,s,1,g=>g.addTypeAnnotation(s.span)),ape(NQt,c,s,2,g=>g.addTypeAnnotation(s.span)),ape(DQt,c,s,0,g=>g.addInlineAssertion(s.span)),ape(DQt,c,s,1,g=>g.addInlineAssertion(s.span)),ape(DQt,c,s,2,g=>g.addInlineAssertion(s.span)),ape(RFs,c,s,0,g=>g.extractAsVariable(s.span)),c},getAllCodeActions:s=>{let c=bun(s,0,g=>{Yz(s,Cun,d=>{g.addTypeAnnotation(d)})});return Hz(c.textChanges)}});function ape(s,c,g,d,h){let _=bun(g,d,h);_.result&&_.textChanges.length&&c.push(ug(s,_.textChanges,_.result,mun,Z.Add_all_missing_type_annotations))}function bun(s,c,g){let d={typeNode:void 0,mutatedTarget:!1},h=xo.ChangeTracker.fromContext(s),_=s.sourceFile,S=s.program,R=S.getTypeChecker(),T=Mg(S.getCompilerOptions()),W=yQ(s.sourceFile,s.program,s.preferences,s.host),V=new Set,M=new Set,ee=MP({preserveSourceNewlines:!1}),re=g({addTypeAnnotation:ge,addInlineAssertion:Te,extractAsVariable:Ze});return W.writeFixes(h),{result:re,textChanges:h.getChanges()};function ge(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start),zt=We(ir);if(zt)return ih(zt)?Ie(zt):Ue(zt);let Ht=dt(ir);if(Ht)return Ue(Ht)}function Ie(st){var ir;if(M?.has(st))return;M?.add(st);let zt=R.getTypeAtLocation(st),Ht=R.getPropertiesOfType(zt);if(!st.name||Ht.length===0)return;let Br=[];for(let Zi of Ht)Uh(Zi.name,Mg(S.getCompilerOptions()))&&(Zi.valueDeclaration&&nc(Zi.valueDeclaration)||Br.push(me.createVariableStatement([me.createModifier(95)],me.createVariableDeclarationList([me.createVariableDeclaration(Zi.name,void 0,Dt(R.getTypeOfSymbol(Zi),st),void 0)]))));if(Br.length===0)return;let mn=[];(ir=st.modifiers)!=null&&ir.some(Zi=>Zi.kind===95)&&mn.push(me.createModifier(95)),mn.push(me.createModifier(138));let jn=me.createModuleDeclaration(mn,st.name,me.createModuleBlock(Br),101441696);return h.insertNodeAfter(_,st,jn),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function _e(st){return!Od(st)&&!Zl(st)&&!og(st)&&!OI(st)}function Ee(st,ir){return _e(st)&&(st=me.createParenthesizedExpression(st)),me.createAsExpression(st,ir)}function Ne(st,ir){return _e(st)&&(st=me.createParenthesizedExpression(st)),me.createAsExpression(me.createSatisfiesExpression(st,JA(ir)),ir)}function Te(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start);if(We(ir))return;let Ht=pr(ir,st);if(!Ht||C3(Ht)||C3(Ht.parent))return;let Br=un(Ht),mn=a0(Ht);if(!mn&&jh(Ht)||ji(Ht,Nu)||ji(Ht,LF)||Br&&(ji(Ht,h1)||ji(Ht,uc))||of(Ht))return;let jn=ji(Ht,nc),Zi=jn&&R.getTypeAtLocation(jn);if(Zi&&Zi.flags&8192||!(Br||mn))return;let{typeNode:Ns,mutatedTarget:An}=Rt(Ht,Zi);if(!(!Ns||An))return mn?h.insertNodeAt(_,Ht.end,Ee(JA(Ht.name),Ns),{prefix:": "}):Br?h.replaceNode(_,Ht,Ne(JA(Ht),Ns)):pe.assertNever(Ht),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Gr(Ns)]}function Ze(st){s.cancellationToken.throwIfCancellationRequested();let ir=Jc(_,st.start),zt=pr(ir,st);if(!zt||C3(zt)||C3(zt.parent)||!un(zt))return;if(OI(zt))return h.replaceNode(_,zt,Ee(zt,me.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let Br=ji(zt,fm);if(Br){if(Br===zt.parent&&Od(zt))return;let mn=me.createUniqueName(kHt(zt,_,R,_),16),jn=zt,Zi=zt;if(of(jn)&&(jn=gv(jn.parent),Gt(jn.parent)?Zi=jn=jn.parent:Zi=Ee(jn,me.createTypeReferenceNode("const"))),Od(jn))return;let Ns=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(mn,void 0,void 0,Zi)],2)),An=ji(zt,Lc);return h.insertNodeBefore(_,An,Ns),h.replaceNode(_,jn,me.createAsExpression(me.cloneNode(mn),me.createTypeQueryNode(me.cloneNode(mn)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Gr(mn)]}}function We(st){let ir=ji(st,zt=>Lc(zt)?"quit":jY(zt));if(ir&&jY(ir)){let zt=ir;if(fo(zt)&&(zt=zt.left,!jY(zt)))return;let Ht=R.getTypeAtLocation(zt.expression);if(!Ht)return;let Br=R.getPropertiesOfType(Ht);if(jt(Br,mn=>mn.valueDeclaration===ir||mn.valueDeclaration===ir.parent)){let mn=Ht.symbol.valueDeclaration;if(mn){if(RF(mn)&&nc(mn.parent))return mn.parent;if(ih(mn))return mn}}}}function Ue(st){if(!V?.has(st))switch(V?.add(st),st.kind){case 170:case 173:case 261:return ur(st);case 220:case 219:case 263:case 175:case 178:return $e(st,_);case 278:return Ye(st);case 264:return Tt(st);case 207:case 208:return Qe(st);default:throw new Error(`Cannot find a fix for the given node ${st.kind}`)}}function $e(st,ir){if(st.type)return;let{typeNode:zt}=Rt(st);if(zt)return h.tryInsertTypeAnnotation(ir,st,zt),[Z.Add_return_type_0,Gr(zt)]}function Ye(st){if(st.isExportEquals)return;let{typeNode:ir}=Rt(st.expression);if(!ir)return;let zt=me.createUniqueName("_default");return h.replaceNodeWithNodes(_,st,[me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(zt,void 0,ir,st.expression)],2)),me.updateExportAssignment(st,st?.modifiers,zt)]),[Z.Extract_default_export_to_variable]}function Tt(st){var ir,zt;let Ht=(ir=st.heritageClauses)==null?void 0:ir.find(si=>si.token===96),Br=Ht?.types[0];if(!Br)return;let{typeNode:mn}=Rt(Br.expression);if(!mn)return;let jn=me.createUniqueName(st.name?st.name.text+"Base":"Anonymous",16),Zi=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(jn,void 0,mn,Br.expression)],2));h.insertNodeBefore(_,st,Zi);let Ns=n2(_.text,Br.end),An=((zt=Ns?.[Ns.length-1])==null?void 0:zt.end)??Br.end;return h.replaceRange(_,{pos:Br.getFullStart(),end:An},jn,{prefix:" "}),[Z.Extract_base_class_to_variable]}let ot;(st=>{st[st.Text=0]="Text",st[st.Computed=1]="Computed",st[st.ArrayAccess=2]="ArrayAccess",st[st.Identifier=3]="Identifier"})(ot||(ot={}));function Qe(st){var ir;let zt=st.parent,Ht=st.parent.parent.parent;if(!zt.initializer)return;let Br,mn=[];if(Ir(zt.initializer))Br={expression:{kind:3,identifier:zt.initializer}};else{let Ns=me.createUniqueName("dest",16);Br={expression:{kind:3,identifier:Ns}},mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Ns,void 0,void 0,zt.initializer)],2)))}let jn=[];p2(st)?mt(st,jn,Br):ht(st,jn,Br);let Zi=new Map;for(let Ns of jn){if(Ns.element.propertyName&&Un(Ns.element.propertyName)){let si=Ns.element.propertyName.expression,ks=me.getGeneratedNameForNode(si),Ic=me.createVariableDeclaration(ks,void 0,void 0,si),su=me.createVariableDeclarationList([Ic],2),Zn=me.createVariableStatement(void 0,su);mn.push(Zn),Zi.set(si,ks)}let An=Ns.element.name;if(p2(An))mt(An,jn,Ns);else if(Km(An))ht(An,jn,Ns);else{let{typeNode:si}=Rt(An),ks=_t(Ns,Zi);if(Ns.element.initializer){let su=(ir=Ns.element)==null?void 0:ir.propertyName,Zn=me.createUniqueName(su&&Ir(su)?su.text:"temp",16);mn.push(me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(Zn,void 0,void 0,ks)],2))),ks=me.createConditionalExpression(me.createBinaryExpression(Zn,me.createToken(37),me.createIdentifier("undefined")),me.createToken(58),Ns.element.initializer,me.createToken(59),ks)}let Ic=Ga(Ht,32)?[me.createToken(95)]:void 0;mn.push(me.createVariableStatement(Ic,me.createVariableDeclarationList([me.createVariableDeclaration(An,void 0,si,ks)],2)))}}return Ht.declarationList.declarations.length>1&&mn.push(me.updateVariableStatement(Ht,Ht.modifiers,me.updateVariableDeclarationList(Ht.declarationList,Ht.declarationList.declarations.filter(Ns=>Ns!==st.parent)))),h.replaceNodeWithNodes(_,Ht,mn),[Z.Extract_binding_expressions_to_variable]}function mt(st,ir,zt){for(let Ht=0;Ht=0;--Br){let mn=zt[Br].expression;mn.kind===0?Ht=me.createPropertyAccessChain(Ht,void 0,me.createIdentifier(mn.text)):mn.kind===1?Ht=me.createElementAccessExpression(Ht,ir.get(mn.computed)):mn.kind===2&&(Ht=me.createElementAccessExpression(Ht,mn.arrayIndex))}return Ht}function Rt(st,ir){if(c===1)return nt(st);let zt;if(C3(st)){let mn=R.getSignatureFromDeclaration(st);if(mn){let jn=R.getTypePredicateOfSignature(mn);if(jn)return jn.type?{typeNode:tr(jn,ji(st,jh)??_,Br(jn.type)),mutatedTarget:!1}:d;zt=R.getReturnTypeOfSignature(mn)}}else zt=R.getTypeAtLocation(st);if(!zt)return d;if(c===2){ir&&(zt=ir);let mn=R.getWidenedLiteralType(zt);if(R.isTypeAssignableTo(mn,zt))return d;zt=mn}let Ht=ji(st,jh)??_;return Si(st)&&R.requiresAddingImplicitUndefined(st,Ht)&&(zt=R.getUnionType([R.getUndefinedType(),zt],0)),{typeNode:Dt(zt,Ht,Br(zt)),mutatedTarget:!1};function Br(mn){return(nc(st)||pi(st)&&Ga(st,264))&&mn.flags&8192?1048576:0}}function Lt(st){return me.createTypeQueryNode(JA(st))}function Ke(st,ir="temp"){let zt=!!ji(st,Gt);return zt?_r(st,ir,zt,Ht=>Ht.elements,of,me.createSpreadElement,Ht=>me.createArrayLiteralExpression(Ht,!0),Ht=>me.createTupleTypeNode(Ht.map(me.createRestTypeNode))):d}function Pt(st,ir="temp"){let zt=!!ji(st,Gt);return _r(st,ir,zt,Ht=>Ht.properties,Lx,me.createSpreadAssignment,Ht=>me.createObjectLiteralExpression(Ht,!0),me.createIntersectionTypeNode)}function _r(st,ir,zt,Ht,Br,mn,jn,Zi){let Ns=[],An=[],si,ks=ji(st,Lc);for(let Zn of Ht(st))Br(Zn)?(su(),Od(Zn.expression)?(Ns.push(Lt(Zn.expression)),An.push(Zn)):Ic(Zn.expression)):(si??(si=[])).push(Zn);if(An.length===0)return d;return su(),h.replaceNode(_,st,jn(An)),{typeNode:Zi(Ns),mutatedTarget:!0};function Ic(Zn){let ya=me.createUniqueName(ir+"_Part"+(An.length+1),16),Gl=zt?me.createAsExpression(Zn,me.createTypeReferenceNode("const")):Zn,ba=me.createVariableStatement(void 0,me.createVariableDeclarationList([me.createVariableDeclaration(ya,void 0,void 0,Gl)],2));h.insertNodeBefore(_,ks,ba),Ns.push(Lt(ya)),An.push(mn(ya))}function su(){si&&(Ic(jn(si)),si=void 0)}}function Gt(st){return Ed(st)&&s2(st.type)}function nt(st){if(Si(st))return d;if(a0(st))return{typeNode:Lt(st.name),mutatedTarget:!1};if(Od(st))return{typeNode:Lt(st),mutatedTarget:!1};if(Gt(st))return nt(st.expression);if(OI(st)){let ir=ji(st,nc),zt=ir&&Ir(ir.name)?ir.name.text:void 0;return Ke(st,zt)}if(og(st)){let ir=ji(st,nc),zt=ir&&Ir(ir.name)?ir.name.text:void 0;return Pt(st,zt)}if(nc(st)&&st.initializer)return nt(st.initializer);if(Lw(st)){let{typeNode:ir,mutatedTarget:zt}=nt(st.whenTrue);if(!ir)return d;let{typeNode:Ht,mutatedTarget:Br}=nt(st.whenFalse);return Ht?{typeNode:me.createUnionTypeNode([ir,Ht]),mutatedTarget:zt||Br}:d}return d}function Dt(st,ir,zt=0){let Ht=!1,Br=Yun(R,st,ir,_un|zt,yun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Ht=!0}});if(!Br)return;let mn=WQt(Br,W,T);return Ht?me.createKeywordTypeNode(133):mn}function tr(st,ir,zt=0){let Ht=!1,Br=Qun(R,W,st,ir,T,_un|zt,yun,{moduleResolverHost:S,trackSymbol(){return!0},reportTruncationError(){Ht=!0}});return Ht?me.createKeywordTypeNode(133):Br}function ur(st){let{typeNode:ir}=Rt(st);if(ir)return st.type?h.replaceNode(ms(st),st.type,ir):h.tryInsertTypeAnnotation(ms(st),st,ir),[Z.Add_annotation_of_type_0,Gr(ir)]}function Gr(st){ti(st,1);let ir=ee.printNode(4,st,_);return ir.length>EY?ir.substring(0,EY-3)+"...":(ti(st,0),ir)}function dt(st){return ji(st,ir=>NFs.has(ir.kind)&&(!Km(ir)&&!p2(ir)||nc(ir.parent)))}function pr(st,ir){for(;st&&st.endvun(_,c,d));return[ug(kQt,h,Z.Add_async_modifier_to_containing_function,kQt,Z.Add_all_missing_async_modifiers)]},fixIds:[kQt],getAllCodeActions:function(c){let g=new Set;return Qd(c,Eun,(d,h)=>{let _=Sun(h.file,h.start);!_||!Zy(g,rd(_.insertBefore))||vun(d,c.sourceFile,_)})}});function DFs(s){if(s.type)return s.type;if(nc(s.parent)&&s.parent.type&&x_(s.parent.type))return s.parent.type.type}function Sun(s,c){let g=Jc(s,c),d=A1(g);if(!d)return;let h;switch(d.kind){case 175:h=d.name;break;case 263:case 219:h=qd(d,100,s);break;case 220:let _=d.typeParameters?30:21;h=qd(d,_,s)||ma(d.parameters);break;default:return}return h&&{insertBefore:h,returnType:DFs(d)}}function vun(s,c,{insertBefore:g,returnType:d}){if(d){let h=ene(d);(!h||h.kind!==80||h.text!=="Promise")&&s.replaceNode(c,d,me.createTypeReferenceNode("Promise",me.createNodeArray([d])))}s.insertModifierBefore(c,134,g)}var Bun=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],xQt="fixPropertyOverrideAccessor";xg({errorCodes:Bun,getCodeActions(s){let c=wun(s.sourceFile,s.span.start,s.span.length,s.errorCode,s);if(c)return[ug(xQt,c,Z.Generate_get_and_set_accessors,xQt,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[xQt],getAllCodeActions:s=>Qd(s,Bun,(c,g)=>{let d=wun(g.file,g.start,g.length,g.code,s);if(d)for(let h of d)c.pushRaw(s.sourceFile,h)})});function wun(s,c,g,d,h){let _,S;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)_=c,S=c+g;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=h.program.getTypeChecker(),T=Jc(s,c).parent;if(Un(T))return;pe.assert(yB(T),"error span of fixPropertyOverrideAccessor should only be on an accessor");let W=T.parent;pe.assert(xa(W),"erroneous accessors should only be inside classes");let V=BB(W);if(!V)return;let M=QA(V.expression),ee=vd(M)?M.symbol:R.getSymbolAtLocation(M);if(!ee)return;let re=R.getDeclaredTypeOfSymbol(ee),ge=R.getPropertyOfType(re,Bc(hP(T.name)));if(!ge||!ge.valueDeclaration)return;_=ge.valueDeclaration.pos,S=ge.valueDeclaration.end,s=ms(ge.valueDeclaration)}else pe.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return jun(s,h.program,_,S,h,Z.Generate_get_and_set_accessors.message)}var GQt="inferFromUsage",Tun=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];xg({errorCodes:Tun,getCodeActions(s){let{sourceFile:c,program:g,span:{start:d},errorCode:h,cancellationToken:_,host:S,preferences:R}=s,T=Jc(c,d),W,V=xo.ChangeTracker.with(s,ee=>{W=Run(ee,c,T,h,g,_,Tf,S,R)}),M=W&&Il(W);return!M||V.length===0?void 0:[ug(GQt,V,[kFs(h,T),xp(M)],GQt,Z.Infer_all_types_from_usage)]},fixIds:[GQt],getAllCodeActions(s){let{sourceFile:c,program:g,cancellationToken:d,host:h,preferences:_}=s,S=Yie();return Qd(s,Tun,(R,T)=>{Run(R,c,Jc(T.file,T.start),T.code,g,d,S,h,_)})}});function kFs(s,c){switch(s){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Dg(A1(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function xFs(s){switch(s){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return s}function Run(s,c,g,d,h,_,S,R,T){if(!IY(g.kind)&&g.kind!==80&&g.kind!==26&&g.kind!==110)return;let{parent:W}=g,V=yQ(c,h,T,R);switch(d=xFs(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(nc(W)&&S(W)||pi(W)||ss(W))return Nun(s,V,c,W,h,R,_),V.writeFixes(s),W;if(jo(W)){let re=P1e(W.name,h,_),ge=qde(re,W,h,R);if(ge){let Ie=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(ge),void 0);s.addJSDocTags(c,Ma(W.parent.parent,VC),[Ie])}return V.writeFixes(s),W}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=h.getTypeChecker().getSymbolAtLocation(g);return re&&re.valueDeclaration&&nc(re.valueDeclaration)&&S(re.valueDeclaration)?(Nun(s,V,ms(re.valueDeclaration),re.valueDeclaration,h,R,_),V.writeFixes(s),re.valueDeclaration):void 0}}let M=A1(g);if(M===void 0)return;let ee;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(Dg(M)){Dun(s,V,c,M,h,R,_),ee=M;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(S(M)){let re=Ma(W,Si);GFs(s,V,c,re,M,h,R,_),ee=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:Bg(M)&&Ir(M.name)&&(vit(s,V,c,M,P1e(M.name,h,_),h,R),ee=M);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:Dg(M)&&(Dun(s,V,c,M,h,R,_),ee=M);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:xo.isThisTypeAnnotatable(M)&&S(M)&&(FFs(s,c,M,h,R,_),ee=M);break;default:return pe.fail(String(d))}return V.writeFixes(s),ee}function Nun(s,c,g,d,h,_,S){Ir(d.name)&&vit(s,c,g,d,P1e(d.name,h,S),h,_)}function GFs(s,c,g,d,h,_,S,R){if(!Ir(d.name))return;let T=VFs(h,g,_,R);if(pe.assert(h.parameters.length===T.length,"Parameter count and inference count should match"),wo(h))kun(s,g,T,_,S);else{let W=lA(h)&&!qd(h,21,g);W&&s.insertNodeBefore(g,ma(h.parameters),me.createToken(21));for(let{declaration:V,type:M}of T)V&&!V.type&&!V.initializer&&vit(s,c,g,V,M,_,S);W&&s.insertNodeAfter(g,Ei(h.parameters),me.createToken(22))}}function FFs(s,c,g,d,h,_){let S=xun(g,c,d,_);if(!S||!S.length)return;let R=ZQt(d,S,_).thisParameter(),T=qde(R,g,d,h);T&&(wo(g)?ZFs(s,c,g,T):s.tryInsertThisTypeAnnotation(c,g,T))}function ZFs(s,c,g,d){s.addJSDocTags(c,g,[me.createJSDocThisTag(void 0,me.createJSDocTypeExpression(d))])}function Dun(s,c,g,d,h,_,S){let R=Nc(d.parameters);if(R&&Ir(d.name)&&Ir(R.name)){let T=P1e(d.name,h,S);T===h.getTypeChecker().getAnyType()&&(T=P1e(R.name,h,S)),wo(d)?kun(s,g,[{declaration:R,type:T}],h,_):vit(s,c,g,R,T,h,_)}}function vit(s,c,g,d,h,_,S){let R=qde(h,d,_,S);if(R)if(wo(g)&&d.kind!==172){let T=nc(d)?Gs(d.parent.parent,Ch):d;if(!T)return;let W=me.createJSDocTypeExpression(R),V=Bg(d)?me.createJSDocReturnTag(void 0,W,void 0):me.createJSDocTypeTag(void 0,W,void 0);s.addJSDocTags(g,T,[V])}else LFs(R,d,g,s,c,Mg(_.getCompilerOptions()))||s.tryInsertTypeAnnotation(g,d,R)}function LFs(s,c,g,d,h,_){let S=bQ(s,_);return S&&d.tryInsertTypeAnnotation(g,c,S.typeNode)?(F(S.symbols,R=>h.addImportFromExportedSymbol(R,!0)),!0):!1}function kun(s,c,g,d,h){let _=g.length&&g[0].declaration.parent;if(!_)return;let S=Xt(g,R=>{let T=R.declaration;if(T.initializer||eN(T)||!Ir(T.name))return;let W=R.type&&qde(R.type,T,d,h);if(W){let V=me.cloneNode(T.name);return ti(V,7168),{name:me.cloneNode(T.name),param:T,isOptional:!!R.isOptional,typeNode:W}}});if(S.length)if(lA(_)||UA(_)){let R=lA(_)&&!qd(_,21,c);R&&s.insertNodeBefore(c,ma(_.parameters),me.createToken(21)),F(S,({typeNode:T,param:W})=>{let V=me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(T)),M=me.createJSDocComment(void 0,[V]);s.insertNodeAt(c,W.getStart(c),M,{suffix:" "})}),R&&s.insertNodeAfter(c,Ei(_.parameters),me.createToken(22))}else{let R=At(S,({name:T,typeNode:W,isOptional:V})=>me.createJSDocParameterTag(void 0,T,!!V,me.createJSDocTypeExpression(W),!1,void 0));s.addJSDocTags(c,_,R)}}function FQt(s,c,g){return Xt(Kp.getReferenceEntriesForNode(-1,s,c,c.getSourceFiles(),g),d=>d.kind!==Kp.EntryKind.Span?Gs(d.node,Ir):void 0)}function P1e(s,c,g){let d=FQt(s,c,g);return ZQt(c,d,g).single()}function VFs(s,c,g,d){let h=xun(s,c,g,d);return h&&ZQt(g,h,d).parameters(s)||s.parameters.map(_=>({declaration:_,type:Ir(_.name)?P1e(_.name,g,d):g.getTypeChecker().getAnyType()}))}function xun(s,c,g,d){let h;switch(s.kind){case 177:h=qd(s,137,c);break;case 220:case 219:let _=s.parent;h=(nc(_)||pi(_))&&Ir(_.name)?_.name:s.name;break;case 263:case 175:case 174:h=s.name;break}if(h)return FQt(h,g,d)}function ZQt(s,c,g){let d=s.getTypeChecker(),h={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:Dt=>d.createArrayType(Dt),Promise:Dt=>d.createPromiseType(Dt)},_=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:T,parameters:W,thisParameter:V};function S(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function R(Dt){let tr=new Map;for(let Gr of Dt)Gr.properties&&Gr.properties.forEach((dt,pr)=>{tr.has(pr)||tr.set(pr,[]),tr.get(pr).push(dt)});let ur=new Map;return tr.forEach((Gr,dt)=>{ur.set(dt,R(Gr))}),{isNumber:Dt.some(Gr=>Gr.isNumber),isString:Dt.some(Gr=>Gr.isString),isNumberOrString:Dt.some(Gr=>Gr.isNumberOrString),candidateTypes:er(Dt,Gr=>Gr.candidateTypes),properties:ur,calls:er(Dt,Gr=>Gr.calls),constructs:er(Dt,Gr=>Gr.constructs),numberIndex:F(Dt,Gr=>Gr.numberIndex),stringIndex:F(Dt,Gr=>Gr.stringIndex),candidateThisTypes:er(Dt,Gr=>Gr.candidateThisTypes),inferredTypes:void 0}}function T(){return Tt(M(c))}function W(Dt){if(c.length===0||!Dt.parameters)return;let tr=S();for(let Gr of c)g.throwIfCancellationRequested(),ee(Gr,tr);let ur=[...tr.constructs||[],...tr.calls||[]];return Dt.parameters.map((Gr,dt)=>{let pr=[],st=EB(Gr),ir=!1;for(let Ht of ur)if(Ht.argumentTypes.length<=dt)ir=wo(Dt),pr.push(d.getUndefinedType());else if(st)for(let Br=dt;Brur.every(dt=>!dt(Gr)))}function Ye(Dt){return Tt(Qe(Dt))}function Tt(Dt){if(!Dt.length)return d.getAnyType();let tr=d.getUnionType([d.getStringType(),d.getNumberType()]),Gr=$e(Dt,[{high:pr=>pr===d.getStringType()||pr===d.getNumberType(),low:pr=>pr===tr},{high:pr=>!(pr.flags&16385),low:pr=>!!(pr.flags&16385)},{high:pr=>!(pr.flags&114689)&&!(la(pr)&16),low:pr=>!!(la(pr)&16)}]),dt=Gr.filter(pr=>la(pr)&16);return dt.length&&(Gr=Gr.filter(pr=>!(la(pr)&16)),Gr.push(ot(dt))),d.getWidenedType(d.getUnionType(Gr.map(d.getBaseTypeOfLiteralType),2))}function ot(Dt){if(Dt.length===1)return Dt[0];let tr=[],ur=[],Gr=[],dt=[],pr=!1,st=!1,ir=dl();for(let Br of Dt){for(let Zi of d.getPropertiesOfType(Br))ir.add(Zi.escapedName,Zi.valueDeclaration?d.getTypeOfSymbolAtLocation(Zi,Zi.valueDeclaration):d.getAnyType());tr.push(...d.getSignaturesOfType(Br,0)),ur.push(...d.getSignaturesOfType(Br,1));let mn=d.getIndexInfoOfType(Br,0);mn&&(Gr.push(mn.type),pr=pr||mn.isReadonly);let jn=d.getIndexInfoOfType(Br,1);jn&&(dt.push(jn.type),st=st||jn.isReadonly)}let zt=ke(ir,(Br,mn)=>{let jn=mn.lengthd.getBaseTypeOfLiteralType(ir)),st=(Gr=Dt.calls)!=null&&Gr.length?mt(Dt):void 0;return st&&pr?dt.push(d.getUnionType([st,...pr],2)):(st&&dt.push(st),B(pr)&&dt.push(...pr)),dt.push(...ht(Dt)),dt}function mt(Dt){let tr=new Map;Dt.properties&&Dt.properties.forEach((pr,st)=>{let ir=d.createSymbol(4,st);ir.links.type=Ye(pr),tr.set(st,ir)});let ur=Dt.calls?[_r(Dt.calls)]:[],Gr=Dt.constructs?[_r(Dt.constructs)]:[],dt=Dt.stringIndex?[d.createIndexInfo(d.getStringType(),Ye(Dt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,tr,ur,Gr,dt)}function ht(Dt){if(!Dt.properties||!Dt.properties.size)return[];let tr=_.filter(ur=>_t(ur,Dt));return 0Rt(ur,Dt)):[]}function _t(Dt,tr){return tr.properties?!Dh(tr.properties,(ur,Gr)=>{let dt=d.getTypeOfPropertyOfType(Dt,Gr);return dt?ur.calls?!d.getSignaturesOfType(dt,0).length||!d.isTypeAssignableTo(dt,Pt(ur.calls)):!d.isTypeAssignableTo(dt,Ye(ur)):!0}):!1}function Rt(Dt,tr){if(!(la(Dt)&4)||!tr.properties)return Dt;let ur=Dt.target,Gr=Ps(ur.typeParameters);if(!Gr)return Dt;let dt=[];return tr.properties.forEach((pr,st)=>{let ir=d.getTypeOfPropertyOfType(ur,st);pe.assert(!!ir,"generic should have all the properties of its reference."),dt.push(...Lt(ir,Ye(pr),Gr))}),h[Dt.symbol.escapedName](Tt(dt))}function Lt(Dt,tr,ur){if(Dt===ur)return[tr];if(Dt.flags&3145728)return er(Dt.types,pr=>Lt(pr,tr,ur));if(la(Dt)&4&&la(tr)&4){let pr=d.getTypeArguments(Dt),st=d.getTypeArguments(tr),ir=[];if(pr&&st)for(let zt=0;ztdt.argumentTypes.length));for(let dt=0;dtst.argumentTypes[dt]||d.getUndefinedType())),Dt.some(st=>st.argumentTypes[dt]===void 0)&&(pr.flags|=16777216),tr.push(pr)}let Gr=Ye(R(Dt.map(dt=>dt.return_)));return d.createSignature(void 0,void 0,void 0,tr,Gr,void 0,ur,0)}function Gt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateTypes||(Dt.candidateTypes=[])).push(tr)}function nt(Dt,tr){tr&&!(tr.flags&1)&&!(tr.flags&131072)&&(Dt.candidateThisTypes||(Dt.candidateThisTypes=[])).push(tr)}}var LQt="fixReturnTypeInAsyncFunction",Gun=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];xg({errorCodes:Gun,fixIds:[LQt],getCodeActions:function(c){let{sourceFile:g,program:d,span:h}=c,_=d.getTypeChecker(),S=Fun(g,d.getTypeChecker(),h.start);if(!S)return;let{returnTypeNode:R,returnType:T,promisedTypeNode:W,promisedType:V}=S,M=xo.ChangeTracker.with(c,ee=>Zun(ee,g,R,W));return[ug(LQt,M,[Z.Replace_0_with_Promise_1,_.typeToString(T),_.typeToString(V)],LQt,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:s=>Qd(s,Gun,(c,g)=>{let d=Fun(g.file,s.program.getTypeChecker(),g.start);d&&Zun(c,g.file,d.returnTypeNode,d.promisedTypeNode)})});function Fun(s,c,g){if(wo(s))return;let d=Jc(s,g),h=ji(d,kd),_=h?.type;if(!_)return;let S=c.getTypeFromTypeNode(_),R=c.getAwaitedType(S)||c.getVoidType(),T=c.typeToTypeNode(R,_,void 0);if(T)return{returnTypeNode:_,returnType:S,promisedTypeNode:T,promisedType:R}}function Zun(s,c,g,d){s.replaceNode(c,g,me.createTypeReferenceNode("Promise",[d]))}var Lun="disableJsDiagnostics",Vun="disableJsDiagnostics",Pun=Xt(Object.keys(Z),s=>{let c=Z[s];return c.category===1?c.code:void 0});xg({errorCodes:Pun,getCodeActions:function(c){let{sourceFile:g,program:d,span:h,host:_,formatContext:S}=c;if(!wo(g)||!rz(g,d.getCompilerOptions()))return;let R=g.checkJsDirective?"":OF(_,S.options),T=[sR(Lun,[won(g.fileName,[g1e(g.checkJsDirective?wA(g.checkJsDirective.pos,g.checkJsDirective.end):zd(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return xo.isValidLocationToAddComment(g,h.start)&&T.unshift(ug(Lun,xo.ChangeTracker.with(c,W=>Wun(W,g,h.start)),Z.Ignore_this_error_message,Vun,Z.Add_ts_ignore_to_all_error_messages)),T},fixIds:[Vun],getAllCodeActions:s=>{let c=new Set;return Qd(s,Pun,(g,d)=>{xo.isValidLocationToAddComment(d.file,d.start)&&Wun(g,d.file,d.start,c)})}});function Wun(s,c,g,d){let{line:h}=Ra(c,g);(!d||Ar(d,h))&&s.insertCommentBeforeLine(c,h,g," @ts-ignore")}function VQt(s,c,g,d,h,_,S){let R=s.symbol.members;for(let T of c)R.has(T.escapedName)||Mun(T,s,g,d,h,_,S,void 0)}function rse(s){return{trackSymbol:()=>!1,moduleResolverHost:Vrt(s.program,s.host)}}var Oun=(s=>(s[s.Method=1]="Method",s[s.Property=2]="Property",s[s.All=3]="All",s))(Oun||{});function Mun(s,c,g,d,h,_,S,R,T=3,W=!1){let V=s.getDeclarations(),M=Nc(V),ee=d.program.getTypeChecker(),re=Mg(d.program.getCompilerOptions()),ge=M?.kind??172,Ie=_t(s,M),_e=M?o_(M):0,Ee=_e&256;Ee|=_e&1?1:_e&4?4:0,M&&t0(M)&&(Ee|=512);let Ne=Tt(),Te=ee.getWidenedType(ee.getTypeOfSymbolAtLocation(s,c)),Ze=!!(s.flags&16777216),We=!!(c.flags&33554432)||W,Ue=_1(g,h),$e=1|(Ue===0?268435456:0);switch(ge){case 172:case 173:let Rt=ee.typeToTypeNode(Te,c,$e,8,rse(d));if(_){let Ke=bQ(Rt,re);Ke&&(Rt=Ke.typeNode,FU(_,Ke.symbols))}S(me.createPropertyDeclaration(Ne,M?Qe(Ie):s.getName(),Ze&&T&2?me.createToken(58):void 0,Rt,void 0));break;case 178:case 179:{pe.assertIsDefined(V);let Ke=ee.typeToTypeNode(Te,c,$e,void 0,rse(d)),Pt=BP(V,M),_r=Pt.secondAccessor?[Pt.firstAccessor,Pt.secondAccessor]:[Pt.firstAccessor];if(_){let Gt=bQ(Ke,re);Gt&&(Ke=Gt.typeNode,FU(_,Gt.symbols))}for(let Gt of _r)if(Bg(Gt))S(me.createGetAccessorDeclaration(Ne,Qe(Ie),E,ht(Ke),mt(R,Ue,We)));else{pe.assertNode(Gt,Dg,"The counterpart to a getter should be a setter");let nt=L7(Gt),Dt=nt&&Ir(nt.name)?Vo(nt.name):void 0;S(me.createSetAccessorDeclaration(Ne,Qe(Ie),OQt(1,[Dt],[ht(Ke)],1,!1),mt(R,Ue,We)))}break}case 174:case 175:pe.assertIsDefined(V);let Lt=Te.isUnion()?er(Te.types,Ke=>Ke.getCallSignatures()):Te.getCallSignatures();if(!jt(Lt))break;if(V.length===1){pe.assert(Lt.length===1,"One declaration implies one signature");let Ke=Lt[0];Ye(Ue,Ke,Ne,Qe(Ie),mt(R,Ue,We));break}for(let Ke of Lt)Ke.declaration&&Ke.declaration.flags&33554432||Ye(Ue,Ke,Ne,Qe(Ie));if(!We)if(V.length>Lt.length){let Ke=ee.getSignatureFromDeclaration(V[V.length-1]);Ye(Ue,Ke,Ne,Qe(Ie),mt(R,Ue))}else pe.assert(V.length===Lt.length,"Declarations and signatures should match count"),S(HFs(ee,d,c,Lt,Qe(Ie),Ze&&!!(T&1),Ne,Ue,R));break}function Ye(Rt,Lt,Ke,Pt,_r){let Gt=Bit(175,d,Rt,Lt,_r,Pt,Ke,Ze&&!!(T&1),c,_);Gt&&S(Gt)}function Tt(){let Rt;return Ee&&(Rt=zr(Rt,me.createModifiersFromModifierFlags(Ee))),ot()&&(Rt=Ft(Rt,me.createToken(164))),Rt&&me.createNodeArray(Rt)}function ot(){return!!(d.program.getCompilerOptions().noImplicitOverride&&M&&wP(M))}function Qe(Rt){return Ir(Rt)&&Rt.escapedText==="constructor"?me.createComputedPropertyName(me.createStringLiteral(Vo(Rt),Ue===0)):JA(Rt,!1)}function mt(Rt,Lt,Ke){return Ke?void 0:JA(Rt,!1)||MQt(Lt)}function ht(Rt){return JA(Rt,!1)}function _t(Rt,Lt){if(iI(Rt)&262144){let Ke=Rt.links.nameType;if(Ke&&g2(Ke))return me.createIdentifier(Bc(A2(Ke)))}return JA(Il(Lt),!1)}}function Bit(s,c,g,d,h,_,S,R,T,W){let V=c.program,M=V.getTypeChecker(),ee=Mg(V.getCompilerOptions()),re=wo(T),ge=524545|(g===0?268435456:0),Ie=M.signatureToSignatureDeclaration(d,s,T,ge,8,rse(c));if(!Ie)return;let _e=re?void 0:Ie.typeParameters,Ee=Ie.parameters,Ne=re?void 0:JA(Ie.type);if(W){if(_e){let Ue=Tr(_e,$e=>{let Ye=$e.constraint,Tt=$e.default;if(Ye){let ot=bQ(Ye,ee);ot&&(Ye=ot.typeNode,FU(W,ot.symbols))}if(Tt){let ot=bQ(Tt,ee);ot&&(Tt=ot.typeNode,FU(W,ot.symbols))}return me.updateTypeParameterDeclaration($e,$e.modifiers,$e.name,Ye,Tt)});_e!==Ue&&(_e=gn(me.createNodeArray(Ue,_e.hasTrailingComma),_e))}let We=Tr(Ee,Ue=>{let $e=re?void 0:Ue.type;if($e){let Ye=bQ($e,ee);Ye&&($e=Ye.typeNode,FU(W,Ye.symbols))}return me.updateParameterDeclaration(Ue,Ue.modifiers,Ue.dotDotDotToken,Ue.name,re?void 0:Ue.questionToken,$e,Ue.initializer)});if(Ee!==We&&(Ee=gn(me.createNodeArray(We,Ee.hasTrailingComma),Ee)),Ne){let Ue=bQ(Ne,ee);Ue&&(Ne=Ue.typeNode,FU(W,Ue.symbols))}}let Te=R?me.createToken(58):void 0,Ze=Ie.asteriskToken;if(UA(Ie))return me.updateFunctionExpression(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body);if(lA(Ie))return me.updateArrowFunction(Ie,S,_e,Ee,Ne,Ie.equalsGreaterThanToken,h??Ie.body);if(uu(Ie))return me.updateMethodDeclaration(Ie,S,Ze,_??me.createIdentifier(""),Te,_e,Ee,Ne,h);if(ih(Ie))return me.updateFunctionDeclaration(Ie,S,Ie.asteriskToken,Gs(_,Ir),_e,Ee,Ne,h??Ie.body)}function PQt(s,c,g,d,h,_,S){let R=_1(c.sourceFile,c.preferences),T=Mg(c.program.getCompilerOptions()),W=rse(c),V=c.program.getTypeChecker(),M=wo(S),{typeArguments:ee,arguments:re,parent:ge}=d,Ie=M?void 0:V.getContextualType(d),_e=At(re,Tt=>Ir(Tt)?Tt.text:jo(Tt)&&Ir(Tt.name)?Tt.name.text:void 0),Ee=M?[]:At(re,Tt=>V.getTypeAtLocation(Tt)),{argumentTypeNodes:Ne,argumentTypeParameters:Te}=OFs(V,g,Ee,S,T,1,8,W),Ze=_?me.createNodeArray(me.createModifiersFromModifierFlags(_)):void 0,We=Hd(ge)?me.createToken(42):void 0,Ue=M?void 0:PFs(V,Te,ee),$e=OQt(re.length,_e,Ne,void 0,M),Ye=M||Ie===void 0?void 0:V.typeToTypeNode(Ie,S,void 0,void 0,W);switch(s){case 175:return me.createMethodDeclaration(Ze,We,h,void 0,Ue,$e,Ye,MQt(R));case 174:return me.createMethodSignature(Ze,h,void 0,Ue,$e,Ye===void 0?me.createKeywordTypeNode(159):Ye);case 263:return pe.assert(typeof h=="string"||Ir(h),"Unexpected name"),me.createFunctionDeclaration(Ze,We,h,Ue,$e,Ye,WPe(Z.Function_not_implemented.message,R));default:pe.fail("Unexpected kind")}}function PFs(s,c,g){let d=new Set(c.map(_=>_[0])),h=new Map(c);if(g){let _=g.filter(R=>!c.some(T=>{var W;return s.getTypeAtLocation(R)===((W=T[1])==null?void 0:W.argumentType)})),S=d.size+_.length;for(let R=0;d.size{var S;return me.createTypeParameterDeclaration(void 0,_,(S=h.get(_))==null?void 0:S.constraint)})}function Hun(s){return 84+s<=90?String.fromCharCode(84+s):`T${s}`}function wit(s,c,g,d,h,_,S,R){let T=s.typeToTypeNode(g,d,_,S,R);if(T)return WQt(T,c,h)}function WQt(s,c,g){let d=bQ(s,g);return d&&(FU(c,d.symbols),s=d.typeNode),JA(s)}function WFs(s,c){var g;pe.assert(c.typeArguments);let d=c.typeArguments,h=c.target;for(let _=0;_T===d[W]))return _}return d.length}function Yun(s,c,g,d,h,_){let S=s.typeToTypeNode(c,g,d,h,_);if(S){if(nh(S)){let R=c;if(R.typeArguments&&S.typeArguments){let T=WFs(s,R);if(T=d?me.createToken(58):void 0,h?void 0:g?.[R]||me.createKeywordTypeNode(159),void 0);_.push(V)}return _}function HFs(s,c,g,d,h,_,S,R,T){let W=d[0],V=d[0].minArgumentCount,M=!1;for(let Ie of d)V=Math.min(Ie.minArgumentCount,V),D0(Ie)&&(M=!0),Ie.parameters.length>=W.parameters.length&&(!D0(Ie)||D0(W))&&(W=Ie);let ee=W.parameters.length-(D0(W)?1:0),re=W.parameters.map(Ie=>Ie.name),ge=OQt(ee,re,void 0,V,!1);if(M){let Ie=me.createParameterDeclaration(void 0,me.createToken(26),re[ee]||"rest",ee>=V?me.createToken(58):void 0,me.createArrayTypeNode(me.createKeywordTypeNode(159)),void 0);ge.push(Ie)}return QFs(S,h,_,void 0,ge,YFs(d,s,c,g),R,T)}function YFs(s,c,g,d){if(B(s)){let h=c.getUnionType(At(s,c.getReturnTypeOfSignature));return c.typeToTypeNode(h,d,1,8,rse(g))}}function QFs(s,c,g,d,h,_,S,R){return me.createMethodDeclaration(s,void 0,c,g?me.createToken(58):void 0,d,h,_,R||MQt(S))}function MQt(s){return WPe(Z.Method_not_implemented.message,s)}function WPe(s,c){return me.createBlock([me.createThrowStatement(me.createNewExpression(me.createIdentifier("Error"),void 0,[me.createStringLiteral(s,c===0)]))],!0)}function HQt(s,c,g){let d=m7(c);if(!d)return;let h=Uun(d,"compilerOptions");if(h===void 0){s.insertNodeAtObjectStart(c,d,QQt("compilerOptions",me.createObjectLiteralExpression(g.map(([S,R])=>QQt(S,R)),!0)));return}let _=h.initializer;if(og(_))for(let[S,R]of g){let T=Uun(_,S);T===void 0?s.insertNodeAtObjectStart(c,_,QQt(S,R)):s.replaceNode(c,T.initializer,R)}}function YQt(s,c,g,d){HQt(s,c,[[g,d]])}function QQt(s,c){return me.createPropertyAssignment(me.createStringLiteral(s),c)}function Uun(s,c){return de(s.properties,g=>fm(g)&&!!g.name&&Zg(g.name)&&g.name.text===c)}function bQ(s,c){let g,d=Mr(s,h,uc);if(g&&d)return{typeNode:d,symbols:g};function h(_){if(ky(_)&&_.qualifier){let S=B0(_.qualifier);if(!S.symbol)return _s(_,h,void 0);let R=cPe(S.symbol,c),T=R!==S.text?Kun(_.qualifier,me.createIdentifier(R)):_.qualifier;g=Ft(g,S.symbol);let W=Ws(_.typeArguments,h,uc);return me.createTypeReferenceNode(T,W)}return _s(_,h,void 0)}}function Kun(s,c){return s.kind===80?c:me.createQualifiedName(Kun(s.left,c),s.right)}function FU(s,c){c.forEach(g=>s.addImportFromExportedSymbol(g,!0))}function XQt(s,c){let g=Rs(c),d=Jc(s,c.start);for(;d.end_.replaceNode(c,g,d));return sR(tgn,h,[Z.Replace_import_with_0,h[0].textChanges[0].newText])}xg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:iZs});function iZs(s){let c=s.sourceFile,g=Z.This_expression_is_not_callable.code===s.errorCode?214:215,d=ji(Jc(c,s.span.start),_=>_.kind===g);if(!d)return[];let h=d.expression;return ngn(s,h)}xg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:sZs});function sZs(s){let c=s.sourceFile,g=ji(Jc(c,s.span.start),d=>d.getStart()===s.span.start&&d.getEnd()===s.span.start+s.span.length);return g?ngn(s,g):[]}function ngn(s,c){let g=s.program.getTypeChecker().getTypeAtLocation(c);if(!(g.symbol&&bw(g.symbol)&&g.symbol.links.originatingImport))return[];let d=[],h=g.symbol.links.originatingImport;if(Up(h)||Or(d,nZs(s,h)),un(c)&&!(rh(c.parent)&&c.parent.name===c)){let _=s.sourceFile,S=xo.ChangeTracker.with(s,R=>R.replaceNode(_,c,me.createPropertyAccessExpression(c,"default"),{}));d.push(sR(tgn,S,Z.Use_synthetic_default_member))}return d}var JQt="strictClassInitialization",UQt="addMissingPropertyDefiniteAssignmentAssertions",KQt="addMissingPropertyUndefinedType",jQt="addMissingPropertyInitializer",ign=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];xg({errorCodes:ign,getCodeActions:function(c){let g=sgn(c.sourceFile,c.span.start);if(!g)return;let d=[];return Ft(d,aZs(c,g)),Ft(d,oZs(c,g)),Ft(d,cZs(c,g)),d},fixIds:[UQt,KQt,jQt],getAllCodeActions:s=>Qd(s,ign,(c,g)=>{let d=sgn(g.file,g.start);if(d)switch(s.fixId){case UQt:ogn(c,g.file,d.prop);break;case KQt:agn(c,g.file,d);break;case jQt:let h=s.program.getTypeChecker(),_=lgn(h,d.prop);if(!_)return;cgn(c,g.file,d.prop,_);break;default:pe.fail(JSON.stringify(s.fixId))}})});function sgn(s,c){let g=Jc(s,c);if(Ir(g)&&pi(g.parent)){let d=kh(g.parent);if(d)return{type:d,prop:g.parent,isJs:wo(g.parent)}}}function oZs(s,c){if(c.isJs)return;let g=xo.ChangeTracker.with(s,d=>ogn(d,s.sourceFile,c.prop));return ug(JQt,g,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],UQt,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function ogn(s,c,g){Vy(g);let d=me.updatePropertyDeclaration(g,g.modifiers,g.name,me.createToken(54),g.type,g.initializer);s.replaceNode(c,g,d)}function aZs(s,c){let g=xo.ChangeTracker.with(s,d=>agn(d,s.sourceFile,c));return ug(JQt,g,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],KQt,Z.Add_undefined_type_to_all_uninitialized_properties)}function agn(s,c,g){let d=me.createKeywordTypeNode(157),h=aS(g.type)?g.type.types.concat(d):[g.type,d],_=me.createUnionTypeNode(h);g.isJs?s.addJSDocTags(c,g.prop,[me.createJSDocTypeTag(void 0,me.createJSDocTypeExpression(_))]):s.replaceNode(c,g.type,_)}function cZs(s,c){if(c.isJs)return;let g=s.program.getTypeChecker(),d=lgn(g,c.prop);if(!d)return;let h=xo.ChangeTracker.with(s,_=>cgn(_,s.sourceFile,c.prop,d));return ug(JQt,h,[Z.Add_initializer_to_property_0,c.prop.name.getText()],jQt,Z.Add_initializers_to_all_uninitialized_properties)}function cgn(s,c,g,d){Vy(g);let h=me.updatePropertyDeclaration(g,g.modifiers,g.name,g.questionToken,g.type,d);s.replaceNode(c,g,h)}function lgn(s,c){return ugn(s,s.getTypeFromTypeNode(c.type))}function ugn(s,c){if(c.flags&512)return c===s.getFalseType()||c===s.getFalseType(!0)?me.createFalse():me.createTrue();if(c.isStringLiteral())return me.createStringLiteral(c.value);if(c.isNumberLiteral())return me.createNumericLiteral(c.value);if(c.flags&2048)return me.createBigIntLiteral(c.value);if(c.isUnion())return X(c.types,g=>ugn(s,g));if(c.isClass()){let g=AN(c.symbol);if(!g||Ga(g,64))return;let d=lN(g);return d&&d.parameters.length?void 0:me.createNewExpression(me.createIdentifier(c.symbol.name),void 0,void 0)}else if(s.isArrayLikeType(c))return me.createArrayLiteralExpression()}var zQt="requireInTs",ggn=[Z.require_call_may_be_converted_to_an_import.code];xg({errorCodes:ggn,getCodeActions(s){let c=dgn(s.sourceFile,s.program,s.span.start,s.preferences);if(!c)return;let g=xo.ChangeTracker.with(s,d=>Agn(d,s.sourceFile,c));return[ug(zQt,g,Z.Convert_require_to_import,zQt,Z.Convert_all_require_to_import)]},fixIds:[zQt],getAllCodeActions:s=>Qd(s,ggn,(c,g)=>{let d=dgn(g.file,s.program,g.start,s.preferences);d&&Agn(c,s.sourceFile,d)})});function Agn(s,c,g){let{allowSyntheticDefaults:d,defaultImportName:h,namedImports:_,statement:S,moduleSpecifier:R}=g;s.replaceNode(c,S,h&&!d?me.createImportEqualsDeclaration(void 0,!1,h,me.createExternalModuleReference(R)):me.createImportDeclaration(void 0,me.createImportClause(void 0,h,_),R,void 0))}function dgn(s,c,g,d){let{parent:h}=Jc(s,g);ay(h,!0)||pe.failBadSyntaxKind(h);let _=Ma(h.parent,nc),S=_1(s,d),R=Gs(_.name,Ir),T=Km(_.name)?lZs(_.name):void 0;if(R||T){let W=ma(h.arguments);return{allowSyntheticDefaults:JY(c.getCompilerOptions()),defaultImportName:R,namedImports:T,statement:Ma(_.parent.parent,Ch),moduleSpecifier:GP(W)?me.createStringLiteral(W.text,S===0):W}}}function lZs(s){let c=[];for(let g of s.elements){if(!Ir(g.name)||g.initializer)return;c.push(me.createImportSpecifier(!1,Gs(g.propertyName,Ir),g.name))}if(c.length)return me.createNamedImports(c)}var qQt="useDefaultImport",pgn=[Z.Import_may_be_converted_to_a_default_import.code];xg({errorCodes:pgn,getCodeActions(s){let{sourceFile:c,span:{start:g}}=s,d=fgn(c,g);if(!d)return;let h=xo.ChangeTracker.with(s,_=>Ign(_,c,d,s.preferences));return[ug(qQt,h,Z.Convert_to_default_import,qQt,Z.Convert_all_to_default_imports)]},fixIds:[qQt],getAllCodeActions:s=>Qd(s,pgn,(c,g)=>{let d=fgn(g.file,g.start);d&&Ign(c,g.file,d,s.preferences)})});function fgn(s,c){let g=Jc(s,c);if(!Ir(g))return;let{parent:d}=g;if(km(d)&&ZF(d.moduleReference))return{importNode:d,name:g,moduleSpecifier:d.moduleReference.expression};if(Zx(d)&&Mf(d.parent.parent)){let h=d.parent.parent;return{importNode:h,name:g,moduleSpecifier:h.moduleSpecifier}}}function Ign(s,c,g,d){s.replaceNode(c,g.importNode,QP(g.name,void 0,g.moduleSpecifier,_1(c,d)))}var $Qt="useBigintLiteral",hgn=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];xg({errorCodes:hgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>mgn(d,c.sourceFile,c.span));if(g.length>0)return[ug($Qt,g,Z.Convert_to_a_bigint_numeric_literal,$Qt,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[$Qt],getAllCodeActions:s=>Qd(s,hgn,(c,g)=>mgn(c,g.file,g))});function mgn(s,c,g){let d=Gs(Jc(c,g.start),mC);if(!d)return;let h=d.getText(c)+"n";s.replaceNode(c,d,me.createBigIntLiteral(h))}var uZs="fixAddModuleReferTypeMissingTypeof",eXt=uZs,Cgn=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];xg({errorCodes:Cgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=_gn(g,d.start),_=xo.ChangeTracker.with(c,S=>ygn(S,g,h));return[ug(eXt,_,Z.Add_missing_typeof,eXt,Z.Add_missing_typeof)]},fixIds:[eXt],getAllCodeActions:s=>Qd(s,Cgn,(c,g)=>ygn(c,s.sourceFile,_gn(g.file,g.start)))});function _gn(s,c){let g=Jc(s,c);return pe.assert(g.kind===102,"This token should be an ImportKeyword"),pe.assert(g.parent.kind===206,"Token parent should be an ImportType"),g.parent}function ygn(s,c,g){let d=me.updateImportTypeNode(g,g.argument,g.attributes,g.qualifier,g.typeArguments,!0);s.replaceNode(c,g,d)}var tXt="wrapJsxInFragment",bgn=[Z.JSX_expressions_must_have_one_parent_element.code];xg({errorCodes:bgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Egn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,S=>Sgn(S,g,h));return[ug(tXt,_,Z.Wrap_in_JSX_fragment,tXt,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[tXt],getAllCodeActions:s=>Qd(s,bgn,(c,g)=>{let d=Egn(s.sourceFile,g.start);d&&Sgn(c,s.sourceFile,d)})});function Egn(s,c){let h=Jc(s,c).parent.parent;if(!(!fo(h)&&(h=h.parent,!fo(h)))&&sf(h.operatorToken))return h}function Sgn(s,c,g){let d=gZs(g);d&&s.replaceNode(c,g,me.createJsxFragment(me.createJsxOpeningFragment(),d,me.createJsxJsxClosingFragment()))}function gZs(s){let c=[],g=s;for(;;)if(fo(g)&&sf(g.operatorToken)&&g.operatorToken.kind===28){if(c.push(g.left),BJ(g.right))return c.push(g.right),c;if(fo(g.right)){g=g.right;continue}else return}else return}var rXt="wrapDecoratorInParentheses",vgn=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];xg({errorCodes:vgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Bgn(d,c.sourceFile,c.span.start));return[ug(rXt,g,Z.Wrap_in_parentheses,rXt,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[rXt],getAllCodeActions:s=>Qd(s,vgn,(c,g)=>Bgn(c,g.file,g.start))});function Bgn(s,c,g){let d=Jc(c,g),h=ji(d,So);pe.assert(!!h,"Expected position to be owned by a decorator.");let _=me.createParenthesizedExpression(h.expression);s.replaceNode(c,h.expression,_)}var nXt="fixConvertToMappedObjectType",wgn=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];xg({errorCodes:wgn,getCodeActions:function(c){let{sourceFile:g,span:d}=c,h=Tgn(g,d.start);if(!h)return;let _=xo.ChangeTracker.with(c,R=>Rgn(R,g,h)),S=Vo(h.container.name);return[ug(nXt,_,[Z.Convert_0_to_mapped_object_type,S],nXt,[Z.Convert_0_to_mapped_object_type,S])]},fixIds:[nXt],getAllCodeActions:s=>Qd(s,wgn,(c,g)=>{let d=Tgn(g.file,g.start);d&&Rgn(c,g.file,d)})});function Tgn(s,c){let g=Jc(s,c),d=Gs(g.parent.parent,w0);if(!d)return;let h=g_(d.parent)?d.parent:Gs(d.parent.parent,FB);if(h)return{indexSignature:d,container:h}}function AZs(s,c){return me.createTypeAliasDeclaration(s.modifiers,s.name,s.typeParameters,c)}function Rgn(s,c,{indexSignature:g,container:d}){let _=(g_(d)?d.members:d.type.members).filter(V=>!w0(V)),S=ma(g.parameters),R=me.createTypeParameterDeclaration(void 0,Ma(S.name,Ir),S.type),T=me.createMappedTypeNode(b3(g)?me.createModifier(148):void 0,R,void 0,g.questionToken,g.type,void 0),W=me.createIntersectionTypeNode([...R7(d),T,..._.length?[me.createTypeLiteralNode(_)]:E]);s.replaceNode(c,d,AZs(d,W))}var Ngn="removeAccidentalCallParentheses",dZs=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];xg({errorCodes:dZs,getCodeActions(s){let c=ji(Jc(s.sourceFile,s.span.start),Zl);if(!c)return;let g=xo.ChangeTracker.with(s,d=>{d.deleteRange(s.sourceFile,{pos:c.expression.end,end:c.end})});return[sR(Ngn,g,Z.Remove_parentheses)]},fixIds:[Ngn]});var iXt="removeUnnecessaryAwait",Dgn=[Z.await_has_no_effect_on_the_type_of_this_expression.code];xg({errorCodes:Dgn,getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>kgn(d,c.sourceFile,c.span));if(g.length>0)return[ug(iXt,g,Z.Remove_unnecessary_await,iXt,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[iXt],getAllCodeActions:s=>Qd(s,Dgn,(c,g)=>kgn(c,g.file,g))});function kgn(s,c,g){let d=Gs(Jc(c,g.start),R=>R.kind===135),h=d&&Gs(d.parent,I1);if(!h)return;let _=h;if(gI(h.parent)){let R=aU(h.expression,!1);if(Ir(R)){let T=Gm(h.parent.pos,c);T&&T.kind!==105&&(_=h.parent)}}s.replaceNode(c,_,h.expression)}var xgn=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],sXt="splitTypeOnlyImport";xg({errorCodes:xgn,fixIds:[sXt],getCodeActions:function(c){let g=xo.ChangeTracker.with(c,d=>Fgn(d,Ggn(c.sourceFile,c.span),c));if(g.length)return[ug(sXt,g,Z.Split_into_two_separate_import_declarations,sXt,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:s=>Qd(s,xgn,(c,g)=>{Fgn(c,Ggn(s.sourceFile,g),s)})});function Ggn(s,c){return ji(Jc(s,c.start),Mf)}function Fgn(s,c,g){if(!c)return;let d=pe.checkDefined(c.importClause);s.replaceNode(g.sourceFile,c,me.updateImportDeclaration(c,c.modifiers,me.updateImportClause(d,d.phaseModifier,d.name,void 0),c.moduleSpecifier,c.attributes)),s.insertNodeAfter(g.sourceFile,c,me.createImportDeclaration(void 0,me.updateImportClause(d,d.phaseModifier,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var oXt="fixConvertConstToLet",Zgn=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];xg({errorCodes:Zgn,getCodeActions:function(c){let{sourceFile:g,span:d,program:h}=c,_=Lgn(g,d.start,h);if(_===void 0)return;let S=xo.ChangeTracker.with(c,R=>Vgn(R,g,_.token));return[hYt(oXt,S,Z.Convert_const_to_let,oXt,Z.Convert_all_const_to_let)]},getAllCodeActions:s=>{let{program:c}=s,g=new Set;return Hz(xo.ChangeTracker.with(s,d=>{Yz(s,Zgn,h=>{let _=Lgn(h.file,h.start,c);if(_&&Zy(g,kg(_.symbol)))return Vgn(d,h.file,_.token)})}))},fixIds:[oXt]});function Lgn(s,c,g){var d;let _=g.getTypeChecker().getSymbolAtLocation(Jc(s,c));if(_===void 0)return;let S=Gs((d=_?.valueDeclaration)==null?void 0:d.parent,u_);if(S===void 0)return;let R=qd(S,87,s);if(R!==void 0)return{symbol:_,token:R}}function Vgn(s,c,g){s.replaceNode(c,g,me.createToken(121))}var aXt="fixExpectedComma",pZs=Z._0_expected.code,Pgn=[pZs];xg({errorCodes:Pgn,getCodeActions(s){let{sourceFile:c}=s,g=Wgn(c,s.span.start,s.errorCode);if(!g)return;let d=xo.ChangeTracker.with(s,h=>Ogn(h,c,g));return[ug(aXt,d,[Z.Change_0_to_1,";",","],aXt,[Z.Change_0_to_1,";",","])]},fixIds:[aXt],getAllCodeActions:s=>Qd(s,Pgn,(c,g)=>{let d=Wgn(g.file,g.start,g.code);d&&Ogn(c,s.sourceFile,d)})});function Wgn(s,c,g){let d=Jc(s,c);return d.kind===27&&d.parent&&(og(d.parent)||OI(d.parent))?{node:d}:void 0}function Ogn(s,c,{node:g}){let d=me.createToken(28);s.replaceNode(c,g,d)}var fZs="addVoidToPromise",Mgn="addVoidToPromise",Hgn=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];xg({errorCodes:Hgn,fixIds:[Mgn],getCodeActions(s){let c=xo.ChangeTracker.with(s,g=>Ygn(g,s.sourceFile,s.span,s.program));if(c.length>0)return[ug(fZs,c,Z.Add_void_to_Promise_resolved_without_a_value,Mgn,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(s){return Qd(s,Hgn,(c,g)=>Ygn(c,g.file,g,s.program,new Set))}});function Ygn(s,c,g,d,h){let _=Jc(c,g.start);if(!Ir(_)||!Zl(_.parent)||_.parent.expression!==_||_.parent.arguments.length!==0)return;let S=d.getTypeChecker(),R=S.getSymbolAtLocation(_),T=R?.valueDeclaration;if(!T||!Si(T)||!f2(T.parent.parent)||h?.has(T))return;h?.add(T);let W=IZs(T.parent.parent);if(jt(W)){let V=W[0],M=!aS(V)&&!fv(V)&&fv(me.createUnionTypeNode([V,me.createKeywordTypeNode(116)]).types[0]);M&&s.insertText(c,V.pos,"("),s.insertText(c,V.end,M?") | void":" | void")}else{let V=S.getResolvedSignature(_.parent),M=V?.parameters[0],ee=M&&S.getTypeOfSymbolAtLocation(M,T.parent.parent);wo(T)?(!ee||ee.flags&3)&&(s.insertText(c,T.parent.parent.end,")"),s.insertText(c,Yu(c.text,T.parent.parent.pos),"/** @type {Promise} */(")):(!ee||ee.flags&2)&&s.insertText(c,T.parent.parent.expression.end,"")}}function IZs(s){var c;if(wo(s)){if(gI(s.parent)){let g=(c=ov(s.parent))==null?void 0:c.typeExpression.type;if(g&&nh(g)&&Ir(g.typeName)&&Vo(g.typeName)==="Promise")return g.typeArguments}}else return s.typeArguments}var Jz={};o(Jz,{CompletionKind:()=>aAn,CompletionSource:()=>Xgn,SortText:()=>c0,StringCompletions:()=>Pit,SymbolOriginInfoKind:()=>Jgn,createCompletionDetails:()=>HPe,createCompletionDetailsForSymbol:()=>IXt,getCompletionEntriesFromSymbols:()=>pXt,getCompletionEntryDetails:()=>JZs,getCompletionEntrySymbol:()=>KZs,getCompletionsAtPosition:()=>SZs,getDefaultCommitCharacters:()=>ZU,getPropertiesForObjectExpression:()=>Zit,moduleSpecifierResolutionCacheAttemptLimit:()=>Qgn,moduleSpecifierResolutionLimit:()=>cXt});var cXt=100,Qgn=1e3,c0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(s){return"z"+s},ObjectLiteralProperty(s,c){return`${s}\0${c}\0`},SortBelow(s){return s+"1"}},RN=[".",",",";"],Tit=[".",";"],Xgn=(s=>(s.ThisProperty="ThisProperty/",s.ClassMemberSnippet="ClassMemberSnippet/",s.TypeOnlyAlias="TypeOnlyAlias/",s.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",s.SwitchCases="SwitchCases/",s.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",s))(Xgn||{}),Jgn=(s=>(s[s.ThisType=1]="ThisType",s[s.SymbolMember=2]="SymbolMember",s[s.Export=4]="Export",s[s.Promise=8]="Promise",s[s.Nullable=16]="Nullable",s[s.ResolvedExport=32]="ResolvedExport",s[s.TypeOnlyAlias=64]="TypeOnlyAlias",s[s.ObjectLiteralMethod=128]="ObjectLiteralMethod",s[s.Ignore=256]="Ignore",s[s.ComputedPropertyName=512]="ComputedPropertyName",s[s.SymbolMemberNoExport=2]="SymbolMemberNoExport",s[s.SymbolMemberExport=6]="SymbolMemberExport",s))(Jgn||{});function hZs(s){return!!(s.kind&1)}function mZs(s){return!!(s.kind&2)}function OPe(s){return!!(s&&s.kind&4)}function cpe(s){return!!(s&&s.kind===32)}function CZs(s){return OPe(s)||cpe(s)||lXt(s)}function _Zs(s){return(OPe(s)||cpe(s))&&!!s.isFromPackageJson}function yZs(s){return!!(s.kind&8)}function bZs(s){return!!(s.kind&16)}function Ugn(s){return!!(s&&s.kind&64)}function Kgn(s){return!!(s&&s.kind&128)}function EZs(s){return!!(s&&s.kind&256)}function lXt(s){return!!(s&&s.kind&512)}function jgn(s,c,g,d,h,_,S,R,T){var W,V,M,ee;let re=Fg(),ge=S||U7(d.getCompilerOptions())||((W=_.autoImportSpecifierExcludeRegexes)==null?void 0:W.length),Ie=!1,_e=0,Ee=0,Ne=0,Te=0,Ze=T({tryResolve:Ue,skippedAny:()=>Ie,resolvedAny:()=>Ee>0,resolvedBeyondLimit:()=>Ee>cXt}),We=Te?` (${(Ne/Te*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${s}: resolved ${Ee} module specifiers, plus ${_e} ambient and ${Ne} from cache${We}`),(M=c.log)==null||M.call(c,`${s}: response is ${Ie?"incomplete":"complete"}`),(ee=c.log)==null||ee.call(c,`${s}: ${Fg()-re}`),Ze;function Ue($e,Ye){if(Ye){let mt=g.getModuleSpecifierForBestExportInfo($e,h,R);return mt&&_e++,mt||"failed"}let Tt=ge||_.allowIncompleteCompletions&&Ee{let ge=Xt(T.entries,Ie=>{var _e;if(!Ie.hasAction||!Ie.source||!Ie.data||zgn(Ie.data))return Ie;if(!EAn(Ie.name,V))return;let{origin:Ee}=pe.checkDefined(lAn(Ie.name,Ie.data,d,h)),Ne=M.get(c.path,Ie.data.exportMapKey),Te=Ne&&re.tryResolve(Ne,!Xr(l2(Ee.moduleSymbol.name)));if(Te==="skipped")return Ie;if(!Te||Te==="failed"){(_e=h.log)==null||_e.call(h,`Unexpected failure resolving auto import for '${Ie.name}' from '${Ie.source}'`);return}let Ze={...Ee,kind:32,moduleSpecifier:Te.moduleSpecifier};return Ie.data=sAn(Ze),Ie.source=dXt(Ze),Ie.sourceDisplay=[gS(Ze.moduleSpecifier)],Ie});return re.skippedAny()||(T.isIncomplete=void 0),ge});return T.entries=ee,T.flags=(T.flags||0)|4,T.optionalReplacementSpan=tAn(W),T}function uXt(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:s,defaultCommitCharacters:ZU(!1)}}function qgn(s,c,g,d,h,_){let S=Jc(s,c);if(!u3(S)&&!tR(S))return[];let R=tR(S)?S:S.parent;if(!tR(R))return[];let T=R.parent;if(!bu(T))return[];let W=n0(s),V=h.includeCompletionsWithSnippetText||void 0,M=ct(R.tags,ee=>cS(ee)&&ee.getEnd()<=c);return Xt(T.parameters,ee=>{if(!vL(ee).length){if(Ir(ee.name)){let re={tabstop:1},ge=ee.name.text,Ie=W1e(ge,ee.initializer,ee.dotDotDotToken,W,!1,!1,g,d,h),_e=V?W1e(ge,ee.initializer,ee.dotDotDotToken,W,!1,!0,g,d,h,re):void 0;return _&&(Ie=Ie.slice(1),_e&&(_e=_e.slice(1))),{name:Ie,kind:"parameter",sortText:c0.LocationPriority,insertText:V?_e:void 0,isSnippet:V}}else if(ee.parent.parameters.indexOf(ee)===M){let re=`param${M}`,ge=$gn(re,ee.name,ee.initializer,ee.dotDotDotToken,W,!1,g,d,h),Ie=V?$gn(re,ee.name,ee.initializer,ee.dotDotDotToken,W,!0,g,d,h):void 0,_e=ge.join(uN(d)+"* "),Ee=Ie?.join(uN(d)+"* ");return _&&(_e=_e.slice(1),Ee&&(Ee=Ee.slice(1))),{name:_e,kind:"parameter",sortText:c0.LocationPriority,insertText:V?Ee:void 0,isSnippet:V}}}})}function $gn(s,c,g,d,h,_,S,R,T){if(!h)return[W1e(s,g,d,h,!1,_,S,R,T,{tabstop:1})];return W(s,c,g,d,{tabstop:1});function W(M,ee,re,ge,Ie){if(Km(ee)&&!ge){let Ee={tabstop:Ie.tabstop},Ne=W1e(M,re,ge,h,!0,_,S,R,T,Ee),Te=[];for(let Ze of ee.elements){let We=V(M,Ze,Ee);if(We)Te.push(...We);else{Te=void 0;break}}if(Te)return Ie.tabstop=Ee.tabstop,[Ne,...Te]}return[W1e(M,re,ge,h,!1,_,S,R,T,Ie)]}function V(M,ee,re){if(!ee.propertyName&&Ir(ee.name)||Ir(ee.name)){let ge=ee.propertyName?xY(ee.propertyName):ee.name.text;if(!ge)return;let Ie=`${M}.${ge}`;return[W1e(Ie,ee.initializer,ee.dotDotDotToken,h,!1,_,S,R,T,re)]}else if(ee.propertyName){let ge=xY(ee.propertyName);return ge&&W(`${M}.${ge}`,ee.name,ee.initializer,ee.dotDotDotToken,re)}}}function W1e(s,c,g,d,h,_,S,R,T,W){if(_&&pe.assertIsDefined(W),c&&(s=BZs(s,c)),_&&(s=xP(s)),d){let V="*";if(h)pe.assert(!g,"Cannot annotate a rest parameter with type 'Object'."),V="Object";else{if(c){let re=S.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ge=c.getSourceFile(),_e=_1(ge,T)===0?268435456:0,Ee=S.typeToTypeNode(re,ji(c,bu),_e);if(Ee){let Ne=_?Dit({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target}):MP({removeComments:!0,module:R.module,moduleResolution:R.moduleResolution,target:R.target});ti(Ee,1),V=Ne.printNode(4,Ee,ge)}}}_&&V==="*"&&(V=`\${${W.tabstop++}:${V}}`)}let M=!h&&g?"...":"",ee=_?`\${${W.tabstop++}}`:"";return`@param {${M}${V}} ${s} ${ee}`}else{let V=_?`\${${W.tabstop++}}`:"";return`@param ${s} ${V}`}}function BZs(s,c){let g=c.getText().trim();return g.includes(` -`)||g.length>80?`[${s}]`:`[${s}=${g}]`}function wZs(s){return{name:Vi(s),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords}}function TZs(s,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:s.slice(),defaultCommitCharacters:ZU(c)}}function eAn(s,c,g){return{kind:4,keywordCompletions:gAn(s,c),isNewIdentifierLocation:g}}function RZs(s){switch(s){case 156:return 8;default:pe.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function tAn(s){return s?.kind===80?Oy(s):void 0}function NZs(s,c,g,d,h,_,S,R,T,W){let{symbols:V,contextToken:M,completionKind:ee,isInSnippetScope:re,isNewIdentifierLocation:ge,location:Ie,propertyAccessToConvert:_e,keywordFilters:Ee,symbolToOriginInfoMap:Ne,recommendedCompletion:Te,isJsxInitializer:Ze,isTypeOnlyLocation:We,isJsxIdentifierExpected:Ue,isRightOfOpenTag:$e,isRightOfDotOrQuestionDot:Ye,importStatementCompletion:Tt,insideJsDocTagTypeExpression:ot,symbolToSortTextMap:Qe,hasUnresolvedAutoImports:mt,defaultCommitCharacters:ht}=_,_t=_.literals,Rt=g.getTypeChecker();if(Zne(s.scriptKind)===1){let nt=kZs(Ie,s);if(nt)return nt}let Lt=ji(M,fie);if(Lt&&(Ks(M)||EP(M,Lt.expression))){let nt=APe(Rt,Lt.parent.clauses);_t=_t.filter(Dt=>!nt.hasValue(Dt)),V.forEach((Dt,tr)=>{if(Dt.valueDeclaration&&LF(Dt.valueDeclaration)){let ur=Rt.getConstantValue(Dt.valueDeclaration);ur!==void 0&&nt.hasValue(ur)&&(Ne[tr]={kind:256})}})}let Ke=Ya(),Pt=rAn(s,d);if(Pt&&!ge&&(!V||V.length===0)&&Ee===0)return;let _r=pXt(V,Ke,void 0,M,Ie,T,s,c,g,Mg(d),h,ee,S,d,R,We,_e,Ue,Ze,Tt,Te,Ne,Qe,Ue,$e,W);if(Ee!==0)for(let nt of gAn(Ee,!ot&&n0(s)))(We&&Qde(Ta(nt.name))||!We&&fLs(nt.name)||!_r.has(nt.name))&&(_r.add(nt.name),Gc(Ke,nt,MPe,void 0,!0));for(let nt of tLs(M,T))_r.has(nt.name)||(_r.add(nt.name),Gc(Ke,nt,MPe,void 0,!0));for(let nt of _t){let Dt=GZs(s,S,nt);_r.add(Dt.name),Gc(Ke,Dt,MPe,void 0,!0)}Pt||xZs(s,Ie.pos,_r,Mg(d),Ke);let Gt;if(S.includeCompletionsWithInsertText&&M&&!$e&&!Ye&&(Gt=ji(M,ade))){let nt=nAn(Gt,s,S,d,c,g,R);nt&&Ke.push(nt.entry)}return{flags:_.flags,isGlobalCompletion:re,isIncomplete:S.allowIncompleteCompletions&&mt?!0:void 0,isMemberCompletion:DZs(ee),isNewIdentifierLocation:ge,optionalReplacementSpan:tAn(Ie),entries:Ke,defaultCommitCharacters:ht??ZU(ge)}}function rAn(s,c){return!n0(s)||!!rz(s,c)}function nAn(s,c,g,d,h,_,S){let R=s.clauses,T=_.getTypeChecker(),W=T.getTypeAtLocation(s.parent.expression);if(W&&W.isUnion()&&ue(W.types,V=>V.isLiteral())){let V=APe(T,R),M=Mg(d),ee=_1(c,g),re=x0.createImportAdder(c,_,g,h),ge=[];for(let We of W.types)if(We.flags&1024){pe.assert(We.symbol,"An enum member type should have a symbol"),pe.assert(We.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let Ue=We.symbol.valueDeclaration&&T.getConstantValue(We.symbol.valueDeclaration);if(Ue!==void 0){if(V.hasValue(Ue))continue;V.addValue(Ue)}let $e=x0.typeToAutoImportableTypeNode(T,re,We,s,M);if(!$e)return;let Ye=Rit($e,M,ee);if(!Ye)return;ge.push(Ye)}else if(!V.hasValue(We.value))switch(typeof We.value){case"object":ge.push(We.value.negative?me.createPrefixUnaryExpression(41,me.createBigIntLiteral({negative:!1,base10Value:We.value.base10Value})):me.createBigIntLiteral(We.value));break;case"number":ge.push(We.value<0?me.createPrefixUnaryExpression(41,me.createNumericLiteral(-We.value)):me.createNumericLiteral(We.value));break;case"string":ge.push(me.createStringLiteral(We.value,ee===0));break}if(ge.length===0)return;let Ie=At(ge,We=>me.createCaseClause(We,[])),_e=OF(h,S?.options),Ee=Dit({removeComments:!0,module:d.module,moduleResolution:d.moduleResolution,target:d.target,newLine:E1e(_e)}),Ne=S?We=>Ee.printAndFormatNode(4,We,c,S):We=>Ee.printNode(4,We,c),Te=At(Ie,(We,Ue)=>g.includeCompletionsWithSnippetText?`${Ne(We)}$${Ue+1}`:`${Ne(We)}`).join(_e);return{entry:{name:`${Ee.printNode(4,Ie[0],c)} ...`,kind:"",sortText:c0.GlobalsOrKeywords,insertText:Te,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:g.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function Rit(s,c,g){switch(s.kind){case 184:let d=s.typeName;return Nit(d,c,g);case 200:let h=Rit(s.objectType,c,g),_=Rit(s.indexType,c,g);return h&&_&&me.createElementAccessExpression(h,_);case 202:let S=s.literal;switch(S.kind){case 11:return me.createStringLiteral(S.text,g===0);case 9:return me.createNumericLiteral(S.text,S.numericLiteralFlags)}return;case 197:let R=Rit(s.type,c,g);return R&&(Ir(R)?R:me.createParenthesizedExpression(R));case 187:return Nit(s.exprName,c,g);case 206:pe.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function Nit(s,c,g){if(Ir(s))return s;let d=Bc(s.right.escapedText);return Fbe(d,c)?me.createPropertyAccessExpression(Nit(s.left,c,g),d):me.createElementAccessExpression(Nit(s.left,c,g),me.createStringLiteral(d,g===0))}function DZs(s){switch(s){case 0:case 3:case 2:return!0;default:return!1}}function kZs(s,c){let g=ji(s,d=>{switch(d.kind){case 288:return!0;case 44:case 32:case 80:case 212:return!1;default:return"quit"}});if(g){let d=!!qd(g,32,c),S=g.parent.openingElement.tagName.getText(c)+(d?"":">"),R=Oy(g.tagName),T={name:S,kind:"class",kindModifiers:void 0,sortText:c0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[T],defaultCommitCharacters:ZU(!1)}}}function xZs(s,c,g,d,h){qnt(s).forEach((_,S)=>{if(_===c)return;let R=Bc(S);!g.has(R)&&Uh(R,d)&&(g.add(R),Gc(h,{name:R,kind:"warning",kindModifiers:"",sortText:c0.JavascriptIdentifiers,isFromUncheckedFile:!0,commitCharacters:[]},MPe))})}function gXt(s,c,g){return typeof g=="object"?kP(g)+"n":Xs(g)?zde(s,c,g):JSON.stringify(g)}function GZs(s,c,g){return{name:gXt(s,c,g),kind:"string",kindModifiers:"",sortText:c0.LocationPriority,commitCharacters:[]}}function FZs(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e){var Ye,Tt;let ot,Qe,mt=krt(g,_),ht,_t,Rt=dXt(M),Lt,Ke,Pt,_r=T.getTypeChecker(),Gt=M&&bZs(M),nt=M&&mZs(M)||V;if(M&&hZs(M))ot=V?`this${Gt?"?.":""}[${AXt(S,Ne,W)}]`:`this${Gt?"?.":"."}${W}`;else if((nt||Gt)&&re){ot=nt?V?`[${AXt(S,Ne,W)}]`:`[${W}]`:W,(Gt||re.questionDotToken)&&(ot=`?.${ot}`);let Gr=qd(re,25,S)||qd(re,29,S);if(!Gr)return;let dt=Ac(W,re.name.text)?re.name.end:Gr.end;mt=wA(Gr.getStart(S),dt)}if(ge&&(ot===void 0&&(ot=W),ot=`{${ot}}`,typeof ge!="boolean"&&(mt=Oy(ge,S))),M&&yZs(M)&&re){ot===void 0&&(ot=W);let Gr=Gm(re.pos,S),dt="";Gr&&nPe(Gr.end,Gr.parent,S)&&(dt=";"),dt+=`(await ${re.expression.getText()})`,ot=V?`${dt}${ot}`:`${dt}${Gt?"?.":"."}${ot}`;let st=Gs(re.parent,I1)?re.parent:re.expression;mt=wA(st.getStart(S),re.end)}if(cpe(M)&&(Lt=[gS(M.moduleSpecifier)],Ie&&({insertText:ot,replacementSpan:mt}=HZs(W,Ie,M,_e,S,T,Ne),_t=Ne.includeCompletionsWithSnippetText?!0:void 0)),M?.kind===64&&(Ke=!0),Te===0&&d&&((Ye=Gm(d.pos,S,d))==null?void 0:Ye.kind)!==28&&(uu(d.parent.parent)||Bg(d.parent.parent)||Dg(d.parent.parent)||Lx(d.parent)||((Tt=ji(d.parent,fm))==null?void 0:Tt.getLastToken(S))===d||a0(d.parent)&&Ra(S,d.getEnd()).line!==Ra(S,_).line)&&(Rt="ObjectLiteralMemberWithComma/",Ke=!0),Ne.includeCompletionsWithClassMemberSnippets&&Ne.includeCompletionsWithInsertText&&Te===3&&LZs(s,h,S)){let Gr,dt=iAn(R,T,Ee,Ne,W,s,h,_,d,Ze);if(dt)({insertText:ot,filterText:Qe,isSnippet:_t,importAdder:Gr}=dt),(Gr?.hasFixes()||dt.eraseRange)&&(Ke=!0,Rt="ClassMemberSnippet/");else return}if(M&&Kgn(M)&&({insertText:ot,isSnippet:_t,labelDetails:Pt}=M,Ne.useLabelDetailsInCompletionEntries||(W=W+Pt.detail,Pt=void 0),Rt="ObjectLiteralMethodSnippet/",c=c0.SortBelow(c)),We&&!Ue&&Ne.includeCompletionsWithSnippetText&&Ne.jsxAttributeCompletionStyle&&Ne.jsxAttributeCompletionStyle!=="none"&&!(EN(h.parent)&&h.parent.initializer)){let Gr=Ne.jsxAttributeCompletionStyle==="braces",dt=_r.getTypeOfSymbolAtLocation(s,h);Ne.jsxAttributeCompletionStyle==="auto"&&!(dt.flags&528)&&!(dt.flags&1048576&&de(dt.types,pr=>!!(pr.flags&528)))&&(dt.flags&402653316||dt.flags&1048576&&ue(dt.types,pr=>!!(pr.flags&402686084||nMt(pr)))?(ot=`${xP(W)}=${zde(S,Ne,"$1")}`,_t=!0):Gr=!0),Gr&&(ot=`${xP(W)}={$1}`,_t=!0)}if(ot!==void 0&&!Ne.includeCompletionsWithInsertText)return;(OPe(M)||cpe(M))&&(ht=sAn(M),Ke=!Ie);let Dt=ji(h,Gne);if(Dt){let Gr=Mg(R.getCompilationSettings());if(!Uh(W,Gr))ot=AXt(S,Ne,W),Dt.kind===276&&(A_.setText(S.text),A_.resetTokenState(_),A_.scan()===130&&A_.scan()===80||(ot+=" as "+ZZs(W,Gr)));else if(Dt.kind===276){let dt=Ta(W);dt&&(dt===135||Dye(dt))&&(ot=`${W} as ${W}_`)}}let tr=i9.getSymbolKind(_r,s,h),ur=tr==="warning"||tr==="string"?[]:void 0;return{name:W,kind:tr,kindModifiers:i9.getSymbolModifiers(_r,s),sortText:c,source:Rt,hasAction:Ke?!0:void 0,isRecommended:YZs(s,ee,_r)||void 0,insertText:ot,filterText:Qe,replacementSpan:mt,sourceDisplay:Lt,labelDetails:Pt,isSnippet:_t,isPackageJsonImport:_Zs(M)||void 0,isImportStatementCompletion:!!Ie||void 0,data:ht,commitCharacters:ur,...$e?{symbol:s}:void 0}}function ZZs(s,c){let g=!1,d="",h;for(let _=0;_=65536?2:1)h=s.codePointAt(_),h!==void 0&&(_===0?bd(h,c):s1(h,c))?(g&&(d+="_"),d+=String.fromCodePoint(h),g=!1):g=!0;return g&&(d+="_"),d||"_"}function LZs(s,c,g){return wo(c)?!1:!!(s.flags&106500)&&(xa(c)||c.parent&&c.parent.parent&&PI(c.parent)&&c===c.parent.name&&c.parent.getLastToken(g)===c.parent.name&&xa(c.parent.parent)||c.parent&&Cie(c)&&xa(c.parent))}function iAn(s,c,g,d,h,_,S,R,T,W){let V=ji(S,xa);if(!V)return;let M,ee=h,re=h,ge=c.getTypeChecker(),Ie=S.getSourceFile(),_e=Dit({removeComments:!0,module:g.module,moduleResolution:g.moduleResolution,target:g.target,omitTrailingSemicolon:!1,newLine:E1e(OF(s,W?.options))}),Ee=x0.createImportAdder(Ie,c,d,s),Ne;if(d.includeCompletionsWithSnippetText){M=!0;let Tt=me.createEmptyStatement();Ne=me.createBlock([Tt],!0),qbe(Tt,{kind:0,order:0})}else Ne=me.createBlock([],!0);let Te=0,{modifiers:Ze,range:We,decorators:Ue}=VZs(T,Ie,R),$e=Ze&64&&V.modifierFlagsCache&64,Ye=[];if(x0.addNewNodeForMemberSymbol(_,V,Ie,{program:c,host:s},d,Ee,Tt=>{let ot=0;$e&&(ot|=64),PI(Tt)&&ge.getMemberOverrideModifierStatus(V,Tt,_)===1&&(ot|=16),Ye.length||(Te=Tt.modifierFlagsCache|ot),Tt=me.replaceModifiers(Tt,Te),Ye.push(Tt)},Ne,x0.PreserveOptionalFlags.Property,!!$e),Ye.length){let Tt=_.flags&8192,ot=Te|16|1;Tt?ot|=1024:ot|=136;let Qe=Ze&ot;if(Ze&~ot)return;if(Te&4&&Qe&1&&(Te&=-5),Qe!==0&&!(Qe&1)&&(Te&=-2),Te|=Qe,Ye=Ye.map(ht=>me.replaceModifiers(ht,Te)),Ue?.length){let ht=Ye[Ye.length-1];oQ(ht)&&(Ye[Ye.length-1]=me.replaceDecoratorsAndModifiers(ht,Ue.concat($R(ht)||[])))}let mt=131073;W?ee=_e.printAndFormatSnippetList(mt,me.createNodeArray(Ye),Ie,W):ee=_e.printSnippetList(mt,me.createNodeArray(Ye),Ie)}return{insertText:ee,filterText:re,isSnippet:M,importAdder:Ee,eraseRange:We}}function VZs(s,c,g){if(!s||Ra(c,g).line>Ra(c,s.getEnd()).line)return{modifiers:0};let d=0,h,_,S={pos:g,end:g};if(pi(s.parent)&&(_=PZs(s))){s.parent.modifiers&&(d|=Dw(s.parent.modifiers)&98303,h=s.parent.modifiers.filter(So)||[],S.pos=Math.min(...s.parent.modifiers.map(T=>T.getStart(c))));let R=HY(_);d&R||(d|=R,S.pos=Math.min(S.pos,s.getStart(c))),s.parent.name!==s&&(S.end=s.parent.name.getStart(c))}return{modifiers:d,decorators:h,range:S.posR.getSignaturesOfType(Te,0).length>0);if(Ne.length===1)re=Ne[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ie=R.typeToTypeNode(re,c,ee,void 0,x0.getNoopSymbolTrackerWithResolver({program:d,host:h}));if(!Ie||!x_(Ie))return;let _e;if(_.includeCompletionsWithSnippetText){let Ne=me.createEmptyStatement();_e=me.createBlock([Ne],!0),qbe(Ne,{kind:0,order:0})}else _e=me.createBlock([],!0);let Ee=Ie.parameters.map(Ne=>me.createParameterDeclaration(void 0,Ne.dotDotDotToken,Ne.name,void 0,void 0,Ne.initializer));return me.createMethodDeclaration(void 0,void 0,W,void 0,void 0,Ee,void 0,_e)}default:return}}function Dit(s){let c,g=xo.createWriter(uN(s)),d=MP(s,g),h={...g,write:ee=>_(ee,()=>g.write(ee)),nonEscapingWrite:g.write,writeLiteral:ee=>_(ee,()=>g.writeLiteral(ee)),writeStringLiteral:ee=>_(ee,()=>g.writeStringLiteral(ee)),writeSymbol:(ee,re)=>_(ee,()=>g.writeSymbol(ee,re)),writeParameter:ee=>_(ee,()=>g.writeParameter(ee)),writeComment:ee=>_(ee,()=>g.writeComment(ee)),writeProperty:ee=>_(ee,()=>g.writeProperty(ee))};return{printSnippetList:S,printAndFormatSnippetList:T,printNode:W,printAndFormatNode:M};function _(ee,re){let ge=xP(ee);if(ge!==ee){let Ie=g.getTextPos();re();let _e=g.getTextPos();c=Ft(c||(c=[]),{newText:ge,span:{start:Ie,length:_e-Ie}})}else re()}function S(ee,re,ge){let Ie=R(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function R(ee,re,ge){return c=void 0,h.clear(),d.writeList(ee,re,ge,h),h.getText()}function T(ee,re,ge,Ie){let _e={text:R(ee,re,ge),getLineAndCharacterOfPosition(Ze){return Ra(this,Ze)}},Ee=gPe(Ie,ge),Ne=er(re,Ze=>{let We=xo.assignPositionsToNode(Ze);return Im.formatNodeGivenIndentation(We,_e,ge.languageVariant,0,0,{...Ie,options:Ee})}),Te=c?bo(Nn(Ne,c),(Ze,We)=>yn(Ze.span,We.span)):Ne;return xo.applyChanges(_e.text,Te)}function W(ee,re,ge){let Ie=V(ee,re,ge);return c?xo.applyChanges(Ie,c):Ie}function V(ee,re,ge){return c=void 0,h.clear(),d.writeNode(ee,re,ge,h),h.getText()}function M(ee,re,ge,Ie){let _e={text:V(ee,re,ge),getLineAndCharacterOfPosition(We){return Ra(this,We)}},Ee=gPe(Ie,ge),Ne=xo.assignPositionsToNode(re),Te=Im.formatNodeGivenIndentation(Ne,_e,ge.languageVariant,0,0,{...Ie,options:Ee}),Ze=c?bo(Nn(Te,c),(We,Ue)=>yn(We.span,Ue.span)):Te;return xo.applyChanges(_e.text,Ze)}}function sAn(s){let c=s.fileName?void 0:l2(s.moduleSymbol.name),g=s.isFromPackageJson?!0:void 0;return cpe(s)?{exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,ambientModuleName:c,fileName:s.fileName,isPackageJsonImport:g}:{exportName:s.exportName,exportMapKey:s.exportMapKey,fileName:s.fileName,ambientModuleName:s.fileName?void 0:l2(s.moduleSymbol.name),isPackageJsonImport:s.isFromPackageJson?!0:void 0}}function MZs(s,c,g){let d=s.exportName==="default",h=!!s.isPackageJsonImport;return zgn(s)?{kind:32,exportName:s.exportName,exportMapKey:s.exportMapKey,moduleSpecifier:s.moduleSpecifier,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}:{kind:4,exportName:s.exportName,exportMapKey:s.exportMapKey,symbolName:c,fileName:s.fileName,moduleSymbol:g,isDefaultExport:d,isFromPackageJson:h}}function HZs(s,c,g,d,h,_,S){let R=c.replacementSpan,T=xP(zde(h,S,g.moduleSpecifier)),W=g.isDefaultExport?1:g.exportName==="export="?2:0,V=S.includeCompletionsWithSnippetText?"$1":"",M=x0.getImportKind(h,W,_,!0),ee=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${Vi(156)} `:" ",ge=ee?`${Vi(156)} `:"",Ie=d?";":"";switch(M){case 3:return{replacementSpan:R,insertText:`import${re}${xP(s)}${V} = require(${T})${Ie}`};case 1:return{replacementSpan:R,insertText:`import${re}${xP(s)}${V} from ${T}${Ie}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${xP(s)} from ${T}${Ie}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ge}${xP(s)}${V} } from ${T}${Ie}`}}}function AXt(s,c,g){return/^\d+$/.test(g)?g:zde(s,c,g)}function YZs(s,c,g){return s===c||!!(s.flags&1048576)&&g.getExportSymbolOfSymbol(s)===c}function dXt(s){if(OPe(s))return l2(s.moduleSymbol.name);if(cpe(s))return s.moduleSpecifier;if(s?.kind===1)return"ThisProperty/";if(s?.kind===64)return"TypeOnlyAlias/"}function pXt(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie,_e,Ee,Ne,Te,Ze,We,Ue,$e,Ye,Tt=!1){let ot=Fg(),Qe=gLs(d,h),mt=C1e(S),ht=T.getTypeChecker(),_t=new Map;for(let Ke=0;Kepr.getSourceFile()===h.getSourceFile()));_t.set(nt,dt),Gc(c,Gr,MPe,void 0,!0)}return V("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(Fg()-ot)),{has:Ke=>_t.has(Ke),add:Ke=>_t.set(Ke,!0)};function Rt(Ke,Pt){var _r;let Gt=Ke.flags;if(h.parent&&Cf(h.parent))return!0;if(Qe&&Gs(Qe,nc)&&(Ke.valueDeclaration===Qe||Nu(Qe.name)&&Qe.name.elements.some(tr=>tr===Ke.valueDeclaration)))return!1;let nt=Ke.valueDeclaration??((_r=Ke.declarations)==null?void 0:_r[0]);if(Qe&&nt){if(Si(Qe)&&Si(nt)){let tr=Qe.parent.parameters;if(nt.pos>=Qe.pos&&nt.pos=Qe.pos&&nt.posgXt(g,S,Te)===h.name);return Ne!==void 0?{type:"literal",literal:Ne}:X(W,(Te,Ze)=>{let We=re[Ze],Ue=xit(Te,Mg(R),We,ee,T.isJsxIdentifierExpected);return Ue&&Ue.name===h.name&&(h.source==="ClassMemberSnippet/"&&Te.flags&106500||h.source==="ObjectLiteralMethodSnippet/"&&Te.flags&8196||dXt(We)===h.source||h.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Te,location:M,origin:We,contextToken:ge,previousToken:Ie,isJsxInitializer:_e,isTypeOnlyLocation:Ee}:void 0})||{type:"none"}}function JZs(s,c,g,d,h,_,S,R,T){let W=s.getTypeChecker(),V=s.getCompilerOptions(),{name:M,source:ee,data:re}=h,{previousToken:ge,contextToken:Ie}=kit(d,g);if(Zz(g,d,ge))return Pit.getStringLiteralCompletionDetails(M,g,d,ge,s,_,T,R);let _e=oAn(s,c,g,d,h,_,R);switch(_e.type){case"request":{let{request:Ee}=_e;switch(Ee.kind){case 1:return n5.getJSDocTagNameCompletionDetails(M);case 2:return n5.getJSDocTagCompletionDetails(M);case 3:return n5.getJSDocParameterNameCompletionDetails(M);case 4:return jt(Ee.keywordCompletions,Ne=>Ne.name===M)?fXt(M,"keyword",5):void 0;default:return pe.assertNever(Ee)}}case"symbol":{let{symbol:Ee,location:Ne,contextToken:Te,origin:Ze,previousToken:We}=_e,{codeActions:Ue,sourceDisplay:$e}=UZs(M,Ne,Te,Ze,Ee,s,_,V,g,d,We,S,R,re,ee,T),Ye=lXt(Ze)?Ze.symbolName:Ee.name;return IXt(Ee,Ye,W,g,Ne,T,Ue,$e)}case"literal":{let{literal:Ee}=_e;return fXt(gXt(g,R,Ee),"string",typeof Ee=="string"?8:7)}case"cases":{let Ee=nAn(Ie.parent,g,R,s.getCompilerOptions(),_,s,void 0);if(Ee?.importAdder.hasFixes()){let{entry:Ne,importAdder:Te}=Ee,Ze=xo.ChangeTracker.with({host:_,formatContext:S,preferences:R},Te.writeFixes);return{name:Ne.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Ze,description:IQ([Z.Includes_imports_of_types_referenced_by_0,M])}]}}return{name:M,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return uAn().some(Ee=>Ee.name===M)?fXt(M,"keyword",5):void 0;default:pe.assertNever(_e)}}function fXt(s,c,g){return HPe(s,"",c,[SE(s,g)])}function IXt(s,c,g,d,h,_,S,R){let{displayParts:T,documentation:W,symbolKind:V,tags:M}=g.runWithCancellationToken(_,ee=>i9.getSymbolDisplayPartsDocumentationAndSymbolKind(ee,s,d,h,h,7));return HPe(c,i9.getSymbolModifiers(g,s),V,T,W,M,S,R)}function HPe(s,c,g,d,h,_,S,R){return{name:s,kindModifiers:c,kind:g,displayParts:d,documentation:h,tags:_,codeActions:S,source:R,sourceDisplay:R}}function UZs(s,c,g,d,h,_,S,R,T,W,V,M,ee,re,ge,Ie){if(re?.moduleSpecifier&&V&&mAn(g||V,T).replacementSpan)return{codeActions:void 0,sourceDisplay:[gS(re.moduleSpecifier)]};if(ge==="ClassMemberSnippet/"){let{importAdder:Ue,eraseRange:$e}=iAn(S,_,R,ee,s,h,c,W,g,M);if(Ue?.hasFixes()||$e)return{sourceDisplay:void 0,codeActions:[{changes:xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},Tt=>{Ue&&Ue.writeFixes(Tt),$e&&Tt.deleteRange(T,$e)}),description:Ue?.hasFixes()?IQ([Z.Includes_imports_of_types_referenced_by_0,s]):IQ([Z.Update_modifiers_of_0,s])}]}}if(Ugn(d)){let Ue=x0.getPromoteTypeOnlyCompletionAction(T,d.declaration.name,_,S,M,ee);return pe.assertIsDefined(Ue,"Expected to have a code action for promoting type-only alias"),{codeActions:[Ue],sourceDisplay:void 0}}if(ge==="ObjectLiteralMemberWithComma/"&&g){let Ue=xo.ChangeTracker.with({host:S,formatContext:M,preferences:ee},$e=>$e.insertText(T,g.end,","));if(Ue)return{sourceDisplay:void 0,codeActions:[{changes:Ue,description:IQ([Z.Add_missing_comma_for_object_member_completion_0,s])}]}}if(!d||!(OPe(d)||cpe(d)))return{codeActions:void 0,sourceDisplay:void 0};let _e=d.isFromPackageJson?S.getPackageJsonAutoImportProvider().getTypeChecker():_.getTypeChecker(),{moduleSymbol:Ee}=d,Ne=_e.getMergedSymbol(FC(h.exportSymbol||h,_e)),Te=g?.kind===30&&eI(g.parent),{moduleSpecifier:Ze,codeAction:We}=x0.getImportCompletionAction(Ne,Ee,re?.exportMapKey,T,s,Te,S,_,M,V&&Ir(V)?V.getStart(T):W,ee,Ie);return pe.assert(!re?.moduleSpecifier||Ze===re.moduleSpecifier),{sourceDisplay:[gS(Ze)],codeActions:[We]}}function KZs(s,c,g,d,h,_,S){let R=oAn(s,c,g,d,h,_,S);return R.type==="symbol"?R.symbol:void 0}var aAn=(s=>(s[s.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",s[s.Global=1]="Global",s[s.PropertyAccess=2]="PropertyAccess",s[s.MemberLike=3]="MemberLike",s[s.String=4]="String",s[s.None=5]="None",s))(aAn||{});function jZs(s,c,g){return X(c&&(c.isUnion()?c.types:[c]),d=>{let h=d&&d.symbol;return h&&h.flags&424&&!lbe(h)?hXt(h,s,g):void 0})}function zZs(s,c,g,d){let{parent:h}=s;switch(s.kind){case 80:return tPe(s,d);case 64:switch(h.kind){case 261:return d.getContextualType(h.initializer);case 227:return d.getTypeAtLocation(h.left);case 292:return d.getContextualTypeForJsxAttribute(h);default:return}case 105:return d.getContextualType(h);case 84:let _=Gs(h,fie);return _?ent(_,d):void 0;case 19:return pie(h)&&!bN(h.parent)&&!P3(h.parent)?d.getContextualTypeForJsxAttribute(h.parent):void 0;default:let S=X1e.getArgumentInfoForCompletions(s,c,g,d);return S?d.getContextualTypeForArgumentAtIndex(S.invocation,S.argumentIndex):rPe(s.kind)&&fo(h)&&rPe(h.operatorToken.kind)?d.getTypeAtLocation(h.left):d.getContextualType(s,4)||d.getContextualType(s)}}function hXt(s,c,g){let d=g.getAccessibleSymbolChain(s,c,-1,!1);return d?ma(d):s.parent&&(qZs(s.parent)?s:hXt(s.parent,c,g))}function qZs(s){var c;return!!((c=s.declarations)!=null&&c.some(g=>g.kind===308))}function cAn(s,c,g,d,h,_,S,R,T,W){let V=s.getTypeChecker(),M=rAn(g,d),ee=Fg(),re=Jc(g,h);c("getCompletionData: Get current token: "+(Fg()-ee)),ee=Fg();let ge=$L(g,h,re);c("getCompletionData: Is inside comment: "+(Fg()-ee));let Ie=!1,_e=!1,Ee=!1;if(ge){if(eMt(g,h)){if(g.text.charCodeAt(h-1)===64)return{kind:1};{let $r=PB(h,g);if(!/[^*|\s(/)]/.test(g.text.substring($r,h)))return{kind:2}}}let Ot=rLs(re,h);if(Ot){if(Ot.tagName.pos<=h&&h<=Ot.tagName.end)return{kind:1};if(SN(Ot))_e=!0;else{let $r=Zi(Ot);if($r&&(re=Jc(g,h),(!re||!HT(re)&&(re.parent.kind!==349||re.parent.name!==re))&&(Ie=Hn($r))),!Ie&&cS(Ot)&&(sf(Ot.name)||Ot.name.pos<=h&&h<=Ot.name.end))return{kind:3,tag:Ot}}}if(!Ie&&!_e){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}ee=Fg();let Ne=!Ie&&!_e&&n0(g),Te=kit(h,g),Ze=Te.previousToken,We=Te.contextToken;c("getCompletionData: Get previous token: "+(Fg()-ee));let Ue=re,$e,Ye=!1,Tt=!1,ot=!1,Qe=!1,mt=!1,ht=!1,_t,Rt=Lb(g,h),Lt=0,Ke=!1,Pt=0,_r;if(We){let Ot=mAn(We,g);if(Ot.keywordCompletion){if(Ot.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[wZs(Ot.keywordCompletion)],isNewIdentifierLocation:Ot.isNewIdentifierLocation};Lt=RZs(Ot.keywordCompletion)}if(Ot.replacementSpan&&_.includeCompletionsForImportStatements&&_.includeCompletionsWithInsertText&&(Pt|=2,_t=Ot,Ke=Ot.isNewIdentifierLocation),!Ot.replacementSpan&&Qu(We))return c("Returning an empty list because completion was requested in an invalid position."),Lt?eAn(Lt,Ne,Cs().isNewIdentifierLocation):void 0;let $r=We.parent;if(We.kind===25||We.kind===29)switch(Ye=We.kind===25,Tt=We.kind===29,$r.kind){case 212:$e=$r,Ue=$e.expression;let ri=oU($e);if(sf(ri)||(Zl(Ue)||bu(Ue))&&Ue.end===We.pos&&Ue.getChildCount(g)&&Ei(Ue.getChildren(g)).kind!==22)return;break;case 167:Ue=$r.left;break;case 268:Ue=$r.name;break;case 206:Ue=$r;break;case 237:Ue=$r.getFirstToken(g),pe.assert(Ue.kind===102||Ue.kind===105);break;default:return}else if(!_t){if($r&&$r.kind===212&&(We=$r,$r=$r.parent),re.parent===Rt)switch(re.kind){case 32:(re.parent.kind===285||re.parent.kind===287)&&(Rt=re);break;case 44:re.parent.kind===286&&(Rt=re);break}switch($r.kind){case 288:We.kind===44&&(Qe=!0,Rt=We);break;case 227:if(!hAn($r))break;case 286:case 285:case 287:ht=!0,We.kind===30&&(ot=!0,Rt=We);break;case 295:case 294:(Ze.kind===20||Ze.kind===80&&Ze.parent.kind===292)&&(ht=!0);break;case 292:if($r.initializer===Ze&&Ze.endz3(Ot?R.getPackageJsonAutoImportProvider():s,R));if(Ye||Tt)Ns();else if(ot)tr=V.getJsxIntrinsicTagNamesAt(Rt),pe.assertEachIsDefined(tr,"getJsxIntrinsicTagNames() should all be defined"),Ic(),nt=1,Lt=0;else if(Qe){let Ot=We.parent.parent.openingElement.tagName,$r=V.getSymbolAtLocation(Ot);$r&&(tr=[$r]),nt=1,Lt=0}else if(!Ic())return Lt?eAn(Lt,Ne,Ke):void 0;c("getCompletionData: Semantic work: "+(Fg()-Gt));let zt=Ze&&zZs(Ze,h,g,V),Br=!Gs(Ze,mA)&&!ht?Xt(zt&&(zt.isUnion()?zt.types:[zt]),Ot=>Ot.isLiteral()&&!(Ot.flags&1024)?Ot.value:void 0):[],mn=Ze&&zt&&jZs(Ze,zt,V);return{kind:0,symbols:tr,completionKind:nt,isInSnippetScope:Ee,propertyAccessToConvert:$e,isNewIdentifierLocation:Ke,location:Rt,keywordFilters:Lt,literals:Br,symbolToOriginInfoMap:Gr,recommendedCompletion:mn,previousToken:Ze,contextToken:We,isJsxInitializer:mt,insideJsDocTagTypeExpression:Ie,symbolToSortTextMap:dt,isTypeOnlyLocation:st,isJsxIdentifierExpected:ht,isRightOfOpenTag:ot,isRightOfDotOrQuestionDot:Ye||Tt,importStatementCompletion:_t,hasUnresolvedAutoImports:Dt,flags:Pt,defaultCommitCharacters:_r};function jn(Ot){switch(Ot.kind){case 342:case 349:case 343:case 345:case 347:case 350:case 351:return!0;case 346:return!!Ot.constraint;default:return!1}}function Zi(Ot){if(jn(Ot)){let $r=ZB(Ot)?Ot.constraint:Ot.typeExpression;return $r&&$r.kind===310?$r:void 0}if(bz(Ot)||t9e(Ot))return Ot.class}function Ns(){nt=2;let Ot=ky(Ue),$r=Ot&&!Ue.isTypeOf||ww(Ue.parent)||l1e(We,g,V),ri=kVe(Ue);if(fC(Ue)||Ot||jo(Ue)){let ao=xh(Ue.parent);ao&&(Ke=!0,_r=[]);let Bs=V.getSymbolAtLocation(Ue);if(Bs&&(Bs=FC(Bs,V),Bs.flags&1920)){let Ys=V.getExportsOfModule(Bs);pe.assertEachIsDefined(Ys,"getExportsOfModule() should all be defined");let tn=ci=>V.isValidPropertyAccess(Ot?Ue:Ue.parent,ci.name),wn=ci=>CXt(ci,V),Mn=ao?ci=>{var es;return!!(ci.flags&1920)&&!((es=ci.declarations)!=null&&es.every(Wi=>Wi.parent===Ue.parent))}:ri?ci=>wn(ci)||tn(ci):$r||Ie?wn:tn;for(let ci of Ys)Mn(ci)&&tr.push(ci);if(!$r&&!Ie&&Bs.declarations&&Bs.declarations.some(ci=>ci.kind!==308&&ci.kind!==268&&ci.kind!==267)){let ci=V.getTypeOfSymbolAtLocation(Bs,Ue).getNonOptionalType(),es=!1;if(ci.isNullableType()){let Wi=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Wi||Tt)&&(ci=ci.getNonNullableType(),Wi&&(es=!0))}An(ci,!!(Ue.flags&65536),es)}return}}if(!$r||OY(Ue)){V.tryGetThisTypeAt(Ue,!1);let ao=V.getTypeAtLocation(Ue).getNonOptionalType();if($r)An(ao.getNonNullableType(),!1,!1);else{let Bs=!1;if(ao.isNullableType()){let Ys=Ye&&!Tt&&_.includeAutomaticOptionalChainCompletions!==!1;(Ys||Tt)&&(ao=ao.getNonNullableType(),Ys&&(Bs=!0))}An(ao,!!(Ue.flags&65536),Bs)}}}function An(Ot,$r,ri){Ot.getStringIndexType()&&(Ke=!0,_r=[]),Tt&&jt(Ot.getCallSignatures())&&(Ke=!0,_r??(_r=RN));let ao=Ue.kind===206?Ue:Ue.parent;if(M)for(let Bs of Ot.getApparentProperties())V.isValidPropertyAccessForCompletions(ao,Ot,Bs)&&si(Bs,!1,ri);else tr.push(...Me(Lit(Ot,V),Bs=>V.isValidPropertyAccessForCompletions(ao,Ot,Bs)));if($r&&_.includeCompletionsWithInsertText){let Bs=V.getPromisedTypeOfPromise(Ot);if(Bs)for(let Ys of Bs.getApparentProperties())V.isValidPropertyAccessForCompletions(ao,Bs,Ys)&&si(Ys,!0,ri)}}function si(Ot,$r,ri){var ao;let Bs=X(Ot.declarations,Mn=>Gs(Il(Mn),Un));if(Bs){let Mn=ks(Bs.expression),ci=Mn&&V.getSymbolAtLocation(Mn),es=ci&&hXt(ci,We,V),Wi=es&&kg(es);if(Wi&&Zy(pr,Wi)){let Vn=tr.length;tr.push(es),dt[kg(es)]=c0.GlobalsOrKeywords;let Ui=es.parent;if(!Ui||!WD(Ui)||V.tryGetMemberInModuleExportsAndProperties(es.name,Ui)!==es)Gr[Vn]={kind:wn(2)};else{let gs=Xr(l2(Ui.name))?(ao=FJ(Ui))==null?void 0:ao.fileName:void 0,{moduleSpecifier:fs}=(ur||(ur=x0.createImportSpecifierResolver(g,s,R,_))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:gs,isFromPackageJson:!1,moduleSymbol:Ui,symbol:es,targetFlags:FC(es,V).flags}],h,JL(Rt))||{};if(fs){let bi={kind:wn(6),moduleSymbol:Ui,isDefaultExport:!1,symbolName:es.name,exportName:es.name,fileName:gs,moduleSpecifier:fs};Gr[Vn]=bi}}}else if(_.includeCompletionsWithInsertText){if(Wi&&pr.has(Wi))return;tn(Ot),Ys(Ot),tr.push(Ot)}}else tn(Ot),Ys(Ot),tr.push(Ot);function Ys(Mn){cLs(Mn)&&(dt[kg(Mn)]=c0.LocalDeclarationPriority)}function tn(Mn){_.includeCompletionsWithInsertText&&($r&&Zy(pr,kg(Mn))?Gr[tr.length]={kind:wn(8)}:ri&&(Gr[tr.length]={kind:16}))}function wn(Mn){return ri?Mn|16:Mn}}function ks(Ot){return Ir(Ot)?Ot:jo(Ot)?ks(Ot.expression):void 0}function Ic(){return(Pr()||Pn()||ya()||pt()||on()||it()||su()||nr()||Zn()||(Gl(),1))===1}function su(){return Kr(We)?(nt=5,Ke=!0,Lt=4,1):0}function Zn(){let Ot=hr(We),$r=Ot&&V.getContextualType(Ot.attributes);if(!$r)return 0;let ri=Ot&&V.getContextualType(Ot.attributes,4);return tr=Nn(tr,In(Zit($r,ri,Ot.attributes,V),Ot.attributes.properties)),Bt(),nt=3,Ke=!1,1}function ya(){return _t?(Ke=!0,Oi(),1):0}function Gl(){Lt=Dn(We)?5:1,nt=1,{isNewIdentifierLocation:Ke,defaultCommitCharacters:_r}=Cs(),Ze!==We&&pe.assert(!!Ze,"Expected 'contextToken' to be defined when different from 'previousToken'.");let Ot=Ze!==We?Ze.getStart():h,$r=tl(We,Ot,g)||g;Ee=Wo($r);let ri=(st?0:111551)|788968|1920|2097152,ao=Ze&&!JL(Ze);tr=Nn(tr,V.getSymbolsInScope($r,ri)),pe.assertEachIsDefined(tr,"getSymbolsInScope() should all be defined");for(let Bs=0;Bstn.getSourceFile()===g)&&(dt[kg(Ys)]=c0.GlobalsOrKeywords),ao&&!(Ys.flags&111551)){let tn=Ys.declarations&&de(Ys.declarations,rN);if(tn){let wn={kind:64,declaration:tn};Gr[Bs]=wn}}}if(_.includeCompletionsWithInsertText&&$r.kind!==308){let Bs=V.tryGetThisTypeAt($r,!1,xa($r.parent)?$r:void 0);if(Bs&&!aLs(Bs,g,V))for(let Ys of Lit(Bs,V))Gr[tr.length]={kind:1},tr.push(Ys),dt[kg(Ys)]=c0.SuggestedClassMembers}Oi(),st&&(Lt=We&&Ed(We.parent)?6:7)}function ba(){var Ot;return _t?!0:_.includeCompletionsForModuleExports?g.externalModuleIndicator||g.commonJsModuleIndicator||Lrt(s.getCompilerOptions())?!0:((Ot=s.getSymlinkCache)==null?void 0:Ot.call(s).hasAnySymlinks())||!!s.getCompilerOptions().paths||oMt(s):!1}function Wo(Ot){switch(Ot.kind){case 308:case 229:case 295:case 242:return!0;default:return Lc(Ot)}}function hc(){return Ie||_e||!!_t&&nN(Rt.parent)||!yr(We)&&(l1e(We,g,V)||ww(Rt)||hn(We))}function yr(Ot){return Ot&&(Ot.kind===114&&(Ot.parent.kind===187||CN(Ot.parent))||Ot.kind===131&&Ot.parent.kind===183)}function hn(Ot){if(Ot){let $r=Ot.parent.kind;switch(Ot.kind){case 59:return $r===173||$r===172||$r===170||$r===261||lP($r);case 64:return $r===266||$r===169;case 130:return $r===235;case 30:return $r===184||$r===217;case 96:return $r===169;case 152:return $r===239}}return!1}function Oi(){var Ot,$r;if(!ba()||(pe.assert(!S?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),S&&!S.source))return;Pt|=1;let ao=Ze===We&&_t?"":Ze&&Ir(Ze)?Ze.text.toLowerCase():"",Bs=(Ot=R.getModuleSpecifierCache)==null?void 0:Ot.call(R),Ys=S1e(g,R,s,_,W),tn=($r=R.getPackageJsonAutoImportProvider)==null?void 0:$r.call(R),wn=S?void 0:jie(g,_,R);jgn("collectAutoImports",R,ur||(ur=x0.createImportSpecifierResolver(g,s,R,_)),s,h,_,!!_t,JL(Rt),ci=>{Ys.search(g.path,ot,(es,Wi)=>{if(!Uh(es,Mg(R.getCompilationSettings()))||!S&&WY(es)||!st&&!_t&&!(Wi&111551)||st&&!(Wi&790504))return!1;let Vn=es.charCodeAt(0);return ot&&(Vn<65||Vn>90)?!1:S?!0:EAn(es,ao)},(es,Wi,Vn,Ui)=>{if(S&&!jt(es,Ag=>S.source===l2(Ag.moduleSymbol.name))||(es=Me(es,Mn),!es.length))return;let gs=ci.tryResolve(es,Vn)||{};if(gs==="failed")return;let fs=es[0],bi;gs!=="skipped"&&({exportInfo:fs=es[0],moduleSpecifier:bi}=gs);let mc=fs.exportKind===1,gg=mc&&W7(pe.checkDefined(fs.symbol))||pe.checkDefined(fs.symbol);lo(gg,{kind:bi?32:4,moduleSpecifier:bi,symbolName:Wi,exportMapKey:Ui,exportName:fs.exportKind===2?"export=":pe.checkDefined(fs.symbol).name,fileName:fs.moduleFileName,isDefaultExport:mc,moduleSymbol:fs.moduleSymbol,isFromPackageJson:fs.isFromPackageJson})}),Dt=ci.skippedAny(),Pt|=ci.resolvedAny()?8:0,Pt|=ci.resolvedBeyondLimit()?16:0});function Mn(ci){return dnt(ci.isFromPackageJson?tn:s,g,Gs(ci.moduleSymbol.valueDeclaration,ll),ci.moduleSymbol,_,wn,ir(ci.isFromPackageJson),Bs)}}function lo(Ot,$r){let ri=kg(Ot);dt[ri]!==c0.GlobalsOrKeywords&&(Gr[tr.length]=$r,dt[ri]=_t?c0.LocationPriority:c0.AutoImportSuggestions,tr.push(Ot))}function pa(Ot,$r){wo(Rt)||Ot.forEach(ri=>{if(!Oa(ri))return;let ao=xit(ri,Mg(d),void 0,0,!1);if(!ao)return;let{name:Bs}=ao,Ys=WZs(ri,Bs,$r,s,R,d,_,T);if(!Ys)return;let tn={kind:128,...Ys};Pt|=32,Gr[tr.length]=tn,tr.push(ri)})}function Oa(Ot){return!!(Ot.flags&8196)}function tl(Ot,$r,ri){let ao=Ot;for(;ao&&!brt(ao,$r,ri);)ao=ao.parent;return ao}function Qu(Ot){let $r=Fg(),ri=Tu(Ot)||Ni(Ot)||bn(Ot)||Tg(Ot)||eQ(Ot);return c("getCompletionsAtPosition: isCompletionListBlocker: "+(Fg()-$r)),ri}function Tg(Ot){if(Ot.kind===12)return!0;if(Ot.kind===32&&Ot.parent){if(Rt===Ot.parent&&(Rt.kind===287||Rt.kind===286))return!1;if(Ot.parent.kind===287)return Rt.parent.kind!==287;if(Ot.parent.kind===288||Ot.parent.kind===286)return!!Ot.parent.parent&&Ot.parent.parent.kind===285}return!1}function Cs(){if(We){let Ot=We.parent.kind,$r=Fit(We);switch($r){case 28:switch(Ot){case 214:case 215:{let ri=We.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!0}}case 227:return{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0};case 177:case 185:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 210:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 21:switch(Ot){case 214:case 215:{let ri=We.parent.expression;return Ra(g,ri.end).line!==Ra(g,h).line?{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!0}}case 218:return{defaultCommitCharacters:Tit,isNewIdentifierLocation:!0};case 177:case 197:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 23:switch(Ot){case 210:case 182:case 190:case 168:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 144:case 145:case 102:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};case 25:switch(Ot){case 268:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 19:switch(Ot){case 264:case 211:return{defaultCommitCharacters:[],isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 64:switch(Ot){case 261:case 227:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!0};default:return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}case 16:return{defaultCommitCharacters:RN,isNewIdentifierLocation:Ot===229};case 17:return{defaultCommitCharacters:RN,isNewIdentifierLocation:Ot===240};case 134:return Ot===175||Ot===305?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!1};case 42:return Ot===175?{defaultCommitCharacters:[],isNewIdentifierLocation:!0}:{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}if(YPe($r))return{defaultCommitCharacters:[],isNewIdentifierLocation:!0}}return{defaultCommitCharacters:RN,isNewIdentifierLocation:!1}}function Tu(Ot){return(tEe(Ot)||Ere(Ot))&&(a1e(Ot,h)||h===Ot.end&&(!!Ot.isUnterminated||tEe(Ot)))}function Pr(){let Ot=sLs(We);if(!Ot)return 0;let ri=(mf(Ot.parent)?Ot.parent:void 0)||Ot,ao=IAn(ri,V);if(!ao)return 0;let Bs=V.getTypeFromTypeNode(ri),Ys=Lit(ao,V),tn=Lit(Bs,V),wn=new Set;return tn.forEach(Mn=>wn.add(Mn.escapedName)),tr=Nn(tr,Me(Ys,Mn=>!wn.has(Mn.escapedName))),nt=0,Ke=!0,1}function Pn(){if(We?.kind===26)return 0;let Ot=tr.length,$r=$Zs(We,h,g);if(!$r)return 0;nt=0;let ri,ao;if($r.kind===211){let Bs=lLs($r,V);if(Bs===void 0)return $r.flags&67108864?2:0;let Ys=V.getContextualType($r,4),tn=(Ys||Bs).getStringIndexType(),wn=(Ys||Bs).getNumberIndexType();if(Ke=!!tn||!!wn,ri=Zit(Bs,Ys,$r,V),ao=$r.properties,ri.length===0&&!wn)return 0}else{pe.assert($r.kind===207),Ke=!1;let Bs=Rw($r.parent);if(!I7(Bs))return pe.fail("Root declaration is not variable-like.");let Ys=WT(Bs)||!!kh(Bs)||Bs.parent.parent.kind===251;if(!Ys&&Bs.kind===170&&(un(Bs.parent)?Ys=!!V.getContextualType(Bs.parent):(Bs.parent.kind===175||Bs.parent.kind===179)&&(Ys=un(Bs.parent.parent)&&!!V.getContextualType(Bs.parent.parent))),Ys){let tn=V.getTypeAtLocation($r);if(!tn)return 2;ri=V.getPropertiesOfType(tn).filter(wn=>V.isPropertyAccessible($r,!1,!1,tn,wn)),ao=$r.elements}}if(ri&&ri.length>0){let Bs=Mt(ri,pe.checkDefined(ao));tr=Nn(tr,Bs),Bt(),$r.kind===211&&_.includeCompletionsWithObjectLiteralMethodSnippets&&_.includeCompletionsWithInsertText&&(fr(Ot),pa(Bs,$r))}return 1}function pt(){if(!We)return 0;let Ot=We.kind===19||We.kind===28?Gs(We.parent,Gne):JVe(We)?Gs(We.parent.parent,Gne):void 0;if(!Ot)return 0;JVe(We)||(Lt=8);let{moduleSpecifier:$r}=Ot.kind===276?Ot.parent.parent:Ot.parent;if(!$r)return Ke=!0,Ot.kind===276?2:0;let ri=V.getSymbolAtLocation($r);if(!ri)return Ke=!0,2;nt=3,Ke=!1;let ao=V.getExportsAndPropertiesOfModule(ri),Bs=new Set(Ot.elements.filter(tn=>!Hn(tn)).map(tn=>CF(tn.propertyName||tn.name))),Ys=ao.filter(tn=>tn.escapedName!=="default"&&!Bs.has(tn.escapedName));return tr=Nn(tr,Ys),Ys.length||(Lt=0),1}function on(){if(We===void 0)return 0;let Ot=We.kind===19||We.kind===28?Gs(We.parent,CU):We.kind===59?Gs(We.parent.parent,CU):void 0;if(Ot===void 0)return 0;let $r=new Set(Ot.elements.map(XAe));return tr=Me(V.getTypeAtLocation(Ot).getApparentProperties(),ri=>!$r.has(ri.escapedName)),1}function it(){var Ot;let $r=We&&(We.kind===19||We.kind===28)?Gs(We.parent,mv):void 0;if(!$r)return 0;let ri=ji($r,Hp(ll,xh));return nt=5,Ke=!1,(Ot=ri.locals)==null||Ot.forEach((ao,Bs)=>{var Ys,tn;tr.push(ao),(tn=(Ys=ri.symbol)==null?void 0:Ys.exports)!=null&&tn.has(Bs)&&(dt[kg(ao)]=c0.OptionalMember)}),1}function nr(){let Ot=iLs(g,We,Rt,h);if(!Ot)return 0;if(nt=3,Ke=!0,Lt=We.kind===42?0:xa(Ot)?2:3,!xa(Ot))return 1;let $r=We.kind===27?We.parent.parent:We.parent,ri=PI($r)?o_($r):0;if(We.kind===80&&!Hn(We))switch(We.getText()){case"private":ri=ri|2;break;case"static":ri=ri|256;break;case"override":ri=ri|16;break}if(fl($r)&&(ri|=256),!(ri&2)){let ao=xa(Ot)&&ri&16?J_(BB(Ot)):R7(Ot),Bs=er(ao,Ys=>{let tn=V.getTypeAtLocation(Ys);return ri&256?tn?.symbol&&V.getPropertiesOfType(V.getTypeOfSymbolAtLocation(tn.symbol,Ot)):tn&&V.getPropertiesOfType(tn)});tr=Nn(tr,Je(Bs,Ot.members,ri)),F(tr,(Ys,tn)=>{let wn=Ys?.valueDeclaration;if(wn&&PI(wn)&&wn.name&&Un(wn.name)){let Mn={kind:512,symbolName:V.symbolToString(Ys)};Gr[tn]=Mn}})}return 1}function Fr(Ot){return!!Ot.parent&&Si(Ot.parent)&&Tc(Ot.parent.parent)&&(IY(Ot.kind)||HT(Ot))}function Kr(Ot){if(Ot){let $r=Ot.parent;switch(Ot.kind){case 21:case 28:return Tc(Ot.parent)?Ot.parent:void 0;default:if(Fr(Ot))return $r.parent}}}function Dn(Ot){if(Ot){let $r,ri=ji(Ot.parent,ao=>xa(ao)?"quit":kd(ao)&&$r===ao.body?!0:($r=ao,!1));return ri&&ri}}function hr(Ot){if(Ot){let $r=Ot.parent;switch(Ot.kind){case 32:case 31:case 44:case 80:case 212:case 293:case 292:case 294:if($r&&($r.kind===286||$r.kind===287)){if(Ot.kind===32){let ri=Gm(Ot.pos,g,void 0);if(!$r.typeArguments||ri&&ri.kind===44)break}return $r}else if($r.kind===292)return $r.parent.parent;break;case 11:if($r&&($r.kind===292||$r.kind===294))return $r.parent.parent;break;case 20:if($r&&$r.kind===295&&$r.parent&&$r.parent.kind===292)return $r.parent.parent.parent;if($r&&$r.kind===294)return $r.parent.parent;break}}}function En(Ot,$r){return g.getLineEndOfPosition(Ot.getEnd())<$r}function Ni(Ot){let $r=Ot.parent,ri=$r.kind;switch(Ot.kind){case 28:return ri===261||ds(Ot)||ri===244||ri===267||nn(ri)||ri===265||ri===208||ri===266||xa($r)&&!!$r.typeParameters&&$r.typeParameters.end>=Ot.pos;case 25:return ri===208;case 59:return ri===209;case 23:return ri===208;case 21:return ri===300||nn(ri);case 19:return ri===267;case 30:return ri===264||ri===232||ri===265||ri===266||lP(ri);case 126:return ri===173&&!xa($r.parent);case 26:return ri===170||!!$r.parent&&$r.parent.kind===208;case 125:case 123:case 124:return ri===170&&!Tc($r.parent);case 130:return ri===277||ri===282||ri===275;case 139:case 153:return!Vit(Ot);case 80:{if((ri===277||ri===282)&&Ot===$r.name&&Ot.text==="type"||ji(Ot.parent,nc)&&En(Ot,h))return!1;break}case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return ri!==277;case 42:return bu(Ot.parent)&&!uu(Ot.parent)}if(YPe(Fit(Ot))&&Vit(Ot)||Fr(Ot)&&(!Ir(Ot)||IY(Fit(Ot))||Hn(Ot)))return!1;switch(Fit(Ot)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return pi(Ot.parent)}if(ji(Ot.parent,xa)&&Ot===Ze&&Gi(Ot,h))return!1;let Bs=ML(Ot.parent,173);if(Bs&&Ot!==Ze&&xa(Ze.parent.parent)&&h<=Ze.end){if(Gi(Ot,Ze.end))return!1;if(Ot.kind!==64&&(GEe(Bs)||If(Bs)))return!0}return HT(Ot)&&!a0(Ot.parent)&&!EN(Ot.parent)&&!((xa(Ot.parent)||g_(Ot.parent)||Ds(Ot.parent))&&(Ot!==Ze||h>Ze.end))}function Gi(Ot,$r){return Ot.kind!==64&&(Ot.kind===27||!yE(Ot.end,$r,g))}function nn(Ot){return lP(Ot)&&Ot!==177}function bn(Ot){if(Ot.kind===9){let $r=Ot.getFullText();return $r.charAt($r.length-1)==="."}return!1}function ds(Ot){return Ot.parent.kind===262&&!l1e(Ot,g,V)}function Mt(Ot,$r){if($r.length===0)return Ot;let ri=new Set,ao=new Set;for(let Ys of $r){if(Ys.kind!==304&&Ys.kind!==305&&Ys.kind!==209&&Ys.kind!==175&&Ys.kind!==178&&Ys.kind!==179&&Ys.kind!==306||Hn(Ys))continue;let tn;if(Lx(Ys))cn(Ys,ri);else if(hg(Ys)&&Ys.propertyName)Ys.propertyName.kind===80&&(tn=Ys.propertyName.escapedText);else{let wn=Il(Ys);tn=wn&&Tw(wn)?qJ(wn):void 0}tn!==void 0&&ao.add(tn)}let Bs=Ot.filter(Ys=>!ao.has(Ys.escapedName));return xe(ri,Bs),Bs}function cn(Ot,$r){let ri=Ot.expression,ao=V.getSymbolAtLocation(ri),Bs=ao&&V.getTypeOfSymbolAtLocation(ao,ri),Ys=Bs&&Bs.properties;Ys&&Ys.forEach(tn=>{$r.add(tn.name)})}function Bt(){tr.forEach(Ot=>{if(Ot.flags&16777216){let $r=kg(Ot);dt[$r]=dt[$r]??c0.OptionalMember}})}function xe(Ot,$r){if(Ot.size!==0)for(let ri of $r)Ot.has(ri.name)&&(dt[kg(ri)]=c0.MemberDeclaredBySpreadAssignment)}function fr(Ot){for(let $r=Ot;$r!ao.has(Bs.escapedName)&&!!Bs.declarations&&!(u2(Bs)&2)&&!(Bs.valueDeclaration&&pC(Bs.valueDeclaration)))}function In(Ot,$r){let ri=new Set,ao=new Set;for(let Ys of $r)Hn(Ys)||(Ys.kind===292?ri.add(cz(Ys.name)):yz(Ys)&&cn(Ys,ao));let Bs=Ot.filter(Ys=>!ri.has(Ys.escapedName));return xe(ao,Bs),Bs}function Hn(Ot){return Ot.getStart(g)<=h&&h<=Ot.getEnd()}}function $Zs(s,c,g){var d;if(s){let{parent:h}=s;switch(s.kind){case 19:case 28:if(og(h)||Km(h))return h;break;case 42:return uu(h)?Gs(h.parent,og):void 0;case 134:return Gs(h.parent,og);case 80:if(s.text==="async"&&a0(s.parent))return s.parent.parent;{if(og(s.parent.parent)&&(Lx(s.parent)||a0(s.parent)&&Ra(g,s.getEnd()).line!==Ra(g,c).line))return s.parent.parent;let S=ji(h,fm);if(S?.getLastToken(g)===s&&og(S.parent))return S.parent}break;default:if((d=h.parent)!=null&&d.parent&&(uu(h.parent)||Bg(h.parent)||Dg(h.parent))&&og(h.parent.parent))return h.parent.parent;if(Lx(h)&&og(h.parent))return h.parent;let _=ji(h,fm);if(s.kind!==59&&_?.getLastToken(g)===s&&og(_.parent))return _.parent}}}function kit(s,c){let g=Gm(s,c);return g&&s<=g.end&&(_w(g)||v0(g.kind))?{contextToken:Gm(g.getFullStart(),c,void 0),previousToken:g}:{contextToken:g,previousToken:g}}function lAn(s,c,g,d){let h=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():g,_=h.getTypeChecker(),S=c.ambientModuleName?_.tryFindAmbientModule(c.ambientModuleName):c.fileName?_.getMergedSymbol(pe.checkDefined(h.getSourceFile(c.fileName)).symbol):void 0;if(!S)return;let R=c.exportName==="export="?_.resolveExternalModuleSymbol(S):_.tryGetMemberInModuleExportsAndProperties(c.exportName,S);return R?(R=c.exportName==="default"&&W7(R)||R,{symbol:R,origin:MZs(c,s,S)}):void 0}function xit(s,c,g,d,h){if(EZs(g))return;let _=CZs(g)?g.symbolName:s.name;if(_===void 0||s.flags&1536&&ine(_.charCodeAt(0))||k7(s))return;let S={name:_,needsConvertPropertyAccess:!1};if(Uh(_,c,h?1:0)||s.valueDeclaration&&pC(s.valueDeclaration))return S;if(s.flags&2097152)return{name:_,needsConvertPropertyAccess:!0};switch(d){case 3:return lXt(g)?{name:g.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(_),needsConvertPropertyAccess:!1};case 2:case 1:return _.charCodeAt(0)===32?void 0:{name:_,needsConvertPropertyAccess:!0};case 5:case 4:return S;default:pe.assertNever(d)}}var Git=[],uAn=FA(()=>{let s=[];for(let c=83;c<=166;c++)s.push({name:Vi(c),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords});return s});function gAn(s,c){if(!c)return AAn(s);let g=s+8+1;return Git[g]||(Git[g]=AAn(s).filter(d=>!eLs(Ta(d.name))))}function AAn(s){return Git[s]||(Git[s]=uAn().filter(c=>{let g=Ta(c.name);switch(s){case 0:return!1;case 1:return pAn(g)||g===138||g===144||g===156||g===145||g===128||Qde(g)&&g!==157;case 5:return pAn(g);case 2:return YPe(g);case 3:return dAn(g);case 4:return IY(g);case 6:return Qde(g)||g===87;case 7:return Qde(g);case 8:return g===156;default:return pe.assertNever(s)}}))}function eLs(s){switch(s){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}function dAn(s){return s===148}function YPe(s){switch(s){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return Sre(s)}}function pAn(s){return s===134||s===135||s===160||s===130||s===152||s===156||!tAe(s)&&!YPe(s)}function Fit(s){return Ir(s)?iv(s)??0:s.kind}function tLs(s,c){let g=[];if(s){let d=s.getSourceFile(),h=s.parent,_=d.getLineAndCharacterOfPosition(s.end).line,S=d.getLineAndCharacterOfPosition(c).line;(Mf(h)||Gh(h)&&h.moduleSpecifier)&&s===h.moduleSpecifier&&_===S&&g.push({name:Vi(132),kind:"keyword",kindModifiers:"",sortText:c0.GlobalsOrKeywords})}return g}function rLs(s,c){return ji(s,g=>u3(g)&&Mie(g,c)?!0:tR(g)?"quit":!1)}function Zit(s,c,g,d){let h=c&&c!==s,_=d.getUnionType(Me(s.flags&1048576?s.types:[s],W=>!d.getPromisedTypeOfPromise(W))),S=h&&!(c.flags&3)?d.getUnionType([_,c]):_,R=nLs(S,g,d);return S.isClass()&&fAn(R)?[]:h?Me(R,T):R;function T(W){return B(W.declarations)?jt(W.declarations,V=>V.parent!==g):!0}}function nLs(s,c,g){return s.isUnion()?g.getAllPossiblePropertiesOfTypes(Me(s.types,d=>!(d.flags&402784252||g.isArrayLikeType(d)||g.isTypeInvalidDueToUnionDiscriminant(d,c)||g.typeHasCallOrConstructSignatures(d)||d.isClass()&&fAn(d.getApparentProperties())))):s.getApparentProperties()}function fAn(s){return jt(s,c=>!!(u2(c)&6))}function Lit(s,c){return s.isUnion()?pe.checkEachDefined(c.getAllPossiblePropertiesOfTypes(s.types),"getAllPossiblePropertiesOfTypes() should all be defined"):pe.checkEachDefined(s.getApparentProperties(),"getApparentProperties() should all be defined")}function iLs(s,c,g,d){switch(g.kind){case 353:return Gs(g.parent,YY);case 1:let h=Gs(li(Ma(g.parent,ll).statements),YY);if(h&&!qd(h,20,s))return h;break;case 81:if(Gs(g.parent,pi))return ji(g,xa);break;case 80:{if(iv(g)||pi(g.parent)&&g.parent.initializer===g)return;if(Vit(g))return ji(g,YY)}}if(c){if(g.kind===137||Ir(c)&&pi(c.parent)&&xa(g))return ji(c,xa);switch(c.kind){case 64:return;case 27:case 20:return Vit(g)&&g.parent.name===g?g.parent.parent:Gs(g,YY);case 19:case 28:return Gs(c.parent,YY);default:if(YY(g)){if(Ra(s,c.getEnd()).line!==Ra(s,d).line)return g;let h=xa(c.parent.parent)?YPe:dAn;return h(c.kind)||c.kind===42||Ir(c)&&h(iv(c)??0)?c.parent.parent:void 0}return}}}function sLs(s){if(!s)return;let c=s.parent;switch(s.kind){case 19:if(mh(c))return c;break;case 27:case 28:case 80:if(c.kind===172&&mh(c.parent))return c.parent;break}}function IAn(s,c){if(!s)return;if(uc(s)&&s7(s.parent))return c.getTypeArgumentConstraint(s);let g=IAn(s.parent,c);if(g)switch(s.kind){case 172:return c.getTypeOfPropertyOfContextualType(g,s.symbol.escapedName);case 194:case 188:case 193:return g}}function Vit(s){return s.parent&&mY(s.parent)&&YY(s.parent.parent)}function oLs(s,c,g,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!g&&yMt(g)&&d===g.getStart(s)+1;case"#":return!!g&&p(g)&&!!hC(g);case"<":return!!g&&g.kind===30&&(!fo(g.parent)||hAn(g.parent));case"/":return!!g&&(mA(g)?!!B7(g):g.kind===44&&rQ(g.parent));case" ":return!!g&&an(g)&&g.parent.kind===308;default:return pe.assertNever(c)}}function hAn({left:s}){return sf(s)}function aLs(s,c,g){let d=g.resolveName("self",void 0,111551,!1);if(d&&g.getTypeOfSymbolAtLocation(d,c)===s)return!0;let h=g.resolveName("global",void 0,111551,!1);if(h&&g.getTypeOfSymbolAtLocation(h,c)===s)return!0;let _=g.resolveName("globalThis",void 0,111551,!1);return!!(_&&g.getTypeOfSymbolAtLocation(_,c)===s)}function cLs(s){return!!(s.valueDeclaration&&o_(s.valueDeclaration)&256&&xa(s.valueDeclaration.parent))}function lLs(s,c){let g=c.getContextualType(s);if(g)return g;let d=gv(s.parent);if(fo(d)&&d.operatorToken.kind===64&&s===d.left)return c.getTypeAtLocation(d);if(un(d))return c.getContextualType(d)}function mAn(s,c){var g,d,h;let _,S=!1,R=T();return{isKeywordOnlyCompletion:S,keywordCompletion:_,isNewIdentifierLocation:!!(R||_===156),isTopLevelTypeOnly:!!((d=(g=Gs(R,Mf))==null?void 0:g.importClause)!=null&&d.isTypeOnly)||!!((h=Gs(R,km))!=null&&h.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&_An(R,s),replacementSpan:uLs(R)};function T(){let W=s.parent;if(km(W)){let V=W.getLastToken(c);if(Ir(s)&&V!==s){_=161,S=!0;return}return _=s.kind===156?void 0:156,mXt(W.moduleReference)?W:void 0}if(_An(W,s)&&yAn(W.parent))return W;if(yN(W)||Zx(W)){if(!W.parent.isTypeOnly&&(s.kind===19||s.kind===102||s.kind===28)&&(_=156),yAn(W))if(s.kind===20||s.kind===80)S=!0,_=161;else return W.parent.parent;return}if(Gh(W)&&s.kind===42||mv(W)&&s.kind===20){S=!0,_=161;return}if(an(s)&&ll(W))return _=156,s;if(an(s)&&Mf(W))return _=156,mXt(W.moduleSpecifier)?W:void 0}}function uLs(s){var c;if(!s)return;let g=ji(s,Hp(Mf,km,SN))??s,d=g.getSourceFile();if(S3(g,d))return Oy(g,d);pe.assert(g.kind!==102&&g.kind!==277);let h=g.kind===273||g.kind===352?CAn((c=g.importClause)==null?void 0:c.namedBindings)??g.moduleSpecifier:g.moduleReference,_={pos:g.getFirstToken().getStart(),end:h.pos};if(S3(_,d))return t9(_)}function CAn(s){var c;return de((c=Gs(s,yN))==null?void 0:c.elements,g=>{var d;return!g.propertyName&&WY(g.name.text)&&((d=Gm(g.name.pos,s.getSourceFile(),s))==null?void 0:d.kind)!==28})}function _An(s,c){return uy(s)&&(s.isTypeOnly||c===s.name&&JVe(c))}function yAn(s){if(!mXt(s.parent.parent.moduleSpecifier)||s.parent.name)return!1;if(yN(s)){let c=CAn(s);return(c?s.elements.indexOf(c):s.elements.length)<2}return!0}function mXt(s){var c;return sf(s)?!0:!((c=Gs(ZF(s)?s.expression:s,mA))!=null&&c.text)}function gLs(s,c){if(!s)return;let g=ji(s,d=>mP(d)||bAn(d)||Nu(d)?"quit":(Si(d)||Ds(d))&&!w0(d.parent));return g||(g=ji(c,d=>mP(d)||bAn(d)||Nu(d)?"quit":nc(d))),g}function ALs(s){if(!s)return!1;let c=s,g=s.parent;for(;g;){if(Ds(g))return g.default===c||c.kind===64;c=g,g=g.parent}return!1}function bAn(s){return s.parent&&lA(s.parent)&&(s.parent.body===s||s.kind===39)}function CXt(s,c,g=new Set){return d(s)||d(FC(s.exportSymbol||s,c));function d(h){return!!(h.flags&788968)||c.isUnknownSymbol(h)||!!(h.flags&1536)&&Zy(g,h)&&c.getExportsOfModule(h).some(_=>CXt(_,c,g))}}function dLs(s,c){let g=FC(s,c).declarations;return!!B(g)&&ue(g,lPe)}function EAn(s,c){if(c.length===0)return!0;let g=!1,d,h=0,_=s.length;for(let S=0;S<_;S++){let R=s.charCodeAt(S),T=c.charCodeAt(h);if((R===T||R===pLs(T))&&(g||(g=d===void 0||97<=d&&d<=122&&65<=R&&R<=90||d===95&&R!==95),g&&h++,h===c.length))return!0;d=R}return!1}function pLs(s){return 97<=s&&s<=122?s-32:s}function fLs(s){return s==="abstract"||s==="async"||s==="await"||s==="declare"||s==="module"||s==="namespace"||s==="type"||s==="satisfies"||s==="as"}var Pit={};o(Pit,{getStringLiteralCompletionDetails:()=>mLs,getStringLiteralCompletions:()=>ILs});var SAn={directory:0,script:1,"external module name":2};function _Xt(){let s=new Map;function c(g){let d=s.get(g.name);(!d||SAn[d.kind]({name:YT(re.value,M),kindModifiers:"",kind:"string",sortText:c0.LocationPriority,replacementSpan:krt(c,T),commitCharacters:[]}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:s.isNewIdentifier,optionalReplacementSpan:V,entries:ee,defaultCommitCharacters:ZU(s.isNewIdentifier)}}default:return pe.assertNever(s)}}function mLs(s,c,g,d,h,_,S,R){if(!d||!mA(d))return;let T=wAn(c,d,g,h,_,R);return T&&CLs(s,d,T,c,h.getTypeChecker(),S)}function CLs(s,c,g,d,h,_){switch(g.kind){case 0:{let S=de(g.paths,R=>R.name===s);return S&&HPe(s,BAn(S.extension),S.kind,[gS(s)])}case 1:{let S=de(g.symbols,R=>R.name===s);return S&&IXt(S,S.name,h,d,c,_)}case 2:return de(g.types,S=>S.value===s)?HPe(s,"","string",[gS(s)]):void 0;default:return pe.assertNever(g)}}function vAn(s){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:s.map(({name:h,kind:_,span:S,extension:R})=>({name:h,kind:_,kindModifiers:BAn(R),sortText:c0.LocationPriority,replacementSpan:S})),defaultCommitCharacters:ZU(!0)}}function BAn(s){switch(s){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return pe.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return pe.assertNever(s)}}function wAn(s,c,g,d,h,_){let S=d.getTypeChecker(),R=yXt(c.parent);switch(R.kind){case 202:{let Ze=yXt(R.parent);return Ze.kind===206?{kind:0,paths:NAn(s,c,d,h,_)}:T(Ze)}case 304:return og(R.parent)&&R.name===c?bLs(S,R.parent):W()||W(0);case 213:{let{expression:Ze,argumentExpression:We}=R;return c===QA(We)?TAn(S.getTypeAtLocation(Ze)):void 0}case 214:case 215:case 292:if(!VLs(c)&&!Up(R)){let Ze=X1e.getArgumentInfoForCompletions(R.kind===292?R.parent:c,g,s,S);return Ze&&yLs(Ze.invocation,c,Ze,S)||W(0)}case 273:case 279:case 284:case 352:return{kind:0,paths:NAn(s,c,d,h,_)};case 297:let V=APe(S,R.parent.clauses),M=W();return M?{kind:2,types:M.types.filter(Ze=>!V.hasValue(Ze.value)),isNewIdentifier:!1}:void 0;case 277:case 282:let re=R;if(re.propertyName&&c!==re.propertyName)return;let ge=re.parent,{moduleSpecifier:Ie}=ge.kind===276?ge.parent.parent:ge.parent;if(!Ie)return;let _e=S.getSymbolAtLocation(Ie);if(!_e)return;let Ee=S.getExportsAndPropertiesOfModule(_e),Ne=new Set(ge.elements.map(Ze=>CF(Ze.propertyName||Ze.name)));return{kind:1,symbols:Ee.filter(Ze=>Ze.escapedName!=="default"&&!Ne.has(Ze.escapedName)),hasIndexSignature:!1};case 227:if(R.operatorToken.kind===103){let Ze=S.getTypeAtLocation(R.right);return{kind:1,symbols:(Ze.isUnion()?S.getAllPossiblePropertiesOfTypes(Ze.types):Ze.getApparentProperties()).filter(Ue=>!Ue.valueDeclaration||!pC(Ue.valueDeclaration)),hasIndexSignature:!1}}return W(0);default:return W()||W(0)}function T(V){switch(V.kind){case 234:case 184:{let re=ji(R,ge=>ge.parent===V);return re?{kind:2,types:Wit(S.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 200:let{indexType:M,objectType:ee}=V;return Mie(M,g)?TAn(S.getTypeFromTypeNode(ee)):void 0;case 193:{let re=T(yXt(V.parent));if(!re)return;let ge=_Ls(V,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ie=>!k(ge,Ie.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ie=>!k(ge,Ie.value)),isNewIdentifier:!1}}default:return}}function W(V=4){let M=Wit(tPe(c,S,V));if(M.length)return{kind:2,types:M,isNewIdentifier:!1}}}function yXt(s){switch(s.kind){case 197:return pne(s);case 218:return gv(s);default:return s}}function _Ls(s,c){return Xt(s.types,g=>g!==c&&EE(g)&&Zg(g.literal)?g.literal.text:void 0)}function yLs(s,c,g,d){let h=!1,_=new Set,S=eI(s)?pe.checkDefined(ji(c.parent,EN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(s,S),T=er(R,W=>{if(!D0(W)&&g.argumentCount>W.parameters.length)return;let V=W.getTypeParameterAtPosition(g.argumentIndex);if(eI(s)){let M=d.getTypeOfPropertyOfType(V,xw(S.name));M&&(V=M)}return h=h||!!(V.flags&4),Wit(V,_)});return B(T)?{kind:2,types:T,isNewIdentifier:h}:void 0}function TAn(s){return s&&{kind:1,symbols:Me(s.getApparentProperties(),c=>!(c.valueDeclaration&&pC(c.valueDeclaration))),hasIndexSignature:$rt(s)}}function bLs(s,c){let g=s.getContextualType(c);if(!g)return;let d=s.getContextualType(c,4);return{kind:1,symbols:Zit(g,d,c,s),hasIndexSignature:$rt(g)}}function Wit(s,c=new Set){return s?(s=Zrt(s),s.isUnion()?er(s.types,g=>Wit(g,c)):s.isStringLiteral()&&!(s.flags&1024)&&Zy(c,s.value)?[s]:E):E}function lpe(s,c,g){return{name:s,kind:c,extension:g}}function bXt(s){return lpe(s,"directory",void 0)}function RAn(s,c,g){let d=GLs(s,c),h=s.length===0?void 0:zd(c,s.length);return g.map(({name:_,kind:S,extension:R})=>_.includes(ag)||_.includes(Eb)?{name:_,kind:S,extension:R,span:h}:{name:_,kind:S,extension:R,span:d})}function NAn(s,c,g,d,h){return RAn(c.text,c.getStart(s)+1,ELs(s,c,g,d,h))}function ELs(s,c,g,d,h){let _=Dp(c.text),S=mA(c)?g.getModeForUsageLocation(s,c):void 0,R=s.path,T=Mo(R),W=g.getCompilerOptions(),V=g.getTypeChecker(),M=z3(g,d),ee=EXt(W,1,s,V,h,S);return FLs(_)||!W.baseUrl&&!W.paths&&(Xp(_)||n_(_))?SLs(_,T,g,d,M,R,ee):TLs(_,T,S,g,d,M,ee)}function EXt(s,c,g,d,h,_){return{extensionsToSearch:Nr(vLs(s,d)),referenceKind:c,importingSourceFile:g,endingPreference:h?.importModuleSpecifierEnding,resolutionMode:_}}function SLs(s,c,g,d,h,_,S){let R=g.getCompilerOptions();return R.rootDirs?wLs(R.rootDirs,s,c,S,g,d,h,_):Do(upe(s,c,S,g,d,h,!0,_).values())}function vLs(s,c){let g=c?Xt(c.getAmbientModules(),_=>{let S=_.name.slice(1,-1);if(!(!S.startsWith("*.")||S.includes("/")))return S.slice(1)}):[],d=[...z7(s),g],h=k_(s);return UVe(h)?q7(s,d):d}function BLs(s,c,g,d){s=s.map(_=>hp(iu(Xp(_)?_:Ro(c,_))));let h=X(s,_=>Jh(_,g,c,d)?g.substr(_.length):void 0);return io([...s.map(_=>Ro(_,h)),g].map(_=>ny(_)),MA,Ca)}function wLs(s,c,g,d,h,_,S,R){let W=h.getCompilerOptions().project||_.getCurrentDirectory(),V=!(_.useCaseSensitiveFileNames&&_.useCaseSensitiveFileNames()),M=BLs(s,W,g,V);return io(er(M,ee=>Do(upe(c,ee,d,h,_,S,!0,R).values())),(ee,re)=>ee.name===re.name&&ee.kind===re.kind&&ee.extension===re.extension)}function upe(s,c,g,d,h,_,S,R,T=_Xt()){var W;s===void 0&&(s=""),s=Dp(s),Jp(s)||(s=Mo(s)),s===""&&(s="."+ag),s=hp(s);let V=AE(c,s),M=Jp(V)?V:Mo(V);if(!S){let Ie=vMt(M,h);if(Ie){let Ee=E3(Ie,h).typesVersions;if(typeof Ee=="object"){let Ne=(W=T9e(Ee))==null?void 0:W.paths;if(Ne){let Te=Mo(Ie),Ze=V.slice(hp(Te).length);if(kAn(T,Ze,Te,g,d,h,_,Ne))return T}}}}let ee=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames());if(!sPe(h,M))return T;let re=rnt(h,M,g.extensionsToSearch,void 0,["./*"]);if(re)for(let Ie of re){if(Ie=iu(Ie),R&&qf(Ie,R,c,ee)===0)continue;let{name:_e,extension:Ee}=DAn(gp(Ie),d,g,!1);T.add(lpe(_e,"script",Ee))}let ge=iPe(h,M);if(ge)for(let Ie of ge){let _e=gp(iu(Ie));_e!=="@types"&&T.add(bXt(_e))}return T}function DAn(s,c,g,d){let h=WF.tryGetRealFileNameForNonJsDeclarationFileName(s);if(h)return{name:h,extension:QT(h)};if(g.referenceKind===0)return{name:s,extension:QT(s)};let _=WF.getModuleSpecifierPreferences({importModuleSpecifierEnding:g.endingPreference},c,c.getCompilerOptions(),g.importingSourceFile).getAllowedEndingsInPreferredOrder(g.resolutionMode);if(d&&(_=_.filter(R=>R!==0&&R!==1)),_[0]===3){if(fu(s,Yne))return{name:s,extension:QT(s)};let R=WF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return R?{name:fN(s,R),extension:R}:{name:s,extension:QT(s)}}if(!d&&(_[0]===0||_[0]===1)&&fu(s,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:s0(s),extension:QT(s)};let S=WF.tryGetJSExtensionForFile(s,c.getCompilerOptions());return S?{name:fN(s,S),extension:S}:{name:s,extension:QT(s)}}function kAn(s,c,g,d,h,_,S,R){let T=V=>R[V],W=(V,M)=>{let ee=UY(V),re=UY(M),ge=typeof ee=="object"?ee.prefix.length:V.length,Ie=typeof re=="object"?re.prefix.length:M.length;return Zt(Ie,ge)};return xAn(s,!1,!1,c,g,d,h,_,S,_g(R),T,W)}function xAn(s,c,g,d,h,_,S,R,T,W,V,M){let ee=[],re;for(let ge of W){if(ge===".")continue;let Ie=ge.replace(/^\.\//,"")+((c||g)&&di(ge,"/")?"*":""),_e=V(ge);if(_e){let Ee=UY(Ie);if(!Ee)continue;let Ne=typeof Ee=="object"&&jd(Ee,d);Ne&&(re===void 0||M(Ie,re)===-1)&&(re=Ie,ee=ee.filter(Ze=>!Ze.matchedPattern)),(typeof Ee=="string"||re===void 0||M(Ie,re)!==1)&&ee.push({matchedPattern:Ne,results:RLs(Ie,_e,d,h,_,c,g,S,R,T).map(({name:Ze,kind:We,extension:Ue})=>lpe(Ze,We,Ue))})}}return ee.forEach(ge=>ge.results.forEach(Ie=>s.add(Ie))),re!==void 0}function TLs(s,c,g,d,h,_,S){let R=d.getTypeChecker(),T=d.getCompilerOptions(),{baseUrl:W,paths:V}=T,M=_Xt(),ee=k_(T);if(W){let Ie=iu(Ro(h.getCurrentDirectory(),W));upe(s,Ie,S,d,h,_,!1,void 0,M)}if(V){let Ie=oAe(T,h);kAn(M,s,Ie,S,d,h,_,V)}let re=FAn(s);for(let Ie of DLs(s,re,R))M.add(lpe(Ie,"external module name",void 0));if(VAn(d,h,_,c,re,S,M),UVe(ee)){let Ie=!1;if(re===void 0)for(let _e of xLs(h,c)){let Ee=lpe(_e,"external module name",void 0);M.has(Ee.name)||(Ie=!0,M.add(Ee))}if(!Ie){let _e=U7(T),Ee=Vne(T),Ne=!1,Te=Ue=>{if(Ee&&!Ne){let $e=Ro(Ue,"package.json");if(Ne=Kie(h,$e)){let Ye=E3($e,h);ge(Ye.imports,s,Ue,!1,!0)}}},Ze=Ue=>{let $e=Ro(Ue,"node_modules");sPe(h,$e)&&upe(s,$e,S,d,h,_,!1,void 0,M),Te(Ue)};if(re&&_e){let Ue=Ze;Ze=$e=>{let Ye=Np(s);Ye.shift();let Tt=Ye.shift();if(!Tt)return Ue($e);if(Ac(Tt,"@")){let mt=Ye.shift();if(!mt)return Ue($e);Tt=Ro(Tt,mt)}if(Ee&&Ac(Tt,"#"))return Te($e);let ot=Ro($e,"node_modules",Tt),Qe=Ro(ot,"package.json");if(Kie(h,Qe)){let mt=E3(Qe,h),ht=Ye.join("/")+(Ye.length&&Jp(s)?"/":"");ge(mt.exports,ht,ot,!0,!1);return}return Ue($e)}}let We=LP(c);if(We){let Ue=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,$e=s.match(Ue);if($e){let[,Ye,Tt]=$e;if(Ac(Ye,"#"))vN(h,c,Ze);else{let ot;try{ot=We.resolveToUnqualified(Ye,c,{considerBuiltins:!1})}catch{}if(ot){let Qe=iu(ot),mt=!0;if(re&&_e){let ht=Ro(Qe,"package.json");if(Kie(h,ht)){let _t=E3(ht,h);ge(_t.exports,Tt,Qe,!0,!1),mt=!1}}mt&&upe(Tt,Qe,S,d,h,_,!1,void 0,M)}}}}else vN(h,c,Ze)}}return Do(M.values());function ge(Ie,_e,Ee,Ne,Te){if(typeof Ie!="object"||Ie===null)return;let Ze=_g(Ie),We=PP(T,g);xAn(M,Ne,Te,_e,Ee,S,d,h,_,Ze,Ue=>{let $e=GAn(Ie[Ue],We);if($e!==void 0)return J_(di(Ue,"/")&&di($e,"/")?$e+"*":$e)},fet)}}function GAn(s,c){if(typeof s=="string")return s;if(s&&typeof s=="object"&&!Ki(s)){for(let g in s)if(g==="default"||c.includes(g)||REe(c,g)){let d=s[g];return GAn(d,c)}}}function FAn(s){return SXt(s)?Jp(s)?s:Mo(s):void 0}function RLs(s,c,g,d,h,_,S,R,T,W){let V=UY(s);if(!V)return E;if(typeof V=="string")return ee(s,"script");let M=HS(g,V.prefix);if(M===void 0)return di(s,"/*")?ee(V.prefix,"directory"):er(c,ge=>{var Ie;return(Ie=ZAn("",d,ge,h,_,S,R,T,W))==null?void 0:Ie.map(({name:_e,...Ee})=>({name:V.prefix+_e+V.suffix,...Ee}))});return er(c,re=>ZAn(M,d,re,h,_,S,R,T,W));function ee(re,ge){return Ac(re,g)?[{name:ny(re),kind:ge,extension:void 0}]:E}}function ZAn(s,c,g,d,h,_,S,R,T){if(!R.readDirectory)return;let W=UY(g);if(W===void 0||Xs(W))return;let V=AE(W.prefix),M=Jp(W.prefix)?V:Mo(V),ee=Jp(W.prefix)?"":gp(V),re=SXt(s),ge=re?Jp(s)?s:Mo(s):void 0,Ie=()=>T.getCommonSourceDirectory(),_e=!y3(T),Ee=S.getCompilerOptions().outDir,Ne=S.getCompilerOptions().declarationDir,Te=re?Ro(M,ee+ge):M,Ze=iu(Ro(c,Te)),We=_&&Ee&&Yye(Ze,_e,Ee,Ie),Ue=_&&Ne&&Yye(Ze,_e,Ne,Ie),$e=iu(W.suffix),Ye=$e&&sAe("_"+$e),Tt=$e?Hye("_"+$e):void 0,ot=[Ye&&fN($e,Ye),...Tt?Tt.map(Ke=>fN($e,Ke)):[],$e].filter(Xs),Qe=$e?ot.map(Ke=>"**/*"+Ke):["./*"],mt=(h||_)&&di(g,"/*"),ht=_t(Ze);return We&&(ht=Nn(ht,_t(We))),Ue&&(ht=Nn(ht,_t(Ue))),$e||(ht=Nn(ht,Rt(Ze)),We&&(ht=Nn(ht,Rt(We))),Ue&&(ht=Nn(ht,Rt(Ue)))),ht;function _t(Ke){let Pt=re?Ke:hp(Ke)+ee;return Xt(rnt(R,Ke,d.extensionsToSearch,void 0,Qe),_r=>{let Gt=Lt(_r,Pt);if(Gt){if(SXt(Gt))return bXt(Np(LAn(Gt))[1]);let{name:nt,extension:Dt}=DAn(Gt,S,d,mt);return lpe(nt,"script",Dt)}})}function Rt(Ke){return Xt(iPe(R,Ke),Pt=>Pt==="node_modules"?void 0:bXt(Pt))}function Lt(Ke,Pt){return X(ot,_r=>{let Gt=NLs(iu(Ke),Pt,_r);return Gt===void 0?void 0:LAn(Gt)})}}function NLs(s,c,g){return Ac(s,c)&&di(s,g)?s.slice(c.length,s.length-g.length):void 0}function LAn(s){return s[0]===ag?s.slice(1):s}function DLs(s,c,g){let h=g.getAmbientModules().map(_=>l2(_.name)).filter(_=>Ac(_,s)&&!_.includes("*"));if(c!==void 0){let _=hp(c);return h.map(S=>Nm(S,_))}return h}function kLs(s,c,g,d,h){let _=g.getCompilerOptions(),S=Jc(s,c),R=fE(s.text,S.pos),T=R&&de(R,_e=>c>=_e.pos&&c<=_e.end);if(!T)return;let W=s.text.slice(T.pos,c),V=ZLs.exec(W);if(!V)return;let[,M,ee,re]=V,ge=Mo(s.path),Ie=ee==="path"?upe(re,ge,EXt(_,0,s),g,d,h,!0,s.path):ee==="types"?VAn(g,d,h,ge,FAn(re),EXt(_,1,s)):pe.fail();return RAn(re,T.pos+M.length,Do(Ie.values()))}function VAn(s,c,g,d,h,_,S=_Xt()){let R=s.getCompilerOptions(),T=new Map,W=oPe(()=>mde(R,c))||E;for(let M of W)V(M);if(LP(d))for(let M of Ten(d))V(M);else for(let M of nnt(d,c)){let ee=Ro(Mo(M),"node_modules/@types");V(ee)}return S;function V(M){if(sPe(c,M))for(let ee of iPe(c,M)){let re=NEe(ee);if(!(R.types&&!k(R.types,re)))if(h===void 0)T.has(re)||(S.add(lpe(re,"external module name",void 0)),T.set(re,!0));else{let ge=Ro(M,ee),Ie=NAe(h,re,JD(c));Ie!==void 0&&upe(Ie,ge,_,s,c,g,!1,void 0,S)}}}}function xLs(s,c){if(!s.readFile||!s.fileExists)return E;let g=[];for(let d of nnt(c,s)){let h=E3(d,s);for(let _ of LLs){let S=h[_];if(S)for(let R in S)Da(S,R)&&!Ac(R,"@types/")&&g.push(R)}}return g}function GLs(s,c){let g=Math.max(s.lastIndexOf(ag),s.lastIndexOf(Eb)),d=g!==-1?g+1:0,h=s.length-d;return h===0||Uh(s.substr(d,h),99)?void 0:zd(c+d,h)}function FLs(s){if(s&&s.length>=2&&s.charCodeAt(0)===46){let c=s.length>=3&&s.charCodeAt(1)===46?2:1,g=s.charCodeAt(c);return g===47||g===92}return!1}var ZLs=/^(\/\/\/\s*Uz,DefinitionKind:()=>QAn,EntryKind:()=>XAn,ExportKind:()=>PAn,FindReferencesUse:()=>JAn,ImportExport:()=>WAn,createImportTracker:()=>vXt,findModuleReferences:()=>OAn,findReferenceOrRenameEntries:()=>qLs,findReferencedSymbols:()=>KLs,getContextNode:()=>LU,getExportInfo:()=>BXt,getImplementationsAtPosition:()=>zLs,getImportOrExportSymbol:()=>YAn,getReferenceEntriesForNode:()=>KAn,isContextWithStartAndEndNode:()=>TXt,isDeclarationOfSymbol:()=>edn,isWriteAccessForReference:()=>NXt,toContextSpan:()=>RXt,toHighlightSpan:()=>s9s,toReferenceEntry:()=>qAn,toRenameLocation:()=>e9s});function vXt(s,c,g,d){let h=MLs(s,g,d);return(_,S,R)=>{let{directImports:T,indirectUsers:W}=PLs(s,c,h,S,g,d);return{indirectUsers:W,...WLs(T,_,S.exportKind,g,R)}}}var PAn=(s=>(s[s.Named=0]="Named",s[s.Default=1]="Default",s[s.ExportEquals=2]="ExportEquals",s))(PAn||{}),WAn=(s=>(s[s.Import=0]="Import",s[s.Export=1]="Export",s))(WAn||{});function PLs(s,c,g,{exportingModuleSymbol:d,exportKind:h},_,S){let R=Yie(),T=Yie(),W=[],V=!!d.globalExports,M=V?void 0:[];return re(d),{directImports:W,indirectUsers:ee()};function ee(){if(V)return s;if(d.declarations)for(let Te of d.declarations)_F(Te)&&c.has(Te.getSourceFile().fileName)&&Ee(Te);return M.map(ms)}function re(Te){let Ze=Ne(Te);if(Ze){for(let We of Ze)if(R(We))switch(S&&S.throwIfCancellationRequested(),We.kind){case 214:if(Up(We)){ge(We);break}if(!V){let $e=We.parent;if(h===2&&$e.kind===261){let{name:Ye}=$e;if(Ye.kind===80){W.push(Ye);break}}}break;case 80:break;case 272:_e(We,We.name,Ga(We,32),!1);break;case 273:case 352:W.push(We);let Ue=We.importClause&&We.importClause.namedBindings;Ue&&Ue.kind===275?_e(We,Ue.name,!1,!0):!V&&h3(We)&&Ee(QPe(We));break;case 279:We.exportClause?We.exportClause.kind===281?Ee(QPe(We),!0):W.push(We):re(JLs(We,_));break;case 206:!V&&We.isTypeOf&&!We.qualifier&&Ie(We)&&Ee(We.getSourceFile(),!0),W.push(We);break;default:pe.failBadSyntaxKind(We,"Unexpected import kind.")}}}function ge(Te){let Ze=ji(Te,Oit)||Te.getSourceFile();Ee(Ze,!!Ie(Te,!0))}function Ie(Te,Ze=!1){return ji(Te,We=>Ze&&Oit(We)?"quit":LB(We)&&jt(We.modifiers,y))}function _e(Te,Ze,We,Ue){if(h===2)Ue||W.push(Te);else if(!V){let $e=QPe(Te);pe.assert($e.kind===308||$e.kind===268),We||OLs($e,Ze,_)?Ee($e,!0):Ee($e)}}function Ee(Te,Ze=!1){if(pe.assert(!V),!T(Te)||(M.push(Te),!Ze))return;let Ue=_.getMergedSymbol(Te.symbol);if(!Ue)return;pe.assert(!!(Ue.flags&1536));let $e=Ne(Ue);if($e)for(let Ye of $e)Um(Ye)||Ee(QPe(Ye),!0)}function Ne(Te){return g.get(kg(Te).toString())}}function WLs(s,c,g,d,h){let _=[],S=[];function R(ee,re){_.push([ee,re])}if(s)for(let ee of s)T(ee);return{importSearches:_,singleReferences:S};function T(ee){if(ee.kind===272){wXt(ee)&&W(ee.name);return}if(ee.kind===80){W(ee);return}if(ee.kind===206){if(ee.qualifier){let Ie=B0(ee.qualifier);Ie.escapedText===nf(c)&&S.push(Ie)}else g===2&&S.push(ee.argument.literal);return}if(ee.moduleSpecifier.kind!==11)return;if(ee.kind===279){ee.exportClause&&mv(ee.exportClause)&&V(ee.exportClause);return}let{name:re,namedBindings:ge}=ee.importClause||{name:void 0,namedBindings:void 0};if(ge)switch(ge.kind){case 275:W(ge.name);break;case 276:(g===0||g===1)&&V(ge);break;default:pe.assertNever(ge)}if(re&&(g===1||g===2)&&(!h||re.escapedText===KVe(c))){let Ie=d.getSymbolAtLocation(re);R(re,Ie)}}function W(ee){g===2&&(!h||M(ee.escapedText))&&R(ee,d.getSymbolAtLocation(ee))}function V(ee){if(ee)for(let re of ee.elements){let{name:ge,propertyName:Ie}=re;if(M(CF(Ie||ge)))if(Ie)S.push(Ie),(!h||CF(ge)===c.escapedName)&&R(ge,d.getSymbolAtLocation(ge));else{let _e=re.kind===282&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ge);R(ge,_e)}}}function M(ee){return ee===c.escapedName||g!==0&&ee==="default"}}function OLs(s,c,g){let d=g.getSymbolAtLocation(c);return!!MAn(s,h=>{if(!Gh(h))return;let{exportClause:_,moduleSpecifier:S}=h;return!S&&_&&mv(_)&&_.elements.some(R=>g.getExportSpecifierLocalTargetSymbol(R)===d)})}function OAn(s,c,g){var d;let h=[],_=s.getTypeChecker();for(let S of c){let R=g.valueDeclaration;if(R?.kind===308){for(let T of S.referencedFiles)s.getSourceFileFromReference(S,T)===R&&h.push({kind:"reference",referencingFile:S,ref:T});for(let T of S.typeReferenceDirectives){let W=(d=s.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(T,S))==null?void 0:d.resolvedTypeReferenceDirective;W!==void 0&&W.resolvedFileName===R.fileName&&h.push({kind:"reference",referencingFile:S,ref:T})}}HAn(S,(T,W)=>{_.getSymbolAtLocation(W)===g&&h.push(sp(T)?{kind:"implicit",literal:W,referencingFile:S}:{kind:"import",literal:W})})}return h}function MLs(s,c,g){let d=new Map;for(let h of s)g&&g.throwIfCancellationRequested(),HAn(h,(_,S)=>{let R=c.getSymbolAtLocation(S);if(R){let T=kg(R).toString(),W=d.get(T);W||d.set(T,W=[]),W.push(_)}});return d}function MAn(s,c){return F(s.kind===308?s.statements:s.body.statements,g=>c(g)||Oit(g)&&F(g.body&&g.body.statements,c))}function HAn(s,c){if(s.externalModuleIndicator||s.imports!==void 0)for(let g of s.imports)c(v7(g),g);else MAn(s,g=>{switch(g.kind){case 279:case 273:{let d=g;d.moduleSpecifier&&Zg(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 272:{let d=g;wXt(d)&&c(d,d.moduleReference.expression);break}}})}function YAn(s,c,g,d){return d?h():h()||_();function h(){var T;let{parent:W}=s,V=W.parent;if(c.exportSymbol)return W.kind===212?(T=c.declarations)!=null&&T.some(re=>re===W)&&fo(V)?ee(V,!1):void 0:S(c.exportSymbol,R(W));{let re=YLs(W,s);if(re&&Ga(re,32))return km(re)&&re.moduleReference===s?d?void 0:{kind:0,symbol:g.getSymbolAtLocation(re.name)}:S(c,R(re));if(tk(W))return S(c,0);if(Cf(W))return M(W);if(Cf(V))return M(V);if(fo(W))return ee(W,!0);if(fo(V))return ee(V,!0);if(bU(W)||p$e(W))return S(c,0)}function M(re){if(!re.symbol.parent)return;let ge=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ge}}}function ee(re,ge){let Ie;switch(nI(re)){case 1:Ie=0;break;case 2:Ie=2;break;default:return}let _e=ge?g.getSymbolAtLocation(gbe(Ma(re.left,_p))):c;return _e&&S(_e,Ie)}}function _(){if(!QLs(s))return;let W=g.getImmediateAliasedSymbol(c);if(!W||(W=XLs(W,g),W.escapedName==="export="&&(W=HLs(W,g),W===void 0)))return;let V=KVe(W);if(V===void 0||V==="default"||V===c.escapedName)return{kind:0,symbol:W}}function S(T,W){let V=BXt(T,W,g);return V&&{kind:1,symbol:T,exportInfo:V}}function R(T){return Ga(T,2048)?1:0}}function HLs(s,c){var g,d;if(s.flags&2097152)return c.getImmediateAliasedSymbol(s);let h=pe.checkDefined(s.valueDeclaration);if(Cf(h))return(g=Gs(h.expression,mE))==null?void 0:g.symbol;if(fo(h))return(d=Gs(h.right,mE))==null?void 0:d.symbol;if(ll(h))return h.symbol}function YLs(s,c){let g=nc(s)?s:hg(s)?ai(s):void 0;return g?s.name!==c||iQ(g.parent)?void 0:Ch(g.parent.parent)?g.parent.parent:void 0:s}function QLs(s){let{parent:c}=s;switch(c.kind){case 272:return c.name===s&&wXt(c);case 277:return!c.propertyName;case 274:case 275:return pe.assert(c.name===s),!0;case 209:return wo(s)&&CP(c.parent.parent);default:return!1}}function BXt(s,c,g){let d=s.parent;if(!d)return;let h=g.getMergedSymbol(d);return WD(h)?{exportingModuleSymbol:h,exportKind:c}:void 0}function XLs(s,c){if(s.declarations)for(let g of s.declarations){if(R0(g)&&!g.propertyName&&!g.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(g)||s;if(jo(g)&&cN(g.expression)&&!p(g.name))return c.getSymbolAtLocation(g);if(a0(g)&&fo(g.parent.parent)&&nI(g.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(g.name)}return s}function JLs(s,c){return c.getMergedSymbol(QPe(s).symbol)}function QPe(s){if(s.kind===214||s.kind===352)return s.getSourceFile();let{parent:c}=s;return c.kind===308?c:(pe.assert(c.kind===269),Ma(c.parent,Oit))}function Oit(s){return s.kind===268&&s.name.kind===11}function wXt(s){return s.moduleReference.kind===284&&s.moduleReference.expression.kind===11}var QAn=(s=>(s[s.Symbol=0]="Symbol",s[s.Label=1]="Label",s[s.Keyword=2]="Keyword",s[s.This=3]="This",s[s.String=4]="String",s[s.TripleSlashReference=5]="TripleSlashReference",s))(QAn||{}),XAn=(s=>(s[s.Span=0]="Span",s[s.Node=1]="Node",s[s.StringLiteral=2]="StringLiteral",s[s.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",s[s.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",s))(XAn||{});function HF(s,c=1){return{kind:c,node:s.name||s,context:ULs(s)}}function TXt(s){return s&&s.kind===void 0}function ULs(s){if(jh(s))return LU(s);if(s.parent){if(!jh(s.parent)&&!Cf(s.parent)){if(wo(s)){let g=fo(s.parent)?s.parent:_p(s.parent)&&fo(s.parent.parent)&&s.parent.parent.left===s.parent?s.parent.parent:void 0;if(g&&nI(g)!==0)return LU(g)}if($T(s.parent)||rQ(s.parent))return s.parent.parent;if(_U(s.parent)||FP(s.parent)||AY(s.parent))return s.parent;if(mA(s)){let g=B7(s);if(g){let d=ji(g,h=>jh(h)||Lc(h)||u3(h));return jh(d)?LU(d):d}}let c=ji(s,Un);return c?LU(c.parent):void 0}if(s.parent.name===s||Tc(s.parent)||Cf(s.parent)||(eS(s.parent)||hg(s.parent))&&s.parent.propertyName===s||s.kind===90&&Ga(s.parent,2080))return LU(s.parent)}}function LU(s){if(s)switch(s.kind){case 261:return!u_(s.parent)||s.parent.declarations.length!==1?s:Ch(s.parent.parent)?s.parent.parent:DL(s.parent.parent)?LU(s.parent.parent):s.parent;case 209:return LU(s.parent.parent);case 277:return s.parent.parent.parent;case 282:case 275:return s.parent.parent;case 274:case 281:return s.parent;case 227:return VC(s.parent)?s.parent:s;case 251:case 250:return{start:s.initializer,end:s.expression};case 304:case 305:return e9(s.parent)?LU(ji(s.parent,c=>fo(c)||DL(c))):s;case 256:return{start:de(s.getChildren(s.getSourceFile()),c=>c.kind===109),end:s.caseBlock};default:return s}}function RXt(s,c,g){if(!g)return;let d=TXt(g)?JPe(g.start,c,g.end):JPe(g,c);return d.start!==s.start||d.length!==s.length?{contextSpan:d}:void 0}var JAn=(s=>(s[s.Other=0]="Other",s[s.References=1]="References",s[s.Rename=2]="Rename",s))(JAn||{});function KLs(s,c,g,d,h){let _=Lb(d,h),S={use:1},R=Uz.getReferencedSymbolsForNode(h,_,s,g,c,S),T=s.getTypeChecker(),W=Uz.getAdjustedNode(_,S),V=jLs(W)?T.getSymbolAtLocation(W):void 0;return!R||!R.length?void 0:Xt(R,({definition:M,references:ee})=>M&&{definition:T.runWithCancellationToken(c,re=>$Ls(M,re,_)),references:ee.map(re=>t9s(re,V))})}function jLs(s){return s.kind===90||!!T7(s)||fne(s)||s.kind===137&&Tc(s.parent)}function zLs(s,c,g,d,h){let _=Lb(d,h),S,R=UAn(s,c,g,_,h);if(_.parent.kind===212||_.parent.kind===209||_.parent.kind===213||_.kind===108)S=R&&[...R];else if(R){let W=oA(R),V=new Set;for(;!W.isEmpty();){let M=W.dequeue();if(!Zy(V,rd(M.node)))continue;S=Ft(S,M);let ee=UAn(s,c,g,M.node,M.node.pos);ee&&W.enqueue(...ee)}}let T=s.getTypeChecker();return At(S,W=>n9s(W,T))}function UAn(s,c,g,d,h){if(d.kind===308)return;let _=s.getTypeChecker();if(d.parent.kind===305){let S=[];return Uz.getReferenceEntriesForShorthandPropertyAssignment(d,_,R=>S.push(HF(R))),S}else if(d.kind===108||xy(d.parent)){let S=_.getSymbolAtLocation(d);return S.valueDeclaration&&[HF(S.valueDeclaration)]}else return KAn(h,d,s,g,c,{implementations:!0,use:1})}function qLs(s,c,g,d,h,_,S){return At(jAn(Uz.getReferencedSymbolsForNode(h,d,s,g,c,_)),R=>S(R,d,s.getTypeChecker()))}function KAn(s,c,g,d,h,_={},S=new Set(d.map(R=>R.fileName))){return jAn(Uz.getReferencedSymbolsForNode(s,c,g,d,h,_,S))}function jAn(s){return s&&er(s,c=>c.references)}function $Ls(s,c,g){let d=(()=>{switch(s.type){case 0:{let{symbol:V}=s,{displayParts:M,kind:ee}=zAn(V,c,g),re=M.map(_e=>_e.text).join(""),ge=V.declarations&&Nc(V.declarations),Ie=ge?Il(ge)||ge:g;return{...XPe(Ie),name:re,kind:ee,displayParts:M,context:LU(ge)}}case 1:{let{node:V}=s;return{...XPe(V),name:V.text,kind:"label",displayParts:[SE(V.text,17)]}}case 2:{let{node:V}=s,M=Vi(V.kind);return{...XPe(V),name:M,kind:"keyword",displayParts:[{text:M,kind:"keyword"}]}}case 3:{let{node:V}=s,M=c.getSymbolAtLocation(V),ee=M&&i9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,M,V.getSourceFile(),kU(V),V).displayParts||[gS("this")];return{...XPe(V),name:"this",kind:"var",displayParts:ee}}case 4:{let{node:V}=s;return{...XPe(V),name:V.text,kind:"var",displayParts:[SE(xp(V),8)]}}case 5:return{textSpan:t9(s.reference),sourceFile:s.file,name:s.reference.fileName,kind:"string",displayParts:[SE(`"${s.reference.fileName}"`,8)]};default:return pe.assertNever(s)}})(),{sourceFile:h,textSpan:_,name:S,kind:R,displayParts:T,context:W}=d;return{containerKind:"",containerName:"",fileName:h.fileName,kind:R,name:S,textSpan:_,displayParts:T,...RXt(_,h,W)}}function XPe(s){let c=s.getSourceFile();return{sourceFile:c,textSpan:JPe(Un(s)?s.expression:s,c)}}function zAn(s,c,g){let d=Uz.getIntersectingMeaningFromDeclarations(g,s),h=s.declarations&&Nc(s.declarations)||g,{displayParts:_,symbolKind:S}=i9.getSymbolDisplayPartsDocumentationAndSymbolKind(c,s,h.getSourceFile(),h,h,d);return{displayParts:_,kind:S}}function e9s(s,c,g,d,h){return{...Mit(s),...d&&r9s(s,c,g,h)}}function t9s(s,c){let g=qAn(s);return c?{...g,isDefinition:s.kind!==0&&edn(s.node,c)}:g}function qAn(s){let c=Mit(s);if(s.kind===0)return{...c,isWriteAccess:!1};let{kind:g,node:d}=s;return{...c,isWriteAccess:NXt(d),isInString:g===2?!0:void 0}}function Mit(s){if(s.kind===0)return{textSpan:s.textSpan,fileName:s.fileName};{let c=s.node.getSourceFile(),g=JPe(s.node,c);return{textSpan:g,fileName:c.fileName,...RXt(g,c,s.context)}}}function r9s(s,c,g,d){if(s.kind!==0&&(Ir(c)||mA(c))){let{node:h,kind:_}=s,S=h.parent,R=c.text,T=a0(S);if(T||p1e(S)&&S.name===h&&S.dotDotDotToken===void 0){let W={prefixText:R+": "},V={suffixText:": "+R};if(_===3)return W;if(_===4)return V;if(T){let M=S.parent;return og(M)&&fo(M.parent)&&cN(M.parent.left)?W:V}else return W}else if(uy(S)&&!S.propertyName){let W=R0(c.parent)?g.getExportSpecifierLocalTargetSymbol(c.parent):g.getSymbolAtLocation(c);return k(W.declarations,S)?{prefixText:R+" as "}:VB}else if(R0(S)&&!S.propertyName)return c===s.node||g.getSymbolAtLocation(c)===g.getSymbolAtLocation(s.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(s.kind!==0&&mC(s.node)&&_p(s.node.parent)){let h=Wrt(d);return{prefixText:h,suffixText:h}}return VB}function n9s(s,c){let g=Mit(s);if(s.kind!==0){let{node:d}=s;return{...g,...i9s(d,c)}}else return{...g,kind:"",displayParts:[]}}function i9s(s,c){let g=c.getSymbolAtLocation(jh(s)&&s.name?s.name:s);return g?zAn(g,c,s):s.kind===211?{kind:"interface",displayParts:[k0(21),gS("object literal"),k0(22)]}:s.kind===232?{kind:"local class",displayParts:[k0(21),gS("anonymous local class"),k0(22)]}:{kind:pQ(s),displayParts:[]}}function s9s(s){let c=Mit(s);if(s.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let g=NXt(s.node),d={textSpan:c.textSpan,kind:g?"writtenReference":"reference",isInString:s.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function JPe(s,c,g){let d=s.getStart(c),h=(g||s).getEnd();return mA(s)&&h-d>2&&(pe.assert(g===void 0),d+=1,h-=1),g?.kind===270&&(h=g.getFullStart()),wA(d,h)}function $An(s){return s.kind===0?s.textSpan:JPe(s.node,s.node.getSourceFile())}function NXt(s){let c=T7(s);return!!c&&o9s(c)||s.kind===90||B3(s)}function edn(s,c){var g;if(!c)return!1;let d=T7(s)||(s.kind===90?s.parent:fne(s)||s.kind===137&&Tc(s.parent)?s.parent.parent:void 0),h=d&&fo(d)?d.left:void 0;return!!(d&&((g=c.declarations)!=null&&g.some(_=>_===d||_===h)))}function o9s(s){if(s.flags&33554432)return!0;switch(s.kind){case 227:case 209:case 264:case 232:case 90:case 267:case 307:case 282:case 274:case 272:case 277:case 265:case 339:case 347:case 292:case 268:case 271:case 275:case 281:case 170:case 305:case 266:case 169:return!0;case 304:return!e9(s.parent);case 263:case 219:case 177:case 175:case 178:case 179:return!!s.body;case 261:case 173:return!!s.initializer||iQ(s.parent);case 174:case 172:case 349:case 342:return!1;default:return pe.failBadSyntaxKind(s)}}var Uz;(s=>{function c(Pr,Pn,pt,on,it,nr={},Fr=new Set(on.map(Kr=>Kr.fileName))){var Kr,Dn;if(Pn=g(Pn,nr),ll(Pn)){let ds=nse.getReferenceAtPosition(Pn,Pr,pt);if(!ds?.file)return;let Mt=pt.getTypeChecker().getMergedSymbol(ds.file.symbol);if(Mt)return W(pt,Mt,!1,on,Fr);let cn=pt.getFileIncludeReasons();return cn?[{definition:{type:5,reference:ds.reference,file:Pn},references:h(ds.file,cn,pt)||E}]:void 0}if(!nr.implementations){let ds=M(Pn,on,it);if(ds)return ds}let hr=pt.getTypeChecker(),En=hr.getSymbolAtLocation(Tc(Pn)&&Pn.parent.name||Pn);if(!En){if(!nr.implementations&&mA(Pn)){if(jVe(Pn)){let ds=pt.getFileIncludeReasons(),Mt=(Dn=(Kr=pt.getResolvedModuleFromModuleSpecifier(Pn))==null?void 0:Kr.resolvedModule)==null?void 0:Dn.resolvedFileName,cn=Mt?pt.getSourceFile(Mt):void 0;if(cn)return[{definition:{type:4,node:Pn},references:h(cn,ds,pt)||E}]}return ba(Pn,on,hr,it)}return}if(En.escapedName==="export=")return W(pt,En.parent,!1,on,Fr);let Ni=S(En,pt,on,it,nr,Fr);if(Ni&&!(En.flags&33554432))return Ni;let Gi=_(Pn,En,hr),nn=Gi&&S(Gi,pt,on,it,nr,Fr),bn=ee(En,Pn,on,Fr,hr,it,nr);return R(pt,Ni,bn,nn)}s.getReferencedSymbolsForNode=c;function g(Pr,Pn){return Pn.use===1?Pr=vrt(Pr):Pn.use===2&&(Pr=WVe(Pr)),Pr}s.getAdjustedNode=g;function d(Pr,Pn,pt,on=new Set(pt.map(it=>it.fileName))){var it,nr;let Fr=(it=Pn.getSourceFile(Pr))==null?void 0:it.symbol;if(Fr)return((nr=W(Pn,Fr,!1,pt,on)[0])==null?void 0:nr.references)||E;let Kr=Pn.getFileIncludeReasons(),Dn=Pn.getSourceFile(Pr);return Dn&&Kr&&h(Dn,Kr,Pn)||E}s.getReferencesForFileName=d;function h(Pr,Pn,pt){let on,it=Pn.get(Pr.path)||E;for(let nr of it)if(K3(nr)){let Fr=pt.getSourceFileByPath(nr.file),Kr=Zde(pt,nr);Fie(Kr)&&(on=Ft(on,{kind:0,fileName:Fr.fileName,textSpan:t9(Kr)}))}return on}function _(Pr,Pn,pt){if(Pr.parent&&sEe(Pr.parent)){let on=pt.getAliasedSymbol(Pn),it=pt.getMergedSymbol(on);if(on!==it)return it}}function S(Pr,Pn,pt,on,it,nr){let Fr=Pr.flags&1536&&Pr.declarations&&de(Pr.declarations,ll);if(!Fr)return;let Kr=Pr.exports.get("export="),Dn=W(Pn,Pr,!!Kr,pt,nr);if(!Kr||!nr.has(Fr.fileName))return Dn;let hr=Pn.getTypeChecker();return Pr=FC(Kr,hr),R(Pn,Dn,ee(Pr,void 0,pt,nr,hr,on,it))}function R(Pr,...Pn){let pt;for(let on of Pn)if(!(!on||!on.length)){if(!pt){pt=on;continue}for(let it of on){if(!it.definition||it.definition.type!==0){pt.push(it);continue}let nr=it.definition.symbol,Fr=Se(pt,Dn=>!!Dn.definition&&Dn.definition.type===0&&Dn.definition.symbol===nr);if(Fr===-1){pt.push(it);continue}let Kr=pt[Fr];pt[Fr]={definition:Kr.definition,references:Kr.references.concat(it.references).sort((Dn,hr)=>{let En=T(Pr,Dn),Ni=T(Pr,hr);if(En!==Ni)return Zt(En,Ni);let Gi=$An(Dn),nn=$An(hr);return Gi.start!==nn.start?Zt(Gi.start,nn.start):Zt(Gi.length,nn.length)})}}}return pt}function T(Pr,Pn){let pt=Pn.kind===0?Pr.getSourceFile(Pn.fileName):Pn.node.getSourceFile();return Pr.getSourceFiles().indexOf(pt)}function W(Pr,Pn,pt,on,it){pe.assert(!!Pn.valueDeclaration);let nr=Xt(OAn(Pr,on,Pn),Kr=>{if(Kr.kind==="import"){let Dn=Kr.literal.parent;if(EE(Dn)){let hr=Ma(Dn.parent,Um);if(pt&&!hr.qualifier)return}return HF(Kr.literal)}else if(Kr.kind==="implicit"){let Dn=Kr.literal.text!==PD&&Sz(Kr.referencingFile,hr=>hr.transformFlags&2?bN(hr)||_U(hr)||P3(hr)?hr:void 0:"skip")||Kr.referencingFile.statements[0]||Kr.referencingFile;return HF(Dn)}else return{kind:0,fileName:Kr.referencingFile.fileName,textSpan:t9(Kr.ref)}});if(Pn.declarations)for(let Kr of Pn.declarations)switch(Kr.kind){case 308:break;case 268:it.has(Kr.getSourceFile().fileName)&&nr.push(HF(Kr.name));break;default:pe.assert(!!(Pn.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Fr=Pn.exports.get("export=");if(Fr?.declarations)for(let Kr of Fr.declarations){let Dn=Kr.getSourceFile();if(it.has(Dn.fileName)){let hr=fo(Kr)&&jo(Kr.left)?Kr.left.expression:Cf(Kr)?pe.checkDefined(qd(Kr,95,Dn)):Il(Kr)||Kr;nr.push(HF(hr))}}return nr.length?[{definition:{type:0,symbol:Pn},references:nr}]:E}function V(Pr){return Pr.kind===148&&xB(Pr.parent)&&Pr.parent.operator===148}function M(Pr,Pn,pt){if(Qde(Pr.kind))return Pr.kind===116&&qT(Pr.parent)||Pr.kind===148&&!V(Pr)?void 0:_r(Pn,Pr.kind,pt,Pr.kind===148?V:void 0);if(uv(Pr.parent)&&Pr.parent.name===Pr)return Pt(Pn,pt);if(Ge(Pr)&&fl(Pr.parent))return[{definition:{type:2,node:Pr},references:[HF(Pr)]}];if(o1e(Pr)){let on=GVe(Pr.parent,Pr.text);return on&&Lt(on.parent,on)}else if(Irt(Pr))return Lt(Pr.parent,Pr);if(Oie(Pr))return Gl(Pr,Pn,pt);if(Pr.kind===108)return Zn(Pr)}function ee(Pr,Pn,pt,on,it,nr,Fr){let Kr=Pn&&Ie(Pr,Pn,it,!Tu(Fr))||Pr,Dn=Pn&&Fr.use!==2?pa(Pn,Kr):7,hr=[],En=new Ne(pt,on,Pn?ge(Pn):0,it,nr,Dn,Fr,hr),Ni=!Tu(Fr)||!Kr.declarations?void 0:de(Kr.declarations,R0);if(Ni)Gr(Ni.name,Kr,Ni,En.createSearch(Pn,Pr,void 0),En,!0,!0);else if(Pn&&Pn.kind===90&&Kr.escapedName==="default"&&Kr.parent)zt(Pn,Kr,En),Te(Pn,Kr,{exportingModuleSymbol:Kr.parent,exportKind:1},En);else{let Gi=En.createSearch(Pn,Kr,void 0,{allSearchSymbols:Pn?hc(Kr,Pn,it,Fr.use===2,!!Fr.providePrefixAndSuffixTextForRename,!!Fr.implementations):[Kr]});re(Kr,En,Gi)}return hr}function re(Pr,Pn,pt){let on=Tt(Pr);if(on)nt(on,on.getSourceFile(),pt,Pn,!(ll(on)&&!k(Pn.sourceFiles,on)));else for(let it of Pn.sourceFiles)Pn.cancellationToken.throwIfCancellationRequested(),$e(it,pt,Pn)}function ge(Pr){switch(Pr.kind){case 177:case 137:return 1;case 80:if(xa(Pr.parent))return pe.assert(Pr.parent.name===Pr),2;default:return 0}}function Ie(Pr,Pn,pt,on){let{parent:it}=Pn;return R0(it)&&on?dt(Pn,Pr,it,pt):X(Pr.declarations,nr=>{if(!nr.parent){if(Pr.flags&33554432)return;pe.fail(`Unexpected symbol at ${pe.formatSyntaxKind(Pn.kind)}: ${pe.formatSymbol(Pr)}`)}return mh(nr.parent)&&aS(nr.parent.parent)?pt.getPropertyOfType(pt.getTypeFromTypeNode(nr.parent.parent),Pr.name):void 0})}let _e;(Pr=>{Pr[Pr.None=0]="None",Pr[Pr.Constructor=1]="Constructor",Pr[Pr.Class=2]="Class"})(_e||(_e={}));function Ee(Pr){if(!(Pr.flags&33555968))return;let Pn=Pr.declarations&&de(Pr.declarations,pt=>!ll(pt)&&!xh(pt));return Pn&&Pn.symbol}class Ne{constructor(Pn,pt,on,it,nr,Fr,Kr,Dn){this.sourceFiles=Pn,this.sourceFilesSet=pt,this.specialSearchKind=on,this.checker=it,this.cancellationToken=nr,this.searchMeaning=Fr,this.options=Kr,this.result=Dn,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=Yie(),this.markSeenReExportRHS=Yie(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(Pn){return this.sourceFilesSet.has(Pn.fileName)}getImportSearches(Pn,pt){return this.importTracker||(this.importTracker=vXt(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(Pn,pt,this.options.use===2)}createSearch(Pn,pt,on,it={}){let{text:nr=l2(nf(W7(pt)||Ee(pt)||pt)),allSearchSymbols:Fr=[pt]}=it,Kr=Ap(nr),Dn=this.options.implementations&&Pn?Cs(Pn,pt,this.checker):void 0;return{symbol:pt,comingFrom:on,text:nr,escapedText:Kr,parents:Dn,allSearchSymbols:Fr,includes:hr=>k(Fr,hr)}}referenceAdder(Pn){let pt=kg(Pn),on=this.symbolIdToReferences[pt];return on||(on=this.symbolIdToReferences[pt]=[],this.result.push({definition:{type:0,symbol:Pn},references:on})),(it,nr)=>on.push(HF(it,nr))}addStringOrCommentReference(Pn,pt){this.result.push({definition:void 0,references:[{kind:0,fileName:Pn,textSpan:pt}]})}markSearchedSymbols(Pn,pt){let on=rd(Pn),it=this.sourceFileToSeenSymbols[on]||(this.sourceFileToSeenSymbols[on]=new Set),nr=!1;for(let Fr of pt)nr=Ar(it,kg(Fr))||nr;return nr}}function Te(Pr,Pn,pt,on){let{importSearches:it,singleReferences:nr,indirectUsers:Fr}=on.getImportSearches(Pn,pt);if(nr.length){let Kr=on.referenceAdder(Pn);for(let Dn of nr)We(Dn,on)&&Kr(Dn)}for(let[Kr,Dn]of it)Gt(Kr.getSourceFile(),on.createSearch(Kr,Dn,1),on);if(Fr.length){let Kr;switch(pt.exportKind){case 0:Kr=on.createSearch(Pr,Pn,1);break;case 1:Kr=on.options.use===2?void 0:on.createSearch(Pr,Pn,1,{text:"default"});break;case 2:break}if(Kr)for(let Dn of Fr)$e(Dn,Kr,on)}}function Ze(Pr,Pn,pt,on,it,nr,Fr,Kr){let Dn=vXt(Pr,new Set(Pr.map(Gi=>Gi.fileName)),Pn,pt),{importSearches:hr,indirectUsers:En,singleReferences:Ni}=Dn(on,{exportKind:Fr?1:0,exportingModuleSymbol:it},!1);for(let[Gi]of hr)Kr(Gi);for(let Gi of Ni)Ir(Gi)&&Um(Gi.parent)&&Kr(Gi);for(let Gi of En)for(let nn of _t(Gi,Fr?"default":nr)){let bn=Pn.getSymbolAtLocation(nn),ds=jt(bn?.declarations,Mt=>!!Gs(Mt,Cf));Ir(nn)&&!eS(nn.parent)&&(bn===on||ds)&&Kr(nn)}}s.eachExportReference=Ze;function We(Pr,Pn){return Dt(Pr,Pn)?Pn.options.use!==2?!0:!Ir(Pr)&&!eS(Pr.parent)?!1:!(eS(Pr.parent)&&lv(Pr)):!1}function Ue(Pr,Pn){if(Pr.declarations)for(let pt of Pr.declarations){let on=pt.getSourceFile();Gt(on,Pn.createSearch(pt,Pr,0),Pn,Pn.includesSourceFile(on))}}function $e(Pr,Pn,pt){qnt(Pr).get(Pn.escapedText)!==void 0&&Gt(Pr,Pn,pt)}function Ye(Pr,Pn){return e9(Pr.parent.parent)?Pn.getPropertySymbolOfDestructuringAssignment(Pr):void 0}function Tt(Pr){let{declarations:Pn,flags:pt,parent:on,valueDeclaration:it}=Pr;if(it&&(it.kind===219||it.kind===232))return it;if(!Pn)return;if(pt&8196){let Kr=de(Pn,Dn=>Gb(Dn,2)||pC(Dn));return Kr?ML(Kr,264):void 0}if(Pn.some(p1e))return;let nr=on&&!(Pr.flags&262144);if(nr&&!(WD(on)&&!on.globalExports))return;let Fr;for(let Kr of Pn){let Dn=kU(Kr);if(Fr&&Fr!==Dn||!Dn||Dn.kind===308&&!vl(Dn))return;if(Fr=Dn,UA(Fr)){let hr;for(;hr=vye(Fr);)Fr=hr}}return nr?Fr.getSourceFile():Fr}function ot(Pr,Pn,pt,on=pt){return Qe(Pr,Pn,pt,()=>!0,on)||!1}s.isSymbolReferencedInFile=ot;function Qe(Pr,Pn,pt,on,it=pt){let nr=Ve(Pr.parent,Pr.parent.parent)?ma(Pn.getSymbolsOfParameterPropertyDeclaration(Pr.parent,Pr.text)):Pn.getSymbolAtLocation(Pr);if(nr)for(let Fr of _t(pt,nr.name,it)){if(!Ir(Fr)||Fr===Pr||Fr.escapedText!==Pr.escapedText)continue;let Kr=Pn.getSymbolAtLocation(Fr);if(Kr===nr||Pn.getShorthandAssignmentValueSymbol(Fr.parent)===nr||R0(Fr.parent)&&dt(Fr,Kr,Fr.parent,Pn)===nr){let Dn=on(Fr);if(Dn)return Dn}}}s.eachSymbolReferenceInFile=Qe;function mt(Pr,Pn){return Me(_t(Pn,Pr),it=>!!T7(it)).reduce((it,nr)=>{let Fr=on(nr);return!jt(it.declarationNames)||Fr===it.depth?(it.declarationNames.push(nr),it.depth=Fr):FrEn===it)&&on(Fr,Dn))return!0}return!1}s.someSignatureUsage=ht;function _t(Pr,Pn,pt=Pr){return Xt(Rt(Pr,Pn,pt),on=>{let it=Lb(Pr,on);return it===Pr?void 0:it})}function Rt(Pr,Pn,pt=Pr){let on=[];if(!Pn||!Pn.length)return on;let it=Pr.text,nr=it.length,Fr=Pn.length,Kr=it.indexOf(Pn,pt.pos);for(;Kr>=0&&!(Kr>pt.end);){let Dn=Kr+Fr;(Kr===0||!s1(it.charCodeAt(Kr-1),99))&&(Dn===nr||!s1(it.charCodeAt(Dn),99))&&on.push(Kr),Kr=it.indexOf(Pn,Kr+Fr+1)}return on}function Lt(Pr,Pn){let pt=Pr.getSourceFile(),on=Pn.text,it=Xt(_t(pt,on,Pr),nr=>nr===Pn||o1e(nr)&&GVe(nr,on)===Pn?HF(nr):void 0);return[{definition:{type:1,node:Pn},references:it}]}function Ke(Pr,Pn){switch(Pr.kind){case 81:if(O3(Pr.parent))return!0;case 80:return Pr.text.length===Pn.length;case 15:case 11:{let pt=Pr;return pt.text.length===Pn.length&&(FVe(pt)||_rt(Pr)||X5t(Pr)||Zl(Pr.parent)&&f3(Pr.parent)&&Pr.parent.arguments[1]===Pr||eS(Pr.parent))}case 9:return FVe(Pr)&&Pr.text.length===Pn.length;case 90:return Pn.length===7;default:return!1}}function Pt(Pr,Pn){let pt=er(Pr,on=>(Pn.throwIfCancellationRequested(),Xt(_t(on,"meta",on),it=>{let nr=it.parent;if(uv(nr))return HF(nr)})));return pt.length?[{definition:{type:2,node:pt[0].node},references:pt}]:void 0}function _r(Pr,Pn,pt,on){let it=er(Pr,nr=>(pt.throwIfCancellationRequested(),Xt(_t(nr,Vi(Pn),nr),Fr=>{if(Fr.kind===Pn&&(!on||on(Fr)))return HF(Fr)})));return it.length?[{definition:{type:2,node:it[0].node},references:it}]:void 0}function Gt(Pr,Pn,pt,on=!0){return pt.cancellationToken.throwIfCancellationRequested(),nt(Pr,Pr,Pn,pt,on)}function nt(Pr,Pn,pt,on,it){if(on.markSearchedSymbols(Pn,pt.allSearchSymbols))for(let nr of Rt(Pn,pt.text,Pr))tr(Pn,nr,pt,on,it)}function Dt(Pr,Pn){return!!(DU(Pr)&Pn.searchMeaning)}function tr(Pr,Pn,pt,on,it){let nr=Lb(Pr,Pn);if(!Ke(nr,pt.text)){!on.options.implementations&&(on.options.findInStrings&&Zz(Pr,Pn)||on.options.findInComments&&sMt(Pr,Pn))&&on.addStringOrCommentReference(Pr.fileName,zd(Pn,pt.text.length));return}if(!Dt(nr,on))return;let Fr=on.checker.getSymbolAtLocation(nr);if(!Fr)return;let Kr=nr.parent;if(uy(Kr)&&Kr.propertyName===nr)return;if(R0(Kr)){pe.assert(nr.kind===80||nr.kind===11),Gr(nr,Fr,Kr,pt,on,it);return}if(dY(Kr)&&Kr.isNameFirst&&Kr.typeExpression&&yU(Kr.typeExpression.type)&&Kr.typeExpression.type.jsDocPropertyTags&&B(Kr.typeExpression.type.jsDocPropertyTags)){ur(Kr.typeExpression.type.jsDocPropertyTags,nr,pt,on);return}let Dn=lo(pt,Fr,nr,on);if(!Dn){ir(Fr,pt,on);return}switch(on.specialSearchKind){case 0:it&&zt(nr,Dn,on);break;case 1:Ht(nr,Pr,pt,on);break;case 2:Br(nr,pt,on);break;default:pe.assertNever(on.specialSearchKind)}wo(nr)&&hg(nr.parent)&&CP(nr.parent.parent.parent)&&(Fr=nr.parent.symbol,!Fr)||st(nr,Fr,pt,on)}function ur(Pr,Pn,pt,on){let it=on.referenceAdder(pt.symbol);zt(Pn,pt.symbol,on),F(Pr,nr=>{zi(nr.name)&&it(nr.name.left)})}function Gr(Pr,Pn,pt,on,it,nr,Fr){pe.assert(!Fr||!!it.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:Kr,propertyName:Dn,name:hr}=pt,En=Kr.parent,Ni=dt(Pr,Pn,pt,it.checker);if(!Fr&&!on.includes(Ni))return;if(Dn?Pr===Dn?(En.moduleSpecifier||Gi(),nr&&it.options.use!==2&&it.markSeenReExportRHS(hr)&&zt(hr,pe.checkDefined(pt.symbol),it)):it.markSeenReExportRHS(Pr)&&Gi():it.options.use===2&&lv(hr)||Gi(),!Tu(it.options)||Fr){let bn=lv(Pr)||lv(pt.name)?1:0,ds=pe.checkDefined(pt.symbol),Mt=BXt(ds,bn,it.checker);Mt&&Te(Pr,ds,Mt,it)}if(on.comingFrom!==1&&En.moduleSpecifier&&!Dn&&!Tu(it.options)){let nn=it.checker.getExportSpecifierLocalTargetSymbol(pt);nn&&Ue(nn,it)}function Gi(){nr&&zt(Pr,Ni,it)}}function dt(Pr,Pn,pt,on){return pr(Pr,pt)&&on.getExportSpecifierLocalTargetSymbol(pt)||Pn}function pr(Pr,Pn){let{parent:pt,propertyName:on,name:it}=Pn;return pe.assert(on===Pr||it===Pr),on?on===Pr:!pt.parent.moduleSpecifier}function st(Pr,Pn,pt,on){let it=YAn(Pr,Pn,on.checker,pt.comingFrom===1);if(!it)return;let{symbol:nr}=it;it.kind===0?Tu(on.options)||Ue(nr,on):Te(Pr,nr,it.exportInfo,on)}function ir({flags:Pr,valueDeclaration:Pn},pt,on){let it=on.checker.getShorthandAssignmentValueSymbol(Pn),nr=Pn&&Il(Pn);!(Pr&33554432)&&nr&&pt.includes(it)&&zt(nr,it,on)}function zt(Pr,Pn,pt){let{kind:on,symbol:it}="kind"in Pn?Pn:{kind:void 0,symbol:Pn};if(pt.options.use===2&&Pr.kind===90)return;let nr=pt.referenceAdder(it);pt.options.implementations?si(Pr,nr,pt):nr(Pr,on)}function Ht(Pr,Pn,pt,on){Ode(Pr)&&zt(Pr,pt.symbol,on);let it=()=>on.referenceAdder(pt.symbol);if(xa(Pr.parent))pe.assert(Pr.kind===90||Pr.parent.name===Pr),mn(pt.symbol,Pn,it());else{let nr=Tg(Pr);nr&&(Zi(nr,it()),An(nr,on))}}function Br(Pr,Pn,pt){zt(Pr,Pn.symbol,pt);let on=Pr.parent;if(pt.options.use===2||!xa(on))return;pe.assert(on.name===Pr);let it=pt.referenceAdder(Pn.symbol);for(let nr of on.members)NL(nr)&&cg(nr)&&nr.body&&nr.body.forEachChild(function Fr(Kr){Kr.kind===110?it(Kr):!bu(Kr)&&!xa(Kr)&&Kr.forEachChild(Fr)})}function mn(Pr,Pn,pt){let on=jn(Pr);if(on&&on.declarations)for(let it of on.declarations){let nr=qd(it,137,Pn);pe.assert(it.kind===177&&!!nr),pt(nr)}Pr.exports&&Pr.exports.forEach(it=>{let nr=it.valueDeclaration;if(nr&&nr.kind===175){let Fr=nr.body;Fr&&Qu(Fr,110,Kr=>{Ode(Kr)&&pt(Kr)})}})}function jn(Pr){return Pr.members&&Pr.members.get("__constructor")}function Zi(Pr,Pn){let pt=jn(Pr.symbol);if(pt&&pt.declarations)for(let on of pt.declarations){pe.assert(on.kind===177);let it=on.body;it&&Qu(it,108,nr=>{drt(nr)&&Pn(nr)})}}function Ns(Pr){return!!jn(Pr.symbol)}function An(Pr,Pn){if(Ns(Pr))return;let pt=Pr.symbol,on=Pn.createSearch(void 0,pt,void 0);re(pt,Pn,on)}function si(Pr,Pn,pt){if(HT(Pr)&&Oa(Pr.parent)){Pn(Pr);return}if(Pr.kind!==80)return;Pr.parent.kind===305&&tl(Pr,pt.checker,Pn);let on=ks(Pr);if(on){Pn(on);return}let it=ji(Pr,Kr=>!zi(Kr.parent)&&!uc(Kr.parent)&&!Bx(Kr.parent)),nr=it.parent;if(If(nr)&&nr.type===it&&pt.markSeenContainingTypeReference(nr))if(WT(nr))Fr(nr.initializer);else if(bu(nr)&&nr.body){let Kr=nr.body;Kr.kind===242?yF(Kr,Dn=>{Dn.expression&&Fr(Dn.expression)}):Fr(Kr)}else(Ed(nr)||Qg(nr))&&Fr(nr.expression);function Fr(Kr){Ic(Kr)&&Pn(Kr)}}function ks(Pr){return Ir(Pr)||jo(Pr)?ks(Pr.parent):l_(Pr)?Gs(Pr.parent.parent,Hp(xa,g_)):void 0}function Ic(Pr){switch(Pr.kind){case 218:return Ic(Pr.expression);case 220:case 219:case 211:case 232:case 210:return!0;default:return!1}}function su(Pr,Pn,pt,on){if(Pr===Pn)return!0;let it=kg(Pr)+","+kg(Pn),nr=pt.get(it);if(nr!==void 0)return nr;pt.set(it,!1);let Fr=!!Pr.declarations&&Pr.declarations.some(Kr=>R7(Kr).some(Dn=>{let hr=on.getTypeAtLocation(Dn);return!!hr&&!!hr.symbol&&su(hr.symbol,Pn,pt,on)}));return pt.set(it,Fr),Fr}function Zn(Pr){let Pn=C7(Pr,!1);if(!Pn)return;let pt=256;switch(Pn.kind){case 173:case 172:case 175:case 174:case 177:case 178:case 179:pt&=Nx(Pn),Pn=Pn.parent;break;default:return}let on=Pn.getSourceFile(),it=Xt(_t(on,"super",Pn),nr=>{if(nr.kind!==108)return;let Fr=C7(nr,!1);return Fr&&cg(Fr)===!!pt&&Fr.parent.symbol===Pn.symbol?HF(nr):void 0});return[{definition:{type:0,symbol:Pn.symbol},references:it}]}function ya(Pr){return Pr.kind===80&&Pr.parent.kind===170&&Pr.parent.name===Pr}function Gl(Pr,Pn,pt){let on=r0(Pr,!1,!1),it=256;switch(on.kind){case 175:case 174:if(a2(on)){it&=Nx(on),on=on.parent;break}case 173:case 172:case 177:case 178:case 179:it&=Nx(on),on=on.parent;break;case 308:if(xm(on)||ya(Pr))return;case 263:case 219:break;default:return}let nr=er(on.kind===308?Pn:[on.getSourceFile()],Kr=>(pt.throwIfCancellationRequested(),_t(Kr,"this",ll(on)?Kr:on).filter(Dn=>{if(!Oie(Dn))return!1;let hr=r0(Dn,!1,!1);if(!mE(hr))return!1;switch(on.kind){case 219:case 263:return on.symbol===hr.symbol;case 175:case 174:return a2(on)&&on.symbol===hr.symbol;case 232:case 264:case 211:return hr.parent&&mE(hr.parent)&&on.symbol===hr.parent.symbol&&cg(hr)===!!it;case 308:return hr.kind===308&&!xm(hr)&&!ya(Dn)}}))).map(Kr=>HF(Kr));return[{definition:{type:3,node:X(nr,Kr=>Si(Kr.node.parent)?Kr.node:void 0)||Pr},references:nr}]}function ba(Pr,Pn,pt,on){let it=PVe(Pr,pt),nr=er(Pn,Fr=>(on.throwIfCancellationRequested(),Xt(_t(Fr,Pr.text),Kr=>{if(mA(Kr)&&Kr.text===Pr.text)if(it){let Dn=PVe(Kr,pt);if(it!==pt.getStringType()&&(it===Dn||Wo(Kr,pt)))return HF(Kr,2)}else return GP(Kr)&&!S3(Kr,Fr)?void 0:HF(Kr,2)})));return[{definition:{type:4,node:Pr},references:nr}]}function Wo(Pr,Pn){if(ss(Pr.parent))return Pn.getPropertyOfType(Pn.getTypeAtLocation(Pr.parent.parent),Pr.text)}function hc(Pr,Pn,pt,on,it,nr){let Fr=[];return yr(Pr,Pn,pt,on,!(on&&it),(Kr,Dn,hr)=>{hr&&Oi(Pr)!==Oi(hr)&&(hr=void 0),Fr.push(hr||Dn||Kr)},()=>!nr),Fr}function yr(Pr,Pn,pt,on,it,nr,Fr){let Kr=k1e(Pn);if(Kr){let bn=pt.getShorthandAssignmentValueSymbol(Pn.parent);if(bn&&on)return nr(bn,void 0,void 0,3);let ds=pt.getContextualType(Kr.parent),Mt=ds&&X(xPe(Kr,pt,ds,!0),fr=>Gi(fr,4));if(Mt)return Mt;let cn=Ye(Pn,pt),Bt=cn&&nr(cn,void 0,void 0,4);if(Bt)return Bt;let xe=bn&&nr(bn,void 0,void 0,3);if(xe)return xe}let Dn=_(Pn,Pr,pt);if(Dn){let bn=nr(Dn,void 0,void 0,1);if(bn)return bn}let hr=Gi(Pr);if(hr)return hr;if(Pr.valueDeclaration&&Ve(Pr.valueDeclaration,Pr.valueDeclaration.parent)){let bn=pt.getSymbolsOfParameterPropertyDeclaration(Ma(Pr.valueDeclaration,Si),Pr.name);return pe.assert(bn.length===2&&!!(bn[0].flags&1)&&!!(bn[1].flags&4)),Gi(Pr.flags&1?bn[1]:bn[0])}let En=Cp(Pr,282);if(!on||En&&!En.propertyName){let bn=En&&pt.getExportSpecifierLocalTargetSymbol(En);if(bn){let ds=nr(bn,void 0,void 0,1);if(ds)return ds}}if(!on){let bn;return it?bn=p1e(Pn.parent)?zVe(pt,Pn.parent):void 0:bn=nn(Pr,pt),bn&&Gi(bn,4)}if(pe.assert(on),it){let bn=nn(Pr,pt);return bn&&Gi(bn,4)}function Gi(bn,ds){return X(pt.getRootSymbols(bn),Mt=>nr(bn,Mt,void 0,ds)||(Mt.parent&&Mt.parent.flags&96&&Fr(Mt)?hn(Mt.parent,Mt.name,pt,cn=>nr(bn,Mt,cn,ds)):void 0))}function nn(bn,ds){let Mt=Cp(bn,209);if(Mt&&p1e(Mt))return zVe(ds,Mt)}}function hn(Pr,Pn,pt,on){let it=new Set;return nr(Pr);function nr(Fr){if(!(!(Fr.flags&96)||!Zy(it,Fr)))return X(Fr.declarations,Kr=>X(R7(Kr),Dn=>{let hr=pt.getTypeAtLocation(Dn),En=hr.symbol&&pt.getPropertyOfType(hr,Pn);return En&&X(pt.getRootSymbols(En),on)||hr.symbol&&nr(hr.symbol)}))}}function Oi(Pr){return Pr.valueDeclaration?!!(o_(Pr.valueDeclaration)&256):!1}function lo(Pr,Pn,pt,on){let{checker:it}=on;return yr(Pn,pt,it,!1,on.options.use!==2||!!on.options.providePrefixAndSuffixTextForRename,(nr,Fr,Kr,Dn)=>(Kr&&Oi(Pn)!==Oi(Kr)&&(Kr=void 0),Pr.includes(Kr||Fr||nr)?{symbol:Fr&&!(iI(nr)&6)?Fr:nr,kind:Dn}:void 0),nr=>!(Pr.parents&&!Pr.parents.some(Fr=>su(nr.parent,Fr,on.inheritsFromCache,it))))}function pa(Pr,Pn){let pt=DU(Pr),{declarations:on}=Pn;if(on){let it;do{it=pt;for(let nr of on){let Fr=DVe(nr);Fr&pt&&(pt|=Fr)}}while(pt!==it)}return pt}s.getIntersectingMeaningFromDeclarations=pa;function Oa(Pr){return Pr.flags&33554432?!(g_(Pr)||FB(Pr)):I7(Pr)?WT(Pr):kd(Pr)?!!Pr.body:xa(Pr)||a3(Pr)}function tl(Pr,Pn,pt){let on=Pn.getSymbolAtLocation(Pr),it=Pn.getShorthandAssignmentValueSymbol(on.valueDeclaration);if(it)for(let nr of it.getDeclarations())DVe(nr)&1&&pt(nr)}s.getReferenceEntriesForShorthandPropertyAssignment=tl;function Qu(Pr,Pn,pt){Lu(Pr,on=>{on.kind===Pn&&pt(on),Qu(on,Pn,pt)})}function Tg(Pr){return $ye(xVe(Pr).parent)}function Cs(Pr,Pn,pt){let on=Wie(Pr)?Pr.parent:void 0,it=on&&pt.getTypeAtLocation(on.expression),nr=Xt(it&&(it.isUnionOrIntersection()?it.types:it.symbol===Pn.parent?void 0:[it]),Fr=>Fr.symbol&&Fr.symbol.flags&96?Fr.symbol:void 0);return nr.length===0?void 0:nr}function Tu(Pr){return Pr.use===2&&Pr.providePrefixAndSuffixTextForRename}})(Uz||(Uz={}));var nse={};o(nse,{createDefinitionInfo:()=>M1e,getDefinitionAndBoundSpan:()=>d9s,getDefinitionAtPosition:()=>tdn,getReferenceAtPosition:()=>ndn,getTypeDefinitionAtPosition:()=>g9s});function tdn(s,c,g,d,h){var _;let S=ndn(c,g,s),R=S&&[m9s(S.reference.fileName,S.fileName,S.unverified)]||E;if(S?.file)return R;let T=Lb(c,g);if(T===c)return;let{parent:W}=T,V=s.getTypeChecker();if(T.kind===164||Ir(T)&&$Le(W)&&W.tagName===T){let Ee=c9s(V,T);if(Ee!==void 0||T.kind!==164)return Ee||E}if(o1e(T)){let Ee=GVe(T.parent,T.text);return Ee?[DXt(V,Ee,"label",T.text,void 0)]:void 0}switch(T.kind){case 90:if(!cde(T.parent))break;case 84:let Ee=ji(T.parent,ode);if(Ee)return[h9s(Ee,c)];break}let M;switch(T.kind){case 107:case 135:case 127:M=kd;let Ee=ji(T,M);return Ee?[xXt(V,Ee)]:void 0}if(Ge(T)&&fl(T.parent)){let Ee=T.parent.parent,{symbol:Ne,failedAliasResolution:Te}=Hit(Ee,V,h),Ze=Me(Ee.members,fl),We=Ne?V.symbolToString(Ne,Ee):"",Ue=T.getSourceFile();return At(Ze,$e=>{let{pos:Ye}=Av($e);return Ye=Yu(Ue.text,Ye),DXt(V,$e,"constructor","static {}",We,!1,Te,{start:Ye,length:6})})}let{symbol:ee,failedAliasResolution:re}=Hit(T,V,h),ge=T;if(d&&re){let Ee=F([T,...ee?.declarations||E],Te=>ji(Te,Rge)),Ne=Ee&&ZY(Ee);Ne&&({symbol:ee,failedAliasResolution:re}=Hit(Ne,V,h),ge=Ne)}if(!ee&&jVe(ge)){let Ee=(_=s.getResolvedModuleFromModuleSpecifier(ge,c))==null?void 0:_.resolvedModule;if(Ee)return[{name:ge.text,fileName:Ee.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:zd(0,0),failedAliasResolution:re,isAmbient:PC(Ee.resolvedFileName),unverified:ge!==T}]}if(Ig(T)&&(PI(W)||rh(W))&&(ee=W.symbol),!ee)return Nn(R,p9s(T,V));if(d&&ue(ee.declarations,Ee=>Ee.getSourceFile().fileName===c.fileName))return;let Ie=_9s(V,T);if(Ie&&!(eI(T.parent)&&y9s(Ie))){let Ee=xXt(V,Ie,re),Ne=Ze=>Ze!==Ie;if(V.getRootSymbols(ee).some(Ze=>a9s(Ze,Ie))){if(!Tc(Ie))return[Ee];Ne=Ze=>Ze!==Ie&&(pm(Ze)||vd(Ze))}let Te=gpe(V,ee,T,re,Ne)||E;return T.kind===108?[Ee,...Te]:[...Te,Ee]}if(T.parent.kind===305){let Ee=V.getShorthandAssignmentValueSymbol(ee.valueDeclaration),Ne=Ee?.declarations?Ee.declarations.map(Te=>M1e(Te,V,Ee,T,!1,re)):E;return Nn(Ne,rdn(V,T))}if(VI(T)&&hg(W)&&Km(W.parent)&&T===(W.propertyName||W.name)){let Ee=d1e(T),Ne=V.getTypeAtLocation(W.parent);return Ee===void 0?E:er(Ne.isUnion()?Ne.types:[Ne],Te=>{let Ze=Te.getProperty(Ee);return Ze&&gpe(V,Ze,T)})}let _e=rdn(V,T);return Nn(R,_e.length?_e:gpe(V,ee,T,re))}function a9s(s,c){var g;return s===c.symbol||s===c.symbol.parent||Jm(c.parent)||!hF(c.parent)&&s===((g=Gs(c.parent,mE))==null?void 0:g.symbol)}function rdn(s,c){let g=k1e(c);if(g){let d=g&&s.getContextualType(g.parent);if(d)return er(xPe(g,s,d,!1),h=>gpe(s,h,c))}return E}function c9s(s,c){let g=ji(c,PI);if(!(g&&g.name))return;let d=ji(g,xa);if(!d)return;let h=BB(d);if(!h)return;let _=QA(h.expression),S=vd(_)?_.symbol:s.getSymbolAtLocation(_);if(!S)return;let R=zh(g)?s.getTypeOfSymbol(S):s.getDeclaredTypeOfSymbol(S),T;if(Un(g.name)){let W=s.getSymbolAtLocation(g.name);if(!W)return;k7(W)?T=de(s.getPropertiesOfType(R),V=>V.escapedName===W.escapedName):T=s.getPropertyOfType(R,Bc(W.escapedName))}else T=s.getPropertyOfType(R,Bc(hP(g.name)));if(T)return gpe(s,T,c)}function ndn(s,c,g){var d,h;let _=H1e(s.referencedFiles,c);if(_){let T=g.getSourceFileFromReference(s,_);return T&&{reference:_,fileName:T.fileName,file:T,unverified:!1}}let S=H1e(s.typeReferenceDirectives,c);if(S){let T=(d=g.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(S,s))==null?void 0:d.resolvedTypeReferenceDirective,W=T&&g.getSourceFile(T.resolvedFileName);return W&&{reference:S,fileName:W.fileName,file:W,unverified:!1}}let R=H1e(s.libReferenceDirectives,c);if(R){let T=g.getLibFileFromReference(R);return T&&{reference:R,fileName:T.fileName,file:T,unverified:!1}}if(s.imports.length||s.moduleAugmentations.length){let T=Hie(s,c),W;if(jVe(T)&&Xr(T.text)&&(W=g.getResolvedModuleFromModuleSpecifier(T,s))){let V=(h=W.resolvedModule)==null?void 0:h.resolvedFileName,M=V||AE(Mo(s.fileName),T.text);return{file:g.getSourceFile(M),fileName:M,reference:{pos:T.getStart(),end:T.getEnd(),fileName:T.text},unverified:!V}}}}var idn=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function l9s(s,c){let g=c.symbol.name;if(!idn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.target.symbol}function sdn(s,c){if(!c.aliasSymbol)return!1;let g=c.aliasSymbol.name;if(!idn.has(g))return!1;let d=s.resolveName(g,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function u9s(s,c,g,d){var h,_;if(la(c)&4&&l9s(s,c))return O1e(s.getTypeArguments(c)[0],s,g,d);if(sdn(s,c)&&c.aliasTypeArguments)return O1e(c.aliasTypeArguments[0],s,g,d);if(la(c)&32&&c.target&&sdn(s,c.target)){let S=(_=(h=c.aliasSymbol)==null?void 0:h.declarations)==null?void 0:_[0];if(S&&FB(S)&&nh(S.type)&&S.type.typeArguments)return O1e(s.getTypeAtLocation(S.type.typeArguments[0]),s,g,d)}return[]}function g9s(s,c,g){let d=Lb(c,g);if(d===c)return;if(uv(d.parent)&&d.parent.name===d)return O1e(s.getTypeAtLocation(d.parent),s,d.parent,!1);let{symbol:h,failedAliasResolution:_}=Hit(d,s,!1);if(Ig(d)&&(PI(d.parent)||rh(d.parent))&&(h=d.parent.symbol,_=!1),!h)return;let S=s.getTypeOfSymbolAtLocation(h,d),R=A9s(h,S,s),T=R&&O1e(R,s,d,_),[W,V]=T&&T.length!==0?[R,T]:[S,O1e(S,s,d,_)];return V.length?[...u9s(s,W,d,_),...V]:!(h.flags&111551)&&h.flags&788968?gpe(s,FC(h,s),d,_):void 0}function O1e(s,c,g,d){return er(s.isUnion()&&!(s.flags&32)?s.types:[s],h=>h.symbol&&gpe(c,h.symbol,g,d))}function A9s(s,c,g){if(c.symbol===s||s.valueDeclaration&&c.symbol&&nc(s.valueDeclaration)&&s.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return g.getReturnTypeOfSignature(ma(d))}}function d9s(s,c,g){let d=tdn(s,c,g);if(!d||d.length===0)return;let h=H1e(c.referencedFiles,g)||H1e(c.typeReferenceDirectives,g)||H1e(c.libReferenceDirectives,g);if(h)return{definitions:d,textSpan:t9(h)};let _=Lb(c,g),S=zd(_.getStart(),_.getWidth());return{definitions:d,textSpan:S}}function p9s(s,c){return Xt(c.getIndexInfosAtLocation(s),g=>g.declaration&&xXt(c,g.declaration))}function Hit(s,c,g){let d=c.getSymbolAtLocation(s),h=!1;if(d?.declarations&&d.flags&2097152&&!g&&f9s(s,d.declarations[0])){let _=c.getAliasedSymbol(d);if(_.declarations)return{symbol:_};h=!0}return{symbol:d,failedAliasResolution:h}}function f9s(s,c){return s.kind!==80&&(s.kind!==11||!eS(s.parent))?!1:s.parent===c?!0:c.kind!==275}function I9s(s){if(!b7(s))return!1;let c=ji(s,g=>Jm(g)?!0:b7(g)?!1:"quit");return!!c&&nI(c)===5}function gpe(s,c,g,d,h){let _=h!==void 0?Me(c.declarations,h):c.declarations,S=!h&&(W()||V());if(S)return S;let R=Me(_,ee=>!I9s(ee)),T=jt(R)?R:_;return At(T,ee=>M1e(ee,s,c,g,!1,d));function W(){if(c.flags&32&&!(c.flags&19)&&(Ode(g)||g.kind===137)){let ee=de(_,xa);return ee&&M(ee.members,!0)}}function V(){return prt(g)||yrt(g)?M(_,!1):void 0}function M(ee,re){if(!ee)return;let ge=ee.filter(re?Tc:bu),Ie=ge.filter(_e=>!!_e.body);return ge.length?Ie.length!==0?Ie.map(_e=>M1e(_e,s,c,g)):[M1e(Ei(ge),s,c,g,!1,d)]:void 0}}function M1e(s,c,g,d,h,_){let S=c.symbolToString(g),R=i9.getSymbolKind(c,g,d),T=g.parent?c.symbolToString(g.parent,d):"";return DXt(c,s,R,S,T,h,_)}function DXt(s,c,g,d,h,_,S,R){let T=c.getSourceFile();if(!R){let W=Il(c)||c;R=Oy(W,T)}return{fileName:T.fileName,textSpan:R,kind:g,name:d,containerKind:void 0,containerName:h,...Kp.toContextSpan(R,T,Kp.getContextNode(c)),isLocal:!kXt(s,c),isAmbient:!!(c.flags&33554432),unverified:_,failedAliasResolution:S}}function h9s(s,c){let g=Kp.getContextNode(s),d=Oy(TXt(g)?g.start:g,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Kp.toContextSpan(d,c,g),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function kXt(s,c){if(s.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if(WT(c.parent)&&c.parent.initializer===c)return kXt(s,c.parent);switch(c.kind){case 173:case 178:case 179:case 175:if(Gb(c,2))return!1;case 177:case 304:case 305:case 211:case 232:case 220:case 219:return kXt(s,c.parent);default:return!1}}function xXt(s,c,g){return M1e(c,s,c.symbol,c,!1,g)}function H1e(s,c){return de(s,g=>sl(g,c))}function m9s(s,c,g){return{fileName:c,textSpan:wA(0,0),kind:"script",name:s,containerName:void 0,containerKind:void 0,unverified:g}}function C9s(s){let c=ji(s,d=>!Wie(d)),g=c?.parent;return g&&hF(g)&&Yge(g)===c?g:void 0}function _9s(s,c){let g=C9s(c),d=g&&s.getResolvedSignature(g);return Gs(d&&d.declaration,h=>bu(h)&&!x_(h))}function y9s(s){switch(s.kind){case 177:case 186:case 180:case 181:return!0;default:return!1}}var Yit={};o(Yit,{provideInlayHints:()=>v9s});var b9s=s=>new RegExp(`^\\s?/\\*\\*?\\s?${s}\\s?\\*\\/\\s?$`);function E9s(s){return s.includeInlayParameterNameHints==="literals"||s.includeInlayParameterNameHints==="all"}function S9s(s){return s.includeInlayParameterNameHints==="literals"}function GXt(s){return s.interactiveInlayHints===!0}function v9s(s){let{file:c,program:g,span:d,cancellationToken:h,preferences:_}=s,S=c.text,R=g.getCompilerOptions(),T=_1(c,_),W=g.getTypeChecker(),V=[];return M(c),V;function M(Gt){if(!(!Gt||Gt.getFullWidth()===0)){switch(Gt.kind){case 268:case 264:case 265:case 263:case 232:case 219:case 175:case 220:h.throwIfCancellationRequested()}if(q2(d,Gt.pos,Gt.getFullWidth())&&!(uc(Gt)&&!l_(Gt)))return _.includeInlayVariableTypeHints&&nc(Gt)||_.includeInlayPropertyDeclarationTypeHints&&pi(Gt)?Ne(Gt):_.includeInlayEnumMemberValueHints&&LF(Gt)?_e(Gt):E9s(_)&&(Zl(Gt)||f2(Gt))?Te(Gt):(_.includeInlayFunctionParameterTypeHints&&kd(Gt)&&OAe(Gt)&&Tt(Gt),_.includeInlayFunctionLikeReturnTypeHints&&ee(Gt)&&$e(Gt)),Lu(Gt,M)}}function ee(Gt){return lA(Gt)||UA(Gt)||ih(Gt)||uu(Gt)||Bg(Gt)}function re(Gt,nt,Dt,tr){let ur=`${tr?"...":""}${Gt}`,Gr;GXt(_)?(Gr=[_r(ur,nt),{text:":"}],ur=""):ur+=":",V.push({text:ur,position:Dt,kind:"Parameter",whitespaceAfter:!0,displayParts:Gr})}function ge(Gt,nt){V.push({text:typeof Gt=="string"?`: ${Gt}`:"",displayParts:typeof Gt=="string"?void 0:[{text:": "},...Gt],position:nt,kind:"Type",whitespaceBefore:!0})}function Ie(Gt,nt){V.push({text:`= ${Gt}`,position:nt,kind:"Enum",whitespaceBefore:!0})}function _e(Gt){if(Gt.initializer)return;let nt=W.getConstantValue(Gt);nt!==void 0&&Ie(nt.toString(),Gt.end)}function Ee(Gt){return Gt.symbol&&Gt.symbol.flags&1536}function Ne(Gt){if(Gt.initializer===void 0&&!(pi(Gt)&&!(W.getTypeAtLocation(Gt).flags&1))||Nu(Gt.name)||nc(Gt)&&!Pt(Gt)||kh(Gt))return;let Dt=W.getTypeAtLocation(Gt);if(Ee(Dt))return;let tr=_t(Dt);if(tr){let ur=typeof tr=="string"?tr:tr.map(dt=>dt.text).join("");if(_.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&Mp(Gt.name.getText(),ur))return;ge(tr,Gt.name.end)}}function Te(Gt){let nt=Gt.arguments;if(!nt||!nt.length)return;let Dt=W.getResolvedSignature(Gt);if(Dt===void 0)return;let tr=0;for(let ur of nt){let Gr=QA(ur);if(S9s(_)&&!Ue(Gr)){tr++;continue}let dt=0;if(of(Gr)){let st=W.getTypeAtLocation(Gr.expression);if(W.isTupleType(st)){let{elementFlags:ir,fixedLength:zt}=st.target;if(zt===0)continue;let Ht=Se(ir,mn=>!(mn&1));(Ht<0?zt:Ht)>0&&(dt=Ht<0?zt:Ht)}}let pr=W.getParameterIdentifierInfoAtPosition(Dt,tr);if(tr=tr+(dt||1),pr){let{parameter:st,parameterName:ir,isRestParameter:zt}=pr;if(!(_.includeInlayParameterNameHintsWhenArgumentMatchesName||!Ze(Gr,ir))&&!zt)continue;let Br=Bc(ir);if(We(Gr,Br))continue;re(Br,st,ur.getStart(),zt)}}}function Ze(Gt,nt){return Ir(Gt)?Gt.text===nt:jo(Gt)?Gt.name.text===nt:!1}function We(Gt,nt){if(!Uh(nt,Mg(R),Zne(c.scriptKind)))return!1;let Dt=fE(S,Gt.pos);if(!Dt?.length)return!1;let tr=b9s(nt);return jt(Dt,ur=>tr.test(S.substring(ur.pos,ur.end)))}function Ue(Gt){switch(Gt.kind){case 225:{let nt=Gt.operand;return wL(nt)||Ir(nt)&&oz(nt.escapedText)}case 112:case 97:case 106:case 15:case 229:return!0;case 80:{let nt=Gt.escapedText;return Ke(nt)||oz(nt)}}return wL(Gt)}function $e(Gt){if(lA(Gt)&&!qd(Gt,21,c)||xb(Gt)||!Gt.body)return;let Dt=W.getSignatureFromDeclaration(Gt);if(!Dt)return;let tr=W.getTypePredicateOfSignature(Dt);if(tr?.type){let dt=Rt(tr);if(dt){ge(dt,Ye(Gt));return}}let ur=W.getReturnTypeOfSignature(Dt);if(Ee(ur))return;let Gr=_t(ur);Gr&&ge(Gr,Ye(Gt))}function Ye(Gt){let nt=qd(Gt,22,c);return nt?nt.end:Gt.parameters.end}function Tt(Gt){let nt=W.getSignatureFromDeclaration(Gt);if(!nt)return;let Dt=0;for(let tr of Gt.parameters)Pt(tr)&&ot(tr,SF(tr)?nt.thisParameter:nt.parameters[Dt]),!SF(tr)&&Dt++}function ot(Gt,nt){if(kh(Gt)||nt===void 0)return;let tr=Qe(nt);tr!==void 0&&ge(tr,Gt.questionToken?Gt.questionToken.end:Gt.name.end)}function Qe(Gt){let nt=Gt.valueDeclaration;if(!nt||!Si(nt))return;let Dt=W.getTypeOfSymbolAtLocation(Gt,nt);if(!Ee(Dt))return _t(Dt)}function mt(Gt){let Dt=gQ();return dP(tr=>{let ur=W.typeToTypeNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typenode"),Dt.writeNode(4,ur,c,tr)})}function ht(Gt){let Dt=gQ();return dP(tr=>{let ur=W.typePredicateToTypePredicateNode(Gt,void 0,71286784);pe.assertIsDefined(ur,"should always get typePredicateNode"),Dt.writeNode(4,ur,c,tr)})}function _t(Gt){if(!GXt(_))return mt(Gt);let Dt=W.typeToTypeNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typeNode"),Lt(Dt)}function Rt(Gt){if(!GXt(_))return ht(Gt);let Dt=W.typePredicateToTypePredicateNode(Gt,void 0,71286784);return pe.assertIsDefined(Dt,"should always get typenode"),Lt(Dt)}function Lt(Gt){let nt=[];return Dt(Gt),nt;function Dt(dt){var pr,st;if(!dt)return;let ir=Vi(dt.kind);if(ir){nt.push({text:ir});return}if(wL(dt)){nt.push({text:Gr(dt)});return}switch(dt.kind){case 80:pe.assertNode(dt,Ir);let zt=Vo(dt),Ht=dt.symbol&&dt.symbol.declarations&&dt.symbol.declarations.length&&Il(dt.symbol.declarations[0]);Ht?nt.push(_r(zt,Ht)):nt.push({text:zt});break;case 167:pe.assertNode(dt,zi),Dt(dt.left),nt.push({text:"."}),Dt(dt.right);break;case 183:pe.assertNode(dt,bE),dt.assertsModifier&&nt.push({text:"asserts "}),Dt(dt.parameterName),dt.type&&(nt.push({text:" is "}),Dt(dt.type));break;case 184:pe.assertNode(dt,nh),Dt(dt.typeName),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 169:pe.assertNode(dt,Ds),dt.modifiers&&ur(dt.modifiers," "),Dt(dt.name),dt.constraint&&(nt.push({text:" extends "}),Dt(dt.constraint)),dt.default&&(nt.push({text:" = "}),Dt(dt.default));break;case 170:pe.assertNode(dt,Si),dt.modifiers&&ur(dt.modifiers," "),dt.dotDotDotToken&&nt.push({text:"..."}),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 186:pe.assertNode(dt,$D),nt.push({text:"new "}),tr(dt),nt.push({text:" => "}),Dt(dt.type);break;case 187:pe.assertNode(dt,Fw),nt.push({text:"typeof "}),Dt(dt.exprName),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 188:pe.assertNode(dt,mh),nt.push({text:"{"}),dt.members.length&&(nt.push({text:" "}),ur(dt.members,"; "),nt.push({text:" "})),nt.push({text:"}"});break;case 189:pe.assertNode(dt,kF),Dt(dt.elementType),nt.push({text:"[]"});break;case 190:pe.assertNode(dt,Zw),nt.push({text:"["}),ur(dt.elements,", "),nt.push({text:"]"});break;case 203:pe.assertNode(dt,KT),dt.dotDotDotToken&&nt.push({text:"..."}),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),nt.push({text:": "}),Dt(dt.type);break;case 191:pe.assertNode(dt,jL),Dt(dt.type),nt.push({text:"?"});break;case 192:pe.assertNode(dt,zL),nt.push({text:"..."}),Dt(dt.type);break;case 193:pe.assertNode(dt,aS),ur(dt.types," | ");break;case 194:pe.assertNode(dt,mf),ur(dt.types," & ");break;case 195:pe.assertNode(dt,d2),Dt(dt.checkType),nt.push({text:" extends "}),Dt(dt.extendsType),nt.push({text:" ? "}),Dt(dt.trueType),nt.push({text:" : "}),Dt(dt.falseType);break;case 196:pe.assertNode(dt,jT),nt.push({text:"infer "}),Dt(dt.typeParameter);break;case 197:pe.assertNode(dt,fv),nt.push({text:"("}),Dt(dt.type),nt.push({text:")"});break;case 199:pe.assertNode(dt,xB),nt.push({text:`${Vi(dt.operator)} `}),Dt(dt.type);break;case 200:pe.assertNode(dt,Iv),Dt(dt.objectType),nt.push({text:"["}),Dt(dt.indexType),nt.push({text:"]"});break;case 201:pe.assertNode(dt,GB),nt.push({text:"{ "}),dt.readonlyToken&&(dt.readonlyToken.kind===40?nt.push({text:"+"}):dt.readonlyToken.kind===41&&nt.push({text:"-"}),nt.push({text:"readonly "})),nt.push({text:"["}),Dt(dt.typeParameter),dt.nameType&&(nt.push({text:" as "}),Dt(dt.nameType)),nt.push({text:"]"}),dt.questionToken&&(dt.questionToken.kind===40?nt.push({text:"+"}):dt.questionToken.kind===41&&nt.push({text:"-"}),nt.push({text:"?"})),nt.push({text:": "}),dt.type&&Dt(dt.type),nt.push({text:"; }"});break;case 202:pe.assertNode(dt,EE),Dt(dt.literal);break;case 185:pe.assertNode(dt,x_),tr(dt),nt.push({text:" => "}),Dt(dt.type);break;case 206:pe.assertNode(dt,Um),dt.isTypeOf&&nt.push({text:"typeof "}),nt.push({text:"import("}),Dt(dt.argument),dt.assertions&&(nt.push({text:", { assert: "}),ur(dt.assertions.assertClause.elements,", "),nt.push({text:" }"})),nt.push({text:")"}),dt.qualifier&&(nt.push({text:"."}),Dt(dt.qualifier)),dt.typeArguments&&(nt.push({text:"<"}),ur(dt.typeArguments,", "),nt.push({text:">"}));break;case 172:pe.assertNode(dt,ss),(pr=dt.modifiers)!=null&&pr.length&&(ur(dt.modifiers," "),nt.push({text:" "})),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 182:pe.assertNode(dt,w0),nt.push({text:"["}),ur(dt.parameters,", "),nt.push({text:"]"}),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 174:pe.assertNode(dt,hl),(st=dt.modifiers)!=null&&st.length&&(ur(dt.modifiers," "),nt.push({text:" "})),Dt(dt.name),dt.questionToken&&nt.push({text:"?"}),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 180:pe.assertNode(dt,wg),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 181:pe.assertNode(dt,em),nt.push({text:"new "}),tr(dt),dt.type&&(nt.push({text:": "}),Dt(dt.type));break;case 208:pe.assertNode(dt,p2),nt.push({text:"["}),ur(dt.elements,", "),nt.push({text:"]"});break;case 207:pe.assertNode(dt,Km),nt.push({text:"{"}),dt.elements.length&&(nt.push({text:" "}),ur(dt.elements,", "),nt.push({text:" "})),nt.push({text:"}"});break;case 209:pe.assertNode(dt,hg),Dt(dt.name);break;case 225:pe.assertNode(dt,T0),nt.push({text:Vi(dt.operator)}),Dt(dt.operand);break;case 204:pe.assertNode(dt,zT),Dt(dt.head),dt.templateSpans.forEach(Dt);break;case 16:pe.assertNode(dt,tQ),nt.push({text:Gr(dt)});break;case 205:pe.assertNode(dt,mN),Dt(dt.type),Dt(dt.literal);break;case 17:pe.assertNode(dt,uie),nt.push({text:Gr(dt)});break;case 18:pe.assertNode(dt,rde),nt.push({text:Gr(dt)});break;case 198:pe.assertNode(dt,Fx),nt.push({text:"this"});break;case 168:pe.assertNode(dt,Un),nt.push({text:"["}),Dt(dt.expression),nt.push({text:"]"});break;default:pe.failBadSyntaxKind(dt)}}function tr(dt){dt.typeParameters&&(nt.push({text:"<"}),ur(dt.typeParameters,", "),nt.push({text:">"})),nt.push({text:"("}),ur(dt.parameters,", "),nt.push({text:")"})}function ur(dt,pr){dt.forEach((st,ir)=>{ir>0&&nt.push({text:pr}),Dt(st)})}function Gr(dt){switch(dt.kind){case 11:return T===0?`'${YT(dt.text,39)}'`:`"${YT(dt.text,34)}"`;case 16:case 17:case 18:{let pr=dt.rawText??Vye(YT(dt.text,96));switch(dt.kind){case 16:return"`"+pr+"${";case 17:return"}"+pr+"${";case 18:return"}"+pr+"`"}}}return dt.text}}function Ke(Gt){return Gt==="undefined"}function Pt(Gt){if((HL(Gt)||nc(Gt)&&rI(Gt))&&Gt.initializer){let nt=QA(Gt.initializer);return!(Ue(nt)||f2(nt)||og(nt)||Ed(nt))}return!0}function _r(Gt,nt){let Dt=nt.getSourceFile();return{text:Gt,span:Oy(nt,Dt),file:Dt.fileName}}}var n5={};o(n5,{getDocCommentTemplateAtPosition:()=>Z9s,getJSDocParameterNameCompletionDetails:()=>F9s,getJSDocParameterNameCompletions:()=>G9s,getJSDocTagCompletionDetails:()=>Adn,getJSDocTagCompletions:()=>x9s,getJSDocTagNameCompletionDetails:()=>k9s,getJSDocTagNameCompletions:()=>D9s,getJsDocCommentsFromDeclarations:()=>B9s,getJsDocTagsFromDeclarations:()=>R9s});var odn=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],adn,cdn;function B9s(s,c){let g=[];return Xrt(s,d=>{for(let h of T9s(d)){let _=tR(h)&&h.tags&&de(h.tags,R=>R.kind===328&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(h.comment===void 0&&!_||tR(h)&&d.kind!==347&&d.kind!==339&&h.tags&&h.tags.some(R=>R.kind===347||R.kind===339)&&!h.tags.some(R=>R.kind===342||R.kind===343))continue;let S=h.comment?ise(h.comment,c):[];_&&_.comment&&(S=S.concat(ise(_.comment,c))),k(g,S,w9s)||g.push(S)}}),Nr(fe(g,[Jie()]))}function w9s(s,c){return Sc(s,c,(g,d)=>g.kind===d.kind&&g.text===d.text)}function T9s(s){switch(s.kind){case 342:case 349:return[s];case 339:case 347:return[s,s.parent];case 324:if(mie(s.parent))return[s.parent.parent];default:return Sye(s)}}function R9s(s,c){let g=[];return Xrt(s,d=>{let h=Sx(d);if(!(h.some(_=>_.kind===347||_.kind===339)&&!h.some(_=>_.kind===342||_.kind===343)))for(let _ of h)g.push({name:_.tagName.text,text:gdn(_,c)}),g.push(...ldn(udn(_),c))}),g}function ldn(s,c){return er(s,g=>Nn([{name:g.tagName.text,text:gdn(g,c)}],ldn(udn(g),c)))}function udn(s){return dY(s)&&s.isNameFirst&&s.typeExpression&&yU(s.typeExpression.type)?s.typeExpression.type.jsDocPropertyTags:void 0}function ise(s,c){return typeof s=="string"?[gS(s)]:er(s,g=>g.kind===322?[gS(g.text)]:IMt(g,c))}function gdn(s,c){let{comment:g,kind:d}=s,h=N9s(d);switch(d){case 350:let R=s.typeExpression;return R?_(R):g===void 0?void 0:ise(g,c);case 330:return _(s.class);case 329:return _(s.class);case 346:let T=s,W=[];if(T.constraint&&W.push(gS(T.constraint.getText())),B(T.typeParameters)){B(W)&&W.push(BI());let M=T.typeParameters[T.typeParameters.length-1];F(T.typeParameters,ee=>{W.push(h(ee.getText())),M!==ee&&W.push(k0(28),BI())})}return g&&W.push(BI(),...ise(g,c)),W;case 345:case 351:return _(s.typeExpression);case 347:case 339:case 349:case 342:case 348:let{name:V}=s;return V?_(V):g===void 0?void 0:ise(g,c);default:return g===void 0?void 0:ise(g,c)}function _(R){return S(R.getText())}function S(R){return g?R.match(/^https?$/)?[gS(R),...ise(g,c)]:[h(R),BI(),...ise(g,c)]:[gS(R)]}}function N9s(s){switch(s){case 342:return gMt;case 349:return AMt;case 346:return pMt;case 347:case 339:return dMt;default:return gS}}function D9s(){return adn||(adn=At(odn,s=>({name:s,kind:"keyword",kindModifiers:"",sortText:Jz.SortText.LocationPriority})))}var k9s=Adn;function x9s(){return cdn||(cdn=At(odn,s=>({name:`@${s}`,kind:"keyword",kindModifiers:"",sortText:Jz.SortText.LocationPriority})))}function Adn(s){return{name:s,kind:"",kindModifiers:"",displayParts:[gS(s)],documentation:E,tags:void 0,codeActions:void 0}}function G9s(s){if(!Ir(s.name))return E;let c=s.name.text,g=s.parent,d=g.parent;return bu(d)?Xt(d.parameters,h=>{if(!Ir(h.name))return;let _=h.name.text;if(!(g.tags.some(S=>S!==s&&cS(S)&&Ir(S.name)&&S.name.escapedText===_)||c!==void 0&&!Ac(_,c)))return{name:_,kind:"parameter",kindModifiers:"",sortText:Jz.SortText.LocationPriority}}):[]}function F9s(s){return{name:s,kind:"parameter",kindModifiers:"",displayParts:[gS(s)],documentation:E,tags:void 0,codeActions:void 0}}function Z9s(s,c,g,d){let h=Jc(c,g),_=ji(h,tR);if(_&&(_.comment!==void 0||B(_.tags)))return;let S=h.getStart(c);if(!_&&S0;if(Ie&&!Ne){let Te=_e+s+re+" * ",Ze=S===g?s+re:"";return{newText:Te+s+Ie+re+Ee+Ze,caretOffset:Te.length}}return{newText:_e+Ee,caretOffset:3}}function L9s(s,c){let{text:g}=s,d=PB(c,s),h=d;for(;h<=c&&Iu(g.charCodeAt(h));h++);return g.slice(d,h)}function V9s(s,c,g,d){return s.map(({name:h,dotDotDotToken:_},S)=>{let R=h.kind===80?h.text:"param"+S;return`${g} * @param ${c?_?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function P9s(s,c){return`${s} * @returns${c}`}function W9s(s,c){return Ew(s,g=>FXt(g,c))}function FXt(s,c){switch(s.kind){case 263:case 219:case 175:case 177:case 174:case 220:let g=s;return{commentOwner:s,parameters:g.parameters,hasReturn:UPe(g,c)};case 304:return FXt(s.initializer,c);case 264:case 265:case 267:case 307:case 266:return{commentOwner:s};case 172:{let h=s;return h.type&&x_(h.type)?{commentOwner:s,parameters:h.type.parameters,hasReturn:UPe(h.type,c)}:{commentOwner:s}}case 244:{let _=s.declarationList.declarations,S=_.length===1&&_[0].initializer?O9s(_[0].initializer):void 0;return S?{commentOwner:s,parameters:S.parameters,hasReturn:UPe(S,c)}:{commentOwner:s}}case 308:return"quit";case 268:return s.parent.kind===268?void 0:{commentOwner:s};case 245:return FXt(s.expression,c);case 227:{let h=s;return nI(h)===0?"quit":bu(h.right)?{commentOwner:s,parameters:h.right.parameters,hasReturn:UPe(h.right,c)}:{commentOwner:s}}case 173:let d=s.initializer;if(d&&(UA(d)||lA(d)))return{commentOwner:s,parameters:d.parameters,hasReturn:UPe(d,c)}}}function UPe(s,c){return!!c?.generateReturnInDocTemplate&&(x_(s)||lA(s)&&un(s.body)||kd(s)&&s.body&&$u(s.body)&&!!yF(s.body,g=>g))}function O9s(s){for(;s.kind===218;)s=s.expression;switch(s.kind){case 219:case 220:return s;case 232:return de(s.members,Tc)}}var Qit={};o(Qit,{mapCode:()=>M9s});function M9s(s,c,g,d,h,_){return xo.ChangeTracker.with({host:d,formatContext:h,preferences:_},S=>{let R=c.map(W=>H9s(s,W)),T=g&&Nr(g);for(let W of R)Y9s(s,S,W,T)})}function H9s(s,c){let g=[{parse:()=>vz("__mapcode_content_nodes.ts",c,s.languageVersion,!0,s.scriptKind),body:_=>_.statements},{parse:()=>vz("__mapcode_class_content_nodes.ts",`class __class { -${c} -}`,s.languageVersion,!0,s.scriptKind),body:_=>_.statements[0].members}],d=[];for(let{parse:_,body:S}of g){let R=_(),T=S(R);if(T.length&&R.parseDiagnostics.length===0)return T;T.length&&d.push({sourceFile:R,body:T})}d.sort((_,S)=>_.sourceFile.parseDiagnostics.length-S.sourceFile.parseDiagnostics.length);let{body:h}=d[0];return h}function Y9s(s,c,g,d){PI(g[0])||Bx(g[0])?Q9s(s,c,g,d):X9s(s,c,g,d)}function Q9s(s,c,g,d){let h;if(!d||!d.length?h=de(s.statements,Hp(xa,g_)):h=F(d,S=>ji(Jc(s,S.start),Hp(xa,g_))),!h)return;let _=h.members.find(S=>g.some(R=>KPe(R,S)));if(_){let S=be(h.members,R=>g.some(T=>KPe(T,R)));F(g,Xit),c.replaceNodeRangeWithNodes(s,_,S,g);return}F(g,Xit),c.insertNodesAfter(s,h.members[h.members.length-1],g)}function X9s(s,c,g,d){if(!d?.length){c.insertNodesAtEndOfFile(s,g,!1);return}for(let _ of d){let S=ji(Jc(s,_.start),R=>Hp($u,ll)(R)&&jt(R.statements,T=>g.some(W=>KPe(W,T))));if(S){let R=S.statements.find(T=>g.some(W=>KPe(W,T)));if(R){let T=be(S.statements,W=>g.some(V=>KPe(V,W)));F(g,Xit),c.replaceNodeRangeWithNodes(s,R,T,g);return}}}let h=s.statements;for(let _ of d){let S=ji(Jc(s,_.start),$u);if(S){h=S.statements;break}}F(g,Xit),c.insertNodesAfter(s,h[h.length-1],g)}function KPe(s,c){var g,d,h,_,S,R;return s.kind!==c.kind?!1:s.kind===177?s.kind===c.kind:rh(s)&&rh(c)?s.name.getText()===c.name.getText():Z3(s)&&Z3(c)||g$e(s)&&g$e(c)?s.expression.getText()===c.expression.getText():L3(s)&&L3(c)?((g=s.initializer)==null?void 0:g.getText())===((d=c.initializer)==null?void 0:d.getText())&&((h=s.incrementor)==null?void 0:h.getText())===((_=c.incrementor)==null?void 0:_.getText())&&((S=s.condition)==null?void 0:S.getText())===((R=c.condition)==null?void 0:R.getText()):DL(s)&&DL(c)?s.expression.getText()===c.expression.getText()&&s.initializer.getText()===c.initializer.getText():FP(s)&&FP(c)?s.label.getText()===c.label.getText():s.getText()===c.getText()}function Xit(s){ddn(s),s.parent=void 0}function ddn(s){s.pos=-1,s.end=-1,s.forEachChild(ddn)}var i5={};o(i5,{compareImportsOrRequireStatements:()=>HXt,compareModuleSpecifiers:()=>gVs,getImportDeclarationInsertionIndex:()=>aVs,getImportSpecifierInsertionIndex:()=>cVs,getNamedImportSpecifierComparerWithDetection:()=>oVs,getOrganizeImportsStringComparerWithDetection:()=>sVs,organizeImports:()=>J9s,testCoalesceExports:()=>uVs,testCoalesceImports:()=>lVs});function J9s(s,c,g,d,h,_){let S=xo.ChangeTracker.fromContext({host:g,formatContext:c,preferences:h}),R=_==="SortAndCombine"||_==="All",T=R,W=_==="RemoveUnused"||_==="All",V=s.statements.filter(Mf),M=LXt(s,V),{comparersToTest:ee,typeOrdersToTest:re}=ZXt(h),ge=ee[0],Ie={moduleSpecifierComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,namedImportComparer:typeof h.organizeImportsIgnoreCase=="boolean"?ge:void 0,typeOrder:h.organizeImportsTypeOrder};if(typeof h.organizeImportsIgnoreCase!="boolean"&&({comparer:Ie.moduleSpecifierComparer}=Idn(M,ee)),!Ie.typeOrder||typeof h.organizeImportsIgnoreCase!="boolean"){let Te=OXt(V,ee,re);if(Te){let{namedImportComparer:Ze,typeOrder:We}=Te;Ie.namedImportComparer=Ie.namedImportComparer??Ze,Ie.typeOrder=Ie.typeOrder??We}}M.forEach(Te=>Ee(Te,Ie)),_!=="RemoveUnused"&&K9s(s).forEach(Te=>Ne(Te,Ie.namedImportComparer));for(let Te of s.statements.filter(s_)){if(!Te.body)continue;if(LXt(s,Te.body.statements.filter(Mf)).forEach(We=>Ee(We,Ie)),_!=="RemoveUnused"){let We=Te.body.statements.filter(Gh);Ne(We,Ie.namedImportComparer)}}return S.getChanges();function _e(Te,Ze){if(B(Te)===0)return;ti(Te[0],1024);let We=T?Yn(Te,Ye=>jPe(Ye.moduleSpecifier)):[Te],Ue=R?bo(We,(Ye,Tt)=>PXt(Ye[0].moduleSpecifier,Tt[0].moduleSpecifier,Ie.moduleSpecifierComparer??ge)):We,$e=er(Ue,Ye=>jPe(Ye[0].moduleSpecifier)||Ye[0].moduleSpecifier===void 0?Ze(Ye):Ye);if($e.length===0)S.deleteNodes(s,Te,{leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include},!0);else{let Ye={leadingTriviaOption:xo.LeadingTriviaOption.Exclude,trailingTriviaOption:xo.TrailingTriviaOption.Include,suffix:OF(g,c.options)};S.replaceNodeWithNodes(s,Te[0],$e,Ye);let Tt=S.nodeHasTrailingComment(s,Te[0],Ye);S.deleteNodes(s,Te.slice(1),{trailingTriviaOption:xo.TrailingTriviaOption.Include},Tt)}}function Ee(Te,Ze){let We=Ze.moduleSpecifierComparer??ge,Ue=Ze.namedImportComparer??ge,$e=Ze.typeOrder??"last",Ye=Q1e({organizeImportsTypeOrder:$e},Ue);_e(Te,ot=>(W&&(ot=j9s(ot,s,d)),T&&(ot=pdn(ot,We,Ye,s)),R&&(ot=bo(ot,(Qe,mt)=>HXt(Qe,mt,We))),ot))}function Ne(Te,Ze){let We=Q1e(h,Ze);_e(Te,Ue=>fdn(Ue,We))}}function ZXt(s){return{comparersToTest:typeof s.organizeImportsIgnoreCase=="boolean"?[MXt(s,s.organizeImportsIgnoreCase)]:[MXt(s,!0),MXt(s,!1)],typeOrdersToTest:s.organizeImportsTypeOrder?[s.organizeImportsTypeOrder]:["last","inline","first"]}}function LXt(s,c){let g=wb(s.languageVersion,!1,s.languageVariant),d=[],h=0;for(let _ of c)d[h]&&U9s(s,_,g)&&h++,d[h]||(d[h]=[]),d[h].push(_);return d}function U9s(s,c,g){let d=c.getFullStart(),h=c.getStart();g.setText(s.text,d,h-d);let _=0;for(;g.getTokenStart()=2))return!0;return!1}function K9s(s){let c=[],g=s.statements,d=B(g),h=0,_=0;for(;hLXt(s,S))}function j9s(s,c,g){let d=g.getTypeChecker(),h=g.getCompilerOptions(),_=d.getJsxNamespace(c),S=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),T=[];for(let V of s){let{importClause:M,moduleSpecifier:ee}=V;if(!M){T.push(V);continue}let{name:re,namedBindings:ge}=M;if(re&&!W(re)&&(re=void 0),ge)if(Zx(ge))W(ge.name)||(ge=void 0);else{let Ie=ge.elements.filter(_e=>W(_e.name));Ie.length{if(S.attributes){let R=S.attributes.token+" ";for(let T of bo(S.attributes.elements,(W,V)=>Ca(W.name.text,V.name.text)))R+=T.name.text+":",R+=mA(T.value)?`"${T.value.text}"`:T.value.getText()+" ";return R}return""}),_=[];for(let S in h){let R=h[S],{importWithoutClause:T,typeOnlyImports:W,regularImports:V}=z9s(R);T&&_.push(T);for(let M of[V,W]){let ee=M===W,{defaultImports:re,namespaceImports:ge,namedImports:Ie}=M;if(!ee&&re.length===1&&ge.length===1&&Ie.length===0){let Ye=re[0];_.push(Y1e(Ye,Ye.importClause.name,ge[0].importClause.namedBindings));continue}let _e=bo(ge,(Ye,Tt)=>c(Ye.importClause.namedBindings.name.text,Tt.importClause.namedBindings.name.text));for(let Ye of _e)_.push(Y1e(Ye,void 0,Ye.importClause.namedBindings));let Ee=Nc(re),Ne=Nc(Ie),Te=Ee??Ne;if(!Te)continue;let Ze,We=[];if(re.length===1)Ze=re[0].importClause.name;else for(let Ye of re)We.push(me.createImportSpecifier(!1,me.createIdentifier("default"),Ye.importClause.name));We.push(...eVs(Ie));let Ue=me.createNodeArray(bo(We,g),Ne?.importClause.namedBindings.elements.hasTrailingComma),$e=Ue.length===0?Ze?void 0:me.createNamedImports(E):Ne?me.updateNamedImports(Ne.importClause.namedBindings,Ue):me.createNamedImports(Ue);d&&$e&&Ne?.importClause.namedBindings&&!S3(Ne.importClause.namedBindings,d)&&ti($e,2),ee&&Ze&&$e?(_.push(Y1e(Te,Ze,void 0)),_.push(Y1e(Ne??Te,void 0,$e))):_.push(Y1e(Te,Ze,$e))}}return _}function fdn(s,c){if(s.length===0)return s;let{exportWithoutClause:g,namedExports:d,typeOnlyExports:h}=S(s),_=[];g&&_.push(g);for(let R of[d,h]){if(R.length===0)continue;let T=[];T.push(...er(R,M=>M.exportClause&&mv(M.exportClause)?M.exportClause.elements:E));let W=bo(T,c),V=R[0];_.push(me.updateExportDeclaration(V,V.modifiers,V.isTypeOnly,V.exportClause&&(mv(V.exportClause)?me.updateNamedExports(V.exportClause,W):me.updateNamespaceExport(V.exportClause,V.exportClause.name)),V.moduleSpecifier,V.attributes))}return _;function S(R){let T,W=[],V=[];for(let M of R)M.exportClause===void 0?T=T||M:M.isTypeOnly?V.push(M):W.push(M);return{exportWithoutClause:T,namedExports:W,typeOnlyExports:V}}}function Y1e(s,c,g){return me.updateImportDeclaration(s,s.modifiers,me.updateImportClause(s.importClause,s.importClause.phaseModifier,c,g),s.moduleSpecifier,s.attributes)}function VXt(s,c,g,d){switch(d?.organizeImportsTypeOrder){case"first":return Ml(c.isTypeOnly,s.isTypeOnly)||g(s.name.text,c.name.text);case"inline":return g(s.name.text,c.name.text);default:return Ml(s.isTypeOnly,c.isTypeOnly)||g(s.name.text,c.name.text)}}function PXt(s,c,g){let d=s===void 0?void 0:jPe(s),h=c===void 0?void 0:jPe(c);return Ml(d===void 0,h===void 0)||Ml(Xr(d),Xr(h))||g(d,h)}function q9s(s){return s.map(c=>jPe(WXt(c))||"")}function WXt(s){var c;switch(s.kind){case 272:return(c=Gs(s.moduleReference,ZF))==null?void 0:c.expression;case 273:return s.moduleSpecifier;case 244:return s.declarationList.declarations[0].initializer.arguments[0]}}function $9s(s,c){let g=Zg(c)&&c.text;return Xs(g)&&jt(s.moduleAugmentations,d=>Zg(d)&&d.text===g)}function eVs(s){return er(s,c=>At(tVs(c),g=>g.name&&g.propertyName&&CF(g.name)===CF(g.propertyName)?me.updateImportSpecifier(g,g.isTypeOnly,void 0,g.name):g))}function tVs(s){var c;return(c=s.importClause)!=null&&c.namedBindings&&yN(s.importClause.namedBindings)?s.importClause.namedBindings.elements:void 0}function Idn(s,c){let g=[];return s.forEach(d=>{g.push(q9s(d))}),mdn(g,c)}function OXt(s,c,g){let d=!1,h=s.filter(T=>{var W,V;let M=(V=Gs((W=T.importClause)==null?void 0:W.namedBindings,yN))==null?void 0:V.elements;return M?.length?(!d&&M.some(ee=>ee.isTypeOnly)&&M.some(ee=>!ee.isTypeOnly)&&(d=!0),!0):!1});if(h.length===0)return;let _=h.map(T=>{var W,V;return(V=Gs((W=T.importClause)==null?void 0:W.namedBindings,yN))==null?void 0:V.elements}).filter(T=>T!==void 0);if(!d||g.length===0){let T=mdn(_.map(W=>W.map(V=>V.name.text)),c);return{namedImportComparer:T.comparer,typeOrder:g.length===1?g[0]:void 0,isSorted:T.isSorted}}let S={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let T of c){let W={first:0,last:0,inline:0};for(let V of _)for(let M of g)W[M]=(W[M]??0)+hdn(V,(ee,re)=>VXt(ee,re,T,{organizeImportsTypeOrder:M}));for(let V of g){let M=V;W[M]0&&g++;return g}function mdn(s,c){let g,d=1/0;for(let h of c){let _=0;for(let S of s){if(S.length<=1)continue;let R=hdn(S,h);_+=R}_VXt(d,h,g,s)}function oVs(s,c,g){let{comparersToTest:d,typeOrdersToTest:h}=ZXt(c),_=OXt([s],d,h),S=Q1e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(_){let{namedImportComparer:T,typeOrder:W,isSorted:V}=_;R=V,S=Q1e({organizeImportsTypeOrder:W},T)}else if(g){let T=OXt(g.statements.filter(Mf),d,h);if(T){let{namedImportComparer:W,typeOrder:V,isSorted:M}=T;R=M,S=Q1e({organizeImportsTypeOrder:V},W)}}}return{specifierComparer:S,isSorted:R}}function aVs(s,c,g){let d=Wc(s,c,Fl,(h,_)=>HXt(h,_,g));return d<0?~d:d}function cVs(s,c,g){let d=Wc(s,c,Fl,g);return d<0?~d:d}function HXt(s,c,g){return PXt(WXt(s),WXt(c),g)||rVs(s,c)}function lVs(s,c,g,d){let h=zPe(c),_=Q1e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},h);return pdn(s,h,_,g)}function uVs(s,c,g){return fdn(s,(h,_)=>VXt(h,_,zPe(c),{organizeImportsTypeOrder:g?.organizeImportsTypeOrder??"last"}))}function gVs(s,c,g){let d=zPe(!!g);return PXt(s,c,d)}var Jit={};o(Jit,{collectElements:()=>AVs});function AVs(s,c){let g=[];return dVs(s,c,g),pVs(s,g),g.sort((d,h)=>d.textSpan.start-h.textSpan.start),g}function dVs(s,c,g){let d=40,h=0,_=s.statements,S=_.length;for(;h1&&d.push(qPe(_,S,"comment"))}}function ydn(s,c,g,d){KL(s)||YXt(s.pos,c,g,d)}function qPe(s,c,g){return Kz(wA(s,c),g)}function IVs(s,c){switch(s.kind){case 242:if(bu(s.parent))return hVs(s.parent,s,c);switch(s.parent.kind){case 247:case 250:case 251:case 249:case 246:case 248:case 255:case 300:return V(s.parent);case 259:let re=s.parent;if(re.tryBlock===s)return V(s.parent);if(re.finallyBlock===s){let ge=qd(re,98,c);if(ge)return V(ge)}default:return Kz(Oy(s,c),"code")}case 269:return V(s.parent);case 264:case 232:case 265:case 267:case 270:case 188:case 207:return V(s);case 190:return V(s,!1,!Zw(s.parent),23);case 297:case 298:return M(s.statements);case 211:return W(s);case 210:return W(s,23);case 285:return _(s);case 289:return S(s);case 286:case 287:return R(s.attributes);case 229:case 15:return T(s);case 208:return V(s,!1,!hg(s.parent),23);case 220:return h(s);case 214:return d(s);case 218:return ee(s);case 276:case 280:case 301:return g(s)}function g(re){if(!re.elements.length)return;let ge=qd(re,19,c),Ie=qd(re,20,c);if(!(!ge||!Ie||yE(ge.pos,Ie.pos,c)))return Uit(ge,Ie,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ge=qd(re,21,c),Ie=qd(re,22,c);if(!(!ge||!Ie||yE(ge.pos,Ie.pos,c)))return Uit(ge,Ie,re,c,!1,!0)}function h(re){if($u(re.body)||gI(re.body)||yE(re.body.getFullStart(),re.body.getEnd(),c))return;let ge=wA(re.body.getFullStart(),re.body.getEnd());return Kz(ge,"code",Oy(re))}function _(re){let ge=wA(re.openingElement.getStart(c),re.closingElement.getEnd()),Ie=re.openingElement.tagName.getText(c),_e="<"+Ie+">...";return Kz(ge,"code",ge,!1,_e)}function S(re){let ge=wA(re.openingFragment.getStart(c),re.closingFragment.getEnd());return Kz(ge,"code",ge,!1,"<>...")}function R(re){if(re.properties.length!==0)return qPe(re.getStart(c),re.getEnd(),"code")}function T(re){if(!(re.kind===15&&re.text.length===0))return qPe(re.getStart(c),re.getEnd(),"code")}function W(re,ge=19){return V(re,!1,!OI(re.parent)&&!Zl(re.parent),ge)}function V(re,ge=!1,Ie=!0,_e=19,Ee=_e===19?20:24){let Ne=qd(s,_e,c),Te=qd(s,Ee,c);return Ne&&Te&&Uit(Ne,Te,re,c,ge,Ie)}function M(re){return re.length?Kz(t9(re),"code"):void 0}function ee(re){if(yE(re.getStart(),re.getEnd(),c))return;let ge=wA(re.getStart(),re.getEnd());return Kz(ge,"code",Oy(re))}}function hVs(s,c,g){let d=mVs(s,c,g),h=qd(c,20,g);return d&&h&&Uit(d,h,s,g,s.kind!==220)}function Uit(s,c,g,d,h=!1,_=!0){let S=wA(_?s.getFullStart():s.getStart(d),c.getEnd());return Kz(S,"code",Oy(g,d),h)}function Kz(s,c,g=s,d=!1,h="..."){return{textSpan:s,kind:c,hintSpan:g,bannerText:h,autoCollapse:d}}function mVs(s,c,g){if(hAe(s.parameters,g)){let d=qd(s,21,g);if(d)return d}return qd(c,19,g)}var $Pe={};o($Pe,{getRenameInfo:()=>CVs,nodeIsEligibleForRename:()=>Edn});function CVs(s,c,g,d){let h=WVe(Lb(c,g));if(Edn(h)){let _=_Vs(h,s.getTypeChecker(),c,s,d);if(_)return _}return Kit(Z.You_cannot_rename_this_element)}function _Vs(s,c,g,d,h){let _=c.getSymbolAtLocation(s);if(!_){if(mA(s)){let ee=PVe(s,c);if(ee&&(ee.flags&128||ee.flags&1048576&&ue(ee.types,re=>!!(re.flags&128))))return QXt(s.text,s.text,"string","",s,g)}else if(hrt(s)){let ee=xp(s);return QXt(ee,ee,"label","",s,g)}return}let{declarations:S}=_;if(!S||S.length===0)return;if(S.some(ee=>yVs(d,ee)))return Kit(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(Ir(s)&&s.escapedText==="default"&&_.parent&&_.parent.flags&1536)return;if(mA(s)&&B7(s))return h.allowRenameOfImportPath?EVs(s,g,_):void 0;let R=bVs(g,_,c,h);if(R)return Kit(R);let T=i9.getSymbolKind(c,_,s),W=hMt(s)||d1(s)&&s.parent.kind===168?l2(c2(s)):void 0,V=W||c.symbolToString(_),M=W||c.getFullyQualifiedName(_);return QXt(V,M,T,i9.getSymbolModifiers(c,_),s,g)}function yVs(s,c){let g=c.getSourceFile();return s.isSourceFileDefaultLibrary(g)&&aA(g.fileName,".d.ts")}function bVs(s,c,g,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let S=c.declarations&&de(c.declarations,R=>uy(R));S&&!S.propertyName&&(c=g.getAliasedSymbol(c))}let{declarations:h}=c;if(!h)return;let _=bdn(s.path);if(_===void 0)return jt(h,S=>_1e(S.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let S of h){let R=bdn(S.getSourceFile().path);if(R){let T=Math.min(_.length,R.length);for(let W=0;W<=T;W++)if(Ca(_[W],R[W])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function bdn(s){let c=Np(s),g=c.lastIndexOf("node_modules");if(g!==-1)return c.slice(0,g+2)}function EVs(s,c,g){if(!Xr(s.text))return Kit(Z.You_cannot_rename_a_module_via_a_global_import);let d=g.declarations&&de(g.declarations,ll);if(!d)return;let h=di(s.text,"/index")||di(s.text,"/index.js")?void 0:Bo(s0(d.fileName),"/index"),_=h===void 0?d.fileName:h,S=h===void 0?"module":"directory",R=s.text.lastIndexOf("/")+1,T=zd(s.getStart(c)+1+R,s.text.length-R);return{canRename:!0,fileToRename:_,kind:S,displayName:_,fullDisplayName:s.text,kindModifiers:"",triggerSpan:T}}function QXt(s,c,g,d,h,_){return{canRename:!0,fileToRename:void 0,kind:g,displayName:s,fullDisplayName:c,kindModifiers:d,triggerSpan:SVs(h,_)}}function Kit(s){return{canRename:!1,localizedErrorMessage:Bu(s)}}function SVs(s,c){let g=s.getStart(c),d=s.getWidth(c);return mA(s)&&(g+=1,d-=2),zd(g,d)}function Edn(s){switch(s.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return FVe(s);default:return!1}}var X1e={};o(X1e,{getArgumentInfoForCompletions:()=>RVs,getSignatureHelpItems:()=>vVs});function vVs(s,c,g,d,h){let _=s.getTypeChecker(),S=Hde(c,g);if(!S)return;let R=!!d&&d.kind==="characterTyped";if(R&&(Zz(c,g,S)||$L(c,g)))return;let T=!!d&&d.kind==="invoked",W=MVs(S,g,c,_,T);if(!W)return;h.throwIfCancellationRequested();let V=BVs(W,_,c,S,R);return h.throwIfCancellationRequested(),V?_.runWithCancellationToken(h,M=>V.kind===0?Ddn(V.candidates,V.resolvedSignature,W,c,M):YVs(V.symbol,W,c,M)):n0(c)?TVs(W,s,h):void 0}function BVs({invocation:s,argumentCount:c},g,d,h,_){switch(s.kind){case 0:{if(_&&!wVs(h,s.node,d))return;let S=[],R=g.getResolvedSignatureForSignatureHelp(s.node,S,c);return S.length===0?void 0:{kind:0,candidates:S,resolvedSignature:R}}case 1:{let{called:S}=s;if(_&&!Sdn(h,d,Ir(S)?S.parent:S))return;let R=wrt(S,c,g);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:ma(R)};let T=g.getSymbolAtLocation(S);return T&&{kind:1,symbol:T}}case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return pe.assertNever(s)}}function wVs(s,c,g){if(!av(c))return!1;let d=c.getChildren(g);switch(s.kind){case 21:return k(d,s);case 28:{let h=VVe(s);return!!h&&k(d,h)}case 30:return Sdn(s,g,c.expression);default:return!1}}function TVs(s,c,g){if(s.invocation.kind===2)return;let d=Rdn(s.invocation),h=jo(d)?d.name.text:void 0,_=c.getTypeChecker();return h===void 0?void 0:X(c.getSourceFiles(),S=>X(S.getNamedDeclarations().get(h),R=>{let T=R.symbol&&_.getTypeOfSymbolAtLocation(R.symbol,R),W=T&&T.getCallSignatures();if(W&&W.length)return _.runWithCancellationToken(g,V=>Ddn(W,W[0],s,S,V,!0))}))}function Sdn(s,c,g){let d=s.getFullStart(),h=s.parent;for(;h;){let _=Gm(d,c,h,!0);if(_)return cy(g,_);h=h.parent}return pe.fail("Could not find preceding token")}function RVs(s,c,g,d){let h=Bdn(s,c,g,d);return!h||h.isTypeParameterList||h.invocation.kind!==0?void 0:{invocation:h.invocation.node,argumentCount:h.argumentCount,argumentIndex:h.argumentIndex}}function vdn(s,c,g,d){let h=NVs(s,g,d);if(!h)return;let{list:_,argumentIndex:S}=h,R=VVs(d,_),T=WVs(_,g);return{list:_,argumentIndex:S,argumentCount:R,argumentsSpan:T}}function NVs(s,c,g){if(s.kind===30||s.kind===21)return{list:HVs(s.parent,s,c),argumentIndex:0};{let d=VVe(s);return d&&{list:d,argumentIndex:LVs(g,d,s)}}}function Bdn(s,c,g,d){let{parent:h}=s;if(av(h)){let _=h,S=vdn(s,c,g,d);if(!S)return;let{list:R,argumentIndex:T,argumentCount:W,argumentsSpan:V}=S;return{isTypeParameterList:!!h.typeArguments&&h.typeArguments.pos===R.pos,invocation:{kind:0,node:_},argumentsSpan:V,argumentIndex:T,argumentCount:W}}else{if(GP(s)&&MI(h))return u1e(s,c,g)?JXt(h,0,g):void 0;if(tQ(s)&&h.parent.kind===216){let _=h,S=_.parent;pe.assert(_.kind===229);let R=u1e(s,c,g)?0:1;return JXt(S,R,g)}else if(die(h)&&MI(h.parent.parent)){let _=h,S=h.parent.parent;if(rde(s)&&!u1e(s,c,g))return;let R=_.parent.templateSpans.indexOf(_),T=PVs(R,s,c,g);return JXt(S,T,g)}else if(eI(h)){let _=h.attributes.pos,S=Yu(g.text,h.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:h},argumentsSpan:zd(_,S-_),argumentIndex:0,argumentCount:1}}else{let _=Trt(s,g);if(_){let{called:S,nTypeArguments:R}=_,T={kind:1,called:S},W=wA(S.getStart(g),s.end);return{isTypeParameterList:!0,invocation:T,argumentsSpan:W,argumentIndex:R,argumentCount:R+1}}return}}}function DVs(s,c,g,d){return kVs(s,c,g,d)||Bdn(s,c,g,d)}function wdn(s){return fo(s.parent)?wdn(s.parent):s}function XXt(s){return fo(s.left)?XXt(s.left)+1:2}function kVs(s,c,g,d){let h=xVs(s);if(h===void 0)return;let _=GVs(h,g,c,d);if(_===void 0)return;let{contextualType:S,argumentIndex:R,argumentCount:T,argumentsSpan:W}=_,V=S.getNonNullableType(),M=V.symbol;if(M===void 0)return;let ee=li(V.getCallSignatures());return ee===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:ee,node:s,symbol:FVs(M)},argumentsSpan:W,argumentIndex:R,argumentCount:T}}function xVs(s){switch(s.kind){case 21:case 28:return s;default:return ji(s.parent,c=>Si(c)?!0:hg(c)||Km(c)||p2(c)?!1:"quit")}}function GVs(s,c,g,d){let{parent:h}=s;switch(h.kind){case 218:case 175:case 219:case 220:let _=vdn(s,g,c,d);if(!_)return;let{argumentIndex:S,argumentCount:R,argumentsSpan:T}=_,W=uu(h)?d.getContextualTypeForObjectLiteralElement(h):d.getContextualType(h);return W&&{contextualType:W,argumentIndex:S,argumentCount:R,argumentsSpan:T};case 227:{let V=wdn(h),M=d.getContextualType(V),ee=s.kind===21?0:XXt(h)-1,re=XXt(V);return M&&{contextualType:M,argumentIndex:ee,argumentCount:re,argumentsSpan:Oy(h)}}default:return}}function FVs(s){return s.name==="__type"&&X(s.declarations,c=>{var g;return x_(c)?(g=Gs(c.parent,mE))==null?void 0:g.symbol:void 0})||s}function ZVs(s,c){let g=c.getTypeAtLocation(s.expression);if(c.isTupleType(g)){let{elementFlags:d,fixedLength:h}=g.target;if(h===0)return 0;let _=Se(d,S=>!(S&1));return _<0?h:_}return 0}function LVs(s,c,g){return Tdn(s,c,g)}function VVs(s,c){return Tdn(s,c,void 0)}function Tdn(s,c,g){let d=c.getChildren(),h=0,_=!1;for(let S of d){if(g&&S===g)return!_&&S.kind===28&&h++,h;if(of(S)){h+=ZVs(S,s),_=!0;continue}if(S.kind!==28){h++,_=!0;continue}if(_){_=!1;continue}h++}return g?h:d.length&&Ei(d).kind===28?h+1:h}function PVs(s,c,g,d){return pe.assert(g>=c.getStart(),"Assumed 'position' could not occur before node."),ige(c)?u1e(c,g,d)?0:s+2:s+1}function JXt(s,c,g){let d=GP(s.template)?1:s.template.templateSpans.length+1;return c!==0&&pe.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:s},argumentsSpan:OVs(s,g),argumentIndex:c,argumentCount:d}}function WVs(s,c){let g=s.getFullStart(),d=Yu(c.text,s.getEnd(),!1);return zd(g,d-g)}function OVs(s,c){let g=s.template,d=g.getStart(),h=g.getEnd();return g.kind===229&&Ei(g.templateSpans).literal.getFullWidth()===0&&(h=Yu(c.text,h,!1)),zd(d,h-d)}function MVs(s,c,g,d,h){for(let _=s;!ll(_)&&(h||!$u(_));_=_.parent){pe.assert(cy(_.parent,_),"Not a subspan",()=>`Child: ${pe.formatSyntaxKind(_.kind)}, parent: ${pe.formatSyntaxKind(_.parent.kind)}`);let S=DVs(_,c,g,d);if(S)return S}}function HVs(s,c,g){let d=s.getChildren(g),h=d.indexOf(c);return pe.assert(h>=0&&d.length>h+1),d[h+1]}function Rdn(s){return s.kind===0?Yge(s.node):s.called}function Ndn(s){return s.kind===0?s.node:s.kind===1?s.called:s.node}var eWe=70246400;function Ddn(s,c,{isTypeParameterList:g,argumentCount:d,argumentsSpan:h,invocation:_,argumentIndex:S},R,T,W){var V;let M=Ndn(_),ee=_.kind===2?_.symbol:T.getSymbolAtLocation(Rdn(_))||W&&((V=c.declaration)==null?void 0:V.symbol),re=ee?Kde(T,ee,W?R:void 0,void 0):E,ge=At(s,Te=>XVs(Te,re,g,T,M,R)),Ie=0,_e=0;for(let Te=0;Te1)){let We=0;for(let Ue of Ze){if(Ue.isVariadic||Ue.parameters.length>=d){Ie=_e+We;break}We++}}_e+=Ze.length}pe.assert(Ie!==-1);let Ee={items:vt(ge,Fl),applicableSpan:h,selectedItemIndex:Ie,argumentIndex:S,argumentCount:d},Ne=Ee.items[Ie];if(Ne.isVariadic){let Te=Se(Ne.parameters,Ze=>!!Ze.isRest);-1xdn(M,g,d,h,S)),T=s.getDocumentationComment(g),W=s.getJsDocTags(g);return{isVariadic:!1,prefixDisplayParts:[..._,k0(30)],suffixDisplayParts:[k0(32)],separatorDisplayParts:kdn,parameters:R,documentation:T,tags:W}}var kdn=[k0(28),BI()];function XVs(s,c,g,d,h,_){let S=(g?UVs:KVs)(s,d,h,_);return At(S,({isVariadic:R,parameters:T,prefix:W,suffix:V})=>{let M=[...c,...W],ee=[...V,...JVs(s,h,d)],re=s.getDocumentationComment(d),ge=s.getJsDocTags();return{isVariadic:R,prefixDisplayParts:M,suffixDisplayParts:ee,separatorDisplayParts:kdn,parameters:T,documentation:re,tags:ge}})}function JVs(s,c,g){return XP(d=>{d.writePunctuation(":"),d.writeSpace(" ");let h=g.getTypePredicateOfSignature(s);h?g.writeTypePredicate(h,c,void 0,d):g.writeType(g.getReturnTypeOfSignature(s),c,void 0,d)})}function UVs(s,c,g,d){let h=(s.target||s).typeParameters,_=gQ(),S=(h||E).map(T=>xdn(T,c,g,d,_)),R=s.thisParameter?[c.symbolToParameterDeclaration(s.thisParameter,g,eWe)]:[];return c.getExpandedParameters(s).map(T=>{let W=me.createNodeArray([...R,...At(T,M=>c.symbolToParameterDeclaration(M,g,eWe))]),V=XP(M=>{_.writeList(2576,W,d,M)});return{isVariadic:!1,parameters:S,prefix:[k0(30)],suffix:[k0(32),...V]}})}function KVs(s,c,g,d){let h=gQ(),_=XP(T=>{if(s.typeParameters&&s.typeParameters.length){let W=me.createNodeArray(s.typeParameters.map(V=>c.typeParameterToDeclaration(V,g,eWe)));h.writeList(53776,W,d,T)}}),S=c.getExpandedParameters(s),R=c.hasEffectiveRestParameter(s)?S.length===1?T=>!0:T=>{var W;return!!(T.length&&((W=Gs(T[T.length-1],bw))==null?void 0:W.links.checkFlags)&32768)}:T=>!1;return S.map(T=>({isVariadic:R(T),parameters:T.map(W=>jVs(W,c,g,d,h)),prefix:[..._,k0(21)],suffix:[k0(22)]}))}function jVs(s,c,g,d,h){let _=XP(T=>{let W=c.symbolToParameterDeclaration(s,g,eWe);h.writeNode(4,W,d,T)}),S=c.isOptionalParameter(s.valueDeclaration),R=bw(s)&&!!(s.links.checkFlags&32768);return{name:s.name,documentation:s.getDocumentationComment(c),displayParts:_,isOptional:S,isRest:R}}function xdn(s,c,g,d,h){let _=XP(S=>{let R=c.typeParameterToDeclaration(s,g,eWe);h.writeNode(4,R,d,S)});return{name:s.symbol.name,documentation:s.symbol.getDocumentationComment(c),displayParts:_,isOptional:!1,isRest:!1}}var jit={};o(jit,{getSmartSelectionRange:()=>zVs});function zVs(s,c){var g,d;let h={textSpan:wA(c.getFullStart(),c.getEnd())},_=c;e:for(;;){let T=ePs(_);if(!T.length)break;for(let W=0;Ws)break e;let re=Ps(n2(c.text,M.end));if(re&&re.kind===2&&R(re.pos,re.end),qVs(c,s,M)){if(n7(M)&&kd(_)&&!yE(M.getStart(c),M.getEnd(),c)&&S(M.getStart(c),M.getEnd()),$u(M)||die(M)||tQ(M)||rde(M)||V&&tQ(V)||u_(M)&&Ch(_)||Cie(M)&&u_(_)||nc(M)&&Cie(_)&&T.length===1||W3(M)||qL(M)||yU(M)){_=M;break}if(die(_)&&ee&&$6(ee)){let Ee=M.getFullStart()-2,Ne=ee.getStart()+1;S(Ee,Ne)}let ge=Cie(M)&&tPs(V)&&rPs(ee)&&!yE(V.getStart(),ee.getStart(),c),Ie=ge?V.getEnd():M.getStart(),_e=ge?ee.getStart():nPs(c,M);if(Xm(M)&&((g=M.jsDoc)!=null&&g.length)&&S(ma(M.jsDoc).getStart(),_e),Cie(M)){let Ee=M.getChildren()[0];Ee&&Xm(Ee)&&((d=Ee.jsDoc)!=null&&d.length)&&Ee.getStart()!==M.pos&&(Ie=Math.min(Ie,ma(Ee.jsDoc).getStart()))}S(Ie,_e),(Zg(M)||AP(M))&&S(Ie+1,_e-1),_=M;break}if(W===T.length-1)break e}}return h;function S(T,W){if(T!==W){let V=wA(T,W);(!h||!Xie(V,h.textSpan)&&zR(V,s))&&(h={textSpan:V,...h&&{parent:h}})}}function R(T,W){S(T,W);let V=T;for(;c.text.charCodeAt(V)===47;)V++;S(V,W)}}function qVs(s,c,g){return pe.assert(g.pos<=c),cR===s.readonlyToken||R.kind===148||R===s.questionToken||R.kind===58),S=J1e(_,({kind:R})=>R===23||R===169||R===24);return[g,U1e(zit(S,({kind:R})=>R===59)),h]}if(ss(s)){let g=J1e(s.getChildren(),S=>S===s.name||k(s.modifiers,S)),d=((c=g[0])==null?void 0:c.kind)===321?g[0]:void 0,h=d?g.slice(1):g,_=zit(h,({kind:S})=>S===59);return d?[d,U1e(_)]:_}if(Si(s)){let g=J1e(s.getChildren(),h=>h===s.dotDotDotToken||h===s.name),d=J1e(g,h=>h===g[0]||h===s.questionToken);return zit(d,({kind:h})=>h===64)}return hg(s)?zit(s.getChildren(),({kind:g})=>g===64):s.getChildren()}function J1e(s,c){let g=[],d;for(let h of s)c(h)?(d=d||[],d.push(h)):(d&&(g.push(U1e(d)),d=void 0),g.push(h));return d&&g.push(U1e(d)),g}function zit(s,c,g=!0){if(s.length<2)return s;let d=Se(s,c);if(d===-1)return s;let h=s.slice(0,d),_=s[d],S=Ei(s),R=g&&S.kind===27,T=s.slice(d+1,R?s.length-1:void 0),W=Hr([h.length?U1e(h):void 0,_,T.length?U1e(T):void 0]);return R?W.concat(S):W}function U1e(s){return pe.assertGreaterThanOrEqual(s.length,1),TB(H3.createSyntaxList(s),s[0].pos,Ei(s).end)}function tPs(s){let c=s&&s.kind;return c===19||c===23||c===21||c===287}function rPs(s){let c=s&&s.kind;return c===20||c===24||c===22||c===288}function nPs(s,c){switch(c.kind){case 342:case 339:case 349:case 347:case 344:return s.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var i9={};o(i9,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>sPs,getSymbolKind:()=>Fdn,getSymbolModifiers:()=>iPs});var Gdn=70246400;function Fdn(s,c,g){let d=Zdn(s,c,g);if(d!=="")return d;let h=sU(c);return h&32?Cp(c,232)?"local class":"class":h&384?"enum":h&524288?"type":h&64?"interface":h&262144?"type parameter":h&8?"enum member":h&2097152?"alias":h&1536?"module":d}function Zdn(s,c,g){let d=s.getRootSymbols(c);if(d.length===1&&ma(d).flags&8192&&s.getTypeOfSymbolAtLocation(c,g).getNonNullableType().getCallSignatures().length!==0)return"method";if(s.isUndefinedSymbol(c))return"var";if(s.isArgumentsSymbol(c))return"local var";if(g.kind===110&&un(g)||YL(g))return"parameter";let h=sU(c);if(h&3)return Urt(c)?"parameter":c.valueDeclaration&&rI(c.valueDeclaration)?"const":c.valueDeclaration&&tI(c.valueDeclaration)?"using":c.valueDeclaration&&Sd(c.valueDeclaration)?"await using":F(c.declarations,rS)?"let":Pdn(c)?"local var":"var";if(h&16)return Pdn(c)?"local function":"function";if(h&32768)return"getter";if(h&65536)return"setter";if(h&8192)return"method";if(h&16384)return"constructor";if(h&131072)return"index";if(h&4){if(h&33554432&&c.links.checkFlags&6){let _=F(s.getRootSymbols(c),S=>{if(S.getFlags()&98311)return"property"});return _||(s.getTypeOfSymbolAtLocation(c,g).getCallSignatures().length?"method":"property")}return"property"}return""}function Ldn(s){if(s.declarations&&s.declarations.length){let[c,...g]=s.declarations,d=B(g)&&lPe(c)&&jt(g,_=>!lPe(_))?65536:0,h=Yde(c,d);if(h)return h.split(",")}return[]}function iPs(s,c){if(!c)return"";let g=new Set(Ldn(c));if(c.flags&2097152){let d=s.getAliasedSymbol(c);d!==c&&F(Ldn(d),h=>{g.add(h)})}return c.flags&16777216&&g.add("optional"),g.size>0?Do(g.values()).join(","):""}function Vdn(s,c,g,d,h,_,S,R,T,W){var V;let M=[],ee=[],re=[],ge=sU(c),Ie=S&1?Zdn(s,c,h):"",_e=!1,Ee=h.kind===110&&rne(h)||YL(h),Ne,Te,Ze=!1,We={canIncreaseExpansionDepth:!1,truncated:!1},Ue=!1;if(h.kind===110&&!Ee)return{displayParts:[y1(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(Ie!==""||ge&32||ge&2097152){if(Ie==="getter"||Ie==="setter"){let Dt=de(c.declarations,tr=>tr.name===h&&tr.kind!==212);if(Dt)switch(Dt.kind){case 178:Ie="getter";break;case 179:Ie="setter";break;case 173:Ie="accessor";break;default:pe.assertNever(Dt)}else Ie="property"}let Gt;if(_??(_=Ee?s.getTypeAtLocation(h):s.getTypeOfSymbolAtLocation(c,h)),h.parent&&h.parent.kind===212){let Dt=h.parent.name;(Dt===h||Dt&&Dt.getFullWidth()===0)&&(h=h.parent)}let nt;if(av(h)?nt=h:(drt(h)||Ode(h)||h.parent&&(eI(h.parent)||MI(h.parent))&&bu(c.valueDeclaration))&&(nt=h.parent),nt){Gt=s.getResolvedSignature(nt);let Dt=nt.kind===215||Zl(nt)&&nt.expression.kind===108,tr=Dt?_.getConstructSignatures():_.getCallSignatures();if(Gt&&!k(tr,Gt.target)&&!k(tr,Gt)&&(Gt=tr.length?tr[0]:void 0),Gt){switch(Dt&&ge&32?(Ie="constructor",Lt(_.symbol,Ie)):ge&2097152?(Ie="alias",Ke(Ie),M.push(BI()),Dt&&(Gt.flags&4&&(M.push(y1(128)),M.push(BI())),M.push(y1(105)),M.push(BI())),Rt(c)):Lt(c,Ie),Ie){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":M.push(k0(59)),M.push(BI()),!(la(_)&16)&&_.symbol&&(Or(M,Kde(s,_.symbol,d,void 0,5)),M.push(Jie())),Dt&&(Gt.flags&4&&(M.push(y1(128)),M.push(BI())),M.push(y1(105)),M.push(BI())),Pt(Gt,tr,262144);break;default:Pt(Gt,tr)}_e=!0,Ze=tr.length>1}}else if(yrt(h)&&!(ge&98304)||h.kind===137&&h.parent.kind===177){let Dt=h.parent;if(c.declarations&&de(c.declarations,ur=>ur===(h.kind===137?Dt.parent:Dt))){let ur=Dt.kind===177?_.getNonNullableType().getConstructSignatures():_.getNonNullableType().getCallSignatures();s.isImplementationOfOverload(Dt)?Gt=ur[0]:Gt=s.getSignatureFromDeclaration(Dt),Dt.kind===177?(Ie="constructor",Lt(_.symbol,Ie)):Lt(Dt.kind===180&&!(_.symbol.flags&2048||_.symbol.flags&4096)?_.symbol:c,Ie),Gt&&Pt(Gt,ur),_e=!0,Ze=ur.length>1}}}if(ge&32&&!_e&&!Ee){ot();let Gt=Cp(c,232);Gt&&(Ke("local class"),M.push(BI())),_t(c,S)||(Gt||(M.push(y1(86)),M.push(BI())),Rt(c),_r(c,g))}if(ge&64&&S&2&&(Tt(),_t(c,S)||(M.push(y1(120)),M.push(BI()),Rt(c),_r(c,g))),ge&524288&&S&2&&(Tt(),M.push(y1(156)),M.push(BI()),Rt(c),_r(c,g),M.push(BI()),M.push(Ude(64)),M.push(BI()),Or(M,I1e(s,h.parent&&s2(h.parent)?s.getTypeAtLocation(h.parent):s.getDeclaredTypeOfSymbol(c),d,8388608,T,W,We))),ge&384&&(Tt(),_t(c,S)||(jt(c.declarations,Gt=>V3(Gt)&&VA(Gt))&&(M.push(y1(87)),M.push(BI())),M.push(y1(94)),M.push(BI()),Rt(c,void 0))),ge&1536&&!Ee&&(Tt(),!_t(c,S))){let Gt=Cp(c,268),nt=Gt&&Gt.name&&Gt.name.kind===80;M.push(y1(nt?145:144)),M.push(BI()),Rt(c)}if(ge&262144&&S&2)if(Tt(),M.push(k0(21)),M.push(gS("type parameter")),M.push(k0(22)),M.push(BI()),Rt(c),c.parent)Qe(),Rt(c.parent,d),_r(c.parent,d);else{let Gt=Cp(c,169);if(Gt===void 0)return pe.fail();let nt=Gt.parent;if(nt)if(bu(nt)){Qe();let Dt=s.getSignatureFromDeclaration(nt);nt.kind===181?(M.push(y1(105)),M.push(BI())):nt.kind!==180&&nt.name&&Rt(nt.symbol),Or(M,jrt(s,Dt,g,32))}else FB(nt)&&(Qe(),M.push(y1(156)),M.push(BI()),Rt(nt.symbol),_r(nt.symbol,g))}if(ge&8){Ie="enum member",Lt(c,"enum member");let Gt=(V=c.declarations)==null?void 0:V[0];if(Gt?.kind===307){let nt=s.getConstantValue(Gt);nt!==void 0&&(M.push(BI()),M.push(Ude(64)),M.push(BI()),M.push(SE(vge(nt),typeof nt=="number"?7:8)))}}if(c.flags&2097152){if(Tt(),!_e||ee.length===0&&re.length===0){let Gt=s.getAliasedSymbol(c);if(Gt!==c&&Gt.declarations&&Gt.declarations.length>0){let nt=Gt.declarations[0],Dt=Il(nt);if(Dt&&!_e){let tr=RY(nt)&&Ga(nt,128),ur=c.name!=="default"&&!tr,Gr=Vdn(s,Gt,ms(nt),d,Dt,_,S,ur?c:Gt,T,W);M.push(...Gr.displayParts),M.push(Jie()),Ne=Gr.documentation,Te=Gr.tags,We&&Gr.canIncreaseVerbosityLevel&&(We.canIncreaseExpansionDepth=!0)}else Ne=Gt.getContextualDocumentationComment(nt,s),Te=Gt.getJsDocTags(s)}}if(c.declarations)switch(c.declarations[0].kind){case 271:M.push(y1(95)),M.push(BI()),M.push(y1(145));break;case 278:M.push(y1(95)),M.push(BI()),M.push(y1(c.declarations[0].isExportEquals?64:90));break;case 282:M.push(y1(95));break;default:M.push(y1(102))}M.push(BI()),Rt(c),F(c.declarations,Gt=>{if(Gt.kind===272){let nt=Gt;if(LL(nt))M.push(BI()),M.push(Ude(64)),M.push(BI()),M.push(y1(149)),M.push(k0(21)),M.push(SE(xp(_7(nt)),8)),M.push(k0(22));else{let Dt=s.getSymbolAtLocation(nt.moduleReference);Dt&&(M.push(BI()),M.push(Ude(64)),M.push(BI()),Rt(Dt,d))}return!0}})}if(!_e)if(Ie!==""){if(_){if(Ee?(Tt(),M.push(y1(110))):Lt(c,Ie),Ie==="property"||Ie==="accessor"||Ie==="getter"||Ie==="setter"||Ie==="JSX attribute"||ge&3||Ie==="local var"||Ie==="index"||Ie==="using"||Ie==="await using"||Ee){if(M.push(k0(59)),M.push(BI()),_.symbol&&_.symbol.flags&262144&&Ie!=="index"){let Gt=XP(nt=>{let Dt=s.typeParameterToDeclaration(_,d,Gdn,void 0,void 0,T,W,We);Ye().writeNode(4,Dt,ms($l(d)),nt)},T);Or(M,Gt)}else Or(M,I1e(s,_,d,void 0,T,W,We));if(bw(c)&&c.links.target&&bw(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let Gt=c.links.target.links.tupleLabelDeclaration;pe.assertNode(Gt.name,Ir),M.push(BI()),M.push(k0(21)),M.push(gS(Vo(Gt.name))),M.push(k0(22))}}else if(ge&16||ge&8192||ge&16384||ge&131072||ge&98304||Ie==="method"){let Gt=_.getNonNullableType().getCallSignatures();Gt.length&&(Pt(Gt[0],Gt),Ze=Gt.length>1)}}}else Ie=Fdn(s,c,h);if(ee.length===0&&!Ze&&(ee=c.getContextualDocumentationComment(d,s)),ee.length===0&&ge&4&&c.parent&&c.declarations&&F(c.parent.declarations,Gt=>Gt.kind===308))for(let Gt of c.declarations){if(!Gt.parent||Gt.parent.kind!==227)continue;let nt=s.getSymbolAtLocation(Gt.parent.right);if(nt&&(ee=nt.getDocumentationComment(s),re=nt.getJsDocTags(s),ee.length>0))break}if(ee.length===0&&Ir(h)&&c.valueDeclaration&&hg(c.valueDeclaration)){let Gt=c.valueDeclaration,nt=Gt.parent,Dt=Gt.propertyName||Gt.name;if(Ir(Dt)&&Km(nt)){let tr=c2(Dt),ur=s.getTypeAtLocation(nt);ee=X(ur.isUnion()?ur.types:[ur],Gr=>{let dt=Gr.getProperty(tr);return dt?dt.getDocumentationComment(s):void 0})||E}}re.length===0&&!Ze&&!GY(h)&&(re=c.getContextualJsDocTags(d,s)),ee.length===0&&Ne&&(ee=Ne),re.length===0&&Te&&(re=Te);let $e=!We.truncated&&We.canIncreaseExpansionDepth;return{displayParts:M,documentation:ee,symbolKind:Ie,tags:re.length===0?void 0:re,canIncreaseVerbosityLevel:W!==void 0?$e:void 0};function Ye(){return gQ()}function Tt(){M.length&&M.push(Jie()),ot()}function ot(){R&&(Ke("alias"),M.push(BI()))}function Qe(){M.push(BI()),M.push(y1(103)),M.push(BI())}function mt(Gt,nt){if(W===void 0)return!1;let Dt=Gt.flags&96?s.getDeclaredTypeOfSymbol(Gt):s.getTypeOfSymbolAtLocation(Gt,h);return!Dt||s.isLibType(Dt)?!1:0{let Gr=s.getEmitResolver().symbolToDeclarations(Gt,Dt,17408,T,W!==void 0?W-1:void 0,We),dt=Ye(),pr=Gt.valueDeclaration&&ms(Gt.valueDeclaration);Gr.forEach((st,ir)=>{ir>0&&ur.writeLine(),dt.writeNode(4,st,pr,ur)})},T);return Or(M,tr),Ue=!0,!0}return!1}function Rt(Gt,nt){let Dt;R&&Gt===c&&(Gt=R),Ie==="index"&&(Dt=s.getIndexInfosOfIndexSymbol(Gt));let tr=[];Gt.flags&131072&&Dt?(Gt.parent&&(tr=Kde(s,Gt.parent)),tr.push(k0(23)),Dt.forEach((ur,Gr)=>{tr.push(...I1e(s,ur.keyType)),Gr!==Dt.length-1&&(tr.push(BI()),tr.push(k0(52)),tr.push(BI()))}),tr.push(k0(24))):tr=Kde(s,Gt,nt||g,void 0,7),Or(M,tr),c.flags&16777216&&M.push(k0(58))}function Lt(Gt,nt){Tt(),nt&&(Ke(nt),Gt&&!jt(Gt.declarations,Dt=>lA(Dt)||(UA(Dt)||vd(Dt))&&!Dt.name)&&(M.push(BI()),Rt(Gt)))}function Ke(Gt){switch(Gt){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":M.push(Krt(Gt));return;default:M.push(k0(21)),M.push(Krt(Gt)),M.push(k0(22));return}}function Pt(Gt,nt,Dt=0){Or(M,jrt(s,Gt,d,Dt|32,T,W,We)),nt.length>1&&(M.push(BI()),M.push(k0(21)),M.push(Ude(40)),M.push(SE((nt.length-1).toString(),7)),M.push(BI()),M.push(gS(nt.length===2?"overload":"overloads")),M.push(k0(22))),ee=Gt.getDocumentationComment(s),re=Gt.getJsDocTags(),nt.length>1&&ee.length===0&&re.length===0&&(ee=nt[0].getDocumentationComment(s),re=nt[0].getJsDocTags().filter(tr=>tr.name!=="deprecated"))}function _r(Gt,nt){let Dt=XP(tr=>{let ur=s.symbolToTypeParameterDeclarations(Gt,nt,Gdn);Ye().writeList(53776,ur,ms($l(nt)),tr)});Or(M,Dt)}}function sPs(s,c,g,d,h,_=DU(h),S,R,T){return Vdn(s,c,g,d,h,void 0,_,S,R,T)}function Pdn(s){return s.parent?!1:F(s.declarations,c=>{if(c.kind===219)return!0;if(c.kind!==261&&c.kind!==263)return!1;for(let g=c.parent;!mP(g);g=g.parent)if(g.kind===308||g.kind===269)return!1;return!0})}var xo={};o(xo,{ChangeTracker:()=>cPs,LeadingTriviaOption:()=>Mdn,TrailingTriviaOption:()=>Hdn,applyChanges:()=>qXt,assignPositionsToNode:()=>tst,createWriter:()=>Qdn,deleteNode:()=>YF,getAdjustedEndPosition:()=>jz,isThisTypeAnnotatable:()=>aPs,isValidLocationToAddComment:()=>Xdn});function Wdn(s){let c=s.__pos;return pe.assert(typeof c=="number"),c}function UXt(s,c){pe.assert(typeof c=="number"),s.__pos=c}function Odn(s){let c=s.__end;return pe.assert(typeof c=="number"),c}function KXt(s,c){pe.assert(typeof c=="number"),s.__end=c}var Mdn=(s=>(s[s.Exclude=0]="Exclude",s[s.IncludeAll=1]="IncludeAll",s[s.JSDoc=2]="JSDoc",s[s.StartLine=3]="StartLine",s))(Mdn||{}),Hdn=(s=>(s[s.Exclude=0]="Exclude",s[s.ExcludeWhitespace=1]="ExcludeWhitespace",s[s.Include=2]="Include",s))(Hdn||{});function Ydn(s,c){return Yu(s,c,!1,!0)}function oPs(s,c){let g=c;for(;g0?1:0,ee=OD(Z7(s,W)+M,s);return ee=Ydn(s.text,ee),OD(Z7(s,ee),s)}function jXt(s,c,g){let{end:d}=c,{trailingTriviaOption:h}=g;if(h===2){let _=n2(s.text,d);if(_){let S=Z7(s,c.end);for(let R of _){if(R.kind===2||Z7(s,R.pos)>S)break;if(Z7(s,R.end)>S)return Yu(s.text,R.end,!0,!0)}}}}function jz(s,c,g){var d;let{end:h}=c,{trailingTriviaOption:_}=g;if(_===0)return h;if(_===1){let T=Nn(n2(s.text,h),fE(s.text,h)),W=(d=T?.[T.length-1])==null?void 0:d.end;return W||h}let S=jXt(s,c,g);if(S)return S;let R=Yu(s.text,h,!0);return R!==h&&(_===2||Cl(s.text.charCodeAt(R-1)))?R:h}function qit(s,c){return!!c&&!!s.parent&&(c.kind===28||c.kind===27&&s.parent.kind===211)}function aPs(s){return UA(s)||ih(s)}var cPs=class Ukr{constructor(c,g){this.newLineCharacter=c,this.formatContext=g,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new Ukr(OF(c.host,c.formatContext.options),c.formatContext)}static with(c,g){let d=Ukr.fromContext(c);return g(d),d.getChanges()}pushRaw(c,g){pe.assertEqual(c.fileName,g.fileName);for(let d of g.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:QVe(d.span)})}deleteRange(c,g){this.changes.push({kind:0,sourceFile:c,range:g})}delete(c,g){this.deletedNodes.push({sourceFile:c,node:g})}deleteNode(c,g,d={leadingTriviaOption:1}){this.deleteRange(c,j1e(c,g,g,d))}deleteNodes(c,g,d={leadingTriviaOption:1},h){for(let _ of g){let S=VU(c,_,d,h),R=jz(c,_,d);this.deleteRange(c,{pos:S,end:R}),h=!!jXt(c,_,d)}}deleteModifier(c,g){this.deleteRange(c,{pos:g.getStart(c),end:Yu(c.text,g.end,!0)})}deleteNodeRange(c,g,d,h={leadingTriviaOption:1}){let _=VU(c,g,h),S=jz(c,d,h);this.deleteRange(c,{pos:_,end:S})}deleteNodeRangeExcludingEnd(c,g,d,h={leadingTriviaOption:1}){let _=VU(c,g,h),S=d===void 0?c.text.length:VU(c,d,h);this.deleteRange(c,{pos:_,end:S})}replaceRange(c,g,d,h={}){this.changes.push({kind:1,sourceFile:c,range:g,options:h,node:d})}replaceNode(c,g,d,h=K1e){this.replaceRange(c,j1e(c,g,g,h),d,h)}replaceNodeRange(c,g,d,h,_=K1e){this.replaceRange(c,j1e(c,g,d,_),h,_)}replaceRangeWithNodes(c,g,d,h={}){this.changes.push({kind:2,sourceFile:c,range:g,options:h,nodes:d})}replaceNodeWithNodes(c,g,d,h=K1e){this.replaceRangeWithNodes(c,j1e(c,g,g,h),d,h)}replaceNodeWithText(c,g,d){this.replaceRangeWithText(c,j1e(c,g,g,K1e),d)}replaceNodeRangeWithNodes(c,g,d,h,_=K1e){this.replaceRangeWithNodes(c,j1e(c,g,d,_),h,_)}nodeHasTrailingComment(c,g,d=K1e){return!!jXt(c,g,d)}nextCommaToken(c,g){let d=fQ(g,g.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,g,d){let h=this.nextCommaToken(c,g)?"":","+this.newLineCharacter;this.replaceNode(c,g,d,{suffix:h})}insertNodeAt(c,g,d,h={}){this.replaceRange(c,Gy(g),d,h)}insertNodesAt(c,g,d,h={}){this.replaceRangeWithNodes(c,Gy(g),d,h)}insertNodeAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertNodesAtTopOfFile(c,g,d){this.insertAtTopOfFile(c,g,d)}insertAtTopOfFile(c,g,d){let h=IPs(c),_={prefix:h===0?void 0:this.newLineCharacter,suffix:(Cl(c.text.charCodeAt(h))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Ki(g)?this.insertNodesAt(c,h,g,_):this.insertNodeAt(c,h,g,_)}insertNodesAtEndOfFile(c,g,d){this.insertAtEndOfFile(c,g,d)}insertAtEndOfFile(c,g,d){let h=c.end+1,_={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,h,g,_)}insertStatementsInNewFile(c,g,d){this.newFileChanges||(this.newFileChanges=dl()),this.newFileChanges.add(c,{oldFile:d,statements:g})}insertFirstParameter(c,g,d){let h=Nc(g);h?this.insertNodeBefore(c,h,d):this.insertNodeAt(c,g.pos,d)}insertNodeBefore(c,g,d,h=!1,_={}){this.insertNodeAt(c,VU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,d,h))}insertNodesBefore(c,g,d,h=!1,_={}){this.insertNodesAt(c,VU(c,g,_),d,this.getOptionsForInsertNodeBefore(g,ma(d),h))}insertModifierAt(c,g,d,h={}){this.insertNodeAt(c,g,me.createToken(d),h)}insertModifierBefore(c,g,d){return this.insertModifierAt(c,d.getStart(c),g,{suffix:" "})}insertCommentBeforeLine(c,g,d,h){let _=OD(g,c),S=CMt(c.text,_),R=Xdn(c,S),T=Hie(c,R?S:d),W=c.text.slice(_,S),V=`${R?"":this.newLineCharacter}//${h}${this.newLineCharacter}${W}`;this.insertText(c,T.getStart(c),V)}insertJsdocCommentBefore(c,g,d){let h=g.getStart(c);if(g.jsDoc)for(let R of g.jsDoc)this.deleteRange(c,{pos:PB(R.getStart(c),c),end:jz(c,R,{})});let _=$Ve(c.text,h-1),S=c.text.slice(_,h);this.insertNodeAt(c,h,d,{suffix:this.newLineCharacter+S})}createJSDocText(c,g){let d=er(g.jsDoc,_=>Xs(_.comment)?me.createJSDocText(_.comment):_.comment),h=Ps(g.jsDoc);return h&&yE(h.pos,h.end,c)&&B(d)===0?void 0:me.createNodeArray(fe(d,me.createJSDocText(` -`)))}replaceJSDocComment(c,g,d){this.insertJsdocCommentBefore(c,lPs(g),me.createJSDocComment(this.createJSDocText(c,g),me.createNodeArray(d)))}addJSDocTags(c,g,d){let h=vt(g.jsDoc,S=>S.tags),_=d.filter(S=>!h.some((R,T)=>{let W=uPs(R,S);return W&&(h[T]=W),!!W}));this.replaceJSDocComment(c,g,[...h,..._])}filterJSDocTags(c,g,d){this.replaceJSDocComment(c,g,Me(vt(g.jsDoc,h=>h.tags),d))}replaceRangeWithText(c,g,d){this.changes.push({kind:3,sourceFile:c,range:g,text:d})}insertText(c,g,d){this.replaceRangeWithText(c,Gy(g),d)}tryInsertTypeAnnotation(c,g,d){let h;if(bu(g)){if(h=qd(g,22,c),!h){if(!lA(g))return!1;h=ma(g.parameters)}}else h=(g.kind===261?g.exclamationToken:g.questionToken)??g.name;return this.insertNodeAt(c,h.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,g,d){let h=qd(g,21,c).getStart(c)+1,_=g.parameters.length?", ":"";this.insertNodeAt(c,h,d,{prefix:"this: ",suffix:_})}insertTypeParameters(c,g,d){let h=(qd(g,21,c)||ma(g.parameters)).getStart(c);this.insertNodesAt(c,h,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,g,d){return Lc(c)||PI(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:nc(c)?{suffix:", "}:Si(c)?Si(g)?{suffix:", "}:{}:Zg(c)&&Mf(c.parent)||yN(c)?{suffix:", "}:uy(c)?{suffix:","+(d?this.newLineCharacter:" ")}:pe.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,g,d){let h=Nc(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[d,...g.body.statements]):this.insertNodeBefore(c,h,d)}insertNodeAtConstructorStartAfterSuperCall(c,g,d){let h=de(g.body.statements,_=>VC(_)&&Dy(_.expression));!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}insertNodeAtConstructorEnd(c,g,d){let h=li(g.body.statements);!h||!g.body.multiLine?this.replaceConstructorBody(c,g,[...g.body.statements,d]):this.insertNodeAfter(c,h,d)}replaceConstructorBody(c,g,d){this.replaceNode(c,g.body,me.createBlock(d,!0))}insertNodeAtEndOfScope(c,g,d){let h=VU(c,g.getLastToken(),{});this.insertNodeAt(c,h,d,{prefix:Cl(c.text.charCodeAt(g.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtObjectStart(c,g,d){this.insertNodeAtStartWorker(c,g,d)}insertNodeAtStartWorker(c,g,d){let h=this.guessIndentationFromExistingMembers(c,g)??this.computeIndentationForNewMember(c,g);this.insertNodeAt(c,$it(g).pos,d,this.getInsertNodeAtStartInsertOptions(c,g,h))}guessIndentationFromExistingMembers(c,g){let d,h=g;for(let _ of $it(g)){if(M7(h,_,c))return;let S=_.getStart(c),R=Im.SmartIndenter.findFirstNonWhitespaceColumn(PB(S,c),S,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;h=_}return d}computeIndentationForNewMember(c,g){let d=g.getStart(c);return Im.SmartIndenter.findFirstNonWhitespaceColumn(PB(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,g,d){let _=$it(g).length===0,S=!this.classesWithNodesInsertedAtStart.has(rd(g));S&&this.classesWithNodesInsertedAtStart.set(rd(g),{node:g,sourceFile:c});let R=og(g)&&(!Zu(c)||!_),T=og(g)&&Zu(c)&&_&&!S;return{indentation:d,prefix:(T?",":"")+this.newLineCharacter,suffix:R?",":g_(g)&&_?";":""}}insertNodeAfterComma(c,g,d){let h=this.insertNodeAfterWorker(c,this.nextCommaToken(c,g)||g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,d);this.insertNodeAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAtEndOfList(c,g,d){this.insertNodeAt(c,g.end,d,{prefix:", "})}insertNodesAfter(c,g,d){let h=this.insertNodeAfterWorker(c,g,ma(d));this.insertNodesAt(c,h,d,this.getInsertNodeAfterOptions(c,g))}insertNodeAfterWorker(c,g,d){return hPs(g,d)&&c.text.charCodeAt(g.end-1)!==59&&this.replaceRange(c,Gy(g.end),me.createToken(27)),jz(c,g,{})}getInsertNodeAfterOptions(c,g){let d=this.getInsertNodeAfterOptionsWorker(g);return{...d,prefix:g.end===c.end&&Lc(g)?d.prefix?` -${d.prefix}`:` -`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.kind){case 264:case 268:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 261:case 11:case 80:return{prefix:", "};case 304:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 170:return{};default:return pe.assert(Lc(c)||mY(c)),{suffix:this.newLineCharacter}}}insertName(c,g,d){if(pe.assert(!g.name),g.kind===220){let h=qd(g,39,c),_=qd(g,21,c);_?(this.insertNodesAt(c,_.getStart(c),[me.createToken(100),me.createIdentifier(d)],{joiner:" "}),YF(this,c,h)):(this.insertText(c,ma(g.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,h,me.createToken(22))),g.body.kind!==242&&(this.insertNodesAt(c,g.body.getStart(c),[me.createToken(19),me.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,g.body.end,[me.createToken(27),me.createToken(20)],{joiner:" "}))}else{let h=qd(g,g.kind===219?100:86,c).end;this.insertNodeAt(c,h,me.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,g){this.insertText(c,g.getStart(c),"export ")}insertImportSpecifierAtIndex(c,g,d,h){let _=d.elements[h-1];_?this.insertNodeInListAfter(c,_,g):this.insertNodeBefore(c,d.elements[0],g,!yE(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,g,d,h=Im.SmartIndenter.getContainingList(g,c)){if(!h){pe.fail("node is not a list element");return}let _=fP(h,g);if(_<0)return;let S=g.getEnd();if(_!==h.length-1){let R=Jc(c,g.end);if(R&&qit(g,R)){let T=h[_+1],W=Ydn(c.text,T.getFullStart()),V=`${Vi(R.kind)}${c.text.substring(R.end,W)}`;this.insertNodesAt(c,W,[d],{suffix:V})}}else{let R=g.getStart(c),T=PB(R,c),W,V=!1;if(h.length===1)W=28;else{let M=Gm(g.pos,c);W=qit(g,M)?M.kind:28,V=PB(h[_-1].getStart(c),c)!==T}if((oPs(c.text,g.end)||!yE(h.pos,h.end,c))&&(V=!0),V){this.replaceRange(c,Gy(S),me.createToken(W));let M=Im.SmartIndenter.findFirstNonWhitespaceColumn(T,R,c,this.formatContext.options),ee=Yu(c.text,S,!0,!1);for(;ee!==S&&Cl(c.text.charCodeAt(ee-1));)ee--;this.replaceRange(c,Gy(ee),d,{indentation:M,prefix:this.newLineCharacter})}else this.replaceRange(c,Gy(S),d,{prefix:`${Vi(W)} `})}}parenthesizeExpression(c,g){this.replaceRange(c,Nbe(g),me.createParenthesizedExpression(g))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:g})=>{let[d,h]=APs(c,g);if(d!==void 0&&h!==void 0){let _=$it(c).length===0,S=yE(d,h,g);_&&S&&d!==h-1&&this.deleteRange(g,Gy(d,h-1)),S&&this.insertText(g,h-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:g,node:d}of this.deletedNodes)this.deletedNodes.some(h=>h.sourceFile===g&&J5t(h.node,d))||(Ki(d)?this.deleteRange(g,Dbe(g,d)):$Xt.deleteDeclaration(this,c,g,d));c.forEach(g=>{let d=g.getSourceFile(),h=Im.SmartIndenter.getContainingList(g,d);if(g!==Ei(h))return;let _=De(h,S=>!c.has(S),h.length-2);_!==-1&&this.deleteRange(d,{pos:h[_].end,end:zXt(d,h[_+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let g=est.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,h)=>{g.push(est.newFileChanges(h,d,this.newLineCharacter,this.formatContext))}),g}createNewFile(c,g,d){this.insertStatementsInNewFile(g,d,c)}};function lPs(s){if(s.kind!==220)return s;let c=s.parent.kind===173?s.parent:s.parent.parent;return c.jsDoc=s.jsDoc,c}function uPs(s,c){if(s.kind===c.kind)switch(s.kind){case 342:{let g=s,d=c;return Ir(g.name)&&Ir(d.name)&&g.name.escapedText===d.name.escapedText?me.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,g.comment):void 0}case 343:return me.createJSDocReturnTag(void 0,c.typeExpression,s.comment);case 345:return me.createJSDocTypeTag(void 0,c.typeExpression,s.comment)}}function zXt(s,c){return Yu(s.text,VU(s,c,{leadingTriviaOption:1}),!1,!0)}function gPs(s,c,g,d){let h=zXt(s,d);if(g===void 0||yE(jz(s,c,{}),h,s))return h;let _=Gm(d.getStart(s),s);if(qit(c,_)){let S=Gm(c.getStart(s),s);if(qit(g,S)){let R=Yu(s.text,_.getEnd(),!0,!0);if(yE(S.getStart(s),_.getStart(s),s))return Cl(s.text.charCodeAt(R-1))?R-1:R;if(Cl(s.text.charCodeAt(R)))return R}}return h}function APs(s,c){let g=qd(s,19,c),d=qd(s,20,c);return[g?.end,d?.end]}function $it(s){return og(s)?s.properties:s.members}var est;(s=>{function c(R,T,W,V){return Xt(Yn(R,M=>M.sourceFile.path),M=>{let ee=M[0].sourceFile,re=bo(M,(Ie,_e)=>Ie.range.pos-_e.range.pos||Ie.range.end-_e.range.end);for(let Ie=0;Ie`${JSON.stringify(re[Ie].range)} and ${JSON.stringify(re[Ie+1].range)}`);let ge=Xt(re,Ie=>{let _e=t9(Ie.range),Ee=Ie.kind===1?ms(Dd(Ie.node))??Ie.sourceFile:Ie.kind===2?ms(Dd(Ie.nodes[0]))??Ie.sourceFile:Ie.sourceFile,Ne=h(Ie,Ee,ee,T,W,V);if(!(_e.length===Ne.length&&TMt(Ee.text,Ne,_e.start)))return g1e(_e,Ne)});return ge.length>0?{fileName:ee.fileName,textChanges:ge}:void 0})}s.getTextChangesFromChanges=c;function g(R,T,W,V){let M=d(GAe(R),T,W,V);return{fileName:R,textChanges:[g1e(zd(0,0),M)],isNewFile:!0}}s.newFileChanges=g;function d(R,T,W,V){let M=er(T,ge=>ge.statements.map(Ie=>Ie===4?"":S(Ie,ge.oldFile,W).text)).join(W),ee=vz("any file name",M,{languageVersion:99,jsDocParsingMode:1},!0,R),re=Im.formatDocument(ee,V);return qXt(M,re)+W}s.newFileChangesWorker=d;function h(R,T,W,V,M,ee){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ge={},range:{pos:Ie}}=R,_e=Te=>_(Te,T,W,Ie,ge,V,M,ee),Ee=R.kind===2?R.nodes.map(Te=>aa(_e(Te),V)).join(((re=R.options)==null?void 0:re.joiner)||V):_e(R.node),Ne=ge.indentation!==void 0||PB(Ie,T)===Ie?Ee:Ee.replace(/^\s+/,"");return(ge.prefix||"")+Ne+(!ge.suffix||di(Ne,ge.suffix)?"":ge.suffix)}function _(R,T,W,V,{indentation:M,prefix:ee,delta:re},ge,Ie,_e){let{node:Ee,text:Ne}=S(R,T,ge);_e&&_e(Ee,Ne);let Te=gPe(Ie,T),Ze=M!==void 0?M:Im.SmartIndenter.getIndentation(V,W,Te,ee===ge||PB(V,T)===V);re===void 0&&(re=Im.SmartIndenter.shouldIndentChildNode(Te,R)&&Te.indentSize||0);let We={text:Ne,getLineAndCharacterOfPosition($e){return Ra(this,$e)}},Ue=Im.formatNodeGivenIndentation(Ee,We,T.languageVariant,Ze,re,{...Ie,options:Te});return qXt(Ne,Ue)}function S(R,T,W){let V=Qdn(W),M=E1e(W);return MP({newLine:M,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},V).writeNode(4,R,T,V),{text:V.getText(),node:tst(R)}}s.getNonformattedText=S})(est||(est={}));function qXt(s,c){for(let g=c.length-1;g>=0;g--){let{span:d,newText:h}=c[g];s=`${s.substring(0,d.start)}${h}${s.substring(Rs(d))}`}return s}function dPs(s){return Yu(s,0)===s.length}var pPs={...OEe,factory:nie(OEe.factory.flags|1,OEe.factory.baseFactory)};function tst(s){let c=_s(s,tst,pPs,fPs,tst),g=sp(c)?c:Object.create(c);return TB(g,Wdn(s),Odn(s)),g}function fPs(s,c,g,d,h){let _=Ws(s,c,g,d,h);if(!_)return _;pe.assert(s);let S=_===s?me.createNodeArray(_.slice(0)):_;return TB(S,Wdn(s),Odn(s)),S}function Qdn(s){let c=0,g=Bne(s),d=Ke=>{Ke&&UXt(Ke,c)},h=Ke=>{Ke&&KXt(Ke,c)},_=Ke=>{Ke&&UXt(Ke,c)},S=Ke=>{Ke&&KXt(Ke,c)},R=Ke=>{Ke&&UXt(Ke,c)},T=Ke=>{Ke&&KXt(Ke,c)};function W(Ke,Pt){if(Pt||!dPs(Ke)){c=g.getTextPos();let _r=0;for(;dc(Ke.charCodeAt(Ke.length-_r-1));)_r++;c-=_r}}function V(Ke){g.write(Ke),W(Ke,!1)}function M(Ke){g.writeComment(Ke)}function ee(Ke){g.writeKeyword(Ke),W(Ke,!1)}function re(Ke){g.writeOperator(Ke),W(Ke,!1)}function ge(Ke){g.writePunctuation(Ke),W(Ke,!1)}function Ie(Ke){g.writeTrailingSemicolon(Ke),W(Ke,!1)}function _e(Ke){g.writeParameter(Ke),W(Ke,!1)}function Ee(Ke){g.writeProperty(Ke),W(Ke,!1)}function Ne(Ke){g.writeSpace(Ke),W(Ke,!1)}function Te(Ke){g.writeStringLiteral(Ke),W(Ke,!1)}function Ze(Ke,Pt){g.writeSymbol(Ke,Pt),W(Ke,!1)}function We(Ke){g.writeLine(Ke)}function Ue(){g.increaseIndent()}function $e(){g.decreaseIndent()}function Ye(){return g.getText()}function Tt(Ke){g.rawWrite(Ke),W(Ke,!1)}function ot(Ke){g.writeLiteral(Ke),W(Ke,!0)}function Qe(){return g.getTextPos()}function mt(){return g.getLine()}function ht(){return g.getColumn()}function _t(){return g.getIndent()}function Rt(){return g.isAtStartOfLine()}function Lt(){g.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:h,onBeforeEmitNodeArray:_,onAfterEmitNodeArray:S,onBeforeEmitToken:R,onAfterEmitToken:T,write:V,writeComment:M,writeKeyword:ee,writeOperator:re,writePunctuation:ge,writeTrailingSemicolon:Ie,writeParameter:_e,writeProperty:Ee,writeSpace:Ne,writeStringLiteral:Te,writeSymbol:Ze,writeLine:We,increaseIndent:Ue,decreaseIndent:$e,getText:Ye,rawWrite:Tt,writeLiteral:ot,getTextPos:Qe,getLine:mt,getColumn:ht,getIndent:_t,isAtStartOfLine:Rt,hasTrailingComment:()=>g.hasTrailingComment(),hasTrailingWhitespace:()=>g.hasTrailingWhitespace(),clear:Lt}}function IPs(s){let c;for(let W of s.statements)if(nS(W))c=W;else break;let g=0,d=s.text;if(c)return g=c.end,T(),g;let h=mB(d);h!==void 0&&(g=h.length,T());let _=fE(d,g);if(!_)return g;let S,R;for(let W of _){if(W.kind===3){if(g7(d,W.pos)){S={range:W,pinnedOrTripleSlash:!0};continue}}else if(Ore(d,W.pos,W.end)){S={range:W,pinnedOrTripleSlash:!0};continue}if(S){if(S.pinnedOrTripleSlash)break;let V=s.getLineAndCharacterOfPosition(W.pos).line,M=s.getLineAndCharacterOfPosition(S.range.end).line;if(V>=M+2)break}if(s.statements.length){R===void 0&&(R=s.getLineAndCharacterOfPosition(s.statements[0].getStart()).line);let V=s.getLineAndCharacterOfPosition(W.end).line;if(R{function c(_,S,R,T){switch(T.kind){case 170:{let re=T.parent;lA(re)&&re.parameters.length===1&&!qd(re,21,R)?_.replaceNodeWithText(R,T,"()"):z1e(_,S,R,T);break}case 273:case 272:let W=R.imports.length&&T===ma(R.imports).parent||T===de(R.statements,IP);YF(_,R,T,{leadingTriviaOption:W?0:Xm(T)?2:3});break;case 209:let V=T.parent;V.kind===208&&T!==Ei(V.elements)?YF(_,R,T):z1e(_,S,R,T);break;case 261:h(_,S,R,T);break;case 169:z1e(_,S,R,T);break;case 277:let ee=T.parent;ee.elements.length===1?d(_,R,ee):z1e(_,S,R,T);break;case 275:d(_,R,T);break;case 27:YF(_,R,T,{trailingTriviaOption:0});break;case 100:YF(_,R,T,{leadingTriviaOption:0});break;case 264:case 263:YF(_,R,T,{leadingTriviaOption:Xm(T)?2:3});break;default:T.parent?Vw(T.parent)&&T.parent.name===T?g(_,R,T.parent):Zl(T.parent)&&k(T.parent.arguments,T)?z1e(_,S,R,T):YF(_,R,T):YF(_,R,T)}}s.deleteDeclaration=c;function g(_,S,R){if(!R.namedBindings)YF(_,S,R.parent);else{let T=R.name.getStart(S),W=Jc(S,R.name.end);if(W&&W.kind===28){let V=Yu(S.text,W.end,!1,!0);_.deleteRange(S,{pos:T,end:V})}else YF(_,S,R.name)}}function d(_,S,R){if(R.parent.name){let T=pe.checkDefined(Jc(S,R.pos-1));_.deleteRange(S,{pos:T.getStart(S),end:R.end})}else{let T=ML(R,273);YF(_,S,T)}}function h(_,S,R,T){let{parent:W}=T;if(W.kind===300){_.deleteNodeRange(R,qd(W,21,R),qd(W,22,R));return}if(W.declarations.length!==1){z1e(_,S,R,T);return}let V=W.parent;switch(V.kind){case 251:case 250:_.replaceNode(R,T,me.createObjectLiteralExpression());break;case 249:YF(_,R,W);break;case 244:YF(_,R,V,{leadingTriviaOption:Xm(V)?2:3});break;default:pe.assertNever(V)}}})($Xt||($Xt={}));function YF(s,c,g,d={leadingTriviaOption:1}){let h=VU(c,g,d),_=jz(c,g,d);s.deleteRange(c,{pos:h,end:_})}function z1e(s,c,g,d){let h=pe.checkDefined(Im.SmartIndenter.getContainingList(d,g)),_=fP(h,d);if(pe.assert(_!==-1),h.length===1){YF(s,g,d);return}pe.assert(!c.has(d),"Deleting a node twice"),c.add(d),s.deleteRange(g,{pos:zXt(g,d),end:_===h.length-1?jz(g,d,{}):gPs(g,d,h[_-1],h[_+1])})}var Im={};o(Im,{FormattingContext:()=>Udn,FormattingRequestKind:()=>Jdn,RuleAction:()=>Kdn,RuleFlags:()=>jdn,SmartIndenter:()=>DN,anyContext:()=>rst,createTextRangeWithKind:()=>ost,formatDocument:()=>cWs,formatNodeGivenIndentation:()=>fWs,formatOnClosingCurly:()=>aWs,formatOnEnter:()=>iWs,formatOnOpeningCurly:()=>oWs,formatOnSemicolon:()=>sWs,formatSelection:()=>lWs,getAllRules:()=>zdn,getFormatContext:()=>jPs,getFormattingScanner:()=>e4t,getIndentationString:()=>p4t,getRangeOfEnclosingComment:()=>bpn});var Jdn=(s=>(s[s.FormatDocument=0]="FormatDocument",s[s.FormatSelection=1]="FormatSelection",s[s.FormatOnEnter=2]="FormatOnEnter",s[s.FormatOnSemicolon=3]="FormatOnSemicolon",s[s.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",s[s.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",s))(Jdn||{}),Udn=class{constructor(s,c,g){this.sourceFile=s,this.formattingRequestKind=c,this.options=g}updateContext(s,c,g,d,h){this.currentTokenSpan=pe.checkDefined(s),this.currentTokenParent=pe.checkDefined(c),this.nextTokenSpan=pe.checkDefined(g),this.nextTokenParent=pe.checkDefined(d),this.contextNode=pe.checkDefined(h),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let s=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=s===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(s){let c=this.sourceFile.getLineAndCharacterOfPosition(s.getStart(this.sourceFile)).line,g=this.sourceFile.getLineAndCharacterOfPosition(s.getEnd()).line;return c===g}BlockIsOnOneLine(s){let c=qd(s,19,this.sourceFile),g=qd(s,20,this.sourceFile);if(c&&g){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,h=this.sourceFile.getLineAndCharacterOfPosition(g.getStart(this.sourceFile)).line;return d===h}return!1}},mPs=wb(99,!1,0),CPs=wb(99,!1,1);function e4t(s,c,g,d,h){let _=c===1?CPs:mPs;_.setText(s),_.resetTokenState(g);let S=!0,R,T,W,V,M,ee=h({advance:re,readTokenInfo:We,readEOFTokenRange:$e,isOnToken:Ye,isOnEOF:Tt,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>S,skipToEndOf:Qe,skipToStartOf:mt,getTokenFullStart:()=>M?.token.pos??_.getTokenStart(),getStartPos:()=>M?.token.pos??_.getTokenStart()});return M=void 0,_.setText(void 0),ee;function re(){M=void 0,_.getTokenFullStart()!==g?S=!!T&&Ei(T).kind===4:_.scan(),R=void 0,T=void 0;let _t=_.getTokenFullStart();for(;_t(s[s.None=0]="None",s[s.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",s[s.StopProcessingTokenActions=2]="StopProcessingTokenActions",s[s.InsertSpace=4]="InsertSpace",s[s.InsertNewLine=8]="InsertNewLine",s[s.DeleteSpace=16]="DeleteSpace",s[s.DeleteToken=32]="DeleteToken",s[s.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",s[s.StopAction=3]="StopAction",s[s.ModifySpaceAction=28]="ModifySpaceAction",s[s.ModifyTokenAction=96]="ModifyTokenAction",s))(Kdn||{}),jdn=(s=>(s[s.None=0]="None",s[s.CanDeleteNewLines=1]="CanDeleteNewLines",s))(jdn||{});function zdn(){let s=[];for(let Ue=0;Ue<=166;Ue++)Ue!==1&&s.push(Ue);function c(...Ue){return{tokens:s.filter($e=>!Ue.some(Ye=>Ye===$e)),isSpecific:!1}}let g={tokens:s,isSpecific:!1},d=Ape([...s,3]),h=Ape([...s,1]),_=$dn(83,166),S=$dn(30,79),R=[103,104,165,130,142,152],T=[46,47,55,54],W=[9,10,80,21,23,19,110,105],V=[80,21,110,105],M=[80,22,24,105],ee=[80,21,110,105],re=[80,22,24,105],ge=[2,3],Ie=[80,...Frt],_e=d,Ee=Ape([80,32,3,86,95,102]),Ne=Ape([22,3,92,113,98,93,85]),Te=[Fa("IgnoreBeforeComment",g,ge,rst,1),Fa("IgnoreAfterLineComment",2,g,rst,1),Fa("NotSpaceBeforeColon",g,59,[ml,tWe,rpn],16),Fa("SpaceAfterColon",59,g,[ml,tWe,ZPs],4),Fa("NoSpaceBeforeQuestionMark",g,58,[ml,tWe,rpn],16),Fa("SpaceAfterQuestionMarkInConditionalOperator",58,g,[ml,EPs],4),Fa("NoSpaceAfterQuestionMark",58,g,[ml,bPs],16),Fa("NoSpaceBeforeDot",g,[25,29],[ml,KPs],16),Fa("NoSpaceAfterDot",[25,29],g,[ml],16),Fa("NoSpaceBetweenImportParenInImportType",102,21,[ml,GPs],16),Fa("NoSpaceAfterUnaryPrefixOperator",T,W,[ml,tWe],16),Fa("NoSpaceAfterUnaryPreincrementOperator",46,V,[ml],16),Fa("NoSpaceAfterUnaryPredecrementOperator",47,ee,[ml],16),Fa("NoSpaceBeforeUnaryPostincrementOperator",M,46,[ml,mpn],16),Fa("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[ml,mpn],16),Fa("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[ml,JP],4),Fa("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[ml,JP],4),Fa("SpaceAfterAddWhenFollowedByPreincrement",40,46,[ml,JP],4),Fa("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[ml,JP],4),Fa("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[ml,JP],4),Fa("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[ml,JP],4),Fa("NoSpaceAfterCloseBrace",20,[28,27],[ml],16),Fa("NewLineBeforeCloseBraceInBlockContext",d,20,[ipn],8),Fa("SpaceAfterCloseBrace",20,c(22),[ml,BPs],4),Fa("SpaceBetweenCloseBraceAndElse",20,93,[ml],4),Fa("SpaceBetweenCloseBraceAndWhile",20,117,[ml],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[ml,upn],16),Fa("SpaceAfterConditionalClosingParen",22,23,[rWe],4),Fa("NoSpaceBetweenFunctionKeywordAndStar",100,42,[apn],16),Fa("SpaceAfterStarInGeneratorDeclaration",42,80,[apn],4),Fa("SpaceAfterFunctionInFuncDecl",100,g,[PU],4),Fa("NewLineAfterOpenBraceInBlockContext",19,g,[ipn],8),Fa("SpaceAfterGetSetInMember",[139,153],80,[PU],4),Fa("NoSpaceBetweenYieldKeywordAndStar",127,42,[ml,hpn],16),Fa("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],g,[ml,hpn],4),Fa("NoSpaceBetweenReturnAndSemicolon",107,27,[ml],16),Fa("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],g,[ml],4),Fa("SpaceAfterLetConstInVariableDeclaration",[121,87],g,[ml,PPs],4),Fa("NoSpaceBeforeOpenParenInFuncCall",g,21,[ml,RPs,NPs],16),Fa("SpaceBeforeBinaryKeywordOperator",g,R,[ml,JP],4),Fa("SpaceAfterBinaryKeywordOperator",R,g,[ml,JP],4),Fa("SpaceAfterVoidOperator",116,g,[ml,YPs],4),Fa("SpaceBetweenAsyncAndOpenParen",134,21,[xPs,ml],4),Fa("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[ml],4),Fa("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[ml],16),Fa("SpaceBeforeJsxAttribute",g,80,[FPs,ml],4),Fa("SpaceBeforeSlashInJsxOpeningElement",g,44,[ppn,ml],4),Fa("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[ppn,ml],16),Fa("NoSpaceBeforeEqualInJsxAttribute",g,64,[Apn,ml],16),Fa("NoSpaceAfterEqualInJsxAttribute",64,g,[Apn,ml],16),Fa("NoSpaceBeforeJsxNamespaceColon",80,59,[dpn],16),Fa("NoSpaceAfterJsxNamespaceColon",59,80,[dpn],16),Fa("NoSpaceAfterModuleImport",[144,149],21,[ml],16),Fa("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],g,[ml],4),Fa("SpaceBeforeCertainTypeScriptKeywords",g,[96,119,161],[ml],4),Fa("SpaceAfterModuleName",11,19,[WPs],4),Fa("SpaceBeforeArrow",g,39,[ml],4),Fa("SpaceAfterArrow",39,g,[ml],4),Fa("NoSpaceAfterEllipsis",26,80,[ml],16),Fa("NoSpaceAfterOptionalParameters",58,[22,28],[ml,tWe],16),Fa("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[ml,OPs],16),Fa("NoSpaceBeforeOpenAngularBracket",Ie,30,[ml,nWe],16),Fa("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[ml,nWe],16),Fa("NoSpaceAfterOpenAngularBracket",30,g,[ml,nWe],16),Fa("NoSpaceBeforeCloseAngularBracket",g,32,[ml,nWe],16),Fa("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[ml,nWe,vPs,HPs],16),Fa("SpaceBeforeAt",[22,80],60,[ml],4),Fa("NoSpaceAfterAt",60,g,[ml],16),Fa("SpaceAfterDecorator",g,[128,80,95,90,86,126,125,123,124,139,153,23,42],[VPs],4),Fa("NoSpaceBeforeNonNullAssertionOperator",g,54,[ml,QPs],16),Fa("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[ml,MPs],16),Fa("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[ml],4)],Ze=[Fa("SpaceAfterConstructor",137,21,[AS("insertSpaceAfterConstructor"),ml],4),Fa("NoSpaceAfterConstructor",137,21,[NN("insertSpaceAfterConstructor"),ml],16),Fa("SpaceAfterComma",28,g,[AS("insertSpaceAfterCommaDelimiter"),ml,a4t,DPs,kPs],4),Fa("NoSpaceAfterComma",28,g,[NN("insertSpaceAfterCommaDelimiter"),ml,a4t],16),Fa("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[AS("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),PU],4),Fa("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[NN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),PU],16),Fa("SpaceAfterKeywordInControl",_,21,[AS("insertSpaceAfterKeywordsInControlFlowStatements"),rWe],4),Fa("NoSpaceAfterKeywordInControl",_,21,[NN("insertSpaceAfterKeywordsInControlFlowStatements"),rWe],16),Fa("SpaceAfterOpenParen",21,g,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("SpaceBeforeCloseParen",g,22,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("SpaceBetweenOpenParens",21,21,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],4),Fa("NoSpaceBetweenParens",21,22,[ml],16),Fa("NoSpaceAfterOpenParen",21,g,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],16),Fa("NoSpaceBeforeCloseParen",g,22,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),ml],16),Fa("SpaceAfterOpenBracket",23,g,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],4),Fa("SpaceBeforeCloseBracket",g,24,[AS("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],4),Fa("NoSpaceBetweenBrackets",23,24,[ml],16),Fa("NoSpaceAfterOpenBracket",23,g,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],16),Fa("NoSpaceBeforeCloseBracket",g,24,[NN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),ml],16),Fa("SpaceAfterOpenBrace",19,g,[tpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),npn],4),Fa("SpaceBeforeCloseBrace",g,20,[tpn("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),npn],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[ml,upn],16),Fa("NoSpaceAfterOpenBrace",19,g,[t4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),ml],16),Fa("NoSpaceBeforeCloseBrace",g,20,[t4t("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),ml],16),Fa("SpaceBetweenEmptyBraceBrackets",19,20,[AS("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Fa("NoSpaceBetweenEmptyBraceBrackets",19,20,[t4t("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),ml],16),Fa("SpaceAfterTemplateHeadAndMiddle",[16,17],g,[AS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),gpn],4,1),Fa("SpaceBeforeTemplateMiddleAndTail",g,[17,18],[AS("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),ml],4),Fa("NoSpaceAfterTemplateHeadAndMiddle",[16,17],g,[NN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),gpn],16,1),Fa("NoSpaceBeforeTemplateMiddleAndTail",g,[17,18],[NN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),ml],16),Fa("SpaceAfterOpenBraceInJsxExpression",19,g,[AS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],4),Fa("SpaceBeforeCloseBraceInJsxExpression",g,20,[AS("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],4),Fa("NoSpaceAfterOpenBraceInJsxExpression",19,g,[NN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],16),Fa("NoSpaceBeforeCloseBraceInJsxExpression",g,20,[NN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),ml,ist],16),Fa("SpaceAfterSemicolonInFor",27,g,[AS("insertSpaceAfterSemicolonInForStatements"),ml,n4t],4),Fa("NoSpaceAfterSemicolonInFor",27,g,[NN("insertSpaceAfterSemicolonInForStatements"),ml,n4t],16),Fa("SpaceBeforeBinaryOperator",g,S,[AS("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],4),Fa("SpaceAfterBinaryOperator",S,g,[AS("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],4),Fa("NoSpaceBeforeBinaryOperator",g,S,[NN("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],16),Fa("NoSpaceAfterBinaryOperator",S,g,[NN("insertSpaceBeforeAndAfterBinaryOperators"),ml,JP],16),Fa("SpaceBeforeOpenParenInFuncDecl",g,21,[AS("insertSpaceBeforeFunctionParenthesis"),ml,PU],4),Fa("NoSpaceBeforeOpenParenInFuncDecl",g,21,[NN("insertSpaceBeforeFunctionParenthesis"),ml,PU],16),Fa("NewLineBeforeOpenBraceInControl",Ne,19,[AS("placeOpenBraceOnNewLineForControlBlocks"),rWe,o4t],8,1),Fa("NewLineBeforeOpenBraceInFunction",_e,19,[AS("placeOpenBraceOnNewLineForFunctions"),PU,o4t],8,1),Fa("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[AS("placeOpenBraceOnNewLineForFunctions"),cpn,o4t],8,1),Fa("SpaceAfterTypeAssertion",32,g,[AS("insertSpaceAfterTypeAssertion"),ml,l4t],4),Fa("NoSpaceAfterTypeAssertion",32,g,[NN("insertSpaceAfterTypeAssertion"),ml,l4t],16),Fa("SpaceBeforeTypeAnnotation",g,[58,59],[AS("insertSpaceBeforeTypeAnnotation"),ml,i4t],4),Fa("NoSpaceBeforeTypeAnnotation",g,[58,59],[NN("insertSpaceBeforeTypeAnnotation"),ml,i4t],16),Fa("NoOptionalSemicolon",27,h,[epn("semicolons","remove"),JPs],32),Fa("OptionalSemicolon",g,h,[epn("semicolons","insert"),UPs],64)],We=[Fa("NoSpaceBeforeSemicolon",g,27,[ml],16),Fa("SpaceBeforeOpenBraceInControl",Ne,19,[r4t("placeOpenBraceOnNewLineForControlBlocks"),rWe,c4t,s4t],4,1),Fa("SpaceBeforeOpenBraceInFunction",_e,19,[r4t("placeOpenBraceOnNewLineForFunctions"),PU,nst,c4t,s4t],4,1),Fa("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Ee,19,[r4t("placeOpenBraceOnNewLineForFunctions"),cpn,c4t,s4t],4,1),Fa("NoSpaceBeforeComma",g,28,[ml],16),Fa("NoSpaceBeforeOpenBracket",c(134,84),23,[ml],16),Fa("NoSpaceAfterCloseBracket",24,g,[ml,LPs],16),Fa("SpaceAfterSemicolon",27,g,[ml],4),Fa("SpaceBetweenForAndAwaitKeyword",99,135,[ml],4),Fa("SpaceBetweenDotDotDotAndTypeName",26,Ie,[ml],16),Fa("SpaceBetweenStatements",[22,92,93,84],g,[ml,a4t,_Ps],4),Fa("SpaceAfterTryCatchFinally",[113,85,98],19,[ml],4)];return[...Te,...Ze,...We]}function Fa(s,c,g,d,h,_=0){return{leftTokenRange:qdn(c),rightTokenRange:qdn(g),rule:{debugName:s,context:d,action:h,flags:_}}}function Ape(s){return{tokens:s,isSpecific:!0}}function qdn(s){return typeof s=="number"?Ape([s]):Ki(s)?Ape(s):s}function $dn(s,c,g=[]){let d=[];for(let h=s;h<=c;h++)k(g,h)||d.push(h);return Ape(d)}function epn(s,c){return g=>g.options&&g.options[s]===c}function AS(s){return c=>c.options&&Da(c.options,s)&&!!c.options[s]}function t4t(s){return c=>c.options&&Da(c.options,s)&&!c.options[s]}function NN(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]}function r4t(s){return c=>!c.options||!Da(c.options,s)||!c.options[s]||c.TokensAreOnSameLine()}function tpn(s){return c=>!c.options||!Da(c.options,s)||!!c.options[s]}function n4t(s){return s.contextNode.kind===249}function _Ps(s){return!n4t(s)}function JP(s){switch(s.contextNode.kind){case 227:return s.contextNode.operatorToken.kind!==28;case 228:case 195:case 235:case 282:case 277:case 183:case 193:case 194:case 239:return!0;case 209:case 266:case 272:case 278:case 261:case 170:case 307:case 173:case 172:return s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 250:case 169:return s.currentTokenSpan.kind===103||s.nextTokenSpan.kind===103||s.currentTokenSpan.kind===64||s.nextTokenSpan.kind===64;case 251:return s.currentTokenSpan.kind===165||s.nextTokenSpan.kind===165}return!1}function tWe(s){return!JP(s)}function rpn(s){return!i4t(s)}function i4t(s){let c=s.contextNode.kind;return c===173||c===172||c===170||c===261||lP(c)}function yPs(s){return pi(s.contextNode)&&s.contextNode.questionToken}function bPs(s){return!yPs(s)}function EPs(s){return s.contextNode.kind===228||s.contextNode.kind===195}function s4t(s){return s.TokensAreOnSameLine()||nst(s)}function npn(s){return s.contextNode.kind===207||s.contextNode.kind===201||SPs(s)}function o4t(s){return nst(s)&&!(s.NextNodeAllOnSameLine()||s.NextNodeBlockIsOnOneLine())}function ipn(s){return spn(s)&&!(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function SPs(s){return spn(s)&&(s.ContextNodeAllOnSameLine()||s.ContextNodeBlockIsOnOneLine())}function spn(s){return opn(s.contextNode)}function nst(s){return opn(s.nextTokenParent)}function opn(s){if(lpn(s))return!0;switch(s.kind){case 242:case 270:case 211:case 269:return!0}return!1}function PU(s){switch(s.contextNode.kind){case 263:case 175:case 174:case 178:case 179:case 180:case 219:case 177:case 220:case 265:return!0}return!1}function vPs(s){return!PU(s)}function apn(s){return s.contextNode.kind===263||s.contextNode.kind===219}function cpn(s){return lpn(s.contextNode)}function lpn(s){switch(s.kind){case 264:case 232:case 265:case 267:case 188:case 268:case 279:case 280:case 273:case 276:return!0}return!1}function BPs(s){switch(s.currentTokenParent.kind){case 264:case 268:case 267:case 300:case 269:case 256:return!0;case 242:{let c=s.currentTokenParent.parent;if(!c||c.kind!==220&&c.kind!==219)return!0}}return!1}function rWe(s){switch(s.contextNode.kind){case 246:case 256:case 249:case 250:case 251:case 248:case 259:case 247:case 255:case 300:return!0;default:return!1}}function upn(s){return s.contextNode.kind===211}function wPs(s){return s.contextNode.kind===214}function TPs(s){return s.contextNode.kind===215}function RPs(s){return wPs(s)||TPs(s)}function NPs(s){return s.currentTokenSpan.kind!==28}function DPs(s){return s.nextTokenSpan.kind!==24}function kPs(s){return s.nextTokenSpan.kind!==22}function xPs(s){return s.contextNode.kind===220}function GPs(s){return s.contextNode.kind===206}function ml(s){return s.TokensAreOnSameLine()&&s.contextNode.kind!==12}function gpn(s){return s.contextNode.kind!==12}function a4t(s){return s.contextNode.kind!==285&&s.contextNode.kind!==289}function ist(s){return s.contextNode.kind===295||s.contextNode.kind===294}function FPs(s){return s.nextTokenParent.kind===292||s.nextTokenParent.kind===296&&s.nextTokenParent.parent.kind===292}function Apn(s){return s.contextNode.kind===292}function ZPs(s){return s.nextTokenParent.kind!==296}function dpn(s){return s.nextTokenParent.kind===296}function ppn(s){return s.contextNode.kind===286}function LPs(s){return!PU(s)&&!nst(s)}function VPs(s){return s.TokensAreOnSameLine()&&p1(s.contextNode)&&fpn(s.currentTokenParent)&&!fpn(s.nextTokenParent)}function fpn(s){for(;s&&un(s);)s=s.parent;return s&&s.kind===171}function PPs(s){return s.currentTokenParent.kind===262&&s.currentTokenParent.getStart(s.sourceFile)===s.currentTokenSpan.pos}function c4t(s){return s.formattingRequestKind!==2}function WPs(s){return s.contextNode.kind===268}function OPs(s){return s.contextNode.kind===188}function MPs(s){return s.contextNode.kind===181}function Ipn(s,c){if(s.kind!==30&&s.kind!==32)return!1;switch(c.kind){case 184:case 217:case 266:case 264:case 232:case 265:case 263:case 219:case 220:case 175:case 174:case 180:case 181:case 214:case 215:case 234:return!0;default:return!1}}function nWe(s){return Ipn(s.currentTokenSpan,s.currentTokenParent)||Ipn(s.nextTokenSpan,s.nextTokenParent)}function l4t(s){return s.contextNode.kind===217}function HPs(s){return!l4t(s)}function YPs(s){return s.currentTokenSpan.kind===116&&s.currentTokenParent.kind===223}function hpn(s){return s.contextNode.kind===230&&s.contextNode.expression!==void 0}function QPs(s){return s.contextNode.kind===236}function mpn(s){return!XPs(s)}function XPs(s){switch(s.contextNode.kind){case 246:case 249:case 250:case 251:case 247:case 248:return!0;default:return!1}}function JPs(s){let c=s.nextTokenSpan.kind,g=s.nextTokenSpan.pos;if(zJ(c)){let _=s.nextTokenParent===s.currentTokenParent?fQ(s.currentTokenParent,ji(s.currentTokenParent,S=>!S.parent),s.sourceFile):s.nextTokenParent.getFirstToken(s.sourceFile);if(!_)return!0;c=_.kind,g=_.getStart(s.sourceFile)}let d=s.sourceFile.getLineAndCharacterOfPosition(s.currentTokenSpan.pos).line,h=s.sourceFile.getLineAndCharacterOfPosition(g).line;return d===h?c===20||c===1:c===27&&s.currentTokenSpan.kind===27?!0:c===241||c===27?!1:s.contextNode.kind===265||s.contextNode.kind===266?!ss(s.currentTokenParent)||!!s.currentTokenParent.type||c!==21:pi(s.currentTokenParent)?!s.currentTokenParent.initializer:s.currentTokenParent.kind!==249&&s.currentTokenParent.kind!==243&&s.currentTokenParent.kind!==241&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==229&&c!==16&&c!==15&&c!==25}function UPs(s){return nPe(s.currentTokenSpan.end,s.currentTokenParent,s.sourceFile)}function KPs(s){return!jo(s.contextNode)||!mC(s.contextNode.expression)||s.contextNode.expression.getText().includes(".")}function jPs(s,c){return{options:s,getRules:zPs(),host:c}}var u4t;function zPs(){return u4t===void 0&&(u4t=$Ps(zdn())),u4t}function qPs(s){let c=0;return s&1&&(c|=28),s&2&&(c|=96),s&28&&(c|=28),s&96&&(c|=96),c}function $Ps(s){let c=eWs(s);return g=>{let d=c[Cpn(g.currentTokenSpan.kind,g.nextTokenSpan.kind)];if(d){let h=[],_=0;for(let S of d){let R=~qPs(_);S.action&R&&ue(S.context,T=>T(g))&&(h.push(S),_|=S.action)}if(h.length)return h}}}function eWs(s){let c=new Array(g4t*g4t),g=new Array(c.length);for(let d of s){let h=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let _ of d.leftTokenRange.tokens)for(let S of d.rightTokenRange.tokens){let R=Cpn(_,S),T=c[R];T===void 0&&(T=c[R]=[]),tWs(T,d.rule,h,g,R)}}return c}function Cpn(s,c){return pe.assert(s<=166&&c<=166,"Must compute formatting context from tokens"),s*g4t+c}var dpe=5,sst=31,g4t=167,q1e=(s=>(s[s.StopRulesSpecific=0]="StopRulesSpecific",s[s.StopRulesAny=dpe*1]="StopRulesAny",s[s.ContextRulesSpecific=dpe*2]="ContextRulesSpecific",s[s.ContextRulesAny=dpe*3]="ContextRulesAny",s[s.NoContextRulesSpecific=dpe*4]="NoContextRulesSpecific",s[s.NoContextRulesAny=dpe*5]="NoContextRulesAny",s))(q1e||{});function tWs(s,c,g,d,h){let _=c.action&3?g?0:q1e.StopRulesAny:c.context!==rst?g?q1e.ContextRulesSpecific:q1e.ContextRulesAny:g?q1e.NoContextRulesSpecific:q1e.NoContextRulesAny,S=d[h]||0;s.splice(rWs(S,_),0,c),d[h]=nWs(S,_)}function rWs(s,c){let g=0;for(let d=0;d<=c;d+=dpe)g+=s&sst,s>>=dpe;return g}function nWs(s,c){let g=(s>>c&sst)+1;return pe.assert((g&sst)===g,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),s&~(sst<pe.formatSyntaxKind(g)}),d}function iWs(s,c,g){let d=c.getLineAndCharacterOfPosition(s).line;if(d===0)return[];let h=vY(d,c);for(;Iu(c.text.charCodeAt(h));)h--;Cl(c.text.charCodeAt(h))&&h--;let _={pos:OD(d-1,c),end:h+1};return iWe(_,c,g,2)}function sWs(s,c,g){let d=A4t(s,27,c);return _pn(d4t(d),c,g,3)}function oWs(s,c,g){let d=A4t(s,19,c);if(!d)return[];let h=d.parent,_=d4t(h),S={pos:PB(_.getStart(c),c),end:s};return iWe(S,c,g,4)}function aWs(s,c,g){let d=A4t(s,20,c);return _pn(d4t(d),c,g,5)}function cWs(s,c){let g={pos:0,end:s.text.length};return iWe(g,s,c,0)}function lWs(s,c,g,d){let h={pos:PB(s,g),end:c};return iWe(h,g,d,1)}function A4t(s,c,g){let d=Gm(s,g);return d&&d.kind===c&&s===d.getEnd()?d:void 0}function d4t(s){let c=s;for(;c&&c.parent&&c.parent.end===s.end&&!uWs(c.parent,c);)c=c.parent;return c}function uWs(s,c){switch(s.kind){case 264:case 265:return cy(s.members,c);case 268:let g=s.body;return!!g&&g.kind===269&&cy(g.statements,c);case 308:case 242:case 269:return cy(s.statements,c);case 300:return cy(s.block.statements,c)}return!1}function gWs(s,c){return g(c);function g(d){let h=Lu(d,_=>mAe(_.getStart(c),_.end,s)&&_);if(h){let _=g(h);if(_)return _}return d}}function AWs(s,c){if(!s.length)return h;let g=s.filter(_=>Mde(c,_.start,_.start+_.length)).sort((_,S)=>_.start-S.start);if(!g.length)return h;let d=0;return _=>{for(;;){if(d>=g.length)return!1;let S=g[d];if(_.end<=S.start)return!1;if(LVe(_.pos,_.end,S.start,S.start+S.length))return!0;d++}};function h(){return!1}}function dWs(s,c,g){let d=s.getStart(g);if(d===c.pos&&s.end===c.end)return d;let h=Gm(c.pos,g);return!h||h.end>=c.pos?s.pos:h.end}function pWs(s,c,g){let d=-1,h;for(;s;){let _=g.getLineAndCharacterOfPosition(s.getStart(g)).line;if(d!==-1&&_!==d)break;if(DN.shouldIndentChildNode(c,s,h,g))return c.indentSize;d=_,h=s,s=s.parent}return 0}function fWs(s,c,g,d,h,_){let S={pos:s.pos,end:s.end};return e4t(c.text,g,S.pos,S.end,R=>ypn(S,s,d,h,R,_,1,T=>!1,c))}function _pn(s,c,g,d){if(!s)return[];let h={pos:PB(s.getStart(c),c),end:s.end};return iWe(h,c,g,d)}function iWe(s,c,g,d){let h=gWs(s,c);return e4t(c.text,c.languageVariant,dWs(h,s,c),s.end,_=>ypn(s,h,DN.getIndentationForNode(h,s,c,g.options),pWs(h,g.options,c),_,g,d,AWs(c.parseDiagnostics,s),c))}function ypn(s,c,g,d,h,{options:_,getRules:S,host:R},T,W,V){var M;let ee=new Udn(V,T,_),re,ge,Ie,_e,Ee,Ne=-1,Te=[];if(h.advance(),h.isOnToken()){let dt=V.getLineAndCharacterOfPosition(c.getStart(V)).line,pr=dt;p1(c)&&(pr=V.getLineAndCharacterOfPosition(Mre(c,V)).line),Tt(c,c,dt,pr,g,d)}let Ze=h.getCurrentLeadingTrivia();if(Ze){let dt=DN.nodeWillIndentChild(_,c,void 0,V,!1)?g+_.indentSize:g;ot(Ze,dt,!0,pr=>{mt(pr,V.getLineAndCharacterOfPosition(pr.pos),c,c,void 0),_t(pr.pos,dt,!1)}),_.trimTrailingWhitespace!==!1&&Gt(Ze)}if(ge&&h.getTokenFullStart()>=s.end){let dt=h.isOnEOF()?h.readEOFTokenRange():h.isOnToken()?h.readTokenInfo(c).token:void 0;if(dt&&dt.pos===re){let pr=((M=Gm(dt.end,V,c))==null?void 0:M.parent)||Ie;ht(dt,V.getLineAndCharacterOfPosition(dt.pos).line,pr,ge,_e,Ie,pr,void 0)}}return Te;function We(dt,pr,st,ir,zt){if(Mde(ir,dt,pr)||c1e(ir,dt,pr)){if(zt!==-1)return zt}else{let Ht=V.getLineAndCharacterOfPosition(dt).line,Br=PB(dt,V),mn=DN.findFirstNonWhitespaceColumn(Br,dt,V,_);if(Ht!==st||dt===mn){let jn=DN.getBaseIndentation(_);return jn>mn?jn:mn}}return-1}function Ue(dt,pr,st,ir,zt,Ht){let Br=DN.shouldIndentChildNode(_,dt)?_.indentSize:0;return Ht===pr?{indentation:pr===Ee?Ne:zt.getIndentation(),delta:Math.min(_.indentSize,zt.getDelta(dt)+Br)}:st===-1?dt.kind===21&&pr===Ee?{indentation:Ne,delta:zt.getDelta(dt)}:DN.childStartsOnTheSameLineWithElseInIfStatement(ir,dt,pr,V)||DN.childIsUnindentedBranchOfConditionalExpression(ir,dt,pr,V)||DN.argumentStartsOnSameLineAsPreviousArgument(ir,dt,pr,V)?{indentation:zt.getIndentation(),delta:Br}:{indentation:zt.getIndentation()+zt.getDelta(dt),delta:Br}:{indentation:st,delta:Br}}function $e(dt){if(LB(dt)){let pr=de(dt.modifiers,Ig,Se(dt.modifiers,So));if(pr)return pr.kind}switch(dt.kind){case 264:return 86;case 265:return 120;case 263:return 100;case 267:return 267;case 178:return 139;case 179:return 153;case 175:if(dt.asteriskToken)return 42;case 173:case 170:let pr=Il(dt);if(pr)return pr.kind}}function Ye(dt,pr,st,ir){return{getIndentationForComment:(Br,mn,jn)=>{switch(Br){case 20:case 24:case 22:return st+Ht(jn)}return mn!==-1?mn:st},getIndentationForToken:(Br,mn,jn,Zi)=>!Zi&&zt(Br,mn,jn)?st+Ht(jn):st,getIndentation:()=>st,getDelta:Ht,recomputeIndentation:(Br,mn)=>{DN.shouldIndentChildNode(_,mn,dt,V)&&(st+=Br?_.indentSize:-_.indentSize,ir=DN.shouldIndentChildNode(_,dt)?_.indentSize:0)}};function zt(Br,mn,jn){switch(mn){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(jn.kind){case 287:case 288:case 286:return!1}break;case 23:case 24:if(jn.kind!==201)return!1;break}return pr!==Br&&!(p1(dt)&&mn===$e(dt))}function Ht(Br){return DN.nodeWillIndentChild(_,dt,Br,V,!0)?ir:0}}function Tt(dt,pr,st,ir,zt,Ht){if(!Mde(s,dt.getStart(V),dt.getEnd()))return;let Br=Ye(dt,st,zt,Ht),mn=pr;for(Lu(dt,An=>{jn(An,-1,dt,Br,st,ir,!1)},An=>{Zi(An,dt,st,Br)});h.isOnToken()&&h.getTokenFullStart()Math.min(dt.end,s.end))break;Ns(An,dt,Br,dt)}function jn(An,si,ks,Ic,su,Zn,ya,Gl){if(pe.assert(!sp(An)),sf(An)||_ge(ks,An))return si;let ba=An.getStart(V),Wo=V.getLineAndCharacterOfPosition(ba).line,hc=Wo;p1(An)&&(hc=V.getLineAndCharacterOfPosition(Mre(An,V)).line);let yr=-1;if(ya&&cy(s,ks)&&(yr=We(ba,An.end,su,s,si),yr!==-1&&(si=yr)),!Mde(s,An.pos,An.end))return An.ends.end)return si;if(lo.token.end>ba){lo.token.pos>ba&&h.skipToStartOf(An);break}Ns(lo,dt,Ic,dt)}if(!h.isOnToken()||h.getTokenFullStart()>=s.end)return si;if(BL(An)){let lo=h.readTokenInfo(An);if(An.kind!==12)return pe.assert(lo.token.end===An.end,"Token end is child end"),Ns(lo,dt,Ic,An),si}let hn=An.kind===171?Wo:Zn,Oi=Ue(An,Wo,yr,dt,Ic,hn);return Tt(An,mn,Wo,hc,Oi.indentation,Oi.delta),mn=dt,Gl&&ks.kind===210&&si===-1&&(si=Oi.indentation),si}function Zi(An,si,ks,Ic){pe.assert(tN(An)),pe.assert(!sp(An));let su=IWs(si,An),Zn=Ic,ya=ks;if(!Mde(s,An.pos,An.end)){An.endAn.pos)break;if(Wo.token.kind===su){ya=V.getLineAndCharacterOfPosition(Wo.token.pos).line,Ns(Wo,si,Ic,si);let hc;if(Ne!==-1)hc=Ne;else{let yr=PB(Wo.token.pos,V);hc=DN.findFirstNonWhitespaceColumn(yr,Wo.token.pos,V,_)}Zn=Ye(si,ks,hc,_.indentSize)}else Ns(Wo,si,Ic,si)}let Gl=-1;for(let Wo=0;Wo_t(Oi.pos,hn,!1))}hc!==-1&&yr&&(_t(An.token.pos,hc,Gl===1),Ee=Wo.line,Ne=hc)}h.advance(),mn=si}}function ot(dt,pr,st,ir){for(let zt of dt){let Ht=cy(s,zt);switch(zt.kind){case 3:Ht&&Ke(zt,pr,!st),st=!1;break;case 2:st&&Ht&&ir(zt),st=!1;break;case 4:st=!0;break}}return st}function Qe(dt,pr,st,ir){for(let zt of dt)if(YVe(zt.kind)&&cy(s,zt)){let Ht=V.getLineAndCharacterOfPosition(zt.pos);mt(zt,Ht,pr,st,ir)}}function mt(dt,pr,st,ir,zt){let Ht=W(dt),Br=0;if(!Ht)if(ge)Br=ht(dt,pr.line,st,ge,_e,Ie,ir,zt);else{let mn=V.getLineAndCharacterOfPosition(s.pos);Pt(mn.line,pr.line)}return ge=dt,re=dt.end,Ie=st,_e=pr.line,Br}function ht(dt,pr,st,ir,zt,Ht,Br,mn){ee.updateContext(ir,Ht,dt,st,Br);let jn=S(ee),Zi=ee.options.trimTrailingWhitespace!==!1,Ns=0;return jn?Q(jn,An=>{if(Ns=Gr(An,ir,zt,dt,pr),mn)switch(Ns){case 2:st.getStart(V)===dt.pos&&mn.recomputeIndentation(!1,Br);break;case 1:st.getStart(V)===dt.pos&&mn.recomputeIndentation(!0,Br);break;default:pe.assert(Ns===0)}Zi=Zi&&!(An.action&16)&&An.flags!==1}):Zi=Zi&&dt.kind!==1,pr!==zt&&Zi&&Pt(zt,pr,ir),Ns}function _t(dt,pr,st){let ir=p4t(pr,_);if(st)tr(dt,0,ir);else{let zt=V.getLineAndCharacterOfPosition(dt),Ht=OD(zt.line,V);(pr!==Rt(Ht,zt.character)||Lt(ir,Ht))&&tr(Ht,zt.character,ir)}}function Rt(dt,pr){let st=0;for(let ir=0;ir0){let Zn=p4t(su,_);tr(ks,Ic.character,Zn)}else Dt(ks,Ic.character)}}function Pt(dt,pr,st){for(let ir=dt;irHt)continue;let Br=_r(zt,Ht);Br!==-1&&(pe.assert(Br===zt||!Iu(V.text.charCodeAt(Br-1))),Dt(Br,Ht+1-Br))}}function _r(dt,pr){let st=pr;for(;st>=dt&&Iu(V.text.charCodeAt(st));)st--;return st!==pr?st+1:-1}function Gt(dt){let pr=ge?ge.end:s.pos;for(let st of dt)YVe(st.kind)&&(pra1e(W,c)||c===W.end&&(W.kind===2||c===s.getFullWidth()))}function IWs(s,c){switch(s.kind){case 177:case 263:case 219:case 175:case 174:case 220:case 180:case 181:case 185:case 186:case 178:case 179:if(s.typeParameters===c)return 30;if(s.parameters===c)return 21;break;case 214:case 215:if(s.typeArguments===c)return 30;if(s.arguments===c)return 21;break;case 264:case 232:case 265:case 266:if(s.typeParameters===c)return 30;break;case 184:case 216:case 187:case 234:case 206:if(s.typeArguments===c)return 30;break;case 188:return 19}return 0}function hWs(s){switch(s){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var ast,$1e,e2e;function p4t(s,c){if((!ast||ast.tabSize!==c.tabSize||ast.indentSize!==c.indentSize)&&(ast={tabSize:c.tabSize,indentSize:c.indentSize},$1e=e2e=void 0),c.convertTabsToSpaces){let d,h=Math.floor(s/c.indentSize),_=s%c.indentSize;return e2e||(e2e=[]),e2e[h]===void 0?(d=A1e(" ",c.indentSize*h),e2e[h]=d):d=e2e[h],_?d+A1e(" ",_):d}else{let d=Math.floor(s/c.tabSize),h=s-d*c.tabSize,_;return $1e||($1e=[]),$1e[d]===void 0?$1e[d]=_=A1e(" ",d):_=$1e[d],h?_+A1e(" ",h):_}}var DN;(s=>{let c;(Ke=>{Ke[Ke.Unknown=-1]="Unknown"})(c||(c={}));function g(Ke,Pt,_r,Gt=!1){if(Ke>Pt.text.length)return R(_r);if(_r.indentStyle===0)return 0;let nt=Gm(Ke,Pt,void 0,!0),Dt=bpn(Pt,Ke,nt||null);if(Dt&&Dt.kind===3)return d(Pt,Ke,_r,Dt);if(!nt)return R(_r);if(Rrt(nt.kind)&&nt.getStart(Pt)<=Ke&&Ke=0),nt<=Dt)return mt(OD(Dt,Ke),Pt,Ke,_r);let tr=OD(nt,Ke),{column:ur,character:Gr}=Qe(tr,Pt,Ke,_r);return ur===0?ur:Ke.text.charCodeAt(tr+Gr)===42?ur-1:ur}function h(Ke,Pt,_r){let Gt=Pt;for(;Gt>0;){let Dt=Ke.text.charCodeAt(Gt);if(!dc(Dt))break;Gt--}let nt=PB(Gt,Ke);return mt(nt,Gt,Ke,_r)}function _(Ke,Pt,_r,Gt,nt,Dt){let tr,ur=_r;for(;ur;){if(brt(ur,Pt,Ke)&&Rt(Dt,ur,tr,Ke,!0)){let dt=ge(ur,Ke),pr=re(_r,ur,Gt,Ke),st=pr!==0?nt&&pr===2?Dt.indentSize:0:Gt!==dt.line?Dt.indentSize:0;return T(ur,dt,void 0,st,Ke,!0,Dt)}let Gr=Ye(ur,Ke,Dt,!0);if(Gr!==-1)return Gr;tr=ur,ur=ur.parent}return R(Dt)}function S(Ke,Pt,_r,Gt){let nt=_r.getLineAndCharacterOfPosition(Ke.getStart(_r));return T(Ke,nt,Pt,0,_r,!1,Gt)}s.getIndentationForNode=S;function R(Ke){return Ke.baseIndentSize||0}s.getBaseIndentation=R;function T(Ke,Pt,_r,Gt,nt,Dt,tr){var ur;let Gr=Ke.parent;for(;Gr;){let dt=!0;if(_r){let zt=Ke.getStart(nt);dt=zt<_r.pos||zt>_r.end}let pr=W(Gr,Ke,nt),st=pr.line===Pt.line||_e(Gr,Ke,Pt.line,nt);if(dt){let zt=(ur=Te(Ke,nt))==null?void 0:ur[0],Ht=!!zt&&ge(zt,nt).line>pr.line,Br=Ye(Ke,nt,tr,Ht);if(Br!==-1||(Br=M(Ke,Gr,Pt,st,nt,tr),Br!==-1))return Br+Gt}Rt(tr,Gr,Ke,nt,Dt)&&!st&&(Gt+=tr.indentSize);let ir=Ie(Gr,Ke,Pt.line,nt);Ke=Gr,Gr=Ke.parent,Pt=ir?nt.getLineAndCharacterOfPosition(Ke.getStart(nt)):pr}return Gt+R(tr)}function W(Ke,Pt,_r){let Gt=Te(Pt,_r),nt=Gt?Gt.pos:Ke.getStart(_r);return _r.getLineAndCharacterOfPosition(nt)}function V(Ke,Pt,_r){let Gt=U5t(Ke);return Gt&&Gt.listItemIndex>0?Tt(Gt.list.getChildren(),Gt.listItemIndex-1,Pt,_r):-1}function M(Ke,Pt,_r,Gt,nt,Dt){return(jh(Ke)||vJ(Ke))&&(Pt.kind===308||!Gt)?ot(_r,nt,Dt):-1}let ee;(Ke=>{Ke[Ke.Unknown=0]="Unknown",Ke[Ke.OpenBrace=1]="OpenBrace",Ke[Ke.CloseBrace=2]="CloseBrace"})(ee||(ee={}));function re(Ke,Pt,_r,Gt){let nt=fQ(Ke,Pt,Gt);if(!nt)return 0;if(nt.kind===19)return 1;if(nt.kind===20){let Dt=ge(nt,Gt).line;return _r===Dt?2:0}return 0}function ge(Ke,Pt){return Pt.getLineAndCharacterOfPosition(Ke.getStart(Pt))}function Ie(Ke,Pt,_r,Gt){if(!(Zl(Ke)&&k(Ke.arguments,Pt)))return!1;let nt=Ke.expression.getEnd();return Ra(Gt,nt).line===_r}s.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ie;function _e(Ke,Pt,_r,Gt){if(Ke.kind===246&&Ke.elseStatement===Pt){let nt=qd(Ke,93,Gt);return pe.assert(nt!==void 0),ge(nt,Gt).line===_r}return!1}s.childStartsOnTheSameLineWithElseInIfStatement=_e;function Ee(Ke,Pt,_r,Gt){if(Lw(Ke)&&(Pt===Ke.whenTrue||Pt===Ke.whenFalse)){let nt=Ra(Gt,Ke.condition.end).line;if(Pt===Ke.whenTrue)return _r===nt;{let Dt=ge(Ke.whenTrue,Gt).line,tr=Ra(Gt,Ke.whenTrue.end).line;return nt===Dt&&tr===_r}}return!1}s.childIsUnindentedBranchOfConditionalExpression=Ee;function Ne(Ke,Pt,_r,Gt){if(av(Ke)){if(!Ke.arguments)return!1;let nt=de(Ke.arguments,Gr=>Gr.pos===Pt.pos);if(!nt)return!1;let Dt=Ke.arguments.indexOf(nt);if(Dt===0)return!1;let tr=Ke.arguments[Dt-1],ur=Ra(Gt,tr.getEnd()).line;if(_r===ur)return!0}return!1}s.argumentStartsOnSameLineAsPreviousArgument=Ne;function Te(Ke,Pt){return Ke.parent&&We(Ke.getStart(Pt),Ke.getEnd(),Ke.parent,Pt)}s.getContainingList=Te;function Ze(Ke,Pt,_r){return Pt&&We(Ke,Ke,Pt,_r)}function We(Ke,Pt,_r,Gt){switch(_r.kind){case 184:return nt(_r.typeArguments);case 211:return nt(_r.properties);case 210:return nt(_r.elements);case 188:return nt(_r.members);case 263:case 219:case 220:case 175:case 174:case 180:case 177:case 186:case 181:return nt(_r.typeParameters)||nt(_r.parameters);case 178:return nt(_r.parameters);case 264:case 232:case 265:case 266:case 346:return nt(_r.typeParameters);case 215:case 214:return nt(_r.typeArguments)||nt(_r.arguments);case 262:return nt(_r.declarations);case 276:case 280:return nt(_r.elements);case 207:case 208:return nt(_r.elements)}function nt(Dt){return Dt&&c1e(Ue(_r,Dt,Gt),Ke,Pt)?Dt:void 0}}function Ue(Ke,Pt,_r){let Gt=Ke.getChildren(_r);for(let nt=1;nt=0&&Pt=0;tr--){if(Ke[tr].kind===28)continue;if(_r.getLineAndCharacterOfPosition(Ke[tr].end).line!==Dt.line)return ot(Dt,_r,Gt);Dt=ge(Ke[tr],_r)}return-1}function ot(Ke,Pt,_r){let Gt=Pt.getPositionOfLineAndCharacter(Ke.line,0);return mt(Gt,Gt+Ke.character,Pt,_r)}function Qe(Ke,Pt,_r,Gt){let nt=0,Dt=0;for(let tr=Ke;trmWs});function mWs(s,c,g){let d=!1;return c.forEach(h=>{let _=ji(Jc(s,h.pos),S=>cy(S,h));_&&Lu(_,function S(R){var T;if(!d){if(Ir(R)&&Mie(h,R.getStart(s))){let W=g.resolveName(R.text,R,-1,!1);if(W&&W.declarations){for(let V of W.declarations)if(Pnt(V)||R.text&&s.symbol&&((T=s.symbol.exports)!=null&&T.has(R.escapedText))){d=!0;return}}}R.forEachChild(S)}})}),d}var lst={};o(lst,{pasteEditsProvider:()=>_Ws});var CWs="providePostPasteEdits";function _Ws(s,c,g,d,h,_,S,R){return{edits:xo.ChangeTracker.with({host:h,formatContext:S,preferences:_},W=>yWs(s,c,g,d,h,_,S,R,W)),fixId:CWs}}function yWs(s,c,g,d,h,_,S,R,T){let W;c.length!==g.length&&(W=c.length===1?c[0]:c.join(OF(S.host,S.options)));let V=[],M=s.text;for(let re=g.length-1;re>=0;re--){let{pos:ge,end:Ie}=g[re];M=W?M.slice(0,ge)+W+M.slice(Ie):M.slice(0,ge)+c[re]+M.slice(Ie)}let ee;pe.checkDefined(h.runWithTemporaryFileUpdate).call(h,s.fileName,M,(re,ge,Ie)=>{if(ee=x0.createImportAdder(Ie,re,_,h),d?.range){pe.assert(d.range.length===c.length),d.range.forEach(Ze=>{let We=d.file.statements,Ue=Se(We,Ye=>Ye.end>Ze.pos);if(Ue===-1)return;let $e=Se(We,Ye=>Ye.end>=Ze.end,Ue);$e!==-1&&Ze.end<=We[$e].getStart()&&$e--,V.push(...We.slice(Ue,$e===-1?We.length:$e+1))}),pe.assertIsDefined(ge,"no original program found");let _e=ge.getTypeChecker(),Ee=bWs(d),Ne=yPe(d.file,V,_e,DHt(Ie,V,_e),Ee),Te=!gnt(s.fileName,ge,h,!!d.file.commonJsModuleIndicator);EHt(d.file,Ne.targetFileImportsFromOldFile,T,Te),xHt(d.file,Ne.oldImportsNeededByTargetFile,Ne.targetFileImportsFromOldFile,_e,re,ee)}else{let _e={sourceFile:Ie,program:ge,cancellationToken:R,host:h,preferences:_,formatContext:S},Ee=0;g.forEach((Ne,Te)=>{let Ze=Ne.end-Ne.pos,We=W??c[Te],Ue=Ne.pos+Ee,$e=Ue+We.length,Ye={pos:Ue,end:$e};Ee+=We.length-Ze;let Tt=ji(Jc(_e.sourceFile,Ye.pos),ot=>cy(ot,Ye));Tt&&Lu(Tt,function ot(Qe){if(Ir(Qe)&&Mie(Ye,Qe.getStart(Ie))&&!re?.getTypeChecker().resolveName(Qe.text,Qe,-1,!1))return ee.addImportForUnresolvedIdentifier(_e,Qe,!0);Qe.forEachChild(ot)})})}ee.writeFixes(T,_1(d?d.file:s,_))}),ee.hasFixes()&&g.forEach((re,ge)=>{T.replaceRangeWithText(s,{pos:re.pos,end:re.end},W??c[ge])})}function bWs({file:s,range:c}){let g=c[0].pos,d=c[c.length-1].end,h=Jc(s,g),_=Hde(s,g)??Jc(s,d);return{pos:Ir(h)&&g<=h.getStart(s)?h.getFullStart():g,end:Ir(_)&&d===_.getEnd()?xo.getAdjustedEndPosition(s,_,{}):d}}var Epn={};o(Epn,{ANONYMOUS:()=>tnt,AccessFlags:()=>Ty,AssertionLevel:()=>El,AssignmentDeclarationKind:()=>Ry,AssignmentKind:()=>hZe,Associativity:()=>SZe,BreakpointResolver:()=>$nt,BuilderFileEmit:()=>N3t,BuilderProgramKind:()=>V3t,BuilderState:()=>nR,CallHierarchy:()=>Mz,CharacterCodes:()=>J2,CheckFlags:()=>sB,CheckMode:()=>Eet,ClassificationType:()=>Art,ClassificationTypeNames:()=>W5t,CommentDirectiveType:()=>JS,Comparison:()=>b,CompletionInfoFlags:()=>x5t,CompletionTriggerKind:()=>urt,Completions:()=>Jz,ContainerFlags:()=>uOt,ContextFlags:()=>Ts,Debug:()=>pe,DiagnosticCategory:()=>KS,Diagnostics:()=>Z,DocumentHighlights:()=>IPe,ElementFlags:()=>tf,EmitFlags:()=>cB,EmitHint:()=>ty,EmitOnly:()=>Q2,EndOfLineState:()=>Z5t,ExitStatus:()=>ut,ExportKind:()=>NMt,Extension:()=>ey,ExternalEmitHelpers:()=>JR,FileIncludeKind:()=>$0,FilePreprocessingDiagnosticsKind:()=>fw,FileSystemEntryKind:()=>r1,FileWatcherEventKind:()=>yb,FindAllReferences:()=>Kp,FlattenLevel:()=>kOt,FlowFlags:()=>Yp,ForegroundColorEscapeSequences:()=>_3t,FunctionFlags:()=>bZe,GeneratedIdentifierFlags:()=>od,GetLiteralTextFlags:()=>A7,GoToDefinition:()=>nse,HighlightSpanKind:()=>D5t,IdentifierNameMap:()=>kie,ImportKind:()=>RMt,ImportsNotUsedAsValues:()=>zS,IndentStyle:()=>k5t,IndexFlags:()=>US,IndexKind:()=>Qm,InferenceFlags:()=>R_,InferencePriority:()=>mb,InlayHintKind:()=>N5t,InlayHints:()=>Yit,InternalEmitFlags:()=>RD,InternalNodeBuilderFlags:()=>vg,InternalSymbolName:()=>RT,IntersectionFlags:()=>Gn,InvalidatedProjectKind:()=>a5t,JSDocParsingMode:()=>t1,JsDoc:()=>n5,JsTyping:()=>YP,JsxEmit:()=>XR,JsxFlags:()=>Ym,JsxReferenceKind:()=>$I,LanguageFeatureMinimumTarget:()=>Rd,LanguageServiceMode:()=>T5t,LanguageVariant:()=>pn,LexicalEnvironmentFlags:()=>$1,ListFormat:()=>$E,LogLevel:()=>fb,MapCode:()=>Qit,MemberOverrideStatus:()=>ar,ModifierFlags:()=>JE,ModuleDetectionKind:()=>zE,ModuleInstanceState:()=>cOt,ModuleKind:()=>jS,ModuleResolutionKind:()=>z_,ModuleSpecifierEnding:()=>dLe,NavigateTo:()=>eHt,NavigationBar:()=>rHt,NewLineKind:()=>qE,NodeBuilderFlags:()=>Qo,NodeCheckFlags:()=>wy,NodeFactoryFlags:()=>Jbe,NodeFlags:()=>AC,NodeResolutionFeatures:()=>jWt,ObjectFlags:()=>j_,OperationCanceledException:()=>By,OperatorPrecedence:()=>vZe,OrganizeImports:()=>i5,OrganizeImportsMode:()=>lrt,OuterExpressionKinds:()=>cF,OutliningElementsCollector:()=>Jit,OutliningSpanKind:()=>G5t,OutputFileType:()=>F5t,PackageJsonAutoImportPreference:()=>w5t,PackageJsonDependencyGroup:()=>B5t,PatternMatchKind:()=>_nt,PollingInterval:()=>r_,PollingWatchKind:()=>aB,PragmaKindFlags:()=>N_,PredicateSemantics:()=>K_,PreparePasteEdits:()=>cst,PrivateIdentifierKind:()=>HLe,ProcessLevel:()=>ZOt,ProgramUpdateLevel:()=>f3t,QuotePreference:()=>cMt,RegularExpressionFlags:()=>UE,RelationComparisonResult:()=>vy,Rename:()=>$Pe,ScriptElementKind:()=>V5t,ScriptElementKindModifier:()=>P5t,ScriptKind:()=>X2,ScriptSnapshot:()=>TVe,ScriptTarget:()=>kT,SemanticClassificationFormat:()=>R5t,SemanticMeaning:()=>O5t,SemicolonPreference:()=>grt,SignatureCheckMode:()=>vet,SignatureFlags:()=>$A,SignatureHelp:()=>X1e,SignatureInfo:()=>R3t,SignatureKind:()=>BA,SmartSelectionRange:()=>jit,SnippetKind:()=>Iw,StatisticType:()=>I5t,StructureIsReused:()=>xc,SymbolAccessibility:()=>uI,SymbolDisplay:()=>i9,SymbolDisplayPartKind:()=>NVe,SymbolFlags:()=>TT,SymbolFormatFlags:()=>Rf,SyntaxKind:()=>Ld,Ternary:()=>Cb,ThrottledCancellationToken:()=>uYt,TokenClass:()=>L5t,TokenFlags:()=>KE,TransformFlags:()=>up,TypeFacts:()=>bet,TypeFlags:()=>jE,TypeFormatFlags:()=>Ng,TypeMapKind:()=>zf,TypePredicateKind:()=>Th,TypeReferenceSerializationKind:()=>oE,UnionReduction:()=>Jr,UpToDateStatusType:()=>e5t,VarianceFlags:()=>NT,Version:()=>O,VersionRange:()=>gt,WatchDirectoryFlags:()=>q1,WatchDirectoryKind:()=>DT,WatchFileKind:()=>oB,WatchLogLevel:()=>h3t,WatchType:()=>jm,accessPrivateIdentifier:()=>DOt,addEmitFlags:()=>Gw,addEmitHelper:()=>$Y,addEmitHelpers:()=>hN,addInternalEmitFlags:()=>N3,addNodeFactoryPatcher:()=>qqe,addObjectAllocatorPatcher:()=>Zqe,addRange:()=>Or,addRelatedInfo:()=>lg,addSyntheticLeadingComment:()=>JT,addSyntheticTrailingComment:()=>Iz,addToSeen:()=>Zy,advancedAsyncSuperHelper:()=>DF,affectsDeclarationPathOptionDeclarations:()=>yWt,affectsEmitOptionDeclarations:()=>_Wt,allKeysStartWithDot:()=>x9e,altDirectorySeparator:()=>Eb,and:()=>dh,append:()=>Ft,appendIfUnique:()=>ps,arrayFrom:()=>Do,arrayIsEqualTo:()=>Sc,arrayIsHomogeneous:()=>yLe,arrayOf:()=>Ri,arrayReverseIterator:()=>Qa,arrayToMap:()=>Ru,arrayToMultiMap:()=>Ju,arrayToNumericMap:()=>Vs,assertType:()=>nE,assign:()=>Wt,asyncSuperHelper:()=>lie,attachFileToDiagnostics:()=>XL,base64decode:()=>YZe,base64encode:()=>ibe,binarySearch:()=>Wc,binarySearchKey:()=>Sg,bindSourceFile:()=>gOt,breakIntoCharacterSpans:()=>XMt,breakIntoWordSpans:()=>JMt,buildLinkParts:()=>IMt,buildOpts:()=>CEe,buildOverload:()=>Bpn,bundlerModuleNameResolver:()=>zWt,canBeConvertedToAsync:()=>Bnt,canHaveDecorators:()=>oQ,canHaveExportModifier:()=>Kne,canHaveFlowNode:()=>UJ,canHaveIllegalDecorators:()=>D$e,canHaveIllegalModifiers:()=>tWt,canHaveIllegalType:()=>l$r,canHaveIllegalTypeParameters:()=>eWt,canHaveJSDoc:()=>Ane,canHaveLocals:()=>WI,canHaveModifiers:()=>LB,canHaveModuleSpecifier:()=>dZe,canHaveSymbol:()=>mE,canIncludeBindAndCheckDiagnostics:()=>gU,canJsonReportNoInputFiles:()=>vEe,canProduceDiagnostics:()=>ZEe,canUsePropertyAccess:()=>Fbe,canWatchAffectingLocation:()=>X3t,canWatchAtTypes:()=>Q3t,canWatchDirectoryOrFile:()=>Btt,canWatchDirectoryOrFilePath:()=>zEe,cartesianProduct:()=>XE,cast:()=>Ma,chainBundle:()=>rR,chainDiagnosticMessages:()=>wu,changeAnyExtension:()=>K2,changeCompilerHostLikeToUseCache:()=>Gde,changeExtension:()=>fN,changeFullExtension:()=>i_,changesAffectModuleResolution:()=>NJ,changesAffectingProgramStructure:()=>fge,characterCodeToRegularExpressionFlag:()=>Wg,childIsDecorated:()=>HJ,classElementOrClassElementParameterIsDecorated:()=>hye,classHasClassThisAssignment:()=>Wet,classHasDeclaredOrExplicitlyAssignedName:()=>Oet,classHasExplicitlyAssignedName:()=>X9e,classOrConstructorParameterIsDecorated:()=>Rx,classicNameResolver:()=>oOt,classifier:()=>pYt,cleanExtendedConfigCache:()=>q9e,clear:()=>St,clearMap:()=>Fy,clearSharedExtendedConfigFileWatcher:()=>ttt,climbPastPropertyAccess:()=>xVe,clone:()=>Eg,cloneCompilerOptions:()=>Drt,closeFileWatcher:()=>dv,closeFileWatcherOf:()=>Cv,codefix:()=>x0,collapseTextChangeRangesAcrossMultipleVersions:()=>z,collectExternalModuleInfo:()=>Zet,combine:()=>zr,combinePaths:()=>Ro,commandLineOptionOfCustomType:()=>SWt,commentPragmas:()=>e1,commonOptionsWithBuild:()=>d9e,compact:()=>Hr,compareBooleans:()=>Ml,compareDataObjects:()=>_Ae,compareDiagnostics:()=>X7,compareEmitHelpers:()=>QLe,compareNumberOfDirectorySeparators:()=>Qne,comparePaths:()=>qf,comparePathsCaseInsensitive:()=>pB,comparePathsCaseSensitive:()=>Cx,comparePatternKeys:()=>fet,compareProperties:()=>Ea,compareStringsCaseInsensitive:()=>Fs,compareStringsCaseInsensitiveEslintCompatible:()=>Wa,compareStringsCaseSensitive:()=>Ca,compareStringsCaseSensitiveUI:()=>so,compareTextSpans:()=>yn,compareValues:()=>Zt,compilerOptionsAffectDeclarationPath:()=>oLe,compilerOptionsAffectEmit:()=>sLe,compilerOptionsAffectSemanticDiagnostics:()=>mbe,compilerOptionsDidYouMeanDiagnostics:()=>h9e,compilerOptionsIndicateEsModules:()=>Lrt,computeCommonSourceDirectoryOfFilenames:()=>m3t,computeLineAndCharacterOfPosition:()=>Ci,computeLineOfPosition:()=>Po,computeLineStarts:()=>cA,computePositionOfLineAndCharacter:()=>xn,computeSignatureWithDiagnostics:()=>_tt,computeSuggestionDiagnostics:()=>Ent,computedOptions:()=>J7,concatenate:()=>Nn,concatenateDiagnosticMessageChains:()=>Fne,consumesNodeCoreModules:()=>aPe,contains:()=>k,containsIgnoredPath:()=>sz,containsObjectRestOrSpread:()=>fEe,containsParseError:()=>pP,containsPath:()=>Jh,convertCompilerOptionsForTelemetry:()=>PWt,convertCompilerOptionsFromJson:()=>men,convertJsonOption:()=>vU,convertToBase64:()=>nbe,convertToJson:()=>bEe,convertToObject:()=>xWt,convertToOptionsWithAbsolutePaths:()=>y9e,convertToRelativePath:()=>r2,convertToTSConfig:()=>z$e,convertTypeAcquisitionFromJson:()=>Cen,copyComments:()=>xU,copyEntries:()=>a7,copyLeadingComments:()=>Uie,copyProperties:()=>GA,copyTrailingAsLeadingComments:()=>m1e,copyTrailingComments:()=>jde,couldStartTrivia:()=>tv,countWhere:()=>ct,createAbstractBuilder:()=>wrn,createAccessorPropertyBackingField:()=>G$e,createAccessorPropertyGetRedirector:()=>lWt,createAccessorPropertySetRedirector:()=>uWt,createBaseNodeFactory:()=>xLe,createBinaryExpressionTrampoline:()=>c9e,createBuilderProgram:()=>ytt,createBuilderProgramUsingIncrementalBuildInfo:()=>M3t,createBuilderStatusReporter:()=>_Ve,createCacheableExportInfoMap:()=>Ant,createCachedDirectoryStructureHost:()=>j9e,createClassifier:()=>nin,createCommentDirectivesMap:()=>bge,createCompilerDiagnostic:()=>Nf,createCompilerDiagnosticForInvalidCustomType:()=>vWt,createCompilerDiagnosticFromMessageChain:()=>SAe,createCompilerHost:()=>C3t,createCompilerHostFromProgramHost:()=>Ott,createCompilerHostWorker:()=>$9e,createDetachedDiagnostic:()=>QY,createDiagnosticCollection:()=>EF,createDiagnosticForFileFromMessageChain:()=>Ut,createDiagnosticForNode:()=>mo,createDiagnosticForNodeArray:()=>A3,createDiagnosticForNodeArrayFromMessageChain:()=>ie,createDiagnosticForNodeFromMessageChain:()=>Bw,createDiagnosticForNodeInSourceFile:()=>_E,createDiagnosticForRange:()=>kn,createDiagnosticMessageChainFromDiagnostic:()=>Qr,createDiagnosticReporter:()=>Gz,createDocumentPositionMapper:()=>BOt,createDocumentRegistry:()=>FMt,createDocumentRegistryInternal:()=>hnt,createEmitAndSemanticDiagnosticsBuilderProgram:()=>vtt,createEmitHelperFactory:()=>YLe,createEmptyExports:()=>aEe,createEvaluator:()=>NLe,createExpressionForJsxElement:()=>UPt,createExpressionForJsxFragment:()=>KPt,createExpressionForObjectLiteralElementLike:()=>jPt,createExpressionForPropertyName:()=>v$e,createExpressionFromEntityName:()=>cEe,createExternalHelpersImportDeclarationIfNeeded:()=>T$e,createFileDiagnostic:()=>qh,createFileDiagnosticFromMessageChain:()=>ze,createFlowNode:()=>rk,createForOfBindingStatement:()=>S$e,createFutureSourceFile:()=>dPe,createGetCanonicalFileName:()=>_d,createGetIsolatedDeclarationErrors:()=>s3t,createGetSourceFile:()=>ott,createGetSymbolAccessibilityDiagnosticForNode:()=>J3,createGetSymbolAccessibilityDiagnosticForNodeName:()=>i3t,createGetSymbolWalker:()=>AOt,createIncrementalCompilerHost:()=>CVe,createIncrementalProgram:()=>$3t,createJsxFactoryExpression:()=>E$e,createLanguageService:()=>gYt,createLanguageServiceSourceFile:()=>kPe,createMemberAccessForPropertyName:()=>EU,createModeAwareCache:()=>wie,createModeAwareCacheKey:()=>Cde,createModeMismatchDetails:()=>l7,createModuleNotFoundChain:()=>kJ,createModuleResolutionCache:()=>Tie,createModuleResolutionLoader:()=>Att,createModuleResolutionLoaderUsingGlobalCache:()=>j3t,createModuleSpecifierResolutionHost:()=>z3,createMultiMap:()=>dl,createNameResolver:()=>JAe,createNodeConverters:()=>GLe,createNodeFactory:()=>nie,createOptionNameMap:()=>f9e,createOverload:()=>ust,createPackageJsonImportFilter:()=>jie,createPackageJsonInfo:()=>int,createParenthesizerRules:()=>pv,createPatternMatcher:()=>WMt,createPrinter:()=>MP,createPrinterWithDefaults:()=>d3t,createPrinterWithRemoveComments:()=>gQ,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>p3t,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>ett,createProgram:()=>UEe,createProgramDiagnostics:()=>w3t,createProgramHost:()=>Mtt,createPropertyNameNodeForIdentifierOrLiteral:()=>Une,createQueue:()=>oA,createRange:()=>Gy,createRedirectedBuilderProgram:()=>Stt,createResolutionCache:()=>Ttt,createRuntimeTypeSerializer:()=>OOt,createScanner:()=>wb,createSemanticDiagnosticsBuilderProgram:()=>Brn,createSet:()=>oo,createSolutionBuilder:()=>i5t,createSolutionBuilderHost:()=>r5t,createSolutionBuilderWithWatch:()=>s5t,createSolutionBuilderWithWatchHost:()=>n5t,createSortedArray:()=>Ya,createSourceFile:()=>vz,createSourceMapGenerator:()=>yOt,createSourceMapSource:()=>t$e,createSuperAccessVariableStatement:()=>U9e,createSymbolTable:()=>qu,createSymlinkCache:()=>_be,createSyntacticTypeNodeBuilder:()=>E5t,createSystemWatchFunctions:()=>ia,createTextChange:()=>g1e,createTextChangeFromStartLength:()=>XVe,createTextChangeRange:()=>$2,createTextRangeFromNode:()=>Grt,createTextRangeFromSpan:()=>QVe,createTextSpan:()=>zd,createTextSpanFromBounds:()=>wA,createTextSpanFromNode:()=>Oy,createTextSpanFromRange:()=>t9,createTextSpanFromStringLiteralLikeContent:()=>xrt,createTextWriter:()=>Bne,createTokenRange:()=>QL,createTypeChecker:()=>COt,createTypeReferenceDirectiveResolutionCache:()=>D9e,createTypeReferenceResolutionLoader:()=>rVe,createWatchCompilerHost:()=>Lrn,createWatchCompilerHostOfConfigFile:()=>Htt,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Ytt,createWatchFactory:()=>Wtt,createWatchHost:()=>Ptt,createWatchProgram:()=>Qtt,createWatchStatusReporter:()=>Rtt,createWriteFileMeasuringIO:()=>att,declarationNameToString:()=>Wd,decodeMappings:()=>xet,decodedTextSpanIntersectsWith:()=>IE,deduplicate:()=>io,defaultHoverMaximumTruncationLength:()=>Age,defaultInitCompilerOptions:()=>V$r,defaultMaximumTruncationLength:()=>EY,diagnosticCategoryName:()=>_b,diagnosticToString:()=>IQ,diagnosticsEqualityComparer:()=>vAe,directoryProbablyExists:()=>f1,directorySeparator:()=>ag,displayPart:()=>SE,displayPartsToString:()=>D1e,disposeEmitNodes:()=>Ku,documentSpansEqual:()=>Yrt,dumpTracingLegend:()=>jf,elementAt:()=>Cg,elideNodes:()=>cWt,emitDetachedComments:()=>xZe,emitFiles:()=>qet,emitFilesAndReportErrors:()=>fVe,emitFilesAndReportErrorsAndGetExitStatus:()=>Vtt,emitModuleKindIsNonNodeESM:()=>Wne,emitNewLineBeforeLeadingCommentOfPosition:()=>Uye,emitResolverSkipsTypeChecking:()=>zet,emitSkippedWithNoDiagnostics:()=>ftt,emptyArray:()=>E,emptyFileSystemEntries:()=>wbe,emptyMap:()=>N,emptyOptions:()=>VB,endsWith:()=>di,ensurePathIsNonModuleName:()=>Am,ensureScriptKind:()=>xAe,ensureTrailingDirectorySeparator:()=>hp,entityNameToString:()=>oy,enumerateInsertsAndDeletes:()=>q0,equalOwnProperties:()=>Hu,equateStringsCaseInsensitive:()=>Mp,equateStringsCaseSensitive:()=>MA,equateValues:()=>yg,escapeJsxAttributeString:()=>Wye,escapeLeadingUnderscores:()=>Ap,escapeNonAsciiString:()=>Ene,escapeSnippetText:()=>xP,escapeString:()=>YT,escapeTemplateSubstitution:()=>Vye,evaluatorResult:()=>$h,every:()=>ue,exclusivelyPrefixedNodeCoreModules:()=>jAe,executeCommandLine:()=>Inn,expandPreOrPostfixIncrementOrDecrementExpression:()=>n9e,explainFiles:()=>xtt,explainIfFileIsRedirectAndImpliedFormat:()=>Gtt,exportAssignmentIsAlias:()=>Ine,expressionResultIsUnused:()=>ELe,extend:()=>OA,extensionFromPath:()=>tz,extensionIsTS:()=>PAe,extensionsNotSupportingExtensionlessResolution:()=>VAe,externalHelpersModuleNameText:()=>PD,factory:()=>me,fileExtensionIs:()=>aA,fileExtensionIsOneOf:()=>fu,fileIncludeReasonToDiagnostics:()=>Ltt,fileShouldUseJavaScriptRequire:()=>gnt,filter:()=>Me,filterMutate:()=>je,filterSemanticDiagnostics:()=>oVe,find:()=>de,findAncestor:()=>ji,findBestPatternMatch:()=>YA,findChildOfKind:()=>qd,findComputedPropertyNameCacheAssignment:()=>l9e,findConfigFile:()=>itt,findConstructorDeclaration:()=>zY,findContainingList:()=>VVe,findDiagnosticForNode:()=>BMt,findFirstNonJsxWhitespaceToken:()=>K5t,findIndex:()=>Se,findLast:()=>be,findLastIndex:()=>De,findListItemInfo:()=>U5t,findModifier:()=>Qie,findNextToken:()=>fQ,findPackageJson:()=>vMt,findPackageJsons:()=>nnt,findPrecedingMatchingToken:()=>HVe,findPrecedingToken:()=>Gm,findSuperStatementIndexPath:()=>M9e,findTokenOnLeftOfPosition:()=>Hde,findUseStrictPrologue:()=>w$e,first:()=>ma,firstDefined:()=>X,firstDefinedIterator:()=>ae,firstIterator:()=>vu,firstOrOnly:()=>ant,firstOrUndefined:()=>Nc,firstOrUndefinedIterator:()=>iA,fixupCompilerOptions:()=>wnt,flatMap:()=>er,flatMapIterator:()=>xt,flatMapToMutable:()=>vt,flatten:()=>Nr,flattenCommaList:()=>gWt,flattenDestructuringAssignment:()=>TU,flattenDestructuringBinding:()=>uQ,flattenDiagnosticMessageText:()=>wN,forEach:()=>F,forEachAncestor:()=>Ew,forEachAncestorDirectory:()=>pE,forEachAncestorDirectoryStoppingAtGlobalCache:()=>vN,forEachChild:()=>Lu,forEachChildRecursively:()=>Sz,forEachDynamicImportOrRequireCall:()=>$ne,forEachEmittedFile:()=>Jet,forEachEnclosingBlockScopeContainer:()=>Dge,forEachEntry:()=>Dh,forEachExternalModuleToImportFrom:()=>pnt,forEachImportClauseDeclaration:()=>pZe,forEachKey:()=>SB,forEachLeadingCommentRange:()=>GD,forEachNameInAccessChainWalkingLeft:()=>jZe,forEachNameOfDefaultExport:()=>fPe,forEachOptionsSyntaxByName:()=>zAe,forEachProjectReference:()=>gz,forEachPropertyAssignment:()=>WJ,forEachResolvedProjectReference:()=>tie,forEachReturnStatement:()=>yF,forEachRight:()=>Q,forEachTrailingCommentRange:()=>dF,forEachTsConfigPropArray:()=>zre,forEachUnique:()=>Xrt,forEachYieldExpression:()=>$Fe,formatColorAndReset:()=>AQ,formatDiagnostic:()=>ctt,formatDiagnostics:()=>ern,formatDiagnosticsWithColorAndContext:()=>E3t,formatGeneratedName:()=>M3,formatGeneratedNamePart:()=>Eie,formatLocation:()=>ltt,formatMessage:()=>XY,formatStringFromArgs:()=>dN,formatting:()=>Im,generateDjb2Hash:()=>ry,generateTSConfig:()=>GWt,getAdjustedReferenceLocation:()=>vrt,getAdjustedRenameLocation:()=>WVe,getAliasDeclarationFromName:()=>Rye,getAllAccessorDeclarations:()=>BP,getAllDecoratorsOfClass:()=>Vet,getAllDecoratorsOfClassElement:()=>Y9e,getAllJSDocTags:()=>dJ,getAllJSDocTagsOfKind:()=>rye,getAllKeys:()=>mI,getAllProjectOutputs:()=>K9e,getAllSuperTypeNodes:()=>R7,getAllowImportingTsExtensions:()=>eLe,getAllowJSCompilerOption:()=>TF,getAllowSyntheticDefaultImports:()=>JY,getAncestor:()=>ML,getAnyExtensionFromPath:()=>gE,getAreDeclarationMapsEnabled:()=>BAe,getAssignedExpandoInitializer:()=>FY,getAssignedName:()=>CB,getAssignmentDeclarationKind:()=>nI,getAssignmentDeclarationPropertyAccessKind:()=>XJ,getAssignmentTargetKind:()=>QD,getAutomaticTypeDirectiveNames:()=>R9e,getBaseFileName:()=>gp,getBinaryOperatorPrecedence:()=>bne,getBuildInfo:()=>$et,getBuildInfoFileVersionMap:()=>Ett,getBuildInfoText:()=>g3t,getBuildOrderFromAnyBuildOrder:()=>$Ee,getBuilderCreationParameters:()=>uVe,getBuilderFileEmit:()=>HP,getCanonicalDiagnostic:()=>Fi,getCheckFlags:()=>iI,getClassExtendsHeritageElement:()=>OL,getClassLikeDeclarationOfSymbol:()=>AN,getCombinedLocalAndExportSymbolFlags:()=>sU,getCombinedModifierFlags:()=>Hc,getCombinedNodeFlags:()=>dm,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>ad,getCommentRange:()=>DB,getCommonSourceDirectory:()=>xde,getCommonSourceDirectoryOfConfig:()=>RU,getCompilerOptionValue:()=>K7,getConditions:()=>PP,getConfigFileParsingDiagnostics:()=>dQ,getConstantValue:()=>ZLe,getContainerFlags:()=>het,getContainerNode:()=>kU,getContainingClass:()=>hC,getContainingClassExcludingClassDecorators:()=>Oge,getContainingClassStaticBlock:()=>iZe,getContainingFunction:()=>A1,getContainingFunctionDeclaration:()=>Wge,getContainingFunctionOrClassStaticBlock:()=>qre,getContainingNodeArray:()=>SLe,getContainingObjectLiteralElement:()=>k1e,getContextualTypeFromParent:()=>tPe,getContextualTypeFromParentOrAncestorTypeNode:()=>PVe,getDeclarationDiagnostics:()=>o3t,getDeclarationEmitExtensionForPath:()=>sAe,getDeclarationEmitOutputFilePath:()=>RZe,getDeclarationEmitOutputFilePathWorker:()=>wne,getDeclarationFileExtension:()=>g9e,getDeclarationFromName:()=>T7,getDeclarationModifierFlagsFromSymbol:()=>u2,getDeclarationOfKind:()=>Cp,getDeclarationsOfKind:()=>dge,getDeclaredExpandoInitializer:()=>E7,getDecorators:()=>Rb,getDefaultCompilerOptions:()=>DPe,getDefaultFormatCodeSettings:()=>RVe,getDefaultLibFileName:()=>Hs,getDefaultLibFilePath:()=>AYt,getDefaultLikeExportInfo:()=>pPe,getDefaultLikeExportNameFromDeclaration:()=>cnt,getDefaultResolutionModeForFileWorker:()=>sVe,getDiagnosticText:()=>Zb,getDiagnosticsWithinSpan:()=>wMt,getDirectoryPath:()=>Mo,getDirectoryToWatchFailedLookupLocation:()=>wtt,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>U3t,getDocumentPositionMapper:()=>bnt,getDocumentSpansEqualityComparer:()=>Qrt,getESModuleInterop:()=>kw,getEditsForFileRename:()=>LMt,getEffectiveBaseTypeNode:()=>BB,getEffectiveConstraintOfTypeParameter:()=>n3,getEffectiveContainerForJSDocTemplateTag:()=>zge,getEffectiveImplementsTypeNodes:()=>jJ,getEffectiveInitializer:()=>one,getEffectiveJSDocHost:()=>WL,getEffectiveModifierFlags:()=>o_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>VZe,getEffectiveModifierFlagsNoCache:()=>zye,getEffectiveReturnTypeNode:()=>xb,getEffectiveSetAccessorTypeAnnotationNode:()=>Jye,getEffectiveTypeAnnotationNode:()=>kh,getEffectiveTypeParameterDeclarations:()=>ZD,getEffectiveTypeRoots:()=>mde,getElementOrPropertyAccessArgumentExpressionOrName:()=>jge,getElementOrPropertyAccessName:()=>YD,getElementsOfBindingOrAssignmentPattern:()=>bie,getEmitDeclarations:()=>Ly,getEmitFlags:()=>tA,getEmitHelpers:()=>jbe,getEmitModuleDetectionKind:()=>tLe,getEmitModuleFormatOfFileWorker:()=>Lde,getEmitModuleKind:()=>i0,getEmitModuleResolutionKind:()=>k_,getEmitScriptTarget:()=>Mg,getEmitStandardClassFields:()=>hbe,getEnclosingBlockScopeContainer:()=>tS,getEnclosingContainer:()=>f7,getEncodedSemanticClassifications:()=>fnt,getEncodedSyntacticClassifications:()=>Int,getEndLinePosition:()=>vY,getEntityNameFromTypeNode:()=>ene,getEntrypointsFromPackageJsonInfo:()=>Aet,getErrorCountForSummary:()=>dVe,getErrorSpanForNode:()=>qa,getErrorSummaryText:()=>Dtt,getEscapedTextOfIdentifierOrLiteral:()=>qJ,getEscapedTextOfJsxAttributeName:()=>cz,getEscapedTextOfJsxNamespacedName:()=>oS,getExpandoInitializer:()=>VL,getExportAssignmentExpression:()=>hne,getExportInfoMap:()=>S1e,getExportNeedsImportStarHelper:()=>wOt,getExpressionAssociativity:()=>Zye,getExpressionPrecedence:()=>x7,getExternalHelpersModuleName:()=>uEe,getExternalModuleImportEqualsDeclarationExpression:()=>_7,getExternalModuleName:()=>LY,getExternalModuleNameFromDeclaration:()=>wZe,getExternalModuleNameFromPath:()=>Mye,getExternalModuleNameLiteral:()=>Ez,getExternalModuleRequireArgument:()=>Cye,getFallbackOptions:()=>QEe,getFileEmitOutput:()=>T3t,getFileMatcherPatterns:()=>kAe,getFileNamesFromConfigSpecs:()=>Ide,getFileWatcherEventKind:()=>qS,getFilesInErrorForSummary:()=>pVe,getFirstConstructorWithBody:()=>lN,getFirstIdentifier:()=>B0,getFirstNonSpaceCharacterPosition:()=>CMt,getFirstProjectOutput:()=>jet,getFixableErrorSpanExpression:()=>snt,getFormatCodeSettingsForWriting:()=>gPe,getFullWidth:()=>DJ,getFunctionFlags:()=>SI,getHeritageClause:()=>mne,getHostSignatureFromJSDoc:()=>PL,getIdentifierAutoGenerate:()=>i$e,getIdentifierGeneratedImportReference:()=>MLe,getIdentifierTypeArguments:()=>G3,getImmediatelyInvokedFunctionExpression:()=>ZL,getImpliedNodeFormatForEmitWorker:()=>NU,getImpliedNodeFormatForFile:()=>JEe,getImpliedNodeFormatForFileWorker:()=>iVe,getImportNeedsImportDefaultHelper:()=>Fet,getImportNeedsImportStarHelper:()=>W9e,getIndentString:()=>iAe,getInferredLibraryNameResolveFrom:()=>nVe,getInitializedVariables:()=>iU,getInitializerOfBinaryExpression:()=>bye,getInitializerOfBindingOrAssignmentElement:()=>AEe,getInterfaceBaseTypeNodes:()=>N7,getInternalEmitFlags:()=>g1,getInvokedExpression:()=>Yge,getIsFileExcluded:()=>kMt,getIsolatedModules:()=>sS,getJSDocAugmentsTag:()=>K6,getJSDocClassTag:()=>bx,getJSDocCommentRanges:()=>dye,getJSDocCommentsAndTags:()=>Sye,getJSDocDeprecatedTag:()=>Kh,getJSDocDeprecatedTagNoCache:()=>i2,getJSDocEnumTag:()=>a1,getJSDocHost:()=>bP,getJSDocImplementsTags:()=>uY,getJSDocOverloadTags:()=>Bye,getJSDocOverrideTagNoCache:()=>Pd,getJSDocParameterTags:()=>vL,getJSDocParameterTagsNoCache:()=>uJ,getJSDocPrivateTag:()=>Es,getJSDocPrivateTagNoCache:()=>Aa,getJSDocProtectedTag:()=>ha,getJSDocProtectedTagNoCache:()=>Ua,getJSDocPublicTag:()=>_re,getJSDocPublicTagNoCache:()=>Ex,getJSDocReadonlyTag:()=>wc,getJSDocReadonlyTagNoCache:()=>hA,getJSDocReturnTag:()=>sv,getJSDocReturnType:()=>AJ,getJSDocRoot:()=>KJ,getJSDocSatisfiesExpressionType:()=>Lbe,getJSDocSatisfiesTag:()=>fF,getJSDocTags:()=>Sx,getJSDocTemplateTag:()=>oP,getJSDocThisTag:()=>Nb,getJSDocType:()=>eN,getJSDocTypeAliasName:()=>N$e,getJSDocTypeAssertionType:()=>_ie,getJSDocTypeParameterDeclarations:()=>uAe,getJSDocTypeParameterTags:()=>r3,getJSDocTypeParameterTagsNoCache:()=>U6,getJSDocTypeTag:()=>ov,getJSXImplicitImportBase:()=>One,getJSXRuntimeImport:()=>Mne,getJSXTransformEnabled:()=>RAe,getKeyForCompilerOptions:()=>oet,getLanguageVariant:()=>Zne,getLastChild:()=>ube,getLeadingCommentRanges:()=>fE,getLeadingCommentRangesOfNode:()=>Fge,getLeftmostAccessExpression:()=>oU,getLeftmostExpression:()=>aU,getLibFileNameFromLibReference:()=>Obe,getLibNameFromLibReference:()=>qY,getLibraryNameFromLibFileName:()=>dtt,getLineAndCharacterOfPosition:()=>Ra,getLineInfo:()=>ket,getLineOfLocalPosition:()=>Z7,getLineStartPositionForPosition:()=>PB,getLineStarts:()=>rn,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>obe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>UZe,getLinesBetweenPositions:()=>ec,getLinesBetweenRangeEndAndRangeStart:()=>v3,getLinesBetweenRangeEndPositions:()=>JZe,getLiteralText:()=>Sge,getLocalNameForExternalImport:()=>yie,getLocalSymbolForExportDefault:()=>W7,getLocaleSpecificMessage:()=>Bu,getLocaleTimeString:()=>qEe,getMappedContextSpan:()=>Jrt,getMappedDocumentSpan:()=>qVe,getMappedLocation:()=>Jde,getMatchedFileSpec:()=>Ftt,getMatchedIncludeSpec:()=>Ztt,getMeaningFromDeclaration:()=>DVe,getMeaningFromLocation:()=>DU,getMembersOfDeclaration:()=>Zge,getModeForFileReference:()=>S3t,getModeForResolutionAtIndex:()=>orn,getModeForUsageLocation:()=>gtt,getModifiedTime:()=>bb,getModifiers:()=>$R,getModuleInstanceState:()=>PF,getModuleNameStringLiteralAt:()=>KEe,getModuleSpecifierEndingPreference:()=>pLe,getModuleSpecifierResolverHost:()=>Vrt,getNameForExportedSymbol:()=>cPe,getNameFromImportAttribute:()=>XAe,getNameFromIndexInfo:()=>kge,getNameFromPropertyName:()=>d1e,getNameOfAccessExpression:()=>gbe,getNameOfCompilerOptionValue:()=>_9e,getNameOfDeclaration:()=>Il,getNameOfExpando:()=>_ye,getNameOfJSDocTypedef:()=>pF,getNameOfScriptTarget:()=>TAe,getNameOrArgument:()=>cne,getNameTable:()=>qnt,getNamespaceDeclarationNode:()=>JJ,getNewLineCharacter:()=>uN,getNewLineKind:()=>E1e,getNewLineOrDefaultFromHost:()=>OF,getNewTargetContainer:()=>oZe,getNextJSDocCommentLocation:()=>vye,getNodeChildren:()=>y$e,getNodeForGeneratedName:()=>pEe,getNodeId:()=>rd,getNodeKind:()=>pQ,getNodeModifiers:()=>Yde,getNodeModulePathParts:()=>MAe,getNonAssignedNameOfDeclaration:()=>Cw,getNonAssignmentOperatorForCompoundAssignment:()=>Bde,getNonAugmentationDeclaration:()=>LJ,getNonDecoratorTokenPosOfNode:()=>Mre,getNonIncrementalBuildInfoRoots:()=>H3t,getNonModifierTokenPosOfNode:()=>Ege,getNormalizedAbsolutePath:()=>Xc,getNormalizedAbsolutePathWithoutRoot:()=>KR,getNormalizedPathComponents:()=>AB,getObjectFlags:()=>la,getOperatorAssociativity:()=>Lye,getOperatorPrecedence:()=>yne,getOptionFromName:()=>X$e,getOptionsForLibraryResolution:()=>aet,getOptionsNameMap:()=>vie,getOptionsSyntaxByArrayElementValue:()=>Mbe,getOptionsSyntaxByValue:()=>DLe,getOrCreateEmitNode:()=>c_,getOrUpdate:()=>cr,getOriginalNode:()=>Dd,getOriginalNodeId:()=>Wy,getOutputDeclarationFileName:()=>kde,getOutputDeclarationFileNameWorker:()=>Uet,getOutputExtension:()=>MEe,getOutputFileNames:()=>qtn,getOutputJSFileNameWorker:()=>Ket,getOutputPathsFor:()=>Dde,getOwnEmitOutputFilePath:()=>TZe,getOwnKeys:()=>_g,getOwnValues:()=>Qh,getPackageJsonTypesVersionsPaths:()=>T9e,getPackageNameFromTypesPackageName:()=>bde,getPackageScopeForPath:()=>yde,getParameterSymbolFromJSDoc:()=>dne,getParentNodeInSpan:()=>f1e,getParseTreeNode:()=>$l,getParsedCommandLineOfConfigFile:()=>_Ee,getPathComponents:()=>Np,getPathFromPathComponents:()=>Dm,getPathUpdater:()=>Cnt,getPathsBasePath:()=>oAe,getPatternFromSpec:()=>Ebe,getPendingEmitKindWithSeen:()=>lVe,getPositionOfLineAndCharacter:()=>th,getPossibleGenericSignatures:()=>wrt,getPossibleOriginalInputExtensionForExtension:()=>Hye,getPossibleOriginalInputPathWithoutChangingExt:()=>Yye,getPossibleTypeArgumentsInfo:()=>Trt,getPreEmitDiagnostics:()=>$tn,getPrecedingNonSpaceCharacterPosition:()=>$Ve,getPrivateIdentifier:()=>Pet,getProperties:()=>Let,getProperty:()=>pu,getPropertyAssignmentAliasLikeExpression:()=>yZe,getPropertyNameForPropertyNameNode:()=>_3,getPropertyNameFromType:()=>A2,getPropertyNameOfBindingOrAssignmentElement:()=>R$e,getPropertySymbolFromBindingElement:()=>zVe,getPropertySymbolsFromContextualType:()=>xPe,getQuoteFromPreference:()=>Wrt,getQuotePreference:()=>_1,getRangesWhere:()=>Fn,getRefactorContextSpan:()=>Vz,getReferencedFileLocation:()=>Zde,getRegexFromPattern:()=>zD,getRegularExpressionForWildcard:()=>j7,getRegularExpressionsForWildcards:()=>Hne,getRelativePathFromDirectory:()=>mp,getRelativePathFromFile:()=>i1,getRelativePathToDirectoryOrUrl:()=>Of,getRenameLocation:()=>h1e,getReplacementSpanForContextToken:()=>krt,getResolutionDiagnostic:()=>htt,getResolutionModeOverride:()=>Gie,getResolveJsonModule:()=>NP,getResolvePackageJsonExports:()=>U7,getResolvePackageJsonImports:()=>Vne,getResolvedExternalModuleName:()=>F7,getResolvedModuleFromResolution:()=>xL,getResolvedTypeReferenceDirectiveFromResolution:()=>c7,getRestIndicatorOfBindingOrAssignmentElement:()=>o9e,getRestParameterElementType:()=>pye,getRightMostAssignedExpression:()=>ane,getRootDeclaration:()=>Rw,getRootDirectoryOfResolutionCache:()=>K3t,getRootLength:()=>Wf,getScriptKind:()=>zrt,getScriptKindFromFileName:()=>GAe,getScriptTargetFeatures:()=>Hre,getSelectedEffectiveModifierFlags:()=>MY,getSelectedSyntacticModifierFlags:()=>ZZe,getSemanticClassifications:()=>xMt,getSemanticJsxChildren:()=>$J,getSetAccessorTypeAnnotationNode:()=>DZe,getSetAccessorValueParameter:()=>L7,getSetExternalModuleIndicator:()=>Lne,getShebang:()=>mB,getSingleVariableOfVariableStatement:()=>m3,getSnapshotText:()=>Lz,getSnippetElement:()=>zbe,getSourceFileOfModule:()=>FJ,getSourceFileOfNode:()=>ms,getSourceFilePathInNewDir:()=>cAe,getSourceFileVersionAsHashFromText:()=>IVe,getSourceFilesToEmit:()=>aAe,getSourceMapRange:()=>XT,getSourceMapper:()=>KMt,getSourceTextOfNodeFromSourceFile:()=>mF,getSpanOfTokenAtPosition:()=>rs,getSpellingSuggestion:()=>Dr,getStartPositionOfLine:()=>OD,getStartPositionOfRange:()=>H7,getStartsOnNewLine:()=>D3,getStaticPropertiesAndClassStaticBlock:()=>H9e,getStrictOptionValue:()=>a_,getStringComparer:()=>ld,getSubPatternFromSpec:()=>DAe,getSuperCallFromStatement:()=>O9e,getSuperContainer:()=>C7,getSupportedCodeFixes:()=>jnt,getSupportedExtensions:()=>z7,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>q7,getSwitchedType:()=>ent,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>_ne,getSymbolTarget:()=>qrt,getSyntacticClassifications:()=>GMt,getSyntacticModifierFlags:()=>Nx,getSyntacticModifierFlagsNoCache:()=>qye,getSynthesizedDeepClone:()=>JA,getSynthesizedDeepCloneWithReplacements:()=>rie,getSynthesizedDeepClones:()=>o0,getSynthesizedDeepClonesWithReplacements:()=>qAe,getSyntheticLeadingComments:()=>k3,getSyntheticTrailingComments:()=>hU,getTargetLabel:()=>GVe,getTargetOfBindingOrAssignmentElement:()=>ZP,getTemporaryModuleResolutionState:()=>_de,getTextOfConstantValue:()=>vge,getTextOfIdentifierOrLiteral:()=>c2,getTextOfJSDocComment:()=>pJ,getTextOfJsxAttributeName:()=>xw,getTextOfJsxNamespacedName:()=>lz,getTextOfNode:()=>xp,getTextOfNodeFromSourceText:()=>TY,getTextOfPropertyName:()=>hP,getThisContainer:()=>r0,getThisParameter:()=>vP,getTokenAtPosition:()=>Jc,getTokenPosOfNode:()=>MD,getTokenSourceMapRange:()=>fz,getTouchingPropertyName:()=>Lb,getTouchingToken:()=>Hie,getTrailingCommentRanges:()=>n2,getTrailingSemicolonDeferringWriter:()=>Oye,getTransformers:()=>c3t,getTsBuildInfoEmitOutputFilePath:()=>U3,getTsConfigObjectLiteralExpression:()=>m7,getTsConfigPropArrayElementValue:()=>Pge,getTypeAnnotationNode:()=>kZe,getTypeArgumentOrTypeParameterList:()=>rMt,getTypeKeywordOfTypeOnlyImport:()=>Hrt,getTypeNode:()=>WLe,getTypeNodeIfAccessible:()=>qde,getTypeParameterFromJsDoc:()=>IZe,getTypeParameterOwner:()=>ye,getTypesPackageName:()=>G9e,getUILocale:()=>df,getUniqueName:()=>GU,getUniqueSymbolId:()=>mMt,getUseDefineForClassFields:()=>Pne,getWatchErrorSummaryDiagnosticMessage:()=>Ntt,getWatchFactory:()=>ntt,group:()=>Yn,groupBy:()=>Ko,guessIndentation:()=>xre,handleNoEmitOptions:()=>Itt,handleWatchOptionsConfigDirTemplateSubstitution:()=>b9e,hasAbstractModifier:()=>wP,hasAccessorModifier:()=>Nw,hasAmbientModifier:()=>jye,hasChangesInResolutions:()=>Pre,hasContextSensitiveParameters:()=>OAe,hasDecorators:()=>p1,hasDocComment:()=>eMt,hasDynamicName:()=>XD,hasEffectiveModifier:()=>Gb,hasEffectiveModifiers:()=>Kye,hasEffectiveReadonlyModifier:()=>b3,hasExtension:()=>E0,hasImplementationTSFileExtension:()=>ALe,hasIndexSignature:()=>$rt,hasInferredType:()=>KAe,hasInitializer:()=>WT,hasInvalidEscape:()=>Pye,hasJSDocNodes:()=>Xm,hasJSDocParameterTags:()=>gJ,hasJSFileExtension:()=>pN,hasJsonModuleEmitEnabled:()=>wAe,hasOnlyExpressionInitializer:()=>l1,hasOverrideModifier:()=>Tne,hasPossibleExternalModuleReference:()=>Nge,hasProperty:()=>Da,hasPropertyAccessExpressionWithName:()=>s1e,hasQuestionToken:()=>VY,hasRecordedExternalHelpers:()=>$Pt,hasResolutionModeOverride:()=>TLe,hasRestParameter:()=>Gre,hasScopeMarker:()=>Db,hasStaticModifier:()=>zh,hasSyntacticModifier:()=>Ga,hasSyntacticModifiers:()=>FZe,hasTSFileExtension:()=>w3,hasTabstop:()=>BLe,hasTrailingDirectorySeparator:()=>Jp,hasType:()=>If,hasTypeArguments:()=>bqe,hasZeroOrOneAsteriskCharacter:()=>Cbe,hostGetCanonicalFileName:()=>JD,hostUsesCaseSensitiveFileNames:()=>y3,idText:()=>Vo,identifierIsThisKeyword:()=>Xye,identifierToKeywordKind:()=>iv,identity:()=>Fl,identitySourceMapConsumer:()=>Get,ignoreSourceNewlines:()=>$be,ignoredPaths:()=>Qp,importFromModuleSpecifier:()=>v7,importSyntaxAffectsModuleResolution:()=>Ibe,indexOfAnyCharCode:()=>et,indexOfNode:()=>fP,indicesOf:()=>po,inferredTypesContainingFile:()=>Fde,injectClassNamedEvaluationHelperBlockIfMissing:()=>J9e,injectClassThisAssignmentIfMissing:()=>FOt,insertImports:()=>Mrt,insertSorted:()=>Gc,insertStatementAfterCustomPrologue:()=>FL,insertStatementAfterStandardPrologue:()=>yge,insertStatementsAfterCustomPrologue:()=>Wre,insertStatementsAfterStandardPrologue:()=>Sw,intersperse:()=>fe,intrinsicTagNameToString:()=>Vbe,introducesArgumentsExoticObject:()=>tZe,inverseJsxOptionMap:()=>mEe,isAbstractConstructorSymbol:()=>lbe,isAbstractModifier:()=>Xe,isAccessExpression:()=>_p,isAccessibilityModifier:()=>Nrt,isAccessor:()=>yB,isAccessorModifier:()=>It,isAliasableExpression:()=>$ge,isAmbientModule:()=>s_,isAmbientPropertyDeclaration:()=>VJ,isAnyDirectorySeparator:()=>e0,isAnyImportOrBareOrAccessedRequire:()=>Rge,isAnyImportOrReExport:()=>DY,isAnyImportOrRequireStatement:()=>d7,isAnyImportSyntax:()=>IP,isAnySupportedFileExtension:()=>Jqe,isApplicableVersionedTypesKey:()=>REe,isArgumentExpressionOfElementAccess:()=>Crt,isArray:()=>Ki,isArrayBindingElement:()=>o3,isArrayBindingOrAssignmentElement:()=>EJ,isArrayBindingOrAssignmentPattern:()=>Bre,isArrayBindingPattern:()=>p2,isArrayLiteralExpression:()=>OI,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>e9,isArrayTypeNode:()=>kF,isArrowFunction:()=>lA,isAsExpression:()=>Yd,isAssertClause:()=>xPt,isAssertEntry:()=>$qr,isAssertionExpression:()=>Ed,isAssertsKeyword:()=>J,isAssignmentDeclaration:()=>b7,isAssignmentExpression:()=>Jm,isAssignmentOperator:()=>UD,isAssignmentPattern:()=>CY,isAssignmentTarget:()=>bF,isAsteriskToken:()=>gie,isAsyncFunction:()=>D7,isAsyncModifier:()=>G,isAutoAccessorPropertyDeclaration:()=>t0,isAwaitExpression:()=>I1,isAwaitKeyword:()=>U,isBigIntLiteral:()=>eQ,isBinaryExpression:()=>fo,isBinaryLogicalOperator:()=>Rne,isBinaryOperatorToken:()=>aWt,isBindableObjectDefinePropertyCall:()=>f3,isBindableStaticAccessExpression:()=>yP,isBindableStaticElementAccessExpression:()=>Kge,isBindableStaticNameExpression:()=>I3,isBindingElement:()=>hg,isBindingElementOfBareOrAccessedRequire:()=>lZe,isBindingName:()=>RL,isBindingOrAssignmentElement:()=>_J,isBindingOrAssignmentPattern:()=>yJ,isBindingPattern:()=>Nu,isBlock:()=>$u,isBlockLike:()=>Pz,isBlockOrCatchScoped:()=>ZJ,isBlockScope:()=>PJ,isBlockScopedContainerTopLevel:()=>Tge,isBooleanLiteral:()=>hY,isBreakOrContinueStatement:()=>AY,isBreakStatement:()=>jqr,isBuildCommand:()=>h5t,isBuildInfoFile:()=>l3t,isBuilderProgram:()=>ktt,isBundle:()=>LPt,isCallChain:()=>_B,isCallExpression:()=>Zl,isCallExpressionTarget:()=>drt,isCallLikeExpression:()=>hF,isCallLikeOrFunctionLikeExpression:()=>Tre,isCallOrNewExpression:()=>av,isCallOrNewExpressionTarget:()=>prt,isCallSignatureDeclaration:()=>wg,isCallToHelper:()=>qD,isCaseBlock:()=>ade,isCaseClause:()=>fie,isCaseKeyword:()=>Ks,isCaseOrDefaultClause:()=>RJ,isCatchClause:()=>iQ,isCatchClauseVariableDeclaration:()=>vLe,isCatchClauseVariableDeclarationOrBindingElement:()=>Yre,isCheckJsEnabledForFile:()=>rz,isCircularBuildOrder:()=>Fz,isClassDeclaration:()=>pm,isClassElement:()=>PI,isClassExpression:()=>vd,isClassInstanceProperty:()=>vre,isClassLike:()=>xa,isClassMemberModifier:()=>Sre,isClassNamedEvaluationHelperBlock:()=>kz,isClassOrTypeElement:()=>mY,isClassStaticBlockDeclaration:()=>fl,isClassThisAssignmentBlock:()=>Tde,isColonToken:()=>nEe,isCommaExpression:()=>lEe,isCommaListExpression:()=>sde,isCommaSequence:()=>Ade,isCommaToken:()=>rEe,isComment:()=>YVe,isCommonJsExportPropertyAssignment:()=>Lge,isCommonJsExportedExpression:()=>fye,isCompoundAssignment:()=>vde,isComputedNonLiteralName:()=>kY,isComputedPropertyName:()=>Un,isConciseBody:()=>r7,isConditionalExpression:()=>Lw,isConditionalTypeNode:()=>d2,isConstAssertion:()=>Pbe,isConstTypeReference:()=>s2,isConstructSignatureDeclaration:()=>em,isConstructorDeclaration:()=>Tc,isConstructorTypeNode:()=>$D,isContextualKeyword:()=>tAe,isContinueStatement:()=>Kqr,isCustomPrologue:()=>jre,isDebuggerStatement:()=>zqr,isDeclaration:()=>jh,isDeclarationBindingElement:()=>uP,isDeclarationFileName:()=>PC,isDeclarationName:()=>HT,isDeclarationNameOfEnumOrNamespace:()=>abe,isDeclarationReadonly:()=>hf,isDeclarationStatement:()=>uge,isDeclarationWithTypeParameterChildren:()=>Kre,isDeclarationWithTypeParameters:()=>Ure,isDecorator:()=>So,isDecoratorTarget:()=>H5t,isDefaultClause:()=>cde,isDefaultImport:()=>h3,isDefaultModifier:()=>w,isDefaultedExpandoInitializer:()=>uZe,isDeleteExpression:()=>GF,isDeleteTarget:()=>Tye,isDeprecatedDeclaration:()=>lPe,isDestructuringAssignment:()=>Dx,isDiskPathRoot:()=>cE,isDoStatement:()=>Uqr,isDocumentRegistryEntry:()=>v1e,isDotDotDotToken:()=>nde,isDottedName:()=>Dne,isDynamicName:()=>rAe,isEffectiveExternalModule:()=>g3,isEffectiveStrictModeSourceFile:()=>Jre,isElementAccessChain:()=>IF,isElementAccessExpression:()=>Yg,isEmittedFileOfProgram:()=>I3t,isEmptyArrayLiteral:()=>HZe,isEmptyBindingElement:()=>wr,isEmptyBindingPattern:()=>Ct,isEmptyObjectLiteral:()=>rbe,isEmptyStatement:()=>u$e,isEmptyStringLiteral:()=>mye,isEntityName:()=>fC,isEntityNameExpression:()=>Od,isEnumConst:()=>VA,isEnumDeclaration:()=>V3,isEnumMember:()=>LF,isEqualityOperatorKind:()=>rPe,isEqualsGreaterThanToken:()=>ULe,isExclamationToken:()=>Cz,isExcludedFile:()=>ZWt,isExclusivelyTypeOnlyImportOrExport:()=>utt,isExpandoPropertyDeclaration:()=>jY,isExportAssignment:()=>Cf,isExportDeclaration:()=>Gh,isExportModifier:()=>y,isExportName:()=>i9e,isExportNamespaceAsDefaultDeclaration:()=>wY,isExportOrDefaultModifier:()=>dEe,isExportSpecifier:()=>R0,isExportsIdentifier:()=>p3,isExportsOrModuleExportsOrAlias:()=>cQ,isExpression:()=>un,isExpressionNode:()=>MT,isExpressionOfExternalModuleImportEqualsDeclaration:()=>X5t,isExpressionOfOptionalChainRoot:()=>gY,isExpressionStatement:()=>VC,isExpressionWithTypeArguments:()=>l_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>dAe,isExternalModule:()=>xm,isExternalModuleAugmentation:()=>_F,isExternalModuleImportEqualsDeclaration:()=>LL,isExternalModuleIndicator:()=>PT,isExternalModuleNameRelative:()=>Xr,isExternalModuleReference:()=>ZF,isExternalModuleSymbol:()=>WD,isExternalOrCommonJsModule:()=>vl,isFileLevelReservedGeneratedIdentifier:()=>fY,isFileLevelUniqueName:()=>u7,isFileProbablyExternalModule:()=>IEe,isFirstDeclarationOfSymbolParameter:()=>Urt,isFixablePromiseHandler:()=>vnt,isForInOrOfStatement:()=>DL,isForInStatement:()=>KLe,isForInitializer:()=>hE,isForOfStatement:()=>iEe,isForStatement:()=>L3,isFullSourceFile:()=>aN,isFunctionBlock:()=>mP,isFunctionBody:()=>n7,isFunctionDeclaration:()=>ih,isFunctionExpression:()=>UA,isFunctionExpressionOrArrowFunction:()=>RF,isFunctionLike:()=>bu,isFunctionLikeDeclaration:()=>kd,isFunctionLikeKind:()=>lP,isFunctionLikeOrClassStaticBlockDeclaration:()=>s3,isFunctionOrConstructorTypeNode:()=>oge,isFunctionOrModuleBlock:()=>CJ,isFunctionSymbol:()=>AZe,isFunctionTypeNode:()=>x_,isGeneratedIdentifier:()=>kp,isGeneratedPrivateIdentifier:()=>TL,isGetAccessor:()=>bB,isGetAccessorDeclaration:()=>Bg,isGetOrSetAccessorDeclaration:()=>fJ,isGlobalScopeAugmentation:()=>vB,isGlobalSourceFile:()=>fc,isGrammarError:()=>_ge,isHeritageClause:()=>h1,isHoistedFunction:()=>xge,isHoistedVariableStatement:()=>Gge,isIdentifier:()=>Ir,isIdentifierANonContextualKeyword:()=>kye,isIdentifierName:()=>_Ze,isIdentifierOrThisTypeNode:()=>nWt,isIdentifierPart:()=>s1,isIdentifierStart:()=>bd,isIdentifierText:()=>Uh,isIdentifierTypePredicate:()=>rZe,isIdentifierTypeReference:()=>_Le,isIfStatement:()=>Z3,isIgnoredFileFromWildCardWatching:()=>YEe,isImplicitGlob:()=>bbe,isImportAttribute:()=>GPt,isImportAttributeName:()=>e7,isImportAttributes:()=>CU,isImportCall:()=>Up,isImportClause:()=>Vw,isImportDeclaration:()=>Mf,isImportEqualsDeclaration:()=>km,isImportKeyword:()=>an,isImportMeta:()=>uv,isImportOrExportSpecifier:()=>eS,isImportOrExportSpecifierName:()=>hMt,isImportSpecifier:()=>uy,isImportTypeAssertionContainer:()=>qqr,isImportTypeNode:()=>Um,isImportable:()=>dnt,isInComment:()=>$L,isInCompoundLikeAssignment:()=>qge,isInExpressionContext:()=>rne,isInJSDoc:()=>GY,isInJSFile:()=>wo,isInJSXText:()=>$5t,isInJsonFile:()=>Xge,isInNonReferenceComment:()=>sMt,isInReferenceComment:()=>iMt,isInRightSideOfInternalImportEqualsDeclaration:()=>kVe,isInString:()=>Zz,isInTemplateString:()=>Brt,isInTopLevelContext:()=>Mge,isInTypeQuery:()=>OY,isIncrementalBuildInfo:()=>jEe,isIncrementalBundleEmitBuildInfo:()=>L3t,isIncrementalCompilation:()=>DP,isIndexSignatureDeclaration:()=>w0,isIndexedAccessTypeNode:()=>Iv,isInferTypeNode:()=>jT,isInfinityOrNaNString:()=>oz,isInitializedProperty:()=>GEe,isInitializedVariable:()=>xne,isInsideJsxElement:()=>MVe,isInsideJsxElementOrAttribute:()=>q5t,isInsideNodeModules:()=>_1e,isInsideTemplateLiteral:()=>u1e,isInstanceOfExpression:()=>pAe,isInstantiatedModule:()=>wet,isInterfaceDeclaration:()=>g_,isInternalDeclaration:()=>Fre,isInternalModuleImportEqualsDeclaration:()=>d3,isInternalName:()=>B$e,isIntersectionTypeNode:()=>mf,isIntrinsicJsxName:()=>eU,isIterationStatement:()=>VT,isJSDoc:()=>tR,isJSDocAllType:()=>WPt,isJSDocAugmentsTag:()=>bz,isJSDocAuthorTag:()=>n$r,isJSDocCallbackTag:()=>p$e,isJSDocClassTag:()=>MPt,isJSDocCommentContainingNode:()=>i7,isJSDocConstructSignature:()=>PY,isJSDocDeprecatedTag:()=>C$e,isJSDocEnumTag:()=>oEe,isJSDocFunctionType:()=>hie,isJSDocImplementsTag:()=>t9e,isJSDocImportTag:()=>SN,isJSDocIndexSignature:()=>Uge,isJSDocLikeText:()=>F$e,isJSDocLink:()=>VPt,isJSDocLinkCode:()=>PPt,isJSDocLinkLike:()=>Tx,isJSDocLinkPlain:()=>t$r,isJSDocMemberName:()=>O3,isJSDocNameReference:()=>lde,isJSDocNamepathType:()=>r$r,isJSDocNamespaceBody:()=>oye,isJSDocNode:()=>l3,isJSDocNonNullableType:()=>zLe,isJSDocNullableType:()=>Iie,isJSDocOptionalParameter:()=>HAe,isJSDocOptionalType:()=>d$e,isJSDocOverloadTag:()=>mie,isJSDocOverrideTag:()=>$Le,isJSDocParameterTag:()=>cS,isJSDocPrivateTag:()=>I$e,isJSDocPropertyLikeTag:()=>dY,isJSDocPropertyTag:()=>HPt,isJSDocProtectedTag:()=>h$e,isJSDocPublicTag:()=>f$e,isJSDocReadonlyTag:()=>m$e,isJSDocReturnTag:()=>e9e,isJSDocSatisfiesExpression:()=>Zbe,isJSDocSatisfiesTag:()=>r9e,isJSDocSeeTag:()=>i$r,isJSDocSignature:()=>qL,isJSDocTag:()=>u3,isJSDocTemplateTag:()=>ZB,isJSDocThisTag:()=>_$e,isJSDocThrowsTag:()=>o$r,isJSDocTypeAlias:()=>iS,isJSDocTypeAssertion:()=>sQ,isJSDocTypeExpression:()=>W3,isJSDocTypeLiteral:()=>yU,isJSDocTypeTag:()=>ude,isJSDocTypedefTag:()=>bU,isJSDocUnknownTag:()=>s$r,isJSDocUnknownType:()=>OPt,isJSDocVariadicType:()=>qLe,isJSXTagName:()=>YJ,isJsonEqual:()=>WAe,isJsonSourceFile:()=>Zu,isJsxAttribute:()=>EN,isJsxAttributeLike:()=>wJ,isJsxAttributeName:()=>wLe,isJsxAttributes:()=>nQ,isJsxCallLike:()=>c3,isJsxChild:()=>BJ,isJsxClosingElement:()=>rQ,isJsxClosingFragment:()=>ZPt,isJsxElement:()=>bN,isJsxExpression:()=>pie,isJsxFragment:()=>P3,isJsxNamespacedName:()=>eR,isJsxOpeningElement:()=>$T,isJsxOpeningFragment:()=>Pw,isJsxOpeningLikeElement:()=>eI,isJsxOpeningLikeElementTagName:()=>Y5t,isJsxSelfClosingElement:()=>_U,isJsxSpreadAttribute:()=>yz,isJsxTagNameExpression:()=>kL,isJsxText:()=>KL,isJumpStatementTarget:()=>o1e,isKeyword:()=>v0,isKeywordOrPunctuation:()=>eAe,isKnownSymbol:()=>k7,isLabelName:()=>hrt,isLabelOfLabeledStatement:()=>Irt,isLabeledStatement:()=>FP,isLateVisibilityPaintedStatement:()=>p7,isLeftHandSideExpression:()=>D_,isLet:()=>rS,isLineBreak:()=>Cl,isLiteralComputedPropertyDeclarationName:()=>fne,isLiteralExpression:()=>wL,isLiteralExpressionOfObject:()=>bre,isLiteralImportTypeNode:()=>ky,isLiteralKind:()=>pY,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>FVe,isLiteralTypeLiteral:()=>age,isLiteralTypeNode:()=>EE,isLocalName:()=>VF,isLogicalOperator:()=>WZe,isLogicalOrCoalescingAssignmentExpression:()=>gAe,isLogicalOrCoalescingAssignmentOperator:()=>V7,isLogicalOrCoalescingBinaryExpression:()=>Nne,isLogicalOrCoalescingBinaryOperator:()=>AAe,isMappedTypeNode:()=>GB,isMemberName:()=>_w,isMetaProperty:()=>Du,isMethodDeclaration:()=>uu,isMethodOrAccessor:()=>NL,isMethodSignature:()=>hl,isMinusToken:()=>ide,isMissingDeclaration:()=>e$r,isMissingPackageJsonInfo:()=>JWt,isModifier:()=>Ig,isModifierKind:()=>VD,isModifierLike:()=>dp,isModuleAugmentationExternal:()=>Xre,isModuleBlock:()=>_N,isModuleBody:()=>cge,isModuleDeclaration:()=>xh,isModuleExportName:()=>jLe,isModuleExportsAccessExpression:()=>cN,isModuleIdentifier:()=>_P,isModuleName:()=>oWt,isModuleOrEnumDeclaration:()=>a3,isModuleReference:()=>yY,isModuleSpecifierLike:()=>jVe,isModuleWithStringLiteralName:()=>RY,isNameOfFunctionDeclaration:()=>yrt,isNameOfModuleDeclaration:()=>_rt,isNamedDeclaration:()=>rh,isNamedEvaluation:()=>kb,isNamedEvaluationSource:()=>xye,isNamedExportBindings:()=>yre,isNamedExports:()=>mv,isNamedImportBindings:()=>wx,isNamedImports:()=>yN,isNamedImportsOrExports:()=>Gne,isNamedTupleMember:()=>KT,isNamespaceBody:()=>Nre,isNamespaceExport:()=>tk,isNamespaceExportDeclaration:()=>sEe,isNamespaceImport:()=>Zx,isNamespaceReexportDeclaration:()=>cZe,isNewExpression:()=>f2,isNewExpressionTarget:()=>Ode,isNewScopeNode:()=>eie,isNoSubstitutionTemplateLiteral:()=>GP,isNodeArray:()=>tN,isNodeArrayMultiLine:()=>hAe,isNodeDescendantOf:()=>EP,isNodeKind:()=>z6,isNodeLikeSystem:()=>Mm,isNodeModulesDirectory:()=>Vd,isNodeWithPossibleHoistedDeclaration:()=>CZe,isNonContextualKeyword:()=>Dye,isNonGlobalAmbientModule:()=>Qre,isNonNullAccess:()=>YAe,isNonNullChain:()=>hJ,isNonNullExpression:()=>hv,isNonStaticMethodOrAccessorWithPrivateName:()=>TOt,isNotEmittedStatement:()=>FPt,isNullishCoalesce:()=>IJ,isNumber:()=>ws,isNumericLiteral:()=>mC,isNumericLiteralName:()=>IN,isObjectBindingElementWithoutPropertyName:()=>p1e,isObjectBindingOrAssignmentElement:()=>gP,isObjectBindingOrAssignmentPattern:()=>bJ,isObjectBindingPattern:()=>Km,isObjectLiteralElement:()=>bY,isObjectLiteralElementLike:()=>yw,isObjectLiteralExpression:()=>og,isObjectLiteralMethod:()=>a2,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Vge,isObjectTypeDeclaration:()=>YY,isOmittedExpression:()=>yp,isOptionalChain:()=>GC,isOptionalChainRoot:()=>aP,isOptionalDeclaration:()=>RB,isOptionalJSDocPropertyLikeTag:()=>jne,isOptionalTypeNode:()=>jL,isOuterExpression:()=>s9e,isOutermostOptionalChain:()=>i3,isOverrideModifier:()=>bt,isPackageJsonInfo:()=>N9e,isPackedArrayLiteral:()=>Gbe,isParameter:()=>Si,isParameterPropertyDeclaration:()=>Ve,isParameterPropertyModifier:()=>IY,isParenthesizedExpression:()=>gI,isParenthesizedTypeNode:()=>fv,isParseTreeNode:()=>SL,isPartOfParameterDeclaration:()=>HL,isPartOfTypeNode:()=>ww,isPartOfTypeOnlyImportOrExportDeclaration:()=>sge,isPartOfTypeQuery:()=>Qge,isPartiallyEmittedExpression:()=>ly,isPatternMatch:()=>jd,isPinnedComment:()=>g7,isPlainJsFile:()=>SY,isPlusToken:()=>mz,isPossiblyTypeArgumentPosition:()=>l1e,isPostfixUnaryExpression:()=>ek,isPrefixUnaryExpression:()=>T0,isPrimitiveLiteralValue:()=>uz,isPrivateIdentifier:()=>p,isPrivateIdentifierClassElementDeclaration:()=>pC,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>EZe,isProgramUptoDate:()=>ptt,isPrologueDirective:()=>nS,isPropertyAccessChain:()=>vx,isPropertyAccessEntityNameExpression:()=>BF,isPropertyAccessExpression:()=>jo,isPropertyAccessOrQualifiedName:()=>SJ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>wre,isPropertyAssignment:()=>fm,isPropertyDeclaration:()=>pi,isPropertyName:()=>VI,isPropertyNameLiteral:()=>Tw,isPropertySignature:()=>ss,isPrototypeAccess:()=>wF,isPrototypePropertyAssignment:()=>lne,isPunctuation:()=>Nye,isPushOrUnshiftIdentifier:()=>Gye,isQualifiedName:()=>zi,isQuestionDotToken:()=>Aie,isQuestionOrExclamationToken:()=>rWt,isQuestionOrPlusOrMinusToken:()=>sWt,isQuestionToken:()=>UT,isReadonlyKeyword:()=>le,isReadonlyKeywordOrPlusOrMinusToken:()=>iWt,isRecognizedTripleSlashComment:()=>Ore,isReferenceFileLocation:()=>Fie,isReferencedFile:()=>K3,isRegularExpressionLiteral:()=>tEe,isRequireCall:()=>ay,isRequireVariableStatement:()=>nne,isRestParameter:()=>EB,isRestTypeNode:()=>zL,isReturnStatement:()=>I2,isReturnStatementWithFixablePromiseHandler:()=>hPe,isRightSideOfAccessExpression:()=>tbe,isRightSideOfInstanceofExpression:()=>MZe,isRightSideOfPropertyAccess:()=>Wie,isRightSideOfQualifiedName:()=>Q5t,isRightSideOfQualifiedNameOrPropertyAccess:()=>P7,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>OZe,isRootedDiskPath:()=>Xp,isSameEntityName:()=>QJ,isSatisfiesExpression:()=>Qg,isSemicolonClassElement:()=>DPt,isSetAccessor:()=>cv,isSetAccessorDeclaration:()=>Dg,isShiftOperatorOrHigher:()=>k$e,isShorthandAmbientModuleSymbol:()=>NY,isShorthandPropertyAssignment:()=>a0,isSideEffectImport:()=>Wbe,isSignedNumericLiteral:()=>Cne,isSimpleCopiableExpression:()=>lQ,isSimpleInlineableExpression:()=>BN,isSimpleParameterList:()=>FEe,isSingleOrDoubleQuote:()=>ine,isSolutionConfig:()=>tet,isSourceElement:()=>RLe,isSourceFile:()=>ll,isSourceFileFromLibrary:()=>zie,isSourceFileJS:()=>n0,isSourceFileNotJson:()=>Jge,isSourceMapping:()=>vOt,isSpecialPropertyDeclaration:()=>Eye,isSpreadAssignment:()=>Lx,isSpreadElement:()=>of,isStatement:()=>Lc,isStatementButNotDeclaration:()=>vJ,isStatementOrBlock:()=>kre,isStatementWithLocals:()=>mge,isStatic:()=>cg,isStaticModifier:()=>Ge,isString:()=>Xs,isStringANonContextualKeyword:()=>WY,isStringAndEmptyAnonymousObjectIntersection:()=>nMt,isStringDoubleQuoted:()=>sne,isStringLiteral:()=>Zg,isStringLiteralLike:()=>mA,isStringLiteralOrJsxExpression:()=>TJ,isStringLiteralOrTemplate:()=>yMt,isStringOrNumericLiteralLike:()=>d1,isStringOrRegularExpressionOrTemplateLiteral:()=>Rrt,isStringTextContainingNode:()=>Ere,isSuperCall:()=>Dy,isSuperKeyword:()=>rr,isSuperProperty:()=>xy,isSupportedSourceFileName:()=>Bbe,isSwitchStatement:()=>ode,isSyntaxList:()=>Cie,isSyntheticExpression:()=>F3,isSyntheticReference:()=>_z,isTagName:()=>mrt,isTaggedTemplateExpression:()=>MI,isTaggedTemplateTag:()=>M5t,isTemplateExpression:()=>FF,isTemplateHead:()=>tQ,isTemplateLiteral:()=>AP,isTemplateLiteralKind:()=>LD,isTemplateLiteralToken:()=>ige,isTemplateLiteralTypeNode:()=>zT,isTemplateLiteralTypeSpan:()=>mN,isTemplateMiddle:()=>uie,isTemplateMiddleOrTemplateTail:()=>$6,isTemplateSpan:()=>die,isTemplateTail:()=>rde,isTextWhiteSpaceLike:()=>lMt,isThis:()=>Oie,isThisContainerOrFunctionBlock:()=>sZe,isThisIdentifier:()=>vF,isThisInTypeQuery:()=>YL,isThisInitializedDeclaration:()=>Hge,isThisInitializedObjectBindingExpression:()=>aZe,isThisProperty:()=>$re,isThisTypeNode:()=>Fx,isThisTypeParameter:()=>az,isThisTypePredicate:()=>nZe,isThrowStatement:()=>A$e,isToken:()=>BL,isTokenKind:()=>q6,isTraceEnabled:()=>VP,isTransientSymbol:()=>bw,isTrivia:()=>zJ,isTryStatement:()=>mU,isTupleTypeNode:()=>Zw,isTypeAlias:()=>gne,isTypeAliasDeclaration:()=>FB,isTypeAssertionExpression:()=>xF,isTypeDeclaration:()=>KY,isTypeElement:()=>Bx,isTypeKeyword:()=>Qde,isTypeKeywordTokenOrIdentifier:()=>JVe,isTypeLiteralNode:()=>mh,isTypeNode:()=>uc,isTypeNodeKind:()=>bAe,isTypeOfExpression:()=>CN,isTypeOnlyExportDeclaration:()=>mJ,isTypeOnlyImportDeclaration:()=>rN,isTypeOnlyImportOrExportDeclaration:()=>nN,isTypeOperatorNode:()=>xB,isTypeParameterDeclaration:()=>Ds,isTypePredicateNode:()=>bE,isTypeQueryNode:()=>Fw,isTypeReferenceNode:()=>nh,isTypeReferenceType:()=>s7,isTypeUsableAsPropertyName:()=>g2,isUMDExportSymbol:()=>yAe,isUnaryExpression:()=>Rre,isUnaryExpressionWithWrite:()=>iN,isUnicodeIdentifierStart:()=>ft,isUnionTypeNode:()=>aS,isUrl:()=>n_,isValidBigIntString:()=>Jne,isValidESSymbolDeclaration:()=>eZe,isValidTypeOnlyAliasUseSite:()=>JL,isValueSignatureDeclaration:()=>C3,isVarAwaitUsing:()=>Sd,isVarConst:()=>rI,isVarConstLike:()=>OT,isVarUsing:()=>tI,isVariableDeclaration:()=>nc,isVariableDeclarationInVariableStatement:()=>h7,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>CP,isVariableDeclarationInitializedToRequire:()=>y7,isVariableDeclarationList:()=>u_,isVariableLike:()=>I7,isVariableStatement:()=>Ch,isVoidExpression:()=>qT,isWatchSet:()=>cbe,isWhileStatement:()=>g$e,isWhiteSpaceLike:()=>dc,isWhiteSpaceSingleLine:()=>Iu,isWithStatement:()=>kPt,isWriteAccess:()=>B3,isWriteOnlyAccess:()=>CAe,isYieldExpression:()=>Hd,jsxModeNeedsExplicitImport:()=>unt,keywordPart:()=>y1,last:()=>Ei,lastOrUndefined:()=>li,length:()=>B,libMap:()=>W$e,libs:()=>A9e,lineBreakPart:()=>Jie,loadModuleFromGlobalCache:()=>aOt,loadWithModeAwareCache:()=>XEe,makeIdentifierFromModuleName:()=>vw,makeImport:()=>QP,makeStringLiteral:()=>Xde,mangleScopedPackageName:()=>Nie,map:()=>At,mapAllOrFail:()=>qt,mapDefined:()=>Xt,mapDefinedIterator:()=>lr,mapEntries:()=>ke,mapIterator:()=>Yt,mapOneOrMany:()=>ont,mapToDisplayParts:()=>XP,matchFiles:()=>Sbe,matchPatternOrExact:()=>Tbe,matchedText:()=>pw,matchesExclude:()=>v9e,matchesExcludeWorker:()=>B9e,maxBy:()=>ls,maybeBind:()=>$i,maybeSetLocalizedDiagnosticMessages:()=>qZe,memoize:()=>FA,memoizeOne:()=>ZA,min:()=>oa,minAndMax:()=>hLe,missingFileModifiedTime:()=>Rh,modifierToFlag:()=>HY,modifiersToFlags:()=>Dw,moduleExportNameIsDefault:()=>lv,moduleExportNameTextEscaped:()=>CF,moduleExportNameTextUnescaped:()=>HD,moduleOptionDeclaration:()=>mWt,moduleResolutionIsEqualTo:()=>Ige,moduleResolutionNameAndModeGetter:()=>tVe,moduleResolutionOptionDeclarations:()=>M$e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>lU,moduleResolutionUsesNodeModules:()=>UVe,moduleSpecifierToValidIdentifier:()=>b1e,moduleSpecifiers:()=>WF,moduleSupportsImportAttributes:()=>iLe,moduleSymbolToValidIdentifier:()=>y1e,moveEmitHelpers:()=>VLe,moveRangeEnd:()=>IAe,moveRangePastDecorators:()=>jD,moveRangePastModifiers:()=>Av,moveRangePos:()=>KD,moveSyntheticComments:()=>FLe,mutateMap:()=>Q7,mutateMapSkippingNewValues:()=>gN,needsParentheses:()=>ePe,needsScopeMarker:()=>t7,newCaseClauseTracker:()=>APe,newPrivateEnvironment:()=>NOt,noEmitNotification:()=>PEe,noEmitSubstitution:()=>Nde,noTransformers:()=>a3t,noTruncationMaximumTruncationLength:()=>Lre,nodeCanBeDecorated:()=>OJ,nodeCoreModules:()=>dU,nodeHasName:()=>t3,nodeIsDecorated:()=>MJ,nodeIsMissing:()=>sf,nodeIsPresent:()=>u1,nodeIsSynthesized:()=>sp,nodeModuleNameResolver:()=>qWt,nodeModulesPathPart:()=>Vx,nodeNextJsonConfigResolver:()=>$Wt,nodeOrChildIsDecorated:()=>tne,nodeOverlapsWithStartEnd:()=>ZVe,nodePosToString:()=>Cge,nodeSeenTracker:()=>Yie,nodeStartsNewLexicalEnvironment:()=>Fye,noop:()=>Dc,noopFileWatcher:()=>Vie,normalizePath:()=>iu,normalizeSlashes:()=>Dp,normalizeSpans:()=>EI,not:()=>uC,notImplemented:()=>il,notImplementedResolver:()=>A3t,nullNodeConverters:()=>Qbe,nullParenthesizerRules:()=>Ybe,nullTransformationContext:()=>OEe,objectAllocator:()=>ZC,operatorPart:()=>Ude,optionDeclarations:()=>Ww,optionMapToObject:()=>C9e,optionsAffectingProgramStructure:()=>bWt,optionsForBuild:()=>Y$e,optionsForWatch:()=>wz,optionsHaveChanges:()=>S0,or:()=>Hp,orderedRemoveItem:()=>Ql,orderedRemoveItemAt:()=>LA,packageIdToPackageName:()=>xJ,packageIdToString:()=>oN,parameterIsThisKeyword:()=>SF,parameterNamePart:()=>gMt,parseBaseNodeFactory:()=>AWt,parseBigInt:()=>CLe,parseBuildCommand:()=>NWt,parseCommandLine:()=>TWt,parseCommandLineWorker:()=>Q$e,parseConfigFileTextToJson:()=>J$e,parseConfigFileWithSystem:()=>z3t,parseConfigHostFromCompilerHostLike:()=>aVe,parseCustomTypeOption:()=>I9e,parseIsolatedEntityName:()=>Bz,parseIsolatedJSDocComment:()=>pWt,parseJSDocTypeExpressionForTests:()=>N$r,parseJsonConfigFileContent:()=>oen,parseJsonSourceFileConfigFileContent:()=>EEe,parseJsonText:()=>hEe,parseListTypeOption:()=>BWt,parseNodeFactory:()=>H3,parseNodeModuleFromPath:()=>wEe,parsePackageName:()=>TEe,parsePseudoBigInt:()=>nz,parseValidBigInt:()=>kbe,pasteEdits:()=>lst,patchWriteFileEnsuringDirectory:()=>e2,pathContainsNodeModules:()=>WP,pathIsAbsolute:()=>lE,pathIsBareSpecifier:()=>Xh,pathIsRelative:()=>Ip,patternText:()=>j1,performIncrementalCompilation:()=>q3t,performance:()=>hb,positionBelongsToNode:()=>brt,positionIsASICandidate:()=>nPe,positionIsSynthesized:()=>wB,positionsAreOnSameLine:()=>yE,preProcessFile:()=>hin,probablyUsesSemicolons:()=>C1e,processCommentPragmas:()=>V$e,processPragmasIntoFields:()=>P$e,processTaggedTemplateExpression:()=>Met,programContainsEsModules:()=>aMt,programContainsModules:()=>oMt,projectReferenceIsEqualTo:()=>Vre,propertyNamePart:()=>AMt,pseudoBigIntToString:()=>kP,punctuationPart:()=>k0,pushIfUnique:()=>Qi,quote:()=>zde,quotePreferenceFromString:()=>Prt,rangeContainsPosition:()=>Mie,rangeContainsPositionExclusive:()=>a1e,rangeContainsRange:()=>cy,rangeContainsRangeExclusive:()=>J5t,rangeContainsStartEnd:()=>c1e,rangeEndIsOnSameLineAsRangeStart:()=>kne,rangeEndPositionsAreOnSameLine:()=>QZe,rangeEquals:()=>gc,rangeIsOnSingleLine:()=>S3,rangeOfNode:()=>Nbe,rangeOfTypeParameters:()=>Dbe,rangeOverlapsWithStartEnd:()=>Mde,rangeStartIsOnSameLineAsRangeEnd:()=>XZe,rangeStartPositionsAreOnSameLine:()=>M7,readBuilderProgram:()=>mVe,readConfigFile:()=>yEe,readJson:()=>E3,readJsonConfigFile:()=>DWt,readJsonOrUndefined:()=>sbe,reduceEachLeadingCommentRange:()=>EL,reduceEachTrailingCommentRange:()=>ff,reduceLeft:()=>Ul,reduceLeftIterator:()=>ne,reducePathComponents:()=>t2,refactor:()=>Oz,regExpEscape:()=>Mqe,regularExpressionFlagToCharacterCode:()=>Ho,relativeComplement:()=>Wr,removeAllComments:()=>pz,removeEmitHelper:()=>n$e,removeExtension:()=>Xne,removeFileExtension:()=>s0,removeIgnoredPath:()=>gVe,removeMinAndVersionNumbers:()=>us,removePrefix:()=>Nm,removeSuffix:()=>aa,removeTrailingDirectorySeparator:()=>ny,repeatString:()=>A1e,replaceElement:()=>Yl,replaceFirstStar:()=>R3,resolutionExtensionIsTSOrJson:()=>ez,resolveConfigFileProjectName:()=>Xtt,resolveJSModule:()=>KWt,resolveLibrary:()=>k9e,resolveModuleName:()=>BU,resolveModuleNameFromCache:()=>Ven,resolvePackageNameToPackageJson:()=>set,resolvePath:()=>AE,resolveProjectReferencePath:()=>xz,resolveTripleslashReference:()=>stt,resolveTypeReferenceDirective:()=>QWt,resolvingEmptyArray:()=>Zre,returnFalse:()=>As,returnNoopFileWatcher:()=>Vde,returnTrue:()=>Tf,returnUndefined:()=>cm,returnsPromise:()=>Snt,rewriteModuleSpecifier:()=>Nz,sameFlatMap:()=>Zr,sameMap:()=>Tr,sameMapping:()=>Ttn,scanTokenAtPosition:()=>qs,scanner:()=>A_,semanticDiagnosticsOptionDeclarations:()=>CWt,serializeCompilerOptions:()=>q$e,server:()=>wpn,servicesVersion:()=>oon,setCommentRange:()=>hh,setConfigFileInOptions:()=>$$e,setConstantValue:()=>LLe,setEmitFlags:()=>ti,setGetSourceFileAsHashVersioned:()=>hVe,setIdentifierAutoGenerate:()=>oie,setIdentifierGeneratedImportReference:()=>OLe,setIdentifierTypeArguments:()=>xx,setInternalEmitFlags:()=>sie,setLocalizedDiagnosticMessages:()=>cU,setNodeChildren:()=>YPt,setNodeFlags:()=>bLe,setObjectAllocator:()=>zZe,setOriginalNode:()=>ua,setParent:()=>XA,setParentRecursive:()=>UL,setPrivateIdentifier:()=>wU,setSnippetElement:()=>qbe,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>xT,setStartsOnNewLine:()=>Md,setSyntheticLeadingComments:()=>kB,setSyntheticTrailingComments:()=>x3,setSys:()=>bI,setSysLog:()=>xC,setTextRange:()=>gn,setTextRangeEnd:()=>AU,setTextRangePos:()=>iz,setTextRangePosEnd:()=>TB,setTextRangePosWidth:()=>xbe,setTokenSourceMapRange:()=>Kbe,setTypeNode:()=>PLe,setUILocale:()=>Zs,setValueDeclaration:()=>S7,shouldAllowImportingTsExtension:()=>Die,shouldPreserveConstEnums:()=>Fb,shouldRewriteModuleSpecifier:()=>une,shouldUseUriStyleNodeCoreModules:()=>uPe,showModuleSpecifier:()=>KZe,signatureHasRestParameter:()=>D0,signatureToDisplayParts:()=>jrt,single:()=>Xa,singleElementArray:()=>J_,singleIterator:()=>qr,singleOrMany:()=>ac,singleOrUndefined:()=>Ps,skipAlias:()=>FC,skipConstraint:()=>Zrt,skipOuterExpressions:()=>HI,skipParentheses:()=>QA,skipPartiallyEmittedExpressions:()=>o2,skipTrivia:()=>Yu,skipTypeChecking:()=>T3,skipTypeCheckingIgnoringNoCheck:()=>mLe,skipTypeParentheses:()=>w7,skipWhile:()=>cp,sliceAfter:()=>Rbe,some:()=>jt,sortAndDeduplicate:()=>cl,sortAndDeduplicateDiagnostics:()=>ui,sourceFileAffectingCompilerOptions:()=>H$e,sourceFileMayBeEmitted:()=>SP,sourceMapCommentRegExp:()=>Net,sourceMapCommentRegExpDontCareLineStart:()=>bOt,spacePart:()=>BI,spanMap:()=>_n,startEndContainsRange:()=>mAe,startEndOverlapsWithStartEnd:()=>LVe,startOnNewLine:()=>N0,startTracing:()=>fd,startsWith:()=>Ac,startsWithDirectory:()=>$S,startsWithUnderscore:()=>lnt,startsWithUseStrict:()=>zPt,stringContainsAt:()=>TMt,stringToToken:()=>Ta,stripQuotes:()=>l2,supportedDeclarationExtensions:()=>LAe,supportedJSExtensionsFlat:()=>uU,supportedLocaleDirectories:()=>nv,supportedTSExtensionsFlat:()=>vbe,supportedTSImplementationExtensions:()=>Yne,suppressLeadingAndTrailingTrivia:()=>Vy,suppressLeadingTrivia:()=>Hbe,suppressTrailingTrivia:()=>kLe,symbolEscapedNameNoDefault:()=>KVe,symbolName:()=>nf,symbolNameNoDefault:()=>Ort,symbolToDisplayParts:()=>Kde,sys:()=>yd,sysLog:()=>Ih,tagNamesAreEquivalent:()=>Q3,takeWhile:()=>t_,targetOptionDeclaration:()=>O$e,targetToLibMap:()=>Is,testFormatSettings:()=>Pnn,textChangeRangeIsUnchanged:()=>sy,textChangeRangeNewSpan:()=>qR,textChanges:()=>xo,textOrKeywordPart:()=>Krt,textPart:()=>gS,textRangeContainsPositionInclusive:()=>sl,textRangeContainsTextSpan:()=>Og,textRangeIntersectsWithTextSpan:()=>e3,textSpanContainsPosition:()=>ho,textSpanContainsTextRange:()=>ed,textSpanContainsTextSpan:()=>Nd,textSpanEnd:()=>Rs,textSpanIntersection:()=>IA,textSpanIntersectsWith:()=>q2,textSpanIntersectsWithPosition:()=>zR,textSpanIntersectsWithTextSpan:()=>Tb,textSpanIsEmpty:()=>ja,textSpanOverlap:()=>o1,textSpanOverlapsWith:()=>Nh,textSpansEqual:()=>Xie,textToKeywordObj:()=>ev,timestamp:()=>Fg,toArray:()=>cc,toBuilderFileEmit:()=>W3t,toBuilderStateFileInfoForMultiEmit:()=>P3t,toEditorSettings:()=>N1e,toFileNameLowerCase:()=>Om,toPath:()=>Ou,toProgramEmitPending:()=>O3t,toSorted:()=>bo,tokenIsIdentifierOrKeyword:()=>Id,tokenIsIdentifierOrKeywordOrGreaterThan:()=>fB,tokenToString:()=>Vi,trace:()=>eu,tracing:()=>ki,tracingEnabled:()=>Kl,transferSourceFileChildren:()=>QPt,transform:()=>Ion,transformClassFields:()=>WOt,transformDeclarations:()=>Xet,transformECMAScriptModule:()=>Qet,transformES2015:()=>e3t,transformES2016:()=>$Ot,transformES2017:()=>YOt,transformES2018:()=>QOt,transformES2019:()=>XOt,transformES2020:()=>JOt,transformES2021:()=>UOt,transformESDecorators:()=>HOt,transformESNext:()=>KOt,transformGenerators:()=>t3t,transformImpliedNodeFormatDependentModule:()=>n3t,transformJsx:()=>qOt,transformLegacyDecorators:()=>MOt,transformModule:()=>Yet,transformNamedEvaluation:()=>m1,transformNodes:()=>WEe,transformSystemModule:()=>r3t,transformTypeScript:()=>POt,transpile:()=>Bin,transpileDeclaration:()=>Sin,transpileModule:()=>zMt,transpileOptionValueCompilerOptions:()=>EWt,tryAddToSet:()=>Ar,tryAndIgnoreErrors:()=>oPe,tryCast:()=>Gs,tryDirectoryExists:()=>sPe,tryExtractTSExtension:()=>O7,tryFileExists:()=>Kie,tryGetClassExtendingExpressionWithTypeArguments:()=>$ye,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>ebe,tryGetDirectories:()=>iPe,tryGetExtensionFromPath:()=>QT,tryGetImportFromModuleSpecifier:()=>B7,tryGetJSDocSatisfiesTypeNode:()=>QAe,tryGetModuleNameFromFile:()=>gEe,tryGetModuleSpecifierFromDeclaration:()=>ZY,tryGetNativePerformanceHooks:()=>YS,tryGetPropertyAccessOrIdentifierToString:()=>TP,tryGetPropertyNameOfBindingOrAssignmentElement:()=>a9e,tryGetSourceMappingURL:()=>EOt,tryGetTextOfPropertyName:()=>xY,tryParseJson:()=>nU,tryParsePattern:()=>UY,tryParsePatterns:()=>$7,tryParseRawSourceMap:()=>SOt,tryReadDirectory:()=>rnt,tryReadFile:()=>fde,tryRemoveDirectoryPrefix:()=>NAe,tryRemoveExtension:()=>ILe,tryRemovePrefix:()=>HS,tryRemoveSuffix:()=>Bo,tscBuildOption:()=>SU,typeAcquisitionDeclarations:()=>p9e,typeAliasNamePart:()=>dMt,typeDirectiveIsEqualTo:()=>hge,typeKeywords:()=>Frt,typeParameterNamePart:()=>pMt,typeToDisplayParts:()=>I1e,unchangedPollThresholds:()=>q_,unchangedTextChangeRange:()=>Eo,unescapeLeadingUnderscores:()=>Bc,unmangleScopedPackageName:()=>NEe,unorderedRemoveItem:()=>ef,unprefixedNodeCoreModules:()=>qne,unreachableCodeIsError:()=>rLe,unsetNodeChildren:()=>b$e,unusedLabelIsError:()=>nLe,unwrapInnermostStatementOfLabel:()=>Iye,unwrapParenthesizedExpression:()=>UAe,updateErrorForNoInputFiles:()=>S9e,updateLanguageServiceSourceFile:()=>znt,updateMissingFilePathsWatch:()=>rtt,updateResolutionField:()=>Bie,updateSharedExtendedConfigFileWatcher:()=>z9e,updateSourceFile:()=>Z$e,updateWatchingWildcardDirectories:()=>HEe,usingSingleLineStringWriter:()=>dP,utf16EncodeAsString:()=>jR,validateLocaleAndSetLanguage:()=>yx,version:()=>C,versionMajorMinor:()=>I,visitArray:()=>Ede,visitCommaListElements:()=>xEe,visitEachChild:()=>_s,visitFunctionBody:()=>uS,visitIterationBody:()=>Py,visitLexicalEnvironment:()=>Ret,visitNode:()=>Mr,visitNodes:()=>Ws,visitParameterList:()=>vI,walkUpBindingElementsAndPatterns:()=>ai,walkUpOuterExpressions:()=>qPt,walkUpParenthesizedExpressions:()=>gv,walkUpParenthesizedTypes:()=>pne,walkUpParenthesizedTypesAndGetParentAndChild:()=>wye,whitespaceOrMapCommentRegExp:()=>Det,writeCommentRange:()=>rU,writeFile:()=>lAe,writeFileEnsuringDirectories:()=>Qye,zipWith:()=>ce});var EWs=!0,Spn;function SWs(){return Spn??(Spn=new O(C))}function vpn(s,c,g,d,h){let _=c?"DeprecationError: ":"DeprecationWarning: ";return _+=`'${s}' `,_+=d?`has been deprecated since v${d}`:"is deprecated",_+=c?" and can no longer be used.":g?` and will no longer be usable after v${g}.`:".",_+=h?` ${dN(h,[s])}`:"",_}function vWs(s,c,g,d){let h=vpn(s,!0,c,g,d);return()=>{throw new TypeError(h)}}function BWs(s,c,g,d){let h=!1;return()=>{EWs&&!h&&(pe.log.warn(vpn(s,!1,c,g,d)),h=!0)}}function wWs(s,c={}){let g=typeof c.typeScriptVersion=="string"?new O(c.typeScriptVersion):c.typeScriptVersion??SWs(),d=typeof c.errorAfter=="string"?new O(c.errorAfter):c.errorAfter,h=typeof c.warnAfter=="string"?new O(c.warnAfter):c.warnAfter,_=typeof c.since=="string"?new O(c.since):c.since??h,S=c.error||d&&g.compareTo(d)>=0,R=!h||g.compareTo(h)>=0;return S?vWs(s,d,_,c.message):R?BWs(s,d,_,c.message):Dc}function TWs(s,c){return function(){return s(),c.apply(this,arguments)}}function RWs(s,c){let g=wWs(c?.name??pe.getFunctionName(s),c);return TWs(g,s)}function ust(s,c,g,d){if(Object.defineProperty(_,"name",{...Object.getOwnPropertyDescriptor(_,"name"),value:s}),d)for(let S of Object.keys(d)){let R=+S;!isNaN(R)&&Da(c,`${R}`)&&(c[R]=RWs(c[R],{...d[R],name:s}))}let h=NWs(c,g);return _;function _(...S){let R=h(S),T=R!==void 0?c[R]:void 0;if(typeof T=="function")return T(...S);throw new TypeError("Invalid arguments")}}function NWs(s,c){return g=>{for(let d=0;Da(s,`${d}`)&&Da(c,`${d}`);d++){let h=c[d];if(h(g))return d}}}function Bpn(s){return{overload:c=>({bind:g=>({finish:()=>ust(s,c,g),deprecate:d=>({finish:()=>ust(s,c,g,d)})})})}}var wpn={};o(wpn,{ActionInvalidate:()=>BVe,ActionPackageInstalled:()=>wVe,ActionSet:()=>vVe,ActionWatchTypingLocations:()=>n1e,Arguments:()=>crt,AutoImportProviderProject:()=>P4t,AuxiliaryProject:()=>L4t,CharRangeSection:()=>gJt,CloseFileWatcherEvent:()=>Est,CommandNames:()=>sfn,ConfigFileDiagEvent:()=>mst,ConfiguredProject:()=>W4t,ConfiguredProjectLoadKind:()=>X4t,CreateDirectoryWatcherEvent:()=>bst,CreateFileWatcherEvent:()=>yst,Errors:()=>QF,EventBeginInstallTypes:()=>ort,EventEndInstallTypes:()=>art,EventInitializationFailed:()=>S5t,EventTypesRegistry:()=>srt,ExternalProject:()=>Ast,GcTimer:()=>v4t,InferredProject:()=>Z4t,LargeFileReferencedEvent:()=>hst,LineIndex:()=>a2e,LineLeaf:()=>cWe,LineNode:()=>use,LogLevel:()=>I4t,Msg:()=>h4t,OpenFileInfoTelemetryEvent:()=>O4t,Project:()=>zz,ProjectInfoTelemetryEvent:()=>_st,ProjectKind:()=>fpe,ProjectLanguageServiceStateEvent:()=>Cst,ProjectLoadingFinishEvent:()=>Ist,ProjectLoadingStartEvent:()=>fst,ProjectService:()=>tJt,ProjectsUpdatedInBackgroundEvent:()=>sWe,ScriptInfo:()=>R4t,ScriptVersionCache:()=>Fst,Session:()=>dfn,TextStorage:()=>T4t,ThrottledOperations:()=>S4t,TypingsInstallerAdapter:()=>Cfn,allFilesAreJsOrDts:()=>x4t,allRootFilesAreJsOrDts:()=>k4t,asNormalizedPath:()=>Dpn,convertCompilerOptions:()=>oWe,convertFormatOptions:()=>ase,convertScriptKindName:()=>vst,convertTypeAcquisition:()=>H4t,convertUserPreferences:()=>Y4t,convertWatchOptions:()=>s2e,countEachFileTypes:()=>t2e,createInstallTypingsRequest:()=>m4t,createModuleSpecifierCache:()=>iJt,createNormalizedPathMap:()=>kpn,createPackageJsonCache:()=>sJt,createSortedArray:()=>E4t,emptyArray:()=>zm,findArgument:()=>Dnn,formatDiagnosticToProtocol:()=>o2e,formatMessage:()=>oJt,getBaseConfigFileName:()=>gst,getDetailWatchInfo:()=>Rst,getLocationInNewDocument:()=>uJt,hasArgument:()=>Nnn,hasNoTypeScriptSource:()=>G4t,indent:()=>Wde,isBackgroundProject:()=>n2e,isConfigFile:()=>rJt,isConfiguredProject:()=>s9,isDynamicFileName:()=>ppe,isExternalProject:()=>r2e,isInferredProject:()=>ose,isInferredProjectName:()=>C4t,isProjectDeferredClose:()=>i2e,makeAutoImportProviderProjectName:()=>y4t,makeAuxiliaryProjectName:()=>b4t,makeInferredProjectName:()=>_4t,maxFileSize:()=>pst,maxProgramSizeForNonTsFiles:()=>dst,normalizedPathToPath:()=>sse,nowString:()=>knn,nullCancellationToken:()=>rfn,nullTypingsInstaller:()=>aWe,protocol:()=>B4t,scriptInfoIsContainedByBackgroundProject:()=>N4t,scriptInfoIsContainedByDeferredClosedProject:()=>D4t,stringifyIndented:()=>j3,toEvent:()=>aJt,toNormalizedPath:()=>op,tryConvertScriptKindName:()=>Sst,typingsInstaller:()=>f4t,updateProjectIfDirty:()=>_v});var f4t={};o(f4t,{TypingsInstaller:()=>xWs,getNpmCommandForInstallation:()=>Rpn,installNpmPackages:()=>kWs,typingsName:()=>Npn});var DWs={isEnabled:()=>!1,writeLine:Dc};function Tpn(s,c,g,d){try{let h=BU(c,Ro(s,"index.d.ts"),{moduleResolution:2},g);return h.resolvedModule&&h.resolvedModule.resolvedFileName}catch(h){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${s}': ${h.message}`);return}}function kWs(s,c,g,d){let h=!1;for(let _=g.length;_>0;){let S=Rpn(s,c,g,_);_=S.remaining,h=d(S.command)||h}return h}function Rpn(s,c,g,d){let h=g.length-d,_,S=d;for(;_=`${s} install --ignore-scripts ${(S===g.length?g:g.slice(h,h+S)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(_.length<8e3);)S=S-Math.floor(S/2);return{command:_,remaining:d-S}}var xWs=class{constructor(s,c,g,d,h,_=DWs){this.installTypingHost=s,this.globalCachePath=c,this.safeListPath=g,this.typesMapLocation=d,this.throttleLimit=h,this.log=_,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest",this.log.isEnabled()&&this.log.writeLine(`Global cache location '${c}', safe file path '${g}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(s){switch(s.kind){case"discover":this.install(s);break;case"closeProject":this.closeProject(s);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,h)=>{c[h]=d});let g={kind:srt,typesRegistry:c};this.sendResponse(g);break}case"installPackage":{this.installPackage(s);break}default:pe.assertNever(s)}}closeProject(s){this.closeWatchers(s.projectName)}closeWatchers(s){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}'`),!this.projectWatchers.get(s)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${s}'`);return}this.projectWatchers.delete(s),this.sendResponse({kind:n1e,projectName:s,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${s}' - done.`)}install(s){this.log.isEnabled()&&this.log.writeLine(`Got install request${j3(s)}`),s.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${s.cachePath}', loading cached information...`),this.processCacheLocation(s.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=YP.discoverTypings(this.installTypingHost,this.log.isEnabled()?g=>this.log.writeLine(g):void 0,s.fileNames,s.projectRootPath,this.safeList,this.packageNameToTypingLocation,s.typeAcquisition,s.unresolvedImports,this.typesRegistry,s.compilerOptions);this.watchFiles(s.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(s,s.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(s,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(s){let{fileName:c,packageName:g,projectName:d,projectRootPath:h,id:_}=s,S=pE(Mo(c),R=>{if(this.installTypingHost.fileExists(Ro(R,"package.json")))return R})||h;if(S)this.installWorker(-1,[g],S,R=>{let T=R?`Package ${g} installed.`:`There was an error installing ${g}.`,W={kind:wVe,projectName:d,id:_,success:R,message:T};this.sendResponse(W)});else{let R={kind:wVe,projectName:d,id:_,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let s=YP.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(s){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=s;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=YP.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(s){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${s}'`),this.knownCachesSet.has(s)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=Ro(s,"package.json"),g=Ro(s,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(g)){let d=JSON.parse(this.installTypingHost.readFile(c)),h=JSON.parse(this.installTypingHost.readFile(g));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${j3(d)}`),this.log.writeLine(`Loaded content of '${g}':${j3(h)}`)),d.devDependencies&&(h.packages||h.dependencies))for(let _ in d.devDependencies){if(h.packages&&!Da(h.packages,`node_modules/${_}`)||h.dependencies&&!Da(h.dependencies,_))continue;let S=gp(_);if(!S)continue;let R=Tpn(s,S,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(S);continue}let T=this.packageNameToTypingLocation.get(S);if(T){if(T.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${S} from '${R}' conflicts with existing typing file '${T}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${S}' => '${R}'`);let W=h.packages&&pu(h.packages,`node_modules/${_}`)||pu(h.dependencies,_),V=W&&W.version;if(!V)continue;let M={typingLocation:R,version:new O(V)};this.packageNameToTypingLocation.set(S,M)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${s}'`),this.knownCachesSet.add(s)}filterTypings(s){return Xt(s,c=>{let g=Nie(c);if(this.missingTypingsSet.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' is in missingTypingsSet - skipping...`);return}let d=YP.validatePackageName(c);if(d!==YP.NameValidationResult.Ok){this.missingTypingsSet.add(g),this.log.isEnabled()&&this.log.writeLine(YP.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(g)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${g}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(g)&&YP.isTypingUpToDate(this.packageNameToTypingLocation.get(g),this.typesRegistry.get(g))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${g}' already has an up-to-date typing - skipping...`);return}return g})}ensurePackageDirectoryExists(s){let c=Ro(s,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(s,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(s,c,g,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let h=this.filterTypings(d);if(h.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(s,g));return}this.ensurePackageDirectoryExists(c);let _=this.installRunCount;this.installRunCount++,this.sendResponse({kind:ort,eventId:_,typingsInstallerVersion:C,projectName:s.projectName});let S=h.map(Npn);this.installTypingsAsync(_,S,c,R=>{try{if(!R){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(h)}`);for(let W of h)this.missingTypingsSet.add(W);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(S)}`);let T=[];for(let W of h){let V=Tpn(c,W,this.installTypingHost,this.log);if(!V){this.missingTypingsSet.add(W);continue}let M=this.typesRegistry.get(W),ee=new O(M[`ts${I}`]||M[this.latestDistTag]),re={typingLocation:V,version:ee};this.packageNameToTypingLocation.set(W,re),T.push(V)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(T)}`),this.sendResponse(this.createSetTypings(s,g.concat(T)))}finally{let T={kind:art,eventId:_,projectName:s.projectName,packagesToInstall:S,installSuccess:R,typingsInstallerVersion:C};this.sendResponse(T)}})}ensureDirectoryExists(s,c){let g=Mo(s);c.directoryExists(g)||this.ensureDirectoryExists(g,c),c.directoryExists(s)||c.createDirectory(s)}watchFiles(s,c){if(!c.length){this.closeWatchers(s);return}let g=this.projectWatchers.get(s),d=new Set(c);!g||SB(d,h=>!g.has(h))||SB(g,h=>!d.has(h))?(this.projectWatchers.set(s,d),this.sendResponse({kind:n1e,projectName:s,files:c})):this.sendResponse({kind:n1e,projectName:s,files:void 0})}createSetTypings(s,c){return{projectName:s.projectName,typeAcquisition:s.typeAcquisition,compilerOptions:s.compilerOptions,typings:c,unresolvedImports:s.unresolvedImports,kind:vVe}}installTypingsAsync(s,c,g,d){this.pendingRunRequests.unshift({requestId:s,packageNames:c,cwd:g,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,s.onRequestCompleted(c),this.executeWithThrottling()})}}};function Npn(s){return`@types/${s}@ts${I}`}var I4t=(s=>(s[s.terse=0]="terse",s[s.normal=1]="normal",s[s.requestTime=2]="requestTime",s[s.verbose=3]="verbose",s))(I4t||{}),zm=E4t(),h4t=(s=>(s.Err="Err",s.Info="Info",s.Perf="Perf",s))(h4t||{});function m4t(s,c,g,d){return{projectName:s.getProjectName(),fileNames:s.getFileNames(!0,!0).concat(s.getExcludedFiles()),compilerOptions:s.getCompilationSettings(),typeAcquisition:c,unresolvedImports:g,projectRootPath:s.getCurrentDirectory(),cachePath:d,kind:"discover"}}var QF;(s=>{function c(){throw new Error("No Project.")}s.ThrowNoProject=c;function g(){throw new Error("The project's language service is disabled.")}s.ThrowProjectLanguageServiceDisabled=g;function d(h,_){throw new Error(`Project '${_.getProjectName()}' does not contain document '${h}'`)}s.ThrowProjectDoesNotContainDocument=d})(QF||(QF={}));function op(s){return iu(s)}function sse(s,c,g){let d=Xp(s)?s:Xc(s,c);return g(d)}function Dpn(s){return s}function kpn(){let s=new Map;return{get(c){return s.get(c)},set(c,g){s.set(c,g)},contains(c){return s.has(c)},remove(c){s.delete(c)}}}function C4t(s){return/dev\/null\/inferredProject\d+\*/.test(s)}function _4t(s){return`/dev/null/inferredProject${s}*`}function y4t(s){return`/dev/null/autoImportProviderProject${s}*`}function b4t(s){return`/dev/null/auxiliaryProject${s}*`}function E4t(){return[]}var S4t=class QDi{constructor(c,g){this.host=c,this.pendingTimeouts=new Map,this.logger=g.hasLevel(3)?g:void 0}schedule(c,g,d){let h=this.pendingTimeouts.get(c);h&&this.host.clearTimeout(h),this.pendingTimeouts.set(c,this.host.setTimeout(QDi.run,g,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${h?", Cancelled earlier one":""}`)}cancel(c){let g=this.pendingTimeouts.get(c);return g?(this.host.clearTimeout(g),this.pendingTimeouts.delete(c)):!1}static run(c,g,d){g.pendingTimeouts.delete(c),g.logger&&g.logger.info(`Running: ${c}`),d()}},v4t=class XDi{constructor(c,g,d){this.host=c,this.delay=g,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(XDi.run,this.delay,this))}static run(c){c.timerId=void 0;let g=c.logger.hasLevel(2),d=g&&c.host.getMemoryUsage();if(c.host.gc(),g){let h=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${d}, after ${h}`)}}};function gst(s){let c=gp(s);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}var B4t={};o(B4t,{ClassificationType:()=>Art,CommandTypes:()=>w4t,CompletionTriggerKind:()=>urt,IndentStyle:()=>Zpn,JsxEmit:()=>Lpn,ModuleKind:()=>Vpn,ModuleResolutionKind:()=>Ppn,NewLineKind:()=>Wpn,OrganizeImportsMode:()=>lrt,PollingWatchKind:()=>Fpn,ScriptTarget:()=>Opn,SemicolonPreference:()=>grt,WatchDirectoryKind:()=>Gpn,WatchFileKind:()=>xpn});var w4t=(s=>(s.JsxClosingTag="jsxClosingTag",s.LinkedEditingRange="linkedEditingRange",s.Brace="brace",s.BraceFull="brace-full",s.BraceCompletion="braceCompletion",s.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",s.Change="change",s.Close="close",s.Completions="completions",s.CompletionInfo="completionInfo",s.CompletionsFull="completions-full",s.CompletionDetails="completionEntryDetails",s.CompletionDetailsFull="completionEntryDetails-full",s.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",s.CompileOnSaveEmitFile="compileOnSaveEmitFile",s.Configure="configure",s.Definition="definition",s.DefinitionFull="definition-full",s.DefinitionAndBoundSpan="definitionAndBoundSpan",s.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",s.Implementation="implementation",s.ImplementationFull="implementation-full",s.EmitOutput="emit-output",s.Exit="exit",s.FileReferences="fileReferences",s.FileReferencesFull="fileReferences-full",s.Format="format",s.Formatonkey="formatonkey",s.FormatFull="format-full",s.FormatonkeyFull="formatonkey-full",s.FormatRangeFull="formatRange-full",s.Geterr="geterr",s.GeterrForProject="geterrForProject",s.SemanticDiagnosticsSync="semanticDiagnosticsSync",s.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",s.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",s.NavBar="navbar",s.NavBarFull="navbar-full",s.Navto="navto",s.NavtoFull="navto-full",s.NavTree="navtree",s.NavTreeFull="navtree-full",s.DocumentHighlights="documentHighlights",s.DocumentHighlightsFull="documentHighlights-full",s.Open="open",s.Quickinfo="quickinfo",s.QuickinfoFull="quickinfo-full",s.References="references",s.ReferencesFull="references-full",s.Reload="reload",s.Rename="rename",s.RenameInfoFull="rename-full",s.RenameLocationsFull="renameLocations-full",s.Saveto="saveto",s.SignatureHelp="signatureHelp",s.SignatureHelpFull="signatureHelp-full",s.FindSourceDefinition="findSourceDefinition",s.Status="status",s.TypeDefinition="typeDefinition",s.ProjectInfo="projectInfo",s.ReloadProjects="reloadProjects",s.Unknown="unknown",s.OpenExternalProject="openExternalProject",s.OpenExternalProjects="openExternalProjects",s.CloseExternalProject="closeExternalProject",s.SynchronizeProjectList="synchronizeProjectList",s.ApplyChangedToOpenFiles="applyChangedToOpenFiles",s.UpdateOpen="updateOpen",s.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",s.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",s.Cleanup="cleanup",s.GetOutliningSpans="getOutliningSpans",s.GetOutliningSpansFull="outliningSpans",s.TodoComments="todoComments",s.Indentation="indentation",s.DocCommentTemplate="docCommentTemplate",s.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",s.NameOrDottedNameSpan="nameOrDottedNameSpan",s.BreakpointStatement="breakpointStatement",s.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",s.GetCodeFixes="getCodeFixes",s.GetCodeFixesFull="getCodeFixes-full",s.GetCombinedCodeFix="getCombinedCodeFix",s.GetCombinedCodeFixFull="getCombinedCodeFix-full",s.ApplyCodeActionCommand="applyCodeActionCommand",s.GetSupportedCodeFixes="getSupportedCodeFixes",s.GetApplicableRefactors="getApplicableRefactors",s.GetEditsForRefactor="getEditsForRefactor",s.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",s.PreparePasteEdits="preparePasteEdits",s.GetPasteEdits="getPasteEdits",s.GetEditsForRefactorFull="getEditsForRefactor-full",s.OrganizeImports="organizeImports",s.OrganizeImportsFull="organizeImports-full",s.GetEditsForFileRename="getEditsForFileRename",s.GetEditsForFileRenameFull="getEditsForFileRename-full",s.ConfigurePlugin="configurePlugin",s.SelectionRange="selectionRange",s.SelectionRangeFull="selectionRange-full",s.ToggleLineComment="toggleLineComment",s.ToggleLineCommentFull="toggleLineComment-full",s.ToggleMultilineComment="toggleMultilineComment",s.ToggleMultilineCommentFull="toggleMultilineComment-full",s.CommentSelection="commentSelection",s.CommentSelectionFull="commentSelection-full",s.UncommentSelection="uncommentSelection",s.UncommentSelectionFull="uncommentSelection-full",s.PrepareCallHierarchy="prepareCallHierarchy",s.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",s.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",s.ProvideInlayHints="provideInlayHints",s.WatchChange="watchChange",s.MapCode="mapCode",s.CopilotRelated="copilotRelated",s))(w4t||{}),xpn=(s=>(s.FixedPollingInterval="FixedPollingInterval",s.PriorityPollingInterval="PriorityPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s.UseFsEvents="UseFsEvents",s.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",s))(xpn||{}),Gpn=(s=>(s.UseFsEvents="UseFsEvents",s.FixedPollingInterval="FixedPollingInterval",s.DynamicPriorityPolling="DynamicPriorityPolling",s.FixedChunkSizePolling="FixedChunkSizePolling",s))(Gpn||{}),Fpn=(s=>(s.FixedInterval="FixedInterval",s.PriorityInterval="PriorityInterval",s.DynamicPriority="DynamicPriority",s.FixedChunkSize="FixedChunkSize",s))(Fpn||{}),Zpn=(s=>(s.None="None",s.Block="Block",s.Smart="Smart",s))(Zpn||{}),Lpn=(s=>(s.None="none",s.Preserve="preserve",s.ReactNative="react-native",s.React="react",s.ReactJSX="react-jsx",s.ReactJSXDev="react-jsxdev",s))(Lpn||{}),Vpn=(s=>(s.None="none",s.CommonJS="commonjs",s.AMD="amd",s.UMD="umd",s.System="system",s.ES6="es6",s.ES2015="es2015",s.ES2020="es2020",s.ES2022="es2022",s.ESNext="esnext",s.Node16="node16",s.Node18="node18",s.Node20="node20",s.NodeNext="nodenext",s.Preserve="preserve",s))(Vpn||{}),Ppn=(s=>(s.Classic="classic",s.Node="node",s.NodeJs="node",s.Node10="node10",s.Node16="node16",s.NodeNext="nodenext",s.Bundler="bundler",s))(Ppn||{}),Wpn=(s=>(s.Crlf="Crlf",s.Lf="Lf",s))(Wpn||{}),Opn=(s=>(s.ES3="es3",s.ES5="es5",s.ES6="es6",s.ES2015="es2015",s.ES2016="es2016",s.ES2017="es2017",s.ES2018="es2018",s.ES2019="es2019",s.ES2020="es2020",s.ES2021="es2021",s.ES2022="es2022",s.ES2023="es2023",s.ES2024="es2024",s.ESNext="esnext",s.JSON="json",s.Latest="esnext",s))(Opn||{}),T4t=class{constructor(s,c,g){this.host=s,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=g||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(s){this.svc=void 0,this.text=s,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(s,c,g){this.switchToScriptVersionCache().edit(s,c-s,g),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(s){return pe.assert(s!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=Lz(this.svc.getSnapshot())),this.text!==s?(this.useText(s),this.ownFileText=!1,!0):!1}reloadWithFileText(s){let{text:c,fileSize:g}=s||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(s):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=g,this.ownFileText=!s||s===this.info.fileName,this.ownFileText&&this.info.mTime===Rh.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||Rh).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var s;return((s=this.tryUseScriptVersionCache())==null?void 0:s.getSnapshot())||(this.textSnapshot??(this.textSnapshot=TVe.fromString(pe.checkDefined(this.text))))}getAbsolutePositionAndLineText(s){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(s);let g=this.getLineMap();return s<=g.length?{absolutePosition:g[s-1],lineText:this.text.substring(g[s-1],g[s])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(s){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(s);let g=this.getLineMap(),d=g[s],h=s+1c===void 0?c=this.host.readFile(g)||"":c;if(!w3(this.info.fileName)){let h=this.host.getFileSize?this.host.getFileSize(g):d().length;if(h>pst)return pe.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${g} for info ${this.info.fileName}: fileSize: ${h}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(g,h),{text:"",fileSize:h}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=Fst.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&this.getOrLoadText(),this.isOpen?(!this.svc&&!this.textSnapshot&&(this.svc=Fst.fromString(pe.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(pe.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return pe.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=cA(pe.checkDefined(this.text)))}getLineInfo(){let s=this.tryUseScriptVersionCache();if(s)return{getLineCount:()=>s.getLineCount(),getLineText:g=>s.getAbsolutePositionAndLineText(g+1).lineText};let c=this.getLineMap();return ket(this.text,c)}};function ppe(s){return s[0]==="^"||(s.includes("walkThroughSnippet:/")||s.includes("untitled:/"))&&gp(s)[0]==="^"||s.includes(":^")&&!s.includes(ag)}var R4t=class{constructor(s,c,g,d,h,_){this.host=s,this.fileName=c,this.scriptKind=g,this.hasMixedContent=d,this.path=h,this.containingProjects=[],this.isDynamic=ppe(c),this.textStorage=new T4t(s,this,_),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=g||GAe(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(s){this.textStorage.isOpen=!0,s!==void 0&&this.textStorage.reload(s)&&this.markContainingProjectsAsDirty()}close(s=!0){this.textStorage.isOpen=!1,s&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){pe.assert(!!this.containingProjects.length);let s=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=s.toPath(c),this.realpath!==this.path&&s.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(s){let c=!this.isAttached(s);return c&&(this.containingProjects.push(s),s.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),s.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(s){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===s;case 2:return this.containingProjects[0]===s||this.containingProjects[1]===s;default:return k(this.containingProjects,s)}}detachFromProject(s){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===s?(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===s&&(s.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:Ql(this.containingProjects,s)&&s.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let s of this.containingProjects){s9(s)&&s.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=s.getRootFilesMap().get(this.path);s.removeFile(this,!1,!1),s.onFileAddedOrRemoved(this.isSymlink()),c&&!ose(s)&&s.addMissingFileRoot(c.fileName)}St(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return QF.ThrowNoProject();case 1:return i2e(this.containingProjects[0])||n2e(this.containingProjects[0])?QF.ThrowNoProject():this.containingProjects[0];default:let s,c,g,d;for(let h=0;h!s.isOrphan())}lineToTextSpan(s){return this.textStorage.lineToTextSpan(s)}lineOffsetToPosition(s,c,g){return this.textStorage.lineOffsetToPosition(s,c,g)}positionToLineOffset(s){GWs(s);let c=this.textStorage.positionToLineOffset(s);return FWs(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Xs(this.sourceMapFilePath)&&(Cv(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function GWs(s){pe.assert(typeof s=="number",`Expected position ${s} to be a number.`),pe.assert(s>=0,"Expected position to be non-negative.")}function FWs(s){pe.assert(typeof s.line=="number",`Expected line ${s.line} to be a number.`),pe.assert(typeof s.offset=="number",`Expected offset ${s.offset} to be a number.`),pe.assert(s.line>0,`Expected line to be non-${s.line===0?"zero":"negative"}`),pe.assert(s.offset>0,`Expected offset to be non-${s.offset===0?"zero":"negative"}`)}function N4t(s){return jt(s.containingProjects,n2e)}function D4t(s){return jt(s.containingProjects,i2e)}var fpe=(s=>(s[s.Inferred=0]="Inferred",s[s.Configured=1]="Configured",s[s.External=2]="External",s[s.AutoImportProvider=3]="AutoImportProvider",s[s.Auxiliary=4]="Auxiliary",s))(fpe||{});function t2e(s,c=!1){let g={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(let d of s){let h=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:g.js+=1,g.jsSize+=h;break;case 2:g.jsx+=1,g.jsxSize+=h;break;case 3:PC(d.fileName)?(g.dts+=1,g.dtsSize+=h):(g.ts+=1,g.tsSize+=h);break;case 4:g.tsx+=1,g.tsxSize+=h;break;case 7:g.deferred+=1,g.deferredSize+=h;break}}return g}function ZWs(s){let c=t2e(s.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function k4t(s){let c=t2e(s.getRootScriptInfos());return c.ts===0&&c.tsx===0}function x4t(s){let c=t2e(s.getScriptInfos());return c.ts===0&&c.tsx===0}function G4t(s){return!s.some(c=>aA(c,".ts")&&!PC(c)||aA(c,".tsx"))}function F4t(s){return s.generatedFilePath!==void 0}function Mpn(s,c){if(s===c||(s||zm).length===0&&(c||zm).length===0)return!0;let g=new Map,d=0;for(let h of s)g.get(h)!==!0&&(g.set(h,!0),d++);for(let h of c){let _=g.get(h);if(_===void 0)return!1;_===!0&&(g.set(h,!1),d--)}return d===0}function LWs(s,c){return s.enable!==c.enable||!Mpn(s.include,c.include)||!Mpn(s.exclude,c.exclude)}function VWs(s,c){return TF(s)!==TF(c)}function PWs(s,c){return s===c?!1:!Sc(s,c)}var zz=class JDi{constructor(c,g,d,h,_,S,R,T,W,V){switch(this.projectKind=g,this.projectService=d,this.compilerOptions=S,this.compileOnSaveEnabled=R,this.watchOptions=T,this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.initialLoadPending=!1,this.dirty=!1,this.typingFiles=zm,this.moduleSpecifierCache=iJt(this),this.createHash=$i(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=YP.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,d.logger.info(`Creating ${fpe[g]}Project: ${c}, currentDirectory: ${V}`),this.projectName=c,this.directoryStructureHost=W,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(V),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new uYt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||TF(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=DPe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:pe.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let M=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=ee=>this.writeLog(ee):M.trace&&(this.trace=ee=>M.trace(ee)),this.realpath=$i(M,M.realpath),this.preferNonRecursiveWatch=this.projectService.canUseWatchEvents||M.preferNonRecursiveWatch,this.resolutionCache=Ttt(this,this.currentDirectory,!0),this.languageService=gYt(this,this.projectService.documentRegistry,this.projectService.serverMode),_&&this.disableLanguageService(_),this.markAsDirty(),n2e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getRedirectFromSourceFile(c){}isNonTsProject(){return _v(this),x4t(this)}isJsOnlyProject(){return _v(this),ZWs(this)}static resolveModule(c,g,d,h){return JDi.importServicePluginSync({name:c},[g],d,h).resolvedModule}static importServicePluginSync(c,g,d,h){pe.assertIsDefined(d.require);let _,S;for(let R of g){let T=Dp(d.resolvePath(Ro(R,"node_modules")));h(`Loading ${c.name} from ${R} (resolved to ${T})`);let W=d.require(T,c.name);if(!W.error){S=W.module;break}let V=W.error.stack||W.error.message||JSON.stringify(W.error);(_??(_=[])).push(`Failed to load module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}static async importServicePluginAsync(c,g,d,h){pe.assertIsDefined(d.importPlugin);let _,S;for(let R of g){let T=Ro(R,"node_modules");h(`Dynamically importing ${c.name} from ${R} (resolved to ${T})`);let W;try{W=await d.importPlugin(T,c.name)}catch(M){W={module:void 0,error:M}}if(!W.error){S=W.module;break}let V=W.error.stack||W.error.message||JSON.stringify(W.error);(_??(_=[])).push(`Failed to dynamically import module '${c.name}' from ${T}: ${V}`)}return{pluginConfigEntry:c,resolvedModule:S,errorLogs:_}}isKnownTypesPackageName(c){return this.projectService.typingsInstaller.isKnownTypesPackageName(c)}installPackage(c){return this.projectService.typingsInstaller.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}getSymlinkCache(){return this.symlinks||(this.symlinks=_be(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFilesMap.size)return E;let c;return this.rootFilesMap.forEach(g=>{(this.languageServiceEnabled||g.info&&g.info.isScriptOpen())&&(c||(c=[])).push(g.fileName)}),Or(c,this.typingFiles)||E}getOrCreateScriptInfoAndAttachToProject(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(g){let d=this.rootFilesMap.get(g.path);d&&d.info!==g&&(d.info=g),g.attachToProject(this)}return g}getScriptKind(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&g.scriptKind}getScriptVersion(c){let g=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return g&&g.getLatestVersion()}getScriptSnapshot(c){let g=this.getOrCreateScriptInfoAndAttachToProject(c);if(g)return g.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=Mo(iu(this.projectService.getExecutingFilePath()));return Ro(c,Hs(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,g,d,h,_){return this.directoryStructureHost.readDirectory(c,g,d,h,_)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,g){return this.projectService.host.writeFile(c,g)}fileExists(c){let g=this.toPath(c);return!!this.projectService.getScriptInfoForPath(g)||!this.isWatchedMissingFile(g)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,g,d,h,_,S){return this.resolutionCache.resolveModuleNameLiterals(c,g,d,h,_,S)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,g,d,h,_,S)}resolveLibrary(c,g,d,h){return this.resolutionCache.resolveLibrary(c,g,d,h)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return Ou(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),jm.FailedLookupLocations,this)}watchAffectingFileLocation(c,g){return this.projectService.watchFactory.watchFile(c,g,2e3,this.projectService.getWatchOptions(this),jm.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)})}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(c,g,d){return this.projectService.watchFactory.watchDirectory(c,g,d,this.projectService.getWatchOptions(this),jm.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Me(this.projectErrors,c=>!c.file)||zm}getAllProjectErrors(){return this.projectErrors||zm}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&_v(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,g){return this.projectService.getDocumentPositionMapper(this,c,g)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(_v(this),this.builderState=nR.create(this.program,this.builderState,!0),Xt(nR.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),g=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(g.path))?g.fileName:void 0)):[]}emitFile(c,g){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:zm};let{emitSkipped:d,diagnostics:h,outputFiles:_}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let S of _){let R=Xc(S.name,this.currentDirectory);g(R,S.text,S.writeByteOrderMark)}if(this.builderState&&Ly(this.compilerOptions)){let S=_.filter(R=>PC(R.name));if(S.length===1){let R=this.program.getSourceFile(c.fileName),T=this.projectService.host.createHash?this.projectService.host.createHash(S[0].text):ry(S[0].text);nR.updateSignatureOfFile(this.builderState,T,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:h}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(pe.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(c){return!c.enable||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return bo(er(this.plugins,g=>{if(typeof g.module.getExternalFiles=="function")try{return g.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let g=this.program.getCompilerOptions();return c===g.configFilePath?g.configFile:this.getSourceFile(c)}close(){var c;this.typingsCache&&this.projectService.typingsInstaller.onProjectClosed(this),this.typingsCache=void 0,this.closeWatchingTypingLocations(),this.cleanupProgram(),F(this.externalFiles,g=>this.detachScriptInfoIfNotRoot(g)),this.rootFilesMap.forEach(g=>{var d;return(d=g.info)==null?void 0:d.detachFromProject(this)}),this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,(c=this.packageJsonWatches)==null||c.forEach(g=>{g.projects.delete(this),g.close()}),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(Fy(this.missingFilesMap,dv),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(c){let g=this.projectService.getScriptInfo(c);g&&!this.isRoot(g)&&g.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&Do(lr(this.rootFilesMap.values(),c=>{var g;return(g=c.info)==null?void 0:g.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return Do(lr(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?At(this.program.getSourceFiles(),c=>{let g=this.projectService.getScriptInfoForPath(c.resolvedPath);return pe.assert(!!g,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),g}):this.getRootScriptInfos()}getExcludedFiles(){return zm}getFileNames(c,g){if(!this.program)return[];if(!this.languageServiceEnabled){let h=this.getRootFiles();if(this.compilerOptions){let _=AYt(this.compilerOptions);_&&(h||(h=[])).push(_)}return h}let d=[];for(let h of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(h)||d.push(h.fileName);if(!g){let h=this.program.getCompilerOptions().configFile;if(h&&(d.push(h.fileName),h.extendedSourceFiles))for(let _ of h.extendedSourceFiles)d.push(_)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(g=>({fileName:g,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(g)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let g=this.program.getCompilerOptions().configFile;if(g){if(c===g.fileName)return!0;if(g.extendedSourceFiles){for(let d of g.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let g=this.program.getSourceFileByPath(c.path);return!!g&&g.resolvedPath===c.path}containsFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!g)?this.containsScriptInfo(d):!1}isRoot(c){var g,d;return((d=(g=this.rootFilesMap)==null?void 0:g.get(c.path))==null?void 0:d.info)===c}addRoot(c,g){pe.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:g||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let g=this.projectService.toPath(c);this.rootFilesMap.set(g,{fileName:c}),this.markAsDirty()}removeFile(c,g,d){this.isRoot(c)&&this.removeRoot(c),g?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){this.markAutoImportProviderAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.markAutoImportProviderAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}onReleaseOldSourceFile(c,g,d,h){(!h||c.resolvedPath===c.path&&h.resolvedPath!==c.path)&&this.detachScriptInfoFromProject(c.fileName,d)}updateFromProject(){_v(this)}updateGraph(){var c,g;(c=ki)==null||c.push(ki.Phase.Session,"updateGraph",{name:this.projectName,kind:fpe[this.projectKind]}),this.resolutionCache.startRecordingFilesWithChangedResolutions();let d=this.updateGraphWorker(),h=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let _=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||zm;for(let R of _)this.cachedUnresolvedImportsPerFile.delete(R);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((d||_.length)&&(this.lastCachedUnresolvedImportsList=WWs(this.program,this.cachedUnresolvedImportsPerFile)),this.enqueueInstallTypingsForProject(h)):this.lastCachedUnresolvedImportsList=void 0;let S=this.projectProgramVersion===0&&d;return d&&this.projectProgramVersion++,h&&this.markAutoImportProviderAsDirty(),S&&this.getPackageJsonAutoImportProvider(),(g=ki)==null||g.pop(),!d}enqueueInstallTypingsForProject(c){let g=this.getTypeAcquisition();if(!g||!g.enable||this.projectService.typingsInstaller===aWe)return;let d=this.typingsCache;(c||!d||LWs(g,d.typeAcquisition)||VWs(this.getCompilationSettings(),d.compilerOptions)||PWs(this.lastCachedUnresolvedImportsList,d.unresolvedImports))&&(this.typingsCache={compilerOptions:this.getCompilationSettings(),typeAcquisition:g,unresolvedImports:this.lastCachedUnresolvedImportsList},this.projectService.typingsInstaller.enqueueInstallTypingsRequest(this,g,this.lastCachedUnresolvedImportsList))}updateTypingFiles(c,g,d,h){this.typingsCache={compilerOptions:c,typeAcquisition:g,unresolvedImports:d};let _=!g||!g.enable?zm:bo(h);q0(_,this.typingFiles,ld(!this.useCaseSensitiveFileNames()),Dc,S=>this.detachScriptInfoFromProject(S))&&(this.typingFiles=_,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Fy(this.typingWatchers,dv),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:BVe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let g=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(h,_)=>{let S=this.toPath(h);if(g.delete(S),!this.typingWatchers.has(S)){let R=_==="FileWatcher"?jm.TypingInstallerLocationFile:jm.TypingInstallerLocationDirectory;this.typingWatchers.set(S,zEe(S)?_==="FileWatcher"?this.projectService.watchFactory.watchFile(h,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),R,this):this.projectService.watchFactory.watchDirectory(h,T=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!aA(T,".json"))return this.writeLog("Ignoring files that are not *.json");if(qf(T,Ro(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),R,this):(this.writeLog(`Skipping watcher creation at ${h}:: ${Rst(R,this)}`),Vie))}};for(let h of c){let _=gp(h);if(_==="package.json"||_==="bower.json"){d(h,"FileWatcher");continue}if(Jh(this.currentDirectory,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){let S=h.indexOf(ag,this.currentDirectory.length+1);d(S!==-1?h.substr(0,S):h,"DirectoryWatcher");continue}if(Jh(this.projectService.typingsInstaller.globalTypingsCacheLocation,h,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(h,"DirectoryWatcher")}g.forEach((h,_)=>{h.close(),this.typingWatchers.delete(_)})}getCurrentProgram(){return this.program}removeExistingTypings(c){if(!c.length)return c;let g=R9e(this.getCompilerOptions(),this);return Me(c,d=>!g.includes(d))}updateGraphWorker(){var c,g;let d=this.languageService.getCurrentProgram();pe.assert(d===this.program),pe.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let h=Fg(),{hasInvalidatedResolutions:_,hasInvalidatedLibResolutions:S}=this.resolutionCache.createHasInvalidatedResolutions(As,As);this.hasInvalidatedResolutions=_,this.hasInvalidatedLibResolutions=S,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=ki)==null||c.push(ki.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(g=ki)==null||g.pop(),pe.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,this.rootFilesMap.forEach((V,M)=>{var ee;let re=this.program.getSourceFileByPath(M),ge=V.info;!re||((ee=V.info)==null?void 0:ee.path)===re.resolvedPath||(V.info=this.projectService.getScriptInfo(re.fileName),pe.assert(V.info.isAttached(this)),ge?.detachFromProject(this))}),rtt(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(V,M)=>this.addMissingFileWatcher(V,M)),this.generatedFilesMap){let V=this.compilerOptions.outFile;F4t(this.generatedFilesMap)?(!V||!this.isValidGeneratedFileWatcher(s0(V)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():V?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((M,ee)=>{let re=this.program.getSourceFileByPath(ee);(!re||re.resolvedPath!==ee||!this.isValidGeneratedFileWatcher(wne(re.fileName,this.compilerOptions,this.program),M))&&(Cv(M),this.generatedFilesMap.delete(ee))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&SB(this.changedFilesForExportMapCache,V=>{let M=d.getSourceFileByPath(V),ee=this.program.getSourceFileByPath(V);return!M||!ee?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(M,ee,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let T=this.externalFiles||zm;this.externalFiles=this.getExternalFiles(),q0(this.externalFiles,T,ld(!this.useCaseSensitiveFileNames()),V=>{let M=this.projectService.getOrCreateScriptInfoNotOpenedByClient(V,this.currentDirectory,this.directoryStructureHost,!1);M?.attachToProject(this)},V=>this.detachScriptInfoFromProject(V));let W=Fg()-h;return this.sendPerformanceEvent("UpdateGraph",W),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${xc[this.program.structureIsReused]}`:""} Elapsed: ${W}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,g){this.projectService.sendPerformanceEvent(c,g)}detachScriptInfoFromProject(c,g){let d=this.projectService.getScriptInfo(c);d&&(d.detachFromProject(this),g||this.resolutionCache.removeResolutionsOfFile(d.path))}addMissingFileWatcher(c,g){var d;if(s9(this)){let _=this.projectService.configFileExistenceInfoCache.get(c);if((d=_?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return Vie}let h=this.projectService.watchFactory.watchFile(Xc(g,this.currentDirectory),(_,S)=>{s9(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(_,c,S),S===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),h.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),jm.MissingFile,this);return h}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,g){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(g);if(this.generatedFilesMap){if(F4t(this.generatedFilesMap)){pe.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),jm.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,g){return this.toPath(c)===g.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(F4t(this.generatedFilesMap)?Cv(this.generatedFilesMap):Fy(this.generatedFilesMap,Cv),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let g=this.projectService.getScriptInfoForPath(this.toPath(c));return g&&!g.isAttached(this)?QF.ThrowProjectDoesNotContainDocument(c,this):g}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,g,d){if(this.initialLoadPending)return` Files (0) InitialLoadPending -`;if(!this.program)return` Files (0) NoProgram -`;let h=this.program.getSourceFiles(),_=` Files (${h.length}) -`;if(c){for(let S of h)_+=` ${S.fileName}${d?` ${S.version} ${JSON.stringify(S.text)}`:""} -`;g&&(_+=` - -`,xtt(this.program,S=>_+=` ${S} -`))}return _}print(c,g,d){var h;this.writeLog(`Project '${this.projectName}' (${fpe[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),g&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(h=this.noDtsResolutionProject)==null||h.print(!1,!1,!1)}setCompilerOptions(c){var g;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(g=this.noDtsResolutionProject)==null||g.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),NJ(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,g){var d,h;let _=g?T=>Do(T.entries(),([W,V])=>({fileName:W,isSourceOfProjectReferenceRedirect:V})):T=>Do(T.keys());this.initialLoadPending||_v(this);let S={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:ose(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:S,projectErrors:this.getGlobalProjectErrors()};let T=this.lastReportedFileNames,W=((d=this.externalFiles)==null?void 0:d.map(Ie=>({fileName:op(Ie),isSourceOfProjectReferenceRedirect:!1})))||zm,V=Ru(this.getFileNamesWithRedirectInfo(!!g).concat(W),Ie=>Ie.fileName,Ie=>Ie.isSourceOfProjectReferenceRedirect),M=new Map,ee=new Map,re=R?Do(R.keys()):[],ge=[];return Dh(V,(Ie,_e)=>{T.has(_e)?g&&Ie!==T.get(_e)&&ge.push({fileName:_e,isSourceOfProjectReferenceRedirect:Ie}):M.set(_e,Ie)}),Dh(T,(Ie,_e)=>{V.has(_e)||ee.set(_e,Ie)}),this.lastReportedFileNames=V,this.lastReportedVersion=this.projectProgramVersion,{info:S,changes:{added:_(M),removed:_(ee),updated:g?re.map(Ie=>({fileName:Ie,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ie)})):re,updatedRedirects:g?ge:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let T=this.getFileNamesWithRedirectInfo(!!g),W=((h=this.externalFiles)==null?void 0:h.map(M=>({fileName:op(M),isSourceOfProjectReferenceRedirect:!1})))||zm,V=T.concat(W);return this.lastReportedFileNames=Ru(V,M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:S,files:g?V:V.map(M=>M.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Ro(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let h of this.projectService.globalPlugins)h&&(c.plugins&&c.plugins.some(_=>_.name===h)||(this.projectService.logger.info(`Loading global plugin ${h}`),this.enablePlugin({name:h,global:!0},d)))}enablePlugin(c,g){this.projectService.requestEnablePlugin(this,c,g)}enableProxy(c,g){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${g.name} because it did not expose a proper factory function`);return}let d={config:g,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},h=c({typescript:Epn}),_=h.create(d);for(let S of Object.keys(this.languageService))S in _||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${S} in created LS. Patching.`),_[S]=this.languageService[S]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=_,this.plugins.push({name:g.name,module:h})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,g){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(g)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,g){return this.projectService.serverMode!==0?zm:this.projectService.getPackageJsonsVisibleToFile(c,this,g)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c,this)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(Ro(this.currentDirectory,Fde),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=Ant(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||_1e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,g;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:(g=this.projectService.host.trace)==null?void 0:g.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,g,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(_v(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let h=this.includePackageJsonAutoImports();if(h){(c=ki)==null||c.push(ki.Phase.Session,"getPackageJsonAutoImportProvider");let _=Fg();if(this.autoImportProviderHost=P4t.create(h,this,this.getHostForAutoImportProvider())??!1,this.autoImportProviderHost)return _v(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",Fg()-_),(g=ki)==null||g.pop(),this.autoImportProviderHost.getCurrentProgram();(d=ki)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!Dh(this.projectService.openFiles,(c,g)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(g))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return pe.assert(this.projectService.serverMode===0),this.noDtsResolutionProject??(this.noDtsResolutionProject=new L4t(this)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,g,d){var h,_,S,R;let T=this.program,W=pe.checkDefined((h=this.program)==null?void 0:h.getSourceFile(c),"Expected file to be part of program"),V=pe.checkDefined(W.getFullText());(_=this.getScriptInfo(c))==null||_.editContent(0,V.length,g),this.updateGraph();try{d(this.program,T,(S=this.program)==null?void 0:S.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,g.length,V)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0}}};function WWs(s,c){var g,d;let h=s.getSourceFiles();(g=ki)==null||g.push(ki.Phase.Session,"getUnresolvedImports",{count:h.length});let _=s.getTypeChecker().getAmbientModules().map(R=>l2(R.getName())),S=cl(er(h,R=>OWs(s,R,_,c)));return(d=ki)==null||d.pop(),S}function OWs(s,c,g,d){return cr(d,c.path,()=>{let h;return s.forEachResolvedModule(({resolvedModule:_},S)=>{(!_||!ez(_.extension))&&!Xr(S)&&!g.some(R=>R===S)&&(h=Ft(h,TEe(S).packageName))},c),h||zm})}var Z4t=class extends zz{constructor(s,c,g,d,h,_){super(s.newInferredProjectName(),0,s,!1,void 0,c,!1,g,s.host,h),this._isJsInferredProject=!1,this.typeAcquisition=_,this.projectRootPath=d&&s.toCanonicalFileName(d),!d&&!s.useSingleInferredProject&&(this.canonicalCurrentDirectory=s.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(s){s!==this._isJsInferredProject&&(this._isJsInferredProject=s,this.setCompilerOptions())}setCompilerOptions(s){if(!s&&!this.getCompilationSettings())return;let c=Drt(s||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(s){pe.assert(s.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(s),!this._isJsInferredProject&&s.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!s.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(s)}removeRoot(s){this.projectService.stopWatchingConfigFilesForScriptInfo(s),super.removeRoot(s),!this.isOrphan()&&this._isJsInferredProject&&s.isJavaScript()&&ue(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){F(this.getRootScriptInfos(),s=>this.projectService.stopWatchingConfigFilesForScriptInfo(s)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:k4t(this),include:E,exclude:E}}},L4t=class extends zz{constructor(s){super(s.projectService.newAuxiliaryProjectName(),4,s.projectService,!1,void 0,s.getCompilerOptionsForNoDtsResolutionProject(),!1,void 0,s.projectService.host,s.currentDirectory)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},V4t=class Kkr extends zz{constructor(c,g,d){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,!1,void 0,d,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=g,this.useSourceOfProjectReferenceRedirect=$i(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=$i(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,g,d,h){var _,S;if(!c)return E;let R=g.getCurrentProgram();if(!R)return E;let T=Fg(),W,V,M=Ro(g.currentDirectory,Fde),ee=g.getPackageJsonsForAutoImport(Ro(g.currentDirectory,M));for(let Ze of ee)(_=Ze.dependencies)==null||_.forEach((We,Ue)=>Ee(Ue)),(S=Ze.peerDependencies)==null||S.forEach((We,Ue)=>Ee(Ue));let re=0;if(W){let Ze=g.getSymlinkCache();for(let We of Do(W.keys())){if(c===2&&re>=this.maxDependencies)return g.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),E;let Ue=set(We,g.currentDirectory,h,d,R.getModuleResolutionCache());if(Ue){let Ye=Ne(Ue,R,Ze);if(Ye){re+=_e(Ye);continue}}if(!F([g.currentDirectory,g.getGlobalTypingsCacheLocation()],Ye=>{if(Ye){let Tt=set(`@types/${We}`,Ye,h,d,R.getModuleResolutionCache());if(Tt){let ot=Ne(Tt,R,Ze);return re+=_e(ot),!0}}})&&Ue&&h.allowJs&&h.maxNodeModuleJsDepth){let Ye=Ne(Ue,R,Ze,!0);re+=_e(Ye)}}}let ge=R.getResolvedProjectReferences(),Ie=0;return ge?.length&&g.projectService.getHostPreferences().includeCompletionsForModuleExports&&ge.forEach(Ze=>{if(Ze?.commandLine.options.outFile)Ie+=_e(Te([fN(Ze.commandLine.options.outFile,".d.ts")]));else if(Ze){let We=FA(()=>RU(Ze.commandLine,!g.useCaseSensitiveFileNames()));Ie+=_e(Te(Xt(Ze.commandLine.fileNames,Ue=>!PC(Ue)&&!aA(Ue,".json")&&!R.getSourceFile(Ue)?kde(Ue,Ze.commandLine,!g.useCaseSensitiveFileNames(),We):void 0)))}}),V?.size&&g.log(`AutoImportProviderProject: found ${V.size} root files in ${re} dependencies ${Ie} referenced projects in ${Fg()-T} ms`),V?Do(V.values()):E;function _e(Ze){return Ze?.length?(V??(V=new Set),Ze.forEach(We=>V.add(We)),1):0}function Ee(Ze){Ac(Ze,"@types/")||(W||(W=new Set)).add(Ze)}function Ne(Ze,We,Ue,$e){var Ye;let Tt=Aet(Ze,h,d,We.getModuleResolutionCache(),$e);if(Tt){let ot=(Ye=d.realpath)==null?void 0:Ye.call(d,Ze.packageDirectory),Qe=ot?g.toPath(ot):void 0,mt=Qe&&Qe!==g.toPath(Ze.packageDirectory);return mt&&Ue.setSymlinkedDirectory(Ze.packageDirectory,{real:hp(ot),realPath:hp(Qe)}),Te(Tt,mt?ht=>ht.replace(Ze.packageDirectory,ot):void 0)}}function Te(Ze,We){return Xt(Ze,Ue=>{let $e=We?We(Ue):Ue;if(!R.getSourceFile($e)&&!(We&&R.getSourceFile(Ue)))return $e})}}static create(c,g,d){if(c===0)return;let h={...g.getCompilerOptions(),...this.compilerOptionsOverrides},_=this.getRootFileNames(c,g,d,h);if(_.length)return new Kkr(g,_,h)}isEmpty(){return!jt(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=Kkr.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let g=this.getCurrentProgram(),d=super.updateGraph();return g&&g!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||E}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};V4t.maxDependencies=10,V4t.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:E,lib:E,noLib:!0};var P4t=V4t,W4t=class extends zz{constructor(s,c,g,d,h){super(s,1,g,!1,void 0,{},!1,void 0,d,Mo(s)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.initialLoadPending=!0,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(s){this.compilerHost=s}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(s){let c=op(s),g=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(g);return d||this.projectService.configFileExistenceInfoCache.set(g,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,g,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(s){this.releaseParsedConfig(this.projectService.toCanonicalFileName(op(s)))}releaseParsedConfig(s){this.projectService.stopWatchingWildCards(s,this),this.projectService.releaseParsedConfig(s,this)}updateGraph(){if(this.deferredClose)return!1;let s=this.dirty;this.initialLoadPending=!1;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let g;switch(c){case 1:this.openFileWatchTriggered.clear(),g=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=pe.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),g=!0;break;default:g=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||g&&(!s||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),g}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(s){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),g=d=>{try{let h=LP(`${d}/`);if(!h)return d;let _=h.findPackageLocator(`${d}/`),{packageLocation:S}=h.getPackageInformation(_),R=Ro(_.name,mp(S,d,!1));return h.resolveToUnqualified(R,`${c}/`)}catch{return d}};s=s?.map(d=>({...d,path:g(d.path)}))}this.projectReferences=s,this.potentialProjectReferences=void 0}setPotentialProjectReference(s){pe.assert(this.initialLoadPending),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(s)}getRedirectFromSourceFile(s){let c=this.getCurrentProgram();return c&&c.getRedirectFromSourceFile(s)}forEachResolvedProjectReference(s){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(s)}enablePluginsWithOptions(s){var c;if(this.plugins.length=0,!((c=s.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let g=this.projectService.host;if(!g.require&&!g.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let h=Mo(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${h} to search paths`),d.unshift(h)}if(s.plugins)for(let h of s.plugins)this.enablePlugin(h,d);return this.enableGlobalPlugins(s)}getGlobalProjectErrors(){return Me(this.projectErrors,s=>!s.file)||zm}getAllProjectErrors(){return this.projectErrors||zm}setProjectErrors(s){this.projectErrors=s}close(){this.projectService.configFileExistenceInfoCache.forEach((s,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return mde(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(s){this.parsedCommandLine=s,S9e(s.fileNames,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,vEe(s.raw))}},Ast=class extends zz{constructor(s,c,g,d,h,_,S){super(s,2,c,!0,d,g,h,S,c.host,Mo(_||Dp(s))),this.externalProjectName=s,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let s=super.updateGraph();return this.projectService.sendProjectTelemetry(this),s}getExcludedFiles(){return this.excludedFiles}};function ose(s){return s.projectKind===0}function s9(s){return s.projectKind===1}function r2e(s){return s.projectKind===2}function n2e(s){return s.projectKind===3||s.projectKind===4}function i2e(s){return s9(s)&&!!s.deferredClose}var dst=20*1024*1024,pst=4*1024*1024,sWe="projectsUpdatedInBackground",fst="projectLoadingStart",Ist="projectLoadingFinish",hst="largeFileReferenced",mst="configFileDiag",Cst="projectLanguageServiceState",_st="projectInfo",O4t="openFileInfo",yst="createFileWatcher",bst="createDirectoryWatcher",Est="closeFileWatcher",Hpn="*ensureProjectForOpenFiles*";function Ypn(s){let c=new Map;for(let g of s)if(typeof g.type=="object"){let d=g.type;d.forEach(h=>{pe.assert(typeof h=="number")}),c.set(g.name,d)}return c}var MWs=Ypn(Ww),HWs=Ypn(wz),YWs=new Map(Object.entries({none:0,block:1,smart:2})),M4t={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}};function ase(s){return Xs(s.indentStyle)&&(s.indentStyle=YWs.get(s.indentStyle.toLowerCase()),pe.assert(s.indentStyle!==void 0)),s}function oWe(s){return MWs.forEach((c,g)=>{let d=s[g];Xs(d)&&(s[g]=c.get(d.toLowerCase()))}),s}function s2e(s,c){let g,d;return wz.forEach(h=>{let _=s[h.name];if(_===void 0)return;let S=HWs.get(h.name);(g||(g={}))[h.name]=S?Xs(_)?S.get(_.toLowerCase()):_:vU(h,_,c||"",d||(d=[]))}),g&&{watchOptions:g,errors:d}}function H4t(s){let c;return p9e.forEach(g=>{let d=s[g.name];d!==void 0&&((c||(c={}))[g.name]=d)}),c}function Sst(s){return Xs(s)?vst(s):s}function vst(s){switch(s){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function Y4t(s){let{lazyConfiguredProjectsFromExternalProject:c,...g}=s;return g}var Bst={getFileName:s=>s,getScriptKind:(s,c)=>{let g;if(c){let d=gE(s);d&&jt(c,h=>h.extension===d?(g=h.scriptKind,!0):!1)}return g},hasMixedContent:(s,c)=>jt(c,g=>g.isMixedContent&&aA(s,g.extension))},wst={getFileName:s=>s.fileName,getScriptKind:s=>Sst(s.scriptKind),hasMixedContent:s=>!!s.hasMixedContent};function Qpn(s,c){for(let g of c)if(g.getProjectName()===s)return g}var aWe={isKnownTypesPackageName:As,installPackage:il,enqueueInstallTypingsRequest:Dc,attach:Dc,onProjectClosed:Dc,globalTypingsCacheLocation:void 0},Q4t={close:Dc};function Xpn(s,c){if(!c)return;let g=c.get(s.path);if(g!==void 0)return Tst(s)?g&&!Xs(g)?g.get(s.fileName):void 0:Xs(g)||!g?g:g.get(!1)}function Jpn(s){return!!s.containingProjects}function Tst(s){return!!s.configFileInfo}var X4t=(s=>(s[s.FindOptimized=0]="FindOptimized",s[s.Find=1]="Find",s[s.CreateReplayOptimized=2]="CreateReplayOptimized",s[s.CreateReplay=3]="CreateReplay",s[s.CreateOptimized=4]="CreateOptimized",s[s.Create=5]="Create",s[s.ReloadOptimized=6]="ReloadOptimized",s[s.Reload=7]="Reload",s))(X4t||{});function Upn(s){return s-1}function Kpn(s,c,g,d,h,_,S,R,T){for(var W;;){if(c.parsedCommandLine&&(R&&!c.parsedCommandLine.options.composite||c.parsedCommandLine.options.disableSolutionSearching))return;let V=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:s.path,configFileInfo:!0,isForDefaultProject:!R},d<=3);if(!V)return;let M=c.projectService.findCreateOrReloadConfiguredProject(V,d,h,_,R?void 0:s.fileName,S,R,T);if(!M)return;!M.project.parsedCommandLine&&((W=c.parsedCommandLine)!=null&&W.options.composite)&&M.project.setPotentialProjectReference(c.canonicalConfigFilePath);let ee=g(M);if(ee)return ee;c=M.project}}function jpn(s,c,g,d,h,_,S,R){let T=c.options.disableReferencedProjectLoad?0:d,W;return F(c.projectReferences,V=>{var M;let ee=op(xz(V)),re=s.projectService.toCanonicalFileName(ee),ge=R?.get(re);if(ge!==void 0&&ge>=T)return;let Ie=s.projectService.configFileExistenceInfoCache.get(re),_e=T===0?Ie?.exists||(M=s.resolvedChildConfigs)!=null&&M.has(re)?Ie.config.parsedCommandLine:void 0:s.getParsedCommandLine(ee);if(_e&&T!==d&&T>2&&(_e=s.getParsedCommandLine(ee)),!_e)return;let Ee=s.projectService.findConfiguredProjectByProjectName(ee,_);if(!(T===2&&!Ie&&!Ee)){switch(T){case 6:Ee&&Ee.projectService.reloadConfiguredProjectOptimized(Ee,h,S);case 4:(s.resolvedChildConfigs??(s.resolvedChildConfigs=new Set)).add(re);case 2:case 0:if(Ee||T!==0){let Ne=g(Ie??s.projectService.configFileExistenceInfoCache.get(re),Ee,ee,h,s,re);if(Ne)return Ne}break;default:pe.assertNever(T)}(R??(R=new Map)).set(re,T),(W??(W=[])).push(_e)}})||F(W,V=>V.projectReferences&&jpn(s,V,g,T,h,_,S,R))}function J4t(s,c,g,d,h){let _=!1,S;switch(c){case 2:case 3:z4t(s)&&(S=s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath));break;case 4:if(S=j4t(s),S)break;case 5:_=XWs(s,g);break;case 6:if(s.projectService.reloadConfiguredProjectOptimized(s,d,h),S=j4t(s),S)break;case 7:_=s.projectService.reloadConfiguredProjectClearingSemanticCache(s,d,h);break;case 0:case 1:break;default:pe.assertNever(c)}return{project:s,sentConfigFileDiag:_,configFileExistenceInfo:S,reason:d}}function zpn(s,c){return s.initialLoadPending?(s.potentialProjectReferences&&SB(s.potentialProjectReferences,c))??(s.resolvedChildConfigs&&SB(s.resolvedChildConfigs,c)):void 0}function QWs(s,c,g,d){return s.getCurrentProgram()?s.forEachResolvedProjectReference(c):s.initialLoadPending?zpn(s,d):F(s.getProjectReferences(),g)}function U4t(s,c,g){let d=g&&s.projectService.configuredProjects.get(g);return d&&c(d)}function qpn(s,c){return QWs(s,g=>U4t(s,c,g.sourceFile.path),g=>U4t(s,c,s.toPath(xz(g))),g=>U4t(s,c,g))}function Rst(s,c){return`${Xs(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${s}`}function K4t(s){return!s.isScriptOpen()&&s.mTime!==void 0}function _v(s){return s.invalidateResolutionsOfFailedLookupLocations(),s.dirty&&!s.updateGraph()}function $pn(s,c,g){if(!g&&(s.invalidateResolutionsOfFailedLookupLocations(),!s.dirty))return!1;s.triggerFileForConfigFileDiag=c;let d=s.pendingUpdateLevel;if(s.updateGraph(),!s.triggerFileForConfigFileDiag&&!g)return d===2;let h=s.projectService.sendConfigFileDiagEvent(s,c,g);return s.triggerFileForConfigFileDiag=void 0,h}function XWs(s,c){if(c){if($pn(s,c,!1))return!0}else _v(s);return!1}function j4t(s){let c=op(s.getConfigFilePath()),g=s.projectService.ensureParsedConfigUptoDate(c,s.canonicalConfigFilePath,s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath),s),d=g.config.parsedCommandLine;if(s.parsedCommandLine=d,s.resolvedChildConfigs=void 0,s.updateReferences(d.projectReferences),z4t(s))return g}function z4t(s){return!!s.parsedCommandLine&&(!!s.parsedCommandLine.options.composite||!!tet(s.parsedCommandLine))}function JWs(s){return z4t(s)?s.projectService.configFileExistenceInfoCache.get(s.canonicalConfigFilePath):void 0}function UWs(s){return`Creating possible configured project for ${s.fileName} to open`}function Nst(s){return`User requested reload projects: ${s}`}function q4t(s){s9(s)&&(s.projectOptions=!0)}function $4t(s){let c=1;return()=>s(c++)}function eJt(){return{idToCallbacks:new Map,pathToId:new Map}}function efn(s,c){return!!c&&!!s.eventHandler&&!!s.session}function KWs(s,c){if(!efn(s,c))return;let g=eJt(),d=eJt(),h=eJt(),_=1;return s.session.addProtocolHandler("watchChange",re=>(W(re.arguments),{responseRequired:!1})),{watchFile:S,watchDirectory:R,getCurrentDirectory:()=>s.host.getCurrentDirectory(),useCaseSensitiveFileNames:s.host.useCaseSensitiveFileNames};function S(re,ge){return T(g,re,ge,Ie=>({eventName:yst,data:{id:Ie,path:re}}))}function R(re,ge,Ie){return T(Ie?h:d,re,ge,_e=>({eventName:bst,data:{id:_e,path:re,recursive:!!Ie,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function T({pathToId:re,idToCallbacks:ge},Ie,_e,Ee){let Ne=s.toPath(Ie),Te=re.get(Ne);Te||re.set(Ne,Te=_++);let Ze=ge.get(Te);return Ze||(ge.set(Te,Ze=new Set),s.eventHandler(Ee(Te))),Ze.add(_e),{close(){let We=ge.get(Te);We?.delete(_e)&&(We.size||(ge.delete(Te),re.delete(Ne),s.eventHandler({eventName:Est,data:{id:Te}})))}}}function W(re){Ki(re)?re.forEach(V):V(re)}function V({id:re,created:ge,deleted:Ie,updated:_e}){M(re,ge,0),M(re,Ie,2),M(re,_e,1)}function M(re,ge,Ie){ge?.length&&(ee(g,re,ge,(_e,Ee)=>_e(Ee,Ie)),ee(d,re,ge,(_e,Ee)=>_e(Ee)),ee(h,re,ge,(_e,Ee)=>_e(Ee)))}function ee(re,ge,Ie,_e){var Ee;(Ee=re.idToCallbacks.get(ge))==null||Ee.forEach(Ne=>{Ie.forEach(Te=>_e(Ne,Dp(Te)))})}}var tfn=class jkr{constructor(c){this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Set,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=$4t(_4t),this.newAutoImportProviderProjectName=$4t(y4t),this.newAuxiliaryProjectName=$4t(b4t),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.rootOfInferredProjects=new Set,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=M4t,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=Dc,this.verifyDocumentRegistry=Dc,this.verifyProgram=Dc,this.onProjectCreation=Dc;var g;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||aWe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||zm,this.pluginProbeLocations=c.pluginProbeLocations||zm,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?Ro(Mo(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=dl()),this.currentDirectory=op(this.host.getCurrentDirectory()),this.toCanonicalFileName=_d(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?hp(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new S4t(this.host,this.logger),this.logger.info(`currentDirectory:: ${this.host.getCurrentDirectory()} useCaseSensitiveFileNames:: ${this.host.useCaseSensitiveFileNames}`),this.logger.info(`libs Location:: ${Mo(this.host.getExecutingFilePath())}`),this.logger.info(`globalTypingsCacheLocation:: ${this.typingsInstaller.globalTypingsCacheLocation}`),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.hostConfiguration={formatCodeOptions:RVe(this.host.newLine),preferences:VB,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=hnt(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,h=d!==0?_=>this.logger.info(_):Dc;this.packageJsonCache=sJt(this),this.watchFactory=this.serverMode!==0?{watchFile:Vde,watchDirectory:Vde}:ntt(KWs(this,c.canUseWatchEvents)||this.host,d,h,Rst),this.canUseWatchEvents=efn(this,c.canUseWatchEvents),this.pnpWatcher=this.watchPnpFile(),(g=c.incrementalVerifier)==null||g.call(c,this)}toPath(c){return Ou(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Xc(c,this.host.getCurrentDirectory())}setDocument(c,g,d){let h=pe.checkDefined(this.getScriptInfoForPath(g));h.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,g){let d=this.getScriptInfoForPath(g);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,g){if(!this.eventHandler)return;let d={eventName:Cst,data:{project:c,languageServiceEnabled:g}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let g=JSON.parse(c);for(let d of Object.keys(g.typesMap))g.typesMap[d].match=new RegExp(g.typesMap[d].match,"i");this.safelist=g.typesMap;for(let d in g.simpleMap)Da(g.simpleMap,d)&&this.legacySafelist.set(d,g.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=M4t,this.legacySafelist.clear()}}updateTypingsForProject(c){let g=this.findProject(c.projectName);if(g)switch(c.kind){case vVe:g.updateTypingFiles(c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings);return;case BVe:g.enqueueInstallTypingsForProject(!0);return}}watchTypingLocations(c){var g;(g=this.findProject(c.projectName))==null||g.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(Hpn,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(i2e(c)||(c.markAsDirty(),n2e(c)))return;let g=c.getProjectName();this.pendingProjectUpdates.set(g,c),this.throttledOperations.schedule(g,250,()=>{this.pendingProjectUpdates.delete(g)&&_v(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:sWe,data:{openFiles:Do(this.openFiles.keys(),g=>this.getScriptInfoForPath(g).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,g){if(!this.eventHandler)return;let d={eventName:hst,data:{file:c,fileSize:g,maxFileSize:pst}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,g){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:fst,data:{project:c,reason:g}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let g={eventName:Ist,data:{project:c}};this.eventHandler(g)}sendPerformanceEvent(c,g){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:g})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,g){if(c.length){for(let d of c)g&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,g){pe.assert(g===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=oWe(c),h=s2e(c,g),_=H4t(c);d.allowNonTsExtensions=!0;let S=g&&this.toCanonicalFileName(g);S?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(S,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(S,h||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(S,_)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=h,this.typeAcquisitionForInferredProjects=_);for(let R of this.inferredProjects)(S?R.projectRootPath===S:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(_),R.setWatchOptions(h?.watchOptions),R.setProjectErrors(h?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return C4t(c)?Qpn(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(op(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(g=>{!g.isOrphan()&&g.languageServiceEnabled&&c(g)})}getDefaultProjectForFile(c,g){return g?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g&&!g.isOrphan()?g.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var g;let d=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(g=this.pendingOpenFileProjectUpdates)!=null&&g.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,5),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let g=Xs(c)?this.getScriptInfoForNormalizedPath(c):c;return g?g.getDefaultProject():(this.logErrorForScriptInfoNotFound(Xs(c)?c:c.fileName),QF.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let g=d=>{c=_v(d)||c};this.externalProjects.forEach(g),this.configuredProjects.forEach(g),this.inferredProjects.forEach(g),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let g=this.getScriptInfoForNormalizedPath(c);return g&&g.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let g=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...g&&g.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,g){pe.assert(!c.isScriptOpen()),g===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Xs(c.sourceMapFilePath)){let g=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(g?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((g,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let g=this.getScriptInfoForPath(c);g&&this.delayUpdateProjectGraphs(g.containingProjects,!0)}handleDeletedFile(c,g){pe.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),g?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,g,d,h){let _=this.watchFactory.watchDirectory(c,R=>this.onWildCardDirectoryWatcherInvoke(c,d,h,S,R),g,this.getWatchOptionsFromProjectWatchOptions(h.parsedCommandLine.watchOptions,Mo(d)),jm.WildcardDirectory,d),S={packageJsonWatches:void 0,close(){var R;_&&(_.close(),_=void 0,(R=S.packageJsonWatches)==null||R.forEach(T=>{T.projects.delete(S),T.close()}),S.packageJsonWatches=void 0)}};return S}onWildCardDirectoryWatcherInvoke(c,g,d,h,_){let S=this.toPath(_),R=d.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(_,S);if(gp(S)==="package.json"&&!_1e(S)&&(R&&R.fileExists||!R&&this.host.fileExists(_))){let W=this.getNormalizedAbsolutePath(_);this.logger.info(`Config: ${g} Detected new package.json: ${W}`),this.packageJsonCache.addOrUpdate(W,S),this.watchPackageJsonFile(W,S,h)}R?.fileExists||this.sendSourceFileChange(S);let T=this.findConfiguredProjectByProjectName(g);YEe({watchedDirPath:this.toPath(c),fileOrDirectory:_,fileOrDirectoryPath:S,configFileName:g,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:d.parsedCommandLine.options,program:T?.getCurrentProgram()||d.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:W=>this.logger.info(W),toPath:W=>this.toPath(W),getScriptKind:T?W=>T.getScriptKind(W):void 0})||(d.updateLevel!==2&&(d.updateLevel=1),d.projects.forEach((W,V)=>{var M;if(!W)return;let ee=this.getConfiguredProjectByCanonicalConfigFilePath(V);if(!ee)return;if(T!==ee&&this.getHostPreferences().includeCompletionsForModuleExports){let ge=this.toPath(g);de((M=ee.getCurrentProgram())==null?void 0:M.getResolvedProjectReferences(),Ie=>Ie?.sourceFile.path===ge)&&ee.markAutoImportProviderAsDirty()}let re=T===ee?1:0;if(!(ee.pendingUpdateLevel>re))if(this.openFiles.has(S))if(pe.checkDefined(this.getScriptInfoForPath(S)).isAttached(ee)){let Ie=Math.max(re,ee.openFileWatchTriggered.get(S)||0);ee.openFileWatchTriggered.set(S,Ie)}else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee);else ee.pendingUpdateLevel=re,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ee)}))}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,g){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let h=!1;return d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache(),d.config.projects.forEach((_,S)=>{var R,T,W;let V=this.getConfiguredProjectByCanonicalConfigFilePath(S);if(V)if(h=!0,S===c){if(V.initialLoadPending)return;V.pendingUpdateLevel=2,V.pendingUpdateReason=g,this.delayUpdateProjectGraph(V),V.markAutoImportProviderAsDirty()}else{if(V.initialLoadPending){(T=(R=this.configFileExistenceInfoCache.get(S))==null?void 0:R.openFilesImpactedByConfigFile)==null||T.forEach(ee=>{var re;(re=this.pendingOpenFileProjectUpdates)!=null&&re.has(ee)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(ee,this.configFileForOpenFiles.get(ee))});return}let M=this.toPath(c);V.resolutionCache.removeResolutionsFromProjectReferenceRedirects(M),this.delayUpdateProjectGraph(V),this.getHostPreferences().includeCompletionsForModuleExports&&de((W=V.getCurrentProgram())==null?void 0:W.getResolvedProjectReferences(),ee=>ee?.sourceFile.path===M)&&V.markAutoImportProviderAsDirty()}}),h}onConfigFileChanged(c,g,d){let h=this.configFileExistenceInfoCache.get(g),_=this.getConfiguredProjectByCanonicalConfigFilePath(g),S=_?.deferredClose;d===2?(h.exists=!1,_&&(_.deferredClose=!0)):(h.exists=!0,S&&(_.deferredClose=void 0,_.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(g,"Change in config file detected"),this.openFiles.forEach((R,T)=>{var W,V;let M=this.configFileForOpenFiles.get(T);if(!((W=h.openFilesImpactedByConfigFile)!=null&&W.has(T)))return;this.configFileForOpenFiles.delete(T);let ee=this.getScriptInfoForPath(T);this.getConfigFileNameForFile(ee,!1)&&((V=this.pendingOpenFileProjectUpdates)!=null&&V.has(T)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(T,M))}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),pe.shouldAssert(1)&&this.filenameToScriptInfo.forEach(g=>pe.assert(!g.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(Do(lr(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(h=>h.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:ef(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:ef(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,g){pe.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?g||this.currentDirectory:Mo(Xp(c.fileName)?c.fileName:Xc(c.fileName,g?this.getNormalizedAbsolutePath(g):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(Ql(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let h of this.inferredProjects){if(h===d||h.isOrphan())continue;let _=h.getRootScriptInfos();pe.assert(_.length===1||!!h.projectRootPath),_.length===1&&F(_[0].containingProjects,S=>S!==_[0].containingProjects[0]&&!S.isOrphan())&&h.removeFile(_[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,g){var d;let h=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(h),this.stopWatchingConfigFilesForScriptInfo(c);let _=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(_)===c&&this.openFilesWithNonRootedDiskPath.delete(_);let S=!1;for(let R of c.containingProjects){if(s9(R)){c.hasMixedContent&&c.registerFileUpdate();let T=R.openFileWatchTriggered.get(c.path);T!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,g,T),2e3,this.getWatchOptionsFromProjectWatchOptions((_=(h=S?.config)==null?void 0:h.parsedCommandLine)==null?void 0:_.watchOptions,Mo(c)),jm.ConfigFile,d)),this.ensureConfigFileWatcherForProject(S,d)}ensureConfigFileWatcherForProject(c,g){let d=c.config.projects;d.set(g.canonicalConfigFilePath,d.get(g.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,g){var d,h,_;let S=this.configFileExistenceInfoCache.get(c);(d=S.config)!=null&&d.projects.delete(g.canonicalConfigFilePath)&&((h=S.config)!=null&&h.projects.size||(S.config=void 0,ttt(c,this.sharedExtendedConfigFileWatchers),pe.checkDefined(S.watcher),(_=S.openFilesImpactedByConfigFile)!=null&&_.size?S.inferredProjectRoots?zEe(Mo(c))||(S.watcher.close(),S.watcher=Q4t):(S.watcher.close(),S.watcher=void 0):(S.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let g=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!g||this.forEachConfigFileLocation(c,h=>{var _,S,R;let T=this.configFileExistenceInfoCache.get(h);if(T){if(d){if(!((_=T?.openFilesImpactedByConfigFile)!=null&&_.has(c.path)))return}else if(!((S=T.openFilesImpactedByConfigFile)!=null&&S.delete(c.path)))return;g&&(T.inferredProjectRoots--,T.watcher&&!T.config&&!T.inferredProjectRoots&&(T.watcher.close(),T.watcher=void 0)),!((R=T.openFilesImpactedByConfigFile)!=null&&R.size)&&!T.config&&(pe.assert(!T.watcher),this.configFileExistenceInfoCache.delete(h))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(pe.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(g,d)=>{let h=this.configFileExistenceInfoCache.get(g);h?h.inferredProjectRoots=(h.inferredProjectRoots??0)+1:(h={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(g,h)),(h.openFilesImpactedByConfigFile??(h.openFilesImpactedByConfigFile=new Set)).add(c.path),h.watcher||(h.watcher=zEe(Mo(g))?this.watchFactory.watchFile(d,(_,S)=>this.onConfigFileChanged(d,g,S),2e3,this.hostConfiguration.watchOptions,jm.ConfigFileForInferredRoot):Q4t)}))}forEachConfigFileLocation(c,g){if(this.serverMode!==0)return;pe.assert(!Jpn(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(pe.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let _=Mo(c.fileName),S=()=>Jh(d,_,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!S(),T=!0,W=!0;Tst(c)&&(di(c.fileName,"tsconfig.json")?T=!1:T=W=!1);do{let V=sse(_,this.currentDirectory,this.toCanonicalFileName);if(T){let ee=Ro(_,"tsconfig.json");if(g(Ro(V,"tsconfig.json"),ee))return ee}if(W){let ee=Ro(_,"jsconfig.json");if(g(Ro(V,"jsconfig.json"),ee))return ee}if(Vd(V))break;let M=Mo(_);if(M===_)break;_=M,T=W=!0}while(R||S())}findDefaultConfiguredProject(c){var g;return(g=this.findDefaultConfiguredProjectWorker(c,1))==null?void 0:g.defaultProject}findDefaultConfiguredProjectWorker(c,g){return c.isScriptOpen()?this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g):void 0}getConfigFileNameForFileFromCache(c,g){if(g){let d=Xpn(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return Xpn(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,g){if(!this.openFiles.has(c.path))return;let d=g||!1;if(!Tst(c))this.configFileForOpenFiles.set(c.path,d);else{let h=this.configFileForOpenFiles.get(c.path);(!h||Xs(h))&&this.configFileForOpenFiles.set(c.path,h=new Map().set(!1,h)),h.set(c.fileName,d)}}getConfigFileNameForFile(c,g){let d=this.getConfigFileNameForFileFromCache(c,g);if(d!==void 0)return d||void 0;if(g)return;let h=this.forEachConfigFileLocation(c,(_,S)=>this.configFileExists(S,_,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${h}`),this.setConfigFileNameForFileInCache(c,h),h}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(nJt),this.configuredProjects.forEach(nJt),this.inferredProjects.forEach(nJt),this.logger.info("Open files: "),this.openFiles.forEach((c,g)=>{let d=this.getScriptInfoForPath(g);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(h=>h.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,g){let d=this.toCanonicalFileName(c),h=this.getConfiguredProjectByCanonicalConfigFilePath(d);return g?h:h?.deferredClose?void 0:h}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return Qpn(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,g,d,h){if(g&&g.disableSizeLimit||!this.host.getFileSize)return;let _=dst;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>_-=R||0);let S=0;for(let R of d){let T=h.getFileName(R);if(!w3(T)&&(S+=this.host.getFileSize(T),S>dst||S>_)){let W=d.map(V=>h.getFileName(V)).filter(V=>!w3(V)).map(V=>({name:V,size:this.host.getFileSize(V)})).sort((V,M)=>M.size-V.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${S}). Largest files: ${W.map(V=>`${V.name}:${V.size}`).join(", ")}`),T}}this.projectToSizeMap.set(c,S)}createExternalProject(c,g,d,h,_){let S=oWe(d),R=s2e(d,Mo(Dp(c))),T=new Ast(c,this,S,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,S,g,wst),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return T.setProjectErrors(R?.errors),T.excludedFiles=_,this.addFilesToNonInferredProject(T,g,wst,h),this.externalProjects.push(T),T}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){q4t(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){q4t(c);return}let g=s9(c)?c.projectOptions:void 0;q4t(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:t2e(c.getScriptInfos(),!0),compilerOptions:PWt(c.getCompilationSettings()),typeAcquisition:_(c.getTypeAcquisition()),extends:g&&g.configHasExtendsProperty,files:g&&g.configHasFilesProperty,include:g&&g.configHasIncludeProperty,exclude:g&&g.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:h(),projectType:c instanceof Ast?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:C};this.eventHandler({eventName:_st,data:d});function h(){return s9(c)&&gst(c.getConfigFilePath())||"other"}function _({enable:S,include:R,exclude:T}){return{enable:S,include:R!==void 0&&R.length!==0,exclude:T!==void 0&&T.length!==0}}}addFilesToNonInferredProject(c,g,d,h){this.updateNonInferredProjectFiles(c,g,d),c.setTypeAcquisition(h),c.markAsDirty()}createConfiguredProject(c,g){var d;(d=ki)==null||d.instant(ki.Phase.Session,"createConfiguredProject",{configFilePath:c});let h=this.toCanonicalFileName(c),_=this.configFileExistenceInfoCache.get(h);_?_.exists=!0:this.configFileExistenceInfoCache.set(h,_={exists:!0}),_.config||(_.config={cachedDirectoryStructureHost:j9e(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let S=new W4t(c,h,this,_.config.cachedDirectoryStructureHost,g);return pe.assert(!this.configuredProjects.has(h)),this.configuredProjects.set(h,S),this.createConfigFileWatcherForParsedConfig(c,h,S),S}loadConfiguredProject(c,g){var d,h;(d=ki)==null||d.push(ki.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,g);let _=op(c.getConfigFilePath()),S=this.ensureParsedConfigUptoDate(_,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=S.config.parsedCommandLine;pe.assert(!!R.fileNames);let T=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.parsedCommandLine=R,c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let W=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,T,R.fileNames,Bst);W?(c.disableLanguageService(W),this.configFileExistenceInfoCache.forEach((M,ee)=>this.stopWatchingWildCards(ee,c))):(c.setCompilerOptions(T),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(_,S,c)),c.enablePluginsWithOptions(T);let V=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,V,Bst,T,R.typeAcquisition,R.compileOnSave,R.watchOptions),(h=ki)==null||h.pop()}ensureParsedConfigUptoDate(c,g,d,h){var _,S,R;if(d.config&&(d.config.updateLevel===1&&this.reloadFileNamesOfParsedConfig(c,d.config),!d.config.updateLevel))return this.ensureConfigFileWatcherForProject(d,h),d;if(!d.exists&&d.config)return d.config.updateLevel=void 0,this.ensureConfigFileWatcherForProject(d,h),d;let T=((_=d.config)==null?void 0:_.cachedDirectoryStructureHost)||j9e(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),W=fde(c,Ie=>this.host.readFile(Ie)),V=hEe(c,Xs(W)?W:""),M=V.parseDiagnostics;Xs(W)||M.push(W);let ee=Mo(c),re=EEe(V,T,ee,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&M.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ge=(S=d.config)==null?void 0:S.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:T,projects:new Map},!ge&&!WAe(this.getWatchOptionsFromProjectWatchOptions(void 0,ee),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,ee))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,g,h),z9e(g,re.options,this.sharedExtendedConfigFileWatchers,(Ie,_e)=>this.watchFactory.watchFile(Ie,()=>{var Ee;q9e(this.extendedConfigCache,_e,Te=>this.toPath(Te));let Ne=!1;(Ee=this.sharedExtendedConfigFileWatchers.get(_e))==null||Ee.projects.forEach(Te=>{Ne=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Te,`Change in extended config file ${Ie} detected`)||Ne}),Ne&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,jm.ExtendedConfigFile,c),Ie=>this.toPath(Ie)),d}watchWildcards(c,{exists:g,config:d},h){if(d.projects.set(h.canonicalConfigFilePath,!0),g){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,HEe(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(_,S)=>this.watchWildcardDirectory(_,S,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Fy(d.watchedDirectories,Cv),d.watchedDirectories=void 0}}stopWatchingWildCards(c,g){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(g.canonicalConfigFilePath)||(d.config.projects.set(g.canonicalConfigFilePath,!1),!Dh(d.config.projects,Fl)&&(d.config.watchedDirectories&&(Fy(d.config.watchedDirectories,Cv),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,g,d){var h;let _=c.getRootFilesMap(),S=new Map;for(let R of g){let T=d.getFileName(R),W=op(T),V=ppe(W),M;if(!V&&!c.fileExists(T)){M=sse(W,this.currentDirectory,this.toCanonicalFileName);let ee=_.get(M);ee?(((h=ee.info)==null?void 0:h.path)===M&&(c.removeFile(ee.info,!1,!0),ee.info=void 0),ee.fileName=W):_.set(M,{fileName:W})}else{let ee=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ge=pe.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(W,c.currentDirectory,ee,re,c.directoryStructureHost,!1));M=ge.path;let Ie=_.get(M);!Ie||Ie.info!==ge?(c.addRoot(ge,W),ge.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ge)):Ie.fileName=W}S.set(M,!0)}_.size>S.size&&_.forEach((R,T)=>{S.has(T)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):_.delete(T))})}updateRootAndOptionsOfNonInferredProject(c,g,d,h,_,S,R){c.setCompilerOptions(h),c.setWatchOptions(R),S!==void 0&&(c.compileOnSaveEnabled=S),this.addFilesToNonInferredProject(c,g,d,_)}reloadFileNamesOfConfiguredProject(c){let g=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(g),this.updateNonInferredProjectFiles(c,g.fileNames.concat(c.getExternalFiles(1)),Bst),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,g){if(g.updateLevel===void 0)return g.parsedCommandLine;pe.assert(g.updateLevel===1);let d=g.parsedCommandLine.options.configFile.configFileSpecs,h=Ide(d,Mo(c),g.parsedCommandLine.options,g.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return g.parsedCommandLine={...g.parsedCommandLine,fileNames:h},g.updateLevel=void 0,g.parsedCommandLine}setFileNamesOfAutoImportProviderOrAuxillaryProject(c,g){this.updateNonInferredProjectFiles(c,g,Bst)}reloadConfiguredProjectOptimized(c,g,d){d.has(c)||(d.set(c,6),c.initialLoadPending||this.setProjectForReload(c,2,g))}reloadConfiguredProjectClearingSemanticCache(c,g,d){return d.get(c)===7?!1:(d.set(c,7),this.clearSemanticCache(c),this.reloadConfiguredProject(c,Nst(g)),!0)}setProjectForReload(c,g,d){g===2&&this.clearSemanticCache(c),c.pendingUpdateReason=d&&Nst(d),c.pendingUpdateLevel=g}reloadConfiguredProject(c,g){c.initialLoadPending=!1,this.setProjectForReload(c,0),this.loadConfiguredProject(c,g),$pn(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,g,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let h=c.getLanguageService().getCompilerOptionsDiagnostics();return h.push(...c.getAllProjectErrors()),!d&&h.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=h.length,this.eventHandler({eventName:mst,data:{configFileName:c.getConfigFilePath(),diagnostics:h,triggerFile:g??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,g){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&g===void 0)return;if(g){let h=this.toCanonicalFileName(g);for(let _ of this.inferredProjects)if(_.projectRootPath===h)return _;return this.createInferredProject(g,!1,g)}let d;for(let h of this.inferredProjects)h.projectRootPath&&Jh(h.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>h.projectRootPath.length||(d=h));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject(this.currentDirectory,!0,void 0)}getOrCreateSingleInferredWithoutProjectRoot(c){pe.assert(!this.useSingleInferredProject);let g=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===g)return d;return this.createInferredProject(c,!1,void 0)}createInferredProject(c,g,d){let h=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,_,S;d&&(_=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),S=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),_===void 0&&(_=this.watchOptionsForInferredProjects),S===void 0&&(S=this.typeAcquisitionForInferredProjects),_=_||void 0;let R=new Z4t(this,h,_?.watchOptions,d,c,S);return R.setProjectErrors(_?.errors),g?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,g,d,h){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(op(c),g,void 0,void 0,d,h)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(op(c))}getScriptInfoOrConfig(c){let g=op(c),d=this.getScriptInfoForNormalizedPath(g);if(d)return d;let h=this.configuredProjects.get(this.toPath(c));return h&&h.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let g=Do(lr(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,h])=>({path:d,fileName:h.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. -All files are: ${JSON.stringify(g)}`,"Err")}getSymlinkedProjects(c){let g;if(this.realpathToScriptInfos){let h=c.getRealpathIfDifferent();h&&F(this.realpathToScriptInfos.get(h),d),F(this.realpathToScriptInfos.get(c.path),d)}return g;function d(h){if(h!==c)for(let _ of h.containingProjects)_.languageServiceEnabled&&!_.isOrphan()&&!_.getCompilerOptions().preserveSymlinks&&!c.isAttached(_)&&(g?Dh(g,(S,R)=>R===h.path?!1:k(S,_))||g.add(h.path,_):(g=dl(),g.add(h.path,_)))}}watchClosedScriptInfo(c){if(pe.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!Ac(c.path,this.globalCacheLocationDirectoryPath))){let g=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||g===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,h)=>this.onSourceFileChanged(c,h),500,this.hostConfiguration.watchOptions,jm.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,g)))}}createNodeModulesWatcher(c,g){let d=this.watchFactory.watchDirectory(c,_=>{var S;let R=gVe(this.toPath(_));if(!R)return;let T=gp(R);if((S=h.affectedModuleSpecifierCacheProjects)!=null&&S.size&&(T==="package.json"||T==="node_modules")&&h.affectedModuleSpecifierCacheProjects.forEach(W=>{var V;(V=W.getModuleSpecifierCache())==null||V.clear()}),h.refreshScriptInfoRefCount)if(g===R)this.refreshScriptInfosInDirectory(g);else{let W=this.filenameToScriptInfo.get(R);W?K4t(W)&&this.refreshScriptInfo(W):E0(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,jm.NodeModules),h={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var _;d&&!h.refreshScriptInfoRefCount&&!((_=h.affectedModuleSpecifierCacheProjects)!=null&&_.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(g))}};return this.nodeModulesWatchers.set(g,h),h}watchPackageJsonsInNodeModules(c,g){var d;let h=this.toPath(c),_=this.nodeModulesWatchers.get(h)||this.createNodeModulesWatcher(c,h);return pe.assert(!((d=_.affectedModuleSpecifierCacheProjects)!=null&&d.has(g))),(_.affectedModuleSpecifierCacheProjects||(_.affectedModuleSpecifierCacheProjects=new Set)).add(g),{close:()=>{var S;(S=_.affectedModuleSpecifierCacheProjects)==null||S.delete(g),_.close()}}}watchClosedScriptInfoInNodeModules(c){let g=c+"/node_modules",d=this.toPath(g),h=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(g,d);return h.refreshScriptInfoRefCount++,{close:()=>{h.refreshScriptInfoRefCount--,h.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||Rh).getTime()}refreshScriptInfo(c){let g=this.getModifiedTime(c);if(g!==c.mTime){let d=qS(c.mTime,g);c.mTime=g,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+ag,this.filenameToScriptInfo.forEach(g=>{K4t(g)&&Ac(g.path,c)&&this.refreshScriptInfo(g)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,g,d,h,_,S){if(Xp(c)||ppe(c))return this.getOrCreateScriptInfoWorker(c,g,!1,void 0,d,!!h,_,S);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,g,d,h,_,S){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,g,d,h,!!_,S,!1)}getOrCreateScriptInfoWorker(c,g,d,h,_,S,R,T){pe.assert(h===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let W=sse(c,g,this.toCanonicalFileName),V=this.filenameToScriptInfo.get(W);if(V){if(V.deferredDelete){if(pe.assert(!V.isDynamic),!d&&!(R||this.host).fileExists(c))return T?V:void 0;V.deferredDelete=void 0}}else{let M=ppe(c);if(pe.assert(Xp(c)||M||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} -Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`),pe.assert(!Xp(c)||this.currentDirectory===g||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(c)),"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} -Open script files with non rooted disk path opened with current directory context cannot have same canonical names`),pe.assert(!M||this.currentDirectory===g||this.useInferredProjectPerProjectRoot,"",()=>`${JSON.stringify({fileName:c,currentDirectory:g,hostCurrentDirectory:this.currentDirectory,openKeys:Do(this.openFilesWithNonRootedDiskPath.keys())})} -Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!d&&!M&&!(R||this.host).fileExists(c))return;V=new R4t(this.host,c,_,S,W,this.filenameToScriptInfoVersion.get(W)),this.filenameToScriptInfo.set(V.path,V),this.filenameToScriptInfoVersion.delete(V.path),d?!Xp(c)&&(!M||this.currentDirectory!==g)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(c),V):this.watchClosedScriptInfo(V)}return d&&(this.stopWatchingScriptInfo(V),V.open(h),S&&V.registerFileUpdate()),V}getScriptInfoForNormalizedPath(c){return!Xp(c)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c))||this.getScriptInfoForPath(sse(c,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(c){let g=this.filenameToScriptInfo.get(c);return!g||!g.deferredDelete?g:void 0}getDocumentPositionMapper(c,g,d){let h=this.getOrCreateScriptInfoNotOpenedByClient(g,c.currentDirectory,this.host,!1);if(!h){d&&c.addGeneratedFileWatch(g,d);return}if(h.getSnapshot(),Xs(h.sourceMapFilePath)){let W=this.getScriptInfoForPath(h.sourceMapFilePath);if(W&&(W.getSnapshot(),W.documentPositionMapper!==void 0))return W.sourceInfos=this.addSourceInfoToSourceMap(d,c,W.sourceInfos),W.documentPositionMapper?W.documentPositionMapper:void 0;h.sourceMapFilePath=void 0}else if(h.sourceMapFilePath){h.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(d,c,h.sourceMapFilePath.sourceInfos);return}else if(h.sourceMapFilePath!==void 0)return;let _,S=(W,V)=>{let M=this.getOrCreateScriptInfoNotOpenedByClient(W,c.currentDirectory,this.host,!0);if(_=M||V,!M||M.deferredDelete)return;let ee=M.getSnapshot();return M.documentPositionMapper!==void 0?M.documentPositionMapper:Lz(ee)},R=c.projectName,T=bnt({getCanonicalFileName:this.toCanonicalFileName,log:W=>this.logger.info(W),getSourceFileLike:W=>this.getSourceFileLike(W,R,h)},h.fileName,h.textStorage.getLineInfo(),S);return S=void 0,_?Xs(_)?h.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?_:Xc(_,c.currentDirectory),h.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(h.sourceMapFilePath=_.path,_.declarationInfoPath=h.path,_.deferredDelete||(_.documentPositionMapper=T||!1),_.sourceInfos=this.addSourceInfoToSourceMap(d,c,_.sourceInfos)):h.sourceMapFilePath=!1,T}addSourceInfoToSourceMap(c,g,d){if(c){let h=this.getOrCreateScriptInfoNotOpenedByClient(c,g.currentDirectory,g.directoryStructureHost,!1);(d||(d=new Set)).add(h.path)}return d}addMissingSourceMapFile(c,g){return this.watchFactory.watchFile(c,()=>{let h=this.getScriptInfoForPath(g);h&&h.sourceMapFilePath&&!Xs(h.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(h.containingProjects,!0),this.delayUpdateSourceInfoProjects(h.sourceMapFilePath.sourceInfos),h.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,jm.MissingSourceMapFile)}getSourceFileLike(c,g,d){let h=g.projectName?g:this.findProject(g);if(h){let S=h.toPath(c),R=h.getSourceFile(S);if(R&&R.resolvedPath===S)return R}let _=this.getOrCreateScriptInfoNotOpenedByClient(c,(h||this).currentDirectory,h?h.directoryStructureHost:this.host,!1);if(_){if(d&&Xs(d.sourceMapFilePath)&&_!==d){let S=this.getScriptInfoForPath(d.sourceMapFilePath);S&&(S.sourceInfos??(S.sourceInfos=new Set)).add(_.path)}return _.cacheSourceFile?_.cacheSourceFile.sourceFile:(_.sourceFileLike||(_.sourceFileLike={get text(){return pe.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:S=>{let R=_.positionToLineOffset(S);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(S,R,T)=>_.lineOffsetToPosition(S+1,R+1,T)}),_.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var g,d;if(c.file){let h=this.getScriptInfoForNormalizedPath(op(c.file));h&&(h.setOptions(ase(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...ase(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:h,includePackageJsonAutoImports:_,includeCompletionsForModuleExports:S}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},h&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(T=>{!T.deferredClose&&!T.isClosed()&&T.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(T)&&T.updateGraph()})),(_!==c.preferences.includePackageJsonAutoImports||!!S!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let h=(g=s2e(c.watchOptions))==null?void 0:g.watchOptions,_=b9e(h,this.currentDirectory);this.hostConfiguration.watchOptions=_,this.hostConfiguration.beforeSubstitution=_===h?void 0:h,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,g){let d=this.hostConfiguration.beforeSubstitution?b9e(this.hostConfiguration.beforeSubstitution,g):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}sendSourceFileChange(c){this.filenameToScriptInfo.forEach(g=>{if(this.openFiles.has(g.path)||!g.fileWatcher)return;let d=FA(()=>this.host.fileExists(g.fileName)?g.deferredDelete?0:1:2);if(c){if(K4t(g)||!g.path.startsWith(c)||d()===2&&g.deferredDelete)return;this.logger.info(`Invoking sourceFileChange on ${g.fileName}:: ${d()}`)}this.onSourceFileChanged(g,d())})}reloadProjects(){this.logger.info("reload projects."),this.sendSourceFileChange(void 0),this.pendingProjectUpdates.forEach((d,h)=>{this.throttledOperations.cancel(h),this.pendingProjectUpdates.delete(h)}),this.throttledOperations.cancel(Hpn),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2,d.config.cachedDirectoryStructureHost.clearCache())}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Map,g=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,h)=>{let _=`Reloading configured project in external project: ${h}`;d.forEach(S=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?this.reloadConfiguredProjectOptimized(S,_,c):this.reloadConfiguredProjectClearingSemanticCache(S,_,c)})}),this.openFiles.forEach((d,h)=>{let _=this.getScriptInfoForPath(h);de(_.containingProjects,r2e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(_,7,c,g)}),g.forEach(d=>c.set(d,7)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){pe.assert(c.containingProjects.length>0);let g=c.containingProjects[0];!g.isOrphan()&&ose(g)&&g.isRoot(c)&&F(c.containingProjects,d=>d!==g&&!d.isOrphan())&&g.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((g,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),5)),this.openFiles.forEach((g,d)=>{let h=this.getScriptInfoForPath(d);h.isOrphan()?this.assignOrphanScriptInfoToInferredProject(h,g):this.removeRootOfInferredProjectIfNowPartOfOtherProject(h)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(_v),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,g,d,h){return this.openClientFileWithNormalizedPath(op(c),g,d,!1,h?op(h):void 0)}getOriginalLocationEnsuringConfiguredProject(c,g){let d=c.isSourceOfProjectReferenceRedirect(g.fileName),h=d?g:c.getSourceMapper().tryGetSourcePosition(g);if(!h)return;let{fileName:_}=h,S=this.getScriptInfo(_);if(!S&&!this.host.fileExists(_))return;let R={fileName:op(_),path:this.toPath(_)},T=this.getConfigFileNameForFile(R,!1);if(!T)return;let W=this.findConfiguredProjectByProjectName(T);if(!W){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?g:S?.containingProjects.length?h:g;W=this.createConfiguredProject(T,`Creating project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`)}let V=this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(R,5,J4t(W,4),re=>`Creating project referenced in solution ${re.projectName} to find possible configured project for original file: ${R.fileName}${g!==h?" for location: "+g.fileName:""}`);if(!V.defaultProject)return;if(V.defaultProject===c)return h;ee(V.defaultProject);let M=this.getScriptInfo(_);if(!M||!M.containingProjects.length)return;return M.containingProjects.forEach(re=>{s9(re)&&ee(re)}),h;function ee(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return de(this.externalProjects,g=>(_v(g),g.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,g,d,h,_){let S=this.getOrCreateScriptInfoWorker(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,!0,g,d,!!h,void 0,!0);return this.openFiles.set(S.path,_),S}assignProjectToOpenedScriptInfo(c){let g,d,h=this.findExternalProjectContainingOpenScriptInfo(c),_,S;if(!h&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,5);R&&(_=R.seenProjects,S=R.sentConfigDiag,R.defaultProject&&(g=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(_v),c.isOrphan()&&(_?.forEach((R,T)=>{R!==4&&!S.has(T)&&this.sendConfigFileDiagEvent(T,c.fileName,!0)}),pe.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),pe.assert(!c.isOrphan()),{configFileName:g,configFileErrors:d,retainProjects:_}}findCreateOrReloadConfiguredProject(c,g,d,h,_,S,R,T,W){let V=W??this.findConfiguredProjectByProjectName(c,h),M=!1,ee;switch(g){case 0:case 1:case 3:if(!V)return;break;case 2:if(!V)return;ee=JWs(V);break;case 4:case 5:V??(V=this.createConfiguredProject(c,d)),R||({sentConfigFileDiag:M,configFileExistenceInfo:ee}=J4t(V,g,_));break;case 6:if(V??(V=this.createConfiguredProject(c,Nst(d))),V.projectService.reloadConfiguredProjectOptimized(V,d,S),ee=j4t(V),ee)break;case 7:V??(V=this.createConfiguredProject(c,Nst(d))),M=!T&&this.reloadConfiguredProjectClearingSemanticCache(V,d,S),T&&!T.has(V)&&!S.has(V)&&(this.setProjectForReload(V,2,d),T.add(V));break;default:pe.assertNever(g)}return{project:V,sentConfigFileDiag:M,configFileExistenceInfo:ee,reason:d}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,d,h){let _=this.getConfigFileNameForFile(c,g<=3);if(!_)return;let S=Upn(g),R=this.findCreateOrReloadConfiguredProject(_,S,UWs(c),d,c.fileName,h);return R&&this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,R,T=>`Creating project referenced in solution ${T.projectName} to find possible configured project for ${c.fileName} to open`,d,h)}isMatchedByConfig(c,g,d){if(g.fileNames.some(T=>this.toPath(T)===d.path))return!0;if(Bbe(d.fileName,g.options,this.hostConfiguration.extraFileExtensions))return!1;let{validatedFilesSpec:h,validatedIncludeSpecs:_,validatedExcludeSpecs:S}=g.options.configFile.configFileSpecs,R=op(Xc(Mo(c),this.currentDirectory));return h?.some(T=>this.toPath(Xc(T,R))===d.path)?!0:!_?.length||B9e(d.fileName,S,this.host.useCaseSensitiveFileNames,this.currentDirectory,R)?!1:_?.some(T=>{let W=Ebe(T,R,"files");return!!W&&zD(`(${W})$`,this.host.useCaseSensitiveFileNames).test(d.fileName)})}tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(c,g,d,h,_,S){let R=Jpn(c),T=Upn(g),W=new Map,V,M=new Set,ee,re,ge,Ie;return _e(d),{defaultProject:ee??re,tsconfigProject:ge??Ie,sentConfigDiag:M,seenProjects:W,seenConfigs:V};function _e(Ue){return Te(Ue,Ue.project)??Ze(Ue.project)??We(Ue.project)}function Ee(Ue,$e,Ye,Tt,ot,Qe){if($e){if(W.has($e))return;W.set($e,T)}else{if(V?.has(Qe))return;(V??(V=new Set)).add(Qe)}if(!ot.projectService.isMatchedByConfig(Ye,Ue.config.parsedCommandLine,c)){ot.languageServiceEnabled&&ot.projectService.watchWildcards(Ye,Ue,ot);return}let mt=$e?J4t($e,g,c.fileName,Tt,S):ot.projectService.findCreateOrReloadConfiguredProject(Ye,g,Tt,_,c.fileName,S);if(!mt){pe.assert(g===3);return}return W.set(mt.project,T),mt.sentConfigFileDiag&&M.add(mt.project),Ne(mt.project,ot)}function Ne(Ue,$e){if(W.get(Ue)===g)return;W.set(Ue,g);let Ye=R?c:Ue.projectService.getScriptInfo(c.fileName),Tt=Ye&&Ue.containsScriptInfo(Ye);if(Tt&&!Ue.isSourceOfProjectReferenceRedirect(Ye.path))return ge=$e,ee=Ue;!re&&R&&Tt&&(Ie=$e,re=Ue)}function Te(Ue,$e){return Ue.sentConfigFileDiag&&M.add(Ue.project),Ue.configFileExistenceInfo?Ee(Ue.configFileExistenceInfo,Ue.project,op(Ue.project.getConfigFilePath()),Ue.reason,Ue.project,Ue.project.canonicalConfigFilePath):Ne(Ue.project,$e)}function Ze(Ue){return Ue.parsedCommandLine&&jpn(Ue,Ue.parsedCommandLine,Ee,T,h(Ue),_,S)}function We(Ue){return R?Kpn(c,Ue,_e,T,`Creating possible configured project for ${c.fileName} to open`,_,S,!1):void 0}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,g,d,h){let _=g===1,S=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,g,_,d);if(!S)return;let{defaultProject:R,tsconfigProject:T,seenProjects:W}=S;return R&&Kpn(c,T,V=>{W.set(V.project,g)},g,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,_,d,!0,h),S}loadAncestorProjectTree(c){c??(c=new Set(lr(this.configuredProjects.entries(),([h,_])=>_.initialLoadPending?void 0:h)));let g=new Set,d=Do(this.configuredProjects.values());for(let h of d)zpn(h,_=>c.has(_))&&_v(h),this.ensureProjectChildren(h,c,g)}ensureProjectChildren(c,g,d){var h;if(!Ar(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let _=(h=c.getCurrentProgram())==null?void 0:h.getResolvedProjectReferences();if(_)for(let S of _){if(!S)continue;let R=tie(S.references,V=>g.has(V.sourceFile.path)?V:void 0);if(!R)continue;let T=op(S.sourceFile.fileName),W=this.findConfiguredProjectByProjectName(T)??this.createConfiguredProject(T,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);_v(W),this.ensureProjectChildren(W,g,d)}}cleanupConfiguredProjects(c,g,d){this.getOrphanConfiguredProjects(c,d,g).forEach(h=>this.removeProject(h))}cleanupProjectsAndScriptInfos(c,g,d){this.cleanupConfiguredProjects(c,d,g);for(let h of this.inferredProjects.slice())h.isOrphan()&&this.removeProject(h);this.removeOrphanScriptInfos()}tryInvokeWildCardDirectories(c){this.configFileExistenceInfoCache.forEach((g,d)=>{var h,_;!((h=g.config)!=null&&h.parsedCommandLine)||k(g.config.parsedCommandLine.fileNames,c.fileName,this.host.useCaseSensitiveFileNames?MA:Mp)||(_=g.config.watchedDirectories)==null||_.forEach((S,R)=>{Jh(R,c.fileName,!this.host.useCaseSensitiveFileNames)&&(this.logger.info(`Invoking ${d}:: wildcard for open scriptInfo:: ${c.fileName}`),this.onWildCardDirectoryWatcherInvoke(R,d,g.config,S.watcher,c.fileName))})})}openClientFileWithNormalizedPath(c,g,d,h,_){let S=this.getScriptInfoForPath(sse(c,_?this.getNormalizedAbsolutePath(_):this.currentDirectory,this.toCanonicalFileName)),R=this.getOrCreateOpenScriptInfo(c,g,d,h,_);!S&&R&&!R.isDynamic&&this.tryInvokeWildCardDirectories(R);let{retainProjects:T,...W}=this.assignProjectToOpenedScriptInfo(R);return this.cleanupProjectsAndScriptInfos(T,new Set([R.path]),void 0),this.telemetryOnOpenFile(R),this.printProjects(),W}getOrphanConfiguredProjects(c,g,d){let h=new Set(this.configuredProjects.values()),_=W=>{W.originalConfiguredProjects&&(s9(W)||!W.isOrphan())&&W.originalConfiguredProjects.forEach((V,M)=>{let ee=this.getConfiguredProjectByCanonicalConfigFilePath(M);return ee&&T(ee)})};if(c?.forEach((W,V)=>T(V)),!h.size||(this.inferredProjects.forEach(_),this.externalProjects.forEach(_),this.externalProjectToConfiguredProjectMap.forEach((W,V)=>{d?.has(V)||W.forEach(T)}),!h.size)||(Dh(this.openFiles,(W,V)=>{if(g?.has(V))return;let M=this.getScriptInfoForPath(V);if(de(M.containingProjects,r2e))return;let ee=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(M,1);if(ee?.defaultProject&&(ee?.seenProjects.forEach((re,ge)=>T(ge)),!h.size))return h}),!h.size))return h;return Dh(this.configuredProjects,W=>{if(h.has(W)&&(R(W)||qpn(W,S))&&(T(W),!h.size))return h}),h;function S(W){return!h.has(W)||R(W)}function R(W){var V,M;return(W.deferredClose||W.projectService.hasPendingProjectUpdate(W))&&!!((M=(V=W.projectService.configFileExistenceInfoCache.get(W.canonicalConfigFilePath))==null?void 0:V.openFilesImpactedByConfigFile)!=null&&M.size)}function T(W){h.delete(W)&&(_(W),qpn(W,T))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(g=>{if(!g.deferredDelete){if(!g.isScriptOpen()&&g.isOrphan()&&!D4t(g)&&!N4t(g)){if(!g.sourceMapFilePath)return;let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;if(!d||!SB(d,h=>{let _=this.getScriptInfoForPath(h);return!!_&&(_.isScriptOpen()||!_.isOrphan())}))return}if(c.delete(g.path),g.sourceMapFilePath){let d;if(Xs(g.sourceMapFilePath)){let h=this.filenameToScriptInfo.get(g.sourceMapFilePath);h?.deferredDelete?g.sourceMapFilePath={watcher:this.addMissingSourceMapFile(h.fileName,g.path),sourceInfos:h.sourceInfos}:c.delete(g.sourceMapFilePath),d=h?.sourceInfos}else d=g.sourceMapFilePath.sourceInfos;d&&d.forEach((h,_)=>c.delete(_))}}}),c.forEach(g=>this.deleteScriptInfo(g))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!Zy(this.allJsFilesForOpenFileTelemetry,c.path))return;let g=this.ensureDefaultProjectForFile(c);if(!g.languageServiceEnabled)return;let d=g.getSourceFile(c.path),h=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:O4t,data:{info:{checkJs:h}}})}closeClientFile(c,g){let d=this.getScriptInfoForNormalizedPath(op(c)),h=d?this.closeOpenFile(d,g):!1;return g||this.printProjects(),h}collectChanges(c,g,d,h){for(let _ of g){let S=de(c,R=>R.projectName===_.getProjectName());h.push(_.getChangesSinceVersion(S&&S.version,d))}}synchronizeProjectList(c,g){let d=[];return this.collectChanges(c,this.externalProjects,g,d),this.collectChanges(c,lr(this.configuredProjects.values(),h=>h.deferredClose?void 0:h),g,d),this.collectChanges(c,this.inferredProjects,g,d),d}applyChangesInOpenFiles(c,g,d){let h,_,S=!1;if(c)for(let T of c){(h??(h=[])).push(this.getScriptInfoForPath(sse(op(T.fileName),T.projectRootPath?this.getNormalizedAbsolutePath(T.projectRootPath):this.currentDirectory,this.toCanonicalFileName)));let W=this.getOrCreateOpenScriptInfo(op(T.fileName),T.content,Sst(T.scriptKind),T.hasMixedContent,T.projectRootPath?op(T.projectRootPath):void 0);(_||(_=[])).push(W)}if(g)for(let T of g){let W=this.getScriptInfo(T.fileName);pe.assert(!!W),this.applyChangesToFile(W,T.changes)}if(d)for(let T of d)S=this.closeClientFile(T,!0)||S;let R;F(h,(T,W)=>!T&&_[W]&&!_[W].isDynamic?this.tryInvokeWildCardDirectories(_[W]):void 0),_?.forEach(T=>{var W;return(W=this.assignProjectToOpenedScriptInfo(T).retainProjects)==null?void 0:W.forEach((V,M)=>(R??(R=new Map)).set(M,V))}),S&&this.assignOrphanScriptInfosToInferredProject(),_?(this.cleanupProjectsAndScriptInfos(R,new Set(_.map(T=>T.path)),void 0),_.forEach(T=>this.telemetryOnOpenFile(T)),this.printProjects()):B(d)&&this.printProjects()}applyChangesToFile(c,g){for(let d of g)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,g){let d=op(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let _=this.findExternalProjectByProjectName(c);_&&this.removeProject(_)}g&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let g=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,h)=>g.add(h));for(let d of c)this.openExternalProject(d,!1),g.delete(d.projectFileName);g.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=M4t}applySafeList(c){let g=c.typeAcquisition;pe.assert(!!g,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,g);return d?.excludedFiles??[]}applySafeListWorker(c,g,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let h=d.include||(d.include=[]),_=[],S=g.map(M=>Dp(M.fileName));for(let M of Object.keys(this.safelist)){let ee=this.safelist[M];for(let re of S)if(ee.match.test(re)){if(this.logger.info(`Excluding files based on rule ${M} matching file '${re}'`),ee.types)for(let ge of ee.types)h.includes(ge)||h.push(ge);if(ee.exclude)for(let ge of ee.exclude){let Ie=re.replace(ee.match,(..._e)=>ge.map(Ee=>typeof Ee=="number"?Xs(_e[Ee])?jkr.escapeFilenameForRegex(_e[Ee]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${M} - not enough groups`),"\\*"):Ee).join(""));_.includes(Ie)||_.push(Ie)}else{let ge=jkr.escapeFilenameForRegex(re);_.includes(ge)||_.push(ge)}}}let R=_.map(M=>new RegExp(M,"i")),T,W;for(let M=0;Mee.test(S[M])))V(M);else{if(d.enable){let ee=gp(Om(S[M]));if(aA(ee,"js")){let re=s0(ee),ge=us(re),Ie=this.legacySafelist.get(ge);if(Ie!==void 0){this.logger.info(`Excluded '${S[M]}' because it matched ${ge} from the legacy safelist`),V(M),h.includes(Ie)||h.push(Ie);continue}}}/^.+[.-]min\.js$/.test(S[M])?V(M):T?.push(g[M])}return W?{rootFiles:T,excludedFiles:W}:void 0;function V(M){W||(pe.assert(!T),T=g.slice(0,M),W=[]),W.push(S[M])}}openExternalProject(c,g){let d=this.findExternalProjectByProjectName(c.projectFileName),h,_=[];for(let S of c.rootFiles){let R=op(S.fileName);if(gst(R)){if(this.serverMode===0&&this.host.fileExists(R)){let T=this.findConfiguredProjectByProjectName(R);T||(T=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||T.updateGraph()),(h??(h=new Set)).add(T),pe.assert(!T.isClosed())}}else _.push(S)}if(h)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,h),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let S=c.typeAcquisition||{};S.include=S.include||[],S.exclude=S.exclude||[],S.enable===void 0&&(S.enable=G4t(_.map(W=>W.fileName)));let R=this.applySafeListWorker(c,_,S),T=R?.excludedFiles??[];if(_=R?.rootFiles??_,d){d.excludedFiles=T;let W=oWe(c.options),V=s2e(c.options,d.getCurrentDirectory()),M=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,W,_,wst);M?d.disableLanguageService(M):d.enableLanguageService(),d.setProjectErrors(V?.errors),this.updateRootAndOptionsOfNonInferredProject(d,_,wst,W,S,c.options.compileOnSave,V?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,_,c.options,S,T).updateGraph()}g&&(this.cleanupConfiguredProjects(h,new Set([c.projectFileName])),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,g,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${g.name} from candidate paths: ${d.join(",")}`),!g.name||Xr(g.name)||/[\\/]\.\.?(?:$|[\\/])/.test(g.name)){this.logger.info(`Skipped loading plugin ${g.name||JSON.stringify(g)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let h=zz.importServicePluginAsync(g,d,this.host,S=>this.logger.info(S));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let _=this.pendingPluginEnablements.get(c);_||this.pendingPluginEnablements.set(c,_=[]),_.push(h);return}this.endEnablePlugin(c,zz.importServicePluginSync(g,d,this.host,h=>this.logger.info(h)))}endEnablePlugin(c,{pluginConfigEntry:g,resolvedModule:d,errorLogs:h}){var _;if(d){let S=(_=this.currentPluginConfigOverrides)==null?void 0:_.get(g.name);if(S){let R=g.name;g=S,g.name=R}c.enableProxy(d,g)}else F(h,S=>this.logger.info(S)),this.logger.info(`Couldn't find ${g.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;let c=Do(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){pe.assert(this.currentPluginEnablementPromise===void 0);let g=!1;await Promise.all(At(c,async([d,h])=>{let _=await Promise.all(h);if(d.isClosed()||i2e(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}g=!0;for(let S of _)this.endEnablePlugin(d,S);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,g&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(g=>g.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,g,d){let h=this.packageJsonCache,_=d&&this.toPath(d),S=[],R=T=>{switch(h.directoryHasPackageJson(T)){case 3:return h.searchDirectoryAndAncestors(T,g),R(T);case-1:let W=Ro(T,"package.json");this.watchPackageJsonFile(W,this.toPath(W),g);let V=h.getInDirectory(T);V&&S.push(V)}if(_&&_===T)return!0};return vN(g,Mo(c),R),S}getNearestAncestorDirectoryWithPackageJson(c,g){return vN(g,c,d=>{switch(this.packageJsonCache.directoryHasPackageJson(d)){case-1:return d;case 0:return;case 3:return this.host.fileExists(Ro(d,"package.json"))?d:void 0}})}watchPnpFile(){let c=wen(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(g=>{for(let d of g.getScriptInfos())g.resolutionCache.invalidateResolutionOfFile(d.path);g.markAsDirty(),_v(g)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,jm.ConfigFile)}watchPackageJsonFile(c,g,d){pe.assert(d!==void 0);let h=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(g);if(!h){let _=this.watchFactory.watchFile(c,(S,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(S,g),this.onPackageJsonChange(h);break;case 2:this.packageJsonCache.delete(g),this.onPackageJsonChange(h),h.projects.clear(),h.close()}},250,this.hostConfiguration.watchOptions,jm.PackageJson);h={projects:new Set,close:()=>{var S;h.projects.size||!_||(_.close(),_=void 0,(S=this.packageJsonFilesMap)==null||S.delete(g),this.packageJsonCache.invalidate(g))}},this.packageJsonFilesMap.set(g,h)}h.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(h)}onPackageJsonChange(c){c.projects.forEach(g=>{var d;return(d=g.onPackageJsonChange)==null?void 0:d.call(g)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=jWs())}};tfn.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var tJt=tfn;function jWs(){let s;return{get(){return s},set(c){s=c},clear(){s=void 0}}}function rJt(s){return s.kind!==void 0}function nJt(s){s.print(!1,!1,!1)}function iJt(s){let c,g,d,h={get(T,W,V,M){if(!(!g||d!==S(T,V,M)))return g.get(W)},set(T,W,V,M,ee,re,ge){if(_(T,V,M).set(W,R(ee,re,ge,void 0,!1)),ge){for(let Ie of re)if(Ie.isInNodeModules){let _e=Ie.path.substring(0,Ie.path.indexOf(Vx)+Vx.length-1),Ee=s.toPath(_e);c?.has(Ee)||(c||(c=new Map)).set(Ee,s.watchNodeModulesForPackageJsonChanges(_e))}}},setModulePaths(T,W,V,M,ee){let re=_(T,V,M),ge=re.get(W);ge?ge.modulePaths=ee:re.set(W,R(void 0,ee,void 0,void 0,void 0))},setBlockedByPackageJsonDependencies(T,W,V,M,ee,re){let ge=_(T,V,M),Ie=ge.get(W);Ie?(Ie.isBlockedByPackageJsonDependencies=re,Ie.packageName=ee):ge.set(W,R(void 0,void 0,void 0,ee,re))},clear(){c?.forEach(dv),g?.clear(),c?.clear(),d=void 0},count(){return g?g.size:0}};return pe.isDebugging&&Object.defineProperty(h,"__cache",{get:()=>g}),h;function _(T,W,V){let M=S(T,W,V);return g&&d!==M&&h.clear(),d=M,g||(g=new Map)}function S(T,W,V){return`${T},${W.importModuleSpecifierEnding},${W.importModuleSpecifierPreference},${V.overrideImportMode}`}function R(T,W,V,M,ee){return{kind:T,modulePaths:W,moduleSpecifiers:V,packageName:M,isBlockedByPackageJsonDependencies:ee}}}function sJt(s){let c=new Map,g=new Map;return{addOrUpdate:d,invalidate:h,delete:S=>{c.delete(S),g.set(Mo(S),!0)},getInDirectory:S=>c.get(s.toPath(Ro(S,"package.json")))||void 0,directoryHasPackageJson:S=>_(s.toPath(S)),searchDirectoryAndAncestors:(S,R)=>{vN(R,S,T=>{let W=s.toPath(T);if(_(W)!==3)return!0;let V=Ro(T,"package.json");Kie(s,V)?d(V,Ro(W,"package.json")):g.set(W,!0)})}};function d(S,R){let T=pe.checkDefined(int(S,s.host));c.set(R,T),g.delete(Mo(R))}function h(S){c.delete(S),g.delete(Mo(S))}function _(S){return c.has(Ro(S,"package.json"))?-1:g.has(S)?0:3}}var rfn={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function zWs(s){let c=s[0],g=s[1];return(1e9*c+g)/1e6}function nfn(s,c){if((ose(s)||r2e(s))&&s.isJsOnlyProject()){let g=s.getScriptInfoForNormalizedPath(c);return g&&!g.isJavaScript()}return!1}function qWs(s){return Ly(s)||!!s.emitDecoratorMetadata}function ifn(s,c,g){let d=c.getScriptInfoForNormalizedPath(s);return{start:d.positionToLineOffset(g.start),end:d.positionToLineOffset(g.start+g.length),text:wN(g.messageText,` -`),code:g.code,category:_b(g),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,source:g.source,relatedInformation:At(g.relatedInformation,Dst)}}function Dst(s){return s.file?{span:{start:cse(Ra(s.file,s.start)),end:cse(Ra(s.file,s.start+s.length)),file:s.file.fileName},message:wN(s.messageText,` -`),category:_b(s),code:s.code}:{message:wN(s.messageText,` -`),category:_b(s),code:s.code}}function cse(s){return{line:s.line+1,offset:s.character+1}}function o2e(s,c){let g=s.file&&cse(Ra(s.file,s.start)),d=s.file&&cse(Ra(s.file,s.start+s.length)),h=wN(s.messageText,` -`),{code:_,source:S}=s,R=_b(s),T={start:g,end:d,text:h,code:_,category:R,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated,source:S,relatedInformation:At(s.relatedInformation,Dst)};return c?{...T,fileName:s.file&&s.file.fileName}:T}function $Ws(s,c){return s.every(g=>Rs(g.span){this.immediateId=void 0,this.operationHost.executeWithRequestId(g,()=>this.executeAction(c),this.performanceData)},s))}delay(s,c,g){let d=this.requestId;pe.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(g),this.performanceData)},c,s))}executeAction(s){var c,g,d,h,_,S;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=ki)==null||c.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((g=ki)==null||g.push(ki.Phase.Session,"stepAction",{seq:this.requestId}),s(this),(d=ki)==null||d.pop())}catch(T){(h=ki)==null||h.popAll(),R=!0,T instanceof By?(_=ki)==null||_.instant(ki.Phase.Session,"stepCanceled",{seq:this.requestId}):((S=ki)==null||S.instant(ki.Phase.Session,"stepError",{seq:this.requestId,message:T.message}),this.operationHost.logError(T,`delayed processing of request ${this.requestId}`))}this.performanceData=this.operationHost.getPerformanceData(),(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(s){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=s}setImmediateId(s){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=s}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function aJt(s,c){return{seq:0,type:"event",event:s,body:c}}function tOs(s,c,g,d){let h=vt(Ki(g)?g:g.projects,_=>d(_,s));return!Ki(g)&&g.symLinkedProjects&&g.symLinkedProjects.forEach((_,S)=>{let R=c(S);h.push(...er(_,T=>d(T,R)))}),io(h,yg)}function kst(s){return oo(({textSpan:c})=>c.start+100003*c.length,Qrt(s))}function rOs(s,c,g,d,h,_,S){let R=cJt(s,c,g,ofn(c,g,!0),lfn,(V,M)=>V.getLanguageService().findRenameLocations(M.fileName,M.pos,d,h,_),(V,M)=>M(Ipe(V)));if(Ki(R))return R;let T=[],W=kst(S);return R.forEach((V,M)=>{for(let ee of V)!W.has(ee)&&!xst(Ipe(ee),M)&&(T.push(ee),W.add(ee))}),T}function ofn(s,c,g){let d=s.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,g),h=d&&Nc(d);return h&&!h.isLocal?{fileName:h.fileName,pos:h.textSpan.start}:void 0}function nOs(s,c,g,d,h){var _,S;let R=cJt(s,c,g,ofn(c,g,!1),lfn,(M,ee)=>(h.info(`Finding references to ${ee.fileName} position ${ee.pos} in project ${M.getProjectName()}`),M.getLanguageService().findReferences(ee.fileName,ee.pos)),(M,ee)=>{ee(Ipe(M.definition));for(let re of M.references)ee(Ipe(re))});if(Ki(R))return R;let T=R.get(c);if(((S=(_=T?.[0])==null?void 0:_.references[0])==null?void 0:S.isDefinition)===void 0)R.forEach(M=>{for(let ee of M)for(let re of ee.references)delete re.isDefinition});else{let M=kst(d);for(let re of T)for(let ge of re.references)if(ge.isDefinition){M.add(ge);break}let ee=new Set;for(;;){let re=!1;if(R.forEach((ge,Ie)=>{if(ee.has(Ie))return;Ie.getLanguageService().updateIsDefinitionOfReferencedSymbols(ge,M)&&(ee.add(Ie),re=!0)}),!re)break}R.forEach((re,ge)=>{if(!ee.has(ge))for(let Ie of re)for(let _e of Ie.references)_e.isDefinition=!1})}let W=[],V=kst(d);return R.forEach((M,ee)=>{for(let re of M){let ge=xst(Ipe(re.definition),ee),Ie=ge===void 0?re.definition:{...re.definition,textSpan:zd(ge.pos,re.definition.textSpan.length),fileName:ge.fileName,contextSpan:sOs(re.definition,ee)},_e=de(W,Ee=>Yrt(Ee.definition,Ie,d));_e||(_e={definition:Ie,references:[]},W.push(_e));for(let Ee of re.references)!V.has(Ee)&&!xst(Ipe(Ee),ee)&&(V.add(Ee),_e.references.push(Ee))}}),W.filter(M=>M.references.length!==0)}function afn(s,c,g){for(let d of Ki(s)?s:s.projects)g(d,c);!Ki(s)&&s.symLinkedProjects&&s.symLinkedProjects.forEach((d,h)=>{for(let _ of d)g(_,h)})}function cJt(s,c,g,d,h,_,S){let R=new Map,T=oA();T.enqueue({project:c,location:g}),afn(s,g.fileName,(Ie,_e)=>{let Ee={fileName:_e,pos:g.pos};T.enqueue({project:Ie,location:Ee})});let W=c.projectService,V=c.getCancellationToken(),M=FA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(d)),ee=FA(()=>c.isSourceOfProjectReferenceRedirect(d.fileName)?d:c.getLanguageService().getSourceMapper().tryGetSourcePosition(d)),re=new Set;e:for(;!T.isEmpty();){for(;!T.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ie,location:_e}=T.dequeue();if(R.has(Ie)||ufn(Ie,_e)||(_v(Ie),!Ie.containsFile(op(_e.fileName))))continue;let Ee=ge(Ie,_e);R.set(Ie,Ee??zm),re.add(iOs(Ie))}d&&(W.loadAncestorProjectTree(re),W.forEachEnabledProject(Ie=>{if(V.isCancellationRequested()||R.has(Ie))return;let _e=h(d,Ie,M,ee);_e&&T.enqueue({project:Ie,location:_e})}))}if(R.size===1)return vu(R.values());return R;function ge(Ie,_e){let Ee=_(Ie,_e);if(!Ee||!S)return Ee;for(let Ne of Ee)S(Ne,Te=>{let Ze=W.getOriginalLocationEnsuringConfiguredProject(Ie,Te);if(!Ze)return;let We=W.getScriptInfo(Ze.fileName);for(let $e of We.containingProjects)!$e.isOrphan()&&!R.has($e)&&T.enqueue({project:$e,location:Ze});let Ue=W.getSymlinkedProjects(We);Ue&&Ue.forEach(($e,Ye)=>{for(let Tt of $e)!Tt.isOrphan()&&!R.has(Tt)&&T.enqueue({project:Tt,location:{fileName:Ye,pos:Ze.pos}})})});return Ee}}function cfn(s,c){if(c.containsFile(op(s.fileName))&&!ufn(c,s))return s}function lfn(s,c,g,d){let h=cfn(s,c);if(h)return h;let _=g();if(_&&c.containsFile(op(_.fileName)))return _;let S=d();return S&&c.containsFile(op(S.fileName))?S:void 0}function ufn(s,c){if(!c)return!1;let g=s.getLanguageService().getProgram();if(!g)return!1;let d=g.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==s.toPath(c.fileName)}function iOs(s){return s9(s)?s.canonicalConfigFilePath:s.getProjectName()}function Ipe({fileName:s,textSpan:c}){return{fileName:s,pos:c.start}}function xst(s,c){return Jde(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function gfn(s,c){return qVe(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}function sOs(s,c){return Jrt(s,c.getSourceMapper(),g=>c.projectService.fileExists(g))}var Afn=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits","copilotRelated"],oOs=[...Afn,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full","preparePasteEdits"],dfn=class JEt{constructor(c){this.changeSeq=0,this.regionDiagLineCountThreshold=500,this.handlers=new Map(Object.entries({status:()=>{let _={version:C};return this.requiredResponse(_)},openExternalProject:_=>(this.projectService.openExternalProject(_.arguments,!0),this.requiredResponse(!0)),openExternalProjects:_=>(this.projectService.openExternalProjects(_.arguments.projects),this.requiredResponse(!0)),closeExternalProject:_=>(this.projectService.closeExternalProject(_.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:_=>{let S=this.projectService.synchronizeProjectList(_.arguments.knownProjects,_.arguments.includeProjectReferenceRedirectInfo);if(!S.some(T=>T.projectErrors&&T.projectErrors.length!==0))return this.requiredResponse(S);let R=At(S,T=>!T.projectErrors||T.projectErrors.length===0?T:{info:T.info,changes:T.changes,files:T.files,projectErrors:this.convertToDiagnosticsWithLinePosition(T.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles&&Yt(_.arguments.openFiles,S=>({fileName:S.file,content:S.fileContent,scriptKind:S.scriptKindName,projectRootPath:S.projectRootPath})),_.arguments.changedFiles&&Yt(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:lr(Qa(S.textChanges),R=>{let T=pe.checkDefined(this.projectService.getScriptInfo(S.fileName)),W=T.lineOffsetToPosition(R.start.line,R.start.offset),V=T.lineOffsetToPosition(R.end.line,R.end.offset);return W>=0?{span:{start:W,length:V-W},newText:R.newText}:void 0})})),_.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:_=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(_.arguments.openFiles,_.arguments.changedFiles&&Yt(_.arguments.changedFiles,S=>({fileName:S.fileName,changes:Qa(S.changes)})),_.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired(void 0)),definition:_=>this.requiredResponse(this.getDefinition(_.arguments,!0)),"definition-full":_=>this.requiredResponse(this.getDefinition(_.arguments,!1)),definitionAndBoundSpan:_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!0)),"definitionAndBoundSpan-full":_=>this.requiredResponse(this.getDefinitionAndBoundSpan(_.arguments,!1)),findSourceDefinition:_=>this.requiredResponse(this.findSourceDefinition(_.arguments)),"emit-output":_=>this.requiredResponse(this.getEmitOutput(_.arguments)),typeDefinition:_=>this.requiredResponse(this.getTypeDefinition(_.arguments)),implementation:_=>this.requiredResponse(this.getImplementation(_.arguments,!0)),"implementation-full":_=>this.requiredResponse(this.getImplementation(_.arguments,!1)),references:_=>this.requiredResponse(this.getReferences(_.arguments,!0)),"references-full":_=>this.requiredResponse(this.getReferences(_.arguments,!1)),rename:_=>this.requiredResponse(this.getRenameLocations(_.arguments,!0)),"renameLocations-full":_=>this.requiredResponse(this.getRenameLocations(_.arguments,!1)),"rename-full":_=>this.requiredResponse(this.getRenameInfo(_.arguments)),open:_=>(this.openClientFile(op(_.arguments.file),_.arguments.fileContent,vst(_.arguments.scriptKindName),_.arguments.projectRootPath?op(_.arguments.projectRootPath):void 0),this.notRequired(_)),quickinfo:_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!0)),"quickinfo-full":_=>this.requiredResponse(this.getQuickInfoWorker(_.arguments,!1)),getOutliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!0)),outliningSpans:_=>this.requiredResponse(this.getOutliningSpans(_.arguments,!1)),todoComments:_=>this.requiredResponse(this.getTodoComments(_.arguments)),indentation:_=>this.requiredResponse(this.getIndentation(_.arguments)),nameOrDottedNameSpan:_=>this.requiredResponse(this.getNameOrDottedNameSpan(_.arguments)),breakpointStatement:_=>this.requiredResponse(this.getBreakpointStatement(_.arguments)),braceCompletion:_=>this.requiredResponse(this.isValidBraceCompletion(_.arguments)),docCommentTemplate:_=>this.requiredResponse(this.getDocCommentTemplate(_.arguments)),getSpanOfEnclosingComment:_=>this.requiredResponse(this.getSpanOfEnclosingComment(_.arguments)),fileReferences:_=>this.requiredResponse(this.getFileReferences(_.arguments,!0)),"fileReferences-full":_=>this.requiredResponse(this.getFileReferences(_.arguments,!1)),format:_=>this.requiredResponse(this.getFormattingEditsForRange(_.arguments)),formatonkey:_=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(_.arguments)),"format-full":_=>this.requiredResponse(this.getFormattingEditsForDocumentFull(_.arguments)),"formatonkey-full":_=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(_.arguments)),"formatRange-full":_=>this.requiredResponse(this.getFormattingEditsForRangeFull(_.arguments)),completionInfo:_=>this.requiredResponse(this.getCompletions(_.arguments,"completionInfo")),completions:_=>this.requiredResponse(this.getCompletions(_.arguments,"completions")),"completions-full":_=>this.requiredResponse(this.getCompletions(_.arguments,"completions-full")),completionEntryDetails:_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!1)),"completionEntryDetails-full":_=>this.requiredResponse(this.getCompletionEntryDetails(_.arguments,!0)),compileOnSaveAffectedFileList:_=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(_.arguments)),compileOnSaveEmitFile:_=>this.requiredResponse(this.emitFile(_.arguments)),signatureHelp:_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!0)),"signatureHelp-full":_=>this.requiredResponse(this.getSignatureHelpItems(_.arguments,!1)),"compilerOptionsDiagnostics-full":_=>this.requiredResponse(this.getCompilerOptionsDiagnostics(_.arguments)),"encodedSyntacticClassifications-full":_=>this.requiredResponse(this.getEncodedSyntacticClassifications(_.arguments)),"encodedSemanticClassifications-full":_=>this.requiredResponse(this.getEncodedSemanticClassifications(_.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:_=>this.requiredResponse(this.getSemanticDiagnosticsSync(_.arguments)),syntacticDiagnosticsSync:_=>this.requiredResponse(this.getSyntacticDiagnosticsSync(_.arguments)),suggestionDiagnosticsSync:_=>this.requiredResponse(this.getSuggestionDiagnosticsSync(_.arguments)),geterr:_=>(this.errorCheck.startNew(S=>this.getDiagnostics(S,_.arguments.delay,_.arguments.files)),this.notRequired(void 0)),geterrForProject:_=>(this.errorCheck.startNew(S=>this.getDiagnosticsForProject(S,_.arguments.delay,_.arguments.file)),this.notRequired(void 0)),change:_=>(this.change(_.arguments),this.notRequired(_)),configure:_=>(this.projectService.setHostConfiguration(_.arguments),this.notRequired(_)),reload:_=>(this.reload(_.arguments),this.requiredResponse({reloadFinished:!0})),saveto:_=>{let S=_.arguments;return this.saveToTmp(S.file,S.tmpfile),this.notRequired(_)},close:_=>{let S=_.arguments;return this.closeClientFile(S.file),this.notRequired(_)},navto:_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!0)),"navto-full":_=>this.requiredResponse(this.getNavigateToItems(_.arguments,!1)),brace:_=>this.requiredResponse(this.getBraceMatching(_.arguments,!0)),"brace-full":_=>this.requiredResponse(this.getBraceMatching(_.arguments,!1)),navbar:_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!0)),"navbar-full":_=>this.requiredResponse(this.getNavigationBarItems(_.arguments,!1)),navtree:_=>this.requiredResponse(this.getNavigationTree(_.arguments,!0)),"navtree-full":_=>this.requiredResponse(this.getNavigationTree(_.arguments,!1)),documentHighlights:_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!0)),"documentHighlights-full":_=>this.requiredResponse(this.getDocumentHighlights(_.arguments,!1)),compilerOptionsForInferredProjects:_=>(this.setCompilerOptionsForInferredProjects(_.arguments),this.requiredResponse(!0)),projectInfo:_=>this.requiredResponse(this.getProjectInfo(_.arguments)),reloadProjects:_=>(this.projectService.reloadProjects(),this.notRequired(_)),jsxClosingTag:_=>this.requiredResponse(this.getJsxClosingTag(_.arguments)),linkedEditingRange:_=>this.requiredResponse(this.getLinkedEditingRange(_.arguments)),getCodeFixes:_=>this.requiredResponse(this.getCodeFixes(_.arguments,!0)),"getCodeFixes-full":_=>this.requiredResponse(this.getCodeFixes(_.arguments,!1)),getCombinedCodeFix:_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!0)),"getCombinedCodeFix-full":_=>this.requiredResponse(this.getCombinedCodeFix(_.arguments,!1)),applyCodeActionCommand:_=>this.requiredResponse(this.applyCodeActionCommand(_.arguments)),getSupportedCodeFixes:_=>this.requiredResponse(this.getSupportedCodeFixes(_.arguments)),getApplicableRefactors:_=>this.requiredResponse(this.getApplicableRefactors(_.arguments)),getEditsForRefactor:_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!0)),getMoveToRefactoringFileSuggestions:_=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(_.arguments)),preparePasteEdits:_=>this.requiredResponse(this.preparePasteEdits(_.arguments)),getPasteEdits:_=>this.requiredResponse(this.getPasteEdits(_.arguments)),"getEditsForRefactor-full":_=>this.requiredResponse(this.getEditsForRefactor(_.arguments,!1)),organizeImports:_=>this.requiredResponse(this.organizeImports(_.arguments,!0)),"organizeImports-full":_=>this.requiredResponse(this.organizeImports(_.arguments,!1)),getEditsForFileRename:_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!0)),"getEditsForFileRename-full":_=>this.requiredResponse(this.getEditsForFileRename(_.arguments,!1)),configurePlugin:_=>(this.configurePlugin(_.arguments),this.notRequired(_)),selectionRange:_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!0)),"selectionRange-full":_=>this.requiredResponse(this.getSmartSelectionRange(_.arguments,!1)),prepareCallHierarchy:_=>this.requiredResponse(this.prepareCallHierarchy(_.arguments)),provideCallHierarchyIncomingCalls:_=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(_.arguments)),provideCallHierarchyOutgoingCalls:_=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(_.arguments)),toggleLineComment:_=>this.requiredResponse(this.toggleLineComment(_.arguments,!0)),"toggleLineComment-full":_=>this.requiredResponse(this.toggleLineComment(_.arguments,!1)),toggleMultilineComment:_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!0)),"toggleMultilineComment-full":_=>this.requiredResponse(this.toggleMultilineComment(_.arguments,!1)),commentSelection:_=>this.requiredResponse(this.commentSelection(_.arguments,!0)),"commentSelection-full":_=>this.requiredResponse(this.commentSelection(_.arguments,!1)),uncommentSelection:_=>this.requiredResponse(this.uncommentSelection(_.arguments,!0)),"uncommentSelection-full":_=>this.requiredResponse(this.uncommentSelection(_.arguments,!1)),provideInlayHints:_=>this.requiredResponse(this.provideInlayHints(_.arguments)),mapCode:_=>this.requiredResponse(this.mapCode(_.arguments)),copilotRelated:()=>this.requiredResponse(this.getCopilotRelatedInfo())})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||aWe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:g}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(_=>this.defaultEventHandler(_)):void 0;let d={executeWithRequestId:(_,S,R)=>this.executeWithRequestId(_,S,R),getCurrentRequestId:()=>this.currentRequestId,getPerformanceData:()=>this.performanceData,getServerHost:()=>this.host,logError:(_,S)=>this.logError(_,S),sendRequestCompletedEvent:(_,S)=>this.sendRequestCompletedEvent(_,S),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new eOs(d);let h={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:g,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new tJt(h),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new v4t(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:Afn.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:oOs.forEach(_=>this.handlers.set(_,S=>{throw new Error(`Request: ${S.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:pe.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c,g){this.event({request_seq:c,performanceData:g&&pfn(g)},"requestCompleted")}addPerformanceData(c,g){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+g}addDiagnosticsPerformanceData(c,g,d){var h,_;this.performanceData||(this.performanceData={});let S=(h=this.performanceData.diagnosticsDuration)==null?void 0:h.get(c);S||((_=this.performanceData).diagnosticsDuration??(_.diagnosticsDuration=new Map)).set(c,S={}),S[g]=d}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case sWe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case fst:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case Ist:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case hst:case yst:case bst:case Est:this.event(c.data,c.eventName);break;case mst:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:At(c.data.diagnostics,g=>o2e(g,!0))},c.eventName);break;case Cst:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case _st:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(g=>this.updateErrorCheck(g,c,100,!0))),this.event({openFiles:c},sWe))}logError(c,g){this.logErrorWorker(c,g)}logErrorWorker(c,g,d){let h="Exception on executing command "+g;if(c.message&&(h+=`: -`+Wde(c.message),c.stack&&(h+=` -`+Wde(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:_,project:S}=this.getFileAndProject(d),R=S.getScriptInfoForNormalizedPath(_);if(R){let T=Lz(R.getSnapshot());h+=` - -File text of ${d.file}:${Wde(T)} -`}}catch{}if(c.ProgramFiles){h+=` - -Program files: ${JSON.stringify(c.ProgramFiles)} -`,h+=` - -Projects:: -`;let _=0,S=R=>{h+=` -Project '${R.projectName}' (${fpe[R.projectKind]}) ${_} -`,h+=R.filesToString(!0),h+=` ------------------------------------------------ -`,_++};this.projectService.externalProjects.forEach(S),this.projectService.configuredProjects.forEach(S),this.projectService.inferredProjects.forEach(S)}}this.logger.msg(h,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${j3(c)}`);return}this.writeMessage(c)}writeMessage(c){let g=oJt(c,this.logger,this.byteLength,this.host.newLine);this.host.write(g)}event(c,g){this.send(aJt(g,c))}doOutput(c,g,d,h,_,S){let R={seq:0,type:"response",command:g,request_seq:d,success:h,performanceData:_&&pfn(_)};if(h){let T;if(Ki(c))R.body=c,T=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:W,...V}=c;R.body=V,T=W}else R.body=c;else R.body=c;T&&(R.metadata=T)}else pe.assert(c===void 0);S&&(R.message=S),this.send(R)}semanticCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"semanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let S=nfn(g,c)?zm:g.getLanguageService().getSemanticDiagnostics(c).filter(R=>!!R.file);this.sendDiagnosticsEvent(c,g,S,"semanticDiag",_),(h=ki)==null||h.pop()}syntacticCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"syntacticCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag",_),(h=ki)==null||h.pop()}suggestionCheck(c,g){var d,h;let _=Fg();(d=ki)==null||d.push(ki.Phase.Session,"suggestionCheck",{file:c,configFilePath:g.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,g,g.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag",_),(h=ki)==null||h.pop()}regionSemanticCheck(c,g,d){var h,_,S;let R=Fg();(h=ki)==null||h.push(ki.Phase.Session,"regionSemanticCheck",{file:c,configFilePath:g.canonicalConfigFilePath});let T;if(!this.shouldDoRegionCheck(c)||!(T=g.getLanguageService().getRegionSemanticDiagnostics(c,d))){(_=ki)==null||_.pop();return}this.sendDiagnosticsEvent(c,g,T.diagnostics,"regionSemanticDiag",R,T.spans),(S=ki)==null||S.pop()}shouldDoRegionCheck(c){var g;let d=(g=this.projectService.getScriptInfoForNormalizedPath(c))==null?void 0:g.textStorage.getLineInfo().getLineCount();return!!(d&&d>=this.regionDiagLineCountThreshold)}sendDiagnosticsEvent(c,g,d,h,_,S){try{let R=pe.checkDefined(g.getScriptInfo(c)),T=Fg()-_,W={file:c,diagnostics:d.map(V=>ifn(c,g,V)),spans:S?.map(V=>kN(V,R))};this.event(W,h),this.addDiagnosticsPerformanceData(c,h,T)}catch(R){this.logError(R,h)}}updateErrorCheck(c,g,d,h=!0){if(g.length===0)return;pe.assert(!this.suppressDiagnosticEvents);let _=this.changeSeq,S=Math.min(d,200),R=0,T=()=>{if(R++,g.length>R)return c.delay("checkOne",S,V)},W=(M,ee)=>{if(this.semanticCheck(M,ee),this.changeSeq===_){if(this.getPreferences(M).disableSuggestions)return T();c.immediate("suggestionCheck",()=>{this.suggestionCheck(M,ee),T()})}},V=()=>{if(this.changeSeq!==_)return;let M,ee=g[R];if(Xs(ee)?ee=this.toPendingErrorCheck(ee):"ranges"in ee&&(M=ee.ranges,ee=this.toPendingErrorCheck(ee.file)),!ee)return T();let{fileName:re,project:ge}=ee;if(_v(ge),!!ge.containsFile(re,h)&&(this.syntacticCheck(re,ge),this.changeSeq===_)){if(ge.projectService.serverMode!==0)return T();if(M)return c.immediate("regionSemanticCheck",()=>{let Ie=this.projectService.getScriptInfoForNormalizedPath(re);Ie&&this.regionSemanticCheck(re,ge,M.map(_e=>this.getRange({file:re,..._e},Ie))),this.changeSeq===_&&c.immediate("semanticCheck",()=>W(re,ge))});c.immediate("semanticCheck",()=>W(re,ge))}};g.length>R&&this.changeSeq===_&&c.delay("checkOne",d,V)}cleanProjects(c,g){if(g){this.logger.info(`cleaning ${c}`);for(let d of g)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",Do(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(g,c)}getEncodedSemanticClassifications(c){let{file:g,project:d}=this.getFileAndProject(c),h=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(g,c,h)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let g=this.getProject(c.projectFileName),d=op(c.file);return{configFile:g&&g.hasConfigFile(d)?d:void 0,project:g}}getConfigFileDiagnostics(c,g,d){let h=g.getAllProjectErrors(),_=g.getLanguageService().getCompilerOptionsDiagnostics(),S=Me(Nn(h,_),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):At(S,R=>o2e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(g=>({message:wN(g.messageText,this.host.newLine),start:g.start,length:g.length,category:_b(g),code:g.code,source:g.source,startLocation:g.file&&cse(Ra(g.file,g.start)),endLocation:g.file&&cse(Ra(g.file,g.start+g.length)),reportsUnnecessary:g.reportsUnnecessary,reportsDeprecated:g.reportsDeprecated,relatedInformation:At(g.relatedInformation,Dst)}))}getCompilerOptionsDiagnostics(c){let g=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Me(g.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,g){return c.map(d=>({message:wN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:_b(d),code:d.code,source:d.source,startLocation:g&&g.positionToLineOffset(d.start),endLocation:g&&g.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:At(d.relatedInformation,Dst)}))}getDiagnosticsWorker(c,g,d,h){let{project:_,file:S}=this.getFileAndProject(c);if(g&&nfn(_,S))return zm;let R=_.getScriptInfoForNormalizedPath(S),T=d(_,S);return h?this.convertToDiagnosticsWithLinePosition(T,R):T.map(W=>ifn(S,_,W))}getDefinition(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapDefinitionInfoLocations(h.getLanguageService().getDefinitionAtPosition(d,_)||zm,h);return g?this.mapDefinitionInfo(S,h):S.map(JEt.mapToOriginalLocation)}mapDefinitionInfoLocations(c,g){return c.map(d=>{let h=gfn(d,g);return h?{...h,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=pe.checkDefined(h.getScriptInfo(d)),R=h.getLanguageService().getDefinitionAndBoundSpan(d,_);if(!R||!R.definitions)return{definitions:zm,textSpan:void 0};let T=this.mapDefinitionInfoLocations(R.definitions,h),{textSpan:W}=R;return g?{definitions:this.mapDefinitionInfo(T,h),textSpan:kN(W,S)}:{definitions:T.map(JEt.mapToOriginalLocation),textSpan:W}}findSourceDefinition(c){var g;let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDefinitionAtPosition(d,_),R=this.mapDefinitionInfoLocations(S||zm,h).slice();if(this.projectService.serverMode===0&&(!jt(R,re=>op(re.fileName)!==d&&!re.isAmbient)||jt(R,re=>!!re.failedAliasResolution))){let re=oo(Ee=>Ee.textSpan.start,Qrt(this.host.useCaseSensitiveFileNames));R?.forEach(Ee=>re.add(Ee));let ge=h.getNoDtsResolutionProject(d),Ie=ge.getLanguageService(),_e=(g=Ie.getDefinitionAtPosition(d,_,!0,!1))==null?void 0:g.filter(Ee=>op(Ee.fileName)!==d);if(jt(_e))for(let Ee of _e){if(Ee.unverified){let Ne=M(Ee,h.getLanguageService().getProgram(),Ie.getProgram());if(jt(Ne)){for(let Te of Ne)re.add(Te);continue}}re.add(Ee)}else{let Ee=R.filter(Ne=>op(Ne.fileName)!==d&&Ne.isAmbient);for(let Ne of jt(Ee)?Ee:V()){let Te=W(Ne.fileName,d,ge);if(!Te)continue;let Ze=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Te,ge.currentDirectory,ge.directoryStructureHost,!1);if(!Ze)continue;ge.containsScriptInfo(Ze)||(ge.addRoot(Ze),ge.updateGraph());let We=Ie.getProgram(),Ue=pe.checkDefined(We.getSourceFile(Te));for(let $e of ee(Ne.name,Ue,We))re.add($e)}}R=Do(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,h);function W(re,ge,Ie){var _e,Ee,Ne;let Te=MAe(re);if(Te&&re.lastIndexOf(Vx)===Te.topLevelNodeModulesIndex){let Ze=re.substring(0,Te.packageRootIndex),We=(_e=h.getModuleResolutionCache())==null?void 0:_e.getPackageJsonInfoCache(),Ue=h.getCompilationSettings(),$e=yde(Xc(Ze,h.getCurrentDirectory()),_de(We,h,Ue));if(!$e)return;let Ye=Aet($e,{moduleResolution:2},h,h.getModuleResolutionCache()),Tt=re.substring(Te.topLevelPackageNameIndex+1,Te.packageRootIndex),ot=bde(NEe(Tt)),Qe=h.toPath(re);if(Ye&&jt(Ye,mt=>h.toPath(mt)===Qe))return(Ee=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(ot,ge).resolvedModule)==null?void 0:Ee.resolvedFileName;{let mt=re.substring(Te.packageRootIndex+1),ht=`${ot}/${s0(mt)}`;return(Ne=Ie.resolutionCache.resolveSingleModuleNameWithoutWatching(ht,ge).resolvedModule)==null?void 0:Ne.resolvedFileName}}}function V(){let re=h.getLanguageService(),ge=re.getProgram(),Ie=Lb(ge.getSourceFile(d),_);return(mA(Ie)||Ir(Ie))&&_p(Ie.parent)&&jZe(Ie,_e=>{var Ee;if(_e===Ie)return;let Ne=(Ee=re.getDefinitionAtPosition(d,_e.getStart(),!0,!1))==null?void 0:Ee.filter(Te=>op(Te.fileName)!==d&&Te.isAmbient).map(Te=>({fileName:Te.fileName,name:c2(Ie)}));if(jt(Ne))return Ne})||zm}function M(re,ge,Ie){var _e;let Ee=Ie.getSourceFile(re.fileName);if(!Ee)return;let Ne=Lb(ge.getSourceFile(d),_),Te=ge.getTypeChecker().getSymbolAtLocation(Ne),Ze=Te&&Cp(Te,277);if(!Ze)return;let We=((_e=Ze.propertyName)==null?void 0:_e.text)||Ze.name.text;return ee(We,Ee,Ie)}function ee(re,ge,Ie){let _e=Kp.Core.getTopMostDeclarationNamesInFile(re,ge);return Xt(_e,Ee=>{let Ne=Ie.getTypeChecker().getSymbolAtLocation(Ee),Te=T7(Ee);if(Ne&&Te)return nse.createDefinitionInfo(Te,Ie.getTypeChecker(),Ne,Te,!0)})}}getEmitOutput(c){let{file:g,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(g)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let h=d.getLanguageService().getEmitOutput(g);return c.richResponse?{...h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(h.diagnostics):h.diagnostics.map(_=>o2e(_,!0))}:h}mapJSDocTagInfo(c,g,d){return c?c.map(h=>{var _;return{...h,text:d?this.mapDisplayParts(h.text,g):(_=h.text)==null?void 0:_.map(S=>S.text).join("")}}):[]}mapDisplayParts(c,g){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,g)}):[]}mapSignatureHelpItems(c,g,d){return c.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,g),parameters:h.parameters.map(_=>({..._,documentation:this.mapDisplayParts(_.documentation,g)})),tags:this.mapJSDocTagInfo(h.tags,g,d)}))}mapDefinitionInfo(c,g){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,g),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(pe.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,g,d){let h=d.getLanguageService(),_=h.toLineColumnOffset(c,g.start),S=h.toLineColumnOffset(c,Rs(g));return{file:c,start:{line:_.line+1,offset:_.character+1},end:{line:S.line+1,offset:S.character+1}}}toFileSpanWithContext(c,g,d,h){let _=this.toFileSpan(c,g,h),S=d&&this.toFileSpan(c,d,h);return S?{..._,contextStart:S.start,contextEnd:S.end}:_}getTypeDefinition(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(g,h)||zm,d);return this.mapDefinitionInfo(_,d)}mapImplementationLocations(c,g){return c.map(d=>{let h=gfn(d,g);return h?{...h,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=this.mapImplementationLocations(h.getLanguageService().getImplementationAtPosition(d,_)||zm,h);return g?S.map(({fileName:R,textSpan:T,contextSpan:W})=>this.toFileSpanWithContext(R,T,W,h)):S.map(JEt.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?zm:this.getDiagnosticsWorker(c,!1,(d,h)=>d.getLanguageService().getSyntacticDiagnostics(h),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:g,project:d}=this.getConfigFileAndProject(c);return g?this.getConfigFileDiagnostics(g,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(h,_)=>h.getLanguageService().getSemanticDiagnostics(_).filter(S=>!!S.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:g}=this.getConfigFileAndProject(c);return g?zm:this.getDiagnosticsWorker(c,!0,(d,h)=>d.getLanguageService().getSuggestionDiagnostics(h),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getJsxClosingTagAtPosition(g,h);return _===void 0?void 0:{newText:_.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=d.getLinkedEditingRangeAtPosition(g,h),S=this.projectService.getScriptInfoForNormalizedPath(g);if(!(S===void 0||_===void 0))return cOs(_,S)}getDocumentHighlights(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.getPositionInFile(c,d),S=h.getLanguageService().getDocumentHighlights(d,_,c.filesToSearch);return S?g?S.map(({fileName:R,highlightSpans:T})=>{let W=h.getScriptInfo(R);return{file:R,highlightSpans:T.map(({textSpan:V,kind:M,contextSpan:ee})=>({...lJt(V,ee,W),kind:M}))}}):S:zm}provideInlayHints(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);return d.getLanguageService().provideInlayHints(g,c,this.getPreferences(g)).map(S=>{let{position:R,displayParts:T}=S;return{...S,position:h.positionToLineOffset(R),displayParts:T?.map(({text:W,span:V,file:M})=>{if(V){pe.assertIsDefined(M,"Target file should be defined together with its span.");let ee=this.projectService.getScriptInfo(M);return{text:W,span:{start:ee.positionToLineOffset(V.start),end:ee.positionToLineOffset(V.start+V.length),file:M}}}else return{text:W}})}})}mapCode(c){var g;let d=this.getHostFormatOptions(),h=this.getHostPreferences(),{file:_,languageService:S}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(_),T=(g=c.mapping.focusLocations)==null?void 0:g.map(V=>V.map(M=>{let ee=R.lineOffsetToPosition(M.start.line,M.start.offset),re=R.lineOffsetToPosition(M.end.line,M.end.offset);return{start:ee,length:re-ee}})),W=S.mapCode(_,c.mapping.contents,T,d,h);return this.mapTextChangesToCodeEdits(W)}getCopilotRelatedInfo(){return{relatedFiles:[]}}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,c.needDefaultConfiguredProjectInfo,!1)}getProjectInfoWorker(c,g,d,h,_){let{project:S}=this.getFileAndProjectWorker(c,g);return _v(S),{configFileName:S.getProjectName(),languageServiceDisabled:!S.languageServiceEnabled,fileNames:d?S.getFileNames(!1,_):void 0,configuredProjectInfo:h?this.getDefaultConfiguredProjectInfo(c):void 0}}getDefaultConfiguredProjectInfo(c){var g;let d=this.projectService.getScriptInfo(c);if(!d)return;let h=this.projectService.findDefaultConfiguredProjectWorker(d,3);if(!h)return;let _,S;return h.seenProjects.forEach((R,T)=>{T!==h.defaultProject&&(R!==3?(_??(_=[])).push(op(T.getConfigFilePath())):(S??(S=[])).push(op(T.getConfigFilePath())))}),(g=h.seenConfigs)==null||g.forEach(R=>(_??(_=[])).push(R)),{notMatchedByConfig:_,notInProject:S,defaultProject:h.defaultProject&&op(h.defaultProject.getConfigFilePath())}}getRenameInfo(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getPositionInFile(c,g),_=this.getPreferences(g);return d.getLanguageService().getRenameInfo(g,h,_)}getProjects(c,g,d){let h,_;if(c.projectFileName){let S=this.getProject(c.projectFileName);S&&(h=[S])}else{let S=g?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(S)g||this.projectService.ensureDefaultProjectForFile(S);else return d?zm:(this.projectService.logErrorForScriptInfoNotFound(c.file),QF.ThrowNoProject());h=S.containingProjects,_=this.projectService.getSymlinkedProjects(S)}return h=Me(h,S=>S.languageServiceEnabled&&!S.isOrphan()),!d&&(!h||!h.length)&&!_?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),QF.ThrowNoProject()):_?{projects:h,symLinkedProjects:_}:h}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return QF.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,g){let d=op(c.file),h=this.getPositionInFile(c,d),_=this.getProjects(c),S=this.getDefaultProject(c),R=this.getPreferences(d),T=this.mapRenameInfo(S.getLanguageService().getRenameInfo(d,h,R),pe.checkDefined(this.projectService.getScriptInfo(d)));if(!T.canRename)return g?{info:T,locs:[]}:[];let W=rOs(_,S,{fileName:c.file,pos:h},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return g?{info:T,locs:this.toSpanGroups(W)}:W}mapRenameInfo(c,g){if(c.canRename){let{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:W}=c;return{canRename:d,fileToRename:h,displayName:_,fullDisplayName:S,kind:R,kindModifiers:T,triggerSpan:kN(W,g)}}else return c}toSpanGroups(c){let g=new Map;for(let{fileName:d,textSpan:h,contextSpan:_,originalContextSpan:S,originalTextSpan:R,originalFileName:T,...W}of c){let V=g.get(d);V||g.set(d,V={file:d,locs:[]});let M=pe.checkDefined(this.projectService.getScriptInfo(d));V.locs.push({...lJt(h,_,M),...W})}return Do(g.values())}getReferences(c,g){let d=op(c.file),h=this.getProjects(c),_=this.getPositionInFile(c,d),S=nOs(h,this.getDefaultProject(c),{fileName:c.file,pos:_},this.host.useCaseSensitiveFileNames,this.logger);if(!g)return S;let R=this.getPreferences(d),T=this.getDefaultProject(c),W=T.getScriptInfoForNormalizedPath(d),V=T.getLanguageService().getQuickInfoAtPosition(d,_),M=V?D1e(V.displayParts):"",ee=V&&V.textSpan,re=ee?W.positionToLineOffset(ee.start).offset:0,ge=ee?W.getSnapshot().getText(ee.start,Rs(ee)):"";return{refs:er(S,_e=>_e.references.map(Ee=>Ifn(this.projectService,Ee,R))),symbolName:ge,symbolStartOffset:re,symbolDisplayString:M}}getFileReferences(c,g){let d=this.getProjects(c),h=op(c.file),_=this.getPreferences(h),S={fileName:h,pos:0},R=cJt(d,this.getDefaultProject(c),S,S,cfn,V=>(this.logger.info(`Finding references to file ${h} in project ${V.getProjectName()}`),V.getLanguageService().getFileReferences(h))),T;if(Ki(R))T=R;else{T=[];let V=kst(this.host.useCaseSensitiveFileNames);R.forEach(M=>{for(let ee of M)V.has(ee)||(T.push(ee),V.add(ee))})}return g?{refs:T.map(V=>Ifn(this.projectService,V,_)),symbolName:`"${c.file}"`}:T}openClientFile(c,g,d,h){this.projectService.openClientFileWithNormalizedPath(c,g,d,!1,h)}getPosition(c,g){return c.position!==void 0?c.position:g.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,g){let d=this.projectService.getScriptInfoForNormalizedPath(g);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:g,project:d}=this.getFileAndProject(c);return{file:g,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,g){let d=op(c),h=this.getProject(g)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:h}}getOutliningSpans(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getOutliningSpans(d);if(g){let S=this.projectService.getScriptInfoForNormalizedPath(d);return _.map(R=>({textSpan:kN(R.textSpan,S),hintSpan:kN(R.hintSpan,S),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return _}getTodoComments(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(g,c.descriptors)}getDocCommentTemplate(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getDocCommentTemplateAtPosition(g,h,this.getPreferences(g),this.getFormatOptions(g))}getSpanOfEnclosingComment(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.onlyMultiLine,_=this.getPositionInFile(c,g);return d.getSpanOfEnclosingComment(g,_,h)}getIndentation(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g),_=c.options?ase(c.options):this.getFormatOptions(g),S=d.getIndentationAtPosition(g,h,_);return{position:h,indentation:S}}getBreakpointStatement(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getBreakpointStatementAtPosition(g,h)}getNameOrDottedNameSpan(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.getNameOrDottedNameSpan(g,h,h)}isValidBraceCompletion(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.getPositionInFile(c,g);return d.isValidBraceCompletionAtPosition(g,h,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPreferences(d),R=h.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,_),S.maximumHoverLength,c.verbosityLevel);if(!R)return;let T=!!S.displayPartsForJSDoc;if(g){let W=D1e(R.displayParts);return{kind:R.kind,kindModifiers:R.kindModifiers,start:_.positionToLineOffset(R.textSpan.start),end:_.positionToLineOffset(Rs(R.textSpan)),displayString:W,documentation:T?this.mapDisplayParts(R.documentation,h):D1e(R.documentation),tags:this.mapJSDocTagInfo(R.tags,h,T),canIncreaseVerbosityLevel:R.canIncreaseVerbosityLevel}}else return T?R:{...R,tags:this.mapJSDocTagInfo(R.tags,h,!1)}}getFormattingEditsForRange(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=h.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(g,_,S,this.getFormatOptions(g));if(R)return R.map(T=>this.convertTextChangeToCodeEdit(T,h))}getFormattingEditsForRangeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?ase(c.options):this.getFormatOptions(g);return d.getFormattingEditsForRange(g,c.position,c.endPosition,h)}getFormattingEditsForDocumentFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?ase(c.options):this.getFormatOptions(g);return d.getFormattingEditsForDocument(g,h)}getFormattingEditsAfterKeystrokeFull(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=c.options?ase(c.options):this.getFormatOptions(g);return d.getFormattingEditsAfterKeystroke(g,c.position,c.key,h)}getFormattingEditsAfterKeystroke(c){let{file:g,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(g),_=h.lineOffsetToPosition(c.line,c.offset),S=this.getFormatOptions(g),R=d.getFormattingEditsAfterKeystroke(g,_,c.key,S);if(c.key===` -`&&(!R||R.length===0||$Ws(R,_))){let{lineText:T,absolutePosition:W}=h.textStorage.getAbsolutePositionAndLineText(c.line);if(T&&T.search("\\S")<0){let V=d.getIndentationAtPosition(g,_,S),M=0,ee,re;for(ee=0,re=T.length;ee({start:h.positionToLineOffset(T.span.start),end:h.positionToLineOffset(Rs(T.span)),newText:T.newText?T.newText:""}))}getCompletions(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getCompletionsAtPosition(d,S,{...Y4t(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},h.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(g==="completions-full")return R;let T=c.prefix||"",W=Xt(R.entries,M=>{if(R.isMemberCompletion||Ac(M.name.toLowerCase(),T.toLowerCase())){let ee=M.replacementSpan?kN(M.replacementSpan,_):void 0;return{...M,replacementSpan:ee,hasAction:M.hasAction||void 0,symbol:void 0}}});return g==="completions"?(R.metadata&&(W.metadata=R.metadata),W):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&kN(R.optionalReplacementSpan,_),entries:W}}getCompletionEntryDetails(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.projectService.getFormatCodeOptions(d),T=!!this.getPreferences(d).displayPartsForJSDoc,W=Xt(c.entryNames,V=>{let{name:M,source:ee,data:re}=typeof V=="string"?{name:V,source:void 0,data:void 0}:V;return h.getLanguageService().getCompletionEntryDetails(d,S,M,R,ee,this.getPreferences(d),re?Ma(re,dOs):void 0)});return g?T?W:W.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,h,!1)})):W.map(V=>({...V,codeActions:At(V.codeActions,M=>this.mapCodeAction(M)),documentation:this.mapDisplayParts(V.documentation,h),tags:this.mapJSDocTagInfo(V.tags,h,T)}))}getCompileOnSaveAffectedFileList(c){let g=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?tOs(d,h=>this.projectService.getScriptInfoForPath(h),g,(h,_)=>{if(!h.compileOnSaveEnabled||!h.languageServiceEnabled||h.isOrphan())return;let S=h.getCompilationSettings();if(!(S.noEmit||PC(_.fileName)&&!qWs(S)))return{projectFileName:h.getProjectName(),fileNames:h.getCompileOnSaveAffectedFileList(_),projectUsesOutFile:!!S.outFile}}):zm}emitFile(c){let{file:g,project:d}=this.getFileAndProject(c);if(d||QF.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let h=d.getScriptInfo(g),{emitSkipped:_,diagnostics:S}=d.emitFile(h,(R,T,W)=>this.host.writeFile(R,T,W));return c.richResponse?{emitSkipped:_,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(S):S.map(R=>o2e(R,!0))}:!_}getSignatureHelpItems(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getLanguageService().getSignatureHelpItems(d,S,c),T=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&g){let W=R.applicableSpan;return{...R,applicableSpan:{start:_.positionToLineOffset(W.start),end:_.positionToLineOffset(W.start+W.length)},items:this.mapSignatureHelpItems(R.items,h,T)}}else return T||!R?R:{...R,items:R.items.map(W=>({...W,tags:this.mapJSDocTagInfo(W.tags,h,!1)}))}}toPendingErrorCheck(c){let g=op(c),d=this.projectService.tryGetDefaultProjectForFile(g);return d&&{fileName:g,project:d}}getDiagnostics(c,g,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,g)}change(c){let g=this.projectService.getScriptInfo(c.file);pe.assert(!!g),g.textStorage.switchToScriptVersionCache();let d=g.lineOffsetToPosition(c.line,c.offset),h=g.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(g,qr({span:{start:d,length:h-d},newText:c.insertString})))}reload(c){let g=op(c.file),d=c.tmpfile===void 0?void 0:op(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(g);h&&(this.changeSeq++,h.reloadFromFile(d))}saveToTmp(c,g){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(g)}closeClientFile(c){if(!c)return;let g=iu(c);this.projectService.closeClientFile(g)}mapLocationNavigationBarItems(c,g){return At(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(h=>kN(h,g)),childItems:this.mapLocationNavigationBarItems(d.childItems,g),indent:d.indent}))}getNavigationBarItems(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationBarItems(d);return _?g?this.mapLocationNavigationBarItems(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}toLocationNavigationTree(c,g){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>kN(d,g)),nameSpan:c.nameSpan&&kN(c.nameSpan,g),childItems:At(c.childItems,d=>this.toLocationNavigationTree(d,g))}}getNavigationTree(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=h.getNavigationTree(d);return _?g?this.toLocationNavigationTree(_,this.projectService.getScriptInfoForNormalizedPath(d)):_:void 0}getNavigateToItems(c,g){let d=this.getFullNavigateToItems(c);return g?er(d,({project:h,navigateToItems:_})=>_.map(S=>{let R=h.getScriptInfo(S.fileName),T={name:S.name,kind:S.kind,kindModifiers:S.kindModifiers,isCaseSensitive:S.isCaseSensitive,matchKind:S.matchKind,file:S.fileName,start:R.positionToLineOffset(S.textSpan.start),end:R.positionToLineOffset(Rs(S.textSpan))};return S.kindModifiers&&S.kindModifiers!==""&&(T.kindModifiers=S.kindModifiers),S.containerName&&S.containerName.length>0&&(T.containerName=S.containerName),S.containerKind&&S.containerKind.length>0&&(T.containerKind=S.containerKind),T})):er(d,({navigateToItems:h})=>h)}getFullNavigateToItems(c){let{currentFileOnly:g,searchValue:d,maxResultCount:h,projectFileName:_}=c;if(g){pe.assertIsDefined(c.file);let{file:ee,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,h,ee)}]}let S=this.getHostPreferences(),R=[],T=new Map;if(!c.file&&!_)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(ee=>W(ee));else{let ee=this.getProjects(c);afn(ee,void 0,re=>W(re))}return R;function W(ee){let re=ee.getLanguageService().getNavigateToItems(d,h,void 0,ee.isNonTsProject(),S.excludeLibrarySymbolsInNavTo),ge=Me(re,Ie=>V(Ie)&&!xst(Ipe(Ie),ee));ge.length&&R.push({project:ee,navigateToItems:ge})}function V(ee){let re=ee.name;if(!T.has(re))return T.set(re,[ee]),!0;let ge=T.get(re);for(let Ie of ge)if(M(Ie,ee))return!1;return ge.push(ee),!0}function M(ee,re){return ee===re?!0:!ee||!re?!1:ee.containerKind===re.containerKind&&ee.containerName===re.containerName&&ee.fileName===re.fileName&&ee.isCaseSensitive===re.isCaseSensitive&&ee.kind===re.kind&&ee.kindModifiers===re.kindModifiers&&ee.matchKind===re.matchKind&&ee.name===re.name&&ee.textSpan.start===re.textSpan.start&&ee.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return jnt();if(c.file){let{file:d,project:h}=this.getFileAndProject(c);return h.getLanguageService().getSupportedCodeFixes(d)}let g=this.getProject(c.projectFileName);return g||QF.ThrowNoProject(),g.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,g){let d,h;return this.isLocation(c)?d=_(c):h=this.getRange(c,g),pe.checkDefined(d===void 0?h:d);function _(S){return S.position!==void 0?S.position:g.lineOffsetToPosition(S.line,S.offset)}}getRange(c,g){let{startPosition:d,endPosition:h}=this.getStartAndEndPosition(c,g);return{pos:d,end:h}}getApplicableRefactors(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getApplicableRefactors(g,this.extractPositionOrRange(c,h),this.getPreferences(g),c.triggerReason,c.kind,c.includeInteractiveActions).map(S=>({...S,actions:S.actions.map(R=>({...R,range:R.range?{start:cse({line:R.range.start.line,character:R.range.start.offset}),end:cse({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),S=h.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,_),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(S===void 0)return{edits:[]};if(g){let{renameFilename:R,renameLocation:T,edits:W}=S,V;if(R!==void 0&&T!==void 0){let M=h.getScriptInfoForNormalizedPath(op(R));V=uJt(Lz(M.getSnapshot()),R,T,W)}return{renameLocation:V,renameFilename:R,edits:this.mapTextChangesToCodeEdits(W),notApplicableReason:S.notApplicableReason}}return S}getMoveToRefactoringFileSuggestions(c){let{file:g,project:d}=this.getFileAndProject(c),h=d.getScriptInfoForNormalizedPath(g);return d.getLanguageService().getMoveToRefactoringFileSuggestions(g,this.extractPositionOrRange(c,h),this.getPreferences(g))}preparePasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);return d.getLanguageService().preparePasteEditsForFile(g,c.copiedTextSpan.map(h=>this.getRange({file:g,startLine:h.start.line,startOffset:h.start.offset,endLine:h.end.line,endOffset:h.end.offset},this.projectService.getScriptInfoForNormalizedPath(g))))}getPasteEdits(c){let{file:g,project:d}=this.getFileAndProject(c);if(ppe(g))return;let h=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(S=>this.getRange({file:c.copiedFrom.file,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(op(c.copiedFrom.file))))}:void 0,_=d.getLanguageService().getPasteEdits({targetFile:g,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(S=>this.getRange({file:g,startLine:S.start.line,startOffset:S.start.offset,endLine:S.end.line,endOffset:S.end.offset},d.getScriptInfoForNormalizedPath(g))),copiedFrom:h,preferences:this.getPreferences(g)},this.getFormatOptions(g));return _&&this.mapPasteEditsAction(_)}organizeImports(c,g){pe.assert(c.scope.type==="file");let{file:d,project:h}=this.getFileAndProject(c.scope.args),_=h.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return g?this.mapTextChangesToCodeEdits(_):_}getEditsForFileRename(c,g){let d=op(c.oldFilePath),h=op(c.newFilePath),_=this.getHostFormatOptions(),S=this.getHostPreferences(),R=new Set,T=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(W=>{let V=W.getLanguageService().getEditsForFileRename(d,h,_,S),M=[];for(let ee of V)R.has(ee.fileName)||(T.push(ee),M.push(ee.fileName));for(let ee of M)R.add(ee)}),g?T.map(W=>this.mapTextChangeToCodeEdit(W)):T}getCodeFixes(c,g){let{file:d,project:h}=this.getFileAndProject(c),_=h.getScriptInfoForNormalizedPath(d),{startPosition:S,endPosition:R}=this.getStartAndEndPosition(c,_),T;try{T=h.getLanguageService().getCodeFixesAtPosition(d,S,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(W){let V=W instanceof Error?W:new Error(W),M=h.getLanguageService(),ee=[...M.getSyntacticDiagnostics(d),...M.getSemanticDiagnostics(d),...M.getSuggestionDiagnostics(d)].filter(ge=>IE(S,R-S,ge.start,ge.length)).map(ge=>ge.code),re=c.errorCodes.find(ge=>!ee.includes(ge));throw re!==void 0&&(V.message+=` -Additional information: BADCLIENT: Bad error code, ${re} not found in range ${S}..${R} (found: ${ee.join(", ")})`),V}return g?T.map(W=>this.mapCodeFixAction(W)):T}getCombinedCodeFix({scope:c,fixId:g},d){pe.assert(c.type==="file");let{file:h,project:_}=this.getFileAndProject(c.args),S=_.getLanguageService().getCombinedCodeFix({type:"file",fileName:h},g,this.getFormatOptions(h),this.getPreferences(h));return d?{changes:this.mapTextChangesToCodeEdits(S.changes),commands:S.commands}:S}applyCodeActionCommand(c){let g=c.command;for(let d of cc(g)){let{file:h,project:_}=this.getFileAndProject(d);_.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(h)).then(S=>{},S=>{})}return{}}getStartAndEndPosition(c,g){let d,h;return c.startPosition!==void 0?d=c.startPosition:(d=g.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?h=c.endPosition:(h=g.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=h),{startPosition:d,endPosition:h}}mapCodeAction({description:c,changes:g,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(g),commands:d}}mapCodeFixAction({fixName:c,description:g,changes:d,commands:h,fixId:_,fixAllDescription:S}){return{fixName:c,description:g,changes:this.mapTextChangesToCodeEdits(d),commands:h,fixId:_,fixAllDescription:S}}mapPasteEditsAction({edits:c,fixId:g}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:g}}mapTextChangesToCodeEdits(c){return c.map(g=>this.mapTextChangeToCodeEdit(g))}mapTextChangeToCodeEdit(c){let g=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!g&&(g||this.projectService.logErrorForScriptInfoNotFound(c.fileName),pe.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!g}))),g?{fileName:c.fileName,textChanges:c.textChanges.map(d=>aOs(d,g))}:uOs(c)}convertTextChangeToCodeEdit(c,g){return{start:g.positionToLineOffset(c.span.start),end:g.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getPosition(c,_),R=h.getBraceMatchingAtPosition(d,S);return R?g?R.map(T=>kN(T,_)):R:void 0}getDiagnosticsForProject(c,g,d){if(this.suppressDiagnosticEvents)return;let{fileNames:h,languageServiceDisabled:_}=this.getProjectInfoWorker(d,void 0,!0,void 0,!0);if(_)return;let S=h.filter(Ie=>!Ie.includes("lib.d.ts"));if(S.length===0)return;let R=[],T=[],W=[],V=[],M=op(d),ee=this.projectService.ensureDefaultProjectForFile(M);for(let Ie of S)this.getCanonicalFileName(Ie)===this.getCanonicalFileName(d)?R.push(Ie):this.projectService.getScriptInfo(Ie).isScriptOpen()?T.push(Ie):PC(Ie)?V.push(Ie):W.push(Ie);let ge=[...R,...T,...W,...V].map(Ie=>({fileName:Ie,project:ee}));this.updateErrorCheck(c,ge,g,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,g){let{locations:d}=c,{file:h,languageService:_}=this.getFileAndLanguageServiceForSyntacticOperation(c),S=pe.checkDefined(this.projectService.getScriptInfo(h));return At(d,R=>{let T=this.getPosition(R,S),W=_.getSmartSelectionRange(h,T);return g?this.mapSelectionRange(W,S):W})}toggleLineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfo(d),S=this.getRange(c,_),R=h.toggleLineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}toggleMultilineComment(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.toggleMultilineComment(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}commentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.commentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}uncommentSelection(c,g){let{file:d,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),_=this.projectService.getScriptInfoForNormalizedPath(d),S=this.getRange(c,_),R=h.uncommentSelection(d,S);if(g){let T=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(W=>this.convertTextChangeToCodeEdit(W,T))}return R}mapSelectionRange(c,g){let d={textSpan:kN(c.textSpan,g)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,g)),d}getScriptInfoFromProjectService(c){let g=op(c),d=this.projectService.getScriptInfoForNormalizedPath(g);return d||(this.projectService.logErrorForScriptInfoNotFound(g),QF.ThrowNoProject())}toProtocolCallHierarchyItem(c){let g=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:kN(c.span,g),selectionSpan:kN(c.selectionSpan,g)}}toProtocolCallHierarchyIncomingCall(c){let g=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>kN(d,g))}}toProtocolCallHierarchyOutgoingCall(c,g){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>kN(d,g))}}prepareCallHierarchy(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(g);if(h){let _=this.getPosition(c,h),S=d.getLanguageService().prepareCallHierarchy(g,_);return S&&ont(S,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyIncomingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyIncomingCall(S))}provideCallHierarchyOutgoingCalls(c){let{file:g,project:d}=this.getFileAndProject(c),h=this.getScriptInfoFromProjectService(g);return d.getLanguageService().provideCallHierarchyOutgoingCalls(g,this.getPosition(c,h)).map(S=>this.toProtocolCallHierarchyOutgoingCall(S,h))}getCanonicalFileName(c){let g=this.host.useCaseSensitiveFileNames?c:Om(c);return iu(g)}exit(){}notRequired(c){return c&&this.doOutput(void 0,c.command,c.seq,!0,this.performanceData),{responseRequired:!1,performanceData:this.performanceData}}requiredResponse(c){return{response:c,responseRequired:!0,performanceData:this.performanceData}}addProtocolHandler(c,g){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,g)}setCurrentRequest(c){pe.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){pe.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,g,d){let h=this.performanceData;try{return this.performanceData=d,this.setCurrentRequest(c),g()}finally{this.resetCurrentRequest(c),this.performanceData=h}}executeCommand(c){let g=this.handlers.get(c.command);if(g){let d=this.executeWithRequestId(c.seq,()=>g(c),void 0);return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${j3(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,void 0,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var g,d,h,_,S,R,T;this.gcTimer.scheduleCollect();let W,V=this.performanceData;this.logger.hasLevel(2)&&(W=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${Wde(this.toStringMessage(c))}`));let M,ee;try{M=this.parseMessage(c),ee=M.arguments&&M.arguments.file?M.arguments:void 0,(g=ki)==null||g.instant(ki.Phase.Session,"request",{seq:M.seq,command:M.command}),(d=ki)==null||d.push(ki.Phase.Session,"executeCommand",{seq:M.seq,command:M.command},!0);let{response:re,responseRequired:ge,performanceData:Ie}=this.executeCommand(M);if((h=ki)==null||h.pop(),this.logger.hasLevel(2)){let _e=zWs(this.hrtime(W)).toFixed(4);ge?this.logger.perftrc(`${M.seq}::${M.command}: elapsed time (in milliseconds) ${_e}`):this.logger.perftrc(`${M.seq}::${M.command}: async elapsed time (in milliseconds) ${_e}`)}(_=ki)==null||_.instant(ki.Phase.Session,"response",{seq:M.seq,command:M.command,success:!!re}),re?this.doOutput(re,M.command,M.seq,!0,Ie):ge&&this.doOutput(void 0,M.command,M.seq,!1,Ie,"No content available.")}catch(re){if((S=ki)==null||S.popAll(),re instanceof By){(R=ki)==null||R.instant(ki.Phase.Session,"commandCanceled",{seq:M?.seq,command:M?.command}),this.doOutput({canceled:!0},M.command,M.seq,!0,this.performanceData);return}this.logErrorWorker(re,this.toStringMessage(c),ee),(T=ki)==null||T.instant(ki.Phase.Session,"commandError",{seq:M?.seq,command:M?.command,message:re.message}),this.doOutput(void 0,M?M.command:"unknown",M?M.seq:0,!1,this.performanceData,"Error processing request. "+re.message+` -`+re.stack)}finally{this.performanceData=V}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function pfn(s){let c=s.diagnosticsDuration&&Do(s.diagnosticsDuration,([g,d])=>({...d,file:g}));return{...s,diagnosticsDuration:c}}function kN(s,c){return{start:c.positionToLineOffset(s.start),end:c.positionToLineOffset(Rs(s))}}function lJt(s,c,g){let d=kN(s,g),h=c&&kN(c,g);return h?{...d,contextStart:h.start,contextEnd:h.end}:d}function aOs(s,c){return{start:ffn(c,s.span.start),end:ffn(c,Rs(s.span)),newText:s.newText}}function ffn(s,c){return rJt(s)?lOs(s.getLineAndCharacterOfPosition(c)):s.positionToLineOffset(c)}function cOs(s,c){let g=s.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return s.wordPattern?{ranges:g,wordPattern:s.wordPattern}:{ranges:g}}function lOs(s){return{line:s.line+1,offset:s.character+1}}function uOs(s){pe.assert(s.textChanges.length===1);let c=ma(s.textChanges);return pe.assert(c.span.start===0&&c.span.length===0),{fileName:s.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function uJt(s,c,g,d){let h=gOs(s,c,d),{line:_,character:S}=Ci(cA(h),g);return{line:_+1,offset:S+1}}function gOs(s,c,g){for(let{fileName:d,textChanges:h}of g)if(d===c)for(let _=h.length-1;_>=0;_--){let{newText:S,span:{start:R,length:T}}=h[_];s=s.slice(0,R)+S+s.slice(R+T)}return s}function Ifn(s,{fileName:c,textSpan:g,contextSpan:d,isWriteAccess:h,isDefinition:_},{disableLineTextInReferences:S}){let R=pe.checkDefined(s.getScriptInfo(c)),T=lJt(g,d,R),W=S?void 0:AOs(R,T);return{file:c,...T,lineText:W,isWriteAccess:h,isDefinition:_}}function AOs(s,c){let g=s.lineToTextSpan(c.start.line-1);return s.getSnapshot().getText(g.start,Rs(g)).replace(/\r|\n/g,"")}function dOs(s){return s===void 0||s&&typeof s=="object"&&typeof s.exportName=="string"&&(s.fileName===void 0||typeof s.fileName=="string")&&(s.ambientModuleName===void 0||typeof s.ambientModuleName=="string"&&(s.isPackageJsonImport===void 0||typeof s.isPackageJsonImport=="boolean"))}var lse=4,gJt=(s=>(s[s.PreStart=0]="PreStart",s[s.Start=1]="Start",s[s.Entire=2]="Entire",s[s.Mid=3]="Mid",s[s.End=4]="End",s[s.PostEnd=5]="PostEnd",s))(gJt||{}),pOs=class{constructor(){this.goSubtree=!0,this.lineIndex=new a2e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new use,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(s,c){c&&(this.trailingText=""),s?s=this.initialText+s+this.trailingText:s=this.initialText+this.trailingText;let d=a2e.linesFromText(s).lines;d.length>1&&d[d.length-1]===""&&d.pop();let h,_;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(_=this.endBranch[R],R>0?h=this.endBranch[R-1]:h=this.branchNode);_&&h.remove(_);let S=this.startPath[this.startPath.length-1];if(d.length>0)if(S.text=d[0],d.length>1){let R=new Array(d.length-1),T=S;for(let M=1;M=0;){let M=this.startPath[W];R=M.insertAt(T,R),W--,T=M}let V=R.length;for(;V>0;){let M=new use;M.add(this.lineIndex.root),R=M.insertAt(this.lineIndex.root,R),V=R.length,this.lineIndex.root=M}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(S);for(let T=this.startPath.length-2;T>=0;T--)this.startPath[T].updateCounts()}return this.lineIndex}post(s,c,g){g===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(s,c,g,d,h){let _=this.stack[this.stack.length-1];this.state===2&&h===1&&(this.state=1,this.branchNode=_,this.lineCollectionAtBranch=g);let S;function R(T){return T.isLeaf()?new cWe(""):new use}switch(h){case 0:this.goSubtree=!1,this.state!==4&&_.add(g);break;case 1:this.state===4?this.goSubtree=!1:(S=R(g),_.add(S),this.startPath.push(S));break;case 2:this.state!==4?(S=R(g),_.add(S),this.startPath.push(S)):g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:g.isLeaf()||(S=R(g),_.add(S),this.endBranch.push(S));break;case 5:this.goSubtree=!1,this.state!==1&&_.add(g);break}this.goSubtree&&this.stack.push(S)}leaf(s,c,g){this.state===1?this.initialText=g.text.substring(0,s):this.state===2?(this.initialText=g.text.substring(0,s),this.trailingText=g.text.substring(s+c)):this.trailingText=g.text.substring(s+c)}},fOs=class{constructor(s,c,g){this.pos=s,this.deleteLen=c,this.insertedText=g}getTextChangeRange(){return $2(zd(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},Gst=class yj{constructor(){this.changes=[],this.versions=new Array(yj.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%yj.maxVersions}currentVersionToIndex(){return this.currentVersion%yj.maxVersions}edit(c,g,d){this.changes.push(new fOs(c,g,d)),(this.changes.length>yj.changeNumberThreshold||g>yj.changeLengthThreshold||d&&d.length>yj.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let g=c.index;for(let d of this.changes)g=g.edit(d.pos,d.deleteLen,d.insertedText);c=new hfn(this.currentVersion+1,this,g,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=yj.maxVersions&&(this.minVersion=this.currentVersion-yj.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,g){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(g-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let g=this._getSnapshot().index,{lineText:d,absolutePosition:h}=g.lineNumberToInfo(c+1),_=d!==void 0?d.length:g.absolutePositionOfStartOfLine(c+2)-h;return zd(h,_)}getTextChangesBetweenVersions(c,g){if(c=this.minVersion){let d=[];for(let h=c+1;h<=g;h++){let _=this.versions[this.versionToIndex(h)];for(let S of _.changesSincePreviousVersion)d.push(S.getTextChangeRange())}return z(d)}else return;else return Eo}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let g=new yj,d=new hfn(0,g,new a2e);g.versions[g.currentVersion]=d;let h=a2e.linesFromText(c);return d.index.load(h.lines),g}};Gst.changeNumberThreshold=8,Gst.changeLengthThreshold=256,Gst.maxVersions=8;var Fst=Gst,hfn=class UDi{constructor(c,g,d,h=zm){this.version=c,this.cache=g,this.index=d,this.changesSincePreviousVersion=h}getText(c,g){return this.index.getText(c,g-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof UDi&&this.cache===c.cache)return this.version<=c.version?Eo:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},a2e=class zkr{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:g,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:g,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let g=this.getLineCount();if(c<=g){let{position:d,leaf:h}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:h&&h.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let g=[];for(let d=0;d0&&c{d=d.concat(S.text.substring(h,h+_))}}),d}getLength(){return this.root.charCount()}every(c,g,d){d||(d=this.root.charCount());let h={goSubtree:!0,done:!1,leaf(_,S,R){c(R,_,S)||(this.done=!0)}};return this.walk(g,d-g,h),!h.done}edit(c,g,d){if(this.root.charCount()===0)return pe.assert(g===0),d!==void 0?(this.load(zkr.linesFromText(d).lines),this):void 0;{let h;if(this.checkEdits){let R=this.getText(0,this.root.charCount());h=R.slice(0,c)+d+R.slice(c+g)}let _=new pOs,S=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,g=0,S=!0}else if(g>0){let R=c+g,{zeroBasedColumn:T,lineText:W}=this.positionToColumnAndLineText(R);T===0&&(g+=W.length,d=d?d+W:W)}if(this.root.walk(c,g,_),_.insertLines(d,S),this.checkEdits){let R=_.lineIndex.getText(0,_.lineIndex.getLength());pe.assert(h===R,"buffer edit mismatch")}return _.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[h]=_:d.pop(),{lines:d,lineMap:g}}},use=class qkr{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,g,d,h,_){return d.pre&&d.pre(c,g,this.children[h],this,_),d.goSubtree?(this.children[h].walk(c,g,d),d.post&&d.post(c,g,this.children[h],this,_)):d.goSubtree=!0,d.done}skipChild(c,g,d,h,_){h.pre&&!h.done&&(h.pre(c,g,this.children[d],this,_),h.goSubtree=!0)}walk(c,g,d){if(this.children.length===0)return;let h=0,_=this.children[h].charCount(),S=c;for(;S>=_;)this.skipChild(S,g,h,d,0),S-=_,h++,_=this.children[h].charCount();if(S+g<=_){if(this.execWalk(S,g,d,h,2))return}else{if(this.execWalk(S,_-S,d,h,1))return;let R=g-(_-S);for(h++,_=this.children[h].charCount();R>_;){if(this.execWalk(0,_,d,h,3))return;R-=_,h++,_=this.children[h].charCount()}if(R>0&&this.execWalk(0,R,d,h,4))return}if(d.pre){let R=this.children.length;if(hg)return _.isLeaf()?{oneBasedLine:c,zeroBasedColumn:g,lineText:_.text}:_.charOffsetToLineInfo(c,g);g-=_.charCount(),c+=_.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let h=pe.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:h.charCount(),lineText:void 0}}lineNumberToInfo(c,g){for(let d of this.children){let h=d.lineCount();if(h>=c)return d.isLeaf()?{position:g,leaf:d}:d.lineNumberToInfo(c,g);c-=h,g+=d.charCount()}return{position:g,leaf:void 0}}splitAfter(c){let g,d=this.children.length;c++;let h=c;if(c=0;ee--)T[ee].children.length===0&&T.pop()}S&&T.push(S),this.updateCounts();for(let V=0;V{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:h,reject:_})});return this.installer.send(g),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,g,d){let h=m4t(c,g,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${j3(h)}`),this.activeRequestCount0?this.activeRequestCount--:pe.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let h=this.requestQueue.dequeue();if(this.requestMap.get(h.projectName)===h){this.requestMap.delete(h.projectName),this.scheduleRequest(h);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${h.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case n1e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${j3(c)}`),this.installer.send(c)},KDi.requestDelayMillis,`${c.projectName}::${c.kind}`)}};mfn.requestDelayMillis=100;var Cfn=mfn,_fn={};o(_fn,{ActionInvalidate:()=>BVe,ActionPackageInstalled:()=>wVe,ActionSet:()=>vVe,ActionWatchTypingLocations:()=>n1e,Arguments:()=>crt,AutoImportProviderProject:()=>P4t,AuxiliaryProject:()=>L4t,CharRangeSection:()=>gJt,CloseFileWatcherEvent:()=>Est,CommandNames:()=>sfn,ConfigFileDiagEvent:()=>mst,ConfiguredProject:()=>W4t,ConfiguredProjectLoadKind:()=>X4t,CreateDirectoryWatcherEvent:()=>bst,CreateFileWatcherEvent:()=>yst,Errors:()=>QF,EventBeginInstallTypes:()=>ort,EventEndInstallTypes:()=>art,EventInitializationFailed:()=>S5t,EventTypesRegistry:()=>srt,ExternalProject:()=>Ast,GcTimer:()=>v4t,InferredProject:()=>Z4t,LargeFileReferencedEvent:()=>hst,LineIndex:()=>a2e,LineLeaf:()=>cWe,LineNode:()=>use,LogLevel:()=>I4t,Msg:()=>h4t,OpenFileInfoTelemetryEvent:()=>O4t,Project:()=>zz,ProjectInfoTelemetryEvent:()=>_st,ProjectKind:()=>fpe,ProjectLanguageServiceStateEvent:()=>Cst,ProjectLoadingFinishEvent:()=>Ist,ProjectLoadingStartEvent:()=>fst,ProjectService:()=>tJt,ProjectsUpdatedInBackgroundEvent:()=>sWe,ScriptInfo:()=>R4t,ScriptVersionCache:()=>Fst,Session:()=>dfn,TextStorage:()=>T4t,ThrottledOperations:()=>S4t,TypingsInstallerAdapter:()=>Cfn,allFilesAreJsOrDts:()=>x4t,allRootFilesAreJsOrDts:()=>k4t,asNormalizedPath:()=>Dpn,convertCompilerOptions:()=>oWe,convertFormatOptions:()=>ase,convertScriptKindName:()=>vst,convertTypeAcquisition:()=>H4t,convertUserPreferences:()=>Y4t,convertWatchOptions:()=>s2e,countEachFileTypes:()=>t2e,createInstallTypingsRequest:()=>m4t,createModuleSpecifierCache:()=>iJt,createNormalizedPathMap:()=>kpn,createPackageJsonCache:()=>sJt,createSortedArray:()=>E4t,emptyArray:()=>zm,findArgument:()=>Dnn,formatDiagnosticToProtocol:()=>o2e,formatMessage:()=>oJt,getBaseConfigFileName:()=>gst,getDetailWatchInfo:()=>Rst,getLocationInNewDocument:()=>uJt,hasArgument:()=>Nnn,hasNoTypeScriptSource:()=>G4t,indent:()=>Wde,isBackgroundProject:()=>n2e,isConfigFile:()=>rJt,isConfiguredProject:()=>s9,isDynamicFileName:()=>ppe,isExternalProject:()=>r2e,isInferredProject:()=>ose,isInferredProjectName:()=>C4t,isProjectDeferredClose:()=>i2e,makeAutoImportProviderProjectName:()=>y4t,makeAuxiliaryProjectName:()=>b4t,makeInferredProjectName:()=>_4t,maxFileSize:()=>pst,maxProgramSizeForNonTsFiles:()=>dst,normalizedPathToPath:()=>sse,nowString:()=>knn,nullCancellationToken:()=>rfn,nullTypingsInstaller:()=>aWe,protocol:()=>B4t,scriptInfoIsContainedByBackgroundProject:()=>N4t,scriptInfoIsContainedByDeferredClosedProject:()=>D4t,stringifyIndented:()=>j3,toEvent:()=>aJt,toNormalizedPath:()=>op,tryConvertScriptKindName:()=>Sst,typingsInstaller:()=>f4t,updateProjectIfDirty:()=>_v}),typeof console<"u"&&(pe.loggingHost={log(s,c){switch(s){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return MDi},set exports(e){MDi=e,typeof UEt<"u"&&UEt.exports&&(UEt.exports=e)}})});var Exr=H((fZu,_xi)=>{"use strict";_xi.exports=function(t,r){r===!0&&(r=0);var n="";if(typeof t=="string")try{n=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(n=t.protocol);var a=n.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var bxi=H((IZu,yxi)=>{"use strict";var Bpc=Exr();function wpc(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=Bpc(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}yxi.exports=wpc});var vxi=H((hZu,Sxi)=>{"use strict";var Tpc=bxi();function Rpc(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var Npc=Rpc(Tpc),Dpc="text/plain",kpc="us-ascii",Exi=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),xpc=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:n,data:a,hash:o}=r.groups,l=n.split(";");o=t?"":o;let A=!1;l[l.length-1]==="base64"&&(l.pop(),A=!0);let f=(l.shift()||"").toLowerCase(),C=[...l.map(b=>{let[E,N=""]=b.split("=").map(B=>B.trim());return E==="charset"&&(N=N.toLowerCase(),N===kpc)?"":`${E}${N?`=${N}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length>0||f&&f!==Dpc)&&C.unshift(f),`data:${C.join(";")},${A?a.trim():a}${o?`#${o}`:""}`};function Gpc(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return xpc(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let l=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,A=0,f="";for(;;){let C=l.exec(a.pathname);if(!C)break;let b=C[0],E=C.index,N=a.pathname.slice(A,E);f+=N.replace(/\/{2,}/g,"/"),f+=b,A=E+b.length}let I=a.pathname.slice(A,a.pathname.length);f+=I.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let l=a.pathname.split("/"),A=l[l.length-1];Exi(A,t.removeDirectoryIndex)&&(l=l.slice(0,-1),a.pathname=l.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let l of[...a.searchParams.keys()])Exi(l,t.removeQueryParameters)&&a.searchParams.delete(l);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var Sxr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,n=o=>{let l=new Error(o);throw l.subject_url=e,l};(typeof e!="string"||!e.trim())&&n("Invalid url."),e.length>Sxr.MAX_INPUT_LENGTH&&n("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=Gpc(e,t));let a=Npc.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):n("URL parsing failed.")}return a};Sxr.MAX_INPUT_LENGTH=2048;Sxi.exports=Sxr});var Txi=H((mZu,wxi)=>{"use strict";var Fpc=Exr();function Bxi(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=Fpc(e);if(e=e.substring(e.indexOf("://")+3),Bxi(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var Zpc=vxi(),Rxi=Txi();function Lpc(e){var t=Zpc(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),Rxi(t.protocols)||t.protocols.length===0&&Rxi(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}Nxi.exports=Lpc});var xxi=H((_Zu,kxi)=>{"use strict";var Vpc=Dxi();function vxr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=Vpc(e),n=r.resource.split("."),a=null;switch(r.toString=function(Q){return vxr.stringify(this,Q)},r.source=n.length>2?n.slice(1-n.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=n[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var l=a.indexOf("-",2),A=a.indexOf("blob",2),f=a.indexOf("tree",2),I=a.indexOf("commit",2),C=a.indexOf("src",2),b=a.indexOf("raw",2),E=a.indexOf("edit",2);o=l>0?l-1:A>0?A-1:f>0?f-1:I>0?I-1:C>0?C-1:b>0?b-1:E>0?E-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],I&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var N=a.length>o&&a[o+1]==="-"?o+1:o;a.length>N+2&&["raw","src","blob","tree","edit"].indexOf(a[N+1])>=0&&(r.filepathtype=a[N+1],r.ref=a[N+2],a.length>N+3&&(r.filepath=a.slice(N+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var B=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,F=B.exec(r.pathname);return F!=null&&(r.source="bitbucket-server",F[1]==="users"?r.owner="~"+F[2]:r.owner=F[2],r.organization=r.owner,r.name=F[3],a=F[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}vxr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",n=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+n+"@"+e.resource+r+"/"+e.full_name+a:n+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+n+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?Ppc(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+Wpc(e)+a;default:return e.href}};function Ppc(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function Wpc(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}kxi.exports=vxr});var Fxi=H(wxr=>{"use strict";Object.defineProperty(wxr,"__esModule",{value:!0});wxr.tryParseGitURL=Mpc;function Bxr(e,t,r){let n=e.indexOf(r);return e.lastIndexOf(t,n>-1?n:1/0)}function Gxi(e){try{return new URL(e)}catch{return}}function Opc(e){let t=Bxr(e,"@","#"),r=Bxr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),Bxr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function Mpc(e){return Gxi(e)||Gxi(Opc(e))}});var Zxi=H(Txr=>{"use strict";Object.defineProperty(Txr,"__esModule",{value:!0});Txr.normalizeRepoUrl=Ypc;var Hpc=Fxi();function Ypc(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,Hpc.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var o1t=H(Xk=>{"use strict";Object.defineProperty(Xk,"__esModule",{value:!0});Xk.TreeishProtocols=Xk.normalizeRepoUrl=void 0;Xk.isGitUrl=Upc;Xk.splitRepoUrl=s1t;Xk.normalizeLocator=Kpc;Xk.validateRepoUrl=Dxr;Xk.lsRemote=Pxi;Xk.resolveUrl=jpc;Xk.clone=zpc;Xk.fetchRoot=Wxi;Xk.fetchBase=Oxi;Xk.fetchChangedFiles=Mxi;Xk.fetchChangedWorkspaces=qpc;var Nxr=(Pa(),vi(Va)),Ey=Sn(),qZ=ro(),i1t=($c(),vi(rg)),Qpc=kW(),Xpc=Nxr.__importDefault(xxi()),AUe=Nxr.__importDefault(wt("querystring")),Lxi=Nxr.__importDefault(UC()),dUe=Zxi();Object.defineProperty(Xk,"normalizeRepoUrl",{enumerable:!0,get:function(){return dUe.normalizeRepoUrl}});function Vxi(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var Jpc=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],_O;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(_O||(Xk.TreeishProtocols=_O={}));function Upc(e){return e?Jpc.some(t=>!!e.match(t)):!1}function s1t(e){e=(0,dUe.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:_O.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),n=e.slice(t+1);if(n.match(/^[a-z]+=/)){let a=AUe.default.parse(n);for(let[f,I]of Object.entries(a))if(typeof I!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(_O).find(f=>Object.hasOwn(a,f)),[l,A]=typeof o<"u"?[o,a[o]]:[_O.Head,"HEAD"];for(let f of Object.values(_O))delete a[f];return{repo:r,treeish:{protocol:l,request:A},extra:a}}else{let a=n.indexOf(":"),[o,l]=a===-1?[null,n]:[n.slice(0,a),n.slice(a+1)];return{repo:r,treeish:{protocol:o,request:l},extra:{}}}}function Kpc(e){return Ey.structUtils.makeLocator(e,(0,dUe.normalizeRepoUrl)(e.reference))}function Dxr(e,{configuration:t}){let{repo:r}=s1t(e),n=(0,dUe.normalizeRepoUrl)(r,{git:!0});if(!Ey.httpUtils.getNetworkSettings(`https://${(0,Xpc.default)(n).resource}`,{configuration:t}).enableNetwork)throw new Ey.ReportError(Ey.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because of your configuration settings`);let o=Ey.miscUtils.buildIgnorePattern(t.get("approvedGitRepositories"));if(o===null||!n.match(o))throw new Ey.ReportError(Ey.MessageName.NETWORK_DISABLED,`Request to '${n}' has been blocked because it doesn't match any of the patterns in 'approvedGitRepositories'`);return n}async function Pxi(e,t){let r=Dxr(e,{configuration:t}),n=await Rxr("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:Vxi()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,l;for(;(l=o.exec(n.stdout))!==null;)a.set(l[2],l[1]);return a}async function jpc(e,t){let{repo:r,treeish:{protocol:n,request:a},extra:o}=s1t(e),l=await Pxi(r,t),A=(I,C)=>{switch(I){case _O.Commit:{if(!C.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return AUe.default.stringify({...o,commit:C})}case _O.Head:{let b=l.get(C==="HEAD"?C:`refs/heads/${C}`);if(typeof b>"u")throw new Error(`Unknown head ("${C}")`);return AUe.default.stringify({...o,commit:b})}case _O.Tag:{let b=l.get(`refs/tags/${C}`);if(typeof b>"u")throw new Error(`Unknown tag ("${C}")`);return AUe.default.stringify({...o,commit:b})}case _O.Semver:{let b=Ey.semverUtils.validRange(C);if(!b)throw new Error(`Invalid range ("${C}")`);let E=new Map([...l.entries()].filter(([B])=>B.startsWith("refs/tags/")).map(([B,F])=>[Lxi.default.parse(B.slice(10)),F]).filter(B=>B[0]!==null)),N=Lxi.default.maxSatisfying([...E.keys()],b);if(N===null)throw new Error(`No matching range ("${C}")`);return AUe.default.stringify({...o,commit:E.get(N)})}case null:{let b;if((b=f(_O.Commit,C))!==null||(b=f(_O.Tag,C))!==null||(b=f(_O.Head,C))!==null)return b;throw C.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${I}")`)}},f=(I,C)=>{try{return A(I,C)}catch{return null}};return(0,dUe.normalizeRepoUrl)(`${r}#${A(n,a)}`)}async function zpc(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:n,request:a}}=s1t(e);if(n!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=Dxr(r,{configuration:t}),l=await qZ.xfs.mktempPromise(),A={cwd:l,env:Vxi()};return await Rxr("cloning the repository",["clone","-c","core.autocrlf=false",o,qZ.npath.fromPortablePath(l)],A,{configuration:t,normalizedRepoUrl:o}),await Rxr("switching branch",["checkout",`${a}`],A,{configuration:t,normalizedRepoUrl:o}),l})}async function Wxi(e){let t,r=e;do{if(t=r,await qZ.xfs.existsPromise(qZ.ppath.join(t,".git")))return t;r=qZ.ppath.dirname(t)}while(r!==t);return null}async function Oxi(e,{baseRefs:t}){if(t.length===0)throw new i1t.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let A of t){let{code:f}=await Ey.execUtils.execvp("git",["merge-base",A,"HEAD"],{cwd:e});f===0&&r.push(A)}if(r.length===0)throw new i1t.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:n}=await Ey.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=n.trim(),{stdout:o}=await Ey.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),l=o.trim();return{hash:a,title:l}}async function Mxi(e,{base:t,project:r}){let n=Ey.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await Ey.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>qZ.ppath.resolve(e,qZ.npath.toPortablePath(I))),{stdout:l}=await Ey.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),A=l.split(/\r\n|\r|\n/).filter(I=>I.length>0).map(I=>qZ.ppath.resolve(e,qZ.npath.toPortablePath(I))),f=[...new Set([...o,...A].sort())];return n?f.filter(I=>!qZ.ppath.relative(r.cwd,I).match(n)):f}async function qpc({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new i1t.UsageError("This command can only be run from within a Yarn project");let r=[qZ.ppath.resolve(t.cwd,qZ.Filename.lockfile),qZ.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),qZ.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),qZ.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(l=>l.populateYarnPaths,t,l=>{l!=null&&r.push(l)});let n=await Wxi(t.configuration.projectCwd);if(n==null)throw new i1t.UsageError("This command can only be run on Git repositories");let a=await Oxi(n,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await Mxi(n,{base:a.hash,project:t});return new Set(Ey.miscUtils.mapAndFilter(o,l=>{let A=t.tryWorkspaceByFilePath(l);return A===null||r.some(f=>l.startsWith(f))?Ey.miscUtils.mapAndFilter.skip:A}))}async function Rxr(e,t,r,{configuration:n,normalizedRepoUrl:a}){try{return await Ey.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof Ey.execUtils.ExecError))throw o;let l=o.reportExtra,A=o.stderr.toString();throw new Ey.ReportError(Ey.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(Ey.MessageName.EXCEPTION,` ${Ey.formatUtils.prettyField(n,{label:"Repository URL",value:Ey.formatUtils.tuple(Ey.formatUtils.Type.URL,a)})}`);for(let I of A.matchAll(/^(.+?): (.*)$/gm)){let[,C,b]=I;C=C.toLowerCase();let E=C==="error"?"Error":`${(0,Qpc.capitalize)(C)} Error`;f.reportError(Ey.MessageName.EXCEPTION,` ${Ey.formatUtils.prettyField(n,{label:E,value:Ey.formatUtils.tuple(Ey.formatUtils.Type.NO_HINT,b)})}`)}l?.(f)})}}});var Hxi=H(c1t=>{"use strict";Object.defineProperty(c1t,"__esModule",{value:!0});c1t.GitFetcher=void 0;var $pc=(Pa(),vi(Va)),eDe=Sn(),a1t=ro(),kxr=$pc.__importStar(o1t()),xxr=class{supports(t,r){return kxr.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,n);let o={...r,checksums:a},l=await this.downloadHosted(t,o);if(l!==null)return l;let[A,f,I]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${eDe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:A,releaseFs:f,prefixPath:eDe.structUtils.getIdentVendorPath(t),checksum:I}}async downloadHosted(t,r){return r.project.configuration.reduceHook(n=>n.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let n=kxr.splitRepoUrl(t.reference),a=await kxr.clone(t.reference,r.project.configuration),o=a1t.ppath.resolve(a,n.extra.cwd??a1t.PortablePath.dot),l=a1t.ppath.join(o,"package.tgz");await eDe.scriptUtils.prepareExternalProject(o,l,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:t});let A=await a1t.xfs.readFilePromise(l);return await eDe.miscUtils.releaseAfterUseAsync(async()=>await eDe.tgzUtils.convertToZip(A,{configuration:r.project.configuration,prefixPath:eDe.structUtils.getIdentVendorPath(t),stripComponents:1}))}};c1t.GitFetcher=xxr});var Qxi=H(l1t=>{"use strict";Object.defineProperty(l1t,"__esModule",{value:!0});l1t.GitResolver=void 0;var efc=(Pa(),vi(Va)),Yxi=Sn(),tfc=Sn(),rfc=Sn(),tDe=efc.__importStar(o1t()),Gxr=class{supportsDescriptor(t,r){return tDe.isGitUrl(t.range)}supportsLocator(t,r){return tDe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=await tDe.resolveUrl(t.range,n.project.configuration);return[Yxi.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,n,a){let o=tDe.splitRepoUrl(t.range);return{locators:n.filter(A=>{if(A.identHash!==t.identHash)return!1;let f=tDe.splitRepoUrl(A.reference);return!(o.repo!==f.repo||o.treeish.protocol===tDe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Yxi.miscUtils.releaseAfterUseAsync(async()=>await rfc.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:tfc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};l1t.GitResolver=Gxr});var rDe=H(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.GitResolver=Mee.GitFetcher=Mee.gitUtils=void 0;var nfc=(Pa(),vi(Va)),u1t=Sn(),Xxi=Hxi();Object.defineProperty(Mee,"GitFetcher",{enumerable:!0,get:function(){return Xxi.GitFetcher}});var Jxi=Qxi();Object.defineProperty(Mee,"GitResolver",{enumerable:!0,get:function(){return Jxi.GitResolver}});var ifc=nfc.__importStar(o1t());Mee.gitUtils=ifc;var sfc={configuration:{approvedGitRepositories:{description:"Array of git repository URL glob patterns that are allowed to be fetched",type:u1t.SettingsType.STRING,default:[],isArray:!0},changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:u1t.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:u1t.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:u1t.SettingsType.NUMBER,default:2}},fetchers:[Xxi.GitFetcher],resolvers:[Jxi.GitResolver]};Mee.default=sfc});var IUe=H(GG=>{"use strict";Object.defineProperty(GG,"__esModule",{value:!0});GG.Decision=void 0;GG.validateReleaseDecision=fUe;GG.resolveVersionFiles=lfc;GG.clearVersionFiles=ufc;GG.updateVersionFiles=gfc;GG.openVersionFile=Afc;GG.requireMoreDecisions=dfc;GG.getUndecidedWorkspaces=Uxi;GG.getUndecidedDependentWorkspaces=Kxi;GG.suggestStrategy=pfc;GG.applyStrategy=Zxr;GG.applyReleases=ffc;GG.applyPrerelease=jxi;var ofc=(Pa(),vi(Va)),PE=Sn(),Xv=ro(),pCe=TW(),Fxr=rDe(),pUe=($c(),vi(rg)),afc=kW(),Hee=ofc.__importDefault(UC()),cfc=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,aH;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PREMAJOR="premajor",e.PREMINOR="preminor",e.PREPATCH="prepatch",e.PRERELEASE="prerelease"})(aH||(GG.Decision=aH={}));function fUe(e){let t=Hee.default.valid(e);return t||PE.miscUtils.validateEnum((0,afc.omit)(aH,"UNDECIDED"),e)}async function lfc(e,{prerelease:t=null}={}){let r=new Map,n=e.configuration.get("deferredVersionFolder");if(!Xv.xfs.existsSync(n))return r;let a=await Xv.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=Xv.ppath.join(n,o),A=await Xv.xfs.readFilePromise(l,"utf8"),f=(0,pCe.parseSyml)(A);for(let[I,C]of Object.entries(f.releases||{})){if(C===aH.DECLINE)continue;let b=PE.structUtils.parseIdent(I),E=e.tryWorkspaceByIdent(b);if(E===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${Xv.ppath.basename(l)} references ${I})`);if(E.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${PE.structUtils.prettyLocator(e.configuration,E.anchoredLocator)})`);let N=E.manifest.raw.stableVersion??E.manifest.version,B=r.get(E),F=aH.PRERELEASE===C?Zxr(E.manifest.version,fUe(C)):Zxr(N,fUe(C));if(F===null)throw new Error(`Assertion failed: Expected ${N} to support being bumped via strategy ${C}`);let Q=typeof B<"u"?Hee.default.gt(F,B)?F:B:F;r.set(E,Q)}}return t&&(r=new Map([...r].map(([o,l])=>[o,jxi(l,{current:o.manifest.version,prerelease:t})]))),r}async function ufc(e){let t=e.configuration.get("deferredVersionFolder");Xv.xfs.existsSync(t)&&await Xv.xfs.removePromise(t)}async function gfc(e,t){let r=new Set(t),n=e.configuration.get("deferredVersionFolder");if(!Xv.xfs.existsSync(n))return;let a=await Xv.xfs.readdirPromise(n);for(let o of a){if(!o.endsWith(".yml"))continue;let l=Xv.ppath.join(n,o),A=await Xv.xfs.readFilePromise(l,"utf8"),f=(0,pCe.parseSyml)(A),I=f?.releases;if(I){for(let C of Object.keys(I)){let b=PE.structUtils.parseIdent(C),E=e.tryWorkspaceByIdent(b);(E===null||r.has(E))&&delete f.releases[C]}Object.keys(f.releases).length>0?await Xv.xfs.changeFilePromise(l,(0,pCe.stringifySyml)(new pCe.stringifySyml.PreserveOrdering(f))):await Xv.xfs.unlinkPromise(l)}}}async function Afc(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new pUe.UsageError("This command can only be run from within a Yarn project");let n=await Fxr.gitUtils.fetchRoot(r.projectCwd),a=n!==null?await Fxr.gitUtils.fetchBase(n,{baseRefs:r.get("changesetBaseRefs")}):null,o=n!==null?await Fxr.gitUtils.fetchChangedFiles(n,{base:a.hash,project:e}):[],l=r.get("deferredVersionFolder"),A=o.filter(N=>Xv.ppath.contains(l,N)!==null);if(A.length>1)throw new pUe.UsageError(`Your current branch contains multiple versioning files; this isn't supported: -- ${A.map(N=>Xv.npath.fromPortablePath(N)).join(` -- `)}`);let f=new Set(PE.miscUtils.mapAndFilter(o,N=>{let B=e.tryWorkspaceByFilePath(N);return B===null?PE.miscUtils.mapAndFilter.skip:B}));if(A.length===0&&f.size===0&&!t)return null;let I=A.length===1?A[0]:Xv.ppath.join(l,`${PE.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),C=Xv.xfs.existsSync(I)?await Xv.xfs.readFilePromise(I,"utf8"):"{}",b=(0,pCe.parseSyml)(C),E=new Map;for(let N of b.declined||[]){let B=PE.structUtils.parseIdent(N),F=e.getWorkspaceByIdent(B);E.set(F,aH.DECLINE)}for(let[N,B]of Object.entries(b.releases||{})){let F=PE.structUtils.parseIdent(N),Q=e.getWorkspaceByIdent(F);E.set(Q,fUe(B))}return{project:e,root:n,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(N=>N.manifest.version!==null)),releases:E,async saveAll(){let N={},B=[],F=[];for(let Q of e.workspaces){if(Q.manifest.version===null)continue;let X=PE.structUtils.stringifyIdent(Q.anchoredLocator),ae=E.get(Q);ae===aH.DECLINE?B.push(X):typeof ae<"u"?N[X]=fUe(ae):f.has(Q)&&F.push(X)}await Xv.xfs.mkdirPromise(Xv.ppath.dirname(I),{recursive:!0}),await Xv.xfs.changeFilePromise(I,(0,pCe.stringifySyml)(new pCe.stringifySyml.PreserveOrdering({releases:Object.keys(N).length>0?N:void 0,declined:B.length>0?B:void 0,undecided:F.length>0?F:void 0})))}}}function dfc(e){return Uxi(e).size>0||Kxi(e).length>0}function Uxi(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function Kxi(e,{include:t=new Set}={}){let r=[],n=new Map(PE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l===aH.DECLINE?PE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(PE.miscUtils.mapAndFilter([...e.releases],([o,l])=>l!==aH.DECLINE?PE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||n.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let l of PE.Manifest.hardDependencies)for(let A of o.manifest.getForScope(l).values()){let f=e.project.tryWorkspaceByDescriptor(A);f!==null&&n.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function pfc(e,t){let r=Hee.default.clean(t);for(let n of Object.values(aH))if(n!==aH.UNDECIDED&&n!==aH.DECLINE&&Hee.default.inc(e,n)===r)return n;return null}function Zxr(e,t){if(Hee.default.valid(t))return t;if(e===null)throw new pUe.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!Hee.default.valid(e))throw new pUe.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=Hee.default.inc(e,t);if(r===null)throw new pUe.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function ffc(e,t,{report:r,exact:n}){let a=new Map;for(let o of e.workspaces)for(let l of PE.Manifest.allDependencies)for(let A of o.manifest[l].values()){let f=e.tryWorkspaceByDescriptor(A);if(f===null||!t.has(f))continue;PE.miscUtils.getArrayWithDefault(a,f).push([o,l,A.identHash])}for(let[o,l]of t){let A=o.manifest.version;o.manifest.version=l,Hee.default.prerelease(l)===null?delete o.manifest.raw.stableVersion:o.manifest.raw.stableVersion||(o.manifest.raw.stableVersion=A);let f=o.manifest.name!==null?PE.structUtils.stringifyIdent(o.manifest.name):null;r.reportInfo(PE.MessageName.UNNAMED,`${PE.structUtils.prettyLocator(e.configuration,o.anchoredLocator)}: Bumped to ${l}`),r.reportJson({cwd:Xv.npath.fromPortablePath(o.cwd),ident:f,oldVersion:A,newVersion:l});let I=a.get(o);if(!(typeof I>"u"))for(let[C,b,E]of I){let N=C.manifest[b].get(E);if(typeof N>"u")throw new Error("Assertion failed: The dependency should have existed");let B=N.range,F=!1;if(B.startsWith(PE.WorkspaceResolver.protocol)&&(B=B.slice(PE.WorkspaceResolver.protocol.length),F=!0,B===o.relativeCwd))continue;let Q=B.match(cfc);if(!Q){r.reportWarning(PE.MessageName.UNNAMED,`Couldn't auto-upgrade range ${B} (in ${PE.structUtils.prettyLocator(e.configuration,C.anchoredLocator)})`);continue}let X=n?`${l}`:`${Q[1]}${l}`;F&&(X=`${PE.WorkspaceResolver.protocol}${X}`);let ae=PE.structUtils.makeDescriptor(N,X);C.manifest[b].set(E,ae)}}}var Ifc=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function jxi(e,{current:t,prerelease:r}){let n=new Hee.default.SemVer(t),a=n.prerelease.slice(),o=[];n.prerelease=[],n.format()!==e&&(a.length=0);let l=!0,A=r.split(/\./g);for(let f of A){let I=Ifc.get(f);if(typeof I>"u")o.push(f),a[0]===f?a.shift():l=!1;else{let C=l?I.extract(a):null;C!==null&&typeof C[0]=="number"?(o.push(I.generate(C[0])),a=C[1]):(o.push(I.generate()),l=!1)}}return n.prerelease&&(n.prerelease=[]),`${e}-${o.join(".")}`}});var $xi=H(Vxr=>{"use strict";Object.defineProperty(Vxr,"__esModule",{value:!0});var hfc=(Pa(),vi(Va)),zxi=el(),Lxr=Sn(),qxi=Sn(),fCe=($c(),vi(rg)),g1t=hfc.__importStar(IUe()),hUe=class extends zxi.BaseCommand{constructor(){super(...arguments),this.all=fCe.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=fCe.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=fCe.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.exact=fCe.Option.Boolean("--exact",!1,{description:"Use the exact version of each package, removes any range. Useful for nightly releases where the range might match another version."}),this.recursive=fCe.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=fCe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Lxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await qxi.Project.find(t,this.context.cwd),a=await Lxr.Cache.find(t);if(!n)throw new zxi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await qxi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await g1t.resolveVersionFiles(r,{prerelease:A}),I=new Map;if(this.all)I=f;else{let C=this.recursive?n.getRecursiveWorkspaceDependencies():[n];for(let b of C){let E=f.get(b);typeof E<"u"&&I.set(b,E)}}if(I.size===0){let C=f.size>0?" Did you want to add --all?":"";l.reportWarning(Lxr.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${C}`);return}g1t.applyReleases(r,I,{report:l,exact:this.exact}),this.dryRun||(A||(this.all?await g1t.clearVersionFiles(r):await g1t.updateVersionFiles(r,[...I.keys()])),l.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};hUe.paths=[["version","apply"]];hUe.usage=fCe.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` - This command will apply the deferred version changes and remove their definitions from the repository. - - Note that if \`--prerelease\` is set, the given prerelease identifier (by default \`rc.%n\`) will be used on all new versions and the version definitions will be kept as-is. - - By default only the current workspace will be bumped, but you can configure this behavior by using one of: - - - \`--recursive\` to also apply the version bump on its dependencies - - \`--all\` to apply the version bump on all packages in the repository - - Note that this command will also update the \`workspace:\` references across all your local workspaces, thus ensuring that they keep referring to the same workspaces even after the version bump. - `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});Vxr.default=hUe});var A1t=H(Pxr=>{"use strict";Object.defineProperty(Pxr,"__esModule",{value:!0});Pxr.checkRequirements=_fc;var mfc=(Pa(),vi(Va)),Cfc=mfc.__importDefault(wt("os"));function _fc({stdout:e}){if(Cfc.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var fGi=H(E_=>{"use strict";var Oxr=Bpt(),nDe=60103,rGi=60106;E_.Fragment=60107;E_.StrictMode=60108;E_.Profiler=60114;var nGi=60109,iGi=60110,sGi=60112;E_.Suspense=60113;var oGi=60115,aGi=60116;typeof Symbol=="function"&&Symbol.for&&(cH=Symbol.for,nDe=cH("react.element"),rGi=cH("react.portal"),E_.Fragment=cH("react.fragment"),E_.StrictMode=cH("react.strict_mode"),E_.Profiler=cH("react.profiler"),nGi=cH("react.provider"),iGi=cH("react.context"),sGi=cH("react.forward_ref"),E_.Suspense=cH("react.suspense"),oGi=cH("react.memo"),aGi=cH("react.lazy"));var cH,eGi=typeof Symbol=="function"&&Symbol.iterator;function yfc(e){return e===null||typeof e!="object"?null:(e=eGi&&e[eGi]||e["@@iterator"],typeof e=="function"?e:null)}function mUe(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";IGi.exports=fGi()});var _Gi=H(CUe=>{"use strict";var CGi=CUe&&CUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CUe,"__esModule",{value:!0});var hGi=CGi(vMe()),mGi=CGi(lBe()),Bfc=(e,{showCursor:t=!1}={})=>{let r=0,n="",a=!1,o=l=>{!t&&!a&&(mGi.default.hide(),a=!0);let A=l+` -`;A!==n&&(n=A,e.write(hGi.default.eraseLines(r)+A),r=A.split(` -`).length)};return o.clear=()=>{e.write(hGi.default.eraseLines(r)),n="",r=0},o.done=()=>{n="",r=0,t||(mGi.default.show(),a=!1)},o};CUe.default={create:Bfc}});var yGi=H((xZu,_Ue)=>{_Ue.exports=function(t){var r={},n=Bpt(),a=sC(),o=kMe();function l(x){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+x,te=1;teUr||Le[dr]!==ft[Ur])return` -`+Le[dr].replace(" at new "," at ");while(1<=dr&&0<=Ur);break}}}finally{Yn=!1,Error.prepareStackTrace=te}return(x=x?x.displayName||x.name:"")?Ju(x):""}var Eg=[],OA=-1;function GA(x){return{current:x}}function $i(x){0>OA||(x.current=Eg[OA],Eg[OA]=null,OA--)}function dl(x,L){OA++,Eg[OA]=x.current,x.current=L}var Uf={},Kd=GA(Uf),oA=GA(!1),oo=Uf;function Ki(x,L){var te=x.type.contextTypes;if(!te)return Uf;var Re=x.stateNode;if(Re&&Re.__reactInternalMemoizedUnmaskedChildContext===L)return Re.__reactInternalMemoizedMaskedChildContext;var Le={},ft;for(ft in te)Le[ft]=L[ft];return Re&&(x=x.stateNode,x.__reactInternalMemoizedUnmaskedChildContext=L,x.__reactInternalMemoizedMaskedChildContext=Le),Le}function cc(x){return x=x.childContextTypes,x!=null}function Xs(){$i(oA),$i(Kd)}function ws(x,L,te){if(Kd.current!==Uf)throw Error(l(168));dl(Kd,L),dl(oA,te)}function Gs(x,L,te){var Re=x.stateNode;if(x=L.childContextTypes,typeof Re.getChildContext!="function")return te;Re=Re.getChildContext();for(var Le in Re)if(!(Le in x))throw Error(l(108,k(L)||"Unknown",Le));return n({},te,Re)}function Ma(x){return x=(x=x.stateNode)&&x.__reactInternalMemoizedMergedChildContext||Uf,oo=Kd.current,dl(Kd,x),dl(oA,oA.current),!0}function Dc(x,L,te){var Re=x.stateNode;if(!Re)throw Error(l(169));te?(x=Gs(x,L,oo),Re.__reactInternalMemoizedMergedChildContext=x,$i(oA),$i(Kd),dl(Kd,x)):$i(oA),dl(oA,te)}var As=null,Tf=null,cm=o.unstable_now;cm();var Fl=0,rc=8;function sd(x){if(1&x)return rc=15,1;if(2&x)return rc=14,2;if(4&x)return rc=13,4;var L=24&x;return L!==0?(rc=12,L):x&32?(rc=11,32):(L=192&x,L!==0?(rc=10,L):x&256?(rc=9,256):(L=3584&x,L!==0?(rc=8,L):x&4096?(rc=7,4096):(L=4186112&x,L!==0?(rc=6,L):(L=62914560&x,L!==0?(rc=5,L):x&67108864?(rc=4,67108864):x&134217728?(rc=3,134217728):(L=805306368&x,L!==0?(rc=2,L):1073741824&x?(rc=1,1073741824):(rc=8,x))))))}function Om(x){switch(x){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function il(x){switch(x){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(l(358,x))}}function FA(x,L){var te=x.pendingLanes;if(te===0)return rc=0;var Re=0,Le=0,ft=x.expiredLanes,dr=x.suspendedLanes,Ur=x.pingedLanes;if(ft!==0)Re=ft,Le=rc=15;else if(ft=te&134217727,ft!==0){var mi=ft&~dr;mi!==0?(Re=sd(mi),Le=rc):(Ur&=ft,Ur!==0&&(Re=sd(Ur),Le=rc))}else ft=te&~dr,ft!==0?(Re=sd(ft),Le=rc):Ur!==0&&(Re=sd(Ur),Le=rc);if(Re===0)return 0;if(Re=31-Er(Re),Re=te&((0>Re?0:1<te;te++)L.push(x);return L}function MA(x,L,te){x.pendingLanes|=L;var Re=L-1;x.suspendedLanes&=Re,x.pingedLanes&=Re,x=x.eventTimes,L=31-Er(L),x[L]=te}var Er=Math.clz32?Math.clz32:ls,Zt=Math.log,yn=Math.LN2;function ls(x){return x===0?32:31-(Zt(x)/yn|0)|0}var oa=o.unstable_runWithPriority,Fs=o.unstable_scheduleCallback,Wa=o.unstable_cancelCallback,Ca=o.unstable_shouldYield,ld=o.unstable_requestPaint,Rp=o.unstable_now,np=o.unstable_getCurrentPriorityLevel,HA=o.unstable_ImmediatePriority,df=o.unstable_UserBlockingPriority,Zs=o.unstable_NormalPriority,so=o.unstable_LowPriority,Ea=o.unstable_IdlePriority,Ml={},Dr=ld!==void 0?ld:function(){},Wn=null,di=null,aa=!1,Bo=Rp(),us=1e4>Bo?Rp:function(){return Rp()-Bo};function Ql(){switch(np()){case HA:return 99;case df:return 98;case Zs:return 97;case so:return 96;case Ea:return 95;default:throw Error(l(332))}}function LA(x){switch(x){case 99:return HA;case 98:return df;case 97:return Zs;case 96:return so;case 95:return Ea;default:throw Error(l(332))}}function pf(x,L){return x=LA(x),oa(x,L)}function ef(x,L,te){return x=LA(x),Fs(x,L,te)}function ip(){if(di!==null){var x=di;di=null,Wa(x)}_d()}function _d(){if(!aa&&Wn!==null){aa=!0;var x=0;try{var L=Wn;pf(99,function(){for(;xIu?(Cl=dc,dc=null):Cl=dc.sibling;var wl=Ho(xn,dc,Ci[Iu],Po);if(wl===null){dc===null&&(dc=Cl);break}x&&dc&&wl.alternate===null&&L(xn,dc),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl,dc=Cl}if(Iu===Ci.length)return te(xn,dc),ec;if(dc===null){for(;IuIu?(Cl=dc,dc=null):Cl=dc.sibling;var $f=Ho(xn,dc,wl.value,Po);if($f===null){dc===null&&(dc=Cl);break}x&&dc&&$f.alternate===null&&L(xn,dc),rn=ft($f,rn,Iu),Ra===null?ec=$f:Ra.sibling=$f,Ra=$f,dc=Cl}if(wl.done)return te(xn,dc),ec;if(dc===null){for(;!wl.done;Iu++,wl=Ci.next())wl=Sl(xn,wl.value,Po),wl!==null&&(rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return ec}for(dc=Re(xn,dc);!wl.done;Iu++,wl=Ci.next())wl=Wg(dc,xn,Iu,wl.value,Po),wl!==null&&(x&&wl.alternate!==null&&dc.delete(wl.key===null?Iu:wl.key),rn=ft(wl,rn,Iu),Ra===null?ec=wl:Ra.sibling=wl,Ra=wl);return x&&dc.forEach(function(j2){return L(xn,j2)}),ec}return function(xn,rn,Ci,Po){var ec=typeof Ci=="object"&&Ci!==null&&Ci.type===C&&Ci.key===null;ec&&(Ci=Ci.props.children);var Ra=typeof Ci=="object"&&Ci!==null;if(Ra)switch(Ci.$$typeof){case f:e:{for(Ra=Ci.key,ec=rn;ec!==null;){if(ec.key===Ra){switch(ec.tag){case 7:if(Ci.type===C){te(xn,ec.sibling),rn=Le(ec,Ci.props.children),rn.return=xn,xn=rn;break e}break;default:if(ec.elementType===Ci.type){te(xn,ec.sibling),rn=Le(ec,Ci.props),rn.ref=Lr(xn,ec,Ci),rn.return=xn,xn=rn;break e}}te(xn,ec);break}else L(xn,ec);ec=ec.sibling}Ci.type===C?(rn=Id(Ci.props.children,xn.mode,Po,Ci.key),rn.return=xn,xn=rn):(Po=Z(Ci.type,Ci.key,Ci.props,null,xn.mode,Po),Po.ref=Lr(xn,rn,Ci),Po.return=xn,xn=Po)}return dr(xn);case I:e:{for(ec=Ci.key;rn!==null;){if(rn.key===ec)if(rn.tag===4&&rn.stateNode.containerInfo===Ci.containerInfo&&rn.stateNode.implementation===Ci.implementation){te(xn,rn.sibling),rn=Le(rn,Ci.children||[]),rn.return=xn,xn=rn;break e}else{te(xn,rn);break}else L(xn,rn);rn=rn.sibling}rn=Ny(Ci,xn.mode,Po),rn.return=xn,xn=rn}return dr(xn)}if(typeof Ci=="string"||typeof Ci=="number")return Ci=""+Ci,rn!==null&&rn.tag===6?(te(xn,rn.sibling),rn=Le(rn,Ci),rn.return=xn,xn=rn):(te(xn,rn),rn=ev(Ci,xn.mode,Po),rn.return=xn,xn=rn),dr(xn);if(Yr(Ci))return cA(xn,rn,Ci,Po);if(De(Ci))return th(xn,rn,Ci,Po);if(Ra&&fi(xn,Ci),typeof Ci>"u"&&!ec)switch(xn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(l(152,k(xn.type)||"Component"))}return te(xn,rn)}}var ra=$n(!0),kc=$n(!1),Nl={},ca=GA(Nl),Bl=GA(Nl),$g=GA(Nl);function SA(x){if(x===Nl)throw Error(l(174));return x}function lI(x,L){dl($g,L),dl(Bl,x),dl(ca,Nl),x=Tr(L),$i(ca),dl(ca,x)}function lp(){$i(ca),$i(Bl),$i($g)}function Ib(x){var L=SA($g.current),te=SA(ca.current);L=Nr(te,x.type,L),te!==L&&(dl(Bl,x),dl(ca,L))}function Na(x){Bl.current===x&&($i(ca),$i(Bl))}var wd=GA(0);function z1(x){for(var L=x;L!==null;){if(L.tag===13){var te=L.memoizedState;if(te!==null&&(te=te.dehydrated,te===null||pu(te)||_g(te)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===x)break;for(;L.sibling===null;){if(L.return===null||L.return===x)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var T_=null,RC=null,Hm=!1;function YS(x,L){var te=Of(5,null,null,0);te.elementType="DELETED",te.type="DELETED",te.stateNode=L,te.return=x,te.flags=8,x.lastEffect!==null?(x.lastEffect.nextEffect=te,x.lastEffect=te):x.firstEffect=x.lastEffect=te}function Fg(x,L){switch(x.tag){case 5:return L=Xu(L,x.type,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 6:return L=Da(L,x.pendingProps),L!==null?(x.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function hb(x){if(Hm){var L=RC;if(L){var te=L;if(!Fg(x,L)){if(L=mI(te),!L||!Fg(x,L)){x.flags=x.flags&-1025|2,Hm=!1,T_=x;return}YS(T_,te)}T_=x,RC=Qh(L)}else x.flags=x.flags&-1025|2,Hm=!1,T_=x}}function gC(x){for(x=x.return;x!==null&&x.tag!==5&&x.tag!==3&&x.tag!==13;)x=x.return;T_=x}function NC(x){if(!Nn||x!==T_)return!1;if(!Hm)return gC(x),Hm=!0,!1;var L=x.type;if(x.tag!==5||L!=="head"&&L!=="body"&&!lr(L,x.memoizedProps))for(L=RC;L;)YS(x,L),L=mI(L);if(gC(x),x.tag===13){if(!Nn)throw Error(l(316));if(x=x.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(l(317));RC=Wt(x)}else RC=T_?mI(x.stateNode):null;return!0}function Y2(){Nn&&(RC=T_=null,Hm=!1)}var U_=[];function DC(){for(var x=0;xft))throw Error(l(301));ft+=1,Mc=Td=null,L.updateQueue=null,kC.current=Jr,x=te(Re,Le)}while(sE)}if(kC.current=xc,L=Td!==null&&Td.next!==null,ph=0,Mc=Td=vA=null,Pf=!1,L)throw Error(l(300));return x}function um(){var x={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x,Mc}function gm(){if(Td===null){var x=vA.alternate;x=x!==null?x.memoizedState:null}else x=Td.next;var L=Mc===null?vA.memoizedState:Mc.next;if(L!==null)Mc=L,Td=x;else{if(x===null)throw Error(l(310));Td=x,x={memoizedState:Td.memoizedState,baseState:Td.baseState,baseQueue:Td.baseQueue,queue:Td.queue,next:null},Mc===null?vA.memoizedState=Mc=x:Mc=Mc.next=x}return Mc}function cs(x,L){return typeof L=="function"?L(x):L}function na(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=Td,Le=Re.baseQueue,ft=te.pending;if(ft!==null){if(Le!==null){var dr=Le.next;Le.next=ft.next,ft.next=dr}Re.baseQueue=Le=ft,te.pending=null}if(Le!==null){Le=Le.next,Re=Re.baseState;var Ur=dr=ft=null,mi=Le;do{var Vi=mi.lane;if((ph&Vi)===Vi)Ur!==null&&(Ur=Ur.next={lane:0,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null}),Re=mi.eagerReducer===x?mi.eagerState:x(Re,mi.action);else{var Ta={lane:Vi,action:mi.action,eagerReducer:mi.eagerReducer,eagerState:mi.eagerState,next:null};Ur===null?(dr=Ur=Ta,ft=Re):Ur=Ur.next=Ta,vA.lanes|=Vi,xC|=Vi}mi=mi.next}while(mi!==null&&mi!==Le);Ur===null?ft=Re:Ur.next=dr,YA(Re,L.memoizedState)||(Ts=!0),L.memoizedState=Re,L.baseState=ft,L.baseQueue=Ur,te.lastRenderedState=Re}return[L.memoizedState,te.dispatch]}function ko(x){var L=gm(),te=L.queue;if(te===null)throw Error(l(311));te.lastRenderedReducer=x;var Re=te.dispatch,Le=te.pending,ft=L.memoizedState;if(Le!==null){te.pending=null;var dr=Le=Le.next;do ft=x(ft,dr.action),dr=dr.next;while(dr!==Le);YA(ft,L.memoizedState)||(Ts=!0),L.memoizedState=ft,L.baseQueue===null&&(L.baseState=ft),te.lastRenderedState=ft}return[ft,Re]}function ki(x,L,te){var Re=L._getVersion;Re=Re(L._source);var Le=ke?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(Le!==null?x=Le===Re:(x=x.mutableReadLanes,(x=(ph&x)===x)&&(ke?L._workInProgressVersionPrimary=Re:L._workInProgressVersionSecondary=Re,U_.push(L))),x)return te(L._source);throw U_.push(L),Error(l(350))}function Kl(x,L,te,Re){var Le=fh;if(Le===null)throw Error(l(349));var ft=L._getVersion,dr=ft(L._source),Ur=kC.current,mi=Ur.useState(function(){return ki(Le,L,te)}),Vi=mi[1],Ta=mi[0];mi=Mc;var Sl=x.memoizedState,Ho=Sl.refs,Wg=Ho.getSnapshot,cA=Sl.source;Sl=Sl.subscribe;var th=vA;return x.memoizedState={refs:Ho,source:L,subscribe:Re},Ur.useEffect(function(){Ho.getSnapshot=te,Ho.setSnapshot=Vi;var xn=ft(L._source);if(!YA(dr,xn)){xn=te(L._source),YA(Ta,xn)||(Vi(xn),xn=Jp(th),Le.mutableReadLanes|=xn&Le.pendingLanes),xn=Le.mutableReadLanes,Le.entangledLanes|=xn;for(var rn=Le.entanglements,Ci=xn;0te?98:te,function(){x(!0)}),pf(97GT&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432)}else{if(!Le)if(x=z1(ft),x!==null){if(L.flags|=64,Le=!0,x=x.updateQueue,x!==null&&(L.updateQueue=x,L.flags|=4),Ry(Re,!0),Re.tail===null&&Re.tailMode==="hidden"&&!ft.alternate&&!Hm)return L=L.lastEffect=Re.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*us()-Re.renderingStartTime>GT&&te!==1073741824&&(L.flags|=64,Le=!0,Ry(Re,!1),L.lanes=33554432);Re.isBackwards?(ft.sibling=L.child,L.child=ft):(x=Re.last,x!==null?x.sibling=ft:L.child=ft,Re.last=ft)}return Re.tail!==null?(x=Re.tail,Re.rendering=x,Re.tail=x.sibling,Re.lastEffect=L.lastEffect,Re.renderingStartTime=us(),x.sibling=null,L=wd.current,dl(wd,Le?L&1|2:L&1),x):null;case 23:case 24:return Np(),x!==null&&x.memoizedState!==null!=(L.memoizedState!==null)&&Re.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(l(156,L.tag))}function _b(x){switch(x.tag){case 1:cc(x.type)&&Xs();var L=x.flags;return L&4096?(x.flags=L&-4097|64,x):null;case 3:if(lp(),$i(oA),$i(Kd),DC(),L=x.flags,L&64)throw Error(l(285));return x.flags=L&-4097|64,x;case 5:return Na(x),null;case 13:return $i(wd),L=x.flags,L&4096?(x.flags=L&-4097|64,x):null;case 19:return $i(wd),null;case 4:return lp(),null;case 10:return XE(x),null;case 23:case 24:return Np(),null;default:return null}}function z_(x,L){try{var te="",Re=L;do te+=HS(Re),Re=Re.return;while(Re);var Le=te}catch(ft){Le=` -Error generating stack: `+ft.message+` -`+ft.stack}return{value:x,source:L,stack:Le}}function zE(x,L){try{console.error(L.value)}catch(te){setTimeout(function(){throw te})}}var oB=typeof WeakMap=="function"?WeakMap:Map;function DT(x,L,te){te=lm(-1,te),te.tag=3,te.payload={element:null};var Re=L.value;return te.callback=function(){e2||(e2=!0,yd=Re),zE(x,L)},te}function aB(x,L,te){te=lm(-1,te),te.tag=3;var Re=x.type.getDerivedStateFromError;if(typeof Re=="function"){var Le=L.value;te.payload=function(){return zE(x,L),Re(Le)}}var ft=x.stateNode;return ft!==null&&typeof ft.componentDidCatch=="function"&&(te.callback=function(){typeof Re!="function"&&(bI===null?bI=new Set([this]):bI.add(this),zE(x,L));var dr=L.stack;this.componentDidCatch(L.value,{componentStack:dr!==null?dr:""})}),te}var jS=typeof WeakSet=="function"?WeakSet:Set;function XR(x){var L=x.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(te){i_(x,te)}else L.current=null}function zS(x,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&x!==null){var te=x.memoizedProps,Re=x.memoizedState;x=L.stateNode,L=x.getSnapshotBeforeUpdate(L.elementType===L.type?te:jd(L.type,te),Re),x.__reactInternalSnapshotBeforeUpdate=L}return;case 3:jt&&L.flags&256&&Ei(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(l(163))}function qE(x,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var te=L=L.next;do{if((te.tag&x)===x){var Re=te.destroy;te.destroy=void 0,Re!==void 0&&Re()}te=te.next}while(te!==L)}}function X2(x,L,te){switch(te.tag){case 0:case 11:case 15:case 22:if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{if((x.tag&3)===3){var Re=x.create;x.destroy=Re()}x=x.next}while(x!==L)}if(L=te.updateQueue,L=L!==null?L.lastEffect:null,L!==null){x=L=L.next;do{var Le=x;Re=Le.next,Le=Le.tag,Le&4&&Le&1&&(hp(te,x),ny(te,x)),x=Re}while(x!==L)}return;case 1:x=te.stateNode,te.flags&4&&(L===null?x.componentDidMount():(Re=te.elementType===te.type?L.memoizedProps:jd(te.type,L.memoizedProps),x.componentDidUpdate(Re,L.memoizedState,x.__reactInternalSnapshotBeforeUpdate))),L=te.updateQueue,L!==null&&H2(te,L,x);return;case 3:if(L=te.updateQueue,L!==null){if(x=null,te.child!==null)switch(te.child.tag){case 5:x=Yt(te.child.stateNode);break;case 1:x=te.child.stateNode}H2(te,L,x)}return;case 5:x=te.stateNode,L===null&&te.flags&4&&ps(x,te.type,te.memoizedProps,te);return;case 6:return;case 4:return;case 12:return;case 13:Nn&&te.memoizedState===null&&(te=te.alternate,te!==null&&(te=te.memoizedState,te!==null&&(te=te.dehydrated,te!==null&&Ru(te))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(l(163))}function kT(x,L){if(jt)for(var te=x;;){if(te.tag===5){var Re=te.stateNode;L?iA(Re):vu(te.stateNode,te.memoizedProps)}else if(te.tag===6)Re=te.stateNode,L?ma(Re):li(Re,te.memoizedProps);else if((te.tag!==23&&te.tag!==24||te.memoizedState===null||te===x)&&te.child!==null){te.child.return=te,te=te.child;continue}if(te===x)break;for(;te.sibling===null;){if(te.return===null||te.return===x)return;te=te.return}te.sibling.return=te.return,te=te.sibling}}function pn(x,L){if(Tf&&typeof Tf.onCommitFiberUnmount=="function")try{Tf.onCommitFiberUnmount(As,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(x=L.updateQueue,x!==null&&(x=x.lastEffect,x!==null)){var te=x=x.next;do{var Re=te,Le=Re.destroy;if(Re=Re.tag,Le!==void 0)if(Re&4)hp(L,te);else{Re=L;try{Le()}catch(ft){i_(Re,ft)}}te=te.next}while(te!==x)}break;case 1:if(XR(L),x=L.stateNode,typeof x.componentWillUnmount=="function")try{x.props=L.memoizedProps,x.state=L.memoizedState,x.componentWillUnmount()}catch(ft){i_(L,ft)}break;case 5:XR(L);break;case 4:jt?RD(x,L):Fn&&Fn&&(L=L.stateNode.containerInfo,x=Xa(L),Wc(L,x))}}function q1(x,L){for(var te=L;;)if(pn(x,te),te.child===null||jt&&te.tag===4){if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return}te.sibling.return=te.return,te=te.sibling}else te.child.return=te,te=te.child}function J2(x){x.alternate=null,x.child=null,x.dependencies=null,x.firstEffect=null,x.lastEffect=null,x.memoizedProps=null,x.memoizedState=null,x.pendingProps=null,x.return=null,x.updateQueue=null}function ey(x){return x.tag===5||x.tag===3||x.tag===4}function up(x){if(jt){e:{for(var L=x.return;L!==null;){if(ey(L))break e;L=L.return}throw Error(l(160))}var te=L;switch(L=te.stateNode,te.tag){case 5:var Re=!1;break;case 3:L=L.containerInfo,Re=!0;break;case 4:L=L.containerInfo,Re=!0;break;default:throw Error(l(161))}te.flags&16&&(Nc(L),te.flags&=-17);e:t:for(te=x;;){for(;te.sibling===null;){if(te.return===null||ey(te.return)){te=null;break e}te=te.return}for(te.sibling.return=te.return,te=te.sibling;te.tag!==5&&te.tag!==6&&te.tag!==18;){if(te.flags&2||te.child===null||te.tag===4)continue t;te.child.return=te,te=te.child}if(!(te.flags&2)){te=te.stateNode;break e}}Re?Iw(x,te,L):cB(x,te,L)}}function Iw(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?Qa(te,x,L):Or(te,x);else if(Re!==4&&(x=x.child,x!==null))for(Iw(x,L,te),x=x.sibling;x!==null;)Iw(x,L,te),x=x.sibling}function cB(x,L,te){var Re=x.tag,Le=Re===5||Re===6;if(Le)x=Le?x.stateNode:x.stateNode.instance,L?bo(te,x,L):Rn(te,x);else if(Re!==4&&(x=x.child,x!==null))for(cB(x,L,te),x=x.sibling;x!==null;)cB(x,L,te),x=x.sibling}function RD(x,L){for(var te=L,Re=!1,Le,ft;;){if(!Re){Re=te.return;e:for(;;){if(Re===null)throw Error(l(160));switch(Le=Re.stateNode,Re.tag){case 5:ft=!1;break e;case 3:Le=Le.containerInfo,ft=!0;break e;case 4:Le=Le.containerInfo,ft=!0;break e}Re=Re.return}Re=!0}if(te.tag===5||te.tag===6)q1(x,te),ft?Cg(Le,te.stateNode):gc(Le,te.stateNode);else if(te.tag===4){if(te.child!==null){Le=te.stateNode.containerInfo,ft=!0,te.child.return=te,te=te.child;continue}}else if(pn(x,te),te.child!==null){te.child.return=te,te=te.child;continue}if(te===L)break;for(;te.sibling===null;){if(te.return===null||te.return===L)return;te=te.return,te.tag===4&&(Re=!1)}te.sibling.return=te.return,te=te.sibling}}function Rd(x,L){if(jt){switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 1:return;case 5:var te=L.stateNode;if(te!=null){var Re=L.memoizedProps;x=x!==null?x.memoizedProps:Re;var Le=L.type,ft=L.updateQueue;L.updateQueue=null,ft!==null&&yo(te,ft,Le,x,Re,L)}return;case 6:if(L.stateNode===null)throw Error(l(162));te=L.memoizedProps,Qi(L.stateNode,x!==null?x.memoizedProps:te,te);return;case 3:Nn&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,Hu(L.containerInfo)));return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 17:return;case 23:case 24:kT(L,L.memoizedState!==null);return}throw Error(l(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:qE(3,L);return;case 12:return;case 13:JR(L),ty(L);return;case 19:ty(L);return;case 3:Nn&&(te=L.stateNode,te.hydrate&&(te.hydrate=!1,Hu(te.containerInfo)));break;case 23:case 24:return}e:if(Fn){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,Wc(L.containerInfo,L.pendingChildren);break e}throw Error(l(163))}}function JR(x){x.memoizedState!==null&&(hw=us(),jt&&kT(x.child,!0))}function ty(x){var L=x.updateQueue;if(L!==null){x.updateQueue=null;var te=x.stateNode;te===null&&(te=x.stateNode=new jS),L.forEach(function(Re){var Le=ZT.bind(null,x,Re);te.has(Re)||(te.add(Re),Re.then(Le,Le))})}}function cF(x,L){return x!==null&&(x=x.memoizedState,x===null||x.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var $1=0,$E=1,N_=2,e1=3,t1=4;if(typeof Symbol=="function"&&Symbol.for){var ry=Symbol.for;$1=ry("selector.component"),$E=ry("selector.has_pseudo_class"),N_=ry("selector.role"),e1=ry("selector.test_id"),t1=ry("selector.text")}function xT(x){var L=Hi(x);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(l(364));return L}if(x=Gc(x),x===null)throw Error(l(362));return x.stateNode.current}function yb(x,L){switch(L.$$typeof){case $1:if(x.type===L.value)return!0;break;case $E:e:{L=L.value,x=[x,0];for(var te=0;te";case $E:return":has("+(r_(x)||"")+")";case N_:return'[role="'+x.value+'"]';case t1:return'"'+x.value+'"';case e1:return'[data-testname="'+x.value+'"]';default:throw Error(l(365,x))}}function Rh(x,L){var te=[];x=[x,0];for(var Re=0;ReLe&&(Le=dr),te&=~ft}if(te=Le,te=us()-te,te=(120>te?120:480>te?480:1080>te?1080:1920>te?1920:3e3>te?3e3:4320>te?4320:1960*DD(te/1960))-te,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Qp!==5&&(Qp=2),mi=z_(mi,Ur),Ho=dr;do{switch(Ho.tag){case 3:ft=mi,Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Ra=DT(Ho,ft,L);CI(Ho,Ra);break e;case 1:ft=mi;var dc=Ho.type,Iu=Ho.stateNode;if(!(Ho.flags&64)&&(typeof dc.getDerivedStateFromError=="function"||Iu!==null&&typeof Iu.componentDidCatch=="function"&&(bI===null||!bI.has(Iu)))){Ho.flags|=4096,L&=-L,Ho.lanes|=L;var Cl=aB(Ho,ft,L);CI(Ho,Cl);break e}}Ho=Ho.return}while(Ho!==null)}iu(te)}catch(wl){L=wl,rf===te&&te!==null&&(rf=te=te.return);continue}break}while(!0)}function t2(){var x=q_.current;return q_.current=xc,x===null?xc:x}function Ro(x,L){var te=lc;lc|=16;var Re=t2();fh===x&&yI===L||Dm(x,L);do try{AE();break}catch(Le){Dp(x,Le)}while(!0);if(J_(),lc=te,q_.current=Re,rf!==null)throw Error(l(261));return fh=null,yI=0,Qp}function AE(){for(;rf!==null;)Xc(rf)}function AB(){for(;rf!==null&&!Ca();)Xc(rf)}function Xc(x){var L=Cx(x.alternate,x,aE);x.memoizedProps=x.pendingProps,L===null?iu(x):rf=L,kD.current=null}function iu(x){var L=x;do{var te=L.alternate;if(x=L.return,L.flags&2048){if(te=_b(L),te!==null){te.flags&=2047,rf=te;return}x!==null&&(x.firstEffect=x.lastEffect=null,x.flags|=2048)}else{if(te=KS(te,L,aE),te!==null){rf=te;return}if(te=L,te.tag!==24&&te.tag!==23||te.memoizedState===null||aE&1073741824||!(te.mode&4)){for(var Re=0,Le=te.child;Le!==null;)Re|=Le.lanes|Le.childLanes,Le=Le.sibling;te.childLanes=Re}x!==null&&!(x.flags&2048)&&(x.firstEffect===null&&(x.firstEffect=L.firstEffect),L.lastEffect!==null&&(x.lastEffect!==null&&(x.lastEffect.nextEffect=L.firstEffect),x.lastEffect=L.lastEffect),1us()-hw?Dm(x,0):r1|=te),eh(x,L)}function ZT(x,L){var te=x.stateNode;te!==null&&te.delete(L),L=0,L===0&&(L=x.mode,L&2?L&4?(Ip===0&&(Ip=Ih),L=yg(62914560&~Ip),L===0&&(L=4194304)):L=Ql()===99?1:2:L=1),te=fu(),x=uE(x,L),x!==null&&(MA(x,L,te),eh(x,te))}var Cx;Cx=function(x,L,te){var Re=L.lanes;if(x!==null)if(x.memoizedProps!==L.pendingProps||oA.current)Ts=!0;else if(te&Re)Ts=!!(x.flags&16384);else{switch(Ts=!1,L.tag){case 3:RT(L),Y2();break;case 5:Ib(L);break;case 1:cc(L.type)&&Ma(L);break;case 4:lI(L,L.stateNode.containerInfo);break;case 10:q0(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return te&L.child.childLanes?jE(x,L,te):(dl(wd,wd.current&1),L=BA(x,L,te),L!==null?L.sibling:null);dl(wd,wd.current&1);break;case 19:if(Re=(te&L.childLanes)!==0,x.flags&64){if(Re)return $I(x,L,te);L.flags|=64}var Le=L.memoizedState;if(Le!==null&&(Le.rendering=null,Le.tail=null,Le.lastEffect=null),dl(wd,wd.current),Re)break;return null;case 23:case 24:return L.lanes=0,uI(x,L,te)}return BA(x,L,te)}else Ts=!1;switch(L.lanes=0,L.tag){case 2:if(Re=L.type,x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,Le=Ki(L,Kd.current),t_(L,te),Le=XS(null,L,Re,x,Le,te),L.flags|=1,typeof Le=="object"&&Le!==null&&typeof Le.render=="function"&&Le.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,cc(Re)){var ft=!0;Ma(L)}else ft=!1;L.memoizedState=Le.state!==null&&Le.state!==void 0?Le.state:null,fb(L);var dr=Re.getDerivedStateFromProps;typeof dr=="function"&&se(L,Re,dr,x),Le.updater=O,L.stateNode=Le,Le._reactInternals=L,sr(L,Re,x,te),L=sB(null,L,Re,!0,ft,te)}else L.tag=0,Qo(null,L,Le,te),L=L.child;return L;case 16:Le=L.elementType;e:{switch(x!==null&&(x.alternate=null,L.alternate=null,L.flags|=2),x=L.pendingProps,ft=Le._init,Le=ft(Le._payload),L.type=Le,ft=L.tag=Vd(Le),x=jd(Le,x),ft){case 0:L=oE(null,L,Le,x,te);break e;case 1:L=TT(null,L,Le,x,te);break e;case 11:L=vg(null,L,Le,x,te);break e;case 14:L=Ng(null,L,Le,jd(Le.type,x),Re,te);break e}throw Error(l(306,Le,""))}return L;case 0:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),oE(x,L,Re,Le,te);case 1:return Re=L.type,Le=L.pendingProps,Le=L.elementType===Re?Le:jd(Re,Le),TT(x,L,Re,Le,te);case 3:if(RT(L),Re=L.updateQueue,x===null||Re===null)throw Error(l(282));if(Re=L.pendingProps,Le=L.memoizedState,Le=Le!==null?Le.element:null,pe(x,L),_I(L,Re,null,te),Re=L.memoizedState.element,Re===Le)Y2(),L=BA(x,L,te);else{if(Le=L.stateNode,(ft=Le.hydrate)&&(Nn?(RC=Qh(L.stateNode.containerInfo),T_=L,ft=Hm=!0):ft=!1),ft){if(Nn&&(x=Le.mutableSourceEagerHydrationData,x!=null))for(Le=0;Le=Vi&&ft>=Sl&&Le<=Ta&&dr<=Ho){x.splice(L,1);break}else if(Re!==Vi||te.width!==mi.width||Hodr){if(!(ft!==Sl||te.height!==mi.height||TaLe)){Vi>Re&&(mi.width+=Vi-Re,mi.x=Re),Taft&&(mi.height+=Sl-ft,mi.y=ft),Hote&&(te=dr)),dr ")+` - -No matching component was found for: - `)+x.join(" > ")}return null},r.getPublicRootInstance=function(x){if(x=x.current,!x.child)return null;switch(x.child.tag){case 5:return Yt(x.child.stateNode);default:return x.child.stateNode}},r.injectIntoDevTools=function(x){if(x={bundleType:x.bundleType,version:x.version,rendererPackageName:x.rendererPackageName,rendererConfig:x.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:A.ReactCurrentDispatcher,findHostInstanceByFiber:bL,findFiberByHostInstance:x.findFiberByHostInstance||gF,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")x=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{As=L.inject(x),Tf=L}catch{}x=!0}return x},r.observeVisibleRects=function(x,L,te,Re){if(!Ya)throw Error(l(363));x=bb(x,L);var Le=zr(x,te,Re).disconnect;return{disconnect:function(){Le()}}},r.registerMutableSourceForHydration=function(x,L){var te=L._getVersion;te=te(L._source),x.mutableSourceEagerHydrationData==null?x.mutableSourceEagerHydrationData=[L,te]:x.mutableSourceEagerHydrationData.push(L,te)},r.runWithPriority=function(x,L){var te=Fl;try{return Fl=x,L()}finally{Fl=te}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(x,L){var te=lc;lc&=-2,lc|=8;try{return x(L)}finally{lc=te,lc===0&&(b0(),ip())}},r.updateContainer=function(x,L,te,Re){var Le=L.current,ft=fu(),dr=Jp(Le);e:if(te){te=te._reactInternals;t:{if(et(te)!==te||te.tag!==1)throw Error(l(170));var Ur=te;do{switch(Ur.tag){case 3:Ur=Ur.stateNode.context;break t;case 1:if(cc(Ur.type)){Ur=Ur.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Ur=Ur.return}while(Ur!==null);throw Error(l(171))}if(te.tag===1){var mi=te.type;if(cc(mi)){te=Gs(te,mi,Ur);break e}}te=Ur}else te=Uf;return L.context===null?L.context=te:L.pendingContext=te,L=lm(ft,dr),L.payload={element:x},Re=Re===void 0?null:Re,Re!==null&&(L.callback=Re),Kf(Le,L),dC(Le,dr,ft),dr},r}});var EGi=H((GZu,bGi)=>{"use strict";bGi.exports=yGi()});var SGi=H(yUe=>{"use strict";var wfc=yUe&&yUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yUe,"__esModule",{value:!0});var Tfc=wfc(GMe()),Xxr={};yUe.default=e=>{if(e.length===0)return{width:0,height:0};if(Xxr[e])return Xxr[e];let t=Tfc.default(e),r=e.split(` -`).length;return Xxr[e]={width:t,height:r},{width:t,height:r}}});var vGi=H(bUe=>{"use strict";var Rfc=bUe&&bUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bUe,"__esModule",{value:!0});var S_=Rfc(WW()),Nfc=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?S_.default.POSITION_TYPE_ABSOLUTE:S_.default.POSITION_TYPE_RELATIVE)},Dfc=(e,t)=>{"marginLeft"in t&&e.setMargin(S_.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(S_.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(S_.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(S_.default.EDGE_BOTTOM,t.marginBottom||0)},kfc=(e,t)=>{"paddingLeft"in t&&e.setPadding(S_.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(S_.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(S_.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(S_.default.EDGE_BOTTOM,t.paddingBottom||0)},xfc=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(S_.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(S_.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(S_.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(S_.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(S_.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(S_.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(S_.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(S_.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(S_.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(S_.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(S_.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(S_.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(S_.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(S_.default.JUSTIFY_SPACE_AROUND))},Gfc=(e,t)=>{var r,n;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((n=t.minHeight)!==null&&n!==void 0?n:0))},Ffc=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?S_.default.DISPLAY_FLEX:S_.default.DISPLAY_NONE)},Zfc=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(S_.default.EDGE_TOP,r),e.setBorder(S_.default.EDGE_BOTTOM,r),e.setBorder(S_.default.EDGE_LEFT,r),e.setBorder(S_.default.EDGE_RIGHT,r)}};bUe.default=(e,t={})=>{Nfc(e,t),Dfc(e,t),kfc(e,t),xfc(e,t),Gfc(e,t),Ffc(e,t),Zfc(e,t)}});var Uxr=H(EUe=>{"use strict";var BGi=EUe&&EUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EUe,"__esModule",{value:!0});var Lfc=BGi(OIr()),Vfc=BGi(MIr()),Jxr={};EUe.default=(e,t,r)=>{let n=e+String(t)+String(r);if(Jxr[n])return Jxr[n];let a=e;if(r==="wrap"&&(a=Lfc.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=Vfc.default(e,t,{position:o})}return Jxr[n]=a,a}});var jxr=H(Kxr=>{"use strict";Object.defineProperty(Kxr,"__esModule",{value:!0});var wGi=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let n="";r.nodeName==="#text"?n=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(n=wGi(r)),n.length>0&&typeof r.internal_transform=="function"&&(n=r.internal_transform(n))),t+=n}return t};Kxr.default=wGi});var zxr=H(Y1=>{"use strict";var SUe=Y1&&Y1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Y1,"__esModule",{value:!0});Y1.setTextNodeValue=Y1.createTextNode=Y1.setStyle=Y1.setAttribute=Y1.removeChildNode=Y1.insertBeforeNode=Y1.appendChildNode=Y1.createNode=Y1.TEXT_NAME=void 0;var Pfc=SUe(WW()),TGi=SUe(SGi()),Wfc=SUe(vGi()),Ofc=SUe(Uxr()),Mfc=SUe(jxr());Y1.TEXT_NAME="#text";Y1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:Pfc.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(Hfc.bind(null,r))),r};Y1.appendChildNode=(e,t)=>{var r;t.parentNode&&Y1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&f1t(e)};Y1.insertBeforeNode=(e,t,r)=>{var n,a;t.parentNode&&Y1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((n=e.yogaNode)===null||n===void 0||n.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&f1t(e)};Y1.removeChildNode=(e,t)=>{var r,n;t.yogaNode&&((n=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||n===void 0||n.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&f1t(e)};Y1.setAttribute=(e,t,r)=>{e.attributes[t]=r};Y1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&Wfc.default(e.yogaNode,t)};Y1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return Y1.setTextNodeValue(t,e),t};var Hfc=function(e,t){var r,n;let a=e.nodeName==="#text"?e.nodeValue:Mfc.default(e),o=TGi.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let l=(n=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&n!==void 0?n:"wrap",A=Ofc.default(a,t,l);return TGi.default(A)},RGi=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:RGi(e.parentNode)},f1t=e=>{let t=RGi(e);t?.markDirty()};Y1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,f1t(e)}});var GGi=H(vUe=>{"use strict";var xGi=vUe&&vUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vUe,"__esModule",{value:!0});var NGi=kMe(),Yfc=xGi(EGi()),DGi=xGi(WW()),FG=zxr(),kGi=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};vUe.default=Yfc.default({schedulePassiveEffects:NGi.unstable_scheduleCallback,cancelPassiveEffects:NGi.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,n=t==="ink-text"||t==="ink-virtual-text";return r===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,n)=>{if(n.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&n.isInsideText?"ink-virtual-text":e,o=FG.createNode(a);for(let[l,A]of Object.entries(t))l!=="children"&&(l==="style"?FG.setStyle(o,A):l==="internal_transform"?o.internal_transform=A:l==="internal_static"?o.internal_static=!0:FG.setAttribute(o,l,A));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return FG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{FG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{FG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(DGi.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(DGi.default.DISPLAY_FLEX)},appendInitialChild:FG.appendChildNode,appendChild:FG.appendChildNode,insertBefore:FG.insertBeforeNode,finalizeInitialChildren:(e,t,r,n)=>(e.internal_static&&(n.isStaticDirty=!0,n.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:FG.appendChildNode,insertInContainerBefore:FG.insertBeforeNode,removeChildFromContainer:(e,t)=>{FG.removeChildNode(e,t),kGi(t.yogaNode)},prepareUpdate:(e,t,r,n,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},l=Object.keys(n);for(let A of l)if(n[A]!==r[A]){if(A==="style"&&typeof n.style=="object"&&typeof r.style=="object"){let I=n.style,C=r.style,b=Object.keys(I);for(let E of b){if(E==="borderStyle"||E==="borderColor"){if(typeof o.style!="object"){let N={};o.style=N}o.style.borderStyle=I.borderStyle,o.style.borderColor=I.borderColor}if(I[E]!==C[E]){if(typeof o.style!="object"){let N={};o.style=N}o.style[E]=I[E]}}continue}o[A]=n[A]}return o},commitUpdate:(e,t)=>{for(let[r,n]of Object.entries(t))r!=="children"&&(r==="style"?FG.setStyle(e,n):r==="internal_transform"?e.internal_transform=n:r==="internal_static"?e.internal_static=!0:FG.setAttribute(e,r,n))},commitTextUpdate:(e,t,r)=>{FG.setTextNodeValue(e,r)},removeChild:(e,t)=>{FG.removeChildNode(e,t),kGi(t.yogaNode)}})});var FGi=H(BUe=>{"use strict";var Qfc=BUe&&BUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BUe,"__esModule",{value:!0});var I1t=Qfc(WW());BUe.default=e=>e.getComputedWidth()-e.getComputedPadding(I1t.default.EDGE_LEFT)-e.getComputedPadding(I1t.default.EDGE_RIGHT)-e.getComputedBorder(I1t.default.EDGE_LEFT)-e.getComputedBorder(I1t.default.EDGE_RIGHT)});var qxr=H(TUe=>{"use strict";var Xfc=TUe&&TUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TUe,"__esModule",{value:!0});var wUe=Xfc(VK()),Jfc=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,Ufc=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,h1t=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);TUe.default=(e,t,r)=>{if(!t)return e;if(t in wUe.default){let a=h1t(t,r);return wUe.default[a](e)}if(t.startsWith("#")){let a=h1t("hex",r);return wUe.default[a](t)(e)}if(t.startsWith("ansi")){let a=Ufc.exec(t);if(!a)return e;let o=h1t(a[1],r),l=Number(a[2]);return wUe.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=Jfc.exec(t);if(!a)return e;let o=h1t(a[1],r),l=Number(a[2]),A=Number(a[3]),f=Number(a[4]);return wUe.default[o](l,A,f)(e)}return e}});var LGi=H(RUe=>{"use strict";var ZGi=RUe&&RUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RUe,"__esModule",{value:!0});var Kfc=ZGi(jIr()),$xr=ZGi(qxr());RUe.default=(e,t,r,n)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),l=r.style.borderColor,A=Kfc.default[r.style.borderStyle],f=$xr.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,l,"foreground"),I=($xr.default(A.vertical,l,"foreground")+` -`).repeat(o-2),C=$xr.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,l,"foreground");n.write(e,t,f,{transformers:[]}),n.write(e,t+1,I,{transformers:[]}),n.write(e+a-1,t+1,I,{transformers:[]}),n.write(e,t+o-1,C,{transformers:[]})}}});var PGi=H(NUe=>{"use strict";var ICe=NUe&&NUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NUe,"__esModule",{value:!0});var jfc=ICe(WW()),zfc=ICe(GMe()),qfc=ICe(UIr()),$fc=ICe(Uxr()),eIc=ICe(FGi()),tIc=ICe(jxr()),rIc=ICe(LGi()),nIc=(e,t)=>{var r;let n=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(n){let a=n.getComputedLeft(),o=n.getComputedTop();t=` -`.repeat(o)+qfc.default(t,a)}return t},VGi=(e,t,r)=>{var n;let{offsetX:a=0,offsetY:o=0,transformers:l=[],skipStaticElements:A}=r;if(A&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===jfc.default.DISPLAY_NONE)return;let I=a+f.getComputedLeft(),C=o+f.getComputedTop(),b=l;if(typeof e.internal_transform=="function"&&(b=[e.internal_transform,...l]),e.nodeName==="ink-text"){let E=tIc.default(e);if(E.length>0){let N=zfc.default(E),B=eIc.default(f);if(N>B){let F=(n=e.style.textWrap)!==null&&n!==void 0?n:"wrap";E=$fc.default(E,B,F)}E=nIc(e,E),t.write(I,C,E,{transformers:b})}return}if(e.nodeName==="ink-box"&&rIc.default(I,C,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let E of e.childNodes)VGi(E,t,{offsetX:I,offsetY:C,transformers:b,skipStaticElements:A})}};NUe.default=VGi});var MGi=H(DUe=>{"use strict";var OGi=DUe&&DUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DUe,"__esModule",{value:!0});var WGi=OGi(Rpt()),iIc=OGi(ABe()),eGr=class{constructor(t){this.writes=[];let{width:r,height:n}=t;this.width=r,this.height=n}write(t,r,n,a){let{transformers:o}=a;n&&this.writes.push({x:t,y:r,text:n,transformers:o})}get(){let t=[];for(let n=0;nn.trimRight()).join(` -`),height:t.length}}};DUe.default=eGr});var QGi=H(kUe=>{"use strict";var tGr=kUe&&kUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kUe,"__esModule",{value:!0});var sIc=tGr(WW()),HGi=tGr(PGi()),YGi=tGr(MGi());kUe.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,sIc.default.DIRECTION_LTR);let n=new YGi.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});HGi.default(e,n,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new YGi.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),HGi.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:l}=n.get();return{output:o,outputHeight:l,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var nGr=H(rGr=>{"use strict";Object.defineProperty(rGr,"__esModule",{value:!0});rGr.default=new WeakMap});var sGr=H(iGr=>{"use strict";Object.defineProperty(iGr,"__esModule",{value:!0});var oIc=sC(),XGi=oIc.createContext({exit:()=>{}});XGi.displayName="InternalAppContext";iGr.default=XGi});var aGr=H(oGr=>{"use strict";Object.defineProperty(oGr,"__esModule",{value:!0});var aIc=sC(),JGi=aIc.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});JGi.displayName="InternalStdinContext";oGr.default=JGi});var lGr=H(cGr=>{"use strict";Object.defineProperty(cGr,"__esModule",{value:!0});var cIc=sC(),UGi=cIc.createContext({stdout:void 0,write:()=>{}});UGi.displayName="InternalStdoutContext";cGr.default=UGi});var gGr=H(uGr=>{"use strict";Object.defineProperty(uGr,"__esModule",{value:!0});var lIc=sC(),KGi=lIc.createContext({stderr:void 0,write:()=>{}});KGi.displayName="InternalStderrContext";uGr.default=KGi});var m1t=H(AGr=>{"use strict";Object.defineProperty(AGr,"__esModule",{value:!0});var uIc=sC(),jGi=uIc.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});jGi.displayName="InternalFocusContext";AGr.default=jGi});var C1t=H(l4=>{"use strict";var gIc=l4&&l4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),AIc=l4&&l4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dIc=l4&&l4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&gIc(t,e,r);return AIc(t,e),t},pIc=l4&&l4.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a{var{children:r}=e,n=pIc(e,["children"]);let a=Object.assign(Object.assign({},n),{marginLeft:n.marginLeft||n.marginX||n.margin||0,marginRight:n.marginRight||n.marginX||n.margin||0,marginTop:n.marginTop||n.marginY||n.margin||0,marginBottom:n.marginBottom||n.marginY||n.margin||0,paddingLeft:n.paddingLeft||n.paddingX||n.padding||0,paddingRight:n.paddingRight||n.paddingX||n.padding||0,paddingTop:n.paddingTop||n.paddingY||n.padding||0,paddingBottom:n.paddingBottom||n.paddingY||n.padding||0});return zGi.default.createElement("ink-box",{ref:t,style:a},r)});dGr.displayName="Box";dGr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};l4.default=dGr});var IGr=H(xUe=>{"use strict";var pGr=xUe&&xUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xUe,"__esModule",{value:!0});var fIc=pGr(sC()),sDe=pGr(VK()),qGi=pGr(qxr()),fGr=({color:e,backgroundColor:t,dimColor:r,bold:n,italic:a,underline:o,strikethrough:l,inverse:A,wrap:f,children:I})=>{if(I==null)return null;let C=b=>(r&&(b=sDe.default.dim(b)),e&&(b=qGi.default(b,e,"foreground")),t&&(b=qGi.default(b,t,"background")),n&&(b=sDe.default.bold(b)),a&&(b=sDe.default.italic(b)),o&&(b=sDe.default.underline(b)),l&&(b=sDe.default.strikethrough(b)),A&&(b=sDe.default.inverse(b)),b);return fIc.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:C},I)};fGr.displayName="Text";fGr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};xUe.default=fGr});var rFi=H(u4=>{"use strict";var IIc=u4&&u4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hIc=u4&&u4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mIc=u4&&u4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&IIc(t,e,r);return hIc(t,e),t},GUe=u4&&u4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u4,"__esModule",{value:!0});var $Gi=mIc(wt("fs")),GR=GUe(sC()),eFi=GUe(Fpt()),CIc=GUe(fhr()),Qee=GUe(C1t()),Ej=GUe(IGr()),tFi=new eFi.default({cwd:process.cwd(),internals:eFi.default.nodeInternals()}),_Ic=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?tFi.parseLine(t[0]):void 0,n,a=0;if(r?.file&&r?.line&&$Gi.existsSync(r.file)){let o=$Gi.readFileSync(r.file,"utf8");if(n=CIc.default(o,r.line),n)for(let{line:l}of n)a=Math.max(a,String(l).length)}return GR.default.createElement(Qee.default,{flexDirection:"column",padding:1},GR.default.createElement(Qee.default,null,GR.default.createElement(Ej.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),GR.default.createElement(Ej.default,null," ",e.message)),r&&GR.default.createElement(Qee.default,{marginTop:1},GR.default.createElement(Ej.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&n&&GR.default.createElement(Qee.default,{marginTop:1,flexDirection:"column"},n.map(({line:o,value:l})=>GR.default.createElement(Qee.default,{key:o},GR.default.createElement(Qee.default,{width:a+1},GR.default.createElement(Ej.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),GR.default.createElement(Ej.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+l)))),e.stack&&GR.default.createElement(Qee.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let l=tFi.parseLine(o);return l?GR.default.createElement(Qee.default,{key:o},GR.default.createElement(Ej.default,{dimColor:!0},"- "),GR.default.createElement(Ej.default,{dimColor:!0,bold:!0},l.function),GR.default.createElement(Ej.default,{dimColor:!0,color:"gray"}," ","(",l.file,":",l.line,":",l.column,")")):GR.default.createElement(Qee.default,{key:o},GR.default.createElement(Ej.default,{dimColor:!0},"- "),GR.default.createElement(Ej.default,{dimColor:!0,bold:!0},o))})))};u4.default=_Ic});var iFi=H(g4=>{"use strict";var yIc=g4&&g4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bIc=g4&&g4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),EIc=g4&&g4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&yIc(t,e,r);return bIc(t,e),t},mCe=g4&&g4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g4,"__esModule",{value:!0});var hCe=EIc(sC()),nFi=mCe(lBe()),SIc=mCe(sGr()),vIc=mCe(aGr()),BIc=mCe(lGr()),wIc=mCe(gGr()),TIc=mCe(m1t()),RIc=mCe(rFi()),NIc=" ",DIc="\x1B[Z",kIc="\x1B",_1t=class extends hCe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===kIc&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===NIc&&this.focusNext(),t===DIc&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let n=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||n}})},this.focusPrevious=()=>{this.setState(t=>{var r;let n=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||n}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(n=>{let a=n.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...n.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(n=>n.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(n=>n.id!==t?n:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n+1;a{var r;let n=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=n-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return hCe.default.createElement(SIc.default.Provider,{value:{exit:this.handleExit}},hCe.default.createElement(vIc.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},hCe.default.createElement(BIc.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},hCe.default.createElement(wIc.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},hCe.default.createElement(TIc.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?hCe.default.createElement(RIc.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){nFi.default.hide(this.props.stdout)}componentWillUnmount(){nFi.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};g4.default=_1t;_1t.displayName="InternalApp"});var aFi=H(A4=>{"use strict";var xIc=A4&&A4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),GIc=A4&&A4.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),FIc=A4&&A4.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&xIc(t,e,r);return GIc(t,e),t},d4=A4&&A4.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A4,"__esModule",{value:!0});var ZIc=d4(sC()),sFi=AIr(),LIc=d4(_Gi()),VIc=d4(vMe()),PIc=d4(hIr()),WIc=d4(mIr()),hGr=d4(GGi()),OIc=d4(QGi()),MIc=d4(mpt()),HIc=d4(rhr()),YIc=FIc(zxr()),QIc=d4(nGr()),XIc=d4(iFi()),oDe=process.env.CI==="false"?!1:PIc.default,oFi=()=>{},mGr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:n,staticOutput:a}=OIc.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(oDe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),n>=this.options.stdout.rows){this.options.stdout.write(VIc.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},WIc.default(this),this.options=t,this.rootNode=YIc.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:sFi.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=LIc.default.create(t.stdout),this.throttledLog=t.debug?this.log:sFi.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=hGr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=MIc.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),oDe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=ZIc.default.createElement(XIc.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);hGr.default.updateContainer(r,this.container,null,oFi)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(oDe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(oDe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),oDe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,hGr.default.updateContainer(null,this.container,null,oFi),QIc.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!oDe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=HIc.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};A4.default=mGr});var lFi=H(FUe=>{"use strict";var cFi=FUe&&FUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FUe,"__esModule",{value:!0});var JIc=cFi(aFi()),y1t=cFi(nGr()),UIc=wt("stream"),KIc=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},jIc(t)),n=zIc(r.stdout,()=>new JIc.default(r));return n.render(e),{rerender:n.render,unmount:()=>n.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>y1t.default.delete(r.stdout),clear:n.clear}};FUe.default=KIc;var jIc=(e={})=>e instanceof UIc.Stream?{stdout:e,stdin:process.stdin}:e,zIc=(e,t)=>{let r;return y1t.default.has(e)?r=y1t.default.get(e):(r=t(),y1t.default.set(e,r)),r}});var gFi=H(Xee=>{"use strict";var qIc=Xee&&Xee.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Ic=Xee&&Xee.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ehc=Xee&&Xee.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&qIc(t,e,r);return $Ic(t,e),t};Object.defineProperty(Xee,"__esModule",{value:!0});var ZUe=ehc(sC()),uFi=e=>{let{items:t,children:r,style:n}=e,[a,o]=ZUe.useState(0),l=ZUe.useMemo(()=>t.slice(a),[t,a]);ZUe.useLayoutEffect(()=>{o(t.length)},[t.length]);let A=l.map((I,C)=>r(I,a+C)),f=ZUe.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},n),[n]);return ZUe.default.createElement("ink-box",{internal_static:!0,style:f},A)};uFi.displayName="Static";Xee.default=uFi});var dFi=H(LUe=>{"use strict";var thc=LUe&&LUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LUe,"__esModule",{value:!0});var rhc=thc(sC()),AFi=({children:e,transform:t})=>e==null?null:rhc.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);AFi.displayName="Transform";LUe.default=AFi});var fFi=H(VUe=>{"use strict";var nhc=VUe&&VUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VUe,"__esModule",{value:!0});var ihc=nhc(sC()),pFi=({count:e=1})=>ihc.default.createElement("ink-text",null,` -`.repeat(e));pFi.displayName="Newline";VUe.default=pFi});var mFi=H(PUe=>{"use strict";var IFi=PUe&&PUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PUe,"__esModule",{value:!0});var shc=IFi(sC()),ohc=IFi(C1t()),hFi=()=>shc.default.createElement(ohc.default,{flexGrow:1});hFi.displayName="Spacer";PUe.default=hFi});var b1t=H(WUe=>{"use strict";var ahc=WUe&&WUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WUe,"__esModule",{value:!0});var chc=sC(),lhc=ahc(aGr()),uhc=()=>chc.useContext(lhc.default);WUe.default=uhc});var _Fi=H(OUe=>{"use strict";var ghc=OUe&&OUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OUe,"__esModule",{value:!0});var CFi=sC(),Ahc=ghc(b1t()),dhc=(e,t={})=>{let{stdin:r,setRawMode:n,internal_exitOnCtrlC:a}=Ahc.default();CFi.useEffect(()=>{if(t.isActive!==!1)return n(!0),()=>{n(!1)}},[t.isActive,n]),CFi.useEffect(()=>{if(t.isActive===!1)return;let o=l=>{let A=String(l),f={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!f.return&&(A=String.fromCharCode(A.charCodeAt(0)+97-1),f.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),f.meta=!0);let I=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(I||C)&&(f.shift=!0),f.tab&&A==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(A=""),(!(A==="c"&&f.ctrl)||!a)&&e(A,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};OUe.default=dhc});var yFi=H(MUe=>{"use strict";var phc=MUe&&MUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MUe,"__esModule",{value:!0});var fhc=sC(),Ihc=phc(sGr()),hhc=()=>fhc.useContext(Ihc.default);MUe.default=hhc});var bFi=H(HUe=>{"use strict";var mhc=HUe&&HUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HUe,"__esModule",{value:!0});var Chc=sC(),_hc=mhc(lGr()),yhc=()=>Chc.useContext(_hc.default);HUe.default=yhc});var EFi=H(YUe=>{"use strict";var bhc=YUe&&YUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YUe,"__esModule",{value:!0});var Ehc=sC(),Shc=bhc(gGr()),vhc=()=>Ehc.useContext(Shc.default);YUe.default=vhc});var vFi=H(XUe=>{"use strict";var SFi=XUe&&XUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XUe,"__esModule",{value:!0});var QUe=sC(),Bhc=SFi(m1t()),whc=SFi(b1t()),Thc=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:n,setRawMode:a}=whc.default(),{activeId:o,add:l,remove:A,activate:f,deactivate:I,focus:C}=QUe.useContext(Bhc.default),b=QUe.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return QUe.useEffect(()=>(l(b,{autoFocus:t}),()=>{A(b)}),[b,t]),QUe.useEffect(()=>{e?f(b):I(b)},[e,b]),QUe.useEffect(()=>{if(!(!n||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!b&&o===b,focus:C}};XUe.default=Thc});var BFi=H(JUe=>{"use strict";var Rhc=JUe&&JUe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JUe,"__esModule",{value:!0});var Nhc=sC(),Dhc=Rhc(m1t()),khc=()=>{let e=Nhc.useContext(Dhc.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};JUe.default=khc});var wFi=H(CGr=>{"use strict";Object.defineProperty(CGr,"__esModule",{value:!0});CGr.default=e=>{var t,r,n,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(n=e.yogaNode)===null||n===void 0?void 0:n.getComputedHeight())!==null&&a!==void 0?a:0}}});var lH=H(Jk=>{"use strict";Object.defineProperty(Jk,"__esModule",{value:!0});var xhc=lFi();Object.defineProperty(Jk,"render",{enumerable:!0,get:function(){return xhc.default}});var Ghc=C1t();Object.defineProperty(Jk,"Box",{enumerable:!0,get:function(){return Ghc.default}});var Fhc=IGr();Object.defineProperty(Jk,"Text",{enumerable:!0,get:function(){return Fhc.default}});var Zhc=gFi();Object.defineProperty(Jk,"Static",{enumerable:!0,get:function(){return Zhc.default}});var Lhc=dFi();Object.defineProperty(Jk,"Transform",{enumerable:!0,get:function(){return Lhc.default}});var Vhc=fFi();Object.defineProperty(Jk,"Newline",{enumerable:!0,get:function(){return Vhc.default}});var Phc=mFi();Object.defineProperty(Jk,"Spacer",{enumerable:!0,get:function(){return Phc.default}});var Whc=_Fi();Object.defineProperty(Jk,"useInput",{enumerable:!0,get:function(){return Whc.default}});var Ohc=yFi();Object.defineProperty(Jk,"useApp",{enumerable:!0,get:function(){return Ohc.default}});var Mhc=b1t();Object.defineProperty(Jk,"useStdin",{enumerable:!0,get:function(){return Mhc.default}});var Hhc=bFi();Object.defineProperty(Jk,"useStdout",{enumerable:!0,get:function(){return Hhc.default}});var Yhc=EFi();Object.defineProperty(Jk,"useStderr",{enumerable:!0,get:function(){return Yhc.default}});var Qhc=vFi();Object.defineProperty(Jk,"useFocus",{enumerable:!0,get:function(){return Qhc.default}});var Xhc=BFi();Object.defineProperty(Jk,"useFocusManager",{enumerable:!0,get:function(){return Xhc.default}});var Jhc=wFi();Object.defineProperty(Jk,"measureElement",{enumerable:!0,get:function(){return Jhc.default}})});var v1t=H(S1t=>{"use strict";Object.defineProperty(S1t,"__esModule",{value:!0});S1t.Gem=void 0;var Uhc=(Pa(),vi(Va)),Khc=lH(),E1t=Uhc.__importStar(sC());S1t.Gem=(0,E1t.memo)(({active:e})=>{let t=(0,E1t.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,E1t.useMemo)(()=>e?"green":"yellow",[e]);return E1t.default.createElement(Khc.Text,{color:r},t)})});var aDe=H(_Gr=>{"use strict";Object.defineProperty(_Gr,"__esModule",{value:!0});_Gr.useKeypress=zhc;var jhc=lH(),TFi=sC();function zhc({active:e},t,r){let{stdin:n}=(0,jhc.useStdin)(),a=(0,TFi.useCallback)((o,l)=>t(o,l),r);(0,TFi.useEffect)(()=>{if(!(!e||!n))return n.on("keypress",a),()=>{n.off("keypress",a)}},[e,a,n])}});var yGr=H(cDe=>{"use strict";Object.defineProperty(cDe,"__esModule",{value:!0});cDe.useFocusRequest=cDe.FocusRequest=void 0;var qhc=aDe(),B1t;(function(e){e.BEFORE="before",e.AFTER="after"})(B1t||(cDe.FocusRequest=B1t={}));var $hc=function({active:e},t,r){(0,qhc.useKeypress)({active:e},(n,a)=>{a.name==="tab"&&(a.shift?t(B1t.BEFORE):t(B1t.AFTER))},r)};cDe.useFocusRequest=$hc});var T1t=H(w1t=>{"use strict";Object.defineProperty(w1t,"__esModule",{value:!0});w1t.useListInput=void 0;var emc=aDe(),tmc=function(e,t,{active:r,minus:n,plus:a,set:o,loop:l=!0}){(0,emc.useKeypress)({active:r},(A,f)=>{let I=t.indexOf(e);switch(f.name){case n:{let C=I-1;if(l){o(t[(t.length+C)%t.length]);return}if(C<0)return;o(t[C])}break;case a:{let C=I+1;if(l){o(t[C%t.length]);return}if(C>=t.length)return;o(t[C])}break}},[t,e,a,o,l])};w1t.useListInput=tmc});var N1t=H(R1t=>{"use strict";Object.defineProperty(R1t,"__esModule",{value:!0});R1t.ScrollableItems=void 0;var rmc=(Pa(),vi(Va)),lDe=lH(),p4=rmc.__importStar(sC()),nmc=yGr(),imc=T1t(),smc=({active:e=!0,children:t=[],radius:r=10,size:n=1,loop:a=!0,onFocusRequest:o,willReachEnd:l})=>{let A=Q=>{if(Q.key===null)throw new Error("Expected all children to have a key");return Q.key},f=p4.default.Children.map(t,Q=>A(Q)),I=f[0],[C,b]=(0,p4.useState)(I),E=f.indexOf(C);(0,p4.useEffect)(()=>{f.includes(C)||b(I)},[t]),(0,p4.useEffect)(()=>{l&&E>=f.length-2&&l()},[E]),(0,nmc.useFocusRequest)({active:e&&!!o},Q=>{o?.(Q)},[o]),(0,imc.useListInput)(C,f,{active:e,minus:"up",plus:"down",set:b,loop:a});let N=E-r,B=E+r;B>f.length&&(N-=B-f.length,B=f.length),N<0&&(B+=-N,N=0),B>=f.length&&(B=f.length-1);let F=[];for(let Q=N;Q<=B;++Q){let X=f[Q],ae=e&&X===C;F.push(p4.default.createElement(lDe.Box,{key:X,height:n},p4.default.createElement(lDe.Box,{marginLeft:1,marginRight:1},p4.default.createElement(lDe.Text,null,ae?p4.default.createElement(lDe.Text,{color:"cyan",bold:!0},">"):" ")),p4.default.createElement(lDe.Box,null,p4.default.cloneElement(t[Q],{active:ae}))))}return p4.default.createElement(lDe.Box,{flexDirection:"column",width:"100%"},F)};R1t.ScrollableItems=smc});var bGr=H(CCe=>{"use strict";Object.defineProperty(CCe,"__esModule",{value:!0});CCe.Application=CCe.MinistoreContext=void 0;var omc=(Pa(),vi(Va)),amc=lH(),UUe=omc.__importStar(sC()),cmc=wt("readline");CCe.MinistoreContext=UUe.default.createContext(null);var lmc=({children:e})=>{let{stdin:t,setRawMode:r}=(0,amc.useStdin)();(0,UUe.useEffect)(()=>{r&&r(!0),t&&(0,cmc.emitKeypressEvents)(t)},[t,r]);let[n,a]=(0,UUe.useState)(new Map),o=(0,UUe.useMemo)(()=>({getAll:()=>n,get:l=>n.get(l),set:(l,A)=>a(f=>new Map([...f,[l,A]])),setAll:l=>a(A=>new Map([...A,...l]))}),[n,a]);return UUe.default.createElement(CCe.MinistoreContext.Provider,{value:o,children:e})};CCe.Application=lmc});var D1t=H(EGr=>{"use strict";Object.defineProperty(EGr,"__esModule",{value:!0});EGr.renderForm=dmc;var umc=(Pa(),vi(Va)),RFi=lH(),NFi=umc.__importDefault(sC()),gmc=bGr(),Amc=aDe();async function dmc(e,t,{stdin:r,stdout:n,stderr:a}){let o,l=f=>{let{exit:I}=(0,RFi.useApp)();(0,Amc.useKeypress)({active:!0},(C,b)=>{b.name==="return"&&(o=f,I())},[I,f])},{waitUntilExit:A}=(0,RFi.render)(NFi.default.createElement(gmc.Application,null,NFi.default.createElement(e,{...t,useSubmit:l})),{stdin:r,stdout:n,stderr:a});return await A(),o}});var DFi=H(BGr=>{"use strict";Object.defineProperty(BGr,"__esModule",{value:!0});var vj=(Pa(),vi(Va)),SGr=el(),FR=Sn(),Sj=ro(),pmc=vj.__importStar(A1t()),k1t=($c(),vi(rg)),vGr=vj.__importDefault(UC()),ZG=vj.__importStar(IUe()),KUe=class extends SGr.BaseCommand{constructor(){super(...arguments),this.interactive=k1t.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){pmc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>vj.__importStar(v1t())),{ScrollableItems:r}=await Promise.resolve().then(()=>vj.__importStar(N1t())),{FocusRequest:n}=await Promise.resolve().then(()=>vj.__importStar(yGr())),{useListInput:a}=await Promise.resolve().then(()=>vj.__importStar(T1t())),{renderForm:o}=await Promise.resolve().then(()=>vj.__importStar(D1t())),{Box:l,Text:A}=await Promise.resolve().then(()=>vj.__importStar(lH())),{default:f,useCallback:I,useState:C}=await Promise.resolve().then(()=>vj.__importStar(sC())),b=await FR.Configuration.find(this.context.cwd,this.context.plugins),{project:E,workspace:N}=await FR.Project.find(b,this.context.cwd);if(!N)throw new SGr.WorkspaceRequiredError(E.cwd,this.context.cwd);await E.restoreInstallState();let B=await ZG.openVersionFile(E);if(B===null||B.releaseRoots.size===0)return 0;if(B.root===null)throw new k1t.UsageError("This command can only be run on Git repositories");let F=()=>f.createElement(l,{flexDirection:"row",paddingBottom:1},f.createElement(l,{flexDirection:"column",width:60},f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(l,null,f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},""),"/",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(l,{flexDirection:"column"},f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(l,{marginLeft:1},f.createElement(A,null,"Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to abort.")))),Q=({workspace:ue,active:de,decision:be,setDecision:Se})=>{let De=ue.manifest.raw.stableVersion??ue.manifest.version;if(De===null)throw new Error(`Assertion failed: The version should have been set (${FR.structUtils.prettyLocator(b,ue.anchoredLocator)})`);if(vGr.default.prerelease(De)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${De})`);let k=[ZG.Decision.UNDECIDED,ZG.Decision.DECLINE,ZG.Decision.PATCH,ZG.Decision.MINOR,ZG.Decision.MAJOR];a(be,k,{active:de,minus:"left",plus:"right",set:Se});let et=be===ZG.Decision.UNDECIDED?f.createElement(A,{color:"yellow"},De):be===ZG.Decision.DECLINE?f.createElement(A,{color:"green"},De):f.createElement(A,null,f.createElement(A,{color:"magenta"},De)," \u2192 ",f.createElement(A,{color:"green"},vGr.default.valid(be)?be:vGr.default.inc(De,be)));return f.createElement(l,{flexDirection:"column"},f.createElement(l,null,f.createElement(A,null,FR.structUtils.prettyLocator(b,ue.anchoredLocator)," - ",et)),f.createElement(l,null,k.map(ct=>{let Me=ct===be;return f.createElement(l,{key:ct,paddingLeft:2},f.createElement(A,null,f.createElement(t,{active:Me})," ",ct))})))},X=ue=>{let de=new Set(B.releaseRoots),be=new Map([...ue].filter(([Se])=>de.has(Se)));for(;;){let Se=ZG.getUndecidedDependentWorkspaces({project:B.project,releases:be}),De=!1;if(Se.length>0){for(let[k]of Se)if(!de.has(k)){de.add(k),De=!0;let et=ue.get(k);typeof et<"u"&&be.set(k,et)}}if(!De)break}return{relevantWorkspaces:de,relevantReleases:be}},ae=()=>{let[ue,de]=C(()=>new Map(B.releases)),be=I((Se,De)=>{let k=new Map(ue);De!==ZG.Decision.UNDECIDED?k.set(Se,De):k.delete(Se);let{relevantReleases:et}=X(k);de(et)},[ue,de]);return[ue,be]},ne=({workspaces:ue,releases:de})=>{let be=[];be.push(`${ue.size} total`);let Se=0,De=0;for(let k of ue){let et=de.get(k);typeof et>"u"?De+=1:et!==ZG.Decision.DECLINE&&(Se+=1)}return be.push(`${Se} release${Se===1?"":"s"}`),be.push(`${De} remaining`),f.createElement(A,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:ue})=>{let[de,be]=ae();ue(de);let{relevantWorkspaces:Se}=X(de),De=new Set([...Se].filter(Me=>!B.releaseRoots.has(Me))),[k,et]=C(0),ct=I(Me=>{switch(Me){case n.BEFORE:et(k-1);break;case n.AFTER:et(k+1);break}},[k,et]);return f.createElement(l,{flexDirection:"column"},f.createElement(F,null),f.createElement(l,null,f.createElement(A,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(l,{flexDirection:"column",marginTop:1,paddingLeft:2},[...B.changedFiles].map(Me=>f.createElement(l,{key:Me},f.createElement(A,null,f.createElement(A,{color:"grey"},Sj.npath.fromPortablePath(B.root)),Sj.npath.sep,Sj.npath.relative(Sj.npath.fromPortablePath(B.root),Sj.npath.fromPortablePath(Me)))))),B.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),De.size>3?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:B.releaseRoots,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===0,radius:1,size:2,onFocusRequest:ct},[...B.releaseRoots].map(Me=>f.createElement(Q,{key:Me.cwd,workspace:Me,decision:de.get(Me)||ZG.Decision.UNDECIDED,setDecision:je=>be(Me,je)}))))),De.size>0?f.createElement(f.Fragment,null,f.createElement(l,{marginTop:1},f.createElement(A,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(l,null,f.createElement(A,null,"(Press ",f.createElement(A,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),De.size>5?f.createElement(l,{marginTop:1},f.createElement(ne,{workspaces:De,releases:de})):null,f.createElement(l,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:k%2===1,radius:2,size:2,onFocusRequest:ct},[...De].map(Me=>f.createElement(Q,{key:Me.cwd,workspace:Me,decision:de.get(Me)||ZG.Decision.UNDECIDED,setDecision:je=>be(Me,je)}))))):null)},{versionFile:B},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;B.releases.clear();for(let[ue,de]of fe)B.releases.set(ue,de);await B.saveAll()}async executeStandard(){let t=await FR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await FR.Project.find(t,this.context.cwd);if(!n)throw new SGr.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await FR.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let l=await ZG.openVersionFile(r);if(l===null||l.releaseRoots.size===0)return;if(l.root===null)throw new k1t.UsageError("This command can only be run on Git repositories");if(o.reportInfo(FR.MessageName.UNNAMED,`Your PR was started right after ${FR.formatUtils.pretty(t,l.baseHash.slice(0,7),"yellow")} ${FR.formatUtils.pretty(t,l.baseTitle,"magenta")}`),l.changedFiles.size>0){o.reportInfo(FR.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let b of l.changedFiles)o.reportInfo(null,`${FR.formatUtils.pretty(t,Sj.npath.fromPortablePath(l.root),"gray")}${Sj.npath.sep}${Sj.npath.relative(Sj.npath.fromPortablePath(l.root),Sj.npath.fromPortablePath(b))}`)}let A=!1,f=!1,I=ZG.getUndecidedWorkspaces(l);if(I.size>0){A||o.reportSeparator();for(let b of I)o.reportError(FR.MessageName.UNNAMED,`${FR.structUtils.prettyLocator(t,b.anchoredLocator)} has been modified but doesn't have a release strategy attached`);A=!0}let C=ZG.getUndecidedDependentWorkspaces(l);for(let[b,E]of C)f||o.reportSeparator(),o.reportError(FR.MessageName.UNNAMED,`${FR.structUtils.prettyLocator(t,b.anchoredLocator)} doesn't have a release strategy attached, but depends on ${FR.structUtils.prettyWorkspace(t,E)} which is planned for release.`),f=!0;(A||f)&&(o.reportSeparator(),o.reportInfo(FR.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(FR.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};KUe.paths=[["version","check"]];KUe.usage=k1t.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});BGr.default=KUe});var FFi=H(TGr=>{"use strict";Object.defineProperty(TGr,"__esModule",{value:!0});var GFi=(Pa(),vi(Va)),kFi=el(),xFi=Sn(),yCe=($c(),vi(rg)),wGr=GFi.__importDefault(UC()),_Ce=GFi.__importStar(IUe()),jUe=class extends kFi.BaseCommand{constructor(){super(...arguments),this.deferred=yCe.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=yCe.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=yCe.Option.String()}async execute(){let t=await xFi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await xFi.Project.find(t,this.context.cwd);if(!n)throw new kFi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=wGr.default.valid(this.strategy),l=this.strategy===_Ce.Decision.DECLINE,A;if(o)if(n.manifest.version!==null){let I=_Ce.suggestStrategy(n.manifest.version,this.strategy);I!==null?A=I:A=this.strategy}else A=this.strategy;else{let I=n.manifest.version;if(!l){if(I===null)throw new yCe.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof I!="string"||!wGr.default.valid(I))throw new yCe.UsageError(`Can't bump the version (${I}) if it's not valid semver`)}A=_Ce.validateReleaseDecision(this.strategy)}if(!a){let C=(await _Ce.resolveVersionFiles(r)).get(n);if(typeof C<"u"&&A!==_Ce.Decision.DECLINE){let b=_Ce.applyStrategy(n.manifest.version,A);if(wGr.default.lt(b,C))throw new yCe.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${C})`)}}let f=await _Ce.openVersionFile(r,{allowEmpty:!0});return f.releases.set(n,A),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};jUe.paths=[["version"]];jUe.usage=yCe.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});TGr.default=jUe});var RGr=H(f4=>{"use strict";Object.defineProperty(f4,"__esModule",{value:!0});f4.versionUtils=f4.VersionCommand=f4.VersionCheckCommand=f4.VersionApplyCommand=void 0;var x1t=(Pa(),vi(Va)),ZFi=Sn(),LFi=x1t.__importDefault($xi());f4.VersionApplyCommand=LFi.default;var VFi=x1t.__importDefault(DFi());f4.VersionCheckCommand=VFi.default;var PFi=x1t.__importDefault(FFi());f4.VersionCommand=PFi.default;var fmc=x1t.__importStar(IUe());f4.versionUtils=fmc;var Imc={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:ZFi.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:ZFi.SettingsType.BOOLEAN,default:!1}},commands:[LFi.default,VFi.default,PFi.default]};f4.default=Imc});var zZi=H((B9u,jZi)=>{"use strict";var UZi=wt("path"),hCc=Jjt(),mCc=Kjt();function KZi(e,t){let r=e.options.env||process.env,n=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let l;try{l=hCc.sync(e.command,{path:r[mCc({env:r})],pathExt:t?UZi.delimiter:void 0})}catch{}finally{o&&process.chdir(n)}return l&&(l=UZi.resolve(a?e.options.cwd:"",l)),l}function CCc(e){return KZi(e)||KZi(e,!0)}jZi.exports=CCc});var qZi=H((w9u,eFr)=>{"use strict";var $Gr=/([()\][%!^"`<>&|;, *?])/g;function _Cc(e){return e=e.replace($Gr,"^$1"),e}function yCc(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace($Gr,"^$1"),t&&(e=e.replace($Gr,"^$1")),e}eFr.exports.command=_Cc;eFr.exports.argument=yCc});var eLi=H((T9u,$Zi)=>{"use strict";var tFr=wt("fs"),bCc=qjt();function ECc(e){let r=Buffer.alloc(150),n;try{n=tFr.openSync(e,"r"),tFr.readSync(n,r,0,150,0),tFr.closeSync(n)}catch{}return bCc(r.toString())}$Zi.exports=ECc});var iLi=H((R9u,nLi)=>{"use strict";var SCc=wt("path"),tLi=zZi(),rLi=qZi(),vCc=eLi(),BCc=process.platform==="win32",wCc=/\.(?:com|exe)$/i,TCc=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function RCc(e){e.file=tLi(e);let t=e.file&&vCc(e.file);return t?(e.args.unshift(e.file),e.command=t,tLi(e)):e.file}function NCc(e){if(!BCc)return e;let t=RCc(e),r=!wCc.test(t);if(e.options.forceShell||r){let n=TCc.test(t);e.command=SCc.normalize(e.command),e.command=rLi.command(e.command),e.args=e.args.map(o=>rLi.argument(o,n));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function DCc(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:NCc(n)}nLi.exports=DCc});var aLi=H((N9u,oLi)=>{"use strict";var rFr=process.platform==="win32";function nFr(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function kCc(e,t){if(!rFr)return;let r=e.emit;e.emit=function(n,a){if(n==="exit"){let o=sLi(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function sLi(e,t){return rFr&&e===1&&!t.file?nFr(t.original,"spawn"):null}function xCc(e,t){return rFr&&e===1&&!t.file?nFr(t.original,"spawnSync"):null}oLi.exports={hookChildProcess:kCc,verifyENOENT:sLi,verifyENOENTSync:xCc,notFoundError:nFr}});var uLi=H((D9u,ADe)=>{"use strict";var cLi=wt("child_process"),iFr=iLi(),sFr=aLi();function lLi(e,t,r){let n=iFr(e,t,r),a=cLi.spawn(n.command,n.args,n.options);return sFr.hookChildProcess(a,n),a}function GCc(e,t,r){let n=iFr(e,t,r),a=cLi.spawnSync(n.command,n.args,n.options);return a.error=a.error||sFr.verifyENOENTSync(a.status,n),a}ADe.exports=lLi;ADe.exports.spawn=lLi;ADe.exports.sync=GCc;ADe.exports._parse=iFr;ADe.exports._enoent=sFr});var oFr=H((k9u,gLi)=>{"use strict";gLi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var FCc=oFr(),ECe=Object.prototype.toString;function lFr(e){return ECe.call(e)==="[object Array]"}function aFr(e){return typeof e>"u"}function ZCc(e){return e!==null&&!aFr(e)&&e.constructor!==null&&!aFr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function LCc(e){return ECe.call(e)==="[object ArrayBuffer]"}function VCc(e){return typeof FormData<"u"&&e instanceof FormData}function PCc(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function WCc(e){return typeof e=="string"}function OCc(e){return typeof e=="number"}function ALi(e){return e!==null&&typeof e=="object"}function V1t(e){if(ECe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function MCc(e){return ECe.call(e)==="[object Date]"}function HCc(e){return ECe.call(e)==="[object File]"}function YCc(e){return ECe.call(e)==="[object Blob]"}function dLi(e){return ECe.call(e)==="[object Function]"}function QCc(e){return ALi(e)&&dLi(e.pipe)}function XCc(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function JCc(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function UCc(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function uFr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),lFr(e))for(var r=0,n=e.length;r{"use strict";var dDe=$Z();function fLi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}ILi.exports=function(t,r,n){if(!r)return t;var a;if(n)a=n(r);else if(dDe.isURLSearchParams(r))a=r.toString();else{var o=[];dDe.forEach(r,function(f,I){f===null||typeof f>"u"||(dDe.isArray(f)?I=I+"[]":f=[f],dDe.forEach(f,function(b){dDe.isDate(b)?b=b.toISOString():dDe.isObject(b)&&(b=JSON.stringify(b)),o.push(fLi(I)+"="+fLi(b))}))}),a=o.join("&")}if(a){var l=t.indexOf("#");l!==-1&&(t=t.slice(0,l)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var mLi=H((F9u,hLi)=>{"use strict";var zCc=$Z();function W1t(){this.handlers=[]}W1t.prototype.use=function(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1};W1t.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};W1t.prototype.forEach=function(t){zCc.forEach(this.handlers,function(n){n!==null&&t(n)})};hLi.exports=W1t});var _Li=H((Z9u,CLi)=>{"use strict";var qCc=$Z();CLi.exports=function(t,r){qCc.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var O1t=H((L9u,yLi)=>{"use strict";yLi.exports=function(t,r,n,a,o){return t.config=r,n&&(t.code=n),t.request=a,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}});var M1t=H((V9u,bLi)=>{"use strict";var $Cc=O1t();bLi.exports=function(t,r,n,a,o){var l=new Error(t);return $Cc(l,r,n,a,o)}});var gFr=H((P9u,ELi)=>{"use strict";var e_c=M1t();ELi.exports=function(t,r,n){var a=n.config.validateStatus;!n.status||!a||a(n.status)?t(n):r(e_c("Request failed with status code "+n.status,n.config,null,n.request,n))}});var vLi=H((W9u,SLi)=>{"use strict";var H1t=$Z();SLi.exports=H1t.isStandardBrowserEnv()?function(){return{write:function(r,n,a,o,l,A){var f=[];f.push(r+"="+encodeURIComponent(n)),H1t.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),H1t.isString(o)&&f.push("path="+o),H1t.isString(l)&&f.push("domain="+l),A===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var wLi=H((O9u,BLi)=>{"use strict";BLi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var RLi=H((M9u,TLi)=>{"use strict";TLi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var AFr=H((H9u,NLi)=>{"use strict";var t_c=wLi(),r_c=RLi();NLi.exports=function(t,r){return t&&!t_c(r)?r_c(t,r):r}});var kLi=H((Y9u,DLi)=>{"use strict";var dFr=$Z(),n_c=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];DLi.exports=function(t){var r={},n,a,o;return t&&dFr.forEach(t.split(` -`),function(A){if(o=A.indexOf(":"),n=dFr.trim(A.substr(0,o)).toLowerCase(),a=dFr.trim(A.substr(o+1)),n){if(r[n]&&n_c.indexOf(n)>=0)return;n==="set-cookie"?r[n]=(r[n]?r[n]:[]).concat([a]):r[n]=r[n]?r[n]+", "+a:a}}),r}});var FLi=H((Q9u,GLi)=>{"use strict";var xLi=$Z();GLi.exports=xLi.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function a(o){var l=o;return t&&(r.setAttribute("href",l),l=r.href),r.setAttribute("href",l),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=a(window.location.href),function(l){var A=xLi.isString(l)?a(l):l;return A.protocol===n.protocol&&A.host===n.host}}():function(){return function(){return!0}}()});var LLi=H((X9u,ZLi)=>{"use strict";var Y1t=$Z(),i_c=gFr(),s_c=vLi(),o_c=P1t(),a_c=AFr(),c_c=kLi(),l_c=FLi(),pFr=M1t();ZLi.exports=function(t){return new Promise(function(n,a){var o=t.data,l=t.headers,A=t.responseType;Y1t.isFormData(o)&&delete l["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var I=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";l.Authorization="Basic "+btoa(I+":"+C)}var b=a_c(t.baseURL,t.url);f.open(t.method.toUpperCase(),o_c(b,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function E(){if(f){var B="getAllResponseHeaders"in f?c_c(f.getAllResponseHeaders()):null,F=!A||A==="text"||A==="json"?f.responseText:f.response,Q={data:F,status:f.status,statusText:f.statusText,headers:B,config:t,request:f};i_c(n,a,Q),f=null}}if("onloadend"in f?f.onloadend=E:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(E)},f.onabort=function(){f&&(a(pFr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(pFr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var F="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),a(pFr(F,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},Y1t.isStandardBrowserEnv()){var N=(t.withCredentials||l_c(b))&&t.xsrfCookieName?s_c.read(t.xsrfCookieName):void 0;N&&(l[t.xsrfHeaderName]=N)}"setRequestHeader"in f&&Y1t.forEach(l,function(F,Q){typeof o>"u"&&Q.toLowerCase()==="content-type"?delete l[Q]:f.setRequestHeader(Q,F)}),Y1t.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),A&&A!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(F){f&&(f.abort(),a(F),f=null)}),o||(o=null),f.send(o)})}});var PLi=H((J9u,VLi)=>{var $Ue;VLi.exports=function(){if(!$Ue){try{$Ue=wt("debug")("follow-redirects")}catch{}typeof $Ue!="function"&&($Ue=function(){})}$Ue.apply(null,arguments)}});var wFr=H((U9u,BFr)=>{var tKe=wt("url"),eKe=tKe.URL,u_c=wt("http"),g_c=wt("https"),CFr=wt("stream").Writable,_Fr=wt("assert"),WLi=PLi();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=vCe(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var yFr=!1;try{_Fr(new eKe(""))}catch(e){yFr=e.code==="ERR_INVALID_URL"}var A_c=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],bFr=["abort","aborted","connect","error","socket","timeout"],EFr=Object.create(null);bFr.forEach(function(e){EFr[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var IFr=rKe("ERR_INVALID_URL","Invalid URL",TypeError),hFr=rKe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),d_c=rKe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",hFr),p_c=rKe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),f_c=rKe("ERR_STREAM_WRITE_AFTER_END","write after end"),I_c=CFr.prototype.destroy||MLi;function BV(e,t){CFr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(a){r.emit("error",a instanceof hFr?a:new hFr({cause:a}))}},this._performRequest()}BV.prototype=Object.create(CFr.prototype);BV.prototype.abort=function(){vFr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};BV.prototype.destroy=function(e){return vFr(this._currentRequest,e),I_c.call(this,e),this};BV.prototype.write=function(e,t,r){if(this._ending)throw new f_c;if(!SCe(e)&&!C_c(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(vCe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new p_c),this.abort())};BV.prototype.end=function(e,t,r){if(vCe(e)?(r=e,e=t=null):vCe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,a=this._currentRequest;this.write(e,t,function(){n._ended=!0,a.end(null,null,r)}),this._ending=!0}};BV.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};BV.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};BV.prototype.setTimeout=function(e,t){var r=this;function n(l){l.setTimeout(e),l.removeListener("timeout",l.destroy),l.addListener("timeout",l.destroy)}function a(l){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),n(l)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",n),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){BV.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(BV.prototype,e,{get:function(){return this._currentRequest[e]}})});BV.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};BV.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var a of bFr)n.on(a,EFr[a]);if(this._currentUrl=/^\//.test(this._options.path)?tKe.format(this._options):this._options.path,this._isRedirect){var o=0,l=this,A=this._requestBodyBuffers;(function f(I){if(n===l._currentRequest)if(I)l.emit("error",I);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(vFr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new d_c;var n,a=this._options.beforeRedirect;a&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],fFr(/^content-/i,this._options.headers));var l=fFr(/^host$/i,this._options.headers),A=SFr(this._currentUrl),f=l||A.host,I=/^\w+:/.test(r)?this._currentUrl:tKe.format(Object.assign(A,{host:f})),C=h_c(r,I);if(WLi("redirecting to",C.href),this._isRedirect=!0,mFr(C,this._options),(C.protocol!==A.protocol&&C.protocol!=="https:"||C.host!==f&&!m_c(C.host,f))&&fFr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),vCe(a)){var b={headers:e.headers,statusCode:t},E={url:I,method:o,headers:n};a(this._options,b,E),this._sanitizeOptions(this._options)}this._performRequest()};function OLi(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var a=n+":",o=r[a]=e[n],l=t[n]=Object.create(o);function A(I,C,b){return __c(I)?I=mFr(I):SCe(I)?I=mFr(SFr(I)):(b=C,C=HLi(I),I={protocol:a}),vCe(C)&&(b=C,C=null),C=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},I,C),C.nativeProtocols=r,!SCe(C.host)&&!SCe(C.hostname)&&(C.hostname="::1"),_Fr.equal(C.protocol,a,"protocol mismatch"),WLi("options",C),new BV(C,b)}function f(I,C,b){var E=l.request(I,C,b);return E.end(),E}Object.defineProperties(l,{request:{value:A,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function MLi(){}function SFr(e){var t;if(yFr)t=new eKe(e);else if(t=HLi(tKe.parse(e)),!SCe(t.protocol))throw new IFr({input:e});return t}function h_c(e,t){return yFr?new eKe(e,t):SFr(tKe.resolve(t,e))}function HLi(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new IFr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new IFr({input:e.href||e});return e}function mFr(e,t){var r=t||{};for(var n of A_c)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function fFr(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function rKe(e,t,r){function n(a){vCe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function vFr(e,t){for(var r of bFr)e.removeListener(r,EFr[r]);e.on("error",MLi),e.destroy(t)}function m_c(e,t){_Fr(SCe(e)&&SCe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function SCe(e){return typeof e=="string"||e instanceof String}function vCe(e){return typeof e=="function"}function C_c(e){return typeof e=="object"&&"length"in e}function __c(e){return eKe&&e instanceof eKe}BFr.exports=OLi({http:u_c,https:g_c});BFr.exports.wrap=OLi});var TFr=H((K9u,y_c)=>{y_c.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var KLi=H((j9u,ULi)=>{"use strict";var nKe=$Z(),YLi=gFr(),b_c=AFr(),E_c=P1t(),S_c=wt("http"),v_c=wt("https"),B_c=wFr().http,w_c=wFr().https,QLi=wt("url"),T_c=wt("zlib"),R_c=TFr(),Q1t=M1t(),RFr=O1t(),XLi=/https:?/;function JLi(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(o){o.headers.host=o.host,JLi(o,t,o.href)}}ULi.exports=function(t){return new Promise(function(n,a){var o=function(Yt){n(Yt)},l=function(Yt){a(Yt)},A=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+R_c.version,A&&!nKe.isStream(A)){if(!Buffer.isBuffer(A))if(nKe.isArrayBuffer(A))A=Buffer.from(new Uint8Array(A));else if(nKe.isString(A))A=Buffer.from(A,"utf-8");else return l(Q1t("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=A.length}var I=void 0;if(t.auth){var C=t.auth.username||"",b=t.auth.password||"";I=C+":"+b}var E=b_c(t.baseURL,t.url),N=QLi.parse(E),B=N.protocol||"http:";if(!I&&N.auth){var F=N.auth.split(":"),Q=F[0]||"",X=F[1]||"";I=Q+":"+X}I&&delete f.Authorization;var ae=XLi.test(B),ne=ae?t.httpsAgent:t.httpAgent,ce={path:E_c(N.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ne,agents:{http:t.httpAgent,https:t.httpsAgent},auth:I};t.socketPath?ce.socketPath=t.socketPath:(ce.hostname=N.hostname,ce.port=N.port);var fe=t.proxy;if(!fe&&fe!==!1){var ue=B.slice(0,-1)+"_proxy",de=process.env[ue]||process.env[ue.toUpperCase()];if(de){var be=QLi.parse(de),Se=process.env.no_proxy||process.env.NO_PROXY,De=!0;if(Se){var k=Se.split(",").map(function(Yt){return Yt.trim()});De=!k.some(function(Yt){return Yt?Yt==="*"||Yt[0]==="."&&N.hostname.substr(N.hostname.length-Yt.length)===Yt?!0:N.hostname===Yt:!1})}if(De&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var et=be.auth.split(":");fe.auth={username:et[0],password:et[1]}}}}fe&&(ce.headers.host=N.hostname+(N.port?":"+N.port:""),JLi(ce,fe,B+"//"+N.hostname+(N.port?":"+N.port:"")+ce.path));var ct,Me=ae&&(fe?XLi.test(fe.protocol):!0);t.transport?ct=t.transport:t.maxRedirects===0?ct=Me?v_c:S_c:(t.maxRedirects&&(ce.maxRedirects=t.maxRedirects),ct=Me?w_c:B_c),t.maxBodyLength>-1&&(ce.maxBodyLength=t.maxBodyLength);var je=ct.request(ce,function(Yt){if(!je.aborted){var Tr=Yt,Nr=Yt.req||je;if(Yt.statusCode!==204&&Nr.method!=="HEAD"&&t.decompress!==!1)switch(Yt.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Tr=Tr.pipe(T_c.createUnzip()),delete Yt.headers["content-encoding"];break}var er={status:Yt.statusCode,statusText:Yt.statusMessage,headers:Yt.headers,config:t,request:Nr};if(t.responseType==="stream")er.data=Tr,YLi(o,l,er);else{var vt=[],xt=0;Tr.on("data",function(qt){vt.push(qt),xt+=qt.length,t.maxContentLength>-1&&xt>t.maxContentLength&&(Tr.destroy(),l(Q1t("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Nr)))}),Tr.on("error",function(qt){je.aborted||l(RFr(qt,t,null,Nr))}),Tr.on("end",function(){var qt=Buffer.concat(vt);t.responseType!=="arraybuffer"&&(qt=qt.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&(qt=nKe.stripBOM(qt))),er.data=qt,YLi(o,l,er)})}}});if(je.on("error",function(Yt){je.aborted&&Yt.code!=="ERR_FR_TOO_MANY_REDIRECTS"||l(RFr(Yt,t,null,je))}),t.timeout){var St=parseInt(t.timeout,10);if(isNaN(St)){l(Q1t("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",je));return}je.setTimeout(St,function(){je.abort(),l(Q1t("timeout of "+St+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",je))})}t.cancelToken&&t.cancelToken.promise.then(function(Yt){je.aborted||(je.abort(),l(Yt))}),nKe.isStream(A)?A.on("error",function(Yt){l(RFr(Yt,t,null,je))}).pipe(je):je.end(A)})}});var J1t=H((z9u,qLi)=>{"use strict";var Uk=$Z(),jLi=_Li(),N_c=O1t(),D_c={"Content-Type":"application/x-www-form-urlencoded"};function zLi(e,t){!Uk.isUndefined(e)&&Uk.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function k_c(){var e;return typeof XMLHttpRequest<"u"?e=LLi():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=KLi()),e}function x_c(e,t,r){if(Uk.isString(e))try{return(t||JSON.parse)(e),Uk.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var X1t={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:k_c(),transformRequest:[function(t,r){return jLi(r,"Accept"),jLi(r,"Content-Type"),Uk.isFormData(t)||Uk.isArrayBuffer(t)||Uk.isBuffer(t)||Uk.isStream(t)||Uk.isFile(t)||Uk.isBlob(t)?t:Uk.isArrayBufferView(t)?t.buffer:Uk.isURLSearchParams(t)?(zLi(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):Uk.isObject(t)||r&&r["Content-Type"]==="application/json"?(zLi(r,"application/json"),x_c(t)):t}],transformResponse:[function(t){var r=this.transitional,n=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!n&&this.responseType==="json";if(o||a&&Uk.isString(t)&&t.length)try{return JSON.parse(t)}catch(l){if(o)throw l.name==="SyntaxError"?N_c(l,this,"E_JSON_PARSE"):l}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};X1t.headers={common:{Accept:"application/json, text/plain, */*"}};Uk.forEach(["delete","get","head"],function(t){X1t.headers[t]={}});Uk.forEach(["post","put","patch"],function(t){X1t.headers[t]=Uk.merge(D_c)});qLi.exports=X1t});var e9i=H((q9u,$Li)=>{"use strict";var G_c=$Z(),F_c=J1t();$Li.exports=function(t,r,n){var a=this||F_c;return G_c.forEach(n,function(l){t=l.call(a,t,r)}),t}});var NFr=H(($9u,t9i)=>{"use strict";t9i.exports=function(t){return!!(t&&t.__CANCEL__)}});var i9i=H((eVu,n9i)=>{"use strict";var r9i=$Z(),DFr=e9i(),Z_c=NFr(),L_c=J1t();function kFr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}n9i.exports=function(t){kFr(t),t.headers=t.headers||{},t.data=DFr.call(t,t.data,t.headers,t.transformRequest),t.headers=r9i.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),r9i.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||L_c.adapter;return r(t).then(function(a){return kFr(t),a.data=DFr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return Z_c(a)||(kFr(t),a&&a.response&&(a.response.data=DFr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var xFr=H((tVu,s9i)=>{"use strict";var LG=$Z();s9i.exports=function(t,r){r=r||{};var n={},a=["url","method","data"],o=["headers","auth","proxy","params"],l=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],A=["validateStatus"];function f(E,N){return LG.isPlainObject(E)&&LG.isPlainObject(N)?LG.merge(E,N):LG.isPlainObject(N)?LG.merge({},N):LG.isArray(N)?N.slice():N}function I(E){LG.isUndefined(r[E])?LG.isUndefined(t[E])||(n[E]=f(void 0,t[E])):n[E]=f(t[E],r[E])}LG.forEach(a,function(N){LG.isUndefined(r[N])||(n[N]=f(void 0,r[N]))}),LG.forEach(o,I),LG.forEach(l,function(N){LG.isUndefined(r[N])?LG.isUndefined(t[N])||(n[N]=f(void 0,t[N])):n[N]=f(void 0,r[N])}),LG.forEach(A,function(N){N in r?n[N]=f(t[N],r[N]):N in t&&(n[N]=f(void 0,t[N]))});var C=a.concat(o).concat(l).concat(A),b=Object.keys(t).concat(Object.keys(r)).filter(function(N){return C.indexOf(N)===-1});return LG.forEach(b,I),n}});var u9i=H((rVu,l9i)=>{"use strict";var a9i=TFr(),GFr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){GFr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var o9i={},V_c=a9i.version.split(".");function c9i(e,t){for(var r=t?t.split("."):V_c,n=e.split("."),a=0;a<3;a++){if(r[a]>n[a])return!0;if(r[a]0;){var o=n[a],l=t[o];if(l){var A=e[o],f=A===void 0||l(A,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}l9i.exports={isOlderVersion:c9i,assertOptions:P_c,validators:GFr}});var I9i=H((nVu,f9i)=>{"use strict";var d9i=$Z(),W_c=P1t(),g9i=mLi(),A9i=i9i(),U1t=xFr(),p9i=u9i(),pDe=p9i.validators;function iKe(e){this.defaults=e,this.interceptors={request:new g9i,response:new g9i}}iKe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=U1t(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&p9i.assertOptions(r,{silentJSONParsing:pDe.transitional(pDe.boolean,"1.0.0"),forcedJSONParsing:pDe.transitional(pDe.boolean,"1.0.0"),clarifyTimeoutError:pDe.transitional(pDe.boolean,"1.0.0")},!1);var n=[],a=!0;this.interceptors.request.forEach(function(E){typeof E.runWhen=="function"&&E.runWhen(t)===!1||(a=a&&E.synchronous,n.unshift(E.fulfilled,E.rejected))});var o=[];this.interceptors.response.forEach(function(E){o.push(E.fulfilled,E.rejected)});var l;if(!a){var A=[A9i,void 0];for(Array.prototype.unshift.apply(A,n),A=A.concat(o),l=Promise.resolve(t);A.length;)l=l.then(A.shift(),A.shift());return l}for(var f=t;n.length;){var I=n.shift(),C=n.shift();try{f=I(f)}catch(b){C(b);break}}try{l=A9i(f)}catch(b){return Promise.reject(b)}for(;o.length;)l=l.then(o.shift(),o.shift());return l};iKe.prototype.getUri=function(t){return t=U1t(this.defaults,t),W_c(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};d9i.forEach(["delete","get","head","options"],function(t){iKe.prototype[t]=function(r,n){return this.request(U1t(n||{},{method:t,url:r,data:(n||{}).data}))}});d9i.forEach(["post","put","patch"],function(t){iKe.prototype[t]=function(r,n,a){return this.request(U1t(a||{},{method:t,url:r,data:n}))}});f9i.exports=iKe});var ZFr=H((iVu,h9i)=>{"use strict";function FFr(e){this.message=e}FFr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};FFr.prototype.__CANCEL__=!0;h9i.exports=FFr});var C9i=H((sVu,m9i)=>{"use strict";var O_c=ZFr();function K1t(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new O_c(a),t(r.reason))})}K1t.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};K1t.source=function(){var t,r=new K1t(function(a){t=a});return{token:r,cancel:t}};m9i.exports=K1t});var y9i=H((oVu,_9i)=>{"use strict";_9i.exports=function(t){return function(n){return t.apply(null,n)}}});var E9i=H((aVu,b9i)=>{"use strict";b9i.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var B9i=H((cVu,LFr)=>{"use strict";var S9i=$Z(),M_c=oFr(),j1t=I9i(),H_c=xFr(),Y_c=J1t();function v9i(e){var t=new j1t(e),r=M_c(j1t.prototype.request,t);return S9i.extend(r,j1t.prototype,t),S9i.extend(r,t),r}var I4=v9i(Y_c);I4.Axios=j1t;I4.create=function(t){return v9i(H_c(I4.defaults,t))};I4.Cancel=ZFr();I4.CancelToken=C9i();I4.isCancel=NFr();I4.all=function(t){return Promise.all(t)};I4.spread=y9i();I4.isAxiosError=E9i();LFr.exports=I4;LFr.exports.default=I4});var T9i=H((lVu,w9i)=>{w9i.exports=B9i()});var N9i=H((uVu,R9i)=>{var fDe=1e3,IDe=fDe*60,hDe=IDe*60,BCe=hDe*24,Q_c=BCe*7,X_c=BCe*365.25;R9i.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return J_c(e);if(r==="number"&&isFinite(e))return t.long?K_c(e):U_c(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function J_c(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*X_c;case"weeks":case"week":case"w":return r*Q_c;case"days":case"day":case"d":return r*BCe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*hDe;case"minutes":case"minute":case"mins":case"min":case"m":return r*IDe;case"seconds":case"second":case"secs":case"sec":case"s":return r*fDe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function U_c(e){var t=Math.abs(e);return t>=BCe?Math.round(e/BCe)+"d":t>=hDe?Math.round(e/hDe)+"h":t>=IDe?Math.round(e/IDe)+"m":t>=fDe?Math.round(e/fDe)+"s":e+"ms"}function K_c(e){var t=Math.abs(e);return t>=BCe?z1t(e,t,BCe,"day"):t>=hDe?z1t(e,t,hDe,"hour"):t>=IDe?z1t(e,t,IDe,"minute"):t>=fDe?z1t(e,t,fDe,"second"):e+" ms"}function z1t(e,t,r,n){var a=t>=r*1.5;return Math.round(e/r)+" "+n+(a?"s":"")}});var VFr=H((gVu,D9i)=>{function j_c(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=l,r.humanize=N9i(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b,E=(typeof C=="string"?C:"").split(/[\s,]+/),N=E.length;for(b=0;b"-"+b)].join(",");return r.enable(""),C}function l(C){if(C[C.length-1]==="*")return!0;let b,E;for(b=0,E=r.skips.length;b{yO.formatArgs=q_c;yO.save=$_c;yO.load=e0c;yO.useColors=z_c;yO.storage=t0c();yO.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();yO.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function z_c(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function q_c(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+q1t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}yO.log=console.debug||console.log||(()=>{});function $_c(e){try{e?yO.storage.setItem("debug",e):yO.storage.removeItem("debug")}catch{}}function e0c(){let e;try{e=yO.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function t0c(){try{return localStorage}catch{}}q1t.exports=VFr()(yO);var{formatters:r0c}=q1t.exports;r0c.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var G9i=H((Kk,e2t)=>{var n0c=wt("tty"),$1t=wt("util");Kk.init=u0c;Kk.log=a0c;Kk.formatArgs=s0c;Kk.save=c0c;Kk.load=l0c;Kk.useColors=i0c;Kk.destroy=$1t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Kk.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(Kk.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Kk.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function i0c(){return"colors"in Kk.inspectOpts?!!Kk.inspectOpts.colors:n0c.isatty(process.stderr.fd)}function s0c(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` -`).join(` -`+o),e.push(a+"m+"+e2t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=o0c()+t+" "+e[0]}function o0c(){return Kk.inspectOpts.hideDate?"":new Date().toISOString()+" "}function a0c(...e){return process.stderr.write($1t.format(...e)+` -`)}function c0c(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function l0c(){return process.env.DEBUG}function u0c(e){e.inspectOpts={};let t=Object.keys(Kk.inspectOpts);for(let r=0;rt.trim()).join(" ")};x9i.O=function(e){return this.inspectOpts.colors=this.useColors,$1t.inspect(e,this.inspectOpts)}});var WFr=H((AVu,PFr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?PFr.exports=k9i():PFr.exports=G9i()});var Z9i=H((dVu,F9i)=>{var{Transform:g0c}=wt("stream"),OFr=class extends g0c{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,n){n(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};F9i.exports=OFr});var P9i=H((fVu,V9i)=>{var{EventEmitter:A0c}=wt("events"),Bj=WFr()("localtunnel:client"),MFr=wt("fs"),L9i=wt("net"),d0c=wt("tls"),p0c=Z9i();V9i.exports=class extends A0c{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,n=t.remote_port,a=t.local_host||"localhost",o=t.local_port,l=t.local_https?"https":"http",A=t.allow_invalid_cert;Bj("establishing tunnel %s://%s:%s <> %s:%s",l,a,o,r,n);let f=L9i.connect({host:r,port:n});f.setKeepAlive(!0),f.on("error",C=>{Bj("got remote connection error",C.message),C.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${n} (check your firewall settings)`)),f.end()});let I=()=>{if(f.destroyed){Bj("remote destroyed"),this.emit("dead");return}Bj("connecting locally to %s://%s:%d",l,a,o),f.pause(),A&&Bj("allowing invalid certificates");let C=()=>A?{rejectUnauthorized:!1}:{cert:MFr.readFileSync(t.local_cert),key:MFr.readFileSync(t.local_key),ca:t.local_ca?[MFr.readFileSync(t.local_ca)]:void 0},b=t.local_https?d0c.connect({host:a,port:o,...C()}):L9i.connect({host:a,port:o}),E=()=>{Bj("remote close"),this.emit("dead"),b.end()};f.once("close",E),b.once("error",N=>{if(Bj("local error %s",N.message),b.end(),f.removeListener("close",E),N.code!=="ECONNREFUSED")return f.end();setTimeout(I,1e3)}),b.once("connect",()=>{Bj("connected locally"),f.resume();let N=f;t.local_host&&(Bj("transform Host header to %s",t.local_host),N=f.pipe(new p0c({host:t.local_host}))),N.pipe(b).pipe(f),b.once("close",B=>{Bj("local connection closed [%s]",B)})})};f.on("data",C=>{let b=C.toString().match(/^(\w+) (\S+)/);b&&this.emit("request",{method:b[1],path:b[2]})}),f.once("connect",()=>{this.emit("open",f),I()})}}});var M9i=H((hVu,O9i)=>{var{parse:f0c}=wt("url"),{EventEmitter:W9i}=wt("events"),I0c=T9i(),sKe=WFr()("localtunnel:client"),h0c=P9i();O9i.exports=class extends W9i{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:n,port:a,url:o,cached_url:l,max_conn_count:A}=t,{host:f,port:I,local_host:C}=this.opts,{local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}=this.opts;return{name:r,url:o,cached_url:l,max_conn:A||1,remote_host:f0c(f).hostname,remote_ip:n,remote_port:a,local_port:I,local_host:C,local_https:b,local_cert:E,local_key:N,local_ca:B,allow_invalid_cert:F}}_init(t){let r=this.opts,n=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,l=r.subdomain,A=o+(l||"?new");(function f(){I0c.get(A,a).then(I=>{let C=I.data;if(sKe("got tunnel information",I.data),I.status!==200){let b=new Error(C&&C.message||"localtunnel server returned an error, please try again");return t(b)}t(null,n(C))}).catch(I=>(sKe(`tunnel server offline: ${I.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(W9i.defaultMaxListeners||10)),this.tunnelCluster=new h0c(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",n=>{sKe("got socket error",n.message),this.emit("error",n)});let r=0;this.tunnelCluster.on("open",n=>{r++,sKe("tunnel open [total: %d]",r);let a=()=>{n.destroy()};if(this.closed)return a();this.once("close",a),n.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,sKe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n{if(r)return t(r);this.clientId=n.name,this.url=n.url,n.cached_url&&(this.cachedUrl=n.cached_url),this._establish(n),t()})}close(){this.closed=!0,this.emit("close")}}});var Y9i=H((mVu,H9i)=>{var m0c=M9i();H9i.exports=function(t,r,n){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:n,l=new m0c(a);return o?(l.open(A=>A?o(A):o(null,l)),l):new Promise((A,f)=>l.open(I=>I?f(I):A(l)))}});var pVi=H(dVi=>{"use strict";Object.defineProperty(dVi,"__esModule",{value:!0})});var IVi=H(fVi=>{"use strict";Object.defineProperty(fVi,"__esModule",{value:!0})});var hVi=H(gKe=>{"use strict";Object.defineProperty(gKe,"__esModule",{value:!0});gKe.SeverityNumber=void 0;var W0c;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(W0c=gKe.SeverityNumber||(gKe.SeverityNumber={}))});var CVi=H(mVi=>{"use strict";Object.defineProperty(mVi,"__esModule",{value:!0})});var XFr=H(mDe=>{"use strict";Object.defineProperty(mDe,"__esModule",{value:!0});mDe.NOOP_LOGGER=mDe.NoopLogger=void 0;var a2t=class{emit(t){}};mDe.NoopLogger=a2t;mDe.NOOP_LOGGER=new a2t});var JFr=H(CDe=>{"use strict";Object.defineProperty(CDe,"__esModule",{value:!0});CDe.NOOP_LOGGER_PROVIDER=CDe.NoopLoggerProvider=void 0;var O0c=XFr(),c2t=class{getLogger(t,r,n){return new O0c.NoopLogger}};CDe.NoopLoggerProvider=c2t;CDe.NOOP_LOGGER_PROVIDER=new c2t});var _Vi=H(l2t=>{"use strict";Object.defineProperty(l2t,"__esModule",{value:!0});l2t._globalThis=void 0;l2t._globalThis=typeof globalThis=="object"?globalThis:global});var yVi=H(TCe=>{"use strict";var M0c=TCe&&TCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),H0c=TCe&&TCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&M0c(t,e,r)};Object.defineProperty(TCe,"__esModule",{value:!0});H0c(_Vi(),TCe)});var bVi=H(RCe=>{"use strict";var Y0c=RCe&&RCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Q0c=RCe&&RCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Y0c(t,e,r)};Object.defineProperty(RCe,"__esModule",{value:!0});Q0c(yVi(),RCe)});var EVi=H(wj=>{"use strict";Object.defineProperty(wj,"__esModule",{value:!0});wj.API_BACKWARDS_COMPATIBILITY_VERSION=wj.makeGetter=wj._global=wj.GLOBAL_LOGS_API_KEY=void 0;var X0c=bVi();wj.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");wj._global=X0c._globalThis;function J0c(e,t,r){return n=>n===e?t:r}wj.makeGetter=J0c;wj.API_BACKWARDS_COMPATIBILITY_VERSION=1});var vVi=H(u2t=>{"use strict";Object.defineProperty(u2t,"__esModule",{value:!0});u2t.LogsAPI=void 0;var gH=EVi(),SVi=JFr(),UFr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return gH._global[gH.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(gH._global[gH.GLOBAL_LOGS_API_KEY]=(0,gH.makeGetter)(gH.API_BACKWARDS_COMPATIBILITY_VERSION,t,SVi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=gH._global[gH.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(gH._global,gH.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:SVi.NOOP_LOGGER_PROVIDER}getLogger(t,r,n){return this.getLoggerProvider().getLogger(t,r,n)}disable(){delete gH._global[gH.GLOBAL_LOGS_API_KEY]}};u2t.LogsAPI=UFr});var yDe=H(wV=>{"use strict";var U0c=wV&&wV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_De=wV&&wV.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&U0c(t,e,r)};Object.defineProperty(wV,"__esModule",{value:!0});wV.logs=void 0;_De(pVi(),wV);_De(IVi(),wV);_De(hVi(),wV);_De(CVi(),wV);_De(XFr(),wV);_De(JFr(),wV);var K0c=vVi();wV.logs=K0c.LogsAPI.getInstance()});var BVi,wVi=bc(()=>{BVi=typeof globalThis=="object"?globalThis:global});var TVi=bc(()=>{wVi()});var RVi=bc(()=>{TVi()});var Uee,KFr=bc(()=>{Uee="1.9.0"});function j0c(e){var t=new Set([e]),r=new Set,n=e.match(NVi);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(f){return f===e};function o(A){return r.add(A),!1}function l(A){return t.add(A),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var I=f.match(NVi);if(!I)return o(f);var C={major:+I[1],minor:+I[2],patch:+I[3],prerelease:I[4]};return C.prerelease!=null||a.major!==C.major?o(f):a.major===0?a.minor===C.minor&&a.patch<=C.patch?l(f):o(f):a.minor<=C.minor?l(f):o(f)}}var NVi,DVi,kVi=bc(()=>{KFr();NVi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;DVi=j0c(Uee)});function Tj(e,t,r,n){var a;n===void 0&&(n=!1);var o=dKe[AKe]=(a=dKe[AKe])!==null&&a!==void 0?a:{version:Uee};if(!n&&o[e]){var l=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(l.stack||l.message),!1}if(o.version!==Uee){var l=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+Uee);return r.error(l.stack||l.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+Uee+"."),!0}function bO(e){var t,r,n=(t=dKe[AKe])===null||t===void 0?void 0:t.version;if(!(!n||!DVi(n)))return(r=dKe[AKe])===null||r===void 0?void 0:r[e]}function Rj(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Uee+".");var r=dKe[AKe];r&&delete r[e]}var z0c,AKe,dKe,NCe=bc(()=>{RVi();KFr();kVi();z0c=Uee.split(".")[0],AKe=Symbol.for("opentelemetry.js.api."+z0c),dKe=BVi});function pKe(e,t,r){var n=bO("diag");if(n)return r.unshift(t),n[e].apply(n,$0c([],q0c(r),!1))}var q0c,$0c,xVi,GVi=bc(()=>{NCe();q0c=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},$0c=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(jk||(jk={}))});function FVi(e,t){ejk.ALL&&(e=jk.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",jk.ERROR),warn:r("warn",jk.WARN),info:r("info",jk.INFO),debug:r("debug",jk.DEBUG),verbose:r("verbose",jk.VERBOSE)}}var ZVi=bc(()=>{g2t()});var eyc,tyc,ryc,VG,DCe=bc(()=>{GVi();ZVi();g2t();NCe();eyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},tyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n";C.warn("Current logger will be overwritten from "+E),b.warn("Current logger will overwrite one already registered from "+E)}return Tj("diag",b,r,!0)};r.setLogger=n,r.disable=function(){Rj(ryc,r)},r.createComponentLogger=function(a){return new xVi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var nyc,iyc,LVi,VVi=bc(()=>{nyc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},iyc=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},LVi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=nyc(t,2),n=r[0],a=r[1];return[n,a]})},e.prototype.setEntry=function(t,r){var n=new e(this._entries);return n._entries.set(t,r),n},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,n=[],a=0;a{PVi=Symbol("BaggageEntryMetadata")});function OVi(e){return e===void 0&&(e={}),new LVi(new Map(Object.entries(e)))}function MVi(e){return typeof e!="string"&&(syc.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:PVi,toString:function(){return e}}}var syc,jFr=bc(()=>{DCe();VVi();WVi();syc=VG.instance()});function bDe(e){return Symbol.for(e)}var oyc,A2t,fKe=bc(()=>{oyc=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e}(),A2t=new oyc});var zFr,HVi,YVi=bc(()=>{zFr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],HVi=function(){function e(){function t(n){return function(){for(var a=[],o=0;o{kCe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),ayc=function(){function e(){}return e.prototype.createGauge=function(t,r){return Iyc},e.prototype.createHistogram=function(t,r){return hyc},e.prototype.createCounter=function(t,r){return fyc},e.prototype.createUpDownCounter=function(t,r){return myc},e.prototype.createObservableGauge=function(t,r){return _yc},e.prototype.createObservableCounter=function(t,r){return Cyc},e.prototype.createObservableUpDownCounter=function(t,r){return yyc},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),d2t=function(){function e(){}return e}(),cyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(d2t),lyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,n){},t}(d2t),uyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(d2t),gyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,n){},t}(d2t),qFr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),Ayc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(qFr),dyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(qFr),pyc=function(e){kCe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(qFr),$Fr=new ayc,fyc=new cyc,Iyc=new uyc,hyc=new gyc,myc=new lyc,Cyc=new Ayc,_yc=new dyc,yyc=new pyc});var p2t,XVi=bc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(p2t||(p2t={}))});var f2t,I2t,tZr=bc(()=>{f2t={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},I2t={set:function(e,t,r){e!=null&&(e[t]=r)}}});var byc,Eyc,JVi,UVi=bc(()=>{fKe();byc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Eyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{UVi();NCe();DCe();Syc=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},vyc=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(EDe||(EDe={}))});var hKe,mKe,h2t,m2t=bc(()=>{nZr();hKe="0000000000000000",mKe="00000000000000000000000000000000",h2t={traceId:mKe,spanId:hKe,traceFlags:EDe.NONE}});var Oce,C2t=bc(()=>{m2t();Oce=function(){function e(t){t===void 0&&(t=h2t),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function _2t(e){return e.getValue(iZr)||void 0}function KVi(){return _2t(Wce.getInstance().active())}function CKe(e,t){return e.setValue(iZr,t)}function jVi(e){return e.deleteValue(iZr)}function zVi(e,t){return CKe(e,new Oce(t))}function y2t(e){var t;return(t=_2t(e))===null||t===void 0?void 0:t.spanContext()}var iZr,sZr=bc(()=>{fKe();C2t();IKe();iZr=bDe("OpenTelemetry Context Key SPAN")});function oZr(e){return wyc.test(e)&&e!==mKe}function aZr(e){return Tyc.test(e)&&e!==hKe}function SDe(e){return oZr(e.traceId)&&aZr(e.spanId)}function qVi(e){return new Oce(e)}var wyc,Tyc,b2t=bc(()=>{m2t();C2t();wyc=/^([0-9a-f]{32})$/i,Tyc=/^[0-9a-f]{16}$/i});function Ryc(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var cZr,E2t,lZr=bc(()=>{IKe();sZr();C2t();b2t();cZr=Wce.getInstance(),E2t=function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=cZr.active());var a=!!r?.root;if(a)return new Oce;var o=n&&y2t(n);return Ryc(o)&&SDe(o)?new Oce(o):new Oce},e.prototype.startActiveSpan=function(t,r,n,a){var o,l,A;if(!(arguments.length<2)){arguments.length===2?A=r:arguments.length===3?(o=r,A=n):(o=r,l=n,A=a);var f=l??cZr.active(),I=this.startSpan(t,o,f),C=CKe(f,I);return cZr.with(C,A,void 0,I)}},e}()});var Nyc,S2t,uZr=bc(()=>{lZr();Nyc=new E2t,S2t=function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):Nyc},e}()});var $Vi,ePi=bc(()=>{lZr();$Vi=function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new E2t},e}()});var Dyc,_Ke,gZr=bc(()=>{uZr();ePi();Dyc=new $Vi,_Ke=function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new S2t(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:Dyc},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e}()});var v2t,tPi=bc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(v2t||(v2t={}))});var B2t,rPi=bc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(B2t||(B2t={}))});var w2t,nPi=bc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(w2t||(w2t={}))});function iPi(e){return Gyc.test(e)}function sPi(e){return Fyc.test(e)&&!Zyc.test(e)}var AZr,kyc,xyc,Gyc,Fyc,Zyc,oPi=bc(()=>{AZr="[_0-9a-z-*/]",kyc="[a-z]"+AZr+"{0,255}",xyc="[a-z0-9]"+AZr+"{0,240}@[a-z]"+AZr+"{0,13}",Gyc=new RegExp("^(?:"+kyc+"|"+xyc+")$"),Fyc=/^[ -~]{0,255}[!-~]$/,Zyc=/,|=/});var aPi,Lyc,cPi,lPi,uPi,gPi=bc(()=>{oPi();aPi=32,Lyc=512,cPi=",",lPi="=",uPi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,n){return r.push(n+lPi+t.get(n)),r},[]).join(cPi)},e.prototype._parse=function(t){t.length>Lyc||(this._internalState=t.split(cPi).reverse().reduce(function(r,n){var a=n.trim(),o=a.indexOf(lPi);if(o!==-1){var l=a.slice(0,o),A=a.slice(o+1,n.length);iPi(l)&&sPi(A)&&r.set(l,A)}return r},new Map),this._internalState.size>aPi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,aPi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function APi(e){return new uPi(e)}var dPi=bc(()=>{gPi()});var dZr,pPi=bc(()=>{IKe();dZr=Wce.getInstance()});var pZr,fPi=bc(()=>{DCe();pZr=VG.instance()});var Vyc,IPi,hPi=bc(()=>{eZr();Vyc=function(){function e(){}return e.prototype.getMeter=function(t,r,n){return $Fr},e}(),IPi=new Vyc});var fZr,mPi,CPi=bc(()=>{hPi();NCe();DCe();fZr="metrics",mPi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return Tj(fZr,t,VG.instance())},e.prototype.getMeterProvider=function(){return bO(fZr)||IPi},e.prototype.getMeter=function(t,r,n){return this.getMeterProvider().getMeter(t,r,n)},e.prototype.disable=function(){Rj(fZr,VG.instance())},e}()});var IZr,_Pi=bc(()=>{CPi();IZr=mPi.getInstance()});var yPi,bPi=bc(()=>{yPi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function mZr(e){return e.getValue(hZr)||void 0}function EPi(){return mZr(Wce.getInstance().active())}function SPi(e,t){return e.setValue(hZr,t)}function vPi(e){return e.deleteValue(hZr)}var hZr,BPi=bc(()=>{IKe();fKe();hZr=bDe("OpenTelemetry Baggage Key")});var CZr,Pyc,wPi,TPi=bc(()=>{NCe();bPi();tZr();BPi();jFr();DCe();CZr="propagation",Pyc=new yPi,wPi=function(){function e(){this.createBaggage=OVi,this.getBaggage=mZr,this.getActiveBaggage=EPi,this.setBaggage=SPi,this.deleteBaggage=vPi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return Tj(CZr,t,VG.instance())},e.prototype.inject=function(t,r,n){return n===void 0&&(n=I2t),this._getGlobalPropagator().inject(t,r,n)},e.prototype.extract=function(t,r,n){return n===void 0&&(n=f2t),this._getGlobalPropagator().extract(t,r,n)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){Rj(CZr,VG.instance())},e.prototype._getGlobalPropagator=function(){return bO(CZr)||Pyc},e}()});var _Zr,RPi=bc(()=>{TPi();_Zr=wPi.getInstance()});var yZr,NPi,DPi=bc(()=>{NCe();gZr();b2t();sZr();DCe();yZr="trace",NPi=function(){function e(){this._proxyTracerProvider=new _Ke,this.wrapSpanContext=qVi,this.isSpanContextValid=SDe,this.deleteSpan=jVi,this.getSpan=_2t,this.getActiveSpan=KVi,this.getSpanContext=y2t,this.setSpan=CKe,this.setSpanContext=zVi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=Tj(yZr,this._proxyTracerProvider,VG.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return bO(yZr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){Rj(yZr,VG.instance()),this._proxyTracerProvider=new _Ke},e}()});var bZr,kPi=bc(()=>{DPi();bZr=NPi.getInstance()});var xI={};sI(xI,{DiagConsoleLogger:()=>HVi,DiagLogLevel:()=>jk,INVALID_SPANID:()=>hKe,INVALID_SPAN_CONTEXT:()=>h2t,INVALID_TRACEID:()=>mKe,ProxyTracer:()=>S2t,ProxyTracerProvider:()=>_Ke,ROOT_CONTEXT:()=>A2t,SamplingDecision:()=>v2t,SpanKind:()=>B2t,SpanStatusCode:()=>w2t,TraceFlags:()=>EDe,ValueType:()=>p2t,baggageEntryMetadataFromString:()=>MVi,context:()=>dZr,createContextKey:()=>bDe,createNoopMeter:()=>QVi,createTraceState:()=>APi,default:()=>Wyc,defaultTextMapGetter:()=>f2t,defaultTextMapSetter:()=>I2t,diag:()=>pZr,isSpanContextValid:()=>SDe,isValidSpanId:()=>aZr,isValidTraceId:()=>oZr,metrics:()=>IZr,propagation:()=>_Zr,trace:()=>bZr});var Wyc,GI=bc(()=>{jFr();fKe();YVi();g2t();eZr();XVi();tZr();uZr();gZr();tPi();rPi();nPi();nZr();dPi();b2t();m2t();pPi();fPi();_Pi();RPi();kPi();Wyc={context:dZr,diag:pZr,metrics:IZr,propagation:_Zr,trace:bZr}});var xPi=H(K0=>{"use strict";Object.defineProperty(K0,"__esModule",{value:!0});K0.MessageTypeValues=K0.RpcGrpcStatusCodeValues=K0.MessagingOperationValues=K0.MessagingDestinationKindValues=K0.HttpFlavorValues=K0.NetHostConnectionSubtypeValues=K0.NetHostConnectionTypeValues=K0.NetTransportValues=K0.FaasInvokedProviderValues=K0.FaasDocumentOperationValues=K0.FaasTriggerValues=K0.DbCassandraConsistencyLevelValues=K0.DbSystemValues=K0.SemanticAttributes=void 0;K0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};K0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};K0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};K0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};K0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};K0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};K0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};K0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};K0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};K0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};K0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};K0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};K0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};K0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var GPi=H(xCe=>{"use strict";var Oyc=xCe&&xCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Myc=xCe&&xCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Oyc(t,e,r)};Object.defineProperty(xCe,"__esModule",{value:!0});Myc(xPi(),xCe)});var FPi=H(PG=>{"use strict";Object.defineProperty(PG,"__esModule",{value:!0});PG.TelemetrySdkLanguageValues=PG.OsTypeValues=PG.HostArchValues=PG.AwsEcsLaunchtypeValues=PG.CloudPlatformValues=PG.CloudProviderValues=PG.SemanticResourceAttributes=void 0;PG.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};PG.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};PG.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};PG.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};PG.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};PG.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};PG.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var ZPi=H(GCe=>{"use strict";var Hyc=GCe&&GCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Yyc=GCe&&GCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Hyc(t,e,r)};Object.defineProperty(GCe,"__esModule",{value:!0});Yyc(FPi(),GCe)});var Hce=H(Mce=>{"use strict";var Qyc=Mce&&Mce.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LPi=Mce&&Mce.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Qyc(t,e,r)};Object.defineProperty(Mce,"__esModule",{value:!0});LPi(GPi(),Mce);LPi(ZPi(),Mce)});var yKe=H(Yce=>{"use strict";Object.defineProperty(Yce,"__esModule",{value:!0});Yce.isTracingSuppressed=Yce.unsuppressTracing=Yce.suppressTracing=void 0;var Xyc=(GI(),vi(xI)),EZr=(0,Xyc.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function Jyc(e){return e.setValue(EZr,!0)}Yce.suppressTracing=Jyc;function Uyc(e){return e.deleteValue(EZr)}Yce.unsuppressTracing=Uyc;function Kyc(e){return e.getValue(EZr)===!0}Yce.isTracingSuppressed=Kyc});var SZr=H(WG=>{"use strict";Object.defineProperty(WG,"__esModule",{value:!0});WG.BAGGAGE_MAX_TOTAL_LENGTH=WG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=WG.BAGGAGE_MAX_NAME_VALUE_PAIRS=WG.BAGGAGE_HEADER=WG.BAGGAGE_ITEMS_SEPARATOR=WG.BAGGAGE_PROPERTIES_SEPARATOR=WG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;WG.BAGGAGE_KEY_PAIR_SEPARATOR="=";WG.BAGGAGE_PROPERTIES_SEPARATOR=";";WG.BAGGAGE_ITEMS_SEPARATOR=",";WG.BAGGAGE_HEADER="baggage";WG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;WG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;WG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var vZr=H(Nj=>{"use strict";Object.defineProperty(Nj,"__esModule",{value:!0});Nj.parseKeyPairsIntoRecord=Nj.parsePairKeyValue=Nj.getKeyPairs=Nj.serializeKeyPairs=void 0;var jyc=(GI(),vi(xI)),FCe=SZr();function zyc(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?FCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>FCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}Nj.serializeKeyPairs=zyc;function qyc(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=FCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}Nj.getKeyPairs=qyc;function VPi(e){let t=e.split(FCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(FCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,jyc.baggageEntryMetadataFromString)(t.join(FCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}Nj.parsePairKeyValue=VPi;function $yc(e){return typeof e!="string"||e.length===0?{}:e.split(FCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>VPi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}Nj.parseKeyPairsIntoRecord=$yc});var PPi=H(T2t=>{"use strict";Object.defineProperty(T2t,"__esModule",{value:!0});T2t.W3CBaggagePropagator=void 0;var BZr=(GI(),vi(xI)),ebc=yKe(),ZCe=SZr(),wZr=vZr(),TZr=class{inject(t,r,n){let a=BZr.propagation.getBaggage(t);if(!a||(0,ebc.isTracingSuppressed)(t))return;let o=(0,wZr.getKeyPairs)(a).filter(A=>A.length<=ZCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,ZCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,wZr.serializeKeyPairs)(o);l.length>0&&n.set(r,ZCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,ZCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(ZCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(ZCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,wZr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:BZr.propagation.setBaggage(t,BZr.propagation.createBaggage(l))}fields(){return[ZCe.BAGGAGE_HEADER]}};T2t.W3CBaggagePropagator=TZr});var WPi=H(R2t=>{"use strict";Object.defineProperty(R2t,"__esModule",{value:!0});R2t.AnchoredClock=void 0;var RZr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};R2t.AnchoredClock=RZr});var QPi=H(Qce=>{"use strict";Object.defineProperty(Qce,"__esModule",{value:!0});Qce.isAttributeValue=Qce.isAttributeKey=Qce.sanitizeAttributes=void 0;var OPi=(GI(),vi(xI));function tbc(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!MPi(r)){OPi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!HPi(n)){OPi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Qce.sanitizeAttributes=tbc;function MPi(e){return typeof e=="string"&&e.length>0}Qce.isAttributeKey=MPi;function HPi(e){return e==null?!0:Array.isArray(e)?rbc(e):YPi(e)}Qce.isAttributeValue=HPi;function rbc(e){let t;for(let r of e)if(r!=null){if(!t){if(YPi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function YPi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var NZr=H(N2t=>{"use strict";Object.defineProperty(N2t,"__esModule",{value:!0});N2t.loggingErrorHandler=void 0;var nbc=(GI(),vi(xI));function ibc(){return e=>{nbc.diag.error(sbc(e))}}N2t.loggingErrorHandler=ibc;function sbc(e){return typeof e=="string"?e:JSON.stringify(obc(e))}function obc(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var DZr=H(vDe=>{"use strict";Object.defineProperty(vDe,"__esModule",{value:!0});vDe.globalErrorHandler=vDe.setGlobalErrorHandler=void 0;var abc=NZr(),XPi=(0,abc.loggingErrorHandler)();function cbc(e){XPi=e}vDe.setGlobalErrorHandler=cbc;function lbc(e){try{XPi(e)}catch{}}vDe.globalErrorHandler=lbc});var kZr=H(bKe=>{"use strict";Object.defineProperty(bKe,"__esModule",{value:!0});bKe.TracesSamplerValues=void 0;var ubc;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(ubc=bKe.TracesSamplerValues||(bKe.TracesSamplerValues={}))});var JPi=H(D2t=>{"use strict";Object.defineProperty(D2t,"__esModule",{value:!0});D2t._globalThis=void 0;D2t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var GZr=H(Q1=>{"use strict";Object.defineProperty(Q1,"__esModule",{value:!0});Q1.getEnvWithoutDefaults=Q1.parseEnvironment=Q1.DEFAULT_ENVIRONMENT=Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Xce=(GI(),vi(xI)),gbc=kZr(),Abc=JPi(),dbc=",",pbc=["OTEL_SDK_DISABLED"];function fbc(e){return pbc.indexOf(e)>-1}var Ibc=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function hbc(e){return Ibc.indexOf(e)>-1}var mbc=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function Cbc(e){return mbc.indexOf(e)>-1}Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;Q1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Xce.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:Q1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:Q1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:Q1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:Q1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:gbc.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function _bc(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function ybc(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function bbc(e,t,r,n=dbc){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var Ebc={ALL:Xce.DiagLogLevel.ALL,VERBOSE:Xce.DiagLogLevel.VERBOSE,DEBUG:Xce.DiagLogLevel.DEBUG,INFO:Xce.DiagLogLevel.INFO,WARN:Xce.DiagLogLevel.WARN,ERROR:Xce.DiagLogLevel.ERROR,NONE:Xce.DiagLogLevel.NONE};function Sbc(e,t,r){let n=r[e];if(typeof n=="string"){let a=Ebc[n.toUpperCase()];a!=null&&(t[e]=a)}}function xZr(e){let t={};for(let r in Q1.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":Sbc(n,t,e);break;default:if(fbc(n))_bc(n,t,e);else if(hbc(n))ybc(n,t,e);else if(Cbc(n))bbc(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}Q1.parseEnvironment=xZr;function vbc(){return typeof process<"u"&&process&&process.env?xZr(process.env):xZr(Abc._globalThis)}Q1.getEnvWithoutDefaults=vbc});var KPi=H(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t.getEnv=void 0;var Bbc=wt("os"),UPi=GZr();function wbc(){let e=(0,UPi.parseEnvironment)(process.env);return Object.assign({HOSTNAME:Bbc.hostname()},UPi.DEFAULT_ENVIRONMENT,e)}k2t.getEnv=wbc});var jPi=H(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t._globalThis=void 0;x2t._globalThis=typeof globalThis=="object"?globalThis:global});var qPi=H(G2t=>{"use strict";Object.defineProperty(G2t,"__esModule",{value:!0});G2t.hexToBase64=void 0;function zPi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var Tbc=Buffer.alloc(8),Rbc=Buffer.alloc(16);function Nbc(e){let t;e.length===16?t=Tbc:e.length===32?t=Rbc:t=Buffer.alloc(e.length/2);let r=0;for(let n=0;n{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.RandomIdGenerator=void 0;var Dbc=8,eWi=16,FZr=class{constructor(){this.generateTraceId=$Pi(eWi),this.generateSpanId=$Pi(Dbc)}};Z2t.RandomIdGenerator=FZr;var F2t=Buffer.allocUnsafe(eWi);function $Pi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(F2t[e-1]=1);return F2t.toString("hex",0,e)}}});var rWi=H(L2t=>{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t.otperformance=void 0;var kbc=wt("perf_hooks");L2t.otperformance=kbc.performance});var P2t=H(V2t=>{"use strict";Object.defineProperty(V2t,"__esModule",{value:!0});V2t.VERSION=void 0;V2t.VERSION="1.16.0"});var nWi=H(W2t=>{"use strict";Object.defineProperty(W2t,"__esModule",{value:!0});W2t.SDK_INFO=void 0;var xbc=P2t(),EKe=Hce();W2t.SDK_INFO={[EKe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[EKe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[EKe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:EKe.TelemetrySdkLanguageValues.NODEJS,[EKe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:xbc.VERSION}});var iWi=H(O2t=>{"use strict";Object.defineProperty(O2t,"__esModule",{value:!0});O2t.unrefTimer=void 0;function Gbc(e){e.unref()}O2t.unrefTimer=Gbc});var sWi=H(EO=>{"use strict";var Fbc=EO&&EO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LCe=EO&&EO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Fbc(t,e,r)};Object.defineProperty(EO,"__esModule",{value:!0});LCe(KPi(),EO);LCe(jPi(),EO);LCe(qPi(),EO);LCe(tWi(),EO);LCe(rWi(),EO);LCe(nWi(),EO);LCe(iWi(),EO)});var ZZr=H(VCe=>{"use strict";var Zbc=VCe&&VCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Lbc=VCe&&VCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Zbc(t,e,r)};Object.defineProperty(VCe,"__esModule",{value:!0});Lbc(sWi(),VCe)});var lWi=H(WE=>{"use strict";Object.defineProperty(WE,"__esModule",{value:!0});WE.addHrTimes=WE.isTimeInput=WE.isTimeInputHrTime=WE.hrTimeToMicroseconds=WE.hrTimeToMilliseconds=WE.hrTimeToNanoseconds=WE.hrTimeToTimeStamp=WE.hrTimeDuration=WE.timeInputToHrTime=WE.hrTime=WE.getTimeOrigin=WE.millisToHrTime=void 0;var LZr=ZZr(),oWi=9,Vbc=6,Pbc=Math.pow(10,Vbc),M2t=Math.pow(10,oWi);function SKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*Pbc);return[r,n]}WE.millisToHrTime=SKe;function VZr(){let e=LZr.otperformance.timeOrigin;if(typeof e!="number"){let t=LZr.otperformance;e=t.timing&&t.timing.fetchStart}return e}WE.getTimeOrigin=VZr;function aWi(e){let t=SKe(VZr()),r=SKe(typeof e=="number"?e:LZr.otperformance.now());return cWi(t,r)}WE.hrTime=aWi;function Wbc(e){if(PZr(e))return e;if(typeof e=="number")return e=M2t&&(r[1]-=M2t,r[0]+=1),r}WE.addHrTimes=cWi});var gWi=H(uWi=>{"use strict";Object.defineProperty(uWi,"__esModule",{value:!0})});var AWi=H(vKe=>{"use strict";Object.defineProperty(vKe,"__esModule",{value:!0});vKe.ExportResultCode=void 0;var Jbc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(Jbc=vKe.ExportResultCode||(vKe.ExportResultCode={}))});var pWi=H(H2t=>{"use strict";Object.defineProperty(H2t,"__esModule",{value:!0});H2t.CompositePropagator=void 0;var dWi=(GI(),vi(xI)),WZr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){dWi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){dWi.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};H2t.CompositePropagator=WZr});var fWi=H(BDe=>{"use strict";Object.defineProperty(BDe,"__esModule",{value:!0});BDe.validateValue=BDe.validateKey=void 0;var OZr="[_0-9a-z-*/]",Ubc=`[a-z]${OZr}{0,255}`,Kbc=`[a-z0-9]${OZr}{0,240}@[a-z]${OZr}{0,13}`,jbc=new RegExp(`^(?:${Ubc}|${Kbc})$`),zbc=/^[ -~]{0,255}[!-~]$/,qbc=/,|=/;function $bc(e){return jbc.test(e)}BDe.validateKey=$bc;function eEc(e){return zbc.test(e)&&!qbc.test(e)}BDe.validateValue=eEc});var HZr=H(Y2t=>{"use strict";Object.defineProperty(Y2t,"__esModule",{value:!0});Y2t.TraceState=void 0;var IWi=fWi(),hWi=32,tEc=512,mWi=",",CWi="=",MZr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+CWi+this.get(r)),t),[]).join(mWi)}_parse(t){t.length>tEc||(this._internalState=t.split(mWi).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(CWi);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,IWi.validateKey)(l)&&(0,IWi.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>hWi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,hWi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};Y2t.TraceState=MZr});var yWi=H(OG=>{"use strict";Object.defineProperty(OG,"__esModule",{value:!0});OG.W3CTraceContextPropagator=OG.parseTraceParent=OG.TRACE_STATE_HEADER=OG.TRACE_PARENT_HEADER=void 0;var Q2t=(GI(),vi(xI)),rEc=yKe(),nEc=HZr();OG.TRACE_PARENT_HEADER="traceparent";OG.TRACE_STATE_HEADER="tracestate";var iEc="00",sEc="(?!ff)[\\da-f]{2}",oEc="(?![0]{32})[\\da-f]{32}",aEc="(?![0]{16})[\\da-f]{16}",cEc="[\\da-f]{2}",lEc=new RegExp(`^\\s?(${sEc})-(${oEc})-(${aEc})-(${cEc})(-.*)?\\s?$`);function _Wi(e){let t=lEc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}OG.parseTraceParent=_Wi;var YZr=class{inject(t,r,n){let a=Q2t.trace.getSpanContext(t);if(!a||(0,rEc.isTracingSuppressed)(t)||!(0,Q2t.isSpanContextValid)(a))return;let o=`${iEc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||Q2t.TraceFlags.NONE).toString(16)}`;n.set(r,OG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,OG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,OG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=_Wi(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,OG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new nEc.TraceState(typeof f=="string"?f:void 0)}return Q2t.trace.setSpanContext(t,l)}fields(){return[OG.TRACE_PARENT_HEADER,OG.TRACE_STATE_HEADER]}};OG.W3CTraceContextPropagator=YZr});var EWi=H(bWi=>{"use strict";Object.defineProperty(bWi,"__esModule",{value:!0})});var SWi=H(h4=>{"use strict";Object.defineProperty(h4,"__esModule",{value:!0});h4.getRPCMetadata=h4.deleteRPCMetadata=h4.setRPCMetadata=h4.RPCType=void 0;var uEc=(GI(),vi(xI)),QZr=(0,uEc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),gEc;(function(e){e.HTTP="http"})(gEc=h4.RPCType||(h4.RPCType={}));function AEc(e,t){return e.setValue(QZr,t)}h4.setRPCMetadata=AEc;function dEc(e){return e.deleteValue(QZr)}h4.deleteRPCMetadata=dEc;function pEc(e){return e.getValue(QZr)}h4.getRPCMetadata=pEc});var JZr=H(X2t=>{"use strict";Object.defineProperty(X2t,"__esModule",{value:!0});X2t.AlwaysOffSampler=void 0;var fEc=(GI(),vi(xI)),XZr=class{shouldSample(){return{decision:fEc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};X2t.AlwaysOffSampler=XZr});var KZr=H(J2t=>{"use strict";Object.defineProperty(J2t,"__esModule",{value:!0});J2t.AlwaysOnSampler=void 0;var IEc=(GI(),vi(xI)),UZr=class{shouldSample(){return{decision:IEc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};J2t.AlwaysOnSampler=UZr});var BWi=H(K2t=>{"use strict";Object.defineProperty(K2t,"__esModule",{value:!0});K2t.ParentBasedSampler=void 0;var U2t=(GI(),vi(xI)),hEc=DZr(),vWi=JZr(),jZr=KZr(),zZr=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,hEc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new jZr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new jZr.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new vWi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new jZr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new vWi.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=U2t.trace.getSpanContext(t);return!A||!(0,U2t.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&U2t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&U2t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};K2t.ParentBasedSampler=zZr});var wWi=H(j2t=>{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.TraceIdRatioBasedSampler=void 0;var qZr=(GI(),vi(xI)),$Zr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,qZr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};j2t.TraceIdRatioBasedSampler=$Zr});var kWi=H(z2t=>{"use strict";Object.defineProperty(z2t,"__esModule",{value:!0});z2t.isPlainObject=void 0;var mEc="[object Object]",CEc="[object Null]",_Ec="[object Undefined]",yEc=Function.prototype,TWi=yEc.toString,bEc=TWi.call(Object),EEc=SEc(Object.getPrototypeOf,Object),RWi=Object.prototype,NWi=RWi.hasOwnProperty,PCe=Symbol?Symbol.toStringTag:void 0,DWi=RWi.toString;function SEc(e,t){return function(r){return e(t(r))}}function vEc(e){if(!BEc(e)||wEc(e)!==mEc)return!1;let t=EEc(e);if(t===null)return!0;let r=NWi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&TWi.call(r)===bEc}z2t.isPlainObject=vEc;function BEc(e){return e!=null&&typeof e=="object"}function wEc(e){return e==null?e===void 0?_Ec:CEc:PCe&&PCe in Object(e)?TEc(e):REc(e)}function TEc(e){let t=NWi.call(e,PCe),r=e[PCe],n=!1;try{e[PCe]=void 0,n=!0}catch{}let a=DWi.call(e);return n&&(t?e[PCe]=r:delete e[PCe]),a}function REc(e){return DWi.call(e)}});var LWi=H(eSt=>{"use strict";Object.defineProperty(eSt,"__esModule",{value:!0});eSt.merge=void 0;var xWi=kWi(),NEc=20;function DEc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=FWi(t,e.shift(),0,r);return t}eSt.merge=DEc;function eLr(e){return $2t(e)?e.slice():e}function FWi(e,t,r=0,n){let a;if(!(r>NEc)){if(r++,q2t(e)||q2t(t)||ZWi(t))a=eLr(t);else if($2t(e)){if(a=e.slice(),$2t(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(GWi(e,f,n)||GWi(t,f,n))delete a[f];else{if(BKe(C)&&BKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=FWi(a[f],I,r,n)}}}}else a=t;return a}}function GWi(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function kEc(e,t){return!(!(0,xWi.isPlainObject)(e)||!(0,xWi.isPlainObject)(t))}});var VWi=H(wDe=>{"use strict";Object.defineProperty(wDe,"__esModule",{value:!0});wDe.callWithTimeout=wDe.TimeoutError=void 0;var tSt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};wDe.TimeoutError=tSt;function xEc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new tSt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}wDe.callWithTimeout=xEc});var WWi=H(TDe=>{"use strict";Object.defineProperty(TDe,"__esModule",{value:!0});TDe.isUrlIgnored=TDe.urlMatches=void 0;function PWi(e,t){return typeof t=="string"?e===t:!!e.match(t)}TDe.urlMatches=PWi;function GEc(e,t){if(!t)return!1;for(let r of t)if(PWi(e,r))return!0;return!1}TDe.isUrlIgnored=GEc});var OWi=H(rSt=>{"use strict";Object.defineProperty(rSt,"__esModule",{value:!0});rSt.isWrapped=void 0;function FEc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}rSt.isWrapped=FEc});var MWi=H(nSt=>{"use strict";Object.defineProperty(nSt,"__esModule",{value:!0});nSt.Deferred=void 0;var tLr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};nSt.Deferred=tLr});var HWi=H(iSt=>{"use strict";Object.defineProperty(iSt,"__esModule",{value:!0});iSt.BindOnceFuture=void 0;var ZEc=MWi(),rLr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new ZEc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};iSt.BindOnceFuture=rLr});var QWi=H(sSt=>{"use strict";Object.defineProperty(sSt,"__esModule",{value:!0});sSt._export=void 0;var YWi=(GI(),vi(xI)),LEc=yKe();function VEc(e,t){return new Promise(r=>{YWi.context.with((0,LEc.suppressTracing)(YWi.context.active()),()=>{e.export(t,n=>{r(n)})})})}sSt._export=VEc});var AH=H(vm=>{"use strict";var PEc=vm&&vm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ab=vm&&vm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&PEc(t,e,r)};Object.defineProperty(vm,"__esModule",{value:!0});vm.internal=vm.baggageUtils=void 0;ab(PPi(),vm);ab(WPi(),vm);ab(QPi(),vm);ab(DZr(),vm);ab(NZr(),vm);ab(lWi(),vm);ab(gWi(),vm);ab(AWi(),vm);ab(P2t(),vm);vm.baggageUtils=vZr();ab(ZZr(),vm);ab(pWi(),vm);ab(yWi(),vm);ab(EWi(),vm);ab(SWi(),vm);ab(JZr(),vm);ab(KZr(),vm);ab(BWi(),vm);ab(wWi(),vm);ab(yKe(),vm);ab(HZr(),vm);ab(GZr(),vm);ab(LWi(),vm);ab(kZr(),vm);ab(VWi(),vm);ab(WWi(),vm);ab(OWi(),vm);ab(HWi(),vm);ab(P2t(),vm);var WEc=QWi();vm.internal={_export:WEc._export}});var XWi=H(oSt=>{"use strict";Object.defineProperty(oSt,"__esModule",{value:!0});oSt.defaultServiceName=void 0;function OEc(){return`unknown_service:${process.argv0}`}oSt.defaultServiceName=OEc});var nLr=H(RDe=>{"use strict";Object.defineProperty(RDe,"__esModule",{value:!0});RDe.normalizeType=RDe.normalizeArch=void 0;var MEc=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};RDe.normalizeArch=MEc;var HEc=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};RDe.normalizeType=HEc});var cSt=H(aSt=>{"use strict";Object.defineProperty(aSt,"__esModule",{value:!0});aSt.execAsync=void 0;var YEc=wt("child_process"),QEc=wt("util");aSt.execAsync=QEc.promisify(YEc.exec)});var JWi=H(lSt=>{"use strict";Object.defineProperty(lSt,"__esModule",{value:!0});lSt.getMachineId=void 0;var XEc=cSt(),JEc=(GI(),vi(xI));async function UEc(){try{let t=(await(0,XEc.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find(n=>n.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){JEc.diag.debug(`error reading machine id: ${e}`)}return""}lSt.getMachineId=UEc});var UWi=H(uSt=>{"use strict";Object.defineProperty(uSt,"__esModule",{value:!0});uSt.getMachineId=void 0;var KEc=wt("fs"),jEc=(GI(),vi(xI));async function zEc(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await KEc.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){jEc.diag.debug(`error reading machine id: ${r}`)}return""}uSt.getMachineId=zEc});var jWi=H(gSt=>{"use strict";Object.defineProperty(gSt,"__esModule",{value:!0});gSt.getMachineId=void 0;var qEc=wt("fs"),$Ec=cSt(),KWi=(GI(),vi(xI));async function e1c(){try{return(await qEc.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){KWi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,$Ec.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){KWi.diag.debug(`error reading machine id: ${e}`)}return""}gSt.getMachineId=e1c});var qWi=H(ASt=>{"use strict";Object.defineProperty(ASt,"__esModule",{value:!0});ASt.getMachineId=void 0;var zWi=wt("process"),t1c=cSt(),r1c=(GI(),vi(xI));async function n1c(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";zWi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in zWi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let n=(await(0,t1c.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(n.length===2)return n[1].trim()}catch(r){r1c.diag.debug(`error reading machine id: ${r}`)}return""}ASt.getMachineId=n1c});var $Wi=H(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});dSt.getMachineId=void 0;var i1c=(GI(),vi(xI));async function s1c(){return i1c.diag.debug("could not read machine-id: unsupported platform"),""}dSt.getMachineId=s1c});var eOi=H(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.getMachineId=void 0;var o1c=wt("process"),NDe;Kee.getMachineId=NDe;switch(o1c.platform){case"darwin":Kee.getMachineId=NDe=JWi().getMachineId;break;case"linux":Kee.getMachineId=NDe=UWi().getMachineId;break;case"freebsd":Kee.getMachineId=NDe=jWi().getMachineId;break;case"win32":Kee.getMachineId=NDe=qWi().getMachineId;break;default:Kee.getMachineId=NDe=$Wi().getMachineId}});var oLr=H(pSt=>{"use strict";Object.defineProperty(pSt,"__esModule",{value:!0});pSt.hostDetectorSync=void 0;var iLr=Hce(),a1c=WCe(),tOi=wt("os"),c1c=nLr(),l1c=eOi(),sLr=class{detect(t){let r={[iLr.SemanticResourceAttributes.HOST_NAME]:(0,tOi.hostname)(),[iLr.SemanticResourceAttributes.HOST_ARCH]:(0,c1c.normalizeArch)((0,tOi.arch)())};return new a1c.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,l1c.getMachineId)().then(t=>{let r={};return t&&(r[iLr.SemanticResourceAttributes.HOST_ID]=t),r})}};pSt.hostDetectorSync=new sLr});var rOi=H(fSt=>{"use strict";Object.defineProperty(fSt,"__esModule",{value:!0});fSt.hostDetector=void 0;var u1c=oLr(),aLr=class{detect(t){return Promise.resolve(u1c.hostDetectorSync.detect(t))}};fSt.hostDetector=new aLr});var lLr=H(ISt=>{"use strict";Object.defineProperty(ISt,"__esModule",{value:!0});ISt.osDetectorSync=void 0;var nOi=Hce(),g1c=WCe(),iOi=wt("os"),A1c=nLr(),cLr=class{detect(t){let r={[nOi.SemanticResourceAttributes.OS_TYPE]:(0,A1c.normalizeType)((0,iOi.platform)()),[nOi.SemanticResourceAttributes.OS_VERSION]:(0,iOi.release)()};return new g1c.Resource(r)}};ISt.osDetectorSync=new cLr});var sOi=H(hSt=>{"use strict";Object.defineProperty(hSt,"__esModule",{value:!0});hSt.osDetector=void 0;var d1c=lLr(),uLr=class{detect(t){return Promise.resolve(d1c.osDetectorSync.detect(t))}};hSt.osDetector=new uLr});var ALr=H(mSt=>{"use strict";Object.defineProperty(mSt,"__esModule",{value:!0});mSt.processDetectorSync=void 0;var p1c=(GI(),vi(xI)),jee=Hce(),f1c=WCe(),I1c=wt("os"),gLr=class{detect(t){let r={[jee.SemanticResourceAttributes.PROCESS_PID]:process.pid,[jee.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[jee.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[jee.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[jee.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[jee.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[jee.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[jee.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let n=I1c.userInfo();r[jee.SemanticResourceAttributes.PROCESS_OWNER]=n.username}catch(n){p1c.diag.debug(`error obtaining process owner: ${n}`)}return new f1c.Resource(r)}};mSt.processDetectorSync=new gLr});var oOi=H(CSt=>{"use strict";Object.defineProperty(CSt,"__esModule",{value:!0});CSt.processDetector=void 0;var h1c=ALr(),dLr=class{detect(t){return Promise.resolve(h1c.processDetectorSync.detect(t))}};CSt.processDetector=new dLr});var aOi=H(SO=>{"use strict";var m1c=SO&&SO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OCe=SO&&SO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&m1c(t,e,r)};Object.defineProperty(SO,"__esModule",{value:!0});OCe(XWi(),SO);OCe(rOi(),SO);OCe(sOi(),SO);OCe(oLr(),SO);OCe(lLr(),SO);OCe(oOi(),SO);OCe(ALr(),SO)});var pLr=H(MCe=>{"use strict";var C1c=MCe&&MCe.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_1c=MCe&&MCe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&C1c(t,e,r)};Object.defineProperty(MCe,"__esModule",{value:!0});_1c(aOi(),MCe)});var WCe=H(_St=>{"use strict";Object.defineProperty(_St,"__esModule",{value:!0});_St.Resource=void 0;var cOi=(GI(),vi(xI)),HCe=Hce(),fLr=AH(),y1c=pLr(),wKe=class e{constructor(t,r){var n;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(n=this._attributes)!==null&&n!==void 0?n:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(cOi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[HCe.SemanticResourceAttributes.SERVICE_NAME]:(0,y1c.defaultServiceName)(),[HCe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:fLr.SDK_INFO[HCe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[HCe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:fLr.SDK_INFO[HCe.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[HCe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:fLr.SDK_INFO[HCe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&cOi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let n=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(n);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,l])=>{var A;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(A=t._syncAttributes)!==null&&A!==void 0?A:t.attributes),l)});return new e(n,a)}};_St.Resource=wKe;wKe.EMPTY=new wKe({})});var uOi=H(lOi=>{"use strict";Object.defineProperty(lOi,"__esModule",{value:!0})});var AOi=H(gOi=>{"use strict";Object.defineProperty(gOi,"__esModule",{value:!0})});var pOi=H(dOi=>{"use strict";Object.defineProperty(dOi,"__esModule",{value:!0})});var fOi=H(ySt=>{"use strict";Object.defineProperty(ySt,"__esModule",{value:!0});ySt.browserDetector=void 0;var b1c=bSt(),ILr=class{detect(t){return Promise.resolve(b1c.browserDetectorSync.detect(t))}};ySt.browserDetector=new ILr});var mLr=H(ESt=>{"use strict";Object.defineProperty(ESt,"__esModule",{value:!0});ESt.envDetectorSync=void 0;var E1c=(GI(),vi(xI)),S1c=AH(),v1c=Hce(),B1c=WCe(),hLr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},n=(0,S1c.getEnv)(),a=n.OTEL_RESOURCE_ATTRIBUTES,o=n.OTEL_SERVICE_NAME;if(a)try{let l=this._parseResourceAttributes(a);Object.assign(r,l)}catch(l){E1c.diag.debug(`EnvDetector failed: ${l.message}`)}return o&&(r[v1c.SemanticResourceAttributes.SERVICE_NAME]=o),new B1c.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},n=t.split(this._COMMA_SEPARATOR,-1);for(let a of n){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[l,A]=o;if(l=l.trim(),A=A.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(l))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(A))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[l]=decodeURIComponent(A)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};ESt.envDetectorSync=new hLr});var IOi=H(SSt=>{"use strict";Object.defineProperty(SSt,"__esModule",{value:!0});SSt.envDetector=void 0;var w1c=mLr(),CLr=class{detect(t){return Promise.resolve(w1c.envDetectorSync.detect(t))}};SSt.envDetector=new CLr});var hOi=H(BSt=>{"use strict";Object.defineProperty(BSt,"__esModule",{value:!0});BSt.browserDetectorSync=void 0;var vSt=Hce(),_Lr=bSt(),T1c=(GI(),vi(xI)),yLr=class{detect(t){if(!(typeof navigator<"u"))return _Lr.Resource.empty();let n={[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(n,t)}_getResourceAttributes(t,r){return t[vSt.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(T1c.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),_Lr.Resource.empty()):new _Lr.Resource(Object.assign({},t))}};BSt.browserDetectorSync=new yLr});var mOi=H(Dj=>{"use strict";var R1c=Dj&&Dj.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wSt=Dj&&Dj.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&R1c(t,e,r)};Object.defineProperty(Dj,"__esModule",{value:!0});wSt(fOi(),Dj);wSt(IOi(),Dj);wSt(hOi(),Dj);wSt(mLr(),Dj)});var COi=H(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.isPromiseLike=void 0;var N1c=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";TSt.isPromiseLike=N1c});var yOi=H(kDe=>{"use strict";Object.defineProperty(kDe,"__esModule",{value:!0});kDe.detectResourcesSync=kDe.detectResources=void 0;var TKe=WCe(),DDe=(GI(),vi(xI)),D1c=COi(),k1c=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let n=await r.detect(e);return DDe.diag.debug(`${r.constructor.name} found resource.`,n),n}catch(n){return DDe.diag.debug(`${r.constructor.name} failed: ${n.message}`),TKe.Resource.empty()}}));return _Oi(t),t.reduce((r,n)=>r.merge(n),TKe.Resource.empty())};kDe.detectResources=k1c;var x1c=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),l;if((0,D1c.isPromiseLike)(o)){let A=async()=>(await o).attributes;l=new TKe.Resource({},A())}else l=o;return l.waitForAsyncAttributes?l.waitForAsyncAttributes().then(()=>DDe.diag.debug(`${a.constructor.name} found resource.`,l)):DDe.diag.debug(`${a.constructor.name} found resource.`,l),l}catch(o){return DDe.diag.error(`${a.constructor.name} failed: ${o.message}`),TKe.Resource.empty()}}),n=r.reduce((a,o)=>a.merge(o),TKe.Resource.empty());return n.waitForAsyncAttributes&&n.waitForAsyncAttributes().then(()=>{_Oi(r)}),n};kDe.detectResourcesSync=x1c;var _Oi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);DDe.diag.verbose(r)}})}});var bSt=H(vO=>{"use strict";var G1c=vO&&vO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YCe=vO&&vO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&G1c(t,e,r)};Object.defineProperty(vO,"__esModule",{value:!0});YCe(WCe(),vO);YCe(uOi(),vO);YCe(pLr(),vO);YCe(AOi(),vO);YCe(pOi(),vO);YCe(mOi(),vO);YCe(yOi(),vO)});var SLr=H(RSt=>{"use strict";Object.defineProperty(RSt,"__esModule",{value:!0});RSt.LogRecord=void 0;var F1c=(GI(),vi(xI)),RKe=(GI(),vi(xI)),bLr=AH(),ELr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:n,observedTimestamp:a,severityNumber:o,severityText:l,body:A,attributes:f={},context:I}=r,C=Date.now();if(this.hrTime=(0,bLr.timeInputToHrTime)(n??C),this.hrTimeObserved=(0,bLr.timeInputToHrTime)(a??C),I){let b=RKe.trace.getSpanContext(I);b&&RKe.isSpanContextValid(b)&&(this.spanContext=b)}this.severityNumber=o,this.severityText=l,this.body=A,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(RKe.diag.warn(`Invalid attribute key: ${t}`),this):(0,bLr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(RKe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,n]of Object.entries(t))this.setAttribute(r,n);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(RKe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(n=>typeof n=="string"?this._truncateToLimitUtil(n,r):n):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&F1c.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};RSt.LogRecord=ELr});var vLr=H(kj=>{"use strict";Object.defineProperty(kj,"__esModule",{value:!0});kj.DEFAULT_EVENT_DOMAIN=kj.mergeConfig=kj.reconfigureLimits=kj.loadDefaultConfig=void 0;var NKe=AH();function bOi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,NKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,NKe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}kj.loadDefaultConfig=bOi;function Z1c(e){var t,r,n,a,o,l,A,f;let I=Object.assign({},e.logRecordLimits),C=(0,NKe.getEnvWithoutDefaults)();return I.attributeCountLimit=(a=(n=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:C.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&n!==void 0?n:C.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:NKe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,I.attributeValueLengthLimit=(f=(A=(l=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&l!==void 0?l:C.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&A!==void 0?A:C.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:NKe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:I})}kj.reconfigureLimits=Z1c;function L1c(e){let t=bOi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}kj.mergeConfig=L1c;kj.DEFAULT_EVENT_DOMAIN="default"});var wLr=H(NSt=>{"use strict";Object.defineProperty(NSt,"__esModule",{value:!0});NSt.Logger=void 0;var V1c=(GI(),vi(xI)),P1c=SLr(),W1c=vLr(),BLr=class{constructor(t,r,n){this.instrumentationScope=t,this._loggerProvider=n,this._loggerConfig=(0,W1c.mergeConfig)(r),this.resource=n.resource}emit(t){let r=t.context||V1c.context.active(),n=new P1c.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(n,r),n.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};NSt.Logger=BLr});var EOi=H(DSt=>{"use strict";Object.defineProperty(DSt,"__esModule",{value:!0});DSt.MultiLogRecordProcessor=void 0;var O1c=AH(),TLr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,O1c.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};DSt.MultiLogRecordProcessor=TLr});var NLr=H(kSt=>{"use strict";Object.defineProperty(kSt,"__esModule",{value:!0});kSt.NoopLogRecordProcessor=void 0;var RLr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};kSt.NoopLogRecordProcessor=RLr});var TOi=H(QCe=>{"use strict";Object.defineProperty(QCe,"__esModule",{value:!0});QCe.LoggerProvider=QCe.DEFAULT_LOGGER_NAME=void 0;var DKe=(GI(),vi(xI)),M1c=yDe(),SOi=bSt(),vOi=AH(),H1c=wLr(),BOi=vLr(),wOi=EOi(),Y1c=NLr();QCe.DEFAULT_LOGGER_NAME="unknown";var DLr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=SOi.Resource.empty(),logRecordLimits:n,forceFlushTimeoutMillis:a}=(0,vOi.merge)({},(0,BOi.loadDefaultConfig)(),(0,BOi.reconfigureLimits)(t));this.resource=SOi.Resource.default().merge(r),this._config={logRecordLimits:n,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new vOi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new wOi.MultiLogRecordProcessor([new Y1c.NoopLogRecordProcessor],a)}getLogger(t,r,n){if(this._shutdownOnce.isCalled)return DKe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),M1c.NOOP_LOGGER;t||DKe.diag.warn("Logger requested without instrumentation scope name.");let a=t||QCe.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${n?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new H1c.Logger({name:a,version:r,schemaUrl:n?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>DKe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new wOi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(DKe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(DKe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};QCe.LoggerProvider=DLr});var ROi=H(xSt=>{"use strict";Object.defineProperty(xSt,"__esModule",{value:!0});xSt.ConsoleLogRecordExporter=void 0;var Q1c=AH(),X1c=AH(),kLr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,n,a;return{timestamp:(0,Q1c.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(n=t.spanContext)===null||n===void 0?void 0:n.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let n of t)console.dir(this._exportInfo(n),{depth:3});r?.({code:X1c.ExportResultCode.SUCCESS})}};xSt.ConsoleLogRecordExporter=kLr});var NOi=H(GSt=>{"use strict";Object.defineProperty(GSt,"__esModule",{value:!0});GSt.SimpleLogRecordProcessor=void 0;var xLr=AH(),GLr=class{constructor(t){this._exporter=t,this._shutdownOnce=new xLr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var n;if(r.code!==xLr.ExportResultCode.SUCCESS){(0,xLr.globalErrorHandler)((n=r.error)!==null&&n!==void 0?n:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};GSt.SimpleLogRecordProcessor=GLr});var kOi=H(FSt=>{"use strict";Object.defineProperty(FSt,"__esModule",{value:!0});FSt.InMemoryLogRecordExporter=void 0;var DOi=AH(),FLr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:DOi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:DOi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};FSt.InMemoryLogRecordExporter=FLr});var xOi=H(ZSt=>{"use strict";Object.defineProperty(ZSt,"__esModule",{value:!0});ZSt.BatchLogRecordProcessorBase=void 0;var J1c=(GI(),vi(xI)),xDe=AH(),ZLr=class{constructor(t,r){var n,a,o,l;this._exporter=t,this._finishedLogRecords=[];let A=(0,xDe.getEnv)();this._maxExportBatchSize=(n=r?.maxExportBatchSize)!==null&&n!==void 0?n:A.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:A.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:A.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(l=r?.exportTimeoutMillis)!==null&&l!==void 0?l:A.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new xDe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(J1c.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let n=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,xDe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,xDe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,xDe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,n)=>{this._exporter.export(t,a=>{var o;if(a.code!==xDe.ExportResultCode.SUCCESS){n((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};ZSt.BatchLogRecordProcessorBase=ZLr});var GOi=H(LSt=>{"use strict";Object.defineProperty(LSt,"__esModule",{value:!0});LSt.BatchLogRecordProcessor=void 0;var U1c=xOi(),LLr=class extends U1c.BatchLogRecordProcessorBase{onShutdown(){}};LSt.BatchLogRecordProcessor=LLr});var FOi=H(VSt=>{"use strict";Object.defineProperty(VSt,"__esModule",{value:!0});VSt.BatchLogRecordProcessor=void 0;var K1c=GOi();Object.defineProperty(VSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return K1c.BatchLogRecordProcessor}})});var ZOi=H(PSt=>{"use strict";Object.defineProperty(PSt,"__esModule",{value:!0});PSt.BatchLogRecordProcessor=void 0;var j1c=FOi();Object.defineProperty(PSt,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return j1c.BatchLogRecordProcessor}})});var kKe=H(uD=>{"use strict";Object.defineProperty(uD,"__esModule",{value:!0});uD.BatchLogRecordProcessor=uD.InMemoryLogRecordExporter=uD.SimpleLogRecordProcessor=uD.ConsoleLogRecordExporter=uD.NoopLogRecordProcessor=uD.LogRecord=uD.Logger=uD.LoggerProvider=void 0;var z1c=TOi();Object.defineProperty(uD,"LoggerProvider",{enumerable:!0,get:function(){return z1c.LoggerProvider}});var q1c=wLr();Object.defineProperty(uD,"Logger",{enumerable:!0,get:function(){return q1c.Logger}});var $1c=SLr();Object.defineProperty(uD,"LogRecord",{enumerable:!0,get:function(){return $1c.LogRecord}});var e2c=NLr();Object.defineProperty(uD,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return e2c.NoopLogRecordProcessor}});var t2c=ROi();Object.defineProperty(uD,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return t2c.ConsoleLogRecordExporter}});var r2c=NOi();Object.defineProperty(uD,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return r2c.SimpleLogRecordProcessor}});var n2c=kOi();Object.defineProperty(uD,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return n2c.InMemoryLogRecordExporter}});var i2c=ZOi();Object.defineProperty(uD,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return i2c.BatchLogRecordProcessor}})});var xKe=H(Jce=>{"use strict";Object.defineProperty(Jce,"__esModule",{value:!0});Jce.isTracingSuppressed=Jce.unsuppressTracing=Jce.suppressTracing=void 0;var s2c=(GI(),vi(xI)),PLr=(0,s2c.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function o2c(e){return e.setValue(PLr,!0)}Jce.suppressTracing=o2c;function a2c(e){return e.deleteValue(PLr)}Jce.unsuppressTracing=a2c;function c2c(e){return e.getValue(PLr)===!0}Jce.isTracingSuppressed=c2c});var WLr=H(MG=>{"use strict";Object.defineProperty(MG,"__esModule",{value:!0});MG.BAGGAGE_MAX_TOTAL_LENGTH=MG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=MG.BAGGAGE_MAX_NAME_VALUE_PAIRS=MG.BAGGAGE_HEADER=MG.BAGGAGE_ITEMS_SEPARATOR=MG.BAGGAGE_PROPERTIES_SEPARATOR=MG.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;MG.BAGGAGE_KEY_PAIR_SEPARATOR="=";MG.BAGGAGE_PROPERTIES_SEPARATOR=";";MG.BAGGAGE_ITEMS_SEPARATOR=",";MG.BAGGAGE_HEADER="baggage";MG.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;MG.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;MG.BAGGAGE_MAX_TOTAL_LENGTH=8192});var OLr=H(xj=>{"use strict";Object.defineProperty(xj,"__esModule",{value:!0});xj.parseKeyPairsIntoRecord=xj.parsePairKeyValue=xj.getKeyPairs=xj.serializeKeyPairs=void 0;var l2c=(GI(),vi(xI)),XCe=WLr();function u2c(e){return e.reduce((t,r)=>{let n=`${t}${t!==""?XCe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return n.length>XCe.BAGGAGE_MAX_TOTAL_LENGTH?t:n},"")}xj.serializeKeyPairs=u2c;function g2c(e){return e.getAllEntries().map(([t,r])=>{let n=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(n+=XCe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),n})}xj.getKeyPairs=g2c;function LOi(e){let t=e.split(XCe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let n=r.indexOf(XCe.BAGGAGE_KEY_PAIR_SEPARATOR);if(n<=0)return;let a=decodeURIComponent(r.substring(0,n).trim()),o=decodeURIComponent(r.substring(n+1).trim()),l;return t.length>0&&(l=(0,l2c.baggageEntryMetadataFromString)(t.join(XCe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:l}}xj.parsePairKeyValue=LOi;function A2c(e){return typeof e!="string"||e.length===0?{}:e.split(XCe.BAGGAGE_ITEMS_SEPARATOR).map(t=>LOi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}xj.parseKeyPairsIntoRecord=A2c});var VOi=H(WSt=>{"use strict";Object.defineProperty(WSt,"__esModule",{value:!0});WSt.W3CBaggagePropagator=void 0;var MLr=(GI(),vi(xI)),d2c=xKe(),JCe=WLr(),HLr=OLr(),YLr=class{inject(t,r,n){let a=MLr.propagation.getBaggage(t);if(!a||(0,d2c.isTracingSuppressed)(t))return;let o=(0,HLr.getKeyPairs)(a).filter(A=>A.length<=JCe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,JCe.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,HLr.serializeKeyPairs)(o);l.length>0&&n.set(r,JCe.BAGGAGE_HEADER,l)}extract(t,r,n){let a=n.get(r,JCe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(JCe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let l={};return o.length===0||(o.split(JCe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let I=(0,HLr.parsePairKeyValue)(f);if(I){let C={value:I.value};I.metadata&&(C.metadata=I.metadata),l[I.key]=C}}),Object.entries(l).length===0)?t:MLr.propagation.setBaggage(t,MLr.propagation.createBaggage(l))}fields(){return[JCe.BAGGAGE_HEADER]}};WSt.W3CBaggagePropagator=YLr});var POi=H(OSt=>{"use strict";Object.defineProperty(OSt,"__esModule",{value:!0});OSt.AnchoredClock=void 0;var QLr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};OSt.AnchoredClock=QLr});var YOi=H(Uce=>{"use strict";Object.defineProperty(Uce,"__esModule",{value:!0});Uce.isAttributeValue=Uce.isAttributeKey=Uce.sanitizeAttributes=void 0;var WOi=(GI(),vi(xI));function p2c(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,n]of Object.entries(e)){if(!OOi(r)){WOi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!MOi(n)){WOi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(n)?t[r]=n.slice():t[r]=n}return t}Uce.sanitizeAttributes=p2c;function OOi(e){return typeof e=="string"&&e.length>0}Uce.isAttributeKey=OOi;function MOi(e){return e==null?!0:Array.isArray(e)?f2c(e):HOi(e)}Uce.isAttributeValue=MOi;function f2c(e){let t;for(let r of e)if(r!=null){if(!t){if(HOi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function HOi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var XLr=H(MSt=>{"use strict";Object.defineProperty(MSt,"__esModule",{value:!0});MSt.loggingErrorHandler=void 0;var I2c=(GI(),vi(xI));function h2c(){return e=>{I2c.diag.error(m2c(e))}}MSt.loggingErrorHandler=h2c;function m2c(e){return typeof e=="string"?e:JSON.stringify(C2c(e))}function C2c(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(n=>{if(t[n])return;let a=r[n];a&&(t[n]=String(a))}),r=Object.getPrototypeOf(r);return t}});var JLr=H(GDe=>{"use strict";Object.defineProperty(GDe,"__esModule",{value:!0});GDe.globalErrorHandler=GDe.setGlobalErrorHandler=void 0;var _2c=XLr(),QOi=(0,_2c.loggingErrorHandler)();function y2c(e){QOi=e}GDe.setGlobalErrorHandler=y2c;function b2c(e){try{QOi(e)}catch{}}GDe.globalErrorHandler=b2c});var ULr=H(GKe=>{"use strict";Object.defineProperty(GKe,"__esModule",{value:!0});GKe.TracesSamplerValues=void 0;var E2c;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(E2c=GKe.TracesSamplerValues||(GKe.TracesSamplerValues={}))});var KLr=H(LS=>{"use strict";Object.defineProperty(LS,"__esModule",{value:!0});LS.parseEnvironment=LS.DEFAULT_ENVIRONMENT=LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Kce=(GI(),vi(xI)),S2c=ULr(),v2c=",",B2c=["OTEL_SDK_DISABLED"];function w2c(e){return B2c.indexOf(e)>-1}var T2c=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function R2c(e){return T2c.indexOf(e)>-1}var N2c=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function D2c(e){return N2c.indexOf(e)>-1}LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;LS.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Kce.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:LS.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:LS.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:LS.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:LS.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:S2c.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function k2c(e,t,r){if(typeof r[e]>"u")return;let n=String(r[e]);t[e]=n.toLowerCase()==="true"}function x2c(e,t,r,n=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function G2c(e,t,r,n=v2c){let a=r[e];typeof a=="string"&&(t[e]=a.split(n).map(o=>o.trim()))}var F2c={ALL:Kce.DiagLogLevel.ALL,VERBOSE:Kce.DiagLogLevel.VERBOSE,DEBUG:Kce.DiagLogLevel.DEBUG,INFO:Kce.DiagLogLevel.INFO,WARN:Kce.DiagLogLevel.WARN,ERROR:Kce.DiagLogLevel.ERROR,NONE:Kce.DiagLogLevel.NONE};function Z2c(e,t,r){let n=r[e];if(typeof n=="string"){let a=F2c[n.toUpperCase()];a!=null&&(t[e]=a)}}function L2c(e){let t={};for(let r in LS.DEFAULT_ENVIRONMENT){let n=r;switch(n){case"OTEL_LOG_LEVEL":Z2c(n,t,e);break;default:if(w2c(n))k2c(n,t,e);else if(R2c(n))x2c(n,t,e);else if(D2c(n))G2c(n,t,e);else{let a=e[n];typeof a<"u"&&a!==null&&(t[n]=String(a))}}}return t}LS.parseEnvironment=L2c});var XOi=H(FDe=>{"use strict";Object.defineProperty(FDe,"__esModule",{value:!0});FDe.getEnvWithoutDefaults=FDe.getEnv=void 0;var jLr=KLr();function V2c(){let e=(0,jLr.parseEnvironment)(process.env);return Object.assign({},jLr.DEFAULT_ENVIRONMENT,e)}FDe.getEnv=V2c;function P2c(){return(0,jLr.parseEnvironment)(process.env)}FDe.getEnvWithoutDefaults=P2c});var JOi=H(HSt=>{"use strict";Object.defineProperty(HSt,"__esModule",{value:!0});HSt._globalThis=void 0;HSt._globalThis=typeof globalThis=="object"?globalThis:global});var zLr=H(YSt=>{"use strict";Object.defineProperty(YSt,"__esModule",{value:!0});YSt.hexToBinary=void 0;function UOi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function W2c(e){let t=new Uint8Array(e.length/2),r=0;for(let n=0;n{"use strict";Object.defineProperty(QSt,"__esModule",{value:!0});QSt.hexToBase64=void 0;var O2c=zLr();function M2c(e){return Buffer.from((0,O2c.hexToBinary)(e)).toString("base64")}QSt.hexToBase64=M2c});var qOi=H(JSt=>{"use strict";Object.defineProperty(JSt,"__esModule",{value:!0});JSt.RandomIdGenerator=void 0;var H2c=8,zOi=16,qLr=class{constructor(){this.generateTraceId=jOi(zOi),this.generateSpanId=jOi(H2c)}};JSt.RandomIdGenerator=qLr;var XSt=Buffer.allocUnsafe(zOi);function jOi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(XSt[e-1]=1);return XSt.toString("hex",0,e)}}});var $Oi=H(USt=>{"use strict";Object.defineProperty(USt,"__esModule",{value:!0});USt.otperformance=void 0;var Y2c=wt("perf_hooks");USt.otperformance=Y2c.performance});var $Lr=H(KSt=>{"use strict";Object.defineProperty(KSt,"__esModule",{value:!0});KSt.VERSION=void 0;KSt.VERSION="1.27.0"});function iw(e){for(var t={},r=e.length,n=0;n{});var e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,P3i,W3i,O3i,M3i,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,e5i,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,b5i,E5i,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,P5i,W5i,O5i,M5i,H5i,Y5i,Q5i,X5i,J5i,U5i,K5i,j5i,z5i,q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi,Q2c,X2c,J2c,U2c,K2c,j2c,z2c,q2c,$2c,eSc,tSc,rSc,nSc,iSc,sSc,oSc,aSc,cSc,lSc,uSc,gSc,ASc,dSc,pSc,fSc,ISc,hSc,mSc,CSc,_Sc,ySc,bSc,ESc,SSc,vSc,BSc,wSc,TSc,RSc,NSc,DSc,kSc,xSc,GSc,FSc,ZSc,LSc,VSc,PSc,WSc,OSc,MSc,HSc,YSc,QSc,XSc,JSc,USc,KSc,jSc,zSc,qSc,$Sc,evc,tvc,rvc,nvc,ivc,svc,ovc,avc,cvc,lvc,uvc,gvc,Avc,dvc,pvc,fvc,Ivc,hvc,mvc,Cvc,_vc,yvc,bvc,Evc,Svc,vvc,Bvc,wvc,Tvc,Rvc,Nvc,Dvc,kvc,xvc,Gvc,Fvc,Zvc,Lvc,Vvc,Pvc,Wvc,Ovc,Mvc,Hvc,Yvc,Qvc,Xvc,Jvc,Uvc,Kvc,jvc,zvc,qvc,$vc,eBc,tBc,rBc,nBc,iBc,sBc,oBc,aBc,cBc,lBc,uBc,gBc,_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,PMi,WMi,OMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi,ABc,dBc,pBc,fBc,IBc,hBc,mBc,CBc,_Bc,yBc,bBc,EBc,SBc,vBc,BBc,wBc,TBc,RBc,NBc,DBc,kBc,xBc,GBc,FBc,ZBc,LBc,VBc,PBc,WBc,OBc,MBc,HBc,YBc,QBc,XBc,JBc,UBc,KBc,jBc,zBc,qBc,$Bc,ewc,twc,rwc,nwc,iwc,swc,dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi,owc,awc,cwc,lwc,uwc,gwc,Awc,dwc,pwc,fwc,Iwc,hwc,SHi,vHi,BHi,wHi,THi,mwc,Cwc,_wc,ywc,bwc,Ewc,RHi,NHi,DHi,Swc,vwc,Bwc,wwc,kHi,xHi,GHi,FHi,Twc,Rwc,Nwc,Dwc,kwc,ZHi,LHi,VHi,PHi,WHi,OHi,MHi,xwc,Gwc,Fwc,Zwc,Lwc,Vwc,Pwc,Wwc,HHi,YHi,QHi,XHi,JHi,Owc,Mwc,Hwc,Ywc,Qwc,Xwc,UHi,KHi,jHi,zHi,qHi,$Hi,eYi,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,AYi,dYi,pYi,Jwc,Uwc,Kwc,jwc,zwc,qwc,$wc,eTc,tTc,rTc,nTc,iTc,sTc,oTc,aTc,cTc,lTc,uTc,gTc,ATc,dTc,pTc,fYi,IYi,hYi,mYi,CYi,fTc,ITc,hTc,mTc,CTc,_Tc,_Yi,yYi,yTc,bTc,ETc,bYi,EYi,STc,vTc,BTc,SYi,vYi,BYi,wYi,TYi,RYi,NYi,DYi,kYi,xYi,GYi,FYi,ZYi,LYi,VYi,PYi,WYi,wTc,TTc,RTc,NTc,DTc,kTc,xTc,GTc,FTc,ZTc,LTc,VTc,PTc,WTc,OTc,MTc,HTc,YTc,OYi,MYi,QTc,XTc,JTc,HYi=bc(()=>{e9r();e3i="aws.lambda.invoked_arn",t3i="db.system",r3i="db.connection_string",n3i="db.user",i3i="db.jdbc.driver_classname",s3i="db.name",o3i="db.statement",a3i="db.operation",c3i="db.mssql.instance_name",l3i="db.cassandra.keyspace",u3i="db.cassandra.page_size",g3i="db.cassandra.consistency_level",A3i="db.cassandra.table",d3i="db.cassandra.idempotence",p3i="db.cassandra.speculative_execution_count",f3i="db.cassandra.coordinator.id",I3i="db.cassandra.coordinator.dc",h3i="db.hbase.namespace",m3i="db.redis.database_index",C3i="db.mongodb.collection",_3i="db.sql.table",y3i="exception.type",b3i="exception.message",E3i="exception.stacktrace",S3i="exception.escaped",v3i="faas.trigger",B3i="faas.execution",w3i="faas.document.collection",T3i="faas.document.operation",R3i="faas.document.time",N3i="faas.document.name",D3i="faas.time",k3i="faas.cron",x3i="faas.coldstart",G3i="faas.invoked_name",F3i="faas.invoked_provider",Z3i="faas.invoked_region",L3i="net.transport",V3i="net.peer.ip",P3i="net.peer.port",W3i="net.peer.name",O3i="net.host.ip",M3i="net.host.port",H3i="net.host.name",Y3i="net.host.connection.type",Q3i="net.host.connection.subtype",X3i="net.host.carrier.name",J3i="net.host.carrier.mcc",U3i="net.host.carrier.mnc",K3i="net.host.carrier.icc",j3i="peer.service",z3i="enduser.id",q3i="enduser.role",$3i="enduser.scope",e5i="thread.id",t5i="thread.name",r5i="code.function",n5i="code.namespace",i5i="code.filepath",s5i="code.lineno",o5i="http.method",a5i="http.url",c5i="http.target",l5i="http.host",u5i="http.scheme",g5i="http.status_code",A5i="http.flavor",d5i="http.user_agent",p5i="http.request_content_length",f5i="http.request_content_length_uncompressed",I5i="http.response_content_length",h5i="http.response_content_length_uncompressed",m5i="http.server_name",C5i="http.route",_5i="http.client_ip",y5i="aws.dynamodb.table_names",b5i="aws.dynamodb.consumed_capacity",E5i="aws.dynamodb.item_collection_metrics",S5i="aws.dynamodb.provisioned_read_capacity",v5i="aws.dynamodb.provisioned_write_capacity",B5i="aws.dynamodb.consistent_read",w5i="aws.dynamodb.projection",T5i="aws.dynamodb.limit",R5i="aws.dynamodb.attributes_to_get",N5i="aws.dynamodb.index_name",D5i="aws.dynamodb.select",k5i="aws.dynamodb.global_secondary_indexes",x5i="aws.dynamodb.local_secondary_indexes",G5i="aws.dynamodb.exclusive_start_table",F5i="aws.dynamodb.table_count",Z5i="aws.dynamodb.scan_forward",L5i="aws.dynamodb.segment",V5i="aws.dynamodb.total_segments",P5i="aws.dynamodb.count",W5i="aws.dynamodb.scanned_count",O5i="aws.dynamodb.attribute_definitions",M5i="aws.dynamodb.global_secondary_index_updates",H5i="messaging.system",Y5i="messaging.destination",Q5i="messaging.destination_kind",X5i="messaging.temp_destination",J5i="messaging.protocol",U5i="messaging.protocol_version",K5i="messaging.url",j5i="messaging.message_id",z5i="messaging.conversation_id",q5i="messaging.message_payload_size_bytes",$5i="messaging.message_payload_compressed_size_bytes",eMi="messaging.operation",tMi="messaging.consumer_id",rMi="messaging.rabbitmq.routing_key",nMi="messaging.kafka.message_key",iMi="messaging.kafka.consumer_group",sMi="messaging.kafka.client_id",oMi="messaging.kafka.partition",aMi="messaging.kafka.tombstone",cMi="rpc.system",lMi="rpc.service",uMi="rpc.method",gMi="rpc.grpc.status_code",AMi="rpc.jsonrpc.version",dMi="rpc.jsonrpc.request_id",pMi="rpc.jsonrpc.error_code",fMi="rpc.jsonrpc.error_message",IMi="message.type",hMi="message.id",mMi="message.compressed_size",CMi="message.uncompressed_size",Q2c=e3i,X2c=t3i,J2c=r3i,U2c=n3i,K2c=i3i,j2c=s3i,z2c=o3i,q2c=a3i,$2c=c3i,eSc=l3i,tSc=u3i,rSc=g3i,nSc=A3i,iSc=d3i,sSc=p3i,oSc=f3i,aSc=I3i,cSc=h3i,lSc=m3i,uSc=C3i,gSc=_3i,ASc=y3i,dSc=b3i,pSc=E3i,fSc=S3i,ISc=v3i,hSc=B3i,mSc=w3i,CSc=T3i,_Sc=R3i,ySc=N3i,bSc=D3i,ESc=k3i,SSc=x3i,vSc=G3i,BSc=F3i,wSc=Z3i,TSc=L3i,RSc=V3i,NSc=P3i,DSc=W3i,kSc=O3i,xSc=M3i,GSc=H3i,FSc=Y3i,ZSc=Q3i,LSc=X3i,VSc=J3i,PSc=U3i,WSc=K3i,OSc=j3i,MSc=z3i,HSc=q3i,YSc=$3i,QSc=e5i,XSc=t5i,JSc=r5i,USc=n5i,KSc=i5i,jSc=s5i,zSc=o5i,qSc=a5i,$Sc=c5i,evc=l5i,tvc=u5i,rvc=g5i,nvc=A5i,ivc=d5i,svc=p5i,ovc=f5i,avc=I5i,cvc=h5i,lvc=m5i,uvc=C5i,gvc=_5i,Avc=y5i,dvc=b5i,pvc=E5i,fvc=S5i,Ivc=v5i,hvc=B5i,mvc=w5i,Cvc=T5i,_vc=R5i,yvc=N5i,bvc=D5i,Evc=k5i,Svc=x5i,vvc=G5i,Bvc=F5i,wvc=Z5i,Tvc=L5i,Rvc=V5i,Nvc=P5i,Dvc=W5i,kvc=O5i,xvc=M5i,Gvc=H5i,Fvc=Y5i,Zvc=Q5i,Lvc=X5i,Vvc=J5i,Pvc=U5i,Wvc=K5i,Ovc=j5i,Mvc=z5i,Hvc=q5i,Yvc=$5i,Qvc=eMi,Xvc=tMi,Jvc=rMi,Uvc=nMi,Kvc=iMi,jvc=sMi,zvc=oMi,qvc=aMi,$vc=cMi,eBc=lMi,tBc=uMi,rBc=gMi,nBc=AMi,iBc=dMi,sBc=pMi,oBc=fMi,aBc=IMi,cBc=hMi,lBc=mMi,uBc=CMi,gBc=iw([e3i,t3i,r3i,n3i,i3i,s3i,o3i,a3i,c3i,l3i,u3i,g3i,A3i,d3i,p3i,f3i,I3i,h3i,m3i,C3i,_3i,y3i,b3i,E3i,S3i,v3i,B3i,w3i,T3i,R3i,N3i,D3i,k3i,x3i,G3i,F3i,Z3i,L3i,V3i,P3i,W3i,O3i,M3i,H3i,Y3i,Q3i,X3i,J3i,U3i,K3i,j3i,z3i,q3i,$3i,e5i,t5i,r5i,n5i,i5i,s5i,o5i,a5i,c5i,l5i,u5i,g5i,A5i,d5i,p5i,f5i,I5i,h5i,m5i,C5i,_5i,y5i,b5i,E5i,S5i,v5i,B5i,w5i,T5i,R5i,N5i,D5i,k5i,x5i,G5i,F5i,Z5i,L5i,V5i,P5i,W5i,O5i,M5i,H5i,Y5i,Q5i,X5i,J5i,U5i,K5i,j5i,z5i,q5i,$5i,eMi,tMi,rMi,nMi,iMi,sMi,oMi,aMi,cMi,lMi,uMi,gMi,AMi,dMi,pMi,fMi,IMi,hMi,mMi,CMi]),_Mi="other_sql",yMi="mssql",bMi="mysql",EMi="oracle",SMi="db2",vMi="postgresql",BMi="redshift",wMi="hive",TMi="cloudscape",RMi="hsqldb",NMi="progress",DMi="maxdb",kMi="hanadb",xMi="ingres",GMi="firstsql",FMi="edb",ZMi="cache",LMi="adabas",VMi="firebird",PMi="derby",WMi="filemaker",OMi="informix",MMi="instantdb",HMi="interbase",YMi="mariadb",QMi="netezza",XMi="pervasive",JMi="pointbase",UMi="sqlite",KMi="sybase",jMi="teradata",zMi="vertica",qMi="h2",$Mi="coldfusion",eHi="cassandra",tHi="hbase",rHi="mongodb",nHi="redis",iHi="couchbase",sHi="couchdb",oHi="cosmosdb",aHi="dynamodb",cHi="neo4j",lHi="geode",uHi="elasticsearch",gHi="memcached",AHi="cockroachdb",ABc=_Mi,dBc=yMi,pBc=bMi,fBc=EMi,IBc=SMi,hBc=vMi,mBc=BMi,CBc=wMi,_Bc=TMi,yBc=RMi,bBc=NMi,EBc=DMi,SBc=kMi,vBc=xMi,BBc=GMi,wBc=FMi,TBc=ZMi,RBc=LMi,NBc=VMi,DBc=PMi,kBc=WMi,xBc=OMi,GBc=MMi,FBc=HMi,ZBc=YMi,LBc=QMi,VBc=XMi,PBc=JMi,WBc=UMi,OBc=KMi,MBc=jMi,HBc=zMi,YBc=qMi,QBc=$Mi,XBc=eHi,JBc=tHi,UBc=rHi,KBc=nHi,jBc=iHi,zBc=sHi,qBc=oHi,$Bc=aHi,ewc=cHi,twc=lHi,rwc=uHi,nwc=gHi,iwc=AHi,swc=iw([_Mi,yMi,bMi,EMi,SMi,vMi,BMi,wMi,TMi,RMi,NMi,DMi,kMi,xMi,GMi,FMi,ZMi,LMi,VMi,PMi,WMi,OMi,MMi,HMi,YMi,QMi,XMi,JMi,UMi,KMi,jMi,zMi,qMi,$Mi,eHi,tHi,rHi,nHi,iHi,sHi,oHi,aHi,cHi,lHi,uHi,gHi,AHi]),dHi="all",pHi="each_quorum",fHi="quorum",IHi="local_quorum",hHi="one",mHi="two",CHi="three",_Hi="local_one",yHi="any",bHi="serial",EHi="local_serial",owc=dHi,awc=pHi,cwc=fHi,lwc=IHi,uwc=hHi,gwc=mHi,Awc=CHi,dwc=_Hi,pwc=yHi,fwc=bHi,Iwc=EHi,hwc=iw([dHi,pHi,fHi,IHi,hHi,mHi,CHi,_Hi,yHi,bHi,EHi]),SHi="datasource",vHi="http",BHi="pubsub",wHi="timer",THi="other",mwc=SHi,Cwc=vHi,_wc=BHi,ywc=wHi,bwc=THi,Ewc=iw([SHi,vHi,BHi,wHi,THi]),RHi="insert",NHi="edit",DHi="delete",Swc=RHi,vwc=NHi,Bwc=DHi,wwc=iw([RHi,NHi,DHi]),kHi="alibaba_cloud",xHi="aws",GHi="azure",FHi="gcp",Twc=kHi,Rwc=xHi,Nwc=GHi,Dwc=FHi,kwc=iw([kHi,xHi,GHi,FHi]),ZHi="ip_tcp",LHi="ip_udp",VHi="ip",PHi="unix",WHi="pipe",OHi="inproc",MHi="other",xwc=ZHi,Gwc=LHi,Fwc=VHi,Zwc=PHi,Lwc=WHi,Vwc=OHi,Pwc=MHi,Wwc=iw([ZHi,LHi,VHi,PHi,WHi,OHi,MHi]),HHi="wifi",YHi="wired",QHi="cell",XHi="unavailable",JHi="unknown",Owc=HHi,Mwc=YHi,Hwc=QHi,Ywc=XHi,Qwc=JHi,Xwc=iw([HHi,YHi,QHi,XHi,JHi]),UHi="gprs",KHi="edge",jHi="umts",zHi="cdma",qHi="evdo_0",$Hi="evdo_a",eYi="cdma2000_1xrtt",tYi="hsdpa",rYi="hsupa",nYi="hspa",iYi="iden",sYi="evdo_b",oYi="lte",aYi="ehrpd",cYi="hspap",lYi="gsm",uYi="td_scdma",gYi="iwlan",AYi="nr",dYi="nrnsa",pYi="lte_ca",Jwc=UHi,Uwc=KHi,Kwc=jHi,jwc=zHi,zwc=qHi,qwc=$Hi,$wc=eYi,eTc=tYi,tTc=rYi,rTc=nYi,nTc=iYi,iTc=sYi,sTc=oYi,oTc=aYi,aTc=cYi,cTc=lYi,lTc=uYi,uTc=gYi,gTc=AYi,ATc=dYi,dTc=pYi,pTc=iw([UHi,KHi,jHi,zHi,qHi,$Hi,eYi,tYi,rYi,nYi,iYi,sYi,oYi,aYi,cYi,lYi,uYi,gYi,AYi,dYi,pYi]),fYi="1.0",IYi="1.1",hYi="2.0",mYi="SPDY",CYi="QUIC",fTc=fYi,ITc=IYi,hTc=hYi,mTc=mYi,CTc=CYi,_Tc={HTTP_1_0:fYi,HTTP_1_1:IYi,HTTP_2_0:hYi,SPDY:mYi,QUIC:CYi},_Yi="queue",yYi="topic",yTc=_Yi,bTc=yYi,ETc=iw([_Yi,yYi]),bYi="receive",EYi="process",STc=bYi,vTc=EYi,BTc=iw([bYi,EYi]),SYi=0,vYi=1,BYi=2,wYi=3,TYi=4,RYi=5,NYi=6,DYi=7,kYi=8,xYi=9,GYi=10,FYi=11,ZYi=12,LYi=13,VYi=14,PYi=15,WYi=16,wTc=SYi,TTc=vYi,RTc=BYi,NTc=wYi,DTc=TYi,kTc=RYi,xTc=NYi,GTc=DYi,FTc=kYi,ZTc=xYi,LTc=GYi,VTc=FYi,PTc=ZYi,WTc=LYi,OTc=VYi,MTc=PYi,HTc=WYi,YTc={OK:SYi,CANCELLED:vYi,UNKNOWN:BYi,INVALID_ARGUMENT:wYi,DEADLINE_EXCEEDED:TYi,NOT_FOUND:RYi,ALREADY_EXISTS:NYi,PERMISSION_DENIED:DYi,RESOURCE_EXHAUSTED:kYi,FAILED_PRECONDITION:xYi,ABORTED:GYi,OUT_OF_RANGE:FYi,UNIMPLEMENTED:ZYi,INTERNAL:LYi,UNAVAILABLE:VYi,DATA_LOSS:PYi,UNAUTHENTICATED:WYi},OYi="SENT",MYi="RECEIVED",QTc=OYi,XTc=MYi,JTc=iw([OYi,MYi])});var YYi=bc(()=>{HYi()});var QYi,XYi,JYi,UYi,KYi,jYi,zYi,qYi,$Yi,eQi,tQi,rQi,nQi,iQi,sQi,oQi,aQi,cQi,lQi,uQi,gQi,AQi,dQi,pQi,fQi,IQi,hQi,mQi,CQi,_Qi,yQi,bQi,EQi,SQi,vQi,BQi,wQi,TQi,RQi,NQi,DQi,kQi,xQi,GQi,FQi,ZQi,LQi,VQi,PQi,WQi,OQi,MQi,HQi,YQi,QQi,XQi,JQi,UQi,KQi,jQi,zQi,qQi,$Qi,eXi,tXi,rXi,nXi,iXi,sXi,oXi,aXi,cXi,lXi,uXi,gXi,AXi,dXi,pXi,fXi,IXi,hXi,UTc,KTc,jTc,zTc,qTc,$Tc,eRc,tRc,rRc,nRc,iRc,sRc,oRc,aRc,cRc,lRc,uRc,gRc,ARc,dRc,pRc,fRc,IRc,hRc,mRc,CRc,_Rc,yRc,bRc,ERc,SRc,vRc,BRc,wRc,TRc,RRc,NRc,DRc,kRc,xRc,GRc,FRc,ZRc,LRc,VRc,PRc,WRc,ORc,MRc,HRc,YRc,QRc,XRc,JRc,URc,KRc,jRc,zRc,qRc,$Rc,eNc,tNc,rNc,nNc,iNc,sNc,oNc,aNc,cNc,lNc,uNc,gNc,ANc,dNc,pNc,fNc,INc,hNc,mNc,CNc,_Nc,yNc,mXi,CXi,_Xi,yXi,bNc,ENc,SNc,vNc,BNc,bXi,EXi,SXi,vXi,BXi,wXi,TXi,RXi,NXi,DXi,kXi,xXi,GXi,FXi,ZXi,LXi,VXi,wNc,TNc,RNc,NNc,DNc,kNc,xNc,GNc,FNc,ZNc,LNc,VNc,PNc,WNc,ONc,MNc,HNc,YNc,PXi,WXi,QNc,XNc,JNc,OXi,MXi,HXi,YXi,QXi,XXi,JXi,UNc,KNc,jNc,zNc,qNc,$Nc,eDc,tDc,UXi,KXi,jXi,zXi,qXi,$Xi,e4i,t4i,r4i,n4i,i4i,rDc,nDc,iDc,sDc,oDc,aDc,cDc,lDc,uDc,gDc,ADc,dDc,s4i,o4i,a4i,c4i,l4i,u4i,g4i,A4i,d4i,p4i,pDc,fDc,IDc,hDc,mDc,CDc,_Dc,yDc,bDc,EDc,SDc,f4i=bc(()=>{e9r();QYi="cloud.provider",XYi="cloud.account.id",JYi="cloud.region",UYi="cloud.availability_zone",KYi="cloud.platform",jYi="aws.ecs.container.arn",zYi="aws.ecs.cluster.arn",qYi="aws.ecs.launchtype",$Yi="aws.ecs.task.arn",eQi="aws.ecs.task.family",tQi="aws.ecs.task.revision",rQi="aws.eks.cluster.arn",nQi="aws.log.group.names",iQi="aws.log.group.arns",sQi="aws.log.stream.names",oQi="aws.log.stream.arns",aQi="container.name",cQi="container.id",lQi="container.runtime",uQi="container.image.name",gQi="container.image.tag",AQi="deployment.environment",dQi="device.id",pQi="device.model.identifier",fQi="device.model.name",IQi="faas.name",hQi="faas.id",mQi="faas.version",CQi="faas.instance",_Qi="faas.max_memory",yQi="host.id",bQi="host.name",EQi="host.type",SQi="host.arch",vQi="host.image.name",BQi="host.image.id",wQi="host.image.version",TQi="k8s.cluster.name",RQi="k8s.node.name",NQi="k8s.node.uid",DQi="k8s.namespace.name",kQi="k8s.pod.uid",xQi="k8s.pod.name",GQi="k8s.container.name",FQi="k8s.replicaset.uid",ZQi="k8s.replicaset.name",LQi="k8s.deployment.uid",VQi="k8s.deployment.name",PQi="k8s.statefulset.uid",WQi="k8s.statefulset.name",OQi="k8s.daemonset.uid",MQi="k8s.daemonset.name",HQi="k8s.job.uid",YQi="k8s.job.name",QQi="k8s.cronjob.uid",XQi="k8s.cronjob.name",JQi="os.type",UQi="os.description",KQi="os.name",jQi="os.version",zQi="process.pid",qQi="process.executable.name",$Qi="process.executable.path",eXi="process.command",tXi="process.command_line",rXi="process.command_args",nXi="process.owner",iXi="process.runtime.name",sXi="process.runtime.version",oXi="process.runtime.description",aXi="service.name",cXi="service.namespace",lXi="service.instance.id",uXi="service.version",gXi="telemetry.sdk.name",AXi="telemetry.sdk.language",dXi="telemetry.sdk.version",pXi="telemetry.auto.version",fXi="webengine.name",IXi="webengine.version",hXi="webengine.description",UTc=QYi,KTc=XYi,jTc=JYi,zTc=UYi,qTc=KYi,$Tc=jYi,eRc=zYi,tRc=qYi,rRc=$Yi,nRc=eQi,iRc=tQi,sRc=rQi,oRc=nQi,aRc=iQi,cRc=sQi,lRc=oQi,uRc=aQi,gRc=cQi,ARc=lQi,dRc=uQi,pRc=gQi,fRc=AQi,IRc=dQi,hRc=pQi,mRc=fQi,CRc=IQi,_Rc=hQi,yRc=mQi,bRc=CQi,ERc=_Qi,SRc=yQi,vRc=bQi,BRc=EQi,wRc=SQi,TRc=vQi,RRc=BQi,NRc=wQi,DRc=TQi,kRc=RQi,xRc=NQi,GRc=DQi,FRc=kQi,ZRc=xQi,LRc=GQi,VRc=FQi,PRc=ZQi,WRc=LQi,ORc=VQi,MRc=PQi,HRc=WQi,YRc=OQi,QRc=MQi,XRc=HQi,JRc=YQi,URc=QQi,KRc=XQi,jRc=JQi,zRc=UQi,qRc=KQi,$Rc=jQi,eNc=zQi,tNc=qQi,rNc=$Qi,nNc=eXi,iNc=tXi,sNc=rXi,oNc=nXi,aNc=iXi,cNc=sXi,lNc=oXi,uNc=aXi,gNc=cXi,ANc=lXi,dNc=uXi,pNc=gXi,fNc=AXi,INc=dXi,hNc=pXi,mNc=fXi,CNc=IXi,_Nc=hXi,yNc=iw([QYi,XYi,JYi,UYi,KYi,jYi,zYi,qYi,$Yi,eQi,tQi,rQi,nQi,iQi,sQi,oQi,aQi,cQi,lQi,uQi,gQi,AQi,dQi,pQi,fQi,IQi,hQi,mQi,CQi,_Qi,yQi,bQi,EQi,SQi,vQi,BQi,wQi,TQi,RQi,NQi,DQi,kQi,xQi,GQi,FQi,ZQi,LQi,VQi,PQi,WQi,OQi,MQi,HQi,YQi,QQi,XQi,JQi,UQi,KQi,jQi,zQi,qQi,$Qi,eXi,tXi,rXi,nXi,iXi,sXi,oXi,aXi,cXi,lXi,uXi,gXi,AXi,dXi,pXi,fXi,IXi,hXi]),mXi="alibaba_cloud",CXi="aws",_Xi="azure",yXi="gcp",bNc=mXi,ENc=CXi,SNc=_Xi,vNc=yXi,BNc=iw([mXi,CXi,_Xi,yXi]),bXi="alibaba_cloud_ecs",EXi="alibaba_cloud_fc",SXi="aws_ec2",vXi="aws_ecs",BXi="aws_eks",wXi="aws_lambda",TXi="aws_elastic_beanstalk",RXi="azure_vm",NXi="azure_container_instances",DXi="azure_aks",kXi="azure_functions",xXi="azure_app_service",GXi="gcp_compute_engine",FXi="gcp_cloud_run",ZXi="gcp_kubernetes_engine",LXi="gcp_cloud_functions",VXi="gcp_app_engine",wNc=bXi,TNc=EXi,RNc=SXi,NNc=vXi,DNc=BXi,kNc=wXi,xNc=TXi,GNc=RXi,FNc=NXi,ZNc=DXi,LNc=kXi,VNc=xXi,PNc=GXi,WNc=FXi,ONc=ZXi,MNc=LXi,HNc=VXi,YNc=iw([bXi,EXi,SXi,vXi,BXi,wXi,TXi,RXi,NXi,DXi,kXi,xXi,GXi,FXi,ZXi,LXi,VXi]),PXi="ec2",WXi="fargate",QNc=PXi,XNc=WXi,JNc=iw([PXi,WXi]),OXi="amd64",MXi="arm32",HXi="arm64",YXi="ia64",QXi="ppc32",XXi="ppc64",JXi="x86",UNc=OXi,KNc=MXi,jNc=HXi,zNc=YXi,qNc=QXi,$Nc=XXi,eDc=JXi,tDc=iw([OXi,MXi,HXi,YXi,QXi,XXi,JXi]),UXi="windows",KXi="linux",jXi="darwin",zXi="freebsd",qXi="netbsd",$Xi="openbsd",e4i="dragonflybsd",t4i="hpux",r4i="aix",n4i="solaris",i4i="z_os",rDc=UXi,nDc=KXi,iDc=jXi,sDc=zXi,oDc=qXi,aDc=$Xi,cDc=e4i,lDc=t4i,uDc=r4i,gDc=n4i,ADc=i4i,dDc=iw([UXi,KXi,jXi,zXi,qXi,$Xi,e4i,t4i,r4i,n4i,i4i]),s4i="cpp",o4i="dotnet",a4i="erlang",c4i="go",l4i="java",u4i="nodejs",g4i="php",A4i="python",d4i="ruby",p4i="webjs",pDc=s4i,fDc=o4i,IDc=a4i,hDc=c4i,mDc=l4i,CDc=u4i,_Dc=g4i,yDc=A4i,bDc=d4i,EDc=p4i,SDc=iw([s4i,o4i,a4i,c4i,l4i,u4i,g4i,A4i,d4i,p4i])});var I4i=bc(()=>{f4i()});var vDc,BDc,wDc,TDc,RDc,NDc,DDc,kDc,xDc,GDc,FDc,ZDc,LDc,VDc,PDc,WDc,ODc,MDc,HDc,YDc,QDc,XDc,JDc,UDc,KDc,jDc,zDc,qDc,$Dc,ekc,tkc,rkc,nkc,ikc,skc,okc,akc,ckc,lkc,ukc,gkc,Akc,dkc,pkc,fkc,Ikc,hkc,mkc,Ckc,_kc,ykc,bkc,Ekc,Skc,vkc,Bkc,wkc,Tkc,Rkc,Nkc,Dkc,kkc,xkc,Gkc,Fkc,Zkc,Lkc,Vkc,Pkc,Wkc,Okc,Mkc,Hkc,Ykc,Qkc,Xkc,Jkc,Ukc,Kkc,jkc,zkc,qkc,$kc,exc,txc,rxc,nxc,ixc,sxc,oxc,axc,cxc,lxc,uxc,gxc,Axc,dxc,pxc,fxc,Ixc,hxc,mxc,Cxc,_xc,yxc,bxc,Exc,Sxc,vxc,Bxc,h4i=bc(()=>{vDc="aspnetcore.rate_limiting.result",BDc="acquired",wDc="endpoint_limiter",TDc="global_limiter",RDc="request_canceled",NDc="telemetry.sdk.language",DDc="cpp",kDc="dotnet",xDc="erlang",GDc="go",FDc="java",ZDc="nodejs",LDc="php",VDc="python",PDc="ruby",WDc="rust",ODc="swift",MDc="webjs",HDc="telemetry.sdk.name",YDc="telemetry.sdk.version",QDc="aspnetcore.diagnostics.handler.type",XDc="aspnetcore.diagnostics.exception.result",JDc="aborted",UDc="handled",KDc="skipped",jDc="unhandled",zDc="aspnetcore.rate_limiting.policy",qDc="aspnetcore.request.is_unhandled",$Dc="aspnetcore.routing.is_fallback",ekc="aspnetcore.routing.match_status",tkc="failure",rkc="success",nkc="client.address",ikc="client.port",skc="error.type",okc="_OTHER",akc="exception.escaped",ckc="exception.message",lkc="exception.stacktrace",ukc="exception.type",gkc=function(e){return"http.request.header."+e},Akc="http.request.method",dkc="_OTHER",pkc="CONNECT",fkc="DELETE",Ikc="GET",hkc="HEAD",mkc="OPTIONS",Ckc="PATCH",_kc="POST",ykc="PUT",bkc="TRACE",Ekc="http.request.method_original",Skc="http.request.resend_count",vkc=function(e){return"http.response.header."+e},Bkc="http.response.status_code",wkc="http.route",Tkc="jvm.gc.action",Rkc="jvm.gc.name",Nkc="jvm.memory.pool.name",Dkc="jvm.memory.type",kkc="heap",xkc="non_heap",Gkc="jvm.thread.daemon",Fkc="jvm.thread.state",Zkc="blocked",Lkc="new",Vkc="runnable",Pkc="terminated",Wkc="timed_waiting",Okc="waiting",Mkc="network.local.address",Hkc="network.local.port",Ykc="network.peer.address",Qkc="network.peer.port",Xkc="network.protocol.name",Jkc="network.protocol.version",Ukc="network.transport",Kkc="pipe",jkc="quic",zkc="tcp",qkc="udp",$kc="unix",exc="network.type",txc="ipv4",rxc="ipv6",nxc="otel.scope.name",ixc="otel.scope.version",sxc="otel.status_code",oxc="ERROR",axc="OK",cxc="otel.status_description",lxc="server.address",uxc="server.port",gxc="service.name",Axc="service.version",dxc="signalr.connection.status",pxc="app_shutdown",fxc="normal_closure",Ixc="timeout",hxc="signalr.transport",mxc="long_polling",Cxc="server_sent_events",_xc="web_sockets",yxc="url.fragment",bxc="url.full",Exc="url.path",Sxc="url.query",vxc="url.scheme",Bxc="user_agent.original"});var wxc,Txc,Rxc,Nxc,Dxc,kxc,xxc,Gxc,Fxc,Zxc,Lxc,Vxc,Pxc,Wxc,Oxc,Mxc,Hxc,Yxc,Qxc,Xxc,Jxc,Uxc,Kxc,jxc,zxc,qxc,$xc,eGc,tGc,rGc,nGc,m4i=bc(()=>{wxc="aspnetcore.diagnostics.exceptions",Txc="aspnetcore.rate_limiting.active_request_leases",Rxc="aspnetcore.rate_limiting.queued_requests",Nxc="aspnetcore.rate_limiting.request.time_in_queue",Dxc="aspnetcore.rate_limiting.request_lease.duration",kxc="aspnetcore.rate_limiting.requests",xxc="aspnetcore.routing.match_attempts",Gxc="http.client.request.duration",Fxc="http.server.request.duration",Zxc="jvm.class.count",Lxc="jvm.class.loaded",Vxc="jvm.class.unloaded",Pxc="jvm.cpu.count",Wxc="jvm.cpu.recent_utilization",Oxc="jvm.cpu.time",Mxc="jvm.gc.duration",Hxc="jvm.memory.committed",Yxc="jvm.memory.limit",Qxc="jvm.memory.used",Xxc="jvm.memory.used_after_last_gc",Jxc="jvm.thread.count",Uxc="kestrel.active_connections",Kxc="kestrel.active_tls_handshakes",jxc="kestrel.connection.duration",zxc="kestrel.queued_connections",qxc="kestrel.queued_requests",$xc="kestrel.rejected_connections",eGc="kestrel.tls_handshake.duration",tGc="kestrel.upgraded_connections",rGc="signalr.server.active_connections",nGc="signalr.server.connection.duration"});var C4i={};sI(C4i,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>JDc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>UDc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>KDc,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>jDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>BDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>wDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>TDc,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>RDc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>tkc,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>rkc,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>XDc,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>QDc,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>zDc,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>vDc,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>qDc,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>$Dc,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>ekc,ATTR_CLIENT_ADDRESS:()=>nkc,ATTR_CLIENT_PORT:()=>ikc,ATTR_ERROR_TYPE:()=>skc,ATTR_EXCEPTION_ESCAPED:()=>akc,ATTR_EXCEPTION_MESSAGE:()=>ckc,ATTR_EXCEPTION_STACKTRACE:()=>lkc,ATTR_EXCEPTION_TYPE:()=>ukc,ATTR_HTTP_REQUEST_HEADER:()=>gkc,ATTR_HTTP_REQUEST_METHOD:()=>Akc,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>Ekc,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>Skc,ATTR_HTTP_RESPONSE_HEADER:()=>vkc,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>Bkc,ATTR_HTTP_ROUTE:()=>wkc,ATTR_JVM_GC_ACTION:()=>Tkc,ATTR_JVM_GC_NAME:()=>Rkc,ATTR_JVM_MEMORY_POOL_NAME:()=>Nkc,ATTR_JVM_MEMORY_TYPE:()=>Dkc,ATTR_JVM_THREAD_DAEMON:()=>Gkc,ATTR_JVM_THREAD_STATE:()=>Fkc,ATTR_NETWORK_LOCAL_ADDRESS:()=>Mkc,ATTR_NETWORK_LOCAL_PORT:()=>Hkc,ATTR_NETWORK_PEER_ADDRESS:()=>Ykc,ATTR_NETWORK_PEER_PORT:()=>Qkc,ATTR_NETWORK_PROTOCOL_NAME:()=>Xkc,ATTR_NETWORK_PROTOCOL_VERSION:()=>Jkc,ATTR_NETWORK_TRANSPORT:()=>Ukc,ATTR_NETWORK_TYPE:()=>exc,ATTR_OTEL_SCOPE_NAME:()=>nxc,ATTR_OTEL_SCOPE_VERSION:()=>ixc,ATTR_OTEL_STATUS_CODE:()=>sxc,ATTR_OTEL_STATUS_DESCRIPTION:()=>cxc,ATTR_SERVER_ADDRESS:()=>lxc,ATTR_SERVER_PORT:()=>uxc,ATTR_SERVICE_NAME:()=>gxc,ATTR_SERVICE_VERSION:()=>Axc,ATTR_SIGNALR_CONNECTION_STATUS:()=>dxc,ATTR_SIGNALR_TRANSPORT:()=>hxc,ATTR_TELEMETRY_SDK_LANGUAGE:()=>NDc,ATTR_TELEMETRY_SDK_NAME:()=>HDc,ATTR_TELEMETRY_SDK_VERSION:()=>YDc,ATTR_URL_FRAGMENT:()=>yxc,ATTR_URL_FULL:()=>bxc,ATTR_URL_PATH:()=>Exc,ATTR_URL_QUERY:()=>Sxc,ATTR_URL_SCHEME:()=>vxc,ATTR_USER_AGENT_ORIGINAL:()=>Bxc,AWSECSLAUNCHTYPEVALUES_EC2:()=>QNc,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>XNc,AwsEcsLaunchtypeValues:()=>JNc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>wNc,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>TNc,CLOUDPLATFORMVALUES_AWS_EC2:()=>RNc,CLOUDPLATFORMVALUES_AWS_ECS:()=>NNc,CLOUDPLATFORMVALUES_AWS_EKS:()=>DNc,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>xNc,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>kNc,CLOUDPLATFORMVALUES_AZURE_AKS:()=>ZNc,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>VNc,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>FNc,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>LNc,CLOUDPLATFORMVALUES_AZURE_VM:()=>GNc,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>HNc,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>MNc,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>WNc,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>PNc,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>ONc,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>bNc,CLOUDPROVIDERVALUES_AWS:()=>ENc,CLOUDPROVIDERVALUES_AZURE:()=>SNc,CLOUDPROVIDERVALUES_GCP:()=>vNc,CloudPlatformValues:()=>YNc,CloudProviderValues:()=>BNc,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>owc,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>pwc,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>awc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>dwc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>lwc,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>Iwc,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>uwc,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>cwc,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>fwc,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>Awc,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>gwc,DBSYSTEMVALUES_ADABAS:()=>RBc,DBSYSTEMVALUES_CACHE:()=>TBc,DBSYSTEMVALUES_CASSANDRA:()=>XBc,DBSYSTEMVALUES_CLOUDSCAPE:()=>_Bc,DBSYSTEMVALUES_COCKROACHDB:()=>iwc,DBSYSTEMVALUES_COLDFUSION:()=>QBc,DBSYSTEMVALUES_COSMOSDB:()=>qBc,DBSYSTEMVALUES_COUCHBASE:()=>jBc,DBSYSTEMVALUES_COUCHDB:()=>zBc,DBSYSTEMVALUES_DB2:()=>IBc,DBSYSTEMVALUES_DERBY:()=>DBc,DBSYSTEMVALUES_DYNAMODB:()=>$Bc,DBSYSTEMVALUES_EDB:()=>wBc,DBSYSTEMVALUES_ELASTICSEARCH:()=>rwc,DBSYSTEMVALUES_FILEMAKER:()=>kBc,DBSYSTEMVALUES_FIREBIRD:()=>NBc,DBSYSTEMVALUES_FIRSTSQL:()=>BBc,DBSYSTEMVALUES_GEODE:()=>twc,DBSYSTEMVALUES_H2:()=>YBc,DBSYSTEMVALUES_HANADB:()=>SBc,DBSYSTEMVALUES_HBASE:()=>JBc,DBSYSTEMVALUES_HIVE:()=>CBc,DBSYSTEMVALUES_HSQLDB:()=>yBc,DBSYSTEMVALUES_INFORMIX:()=>xBc,DBSYSTEMVALUES_INGRES:()=>vBc,DBSYSTEMVALUES_INSTANTDB:()=>GBc,DBSYSTEMVALUES_INTERBASE:()=>FBc,DBSYSTEMVALUES_MARIADB:()=>ZBc,DBSYSTEMVALUES_MAXDB:()=>EBc,DBSYSTEMVALUES_MEMCACHED:()=>nwc,DBSYSTEMVALUES_MONGODB:()=>UBc,DBSYSTEMVALUES_MSSQL:()=>dBc,DBSYSTEMVALUES_MYSQL:()=>pBc,DBSYSTEMVALUES_NEO4J:()=>ewc,DBSYSTEMVALUES_NETEZZA:()=>LBc,DBSYSTEMVALUES_ORACLE:()=>fBc,DBSYSTEMVALUES_OTHER_SQL:()=>ABc,DBSYSTEMVALUES_PERVASIVE:()=>VBc,DBSYSTEMVALUES_POINTBASE:()=>PBc,DBSYSTEMVALUES_POSTGRESQL:()=>hBc,DBSYSTEMVALUES_PROGRESS:()=>bBc,DBSYSTEMVALUES_REDIS:()=>KBc,DBSYSTEMVALUES_REDSHIFT:()=>mBc,DBSYSTEMVALUES_SQLITE:()=>WBc,DBSYSTEMVALUES_SYBASE:()=>OBc,DBSYSTEMVALUES_TERADATA:()=>MBc,DBSYSTEMVALUES_VERTICA:()=>HBc,DbCassandraConsistencyLevelValues:()=>hwc,DbSystemValues:()=>swc,ERROR_TYPE_VALUE_OTHER:()=>okc,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>Bwc,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>vwc,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>Swc,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>Twc,FAASINVOKEDPROVIDERVALUES_AWS:()=>Rwc,FAASINVOKEDPROVIDERVALUES_AZURE:()=>Nwc,FAASINVOKEDPROVIDERVALUES_GCP:()=>Dwc,FAASTRIGGERVALUES_DATASOURCE:()=>mwc,FAASTRIGGERVALUES_HTTP:()=>Cwc,FAASTRIGGERVALUES_OTHER:()=>bwc,FAASTRIGGERVALUES_PUBSUB:()=>_wc,FAASTRIGGERVALUES_TIMER:()=>ywc,FaasDocumentOperationValues:()=>wwc,FaasInvokedProviderValues:()=>kwc,FaasTriggerValues:()=>Ewc,HOSTARCHVALUES_AMD64:()=>UNc,HOSTARCHVALUES_ARM32:()=>KNc,HOSTARCHVALUES_ARM64:()=>jNc,HOSTARCHVALUES_IA64:()=>zNc,HOSTARCHVALUES_PPC32:()=>qNc,HOSTARCHVALUES_PPC64:()=>$Nc,HOSTARCHVALUES_X86:()=>eDc,HTTPFLAVORVALUES_HTTP_1_0:()=>fTc,HTTPFLAVORVALUES_HTTP_1_1:()=>ITc,HTTPFLAVORVALUES_HTTP_2_0:()=>hTc,HTTPFLAVORVALUES_QUIC:()=>CTc,HTTPFLAVORVALUES_SPDY:()=>mTc,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>pkc,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>fkc,HTTP_REQUEST_METHOD_VALUE_GET:()=>Ikc,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>hkc,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>mkc,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>dkc,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>Ckc,HTTP_REQUEST_METHOD_VALUE_POST:()=>_kc,HTTP_REQUEST_METHOD_VALUE_PUT:()=>ykc,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>bkc,HostArchValues:()=>tDc,HttpFlavorValues:()=>_Tc,JVM_MEMORY_TYPE_VALUE_HEAP:()=>kkc,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>xkc,JVM_THREAD_STATE_VALUE_BLOCKED:()=>Zkc,JVM_THREAD_STATE_VALUE_NEW:()=>Lkc,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>Vkc,JVM_THREAD_STATE_VALUE_TERMINATED:()=>Pkc,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>Wkc,JVM_THREAD_STATE_VALUE_WAITING:()=>Okc,MESSAGETYPEVALUES_RECEIVED:()=>XTc,MESSAGETYPEVALUES_SENT:()=>QTc,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>yTc,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>bTc,MESSAGINGOPERATIONVALUES_PROCESS:()=>vTc,MESSAGINGOPERATIONVALUES_RECEIVE:()=>STc,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>wxc,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>Txc,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>Rxc,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>kxc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>Dxc,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>Nxc,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>xxc,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>Gxc,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>Fxc,METRIC_JVM_CLASS_COUNT:()=>Zxc,METRIC_JVM_CLASS_LOADED:()=>Lxc,METRIC_JVM_CLASS_UNLOADED:()=>Vxc,METRIC_JVM_CPU_COUNT:()=>Pxc,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>Wxc,METRIC_JVM_CPU_TIME:()=>Oxc,METRIC_JVM_GC_DURATION:()=>Mxc,METRIC_JVM_MEMORY_COMMITTED:()=>Hxc,METRIC_JVM_MEMORY_LIMIT:()=>Yxc,METRIC_JVM_MEMORY_USED:()=>Qxc,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>Xxc,METRIC_JVM_THREAD_COUNT:()=>Jxc,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>Uxc,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>Kxc,METRIC_KESTREL_CONNECTION_DURATION:()=>jxc,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>zxc,METRIC_KESTREL_QUEUED_REQUESTS:()=>qxc,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>$xc,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>eGc,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>tGc,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>rGc,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>nGc,MessageTypeValues:()=>JTc,MessagingDestinationKindValues:()=>ETc,MessagingOperationValues:()=>BTc,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>jwc,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>$wc,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>Uwc,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>oTc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>zwc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>qwc,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>iTc,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>Jwc,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>cTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>eTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>rTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>aTc,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>tTc,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>nTc,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>uTc,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>sTc,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>dTc,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>gTc,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>ATc,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>lTc,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>Kwc,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>Hwc,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>Ywc,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>Qwc,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>Owc,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>Mwc,NETTRANSPORTVALUES_INPROC:()=>Vwc,NETTRANSPORTVALUES_IP:()=>Fwc,NETTRANSPORTVALUES_IP_TCP:()=>xwc,NETTRANSPORTVALUES_IP_UDP:()=>Gwc,NETTRANSPORTVALUES_OTHER:()=>Pwc,NETTRANSPORTVALUES_PIPE:()=>Lwc,NETTRANSPORTVALUES_UNIX:()=>Zwc,NETWORK_TRANSPORT_VALUE_PIPE:()=>Kkc,NETWORK_TRANSPORT_VALUE_QUIC:()=>jkc,NETWORK_TRANSPORT_VALUE_TCP:()=>zkc,NETWORK_TRANSPORT_VALUE_UDP:()=>qkc,NETWORK_TRANSPORT_VALUE_UNIX:()=>$kc,NETWORK_TYPE_VALUE_IPV4:()=>txc,NETWORK_TYPE_VALUE_IPV6:()=>rxc,NetHostConnectionSubtypeValues:()=>pTc,NetHostConnectionTypeValues:()=>Xwc,NetTransportValues:()=>Wwc,OSTYPEVALUES_AIX:()=>uDc,OSTYPEVALUES_DARWIN:()=>iDc,OSTYPEVALUES_DRAGONFLYBSD:()=>cDc,OSTYPEVALUES_FREEBSD:()=>sDc,OSTYPEVALUES_HPUX:()=>lDc,OSTYPEVALUES_LINUX:()=>nDc,OSTYPEVALUES_NETBSD:()=>oDc,OSTYPEVALUES_OPENBSD:()=>aDc,OSTYPEVALUES_SOLARIS:()=>gDc,OSTYPEVALUES_WINDOWS:()=>rDc,OSTYPEVALUES_Z_OS:()=>ADc,OTEL_STATUS_CODE_VALUE_ERROR:()=>oxc,OTEL_STATUS_CODE_VALUE_OK:()=>axc,OsTypeValues:()=>dDc,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>LTc,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>xTc,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>TTc,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>MTc,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>DTc,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>ZTc,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>WTc,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>NTc,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>kTc,RPCGRPCSTATUSCODEVALUES_OK:()=>wTc,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>VTc,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>GTc,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>FTc,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>HTc,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>OTc,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>PTc,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>RTc,RpcGrpcStatusCodeValues:()=>YTc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>_vc,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>kvc,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>hvc,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>dvc,SEMATTRS_AWS_DYNAMODB_COUNT:()=>Nvc,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>vvc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>Evc,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>xvc,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>yvc,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>pvc,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>Cvc,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>Svc,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>mvc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>fvc,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>Ivc,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>Dvc,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>wvc,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>Tvc,SEMATTRS_AWS_DYNAMODB_SELECT:()=>bvc,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>Bvc,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>Avc,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>Rvc,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>Q2c,SEMATTRS_CODE_FILEPATH:()=>KSc,SEMATTRS_CODE_FUNCTION:()=>JSc,SEMATTRS_CODE_LINENO:()=>jSc,SEMATTRS_CODE_NAMESPACE:()=>USc,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>rSc,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>aSc,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>oSc,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>iSc,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>eSc,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>tSc,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>sSc,SEMATTRS_DB_CASSANDRA_TABLE:()=>nSc,SEMATTRS_DB_CONNECTION_STRING:()=>J2c,SEMATTRS_DB_HBASE_NAMESPACE:()=>cSc,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>K2c,SEMATTRS_DB_MONGODB_COLLECTION:()=>uSc,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>$2c,SEMATTRS_DB_NAME:()=>j2c,SEMATTRS_DB_OPERATION:()=>q2c,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>lSc,SEMATTRS_DB_SQL_TABLE:()=>gSc,SEMATTRS_DB_STATEMENT:()=>z2c,SEMATTRS_DB_SYSTEM:()=>X2c,SEMATTRS_DB_USER:()=>U2c,SEMATTRS_ENDUSER_ID:()=>MSc,SEMATTRS_ENDUSER_ROLE:()=>HSc,SEMATTRS_ENDUSER_SCOPE:()=>YSc,SEMATTRS_EXCEPTION_ESCAPED:()=>fSc,SEMATTRS_EXCEPTION_MESSAGE:()=>dSc,SEMATTRS_EXCEPTION_STACKTRACE:()=>pSc,SEMATTRS_EXCEPTION_TYPE:()=>ASc,SEMATTRS_FAAS_COLDSTART:()=>SSc,SEMATTRS_FAAS_CRON:()=>ESc,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>mSc,SEMATTRS_FAAS_DOCUMENT_NAME:()=>ySc,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>CSc,SEMATTRS_FAAS_DOCUMENT_TIME:()=>_Sc,SEMATTRS_FAAS_EXECUTION:()=>hSc,SEMATTRS_FAAS_INVOKED_NAME:()=>vSc,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>BSc,SEMATTRS_FAAS_INVOKED_REGION:()=>wSc,SEMATTRS_FAAS_TIME:()=>bSc,SEMATTRS_FAAS_TRIGGER:()=>ISc,SEMATTRS_HTTP_CLIENT_IP:()=>gvc,SEMATTRS_HTTP_FLAVOR:()=>nvc,SEMATTRS_HTTP_HOST:()=>evc,SEMATTRS_HTTP_METHOD:()=>zSc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>svc,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>ovc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>avc,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>cvc,SEMATTRS_HTTP_ROUTE:()=>uvc,SEMATTRS_HTTP_SCHEME:()=>tvc,SEMATTRS_HTTP_SERVER_NAME:()=>lvc,SEMATTRS_HTTP_STATUS_CODE:()=>rvc,SEMATTRS_HTTP_TARGET:()=>$Sc,SEMATTRS_HTTP_URL:()=>qSc,SEMATTRS_HTTP_USER_AGENT:()=>ivc,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>lBc,SEMATTRS_MESSAGE_ID:()=>cBc,SEMATTRS_MESSAGE_TYPE:()=>aBc,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>uBc,SEMATTRS_MESSAGING_CONSUMER_ID:()=>Xvc,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>Mvc,SEMATTRS_MESSAGING_DESTINATION:()=>Fvc,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>Zvc,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>jvc,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>Kvc,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>Uvc,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>zvc,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>qvc,SEMATTRS_MESSAGING_MESSAGE_ID:()=>Ovc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>Yvc,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>Hvc,SEMATTRS_MESSAGING_OPERATION:()=>Qvc,SEMATTRS_MESSAGING_PROTOCOL:()=>Vvc,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>Pvc,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>Jvc,SEMATTRS_MESSAGING_SYSTEM:()=>Gvc,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>Lvc,SEMATTRS_MESSAGING_URL:()=>Wvc,SEMATTRS_NET_HOST_CARRIER_ICC:()=>WSc,SEMATTRS_NET_HOST_CARRIER_MCC:()=>VSc,SEMATTRS_NET_HOST_CARRIER_MNC:()=>PSc,SEMATTRS_NET_HOST_CARRIER_NAME:()=>LSc,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>ZSc,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>FSc,SEMATTRS_NET_HOST_IP:()=>kSc,SEMATTRS_NET_HOST_NAME:()=>GSc,SEMATTRS_NET_HOST_PORT:()=>xSc,SEMATTRS_NET_PEER_IP:()=>RSc,SEMATTRS_NET_PEER_NAME:()=>DSc,SEMATTRS_NET_PEER_PORT:()=>NSc,SEMATTRS_NET_TRANSPORT:()=>TSc,SEMATTRS_PEER_SERVICE:()=>OSc,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>rBc,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>sBc,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>oBc,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>iBc,SEMATTRS_RPC_JSONRPC_VERSION:()=>nBc,SEMATTRS_RPC_METHOD:()=>tBc,SEMATTRS_RPC_SERVICE:()=>eBc,SEMATTRS_RPC_SYSTEM:()=>$vc,SEMATTRS_THREAD_ID:()=>QSc,SEMATTRS_THREAD_NAME:()=>XSc,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>eRc,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>$Tc,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>tRc,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>rRc,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>nRc,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>iRc,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>sRc,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>aRc,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>oRc,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>lRc,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>cRc,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>KTc,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>zTc,SEMRESATTRS_CLOUD_PLATFORM:()=>qTc,SEMRESATTRS_CLOUD_PROVIDER:()=>UTc,SEMRESATTRS_CLOUD_REGION:()=>jTc,SEMRESATTRS_CONTAINER_ID:()=>gRc,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>dRc,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>pRc,SEMRESATTRS_CONTAINER_NAME:()=>uRc,SEMRESATTRS_CONTAINER_RUNTIME:()=>ARc,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>fRc,SEMRESATTRS_DEVICE_ID:()=>IRc,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>hRc,SEMRESATTRS_DEVICE_MODEL_NAME:()=>mRc,SEMRESATTRS_FAAS_ID:()=>_Rc,SEMRESATTRS_FAAS_INSTANCE:()=>bRc,SEMRESATTRS_FAAS_MAX_MEMORY:()=>ERc,SEMRESATTRS_FAAS_NAME:()=>CRc,SEMRESATTRS_FAAS_VERSION:()=>yRc,SEMRESATTRS_HOST_ARCH:()=>wRc,SEMRESATTRS_HOST_ID:()=>SRc,SEMRESATTRS_HOST_IMAGE_ID:()=>RRc,SEMRESATTRS_HOST_IMAGE_NAME:()=>TRc,SEMRESATTRS_HOST_IMAGE_VERSION:()=>NRc,SEMRESATTRS_HOST_NAME:()=>vRc,SEMRESATTRS_HOST_TYPE:()=>BRc,SEMRESATTRS_K8S_CLUSTER_NAME:()=>DRc,SEMRESATTRS_K8S_CONTAINER_NAME:()=>LRc,SEMRESATTRS_K8S_CRONJOB_NAME:()=>KRc,SEMRESATTRS_K8S_CRONJOB_UID:()=>URc,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>QRc,SEMRESATTRS_K8S_DAEMONSET_UID:()=>YRc,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>ORc,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>WRc,SEMRESATTRS_K8S_JOB_NAME:()=>JRc,SEMRESATTRS_K8S_JOB_UID:()=>XRc,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>GRc,SEMRESATTRS_K8S_NODE_NAME:()=>kRc,SEMRESATTRS_K8S_NODE_UID:()=>xRc,SEMRESATTRS_K8S_POD_NAME:()=>ZRc,SEMRESATTRS_K8S_POD_UID:()=>FRc,SEMRESATTRS_K8S_REPLICASET_NAME:()=>PRc,SEMRESATTRS_K8S_REPLICASET_UID:()=>VRc,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>HRc,SEMRESATTRS_K8S_STATEFULSET_UID:()=>MRc,SEMRESATTRS_OS_DESCRIPTION:()=>zRc,SEMRESATTRS_OS_NAME:()=>qRc,SEMRESATTRS_OS_TYPE:()=>jRc,SEMRESATTRS_OS_VERSION:()=>$Rc,SEMRESATTRS_PROCESS_COMMAND:()=>nNc,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>sNc,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>iNc,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>tNc,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>rNc,SEMRESATTRS_PROCESS_OWNER:()=>oNc,SEMRESATTRS_PROCESS_PID:()=>eNc,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>lNc,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>aNc,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>cNc,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>ANc,SEMRESATTRS_SERVICE_NAME:()=>uNc,SEMRESATTRS_SERVICE_NAMESPACE:()=>gNc,SEMRESATTRS_SERVICE_VERSION:()=>dNc,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>hNc,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>fNc,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>pNc,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>INc,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>_Nc,SEMRESATTRS_WEBENGINE_NAME:()=>mNc,SEMRESATTRS_WEBENGINE_VERSION:()=>CNc,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>pxc,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>fxc,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>Ixc,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>mxc,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>Cxc,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>_xc,SemanticAttributes:()=>gBc,SemanticResourceAttributes:()=>yNc,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>pDc,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>fDc,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>IDc,TELEMETRYSDKLANGUAGEVALUES_GO:()=>hDc,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>mDc,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>CDc,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>_Dc,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>yDc,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>bDc,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>EDc,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>DDc,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>kDc,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>xDc,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>GDc,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>FDc,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>ZDc,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>LDc,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>VDc,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>PDc,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>WDc,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>ODc,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>MDc,TelemetrySdkLanguageValues:()=>SDc});var _4i=bc(()=>{YYi();I4i();h4i();m4i()});var y4i=H(jSt=>{"use strict";Object.defineProperty(jSt,"__esModule",{value:!0});jSt.SDK_INFO=void 0;var iGc=$Lr(),FKe=(_4i(),vi(C4i));jSt.SDK_INFO={[FKe.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[FKe.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[FKe.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:FKe.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[FKe.SEMRESATTRS_TELEMETRY_SDK_VERSION]:iGc.VERSION}});var b4i=H(zSt=>{"use strict";Object.defineProperty(zSt,"__esModule",{value:!0});zSt.unrefTimer=void 0;function sGc(e){e.unref()}zSt.unrefTimer=sGc});var S4i=H(gD=>{"use strict";Object.defineProperty(gD,"__esModule",{value:!0});gD.unrefTimer=gD.SDK_INFO=gD.otperformance=gD.RandomIdGenerator=gD.hexToBase64=gD._globalThis=gD.getEnv=gD.getEnvWithoutDefaults=void 0;var E4i=XOi();Object.defineProperty(gD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return E4i.getEnvWithoutDefaults}});Object.defineProperty(gD,"getEnv",{enumerable:!0,get:function(){return E4i.getEnv}});var oGc=JOi();Object.defineProperty(gD,"_globalThis",{enumerable:!0,get:function(){return oGc._globalThis}});var aGc=KOi();Object.defineProperty(gD,"hexToBase64",{enumerable:!0,get:function(){return aGc.hexToBase64}});var cGc=qOi();Object.defineProperty(gD,"RandomIdGenerator",{enumerable:!0,get:function(){return cGc.RandomIdGenerator}});var lGc=$Oi();Object.defineProperty(gD,"otperformance",{enumerable:!0,get:function(){return lGc.otperformance}});var uGc=y4i();Object.defineProperty(gD,"SDK_INFO",{enumerable:!0,get:function(){return uGc.SDK_INFO}});var gGc=b4i();Object.defineProperty(gD,"unrefTimer",{enumerable:!0,get:function(){return gGc.unrefTimer}})});var t9r=H(AD=>{"use strict";Object.defineProperty(AD,"__esModule",{value:!0});AD.unrefTimer=AD.otperformance=AD.hexToBase64=AD.getEnvWithoutDefaults=AD.getEnv=AD._globalThis=AD.SDK_INFO=AD.RandomIdGenerator=void 0;var jce=S4i();Object.defineProperty(AD,"RandomIdGenerator",{enumerable:!0,get:function(){return jce.RandomIdGenerator}});Object.defineProperty(AD,"SDK_INFO",{enumerable:!0,get:function(){return jce.SDK_INFO}});Object.defineProperty(AD,"_globalThis",{enumerable:!0,get:function(){return jce._globalThis}});Object.defineProperty(AD,"getEnv",{enumerable:!0,get:function(){return jce.getEnv}});Object.defineProperty(AD,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return jce.getEnvWithoutDefaults}});Object.defineProperty(AD,"hexToBase64",{enumerable:!0,get:function(){return jce.hexToBase64}});Object.defineProperty(AD,"otperformance",{enumerable:!0,get:function(){return jce.otperformance}});Object.defineProperty(AD,"unrefTimer",{enumerable:!0,get:function(){return jce.unrefTimer}})});var T4i=H(OE=>{"use strict";Object.defineProperty(OE,"__esModule",{value:!0});OE.addHrTimes=OE.isTimeInput=OE.isTimeInputHrTime=OE.hrTimeToMicroseconds=OE.hrTimeToMilliseconds=OE.hrTimeToNanoseconds=OE.hrTimeToTimeStamp=OE.hrTimeDuration=OE.timeInputToHrTime=OE.hrTime=OE.getTimeOrigin=OE.millisToHrTime=void 0;var r9r=t9r(),v4i=9,AGc=6,dGc=Math.pow(10,AGc),qSt=Math.pow(10,v4i);function ZKe(e){let t=e/1e3,r=Math.trunc(t),n=Math.round(e%1e3*dGc);return[r,n]}OE.millisToHrTime=ZKe;function n9r(){let e=r9r.otperformance.timeOrigin;if(typeof e!="number"){let t=r9r.otperformance;e=t.timing&&t.timing.fetchStart}return e}OE.getTimeOrigin=n9r;function B4i(e){let t=ZKe(n9r()),r=ZKe(typeof e=="number"?e:r9r.otperformance.now());return w4i(t,r)}OE.hrTime=B4i;function pGc(e){if(i9r(e))return e;if(typeof e=="number")return e=qSt&&(r[1]-=qSt,r[0]+=1),r}OE.addHrTimes=w4i});var R4i=H(LKe=>{"use strict";Object.defineProperty(LKe,"__esModule",{value:!0});LKe.ExportResultCode=void 0;var yGc;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(yGc=LKe.ExportResultCode||(LKe.ExportResultCode={}))});var D4i=H($St=>{"use strict";Object.defineProperty($St,"__esModule",{value:!0});$St.CompositePropagator=void 0;var N4i=(GI(),vi(xI)),s9r=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(n=>typeof n.fields=="function"?n.fields():[]).reduce((n,a)=>n.concat(a),[])))}inject(t,r,n){for(let a of this._propagators)try{a.inject(t,r,n)}catch(o){N4i.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,n){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,n)}catch(l){N4i.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${l.message}`)}return a},t)}fields(){return this._fields.slice()}};$St.CompositePropagator=s9r});var k4i=H(ZDe=>{"use strict";Object.defineProperty(ZDe,"__esModule",{value:!0});ZDe.validateValue=ZDe.validateKey=void 0;var o9r="[_0-9a-z-*/]",bGc=`[a-z]${o9r}{0,255}`,EGc=`[a-z0-9]${o9r}{0,240}@[a-z]${o9r}{0,13}`,SGc=new RegExp(`^(?:${bGc}|${EGc})$`),vGc=/^[ -~]{0,255}[!-~]$/,BGc=/,|=/;function wGc(e){return SGc.test(e)}ZDe.validateKey=wGc;function TGc(e){return vGc.test(e)&&!BGc.test(e)}ZDe.validateValue=TGc});var c9r=H(evt=>{"use strict";Object.defineProperty(evt,"__esModule",{value:!0});evt.TraceState=void 0;var x4i=k4i(),G4i=32,RGc=512,F4i=",",Z4i="=",a9r=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let n=this._clone();return n._internalState.has(t)&&n._internalState.delete(t),n._internalState.set(t,r),n}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+Z4i+this.get(r)),t),[]).join(F4i)}_parse(t){t.length>RGc||(this._internalState=t.split(F4i).reverse().reduce((r,n)=>{let a=n.trim(),o=a.indexOf(Z4i);if(o!==-1){let l=a.slice(0,o),A=a.slice(o+1,n.length);(0,x4i.validateKey)(l)&&(0,x4i.validateValue)(A)&&r.set(l,A)}return r},new Map),this._internalState.size>G4i&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,G4i))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};evt.TraceState=a9r});var V4i=H(HG=>{"use strict";Object.defineProperty(HG,"__esModule",{value:!0});HG.W3CTraceContextPropagator=HG.parseTraceParent=HG.TRACE_STATE_HEADER=HG.TRACE_PARENT_HEADER=void 0;var tvt=(GI(),vi(xI)),NGc=xKe(),DGc=c9r();HG.TRACE_PARENT_HEADER="traceparent";HG.TRACE_STATE_HEADER="tracestate";var kGc="00",xGc="(?!ff)[\\da-f]{2}",GGc="(?![0]{32})[\\da-f]{32}",FGc="(?![0]{16})[\\da-f]{16}",ZGc="[\\da-f]{2}",LGc=new RegExp(`^\\s?(${xGc})-(${GGc})-(${FGc})-(${ZGc})(-.*)?\\s?$`);function L4i(e){let t=LGc.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}HG.parseTraceParent=L4i;var l9r=class{inject(t,r,n){let a=tvt.trace.getSpanContext(t);if(!a||(0,NGc.isTracingSuppressed)(t)||!(0,tvt.isSpanContextValid)(a))return;let o=`${kGc}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||tvt.TraceFlags.NONE).toString(16)}`;n.set(r,HG.TRACE_PARENT_HEADER,o),a.traceState&&n.set(r,HG.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,n){let a=n.get(r,HG.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let l=L4i(o);if(!l)return t;l.isRemote=!0;let A=n.get(r,HG.TRACE_STATE_HEADER);if(A){let f=Array.isArray(A)?A.join(","):A;l.traceState=new DGc.TraceState(typeof f=="string"?f:void 0)}return tvt.trace.setSpanContext(t,l)}fields(){return[HG.TRACE_PARENT_HEADER,HG.TRACE_STATE_HEADER]}};HG.W3CTraceContextPropagator=l9r});var P4i=H(m4=>{"use strict";Object.defineProperty(m4,"__esModule",{value:!0});m4.getRPCMetadata=m4.deleteRPCMetadata=m4.setRPCMetadata=m4.RPCType=void 0;var VGc=(GI(),vi(xI)),u9r=(0,VGc.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),PGc;(function(e){e.HTTP="http"})(PGc=m4.RPCType||(m4.RPCType={}));function WGc(e,t){return e.setValue(u9r,t)}m4.setRPCMetadata=WGc;function OGc(e){return e.deleteValue(u9r)}m4.deleteRPCMetadata=OGc;function MGc(e){return e.getValue(u9r)}m4.getRPCMetadata=MGc});var A9r=H(rvt=>{"use strict";Object.defineProperty(rvt,"__esModule",{value:!0});rvt.AlwaysOffSampler=void 0;var HGc=(GI(),vi(xI)),g9r=class{shouldSample(){return{decision:HGc.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};rvt.AlwaysOffSampler=g9r});var p9r=H(nvt=>{"use strict";Object.defineProperty(nvt,"__esModule",{value:!0});nvt.AlwaysOnSampler=void 0;var YGc=(GI(),vi(xI)),d9r=class{shouldSample(){return{decision:YGc.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};nvt.AlwaysOnSampler=d9r});var O4i=H(svt=>{"use strict";Object.defineProperty(svt,"__esModule",{value:!0});svt.ParentBasedSampler=void 0;var ivt=(GI(),vi(xI)),QGc=JLr(),W4i=A9r(),f9r=p9r(),I9r=class{constructor(t){var r,n,a,o;this._root=t.root,this._root||((0,QGc.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new f9r.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new f9r.AlwaysOnSampler,this._remoteParentNotSampled=(n=t.remoteParentNotSampled)!==null&&n!==void 0?n:new W4i.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new f9r.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new W4i.AlwaysOffSampler}shouldSample(t,r,n,a,o,l){let A=ivt.trace.getSpanContext(t);return!A||!(0,ivt.isSpanContextValid)(A)?this._root.shouldSample(t,r,n,a,o,l):A.isRemote?A.traceFlags&ivt.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,n,a,o,l):this._remoteParentNotSampled.shouldSample(t,r,n,a,o,l):A.traceFlags&ivt.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,n,a,o,l):this._localParentNotSampled.shouldSample(t,r,n,a,o,l)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};svt.ParentBasedSampler=I9r});var M4i=H(ovt=>{"use strict";Object.defineProperty(ovt,"__esModule",{value:!0});ovt.TraceIdRatioBasedSampler=void 0;var h9r=(GI(),vi(xI)),m9r=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,h9r.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let n=0;n>>0}return r}};ovt.TraceIdRatioBasedSampler=m9r});var J4i=H(avt=>{"use strict";Object.defineProperty(avt,"__esModule",{value:!0});avt.isPlainObject=void 0;var XGc="[object Object]",JGc="[object Null]",UGc="[object Undefined]",KGc=Function.prototype,H4i=KGc.toString,jGc=H4i.call(Object),zGc=qGc(Object.getPrototypeOf,Object),Y4i=Object.prototype,Q4i=Y4i.hasOwnProperty,UCe=Symbol?Symbol.toStringTag:void 0,X4i=Y4i.toString;function qGc(e,t){return function(r){return e(t(r))}}function $Gc(e){if(!eFc(e)||tFc(e)!==XGc)return!1;let t=zGc(e);if(t===null)return!0;let r=Q4i.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&H4i.call(r)===jGc}avt.isPlainObject=$Gc;function eFc(e){return e!=null&&typeof e=="object"}function tFc(e){return e==null?e===void 0?UGc:JGc:UCe&&UCe in Object(e)?rFc(e):nFc(e)}function rFc(e){let t=Q4i.call(e,UCe),r=e[UCe],n=!1;try{e[UCe]=void 0,n=!0}catch{}let a=X4i.call(e);return n&&(t?e[UCe]=r:delete e[UCe]),a}function nFc(e){return X4i.call(e)}});var q4i=H(uvt=>{"use strict";Object.defineProperty(uvt,"__esModule",{value:!0});uvt.merge=void 0;var U4i=J4i(),iFc=20;function sFc(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=j4i(t,e.shift(),0,r);return t}uvt.merge=sFc;function C9r(e){return lvt(e)?e.slice():e}function j4i(e,t,r=0,n){let a;if(!(r>iFc)){if(r++,cvt(e)||cvt(t)||z4i(t))a=C9r(t);else if(lvt(e)){if(a=e.slice(),lvt(t))for(let o=0,l=t.length;o"u"?delete a[f]:a[f]=I;else{let C=a[f],b=I;if(K4i(e,f,n)||K4i(t,f,n))delete a[f];else{if(VKe(C)&&VKe(b)){let E=n.get(C)||[],N=n.get(b)||[];E.push({obj:e,key:f}),N.push({obj:t,key:f}),n.set(C,E),n.set(b,N)}a[f]=j4i(a[f],I,r,n)}}}}else a=t;return a}}function K4i(e,t,r){let n=r.get(e[t])||[];for(let a=0,o=n.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function oFc(e,t){return!(!(0,U4i.isPlainObject)(e)||!(0,U4i.isPlainObject)(t))}});var $4i=H(LDe=>{"use strict";Object.defineProperty(LDe,"__esModule",{value:!0});LDe.callWithTimeout=LDe.TimeoutError=void 0;var gvt=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};LDe.TimeoutError=gvt;function aFc(e,t){let r,n=new Promise(function(o,l){r=setTimeout(function(){l(new gvt("Operation timed out."))},t)});return Promise.race([e,n]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}LDe.callWithTimeout=aFc});var tJi=H(VDe=>{"use strict";Object.defineProperty(VDe,"__esModule",{value:!0});VDe.isUrlIgnored=VDe.urlMatches=void 0;function eJi(e,t){return typeof t=="string"?e===t:!!e.match(t)}VDe.urlMatches=eJi;function cFc(e,t){if(!t)return!1;for(let r of t)if(eJi(e,r))return!0;return!1}VDe.isUrlIgnored=cFc});var rJi=H(Avt=>{"use strict";Object.defineProperty(Avt,"__esModule",{value:!0});Avt.isWrapped=void 0;function lFc(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}Avt.isWrapped=lFc});var nJi=H(dvt=>{"use strict";Object.defineProperty(dvt,"__esModule",{value:!0});dvt.Deferred=void 0;var _9r=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};dvt.Deferred=_9r});var iJi=H(pvt=>{"use strict";Object.defineProperty(pvt,"__esModule",{value:!0});pvt.BindOnceFuture=void 0;var uFc=nJi(),y9r=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new uFc.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};pvt.BindOnceFuture=y9r});var oJi=H(fvt=>{"use strict";Object.defineProperty(fvt,"__esModule",{value:!0});fvt._export=void 0;var sJi=(GI(),vi(xI)),gFc=xKe();function AFc(e,t){return new Promise(r=>{sJi.context.with((0,gFc.suppressTracing)(sJi.context.active()),()=>{e.export(t,n=>{r(n)})})})}fvt._export=AFc});var S9r=H(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=Ja.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Ja.TraceState=Ja.unsuppressTracing=Ja.suppressTracing=Ja.isTracingSuppressed=Ja.TraceIdRatioBasedSampler=Ja.ParentBasedSampler=Ja.AlwaysOnSampler=Ja.AlwaysOffSampler=Ja.setRPCMetadata=Ja.getRPCMetadata=Ja.deleteRPCMetadata=Ja.RPCType=Ja.parseTraceParent=Ja.W3CTraceContextPropagator=Ja.TRACE_STATE_HEADER=Ja.TRACE_PARENT_HEADER=Ja.CompositePropagator=Ja.unrefTimer=Ja.otperformance=Ja.hexToBase64=Ja.getEnvWithoutDefaults=Ja.getEnv=Ja._globalThis=Ja.SDK_INFO=Ja.RandomIdGenerator=Ja.baggageUtils=Ja.ExportResultCode=Ja.hexToBinary=Ja.timeInputToHrTime=Ja.millisToHrTime=Ja.isTimeInputHrTime=Ja.isTimeInput=Ja.hrTimeToTimeStamp=Ja.hrTimeToNanoseconds=Ja.hrTimeToMilliseconds=Ja.hrTimeToMicroseconds=Ja.hrTimeDuration=Ja.hrTime=Ja.getTimeOrigin=Ja.addHrTimes=Ja.loggingErrorHandler=Ja.setGlobalErrorHandler=Ja.globalErrorHandler=Ja.sanitizeAttributes=Ja.isAttributeValue=Ja.isAttributeKey=Ja.AnchoredClock=Ja.W3CBaggagePropagator=void 0;Ja.internal=Ja.VERSION=Ja.BindOnceFuture=Ja.isWrapped=Ja.urlMatches=Ja.isUrlIgnored=Ja.callWithTimeout=Ja.TimeoutError=Ja.TracesSamplerValues=Ja.merge=Ja.parseEnvironment=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Ja.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Ja.DEFAULT_ENVIRONMENT=void 0;var dFc=VOi();Object.defineProperty(Ja,"W3CBaggagePropagator",{enumerable:!0,get:function(){return dFc.W3CBaggagePropagator}});var pFc=POi();Object.defineProperty(Ja,"AnchoredClock",{enumerable:!0,get:function(){return pFc.AnchoredClock}});var b9r=YOi();Object.defineProperty(Ja,"isAttributeKey",{enumerable:!0,get:function(){return b9r.isAttributeKey}});Object.defineProperty(Ja,"isAttributeValue",{enumerable:!0,get:function(){return b9r.isAttributeValue}});Object.defineProperty(Ja,"sanitizeAttributes",{enumerable:!0,get:function(){return b9r.sanitizeAttributes}});var aJi=JLr();Object.defineProperty(Ja,"globalErrorHandler",{enumerable:!0,get:function(){return aJi.globalErrorHandler}});Object.defineProperty(Ja,"setGlobalErrorHandler",{enumerable:!0,get:function(){return aJi.setGlobalErrorHandler}});var fFc=XLr();Object.defineProperty(Ja,"loggingErrorHandler",{enumerable:!0,get:function(){return fFc.loggingErrorHandler}});var dH=T4i();Object.defineProperty(Ja,"addHrTimes",{enumerable:!0,get:function(){return dH.addHrTimes}});Object.defineProperty(Ja,"getTimeOrigin",{enumerable:!0,get:function(){return dH.getTimeOrigin}});Object.defineProperty(Ja,"hrTime",{enumerable:!0,get:function(){return dH.hrTime}});Object.defineProperty(Ja,"hrTimeDuration",{enumerable:!0,get:function(){return dH.hrTimeDuration}});Object.defineProperty(Ja,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return dH.hrTimeToMicroseconds}});Object.defineProperty(Ja,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return dH.hrTimeToMilliseconds}});Object.defineProperty(Ja,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return dH.hrTimeToNanoseconds}});Object.defineProperty(Ja,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return dH.hrTimeToTimeStamp}});Object.defineProperty(Ja,"isTimeInput",{enumerable:!0,get:function(){return dH.isTimeInput}});Object.defineProperty(Ja,"isTimeInputHrTime",{enumerable:!0,get:function(){return dH.isTimeInputHrTime}});Object.defineProperty(Ja,"millisToHrTime",{enumerable:!0,get:function(){return dH.millisToHrTime}});Object.defineProperty(Ja,"timeInputToHrTime",{enumerable:!0,get:function(){return dH.timeInputToHrTime}});var IFc=zLr();Object.defineProperty(Ja,"hexToBinary",{enumerable:!0,get:function(){return IFc.hexToBinary}});var hFc=R4i();Object.defineProperty(Ja,"ExportResultCode",{enumerable:!0,get:function(){return hFc.ExportResultCode}});var Ivt=OLr();Ja.baggageUtils={getKeyPairs:Ivt.getKeyPairs,serializeKeyPairs:Ivt.serializeKeyPairs,parseKeyPairsIntoRecord:Ivt.parseKeyPairsIntoRecord,parsePairKeyValue:Ivt.parsePairKeyValue};var zce=t9r();Object.defineProperty(Ja,"RandomIdGenerator",{enumerable:!0,get:function(){return zce.RandomIdGenerator}});Object.defineProperty(Ja,"SDK_INFO",{enumerable:!0,get:function(){return zce.SDK_INFO}});Object.defineProperty(Ja,"_globalThis",{enumerable:!0,get:function(){return zce._globalThis}});Object.defineProperty(Ja,"getEnv",{enumerable:!0,get:function(){return zce.getEnv}});Object.defineProperty(Ja,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return zce.getEnvWithoutDefaults}});Object.defineProperty(Ja,"hexToBase64",{enumerable:!0,get:function(){return zce.hexToBase64}});Object.defineProperty(Ja,"otperformance",{enumerable:!0,get:function(){return zce.otperformance}});Object.defineProperty(Ja,"unrefTimer",{enumerable:!0,get:function(){return zce.unrefTimer}});var mFc=D4i();Object.defineProperty(Ja,"CompositePropagator",{enumerable:!0,get:function(){return mFc.CompositePropagator}});var hvt=V4i();Object.defineProperty(Ja,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return hvt.TRACE_PARENT_HEADER}});Object.defineProperty(Ja,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return hvt.TRACE_STATE_HEADER}});Object.defineProperty(Ja,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return hvt.W3CTraceContextPropagator}});Object.defineProperty(Ja,"parseTraceParent",{enumerable:!0,get:function(){return hvt.parseTraceParent}});var mvt=P4i();Object.defineProperty(Ja,"RPCType",{enumerable:!0,get:function(){return mvt.RPCType}});Object.defineProperty(Ja,"deleteRPCMetadata",{enumerable:!0,get:function(){return mvt.deleteRPCMetadata}});Object.defineProperty(Ja,"getRPCMetadata",{enumerable:!0,get:function(){return mvt.getRPCMetadata}});Object.defineProperty(Ja,"setRPCMetadata",{enumerable:!0,get:function(){return mvt.setRPCMetadata}});var CFc=A9r();Object.defineProperty(Ja,"AlwaysOffSampler",{enumerable:!0,get:function(){return CFc.AlwaysOffSampler}});var _Fc=p9r();Object.defineProperty(Ja,"AlwaysOnSampler",{enumerable:!0,get:function(){return _Fc.AlwaysOnSampler}});var yFc=O4i();Object.defineProperty(Ja,"ParentBasedSampler",{enumerable:!0,get:function(){return yFc.ParentBasedSampler}});var bFc=M4i();Object.defineProperty(Ja,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return bFc.TraceIdRatioBasedSampler}});var E9r=xKe();Object.defineProperty(Ja,"isTracingSuppressed",{enumerable:!0,get:function(){return E9r.isTracingSuppressed}});Object.defineProperty(Ja,"suppressTracing",{enumerable:!0,get:function(){return E9r.suppressTracing}});Object.defineProperty(Ja,"unsuppressTracing",{enumerable:!0,get:function(){return E9r.unsuppressTracing}});var EFc=c9r();Object.defineProperty(Ja,"TraceState",{enumerable:!0,get:function(){return EFc.TraceState}});var PDe=KLr();Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(Ja,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return PDe.DEFAULT_ENVIRONMENT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(Ja,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return PDe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(Ja,"parseEnvironment",{enumerable:!0,get:function(){return PDe.parseEnvironment}});var SFc=q4i();Object.defineProperty(Ja,"merge",{enumerable:!0,get:function(){return SFc.merge}});var vFc=ULr();Object.defineProperty(Ja,"TracesSamplerValues",{enumerable:!0,get:function(){return vFc.TracesSamplerValues}});var cJi=$4i();Object.defineProperty(Ja,"TimeoutError",{enumerable:!0,get:function(){return cJi.TimeoutError}});Object.defineProperty(Ja,"callWithTimeout",{enumerable:!0,get:function(){return cJi.callWithTimeout}});var lJi=tJi();Object.defineProperty(Ja,"isUrlIgnored",{enumerable:!0,get:function(){return lJi.isUrlIgnored}});Object.defineProperty(Ja,"urlMatches",{enumerable:!0,get:function(){return lJi.urlMatches}});var BFc=rJi();Object.defineProperty(Ja,"isWrapped",{enumerable:!0,get:function(){return BFc.isWrapped}});var wFc=iJi();Object.defineProperty(Ja,"BindOnceFuture",{enumerable:!0,get:function(){return wFc.BindOnceFuture}});var TFc=$Lr();Object.defineProperty(Ja,"VERSION",{enumerable:!0,get:function(){return TFc.VERSION}});var RFc=oJi();Ja.internal={_export:RFc._export}});var AJi=H((TMu,v9r)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));v9r.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};v9r.exports=e}});var _Ji=H((RMu,CJi)=>{"use strict";var sw=wt("fs"),NFc=wt("events"),DFc=wt("util").inherits,dJi=wt("path"),w9r=AJi(),_vt=100,yvt=Buffer.allocUnsafe(0),kFc=16*1024,pJi="buffer",fJi="utf8";function IJi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,l){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let A=t._reopening;t.fd=l,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():A&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&sw.mkdirSync(dJi.dirname(e),{recursive:!0});let o=sw.openSync(e,n,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?sw.mkdir(dJi.dirname(e),{recursive:!0},o=>{if(o)return r(o);sw.open(e,n,a,r)}):sw.open(e,n,a,r)}function C4(e){if(!(this instanceof C4))return new C4(e);let{fd:t,dest:r,minLength:n,maxLength:a,maxWrite:o,sync:l,append:A=!0,mkdir:f,retryEAGAIN:I,fsync:C,contentMode:b,mode:E}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=a||0,this.maxWrite=o||kFc,this.sync=l||!1,this.writable=!0,this._fsync=C||!1,this.append=A||!1,this.mode=E,this.retryEAGAIN=I||(()=>!0),this.mkdir=f||!1;let N,B;if(b===pJi)this._writingBuf=yvt,this.write=FFc,this.flush=LFc,this.flushSync=PFc,this._actualWrite=OFc,N=()=>sw.writeSync(this.fd,this._writingBuf),B=()=>sw.write(this.fd,this._writingBuf,this.release);else if(b===void 0||b===fJi)this._writingBuf="",this.write=GFc,this.flush=ZFc,this.flushSync=VFc,this._actualWrite=WFc,N=()=>sw.writeSync(this.fd,this._writingBuf,"utf8"),B=()=>sw.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${fJi}" and "${pJi}", but passed ${b}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")IJi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(F,Q)=>{if(F){if((F.code==="EAGAIN"||F.code==="EBUSY")&&this.retryEAGAIN(F,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{w9r(_vt),this.release(void 0,0)}catch(ne){this.release(ne)}else setTimeout(B,_vt);else this._writing=!1,this.emit("error",F);return}this.emit("write",Q);let X=B9r(this._writingBuf,this._len,Q);if(this._len=X.len,this._writingBuf=X.writingBuf,this._writingBuf.length){if(!this.sync){B();return}try{do{let ne=N(),ce=B9r(this._writingBuf,this._len,ne);this._len=ce.len,this._writingBuf=ce.writingBuf}while(this._writingBuf.length)}catch(ne){this.release(ne);return}}this._fsync&&sw.fsyncSync(this.fd);let ae=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):ae>this.minLength?this._actualWrite():this._ending?ae>0?this._actualWrite():(this._writing=!1,bvt(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(xFc,this)):this.emit("drain"))},this.on("newListener",function(F){F==="drain"&&(this._asyncDrainScheduled=!1)})}function B9r(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function xFc(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}DFc(C4,NFc);function hJi(e,t){return e.length===0?yvt:e.length===1?e[0]:Buffer.concat(e,t)}function GFc(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):sw.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function ZFc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&mJi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function LFc(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&mJi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}C4.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&sw.close(t,r=>{if(r)return this.emit("error",r)})}),IJi(this.file,this)};C4.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():bvt(this)))};function VFc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=sw.writeSync(this.fd,e,"utf8"),r=B9r(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;w9r(_vt)}}try{sw.fsyncSync(this.fd)}catch{}}function PFc(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=yvt);let e=yvt;for(;this._bufs.length||e.length;){e.length<=0&&(e=hJi(this._bufs[0],this._lens[0]));try{let t=sw.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;w9r(_vt)}}}C4.prototype.destroy=function(){this.destroyed||bvt(this)};function WFc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=sw.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else sw.write(this.fd,this._writingBuf,"utf8",e)}function OFc(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:hJi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=sw.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else sw.write(this.fd,this._writingBuf,e)}function bvt(e){if(e.fd===-1){e.once("ready",bvt.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],sw.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?sw.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}C4.SonicBoom=C4;C4.default=C4;CJi.exports=C4});var BJi=H((NMu,vJi)=>{"use strict";var _4={exit:[],beforeExit:[]},yJi={exit:YFc,beforeExit:QFc},WDe;function MFc(){WDe===void 0&&(WDe=new FinalizationRegistry(XFc))}function HFc(e){_4[e].length>0||process.on(e,yJi[e])}function bJi(e){_4[e].length>0||(process.removeListener(e,yJi[e]),_4.exit.length===0&&_4.beforeExit.length===0&&(WDe=void 0))}function YFc(){EJi("exit")}function QFc(){EJi("beforeExit")}function EJi(e){for(let t of _4[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}_4[e]=[]}function XFc(e){for(let t of["exit","beforeExit"]){let r=_4[t].indexOf(e);_4[t].splice(r,r+1),bJi(t)}}function SJi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");HFc(e);let n=new WeakRef(t);n.fn=r,MFc(),WDe.register(t,n),_4[e].push(n)}function JFc(e,t){SJi("exit",e,t)}function UFc(e,t){SJi("beforeExit",e,t)}function KFc(e){if(WDe!==void 0){WDe.unregister(e);for(let t of["exit","beforeExit"])_4[t]=_4[t].filter(r=>{let n=r.deref();return n&&n!==e}),bJi(t)}}vJi.exports={register:JFc,registerBeforeExit:UFc,unregister:KFc}});var ZJi=H((k9r,x9r)=>{(function(e,t){typeof k9r=="object"&&typeof x9r<"u"?x9r.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})(k9r,function(){"use strict";function e(Se,De){var k=Se==null?null:typeof Symbol<"u"&&Se[Symbol.iterator]||Se["@@iterator"];if(k!=null){var et,ct,Me,je,St=[],At=!0,Yt=!1;try{if(Me=(k=k.call(Se)).next,De===0){if(Object(k)!==k)return;At=!1}else for(;!(At=(et=Me.call(k)).done)&&(St.push(et.value),St.length!==De);At=!0);}catch(Tr){Yt=!0,ct=Tr}finally{try{if(!At&&k.return!=null&&(je=k.return(),Object(je)!==je))return}finally{if(Yt)throw ct}}return St}}function t(Se,De){return a(Se)||e(Se,De)||l(Se,De)||I()}function r(Se){return n(Se)||o(Se)||l(Se)||f()}function n(Se){if(Array.isArray(Se))return A(Se)}function a(Se){if(Array.isArray(Se))return Se}function o(Se){if(typeof Symbol<"u"&&Se[Symbol.iterator]!=null||Se["@@iterator"]!=null)return Array.from(Se)}function l(Se,De){if(Se){if(typeof Se=="string")return A(Se,De);var k=Object.prototype.toString.call(Se).slice(8,-1);if(k==="Object"&&Se.constructor&&(k=Se.constructor.name),k==="Map"||k==="Set")return Array.from(Se);if(k==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(k))return A(Se,De)}}function A(Se,De){(De==null||De>Se.length)&&(De=Se.length);for(var k=0,et=new Array(De);k=je[0]&&ct<=je[1])return Se(De,k,et)}return ct},Q=function(De){for(var k=De.length,et=0,ct=0;ct1&&(et-=1),et<1/6?De+(k-De)*6*et:et<1/2?k:et<2/3?De+(k-De)*(2/3-et)*6:De},ce=function(De,k,et){var ct,Me,je;if(De/=360,k/=100,et/=100,k===0)ct=Me=je=et;else{var St=et<.5?et*(1+k):et+k-et*k,At=2*et-St;ct=ne(At,St,De+1/3),Me=ne(At,St,De),je=ne(At,St,De-1/3)}return[Math.round(ct*255),Math.round(Me*255),Math.round(je*255)]},fe=function(De,k,et,ct){return(De*299+k*587+et*114)/1e3>=ct},ue=function(De,k,et){return"hsl(".concat(De,", ").concat(k,"%, ").concat(et,"%)")},de=function(De,k,et,ct){switch(ct){case"rgb":return"rgb(".concat(De,", ").concat(k,", ").concat(et,")");case"hex":default:return"#".concat(E(De.toString(16))).concat(E(k.toString(16))).concat(E(et.toString(16)))}},be=function(De){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},et=k.format,ct=et===void 0?"hex":et,Me=k.saturation,je=Me===void 0?[50,55]:Me,St=k.lightness,At=St===void 0?[50,60]:St,Yt=k.differencePoint,Tr=Yt===void 0?130:Yt,Nr=Math.abs(Q(String(De))),er=X(Nr,[0,360]),vt=X(Nr,ae(je,C)),xt=X(Nr,ae(At,b)),Zr=ce(er,vt,xt),qt=t(Zr,3),Xt=qt[0],lr=qt[1],cr=qt[2];return{color:ct==="hsl"?ue(er,vt,xt):de(Xt,lr,cr,ct),isLight:fe(Xt,lr,cr,Tr)}};return be.random=function(){var Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},De=Se.format,k=De===void 0?"hex":De,et=Se.saturation,ct=et===void 0?[50,55]:et,Me=Se.lightness,je=Me===void 0?[50,60]:Me,St=Se.differencePoint,At=St===void 0?130:St,Yt=Se.excludeHue;ct=ae(ct,C),je=ae(je,b);var Tr=Yt?F(0,359,Yt):B(0,359),Nr=typeof ct=="number"?ct:B.apply(void 0,r(ct)),er=typeof je=="number"?je:B.apply(void 0,r(je)),vt=ce(Tr,Nr,er),xt=t(vt,3),Zr=xt[0],qt=xt[1],Xt=xt[2];return{color:k==="hsl"?ue(Tr,Nr,er):de(Zr,qt,Xt,k),isLight:fe(Zr,qt,Xt,At)}},be})});var L9r=H(Gj=>{"use strict";Object.defineProperty(Gj,"__esModule",{value:!0});Gj.TOKEN_TYPE_TO_HIGHLIGHT=Gj.HighlightSubject=Gj.TokenType=void 0;var TV;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(TV=Gj.TokenType||(Gj.TokenType={}));var RV;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(RV=Gj.HighlightSubject||(Gj.HighlightSubject={}));Gj.TOKEN_TYPE_TO_HIGHLIGHT={[TV.BOUNDARY]:RV.BOUNDARY,[TV.WORD]:RV.WORD,[TV.BACKTICK_QUOTE]:RV.BACKTICK_QUOTE,[TV.QUOTE]:RV.QUOTE,[TV.RESERVED]:RV.RESERVED,[TV.RESERVED_TOPLEVEL]:RV.RESERVED,[TV.RESERVED_NEWLINE]:RV.RESERVED,[TV.NUMBER]:RV.NUMBER,[TV.VARIABLE]:RV.VARIABLE,[TV.COMMENT]:RV.COMMENT,[TV.BLOCK_COMMENT]:RV.COMMENT,[TV.LITERAL]:RV.LITERAL,[TV.BUILT_IN]:RV.BUILT_IN}});var P9r=H(Nvt=>{"use strict";Object.defineProperty(Nvt,"__esModule",{value:!0});Nvt.Tokenizer=void 0;var zk=L9r(),V9r=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],n=t.length+1,a,o=t.length;for(;o;){if(n<=o)return r.push({type:zk.TokenType.ERROR,value:t}),r;n=o,a=this.createNextToken(t,a);let l=a.value.length;r.push(a),t=t.substr(l),o-=l}return r}createNextToken(t,r){let n;if(n=t.match(/^\s+/),n)return{type:zk.TokenType.WHITESPACE,value:n[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,l;return t[0]==="-"||t[0]==="#"?(l=t.indexOf(` -`),o=zk.TokenType.COMMENT):(l=t.indexOf("*/",2)+2,o=zk.TokenType.BLOCK_COMMENT),l===-1&&(l=t.length),{type:o,value:t.substr(0,l)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?zk.TokenType.BACKTICK_QUOTE:zk.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:zk.TokenType.VARIABLE,value:o}}if(n=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),n)return{type:zk.TokenType.VARIABLE,value:n[1]}}if(n=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),n)return{type:zk.TokenType.NUMBER,value:n[1]};if(n=new RegExp(`^(${this.regexBoundaries})`).exec(t),n)return{type:zk.TokenType.BOUNDARY,value:n[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(n=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED_NEWLINE,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.LITERAL,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.BUILT_IN,value:t.substr(0,n[1].length)};if(n=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),n)return{type:zk.TokenType.RESERVED,value:t.substr(0,n[1].length)}}return n=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),n?{type:zk.TokenType.RESERVED,value:t.substr(0,n[1].length-1)}:(n=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:zk.TokenType.WORD,value:n[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let n=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(n,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};Nvt.Tokenizer=V9r});var MJi=H((bHu,PKe)=>{"use strict";var aZc=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",cZc=typeof process<"u"&&process.platform==="win32",PJi=typeof process<"u"&&process.platform==="linux",W9r={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},WJi=Object.assign({},W9r,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),OJi=Object.assign({},W9r,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:PJi?"\u25B8":"\u276F",pointerSmall:PJi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});PKe.exports=cZc&&!aZc?WJi:OJi;Reflect.defineProperty(PKe.exports,"common",{enumerable:!1,value:W9r});Reflect.defineProperty(PKe.exports,"windows",{enumerable:!1,value:WJi});Reflect.defineProperty(PKe.exports,"other",{enumerable:!1,value:OJi})});var WKe=H((EHu,O9r)=>{"use strict";var lZc=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),uZc=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,gZc=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,HJi=()=>{let e={enabled:gZc(),visible:!0,styles:{},keys:{}},t=o=>{let l=o.open=`\x1B[${o.codes[0]}m`,A=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(I,C)=>{I.includes(A)&&(I=I.replace(f,A+l));let b=l+I+A;return C?b.replace(/\r*\n/g,`${A}$&${l}`):b},o},r=(o,l,A)=>typeof o=="function"?o(l):o.wrap(l,A),n=(o,l)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let A=""+o,f=A.includes(` -`),I=l.length;for(I>0&&l.includes("unstyle")&&(l=[...new Set(["unstyle",...l])].reverse());I-- >0;)A=r(e.styles[l[I]],A,f);return A},a=(o,l,A)=>{e.styles[o]=t({name:o,codes:l}),(e.keys[A]||(e.keys[A]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(I){e.alias(o,I)},get(){let I=C=>n(C,I.stack);return Reflect.setPrototypeOf(I,e),I.stack=this.stack?this.stack.concat(o):[o],I}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=uZc,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,l)=>{let A=typeof l=="string"?e[l]:l;if(typeof A!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");A.stack||(Reflect.defineProperty(A,"name",{value:o}),e.styles[o]=A,A.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=I=>n(I,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(A.stack):A.stack,f}})},e.theme=o=>{if(!lZc(o))throw new TypeError("Expected theme to be an object");for(let l of Object.keys(o))e.alias(l,o[l]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=MJi(),e.define=a,e};O9r.exports=HJi();O9r.exports.create=HJi});var YJi=H(MDe=>{"use strict";var AZc=MDe&&MDe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MDe,"__esModule",{value:!0});MDe.SqlHighlighter=void 0;var Fj=AZc(WKe()),dZc=P9r(),eL=L9r(),Dvt=class e{constructor(t={}){this.theme=t,this.tokenizer=new dZc.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),n,a="",o=0;for(;n=r[o++];)a+=this.highlightToken(n.type,n.value);return a}highlightToken(t,r){return t===eL.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!eL.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[eL.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[eL.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};MDe.SqlHighlighter=Dvt;Dvt.DEFAULT_THEME={[eL.HighlightSubject.QUOTE]:Fj.default.yellow,[eL.HighlightSubject.BACKTICK_QUOTE]:Fj.default.yellow,[eL.HighlightSubject.RESERVED]:Fj.default.white.bold,[eL.HighlightSubject.BOUNDARY]:Fj.default.reset,[eL.HighlightSubject.NUMBER]:Fj.default.green,[eL.HighlightSubject.WORD]:void 0,[eL.HighlightSubject.COMMENT]:Fj.default.green.dim,[eL.HighlightSubject.VARIABLE]:Fj.default.yellow,[eL.HighlightSubject.FUNCTIONS]:Fj.default.green.bold,[eL.HighlightSubject.BUILT_IN]:Fj.default.cyan,[eL.HighlightSubject.LITERAL]:Fj.default.cyan}});var XJi=H(qce=>{"use strict";var pZc=qce&&qce.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),QJi=qce&&qce.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&pZc(t,e,r)};Object.defineProperty(qce,"__esModule",{value:!0});QJi(P9r(),qce);QJi(YJi(),qce)});var UJi=H((JJi,kvt)=>{(function(e,t){typeof kvt=="object"&&kvt.exports?kvt.exports=t():e.nearley=t()})(JJi,function(){function e(f,I,C){return this.id=++e.highestId,this.name=f,this.symbols=I,this.postprocess=C,this}e.highestId=0,e.prototype.toString=function(f){var I=typeof f>"u"?this.symbols.map(A).join(" "):this.symbols.slice(0,f).map(A).join(" ")+" \u25CF "+this.symbols.slice(f).map(A).join(" ");return this.name+" \u2192 "+I};function t(f,I,C,b){this.rule=f,this.dot=I,this.reference=C,this.data=[],this.wantedBy=b,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var I=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return I.left=this,I.right=f,I.isComplete&&(I.data=I.build(),I.right=void 0),I},t.prototype.build=function(){var f=[],I=this;do f.push(I.right.data),I=I.left;while(I.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,I){this.grammar=f,this.index=I,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var I=this.states,C=this.wants,b=this.completed,E=0;E0&&I.push(" ^ "+b+" more lines identical to this"),b=0,I.push(" "+B)),C=B}},o.prototype.getSymbolDisplay=function(f){return l(f)},o.prototype.buildFirstStateStack=function(f,I){if(I.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var C=f.wantedBy[0],b=[f].concat(I),E=this.buildFirstStateStack(C,b);return E===null?null:[f].concat(E)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var I=f.index;this.current=I,this.table[I]=f,this.table.splice(I+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],I=this.grammar.start,C=this.table[this.table.length-1];return C.states.forEach(function(b){b.rule.name===I&&b.dot===b.rule.symbols.length&&b.reference===0&&b.data!==o.fail&&f.push(b)}),f.map(function(b){return b.data})};function l(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function A(f){var I=typeof f;if(I==="string")return f;if(I==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:n,Rule:e}})});var QVr=H((HVr,YVr)=>{(function(e,t){typeof HVr=="object"&&typeof YVr<"u"?YVr.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(HVr,function(){"use strict";var e=function(N){return t(N)&&!r(N)};function t(E){return!!E&&typeof E=="object"}function r(E){var N=Object.prototype.toString.call(E);return N==="[object RegExp]"||N==="[object Date]"||o(E)}var n=typeof Symbol=="function"&&Symbol.for,a=n?Symbol.for("react.element"):60103;function o(E){return E.$$typeof===a}function l(E){return Array.isArray(E)?[]:{}}function A(E,N){var B=N&&N.clone===!0;return B&&e(E)?C(l(E),E,N):E}function f(E,N,B){var F=E.slice();return N.forEach(function(Q,X){typeof F[X]>"u"?F[X]=A(Q,B):e(Q)?F[X]=C(E[X],Q,B):E.indexOf(Q)===-1&&F.push(A(Q,B))}),F}function I(E,N,B){var F={};return e(E)&&Object.keys(E).forEach(function(Q){F[Q]=A(E[Q],B)}),Object.keys(N).forEach(function(Q){!e(N[Q])||!E[Q]?F[Q]=A(N[Q],B):F[Q]=C(E[Q],N[Q],B)}),F}function C(E,N,B){var F=Array.isArray(N),Q=Array.isArray(E),X=B||{arrayMerge:f},ae=F===Q;if(ae)if(F){var ne=X.arrayMerge||f;return ne(E,N,B)}else return I(E,N,B);else return A(N,B)}C.all=function(N,B){if(!Array.isArray(N)||N.length<2)throw new Error("first argument should be an array with at least two elements");return N.reduce(function(F,Q){return C(F,Q,B)})};var b=C;return b})});var XVr=H((QXu,d8i)=>{var OPc=QVr();d8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(n=>{this[n]=a=>this.set(n,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[l,A])=>(o[l]=A,o),{}),n=Object.keys(r),a=[...n];return n.forEach(o=>{if(!r[o])return;let{__before:l,__after:A}=r[o];l&&a.includes(l)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(l),0,o)):A&&a.includes(A)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(A)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:n}=this.order();if(n.length)return r}values(){let{entries:r,order:n}=this.order();return n.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,n){return this.has(r)||this.set(r,n()),this.get(r)}has(r){return this.store.has(r)}set(r,n){return this.store.set(r,n),this}merge(r,n=[]){return Object.keys(r).forEach(a=>{if(n.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,OPc(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((n,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(n[a]=o),n},{})}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var Kvt=H((JXu,p8i)=>{p8i.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var Lj=H((KXu,f8i)=>{var MPc=XVr(),HPc=Kvt();f8i.exports=MPc(HPc(Object))});var h8i=H((jXu,I8i)=>{I8i.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var C8i=H((qXu,m8i)=>{m8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var jvt=H((e4u,_8i)=>{var YPc=h8i(),QPc=XVr(),XPc=Kvt(),JPc=C8i();_8i.exports=JPc(QPc(XPc(YPc)))});var b8i=H((t4u,y8i)=>{y8i.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,n=Function.prototype,a=Function.prototype){return r?n(this):a(this),this}}}});var qDe=H((n4u,E8i)=>{var UPc=b8i(),KPc=Kvt();E8i.exports=UPc(KPc(Object))});var zvt=H((i4u,S8i)=>{S8i.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var qvt=H((o4u,v8i)=>{var jPc=Lj(),zPc=zvt();v8i.exports=zPc(class extends jPc{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((n,a=[])=>typeof n=="function"?new n(...a):n)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),n=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(n=t,t=wt(n));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:n}}),o}})});var $vt=H((l4u,B8i)=>{var $De=Lj(),S4=qDe(),qPc=qvt();B8i.exports=class extends $De{constructor(e){super(e),this.alias=new $De(this),this.aliasFields=new S4(this),this.conditionNames=new S4(this),this.descriptionFiles=new S4(this),this.extensionAlias=new $De(this),this.extensions=new S4(this),this.mainFields=new S4(this),this.mainFiles=new S4(this),this.exportsFields=new S4(this),this.importsFields=new S4(this),this.restrictions=new S4(this),this.roots=new S4(this),this.modules=new S4(this),this.plugins=new $De(this),this.fallback=new $De(this),this.byDependency=new $De(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new qPc(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"plugin"])}}});var T8i=H((g4u,w8i)=>{var $Pc=$vt(),JVr=qDe();w8i.exports=class extends $Pc{constructor(e){super(e),this.modules=new JVr(this),this.moduleExtensions=new JVr(this),this.packageMains=new JVr(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r])}}});var N8i=H((d4u,R8i)=>{var eWc=Lj();R8i.exports=class extends eWc{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var k8i=H((f4u,D8i)=>{var tWc=Lj(),rWc=qDe();D8i.exports=class extends tWc{constructor(e){super(e),this.allowedHosts=new rWc(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var G8i=H((h4u,x8i)=>{var nWc=QVr(),iWc=Lj(),sWc=zvt();x8i.exports=sWc(class extends iWc{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(nWc(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var V8i=H((C4u,L8i)=>{var eBt=Lj(),F8i=qDe(),oWc=zvt(),aWc=G8i(),cWc=$vt();function Z8i(e){return Array.isArray(e)?e:[e]}var tBt=oWc(class extends eBt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let n=this;for(;n instanceof tBt;)this.names.unshift(n.ruleName),this.ruleTypes.unshift(n.ruleType),n=n.parent;this.uses=new eBt(this),this.include=new F8i(this),this.exclude=new F8i(this),this.rules=new eBt(this),this.oneOfs=new eBt(this),this.resolve=new cWc(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new aWc(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new tBt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new tBt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(Z8i(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(Z8i(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});L8i.exports=tBt});var O8i=H((y4u,W8i)=>{var qKe=Lj(),P8i=V8i();W8i.exports=class extends qKe{constructor(e){super(e),this.rules=new qKe(this),this.defaultRules=new qKe(this),this.generator=new qKe(this),this.parser=new qKe(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new P8i(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new P8i(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var Y8i=H((E4u,H8i)=>{var M8i=Lj(),lWc=jvt(),uWc=qvt();H8i.exports=class extends M8i{constructor(e){super(e),this.minimizers=new M8i(this),this.splitChunks=new lWc(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new uWc(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var X8i=H((v4u,Q8i)=>{var gWc=jvt();Q8i.exports=class extends gWc{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var $Ke=H(wO=>{"use strict";Object.defineProperty(wO,"__esModule",{value:!0});wO.stringifyPath=wO.quoteKey=wO.isValidVariableName=wO.IS_VALID_IDENTIFIER=wO.quoteString=void 0;var AWc=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,dWc=new Map([["\b","\\b"],[" ","\\t"],[` -`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function pWc(e){return dWc.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function fWc(e){return`'${e.replace(AWc,pWc)}'`}wO.quoteString=fWc;var IWc=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));wO.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function UVr(e){return typeof e=="string"&&!IWc.has(e)&&wO.IS_VALID_IDENTIFIER.test(e)}wO.isValidVariableName=UVr;function hWc(e,t){return UVr(e)?e:t(e)}wO.quoteKey=hWc;function mWc(e,t){let r="";for(let n of e)UVr(n)?r+=`.${n}`:r+=`[${t(n)}]`;return r}wO.stringifyPath=mWc});var KVr=H(v4=>{"use strict";Object.defineProperty(v4,"__esModule",{value:!0});v4.FunctionParser=v4.dedentFunction=v4.functionToString=v4.USED_METHOD_KEY=void 0;var J8i=$Ke(),CWc={" "(){}}[" "].toString().charAt(0)==='"',_Wc={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},yWc={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},bWc=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));v4.USED_METHOD_KEY=new WeakSet;var EWc=(e,t,r,n)=>{let a=typeof n=="string"?n:void 0;return a!==void 0&&v4.USED_METHOD_KEY.add(e),new rBt(e,t,r,a).stringify()};v4.functionToString=EWc;function U8i(e){let t;for(let r of e.split(` -`).slice(1)){let n=/^[\s\t]+/.exec(r);if(!n)return e;let[a]=n;(t===void 0||a.length")return this.keyPrefix+this.fnString;this.pos=n;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(CWc)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!J8i.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[n,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(n){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return n}consumeSyntaxUntil(t,r){let n=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&n&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(n=!1,this.consumeWhitespace()):n=bWc.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let n=t.exec(this.fnString.substr(this.pos));if(n)return this.pos+=n[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};v4.FunctionParser=rBt});var K8i=H(nBt=>{"use strict";Object.defineProperty(nBt,"__esModule",{value:!0});nBt.arrayToString=void 0;var SWc=(e,t,r)=>{let n=e.map(function(o,l){let A=r(o,l);return A===void 0?String(A):t+A.split(` -`).join(` -${t}`)}).join(t?`, -`:","),a=t&&n?` -`:"";return`[${a}${n}${a}]`};nBt.arrayToString=SWc});var j8i=H(iBt=>{"use strict";Object.defineProperty(iBt,"__esModule",{value:!0});iBt.objectToString=void 0;var vWc=$Ke(),BWc=KVr(),wWc=K8i(),TWc=(e,t,r,n)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return jVr(e,t,r,n);let a=NWc[Object.prototype.toString.call(e)];return a?a(e,t,r,n):void 0};iBt.objectToString=TWc;var RWc=(e,t,r,n)=>{let a=t?` -`:"",o=t?" ":"",l=Object.keys(e).reduce(function(A,f){let I=e[f],C=r(I,f);if(C===void 0)return A;let b=C.split(` -`).join(` -${t}`);return BWc.USED_METHOD_KEY.has(I)?(A.push(`${t}${b}`),A):(A.push(`${t}${vWc.quoteKey(f,r)}:${o}${b}`),A)},[]).join(`,${a}`);return l===""?"{}":`{${a}${l}${a}}`},jVr=(e,t,r)=>`Function(${r("return this")})()`,NWc={"[object Array]":wWc.arrayToString,"[object Object]":RWc,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":jVr,"[object Window]":jVr}});var z8i=H(sBt=>{"use strict";Object.defineProperty(sBt,"__esModule",{value:!0});sBt.toString=void 0;var DWc=$Ke(),kWc=j8i(),xWc=KVr(),GWc={string:DWc.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let n=Symbol.keyFor(e);return n!==void 0?`Symbol.for(${r(n)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:kWc.objectToString,function:xWc.functionToString},FWc=(e,t,r,n)=>e===null?"null":GWc[typeof e](e,t,r,n);sBt.toString=FWc});var tji=H(oBt=>{"use strict";Object.defineProperty(oBt,"__esModule",{value:!0});oBt.stringify=void 0;var q8i=z8i(),$8i=$Ke(),eji=Symbol("root");function ZWc(e,t,r,n={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],l=new Set,A=new Map,f=new Map,I=0,{maxDepth:C=100,references:b=!1,skipUndefinedProperties:E=!1,maxValues:N=1e5}=n,B=LWc(t),F=(ae,ne)=>{if(++I>N||E&&ae===void 0||o.length>C)return;if(ne===void 0)return B(ae,a,F,ne);o.push(ne);let ce=Q(ae,ne===eji?void 0:ne);return o.pop(),ce},Q=b?(ae,ne)=>{if(ae!==null&&(typeof ae=="object"||typeof ae=="function"||typeof ae=="symbol")){if(A.has(ae))return f.set(o.slice(1),A.get(ae)),B(void 0,a,F,ne);A.set(ae,o.slice(1))}return B(ae,a,F,ne)}:(ae,ne)=>{if(l.has(ae))return;l.add(ae);let ce=B(ae,a,F,ne);return l.delete(ae),ce},X=F(e,eji);if(f.size){let ae=a?" ":"",ne=a?` -`:"",ce=`var x${ae}=${ae}${X};${ne}`;for(let[fe,ue]of f.entries()){let de=$8i.stringifyPath(fe,F),be=$8i.stringifyPath(ue,F);ce+=`x${de}${ae}=${ae}x${be};${ne}`}return`(function${ae}()${ae}{${ne}${ce}return x;${ne}}())`}return X}oBt.stringify=ZWc;function LWc(e){return e?(t,r,n,a)=>e(t,r,o=>q8i.toString(o,r,n,a),a):q8i.toString}});var rji=H((x4u,qVr)=>{var zVr=Lj(),VWc=jvt(),PWc=qDe(),WWc=$vt(),OWc=T8i(),MWc=N8i(),HWc=k8i(),YWc=qvt(),QWc=O8i(),XWc=Y8i(),JWc=X8i();qVr.exports=class extends zVr{constructor(){super(),this.entryPoints=new zVr(this),this.output=new MWc(this),this.module=new QWc(this),this.resolve=new WWc(this),this.resolveLoader=new OWc(this),this.optimization=new XWc(this),this.plugins=new zVr(this),this.devServer=new HWc(this),this.performance=new JWc(this),this.node=new VWc(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:n}=tji();return n(e,(a,o,l)=>{if(a&&a.__pluginName){let A=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ -`,f=a.__pluginPath?`(require(${l(a.__pluginPath)}))`:a.__pluginConstructorName;if(f){let I=l(a.__pluginArgs).slice(1,-1);return`${A}new ${f}(${I})`}return A+l(a.__pluginArgs&&a.__pluginArgs.length?{args:a.__pluginArgs}:{})}if(a&&a.__ruleNames){let A=a.__ruleTypes;return`/* ${r}.module${a.__ruleNames.map((I,C)=>`.${A?A[C]:"rule"}('${I}')`).join("")}${a.__useName?`.use('${a.__useName}')`:""} */ -`+l(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":l(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new PWc(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new YWc(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,n)=>Object.assign(r,{[n]:e[n].values()}),{})}))}toString(e){return qVr.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(n=>this.entry(n).merge([].concat(e.entry[n]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(n=>this.plugin(n).merge(e.plugin[n])),r.forEach(n=>{!t.includes(n)&&n in e&&this[n].merge(e[n])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var $Ce=H(uBt=>{"use strict";Object.defineProperty(uBt,"__esModule",{value:!0});uBt.isJsonObject=sOc;uBt.isJsonArray=oOc;function sOc(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function oOc(e){return Array.isArray(e)}});var gBt=H(iPr=>{"use strict";Object.defineProperty(iPr,"__esModule",{value:!0});iPr.getTypesOfSchema=t8e;var pji=$Ce(),fji=["string","integer","number","object","array","boolean","null"];function t8e(e){if(!e)return new Set;if(e===!0)return new Set(fji);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,pji.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set(fji);if((0,pji.isJsonObject)(e.not)){let r=t8e(e.not);t=new Set([...t].filter(n=>!r.has(n)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let n=t8e(r);t=new Set([...n].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let n of e.oneOf){let a=t8e(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let n of e.anyOf){let a=t8e(n);r=new Set([...r,...a])}t=new Set([...r].filter(n=>t.has(n)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var mji=H(sPr=>{"use strict";Object.defineProperty(sPr,"__esModule",{value:!0});sPr.addUndefinedDefaults=hji;var sle=$Ce(),Iji=gBt();function hji(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let n=(0,Iji.getTypesOfSchema)(r);if(n.size===0)return e;let a;if(n.size===1)a=Array.from(n)[0];else if(n.size===2&&n.has("array")&&n.has("object"))a="array";else if(r.properties&&n.has("object"))a="object";else if(r.items&&n.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,sle.isJsonObject)(e))o=e;else return e;if(!(0,sle.isJsonObject)(r.properties))return o;for(let[l,A]of Object.entries(r.properties)){if(l==="$schema"||!(0,sle.isJsonObject)(A))continue;let f=o[l];if(f===void 0)o[l]=A.default;else if((0,sle.isJsonObject)(f)){let I=A.oneOf||A.anyOf,C=Object.keys(f),b=(0,sle.isJsonArray)(I)&&I.find(E=>{if(!(0,sle.isJsonObject)(E))return!1;let N=(0,Iji.getTypesOfSchema)(E);if(N.size===1&&N.has("object")&&(0,sle.isJsonObject)(E.properties)){let B=Object.keys(E.properties);return C.every(F=>B.includes(F))}return!1});b&&(0,sle.isJsonObject)(b)&&(o[l]=hji(f,t,b))}}return o}return e}});var _ji=H(Cji=>{"use strict";Object.defineProperty(Cji,"__esModule",{value:!0})});var aPr=H(r8e=>{"use strict";Object.defineProperty(r8e,"__esModule",{value:!0});r8e.buildJsonPointer=oPr;r8e.joinJsonPointer=aOc;r8e.parseJsonPointer=cOc;function oPr(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function aOc(e,...t){return e=="/"?oPr(t):e+oPr(t)}function cOc(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var s8e=H(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});v_.regexpCode=v_.getEsmExportName=v_.getProperty=v_.safeStringify=v_.stringify=v_.strConcat=v_.addCodeArg=v_.str=v_._=v_.nil=v_._Code=v_.Name=v_.IDENTIFIER=v_._CodeOrName=void 0;var n8e=class{};v_._CodeOrName=n8e;v_.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var e_e=class extends n8e{constructor(t){if(super(),!v_.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};v_.Name=e_e;var fH=class extends n8e{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof e_e&&(r[n.str]=(r[n.str]||0)+1),r),{})}};v_._Code=fH;v_.nil=new fH("");function yji(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(DV,"__esModule",{value:!0});DV.ValueScope=DV.ValueScopeName=DV.Scope=DV.varKinds=DV.UsedValueState=void 0;var NV=s8e(),uPr=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},ABt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(ABt||(DV.UsedValueState=ABt={}));DV.varKinds={const:new NV.Name("const"),let:new NV.Name("let"),var:new NV.Name("var")};var dBt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof NV.Name?t:this.name(t)}name(t){return new NV.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};DV.Scope=dBt;var pBt=class extends NV.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,NV._)`.${new NV.Name(r)}[${n}]`}};DV.ValueScopeName=pBt;var hOc=(0,NV._)`\n`,gPr=class extends dBt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?hOc:NV.nil}}get(){return this._scope}name(t){return new pBt(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,l=(n=r.key)!==null&&n!==void 0?n:r.ref,A=this._values[o];if(A){let C=A.get(l);if(C)return C}else A=this._values[o]=new Map;A.set(l,a);let f=this._scope[o]||(this._scope[o]=[]),I=f.length;return f[I]=r.ref,a.setValue(r,{property:o,itemIndex:I}),a}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,NV._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,n)}_reduceValues(t,r,n={},a){let o=NV.nil;for(let l in t){let A=t[l];if(!A)continue;let f=n[l]=n[l]||new Map;A.forEach(I=>{if(f.has(I))return;f.set(I,ABt.Started);let C=r(I);if(C){let b=this.opts.es5?DV.varKinds.var:DV.varKinds.const;o=(0,NV._)`${o}${b} ${I} = ${C};${this.opts._n}`}else if(C=a?.(I))o=(0,NV._)`${o}${C}${this.opts._n}`;else throw new uPr(I);f.set(I,ABt.Completed)})}return o}};DV.ValueScope=gPr});var Hh=H(om=>{"use strict";Object.defineProperty(om,"__esModule",{value:!0});om.or=om.and=om.not=om.CodeGen=om.operators=om.varKinds=om.ValueScopeName=om.ValueScope=om.Scope=om.Name=om.regexpCode=om.stringify=om.getProperty=om.nil=om.strConcat=om.str=om._=void 0;var wC=s8e(),B4=APr(),ole=s8e();Object.defineProperty(om,"_",{enumerable:!0,get:function(){return ole._}});Object.defineProperty(om,"str",{enumerable:!0,get:function(){return ole.str}});Object.defineProperty(om,"strConcat",{enumerable:!0,get:function(){return ole.strConcat}});Object.defineProperty(om,"nil",{enumerable:!0,get:function(){return ole.nil}});Object.defineProperty(om,"getProperty",{enumerable:!0,get:function(){return ole.getProperty}});Object.defineProperty(om,"stringify",{enumerable:!0,get:function(){return ole.stringify}});Object.defineProperty(om,"regexpCode",{enumerable:!0,get:function(){return ole.regexpCode}});Object.defineProperty(om,"Name",{enumerable:!0,get:function(){return ole.Name}});var mBt=APr();Object.defineProperty(om,"Scope",{enumerable:!0,get:function(){return mBt.Scope}});Object.defineProperty(om,"ValueScope",{enumerable:!0,get:function(){return mBt.ValueScope}});Object.defineProperty(om,"ValueScopeName",{enumerable:!0,get:function(){return mBt.ValueScopeName}});Object.defineProperty(om,"varKinds",{enumerable:!0,get:function(){return mBt.varKinds}});om.operators={GT:new wC._Code(">"),GTE:new wC._Code(">="),LT:new wC._Code("<"),LTE:new wC._Code("<="),EQ:new wC._Code("==="),NEQ:new wC._Code("!=="),NOT:new wC._Code("!"),OR:new wC._Code("||"),AND:new wC._Code("&&"),ADD:new wC._Code("+")};var ete=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},dPr=class extends ete{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?B4.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=tke(this.rhs,t,r)),this}get names(){return this.rhs instanceof wC._CodeOrName?this.rhs.names:{}}},fBt=class extends ete{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof wC.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=tke(this.rhs,t,r),this}get names(){let t=this.lhs instanceof wC.Name?{}:{...this.lhs.names};return hBt(t,this.rhs)}},pPr=class extends fBt{constructor(t,r,n,a){super(t,n,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},fPr=class extends ete{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},IPr=class extends ete{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},hPr=class extends ete{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},mPr=class extends ete{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=tke(this.code,t,r),this}get names(){return this.code instanceof wC._CodeOrName?this.code.names:{}}},o8e=class extends ete{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,a=n.length;for(;a--;){let o=n[a];o.optimizeNames(t,r)||(mOc(t,o.names),n.splice(a,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>n_e(t,r.names),{})}},tte=class extends o8e{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},CPr=class extends o8e{},eke=class extends tte{};eke.kind="else";var t_e=class e extends tte{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new eke(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(Eji(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=tke(this.condition,t,r),this}get names(){let t=super.names;return hBt(t,this.condition),this.else&&n_e(t,this.else.names),t}};t_e.kind="if";var r_e=class extends tte{};r_e.kind="for";var _Pr=class extends r_e{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=tke(this.iteration,t,r),this}get names(){return n_e(super.names,this.iteration.names)}},yPr=class extends r_e{constructor(t,r,n,a){super(),this.varKind=t,this.name=r,this.from=n,this.to=a}render(t){let r=t.es5?B4.varKinds.var:this.varKind,{name:n,from:a,to:o}=this;return`for(${r} ${n}=${a}; ${n}<${o}; ${n}++)`+super.render(t)}get names(){let t=hBt(super.names,this.from);return hBt(t,this.to)}},IBt=class extends r_e{constructor(t,r,n,a){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=tke(this.iterable,t,r),this}get names(){return n_e(super.names,this.iterable.names)}},a8e=class extends tte{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};a8e.kind="func";var c8e=class extends o8e{render(t){return"return "+super.render(t)}};c8e.kind="return";var bPr=class extends tte{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,a;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&n_e(t,this.catch.names),this.finally&&n_e(t,this.finally.names),t}},l8e=class extends tte{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};l8e.kind="catch";var u8e=class extends tte{render(t){return"finally"+super.render(t)}};u8e.kind="finally";var EPr=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new B4.Scope({parent:t}),this._nodes=[new CPr]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,a){let o=this._scope.toName(r);return n!==void 0&&a&&(this._constants[o.str]=n),this._leafNode(new dPr(t,o,n)),o}const(t,r,n){return this._def(B4.varKinds.const,t,r,n)}let(t,r,n){return this._def(B4.varKinds.let,t,r,n)}var(t,r,n){return this._def(B4.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new fBt(t,r,n))}add(t,r){return this._leafNode(new pPr(t,om.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==wC.nil&&this._leafNode(new mPr(t)),this}object(...t){let r=["{"];for(let[n,a]of t)r.length>1&&r.push(","),r.push(n),(n!==a||this.opts.es5)&&(r.push(":"),(0,wC.addCodeArg)(r,a));return r.push("}"),new wC._Code(r)}if(t,r,n){if(this._blockNode(new t_e(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new t_e(t))}else(){return this._elseNode(new eke)}endIf(){return this._endBlockNode(t_e,eke)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new _Pr(t),r)}forRange(t,r,n,a,o=this.opts.es5?B4.varKinds.var:B4.varKinds.let){let l=this._scope.toName(t);return this._for(new yPr(o,l,r,n),()=>a(l))}forOf(t,r,n,a=B4.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let l=r instanceof wC.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,wC._)`${l}.length`,A=>{this.var(o,(0,wC._)`${l}[${A}]`),n(o)})}return this._for(new IBt("of",a,o,r),()=>n(o))}forIn(t,r,n,a=this.opts.es5?B4.varKinds.var:B4.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,wC._)`Object.keys(${r})`,n);let o=this._scope.toName(t);return this._for(new IBt("in",a,o,r),()=>n(o))}endFor(){return this._endBlockNode(r_e)}label(t){return this._leafNode(new fPr(t))}break(t){return this._leafNode(new IPr(t))}return(t){let r=new c8e;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(c8e)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new bPr;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new l8e(o),r(o)}return n&&(this._currNode=a.finally=new u8e,this.code(n)),this._endBlockNode(l8e,u8e)}throw(t){return this._leafNode(new hPr(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=wC.nil,n,a){return this._blockNode(new a8e(t,r,n)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(a8e)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof t_e))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};om.CodeGen=EPr;function n_e(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function hBt(e,t){return t instanceof wC._CodeOrName?n_e(e,t.names):e}function tke(e,t,r){if(e instanceof wC.Name)return n(e);if(!a(e))return e;return new wC._Code(e._items.reduce((o,l)=>(l instanceof wC.Name&&(l=n(l)),l instanceof wC._Code?o.push(...l._items):o.push(l),o),[]));function n(o){let l=r[o.str];return l===void 0||t[o.str]!==1?o:(delete t[o.str],l)}function a(o){return o instanceof wC._Code&&o._items.some(l=>l instanceof wC.Name&&t[l.str]===1&&r[l.str]!==void 0)}}function mOc(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Eji(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,wC._)`!${SPr(e)}`}om.not=Eji;var COc=Sji(om.operators.AND);function _Oc(...e){return e.reduce(COc)}om.and=_Oc;var yOc=Sji(om.operators.OR);function bOc(...e){return e.reduce(yOc)}om.or=bOc;function Sji(e){return(t,r)=>t===wC.nil?r:r===wC.nil?t:(0,wC._)`${SPr(t)} ${e} ${SPr(r)}`}function SPr(e){return e instanceof wC.Name?e:(0,wC._)`(${e})`}});var B_=H(Bm=>{"use strict";Object.defineProperty(Bm,"__esModule",{value:!0});Bm.checkStrictMode=Bm.getErrorPath=Bm.Type=Bm.useFunc=Bm.setEvaluated=Bm.evaluatedPropsToName=Bm.mergeEvaluated=Bm.eachItem=Bm.unescapeJsonPointer=Bm.escapeJsonPointer=Bm.escapeFragment=Bm.unescapeFragment=Bm.schemaRefOrVal=Bm.schemaHasRulesButRef=Bm.schemaHasRules=Bm.checkUnknownRules=Bm.alwaysValidSchema=Bm.toHash=void 0;var zb=Hh(),EOc=s8e();function SOc(e){let t={};for(let r of e)t[r]=!0;return t}Bm.toHash=SOc;function vOc(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(wji(e,t),!Tji(t,e.self.RULES.all))}Bm.alwaysValidSchema=vOc;function wji(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=n.RULES.keywords;for(let o in t)a[o]||Dji(e,`unknown keyword: "${o}"`)}Bm.checkUnknownRules=wji;function Tji(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Bm.schemaHasRules=Tji;function BOc(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Bm.schemaHasRulesButRef=BOc;function wOc({topSchemaRef:e,schemaPath:t},r,n,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,zb._)`${r}`}return(0,zb._)`${e}${t}${(0,zb.getProperty)(n)}`}Bm.schemaRefOrVal=wOc;function TOc(e){return Rji(decodeURIComponent(e))}Bm.unescapeFragment=TOc;function ROc(e){return encodeURIComponent(BPr(e))}Bm.escapeFragment=ROc;function BPr(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Bm.escapeJsonPointer=BPr;function Rji(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Bm.unescapeJsonPointer=Rji;function NOc(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Bm.eachItem=NOc;function vji({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(a,o,l,A)=>{let f=l===void 0?o:l instanceof zb.Name?(o instanceof zb.Name?e(a,o,l):t(a,o,l),l):o instanceof zb.Name?(t(a,l,o),o):r(o,l);return A===zb.Name&&!(f instanceof zb.Name)?n(a,f):f}}Bm.mergeEvaluated={props:vji({mergeNames:(e,t,r)=>e.if((0,zb._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,zb._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,zb._)`${r} || {}`).code((0,zb._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,zb._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,zb._)`${r} || {}`),wPr(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Nji}),items:vji({mergeNames:(e,t,r)=>e.if((0,zb._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,zb._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,zb._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,zb._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Nji(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,zb._)`{}`);return t!==void 0&&wPr(e,r,t),r}Bm.evaluatedPropsToName=Nji;function wPr(e,t,r){Object.keys(r).forEach(n=>e.assign((0,zb._)`${t}${(0,zb.getProperty)(n)}`,!0))}Bm.setEvaluated=wPr;var Bji={};function DOc(e,t){return e.scopeValue("func",{ref:t,code:Bji[t.code]||(Bji[t.code]=new EOc._Code(t.code))})}Bm.useFunc=DOc;var vPr;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(vPr||(Bm.Type=vPr={}));function kOc(e,t,r){if(e instanceof zb.Name){let n=t===vPr.Num;return r?n?(0,zb._)`"[" + ${e} + "]"`:(0,zb._)`"['" + ${e} + "']"`:n?(0,zb._)`"/" + ${e}`:(0,zb._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,zb.getProperty)(e).toString():"/"+BPr(e)}Bm.getErrorPath=kOc;function Dji(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Bm.checkStrictMode=Dji});var rte=H(TPr=>{"use strict";Object.defineProperty(TPr,"__esModule",{value:!0});var QG=Hh(),xOc={data:new QG.Name("data"),valCxt:new QG.Name("valCxt"),instancePath:new QG.Name("instancePath"),parentData:new QG.Name("parentData"),parentDataProperty:new QG.Name("parentDataProperty"),rootData:new QG.Name("rootData"),dynamicAnchors:new QG.Name("dynamicAnchors"),vErrors:new QG.Name("vErrors"),errors:new QG.Name("errors"),this:new QG.Name("this"),self:new QG.Name("self"),scope:new QG.Name("scope"),json:new QG.Name("json"),jsonPos:new QG.Name("jsonPos"),jsonLen:new QG.Name("jsonLen"),jsonPart:new QG.Name("jsonPart")};TPr.default=xOc});var g8e=H(XG=>{"use strict";Object.defineProperty(XG,"__esModule",{value:!0});XG.extendErrors=XG.resetErrorsCount=XG.reportExtraError=XG.reportError=XG.keyword$DataError=XG.keywordError=void 0;var e_=Hh(),CBt=B_(),rL=rte();XG.keywordError={message:({keyword:e})=>(0,e_.str)`must pass "${e}" keyword validation`};XG.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,e_.str)`"${e}" keyword must be ${t} ($data)`:(0,e_.str)`"${e}" keyword is invalid ($data)`};function GOc(e,t=XG.keywordError,r,n){let{it:a}=e,{gen:o,compositeRule:l,allErrors:A}=a,f=Gji(e,t,r);n??(l||A)?kji(o,f):xji(a,(0,e_._)`[${f}]`)}XG.reportError=GOc;function FOc(e,t=XG.keywordError,r){let{it:n}=e,{gen:a,compositeRule:o,allErrors:l}=n,A=Gji(e,t,r);kji(a,A),o||l||xji(n,rL.default.vErrors)}XG.reportExtraError=FOc;function ZOc(e,t){e.assign(rL.default.errors,t),e.if((0,e_._)`${rL.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,e_._)`${rL.default.vErrors}.length`,t),()=>e.assign(rL.default.vErrors,null)))}XG.resetErrorsCount=ZOc;function LOc({gen:e,keyword:t,schemaValue:r,data:n,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let l=e.name("err");e.forRange("i",a,rL.default.errors,A=>{e.const(l,(0,e_._)`${rL.default.vErrors}[${A}]`),e.if((0,e_._)`${l}.instancePath === undefined`,()=>e.assign((0,e_._)`${l}.instancePath`,(0,e_.strConcat)(rL.default.instancePath,o.errorPath))),e.assign((0,e_._)`${l}.schemaPath`,(0,e_.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,e_._)`${l}.schema`,r),e.assign((0,e_._)`${l}.data`,n))})}XG.extendErrors=LOc;function kji(e,t){let r=e.const("err",t);e.if((0,e_._)`${rL.default.vErrors} === null`,()=>e.assign(rL.default.vErrors,(0,e_._)`[${r}]`),(0,e_._)`${rL.default.vErrors}.push(${r})`),e.code((0,e_._)`${rL.default.errors}++`)}function xji(e,t){let{gen:r,validateName:n,schemaEnv:a}=e;a.$async?r.throw((0,e_._)`new ${e.ValidationError}(${t})`):(r.assign((0,e_._)`${n}.errors`,t),r.return(!1))}var i_e={keyword:new e_.Name("keyword"),schemaPath:new e_.Name("schemaPath"),params:new e_.Name("params"),propertyName:new e_.Name("propertyName"),message:new e_.Name("message"),schema:new e_.Name("schema"),parentSchema:new e_.Name("parentSchema")};function Gji(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,e_._)`{}`:VOc(e,t,r)}function VOc(e,t,r={}){let{gen:n,it:a}=e,o=[POc(a,r),WOc(e,r)];return OOc(e,t,o),n.object(...o)}function POc({errorPath:e},{instancePath:t}){let r=t?(0,e_.str)`${e}${(0,CBt.getErrorPath)(t,CBt.Type.Str)}`:e;return[rL.default.instancePath,(0,e_.strConcat)(rL.default.instancePath,r)]}function WOc({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let a=n?t:(0,e_.str)`${t}/${e}`;return r&&(a=(0,e_.str)`${a}${(0,CBt.getErrorPath)(r,CBt.Type.Str)}`),[i_e.schemaPath,a]}function OOc(e,{params:t,message:r},n){let{keyword:a,data:o,schemaValue:l,it:A}=e,{opts:f,propertyName:I,topSchemaRef:C,schemaPath:b}=A;n.push([i_e.keyword,a],[i_e.params,typeof t=="function"?t(e):t||(0,e_._)`{}`]),f.messages&&n.push([i_e.message,typeof r=="function"?r(e):r]),f.verbose&&n.push([i_e.schema,l],[i_e.parentSchema,(0,e_._)`${C}${b}`],[rL.default.data,o]),I&&n.push([i_e.propertyName,I])}});var Zji=H(rke=>{"use strict";Object.defineProperty(rke,"__esModule",{value:!0});rke.boolOrEmptySchema=rke.topBoolOrEmptySchema=void 0;var MOc=g8e(),HOc=Hh(),YOc=rte(),QOc={message:"boolean schema is false"};function XOc(e){let{gen:t,schema:r,validateName:n}=e;r===!1?Fji(e,!1):typeof r=="object"&&r.$async===!0?t.return(YOc.default.data):(t.assign((0,HOc._)`${n}.errors`,null),t.return(!0))}rke.topBoolOrEmptySchema=XOc;function JOc(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),Fji(e)):r.var(t,!0)}rke.boolOrEmptySchema=JOc;function Fji(e,t){let{gen:r,data:n}=e,a={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,MOc.reportError)(a,QOc,void 0,t)}});var RPr=H(nke=>{"use strict";Object.defineProperty(nke,"__esModule",{value:!0});nke.getRules=nke.isJSONType=void 0;var UOc=["string","number","integer","boolean","null","object","array"],KOc=new Set(UOc);function jOc(e){return typeof e=="string"&&KOc.has(e)}nke.isJSONType=jOc;function zOc(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}nke.getRules=zOc});var NPr=H(ale=>{"use strict";Object.defineProperty(ale,"__esModule",{value:!0});ale.shouldUseRule=ale.shouldUseGroup=ale.schemaHasRulesForType=void 0;function qOc({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&Lji(e,n)}ale.schemaHasRulesForType=qOc;function Lji(e,t){return t.rules.some(r=>Vji(e,r))}ale.shouldUseGroup=Lji;function Vji(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}ale.shouldUseRule=Vji});var A8e=H(JG=>{"use strict";Object.defineProperty(JG,"__esModule",{value:!0});JG.reportTypeError=JG.checkDataTypes=JG.checkDataType=JG.coerceAndCheckDataType=JG.getJSONTypes=JG.getSchemaTypes=JG.DataType=void 0;var $Oc=RPr(),e3c=NPr(),t3c=g8e(),Bh=Hh(),Pji=B_(),ike;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ike||(JG.DataType=ike={}));function r3c(e){let t=Wji(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}JG.getSchemaTypes=r3c;function Wji(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every($Oc.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}JG.getJSONTypes=Wji;function n3c(e,t){let{gen:r,data:n,opts:a}=e,o=i3c(t,a.coerceTypes),l=t.length>0&&!(o.length===0&&t.length===1&&(0,e3c.schemaHasRulesForType)(e,t[0]));if(l){let A=kPr(t,n,a.strictNumbers,ike.Wrong);r.if(A,()=>{o.length?s3c(e,t,o):xPr(e)})}return l}JG.coerceAndCheckDataType=n3c;var Oji=new Set(["string","number","integer","boolean","null"]);function i3c(e,t){return t?e.filter(r=>Oji.has(r)||t==="array"&&r==="array"):[]}function s3c(e,t,r){let{gen:n,data:a,opts:o}=e,l=n.let("dataType",(0,Bh._)`typeof ${a}`),A=n.let("coerced",(0,Bh._)`undefined`);o.coerceTypes==="array"&&n.if((0,Bh._)`${l} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>n.assign(a,(0,Bh._)`${a}[0]`).assign(l,(0,Bh._)`typeof ${a}`).if(kPr(t,a,o.strictNumbers),()=>n.assign(A,a))),n.if((0,Bh._)`${A} !== undefined`);for(let I of r)(Oji.has(I)||I==="array"&&o.coerceTypes==="array")&&f(I);n.else(),xPr(e),n.endIf(),n.if((0,Bh._)`${A} !== undefined`,()=>{n.assign(a,A),o3c(e,A)});function f(I){switch(I){case"string":n.elseIf((0,Bh._)`${l} == "number" || ${l} == "boolean"`).assign(A,(0,Bh._)`"" + ${a}`).elseIf((0,Bh._)`${a} === null`).assign(A,(0,Bh._)`""`);return;case"number":n.elseIf((0,Bh._)`${l} == "boolean" || ${a} === null - || (${l} == "string" && ${a} && ${a} == +${a})`).assign(A,(0,Bh._)`+${a}`);return;case"integer":n.elseIf((0,Bh._)`${l} === "boolean" || ${a} === null - || (${l} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(A,(0,Bh._)`+${a}`);return;case"boolean":n.elseIf((0,Bh._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(A,!1).elseIf((0,Bh._)`${a} === "true" || ${a} === 1`).assign(A,!0);return;case"null":n.elseIf((0,Bh._)`${a} === "" || ${a} === 0 || ${a} === false`),n.assign(A,null);return;case"array":n.elseIf((0,Bh._)`${l} === "string" || ${l} === "number" - || ${l} === "boolean" || ${a} === null`).assign(A,(0,Bh._)`[${a}]`)}}}function o3c({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Bh._)`${t} !== undefined`,()=>e.assign((0,Bh._)`${t}[${r}]`,n))}function DPr(e,t,r,n=ike.Correct){let a=n===ike.Correct?Bh.operators.EQ:Bh.operators.NEQ,o;switch(e){case"null":return(0,Bh._)`${t} ${a} null`;case"array":o=(0,Bh._)`Array.isArray(${t})`;break;case"object":o=(0,Bh._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=l((0,Bh._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=l();break;default:return(0,Bh._)`typeof ${t} ${a} ${e}`}return n===ike.Correct?o:(0,Bh.not)(o);function l(A=Bh.nil){return(0,Bh.and)((0,Bh._)`typeof ${t} == "number"`,A,r?(0,Bh._)`isFinite(${t})`:Bh.nil)}}JG.checkDataType=DPr;function kPr(e,t,r,n){if(e.length===1)return DPr(e[0],t,r,n);let a,o=(0,Pji.toHash)(e);if(o.array&&o.object){let l=(0,Bh._)`typeof ${t} != "object"`;a=o.null?l:(0,Bh._)`!${t} || ${l}`,delete o.null,delete o.array,delete o.object}else a=Bh.nil;o.number&&delete o.integer;for(let l in o)a=(0,Bh.and)(a,DPr(l,t,r,n));return a}JG.checkDataTypes=kPr;var a3c={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Bh._)`{type: ${e}}`:(0,Bh._)`{type: ${t}}`};function xPr(e){let t=c3c(e);(0,t3c.reportError)(t,a3c)}JG.reportTypeError=xPr;function c3c(e){let{gen:t,data:r,schema:n}=e,a=(0,Pji.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:a,schemaValue:a,parentSchema:n,params:{},it:e}}});var Hji=H(_Bt=>{"use strict";Object.defineProperty(_Bt,"__esModule",{value:!0});_Bt.assignDefaults=void 0;var ske=Hh(),l3c=B_();function u3c(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let a in r)Mji(e,a,r[a].default);else t==="array"&&Array.isArray(n)&&n.forEach((a,o)=>Mji(e,o,a.default))}_Bt.assignDefaults=u3c;function Mji(e,t,r){let{gen:n,compositeRule:a,data:o,opts:l}=e;if(r===void 0)return;let A=(0,ske._)`${o}${(0,ske.getProperty)(t)}`;if(a){(0,l3c.checkStrictMode)(e,`default is ignored for: ${A}`);return}let f=(0,ske._)`${A} === undefined`;l.useDefaults==="empty"&&(f=(0,ske._)`${f} || ${A} === null || ${A} === ""`),n.if(f,(0,ske._)`${A} = ${(0,ske.stringify)(r)}`)}});var IH=H(lb=>{"use strict";Object.defineProperty(lb,"__esModule",{value:!0});lb.validateUnion=lb.validateArray=lb.usePattern=lb.callValidateCode=lb.schemaProperties=lb.allSchemaProperties=lb.noPropertyInData=lb.propertyInData=lb.isOwnProperty=lb.hasPropFunc=lb.reportMissingProp=lb.checkMissingProp=lb.checkReportMissingProp=void 0;var X1=Hh(),GPr=B_(),cle=rte(),g3c=B_();function A3c(e,t){let{gen:r,data:n,it:a}=e;r.if(ZPr(r,n,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,X1._)`${t}`},!0),e.error()})}lb.checkReportMissingProp=A3c;function d3c({gen:e,data:t,it:{opts:r}},n,a){return(0,X1.or)(...n.map(o=>(0,X1.and)(ZPr(e,t,o,r.ownProperties),(0,X1._)`${a} = ${o}`)))}lb.checkMissingProp=d3c;function p3c(e,t){e.setParams({missingProperty:t},!0),e.error()}lb.reportMissingProp=p3c;function Yji(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,X1._)`Object.prototype.hasOwnProperty`})}lb.hasPropFunc=Yji;function FPr(e,t,r){return(0,X1._)`${Yji(e)}.call(${t}, ${r})`}lb.isOwnProperty=FPr;function f3c(e,t,r,n){let a=(0,X1._)`${t}${(0,X1.getProperty)(r)} !== undefined`;return n?(0,X1._)`${a} && ${FPr(e,t,r)}`:a}lb.propertyInData=f3c;function ZPr(e,t,r,n){let a=(0,X1._)`${t}${(0,X1.getProperty)(r)} === undefined`;return n?(0,X1.or)(a,(0,X1.not)(FPr(e,t,r))):a}lb.noPropertyInData=ZPr;function Qji(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}lb.allSchemaProperties=Qji;function I3c(e,t){return Qji(t).filter(r=>!(0,GPr.alwaysValidSchema)(e,t[r]))}lb.schemaProperties=I3c;function h3c({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:a,errorPath:o},it:l},A,f,I){let C=I?(0,X1._)`${e}, ${t}, ${n}${a}`:t,b=[[cle.default.instancePath,(0,X1.strConcat)(cle.default.instancePath,o)],[cle.default.parentData,l.parentData],[cle.default.parentDataProperty,l.parentDataProperty],[cle.default.rootData,cle.default.rootData]];l.opts.dynamicRef&&b.push([cle.default.dynamicAnchors,cle.default.dynamicAnchors]);let E=(0,X1._)`${C}, ${r.object(...b)}`;return f!==X1.nil?(0,X1._)`${A}.call(${f}, ${E})`:(0,X1._)`${A}(${E})`}lb.callValidateCode=h3c;var m3c=(0,X1._)`new RegExp`;function C3c({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,n);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,X1._)`${a.code==="new RegExp"?m3c:(0,g3c.useFunc)(e,a)}(${r}, ${n})`})}lb.usePattern=C3c;function _3c(e){let{gen:t,data:r,keyword:n,it:a}=e,o=t.name("valid");if(a.allErrors){let A=t.let("valid",!0);return l(()=>t.assign(A,!1)),A}return t.var(o,!0),l(()=>t.break()),o;function l(A){let f=t.const("len",(0,X1._)`${r}.length`);t.forRange("i",0,f,I=>{e.subschema({keyword:n,dataProp:I,dataPropType:GPr.Type.Num},o),t.if((0,X1.not)(o),A)})}}lb.validateArray=_3c;function y3c(e){let{gen:t,schema:r,keyword:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,GPr.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let l=t.let("valid",!1),A=t.name("_valid");t.block(()=>r.forEach((f,I)=>{let C=e.subschema({keyword:n,schemaProp:I,compositeRule:!0},A);t.assign(l,(0,X1._)`${l} || ${A}`),e.mergeValidEvaluated(C,A)||t.if((0,X1.not)(l))})),e.result(l,()=>e.reset(),()=>e.error(!0))}lb.validateUnion=y3c});var Uji=H(Vj=>{"use strict";Object.defineProperty(Vj,"__esModule",{value:!0});Vj.validateKeywordUsage=Vj.validSchemaType=Vj.funcKeywordCode=Vj.macroKeywordCode=void 0;var nL=Hh(),s_e=rte(),b3c=IH(),E3c=g8e();function S3c(e,t){let{gen:r,keyword:n,schema:a,parentSchema:o,it:l}=e,A=t.macro.call(l.self,a,o,l),f=Jji(r,n,A);l.opts.validateSchema!==!1&&l.self.validateSchema(A,!0);let I=r.name("valid");e.subschema({schema:A,schemaPath:nL.nil,errSchemaPath:`${l.errSchemaPath}/${n}`,topSchemaRef:f,compositeRule:!0},I),e.pass(I,()=>e.error(!0))}Vj.macroKeywordCode=S3c;function v3c(e,t){var r;let{gen:n,keyword:a,schema:o,parentSchema:l,$data:A,it:f}=e;w3c(f,t);let I=!A&&t.compile?t.compile.call(f.self,o,l,f):t.validate,C=Jji(n,a,I),b=n.let("valid");e.block$data(b,E),e.ok((r=t.valid)!==null&&r!==void 0?r:b);function E(){if(t.errors===!1)F(),t.modifying&&Xji(e),Q(()=>e.error());else{let X=t.async?N():B();t.modifying&&Xji(e),Q(()=>B3c(e,X))}}function N(){let X=n.let("ruleErrs",null);return n.try(()=>F((0,nL._)`await `),ae=>n.assign(b,!1).if((0,nL._)`${ae} instanceof ${f.ValidationError}`,()=>n.assign(X,(0,nL._)`${ae}.errors`),()=>n.throw(ae))),X}function B(){let X=(0,nL._)`${C}.errors`;return n.assign(X,null),F(nL.nil),X}function F(X=t.async?(0,nL._)`await `:nL.nil){let ae=f.opts.passContext?s_e.default.this:s_e.default.self,ne=!("compile"in t&&!A||t.schema===!1);n.assign(b,(0,nL._)`${X}${(0,b3c.callValidateCode)(e,C,ae,ne)}`,t.modifying)}function Q(X){var ae;n.if((0,nL.not)((ae=t.valid)!==null&&ae!==void 0?ae:b),X)}}Vj.funcKeywordCode=v3c;function Xji(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,nL._)`${n.parentData}[${n.parentDataProperty}]`))}function B3c(e,t){let{gen:r}=e;r.if((0,nL._)`Array.isArray(${t})`,()=>{r.assign(s_e.default.vErrors,(0,nL._)`${s_e.default.vErrors} === null ? ${t} : ${s_e.default.vErrors}.concat(${t})`).assign(s_e.default.errors,(0,nL._)`${s_e.default.vErrors}.length`),(0,E3c.extendErrors)(e)},()=>e.error())}function w3c({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Jji(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,nL.stringify)(r)})}function T3c(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Vj.validSchemaType=T3c;function R3c({schema:e,opts:t,self:r,errSchemaPath:n},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let l=a.dependencies;if(l?.some(A=>!Object.prototype.hasOwnProperty.call(e,A)))throw new Error(`parent schema must have dependencies of ${o}: ${l.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${n}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}Vj.validateKeywordUsage=R3c});var jji=H(lle=>{"use strict";Object.defineProperty(lle,"__esModule",{value:!0});lle.extendSubschemaMode=lle.extendSubschemaData=lle.getSubschema=void 0;var Pj=Hh(),Kji=B_();function N3c(e,{keyword:t,schemaProp:r,schema:n,schemaPath:a,errSchemaPath:o,topSchemaRef:l}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let A=e.schema[t];return r===void 0?{schema:A,schemaPath:(0,Pj._)`${e.schemaPath}${(0,Pj.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:A[r],schemaPath:(0,Pj._)`${e.schemaPath}${(0,Pj.getProperty)(t)}${(0,Pj.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,Kji.escapeFragment)(r)}`}}if(n!==void 0){if(a===void 0||o===void 0||l===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:a,topSchemaRef:l,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}lle.getSubschema=N3c;function D3c(e,t,{dataProp:r,dataPropType:n,data:a,dataTypes:o,propertyName:l}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:A}=t;if(r!==void 0){let{errorPath:I,dataPathArr:C,opts:b}=t,E=A.let("data",(0,Pj._)`${t.data}${(0,Pj.getProperty)(r)}`,!0);f(E),e.errorPath=(0,Pj.str)`${I}${(0,Kji.getErrorPath)(r,n,b.jsPropertySyntax)}`,e.parentDataProperty=(0,Pj._)`${r}`,e.dataPathArr=[...C,e.parentDataProperty]}if(a!==void 0){let I=a instanceof Pj.Name?a:A.let("data",a,!0);f(I),l!==void 0&&(e.propertyName=l)}o&&(e.dataTypes=o);function f(I){e.data=I,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,I]}}lle.extendSubschemaData=D3c;function k3c(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:a,allErrors:o}){n!==void 0&&(e.compositeRule=n),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}lle.extendSubschemaMode=k3c});var LPr=H((PJu,zji)=>{"use strict";zji.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,a,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(a=n;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(a=n;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=n;a--!==0;){var l=o[a];if(!e(t[l],r[l]))return!1}return!0}return t!==t&&r!==r}});var $ji=H((WJu,qji)=>{"use strict";var ule=qji.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};yBt(t,n,a,e,"",e)};ule.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ule.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ule.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ule.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 yBt(e,t,r,n,a,o,l,A,f,I){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,a,o,l,A,f,I);for(var C in n){var b=n[C];if(Array.isArray(b)){if(C in ule.arrayKeywords)for(var E=0;E{"use strict";Object.defineProperty(kV,"__esModule",{value:!0});kV.getSchemaRefs=kV.resolveUrl=kV.normalizeId=kV._getFullPath=kV.getFullPath=kV.inlineRef=void 0;var G3c=B_(),F3c=LPr(),Z3c=$ji(),L3c=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function V3c(e,t=!0){return typeof e=="boolean"?!0:t===!0?!VPr(e):t?e6i(e)<=t:!1}kV.inlineRef=V3c;var P3c=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function VPr(e){for(let t in e){if(P3c.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(VPr)||typeof r=="object"&&VPr(r))return!0}return!1}function e6i(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!L3c.has(r)&&(typeof e[r]=="object"&&(0,G3c.eachItem)(e[r],n=>t+=e6i(n)),t===1/0))return 1/0}return t}function t6i(e,t="",r){r!==!1&&(t=oke(t));let n=e.parse(t);return r6i(e,n)}kV.getFullPath=t6i;function r6i(e,t){return e.serialize(t).split("#")[0]+"#"}kV._getFullPath=r6i;var W3c=/#\/?$/;function oke(e){return e?e.replace(W3c,""):""}kV.normalizeId=oke;function O3c(e,t,r){return r=oke(r),e.resolve(t,r)}kV.resolveUrl=O3c;var M3c=/^[a-z_][-a-z0-9._]*$/i;function H3c(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,a=oke(e[r]||t),o={"":a},l=t6i(n,a,!1),A={},f=new Set;return Z3c(e,{allKeys:!0},(b,E,N,B)=>{if(B===void 0)return;let F=l+E,Q=o[B];typeof b[r]=="string"&&(Q=X.call(this,b[r])),ae.call(this,b.$anchor),ae.call(this,b.$dynamicAnchor),o[E]=Q;function X(ne){let ce=this.opts.uriResolver.resolve;if(ne=oke(Q?ce(Q,ne):ne),f.has(ne))throw C(ne);f.add(ne);let fe=this.refs[ne];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?I(b,fe.schema,ne):ne!==oke(F)&&(ne[0]==="#"?(I(b,A[ne],ne),A[ne]=b):this.refs[ne]=F),ne}function ae(ne){if(typeof ne=="string"){if(!M3c.test(ne))throw new Error(`invalid anchor "${ne}"`);X.call(this,`#${ne}`)}}}),A;function I(b,E,N){if(E!==void 0&&!F3c(b,E))throw C(N)}function C(b){return new Error(`reference "${b}" resolves to more than one schema`)}}kV.getSchemaRefs=H3c});var I8e=H(gle=>{"use strict";Object.defineProperty(gle,"__esModule",{value:!0});gle.getData=gle.KeywordCxt=gle.validateFunctionCode=void 0;var a6i=Zji(),n6i=A8e(),WPr=NPr(),bBt=A8e(),Y3c=Hji(),f8e=Uji(),PPr=jji(),Zd=Hh(),cI=rte(),Q3c=d8e(),nte=B_(),p8e=g8e();function X3c(e){if(u6i(e)&&(g6i(e),l6i(e))){K3c(e);return}c6i(e,()=>(0,a6i.topBoolOrEmptySchema)(e))}gle.validateFunctionCode=X3c;function c6i({gen:e,validateName:t,schema:r,schemaEnv:n,opts:a},o){a.code.es5?e.func(t,(0,Zd._)`${cI.default.data}, ${cI.default.valCxt}`,n.$async,()=>{e.code((0,Zd._)`"use strict"; ${i6i(r,a)}`),U3c(e,a),e.code(o)}):e.func(t,(0,Zd._)`${cI.default.data}, ${J3c(a)}`,n.$async,()=>e.code(i6i(r,a)).code(o))}function J3c(e){return(0,Zd._)`{${cI.default.instancePath}="", ${cI.default.parentData}, ${cI.default.parentDataProperty}, ${cI.default.rootData}=${cI.default.data}${e.dynamicRef?(0,Zd._)`, ${cI.default.dynamicAnchors}={}`:Zd.nil}}={}`}function U3c(e,t){e.if(cI.default.valCxt,()=>{e.var(cI.default.instancePath,(0,Zd._)`${cI.default.valCxt}.${cI.default.instancePath}`),e.var(cI.default.parentData,(0,Zd._)`${cI.default.valCxt}.${cI.default.parentData}`),e.var(cI.default.parentDataProperty,(0,Zd._)`${cI.default.valCxt}.${cI.default.parentDataProperty}`),e.var(cI.default.rootData,(0,Zd._)`${cI.default.valCxt}.${cI.default.rootData}`),t.dynamicRef&&e.var(cI.default.dynamicAnchors,(0,Zd._)`${cI.default.valCxt}.${cI.default.dynamicAnchors}`)},()=>{e.var(cI.default.instancePath,(0,Zd._)`""`),e.var(cI.default.parentData,(0,Zd._)`undefined`),e.var(cI.default.parentDataProperty,(0,Zd._)`undefined`),e.var(cI.default.rootData,cI.default.data),t.dynamicRef&&e.var(cI.default.dynamicAnchors,(0,Zd._)`{}`)})}function K3c(e){let{schema:t,opts:r,gen:n}=e;c6i(e,()=>{r.$comment&&t.$comment&&d6i(e),e5c(e),n.let(cI.default.vErrors,null),n.let(cI.default.errors,0),r.unevaluated&&j3c(e),A6i(e),n5c(e)})}function j3c(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Zd._)`${r}.evaluated`),t.if((0,Zd._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Zd._)`${e.evaluated}.props`,(0,Zd._)`undefined`)),t.if((0,Zd._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Zd._)`${e.evaluated}.items`,(0,Zd._)`undefined`))}function i6i(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Zd._)`/*# sourceURL=${r} */`:Zd.nil}function z3c(e,t){if(u6i(e)&&(g6i(e),l6i(e))){q3c(e,t);return}(0,a6i.boolOrEmptySchema)(e,t)}function l6i({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function u6i(e){return typeof e.schema!="boolean"}function q3c(e,t){let{schema:r,gen:n,opts:a}=e;a.$comment&&r.$comment&&d6i(e),t5c(e),r5c(e);let o=n.const("_errs",cI.default.errors);A6i(e,o),n.var(t,(0,Zd._)`${o} === ${cI.default.errors}`)}function g6i(e){(0,nte.checkUnknownRules)(e),$3c(e)}function A6i(e,t){if(e.opts.jtd)return s6i(e,[],!1,t);let r=(0,n6i.getSchemaTypes)(e.schema),n=(0,n6i.coerceAndCheckDataType)(e,r);s6i(e,r,!n,t)}function $3c(e){let{schema:t,errSchemaPath:r,opts:n,self:a}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,nte.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function e5c(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,nte.checkStrictMode)(e,"default is ignored in the schema root")}function t5c(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,Q3c.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function r5c(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function d6i({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,Zd._)`${cI.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let l=(0,Zd.str)`${n}/$comment`,A=e.scopeValue("root",{ref:t.root});e.code((0,Zd._)`${cI.default.self}.opts.$comment(${o}, ${l}, ${A}.schema)`)}}function n5c(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:a,opts:o}=e;r.$async?t.if((0,Zd._)`${cI.default.errors} === 0`,()=>t.return(cI.default.data),()=>t.throw((0,Zd._)`new ${a}(${cI.default.vErrors})`)):(t.assign((0,Zd._)`${n}.errors`,cI.default.vErrors),o.unevaluated&&i5c(e),t.return((0,Zd._)`${cI.default.errors} === 0`))}function i5c({gen:e,evaluated:t,props:r,items:n}){r instanceof Zd.Name&&e.assign((0,Zd._)`${t}.props`,r),n instanceof Zd.Name&&e.assign((0,Zd._)`${t}.items`,n)}function s6i(e,t,r,n){let{gen:a,schema:o,data:l,allErrors:A,opts:f,self:I}=e,{RULES:C}=I;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,nte.schemaHasRulesButRef)(o,C))){a.block(()=>f6i(e,"$ref",C.all.$ref.definition));return}f.jtd||s5c(e,t),a.block(()=>{for(let E of C.rules)b(E);b(C.post)});function b(E){(0,WPr.shouldUseGroup)(o,E)&&(E.type?(a.if((0,bBt.checkDataType)(E.type,l,f.strictNumbers)),o6i(e,E),t.length===1&&t[0]===E.type&&r&&(a.else(),(0,bBt.reportTypeError)(e)),a.endIf()):o6i(e,E),A||a.if((0,Zd._)`${cI.default.errors} === ${n||0}`))}}function o6i(e,t){let{gen:r,schema:n,opts:{useDefaults:a}}=e;a&&(0,Y3c.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,WPr.shouldUseRule)(n,o)&&f6i(e,o.keyword,o.definition,t.type)})}function s5c(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(o5c(e,t),e.opts.allowUnionTypes||a5c(e,t),c5c(e,e.dataTypes))}function o5c(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{p6i(e.dataTypes,r)||OPr(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),u5c(e,t)}}function a5c(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&OPr(e,"use allowUnionTypes to allow union type keyword")}function c5c(e,t){let r=e.self.RULES.all;for(let n in r){let a=r[n];if(typeof a=="object"&&(0,WPr.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(l=>l5c(t,l))&&OPr(e,`missing type "${o.join(",")}" for keyword "${n}"`)}}}function l5c(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function p6i(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function u5c(e,t){let r=[];for(let n of e.dataTypes)p6i(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function OPr(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,nte.checkStrictMode)(e,t,e.opts.strictTypes)}var EBt=class{constructor(t,r,n){if((0,f8e.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,nte.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",I6i(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,f8e.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",cI.default.errors))}result(t,r,n){this.failResult((0,Zd.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Zd.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Zd._)`${r} !== undefined && (${(0,Zd.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?p8e.reportExtraError:p8e.reportError)(this,this.def.error,r)}$dataError(){(0,p8e.reportError)(this,this.def.$dataError||p8e.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,p8e.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Zd.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Zd.nil,r=Zd.nil){if(!this.$data)return;let{gen:n,schemaCode:a,schemaType:o,def:l}=this;n.if((0,Zd.or)((0,Zd._)`${a} === undefined`,r)),t!==Zd.nil&&n.assign(t,!0),(o.length||l.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Zd.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:a,it:o}=this;return(0,Zd.or)(l(),A());function l(){if(n.length){if(!(r instanceof Zd.Name))throw new Error("ajv implementation error");let f=Array.isArray(n)?n:[n];return(0,Zd._)`${(0,bBt.checkDataTypes)(f,r,o.opts.strictNumbers,bBt.DataType.Wrong)}`}return Zd.nil}function A(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,Zd._)`!${f}(${r})`}return Zd.nil}}subschema(t,r){let n=(0,PPr.getSubschema)(this.it,t);(0,PPr.extendSubschemaData)(n,this.it,t),(0,PPr.extendSubschemaMode)(n,t);let a={...this.it,...n,items:void 0,props:void 0};return z3c(a,r),a}mergeEvaluated(t,r){let{it:n,gen:a}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=nte.mergeEvaluated.props(a,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=nte.mergeEvaluated.items(a,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:a}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,Zd.Name)),!0}};gle.KeywordCxt=EBt;function f6i(e,t,r,n){let a=new EBt(e,r,t);"code"in r?r.code(a,n):a.$data&&r.validate?(0,f8e.funcKeywordCode)(a,r):"macro"in r?(0,f8e.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,f8e.funcKeywordCode)(a,r)}var g5c=/^\/(?:[^~]|~0|~1)*$/,A5c=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function I6i(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let a,o;if(e==="")return cI.default.rootData;if(e[0]==="/"){if(!g5c.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=cI.default.rootData}else{let I=A5c.exec(e);if(!I)throw new Error(`Invalid JSON-pointer: ${e}`);let C=+I[1];if(a=I[2],a==="#"){if(C>=t)throw new Error(f("property/index",C));return n[t-C]}if(C>t)throw new Error(f("data",C));if(o=r[t-C],!a)return o}let l=o,A=a.split("/");for(let I of A)I&&(o=(0,Zd._)`${o}${(0,Zd.getProperty)((0,nte.unescapeJsonPointer)(I))}`,l=(0,Zd._)`${l} && ${o}`);return l;function f(I,C){return`Cannot access ${I} ${C} levels up, current level is ${t}`}}gle.getData=I6i});var SBt=H(HPr=>{"use strict";Object.defineProperty(HPr,"__esModule",{value:!0});var MPr=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};HPr.default=MPr});var h8e=H(XPr=>{"use strict";Object.defineProperty(XPr,"__esModule",{value:!0});var YPr=d8e(),QPr=class extends Error{constructor(t,r,n,a){super(a||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,YPr.resolveUrl)(t,r,n),this.missingSchema=(0,YPr.normalizeId)((0,YPr.getFullPath)(t,this.missingRef))}};XPr.default=QPr});var BBt=H(hH=>{"use strict";Object.defineProperty(hH,"__esModule",{value:!0});hH.resolveSchema=hH.getCompilingSchema=hH.resolveRef=hH.compileSchema=hH.SchemaEnv=void 0;var w4=Hh(),d5c=SBt(),o_e=rte(),T4=d8e(),h6i=B_(),p5c=I8e(),ake=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,T4.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};hH.SchemaEnv=ake;function UPr(e){let t=m6i.call(this,e);if(t)return t;let r=(0,T4.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:a}=this.opts.code,{ownProperties:o}=this.opts,l=new w4.CodeGen(this.scope,{es5:n,lines:a,ownProperties:o}),A;e.$async&&(A=l.scopeValue("Error",{ref:d5c.default,code:(0,w4._)`require("ajv/dist/runtime/validation_error").default`}));let f=l.scopeName("validate");e.validateName=f;let I={gen:l,allErrors:this.opts.allErrors,data:o_e.default.data,parentData:o_e.default.parentData,parentDataProperty:o_e.default.parentDataProperty,dataNames:[o_e.default.data],dataPathArr:[w4.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:l.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,w4.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:A,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:w4.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,w4._)`""`,opts:this.opts,self:this},C;try{this._compilations.add(e),(0,p5c.validateFunctionCode)(I),l.optimize(this.opts.code.optimize);let b=l.toString();C=`${l.scopeRefs(o_e.default.scope)}return ${b}`,this.opts.code.process&&(C=this.opts.code.process(C,e));let N=new Function(`${o_e.default.self}`,`${o_e.default.scope}`,C)(this,this.scope.get());if(this.scope.value(f,{ref:N}),N.errors=null,N.schema=e.schema,N.schemaEnv=e,e.$async&&(N.$async=!0),this.opts.code.source===!0&&(N.source={validateName:f,validateCode:b,scopeValues:l._values}),this.opts.unevaluated){let{props:B,items:F}=I;N.evaluated={props:B instanceof w4.Name?void 0:B,items:F instanceof w4.Name?void 0:F,dynamicProps:B instanceof w4.Name,dynamicItems:F instanceof w4.Name},N.source&&(N.source.evaluated=(0,w4.stringify)(N.evaluated))}return e.validate=N,e}catch(b){throw delete e.validate,delete e.validateName,C&&this.logger.error("Error compiling schema, function code:",C),b}finally{this._compilations.delete(e)}}hH.compileSchema=UPr;function f5c(e,t,r){var n;r=(0,T4.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=m5c.call(this,e,r);if(o===void 0){let l=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:A}=this.opts;l&&(o=new ake({schema:l,schemaId:A,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=I5c.call(this,o)}hH.resolveRef=f5c;function I5c(e){return(0,T4.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:UPr.call(this,e)}function m6i(e){for(let t of this._compilations)if(h5c(t,e))return t}hH.getCompilingSchema=m6i;function h5c(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function m5c(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||vBt.call(this,e,t)}function vBt(e,t){let r=this.opts.uriResolver.parse(t),n=(0,T4._getFullPath)(this.opts.uriResolver,r),a=(0,T4.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===a)return JPr.call(this,r,e);let o=(0,T4.normalizeId)(n),l=this.refs[o]||this.schemas[o];if(typeof l=="string"){let A=vBt.call(this,e,l);return typeof A?.schema!="object"?void 0:JPr.call(this,r,A)}if(typeof l?.schema=="object"){if(l.validate||UPr.call(this,l),o===(0,T4.normalizeId)(t)){let{schema:A}=l,{schemaId:f}=this.opts,I=A[f];return I&&(a=(0,T4.resolveUrl)(this.opts.uriResolver,a,I)),new ake({schema:A,schemaId:f,root:e,baseId:a})}return JPr.call(this,r,l)}}hH.resolveSchema=vBt;var C5c=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function JPr(e,{baseId:t,schema:r,root:n}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let A of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,h6i.unescapeFragment)(A)];if(f===void 0)return;r=f;let I=typeof r=="object"&&r[this.opts.schemaId];!C5c.has(A)&&I&&(t=(0,T4.resolveUrl)(this.opts.uriResolver,t,I))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,h6i.schemaHasRulesButRef)(r,this.RULES)){let A=(0,T4.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=vBt.call(this,n,A)}let{schemaId:l}=this.opts;if(o=o||new ake({schema:r,schemaId:l,root:n,baseId:t}),o.schema!==o.root.schema)return o}});var C6i=H((XJu,_5c)=>{_5c.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var y6i=H((JJu,_6i)=>{"use strict";var y5c={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};_6i.exports={HEX:y5c}});var R6i=H((UJu,T6i)=>{"use strict";var{HEX:b5c}=y6i();function v6i(e){if(w6i(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:S5c(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function KPr(e,t=!1){let r="",n=!0;for(let a of e){if(b5c[a]===void 0)return;a!=="0"&&n===!0&&(n=!1),n||(r+=a)}return t&&r.length===0&&(r="0"),r}function E5c(e){let t=0,r={error:!1,address:"",zone:""},n=[],a=[],o=!1,l=!1,A=!1;function f(){if(a.length){if(o===!1){let I=KPr(a);if(I!==void 0)n.push(I);else return r.error=!0,!1}a.length=0}return!0}for(let I=0;I7){r.error=!0;break}I-1>=0&&e[I-1]===":"&&(l=!0);continue}else if(C==="%"){if(!f())break;o=!0}else{a.push(C);continue}}return a.length&&(o?r.zone=a.join(""):A?n.push(a.join("")):n.push(KPr(a))),r.address=n.join(""),r}function B6i(e,t={}){if(w6i(e,":")<2)return{host:e,isIPV6:!1};let r=E5c(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,a=r.address;return r.zone&&(n+="%"+r.zone,a+="%25"+r.zone),{host:n,escapedHost:a,isIPV6:!0}}}function S5c(e,t){let r="",n=!0,a=e.length;for(let o=0;o{"use strict";var R5c=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,N5c=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function N6i(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function D6i(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function k6i(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function D5c(e){return e.secure=N6i(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function k5c(e){if((e.port===(N6i(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function x5c(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(N5c);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${n}:${t.nid||e.nid}`,o=jPr[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function G5c(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),a=`${r}:${t.nid||n}`,o=jPr[a];o&&(e=o.serialize(e,t));let l=e,A=e.nss;return l.path=`${n||t.nid}:${A}`,t.skipEscape=!0,l}function F5c(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!R5c.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Z5c(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var x6i={scheme:"http",domainHost:!0,parse:D6i,serialize:k6i},L5c={scheme:"https",domainHost:x6i.domainHost,parse:D6i,serialize:k6i},wBt={scheme:"ws",domainHost:!0,parse:D5c,serialize:k5c},V5c={scheme:"wss",domainHost:wBt.domainHost,parse:wBt.parse,serialize:wBt.serialize},P5c={scheme:"urn",parse:x5c,serialize:G5c,skipNormalize:!0},W5c={scheme:"urn:uuid",parse:F5c,serialize:Z5c,skipNormalize:!0},jPr={http:x6i,https:L5c,ws:wBt,wss:V5c,urn:P5c,"urn:uuid":W5c};G6i.exports=jPr});var L6i=H((jJu,RBt)=>{"use strict";var{normalizeIPv6:O5c,normalizeIPv4:M5c,removeDotSegments:m8e,recomposeAuthority:H5c,normalizeComponentEncoding:TBt}=R6i(),zPr=F6i();function Y5c(e,t){return typeof e=="string"?e=Wj(ite(e,t),t):typeof e=="object"&&(e=ite(Wj(e,t),t)),e}function Q5c(e,t,r){let n=Object.assign({scheme:"null"},r),a=Z6i(ite(e,n),ite(t,n),n,!0);return Wj(a,{...n,skipEscape:!0})}function Z6i(e,t,r,n){let a={};return n||(e=ite(Wj(e,r),r),t=ite(Wj(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=m8e(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=m8e(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=m8e(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=m8e(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function X5c(e,t,r){return typeof e=="string"?(e=unescape(e),e=Wj(TBt(ite(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Wj(TBt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Wj(TBt(ite(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Wj(TBt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Wj(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),a=[],o=zPr[(n.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let l=H5c(r,n);if(l!==void 0&&(n.reference!=="suffix"&&a.push("//"),a.push(l),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let A=r.path;!n.absolutePath&&(!o||!o.absolutePath)&&(A=m8e(A)),l===void 0&&(A=A.replace(/^\/\//u,"/%2F")),a.push(A)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var J5c=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function U5c(e){let t=0;for(let r=0,n=e.length;r126||J5c[t])return!0;return!1}var K5c=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ite(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let l=e.match(K5c);if(l){if(n.scheme=l[1],n.userinfo=l[3],n.host=l[4],n.port=parseInt(l[5],10),n.path=l[6]||"",n.query=l[7],n.fragment=l[8],isNaN(n.port)&&(n.port=l[5]),n.host){let f=M5c(n.host);if(f.isIPV4===!1){let I=O5c(f.host,{isIPV4:!1});n.host=I.host.toLowerCase(),o=I.isIPV6}else n.host=f.host,o=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let A=zPr[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!A||!A.unicodeSupport)&&n.host&&(r.domainHost||A&&A.domainHost)&&o===!1&&U5c(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(f){n.error=n.error||"Host's domain name can not be converted to ASCII: "+f}(!A||A&&!A.skipNormalize)&&(a&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),a&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),A&&A.parse&&A.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var qPr={SCHEMES:zPr,normalize:Y5c,resolve:Q5c,resolveComponents:Z6i,equal:X5c,serialize:Wj,parse:ite};RBt.exports=qPr;RBt.exports.default=qPr;RBt.exports.fastUri=qPr});var P6i=H($Pr=>{"use strict";Object.defineProperty($Pr,"__esModule",{value:!0});var V6i=L6i();V6i.code='require("ajv/dist/runtime/uri").default';$Pr.default=V6i});var J6i=H(ex=>{"use strict";Object.defineProperty(ex,"__esModule",{value:!0});ex.CodeGen=ex.Name=ex.nil=ex.stringify=ex.str=ex._=ex.KeywordCxt=void 0;var j5c=I8e();Object.defineProperty(ex,"KeywordCxt",{enumerable:!0,get:function(){return j5c.KeywordCxt}});var cke=Hh();Object.defineProperty(ex,"_",{enumerable:!0,get:function(){return cke._}});Object.defineProperty(ex,"str",{enumerable:!0,get:function(){return cke.str}});Object.defineProperty(ex,"stringify",{enumerable:!0,get:function(){return cke.stringify}});Object.defineProperty(ex,"nil",{enumerable:!0,get:function(){return cke.nil}});Object.defineProperty(ex,"Name",{enumerable:!0,get:function(){return cke.Name}});Object.defineProperty(ex,"CodeGen",{enumerable:!0,get:function(){return cke.CodeGen}});var z5c=SBt(),Y6i=h8e(),q5c=RPr(),C8e=BBt(),$5c=Hh(),_8e=d8e(),NBt=A8e(),tWr=B_(),W6i=C6i(),eMc=P6i(),Q6i=(e,t)=>new RegExp(e,t);Q6i.code="new RegExp";var tMc=["removeAdditional","useDefaults","coerceTypes"],rMc=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),nMc={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},iMc={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},O6i=200;function sMc(e){var t,r,n,a,o,l,A,f,I,C,b,E,N,B,F,Q,X,ae,ne,ce,fe,ue,de,be,Se;let De=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,et=k===!0||k===void 0?1:k||0,ct=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Q6i,Me=(a=e.uriResolver)!==null&&a!==void 0?a:eMc.default;return{strictSchema:(l=(o=e.strictSchema)!==null&&o!==void 0?o:De)!==null&&l!==void 0?l:!0,strictNumbers:(f=(A=e.strictNumbers)!==null&&A!==void 0?A:De)!==null&&f!==void 0?f:!0,strictTypes:(C=(I=e.strictTypes)!==null&&I!==void 0?I:De)!==null&&C!==void 0?C:"log",strictTuples:(E=(b=e.strictTuples)!==null&&b!==void 0?b:De)!==null&&E!==void 0?E:"log",strictRequired:(B=(N=e.strictRequired)!==null&&N!==void 0?N:De)!==null&&B!==void 0?B:!1,code:e.code?{...e.code,optimize:et,regExp:ct}:{optimize:et,regExp:ct},loopRequired:(F=e.loopRequired)!==null&&F!==void 0?F:O6i,loopEnum:(Q=e.loopEnum)!==null&&Q!==void 0?Q:O6i,meta:(X=e.meta)!==null&&X!==void 0?X:!0,messages:(ae=e.messages)!==null&&ae!==void 0?ae:!0,inlineRefs:(ne=e.inlineRefs)!==null&&ne!==void 0?ne:!0,schemaId:(ce=e.schemaId)!==null&&ce!==void 0?ce:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(ue=e.validateSchema)!==null&&ue!==void 0?ue:!0,validateFormats:(de=e.validateFormats)!==null&&de!==void 0?de:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Se=e.int32range)!==null&&Se!==void 0?Se:!0,uriResolver:Me}}var y8e=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...sMc(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new $5c.ValueScope({scope:{},prefixes:rMc,es5:r,lines:n}),this.logger=gMc(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,q5c.getRules)(),M6i.call(this,nMc,t,"NOT SUPPORTED"),M6i.call(this,iMc,t,"DEPRECATED","warn"),this._metaOpts=lMc.call(this),t.formats&&aMc.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&cMc.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),oMc.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,a=W6i;n==="id"&&(a={...W6i},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let a=n(r);return"$async"in n||(this.errors=n.errors),a}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return a.call(this,t,r);async function a(C,b){await o.call(this,C.$schema);let E=this._addSchema(C,b);return E.validate||l.call(this,E)}async function o(C){C&&!this.getSchema(C)&&await a.call(this,{$ref:C},!0)}async function l(C){try{return this._compileSchemaEnv(C)}catch(b){if(!(b instanceof Y6i.default))throw b;return A.call(this,b),await f.call(this,b.missingSchema),l.call(this,C)}}function A({missingSchema:C,missingRef:b}){if(this.refs[C])throw new Error(`AnySchema ${C} is loaded but ${b} cannot be resolved`)}async function f(C){let b=await I.call(this,C);this.refs[C]||await o.call(this,b.$schema),this.refs[C]||this.addSchema(b,C,r)}async function I(C){let b=this._loading[C];if(b)return b;try{return await(this._loading[C]=n(C))}finally{delete this._loading[C]}}}addSchema(t,r,n,a=this.opts.validateSchema){if(Array.isArray(t)){for(let l of t)this.addSchema(l,void 0,n,a);return this}let o;if(typeof t=="object"){let{schemaId:l}=this.opts;if(o=t[l],o!==void 0&&typeof o!="string")throw new Error(`schema ${l} must be string`)}return r=(0,_8e.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,a,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(n,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=H6i.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,a=new C8e.SchemaEnv({schema:{},schemaId:n});if(r=C8e.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=H6i.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,_8e.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(dMc.call(this,n,r),!r)return(0,tWr.eachItem)(n,o=>eWr.call(this,o)),this;fMc.call(this,r);let a={...r,type:(0,NBt.getJSONTypes)(r.type),schemaType:(0,NBt.getJSONTypes)(r.schemaType)};return(0,tWr.eachItem)(n,a.type.length===0?o=>eWr.call(this,o,a):o=>a.type.forEach(l=>eWr.call(this,o,a,l))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let a=n.rules.findIndex(o=>o.keyword===t);a>=0&&n.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${n}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),l=t;for(let A of o)l=l[A];for(let A in n){let f=n[A];if(typeof f!="object")continue;let{$data:I}=f.definition,C=l[A];I&&C&&(l[A]=X6i(C))}}return t}_removeAllSchemas(t,r){for(let n in t){let a=t[n];(!r||r.test(n))&&(typeof a=="string"?delete t[n]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[n]))}}_addSchema(t,r,n,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let l,{schemaId:A}=this.opts;if(typeof t=="object")l=t[A];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;n=(0,_8e.normalizeId)(l||n);let I=_8e.getSchemaRefs.call(this,t,n);return f=new C8e.SchemaEnv({schema:t,schemaId:A,meta:r,baseId:n,localRefs:I}),this._cache.set(f.schema,f),o&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):C8e.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{C8e.compileSchema.call(this,t)}finally{this.opts=r}}};y8e.ValidationError=z5c.default;y8e.MissingRefError=Y6i.default;ex.default=y8e;function M6i(e,t,r,n="error"){for(let a in e){let o=a;o in t&&this.logger[n](`${r}: option ${a}. ${e[o]}`)}}function H6i(e){return e=(0,_8e.normalizeId)(e),this.schemas[e]||this.refs[e]}function oMc(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function aMc(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function cMc(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function lMc(){let e={...this.opts};for(let t of tMc)delete e[t];return e}var uMc={log(){},warn(){},error(){}};function gMc(e){if(e===!1)return uMc;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var AMc=/^[a-z_$][a-z0-9_$:-]*$/i;function dMc(e,t){let{RULES:r}=this;if((0,tWr.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!AMc.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function eWr(e,t,r){var n;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,l=a?o.post:o.rules.find(({type:f})=>f===r);if(l||(l={type:r,rules:[]},o.rules.push(l)),o.keywords[e]=!0,!t)return;let A={keyword:e,definition:{...t,type:(0,NBt.getJSONTypes)(t.type),schemaType:(0,NBt.getJSONTypes)(t.schemaType)}};t.before?pMc.call(this,l,A,t.before):l.rules.push(A),o.all[e]=A,(n=t.implements)===null||n===void 0||n.forEach(f=>this.addKeyword(f))}function pMc(e,t,r){let n=e.rules.findIndex(a=>a.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function fMc(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=X6i(t)),e.validateSchema=this.compile(t,!0))}var IMc={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function X6i(e){return{anyOf:[e,IMc]}}});var U6i=H(rWr=>{"use strict";Object.defineProperty(rWr,"__esModule",{value:!0});var hMc={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};rWr.default=hMc});var q6i=H(a_e=>{"use strict";Object.defineProperty(a_e,"__esModule",{value:!0});a_e.callRef=a_e.getValidate=void 0;var mMc=h8e(),K6i=IH(),xV=Hh(),lke=rte(),j6i=BBt(),DBt=B_(),CMc={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:a,schemaEnv:o,validateName:l,opts:A,self:f}=n,{root:I}=o;if((r==="#"||r==="#/")&&a===I.baseId)return b();let C=j6i.resolveRef.call(f,I,a,r);if(C===void 0)throw new mMc.default(n.opts.uriResolver,a,r);if(C instanceof j6i.SchemaEnv)return E(C);return N(C);function b(){if(o===I)return kBt(e,l,o,o.$async);let B=t.scopeValue("root",{ref:I});return kBt(e,(0,xV._)`${B}.validate`,I,I.$async)}function E(B){let F=z6i(e,B);kBt(e,F,B,B.$async)}function N(B){let F=t.scopeValue("schema",A.code.source===!0?{ref:B,code:(0,xV.stringify)(B)}:{ref:B}),Q=t.name("valid"),X=e.subschema({schema:B,dataTypes:[],schemaPath:xV.nil,topSchemaRef:F,errSchemaPath:r},Q);e.mergeEvaluated(X),e.ok(Q)}}};function z6i(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,xV._)`${r.scopeValue("wrapper",{ref:t})}.validate`}a_e.getValidate=z6i;function kBt(e,t,r,n){let{gen:a,it:o}=e,{allErrors:l,schemaEnv:A,opts:f}=o,I=f.passContext?lke.default.this:xV.nil;n?C():b();function C(){if(!A.$async)throw new Error("async schema referenced by sync schema");let B=a.let("valid");a.try(()=>{a.code((0,xV._)`await ${(0,K6i.callValidateCode)(e,t,I)}`),N(t),l||a.assign(B,!0)},F=>{a.if((0,xV._)`!(${F} instanceof ${o.ValidationError})`,()=>a.throw(F)),E(F),l||a.assign(B,!1)}),e.ok(B)}function b(){e.result((0,K6i.callValidateCode)(e,t,I),()=>N(t),()=>E(t))}function E(B){let F=(0,xV._)`${B}.errors`;a.assign(lke.default.vErrors,(0,xV._)`${lke.default.vErrors} === null ? ${F} : ${lke.default.vErrors}.concat(${F})`),a.assign(lke.default.errors,(0,xV._)`${lke.default.vErrors}.length`)}function N(B){var F;if(!o.opts.unevaluated)return;let Q=(F=r?.validate)===null||F===void 0?void 0:F.evaluated;if(o.props!==!0)if(Q&&!Q.dynamicProps)Q.props!==void 0&&(o.props=DBt.mergeEvaluated.props(a,Q.props,o.props));else{let X=a.var("props",(0,xV._)`${B}.evaluated.props`);o.props=DBt.mergeEvaluated.props(a,X,o.props,xV.Name)}if(o.items!==!0)if(Q&&!Q.dynamicItems)Q.items!==void 0&&(o.items=DBt.mergeEvaluated.items(a,Q.items,o.items));else{let X=a.var("items",(0,xV._)`${B}.evaluated.items`);o.items=DBt.mergeEvaluated.items(a,X,o.items,xV.Name)}}}a_e.callRef=kBt;a_e.default=CMc});var $6i=H(nWr=>{"use strict";Object.defineProperty(nWr,"__esModule",{value:!0});var _Mc=U6i(),yMc=q6i(),bMc=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",_Mc.default,yMc.default];nWr.default=bMc});var e7i=H(iWr=>{"use strict";Object.defineProperty(iWr,"__esModule",{value:!0});var xBt=Hh(),Ale=xBt.operators,GBt={maximum:{okStr:"<=",ok:Ale.LTE,fail:Ale.GT},minimum:{okStr:">=",ok:Ale.GTE,fail:Ale.LT},exclusiveMaximum:{okStr:"<",ok:Ale.LT,fail:Ale.GTE},exclusiveMinimum:{okStr:">",ok:Ale.GT,fail:Ale.LTE}},EMc={message:({keyword:e,schemaCode:t})=>(0,xBt.str)`must be ${GBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,xBt._)`{comparison: ${GBt[e].okStr}, limit: ${t}}`},SMc={keyword:Object.keys(GBt),type:"number",schemaType:"number",$data:!0,error:EMc,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,xBt._)`${r} ${GBt[t].fail} ${n} || isNaN(${r})`)}};iWr.default=SMc});var t7i=H(sWr=>{"use strict";Object.defineProperty(sWr,"__esModule",{value:!0});var b8e=Hh(),vMc={message:({schemaCode:e})=>(0,b8e.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,b8e._)`{multipleOf: ${e}}`},BMc={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vMc,code(e){let{gen:t,data:r,schemaCode:n,it:a}=e,o=a.opts.multipleOfPrecision,l=t.let("res"),A=o?(0,b8e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${o}`:(0,b8e._)`${l} !== parseInt(${l})`;e.fail$data((0,b8e._)`(${n} === 0 || (${l} = ${r}/${n}, ${A}))`)}};sWr.default=BMc});var n7i=H(oWr=>{"use strict";Object.defineProperty(oWr,"__esModule",{value:!0});function r7i(e){let t=e.length,r=0,n=0,a;for(;n=55296&&a<=56319&&n{"use strict";Object.defineProperty(aWr,"__esModule",{value:!0});var c_e=Hh(),wMc=B_(),TMc=n7i(),RMc={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,c_e.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,c_e._)`{limit: ${e}}`},NMc={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:RMc,code(e){let{keyword:t,data:r,schemaCode:n,it:a}=e,o=t==="maxLength"?c_e.operators.GT:c_e.operators.LT,l=a.opts.unicode===!1?(0,c_e._)`${r}.length`:(0,c_e._)`${(0,wMc.useFunc)(e.gen,TMc.default)}(${r})`;e.fail$data((0,c_e._)`${l} ${o} ${n}`)}};aWr.default=NMc});var s7i=H(cWr=>{"use strict";Object.defineProperty(cWr,"__esModule",{value:!0});var DMc=IH(),FBt=Hh(),kMc={message:({schemaCode:e})=>(0,FBt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,FBt._)`{pattern: ${e}}`},xMc={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:kMc,code(e){let{data:t,$data:r,schema:n,schemaCode:a,it:o}=e,l=o.opts.unicodeRegExp?"u":"",A=r?(0,FBt._)`(new RegExp(${a}, ${l}))`:(0,DMc.usePattern)(e,n);e.fail$data((0,FBt._)`!${A}.test(${t})`)}};cWr.default=xMc});var o7i=H(lWr=>{"use strict";Object.defineProperty(lWr,"__esModule",{value:!0});var E8e=Hh(),GMc={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,E8e.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,E8e._)`{limit: ${e}}`},FMc={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:GMc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxProperties"?E8e.operators.GT:E8e.operators.LT;e.fail$data((0,E8e._)`Object.keys(${r}).length ${a} ${n}`)}};lWr.default=FMc});var a7i=H(uWr=>{"use strict";Object.defineProperty(uWr,"__esModule",{value:!0});var S8e=IH(),v8e=Hh(),ZMc=B_(),LMc={message:({params:{missingProperty:e}})=>(0,v8e.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,v8e._)`{missingProperty: ${e}}`},VMc={keyword:"required",type:"object",schemaType:"array",$data:!0,error:LMc,code(e){let{gen:t,schema:r,schemaCode:n,data:a,$data:o,it:l}=e,{opts:A}=l;if(!o&&r.length===0)return;let f=r.length>=A.loopRequired;if(l.allErrors?I():C(),A.strictRequired){let N=e.parentSchema.properties,{definedProperties:B}=e.it;for(let F of r)if(N?.[F]===void 0&&!B.has(F)){let Q=l.schemaEnv.baseId+l.errSchemaPath,X=`required property "${F}" is not defined at "${Q}" (strictRequired)`;(0,ZMc.checkStrictMode)(l,X,l.opts.strictRequired)}}function I(){if(f||o)e.block$data(v8e.nil,b);else for(let N of r)(0,S8e.checkReportMissingProp)(e,N)}function C(){let N=t.let("missing");if(f||o){let B=t.let("valid",!0);e.block$data(B,()=>E(N,B)),e.ok(B)}else t.if((0,S8e.checkMissingProp)(e,r,N)),(0,S8e.reportMissingProp)(e,N),t.else()}function b(){t.forOf("prop",n,N=>{e.setParams({missingProperty:N}),t.if((0,S8e.noPropertyInData)(t,a,N,A.ownProperties),()=>e.error())})}function E(N,B){e.setParams({missingProperty:N}),t.forOf(N,n,()=>{t.assign(B,(0,S8e.propertyInData)(t,a,N,A.ownProperties)),t.if((0,v8e.not)(B),()=>{e.error(),t.break()})},v8e.nil)}}};uWr.default=VMc});var c7i=H(gWr=>{"use strict";Object.defineProperty(gWr,"__esModule",{value:!0});var B8e=Hh(),PMc={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,B8e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,B8e._)`{limit: ${e}}`},WMc={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:PMc,code(e){let{keyword:t,data:r,schemaCode:n}=e,a=t==="maxItems"?B8e.operators.GT:B8e.operators.LT;e.fail$data((0,B8e._)`${r}.length ${a} ${n}`)}};gWr.default=WMc});var ZBt=H(AWr=>{"use strict";Object.defineProperty(AWr,"__esModule",{value:!0});var l7i=LPr();l7i.code='require("ajv/dist/runtime/equal").default';AWr.default=l7i});var u7i=H(pWr=>{"use strict";Object.defineProperty(pWr,"__esModule",{value:!0});var dWr=A8e(),tx=Hh(),OMc=B_(),MMc=ZBt(),HMc={message:({params:{i:e,j:t}})=>(0,tx.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,tx._)`{i: ${e}, j: ${t}}`},YMc={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:HMc,code(e){let{gen:t,data:r,$data:n,schema:a,parentSchema:o,schemaCode:l,it:A}=e;if(!n&&!a)return;let f=t.let("valid"),I=o.items?(0,dWr.getSchemaTypes)(o.items):[];e.block$data(f,C,(0,tx._)`${l} === false`),e.ok(f);function C(){let B=t.let("i",(0,tx._)`${r}.length`),F=t.let("j");e.setParams({i:B,j:F}),t.assign(f,!0),t.if((0,tx._)`${B} > 1`,()=>(b()?E:N)(B,F))}function b(){return I.length>0&&!I.some(B=>B==="object"||B==="array")}function E(B,F){let Q=t.name("item"),X=(0,dWr.checkDataTypes)(I,Q,A.opts.strictNumbers,dWr.DataType.Wrong),ae=t.const("indices",(0,tx._)`{}`);t.for((0,tx._)`;${B}--;`,()=>{t.let(Q,(0,tx._)`${r}[${B}]`),t.if(X,(0,tx._)`continue`),I.length>1&&t.if((0,tx._)`typeof ${Q} == "string"`,(0,tx._)`${Q} += "_"`),t.if((0,tx._)`typeof ${ae}[${Q}] == "number"`,()=>{t.assign(F,(0,tx._)`${ae}[${Q}]`),e.error(),t.assign(f,!1).break()}).code((0,tx._)`${ae}[${Q}] = ${B}`)})}function N(B,F){let Q=(0,OMc.useFunc)(t,MMc.default),X=t.name("outer");t.label(X).for((0,tx._)`;${B}--;`,()=>t.for((0,tx._)`${F} = ${B}; ${F}--;`,()=>t.if((0,tx._)`${Q}(${r}[${B}], ${r}[${F}])`,()=>{e.error(),t.assign(f,!1).break(X)})))}}};pWr.default=YMc});var g7i=H(IWr=>{"use strict";Object.defineProperty(IWr,"__esModule",{value:!0});var fWr=Hh(),QMc=B_(),XMc=ZBt(),JMc={message:"must be equal to constant",params:({schemaCode:e})=>(0,fWr._)`{allowedValue: ${e}}`},UMc={keyword:"const",$data:!0,error:JMc,code(e){let{gen:t,data:r,$data:n,schemaCode:a,schema:o}=e;n||o&&typeof o=="object"?e.fail$data((0,fWr._)`!${(0,QMc.useFunc)(t,XMc.default)}(${r}, ${a})`):e.fail((0,fWr._)`${o} !== ${r}`)}};IWr.default=UMc});var A7i=H(hWr=>{"use strict";Object.defineProperty(hWr,"__esModule",{value:!0});var w8e=Hh(),KMc=B_(),jMc=ZBt(),zMc={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,w8e._)`{allowedValues: ${e}}`},qMc={keyword:"enum",schemaType:"array",$data:!0,error:zMc,code(e){let{gen:t,data:r,$data:n,schema:a,schemaCode:o,it:l}=e;if(!n&&a.length===0)throw new Error("enum must have non-empty array");let A=a.length>=l.opts.loopEnum,f,I=()=>f??(f=(0,KMc.useFunc)(t,jMc.default)),C;if(A||n)C=t.let("valid"),e.block$data(C,b);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let N=t.const("vSchema",o);C=(0,w8e.or)(...a.map((B,F)=>E(N,F)))}e.pass(C);function b(){t.assign(C,!1),t.forOf("v",o,N=>t.if((0,w8e._)`${I()}(${r}, ${N})`,()=>t.assign(C,!0).break()))}function E(N,B){let F=a[B];return typeof F=="object"&&F!==null?(0,w8e._)`${I()}(${r}, ${N}[${B}])`:(0,w8e._)`${r} === ${F}`}}};hWr.default=qMc});var d7i=H(mWr=>{"use strict";Object.defineProperty(mWr,"__esModule",{value:!0});var $Mc=e7i(),eHc=t7i(),tHc=i7i(),rHc=s7i(),nHc=o7i(),iHc=a7i(),sHc=c7i(),oHc=u7i(),aHc=g7i(),cHc=A7i(),lHc=[$Mc.default,eHc.default,tHc.default,rHc.default,nHc.default,iHc.default,sHc.default,oHc.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},aHc.default,cHc.default];mWr.default=lHc});var _Wr=H(T8e=>{"use strict";Object.defineProperty(T8e,"__esModule",{value:!0});T8e.validateAdditionalItems=void 0;var l_e=Hh(),CWr=B_(),uHc={message:({params:{len:e}})=>(0,l_e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,l_e._)`{limit: ${e}}`},gHc={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:uHc,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,CWr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}p7i(e,n)}};function p7i(e,t){let{gen:r,schema:n,data:a,keyword:o,it:l}=e;l.items=!0;let A=r.const("len",(0,l_e._)`${a}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,l_e._)`${A} <= ${t.length}`);else if(typeof n=="object"&&!(0,CWr.alwaysValidSchema)(l,n)){let I=r.var("valid",(0,l_e._)`${A} <= ${t.length}`);r.if((0,l_e.not)(I),()=>f(I)),e.ok(I)}function f(I){r.forRange("i",t.length,A,C=>{e.subschema({keyword:o,dataProp:C,dataPropType:CWr.Type.Num},I),l.allErrors||r.if((0,l_e.not)(I),()=>r.break())})}}T8e.validateAdditionalItems=p7i;T8e.default=gHc});var yWr=H(R8e=>{"use strict";Object.defineProperty(R8e,"__esModule",{value:!0});R8e.validateTuple=void 0;var f7i=Hh(),LBt=B_(),AHc=IH(),dHc={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return I7i(e,"additionalItems",t);r.items=!0,!(0,LBt.alwaysValidSchema)(r,t)&&e.ok((0,AHc.validateArray)(e))}};function I7i(e,t,r=e.schema){let{gen:n,parentSchema:a,data:o,keyword:l,it:A}=e;C(a),A.opts.unevaluated&&r.length&&A.items!==!0&&(A.items=LBt.mergeEvaluated.items(n,r.length,A.items));let f=n.name("valid"),I=n.const("len",(0,f7i._)`${o}.length`);r.forEach((b,E)=>{(0,LBt.alwaysValidSchema)(A,b)||(n.if((0,f7i._)`${I} > ${E}`,()=>e.subschema({keyword:l,schemaProp:E,dataProp:E},f)),e.ok(f))});function C(b){let{opts:E,errSchemaPath:N}=A,B=r.length,F=B===b.minItems&&(B===b.maxItems||b[t]===!1);if(E.strictTuples&&!F){let Q=`"${l}" is ${B}-tuple, but minItems or maxItems/${t} are not specified or different at path "${N}"`;(0,LBt.checkStrictMode)(A,Q,E.strictTuples)}}}R8e.validateTuple=I7i;R8e.default=dHc});var h7i=H(bWr=>{"use strict";Object.defineProperty(bWr,"__esModule",{value:!0});var pHc=yWr(),fHc={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,pHc.validateTuple)(e,"items")};bWr.default=fHc});var C7i=H(EWr=>{"use strict";Object.defineProperty(EWr,"__esModule",{value:!0});var m7i=Hh(),IHc=B_(),hHc=IH(),mHc=_Wr(),CHc={message:({params:{len:e}})=>(0,m7i.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,m7i._)`{limit: ${e}}`},_Hc={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:CHc,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:a}=r;n.items=!0,!(0,IHc.alwaysValidSchema)(n,t)&&(a?(0,mHc.validateAdditionalItems)(e,a):e.ok((0,hHc.validateArray)(e)))}};EWr.default=_Hc});var _7i=H(SWr=>{"use strict";Object.defineProperty(SWr,"__esModule",{value:!0});var mH=Hh(),VBt=B_(),yHc={message:({params:{min:e,max:t}})=>t===void 0?(0,mH.str)`must contain at least ${e} valid item(s)`:(0,mH.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,mH._)`{minContains: ${e}}`:(0,mH._)`{minContains: ${e}, maxContains: ${t}}`},bHc={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:yHc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e,l,A,{minContains:f,maxContains:I}=n;o.opts.next?(l=f===void 0?1:f,A=I):l=1;let C=t.const("len",(0,mH._)`${a}.length`);if(e.setParams({min:l,max:A}),A===void 0&&l===0){(0,VBt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(A!==void 0&&l>A){(0,VBt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,VBt.alwaysValidSchema)(o,r)){let F=(0,mH._)`${C} >= ${l}`;A!==void 0&&(F=(0,mH._)`${F} && ${C} <= ${A}`),e.pass(F);return}o.items=!0;let b=t.name("valid");A===void 0&&l===1?N(b,()=>t.if(b,()=>t.break())):l===0?(t.let(b,!0),A!==void 0&&t.if((0,mH._)`${a}.length > 0`,E)):(t.let(b,!1),E()),e.result(b,()=>e.reset());function E(){let F=t.name("_valid"),Q=t.let("count",0);N(F,()=>t.if(F,()=>B(Q)))}function N(F,Q){t.forRange("i",0,C,X=>{e.subschema({keyword:"contains",dataProp:X,dataPropType:VBt.Type.Num,compositeRule:!0},F),Q()})}function B(F){t.code((0,mH._)`${F}++`),A===void 0?t.if((0,mH._)`${F} >= ${l}`,()=>t.assign(b,!0).break()):(t.if((0,mH._)`${F} > ${A}`,()=>t.assign(b,!1).break()),l===1?t.assign(b,!0):t.if((0,mH._)`${F} >= ${l}`,()=>t.assign(b,!0)))}}};SWr.default=bHc});var E7i=H(Oj=>{"use strict";Object.defineProperty(Oj,"__esModule",{value:!0});Oj.validateSchemaDeps=Oj.validatePropertyDeps=Oj.error=void 0;var vWr=Hh(),EHc=B_(),N8e=IH();Oj.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,vWr.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,vWr._)`{property: ${e}, - missingProperty: ${n}, - depsCount: ${t}, - deps: ${r}}`};var SHc={keyword:"dependencies",type:"object",schemaType:"object",error:Oj.error,code(e){let[t,r]=vHc(e);y7i(e,t),b7i(e,r)}};function vHc({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let a=Array.isArray(e[n])?t:r;a[n]=e[n]}return[t,r]}function y7i(e,t=e.schema){let{gen:r,data:n,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let l in t){let A=t[l];if(A.length===0)continue;let f=(0,N8e.propertyInData)(r,n,l,a.opts.ownProperties);e.setParams({property:l,depsCount:A.length,deps:A.join(", ")}),a.allErrors?r.if(f,()=>{for(let I of A)(0,N8e.checkReportMissingProp)(e,I)}):(r.if((0,vWr._)`${f} && (${(0,N8e.checkMissingProp)(e,A,o)})`),(0,N8e.reportMissingProp)(e,o),r.else())}}Oj.validatePropertyDeps=y7i;function b7i(e,t=e.schema){let{gen:r,data:n,keyword:a,it:o}=e,l=r.name("valid");for(let A in t)(0,EHc.alwaysValidSchema)(o,t[A])||(r.if((0,N8e.propertyInData)(r,n,A,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:A},l);e.mergeValidEvaluated(f,l)},()=>r.var(l,!0)),e.ok(l))}Oj.validateSchemaDeps=b7i;Oj.default=SHc});var v7i=H(BWr=>{"use strict";Object.defineProperty(BWr,"__esModule",{value:!0});var S7i=Hh(),BHc=B_(),wHc={message:"property name must be valid",params:({params:e})=>(0,S7i._)`{propertyName: ${e.propertyName}}`},THc={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:wHc,code(e){let{gen:t,schema:r,data:n,it:a}=e;if((0,BHc.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",n,l=>{e.setParams({propertyName:l}),e.subschema({keyword:"propertyNames",data:l,dataTypes:["string"],propertyName:l,compositeRule:!0},o),t.if((0,S7i.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};BWr.default=THc});var TWr=H(wWr=>{"use strict";Object.defineProperty(wWr,"__esModule",{value:!0});var PBt=IH(),R4=Hh(),RHc=rte(),WBt=B_(),NHc={message:"must NOT have additional properties",params:({params:e})=>(0,R4._)`{additionalProperty: ${e.additionalProperty}}`},DHc={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:NHc,code(e){let{gen:t,schema:r,parentSchema:n,data:a,errsCount:o,it:l}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:A,opts:f}=l;if(l.props=!0,f.removeAdditional!=="all"&&(0,WBt.alwaysValidSchema)(l,r))return;let I=(0,PBt.allSchemaProperties)(n.properties),C=(0,PBt.allSchemaProperties)(n.patternProperties);b(),e.ok((0,R4._)`${o} === ${RHc.default.errors}`);function b(){t.forIn("key",a,Q=>{!I.length&&!C.length?B(Q):t.if(E(Q),()=>B(Q))})}function E(Q){let X;if(I.length>8){let ae=(0,WBt.schemaRefOrVal)(l,n.properties,"properties");X=(0,PBt.isOwnProperty)(t,ae,Q)}else I.length?X=(0,R4.or)(...I.map(ae=>(0,R4._)`${Q} === ${ae}`)):X=R4.nil;return C.length&&(X=(0,R4.or)(X,...C.map(ae=>(0,R4._)`${(0,PBt.usePattern)(e,ae)}.test(${Q})`))),(0,R4.not)(X)}function N(Q){t.code((0,R4._)`delete ${a}[${Q}]`)}function B(Q){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){N(Q);return}if(r===!1){e.setParams({additionalProperty:Q}),e.error(),A||t.break();return}if(typeof r=="object"&&!(0,WBt.alwaysValidSchema)(l,r)){let X=t.name("valid");f.removeAdditional==="failing"?(F(Q,X,!1),t.if((0,R4.not)(X),()=>{e.reset(),N(Q)})):(F(Q,X),A||t.if((0,R4.not)(X),()=>t.break()))}}function F(Q,X,ae){let ne={keyword:"additionalProperties",dataProp:Q,dataPropType:WBt.Type.Str};ae===!1&&Object.assign(ne,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ne,X)}}};wWr.default=DHc});var T7i=H(NWr=>{"use strict";Object.defineProperty(NWr,"__esModule",{value:!0});var kHc=I8e(),B7i=IH(),RWr=B_(),w7i=TWr(),xHc={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:a,it:o}=e;o.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&w7i.default.code(new kHc.KeywordCxt(o,w7i.default,"additionalProperties"));let l=(0,B7i.allSchemaProperties)(r);for(let b of l)o.definedProperties.add(b);o.opts.unevaluated&&l.length&&o.props!==!0&&(o.props=RWr.mergeEvaluated.props(t,(0,RWr.toHash)(l),o.props));let A=l.filter(b=>!(0,RWr.alwaysValidSchema)(o,r[b]));if(A.length===0)return;let f=t.name("valid");for(let b of A)I(b)?C(b):(t.if((0,B7i.propertyInData)(t,a,b,o.opts.ownProperties)),C(b),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(b),e.ok(f);function I(b){return o.opts.useDefaults&&!o.compositeRule&&r[b].default!==void 0}function C(b){e.subschema({keyword:"properties",schemaProp:b,dataProp:b},f)}}};NWr.default=xHc});var k7i=H(DWr=>{"use strict";Object.defineProperty(DWr,"__esModule",{value:!0});var R7i=IH(),OBt=Hh(),N7i=B_(),D7i=B_(),GHc={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:a,it:o}=e,{opts:l}=o,A=(0,R7i.allSchemaProperties)(r),f=A.filter(F=>(0,N7i.alwaysValidSchema)(o,r[F]));if(A.length===0||f.length===A.length&&(!o.opts.unevaluated||o.props===!0))return;let I=l.strictSchema&&!l.allowMatchingProperties&&a.properties,C=t.name("valid");o.props!==!0&&!(o.props instanceof OBt.Name)&&(o.props=(0,D7i.evaluatedPropsToName)(t,o.props));let{props:b}=o;E();function E(){for(let F of A)I&&N(F),o.allErrors?B(F):(t.var(C,!0),B(F),t.if(C))}function N(F){for(let Q in I)new RegExp(F).test(Q)&&(0,N7i.checkStrictMode)(o,`property ${Q} matches pattern ${F} (use allowMatchingProperties)`)}function B(F){t.forIn("key",n,Q=>{t.if((0,OBt._)`${(0,R7i.usePattern)(e,F)}.test(${Q})`,()=>{let X=f.includes(F);X||e.subschema({keyword:"patternProperties",schemaProp:F,dataProp:Q,dataPropType:D7i.Type.Str},C),o.opts.unevaluated&&b!==!0?t.assign((0,OBt._)`${b}[${Q}]`,!0):!X&&!o.allErrors&&t.if((0,OBt.not)(C),()=>t.break())})})}}};DWr.default=GHc});var x7i=H(kWr=>{"use strict";Object.defineProperty(kWr,"__esModule",{value:!0});var FHc=B_(),ZHc={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,FHc.alwaysValidSchema)(n,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};kWr.default=ZHc});var G7i=H(xWr=>{"use strict";Object.defineProperty(xWr,"__esModule",{value:!0});var LHc=IH(),VHc={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:LHc.validateUnion,error:{message:"must match a schema in anyOf"}};xWr.default=VHc});var F7i=H(GWr=>{"use strict";Object.defineProperty(GWr,"__esModule",{value:!0});var MBt=Hh(),PHc=B_(),WHc={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,MBt._)`{passingSchemas: ${e.passing}}`},OHc={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:WHc,code(e){let{gen:t,schema:r,parentSchema:n,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&n.discriminator)return;let o=r,l=t.let("valid",!1),A=t.let("passing",null),f=t.name("_valid");e.setParams({passing:A}),t.block(I),e.result(l,()=>e.reset(),()=>e.error(!0));function I(){o.forEach((C,b)=>{let E;(0,PHc.alwaysValidSchema)(a,C)?t.var(f,!0):E=e.subschema({keyword:"oneOf",schemaProp:b,compositeRule:!0},f),b>0&&t.if((0,MBt._)`${f} && ${l}`).assign(l,!1).assign(A,(0,MBt._)`[${A}, ${b}]`).else(),t.if(f,()=>{t.assign(l,!0),t.assign(A,b),E&&e.mergeEvaluated(E,MBt.Name)})})}}};GWr.default=OHc});var Z7i=H(FWr=>{"use strict";Object.defineProperty(FWr,"__esModule",{value:!0});var MHc=B_(),HHc={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,l)=>{if((0,MHc.alwaysValidSchema)(n,o))return;let A=e.subschema({keyword:"allOf",schemaProp:l},a);e.ok(a),e.mergeEvaluated(A)})}};FWr.default=HHc});var P7i=H(ZWr=>{"use strict";Object.defineProperty(ZWr,"__esModule",{value:!0});var HBt=Hh(),V7i=B_(),YHc={message:({params:e})=>(0,HBt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,HBt._)`{failingKeyword: ${e.ifClause}}`},QHc={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:YHc,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,V7i.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let a=L7i(n,"then"),o=L7i(n,"else");if(!a&&!o)return;let l=t.let("valid",!0),A=t.name("_valid");if(f(),e.reset(),a&&o){let C=t.let("ifClause");e.setParams({ifClause:C}),t.if(A,I("then",C),I("else",C))}else a?t.if(A,I("then")):t.if((0,HBt.not)(A),I("else"));e.pass(l,()=>e.error(!0));function f(){let C=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},A);e.mergeEvaluated(C)}function I(C,b){return()=>{let E=e.subschema({keyword:C},A);t.assign(l,A),e.mergeValidEvaluated(E,l),b?t.assign(b,(0,HBt._)`${C}`):e.setParams({ifClause:C})}}}};function L7i(e,t){let r=e.schema[t];return r!==void 0&&!(0,V7i.alwaysValidSchema)(e,r)}ZWr.default=QHc});var W7i=H(LWr=>{"use strict";Object.defineProperty(LWr,"__esModule",{value:!0});var XHc=B_(),JHc={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,XHc.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};LWr.default=JHc});var O7i=H(VWr=>{"use strict";Object.defineProperty(VWr,"__esModule",{value:!0});var UHc=_Wr(),KHc=h7i(),jHc=yWr(),zHc=C7i(),qHc=_7i(),$Hc=E7i(),eYc=v7i(),tYc=TWr(),rYc=T7i(),nYc=k7i(),iYc=x7i(),sYc=G7i(),oYc=F7i(),aYc=Z7i(),cYc=P7i(),lYc=W7i();function uYc(e=!1){let t=[iYc.default,sYc.default,oYc.default,aYc.default,cYc.default,lYc.default,eYc.default,tYc.default,$Hc.default,rYc.default,nYc.default];return e?t.push(KHc.default,zHc.default):t.push(UHc.default,jHc.default),t.push(qHc.default),t}VWr.default=uYc});var M7i=H(PWr=>{"use strict";Object.defineProperty(PWr,"__esModule",{value:!0});var ow=Hh(),gYc={message:({schemaCode:e})=>(0,ow.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,ow._)`{format: ${e}}`},AYc={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:gYc,code(e,t){let{gen:r,data:n,$data:a,schema:o,schemaCode:l,it:A}=e,{opts:f,errSchemaPath:I,schemaEnv:C,self:b}=A;if(!f.validateFormats)return;a?E():N();function E(){let B=r.scopeValue("formats",{ref:b.formats,code:f.code.formats}),F=r.const("fDef",(0,ow._)`${B}[${l}]`),Q=r.let("fType"),X=r.let("format");r.if((0,ow._)`typeof ${F} == "object" && !(${F} instanceof RegExp)`,()=>r.assign(Q,(0,ow._)`${F}.type || "string"`).assign(X,(0,ow._)`${F}.validate`),()=>r.assign(Q,(0,ow._)`"string"`).assign(X,F)),e.fail$data((0,ow.or)(ae(),ne()));function ae(){return f.strictSchema===!1?ow.nil:(0,ow._)`${l} && !${X}`}function ne(){let ce=C.$async?(0,ow._)`(${F}.async ? await ${X}(${n}) : ${X}(${n}))`:(0,ow._)`${X}(${n})`,fe=(0,ow._)`(typeof ${X} == "function" ? ${ce} : ${X}.test(${n}))`;return(0,ow._)`${X} && ${X} !== true && ${Q} === ${t} && !${fe}`}}function N(){let B=b.formats[o];if(!B){ae();return}if(B===!0)return;let[F,Q,X]=ne(B);F===t&&e.pass(ce());function ae(){if(f.strictSchema===!1){b.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${I}"`}}function ne(fe){let ue=fe instanceof RegExp?(0,ow.regexpCode)(fe):f.code.formats?(0,ow._)`${f.code.formats}${(0,ow.getProperty)(o)}`:void 0,de=r.scopeValue("formats",{key:o,ref:fe,code:ue});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,ow._)`${de}.validate`]:["string",fe,de]}function ce(){if(typeof B=="object"&&!(B instanceof RegExp)&&B.async){if(!C.$async)throw new Error("async format in sync schema");return(0,ow._)`await ${X}(${n})`}return typeof Q=="function"?(0,ow._)`${X}(${n})`:(0,ow._)`${X}.test(${n})`}}}};PWr.default=AYc});var H7i=H(WWr=>{"use strict";Object.defineProperty(WWr,"__esModule",{value:!0});var dYc=M7i(),pYc=[dYc.default];WWr.default=pYc});var Y7i=H(uke=>{"use strict";Object.defineProperty(uke,"__esModule",{value:!0});uke.contentVocabulary=uke.metadataVocabulary=void 0;uke.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];uke.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var X7i=H(OWr=>{"use strict";Object.defineProperty(OWr,"__esModule",{value:!0});var fYc=$6i(),IYc=d7i(),hYc=O7i(),mYc=H7i(),Q7i=Y7i(),CYc=[fYc.default,IYc.default,(0,hYc.default)(),mYc.default,Q7i.metadataVocabulary,Q7i.contentVocabulary];OWr.default=CYc});var U7i=H(YBt=>{"use strict";Object.defineProperty(YBt,"__esModule",{value:!0});YBt.DiscrError=void 0;var J7i;(function(e){e.Tag="tag",e.Mapping="mapping"})(J7i||(YBt.DiscrError=J7i={}))});var j7i=H(HWr=>{"use strict";Object.defineProperty(HWr,"__esModule",{value:!0});var gke=Hh(),MWr=U7i(),K7i=BBt(),_Yc=h8e(),yYc=B_(),bYc={message:({params:{discrError:e,tagName:t}})=>e===MWr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,gke._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},EYc={keyword:"discriminator",type:"object",schemaType:"object",error:bYc,code(e){let{gen:t,data:r,schema:n,parentSchema:a,it:o}=e,{oneOf:l}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let A=n.propertyName;if(typeof A!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!l)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),I=t.const("tag",(0,gke._)`${r}${(0,gke.getProperty)(A)}`);t.if((0,gke._)`typeof ${I} == "string"`,()=>C(),()=>e.error(!1,{discrError:MWr.DiscrError.Tag,tag:I,tagName:A})),e.ok(f);function C(){let N=E();t.if(!1);for(let B in N)t.elseIf((0,gke._)`${I} === ${B}`),t.assign(f,b(N[B]));t.else(),e.error(!1,{discrError:MWr.DiscrError.Mapping,tag:I,tagName:A}),t.endIf()}function b(N){let B=t.name("valid"),F=e.subschema({keyword:"oneOf",schemaProp:N},B);return e.mergeEvaluated(F,gke.Name),B}function E(){var N;let B={},F=X(a),Q=!0;for(let ce=0;ce{SYc.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 QWr=H((J1,YWr)=>{"use strict";Object.defineProperty(J1,"__esModule",{value:!0});J1.MissingRefError=J1.ValidationError=J1.CodeGen=J1.Name=J1.nil=J1.stringify=J1.str=J1._=J1.KeywordCxt=J1.Ajv=void 0;var vYc=J6i(),BYc=X7i(),wYc=j7i(),q7i=z7i(),TYc=["/properties"],QBt="http://json-schema.org/draft-07/schema",Ake=class extends vYc.default{_addVocabularies(){super._addVocabularies(),BYc.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(wYc.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(q7i,TYc):q7i;this.addMetaSchema(t,QBt,!1),this.refs["http://json-schema.org/schema"]=QBt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(QBt)?QBt:void 0)}};J1.Ajv=Ake;YWr.exports=J1=Ake;YWr.exports.Ajv=Ake;Object.defineProperty(J1,"__esModule",{value:!0});J1.default=Ake;var RYc=I8e();Object.defineProperty(J1,"KeywordCxt",{enumerable:!0,get:function(){return RYc.KeywordCxt}});var dke=Hh();Object.defineProperty(J1,"_",{enumerable:!0,get:function(){return dke._}});Object.defineProperty(J1,"str",{enumerable:!0,get:function(){return dke.str}});Object.defineProperty(J1,"stringify",{enumerable:!0,get:function(){return dke.stringify}});Object.defineProperty(J1,"nil",{enumerable:!0,get:function(){return dke.nil}});Object.defineProperty(J1,"Name",{enumerable:!0,get:function(){return dke.Name}});Object.defineProperty(J1,"CodeGen",{enumerable:!0,get:function(){return dke.CodeGen}});var NYc=SBt();Object.defineProperty(J1,"ValidationError",{enumerable:!0,get:function(){return NYc.default}});var DYc=h8e();Object.defineProperty(J1,"MissingRefError",{enumerable:!0,get:function(){return DYc.default}})});var ozi=H(Hj=>{"use strict";Object.defineProperty(Hj,"__esModule",{value:!0});Hj.formatNames=Hj.fastFormats=Hj.fullFormats=void 0;function Mj(e,t){return{validate:e,compare:t}}Hj.fullFormats={date:Mj(rzi,KWr),time:Mj(JWr(!0),jWr),"date-time":Mj($7i(!0),izi),"iso-time":Mj(JWr(),nzi),"iso-date-time":Mj($7i(),szi),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:LYc,"uri-reference":/^(?:[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,"uri-template":/^(?:(?:[^\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,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,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:/^(?=.{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,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([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}))|:)))$/i,regex:YYc,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:VYc,int32:{type:"number",validate:OYc},int64:{type:"number",validate:MYc},float:{type:"number",validate:tzi},double:{type:"number",validate:tzi},password:!0,binary:!0};Hj.fastFormats={...Hj.fullFormats,date:Mj(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,KWr),time:Mj(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,jWr),"date-time":Mj(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,izi),"iso-time":Mj(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,nzi),"iso-date-time":Mj(/^\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,szi),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,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};Hj.formatNames=Object.keys(Hj.fullFormats);function kYc(e){return e%4===0&&(e%100!==0||e%400===0)}var xYc=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,GYc=[0,31,28,31,30,31,30,31,31,30,31,30,31];function rzi(e){let t=xYc.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],a=+t[3];return n>=1&&n<=12&&a>=1&&a<=(n===2&&kYc(r)?29:GYc[n])}function KWr(e,t){if(e&&t)return e>t?1:e23||C>59||e&&!A)return!1;if(a<=23&&o<=59&&l<60)return!0;let b=o-C*f,E=a-I*f-(b<0?1:0);return(E===23||E===-1)&&(b===59||b===-1)&&l<61}}function jWr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function nzi(e,t){if(!(e&&t))return;let r=XWr.exec(e),n=XWr.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=PYc}function MYc(e){return Number.isInteger(e)}function tzi(){return!0}var HYc=/[^\\]\\Z/;function YYc(e){if(HYc.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var azi=H(pke=>{"use strict";Object.defineProperty(pke,"__esModule",{value:!0});pke.formatLimitDefinition=void 0;var QYc=QWr(),N4=Hh(),dle=N4.operators,XBt={formatMaximum:{okStr:"<=",ok:dle.LTE,fail:dle.GT},formatMinimum:{okStr:">=",ok:dle.GTE,fail:dle.LT},formatExclusiveMaximum:{okStr:"<",ok:dle.LT,fail:dle.GTE},formatExclusiveMinimum:{okStr:">",ok:dle.GT,fail:dle.LTE}},XYc={message:({keyword:e,schemaCode:t})=>(0,N4.str)`should be ${XBt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,N4._)`{comparison: ${XBt[e].okStr}, limit: ${t}}`};pke.formatLimitDefinition={keyword:Object.keys(XBt),type:"string",schemaType:"string",$data:!0,error:XYc,code(e){let{gen:t,data:r,schemaCode:n,keyword:a,it:o}=e,{opts:l,self:A}=o;if(!l.validateFormats)return;let f=new QYc.KeywordCxt(o,A.RULES.all.format.definition,"format");f.$data?I():C();function I(){let E=t.scopeValue("formats",{ref:A.formats,code:l.code.formats}),N=t.const("fmt",(0,N4._)`${E}[${f.schemaCode}]`);e.fail$data((0,N4.or)((0,N4._)`typeof ${N} != "object"`,(0,N4._)`${N} instanceof RegExp`,(0,N4._)`typeof ${N}.compare != "function"`,b(N)))}function C(){let E=f.schema,N=A.formats[E];if(!N||N===!0)return;if(typeof N!="object"||N instanceof RegExp||typeof N.compare!="function")throw new Error(`"${a}": format "${E}" does not define "compare" function`);let B=t.scopeValue("formats",{key:E,ref:N,code:l.code.formats?(0,N4._)`${l.code.formats}${(0,N4.getProperty)(E)}`:void 0});e.fail$data(b(B))}function b(E){return(0,N4._)`${E}.compare(${r}, ${n}) ${XBt[a].fail} 0`}},dependencies:["format"]};var JYc=e=>(e.addKeyword(pke.formatLimitDefinition),e);pke.default=JYc});var gzi=H((D8e,uzi)=>{"use strict";Object.defineProperty(D8e,"__esModule",{value:!0});var fke=ozi(),UYc=azi(),zWr=Hh(),czi=new zWr.Name("fullFormats"),KYc=new zWr.Name("fastFormats"),qWr=(e,t={keywords:!0})=>{if(Array.isArray(t))return lzi(e,t,fke.fullFormats,czi),e;let[r,n]=t.mode==="fast"?[fke.fastFormats,KYc]:[fke.fullFormats,czi],a=t.formats||fke.formatNames;return lzi(e,a,r,n),t.keywords&&(0,UYc.default)(e),e};qWr.get=(e,t="full")=>{let n=(t==="fast"?fke.fastFormats:fke.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function lzi(e,t,r,n){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,zWr._)`require("ajv-formats/dist/formats").${n}`);for(let l of t)e.addFormat(l,r[l])}uzi.exports=D8e=qWr;Object.defineProperty(D8e,"__esModule",{value:!0});D8e.default=qWr});var Sy=H(JBt=>{"use strict";Object.defineProperty(JBt,"__esModule",{value:!0});JBt.isFunction=void 0;function jYc(e){return typeof e=="function"}JBt.isFunction=jYc});var ple=H(UBt=>{"use strict";Object.defineProperty(UBt,"__esModule",{value:!0});UBt.createErrorClass=void 0;function zYc(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}UBt.createErrorClass=zYc});var $Wr=H(KBt=>{"use strict";Object.defineProperty(KBt,"__esModule",{value:!0});KBt.UnsubscriptionError=void 0;var qYc=ple();KBt.UnsubscriptionError=qYc.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: -`+r.map(function(n,a){return a+1+") "+n.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=r}})});var ste=H(jBt=>{"use strict";Object.defineProperty(jBt,"__esModule",{value:!0});jBt.arrRemove=void 0;function $Yc(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}jBt.arrRemove=$Yc});var TO=H(GV=>{"use strict";var Azi=GV&&GV.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},dzi=GV&&GV.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},pzi=GV&&GV.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(zBt,"__esModule",{value:!0});zBt.config=void 0;zBt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var rOr=H(Yj=>{"use strict";var hzi=Yj&&Yj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},mzi=Yj&&Yj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(qBt,"__esModule",{value:!0});qBt.reportUnhandledError=void 0;var tQc=Ike(),rQc=rOr();function nQc(e){rQc.timeoutProvider.setTimeout(function(){var t=tQc.config.onUnhandledError;if(t)t(e);else throw e})}qBt.reportUnhandledError=nQc});var rx=H($Bt=>{"use strict";Object.defineProperty($Bt,"__esModule",{value:!0});$Bt.noop=void 0;function iQc(){}$Bt.noop=iQc});var Czi=H(Qj=>{"use strict";Object.defineProperty(Qj,"__esModule",{value:!0});Qj.createNotification=Qj.nextNotification=Qj.errorNotification=Qj.COMPLETE_NOTIFICATION=void 0;Qj.COMPLETE_NOTIFICATION=function(){return ewt("C",void 0,void 0)}();function sQc(e){return ewt("E",void 0,e)}Qj.errorNotification=sQc;function oQc(e){return ewt("N",e,void 0)}Qj.nextNotification=oQc;function ewt(e,t,r){return{kind:e,value:t,error:r}}Qj.createNotification=ewt});var twt=H(hke=>{"use strict";Object.defineProperty(hke,"__esModule",{value:!0});hke.captureError=hke.errorContext=void 0;var _zi=Ike(),u_e=null;function aQc(e){if(_zi.config.useDeprecatedSynchronousErrorHandling){var t=!u_e;if(t&&(u_e={errorThrown:!1,error:null}),e(),t){var r=u_e,n=r.errorThrown,a=r.error;if(u_e=null,n)throw a}}else e()}hke.errorContext=aQc;function cQc(e){_zi.config.useDeprecatedSynchronousErrorHandling&&u_e&&(u_e.errorThrown=!0,u_e.error=e)}hke.captureError=cQc});var mke=H(D4=>{"use strict";var Ezi=D4&&D4.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(D4,"__esModule",{value:!0});D4.EMPTY_OBSERVER=D4.SafeSubscriber=D4.Subscriber=void 0;var lQc=Sy(),yzi=TO(),aOr=Ike(),uQc=nOr(),bzi=rx(),iOr=Czi(),gQc=rOr(),AQc=twt(),Szi=function(e){Ezi(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,yzi.isSubscription(r)&&r.add(n)):n.destination=D4.EMPTY_OBSERVER,n}return t.create=function(r,n,a){return new vzi(r,n,a)},t.prototype.next=function(r){this.isStopped?oOr(iOr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?oOr(iOr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?oOr(iOr.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(yzi.Subscription);D4.Subscriber=Szi;var dQc=Function.prototype.bind;function sOr(e,t){return dQc.call(e,t)}var pQc=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){rwt(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){rwt(n)}else rwt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){rwt(r)}},e}(),vzi=function(e){Ezi(t,e);function t(r,n,a){var o=e.call(this)||this,l;if(lQc.isFunction(r)||!r)l={next:r??void 0,error:n??void 0,complete:a??void 0};else{var A;o&&aOr.config.useDeprecatedNextContext?(A=Object.create(r),A.unsubscribe=function(){return o.unsubscribe()},l={next:r.next&&sOr(r.next,A),error:r.error&&sOr(r.error,A),complete:r.complete&&sOr(r.complete,A)}):l=r}return o.destination=new pQc(l),o}return t}(Szi);D4.SafeSubscriber=vzi;function rwt(e){aOr.config.useDeprecatedSynchronousErrorHandling?AQc.captureError(e):uQc.reportUnhandledError(e)}function fQc(e){throw e}function oOr(e,t){var r=aOr.config.onStoppedNotification;r&&gQc.timeoutProvider.setTimeout(function(){return r(e,t)})}D4.EMPTY_OBSERVER={closed:!0,next:bzi.noop,error:fQc,complete:bzi.noop}});var x8e=H(nwt=>{"use strict";Object.defineProperty(nwt,"__esModule",{value:!0});nwt.observable=void 0;nwt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var nx=H(iwt=>{"use strict";Object.defineProperty(iwt,"__esModule",{value:!0});iwt.identity=void 0;function IQc(e){return e}iwt.identity=IQc});var G8e=H(Cke=>{"use strict";Object.defineProperty(Cke,"__esModule",{value:!0});Cke.pipeFromArray=Cke.pipe=void 0;var hQc=nx();function mQc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(swt,"__esModule",{value:!0});swt.Observable=void 0;var lOr=mke(),CQc=TO(),_Qc=x8e(),yQc=G8e(),bQc=Ike(),cOr=Sy(),EQc=twt(),SQc=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,n){var a=this,o=BQc(t)?t:new lOr.SafeSubscriber(t,r,n);return EQc.errorContext(function(){var l=a,A=l.operator,f=l.source;o.add(A?A.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var n=this;return r=wzi(r),new r(function(a,o){var l=new lOr.SafeSubscriber({next:function(A){try{t(A)}catch(f){o(f),l.unsubscribe()}},error:o,complete:a});n.subscribe(l)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[_Qc.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(_ke,"__esModule",{value:!0});_ke.operate=_ke.hasLift=void 0;var wQc=Sy();function Tzi(e){return wQc.isFunction(e?.lift)}_ke.hasLift=Tzi;function TQc(e){return function(t){if(Tzi(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}_ke.operate=TQc});var Cd=H(fle=>{"use strict";var RQc=fle&&fle.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(fle,"__esModule",{value:!0});fle.OperatorSubscriber=fle.createOperatorSubscriber=void 0;var NQc=mke();function DQc(e,t,r,n,a){return new Rzi(e,t,r,n,a)}fle.createOperatorSubscriber=DQc;var Rzi=function(e){RQc(t,e);function t(r,n,a,o,l,A){var f=e.call(this,r)||this;return f.onFinalize=l,f.shouldUnsubscribe=A,f._next=n?function(I){try{n(I)}catch(C){r.error(C)}}:e.prototype._next,f._error=o?function(I){try{o(I)}catch(C){r.error(C)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(I){r.error(I)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(NQc.Subscriber);fle.OperatorSubscriber=Rzi});var awt=H(owt=>{"use strict";Object.defineProperty(owt,"__esModule",{value:!0});owt.refCount=void 0;var kQc=qg(),xQc=Cd();function GQc(){return kQc.operate(function(e,t){var r=null;e._refCount++;var n=xQc.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}owt.refCount=GQc});var F8e=H(yke=>{"use strict";var FQc=yke&&yke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(yke,"__esModule",{value:!0});yke.ConnectableObservable=void 0;var ZQc=ub(),Nzi=TO(),LQc=awt(),VQc=Cd(),PQc=qg(),WQc=function(e){FQc(t,e);function t(r,n){var a=e.call(this)||this;return a.source=r,a.subjectFactory=n,a._subject=null,a._refCount=0,a._connection=null,PQc.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,n=this._connection;if(!n){n=this._connection=new Nzi.Subscription;var a=this.getSubject();n.add(this.source.subscribe(VQc.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),n.closed&&(this._connection=null,n=Nzi.Subscription.EMPTY)}return n},t.prototype.refCount=function(){return LQc.refCount()(this)},t}(ZQc.Observable);yke.ConnectableObservable=WQc});var Dzi=H(Z8e=>{"use strict";Object.defineProperty(Z8e,"__esModule",{value:!0});Z8e.performanceTimestampProvider=void 0;Z8e.performanceTimestampProvider={now:function(){return(Z8e.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var uOr=H(k4=>{"use strict";var kzi=k4&&k4.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},xzi=k4&&k4.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.animationFrames=void 0;var MQc=ub(),HQc=Dzi(),Gzi=uOr();function YQc(e){return e?Fzi(e):QQc}cwt.animationFrames=YQc;function Fzi(e){return new MQc.Observable(function(t){var r=e||HQc.performanceTimestampProvider,n=r.now(),a=0,o=function(){t.closed||(a=Gzi.animationFrameProvider.requestAnimationFrame(function(l){a=0;var A=r.now();t.next({timestamp:e?A:l,elapsed:A-n}),o()}))};return o(),function(){a&&Gzi.animationFrameProvider.cancelAnimationFrame(a)}})}var QQc=Fzi()});var gOr=H(lwt=>{"use strict";Object.defineProperty(lwt,"__esModule",{value:!0});lwt.ObjectUnsubscribedError=void 0;var XQc=ple();lwt.ObjectUnsubscribedError=XQc.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var ix=H(Xj=>{"use strict";var Vzi=Xj&&Xj.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),JQc=Xj&&Xj.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Xj,"__esModule",{value:!0});Xj.AnonymousSubject=Xj.Subject=void 0;var Lzi=ub(),dOr=TO(),UQc=gOr(),KQc=ste(),AOr=twt(),Pzi=function(e){Vzi(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var n=new pOr(this,this);return n.operator=r,n},t.prototype._throwIfClosed=function(){if(this.closed)throw new UQc.ObjectUnsubscribedError},t.prototype.next=function(r){var n=this;AOr.errorContext(function(){var a,o;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var l=JQc(n.currentObservers),A=l.next();!A.done;A=l.next()){var f=A.value;f.next(r)}}catch(I){a={error:I}}finally{try{A&&!A.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var n=this;AOr.errorContext(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=r;for(var a=n.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;AOr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var n=r.observers;n.length;)n.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,a=this,o=a.hasError,l=a.isStopped,A=a.observers;return o||l?dOr.EMPTY_SUBSCRIPTION:(this.currentObservers=null,A.push(r),new dOr.Subscription(function(){n.currentObservers=null,KQc.arrRemove(A,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n.thrownError,l=n.isStopped;a?r.error(o):l&&r.complete()},t.prototype.asObservable=function(){var r=new Lzi.Observable;return r.source=this,r},t.create=function(r,n){return new pOr(r,n)},t}(Lzi.Observable);Xj.Subject=Pzi;var pOr=function(e){Vzi(t,e);function t(r,n){var a=e.call(this)||this;return a.destination=r,a.source=n,a}return t.prototype.next=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.next)===null||a===void 0||a.call(n,r)},t.prototype.error=function(r){var n,a;(a=(n=this.destination)===null||n===void 0?void 0:n.error)===null||a===void 0||a.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,a;return(a=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&a!==void 0?a:dOr.EMPTY_SUBSCRIPTION},t}(Pzi);Xj.AnonymousSubject=pOr});var fOr=H(bke=>{"use strict";var jQc=bke&&bke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(bke,"__esModule",{value:!0});bke.BehaviorSubject=void 0;var zQc=ix(),qQc=function(e){jQc(t,e);function t(r){var n=e.call(this)||this;return n._value=r,n}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var n=e.prototype._subscribe.call(this,r);return!n.closed&&r.next(this._value),n},t.prototype.getValue=function(){var r=this,n=r.hasError,a=r.thrownError,o=r._value;if(n)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(zQc.Subject);bke.BehaviorSubject=qQc});var uwt=H(L8e=>{"use strict";Object.defineProperty(L8e,"__esModule",{value:!0});L8e.dateTimestampProvider=void 0;L8e.dateTimestampProvider={now:function(){return(L8e.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var gwt=H(Eke=>{"use strict";var $Qc=Eke&&Eke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Eke,"__esModule",{value:!0});Eke.ReplaySubject=void 0;var eXc=ix(),tXc=uwt(),rXc=function(e){$Qc(t,e);function t(r,n,a){r===void 0&&(r=1/0),n===void 0&&(n=1/0),a===void 0&&(a=tXc.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=n,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=n===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,n),o}return t.prototype.next=function(r){var n=this,a=n.isStopped,o=n._buffer,l=n._infiniteTimeWindow,A=n._timestampProvider,f=n._windowTime;a||(o.push(r),!l&&o.push(A.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,l=a._buffer,A=l.slice(),f=0;f{"use strict";var nXc=Ske&&Ske.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Ske,"__esModule",{value:!0});Ske.AsyncSubject=void 0;var iXc=ix(),sXc=function(e){nXc(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var n=this,a=n.hasError,o=n._hasValue,l=n._value,A=n.thrownError,f=n.isStopped,I=n._isComplete;a?r.error(A):(f||I)&&(o&&r.next(l),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,n=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,n&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(iXc.Subject);Ske.AsyncSubject=sXc});var Wzi=H(vke=>{"use strict";var oXc=vke&&vke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(vke,"__esModule",{value:!0});vke.Action=void 0;var aXc=TO(),cXc=function(e){oXc(t,e);function t(r,n){return e.call(this)||this}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),this},t}(aXc.Subscription);vke.Action=cXc});var Hzi=H(Jj=>{"use strict";var Ozi=Jj&&Jj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Mzi=Jj&&Jj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var lXc=Bke&&Bke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Bke,"__esModule",{value:!0});Bke.AsyncAction=void 0;var uXc=Wzi(),Yzi=Hzi(),gXc=ste(),AXc=function(e){lXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a.pending=!1,a}return t.prototype.schedule=function(r,n){var a;if(n===void 0&&(n=0),this.closed)return this;this.state=r;var o=this.id,l=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(l,o,n)),this.pending=!0,this.delay=n,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(l,this.id,n),this},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),Yzi.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,n,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return n;n!=null&&Yzi.intervalProvider.clearInterval(n)},t.prototype.execute=function(r,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,n);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,n){var a=!1,o;try{this.work(r)}catch(l){a=!0,o=l||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,n=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,gXc.arrRemove(o,this),n!=null&&(this.id=this.recycleAsyncId(a,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(uXc.Action);Bke.AsyncAction=AXc});var Xzi=H(Tke=>{"use strict";Object.defineProperty(Tke,"__esModule",{value:!0});Tke.TestTools=Tke.Immediate=void 0;var dXc=1,IOr,dwt={};function Qzi(e){return e in dwt?(delete dwt[e],!0):!1}Tke.Immediate={setImmediate:function(e){var t=dXc++;return dwt[t]=!0,IOr||(IOr=Promise.resolve()),IOr.then(function(){return Qzi(t)&&e()}),t},clearImmediate:function(e){Qzi(e)}};Tke.TestTools={pending:function(){return Object.keys(dwt).length}}});var Uzi=H(Uj=>{"use strict";var pXc=Uj&&Uj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},fXc=Uj&&Uj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var mXc=Rke&&Rke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Rke,"__esModule",{value:!0});Rke.AsapAction=void 0;var CXc=wke(),Kzi=Uzi(),_Xc=function(e){mXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=Kzi.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(Kzi.immediateProvider.clearImmediate(n),r._scheduled===n&&(r._scheduled=void 0))},t}(CXc.AsyncAction);Rke.AsapAction=_Xc});var hOr=H(pwt=>{"use strict";Object.defineProperty(pwt,"__esModule",{value:!0});pwt.Scheduler=void 0;var yXc=uwt(),bXc=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,n){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(n,r)},e.now=yXc.dateTimestampProvider.now,e}();pwt.Scheduler=bXc});var Dke=H(Nke=>{"use strict";var EXc=Nke&&Nke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Nke,"__esModule",{value:!0});Nke.AsyncScheduler=void 0;var zzi=hOr(),SXc=function(e){EXc(t,e);function t(r,n){n===void 0&&(n=zzi.Scheduler.now);var a=e.call(this,r,n)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var n=this.actions;if(this._active){n.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=n.shift());if(this._active=!1,a){for(;r=n.shift();)r.unsubscribe();throw a}},t}(zzi.Scheduler);Nke.AsyncScheduler=SXc});var qzi=H(kke=>{"use strict";var vXc=kke&&kke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(kke,"__esModule",{value:!0});kke.AsapScheduler=void 0;var BXc=Dke(),wXc=function(e){vXc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(BXc.AsyncScheduler);kke.AsapScheduler=wXc});var $zi=H(g_e=>{"use strict";Object.defineProperty(g_e,"__esModule",{value:!0});g_e.asap=g_e.asapScheduler=void 0;var TXc=jzi(),RXc=qzi();g_e.asapScheduler=new RXc.AsapScheduler(TXc.AsapAction);g_e.asap=g_e.asapScheduler});var FV=H(A_e=>{"use strict";Object.defineProperty(A_e,"__esModule",{value:!0});A_e.async=A_e.asyncScheduler=void 0;var NXc=wke(),DXc=Dke();A_e.asyncScheduler=new DXc.AsyncScheduler(NXc.AsyncAction);A_e.async=A_e.asyncScheduler});var eqi=H(xke=>{"use strict";var kXc=xke&&xke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(xke,"__esModule",{value:!0});xke.QueueAction=void 0;var xXc=wke(),GXc=function(e){kXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.schedule=function(r,n){return n===void 0&&(n=0),n>0?e.prototype.schedule.call(this,r,n):(this.delay=n,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,n){return n>0||this.closed?e.prototype.execute.call(this,r,n):this._execute(r,n)},t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.flush(this),0)},t}(xXc.AsyncAction);xke.QueueAction=GXc});var tqi=H(Gke=>{"use strict";var FXc=Gke&&Gke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Gke,"__esModule",{value:!0});Gke.QueueScheduler=void 0;var ZXc=Dke(),LXc=function(e){FXc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(ZXc.AsyncScheduler);Gke.QueueScheduler=LXc});var rqi=H(d_e=>{"use strict";Object.defineProperty(d_e,"__esModule",{value:!0});d_e.queue=d_e.queueScheduler=void 0;var VXc=eqi(),PXc=tqi();d_e.queueScheduler=new PXc.QueueScheduler(VXc.QueueAction);d_e.queue=d_e.queueScheduler});var iqi=H(Fke=>{"use strict";var WXc=Fke&&Fke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Fke,"__esModule",{value:!0});Fke.AnimationFrameAction=void 0;var OXc=wke(),nqi=uOr(),MXc=function(e){WXc(t,e);function t(r,n){var a=e.call(this,r,n)||this;return a.scheduler=r,a.work=n,a}return t.prototype.requestAsyncId=function(r,n,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,n,a):(r.actions.push(this),r._scheduled||(r._scheduled=nqi.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,a);var l=r.actions;n!=null&&((o=l[l.length-1])===null||o===void 0?void 0:o.id)!==n&&(nqi.animationFrameProvider.cancelAnimationFrame(n),r._scheduled=void 0)},t}(OXc.AsyncAction);Fke.AnimationFrameAction=MXc});var sqi=H(Zke=>{"use strict";var HXc=Zke&&Zke.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Zke,"__esModule",{value:!0});Zke.AnimationFrameScheduler=void 0;var YXc=Dke(),QXc=function(e){HXc(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===n&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===n&&a.shift();)r.unsubscribe();throw o}},t}(YXc.AsyncScheduler);Zke.AnimationFrameScheduler=QXc});var oqi=H(p_e=>{"use strict";Object.defineProperty(p_e,"__esModule",{value:!0});p_e.animationFrame=p_e.animationFrameScheduler=void 0;var XXc=iqi(),JXc=sqi();p_e.animationFrameScheduler=new JXc.AnimationFrameScheduler(XXc.AnimationFrameAction);p_e.animationFrame=p_e.animationFrameScheduler});var lqi=H(Ile=>{"use strict";var aqi=Ile&&Ile.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(Ile,"__esModule",{value:!0});Ile.VirtualAction=Ile.VirtualTimeScheduler=void 0;var UXc=wke(),KXc=TO(),jXc=Dke(),zXc=function(e){aqi(t,e);function t(r,n){r===void 0&&(r=cqi),n===void 0&&(n=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=n,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,n=r.actions,a=r.maxFrames,o,l;(l=n[0])&&l.delay<=a&&(n.shift(),this.frame=l.delay,!(o=l.execute(l.state,l.delay))););if(o){for(;l=n.shift();)l.unsubscribe();throw o}},t.frameTimeFactor=10,t}(jXc.AsyncScheduler);Ile.VirtualTimeScheduler=zXc;var cqi=function(e){aqi(t,e);function t(r,n,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,n)||this;return o.scheduler=r,o.work=n,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,n){if(n===void 0&&(n=0),Number.isFinite(n)){if(!this.id)return e.prototype.schedule.call(this,r,n);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,n)}else return KXc.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,n,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,n,a){a===void 0&&(a=0)},t.prototype._execute=function(r,n){if(this.active===!0)return e.prototype._execute.call(this,r,n)},t.sortActions=function(r,n){return r.delay===n.delay?r.index===n.index?0:r.index>n.index?1:-1:r.delay>n.delay?1:-1},t}(UXc.AsyncAction);Ile.VirtualAction=cqi});var x4=H(f_e=>{"use strict";Object.defineProperty(f_e,"__esModule",{value:!0});f_e.empty=f_e.EMPTY=void 0;var uqi=ub();f_e.EMPTY=new uqi.Observable(function(e){return e.complete()});function qXc(e){return e?$Xc(e):f_e.EMPTY}f_e.empty=qXc;function $Xc(e){return new uqi.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var V8e=H(fwt=>{"use strict";Object.defineProperty(fwt,"__esModule",{value:!0});fwt.isScheduler=void 0;var e4c=Sy();function t4c(e){return e&&e4c.isFunction(e.schedule)}fwt.isScheduler=t4c});var ZV=H(hle=>{"use strict";Object.defineProperty(hle,"__esModule",{value:!0});hle.popNumber=hle.popScheduler=hle.popResultSelector=void 0;var r4c=Sy(),n4c=V8e();function mOr(e){return e[e.length-1]}function i4c(e){return r4c.isFunction(mOr(e))?e.pop():void 0}hle.popResultSelector=i4c;function s4c(e){return n4c.isScheduler(mOr(e))?e.pop():void 0}hle.popScheduler=s4c;function o4c(e,t){return typeof mOr(e)=="number"?e.pop():t}hle.popNumber=o4c});var hwt=H(Iwt=>{"use strict";Object.defineProperty(Iwt,"__esModule",{value:!0});Iwt.isArrayLike=void 0;Iwt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var COr=H(mwt=>{"use strict";Object.defineProperty(mwt,"__esModule",{value:!0});mwt.isPromise=void 0;var a4c=Sy();function c4c(e){return a4c.isFunction(e?.then)}mwt.isPromise=c4c});var _Or=H(Cwt=>{"use strict";Object.defineProperty(Cwt,"__esModule",{value:!0});Cwt.isInteropObservable=void 0;var l4c=x8e(),u4c=Sy();function g4c(e){return u4c.isFunction(e[l4c.observable])}Cwt.isInteropObservable=g4c});var yOr=H(_wt=>{"use strict";Object.defineProperty(_wt,"__esModule",{value:!0});_wt.isAsyncIterable=void 0;var A4c=Sy();function d4c(e){return Symbol.asyncIterator&&A4c.isFunction(e?.[Symbol.asyncIterator])}_wt.isAsyncIterable=d4c});var bOr=H(ywt=>{"use strict";Object.defineProperty(ywt,"__esModule",{value:!0});ywt.createInvalidObservableTypeError=void 0;function p4c(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}ywt.createInvalidObservableTypeError=p4c});var EOr=H(Lke=>{"use strict";Object.defineProperty(Lke,"__esModule",{value:!0});Lke.iterator=Lke.getSymbolIterator=void 0;function gqi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}Lke.getSymbolIterator=gqi;Lke.iterator=gqi()});var SOr=H(bwt=>{"use strict";Object.defineProperty(bwt,"__esModule",{value:!0});bwt.isIterable=void 0;var f4c=EOr(),I4c=Sy();function h4c(e){return I4c.isFunction(e?.[f4c.iterator])}bwt.isIterable=h4c});var Ewt=H(CH=>{"use strict";var m4c=CH&&CH.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]1||A(E,N)})})}function A(E,N){try{f(n[E](N))}catch(B){b(o[0][3],B)}}function f(E){E.value instanceof Vke?Promise.resolve(E.value.v).then(I,C):b(o[0][2],E)}function I(E){A("next",E)}function C(E){A("throw",E)}function b(E,N){E(N),o.shift(),o.length&&A(o[0][0],o[0][1])}};Object.defineProperty(CH,"__esModule",{value:!0});CH.isReadableStreamLike=CH.readableStreamLikeToAsyncGenerator=void 0;var _4c=Sy();function y4c(e){return C4c(this,arguments,function(){var r,n,a,o;return m4c(this,function(l){switch(l.label){case 0:r=e.getReader(),l.label=1;case 1:l.trys.push([1,,9,10]),l.label=2;case 2:return[4,Vke(r.read())];case 3:return n=l.sent(),a=n.value,o=n.done,o?[4,Vke(void 0)]:[3,5];case 4:return[2,l.sent()];case 5:return[4,Vke(a)];case 6:return[4,l.sent()];case 7:return l.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}CH.readableStreamLikeToAsyncGenerator=y4c;function b4c(e){return _4c.isFunction(e?.getReader)}CH.isReadableStreamLike=b4c});var uh=H(G2=>{"use strict";var E4c=G2&&G2.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})},S4c=G2&&G2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(G2,"__esModule",{value:!0});G2.fromReadableStreamLike=G2.fromAsyncIterable=G2.fromIterable=G2.fromPromise=G2.fromArrayLike=G2.fromInteropObservable=G2.innerFrom=void 0;var B4c=hwt(),w4c=COr(),Pke=ub(),T4c=_Or(),R4c=yOr(),N4c=bOr(),D4c=SOr(),Aqi=Ewt(),k4c=Sy(),x4c=nOr(),G4c=x8e();function F4c(e){if(e instanceof Pke.Observable)return e;if(e!=null){if(T4c.isInteropObservable(e))return dqi(e);if(B4c.isArrayLike(e))return pqi(e);if(w4c.isPromise(e))return fqi(e);if(R4c.isAsyncIterable(e))return BOr(e);if(D4c.isIterable(e))return Iqi(e);if(Aqi.isReadableStreamLike(e))return hqi(e)}throw N4c.createInvalidObservableTypeError(e)}G2.innerFrom=F4c;function dqi(e){return new Pke.Observable(function(t){var r=e[G4c.observable]();if(k4c.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}G2.fromInteropObservable=dqi;function pqi(e){return new Pke.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(Swt,"__esModule",{value:!0});Swt.executeSchedule=void 0;function L4c(e,t,r,n,a){n===void 0&&(n=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(o),!a)return o}Swt.executeSchedule=L4c});var Wke=H(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.observeOn=void 0;var wOr=ote(),V4c=qg(),P4c=Cd();function W4c(e,t){return t===void 0&&(t=0),V4c.operate(function(r,n){r.subscribe(P4c.createOperatorSubscriber(n,function(a){return wOr.executeSchedule(n,e,function(){return n.next(a)},t)},function(){return wOr.executeSchedule(n,e,function(){return n.complete()},t)},function(a){return wOr.executeSchedule(n,e,function(){return n.error(a)},t)}))})}vwt.observeOn=W4c});var Oke=H(Bwt=>{"use strict";Object.defineProperty(Bwt,"__esModule",{value:!0});Bwt.subscribeOn=void 0;var O4c=qg();function M4c(e,t){return t===void 0&&(t=0),O4c.operate(function(r,n){n.add(e.schedule(function(){return r.subscribe(n)},t))})}Bwt.subscribeOn=M4c});var mqi=H(wwt=>{"use strict";Object.defineProperty(wwt,"__esModule",{value:!0});wwt.scheduleObservable=void 0;var H4c=uh(),Y4c=Wke(),Q4c=Oke();function X4c(e,t){return H4c.innerFrom(e).pipe(Q4c.subscribeOn(t),Y4c.observeOn(t))}wwt.scheduleObservable=X4c});var Cqi=H(Twt=>{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.schedulePromise=void 0;var J4c=uh(),U4c=Wke(),K4c=Oke();function j4c(e,t){return J4c.innerFrom(e).pipe(K4c.subscribeOn(t),U4c.observeOn(t))}Twt.schedulePromise=j4c});var _qi=H(Rwt=>{"use strict";Object.defineProperty(Rwt,"__esModule",{value:!0});Rwt.scheduleArray=void 0;var z4c=ub();function q4c(e,t){return new z4c.Observable(function(r){var n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}Rwt.scheduleArray=q4c});var TOr=H(Nwt=>{"use strict";Object.defineProperty(Nwt,"__esModule",{value:!0});Nwt.scheduleIterable=void 0;var $4c=ub(),eJc=EOr(),tJc=Sy(),yqi=ote();function rJc(e,t){return new $4c.Observable(function(r){var n;return yqi.executeSchedule(r,t,function(){n=e[eJc.iterator](),yqi.executeSchedule(r,t,function(){var a,o,l;try{a=n.next(),o=a.value,l=a.done}catch(A){r.error(A);return}l?r.complete():r.next(o)},0,!0)}),function(){return tJc.isFunction(n?.return)&&n.return()}})}Nwt.scheduleIterable=rJc});var ROr=H(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.scheduleAsyncIterable=void 0;var nJc=ub(),bqi=ote();function iJc(e,t){if(!e)throw new Error("Iterable cannot be null");return new nJc.Observable(function(r){bqi.executeSchedule(r,t,function(){var n=e[Symbol.asyncIterator]();bqi.executeSchedule(r,t,function(){n.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}Dwt.scheduleAsyncIterable=iJc});var Eqi=H(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.scheduleReadableStreamLike=void 0;var sJc=ROr(),oJc=Ewt();function aJc(e,t){return sJc.scheduleAsyncIterable(oJc.readableStreamLikeToAsyncGenerator(e),t)}kwt.scheduleReadableStreamLike=aJc});var NOr=H(xwt=>{"use strict";Object.defineProperty(xwt,"__esModule",{value:!0});xwt.scheduled=void 0;var cJc=mqi(),lJc=Cqi(),uJc=_qi(),gJc=TOr(),AJc=ROr(),dJc=_Or(),pJc=COr(),fJc=hwt(),IJc=SOr(),hJc=yOr(),mJc=bOr(),CJc=Ewt(),_Jc=Eqi();function yJc(e,t){if(e!=null){if(dJc.isInteropObservable(e))return cJc.scheduleObservable(e,t);if(fJc.isArrayLike(e))return uJc.scheduleArray(e,t);if(pJc.isPromise(e))return lJc.schedulePromise(e,t);if(hJc.isAsyncIterable(e))return AJc.scheduleAsyncIterable(e,t);if(IJc.isIterable(e))return gJc.scheduleIterable(e,t);if(CJc.isReadableStreamLike(e))return _Jc.scheduleReadableStreamLike(e,t)}throw mJc.createInvalidObservableTypeError(e)}xwt.scheduled=yJc});var ate=H(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.from=void 0;var bJc=NOr(),EJc=uh();function SJc(e,t){return t?bJc.scheduled(e,t):EJc.innerFrom(e)}Gwt.from=SJc});var Zwt=H(Fwt=>{"use strict";Object.defineProperty(Fwt,"__esModule",{value:!0});Fwt.of=void 0;var vJc=ZV(),BJc=ate();function wJc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(Lwt,"__esModule",{value:!0});Lwt.throwError=void 0;var TJc=ub(),RJc=Sy();function NJc(e,t){var r=RJc.isFunction(e)?e:function(){return e},n=function(a){return a.error(r())};return new TJc.Observable(t?function(a){return t.schedule(n,0,a)}:n)}Lwt.throwError=NJc});var Vwt=H(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});cte.observeNotification=cte.Notification=cte.NotificationKind=void 0;var DJc=x4(),kJc=Zwt(),xJc=DOr(),GJc=Sy(),FJc;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(FJc=cte.NotificationKind||(cte.NotificationKind={}));var ZJc=function(){function e(t,r,n){this.kind=t,this.value=r,this.error=n,this.hasValue=t==="N"}return e.prototype.observe=function(t){return Sqi(this,t)},e.prototype.do=function(t,r,n){var a=this,o=a.kind,l=a.value,A=a.error;return o==="N"?t?.(l):o==="E"?r?.(A):n?.()},e.prototype.accept=function(t,r,n){var a;return GJc.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,n)},e.prototype.toObservable=function(){var t=this,r=t.kind,n=t.value,a=t.error,o=r==="N"?kJc.of(n):r==="E"?xJc.throwError(function(){return a}):r==="C"?DJc.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();cte.Notification=ZJc;function Sqi(e,t){var r,n,a,o=e,l=o.kind,A=o.value,f=o.error;if(typeof l!="string")throw new TypeError('Invalid notification, missing "kind"');l==="N"?(r=t.next)===null||r===void 0||r.call(t,A):l==="E"?(n=t.error)===null||n===void 0||n.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}cte.observeNotification=Sqi});var Bqi=H(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.isObservable=void 0;var LJc=ub(),vqi=Sy();function VJc(e){return!!e&&(e instanceof LJc.Observable||vqi.isFunction(e.lift)&&vqi.isFunction(e.subscribe))}Pwt.isObservable=VJc});var mle=H(Wwt=>{"use strict";Object.defineProperty(Wwt,"__esModule",{value:!0});Wwt.EmptyError=void 0;var PJc=ple();Wwt.EmptyError=PJc.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var wqi=H(Owt=>{"use strict";Object.defineProperty(Owt,"__esModule",{value:!0});Owt.lastValueFrom=void 0;var WJc=mle();function OJc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=!1,l;e.subscribe({next:function(A){l=A,o=!0},error:a,complete:function(){o?n(l):r?n(t.defaultValue):a(new WJc.EmptyError)}})})}Owt.lastValueFrom=OJc});var Tqi=H(Mwt=>{"use strict";Object.defineProperty(Mwt,"__esModule",{value:!0});Mwt.firstValueFrom=void 0;var MJc=mle(),HJc=mke();function YJc(e,t){var r=typeof t=="object";return new Promise(function(n,a){var o=new HJc.SafeSubscriber({next:function(l){n(l),o.unsubscribe()},error:a,complete:function(){r?n(t.defaultValue):a(new MJc.EmptyError)}});e.subscribe(o)})}Mwt.firstValueFrom=YJc});var kOr=H(Hwt=>{"use strict";Object.defineProperty(Hwt,"__esModule",{value:!0});Hwt.ArgumentOutOfRangeError=void 0;var QJc=ple();Hwt.ArgumentOutOfRangeError=QJc.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var xOr=H(Ywt=>{"use strict";Object.defineProperty(Ywt,"__esModule",{value:!0});Ywt.NotFoundError=void 0;var XJc=ple();Ywt.NotFoundError=XJc.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var GOr=H(Qwt=>{"use strict";Object.defineProperty(Qwt,"__esModule",{value:!0});Qwt.SequenceError=void 0;var JJc=ple();Qwt.SequenceError=JJc.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var Jwt=H(Xwt=>{"use strict";Object.defineProperty(Xwt,"__esModule",{value:!0});Xwt.isValidDate=void 0;function UJc(e){return e instanceof Date&&!isNaN(e)}Xwt.isValidDate=UJc});var P8e=H(I_e=>{"use strict";Object.defineProperty(I_e,"__esModule",{value:!0});I_e.timeout=I_e.TimeoutError=void 0;var KJc=FV(),jJc=Jwt(),zJc=qg(),qJc=uh(),$Jc=ple(),eUc=Cd(),tUc=ote();I_e.TimeoutError=$Jc.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function rUc(e,t){var r=jJc.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,n=r.first,a=r.each,o=r.with,l=o===void 0?nUc:o,A=r.scheduler,f=A===void 0?t??KJc.asyncScheduler:A,I=r.meta,C=I===void 0?null:I;if(n==null&&a==null)throw new TypeError("No timeout provided.");return zJc.operate(function(b,E){var N,B,F=null,Q=0,X=function(ae){B=tUc.executeSchedule(E,f,function(){try{N.unsubscribe(),qJc.innerFrom(l({meta:C,lastValue:F,seen:Q})).subscribe(E)}catch(ne){E.error(ne)}},ae)};N=b.subscribe(eUc.createOperatorSubscriber(E,function(ae){B?.unsubscribe(),Q++,E.next(F=ae),a>0&&X(a)},void 0,void 0,function(){B?.closed||B?.unsubscribe(),F=null})),!Q&&X(n!=null?typeof n=="number"?n:+n-f.now():a)})}I_e.timeout=rUc;function nUc(e){throw new I_e.TimeoutError(e)}});var lte=H(Uwt=>{"use strict";Object.defineProperty(Uwt,"__esModule",{value:!0});Uwt.map=void 0;var iUc=qg(),sUc=Cd();function oUc(e,t){return iUc.operate(function(r,n){var a=0;r.subscribe(sUc.createOperatorSubscriber(n,function(o){n.next(e.call(t,o,a++))}))})}Uwt.map=oUc});var _le=H(Cle=>{"use strict";var aUc=Cle&&Cle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},cUc=Cle&&Cle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var dUc=yle&&yle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Rqi=yle&&yle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(Kwt,"__esModule",{value:!0});Kwt.bindCallback=void 0;var _Uc=ZOr();function yUc(e,t,r){return _Uc.bindCallbackInternals(!1,e,t,r)}Kwt.bindCallback=yUc});var Dqi=H(jwt=>{"use strict";Object.defineProperty(jwt,"__esModule",{value:!0});jwt.bindNodeCallback=void 0;var bUc=ZOr();function EUc(e,t,r){return bUc.bindCallbackInternals(!0,e,t,r)}jwt.bindNodeCallback=EUc});var LOr=H(zwt=>{"use strict";Object.defineProperty(zwt,"__esModule",{value:!0});zwt.argsArgArrayOrObject=void 0;var SUc=Array.isArray,vUc=Object.getPrototypeOf,BUc=Object.prototype,wUc=Object.keys;function TUc(e){if(e.length===1){var t=e[0];if(SUc(t))return{args:t,keys:null};if(RUc(t)){var r=wUc(t);return{args:r.map(function(n){return t[n]}),keys:r}}}return{args:e,keys:null}}zwt.argsArgArrayOrObject=TUc;function RUc(e){return e&&typeof e=="object"&&vUc(e)===BUc}});var VOr=H(qwt=>{"use strict";Object.defineProperty(qwt,"__esModule",{value:!0});qwt.createObject=void 0;function NUc(e,t){return e.reduce(function(r,n,a){return r[n]=t[a],r},{})}qwt.createObject=NUc});var $wt=H(Mke=>{"use strict";Object.defineProperty(Mke,"__esModule",{value:!0});Mke.combineLatestInit=Mke.combineLatest=void 0;var DUc=ub(),kUc=LOr(),Gqi=ate(),Fqi=nx(),xUc=_le(),kqi=ZV(),GUc=VOr(),FUc=Cd(),ZUc=ote();function LUc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(eTt,"__esModule",{value:!0});eTt.mergeInternals=void 0;var VUc=uh(),PUc=ote(),Lqi=Cd();function WUc(e,t,r,n,a,o,l,A){var f=[],I=0,C=0,b=!1,E=function(){b&&!f.length&&!I&&t.complete()},N=function(F){return I{"use strict";Object.defineProperty(rTt,"__esModule",{value:!0});rTt.mergeMap=void 0;var OUc=lte(),MUc=uh(),HUc=qg(),YUc=tTt(),QUc=Sy();function Vqi(e,t,r){return r===void 0&&(r=1/0),QUc.isFunction(t)?Vqi(function(n,a){return OUc.map(function(o,l){return t(n,o,a,l)})(MUc.innerFrom(e(n,a)))},r):(typeof t=="number"&&(r=t),HUc.operate(function(n,a){return YUc.mergeInternals(n,a,e,r)}))}rTt.mergeMap=Vqi});var Hke=H(nTt=>{"use strict";Object.defineProperty(nTt,"__esModule",{value:!0});nTt.mergeAll=void 0;var XUc=Kj(),JUc=nx();function UUc(e){return e===void 0&&(e=1/0),XUc.mergeMap(JUc.identity,e)}nTt.mergeAll=UUc});var W8e=H(iTt=>{"use strict";Object.defineProperty(iTt,"__esModule",{value:!0});iTt.concatAll=void 0;var KUc=Hke();function jUc(){return KUc.mergeAll(1)}iTt.concatAll=jUc});var O8e=H(sTt=>{"use strict";Object.defineProperty(sTt,"__esModule",{value:!0});sTt.concat=void 0;var zUc=W8e(),qUc=ZV(),$Uc=ate();function eKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(oTt,"__esModule",{value:!0});oTt.defer=void 0;var tKc=ub(),rKc=uh();function nKc(e){return new tKc.Observable(function(t){rKc.innerFrom(e()).subscribe(t)})}oTt.defer=nKc});var Pqi=H(aTt=>{"use strict";Object.defineProperty(aTt,"__esModule",{value:!0});aTt.connectable=void 0;var iKc=ix(),sKc=ub(),oKc=M8e(),aKc={connector:function(){return new iKc.Subject},resetOnDisconnect:!0};function cKc(e,t){t===void 0&&(t=aKc);var r=null,n=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,l=n(),A=new sKc.Observable(function(f){return l.subscribe(f)});return A.connect=function(){return(!r||r.closed)&&(r=oKc.defer(function(){return e}).subscribe(l),o&&r.add(function(){return l=n()})),r},A}aTt.connectable=cKc});var Wqi=H(cTt=>{"use strict";Object.defineProperty(cTt,"__esModule",{value:!0});cTt.forkJoin=void 0;var lKc=ub(),uKc=LOr(),gKc=uh(),AKc=ZV(),dKc=Cd(),pKc=_le(),fKc=VOr();function IKc(){for(var e=[],t=0;t{"use strict";var hKc=Yke&&Yke.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o};Object.defineProperty(Yke,"__esModule",{value:!0});Yke.fromEvent=void 0;var mKc=uh(),CKc=ub(),_Kc=Kj(),yKc=hwt(),h_e=Sy(),bKc=_le(),EKc=["addListener","removeListener"],SKc=["addEventListener","removeEventListener"],vKc=["on","off"];function POr(e,t,r,n){if(h_e.isFunction(r)&&(n=r,r=void 0),n)return POr(e,t,r).pipe(bKc.mapOneOrManyArgs(n));var a=hKc(TKc(e)?SKc.map(function(A){return function(f){return e[A](t,f,r)}}):BKc(e)?EKc.map(Oqi(e,t)):wKc(e)?vKc.map(Oqi(e,t)):[],2),o=a[0],l=a[1];if(!o&&yKc.isArrayLike(e))return _Kc.mergeMap(function(A){return POr(A,t,r)})(mKc.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new CKc.Observable(function(A){var f=function(){for(var I=[],C=0;C{"use strict";Object.defineProperty(lTt,"__esModule",{value:!0});lTt.fromEventPattern=void 0;var RKc=ub(),NKc=Sy(),DKc=_le();function Hqi(e,t,r){return r?Hqi(e,t).pipe(DKc.mapOneOrManyArgs(r)):new RKc.Observable(function(n){var a=function(){for(var l=[],A=0;A{"use strict";var kKc=Qke&&Qke.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,l;return l={next:A(0),throw:A(1),return:A(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function A(I){return function(C){return f([I,C])}}function f(I){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(o=I[0]&2?a.return:I[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,I[1])).done)return o;switch(a=0,o&&(I=[I[0]&2,o.value]),I[0]){case 0:case 1:o=I;break;case 4:return r.label++,{value:I[1],done:!1};case 5:r.label++,a=I[1],I=[0];continue;case 7:I=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(I[0]===6||I[0]===2)){r=0;continue}if(I[0]===3&&(!o||I[1]>o[0]&&I[1]{"use strict";Object.defineProperty(uTt,"__esModule",{value:!0});uTt.iif=void 0;var LKc=M8e();function VKc(e,t,r){return LKc.defer(function(){return e()?t:r})}uTt.iif=VKc});var ble=H(gTt=>{"use strict";Object.defineProperty(gTt,"__esModule",{value:!0});gTt.timer=void 0;var PKc=ub(),WKc=FV(),OKc=V8e(),MKc=Jwt();function HKc(e,t,r){e===void 0&&(e=0),r===void 0&&(r=WKc.async);var n=-1;return t!=null&&(OKc.isScheduler(t)?r=t:n=t),new PKc.Observable(function(a){var o=MKc.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var l=0;return r.schedule(function(){a.closed||(a.next(l++),0<=n?this.schedule(void 0,n):a.complete())},o)})}gTt.timer=HKc});var WOr=H(ATt=>{"use strict";Object.defineProperty(ATt,"__esModule",{value:!0});ATt.interval=void 0;var YKc=FV(),QKc=ble();function XKc(e,t){return e===void 0&&(e=0),t===void 0&&(t=YKc.asyncScheduler),e<0&&(e=0),QKc.timer(e,e,t)}ATt.interval=XKc});var Kqi=H(dTt=>{"use strict";Object.defineProperty(dTt,"__esModule",{value:!0});dTt.merge=void 0;var JKc=Hke(),UKc=uh(),KKc=x4(),Uqi=ZV(),jKc=ate();function zKc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(m_e,"__esModule",{value:!0});m_e.never=m_e.NEVER=void 0;var qKc=ub(),$Kc=rx();m_e.NEVER=new qKc.Observable($Kc.noop);function e8c(){return m_e.NEVER}m_e.never=e8c});var Ele=H(pTt=>{"use strict";Object.defineProperty(pTt,"__esModule",{value:!0});pTt.argsOrArgArray=void 0;var t8c=Array.isArray;function r8c(e){return e.length===1&&t8c(e[0])?e[0]:e}pTt.argsOrArgArray=r8c});var MOr=H(fTt=>{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.onErrorResumeNext=void 0;var n8c=ub(),i8c=Ele(),s8c=Cd(),jqi=rx(),o8c=uh();function a8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(ITt,"__esModule",{value:!0});ITt.pairs=void 0;var c8c=ate();function l8c(e,t){return c8c.from(Object.entries(e),t)}ITt.pairs=l8c});var HOr=H(hTt=>{"use strict";Object.defineProperty(hTt,"__esModule",{value:!0});hTt.not=void 0;function u8c(e,t){return function(r,n){return!e.call(t,r,n)}}hTt.not=u8c});var ute=H(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.filter=void 0;var g8c=qg(),A8c=Cd();function d8c(e,t){return g8c.operate(function(r,n){var a=0;r.subscribe(A8c.createOperatorSubscriber(n,function(o){return e.call(t,o,a++)&&n.next(o)}))})}mTt.filter=d8c});var e$i=H(CTt=>{"use strict";Object.defineProperty(CTt,"__esModule",{value:!0});CTt.partition=void 0;var p8c=HOr(),qqi=ute(),$qi=uh();function f8c(e,t,r){return[qqi.filter(t,r)($qi.innerFrom(e)),qqi.filter(p8c.not(t,r))($qi.innerFrom(e))]}CTt.partition=f8c});var YOr=H(Xke=>{"use strict";Object.defineProperty(Xke,"__esModule",{value:!0});Xke.raceInit=Xke.race=void 0;var I8c=ub(),t$i=uh(),h8c=Ele(),m8c=Cd();function C8c(){for(var e=[],t=0;t{"use strict";Object.defineProperty(_Tt,"__esModule",{value:!0});_Tt.range=void 0;var _8c=ub(),y8c=x4();function b8c(e,t,r){if(t==null&&(t=e,e=0),t<=0)return y8c.EMPTY;var n=t+e;return new _8c.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(yTt,"__esModule",{value:!0});yTt.using=void 0;var E8c=ub(),S8c=uh(),v8c=x4();function B8c(e,t){return new E8c.Observable(function(r){var n=e(),a=t(n),o=a?S8c.innerFrom(a):v8c.EMPTY;return o.subscribe(r),function(){n&&n.unsubscribe()}})}yTt.using=B8c});var bTt=H(Sle=>{"use strict";var w8c=Sle&&Sle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},T8c=Sle&&Sle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(s$i,"__esModule",{value:!0})});var STt=H(ETt=>{"use strict";Object.defineProperty(ETt,"__esModule",{value:!0});ETt.audit=void 0;var Z8c=qg(),L8c=uh(),a$i=Cd();function V8c(e){return Z8c.operate(function(t,r){var n=!1,a=null,o=null,l=!1,A=function(){if(o?.unsubscribe(),o=null,n){n=!1;var I=a;a=null,r.next(I)}l&&r.complete()},f=function(){o=null,l&&r.complete()};t.subscribe(a$i.createOperatorSubscriber(r,function(I){n=!0,a=I,o||L8c.innerFrom(e(I)).subscribe(o=a$i.createOperatorSubscriber(r,A,f))},function(){l=!0,(!n||!o||o.closed)&&r.complete()}))})}ETt.audit=V8c});var QOr=H(vTt=>{"use strict";Object.defineProperty(vTt,"__esModule",{value:!0});vTt.auditTime=void 0;var P8c=FV(),W8c=STt(),O8c=ble();function M8c(e,t){return t===void 0&&(t=P8c.asyncScheduler),W8c.audit(function(){return O8c.timer(e,t)})}vTt.auditTime=M8c});var XOr=H(BTt=>{"use strict";Object.defineProperty(BTt,"__esModule",{value:!0});BTt.buffer=void 0;var H8c=qg(),Y8c=rx(),c$i=Cd(),Q8c=uh();function X8c(e){return H8c.operate(function(t,r){var n=[];return t.subscribe(c$i.createOperatorSubscriber(r,function(a){return n.push(a)},function(){r.next(n),r.complete()})),Q8c.innerFrom(e).subscribe(c$i.createOperatorSubscriber(r,function(){var a=n;n=[],r.next(a)},Y8c.noop)),function(){n=null}})}BTt.buffer=X8c});var UOr=H(Jke=>{"use strict";var JOr=Jke&&Jke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Jke,"__esModule",{value:!0});Jke.bufferCount=void 0;var J8c=qg(),U8c=Cd(),K8c=ste();function j8c(e,t){return t===void 0&&(t=null),t=t??e,J8c.operate(function(r,n){var a=[],o=0;r.subscribe(U8c.createOperatorSubscriber(n,function(l){var A,f,I,C,b=null;o++%t===0&&a.push([]);try{for(var E=JOr(a),N=E.next();!N.done;N=E.next()){var B=N.value;B.push(l),e<=B.length&&(b=b??[],b.push(B))}}catch(X){A={error:X}}finally{try{N&&!N.done&&(f=E.return)&&f.call(E)}finally{if(A)throw A.error}}if(b)try{for(var F=JOr(b),Q=F.next();!Q.done;Q=F.next()){var B=Q.value;K8c.arrRemove(a,B),n.next(B)}}catch(X){I={error:X}}finally{try{Q&&!Q.done&&(C=F.return)&&C.call(F)}finally{if(I)throw I.error}}},function(){var l,A;try{for(var f=JOr(a),I=f.next();!I.done;I=f.next()){var C=I.value;n.next(C)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}n.complete()},void 0,function(){a=null}))})}Jke.bufferCount=j8c});var KOr=H(Uke=>{"use strict";var z8c=Uke&&Uke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Uke,"__esModule",{value:!0});Uke.bufferTime=void 0;var q8c=TO(),$8c=qg(),ejc=Cd(),tjc=ste(),rjc=FV(),njc=ZV(),l$i=ote();function ijc(e){for(var t,r,n=[],a=1;a=0?l$i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=ejc.createOperatorSubscriber(I,function(F){var Q,X,ae=C.slice();try{for(var ne=z8c(ae),ce=ne.next();!ce.done;ce=ne.next()){var fe=ce.value,ue=fe.buffer;ue.push(F),A<=ue.length&&E(fe)}}catch(de){Q={error:de}}finally{try{ce&&!ce.done&&(X=ne.return)&&X.call(ne)}finally{if(Q)throw Q.error}}},function(){for(;C?.length;)I.next(C.shift().buffer);B?.unsubscribe(),I.complete(),I.unsubscribe()},void 0,function(){return C=null});f.subscribe(B)})}Uke.bufferTime=ijc});var zOr=H(Kke=>{"use strict";var sjc=Kke&&Kke.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Kke,"__esModule",{value:!0});Kke.bufferToggle=void 0;var ojc=TO(),ajc=qg(),u$i=uh(),jOr=Cd(),g$i=rx(),cjc=ste();function ljc(e,t){return ajc.operate(function(r,n){var a=[];u$i.innerFrom(e).subscribe(jOr.createOperatorSubscriber(n,function(o){var l=[];a.push(l);var A=new ojc.Subscription,f=function(){cjc.arrRemove(a,l),n.next(l),A.unsubscribe()};A.add(u$i.innerFrom(t(o)).subscribe(jOr.createOperatorSubscriber(n,f,g$i.noop)))},g$i.noop)),r.subscribe(jOr.createOperatorSubscriber(n,function(o){var l,A;try{for(var f=sjc(a),I=f.next();!I.done;I=f.next()){var C=I.value;C.push(o)}}catch(b){l={error:b}}finally{try{I&&!I.done&&(A=f.return)&&A.call(f)}finally{if(l)throw l.error}}},function(){for(;a.length>0;)n.next(a.shift());n.complete()}))})}Kke.bufferToggle=ljc});var qOr=H(wTt=>{"use strict";Object.defineProperty(wTt,"__esModule",{value:!0});wTt.bufferWhen=void 0;var ujc=qg(),gjc=rx(),A$i=Cd(),Ajc=uh();function djc(e){return ujc.operate(function(t,r){var n=null,a=null,o=function(){a?.unsubscribe();var l=n;n=[],l&&r.next(l),Ajc.innerFrom(e()).subscribe(a=A$i.createOperatorSubscriber(r,o,gjc.noop))};o(),t.subscribe(A$i.createOperatorSubscriber(r,function(l){return n?.push(l)},function(){n&&r.next(n),r.complete()},void 0,function(){return n=a=null}))})}wTt.bufferWhen=djc});var $Or=H(TTt=>{"use strict";Object.defineProperty(TTt,"__esModule",{value:!0});TTt.catchError=void 0;var pjc=uh(),fjc=Cd(),Ijc=qg();function d$i(e){return Ijc.operate(function(t,r){var n=null,a=!1,o;n=t.subscribe(fjc.createOperatorSubscriber(r,void 0,void 0,function(l){o=pjc.innerFrom(e(l,d$i(e)(t))),n?(n.unsubscribe(),n=null,o.subscribe(r)):a=!0})),a&&(n.unsubscribe(),n=null,o.subscribe(r))})}TTt.catchError=d$i});var e3r=H(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.scanInternals=void 0;var hjc=Cd();function mjc(e,t,r,n,a){return function(o,l){var A=r,f=t,I=0;o.subscribe(hjc.createOperatorSubscriber(l,function(C){var b=I++;f=A?e(f,C,b):(A=!0,C),n&&l.next(f)},a&&function(){A&&l.next(f),l.complete()}))}}RTt.scanInternals=mjc});var C_e=H(NTt=>{"use strict";Object.defineProperty(NTt,"__esModule",{value:!0});NTt.reduce=void 0;var Cjc=e3r(),_jc=qg();function yjc(e,t){return _jc.operate(Cjc.scanInternals(e,t,arguments.length>=2,!1,!0))}NTt.reduce=yjc});var kTt=H(DTt=>{"use strict";Object.defineProperty(DTt,"__esModule",{value:!0});DTt.toArray=void 0;var bjc=C_e(),Ejc=qg(),Sjc=function(e,t){return e.push(t),e};function vjc(){return Ejc.operate(function(e,t){bjc.reduce(Sjc,[])(e).subscribe(t)})}DTt.toArray=vjc});var t3r=H(xTt=>{"use strict";Object.defineProperty(xTt,"__esModule",{value:!0});xTt.joinAllInternals=void 0;var Bjc=nx(),wjc=_le(),Tjc=G8e(),Rjc=Kj(),Njc=kTt();function Djc(e,t){return Tjc.pipe(Njc.toArray(),Rjc.mergeMap(function(r){return e(r)}),t?wjc.mapOneOrManyArgs(t):Bjc.identity)}xTt.joinAllInternals=Djc});var FTt=H(GTt=>{"use strict";Object.defineProperty(GTt,"__esModule",{value:!0});GTt.combineLatestAll=void 0;var kjc=$wt(),xjc=t3r();function Gjc(e){return xjc.joinAllInternals(kjc.combineLatest,e)}GTt.combineLatestAll=Gjc});var r3r=H(ZTt=>{"use strict";Object.defineProperty(ZTt,"__esModule",{value:!0});ZTt.combineAll=void 0;var Fjc=FTt();ZTt.combineAll=Fjc.combineLatestAll});var n3r=H(vle=>{"use strict";var p$i=vle&&vle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},f$i=vle&&vle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Mjc=Ble&&Ble.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Hjc=Ble&&Ble.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(LTt,"__esModule",{value:!0});LTt.concatMap=void 0;var h$i=Kj(),Xjc=Sy();function Jjc(e,t){return Xjc.isFunction(t)?h$i.mergeMap(e,t,1):h$i.mergeMap(e,1)}LTt.concatMap=Jjc});var s3r=H(PTt=>{"use strict";Object.defineProperty(PTt,"__esModule",{value:!0});PTt.concatMapTo=void 0;var m$i=VTt(),Ujc=Sy();function Kjc(e,t){return Ujc.isFunction(t)?m$i.concatMap(function(){return e},t):m$i.concatMap(function(){return e})}PTt.concatMapTo=Kjc});var o3r=H(wle=>{"use strict";var jjc=wle&&wle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},zjc=wle&&wle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var n6c=Tle&&Tle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},i6c=Tle&&Tle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.fromSubscribable=void 0;var a6c=ub();function c6c(e){return new a6c.Observable(function(t){return e.subscribe(t)})}WTt.fromSubscribable=c6c});var H8e=H(OTt=>{"use strict";Object.defineProperty(OTt,"__esModule",{value:!0});OTt.connect=void 0;var l6c=ix(),u6c=uh(),g6c=qg(),A6c=C$i(),d6c={connector:function(){return new l6c.Subject}};function p6c(e,t){t===void 0&&(t=d6c);var r=t.connector;return g6c.operate(function(n,a){var o=r();u6c.innerFrom(e(A6c.fromSubscribable(o))).subscribe(a),a.add(n.subscribe(o))})}OTt.connect=p6c});var c3r=H(MTt=>{"use strict";Object.defineProperty(MTt,"__esModule",{value:!0});MTt.count=void 0;var f6c=C_e();function I6c(e){return f6c.reduce(function(t,r,n){return!e||e(r,n)?t+1:t},0)}MTt.count=I6c});var l3r=H(HTt=>{"use strict";Object.defineProperty(HTt,"__esModule",{value:!0});HTt.debounce=void 0;var h6c=qg(),m6c=rx(),_$i=Cd(),C6c=uh();function _6c(e){return h6c.operate(function(t,r){var n=!1,a=null,o=null,l=function(){if(o?.unsubscribe(),o=null,n){n=!1;var A=a;a=null,r.next(A)}};t.subscribe(_$i.createOperatorSubscriber(r,function(A){o?.unsubscribe(),n=!0,a=A,o=_$i.createOperatorSubscriber(r,l,m6c.noop),C6c.innerFrom(e(A)).subscribe(o)},function(){l(),r.complete()},void 0,function(){a=o=null}))})}HTt.debounce=_6c});var u3r=H(YTt=>{"use strict";Object.defineProperty(YTt,"__esModule",{value:!0});YTt.debounceTime=void 0;var y6c=FV(),b6c=qg(),E6c=Cd();function S6c(e,t){return t===void 0&&(t=y6c.asyncScheduler),b6c.operate(function(r,n){var a=null,o=null,l=null,A=function(){if(a){a.unsubscribe(),a=null;var I=o;o=null,n.next(I)}};function f(){var I=l+e,C=t.now();if(C{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.defaultIfEmpty=void 0;var v6c=qg(),B6c=Cd();function w6c(e){return v6c.operate(function(t,r){var n=!1;t.subscribe(B6c.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){n||r.next(e),r.complete()}))})}QTt.defaultIfEmpty=w6c});var zke=H(XTt=>{"use strict";Object.defineProperty(XTt,"__esModule",{value:!0});XTt.take=void 0;var T6c=x4(),R6c=qg(),N6c=Cd();function D6c(e){return e<=0?function(){return T6c.EMPTY}:R6c.operate(function(t,r){var n=0;t.subscribe(N6c.createOperatorSubscriber(r,function(a){++n<=e&&(r.next(a),e<=n&&r.complete())}))})}XTt.take=D6c});var UTt=H(JTt=>{"use strict";Object.defineProperty(JTt,"__esModule",{value:!0});JTt.ignoreElements=void 0;var k6c=qg(),x6c=Cd(),G6c=rx();function F6c(){return k6c.operate(function(e,t){e.subscribe(x6c.createOperatorSubscriber(t,G6c.noop))})}JTt.ignoreElements=F6c});var jTt=H(KTt=>{"use strict";Object.defineProperty(KTt,"__esModule",{value:!0});KTt.mapTo=void 0;var Z6c=lte();function L6c(e){return Z6c.map(function(){return e})}KTt.mapTo=L6c});var qTt=H(zTt=>{"use strict";Object.defineProperty(zTt,"__esModule",{value:!0});zTt.delayWhen=void 0;var V6c=O8e(),y$i=zke(),P6c=UTt(),W6c=jTt(),O6c=Kj(),M6c=uh();function b$i(e,t){return t?function(r){return V6c.concat(t.pipe(y$i.take(1),P6c.ignoreElements()),r.pipe(b$i(e)))}:O6c.mergeMap(function(r,n){return M6c.innerFrom(e(r,n)).pipe(y$i.take(1),W6c.mapTo(r))})}zTt.delayWhen=b$i});var g3r=H($Tt=>{"use strict";Object.defineProperty($Tt,"__esModule",{value:!0});$Tt.delay=void 0;var H6c=FV(),Y6c=qTt(),Q6c=ble();function X6c(e,t){t===void 0&&(t=H6c.asyncScheduler);var r=Q6c.timer(e,t);return Y6c.delayWhen(function(){return r})}$Tt.delay=X6c});var A3r=H(eRt=>{"use strict";Object.defineProperty(eRt,"__esModule",{value:!0});eRt.dematerialize=void 0;var J6c=Vwt(),U6c=qg(),K6c=Cd();function j6c(){return U6c.operate(function(e,t){e.subscribe(K6c.createOperatorSubscriber(t,function(r){return J6c.observeNotification(r,t)}))})}eRt.dematerialize=j6c});var d3r=H(tRt=>{"use strict";Object.defineProperty(tRt,"__esModule",{value:!0});tRt.distinct=void 0;var z6c=qg(),E$i=Cd(),q6c=rx(),$6c=uh();function e7c(e,t){return z6c.operate(function(r,n){var a=new Set;r.subscribe(E$i.createOperatorSubscriber(n,function(o){var l=e?e(o):o;a.has(l)||(a.add(l),n.next(o))})),t&&$6c.innerFrom(t).subscribe(E$i.createOperatorSubscriber(n,function(){return a.clear()},q6c.noop))})}tRt.distinct=e7c});var nRt=H(rRt=>{"use strict";Object.defineProperty(rRt,"__esModule",{value:!0});rRt.distinctUntilChanged=void 0;var t7c=nx(),r7c=qg(),n7c=Cd();function i7c(e,t){return t===void 0&&(t=t7c.identity),e=e??s7c,r7c.operate(function(r,n){var a,o=!0;r.subscribe(n7c.createOperatorSubscriber(n,function(l){var A=t(l);(o||!e(a,A))&&(o=!1,a=A,n.next(l))}))})}rRt.distinctUntilChanged=i7c;function s7c(e,t){return e===t}});var p3r=H(iRt=>{"use strict";Object.defineProperty(iRt,"__esModule",{value:!0});iRt.distinctUntilKeyChanged=void 0;var o7c=nRt();function a7c(e,t){return o7c.distinctUntilChanged(function(r,n){return t?t(r[e],n[e]):r[e]===n[e]})}iRt.distinctUntilKeyChanged=a7c});var qke=H(sRt=>{"use strict";Object.defineProperty(sRt,"__esModule",{value:!0});sRt.throwIfEmpty=void 0;var c7c=mle(),l7c=qg(),u7c=Cd();function g7c(e){return e===void 0&&(e=A7c),l7c.operate(function(t,r){var n=!1;t.subscribe(u7c.createOperatorSubscriber(r,function(a){n=!0,r.next(a)},function(){return n?r.complete():r.error(e())}))})}sRt.throwIfEmpty=g7c;function A7c(){return new c7c.EmptyError}});var f3r=H(oRt=>{"use strict";Object.defineProperty(oRt,"__esModule",{value:!0});oRt.elementAt=void 0;var S$i=kOr(),d7c=ute(),p7c=qke(),f7c=jke(),I7c=zke();function h7c(e,t){if(e<0)throw new S$i.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(n){return n.pipe(d7c.filter(function(a,o){return o===e}),I7c.take(1),r?f7c.defaultIfEmpty(t):p7c.throwIfEmpty(function(){return new S$i.ArgumentOutOfRangeError}))}}oRt.elementAt=h7c});var I3r=H(Rle=>{"use strict";var m7c=Rle&&Rle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},C7c=Rle&&Rle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(aRt,"__esModule",{value:!0});aRt.every=void 0;var E7c=qg(),S7c=Cd();function v7c(e,t){return E7c.operate(function(r,n){var a=0;r.subscribe(S7c.createOperatorSubscriber(n,function(o){e.call(t,o,a++,r)||(n.next(!1),n.complete())},function(){n.next(!0),n.complete()}))})}aRt.every=v7c});var lRt=H(cRt=>{"use strict";Object.defineProperty(cRt,"__esModule",{value:!0});cRt.exhaustMap=void 0;var B7c=lte(),v$i=uh(),w7c=qg(),B$i=Cd();function w$i(e,t){return t?function(r){return r.pipe(w$i(function(n,a){return v$i.innerFrom(e(n,a)).pipe(B7c.map(function(o,l){return t(n,o,a,l)}))}))}:w7c.operate(function(r,n){var a=0,o=null,l=!1;r.subscribe(B$i.createOperatorSubscriber(n,function(A){o||(o=B$i.createOperatorSubscriber(n,void 0,function(){o=null,l&&n.complete()}),v$i.innerFrom(e(A,a++)).subscribe(o))},function(){l=!0,!o&&n.complete()}))})}cRt.exhaustMap=w$i});var gRt=H(uRt=>{"use strict";Object.defineProperty(uRt,"__esModule",{value:!0});uRt.exhaustAll=void 0;var T7c=lRt(),R7c=nx();function N7c(){return T7c.exhaustMap(R7c.identity)}uRt.exhaustAll=N7c});var m3r=H(ARt=>{"use strict";Object.defineProperty(ARt,"__esModule",{value:!0});ARt.exhaust=void 0;var D7c=gRt();ARt.exhaust=D7c.exhaustAll});var C3r=H(dRt=>{"use strict";Object.defineProperty(dRt,"__esModule",{value:!0});dRt.expand=void 0;var k7c=qg(),x7c=tTt();function G7c(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,k7c.operate(function(n,a){return x7c.mergeInternals(n,a,e,t,void 0,!0,r)})}dRt.expand=G7c});var _3r=H(pRt=>{"use strict";Object.defineProperty(pRt,"__esModule",{value:!0});pRt.finalize=void 0;var F7c=qg();function Z7c(e){return F7c.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}pRt.finalize=Z7c});var fRt=H($ke=>{"use strict";Object.defineProperty($ke,"__esModule",{value:!0});$ke.createFind=$ke.find=void 0;var L7c=qg(),V7c=Cd();function P7c(e,t){return L7c.operate(T$i(e,t,"value"))}$ke.find=P7c;function T$i(e,t,r){var n=r==="index";return function(a,o){var l=0;a.subscribe(V7c.createOperatorSubscriber(o,function(A){var f=l++;e.call(t,A,f,a)&&(o.next(n?f:A),o.complete())},function(){o.next(n?-1:void 0),o.complete()}))}}$ke.createFind=T$i});var y3r=H(IRt=>{"use strict";Object.defineProperty(IRt,"__esModule",{value:!0});IRt.findIndex=void 0;var W7c=qg(),O7c=fRt();function M7c(e,t){return W7c.operate(O7c.createFind(e,t,"index"))}IRt.findIndex=M7c});var b3r=H(hRt=>{"use strict";Object.defineProperty(hRt,"__esModule",{value:!0});hRt.first=void 0;var H7c=mle(),Y7c=ute(),Q7c=zke(),X7c=jke(),J7c=qke(),U7c=nx();function K7c(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?Y7c.filter(function(a,o){return e(a,o,n)}):U7c.identity,Q7c.take(1),r?X7c.defaultIfEmpty(t):J7c.throwIfEmpty(function(){return new H7c.EmptyError}))}}hRt.first=K7c});var E3r=H(mRt=>{"use strict";Object.defineProperty(mRt,"__esModule",{value:!0});mRt.groupBy=void 0;var j7c=ub(),z7c=uh(),q7c=ix(),$7c=qg(),R$i=Cd();function ezc(e,t,r,n){return $7c.operate(function(a,o){var l;!t||typeof t=="function"?l=t:(r=t.duration,l=t.element,n=t.connector);var A=new Map,f=function(B){A.forEach(B),B(o)},I=function(B){return f(function(F){return F.error(B)})},C=0,b=!1,E=new R$i.OperatorSubscriber(o,function(B){try{var F=e(B),Q=A.get(F);if(!Q){A.set(F,Q=n?n():new q7c.Subject);var X=N(F,Q);if(o.next(X),r){var ae=R$i.createOperatorSubscriber(Q,function(){Q.complete(),ae?.unsubscribe()},void 0,void 0,function(){return A.delete(F)});E.add(z7c.innerFrom(r(X)).subscribe(ae))}}Q.next(l?l(B):B)}catch(ne){I(ne)}},function(){return f(function(B){return B.complete()})},I,function(){return A.clear()},function(){return b=!0,C===0});a.subscribe(E);function N(B,F){var Q=new j7c.Observable(function(X){C++;var ae=F.subscribe(X);return function(){ae.unsubscribe(),--C===0&&b&&E.unsubscribe()}});return Q.key=B,Q}})}mRt.groupBy=ezc});var S3r=H(CRt=>{"use strict";Object.defineProperty(CRt,"__esModule",{value:!0});CRt.isEmpty=void 0;var tzc=qg(),rzc=Cd();function nzc(){return tzc.operate(function(e,t){e.subscribe(rzc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}CRt.isEmpty=nzc});var _Rt=H(exe=>{"use strict";var izc=exe&&exe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(exe,"__esModule",{value:!0});exe.takeLast=void 0;var szc=x4(),ozc=qg(),azc=Cd();function czc(e){return e<=0?function(){return szc.EMPTY}:ozc.operate(function(t,r){var n=[];t.subscribe(azc.createOperatorSubscriber(r,function(a){n.push(a),e{"use strict";Object.defineProperty(yRt,"__esModule",{value:!0});yRt.last=void 0;var lzc=mle(),uzc=ute(),gzc=_Rt(),Azc=qke(),dzc=jke(),pzc=nx();function fzc(e,t){var r=arguments.length>=2;return function(n){return n.pipe(e?uzc.filter(function(a,o){return e(a,o,n)}):pzc.identity,gzc.takeLast(1),r?dzc.defaultIfEmpty(t):Azc.throwIfEmpty(function(){return new lzc.EmptyError}))}}yRt.last=fzc});var w3r=H(bRt=>{"use strict";Object.defineProperty(bRt,"__esModule",{value:!0});bRt.materialize=void 0;var B3r=Vwt(),Izc=qg(),hzc=Cd();function mzc(){return Izc.operate(function(e,t){e.subscribe(hzc.createOperatorSubscriber(t,function(r){t.next(B3r.Notification.createNext(r))},function(){t.next(B3r.Notification.createComplete()),t.complete()},function(r){t.next(B3r.Notification.createError(r)),t.complete()}))})}bRt.materialize=mzc});var T3r=H(ERt=>{"use strict";Object.defineProperty(ERt,"__esModule",{value:!0});ERt.max=void 0;var Czc=C_e(),_zc=Sy();function yzc(e){return Czc.reduce(_zc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}ERt.max=yzc});var R3r=H(SRt=>{"use strict";Object.defineProperty(SRt,"__esModule",{value:!0});SRt.flatMap=void 0;var bzc=Kj();SRt.flatMap=bzc.mergeMap});var N3r=H(vRt=>{"use strict";Object.defineProperty(vRt,"__esModule",{value:!0});vRt.mergeMapTo=void 0;var N$i=Kj(),Ezc=Sy();function Szc(e,t,r){return r===void 0&&(r=1/0),Ezc.isFunction(t)?N$i.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),N$i.mergeMap(function(){return e},r))}vRt.mergeMapTo=Szc});var D3r=H(BRt=>{"use strict";Object.defineProperty(BRt,"__esModule",{value:!0});BRt.mergeScan=void 0;var vzc=qg(),Bzc=tTt();function wzc(e,t,r){return r===void 0&&(r=1/0),vzc.operate(function(n,a){var o=t;return Bzc.mergeInternals(n,a,function(l,A){return e(o,l,A)},r,function(l){o=l},!1,void 0,function(){return o=null})})}BRt.mergeScan=wzc});var k3r=H(Nle=>{"use strict";var Tzc=Nle&&Nle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Rzc=Nle&&Nle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var Fzc=Dle&&Dle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Zzc=Dle&&Dle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(wRt,"__esModule",{value:!0});wRt.min=void 0;var Pzc=C_e(),Wzc=Sy();function Ozc(e){return Pzc.reduce(Wzc.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(TRt,"__esModule",{value:!0});TRt.multicast=void 0;var Mzc=F8e(),k$i=Sy(),Hzc=H8e();function Yzc(e,t){var r=k$i.isFunction(e)?e:function(){return e};return k$i.isFunction(t)?Hzc.connect(t,{connector:r}):function(n){return new Mzc.ConnectableObservable(n,r)}}TRt.multicast=Yzc});var F3r=H(jj=>{"use strict";var Qzc=jj&&jj.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},Xzc=jj&&jj.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(RRt,"__esModule",{value:!0});RRt.pairwise=void 0;var Kzc=qg(),jzc=Cd();function zzc(){return Kzc.operate(function(e,t){var r,n=!1;e.subscribe(jzc.createOperatorSubscriber(t,function(a){var o=r;r=a,n&&t.next([o,a]),n=!0}))})}RRt.pairwise=zzc});var L3r=H(NRt=>{"use strict";Object.defineProperty(NRt,"__esModule",{value:!0});NRt.pluck=void 0;var qzc=lte();function $zc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(DRt,"__esModule",{value:!0});DRt.publish=void 0;var eqc=ix(),tqc=Y8e(),rqc=H8e();function nqc(e){return e?function(t){return rqc.connect(e)(t)}:function(t){return tqc.multicast(new eqc.Subject)(t)}}DRt.publish=nqc});var P3r=H(kRt=>{"use strict";Object.defineProperty(kRt,"__esModule",{value:!0});kRt.publishBehavior=void 0;var iqc=fOr(),sqc=F8e();function oqc(e){return function(t){var r=new iqc.BehaviorSubject(e);return new sqc.ConnectableObservable(t,function(){return r})}}kRt.publishBehavior=oqc});var W3r=H(xRt=>{"use strict";Object.defineProperty(xRt,"__esModule",{value:!0});xRt.publishLast=void 0;var aqc=Awt(),cqc=F8e();function lqc(){return function(e){var t=new aqc.AsyncSubject;return new cqc.ConnectableObservable(e,function(){return t})}}xRt.publishLast=lqc});var O3r=H(GRt=>{"use strict";Object.defineProperty(GRt,"__esModule",{value:!0});GRt.publishReplay=void 0;var uqc=gwt(),gqc=Y8e(),G$i=Sy();function Aqc(e,t,r,n){r&&!G$i.isFunction(r)&&(n=r);var a=G$i.isFunction(r)?r:void 0;return function(o){return gqc.multicast(new uqc.ReplaySubject(e,t,n),a)(o)}}GRt.publishReplay=Aqc});var FRt=H(kle=>{"use strict";var dqc=kle&&kle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},pqc=kle&&kle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ZRt,"__esModule",{value:!0});ZRt.repeat=void 0;var Cqc=x4(),_qc=qg(),F$i=Cd(),yqc=uh(),bqc=ble();function Eqc(e){var t,r=1/0,n;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,n=e.delay):r=e),r<=0?function(){return Cqc.EMPTY}:_qc.operate(function(a,o){var l=0,A,f=function(){if(A?.unsubscribe(),A=null,n!=null){var C=typeof n=="number"?bqc.timer(n):yqc.innerFrom(n(l)),b=F$i.createOperatorSubscriber(o,function(){b.unsubscribe(),I()});C.subscribe(b)}else I()},I=function(){var C=!1;A=a.subscribe(F$i.createOperatorSubscriber(o,void 0,function(){++l{"use strict";Object.defineProperty(LRt,"__esModule",{value:!0});LRt.repeatWhen=void 0;var Sqc=uh(),vqc=ix(),Bqc=qg(),Z$i=Cd();function wqc(e){return Bqc.operate(function(t,r){var n,a=!1,o,l=!1,A=!1,f=function(){return A&&l&&(r.complete(),!0)},I=function(){return o||(o=new vqc.Subject,Sqc.innerFrom(e(o)).subscribe(Z$i.createOperatorSubscriber(r,function(){n?C():a=!0},function(){l=!0,f()}))),o},C=function(){A=!1,n=t.subscribe(Z$i.createOperatorSubscriber(r,void 0,function(){A=!0,!f()&&I().next()})),a&&(n.unsubscribe(),n=null,a=!1,C())};C()})}LRt.repeatWhen=wqc});var Y3r=H(VRt=>{"use strict";Object.defineProperty(VRt,"__esModule",{value:!0});VRt.retry=void 0;var Tqc=qg(),L$i=Cd(),Rqc=nx(),Nqc=ble(),Dqc=uh();function kqc(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,n=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,l=o===void 0?!1:o;return n<=0?Rqc.identity:Tqc.operate(function(A,f){var I=0,C,b=function(){var E=!1;C=A.subscribe(L$i.createOperatorSubscriber(f,function(N){l&&(I=0),f.next(N)},void 0,function(N){if(I++{"use strict";Object.defineProperty(PRt,"__esModule",{value:!0});PRt.retryWhen=void 0;var xqc=uh(),Gqc=ix(),Fqc=qg(),V$i=Cd();function Zqc(e){return Fqc.operate(function(t,r){var n,a=!1,o,l=function(){n=t.subscribe(V$i.createOperatorSubscriber(r,void 0,void 0,function(A){o||(o=new Gqc.Subject,xqc.innerFrom(e(o)).subscribe(V$i.createOperatorSubscriber(r,function(){return n?l():a=!0}))),o&&o.next(A)})),a&&(n.unsubscribe(),n=null,a=!1,l())};l()})}PRt.retryWhen=Zqc});var ORt=H(WRt=>{"use strict";Object.defineProperty(WRt,"__esModule",{value:!0});WRt.sample=void 0;var Lqc=uh(),Vqc=qg(),Pqc=rx(),P$i=Cd();function Wqc(e){return Vqc.operate(function(t,r){var n=!1,a=null;t.subscribe(P$i.createOperatorSubscriber(r,function(o){n=!0,a=o})),Lqc.innerFrom(e).subscribe(P$i.createOperatorSubscriber(r,function(){if(n){n=!1;var o=a;a=null,r.next(o)}},Pqc.noop))})}WRt.sample=Wqc});var X3r=H(MRt=>{"use strict";Object.defineProperty(MRt,"__esModule",{value:!0});MRt.sampleTime=void 0;var Oqc=FV(),Mqc=ORt(),Hqc=WOr();function Yqc(e,t){return t===void 0&&(t=Oqc.asyncScheduler),Mqc.sample(Hqc.interval(e,t))}MRt.sampleTime=Yqc});var J3r=H(HRt=>{"use strict";Object.defineProperty(HRt,"__esModule",{value:!0});HRt.scan=void 0;var Qqc=qg(),Xqc=e3r();function Jqc(e,t){return Qqc.operate(Xqc.scanInternals(e,t,arguments.length>=2,!0))}HRt.scan=Jqc});var U3r=H(YRt=>{"use strict";Object.defineProperty(YRt,"__esModule",{value:!0});YRt.sequenceEqual=void 0;var Uqc=qg(),Kqc=Cd(),jqc=uh();function zqc(e,t){return t===void 0&&(t=function(r,n){return r===n}),Uqc.operate(function(r,n){var a=W$i(),o=W$i(),l=function(f){n.next(f),n.complete()},A=function(f,I){var C=Kqc.createOperatorSubscriber(n,function(b){var E=I.buffer,N=I.complete;E.length===0?N?l(!1):f.buffer.push(b):!t(b,E.shift())&&l(!1)},function(){f.complete=!0;var b=I.complete,E=I.buffer;b&&l(E.length===0),C?.unsubscribe()});return C};r.subscribe(A(a,o)),jqc.innerFrom(e).subscribe(A(o,a))})}YRt.sequenceEqual=zqc;function W$i(){return{buffer:[],complete:!1}}});var QRt=H(xle=>{"use strict";var qqc=xle&&xle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},$qc=xle&&xle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r0&&(C=new M$i.SafeSubscriber({next:function(ue){return fe.next(ue)},error:function(ue){F=!0,Q(),b=K3r(X,a,ue),fe.error(ue)},complete:function(){B=!0,Q(),b=K3r(X,l),fe.complete()}}),O$i.innerFrom(ne).subscribe(C))})(I)}}xle.share=r$c;function K3r(e,t){for(var r=[],n=2;n{"use strict";Object.defineProperty(XRt,"__esModule",{value:!0});XRt.shareReplay=void 0;var n$c=gwt(),i$c=QRt();function s$c(e,t,r){var n,a,o,l,A=!1;return e&&typeof e=="object"?(n=e.bufferSize,l=n===void 0?1/0:n,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,A=o===void 0?!1:o,r=e.scheduler):l=e??1/0,i$c.share({connector:function(){return new n$c.ReplaySubject(l,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:A})}XRt.shareReplay=s$c});var z3r=H(JRt=>{"use strict";Object.defineProperty(JRt,"__esModule",{value:!0});JRt.single=void 0;var o$c=mle(),a$c=GOr(),c$c=xOr(),l$c=qg(),u$c=Cd();function g$c(e){return l$c.operate(function(t,r){var n=!1,a,o=!1,l=0;t.subscribe(u$c.createOperatorSubscriber(r,function(A){o=!0,(!e||e(A,l++,t))&&(n&&r.error(new a$c.SequenceError("Too many matching values")),n=!0,a=A)},function(){n?(r.next(a),r.complete()):r.error(o?new c$c.NotFoundError("No matching values"):new o$c.EmptyError)}))})}JRt.single=g$c});var q3r=H(URt=>{"use strict";Object.defineProperty(URt,"__esModule",{value:!0});URt.skip=void 0;var A$c=ute();function d$c(e){return A$c.filter(function(t,r){return e<=r})}URt.skip=d$c});var $3r=H(KRt=>{"use strict";Object.defineProperty(KRt,"__esModule",{value:!0});KRt.skipLast=void 0;var p$c=nx(),f$c=qg(),I$c=Cd();function h$c(e){return e<=0?p$c.identity:f$c.operate(function(t,r){var n=new Array(e),a=0;return t.subscribe(I$c.createOperatorSubscriber(r,function(o){var l=a++;if(l{"use strict";Object.defineProperty(jRt,"__esModule",{value:!0});jRt.skipUntil=void 0;var m$c=qg(),H$i=Cd(),C$c=uh(),_$c=rx();function y$c(e){return m$c.operate(function(t,r){var n=!1,a=H$i.createOperatorSubscriber(r,function(){a?.unsubscribe(),n=!0},_$c.noop);C$c.innerFrom(e).subscribe(a),t.subscribe(H$i.createOperatorSubscriber(r,function(o){return n&&r.next(o)}))})}jRt.skipUntil=y$c});var t5r=H(zRt=>{"use strict";Object.defineProperty(zRt,"__esModule",{value:!0});zRt.skipWhile=void 0;var b$c=qg(),E$c=Cd();function S$c(e){return b$c.operate(function(t,r){var n=!1,a=0;t.subscribe(E$c.createOperatorSubscriber(r,function(o){return(n||(n=!e(o,a++)))&&r.next(o)}))})}zRt.skipWhile=S$c});var r5r=H(qRt=>{"use strict";Object.defineProperty(qRt,"__esModule",{value:!0});qRt.startWith=void 0;var Y$i=O8e(),v$c=ZV(),B$c=qg();function w$c(){for(var e=[],t=0;t{"use strict";Object.defineProperty($Rt,"__esModule",{value:!0});$Rt.switchMap=void 0;var T$c=uh(),R$c=qg(),Q$i=Cd();function N$c(e,t){return R$c.operate(function(r,n){var a=null,o=0,l=!1,A=function(){return l&&!a&&n.complete()};r.subscribe(Q$i.createOperatorSubscriber(n,function(f){a?.unsubscribe();var I=0,C=o++;T$c.innerFrom(e(f,C)).subscribe(a=Q$i.createOperatorSubscriber(n,function(b){return n.next(t?t(f,b,C,I++):b)},function(){a=null,A()}))},function(){l=!0,A()}))})}$Rt.switchMap=N$c});var n5r=H(eNt=>{"use strict";Object.defineProperty(eNt,"__esModule",{value:!0});eNt.switchAll=void 0;var D$c=txe(),k$c=nx();function x$c(){return D$c.switchMap(k$c.identity)}eNt.switchAll=x$c});var i5r=H(tNt=>{"use strict";Object.defineProperty(tNt,"__esModule",{value:!0});tNt.switchMapTo=void 0;var X$i=txe(),G$c=Sy();function F$c(e,t){return G$c.isFunction(t)?X$i.switchMap(function(){return e},t):X$i.switchMap(function(){return e})}tNt.switchMapTo=F$c});var s5r=H(rNt=>{"use strict";Object.defineProperty(rNt,"__esModule",{value:!0});rNt.switchScan=void 0;var Z$c=txe(),L$c=qg();function V$c(e,t){return L$c.operate(function(r,n){var a=t;return Z$c.switchMap(function(o,l){return e(a,o,l)},function(o,l){return a=l,l})(r).subscribe(n),function(){a=null}})}rNt.switchScan=V$c});var o5r=H(nNt=>{"use strict";Object.defineProperty(nNt,"__esModule",{value:!0});nNt.takeUntil=void 0;var P$c=qg(),W$c=Cd(),O$c=uh(),M$c=rx();function H$c(e){return P$c.operate(function(t,r){O$c.innerFrom(e).subscribe(W$c.createOperatorSubscriber(r,function(){return r.complete()},M$c.noop)),!r.closed&&t.subscribe(r)})}nNt.takeUntil=H$c});var a5r=H(iNt=>{"use strict";Object.defineProperty(iNt,"__esModule",{value:!0});iNt.takeWhile=void 0;var Y$c=qg(),Q$c=Cd();function X$c(e,t){return t===void 0&&(t=!1),Y$c.operate(function(r,n){var a=0;r.subscribe(Q$c.createOperatorSubscriber(n,function(o){var l=e(o,a++);(l||t)&&n.next(o),!l&&n.complete()}))})}iNt.takeWhile=X$c});var c5r=H(sNt=>{"use strict";Object.defineProperty(sNt,"__esModule",{value:!0});sNt.tap=void 0;var J$c=Sy(),U$c=qg(),K$c=Cd(),j$c=nx();function z$c(e,t,r){var n=J$c.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return n?U$c.operate(function(a,o){var l;(l=n.subscribe)===null||l===void 0||l.call(n);var A=!0;a.subscribe(K$c.createOperatorSubscriber(o,function(f){var I;(I=n.next)===null||I===void 0||I.call(n,f),o.next(f)},function(){var f;A=!1,(f=n.complete)===null||f===void 0||f.call(n),o.complete()},function(f){var I;A=!1,(I=n.error)===null||I===void 0||I.call(n,f),o.error(f)},function(){var f,I;A&&((f=n.unsubscribe)===null||f===void 0||f.call(n)),(I=n.finalize)===null||I===void 0||I.call(n)}))}):j$c.identity}sNt.tap=z$c});var aNt=H(oNt=>{"use strict";Object.defineProperty(oNt,"__esModule",{value:!0});oNt.throttle=void 0;var q$c=qg(),J$i=Cd(),$$c=uh();function eel(e,t){return q$c.operate(function(r,n){var a=t??{},o=a.leading,l=o===void 0?!0:o,A=a.trailing,f=A===void 0?!1:A,I=!1,C=null,b=null,E=!1,N=function(){b?.unsubscribe(),b=null,f&&(Q(),E&&n.complete())},B=function(){b=null,E&&n.complete()},F=function(X){return b=$$c.innerFrom(e(X)).subscribe(J$i.createOperatorSubscriber(n,N,B))},Q=function(){if(I){I=!1;var X=C;C=null,n.next(X),!E&&F(X)}};r.subscribe(J$i.createOperatorSubscriber(n,function(X){I=!0,C=X,!(b&&!b.closed)&&(l?Q():F(X))},function(){E=!0,!(f&&I&&b&&!b.closed)&&n.complete()}))})}oNt.throttle=eel});var l5r=H(cNt=>{"use strict";Object.defineProperty(cNt,"__esModule",{value:!0});cNt.throttleTime=void 0;var tel=FV(),rel=aNt(),nel=ble();function iel(e,t,r){t===void 0&&(t=tel.asyncScheduler);var n=nel.timer(e,t);return rel.throttle(function(){return n},r)}cNt.throttleTime=iel});var u5r=H(rxe=>{"use strict";Object.defineProperty(rxe,"__esModule",{value:!0});rxe.TimeInterval=rxe.timeInterval=void 0;var sel=FV(),oel=qg(),ael=Cd();function cel(e){return e===void 0&&(e=sel.asyncScheduler),oel.operate(function(t,r){var n=e.now();t.subscribe(ael.createOperatorSubscriber(r,function(a){var o=e.now(),l=o-n;n=o,r.next(new U$i(a,l))}))})}rxe.timeInterval=cel;var U$i=function(){function e(t,r){this.value=t,this.interval=r}return e}();rxe.TimeInterval=U$i});var g5r=H(lNt=>{"use strict";Object.defineProperty(lNt,"__esModule",{value:!0});lNt.timeoutWith=void 0;var lel=FV(),uel=Jwt(),gel=P8e();function Ael(e,t,r){var n,a,o;if(r=r??lel.async,uel.isValidDate(e)?n=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(n==null&&a==null)throw new TypeError("No timeout provided.");return gel.timeout({first:n,each:a,scheduler:r,with:o})}lNt.timeoutWith=Ael});var A5r=H(uNt=>{"use strict";Object.defineProperty(uNt,"__esModule",{value:!0});uNt.timestamp=void 0;var del=uwt(),pel=lte();function fel(e){return e===void 0&&(e=del.dateTimestampProvider),pel.map(function(t){return{value:t,timestamp:e.now()}})}uNt.timestamp=fel});var d5r=H(gNt=>{"use strict";Object.defineProperty(gNt,"__esModule",{value:!0});gNt.window=void 0;var K$i=ix(),Iel=qg(),j$i=Cd(),hel=rx(),mel=uh();function Cel(e){return Iel.operate(function(t,r){var n=new K$i.Subject;r.next(n.asObservable());var a=function(o){n.error(o),r.error(o)};return t.subscribe(j$i.createOperatorSubscriber(r,function(o){return n?.next(o)},function(){n.complete(),r.complete()},a)),mel.innerFrom(e).subscribe(j$i.createOperatorSubscriber(r,function(){n.complete(),r.next(n=new K$i.Subject)},hel.noop,a)),function(){n?.unsubscribe(),n=null}})}gNt.window=Cel});var p5r=H(nxe=>{"use strict";var _el=nxe&&nxe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(nxe,"__esModule",{value:!0});nxe.windowCount=void 0;var z$i=ix(),yel=qg(),bel=Cd();function Eel(e,t){t===void 0&&(t=0);var r=t>0?t:e;return yel.operate(function(n,a){var o=[new z$i.Subject],l=[],A=0;a.next(o[0].asObservable()),n.subscribe(bel.createOperatorSubscriber(a,function(f){var I,C;try{for(var b=_el(o),E=b.next();!E.done;E=b.next()){var N=E.value;N.next(f)}}catch(Q){I={error:Q}}finally{try{E&&!E.done&&(C=b.return)&&C.call(b)}finally{if(I)throw I.error}}var B=A-e+1;if(B>=0&&B%r===0&&o.shift().complete(),++A%r===0){var F=new z$i.Subject;o.push(F),a.next(F.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){l=null,o=null}))})}nxe.windowCount=Eel});var f5r=H(ANt=>{"use strict";Object.defineProperty(ANt,"__esModule",{value:!0});ANt.windowTime=void 0;var Sel=ix(),vel=FV(),Bel=TO(),wel=qg(),Tel=Cd(),Rel=ste(),Nel=ZV(),q$i=ote();function Del(e){for(var t,r,n=[],a=1;a=0?q$i.executeSchedule(I,o,N,l,!0):b=!0,N();var B=function(Q){return C.slice().forEach(Q)},F=function(Q){B(function(X){var ae=X.window;return Q(ae)}),Q(I),I.unsubscribe()};return f.subscribe(Tel.createOperatorSubscriber(I,function(Q){B(function(X){X.window.next(Q),A<=++X.seen&&E(X)})},function(){return F(function(Q){return Q.complete()})},function(Q){return F(function(X){return X.error(Q)})})),function(){C=null}})}ANt.windowTime=Del});var h5r=H(ixe=>{"use strict";var kel=ixe&&ixe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ixe,"__esModule",{value:!0});ixe.windowToggle=void 0;var xel=ix(),Gel=TO(),Fel=qg(),$$i=uh(),I5r=Cd(),ees=rx(),Zel=ste();function Lel(e,t){return Fel.operate(function(r,n){var a=[],o=function(l){for(;0{"use strict";Object.defineProperty(dNt,"__esModule",{value:!0});dNt.windowWhen=void 0;var Vel=ix(),Pel=qg(),tes=Cd(),Wel=uh();function Oel(e){return Pel.operate(function(t,r){var n,a,o=function(A){n.error(A),r.error(A)},l=function(){a?.unsubscribe(),n?.complete(),n=new Vel.Subject,r.next(n.asObservable());var A;try{A=Wel.innerFrom(e())}catch(f){o(f);return}A.subscribe(a=tes.createOperatorSubscriber(r,l,l,o))};l(),t.subscribe(tes.createOperatorSubscriber(r,function(A){return n.next(A)},function(){n.complete(),r.complete()},o,function(){a?.unsubscribe(),n=null}))})}dNt.windowWhen=Oel});var C5r=H(Gle=>{"use strict";var res=Gle&&Gle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},nes=Gle&&Gle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(pNt,"__esModule",{value:!0});pNt.zipAll=void 0;var Uel=bTt(),Kel=t3r();function jel(e){return Kel.joinAllInternals(Uel.zip,e)}pNt.zipAll=jel});var y5r=H(Fle=>{"use strict";var zel=Fle&&Fle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},qel=Fle&&Fle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var rtl=Zle&&Zle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},ntl=Zle&&Zle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";var otl=Cn&&Cn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),atl=Cn&&Cn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&otl(t,e,r)};Object.defineProperty(Cn,"__esModule",{value:!0});Cn.interval=Cn.iif=Cn.generate=Cn.fromEventPattern=Cn.fromEvent=Cn.from=Cn.forkJoin=Cn.empty=Cn.defer=Cn.connectable=Cn.concat=Cn.combineLatest=Cn.bindNodeCallback=Cn.bindCallback=Cn.UnsubscriptionError=Cn.TimeoutError=Cn.SequenceError=Cn.ObjectUnsubscribedError=Cn.NotFoundError=Cn.EmptyError=Cn.ArgumentOutOfRangeError=Cn.firstValueFrom=Cn.lastValueFrom=Cn.isObservable=Cn.identity=Cn.noop=Cn.pipe=Cn.NotificationKind=Cn.Notification=Cn.Subscriber=Cn.Subscription=Cn.Scheduler=Cn.VirtualAction=Cn.VirtualTimeScheduler=Cn.animationFrameScheduler=Cn.animationFrame=Cn.queueScheduler=Cn.queue=Cn.asyncScheduler=Cn.async=Cn.asapScheduler=Cn.asap=Cn.AsyncSubject=Cn.ReplaySubject=Cn.BehaviorSubject=Cn.Subject=Cn.animationFrames=Cn.observable=Cn.ConnectableObservable=Cn.Observable=void 0;Cn.filter=Cn.expand=Cn.exhaustMap=Cn.exhaustAll=Cn.exhaust=Cn.every=Cn.endWith=Cn.elementAt=Cn.distinctUntilKeyChanged=Cn.distinctUntilChanged=Cn.distinct=Cn.dematerialize=Cn.delayWhen=Cn.delay=Cn.defaultIfEmpty=Cn.debounceTime=Cn.debounce=Cn.count=Cn.connect=Cn.concatWith=Cn.concatMapTo=Cn.concatMap=Cn.concatAll=Cn.combineLatestWith=Cn.combineLatestAll=Cn.combineAll=Cn.catchError=Cn.bufferWhen=Cn.bufferToggle=Cn.bufferTime=Cn.bufferCount=Cn.buffer=Cn.auditTime=Cn.audit=Cn.config=Cn.NEVER=Cn.EMPTY=Cn.scheduled=Cn.zip=Cn.using=Cn.timer=Cn.throwError=Cn.range=Cn.race=Cn.partition=Cn.pairs=Cn.onErrorResumeNext=Cn.of=Cn.never=Cn.merge=void 0;Cn.switchMap=Cn.switchAll=Cn.subscribeOn=Cn.startWith=Cn.skipWhile=Cn.skipUntil=Cn.skipLast=Cn.skip=Cn.single=Cn.shareReplay=Cn.share=Cn.sequenceEqual=Cn.scan=Cn.sampleTime=Cn.sample=Cn.refCount=Cn.retryWhen=Cn.retry=Cn.repeatWhen=Cn.repeat=Cn.reduce=Cn.raceWith=Cn.publishReplay=Cn.publishLast=Cn.publishBehavior=Cn.publish=Cn.pluck=Cn.pairwise=Cn.onErrorResumeNextWith=Cn.observeOn=Cn.multicast=Cn.min=Cn.mergeWith=Cn.mergeScan=Cn.mergeMapTo=Cn.mergeMap=Cn.flatMap=Cn.mergeAll=Cn.max=Cn.materialize=Cn.mapTo=Cn.map=Cn.last=Cn.isEmpty=Cn.ignoreElements=Cn.groupBy=Cn.first=Cn.findIndex=Cn.find=Cn.finalize=void 0;Cn.zipWith=Cn.zipAll=Cn.withLatestFrom=Cn.windowWhen=Cn.windowToggle=Cn.windowTime=Cn.windowCount=Cn.window=Cn.toArray=Cn.timestamp=Cn.timeoutWith=Cn.timeout=Cn.timeInterval=Cn.throwIfEmpty=Cn.throttleTime=Cn.throttle=Cn.tap=Cn.takeWhile=Cn.takeUntil=Cn.takeLast=Cn.take=Cn.switchScan=Cn.switchMapTo=void 0;var ctl=ub();Object.defineProperty(Cn,"Observable",{enumerable:!0,get:function(){return ctl.Observable}});var ltl=F8e();Object.defineProperty(Cn,"ConnectableObservable",{enumerable:!0,get:function(){return ltl.ConnectableObservable}});var utl=x8e();Object.defineProperty(Cn,"observable",{enumerable:!0,get:function(){return utl.observable}});var gtl=Zzi();Object.defineProperty(Cn,"animationFrames",{enumerable:!0,get:function(){return gtl.animationFrames}});var Atl=ix();Object.defineProperty(Cn,"Subject",{enumerable:!0,get:function(){return Atl.Subject}});var dtl=fOr();Object.defineProperty(Cn,"BehaviorSubject",{enumerable:!0,get:function(){return dtl.BehaviorSubject}});var ptl=gwt();Object.defineProperty(Cn,"ReplaySubject",{enumerable:!0,get:function(){return ptl.ReplaySubject}});var ftl=Awt();Object.defineProperty(Cn,"AsyncSubject",{enumerable:!0,get:function(){return ftl.AsyncSubject}});var ses=$zi();Object.defineProperty(Cn,"asap",{enumerable:!0,get:function(){return ses.asap}});Object.defineProperty(Cn,"asapScheduler",{enumerable:!0,get:function(){return ses.asapScheduler}});var oes=FV();Object.defineProperty(Cn,"async",{enumerable:!0,get:function(){return oes.async}});Object.defineProperty(Cn,"asyncScheduler",{enumerable:!0,get:function(){return oes.asyncScheduler}});var aes=rqi();Object.defineProperty(Cn,"queue",{enumerable:!0,get:function(){return aes.queue}});Object.defineProperty(Cn,"queueScheduler",{enumerable:!0,get:function(){return aes.queueScheduler}});var ces=oqi();Object.defineProperty(Cn,"animationFrame",{enumerable:!0,get:function(){return ces.animationFrame}});Object.defineProperty(Cn,"animationFrameScheduler",{enumerable:!0,get:function(){return ces.animationFrameScheduler}});var les=lqi();Object.defineProperty(Cn,"VirtualTimeScheduler",{enumerable:!0,get:function(){return les.VirtualTimeScheduler}});Object.defineProperty(Cn,"VirtualAction",{enumerable:!0,get:function(){return les.VirtualAction}});var Itl=hOr();Object.defineProperty(Cn,"Scheduler",{enumerable:!0,get:function(){return Itl.Scheduler}});var htl=TO();Object.defineProperty(Cn,"Subscription",{enumerable:!0,get:function(){return htl.Subscription}});var mtl=mke();Object.defineProperty(Cn,"Subscriber",{enumerable:!0,get:function(){return mtl.Subscriber}});var ues=Vwt();Object.defineProperty(Cn,"Notification",{enumerable:!0,get:function(){return ues.Notification}});Object.defineProperty(Cn,"NotificationKind",{enumerable:!0,get:function(){return ues.NotificationKind}});var Ctl=G8e();Object.defineProperty(Cn,"pipe",{enumerable:!0,get:function(){return Ctl.pipe}});var _tl=rx();Object.defineProperty(Cn,"noop",{enumerable:!0,get:function(){return _tl.noop}});var ytl=nx();Object.defineProperty(Cn,"identity",{enumerable:!0,get:function(){return ytl.identity}});var btl=Bqi();Object.defineProperty(Cn,"isObservable",{enumerable:!0,get:function(){return btl.isObservable}});var Etl=wqi();Object.defineProperty(Cn,"lastValueFrom",{enumerable:!0,get:function(){return Etl.lastValueFrom}});var Stl=Tqi();Object.defineProperty(Cn,"firstValueFrom",{enumerable:!0,get:function(){return Stl.firstValueFrom}});var vtl=kOr();Object.defineProperty(Cn,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return vtl.ArgumentOutOfRangeError}});var Btl=mle();Object.defineProperty(Cn,"EmptyError",{enumerable:!0,get:function(){return Btl.EmptyError}});var wtl=xOr();Object.defineProperty(Cn,"NotFoundError",{enumerable:!0,get:function(){return wtl.NotFoundError}});var Ttl=gOr();Object.defineProperty(Cn,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return Ttl.ObjectUnsubscribedError}});var Rtl=GOr();Object.defineProperty(Cn,"SequenceError",{enumerable:!0,get:function(){return Rtl.SequenceError}});var Ntl=P8e();Object.defineProperty(Cn,"TimeoutError",{enumerable:!0,get:function(){return Ntl.TimeoutError}});var Dtl=$Wr();Object.defineProperty(Cn,"UnsubscriptionError",{enumerable:!0,get:function(){return Dtl.UnsubscriptionError}});var ktl=Nqi();Object.defineProperty(Cn,"bindCallback",{enumerable:!0,get:function(){return ktl.bindCallback}});var xtl=Dqi();Object.defineProperty(Cn,"bindNodeCallback",{enumerable:!0,get:function(){return xtl.bindNodeCallback}});var Gtl=$wt();Object.defineProperty(Cn,"combineLatest",{enumerable:!0,get:function(){return Gtl.combineLatest}});var Ftl=O8e();Object.defineProperty(Cn,"concat",{enumerable:!0,get:function(){return Ftl.concat}});var Ztl=Pqi();Object.defineProperty(Cn,"connectable",{enumerable:!0,get:function(){return Ztl.connectable}});var Ltl=M8e();Object.defineProperty(Cn,"defer",{enumerable:!0,get:function(){return Ltl.defer}});var Vtl=x4();Object.defineProperty(Cn,"empty",{enumerable:!0,get:function(){return Vtl.empty}});var Ptl=Wqi();Object.defineProperty(Cn,"forkJoin",{enumerable:!0,get:function(){return Ptl.forkJoin}});var Wtl=ate();Object.defineProperty(Cn,"from",{enumerable:!0,get:function(){return Wtl.from}});var Otl=Mqi();Object.defineProperty(Cn,"fromEvent",{enumerable:!0,get:function(){return Otl.fromEvent}});var Mtl=Yqi();Object.defineProperty(Cn,"fromEventPattern",{enumerable:!0,get:function(){return Mtl.fromEventPattern}});var Htl=Xqi();Object.defineProperty(Cn,"generate",{enumerable:!0,get:function(){return Htl.generate}});var Ytl=Jqi();Object.defineProperty(Cn,"iif",{enumerable:!0,get:function(){return Ytl.iif}});var Qtl=WOr();Object.defineProperty(Cn,"interval",{enumerable:!0,get:function(){return Qtl.interval}});var Xtl=Kqi();Object.defineProperty(Cn,"merge",{enumerable:!0,get:function(){return Xtl.merge}});var Jtl=OOr();Object.defineProperty(Cn,"never",{enumerable:!0,get:function(){return Jtl.never}});var Utl=Zwt();Object.defineProperty(Cn,"of",{enumerable:!0,get:function(){return Utl.of}});var Ktl=MOr();Object.defineProperty(Cn,"onErrorResumeNext",{enumerable:!0,get:function(){return Ktl.onErrorResumeNext}});var jtl=zqi();Object.defineProperty(Cn,"pairs",{enumerable:!0,get:function(){return jtl.pairs}});var ztl=e$i();Object.defineProperty(Cn,"partition",{enumerable:!0,get:function(){return ztl.partition}});var qtl=YOr();Object.defineProperty(Cn,"race",{enumerable:!0,get:function(){return qtl.race}});var $tl=n$i();Object.defineProperty(Cn,"range",{enumerable:!0,get:function(){return $tl.range}});var erl=DOr();Object.defineProperty(Cn,"throwError",{enumerable:!0,get:function(){return erl.throwError}});var trl=ble();Object.defineProperty(Cn,"timer",{enumerable:!0,get:function(){return trl.timer}});var rrl=i$i();Object.defineProperty(Cn,"using",{enumerable:!0,get:function(){return rrl.using}});var nrl=bTt();Object.defineProperty(Cn,"zip",{enumerable:!0,get:function(){return nrl.zip}});var irl=NOr();Object.defineProperty(Cn,"scheduled",{enumerable:!0,get:function(){return irl.scheduled}});var srl=x4();Object.defineProperty(Cn,"EMPTY",{enumerable:!0,get:function(){return srl.EMPTY}});var orl=OOr();Object.defineProperty(Cn,"NEVER",{enumerable:!0,get:function(){return orl.NEVER}});atl(o$i(),Cn);var arl=Ike();Object.defineProperty(Cn,"config",{enumerable:!0,get:function(){return arl.config}});var crl=STt();Object.defineProperty(Cn,"audit",{enumerable:!0,get:function(){return crl.audit}});var lrl=QOr();Object.defineProperty(Cn,"auditTime",{enumerable:!0,get:function(){return lrl.auditTime}});var url=XOr();Object.defineProperty(Cn,"buffer",{enumerable:!0,get:function(){return url.buffer}});var grl=UOr();Object.defineProperty(Cn,"bufferCount",{enumerable:!0,get:function(){return grl.bufferCount}});var Arl=KOr();Object.defineProperty(Cn,"bufferTime",{enumerable:!0,get:function(){return Arl.bufferTime}});var drl=zOr();Object.defineProperty(Cn,"bufferToggle",{enumerable:!0,get:function(){return drl.bufferToggle}});var prl=qOr();Object.defineProperty(Cn,"bufferWhen",{enumerable:!0,get:function(){return prl.bufferWhen}});var frl=$Or();Object.defineProperty(Cn,"catchError",{enumerable:!0,get:function(){return frl.catchError}});var Irl=r3r();Object.defineProperty(Cn,"combineAll",{enumerable:!0,get:function(){return Irl.combineAll}});var hrl=FTt();Object.defineProperty(Cn,"combineLatestAll",{enumerable:!0,get:function(){return hrl.combineLatestAll}});var mrl=i3r();Object.defineProperty(Cn,"combineLatestWith",{enumerable:!0,get:function(){return mrl.combineLatestWith}});var Crl=W8e();Object.defineProperty(Cn,"concatAll",{enumerable:!0,get:function(){return Crl.concatAll}});var _rl=VTt();Object.defineProperty(Cn,"concatMap",{enumerable:!0,get:function(){return _rl.concatMap}});var yrl=s3r();Object.defineProperty(Cn,"concatMapTo",{enumerable:!0,get:function(){return yrl.concatMapTo}});var brl=a3r();Object.defineProperty(Cn,"concatWith",{enumerable:!0,get:function(){return brl.concatWith}});var Erl=H8e();Object.defineProperty(Cn,"connect",{enumerable:!0,get:function(){return Erl.connect}});var Srl=c3r();Object.defineProperty(Cn,"count",{enumerable:!0,get:function(){return Srl.count}});var vrl=l3r();Object.defineProperty(Cn,"debounce",{enumerable:!0,get:function(){return vrl.debounce}});var Brl=u3r();Object.defineProperty(Cn,"debounceTime",{enumerable:!0,get:function(){return Brl.debounceTime}});var wrl=jke();Object.defineProperty(Cn,"defaultIfEmpty",{enumerable:!0,get:function(){return wrl.defaultIfEmpty}});var Trl=g3r();Object.defineProperty(Cn,"delay",{enumerable:!0,get:function(){return Trl.delay}});var Rrl=qTt();Object.defineProperty(Cn,"delayWhen",{enumerable:!0,get:function(){return Rrl.delayWhen}});var Nrl=A3r();Object.defineProperty(Cn,"dematerialize",{enumerable:!0,get:function(){return Nrl.dematerialize}});var Drl=d3r();Object.defineProperty(Cn,"distinct",{enumerable:!0,get:function(){return Drl.distinct}});var krl=nRt();Object.defineProperty(Cn,"distinctUntilChanged",{enumerable:!0,get:function(){return krl.distinctUntilChanged}});var xrl=p3r();Object.defineProperty(Cn,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return xrl.distinctUntilKeyChanged}});var Grl=f3r();Object.defineProperty(Cn,"elementAt",{enumerable:!0,get:function(){return Grl.elementAt}});var Frl=I3r();Object.defineProperty(Cn,"endWith",{enumerable:!0,get:function(){return Frl.endWith}});var Zrl=h3r();Object.defineProperty(Cn,"every",{enumerable:!0,get:function(){return Zrl.every}});var Lrl=m3r();Object.defineProperty(Cn,"exhaust",{enumerable:!0,get:function(){return Lrl.exhaust}});var Vrl=gRt();Object.defineProperty(Cn,"exhaustAll",{enumerable:!0,get:function(){return Vrl.exhaustAll}});var Prl=lRt();Object.defineProperty(Cn,"exhaustMap",{enumerable:!0,get:function(){return Prl.exhaustMap}});var Wrl=C3r();Object.defineProperty(Cn,"expand",{enumerable:!0,get:function(){return Wrl.expand}});var Orl=ute();Object.defineProperty(Cn,"filter",{enumerable:!0,get:function(){return Orl.filter}});var Mrl=_3r();Object.defineProperty(Cn,"finalize",{enumerable:!0,get:function(){return Mrl.finalize}});var Hrl=fRt();Object.defineProperty(Cn,"find",{enumerable:!0,get:function(){return Hrl.find}});var Yrl=y3r();Object.defineProperty(Cn,"findIndex",{enumerable:!0,get:function(){return Yrl.findIndex}});var Qrl=b3r();Object.defineProperty(Cn,"first",{enumerable:!0,get:function(){return Qrl.first}});var Xrl=E3r();Object.defineProperty(Cn,"groupBy",{enumerable:!0,get:function(){return Xrl.groupBy}});var Jrl=UTt();Object.defineProperty(Cn,"ignoreElements",{enumerable:!0,get:function(){return Jrl.ignoreElements}});var Url=S3r();Object.defineProperty(Cn,"isEmpty",{enumerable:!0,get:function(){return Url.isEmpty}});var Krl=v3r();Object.defineProperty(Cn,"last",{enumerable:!0,get:function(){return Krl.last}});var jrl=lte();Object.defineProperty(Cn,"map",{enumerable:!0,get:function(){return jrl.map}});var zrl=jTt();Object.defineProperty(Cn,"mapTo",{enumerable:!0,get:function(){return zrl.mapTo}});var qrl=w3r();Object.defineProperty(Cn,"materialize",{enumerable:!0,get:function(){return qrl.materialize}});var $rl=T3r();Object.defineProperty(Cn,"max",{enumerable:!0,get:function(){return $rl.max}});var enl=Hke();Object.defineProperty(Cn,"mergeAll",{enumerable:!0,get:function(){return enl.mergeAll}});var tnl=R3r();Object.defineProperty(Cn,"flatMap",{enumerable:!0,get:function(){return tnl.flatMap}});var rnl=Kj();Object.defineProperty(Cn,"mergeMap",{enumerable:!0,get:function(){return rnl.mergeMap}});var nnl=N3r();Object.defineProperty(Cn,"mergeMapTo",{enumerable:!0,get:function(){return nnl.mergeMapTo}});var inl=D3r();Object.defineProperty(Cn,"mergeScan",{enumerable:!0,get:function(){return inl.mergeScan}});var snl=x3r();Object.defineProperty(Cn,"mergeWith",{enumerable:!0,get:function(){return snl.mergeWith}});var onl=G3r();Object.defineProperty(Cn,"min",{enumerable:!0,get:function(){return onl.min}});var anl=Y8e();Object.defineProperty(Cn,"multicast",{enumerable:!0,get:function(){return anl.multicast}});var cnl=Wke();Object.defineProperty(Cn,"observeOn",{enumerable:!0,get:function(){return cnl.observeOn}});var lnl=F3r();Object.defineProperty(Cn,"onErrorResumeNextWith",{enumerable:!0,get:function(){return lnl.onErrorResumeNextWith}});var unl=Z3r();Object.defineProperty(Cn,"pairwise",{enumerable:!0,get:function(){return unl.pairwise}});var gnl=L3r();Object.defineProperty(Cn,"pluck",{enumerable:!0,get:function(){return gnl.pluck}});var Anl=V3r();Object.defineProperty(Cn,"publish",{enumerable:!0,get:function(){return Anl.publish}});var dnl=P3r();Object.defineProperty(Cn,"publishBehavior",{enumerable:!0,get:function(){return dnl.publishBehavior}});var pnl=W3r();Object.defineProperty(Cn,"publishLast",{enumerable:!0,get:function(){return pnl.publishLast}});var fnl=O3r();Object.defineProperty(Cn,"publishReplay",{enumerable:!0,get:function(){return fnl.publishReplay}});var Inl=FRt();Object.defineProperty(Cn,"raceWith",{enumerable:!0,get:function(){return Inl.raceWith}});var hnl=C_e();Object.defineProperty(Cn,"reduce",{enumerable:!0,get:function(){return hnl.reduce}});var mnl=M3r();Object.defineProperty(Cn,"repeat",{enumerable:!0,get:function(){return mnl.repeat}});var Cnl=H3r();Object.defineProperty(Cn,"repeatWhen",{enumerable:!0,get:function(){return Cnl.repeatWhen}});var _nl=Y3r();Object.defineProperty(Cn,"retry",{enumerable:!0,get:function(){return _nl.retry}});var ynl=Q3r();Object.defineProperty(Cn,"retryWhen",{enumerable:!0,get:function(){return ynl.retryWhen}});var bnl=awt();Object.defineProperty(Cn,"refCount",{enumerable:!0,get:function(){return bnl.refCount}});var Enl=ORt();Object.defineProperty(Cn,"sample",{enumerable:!0,get:function(){return Enl.sample}});var Snl=X3r();Object.defineProperty(Cn,"sampleTime",{enumerable:!0,get:function(){return Snl.sampleTime}});var vnl=J3r();Object.defineProperty(Cn,"scan",{enumerable:!0,get:function(){return vnl.scan}});var Bnl=U3r();Object.defineProperty(Cn,"sequenceEqual",{enumerable:!0,get:function(){return Bnl.sequenceEqual}});var wnl=QRt();Object.defineProperty(Cn,"share",{enumerable:!0,get:function(){return wnl.share}});var Tnl=j3r();Object.defineProperty(Cn,"shareReplay",{enumerable:!0,get:function(){return Tnl.shareReplay}});var Rnl=z3r();Object.defineProperty(Cn,"single",{enumerable:!0,get:function(){return Rnl.single}});var Nnl=q3r();Object.defineProperty(Cn,"skip",{enumerable:!0,get:function(){return Nnl.skip}});var Dnl=$3r();Object.defineProperty(Cn,"skipLast",{enumerable:!0,get:function(){return Dnl.skipLast}});var knl=e5r();Object.defineProperty(Cn,"skipUntil",{enumerable:!0,get:function(){return knl.skipUntil}});var xnl=t5r();Object.defineProperty(Cn,"skipWhile",{enumerable:!0,get:function(){return xnl.skipWhile}});var Gnl=r5r();Object.defineProperty(Cn,"startWith",{enumerable:!0,get:function(){return Gnl.startWith}});var Fnl=Oke();Object.defineProperty(Cn,"subscribeOn",{enumerable:!0,get:function(){return Fnl.subscribeOn}});var Znl=n5r();Object.defineProperty(Cn,"switchAll",{enumerable:!0,get:function(){return Znl.switchAll}});var Lnl=txe();Object.defineProperty(Cn,"switchMap",{enumerable:!0,get:function(){return Lnl.switchMap}});var Vnl=i5r();Object.defineProperty(Cn,"switchMapTo",{enumerable:!0,get:function(){return Vnl.switchMapTo}});var Pnl=s5r();Object.defineProperty(Cn,"switchScan",{enumerable:!0,get:function(){return Pnl.switchScan}});var Wnl=zke();Object.defineProperty(Cn,"take",{enumerable:!0,get:function(){return Wnl.take}});var Onl=_Rt();Object.defineProperty(Cn,"takeLast",{enumerable:!0,get:function(){return Onl.takeLast}});var Mnl=o5r();Object.defineProperty(Cn,"takeUntil",{enumerable:!0,get:function(){return Mnl.takeUntil}});var Hnl=a5r();Object.defineProperty(Cn,"takeWhile",{enumerable:!0,get:function(){return Hnl.takeWhile}});var Ynl=c5r();Object.defineProperty(Cn,"tap",{enumerable:!0,get:function(){return Ynl.tap}});var Qnl=aNt();Object.defineProperty(Cn,"throttle",{enumerable:!0,get:function(){return Qnl.throttle}});var Xnl=l5r();Object.defineProperty(Cn,"throttleTime",{enumerable:!0,get:function(){return Xnl.throttleTime}});var Jnl=qke();Object.defineProperty(Cn,"throwIfEmpty",{enumerable:!0,get:function(){return Jnl.throwIfEmpty}});var Unl=u5r();Object.defineProperty(Cn,"timeInterval",{enumerable:!0,get:function(){return Unl.timeInterval}});var Knl=P8e();Object.defineProperty(Cn,"timeout",{enumerable:!0,get:function(){return Knl.timeout}});var jnl=g5r();Object.defineProperty(Cn,"timeoutWith",{enumerable:!0,get:function(){return jnl.timeoutWith}});var znl=A5r();Object.defineProperty(Cn,"timestamp",{enumerable:!0,get:function(){return znl.timestamp}});var qnl=kTt();Object.defineProperty(Cn,"toArray",{enumerable:!0,get:function(){return qnl.toArray}});var $nl=d5r();Object.defineProperty(Cn,"window",{enumerable:!0,get:function(){return $nl.window}});var eil=p5r();Object.defineProperty(Cn,"windowCount",{enumerable:!0,get:function(){return eil.windowCount}});var til=f5r();Object.defineProperty(Cn,"windowTime",{enumerable:!0,get:function(){return til.windowTime}});var ril=h5r();Object.defineProperty(Cn,"windowToggle",{enumerable:!0,get:function(){return ril.windowToggle}});var nil=m5r();Object.defineProperty(Cn,"windowWhen",{enumerable:!0,get:function(){return nil.windowWhen}});var iil=C5r();Object.defineProperty(Cn,"withLatestFrom",{enumerable:!0,get:function(){return iil.withLatestFrom}});var sil=_5r();Object.defineProperty(Cn,"zipAll",{enumerable:!0,get:function(){return sil.zipAll}});var oil=b5r();Object.defineProperty(Cn,"zipWith",{enumerable:!0,get:function(){return oil.zipWith}})});var gte=H(LV=>{"use strict";Object.defineProperty(LV,"__esModule",{value:!0});LV.PathIsFileException=LV.PathIsDirectoryException=LV.FileAlreadyExistException=LV.FileDoesNotExistException=LV.UnknownException=LV.BaseException=void 0;var Lle=class extends Error{constructor(t=""){super(t)}};LV.BaseException=Lle;var E5r=class extends Lle{constructor(t){super(t)}};LV.UnknownException=E5r;var S5r=class extends Lle{constructor(t){super(`Path "${t}" does not exist.`)}};LV.FileDoesNotExistException=S5r;var v5r=class extends Lle{constructor(t){super(`Path "${t}" already exist.`)}};LV.FileAlreadyExistException=v5r;var B5r=class extends Lle{constructor(t){super(`Path "${t}" is a directory.`)}};LV.PathIsDirectoryException=B5r;var w5r=class extends Lle{constructor(t){super(`Path "${t}" is a file.`)}};LV.PathIsFileException=w5r});var Aes=H(__e=>{"use strict";Object.defineProperty(__e,"__esModule",{value:!0});__e.oneLine=ail;__e.indentBy=cil;__e.stripIndent=ges;__e.stripIndents=lil;__e.trimNewlines=uil;function ail(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function cil(e){let t="";for(;e--;)t+=" ";return(r,...n)=>t+ges(r,...n).replace(/\n/g,` -`+t)}function ges(e,...t){let r=String.raw(e,...t),n=r.match(/^[ \t]*(?=\S)/gm);if(n===null)return r;let a=Math.min(...n.map(l=>l.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function lil(e,...t){return String.raw(e,...t).split(` -`).map(r=>r.trim()).join(` -`).trim()}function uil(e,...t){return String.raw(e,...t).replace(/^(?:\r?\n)+/,"").replace(/(?:\r?\n(?:\s*))$/,"")}});var Ies=H(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});Ate.decamelize=des;Ate.dasherize=Iil;Ate.camelize=pes;Ate.classify=hil;Ate.underscore=mil;Ate.capitalize=fes;Ate.levenshtein=Cil;var gil=/[ _]/g,Ail=/([a-z\d])([A-Z])/g,dil=/(-|_|\.|\s)+(.)?/g,pil=/([a-z\d])([A-Z]+)/g,fil=/-|\s+/g;function des(e){return e.replace(Ail,"$1_$2").toLowerCase()}function Iil(e){return des(e).replace(gil,"-")}function pes(e){return e.replace(dil,(t,r,n)=>n?n.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function hil(e){return e.split(".").map(t=>fes(pes(t))).join("")}function mil(e){return e.replace(pil,"$1_$2").replace(fil,"_").toLowerCase()}function fes(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Cil(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let n=0;n<=t.length;n++)r[n]=[n];for(let n=0;n<=e.length;n++)r[0][n]=n;for(let n=1;n<=t.length;n++)for(let a=1;a<=e.length;a++)t.charAt(n-1)==e.charAt(a-1)?r[n][a]=r[n-1][a-1]:r[n][a]=Math.min(r[n-1][a-1]+1,r[n][a-1]+1,r[n-1][a]+1);return r[t.length][e.length]}});var hes=H(R5r=>{"use strict";Object.defineProperty(R5r,"__esModule",{value:!0});R5r.deepCopy=T5r;var fNt=Symbol();function T5r(e){if(Array.isArray(e))return e.map(t=>T5r(t));if(e&&typeof e=="object"){let t=e;if(t[fNt])return t[fNt];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[fNt]=r;for(let n of Object.getOwnPropertyNames(t))r[n]=T5r(t[n]);return delete t[fNt],r}else return e}});var _es=H(Ces=>{var mes="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Ces.encode=function(e){if(0<=e&&e{var _il=_es(),yes=5,bes=1<>>=yes,a>0&&(n|=bil),r+=_il.encode(n);while(a>0);return r}});var X8e=H(UG=>{function Sil(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}UG.getArg=Sil;var Ses=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,vil=/^data:.+\,.+$/;function Q8e(e){let t=e.match(Ses);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}UG.urlParse=Q8e;function sxe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}UG.urlGenerate=sxe;var Bil=32;function wil(e){let t=[];return function(r){for(let a=0;aBil&&t.pop(),n}}var D5r=wil(function(t){let r=t,n=Q8e(t);if(n){if(!n.path)return t;r=n.path}let a=UG.isAbsolute(r),o=[],l=0,A=0;for(;;)if(l=A,A=r.indexOf("/",l),A===-1){o.push(r.slice(l));break}else for(o.push(r.slice(l,A));A=0;A--){let I=o[A];I==="."?o.splice(A,1):I===".."?f++:f>0&&(I===""?(o.splice(A+1,f),f=0):(o.splice(A,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),n?(n.path=r,sxe(n)):r});UG.normalize=D5r;function ves(e,t){e===""&&(e="."),t===""&&(t=".");let r=Q8e(t),n=Q8e(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),sxe(r);if(r||t.match(vil))return t;if(n&&!n.host&&!n.path)return n.host=t,sxe(n);let a=t.charAt(0)==="/"?t:D5r(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,sxe(n)):a}UG.join=ves;UG.isAbsolute=function(e){return e.charAt(0)==="/"||Ses.test(e)};function Til(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}UG.relative=Til;var Bes=function(){return!("__proto__"in Object.create(null))}();function wes(e){return e}function Ril(e){return Tes(e)?"$"+e:e}UG.toSetString=Bes?wes:Ril;function Nil(e){return Tes(e)?e.slice(1):e}UG.fromSetString=Bes?wes:Nil;function Tes(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function Dil(e,t,r){let n=oxe(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:oxe(e.name,t.name)}UG.compareByOriginalPositions=Dil;function kil(e,t,r){let n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=oxe(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:oxe(e.name,t.name)}UG.compareByGeneratedPositionsDeflated=kil;function oxe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function xil(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=oxe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:oxe(e.name,t.name)}UG.compareByGeneratedPositionsInflated=xil;function Gil(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}UG.parseSourceMapInput=Gil;function Fil(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let n=Q8e(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){let a=n.path.lastIndexOf("/");a>=0&&(n.path=n.path.substring(0,a+1))}t=ves(sxe(n),t)}return D5r(t)}UG.computeSourceURL=Fil});var x5r=H(Res=>{var k5r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let n=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var Nes=X8e();function Zil(e,t){let r=e.generatedLine,n=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=a||Nes.compareByGeneratedPositionsInflated(e,t)<=0}var G5r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){Zil(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(Nes.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};Des.MappingList=G5r});var F5r=H(xes=>{var J8e=N5r(),fT=X8e(),INt=x5r().ArraySet,Lil=kes().MappingList,hNt=class e{constructor(t){t||(t={}),this._file=fT.getArg(t,"file",null),this._sourceRoot=fT.getArg(t,"sourceRoot",null),this._skipValidation=fT.getArg(t,"skipValidation",!1),this._sources=new INt,this._names=new INt,this._mappings=new Lil,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=fT.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),n.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=fT.relative(r,a)),n._sources.has(o)||n._sources.add(o);let l=t.sourceContentFor(a);l!=null&&n.setSourceContent(a,l)}),n}addMapping(t){let r=fT.getArg(t,"generated"),n=fT.getArg(t,"original",null),a=fT.getArg(t,"source",null),o=fT.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,n,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:a,name:o})}setSourceContent(t,r){let n=t;this._sourceRoot!=null&&(n=fT.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[fT.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[fT.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,n){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=fT.relative(o,a));let l=this._mappings.toArray().length>0?new INt:this._sources,A=new INt;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let b=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});b.source!=null&&(f.source=b.source,n!=null&&(f.source=fT.join(n,f.source)),o!=null&&(f.source=fT.relative(o,f.source)),f.originalLine=b.line,f.originalColumn=b.column,b.name!=null&&(f.name=b.name))}let I=f.source;I!=null&&!l.has(I)&&l.add(I);let C=f.name;C!=null&&!A.has(C)&&A.add(C)},this),this._sources=l,this._names=A,t.sources.forEach(function(f){let I=t.sourceContentFor(f);I!=null&&(n!=null&&(f=fT.join(n,f)),o!=null&&(f=fT.relative(o,f)),this.setSourceContent(f,I))},this)}_validateMapping(t,r,n,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,n=0,a=0,o=0,l=0,A="",f,I,C,b,E=this._mappings.toArray();for(let N=0,B=E.length;N0){if(!fT.compareByGeneratedPositionsInflated(I,E[N-1]))continue;f+=","}f+=J8e.encode(I.generatedColumn-t),t=I.generatedColumn,I.source!=null&&(b=this._sources.indexOf(I.source),f+=J8e.encode(b-l),l=b,f+=J8e.encode(I.originalLine-1-a),a=I.originalLine-1,f+=J8e.encode(I.originalColumn-n),n=I.originalColumn,I.name!=null&&(C=this._names.indexOf(I.name),f+=J8e.encode(C-o),o=C)),A+=f}return A}_generateSourcesContent(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=fT.relative(r,n));let a=fT.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};hNt.prototype._version=3;xes.SourceMapGenerator=hNt});var Ges=H(y_e=>{y_e.GREATEST_LOWER_BOUND=1;y_e.LEAST_UPPER_BOUND=2;function Z5r(e,t,r,n,a,o){let l=Math.floor((t-e)/2)+e,A=a(r,n[l],!0);return A===0?l:A>0?t-l>1?Z5r(l,t,r,n,a,o):o==y_e.LEAST_UPPER_BOUND?t1?Z5r(e,l,r,n,a,o):o==y_e.LEAST_UPPER_BOUND?l:e<0?-1:e}y_e.search=function(t,r,n,a){if(r.length===0)return-1;let o=Z5r(-1,r.length,t,r,n,a||y_e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var L5r=H((s7u,U8e)=>{var Vil=function(){return typeof window<"u"&&this===window}.call();if(Vil){let e=null;U8e.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},U8e.exports.initialize=t=>e=t}else{let e=wt("fs"),t=wt("path");U8e.exports=function(){return new Promise((n,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(l,A)=>{if(l){a(l);return}n(A.buffer)})})},U8e.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var Zes=H((o7u,Fes)=>{var Pil=L5r();function Wil(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var K8e=null;Fes.exports=function(){if(K8e)return K8e;let t=[];return K8e=Pil().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(n,a,o,l,A,f,I,C,b,E){let N=new Wil;N.generatedLine=n+1,N.generatedColumn=a,o&&(N.lastGeneratedColumn=l-1),A&&(N.source=f,N.originalLine=I+1,N.originalColumn=C,b&&(N.name=E)),t[t.length-1](N)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(n,a)=>{t.push(n);try{a()}finally{t.pop()}}})).then(null,r=>{throw K8e=null,r}),K8e}});var Les=H(_Nt=>{var Jd=X8e(),V5r=Ges(),mNt=x5r().ArraySet,a7u=N5r(),Oil=L5r(),Mil=Zes(),P5r=Symbol("smcInternal"),Jv=class e{constructor(t,r){return t==P5r?Promise.resolve(this):Hil(t,r)}static initialize(t){Oil.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return Yil(t,r)}static async with(t,r,n){let a=await new e(t,r);try{return await n(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,n){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};Jv.prototype._version=3;Jv.GENERATED_ORDER=1;Jv.ORIGINAL_ORDER=2;Jv.GREATEST_LOWER_BOUND=1;Jv.LEAST_UPPER_BOUND=2;_Nt.SourceMapConsumer=Jv;var axe=class e extends Jv{constructor(t,r){return super(P5r).then(n=>{let a=t;typeof t=="string"&&(a=Jd.parseSourceMapInput(t));let o=Jd.getArg(a,"version"),l=Jd.getArg(a,"sources"),A=Jd.getArg(a,"names",[]),f=Jd.getArg(a,"sourceRoot",null),I=Jd.getArg(a,"sourcesContent",null),C=Jd.getArg(a,"mappings"),b=Jd.getArg(a,"file",null);if(o!=n._version)throw new Error("Unsupported version: "+o);return f&&(f=Jd.normalize(f)),l=l.map(String).map(Jd.normalize).map(function(E){return f&&Jd.isAbsolute(f)&&Jd.isAbsolute(E)?Jd.relative(f,E):E}),n._names=mNt.fromArray(A.map(String),!0),n._sources=mNt.fromArray(l,!0),n._absoluteSources=n._sources.toArray().map(function(E){return Jd.computeSourceURL(f,E,r)}),n.sourceRoot=f,n.sourcesContent=I,n._mappings=C,n._sourceMapURL=r,n.file=b,n._computedColumnSpans=!1,n._mappingsPtr=0,n._wasm=null,Mil().then(E=>(n._wasm=E,n))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Jd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let n=0;n{A.source!==null&&(A.source=this._sources.at(A.source),A.source=Jd.computeSourceURL(l,A.source,this._sourceMapURL),A.name!==null&&(A.name=this._names.at(A.name))),t.call(a,A)},()=>{switch(o){case Jv.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case Jv.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Jd.getArg(t,"source"),n=Jd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(n<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(l=>{let A=l.lastGeneratedColumn;this._computedColumnSpans&&A===null&&(A=1/0),o.push({line:l.generatedLine,column:l.generatedColumn,lastColumn:A})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,n-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Jd.getArg(t,"line"),generatedColumn:Jd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let n=Jd.getArg(t,"bias",Jv.GREATEST_LOWER_BOUND);n==null&&(n=Jv.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,n)}),a&&a.generatedLine===r.generatedLine){let o=Jd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Jd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let l=Jd.getArg(a,"name",null);return l!==null&&(l=this._names.at(l)),{source:o,line:Jd.getArg(a,"originalLine",null),column:Jd.getArg(a,"originalColumn",null),name:l}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];let a=t;this.sourceRoot!=null&&(a=Jd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Jd.urlParse(this.sourceRoot))){let l=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(l))return this.sourcesContent[this._sources.indexOf(l)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Jd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let n={source:r,originalLine:Jd.getArg(t,"line"),originalColumn:Jd.getArg(t,"column")};if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Jd.getArg(t,"bias",Jv.GREATEST_LOWER_BOUND);a==null&&(a=Jv.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(l=>o=l,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),n.source,n.originalLine-1,n.originalColumn,a)}),o&&o.source===n.source){let l=o.lastGeneratedColumn;return this._computedColumnSpans&&l===null&&(l=1/0),{line:Jd.getArg(o,"generatedLine",null),column:Jd.getArg(o,"generatedColumn",null),lastColumn:l}}return{line:null,column:null,lastColumn:null}}};axe.prototype.consumer=Jv;_Nt.BasicSourceMapConsumer=axe;var CNt=class extends Jv{constructor(t,r){return super(P5r).then(n=>{let a=t;typeof t=="string"&&(a=Jd.parseSourceMapInput(t));let o=Jd.getArg(a,"version"),l=Jd.getArg(a,"sections");if(o!=n._version)throw new Error("Unsupported version: "+o);n._sources=new mNt,n._names=new mNt,n.__generatedMappings=null,n.__originalMappings=null,n.__generatedMappingsUnsorted=null,n.__originalMappingsUnsorted=null;let A={line:-1,column:0};return Promise.all(l.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let I=Jd.getArg(f,"offset"),C=Jd.getArg(I,"line"),b=Jd.getArg(I,"column");if(C({generatedOffset:{generatedLine:C+1,generatedColumn:b+1},consumer:N}))})).then(f=>(n._sections=f,n))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Jd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Jd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rA.push(f));for(let f=0;f= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",Jd.compareByOriginalPositions,V5r.LEAST_UPPER_BOUND);if(o>=0){let l=this._originalMappings[o];if(t.column===void 0){let A=l.originalLine;for(;l&&l.originalLine===A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Jd.getArg(l,"generatedLine",null),column:Jd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}else{let A=l.originalColumn;for(;l&&l.originalLine===r&&l.originalColumn==A;){let f=l.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Jd.getArg(l,"generatedLine",null),column:Jd.getArg(l,"generatedColumn",null),lastColumn:f}),l=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var Qil=F5r().SourceMapGenerator,yNt=X8e(),Xil=/(\r?\n)/,Jil=10,cxe="$$$isSourceNode$$$",W5r=class e{constructor(t,r,n,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=n??null,this.name=o??null,this[cxe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,n){let a=new e,o=t.split(Xil),l=0,A=function(){let N=F(),B=F()||"";return N+B;function F(){return l=0;r--)this.prepend(t[r]);else if(t[cxe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let n=0,a=this.children.length;n0){for(r=[],n=0;n{bNt.SourceMapGenerator=F5r().SourceMapGenerator;bNt.SourceMapConsumer=Les().SourceMapConsumer;bNt.SourceNode=Pes().SourceNode});var Hes=H(ENt=>{"use strict";Object.defineProperty(ENt,"__esModule",{value:!0});ENt.templateParser=Mes;ENt.template=esl;var iL=Wes(),Uil=/<%=([\s\S]+?)%>/g,Kil=/<%#([\s\S]+?)%>/g,jil=/<%-([\s\S]+?)%>/g,zil=/<%([\s\S]+?)%>/g,O5r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Oes=new RegExp(`[${Object.keys(O5r).join("")}]`,"g");function lxe(e,t){let r=1,n=0;for(let a=0;aC.source).join("|")+"|$","g"),o=e.split(a),l=0,A=lxe(e,l),f,I=n.length+1;for(let C=0;C{switch(a.kind){case"content":return`__p += ${JSON.stringify(a.content)};`;case"interpolate":return`__p += ((__t = (${a.expression})) == null) ? '' : __t;`;case"escape":return`__p += __e(${a.expression});`;case"evaluate":return a.expression}}).join(` -`)} - } - - return __p; - }; - `}function $il(e,t){let r=e.fileName,n=t&&t.module?"module.exports.default =":"",a=Oes.source.replace(/[']/g,"\\\\\\'"),o=new iL.SourceNode(1,0,r,"").add(new iL.SourceNode(1,0,r,[`return ${n} function(obj) { -`,` obj || (obj = {}); -`,` let __t; -`,` let __p = ""; -`,` const __escapes = ${JSON.stringify(O5r)}; -`,` const __escapesre = new RegExp('${a}', 'g'); -`,` -`," const __e = function(s) { "," return s ? s.replace(__escapesre, function(key) { return __escapes[key]; }) : '';",` }; -`,` with (obj) { -`])),l=e.children.length?e.children[e.children.length-1].end:{line:0,column:0},f=e.children.reduce((I,C)=>{let b="";switch(C.kind){case"content":b=[new iL.SourceNode(C.start.line,C.start.column,r,"__p = __p"),...C.content.split(` -`).map((E,N,B)=>new iL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,` - + `+JSON.stringify(E+(N==B.length-1?"":` -`)))),new iL.SourceNode(C.end.line,C.end.column,r,`; -`)];break;case"interpolate":b=[new iL.SourceNode(C.start.line,C.start.column,r,"__p += ((__t = "),...C.expression.split(` -`).map((E,N,B)=>new iL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` -`))),new iL.SourceNode(C.end.line,C.end.column,r,`) == null ? "" : __t); -`)];break;case"escape":b=[new iL.SourceNode(C.start.line,C.start.column,r,"__p += __e("),...C.expression.split(` -`).map((E,N,B)=>new iL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` -`))),new iL.SourceNode(C.end.line,C.end.column,r,`); -`)];break;case"evaluate":b=[...C.expression.split(` -`).map((E,N,B)=>new iL.SourceNode(C.start.line+N,N==0?C.start.column:0,r,E+(N==B.length-1?"":` -`))),new iL.SourceNode(C.end.line,C.end.column,r,` -`)];break}return I.add(new iL.SourceNode(C.start.line,C.start.column,r,b))},o).add(new iL.SourceNode(l.line,l.column,r,[` }; -`,` -`,` return __p; -`,`} -`])).toStringWithSourceMap({file:r,sourceRoot:t&&t.sourceRoot||"."});return f.map.setSourceContent(r,e.content),f.code+` -//# sourceMappingURL=data:application/json;base64,`+Buffer.from(f.map.toString()).toString("base64")}function esl(e,t){let r=t&&t.sourceURL||"ejs",n=Mes(e,r),a;t&&t.sourceMap?a=$il(n,t):a=qil(n,t);let o=Function("module",a),l=t&&t.module?t.module===!0?{exports:{}}:t.module:null,A=o(l);return A.source=a,A}});var Qes=H(Vle=>{"use strict";Object.defineProperty(Vle,"__esModule",{value:!0});Vle.PartiallyOrderedSet=Vle.CircularDependencyFoundException=Vle.DependencyNotFoundException=void 0;var Yes=gte(),SNt=class extends Yes.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};Vle.DependencyNotFoundException=SNt;var j8e=class extends Yes.BaseException{constructor(){super("Circular dependencies found.")}};Vle.CircularDependencyFoundException=j8e;var M5r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new j8e;r.forEach(n=>this._checkCircularDependencies(t,this._items.get(n)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let n of this)t.call(r,n,n,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let n=this._items.get(t)||new Set,a=!0;for(let o of r)if(!n.has(o)){a=!1;break}if(a){for(let o of n)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let n of r)if(!this._items.has(n))throw new SNt;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,n]of t.entries())t.set(r,new Set(n));for(;t.size>0;){let r=[];for(let[n,a]of t.entries())a.size==0&&r.push(n);for(let n of r)t.forEach(a=>a.delete(n)),t.delete(n),yield n;if(r.length==0)throw new j8e}}get[Symbol.toStringTag](){return"Set"}};Vle.PartiallyOrderedSet=M5r});var Xes=H(vNt=>{"use strict";Object.defineProperty(vNt,"__esModule",{value:!0});vNt.PriorityQueue=void 0;var H5r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(n=>this._comparator(t,n)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};vNt.PriorityQueue=H5r});var Jes=H(Y5r=>{"use strict";Object.defineProperty(Y5r,"__esModule",{value:!0});Y5r.isPromise=tsl;function tsl(e){return!!e&&typeof e.then=="function"}});var Q5r=H(ZR=>{"use strict";var Ues=ZR&&ZR.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rsl=ZR&&ZR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Kes=ZR&&ZR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(BNt,"__esModule",{value:!0});BNt.visitJson=ssl;BNt.visitJsonSchema=osl;var KG=qb(),Ple=aPr();function jes(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function X5r(e,t,r,n,a,o,l){if((n===!0||n===!1)&&(n=void 0),n&&n.hasOwnProperty("$ref")&&typeof n.$ref=="string"&&a){let f=a(n.$ref,o);n=f.schema,o=f.context}let A=t(e,r,n,l);return((0,KG.isObservable)(A)?A:(0,KG.of)(A)).pipe((0,KG.concatMap)(f=>Array.isArray(f)?(0,KG.concat)((0,KG.from)(f).pipe((0,KG.mergeMap)((I,C)=>X5r(I,t,(0,Ple.joinJsonPointer)(r,""+C),jes(n,""+C),a,o,l||f).pipe((0,KG.tap)(b=>f[C]=b))),(0,KG.ignoreElements)()),(0,KG.of)(f)):typeof f=="object"&&f!==null?(0,KG.concat)((0,KG.from)(Object.getOwnPropertyNames(f)).pipe((0,KG.mergeMap)(I=>X5r(f[I],t,(0,Ple.joinJsonPointer)(r,I),jes(n,I),a,o,l||f).pipe((0,KG.tap)(C=>{let b=Object.getOwnPropertyDescriptor(f,I);b&&b.writable&&f[I]!==C&&(f[I]=C)}))),(0,KG.ignoreElements)()),(0,KG.of)(f)):(0,KG.of)(f)))}function ssl(e,t,r,n,a){return X5r(e,t,(0,Ple.buildJsonPointer)([]),r,n,a)}function osl(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},n={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(l,A,f,I,C){if(l&&typeof l=="object"&&!Array.isArray(l)){t(l,A,I,C);for(let b of Object.keys(l)){let E=l[b];if(b in a){if(E&&typeof E=="object")for(let N of Object.keys(E))o(E[N],(0,Ple.joinJsonPointer)(A,b,N),f,l,N)}else if(b in r)o(E,(0,Ple.joinJsonPointer)(A,b),f,l,b);else if(b in n){if(Array.isArray(E))for(let N=0;N{"use strict";var asl=VV&&VV.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),csl=VV&&VV.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),q5r=VV&&VV.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=`Data path ${JSON.stringify(n.instancePath)} ${n.message}`;if(n.params)switch(n.keyword){case"additionalProperties":a+=`(${n.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${n.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};VV.SchemaValidationException=j5r;var z5r=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new K5r.PartiallyOrderedSet;_post=new K5r.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new U5r.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,lsl.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let n of this._uriHandlers){let a=n(t);if(a==null)continue;(0,dte.isObservable)(a)&&(a=(0,dte.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((n,a)=>{let o=new zes.URL(t);(o.protocol==="https:"?gsl:usl).get(o,A=>{if(!A.statusCode||A.statusCode>=300)A.resume(),a(new Error(`Request failed. Status Code: ${A.statusCode}`));else{A.setEncoding("utf8");let f="";A.on("data",I=>{f+=I}),A.on("end",()=>{try{let I=JSON.parse(f);this._uriCache.set(t,I),n(I)}catch(I){a(I)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let n=r.schemaEnv.root.schema,a=typeof n=="object"?n.$id:null,o=t;typeof a=="string"&&(o=zes.resolve(a,t),t.startsWith("#")&&(o=a+o));let l=this._ajv.getSchema(o);return{context:l?.schemaEnv.validate,schema:l?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),n=this;function a(l,A,f,I){if(l&&f&&I&&(0,dsl.isJsonObject)(l)&&Object.prototype.hasOwnProperty.call(l,"$ref")&&typeof l.$ref=="string"){let C=n._resolver(l.$ref,r);C.schema&&(f[I]=C.schema)}}let o=(0,K5r.deepCopy)(r.schema);return(0,wNt.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(n,a)=>r(n,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let n;try{this._currentCompilationSchemaInfo=r,n=this._ajv.compile(t)}catch(a){if(!(a instanceof U5r.default.MissingRefError))throw a;n=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let l={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},A={promptFieldsWithValue:new Set};if(l.applyPreTransforms)for(let f of this._pre.values())a=await(0,dte.lastValueFrom)((0,wNt.visitJson)(a,f,t,this._resolver.bind(this),n));if(await this._applySmartDefaults(a,r.smartDefaultRecord),l.withPrompts){let f=(C,b)=>(C!==void 0&&A.promptFieldsWithValue.add(b),C);typeof t=="object"&&await(0,dte.lastValueFrom)((0,wNt.visitJson)(a,f,t,this._resolver.bind(this),n));let I=r.promptDefinitions.filter(C=>!A.promptFieldsWithValue.has(C.id));I.length>0&&await this._applyPrompts(a,I)}try{let f=await n.call(A,a);if(!f)return{data:a,success:f,errors:n.errors??[]}}catch(f){if(f instanceof U5r.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(l.applyPostTransforms)for(let f of this._post.values())a=await(0,dte.lastValueFrom)((0,wNt.visitJson)(a,f,t,this._resolver.bind(this),n));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(l===void 0)return()=>!0;let A=this.normalizeDataPathArr(o);return l.smartDefaultRecord.set(JSON.stringify(A),n),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(n,a,o)=>{let l=this._currentCompilationSchemaInfo;if(!l)return()=>!0;let A="/"+this.normalizeDataPathArr(o).join("/"),f,I,C;typeof n=="string"?C=n:(C=n.message,f=n.type,I=n.items);let b=(0,psl.getTypesOfSchema)(a);f||(b.size===1&&b.has("boolean")?f="confirmation":Array.isArray(a.enum)||b.size===1&&b.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let E;if(f==="list"){E=n.multiselect===void 0?b.size===1&&b.has("array"):n.multiselect;let B=E?a.items&&a.items.enum:a.enum;if(!I&&Array.isArray(B)){I=[];for(let F of B)typeof F=="string"?I.push(F):typeof F=="object"||I.push({label:F.toString(),value:F})}}let N={id:A,type:f,message:C,raw:n,items:I,multiselect:E,propertyTypes:b,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(B){try{let F=await o.self.validate(a,B);if(F)return F;if(o.self.errors?.length)return o.self.errors[0].message}catch(F){let Q=F;if(Array.isArray(Q.errors)&&Q.errors.length)return Q.errors[0].message}return!1}};return l.promptDefinitions.push(N),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(A),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let n=this._promptProvider;if(!n)return;let a=await(0,dte.lastValueFrom)((0,dte.from)(n(r)));for(let o in a){let l=o.split("/").slice(1);e._set(t,l,a[o],null,void 0,!0)}}static _set(t,r,n,a=null,o,l){for(let A=0;A(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};VV.CoreSchemaRegistry=z5r});var ets=H(TNt=>{"use strict";Object.defineProperty(TNt,"__esModule",{value:!0});TNt.isJsonSchema=Isl;TNt.mergeSchemas=hsl;var fsl=$Ce();function Isl(e){return(0,fsl.isJsonObject)(e)||e===!1||e===!0}function hsl(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var rts=H(ID=>{"use strict";var tts=ID&&ID.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),msl=ID&&ID.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Csl=ID&&ID.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var nts=RO&&RO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ysl=RO&&RO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bsl=RO&&RO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(NNt,"__esModule",{value:!0});NNt.Logger=void 0;var $5r=qb(),eMr=class extends $5r.Observable{name;parent;_subject=new $5r.Subject;_metadata;_obs=$5r.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let n=[],a=r;for(;a;)n.push(a.name),a=a.parent;this._metadata={name:t,path:n},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,n)=>this.log(t,r,n),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,n={}){let a=Object.assign({},n,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,n){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};NNt.Logger=eMr});var its=H(DNt=>{"use strict";Object.defineProperty(DNt,"__esModule",{value:!0});DNt.IndentLogger=void 0;var vsl=qb(),Bsl=gxe(),tMr={},rMr=class extends Bsl.Logger{constructor(t,r=null,n=" "){super(t,r),tMr[n]=tMr[n]||[""];let a=tMr[n];this._observable=this._observable.pipe((0,vsl.map)(o=>{let l=o.path.filter(A=>!!A).length;if(l>=a.length){let A=a[a.length-1];for(;l>=a.length;)A+=n,a.push(A)}return o.message=a[l]+o.message.split(/\n/).join(` -`+a[l]),o}))}};DNt.IndentLogger=rMr});var sts=H(Axe=>{"use strict";Object.defineProperty(Axe,"__esModule",{value:!0});Axe.LevelCapLogger=Axe.LevelTransformLogger=void 0;var wsl=gxe(),kNt=class e extends wsl.Logger{name;parent;levelTransform;constructor(t,r=null,n){super(t,r),this.name=t,this.parent=r,this.levelTransform=n}log(t,r,n={}){return super.log(this.levelTransform(t),r,n)}createChild(t){return new e(t,this,this.levelTransform)}};Axe.LevelTransformLogger=kNt;var nMr=class e extends kNt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,n){super(t,r,a=>e.levelMap[n][a]||a),this.name=t,this.parent=r,this.levelCap=n}};Axe.LevelCapLogger=nMr});var ots=H(xNt=>{"use strict";Object.defineProperty(xNt,"__esModule",{value:!0});xNt.NullLogger=void 0;var Tsl=qb(),Rsl=gxe(),iMr=class e extends Rsl.Logger{constructor(t=null){super("",t),this._observable=Tsl.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};xNt.NullLogger=iMr});var ats=H(GNt=>{"use strict";Object.defineProperty(GNt,"__esModule",{value:!0});GNt.TransformLogger=void 0;var Nsl=gxe(),sMr=class extends Nsl.Logger{constructor(t,r,n=null){super(t,n),this._observable=r(this._observable)}};GNt.TransformLogger=sMr});var cts=H(G4=>{"use strict";var Dsl=G4&&G4.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),q8e=G4&&G4.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Dsl(t,e,r)};Object.defineProperty(G4,"__esModule",{value:!0});q8e(its(),G4);q8e(sts(),G4);q8e(gxe(),G4);q8e(ots(),G4);q8e(ats(),G4)});var aMr=H(dxe=>{"use strict";Object.defineProperty(dxe,"__esModule",{value:!0});dxe.TargetDefinitionCollection=dxe.ProjectDefinitionCollection=void 0;var FNt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((n,a)=>t(n,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function lts(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!lts(r))return!1;return!0;default:return!1}}var oMr=class extends FNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new ZNt,extensions:{}};if(t.targets)for(let[n,a]of Object.entries(t.targets))a&&r.targets.set(n,a);for(let[n,a]of Object.entries(t))switch(n){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(lts(a))r.extensions[n]=a;else throw new TypeError(`"${n}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};dxe.ProjectDefinitionCollection=oMr;var ZNt=class extends FNt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};dxe.TargetDefinitionCollection=ZNt});var pxe=H(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.path=FI.NormalizedRoot=FI.NormalizedSep=FI.PathCannotBeFragmentException=FI.PathMustBeAbsoluteException=FI.InvalidPathException=void 0;FI.split=cMr;FI.extname=ksl;FI.basename=uts;FI.dirname=xsl;FI.join=gts;FI.isAbsolute=PNt;FI.relative=Gsl;FI.resolve=Fsl;FI.fragment=WNt;FI.resetNormalizeCache=Zsl;FI.normalize=eje;FI.noCacheNormalize=Ats;FI.asWindowsPath=dts;FI.asPosixPath=Vsl;FI.getSystemPath=Psl;var uMr=gte(),LNt=class extends uMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};FI.InvalidPathException=LNt;var $8e=class extends uMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};FI.PathMustBeAbsoluteException=$8e;var VNt=class extends uMr.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};FI.PathCannotBeFragmentException=VNt;FI.NormalizedSep="/";FI.NormalizedRoot=FI.NormalizedSep;function cMr(e){let t=e.split(FI.NormalizedSep).map(r=>WNt(r));return t[t.length-1].length===0&&t.pop(),t}function ksl(e){let t=uts(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function uts(e){return e.lastIndexOf(FI.NormalizedSep)==-1?WNt(e):WNt(e.slice(e.lastIndexOf(FI.NormalizedSep)+1))}function xsl(e){let t=e.lastIndexOf(FI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return eje(e.slice(0,r))}function gts(e,...t){return t.length>0?eje((e?e+FI.NormalizedSep:"")+t.join(FI.NormalizedSep)):e}function PNt(e){return e.startsWith(FI.NormalizedSep)}function Gsl(e,t){if(!PNt(e))throw new $8e(e);if(!PNt(t))throw new $8e(t);let r;if(e==t)r="";else{let n=cMr(e),a=cMr(t);for(;n.length>0&&a.length>0&&n[0]==a[0];)n.shift(),a.shift();n.length==0?r=a.join(FI.NormalizedSep):r=n.map(()=>"..").concat(a).join(FI.NormalizedSep)}return eje(r)}function Fsl(e,t){return PNt(t)?t:gts(e,t)}function WNt(e){if(e.indexOf(FI.NormalizedSep)!=-1)throw new VNt(e);return e}var lMr=new Map;function Zsl(){lMr=new Map}function eje(e){let t=lMr.get(e);return t||(t=Ats(e),lMr.set(e,t)),t}function Ats(e){if(e==""||e==".")return"";if(e==FI.NormalizedRoot)return FI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),n=!1,a=1;for(r[0]!=""&&(r.unshift("."),n=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?FI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(FI.NormalizedSep))}var Lsl=(e,...t)=>eje(String.raw(e,...t));FI.path=Lsl;function dts(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function Vsl(e){return e}function Psl(e){return process.platform.startsWith("win32")?dts(e):e}});var gMr=H(ONt=>{"use strict";Object.defineProperty(ONt,"__esModule",{value:!0});ONt.stringToFileBuffer=Wsl;ONt.fileBufferToString=Osl;var pts=wt("node:util");function Wsl(e){return new pts.TextEncoder().encode(e).buffer}function Osl(e){return e.toString.length===1?e.toString("utf-8"):new pts.TextDecoder("utf-8").decode(new Uint8Array(e))}});var AMr=H(MNt=>{"use strict";Object.defineProperty(MNt,"__esModule",{value:!0});MNt.HostWatchEventType=void 0;var fts;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})(fts||(MNt.HostWatchEventType=fts={}))});var YNt=H(HNt=>{"use strict";Object.defineProperty(HNt,"__esModule",{value:!0});HNt.SimpleMemoryHost=void 0;var zj=qb(),pte=gte(),aw=pxe(),fxe=AMr(),dMr=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,aw.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,aw.isAbsolute)(t)?t:(0,aw.normalize)("/"+t)}_updateWatchers(t,r){let n=new Date,a=t,o=null;if(this._watchers.size==0)return;let l=this._watchers.get(a);l&&l.forEach(A=>{let[f,I]=A;I.next({path:t,time:n,type:r}),!f.persistent&&r==fxe.HostWatchEventType.Deleted&&(I.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,aw.dirname)(a);let A=this._watchers.get(a);A&&A.forEach(f=>{let[I,C]=f;I.recursive&&(C.next({path:t,time:n,type:r}),!I.persistent&&r==fxe.HostWatchEventType.Deleted&&(C.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let n=this._cache.get(t);if(n&&n.isDirectory())throw new pte.PathIsDirectoryException(t);let a=(0,aw.split)(t),o=(0,aw.normalize)("/");for(let A of a){o=(0,aw.join)(o,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new pte.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let l=this._newFileStats(r,n);this._cache.set(t,l),this._updateWatchers(t,n?fxe.HostWatchEventType.Changed:fxe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new pte.PathIsDirectoryException(t);if(r.content)return r.content;throw new pte.PathIsDirectoryException(t)}else throw new pte.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+aw.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,fxe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new pte.FileAlreadyExistException(r)}else throw new pte.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let n of this._cache.keys())if(n.startsWith(t+aw.NormalizedSep)){let a=this._cache.get(n);a&&this._cache.set((0,aw.join)(r,aw.NormalizedSep,n.slice(t.length)),a)}}else{let n=this._cache.get(t);if(n){let a=(0,aw.split)(r),o=[],l=(0,aw.normalize)("/");for(let A of a){l=(0,aw.join)(l,A);let f=this._cache.get(A);if(f){if(f.isFile())throw new pte.PathIsFileException(l)}else o.push(l)}for(let A of o)this._cache.set(A,this._newDirStats());this._cache.delete(t),this._cache.set(r,n)}}this._updateWatchers(t,fxe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new pte.PathIsFileException(t);let r=(0,aw.split)(t),n=new Set;if(t!==aw.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+aw.NormalizedSep)&&n.add((0,aw.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(aw.NormalizedSep)&&a!==aw.NormalizedRoot&&n.add((0,aw.split)(a)[1]);return[...n]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let n=new zj.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},n]),n.asObservable()}write(t,r){return new zj.Observable(n=>{this._write(t,r),n.next(),n.complete()})}read(t){return new zj.Observable(r=>{let n=this._read(t);r.next(n),r.complete()})}delete(t){return new zj.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new zj.Observable(n=>{this._rename(t,r),n.next(),n.complete()})}list(t){return new zj.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new zj.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new zj.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new zj.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new zj.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};HNt.SimpleMemoryHost=dMr});var fMr=H(Ixe=>{"use strict";Object.defineProperty(Ixe,"__esModule",{value:!0});Ixe.SyncDelegateHost=Ixe.SynchronousDelegateExpectedException=void 0;var Msl=gte(),tje=class extends Msl.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};Ixe.SynchronousDelegateExpectedException=tje;var pMr=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new tje}_doSyncCall(t){let r=!1,n,a;if(t.subscribe(o=>n=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new tje;return n}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};Ixe.SyncDelegateHost=pMr});var Its=H(QNt=>{"use strict";Object.defineProperty(QNt,"__esModule",{value:!0});QNt.TestHost=void 0;var fte=pxe(),IMr=gMr(),Hsl=YNt(),Ysl=fMr(),hMr=class e extends Hsl.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,fte.normalize)(r),(0,IMr.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(n){return t.list(n).map(a=>(0,fte.join)(n,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,fte.normalize)("/"))}get sync(){return this._sync||(this._sync=new Ysl.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,fte.normalize)(t),(0,IMr.stringToFileBuffer)(r))}$read(t){return(0,IMr.fileBufferToString)(super._read((0,fte.normalize)(t)))}$list(t){return super._list((0,fte.normalize)(t))}$exists(t){return super._exists((0,fte.normalize)(t))}$isDirectory(t){return super._isDirectory((0,fte.normalize)(t))}$isFile(t){return super._isFile((0,fte.normalize)(t))}};QNt.TestHost=hMr});var rje=H(XNt=>{"use strict";Object.defineProperty(XNt,"__esModule",{value:!0});XNt.ResolverHost=void 0;var mMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};XNt.ResolverHost=mMr});var hts=H(UNt=>{"use strict";Object.defineProperty(UNt,"__esModule",{value:!0});UNt.AliasHost=void 0;var JNt=pxe(),Qsl=rje(),CMr=class extends Qsl.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),n=(0,JNt.split)(t),a=[];for(;!r&&n.length>0;){let o=(0,JNt.join)(JNt.NormalizedRoot,...n);r=this._aliases.get(o),r&&(r=(0,JNt.join)(r,...a)),a.unshift(n.pop())}return r||t}get aliases(){return this._aliases}};UNt.AliasHost=CMr});var mts=H(_Mr=>{"use strict";Object.defineProperty(_Mr,"__esModule",{value:!0});_Mr.createSyncHost=Jsl;var Xsl=qb();function Ite(e){return new Xsl.Observable(t=>{t.next(e()),t.complete()})}function Jsl(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return Ite(()=>e.read(t))}list(t){return Ite(()=>e.list(t))}exists(t){return Ite(()=>e.exists(t))}isDirectory(t){return Ite(()=>e.isDirectory(t))}isFile(t){return Ite(()=>e.isFile(t))}stat(t){return Ite(()=>e.stat(t))}write(t,r){return Ite(()=>e.write(t,r))}delete(t){return Ite(()=>e.delete(t))}rename(t,r){return Ite(()=>e.rename(t,r))}watch(){return null}}}});var Cts=H(KNt=>{"use strict";Object.defineProperty(KNt,"__esModule",{value:!0});KNt.Empty=void 0;var hxe=qb(),Usl=gte(),yMr=class{capabilities={synchronous:!0};read(t){return(0,hxe.throwError)(new Usl.FileDoesNotExistException(t))}list(t){return(0,hxe.of)([])}exists(t){return(0,hxe.of)(!1)}isDirectory(t){return(0,hxe.of)(!1)}isFile(t){return(0,hxe.of)(!1)}stat(t){return(0,hxe.of)(null)}};KNt.Empty=yMr});var nje=H((P7u,Sts)=>{"use strict";var qj="\\\\/",_ts=`[^${qj}]`,hte="\\.",Ksl="\\+",jsl="\\?",jNt="\\/",zsl="(?=.)",yts="[^/]",bMr=`(?:${jNt}|$)`,bts=`(?:^|${jNt})`,EMr=`${hte}{1,2}${bMr}`,qsl=`(?!${hte})`,$sl=`(?!${bts}${EMr})`,eol=`(?!${hte}{0,1}${bMr})`,tol=`(?!${EMr})`,rol=`[^.${jNt}]`,nol=`${yts}*?`,iol="/",Ets={DOT_LITERAL:hte,PLUS_LITERAL:Ksl,QMARK_LITERAL:jsl,SLASH_LITERAL:jNt,ONE_CHAR:zsl,QMARK:yts,END_ANCHOR:bMr,DOTS_SLASH:EMr,NO_DOT:qsl,NO_DOTS:$sl,NO_DOT_SLASH:eol,NO_DOTS_SLASH:tol,QMARK_NO_DOT:rol,STAR:nol,START_ANCHOR:bts,SEP:iol},sol={...Ets,SLASH_LITERAL:`[${qj}]`,QMARK:_ts,STAR:`${_ts}*?`,DOTS_SLASH:`${hte}{1,2}(?:[${qj}]|$)`,NO_DOT:`(?!${hte})`,NO_DOTS:`(?!(?:^|[${qj}])${hte}{1,2}(?:[${qj}]|$))`,NO_DOT_SLASH:`(?!${hte}{0,1}(?:[${qj}]|$))`,NO_DOTS_SLASH:`(?!${hte}{1,2}(?:[${qj}]|$))`,QMARK_NO_DOT:`[^.${qj}]`,START_ANCHOR:`(?:^|[${qj}])`,END_ANCHOR:`(?:[${qj}]|$)`,SEP:"\\"},ool={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Sts.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:ool,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?sol:Ets}}});var ije=H(PV=>{"use strict";var{REGEX_BACKSLASH:aol,REGEX_REMOVE_BACKSLASH:col,REGEX_SPECIAL_CHARS:lol,REGEX_SPECIAL_CHARS_GLOBAL:uol}=nje();PV.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);PV.hasRegexChars=e=>lol.test(e);PV.isRegexChar=e=>e.length===1&&PV.hasRegexChars(e);PV.escapeRegex=e=>e.replace(uol,"\\$1");PV.toPosixSlashes=e=>e.replace(aol,"/");PV.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};PV.removeBackslashes=e=>e.replace(col,t=>t==="\\"?"":t);PV.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?PV.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};PV.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};PV.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",a=r.contains?"":"$",o=`${n}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};PV.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),n=r[r.length-1];return n===""?r[r.length-2]:n}});var kts=H((O7u,Dts)=>{"use strict";var vts=ije(),{CHAR_ASTERISK:SMr,CHAR_AT:gol,CHAR_BACKWARD_SLASH:sje,CHAR_COMMA:Aol,CHAR_DOT:vMr,CHAR_EXCLAMATION_MARK:BMr,CHAR_FORWARD_SLASH:Nts,CHAR_LEFT_CURLY_BRACE:wMr,CHAR_LEFT_PARENTHESES:TMr,CHAR_LEFT_SQUARE_BRACKET:dol,CHAR_PLUS:pol,CHAR_QUESTION_MARK:Bts,CHAR_RIGHT_CURLY_BRACE:fol,CHAR_RIGHT_PARENTHESES:wts,CHAR_RIGHT_SQUARE_BRACKET:Iol}=nje(),Tts=e=>e===Nts||e===sje,Rts=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},hol=(e,t)=>{let r=t||{},n=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],l=[],A=[],f=e,I=-1,C=0,b=0,E=!1,N=!1,B=!1,F=!1,Q=!1,X=!1,ae=!1,ne=!1,ce=!1,fe=!1,ue=0,de,be,Se={value:"",depth:0,isGlob:!1},De=()=>I>=n,k=()=>f.charCodeAt(I+1),et=()=>(de=be,f.charCodeAt(++I));for(;I0&&(Me=f.slice(0,C),f=f.slice(C),b-=C),ct&&B===!0&&b>0?(ct=f.slice(0,b),je=f.slice(b)):B===!0?(ct="",je=f):ct=f,ct&&ct!==""&&ct!=="/"&&ct!==f&&Tts(ct.charCodeAt(ct.length-1))&&(ct=ct.slice(0,-1)),r.unescape===!0&&(je&&(je=vts.removeBackslashes(je)),ct&&ae===!0&&(ct=vts.removeBackslashes(ct)));let St={prefix:Me,input:e,start:C,base:ct,glob:je,isBrace:E,isBracket:N,isGlob:B,isExtglob:F,isGlobstar:Q,negated:ne,negatedExtglob:ce};if(r.tokens===!0&&(St.maxDepth=0,Tts(be)||l.push(Se),St.tokens=l),r.parts===!0||r.tokens===!0){let At;for(let Yt=0;Yt{"use strict";var zNt=nje(),$j=ije(),{MAX_LENGTH:qNt,POSIX_REGEX_SOURCE:mol,REGEX_NON_SPECIAL_CHARS:Col,REGEX_SPECIAL_CHARS_BACKREF:_ol,REPLACEMENTS:xts}=zNt,yol=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>$j.escapeRegex(a)).join("..")}return r},mxe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,RMr=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=xts[e]||e;let r={...t},n=typeof r.maxLength=="number"?Math.min(qNt,r.maxLength):qNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);let o={type:"bos",value:"",output:r.prepend||""},l=[o],A=r.capture?"":"?:",f=zNt.globChars(r.windows),I=zNt.extglobChars(f),{DOT_LITERAL:C,PLUS_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:N,DOTS_SLASH:B,NO_DOT:F,NO_DOT_SLASH:Q,NO_DOTS_SLASH:X,QMARK:ae,QMARK_NO_DOT:ne,STAR:ce,START_ANCHOR:fe}=f,ue=cr=>`(${A}(?:(?!${fe}${cr.dot?B:C}).)*?)`,de=r.dot?"":F,be=r.dot?ae:ne,Se=r.bash===!0?ue(r):ce;r.capture&&(Se=`(${Se})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let De={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:l};e=$j.removePrefix(e,De),a=e.length;let k=[],et=[],ct=[],Me=o,je,St=()=>De.index===a-1,At=De.peek=(cr=1)=>e[De.index+cr],Yt=De.advance=()=>e[++De.index]||"",Tr=()=>e.slice(De.index+1),Nr=(cr="",Ar=0)=>{De.consumed+=cr,De.index+=Ar},er=cr=>{De.output+=cr.output!=null?cr.output:cr.value,Nr(cr.value)},vt=()=>{let cr=1;for(;At()==="!"&&(At(2)!=="("||At(3)==="?");)Yt(),De.start++,cr++;return cr%2===0?!1:(De.negated=!0,De.start++,!0)},xt=cr=>{De[cr]++,ct.push(cr)},Zr=cr=>{De[cr]--,ct.pop()},qt=cr=>{if(Me.type==="globstar"){let Ar=De.braces>0&&(cr.type==="comma"||cr.type==="brace"),qr=cr.extglob===!0||k.length&&(cr.type==="pipe"||cr.type==="paren");cr.type!=="slash"&&cr.type!=="paren"&&!Ar&&!qr&&(De.output=De.output.slice(0,-Me.output.length),Me.type="star",Me.value="*",Me.output=Se,De.output+=Me.output)}if(k.length&&cr.type!=="paren"&&(k[k.length-1].inner+=cr.value),(cr.value||cr.output)&&er(cr),Me&&Me.type==="text"&&cr.type==="text"){Me.output=(Me.output||Me.value)+cr.value,Me.value+=cr.value;return}cr.prev=Me,l.push(cr),Me=cr},Xt=(cr,Ar)=>{let qr={...I[Ar],conditions:1,inner:""};qr.prev=Me,qr.parens=De.parens,qr.output=De.output;let _n=(r.capture?"(":"")+qr.open;xt("parens"),qt({type:cr,value:Ar,output:De.output?"":N}),qt({type:"paren",extglob:!0,value:Yt(),output:_n}),k.push(qr)},lr=cr=>{let Ar=cr.close+(r.capture?")":""),qr;if(cr.type==="negate"){let _n=Se;if(cr.inner&&cr.inner.length>1&&cr.inner.includes("/")&&(_n=ue(r)),(_n!==Se||St()||/^\)+$/.test(Tr()))&&(Ar=cr.close=`)$))${_n}`),cr.inner.includes("*")&&(qr=Tr())&&/^\.[^\\/.]+$/.test(qr)){let ke=RMr(qr,{...t,fastpaths:!1}).output;Ar=cr.close=`)${ke})${_n})`}cr.prev.type==="bos"&&(De.negatedExtglob=!0)}qt({type:"paren",extglob:!0,value:je,output:Ar}),Zr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let cr=!1,Ar=e.replace(_ol,(qr,_n,ke,jt,Fn,Nn)=>jt==="\\"?(cr=!0,qr):jt==="?"?_n?_n+jt+(Fn?ae.repeat(Fn.length):""):Nn===0?be+(Fn?ae.repeat(Fn.length):""):ae.repeat(ke.length):jt==="."?C.repeat(ke.length):jt==="*"?_n?_n+jt+(Fn?Se:""):Se:_n?qr:`\\${qr}`);return cr===!0&&(r.unescape===!0?Ar=Ar.replace(/\\/g,""):Ar=Ar.replace(/\\+/g,qr=>qr.length%2===0?"\\\\":qr?"\\":"")),Ar===e&&r.contains===!0?(De.output=e,De):(De.output=$j.wrapOutput(Ar,De,t),De)}for(;!St();){if(je=Yt(),je==="\0")continue;if(je==="\\"){let qr=At();if(qr==="/"&&r.bash!==!0||qr==="."||qr===";")continue;if(!qr){je+="\\",qt({type:"text",value:je});continue}let _n=/^\\+/.exec(Tr()),ke=0;if(_n&&_n[0].length>2&&(ke=_n[0].length,De.index+=ke,ke%2!==0&&(je+="\\")),r.unescape===!0?je=Yt():je+=Yt(),De.brackets===0){qt({type:"text",value:je});continue}}if(De.brackets>0&&(je!=="]"||Me.value==="["||Me.value==="[^")){if(r.posix!==!1&&je===":"){let qr=Me.value.slice(1);if(qr.includes("[")&&(Me.posix=!0,qr.includes(":"))){let _n=Me.value.lastIndexOf("["),ke=Me.value.slice(0,_n),jt=Me.value.slice(_n+2),Fn=mol[jt];if(Fn){Me.value=ke+Fn,De.backtrack=!0,Yt(),!o.output&&l.indexOf(Me)===1&&(o.output=N);continue}}}(je==="["&&At()!==":"||je==="-"&&At()==="]")&&(je=`\\${je}`),je==="]"&&(Me.value==="["||Me.value==="[^")&&(je=`\\${je}`),r.posix===!0&&je==="!"&&Me.value==="["&&(je="^"),Me.value+=je,er({value:je});continue}if(De.quotes===1&&je!=='"'){je=$j.escapeRegex(je),Me.value+=je,er({value:je});continue}if(je==='"'){De.quotes=De.quotes===1?0:1,r.keepQuotes===!0&&qt({type:"text",value:je});continue}if(je==="("){xt("parens"),qt({type:"paren",value:je});continue}if(je===")"){if(De.parens===0&&r.strictBrackets===!0)throw new SyntaxError(mxe("opening","("));let qr=k[k.length-1];if(qr&&De.parens===qr.parens+1){lr(k.pop());continue}qt({type:"paren",value:je,output:De.parens?")":"\\)"}),Zr("parens");continue}if(je==="["){if(r.nobracket===!0||!Tr().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(mxe("closing","]"));je=`\\${je}`}else xt("brackets");qt({type:"bracket",value:je});continue}if(je==="]"){if(r.nobracket===!0||Me&&Me.type==="bracket"&&Me.value.length===1){qt({type:"text",value:je,output:`\\${je}`});continue}if(De.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(mxe("opening","["));qt({type:"text",value:je,output:`\\${je}`});continue}Zr("brackets");let qr=Me.value.slice(1);if(Me.posix!==!0&&qr[0]==="^"&&!qr.includes("/")&&(je=`/${je}`),Me.value+=je,er({value:je}),r.literalBrackets===!1||$j.hasRegexChars(qr))continue;let _n=$j.escapeRegex(Me.value);if(De.output=De.output.slice(0,-Me.value.length),r.literalBrackets===!0){De.output+=_n,Me.value=_n;continue}Me.value=`(${A}${_n}|${Me.value})`,De.output+=Me.value;continue}if(je==="{"&&r.nobrace!==!0){xt("braces");let qr={type:"brace",value:je,output:"(",outputIndex:De.output.length,tokensIndex:De.tokens.length};et.push(qr),qt(qr);continue}if(je==="}"){let qr=et[et.length-1];if(r.nobrace===!0||!qr){qt({type:"text",value:je,output:je});continue}let _n=")";if(qr.dots===!0){let ke=l.slice(),jt=[];for(let Fn=ke.length-1;Fn>=0&&(l.pop(),ke[Fn].type!=="brace");Fn--)ke[Fn].type!=="dots"&&jt.unshift(ke[Fn].value);_n=yol(jt,r),De.backtrack=!0}if(qr.comma!==!0&&qr.dots!==!0){let ke=De.output.slice(0,qr.outputIndex),jt=De.tokens.slice(qr.tokensIndex);qr.value=qr.output="\\{",je=_n="\\}",De.output=ke;for(let Fn of jt)De.output+=Fn.output||Fn.value}qt({type:"brace",value:je,output:_n}),Zr("braces"),et.pop();continue}if(je==="|"){k.length>0&&k[k.length-1].conditions++,qt({type:"text",value:je});continue}if(je===","){let qr=je,_n=et[et.length-1];_n&&ct[ct.length-1]==="braces"&&(_n.comma=!0,qr="|"),qt({type:"comma",value:je,output:qr});continue}if(je==="/"){if(Me.type==="dot"&&De.index===De.start+1){De.start=De.index+1,De.consumed="",De.output="",l.pop(),Me=o;continue}qt({type:"slash",value:je,output:E});continue}if(je==="."){if(De.braces>0&&Me.type==="dot"){Me.value==="."&&(Me.output=C);let qr=et[et.length-1];Me.type="dots",Me.output+=je,Me.value+=je,qr.dots=!0;continue}if(De.braces+De.parens===0&&Me.type!=="bos"&&Me.type!=="slash"){qt({type:"text",value:je,output:C});continue}qt({type:"dot",value:je,output:C});continue}if(je==="?"){if(!(Me&&Me.value==="(")&&r.noextglob!==!0&&At()==="("&&At(2)!=="?"){Xt("qmark",je);continue}if(Me&&Me.type==="paren"){let _n=At(),ke=je;(Me.value==="("&&!/[!=<:]/.test(_n)||_n==="<"&&!/<([!=]|\w+>)/.test(Tr()))&&(ke=`\\${je}`),qt({type:"text",value:je,output:ke});continue}if(r.dot!==!0&&(Me.type==="slash"||Me.type==="bos")){qt({type:"qmark",value:je,output:ne});continue}qt({type:"qmark",value:je,output:ae});continue}if(je==="!"){if(r.noextglob!==!0&&At()==="("&&(At(2)!=="?"||!/[!=<:]/.test(At(3)))){Xt("negate",je);continue}if(r.nonegate!==!0&&De.index===0){vt();continue}}if(je==="+"){if(r.noextglob!==!0&&At()==="("&&At(2)!=="?"){Xt("plus",je);continue}if(Me&&Me.value==="("||r.regex===!1){qt({type:"plus",value:je,output:b});continue}if(Me&&(Me.type==="bracket"||Me.type==="paren"||Me.type==="brace")||De.parens>0){qt({type:"plus",value:je});continue}qt({type:"plus",value:b});continue}if(je==="@"){if(r.noextglob!==!0&&At()==="("&&At(2)!=="?"){qt({type:"at",extglob:!0,value:je,output:""});continue}qt({type:"text",value:je});continue}if(je!=="*"){(je==="$"||je==="^")&&(je=`\\${je}`);let qr=Col.exec(Tr());qr&&(je+=qr[0],De.index+=qr[0].length),qt({type:"text",value:je});continue}if(Me&&(Me.type==="globstar"||Me.star===!0)){Me.type="star",Me.star=!0,Me.value+=je,Me.output=Se,De.backtrack=!0,De.globstar=!0,Nr(je);continue}let cr=Tr();if(r.noextglob!==!0&&/^\([^?]/.test(cr)){Xt("star",je);continue}if(Me.type==="star"){if(r.noglobstar===!0){Nr(je);continue}let qr=Me.prev,_n=qr.prev,ke=qr.type==="slash"||qr.type==="bos",jt=_n&&(_n.type==="star"||_n.type==="globstar");if(r.bash===!0&&(!ke||cr[0]&&cr[0]!=="/")){qt({type:"star",value:je,output:""});continue}let Fn=De.braces>0&&(qr.type==="comma"||qr.type==="brace"),Nn=k.length&&(qr.type==="pipe"||qr.type==="paren");if(!ke&&qr.type!=="paren"&&!Fn&&!Nn){qt({type:"star",value:je,output:""});continue}for(;cr.slice(0,3)==="/**";){let Hi=e[De.index+4];if(Hi&&Hi!=="/")break;cr=cr.slice(3),Nr("/**",3)}if(qr.type==="bos"&&St()){Me.type="globstar",Me.value+=je,Me.output=ue(r),De.output=Me.output,De.globstar=!0,Nr(je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&!jt&&St()){De.output=De.output.slice(0,-(qr.output+Me.output).length),qr.output=`(?:${qr.output}`,Me.type="globstar",Me.output=ue(r)+(r.strictSlashes?")":"|$)"),Me.value+=je,De.globstar=!0,De.output+=qr.output+Me.output,Nr(je);continue}if(qr.type==="slash"&&qr.prev.type!=="bos"&&cr[0]==="/"){let Hi=cr[1]!==void 0?"|$":"";De.output=De.output.slice(0,-(qr.output+Me.output).length),qr.output=`(?:${qr.output}`,Me.type="globstar",Me.output=`${ue(r)}${E}|${E}${Hi})`,Me.value+=je,De.output+=qr.output+Me.output,De.globstar=!0,Nr(je+Yt()),qt({type:"slash",value:"/",output:""});continue}if(qr.type==="bos"&&cr[0]==="/"){Me.type="globstar",Me.value+=je,Me.output=`(?:^|${E}|${ue(r)}${E})`,De.output=Me.output,De.globstar=!0,Nr(je+Yt()),qt({type:"slash",value:"/",output:""});continue}De.output=De.output.slice(0,-Me.output.length),Me.type="globstar",Me.output=ue(r),Me.value+=je,De.output+=Me.output,De.globstar=!0,Nr(je);continue}let Ar={type:"star",value:je,output:Se};if(r.bash===!0){Ar.output=".*?",(Me.type==="bos"||Me.type==="slash")&&(Ar.output=de+Ar.output),qt(Ar);continue}if(Me&&(Me.type==="bracket"||Me.type==="paren")&&r.regex===!0){Ar.output=je,qt(Ar);continue}(De.index===De.start||Me.type==="slash"||Me.type==="dot")&&(Me.type==="dot"?(De.output+=Q,Me.output+=Q):r.dot===!0?(De.output+=X,Me.output+=X):(De.output+=de,Me.output+=de),At()!=="*"&&(De.output+=N,Me.output+=N)),qt(Ar)}for(;De.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(mxe("closing","]"));De.output=$j.escapeLast(De.output,"["),Zr("brackets")}for(;De.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(mxe("closing",")"));De.output=$j.escapeLast(De.output,"("),Zr("parens")}for(;De.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(mxe("closing","}"));De.output=$j.escapeLast(De.output,"{"),Zr("braces")}if(r.strictSlashes!==!0&&(Me.type==="star"||Me.type==="bracket")&&qt({type:"maybe_slash",value:"",output:`${E}?`}),De.backtrack===!0){De.output="";for(let cr of De.tokens)De.output+=cr.output!=null?cr.output:cr.value,cr.suffix&&(De.output+=cr.suffix)}return De};RMr.fastpaths=(e,t)=>{let r={...t},n=typeof r.maxLength=="number"?Math.min(qNt,r.maxLength):qNt,a=e.length;if(a>n)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${n}`);e=xts[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:l,ONE_CHAR:A,DOTS_SLASH:f,NO_DOT:I,NO_DOTS:C,NO_DOTS_SLASH:b,STAR:E,START_ANCHOR:N}=zNt.globChars(r.windows),B=r.dot?C:I,F=r.dot?b:I,Q=r.capture?"":"?:",X={negated:!1,prefix:""},ae=r.bash===!0?".*?":E;r.capture&&(ae=`(${ae})`);let ne=de=>de.noglobstar===!0?ae:`(${Q}(?:(?!${N}${de.dot?f:o}).)*?)`,ce=de=>{switch(de){case"*":return`${B}${A}${ae}`;case".*":return`${o}${A}${ae}`;case"*.*":return`${B}${ae}${o}${A}${ae}`;case"*/*":return`${B}${ae}${l}${A}${F}${ae}`;case"**":return B+ne(r);case"**/*":return`(?:${B}${ne(r)}${l})?${F}${A}${ae}`;case"**/*.*":return`(?:${B}${ne(r)}${l})?${F}${ae}${o}${A}${ae}`;case"**/.*":return`(?:${B}${ne(r)}${l})?${o}${A}${ae}`;default:{let be=/^(.*?)\.(\w+)$/.exec(de);if(!be)return;let Se=ce(be[1]);return Se?Se+o+be[2]:void 0}}},fe=$j.removePrefix(e,X),ue=ce(fe);return ue&&r.strictSlashes!==!0&&(ue+=`${l}?`),ue};Gts.exports=RMr});var Vts=H((H7u,Lts)=>{"use strict";var bol=kts(),NMr=Fts(),Zts=ije(),Eol=nje(),Sol=e=>e&&typeof e=="object"&&!Array.isArray(e),cw=(e,t,r=!1)=>{if(Array.isArray(e)){let C=e.map(E=>cw(E,t,r));return E=>{for(let N of C){let B=N(E);if(B)return B}return!1}}let n=Sol(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,l=n?cw.compileRe(e,t):cw.makeRe(e,t,!1,!0),A=l.state;delete l.state;let f=()=>!1;if(a.ignore){let C={...t,ignore:null,onMatch:null,onResult:null};f=cw(a.ignore,C,r)}let I=(C,b=!1)=>{let{isMatch:E,match:N,output:B}=cw.test(C,l,t,{glob:e,posix:o}),F={glob:e,state:A,regex:l,posix:o,input:C,output:B,match:N,isMatch:E};return typeof a.onResult=="function"&&a.onResult(F),E===!1?(F.isMatch=!1,b?F:!1):f(C)?(typeof a.onIgnore=="function"&&a.onIgnore(F),F.isMatch=!1,b?F:!1):(typeof a.onMatch=="function"&&a.onMatch(F),b?F:!0)};return r&&(I.state=A),I};cw.test=(e,t,r,{glob:n,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},l=o.format||(a?Zts.toPosixSlashes:null),A=e===n,f=A&&l?l(e):e;return A===!1&&(f=l?l(e):e,A=f===n),(A===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?A=cw.matchBase(e,t,r,a):A=t.exec(f)),{isMatch:!!A,match:A,output:f}};cw.matchBase=(e,t,r)=>(t instanceof RegExp?t:cw.makeRe(t,r)).test(Zts.basename(e));cw.isMatch=(e,t,r)=>cw(t,r)(e);cw.parse=(e,t)=>Array.isArray(e)?e.map(r=>cw.parse(r,t)):NMr(e,{...t,fastpaths:!1});cw.scan=(e,t)=>bol(e,t);cw.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",l=a.contains?"":"$",A=`${o}(?:${e.output})${l}`;e&&e.negated===!0&&(A=`^(?!${A}).*$`);let f=cw.toRegex(A,t);return n===!0&&(f.state=e),f};cw.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=NMr.fastpaths(e,t)),a.output||(a=NMr(e,t)),cw.compileRe(a,t,r,n)};cw.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};cw.constants=Eol;Lts.exports=cw});var Mts=H((Y7u,Ots)=>{"use strict";var Pts=Vts(),vol=ije();function Wts(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:vol.isWindows()}),Pts(e,t,r)}Object.assign(Wts,Pts);Ots.exports=Wts});var Hts=H($Nt=>{"use strict";Object.defineProperty($Nt,"__esModule",{value:!0});$Nt.PatternMatchingHost=void 0;var Bol=Mts(),wol=rje(),DMr=class extends wol.ResolverHost{_patterns=new Map;addPattern(t,r){let n=Array.isArray(t)?t:[t];for(let a of n){let{output:o}=(0,Bol.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((n,a)=>{a.test(t)&&(r=n(r))}),r}};$Nt.PatternMatchingHost=DMr});var Yts=H(eDt=>{"use strict";Object.defineProperty(eDt,"__esModule",{value:!0});eDt.CordHost=void 0;var w_=qb(),mte=gte(),Tol=YNt(),kMr=class e extends Tol.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,w_.from)(this.records()).pipe((0,w_.concatMap)(n=>{switch(n.kind){case"delete":return t.delete(n.path);case"rename":return t.rename(n.from,n.to);case"create":return t.exists(n.path).pipe((0,w_.switchMap)(a=>a&&!r?(0,w_.throwError)(new mte.FileAlreadyExistException(n.path)):t.write(n.path,n.content)));case"overwrite":return t.exists(n.path).pipe((0,w_.switchMap)(a=>!a&&!r?(0,w_.throwError)(new mte.FileDoesNotExistException(n.path)):t.write(n.path,n.content)))}}),(0,w_.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new mte.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,w_.switchMap)(n=>n?(0,w_.throwError)(new mte.PathIsDirectoryException(t)):this.exists(t)),(0,w_.switchMap)(n=>n?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,w_.throwError)(new mte.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,w_.switchMap)(n=>n?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,w_.throwError)(new mte.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,w_.switchMap)(r=>r?(this._filesToDelete.add(t),(0,w_.of)()):(0,w_.throwError)(new mte.FileDoesNotExistException(t))))}rename(t,r){return(0,w_.concat)(this.exists(r),this.exists(t)).pipe((0,w_.toArray)(),(0,w_.switchMap)(([n,a])=>{if(!a)return(0,w_.throwError)(new mte.FileDoesNotExistException(t));if(t===r)return w_.EMPTY;if(n)return(0,w_.throwError)(new mte.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,w_.concat)(this.rename(t,r),new w_.Observable(l=>{this._filesToOverwrite.add(r),l.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,w_.map)(l=>this._write(r,l)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,w_.switchMap)(l=>super.write(r,l)))}))}list(t){return(0,w_.concat)(super.list(t),this._back.list(t)).pipe((0,w_.reduce)((r,n)=>(n.forEach(a=>r.add(a)),r),new Set),(0,w_.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,w_.of)(!0):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,w_.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};eDt.CordHost=kMr});var Qts=H(tDt=>{"use strict";Object.defineProperty(tDt,"__esModule",{value:!0});tDt.SafeReadonlyHost=void 0;var Wle=qb(),xMr=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,Wle.catchError)(()=>(0,Wle.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,Wle.catchError)(()=>(0,Wle.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,Wle.catchError)(()=>(0,Wle.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,Wle.catchError)(()=>(0,Wle.of)(null)))}};tDt.SafeReadonlyHost=xMr});var Jts=H(rDt=>{"use strict";Object.defineProperty(rDt,"__esModule",{value:!0});rDt.ScopedHost=void 0;var Xts=pxe(),Rol=rje(),GMr=class extends Rol.ResolverHost{_root;constructor(t,r=Xts.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,Xts.join)(this._root,t)}};rDt.ScopedHost=GMr});var Kts=H(F2=>{"use strict";var Uts=F2&&F2.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Nol=F2&&F2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Dol=F2&&F2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";var jts=NO&&NO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xol=NO&&NO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Gol=NO&&NO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(FMr,"__esModule",{value:!0});FMr.createWorkspaceHost=Lol;var iDt=qb(),Cxe=nDt();function Lol(e){return{async readFile(r){let n=await(0,iDt.lastValueFrom)(e.read((0,Cxe.normalize)(r)));return Cxe.virtualFs.fileBufferToString(n)},async writeFile(r,n){return(0,iDt.lastValueFrom)(e.write((0,Cxe.normalize)(r),Cxe.virtualFs.stringToFileBuffer(n)))},async isDirectory(r){try{return await(0,iDt.lastValueFrom)(e.isDirectory((0,Cxe.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,iDt.lastValueFrom)(e.isFile((0,Cxe.normalize)(r)))}catch{return!1}}}}});var oDt=H((qts,sDt)=>{(function(e){if(typeof sDt=="object"&&typeof sDt.exports=="object"){var t=e(wt,qts);t!==void 0&&(sDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(A,f=!1){let I=A.length,C=0,b="",E=0,N=16,B=0,F=0,Q=0,X=0,ae=0;function ne(De,k){let et=0,ct=0;for(;et=48&&Me<=57)ct=ct*16+Me-48;else if(Me>=65&&Me<=70)ct=ct*16+Me-65+10;else if(Me>=97&&Me<=102)ct=ct*16+Me-97+10;else break;C++,et++}return et=I){De+=A.substring(k,C),ae=2;break}let et=A.charCodeAt(C);if(et===34){De+=A.substring(k,C),C++;break}if(et===92){if(De+=A.substring(k,C),C++,C>=I){ae=2;break}switch(A.charCodeAt(C++)){case 34:De+='"';break;case 92:De+="\\";break;case 47:De+="/";break;case 98:De+="\b";break;case 102:De+="\f";break;case 110:De+=` -`;break;case 114:De+="\r";break;case 116:De+=" ";break;case 117:let Me=ne(4,!0);Me>=0?De+=String.fromCharCode(Me):ae=4;break;default:ae=5}k=C;continue}if(et>=0&&et<=31)if(a(et)){De+=A.substring(k,C),ae=2;break}else ae=6;C++}return De}function de(){if(b="",ae=0,E=C,F=B,X=Q,C>=I)return E=I,N=17;let De=A.charCodeAt(C);if(n(De)){do C++,b+=String.fromCharCode(De),De=A.charCodeAt(C);while(n(De));return N=15}if(a(De))return C++,b+=String.fromCharCode(De),De===13&&A.charCodeAt(C)===10&&(C++,b+=` -`),B++,Q=C,N=14;switch(De){case 123:return C++,N=1;case 125:return C++,N=2;case 91:return C++,N=3;case 93:return C++,N=4;case 58:return C++,N=6;case 44:return C++,N=5;case 34:return C++,b=ue(),N=10;case 47:let k=C-1;if(A.charCodeAt(C+1)===47){for(C+=2;C=12&&De<=15);return De}return{setPosition:ce,getPosition:()=>C,scan:f?Se:de,getToken:()=>N,getTokenValue:()=>b,getTokenOffset:()=>E,getTokenLength:()=>C-E,getTokenStartLine:()=>F,getTokenStartCharacter:()=>E-X,getTokenError:()=>ae}}t.createScanner=r;function n(A){return A===32||A===9}function a(A){return A===10||A===13}function o(A){return A>=48&&A<=57}var l;(function(A){A[A.lineFeed=10]="lineFeed",A[A.carriageReturn=13]="carriageReturn",A[A.space=32]="space",A[A._0=48]="_0",A[A._1=49]="_1",A[A._2=50]="_2",A[A._3=51]="_3",A[A._4=52]="_4",A[A._5=53]="_5",A[A._6=54]="_6",A[A._7=55]="_7",A[A._8=56]="_8",A[A._9=57]="_9",A[A.a=97]="a",A[A.b=98]="b",A[A.c=99]="c",A[A.d=100]="d",A[A.e=101]="e",A[A.f=102]="f",A[A.g=103]="g",A[A.h=104]="h",A[A.i=105]="i",A[A.j=106]="j",A[A.k=107]="k",A[A.l=108]="l",A[A.m=109]="m",A[A.n=110]="n",A[A.o=111]="o",A[A.p=112]="p",A[A.q=113]="q",A[A.r=114]="r",A[A.s=115]="s",A[A.t=116]="t",A[A.u=117]="u",A[A.v=118]="v",A[A.w=119]="w",A[A.x=120]="x",A[A.y=121]="y",A[A.z=122]="z",A[A.A=65]="A",A[A.B=66]="B",A[A.C=67]="C",A[A.D=68]="D",A[A.E=69]="E",A[A.F=70]="F",A[A.G=71]="G",A[A.H=72]="H",A[A.I=73]="I",A[A.J=74]="J",A[A.K=75]="K",A[A.L=76]="L",A[A.M=77]="M",A[A.N=78]="N",A[A.O=79]="O",A[A.P=80]="P",A[A.Q=81]="Q",A[A.R=82]="R",A[A.S=83]="S",A[A.T=84]="T",A[A.U=85]="U",A[A.V=86]="V",A[A.W=87]="W",A[A.X=88]="X",A[A.Y=89]="Y",A[A.Z=90]="Z",A[A.asterisk=42]="asterisk",A[A.backslash=92]="backslash",A[A.closeBrace=125]="closeBrace",A[A.closeBracket=93]="closeBracket",A[A.colon=58]="colon",A[A.comma=44]="comma",A[A.dot=46]="dot",A[A.doubleQuote=34]="doubleQuote",A[A.minus=45]="minus",A[A.openBrace=123]="openBrace",A[A.openBracket=91]="openBracket",A[A.plus=43]="plus",A[A.slash=47]="slash",A[A.formFeed=12]="formFeed",A[A.tab=9]="tab"})(l||(l={}))})});var ers=H(($ts,aDt)=>{(function(e){if(typeof aDt=="object"&&typeof aDt.exports=="object"){var t=e(wt,$ts);t!==void 0&&(aDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((n,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((n,a)=>` -`+" ".repeat(a)),"\r":new Array(r).fill(0).map((n,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((n,a)=>`\r -`+" ".repeat(a))}," ":{"\n":new Array(r).fill(0).map((n,a)=>` -`+" ".repeat(a)),"\r":new Array(r).fill(0).map((n,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((n,a)=>`\r -`+" ".repeat(a))}},t.supportedEols=[` -`,"\r",`\r -`]})});var ZMr=H((trs,cDt)=>{var Vol=oDt(),sL=ers();(function(e){if(typeof cDt=="object"&&typeof cDt.exports=="object"){var t=e(wt,trs);t!==void 0&&(cDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(A,f,I){let C,b,E,N,B;if(f){for(N=f.offset,B=N+f.length,E=N;E>0&&!l(A,E-1);)E--;let et=B;for(;et1)return n(F,X)+n(ne,C+ae);let et=ne.length*(C+ae);return!Q||et>sL.cachedBreakLinesWithSpaces[ce][F].length?F+n(ne,C+ae):et<=0?F:sL.cachedBreakLinesWithSpaces[ce][F][et]}function be(){let et=fe.scan();for(X=0;et===15||et===14;)et===14&&I.keepLines?X+=1:et===14&&(X=1),et=fe.scan();return ue=et===16||fe.getTokenError()!==0,et}let Se=[];function De(et,ct,Me){!ue&&(!f||ctN)&&A.substring(ct,Me)!==et&&Se.push({offset:ct,length:Me-ct,content:et})}let k=be();if(I.keepLines&&X>0&&De(n(F,X),0,0),k!==17){let et=fe.getTokenOffset()+E,ct=ne.length*C<20&&I.insertSpaces?sL.cachedSpaces[ne.length*C]:n(ne,C);De(ct,E,et)}for(;k!==17;){let et=fe.getTokenOffset()+fe.getTokenLength()+E,ct=be(),Me="",je=!1;for(;X===0&&(ct===12||ct===13);){let At=fe.getTokenOffset()+E;De(sL.cachedSpaces[1],et,At),et=fe.getTokenOffset()+fe.getTokenLength()+E,je=ct===12,Me=je?de():"",ct=be()}if(ct===2)k!==1&&ae--,I.keepLines&&X>0||!I.keepLines&&k!==1?Me=de():I.keepLines&&(Me=sL.cachedSpaces[1]);else if(ct===4)k!==3&&ae--,I.keepLines&&X>0||!I.keepLines&&k!==3?Me=de():I.keepLines&&(Me=sL.cachedSpaces[1]);else{switch(k){case 3:case 1:ae++,I.keepLines&&X>0||!I.keepLines?Me=de():Me=sL.cachedSpaces[1];break;case 5:I.keepLines&&X>0||!I.keepLines?Me=de():Me=sL.cachedSpaces[1];break;case 12:Me=de();break;case 13:X>0?Me=de():je||(Me=sL.cachedSpaces[1]);break;case 6:I.keepLines&&X>0?Me=de():je||(Me=sL.cachedSpaces[1]);break;case 10:I.keepLines&&X>0?Me=de():ct===6&&!je&&(Me="");break;case 7:case 8:case 9:case 11:case 2:case 4:I.keepLines&&X>0?Me=de():(ct===12||ct===13)&&!je?Me=sL.cachedSpaces[1]:ct!==5&&ct!==17&&(ue=!0);break;case 16:ue=!0;break}X>0&&(ct===12||ct===13)&&(Me=de())}ct===17&&(I.keepLines&&X>0?Me=de():Me=I.insertFinalNewline?F:"");let St=fe.getTokenOffset()+E;De(Me,et,St),k=ct}return Se}t.format=r;function n(A,f){let I="";for(let C=0;C{var rrs=oDt();(function(e){if(typeof lDt=="object"&&typeof lDt.exports=="object"){var t=e(wt,nrs);t!==void 0&&(lDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(B){B.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function n(B,F){let Q=[],X=new Object,ae,ne={value:{},offset:0,length:0,type:"object",parent:void 0},ce=!1;function fe(ue,de,be,Se){ne.value=ue,ne.offset=de,ne.length=be,ne.type=Se,ne.colonOffset=void 0,ae=ne}try{b(B,{onObjectBegin:(ue,de)=>{if(F<=ue)throw X;ae=void 0,ce=F>ue,Q.push("")},onObjectProperty:(ue,de,be)=>{if(F{if(F<=ue)throw X;ae=void 0,Q.pop()},onArrayBegin:(ue,de)=>{if(F<=ue)throw X;ae=void 0,Q.push(0)},onArrayEnd:(ue,de)=>{if(F<=ue)throw X;ae=void 0,Q.pop()},onLiteralValue:(ue,de,be)=>{if(F{if(F<=de)throw X;if(ue===":"&&ae&&ae.type==="property")ae.colonOffset=de,ce=!1,ae=void 0;else if(ue===","){let Se=Q[Q.length-1];typeof Se=="number"?Q[Q.length-1]=Se+1:(ce=!0,Q[Q.length-1]=""),ae=void 0}}})}catch(ue){if(ue!==X)throw ue}return{path:Q,previousNode:ae,isAtPropertyKey:ce,matches:ue=>{let de=0;for(let be=0;de{let ue={};ce(ue),ne.push(ae),ae=ue,X=null},onObjectProperty:ue=>{X=ue},onObjectEnd:()=>{ae=ne.pop()},onArrayBegin:()=>{let ue=[];ce(ue),ne.push(ae),ae=ue,X=null},onArrayEnd:()=>{ae=ne.pop()},onLiteralValue:ce,onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q),ae[0]}t.parse=a;function o(B,F=[],Q=r.DEFAULT){let X={type:"array",offset:-1,length:-1,children:[],parent:void 0};function ae(ue){X.type==="property"&&(X.length=ue-X.offset,X=X.parent)}function ne(ue){return X.children.push(ue),ue}b(B,{onObjectBegin:ue=>{X=ne({type:"object",offset:ue,length:-1,parent:X,children:[]})},onObjectProperty:(ue,de,be)=>{X=ne({type:"property",offset:de,length:-1,parent:X,children:[]}),X.children.push({type:"string",value:ue,offset:de,length:be,parent:X})},onObjectEnd:(ue,de)=>{ae(ue+de),X.length=ue+de-X.offset,X=X.parent,ae(ue+de)},onArrayBegin:(ue,de)=>{X=ne({type:"array",offset:ue,length:-1,parent:X,children:[]})},onArrayEnd:(ue,de)=>{X.length=ue+de-X.offset,X=X.parent,ae(ue+de)},onLiteralValue:(ue,de,be)=>{ne({type:N(ue),offset:de,length:be,parent:X,value:ue}),ae(de+be)},onSeparator:(ue,de,be)=>{X.type==="property"&&(ue===":"?X.colonOffset=de:ue===","&&ae(de))},onError:(ue,de,be)=>{F.push({error:ue,offset:de,length:be})}},Q);let fe=X.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function l(B,F){if(!B)return;let Q=B;for(let X of F)if(typeof X=="string"){if(Q.type!=="object"||!Array.isArray(Q.children))return;let ae=!1;for(let ne of Q.children)if(Array.isArray(ne.children)&&ne.children[0].value===X&&ne.children.length===2){Q=ne.children[1],ae=!0;break}if(!ae)return}else{let ae=X;if(Q.type!=="array"||ae<0||!Array.isArray(Q.children)||ae>=Q.children.length)return;Q=Q.children[ae]}return Q}t.findNodeAtLocation=l;function A(B){if(!B.parent||!B.parent.children)return[];let F=A(B.parent);if(B.parent.type==="property"){let Q=B.parent.children[0].value;F.push(Q)}else if(B.parent.type==="array"){let Q=B.parent.children.indexOf(B);Q!==-1&&F.push(Q)}return F}t.getNodePath=A;function f(B){switch(B.type){case"array":return B.children.map(f);case"object":let F=Object.create(null);for(let Q of B.children){let X=Q.children[1];X&&(F[Q.children[0].value]=f(X))}return F;case"null":case"string":case"number":case"boolean":return B.value;default:return}}t.getNodeValue=f;function I(B,F,Q=!1){return F>=B.offset&&Fne===0&&cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter()):()=>!0}function fe(cr){return cr?Ar=>ne===0&&cr(Ar,X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter()):()=>!0}function ue(cr){return cr?Ar=>ne===0&&cr(Ar,X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter(),()=>ae.slice()):()=>!0}function de(cr){return cr?()=>{ne>0?ne++:cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter(),()=>ae.slice())===!1&&(ne=1)}:()=>!0}function be(cr){return cr?()=>{ne>0&&ne--,ne===0&&cr(X.getTokenOffset(),X.getTokenLength(),X.getTokenStartLine(),X.getTokenStartCharacter())}:()=>!0}let Se=de(F.onObjectBegin),De=ue(F.onObjectProperty),k=be(F.onObjectEnd),et=de(F.onArrayBegin),ct=be(F.onArrayEnd),Me=ue(F.onLiteralValue),je=fe(F.onSeparator),St=ce(F.onComment),At=fe(F.onError),Yt=Q&&Q.disallowComments,Tr=Q&&Q.allowTrailingComma;function Nr(){for(;;){let cr=X.scan();switch(X.getTokenError()){case 4:er(14);break;case 5:er(15);break;case 3:er(13);break;case 1:Yt||er(11);break;case 2:er(12);break;case 6:er(16);break}switch(cr){case 12:case 13:Yt?er(10):St();break;case 16:er(1);break;case 15:case 14:break;default:return cr}}}function er(cr,Ar=[],qr=[]){if(At(cr),Ar.length+qr.length>0){let _n=X.getToken();for(;_n!==17;){if(Ar.indexOf(_n)!==-1){Nr();break}else if(qr.indexOf(_n)!==-1)break;_n=Nr()}}}function vt(cr){let Ar=X.getTokenValue();return cr?Me(Ar):(De(Ar),ae.push(Ar)),Nr(),!0}function xt(){switch(X.getToken()){case 11:let cr=X.getTokenValue(),Ar=Number(cr);isNaN(Ar)&&(er(2),Ar=0),Me(Ar);break;case 7:Me(null);break;case 8:Me(!0);break;case 9:Me(!1);break;default:return!1}return Nr(),!0}function Zr(){return X.getToken()!==10?(er(3,[],[2,5]),!1):(vt(!1),X.getToken()===6?(je(":"),Nr(),lr()||er(4,[],[2,5])):er(5,[],[2,5]),ae.pop(),!0)}function qt(){Se(),Nr();let cr=!1;for(;X.getToken()!==2&&X.getToken()!==17;){if(X.getToken()===5){if(cr||er(4,[],[]),je(","),Nr(),X.getToken()===2&&Tr)break}else cr&&er(6,[],[]);Zr()||er(4,[],[2,5]),cr=!0}return k(),X.getToken()!==2?er(7,[2],[]):Nr(),!0}function Xt(){et(),Nr();let cr=!0,Ar=!1;for(;X.getToken()!==4&&X.getToken()!==17;){if(X.getToken()===5){if(Ar||er(4,[],[]),je(","),Nr(),X.getToken()===4&&Tr)break}else Ar&&er(6,[],[]);cr?(ae.push(0),cr=!1):ae[ae.length-1]++,lr()||er(4,[],[4,5]),Ar=!0}return ct(),cr||ae.pop(),X.getToken()!==4?er(8,[4],[]):Nr(),!0}function lr(){switch(X.getToken()){case 3:return Xt();case 1:return qt();case 10:return vt(!0);default:return xt()}}return Nr(),X.getToken()===17?Q.allowEmptyContent?!0:(er(4,[],[]),!1):lr()?(X.getToken()!==17&&er(9,[],[]),!0):(er(4,[],[]),!1)}t.visit=b;function E(B,F){let Q=(0,rrs.createScanner)(B),X=[],ae,ne=0,ce;do switch(ce=Q.getPosition(),ae=Q.scan(),ae){case 12:case 13:case 17:ne!==ce&&X.push(B.substring(ne,ce)),F!==void 0&&X.push(Q.getTokenValue().replace(/[^\r\n]/g,F)),ne=Q.getPosition();break}while(ae!==17);return X.join("")}t.stripComments=E;function N(B){switch(typeof B){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(B){if(Array.isArray(B))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=N})});var srs=H((irs,uDt)=>{var VMr=ZMr(),PMr=LMr();(function(e){if(typeof uDt=="object"&&typeof uDt.exports=="object"){var t=e(wt,irs);t!==void 0&&(uDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(A,f,I){return n(A,f,void 0,I)}t.removeProperty=r;function n(A,f,I,C){let b=f.slice(),E=[],N=(0,PMr.parseTree)(A,E),B,F;for(;b.length>0&&(F=b.pop(),B=(0,PMr.findNodeAtLocation)(N,b),B===void 0&&I!==void 0);)typeof F=="string"?I={[F]:I}:I=[I];if(B)if(B.type==="object"&&typeof F=="string"&&Array.isArray(B.children)){let Q=(0,PMr.findNodeAtLocation)(B,[F]);if(Q!==void 0)if(I===void 0){if(!Q.parent)throw new Error("Malformed AST");let X=B.children.indexOf(Q.parent),ae,ne=Q.parent.offset+Q.parent.length;if(X>0){let ce=B.children[X-1];ae=ce.offset+ce.length}else ae=B.offset+1,B.children.length>1&&(ne=B.children[1].offset);return a(A,{offset:ae,length:ne-ae,content:""},C)}else return a(A,{offset:Q.offset,length:Q.length,content:JSON.stringify(I)},C);else{if(I===void 0)return[];let X=`${JSON.stringify(F)}: ${JSON.stringify(I)}`,ae=C.getInsertionIndex?C.getInsertionIndex(B.children.map(ce=>ce.children[0].value)):B.children.length,ne;if(ae>0){let ce=B.children[ae-1];ne={offset:ce.offset+ce.length,length:0,content:","+X}}else B.children.length===0?ne={offset:B.offset+1,length:0,content:X}:ne={offset:B.offset+1,length:0,content:X+","};return a(A,ne,C)}}else if(B.type==="array"&&typeof F=="number"&&Array.isArray(B.children)){let Q=F;if(Q===-1){let X=`${JSON.stringify(I)}`,ae;if(B.children.length===0)ae={offset:B.offset+1,length:0,content:X};else{let ne=B.children[B.children.length-1];ae={offset:ne.offset+ne.length,length:0,content:","+X}}return a(A,ae,C)}else if(I===void 0&&B.children.length>=0){let X=F,ae=B.children[X],ne;if(B.children.length===1)ne={offset:B.offset+1,length:B.length-2,content:""};else if(B.children.length-1===X){let ce=B.children[X-1],fe=ce.offset+ce.length,ue=B.offset+B.length;ne={offset:fe,length:ue-2-fe,content:""}}else ne={offset:ae.offset,length:B.children[X+1].offset-ae.offset,content:""};return a(A,ne,C)}else if(I!==void 0){let X,ae=`${JSON.stringify(I)}`;if(!C.isArrayInsertion&&B.children.length>F){let ne=B.children[F];X={offset:ne.offset,length:ne.length,content:ae}}else if(B.children.length===0||F===0)X={offset:B.offset+1,length:0,content:B.children.length===0?ae:ae+","};else{let ne=F>B.children.length?B.children.length:F,ce=B.children[ne-1];X={offset:ce.offset+ce.length,length:0,content:","+ae}}return a(A,X,C)}else throw new Error(`Can not ${I===void 0?"remove":C.isArrayInsertion?"insert":"modify"} Array index ${Q} as length is not sufficient`)}else throw new Error(`Can not add ${typeof F!="number"?"index":"property"} to parent of type ${B.type}`);else{if(I===void 0)throw new Error("Can not delete in empty document");return a(A,{offset:N?N.offset:0,length:N?N.length:0,content:JSON.stringify(I)},C)}}t.setProperty=n;function a(A,f,I){if(!I.formattingOptions)return[f];let C=o(A,f),b=f.offset,E=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;b>0&&!(0,VMr.isEOL)(C,b-1);)b--;for(;E=0;F--){let Q=N[F];C=o(C,Q),b=Math.min(b,Q.offset),E=Math.max(E,Q.offset+Q.length),E+=Q.content.length-Q.length}let B=A.length-(C.length-E)-b;return[{offset:b,length:B,content:C.substring(b,E)}]}function o(A,f){return A.substring(0,f.offset)+f.content+A.substring(f.offset+f.length)}t.applyEdit=o;function l(A,f){return`\r - `.indexOf(A.charAt(f))!==-1}t.isWS=l})});var _xe=H((ars,gDt)=>{var Pol=ZMr(),ors=srs(),Wol=oDt(),Cte=LMr();(function(e){if(typeof gDt=="object"&&typeof gDt.exports=="object"){var t=e(wt,ars);t!==void 0&&(gDt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=Wol.createScanner;var r;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var n;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(n||(t.SyntaxKind=n={})),t.getLocation=Cte.getLocation,t.parse=Cte.parse,t.parseTree=Cte.parseTree,t.findNodeAtLocation=Cte.findNodeAtLocation,t.findNodeAtOffset=Cte.findNodeAtOffset,t.getNodePath=Cte.getNodePath,t.getNodeValue=Cte.getNodeValue,t.visit=Cte.visit,t.stripComments=Cte.stripComments;var a;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(I){switch(I){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function l(I,C,b){return Pol.format(I,C,b)}t.format=l;function A(I,C,b,E){return ors.setProperty(I,C,b,E)}t.modify=A;function f(I,C){let b=C.slice(0).sort((N,B)=>{let F=N.offset-B.offset;return F===0?N.length-B.length:F}),E=I.length;for(let N=b.length-1;N>=0;N--){let B=b[N];if(B.offset+B.length<=E)I=ors.applyEdit(I,B);else throw new Error("Overlapping edit");E=B.offset}return I}t.applyEdits=f})});var OMr=H(yxe=>{"use strict";Object.defineProperty(yxe,"__esModule",{value:!0});yxe.JsonWorkspaceMetadata=yxe.JsonWorkspaceSymbol=void 0;var crs=_xe();yxe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function lrs(e){return e.replace("~","~0").replace("/","~1")}var WMr=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,n){this.filePath=t,this.ast=r,this.raw=n}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,crs.findNodeAtLocation)(this.ast,t);return r&&(0,crs.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,n){let a="";for(let l=0;llrs(l)).join("/");for(let l of this.changes.keys())l.startsWith(o+"/")&&this.changes.delete(l);this.changes.set(o,{jsonPath:t,type:n,value:r})}};yxe.JsonWorkspaceMetadata=WMr});var Ars=H(MMr=>{"use strict";Object.defineProperty(MMr,"__esModule",{value:!0});MMr.createVirtualAstObject=Mol;var Ool=RNt();function Mol(e,t={}){let r=(n,a,o,l)=>{t.listener&&(o===l||JSON.stringify(o)===JSON.stringify(l)||(Array.isArray(a)?t.listener(n.slice(0,-1),a):t.listener(n,l)))};return grs(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function grs(e,t,r,n=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,l){if(!(n.has(l)||a&&!a.has(l)))return Reflect.getOwnPropertyDescriptor(o,l)},has(o,l){return typeof l=="symbol"||n.has(l)?!1:Reflect.has(o,l)},get(o,l){if(n.has(l)||a&&!a.has(l))return;let A=Reflect.get(o,l);return typeof l=="symbol"?A:(0,Ool.isJsonObject)(A)&&!(A instanceof Map)||Array.isArray(A)?grs(A,[...t,l],r):A},set(o,l,A){if(n.has(l)||a&&!a.has(l))return!1;if(A===void 0)return this.deleteProperty?.(o,l)??!1;if(typeof l=="symbol")return Reflect.set(o,l,A);let f=urs(o,l);return Reflect.set(o,l,A)?(r([...t,l],o,f,A),!0):!1},deleteProperty(o,l){if(n.has(l))return!1;if(typeof l=="symbol")return Reflect.deleteProperty(o,l);let A=urs(o,l);return Reflect.deleteProperty(o,l)&&r([...t,l],o,A,void 0),!0},defineProperty(o,l,A){return typeof l=="symbol"?Reflect.defineProperty(o,l,A):!1},ownKeys(o){return Reflect.ownKeys(o).filter(l=>!n.has(l)&&(!a||a.has(l)))}})}function urs(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var frs=H(HMr=>{"use strict";Object.defineProperty(HMr,"__esModule",{value:!0});HMr.readJsonWorkspace=Qol;var _te=_xe(),dDt=$Ce(),drs=aMr(),prs=OMr(),ADt=Ars(),Hol=Object.freeze(["cli","newProjectRoot","schematics"]),Yol=Object.freeze(["cli","schematics","projectType","i18n"]);async function Qol(e,t,r={}){let n=await t.readFile(e);if(n===void 0)throw new Error("Unable to read workspace file.");let a=(0,_te.parseTree)(n,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,_te.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let l=o.value;if(l!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${l} ]`);let A={host:t,metadata:new prs.JsonWorkspaceMetadata(e,a,n),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...Hol,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...Yol,...r.allowedProjectExtensions??[]]),error(I,C){throw new Error(I)},warn(I,C){console.warn(I)}};return Xol(a,A)}function Xol(e,t){let r=t.metadata,n,a;t.trackChanges||(a=Object.create(null));let o=(0,_te.getNodeValue)(e);for(let[f,I]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let C=(0,_te.findNodeAtLocation)(e,["projects"]);if(!(0,dDt.isJsonObject)(I)||!C){t.error('Invalid "projects" field found; expected an object.',I);continue}n=Jol(C,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=I);let l;t.trackChanges&&(l=(f,I)=>{r.addChange(["projects",f],I,"project")});let A=new drs.ProjectDefinitionCollection(n,l);return{[prs.JsonWorkspaceSymbol]:r,projects:A,extensions:a??(0,ADt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,I){r.addChange(f,I)}})}}function Jol(e,t){let r=Object.create(null);for(let[n,a]of Object.entries((0,_te.getNodeValue)(e))){let o=(0,_te.findNodeAtLocation)(e,[n]);if(!(0,dDt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[n]=Uol(n,o,t)}return r}function Uol(e,t,r){let n=r.metadata,a,o=!1,l,A;r.trackChanges||(l=Object.create(null),A=Object.create(null));let f=(0,_te.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[N,B]of Object.entries(f))switch(N){case"targets":case"architect":{let F=(0,_te.findNodeAtLocation)(t,[N]);if(!(0,dDt.isJsonObject)(B)||!F){r.error(`Invalid "${N}" field found; expected an object.`,B);break}o=!0,a=Kol(e,F,r),n.hasLegacyTargetsName=N==="architect";break}case"prefix":case"root":case"sourceRoot":typeof B!="string"&&r.warn(`Project property "${N}" should be a string.`,B),A&&(A[N]=B);break;default:!r.unprefixedProjectExtensions.has(N)&&!/^[a-z]{1,3}-.*/.test(N)&&r.warn(`Project '${e}' contains extension with invalid name (${N}).`,N),l&&(l[N]=B);break}let I;r.trackChanges&&(I=(N,B,F)=>{o?n.addChange(["projects",e,"targets",N],B,"target"):n.addChange(["projects",e,"targets"],F,"targetcollection")});let C={targets:new drs.TargetDefinitionCollection(a,I),extensions:l??(0,ADt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(N,B){n.addChange(["projects",e,...N],B)}})},b=new Set(Object.keys(C)),E=A??(0,ADt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...b],listener(N,B){b.has(N[0])||n.addChange(["projects",e,...N],B)}});return Object.assign(E,C)}function Kol(e,t,r){let n=r.metadata,a=Object.create(null);for(let[o,l]of Object.entries((0,_te.getNodeValue)(t))){if(!(0,dDt.isJsonObject)(l)){r.warn("Skipping invalid target value; expected an object.",l);continue}r.trackChanges?a[o]=(0,ADt.createVirtualAstObject)(l,{include:["builder","options","configurations","defaultConfiguration"],listener(A,f){n.addChange(["projects",e,"targets",o,...A],f)}}):a[o]=l}return a}});var Crs=H(QMr=>{"use strict";Object.defineProperty(QMr,"__esModule",{value:!0});QMr.writeJsonWorkspace=qol;var Irs=_xe(),jol=wt("node:os"),zol=OMr();async function qol(e,t,r,n={}){let a=e[zol.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=ral(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=$ol(e,n.schema),l=JSON.stringify(o,null,2);return t.writeFile(r,l)}}function $ol(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...oje(e.projects)?{}:{projects:hrs(e.projects)}}}function hrs(e){let t=Object.create(null);for(let[r,n]of e)t[r]=mrs(n);return t}function mrs(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[n,a]of e.targets)t[n]=YMr(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function oje(e){return e===void 0||Object.keys(e).length===0}function YMr(e){return{builder:e.builder,...oje(e.options)?{}:{options:e.options},...oje(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function eal(e){let t=Object.create(null);for(let[r,n]of e)t[r]=YMr(n);return t}function tal(e,t){if(e!==void 0)switch(t){case"project":return mrs(e);case"projectcollection":{let r=hrs(e);return oje(r)?void 0:r}case"target":return YMr(e);case"targetcollection":{let r=eal(e);return oje(r)?void 0:r}default:return e}}function ral(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:n}=e;for(let{jsonPath:a,value:o,type:l}of r.values()){n&&a[2]==="targets"&&(a[2]="architect");let A=(0,Irs.modify)(t,a,tal(o,l),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:nal(t)}});t=(0,Irs.applyEdits)(t,A)}return t}function nal(e){let t=`\r -`,r=` -`,n=e.match(/(?:\r?\n)/g);if(n?.length){let a=n.filter(l=>l===t).length,o=n.length-a;return a>o?t:r}return jol.EOL}});var yrs=H(Ole=>{"use strict";Object.defineProperty(Ole,"__esModule",{value:!0});Ole.WorkspaceFormat=void 0;Ole._test_addWorkspaceFile=oal;Ole._test_removeWorkspaceFile=aal;Ole.readWorkspace=cal;Ole.writeWorkspace=lal;var aje=nDt(),ial=frs(),sal=Crs(),_rs=new WeakMap,b_e;(function(e){e[e.JSON=0]="JSON"})(b_e||(Ole.WorkspaceFormat=b_e={}));function oal(e,t){cje[e]=t}function aal(e){delete cje[e]}var cje={"angular.json":b_e.JSON,".angular.json":b_e.JSON};async function cal(e,t,r){if(await t.isDirectory(e)){let a=(0,aje.normalize)(e),o=!1;for(let[l,A]of Object.entries(cje)){if(r!==void 0&&r!==A)continue;let f=(0,aje.getSystemPath)((0,aje.join)(a,l));if(await t.isFile(f)){e=f,r=A,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,aje.basename)((0,aje.normalize)(e));a in cje&&(r=cje[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let n;switch(r){case b_e.JSON:n=await(0,ial.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return _rs.set(n,b_e.JSON),{workspace:n}}async function lal(e,t,r,n){if(n===void 0&&(n=_rs.get(e),n===void 0))throw new Error("A format is required for custom workspace objects.");switch(n){case b_e.JSON:return(0,sal.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var brs=H(oL=>{"use strict";var ual=oL&&oL.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gal=oL&&oL.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ual(t,e,r)};Object.defineProperty(oL,"__esModule",{value:!0});oL.writeWorkspace=oL.readWorkspace=oL.WorkspaceFormat=oL.createWorkspaceHost=void 0;gal(aMr(),oL);var Aal=zts();Object.defineProperty(oL,"createWorkspaceHost",{enumerable:!0,get:function(){return Aal.createWorkspaceHost}});var XMr=yrs();Object.defineProperty(oL,"WorkspaceFormat",{enumerable:!0,get:function(){return XMr.WorkspaceFormat}});Object.defineProperty(oL,"readWorkspace",{enumerable:!0,get:function(){return XMr.readWorkspace}});Object.defineProperty(oL,"writeWorkspace",{enumerable:!0,get:function(){return XMr.writeWorkspace}})});var Z2=H(IT=>{"use strict";var Ers=IT&&IT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dal=IT&&IT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),JMr=IT&&IT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(fDt,"__esModule",{value:!0});fDt.htmlSelectorFormat=void 0;var hal=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function mal(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of hal)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}fDt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&mal(e)}}});var KMr=H(IDt=>{"use strict";Object.defineProperty(IDt,"__esModule",{value:!0});IDt.pathFormat=void 0;var Cal=Z2();IDt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,Cal.normalize)(e)}}});var jMr=H(Mle=>{"use strict";Object.defineProperty(Mle,"__esModule",{value:!0});Mle.standardFormats=Mle.pathFormat=Mle.htmlSelectorFormat=void 0;var _al=UMr(),yal=KMr(),bal=UMr();Object.defineProperty(Mle,"htmlSelectorFormat",{enumerable:!0,get:function(){return bal.htmlSelectorFormat}});var Eal=KMr();Object.defineProperty(Mle,"pathFormat",{enumerable:!0,get:function(){return Eal.pathFormat}});Mle.standardFormats=[_al.htmlSelectorFormat,yal.pathFormat]});var yH=H(F4=>{"use strict";Object.defineProperty(F4,"__esModule",{value:!0});F4.Tree=F4.TreeSymbol=F4.FileVisitorCancelToken=F4.MergeStrategy=void 0;var Srs;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(Srs||(F4.MergeStrategy=Srs={}));F4.FileVisitorCancelToken=Symbol();F4.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();F4.Tree=Object.freeze({isTree(e){return F4.TreeSymbol in e}})});var Z4=H(hD=>{"use strict";Object.defineProperty(hD,"__esModule",{value:!0});hD.UnimplementedException=hD.UnsuccessfulWorkflowExecution=hD.MergeConflictException=hD.InvalidUpdateRecordException=hD.ContentHasMutatedException=hD.FileAlreadyExistException=hD.FileDoesNotExistException=hD.SchematicsException=void 0;var Hle=Z2(),zMr=class extends Hle.BaseException{};hD.SchematicsException=zMr;var qMr=class extends Hle.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};hD.FileDoesNotExistException=qMr;var $Mr=class extends Hle.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};hD.FileAlreadyExistException=$Mr;var eHr=class extends Hle.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};hD.ContentHasMutatedException=eHr;var tHr=class extends Hle.BaseException{constructor(){super("Invalid record instance.")}};hD.InvalidUpdateRecordException=tHr;var rHr=class extends Hle.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};hD.MergeConflictException=rHr;var nHr=class extends Hle.BaseException{constructor(){super("Workflow did not execute successfully.")}};hD.UnsuccessfulWorkflowExecution=nHr;var iHr=class extends Hle.BaseException{constructor(){super("This function is unimplemented.")}};hD.UnimplementedException=iHr});var mDt=H(hDt=>{"use strict";Object.defineProperty(hDt,"__esModule",{value:!0});hDt.DelegateTree=void 0;var Sal=yH(),sHr=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[Sal.TreeSymbol](){return this}};hDt.DelegateTree=sHr});var vrs=H(bxe=>{"use strict";Object.defineProperty(bxe,"__esModule",{value:!0});bxe.LazyFileEntry=bxe.SimpleFileEntry=void 0;var oHr=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};bxe.SimpleFileEntry=oHr;var aHr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};bxe.LazyFileEntry=aHr});var wrs=H((CDt,Brs)=>{(function(e,t){typeof CDt=="object"&&typeof Brs<"u"?t(CDt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(CDt,function(e){"use strict";let n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Se=0;Se>>=1,Me&&(k=-2147483648|-k),De+k}function A(Se,De,k){let et=De-k;et=et<0?-et<<1|1:et<<1;do{let ct=et&31;et>>>=5,et>0&&(ct|=32),Se.write(a[ct])}while(et>0);return De}function f(Se,De){return Se.pos>=De?!1:Se.peek()!==44}let I=1024*16,C=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Se){return Buffer.from(Se.buffer,Se.byteOffset,Se.byteLength).toString()}}:{decode(Se){let De="";for(let k=0;k0?k+C.decode(De.subarray(0,et)):k}}class E{constructor(De){this.pos=0,this.buffer=De}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(De){let{buffer:k,pos:et}=this,ct=k.indexOf(De,et);return ct===-1?k.length:ct}}let N=[];function B(Se){let{length:De}=Se,k=new E(Se),et=[],ct=[],Me=0;for(;k.pos0&&k.write(44),et[0]=A(k,Me,et[0]),A(k,je,0),A(k,Yt,0);let Nr=ct.length===6?1:0;A(k,Nr,0),ct.length===6&&A(k,ct[5],0);for(let er of Tr)A(k,er,0);for(De++;DeSt||vt===St&&xt>=At)break;De=Q(Se,De,k,et)}return k.write(44),et[0]=A(k,St,et[0]),A(k,At,0),De}function X(Se){let{length:De}=Se,k=new E(Se),et=[],ct=[],Me=0,je=0,St=0,At=0,Yt=0,Tr=0,Nr=0,er=0;do{let vt=k.indexOf(";"),xt=0;for(;k.pos_n;jt--){let Fn=Nr;Nr=l(k,Nr),er=l(k,Nr===Fn?er:0);let Nn=l(k,0);ke.push([Nn,Nr,er])}}else ke=[[_n]];Ar.push(ke)}while(f(k,vt))}qr.bindings=Ar,et.push(qr),ct.push(qr)}Me++,k.pos=vt+1}while(k.pos0&&k.write(44),et[1]=A(k,ct[1],et[1]);let er=(ct.length===6?1:0)|(Tr?2:0)|(Yt?4:0);if(A(k,er,0),ct.length===6){let{4:vt,5:xt}=ct;vt!==et[2]&&(et[3]=0),et[2]=A(k,vt,et[2]),et[3]=A(k,xt,et[3])}if(Tr){let{0:vt,1:xt,2:Zr}=ct.callsite;vt!==et[4]?(et[5]=0,et[6]=0):xt!==et[5]&&(et[6]=0),et[4]=A(k,vt,et[4]),et[5]=A(k,xt,et[5]),et[6]=A(k,Zr,et[6])}if(Nr)for(let vt of Nr){vt.length>1&&A(k,-vt.length,0);let xt=vt[0][0];A(k,xt,0);let Zr=Me,qt=je;for(let Xt=1;XtSt||xt===St&&Zr>=At)break;De=ne(Se,De,k,et)}return et[0]0&&De.write(59),St.length===0)continue;let At=0;for(let Yt=0;Yt0&&De.write(44),At=A(De,Tr[0],At),Tr.length!==1&&(k=A(De,Tr[1],k),et=A(De,Tr[2],et),ct=A(De,Tr[3],ct),Tr.length!==4&&(Me=A(De,Tr[4],Me)))}}return De.flush()}e.decode=fe,e.decodeGeneratedRanges=X,e.decodeOriginalScopes=B,e.encode=be,e.encodeGeneratedRanges=ae,e.encodeOriginalScopes=F,Object.defineProperty(e,"__esModule",{value:!0})})});var krs=H((mzu,Drs)=>{"use strict";var val=wrs(),_Dt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},yDt=class e{constructor(t,r,n){this.start=t,this.end=r,this.original=n,this.intro="",this.outro="",this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var wal=Bal(),uje=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=val.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+wal(this.toString())}};function Tal(e){let t=e.split(` -`),r=t.filter(o=>/^\t+/.test(o)),n=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&n.length===0)return null;if(r.length>=n.length)return" ";let a=n.reduce((o,l)=>{let A=/^ +/.exec(l)[0].length;return Math.min(A,o)},1/0);return new Array(a+1).join(" ")}function Rrs(e,t){let r=e.split(/[/\\]/),n=t.split(/[/\\]/);for(r.pop();r[0]===n[0];)r.shift(),n.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(n).join("/")}var Ral=Object.prototype.toString;function Nrs(e){return Ral.call(e)==="[object Object]"}function cHr(e){let t=e.split(` -`),r=[];for(let n=0,a=0;n>1;a=0&&o>l;){let I=[this.generatedCodeColumn,t,n.line,n.column];a>=0&&I.push(a),this.rawSegments.push(I),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,A=l,l=r.indexOf(` -`,l+1)}let f=[this.generatedCodeColumn,t,n.line,n.column];a>=0&&f.push(a),this.rawSegments.push(f),this.advance(r.slice(A+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(r));this.pending=null}addUneditedChunk(t,r,n,a,o){let l=r.start,A=!0,f=!1;for(;l1){for(let n=0;n{let A=o(l.start);l.intro.length&&a.advance(l.intro),l.edited?a.addEdit(r,l.content,A,l.storeName?n.indexOf(l.original):-1):a.addUneditedChunk(r,l,this.original,A,this.sourcemapLocations),l.outro.length&&a.advance(l.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?Rrs(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:n,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new uje(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=Tal(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let n=/^[^\r\n]/gm;if(Nrs(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(C=>{for(let b=C[0];bo?`${t}${I}`:(o=!0,I);this.intro=this.intro.replace(n,l);let A=0,f=this.firstChunk;for(;f;){let I=f.end;if(f.edited)a[A]||(f.content=f.content.replace(n,l),f.content.length&&(o=f.content[f.content.length-1]===` -`));else for(A=f.start;A=t&&n<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(n);let a=this.byStart[t],o=this.byEnd[r],l=a.previous,A=o.next,f=this.byStart[n];if(!f&&o===this.lastChunk)return this;let I=f?f.previous:this.lastChunk;return l&&(l.next=A),A&&(A.previous=l),I&&(I.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=I,o.next=f||null,I||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,n,a){return a=a||{},this.update(t,r,n,{...a,overwrite:!a.contentOnly})}update(t,r,n,a){if(t=t+this.offset,r=r+this.offset,typeof n!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(Exe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),Exe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,l=a!==void 0?a.overwrite:!1;if(o){let I=this.original.slice(t,r);Object.defineProperty(this.storedNames,I,{writable:!0,value:!0,enumerable:!0})}let A=this.byStart[t],f=this.byEnd[r];if(A){let I=A;for(;I!==f;){if(I.next!==this.byStart[I.end])throw new Error("Cannot overwrite across a split point");I=I.next,I.edit("",!1)}A.edit(n,o,!l)}else{let I=new yDt(t,r,"").edit(n,o);f.next=I,I.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byEnd[t];return n?n.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let n=this.byStart[t];return n?n.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.intro="",n.outro="",n.edit(""),n=r>n.end?this.byStart[n.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let n=this.byStart[t];for(;n;)n.reset(),n=r>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(lje);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(t=n.outro.lastIndexOf(lje),t!==-1)return n.outro.substr(t+1)+r;r=n.outro+r}if(n.content.length>0){if(t=n.content.lastIndexOf(lje),t!==-1)return n.content.substr(t+1)+r;r=n.content+r}if(n.intro.length>0){if(t=n.intro.lastIndexOf(lje),t!==-1)return n.intro.substr(t+1)+r;r=n.intro+r}}while(n=n.previous);return t=this.intro.lastIndexOf(lje),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let n="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return n;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(n+=a.intro);let l=a.start=r;if(l&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let A=o===a?t-a.start:0,f=l?a.content.length+r-a.end:a.content.length;if(n+=a.content.slice(A,f),a.outro&&(!l||a.end===r)&&(n+=a.outro),l)break;a=a.next}return n}snip(t,r){let n=this.clone();return n.remove(0,t),n.remove(r,n.original.length),n}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,n=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=n?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=cHr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let n=t.split(r);return this.byEnd[r]=t,this.byStart[r]=n,this.byEnd[n.end]=n,t===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let n=this.lastChunk;do{let a=n.end,o=n.trimEnd(r);if(n.end!==a&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.previous}while(n);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let n=this.firstChunk;do{let a=n.end,o=n.trimStart(r);if(n.end!==a&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),o)return!0;n=n.next}while(n);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function n(o,l){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(A,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(l.index!=null){let A=n(l,this.original);A!==l[0]&&this.overwrite(l.index,l.index+l[0].length,A)}});else{let o=this.original.match(t);if(o&&o.index!=null){let l=n(o,this.original);l!==o[0]&&this.overwrite(o.index,o.index+o[0].length,l)}}return this}_replaceString(t,r){let{original:n}=this,a=n.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:n}=this,a=t.length;for(let o=n.indexOf(t);o!==-1;o=n.indexOf(t,o+a))n.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},Trs=Object.prototype.hasOwnProperty,lHr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` -`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof yte)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!Nrs(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{Trs.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!Trs.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new yte(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],n;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(l=>{~r.indexOf(l)||r.push(l)})});let a=new bDt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,l)=>{l>0&&a.advance(this.separator);let A=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,I=cHr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(C=>{let b=I(C.start);C.intro.length&&a.advance(C.intro),o.filename?C.edited?a.addEdit(A,C.content,b,C.storeName?r.indexOf(C.original):-1):a.addUneditedChunk(A,C,f.original,b,f.sourcemapLocations):a.advance(C.content),C.outro.length&&a.advance(C.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&A!==-1&&(n===void 0&&(n=[]),n.push(A))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?Rrs(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:n}}generateMap(t){return new uje(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let n=r.content._getRawIndentString();n!==null&&(t[n]||(t[n]=0),t[n]+=1)}),Object.keys(t).sort((r,n)=>t[r]-t[n])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` -`;return this.sources.forEach((n,a)=>{let o=n.separator!==void 0?n.separator:this.separator,l=r||a>0&&/\r?\n$/.test(o);n.content.indent(t,{exclude:n.indentExclusionRanges,indentStart:l}),r=n.content.lastChar()===` -`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(n,a)=>a>0?t+n:n)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,n)=>{let a=r.separator!==void 0?r.separator:this.separator;return(n>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let n,a=0;do if(n=this.sources[a++],!n)break;while(!n.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),n,a=this.sources.length-1;do if(n=this.sources[a--],!n){this.intro=this.intro.replace(r,"");break}while(!n.content.trimEndAborted(t));return this}};yte.Bundle=lHr;yte.SourceMap=uje;yte.default=yte;Drs.exports=yte});var gHr=H(Yle=>{"use strict";var Dal=Yle&&Yle.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Yle,"__esModule",{value:!0});Yle.UpdateRecorderBase=Yle.IndexOutOfBoundException=void 0;var kal=Z2(),xal=Dal(krs()),Gal=Z4(),EDt=class extends kal.BaseException{constructor(t,r,n=1/0){super(`Index ${t} outside of range [${r}, ${n}].`)}};Yle.IndexOutOfBoundException=EDt;var uHr=class e{data;bom;_path;content;constructor(t,r,n="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(n,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(l){throw l instanceof TypeError?new Error(`Failed to decode "${r}" as ${n} text.`):l}this._path=r,this.content=new xal.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),n=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&n==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&n==254?new e(t.content,t.path,"utf-16le",!0):r===254&&n==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new EDt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new Gal.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};Yle.UpdateRecorderBase=uHr});var BDt=H(vDt=>{"use strict";Object.defineProperty(vDt,"__esModule",{value:!0});vDt.ScopedTree=void 0;var lw=Z2(),Fal=mDt(),Zal=yH(),gje=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,this._base.path))}get content(){return this._base.content}},SDt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new gje(r,this.scope)}visit(t){return this._base.visit((r,n)=>{t((0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this.scope,r)),n&&new gje(n,this.scope))})}},AHr=class e{_base;_root;constructor(t,r){this._base=t;let n=(0,lw.normalize)("/"+r);this._root=new SDt(this._base.getDir(n),n)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let n=this,a=new class extends Fal.DelegateTree{get actions(){return t.actions.map(o=>n._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new gje(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new SDt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.path)),to:(0,lw.join)(lw.NormalizedRoot,(0,lw.relative)(this._root.scope,r.to))}));return t}[Zal.TreeSymbol](){return this}_fullPath(t){return(0,lw.join)(this._root.scope,(0,lw.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};vDt.ScopedTree=AHr});var E_e=H(t6=>{"use strict";Object.defineProperty(t6,"__esModule",{value:!0});t6.FilterHostTree=t6.HostCreateTree=t6.HostTree=t6.HostDirEntry=void 0;var aL=Z2(),xrs=_xe(),DO=Z4(),Lal=mDt(),Val=vrs(),e6=yH(),Grs=gHr(),Pal=BDt(),Wal=0,wDt=class{parent;path;_host;_tree;constructor(t,r,n,a){this.parent=t,this.path=r,this._host=n,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,aL.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,aL.join)(this.path,t)))}dir(t){return this._tree.getDir((0,aL.join)(this.path,t))}file(t){return this._tree.get((0,aL.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==e6.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((n,a)=>[...n,...t(r.dir(a))],r.subfiles.map(n=>r.file(n)))}return t(this)}};t6.HostDirEntry=wDt;var Sxe=class e{_backend;_id=--Wal;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[e6.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new aL.virtualFs.Empty){this._backend=t,this._record=new aL.virtualFs.CordHost(new aL.virtualFs.SafeReadonlyHost(t)),this._recordSync=new aL.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,aL.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new aL.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof Lal.DelegateTree?this.isAncestorOf(t._other):t instanceof Pal.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=e6.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=e6.MergeStrategy.Overwrite);let n=(r&e6.MergeStrategy.AllowCreationConflict)==e6.MergeStrategy.AllowCreationConflict,a=(r&e6.MergeStrategy.AllowOverwriteConflict)==e6.MergeStrategy.AllowOverwriteConflict,o=(r&e6.MergeStrategy.AllowDeleteConflict)==e6.MergeStrategy.AllowDeleteConflict;t.actions.forEach(l=>{switch(l.kind){case"c":{let{path:A,content:f}=l;if(this._willCreate(A)||this._willOverwrite(A)||this.exists(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!n)throw new DO.MergeConflictException(A);this._record.overwrite(A,f).subscribe()}else this._record.create(A,f).subscribe();return}case"o":{let{path:A,content:f}=l;if(this._willDelete(A)&&!a)throw new DO.MergeConflictException(A);if(this._willOverwrite(A)){let I=this.read(A);if(I&&f.equals(I))return;if(!a)throw new DO.MergeConflictException(A)}this._record.write(A,f).subscribe();return}case"r":{let{path:A,to:f}=l;if(this._willDelete(A))throw new DO.MergeConflictException(A);if(this._willRename(A)){if(this._record.willRenameTo(A,f))return;throw new DO.MergeConflictException(A)}this.rename(A,f);return}case"d":{let{path:A}=l;if(this._willDelete(A))return;if(!this.exists(A)&&!o)throw new DO.MergeConflictException(A);this._recordSync.delete(A);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new DO.FileDoesNotExistException(t);let n=new TextDecoder("utf-8",{fatal:!0});try{return n.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),n=[],a=(0,xrs.parse)(r,n,{allowTrailingComma:!0});if(n[0]){let{error:o,offset:l}=n[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,xrs.printParseErrorCode)(o)} at offset: ${l}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new aL.PathIsDirectoryException(r);return this._recordSync.exists(r)?new Val.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new aL.PathIsFileException(r);let n=this._dirCache.get(r);if(!n){let a=(0,aL.dirname)(r);r===a&&(a=null),n=new wDt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,n)}return n}visit(t){this.root.visit((r,n)=>{t(r,n)})}overwrite(t,r){let n=this._normalizePath(t);if(!this._recordSync.exists(n))throw new DO.FileDoesNotExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(n,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new DO.FileDoesNotExistException(t);return Grs.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof Grs.UpdateRecorderBase){let r=t.path,n=this.get(r);if(n){let a=t.apply(n.content);a.equals(n.content)||this.overwrite(r,a)}else throw new DO.ContentHasMutatedException(r)}else throw new DO.InvalidUpdateRecordException}create(t,r){let n=this._normalizePath(t);if(this._recordSync.exists(n))throw new DO.FileAlreadyExistException(n);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(n,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new DO.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};t6.HostTree=Sxe;var dHr=class extends Sxe{constructor(t){super();let r=new Sxe(t);r.visit(n=>{let a=r.read(n);a&&this.create(n,a)})}};t6.HostCreateTree=dHr;var pHr=class extends Sxe{constructor(t,r=()=>!0){let n=new aL.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let l=o.pop();if(l===void 0)break;let A=!1;if(a.isDirectory(l).subscribe(C=>A=C),A){a.list(l).subscribe(C=>o.push(...C.map(b=>(0,aL.join)(l,b))));continue}let f=!1;if(a.isFile(l).subscribe(C=>f=C),!f||!r(l))continue;let I=null;a.read(l).subscribe(C=>I=C),I!==null&&n.write(l,I).subscribe()}super(n);for(let l of t.actions)if(r(l.path))switch(l.kind){case"c":this.create(l.path,l.content);break;case"d":this.delete(l.path);break;case"o":this.overwrite(l.path,l.content);break;case"r":this.rename(l.path,l.to);break}}};t6.FilterHostTree=pHr});var Aje=H(vxe=>{"use strict";Object.defineProperty(vxe,"__esModule",{value:!0});vxe.empty=Hal;vxe.branch=Yal;vxe.merge=Qal;vxe.partition=Xal;var Oal=Z4(),TDt=E_e(),Mal=yH();function Hal(){return new TDt.HostTree}function Yal(e){return e.branch()}function Qal(e,t,r=Mal.MergeStrategy.Default){return e.merge(t,r),e}function Xal(e,t){if(e instanceof TDt.HostTree)return[new TDt.FilterHostTree(e,t),new TDt.FilterHostTree(e,(r,n)=>!t(r,n))];throw new Oal.SchematicsException("Tree type is not supported.")}});var Frs=H(Xle=>{"use strict";Object.defineProperty(Xle,"__esModule",{value:!0});Xle.NullTree=Xle.NullTreeDirEntry=Xle.CannotCreateFileException=void 0;var dje=Z2(),Qle=Z4(),Jal=yH(),Ual=gHr(),RDt=class extends dje.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};Xle.CannotCreateFileException=RDt;var pje=class e{path;get parent(){return this.path=="/"?null:new e((0,dje.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,dje.join)(this.path,t))}file(t){return null}visit(){}};Xle.NullTreeDirEntry=pje;var fHr=class e{[Jal.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new pje((0,dje.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new Qle.FileDoesNotExistException(t)}readJson(t){throw new Qle.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new pje((0,dje.normalize)("/"+t))}visit(){}beginUpdate(t){throw new Qle.FileDoesNotExistException(t)}commitUpdate(t){throw new Qle.FileDoesNotExistException(t instanceof Ual.UpdateRecorderBase?t.path:"")}copy(t,r){throw new Qle.FileDoesNotExistException(t)}delete(t){throw new Qle.FileDoesNotExistException(t)}create(t,r){throw new RDt(t)}rename(t,r){throw new Qle.FileDoesNotExistException(t)}overwrite(t,r){throw new Qle.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};Xle.NullTree=fHr});var kDt=H(Jle=>{"use strict";Object.defineProperty(Jle,"__esModule",{value:!0});Jle.InvalidSourceResultException=Jle.InvalidRuleResultException=void 0;Jle.callSource=Kal;Jle.callRule=jal;var Lrs=Z2(),r6=qb(),Vrs=yH();function Prs(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var NDt=class extends Lrs.BaseException{constructor(t){super(`Invalid rule result: ${Prs(t)}.`)}};Jle.InvalidRuleResultException=NDt;var DDt=class extends Lrs.BaseException{constructor(t){super(`Invalid source result: ${Prs(t)}.`)}};Jle.InvalidSourceResultException=DDt;function Kal(e,t){return(0,r6.defer)(async()=>{let r=e(t);if((0,r6.isObservable)(r)&&(r=await(0,r6.lastValueFrom)(r.pipe((0,r6.defaultIfEmpty)(void 0)))),r&&Vrs.TreeSymbol in r)return r;throw new DDt(r)})}function jal(e,t,r){return(0,r6.isObservable)(t)?t.pipe((0,r6.mergeMap)(n=>Zrs(e,n,r))):(0,r6.defer)(()=>Zrs(e,t,r))}async function Zrs(e,t,r){let n=await e(t,r);for(;typeof n=="function";)n=await n(t,r);if(typeof n>"u")return t;if((0,r6.isObservable)(n)&&(n=await(0,r6.lastValueFrom)(n.pipe((0,r6.defaultIfEmpty)(t)))),n&&Vrs.TreeSymbol in n)return n;throw new NDt(n)}});var GDt=H(Bxe=>{"use strict";Object.defineProperty(Bxe,"__esModule",{value:!0});Bxe.SchematicImpl=Bxe.InvalidSchematicsNameException=void 0;var zal=Z2(),fje=qb(),qal=kDt(),$al=BDt(),xDt=class extends zal.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};Bxe.InvalidSchematicsNameException=xDt;var IHr=class{_description;_factory;_collection;_engine;constructor(t,r,n,a){if(this._description=t,this._factory=r,this._collection=n,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new xDt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,n,a){let o=this._engine.createContext(this,n,a);return r.pipe((0,fje.first)(),(0,fje.concatMap)(l=>this._engine.transformOptions(this,t,o).pipe((0,fje.map)(A=>[l,A]))),(0,fje.concatMap)(([l,A])=>{let f,I=!1;return a&&a.scope?(I=!0,f=new $al.ScopedTree(l,a.scope)):f=l,(0,qal.callRule)(this._factory(A),f,o).pipe((0,fje.map)(C=>C===f?l:I?(l.merge(C),l):C))}))}};Bxe.SchematicImpl=IHr});var Wrs=H(L2=>{"use strict";Object.defineProperty(L2,"__esModule",{value:!0});L2.SchematicEngine=L2.TaskScheduler=L2.CollectionImpl=L2.UnknownTaskDependencyException=L2.UnregisteredTaskException=L2.SchematicEngineConflictingException=L2.PrivateSchematicException=L2.UnknownSchematicException=L2.CircularCollectionException=L2.UnknownCollectionException=L2.UnknownUrlSourceProtocol=void 0;var n6=Z2(),FDt=qb(),ecl=yH(),tcl=Frs(),rcl=Aje(),ncl=GDt(),ZDt=class extends n6.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};L2.UnknownUrlSourceProtocol=ZDt;var LDt=class extends n6.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};L2.UnknownCollectionException=LDt;var VDt=class extends n6.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};L2.CircularCollectionException=VDt;var PDt=class extends n6.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};L2.UnknownSchematicException=PDt;var WDt=class extends n6.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};L2.PrivateSchematicException=WDt;var ODt=class extends n6.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};L2.SchematicEngineConflictingException=ODt;var MDt=class extends n6.BaseException{constructor(t,r){let n=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${n}.`)}};L2.UnregisteredTaskException=MDt;var HDt=class extends n6.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};L2.UnknownTaskDependencyException=HDt;var YDt=class{_description;_engine;baseDescriptions;constructor(t,r,n){this._description=t,this._engine=r,this.baseDescriptions=n}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};L2.CollectionImpl=YDt;var QDt=class e{_context;_queue=new n6.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((n,a)=>n+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(n=>{let a=this._taskIds.get(n);if(!a)throw new HDt(n);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),n=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:n,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};L2.TaskScheduler=QDt;var hHr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||ecl.MergeStrategy.Default}createCollection(t,r){let n=this._collectionCache.get(t);if(n)return n;let[a,o]=this._createCollectionDescription(t,r?.description);return n=new YDt(a,this,o),this._collectionCache.set(t,n),this._schematicCache.set(n,new Map),n}_createCollectionDescription(t,r,n){let a=this._host.createCollectionDescription(t,r);if(!a)throw new LDt(t);if(n&&n.has(a.name))throw new VDt(t);let o=new Array;if(a.extends){n=(n||new Set).add(a.name);for(let l of a.extends){let[A,f]=this._createCollectionDescription(l,a,new Set(n));o.unshift(A,...f)}}return[a,o]}createContext(t,r,n){if(r&&r.engine&&r.engine!==this)throw new ODt;let a=!0;n&&n.interactive!=null?a=n.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new n6.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:I},l=this._host.transformContext(o);l&&(o=l);let A=new QDt(o),f=this._host;this._taskSchedulers.push(A);function I(C,b){let E=C.toConfiguration();if(!f.hasTaskExecutor(E.name))throw new MDt(E.name,t.description);return E.dependencies=E.dependencies||[],b&&E.dependencies.unshift(...b),A.schedule(E)}return o}createSchematic(t,r,n=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let l=r.description,A=this._host.createSchematicDescription(t,r.description);if(!A){if(r.baseDescriptions){for(let I of r.baseDescriptions)if(A=this._host.createSchematicDescription(t,I),A){l=I;break}}if(!A)throw new PDt(t,r.description)}if(A.private&&!n)throw new WDt(t,r.description);let f=this._host.getSchematicRuleFactory(A,l);return o=new ncl.SchematicImpl(A,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let n=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)n.push(...this._host.listSchematicNames(a,r));return[...new Set(n)].sort()}transformOptions(t,r,n){return this._host.transformOptions(t.description,r,n)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new tcl.NullTree;case"empty:":return()=>(0,rcl.empty)()}let n=this._host.createSourceFromUrl(t,r);if(!n)throw new ZDt(t.toString());return n}executePostTasks(){let t=new Map;return(0,FDt.from)(this._taskSchedulers).pipe((0,FDt.concatMap)(n=>n.finalize()),(0,FDt.concatMap)(n=>{let{name:a,options:o}=n.configuration,l=t.get(a);return l?l(o,n.context):this._host.createTaskExecutor(a).pipe((0,FDt.concatMap)(A=>(t.set(a,A),A(o,n.context))))}))}};L2.SchematicEngine=hHr});var Mrs=H(Ors=>{"use strict";Object.defineProperty(Ors,"__esModule",{value:!0})});var CHr=H(bte=>{"use strict";var icl=bte&&bte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mHr=bte&&bte.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&icl(t,e,r)};Object.defineProperty(bte,"__esModule",{value:!0});mHr(Wrs(),bte);mHr(Mrs(),bte);mHr(GDt(),bte)});var Hrs=H(_Hr=>{"use strict";Object.defineProperty(_Hr,"__esModule",{value:!0});_Hr.createConsoleLogger=acl;var scl=qb(),ocl=Z2();function acl(e=!1,t=process.stdout,r=process.stderr,n){let a=new ocl.logging.IndentLogger("cling");return a.pipe((0,scl.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let l=n&&n[o.level],A=t;switch(o.level){case"warn":case"fatal":case"error":A=r;break}let f=2e3,I=o.message;for(;I;){let C=I.slice(0,f);I=I.slice(f),A.write(l?l(C):C)}A.write(` -`)}),a}});var Qrs=H(wxe=>{"use strict";Object.defineProperty(wxe,"__esModule",{value:!0});wxe.NodeJsSyncHost=wxe.NodeJsAsyncHost=void 0;var mD=wt("node:fs"),ccl=wt("node:path"),$b=qb(),oC=Z2();async function lcl(e){try{return await mD.promises.access(e,mD.constants.F_OK),!0}catch{return!1}}var XDt;function Yrs(){if(!XDt)try{XDt=wt("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var yHr=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,$b.from)(mD.promises.mkdir((0,oC.getSystemPath)((0,oC.dirname)(t)),{recursive:!0})).pipe((0,$b.mergeMap)(()=>mD.promises.writeFile((0,oC.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,$b.from)(mD.promises.readFile((0,oC.getSystemPath)(t))).pipe((0,$b.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,$b.from)(mD.promises.rm((0,oC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,$b.from)(mD.promises.rename((0,oC.getSystemPath)(t),(0,oC.getSystemPath)(r)))}list(t){return(0,$b.from)(mD.promises.readdir((0,oC.getSystemPath)(t))).pipe((0,$b.map)(r=>r.map(n=>(0,oC.fragment)(n))))}exists(t){return(0,$b.from)(lcl((0,oC.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,$b.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,$b.map)(r=>r.isFile()))}stat(t){return(0,$b.from)(mD.promises.stat((0,oC.getSystemPath)(t)))}watch(t,r){return new $b.Observable(n=>{Yrs();let a=new XDt({persistent:!0});return a.add((0,oC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,$b.publish)(),(0,$b.refCount)())}};wxe.NodeJsAsyncHost=yHr;var bHr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new $b.Observable(n=>{(0,mD.mkdirSync)((0,oC.getSystemPath)((0,oC.dirname)(t)),{recursive:!0}),(0,mD.writeFileSync)((0,oC.getSystemPath)(t),new Uint8Array(r)),n.next(),n.complete()})}read(t){return new $b.Observable(r=>{let n=(0,mD.readFileSync)((0,oC.getSystemPath)(t));r.next(new Uint8Array(n).buffer),r.complete()})}delete(t){return new $b.Observable(r=>{(0,mD.rmSync)((0,oC.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new $b.Observable(n=>{let a=(0,oC.getSystemPath)(r);(0,mD.mkdirSync)((0,ccl.dirname)(a),{recursive:!0}),(0,mD.renameSync)((0,oC.getSystemPath)(t),a),n.next(),n.complete()})}list(t){return new $b.Observable(r=>{let n=(0,mD.readdirSync)((0,oC.getSystemPath)(t));r.next(n.map(a=>(0,oC.fragment)(a))),r.complete()})}exists(t){return new $b.Observable(r=>{r.next((0,mD.existsSync)((0,oC.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,$b.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,$b.map)(r=>r.isFile()))}stat(t){return new $b.Observable(r=>{r.next((0,mD.statSync)((0,oC.getSystemPath)(t))),r.complete()})}watch(t,r){return new $b.Observable(n=>{Yrs();let a=new XDt({persistent:!1});return a.add((0,oC.getSystemPath)(t)),a.on("change",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{n.next({path:(0,oC.normalize)(o),time:new Date,type:oC.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,$b.publish)(),(0,$b.refCount)())}};wxe.NodeJsSyncHost=bHr});var JDt=H(Ule=>{"use strict";var ucl=Ule&&Ule.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Xrs=Ule&&Ule.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ucl(t,e,r)};Object.defineProperty(Ule,"__esModule",{value:!0});Xrs(Hrs(),Ule);Xrs(Qrs(),Ule)});var vHr=H(S_e=>{"use strict";Object.defineProperty(S_e,"__esModule",{value:!0});S_e.ActionList=S_e.UnknownActionException=void 0;S_e.isContentAction=dcl;var gcl=Z2(),EHr=class extends gcl.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};S_e.UnknownActionException=EHr;var Acl=1,SHr=class{_actions=[];_action(t){this._actions.push({...t,id:Acl++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,n=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):n.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let l=t.get(o.path),A=n.get(o.path);l&&(t.delete(o.path),t.set(o.to,l)),A&&(n.delete(o.path),n.set(o.to,A));let f;for(let[I,C]of r.entries())if(C==o.path){f=I;break}f&&r.set(f,o.to),!l&&!A&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,l)=>{this.rename(l,o)}),t.forEach((o,l)=>{this.create(l,o)}),n.forEach((o,l)=>{this.overwrite(l,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};S_e.ActionList=SHr;function dcl(e){return e.kind=="c"||e.kind=="o"}});var wHr=H(KDt=>{"use strict";Object.defineProperty(KDt,"__esModule",{value:!0});KDt.SimpleSinkBase=void 0;var eE=qb(),Jrs=Z4(),pcl=vHr(),UDt=function(){},BHr=class{preCommitAction=UDt;postCommitAction=UDt;preCommit=UDt;postCommit=UDt;_fileAlreadyExistException(t){throw new Jrs.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new Jrs.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,eE.mergeMap)(()=>this._validateFileExists(t.to)),(0,eE.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,eE.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new pcl.UnknownActionException(t)}}commitSingleAction(t){return(0,eE.concat)(this.validateSingleAction(t),new eE.Observable(r=>{let n=null;switch(t.kind){case"o":n=this._overwriteFile(t.path,t.content);break;case"c":n=this._createFile(t.path,t.content);break;case"r":n=this._renameFile(t.path,t.to);break;case"d":n=this._deleteFile(t.path);break}n?n.subscribe(r):r.complete()})).pipe((0,eE.ignoreElements)())}commit(t){let r=(0,eE.from)(t.actions);return(0,eE.concat)(this.preCommit()||(0,eE.of)(null),(0,eE.defer)(()=>r).pipe((0,eE.concatMap)(n=>{let a=this.preCommitAction(n);return(0,eE.isObservable)(a)||fcl(a)?a:(0,eE.of)(a||n)}),(0,eE.concatMap)(n=>(0,eE.concat)(this.commitSingleAction(n).pipe((0,eE.ignoreElements)()),(0,eE.of)(n))),(0,eE.concatMap)(n=>this.postCommitAction(n)||(0,eE.of)(null))),(0,eE.defer)(()=>this._done()),(0,eE.defer)(()=>this.postCommit()||(0,eE.of)(null))).pipe((0,eE.ignoreElements)(),(0,eE.defaultIfEmpty)(void 0))}};KDt.SimpleSinkBase=BHr;function fcl(e){return!!e&&typeof e.then=="function"}});var zDt=H(jDt=>{"use strict";Object.defineProperty(jDt,"__esModule",{value:!0});jDt.HostSink=void 0;var LR=qb(),Icl=wHr(),THr=class extends Icl.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?LR.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,LR.of)(!0);if(this._filesToDelete.has(t))return(0,LR.of)(!1);for(let[r,n]of this._filesToRename.values())switch(t){case r:return(0,LR.of)(!1);case n:return(0,LR.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),LR.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),LR.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),LR.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),LR.EMPTY}_done(){return(0,LR.concat)((0,LR.from)([...this._filesToDelete.values()]).pipe((0,LR.concatMap)(t=>this._host.delete(t))),(0,LR.from)([...this._filesToRename.entries()]).pipe((0,LR.concatMap)(([t,[r,n]])=>this._host.rename(r,n))),(0,LR.from)([...this._filesToCreate.entries()]).pipe((0,LR.concatMap)(([t,r])=>this._host.write(t,r))),(0,LR.from)([...this._filesToUpdate.entries()]).pipe((0,LR.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,LR.reduce)(()=>{}))}};jDt.HostSink=THr});var NHr=H(qDt=>{"use strict";Object.defineProperty(qDt,"__esModule",{value:!0});qDt.DryRunSink=void 0;var Urs=Z2(),hcl=JDt(),Krs=qb(),mcl=zDt(),RHr=class extends mcl.HostSink{_subject=new Krs.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new Urs.virtualFs.ScopedHost(new hcl.NodeJsSyncHost,(0,Urs.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,n]of this._filesToRename)if(n==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,Krs.of)(void 0)}};qDt.DryRunSink=RHr});var jrs=H($Dt=>{"use strict";Object.defineProperty($Dt,"__esModule",{value:!0});$Dt.BaseWorkflow=void 0;var DHr=Z2(),sx=qb(),Ccl=CHr(),_cl=Z4(),ycl=jMr(),bcl=NHr(),Ecl=zDt(),Scl=E_e(),kHr=class{_engine;_engineHost;_registry;_host;_reporter=new sx.Subject;_lifeCycle=new sx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new DHr.schema.CoreSchemaRegistry(ycl.standardFormats),this._registry.addPostTransform(DHr.schema.transforms.addUndefinedDefaults)),this._engine=new Ccl.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new bcl.DryRunSink(this._host,this._force),n=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return n.unsubscribe(),t?(0,sx.throwError)(new _cl.UnsuccessfulWorkflowExecution):(0,sx.of)()}},...this._dryRun?[]:[new Ecl.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let n=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=n.createSchematic(t.schematic,a),l=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let A={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new DHr.logging.NullLogger,parentContext:r};return this._context.push(A),o.call(t.options,(0,sx.of)(new Scl.HostTree(this._host)),{logger:A.logger}).pipe((0,sx.concatMap)(f=>(0,sx.concat)((0,sx.from)(l).pipe((0,sx.concatMap)(I=>I.commit(f)),(0,sx.ignoreElements)()),(0,sx.of)(f))),(0,sx.concatMap)(()=>this._dryRun?sx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,sx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,sx.defaultIfEmpty)(void 0),(0,sx.last)()))),(0,sx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};$Dt.BaseWorkflow=kHr});var qrs=H(zrs=>{"use strict";Object.defineProperty(zrs,"__esModule",{value:!0})});var ens=H(Kle=>{"use strict";var vcl=Kle&&Kle.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$rs=Kle&&Kle.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&vcl(t,e,r)};Object.defineProperty(Kle,"__esModule",{value:!0});$rs(jrs(),Kle);$rs(qrs(),Kle)});var ekt=H(jG=>{"use strict";Object.defineProperty(jG,"__esModule",{value:!0});jG.source=wcl;jG.empty=Tcl;jG.chain=GHr;jG.apply=Rcl;jG.mergeWith=Ncl;jG.noop=ins;jG.filter=Dcl;jG.asSource=kcl;jG.branchAndMerge=xcl;jG.when=Gcl;jG.partitionApplyMerge=Fcl;jG.forEach=Zcl;jG.composeFileOperators=Lcl;jG.applyToSubtree=Vcl;var jle=qb(),rns=Z4(),tns=E_e(),nns=yH(),Bcl=BDt(),xHr=Aje(),i6=kDt();function wcl(e){return()=>e}function Tcl(){return()=>(0,xHr.empty)()}function GHr(e){return async(t,r)=>{let n;if(Symbol.asyncIterator in e)for await(let a of e)n=(0,i6.callRule)(a,n??t,r);else for(let a of e)n=(0,i6.callRule)(a,n??t,r);return()=>n}}function Rcl(e,t){return r=>(0,i6.callRule)(GHr(t),(0,i6.callSource)(e,r),r)}function Ncl(e,t=nns.MergeStrategy.Default){return(r,n)=>(0,i6.callSource)(e,n).pipe((0,jle.map)(a=>r.merge(a,t||n.strategy)),(0,jle.mapTo)(r))}function ins(){return()=>{}}function Dcl(e){return t=>{if(tns.HostTree.isHostTree(t))return new tns.FilterHostTree(t,e);throw new rns.SchematicsException("Tree type is not supported.")}}function kcl(e){return t=>(0,i6.callRule)(e,(0,xHr.empty)(),t)}function xcl(e,t=nns.MergeStrategy.Default){return(r,n)=>(0,i6.callRule)(e,r.branch(),n).pipe((0,jle.map)(a=>r.merge(a,t||n.strategy)),(0,jle.mapTo)(r))}function Gcl(e,t){return r=>e(r.path,r)?t(r):r}function Fcl(e,t,r){return(n,a)=>{let[o,l]=(0,xHr.partition)(n,e);return(0,jle.concat)((0,i6.callRule)(t,o,a),(0,i6.callRule)(r||ins(),l,a)).pipe((0,jle.toArray)(),(0,jle.map)(([A,f])=>(A.merge(f,a.strategy),A)))}}function Zcl(e){return t=>{t.visit((r,n)=>{if(!n)return;let a=e(n);if(a!==n){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(n.content)||t.overwrite(a.path,a.content)}})}}function Lcl(e){return t=>{let r=t;for(let n of e)if(r=n(r),r===null)return null;return r}}function Vcl(e,t){return(r,n)=>{let a=new Bcl.ScopedTree(r,e);return(0,i6.callRule)(GHr(t),a,n).pipe((0,jle.map)(o=>{if(o===a)return r;throw new rns.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var sns=H(ZHr=>{"use strict";Object.defineProperty(ZHr,"__esModule",{value:!0});ZHr.move=Wcl;var FHr=Z2(),Pcl=ekt();function Wcl(e,t){t===void 0&&(t=e,e="/");let r=(0,FHr.normalize)("/"+e),n=(0,FHr.normalize)("/"+t);return r===n?Pcl.noop:a=>(a.exists(r)?a.rename(r,n):a.getDir(r).visit(o=>{a.rename(o,(0,FHr.join)(n,o.slice(r.length)))}),a)}});var ans=H(LHr=>{"use strict";Object.defineProperty(LHr,"__esModule",{value:!0});LHr.default=Hcl;var Ocl=E_e();function ons(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function Mcl(e,t){return Math.floor(Math.random()*(t-e))+e}function Hcl(e){return()=>{let t="root"in e?e.root:"/",r=new Ocl.HostTree,n="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:Mcl(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(tkt,"__esModule",{value:!0});tkt.externalSchematic=Ycl;tkt.schematic=Qcl;var Txe=qb(),cns=yH(),lns=Aje();function Ycl(e,t,r,n){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,Txe.of)((0,lns.branch)(a)),o,n).pipe((0,Txe.last)(),(0,Txe.map)(f=>(a.merge(f,cns.MergeStrategy.AllowOverwriteConflict),a)))}function Qcl(e,t,r){return(n,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,Txe.of)((0,lns.branch)(n)),a,r).pipe((0,Txe.last)(),(0,Txe.map)(A=>(n.merge(A,cns.MergeStrategy.AllowOverwriteConflict),n)))}});var dns=H(hT=>{"use strict";Object.defineProperty(hT,"__esModule",{value:!0});hT.InvalidPipeException=hT.UnknownPipeException=hT.OptionIsNotDefinedException=hT.TEMPLATE_FILENAME_RE=void 0;hT.applyContentTemplate=VHr;hT.contentTemplate=gns;hT.applyPathTemplate=PHr;hT.pathTemplate=Ans;hT.renameTemplateFiles=Ucl;hT.template=Kcl;hT.applyTemplates=jcl;var Rxe=Z2(),Xcl=wt("node:os"),v_e=ekt();hT.TEMPLATE_FILENAME_RE=/\.template$/;var Ije=class extends Rxe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};hT.OptionIsNotDefinedException=Ije;var rkt=class extends Rxe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};hT.UnknownPipeException=rkt;var nkt=class extends Rxe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};hT.InvalidPipeException=nkt;var Jcl=new TextDecoder("utf-8",{fatal:!0});function VHr(e){return t=>{let{path:r,content:n}=t;try{let a=Jcl.decode(n).replace(/\r?\n/g,Xcl.EOL);return{path:r,content:Buffer.from((0,Rxe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function gns(e){return(0,v_e.forEach)(VHr(e))}function PHr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,n=t.interpolationEnd,a=r.length,o=n.length;return l=>{let A=l.path,f=l.content,I=A,C=A.indexOf(r),b=A.indexOf(n,C+a+1);for(;C!=-1&&b!=-1;){let E=A.substring(C+a,b),N=e[E];if(t.pipeSeparator){let[B,...F]=E.split(t.pipeSeparator);if(N=e[B],typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new Ije(B);N=F.reduce((Q,X)=>{if(!X)return Q;if(!(X in e))throw new rkt(X);let ae=e[X];if(typeof ae!="function")throw new nkt(X);return""+ae(Q)},""+N)}else if(typeof N=="function"&&(N=N.call(e,I)),N===void 0)throw new Ije(E);A=A.substring(0,C)+N+A.substring(b+o),C=A.indexOf(t.interpolationStart),b=A.indexOf(t.interpolationEnd,C+a+1)}return{path:(0,Rxe.normalize)(A),content:f}}}function Ans(e){return(0,v_e.forEach)(PHr(e))}function Ucl(){return(0,v_e.forEach)(e=>e.path.match(hT.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,Rxe.normalize)(e.path.replace(hT.TEMPLATE_FILENAME_RE,""))}:e)}function Kcl(e){return(0,v_e.chain)([gns(e),Ans(e)])}function jcl(e){return(0,v_e.forEach)((0,v_e.when)(t=>t.endsWith(".template"),(0,v_e.composeFileOperators)([VHr(e),PHr(e),t=>({content:t.content,path:t.path.replace(hT.TEMPLATE_FILENAME_RE,"")})])))}});var pns=H(WHr=>{"use strict";Object.defineProperty(WHr,"__esModule",{value:!0});WHr.url=qcl;var zcl=wt("url");function qcl(e){let t=(0,zcl.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var fns=H(ikt=>{"use strict";Object.defineProperty(ikt,"__esModule",{value:!0});ikt.EmptyTree=void 0;var $cl=E_e(),OHr=class extends $cl.HostTree{constructor(){super()}};ikt.EmptyTree=OHr});var Nxe=H(wm=>{"use strict";var Ins=wm&&wm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ell=wm&&wm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hns=wm&&wm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(mns,"__esModule",{value:!0})});var akt=H(okt=>{"use strict";Object.defineProperty(okt,"__esModule",{value:!0});okt.ExportStringRef=void 0;var _ns=wt("path"),MHr=class{_ref;_module;_path;constructor(t,r=process.cwd(),n=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,_ns.resolve)(r,a):a,this._module=wt.resolve(this._module),this._path=(0,_ns.dirname)(this._module),n?this._ref=wt(this._module)[o||"default"]:this._ref=wt(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};okt.ExportStringRef=MHr});var YHr=H(HHr=>{"use strict";Object.defineProperty(HHr,"__esModule",{value:!0});HHr.readJsonFile=cll;var oll=wt("fs"),yns=_xe(),all=Z4();function cll(e){let t;try{t=(0,oll.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new all.FileDoesNotExistException(e):a}let r=[],n=(0,yns.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,yns.printParseErrorCode)(a)} at location: ${o}.`)}return n}});var gkt=H(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});Uv.FileSystemEngineHostBase=Uv.SchematicNameCollisionException=Uv.SchematicMissingDescriptionException=Uv.SchematicMissingFieldsException=Uv.CollectionMissingFieldsException=Uv.CollectionMissingSchematicsMapException=Uv.FactoryCannotBeResolvedException=Uv.SchematicMissingFactoryException=Uv.InvalidCollectionJsonException=Uv.CollectionCannotBeResolvedException=void 0;var L4=Z2(),lll=JDt(),bns=wt("fs"),Dxe=wt("path"),hje=qb(),Ens=Nxe(),Sns=YHr(),QHr=class extends L4.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};Uv.CollectionCannotBeResolvedException=QHr;var mje=class extends L4.BaseException{constructor(t,r,n){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;n&&(a=`${a} ${n.message}`),super(a)}};Uv.InvalidCollectionJsonException=mje;var ckt=class extends L4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};Uv.SchematicMissingFactoryException=ckt;var lkt=class extends L4.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};Uv.FactoryCannotBeResolvedException=lkt;var XHr=class extends L4.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};Uv.CollectionMissingSchematicsMapException=XHr;var JHr=class extends L4.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};Uv.CollectionMissingFieldsException=JHr;var UHr=class extends L4.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};Uv.SchematicMissingFieldsException=UHr;var KHr=class extends L4.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};Uv.SchematicMissingDescriptionException=KHr;var ukt=class extends L4.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};Uv.SchematicNameCollisionException=ukt;var jHr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let n=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&n.push(a)}return n}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let n=this._resolveCollectionPath(t,r?.path),a=(0,Sns.readJsonFile)(n);if(!a||typeof a!="object"||Array.isArray(a))throw new mje(t,n);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:n});if(!o||!o.name)throw new mje(t,n);let l=Object.keys(o.schematics);for(let A of Object.keys(o.schematics)){let f=o.schematics[A].aliases||[];for(let I of f)if(l.indexOf(I)!=-1)throw new ukt(I);l.push(...f)}return o}createSchematicDescription(t,r){for(let C of Object.keys(r.schematics)){let b=r.schematics[C];if(b.aliases&&b.aliases.indexOf(t)!=-1){t=C;break}}if(!(t in r.schematics))return null;let n=(0,Dxe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let C=a.extends.indexOf(":"),b=C!==-1?a.extends.slice(0,C):null,E=C===-1?a.extends:a.extends.slice(C+1);if(b!==null){let N=this.createCollectionDescription(b);return this.createSchematicDescription(E,N)}else return this.createSchematicDescription(E,r)}if(!a.factory)throw new ckt(t);let o=this._resolveReferenceString(a.factory,n,r);if(!o)throw new lkt(t);let l=a.schema,A;l&&((0,Dxe.isAbsolute)(l)||(l=(0,Dxe.join)(n,l)),A=(0,Sns.readJsonFile)(l));let f=(0,Dxe.join)(n,a.factory),I=(0,bns.existsSync)(f)&&(0,bns.statSync)(f).isDirectory()?f:(0,Dxe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:l,schemaJson:A,name:t,path:I,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let n=r.schematic.description;if(n.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,L4.normalize)((0,Dxe.resolve)(n.path,t.path||""));return new Ens.HostCreateTree(new L4.virtualFs.ScopedHost(new lll.NodeJsSyncHost,a))}}return null}transformOptions(t,r,n){let a=async()=>{let o=r;for(let l of this._transforms){let A=l(t,o,n);o=await((0,hje.isObservable)(A)?(0,hje.lastValueFrom)(A):A)}return o};return(0,hje.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,n)=>n(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,hje.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,hje.throwError)(new Ens.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};Uv.FileSystemEngineHostBase=jHr});var vns=H(Akt=>{"use strict";Object.defineProperty(Akt,"__esModule",{value:!0});Akt.NodePackageName=void 0;Akt.NodePackageName="node-package"});var Bns=H(dkt=>{"use strict";Object.defineProperty(dkt,"__esModule",{value:!0});dkt.RepositoryInitializerName=void 0;dkt.RepositoryInitializerName="repo-init"});var wns=H(pkt=>{"use strict";Object.defineProperty(pkt,"__esModule",{value:!0});pkt.RunSchematicName=void 0;pkt.RunSchematicName="run-schematic"});var Tns=H((rqu,ull)=>{ull.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var Dns=H((nqu,Nns)=>{"use strict";var fkt=Object.assign({},Tns()),Rns=Object.keys(fkt);Object.defineProperty(fkt,"random",{get(){let e=Math.floor(Math.random()*Rns.length),t=Rns[e];return fkt[t]}});Nns.exports=fkt});var zHr=H((iqu,kns)=>{"use strict";kns.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var Gns=H((squ,xns)=>{"use strict";var zle=VK(),gll=zHr(),All={info:zle.blue("\u2139"),success:zle.green("\u2714"),warning:zle.yellow("\u26A0"),error:zle.red("\u2716")},dll={info:zle.blue("i"),success:zle.green("\u221A"),warning:zle.yellow("\u203C"),error:zle.red("\xD7")};xns.exports=gll()?All:dll});var Fns=H((oqu,Ikt)=>{var pll=function(){"use strict";function e(l,A,f,I){var C;typeof A=="object"&&(f=A.depth,I=A.prototype,C=A.filter,A=A.circular);var b=[],E=[],N=typeof Buffer<"u";typeof A>"u"&&(A=!0),typeof f>"u"&&(f=1/0);function B(F,Q){if(F===null)return null;if(Q==0)return F;var X,ae;if(typeof F!="object")return F;if(e.__isArray(F))X=[];else if(e.__isRegExp(F))X=new RegExp(F.source,o(F)),F.lastIndex&&(X.lastIndex=F.lastIndex);else if(e.__isDate(F))X=new Date(F.getTime());else{if(N&&Buffer.isBuffer(F))return Buffer.allocUnsafe?X=Buffer.allocUnsafe(F.length):X=new Buffer(F.length),F.copy(X),X;typeof I>"u"?(ae=Object.getPrototypeOf(F),X=Object.create(ae)):(X=Object.create(I),ae=I)}if(A){var ne=b.indexOf(F);if(ne!=-1)return E[ne];b.push(F),E.push(X)}for(var ce in F){var fe;ae&&(fe=Object.getOwnPropertyDescriptor(ae,ce)),!(fe&&fe.set==null)&&(X[ce]=B(F[ce],Q-1))}return X}return B(l,f)}e.clonePrototype=function(A){if(A===null)return null;var f=function(){};return f.prototype=A,new f};function t(l){return Object.prototype.toString.call(l)}e.__objToStr=t;function r(l){return typeof l=="object"&&t(l)==="[object Date]"}e.__isDate=r;function n(l){return typeof l=="object"&&t(l)==="[object Array]"}e.__isArray=n;function a(l){return typeof l=="object"&&t(l)==="[object RegExp]"}e.__isRegExp=a;function o(l){var A="";return l.global&&(A+="g"),l.ignoreCase&&(A+="i"),l.multiline&&(A+="m"),A}return e.__getRegExpFlags=o,e}();typeof Ikt=="object"&&Ikt.exports&&(Ikt.exports=pll)});var Lns=H((aqu,Zns)=>{var fll=Fns();Zns.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=fll(t[r]))}),e}});var Pns=H((cqu,Vns)=>{Vns.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var Hns=H((lqu,qHr)=>{"use strict";var Ill=Lns(),Cje=Pns(),Ons={nul:0,control:0};qHr.exports=function(t){return Mns(t,Ons)};qHr.exports.config=function(e){return e=Ill(e||{},Ons),function(r){return Mns(r,e)}};function Mns(e,t){if(typeof e!="string")return Wns(e,t);for(var r=0,n=0;n=127&&e<160?t.control:hll(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function hll(e){var t=0,r=Cje.length-1,n;if(eCje[r][1])return!1;for(;r>=t;)if(n=Math.floor((t+r)/2),e>Cje[n][1])t=n+1;else if(e{"use strict";Yns.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var Jns=H((gqu,rYr)=>{"use strict";var mll=wt("readline"),Cll=VK(),Xns=lBe(),hkt=Dns(),mkt=Gns(),_ll=q5(),yll=Hns(),bll=Qns(),Ell=zHr(),{BufferListStream:Sll}=cwr(),$Hr=Symbol("text"),eYr=Symbol("prefixText"),vll=3,tYr=class{constructor(){this.requests=0,this.mutedStream=new Sll,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,n,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&n.includes(vll)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,n,...a])}else Reflect.apply(process.stdin.emit,this,[r,n,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=mll.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},Ckt,_kt=class{constructor(t){Ckt||(Ckt=new tYr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:bll({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!Ell())this._spinner=hkt.line;else if(t===void 0)this._spinner=hkt.dots;else if(t!=="default"&&hkt[t])this._spinner=hkt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[$Hr]}set text(t){this[$Hr]=t,this.updateLineCount()}get prefixText(){return this[eYr]}set prefixText(t){this[eYr]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[eYr],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let n of _ll(r+"--"+this[$Hr]).split(` -`))this.lineCount+=Math.max(1,Math.ceil(yll(n)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=Cll[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let n=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return n+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&Xns.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,Ckt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} -`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&Xns.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(Ckt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:mkt.success,text:t})}fail(t){return this.stopAndPersist({symbol:mkt.error,text:t})}warn(t){return this.stopAndPersist({symbol:mkt.warning,text:t})}info(t){return this.stopAndPersist({symbol:mkt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,n=t.text||this.text,a=typeof n=="string"?" "+n:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} -`),this}},Bll=function(e){return new _kt(e)};rYr.exports=Bll;rYr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new _kt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var Kns=H(kO=>{"use strict";var wll=kO&&kO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Tll=kO&&kO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Rll=kO&&kO.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let o=r,l=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=Uns[a.packageManager],!o)throw new _je(a.packageManager);l=a.packageManager}let A=[],f={shell:!0,cwd:Gll.join(n,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let I=[];return a.packageName?(a.command==="install"&&I.push(o.commands.installPackage),I.push(a.packageName)):a.command==="install"&&o.commands.installAll&&I.push(o.commands.installAll),a.allowScripts||(l==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:I.push("--ignore-scripts")),e.registry&&I.push(`--registry="${e.registry}"`),e.force&&I.push("--force"),new Fll.Observable(C=>{let b=(0,xll.default)({text:`Installing packages (${l})...`,discardStdin:process.platform!="win32"}).start(),E=(0,kll.spawn)(l,I,f).on("close",N=>{N===0?(b.succeed("Packages installed successfully."),b.stop(),C.next(),C.complete()):(a.hideOutput&&A.forEach(({stream:B,data:F})=>B.write(F)),b.fail("Package install failed, see above."),C.error(new Zll.UnsuccessfulWorkflowExecution))});a.hideOutput&&(E.stdout?.on("data",N=>A.push({stream:process.stdout,data:N})),E.stderr?.on("data",N=>A.push({stream:process.stderr,data:N})))})}}});var jns=H(Ete=>{"use strict";var Vll=Ete&&Ete.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Pll=Ete&&Ete.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wll=Ete&&Ete.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,l=(I,C)=>{let b="ignore",E=C?"ignore":process.stderr,N={stdio:[process.stdin,b,E],shell:!0,cwd:Hll.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((B,F)=>{(0,Mll.spawn)("git",I,N).on("close",Q=>{Q===0?B():F(Q)})})};if(!await l(["--version"]).then(()=>!0,()=>!1))return;if(await l(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){n.logger.info(Oll.tags.oneLine` - Directory is already under version control. - Skipping initialization of git. - `);return}try{if(await l(["init"]),await l(["add","."]),r.commit){let I=r.message||"initial commit";await l(["commit",`-m "${I}"`])}n.logger.info("Successfully initialized git.")}catch{}}}});var zns=H(nYr=>{"use strict";Object.defineProperty(nYr,"__esModule",{value:!0});nYr.default=Qll;function Qll(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,n=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:n,schematic:e.name,options:e.options,allowPrivate:n==t.schematic.collection.description.name})}}});var qns=H(s6=>{"use strict";var Xll=s6&&s6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Jll=s6&&s6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),iYr=s6&&s6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aPromise.resolve().then(()=>iYr(Kns())).then(r=>r.default(t))};static RepositoryInitializer={name:Kll.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>iYr(jns())).then(r=>r.default(t))};static RunSchematic={name:jll.RunSchematicName,create:()=>Promise.resolve().then(()=>iYr(zns())).then(t=>t.default())}};s6.BuiltinTaskExecutor=sYr});var Ekt=H(xxe=>{"use strict";Object.defineProperty(xxe,"__esModule",{value:!0});xxe.NodeModulesEngineHost=xxe.NodePackageDoesNotSupportSchematics=void 0;var zll=Z2(),kxe=wt("path"),qll=akt(),ykt=gkt(),$ll=YHr(),bkt=class extends zll.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};xxe.NodePackageDoesNotSupportSchematics=bkt;var oYr=class extends ykt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,n=new Set){if(r){if(n.has(r))throw n.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(n)));n.add(r)}let a=r?(0,kxe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,kxe.resolve)(a,t));let l={paths:r?[(0,kxe.dirname)(r),...this.paths||[]]:this.paths};try{let A=wt.resolve((0,kxe.join)(t,"package.json"),l),{schematics:f}=wt(A);if(!f||typeof f!="string")throw new bkt(t);if(f.startsWith(".")){let I=(0,kxe.dirname)(A);o=(0,kxe.resolve)(I,f)}else o=this.resolve(f,A,n)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)try{o=wt.resolve(t,l)}catch(A){if(A.code!=="MODULE_NOT_FOUND")throw A}if(!o)throw new ykt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let n=this.resolve(t,r);return(0,$ll.readJsonFile)(n),n}_resolveReferenceString(t,r,n){let a=new qll.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new ykt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,n){if(!n.factoryFn||!n.path||!n.description)throw new ykt.SchematicMissingFieldsException(t);return n}};xxe.NodeModulesEngineHost=oYr});var eis=H(Skt=>{"use strict";Object.defineProperty(Skt,"__esModule",{value:!0});Skt.partition=void 0;var eul=HOr(),$ns=ute();function tul(e,t){return function(r){return[$ns.filter(e,t)(r),$ns.filter(eul.not(e,t))(r)]}}Skt.partition=tul});var tis=H(qle=>{"use strict";var rul=qle&&qle.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],l;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(A){l={error:A}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(l)throw l.error}}return o},nul=qle&&qle.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.mergeAll=ns.merge=ns.max=ns.materialize=ns.mapTo=ns.map=ns.last=ns.isEmpty=ns.ignoreElements=ns.groupBy=ns.first=ns.findIndex=ns.find=ns.finalize=ns.filter=ns.expand=ns.exhaustMap=ns.exhaustAll=ns.exhaust=ns.every=ns.endWith=ns.elementAt=ns.distinctUntilKeyChanged=ns.distinctUntilChanged=ns.distinct=ns.dematerialize=ns.delayWhen=ns.delay=ns.defaultIfEmpty=ns.debounceTime=ns.debounce=ns.count=ns.connect=ns.concatWith=ns.concatMapTo=ns.concatMap=ns.concatAll=ns.concat=ns.combineLatestWith=ns.combineLatest=ns.combineLatestAll=ns.combineAll=ns.catchError=ns.bufferWhen=ns.bufferToggle=ns.bufferTime=ns.bufferCount=ns.buffer=ns.auditTime=ns.audit=void 0;ns.timeInterval=ns.throwIfEmpty=ns.throttleTime=ns.throttle=ns.tap=ns.takeWhile=ns.takeUntil=ns.takeLast=ns.take=ns.switchScan=ns.switchMapTo=ns.switchMap=ns.switchAll=ns.subscribeOn=ns.startWith=ns.skipWhile=ns.skipUntil=ns.skipLast=ns.skip=ns.single=ns.shareReplay=ns.share=ns.sequenceEqual=ns.scan=ns.sampleTime=ns.sample=ns.refCount=ns.retryWhen=ns.retry=ns.repeatWhen=ns.repeat=ns.reduce=ns.raceWith=ns.race=ns.publishReplay=ns.publishLast=ns.publishBehavior=ns.publish=ns.pluck=ns.partition=ns.pairwise=ns.onErrorResumeNext=ns.observeOn=ns.multicast=ns.min=ns.mergeWith=ns.mergeScan=ns.mergeMapTo=ns.mergeMap=ns.flatMap=void 0;ns.zipWith=ns.zipAll=ns.zip=ns.withLatestFrom=ns.windowWhen=ns.windowToggle=ns.windowTime=ns.windowCount=ns.window=ns.toArray=ns.timestamp=ns.timeoutWith=ns.timeout=void 0;var aul=STt();Object.defineProperty(ns,"audit",{enumerable:!0,get:function(){return aul.audit}});var cul=QOr();Object.defineProperty(ns,"auditTime",{enumerable:!0,get:function(){return cul.auditTime}});var lul=XOr();Object.defineProperty(ns,"buffer",{enumerable:!0,get:function(){return lul.buffer}});var uul=UOr();Object.defineProperty(ns,"bufferCount",{enumerable:!0,get:function(){return uul.bufferCount}});var gul=KOr();Object.defineProperty(ns,"bufferTime",{enumerable:!0,get:function(){return gul.bufferTime}});var Aul=zOr();Object.defineProperty(ns,"bufferToggle",{enumerable:!0,get:function(){return Aul.bufferToggle}});var dul=qOr();Object.defineProperty(ns,"bufferWhen",{enumerable:!0,get:function(){return dul.bufferWhen}});var pul=$Or();Object.defineProperty(ns,"catchError",{enumerable:!0,get:function(){return pul.catchError}});var ful=r3r();Object.defineProperty(ns,"combineAll",{enumerable:!0,get:function(){return ful.combineAll}});var Iul=FTt();Object.defineProperty(ns,"combineLatestAll",{enumerable:!0,get:function(){return Iul.combineLatestAll}});var hul=n3r();Object.defineProperty(ns,"combineLatest",{enumerable:!0,get:function(){return hul.combineLatest}});var mul=i3r();Object.defineProperty(ns,"combineLatestWith",{enumerable:!0,get:function(){return mul.combineLatestWith}});var Cul=o3r();Object.defineProperty(ns,"concat",{enumerable:!0,get:function(){return Cul.concat}});var _ul=W8e();Object.defineProperty(ns,"concatAll",{enumerable:!0,get:function(){return _ul.concatAll}});var yul=VTt();Object.defineProperty(ns,"concatMap",{enumerable:!0,get:function(){return yul.concatMap}});var bul=s3r();Object.defineProperty(ns,"concatMapTo",{enumerable:!0,get:function(){return bul.concatMapTo}});var Eul=a3r();Object.defineProperty(ns,"concatWith",{enumerable:!0,get:function(){return Eul.concatWith}});var Sul=H8e();Object.defineProperty(ns,"connect",{enumerable:!0,get:function(){return Sul.connect}});var vul=c3r();Object.defineProperty(ns,"count",{enumerable:!0,get:function(){return vul.count}});var Bul=l3r();Object.defineProperty(ns,"debounce",{enumerable:!0,get:function(){return Bul.debounce}});var wul=u3r();Object.defineProperty(ns,"debounceTime",{enumerable:!0,get:function(){return wul.debounceTime}});var Tul=jke();Object.defineProperty(ns,"defaultIfEmpty",{enumerable:!0,get:function(){return Tul.defaultIfEmpty}});var Rul=g3r();Object.defineProperty(ns,"delay",{enumerable:!0,get:function(){return Rul.delay}});var Nul=qTt();Object.defineProperty(ns,"delayWhen",{enumerable:!0,get:function(){return Nul.delayWhen}});var Dul=A3r();Object.defineProperty(ns,"dematerialize",{enumerable:!0,get:function(){return Dul.dematerialize}});var kul=d3r();Object.defineProperty(ns,"distinct",{enumerable:!0,get:function(){return kul.distinct}});var xul=nRt();Object.defineProperty(ns,"distinctUntilChanged",{enumerable:!0,get:function(){return xul.distinctUntilChanged}});var Gul=p3r();Object.defineProperty(ns,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return Gul.distinctUntilKeyChanged}});var Ful=f3r();Object.defineProperty(ns,"elementAt",{enumerable:!0,get:function(){return Ful.elementAt}});var Zul=I3r();Object.defineProperty(ns,"endWith",{enumerable:!0,get:function(){return Zul.endWith}});var Lul=h3r();Object.defineProperty(ns,"every",{enumerable:!0,get:function(){return Lul.every}});var Vul=m3r();Object.defineProperty(ns,"exhaust",{enumerable:!0,get:function(){return Vul.exhaust}});var Pul=gRt();Object.defineProperty(ns,"exhaustAll",{enumerable:!0,get:function(){return Pul.exhaustAll}});var Wul=lRt();Object.defineProperty(ns,"exhaustMap",{enumerable:!0,get:function(){return Wul.exhaustMap}});var Oul=C3r();Object.defineProperty(ns,"expand",{enumerable:!0,get:function(){return Oul.expand}});var Mul=ute();Object.defineProperty(ns,"filter",{enumerable:!0,get:function(){return Mul.filter}});var Hul=_3r();Object.defineProperty(ns,"finalize",{enumerable:!0,get:function(){return Hul.finalize}});var Yul=fRt();Object.defineProperty(ns,"find",{enumerable:!0,get:function(){return Yul.find}});var Qul=y3r();Object.defineProperty(ns,"findIndex",{enumerable:!0,get:function(){return Qul.findIndex}});var Xul=b3r();Object.defineProperty(ns,"first",{enumerable:!0,get:function(){return Xul.first}});var Jul=E3r();Object.defineProperty(ns,"groupBy",{enumerable:!0,get:function(){return Jul.groupBy}});var Uul=UTt();Object.defineProperty(ns,"ignoreElements",{enumerable:!0,get:function(){return Uul.ignoreElements}});var Kul=S3r();Object.defineProperty(ns,"isEmpty",{enumerable:!0,get:function(){return Kul.isEmpty}});var jul=v3r();Object.defineProperty(ns,"last",{enumerable:!0,get:function(){return jul.last}});var zul=lte();Object.defineProperty(ns,"map",{enumerable:!0,get:function(){return zul.map}});var qul=jTt();Object.defineProperty(ns,"mapTo",{enumerable:!0,get:function(){return qul.mapTo}});var $ul=w3r();Object.defineProperty(ns,"materialize",{enumerable:!0,get:function(){return $ul.materialize}});var egl=T3r();Object.defineProperty(ns,"max",{enumerable:!0,get:function(){return egl.max}});var tgl=k3r();Object.defineProperty(ns,"merge",{enumerable:!0,get:function(){return tgl.merge}});var rgl=Hke();Object.defineProperty(ns,"mergeAll",{enumerable:!0,get:function(){return rgl.mergeAll}});var ngl=R3r();Object.defineProperty(ns,"flatMap",{enumerable:!0,get:function(){return ngl.flatMap}});var igl=Kj();Object.defineProperty(ns,"mergeMap",{enumerable:!0,get:function(){return igl.mergeMap}});var sgl=N3r();Object.defineProperty(ns,"mergeMapTo",{enumerable:!0,get:function(){return sgl.mergeMapTo}});var ogl=D3r();Object.defineProperty(ns,"mergeScan",{enumerable:!0,get:function(){return ogl.mergeScan}});var agl=x3r();Object.defineProperty(ns,"mergeWith",{enumerable:!0,get:function(){return agl.mergeWith}});var cgl=G3r();Object.defineProperty(ns,"min",{enumerable:!0,get:function(){return cgl.min}});var lgl=Y8e();Object.defineProperty(ns,"multicast",{enumerable:!0,get:function(){return lgl.multicast}});var ugl=Wke();Object.defineProperty(ns,"observeOn",{enumerable:!0,get:function(){return ugl.observeOn}});var ggl=F3r();Object.defineProperty(ns,"onErrorResumeNext",{enumerable:!0,get:function(){return ggl.onErrorResumeNext}});var Agl=Z3r();Object.defineProperty(ns,"pairwise",{enumerable:!0,get:function(){return Agl.pairwise}});var dgl=eis();Object.defineProperty(ns,"partition",{enumerable:!0,get:function(){return dgl.partition}});var pgl=L3r();Object.defineProperty(ns,"pluck",{enumerable:!0,get:function(){return pgl.pluck}});var fgl=V3r();Object.defineProperty(ns,"publish",{enumerable:!0,get:function(){return fgl.publish}});var Igl=P3r();Object.defineProperty(ns,"publishBehavior",{enumerable:!0,get:function(){return Igl.publishBehavior}});var hgl=W3r();Object.defineProperty(ns,"publishLast",{enumerable:!0,get:function(){return hgl.publishLast}});var mgl=O3r();Object.defineProperty(ns,"publishReplay",{enumerable:!0,get:function(){return mgl.publishReplay}});var Cgl=tis();Object.defineProperty(ns,"race",{enumerable:!0,get:function(){return Cgl.race}});var _gl=FRt();Object.defineProperty(ns,"raceWith",{enumerable:!0,get:function(){return _gl.raceWith}});var ygl=C_e();Object.defineProperty(ns,"reduce",{enumerable:!0,get:function(){return ygl.reduce}});var bgl=M3r();Object.defineProperty(ns,"repeat",{enumerable:!0,get:function(){return bgl.repeat}});var Egl=H3r();Object.defineProperty(ns,"repeatWhen",{enumerable:!0,get:function(){return Egl.repeatWhen}});var Sgl=Y3r();Object.defineProperty(ns,"retry",{enumerable:!0,get:function(){return Sgl.retry}});var vgl=Q3r();Object.defineProperty(ns,"retryWhen",{enumerable:!0,get:function(){return vgl.retryWhen}});var Bgl=awt();Object.defineProperty(ns,"refCount",{enumerable:!0,get:function(){return Bgl.refCount}});var wgl=ORt();Object.defineProperty(ns,"sample",{enumerable:!0,get:function(){return wgl.sample}});var Tgl=X3r();Object.defineProperty(ns,"sampleTime",{enumerable:!0,get:function(){return Tgl.sampleTime}});var Rgl=J3r();Object.defineProperty(ns,"scan",{enumerable:!0,get:function(){return Rgl.scan}});var Ngl=U3r();Object.defineProperty(ns,"sequenceEqual",{enumerable:!0,get:function(){return Ngl.sequenceEqual}});var Dgl=QRt();Object.defineProperty(ns,"share",{enumerable:!0,get:function(){return Dgl.share}});var kgl=j3r();Object.defineProperty(ns,"shareReplay",{enumerable:!0,get:function(){return kgl.shareReplay}});var xgl=z3r();Object.defineProperty(ns,"single",{enumerable:!0,get:function(){return xgl.single}});var Ggl=q3r();Object.defineProperty(ns,"skip",{enumerable:!0,get:function(){return Ggl.skip}});var Fgl=$3r();Object.defineProperty(ns,"skipLast",{enumerable:!0,get:function(){return Fgl.skipLast}});var Zgl=e5r();Object.defineProperty(ns,"skipUntil",{enumerable:!0,get:function(){return Zgl.skipUntil}});var Lgl=t5r();Object.defineProperty(ns,"skipWhile",{enumerable:!0,get:function(){return Lgl.skipWhile}});var Vgl=r5r();Object.defineProperty(ns,"startWith",{enumerable:!0,get:function(){return Vgl.startWith}});var Pgl=Oke();Object.defineProperty(ns,"subscribeOn",{enumerable:!0,get:function(){return Pgl.subscribeOn}});var Wgl=n5r();Object.defineProperty(ns,"switchAll",{enumerable:!0,get:function(){return Wgl.switchAll}});var Ogl=txe();Object.defineProperty(ns,"switchMap",{enumerable:!0,get:function(){return Ogl.switchMap}});var Mgl=i5r();Object.defineProperty(ns,"switchMapTo",{enumerable:!0,get:function(){return Mgl.switchMapTo}});var Hgl=s5r();Object.defineProperty(ns,"switchScan",{enumerable:!0,get:function(){return Hgl.switchScan}});var Ygl=zke();Object.defineProperty(ns,"take",{enumerable:!0,get:function(){return Ygl.take}});var Qgl=_Rt();Object.defineProperty(ns,"takeLast",{enumerable:!0,get:function(){return Qgl.takeLast}});var Xgl=o5r();Object.defineProperty(ns,"takeUntil",{enumerable:!0,get:function(){return Xgl.takeUntil}});var Jgl=a5r();Object.defineProperty(ns,"takeWhile",{enumerable:!0,get:function(){return Jgl.takeWhile}});var Ugl=c5r();Object.defineProperty(ns,"tap",{enumerable:!0,get:function(){return Ugl.tap}});var Kgl=aNt();Object.defineProperty(ns,"throttle",{enumerable:!0,get:function(){return Kgl.throttle}});var jgl=l5r();Object.defineProperty(ns,"throttleTime",{enumerable:!0,get:function(){return jgl.throttleTime}});var zgl=qke();Object.defineProperty(ns,"throwIfEmpty",{enumerable:!0,get:function(){return zgl.throwIfEmpty}});var qgl=u5r();Object.defineProperty(ns,"timeInterval",{enumerable:!0,get:function(){return qgl.timeInterval}});var $gl=P8e();Object.defineProperty(ns,"timeout",{enumerable:!0,get:function(){return $gl.timeout}});var eAl=g5r();Object.defineProperty(ns,"timeoutWith",{enumerable:!0,get:function(){return eAl.timeoutWith}});var tAl=A5r();Object.defineProperty(ns,"timestamp",{enumerable:!0,get:function(){return tAl.timestamp}});var rAl=kTt();Object.defineProperty(ns,"toArray",{enumerable:!0,get:function(){return rAl.toArray}});var nAl=d5r();Object.defineProperty(ns,"window",{enumerable:!0,get:function(){return nAl.window}});var iAl=p5r();Object.defineProperty(ns,"windowCount",{enumerable:!0,get:function(){return iAl.windowCount}});var sAl=f5r();Object.defineProperty(ns,"windowTime",{enumerable:!0,get:function(){return sAl.windowTime}});var oAl=h5r();Object.defineProperty(ns,"windowToggle",{enumerable:!0,get:function(){return oAl.windowToggle}});var aAl=m5r();Object.defineProperty(ns,"windowWhen",{enumerable:!0,get:function(){return aAl.windowWhen}});var cAl=C5r();Object.defineProperty(ns,"withLatestFrom",{enumerable:!0,get:function(){return cAl.withLatestFrom}});var lAl=y5r();Object.defineProperty(ns,"zip",{enumerable:!0,get:function(){return lAl.zip}});var uAl=_5r();Object.defineProperty(ns,"zipAll",{enumerable:!0,get:function(){return uAl.zipAll}});var gAl=b5r();Object.defineProperty(ns,"zipWith",{enumerable:!0,get:function(){return gAl.zipWith}})});var cYr=H(yje=>{"use strict";Object.defineProperty(yje,"__esModule",{value:!0});yje.InvalidInputOptions=void 0;yje.validateOptionsWithSchema=AAl;var iis=Z2(),nis=qb(),aYr=ris(),vkt=class extends iis.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} -Errors: -`)}};yje.InvalidInputOptions=vkt;function AAl(e){return(t,r,n)=>{r=(0,iis.deepCopy)(r);let a=n?n.interactive:!0;return t.schema&&t.schemaJson?(0,nis.from)(e.compile(t.schemaJson)).pipe((0,aYr.mergeMap)(o=>o(r,{withPrompts:a})),(0,aYr.first)(),(0,aYr.map)(o=>{if(!o.success)throw new vkt(r,o.errors||[]);return r})):(0,nis.of)(r)}}});var sis=H(wkt=>{"use strict";Object.defineProperty(wkt,"__esModule",{value:!0});wkt.NodeWorkflow=void 0;var Bkt=Z2(),dAl=JDt(),pAl=Nxe(),lYr=qns(),fAl=Ekt(),IAl=cYr(),uYr=class extends pAl.workflow.BaseWorkflow{constructor(t,r){let n,a;typeof t=="string"?(a=(0,Bkt.normalize)(t),n=new Bkt.virtualFs.ScopedHost(new dAl.NodeJsSyncHost,a)):(n=t,a=r.root);let o=r.engineHostCreator?.(r)||new fAl.NodeModulesEngineHost(r.resolvePaths);if(super({host:n,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(lYr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,Bkt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(lYr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,Bkt.getSystemPath)(a)}),o.registerTaskExecutor(lYr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let l of r.optionTransforms)o.registerOptionsTransform(l);r.schemaValidation&&o.registerOptionsTransform((0,IAl.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};wkt.NodeWorkflow=uYr});var ois=H(o6=>{"use strict";var hAl=o6&&o6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mAl=o6&&o6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),CAl=o6&&o6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aCAl(wt(n))).then(n=>(n.default?.default||n.default)())).pipe((0,AYr.catchError)(()=>(0,AYr.throwError)(()=>new _Al.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};o6.FileSystemEngineHost=dYr});var ais=H(Nkt=>{"use strict";Object.defineProperty(Nkt,"__esModule",{value:!0});Nkt.NodeModulesTestEngineHost=void 0;var bAl=Ekt(),pYr=class extends bAl.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(n,a)=>(this.#t.push(n.toConfiguration()),r(n,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};Nkt.NodeModulesTestEngineHost=pYr});var lis=H(mT=>{"use strict";var EAl=mT&&mT.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Dkt=mT&&mT.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&EAl(t,e,r)};Object.defineProperty(mT,"__esModule",{value:!0});mT.validateOptionsWithSchema=mT.NodeModulesTestEngineHost=mT.NodePackageDoesNotSupportSchematics=mT.NodeModulesEngineHost=mT.FileSystemEngineHost=void 0;Dkt(Cns(),mT);Dkt(akt(),mT);Dkt(gkt(),mT);Dkt(sis(),mT);var SAl=ois();Object.defineProperty(mT,"FileSystemEngineHost",{enumerable:!0,get:function(){return SAl.FileSystemEngineHost}});var cis=Ekt();Object.defineProperty(mT,"NodeModulesEngineHost",{enumerable:!0,get:function(){return cis.NodeModulesEngineHost}});Object.defineProperty(mT,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return cis.NodePackageDoesNotSupportSchematics}});var vAl=ais();Object.defineProperty(mT,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return vAl.NodeModulesTestEngineHost}});var BAl=cYr();Object.defineProperty(mT,"validateOptionsWithSchema",{enumerable:!0,get:function(){return BAl.validateOptionsWithSchema}})});var vis=H(Gkt=>{"use strict";Object.defineProperty(Gkt,"__esModule",{value:!0});function bje(e){let t=[...e.caches],r=t.shift();return r===void 0?Sis():{get(n,a,o={miss:()=>Promise.resolve()}){return r.get(n,a,o).catch(()=>bje({caches:t}).get(n,a,o))},set(n,a){return r.set(n,a).catch(()=>bje({caches:t}).set(n,a))},delete(n){return r.delete(n).catch(()=>bje({caches:t}).delete(n))},clear(){return r.clear().catch(()=>bje({caches:t}).clear())}}}function Sis(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}Gkt.createFallbackableCache=bje;Gkt.createNullCache=Sis});var hYr=H((p$u,Bis)=>{Bis.exports=vis()});var wis=H(mYr=>{"use strict";Object.defineProperty(mYr,"__esModule",{value:!0});function RAl(e={serializable:!0}){let t={};return{get(r,n,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let l=n(),A=a&&a.miss||(()=>Promise.resolve());return l.then(f=>A(f)).then(()=>l)},set(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}mYr.createInMemoryCache=RAl});var CYr=H((I$u,Tis)=>{Tis.exports=wis()});var Nis=H(V4=>{"use strict";Object.defineProperty(V4,"__esModule",{value:!0});function NAl(e,t,r){let n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===_Yr.WithinHeaders?n:{}},queryParameters(){return e===_Yr.WithinQueryParameters?n:{}}}}function DAl(e){let t=0,r=()=>(t++,new Promise(n=>{setTimeout(()=>{n(e(r))},Math.min(100*t,1e3))}));return e(r)}function Ris(e,t=(r,n)=>Promise.resolve()){return Object.assign(e,{wait(r){return Ris(e.then(n=>Promise.all([t(n,r),n])).then(n=>n[1]))}})}function kAl(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function xAl(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function GAl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var FAl="4.24.0",ZAl=e=>()=>e.transporter.requester.destroy(),_Yr={WithinQueryParameters:0,WithinHeaders:1};V4.AuthMode=_Yr;V4.addMethods=xAl;V4.createAuth=NAl;V4.createRetryablePromise=DAl;V4.createWaitablePromise=Ris;V4.destroy=ZAl;V4.encode=GAl;V4.shuffle=kAl;V4.version=FAl});var Gxe=H((m$u,Dis)=>{Dis.exports=Nis()});var kis=H(yYr=>{"use strict";Object.defineProperty(yYr,"__esModule",{value:!0});var LAl={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};yYr.MethodEnum=LAl});var Fxe=H((_$u,xis)=>{xis.exports=kis()});var Uis=H(Kv=>{"use strict";Object.defineProperty(Kv,"__esModule",{value:!0});var Fis=Fxe();function bYr(e,t){let r=e||{},n=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(n[a]=r[a])}),{data:Object.entries(n).length>0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var Eje={Read:1,Write:2,Any:3},Zxe={Up:1,Down:2,Timeouted:3},Zis=2*60*1e3;function SYr(e,t=Zxe.Up){return{...e,status:t,lastUpdate:Date.now()}}function Lis(e){return e.status===Zxe.Up||Date.now()-e.lastUpdate>Zis}function Vis(e){return e.status===Zxe.Timeouted&&Date.now()-e.lastUpdate<=Zis}function vYr(e){return typeof e=="string"?{protocol:"https",url:e,accept:Eje.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||Eje.Any}}function VAl(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(SYr(r))))).then(r=>{let n=r.filter(A=>Lis(A)),a=r.filter(A=>Vis(A)),o=[...n,...a],l=o.length>0?o.map(A=>vYr(A)):t;return{getTimeout(A,f){return(a.length===0&&A===0?1:a.length+3+A)*f},statelessHosts:l}})}var PAl=({isTimedOut:e,status:t})=>!e&&~~t===0,WAl=e=>{let t=e.status;return e.isTimedOut||PAl(e)||~~(t/100)!==2&&~~(t/100)!==4},OAl=({status:e})=>~~(e/100)===2,MAl=(e,t)=>WAl(e)?t.onRetry(e):OAl(e)?t.onSuccess(e):t.onFail(e);function Gis(e,t,r,n){let a=[],o=His(r,n),l=Yis(e,n),A=r.method,f=r.method!==Fis.MethodEnum.Get?{}:{...r.data,...n.data},I={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...n.queryParameters},C=0,b=(E,N)=>{let B=E.pop();if(B===void 0)throw Jis(EYr(a));let F={data:o,headers:l,method:A,url:Ois(B,r.path,I),connectTimeout:N(C,e.timeouts.connect),responseTimeout:N(C,n.timeout)},Q=ae=>{let ne={request:F,response:ae,host:B,triesLeft:E.length};return a.push(ne),ne},X={onSuccess:ae=>Pis(ae),onRetry(ae){let ne=Q(ae);return ae.isTimedOut&&C++,Promise.all([e.logger.info("Retryable failure",BYr(ne)),e.hostsCache.set(B,SYr(B,ae.isTimedOut?Zxe.Timeouted:Zxe.Down))]).then(()=>b(E,N))},onFail(ae){throw Q(ae),Wis(ae,EYr(a))}};return e.requester.send(F).then(ae=>MAl(ae,X))};return VAl(e.hostsCache,t).then(E=>b([...E.statelessHosts].reverse(),E.getTimeout))}function HAl(e){let{hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,hosts:f,queryParameters:I,headers:C}=e,b={hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:o,timeouts:l,userAgent:A,headers:C,queryParameters:I,hosts:f.map(E=>vYr(E)),read(E,N){let B=bYr(N,b.timeouts.read),F=()=>Gis(b,b.hosts.filter(ae=>(ae.accept&Eje.Read)!==0),E,B);if((B.cacheable!==void 0?B.cacheable:E.cacheable)!==!0)return F();let X={request:E,mappedRequestOptions:B,transporter:{queryParameters:b.queryParameters,headers:b.headers}};return b.responsesCache.get(X,()=>b.requestsCache.get(X,()=>b.requestsCache.set(X,F()).then(ae=>Promise.all([b.requestsCache.delete(X),ae]),ae=>Promise.all([b.requestsCache.delete(X),Promise.reject(ae)])).then(([ae,ne])=>ne)),{miss:ae=>b.responsesCache.set(X,ae)})},write(E,N){return Gis(b,b.hosts.filter(B=>(B.accept&Eje.Write)!==0),E,bYr(N,b.timeouts.write))}};return b}function YAl(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let n=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(n)===-1&&(t.value=`${t.value}${n}`),t}};return t}function Pis(e){try{return JSON.parse(e.content)}catch(t){throw Xis(t.message,e)}}function Wis({content:e,status:t},r){let n=e;try{n=JSON.parse(e).message}catch{}return Qis(n,t,r)}function QAl(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function Ois(e,t,r){let n=Mis(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return n.length&&(a+=`?${n}`),a}function Mis(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>QAl("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function His(e,t){if(e.method===Fis.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function Yis(e,t){let r={...e.headers,...t.headers},n={};return Object.keys(r).forEach(a=>{let o=r[a];n[a.toLowerCase()]=o}),n}function EYr(e){return e.map(t=>BYr(t))}function BYr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function Qis(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function Xis(e,t){return{name:"DeserializationError",message:e,response:t}}function Jis(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}Kv.CallEnum=Eje;Kv.HostStatusEnum=Zxe;Kv.createApiError=Qis;Kv.createDeserializationError=Xis;Kv.createMappedRequestOptions=bYr;Kv.createRetryError=Jis;Kv.createStatefulHost=SYr;Kv.createStatelessHost=vYr;Kv.createTransporter=HAl;Kv.createUserAgent=YAl;Kv.deserializeFailure=Wis;Kv.deserializeSuccess=Pis;Kv.isStatefulHostTimeouted=Vis;Kv.isStatefulHostUp=Lis;Kv.serializeData=His;Kv.serializeHeaders=Yis;Kv.serializeQueryParameters=Mis;Kv.serializeUrl=Ois;Kv.stackFrameWithoutCredentials=BYr;Kv.stackTraceWithoutCredentials=EYr});var Lxe=H((b$u,Kis)=>{Kis.exports=Uis()});var jis=H($le=>{"use strict";Object.defineProperty($le,"__esModule",{value:!0});var Vxe=Gxe(),XAl=Lxe(),Sje=Fxe(),JAl=e=>{let t=e.region||"us",r=Vxe.createAuth(Vxe.AuthMode.WithinHeaders,e.appId,e.apiKey),n=XAl.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return Vxe.addMethods({appId:a,transporter:n},e.methods)},UAl=e=>(t,r)=>e.transporter.write({method:Sje.MethodEnum.Post,path:"2/abtests",data:t},r),KAl=e=>(t,r)=>e.transporter.write({method:Sje.MethodEnum.Delete,path:Vxe.encode("2/abtests/%s",t)},r),jAl=e=>(t,r)=>e.transporter.read({method:Sje.MethodEnum.Get,path:Vxe.encode("2/abtests/%s",t)},r),zAl=e=>t=>e.transporter.read({method:Sje.MethodEnum.Get,path:"2/abtests"},t),qAl=e=>(t,r)=>e.transporter.write({method:Sje.MethodEnum.Post,path:Vxe.encode("2/abtests/%s/stop",t)},r);$le.addABTest=UAl;$le.createAnalyticsClient=JAl;$le.deleteABTest=KAl;$le.getABTest=jAl;$le.getABTests=zAl;$le.stopABTest=qAl});var qis=H((S$u,zis)=>{zis.exports=jis()});var ess=H(vje=>{"use strict";Object.defineProperty(vje,"__esModule",{value:!0});var wYr=Gxe(),$Al=Lxe(),$is=Fxe(),edl=e=>{let t=e.region||"us",r=wYr.createAuth(wYr.AuthMode.WithinHeaders,e.appId,e.apiKey),n=$Al.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return wYr.addMethods({appId:e.appId,transporter:n},e.methods)},tdl=e=>t=>e.transporter.read({method:$is.MethodEnum.Get,path:"1/strategies/personalization"},t),rdl=e=>(t,r)=>e.transporter.write({method:$is.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);vje.createPersonalizationClient=edl;vje.getPersonalizationStrategy=tdl;vje.setPersonalizationStrategy=rdl});var rss=H((B$u,tss)=>{tss.exports=ess()});var Iss=H(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});var mg=Gxe(),WV=Lxe(),ap=Fxe(),ndl=wt("crypto");function Fkt(e){let t=r=>e.request(r).then(n=>{if(e.batch!==void 0&&e.batch(n.hits),!e.shouldStop(n))return n.cursor?t({cursor:n.cursor}):t({page:(r.page||0)+1})});return t({})}var idl=e=>{let t=e.appId,r=mg.createAuth(e.authMode!==void 0?e.authMode:mg.AuthMode.WithinHeaders,t,e.apiKey),n=WV.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:WV.CallEnum.Read},{url:`${t}.algolia.net`,accept:WV.CallEnum.Write}].concat(mg.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return mg.addMethods(a,e.methods)};function nss(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function iss(){return{name:"ObjectNotFoundError",message:"Object not found."}}function sss(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var sdl=e=>(t,r)=>{let{queryParameters:n,...a}=r||{},o={acl:t,...n!==void 0?{queryParameters:n}:{}},l=(A,f)=>mg.createRetryablePromise(I=>Bje(e)(A.key,f).catch(C=>{if(C.status!==404)throw C;return I()}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:"1/keys",data:o},a),l)},odl=e=>(t,r,n)=>{let a=WV.createMappedRequestOptions(n);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ap.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},adl=e=>(t,r,n)=>e.transporter.write({method:ap.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},n),cdl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(n,a)=>Pxe(e)(n.taskID,a)),Zkt=e=>(t,r,n)=>{let a=(o,l)=>wje(e)(t,{methods:{waitTask:CT}}).waitTask(o.taskID,l);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},n),a)},ldl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Rules]}),udl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Settings]}),gdl=e=>(t,r,n)=>Zkt(e)(t,r,{...n,scope:[Vkt.Synonyms]}),Adl=e=>(t,r)=>t.method===ap.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),ddl=e=>(t,r)=>{let n=(a,o)=>mg.createRetryablePromise(l=>Bje(e)(t,o).then(l).catch(A=>{if(A.status!==404)throw A}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/keys/%s",t)},r),n)},pdl=e=>(t,r,n)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>Pxe(e)(o.taskID,l))},fdl=()=>(e,t)=>{let r=WV.serializeQueryParameters(t),n=ndl.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(n+r).toString("base64")},Bje=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/keys/%s",t)},r),oss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/task/%s",t.toString())},r),Idl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),hdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/logs"},t),mdl=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,n=t.match(r);if(n===null)throw sss();return parseInt(n[1],10)-Math.round(new Date().getTime()/1e3)},Cdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping/top"},t),_dl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/clusters/mapping/%s",t)},r),ydl=e=>t=>{let{retrieveMappings:r,...n}=t||{};return r===!0&&(n.getClusters=!0),e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping/pending"},n)},wje=e=>(t,r={})=>{let n={transporter:e.transporter,appId:e.appId,indexName:t};return mg.addMethods(n,r.methods)},bdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/keys"},t),Edl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters"},t),Sdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/indexes"},t),vdl=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:"1/clusters/mapping"},t),Bdl=e=>(t,r,n)=>{let a=(o,l)=>wje(e)(t,{methods:{waitTask:CT}}).waitTask(o.taskID,l);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},n),a)},wdl=e=>(t,r)=>{let n=(a,o)=>Promise.all(Object.keys(a.taskID).map(l=>wje(e)(l,{methods:{waitTask:CT}}).waitTask(a.taskID[l],o)));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),n)},Tdl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),Rdl=e=>(t,r)=>{let n=t.map(a=>({...a,params:WV.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)},Ndl=e=>(t,r)=>Promise.all(t.map(n=>{let{facetName:a,facetQuery:o,...l}=n.params;return wje(e)(n.indexName,{methods:{searchForFacetValues:dss}}).searchForFacetValues(a,o,{...r,...l})})),Ddl=e=>(t,r)=>{let n=WV.createMappedRequestOptions(r);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ap.MethodEnum.Delete,path:"1/clusters/mapping"},n)},kdl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},n),(o,l)=>Pxe(e)(o.taskID,l))},xdl=e=>(t,r)=>{let n=(a,o)=>mg.createRetryablePromise(l=>Bje(e)(t,o).catch(A=>{if(A.status!==404)throw A;return l()}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/keys/%s/restore",t)},r),n)},Gdl=e=>(t,r,n)=>{let a=r.map(o=>({action:"addEntry",body:o}));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(o,l)=>Pxe(e)(o.taskID,l))},Fdl=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},n),Zdl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Ldl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(n,a)=>Pxe(e)(n.taskID,a)),Vdl=e=>(t,r)=>{let n=Object.assign({},r),{queryParameters:a,...o}=r||{},l=a?{queryParameters:a}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=C=>Object.keys(n).filter(b=>A.indexOf(b)!==-1).every(b=>{if(Array.isArray(C[b])&&Array.isArray(n[b])){let E=C[b];return E.length===n[b].length&&E.every((N,B)=>N===n[b][B])}else return C[b]===n[b]}),I=(C,b)=>mg.createRetryablePromise(E=>Bje(e)(t,b).then(N=>f(N)?Promise.resolve():E()));return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:mg.encode("1/keys/%s",t),data:l},o),I)},Pxe=e=>(t,r)=>mg.createRetryablePromise(n=>oss(e)(t,r).then(a=>a.status!=="published"?n():void 0)),ass=e=>(t,r)=>{let n=(a,o)=>CT(e)(a.taskID,o);return mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),n)},Pdl=e=>t=>Fkt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),Wdl=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Odl=e=>t=>{let r={hitsPerPage:1e3,...t};return Fkt({shouldStop:n=>n.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Lkt=e=>(t,r,n)=>{let{batchSize:a,...o}=n||{},l={taskIDs:[],objectIDs:[]},A=(f=0)=>{let I=[],C;for(C=f;C({action:r,body:b})),o).then(b=>(l.objectIDs=l.objectIDs.concat(b.objectIDs),l.taskIDs.push(b.taskID),C++,A(C)))};return mg.createWaitablePromise(A(),(f,I)=>Promise.all(f.taskIDs.map(C=>CT(e)(C,I))))},Mdl=e=>t=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/clear",e.indexName)},t),(r,n)=>CT(e)(r.taskID,n)),Hdl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=WV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,l)=>CT(e)(o.taskID,l))},Ydl=e=>t=>{let{forwardToReplicas:r,...n}=t||{},a=WV.createMappedRequestOptions(n);return r&&(a.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,l)=>CT(e)(o.taskID,l))},Qdl=e=>(t,r)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(n,a)=>CT(e)(n.taskID,a)),Xdl=e=>t=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s",e.indexName)},t),(r,n)=>CT(e)(r.taskID,n)),Jdl=e=>(t,r)=>mg.createWaitablePromise(css(e)([t],r).then(n=>({taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),css=e=>(t,r)=>{let n=t.map(a=>({objectID:a}));return Lkt(e)(n,w_e.DeleteObject,r)},Udl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(l,A)=>CT(e)(l.taskID,A))},Kdl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Delete,path:mg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(l,A)=>CT(e)(l.taskID,A))},jdl=e=>t=>lss(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),zdl=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n),qdl=e=>(t,r)=>{let{query:n,paginate:a,...o}=r||{},l=0,A=()=>Ass(e)(n||"",{...o,page:l}).then(f=>{for(let[I,C]of Object.entries(f.hits))if(t(C))return{object:C,position:parseInt(I,10),page:l};if(l++,a===!1||l>=f.nbPages)throw iss();return A()});return A()},$dl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/%s",e.indexName,t)},r),epl=()=>(e,t)=>{for(let[r,n]of Object.entries(e.hits))if(n.objectID===t)return parseInt(r,10);return-1},tpl=e=>(t,r)=>{let{attributesToRetrieve:n,...a}=r||{},o=t.map(l=>({indexName:e.indexName,objectID:l,...n?{attributesToRetrieve:n}:{}}));return e.transporter.read({method:ap.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},rpl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),lss=e=>t=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),npl=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),uss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Get,path:mg.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),ipl=e=>(t,r)=>mg.createWaitablePromise(gss(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),gss=e=>(t,r)=>{let{createIfNotExists:n,...a}=r||{},o=n?w_e.PartialUpdateObject:w_e.PartialUpdateObjectNoCreate;return Lkt(e)(t,o,a)},spl=e=>(t,r)=>{let{safe:n,autoGenerateObjectIDIfNotExist:a,batchSize:o,...l}=r||{},A=(B,F,Q,X)=>mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/operation",B),data:{operation:Q,destination:F}},X),(ae,ne)=>CT(e)(ae.taskID,ne)),f=Math.random().toString(36).substring(7),I=`${e.indexName}_tmp_${f}`,C=TYr({appId:e.appId,transporter:e.transporter,indexName:I}),b=[],E=A(e.indexName,I,"copy",{...l,scope:["settings","synonyms","rules"]});b.push(E);let N=(n?E.wait(l):E).then(()=>{let B=C(t,{...l,autoGenerateObjectIDIfNotExist:a,batchSize:o});return b.push(B),n?B.wait(l):B}).then(()=>{let B=A(I,e.indexName,"move",l);return b.push(B),n?B.wait(l):B}).then(()=>Promise.all(b)).then(([B,F,Q])=>({objectIDs:F.objectIDs,taskIDs:[B.taskID,...F.taskIDs,Q.taskID]}));return mg.createWaitablePromise(N,(B,F)=>Promise.all(b.map(Q=>Q.wait(F))))},opl=e=>(t,r)=>RYr(e)(t,{...r,clearExistingRules:!0}),apl=e=>(t,r)=>NYr(e)(t,{...r,clearExistingSynonyms:!0}),cpl=e=>(t,r)=>mg.createWaitablePromise(TYr(e)([t],r).then(n=>({objectID:n.objectIDs[0],taskID:n.taskIDs[0]})),(n,a)=>CT(e)(n.taskID,a)),TYr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:n,...a}=r||{},o=n?w_e.AddObject:w_e.UpdateObject;if(o===w_e.UpdateObject){for(let l of t)if(l.objectID===void 0)return mg.createWaitablePromise(Promise.reject(nss()))}return Lkt(e)(t,o,a)},lpl=e=>(t,r)=>RYr(e)([t],r),RYr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingRules:a,...o}=r||{},l=WV.createMappedRequestOptions(o);return n&&(l.queryParameters.forwardToReplicas=1),a&&(l.queryParameters.clearExistingRules=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/batch",e.indexName),data:t},l),(A,f)=>CT(e)(A.taskID,f))},upl=e=>(t,r)=>NYr(e)([t],r),NYr=e=>(t,r)=>{let{forwardToReplicas:n,clearExistingSynonyms:a,replaceExistingSynonyms:o,...l}=r||{},A=WV.createMappedRequestOptions(l);return n&&(A.queryParameters.forwardToReplicas=1),(o||a)&&(A.queryParameters.replaceExistingSynonyms=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},A),(f,I)=>CT(e)(f.taskID,I))},Ass=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),dss=e=>(t,r,n)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n),pss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),fss=e=>(t,r)=>e.transporter.read({method:ap.MethodEnum.Post,path:mg.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),gpl=e=>(t,r)=>{let{forwardToReplicas:n,...a}=r||{},o=WV.createMappedRequestOptions(a);return n&&(o.queryParameters.forwardToReplicas=1),mg.createWaitablePromise(e.transporter.write({method:ap.MethodEnum.Put,path:mg.encode("1/indexes/%s/settings",e.indexName),data:t},o),(l,A)=>CT(e)(l.taskID,A))},CT=e=>(t,r)=>mg.createRetryablePromise(n=>uss(e)(t,r).then(a=>a.status!=="published"?n():void 0)),Apl={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},w_e={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},Vkt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},dpl={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},ppl={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};cu.ApiKeyACLEnum=Apl;cu.BatchActionEnum=w_e;cu.ScopeEnum=Vkt;cu.StrategyEnum=dpl;cu.SynonymEnum=ppl;cu.addApiKey=sdl;cu.assignUserID=odl;cu.assignUserIDs=adl;cu.batch=ass;cu.browseObjects=Pdl;cu.browseRules=Wdl;cu.browseSynonyms=Odl;cu.chunkedBatch=Lkt;cu.clearDictionaryEntries=cdl;cu.clearObjects=Mdl;cu.clearRules=Hdl;cu.clearSynonyms=Ydl;cu.copyIndex=Zkt;cu.copyRules=ldl;cu.copySettings=udl;cu.copySynonyms=gdl;cu.createBrowsablePromise=Fkt;cu.createMissingObjectIDError=nss;cu.createObjectNotFoundError=iss;cu.createSearchClient=idl;cu.createValidUntilNotFoundError=sss;cu.customRequest=Adl;cu.deleteApiKey=ddl;cu.deleteBy=Qdl;cu.deleteDictionaryEntries=pdl;cu.deleteIndex=Xdl;cu.deleteObject=Jdl;cu.deleteObjects=css;cu.deleteRule=Udl;cu.deleteSynonym=Kdl;cu.exists=jdl;cu.findAnswers=zdl;cu.findObject=qdl;cu.generateSecuredApiKey=fdl;cu.getApiKey=Bje;cu.getAppTask=oss;cu.getDictionarySettings=Idl;cu.getLogs=hdl;cu.getObject=$dl;cu.getObjectPosition=epl;cu.getObjects=tpl;cu.getRule=rpl;cu.getSecuredApiKeyRemainingValidity=mdl;cu.getSettings=lss;cu.getSynonym=npl;cu.getTask=uss;cu.getTopUserIDs=Cdl;cu.getUserID=_dl;cu.hasPendingMappings=ydl;cu.initIndex=wje;cu.listApiKeys=bdl;cu.listClusters=Edl;cu.listIndices=Sdl;cu.listUserIDs=vdl;cu.moveIndex=Bdl;cu.multipleBatch=wdl;cu.multipleGetObjects=Tdl;cu.multipleQueries=Rdl;cu.multipleSearchForFacetValues=Ndl;cu.partialUpdateObject=ipl;cu.partialUpdateObjects=gss;cu.removeUserID=Ddl;cu.replaceAllObjects=spl;cu.replaceAllRules=opl;cu.replaceAllSynonyms=apl;cu.replaceDictionaryEntries=kdl;cu.restoreApiKey=xdl;cu.saveDictionaryEntries=Gdl;cu.saveObject=cpl;cu.saveObjects=TYr;cu.saveRule=lpl;cu.saveRules=RYr;cu.saveSynonym=upl;cu.saveSynonyms=NYr;cu.search=Ass;cu.searchDictionaryEntries=Fdl;cu.searchForFacetValues=dss;cu.searchRules=pss;cu.searchSynonyms=fss;cu.searchUserIDs=Zdl;cu.setDictionarySettings=Ldl;cu.setSettings=gpl;cu.updateApiKey=Vdl;cu.waitAppTask=Pxe;cu.waitTask=CT});var mss=H((T$u,hss)=>{hss.exports=Iss()});var Css=H(Pkt=>{"use strict";Object.defineProperty(Pkt,"__esModule",{value:!0});function fpl(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var Ipl={Debug:1,Info:2,Error:3};Pkt.LogLevelEnum=Ipl;Pkt.createNullLogger=fpl});var DYr=H((N$u,_ss)=>{_ss.exports=Css()});var Sss=H(kYr=>{"use strict";Object.defineProperty(kYr,"__esModule",{value:!0});var yss=wt("http"),bss=wt("https"),hpl=wt("url"),Ess={keepAlive:!0},mpl=new yss.Agent(Ess),Cpl=new bss.Agent(Ess);function _pl({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:n={}}={}){let a=t||e||mpl,o=r||e||Cpl;return{send(l){return new Promise(A=>{let f=hpl.parse(l.url),I=f.query===null?f.pathname:`${f.pathname}?${f.query}`,C={...n,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:I,method:l.method,headers:{...n&&n.headers?n.headers:{},...l.headers},...f.port!==void 0?{port:f.port||""}:{}},b=(f.protocol==="https:"?bss:yss).request(C,F=>{let Q=[];F.on("data",X=>{Q=Q.concat(X)}),F.on("end",()=>{clearTimeout(N),clearTimeout(B),A({status:F.statusCode||0,content:Buffer.concat(Q).toString(),isTimedOut:!1})})}),E=(F,Q)=>setTimeout(()=>{b.abort(),A({status:0,content:Q,isTimedOut:!0})},F*1e3),N=E(l.connectTimeout,"Connection timeout"),B;b.on("error",F=>{clearTimeout(N),clearTimeout(B),A({status:0,content:F.message,isTimedOut:!1})}),b.once("response",()=>{clearTimeout(N),B=E(l.responseTimeout,"Socket timeout")}),l.data!==void 0&&b.write(l.data),b.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}kYr.createNodeHttpRequester=_pl});var xYr=H((k$u,vss)=>{vss.exports=Sss()});var Gss=H((x$u,xss)=>{"use strict";var Bss=hYr(),ypl=CYr(),eue=Gxe(),bpl=DYr(),Epl=xYr(),Wkt=Lxe(),Okt=Fxe(),Spl=e=>{let t=e.appId,r=eue.createAuth(e.authMode!==void 0?e.authMode:eue.AuthMode.WithinHeaders,t,e.apiKey),n=Wkt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:Wkt.CallEnum.Read},{url:`${t}.algolia.net`,accept:Wkt.CallEnum.Write}].concat(eue.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:n,appId:t,addAlgoliaAgent(o,l){n.userAgent.add({segment:o,version:l})},clearCache(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(()=>{})}};return eue.addMethods(a,e.methods)},Tje=e=>(t,r)=>{let n=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},wss=e=>(t,r)=>Tje(e)(t.map(n=>({...n,fallbackParameters:{},model:"bought-together"})),r),Tss=e=>(t,r)=>Tje(e)(t.map(n=>({...n,model:"related-products"})),r),Rss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Nss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)},Dss=e=>(t,r)=>Tje(e)(t.map(n=>({...n,model:"looking-similar"})),r),kss=e=>(t,r)=>{let n=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:Okt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)};function Ste(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:Epl.createNodeHttpRequester(),logger:bpl.createNullLogger(),responsesCache:Bss.createNullCache(),requestsCache:Bss.createNullCache(),hostsCache:ypl.createInMemoryCache(),userAgent:Wkt.createUserAgent(eue.version).add({segment:"Recommend",version:eue.version}).add({segment:"Node.js",version:process.versions.node})};return Spl({...n,...r,methods:{destroy:eue.destroy,getFrequentlyBoughtTogether:wss,getRecommendations:Tje,getRelatedProducts:Tss,getTrendingFacets:Rss,getTrendingItems:Nss,getLookingSimilar:Dss,getRecommendedForYou:kss}})}Ste.version=eue.version;Ste.getFrequentlyBoughtTogether=wss;Ste.getRecommendations=Tje;Ste.getRelatedProducts=Tss;Ste.getTrendingFacets=Rss;Ste.getTrendingItems=Nss;Ste.getLookingSimilar=Dss;Ste.getRecommendedForYou=kss;xss.exports=Ste});var Zss=H((G$u,GYr)=>{var Fss=Gss();GYr.exports=Fss;GYr.exports.default=Fss});var Wss=H((F$u,Pss)=>{"use strict";var Lss=hYr(),vpl=CYr(),Wxe=qis(),ZYr=Gxe(),FYr=rss(),ju=mss(),Bpl=DYr(),T_e=Zss(),wpl=xYr(),Tpl=Lxe();function Vss(e,t,r){let n={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:wpl.createNodeHttpRequester(),logger:Bpl.createNullLogger(),responsesCache:Lss.createNullCache(),requestsCache:Lss.createNullCache(),hostsCache:vpl.createInMemoryCache(),userAgent:Tpl.createUserAgent(ZYr.version).add({segment:"Node.js",version:process.versions.node})},a={...n,...r},o=()=>l=>FYr.createPersonalizationClient({...n,...l,methods:{getPersonalizationStrategy:FYr.getPersonalizationStrategy,setPersonalizationStrategy:FYr.setPersonalizationStrategy}});return ju.createSearchClient({...a,methods:{search:ju.multipleQueries,searchForFacetValues:ju.multipleSearchForFacetValues,multipleBatch:ju.multipleBatch,multipleGetObjects:ju.multipleGetObjects,multipleQueries:ju.multipleQueries,copyIndex:ju.copyIndex,copySettings:ju.copySettings,copyRules:ju.copyRules,copySynonyms:ju.copySynonyms,moveIndex:ju.moveIndex,listIndices:ju.listIndices,getLogs:ju.getLogs,listClusters:ju.listClusters,multipleSearchForFacetValues:ju.multipleSearchForFacetValues,getApiKey:ju.getApiKey,addApiKey:ju.addApiKey,listApiKeys:ju.listApiKeys,updateApiKey:ju.updateApiKey,deleteApiKey:ju.deleteApiKey,restoreApiKey:ju.restoreApiKey,assignUserID:ju.assignUserID,assignUserIDs:ju.assignUserIDs,getUserID:ju.getUserID,searchUserIDs:ju.searchUserIDs,listUserIDs:ju.listUserIDs,getTopUserIDs:ju.getTopUserIDs,removeUserID:ju.removeUserID,hasPendingMappings:ju.hasPendingMappings,generateSecuredApiKey:ju.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:ju.getSecuredApiKeyRemainingValidity,destroy:ZYr.destroy,clearDictionaryEntries:ju.clearDictionaryEntries,deleteDictionaryEntries:ju.deleteDictionaryEntries,getDictionarySettings:ju.getDictionarySettings,getAppTask:ju.getAppTask,replaceDictionaryEntries:ju.replaceDictionaryEntries,saveDictionaryEntries:ju.saveDictionaryEntries,searchDictionaryEntries:ju.searchDictionaryEntries,setDictionarySettings:ju.setDictionarySettings,waitAppTask:ju.waitAppTask,customRequest:ju.customRequest,initIndex:l=>A=>ju.initIndex(l)(A,{methods:{batch:ju.batch,delete:ju.deleteIndex,findAnswers:ju.findAnswers,getObject:ju.getObject,getObjects:ju.getObjects,saveObject:ju.saveObject,saveObjects:ju.saveObjects,search:ju.search,searchForFacetValues:ju.searchForFacetValues,waitTask:ju.waitTask,setSettings:ju.setSettings,getSettings:ju.getSettings,partialUpdateObject:ju.partialUpdateObject,partialUpdateObjects:ju.partialUpdateObjects,deleteObject:ju.deleteObject,deleteObjects:ju.deleteObjects,deleteBy:ju.deleteBy,clearObjects:ju.clearObjects,browseObjects:ju.browseObjects,getObjectPosition:ju.getObjectPosition,findObject:ju.findObject,exists:ju.exists,saveSynonym:ju.saveSynonym,saveSynonyms:ju.saveSynonyms,getSynonym:ju.getSynonym,searchSynonyms:ju.searchSynonyms,browseSynonyms:ju.browseSynonyms,deleteSynonym:ju.deleteSynonym,clearSynonyms:ju.clearSynonyms,replaceAllObjects:ju.replaceAllObjects,replaceAllSynonyms:ju.replaceAllSynonyms,searchRules:ju.searchRules,getRule:ju.getRule,deleteRule:ju.deleteRule,saveRule:ju.saveRule,saveRules:ju.saveRules,replaceAllRules:ju.replaceAllRules,browseRules:ju.browseRules,clearRules:ju.clearRules}}),initAnalytics:()=>l=>Wxe.createAnalyticsClient({...n,...l,methods:{addABTest:Wxe.addABTest,getABTest:Wxe.getABTest,getABTests:Wxe.getABTests,stopABTest:Wxe.stopABTest,deleteABTest:Wxe.deleteABTest}}),initPersonalization:o,initRecommendation:()=>l=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(l)),getRecommendations:T_e.getRecommendations,getFrequentlyBoughtTogether:T_e.getFrequentlyBoughtTogether,getLookingSimilar:T_e.getLookingSimilar,getRecommendedForYou:T_e.getRecommendedForYou,getRelatedProducts:T_e.getRelatedProducts,getTrendingFacets:T_e.getTrendingFacets,getTrendingItems:T_e.getTrendingItems}})}Vss.version=ZYr.version;Pss.exports=Vss});var VYr=H((Z$u,LYr)=>{var Oss=Wss();LYr.exports=Oss;LYr.exports.default=Oss});var Mss=H(Mkt=>{"use strict";Object.defineProperty(Mkt,"__esModule",{value:!0});Mkt.search=void 0;var Rpl=(Pa(),vi(Va)),Npl=Rpl.__importDefault(VYr()),PYr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},Dpl=(0,Npl.default)(PYr.appId,PYr.apiKey).initIndex(PYr.indexName),kpl=async(e,t=0)=>await Dpl.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});Mkt.search=kpl});var OYr=H(Hkt=>{"use strict";Object.defineProperty(Hkt,"__esModule",{value:!0});Hkt.useMinistore=xpl;Hkt.useMinistoreSetAll=Gpl;var WYr=sC(),Hss=bGr();function xpl(e,t){let r=(0,WYr.useContext)(Hss.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let n=(0,WYr.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,n]}function Gpl(){let e=(0,WYr.useContext)(Hss.MinistoreContext);if(e===null)throw new Error("Expected this hook to run with a ministore context attached");return e.setAll}});var Jss=H(Rje=>{"use strict";Object.defineProperty(Rje,"__esModule",{value:!0});Rje.UncontrolledTextInput=void 0;var Qss=sC(),MYr=sC(),Yss=lH(),R_e=VK(),Xss=({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A})=>{let[{cursorOffset:f,cursorWidth:I},C]=MYr.useState({cursorOffset:(e||"").length,cursorWidth:0});MYr.useEffect(()=>{C(F=>{if(!r||!o)return F;let Q=e||"";return F.cursorOffset>Q.length-1?{cursorOffset:Q.length,cursorWidth:0}:F})},[e,r,o]);let b=a?I:0,E=n?n.repeat(e.length):e,N=E,B=t?R_e.grey(t):void 0;if(o&&r){B=t.length>0?R_e.inverse(t[0])+R_e.grey(t.slice(1)):R_e.inverse(" "),N=E.length>0?"":R_e.inverse(" ");let F=0;for(let Q of E)F>=f-b&&F<=f?N+=R_e.inverse(Q):N+=Q,F++;E.length>0&&f===E.length&&(N+=R_e.inverse(" "))}return Yss.useInput((F,Q)=>{if(Q.upArrow||Q.downArrow||Q.ctrl&&F==="c"||Q.tab||Q.shift&&Q.tab)return;if(Q.return){A&&A(e);return}let X=f,ae=e,ne=0;Q.leftArrow?o&&X--:Q.rightArrow?o&&X++:Q.backspace||Q.delete?f>0&&(ae=e.slice(0,f-1)+e.slice(f,e.length),X--):(ae=e.slice(0,f)+F+e.slice(f,e.length),X+=F.length,F.length>1&&(ne=F.length)),f<0&&(X=0),f>e.length&&(X=e.length),C({cursorOffset:X,cursorWidth:ne}),ae!==e&&l(ae)},{isActive:r}),Qss.createElement(Yss.Text,null,t?E.length>0?N:B:N)};Rje.default=Xss;Rje.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,n]=MYr.useState(e);return Qss.createElement(Xss,Object.assign({},t,{value:r,onChange:n}))}});var Kss=H(HYr=>{"use strict";Object.defineProperty(HYr,"__esModule",{value:!0});var vte=(Pa(),vi(Va)),Fpl=el(),Nje=Sn(),Zpl=vte.__importStar(A1t()),Lpl=($c(),vi(rg)),Uss=Mss(),Dje=["regular","dev","peer"],kje=class extends Fpl.BaseCommand{async execute(){Zpl.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>vte.__importStar(v1t())),{ScrollableItems:r}=await Promise.resolve().then(()=>vte.__importStar(N1t())),{useKeypress:n}=await Promise.resolve().then(()=>vte.__importStar(aDe())),{useMinistore:a}=await Promise.resolve().then(()=>vte.__importStar(OYr())),{renderForm:o}=await Promise.resolve().then(()=>vte.__importStar(D1t())),{default:l}=await Promise.resolve().then(()=>vte.__importStar(Jss())),{Box:A,Text:f}=await Promise.resolve().then(()=>vte.__importStar(lH())),{default:I,useEffect:C,useState:b}=await Promise.resolve().then(()=>vte.__importStar(sC())),E=await Nje.Configuration.find(this.context.cwd,this.context.plugins),N=()=>I.createElement(A,{flexDirection:"row"},I.createElement(A,{flexDirection:"column",width:48},I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},""),"/",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),I.createElement(A,null,I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),I.createElement(A,{flexDirection:"column"},I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),I.createElement(A,{marginLeft:1},I.createElement(f,null,"Press ",I.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),B=()=>I.createElement(I.Fragment,null,I.createElement(A,{width:15},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),I.createElement(A,{width:11},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),I.createElement(A,{width:10},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),F=()=>I.createElement(A,{width:17},I.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),Q=({hit:be,active:Se})=>{let[De,k]=a(be.name,null);n({active:Se},(Me,je)=>{if(je.name!=="space")return;if(!De){k(Dje[0]);return}let St=Dje.indexOf(De)+1;St===Dje.length?k(null):k(Dje[St])},[De,k]);let et=Nje.structUtils.parseIdent(be.name),ct=Nje.structUtils.prettyIdent(E,et);return I.createElement(A,null,I.createElement(A,{width:45},I.createElement(f,{bold:!0,wrap:"wrap"},ct)),I.createElement(A,{width:14,marginLeft:1},I.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),I.createElement(A,{width:10,marginLeft:1},I.createElement(f,{italic:!0,wrap:"truncate"},be.version)),I.createElement(A,{width:16,marginLeft:1},I.createElement(f,null,be.humanDownloadsLast30Days)))},X=({name:be,active:Se})=>{let[De]=a(be,null),k=Nje.structUtils.parseIdent(be);return I.createElement(A,null,I.createElement(A,{width:47},I.createElement(f,{bold:!0}," - ",Nje.structUtils.prettyIdent(E,k))),Dje.map(et=>I.createElement(A,{key:et,width:14,marginLeft:1},I.createElement(f,null," ",I.createElement(t,{active:De===et})," ",I.createElement(f,{bold:!0},et)))))},ae=()=>I.createElement(A,{marginTop:1},I.createElement(f,null,"Powered by Algolia.")),ce=await o(({useSubmit:be})=>{let Se=a();be(Se);let De=Array.from(Se.keys()).filter(Nr=>Se.get(Nr)!==null),[k,et]=b(""),[ct,Me]=b(0),[je,St]=b([]),At=Nr=>{Nr.match(/\t| /)||et(Nr)},Yt=async()=>{Me(0);let Nr=await(0,Uss.search)(k);Nr.query===k&&St(Nr.hits)},Tr=async()=>{let Nr=await(0,Uss.search)(k,ct+1);Nr.query===k&&Nr.page-1===ct&&(Me(Nr.page),St([...je,...Nr.hits]))};return C(()=>{k?Yt():St([])},[k]),I.createElement(A,{flexDirection:"column"},I.createElement(N,null),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(f,{bold:!0},"Search: "),I.createElement(A,{width:41},I.createElement(l,{value:k,onChange:At,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),I.createElement(B,null)),je.length?I.createElement(r,{radius:2,loop:!1,children:je.map(Nr=>I.createElement(Q,{key:Nr.name,hit:Nr,active:!1})),willReachEnd:Tr}):I.createElement(f,{color:"gray"},"Start typing..."),I.createElement(A,{flexDirection:"row",marginTop:1},I.createElement(A,{width:49},I.createElement(f,{bold:!0},"Selected:")),I.createElement(F,null)),De.length?De.map(Nr=>I.createElement(X,{key:Nr,name:Nr,active:!1})):I.createElement(f,{color:"gray"},"No selected packages..."),I.createElement(ae,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ce>"u")return 1;let fe=Array.from(ce.keys()).filter(be=>ce.get(be)==="regular"),ue=Array.from(ce.keys()).filter(be=>ce.get(be)==="dev"),de=Array.from(ce.keys()).filter(be=>ce.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),ue.length&&await this.cli.run(["add","--dev",...ue]),de&&await this.cli.run(["add","--peer",...de]),0}};kje.paths=[["search"]];kje.usage=Lpl.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` - This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry. - `,examples:[["Open the search window","yarn search"]]});HYr.default=kje});var zG=H(aC=>{"use strict";var Vpl=Object.prototype.toString,bH=WKe(),jss=!1,xje=new Set,zss={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};aC.longest=(e,t)=>e.reduce((r,n)=>Math.max(r,t?n[t].length:n.length),0);aC.hasColor=e=>!!e&&bH.hasColor(e);var Ykt=aC.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);aC.nativeType=e=>Vpl.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");aC.isAsyncFn=e=>aC.nativeType(e)==="asyncfunction";aC.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";aC.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;aC.scrollDown=(e=[])=>[...e.slice(1),e[0]];aC.scrollUp=(e=[])=>[e.pop(),...e];aC.reorder=(e=[])=>{let t=e.slice();return t.sort((r,n)=>r.index>n.index?1:r.index{let n=e.length,a=r===n?0:r<0?n-1:r,o=e[t];e[t]=e[a],e[a]=o};aC.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};aC.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};aC.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:n=` -`+r,width:a=80}=t,o=(n+r).match(/[^\S\n]/g)||[];a-=o.length;let l=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,A=e.trim(),f=new RegExp(l,"g"),I=A.match(f)||[];return I=I.map(C=>C.replace(/\n$/,"")),t.padEnd&&(I=I.map(C=>C.padEnd(a," "))),t.padStart&&(I=I.map(C=>C.padStart(a," "))),r+I.join(n)};aC.unmute=e=>{let t=e.stack.find(n=>bH.keys.color.includes(n));return t?bH[t]:e.stack.find(n=>n.slice(2)==="bg")?bH[t.slice(2)]:n=>n};aC.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";aC.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>bH.keys.color.includes(n));if(t){let n=bH["bg"+aC.pascal(t)];return n?n.black:e}let r=e.stack.find(n=>n.slice(0,2)==="bg");return r?bH[r.slice(2).toLowerCase()]||e:bH.none};aC.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(n=>bH.keys.color.includes(n)),r=e.stack.find(n=>n.slice(0,2)==="bg");if(t&&!r)return bH[zss[t]||t];if(r){let n=r.slice(2).toLowerCase(),a=zss[n];return a&&bH["bg"+aC.pascal(a)]||e}return bH.none};aC.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),n=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+n};aC.set=(e={},t="",r)=>t.split(".").reduce((n,a,o,l)=>{let A=l.length-1>o?n[a]||{}:r;return!aC.isObject(A)&&o{let n=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return n??r};aC.mixin=(e,t)=>{if(!Ykt(e))return t;if(!Ykt(t))return e;for(let r of Object.keys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(n,"value"))if(hasOwnProperty.call(e,r)&&Ykt(n.value)){let a=Object.getOwnPropertyDescriptor(e,r);Ykt(a.value)&&a.value!==n.value?e[r]=aC.merge({},e[r],t[r]):Reflect.defineProperty(e,r,n)}else Reflect.defineProperty(e,r,n);else Reflect.defineProperty(e,r,n)}return e};aC.merge=(...e)=>{let t={};for(let r of e)aC.mixin(t,r);return t};aC.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let n of Object.keys(r)){let a=r[n];typeof a=="function"?aC.define(e,n,a.bind(t)):aC.define(e,n,a)}};var Qkt=(e,t)=>{jss||(jss=!0,xje.forEach(r=>r()),e===!0&&process.exit(128+t))},qss=Qkt.bind(null,!0,15),$ss=Qkt.bind(null,!0,2);aC.onExit=e=>(xje.size===0&&(process.once("SIGTERM",qss),process.once("SIGINT",$ss),process.once("exit",Qkt)),xje.add(e),()=>{xje.delete(e),xje.size===0&&(process.off("SIGTERM",qss),process.off("SIGINT",$ss),process.off("exit",Qkt))});aC.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};aC.defineExport=(e,t,r)=>{let n;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){n=a},get(){return n?n():r()}})}});var eos=H(Oxe=>{"use strict";Oxe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};Oxe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};Oxe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};Oxe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};Oxe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var ros=H((Y$u,tos)=>{"use strict";tos.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var YYr=H((Q$u,ios)=>{"use strict";var nos=wt("readline"),Ppl=eos(),Wpl=ros(),Opl=/^(?:\x1b)([a-zA-Z0-9])$/,Mpl=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,Hpl={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function Ypl(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function Qpl(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var Xkt=(e="",t={})=>{let r,n={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=n.sequence||""),n.sequence=n.sequence||e||n.name,e==="\r")n.raw=void 0,n.name="return";else if(e===` -`)n.name="enter";else if(e===" ")n.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")n.name="backspace",n.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")n.name="escape",n.meta=e.length===2;else if(e===" "||e==="\x1B ")n.name="space",n.meta=e.length===2;else if(e<="")n.name=String.fromCharCode(e.charCodeAt(0)+97-1),n.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")n.name="number";else if(e.length===1&&e>="a"&&e<="z")n.name=e;else if(e.length===1&&e>="A"&&e<="Z")n.name=e.toLowerCase(),n.shift=!0;else if(r=Opl.exec(e))n.meta=!0,n.shift=/^[A-Z]$/.test(r[1]);else if(r=Mpl.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(n.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),l=(r[3]||r[5]||1)-1;n.ctrl=!!(l&4),n.meta=!!(l&10),n.shift=!!(l&1),n.code=o,n.name=Hpl[o],n.shift=Ypl(o)||n.shift,n.ctrl=Qpl(o)||n.ctrl}return n};Xkt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let n=nos.createInterface({terminal:!0,input:r});nos.emitKeypressEvents(r,n);let a=new Wpl((A,f)=>t(A,Xkt(A,f),n)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),n.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),n.pause(),n.close()}};Xkt.action=(e,t,r)=>{let n={...Ppl,...r};return t.ctrl?(t.action=n.ctrl[t.name],t):t.option&&n.option?(t.action=n.option[t.name],t):t.shift?(t.action=n.shift[t.name],t):(t.action=n.keys[t.name],t)};ios.exports=Xkt});var oos=H((X$u,sos)=>{"use strict";sos.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let n=t[r];typeof n=="number"&&(n={interval:n}),Xpl(e,r,n)}};function Xpl(e,t,r={}){let n=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;n.frames=r.frames||[],n.loading=!0;let o=setInterval(()=>{n.ms=Date.now()-n.start,n.tick++,e.render()},a);return n.stop=()=>{n.loading=!1,clearInterval(o)},Reflect.defineProperty(n,"interval",{value:o}),e.once("close",()=>n.stop()),n.stop}});var cos=H((J$u,aos)=>{"use strict";var{define:Jpl,width:Upl}=zG(),QYr=class{constructor(t){let r=t.options;Jpl(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=Upl(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};aos.exports=QYr});var uos=H((U$u,los)=>{"use strict";var XYr=zG(),ox=WKe(),JYr={default:ox.noop,noop:ox.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||XYr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||XYr.complement(this.primary)},primary:ox.cyan,success:ox.green,danger:ox.magenta,strong:ox.bold,warning:ox.yellow,muted:ox.dim,disabled:ox.gray,dark:ox.dim.gray,underline:ox.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};JYr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(ox.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(ox.visible=e.styles.visible);let t=XYr.merge({},JYr,e.styles);delete t.merge;for(let r of Object.keys(ox))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ox[r]});for(let r of Object.keys(ox.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ox[r]});return t};los.exports=JYr});var Aos=H((K$u,gos)=>{"use strict";var UYr=process.platform==="win32",Bte=WKe(),Kpl=zG(),KYr={...Bte.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Bte.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:Bte.symbols.question,submitted:Bte.symbols.check,cancelled:Bte.symbols.cross},separator:{pending:Bte.symbols.pointerSmall,submitted:Bte.symbols.middot,cancelled:Bte.symbols.middot},radio:{off:UYr?"( )":"\u25EF",on:UYr?"(*)":"\u25C9",disabled:UYr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};KYr.merge=e=>{let t=Kpl.merge({},Bte.symbols,KYr,e.symbols);return delete t.merge,t};gos.exports=KYr});var pos=H((j$u,dos)=>{"use strict";var jpl=uos(),zpl=Aos(),qpl=zG();dos.exports=e=>{e.options=qpl.merge({},e.options.theme,e.options),e.symbols=zpl.merge(e.options),e.styles=jpl.merge(e.options)}});var Cos=H((hos,mos)=>{"use strict";var fos=process.env.TERM_PROGRAM==="Apple_Terminal",$pl=q5(),jYr=zG(),P4=mos.exports=hos,VS="\x1B[",Ios="\x07",zYr=!1,tue=P4.code={bell:Ios,beep:Ios,beginning:`${VS}G`,down:`${VS}J`,esc:VS,getPosition:`${VS}6n`,hide:`${VS}?25l`,line:`${VS}2K`,lineEnd:`${VS}K`,lineStart:`${VS}1K`,restorePosition:VS+(fos?"8":"u"),savePosition:VS+(fos?"7":"s"),screen:`${VS}2J`,show:`${VS}?25h`,up:`${VS}1J`},N_e=P4.cursor={get hidden(){return zYr},hide(){return zYr=!0,tue.hide},show(){return zYr=!1,tue.show},forward:(e=1)=>`${VS}${e}C`,backward:(e=1)=>`${VS}${e}D`,nextLine:(e=1)=>`${VS}E`.repeat(e),prevLine:(e=1)=>`${VS}F`.repeat(e),up:(e=1)=>e?`${VS}${e}A`:"",down:(e=1)=>e?`${VS}${e}B`:"",right:(e=1)=>e?`${VS}${e}C`:"",left:(e=1)=>e?`${VS}${e}D`:"",to(e,t){return t?`${VS}${t+1};${e+1}H`:`${VS}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?N_e.left(-e):e>0?N_e.right(e):"",r+=t<0?N_e.up(-t):t>0?N_e.down(t):"",r},strLen(e){for(var t=0,r=e.length,n=-1,a=0;a=0&&n<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:n,input:a,prompt:o,size:l,value:A}=e;if(n=jYr.isPrimitive(n)?String(n):"",a=jYr.isPrimitive(a)?String(a):"",A=jYr.isPrimitive(A)?String(A):"",l){let f=P4.cursor.up(l)+P4.cursor.to(this.strLen(o)),I=a.length-r;return I>0&&(f+=P4.cursor.left(I)),f}if(A||t){let f=!a&&n?-this.strLen(n):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&n&&!o.includes(n)&&(f+=this.strLen(n)),P4.cursor.move(f)}}},qYr=P4.erase={screen:tue.screen,up:tue.up,down:tue.down,line:tue.line,lineEnd:tue.lineEnd,lineStart:tue.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return qYr.line+N_e.to(0);let r=o=>[...$pl(o)].length,n=e.split(/\r?\n/),a=0;for(let o of n)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(qYr.line+N_e.prevLine()).repeat(a-1)+qYr.line+N_e.to(0)}});var Mxe=H((z$u,yos)=>{"use strict";var efl=wt("events"),_os=q5(),$Yr=YYr(),tfl=oos(),rfl=cos(),nfl=pos(),OV=zG(),D_e=Cos(),eQr=class e extends efl{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,nfl(this),tfl(this),this.state=new rfl(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=sfl(this.options.margin),this.setMaxListeners(0),ifl(this)}async keypress(t,r={}){this.keypressed=!0;let n=$Yr.action(t,$Yr(t,r),this.options.actions);this.state.keypress=n,this.emit("keypress",t,n),this.emit("state",this.state.clone());let a=this.options[n.action]||this[n.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,n);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(D_e.code.beep)}cursorHide(){this.stdout.write(D_e.cursor.hide());let t=OV.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(D_e.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(D_e.cursor.down(t)+D_e.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:n}=this.sections(),{cursor:a,initial:o="",input:l="",value:A=""}=this,f=this.state.size=n.length,I={after:r,cursor:a,initial:o,input:l,prompt:t,size:f,value:A},C=D_e.cursor.restore(I);C&&this.stdout.write(C)}sections(){let{buffer:t,input:r,prompt:n}=this.state;n=_os(n);let a=_os(t),o=a.indexOf(n),l=a.slice(0,o),f=a.slice(o).split(` -`),I=f[0],C=f[f.length-1],E=(n+(r?" "+r:"")).length,N=Et.call(this,this.value),this.result=()=>n.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,n){let{options:a,state:o,symbols:l,timers:A}=this,f=A&&A[t];o.timer=f;let I=a[t]||o[t]||l[t],C=r&&r[t]!=null?r[t]:await I;if(C==="")return C;let b=await this.resolve(C,o,r,n);return!b&&r&&r[t]?this.resolve(I,o,r,n):b}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,n=this.state;return n.timer=r,OV.isObject(t)&&(t=t[n.status]||t.pending),OV.hasColor(t)?t:(this.styles[n.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return OV.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,n=this.state;n.timer=r;let a=t[n.status]||t.pending||n.separator,o=await this.resolve(a,n);return OV.isObject(o)&&(o=o[n.status]||o.pending),OV.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let n=await this.element("pointer",t,r);if(typeof n=="string"&&OV.hasColor(n))return n;if(n){let a=this.styles,o=this.index===r,l=o?a.primary:I=>I,A=await this.resolve(n[o?"on":"off"]||n,this.state),f=OV.hasColor(A)?A:l(A);return o?f:" ".repeat(A.length)}}async indicator(t,r){let n=await this.element("indicator",t,r);if(typeof n=="string"&&OV.hasColor(n))return n;if(n){let a=this.styles,o=t.enabled===!0,l=o?a.success:a.dark,A=n[o?"on":"off"]||n;return OV.hasColor(A)?A:l(A)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return OV.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return OV.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||OV.height(this.stdout,25)}get width(){return this.options.columns||OV.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,n=[r,t].find(this.isValue.bind(this));return this.isValue(n)?n:this.initial}static get prompt(){return t=>new this(t).run()}};function ifl(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],n=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?n.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function sfl(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` -`:" ",n=[];for(let a=0;a<4;a++){let o=r(a);t[a]?n.push(o.repeat(t[a])):n.push("")}return n}yos.exports=eQr});var Sos=H((q$u,Eos)=>{"use strict";var ofl=zG(),bos={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return bos.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};Eos.exports=(e,t={})=>{let r=ofl.merge({},bos,t.roles);return r[e]||r.default}});var Gje=H(($$u,wos)=>{"use strict";var afl=q5(),cfl=Mxe(),lfl=Sos(),Jkt=zG(),{reorder:tQr,scrollUp:ufl,scrollDown:gfl,isObject:vos,swap:Afl}=Jkt,rQr=class extends cfl{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:n,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");vos(r)&&(r=Object.keys(r)),Array.isArray(r)?(n!=null&&(this.index=this.findIndex(n)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(n!=null&&(r=n),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let n=[],a=0,o=async(l,A)=>{typeof l=="function"&&(l=await l.call(this)),l instanceof Promise&&(l=await l);for(let f=0;f(this.state.loadingChoices=!1,l))}async toChoice(t,r,n){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=lfl(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,Jkt.define(t,"parent",n),t.level=n?n.level+1:1,t.indent==null&&(t.indent=n?n.indent+" ":t.indent||""),t.path=n?n.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,afl(t.message).length));let l={...t};return t.reset=(A=l.input,f=l.value)=>{for(let I of Object.keys(l))t[I]=l[I];t.input=A,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,n){let a=await this.toChoice(t,r,n);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,n){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,n);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let n=t.parent;for(;n;){let a=n.choices.filter(o=>this.isDisabled(o));n.enabled=a.every(o=>o.enabled===!0),n=n.parent}return Bos(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=n=>{let a=Number(n);if(a>this.choices.length-1)return this.alert();let o=this.focused,l=this.choices.find(A=>a===A.index);if(!l.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(l)===-1){let A=tQr(this.choices),f=A.indexOf(l);if(o.index>f){let I=A.slice(f,f+this.limit),C=A.filter(b=>!I.includes(b));this.choices=I.concat(C)}else{let I=f-this.limit+1;this.choices=A.slice(I).concat(A.slice(0,I))}}return this.index=this.choices.indexOf(l),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(n=>{let a=this.choices.length,o=this.num,l=(A=!1,f)=>{clearTimeout(this.numberTimeout),A&&(f=r(o)),this.num="",n(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return l(!0);if(Number(o)>a)return l(!1,this.alert());this.numberTimeout=setTimeout(()=>l(!0),this.delay)})}home(){return this.choices=tQr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=tQr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===0?this.alert():t>r&&n===0?this.scrollUp():(this.index=(n-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,n=this.index;return this.options.scroll===!1&&n===r-1?this.alert():t>r&&n===r-1?this.scrollDown():(this.index=(n+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=ufl(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=gfl(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){Afl(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(n=>t[n]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(n=>!this.isDisabled(n));return t.enabled&&r.every(n=>this.isEnabled(n))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((n,a)=>(n[a]=this.find(a,r),n),{})}filter(t,r){let a=typeof t=="function"?t:(A,f)=>[A.name,f].includes(t),l=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?l.map(A=>A[r]):l}find(t,r){if(vos(t))return r?t[r]:t;let a=typeof t=="function"?t:(l,A)=>[l.name,A].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(l=>l.newChoice))return this.alert();let{reorder:r,sort:n}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&n!==!0&&(o=Jkt.reorder(o)),this.value=a?o.map(l=>l.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(n=>n.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let n=this.find(r);n&&(this.initial=n.index,this.focus(n,!0))}}}get choices(){return Bos(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:n}=this,a=t.limit||this._limit||r.limit||n.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function Bos(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(Jkt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let n=r.choices.filter(a=>!e.isDisabled(a));r.enabled=n.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}wos.exports=rQr});var rue=H((eeg,Tos)=>{"use strict";var dfl=Gje(),nQr=zG(),iQr=class extends dfl{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let n=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!nQr.hasColor(n)&&(n=this.styles.strong(n)),this.resolve(n,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),l=await this.resolve(t.hint,this.state,t,r);l&&!nQr.hasColor(l)&&(l=this.styles.muted(l));let A=this.indent(t),f=await this.choiceMessage(t,r),I=()=>[this.margin[3],A+a+o,f,this.margin[1],l].filter(Boolean).join(" ");return t.role==="heading"?I():t.disabled?(nQr.hasColor(f)||(f=this.styles.disabled(f)),I()):(n&&(f=this.styles.em(f)),I())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,l)=>await this.renderChoice(o,l)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let n=this.margin[0]+r.join(` -`),a;return this.options.choicesHeader&&(a=await this.resolve(this.options.choicesHeader,this.state)),[a,n].filter(Boolean).join(` -`)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(t=>this.styles.primary(t.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:t,size:r}=this.state,n="",a=await this.header(),o=await this.prefix(),l=await this.separator(),A=await this.message();this.options.promptLine!==!1&&(n=[o,A,l,""].join(" "),this.state.prompt=n);let f=await this.format(),I=await this.error()||await this.hint(),C=await this.renderChoices(),b=await this.footer();f&&(n+=f),I&&!n.includes(I)&&(n+=" "+I),t&&!f&&!C.trim()&&this.multiple&&this.emptyError!=null&&(n+=this.styles.danger(this.emptyError)),this.clear(r),this.write([a,n,C,b].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Tos.exports=iQr});var Nos=H((teg,Ros)=>{"use strict";var pfl=rue(),ffl=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return n=>e?n.replace(r,a=>t(a)):n},sQr=class extends pfl{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:n}=this.state;return this.input=n.slice(0,r)+t+n.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let n=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(n))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,l)=>o&&(t.stack?t(o):t.call(this,o)),n=ffl(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:n(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};Ros.exports=sQr});var aQr=H((reg,Dos)=>{"use strict";var oQr=zG();Dos.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:n="",pos:a,showCursor:o=!0,color:l}=t,A=l||e.styles.placeholder,f=oQr.inverse(e.styles.primary),I=F=>f(e.styles.black(F)),C=r,b=" ",E=I(b);if(e.blink&&e.blink.off===!0&&(I=F=>F,E=""),o&&a===0&&n===""&&r==="")return I(b);if(o&&a===0&&(r===n||r===""))return I(n[0])+A(n.slice(1));n=oQr.isPrimitive(n)?`${n}`:"",r=oQr.isPrimitive(r)?`${r}`:"";let N=n&&n.startsWith(r)&&n!==r,B=N?I(n[r.length]):E;if(a!==r.length&&o===!0&&(C=r.slice(0,a)+I(r[a])+r.slice(a+1),B=""),o===!1&&(B=""),N){let F=e.styles.unstyle(C+B);return C+B+A(n.slice(F.length))}return C+B}});var Ukt=H((neg,kos)=>{"use strict";var Ifl=q5(),hfl=rue(),mfl=aQr(),cQr=class extends hfl{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:n,input:a}=r;return r.value=r.input=a.slice(0,n)+t+a.slice(n),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:n}=t;return t.value=t.input=n.slice(0,r-1)+n.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:n}=t;if(n[r]===void 0)return this.alert();let a=`${n}`.slice(0,r)+`${n}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:n}=t;return r&&r.startsWith(n)&&n!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let n=await this.resolve(t.separator,this.state,t,r)||":";return n?" "+this.styles.disabled(n):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:n,styles:a}=this,{cursor:o,initial:l="",name:A,input:f=""}=t,{muted:I,submitted:C,primary:b,danger:E}=a,N=this.index===r,B=t.validate||(()=>!0),F=await this.choiceSeparator(t,r),Q=t.message;this.align==="right"&&(Q=Q.padStart(this.longest+1," ")),this.align==="left"&&(Q=Q.padEnd(this.longest+1," "));let X=this.values[A]=f||l,ae=f?"success":"dark";await B.call(t,X,this.state)!==!0&&(ae="danger");let ne=a[ae],ce=ne(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),ue=()=>[fe,ce,Q+F,f].filter(Boolean).join(" ");if(n.submitted)return Q=Ifl(Q),f=C(f),ue();if(t.format)f=await t.format.call(this,f,t,r);else{let de=this.styles.muted;f=mfl(this,{input:f,initial:l,pos:o,showCursor:N,color:de})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[A]=await t.result.call(this,X,t,r)),N&&(Q=b(Q)),t.error?f+=(f?" ":"")+E(t.error.trim()):t.hint&&(f+=(f?" ":"")+I(t.hint.trim())),ue()}async submit(){return this.value=this.values,super.base.submit.call(this)}};kos.exports=cQr});var lQr=H((ieg,Gos)=>{"use strict";var Cfl=Ukt(),_fl=()=>{throw new Error("expected prompt to have a custom authenticate method")},xos=(e=_fl)=>{class t extends Cfl{constructor(n){super(n)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(n){return xos(n)}}return t};Gos.exports=xos()});var Los=H((seg,Zos)=>{"use strict";var yfl=lQr();function bfl(e,t){return e.username===this.options.username&&e.password===this.options.password}var Fos=(e=bfl)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(n){return this.options.showPassword?n:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(n.length))}}];class r extends yfl.create(e){constructor(a){super({...a,choices:t})}static create(a){return Fos(a)}}return r};Zos.exports=Fos()});var Kkt=H((oeg,Vos)=>{"use strict";var Efl=Mxe(),{isPrimitive:Sfl,hasColor:vfl}=zG(),uQr=class extends Efl{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:n}=this;return n.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return Sfl(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return vfl(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=this.styles.muted(this.default),A=[n,o,l,a].filter(Boolean).join(" ");this.state.prompt=A;let f=await this.header(),I=this.value=this.cast(t),C=await this.format(I),b=await this.error()||await this.hint(),E=await this.footer();b&&!A.includes(b)&&(C+=" "+b),A+=" "+C,this.clear(r),this.write([f,A,E].filter(Boolean).join(` -`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};Vos.exports=uQr});var Wos=H((aeg,Pos)=>{"use strict";var Bfl=Kkt(),gQr=class extends Bfl{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Pos.exports=gQr});var Mos=H((ceg,Oos)=>{"use strict";var wfl=rue(),Tfl=Ukt(),Hxe=Tfl.prototype,AQr=class extends wfl{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let n=this.focused,a=n.parent||{};return!n.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():Hxe.dispatch.call(this,t,r)}append(t,r){return Hxe.append.call(this,t,r)}delete(t,r){return Hxe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?Hxe.next.call(this):super.next()}prev(){return this.focused.editable?Hxe.prev.call(this):super.prev()}async indicator(t,r){let n=t.indicator||"",a=t.editable?n:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?Hxe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let n=r.parent?this.value[r.parent.name]:this.value;if(r.editable?n=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(n=r.enabled===!0),t=await r.validate(n,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};Oos.exports=AQr});var k_e=H((leg,Hos)=>{"use strict";var Rfl=Mxe(),Nfl=YYr(),Dfl=aQr(),{isPrimitive:kfl}=zG(),dQr=class extends Rfl{constructor(t){super(t),this.initial=kfl(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?Nfl(t,{}):{}){let n=Date.now(),a=n-this.lastKeypress;this.lastKeypress=n;let o=r.name==="return"||r.name==="enter",l=this.state.prevKeypress,A;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):Dfl(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),n=await this.separator(),a=await this.message(),o=[r,a,n].filter(Boolean).join(" ");this.state.prompt=o;let l=await this.header(),A=await this.format(),f=await this.error()||await this.hint(),I=await this.footer();f&&!A.includes(f)&&(A+=" "+f),o+=" "+A,this.clear(t),this.write([l,o,I].filter(Boolean).join(` -`)),this.restore()}};Hos.exports=dQr});var Qos=H((ueg,Yos)=>{"use strict";var xfl=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),jkt=e=>xfl(e).filter(Boolean);Yos.exports=(e,t={},r="")=>{let{past:n=[],present:a=""}=t,o,l;switch(e){case"prev":case"undo":return o=n.slice(0,n.length-1),l=n[n.length-1]||"",{past:jkt([r,...o]),present:l};case"next":case"redo":return o=n.slice(1),l=n[0]||"",{past:jkt([...o,r]),present:l};case"save":return{past:jkt([...n,r]),present:""};case"remove":return l=jkt(n.filter(A=>A!==r)),a="",l.length&&(a=l.pop()),{past:l,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var fQr=H((geg,Jos)=>{"use strict";var Gfl=k_e(),Xos=Qos(),pQr=class extends Gfl{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let n=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:n},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=Xos(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=Xos("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};Jos.exports=pQr});var Kos=H((Aeg,Uos)=>{"use strict";var Ffl=k_e(),IQr=class extends Ffl{format(){return""}};Uos.exports=IQr});var zos=H((deg,jos)=>{"use strict";var Zfl=k_e(),hQr=class extends Zfl{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};jos.exports=hQr});var $os=H((peg,qos)=>{"use strict";var Lfl=rue(),mQr=class extends Lfl{constructor(t){super({...t,multiple:!0})}};qos.exports=mQr});var _Qr=H((feg,eas)=>{"use strict";var Vfl=k_e(),CQr=class extends Vfl{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,n=this.toNumber(this.input);return n>this.max+r?this.alert():(this.input=`${n+r}`,this.render())}down(t){let r=t||this.minor,n=this.toNumber(this.input);return nthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};eas.exports=CQr});var ras=H((Ieg,tas)=>{tas.exports=_Qr()});var ias=H((heg,nas)=>{"use strict";var Pfl=k_e(),yQr=class extends Pfl{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};nas.exports=yQr});var aas=H((meg,oas)=>{"use strict";var Wfl=q5(),Ofl=Gje(),sas=zG(),bQr=class extends Ofl{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` - `;let r=t.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((n,a)=>({name:a+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let t=0;for(let r of this.choices){t=Math.max(t,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let n=0;n=this.scale.length-1?this.alert():(t.scaleIndex++,this.render())}left(){let t=this.focused;return t.scaleIndex<=0?this.alert():(t.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){return this.scaleKey===!1||this.state.submitted?"":["",...this.scale.map(n=>` ${n.name} - ${n.message}`)].map(n=>this.styles.muted(n)).join(` -`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let n=this.scaleLength-r.join("").length,a=Math.round(n/(r.length-1)),l=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),A=" ".repeat(this.widths[0]);return this.margin[3]+A+this.margin[1]+l}scaleIndicator(t,r,n){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,n);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let n=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return n.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!sas.hasColor(o)&&(o=this.styles.muted(o));let l=B=>this.margin[3]+B.replace(/\s+$/,"").padEnd(this.widths[0]," "),A=this.newline,f=this.indent(t),I=await this.resolve(t.message,this.state,t,r),C=await this.renderScale(t,r),b=this.margin[1]+this.margin[3];this.scaleLength=Wfl(C).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-b.length);let N=sas.wordWrap(I,{width:this.widths[0],newline:A}).split(` -`).map(B=>l(B)+this.margin[1]);return n&&(C=this.styles.info(C),N=N.map(B=>this.styles.info(B))),N[0]+=C,this.linebreak&&N.push(""),[f+a,N.join(` -`)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let t=this.visible.map(async(a,o)=>await this.renderChoice(a,o)),r=await Promise.all(t),n=await this.renderScaleHeading();return this.margin[0]+[n,...r.map(a=>a.join(" "))].join(` -`)}async render(){let{submitted:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l="";this.options.promptLine!==!1&&(l=[n,o,a,""].join(" "),this.state.prompt=l);let A=await this.header(),f=await this.format(),I=await this.renderScaleKey(),C=await this.error()||await this.hint(),b=await this.renderChoices(),E=await this.footer(),N=this.emptyError;f&&(l+=f),C&&!l.includes(C)&&(l+=" "+C),t&&!f&&!b.trim()&&this.multiple&&N!=null&&(l+=this.styles.danger(N)),this.clear(r),this.write([A,l,I,b,E].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};oas.exports=bQr});var uas=H((Ceg,las)=>{"use strict";var cas=q5(),Mfl=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",SQr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=Mfl(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},Hfl=async(e={},t={},r=n=>n)=>{let n=new Set,a=e.fields||[],o=e.template,l=[],A=[],f=[],I=1;typeof o=="function"&&(o=await o());let C=-1,b=()=>o[++C],E=()=>o[C+1],N=B=>{B.line=I,l.push(B)};for(N({type:"bos",value:""});Cce.name===X.key);X.field=a.find(ce=>ce.name===X.key),ne||(ne=new SQr(X),A.push(ne)),ne.lines.push(X.line-1);continue}let F=l[l.length-1];F.type==="text"&&F.line===I?F.value+=B:N({type:"text",value:B})}return N({type:"eos",value:""}),{input:o,tabstops:l,unique:n,keys:f,items:A}};las.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),n={...t.values,...t.initial},{tabstops:a,items:o,keys:l}=await Hfl(t,n),A=EQr("result",e,t),f=EQr("format",e,t),I=EQr("validate",e,t,!0),C=e.isValue.bind(e);return async(b={},E=!1)=>{let N=0;b.required=r,b.items=o,b.keys=l,b.output="";let B=async(ae,ne,ce,fe)=>{let ue=await I(ae,ne,ce,fe);return ue===!1?"Invalid field "+ce.name:ue};for(let ae of a){let ne=ae.value,ce=ae.key;if(ae.type!=="template"){ne&&(b.output+=ne);continue}if(ae.type==="template"){let fe=o.find(De=>De.name===ce);t.required===!0&&b.required.add(fe.name);let ue=[fe.input,b.values[fe.value],fe.value,ne].find(C),be=(fe.field||{}).message||ae.inner;if(E){let De=await B(b.values[ce],b,fe,N);if(De&&typeof De=="string"||De===!1){b.invalid.set(ce,De);continue}b.invalid.delete(ce);let k=await A(b.values[ce],b,fe,N);b.output+=cas(k);continue}fe.placeholder=!1;let Se=ne;ne=await f(ne,b,fe,N),ue!==ne?(b.values[ce]=ue,ne=e.styles.typing(ue),b.missing.delete(be)):(b.values[ce]=void 0,ue=`<${be}>`,ne=e.styles.primary(ue),fe.placeholder=!0,b.required.has(ce)&&b.missing.add(be)),b.missing.has(be)&&b.validating&&(ne=e.styles.warning(ue)),b.invalid.has(ce)&&b.validating&&(ne=e.styles.danger(ue)),N===b.index&&(Se!==ne?ne=e.styles.underline(ne):ne=e.styles.heading(cas(ne))),N++}ne&&(b.output+=ne)}let F=b.output.split(` -`).map(ae=>" "+ae),Q=o.length,X=0;for(let ae of o)b.invalid.has(ae.name)&&ae.lines.forEach(ne=>{F[ne][0]===" "&&(F[ne]=b.styles.danger(b.symbols.bullet)+F[ne].slice(1))}),e.isValue(b.values[ae.name])&&X++;return b.completed=(X/Q*100).toFixed(0),b.output=F.join(` -`),b.output}};function EQr(e,t,r,n){return(a,o,l,A)=>typeof l.field[e]=="function"?l.field[e].call(t,a,o,l,A):[n,a].find(f=>t.isValue(f))}});var Aas=H((_eg,gas)=>{"use strict";var Yfl=q5(),Qfl=uas(),Xfl=Mxe(),vQr=class extends Xfl{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await Qfl(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let n=this.getItem(),a=n.input.slice(0,this.cursor),o=n.input.slice(this.cursor);this.input=n.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),n=t.input.slice(0,this.cursor-1);this.input=t.input=`${n}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:n,size:a}=this.state,o=[this.options.newline,` -`].find(ae=>ae!=null),l=await this.prefix(),A=await this.separator(),f=await this.message(),I=[l,f,A].filter(Boolean).join(" ");this.state.prompt=I;let C=await this.header(),b=await this.error()||"",E=await this.hint()||"",N=n?"":await this.interpolate(this.state),B=this.state.key=r[t]||"",F=await this.format(B),Q=await this.footer();F&&(I+=" "+F),E&&!F&&this.state.completed===0&&(I+=" "+E),this.clear(a);let X=[C,I,N,Q,b.trim()];this.write(X.filter(Boolean).join(o)),this.restore()}getItem(t){let{items:r,keys:n,index:a}=this.state,o=r.find(l=>l.name===n[a]);return o&&o.input!=null&&(this.input=o.input,this.cursor=o.cursor),o}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:t,missing:r,output:n,values:a}=this.state;if(t.size){let A="";for(let[f,I]of t)A+=`Invalid ${f}: ${I} -`;return this.state.error=A,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let l=Yfl(n).split(` -`).map(A=>A.slice(1)).join(` -`);return this.value={values:a,result:l},super.submit()}};gas.exports=vQr});var pas=H((yeg,das)=>{"use strict";var Jfl="(Use + to sort)",Ufl=rue(),BQr=class extends Ufl{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,Jfl].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let n=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+n:o+n}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};das.exports=BQr});var Ias=H((beg,fas)=>{"use strict";var Kfl=Gje(),wQr=class extends Kfl{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(n=>this.styles.muted(n)),this.state.header=r.join(` - `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let n of r)n.scale=jfl(5,this.options),n.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],n=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!n,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let n=this.index===r,a=this.term==="Hyper",o=a?9:8,l=a?"":" ",A=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),I=ne=>(ne?this.styles.success("\u25C9"):"\u25EF")+l,C=r+1+".",b=n?this.styles.heading:this.styles.noop,E=await this.resolve(t.message,this.state,t,r),N=this.indent(t),B=N+t.scale.map((ne,ce)=>I(ce===t.scaleIdx)).join(A),F=ne=>ne===t.scaleIdx?b(ne):ne,Q=N+t.scale.map((ne,ce)=>F(ce)).join(f),X=()=>[C,E].filter(Boolean).join(" "),ae=()=>[X(),B,Q," "].filter(Boolean).join(` -`);return n&&(B=this.styles.cyan(B),Q=this.styles.cyan(Q)),ae()}async renderChoices(){if(this.state.submitted)return"";let t=this.visible.map(async(n,a)=>await this.renderChoice(n,a)),r=await Promise.all(t);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` -`)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:t,size:r}=this.state,n=await this.prefix(),a=await this.separator(),o=await this.message(),l=[n,o,a].filter(Boolean).join(" ");this.state.prompt=l;let A=await this.header(),f=await this.format(),I=await this.error()||await this.hint(),C=await this.renderChoices(),b=await this.footer();(f||!I)&&(l+=" "+f),I&&!l.includes(I)&&(l+=" "+I),t&&!f&&!C&&this.multiple&&this.type!=="form"&&(l+=this.styles.danger(this.emptyError)),this.clear(r),this.write([l,A,C,b].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function jfl(e,t={}){if(Array.isArray(t.scale))return t.scale.map(n=>({...n}));let r=[];for(let n=1;n{has.exports=fQr()});var _as=H((Seg,Cas)=>{"use strict";var zfl=Kkt(),TQr=class extends zfl{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=n=>this.styles.primary.underline(n);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),n=await this.prefix(),a=await this.separator(),o=await this.message(),l=await this.format(),A=await this.error()||await this.hint(),f=await this.footer(),I=[n,o,a,l].join(" ");this.state.prompt=I,A&&!I.includes(A)&&(I+=" "+A),this.clear(t),this.write([r,I,f].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Cas.exports=TQr});var bas=H((veg,yas)=>{"use strict";var qfl=rue(),RQr=class extends qfl{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let n=await super.toChoices(t,r);if(n.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>n.length)throw new Error("Please specify the index of the correct answer from the list of choices");return n}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};yas.exports=RQr});var Sas=H(NQr=>{"use strict";var Eas=zG(),VR=(e,t)=>{Eas.defineExport(NQr,e,t),Eas.defineExport(NQr,e.toLowerCase(),t)};VR("AutoComplete",()=>Nos());VR("BasicAuth",()=>Los());VR("Confirm",()=>Wos());VR("Editable",()=>Mos());VR("Form",()=>Ukt());VR("Input",()=>fQr());VR("Invisible",()=>Kos());VR("List",()=>zos());VR("MultiSelect",()=>$os());VR("Numeral",()=>ras());VR("Password",()=>ias());VR("Scale",()=>aas());VR("Select",()=>rue());VR("Snippet",()=>Aas());VR("Sort",()=>pas());VR("Survey",()=>Ias());VR("Text",()=>mas());VR("Toggle",()=>_as());VR("Quiz",()=>bas())});var Bas=H((weg,vas)=>{vas.exports={ArrayPrompt:Gje(),AuthPrompt:lQr(),BooleanPrompt:Kkt(),NumberPrompt:_Qr(),StringPrompt:k_e()}});var Zje=H((Teg,Tas)=>{"use strict";var was=wt("assert"),kQr=wt("events"),nue=zG(),W4=class extends kQr{constructor(t,r){super(),this.options=nue.merge({},t),this.answers={...r}}register(t,r){if(nue.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}was.equal(typeof r,"function","expected a function");let n=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[n]=r:this.prompts[n]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(nue.merge({},this.options,r))}catch(n){return Promise.reject(n)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=nue.merge({},this.options,t),{type:n,name:a}=t,{set:o,get:l}=nue;if(typeof n=="function"&&(n=await n.call(this,t,this.answers)),!n)return this.answers[a];n==="number"&&(n="numeral"),was(this.prompts[n],`Prompt "${n}" is not registered`);let A=new this.prompts[n](r),f=l(this.answers,a);A.state.answers=this.answers,A.enquirer=this,a&&A.on("submit",C=>{this.emit("answer",a,C,A),o(this.answers,a,C)});let I=A.emit.bind(A);return A.emit=(...C)=>(this.emit.call(this,...C),I(...C)),this.emit("prompt",A,this),r.autofill&&f!=null?(A.value=A.input=f,r.autofill==="show"&&await A.submit()):f=A.value=await A.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||Mxe()}static get prompts(){return Sas()}static get types(){return Bas()}static get prompt(){let t=(r,...n)=>{let a=new this(...n),o=a.emit.bind(a);return a.emit=(...l)=>(t.emit(...l),o(...l)),a.prompt(r)};return nue.mixinEmitter(t,new kQr),t}};nue.mixinEmitter(W4,new kQr);var DQr=W4.prompts;for(let e of Object.keys(DQr)){let t=e.toLowerCase(),r=n=>new DQr[e](n).run();W4.prompt[t]=r,W4[t]=r,W4[e]||Reflect.defineProperty(W4,e,{get:()=>DQr[e]})}var Fje=e=>{nue.defineExport(W4,e,()=>W4.types[e])};Fje("ArrayPrompt");Fje("AuthPrompt");Fje("BooleanPrompt");Fje("NumberPrompt");Fje("StringPrompt");Tas.exports=W4});var Pje=H(PR=>{"use strict";Object.defineProperty(PR,"__esModule",{value:!0});PR.Strategy=PR.WorkspaceModifier=PR.Modifier=PR.Target=void 0;PR.getModifier=tIl;PR.extractRangeModifier=Nas;PR.applyModifier=nIl;PR.toWorkspaceModifier=Das;PR.makeWorkspaceDescriptor=kas;PR.findProjectDescriptors=xas;PR.extractDescriptorFromPath=iIl;PR.getSuggestedDescriptors=oIl;PR.fetchDescriptorFrom=xQr;var $fl=(Pa(),vi(Va)),x_e=Sn(),gb=Sn(),zkt=ro(),Ras=$fl.__importDefault(UC()),eIl="workspace:",Vje;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})(Vje||(PR.Target=Vje={}));var sue;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(sue||(PR.Modifier=sue={}));var Lje;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(Lje||(PR.WorkspaceModifier=Lje={}));var iue;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(iue||(PR.Strategy=iue={}));function tIl(e,t){return e.exact?sue.EXACT:e.caret?sue.CARET:e.tilde?sue.TILDE:t.configuration.get("defaultSemverRangePrefix")}var rIl=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function Nas(e,{project:t}){let r=e.match(rIl);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function nIl(e,t){let{protocol:r,source:n,params:a,selector:o}=gb.structUtils.parseRange(e.range);return Ras.default.valid(o)&&(o=`${t}${e.range}`),gb.structUtils.makeDescriptor(e,gb.structUtils.makeRange({protocol:r,source:n,params:a,selector:o}))}function Das(e){switch(e){case sue.CARET:return Lje.CARET;case sue.TILDE:return Lje.TILDE;case sue.EXACT:return Lje.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function kas(e,t){return gb.structUtils.makeDescriptor(e.anchoredDescriptor,`${eIl}${Das(t)}`)}async function xas(e,{project:t,target:r}){let n=new Map,a=o=>{let l=n.get(o.descriptorHash);return l||n.set(o.descriptorHash,l={descriptor:o,locators:[]}),l};for(let o of t.workspaces)if(r===Vje.PEER){let l=o.manifest.peerDependencies.get(e.identHash);l!==void 0&&a(l).locators.push(o.anchoredLocator)}else{let l=o.manifest.dependencies.get(e.identHash),A=o.manifest.devDependencies.get(e.identHash);r===Vje.DEVELOPMENT?A!==void 0?a(A).locators.push(o.anchoredLocator):l!==void 0&&a(l).locators.push(o.anchoredLocator):l!==void 0?a(l).locators.push(o.anchoredLocator):A!==void 0&&a(A).locators.push(o.anchoredLocator)}return n}async function iIl(e,{cwd:t,workspace:r}){return await aIl(async n=>{zkt.ppath.isAbsolute(e)||(e=zkt.ppath.relative(r.cwd,zkt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await xQr(gb.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:n,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let l=new x_e.ThrowReport,A=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),I={checksums:a.storedChecksums,project:a,cache:n,fetcher:f,report:l,resolver:A},C=A.bindDescriptor(o,r.anchoredLocator,I),b=gb.structUtils.convertDescriptorToLocator(C),E=await f.fetch(b,I),N=await x_e.Manifest.find(E.prefixPath,{baseFs:E.packageFs});if(!N.name)throw new Error("Target path doesn't have a name");return gb.structUtils.makeDescriptor(N.name,e)})}function sIl(e){if(e.range==="unknown")return{type:"resolve",range:"latest"};if(gb.semverUtils.validRange(e.range))return{type:"fixed",range:e.range};if(x_e.TAG_REGEXP.test(e.range))return{type:"resolve",range:e.range};let t=e.range.match(/^(?:jsr:|npm:)(.*)/);if(!t)return{type:"fixed",range:e.range};let[,r]=t,n=`${gb.structUtils.stringifyIdent(e)}@`;return r.startsWith(n)&&(r=r.slice(n.length)),gb.semverUtils.validRange(r)?{type:"fixed",range:e.range}:x_e.TAG_REGEXP.test(r)?{type:"resolve",range:e.range}:{type:"fixed",range:e.range}}async function oIl(e,{project:t,workspace:r,cache:n,target:a,fixed:o,modifier:l,strategies:A,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let I=!o||e.range==="unknown"?sIl(e):{type:"fixed",range:e.range};if(I.type==="fixed")return{suggestions:[{descriptor:e,name:`Use ${gb.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let C=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,b=[],E=[],N=async B=>{try{await B()}catch(F){E.push(F)}};for(let B of A){if(b.length>=f)break;switch(B){case iue.KEEP:await N(async()=>{C&&b.push({descriptor:C,name:`Keep ${gb.structUtils.prettyDescriptor(t.configuration,C)}`,reason:"(no changes)"})});break;case iue.REUSE:await N(async()=>{for(let{descriptor:F,locators:Q}of(await xas(e,{project:t,target:a})).values()){if(Q.length===1&&Q[0].locatorHash===r.anchoredLocator.locatorHash&&A.includes(iue.KEEP))continue;let X=`(originally used by ${gb.structUtils.prettyLocator(t.configuration,Q[0])}`;X+=Q.length>1?` and ${Q.length-1} other${Q.length>2?"s":""})`:")",b.push({descriptor:F,name:`Reuse ${gb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:X})}});break;case iue.CACHE:await N(async()=>{for(let F of t.storedDescriptors.values())F.identHash===e.identHash&&b.push({descriptor:F,name:`Reuse ${gb.structUtils.prettyDescriptor(t.configuration,F)}`,reason:"(already used somewhere in the lockfile)"})});break;case iue.PROJECT:await N(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let F=t.tryWorkspaceByIdent(e);if(F===null)return;let Q=kas(F,l);b.push({descriptor:Q,name:`Attach ${gb.structUtils.prettyDescriptor(t.configuration,Q)}`,reason:`(local workspace at ${gb.formatUtils.pretty(t.configuration,F.relativeCwd,gb.formatUtils.Type.PATH)})`})});break;case iue.LATEST:{let F=t.configuration.get("enableNetwork"),Q=t.configuration.get("enableOfflineMode");await N(async()=>{if(a===Vje.PEER)b.push({descriptor:gb.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!F&&!Q)b.push({descriptor:null,name:"Resolve from latest",reason:gb.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let X=await xQr(e,I.range,{project:t,cache:n,workspace:r,modifier:l});X&&b.push({descriptor:X,name:`Use ${gb.structUtils.prettyDescriptor(t.configuration,X)}`,reason:`(resolved from ${Q?"the cache":"latest"})`})}})}break}}return{suggestions:b.slice(0,f),rejections:E.slice(0,f)}}async function xQr(e,t,{project:r,cache:n,workspace:a,preserveModifier:o=!0,modifier:l}){let A=r.configuration.normalizeDependency(gb.structUtils.makeDescriptor(e,t)),f=new x_e.ThrowReport,I=r.configuration.makeFetcher(),C=r.configuration.makeResolver(),b={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},E={...b,resolver:C,fetchOptions:b},N=C.bindDescriptor(A,a.anchoredLocator,E),B=await C.getCandidates(N,{},E);if(B.length===0)return null;let F=B[0],{protocol:Q,source:X,params:ae,selector:ne}=gb.structUtils.parseRange(gb.structUtils.convertToManifestRange(F.reference));if(Q===r.configuration.get("defaultProtocol")&&(Q=null),Ras.default.valid(ne)){let ce=ne;if(typeof l<"u")ne=l+ne;else if(o!==!1){let de=typeof o=="string"?o:A.range;ne=Nas(de,{project:r})+ne}let fe=gb.structUtils.makeDescriptor(F,gb.structUtils.makeRange({protocol:Q,source:X,params:ae,selector:ne}));(await C.getCandidates(r.configuration.normalizeDependency(fe),{},E)).length!==1&&(ne=ce)}return gb.structUtils.makeDescriptor(F,gb.structUtils.makeRange({protocol:Q,source:X,params:ae,selector:ne}))}async function aIl(e){return await zkt.xfs.mktempPromise(async t=>{let r=x_e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new x_e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var Las=H(GQr=>{"use strict";Object.defineProperty(GQr,"__esModule",{value:!0});var Zas=(Pa(),vi(Va)),Gas=el(),xO=Sn(),Fas=Sn(),cL=Sn(),jv=($c(),vi(rg)),cIl=Zje(),lIl=Zas.__importStar((CZ(),vi(mZ))),qG=Zas.__importStar(Pje()),Wje=class extends Gas.BaseCommand{constructor(){super(...arguments),this.json=jv.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=jv.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=jv.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=jv.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=jv.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=jv.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=jv.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=jv.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=jv.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=jv.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=jv.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=jv.Option.String("--mode",{description:"Change what artifacts installs generate",validator:lIl.isEnum(Fas.InstallMode)}),this.silent=jv.Option.Boolean("--silent",{hidden:!0}),this.packages=jv.Option.Rest()}async execute(){let t=await xO.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Fas.Project.find(t,this.context.cwd),a=await xO.Cache.find(t);if(!n)throw new Gas.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l||t.get("preferReuse"),f=qG.getModifier(this,r),I=[A?qG.Strategy.REUSE:void 0,qG.Strategy.PROJECT,this.cached?qG.Strategy.CACHE:void 0,qG.Strategy.LATEST].filter(X=>typeof X<"u"),C=l?1/0:1,b=X=>{let ae=cL.structUtils.tryParseDescriptor(X.slice(4));return ae?ae.range==="unknown"?cL.structUtils.makeDescriptor(ae,`jsr:${cL.structUtils.stringifyIdent(ae)}@latest`):cL.structUtils.makeDescriptor(ae,`jsr:${ae.range}`):null},E=await Promise.all(this.packages.map(async X=>{let ae=X.match(/^\.{0,2}\//)?await qG.extractDescriptorFromPath(X,{cwd:this.context.cwd,workspace:n}):X.startsWith("jsr:")?b(X):cL.structUtils.tryParseDescriptor(X),ne=X.match(/^(https?:|git@github)/);if(ne)throw new jv.UsageError(`It seems you are trying to add a package using a ${xO.formatUtils.pretty(t,`${ne[0]}...`,xO.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. -Try running the command again with the package name prefixed: ${xO.formatUtils.pretty(t,"yarn add",xO.formatUtils.Type.CODE)} ${xO.formatUtils.pretty(t,cL.structUtils.makeDescriptor(cL.structUtils.makeIdent(null,"my-package"),`${ne[0]}...`),xO.formatUtils.Type.DESCRIPTOR)}`);if(!ae)throw new jv.UsageError(`The ${xO.formatUtils.pretty(t,X,xO.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ce=uIl(n,ae,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ce.map(async ue=>{let de=await qG.getSuggestedDescriptors(ae,{project:r,workspace:n,cache:a,fixed:o,target:ue,modifier:f,strategies:I,maxResults:C});return{request:ae,suggestedDescriptors:de,target:ue}}))})).then(X=>X.flat()),N=await xO.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async X=>{for(let{request:ae,suggestedDescriptors:{suggestions:ne,rejections:ce}}of E)if(ne.filter(ue=>ue.descriptor!==null).length===0){let[ue]=ce;if(typeof ue>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?X.reportError(xO.MessageName.CANT_SUGGEST_RESOLUTIONS,`${cL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range`):X.reportError(xO.MessageName.CANT_SUGGEST_RESOLUTIONS,`${cL.structUtils.prettyDescriptor(t,ae)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),X.reportSeparator(),X.reportExceptionOnce(ue)}});if(N.hasErrors())return N.exitCode();let B=!1,F=[],Q=[];for(let{suggestedDescriptors:{suggestions:X},target:ae}of E){let ne,ce=X.filter(be=>be.descriptor!==null),fe=ce[0].descriptor,ue=ce.every(be=>cL.structUtils.areDescriptorsEqual(be.descriptor,fe));ce.length===1||ue?ne=fe:(B=!0,{answer:ne}=await(0,cIl.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:X.map(({descriptor:be,name:Se,reason:De})=>be?{name:Se,hint:De,descriptor:be}:{name:Se,hint:De,disabled:!0}),onCancel:()=>process.exit(130),result(be){return this.find(be,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let de=n.manifest[ae].get(ne.identHash);(typeof de>"u"||de.descriptorHash!==ne.descriptorHash)&&(n.manifest[ae].set(ne.identHash,ne),this.optional&&(ae==="dependencies"?n.manifest.ensureDependencyMeta({...ne,range:"unknown"}).optional=!0:ae==="peerDependencies"&&(n.manifest.ensurePeerDependencyMeta({...ne,range:"unknown"}).optional=!0)),typeof de>"u"?F.push([n,ae,ne,I]):Q.push([n,ae,de,ne]))}return await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyAddition,F),await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyReplacement,Q),B&&this.context.stdout.write(` -`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};Wje.paths=[["add"]];Wje.usage=jv.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});GQr.default=Wje;function uIl(e,t,{dev:r,peer:n,preferDev:a,optional:o}){let l=e.manifest[qG.Target.REGULAR].has(t.identHash),A=e.manifest[qG.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[qG.Target.PEER].has(t.identHash);if((r||n)&&l)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!n&&f)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&A)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!n&&f)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new jv.UsageError(`Package "${cL.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let I=[];return n&&I.push(qG.Target.PEER),(r||a)&&I.push(qG.Target.DEVELOPMENT),o&&I.push(qG.Target.REGULAR),I.length>0?I:A?[qG.Target.DEVELOPMENT]:f?[qG.Target.PEER]:[qG.Target.REGULAR]}});var Vas=H(ZQr=>{"use strict";Object.defineProperty(ZQr,"__esModule",{value:!0});var gIl=el(),FQr=Sn(),Oje=Sn(),Mje=($c(),vi(rg)),Hje=class extends gIl.BaseCommand{constructor(){super(...arguments),this.verbose=Mje.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=Mje.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=Mje.Option.String({required:!1})}async execute(){let t=await FQr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await FQr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let l=(await Oje.scriptUtils.getPackageAccessibleBinaries(n,{project:r})).get(this.name);if(!l)throw new Mje.UsageError(`Couldn't find a binary named "${this.name}" for package "${Oje.structUtils.prettyLocator(t,n)}"`);let[,A]=l;return this.context.stdout.write(`${A} -`),0}return(await FQr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await Oje.scriptUtils.getPackageAccessibleBinaries(n,{project:r}),f=Array.from(l.keys()).reduce((I,C)=>Math.max(I,C.length),0);for(let[I,[C,b]]of l)o.reportJson({name:I,source:Oje.structUtils.stringifyIdent(C),path:b});if(this.verbose)for(let[I,[C]]of l)o.reportInfo(null,`${I.padEnd(f," ")} ${Oje.structUtils.prettyLocator(t,C)}`);else for(let I of l.keys())o.reportInfo(null,I)})).exitCode()}};Hje.paths=[["bin"]];Hje.usage=Mje.Command.Usage({description:"get the path to a binary script",details:` - When used without arguments, this command will print the list of all the binaries available in the current workspace. Adding the \`-v,--verbose\` flag will cause the output to contain both the binary name and the locator of the package that provides the binary. - - When an argument is specified, this command will just print the path to the binary on the standard output and exit. Note that the reported path may be stored within a zip archive. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});ZQr.default=Hje});var Was=H(VQr=>{"use strict";Object.defineProperty(VQr,"__esModule",{value:!0});var AIl=el(),LQr=Sn(),Pas=ro(),qkt=($c(),vi(rg)),Yje=class extends AIl.BaseCommand{constructor(){super(...arguments),this.mirror=qkt.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=qkt.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await LQr.Configuration.find(this.context.cwd,this.context.plugins);if(!t.get("enableCacheClean"))throw new qkt.UsageError("Cache cleaning is currently disabled. To enable it, set `enableCacheClean: true` in your configuration file. Note: Cache cleaning is typically not required and should be avoided when using Zero-Installs.");let r=await LQr.Cache.find(t);return(await LQr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await Pas.xfs.removePromise(r.mirrorCwd),await t.triggerHook(l=>l.cleanGlobalArtifacts,t)),o&&await Pas.xfs.removePromise(r.cwd)})).exitCode()}};Yje.paths=[["cache","clean"],["cache","clear"]];Yje.usage=qkt.Command.Usage({description:"remove the shared cache files",details:` - This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});VQr.default=Yje});var Mas=H(WQr=>{"use strict";Object.defineProperty(WQr,"__esModule",{value:!0});var dIl=el(),PQr=Sn(),Yxe=($c(),vi(rg)),pIl=kW(),Oas=wt("util"),Qje=class extends dIl.BaseCommand{constructor(){super(...arguments),this.why=Yxe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=Yxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=Yxe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=Yxe.Option.String()}async execute(){let t=await PQr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new Yxe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),l=PQr.miscUtils.convertMapsToIndexableObjects(o),A=n?(0,pIl.get)(l,n):l,f=await PQr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async I=>{I.reportJson(A)});if(!this.json){if(typeof A=="string")return this.context.stdout.write(`${A} -`),f.exitCode();Oas.inspect.styles.name="cyan",this.context.stdout.write(`${(0,Oas.inspect)(A,{depth:1/0,colors:t.get("enableColors"),compact:!1})} -`)}return f.exitCode()}};Qje.paths=[["config","get"]];Qje.usage=Yxe.Command.Usage({description:"read a configuration settings",details:` - This command will print a configuration setting. - - Secrets (such as tokens) will be redacted from the output by default. If this behavior isn't desired, set the \`--no-redacted\` to get the untransformed value. - `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});WQr.default=Qje});var Yas=H(MQr=>{"use strict";Object.defineProperty(MQr,"__esModule",{value:!0});var fIl=el(),G_e=Sn(),oue=($c(),vi(rg)),OQr=kW(),Has=wt("util"),Xje=class extends fIl.BaseCommand{constructor(){super(...arguments),this.json=oue.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=oue.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=oue.Option.String(),this.value=oue.Option.String()}async execute(){let t=await G_e.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new oue.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new oue.UsageError(`Couldn't find a configuration settings named "${n}"`);if(n==="enableStrictSettings")throw new oue.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let l=this.json?JSON.parse(this.value):this.value;await(this.home?N=>G_e.Configuration.updateHomeConfiguration(N):N=>G_e.Configuration.updateConfiguration(r(),N))(N=>{if(a){let B=(0,OQr.cloneDeep)(N);return(0,OQr.set)(B,this.name,l),B}else return{...N,[n]:l}});let I=(await G_e.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(n,{hideSecrets:!0,getNativePaths:!0}),C=G_e.miscUtils.convertMapsToIndexableObjects(I),b=a?(0,OQr.get)(C,a):C;return(await G_e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async N=>{Has.inspect.styles.name="cyan",N.reportInfo(G_e.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,Has.inspect)(b,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};Xje.paths=[["config","set"]];Xje.usage=oue.Command.Usage({description:"change a configuration settings",details:` - This command will set a configuration setting. - - When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). - - When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});MQr.default=Xje});var Qas=H(YQr=>{"use strict";Object.defineProperty(YQr,"__esModule",{value:!0});var IIl=el(),Qxe=Sn(),Jje=($c(),vi(rg)),HQr=kW(),Uje=class extends IIl.BaseCommand{constructor(){super(...arguments),this.home=Jje.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=Jje.Option.String()}async execute(){let t=await Qxe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new Jje.UsageError("This command must be run from within a project folder");return t.projectCwd},n=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(n)>"u")throw new Jje.UsageError(`Couldn't find a configuration settings named "${n}"`);let l=this.home?f=>Qxe.Configuration.updateHomeConfiguration(f):f=>Qxe.Configuration.updateConfiguration(r(),f);return(await Qxe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let I=!1;await l(C=>{if(!(0,HQr.has)(C,this.name))return f.reportWarning(Qxe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),I=!0,C;let b=a?(0,HQr.cloneDeep)(C):{...C};return(0,HQr.unset)(b,this.name),b}),I||f.reportInfo(Qxe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};Uje.paths=[["config","unset"]];Uje.usage=Jje.Command.Usage({description:"unset a configuration setting",details:` - This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});YQr.default=Uje});var Xas=H(XQr=>{"use strict";Object.defineProperty(XQr,"__esModule",{value:!0});var hIl=el(),ax=Sn(),mIl=ro(),Xxe=($c(),vi(rg)),QQr=wt("util"),Kje=class extends hIl.BaseCommand{constructor(){super(...arguments),this.noDefaults=Xxe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=Xxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=Xxe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=Xxe.Option.Boolean("--why",{hidden:!0}),this.names=Xxe.Option.Rest()}async execute(){let t=await ax.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,ax.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let n=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await ax.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async l=>{if(t.invalid.size>0&&!this.json){for(let[A,f]of t.invalid)l.reportError(ax.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${A}" in ${f}`);l.reportSeparator()}if(this.json)for(let A of n){if(this.noDefaults&&!t.sources.has(A))continue;let f=t.settings.get(A);typeof f>"u"&&l.reportError(ax.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${A}"`);let I=t.getSpecial(A,{hideSecrets:!0,getNativePaths:!0}),C=t.sources.get(A)??"",b=C&&C[0]!=="<"?mIl.npath.fromPortablePath(C):C;l.reportJson({key:A,effective:I,source:b,...f})}else{let A={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},I={children:f};for(let C of n){if(this.noDefaults&&!t.sources.has(C))continue;let b=t.settings.get(C),E=t.sources.get(C)??"",N=t.getSpecial(C,{hideSecrets:!0,getNativePaths:!0}),B={Description:{label:"Description",value:ax.formatUtils.tuple(ax.formatUtils.Type.MARKDOWN,{text:b.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:ax.formatUtils.tuple(E[0]==="<"?ax.formatUtils.Type.CODE:ax.formatUtils.Type.PATH,E)}};f[C]={value:ax.formatUtils.tuple(ax.formatUtils.Type.CODE,C),children:B};let F=(Q,X)=>{for(let[ae,ne]of X)if(ne instanceof Map){let ce={};Q[ae]={children:ce},F(ce,ne)}else Q[ae]={label:ae,value:ax.formatUtils.tuple(ax.formatUtils.Type.NO_HINT,(0,QQr.inspect)(ne,A))}};N instanceof Map?F(B,N):B.Value={label:"Value",value:ax.formatUtils.tuple(ax.formatUtils.Type.NO_HINT,(0,QQr.inspect)(N,A))}}n.length!==1&&(a=void 0),ax.treeUtils.emitTree(I,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let l=n[0],A=(0,QQr.inspect)(t.getSpecial(l,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` -`),this.context.stdout.write(`${A} -`)}return o.exitCode()}};Kje.paths=[["config"]];Kje.usage=Xxe.Command.Usage({description:"display the current configuration",details:` - This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});XQr.default=Kje});var UQr=H(Z_e=>{"use strict";Object.defineProperty(Z_e,"__esModule",{value:!0});Z_e.acceptedStrategies=Z_e.Strategy=void 0;Z_e.dedupe=bIl;var CIl=(Pa(),vi(Va)),F_e=Sn(),EH=Sn(),_Il=CIl.__importDefault(Ek()),JQr;(function(e){e.HIGHEST="highest"})(JQr||(Z_e.Strategy=JQr={}));Z_e.acceptedStrategies=new Set(Object.values(JQr));var yIl={highest:async(e,t,{resolver:r,fetcher:n,resolveOptions:a,fetchOptions:o})=>{let l=new Map;for(let[f,I]of e.storedResolutions){let C=e.storedDescriptors.get(f);if(typeof C>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);F_e.miscUtils.getSetWithDefault(l,C.identHash).add(I)}let A=new Map(F_e.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>EH.structUtils.isVirtualDescriptor(f)?F_e.miscUtils.mapAndFilter.skip:[f.descriptorHash,F_e.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let I=A.get(f.descriptorHash);if(typeof I>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let C=e.storedResolutions.get(f.descriptorHash);if(typeof C>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let b=e.originalPackages.get(C);if(typeof b>"u")throw new Error(`Assertion failed: The package (${C}) should have been registered`);Promise.resolve().then(async()=>{let E=r.getResolutionDependencies(f,a),N=Object.fromEntries(await F_e.miscUtils.allSettledSafe(Object.entries(E).map(async([ne,ce])=>{let fe=A.get(ce.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ce.descriptorHash}) should have been registered`);let ue=await fe.promise;if(!ue)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ne,ue.updatedPackage]})));if(t.length&&!_Il.default.isMatch(EH.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(b,a))return b;let B=l.get(f.identHash);if(typeof B>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(B.size===1)return b;let F=[...B].map(ne=>{let ce=e.originalPackages.get(ne);if(typeof ce>"u")throw new Error(`Assertion failed: The package (${ne}) should have been registered`);return ce}),Q=await r.getSatisfying(f,N,F,a),X=Q.locators?.[0];if(typeof X>"u"||!Q.sorted)return b;let ae=e.originalPackages.get(X.locatorHash);if(typeof ae>"u")throw new Error(`Assertion failed: The package (${X.locatorHash}) should have been registered`);return ae}).then(async E=>{let N=await e.preparePackage(E,{resolver:r,resolveOptions:a});I.resolve({descriptor:f,currentPackage:b,updatedPackage:E,resolvedPackage:N})}).catch(E=>{I.reject(E)})}return[...A.values()].map(f=>f.promise)}};async function bIl(e,{strategy:t,patterns:r,cache:n,report:a}){let{configuration:o}=e,l=new F_e.ThrowReport,A=o.makeResolver(),f=o.makeFetcher(),I={cache:n,checksums:e.storedChecksums,fetcher:f,project:e,report:l,cacheOptions:{skipIntegrityCheck:!0}},C={project:e,resolver:A,report:l,fetchOptions:I};return await a.startTimerPromise("Deduplication step",async()=>{let b=yIl[t],E=await b(e,r,{resolver:A,resolveOptions:C,fetcher:f,fetchOptions:I}),N=F_e.Report.progressViaCounter(E.length);await a.reportProgress(N);let B=0;await Promise.all(E.map(X=>X.then(ae=>{if(ae===null||ae.currentPackage.locatorHash===ae.updatedPackage.locatorHash)return;B++;let{descriptor:ne,currentPackage:ce,updatedPackage:fe}=ae;a.reportInfo(EH.MessageName.UNNAMED,`${EH.structUtils.prettyDescriptor(o,ne)} can be deduped from ${EH.structUtils.prettyLocator(o,ce)} to ${EH.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:EH.structUtils.stringifyDescriptor(ne),currentResolution:EH.structUtils.stringifyLocator(ce),updatedResolution:EH.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ne.descriptorHash,fe.locatorHash)}).finally(()=>N.tick())));let F;switch(B){case 0:F="No packages";break;case 1:F="One package";break;default:F=`${B} packages`}let Q=EH.formatUtils.pretty(o,t,EH.formatUtils.Type.CODE);return a.reportInfo(EH.MessageName.UNNAMED,`${F} can be deduped using the ${Q} strategy`),B})}});var Kas=H(jQr=>{"use strict";Object.defineProperty(jQr,"__esModule",{value:!0});var Uas=(Pa(),vi(Va)),EIl=el(),jje=Sn(),Jxe=($c(),vi(rg)),Jas=Uas.__importStar((CZ(),vi(mZ))),KQr=Uas.__importStar(UQr()),zje=class extends EIl.BaseCommand{constructor(){super(...arguments),this.strategy=Jxe.Option.String("-s,--strategy",KQr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:Jas.isEnum(KQr.Strategy)}),this.check=Jxe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=Jxe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=Jxe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Jas.isEnum(jje.InstallMode)}),this.patterns=Jxe.Option.Rest()}async execute(){let t=await jje.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await jje.Project.find(t,this.context.cwd),n=await jje.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await jje.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async l=>{a=await KQr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:n,report:l})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n,mode:this.mode})}};zje.paths=[["dedupe"]];zje.usage=Jxe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});jQr.default=zje});var jas=H(zQr=>{"use strict";Object.defineProperty(zQr,"__esModule",{value:!0});var SIl=el(),vIl=Sn(),BIl=($c(),vi(rg)),$kt=class extends SIl.BaseCommand{async execute(){let{plugins:t}=await vIl.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let l of t){let{commands:A}=l[1];if(A){let I=BIl.Cli.from(A).definitions();r.push([l[0],I])}}let n=this.cli.definitions(),a=(l,A)=>l.split(" ").slice(1).join()===A.split(" ").slice(1).join(),o=$dr()["@yarnpkg/builder"].bundles.standard;for(let l of r){let A=l[1];for(let f of A)n.find(I=>a(I.path,f.path)).plugin={name:l[0],isDefault:o.includes(l[0])}}this.context.stdout.write(`${JSON.stringify(n,null,2)} -`)}};$kt.paths=[["--clipanion=definitions"]];zQr.default=$kt});var zas=H(qQr=>{"use strict";Object.defineProperty(qQr,"__esModule",{value:!0});var wIl=el(),ext=class extends wIl.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};ext.paths=[["help"],["--help"],["-h"]];qQr.default=ext});var ecs=H(eXr=>{"use strict";Object.defineProperty(eXr,"__esModule",{value:!0});var TIl=el(),RIl=Sn(),qas=ro(),$as=($c(),vi(rg)),$Qr=class extends TIl.BaseCommand{constructor(){super(...arguments),this.leadingArgument=$as.Option.String(),this.args=$as.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!RIl.structUtils.tryParseIdent(this.leadingArgument)){let t=qas.ppath.resolve(this.context.cwd,qas.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};eXr.default=$Qr});var tcs=H(tXr=>{"use strict";Object.defineProperty(tXr,"__esModule",{value:!0});var NIl=el(),DIl=Sn(),txt=class extends NIl.BaseCommand{async execute(){this.context.stdout.write(`${DIl.YarnVersion||""} -`)}};txt.paths=[["-v"],["--version"]];tXr.default=txt});var ncs=H(nXr=>{"use strict";Object.defineProperty(nXr,"__esModule",{value:!0});var kIl=el(),rcs=Sn(),xIl=Sn(),rXr=($c(),vi(rg)),qje=class extends kIl.BaseCommand{constructor(){super(...arguments),this.commandName=rXr.Option.String(),this.args=rXr.Option.Proxy()}async execute(){let t=await rcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:n}=await rcs.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await xIl.scriptUtils.executePackageShellcode(n,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};qje.paths=[["exec"]];qje.usage=rXr.Command.Usage({description:"execute a shell script",details:` - This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. - - It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). - `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});nXr.default=qje});var acs=H(e6e=>{"use strict";Object.defineProperty(e6e,"__esModule",{value:!0});e6e.explainPeerRequirement=scs;e6e.explainPeerRequirements=ocs;var GIl=(Pa(),vi(Va)),FIl=el(),Ud=Sn(),ics=($c(),vi(rg)),iXr=GIl.__importStar((CZ(),vi(mZ))),$je=class extends FIl.BaseCommand{constructor(){super(...arguments),this.hash=ics.Option.String({required:!1,validator:iXr.cascade(iXr.isString(),[iXr.matchesRegExp(/^p[0-9a-f]{6}$/)])})}async execute(){let t=await Ud.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Ud.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await scs(this.hash,r,{stdout:this.context.stdout}):await ocs(r,{stdout:this.context.stdout})}};$je.paths=[["explain","peer-requirements"]];$je.usage=ics.Command.Usage({description:"explain a set of peer requirements",details:` - A peer requirement represents all peer requests that a subject must satisfy when providing a requested package to requesters. - - When the hash argument is specified, this command prints a detailed explanation of the peer requirement corresponding to the hash and whether it is satisfied or not. - - When used without arguments, this command lists all peer requirements and the corresponding hash that can be used to get detailed information about a given requirement. - - **Note:** A hash is a seven-letter code consisting of the letter 'p' followed by six characters that can be obtained from peer dependency warnings or from the list of all peer requirements(\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});e6e.default=$je;async function scs(e,t,r){let n=t.peerRequirementNodes.get(e);if(typeof n>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:Ud.formatUtils.tuple(Ud.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),I=>[Ud.structUtils.stringifyLocator(I.requester),o(I)]))}),l=t.peerWarnings.find(f=>f.hash===e);return(await Ud.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let I=Ud.formatUtils.mark(t.configuration),C=l?I.Cross:I.Check;if(f.reportInfo(Ud.MessageName.UNNAMED,`Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} is requested to provide ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(Ud.MessageName.UNNAMED,Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)),Ud.treeUtils.emitTree({children:Object.fromEntries(Array.from(n.requests.values(),b=>[Ud.structUtils.stringifyLocator(b.requester),o(b)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),n.provided.range==="missing:"){let b=l?"":" , but all peer requests are optional";f.reportInfo(Ud.MessageName.UNNAMED,`${C} Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} does not provide ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)}${b}.`)}else{let b=t.storedResolutions.get(n.provided.descriptorHash);if(!b)throw new Error("Assertion failed: Expected the descriptor to be registered");let E=t.storedPackages.get(b);if(!E)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(Ud.MessageName.UNNAMED,`${C} Package ${Ud.formatUtils.pretty(t.configuration,n.subject,Ud.formatUtils.Type.LOCATOR)} provides ${Ud.formatUtils.pretty(t.configuration,n.ident,Ud.formatUtils.Type.IDENT)} with version ${Ud.structUtils.prettyReference(t.configuration,E.version??"0.0.0")}, ${l?"which does not satisfy all requests.":"which satisfies all requests"}`),l?.type===Ud.PeerWarningType.NodeNotCompatible&&(l.range?f.reportInfo(Ud.MessageName.UNNAMED,` The combined requested range is ${Ud.formatUtils.pretty(t.configuration,l.range,Ud.formatUtils.Type.RANGE)}`):f.reportInfo(Ud.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function ocs(e,t){return(await Ud.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async n=>{let a=Ud.formatUtils.mark(e.configuration),o=Ud.miscUtils.sortMap(e.peerRequirementNodes,[([,l])=>Ud.structUtils.stringifyLocator(l.subject),([,l])=>Ud.structUtils.stringifyIdent(l.ident)]);for(let[,l]of o.values()){if(!l.root)continue;let A=e.peerWarnings.find(C=>C.hash===l.hash),f=[...Ud.structUtils.allPeerRequests(l)],I;if(f.length>2?I=` and ${f.length-1} other dependencies`:f.length===2?I=" and 1 other dependency":I="",l.provided.range!=="missing:"){let C=e.storedResolutions.get(l.provided.descriptorHash);if(!C)throw new Error("Assertion failed: Expected the resolution to have been registered");let b=e.storedPackages.get(C);if(!b)throw new Error("Assertion failed: Expected the provided package to have been registered");let E=`${Ud.formatUtils.pretty(e.configuration,l.hash,Ud.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${Ud.structUtils.prettyLocator(e.configuration,l.subject)} provides ${Ud.structUtils.prettyLocator(e.configuration,b)} to ${Ud.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(Ud.MessageName.UNNAMED,E):n.reportInfo(Ud.MessageName.UNNAMED,E)}else{let C=`${Ud.formatUtils.pretty(e.configuration,l.hash,Ud.formatUtils.Type.CODE)} \u2192 ${A?a.Cross:a.Check} ${Ud.structUtils.prettyLocator(e.configuration,l.subject)} doesn't provide ${Ud.structUtils.prettyIdent(e.configuration,l.ident)} to ${Ud.structUtils.prettyLocator(e.configuration,f[0].requester)}${I}`;A?n.reportWarning(Ud.MessageName.UNNAMED,C):n.reportInfo(Ud.MessageName.UNNAMED,C)}}})).exitCode()}});var nxt=H(Uxe=>{"use strict";Object.defineProperty(Uxe,"__esModule",{value:!0});Uxe.resolveRange=ccs;Uxe.resolveTag=rxt;Uxe.setVersion=lcs;var ZIl=(Pa(),vi(Va)),LIl=el(),$G=Sn(),qv=Sn(),zv=ro(),aue=($c(),vi(rg)),VIl=ZIl.__importDefault(UC()),t6e=class extends LIl.BaseCommand{constructor(){super(...arguments),this.useYarnPath=aue.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=aue.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=aue.Option.String()}async execute(){let t=await $G.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let l=t.sources.get("yarnPath");if(!l)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let A=t.projectCwd??t.startingCwd;if(zv.ppath.contains(A,l))return 0}let r=()=>{if(typeof $G.YarnVersion>"u")throw new aue.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},n,a=(l,A)=>({version:A,url:l.replace(/\{\}/g,A)});if(this.version==="self")n={url:r(),version:$G.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await rxt(t,"stable"));else if(this.version==="canary")n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await rxt(t,"canary"));else if(this.version==="classic")n={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))n={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||zv.npath.isAbsolute(this.version))n={url:`file://${zv.ppath.resolve(zv.npath.toPortablePath(this.version))}`,version:"file"};else if(qv.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(qv.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))n=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(qv.semverUtils.validRange(this.version))n=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await ccs(t,this.version));else throw new aue.UsageError(`Invalid version descriptor "${this.version}"`);return(await $G.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async l=>{let A=async()=>{let f="file://";return n.url.startsWith(f)?(l.reportInfo($G.MessageName.UNNAMED,`Retrieving ${qv.formatUtils.pretty(t,n.url,qv.formatUtils.Type.PATH)}`),await zv.xfs.readFilePromise(n.url.slice(f.length))):(l.reportInfo($G.MessageName.UNNAMED,`Downloading ${qv.formatUtils.pretty(t,n.url,qv.formatUtils.Type.URL)}`),await qv.httpUtils.get(n.url,{configuration:t}))};await lcs(t,n.version,A,{report:l,useYarnPath:this.useYarnPath})})).exitCode()}};t6e.paths=[["set","version"]];t6e.usage=aue.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});Uxe.default=t6e;async function ccs(e,t){let n=(await qv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>qv.semverUtils.satisfiesWithPrereleases(a,t));if(n.length===0)throw new aue.UsageError(`No matching release found for range ${qv.formatUtils.pretty(e,t,qv.formatUtils.Type.RANGE)}.`);return n[0]}async function rxt(e,t){let r=await qv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new aue.UsageError(`Tag ${qv.formatUtils.pretty(e,t,qv.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function lcs(e,t,r,{report:n,useYarnPath:a}){let o,l=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ne=await l();await zv.xfs.mktempPromise(async ce=>{let fe=zv.ppath.join(ce,"yarn.cjs");await zv.xfs.writeFilePromise(fe,ne);let{stdout:ue}=await qv.execUtils.execvp(process.execPath,[zv.npath.fromPortablePath(fe),"--version"],{cwd:ce,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=ue.trim(),!VIl.default.valid(t))throw new Error(`Invalid semver version. ${qv.formatUtils.pretty(e,"yarn --version",qv.formatUtils.Type.CODE)} returned: -${t}`)})}let A=e.projectCwd??e.startingCwd,f=zv.ppath.resolve(A,".yarn/releases"),I=zv.ppath.resolve(f,`yarn-${t}.mjs`),C=zv.ppath.relative(e.startingCwd,I),b=qv.miscUtils.isTaggedYarnVersion(t),E=e.get("yarnPath"),N=!b,B=N||!!E||!!a;if(a===!1){if(N)throw new $G.ReportError($G.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");B=!1}else!B&&!process.env.COREPACK_ROOT&&(n.reportWarning($G.MessageName.UNNAMED,`You don't seem to have ${qv.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${qv.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),B=!0);if(B){let ne=await l();n.reportInfo($G.MessageName.UNNAMED,`Saving the new release in ${qv.formatUtils.pretty(e,C,"magenta")}`),await zv.xfs.removePromise(zv.ppath.dirname(I)),await zv.xfs.mkdirPromise(zv.ppath.dirname(I),{recursive:!0}),await zv.xfs.writeFilePromise(I,ne,{mode:493}),await $G.Configuration.updateConfiguration(A,{yarnPath:zv.ppath.relative(A,I)})}else await zv.xfs.removePromise(zv.ppath.dirname(I)),await $G.Configuration.updateConfiguration(A,{yarnPath:$G.Configuration.deleteProperty});let F=await $G.Manifest.tryFind(A)||new $G.Manifest;F.packageManager=`yarn@${b?t:await rxt(e,"stable")}`;let Q={};F.exportTo(Q);let X=zv.ppath.join(A,$G.Manifest.fileName),ae=`${JSON.stringify(Q,null,F.indent)} -`;return await zv.xfs.changeFilePromise(X,ae,{automaticNewlines:!0}),{bundleVersion:t}}});var Acs=H(ixt=>{"use strict";Object.defineProperty(ixt,"__esModule",{value:!0});ixt.getErrorCodeDetails=gcs;var PIl=(Pa(),vi(Va)),WIl=el(),$v=Sn(),oXr=($c(),vi(rg)),sXr=PIl.__importStar((CZ(),vi(mZ))),OIl=nxt();function ucs(e){return $v.MessageName[(0,$v.parseMessageName)(e)]}var MIl=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?

(?:.(?!##))+)/gs;async function gcs(e){let r=`https://repo.yarnpkg.com/${$v.miscUtils.isTaggedYarnVersion($v.YarnVersion)?$v.YarnVersion:await(0,OIl.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,n=await $v.httpUtils.get(r,{configuration:e});return new Map(Array.from(n.toString().matchAll(MIl),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=ucs(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var r6e=class extends WIl.BaseCommand{constructor(){super(...arguments),this.code=oXr.Option.String({required:!1,validator:sXr.applyCascade(sXr.isString(),[sXr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=oXr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await $v.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=ucs(this.code),n=$v.formatUtils.pretty(t,r,$v.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${n}`),l=(await gcs(t)).get(this.code),A=typeof l<"u"?$v.formatUtils.jsonOrPretty(this.json,t,$v.formatUtils.tuple($v.formatUtils.Type.MARKDOWN,{text:l,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. - -You can help us by editing this page on GitHub \u{1F642}: -${$v.formatUtils.jsonOrPretty(this.json,t,$v.formatUtils.tuple($v.formatUtils.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx"))} -`;this.json?this.context.stdout.write(`${JSON.stringify({code:this.code,name:r,details:A})} -`):this.context.stdout.write(`${a} - -${A} -`)}else{let r={children:$v.miscUtils.mapAndFilter(Object.entries($v.MessageName),([n,a])=>Number.isNaN(Number(n))?$v.miscUtils.mapAndFilter.skip:{label:(0,$v.stringifyMessageName)(Number(n)),value:$v.formatUtils.tuple($v.formatUtils.Type.CODE,a)})};$v.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};r6e.paths=[["explain"]];r6e.usage=oXr.Command.Usage({description:"explain an error code",details:` - When the code argument is specified, this command prints its name and its details. - - When used without arguments, this command lists all error codes and their names. - `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});ixt.default=r6e});var pcs=H(aXr=>{"use strict";Object.defineProperty(aXr,"__esModule",{value:!0});var HIl=(Pa(),vi(Va)),dcs=el(),hI=Sn(),YIl=ro(),SH=($c(),vi(rg)),QIl=HIl.__importDefault(Ek()),n6e=class extends dcs.BaseCommand{constructor(){super(...arguments),this.all=SH.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=SH.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=SH.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=SH.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=SH.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=SH.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=SH.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=SH.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=SH.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=SH.Option.Rest()}async execute(){let t=await hI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hI.Project.find(t,this.context.cwd),a=await hI.Cache.find(t);if(!n&&!this.all)throw new dcs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let l=(ne,{recursive:ce})=>{let fe=ne.anchoredLocator.locatorHash,ue=new Map,de=[fe];for(;de.length>0;){let be=de.shift();if(ue.has(be))continue;let Se=r.storedPackages.get(be);if(typeof Se>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ue.set(be,Se),hI.structUtils.isVirtualLocator(Se)&&de.push(hI.structUtils.devirtualizeLocator(Se).locatorHash),!(!ce&&be!==fe))for(let De of Se.dependencies.values()){let k=r.storedResolutions.get(De.descriptorHash);if(typeof k>"u")throw new Error("Assertion failed: Expected the resolution to be registered");de.push(k)}}return ue.values()},A=({recursive:ne})=>{let ce=new Map;for(let fe of r.workspaces)for(let ue of l(fe,{recursive:ne}))ce.set(ue.locatorHash,ue);return ce.values()},f=({all:ne,recursive:ce})=>ne&&ce?r.storedPackages.values():ne?A({recursive:ce}):l(n,{recursive:ce}),I=({all:ne,recursive:ce})=>{let fe=f({all:ne,recursive:ce}),ue=this.patterns.map(Se=>{let De=hI.structUtils.parseLocator(Se),k=QIl.default.makeRe(hI.structUtils.stringifyIdent(De)),et=hI.structUtils.isVirtualLocator(De),ct=et?hI.structUtils.devirtualizeLocator(De):De;return Me=>{let je=hI.structUtils.stringifyIdent(Me);if(!k.test(je))return!1;if(De.reference==="unknown")return!0;let St=hI.structUtils.isVirtualLocator(Me),At=St?hI.structUtils.devirtualizeLocator(Me):Me;return!(et&&St&&De.reference!==Me.reference||ct.reference!==At.reference)}}),de=hI.miscUtils.sortMap([...fe],Se=>hI.structUtils.stringifyLocator(Se));return{selection:de.filter(Se=>ue.length===0||ue.some(De=>De(Se))),sortedLookup:de}},{selection:C,sortedLookup:b}=I({all:this.all,recursive:this.recursive});if(C.length===0)throw new SH.UsageError("No package matched your request");let E=new Map;if(this.dependents)for(let ne of b)for(let ce of ne.dependencies.values()){let fe=r.storedResolutions.get(ce.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");hI.miscUtils.getArrayWithDefault(E,fe).push(ne)}let N=new Map;for(let ne of b){if(!hI.structUtils.isVirtualLocator(ne))continue;let ce=hI.structUtils.devirtualizeLocator(ne);hI.miscUtils.getArrayWithDefault(N,ce.locatorHash).push(ne)}let B={},F={children:B},Q=t.makeFetcher(),X={project:r,fetcher:Q,cache:a,checksums:r.storedChecksums,report:new hI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},ae=[async(ne,ce,fe)=>{if(!ce.has("manifest"))return;let ue=await Q.fetch(ne,X),de;try{de=await hI.Manifest.find(ue.prefixPath,{baseFs:ue.packageFs})}finally{ue.releaseFs?.()}fe("Manifest",{License:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,de.license),Homepage:hI.formatUtils.tuple(hI.formatUtils.Type.URL,de.raw.homepage??null)})},async(ne,ce,fe)=>{if(!ce.has("cache"))return;let ue=r.storedChecksums.get(ne.locatorHash)??null,de=a.getLocatorPath(ne,ue),be;if(de!==null)try{be=await YIl.xfs.statPromise(de)}catch{}let Se=typeof be<"u"?[be.size,hI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,ue),Path:hI.formatUtils.tuple(hI.formatUtils.Type.PATH,de),Size:Se})}];for(let ne of C){let ce=hI.structUtils.isVirtualLocator(ne);if(!this.virtuals&&ce)continue;let fe={},ue={value:[ne,hI.formatUtils.Type.LOCATOR],children:fe};if(B[hI.structUtils.stringifyLocator(ne)]=ue,this.nameOnly){delete ue.children;continue}let de=N.get(ne.locatorHash);typeof de<"u"&&(fe.Instances={label:"Instances",value:hI.formatUtils.tuple(hI.formatUtils.Type.NUMBER,de.length)}),fe.Version={label:"Version",value:hI.formatUtils.tuple(hI.formatUtils.Type.NO_HINT,ne.version)};let be=(De,k)=>{let et={};if(fe[De]=et,Array.isArray(k))et.children=k.map(ct=>({value:ct}));else{let ct={};et.children=ct;for(let[Me,je]of Object.entries(k))typeof je>"u"||(ct[Me]={label:Me,value:je})}};if(!ce){for(let De of ae)await De(ne,o,be);await t.triggerHook(De=>De.fetchPackageInfo,ne,o,be)}ne.bin.size>0&&!ce&&be("Exported Binaries",[...ne.bin.keys()].map(De=>hI.formatUtils.tuple(hI.formatUtils.Type.PATH,De)));let Se=E.get(ne.locatorHash);typeof Se<"u"&&Se.length>0&&be("Dependents",Se.map(De=>hI.formatUtils.tuple(hI.formatUtils.Type.LOCATOR,De))),ne.dependencies.size>0&&!ce&&be("Dependencies",[...ne.dependencies.values()].map(De=>{let k=r.storedResolutions.get(De.descriptorHash),et=typeof k<"u"?r.storedPackages.get(k)??null:null;return hI.formatUtils.tuple(hI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:et})})),ne.peerDependencies.size>0&&ce&&be("Peer dependencies",[...ne.peerDependencies.values()].map(De=>{let k=ne.dependencies.get(De.identHash),et=typeof k<"u"?r.storedResolutions.get(k.descriptorHash)??null:null,ct=et!==null?r.storedPackages.get(et)??null:null;return hI.formatUtils.tuple(hI.formatUtils.Type.RESOLUTION,{descriptor:De,locator:ct})}))}hI.treeUtils.emitTree(F,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};n6e.paths=[["info"]];n6e.usage=SH.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});aXr.default=n6e});var mcs=H(uXr=>{"use strict";Object.defineProperty(uXr,"__esModule",{value:!0});var lXr=(Pa(),vi(Va)),fcs=el(),WA=Sn(),a6=ro(),Ics=TW(),cXr=lXr.__importDefault(Nfe()),_T=($c(),vi(rg)),hcs=lXr.__importDefault(UC()),XIl=lXr.__importStar((CZ(),vi(mZ))),JIl=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"},{selector:e=>e<9,name:"approvedGitRepositories",value:["**"]},{selector:e=>e<9,name:"enableScripts",value:!0}],i6e=class extends fcs.BaseCommand{constructor(){super(...arguments),this.json=_T.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=_T.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=_T.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=_T.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=_T.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=_T.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=_T.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=_T.Option.String("--mode",{description:"Change what artifacts installs generate",validator:XIl.isEnum(WA.InstallMode)}),this.cacheFolder=_T.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=_T.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=_T.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=_T.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=_T.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=_T.Option.Boolean("--production",{hidden:!0}),this.registry=_T.Option.String("--registry",{hidden:!0}),this.silent=_T.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=_T.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await WA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,n=await(0,WA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!cXr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!cXr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!cXr.default.NETLIFY}]);if(n!==null)return n;let a=this.mode===WA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new _T.UsageError(`${WA.formatUtils.pretty(t,"--immutable",WA.formatUtils.Type.CODE)} and ${WA.formatUtils.pretty(t,"--immutable-cache",WA.formatUtils.Type.CODE)} cannot be used with ${WA.formatUtils.pretty(t,"--mode=update-lockfile",WA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,l=this.immutableCache&&!a;if(t.projectCwd!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q=!1;await jIl(t,o)&&(F.reportInfo(WA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),Q=!0),await KIl(t,o)&&(F.reportInfo(WA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),Q=!0),Q&&F.reportSeparator()});if(B.hasErrors())return B.exitCode()}if(t.projectCwd!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{if(WA.Configuration.telemetry?.isNew)WA.Configuration.telemetry.commitTips(),F.reportInfo(WA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),F.reportInfo(WA.MessageName.TELEMETRY_NOTICE,`Run ${WA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",WA.formatUtils.Type.CODE)} to disable`),F.reportSeparator();else if(WA.Configuration.telemetry?.shouldShowTips){let Q=await WA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(Q!==null){let X=null;if(WA.YarnVersion!==null){let ne=hcs.default.prerelease(WA.YarnVersion)?"canary":"stable",ce=Q.latest[ne];ce!==null&&hcs.default.gt(ce,WA.YarnVersion)&&(X=[ne,ce])}if(X)WA.Configuration.telemetry.commitTips(),F.reportInfo(WA.MessageName.VERSION_NOTICE,`${WA.formatUtils.applyStyle(t,`A new ${X[0]} version of Yarn is available:`,WA.formatUtils.Style.BOLD)} ${WA.structUtils.prettyReference(t,X[1])}!`),F.reportInfo(WA.MessageName.VERSION_NOTICE,`Upgrade now by running ${WA.formatUtils.pretty(t,`yarn set version ${X[1]}`,WA.formatUtils.Type.CODE)}`),F.reportSeparator();else{let ae=WA.Configuration.telemetry.selectTip(Q.tips);ae&&(F.reportInfo(WA.MessageName.TIPS_NOTICE,WA.formatUtils.pretty(t,ae.message,WA.formatUtils.Type.MARKDOWN_INLINE)),ae.url&&F.reportInfo(WA.MessageName.TIPS_NOTICE,`Learn more at ${ae.url}`),F.reportSeparator())}}}});if(B.hasErrors())return B.exitCode()}let{project:A,workspace:f}=await WA.Project.find(t,this.context.cwd),I=A.lockfileLastVersion;if(I!==null){let B=await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async F=>{let Q={};for(let X of JIl)X.selector(I)&&typeof t.sources.get(X.name)>"u"&&(t.use("",{[X.name]:X.value},A.cwd,{overwrite:!0}),Q[X.name]=X.value);Object.keys(Q).length>0&&(await WA.Configuration.updateConfiguration(A.cwd,Q),F.reportInfo(WA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),F.reportSeparator())});if(B.hasErrors())return B.exitCode()}let C=await WA.Cache.find(t,{immutable:l,check:this.checkCache});if(!f)throw new fcs.WorkspaceRequiredError(A.cwd,this.context.cwd);await A.restoreInstallState({restoreResolutions:!1});let b=t.get("enableHardenedMode");b&&typeof t.sources.get("enableHardenedMode")>"u"&&await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async B=>{B.reportWarning(WA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),B.reportWarning(WA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${WA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),B.reportSeparator()}),(this.refreshLockfile??b)&&(A.lockfileNeedsRefresh=!0);let E=this.checkResolutions??b;return(await WA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async B=>{await A.install({cache:C,report:B,immutable:o,checkResolutions:E,mode:this.mode})})).exitCode()}};i6e.paths=[["install"],_T.Command.Default];i6e.usage=_T.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});uXr.default=i6e;var UIl="<<<<<<<";async function KIl(e,t){if(!e.projectCwd)return!1;let r=a6.ppath.join(e.projectCwd,a6.Filename.lockfile);if(!await a6.xfs.existsPromise(r)||!(await a6.xfs.readFilePromise(r,"utf8")).includes(UIl))return!1;if(t)throw new WA.ReportError(WA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await WA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await WA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await WA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new WA.ReportError(WA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async A=>{let f=await WA.execUtils.execvp("git",["show",`${A}:./${a6.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new WA.ReportError(WA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${A}`);try{return(0,Ics.parseSyml)(f.stdout)}catch{throw new WA.ReportError(WA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(A=>!!A.__metadata);for(let A of o){if(A.__metadata.version<7)for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=WA.structUtils.parseDescriptor(f,!0),C=e.normalizeDependency(I),b=WA.structUtils.stringifyDescriptor(C);b!==f&&(A[b]=A[f],delete A[f])}for(let f of Object.keys(A)){if(f==="__metadata")continue;let I=A[f].checksum;typeof I>"u"||I.includes("/")||(A[f].checksum=`${A.__metadata.cacheKey}/${I}`)}}let l=Object.assign({},...o);l.__metadata.version=`${Math.min(...o.map(A=>parseInt(A.__metadata.version??0)))}`,l.__metadata.cacheKey="merged";for(let[A,f]of Object.entries(l))typeof f=="string"&&delete l[A];return await a6.xfs.changeFilePromise(r,(0,Ics.stringifySyml)(l),{automaticNewlines:!0}),!0}async function jIl(e,t){if(!e.projectCwd)return!1;let r=[],n=a6.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await WA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let l=o.filter(A=>{if(!A.path)return!0;let f=a6.ppath.resolve(e.projectCwd,A.path),I=WA.LEGACY_PLUGINS.has(A.spec)&&a6.ppath.contains(n,f);return I&&r.push(f),!I});return l.length===0?WA.Configuration.deleteProperty:l.length===o.length?o:l}},{immutable:t})?(await Promise.all(r.map(async o=>{await a6.xfs.removePromise(o)})),!0):!1}});var Ccs=H(dXr=>{"use strict";Object.defineProperty(dXr,"__esModule",{value:!0});var gXr=el(),Kxe=Sn(),AXr=ro(),wte=($c(),vi(rg)),s6e=class extends gXr.BaseCommand{constructor(){super(...arguments),this.all=wte.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=wte.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=wte.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=wte.Option.Rest()}async execute(){let t=await Kxe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Kxe.Project.find(t,this.context.cwd),a=await Kxe.Cache.find(t);if(!n)throw new gXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,l=[];for(let A of this.destinations){let f=AXr.ppath.resolve(this.context.cwd,AXr.npath.toPortablePath(A)),I=await Kxe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await Kxe.Project.find(I,f);if(r.cwd===C.cwd)throw new wte.UsageError(`Invalid destination '${A}'; Can't link the project to itself`);if(!b)throw new gXr.WorkspaceRequiredError(C.cwd,f);if(this.all){let E=!1;for(let N of C.workspaces)N.manifest.name&&(!N.manifest.private||this.private)&&(l.push(N),E=!0);if(!E)throw new wte.UsageError(`No workspace found to be linked in the target project: ${A}`)}else{if(!b.manifest.name)throw new wte.UsageError(`The target workspace at '${A}' doesn't have a name and thus cannot be linked`);if(b.manifest.private&&!this.private)throw new wte.UsageError(`The target workspace at '${A}' is marked private - use the --private flag to link it anyway`);l.push(b)}}for(let A of l){let f=Kxe.structUtils.stringifyIdent(A.anchoredLocator),I=this.relative?AXr.ppath.relative(r.cwd,A.cwd):A.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${I}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};s6e.paths=[["link"]];s6e.usage=wte.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});dXr.default=s6e});var ycs=H(pXr=>{"use strict";Object.defineProperty(pXr,"__esModule",{value:!0});var zIl=el(),_cs=($c(),vi(rg)),o6e=class extends zIl.BaseCommand{constructor(){super(...arguments),this.args=_cs.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};o6e.paths=[["node"]];o6e.usage=_cs.Command.Usage({description:"run node with the hook already setup",details:` - This command simply runs Node. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). - - The Node process will use the exact same version of Node as the one used to run Yarn itself, which might be a good way to ensure that your commands always use a consistent Node version. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});pXr.default=o6e});var Ecs=H(fXr=>{"use strict";Object.defineProperty(fXr,"__esModule",{value:!0});var qIl=el(),c6=Sn(),bcs=($c(),vi(rg)),a6e=class extends qIl.BaseCommand{constructor(){super(...arguments),this.json=bcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await c6.Configuration.find(this.context.cwd,this.context.plugins),r=await c6.Configuration.findRcFiles(this.context.cwd);return(await c6.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let l of o.data.plugins){if(!l.checksum||!l.spec.match(/^https?:/))continue;let A=await c6.httpUtils.get(l.spec,{configuration:t}),f=c6.hashUtils.makeHash(A);if(l.checksum===f)continue;let I=c6.formatUtils.pretty(t,l.path,c6.formatUtils.Type.PATH),C=c6.formatUtils.pretty(t,l.spec,c6.formatUtils.Type.URL),b=`${I} is different from the file provided by ${C}`;a.reportJson({...l,newChecksum:f}),a.reportError(c6.MessageName.UNNAMED,b)}})).exitCode()}};a6e.paths=[["plugin","check"]];a6e.usage=bcs.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` - Check only the plugins from https. - - If this command detects any plugin differences in the CI environment, it will throw an error. - `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});fXr.default=a6e});var u6e=H(sxt=>{"use strict";Object.defineProperty(sxt,"__esModule",{value:!0});sxt.getAvailablePlugins=vcs;var $Il=el(),c6e=Sn(),ehl=TW(),Scs=($c(),vi(rg)),thl="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function vcs(e,t){let r=await c6e.httpUtils.get(thl,{configuration:e}),n=(0,ehl.parseSyml)(r.toString());return Object.fromEntries(Object.entries(n).filter(([a,o])=>!t||c6e.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var l6e=class extends $Il.BaseCommand{constructor(){super(...arguments),this.json=Scs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await c6e.Configuration.find(this.context.cwd,this.context.plugins);return(await c6e.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{let a=await vcs(t,c6e.YarnVersion);for(let[o,{experimental:l,...A}]of Object.entries(a)){let f=o;l&&(f+=" [experimental]"),n.reportJson({name:o,experimental:l,...A}),n.reportInfo(null,f)}})).exitCode()}};l6e.paths=[["plugin","list"]];l6e.usage=Scs.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});sxt.default=l6e});var IXr=H(A6e=>{"use strict";Object.defineProperty(A6e,"__esModule",{value:!0});A6e.runWorkflow=oxt;A6e.prepareRepo=wcs;var rhl=el(),vH=Sn(),MV=ro(),Tte=($c(),vi(rg)),nhl=wt("os"),ihl=hXr(),shl=u6e(),ohl=nxt(),ahl=/^[0-9]+$/,chl=process.platform==="win32";function Bcs(e){return ahl.test(e)?`pull/${e}/head`:e}var lhl=({repository:e,branch:t},r)=>[["git","init",MV.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",Bcs(t)],["git","reset","--hard","FETCH_HEAD"]],uhl=({branch:e})=>[["git","fetch","origin","--depth=1",Bcs(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],ghl=({plugins:e,noMinify:t},r,n)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",MV.ppath.resolve(n,a)])),...t?["--no-minify"]:[],"|"],[chl?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",MV.npath.fromPortablePath(r),"|"]],g6e=class extends rhl.BaseCommand{constructor(){super(...arguments),this.installPath=Tte.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Tte.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Tte.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Tte.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Tte.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Tte.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Tte.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Tte.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await vH.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await vH.Project.find(t,this.context.cwd),n=typeof this.installPath<"u"?MV.ppath.resolve(this.context.cwd,MV.npath.toPortablePath(this.installPath)):MV.ppath.resolve(MV.npath.toPortablePath((0,nhl.tmpdir)()),"yarnpkg-sources",vH.hashUtils.makeHash(this.repository).slice(0,6));return(await vH.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await wcs(this,{configuration:t,report:o,target:n}),o.reportSeparator(),o.reportInfo(vH.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let l=await vH.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:n,strict:!0}),A=MV.ppath.join(n,`packages/yarnpkg-cli/bundles/yarn-${l.stdout.trim()}.js`);MV.xfs.existsSync(A)||(await oxt(ghl(this,A,n),{configuration:t,context:this.context,target:n}),o.reportSeparator());let f=await MV.xfs.readFilePromise(A);if(!this.dryRun){let{bundleVersion:I}=await(0,ohl.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await Ahl(this,I,{project:r,report:o,target:n})}})).exitCode()}};g6e.paths=[["set","version","from","sources"]];g6e.usage=Tte.Command.Usage({description:"build Yarn from master",details:` - This command will clone the Yarn repository into a temporary folder, then build it. The resulting bundle will then be copied into the local project. - - By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});A6e.default=g6e;async function oxt(e,{configuration:t,context:r,target:n}){for(let[a,...o]of e){let l=o[o.length-1]==="|";if(l&&o.pop(),l)await vH.execUtils.pipevp(a,o,{cwd:n,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${vH.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} -`);try{await vH.execUtils.execvp(a,o,{cwd:n,strict:!0})}catch(A){throw r.stdout.write(A.stdout||A.stack),A}}}}async function wcs(e,{configuration:t,report:r,target:n}){let a=!1;if(!e.force&&MV.xfs.existsSync(MV.ppath.join(n,".git"))){r.reportInfo(vH.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await oxt(uhl(e),{configuration:t,context:e.context,target:n}),a=!0}catch{r.reportSeparator(),r.reportWarning(vH.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(vH.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await MV.xfs.removePromise(n),await MV.xfs.mkdirPromise(n,{recursive:!0}),await oxt(lhl(e,n),{configuration:t,context:e.context,target:n}))}async function Ahl(e,t,{project:r,report:n,target:a}){let o=await(0,shl.getAvailablePlugins)(r.configuration,t),l=new Set(Object.keys(o));for(let A of r.configuration.plugins.keys())l.has(A)&&await(0,ihl.buildAndSavePlugin)(A,e,{project:r,report:n,target:a})}});var CXr=H(axt=>{"use strict";Object.defineProperty(axt,"__esModule",{value:!0});axt.savePlugin=Tcs;var dhl=(Pa(),vi(Va)),phl=el(),GO=Sn(),cx=Sn(),Rte=ro(),mXr=($c(),vi(rg)),fhl=dhl.__importDefault(UC()),Ihl=wt("vm"),hhl=u6e(),d6e=class extends phl.BaseCommand{constructor(){super(...arguments),this.name=mXr.Option.String(),this.checksum=mXr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await GO.Configuration.find(this.context.cwd,this.context.plugins);return(await GO.StreamReport.start({configuration:t,stdout:this.context.stdout},async n=>{let{project:a}=await GO.Project.find(t,this.context.cwd),o,l;if(this.name.match(/^\.{0,2}[\\/]/)||Rte.npath.isAbsolute(this.name)){let A=Rte.ppath.resolve(this.context.cwd,Rte.npath.toPortablePath(this.name));n.reportInfo(GO.MessageName.UNNAMED,`Reading ${cx.formatUtils.pretty(t,A,cx.formatUtils.Type.PATH)}`),o=Rte.ppath.relative(a.cwd,A),l=await Rte.xfs.readFilePromise(A)}else{let A;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new GO.ReportError(GO.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,A=this.name}else{let f=cx.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!fhl.default.valid(f.reference))throw new GO.ReportError(GO.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let I=cx.structUtils.stringifyIdent(f),C=await(0,hhl.getAvailablePlugins)(t,cx.YarnVersion);if(!Object.hasOwn(C,I)){let b=`Couldn't find a plugin named ${cx.structUtils.prettyIdent(t,f)} on the remote registry. -`;throw t.plugins.has(I)?b+=`A plugin named ${cx.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:b+=`Note that only the plugins referenced on our website (${cx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",cx.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${cx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",cx.formatUtils.Type.URL)}).`,new GO.ReportError(GO.MessageName.PLUGIN_NAME_NOT_FOUND,b)}o=I,A=C[I].url,f.reference!=="unknown"?A=A.replace(/\/master\//,`/${I}/${f.reference}/`):cx.YarnVersion!==null&&(A=A.replace(/\/master\//,`/@yarnpkg/cli/${cx.YarnVersion}/`))}n.reportInfo(GO.MessageName.UNNAMED,`Downloading ${cx.formatUtils.pretty(t,A,"green")}`),l=await cx.httpUtils.get(A,{configuration:t})}await Tcs(o,l,{checksum:this.checksum,project:a,report:n})})).exitCode()}};d6e.paths=[["plugin","import"]];d6e.usage=mXr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` - This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. - - Three types of plugin references are accepted: - - - If the plugin is stored within the Yarn repository, it can be referenced by name. - - Third-party plugins can be referenced directly through their public urls. - - Local plugins can be referenced by their path on the disk. - - If the \`--no-checksum\` option is set, Yarn will no longer care if the plugin is modified. - - Plugins cannot be downloaded from the npm registry, and aren't allowed to have dependencies (they need to be bundled into a single file, possibly thanks to the \`@yarnpkg/builder\` package). - `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});axt.default=d6e;async function Tcs(e,t,{checksum:r=!0,project:n,report:a}){let{configuration:o}=n,l={},A={exports:l};(0,Ihl.runInNewContext)(t.toString(),{module:A,exports:l});let I=`.yarn/plugins/${A.exports.name}.cjs`,C=Rte.ppath.resolve(n.cwd,I);a.reportInfo(GO.MessageName.UNNAMED,`Saving the new plugin in ${cx.formatUtils.pretty(o,I,"magenta")}`),await Rte.xfs.mkdirPromise(Rte.ppath.dirname(C),{recursive:!0}),await Rte.xfs.writeFilePromise(C,t);let b={path:I,spec:e};r&&(b.checksum=cx.hashUtils.makeHash(t)),await GO.Configuration.addPlugin(n.cwd,[b])}});var hXr=H(lxt=>{"use strict";Object.defineProperty(lxt,"__esModule",{value:!0});lxt.buildAndSavePlugin=Ncs;var mhl=el(),cxt=Sn(),jxe=Sn(),zxe=ro(),L_e=($c(),vi(rg)),Chl=wt("os"),Rcs=IXr(),_hl=CXr(),yhl=u6e(),bhl=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],p6e=class extends mhl.BaseCommand{constructor(){super(...arguments),this.installPath=L_e.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=L_e.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=L_e.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=L_e.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=L_e.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=L_e.Option.String()}async execute(){let t=await jxe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?zxe.ppath.resolve(this.context.cwd,zxe.npath.toPortablePath(this.installPath)):zxe.ppath.resolve(zxe.npath.toPortablePath((0,Chl.tmpdir)()),"yarnpkg-sources",cxt.hashUtils.makeHash(this.repository).slice(0,6));return(await jxe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await jxe.Project.find(t,this.context.cwd),l=cxt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),A=cxt.structUtils.stringifyIdent(l),f=await(0,yhl.getAvailablePlugins)(t,cxt.YarnVersion);if(!Object.hasOwn(f,A))throw new jxe.ReportError(jxe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${A}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let I=A;await(0,Rcs.prepareRepo)(this,{configuration:t,report:a,target:r}),await Ncs(I,this,{project:o,report:a,target:r})})).exitCode()}};p6e.paths=[["plugin","import","from","sources"]];p6e.usage=L_e.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` - This command clones the Yarn repository into a temporary folder, builds the specified contrib plugin and updates the configuration to reference it in further CLI invocations. - - The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});lxt.default=p6e;async function Ncs(e,{context:t,noMinify:r},{project:n,report:a,target:o}){let l=e.replace(/@yarnpkg\//,""),{configuration:A}=n;a.reportSeparator(),a.reportInfo(jxe.MessageName.UNNAMED,`Building a fresh ${l}`),a.reportSeparator(),await(0,Rcs.runWorkflow)(bhl({pluginName:l,noMinify:r},o),{configuration:A,context:t,target:o}),a.reportSeparator();let f=zxe.ppath.resolve(o,`packages/${l}/bundles/${e}.js`),I=await zxe.xfs.readFilePromise(f);await(0,_hl.savePlugin)(e,I,{project:n,report:a})}});var Dcs=H(bXr=>{"use strict";Object.defineProperty(bXr,"__esModule",{value:!0});var Ehl=el(),O4=Sn(),_Xr=ro(),yXr=($c(),vi(rg)),f6e=class extends Ehl.BaseCommand{constructor(){super(...arguments),this.name=yXr.Option.String()}async execute(){let t=await O4.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await O4.Project.find(t,this.context.cwd);return(await O4.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,l=O4.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new yXr.UsageError(`${O4.structUtils.prettyIdent(t,l)} isn't referenced by the current configuration`);let A=`.yarn/plugins/${o}.cjs`,f=_Xr.ppath.resolve(r.cwd,A);_Xr.xfs.existsSync(f)&&(a.reportInfo(O4.MessageName.UNNAMED,`Removing ${O4.formatUtils.pretty(t,A,O4.formatUtils.Type.PATH)}...`),await _Xr.xfs.removePromise(f)),a.reportInfo(O4.MessageName.UNNAMED,"Updating the configuration..."),await O4.Configuration.updateConfiguration(r.cwd,{plugins:I=>{if(!Array.isArray(I))return I;let C=I.filter(b=>b.path!==A);return C.length===0?O4.Configuration.deleteProperty:C.length===I.length?I:C}})})).exitCode()}};f6e.paths=[["plugin","remove"]];f6e.usage=yXr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` - This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. - - **Note:** The plugins have to be referenced by their name property, which can be obtained using the \`yarn plugin runtime\` command. Shorthands are not allowed. - `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});bXr.default=f6e});var Gcs=H(EXr=>{"use strict";Object.defineProperty(EXr,"__esModule",{value:!0});var Shl=el(),kcs=Sn(),xcs=($c(),vi(rg)),I6e=class extends Shl.BaseCommand{constructor(){super(...arguments),this.json=xcs.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await kcs.Configuration.find(this.context.cwd,this.context.plugins);return(await kcs.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async n=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),l=a;o&&(l+=" [builtin]"),n.reportJson({name:a,builtin:o}),n.reportInfo(null,`${l}`)}})).exitCode()}};I6e.paths=[["plugin","runtime"]];I6e.usage=xcs.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` - This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});EXr.default=I6e});var Vcs=H(vXr=>{"use strict";Object.defineProperty(vXr,"__esModule",{value:!0});var Fcs=el(),Zcs=Sn(),SXr=Sn(),Lcs=($c(),vi(rg)),h6e=class extends Fcs.BaseCommand{constructor(){super(...arguments),this.idents=Lcs.Option.Rest()}async execute(){let t=await Zcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await SXr.Project.find(t,this.context.cwd),a=await Zcs.Cache.find(t);if(!n)throw new Fcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let l of this.idents)o.add(SXr.structUtils.parseIdent(l).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new SXr.ThrowReport}),o.size>0)for(let l of r.storedPackages.values())o.has(l.identHash)&&(r.storedBuildState.delete(l.locatorHash),r.skippedBuilds.delete(l.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};h6e.paths=[["rebuild"]];h6e.usage=Lcs.Command.Usage({description:"rebuild the project's native packages",details:` - This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. - - Note that while Yarn forgets the compilation, the previous artifacts aren't erased from the filesystem and may affect the next builds (in good or bad). To avoid this, you may remove the .yarn/unplugged folder, or any other relevant location where packages might have been stored (Yarn may offer a way to do that automatically in the future). - - By default all packages will be rebuilt, but you can filter the list by specifying the names of the packages you want to clear from memory. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});vXr.default=h6e});var Ocs=H(TXr=>{"use strict";Object.defineProperty(TXr,"__esModule",{value:!0});var wXr=(Pa(),vi(Va)),Pcs=el(),m6e=Sn(),vhl=Sn(),uxt=Sn(),C6e=($c(),vi(rg)),Wcs=wXr.__importDefault(Ek()),Bhl=wXr.__importStar((CZ(),vi(mZ))),BXr=wXr.__importStar(Pje()),_6e=class extends Pcs.BaseCommand{constructor(){super(...arguments),this.all=C6e.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=C6e.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Bhl.isEnum(vhl.InstallMode)}),this.patterns=C6e.Option.Rest()}async execute(){let t=await m6e.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await m6e.Project.find(t,this.context.cwd),a=await m6e.Cache.find(t);if(!n)throw new Pcs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[n],l=[BXr.Target.REGULAR,BXr.Target.DEVELOPMENT,BXr.Target.PEER],A=[],f=!1,I=[];for(let N of this.patterns){let B=!1,F=uxt.structUtils.parseIdent(N);for(let Q of o){let X=[...Q.manifest.peerDependenciesMeta.keys()];for(let ae of(0,Wcs.default)(X,N))Q.manifest.peerDependenciesMeta.delete(ae),f=!0,B=!0;for(let ae of l){let ne=Q.manifest.getForScope(ae),ce=[...ne.values()].map(fe=>uxt.structUtils.stringifyIdent(fe));for(let fe of(0,Wcs.default)(ce,uxt.structUtils.stringifyIdent(F))){let{identHash:ue}=uxt.structUtils.parseIdent(fe),de=ne.get(ue);if(typeof de>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");Q.manifest[ae].delete(ue),I.push([Q,ae,de]),f=!0,B=!0}}}B||A.push(N)}let C=A.length>1?"Patterns":"Pattern",b=A.length>1?"don't":"doesn't",E=this.all?"any":"this";if(A.length>0)throw new C6e.UsageError(`${C} ${m6e.formatUtils.prettyList(t,A,m6e.formatUtils.Type.CODE)} ${b} match any packages referenced by ${E} workspace`);return f?(await t.triggerMultipleHooks(N=>N.afterWorkspaceDependencyRemoval,I),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};_6e.paths=[["remove"]];_6e.usage=C6e.Command.Usage({description:"remove dependencies from the project",details:` - This command will remove the packages matching the specified patterns from the current workspace. - - If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: - - - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. - - - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. - - This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. - `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});TXr.default=_6e});var Hcs=H(NXr=>{"use strict";Object.defineProperty(NXr,"__esModule",{value:!0});var Mcs=el(),RXr=Sn(),whl=Sn(),Thl=($c(),vi(rg)),Rhl=wt("util"),gxt=class extends Mcs.BaseCommand{constructor(){super(...arguments),this.json=Thl.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await RXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await RXr.Project.find(t,this.context.cwd);if(!n)throw new Mcs.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await RXr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let l=n.manifest.scripts,A=whl.miscUtils.sortMap(l.keys(),C=>C),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},I=A.reduce((C,b)=>Math.max(C,b.length),0);for(let[C,b]of l.entries())o.reportInfo(null,`${C.padEnd(I," ")} ${(0,Rhl.inspect)(b,f)}`),o.reportJson({name:C,script:b})})).exitCode()}};gxt.paths=[["run"]];NXr.default=gxt});var Xcs=H(DXr=>{"use strict";Object.defineProperty(DXr,"__esModule",{value:!0});var Ycs=el(),Qcs=Sn(),V_e=Sn(),HV=($c(),vi(rg)),y6e=class extends Ycs.BaseCommand{constructor(){super(...arguments),this.inspect=HV.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=HV.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=HV.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=HV.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=HV.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=HV.Option.Boolean("--silent",{hidden:!0}),this.scriptName=HV.Option.String(),this.args=HV.Option.Proxy()}async execute(){let t=await Qcs.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n,locator:a}=await Qcs.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await V_e.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await V_e.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let l=await V_e.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(l.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await V_e.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:l})}if(!this.topLevel&&!this.binariesOnly&&n&&this.scriptName.includes(":")){let I=(await Promise.all(r.workspaces.map(async C=>C.manifest.scripts.has(this.scriptName)?C:null))).filter(C=>C!==null);if(I.length===1)return await V_e.scriptUtils.executeWorkspaceScript(I[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new HV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${V_e.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new HV.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${V_e.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new HV.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[I,C]of Ycs.pluginCommands)for(let b of C)if(f.length>=b.length&&JSON.stringify(f.slice(0,b.length))===JSON.stringify(b))throw new HV.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${I} plugin. You can install it with "yarn plugin import ${I}".`);throw new HV.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};y6e.paths=[["run"]];y6e.usage=HV.Command.Usage({description:"run a script defined in the package.json",details:` - This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - - - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. - - - Otherwise, if one of the local workspace's dependencies exposes a binary with a matching name, this binary will get executed. - - - Otherwise, if the specified name contains a colon character and if one of the workspaces in the project contains exactly one script with a matching name, then this script will get executed. - - Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax). - `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});DXr.default=y6e});var Kcs=H(GXr=>{"use strict";Object.defineProperty(GXr,"__esModule",{value:!0});var Jcs=el(),kXr=Sn(),Ucs=Sn(),xXr=($c(),vi(rg)),b6e=class extends Jcs.BaseCommand{constructor(){super(...arguments),this.descriptor=xXr.Option.String(),this.resolution=xXr.Option.String()}async execute(){let t=await kXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kXr.Project.find(t,this.context.cwd),a=await kXr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!n)throw new Jcs.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=Ucs.structUtils.parseDescriptor(this.descriptor,!0),l=Ucs.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(l.descriptorHash,l),r.resolutionAliases.set(o.descriptorHash,l.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};b6e.paths=[["set","resolution"]];b6e.usage=xXr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 npm:1.5.0"]]});GXr.default=b6e});var zcs=H(ZXr=>{"use strict";Object.defineProperty(ZXr,"__esModule",{value:!0});var Nhl=(Pa(),vi(Va)),FXr=el(),cue=Sn(),jcs=ro(),E6e=($c(),vi(rg)),Dhl=Nhl.__importDefault(Ek()),S6e=class extends FXr.BaseCommand{constructor(){super(...arguments),this.all=E6e.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=E6e.Option.Rest()}async execute(){let t=await cue.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await cue.Project.find(t,this.context.cwd),a=await cue.Cache.find(t);if(!n)throw new FXr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,l=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:A,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&l.add(A.descriptor.fullName);if(this.leadingArguments.length>0)for(let A of this.leadingArguments){let f=jcs.ppath.resolve(this.context.cwd,jcs.npath.toPortablePath(A));if(cue.miscUtils.isPathLike(A)){let I=await cue.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:C,workspace:b}=await cue.Project.find(I,f);if(!b)throw new FXr.WorkspaceRequiredError(C.cwd,f);if(this.all){for(let E of C.workspaces)E.manifest.name&&l.add(cue.structUtils.stringifyIdent(E.anchoredLocator));if(l.size===0)throw new E6e.UsageError("No workspace found to be unlinked in the target project")}else{if(!b.manifest.name)throw new E6e.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");l.add(cue.structUtils.stringifyIdent(b.anchoredLocator))}}else{let I=[...o.manifest.resolutions.map(({pattern:C})=>C.descriptor.fullName)];for(let C of(0,Dhl.default)(I,A))l.add(C)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:A})=>!l.has(A.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};S6e.paths=[["unlink"]];S6e.usage=E6e.Command.Usage({description:"disconnect the local project from another one",details:` - This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. - `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});ZXr.default=S6e});var $cs=H(OXr=>{"use strict";Object.defineProperty(OXr,"__esModule",{value:!0});var WXr=(Pa(),vi(Va)),LXr=el(),FO=Sn(),VXr=Sn(),BH=Sn(),wH=($c(),vi(rg)),khl=Zje(),qcs=WXr.__importDefault(Ek()),PXr=WXr.__importStar((CZ(),vi(mZ))),l6=WXr.__importStar(Pje()),qxe=class extends LXr.BaseCommand{constructor(){super(...arguments),this.interactive=wH.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=wH.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=wH.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=wH.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=wH.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=wH.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=wH.Option.String("--mode",{description:"Change what artifacts installs generate",validator:PXr.isEnum(VXr.InstallMode)}),this.patterns=wH.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await BH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await BH.Cache.find(t);if(!n)throw new LXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],l=o.map(I=>FO.structUtils.stringifyIdent(I)),A=new Set;for(let I of this.patterns){if(FO.structUtils.parseDescriptor(I).range!=="unknown")throw new wH.UsageError("Ranges aren't allowed when using --recursive");for(let C of(0,qcs.default)(l,I)){let b=FO.structUtils.parseIdent(C);A.add(b.identHash)}}let f=o.filter(I=>A.has(I.identHash));for(let I of f)r.storedDescriptors.delete(I.descriptorHash),r.storedResolutions.delete(I.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await BH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await VXr.Project.find(t,this.context.cwd),a=await BH.Cache.find(t);if(!n)throw new LXr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,l=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),A=l6.getModifier(this,r),f=l?[l6.Strategy.KEEP,l6.Strategy.REUSE,l6.Strategy.PROJECT,l6.Strategy.LATEST]:[l6.Strategy.PROJECT,l6.Strategy.LATEST],I=[],C=[];for(let F of this.patterns){let Q=!1,X=FO.structUtils.parseDescriptor(F),ae=FO.structUtils.stringifyIdent(X);for(let ne of r.workspaces)for(let ce of[l6.Target.REGULAR,l6.Target.DEVELOPMENT]){let ue=[...ne.manifest.getForScope(ce).values()].map(be=>FO.structUtils.stringifyIdent(be)),de=ae==="*"?ue:(0,qcs.default)(ue,ae);for(let be of de){let Se=FO.structUtils.parseIdent(be),De=ne.manifest[ce].get(Se.identHash);if(typeof De>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let k=FO.structUtils.makeDescriptor(Se,X.range);I.push(Promise.resolve().then(async()=>[ne,ce,De,await l6.getSuggestedDescriptors(k,{project:r,workspace:ne,cache:a,target:ce,fixed:o,modifier:A,strategies:f})])),Q=!0}}Q||C.push(F)}if(C.length>1)throw new wH.UsageError(`Patterns ${BH.formatUtils.prettyList(t,C,BH.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(C.length>0)throw new wH.UsageError(`Pattern ${BH.formatUtils.prettyList(t,C,BH.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let b=await Promise.all(I),E=await BH.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async F=>{for(let[,,Q,{suggestions:X,rejections:ae}]of b){let ne=X.filter(ce=>ce.descriptor!==null);if(ne.length===0){let[ce]=ae;if(typeof ce>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ce);r.configuration.get("enableNetwork")?F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range - -${fe}`):F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} can't be resolved to a satisfying range (note: network resolution has been disabled) - -${fe}`)}else ne.length>1&&!l&&F.reportError(BH.MessageName.CANT_SUGGEST_RESOLUTIONS,`${FO.structUtils.prettyDescriptor(t,Q)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(E.hasErrors())return E.exitCode();let N=!1,B=[];for(let[F,Q,,{suggestions:X}]of b){let ae,ne=X.filter(de=>de.descriptor!==null),ce=ne[0].descriptor,fe=ne.every(de=>FO.structUtils.areDescriptorsEqual(de.descriptor,ce));ne.length===1||fe?ae=ce:(N=!0,{answer:ae}=await(0,khl.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${FO.structUtils.prettyWorkspace(t,F)} \u276F ${Q}?`,choices:X.map(({descriptor:de,name:be,reason:Se})=>de?{name:be,hint:Se,descriptor:de}:{name:be,hint:Se,disabled:!0}),onCancel:()=>process.exit(130),result(de){return this.find(de,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ue=F.manifest[Q].get(ae.identHash);if(typeof ue>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(ue.descriptorHash!==ae.descriptorHash)F.manifest[Q].set(ae.identHash,ae),B.push([F,Q,ue,ae]);else{let de=t.makeResolver(),be={project:r,resolver:de},Se=t.normalizeDependency(ue),De=de.bindDescriptor(Se,F.anchoredLocator,be);r.forgetResolution(De)}}return await t.triggerMultipleHooks(F=>F.afterWorkspaceDependencyReplacement,B),N&&this.context.stdout.write(` -`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};qxe.paths=[["up"]];qxe.usage=wH.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});qxe.schema=[PXr.hasKeyRelationship("recursive",PXr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];OXr.default=qxe});var tls=H(HXr=>{"use strict";Object.defineProperty(HXr,"__esModule",{value:!0});var els=el(),MXr=Sn(),WR=Sn(),$xe=($c(),vi(rg)),v6e=class extends els.BaseCommand{constructor(){super(...arguments),this.recursive=$xe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=$xe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=$xe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=$xe.Option.String()}async execute(){let t=await MXr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await MXr.Project.find(t,this.context.cwd);if(!n)throw new els.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=WR.structUtils.parseDescriptor(this.package,!1);if(a.range!=="unknown"&&MXr.semverUtils.validRange(a.range)===null)throw new $xe.UsageError(`Expected a valid semver range, got ${a.range}`);let o=this.recursive?Ghl(r,a,{configuration:t,peers:this.peers}):xhl(r,a,{configuration:t,peers:this.peers});WR.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};v6e.paths=[["why"]];v6e.usage=$xe.Command.Usage({description:"display the reason why a package is needed",details:` - This command prints the exact reasons why a package appears in the dependency tree. Specify a version or range to determine why the dependency tree contains a specific version of a package. This is particularly useful when trying to find out why your project depends on lower versions. - - If \`-R,--recursive\` is set, the listing will go in depth and will list, for each workspaces, what are all the paths that lead to the dependency. Note that the display is somewhat optimized in that it will not print the package listing twice for a single package, so if you see a leaf named "Foo" when looking for "Bar", it means that "Foo" already got printed higher in the tree. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"],["Explain why version 3.3.1 of lodash is in your project","$0 why lodash@3.3.1"],["Explain why version 3.X of lodash is in your project","$0 why lodash@^3"]]});HXr.default=v6e;function xhl(e,t,{configuration:r,peers:n}){let a=WR.miscUtils.sortMap(e.storedPackages.values(),A=>WR.structUtils.stringifyLocator(A)),o={},l={children:o};for(let A of a){let f={};for(let C of A.dependencies.values()){if(!n&&A.peerDependencies.has(C.identHash))continue;let b=e.storedResolutions.get(C.descriptorHash);if(!b)throw new Error("Assertion failed: The resolution should have been registered");let E=e.storedPackages.get(b);if(!E)throw new Error("Assertion failed: The package should have been registered");if(!WR.structUtils.areIdentsEqual(E,t)||!WR.structUtils.isPackageInRange(E,t.range))continue;{let B=WR.structUtils.stringifyLocator(A);o[B]={value:[A,WR.formatUtils.Type.LOCATOR],children:f}}let N=WR.structUtils.stringifyLocator(E);f[N]={value:[{descriptor:C,locator:E},WR.formatUtils.Type.DEPENDENT]}}}return l}function Ghl(e,t,{configuration:r,peers:n}){let a=WR.miscUtils.sortMap(e.workspaces,E=>WR.structUtils.stringifyLocator(E.anchoredLocator)),o=new Set,l=new Set,A=E=>{if(o.has(E.locatorHash))return l.has(E.locatorHash);if(o.add(E.locatorHash),WR.structUtils.areIdentsEqual(E,t)&&WR.structUtils.isPackageInRange(E,t.range))return l.add(E.locatorHash),!0;let N=!1;for(let B of E.dependencies.values()){if(!n&&E.peerDependencies.has(B.identHash))continue;let F=e.storedResolutions.get(B.descriptorHash);if(!F)throw new Error("Assertion failed: The resolution should have been registered");let Q=e.storedPackages.get(F);if(!Q)throw new Error("Assertion failed: The package should have been registered");A(Q)&&(N=!0)}return N&&l.add(E.locatorHash),N};for(let E of a)A(E.anchoredPackage);let f=new Set,I={},C={children:I},b=(E,N,B)=>{if(!l.has(E.locatorHash))return;let F=B!==null?WR.formatUtils.tuple(WR.formatUtils.Type.DEPENDENT,{locator:E,descriptor:B}):WR.formatUtils.tuple(WR.formatUtils.Type.LOCATOR,E),Q={},X={value:F,children:Q},ae=WR.structUtils.stringifyLocator(E);if(N[ae]=X,!(B!==null&&e.tryWorkspaceByLocator(E))&&!f.has(E.locatorHash)){f.add(E.locatorHash);for(let ne of E.dependencies.values()){if(!n&&E.peerDependencies.has(ne.identHash))continue;let ce=e.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");b(fe,Q,ne)}}};for(let E of a)b(E.anchoredPackage,I,null);return C}});var rls=H(YXr=>{"use strict";Object.defineProperty(YXr,"__esModule",{value:!0});var Fhl=el(),eGe=Sn(),Zhl=rDe(),tGe=($c(),vi(rg)),B6e=class extends Fhl.BaseCommand{constructor(){super(...arguments),this.since=tGe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=tGe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=tGe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=tGe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=tGe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await eGe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await eGe.Project.find(t,this.context.cwd);return(await eGe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await Zhl.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,l=new Set(o);if(this.recursive)for(let A of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of A)l.add(f);for(let A of l){let{manifest:f}=A;if(f.private&&this.noPrivate)continue;let I;if(this.verbose){let C=new Set,b=new Set;for(let E of eGe.Manifest.hardDependencies)for(let[N,B]of f.getForScope(E)){let F=r.tryWorkspaceByDescriptor(B);F===null?r.workspacesByIdent.has(N)&&b.add(B):C.add(F)}I={workspaceDependencies:Array.from(C).map(E=>E.relativeCwd),mismatchedWorkspaceDependencies:Array.from(b).map(E=>eGe.structUtils.stringifyDescriptor(E))}}a.reportInfo(null,`${A.relativeCwd}`),a.reportJson({location:A.relativeCwd,name:f.name?eGe.structUtils.stringifyIdent(f.name):null,...I})}})).exitCode()}};B6e.paths=[["workspaces","list"]];B6e.usage=tGe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});YXr.default=B6e});var sls=H(QXr=>{"use strict";Object.defineProperty(QXr,"__esModule",{value:!0});var nls=el(),ils=Sn(),Lhl=Sn(),w6e=($c(),vi(rg)),T6e=class extends nls.BaseCommand{constructor(){super(...arguments),this.workspaceName=w6e.Option.String(),this.commandName=w6e.Option.String(),this.args=w6e.Option.Proxy()}async execute(){let t=await ils.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await ils.Project.find(t,this.context.cwd);if(!n)throw new nls.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(A=>[Lhl.structUtils.stringifyIdent(A.anchoredLocator),A])),l=o.get(this.workspaceName);if(l===void 0){let A=Array.from(o.keys()).sort();throw new w6e.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - - ${A.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:l.cwd})}};T6e.paths=[["workspace"]];T6e.usage=w6e.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` - This command will run a given sub-command on a single workspace. - `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});QXr.default=T6e});var Axt=H(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.suggestUtils=zu.dedupeUtils=zu.WorkspaceCommand=zu.WorkspacesListCommand=zu.WhyCommand=zu.UpCommand=zu.UnlinkCommand=zu.SetVersionCommand=zu.SetVersionSourcesCommand=zu.SetResolutionCommand=zu.RunCommand=zu.RunIndexCommand=zu.RemoveCommand=zu.RebuildCommand=zu.PluginRuntimeCommand=zu.PluginRemoveCommand=zu.PluginListCommand=zu.PluginImportCommand=zu.PluginCheckCommand=zu.PluginImportSourcesCommand=zu.NodeCommand=zu.LinkCommand=zu.YarnCommand=zu.InfoCommand=zu.ExplainCommand=zu.ExplainPeerRequirementsCommand=zu.ExecCommand=zu.VersionCommand=zu.EntryCommand=zu.HelpCommand=zu.ClipanionCommand=zu.DedupeCommand=zu.ConfigCommand=zu.ConfigUnsetCommand=zu.ConfigSetCommand=zu.ConfigGetCommand=zu.CacheCleanCommand=zu.BinCommand=zu.AddCommand=void 0;var am=(Pa(),vi(Va)),XXr=Sn(),Vhl=Nfe(),ols=am.__importDefault(Las());zu.AddCommand=ols.default;var als=am.__importDefault(Vas());zu.BinCommand=als.default;var cls=am.__importDefault(Was());zu.CacheCleanCommand=cls.default;var lls=am.__importDefault(Mas());zu.ConfigGetCommand=lls.default;var uls=am.__importDefault(Yas());zu.ConfigSetCommand=uls.default;var gls=am.__importDefault(Qas());zu.ConfigUnsetCommand=gls.default;var Als=am.__importDefault(Xas());zu.ConfigCommand=Als.default;var dls=am.__importDefault(Kas());zu.DedupeCommand=dls.default;var pls=am.__importDefault(jas());zu.ClipanionCommand=pls.default;var fls=am.__importDefault(zas());zu.HelpCommand=fls.default;var Ils=am.__importDefault(ecs());zu.EntryCommand=Ils.default;var hls=am.__importDefault(tcs());zu.VersionCommand=hls.default;var mls=am.__importDefault(ncs());zu.ExecCommand=mls.default;var Cls=am.__importDefault(acs());zu.ExplainPeerRequirementsCommand=Cls.default;var _ls=am.__importDefault(Acs());zu.ExplainCommand=_ls.default;var yls=am.__importDefault(pcs());zu.InfoCommand=yls.default;var bls=am.__importDefault(mcs());zu.YarnCommand=bls.default;var Els=am.__importDefault(Ccs());zu.LinkCommand=Els.default;var Sls=am.__importDefault(ycs());zu.NodeCommand=Sls.default;var vls=am.__importDefault(Ecs());zu.PluginCheckCommand=vls.default;var Bls=am.__importDefault(hXr());zu.PluginImportSourcesCommand=Bls.default;var wls=am.__importDefault(CXr());zu.PluginImportCommand=wls.default;var Tls=am.__importDefault(u6e());zu.PluginListCommand=Tls.default;var Rls=am.__importDefault(Dcs());zu.PluginRemoveCommand=Rls.default;var Nls=am.__importDefault(Gcs());zu.PluginRuntimeCommand=Nls.default;var Dls=am.__importDefault(Vcs());zu.RebuildCommand=Dls.default;var kls=am.__importDefault(Ocs());zu.RemoveCommand=kls.default;var xls=am.__importDefault(Hcs());zu.RunIndexCommand=xls.default;var Gls=am.__importDefault(Xcs());zu.RunCommand=Gls.default;var Fls=am.__importDefault(Kcs());zu.SetResolutionCommand=Fls.default;var Zls=am.__importDefault(IXr());zu.SetVersionSourcesCommand=Zls.default;var Lls=am.__importDefault(nxt());zu.SetVersionCommand=Lls.default;var Vls=am.__importDefault(zcs());zu.UnlinkCommand=Vls.default;var Pls=am.__importDefault($cs());zu.UpCommand=Pls.default;var Wls=am.__importDefault(tls());zu.WhyCommand=Wls.default;var Ols=am.__importDefault(rls());zu.WorkspacesListCommand=Ols.default;var Mls=am.__importDefault(sls());zu.WorkspaceCommand=Mls.default;var Phl=am.__importStar(UQr());zu.dedupeUtils=Phl;var Hls=am.__importStar(Pje());zu.suggestUtils=Hls;var Whl={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:XXr.SettingsType.BOOLEAN,default:Vhl.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:XXr.SettingsType.STRING,values:["^","~",""],default:Hls.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:XXr.SettingsType.BOOLEAN,default:!1}},commands:[cls.default,lls.default,uls.default,gls.default,Fls.default,Zls.default,Lls.default,Ols.default,pls.default,fls.default,Ils.default,hls.default,ols.default,als.default,Als.default,dls.default,mls.default,Cls.default,_ls.default,yls.default,bls.default,Els.default,Vls.default,Sls.default,vls.default,Bls.default,wls.default,Rls.default,Tls.default,Nls.default,Dls.default,kls.default,xls.default,Gls.default,Pls.default,Wls.default,Mls.default]};zu.default=Whl});var JXr=H(dxt=>{"use strict";Object.defineProperty(dxt,"__esModule",{value:!0});dxt.Pad=void 0;var Ohl=(Pa(),vi(Va)),Mhl=lH(),Hhl=Ohl.__importDefault(sC()),Yhl=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return Hhl.default.createElement(Mhl.Text,{dimColor:!t},r)};dxt.Pad=Yhl});var Yls=H(pxt=>{"use strict";Object.defineProperty(pxt,"__esModule",{value:!0});pxt.ItemOptions=void 0;var Qhl=(Pa(),vi(Va)),UXr=lH(),P_e=Qhl.__importDefault(sC()),Xhl=T1t(),Jhl=v1t(),Uhl=JXr(),Khl=function({active:e,skewer:t,options:r,value:n,onChange:a,sizes:o=[]}){let l=r.filter(({label:f})=>!!f).map(({value:f})=>f),A=r.findIndex(f=>f.value===n&&f.label!="");return(0,Xhl.useListInput)(n,l,{active:e,minus:"left",plus:"right",set:a}),P_e.default.createElement(P_e.default.Fragment,null,r.map(({label:f},I)=>{let C=I===A,b=o[I]-1||0,E=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),N=Math.max(0,b-E.length-2);return f?P_e.default.createElement(UXr.Box,{key:f,width:b,marginLeft:1},P_e.default.createElement(UXr.Text,{wrap:"truncate"},P_e.default.createElement(Jhl.Gem,{active:C})," ",f),t?P_e.default.createElement(Uhl.Pad,{active:e,length:N}):null):P_e.default.createElement(UXr.Box,{key:`spacer-${I}`,width:b,marginLeft:1})}))};pxt.ItemOptions=Khl});var Kls=H(KXr=>{"use strict";Object.defineProperty(KXr,"__esModule",{value:!0});var M4=(Pa(),vi(Va)),Qls=el(),ZO=Sn(),jhl=M4.__importStar(A1t()),zhl=Axt(),Jls=($c(),vi(rg)),qhl=kdr(),$hl=M4.__importDefault(UC()),eml=M4.__importStar((CZ(),vi(mZ))),Xls=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;function Uls(e,t){return e.length>0?[e.slice(0,t)].concat(Uls(e.slice(t),t)):[]}var R6e=class extends Qls.BaseCommand{constructor(){super(...arguments),this.mode=Jls.Option.String("--mode",{description:"Change what artifacts installs generate",validator:eml.isEnum(ZO.InstallMode)})}async execute(){jhl.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>M4.__importStar(Yls())),{Pad:r}=await Promise.resolve().then(()=>M4.__importStar(JXr())),{ScrollableItems:n}=await Promise.resolve().then(()=>M4.__importStar(N1t())),{useMinistore:a,useMinistoreSetAll:o}=await Promise.resolve().then(()=>M4.__importStar(OYr())),{useKeypress:l}=await Promise.resolve().then(()=>M4.__importStar(aDe())),{renderForm:A}=await Promise.resolve().then(()=>M4.__importStar(D1t())),{Box:f,Text:I}=await Promise.resolve().then(()=>M4.__importStar(lH())),{default:C,useCallback:b,useEffect:E,useRef:N,useState:B}=await Promise.resolve().then(()=>M4.__importStar(sC())),F=await ZO.Configuration.find(this.context.cwd,this.context.plugins),{project:Q,workspace:X}=await ZO.Project.find(F,this.context.cwd),ae=await ZO.Cache.find(F);if(!X)throw new Qls.WorkspaceRequiredError(Q.cwd,this.context.cwd);await Q.restoreInstallState({restoreResolutions:!1});let ne=this.context.stdout.rows-8,ce=(je,St)=>{let At=(0,qhl.diffWords)(je,St),Yt="";for(let Tr of At)Tr.added?Yt+=ZO.formatUtils.pretty(F,Tr.value,"green"):Tr.removed||(Yt+=Tr.value);return Yt},fe=(je,St)=>{if(je===St)return St;let At=ZO.structUtils.parseRange(je),Yt=ZO.structUtils.parseRange(St),Tr=At.selector.match(Xls),Nr=Yt.selector.match(Xls);if(!Tr||!Nr)return ce(je,St);let er=["gray","red","yellow","green","magenta"],vt=null,xt="";for(let Zr=1;Zr{let Yt=await zhl.suggestUtils.fetchDescriptorFrom(je,At,{project:Q,cache:ae,preserveModifier:St,workspace:X});return Yt!==null?Yt.range:je.range},de=async je=>{let St=$hl.default.valid(je.range)?`^${je.range}`:je.range,[At,Yt]=await Promise.all([ue(je,je.range,St).catch(()=>null),ue(je,je.range,"latest").catch(()=>null)]),Tr=[{value:null,label:je.range}];return At&&At!==je.range?Tr.push({value:At,label:fe(je.range,At)}):Tr.push({value:null,label:""}),Yt&&Yt!==At&&Yt!==je.range?Tr.push({value:Yt,label:fe(je.range,Yt)}):Tr.push({value:null,label:""}),Tr},be=()=>C.createElement(f,{flexDirection:"row"},C.createElement(f,{flexDirection:"column",width:49},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select packages.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},""),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to select versions.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"c"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"r"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"l")," to select all ",C.createElement(I,{bold:!0,color:"cyanBright"},"current"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"range"),"/",C.createElement(I,{bold:!0,color:"cyanBright"},"latest"),"."))),C.createElement(f,{flexDirection:"column"},C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to install.")),C.createElement(f,{marginLeft:1},C.createElement(I,null,"Press ",C.createElement(I,{bold:!0,color:"cyanBright"},"")," to abort.")))),Se=()=>C.createElement(f,{flexDirection:"row",paddingTop:1,paddingBottom:1},C.createElement(f,{width:50},C.createElement(I,{bold:!0},C.createElement(I,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Current")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Range")),C.createElement(f,{width:17},C.createElement(I,{bold:!0,underline:!0,color:"gray"},"Latest"))),De=({active:je,descriptor:St,suggestions:At})=>{let[Yt,Tr]=a(St.descriptorHash,null),Nr=ZO.structUtils.stringifyIdent(St),er=Math.max(0,45-Nr.length);return C.createElement(C.Fragment,null,C.createElement(f,null,C.createElement(f,{width:45},C.createElement(I,{bold:!0},ZO.structUtils.prettyIdent(F,St)),C.createElement(r,{active:je,length:er})),C.createElement(t,{active:je,options:At,value:Yt,skewer:!0,onChange:Tr,sizes:[17,17,17]})))},k=({dependencies:je})=>{let St=o(),[At,Yt]=B(je.map(()=>null)),Tr=N(!0),Nr=async vt=>{let xt=await de(vt);return xt.filter(Zr=>Zr.label!=="").length<=1?null:{descriptor:vt,suggestions:xt}};E(()=>()=>{Tr.current=!1},[]),E(()=>{let vt=Math.trunc(ne*1.75),xt=je.slice(0,vt),Zr=je.slice(vt),qt=Uls(Zr,ne),Xt=xt.map(Nr).reduce(async(lr,cr)=>{await lr;let Ar=await cr;Ar!==null&&Tr.current&&Yt(qr=>{let _n=qr.findIndex(jt=>jt===null),ke=[...qr];return ke[_n]=Ar,ke})},Promise.resolve());qt.reduce((lr,cr)=>Promise.all(cr.map(Ar=>Promise.resolve().then(()=>Nr(Ar)))).then(async Ar=>{Ar=Ar.filter(qr=>qr!==null),await lr,Tr.current&&Yt(qr=>{let _n=qr.findIndex(ke=>ke===null);return qr.slice(0,_n).concat(Ar).concat(qr.slice(_n+Ar.length))})}),Xt).then(()=>{Tr.current&&Yt(lr=>lr.filter(cr=>cr!==null))})},[]);let er=b(vt=>{if(vt!=="c"&&vt!=="r"&&vt!=="l")return;let xt=[];for(let Zr of At){if(Zr===null)continue;let qt;vt==="c"?qt=null:vt==="r"?qt=Zr.suggestions[1].value:qt=Zr.suggestions[2].value??Zr.suggestions[1].value,xt.push([Zr.descriptor.descriptorHash,qt])}St(xt)},[At,St]);return l({active:!0},er,[er]),At.length?C.createElement(n,{radius:ne>>1,children:At.map((vt,xt)=>vt!==null?C.createElement(De,{key:xt,active:!1,descriptor:vt.descriptor,suggestions:vt.suggestions}):C.createElement(I,{key:xt},"Loading..."))}):C.createElement(I,null,"No upgrades found")},ct=await A(({useSubmit:je})=>{je(a());let St=new Map;for(let Yt of Q.workspaces)for(let Tr of["dependencies","devDependencies"])for(let Nr of Yt.manifest[Tr].values())Q.tryWorkspaceByDescriptor(Nr)===null&&(Nr.range.startsWith("link:")||St.set(Nr.descriptorHash,Nr));let At=ZO.miscUtils.sortMap(St.values(),Yt=>ZO.structUtils.stringifyDescriptor(Yt));return C.createElement(f,{flexDirection:"column"},C.createElement(be,null),C.createElement(Se,null),C.createElement(k,{dependencies:At}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ct>"u")return 1;let Me=!1;for(let je of Q.workspaces)for(let St of["dependencies","devDependencies"]){let At=je.manifest[St];for(let Yt of At.values()){let Tr=ct.get(Yt.descriptorHash);typeof Tr<"u"&&Tr!==null&&(At.set(Yt.identHash,ZO.structUtils.makeDescriptor(Yt,Tr)),Me=!0)}}return Me?await Q.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:ae,mode:this.mode}):0}};R6e.paths=[["upgrade-interactive"]];R6e.usage=Jls.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]});KXr.default=R6e});var $ls=H(W_e=>{"use strict";Object.defineProperty(W_e,"__esModule",{value:!0});W_e.UpgradeInteractiveCommand=W_e.SearchCommand=void 0;var jls=(Pa(),vi(Va)),zls=jls.__importDefault(Kss());W_e.SearchCommand=zls.default;var qls=jls.__importDefault(Kls());W_e.UpgradeInteractiveCommand=qls.default;var tml={commands:[zls.default,qls.default]};W_e.default=tml});var jXr=H(fxt=>{"use strict";Object.defineProperty(fxt,"__esModule",{value:!0});fxt.JSR_PROTOCOL=void 0;fxt.JSR_PROTOCOL="jsr:"});var Ixt=H(N6e=>{"use strict";Object.defineProperty(N6e,"__esModule",{value:!0});N6e.convertDescriptorFromJsrToNpm=nml;N6e.convertLocatorFromJsrToNpm=iml;N6e.convertLocatorFromNpmToJsr=sml;var rml=Sn(),H4=Sn();function nml(e){let t=e.range.slice(4);if(rml.semverUtils.validRange(t))return H4.structUtils.makeDescriptor(e,`npm:${H4.structUtils.stringifyIdent(H4.structUtils.wrapIdentIntoScope(e,"jsr"))}@${t}`);let r=H4.structUtils.tryParseDescriptor(t,!0);if(r!==null)return H4.structUtils.makeDescriptor(e,`npm:${H4.structUtils.stringifyIdent(H4.structUtils.wrapIdentIntoScope(r,"jsr"))}@${r.range}`);throw new Error(`Invalid range: ${e.range}`)}function iml(e){return H4.structUtils.makeLocator(H4.structUtils.wrapIdentIntoScope(e,"jsr"),`npm:${e.reference.slice(4)}`)}function sml(e){return H4.structUtils.makeLocator(H4.structUtils.unwrapIdentFromScope(e,"jsr"),`jsr:${e.reference.slice(4)}`)}});var tus=H(hxt=>{"use strict";Object.defineProperty(hxt,"__esModule",{value:!0});hxt.JsrFetcher=void 0;var oml=jXr(),eus=Ixt(),zXr=class{supports(t,r){return t.reference.startsWith(oml.JSR_PROTOCOL)}getLocalPath(t,r){let n=(0,eus.convertLocatorFromJsrToNpm)(t);return r.fetcher.getLocalPath(n,r)}fetch(t,r){let n=(0,eus.convertLocatorFromJsrToNpm)(t);return r.fetcher.fetch(n,r)}};hxt.JsrFetcher=zXr});var nus=H(mxt=>{"use strict";Object.defineProperty(mxt,"__esModule",{value:!0});mxt.JsrResolver=void 0;var rus=jXr(),O_e=Ixt(),qXr=class{supportsDescriptor(t,r){return!!t.range.startsWith(rus.JSR_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(rus.JSR_PROTOCOL)}shouldPersistResolution(t,r){let n=(0,O_e.convertLocatorFromJsrToNpm)(t);return r.resolver.shouldPersistResolution(n,r)}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{inner:(0,O_e.convertDescriptorFromJsrToNpm)(t)}}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency((0,O_e.convertDescriptorFromJsrToNpm)(t));return(await n.resolver.getCandidates(a,r,n)).map(l=>(0,O_e.convertLocatorFromNpmToJsr)(l))}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency((0,O_e.convertDescriptorFromJsrToNpm)(t));return a.resolver.getSatisfying(o,r,n,a)}async resolve(t,r){let n=(0,O_e.convertLocatorFromJsrToNpm)(t),a=await r.resolver.resolve(n,r);return{...a,...(0,O_e.convertLocatorFromNpmToJsr)(a)}}};mxt.JsrResolver=qXr});var sus=H($Xr=>{"use strict";Object.defineProperty($Xr,"__esModule",{value:!0});var ius=Sn(),aml=tus(),cml=nus(),lml=Ixt(),uml=["dependencies","devDependencies","peerDependencies"];function gml(e,t){for(let r of uml)for(let n of e.manifest.getForScope(r).values()){if(!n.range.startsWith("jsr:"))continue;let a=(0,lml.convertDescriptorFromJsrToNpm)(n),o=r==="dependencies"?ius.structUtils.makeDescriptor(n,"unknown"):null,l=o!==null&&e.manifest.ensureDependencyMeta(o).optional?"optionalDependencies":r;t[l][ius.structUtils.stringifyIdent(n)]=a.range}}var Aml={hooks:{beforeWorkspacePacking:gml},resolvers:[cml.JsrResolver],fetchers:[aml.JsrFetcher]};$Xr.default=Aml});var aus=H(e4r=>{"use strict";Object.defineProperty(e4r,"__esModule",{value:!0});var ous=el(),Cxt=Sn(),dml=Sn(),D6e=($c(),vi(rg)),k6e=class extends ous.BaseCommand{constructor(){super(...arguments),this.json=D6e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=D6e.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=D6e.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=D6e.Option.Rest()}async execute(){let t=await Cxt.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Cxt.Project.find(t,this.context.cwd),a=await Cxt.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!n)throw new ous.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([n])}else o=new Set(this.workspaces.map(l=>r.getWorkspaceByIdent(dml.structUtils.parseIdent(l))));for(let l of o)for(let A of this.production?["dependencies"]:Cxt.Manifest.hardDependencies)for(let f of l.manifest.getForScope(A).values()){let I=r.tryWorkspaceByDescriptor(f);I!==null&&o.add(I)}for(let l of r.workspaces)o.has(l)?this.production&&l.manifest.devDependencies.clear():(l.manifest.installConfig=l.manifest.installConfig||{},l.manifest.installConfig.selfReferences=!1,l.manifest.dependencies.clear(),l.manifest.devDependencies.clear(),l.manifest.peerDependencies.clear(),l.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};k6e.paths=[["workspaces","focus"]];k6e.usage=D6e.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});e4r.default=k6e});var uus=H(n4r=>{"use strict";Object.defineProperty(n4r,"__esModule",{value:!0});var r4r=(Pa(),vi(Va)),cus=el(),t4r=Sn(),_xt=Sn(),eF=Sn(),pml=rDe(),MR=($c(),vi(rg)),x6e=r4r.__importDefault(Ek()),fml=r4r.__importDefault(Dfe()),Nte=r4r.__importStar((CZ(),vi(mZ))),rGe=class extends cus.BaseCommand{constructor(){super(...arguments),this.from=MR.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=MR.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=MR.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=MR.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=MR.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=MR.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=MR.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=MR.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:Nte.isOneOf([Nte.isEnum(["unlimited"]),Nte.applyCascade(Nte.isNumber(),[Nte.isInteger(),Nte.isAtLeast(1)])])}),this.topological=MR.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=MR.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=MR.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=MR.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=MR.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=MR.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=MR.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=MR.Option.String(),this.args=MR.Option.Proxy()}async execute(){let t=await t4r.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await t4r.Project.find(t,this.context.cwd);if(!this.all&&!n)throw new cus.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new MR.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let l=Se=>{this.dryRun&&this.context.stdout.write(`${Se} -`)},A=()=>{let Se=this.from.map(De=>x6e.default.matcher(De));return r.workspaces.filter(De=>{let k=eF.structUtils.stringifyIdent(De.anchoredLocator),et=De.relativeCwd;return Se.some(ct=>ct(k)||ct(et))})},f=[];if(this.since?(l("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await pml.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(l("Option --from is set; selecting the specified workspaces"),f=[...A()]):this.worktree?(l("Option --worktree is set; selecting the current workspace"),f=[n]):this.recursive?(l("Option --recursive is set; selecting the current workspace"),f=[n]):this.all&&(l("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Se of f)l(` -- ${Se.relativeCwd} - ${eF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);f.length>0&&l("")}let I;if(this.recursive?this.since?(l("Option --recursive --since is set; recursively selecting all dependent workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependents()]).flat())):(l("Option --recursive is set; recursively selecting all transitive dependencies"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(l("Option --worktree is set; recursively selecting all nested workspaces"),I=new Set(f.map(Se=>[...Se.getRecursiveWorkspaceChildren()]).flat())):I=null,I!==null&&(f=[...new Set([...f,...I])],this.dryRun))for(let Se of I)l(` -- ${Se.relativeCwd} - ${eF.structUtils.prettyLocator(t,Se.anchoredLocator)}`);let C=[],b=!1;if(o?.includes(":")){for(let Se of r.workspaces)if(Se.manifest.scripts.has(o)&&(b=!b,b===!1))break}for(let Se of f){if(o&&!Se.manifest.scripts.has(o)&&!b&&!(await t4r.scriptUtils.getWorkspaceAccessibleBinaries(Se)).has(o)){l(`Excluding ${Se.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Se.cwd===n.cwd)){if(this.include.length>0&&!x6e.default.isMatch(eF.structUtils.stringifyIdent(Se.anchoredLocator),this.include)&&!x6e.default.isMatch(Se.relativeCwd,this.include)){l(`Excluding ${Se.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(x6e.default.isMatch(eF.structUtils.stringifyIdent(Se.anchoredLocator),this.exclude)||x6e.default.isMatch(Se.relativeCwd,this.exclude))){l(`Excluding ${Se.relativeCwd} because it matches the --exclude filter`);continue}if(this.publicOnly&&Se.manifest.private===!0){l(`Excluding ${Se.relativeCwd} because it's a private workspace and --no-private was set`);continue}C.push(Se)}}if(C.sort((Se,De)=>eF.structUtils.stringifyIdent(Se.anchoredLocator).localeCompare(eF.structUtils.stringifyIdent(De.anchoredLocator))),this.dryRun)return 0;let E=this.verbose??(this.context.stdout.isTTY?1/0:0),N=E>0,B=E>1,F=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(eF.nodeUtils.availableParallelism()/2):1,Q=F===1?!1:this.parallel,X=Q?this.interlaced:!0,ae=(0,fml.default)(F),ne=new Map,ce=new Set,fe=0,ue=null,de=!1,be=await _xt.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Se=>{let De=async(k,{commandIndex:et})=>{if(de)return-1;!Q&&B&&et>1&&Se.reportSeparator();let ct=Iml(k,{configuration:t,label:N,commandIndex:et}),[Me,je]=lus(Se,{prefix:ct,interlaced:X}),[St,At]=lus(Se,{prefix:ct,interlaced:X});try{B&&Se.reportInfo(null,`${ct?`${ct} `:""}Process started`);let Yt=Date.now(),Tr=await this.cli.run([this.commandName,...this.args],{cwd:k.cwd,stdout:Me,stderr:St})||0;Me.end(),St.end(),await je,await At;let Nr=Date.now();if(B){let er=t.get("enableTimers")?`, completed in ${eF.formatUtils.pretty(t,Nr-Yt,eF.formatUtils.Type.DURATION)}`:"";Se.reportInfo(null,`${ct?`${ct} `:""}Process exited (exit code ${Tr})${er}`)}return Tr===130&&(de=!0,ue=Tr),Tr}catch(Yt){throw Me.end(),St.end(),await je,await At,Yt}};for(let k of C)ne.set(k.anchoredLocator.locatorHash,k);for(;ne.size>0&&!Se.hasErrors();){let k=[];for(let[je,St]of ne){if(ce.has(St.anchoredDescriptor.descriptorHash))continue;let At=!0;if(this.topological||this.topologicalDev){let Yt=this.topologicalDev?new Map([...St.manifest.dependencies,...St.manifest.devDependencies]):St.manifest.dependencies;for(let Tr of Yt.values()){let Nr=r.tryWorkspaceByDescriptor(Tr);if(At=Nr===null||!ne.has(Nr.anchoredLocator.locatorHash),!At)break}}if(At&&(ce.add(St.anchoredDescriptor.descriptorHash),k.push(ae(async()=>{let Yt=await De(St,{commandIndex:++fe});return ne.delete(je),ce.delete(St.anchoredDescriptor.descriptorHash),{workspace:St,exitCode:Yt}})),!Q))break}if(k.length===0){let je=Array.from(ne.values()).map(St=>eF.structUtils.prettyLocator(t,St.anchoredLocator)).join(", ");Se.reportError(_xt.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${je})`);return}let et=await Promise.all(k);et.forEach(({workspace:je,exitCode:St})=>{St!==0&&Se.reportError(_xt.MessageName.UNNAMED,`The command failed in workspace ${eF.structUtils.prettyLocator(t,je.anchoredLocator)} with exit code ${St}`)});let Me=et.map(je=>je.exitCode).find(je=>je!==0);(this.topological||this.topologicalDev)&&typeof Me<"u"&&Se.reportError(_xt.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return ue!==null?ue:be.exitCode()}};rGe.paths=[["workspaces","foreach"]];rGe.usage=MR.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. You can also use the `--no-private` flag to avoid running the command in private workspaces.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A --no-private npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});rGe.schema=[Nte.hasKeyRelationship("all",Nte.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),Nte.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];n4r.default=rGe;function lus(e,{prefix:t,interlaced:r}){let n=e.createStreamReporter(t),a=new eF.miscUtils.DefaultStream;a.pipe(n,{end:!1}),a.on("finish",()=>{n.end()});let o=new Promise(A=>{n.on("finish",()=>{A(a.active)})});if(r)return[a,o];let l=new eF.miscUtils.BufferStream;return l.pipe(a,{end:!1}),l.on("finish",()=>{a.end()}),[l,o]}function Iml(e,{configuration:t,commandIndex:r,label:n}){if(!n)return null;let o=`[${eF.structUtils.stringifyIdent(e.anchoredLocator)}]:`,l=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=l[r%l.length];return eF.formatUtils.pretty(t,o,A)}});var pus=H(M_e=>{"use strict";Object.defineProperty(M_e,"__esModule",{value:!0});M_e.WorkspacesForeachCommand=M_e.WorkspacesFocusCommand=void 0;var gus=(Pa(),vi(Va)),Aus=gus.__importDefault(aus());M_e.WorkspacesFocusCommand=Aus.default;var dus=gus.__importDefault(uus());M_e.WorkspacesForeachCommand=dus.default;var hml={commands:[Aus.default,dus.default]};M_e.default=hml});var Ius=H(yxt=>{"use strict";Object.defineProperty(yxt,"__esModule",{value:!0});yxt.hasDefinitelyTyped=void 0;var mml=(Pa(),vi(Va)),fus=Sn(),Cml=mml.__importDefault(VYr()),_ml="e8e1bd300d860104bb8c58453ffa1eb4",yml="OFCNCOG2CU",bml=async(e,t)=>{let r=fus.structUtils.stringifyIdent(e),a=Eml(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};yxt.hasDefinitelyTyped=bml;var Eml=e=>{let t={async send(r){try{let n=await fus.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:n.body,isTimedOut:!1,status:n.statusCode}}catch(n){return{content:n.response.body,isTimedOut:!1,status:n.response.statusCode}}}};return(0,Cml.default)(yml,_ml,{requester:t})}});var Cus=H(s4r=>{"use strict";Object.defineProperty(s4r,"__esModule",{value:!0});var Sml=(Pa(),vi(Va)),i4r=Sn(),u6=Sn(),lue=ro(),hus=Axt(),vml=Sml.__importDefault(UC()),Bml=Ius(),mus=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,wml=async(e,t,r,n)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(lue.xfs.existsSync(lue.ppath.join(e.cwd,"tsconfig.json"))||lue.xfs.existsSync(lue.ppath.join(a.cwd,"tsconfig.json")))))return;let A=o.makeResolver(),f={project:a,resolver:A,report:new u6.ThrowReport};if(!await(0,Bml.hasDefinitelyTyped)(r,o))return;let C=mus(r),b=u6.structUtils.parseRange(r.range).selector;if(!u6.semverUtils.validRange(b)){let Q=o.normalizeDependency(r),X=await A.getCandidates(Q,{},f);b=u6.structUtils.parseRange(X[0].reference).selector}let E=vml.default.coerce(b);if(E===null)return;let N=`${hus.suggestUtils.Modifier.CARET}${E.major}`,B=u6.structUtils.makeDescriptor(u6.structUtils.makeIdent("types",C),N),F=u6.miscUtils.mapAndFind(a.workspaces,Q=>{let X=Q.manifest.dependencies.get(r.identHash)?.descriptorHash,ae=Q.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(X!==r.descriptorHash&&ae!==r.descriptorHash)return u6.miscUtils.mapAndFind.skip;let ne=[];for(let ce of i4r.Manifest.allDependencies){let fe=Q.manifest[ce].get(B.identHash);typeof fe>"u"||ne.push([ce,fe])}return ne.length===0?u6.miscUtils.mapAndFind.skip:ne});if(typeof F<"u")for(let[Q,X]of F)e.manifest[Q].set(X.identHash,X);else{try{let Q=o.normalizeDependency(B);if((await A.getCandidates(Q,{},f)).length===0)return}catch{return}e.manifest[hus.suggestUtils.Target.DEVELOPMENT].set(B.identHash,B)}},Tml=async(e,t,r)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n;if(!(a.get("tsEnableAutoTypes")??(lue.xfs.existsSync(lue.ppath.join(e.cwd,"tsconfig.json"))||lue.xfs.existsSync(lue.ppath.join(n.cwd,"tsconfig.json")))))return;let l=mus(r),A=u6.structUtils.makeIdent("types",l);for(let f of i4r.Manifest.allDependencies)typeof e.manifest[f].get(A.identHash)>"u"||e.manifest[f].delete(A.identHash)},Rml=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},Nml={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:i4r.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:wml,afterWorkspaceDependencyRemoval:Tml,beforeWorkspacePacking:Rml}};s4r.default=Nml});var _us=H(bxt=>{"use strict";Object.defineProperty(bxt,"__esModule",{value:!0});bxt.CATALOG_DESCRIPTOR_PREFIX=void 0;bxt.CATALOG_DESCRIPTOR_PREFIX="catalog:"});var Eus=H(TH=>{"use strict";Object.defineProperty(TH,"__esModule",{value:!0});TH.resolveDescriptorFromCatalog=TH.getCatalogEntryName=TH.getCatalogName=TH.isCatalogReference=void 0;var H_e=Sn(),bus=_us(),Dml=e=>e.startsWith(bus.CATALOG_DESCRIPTOR_PREFIX);TH.isCatalogReference=Dml;var kml=e=>e.range.slice(bus.CATALOG_DESCRIPTOR_PREFIX.length)||null;TH.getCatalogName=kml;var yus=e=>e===null?"default catalog":`catalog "${e}"`,xml=e=>e.scope?`@${e.scope}/${e.name}`:e.name;TH.getCatalogEntryName=xml;var Gml=(e,t,r,n)=>{let a=(0,TH.getCatalogName)(t),o;if(a===null)o=e.configuration.get("catalog");else try{let C=e.configuration.get("catalogs");C&&(o=C.get(a))}catch{o=void 0}if(!o||o.size===0)throw new H_e.ReportError(H_e.MessageName.RESOLUTION_FAILED,`${H_e.structUtils.prettyDescriptor(e.configuration,t)}: ${yus(a)} not found or empty`);let l=(0,TH.getCatalogEntryName)(t),A=o.get(l);if(!A)throw new H_e.ReportError(H_e.MessageName.RESOLUTION_FAILED,`${H_e.structUtils.prettyDescriptor(e.configuration,t)}: entry not found in ${yus(a)}`);let f=e.configuration.normalizeDependency(H_e.structUtils.makeDescriptor(t,A));return r.supportsDescriptor(f,n)?r.bindDescriptor(f,e.topLevelWorkspace.anchoredLocator,n):f};TH.resolveDescriptorFromCatalog=Gml});var Sus=H(o4r=>{"use strict";Object.defineProperty(o4r,"__esModule",{value:!0});var RH=Sn(),Ext=Eus(),Fml={configuration:{catalog:{description:"The default catalog of packages",type:RH.SettingsType.MAP,valueDefinition:{description:"The catalog of packages",type:RH.SettingsType.STRING}},catalogs:{description:"Named catalogs of packages",type:RH.SettingsType.MAP,valueDefinition:{description:"A named catalog",type:RH.SettingsType.MAP,valueDefinition:{description:"Package version in the catalog",type:RH.SettingsType.STRING}}}},hooks:{beforeWorkspacePacking:(e,t)=>{let r=e.project,n=r.configuration.makeResolver(),a={project:r,resolver:n,report:new RH.ThrowReport};for(let o of RH.Manifest.allDependencies){let l=t[o];if(l)for(let[A,f]of Object.entries(l)){if(typeof f!="string"||!(0,Ext.isCatalogReference)(f))continue;let I=RH.structUtils.parseIdent(A),C=RH.structUtils.makeDescriptor(I,f),b=(0,Ext.resolveDescriptorFromCatalog)(r,C,n,a),{protocol:E,source:N,params:B,selector:F}=RH.structUtils.parseRange(RH.structUtils.convertToManifestRange(b.range));E===e.project.configuration.get("defaultProtocol")&&(E=null),l[A]=RH.structUtils.makeRange({protocol:E,source:N,params:B,selector:F})}}},reduceDependency:async(e,t,r,n,{resolver:a,resolveOptions:o})=>(0,Ext.isCatalogReference)(e.range)?(0,Ext.resolveDescriptorFromCatalog)(t,e,a,o):e}};o4r.default=Fml});var vus=H(Sxt=>{"use strict";Object.defineProperty(Sxt,"__esModule",{value:!0});Sxt.packageExtensions=void 0;var Wl={optional:!0};Sxt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:Wl,zenObservable:Wl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:Wl,zenObservable:Wl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":Wl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":Wl,"postcss-jsx":Wl,"postcss-less":Wl,"postcss-markdown":Wl,"postcss-scss":Wl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:Wl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:Wl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:Wl,"vue-template-compiler":Wl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:Wl,"utf-8-validate":Wl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Wl,"vuetify-loader":Wl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":Wl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":Wl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":Wl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:Wl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:Wl,tinyliquid:Wl,"liquid-node":Wl,jade:Wl,"then-jade":Wl,dust:Wl,"dustjs-helpers":Wl,"dustjs-linkedin":Wl,swig:Wl,"swig-templates":Wl,"razor-tmpl":Wl,atpl:Wl,liquor:Wl,twig:Wl,ejs:Wl,eco:Wl,jazz:Wl,jqtpl:Wl,hamljs:Wl,hamlet:Wl,whiskers:Wl,"haml-coffee":Wl,"hogan.js":Wl,templayed:Wl,handlebars:Wl,underscore:Wl,lodash:Wl,pug:Wl,"then-pug":Wl,qejs:Wl,walrus:Wl,mustache:Wl,just:Wl,ect:Wl,mote:Wl,toffee:Wl,dot:Wl,"bracket-template":Wl,ractive:Wl,nunjucks:Wl,htmling:Wl,"babel-core":Wl,plates:Wl,"react-dom":Wl,react:Wl,"arc-templates":Wl,vash:Wl,slm:Wl,marko:Wl,teacup:Wl,"coffee-script":Wl,squirrelly:Wl,twing:Wl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":Wl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":Wl,vue:Wl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:Wl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:Wl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":Wl,"webpack-command":Wl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":Wl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":Wl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:Wl,jimp:Wl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":Wl,"eslint-import-resolver-typescript":Wl,"eslint-import-resolver-webpack":Wl,"@typescript-eslint/parser":Wl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":Wl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":Wl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:Wl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:Wl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":Wl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:Wl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:Wl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:Wl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":Wl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}],["notistack@^3.0.0",{dependencies:{csstype:"^3.0.10"}}],["@fastify/type-provider-typebox@^5.0.0",{peerDependencies:{fastify:"^5.0.0"}}],["@fastify/type-provider-typebox@^4.0.0",{peerDependencies:{fastify:"^4.0.0"}}]]});var Bus=H(vxt=>{"use strict";Object.defineProperty(vxt,"__esModule",{value:!0});vxt.packageExtensions=void 0;var Zml=vus();Object.defineProperty(vxt,"packageExtensions",{enumerable:!0,get:function(){return Zml.packageExtensions}})});var wus=H(c4r=>{"use strict";Object.defineProperty(c4r,"__esModule",{value:!0});c4r.getPatch=Lml;var a4r;function Lml(){return typeof a4r>"u"&&(a4r=wt("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),a4r}});var Tus=H(u4r=>{"use strict";Object.defineProperty(u4r,"__esModule",{value:!0});u4r.getPatch=Vml;var l4r;function Vml(){return typeof l4r>"u"&&(l4r=wt("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),l4r}});var Rus=H(A4r=>{"use strict";Object.defineProperty(A4r,"__esModule",{value:!0});A4r.getPatch=Pml;var g4r;function Pml(){return typeof g4r>"u"&&(g4r=wt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),g4r}});var Dus=H(d4r=>{"use strict";Object.defineProperty(d4r,"__esModule",{value:!0});var Dte=Sn(),Wml=Bus(),Oml=wus(),Mml=Tus(),Hml=Rus(),Nus=new Map([[Dte.structUtils.makeIdent(null,"fsevents").identHash,Oml.getPatch],[Dte.structUtils.makeIdent(null,"resolve").identHash,Mml.getPatch],[Dte.structUtils.makeIdent(null,"typescript").identHash,Hml.getPatch]]),Yml={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,n]of Wml.packageExtensions)t(Dte.structUtils.parseDescriptor(r,!0),n)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let n=Dte.structUtils.parseIdent(t.slice(r.length)),a=Nus.get(n.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,n)=>typeof Nus.get(e.identHash)>"u"?e:Dte.structUtils.makeDescriptor(e,Dte.structUtils.makeRange({protocol:"patch:",source:Dte.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};d4r.default=Yml});var G6e=H(Y_e=>{"use strict";Object.defineProperty(Y_e,"__esModule",{value:!0});Y_e.Index=void 0;Y_e.normalizePath=Kml;Y_e.applyEngineReport=zml;Y_e.convertReportToRoot=qml;var Tm=Sn(),Bxt=kW(),p4r=class{constructor(t){this.indexedFields=t,this.items=[],this.indexes={},this.clear()}clear(){this.items=[];for(let t of this.indexedFields)this.indexes[t]=new Map}insert(t){this.items.push(t);for(let r of this.indexedFields){let n=Object.hasOwn(t,r)?t[r]:void 0;if(typeof n>"u")continue;Tm.miscUtils.getArrayWithDefault(this.indexes[r],n).push(t)}return t}find(t){if(typeof t>"u")return this.items;let r=Object.entries(t);if(r.length===0)return this.items;let n=[],a;for(let[l,A]of r){let f=l,I=Object.hasOwn(this.indexes,f)?this.indexes[f]:void 0;if(typeof I>"u"){n.push([f,A]);continue}let C=new Set(I.get(A)??[]);if(C.size===0)return[];if(typeof a>"u")a=C;else for(let b of a)C.has(b)||a.delete(b);if(a.size===0)break}let o=[...a??[]];return n.length>0&&(o=o.filter(l=>{for(let[A,f]of n)if(!(typeof f<"u"?Object.hasOwn(l,A)&&l[A]===f:Object.hasOwn(l,A)===!1))return!1;return!0})),o}};Y_e.Index=p4r;var Qml=/^[0-9]+$/,Xml=/^[a-zA-Z0-9_]+$/,Jml=new Set(["scripts",...Tm.Manifest.allDependencies]);function Uml(e,t){return t===1&&Jml.has(e[0])}function Kml(e){let t=Array.isArray(e)?e:(0,Bxt.toPath)(e);return t.map((n,a)=>Qml.test(n)?`[${n}]`:Xml.test(n)&&!Uml(t,a)?`.${n}`:`[${JSON.stringify(n)}]`).join("").replace(/^\./,"")}function jml(e,t){let r=[];if(t.methodName!==null&&r.push(Tm.formatUtils.pretty(e,t.methodName,Tm.formatUtils.Type.CODE)),t.file!==null){let n=[];n.push(Tm.formatUtils.pretty(e,t.file,Tm.formatUtils.Type.PATH)),t.line!==null&&(n.push(Tm.formatUtils.pretty(e,t.line,Tm.formatUtils.Type.NUMBER)),t.column!==null&&n.push(Tm.formatUtils.pretty(e,t.column,Tm.formatUtils.Type.NUMBER))),r.push(`(${n.join(Tm.formatUtils.pretty(e,":","grey"))})`)}return r.join(" ")}function zml(e,{manifestUpdates:t,reportedErrors:r},{fix:n}={}){let a=new Map,o=new Map,l=[...r.keys()].map(A=>[A,new Map]);for(let[A,f]of[...l,...t]){let I=r.get(A)?.map(N=>({text:N,fixable:!1}))??[],C=!1,b=e.getWorkspaceByCwd(A),E=b.manifest.exportTo({});for(let[N,B]of f){if(B.size>1){let F=[...B].map(([Q,X])=>{let ae=Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT),ne=X.size>0?jml(e.configuration,X.values().next().value):null;return ne!==null?` -${ae} at ${ne}`:` -${ae}`}).join("");I.push({text:`Conflict detected in constraint targeting ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; conflicting values are:${F}`,fixable:!1})}else{let[[F]]=B,Q=(0,Bxt.get)(E,N);if(JSON.stringify(Q)===JSON.stringify(F))continue;if(!n){let X=typeof Q>"u"?`Missing field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; expected ${Tm.formatUtils.pretty(e.configuration,F,Tm.formatUtils.Type.INSPECT)}`:typeof F>"u"?`Extraneous field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)} currently set to ${Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT)}`:`Invalid field ${Tm.formatUtils.pretty(e.configuration,N,Tm.formatUtils.Type.CODE)}; expected ${Tm.formatUtils.pretty(e.configuration,F,Tm.formatUtils.Type.INSPECT)}, found ${Tm.formatUtils.pretty(e.configuration,Q,Tm.formatUtils.Type.INSPECT)}`;I.push({text:X,fixable:!0});continue}typeof F>"u"?(0,Bxt.unset)(E,N):(0,Bxt.set)(E,N,F),C=!0}C&&a.set(b,E)}I.length>0&&o.set(b,I)}return{changedWorkspaces:a,remainingErrors:o}}function qml(e,{configuration:t}){let r={children:[]};for(let[n,a]of e){let o=[];for(let A of a){let f=A.text.split(/\n/);A.fixable&&(f[0]=`${Tm.formatUtils.pretty(t,"\u2699","gray")} ${f[0]}`),o.push({value:Tm.formatUtils.tuple(Tm.formatUtils.Type.NO_HINT,f[0]),children:f.slice(1).map(I=>({value:Tm.formatUtils.tuple(Tm.formatUtils.Type.NO_HINT,I)}))})}let l={value:Tm.formatUtils.tuple(Tm.formatUtils.Type.LOCATOR,n.anchoredLocator),children:Tm.miscUtils.sortMap(o,A=>A.value[1])};r.children.push(l)}return r.children=Tm.miscUtils.sortMap(r.children,n=>n.value[1]),r}});var I4r=H(Txt=>{"use strict";Object.defineProperty(Txt,"__esModule",{value:!0});Txt.ModernEngine=void 0;var $ml=(Pa(),vi(Va)),YV=Sn(),wxt=$ml.__importStar(G6e()),f4r=class{constructor(t){this.project=t}createEnvironment(){let t=new wxt.Index(["cwd","ident"]),r=new wxt.Index(["workspace","type","ident"]),n=new wxt.Index(["ident"]),a={manifestUpdates:new Map,reportedErrors:new Map},o=new Map,l=new Map;for(let A of this.project.storedPackages.values()){let f=Array.from(A.peerDependencies.values(),I=>[YV.structUtils.stringifyIdent(I),I.range]);o.set(A.locatorHash,{workspace:null,ident:YV.structUtils.stringifyIdent(A),version:A.version,dependencies:new Map,peerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional!==!0)),optionalPeerDependencies:new Map(f.filter(([I])=>A.peerDependenciesMeta.get(I)?.optional===!0))})}for(let A of this.project.storedPackages.values()){let f=o.get(A.locatorHash);f.dependencies=new Map(Array.from(A.dependencies.values(),I=>{let C=this.project.storedResolutions.get(I.descriptorHash);if(typeof C>"u")throw new Error("Assertion failed: The resolution should have been registered");let b=o.get(C);if(typeof b>"u")throw new Error("Assertion failed: The package should have been registered");return[YV.structUtils.stringifyIdent(I),b]})),f.dependencies.delete(f.ident)}for(let A of this.project.workspaces){let f=YV.structUtils.stringifyIdent(A.anchoredLocator),I=A.manifest.exportTo({}),C=o.get(A.anchoredLocator.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");let b=(F,Q,{caller:X=YV.nodeUtils.getCaller()}={})=>{let ae=wxt.normalizePath(F),ne=YV.miscUtils.getMapWithDefault(a.manifestUpdates,A.cwd),ce=YV.miscUtils.getMapWithDefault(ne,ae),fe=YV.miscUtils.getSetWithDefault(ce,Q);X!==null&&fe.add(X)},E=F=>b(F,void 0,{caller:YV.nodeUtils.getCaller()}),N=F=>{YV.miscUtils.getArrayWithDefault(a.reportedErrors,A.cwd).push(F)},B=t.insert({cwd:A.relativeCwd,ident:f,manifest:I,pkg:C,set:b,unset:E,error:N});l.set(A,B);for(let F of YV.Manifest.allDependencies)for(let Q of A.manifest[F].values()){let X=YV.structUtils.stringifyIdent(Q),ae=()=>{b([F,X],void 0,{caller:YV.nodeUtils.getCaller()})},ne=fe=>{b([F,X],fe,{caller:YV.nodeUtils.getCaller()})},ce=null;if(F!=="peerDependencies"&&(F!=="dependencies"||!A.manifest.devDependencies.has(Q.identHash))){let fe=A.anchoredPackage.dependencies.get(Q.identHash);if(fe){if(typeof fe>"u")throw new Error("Assertion failed: The dependency should have been registered");let ue=this.project.storedResolutions.get(fe.descriptorHash);if(typeof ue>"u")throw new Error("Assertion failed: The resolution should have been registered");let de=o.get(ue);if(typeof de>"u")throw new Error("Assertion failed: The package should have been registered");ce=de}}r.insert({workspace:B,ident:X,range:Q.range,type:F,resolution:ce,update:ne,delete:ae,error:N})}}for(let A of this.project.storedPackages.values()){let f=this.project.tryWorkspaceByLocator(A);if(!f)continue;let I=l.get(f);if(typeof I>"u")throw new Error("Assertion failed: The workspace should have been registered");let C=o.get(A.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");C.workspace=I}return{workspaces:t,dependencies:r,packages:n,result:a}}async process(){let t=this.createEnvironment(),r={Yarn:{workspace:a=>t.workspaces.find(a)[0]??null,workspaces:a=>t.workspaces.find(a),dependency:a=>t.dependencies.find(a)[0]??null,dependencies:a=>t.dependencies.find(a),package:a=>t.packages.find(a)[0]??null,packages:a=>t.packages.find(a)}},n=await this.project.loadUserConfig();return n?.constraints?(await n.constraints(r),t.result):null}};Txt.ModernEngine=f4r});var kus=H((Wtg,h4r)=>{var eCl;(function(e){var t=function(){return{"append/2":[new e.type.Rule(new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("L")]),new e.type.Term("foldl",[new e.type.Term("append",[]),new e.type.Var("X"),new e.type.Term("[]",[]),new e.type.Var("L")]))],"append/3":[new e.type.Rule(new e.type.Term("append",[new e.type.Term("[]",[]),new e.type.Var("X"),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("append",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("append",[new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("S")]))],"member/2":[new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("_")])]),null),new e.type.Rule(new e.type.Term("member",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")])]),new e.type.Term("member",[new e.type.Var("X"),new e.type.Var("Xs")]))],"permutation/2":[new e.type.Rule(new e.type.Term("permutation",[new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("permutation",[new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("permutation",[new e.type.Var("T"),new e.type.Var("P")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("P")]),new e.type.Term("append",[new e.type.Var("X"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("Y")]),new e.type.Var("S")])])]))],"maplist/2":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("X")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("Xs")])]))],"maplist/3":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs")])]))],"maplist/4":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs")])]))],"maplist/5":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds")])]))],"maplist/6":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es")])]))],"maplist/7":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs")])]))],"maplist/8":[new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("A"),new e.type.Var("As")]),new e.type.Term(".",[new e.type.Var("B"),new e.type.Var("Bs")]),new e.type.Term(".",[new e.type.Var("C"),new e.type.Var("Cs")]),new e.type.Term(".",[new e.type.Var("D"),new e.type.Var("Ds")]),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Es")]),new e.type.Term(".",[new e.type.Var("F"),new e.type.Var("Fs")]),new e.type.Term(".",[new e.type.Var("G"),new e.type.Var("Gs")])]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P"),new e.type.Var("A"),new e.type.Var("B"),new e.type.Var("C"),new e.type.Var("D"),new e.type.Var("E"),new e.type.Var("F"),new e.type.Var("G")]),new e.type.Term("maplist",[new e.type.Var("P"),new e.type.Var("As"),new e.type.Var("Bs"),new e.type.Var("Cs"),new e.type.Var("Ds"),new e.type.Var("Es"),new e.type.Var("Fs"),new e.type.Var("Gs")])]))],"include/3":[new e.type.Rule(new e.type.Term("include",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("include",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("A")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("A"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("F"),new e.type.Var("B")]),new e.type.Term(",",[new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("F")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("S")])]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("L"),new e.type.Var("S")])]),new e.type.Term("include",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("S")])])])])]))],"exclude/3":[new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Term("[]",[])]),null),new e.type.Rule(new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("exclude",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("E")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term("[]",[])]),new e.type.Var("Q")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("R"),new e.type.Var("Q")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("!",[]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("E")])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("E")])])])])])])]))],"foldl/4":[new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("_"),new e.type.Term("[]",[]),new e.type.Var("I"),new e.type.Var("I")]),null),new e.type.Rule(new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Var("T")]),new e.type.Var("I"),new e.type.Var("R")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P"),new e.type.Var("L")]),new e.type.Term(",",[new e.type.Term("append",[new e.type.Var("L"),new e.type.Term(".",[new e.type.Var("I"),new e.type.Term(".",[new e.type.Var("H"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])])])]),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("=..",[new e.type.Var("P2"),new e.type.Var("L2")]),new e.type.Term(",",[new e.type.Term("call",[new e.type.Var("P2")]),new e.type.Term("foldl",[new e.type.Var("P"),new e.type.Var("T"),new e.type.Var("X"),new e.type.Var("R")])])])])]))],"select/3":[new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("E"),new e.type.Var("Xs")]),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("select",[new e.type.Var("E"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term("select",[new e.type.Var("E"),new e.type.Var("Xs"),new e.type.Var("Ys")]))],"sum_list/2":[new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term("[]",[]),new e.type.Num(0,!1)]),null),new e.type.Rule(new e.type.Term("sum_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("sum_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("+",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"max_list/2":[new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("max_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("max_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"min_list/2":[new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("min_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("min_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term(";",[new e.type.Term(",",[new e.type.Term("=<",[new e.type.Var("X"),new e.type.Var("Y")]),new e.type.Term(",",[new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("X")]),new e.type.Term("!",[])])]),new e.type.Term("=",[new e.type.Var("S"),new e.type.Var("Y")])])]))],"prod_list/2":[new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term("[]",[]),new e.type.Num(1,!1)]),null),new e.type.Rule(new e.type.Term("prod_list",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("S")]),new e.type.Term(",",[new e.type.Term("prod_list",[new e.type.Var("Xs"),new e.type.Var("Y")]),new e.type.Term("is",[new e.type.Var("S"),new e.type.Term("*",[new e.type.Var("X"),new e.type.Var("Y")])])]))],"last/2":[new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("X"),new e.type.Term("[]",[])]),new e.type.Var("X")]),null),new e.type.Rule(new e.type.Term("last",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("Xs")]),new e.type.Var("X")]),new e.type.Term("last",[new e.type.Var("Xs"),new e.type.Var("X")]))],"prefix/2":[new e.type.Rule(new e.type.Term("prefix",[new e.type.Var("Part"),new e.type.Var("Whole")]),new e.type.Term("append",[new e.type.Var("Part"),new e.type.Var("_"),new e.type.Var("Whole")]))],"nth0/3":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth1/3":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("_")]),new e.type.Term("!",[])])])]))],"nth0/4":[new e.type.Rule(new e.type.Term("nth0",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">=",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(0,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth1/4":[new e.type.Rule(new e.type.Term("nth1",[new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term(";",[new e.type.Term("->",[new e.type.Term("var",[new e.type.Var("X")]),new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")])]),new e.type.Term(",",[new e.type.Term(">",[new e.type.Var("X"),new e.type.Num(0,!1)]),new e.type.Term(",",[new e.type.Term("nth",[new e.type.Num(1,!1),new e.type.Var("X"),new e.type.Var("Y"),new e.type.Var("Z"),new e.type.Var("W")]),new e.type.Term("!",[])])])]))],"nth/5":[new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("N"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("X"),new e.type.Var("Xs")]),null),new e.type.Rule(new e.type.Term("nth",[new e.type.Var("N"),new e.type.Var("O"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Xs")]),new e.type.Var("Y"),new e.type.Term(".",[new e.type.Var("X"),new e.type.Var("Ys")])]),new e.type.Term(",",[new e.type.Term("is",[new e.type.Var("M"),new e.type.Term("+",[new e.type.Var("N"),new e.type.Num(1,!1)])]),new e.type.Term("nth",[new e.type.Var("M"),new e.type.Var("O"),new e.type.Var("Xs"),new e.type.Var("Y"),new e.type.Var("Ys")])]))],"length/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(!e.type.is_variable(A)&&!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(e.type.is_integer(A)&&A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else{var f=new e.type.Term("length",[l,new e.type.Num(0,!1),A]);e.type.is_integer(A)&&(f=new e.type.Term(",",[f,new e.type.Term("!",[])])),n.prepend([new e.type.State(a.goal.replace(f),a.substitution,a)])}},"length/3":[new e.type.Rule(new e.type.Term("length",[new e.type.Term("[]",[]),new e.type.Var("N"),new e.type.Var("N")]),null),new e.type.Rule(new e.type.Term("length",[new e.type.Term(".",[new e.type.Var("_"),new e.type.Var("X")]),new e.type.Var("A"),new e.type.Var("N")]),new e.type.Term(",",[new e.type.Term("succ",[new e.type.Var("A"),new e.type.Var("B")]),new e.type.Term("length",[new e.type.Var("X"),new e.type.Var("B"),new e.type.Var("N")])]))],"replicate/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_integer(A))n.throw_error(e.error.type("integer",A,o.indicator));else if(A.value<0)n.throw_error(e.error.domain("not_less_than_zero",A,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=new e.type.Term("[]"),C=0;C0;b--)C[b].equals(C[b-1])&&C.splice(b,1);for(var E=new e.type.Term("[]"),b=C.length-1;b>=0;b--)E=new e.type.Term(".",[C[b],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"msort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I=l;I.indicator==="./2";)f.push(I.args[0]),I=I.args[1];if(e.type.is_variable(I))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(I))n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=f.sort(e.compare),b=new e.type.Term("[]"),E=C.length-1;E>=0;E--)b=new e.type.Term(".",[C[E],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,A])),a.substitution,a)])}}},"keysort/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else{for(var f=[],I,C=l;C.indicator==="./2";){if(I=C.args[0],e.type.is_variable(I)){n.throw_error(e.error.instantiation(o.indicator));return}else if(!e.type.is_term(I)||I.indicator!=="-/2"){n.throw_error(e.error.type("pair",I,o.indicator));return}I.args[0].pair=I.args[1],f.push(I.args[0]),C=C.args[1]}if(e.type.is_variable(C))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_empty_list(C))n.throw_error(e.error.type("list",l,o.indicator));else{for(var b=f.sort(e.compare),E=new e.type.Term("[]"),N=b.length-1;N>=0;N--)E=new e.type.Term(".",[new e.type.Term("-",[b[N],b[N].pair]),E]),delete b[N].pair;n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,A])),a.substitution,a)])}}},"take/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;if(I===0){for(var E=new e.type.Term("[]"),I=C.length-1;I>=0;I--)E=new e.type.Term(".",[C[I],E]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[E,f])),a.substitution,a)])}}},"drop/3":function(n,a,o){var l=o.args[0],A=o.args[1],f=o.args[2];if(e.type.is_variable(A)||e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!e.type.is_integer(l))n.throw_error(e.error.type("integer",l,o.indicator));else if(!e.type.is_variable(f)&&!e.type.is_list(f))n.throw_error(e.error.type("list",f,o.indicator));else{for(var I=l.value,C=[],b=A;I>0&&b.indicator==="./2";)C.push(b.args[0]),b=b.args[1],I--;I===0&&n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f])),a.substitution,a)])}},"reverse/2":function(n,a,o){var l=o.args[0],A=o.args[1],f=e.type.is_instantiated_list(l),I=e.type.is_instantiated_list(A);if(e.type.is_variable(l)&&e.type.is_variable(A))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_variable(l)&&!e.type.is_fully_list(l))n.throw_error(e.error.type("list",l,o.indicator));else if(!e.type.is_variable(A)&&!e.type.is_fully_list(A))n.throw_error(e.error.type("list",A,o.indicator));else if(!f&&!I)n.throw_error(e.error.instantiation(o.indicator));else{for(var C=f?l:A,b=new e.type.Term("[]",[]);C.indicator==="./2";)b=new e.type.Term(".",[C.args[0],b]),C=C.args[1];n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[b,f?A:l])),a.substitution,a)])}},"list_to_set/2":function(n,a,o){var l=o.args[0],A=o.args[1];if(e.type.is_variable(l))n.throw_error(e.error.instantiation(o.indicator));else{for(var f=l,I=[];f.indicator==="./2";)I.push(f.args[0]),f=f.args[1];if(e.type.is_variable(f))n.throw_error(e.error.instantiation(o.indicator));else if(!e.type.is_term(f)||f.indicator!=="[]/0")n.throw_error(e.error.type("list",l,o.indicator));else{for(var C=[],b=new e.type.Term("[]",[]),E,N=0;N=0;N--)b=new e.type.Term(".",[C[N],b]);n.prepend([new e.type.State(a.goal.replace(new e.type.Term("=",[A,b])),a.substitution,a)])}}}}},r=["append/2","append/3","member/2","permutation/2","maplist/2","maplist/3","maplist/4","maplist/5","maplist/6","maplist/7","maplist/8","include/3","exclude/3","foldl/4","sum_list/2","max_list/2","min_list/2","prod_list/2","last/2","prefix/2","nth0/3","nth1/3","nth0/4","nth1/4","length/2","replicate/3","select/3","sort/2","msort/2","keysort/2","take/3","drop/3","reverse/2","list_to_set/2"];typeof h4r<"u"?h4r.exports=function(n){e=n,new e.type.Module("lists",t(),r)}:new e.type.Module("lists",t(),r)})(eCl)});var Jus=H(wh=>{"use strict";var X_e=process.platform==="win32",m4r="aes-256-cbc",tCl="sha256",Fus="The current environment doesn't support interactive reading from TTY.",Ab=wt("fs"),xus=process.binding("tty_wrap").TTY,_4r=wt("child_process"),gue=wt("path"),y4r={prompt:"> ",hideEchoBack:!1,mask:"*",limit:[],limitMessage:"Input another, please.$<( [)limit(])>",defaultInput:"",trueValue:[],falseValue:[],caseSensitive:!1,keepWhitespace:!1,encoding:"utf8",bufferSize:1024,print:void 0,history:!0,cd:!1,phContent:void 0,preCheck:void 0},kte="none",Y4,nGe,Gus=!1,uue,Rxt,C4r,rCl=0,B4r="",Q_e=[],Nxt,Zus=!1,b4r=!1,F6e=!1;function Lus(e){function t(r){return r.replace(/[^\w\u0080-\uFFFF]/g,function(n){return"#"+n.charCodeAt(0)+";"})}return Rxt.concat(function(r){var n=[];return Object.keys(r).forEach(function(a){r[a]==="boolean"?e[a]&&n.push("--"+a):r[a]==="string"&&e[a]&&n.push("--"+a,t(e[a]))}),n}({display:"string",displayOnly:"boolean",keyIn:"boolean",hideEchoBack:"boolean",mask:"string",limit:"string",caseSensitive:"boolean"}))}function nCl(e,t){function r(X){var ae,ne="",ce;for(C4r=C4r||wt("os").tmpdir();;){ae=gue.join(C4r,X+ne);try{ce=Ab.openSync(ae,"wx")}catch(fe){if(fe.code==="EEXIST"){ne++;continue}else throw fe}Ab.closeSync(ce);break}return ae}var n,a,o,l={},A,f,I=r("readline-sync.stdout"),C=r("readline-sync.stderr"),b=r("readline-sync.exit"),E=r("readline-sync.done"),N=wt("crypto"),B,F,Q;B=N.createHash(tCl),B.update(""+process.pid+rCl+++Math.random()),Q=B.digest("hex"),F=N.createDecipher(m4r,Q),n=Lus(e),X_e?(a=process.env.ComSpec||"cmd.exe",process.env.Q='"',o=["/V:ON","/S","/C","(%Q%"+a+"%Q% /V:ON /S /C %Q%%Q%"+uue+"%Q%"+n.map(function(X){return" %Q%"+X+"%Q%"}).join("")+" & (echo !ERRORLEVEL!)>%Q%"+b+"%Q%%Q%) 2>%Q%"+C+"%Q% |%Q%"+process.execPath+"%Q% %Q%"+__dirname+"\\encrypt.js%Q% %Q%"+m4r+"%Q% %Q%"+Q+"%Q% >%Q%"+I+"%Q% & (echo 1)>%Q%"+E+"%Q%"]):(a="/bin/sh",o=["-c",'("'+uue+'"'+n.map(function(X){return" '"+X.replace(/'/g,"'\\''")+"'"}).join("")+'; echo $?>"'+b+'") 2>"'+C+'" |"'+process.execPath+'" "'+__dirname+'/encrypt.js" "'+m4r+'" "'+Q+'" >"'+I+'"; echo 1 >"'+E+'"']),F6e&&F6e("_execFileSync",n);try{_4r.spawn(a,o,t)}catch(X){l.error=new Error(X.message),l.error.method="_execFileSync - spawn",l.error.program=a,l.error.args=o}for(;Ab.readFileSync(E,{encoding:e.encoding}).trim()!=="1";);return(A=Ab.readFileSync(b,{encoding:e.encoding}).trim())==="0"?l.input=F.update(Ab.readFileSync(I,{encoding:"binary"}),"hex",e.encoding)+F.final(e.encoding):(f=Ab.readFileSync(C,{encoding:e.encoding}).trim(),l.error=new Error(Fus+(f?` -`+f:"")),l.error.method="_execFileSync",l.error.program=a,l.error.args=o,l.error.extMessage=f,l.error.exitCode=+A),Ab.unlinkSync(I),Ab.unlinkSync(C),Ab.unlinkSync(b),Ab.unlinkSync(E),l}function iCl(e){var t,r={},n,a={env:process.env,encoding:e.encoding};if(uue||(X_e?process.env.PSModulePath?(uue="powershell.exe",Rxt=["-ExecutionPolicy","Bypass","-File",__dirname+"\\read.ps1"]):(uue="cscript.exe",Rxt=["//nologo",__dirname+"\\read.cs.js"]):(uue="/bin/sh",Rxt=[__dirname+"/read.sh"])),X_e&&!process.env.PSModulePath&&(a.stdio=[process.stdin]),_4r.execFileSync){t=Lus(e),F6e&&F6e("execFileSync",t);try{r.input=_4r.execFileSync(uue,t,a)}catch(o){n=o.stderr?(o.stderr+"").trim():"",r.error=new Error(Fus+(n?` -`+n:"")),r.error.method="execFileSync",r.error.program=uue,r.error.args=t,r.error.extMessage=n,r.error.exitCode=o.status,r.error.code=o.code,r.error.signal=o.signal}}else r=nCl(e,a);return r.error||(r.input=r.input.replace(/^\s*'|'\s*$/g,""),e.display=""),r}function E4r(e){var t="",r=e.display,n=!e.display&&e.keyIn&&e.hideEchoBack&&!e.mask;function a(){var o=iCl(e);if(o.error)throw o.error;return o.input}return b4r&&b4r(e),function(){var o,l,A;function f(){return o||(o=process.binding("fs"),l=process.binding("constants")),o}if(typeof kte=="string")if(kte=null,X_e){if(A=function(I){var C=I.replace(/^\D+/,"").split("."),b=0;return(C[0]=+C[0])&&(b+=C[0]*1e4),(C[1]=+C[1])&&(b+=C[1]*100),(C[2]=+C[2])&&(b+=C[2]),b}(process.version),!(A>=20302&&A<40204||A>=5e4&&A<50100||A>=50600&&A<60200)&&process.stdin.isTTY)process.stdin.pause(),kte=process.stdin.fd,nGe=process.stdin._handle;else try{kte=f().open("CONIN$",l.O_RDWR,parseInt("0666",8)),nGe=new xus(kte,!0)}catch{}if(process.stdout.isTTY)Y4=process.stdout.fd;else{try{Y4=Ab.openSync("\\\\.\\CON","w")}catch{}if(typeof Y4!="number")try{Y4=f().open("CONOUT$",l.O_RDWR,parseInt("0666",8))}catch{}}}else{if(process.stdin.isTTY){process.stdin.pause();try{kte=Ab.openSync("/dev/tty","r"),nGe=process.stdin._handle}catch{}}else try{kte=Ab.openSync("/dev/tty","r"),nGe=new xus(kte,!1)}catch{}if(process.stdout.isTTY)Y4=process.stdout.fd;else try{Y4=Ab.openSync("/dev/tty","w")}catch{}}}(),function(){var o,l,A=!e.hideEchoBack&&!e.keyIn,f,I,C,b,E;Nxt="";function N(B){return B===Gus?!0:nGe.setRawMode(B)!==0?!1:(Gus=B,!0)}if(Zus||!nGe||typeof Y4!="number"&&(e.display||!A)){t=a();return}if(e.display&&(Ab.writeSync(Y4,e.display),e.display=""),!e.displayOnly){if(!N(!A)){t=a();return}for(I=e.keyIn?1:e.bufferSize,f=Buffer.allocUnsafe&&Buffer.alloc?Buffer.alloc(I):new Buffer(I),e.keyIn&&e.limit&&(l=new RegExp("[^"+e.limit+"]","g"+(e.caseSensitive?"":"i")));;){C=0;try{C=Ab.readSync(kte,f,0,I)}catch(B){if(B.code!=="EOF"){N(!1),t+=a();return}}if(C>0?(b=f.toString(e.encoding,0,C),Nxt+=b):(b=` -`,Nxt+="\0"),b&&typeof(E=(b.match(/^(.*?)[\r\n]/)||[])[1])=="string"&&(b=E,o=!0),b&&(b=b.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"")),b&&l&&(b=b.replace(l,"")),b&&(A||(e.hideEchoBack?e.mask&&Ab.writeSync(Y4,new Array(b.length+1).join(e.mask)):Ab.writeSync(Y4,b)),t+=b),!e.keyIn&&o||e.keyIn&&t.length>=I)break}!A&&!n&&Ab.writeSync(Y4,` -`),N(!1)}}(),e.print&&!n&&e.print(r+(e.displayOnly?"":(e.hideEchoBack?new Array(t.length+1).join(e.mask):t)+` -`),e.encoding),e.displayOnly?"":B4r=e.keepWhitespace||e.keyIn?t:t.trim()}function sCl(e,t){var r=[];function n(a){a!=null&&(Array.isArray(a)?a.forEach(n):(!t||t(a))&&r.push(a))}return n(e),r}function w4r(e){return e.replace(/[\x00-\x7f]/g,function(t){return"\\x"+("00"+t.charCodeAt().toString(16)).substr(-2)})}function _D(){var e=Array.prototype.slice.call(arguments),t,r;return e.length&&typeof e[0]=="boolean"&&(r=e.shift(),r&&(t=Object.keys(y4r),e.unshift(y4r))),e.reduce(function(n,a){return a==null||(a.hasOwnProperty("noEchoBack")&&!a.hasOwnProperty("hideEchoBack")&&(a.hideEchoBack=a.noEchoBack,delete a.noEchoBack),a.hasOwnProperty("noTrim")&&!a.hasOwnProperty("keepWhitespace")&&(a.keepWhitespace=a.noTrim,delete a.noTrim),r||(t=Object.keys(a)),t.forEach(function(o){var l;if(a.hasOwnProperty(o))switch(l=a[o],o){case"mask":case"limitMessage":case"defaultInput":case"encoding":l=l!=null?l+"":"",l&&o!=="limitMessage"&&(l=l.replace(/[\r\n]/g,"")),n[o]=l;break;case"bufferSize":!isNaN(l=parseInt(l,10))&&typeof l=="number"&&(n[o]=l);break;case"displayOnly":case"keyIn":case"hideEchoBack":case"caseSensitive":case"keepWhitespace":case"history":case"cd":n[o]=!!l;break;case"limit":case"trueValue":case"falseValue":n[o]=sCl(l,function(A){var f=typeof A;return f==="string"||f==="number"||f==="function"||A instanceof RegExp}).map(function(A){return typeof A=="string"?A.replace(/[\r\n]/g,""):A});break;case"print":case"phContent":case"preCheck":n[o]=typeof l=="function"?l:void 0;break;case"prompt":case"display":n[o]=l??"";break}})),n},{})}function S4r(e,t,r){return t.some(function(n){var a=typeof n;return a==="string"?r?e===n:e.toLowerCase()===n.toLowerCase():a==="number"?parseFloat(e)===n:a==="function"?n(e):n instanceof RegExp?n.test(e):!1})}function T4r(e,t){var r=gue.normalize(X_e?(process.env.HOMEDRIVE||"")+(process.env.HOMEPATH||""):process.env.HOME||"").replace(/[\/\\]+$/,"");return e=gue.normalize(e),t?e.replace(/^~(?=\/|\\|$)/,r):e.replace(new RegExp("^"+w4r(r)+"(?=\\/|\\\\|$)",X_e?"i":""),"~")}function iGe(e,t){var r="(?:\\(([\\s\\S]*?)\\))?(\\w+|.-.)(?:\\(([\\s\\S]*?)\\))?",n=new RegExp("(\\$)?(\\$<"+r+">)","g"),a=new RegExp("(\\$)?(\\$\\{"+r+"\\})","g");function o(l,A,f,I,C,b){var E;return A||typeof(E=t(C))!="string"?f:E?(I||"")+E+(b||""):""}return e.replace(n,o).replace(a,o)}function Vus(e,t,r){var n,a=[],o=-1,l=0,A="",f;function I(C,b){return b.length>3?(C.push(b[0]+"..."+b[b.length-1]),f=!0):b.length&&(C=C.concat(b)),C}return n=e.reduce(function(C,b){return C.concat((b+"").split(""))},[]).reduce(function(C,b){var E,N;return t||(b=b.toLowerCase()),E=/^\d$/.test(b)?1:/^[A-Z]$/.test(b)?2:/^[a-z]$/.test(b)?3:0,r&&E===0?A+=b:(N=b.charCodeAt(0),E&&E===o&&N===l+1?a.push(b):(C=I(C,a),a=[b],o=E),l=N),C},[]),n=I(n,a),A&&(n.push(A),f=!0),{values:n,suppressed:f}}function Pus(e,t){return e.join(e.length>2?", ":t?" / ":"/")}function Wus(e,t){var r,n,a={},o;if(t.phContent&&(r=t.phContent(e,t)),typeof r!="string")switch(e){case"hideEchoBack":case"mask":case"defaultInput":case"caseSensitive":case"keepWhitespace":case"encoding":case"bufferSize":case"history":case"cd":r=t.hasOwnProperty(e)?typeof t[e]=="boolean"?t[e]?"on":"off":t[e]+"":"";break;case"limit":case"trueValue":case"falseValue":n=t[t.hasOwnProperty(e+"Src")?e+"Src":e],t.keyIn?(a=Vus(n,t.caseSensitive),n=a.values):n=n.filter(function(l){var A=typeof l;return A==="string"||A==="number"}),r=Pus(n,a.suppressed);break;case"limitCount":case"limitCountNotZero":r=t[t.hasOwnProperty("limitSrc")?"limitSrc":"limit"].length,r=r||e!=="limitCountNotZero"?r+"":"";break;case"lastInput":r=B4r;break;case"cwd":case"CWD":case"cwdHome":r=process.cwd(),e==="CWD"?r=gue.basename(r):e==="cwdHome"&&(r=T4r(r));break;case"date":case"time":case"localeDate":case"localeTime":r=new Date()["to"+e.replace(/^./,function(l){return l.toUpperCase()})+"String"]();break;default:typeof(o=(e.match(/^history_m(\d+)$/)||[])[1])=="string"&&(r=Q_e[Q_e.length-o]||"")}return r}function Ous(e){var t=/^(.)-(.)$/.exec(e),r="",n,a,o,l;if(!t)return null;for(n=t[1].charCodeAt(0),a=t[2].charCodeAt(0),l=n -And the length must be: $`,trueValue:null,falseValue:null,caseSensitive:!0},t,{history:!1,cd:!1,phContent:function(N){return N==="charlist"?r.text:N==="length"?n+"..."+a:null}}),l,A,f,I,C,b,E;for(t=t||{},l=iGe(t.charlist?t.charlist+"":"$",Ous),(isNaN(n=parseInt(t.min,10))||typeof n!="number")&&(n=12),(isNaN(a=parseInt(t.max,10))||typeof a!="number")&&(a=24),I=new RegExp("^["+w4r(l)+"]{"+n+","+a+"}$"),r=Vus([l],o.caseSensitive,!0),r.text=Pus(r.values,r.suppressed),A=t.confirmMessage!=null?t.confirmMessage:"Reinput a same one to confirm it: ",f=t.unmatchMessage!=null?t.unmatchMessage:"It differs from first one. Hit only the Enter key if you want to retry from first one.",e==null&&(e="Input new password: "),C=o.limitMessage;!E;)o.limit=I,o.limitMessage=C,b=wh.question(e,o),o.limit=[b,""],o.limitMessage=f,E=wh.question(A,o);return b};function Yus(e,t,r){var n;function a(o){return n=r(o),!isNaN(n)&&typeof n=="number"}return wh.question(e,_D({limitMessage:"Input valid number, please."},t,{limit:a,cd:!1})),n}wh.questionInt=function(e,t){return Yus(e,t,function(r){return parseInt(r,10)})};wh.questionFloat=function(e,t){return Yus(e,t,parseFloat)};wh.questionPath=function(e,t){var r,n="",a=_D({hideEchoBack:!1,limitMessage:`$Input valid path, please.$<( Min:)min>$<( Max:)max>`,history:!0,cd:!0},t,{keepWhitespace:!1,limit:function(o){var l,A,f;o=T4r(o,!0),n="";function I(C){C.split(/\/|\\/).reduce(function(b,E){var N=gue.resolve(b+=E+gue.sep);if(!Ab.existsSync(N))Ab.mkdirSync(N);else if(!Ab.statSync(N).isDirectory())throw new Error("Non directory already exists: "+N);return b},"")}try{if(l=Ab.existsSync(o),r=l?Ab.realpathSync(o):gue.resolve(o),!t.hasOwnProperty("exists")&&!l||typeof t.exists=="boolean"&&t.exists!==l)return n=(l?"Already exists":"No such file or directory")+": "+r,!1;if(!l&&t.create&&(t.isDirectory?I(r):(I(gue.dirname(r)),Ab.closeSync(Ab.openSync(r,"w"))),r=Ab.realpathSync(r)),l&&(t.min||t.max||t.isFile||t.isDirectory)){if(A=Ab.statSync(r),t.isFile&&!A.isFile())return n="Not file: "+r,!1;if(t.isDirectory&&!A.isDirectory())return n="Not directory: "+r,!1;if(t.min&&A.size<+t.min||t.max&&A.size>+t.max)return n="Size "+A.size+" is out of range: "+r,!1}if(typeof t.validate=="function"&&(f=t.validate(r))!==!0)return typeof f=="string"&&(n=f),!1}catch(C){return n=C+"",!1}return!0},phContent:function(o){return o==="error"?n:o!=="min"&&o!=="max"?null:t.hasOwnProperty(o)?t[o]+"":""}});return t=t||{},e==null&&(e='Input path (you can "cd" and "pwd"): '),wh.question(e,a),r};function Qus(e,t){var r={},n={};return typeof e=="object"?(Object.keys(e).forEach(function(a){typeof e[a]=="function"&&(n[t.caseSensitive?a:a.toLowerCase()]=e[a])}),r.preCheck=function(a){var o;return r.args=v4r(a),o=r.args[0]||"",t.caseSensitive||(o=o.toLowerCase()),r.hRes=o!=="_"&&n.hasOwnProperty(o)?n[o].apply(a,r.args.slice(1)):n.hasOwnProperty("_")?n._.apply(a,r.args):null,{res:a,forceNext:!1}},n.hasOwnProperty("_")||(r.limit=function(){var a=r.args[0]||"";return t.caseSensitive||(a=a.toLowerCase()),n.hasOwnProperty(a)})):r.preCheck=function(a){return r.args=v4r(a),r.hRes=typeof e=="function"?e.apply(a,r.args):!0,{res:a,forceNext:!1}},r}wh.promptCL=function(e,t){var r=_D({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Qus(e,r);return r.limit=n.limit,r.preCheck=n.preCheck,wh.prompt(r),n.args};wh.promptLoop=function(e,t){for(var r=_D({hideEchoBack:!1,trueValue:null,falseValue:null,caseSensitive:!1,history:!0},t);!e(wh.prompt(r)););};wh.promptCLLoop=function(e,t){var r=_D({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},t),n=Qus(e,r);for(r.limit=n.limit,r.preCheck=n.preCheck;wh.prompt(r),!n.hRes;);};wh.promptSimShell=function(e){return wh.prompt(_D({hideEchoBack:!1,history:!0},e,{prompt:function(){return X_e?"$>":(process.env.USER||"")+(process.env.HOSTNAME?"@"+process.env.HOSTNAME.replace(/\..*$/,""):"")+":$$ "}()}))};function Xus(e,t,r){var n;return e==null&&(e="Are you sure? "),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s*:?\s*$/,"")+" [y/n]: "),n=wh.keyIn(e,_D(t,{hideEchoBack:!1,limit:r,trueValue:"y",falseValue:"n",caseSensitive:!1})),typeof n=="boolean"?n:""}wh.keyInYN=function(e,t){return Xus(e,t)};wh.keyInYNStrict=function(e,t){return Xus(e,t,"yn")};wh.keyInPause=function(e,t){e==null&&(e="Continue..."),(!t||t.guide!==!1)&&(e+="")&&(e=e.replace(/\s+$/,"")+" (Hit any key)"),wh.keyIn(e,_D({limit:null},t,{hideEchoBack:!0,mask:""}))};wh.keyInSelect=function(e,t,r){var n=_D({hideEchoBack:!1},r,{trueValue:null,falseValue:null,caseSensitive:!1,phContent:function(f){return f==="itemsCount"?e.length+"":f==="firstItem"?(e[0]+"").trim():f==="lastItem"?(e[e.length-1]+"").trim():null}}),a="",o={},l=49,A=` -`;if(!Array.isArray(e)||!e.length||e.length>35)throw"`items` must be Array (max length: 35).";return e.forEach(function(f,I){var C=String.fromCharCode(l);a+=C,o[C]=I,A+="["+C+"] "+(f+"").trim()+` -`,l=l===57?97:l+1}),(!r||r.cancel!==!1)&&(a+="0",o[0]=-1,A+="[0] "+(r&&r.cancel!=null&&typeof r.cancel!="boolean"?(r.cancel+"").trim():"CANCEL")+` -`),n.limit=a,A+=` -`,t==null&&(t="Choose one from list: "),(t+="")&&((!r||r.guide!==!1)&&(t=t.replace(/\s*:?\s*$/,"")+" [$]: "),A+=t),o[wh.keyIn(A,n).toLowerCase()]};wh.getRawInput=function(){return Nxt};function Z6e(e,t){var r;return t.length&&(r={},r[e]=t[0]),wh.setDefaultOptions(r)[e]}wh.setPrint=function(){return Z6e("print",arguments)};wh.setPrompt=function(){return Z6e("prompt",arguments)};wh.setEncoding=function(){return Z6e("encoding",arguments)};wh.setMask=function(){return Z6e("mask",arguments)};wh.setBufferSize=function(){return Z6e("bufferSize",arguments)}});var R4r=H((exports,module)=>{(function(){var version={major:0,minor:2,patch:81,status:"beta"};tau_file_system={files:{},open:function(e,t,r){var n=tau_file_system.files[e];if(!n){if(r==="read")return null;n={path:e,text:"",type:t,get:function(a,o){return o===this.text.length||o>this.text.length?"end_of_file":this.text.substring(o,o+a)},put:function(a,o){return o==="end_of_file"?(this.text+=a,!0):o==="past_end_of_file"?null:(this.text=this.text.substring(0,o)+a+this.text.substring(o+a.length),!0)},get_byte:function(a){if(a==="end_of_stream")return-1;var o=Math.floor(a/2);if(this.text.length<=o)return-1;var l=codePointAt(this.text[Math.floor(a/2)],0);return a%2===0?l&255:l/256>>>0},put_byte:function(a,o){var l=o==="end_of_stream"?this.text.length:Math.floor(o/2);if(this.text.length>>0,A=(A&255)<<8|a&255):(A=A&255,A=(a&255)<<8|A&255),this.text.length===l?this.text+=fromCodePoint(A):this.text=this.text.substring(0,l)+fromCodePoint(A)+this.text.substring(l+1),!0},flush:function(){return!0},close:function(){var a=tau_file_system.files[this.path];return a?!0:null}},tau_file_system.files[e]=n}return r==="write"&&(n.text=""),n}},tau_user_input={buffer:"",get:function(e,t){for(var r;tau_user_input.buffer.length\?\@\^\~\\]+|'(?:(?:'')|(?:\\')|[^'])*')/,number:/^(?:0o[0-7]+|0x[0-9a-fA-F]+|0b[01]+|0'(?:''|\\[abfnrtv\\'"`]|\\x?\d+\\|[^\\])|\d+(?:\.\d+(?:[eE][+-]?\d+)?)?)/,string:/^(?:"([^"]|""|\\")*"|`([^`]|``|\\`)*`)/,l_brace:/^(?:\[)/,r_brace:/^(?:\])/,l_bracket:/^(?:\{)/,r_bracket:/^(?:\})/,bar:/^(?:\|)/,l_paren:/^(?:\()/,r_paren:/^(?:\))/};function replace(e,t){return e.get_flag("char_conversion").id==="on"?t.replace(/./g,function(r){return e.get_char_conversion(r)}):t}function Tokenizer(e){this.thread=e,this.text="",this.tokens=[]}Tokenizer.prototype.set_last_tokens=function(e){return this.tokens=e},Tokenizer.prototype.new_text=function(e){this.text=e,this.tokens=[]},Tokenizer.prototype.get_tokens=function(e){var t,r=0,n=0,a=0,o=[],l=!1;if(e){var A=this.tokens[e-1];r=A.len,t=replace(this.thread,this.text.substr(A.len)),n=A.line,a=A.start}else t=this.text;if(/^\s*$/.test(t))return null;for(;t!=="";){var f=[],I=!1;if(/^\n/.exec(t)!==null){n++,a=0,r++,t=t.replace(/\n/,""),l=!0;continue}for(var C in rules)if(rules.hasOwnProperty(C)){var b=rules[C].exec(t);b&&f.push({value:b[0],name:C,matches:b})}if(!f.length)return this.set_last_tokens([{value:t,matches:[],name:"lexical",line:n,start:a}]);var A=reduce(f,function(Q,X){return Q.value.length>=X.value.length?Q:X});switch(A.start=a,A.line=n,t=t.replace(A.value,""),a+=A.value.length,r+=A.value.length,A.name){case"atom":A.raw=A.value,A.value.charAt(0)==="'"&&(A.value=escapeAtom(A.value.substr(1,A.value.length-2),"'"),A.value===null&&(A.name="lexical",A.value="unknown escape sequence"));break;case"number":A.float=A.value.substring(0,2)!=="0x"&&A.value.match(/[.eE]/)!==null&&A.value!=="0'.",A.value=convertNum(A.value),A.blank=I;break;case"string":var E=A.value.charAt(0);A.value=escapeAtom(A.value.substr(1,A.value.length-2),E),A.value===null&&(A.name="lexical",A.value="unknown escape sequence");break;case"whitespace":var N=o[o.length-1];N&&(N.space=!0),I=!0;continue;case"r_bracket":o.length>0&&o[o.length-1].name==="l_bracket"&&(A=o.pop(),A.name="atom",A.value="{}",A.raw="{}",A.space=!1);break;case"r_brace":o.length>0&&o[o.length-1].name==="l_brace"&&(A=o.pop(),A.name="atom",A.value="[]",A.raw="[]",A.space=!1);break}A.len=r,o.push(A),I=!1}var B=this.set_last_tokens(o);return B.length===0?null:B};function parseExpr(e,t,r,n,a){if(!t[r])return{type:ERROR,value:pl.error.syntax(t[r-1],"expression expected",!0)};var o;if(n==="0"){var l=t[r];switch(l.name){case"number":return{type:SUCCESS,len:r+1,value:new pl.type.Num(l.value,l.float)};case"variable":return{type:SUCCESS,len:r+1,value:new pl.type.Var(l.value)};case"string":var A;switch(e.get_flag("double_quotes").id){case"atom":A=new Term(l.value,[]);break;case"codes":A=new Term("[]",[]);for(var f=l.value.length-1;f>=0;f--)A=new Term(".",[new pl.type.Num(codePointAt(l.value,f),!1),A]);break;case"chars":A=new Term("[]",[]);for(var f=l.value.length-1;f>=0;f--)A=new Term(".",[new pl.type.Term(l.value.charAt(f),[]),A]);break}return{type:SUCCESS,len:r+1,value:A};case"l_paren":var B=parseExpr(e,t,r+1,e.__get_max_priority(),!0);return B.type!==SUCCESS?B:t[B.len]&&t[B.len].name==="r_paren"?(B.len++,B):{type:ERROR,derived:!0,value:pl.error.syntax(t[B.len]?t[B.len]:t[B.len-1],") or operator expected",!t[B.len])};case"l_bracket":var B=parseExpr(e,t,r+1,e.__get_max_priority(),!0);return B.type!==SUCCESS?B:t[B.len]&&t[B.len].name==="r_bracket"?(B.len++,B.value=new Term("{}",[B.value]),B):{type:ERROR,derived:!0,value:pl.error.syntax(t[B.len]?t[B.len]:t[B.len-1],"} or operator expected",!t[B.len])}}var I=parseTerm(e,t,r,a);return I.type===SUCCESS||I.derived||(I=parseList(e,t,r),I.type===SUCCESS||I.derived)?I:{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"unexpected token")}}var C=e.__get_max_priority(),b=e.__get_next_priority(n),E=r;if(t[r].name==="atom"&&t[r+1]&&(t[r].space||t[r+1].name!=="l_paren")){var l=t[r++],N=e.__lookup_operator_classes(n,l.value);if(N&&N.indexOf("fy")>-1){var B=parseExpr(e,t,r,n,a);if(B.type!==ERROR)return l.value==="-"&&!l.space&&pl.type.is_number(B.value)?{value:new pl.type.Num(-B.value.value,B.value.is_float),len:B.len,type:SUCCESS}:{value:new pl.type.Term(l.value,[B.value]),len:B.len,type:SUCCESS};o=B}else if(N&&N.indexOf("fx")>-1){var B=parseExpr(e,t,r,b,a);if(B.type!==ERROR)return{value:new pl.type.Term(l.value,[B.value]),len:B.len,type:SUCCESS};o=B}}r=E;var B=parseExpr(e,t,r,b,a);if(B.type===SUCCESS){r=B.len;var l=t[r];if(t[r]&&(t[r].name==="atom"&&e.__lookup_operator_classes(n,l.value)||t[r].name==="bar"&&e.__lookup_operator_classes(n,"|"))){var F=b,Q=n,N=e.__lookup_operator_classes(n,l.value);if(N.indexOf("xf")>-1)return{value:new pl.type.Term(l.value,[B.value]),len:++B.len,type:SUCCESS};if(N.indexOf("xfx")>-1){var X=parseExpr(e,t,r+1,F,a);return X.type===SUCCESS?{value:new pl.type.Term(l.value,[B.value,X.value]),len:X.len,type:SUCCESS}:(X.derived=!0,X)}else if(N.indexOf("xfy")>-1){var X=parseExpr(e,t,r+1,Q,a);return X.type===SUCCESS?{value:new pl.type.Term(l.value,[B.value,X.value]),len:X.len,type:SUCCESS}:(X.derived=!0,X)}else if(B.type!==ERROR)for(;;){r=B.len;var l=t[r];if(l&&l.name==="atom"&&e.__lookup_operator_classes(n,l.value)){var N=e.__lookup_operator_classes(n,l.value);if(N.indexOf("yf")>-1)B={value:new pl.type.Term(l.value,[B.value]),len:++r,type:SUCCESS};else if(N.indexOf("yfx")>-1){var X=parseExpr(e,t,++r,F,a);if(X.type===ERROR)return X.derived=!0,X;r=X.len,B={value:new pl.type.Term(l.value,[B.value,X.value]),len:r,type:SUCCESS}}else break}else break}}else o={type:ERROR,value:pl.error.syntax(t[B.len-1],"operator expected")};return B}return B}function parseTerm(e,t,r,n){if(!t[r]||t[r].name==="atom"&&t[r].raw==="."&&!n&&(t[r].space||!t[r+1]||t[r+1].name!=="l_paren"))return{type:ERROR,derived:!1,value:pl.error.syntax(t[r-1],"unfounded token")};var a=t[r],o=[];if(t[r].name==="atom"&&t[r].raw!==","){if(r++,t[r-1].space)return{type:SUCCESS,len:r,value:new pl.type.Term(a.value,o)};if(t[r]&&t[r].name==="l_paren"){if(t[r+1]&&t[r+1].name==="r_paren")return{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1],"argument expected")};var l=parseExpr(e,t,++r,"999",!0);if(l.type===ERROR)return l.derived?l:{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],"argument expected",!t[r])};for(o.push(l.value),r=l.len;t[r]&&t[r].name==="atom"&&t[r].value===",";){if(l=parseExpr(e,t,r+1,"999",!0),l.type===ERROR)return l.derived?l:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};o.push(l.value),r=l.len}if(t[r]&&t[r].name==="r_paren")r++;else return{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],", or ) expected",!t[r])}}return{type:SUCCESS,len:r,value:new pl.type.Term(a.value,o)}}return{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"term expected")}}function parseList(e,t,r){if(!t[r])return{type:ERROR,derived:!1,value:pl.error.syntax(t[r-1],"[ expected")};if(t[r]&&t[r].name==="l_brace"){var n=parseExpr(e,t,++r,"999",!0),a=[n.value],o=void 0;if(n.type===ERROR)return t[r]&&t[r].name==="r_brace"?{type:SUCCESS,len:r+1,value:new pl.type.Term("[]",[])}:{type:ERROR,derived:!0,value:pl.error.syntax(t[r],"] expected")};for(r=n.len;t[r]&&t[r].name==="atom"&&t[r].value===",";){if(n=parseExpr(e,t,r+1,"999",!0),n.type===ERROR)return n.derived?n:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};a.push(n.value),r=n.len}var l=!1;if(t[r]&&t[r].name==="bar"){if(l=!0,n=parseExpr(e,t,r+1,"999",!0),n.type===ERROR)return n.derived?n:{type:ERROR,derived:!0,value:pl.error.syntax(t[r+1]?t[r+1]:t[r],"argument expected",!t[r+1])};o=n.value,r=n.len}return t[r]&&t[r].name==="r_brace"?{type:SUCCESS,len:r+1,value:arrayToList(a,o)}:{type:ERROR,derived:!0,value:pl.error.syntax(t[r]?t[r]:t[r-1],l?"] expected":", or | or ] expected",!t[r])}}return{type:ERROR,derived:!1,value:pl.error.syntax(t[r],"list expected")}}function parseRule(e,t,r){var n=t[r].line,a=parseExpr(e,t,r,e.__get_max_priority(),!1),o=null,l;if(a.type!==ERROR)if(r=a.len,t[r]&&t[r].name==="atom"&&t[r].raw===".")if(r++,pl.type.is_term(a.value)){if(a.value.indicator===":-/2")o=new pl.type.Rule(a.value.args[0],body_conversion(a.value.args[1])),l={value:o,len:r,type:SUCCESS};else if(a.value.indicator==="-->/2"){if(o=rule_to_dcg(new pl.type.Rule(a.value.args[0],a.value.args[1]),e),!pl.type.is_rule(o))return{value:o,len:r,type:ERROR};o.body=body_conversion(o.body),l={value:o,len:r,type:pl.type.is_rule(o)?SUCCESS:ERROR}}else o=new pl.type.Rule(a.value,null),l={value:o,len:r,type:SUCCESS};if(o){var A=o.singleton_variables();A.length>0&&e.throw_warning(pl.warning.singleton(A,o.head.indicator,n))}return l}else return{type:ERROR,value:pl.error.syntax(t[r],"callable expected")};else return{type:ERROR,value:pl.error.syntax(t[r]?t[r]:t[r-1],". or operator expected")};return a}function parseProgram(e,t,r){r=r||{},r.from=r.from?r.from:"$tau-js",r.reconsult=r.reconsult!==void 0?r.reconsult:!0;var n=new Tokenizer(e),a={},o;n.new_text(t);for(var l=0,A=n.get_tokens(l);A!==null&&A[l];){var f=parseRule(e,A,l);if(f.type===ERROR)return new Term("throw",[f.value]);var I=e.session.rules["term_expansion/2"];if(I&&I.length>0){var C=new Thread(e.session),b=f.value.body?new Term(":-",[f.value.head,f.value.body]):f.value.head;b=b.rename(e.session),C.query("term_expansion("+b.toString()+", X)."),C.answer(function(E){if(E&&!pl.type.is_error(E)&&pl.type.is_term(E.links.X)){var N=E.links.X,B=N.indicator===":-/2"?new Rule(N.args[0],N.args[1]):new Rule(N,null);parseProgramExpansion(e,r,a,{value:B,len:f.len,type:f.type})}else parseProgramExpansion(e,r,a,f)})}else parseProgramExpansion(e,r,a,f);l=f.len,f.value.body===null&&f.value.head.indicator===":-/1"&&f.value.head.args[0].indicator==="char_conversion/2"&&(A=n.get_tokens(l),l=0)}return!0}function parseGoalExpansion(e,t,r,n,a){var o=new Thread(e.session);o.__goal_expansion=!0;var l=e.next_free_variable(),A=e.next_free_variable(),f=A+" = "+t+", goal_expansion("+r+", "+l+").";o.query(f),o.answer(function(I){I&&!pl.type.is_error(I)&&I.links[l]&&(n(I.links[A],body_conversion(I.links[l])),parseGoalExpansion(e,a.head(),a.term(),a.set,a))})}function parseQueryExpansion(e,t){var r=new Thread(e.session);r.__goal_expansion=!0;var n=e.next_free_variable(),a="goal_expansion("+t+", "+n+").";r.query(a);var o=r.head_point().substitution.domain();r.answer(function(l){if(l&&!pl.type.is_error(l)&&l.links[n]){for(var A=0;A0){e.renamed_variables={};var l={head:function(){return n.value.head},term:function(){return n.value.body},set:function(A,f){n.value.head=A,n.value.body=f}};parseGoalExpansion(e,n.value.head,body_conversion(n.value.body),l.set,l)}e.add_rule(n.value,t)}}function parseQuery(e,t){var r=new Tokenizer(e);r.new_text(t);var n=0;do{var a=r.get_tokens(n);if(a===null)break;var o=parseExpr(e,a,0,e.__get_max_priority(),!1);if(o.type!==ERROR){var l=o.len,A=l;if(a[l]&&a[l].name==="atom"&&a[l].raw==="."){o.value=body_conversion(o.value);var f=e.session.rules["goal_expansion/2"];!e.__goal_expansion&&f&&f.length>0?parseQueryExpansion(e,o.value):e.add_goal(o.value)}else{var I=a[l];return new Term("throw",[pl.error.syntax(I||a[l-1],". or operator expected",!I)])}n=o.len+1}else return new Term("throw",[o.value])}while(!0);return!0}function rule_to_dcg(e,t){e=e.rename(t);var r=t.next_free_variable(),n=body_to_dcg(e.body,r,t);if(n.error)return n.value;if(e.body=n.value,e.head.indicator===",/2"){var a=e.head.args[1];e.head=e.head.args[0];var o=t.next_free_variable(),l=a;if(!pl.type.is_list(l))return pl.error.type("list",l,"DCG/0");if(l.indicator==="[]/0")a=n.variable;else{for(;l.indicator==="./2"&&pl.type.is_list(l)&&l.args[1].indicator!=="[]/0";)l=l.args[1];if(pl.type.is_variable(l))return pl.error.instantiation("DCG/0");if(!pl.type.is_list(l))return pl.error.type("list",a,"DCG/0");l.args[1]=n.variable}e.body=new Term(",",[e.body,new Term("=",[o,a])]),e.head=new Term(e.head.id,e.head.args.concat([r,o]))}else{var A=e.body;pl.type.is_term(A)&&A.indicator===",/2"&&(A=A.args[0]),pl.type.is_term(A)&&A.indicator==="=/2"&&pl.type.is_variable(A.args[0])&&A.args[0]===r&&(r=A.args[1],e.body=e.body.replace(null)),e.head=new Term(e.head.id,e.head.args.concat([r,n.variable]))}return e}function body_to_dcg(e,t,r){var n;if(pl.type.is_term(e)&&e.indicator==="!/0")return n=r.next_free_variable(),{value:new Term(",",[e,new Term("=",[t,n])]),variable:n,error:!1};if(pl.type.is_term(e)&&e.indicator==="\\+/1"){var a=body_to_dcg(e.args[0],t,r);return a.error?a:{value:new Term(e.id,[a.value]),variable:t,error:!1}}else if(pl.type.is_term(e)&&(e.indicator===",/2"||e.indicator==="->/2")){var a=body_to_dcg(e.args[0],t,r);if(a.error)return a;var o=body_to_dcg(e.args[1],a.variable,r);return o.error?o:{value:new Term(e.id,[a.value,o.value]),variable:o.variable,error:!1}}else if(pl.type.is_term(e)&&e.indicator===";/2"){var a=body_to_dcg(e.args[0],t,r);if(a.error)return a;var o=body_to_dcg(e.args[1],t,r);return o.error?o:{value:new Term(",",[new Term(";",[a.value,o.value]),new Term("=",[a.variable,o.variable])]),variable:o.variable,error:!1}}else{if(pl.type.is_term(e)&&e.indicator==="{}/1")return n=r.next_free_variable(),{value:new Term(",",[e.args[0],new Term("=",[t,n])]),variable:n,error:!1};if(pl.type.is_empty_list(e))return{value:new Term("true",[]),variable:t,error:!1};if(pl.type.is_list(e)){n=r.next_free_variable();for(var l=e,A;l.indicator==="./2";)A=l,l=l.args[1];return pl.type.is_variable(l)?{value:pl.error.instantiation("DCG/0"),variable:t,error:!0}:pl.type.is_empty_list(l)?(A.args[1]=n,{value:new Term("=",[t,e]),variable:n,error:!1}):{value:pl.error.type("list",e,"DCG/0"),variable:t,error:!0}}else return pl.type.is_callable(e)?(n=r.next_free_variable(),e=new Term(e.id,e.args.concat([t,n])),{value:e,variable:n,error:!1}):{value:pl.error.type("callable",e,"DCG/0"),variable:t,error:!0}}}function body_conversion(e){return pl.type.is_variable(e)?new Term("call",[e]):pl.type.is_term(e)&&[",/2",";/2","->/2"].indexOf(e.indicator)!==-1?new Term(e.id,[body_conversion(e.args[0]),body_conversion(e.args[1])]):e}function arrayToList(e,t){for(var r=t||new Term("[]",[]),n=e.length-1;n>=0;n--)r=new Term(".",[e[n],r]);return r}function remove(e,t){for(var r=e.length-1;r>=0;r--)e[r]===t&&e.splice(r,1)}function nub(e){for(var t={},r=[],n=0;n=0;t--)if(e.charAt(t)==="/")return new Term("/",[new Term(e.substring(0,t)),new Num(parseInt(e.substring(t+1)),!1)])}function Var(e){this.id=e}function Num(e,t){this.is_float=t!==void 0?t:parseInt(e)!==e,this.value=this.is_float?e:parseInt(e)}var term_ref=0;function Term(e,t,r){term_ref++,this.ref=r||term_ref,this.id=e,this.args=t||[],this.indicator=e+"/"+this.args.length}var stream_ref=0;function Stream(e,t,r,n,a,o){this.id=stream_ref++,this.stream=e,this.mode=t,this.alias=r,this.type=n!==void 0?n:"text",this.reposition=a!==void 0?a:!0,this.eof_action=o!==void 0?o:"eof_code",this.position=this.mode==="append"?"end_of_stream":0,this.output=this.mode==="write"||this.mode==="append",this.input=this.mode==="read"}function Substitution(e,t){e=e||{},t=t||{},this.links=e,this.attrs=t}function State(e,t,r){t=t||new Substitution,r=r||null,this.goal=e,this.substitution=t,this.parent=r}function Rule(e,t,r){this.head=e,this.body=t,this.dynamic=r||!1}function Session(e){e=e===void 0||e<=0?1e3:e,this.rules={},this.src_predicates={},this.rename=0,this.modules=[],this.thread=new Thread(this),this.total_threads=1,this.renamed_variables={},this.public_predicates={},this.multifile_predicates={},this.limit=e,this.streams={user_input:new Stream(nodejs_flag?nodejs_user_input:tau_user_input,"read","user_input","text",!1,"reset"),user_output:new Stream(nodejs_flag?nodejs_user_output:tau_user_output,"write","user_output","text",!1,"eof_code")},this.file_system=nodejs_flag?nodejs_file_system:tau_file_system,this.standard_input=this.streams.user_input,this.standard_output=this.streams.user_output,this.current_input=this.streams.user_input,this.current_output=this.streams.user_output,this.format_success=function(t){return t.substitution},this.format_error=function(t){return t.goal},this.flag={bounded:pl.flag.bounded.value,max_integer:pl.flag.max_integer.value,min_integer:pl.flag.min_integer.value,integer_rounding_function:pl.flag.integer_rounding_function.value,char_conversion:pl.flag.char_conversion.value,debug:pl.flag.debug.value,max_arity:pl.flag.max_arity.value,unknown:pl.flag.unknown.value,double_quotes:pl.flag.double_quotes.value,occurs_check:pl.flag.occurs_check.value,dialect:pl.flag.dialect.value,version_data:pl.flag.version_data.value,nodejs:pl.flag.nodejs.value,argv:pl.flag.argv.value},this.__loaded_modules=[],this.__char_conversion={},this.__operators={1200:{":-":["fx","xfx"],"-->":["xfx"],"?-":["fx"]},1100:{";":["xfy"]},1050:{"->":["xfy"]},1e3:{",":["xfy"]},900:{"\\+":["fy"]},700:{"=":["xfx"],"\\=":["xfx"],"==":["xfx"],"\\==":["xfx"],"@<":["xfx"],"@=<":["xfx"],"@>":["xfx"],"@>=":["xfx"],"=..":["xfx"],is:["xfx"],"=:=":["xfx"],"=\\=":["xfx"],"<":["xfx"],"=<":["xfx"],">":["xfx"],">=":["xfx"]},600:{":":["xfy"]},500:{"+":["yfx"],"-":["yfx"],"/\\":["yfx"],"\\/":["yfx"]},400:{"*":["yfx"],"/":["yfx"],"//":["yfx"],rem:["yfx"],mod:["yfx"],"<<":["yfx"],">>":["yfx"]},200:{"**":["xfx"],"^":["xfy"],"-":["fy"],"+":["fy"],"\\":["fy"]}}}function Thread(e){this.epoch=Date.now(),this.session=e,this.session.total_threads++,this.total_steps=0,this.cpu_time=0,this.cpu_time_last=0,this.points=[],this.debugger=!1,this.debugger_states=[],this.level="top_level/0",this.__calls=[],this.current_limit=this.session.limit,this.warnings=[],this.__goal_expansion=!1}function Module(e,t,r){this.id=e,this.rules=t,this.exports=r,pl.module[e]=this}Module.prototype.exports_predicate=function(e){return this.exports.indexOf(e)!==-1},Var.prototype.unify=function(e,t){if(t&&indexOf(e.variables(),this.id)!==-1&&!pl.type.is_variable(e))return null;var r={};return r[this.id]=e,new Substitution(r)},Num.prototype.unify=function(e,t){return pl.type.is_number(e)&&this.value===e.value&&this.is_float===e.is_float?new Substitution:null},Term.prototype.unify=function(e,t){if(pl.type.is_term(e)&&this.indicator===e.indicator){for(var r=new Substitution,n=0;n=0){var n=this.args[0].value,a=Math.floor(n/26),o=n%26;return"ABCDEFGHIJKLMNOPQRSTUVWXYZ"[o]+(a!==0?a:"")}switch(this.indicator){case"[]/0":case"{}/0":case"!/0":return this.id;case"{}/1":return"{"+this.args[0].toString(e)+"}";case"./2":if(e.ignore_ops===!1){for(var l="["+this.args[0].toString(e),A=this.args[1];A.indicator==="./2";)l+=", "+A.args[0].toString(e),A=A.args[1];return A.indicator!=="[]/0"&&(l+="|"+A.toString(e)),l+="]",l}default:var f=this.id,I=e.session?e.session.lookup_operator(this.id,this.args.length):null;if(e.session===void 0||e.ignore_ops||I===null)return e.quoted&&!/^(!|[a-z][0-9a-zA-Z_]*)$/.test(f)&&f!=="{}"&&f!=="[]"&&(f="'"+redoEscape(f)+"'"),f+(this.args.length?"("+map(this.args,function(F){return F.toString(e)}).join(", ")+")":"");var C=parseInt(I.priority),b=parseInt(t.priority),E=C>b||C===b&&(I.class==="xfx"||I.class==="xfy"&&this.indicator!==t.indicator||I.class==="yfx"&&this.indicator!==t.indicator||this.indicator===t.indicator&&I.class==="yfx"&&r==="right"||this.indicator===t.indicator&&I.class==="xfy"&&r==="left");I.indicator=this.indicator;var N=E?"(":"",B=E?")":"";return this.args.length===0?"("+this.id+")":["fy","fx"].indexOf(I.class)!==-1?N+f+" "+this.args[0].toString(e,I)+B:["yf","xf"].indexOf(I.class)!==-1?N+this.args[0].toString(e,I)+" "+f+B:N+this.args[0].toString(e,I,"left")+" "+this.id+" "+this.args[1].toString(e,I,"right")+B}},Stream.prototype.toString=function(e){return"("+this.id+")"},Substitution.prototype.toString=function(e){var t="{";for(var r in this.links)this.links.hasOwnProperty(r)&&(t!=="{"&&(t+=", "),t+=r+"/"+this.links[r].toString(e));return t+="}",t},State.prototype.toString=function(e){return this.goal===null?"<"+this.substitution.toString(e)+">":"<"+this.goal.toString(e)+", "+this.substitution.toString(e)+">"},Rule.prototype.toString=function(e){return this.body?this.head.toString(e)+" :- "+this.body.toString(e)+".":this.head.toString(e)+"."},Session.prototype.toString=function(e){for(var t="",r=0;r=0;o--)I=new Term(".",[t[o],I]);return I}for(var C=!0,b=[],o=0;o=0;o--)I=new Term(".",[t[o],I]);return I}for(var C=!0,b=[],o=0;ot&&n=0;t--)this.points.push(e[t])},Session.prototype.success=function(e,t){return this.thread.success(e,t)},Thread.prototype.success=function(e,r){var r=typeof r>"u"?e:r;this.prepend([new State(e.goal.replace(null),e.substitution,r)])},Session.prototype.throw_error=function(e){return this.thread.throw_error(e)},Thread.prototype.throw_error=function(e){this.prepend([new State(new Term("throw",[e]),new Substitution,null,null)])},Session.prototype.step_rule=function(e,t){return this.thread.step_rule(e,t)},Thread.prototype.step_rule=function(e,t){var r=t.indicator;if(e==="user"&&(e=null),e===null&&this.session.rules.hasOwnProperty(r))return this.session.rules[r];for(var n=e===null?this.session.modules:indexOf(this.session.modules,e)===-1?[]:[e],a=0;a1)&&this.again()},Session.prototype.answers=function(e,t,r){return this.thread.answers(e,t,r)},Thread.prototype.answers=function(e,t,r){var n=t||1e3,a=this;if(t<=0){r&&r();return}this.answer(function(o){e(o),o!==!1?setTimeout(function(){a.answers(e,t-1,r)},1):r&&r()})},Session.prototype.again=function(e){return this.thread.again(e)},Thread.prototype.again=function(e){for(var t,r=Date.now();this.__calls.length>0;){for(this.warnings=[],e!==!1&&(this.current_limit=this.session.limit);this.current_limit>0&&this.points.length>0&&this.head_point().goal!==null&&!pl.type.is_error(this.head_point().goal);)if(this.current_limit--,this.step()===!0)return;var n=Date.now();this.cpu_time_last=n-r,this.cpu_time+=this.cpu_time_last;var a=this.__calls.shift();this.current_limit<=0?a(null):this.points.length===0?a(!1):pl.type.is_error(this.head_point().goal)?(t=this.session.format_error(this.points.pop()),this.points=[],a(t)):(this.debugger&&this.debugger_states.push(this.head_point()),t=this.session.format_success(this.points.pop()),a(t))}},Session.prototype.unfold=function(e){if(e.body===null)return!1;var t=e.head,r=e.body,n=r.select(),a=new Thread(this),o=[];a.add_goal(n),a.step();for(var l=a.points.length-1;l>=0;l--){var A=a.points[l],f=t.apply(A.substitution),I=r.replace(A.goal);I!==null&&(I=I.apply(A.substitution)),o.push(new Rule(f,I))}var C=this.rules[t.indicator],b=indexOf(C,e);return o.length>0&&b!==-1?(C.splice.apply(C,[b,1].concat(o)),!0):!1},Thread.prototype.unfold=function(e){return this.session.unfold(e)},Var.prototype.interpret=function(e){return pl.error.instantiation(e.level)},Num.prototype.interpret=function(e){return this},Term.prototype.interpret=function(e){return pl.type.is_unitary_list(this)?this.args[0].interpret(e):pl.operate(e,this)},Var.prototype.compare=function(e){return this.ide.id?1:0},Num.prototype.compare=function(e){if(this.value===e.value&&this.is_float===e.is_float)return 0;if(this.valuee.value)return 1},Term.prototype.compare=function(e){if(this.args.lengthe.args.length||this.args.length===e.args.length&&this.id>e.id)return 1;for(var t=0;t0?r:t}return this.toString()},Rule.prototype.singleton_variables=function(){var e=this.head.variables(),t={},r=[];this.body!==null&&(e=e.concat(this.body.variables()));for(var n=0;nn)return 1;if(e.constructor===Num){if(e.is_float&&t.is_float)return 0;if(e.is_float)return-1;if(t.is_float)return 1}return 0},is_substitution:function(e){return e instanceof Substitution},is_state:function(e){return e instanceof State},is_rule:function(e){return e instanceof Rule},is_variable:function(e){return e instanceof Var},is_stream:function(e){return e instanceof Stream},is_anonymous_var:function(e){return e instanceof Var&&e.id==="_"},is_callable:function(e){return e instanceof Term},is_number:function(e){return e instanceof Num},is_integer:function(e){return e instanceof Num&&!e.is_float},is_float:function(e){return e instanceof Num&&e.is_float},is_term:function(e){return e instanceof Term},is_atom:function(e){return e instanceof Term&&e.args.length===0},is_ground:function(e){if(e instanceof Var)return!1;if(e instanceof Term){for(var t=0;t0},is_list:function(e){return e instanceof Term&&(e.indicator==="[]/0"||e.indicator==="./2")},is_empty_list:function(e){return e instanceof Term&&e.indicator==="[]/0"},is_non_empty_list:function(e){return e instanceof Term&&e.indicator==="./2"},is_fully_list:function(e){for(;e instanceof Term&&e.indicator==="./2";)e=e.args[1];return e instanceof Var||e instanceof Term&&e.indicator==="[]/0"},is_instantiated_list:function(e){for(;e instanceof Term&&e.indicator==="./2";)e=e.args[1];return e instanceof Term&&e.indicator==="[]/0"},is_unitary_list:function(e){return e instanceof Term&&e.indicator==="./2"&&e.args[1]instanceof Term&&e.args[1].indicator==="[]/0"},is_character:function(e){return e instanceof Term&&(e.id.length===1||e.id.length>0&&e.id.length<=2&&codePointAt(e.id,0)>=65536)},is_character_code:function(e){return e instanceof Num&&!e.is_float&&e.value>=0&&e.value<=1114111},is_byte:function(e){return e instanceof Num&&!e.is_float&&e.value>=0&&e.value<=255},is_operator:function(e){return e instanceof Term&&pl.arithmetic.evaluation[e.indicator]},is_directive:function(e){return e instanceof Term&&pl.directive[e.indicator]!==void 0},is_builtin:function(e){return e instanceof Term&&pl.predicate[e.indicator]!==void 0&&e.indicator!=="goal_expansion/2"},is_error:function(e){return e instanceof Term&&e.indicator==="throw/1"},is_predicate_indicator:function(e){return e instanceof Term&&e.indicator==="//2"&&e.args[0]instanceof Term&&e.args[0].args.length===0&&e.args[1]instanceof Num&&e.args[1].is_float===!1},is_flag:function(e){return e instanceof Term&&e.args.length===0&&pl.flag[e.id]!==void 0},is_value_flag:function(e,t){if(!pl.type.is_flag(e))return!1;for(var r in pl.flag[e.id].allowed)if(pl.flag[e.id].allowed.hasOwnProperty(r)&&pl.flag[e.id].allowed[r].equals(t))return!0;return!1},is_io_mode:function(e){return pl.type.is_atom(e)&&["read","write","append"].indexOf(e.id)!==-1},is_stream_option:function(e){return pl.type.is_term(e)&&(e.indicator==="alias/1"&&pl.type.is_atom(e.args[0])||e.indicator==="reposition/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="true"||e.args[0].id==="false")||e.indicator==="type/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="text"||e.args[0].id==="binary")||e.indicator==="eof_action/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="error"||e.args[0].id==="eof_code"||e.args[0].id==="reset"))},is_stream_position:function(e){return pl.type.is_integer(e)&&e.value>=0||pl.type.is_atom(e)&&(e.id==="end_of_stream"||e.id==="past_end_of_stream")},is_stream_property:function(e){return pl.type.is_term(e)&&(e.indicator==="input/0"||e.indicator==="output/0"||e.indicator==="alias/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0]))||e.indicator==="file_name/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0]))||e.indicator==="position/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_stream_position(e.args[0]))||e.indicator==="reposition/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0])&&(e.args[0].id==="true"||e.args[0].id==="false"))||e.indicator==="type/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0])&&(e.args[0].id==="text"||e.args[0].id==="binary"))||e.indicator==="mode/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0])&&(e.args[0].id==="read"||e.args[0].id==="write"||e.args[0].id==="append"))||e.indicator==="eof_action/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0])&&(e.args[0].id==="error"||e.args[0].id==="eof_code"||e.args[0].id==="reset"))||e.indicator==="end_of_stream/1"&&(pl.type.is_variable(e.args[0])||pl.type.is_atom(e.args[0])&&(e.args[0].id==="at"||e.args[0].id==="past"||e.args[0].id==="not")))},is_streamable:function(e){return e.__proto__.stream!==void 0},is_read_option:function(e){return pl.type.is_term(e)&&["variables/1","variable_names/1","singletons/1"].indexOf(e.indicator)!==-1},is_write_option:function(e){return pl.type.is_term(e)&&(e.indicator==="quoted/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="true"||e.args[0].id==="false")||e.indicator==="ignore_ops/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="true"||e.args[0].id==="false")||e.indicator==="numbervars/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="true"||e.args[0].id==="false"))},is_close_option:function(e){return pl.type.is_term(e)&&e.indicator==="force/1"&&pl.type.is_atom(e.args[0])&&(e.args[0].id==="true"||e.args[0].id==="false")},is_modifiable_flag:function(e){return pl.type.is_flag(e)&&pl.flag[e.id].changeable},is_module:function(e){return e instanceof Term&&e.indicator==="library/1"&&e.args[0]instanceof Term&&e.args[0].args.length===0&&pl.module[e.args[0].id]!==void 0}},arithmetic:{evaluation:{"e/0":{type_args:null,type_result:!0,fn:function(e){return Math.E}},"pi/0":{type_args:null,type_result:!0,fn:function(e){return Math.PI}},"tau/0":{type_args:null,type_result:!0,fn:function(e){return 2*Math.PI}},"epsilon/0":{type_args:null,type_result:!0,fn:function(e){return Number.EPSILON}},"+/1":{type_args:null,type_result:null,fn:function(e,t){return e}},"-/1":{type_args:null,type_result:null,fn:function(e,t){return-e}},"\\/1":{type_args:!1,type_result:!1,fn:function(e,t){return~e}},"abs/1":{type_args:null,type_result:null,fn:function(e,t){return Math.abs(e)}},"sign/1":{type_args:null,type_result:null,fn:function(e,t){return Math.sign(e)}},"float_integer_part/1":{type_args:!0,type_result:!1,fn:function(e,t){return parseInt(e)}},"float_fractional_part/1":{type_args:!0,type_result:!0,fn:function(e,t){return e-parseInt(e)}},"float/1":{type_args:null,type_result:!0,fn:function(e,t){return parseFloat(e)}},"floor/1":{type_args:!0,type_result:!1,fn:function(e,t){return Math.floor(e)}},"truncate/1":{type_args:!0,type_result:!1,fn:function(e,t){return parseInt(e)}},"round/1":{type_args:!0,type_result:!1,fn:function(e,t){return Math.round(e)}},"ceiling/1":{type_args:!0,type_result:!1,fn:function(e,t){return Math.ceil(e)}},"sin/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.sin(e)}},"cos/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.cos(e)}},"tan/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.tan(e)}},"asin/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.asin(e)}},"acos/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.acos(e)}},"atan/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.atan(e)}},"atan2/2":{type_args:null,type_result:!0,fn:function(e,t,r){return Math.atan2(e,t)}},"exp/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.exp(e)}},"sqrt/1":{type_args:null,type_result:!0,fn:function(e,t){return Math.sqrt(e)}},"log/1":{type_args:null,type_result:!0,fn:function(e,t){return e>0?Math.log(e):pl.error.evaluation("undefined",t.__call_indicator)}},"+/2":{type_args:null,type_result:null,fn:function(e,t,r){return e+t}},"-/2":{type_args:null,type_result:null,fn:function(e,t,r){return e-t}},"*/2":{type_args:null,type_result:null,fn:function(e,t,r){return e*t}},"//2":{type_args:null,type_result:!0,fn:function(e,t,r){return t?e/t:pl.error.evaluation("zero_division",r.__call_indicator)}},"///2":{type_args:!1,type_result:!1,fn:function(e,t,r){return t?parseInt(e/t):pl.error.evaluation("zero_division",r.__call_indicator)}},"**/2":{type_args:null,type_result:!0,fn:function(e,t,r){return Math.pow(e,t)}},"^/2":{type_args:null,type_result:null,fn:function(e,t,r){return Math.pow(e,t)}},"<>/2":{type_args:!1,type_result:!1,fn:function(e,t,r){return e>>t}},"/\\/2":{type_args:!1,type_result:!1,fn:function(e,t,r){return e&t}},"\\//2":{type_args:!1,type_result:!1,fn:function(e,t,r){return e|t}},"xor/2":{type_args:!1,type_result:!1,fn:function(e,t,r){return e^t}},"rem/2":{type_args:!1,type_result:!1,fn:function(e,t,r){return t?e%t:pl.error.evaluation("zero_division",r.__call_indicator)}},"mod/2":{type_args:!1,type_result:!1,fn:function(e,t,r){return t?e-parseInt(e/t)*t:pl.error.evaluation("zero_division",r.__call_indicator)}},"max/2":{type_args:null,type_result:null,fn:function(e,t,r){return Math.max(e,t)}},"min/2":{type_args:null,type_result:null,fn:function(e,t,r){return Math.min(e,t)}}}},directive:{"dynamic/1":function(e,t){var r=t.args[0];if(pl.type.is_variable(r))e.throw_error(pl.error.instantiation(t.indicator));else if(!pl.type.is_compound(r)||r.indicator!=="//2")e.throw_error(pl.error.type("predicate_indicator",r,t.indicator));else if(pl.type.is_variable(r.args[0])||pl.type.is_variable(r.args[1]))e.throw_error(pl.error.instantiation(t.indicator));else if(!pl.type.is_atom(r.args[0]))e.throw_error(pl.error.type("atom",r.args[0],t.indicator));else if(!pl.type.is_integer(r.args[1]))e.throw_error(pl.error.type("integer",r.args[1],t.indicator));else{var n=t.args[0].args[0].id+"/"+t.args[0].args[1].value;e.session.public_predicates[n]=!0,e.session.rules[n]||(e.session.rules[n]=[])}},"multifile/1":function(e,t){var r=t.args[0];pl.type.is_variable(r)?e.throw_error(pl.error.instantiation(t.indicator)):!pl.type.is_compound(r)||r.indicator!=="//2"?e.throw_error(pl.error.type("predicate_indicator",r,t.indicator)):pl.type.is_variable(r.args[0])||pl.type.is_variable(r.args[1])?e.throw_error(pl.error.instantiation(t.indicator)):pl.type.is_atom(r.args[0])?pl.type.is_integer(r.args[1])?e.session.multifile_predicates[t.args[0].args[0].id+"/"+t.args[0].args[1].value]=!0:e.throw_error(pl.error.type("integer",r.args[1],t.indicator)):e.throw_error(pl.error.type("atom",r.args[0],t.indicator))},"set_prolog_flag/2":function(e,t){var r=t.args[0],n=t.args[1];pl.type.is_variable(r)||pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(t.indicator)):pl.type.is_atom(r)?pl.type.is_flag(r)?pl.type.is_value_flag(r,n)?pl.type.is_modifiable_flag(r)?e.session.flag[r.id]=n:e.throw_error(pl.error.permission("modify","flag",r)):e.throw_error(pl.error.domain("flag_value",new Term("+",[r,n]),t.indicator)):e.throw_error(pl.error.domain("prolog_flag",r,t.indicator)):e.throw_error(pl.error.type("atom",r,t.indicator))},"use_module/1":function(e,t){var r=t.args[0];if(pl.type.is_variable(r))e.throw_error(pl.error.instantiation(t.indicator));else if(!pl.type.is_term(r))e.throw_error(pl.error.type("term",r,t.indicator));else if(pl.type.is_module(r)){var n=r.args[0].id;indexOf(e.session.modules,n)===-1&&e.session.modules.push(n)}},"char_conversion/2":function(e,t){var r=t.args[0],n=t.args[1];pl.type.is_variable(r)||pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(t.indicator)):pl.type.is_character(r)?pl.type.is_character(n)?r.id===n.id?delete e.session.__char_conversion[r.id]:e.session.__char_conversion[r.id]=n.id:e.throw_error(pl.error.type("character",n,t.indicator)):e.throw_error(pl.error.type("character",r,t.indicator))},"op/3":function(e,t){var r=t.args[0],n=t.args[1],a=t.args[2];if(pl.type.is_variable(r)||pl.type.is_variable(n)||pl.type.is_variable(a))e.throw_error(pl.error.instantiation(t.indicator));else if(!pl.type.is_integer(r))e.throw_error(pl.error.type("integer",r,t.indicator));else if(!pl.type.is_atom(n))e.throw_error(pl.error.type("atom",n,t.indicator));else if(!pl.type.is_atom(a))e.throw_error(pl.error.type("atom",a,t.indicator));else if(r.value<0||r.value>1200)e.throw_error(pl.error.domain("operator_priority",r,t.indicator));else if(a.id===",")e.throw_error(pl.error.permission("modify","operator",a,t.indicator));else if(a.id==="|"&&(r.value<1001||n.id.length!==3))e.throw_error(pl.error.permission("modify","operator",a,t.indicator));else if(["fy","fx","yf","xf","xfx","yfx","xfy"].indexOf(n.id)===-1)e.throw_error(pl.error.domain("operator_specifier",n,t.indicator));else{var o={prefix:null,infix:null,postfix:null};for(var l in e.session.__operators)if(e.session.__operators.hasOwnProperty(l)){var A=e.session.__operators[l][a.id];A&&(indexOf(A,"fx")!==-1&&(o.prefix={priority:l,type:"fx"}),indexOf(A,"fy")!==-1&&(o.prefix={priority:l,type:"fy"}),indexOf(A,"xf")!==-1&&(o.postfix={priority:l,type:"xf"}),indexOf(A,"yf")!==-1&&(o.postfix={priority:l,type:"yf"}),indexOf(A,"xfx")!==-1&&(o.infix={priority:l,type:"xfx"}),indexOf(A,"xfy")!==-1&&(o.infix={priority:l,type:"xfy"}),indexOf(A,"yfx")!==-1&&(o.infix={priority:l,type:"yfx"}))}var f;switch(n.id){case"fy":case"fx":f="prefix";break;case"yf":case"xf":f="postfix";break;default:f="infix";break}if(((o.prefix&&f==="prefix"||o.postfix&&f==="postfix"||o.infix&&f==="infix")&&o[f].type!==n.id||o.infix&&f==="postfix"||o.postfix&&f==="infix")&&r.value!==0)e.throw_error(pl.error.permission("create","operator",a,t.indicator));else return o[f]&&(remove(e.session.__operators[o[f].priority][a.id],n.id),e.session.__operators[o[f].priority][a.id].length===0&&delete e.session.__operators[o[f].priority][a.id]),r.value>0&&(e.session.__operators[r.value]||(e.session.__operators[r.value.toString()]={}),e.session.__operators[r.value][a.id]||(e.session.__operators[r.value][a.id]=[]),e.session.__operators[r.value][a.id].push(n.id)),!0}}},predicate:{"goal_expansion/2":[new Rule(new Term("goal_expansion",[new Term(",",[new Var("X"),new Var("Y")]),new Term(",",[new Var("X_"),new Var("Y_")])]),new Term(";",[new Term(",",[new Term("goal_expansion",[new Var("X"),new Var("X_")]),new Term(";",[new Term("goal_expansion",[new Var("Y"),new Var("Y_")]),new Term("=",[new Var("Y_"),new Var("Y")])])]),new Term(",",[new Term("=",[new Var("X"),new Var("X_")]),new Term("goal_expansion",[new Var("Y"),new Var("Y_")])])])),new Rule(new Term("goal_expansion",[new Term(";",[new Var("X"),new Var("Y")]),new Term(";",[new Var("X_"),new Var("Y_")])]),new Term(";",[new Term(",",[new Term("goal_expansion",[new Var("X"),new Var("X_")]),new Term(";",[new Term("goal_expansion",[new Var("Y"),new Var("Y_")]),new Term("=",[new Var("Y_"),new Var("Y")])])]),new Term(",",[new Term("=",[new Var("X"),new Var("X_")]),new Term("goal_expansion",[new Var("Y"),new Var("Y_")])])])),new Rule(new Term("goal_expansion",[new Term("->",[new Var("X"),new Var("Y")]),new Term("->",[new Var("X_"),new Var("Y_")])]),new Term(";",[new Term(",",[new Term("goal_expansion",[new Var("X"),new Var("X_")]),new Term(";",[new Term("goal_expansion",[new Var("Y"),new Var("Y_")]),new Term("=",[new Var("Y_"),new Var("Y")])])]),new Term(",",[new Term("=",[new Var("X"),new Var("X_")]),new Term("goal_expansion",[new Var("Y"),new Var("Y_")])])])),new Rule(new Term("goal_expansion",[new Term("catch",[new Var("X"),new Var("Y"),new Var("Z")]),new Term("catch",[new Var("X_"),new Var("Y"),new Var("Z_")])]),new Term(";",[new Term(",",[new Term("goal_expansion",[new Var("X"),new Var("X_")]),new Term(";",[new Term("goal_expansion",[new Var("Z"),new Var("Z_")]),new Term("=",[new Var("Z_"),new Var("Z")])])]),new Term(",",[new Term("=",[new Var("X_"),new Var("X")]),new Term("goal_expansion",[new Var("Z"),new Var("Z_")])])])),new Rule(new Term("goal_expansion",[new Term("\\+",[new Var("X")]),new Term("\\+",[new Var("X_")])]),new Term(",",[new Term("nonvar",[new Var("X")]),new Term("goal_expansion",[new Var("X"),new Var("X_")])])),new Rule(new Term("goal_expansion",[new Term("once",[new Var("X")]),new Term("once",[new Var("X_")])]),new Term(",",[new Term("nonvar",[new Var("X")]),new Term("goal_expansion",[new Var("X"),new Var("X_")])])),new Rule(new Term("goal_expansion",[new Term("findall",[new Var("X"),new Var("Y"),new Var("Z")]),new Term("findall",[new Var("X"),new Var("Y_"),new Var("Z")])]),new Term("goal_expansion",[new Var("Y"),new Var("Y_")])),new Rule(new Term("goal_expansion",[new Term("setof",[new Var("X"),new Var("Y"),new Var("Z")]),new Term("findall",[new Var("X"),new Var("Y_"),new Var("Z")])]),new Term("goal_expansion",[new Var("Y"),new Var("Y_")])),new Rule(new Term("goal_expansion",[new Term("bagof",[new Var("X"),new Var("Y"),new Var("Z")]),new Term("findall",[new Var("X"),new Var("Y_"),new Var("Z")])]),new Term("goal_expansion",[new Var("Y"),new Var("Y_")])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X")]),new Term("call",[new Var("X_")])]),new Term(",",[new Term("nonvar",[new Var("X")]),new Term("goal_expansion",[new Var("X"),new Var("X_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term("[]",[])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1"),new Var("A2")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term(".",[new Var("A2"),new Term("[]",[])])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1"),new Var("A2"),new Var("A3")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term(".",[new Var("A2"),new Term(".",[new Var("A3"),new Term("[]",[])])])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1"),new Var("A2"),new Var("A3"),new Var("A4")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term(".",[new Var("A2"),new Term(".",[new Var("A3"),new Term(".",[new Var("A4"),new Term("[]",[])])])])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1"),new Var("A2"),new Var("A3"),new Var("A4"),new Var("A5")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term(".",[new Var("A2"),new Term(".",[new Var("A3"),new Term(".",[new Var("A4"),new Term(".",[new Var("A5"),new Term("[]",[])])])])])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1"),new Var("A2"),new Var("A3"),new Var("A4"),new Var("A5"),new Var("A6")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term(".",[new Var("A2"),new Term(".",[new Var("A3"),new Term(".",[new Var("A4"),new Term(".",[new Var("A5"),new Term(".",[new Var("A6"),new Term("[]",[])])])])])])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])])),new Rule(new Term("goal_expansion",[new Term("call",[new Var("X"),new Var("A1"),new Var("A2"),new Var("A3"),new Var("A4"),new Var("A5"),new Var("A6"),new Var("A7")]),new Term("call",[new Var("F_")])]),new Term(",",[new Term("=..",[new Var("F"),new Term(".",[new Var("X"),new Term(".",[new Var("A1"),new Term(".",[new Var("A2"),new Term(".",[new Var("A3"),new Term(".",[new Var("A4"),new Term(".",[new Var("A5"),new Term(".",[new Var("A6"),new Term(".",[new Var("A7"),new Term("[]",[])])])])])])])])])]),new Term("goal_expansion",[new Var("F"),new Var("F_")])]))],"put_attr/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(!pl.type.is_variable(n))e.throw_error(pl.error.type("variable",n,r.indicator));else if(!pl.type.is_atom(a))e.throw_error(pl.error.type("atom",a,r.indicator));else{var l=t.substitution.set_attribute(n.id,a,o);e.prepend([new State(t.goal.replace(null),l,t)])}},"get_attr/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(!pl.type.is_variable(n))e.throw_error(pl.error.type("variable",n,r.indicator));else if(!pl.type.is_atom(a))e.throw_error(pl.error.type("atom",a,r.indicator));else{var l=t.substitution.get_attribute(n.id,a);l&&e.prepend([new State(t.goal.replace(new Term("=",[o,l])),t.substitution,t)])}},"op/3":function(e,t,r){pl.directive["op/3"](e,r)&&e.success(t)},"current_op/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2],l=[];for(var A in e.session.__operators)for(var f in e.session.__operators[A])for(var I=0;I/2"){var o=n.args[0],l=n.args[1],A=a,f=t.goal.replace(new Term(",",[o,new Term(",",[new Term("!"),l])])),I=t.goal.replace(new Term(",",[new Term("!"),A]));e.prepend([new State(f,t.substitution,t),new State(I,t.substitution,t)])}else e.prepend([new State(t.goal.replace(n),t.substitution,t),new State(t.goal.replace(a),t.substitution,t)])},"!/0":function(e,t,r){var n,a,o=[];for(n=t,a=null;n.parent!==null&&n.parent.goal.search(r);)if(a=n,n=n.parent,n.goal!==null){var l=n.goal.select();if(l&&l.id==="call"&&l.search(r)){n=a;break}}for(var A=e.points.length-1;A>=0;A--){for(var f=e.points[A],I=f.parent;I!==null&&I!==n.parent;)I=I.parent;I===null&&I!==n.parent&&o.push(f)}e.points=o.reverse(),e.success(t)},"\\+/1":function(e,t,r){var n=r.args[0];pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(e.level)):pl.type.is_callable(n)?e.prepend([new State(t.goal.replace(new Term(",",[new Term(",",[new Term("call",[n]),new Term("!",[])]),new Term("fail",[])])),t.substitution,t),new State(t.goal.replace(null),t.substitution,t)]):e.throw_error(pl.error.type("callable",n,e.level))},"->/2":function(e,t,r){var n=r.args[0],a=r.args[1],o=t.goal.replace(new Term(",",[n,new Term(",",[new Term("!"),a])]));e.prepend([new State(o,t.substitution,t)])},"fail/0":function(e,t,r){},"false/0":function(e,t,r){},"true/0":function(e,t,r){e.success(t)},"call/1":callN(1),"call/2":callN(2),"call/3":callN(3),"call/4":callN(4),"call/5":callN(5),"call/6":callN(6),"call/7":callN(7),"call/8":callN(8),"once/1":function(e,t,r){var n=r.args[0];e.prepend([new State(t.goal.replace(new Term(",",[new Term("call",[n]),new Term("!",[])])),t.substitution,t)])},"forall/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term("\\+",[new Term(",",[new Term("call",[n]),new Term("\\+",[new Term("call",[a])])])])),t.substitution,t)])},"repeat/0":function(e,t,r){e.prepend([new State(t.goal.replace(null),t.substitution,t),t])},"throw/1":function(e,t,r){pl.type.is_variable(r.args[0])?e.throw_error(pl.error.instantiation(e.level)):e.throw_error(r.args[0])},"catch/3":function(e,t,r){var n=e.points;e.points=[],e.prepend([new State(r.args[0],t.substitution,t)]);var a=e.session.format_success,o=e.session.format_error;e.session.format_success=function(A){return A.substitution},e.session.format_error=function(A){return A.goal};var l=function(A){var f=e.points;if(e.points=n,e.session.format_success=a,e.session.format_error=o,pl.type.is_error(A)){for(var I=[],C=e.points.length-1;C>=0;C--){for(var N=e.points[C],b=N.parent;b!==null&&b!==t.parent;)b=b.parent;b===null&&b!==t.parent&&I.push(N)}e.points=I;var E=e.get_flag("occurs_check").indicator==="true/0",N=new State,B=pl.unify(A.args[0],r.args[1],E);B!==null?(N.substitution=t.substitution.apply(B),N.goal=t.goal.replace(r.args[2]).apply(B),N.parent=t,e.prepend([N])):e.throw_error(A.args[0])}else if(A!==!1){for(var F=A===null?[]:[new State(t.goal.apply(A).replace(null),t.substitution.apply(A),t)],Q=[],C=f.length-1;C>=0;C--){Q.push(f[C]);var X=f[C].goal!==null?f[C].goal.select():null;if(pl.type.is_term(X)&&X.indicator==="!/0")break}var ae=map(Q,function(ne){return ne.goal===null&&(ne.goal=new Term("true",[])),ne=new State(t.goal.replace(new Term("catch",[ne.goal,r.args[1],r.args[2]])),t.substitution.apply(ne.substitution),ne.parent),ne.exclude=r.args[0].variables(),ne}).reverse();e.prepend(ae),e.prepend(F),A===null&&(this.current_limit=0,e.__calls.shift()(null))}};e.__calls.unshift(l)},"=/2":function(e,t,r){var n=e.get_flag("occurs_check").indicator==="true/0",a=new State,o=pl.unify(r.args[0],r.args[1],n);o!==null&&(a.goal=t.goal.apply(o).replace(null),a.substitution=t.substitution.apply(o),a.parent=t,e.prepend([a]))},"unify_with_occurs_check/2":function(e,t,r){var n=new State,a=pl.unify(r.args[0],r.args[1],!0);a!==null&&(n.goal=t.goal.apply(a).replace(null),n.substitution=t.substitution.apply(a),n.parent=t,e.prepend([n]))},"\\=/2":function(e,t,r){var n=e.get_flag("occurs_check").indicator==="true/0",a=pl.unify(r.args[0],r.args[1],n);a===null&&e.success(t)},"subsumes_term/2":function(e,t,r){var n=e.get_flag("occurs_check").indicator==="true/0",a=pl.unify(r.args[1],r.args[0],n);a!==null&&r.args[1].apply(a).equals(r.args[1])&&e.success(t)},"findall/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(pl.type.is_variable(a))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(a))e.throw_error(pl.error.type("callable",a,r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_list(o))e.throw_error(pl.error.type("list",o,r.indicator));else{var l=e.next_free_variable(),A=new Term(",",[a,new Term("=",[l,n])]),f=e.points,I=e.session.limit,C=e.session.format_success;e.session.format_success=function(N){return N.substitution},e.add_goal(A,!0,t);var b=[],E=function(N){if(N!==!1&&N!==null&&!pl.type.is_error(N))e.__calls.unshift(E),b.push(N.links[l.id]),e.session.limit=e.current_limit;else if(e.points=f,e.session.limit=I,e.session.format_success=C,pl.type.is_error(N))e.throw_error(N.args[0]);else if(e.current_limit>0){for(var B=new Term("[]"),F=b.length-1;F>=0;F--)B=new Term(".",[b[F],B]);e.prepend([new State(t.goal.replace(new Term("=",[o,B])),t.substitution,t)])}};e.__calls.unshift(E)}},"bagof/3":function(e,t,r){var n,a=r.args[0],o=r.args[1],l=r.args[2];if(pl.type.is_variable(o))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(o))e.throw_error(pl.error.type("callable",o,r.indicator));else if(!pl.type.is_variable(l)&&!pl.type.is_list(l))e.throw_error(pl.error.type("list",l,r.indicator));else{var A=e.next_free_variable(),f;o.indicator==="^/2"?(f=o.args[0].variables(),o=o.args[1]):f=[],f=f.concat(a.variables());for(var I=o.variables().filter(function(ae){return indexOf(f,ae)===-1}),C=new Term("[]"),b=I.length-1;b>=0;b--)C=new Term(".",[new Var(I[b]),C]);var E=new Term(",",[o,new Term("=",[A,new Term(",",[C,a])])]),N=e.points,B=e.session.limit,F=e.session.format_success;e.session.format_success=function(ae){return ae.substitution},e.add_goal(E,!0,t);var Q=[],X=function(ae){if(ae!==!1&&ae!==null&&!pl.type.is_error(ae)){e.__calls.unshift(X);var ne=!1,ce=ae.links[A.id].args[0],fe=ae.links[A.id].args[1];for(var ue in Q)if(Q.hasOwnProperty(ue)){var de=Q[ue];if(de.variables.equals(ce)){de.answers.push(fe),ne=!0;break}}ne||Q.push({variables:ce,answers:[fe]}),e.session.limit=e.current_limit}else if(e.points=N,e.session.limit=B,e.session.format_success=F,pl.type.is_error(ae))e.throw_error(ae.args[0]);else if(e.current_limit>0){for(var be=[],Se=0;Se=0;k--)De=new Term(".",[ae[k],De]);be.push(new State(t.goal.replace(new Term(",",[new Term("=",[C,Q[Se].variables]),new Term("=",[l,De])])),t.substitution,t))}e.prepend(be)}};e.__calls.unshift(X)}},"setof/3":function(e,t,r){var n,a=r.args[0],o=r.args[1],l=r.args[2];if(pl.type.is_variable(o))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(o))e.throw_error(pl.error.type("callable",o,r.indicator));else if(!pl.type.is_variable(l)&&!pl.type.is_list(l))e.throw_error(pl.error.type("list",l,r.indicator));else{var A=e.next_free_variable(),f;o.indicator==="^/2"?(f=o.args[0].variables(),o=o.args[1]):f=[],f=f.concat(a.variables());for(var I=o.variables().filter(function(ae){return indexOf(f,ae)===-1}),C=new Term("[]"),b=I.length-1;b>=0;b--)C=new Term(".",[new Var(I[b]),C]);var E=new Term(",",[o,new Term("=",[A,new Term(",",[C,a])])]),N=e.points,B=e.session.limit,F=e.session.format_success;e.session.format_success=function(ae){return ae.substitution},e.add_goal(E,!0,t);var Q=[],X=function(ae){if(ae!==!1&&ae!==null&&!pl.type.is_error(ae)){e.__calls.unshift(X);var ne=!1,ce=ae.links[A.id].args[0],fe=ae.links[A.id].args[1];for(var ue in Q)if(Q.hasOwnProperty(ue)){var de=Q[ue];if(de.variables.equals(ce)){de.answers.push(fe),ne=!0;break}}ne||Q.push({variables:ce,answers:[fe]}),e.session.limit=e.current_limit}else if(e.points=N,e.session.limit=B,e.session.format_success=F,pl.type.is_error(ae))e.throw_error(ae.args[0]);else if(e.current_limit>0){for(var be=[],Se=0;Se0;Se--)ae[Se].equals(ae[Se-1])&&ae.splice(Se,1);for(var De=new Term("[]"),k=ae.length-1;k>=0;k--)De=new Term(".",[ae[k],De]);be.push(new State(t.goal.replace(new Term(",",[new Term("=",[C,Q[Se].variables]),new Term("=",[l,De])])),t.substitution,t))}e.prepend(be)}};e.__calls.unshift(X)}},"functor/3":function(e,t,r){var n,a=r.args[0],o=r.args[1],l=r.args[2];if(pl.type.is_variable(a)&&(pl.type.is_variable(o)||pl.type.is_variable(l)))e.throw_error(pl.error.instantiation("functor/3"));else if(!pl.type.is_variable(l)&&!pl.type.is_integer(l))e.throw_error(pl.error.type("integer",r.args[2],"functor/3"));else if(!pl.type.is_variable(o)&&!pl.type.is_atomic(o))e.throw_error(pl.error.type("atomic",r.args[1],"functor/3"));else if(pl.type.is_integer(o)&&pl.type.is_integer(l)&&l.value!==0)e.throw_error(pl.error.type("atom",r.args[1],"functor/3"));else if(pl.type.is_variable(a)){if(r.args[2].value>=0){for(var A=[],f=0;f0&&n<=r.args[1].args.length){var a=new Term("=",[r.args[1].args[n-1],r.args[2]]);e.prepend([new State(t.goal.replace(a),t.substitution,t)])}}},"=../2":function(e,t,r){var n;if(pl.type.is_variable(r.args[0])&&(pl.type.is_variable(r.args[1])||pl.type.is_non_empty_list(r.args[1])&&pl.type.is_variable(r.args[1].args[0])))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_fully_list(r.args[1]))e.throw_error(pl.error.type("list",r.args[1],r.indicator));else if(pl.type.is_variable(r.args[0])){if(!pl.type.is_variable(r.args[1])){var o=[];for(n=r.args[1].args[1];n.indicator==="./2";)o.push(n.args[0]),n=n.args[1];pl.type.is_variable(r.args[0])&&pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(r.indicator)):o.length===0&&pl.type.is_compound(r.args[1].args[0])?e.throw_error(pl.error.type("atomic",r.args[1].args[0],r.indicator)):o.length>0&&(pl.type.is_compound(r.args[1].args[0])||pl.type.is_number(r.args[1].args[0]))?e.throw_error(pl.error.type("atom",r.args[1].args[0],r.indicator)):o.length===0?e.prepend([new State(t.goal.replace(new Term("=",[r.args[1].args[0],r.args[0]],t)),t.substitution,t)]):e.prepend([new State(t.goal.replace(new Term("=",[new Term(r.args[1].args[0].id,o),r.args[0]])),t.substitution,t)])}}else{if(pl.type.is_atomic(r.args[0]))n=new Term(".",[r.args[0],new Term("[]")]);else{n=new Term("[]");for(var a=r.args[0].args.length-1;a>=0;a--)n=new Term(".",[r.args[0].args[a],n]);n=new Term(".",[new Term(r.args[0].id),n])}e.prepend([new State(t.goal.replace(new Term("=",[n,r.args[1]])),t.substitution,t)])}},"copy_term/2":function(e,t,r){var n=r.args[0].rename(e);e.prepend([new State(t.goal.replace(new Term("=",[n,r.args[1]])),t.substitution,t.parent)])},"term_variables/2":function(e,t,r){var n=r.args[0],a=r.args[1];if(!pl.type.is_fully_list(a))e.throw_error(pl.error.type("list",a,r.indicator));else{var o=arrayToList(map(nub(n.variables()),function(l){return new Var(l)}));e.prepend([new State(t.goal.replace(new Term("=",[a,o])),t.substitution,t)])}},"clause/2":function(e,t,r){if(pl.type.is_variable(r.args[0]))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(r.args[0]))e.throw_error(pl.error.type("callable",r.args[0],r.indicator));else if(!pl.type.is_variable(r.args[1])&&!pl.type.is_callable(r.args[1]))e.throw_error(pl.error.type("callable",r.args[1],r.indicator));else if(e.session.rules[r.args[0].indicator]!==void 0)if(e.is_public_predicate(r.args[0].indicator)){var n=[];for(var a in e.session.rules[r.args[0].indicator])if(e.session.rules[r.args[0].indicator].hasOwnProperty(a)){var o=e.session.rules[r.args[0].indicator][a];e.session.renamed_variables={},o=o.rename(e),o.body===null&&(o.body=new Term("true"));var l=new Term(",",[new Term("=",[o.head,r.args[0]]),new Term("=",[o.body,r.args[1]])]);n.push(new State(t.goal.replace(l),t.substitution,t))}e.prepend(n)}else e.throw_error(pl.error.permission("access","private_procedure",r.args[0].indicator,r.indicator))},"current_predicate/1":function(e,t,r){var n=r.args[0];if(!pl.type.is_variable(n)&&(!pl.type.is_compound(n)||n.indicator!=="//2"))e.throw_error(pl.error.type("predicate_indicator",n,r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_variable(n.args[0])&&!pl.type.is_atom(n.args[0]))e.throw_error(pl.error.type("atom",n.args[0],r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_variable(n.args[1])&&!pl.type.is_integer(n.args[1]))e.throw_error(pl.error.type("integer",n.args[1],r.indicator));else{var a=[];for(var o in e.session.rules)if(e.session.rules.hasOwnProperty(o)){var l=o.lastIndexOf("/"),A=o.substr(0,l),f=parseInt(o.substr(l+1,o.length-(l+1))),I=new Term("/",[new Term(A),new Num(f,!1)]),C=new Term("=",[I,n]);a.push(new State(t.goal.replace(C),t.substitution,t))}e.prepend(a)}},"asserta/1":function(e,t,r){if(pl.type.is_variable(r.args[0]))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(r.args[0]))e.throw_error(pl.error.type("callable",r.args[0],r.indicator));else{var n,a;r.args[0].indicator===":-/2"?(n=r.args[0].args[0],a=body_conversion(r.args[0].args[1])):(n=r.args[0],a=null),pl.type.is_callable(n)?a!==null&&!pl.type.is_callable(a)?e.throw_error(pl.error.type("callable",a,r.indicator)):e.is_public_predicate(n.indicator)?(e.session.rules[n.indicator]===void 0&&(e.session.rules[n.indicator]=[]),e.session.public_predicates[n.indicator]=!0,e.session.rules[n.indicator]=[new Rule(n,a,!0)].concat(e.session.rules[n.indicator]),e.success(t)):e.throw_error(pl.error.permission("modify","static_procedure",n.indicator,r.indicator)):e.throw_error(pl.error.type("callable",n,r.indicator))}},"assertz/1":function(e,t,r){if(pl.type.is_variable(r.args[0]))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(r.args[0]))e.throw_error(pl.error.type("callable",r.args[0],r.indicator));else{var n,a;r.args[0].indicator===":-/2"?(n=r.args[0].args[0],a=body_conversion(r.args[0].args[1])):(n=r.args[0],a=null),pl.type.is_callable(n)?a!==null&&!pl.type.is_callable(a)?e.throw_error(pl.error.type("callable",a,r.indicator)):e.is_public_predicate(n.indicator)?(e.session.rules[n.indicator]===void 0&&(e.session.rules[n.indicator]=[]),e.session.public_predicates[n.indicator]=!0,e.session.rules[n.indicator].push(new Rule(n,a,!0)),e.success(t)):e.throw_error(pl.error.permission("modify","static_procedure",n.indicator,r.indicator)):e.throw_error(pl.error.type("callable",n,r.indicator))}},"retract/1":function(e,t,r){if(pl.type.is_variable(r.args[0]))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(r.args[0]))e.throw_error(pl.error.type("callable",r.args[0],r.indicator));else{var n,a;if(r.args[0].indicator===":-/2"?(n=r.args[0].args[0],a=r.args[0].args[1]):(n=r.args[0],a=new Term("true")),typeof t.retract>"u")if(e.is_public_predicate(n.indicator)){if(e.session.rules[n.indicator]!==void 0){for(var o=[],l=0;le.get_flag("max_arity").value)e.throw_error(pl.error.representation("max_arity",r.indicator));else{var n=r.args[0].args[0].id+"/"+r.args[0].args[1].value;e.is_public_predicate(n)?(delete e.session.rules[n],e.success(t)):e.throw_error(pl.error.permission("modify","static_procedure",n,r.indicator))}},"atom_length/2":function(e,t,r){if(pl.type.is_variable(r.args[0]))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_atom(r.args[0]))e.throw_error(pl.error.type("atom",r.args[0],r.indicator));else if(!pl.type.is_variable(r.args[1])&&!pl.type.is_integer(r.args[1]))e.throw_error(pl.error.type("integer",r.args[1],r.indicator));else if(pl.type.is_integer(r.args[1])&&r.args[1].value<0)e.throw_error(pl.error.domain("not_less_than_zero",r.args[1],r.indicator));else{var n=new Num(stringLength(r.args[0].id),!1);e.prepend([new State(t.goal.replace(new Term("=",[n,r.args[1]])),t.substitution,t)])}},"atom_concat/3":function(e,t,r){var n,a,o=r.args[0],l=r.args[1],A=r.args[2];if(pl.type.is_variable(A)&&(pl.type.is_variable(o)||pl.type.is_variable(l)))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_atom(o))e.throw_error(pl.error.type("atom",o,r.indicator));else if(!pl.type.is_variable(l)&&!pl.type.is_atom(l))e.throw_error(pl.error.type("atom",l,r.indicator));else if(!pl.type.is_variable(A)&&!pl.type.is_atom(A))e.throw_error(pl.error.type("atom",A,r.indicator));else{var f=pl.type.is_variable(o),I=pl.type.is_variable(l);if(!f&&!I)a=new Term("=",[A,new Term(o.id+l.id)]),e.prepend([new State(t.goal.replace(a),t.substitution,t)]);else if(f&&!I)n=A.id.substr(0,A.id.length-l.id.length),n+l.id===A.id&&(a=new Term("=",[o,new Term(n)]),e.prepend([new State(t.goal.replace(a),t.substitution,t)]));else if(I&&!f)n=A.id.substr(o.id.length),o.id+n===A.id&&(a=new Term("=",[l,new Term(n)]),e.prepend([new State(t.goal.replace(a),t.substitution,t)]));else{for(var C=[],b=0;b<=A.id.length;b++){var E=new Term(A.id.substr(0,b)),N=new Term(A.id.substr(b));a=new Term(",",[new Term("=",[E,o]),new Term("=",[N,l])]),C.push(new State(t.goal.replace(a),t.substitution,t))}e.prepend(C)}}},"sub_atom/5":function(e,t,r){var n,a=r.args[0],o=r.args[1],l=r.args[2],A=r.args[3],f=r.args[4];if(pl.type.is_variable(a))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_integer(o))e.throw_error(pl.error.type("integer",o,r.indicator));else if(!pl.type.is_variable(l)&&!pl.type.is_integer(l))e.throw_error(pl.error.type("integer",l,r.indicator));else if(!pl.type.is_variable(A)&&!pl.type.is_integer(A))e.throw_error(pl.error.type("integer",A,r.indicator));else if(pl.type.is_integer(o)&&o.value<0)e.throw_error(pl.error.domain("not_less_than_zero",o,r.indicator));else if(pl.type.is_integer(l)&&l.value<0)e.throw_error(pl.error.domain("not_less_than_zero",l,r.indicator));else if(pl.type.is_integer(A)&&A.value<0)e.throw_error(pl.error.domain("not_less_than_zero",A,r.indicator));else{var I=[],C=[],b=[];if(pl.type.is_variable(o))for(n=0;n<=a.id.length;n++)I.push(n);else I.push(o.value);if(pl.type.is_variable(l))for(n=0;n<=a.id.length;n++)C.push(n);else C.push(l.value);if(pl.type.is_variable(A))for(n=0;n<=a.id.length;n++)b.push(n);else b.push(A.value);var E=[];for(var N in I)if(I.hasOwnProperty(N)){n=I[N];for(var B in C)if(C.hasOwnProperty(B)){var F=C[B],Q=a.id.length-n-F;if(indexOf(b,Q)!==-1&&n+F+Q===a.id.length){var X=a.id.substr(n,F);if(a.id===a.id.substr(0,n)+X+a.id.substr(n+F,Q)){var ae=new Term("=",[new Term(X),f]),ne=new Term("=",[o,new Num(n)]),ce=new Term("=",[l,new Num(F)]),fe=new Term("=",[A,new Num(Q)]),ue=new Term(",",[new Term(",",[new Term(",",[ne,ce]),fe]),ae]);E.push(new State(t.goal.replace(ue),t.substitution,t))}}}}e.prepend(E)}},"atom_chars/2":function(e,t,r){var n=r.args[0],a=r.args[1];if(pl.type.is_variable(n)&&pl.type.is_variable(a))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_atom(n))e.throw_error(pl.error.type("atom",n,r.indicator));else if(pl.type.is_variable(n)){for(var f=a,I=pl.type.is_variable(n),C="";f.indicator==="./2";){if(pl.type.is_character(f.args[0]))C+=f.args[0].id;else if(pl.type.is_variable(f.args[0])&&I){e.throw_error(pl.error.instantiation(r.indicator));return}else if(!pl.type.is_variable(f.args[0])){e.throw_error(pl.error.type("character",f.args[0],r.indicator));return}f=f.args[1]}pl.type.is_variable(f)&&I?e.throw_error(pl.error.instantiation(r.indicator)):!pl.type.is_empty_list(f)&&!pl.type.is_variable(f)?e.throw_error(pl.error.type("list",a,r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[new Term(C),n])),t.substitution,t)])}else{for(var o=new Term("[]"),l=stringLength(n.id),A=l-1;A>=0;A--)o=new Term(".",[new Term(n.id.charAt(A)),o]);e.prepend([new State(t.goal.replace(new Term("=",[a,o])),t.substitution,t)])}},"atom_codes/2":function(e,t,r){var n=r.args[0],a=r.args[1];if(pl.type.is_variable(n)&&pl.type.is_variable(a))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_atom(n))e.throw_error(pl.error.type("atom",n,r.indicator));else if(pl.type.is_variable(n)){for(var f=a,I=pl.type.is_variable(n),C="";f.indicator==="./2";){if(pl.type.is_character_code(f.args[0]))C+=fromCodePoint(f.args[0].value);else if(pl.type.is_variable(f.args[0])&&I){e.throw_error(pl.error.instantiation(r.indicator));return}else if(!pl.type.is_variable(f.args[0])){e.throw_error(pl.error.representation("character_code",r.indicator));return}f=f.args[1]}pl.type.is_variable(f)&&I?e.throw_error(pl.error.instantiation(r.indicator)):!pl.type.is_empty_list(f)&&!pl.type.is_variable(f)?e.throw_error(pl.error.type("list",a,r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[new Term(C),n])),t.substitution,t)])}else{for(var o=new Term("[]"),l=stringLength(n.id),A=l-1;A>=0;A--)o=new Term(".",[new Num(codePointAt(n.id,A),!1),o]);e.prepend([new State(t.goal.replace(new Term("=",[a,o])),t.substitution,t)])}},"char_code/2":function(e,t,r){var n=r.args[0],a=r.args[1];if(pl.type.is_variable(n)&&pl.type.is_variable(a))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_character(n))e.throw_error(pl.error.type("character",n,r.indicator));else if(!pl.type.is_variable(a)&&!pl.type.is_integer(a))e.throw_error(pl.error.type("integer",a,r.indicator));else if(!pl.type.is_variable(a)&&!pl.type.is_character_code(a))e.throw_error(pl.error.representation("character_code",r.indicator));else if(pl.type.is_variable(a)){var o=new Num(codePointAt(n.id,0),!1);e.prepend([new State(t.goal.replace(new Term("=",[o,a])),t.substitution,t)])}else{var l=new Term(fromCodePoint(a.value));e.prepend([new State(t.goal.replace(new Term("=",[l,n])),t.substitution,t)])}},"number_chars/2":function(e,t,r){var n,a=r.args[0],o=r.args[1];if(pl.type.is_variable(a)&&pl.type.is_variable(o))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(a)&&!pl.type.is_number(a))e.throw_error(pl.error.type("number",a,r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_list(o))e.throw_error(pl.error.type("list",o,r.indicator));else{var l=pl.type.is_variable(a);if(!pl.type.is_variable(o)){var A=o,f=!0;for(n="";A.indicator==="./2";){if(pl.type.is_character(A.args[0]))n+=A.args[0].id;else if(pl.type.is_variable(A.args[0]))f=!1;else if(!pl.type.is_variable(A.args[0])){e.throw_error(pl.error.type("character",A.args[0],r.indicator));return}A=A.args[1]}if(f=f&&pl.type.is_empty_list(A),!pl.type.is_empty_list(A)&&!pl.type.is_variable(A)){e.throw_error(pl.error.type("list",o,r.indicator));return}if(!f&&l){e.throw_error(pl.error.instantiation(r.indicator));return}else if(f)if(pl.type.is_variable(A)&&l){e.throw_error(pl.error.instantiation(r.indicator));return}else{var I=e.parse(n),C=I.value;!pl.type.is_number(C)||I.tokens[I.tokens.length-1].space?e.throw_error(pl.error.syntax_by_predicate("parseable_number",r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[a,C])),t.substitution,t)]);return}}if(!l){n=a.toString();for(var b=new Term("[]"),E=n.length-1;E>=0;E--)b=new Term(".",[new Term(n.charAt(E)),b]);e.prepend([new State(t.goal.replace(new Term("=",[o,b])),t.substitution,t)])}}},"number_codes/2":function(e,t,r){var n,a=r.args[0],o=r.args[1];if(pl.type.is_variable(a)&&pl.type.is_variable(o))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(a)&&!pl.type.is_number(a))e.throw_error(pl.error.type("number",a,r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_list(o))e.throw_error(pl.error.type("list",o,r.indicator));else{var l=pl.type.is_variable(a);if(!pl.type.is_variable(o)){var A=o,f=!0;for(n="";A.indicator==="./2";){if(pl.type.is_character_code(A.args[0]))n+=fromCodePoint(A.args[0].value);else if(pl.type.is_variable(A.args[0]))f=!1;else if(!pl.type.is_variable(A.args[0])){e.throw_error(pl.error.type("character_code",A.args[0],r.indicator));return}A=A.args[1]}if(f=f&&pl.type.is_empty_list(A),!pl.type.is_empty_list(A)&&!pl.type.is_variable(A)){e.throw_error(pl.error.type("list",o,r.indicator));return}if(!f&&l){e.throw_error(pl.error.instantiation(r.indicator));return}else if(f)if(pl.type.is_variable(A)&&l){e.throw_error(pl.error.instantiation(r.indicator));return}else{var I=e.parse(n),C=I.value;!pl.type.is_number(C)||I.tokens[I.tokens.length-1].space?e.throw_error(pl.error.syntax_by_predicate("parseable_number",r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[a,C])),t.substitution,t)]);return}}if(!l){n=a.toString();for(var b=new Term("[]"),E=n.length-1;E>=0;E--)b=new Term(".",[new Num(codePointAt(n,E),!1),b]);e.prepend([new State(t.goal.replace(new Term("=",[o,b])),t.substitution,t)])}}},"upcase_atom/2":function(e,t,r){var n=r.args[0],a=r.args[1];pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(r.indicator)):pl.type.is_atom(n)?!pl.type.is_variable(a)&&!pl.type.is_atom(a)?e.throw_error(pl.error.type("atom",a,r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[a,new Term(n.id.toUpperCase(),[])])),t.substitution,t)]):e.throw_error(pl.error.type("atom",n,r.indicator))},"downcase_atom/2":function(e,t,r){var n=r.args[0],a=r.args[1];pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(r.indicator)):pl.type.is_atom(n)?!pl.type.is_variable(a)&&!pl.type.is_atom(a)?e.throw_error(pl.error.type("atom",a,r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[a,new Term(n.id.toLowerCase(),[])])),t.substitution,t)]):e.throw_error(pl.error.type("atom",n,r.indicator))},"atomic_list_concat/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term("atomic_list_concat",[n,new Term("",[]),a])),t.substitution,t)])},"atomic_list_concat/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(pl.type.is_variable(a)||pl.type.is_variable(n)&&pl.type.is_variable(o))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_list(n))e.throw_error(pl.error.type("list",n,r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_atom(o))e.throw_error(pl.error.type("atom",o,r.indicator));else if(pl.type.is_variable(o)){for(var A="",f=n;pl.type.is_term(f)&&f.indicator==="./2";){if(!pl.type.is_atom(f.args[0])&&!pl.type.is_number(f.args[0])){e.throw_error(pl.error.type("atomic",f.args[0],r.indicator));return}A!==""&&(A+=a.id),pl.type.is_atom(f.args[0])?A+=f.args[0].id:A+=""+f.args[0].value,f=f.args[1]}A=new Term(A,[]),pl.type.is_variable(f)?e.throw_error(pl.error.instantiation(r.indicator)):!pl.type.is_term(f)||f.indicator!=="[]/0"?e.throw_error(pl.error.type("list",n,r.indicator)):e.prepend([new State(t.goal.replace(new Term("=",[A,o])),t.substitution,t)])}else{var l=arrayToList(map(o.id.split(a.id),function(I){return new Term(I,[])}));e.prepend([new State(t.goal.replace(new Term("=",[l,n])),t.substitution,t)])}},"@=/2":function(e,t,r){pl.compare(r.args[0],r.args[1])>0&&e.success(t)},"@>=/2":function(e,t,r){pl.compare(r.args[0],r.args[1])>=0&&e.success(t)},"compare/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(!pl.type.is_variable(n)&&!pl.type.is_atom(n))e.throw_error(pl.error.type("atom",n,r.indicator));else if(pl.type.is_atom(n)&&["<",">","="].indexOf(n.id)===-1)e.throw_error(pl.type.domain("order",n,r.indicator));else{var l=pl.compare(a,o);l=l===0?"=":l===-1?"<":">",e.prepend([new State(t.goal.replace(new Term("=",[n,new Term(l,[])])),t.substitution,t)])}},"is/2":function(e,t,r){var n=r.args[1].interpret(e);pl.type.is_number(n)?e.prepend([new State(t.goal.replace(new Term("=",[r.args[0],n],e.level)),t.substitution,t)]):e.throw_error(n)},"between/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(pl.type.is_variable(n)||pl.type.is_variable(a))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_integer(n))e.throw_error(pl.error.type("integer",n,r.indicator));else if(!pl.type.is_integer(a))e.throw_error(pl.error.type("integer",a,r.indicator));else if(!pl.type.is_variable(o)&&!pl.type.is_integer(o))e.throw_error(pl.error.type("integer",o,r.indicator));else if(pl.type.is_variable(o)){var l=[new State(t.goal.replace(new Term("=",[o,n])),t.substitution,t)];n.value=o.value&&e.success(t)},"succ/2":function(e,t,r){var n=r.args[0],a=r.args[1];pl.type.is_variable(n)&&pl.type.is_variable(a)?e.throw_error(pl.error.instantiation(r.indicator)):!pl.type.is_variable(n)&&!pl.type.is_integer(n)?e.throw_error(pl.error.type("integer",n,r.indicator)):!pl.type.is_variable(a)&&!pl.type.is_integer(a)?e.throw_error(pl.error.type("integer",a,r.indicator)):!pl.type.is_variable(n)&&n.value<0?e.throw_error(pl.error.domain("not_less_than_zero",n,r.indicator)):!pl.type.is_variable(a)&&a.value<0?e.throw_error(pl.error.domain("not_less_than_zero",a,r.indicator)):(pl.type.is_variable(a)||a.value>0)&&(pl.type.is_variable(n)?e.prepend([new State(t.goal.replace(new Term("=",[n,new Num(a.value-1,!1)])),t.substitution,t)]):e.prepend([new State(t.goal.replace(new Term("=",[a,new Num(n.value+1,!1)])),t.substitution,t)]))},"=:=/2":function(e,t,r){var n=pl.arithmetic_compare(e,r.args[0],r.args[1]);pl.type.is_term(n)?e.throw_error(n):n===0&&e.success(t)},"=\\=/2":function(e,t,r){var n=pl.arithmetic_compare(e,r.args[0],r.args[1]);pl.type.is_term(n)?e.throw_error(n):n!==0&&e.success(t)},"/2":function(e,t,r){var n=pl.arithmetic_compare(e,r.args[0],r.args[1]);pl.type.is_term(n)?e.throw_error(n):n>0&&e.success(t)},">=/2":function(e,t,r){var n=pl.arithmetic_compare(e,r.args[0],r.args[1]);pl.type.is_term(n)?e.throw_error(n):n>=0&&e.success(t)},"var/1":function(e,t,r){pl.type.is_variable(r.args[0])&&e.success(t)},"atom/1":function(e,t,r){pl.type.is_atom(r.args[0])&&e.success(t)},"atomic/1":function(e,t,r){pl.type.is_atomic(r.args[0])&&e.success(t)},"compound/1":function(e,t,r){pl.type.is_compound(r.args[0])&&e.success(t)},"integer/1":function(e,t,r){pl.type.is_integer(r.args[0])&&e.success(t)},"float/1":function(e,t,r){pl.type.is_float(r.args[0])&&e.success(t)},"number/1":function(e,t,r){pl.type.is_number(r.args[0])&&e.success(t)},"nonvar/1":function(e,t,r){pl.type.is_variable(r.args[0])||e.success(t)},"ground/1":function(e,t,r){r.variables().length===0&&e.success(t)},"acyclic_term/1":function(e,t,r){for(var n=t.substitution.apply(t.substitution),a=r.args[0].variables(),o=0;o0?B[B.length-1]:null,B!==null&&(E=parseExpr(e,B,0,e.__get_max_priority(),!1))}if(E.type===SUCCESS&&E.len===B.length-1&&F.value==="."){E=E.value.rename(e);var Q=new Term("=",[a,E]);if(A.variables){var X=arrayToList(map(nub(E.variables()),function(ae){return new Var(ae)}));Q=new Term(",",[Q,new Term("=",[A.variables,X])])}if(A.variable_names){var X=arrayToList(map(nub(E.variables()),function(ne){var ce;for(ce in e.session.renamed_variables)if(e.session.renamed_variables.hasOwnProperty(ce)&&e.session.renamed_variables[ce]===ne)break;return new Term("=",[new Term(ce,[]),new Var(ne)])}));Q=new Term(",",[Q,new Term("=",[A.variable_names,X])])}if(A.singletons){var X=arrayToList(map(new Rule(E,null).singleton_variables(),function(ne){var ce;for(ce in e.session.renamed_variables)if(e.session.renamed_variables.hasOwnProperty(ce)&&e.session.renamed_variables[ce]===ne)break;return new Term("=",[new Term(ce,[]),new Var(ne)])}));Q=new Term(",",[Q,new Term("=",[A.singletons,X])])}e.prepend([new State(t.goal.replace(Q),t.substitution,t)])}else E.type===SUCCESS?e.throw_error(pl.error.syntax(B[E.len],"unexpected token",!1)):e.throw_error(E.value)}}},"write/1":function(e,t,r){var n=r.args[0];e.prepend([new State(t.goal.replace(new Term(",",[new Term("current_output",[new Var("S")]),new Term("write",[new Var("S"),n])])),t.substitution,t)])},"write/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term("write_term",[n,a,new Term(".",[new Term("quoted",[new Term("false",[])]),new Term(".",[new Term("ignore_ops",[new Term("false")]),new Term(".",[new Term("numbervars",[new Term("true")]),new Term("[]",[])])])])])),t.substitution,t)])},"writeq/1":function(e,t,r){var n=r.args[0];e.prepend([new State(t.goal.replace(new Term(",",[new Term("current_output",[new Var("S")]),new Term("writeq",[new Var("S"),n])])),t.substitution,t)])},"writeq/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term("write_term",[n,a,new Term(".",[new Term("quoted",[new Term("true",[])]),new Term(".",[new Term("ignore_ops",[new Term("false")]),new Term(".",[new Term("numbervars",[new Term("true")]),new Term("[]",[])])])])])),t.substitution,t)])},"write_canonical/1":function(e,t,r){var n=r.args[0];e.prepend([new State(t.goal.replace(new Term(",",[new Term("current_output",[new Var("S")]),new Term("write_canonical",[new Var("S"),n])])),t.substitution,t)])},"write_canonical/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term("write_term",[n,a,new Term(".",[new Term("quoted",[new Term("true",[])]),new Term(".",[new Term("ignore_ops",[new Term("true")]),new Term(".",[new Term("numbervars",[new Term("false")]),new Term("[]",[])])])])])),t.substitution,t)])},"write_term/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term(",",[new Term("current_output",[new Var("S")]),new Term("write_term",[new Var("S"),n,a])])),t.substitution,t)])},"write_term/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2],l=pl.type.is_stream(n)?n:e.get_stream_by_alias(n.id);if(pl.type.is_variable(n)||pl.type.is_variable(o))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_list(o))e.throw_error(pl.error.type("list",o,r.indicator));else if(!pl.type.is_stream(n)&&!pl.type.is_atom(n))e.throw_error(pl.error.domain("stream_or_alias",n,r.indicator));else if(!pl.type.is_stream(l)||l.stream===null)e.throw_error(pl.error.existence("stream",n,r.indicator));else if(l.input)e.throw_error(pl.error.permission("output","stream",n,r.indicator));else if(l.type==="binary")e.throw_error(pl.error.permission("output","binary_stream",n,r.indicator));else if(l.position==="past_end_of_stream"&&l.eof_action==="error")e.throw_error(pl.error.permission("output","past_end_of_stream",n,r.indicator));else{for(var A={},f=o,I;pl.type.is_term(f)&&f.indicator==="./2";){if(I=f.args[0],pl.type.is_variable(I)){e.throw_error(pl.error.instantiation(r.indicator));return}else if(!pl.type.is_write_option(I)){e.throw_error(pl.error.domain("write_option",I,r.indicator));return}A[I.id]=I.args[0].id==="true",f=f.args[1]}if(f.indicator!=="[]/0"){pl.type.is_variable(f)?e.throw_error(pl.error.instantiation(r.indicator)):e.throw_error(pl.error.type("list",o,r.indicator));return}else{A.session=e.session;var C=a.toString(A);l.stream.put(C,l.position),typeof l.position=="number"&&(l.position+=C.length),e.success(t)}}},"halt/0":function(e,t,r){nodejs_flag&&process.exit(),e.points=[]},"halt/1":function(e,t,r){var n=r.args[0];pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(r.indicator)):pl.type.is_integer(n)?(nodejs_flag&&process.exit(n.value),e.points=[]):e.throw_error(pl.error.type("integer",n,r.indicator))},"current_prolog_flag/2":function(e,t,r){var n=r.args[0],a=r.args[1];if(!pl.type.is_variable(n)&&!pl.type.is_atom(n))e.throw_error(pl.error.type("atom",n,r.indicator));else if(!pl.type.is_variable(n)&&!pl.type.is_flag(n))e.throw_error(pl.error.domain("prolog_flag",n,r.indicator));else{var o=[];for(var l in pl.flag)if(pl.flag.hasOwnProperty(l)){var A=new Term(",",[new Term("=",[new Term(l),n]),new Term("=",[e.get_flag(l),a])]);o.push(new State(t.goal.replace(A),t.substitution,t))}e.prepend(o)}},"set_prolog_flag/2":function(e,t,r){var n=r.args[0],a=r.args[1];pl.type.is_variable(n)||pl.type.is_variable(a)?e.throw_error(pl.error.instantiation(r.indicator)):pl.type.is_atom(n)?pl.type.is_flag(n)?pl.type.is_value_flag(n,a)?pl.type.is_modifiable_flag(n)?(e.session.flag[n.id]=a,e.success(t)):e.throw_error(pl.error.permission("modify","flag",n)):e.throw_error(pl.error.domain("flag_value",new Term("+",[n,a]),r.indicator)):e.throw_error(pl.error.domain("prolog_flag",n,r.indicator)):e.throw_error(pl.error.type("atom",n,r.indicator))},"shell/1":function(e,t,r){var n=r.args[0];e.prepend([new State(t.goal.replace(new Term("shell",[n,new Num(0,!1)])),t.substitution,t)])},"shell/2":function(thread,point,atom){var command=atom.args[0],status=atom.args[1];if(pl.type.is_variable(command))thread.throw_error(pl.error.instantiation(atom.indicator));else if(!pl.type.is_atom(command))thread.throw_error(pl.error.type("atom",command,atom.indicator));else if(!pl.type.is_variable(status)&&!pl.type.is_integer(status))thread.throw_error(pl.error.type("integer",status,atom.indicator));else if(nodejs_flag){let{exec:e}=wt("child_process");return e(command.id,function(){}).on("exit",function(t){thread.prepend([new State(point.goal.replace(new Term("=",[status,new Num(t,!1)])),point.substitution,point)]),thread.again()}),!0}else try{eval(command.id),thread.prepend([new State(point.goal.replace(new Term("=",[status,new Num(0,!1)])),point.substitution,point)])}catch(e){thread.prepend([new State(point.goal.replace(new Term("=",[status,new Num(1,!1)])),point.substitution,point)])}},"consult/1":function(e,t,r){var n=r.args[0];pl.type.is_variable(n)?e.throw_error(pl.error.instantiation(r.indicator)):pl.type.is_atom(n)?e.consult(n.id)&&e.success(t):e.throw_error(pl.error.type("atom",n,r.indicator))},"get_time/1":function(e,t,r){var n=r.args[0];if(!pl.type.is_variable(n)&&!pl.type.is_number(n))e.throw_error(pl.error.type("number",n,r.indicator));else{var a=new Num(Date.now(),!0);e.prepend([new State(t.goal.replace(new Term("=",[n,a])),t.substitution,t)])}},"phrase/3":function(e,t,r){var n=r.args[0],a=r.args[1],o=r.args[2];if(pl.type.is_variable(n))e.throw_error(pl.error.instantiation(r.indicator));else if(!pl.type.is_callable(n))e.throw_error(pl.error.type("callable",n,r.indicator));else{var l=body_to_dcg(n.clone(),a,e);l!==null&&e.prepend([new State(t.goal.replace(new Term(",",[l.value,new Term("=",[l.variable,o])])),t.substitution,t)])}},"phrase/2":function(e,t,r){var n=r.args[0],a=r.args[1];e.prepend([new State(t.goal.replace(new Term("phrase",[n,a,new Term("[]",[])])),t.substitution,t)])},"version/0":function(e,t,r){var n="Welcome to Tau Prolog version "+version.major+"."+version.minor+"."+version.patch+` -`;n+=`Tau Prolog comes with ABSOLUTELY NO WARRANTY. This is free software. -`,n+=`Please run ?- license. for legal details. -`,n+="For online help and background, visit http:/tau-prolog.org",e.prepend([new State(t.goal.replace(new Term("write",[new Term(n,[])])),t.substitution,t)])},"license/0":function(e,t,r){var n=`Tau Prolog. A Prolog interpreter in JavaScript. -`;n+=`Copyright (C) 2017 - 2020 Jos\xE9 Antonio Riaza Valverde - -`,n+=`Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: -`,n+=`1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -`,n+=`2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. -`,n+=`3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -`,n+=`THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -`,n+="You should have received a copy of the BSD 3-Clause License along with this program. If not, see https://opensource.org/licenses/BSD-3-Clause",e.prepend([new State(t.goal.replace(new Term("write",[new Term(n,[])])),t.substitution,t)])}},flag:{bounded:{allowed:[new Term("true"),new Term("false")],value:new Term("true"),changeable:!1},max_integer:{allowed:[new Num(Number.MAX_SAFE_INTEGER)],value:new Num(Number.MAX_SAFE_INTEGER),changeable:!1},min_integer:{allowed:[new Num(Number.MIN_SAFE_INTEGER)],value:new Num(Number.MIN_SAFE_INTEGER),changeable:!1},integer_rounding_function:{allowed:[new Term("down"),new Term("toward_zero")],value:new Term("toward_zero"),changeable:!1},char_conversion:{allowed:[new Term("on"),new Term("off")],value:new Term("on"),changeable:!0},debug:{allowed:[new Term("on"),new Term("off")],value:new Term("off"),changeable:!0},max_arity:{allowed:[new Term("unbounded")],value:new Term("unbounded"),changeable:!1},unknown:{allowed:[new Term("error"),new Term("fail"),new Term("warning")],value:new Term("error"),changeable:!0},double_quotes:{allowed:[new Term("chars"),new Term("codes"),new Term("atom")],value:new Term("codes"),changeable:!0},occurs_check:{allowed:[new Term("false"),new Term("true")],value:new Term("false"),changeable:!0},dialect:{allowed:[new Term("tau")],value:new Term("tau"),changeable:!1},version_data:{allowed:[new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)])],value:new Term("tau",[new Num(version.major,!1),new Num(version.minor,!1),new Num(version.patch,!1),new Term(version.status)]),changeable:!1},nodejs:{allowed:[new Term("yes"),new Term("no")],value:new Term(nodejs_flag?"yes":"no"),changeable:!1},argv:{allowed:[nodejs_arguments],value:nodejs_arguments,changeble:!1}},unify:function(e,t,r){r=r===void 0?!1:r;for(var n=[{left:e,right:t}],a={};n.length!==0;){var o=n.pop();if(e=o.left,t=o.right,e!=t)if(pl.type.is_term(e)&&pl.type.is_term(t)){if(e.indicator!==t.indicator)return null;if(e.indicator==="./2"){for(var l=e,A=t;l.indicator==="./2"&&A.indicator==="./2";)n.push({left:l.args[0],right:A.args[0]}),l=l.args[1],A=A.args[1];n.push({left:l,right:A})}else for(var f=0;fa.value?1:0:a}else return n},operate:function(e,t){if(pl.type.is_operator(t)){for(var r=pl.type.is_operator(t),n=[],a,o=!1,l=0;le.get_flag("max_integer").value||a0?e.start+e.matches[0].length:e.start,a=r?new Term("token_not_found"):new Term("found",[new Term(e.value.toString())]),o=new Term(".",[new Term("line",[new Num(e.line+1)]),new Term(".",[new Term("column",[new Num(n+1)]),new Term(".",[a,new Term("[]",[])])])]);return new Term("error",[new Term("syntax_error",[new Term(t)]),o])},syntax_by_predicate:function(e,t){return new Term("error",[new Term("syntax_error",[new Term(e)]),str_indicator(t)])}},warning:{singleton:function(e,t,r){for(var n=new Term("[]"),a=e.length-1;a>=0;a--)n=new Term(".",[new Var(e[a]),n]);return new Term("warning",[new Term("singleton_variables",[n,str_indicator(t)]),new Term(".",[new Term("line",[new Num(r,!1)]),new Term("[]")])])},failed_goal:function(e,t){return new Term("warning",[new Term("failed_goal",[e]),new Term(".",[new Term("line",[new Num(t,!1)]),new Term("[]")])])}},format_variable:function(e){return"_"+e},format_answer:function(e,t,n){t instanceof Session&&(t=t.thread);var n=n||{};if(n.session=t?t.session:void 0,pl.type.is_error(e))return"uncaught exception: "+e.args[0].toString();if(e===!1)return"false.";if(e===null)return"limit exceeded ;";var a=0,o="";if(pl.type.is_substitution(e)){var l=e.domain(!0);e=e.filter(function(b,E){return!pl.type.is_variable(E)||pl.type.is_variable(E)&&e.has_attributes(b)||indexOf(l,E.id)!==-1&&b!==E.id})}for(var A in e.links)if(e.links.hasOwnProperty(A))if(pl.type.is_variable(e.links[A])&&A===e.links[A].id){var f=e.attrs[A];for(var I in f)f.hasOwnProperty(I)&&(a++,o!==""&&(o+=", "),o+="put_attr("+A+", "+I+", "+f[I].toString(n)+")")}else a++,o!==""&&(o+=", "),o+=A.toString(n)+" = "+e.links[A].toString(n,{priority:"700",class:"xfx",indicator:"=/2"},"right");var C=typeof t>"u"||t.points.length>0?" ;":".";return a===0?"true"+C:o+C},flatten_error:function(e){if(!pl.type.is_error(e))return null;e=e.args[0];var t={};return t.type=e.args[0].id,t.thrown=t.type==="syntax_error"?null:e.args[1].id,t.expected=null,t.found=null,t.representation=null,t.existence=null,t.existence_type=null,t.line=null,t.column=null,t.permission_operation=null,t.permission_type=null,t.evaluation_type=null,t.type==="type_error"||t.type==="domain_error"?(t.expected=e.args[0].args[0].id,t.found=e.args[0].args[1].toString()):t.type==="syntax_error"?e.args[1].indicator==="./2"?(t.expected=e.args[0].args[0].id,t.found=e.args[1].args[1].args[1].args[0],t.found=t.found.id==="token_not_found"?t.found.id:t.found.args[0].id,t.line=e.args[1].args[0].args[0].value,t.column=e.args[1].args[1].args[0].args[0].value):t.thrown=e.args[1].id:t.type==="permission_error"?(t.found=e.args[0].args[2].toString(),t.permission_operation=e.args[0].args[0].id,t.permission_type=e.args[0].args[1].id):t.type==="evaluation_error"?t.evaluation_type=e.args[0].args[0].id:t.type==="representation_error"?t.representation=e.args[0].args[0].id:t.type==="existence_error"&&(t.existence=e.args[0].args[1].toString(),t.existence_type=e.args[0].args[0].id),t},create:function(e){return new pl.type.Session(e)}};typeof module<"u"?module.exports=pl:window.pl=pl})()});var $us=H(D4r=>{"use strict";Object.defineProperty(D4r,"__esModule",{value:!0});D4r.linkProjectToSession=uCl;var zus=(Pa(),vi(Va)),Uus=Sn(),Kus=kW(),LO=zus.__importDefault(R4r()),oCl=zus.__importDefault(wt("vm")),{is_atom:Aue,is_variable:aCl,is_instantiated_list:cCl}=LO.default.type;function jus(e,t,r){e.prepend(r.map(n=>new LO.default.type.State(t.goal.replace(n),t.substitution,t)))}var qus=new WeakMap;function N4r(e){let t=qus.get(e.session);if(t==null)throw new Error("Assertion failed: A project should have been registered for the active session");return t}var lCl=new LO.default.type.Module("constraints",{"project_workspaces_by_descriptor/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Aue(n)||!Aue(a)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let l=Uus.structUtils.parseIdent(n.id),A=Uus.structUtils.makeDescriptor(l,a.id),I=N4r(e).tryWorkspaceByDescriptor(A);aCl(o)&&I!==null&&jus(e,t,[new LO.default.type.Term("=",[o,new LO.default.type.Term(String(I.relativeCwd))])]),Aue(o)&&I!==null&&I.relativeCwd===o.id&&e.success(t)},"workspace_field/3":(e,t,r)=>{let[n,a,o]=r.args;if(!Aue(n)||!Aue(a)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let A=N4r(e).tryWorkspaceByCwd(n.id);if(A==null)return;let f=(0,Kus.get)(A.manifest.raw,a.id);typeof f>"u"||jus(e,t,[new LO.default.type.Term("=",[o,new LO.default.type.Term(typeof f=="object"?JSON.stringify(f):f)])])},"workspace_field_test/3":(e,t,r)=>{let[n,a,o]=r.args;e.prepend([new LO.default.type.State(t.goal.replace(new LO.default.type.Term("workspace_field_test",[n,a,o,new LO.default.type.Term("[]",[])])),t.substitution,t)])},"workspace_field_test/4":(e,t,r)=>{let[n,a,o,l]=r.args;if(!Aue(n)||!Aue(a)||!Aue(o)||!cCl(l)){e.throw_error(LO.default.error.instantiation(r.indicator));return}let f=N4r(e).tryWorkspaceByCwd(n.id);if(f==null)return;let I=(0,Kus.get)(f.manifest.raw,a.id);if(typeof I>"u")return;let C={$$:I};for(let[E,N]of l.toJavaScript().entries())C[`$${E}`]=N;oCl.default.runInNewContext(o.id,C)&&e.success(t)}},["project_workspaces_by_descriptor/3","workspace_field/3","workspace_field_test/3","workspace_field_test/4"]);function uCl(e,t){qus.set(e,t),e.consult(`:- use_module(library(${lCl.id})).`)}});var P6e=H(sGe=>{"use strict";Object.defineProperty(sGe,"__esModule",{value:!0});sGe.Constraints=sGe.DependencyType=void 0;var G4r=(Pa(),vi(Va)),g6=Sn(),VO=Sn(),Dxt=ro(),gCl=G4r.__importDefault(kus()),L6e=G4r.__importDefault(R4r()),egs=G4r.__importStar(G6e()),ACl=$us();(0,gCl.default)(L6e.default);var V6e;(function(e){e.Dependencies="dependencies",e.DevDependencies="devDependencies",e.PeerDependencies="peerDependencies"})(V6e||(sGe.DependencyType=V6e={}));var tgs=[V6e.Dependencies,V6e.DevDependencies,V6e.PeerDependencies];function lx(e){if(e instanceof L6e.default.type.Num)return e.value;if(e instanceof L6e.default.type.Term)switch(e.indicator){case"throw/1":return lx(e.args[0]);case"error/1":return lx(e.args[0]);case"error/2":if(e.args[0]instanceof L6e.default.type.Term&&e.args[0].indicator==="syntax_error/1")return Object.assign(lx(e.args[0]),...lx(e.args[1]));{let t=lx(e.args[0]);return t.message+=` (in ${lx(e.args[1])})`,t}case"syntax_error/1":return new g6.ReportError(g6.MessageName.PROLOG_SYNTAX_ERROR,`Syntax error: ${lx(e.args[0])}`);case"existence_error/2":return new g6.ReportError(g6.MessageName.PROLOG_EXISTENCE_ERROR,`Existence error: ${lx(e.args[0])} ${lx(e.args[1])} not found`);case"instantiation_error/0":return new g6.ReportError(g6.MessageName.PROLOG_INSTANTIATION_ERROR,"Instantiation error: an argument is variable when an instantiated argument was expected");case"line/1":return{line:lx(e.args[0])};case"column/1":return{column:lx(e.args[0])};case"found/1":return{found:lx(e.args[0])};case"./2":return[lx(e.args[0])].concat(lx(e.args[1]));case"//2":return`${lx(e.args[0])}/${lx(e.args[1])}`;default:return e.id}throw`couldn't pretty print because of unsupported node ${e}`}function rgs(e){let t;try{t=lx(e)}catch(r){throw typeof r=="string"?new g6.ReportError(g6.MessageName.PROLOG_UNKNOWN_ERROR,`Unknown error: ${e} (note: ${r})`):r}return typeof t.line<"u"&&typeof t.column<"u"&&(t.message+=` at line ${t.line}, column ${t.column}`),t}var k4r=class{constructor(t,r){let n=1e3*t.workspaces.length;this.session=L6e.default.create(n),(0,ACl.linkProjectToSession)(this.session,t),this.session.consult(":- use_module(library(lists))."),this.session.consult(r)}fetchNextAnswer(){return new Promise(t=>{this.session.answer(r=>{t(r)})})}async*makeQuery(t){let r=this.session.query(t);if(r!==!0)throw rgs(r);for(;;){let n=await this.fetchNextAnswer();if(n===null)throw new g6.ReportError(g6.MessageName.PROLOG_LIMIT_EXCEEDED,"Resolution limit exceeded");if(!n)break;if(n.id==="throw")throw rgs(n);yield n}}};function J_e(e){return e.id==="null"?null:`${e.toJavaScript()}`}function dCl(e){if(e.id==="null")return null;{let t=e.toJavaScript();if(typeof t!="string")return JSON.stringify(t);try{return JSON.stringify(JSON.parse(t))}catch{return JSON.stringify(t)}}}var x4r=class e{static async find(t){return new e(t)}constructor(t){this.source="",this.project=t;let r=t.configuration.get("constraintsPath");Dxt.xfs.existsSync(r)&&(this.source=Dxt.xfs.readFileSync(r,"utf8"))}getProjectDatabase(){let t="";for(let r of tgs)t+=`dependency_type(${r}). -`;for(let r of this.project.workspacesByCwd.values()){let n=r.relativeCwd;t+=`workspace(${due(n)}). -`,t+=`workspace_ident(${due(n)}, ${due(VO.structUtils.stringifyIdent(r.anchoredLocator))}). -`,t+=`workspace_version(${due(n)}, ${due(r.manifest.version)}). -`;for(let a of tgs)for(let o of r.manifest[a].values())t+=`workspace_has_dependency(${due(n)}, ${due(VO.structUtils.stringifyIdent(o))}, ${due(o.range)}, ${a}). -`}return t+=`workspace(_) :- false. -`,t+=`workspace_ident(_, _) :- false. -`,t+=`workspace_version(_, _) :- false. -`,t+=`workspace_has_dependency(_, _, _, _) :- false. -`,t}getDeclarations(){let t="";return t+=`gen_enforced_dependency(_, _, _, _) :- false. -`,t+=`gen_enforced_field(_, _, _) :- false. -`,t}get fullSource(){return`${this.getProjectDatabase()} -${this.source} -${this.getDeclarations()}`}createSession(){return new k4r(this.project,this.fullSource)}async processClassic(){let t=this.createSession();return{enforcedDependencies:await this.genEnforcedDependencies(t),enforcedFields:await this.genEnforcedFields(t)}}async process(){let{enforcedDependencies:t,enforcedFields:r}=await this.processClassic(),n=new Map;for(let{workspace:a,dependencyIdent:o,dependencyRange:l,dependencyType:A}of t){let f=egs.normalizePath([A,VO.structUtils.stringifyIdent(o)]),I=VO.miscUtils.getMapWithDefault(n,a.cwd);VO.miscUtils.getMapWithDefault(I,f).set(l??void 0,new Set)}for(let{workspace:a,fieldPath:o,fieldValue:l}of r){let A=egs.normalizePath(o),f=VO.miscUtils.getMapWithDefault(n,a.cwd);VO.miscUtils.getMapWithDefault(f,A).set(JSON.parse(l)??void 0,new Set)}return{manifestUpdates:n,reportedErrors:new Map}}async genEnforcedDependencies(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), dependency_type(DependencyType), gen_enforced_dependency(WorkspaceCwd, DependencyIdent, DependencyRange, DependencyType).")){let a=Dxt.ppath.resolve(this.project.cwd,J_e(n.links.WorkspaceCwd)),o=J_e(n.links.DependencyIdent),l=J_e(n.links.DependencyRange),A=J_e(n.links.DependencyType);if(a===null||o===null)throw new Error("Invalid rule");let f=this.project.getWorkspaceByCwd(a),I=VO.structUtils.parseIdent(o);r.push({workspace:f,dependencyIdent:I,dependencyRange:l,dependencyType:A})}return VO.miscUtils.sortMap(r,[({dependencyRange:n})=>n!==null?"0":"1",({workspace:n})=>VO.structUtils.stringifyIdent(n.anchoredLocator),({dependencyIdent:n})=>VO.structUtils.stringifyIdent(n)])}async genEnforcedFields(t){let r=[];for await(let n of t.makeQuery("workspace(WorkspaceCwd), gen_enforced_field(WorkspaceCwd, FieldPath, FieldValue).")){let a=Dxt.ppath.resolve(this.project.cwd,J_e(n.links.WorkspaceCwd)),o=J_e(n.links.FieldPath),l=dCl(n.links.FieldValue);if(a===null||o===null)throw new Error("Invalid rule");let A=this.project.getWorkspaceByCwd(a);r.push({workspace:A,fieldPath:o,fieldValue:l})}return VO.miscUtils.sortMap(r,[({workspace:n})=>VO.structUtils.stringifyIdent(n.anchoredLocator),({fieldPath:n})=>n])}async*query(t){let r=this.createSession();for await(let n of r.makeQuery(t)){let a={};for(let[o,l]of Object.entries(n.links))o!=="_"&&(a[o]=J_e(l));yield a}}};sGe.Constraints=x4r;function due(e){return typeof e=="string"?`'${e}'`:"[]"}});var igs=H(xte=>{"use strict";var pCl=xte&&xte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fCl=xte&&xte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ICl=xte&&xte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pCl(t,e,r);return fCl(t,e),t};Object.defineProperty(xte,"__esModule",{value:!0});var hCl=el(),ngs=Sn(),mCl=Sn(),F4r=($c(),vi(rg)),W6e=class extends hCl.BaseCommand{constructor(){super(...arguments),this.json=F4r.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.query=F4r.Option.String()}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>ICl(P6e())),r=await ngs.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await ngs.Project.find(r,this.context.cwd),a=await t.find(n),o=this.query;return o.endsWith(".")||(o=`${o}.`),(await mCl.StreamReport.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{for await(let f of a.query(o)){let I=Array.from(Object.entries(f)),C=I.length,b=I.reduce((E,[N])=>Math.max(E,N.length),0);for(let E=0;E{"use strict";var yCl=Gte&&Gte.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bCl=Gte&&Gte.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ECl=Gte&&Gte.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yCl(t,e,r);return bCl(t,e),t};Object.defineProperty(Gte,"__esModule",{value:!0});var SCl=el(),sgs=Sn(),ogs=($c(),vi(rg)),O6e=class extends SCl.BaseCommand{constructor(){super(...arguments),this.verbose=ogs.Option.Boolean("-v,--verbose",!1,{description:"Also print the fact database automatically compiled from the workspace manifests"})}async execute(){let{Constraints:t}=await Promise.resolve().then(()=>ECl(P6e())),r=await sgs.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await sgs.Project.find(r,this.context.cwd),a=await t.find(n);this.context.stdout.write(this.verbose?a.fullSource:a.source)}};O6e.paths=[["constraints","source"]];O6e.usage=ogs.Command.Usage({category:"Constraints-related commands",description:"print the source code for the constraints",details:"\n This command will print the Prolog source code used by the constraints engine. Adding the `-v,--verbose` flag will print the *full* source code, including the fact database automatically compiled from the workspace manifests.\n ",examples:[["Prints the source code","yarn constraints source"],["Print the source code and the fact database","yarn constraints source -v"]]});Gte.default=O6e});var ugs=H(L4r=>{"use strict";Object.defineProperty(L4r,"__esModule",{value:!0});var lgs=(Pa(),vi(Va)),vCl=el(),U_e=Sn(),kxt=Sn(),Z4r=($c(),vi(rg)),BCl=I4r(),cgs=lgs.__importStar(G6e()),M6e=class extends vCl.BaseCommand{constructor(){super(...arguments),this.fix=Z4r.Option.Boolean("--fix",!1,{description:"Attempt to automatically fix unambiguous issues, following a multi-pass process"}),this.json=Z4r.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await U_e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await U_e.Project.find(t,this.context.cwd);await r.restoreInstallState();let n=await r.loadUserConfig(),a;if(n?.constraints)a=new BCl.ModernEngine(r);else{let{Constraints:f}=await Promise.resolve().then(()=>lgs.__importStar(P6e()));a=await f.find(r)}let o,l=!1,A=!1;for(let f=this.fix?10:1;f>0;--f){let I=await a.process();if(!I)break;let{changedWorkspaces:C,remainingErrors:b}=cgs.applyEngineReport(r,I,{fix:this.fix}),E=[];for(let[N,B]of C){let F=N.manifest.indent;N.manifest=new U_e.Manifest,N.manifest.indent=F,N.manifest.load(B),E.push(N.persistManifest())}if(await Promise.all(E),!(C.size>0&&f>1)){o=cgs.convertReportToRoot(b,{configuration:t}),l=!1,A=!0;for(let[,N]of b)for(let B of N)B.fixable?l=!0:A=!1}}if(o.children.length===0)return 0;if(l){let f=A?`Those errors can all be fixed by running ${kxt.formatUtils.pretty(t,"yarn constraints --fix",kxt.formatUtils.Type.CODE)}`:`Errors prefixed by '\u2699' can be fixed by running ${kxt.formatUtils.pretty(t,"yarn constraints --fix",kxt.formatUtils.Type.CODE)}`;await U_e.StreamReport.start({configuration:t,stdout:this.context.stdout,includeNames:!1,includeFooter:!1},async I=>{I.reportInfo(U_e.MessageName.UNNAMED,f),I.reportSeparator()})}return o.children=U_e.miscUtils.sortMap(o.children,f=>f.value[1]),U_e.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1}),1}};M6e.paths=[["constraints"]];M6e.usage=Z4r.Command.Usage({category:"Constraints-related commands",description:"check that the project constraints are met",details:` - This command will run constraints on your project and emit errors for each one that is found but isn't met. If any error is emitted the process will exit with a non-zero exit code. - - If the \`--fix\` flag is used, Yarn will attempt to automatically fix the issues the best it can, following a multi-pass process (with a maximum of 10 iterations). Some ambiguous patterns cannot be autofixed, in which case you'll have to manually specify the right resolution. - - For more information as to how to write constraints, please consult our dedicated page on our website: https://yarnpkg.com/features/constraints. - `,examples:[["Check that all constraints are satisfied","yarn constraints"],["Autofix all unmet constraints","yarn constraints --fix"]]});L4r.default=M6e});var pgs=H(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.ConstraintsCheckCommand=Fte.ConstraintsSourceCommand=Fte.ConstraintsQueryCommand=void 0;var H6e=(Pa(),vi(Va)),pue=Sn(),wCl=I4r(),ggs=H6e.__importDefault(igs());Fte.ConstraintsQueryCommand=ggs.default;var Ags=H6e.__importDefault(ags());Fte.ConstraintsSourceCommand=Ags.default;var dgs=H6e.__importDefault(ugs());Fte.ConstraintsCheckCommand=dgs.default;var TCl=H6e.__importStar(G6e()),RCl={configuration:{enableConstraintsChecks:{description:"If true, constraints will run during installs",type:pue.SettingsType.BOOLEAN,default:!1},constraintsPath:{description:"The path of the constraints file.",type:pue.SettingsType.ABSOLUTE_PATH,default:"./constraints.pro"}},commands:[ggs.default,Ags.default,dgs.default],hooks:{async validateProjectAfterInstall(e,{reportError:t}){if(!e.configuration.get("enableConstraintsChecks"))return;let r=await e.loadUserConfig(),n;if(r?.constraints)n=new wCl.ModernEngine(e);else{let{Constraints:l}=await Promise.resolve().then(()=>H6e.__importStar(P6e()));n=await l.find(e)}let a=await n.process();if(!a)return;let{remainingErrors:o}=TCl.applyEngineReport(e,a);if(o.size!==0)if(e.configuration.isCI)for(let[l,A]of o)for(let f of A)t(pue.MessageName.CONSTRAINTS_CHECK_FAILED,`${pue.formatUtils.pretty(e.configuration,l.anchoredLocator,pue.formatUtils.Type.IDENT)}: ${f.text}`);else t(pue.MessageName.CONSTRAINTS_CHECK_FAILED,`Constraint check failed; run ${pue.formatUtils.pretty(e.configuration,"yarn constraints",pue.formatUtils.Type.CODE)} for more details`)}}};Fte.default=RCl});var fgs=H(V4r=>{"use strict";Object.defineProperty(V4r,"__esModule",{value:!0});var NCl=el(),xxt=Sn(),Gxt=($c(),vi(rg)),Fxt=class extends NCl.BaseCommand{constructor(){super(...arguments),this.pkg=Gxt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=Gxt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=Gxt.Option.String(),this.args=Gxt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),n=xxt.structUtils.parseDescriptor(r),a=n.name.match(/^create(-|$)/)?n:n.scope?xxt.structUtils.makeIdent(n.scope,`create-${n.name}`):xxt.structUtils.makeIdent(null,`create-${n.name}`),o=xxt.structUtils.stringifyIdent(a);return n.range!=="unknown"&&(o+=`@${n.range}`),this.cli.run(["dlx",...t,o,...this.args])}};Fxt.paths=[["create"]];V4r.default=Fxt});var hgs=H(P4r=>{"use strict";Object.defineProperty(P4r,"__esModule",{value:!0});var Igs=el(),Zte=Sn(),Zxt=Sn(),lL=ro(),Y6e=($c(),vi(rg)),Q6e=class extends Igs.BaseCommand{constructor(){super(...arguments),this.packages=Y6e.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=Y6e.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=Y6e.Option.String(),this.args=Y6e.Option.Proxy()}async execute(){return Zte.Configuration.telemetry=null,await lL.xfs.mktempPromise(async t=>{let r=lL.ppath.join(t,`dlx-${process.pid}`);await lL.xfs.mkdirPromise(r),await lL.xfs.writeFilePromise(lL.ppath.join(r,"package.json"),`{} -`),await lL.xfs.writeFilePromise(lL.ppath.join(r,"yarn.lock"),"");let n=lL.ppath.join(r,".yarnrc.yml"),a=await Zte.Configuration.findProjectCwd(this.context.cwd),l={enableGlobalCache:!(await Zte.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,Zte.stringifyMessageName)(Zte.MessageName.UNUSED_PACKAGE_EXTENSION),level:Zxt.formatUtils.LogLevel.Discard}]},A=a!==null?lL.ppath.join(a,".yarnrc.yml"):null;A!==null&&lL.xfs.existsSync(A)?(await lL.xfs.copyFilePromise(A,n),await Zte.Configuration.updateConfiguration(r,F=>{let Q=Zte.miscUtils.toMerged(F,l);return Array.isArray(F.plugins)&&(Q.plugins=F.plugins.map(X=>{let ae=typeof X=="string"?X:X.path,ne=lL.npath.isAbsolute(ae)?ae:lL.npath.resolve(lL.npath.fromPortablePath(a),ae);return typeof X=="string"?ne:{path:ne,spec:X.spec}})),Q})):await lL.xfs.writeJsonPromise(n,l);let f=this.packages??[this.command],I=Zxt.structUtils.parseDescriptor(this.command).name,C=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(C!==0)return C;this.quiet||this.context.stdout.write(` -`);let b=await Zte.Configuration.find(r,this.context.plugins),{project:E,workspace:N}=await Zte.Project.find(b,r);if(N===null)throw new Igs.WorkspaceRequiredError(E.cwd,r);await E.restoreInstallState();let B=await Zxt.scriptUtils.getWorkspaceAccessibleBinaries(N);return B.has(I)===!1&&B.size===1&&typeof this.packages>"u"&&(I=Array.from(B)[0][0]),await Zxt.scriptUtils.executeWorkspaceAccessibleBinary(N,I,this.args,{packageAccessibleBinaries:B,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};Q6e.paths=[["dlx"]];Q6e.usage=Y6e.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-vite to scaffold a new Vite project","yarn dlx create-vite"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});P4r.default=Q6e});var ygs=H(K_e=>{"use strict";Object.defineProperty(K_e,"__esModule",{value:!0});K_e.DlxCommand=K_e.CreateCommand=void 0;var mgs=(Pa(),vi(Va)),Cgs=mgs.__importDefault(fgs());K_e.CreateCommand=Cgs.default;var _gs=mgs.__importDefault(hgs());K_e.DlxCommand=_gs.default;var DCl={commands:[Cgs.default,_gs.default]};K_e.default=DCl});var W4r=H(Lxt=>{"use strict";Object.defineProperty(Lxt,"__esModule",{value:!0});Lxt.PROTOCOL=void 0;Lxt.PROTOCOL="exec:"});var Vxt=H(aGe=>{"use strict";Object.defineProperty(aGe,"__esModule",{value:!0});aGe.parseSpec=kCl;aGe.makeSpec=bgs;aGe.makeLocator=xCl;aGe.loadGeneratorFile=GCl;var oGe=Sn(),Q4=ro();function kCl(e){let{params:t,selector:r}=oGe.structUtils.parseRange(e),n=Q4.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?oGe.structUtils.parseLocator(t.locator):null,path:n}}function bgs({parentLocator:e,path:t,generatorHash:r,protocol:n}){let a=e!==null?{locator:oGe.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return oGe.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function xCl(e,{parentLocator:t,path:r,generatorHash:n,protocol:a}){return oGe.structUtils.makeLocator(e,bgs({parentLocator:t,path:r,generatorHash:n,protocol:a}))}async function GCl(e,t,r){let{parentLocator:n,path:a}=oGe.structUtils.parseFileStyleRange(e,{protocol:t}),o=Q4.ppath.isAbsolute(a)?{packageFs:new Q4.CwdFS(Q4.PortablePath.root),prefixPath:Q4.PortablePath.dot,localPath:Q4.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new Q4.CwdFS(Q4.PortablePath.root),prefixPath:Q4.ppath.relative(Q4.PortablePath.root,o.localPath)}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=Q4.ppath.join(l.prefixPath,a);return await A.readFilePromise(f,"utf8")}});var vgs=H(Pxt=>{"use strict";Object.defineProperty(Pxt,"__esModule",{value:!0});Pxt.ExecFetcher=void 0;var X4=Sn(),Egs=Sn(),Sgs=Sn(),PS=ro(),O4r=W4r(),FCl=Vxt(),M4r=class{supports(t,r){return!!t.reference.startsWith(O4r.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=X4.structUtils.parseFileStyleRange(t.reference,{protocol:O4r.PROTOCOL});if(PS.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:PS.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:X4.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){let n=r.project.getDependencyMeta(t,null);if(!r.project.configuration.get("enableScripts")&&!n.built)throw new Sgs.ReportError(Sgs.MessageName.DISABLED_BUILD_SCRIPTS,`${X4.structUtils.prettyLocator(r.project.configuration,t)} can't be built with the exec: protocol because all scripts have been disabled.`);let a=await(0,FCl.loadGeneratorFile)(t.reference,O4r.PROTOCOL,r);return PS.xfs.mktempPromise(async o=>{let l=PS.ppath.join(o,"generator.js");return await PS.xfs.writeFilePromise(l,a),PS.xfs.mktempPromise(async A=>{if(await this.generatePackage(A,t,l,r),!PS.xfs.existsSync(PS.ppath.join(A,"build")))throw new Error("The script should have generated a build directory");return await X4.tgzUtils.makeArchiveFromDirectory(PS.ppath.join(A,"build"),{prefixPath:X4.structUtils.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel")})})})}async generatePackage(t,r,n,a){return await PS.xfs.mktempPromise(async o=>{let l=await X4.scriptUtils.makeScriptEnv({project:a.project,binFolder:o}),A=PS.ppath.join(t,"runtime.js");return await PS.xfs.mktempPromise(async f=>{let I=PS.ppath.join(f,"buildfile.log"),C=PS.ppath.join(t,"generator"),b=PS.ppath.join(t,"build");await PS.xfs.mkdirPromise(C),await PS.xfs.mkdirPromise(b);let E={tempDir:PS.npath.fromPortablePath(C),buildDir:PS.npath.fromPortablePath(b),locator:X4.structUtils.stringifyLocator(r)};await PS.xfs.writeFilePromise(A,` - // Expose 'Module' as a global variable - Object.defineProperty(global, 'Module', { - get: () => require('module'), - configurable: true, - enumerable: false, - }); - - // Expose non-hidden built-in modules as global variables - for (const name of Module.builtinModules.filter((name) => name !== 'module' && !name.startsWith('_'))) { - Object.defineProperty(global, name, { - get: () => require(name), - configurable: true, - enumerable: false, - }); - } - - // Expose the 'execEnv' global variable - Object.defineProperty(global, 'execEnv', { - value: { - ...${JSON.stringify(E)}, - }, - enumerable: true, - }); - `);let N=l.NODE_OPTIONS||"",B=/\s*--require\s+\S*\.pnp\.c?js\s*/g;N=N.replace(B," ").trim(),l.NODE_OPTIONS=N;let{stdout:F,stderr:Q}=a.project.configuration.getSubprocessStreams(I,{header:`# This file contains the result of Yarn generating a package (${X4.structUtils.stringifyLocator(r)}) -`,prefix:X4.structUtils.prettyLocator(a.project.configuration,r),report:a.report}),{code:X}=await X4.execUtils.pipevp(process.execPath,["--require",PS.npath.fromPortablePath(A),PS.npath.fromPortablePath(n),X4.structUtils.stringifyIdent(r)],{cwd:t,env:l,stdin:null,stdout:F,stderr:Q});if(X!==0)throw PS.xfs.detachTemp(f),new Error(`Package generation failed (exit code ${X}, logs can be found here: ${Egs.formatUtils.pretty(a.project.configuration,I,Egs.formatUtils.Type.PATH)})`)})})}};Pxt.ExecFetcher=M4r});var wgs=H(Wxt=>{"use strict";Object.defineProperty(Wxt,"__esModule",{value:!0});Wxt.ExecResolver=void 0;var ZCl=(Pa(),vi(Va)),LCl=Sn(),VCl=Sn(),Bgs=Sn(),fue=Sn(),X6e=W4r(),H4r=ZCl.__importStar(Vxt()),PCl=2,Y4r=class{supportsDescriptor(t,r){return!!t.range.startsWith(X6e.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(X6e.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){if(n.project.tryWorkspaceByLocator(r)===null)throw new Bgs.ReportError(Bgs.MessageName.INVALID_MANIFEST,`${fue.structUtils.prettyLocator(n.project.configuration,r)} lists ${fue.structUtils.prettyDescriptor(n.project.configuration,t)} as dependency, but only workspaces can depend on exec: packages.`);return fue.structUtils.bindDescriptor(t,{locator:fue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=H4r.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await H4r.loadGeneratorFile(fue.structUtils.makeRange({protocol:X6e.PROTOCOL,source:a,selector:a,params:{locator:fue.structUtils.stringifyLocator(o)}}),X6e.PROTOCOL,n.fetchOptions),A=fue.hashUtils.makeHash(`${PCl}`,l).slice(0,6);return[H4r.makeLocator(t,{parentLocator:o,path:a,generatorHash:A,protocol:X6e.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await fue.miscUtils.releaseAfterUseAsync(async()=>await LCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:VCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Wxt.ExecResolver=Y4r});var Ngs=H(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.ExecResolver=Lte.ExecFetcher=Lte.execUtils=void 0;var WCl=(Pa(),vi(Va)),Tgs=vgs();Object.defineProperty(Lte,"ExecFetcher",{enumerable:!0,get:function(){return Tgs.ExecFetcher}});var Rgs=wgs();Object.defineProperty(Lte,"ExecResolver",{enumerable:!0,get:function(){return Rgs.ExecResolver}});var OCl=WCl.__importStar(Vxt());Lte.execUtils=OCl;var MCl={fetchers:[Tgs.ExecFetcher],resolvers:[Rgs.ExecResolver]};Lte.default=MCl});var cGe=H(Iue=>{"use strict";Object.defineProperty(Iue,"__esModule",{value:!0});Iue.PROTOCOL=Iue.TARBALL_REGEXP=Iue.FILE_REGEXP=void 0;Iue.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;Iue.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;Iue.PROTOCOL="file:"});var lGe=H(hue=>{"use strict";Object.defineProperty(hue,"__esModule",{value:!0});hue.parseSpec=YCl;hue.makeSpec=Dgs;hue.makeLocator=QCl;hue.fetchArchiveFromLocator=XCl;hue.makeArchiveFromLocator=kgs;hue.makeBufferFromLocator=JCl;var J4=Sn(),uw=ro(),HCl=cGe();function YCl(e){let{params:t,selector:r}=J4.structUtils.parseRange(e),n=uw.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?J4.structUtils.parseLocator(t.locator):null,path:n}}function Dgs({parentLocator:e,path:t,hash:r,protocol:n}){let a=e!==null?{locator:J4.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return J4.structUtils.makeRange({protocol:n,source:t,selector:t,params:{...o,...a}})}function QCl(e,{parentLocator:t,path:r,hash:n,protocol:a}){return J4.structUtils.makeLocator(e,Dgs({parentLocator:t,path:r,hash:n,protocol:a}))}async function XCl(e,t){let{parentLocator:r,path:n}=J4.structUtils.parseFileStyleRange(e.reference,{protocol:HCl.PROTOCOL}),a=uw.ppath.isAbsolute(n)?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.PortablePath.dot,localPath:uw.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.ppath.relative(uw.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let l=o.packageFs,A=uw.ppath.join(o.prefixPath,n);return await J4.miscUtils.releaseAfterUseAsync(async()=>await l.readFilePromise(A),o.releaseFs)}async function kgs(e,{protocol:t,fetchOptions:r,inMemory:n=!1}){let{parentLocator:a,path:o}=J4.structUtils.parseFileStyleRange(e.reference,{protocol:t}),l=uw.ppath.isAbsolute(o)?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.PortablePath.dot,localPath:uw.PortablePath.root}:await r.fetcher.fetch(a,r),A=l.localPath?{packageFs:new uw.CwdFS(uw.PortablePath.root),prefixPath:uw.ppath.relative(uw.PortablePath.root,l.localPath)}:l;l!==A&&l.releaseFs&&l.releaseFs();let f=A.packageFs,I=uw.ppath.join(A.prefixPath,o);return await J4.miscUtils.releaseAfterUseAsync(async()=>await J4.tgzUtils.makeArchiveFromDirectory(I,{baseFs:f,prefixPath:J4.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:n}),A.releaseFs)}async function JCl(e,{protocol:t,fetchOptions:r}){return(await kgs(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}});var Ggs=H(Oxt=>{"use strict";Object.defineProperty(Oxt,"__esModule",{value:!0});Oxt.FileFetcher=void 0;var UCl=(Pa(),vi(Va)),Q4r=Sn(),xgs=ro(),X4r=cGe(),KCl=UCl.__importStar(lGe()),J4r=class{supports(t,r){return!!t.reference.startsWith(X4r.PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=Q4r.structUtils.parseFileStyleRange(t.reference,{protocol:X4r.PROTOCOL});if(xgs.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:xgs.ppath.resolve(o,a)}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Q4r.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Q4r.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async fetchFromDisk(t,r){return KCl.makeArchiveFromLocator(t,{protocol:X4r.PROTOCOL,fetchOptions:r})}};Oxt.FileFetcher=J4r});var Fgs=H(Mxt=>{"use strict";Object.defineProperty(Mxt,"__esModule",{value:!0});Mxt.FileResolver=void 0;var jCl=(Pa(),vi(Va)),mue=Sn(),zCl=Sn(),qCl=Sn(),Cue=cGe(),U4r=jCl.__importStar(lGe()),$Cl=2,K4r=class{supportsDescriptor(t,r){return t.range.match(Cue.FILE_REGEXP)?!0:!!t.range.startsWith(Cue.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Cue.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Cue.FILE_REGEXP.test(t.range)&&(t=mue.structUtils.makeDescriptor(t,`${Cue.PROTOCOL}${t.range}`)),mue.structUtils.bindDescriptor(t,{locator:mue.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=U4r.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=await U4r.makeBufferFromLocator(mue.structUtils.makeLocator(t,mue.structUtils.makeRange({protocol:Cue.PROTOCOL,source:a,selector:a,params:{locator:mue.structUtils.stringifyLocator(o)}})),{protocol:Cue.PROTOCOL,fetchOptions:n.fetchOptions}),A=mue.hashUtils.makeHash(`${$Cl}`,l).slice(0,6);return[U4r.makeLocator(t,{parentLocator:o,path:a,hash:A,protocol:Cue.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await mue.miscUtils.releaseAfterUseAsync(async()=>await qCl.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:zCl.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Mxt.FileResolver=K4r});var Lgs=H(Yxt=>{"use strict";Object.defineProperty(Yxt,"__esModule",{value:!0});Yxt.TarballFileFetcher=void 0;var e_l=(Pa(),vi(Va)),Hxt=Sn(),Zgs=cGe(),t_l=e_l.__importStar(lGe()),j4r=class{supports(t,r){return Zgs.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Zgs.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Hxt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Hxt.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromDisk(t,r){let n=await t_l.fetchArchiveFromLocator(t,r);return await Hxt.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:Hxt.structUtils.getIdentVendorPath(t),stripComponents:1})}};Yxt.TarballFileFetcher=j4r});var Vgs=H(Jxt=>{"use strict";Object.defineProperty(Jxt,"__esModule",{value:!0});Jxt.TarballFileResolver=void 0;var r_l=(Pa(),vi(Va)),n_l=Sn(),i_l=Sn(),s_l=Sn(),Qxt=Sn(),Vte=cGe(),Xxt=r_l.__importStar(lGe()),z4r=class{supportsDescriptor(t,r){return Vte.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith(Vte.PROTOCOL)||Vte.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return Vte.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(Vte.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return Vte.FILE_REGEXP.test(t.range)&&(t=Qxt.structUtils.makeDescriptor(t,`${Vte.PROTOCOL}${t.range}`)),Qxt.structUtils.bindDescriptor(t,{locator:Qxt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=Xxt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let l=Xxt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:Vte.PROTOCOL}),A=await Xxt.fetchArchiveFromLocator(l,n.fetchOptions),f=n_l.hashUtils.makeHash(A).slice(0,6);return[Xxt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:Vte.PROTOCOL})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Qxt.miscUtils.releaseAfterUseAsync(async()=>await i_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:s_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Jxt.TarballFileResolver=z4r});var Hgs=H(PO=>{"use strict";Object.defineProperty(PO,"__esModule",{value:!0});PO.TarballFileResolver=PO.TarballFileFetcher=PO.FileResolver=PO.FileFetcher=PO.fileUtils=void 0;var o_l=(Pa(),vi(Va)),Pgs=Ggs();Object.defineProperty(PO,"FileFetcher",{enumerable:!0,get:function(){return Pgs.FileFetcher}});var Wgs=Fgs();Object.defineProperty(PO,"FileResolver",{enumerable:!0,get:function(){return Wgs.FileResolver}});var Ogs=Lgs();Object.defineProperty(PO,"TarballFileFetcher",{enumerable:!0,get:function(){return Ogs.TarballFileFetcher}});var Mgs=Vgs();Object.defineProperty(PO,"TarballFileResolver",{enumerable:!0,get:function(){return Mgs.TarballFileResolver}});var a_l=o_l.__importStar(lGe());PO.fileUtils=a_l;var c_l={fetchers:[Ogs.TarballFileFetcher,Pgs.FileFetcher],resolvers:[Mgs.TarballFileResolver,Wgs.FileResolver]};PO.default=c_l});var q4r=H(J6e=>{"use strict";Object.defineProperty(J6e,"__esModule",{value:!0});J6e.isGithubUrl=g_l;J6e.parseGithubUrl=A_l;J6e.invalidGithubUrlMessage=Qgs;var l_l=(Pa(),vi(Va)),u_l=l_l.__importDefault(wt("querystring")),Ygs=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function g_l(e){return e?Ygs.some(t=>!!e.match(t)):!1}function A_l(e){let t;for(let A of Ygs)if(t=e.match(A),t)break;if(!t)throw new Error(Qgs(e));let[,r,n,a,o="master"]=t,{commit:l}=u_l.default.parse(o);return o=l||o.replace(/[^:]*:/,""),{auth:r,username:n,reponame:a,treeish:o}}function Qgs(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}});var Jgs=H(Kxt=>{"use strict";Object.defineProperty(Kxt,"__esModule",{value:!0});Kxt.GithubFetcher=void 0;var d_l=(Pa(),vi(Va)),j_e=Sn(),Uxt=ro(),p_l=rDe(),Xgs=d_l.__importStar(q4r()),$4r=class{supports(t,r){return!!Xgs.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${j_e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:j_e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await j_e.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await Uxt.xfs.mktempPromise(async a=>{let o=new Uxt.CwdFS(a);await j_e.tgzUtils.extractArchiveTo(n,o,{stripComponents:1});let l=p_l.gitUtils.splitRepoUrl(t.reference),A=Uxt.ppath.join(a,"package.tgz");await j_e.scriptUtils.prepareExternalProject(a,A,{configuration:r.project.configuration,report:r.report,workspace:l.extra.workspace,locator:t});let f=await Uxt.xfs.readFilePromise(A);return await j_e.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:j_e.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:n,username:a,reponame:o,treeish:l}=Xgs.parseGithubUrl(t.reference);return`https://${n?`${n}@`:""}github.com/${a}/${o}/archive/${l}.tar.gz`}};Kxt.GithubFetcher=$4r});var Kgs=H(z_e=>{"use strict";Object.defineProperty(z_e,"__esModule",{value:!0});z_e.GithubFetcher=z_e.githubUtils=void 0;var f_l=(Pa(),vi(Va)),Ugs=Jgs();Object.defineProperty(z_e,"GithubFetcher",{enumerable:!0,get:function(){return Ugs.GithubFetcher}});var I_l=f_l.__importStar(q4r());z_e.githubUtils=I_l;var h_l={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let n=new Ugs.GithubFetcher;if(!n.supports(t,r))return null;try{return await n.fetch(t,r)}catch{return null}}}};z_e.default=h_l});var tJr=H(eJr=>{"use strict";Object.defineProperty(eJr,"__esModule",{value:!0});eJr.isTgzUrl=m_l;function m_l(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}});var jgs=H(jxt=>{"use strict";Object.defineProperty(jxt,"__esModule",{value:!0});jxt.TarballHttpFetcher=void 0;var C_l=(Pa(),vi(Va)),U6e=Sn(),__l=C_l.__importStar(tJr()),rJr=class{supports(t,r){return __l.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${U6e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:U6e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n=await U6e.httpUtils.get(t.reference,{configuration:r.project.configuration});return await U6e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:U6e.structUtils.getIdentVendorPath(t),stripComponents:1})}};jxt.TarballHttpFetcher=rJr});var $gs=H(zxt=>{"use strict";Object.defineProperty(zxt,"__esModule",{value:!0});zxt.TarballHttpResolver=void 0;var y_l=(Pa(),vi(Va)),b_l=Sn(),E_l=Sn(),zgs=Sn(),qgs=y_l.__importStar(tJr()),nJr=class{supportsDescriptor(t,r){return qgs.isTgzUrl(t.range)}supportsLocator(t,r){return qgs.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){return[zgs.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await zgs.miscUtils.releaseAfterUseAsync(async()=>await b_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:E_l.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};zxt.TarballHttpResolver=nJr});var rAs=H(q_e=>{"use strict";Object.defineProperty(q_e,"__esModule",{value:!0});q_e.TarballHttpResolver=q_e.TarballHttpFetcher=void 0;var eAs=jgs();Object.defineProperty(q_e,"TarballHttpFetcher",{enumerable:!0,get:function(){return eAs.TarballHttpFetcher}});var tAs=$gs();Object.defineProperty(q_e,"TarballHttpResolver",{enumerable:!0,get:function(){return tAs.TarballHttpResolver}});var S_l={fetchers:[eAs.TarballHttpFetcher],resolvers:[tAs.TarballHttpResolver]};q_e.default=S_l});var sJr=H(iJr=>{"use strict";Object.defineProperty(iJr,"__esModule",{value:!0});var v_l=el(),A6=Sn(),$_e=Sn(),Q_=ro(),_ue=($c(),vi(rg)),K6e=class extends v_l.BaseCommand{constructor(){super(...arguments),this.private=_ue.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=_ue.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=_ue.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=_ue.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=_ue.Option.Boolean("-2",!1,{hidden:!0}),this.yes=_ue.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await A6.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new _ue.UsageError("Cannot use the --install flag from within a project subdirectory");Q_.xfs.existsSync(this.context.cwd)||await Q_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=Q_.ppath.join(this.context.cwd,Q_.Filename.lockfile);Q_.xfs.existsSync(n)||await Q_.xfs.writeFilePromise(n,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await Q_.xfs.mktempPromise(async l=>{let{code:A}=await $_e.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await $_e.scriptUtils.makeScriptEnv({binFolder:l})});return A})}async initialize(){}async executeRegular(t){let r=null;try{r=(await A6.Project.find(t,this.context.cwd)).project}catch{r=null}Q_.xfs.existsSync(this.context.cwd)||await Q_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let n=await A6.Manifest.tryFind(this.context.cwd),a=n??new A6.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??$_e.structUtils.makeIdent(t.get("initScope"),this.name??Q_.ppath.basename(this.context.cwd)),a.packageManager=A6.YarnVersion&&A6.miscUtils.isTaggedYarnVersion(A6.YarnVersion)?`yarn@${A6.YarnVersion}`:null,(!n&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await Q_.xfs.mkdirPromise(Q_.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let l={};a.exportTo(l);let A=Q_.ppath.join(this.context.cwd,A6.Manifest.fileName);await Q_.xfs.changeFilePromise(A,`${JSON.stringify(l,null,2)} -`,{automaticNewlines:!0});let f=[A],I=Q_.ppath.join(this.context.cwd,"README.md");if(Q_.xfs.existsSync(I)||(await Q_.xfs.writeFilePromise(I,`# ${$_e.structUtils.stringifyIdent(a.name)} -`),f.push(I)),!r||r.cwd===this.context.cwd){let C=Q_.ppath.join(this.context.cwd,Q_.Filename.lockfile);Q_.xfs.existsSync(C)||(await Q_.xfs.writeFilePromise(C,""),f.push(C));let E=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Whether you use PnP or not, the node_modules folder is often used to store","# build artifacts that should be gitignored","node_modules","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/caching#zero-installs","","#!.yarn/cache",".pnp.*"].map(ce=>`${ce} -`).join(""),N=Q_.ppath.join(this.context.cwd,".gitignore");Q_.xfs.existsSync(N)||(await Q_.xfs.writeFilePromise(N,E),f.push(N));let F=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(ce=>`${ce} -`).join(""),Q=Q_.ppath.join(this.context.cwd,".gitattributes");Q_.xfs.existsSync(Q)||(await Q_.xfs.writeFilePromise(Q,F),f.push(Q));let X={"*":{charset:"utf-8",endOfLine:"lf",indentSize:2,indentStyle:"space",insertFinalNewline:!0}};A6.miscUtils.mergeIntoTarget(X,t.get("initEditorConfig"));let ae=`root = true -`;for(let[ce,fe]of Object.entries(X)){ae+=` -[${ce}] -`;for(let[ue,de]of Object.entries(fe)){let be=ue.replace(/[A-Z]/g,Se=>`_${Se.toLowerCase()}`);ae+=`${be} = ${de} -`}}let ne=Q_.ppath.join(this.context.cwd,".editorconfig");Q_.xfs.existsSync(ne)||(await Q_.xfs.writeFilePromise(ne,ae),f.push(ne)),await this.cli.run(["install"],{quiet:!0}),await this.initialize(),Q_.xfs.existsSync(Q_.ppath.join(this.context.cwd,".git"))||(await $_e.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await $_e.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await $_e.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};K6e.paths=[["init"]];K6e.usage=_ue.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});iJr.default=K6e});var iAs=H(oJr=>{"use strict";Object.defineProperty(oJr,"__esModule",{value:!0});var B_l=(Pa(),vi(Va)),nAs=($c(),vi(rg)),w_l=B_l.__importDefault(sJr()),qxt=class extends w_l.default{constructor(){super(...arguments),this.initializer=nAs.Option.String(),this.argv=nAs.Option.Proxy()}async initialize(){this.context.stdout.write(` -`),await this.cli.run(["dlx",this.initializer,...this.argv],{quiet:!0})}};qxt.paths=[["init"]];oJr.default=qxt});var cAs=H(e0e=>{"use strict";Object.defineProperty(e0e,"__esModule",{value:!0});e0e.InitInitializerCommand=e0e.InitCommand=void 0;var sAs=(Pa(),vi(Va)),j6e=Sn(),oAs=sAs.__importDefault(iAs());e0e.InitInitializerCommand=oAs.default;var aAs=sAs.__importDefault(sJr());e0e.InitCommand=aAs.default;var T_l={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:j6e.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:j6e.SettingsType.MAP,valueDefinition:{description:"",type:j6e.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:j6e.SettingsType.MAP,valueDefinition:{description:"",type:j6e.SettingsType.ANY}}},commands:[aAs.default,oAs.default]};e0e.default=T_l});var z6e=H(uGe=>{"use strict";Object.defineProperty(uGe,"__esModule",{value:!0});uGe.LINK_PROTOCOL=uGe.PORTAL_PROTOCOL=void 0;uGe.PORTAL_PROTOCOL="portal:";uGe.LINK_PROTOCOL="link:"});var uAs=H($xt=>{"use strict";Object.defineProperty($xt,"__esModule",{value:!0});$xt.LinkFetcher=void 0;var lAs=Sn(),ux=ro(),aJr=z6e(),cJr=class{supports(t,r){return!!t.reference.startsWith(aJr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=lAs.structUtils.parseFileStyleRange(t.reference,{protocol:aJr.LINK_PROTOCOL});if(ux.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:ux.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=lAs.structUtils.parseFileStyleRange(t.reference,{protocol:aJr.LINK_PROTOCOL}),o=ux.ppath.isAbsolute(a)?{packageFs:new ux.CwdFS(ux.PortablePath.root),prefixPath:ux.PortablePath.dot,localPath:ux.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new ux.CwdFS(ux.PortablePath.root),prefixPath:ux.ppath.relative(ux.PortablePath.root,o.localPath),localPath:ux.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=ux.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new ux.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:ux.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new ux.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:ux.PortablePath.dot,discardFromLookup:!0}}};$xt.LinkFetcher=cJr});var gAs=H(tGt=>{"use strict";Object.defineProperty(tGt,"__esModule",{value:!0});tGt.LinkResolver=void 0;var R_l=Sn(),lJr=Sn(),N_l=ro(),eGt=z6e(),uJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(eGt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(eGt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return lJr.structUtils.bindDescriptor(t,{locator:lJr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(eGt.LINK_PROTOCOL.length);return[lJr.structUtils.makeLocator(t,`${eGt.LINK_PROTOCOL}${N_l.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:R_l.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};tGt.LinkResolver=uJr});var dAs=H(rGt=>{"use strict";Object.defineProperty(rGt,"__esModule",{value:!0});rGt.PortalFetcher=void 0;var AAs=Sn(),gx=ro(),gJr=z6e(),AJr=class{supports(t,r){return!!t.reference.startsWith(gJr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:n,path:a}=AAs.structUtils.parseFileStyleRange(t.reference,{protocol:gJr.PORTAL_PROTOCOL});if(gx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(n,r);return o===null?null:gx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:n,path:a}=AAs.structUtils.parseFileStyleRange(t.reference,{protocol:gJr.PORTAL_PROTOCOL}),o=gx.ppath.isAbsolute(a)?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.PortablePath.dot,localPath:gx.PortablePath.root}:await r.fetcher.fetch(n,r),l=o.localPath?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.ppath.relative(gx.PortablePath.root,o.localPath),localPath:gx.PortablePath.root}:o;o!==l&&o.releaseFs&&o.releaseFs();let A=l.packageFs,f=gx.ppath.resolve(l.localPath??l.packageFs.getRealPath(),l.prefixPath,a);return o.localPath?{packageFs:new gx.CwdFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:gx.PortablePath.dot,localPath:f}:{packageFs:new gx.JailFS(f,{baseFs:A}),releaseFs:l.releaseFs,prefixPath:gx.PortablePath.dot}}};rGt.PortalFetcher=AJr});var pAs=H(sGt=>{"use strict";Object.defineProperty(sGt,"__esModule",{value:!0});sGt.PortalResolver=void 0;var D_l=Sn(),k_l=Sn(),nGt=Sn(),x_l=ro(),iGt=z6e(),dJr=class{supportsDescriptor(t,r){return!!t.range.startsWith(iGt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(iGt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){return nGt.structUtils.bindDescriptor(t,{locator:nGt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(iGt.PORTAL_PROTOCOL.length);return[nGt.structUtils.makeLocator(t,`${iGt.PORTAL_PROTOCOL}${x_l.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let n=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await nGt.miscUtils.releaseAfterUseAsync(async()=>await D_l.Manifest.find(n.prefixPath,{baseFs:n.packageFs}),n.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:k_l.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};sGt.PortalResolver=dJr});var CAs=H(U4=>{"use strict";Object.defineProperty(U4,"__esModule",{value:!0});U4.LinkResolver=U4.LinkFetcher=U4.PortalResolver=U4.PortalFetcher=void 0;var fAs=uAs();Object.defineProperty(U4,"LinkFetcher",{enumerable:!0,get:function(){return fAs.LinkFetcher}});var IAs=gAs();Object.defineProperty(U4,"LinkResolver",{enumerable:!0,get:function(){return IAs.LinkResolver}});var hAs=dAs();Object.defineProperty(U4,"PortalFetcher",{enumerable:!0,get:function(){return hAs.PortalFetcher}});var mAs=pAs();Object.defineProperty(U4,"PortalResolver",{enumerable:!0,get:function(){return mAs.PortalResolver}});var G_l={fetchers:[fAs.LinkFetcher,hAs.PortalFetcher],resolvers:[IAs.LinkResolver,mAs.PortalResolver]};U4.default=G_l});var mJr=H(gGe=>{"use strict";Object.defineProperty(gGe,"__esModule",{value:!0});gGe.hoist=gGe.HoisterDependencyKind=void 0;var t0e;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(t0e||(gGe.HoisterDependencyKind=t0e={}));var Pte;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})(Pte||(Pte={}));var fJr=(e,t)=>`${e}@${t}`,_As=(e,t)=>{let r=t.indexOf("#"),n=r>=0?t.substring(r+1):t;return fJr(e,n)},K4;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(K4||(K4={}));var F_l=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||K4.NONE),n=t.check||r>=K4.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:n,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},l;o.debugLevel>=K4.PERF&&(l=Date.now());let A=M_l(e,o),f=!1,I=0;do{let C=IJr(A,[A],new Set([A.locator]),new Map,o);f=C.anotherRoundNeeded||C.isGraphChanged,o.fastLookupPossible=!1,I++}while(f);if(o.debugLevel>=K4.PERF&&console.log(`hoist time: ${Date.now()-l}ms, rounds: ${I}`),o.debugLevel>=K4.CHECK){let C=q6e(A);if(IJr(A,[A],new Set([A.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: -${C}, next tree: -${q6e(A)}`);let E=EAs(A);if(E)throw new Error(`${E}, after hoisting finished: -${q6e(A)}`)}return o.debugLevel>=K4.REASONS&&console.log(q6e(A)),H_l(A)};gGe.hoist=F_l;var Z_l=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=o=>{if(!n.has(o)){n.add(o);for(let l of o.hoistedDependencies.values())r.set(l.name,l);for(let l of o.dependencies.values())o.peerNames.has(l.name)||a(l)}};return a(t),r},L_l=e=>{let t=e[e.length-1],r=new Map,n=new Set,a=new Set,o=(l,A)=>{if(n.has(l))return;n.add(l);for(let I of l.hoistedDependencies.values())if(!A.has(I.name)){let C;for(let b of e)C=b.dependencies.get(I.name),C&&r.set(C.name,C)}let f=new Set;for(let I of l.dependencies.values())f.add(I.name);for(let I of l.dependencies.values())l.peerNames.has(I.name)||o(I,f)};return o(t,a),r},yAs=(e,t)=>{if(t.decoupled)return t;let{name:r,references:n,ident:a,locator:o,dependencies:l,originalDependencies:A,hoistedDependencies:f,peerNames:I,reasons:C,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:B,hoistedTo:F}=t,Q={name:r,references:new Set(n),ident:a,locator:o,dependencies:new Map(l),originalDependencies:new Map(A),hoistedDependencies:new Map(f),peerNames:new Set(I),reasons:new Map(C),decoupled:!0,isHoistBorder:b,hoistPriority:E,dependencyKind:N,hoistedFrom:new Map(B),hoistedTo:new Map(F)},X=Q.dependencies.get(r);return X&&X.ident==Q.ident&&Q.dependencies.set(r,Q),e.dependencies.set(Q.name,Q),Q},V_l=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let n=Array.from(t.keys());n.sort((a,o)=>{let l=t.get(a),A=t.get(o);if(A.hoistPriority!==l.hoistPriority)return A.hoistPriority-l.hoistPriority;{let f=l.dependents.size+l.peerDependents.size;return A.dependents.size+A.peerDependents.size-f}});for(let a of n){let o=a.substring(0,a.indexOf("@",1)),l=a.substring(o.length+1);if(!e.peerNames.has(o)){let A=r.get(o);A||(A=[],r.set(o,A)),A.indexOf(l)<0&&A.push(l)}}return r},pJr=e=>{let t=new Set,r=(n,a=new Set)=>{if(!a.has(n)){a.add(n);for(let o of n.peerNames)if(!e.peerNames.has(o)){let l=e.dependencies.get(o);l&&!t.has(l)&&r(l,a)}t.add(n)}};for(let n of e.dependencies.values())e.peerNames.has(n.name)||r(n);return t},IJr=(e,t,r,n,a,o=new Set)=>{let l=t[t.length-1];if(o.has(l))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(l);let A=Y_l(l),f=V_l(l,A),I=e==l?new Map:a.fastLookupPossible?Z_l(t):L_l(t),C,b=!1,E=!1,N=new Map(Array.from(f.entries()).map(([F,Q])=>[F,Q[0]])),B=new Map;do{let F=O_l(e,t,r,I,N,f,n,B,a);F.isGraphChanged&&(E=!0),F.anotherRoundNeeded&&(b=!0),C=!1;for(let[Q,X]of f)X.length>1&&!l.dependencies.has(Q)&&(N.delete(Q),X.shift(),N.set(Q,X[0]),C=!0)}while(C);for(let F of l.dependencies.values())if(!l.peerNames.has(F.name)&&!r.has(F.locator)){r.add(F.locator);let Q=IJr(e,[...t,F],r,B,a);Q.isGraphChanged&&(E=!0),Q.anotherRoundNeeded&&(b=!0),r.delete(F.locator)}return{anotherRoundNeeded:b,isGraphChanged:E}},P_l=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},W_l=(e,t,r,n,a,o,l,A,{outputReason:f,fastLookupPossible:I})=>{let C,b=null,E=new Set;f&&(C=`${Array.from(t).map(Q=>Ax(Q)).join("\u2192")}`);let N=r[r.length-1],F=!(n.ident===N.ident);if(f&&!F&&(b="- self-reference"),F&&(F=n.dependencyKind!==t0e.WORKSPACE,f&&!F&&(b="- workspace")),F&&n.dependencyKind===t0e.EXTERNAL_SOFT_LINK&&(F=!P_l(n),f&&!F&&(b="- external soft link with unhoisted dependencies")),F&&(F=!e.peerNames.has(n.name),f&&!F&&(b=`- cannot shadow peer: ${Ax(e.originalDependencies.get(n.name).locator)} at ${C}`)),F){let Q=!1,X=a.get(n.name);if(Q=!X||X.ident===n.ident,f&&!Q&&(b=`- filled by: ${Ax(X.locator)} at ${C}`),Q)for(let ae=r.length-1;ae>=1;ae--){let ce=r[ae].dependencies.get(n.name);if(ce&&ce.ident!==n.ident){Q=!1;let fe=A.get(N);fe||(fe=new Set,A.set(N,fe)),fe.add(n.name),f&&(b=`- filled by ${Ax(ce.locator)} at ${r.slice(0,ae).map(ue=>Ax(ue.locator)).join("\u2192")}`);break}}F=Q}if(F&&(F=o.get(n.name)===n.ident,f&&!F&&(b=`- filled by: ${Ax(l.get(n.name)[0])} at ${C}`)),F){let Q=!0,X=new Set(n.peerNames);for(let ae=r.length-1;ae>=1;ae--){let ne=r[ae];for(let ce of X){if(ne.peerNames.has(ce)&&ne.originalDependencies.has(ce))continue;let fe=ne.dependencies.get(ce);fe&&e.dependencies.get(ce)!==fe&&(ae===r.length-1?E.add(fe):(E=null,Q=!1,f&&(b=`- peer dependency ${Ax(fe.locator)} from parent ${Ax(ne.locator)} was not hoisted to ${C}`))),X.delete(ce)}if(!Q)break}F=Q}if(F&&!I)for(let Q of n.hoistedDependencies.values()){let X=a.get(Q.name)||e.dependencies.get(Q.name);if(!X||Q.ident!==X.ident){F=!1,f&&(b=`- previously hoisted dependency mismatch, needed: ${Ax(Q.locator)}, available: ${Ax(X?.locator)}`);break}}return E!==null&&E.size>0?{isHoistable:Pte.DEPENDS,dependsOn:E,reason:b}:{isHoistable:F?Pte.YES:Pte.NO,reason:b}},oGt=e=>`${e.name}@${e.locator}`,O_l=(e,t,r,n,a,o,l,A,f)=>{let I=t[t.length-1],C=new Set,b=!1,E=!1,N=(X,ae,ne,ce,fe)=>{if(C.has(ce))return;let ue=[...ae,oGt(ce)],de=[...ne,oGt(ce)],be=new Map,Se=new Map;for(let Me of pJr(ce)){let je=W_l(I,r,[I,...X,ce],Me,n,a,o,A,{outputReason:f.debugLevel>=K4.REASONS,fastLookupPossible:f.fastLookupPossible});if(Se.set(Me,je),je.isHoistable===Pte.DEPENDS)for(let St of je.dependsOn){let At=be.get(St.name)||new Set;At.add(Me.name),be.set(St.name,At)}}let De=new Set,k=(Me,je,St)=>{if(!De.has(Me)){De.add(Me),Se.set(Me,{isHoistable:Pte.NO,reason:St});for(let At of be.get(Me.name)||[])k(ce.dependencies.get(At),je,f.debugLevel>=K4.REASONS?`- peer dependency ${Ax(Me.locator)} from parent ${Ax(ce.locator)} was not hoisted`:"")}};for(let[Me,je]of Se)je.isHoistable===Pte.NO&&k(Me,je,je.reason);let et=!1;for(let Me of Se.keys())if(!De.has(Me)){E=!0;let je=l.get(ce);je&&je.has(Me.name)&&(b=!0),et=!0,ce.dependencies.delete(Me.name),ce.hoistedDependencies.set(Me.name,Me),ce.reasons.delete(Me.name);let St=I.dependencies.get(Me.name);if(f.debugLevel>=K4.REASONS){let At=Array.from(ae).concat([ce.locator]).map(Tr=>Ax(Tr)).join("\u2192"),Yt=I.hoistedFrom.get(Me.name);Yt||(Yt=[],I.hoistedFrom.set(Me.name,Yt)),Yt.push(At),ce.hoistedTo.set(Me.name,Array.from(t).map(Tr=>Ax(Tr.locator)).join("\u2192"))}if(!St)I.ident!==Me.ident&&(I.dependencies.set(Me.name,Me),fe.add(Me));else for(let At of Me.references)St.references.add(At)}if(ce.dependencyKind===t0e.EXTERNAL_SOFT_LINK&&et&&(b=!0),f.check){let Me=EAs(e);if(Me)throw new Error(`${Me}, after hoisting dependencies of ${[I,...X,ce].map(je=>Ax(je.locator)).join("\u2192")}: -${q6e(e)}`)}let ct=pJr(ce);for(let Me of ct)if(De.has(Me)){let je=Se.get(Me);if((a.get(Me.name)===Me.ident||!ce.reasons.has(Me.name))&&je.isHoistable!==Pte.YES&&ce.reasons.set(Me.name,je.reason),!Me.isHoistBorder&&de.indexOf(oGt(Me))<0){C.add(ce);let At=yAs(ce,Me);N([...X,ce],ue,de,At,F),C.delete(ce)}}},B,F=new Set(pJr(I)),Q=Array.from(t).map(X=>oGt(X));do{B=F,F=new Set;for(let X of B){if(X.locator===I.locator||X.isHoistBorder)continue;let ae=yAs(I,X);N([],Array.from(r),Q,ae,F)}}while(F.size>0);return{anotherRoundNeeded:b,isGraphChanged:E}},EAs=e=>{let t=[],r=new Set,n=new Set,a=(o,l,A)=>{if(r.has(o)||(r.add(o),n.has(o)))return;let f=new Map(l);for(let I of o.dependencies.values())o.peerNames.has(I.name)||f.set(I.name,I);for(let I of o.originalDependencies.values()){let C=f.get(I.name),b=()=>`${Array.from(n).concat([o]).map(E=>Ax(E.locator)).join("\u2192")}`;if(o.peerNames.has(I.name)){let E=l.get(I.name);(E!==C||!E||E.ident!==I.ident)&&t.push(`${b()} - broken peer promise: expected ${I.ident} but found ${E&&E.ident}`)}else{let E=A.hoistedFrom.get(o.name),N=o.hoistedTo.get(I.name),B=`${E?` hoisted from ${E.join(", ")}`:""}`,F=`${N?` hoisted to ${N}`:""}`,Q=`${b()}${B}`;C?C.ident!==I.ident&&t.push(`${Q} - broken require promise for ${I.name}${F}: expected ${I.ident}, but found: ${C.ident}`):t.push(`${Q} - broken require promise: no required dependency ${I.name}${F} found`)}}n.add(o);for(let I of o.dependencies.values())o.peerNames.has(I.name)||a(I,f,o);n.delete(o)};return a(e,e.dependencies,e),t.join(` -`)},M_l=(e,t)=>{let{identName:r,name:n,reference:a,peerNames:o}=e,l={name:n,references:new Set([a]),locator:fJr(r,a),ident:_As(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:t0e.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},A=new Map([[e,l]]),f=(I,C)=>{let b=A.get(I),E=!!b;if(!b){let{name:N,identName:B,reference:F,peerNames:Q,hoistPriority:X,dependencyKind:ae}=I,ne=t.hoistingLimits.get(C.locator);b={name:N,references:new Set([F]),locator:fJr(B,F),ident:_As(B,F),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(Q),reasons:new Map,decoupled:!0,isHoistBorder:ne?ne.has(N):!1,hoistPriority:X||0,dependencyKind:ae||t0e.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},A.set(I,b)}if(C.dependencies.set(I.name,b),C.originalDependencies.set(I.name,b),E){let N=new Set,B=F=>{if(!N.has(F)){N.add(F),F.decoupled=!1;for(let Q of F.dependencies.values())F.peerNames.has(Q.name)||B(Q)}};B(b)}else for(let N of I.dependencies)f(N,b)};for(let I of e.dependencies)f(I,l);return l},hJr=e=>e.substring(0,e.indexOf("@",1)),H_l=e=>{let t={name:e.name,identName:hJr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),n=(a,o,l)=>{let A=r.has(a),f;if(o===a)f=l;else{let{name:I,references:C,locator:b}=a;f={name:I,identName:hJr(b),references:C,dependencies:new Set}}if(l.dependencies.add(f),!A){r.add(a);for(let I of a.dependencies.values())a.peerNames.has(I.name)||n(I,a,f);r.delete(a)}};for(let a of e.dependencies.values())n(a,e,t);return t},Y_l=e=>{let t=new Map,r=new Set([e]),n=l=>`${l.name}@${l.ident}`,a=l=>{let A=n(l),f=t.get(A);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(A,f)),f},o=(l,A)=>{let f=!!r.has(A);if(a(A).dependents.add(l.ident),!f){r.add(A);for(let C of A.dependencies.values()){let b=a(C);b.hoistPriority=Math.max(b.hoistPriority,C.hoistPriority),A.peerNames.has(C.name)?b.peerDependents.add(A.ident):o(A,C)}}};for(let l of e.dependencies.values())e.peerNames.has(l.name)||o(e,l);return t},Ax=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let n=e.substring(t+1);if(n==="workspace:.")return".";if(n){let a=(n.indexOf("#")>0?n.split("#")[1]:n).replace("npm:","");return n.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},bAs=5e4,q6e=e=>{let t=0,r=(a,o,l="")=>{if(t>bAs||o.has(a))return"";t++;let A=Array.from(a.dependencies.values()).sort((I,C)=>I.name===C.name?0:I.name>C.name?1:-1),f="";o.add(a);for(let I=0;I":"")+(E!==C.name?`a:${C.name}:`:"")+Ax(C.locator)+(b?` ${b}`:"")} -`,f+=r(C,o,`${l}${IbAs?` -Tree is too large, part of the tree has been dunped -`:"")}});var cGt=H(NH=>{"use strict";Object.defineProperty(NH,"__esModule",{value:!0});NH.buildLocatorMap=NH.buildNodeModulesTree=NH.getArchivePath=NH.NodeModulesHoistingLimits=NH.LinkType=void 0;var X_=Sn(),HR=ro(),SAs=ro(),AGe=mJr(),j4;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(j4||(NH.LinkType=j4={}));var $6e;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})($6e||(NH.NodeModulesHoistingLimits=$6e={}));var aGt="node_modules",yue="$wsroot$",Q_l=e=>e.indexOf(`.zip/${aGt}/`)>=0?HR.npath.toPortablePath(e.split(`/${aGt}/`)[0]):null;NH.getArchivePath=Q_l;var X_l=(e,t)=>{let{packageTree:r,hoistingLimits:n,errors:a,preserveSymlinksRequired:o}=K_l(e,t),l=null;if(a.length===0){let A=(0,AGe.hoist)(r,{hoistingLimits:n});l=z_l(e,A,t)}return{tree:l,errors:a,preserveSymlinksRequired:o}};NH.buildNodeModulesTree=X_l;var d6=e=>`${e.name}@${e.reference}`,J_l=e=>{let t=new Map;for(let[r,n]of e.entries())if(!n.dirList){let a=t.get(n.locator);a||(a={target:n.target,linkType:n.linkType,locations:[],aliases:n.aliases},t.set(n.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((n,a)=>{let o=n.split(HR.ppath.delimiter).length,l=a.split(HR.ppath.delimiter).length;return a===n?0:o!==l?l-o:a>n?1:-1});return t};NH.buildLocatorMap=J_l;var vAs=(e,t)=>{let r=X_.structUtils.isVirtualLocator(e)?X_.structUtils.devirtualizeLocator(e):e,n=X_.structUtils.isVirtualLocator(t)?X_.structUtils.devirtualizeLocator(t):t;return X_.structUtils.areLocatorsEqual(r,n)},CJr=(e,t,r,n)=>{if(e.linkType!==j4.SOFT)return!1;let a=HR.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return HR.ppath.contains(n,a)===null},U_l=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let n=HR.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},l=e.getDependencyTreeRoots(),A=new Map,f=new Set,I=(E,N)=>{let B=d6(E);if(f.has(B))return;f.add(B);let F=e.getPackageInformation(E);if(F){let Q=N?d6(N):"";if(d6(E)!==Q&&F.linkType===j4.SOFT&&!E.reference.startsWith("link:")&&!CJr(F,E,e,n)){let X=BAs(F,E,e);(!A.get(X)||E.reference.startsWith("workspace:"))&&A.set(X,E)}for(let[X,ae]of F.packageDependencies)ae!==null&&(F.packagePeers.has(X)||I(e.getLocator(X,ae),E))}};for(let E of l)I(E,null);let C=n.split(HR.ppath.sep);for(let E of A.values()){let N=e.getPackageInformation(E),F=HR.npath.toPortablePath(N.packageLocation.slice(0,-1)).split(HR.ppath.sep).slice(C.length),Q=o;for(let X of F){let ae=Q.children.get(X);ae||(ae={children:new Map},Q.children.set(X,ae)),Q=ae}Q.workspaceLocator=E}let b=(E,N)=>{if(E.workspaceLocator){let B=d6(N),F=a.get(B);F||(F=new Set,a.set(B,F)),F.add(E.workspaceLocator)}for(let B of E.children.values())b(B,E.workspaceLocator||N)};for(let E of o.children.values())b(E,o.workspaceLocator);return a},K_l=(e,t)=>{let r=[],n=!1,a=new Map,o=U_l(e),l=e.getPackageInformation(e.topLevel);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let A=e.findPackageLocator(l.packageLocation);if(A===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=HR.npath.toPortablePath(l.packageLocation.slice(0,-1)),I={name:A.name,identName:A.name,reference:A.reference,peerNames:l.packagePeers,dependencies:new Set,dependencyKind:AGe.HoisterDependencyKind.WORKSPACE},C=new Map,b=(N,B)=>`${d6(B)}:${N}`,E=(N,B,F,Q,X,ae,ne,ce)=>{let fe=b(N,F),ue=C.get(fe),de=!!ue;!de&&F.name===A.name&&F.reference===A.reference&&(ue=I,C.set(fe,I));let be=CJr(B,F,e,f);if(!ue){let Me=AGe.HoisterDependencyKind.REGULAR;be?Me=AGe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:B.linkType===j4.SOFT&&F.name.endsWith(yue)&&(Me=AGe.HoisterDependencyKind.WORKSPACE),ue={name:N,identName:F.name,reference:F.reference,dependencies:new Set,peerNames:Me===AGe.HoisterDependencyKind.WORKSPACE?new Set:B.packagePeers,dependencyKind:Me},C.set(fe,ue)}let Se;if(be?Se=2:X.linkType===j4.SOFT?Se=1:Se=0,ue.hoistPriority=Math.max(ue.hoistPriority||0,Se),ce&&!be){let Me=d6({name:Q.identName,reference:Q.reference}),je=a.get(Me)||new Set;a.set(Me,je),je.add(ue.name)}let De=new Map(B.packageDependencies);if(t.project){let Me=t.project.workspacesByCwd.get(HR.npath.toPortablePath(B.packageLocation.slice(0,-1)));if(Me){let je=new Set([...Array.from(Me.manifest.peerDependencies.values(),St=>X_.structUtils.stringifyIdent(St)),...Array.from(Me.manifest.peerDependenciesMeta.keys())]);for(let St of je)De.has(St)||(De.set(St,ae.get(St)||null),ue.peerNames.add(St))}}let k=d6({name:F.name.replace(yue,""),reference:F.reference}),et=o.get(k);if(et)for(let Me of et)De.set(`${Me.name}${yue}`,Me.reference);(B!==X||B.linkType!==j4.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ne)))&&Q.dependencies.add(ue);let ct=F!==A&&B.linkType===j4.SOFT&&!F.name.endsWith(yue)&&!be;if(!de&&!ct){let Me=new Map;for(let[je,St]of De)if(St!==null){let At=e.getLocator(je,St),Yt=e.getLocator(je.replace(yue,""),St),Tr=e.getPackageInformation(Yt);if(Tr===null)throw new Error("Assertion failed: Expected the package to have been registered");let Nr=CJr(Tr,At,e,f);if(t.validateExternalSoftLinks&&t.project&&Nr){Tr.packageDependencies.size>0&&(n=!0);for(let[qt,Xt]of Tr.packageDependencies)if(Xt!==null){let lr=X_.structUtils.parseLocator(Array.isArray(Xt)?`${Xt[0]}@${Xt[1]}`:`${qt}@${Xt}`);if(d6(lr)!==d6(At)){let cr=De.get(qt);if(cr){let Ar=X_.structUtils.parseLocator(Array.isArray(cr)?`${cr[0]}@${cr[1]}`:`${qt}@${cr}`);vAs(Ar,lr)||r.push({messageName:X_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(At.name))} into ${X_.structUtils.prettyLocator(t.project.configuration,X_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${X_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with parent dependency ${X_.structUtils.prettyLocator(t.project.configuration,Ar)}`})}else{let Ar=Me.get(qt);if(Ar){let qr=Ar.target,_n=X_.structUtils.parseLocator(Array.isArray(qr)?`${qr[0]}@${qr[1]}`:`${qt}@${qr}`);vAs(_n,lr)||r.push({messageName:X_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(At.name))} into ${X_.structUtils.prettyLocator(t.project.configuration,X_.structUtils.parseLocator(`${F.name}@${F.reference}`))} dependency ${X_.structUtils.prettyLocator(t.project.configuration,lr)} conflicts with dependency ${X_.structUtils.prettyLocator(t.project.configuration,_n)} from sibling portal ${X_.structUtils.prettyIdent(t.project.configuration,X_.structUtils.parseIdent(Ar.portal.name))}`})}else Me.set(qt,{target:lr.reference,portal:At})}}}}let er=t.hoistingLimitsByCwd?.get(ne),vt=Nr?ne:HR.ppath.relative(f,HR.npath.toPortablePath(Tr.packageLocation))||SAs.PortablePath.dot,xt=t.hoistingLimitsByCwd?.get(vt),Zr=er===$6e.DEPENDENCIES||xt===$6e.DEPENDENCIES||xt===$6e.WORKSPACES;E(je,Tr,At,ue,B,De,vt,Zr)}}};return E(A.name,l,A,I,l,l.packageDependencies,SAs.PortablePath.dot,!1),{packageTree:I,hoistingLimits:a,errors:r,preserveSymlinksRequired:n}};function BAs(e,t,r){let n=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return HR.npath.toPortablePath(n||e.packageLocation)}function j_l(e,t,r){let n=t.getLocator(e.name.replace(yue,""),e.reference),a=t.getPackageInformation(n);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:j4.SOFT,target:HR.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:BAs(a,e,t)}}var z_l=(e,t,r)=>{let n=new Map,a=(C,b,E)=>{let{linkType:N,target:B}=j_l(C,e,r);return{locator:d6(C),nodePath:b,target:B,linkType:N,aliases:E}},o=C=>{let[b,E]=C.split("/");return E?{scope:b,name:E}:{scope:null,name:b}},l=new Set,A=(C,b,E)=>{if(l.has(C))return;l.add(C);let N=Array.from(C.references).sort().join("#");for(let B of C.dependencies){let F=Array.from(B.references).sort().join("#");if(B.identName===C.identName.replace(yue,"")&&F===N)continue;let Q=Array.from(B.references).sort(),X={name:B.identName,reference:Q[0]},{name:ae,scope:ne}=o(B.name),ce=ne?[ne,ae]:[ae],fe=HR.ppath.join(b,aGt),ue=HR.ppath.join(fe,...ce),de=`${E}/${X.name}`,be=a(X,E,Q.slice(1)),Se=!1;if(be.linkType===j4.SOFT&&r.project){let De=r.project.workspacesByCwd.get(be.target.slice(0,-1));Se=!!(De&&!De.manifest.name)}if(!B.name.endsWith(yue)&&!Se){let De=n.get(ue);if(De){if(De.dirList)throw new Error(`Assertion failed: ${ue} cannot merge dir node with leaf node`);{let ct=X_.structUtils.parseLocator(De.locator),Me=X_.structUtils.parseLocator(be.locator);if(De.linkType!==be.linkType)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different link types ${De.nodePath}/${X_.structUtils.stringifyLocator(ct)} and ${E}/${X_.structUtils.stringifyLocator(Me)}`);if(ct.identHash!==Me.identHash)throw new Error(`Assertion failed: ${ue} cannot merge nodes with different idents ${De.nodePath}/${X_.structUtils.stringifyLocator(ct)} and ${E}/s${X_.structUtils.stringifyLocator(Me)}`);be.aliases=[...be.aliases,...De.aliases,X_.structUtils.parseLocator(De.locator).reference]}}n.set(ue,be);let k=ue.split("/"),et=k.indexOf(aGt);for(let ct=k.length-1;et>=0&&ct>et;ct--){let Me=HR.npath.toPortablePath(k.slice(0,ct).join(HR.ppath.sep)),je=k[ct],St=n.get(Me);if(!St)n.set(Me,{dirList:new Set([je])});else if(St.dirList){if(St.dirList.has(je))break;St.dirList.add(je)}}}A(B,be.linkType===j4.SOFT?be.target:ue,de)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),I=f.target;return n.set(I,f),A(t,I,""),n}});var e7e=H(QV=>{"use strict";Object.defineProperty(QV,"__esModule",{value:!0});QV.HoisterDependencyKind=QV.hoist=QV.getArchivePath=QV.buildLocatorMap=QV.buildNodeModulesTree=QV.NodeModulesHoistingLimits=void 0;var q_l=cGt();Object.defineProperty(QV,"getArchivePath",{enumerable:!0,get:function(){return q_l.getArchivePath}});var wAs=cGt();Object.defineProperty(QV,"buildNodeModulesTree",{enumerable:!0,get:function(){return wAs.buildNodeModulesTree}});Object.defineProperty(QV,"buildLocatorMap",{enumerable:!0,get:function(){return wAs.buildLocatorMap}});var $_l=cGt();Object.defineProperty(QV,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return $_l.NodeModulesHoistingLimits}});var TAs=mJr();Object.defineProperty(QV,"hoist",{enumerable:!0,get:function(){return TAs.hoist}});Object.defineProperty(QV,"HoisterDependencyKind",{enumerable:!0,get:function(){return TAs.HoisterDependencyKind}})});var LJr=H(z4=>{"use strict";Object.defineProperty(z4,"__esModule",{value:!0});var e0l=wt("zlib"),WAs=wt("path"),r0e=wt("module"),eB=wt("url"),RAs=wt("util"),t0l=wt("assert"),r0l=wt("fs"),n0l=wt("crypto"),i0l=wt("os"),fGt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},OAs=fGt(e0l),uGt=fGt(WAs),s0l=fGt(t0l),o0l=fGt(r0l),MAs=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(MAs||{}),a0l=456789e3,vJr={root:"/",dot:".",parent:".."},gGt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},Rc=Object.create(uGt.default),gh=Object.create(uGt.default.posix);Rc.cwd=()=>process.cwd();gh.cwd=process.platform==="win32"?()=>xJr(process.cwd()):process.cwd;process.platform==="win32"&&(gh.resolve=(...e)=>e.length>0&&gh.isAbsolute(e[0])?uGt.default.posix.resolve(...e):uGt.default.posix.resolve(gh.cwd(),...e));var HAs=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};Rc.contains=(e,t)=>HAs(Rc,e,t);gh.contains=(e,t)=>HAs(gh,e,t);var c0l=/^([a-zA-Z]:.*)$/,l0l=/^\/\/(\.\/)?(.*)$/,u0l=/^\/([a-zA-Z]:.*)$/,g0l=/^\/unc\/(\.dot\/)?(.*)$/;function A0l(e){let t,r;if(t=e.match(u0l))e=t[1];else if(r=e.match(g0l))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function d0l(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(c0l))?e=`/${t[1]}`:(r=e.match(l0l))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var xJr=process.platform==="win32"?d0l:e=>e,YAs=process.platform==="win32"?A0l:e=>e;Rc.fromPortablePath=YAs;Rc.toPortablePath=xJr;function QAs(e,t){return e===Rc?YAs(t):xJr(t)}var i0e=new Date(a0l*1e3),p0l=i0e.getTime();async function f0l(e,t,r,n,a){let o=e.pathUtils.normalize(t),l=r.pathUtils.normalize(n),A=[],f=[],{atime:I,mtime:C}=a.stableTime?{atime:i0e,mtime:i0e}:await r.lstatPromise(l);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[I,C]}),await BJr(A,f,e,o,r,l,{...a,didParentExist:!0});for(let b of A)await b();await Promise.all(f.map(b=>b()))}async function BJr(e,t,r,n,a,o,l){let A=l.didParentExist?await XAs(r,n):null,f=await a.lstatPromise(o),{atime:I,mtime:C}=l.stableTime?{atime:i0e,mtime:i0e}:f,b;switch(!0){case f.isDirectory():b=await I0l(e,t,r,n,A,a,o,f,l);break;case f.isFile():b=await C0l(e,t,r,n,A,a,o,f,l);break;case f.isSymbolicLink():b=await _0l(e,t,r,n,A,a,o,f,l);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(l.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((b||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==I.getTime())&&(t.push(()=>r.lutimesPromise(n,I,C)),b=!0),(A===null||(A.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(n,f.mode&511)),b=!0)),b}async function XAs(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function I0l(e,t,r,n,a,o,l,A,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;let I=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(n,{mode:A.mode})}catch(E){if(E.code!=="EEXIST")throw E}}),I=!0);let C=await o.readdirPromise(l),b=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let E of C.sort())await BJr(e,t,r,r.pathUtils.join(n,E),o,o.pathUtils.join(l,E),b)&&(I=!0);else(await Promise.all(C.map(async N=>{await BJr(e,t,r,r.pathUtils.join(n,N),o,o.pathUtils.join(l,N),b)}))).some(N=>N)&&(I=!0);return I}async function h0l(e,t,r,n,a,o,l,A,f,I){let C=await o.checksumFilePromise(l,{algorithm:"sha1"}),b=420,E=A.mode&511,N=`${C}${E!==b?E.toString(8):""}`,B=r.pathUtils.join(I.indexPath,C.slice(0,2),`${N}.dat`),F;(ce=>{ce[ce.Lock=0]="Lock",ce[ce.Rename=1]="Rename"})(F||(F={}));let Q=1,X=await XAs(r,B);if(a){let ce=X&&a.dev===X.dev&&a.ino===X.ino,fe=X?.mtimeMs!==p0l;if(ce&&fe&&I.autoRepair&&(Q=0,X=null),!ce)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1}let ae=!X&&Q===1?`${B}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ne=!1;return e.push(async()=>{if(!X&&(Q===0&&await r.lockPromise(B,async()=>{let ce=await o.readFilePromise(l);await r.writeFilePromise(B,ce)}),Q===1&&ae)){let ce=await o.readFilePromise(l);await r.writeFilePromise(ae,ce);try{await r.linkPromise(ae,B)}catch(fe){if(fe.code==="EEXIST")ne=!0,await r.unlinkPromise(ae);else throw fe}}a||await r.linkPromise(B,n)}),t.push(async()=>{X||(await r.lutimesPromise(B,i0e,i0e),E!==b&&await r.chmodPromise(B,E)),ae&&!ne&&await r.unlinkPromise(ae)}),!1}async function m0l(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{let I=await o.readFilePromise(l);await r.writeFilePromise(n,I)}),!0}async function C0l(e,t,r,n,a,o,l,A,f){return f.linkStrategy?.type==="HardlinkFromIndex"?h0l(e,t,r,n,a,o,l,A,f,f.linkStrategy):m0l(e,t,r,n,a,o,l,A,f)}async function _0l(e,t,r,n,a,o,l,A,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(n)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(QAs(r.pathUtils,await o.readlinkPromise(l)),n)}),!0}var AGt=class{pathUtils;constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let n=[t];for(;n.length>0;){let a=n.shift();if((await this.lstatPromise(a)).isDirectory()){let l=await this.readdirPromise(a);if(r)for(let A of l.sort())n.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let n=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),l=n0l.createHash(r),A=0;for(;(A=await this.readPromise(n,o,0,65536))!==0;)l.update(A===65536?o:o.slice(0,A));return l.digest("hex")}finally{await this.closePromise(n)}}async removePromise(t,{recursive:r=!0,maxRetries:n=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(l=>this.removePromise(this.pathUtils.resolve(t,l))))}for(let o=0;o<=n;o++)try{await this.rmdirPromise(t);break}catch(l){if(l.code!=="EBUSY"&&l.code!=="ENOTEMPTY")throw l;osetTimeout(A,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let n;try{n=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(n.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&await this.chmodPromise(A,r),n!=null)await this.utimesPromise(A,n[0],n[1]);else{let f=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:n}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let l=2;l<=a.length;++l){let A=a.slice(0,l).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=A,r!=null&&this.chmodSync(A,r),n!=null)this.utimesSync(A,n[0],n[1]);else{let f=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:n=this,overwrite:a=!0,stableSort:o=!1,stableTime:l=!1,linkStrategy:A=null}={}){return await f0l(this,t,n,r,{overwrite:a,stableSort:o,stableTime:l,linkStrategy:A})}copySync(t,r,{baseFs:n=this,overwrite:a=!0}={}){let o=n.lstatSync(r),l=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=n.readdirSync(r);for(let I of f)this.copySync(this.pathUtils.join(t,I),n.pathUtils.join(r,I),{baseFs:n,overwrite:a})}else if(o.isFile()){if(!l||a){l&&this.removeSync(t);let f=n.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!l||a){l&&this.removeSync(t);let f=n.readlinkSync(r);this.symlinkSync(QAs(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let A=o.mode&511;this.chmodSync(t,A)}async changeFilePromise(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,n):this.changeFileTextPromise(t,r,n)}async changeFileBufferPromise(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:n})}async changeFileTextPromise(t,r,{automaticNewlines:n,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let l=n?NAs(o,r):r;o!==l&&await this.writeFilePromise(t,l,{mode:a})}changeFileSync(t,r,n={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,n):this.changeFileTextSync(t,r,n)}changeFileBufferSync(t,r,{mode:n}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:n})}changeFileTextSync(t,r,{automaticNewlines:n=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let l=n?NAs(o,r):r;o!==l&&this.writeFileSync(t,l,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(n){if(n.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw n}}moveSync(t,r){try{this.renameSync(t,r)}catch(n){if(n.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw n}}async lockPromise(t,r){let n=`${t}.flock`,a=1e3/60,o=Date.now(),l=null,A=async()=>{let f;try{[f]=await this.readJsonPromise(n)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;l===null;)try{l=await this.openPromise(n,"wx")}catch(f){if(f.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(n);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(I=>setTimeout(I,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${n})`)}else throw f}await this.writePromise(l,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(l),await this.unlinkPromise(n)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(n){throw n.message+=` (in ${t})`,n}}async writeJsonPromise(t,r,{compact:n=!1}={}){let a=n?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} -`)}writeJsonSync(t,r,{compact:n=!1}={}){let a=n?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let n=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,n.atime,n.mtime)}async preserveTimeSync(t,r){let n=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,n.atime,n.mtime)}},wJr=class extends AGt{constructor(){super(gh)}};function y0l(e){let t=e.match(/\r?\n/g);if(t===null)return i0l.EOL;let r=t.filter(a=>a===`\r -`).length,n=t.length-r;return r>n?`\r -`:` -`}function NAs(e,t){return t.replace(/\r?\n/g,y0l(e))}var TJr=class extends AGt{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,n){return this.baseFs.openPromise(this.mapToBase(t),r,n)}openSync(t,r,n){return this.baseFs.openSync(this.mapToBase(t),r,n)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,n,a,o){return await this.baseFs.readPromise(t,r,n,a,o)}readSync(t,r,n,a,o){return this.baseFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,n):await this.baseFs.writePromise(t,r,n,a,o)}writeSync(t,r,n,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,n):this.baseFs.writeSync(t,r,n,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,n){return this.baseFs.fchownPromise(t,r,n)}fchownSync(t,r,n){return this.baseFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return this.baseFs.chownPromise(this.mapToBase(t),r,n)}chownSync(t,r,n){return this.baseFs.chownSync(this.mapToBase(t),r,n)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,n=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),n)}copyFileSync(t,r,n=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),n)}async appendFilePromise(t,r,n){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,n)}appendFileSync(t,r,n){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,n)}async writeFilePromise(t,r,n){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,n)}writeFileSync(t,r,n){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,n)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,n){return this.baseFs.utimesPromise(this.mapToBase(t),r,n)}utimesSync(t,r,n){return this.baseFs.utimesSync(this.mapToBase(t),r,n)}async lutimesPromise(t,r,n){return this.baseFs.lutimesPromise(this.mapToBase(t),r,n)}lutimesSync(t,r,n){return this.baseFs.lutimesSync(this.mapToBase(t),r,n)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(l,a,n)}symlinkSync(t,r,n){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,n);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),l=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(l,a,n)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,n){return this.baseFs.watch(this.mapToBase(t),r,n)}watchFile(t,r,n){return this.baseFs.watchFile(this.mapToBase(t),r,n)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};function DAs(e){let t=e;return typeof e.path=="string"&&(t.path=Rc.toPortablePath(e.path)),t}var RJr=class extends wJr{realFs;constructor(t=o0l.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return vJr.root}resolve(t){return gh.resolve(t)}async openPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.open(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}openSync(t,r,n){return this.realFs.openSync(Rc.fromPortablePath(t),r,n)}async opendirPromise(t,r){return await new Promise((n,a)=>{typeof r<"u"?this.realFs.opendir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.opendir(Rc.fromPortablePath(t),this.makeCallback(n,a))}).then(n=>{let a=n;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(Rc.fromPortablePath(t),r):this.realFs.opendirSync(Rc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,n=0,a=0,o=-1){return await new Promise((l,A)=>{this.realFs.read(t,r,n,a,o,(f,I)=>{f?A(f):l(I)})})}readSync(t,r,n,a,o){return this.realFs.readSync(t,r,n,a,o)}async writePromise(t,r,n,a,o){return await new Promise((l,A)=>typeof r=="string"?this.realFs.write(t,r,n,this.makeCallback(l,A)):this.realFs.write(t,r,n,a,o,this.makeCallback(l,A)))}writeSync(t,r,n,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,n):this.realFs.writeSync(t,r,n,a,o)}async closePromise(t){await new Promise((r,n)=>{this.realFs.close(t,this.makeCallback(r,n))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createReadStream(n,r)}createWriteStream(t,r){let n=t!==null?Rc.fromPortablePath(t):t;return this.realFs.createWriteStream(n,r)}async realpathPromise(t){return await new Promise((r,n)=>{this.realFs.realpath(Rc.fromPortablePath(t),{},this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}realpathSync(t){return Rc.toPortablePath(this.realFs.realpathSync(Rc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(Rc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(Rc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((n,a)=>{this.realFs.access(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}existsSync(t){return this.realFs.existsSync(Rc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.stat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.stat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}statSync(t,r){return r?this.realFs.statSync(Rc.fromPortablePath(t),r):this.realFs.statSync(Rc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(n,a)):this.realFs.fstat(t,this.makeCallback(n,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.lstat(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.lstat(Rc.fromPortablePath(t),this.makeCallback(n,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(Rc.fromPortablePath(t),r):this.realFs.lstatSync(Rc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.fchmod(t,r,this.makeCallback(n,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((n,a)=>{this.realFs.chmod(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}chmodSync(t,r){return this.realFs.chmodSync(Rc.fromPortablePath(t),r)}async fchownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.fchown(t,r,n,this.makeCallback(a,o))})}fchownSync(t,r,n){return this.realFs.fchownSync(t,r,n)}async chownPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.chown(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}chownSync(t,r,n){return this.realFs.chownSync(Rc.fromPortablePath(t),r,n)}async renamePromise(t,r){return await new Promise((n,a)=>{this.realFs.rename(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}renameSync(t,r){return this.realFs.renameSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async copyFilePromise(t,r,n=0){return await new Promise((a,o)=>{this.realFs.copyFile(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}copyFileSync(t,r,n=0){return this.realFs.copyFileSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r),n)}async appendFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFile(l,r,n,this.makeCallback(a,o)):this.realFs.appendFile(l,r,this.makeCallback(a,o))})}appendFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.appendFileSync(a,r,n):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,n){return await new Promise((a,o)=>{let l=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFile(l,r,n,this.makeCallback(a,o)):this.realFs.writeFile(l,r,this.makeCallback(a,o))})}writeFileSync(t,r,n){let a=typeof t=="string"?Rc.fromPortablePath(t):t;n?this.realFs.writeFileSync(a,r,n):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,n)=>{this.realFs.unlink(Rc.fromPortablePath(t),this.makeCallback(r,n))})}unlinkSync(t){return this.realFs.unlinkSync(Rc.fromPortablePath(t))}async utimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.utimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}utimesSync(t,r,n){this.realFs.utimesSync(Rc.fromPortablePath(t),r,n)}async lutimesPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.lutimes(Rc.fromPortablePath(t),r,n,this.makeCallback(a,o))})}lutimesSync(t,r,n){this.realFs.lutimesSync(Rc.fromPortablePath(t),r,n)}async mkdirPromise(t,r){return await new Promise((n,a)=>{this.realFs.mkdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(Rc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rmdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rmdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(Rc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((n,a)=>{r?this.realFs.rm(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.rm(Rc.fromPortablePath(t),this.makeCallback(n,a))})}rmSync(t,r){return this.realFs.rmSync(Rc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((n,a)=>{this.realFs.link(Rc.fromPortablePath(t),Rc.fromPortablePath(r),this.makeCallback(n,a))})}linkSync(t,r){return this.realFs.linkSync(Rc.fromPortablePath(t),Rc.fromPortablePath(r))}async symlinkPromise(t,r,n){return await new Promise((a,o)=>{this.realFs.symlink(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n,this.makeCallback(a,o))})}symlinkSync(t,r,n){return this.realFs.symlinkSync(Rc.fromPortablePath(t.replace(/\/+$/,"")),Rc.fromPortablePath(r),n)}async readFilePromise(t,r){return await new Promise((n,a)=>{let o=typeof t=="string"?Rc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(n,a))})}readFileSync(t,r){let n=typeof t=="string"?Rc.fromPortablePath(t):t;return this.realFs.readFileSync(n,r)}async readdirPromise(t,r){return await new Promise((n,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(DAs)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(o=>n(o.map(Rc.toPortablePath)),a)):this.realFs.readdir(Rc.fromPortablePath(t),r,this.makeCallback(n,a)):this.realFs.readdir(Rc.fromPortablePath(t),this.makeCallback(n,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(DAs):this.realFs.readdirSync(Rc.fromPortablePath(t),r).map(Rc.toPortablePath):this.realFs.readdirSync(Rc.fromPortablePath(t),r):this.realFs.readdirSync(Rc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,n)=>{this.realFs.readlink(Rc.fromPortablePath(t),this.makeCallback(r,n))}).then(r=>Rc.toPortablePath(r))}readlinkSync(t){return Rc.toPortablePath(this.realFs.readlinkSync(Rc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.truncate(Rc.fromPortablePath(t),r,this.makeCallback(n,a))})}truncateSync(t,r){return this.realFs.truncateSync(Rc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((n,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(n,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,n){return this.realFs.watch(Rc.fromPortablePath(t),r,n)}watchFile(t,r,n){return this.realFs.watchFile(Rc.fromPortablePath(t),r,n)}unwatchFile(t,r){return this.realFs.unwatchFile(Rc.fromPortablePath(t),r)}makeCallback(t,r){return(n,a)=>{n?r(n):t(a)}}},b0l=/^[0-9]+$/,_Jr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,E0l=/^([^/]+-)?[a-f0-9]+$/,dGt=class e extends TJr{baseFs;static makeVirtualPath(t,r,n){if(gh.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!gh.basename(r).match(E0l))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=gh.relative(gh.dirname(t),n).split("/"),l=0;for(;l"u"||(A!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=IGt(f,I,t,r).replace(/^ +/g,""),A+=1)}return a+="}",a}function w0l(e,t,r){let n=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ -`;let l=0;for(let A=0,f=n.length;A"u"||(l!==0&&(o+=",",o+=` -`),o+=a,o+=JSON.stringify(I),o+=": ",o+=IGt(I,C,t,a).replace(/^ +/g,""),l+=1)}return l!==0&&(o+=` -`),o+=r,o+="}",o}function IGt(e,t,r,n){let{next:a}=JAs[r],o=a[e]||a["*"];return UAs(t,o,n)}function UAs(e,t,r){let{collapsed:n}=JAs[t];return Array.isArray(e)?n?S0l(e,t,r):v0l(e,t,r):typeof e=="object"&&e!==null?n?B0l(e,t,r):w0l(e,t,r):JSON.stringify(e)}function KAs(e){return UAs(e,"TOP_LEVEL","")}function r7e(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let n=[];for(let o of t)n.push(r.map(l=>o(l)));let a=r.map((o,l)=>l);return a.sort((o,l)=>{for(let A of n){let f=A[o]A[l]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function T0l(e){let t=new Map,r=r7e(e.fallbackExclusionList||[],[({name:n,reference:a})=>n,({name:n,reference:a})=>a]);for(let{name:n,reference:a}of r){let o=t.get(n);typeof o>"u"&&t.set(n,o=new Set),o.add(a)}return Array.from(t).map(([n,a])=>[n,Array.from(a)])}function R0l(e){return r7e(e.fallbackPool||[],([t])=>t)}function N0l(e){let t=[],r=e.dependencyTreeRoots.find(n=>e.packageRegistry.get(n.name)?.get(n.reference)?.packageLocation==="./");for(let[n,a]of r7e(e.packageRegistry,([o])=>o===null?"0":`1${o}`)){if(n===null)continue;let o=[];t.push([n,o]);for(let[l,{packageLocation:A,packageDependencies:f,packagePeers:I,linkType:C,discardFromLookup:b}]of r7e(a,([E])=>E===null?"0":`1${E}`)){if(l===null)continue;let E=[];n!==null&&l!==null&&!f.has(n)&&E.push([n,l]);for(let[X,ae]of f)E.push([X,ae]);let N=r7e(E,([X])=>X),B=I&&I.size>0?Array.from(I):void 0,Q={packageLocation:A,packageDependencies:N,packagePeers:B,linkType:C,discardFromLookup:b||void 0};o.push([l,Q]),r&&n===r.name&&l===r.reference&&t.unshift([null,[[null,Q]]])}}return t}function GJr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,pnpZipBackend:e.pnpZipBackend,fallbackExclusionList:T0l(e),fallbackPool:R0l(e),packageRegistryData:N0l(e)}}var yJr,D0l=()=>(typeof yJr>"u"&&(yJr=OAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),yJr);function FJr(e,t){return[e?`${e} -`:"",`/* eslint-disable */ -`,`// @ts-nocheck -`,`"use strict"; -`,` -`,t,` -`,D0l()].join("")}function k0l(e){return JSON.stringify(e,null,2)}function x0l(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ -`)}'`}function G0l(e){return[`const RAW_RUNTIME_STATE = -`,`${x0l(KAs(e))}; - -`,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { -`,` return hydrateRuntimeState(JSON.parse(RAW_RUNTIME_STATE), {basePath: basePath || __dirname}); -`,`} -`].join("")}function F0l(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { -`,` const fs = require('fs'); -`,` const path = require('path'); -`,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(gGt.pnpData)}); -`,` return hydrateRuntimeState(JSON.parse(fs.readFileSync(pnpDataFilepath, 'utf8')), {basePath: basePath || __dirname}); -`,`} -`].join("")}function Z0l(e){let t=GJr(e),r=G0l(t);return FJr(e.shebang,r)}function L0l(e){let t=GJr(e),r=F0l(),n=FJr(e.shebang,r);return{dataFile:k0l(t),loaderFile:n}}function jAs(e,{basePath:t}){let r=Rc.toPortablePath(t),n=gh.resolve(r),a=e.ignorePatternData!==null?new RegExp(e.ignorePatternData):null,o=new Map,l=new Map(e.packageRegistryData.map(([b,E])=>[b,new Map(E.map(([N,B])=>{if(b===null!=(N===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let F=B.discardFromLookup??!1,Q={name:b,reference:N},X=o.get(B.packageLocation);X?(X.discardFromLookup=X.discardFromLookup&&F,F||(X.locator=Q)):o.set(B.packageLocation,{locator:Q,discardFromLookup:F});let ae=null;return[N,{packageDependencies:new Map(B.packageDependencies),packagePeers:new Set(B.packagePeers),linkType:B.linkType,discardFromLookup:F,get packageLocation(){return ae||(ae=gh.join(n,B.packageLocation))}}]}))])),A=new Map(e.fallbackExclusionList.map(([b,E])=>[b,new Set(E)])),f=new Map(e.fallbackPool),I=e.dependencyTreeRoots,C=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:I,enableTopLevelFallback:C,fallbackExclusionList:A,pnpZipBackend:e.pnpZipBackend,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:l}}var zAs=Array.isArray,NJr=JSON.stringify,hGt=Object.getOwnPropertyNames,mGt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),kAs=(e,t)=>RegExp.prototype.exec.call(e,t),xAs=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),dGe=(e,...t)=>String.prototype.endsWith.apply(e,t),qAs=(e,...t)=>String.prototype.includes.apply(e,t),$As=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),pGt=(e,...t)=>String.prototype.indexOf.apply(e,t),V0l=(e,...t)=>String.prototype.replace.apply(e,t),n0e=(e,...t)=>String.prototype.slice.apply(e,t),bue=(e,...t)=>String.prototype.startsWith.apply(e,t),P0l=Map,W0l=JSON.parse;function i7e(e,t,r){return class extends r{constructor(...n){super(t(...n)),this.code=e,this.name=`${r.name} [${e}]`}}}var O0l=i7e("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),eds=i7e("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),M0l=i7e("ERR_INVALID_PACKAGE_TARGET",(e,t,r,n=!1,a=void 0)=>{let o=typeof r=="string"&&!n&&r.length&&!bue(r,"./");return t==="."?(s0l.default(n===!1),`Invalid "exports" main target ${NJr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${n?"imports":"exports"}" target ${NJr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),ZJr=i7e("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),H0l=i7e("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function Y0l(e,t){let r=Object.create(null);for(let n=0;nt):e+t}t7e(r,e,n,l,a)}kAs(GAs,n0e(e,2))!==null&&t7e(r,e,n,l,a);let f=new URL(e,n),I=f.pathname,C=new URL(".",n).pathname;if(bue(I,C)||t7e(r,e,n,l,a),t==="")return f;if(kAs(GAs,t)!==null){let b=o?V0l(r,"*",()=>t):r+t;U0l(b,n,l,a)}return o?new URL(xAs(FAs,f.href,()=>t)):new URL(t,f)}function j0l(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function pGe(e,t,r,n,a,o,l,A){if(typeof t=="string")return K0l(t,r,n,e,a,o,l);if(zAs(t)){if(t.length===0)return null;let f;for(let I=0;Io?-1:o>a||r===-1?1:n===-1||e.length>t.length?-1:t.length>e.length?1:0}function z0l(e,t,r){if(typeof e=="string"||zAs(e))return!0;if(typeof e!="object"||e===null)return!1;let n=hGt(e),a=!1,o=0;for(let l=0;l=I.length&&dGe(t,b)&&tds(o,I)===1&&$As(I,"*")===C&&(o=I,l=n0e(t,C,t.length-b.length))}}if(o){let f=r[o],I=pGe(e,f,l,o,n,!0,!1,a);return I==null&&bJr(t,e,n),I}bJr(t,e,n)}function eyl({name:e,base:t,conditions:r,readFileSyncFn:n}){if(e==="#"||bue(e,"#/")||dGe(e,"/")){let l="is not a valid internal imports specifier name";throw new eds(e,l,eB.fileURLToPath(t))}let a,o=X0l(t,n);if(o.exists){a=eB.pathToFileURL(o.pjsonPath);let l=o.imports;if(l)if(mGt(l,e)&&!qAs(e,"*")){let A=pGe(a,l[e],"",e,t,!1,!0,r);if(A!=null)return A}else{let A="",f,I=hGt(l);for(let C=0;C=b.length&&dGe(e,N)&&tds(A,b)===1&&$As(b,"*")===E&&(A=b,f=n0e(e,E,e.length-N.length))}}if(A){let C=l[A],b=pGe(a,C,f,A,t,!0,!0,r);if(b!=null)return b}}}J0l(e,a,t)}var yT=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(yT||{}),tyl=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function YR(e,t,r={},n){n??=tyl.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:n},pnpCode:{...a,value:e},data:{...a,value:r}})}function p6(e){return Rc.normalize(Rc.fromPortablePath(e))}var DJr=Symbol("arg flag"),DH=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function n7e(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:n=!1}={}){if(!e)throw new DH("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},l={};for(let A of Object.keys(e)){if(!A)throw new DH("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(A[0]!=="-")throw new DH(`argument key must start with '-' but found: '${A}'`,"ARG_CONFIG_NONOPT_KEY");if(A.length===1)throw new DH(`argument key must have a name; singular '-' keys are not allowed: ${A}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[A]=="string"){o[A]=e[A];continue}let f=e[A],I=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[C]=f;f=(b,E,N=[])=>(N.push(C(b,E,N[N.length-1])),N),I=C===Boolean||C[DJr]===!0}else if(typeof f=="function")I=f===Boolean||f[DJr]===!0;else throw new DH(`type missing or not a function or valid array type: ${A}`,"ARG_CONFIG_VAD_TYPE");if(A[1]!=="-"&&A.length>2)throw new DH(`short argument keys (with a single hyphen) must have only one character: ${A}`,"ARG_CONFIG_SHORTOPT_TOOLONG");l[A]=[f,I]}for(let A=0,f=t.length;A0){a._=a._.concat(t.slice(A));break}if(I==="--"){a._=a._.concat(t.slice(A+1));break}if(I.length>1&&I[0]==="-"){let C=I[1]==="-"||I.length===2?[I]:I.slice(1).split("").map(b=>`-${b}`);for(let b=0;b1&&t[A+1][0]==="-"&&!(t[A+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(Q===Number||typeof BigInt<"u"&&Q===BigInt))){let ae=N===F?"":` (alias for ${F})`;throw new DH(`option requires argument: ${N}${ae}`,"ARG_MISSING_REQUIRED_LONGARG")}a[F]=Q(t[A+1],F,a[F]),++A}else a[F]=Q(B,F,a[F])}}else a._.push(I)}return a}n7e.flag=e=>(e[DJr]=!0,e);n7e.COUNT=n7e.flag((e,t,r)=>(r||0)+1);n7e.ArgError=DH;var ryl=n7e;function nyl(e){return iyl(),kJr[e]}var kJr;function iyl(){kJr||(kJr={"--conditions":[],...LAs(syl()),...LAs(process.execArgv)})}function LAs(e){return ryl({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function syl(){let e=[],t=oyl(process.env.NODE_OPTIONS||"",e);return e.length,t}function oyl(e,t){let r=[],n=!1,a=!0;for(let o=0;oparseInt(e,10)),ayl=EJr>19||EJr===19&&VAs>=2||EJr===18&&VAs>=13;function PAs(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send){let t=e.map(r=>Rc.fromPortablePath(dGt.resolveVirtual(r)));if(ayl)process.send({"watch:require":t});else for(let r of t)process.send({"watch:require":r})}}function rds(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,n=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,A=/^\.{0,2}\//,f={name:null,reference:null},I=[],C=new Set;if(e.enableTopLevelFallback===!0&&I.push(f),t.compatibilityMode!==!1)for(let vt of["react-scripts","gatsby"]){let xt=e.packageRegistry.get(vt);if(xt)for(let Zr of xt.keys()){if(Zr===null)throw new Error("Assertion failed: This reference shouldn't be null");I.push({name:vt,reference:Zr})}}let{ignorePattern:b,packageRegistry:E,packageLocatorsByLocations:N}=e;function B(vt,xt){return{fn:vt,args:xt,error:null,result:null}}function F(vt){let xt=process.stderr?.hasColors?.()??process.stdout.isTTY,Zr=(lr,cr)=>`\x1B[${lr}m${cr}\x1B[0m`,qt=vt.error;console.error(qt?Zr("31;1",`\u2716 ${vt.error?.message.replace(/\n.*/s,"")}`):Zr("33;1","\u203C Resolution")),vt.args.length>0&&console.error();for(let lr of vt.args)console.error(` ${Zr("37;1","In \u2190")} ${RAs.inspect(lr,{colors:xt,compact:!0})}`);vt.result&&(console.error(),console.error(` ${Zr("37;1","Out \u2192")} ${RAs.inspect(vt.result,{colors:xt,compact:!0})}`));let Xt=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Xt.length>0){console.error();for(let lr of Xt)console.error(` ${Zr("38;5;244",lr)}`)}console.error()}function Q(vt,xt){if(t.allowDebug===!1)return xt;if(Number.isFinite(n)){if(n>=2)return(...Zr)=>{let qt=B(vt,Zr);try{return qt.result=xt(...Zr)}catch(Xt){throw qt.error=Xt}finally{F(qt)}};if(n>=1)return(...Zr)=>{try{return xt(...Zr)}catch(qt){let Xt=B(vt,Zr);throw Xt.error=qt,F(Xt),qt}}}return xt}function X(vt){let xt=k(vt);if(!xt)throw YR(yT.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return xt}function ae(vt){if(vt.name===null)return!0;for(let xt of e.dependencyTreeRoots)if(xt.name===vt.name&&xt.reference===vt.reference)return!0;return!1}let ne=new Set(["node","require",...nyl("--conditions")]);function ce(vt,xt=ne,Zr){let qt=Me(gh.join(vt,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(qt===null)throw YR(yT.INTERNAL,`The locator that owns the "${vt}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Xt}=X(qt),lr=gh.join(Xt,gGt.manifest);if(!t.fakeFs.existsSync(lr))return null;let cr=JSON.parse(t.fakeFs.readFileSync(lr,"utf8"));if(cr.exports==null)return null;let Ar=gh.contains(Xt,vt);if(Ar===null)throw YR(yT.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");Ar!=="."&&!A.test(Ar)&&(Ar=`./${Ar}`);try{let qr=$0l({packageJSONUrl:eB.pathToFileURL(Rc.fromPortablePath(lr)),packageSubpath:Ar,exports:cr.exports,base:Zr?eB.pathToFileURL(Rc.fromPortablePath(Zr)):null,conditions:xt});return Rc.toPortablePath(eB.fileURLToPath(qr))}catch(qr){throw YR(yT.EXPORTS_RESOLUTION_FAILED,qr.message,{unqualifiedPath:p6(vt),locator:qt,pkgJson:cr,subpath:p6(Ar),conditions:xt},qr.code)}}function fe(vt,xt,{extensions:Zr}){let qt;try{xt.push(vt),qt=t.fakeFs.statSync(vt)}catch{}if(qt&&!qt.isDirectory())return t.fakeFs.realpathSync(vt);if(qt&&qt.isDirectory()){let Xt;try{Xt=JSON.parse(t.fakeFs.readFileSync(gh.join(vt,gGt.manifest),"utf8"))}catch{}let lr;if(Xt&&Xt.main&&(lr=gh.resolve(vt,Xt.main)),lr&&lr!==vt){let cr=fe(lr,xt,{extensions:Zr});if(cr!==null)return cr}}for(let Xt=0,lr=Zr.length;Xt{let Ar=JSON.stringify(cr.name);if(qt.has(Ar))return;qt.add(Ar);let qr=et(cr);for(let _n of qr)if(X(_n).packagePeers.has(vt))Xt(_n);else{let jt=Zr.get(_n.name);typeof jt>"u"&&Zr.set(_n.name,jt=new Set),jt.add(_n.reference)}};Xt(xt);let lr=[];for(let cr of[...Zr.keys()].sort())for(let Ar of[...Zr.get(cr)].sort())lr.push({name:cr,reference:Ar});return lr}function Me(vt,{resolveIgnored:xt=!1,includeDiscardFromLookup:Zr=!1}={}){if(be(vt)&&!xt)return null;let qt=gh.relative(e.basePath,vt);qt.match(o)||(qt=`./${qt}`),qt.endsWith("/")||(qt=`${qt}/`);do{let Xt=N.get(qt);if(typeof Xt>"u"||Xt.discardFromLookup&&!Zr){qt=qt.substring(0,qt.lastIndexOf("/",qt.length-2)+1);continue}return Xt.locator}while(qt!=="");return null}function je(vt){try{return t.fakeFs.readFileSync(Rc.toPortablePath(vt),"utf8")}catch(xt){if(xt.code==="ENOENT")return;throw xt}}function St(vt,xt,{considerBuiltins:Zr=!0}={}){if(vt.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(vt==="pnpapi")return Rc.toPortablePath(t.pnpapiResolution);if(Zr&&r0e.isBuiltin(vt))return null;let qt=p6(vt),Xt=xt&&p6(xt);if(xt&&be(xt)&&(!gh.isAbsolute(vt)||Me(vt)===null)){let Ar=de(vt,xt);if(Ar===!1)throw YR(yT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) - -Require request: "${qt}" -Required by: ${Xt} -`,{request:qt,issuer:Xt});return Rc.toPortablePath(Ar)}let lr,cr=vt.match(a);if(cr){if(!xt)throw YR(yT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:qt,issuer:Xt});let[,Ar,qr]=cr,_n=Me(xt);if(!_n){let xi=de(vt,xt);if(xi===!1)throw YR(yT.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). - -Require path: "${qt}" -Required by: ${Xt} -`,{request:qt,issuer:Xt});return Rc.toPortablePath(xi)}let jt=X(_n).packageDependencies.get(Ar),Fn=null;if(jt==null&&_n.name!==null){let xi=e.fallbackExclusionList.get(_n.name);if(!xi||!xi.has(_n.reference)){for(let ga=0,Ya=I.length;gaae(io))?Nn=YR(yT.MISSING_PEER_DEPENDENCY,`${_n.name} tried to access ${Ar} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. - -Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} -Required by: ${_n.name}@${_n.reference} (via ${Xt}) -${xi.map(io=>`Ancestor breaking the chain: ${io.name}@${io.reference} -`).join("")} -`,{request:qt,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar,brokenAncestors:xi}):Nn=YR(yT.MISSING_PEER_DEPENDENCY,`${_n.name} tried to access ${Ar} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. - -Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} -Required by: ${_n.name}@${_n.reference} (via ${Xt}) - -${xi.map(io=>`Ancestor breaking the chain: ${io.name}@${io.reference} -`).join("")} -`,{request:qt,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar,brokenAncestors:xi})}else jt===void 0&&(!Zr&&r0e.isBuiltin(vt)?ae(_n)?Nn=YR(yT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. - -Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} -Required by: ${Xt} -`,{request:qt,issuer:Xt,dependencyName:Ar}):Nn=YR(yT.UNDECLARED_DEPENDENCY,`${_n.name} tried to access ${Ar}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Ar} isn't otherwise declared in ${_n.name}'s dependencies, this makes the require call ambiguous and unsound. - -Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} -Required by: ${Xt} -`,{request:qt,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar}):ae(_n)?Nn=YR(yT.UNDECLARED_DEPENDENCY,`Your application tried to access ${Ar}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. - -Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} -Required by: ${Xt} -`,{request:qt,issuer:Xt,dependencyName:Ar}):Nn=YR(yT.UNDECLARED_DEPENDENCY,`${_n.name} tried to access ${Ar}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. - -Required package: ${Ar}${Ar!==qt?` (via "${qt}")`:""} -Required by: ${_n.name}@${_n.reference} (via ${Xt}) -`,{request:qt,issuer:Xt,issuerLocator:Object.assign({},_n),dependencyName:Ar}));if(jt==null){if(Fn===null||Nn===null)throw Nn||new Error("Assertion failed: Expected an error to have been set");jt=Fn;let xi=Nn.message.replace(/\n.*/g,"");Nn.message=xi,!C.has(xi)&&n!==0&&(C.add(xi),process.emitWarning(Nn))}let Hi=Array.isArray(jt)?{name:jt[0],reference:jt[1]}:{name:Ar,reference:jt},po=X(Hi);if(!po.packageLocation)throw YR(yT.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. - -Required package: ${Hi.name}@${Hi.reference}${Hi.name!==qt?` (via "${qt}")`:""} -Required by: ${_n.name}@${_n.reference} (via ${Xt}) -`,{request:qt,issuer:Xt,dependencyLocator:Object.assign({},Hi)});let Vr=po.packageLocation;qr?lr=gh.join(Vr,qr):lr=Vr}else if(gh.isAbsolute(vt))lr=gh.normalize(vt);else{if(!xt)throw YR(yT.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:qt,issuer:Xt});let Ar=gh.resolve(xt);xt.match(l)?lr=gh.normalize(gh.join(Ar,vt)):lr=gh.normalize(gh.join(gh.dirname(Ar),vt))}return gh.normalize(lr)}function At(vt,xt,Zr=ne,qt){if(o.test(vt))return xt;let Xt=ce(xt,Zr,qt);return Xt?gh.normalize(Xt):xt}function Yt(vt,{extensions:xt=Object.keys(r0e.Module._extensions)}={}){let Zr=[],qt=fe(vt,Zr,{extensions:xt});if(qt)return PAs([qt]),gh.normalize(qt);{PAs(Zr);let Xt=p6(vt),lr=Me(vt);if(lr){let{packageLocation:cr}=X(lr),Ar=!0;try{t.fakeFs.accessSync(cr)}catch(qr){if(qr?.code==="ENOENT")Ar=!1;else{let _n=(qr?.message??qr??"empty exception thrown").replace(/^[A-Z]/,ke=>ke.toLowerCase());throw YR(yT.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${_n}). - -Missing package: ${lr.name}@${lr.reference} -Expected package location: ${p6(cr)} -`,{unqualifiedPath:Xt,extensions:xt})}}if(!Ar){let qr=cr.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw YR(yT.QUALIFIED_PATH_RESOLUTION_FAILED,`${qr} - -Missing package: ${lr.name}@${lr.reference} -Expected package location: ${p6(cr)} -`,{unqualifiedPath:Xt,extensions:xt})}}throw YR(yT.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. - -Source path: ${Xt} -${Zr.map(cr=>`Not found: ${p6(cr)} -`).join("")}`,{unqualifiedPath:Xt,extensions:xt})}}function Tr(vt,xt,Zr){if(!xt)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let qt=eyl({name:vt,base:eB.pathToFileURL(Rc.fromPortablePath(xt)),conditions:Zr.conditions??ne,readFileSyncFn:je});if(qt instanceof URL)return Yt(Rc.toPortablePath(eB.fileURLToPath(qt)),{extensions:Zr.extensions});if(qt.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Nr(qt,xt,Zr)}function Nr(vt,xt,Zr={}){try{if(vt.startsWith("#"))return Tr(vt,xt,Zr);let{considerBuiltins:qt,extensions:Xt,conditions:lr}=Zr,cr=St(vt,xt,{considerBuiltins:qt});if(vt==="pnpapi")return cr;if(cr===null)return null;let Ar=()=>xt!==null?be(xt):!1,qr=(!qt||!r0e.isBuiltin(vt))&&!Ar()?At(vt,cr,lr,xt):cr;return Yt(qr,{extensions:Xt})}catch(qt){throw Object.hasOwn(qt,"pnpCode")&&Object.assign(qt.data,{request:p6(vt),issuer:xt&&p6(xt)}),qt}}function er(vt){let xt=gh.normalize(vt),Zr=dGt.resolveVirtual(xt);return Zr!==xt?Zr:null}return{VERSIONS:Se,topLevel:De,getLocator:(vt,xt)=>Array.isArray(xt)?{name:xt[0],reference:xt[1]}:{name:vt,reference:xt},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let vt=[];for(let[xt,Zr]of E)for(let qt of Zr.keys())xt!==null&&qt!==null&&vt.push({name:xt,reference:qt});return vt},getPackageInformation:vt=>{let xt=k(vt);if(xt===null)return null;let Zr=Rc.fromPortablePath(xt.packageLocation);return{...xt,packageLocation:Zr}},findPackageLocator:vt=>Me(Rc.toPortablePath(vt)),resolveToUnqualified:Q("resolveToUnqualified",(vt,xt,Zr)=>{let qt=xt!==null?Rc.toPortablePath(xt):null,Xt=St(Rc.toPortablePath(vt),qt,Zr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveUnqualified:Q("resolveUnqualified",(vt,xt)=>Rc.fromPortablePath(Yt(Rc.toPortablePath(vt),xt))),resolveRequest:Q("resolveRequest",(vt,xt,Zr)=>{let qt=xt!==null?Rc.toPortablePath(xt):null,Xt=Nr(Rc.toPortablePath(vt),qt,Zr);return Xt===null?null:Rc.fromPortablePath(Xt)}),resolveVirtual:Q("resolveVirtual",vt=>{let xt=er(Rc.toPortablePath(vt));return xt!==null?Rc.fromPortablePath(xt):null})}}async function cyl(e,{fakeFs:t,pnpapiResolution:r}){let n=await t.readFilePromise(e,"utf8");return nds(n,{basePath:WAs.dirname(e),fakeFs:t,pnpapiResolution:r})}function nds(e,{basePath:t,fakeFs:r,pnpapiResolution:n}){let a=JSON.parse(e),o=jAs(a,{basePath:t});return rds(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:n})}var lyl=(e,t,r)=>{let n=GJr(e),a=jAs(n,{basePath:t}),o=Rc.join(t,gGt.pnpCjs);return rds(a,{fakeFs:r,pnpapiResolution:o})},SJr,uyl=()=>(typeof SJr>"u"&&(SJr=OAs.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),SJr);z4.LinkType=MAs;z4.generateInlinedScript=Z0l;z4.generateLoader=FJr;z4.generatePrettyJson=KAs;z4.generateSplitScript=L0l;z4.getESMLoaderTemplate=uyl;z4.hydratePnpFile=cyl;z4.hydratePnpSource=nds;z4.makeRuntimeApi=lyl});var VJr=H(fGe=>{"use strict";Object.defineProperty(fGe,"__esModule",{value:!0});fGe.checkManifestCompatibility=ids;fGe.extractBuildRequest=Ayl;fGe.getExtractHint=pyl;fGe.hasBindingGyp=fyl;var XV=Sn(),gyl=ro();function ids(e){return XV.structUtils.isPackageCompatible(e,XV.nodeUtils.getArchitectureSet())}function Ayl(e,t,r,{configuration:n}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:XV.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:XV.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==XV.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.SOFT_LINK_BUILD,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(XV.MessageName.BUILD_DISABLED,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!n.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.DISABLED_BUILD_SCRIPTS,`${XV.structUtils.prettyLocator(n,e)} lists build scripts, but all build scripts have been disabled.`)}:ids(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(XV.MessageName.INCOMPATIBLE_ARCHITECTURE,`${XV.structUtils.prettyLocator(n,e)} The ${XV.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var dyl=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function pyl(e){return e.packageFs.getExtractHint({relevantExtensions:dyl})}function fyl(e){let t=gyl.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var CGt=H(PJr=>{"use strict";Object.defineProperty(PJr,"__esModule",{value:!0});PJr.getUnpluggedPath=myl;var Iyl=Sn(),hyl=ro();function myl(e,{configuration:t}){return hyl.ppath.resolve(t.get("pnpUnpluggedFolder"),Iyl.structUtils.slugifyLocator(e))}});var HJr=H(IGe=>{"use strict";Object.defineProperty(IGe,"__esModule",{value:!0});IGe.PnpInstaller=IGe.PnpLinker=void 0;var ods=(Pa(),vi(Va)),cC=Sn(),Eue=Sn(),Pm=ro(),WJr=LJr(),sds=($c(),vi(rg)),_Gt=hGe(),yGt=ods.__importStar(VJr()),Cyl=ods.__importStar(CGt()),_yl=new Set([cC.structUtils.makeIdent(null,"open").identHash,cC.structUtils.makeIdent(null,"opn").identHash]),MJr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let n=(0,_Gt.getPnpPath)(r.project).cjs;if(!Pm.xfs.existsSync(n))throw new sds.UsageError(`The project in ${cC.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,cC.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=cC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>cC.miscUtils.dynamicRequire(n,{cachingStrategy:cC.miscUtils.CachingStrategy.FsTime})),o={name:cC.structUtils.stringifyIdent(t),reference:t.reference},l=a.getPackageInformation(o);if(!l)throw new sds.UsageError(`Couldn't find ${cC.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return Pm.npath.toPortablePath(l.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=(0,_Gt.getPnpPath)(r.project).cjs;if(!Pm.xfs.existsSync(n))return null;let o=cC.miscUtils.getFactoryWithDefault(this.pnpCache,n,()=>cC.miscUtils.dynamicRequire(n,{cachingStrategy:cC.miscUtils.CachingStrategy.FsTime})).findPackageLocator(Pm.npath.fromPortablePath(t));return o?cC.structUtils.makeLocator(cC.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new bGt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};IGe.PnpLinker=MJr;var bGt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new cC.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,n){let a=cC.structUtils.stringifyIdent(t),o=t.reference,l=!!this.opts.project.tryWorkspaceByLocator(t),A=cC.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!A,I=!f&&!l,C=!f&&t.linkType!==Eue.LinkType.SOFT,b,E;if(I||C){let ne=A?cC.structUtils.devirtualizeLocator(t):t;b=this.customData.store.get(ne.locatorHash),typeof b>"u"&&(b=await yyl(r),t.linkType===Eue.LinkType.HARD&&this.customData.store.set(ne.locatorHash,b)),b.manifest.type==="module"&&(this.isESMLoaderRequired=!0),E=this.opts.project.getDependencyMeta(ne,t.version)}let N=I?yGt.extractBuildRequest(t,b,E,{configuration:this.opts.project.configuration}):null,B=C?await this.unplugPackageIfNeeded(t,b,r,E,n):r.packageFs;if(Pm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let F=Pm.ppath.resolve(B.getRealPath(),r.prefixPath),Q=OJr(this.opts.project.cwd,F),X=new Map,ae=new Set;if(A){for(let ne of t.peerDependencies.values())X.set(cC.structUtils.stringifyIdent(ne),null),ae.add(cC.structUtils.stringifyIdent(ne));if(!l){let ne=cC.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ne.locatorHash,{location:OJr(this.opts.project.cwd,Pm.VirtualFS.resolveVirtual(F)),locator:ne})}}return cC.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:Q,packageDependencies:X,packagePeers:ae,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:F,buildRequest:N}}async attachInternalDependencies(t,r){let n=this.getPackageInformation(t);for(let[a,o]of r){let l=cC.structUtils.areIdentsEqual(a,o)?o.reference:[cC.structUtils.stringifyIdent(o),o.reference];n.packageDependencies.set(cC.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){for(let n of r)this.getDiskInformation(n).packageDependencies.set(cC.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,_Gt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await Pm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await Pm.xfs.removePromise(t.cjs),await Pm.xfs.removePromise(t.data),await Pm.xfs.removePromise(t.esmLoader),await Pm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:b,location:E}of this.virtualTemplates.values())cC.miscUtils.getMapWithDefault(this.packageRegistry,cC.structUtils.stringifyIdent(b)).set(b.reference,{packageLocation:E,packageDependencies:new Map,packagePeers:new Set,linkType:Eue.LinkType.SOFT,discardFromLookup:!1});let r=this.opts.project.configuration.get("pnpFallbackMode"),n=this.opts.project.workspaces.map(({anchoredLocator:b})=>({name:cC.structUtils.stringifyIdent(b),reference:b.reference})),a=r!=="none",o=[],l=new Map,A=cC.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,I=this.opts.project.configuration.get("pnpShebang"),C=this.opts.project.configuration.get("pnpZipBackend");if(r==="dependencies-only")for(let b of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(b)&&o.push({name:cC.structUtils.stringifyIdent(b),reference:b.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:n,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:l,ignorePattern:A,pnpZipBackend:C,packageRegistry:f,shebang:I}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,_Gt.getPnpPath)(this.opts.project),n=await this.locateNodeModules(t.ignorePattern);if(n.length>0){this.opts.report.reportWarning(Eue.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await Pm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,WJr.generateInlinedScript)(t);await Pm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await Pm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:l}=(0,WJr.generateSplitScript)(t);await Pm.xfs.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await Pm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(Eue.MessageName.EXPERIMENTAL,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await Pm.xfs.changeFilePromise(r.esmLoader,(0,WJr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await Pm.xfs.removePromise(a);else for(let o of await Pm.xfs.readdirPromise(a)){let l=Pm.ppath.resolve(a,o);this.unpluggedPaths.has(l)||await Pm.xfs.removePromise(l)}}async locateNodeModules(t){let r=[],n=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=Pm.ppath.join(a.cwd,"node_modules");if(n&&n.test(Pm.ppath.relative(this.opts.project.cwd,a.cwd))||!Pm.xfs.existsSync(o))continue;let l=await Pm.xfs.readdirPromise(o,{withFileTypes:!0}),A=l.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(A.length===l.length)r.push(o);else for(let f of A)r.push(Pm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,n,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,n,o):n.packageFs}shouldBeUnplugged(t,r,n){return typeof n.unplugged<"u"?n.unplugged:_yl.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(yGt.extractBuildRequest(t,r,n,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,n){let a=Cyl.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new Pm.AliasFS(a,{baseFs:r.packageFs,pathUtils:Pm.ppath}):(this.unpluggedPaths.add(a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=Pm.ppath.join(a,r.prefixPath,".ready");await Pm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await Pm.xfs.mkdirPromise(a,{recursive:!0}),await Pm.xfs.copyPromise(a,Pm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await Pm.xfs.writeFilePromise(o,""))})),new Pm.CwdFS(a))}getPackageInformation(t){let r=cC.structUtils.stringifyIdent(t),n=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${cC.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(n);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${cC.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=cC.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),n=OJr(this.opts.project.cwd,t);return cC.miscUtils.getFactoryWithDefault(r,n,()=>({packageLocation:n,packageDependencies:new Map,packagePeers:new Set,linkType:Eue.LinkType.SOFT,discardFromLookup:!1}))}};IGe.PnpInstaller=bGt;function OJr(e,t){let r=Pm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function yyl(e){let t=await Eue.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Eue.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let n of t.scripts.keys())r.has(n)||t.scripts.delete(n);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:yGt.getExtractHint(e),hasBindingGyp:yGt.hasBindingGyp(e)}}}});var lds=H(YJr=>{"use strict";Object.defineProperty(YJr,"__esModule",{value:!0});var cds=(Pa(),vi(Va)),ads=el(),kH=Sn(),xH=Sn(),Wte=($c(),vi(rg)),byl=cds.__importDefault(Ek()),Eyl=cds.__importStar(CGt()),s7e=class extends ads.BaseCommand{constructor(){super(...arguments),this.all=Wte.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=Wte.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=Wte.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=Wte.Option.Rest()}async execute(){let t=await kH.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await kH.Project.find(t,this.context.cwd),a=await kH.Cache.find(t);if(!n)throw new ads.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new Wte.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),l=this.patterns.map(E=>{let N=xH.structUtils.parseDescriptor(E),B=N.range!=="unknown"?N:xH.structUtils.makeDescriptor(N,"*");if(!xH.semverUtils.validRange(B.range))throw new Wte.UsageError(`The range of the descriptor patterns must be a valid semver range (${xH.structUtils.prettyDescriptor(t,B)})`);return F=>{let Q=xH.structUtils.stringifyIdent(F);return!byl.default.isMatch(Q,xH.structUtils.stringifyIdent(B))||F.version&&!xH.semverUtils.satisfiesWithPrereleases(F.version,B.range)?!1:(o.delete(E),!0)}}),A=()=>{let E=[];for(let N of r.storedPackages.values())!r.tryWorkspaceByLocator(N)&&!xH.structUtils.isVirtualLocator(N)&&l.some(B=>B(N))&&E.push(N);return E},f=E=>{let N=new Set,B=[],F=(Q,X)=>{if(N.has(Q.locatorHash))return;let ae=!!r.tryWorkspaceByLocator(Q);if(!(X>0&&!this.recursive&&ae)&&(N.add(Q.locatorHash),!r.tryWorkspaceByLocator(Q)&&l.some(ne=>ne(Q))&&B.push(Q),!(X>0&&!this.recursive)))for(let ne of Q.dependencies.values()){let ce=r.storedResolutions.get(ne.descriptorHash);if(!ce)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ce);if(!fe)throw new Error("Assertion failed: The package should have been registered");F(fe,X+1)}};for(let Q of E)F(Q.anchoredPackage,0);return B},I,C;if(this.all&&this.recursive?(I=A(),C="the project"):this.all?(I=f(r.workspaces),C="any workspace"):(I=f([n]),C="this workspace"),o.size>1)throw new Wte.UsageError(`Patterns ${kH.formatUtils.prettyList(t,o,kH.formatUtils.Type.CODE)} don't match any packages referenced by ${C}`);if(o.size>0)throw new Wte.UsageError(`Pattern ${kH.formatUtils.prettyList(t,o,kH.formatUtils.Type.CODE)} doesn't match any packages referenced by ${C}`);I=kH.miscUtils.sortMap(I,E=>xH.structUtils.stringifyLocator(E));let b=await kH.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async E=>{for(let N of I){let B=N.version??"unknown",F=r.topLevelWorkspace.manifest.ensureDependencyMeta(xH.structUtils.makeDescriptor(N,B));F.unplugged=!0,E.reportInfo(kH.MessageName.UNNAMED,`Will unpack ${xH.structUtils.prettyLocator(t,N)} to ${kH.formatUtils.pretty(t,Eyl.getUnpluggedPath(N,{configuration:t}),kH.formatUtils.Type.PATH)}`),E.reportJson({locator:xH.structUtils.stringifyLocator(N),version:B})}await r.topLevelWorkspace.persistManifest(),this.json||E.reportSeparator()});return b.hasErrors()?b.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};s7e.paths=[["unplug"]];s7e.usage=Wte.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});YJr.default=s7e});var hGe=H(bT=>{"use strict";Object.defineProperty(bT,"__esModule",{value:!0});bT.PnpLinker=bT.PnpInstaller=bT.quotePathIfNeeded=bT.getPnpPath=bT.pnpUtils=bT.jsInstallUtils=bT.UnplugCommand=void 0;var QJr=(Pa(),vi(Va)),JV=Sn(),f6=ro(),Syl=wt("url"),vyl=HJr(),uds=QJr.__importDefault(lds());bT.UnplugCommand=uds.default;var Byl=QJr.__importStar(VJr());bT.jsInstallUtils=Byl;var wyl=QJr.__importStar(CGt());bT.pnpUtils=wyl;var Tyl=e=>({cjs:f6.ppath.join(e.cwd,f6.Filename.pnpCjs),data:f6.ppath.join(e.cwd,f6.Filename.pnpData),esmLoader:f6.ppath.join(e.cwd,f6.Filename.pnpEsmLoader)});bT.getPnpPath=Tyl;var Ryl=e=>/\s/.test(e)?JSON.stringify(e):e;bT.quotePathIfNeeded=Ryl;async function Nyl(e,t,r){let n=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(n," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let l=(0,bT.getPnpPath)(e),A=`--require ${(0,bT.quotePathIfNeeded)(f6.npath.fromPortablePath(l.cjs))}`;f6.xfs.existsSync(l.esmLoader)&&(A=`${A} --experimental-loader ${(0,Syl.pathToFileURL)(f6.npath.fromPortablePath(l.esmLoader)).href}`),f6.xfs.existsSync(l.cjs)&&(t.NODE_OPTIONS=o?`${A} ${o}`:A)}async function Dyl(e,t){let r=(0,bT.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var kyl={hooks:{populateYarnPaths:Dyl,setupScriptEnvironment:Nyl},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:JV.SettingsType.STRING,default:"pnp"},minizip:{description:"Whether Yarn should use minizip to extract archives",type:JV.SettingsType.BOOLEAN,default:!1},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:JV.SettingsType.STRING,values:[JV.WindowsLinkType.JUNCTIONS,JV.WindowsLinkType.SYMLINKS],default:JV.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:JV.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:JV.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:JV.SettingsType.STRING,default:[],isArray:!0},pnpZipBackend:{description:"Whether to use the experimental js implementation for the ZipFS",type:JV.SettingsType.STRING,values:["libzip","js"],default:"libzip"},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:JV.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:JV.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:JV.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:JV.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[vyl.PnpLinker],commands:[uds.default]},gds=HJr();Object.defineProperty(bT,"PnpInstaller",{enumerable:!0,get:function(){return gds.PnpInstaller}});Object.defineProperty(bT,"PnpLinker",{enumerable:!0,get:function(){return gds.PnpLinker}});bT.default=kyl});var Ads=H((XJr,JJr)=>{(function(e){XJr&&typeof XJr=="object"&&typeof JJr<"u"?JJr.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var fds=H((Zrg,pds)=>{"use strict";var xyl=wt("path"),dds;process.env.PATHEXT&&(dds=process.env.PATHEXT.split(xyl.delimiter).find(e=>e.toUpperCase()===".CMD"));pds.exports=dds||".cmd"});var hds=H((Lrg,Ids)=>{var Sue=wt("constants"),Gyl=process.cwd,EGt=null,Fyl=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return EGt||(EGt=Gyl.call(process)),EGt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(UJr=process.chdir,process.chdir=function(e){EGt=null,UJr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,UJr));var UJr;Ids.exports=Zyl;function Zyl(e){Sue.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=n(e.chmod),e.fchmod=n(e.fchmod),e.lchmod=n(e.lchmod),e.chownSync=l(e.chownSync),e.fchownSync=l(e.fchownSync),e.lchownSync=l(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=A(e.stat),e.fstat=A(e.fstat),e.lstat=A(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(C,b,E){E&&process.nextTick(E)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(C,b,E,N){N&&process.nextTick(N)},e.lchownSync=function(){}),Fyl==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(C){function b(E,N,B){var F=Date.now(),Q=0;C(E,N,function X(ae){if(ae&&(ae.code==="EACCES"||ae.code==="EPERM"||ae.code==="EBUSY")&&Date.now()-F<6e4){setTimeout(function(){e.stat(N,function(ne,ce){ne&&ne.code==="ENOENT"?C(E,N,X):B(ae)})},Q),Q<100&&(Q+=10);return}B&&B(ae)})}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.rename)),e.read=typeof e.read!="function"?e.read:function(C){function b(E,N,B,F,Q,X){var ae;if(X&&typeof X=="function"){var ne=0;ae=function(ce,fe,ue){if(ce&&ce.code==="EAGAIN"&&ne<10)return ne++,C.call(e,E,N,B,F,Q,ae);X.apply(this,arguments)}}return C.call(e,E,N,B,F,Q,ae)}return Object.setPrototypeOf&&Object.setPrototypeOf(b,C),b}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(C){return function(b,E,N,B,F){for(var Q=0;;)try{return C.call(e,b,E,N,B,F)}catch(X){if(X.code==="EAGAIN"&&Q<10){Q++;continue}throw X}}}(e.readSync);function t(C){C.lchmod=function(b,E,N){C.open(b,Sue.O_WRONLY|Sue.O_SYMLINK,E,function(B,F){if(B){N&&N(B);return}C.fchmod(F,E,function(Q){C.close(F,function(X){N&&N(Q||X)})})})},C.lchmodSync=function(b,E){var N=C.openSync(b,Sue.O_WRONLY|Sue.O_SYMLINK,E),B=!0,F;try{F=C.fchmodSync(N,E),B=!1}finally{if(B)try{C.closeSync(N)}catch{}else C.closeSync(N)}return F}}function r(C){Sue.hasOwnProperty("O_SYMLINK")&&C.futimes?(C.lutimes=function(b,E,N,B){C.open(b,Sue.O_SYMLINK,function(F,Q){if(F){B&&B(F);return}C.futimes(Q,E,N,function(X){C.close(Q,function(ae){B&&B(X||ae)})})})},C.lutimesSync=function(b,E,N){var B=C.openSync(b,Sue.O_SYMLINK),F,Q=!0;try{F=C.futimesSync(B,E,N),Q=!1}finally{if(Q)try{C.closeSync(B)}catch{}else C.closeSync(B)}return F}):C.futimes&&(C.lutimes=function(b,E,N,B){B&&process.nextTick(B)},C.lutimesSync=function(){})}function n(C){return C&&function(b,E,N){return C.call(e,b,E,function(B){I(B)&&(B=null),N&&N.apply(this,arguments)})}}function a(C){return C&&function(b,E){try{return C.call(e,b,E)}catch(N){if(!I(N))throw N}}}function o(C){return C&&function(b,E,N,B){return C.call(e,b,E,N,function(F){I(F)&&(F=null),B&&B.apply(this,arguments)})}}function l(C){return C&&function(b,E,N){try{return C.call(e,b,E,N)}catch(B){if(!I(B))throw B}}}function A(C){return C&&function(b,E,N){typeof E=="function"&&(N=E,E=null);function B(F,Q){Q&&(Q.uid<0&&(Q.uid+=4294967296),Q.gid<0&&(Q.gid+=4294967296)),N&&N.apply(this,arguments)}return E?C.call(e,b,E,B):C.call(e,b,B)}}function f(C){return C&&function(b,E){var N=E?C.call(e,b,E):C.call(e,b);return N&&(N.uid<0&&(N.uid+=4294967296),N.gid<0&&(N.gid+=4294967296)),N}}function I(C){if(!C||C.code==="ENOSYS")return!0;var b=!process.getuid||process.getuid()!==0;return!!(b&&(C.code==="EINVAL"||C.code==="EPERM"))}}});var _ds=H((Vrg,Cds)=>{var mds=wt("stream").Stream;Cds.exports=Lyl;function Lyl(e){return{ReadStream:t,WriteStream:r};function t(n,a){if(!(this instanceof t))return new t(n,a);mds.call(this);var o=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var l=Object.keys(a),A=0,f=l.length;Athis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(C,b){if(C){o.emit("error",C),o.readable=!1;return}o.fd=b,o.emit("open",b),o._read()})}function r(n,a){if(!(this instanceof r))return new r(n,a);mds.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),l=0,A=o.length;l= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var bds=H((Prg,yds)=>{"use strict";yds.exports=Pyl;var Vyl=Object.getPrototypeOf||function(e){return e.__proto__};function Pyl(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:Vyl(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var Bds=H((Wrg,zJr)=>{var WS=wt("fs"),Wyl=hds(),Oyl=_ds(),Myl=bds(),SGt=wt("util"),dx,BGt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(dx=Symbol.for("graceful-fs.queue"),BGt=Symbol.for("graceful-fs.previous")):(dx="___graceful-fs.queue",BGt="___graceful-fs.previous");function Hyl(){}function vds(e,t){Object.defineProperty(e,dx,{get:function(){return t}})}var s0e=Hyl;SGt.debuglog?s0e=SGt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(s0e=function(){var e=SGt.format.apply(SGt,arguments);e="GFS4: "+e.split(/\n/).join(` -GFS4: `),console.error(e)});WS[dx]||(Eds=global[dx]||[],vds(WS,Eds),WS.close=function(e){function t(r,n){return e.call(WS,r,function(a){a||Sds(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(t,BGt,{value:e}),t}(WS.close),WS.closeSync=function(e){function t(r){e.apply(WS,arguments),Sds()}return Object.defineProperty(t,BGt,{value:e}),t}(WS.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){s0e(WS[dx]),wt("assert").equal(WS[dx].length,0)}));var Eds;global[dx]||vds(global,WS[dx]);zJr.exports=KJr(Myl(WS));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!WS.__patched&&(zJr.exports=KJr(WS),WS.__patched=!0);function KJr(e){Wyl(e),e.gracefulify=KJr,e.createReadStream=fe,e.createWriteStream=ue;var t=e.readFile;e.readFile=r;function r(Se,De,k){return typeof De=="function"&&(k=De,De=null),et(Se,De,k);function et(ct,Me,je,St){return t(ct,Me,function(At){At&&(At.code==="EMFILE"||At.code==="ENFILE")?mGe([et,[ct,Me,je],At,St||Date.now(),Date.now()]):typeof je=="function"&&je.apply(this,arguments)})}}var n=e.writeFile;e.writeFile=a;function a(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return n(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=l);function l(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return o(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var A=e.copyFile;A&&(e.copyFile=f);function f(Se,De,k,et){return typeof k=="function"&&(et=k,k=0),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return A(Me,je,St,function(Tr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}var I=e.readdir;e.readdir=b;var C=/^v[0-5]\./;function b(Se,De,k){typeof De=="function"&&(k=De,De=null);var et=C.test(process.version)?function(je,St,At,Yt){return I(je,ct(je,St,At,Yt))}:function(je,St,At,Yt){return I(je,St,ct(je,St,At,Yt))};return et(Se,De,k);function ct(Me,je,St,At){return function(Yt,Tr){Yt&&(Yt.code==="EMFILE"||Yt.code==="ENFILE")?mGe([et,[Me,je,St],Yt,At||Date.now(),Date.now()]):(Tr&&Tr.sort&&Tr.sort(),typeof St=="function"&&St.call(this,Yt,Tr))}}}if(process.version.substr(0,4)==="v0.8"){var E=Oyl(e);X=E.ReadStream,ne=E.WriteStream}var N=e.ReadStream;N&&(X.prototype=Object.create(N.prototype),X.prototype.open=ae);var B=e.WriteStream;B&&(ne.prototype=Object.create(B.prototype),ne.prototype.open=ce),Object.defineProperty(e,"ReadStream",{get:function(){return X},set:function(Se){X=Se},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ne},set:function(Se){ne=Se},enumerable:!0,configurable:!0});var F=X;Object.defineProperty(e,"FileReadStream",{get:function(){return F},set:function(Se){F=Se},enumerable:!0,configurable:!0});var Q=ne;Object.defineProperty(e,"FileWriteStream",{get:function(){return Q},set:function(Se){Q=Se},enumerable:!0,configurable:!0});function X(Se,De){return this instanceof X?(N.apply(this,arguments),this):X.apply(Object.create(X.prototype),arguments)}function ae(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.autoClose&&Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k),Se.read())})}function ne(Se,De){return this instanceof ne?(B.apply(this,arguments),this):ne.apply(Object.create(ne.prototype),arguments)}function ce(){var Se=this;be(Se.path,Se.flags,Se.mode,function(De,k){De?(Se.destroy(),Se.emit("error",De)):(Se.fd=k,Se.emit("open",k))})}function fe(Se,De){return new e.ReadStream(Se,De)}function ue(Se,De){return new e.WriteStream(Se,De)}var de=e.open;e.open=be;function be(Se,De,k,et){return typeof k=="function"&&(et=k,k=null),ct(Se,De,k,et);function ct(Me,je,St,At,Yt){return de(Me,je,St,function(Tr,Nr){Tr&&(Tr.code==="EMFILE"||Tr.code==="ENFILE")?mGe([ct,[Me,je,St,At],Tr,Yt||Date.now(),Date.now()]):typeof At=="function"&&At.apply(this,arguments)})}}return e}function mGe(e){s0e("ENQUEUE",e[0].name,e[1]),WS[dx].push(e),jJr()}var vGt;function Sds(){for(var e=Date.now(),t=0;t2&&(WS[dx][t][3]=e,WS[dx][t][4]=e);jJr()}function jJr(){if(clearTimeout(vGt),vGt=void 0,WS[dx].length!==0){var e=WS[dx].shift(),t=e[0],r=e[1],n=e[2],a=e[3],o=e[4];if(a===void 0)s0e("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){s0e("TIMEOUT",t.name,r);var l=r.pop();typeof l=="function"&&l.call(null,n)}else{var A=Date.now()-o,f=Math.max(o-a,1),I=Math.min(f*1.2,100);A>=I?(s0e("RETRY",t.name,r),t.apply(null,r.concat([a]))):WS[dx].push(e)}vGt===void 0&&(vGt=setTimeout(jJr,0))}}});var Rds=H((Org,Tds)=>{"use strict";$Jr.ifExists=Uyl;var CGe=wt("util"),WO=wt("path"),qJr=Ads(),Yyl=fds(),Qyl=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,Xyl={createPwshFile:!0,createCmdFile:qJr(),fs:Bds()},Jyl=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function wds(e){let t={...Xyl,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,CGe.promisify)(r.chmod):async()=>{},mkdir:(0,CGe.promisify)(r.mkdir),readFile:(0,CGe.promisify)(r.readFile),stat:(0,CGe.promisify)(r.stat),unlink:(0,CGe.promisify)(r.unlink),writeFile:(0,CGe.promisify)(r.writeFile)},t}async function $Jr(e,t,r){let n=wds(r);await jyl(e,t,n)}function Uyl(e,t,r){return $Jr(e,t,r).catch(()=>{})}function Kyl(e,t){return t.fs_.unlink(e).catch(()=>{})}async function jyl(e,t,r){let n=await tbl(e,r);return await zyl(t,r),qyl(e,t,n,r)}function zyl(e,t){return t.fs_.mkdir(WO.dirname(e),{recursive:!0})}function qyl(e,t,r,n){let a=wds(n),o=[{generator:sbl,extension:""}];return a.createCmdFile&&o.push({generator:ibl,extension:Yyl}),a.createPwshFile&&o.push({generator:obl,extension:".ps1"}),Promise.all(o.map(l=>nbl(e,t+l.extension,r,l.generator,a)))}function $yl(e,t){return Kyl(e,t)}function ebl(e,t){return abl(e,t)}async function tbl(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(Qyl);if(!a){let o=WO.extname(e).toLowerCase();return{program:Jyl.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!qJr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${rbl()}`))return{program:null,additionalArgs:""};throw r}}function rbl(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(WO.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function nbl(e,t,r,n,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",l=[r.additionalArgs,o].filter(A=>A).join(" ");return a=Object.assign({},a,{prog:r.program,args:l}),await $yl(t,a),await a.fs_.writeFile(t,n(e,t,a),"utf8"),ebl(t,a)}function ibl(e,t,r){let a=WO.relative(WO.dirname(t),e).split("/").join("\\"),o=WO.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,l,A=r.prog,f=r.args||"",I=o7e(r.nodePath).win32,C=o7e(r.prependToPath).win32;A?A==="node"&&r.nodeExecPath?(A=`"${r.nodeExecPath}"`,a=o):(l=`"%~dp0\\${A}.exe"`,a=o):(A=o,f="",a="");let b=r.progArgs?`${r.progArgs.join(" ")} `:"",E=`@SETLOCAL\r -`;return C&&(E+=`@SET "PATH=${C}:%PATH%"\r -`),I&&(E+=`@IF NOT DEFINED NODE_PATH (\r - @SET "NODE_PATH=${I}"\r -) ELSE (\r - @SET "NODE_PATH=%NODE_PATH%;${I}"\r -)\r -`),l?E+=`@IF EXIST ${l} (\r - ${l} ${f} ${a} ${b}%*\r -) ELSE (\r - @SET PATHEXT=%PATHEXT:;.JS;=;%\r - ${A} ${f} ${a} ${b}%*\r -)\r -`:E+=`@${A} ${f} ${a} ${b}%*\r -`,E}function sbl(e,t,r){let n=WO.relative(WO.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;n=n.split("\\").join("/");let l=WO.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,A=r.args||"",f=o7e(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,n=l):(o=`"$basedir/${r.prog}"`,n=l):(a=l,A="",n="");let I=r.progArgs?`${r.progArgs.join(" ")} `:"",C=`#!/bin/sh -basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") - -case \`uname\` in - *CYGWIN*) basedir=\`cygpath -w "$basedir"\`;; -esac - -`;return r.prependToPath&&(C+=`export PATH="${r.prependToPath}:$PATH" -`),f&&(C+=`if [ -z "$NODE_PATH" ]; then - export NODE_PATH="${f}" -else - export NODE_PATH="$NODE_PATH:${f}" -fi -`),o?C+=`if [ -x ${o} ]; then - exec ${o} ${A} ${n} ${I}"$@" -else - exec ${a} ${A} ${n} ${I}"$@" -fi -`:C+=`${a} ${A} ${n} ${I}"$@" -exit $? -`,C}function obl(e,t,r){let n=WO.relative(WO.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,l;n=n.split("\\").join("/");let A=WO.isAbsolute(n)?`"${n}"`:`"$basedir/${n}"`,f=r.args||"",I=o7e(r.nodePath),C=I.win32,b=I.posix,E=o7e(r.prependToPath),N=E.win32,B=E.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,n=A):(l=`"$basedir/${r.prog}$exe"`,n=A):(o=A,f="",n="");let F=r.progArgs?`${r.progArgs.join(" ")} `:"",Q=`#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -${C||N?`$pathsep=":" -`:""}${C?`$env_node_path=$env:NODE_PATH -$new_node_path="${C}" -`:""}${N?`$env_path=$env:PATH -$prepend_path="${N}" -`:""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -${C||N?` $pathsep=";" -`:""}}`;return(b||B)&&(Q+=` else { -${b?` $new_node_path="${b}" -`:""}${B?` $prepend_path="${B}" -`:""}} -`),b&&(Q+=`if ([string]::IsNullOrEmpty($env_node_path)) { - $env:NODE_PATH=$new_node_path -} else { - $env:NODE_PATH="$env_node_path$pathsep$new_node_path" -} -`),r.prependToPath&&(Q+=` -$env:PATH="$prepend_path$pathsep$env:PATH" -`),l?Q+=` -$ret=0 -if (Test-Path ${l}) { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${l} ${f} ${n} ${F}$args - } else { - & ${l} ${f} ${n} ${F}$args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${o} ${f} ${n} ${F}$args - } else { - & ${o} ${f} ${n} ${F}$args - } - $ret=$LASTEXITCODE -} -${C?`$env:NODE_PATH=$env_node_path -`:""}${N?`$env:PATH=$env_path -`:""}exit $ret -`:Q+=` -# Support pipeline input -if ($MyInvocation.ExpectingInput) { - $input | & ${o} ${f} ${n} ${F}$args -} else { - & ${o} ${f} ${n} ${F}$args -} -${C?`$env:NODE_PATH=$env_node_path -`:""}${N?`$env:PATH=$env_path -`:""}exit $LASTEXITCODE -`,Q}function abl(e,t){return t.fs_.chmod(e,493)}function o7e(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(WO.delimiter):Array.from(e),r={};for(let n=0;n`/mnt/${A.toLowerCase()}`):t[n];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[n]={win32:a,posix:o}}return r}Tds.exports=$Jr});var aUr=H(o0e=>{"use strict";Object.defineProperty(o0e,"__esModule",{value:!0});o0e.NodeModulesLinker=o0e.NodeModulesMode=void 0;o0e.getGlobalHardlinksStore=Ods;var sUr=(Pa(),vi(Va)),rp=Sn(),xds=Sn(),q4=Sn(),tUr=Sn(),Fu=ro(),Op=ro(),cbl=zK(),lbl=e7e(),eUr=e7e(),ubl=TW(),Gds=hGe(),gbl=sUr.__importDefault(Rds()),Nds=($c(),vi(rg)),Fds=sUr.__importDefault(wt("crypto")),Abl=sUr.__importDefault(wt("fs")),Zds=1,V2="node_modules",wGt=".bin",Lds=".yarn-state.yml",dbl=1e3,OO;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(OO||(o0e.NodeModulesMode=OO={}));var rUr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let n=r.project.tryWorkspaceByLocator(t);if(n)return n.cwd;let a=await rp.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await iUr(r.project,{unrollAliases:!0}));if(a===null)throw new Nds.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(rp.structUtils.stringifyLocator(t));if(!o){let f=new Nds.UsageError(`Couldn't find ${rp.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let l=o.locations.sort((f,I)=>f.split(Fu.ppath.sep).length-I.split(Fu.ppath.sep).length),A=Fu.ppath.join(r.project.configuration.startingCwd,V2);return l.find(f=>Fu.ppath.contains(A,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=await rp.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await iUr(r.project,{unrollAliases:!0}));if(n===null)return null;let{locationRoot:a,segments:o}=TGt(Fu.ppath.resolve(t),{skipPrefix:r.project.cwd}),l=n.locationTree.get(a);if(!l)return null;let A=l.locator;for(let f of o){if(l=l.children.get(f),!l)break;A=l.locator||A}return rp.structUtils.parseLocator(A)}makeInstaller(t){return new nUr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};o0e.NodeModulesLinker=rUr;var nUr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let n=Fu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await pbl(t,r),t.linkType===q4.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!rp.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,l=new Set;o.has(rp.structUtils.stringifyIdent(t))||o.set(rp.structUtils.stringifyIdent(t),t.reference);let A=t;if(rp.structUtils.isVirtualLocator(t)){A=rp.structUtils.devirtualizeLocator(t);for(let C of t.peerDependencies.values())o.set(rp.structUtils.stringifyIdent(C),null),l.add(rp.structUtils.stringifyIdent(C))}let f={packageLocation:`${Fu.npath.fromPortablePath(n)}/`,packageDependencies:o,packagePeers:l,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let I=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(A.locatorHash,I),{packageLocation:n,buildRequest:null}}async attachInternalDependencies(t,r){let n=this.localStore.get(t.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let l=rp.structUtils.areIdentsEqual(a,o)?o.reference:[rp.structUtils.stringifyIdent(o),o.reference];n.pnpNode.packageDependencies.set(rp.structUtils.stringifyIdent(a),l)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Op.VirtualFS({baseFs:new cbl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await iUr(this.opts.project),n=this.opts.project.configuration.get("nmMode");(r===null||n!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:n,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmHoistingLimits");try{N=rp.miscUtils.validateEnum(eUr.NodeModulesHoistingLimits,E.manifest.installConfig?.hoistingLimits??N)}catch{let B=rp.structUtils.prettyWorkspace(this.opts.project.configuration,E);this.opts.report.reportWarning(tUr.MessageName.INVALID_MANIFEST,`${B}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(eUr.NodeModulesHoistingLimits).join(", ")}, using default: "${N}"`)}return[E.relativeCwd,N]})),o=new Map(this.opts.project.workspaces.map(E=>{let N=this.opts.project.configuration.get("nmSelfReferences");return N=E.manifest.installConfig?.selfReferences??N,[E.relativeCwd,N]})),l={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(E,N)=>Array.isArray(N)?{name:N[0],reference:N[1]}:{name:E,reference:N},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(E=>{let N=E.anchoredLocator;return{name:rp.structUtils.stringifyIdent(N),reference:N.reference}}),getPackageInformation:E=>{let N=E.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:rp.structUtils.makeLocator(rp.structUtils.parseIdent(E.name),E.reference),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return B.pnpNode},findPackageLocator:E=>{let N=this.opts.project.tryWorkspaceByCwd(Fu.npath.toPortablePath(E));if(N!==null){let B=N.anchoredLocator;return{name:rp.structUtils.stringifyIdent(B),reference:B.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:E=>Fu.npath.fromPortablePath(Op.VirtualFS.resolveVirtual(Fu.npath.toPortablePath(E)))},{tree:A,errors:f,preserveSymlinksRequired:I}=(0,lbl.buildNodeModulesTree)(l,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!A){for(let{messageName:E,text:N}of f)this.opts.report.reportError(E,N);return}let C=(0,eUr.buildLocatorMap)(A);await ybl(r,C,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async E=>{let N=rp.structUtils.parseLocator(E),B=this.localStore.get(N.locatorHash);if(typeof B>"u")throw new Error("Assertion failed: Expected the slot to exist");return B.customPackageData.manifest}});let b=[];for(let[E,N]of C.entries()){if(Wds(E))continue;let B=rp.structUtils.parseLocator(E),F=this.localStore.get(B.locatorHash);if(typeof F>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(F.pkg))continue;let Q=Gds.jsInstallUtils.extractBuildRequest(F.pkg,F.customPackageData,F.dependencyMeta,{configuration:this.opts.project.configuration});Q&&b.push({buildLocations:N.locations,locator:B,buildRequest:Q})}return I&&this.opts.report.reportWarning(tUr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${rp.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",rp.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:b}}};async function pbl(e,t){let r=await rp.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new rp.Manifest,n=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())n.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:Gds.jsInstallUtils.hasBindingGyp(t)}}}async function fbl(e,t,r,n,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will -`,o+=`# cause your node_modules installation to become invalidated. -`,o+=` -`,o+=`__metadata: -`,o+=` version: ${Zds} -`,o+=` nmMode: ${n.value} -`;let l=Array.from(t.keys()).sort(),A=rp.structUtils.stringifyLocator(e.topLevelWorkspace.anchoredLocator);for(let C of l){let b=t.get(C);o+=` -`,o+=`${JSON.stringify(C)}: -`,o+=` locations: -`;for(let E of b.locations){let N=Fu.ppath.contains(e.cwd,E);if(N===null)throw new Error(`Assertion failed: Expected the path to be within the project (${E})`);o+=` - ${JSON.stringify(N)} -`}if(b.aliases.length>0){o+=` aliases: -`;for(let E of b.aliases)o+=` - ${JSON.stringify(E)} -`}if(C===A&&r.size>0){o+=` bin: -`;for(let[E,N]of r){let B=Fu.ppath.contains(e.cwd,E);if(B===null)throw new Error(`Assertion failed: Expected the path to be within the project (${E})`);o+=` ${JSON.stringify(B)}: -`;for(let[F,Q]of N){let X=Fu.ppath.relative(Fu.ppath.join(E,V2),Q);o+=` ${JSON.stringify(F)}: ${JSON.stringify(X)} -`}}}}let f=e.cwd,I=Fu.ppath.join(f,V2,Lds);a&&await Op.xfs.removePromise(I),await Op.xfs.changeFilePromise(I,o,{automaticNewlines:!0})}async function iUr(e,{unrollAliases:t=!1}={}){let r=e.cwd,n=Fu.ppath.join(r,V2,Lds),a;try{a=await Op.xfs.statPromise(n)}catch{}if(!a)return null;let o=(0,ubl.parseSyml)(await Op.xfs.readFilePromise(n,"utf8"));if(o.__metadata.version>Zds)return null;let l=o.__metadata.nmMode||OO.CLASSIC,A=new Map,f=new Map;delete o.__metadata;for(let[I,C]of Object.entries(o)){let b=C.locations.map(N=>Fu.ppath.join(r,N)),E=C.bin;if(E)for(let[N,B]of Object.entries(E)){let F=Fu.ppath.join(r,Fu.npath.toPortablePath(N)),Q=rp.miscUtils.getMapWithDefault(f,F);for(let[X,ae]of Object.entries(B))Q.set(X,Fu.npath.toPortablePath([F,V2,ae].join(Fu.ppath.sep)))}if(A.set(I,{target:Fu.PortablePath.dot,linkType:q4.LinkType.HARD,locations:b,aliases:C.aliases||[]}),t&&C.aliases)for(let N of C.aliases){let{scope:B,name:F}=rp.structUtils.parseLocator(I),Q=rp.structUtils.makeLocator(rp.structUtils.makeIdent(B,F),N),X=rp.structUtils.stringifyLocator(Q);A.set(X,{target:Fu.PortablePath.dot,linkType:q4.LinkType.HARD,locations:b,aliases:[]})}}return{locatorMap:A,binSymlinks:f,locationTree:Vds(A,{skipPrefix:e.cwd}),nmMode:l,mtimeMs:a.mtimeMs}}var _Ge=async(e,t)=>{if(e.split(Fu.ppath.sep).indexOf(V2)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Op.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Op.xfs.unlinkPromise(e);return}let n=await Op.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of n){let l=Fu.ppath.join(e,o.name);o.isDirectory()?(o.name!==V2||t&&t.innerLoop)&&await _Ge(l,{innerLoop:!0,contentsOnly:!1}):await Op.xfs.unlinkPromise(l)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Op.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},Dds=4,TGt=(e,{skipPrefix:t})=>{let r=Fu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let n=r.split(Fu.ppath.sep).filter(f=>f!==""),a=n.indexOf(V2),o=n.slice(0,a).join(Fu.ppath.sep),l=Fu.ppath.join(t,o),A=n.slice(a);return{locationRoot:l,segments:A}},Vds=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let n=()=>({children:new Map,linkType:q4.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===q4.LinkType.SOFT&&Fu.ppath.contains(t,o.target)!==null){let A=rp.miscUtils.getFactoryWithDefault(r,o.target,n);A.locator=a,A.linkType=o.linkType}for(let l of o.locations){let{locationRoot:A,segments:f}=TGt(l,{skipPrefix:t}),I=rp.miscUtils.getFactoryWithDefault(r,A,n);for(let C=0;C{if(process.platform==="win32"&&r===q4.WindowsLinkType.JUNCTIONS){let n;try{n=await Op.xfs.lstatPromise(e)}catch{}if(!n||n.isDirectory()){await Op.xfs.symlinkPromise(e,t,"junction");return}}await Op.xfs.symlinkPromise(Fu.ppath.relative(Fu.ppath.dirname(t),e),t)};async function Pds(e,t,r){let n=Fu.ppath.join(e,`${Fds.default.randomBytes(16).toString("hex")}.tmp`);try{await Op.xfs.writeFilePromise(n,r);try{await Op.xfs.linkPromise(n,t)}catch{}}finally{await Op.xfs.unlinkPromise(n)}}async function Ibl({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:n,baseFs:a,nmMode:o}){if(r.kind===Ote.FILE){if(o.value===OO.HARDLINKS_GLOBAL&&n&&r.digest){let A=Fu.ppath.join(n,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let I=await Op.xfs.statPromise(A);if(I&&(!r.mtimeMs||I.mtimeMs>r.mtimeMs||I.mtimeMs{await Op.xfs.mkdirPromise(e,{recursive:!0});let A=async(C=Fu.PortablePath.dot)=>{let b=Fu.ppath.join(t,C),E=await r.readdirPromise(b,{withFileTypes:!0}),N=new Map;for(let B of E){let F=Fu.ppath.join(C,B.name),Q,X=Fu.ppath.join(b,B.name);if(B.isFile()){if(Q={kind:Ote.FILE,mode:(await r.lstatPromise(X)).mode},a.value===OO.HARDLINKS_GLOBAL){let ae=await xds.hashUtils.checksumFile(X,{baseFs:r,algorithm:"sha1"});Q.digest=ae}}else if(B.isDirectory())Q={kind:Ote.DIRECTORY};else if(B.isSymbolicLink())Q={kind:Ote.SYMLINK,symlinkTo:await r.readlinkPromise(X)};else throw new Error(`Unsupported file type (file: ${X}, mode: 0o${await r.statSync(X).mode.toString(8).padStart(6,"0")})`);if(N.set(F,Q),B.isDirectory()&&F!==V2){let ae=await A(F);for(let[ne,ce]of ae)N.set(ne,ce)}}return N},f;if(a.value===OO.HARDLINKS_GLOBAL&&n&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Op.xfs.readFilePromise(C,"utf8"))))}catch{f=await A()}}else f=await A();let I=!1;for(let[C,b]of f){let E=Fu.ppath.join(t,C),N=Fu.ppath.join(e,C);if(b.kind===Ote.DIRECTORY)await Op.xfs.mkdirPromise(N,{recursive:!0});else if(b.kind===Ote.FILE){let B=b.mtimeMs;await Ibl({srcPath:E,dstPath:N,entry:b,nmMode:a,baseFs:r,globalHardlinksStore:n}),b.mtimeMs!==B&&(I=!0)}else b.kind===Ote.SYMLINK&&await oUr(Fu.ppath.resolve(Fu.ppath.dirname(N),b.symlinkTo),N,o)}if(a.value===OO.HARDLINKS_GLOBAL&&n&&I&&l){let C=Fu.ppath.join(n,l.substring(0,2),`${l.substring(2)}.json`);await Op.xfs.removePromise(C),await Pds(n,C,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function mbl(e,t,r,n){let a=new Map,o=new Map,l=new Map,A=!1,f=(I,C,b,E,N)=>{let B=!0,F=Fu.ppath.join(I,C),Q=new Set;if(C===V2||C.startsWith("@")){let ae;try{ae=Op.xfs.statSync(F)}catch{}B=!!ae,ae?ae.mtimeMs>r?(A=!0,Q=new Set(Op.xfs.readdirSync(F))):Q=new Set(b.children.get(C).children.keys()):A=!0;let ne=t.get(I);if(ne){let ce=Fu.ppath.join(I,V2,wGt),fe;try{fe=Op.xfs.statSync(ce)}catch{}if(!fe)A=!0;else if(fe.mtimeMs>r){A=!0;let ue=new Set(Op.xfs.readdirSync(ce)),de=new Map;o.set(I,de);for(let[be,Se]of ne)ue.has(be)&&de.set(be,Se)}else o.set(I,ne)}}else B=N.has(C);let X=b.children.get(C);if(B){let{linkType:ae,locator:ne}=X,ce={children:new Map,linkType:ae,locator:ne};if(E.children.set(C,ce),ne){let fe=rp.miscUtils.getSetWithDefault(l,ne);fe.add(F),l.set(ne,fe)}for(let fe of X.children.keys())f(F,fe,X,ce,Q)}else X.locator&&n.storedBuildState.delete(rp.structUtils.parseLocator(X.locator).locatorHash)};for(let[I,C]of e){let{linkType:b,locator:E}=C,N={children:new Map,linkType:b,locator:E};if(a.set(I,N),E){let B=rp.miscUtils.getSetWithDefault(l,C.locator);B.add(I),l.set(C.locator,B)}C.children.has(V2)&&f(I,V2,C,N,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:l,installChangedByUser:A}}function Wds(e){let t=rp.structUtils.parseDescriptor(e);return rp.structUtils.isVirtualDescriptor(t)&&(t=rp.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function Cbl(e,t,r,{loadManifest:n}){let a=new Map;for(let[A,{locations:f}]of e){let I=Wds(A)?null:await n(A,f[0]),C=new Map;if(I)for(let[b,E]of I.bin){let N=Fu.ppath.join(f[0],E);E!==""&&Op.xfs.existsSync(N)&&C.set(b,E)}a.set(A,C)}let o=new Map,l=(A,f,I)=>{let C=new Map,b=Fu.ppath.contains(r,A);if(I.locator&&b!==null){let E=a.get(I.locator);for(let[N,B]of E){let F=Fu.ppath.join(A,Fu.npath.toPortablePath(B));C.set(N,F)}for(let[N,B]of I.children){let F=Fu.ppath.join(A,N),Q=l(F,F,B);Q.size>0&&o.set(A,new Map([...o.get(A)||new Map,...Q]))}}else for(let[E,N]of I.children){let B=l(Fu.ppath.join(A,E),f,N);for(let[F,Q]of B)C.set(F,Q)}return C};for(let[A,f]of t){let I=l(A,A,f);I.size>0&&o.set(A,new Map([...o.get(A)||new Map,...I]))}return o}var kds=(e,t)=>{if(!e||!t)return e===t;let r=rp.structUtils.parseLocator(e);rp.structUtils.isVirtualLocator(r)&&(r=rp.structUtils.devirtualizeLocator(r));let n=rp.structUtils.parseLocator(t);return rp.structUtils.isVirtualLocator(n)&&(n=rp.structUtils.devirtualizeLocator(n)),rp.structUtils.areLocatorsEqual(r,n)};function Ods(e){return Fu.ppath.join(e.get("globalFolder"),"store")}function _bl(e,t){let r=n=>{let a=n.split(Fu.ppath.sep),o=a.lastIndexOf(V2);if(o<0||o==a.length-1)throw new Error(`Assertion failed. Path is outside of any node_modules package ${n}`);return a.slice(0,o+(a[o+1].startsWith("@")?3:2)).join(Fu.ppath.sep)};for(let n of e.values())for(let[a,o]of n)t.has(r(o))&&n.delete(a)}async function ybl(e,t,{baseFs:r,project:n,report:a,loadManifest:o,realLocatorChecksums:l}){let A=Fu.ppath.join(n.cwd,V2),{locationTree:f,binSymlinks:I,locatorLocations:C,installChangedByUser:b}=mbl(e.locationTree,e.binSymlinks,e.mtimeMs,n),E=Vds(t,{skipPrefix:n.cwd}),N=[],B=async({srcDir:Se,dstDir:De,linkType:k,globalHardlinksStore:et,nmMode:ct,windowsLinkType:Me,packageChecksum:je})=>{let St=(async()=>{try{k===q4.LinkType.SOFT?(await Op.xfs.mkdirPromise(Fu.ppath.dirname(De),{recursive:!0}),await oUr(Fu.ppath.resolve(Se),De,Me)):await hbl(De,Se,{baseFs:r,globalHardlinksStore:et,nmMode:ct,windowsLinkType:Me,packageChecksum:je})}catch(At){throw At.message=`While persisting ${Se} -> ${De} ${At.message}`,At}finally{ce.tick()}})().then(()=>N.splice(N.indexOf(St),1));N.push(St),N.length>Dds&&await Promise.race(N)},F=async(Se,De,k)=>{let et=(async()=>{let ct=async(Me,je,St)=>{try{St.innerLoop||await Op.xfs.mkdirPromise(je,{recursive:!0});let At=await Op.xfs.readdirPromise(Me,{withFileTypes:!0});for(let Yt of At){if(!St.innerLoop&&Yt.name===wGt)continue;let Tr=Fu.ppath.join(Me,Yt.name),Nr=Fu.ppath.join(je,Yt.name);Yt.isDirectory()?(Yt.name!==V2||St&&St.innerLoop)&&(await Op.xfs.mkdirPromise(Nr,{recursive:!0}),await ct(Tr,Nr,{...St,innerLoop:!0})):de.value===OO.HARDLINKS_LOCAL||de.value===OO.HARDLINKS_GLOBAL?await Op.xfs.linkPromise(Tr,Nr):await Op.xfs.copyFilePromise(Tr,Nr,Abl.default.constants.COPYFILE_FICLONE)}}catch(At){throw St.innerLoop||(At.message=`While cloning ${Me} -> ${je} ${At.message}`),At}finally{St.innerLoop||ce.tick()}};await ct(Se,De,k)})().then(()=>N.splice(N.indexOf(et),1));N.push(et),N.length>Dds&&await Promise.race(N)},Q=async(Se,De,k)=>{if(k)for(let[et,ct]of De.children){let Me=k.children.get(et);await Q(Fu.ppath.join(Se,et),ct,Me)}else{De.children.has(V2)&&await _Ge(Fu.ppath.join(Se,V2),{contentsOnly:!1});let et=Fu.ppath.basename(Se)===V2&&f.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await _Ge(Se,{contentsOnly:Se===A,isWorkspaceDir:et})}};for(let[Se,De]of f){let k=E.get(Se);for(let[et,ct]of De.children){if(et===".")continue;let Me=k&&k.children.get(et),je=Fu.ppath.join(Se,et);await Q(je,ct,Me)}}let X=async(Se,De,k)=>{if(k){kds(De.locator,k.locator)||await _Ge(Se,{contentsOnly:De.linkType===q4.LinkType.HARD});for(let[et,ct]of De.children){let Me=k.children.get(et);await X(Fu.ppath.join(Se,et),ct,Me)}}else{De.children.has(V2)&&await _Ge(Fu.ppath.join(Se,V2),{contentsOnly:!0});let et=Fu.ppath.basename(Se)===V2&&E.has(Fu.ppath.join(Fu.ppath.dirname(Se)));await _Ge(Se,{contentsOnly:De.linkType===q4.LinkType.HARD,isWorkspaceDir:et})}};for(let[Se,De]of E){let k=f.get(Se);for(let[et,ct]of De.children){if(et===".")continue;let Me=k&&k.children.get(et);await X(Fu.ppath.join(Se,et),ct,Me)}}let ae=new Map,ne=[];for(let[Se,De]of C)for(let k of De){let{locationRoot:et,segments:ct}=TGt(k,{skipPrefix:n.cwd}),Me=E.get(et),je=et;if(Me){for(let St of ct)if(je=Fu.ppath.join(je,St),Me=Me.children.get(St),!Me)break;if(Me){let St=kds(Me.locator,Se),At=t.get(Me.locator),Yt=At.target,Tr=je,Nr=At.linkType;if(St)ae.has(Yt)||ae.set(Yt,Tr);else if(Yt!==Tr){let er=rp.structUtils.parseLocator(Me.locator);rp.structUtils.isVirtualLocator(er)&&(er=rp.structUtils.devirtualizeLocator(er)),ne.push({srcDir:Yt,dstDir:Tr,linkType:Nr,realLocatorHash:er.locatorHash})}}}}for(let[Se,{locations:De}]of t.entries())for(let k of De){let{locationRoot:et,segments:ct}=TGt(k,{skipPrefix:n.cwd}),Me=f.get(et),je=E.get(et),St=et,At=t.get(Se),Yt=rp.structUtils.parseLocator(Se);rp.structUtils.isVirtualLocator(Yt)&&(Yt=rp.structUtils.devirtualizeLocator(Yt));let Tr=Yt.locatorHash,Nr=At.target,er=k;if(Nr===er)continue;let vt=At.linkType;for(let xt of ct)je=je.children.get(xt);if(!Me)ne.push({srcDir:Nr,dstDir:er,linkType:vt,realLocatorHash:Tr});else for(let xt of ct)if(St=Fu.ppath.join(St,xt),Me=Me.children.get(xt),!Me){ne.push({srcDir:Nr,dstDir:er,linkType:vt,realLocatorHash:Tr});break}}let ce=rp.Report.progressViaCounter(ne.length),fe=a.reportProgress(ce),ue=n.configuration.get("nmMode"),de={value:ue},be=n.configuration.get("winLinkType");try{let Se=de.value===OO.HARDLINKS_GLOBAL?`${Ods(n.configuration)}/v1`:null;if(Se&&!await Op.xfs.existsPromise(Se)){await Op.xfs.mkdirpPromise(Se);for(let k=0;k<256;k++)await Op.xfs.mkdirPromise(Fu.ppath.join(Se,k.toString(16).padStart(2,"0")))}for(let k of ne)(k.linkType===q4.LinkType.SOFT||!ae.has(k.srcDir))&&(ae.set(k.srcDir,k.dstDir),await B({...k,globalHardlinksStore:Se,nmMode:de,windowsLinkType:be,packageChecksum:l.get(k.realLocatorHash)||null}));await Promise.all(N),N.length=0;for(let k of ne){let et=ae.get(k.srcDir);k.linkType!==q4.LinkType.SOFT&&k.dstDir!==et&&await F(et,k.dstDir,{nmMode:de})}await Promise.all(N),await Op.xfs.mkdirPromise(A,{recursive:!0}),_bl(I,new Set(ne.map(k=>k.dstDir)));let De=await Cbl(t,E,n.cwd,{loadManifest:o});await bbl(I,De,n.cwd,be),await fbl(n,t,De,de,{installChangedByUser:b}),ue==OO.HARDLINKS_GLOBAL&&de.value==OO.HARDLINKS_LOCAL&&a.reportWarningOnce(tUr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function bbl(e,t,r,n){for(let a of e.keys()){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=Fu.ppath.join(a,V2,wGt);await Op.xfs.removePromise(o)}}for(let[a,o]of t){if(Fu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let l=Fu.ppath.join(a,V2,wGt),A=e.get(a)||new Map;await Op.xfs.mkdirPromise(l,{recursive:!0});for(let f of A.keys())o.has(f)||(await Op.xfs.removePromise(Fu.ppath.join(l,f)),process.platform==="win32"&&await Op.xfs.removePromise(Fu.ppath.join(l,`${f}.cmd`)));for(let[f,I]of o){let C=A.get(f),b=Fu.ppath.join(l,f);C!==I&&(process.platform==="win32"?await(0,gbl.default)(Fu.npath.fromPortablePath(I),Fu.npath.fromPortablePath(b),{createPwshFile:!1}):(await Op.xfs.removePromise(b),await oUr(I,b,n),Fu.ppath.contains(r,await Op.xfs.realpathPromise(I))!==null&&await Op.xfs.chmodPromise(I,493)))}}}});var Yds=H(RGt=>{"use strict";Object.defineProperty(RGt,"__esModule",{value:!0});RGt.PnpLooseLinker=void 0;var Mds=Sn(),a7e=ro(),Ebl=zK(),Sbl=e7e(),Hds=hGe(),vbl=LJr(),cUr=class extends Hds.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new lUr(t)}};RGt.PnpLooseLinker=cUr;var lUr=class extends Hds.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new a7e.VirtualFS({baseFs:new Ebl.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),n=(0,vbl.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,Sbl.buildNodeModulesTree)(n,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:C,text:b}of o)this.opts.report.reportError(C,b);return}let l=new Map;t.fallbackPool=l;let A=(C,b)=>{let E=Mds.structUtils.parseLocator(b.locator),N=Mds.structUtils.stringifyIdent(E);N===C?l.set(C,E.reference):l.set(C,[N,E.reference])},f=a7e.ppath.join(this.opts.project.cwd,a7e.Filename.nodeModules),I=a.get(f);if(!(typeof I>"u")){if("target"in I)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let C of I.dirList){let b=a7e.ppath.join(f,C),E=a.get(b);if(typeof E>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in E)A(C,E);else for(let N of E.dirList){let B=a7e.ppath.join(b,N),F=a.get(B);if(typeof F>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in F)A(`${C}/${N}`,F);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var Xds=H(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.PnpLooseLinker=Mte.NodeModulesMode=Mte.NodeModulesLinker=void 0;var uUr=Sn(),Bbl=ro(),NGt=e7e(),a0e=aUr();Object.defineProperty(Mte,"NodeModulesLinker",{enumerable:!0,get:function(){return a0e.NodeModulesLinker}});Object.defineProperty(Mte,"NodeModulesMode",{enumerable:!0,get:function(){return a0e.NodeModulesMode}});var wbl=aUr(),Qds=Yds();Object.defineProperty(Mte,"PnpLooseLinker",{enumerable:!0,get:function(){return Qds.PnpLooseLinker}});var Tbl={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,wbl.getGlobalHardlinksStore)(e);await Bbl.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:uUr.SettingsType.STRING,values:[NGt.NodeModulesHoistingLimits.WORKSPACES,NGt.NodeModulesHoistingLimits.DEPENDENCIES,NGt.NodeModulesHoistingLimits.NONE],default:NGt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:uUr.SettingsType.STRING,values:[a0e.NodeModulesMode.CLASSIC,a0e.NodeModulesMode.HARDLINKS_LOCAL,a0e.NodeModulesMode.HARDLINKS_GLOBAL],default:a0e.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:uUr.SettingsType.BOOLEAN,default:!0}},linkers:[a0e.NodeModulesLinker,Qds.PnpLooseLinker]};Mte.default=Tbl});var yGe=H(DGt=>{"use strict";Object.defineProperty(DGt,"__esModule",{value:!0});DGt.PROTOCOL=void 0;DGt.PROTOCOL="npm:"});var c0e=H(MO=>{"use strict";Object.defineProperty(MO,"__esModule",{value:!0});MO.RegistryType=void 0;MO.normalizeRegistry=bGe;MO.getAuditRegistry=Dbl;MO.getPublishRegistry=kbl;MO.getScopeRegistry=Jds;MO.getDefaultRegistry=c7e;MO.getRegistryConfiguration=Uds;MO.getScopeConfiguration=gUr;MO.getAuthConfiguration=Gbl;MO.isPackageApproved=Vbl;var Rbl=(Pa(),vi(Va)),kGt=Sn(),Nbl=Rbl.__importDefault(Ek()),vue;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(vue||(MO.RegistryType=vue={}));function bGe(e){return e.replace(/\/$/,"")}function Dbl({configuration:e}){return c7e({configuration:e,type:vue.AUDIT_REGISTRY})}function kbl(e,{configuration:t}){return e.publishConfig?.registry?bGe(e.publishConfig.registry):e.name?Jds(e.name.scope,{configuration:t,type:vue.PUBLISH_REGISTRY}):c7e({configuration:t,type:vue.PUBLISH_REGISTRY})}function Jds(e,{configuration:t,type:r=vue.FETCH_REGISTRY}){let n=gUr(e,{configuration:t});if(n===null)return c7e({configuration:t,type:r});let a=n.get(r);return a===null?c7e({configuration:t,type:r}):bGe(a)}function c7e({configuration:e,type:t=vue.FETCH_REGISTRY}){let r=e.get(t);return bGe(r!==null?r:e.get(vue.FETCH_REGISTRY))}function Uds(e,{configuration:t}){let r=t.get("npmRegistries"),n=bGe(e),a=r.get(n);if(typeof a<"u")return a;let o=r.get(n.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}var xbl=new Map([["npmRegistryServer","https://npm.jsr.io/"]]);function gUr(e,{configuration:t}){if(e===null)return null;let n=t.get("npmScopes").get(e);return n||(e==="jsr"?xbl:null)}function Gbl(e,{configuration:t,ident:r}){let n=r&&gUr(r.scope,{configuration:t});return n?.get("npmAuthIdent")||n?.get("npmAuthToken")?n:Uds(e,{configuration:t})||t}function Fbl({configuration:e,version:t,publishTimes:r}){let n=e.get("npmMinimalAgeGate");if(n){let a=r?.[t];if(typeof a>"u"||(new Date().getTime()-new Date(a).getTime())/60/1e3Zbl(t,r,n))}function Vbl(e){return!Fbl(e)||Lbl(e)}});var SGe=H(FH=>{"use strict";Object.defineProperty(FH,"__esModule",{value:!0});FH.AuthType=void 0;FH.handleInvalidAuthenticationError=wue;FH.customPackageError=zds;FH.getIdentUrl=dUr;FH.getPackageMetadata=Qbl;FH.get=eps;FH.post=jbl;FH.put=zbl;FH.del=qbl;var jds=(Pa(),vi(Va)),ET=Sn(),Bue=Sn(),Hte=ro(),Kds=Zje(),Pbl=kW(),Wbl=jds.__importDefault(UC()),AUr=jds.__importStar(c0e()),GH;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(GH||(FH.AuthType=GH={}));async function wue(e,{attemptedAs:t,registry:r,headers:n,configuration:a}){if(GGt(e))throw new Bue.ReportError(Bue.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new Bue.ReportError(Bue.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await eEl(r,n,{configuration:a})}`:`attempted as ${t}`})`)}function zds(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${ET.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}function dUr(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}var qds=new Map,Obl=new Map;async function Mbl(e){return await ET.miscUtils.getFactoryWithDefault(qds,e,async()=>{let t=null;try{t=await Hte.xfs.readJsonPromise(e)}catch{}return t})}async function Hbl(e,t,{configuration:r,cached:n,registry:a,headers:o,version:l,...A}){return await ET.miscUtils.getFactoryWithDefault(Obl,e,async()=>await eps(dUr(t),{...A,customErrorMessage:zds,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":n?.etag,"If-Modified-Since":n?.lastModified},wrapNetworkRequest:async f=>async()=>{let I=await f();if(I.statusCode===304){if(n===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...I,body:n.metadata}}let C=Xbl(JSON.parse(I.body.toString())),b={metadata:C,etag:I.headers.etag,lastModified:I.headers["last-modified"]};return qds.set(e,Promise.resolve(b)),Promise.resolve().then(async()=>{let E=`${e}-${process.pid}.tmp`;await Hte.xfs.mkdirPromise(Hte.ppath.dirname(E),{recursive:!0}),await Hte.xfs.writeJsonPromise(E,b,{compact:!0}),await Hte.xfs.renamePromise(E,e)}).catch(()=>{}),{...I,body:C}}}))}function Ybl(e){return e.scope!==null?`@${e.scope}-${e.name}-${e.scope.length}`:e.name}async function Qbl(e,{cache:t,project:r,registry:n,headers:a,version:o,...l}){let{configuration:A}=r;n=l7e(A,{ident:e,registry:n});let f=Ubl(A,n),I=Hte.ppath.join(f,`${Ybl(e)}.json`),C=null;if(!r.lockfileNeedsRefresh&&(C=await Mbl(I),C)){if(typeof o<"u"&&typeof C.metadata.versions[o]<"u")return C.metadata;if(A.get("enableOfflineMode")){let b=structuredClone(C.metadata),E=new Set;if(t){for(let B of Object.keys(b.versions)){let F=ET.structUtils.makeLocator(e,`npm:${B}`),Q=t.getLocatorMirrorPath(F);(!Q||!Hte.xfs.existsSync(Q))&&(delete b.versions[B],E.add(B))}let N=b["dist-tags"].latest;if(E.has(N)){let B=Object.keys(C.metadata.versions).sort(Wbl.default.compare),F=B.indexOf(N);for(;E.has(B[F])&&F>=0;)F-=1;F>=0?b["dist-tags"].latest=B[F]:delete b["dist-tags"].latest}}return b}}return await Hbl(I,e,{...l,configuration:A,cached:C,registry:n,headers:a,version:o})}var $ds=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function Xbl(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,Pbl.pick)(r,$ds)])),time:e.time}}var Jbl=ET.hashUtils.makeHash("time",...$ds).slice(0,6);function Ubl(e,t){let r=Kbl(e),n=new URL(t);return Hte.ppath.join(r,Jbl,n.hostname)}function Kbl(e){return Hte.ppath.join(e.get("globalFolder"),"metadata/npm")}async function eps(e,{configuration:t,headers:r,ident:n,authType:a,allowOidc:o,registry:l,...A}){l=l7e(t,{ident:n,registry:l}),n&&n.scope&&typeof a>"u"&&(a=GH.BEST_EFFORT);let f=await xGt(l,{authType:a,allowOidc:o,configuration:t,ident:n});f&&(r={...r,authorization:f});try{return await ET.httpUtils.get(e.charAt(0)==="/"?`${l}${e}`:e,{configuration:t,headers:r,...A})}catch(I){throw await wue(I,{registry:l,configuration:t,headers:r}),I}}async function jbl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=GH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=l7e(n,{ident:o,registry:f});let b=await xGt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...EGe(I)});try{return await ET.httpUtils.post(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!GGt(E)||I)throw await wue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await pUr(E,{configuration:n});let N={...a,...EGe(I)};try{return await ET.httpUtils.post(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await wue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function zbl(e,t,{attemptedAs:r,configuration:n,headers:a,ident:o,authType:l=GH.ALWAYS_AUTH,allowOidc:A,registry:f,otp:I,...C}){f=l7e(n,{ident:o,registry:f});let b=await xGt(f,{authType:l,allowOidc:A,configuration:n,ident:o});b&&(a={...a,authorization:b}),I&&(a={...a,...EGe(I)});try{return await ET.httpUtils.put(f+e,t,{configuration:n,headers:a,...C})}catch(E){if(!GGt(E))throw await wue(E,{attemptedAs:r,registry:f,configuration:n,headers:a}),E;I=await pUr(E,{configuration:n});let N={...a,...EGe(I)};try{return await ET.httpUtils.put(`${f}${e}`,t,{configuration:n,headers:N,...C})}catch(B){throw await wue(B,{attemptedAs:r,registry:f,configuration:n,headers:a}),B}}}async function qbl(e,{attemptedAs:t,configuration:r,headers:n,ident:a,authType:o=GH.ALWAYS_AUTH,allowOidc:l,registry:A,otp:f,...I}){A=l7e(r,{ident:a,registry:A});let C=await xGt(A,{authType:o,allowOidc:l,configuration:r,ident:a});C&&(n={...n,authorization:C}),f&&(n={...n,...EGe(f)});try{return await ET.httpUtils.del(A+e,{configuration:r,headers:n,...I})}catch(b){if(!GGt(b)||f)throw await wue(b,{attemptedAs:t,registry:A,configuration:r,headers:n}),b;f=await pUr(b,{configuration:r});let E={...n,...EGe(f)};try{return await ET.httpUtils.del(`${A}${e}`,{configuration:r,headers:E,...I})}catch(N){throw await wue(N,{attemptedAs:t,registry:A,configuration:r,headers:n}),N}}}function l7e(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return AUr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return AUr.normalizeRegistry(r)}async function xGt(e,{authType:t=GH.CONFIGURATION,allowOidc:r=!1,configuration:n,ident:a}){let o=AUr.getAuthConfiguration(e,{configuration:n,ident:a}),l=$bl(o,t);if(!l)return null;let A=await n.reduceHook(f=>f.getNpmAuthenticationHeader,void 0,e,{configuration:n,ident:a});if(A)return A;if(o.get("npmAuthToken"))return`Bearer ${o.get("npmAuthToken")}`;if(o.get("npmAuthIdent")){let f=o.get("npmAuthIdent");return f.includes(":")?`Basic ${Buffer.from(f).toString("base64")}`:`Basic ${f}`}if(r&&a){let f=await tEl(e,{configuration:n,ident:a});if(f)return`Bearer ${f}`}if(l&&t!==GH.BEST_EFFORT)throw new Bue.ReportError(Bue.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function $bl(e,t){switch(t){case GH.CONFIGURATION:return e.get("npmAlwaysAuth");case GH.BEST_EFFORT:case GH.ALWAYS_AUTH:return!0;case GH.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function eEl(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await ET.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function pUr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await ET.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(Bue.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,ET.formatUtils.pretty(t,"$1",ET.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&ET.nodeUtils.openUrl){let{openNow:l}=await(0,Kds.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});l&&(await ET.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(Bue.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` -`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:n}=await(0,Kds.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` -`),n}function GGt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function EGe(e){return{"npm-otp":e}}async function tEl(e,{configuration:t,ident:r}){let n=null;if(process.env.GITLAB_CI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.CIRCLECI)n=process.env.NPM_ID_TOKEN||null;else if(process.env.GITHUB_ACTIONS){if(!(process.env.ACTIONS_ID_TOKEN_REQUEST_URL&&process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN))return null;let a=`npm:${new URL(e).host.replace("registry.yarnpkg.com","registry.npmjs.org").replace("yarn.npmjs.org","registry.npmjs.org")}`,o=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);o.searchParams.append("audience",a),n=(await ET.httpUtils.get(o.href,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).value}if(!n)return null;try{return(await ET.httpUtils.post(`${e}/-/npm/v1/oidc/token/exchange/package${dUr(r)}`,null,{configuration:t,jsonResponse:!0,headers:{Authorization:`Bearer ${n}`}})).token||null}catch{}return null}});var nps=H(FGt=>{"use strict";Object.defineProperty(FGt,"__esModule",{value:!0});FGt.NpmHttpFetcher=void 0;var rps=(Pa(),vi(Va)),vGe=Sn(),rEl=rps.__importDefault(UC()),nEl=yGe(),tps=rps.__importStar(SGe()),fUr=class{supports(t,r){if(!t.reference.startsWith(nEl.PROTOCOL))return!1;let{selector:n,params:a}=vGe.structUtils.parseRange(t.reference);return!(!rEl.default.valid(n)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${vGe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:vGe.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let{params:n}=vGe.structUtils.parseRange(t.reference);if(n===null||typeof n.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await tps.get(n.__archiveUrl,{customErrorMessage:tps.customPackageError,configuration:r.project.configuration,ident:t});return await vGe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:vGe.structUtils.getIdentVendorPath(t),stripComponents:1})}};FGt.NpmHttpFetcher=fUr});var ips=H(LGt=>{"use strict";Object.defineProperty(LGt,"__esModule",{value:!0});LGt.NpmRemapResolver=void 0;var ZGt=Sn(),u7e=yGe(),IUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(u7e.PROTOCOL)||!ZGt.structUtils.tryParseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){let n=r.project.configuration.normalizeDependency(ZGt.structUtils.parseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(n,r)}async getCandidates(t,r,n){let a=n.project.configuration.normalizeDependency(ZGt.structUtils.parseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0));return await n.resolver.getCandidates(a,r,n)}async getSatisfying(t,r,n,a){let o=a.project.configuration.normalizeDependency(ZGt.structUtils.parseDescriptor(t.range.slice(u7e.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,n,a)}resolve(t,r){throw new Error("Unreachable")}};LGt.NpmRemapResolver=IUr});var PGt=H(VGt=>{"use strict";Object.defineProperty(VGt,"__esModule",{value:!0});VGt.NpmSemverFetcher=void 0;var mUr=(Pa(),vi(Va)),g7e=Sn(),sps=Sn(),iEl=mUr.__importDefault(UC()),ops=yGe(),sEl=mUr.__importStar(c0e()),A7e=mUr.__importStar(SGe()),hUr=class e{supports(t,r){if(!t.reference.startsWith(ops.PROTOCOL))return!1;let n=new URL(t.reference);return!(!iEl.default.valid(n.pathname)||n.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${g7e.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:g7e.structUtils.getIdentVendorPath(t),checksum:l}}async fetchFromNetwork(t,r){let n;try{n=await A7e.get(e.getLocatorUrl(t),{customErrorMessage:A7e.customPackageError,configuration:r.project.configuration,ident:t})}catch{n=await A7e.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:A7e.customPackageError,configuration:r.project.configuration,ident:t})}return await g7e.tgzUtils.convertToZip(n,{configuration:r.project.configuration,prefixPath:g7e.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:n}){let a=sEl.getScopeRegistry(t.scope,{configuration:n}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=g7e.semverUtils.clean(t.reference.slice(ops.PROTOCOL.length));if(r===null)throw new sps.ReportError(sps.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${A7e.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};VGt.NpmSemverFetcher=hUr});var ups=H(OGt=>{"use strict";Object.defineProperty(OGt,"__esModule",{value:!0});OGt.NpmSemverResolver=void 0;var lps=(Pa(),vi(Va)),uL=Sn(),BGe=Sn(),oEl=Sn(),l0e=Sn(),aps=lps.__importDefault(UC()),aEl=PGt(),I6=yGe(),cEl=c0e(),cps=lps.__importStar(SGe()),WGt=l0e.structUtils.makeIdent(null,"node-gyp"),lEl=/\b(node-gyp|prebuild-install)\b/,CUr=class{supportsDescriptor(t,r){return t.range.startsWith(I6.PROTOCOL)?!!BGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(I6.PROTOCOL))return!1;let{selector:n}=l0e.structUtils.parseRange(t.reference);return!!aps.default.valid(n)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=BGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(I6.PROTOCOL.length)}`);let o=await cps.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project,version:aps.default.valid(a.raw)?a.raw:void 0}),l=uL.miscUtils.mapAndFilter(Object.keys(o.versions),C=>{try{let b=new BGe.semverUtils.SemVer(C);if(a.test(b))return b}catch{}return uL.miscUtils.mapAndFilter.skip}),A=l.filter(C=>(0,cEl.isPackageApproved)({configuration:n.project.configuration,ident:t,version:C.raw,publishTimes:o.time}));if(l.length>0&&A.length===0)throw new uL.ReportError(uL.MessageName.REMOTE_NOT_FOUND,`All versions satisfying "${t.range.slice(I6.PROTOCOL.length)}" are quarantined`);let f=A.filter(C=>!o.versions[C.raw].deprecated),I=f.length>0?f:A;return I.sort((C,b)=>-C.compare(b)),I.map(C=>{let b=l0e.structUtils.makeLocator(t,`${I6.PROTOCOL}${C.raw}`),E=o.versions[C.raw].dist.tarball;return aEl.NpmSemverFetcher.isConventionalTarballUrl(b,E,{configuration:n.project.configuration})?b:l0e.structUtils.bindLocator(b,{__archiveUrl:E})})}async getSatisfying(t,r,n,a){let o=BGe.semverUtils.validRange(t.range.slice(I6.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(I6.PROTOCOL.length)}`);return{locators:uL.miscUtils.mapAndFilter(n,f=>{if(f.identHash!==t.identHash)return uL.miscUtils.mapAndFilter.skip;let I=l0e.structUtils.tryParseRange(f.reference,{requireProtocol:I6.PROTOCOL});if(!I)return uL.miscUtils.mapAndFilter.skip;let C=new BGe.semverUtils.SemVer(I.selector);return o.test(C)?{locator:f,version:C}:uL.miscUtils.mapAndFilter.skip}).sort((f,I)=>-f.version.compare(I.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:n}=l0e.structUtils.parseRange(t.reference),a=BGe.semverUtils.clean(n);if(a===null)throw new uL.ReportError(uL.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await cps.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new uL.ReportError(uL.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new uL.ReportError(uL.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let l=new uL.Manifest;if(l.load(o.versions[a]),!l.dependencies.has(WGt.identHash)&&!l.peerDependencies.has(WGt.identHash)){for(let A of l.scripts.values())if(A.match(lEl)){l.dependencies.set(WGt.identHash,l0e.structUtils.makeDescriptor(WGt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:oEl.LinkType.HARD,conditions:l.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(l.dependencies),peerDependencies:l.peerDependencies,dependenciesMeta:l.dependenciesMeta,peerDependenciesMeta:l.peerDependenciesMeta,bin:l.bin}}};OGt.NpmSemverResolver=CUr});var dps=H(MGt=>{"use strict";Object.defineProperty(MGt,"__esModule",{value:!0});MGt.NpmTagResolver=void 0;var Aps=(Pa(),vi(Va)),u0e=Sn(),d7e=Sn(),_Ur=Aps.__importDefault(UC()),uEl=PGt(),wGe=yGe(),gps=c0e(),gEl=Aps.__importStar(SGe()),yUr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(wGe.PROTOCOL)||!u0e.TAG_REGEXP.test(t.range.slice(wGe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,n){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,n){let a=t.range.slice(wGe.PROTOCOL.length),o=await gEl.getPackageMetadata(t,{cache:n.fetchOptions?.cache,project:n.project});if(!Object.hasOwn(o,"dist-tags"))throw new u0e.ReportError(u0e.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let l=o["dist-tags"];if(!Object.hasOwn(l,a))throw new u0e.ReportError(u0e.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let A=Object.keys(o.versions),f=o.time,I=l[a];if(a==="latest"&&!(0,gps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:I,publishTimes:f})){let E=I.includes("-"),N=_Ur.default.rsort(A).find(B=>_Ur.default.lt(B,I)&&(E||!B.includes("-"))&&(0,gps.isPackageApproved)({configuration:n.project.configuration,ident:t,version:B,publishTimes:f}));if(!N)throw new u0e.ReportError(u0e.MessageName.REMOTE_NOT_FOUND,`The version for tag "${a}" is quarantined, and no lower version is available`);I=N}let C=d7e.structUtils.makeLocator(t,`${wGe.PROTOCOL}${I}`),b=o.versions[I].dist.tarball;return uEl.NpmSemverFetcher.isConventionalTarballUrl(C,b,{configuration:n.project.configuration})?[C]:[d7e.structUtils.bindLocator(C,{__archiveUrl:b})]}async getSatisfying(t,r,n,a){let o=[];for(let l of n){if(l.identHash!==t.identHash)continue;let A=d7e.structUtils.tryParseRange(l.reference,{requireProtocol:wGe.PROTOCOL});if(!(!A||!_Ur.default.valid(A.selector))){if(A.params?.__archiveUrl){let f=d7e.structUtils.makeRange({protocol:wGe.PROTOCOL,selector:A.selector,source:null,params:null}),[I]=await a.resolver.getCandidates(d7e.structUtils.makeDescriptor(t,f),r,a);if(l.reference!==I.reference)continue}o.push(l)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};MGt.NpmTagResolver=yUr});var rF=H(AL=>{"use strict";var AEl=AL&&AL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AL,"__esModule",{value:!0});AL.Minipass=AL.isWritable=AL.isReadable=AL.isStream=void 0;var pps=typeof process=="object"&&process?process:{stdout:null,stderr:null},TUr=wt("node:events"),mps=AEl(wt("node:stream")),dEl=wt("node:string_decoder"),pEl=e=>!!e&&typeof e=="object"&&(e instanceof KGt||e instanceof mps.default||(0,AL.isReadable)(e)||(0,AL.isWritable)(e));AL.isStream=pEl;var fEl=e=>!!e&&typeof e=="object"&&e instanceof TUr.EventEmitter&&typeof e.pipe=="function"&&e.pipe!==mps.default.Writable.prototype.pipe;AL.isReadable=fEl;var IEl=e=>!!e&&typeof e=="object"&&e instanceof TUr.EventEmitter&&typeof e.write=="function"&&typeof e.end=="function";AL.isWritable=IEl;var Yte=Symbol("EOF"),Qte=Symbol("maybeEmitEnd"),Tue=Symbol("emittedEnd"),HGt=Symbol("emittingEnd"),p7e=Symbol("emittedError"),YGt=Symbol("closed"),fps=Symbol("read"),QGt=Symbol("flush"),Ips=Symbol("flushChunk"),$4=Symbol("encoding"),TGe=Symbol("decoder"),yD=Symbol("flowing"),f7e=Symbol("paused"),RGe=Symbol("resume"),bD=Symbol("buffer"),gL=Symbol("pipes"),ED=Symbol("bufferLength"),bUr=Symbol("bufferPush"),XGt=Symbol("bufferShift"),tF=Symbol("objectMode"),gw=Symbol("destroyed"),EUr=Symbol("error"),SUr=Symbol("emitData"),hps=Symbol("emitEnd"),vUr=Symbol("emitEnd2"),h6=Symbol("async"),BUr=Symbol("abort"),JGt=Symbol("aborted"),I7e=Symbol("signal"),g0e=Symbol("dataListeners"),HO=Symbol("discarded"),h7e=e=>Promise.resolve().then(e),hEl=e=>e(),mEl=e=>e==="end"||e==="finish"||e==="prefinish",CEl=e=>e instanceof ArrayBuffer||!!e&&typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,_El=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),UGt=class{src;dest;opts;ondrain;constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[RGe](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},wUr=class extends UGt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},yEl=e=>!!e.objectMode,bEl=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer",KGt=class extends TUr.EventEmitter{[yD]=!1;[f7e]=!1;[gL]=[];[bD]=[];[tF];[$4];[h6];[TGe];[Yte]=!1;[Tue]=!1;[HGt]=!1;[YGt]=!1;[p7e]=null;[ED]=0;[gw]=!1;[I7e];[JGt]=!1;[g0e]=0;[HO]=!1;writable=!0;readable=!0;constructor(...t){let r=t[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");yEl(r)?(this[tF]=!0,this[$4]=null):bEl(r)?(this[$4]=r.encoding,this[tF]=!1):(this[tF]=!1,this[$4]=null),this[h6]=!!r.async,this[TGe]=this[$4]?new dEl.StringDecoder(this[$4]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[bD]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[gL]});let{signal:n}=r;n&&(this[I7e]=n,n.aborted?this[BUr]():n.addEventListener("abort",()=>this[BUr]()))}get bufferLength(){return this[ED]}get encoding(){return this[$4]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tF]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[h6]}set async(t){this[h6]=this[h6]||!!t}[BUr](){this[JGt]=!0,this.emit("abort",this[I7e]?.reason),this.destroy(this[I7e]?.reason)}get aborted(){return this[JGt]}set aborted(t){}write(t,r,n){if(this[JGt])return!1;if(this[Yte])throw new Error("write after end");if(this[gw])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[h6]?h7e:hEl;if(!this[tF]&&!Buffer.isBuffer(t)){if(_El(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(CEl(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tF]?(this[yD]&&this[ED]!==0&&this[QGt](!0),this[yD]?this.emit("data",t):this[bUr](t),this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD]):t.length?(typeof t=="string"&&!(r===this[$4]&&!this[TGe]?.lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[$4]&&(t=this[TGe].write(t)),this[yD]&&this[ED]!==0&&this[QGt](!0),this[yD]?this.emit("data",t):this[bUr](t),this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD]):(this[ED]!==0&&this.emit("readable"),n&&a(n),this[yD])}read(t){if(this[gw])return null;if(this[HO]=!1,this[ED]===0||t===0||t&&t>this[ED])return this[Qte](),null;this[tF]&&(t=null),this[bD].length>1&&!this[tF]&&(this[bD]=[this[$4]?this[bD].join(""):Buffer.concat(this[bD],this[ED])]);let r=this[fps](t||null,this[bD][0]);return this[Qte](),r}[fps](t,r){if(this[tF])this[XGt]();else{let n=r;t===n.length||t===null?this[XGt]():typeof n=="string"?(this[bD][0]=n.slice(t),r=n.slice(0,t),this[ED]-=t):(this[bD][0]=n.subarray(t),r=n.subarray(0,t),this[ED]-=t)}return this.emit("data",r),!this[bD].length&&!this[Yte]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r="utf8"),t!==void 0&&this.write(t,r),n&&this.once("end",n),this[Yte]=!0,this.writable=!1,(this[yD]||!this[f7e])&&this[Qte](),this}[RGe](){this[gw]||(!this[g0e]&&!this[gL].length&&(this[HO]=!0),this[f7e]=!1,this[yD]=!0,this.emit("resume"),this[bD].length?this[QGt]():this[Yte]?this[Qte]():this.emit("drain"))}resume(){return this[RGe]()}pause(){this[yD]=!1,this[f7e]=!0,this[HO]=!1}get destroyed(){return this[gw]}get flowing(){return this[yD]}get paused(){return this[f7e]}[bUr](t){this[tF]?this[ED]+=1:this[ED]+=t.length,this[bD].push(t)}[XGt](){return this[tF]?this[ED]-=1:this[ED]-=this[bD][0].length,this[bD].shift()}[QGt](t=!1){do;while(this[Ips](this[XGt]())&&this[bD].length);!t&&!this[bD].length&&!this[Yte]&&this.emit("drain")}[Ips](t){return this.emit("data",t),this[yD]}pipe(t,r){if(this[gw])return t;this[HO]=!1;let n=this[Tue];return r=r||{},t===pps.stdout||t===pps.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this[gL].push(r.proxyErrors?new wUr(this,t,r):new UGt(this,t,r)),this[h6]?h7e(()=>this[RGe]()):this[RGe]()),t}unpipe(t){let r=this[gL].find(n=>n.dest===t);r&&(this[gL].length===1?(this[yD]&&this[g0e]===0&&(this[yD]=!1),this[gL]=[]):this[gL].splice(this[gL].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);if(t==="data")this[HO]=!1,this[g0e]++,!this[gL].length&&!this[yD]&&this[RGe]();else if(t==="readable"&&this[ED]!==0)super.emit("readable");else if(mEl(t)&&this[Tue])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[p7e]){let a=r;this[h6]?h7e(()=>a.call(this,this[p7e])):a.call(this,this[p7e])}return n}removeListener(t,r){return this.off(t,r)}off(t,r){let n=super.off(t,r);return t==="data"&&(this[g0e]=this.listeners("data").length,this[g0e]===0&&!this[HO]&&!this[gL].length&&(this[yD]=!1)),n}removeAllListeners(t){let r=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[g0e]=0,!this[HO]&&!this[gL].length&&(this[yD]=!1)),r}get emittedEnd(){return this[Tue]}[Qte](){!this[HGt]&&!this[Tue]&&!this[gw]&&this[bD].length===0&&this[Yte]&&(this[HGt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[YGt]&&this.emit("close"),this[HGt]=!1)}emit(t,...r){let n=r[0];if(t!=="error"&&t!=="close"&&t!==gw&&this[gw])return!1;if(t==="data")return!this[tF]&&!n?!1:this[h6]?(h7e(()=>this[SUr](n)),!0):this[SUr](n);if(t==="end")return this[hps]();if(t==="close"){if(this[YGt]=!0,!this[Tue]&&!this[gw])return!1;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[p7e]=n,super.emit(EUr,n);let o=!this[I7e]||this.listeners("error").length?super.emit("error",n):!1;return this[Qte](),o}else if(t==="resume"){let o=super.emit("resume");return this[Qte](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,...r);return this[Qte](),a}[SUr](t){for(let n of this[gL])n.dest.write(t)===!1&&this.pause();let r=this[HO]?!1:super.emit("data",t);return this[Qte](),r}[hps](){return this[Tue]?!1:(this[Tue]=!0,this.readable=!1,this[h6]?(h7e(()=>this[vUr]()),!0):this[vUr]())}[vUr](){if(this[TGe]){let r=this[TGe].end();if(r){for(let n of this[gL])n.dest.write(r);this[HO]||super.emit("data",r)}}for(let r of this[gL])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[tF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[tF]||(t.dataLength+=n.length)}),await r,t}async concat(){if(this[tF])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[$4]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,r)=>{this.on(gw,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[HO]=!1;let t=!1,r=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[Yte])return r();let o,l,A=b=>{this.off("data",f),this.off("end",I),this.off(gw,C),r(),l(b)},f=b=>{this.off("error",A),this.off("end",I),this.off(gw,C),this.pause(),o({value:b,done:!!this[Yte]})},I=()=>{this.off("error",A),this.off("data",f),this.off(gw,C),r(),o({done:!0,value:void 0})},C=()=>A(new Error("stream destroyed"));return new Promise((b,E)=>{l=E,o=b,this.once(gw,C),this.once("error",A),this.once("end",I),this.once("data",f)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[HO]=!1;let t=!1,r=()=>(this.pause(),this.off(EUr,r),this.off(gw,r),this.off("end",r),t=!0,{done:!0,value:void 0}),n=()=>{if(t)return r();let a=this.read();return a===null?r():{done:!1,value:a}};return this.once("end",r),this.once(EUr,r),this.once(gw,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(t){if(this[gw])return t?this.emit("error",t):this.emit(gw),this;this[gw]=!0,this[HO]=!0,this[bD].length=0,this[ED]=0;let r=this;return typeof r.close=="function"&&!this[YGt]&&r.close(),t?this.emit("error",t):this.emit(gw),this}static get isStream(){return AL.isStream}};AL.Minipass=KGt});var Jte=H((eng,m6)=>{"use strict";var C7e=wt("crypto"),{Minipass:EEl}=rF(),NUr=["sha512","sha384","sha256"],kUr=["sha512"],SEl=/^[a-z0-9+/]+(?:=?=?)$/i,vEl=/^([a-z0-9]+)-([^?]+)([?\S*]*)$/,BEl=/^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,wEl=/^[\x21-\x7E]+$/,_7e=e=>e?.length?`?${e.join("?")}`:"",DUr=class extends EEl{#e;#t;#n;constructor(t){super(),this.size=0,this.opts=t,this.#r(),t?.algorithms?this.algorithms=[...t.algorithms]:this.algorithms=[...kUr],this.algorithm!==null&&!this.algorithms.includes(this.algorithm)&&this.algorithms.push(this.algorithm),this.hashes=this.algorithms.map(C7e.createHash)}#r(){this.sri=this.opts?.integrity?YO(this.opts?.integrity,this.opts):null,this.expectedSize=this.opts?.size,this.sri?this.sri.isHash?(this.goodSri=!0,this.algorithm=this.sri.algorithm):(this.goodSri=!this.sri.isEmpty(),this.algorithm=this.sri.pickAlgorithm(this.opts)):this.algorithm=null,this.digests=this.goodSri?this.sri[this.algorithm]:null,this.optString=_7e(this.opts?.options)}on(t,r){return t==="size"&&this.#t?r(this.#t):t==="integrity"&&this.#e?r(this.#e):t==="verified"&&this.#n?r(this.#n):super.on(t,r)}emit(t,r){return t==="end"&&this.#i(),super.emit(t,r)}write(t){return this.size+=t.length,this.hashes.forEach(r=>r.update(t)),super.write(t)}#i(){this.goodSri||this.#r();let t=YO(this.hashes.map((n,a)=>`${this.algorithms[a]}-${n.digest("base64")}${this.optString}`).join(" "),this.opts),r=this.goodSri&&t.match(this.sri,this.opts);if(typeof this.expectedSize=="number"&&this.size!==this.expectedSize){let n=new Error(`stream size mismatch when checking ${this.sri}. - Wanted: ${this.expectedSize} - Found: ${this.size}`);n.code="EBADSIZE",n.found=this.size,n.expected=this.expectedSize,n.sri=this.sri,this.emit("error",n)}else if(this.sri&&!r){let n=new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${t}. (${this.size} bytes)`);n.code="EINTEGRITY",n.found=t,n.expected=this.digests,n.algorithm=this.algorithm,n.sri=this.sri,this.emit("error",n)}else this.#t=this.size,this.emit("size",this.size),this.#e=t,this.emit("integrity",t),r&&(this.#n=r,this.emit("verified",r))}},Xte=class{get isHash(){return!0}constructor(t,r){let n=r?.strict;this.source=t.trim(),this.digest="",this.algorithm="",this.options=[];let a=this.source.match(n?BEl:vEl);if(!a||n&&!NUr.includes(a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];o&&(this.options=o.slice(1).split("?"))}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}match(t,r){let n=YO(t,r);if(!n)return!1;if(n.isIntegrity){let a=n.pickAlgorithm(r,[this.algorithm]);if(!a)return!1;let o=n[a].find(l=>l.digest===this.digest);return o||!1}return n.digest===this.digest?n:!1}toString(t){return t?.strict&&!(NUr.includes(this.algorithm)&&this.digest.match(SEl)&&this.options.every(r=>r.match(wEl)))?"":`${this.algorithm}-${this.digest}${_7e(this.options)}`}};function Cps(e,t,r,n){let a=e!=="",o=!1,l="",A=n.length-1;for(let I=0;In[a].find(l=>o.digest===l.digest)))throw new Error("hashes do not match, cannot update integrity")}else this[a]=n[a]}match(t,r){let n=YO(t,r);if(!n)return!1;let a=n.pickAlgorithm(r,Object.keys(this));return!!a&&this[a]&&n[a]&&this[a].find(o=>n[a].find(l=>o.digest===l.digest))||!1}pickAlgorithm(t,r){let n=t?.pickAlgorithm||FEl,a=Object.keys(this).filter(o=>r?.length?r.includes(o):!0);return a.length?a.reduce((o,l)=>n(o,l)||o):null}};m6.exports.parse=YO;function YO(e,t){if(!e)return null;if(typeof e=="string")return RUr(e,t);if(e.algorithm&&e.digest){let r=new A0e;return r[e.algorithm]=[e],RUr(m7e(r,t),t)}else return RUr(m7e(e,t),t)}function RUr(e,t){if(t?.single)return new Xte(e,t);let r=e.trim().split(/\s+/).reduce((n,a)=>{let o=new Xte(a,t);if(o.algorithm&&o.digest){let l=o.algorithm;n[l]||(n[l]=[]),n[l].push(o)}return n},new A0e);return r.isEmpty()?null:r}m6.exports.stringify=m7e;function m7e(e,t){return e.algorithm&&e.digest?Xte.prototype.toString.call(e,t):typeof e=="string"?m7e(YO(e,t),t):A0e.prototype.toString.call(e,t)}m6.exports.fromHex=TEl;function TEl(e,t,r){let n=_7e(r?.options);return YO(`${t}-${Buffer.from(e,"hex").toString("base64")}${n}`,r)}m6.exports.fromData=REl;function REl(e,t){let r=t?.algorithms||[...kUr],n=_7e(t?.options);return r.reduce((a,o)=>{let l=C7e.createHash(o).update(e).digest("base64"),A=new Xte(`${o}-${l}${n}`,t);if(A.algorithm&&A.digest){let f=A.algorithm;a[f]||(a[f]=[]),a[f].push(A)}return a},new A0e)}m6.exports.fromStream=NEl;function NEl(e,t){let r=xUr(t);return new Promise((n,a)=>{e.pipe(r),e.on("error",a),r.on("error",a);let o;r.on("integrity",l=>{o=l}),r.on("end",()=>n(o)),r.resume()})}m6.exports.checkData=DEl;function DEl(e,t,r){if(t=YO(t,r),!t||!Object.keys(t).length){if(r?.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let n=t.pickAlgorithm(r),a=C7e.createHash(n).update(e).digest("base64"),o=YO({algorithm:n,digest:a}),l=o.match(t,r);if(r=r||{},l||!r.error)return l;if(typeof r.size=="number"&&e.length!==r.size){let A=new Error(`data size mismatch when checking ${t}. - Wanted: ${r.size} - Found: ${e.length}`);throw A.code="EBADSIZE",A.found=e.length,A.expected=r.size,A.sri=t,A}else{let A=new Error(`Integrity checksum failed when using ${n}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw A.code="EINTEGRITY",A.found=o,A.expected=t,A.algorithm=n,A.sri=t,A}}m6.exports.checkStream=kEl;function kEl(e,t,r){if(r=r||Object.create(null),r.integrity=t,t=YO(t,r),!t||!Object.keys(t).length)return Promise.reject(Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"}));let n=xUr(r);return new Promise((a,o)=>{e.pipe(n),e.on("error",o),n.on("error",o);let l;n.on("verified",A=>{l=A}),n.on("end",()=>a(l)),n.resume()})}m6.exports.integrityStream=xUr;function xUr(e=Object.create(null)){return new DUr(e)}m6.exports.create=xEl;function xEl(e){let t=e?.algorithms||[...kUr],r=_7e(e?.options),n=t.map(C7e.createHash);return{update:function(a,o){return n.forEach(l=>l.update(a,o)),this},digest:function(){return t.reduce((o,l)=>{let A=n.shift().digest("base64"),f=new Xte(`${l}-${A}${r}`,e);if(f.algorithm&&f.digest){let I=f.algorithm;o[I]||(o[I]=[]),o[I].push(f)}return o},new A0e)}}}var GEl=C7e.getHashes(),_ps=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>GEl.includes(e));function FEl(e,t){return _ps.indexOf(e.toLowerCase())>=_ps.indexOf(t.toLowerCase())?e:t}});var GUr=H(Rue=>{"use strict";Object.defineProperty(Rue,"__esModule",{value:!0});Rue.Signature=Rue.Envelope=void 0;Rue.Envelope={fromJSON(e){return{payload:jGt(e.payload)?Buffer.from(yps(e.payload)):Buffer.alloc(0),payloadType:jGt(e.payloadType)?globalThis.String(e.payloadType):"",signatures:globalThis.Array.isArray(e?.signatures)?e.signatures.map(t=>Rue.Signature.fromJSON(t)):[]}},toJSON(e){let t={};return e.payload.length!==0&&(t.payload=bps(e.payload)),e.payloadType!==""&&(t.payloadType=e.payloadType),e.signatures?.length&&(t.signatures=e.signatures.map(r=>Rue.Signature.toJSON(r))),t}};Rue.Signature={fromJSON(e){return{sig:jGt(e.sig)?Buffer.from(yps(e.sig)):Buffer.alloc(0),keyid:jGt(e.keyid)?globalThis.String(e.keyid):""}},toJSON(e){let t={};return e.sig.length!==0&&(t.sig=bps(e.sig)),e.keyid!==""&&(t.keyid=e.keyid),t}};function yps(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function bps(e){return globalThis.Buffer.from(e).toString("base64")}function jGt(e){return e!=null}});var Sps=H(zGt=>{"use strict";Object.defineProperty(zGt,"__esModule",{value:!0});zGt.Timestamp=void 0;zGt.Timestamp={fromJSON(e){return{seconds:Eps(e.seconds)?globalThis.String(e.seconds):"0",nanos:Eps(e.nanos)?globalThis.Number(e.nanos):0}},toJSON(e){let t={};return e.seconds!=="0"&&(t.seconds=e.seconds),e.nanos!==0&&(t.nanos=Math.round(e.nanos)),t}};function Eps(e){return e!=null}});var NGe=H(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});Vf.TimeRange=Vf.X509CertificateChain=Vf.SubjectAlternativeName=Vf.X509Certificate=Vf.DistinguishedName=Vf.ObjectIdentifierValuePair=Vf.ObjectIdentifier=Vf.PublicKeyIdentifier=Vf.PublicKey=Vf.RFC3161SignedTimestamp=Vf.LogId=Vf.MessageSignature=Vf.HashOutput=Vf.SubjectAlternativeNameType=Vf.PublicKeyDetails=Vf.HashAlgorithm=void 0;Vf.hashAlgorithmFromJSON=Bps;Vf.hashAlgorithmToJSON=wps;Vf.publicKeyDetailsFromJSON=Tps;Vf.publicKeyDetailsToJSON=Rps;Vf.subjectAlternativeNameTypeFromJSON=Nps;Vf.subjectAlternativeNameTypeToJSON=Dps;var ZEl=Sps(),UV;(function(e){e[e.HASH_ALGORITHM_UNSPECIFIED=0]="HASH_ALGORITHM_UNSPECIFIED",e[e.SHA2_256=1]="SHA2_256",e[e.SHA2_384=2]="SHA2_384",e[e.SHA2_512=3]="SHA2_512",e[e.SHA3_256=4]="SHA3_256",e[e.SHA3_384=5]="SHA3_384"})(UV||(Vf.HashAlgorithm=UV={}));function Bps(e){switch(e){case 0:case"HASH_ALGORITHM_UNSPECIFIED":return UV.HASH_ALGORITHM_UNSPECIFIED;case 1:case"SHA2_256":return UV.SHA2_256;case 2:case"SHA2_384":return UV.SHA2_384;case 3:case"SHA2_512":return UV.SHA2_512;case 4:case"SHA3_256":return UV.SHA3_256;case 5:case"SHA3_384":return UV.SHA3_384;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}function wps(e){switch(e){case UV.HASH_ALGORITHM_UNSPECIFIED:return"HASH_ALGORITHM_UNSPECIFIED";case UV.SHA2_256:return"SHA2_256";case UV.SHA2_384:return"SHA2_384";case UV.SHA2_512:return"SHA2_512";case UV.SHA3_256:return"SHA3_256";case UV.SHA3_384:return"SHA3_384";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum HashAlgorithm")}}var Lf;(function(e){e[e.PUBLIC_KEY_DETAILS_UNSPECIFIED=0]="PUBLIC_KEY_DETAILS_UNSPECIFIED",e[e.PKCS1_RSA_PKCS1V5=1]="PKCS1_RSA_PKCS1V5",e[e.PKCS1_RSA_PSS=2]="PKCS1_RSA_PSS",e[e.PKIX_RSA_PKCS1V5=3]="PKIX_RSA_PKCS1V5",e[e.PKIX_RSA_PSS=4]="PKIX_RSA_PSS",e[e.PKIX_RSA_PKCS1V15_2048_SHA256=9]="PKIX_RSA_PKCS1V15_2048_SHA256",e[e.PKIX_RSA_PKCS1V15_3072_SHA256=10]="PKIX_RSA_PKCS1V15_3072_SHA256",e[e.PKIX_RSA_PKCS1V15_4096_SHA256=11]="PKIX_RSA_PKCS1V15_4096_SHA256",e[e.PKIX_RSA_PSS_2048_SHA256=16]="PKIX_RSA_PSS_2048_SHA256",e[e.PKIX_RSA_PSS_3072_SHA256=17]="PKIX_RSA_PSS_3072_SHA256",e[e.PKIX_RSA_PSS_4096_SHA256=18]="PKIX_RSA_PSS_4096_SHA256",e[e.PKIX_ECDSA_P256_HMAC_SHA_256=6]="PKIX_ECDSA_P256_HMAC_SHA_256",e[e.PKIX_ECDSA_P256_SHA_256=5]="PKIX_ECDSA_P256_SHA_256",e[e.PKIX_ECDSA_P384_SHA_384=12]="PKIX_ECDSA_P384_SHA_384",e[e.PKIX_ECDSA_P521_SHA_512=13]="PKIX_ECDSA_P521_SHA_512",e[e.PKIX_ED25519=7]="PKIX_ED25519",e[e.PKIX_ED25519_PH=8]="PKIX_ED25519_PH",e[e.PKIX_ECDSA_P384_SHA_256=19]="PKIX_ECDSA_P384_SHA_256",e[e.PKIX_ECDSA_P521_SHA_256=20]="PKIX_ECDSA_P521_SHA_256",e[e.LMS_SHA256=14]="LMS_SHA256",e[e.LMOTS_SHA256=15]="LMOTS_SHA256",e[e.ML_DSA_65=21]="ML_DSA_65",e[e.ML_DSA_87=22]="ML_DSA_87"})(Lf||(Vf.PublicKeyDetails=Lf={}));function Tps(e){switch(e){case 0:case"PUBLIC_KEY_DETAILS_UNSPECIFIED":return Lf.PUBLIC_KEY_DETAILS_UNSPECIFIED;case 1:case"PKCS1_RSA_PKCS1V5":return Lf.PKCS1_RSA_PKCS1V5;case 2:case"PKCS1_RSA_PSS":return Lf.PKCS1_RSA_PSS;case 3:case"PKIX_RSA_PKCS1V5":return Lf.PKIX_RSA_PKCS1V5;case 4:case"PKIX_RSA_PSS":return Lf.PKIX_RSA_PSS;case 9:case"PKIX_RSA_PKCS1V15_2048_SHA256":return Lf.PKIX_RSA_PKCS1V15_2048_SHA256;case 10:case"PKIX_RSA_PKCS1V15_3072_SHA256":return Lf.PKIX_RSA_PKCS1V15_3072_SHA256;case 11:case"PKIX_RSA_PKCS1V15_4096_SHA256":return Lf.PKIX_RSA_PKCS1V15_4096_SHA256;case 16:case"PKIX_RSA_PSS_2048_SHA256":return Lf.PKIX_RSA_PSS_2048_SHA256;case 17:case"PKIX_RSA_PSS_3072_SHA256":return Lf.PKIX_RSA_PSS_3072_SHA256;case 18:case"PKIX_RSA_PSS_4096_SHA256":return Lf.PKIX_RSA_PSS_4096_SHA256;case 6:case"PKIX_ECDSA_P256_HMAC_SHA_256":return Lf.PKIX_ECDSA_P256_HMAC_SHA_256;case 5:case"PKIX_ECDSA_P256_SHA_256":return Lf.PKIX_ECDSA_P256_SHA_256;case 12:case"PKIX_ECDSA_P384_SHA_384":return Lf.PKIX_ECDSA_P384_SHA_384;case 13:case"PKIX_ECDSA_P521_SHA_512":return Lf.PKIX_ECDSA_P521_SHA_512;case 7:case"PKIX_ED25519":return Lf.PKIX_ED25519;case 8:case"PKIX_ED25519_PH":return Lf.PKIX_ED25519_PH;case 19:case"PKIX_ECDSA_P384_SHA_256":return Lf.PKIX_ECDSA_P384_SHA_256;case 20:case"PKIX_ECDSA_P521_SHA_256":return Lf.PKIX_ECDSA_P521_SHA_256;case 14:case"LMS_SHA256":return Lf.LMS_SHA256;case 15:case"LMOTS_SHA256":return Lf.LMOTS_SHA256;case 21:case"ML_DSA_65":return Lf.ML_DSA_65;case 22:case"ML_DSA_87":return Lf.ML_DSA_87;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}function Rps(e){switch(e){case Lf.PUBLIC_KEY_DETAILS_UNSPECIFIED:return"PUBLIC_KEY_DETAILS_UNSPECIFIED";case Lf.PKCS1_RSA_PKCS1V5:return"PKCS1_RSA_PKCS1V5";case Lf.PKCS1_RSA_PSS:return"PKCS1_RSA_PSS";case Lf.PKIX_RSA_PKCS1V5:return"PKIX_RSA_PKCS1V5";case Lf.PKIX_RSA_PSS:return"PKIX_RSA_PSS";case Lf.PKIX_RSA_PKCS1V15_2048_SHA256:return"PKIX_RSA_PKCS1V15_2048_SHA256";case Lf.PKIX_RSA_PKCS1V15_3072_SHA256:return"PKIX_RSA_PKCS1V15_3072_SHA256";case Lf.PKIX_RSA_PKCS1V15_4096_SHA256:return"PKIX_RSA_PKCS1V15_4096_SHA256";case Lf.PKIX_RSA_PSS_2048_SHA256:return"PKIX_RSA_PSS_2048_SHA256";case Lf.PKIX_RSA_PSS_3072_SHA256:return"PKIX_RSA_PSS_3072_SHA256";case Lf.PKIX_RSA_PSS_4096_SHA256:return"PKIX_RSA_PSS_4096_SHA256";case Lf.PKIX_ECDSA_P256_HMAC_SHA_256:return"PKIX_ECDSA_P256_HMAC_SHA_256";case Lf.PKIX_ECDSA_P256_SHA_256:return"PKIX_ECDSA_P256_SHA_256";case Lf.PKIX_ECDSA_P384_SHA_384:return"PKIX_ECDSA_P384_SHA_384";case Lf.PKIX_ECDSA_P521_SHA_512:return"PKIX_ECDSA_P521_SHA_512";case Lf.PKIX_ED25519:return"PKIX_ED25519";case Lf.PKIX_ED25519_PH:return"PKIX_ED25519_PH";case Lf.PKIX_ECDSA_P384_SHA_256:return"PKIX_ECDSA_P384_SHA_256";case Lf.PKIX_ECDSA_P521_SHA_256:return"PKIX_ECDSA_P521_SHA_256";case Lf.LMS_SHA256:return"LMS_SHA256";case Lf.LMOTS_SHA256:return"LMOTS_SHA256";case Lf.ML_DSA_65:return"ML_DSA_65";case Lf.ML_DSA_87:return"ML_DSA_87";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum PublicKeyDetails")}}var C6;(function(e){e[e.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED=0]="SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED",e[e.EMAIL=1]="EMAIL",e[e.URI=2]="URI",e[e.OTHER_NAME=3]="OTHER_NAME"})(C6||(Vf.SubjectAlternativeNameType=C6={}));function Nps(e){switch(e){case 0:case"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED":return C6.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED;case 1:case"EMAIL":return C6.EMAIL;case 2:case"URI":return C6.URI;case 3:case"OTHER_NAME":return C6.OTHER_NAME;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}function Dps(e){switch(e){case C6.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED:return"SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";case C6.EMAIL:return"EMAIL";case C6.URI:return"URI";case C6.OTHER_NAME:return"OTHER_NAME";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum SubjectAlternativeNameType")}}Vf.HashOutput={fromJSON(e){return{algorithm:ST(e.algorithm)?Bps(e.algorithm):0,digest:ST(e.digest)?Buffer.from(d0e(e.digest)):Buffer.alloc(0)}},toJSON(e){let t={};return e.algorithm!==0&&(t.algorithm=wps(e.algorithm)),e.digest.length!==0&&(t.digest=p0e(e.digest)),t}};Vf.MessageSignature={fromJSON(e){return{messageDigest:ST(e.messageDigest)?Vf.HashOutput.fromJSON(e.messageDigest):void 0,signature:ST(e.signature)?Buffer.from(d0e(e.signature)):Buffer.alloc(0)}},toJSON(e){let t={};return e.messageDigest!==void 0&&(t.messageDigest=Vf.HashOutput.toJSON(e.messageDigest)),e.signature.length!==0&&(t.signature=p0e(e.signature)),t}};Vf.LogId={fromJSON(e){return{keyId:ST(e.keyId)?Buffer.from(d0e(e.keyId)):Buffer.alloc(0)}},toJSON(e){let t={};return e.keyId.length!==0&&(t.keyId=p0e(e.keyId)),t}};Vf.RFC3161SignedTimestamp={fromJSON(e){return{signedTimestamp:ST(e.signedTimestamp)?Buffer.from(d0e(e.signedTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedTimestamp.length!==0&&(t.signedTimestamp=p0e(e.signedTimestamp)),t}};Vf.PublicKey={fromJSON(e){return{rawBytes:ST(e.rawBytes)?Buffer.from(d0e(e.rawBytes)):void 0,keyDetails:ST(e.keyDetails)?Tps(e.keyDetails):0,validFor:ST(e.validFor)?Vf.TimeRange.fromJSON(e.validFor):void 0}},toJSON(e){let t={};return e.rawBytes!==void 0&&(t.rawBytes=p0e(e.rawBytes)),e.keyDetails!==0&&(t.keyDetails=Rps(e.keyDetails)),e.validFor!==void 0&&(t.validFor=Vf.TimeRange.toJSON(e.validFor)),t}};Vf.PublicKeyIdentifier={fromJSON(e){return{hint:ST(e.hint)?globalThis.String(e.hint):""}},toJSON(e){let t={};return e.hint!==""&&(t.hint=e.hint),t}};Vf.ObjectIdentifier={fromJSON(e){return{id:globalThis.Array.isArray(e?.id)?e.id.map(t=>globalThis.Number(t)):[]}},toJSON(e){let t={};return e.id?.length&&(t.id=e.id.map(r=>Math.round(r))),t}};Vf.ObjectIdentifierValuePair={fromJSON(e){return{oid:ST(e.oid)?Vf.ObjectIdentifier.fromJSON(e.oid):void 0,value:ST(e.value)?Buffer.from(d0e(e.value)):Buffer.alloc(0)}},toJSON(e){let t={};return e.oid!==void 0&&(t.oid=Vf.ObjectIdentifier.toJSON(e.oid)),e.value.length!==0&&(t.value=p0e(e.value)),t}};Vf.DistinguishedName={fromJSON(e){return{organization:ST(e.organization)?globalThis.String(e.organization):"",commonName:ST(e.commonName)?globalThis.String(e.commonName):""}},toJSON(e){let t={};return e.organization!==""&&(t.organization=e.organization),e.commonName!==""&&(t.commonName=e.commonName),t}};Vf.X509Certificate={fromJSON(e){return{rawBytes:ST(e.rawBytes)?Buffer.from(d0e(e.rawBytes)):Buffer.alloc(0)}},toJSON(e){let t={};return e.rawBytes.length!==0&&(t.rawBytes=p0e(e.rawBytes)),t}};Vf.SubjectAlternativeName={fromJSON(e){return{type:ST(e.type)?Nps(e.type):0,identity:ST(e.regexp)?{$case:"regexp",regexp:globalThis.String(e.regexp)}:ST(e.value)?{$case:"value",value:globalThis.String(e.value)}:void 0}},toJSON(e){let t={};return e.type!==0&&(t.type=Dps(e.type)),e.identity?.$case==="regexp"?t.regexp=e.identity.regexp:e.identity?.$case==="value"&&(t.value=e.identity.value),t}};Vf.X509CertificateChain={fromJSON(e){return{certificates:globalThis.Array.isArray(e?.certificates)?e.certificates.map(t=>Vf.X509Certificate.fromJSON(t)):[]}},toJSON(e){let t={};return e.certificates?.length&&(t.certificates=e.certificates.map(r=>Vf.X509Certificate.toJSON(r))),t}};Vf.TimeRange={fromJSON(e){return{start:ST(e.start)?vps(e.start):void 0,end:ST(e.end)?vps(e.end):void 0}},toJSON(e){let t={};return e.start!==void 0&&(t.start=e.start.toISOString()),e.end!==void 0&&(t.end=e.end.toISOString()),t}};function d0e(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function p0e(e){return globalThis.Buffer.from(e).toString("base64")}function LEl(e){let t=(globalThis.Number(e.seconds)||0)*1e3;return t+=(e.nanos||0)/1e6,new globalThis.Date(t)}function vps(e){return e instanceof globalThis.Date?e:typeof e=="string"?new globalThis.Date(e):LEl(ZEl.Timestamp.fromJSON(e))}function ST(e){return e!=null}});var FUr=H(vT=>{"use strict";Object.defineProperty(vT,"__esModule",{value:!0});vT.TransparencyLogEntry=vT.InclusionPromise=vT.InclusionProof=vT.Checkpoint=vT.KindVersion=void 0;var kps=NGe();vT.KindVersion={fromJSON(e){return{kind:dL(e.kind)?globalThis.String(e.kind):"",version:dL(e.version)?globalThis.String(e.version):""}},toJSON(e){let t={};return e.kind!==""&&(t.kind=e.kind),e.version!==""&&(t.version=e.version),t}};vT.Checkpoint={fromJSON(e){return{envelope:dL(e.envelope)?globalThis.String(e.envelope):""}},toJSON(e){let t={};return e.envelope!==""&&(t.envelope=e.envelope),t}};vT.InclusionProof={fromJSON(e){return{logIndex:dL(e.logIndex)?globalThis.String(e.logIndex):"0",rootHash:dL(e.rootHash)?Buffer.from(qGt(e.rootHash)):Buffer.alloc(0),treeSize:dL(e.treeSize)?globalThis.String(e.treeSize):"0",hashes:globalThis.Array.isArray(e?.hashes)?e.hashes.map(t=>Buffer.from(qGt(t))):[],checkpoint:dL(e.checkpoint)?vT.Checkpoint.fromJSON(e.checkpoint):void 0}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.rootHash.length!==0&&(t.rootHash=$Gt(e.rootHash)),e.treeSize!=="0"&&(t.treeSize=e.treeSize),e.hashes?.length&&(t.hashes=e.hashes.map(r=>$Gt(r))),e.checkpoint!==void 0&&(t.checkpoint=vT.Checkpoint.toJSON(e.checkpoint)),t}};vT.InclusionPromise={fromJSON(e){return{signedEntryTimestamp:dL(e.signedEntryTimestamp)?Buffer.from(qGt(e.signedEntryTimestamp)):Buffer.alloc(0)}},toJSON(e){let t={};return e.signedEntryTimestamp.length!==0&&(t.signedEntryTimestamp=$Gt(e.signedEntryTimestamp)),t}};vT.TransparencyLogEntry={fromJSON(e){return{logIndex:dL(e.logIndex)?globalThis.String(e.logIndex):"0",logId:dL(e.logId)?kps.LogId.fromJSON(e.logId):void 0,kindVersion:dL(e.kindVersion)?vT.KindVersion.fromJSON(e.kindVersion):void 0,integratedTime:dL(e.integratedTime)?globalThis.String(e.integratedTime):"0",inclusionPromise:dL(e.inclusionPromise)?vT.InclusionPromise.fromJSON(e.inclusionPromise):void 0,inclusionProof:dL(e.inclusionProof)?vT.InclusionProof.fromJSON(e.inclusionProof):void 0,canonicalizedBody:dL(e.canonicalizedBody)?Buffer.from(qGt(e.canonicalizedBody)):Buffer.alloc(0)}},toJSON(e){let t={};return e.logIndex!=="0"&&(t.logIndex=e.logIndex),e.logId!==void 0&&(t.logId=kps.LogId.toJSON(e.logId)),e.kindVersion!==void 0&&(t.kindVersion=vT.KindVersion.toJSON(e.kindVersion)),e.integratedTime!=="0"&&(t.integratedTime=e.integratedTime),e.inclusionPromise!==void 0&&(t.inclusionPromise=vT.InclusionPromise.toJSON(e.inclusionPromise)),e.inclusionProof!==void 0&&(t.inclusionProof=vT.InclusionProof.toJSON(e.inclusionProof)),e.canonicalizedBody.length!==0&&(t.canonicalizedBody=$Gt(e.canonicalizedBody)),t}};function qGt(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function $Gt(e){return globalThis.Buffer.from(e).toString("base64")}function dL(e){return e!=null}});var ZUr=H(ZH=>{"use strict";Object.defineProperty(ZH,"__esModule",{value:!0});ZH.Bundle=ZH.VerificationMaterial=ZH.TimestampVerificationData=void 0;var xps=GUr(),_6=NGe(),Gps=FUr();ZH.TimestampVerificationData={fromJSON(e){return{rfc3161Timestamps:globalThis.Array.isArray(e?.rfc3161Timestamps)?e.rfc3161Timestamps.map(t=>_6.RFC3161SignedTimestamp.fromJSON(t)):[]}},toJSON(e){let t={};return e.rfc3161Timestamps?.length&&(t.rfc3161Timestamps=e.rfc3161Timestamps.map(r=>_6.RFC3161SignedTimestamp.toJSON(r))),t}};ZH.VerificationMaterial={fromJSON(e){return{content:Nue(e.publicKey)?{$case:"publicKey",publicKey:_6.PublicKeyIdentifier.fromJSON(e.publicKey)}:Nue(e.x509CertificateChain)?{$case:"x509CertificateChain",x509CertificateChain:_6.X509CertificateChain.fromJSON(e.x509CertificateChain)}:Nue(e.certificate)?{$case:"certificate",certificate:_6.X509Certificate.fromJSON(e.certificate)}:void 0,tlogEntries:globalThis.Array.isArray(e?.tlogEntries)?e.tlogEntries.map(t=>Gps.TransparencyLogEntry.fromJSON(t)):[],timestampVerificationData:Nue(e.timestampVerificationData)?ZH.TimestampVerificationData.fromJSON(e.timestampVerificationData):void 0}},toJSON(e){let t={};return e.content?.$case==="publicKey"?t.publicKey=_6.PublicKeyIdentifier.toJSON(e.content.publicKey):e.content?.$case==="x509CertificateChain"?t.x509CertificateChain=_6.X509CertificateChain.toJSON(e.content.x509CertificateChain):e.content?.$case==="certificate"&&(t.certificate=_6.X509Certificate.toJSON(e.content.certificate)),e.tlogEntries?.length&&(t.tlogEntries=e.tlogEntries.map(r=>Gps.TransparencyLogEntry.toJSON(r))),e.timestampVerificationData!==void 0&&(t.timestampVerificationData=ZH.TimestampVerificationData.toJSON(e.timestampVerificationData)),t}};ZH.Bundle={fromJSON(e){return{mediaType:Nue(e.mediaType)?globalThis.String(e.mediaType):"",verificationMaterial:Nue(e.verificationMaterial)?ZH.VerificationMaterial.fromJSON(e.verificationMaterial):void 0,content:Nue(e.messageSignature)?{$case:"messageSignature",messageSignature:_6.MessageSignature.fromJSON(e.messageSignature)}:Nue(e.dsseEnvelope)?{$case:"dsseEnvelope",dsseEnvelope:xps.Envelope.fromJSON(e.dsseEnvelope)}:void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.verificationMaterial!==void 0&&(t.verificationMaterial=ZH.VerificationMaterial.toJSON(e.verificationMaterial)),e.content?.$case==="messageSignature"?t.messageSignature=_6.MessageSignature.toJSON(e.content.messageSignature):e.content?.$case==="dsseEnvelope"&&(t.dsseEnvelope=xps.Envelope.toJSON(e.content.dsseEnvelope)),t}};function Nue(e){return e!=null}});var LUr=H(ZI=>{"use strict";Object.defineProperty(ZI,"__esModule",{value:!0});ZI.ClientTrustConfig=ZI.ServiceConfiguration=ZI.Service=ZI.SigningConfig=ZI.TrustedRoot=ZI.CertificateAuthority=ZI.TransparencyLogInstance=ZI.ServiceSelector=void 0;ZI.serviceSelectorFromJSON=Fps;ZI.serviceSelectorToJSON=Zps;var nF=NGe(),y6;(function(e){e[e.SERVICE_SELECTOR_UNDEFINED=0]="SERVICE_SELECTOR_UNDEFINED",e[e.ALL=1]="ALL",e[e.ANY=2]="ANY",e[e.EXACT=3]="EXACT"})(y6||(ZI.ServiceSelector=y6={}));function Fps(e){switch(e){case 0:case"SERVICE_SELECTOR_UNDEFINED":return y6.SERVICE_SELECTOR_UNDEFINED;case 1:case"ALL":return y6.ALL;case 2:case"ANY":return y6.ANY;case 3:case"EXACT":return y6.EXACT;default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}function Zps(e){switch(e){case y6.SERVICE_SELECTOR_UNDEFINED:return"SERVICE_SELECTOR_UNDEFINED";case y6.ALL:return"ALL";case y6.ANY:return"ANY";case y6.EXACT:return"EXACT";default:throw new globalThis.Error("Unrecognized enum value "+e+" for enum ServiceSelector")}}ZI.TransparencyLogInstance={fromJSON(e){return{baseUrl:P2(e.baseUrl)?globalThis.String(e.baseUrl):"",hashAlgorithm:P2(e.hashAlgorithm)?(0,nF.hashAlgorithmFromJSON)(e.hashAlgorithm):0,publicKey:P2(e.publicKey)?nF.PublicKey.fromJSON(e.publicKey):void 0,logId:P2(e.logId)?nF.LogId.fromJSON(e.logId):void 0,checkpointKeyId:P2(e.checkpointKeyId)?nF.LogId.fromJSON(e.checkpointKeyId):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.baseUrl!==""&&(t.baseUrl=e.baseUrl),e.hashAlgorithm!==0&&(t.hashAlgorithm=(0,nF.hashAlgorithmToJSON)(e.hashAlgorithm)),e.publicKey!==void 0&&(t.publicKey=nF.PublicKey.toJSON(e.publicKey)),e.logId!==void 0&&(t.logId=nF.LogId.toJSON(e.logId)),e.checkpointKeyId!==void 0&&(t.checkpointKeyId=nF.LogId.toJSON(e.checkpointKeyId)),e.operator!==""&&(t.operator=e.operator),t}};ZI.CertificateAuthority={fromJSON(e){return{subject:P2(e.subject)?nF.DistinguishedName.fromJSON(e.subject):void 0,uri:P2(e.uri)?globalThis.String(e.uri):"",certChain:P2(e.certChain)?nF.X509CertificateChain.fromJSON(e.certChain):void 0,validFor:P2(e.validFor)?nF.TimeRange.fromJSON(e.validFor):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.subject!==void 0&&(t.subject=nF.DistinguishedName.toJSON(e.subject)),e.uri!==""&&(t.uri=e.uri),e.certChain!==void 0&&(t.certChain=nF.X509CertificateChain.toJSON(e.certChain)),e.validFor!==void 0&&(t.validFor=nF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};ZI.TrustedRoot={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",tlogs:globalThis.Array.isArray(e?.tlogs)?e.tlogs.map(t=>ZI.TransparencyLogInstance.fromJSON(t)):[],certificateAuthorities:globalThis.Array.isArray(e?.certificateAuthorities)?e.certificateAuthorities.map(t=>ZI.CertificateAuthority.fromJSON(t)):[],ctlogs:globalThis.Array.isArray(e?.ctlogs)?e.ctlogs.map(t=>ZI.TransparencyLogInstance.fromJSON(t)):[],timestampAuthorities:globalThis.Array.isArray(e?.timestampAuthorities)?e.timestampAuthorities.map(t=>ZI.CertificateAuthority.fromJSON(t)):[]}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.tlogs?.length&&(t.tlogs=e.tlogs.map(r=>ZI.TransparencyLogInstance.toJSON(r))),e.certificateAuthorities?.length&&(t.certificateAuthorities=e.certificateAuthorities.map(r=>ZI.CertificateAuthority.toJSON(r))),e.ctlogs?.length&&(t.ctlogs=e.ctlogs.map(r=>ZI.TransparencyLogInstance.toJSON(r))),e.timestampAuthorities?.length&&(t.timestampAuthorities=e.timestampAuthorities.map(r=>ZI.CertificateAuthority.toJSON(r))),t}};ZI.SigningConfig={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",caUrls:globalThis.Array.isArray(e?.caUrls)?e.caUrls.map(t=>ZI.Service.fromJSON(t)):[],oidcUrls:globalThis.Array.isArray(e?.oidcUrls)?e.oidcUrls.map(t=>ZI.Service.fromJSON(t)):[],rekorTlogUrls:globalThis.Array.isArray(e?.rekorTlogUrls)?e.rekorTlogUrls.map(t=>ZI.Service.fromJSON(t)):[],rekorTlogConfig:P2(e.rekorTlogConfig)?ZI.ServiceConfiguration.fromJSON(e.rekorTlogConfig):void 0,tsaUrls:globalThis.Array.isArray(e?.tsaUrls)?e.tsaUrls.map(t=>ZI.Service.fromJSON(t)):[],tsaConfig:P2(e.tsaConfig)?ZI.ServiceConfiguration.fromJSON(e.tsaConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.caUrls?.length&&(t.caUrls=e.caUrls.map(r=>ZI.Service.toJSON(r))),e.oidcUrls?.length&&(t.oidcUrls=e.oidcUrls.map(r=>ZI.Service.toJSON(r))),e.rekorTlogUrls?.length&&(t.rekorTlogUrls=e.rekorTlogUrls.map(r=>ZI.Service.toJSON(r))),e.rekorTlogConfig!==void 0&&(t.rekorTlogConfig=ZI.ServiceConfiguration.toJSON(e.rekorTlogConfig)),e.tsaUrls?.length&&(t.tsaUrls=e.tsaUrls.map(r=>ZI.Service.toJSON(r))),e.tsaConfig!==void 0&&(t.tsaConfig=ZI.ServiceConfiguration.toJSON(e.tsaConfig)),t}};ZI.Service={fromJSON(e){return{url:P2(e.url)?globalThis.String(e.url):"",majorApiVersion:P2(e.majorApiVersion)?globalThis.Number(e.majorApiVersion):0,validFor:P2(e.validFor)?nF.TimeRange.fromJSON(e.validFor):void 0,operator:P2(e.operator)?globalThis.String(e.operator):""}},toJSON(e){let t={};return e.url!==""&&(t.url=e.url),e.majorApiVersion!==0&&(t.majorApiVersion=Math.round(e.majorApiVersion)),e.validFor!==void 0&&(t.validFor=nF.TimeRange.toJSON(e.validFor)),e.operator!==""&&(t.operator=e.operator),t}};ZI.ServiceConfiguration={fromJSON(e){return{selector:P2(e.selector)?Fps(e.selector):0,count:P2(e.count)?globalThis.Number(e.count):0}},toJSON(e){let t={};return e.selector!==0&&(t.selector=Zps(e.selector)),e.count!==0&&(t.count=Math.round(e.count)),t}};ZI.ClientTrustConfig={fromJSON(e){return{mediaType:P2(e.mediaType)?globalThis.String(e.mediaType):"",trustedRoot:P2(e.trustedRoot)?ZI.TrustedRoot.fromJSON(e.trustedRoot):void 0,signingConfig:P2(e.signingConfig)?ZI.SigningConfig.fromJSON(e.signingConfig):void 0}},toJSON(e){let t={};return e.mediaType!==""&&(t.mediaType=e.mediaType),e.trustedRoot!==void 0&&(t.trustedRoot=ZI.TrustedRoot.toJSON(e.trustedRoot)),e.signingConfig!==void 0&&(t.signingConfig=ZI.SigningConfig.toJSON(e.signingConfig)),t}};function P2(e){return e!=null}});var Pps=H(LI=>{"use strict";Object.defineProperty(LI,"__esModule",{value:!0});LI.Input=LI.Artifact=LI.ArtifactVerificationOptions_ObserverTimestampOptions=LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions=LI.ArtifactVerificationOptions_TimestampAuthorityOptions=LI.ArtifactVerificationOptions_CtlogOptions=LI.ArtifactVerificationOptions_TlogOptions=LI.ArtifactVerificationOptions=LI.PublicKeyIdentities=LI.CertificateIdentities=LI.CertificateIdentity=void 0;var Lps=ZUr(),Due=NGe(),Vps=LUr();LI.CertificateIdentity={fromJSON(e){return{issuer:tE(e.issuer)?globalThis.String(e.issuer):"",san:tE(e.san)?Due.SubjectAlternativeName.fromJSON(e.san):void 0,oids:globalThis.Array.isArray(e?.oids)?e.oids.map(t=>Due.ObjectIdentifierValuePair.fromJSON(t)):[]}},toJSON(e){let t={};return e.issuer!==""&&(t.issuer=e.issuer),e.san!==void 0&&(t.san=Due.SubjectAlternativeName.toJSON(e.san)),e.oids?.length&&(t.oids=e.oids.map(r=>Due.ObjectIdentifierValuePair.toJSON(r))),t}};LI.CertificateIdentities={fromJSON(e){return{identities:globalThis.Array.isArray(e?.identities)?e.identities.map(t=>LI.CertificateIdentity.fromJSON(t)):[]}},toJSON(e){let t={};return e.identities?.length&&(t.identities=e.identities.map(r=>LI.CertificateIdentity.toJSON(r))),t}};LI.PublicKeyIdentities={fromJSON(e){return{publicKeys:globalThis.Array.isArray(e?.publicKeys)?e.publicKeys.map(t=>Due.PublicKey.fromJSON(t)):[]}},toJSON(e){let t={};return e.publicKeys?.length&&(t.publicKeys=e.publicKeys.map(r=>Due.PublicKey.toJSON(r))),t}};LI.ArtifactVerificationOptions={fromJSON(e){return{signers:tE(e.certificateIdentities)?{$case:"certificateIdentities",certificateIdentities:LI.CertificateIdentities.fromJSON(e.certificateIdentities)}:tE(e.publicKeys)?{$case:"publicKeys",publicKeys:LI.PublicKeyIdentities.fromJSON(e.publicKeys)}:void 0,tlogOptions:tE(e.tlogOptions)?LI.ArtifactVerificationOptions_TlogOptions.fromJSON(e.tlogOptions):void 0,ctlogOptions:tE(e.ctlogOptions)?LI.ArtifactVerificationOptions_CtlogOptions.fromJSON(e.ctlogOptions):void 0,tsaOptions:tE(e.tsaOptions)?LI.ArtifactVerificationOptions_TimestampAuthorityOptions.fromJSON(e.tsaOptions):void 0,integratedTsOptions:tE(e.integratedTsOptions)?LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.fromJSON(e.integratedTsOptions):void 0,observerOptions:tE(e.observerOptions)?LI.ArtifactVerificationOptions_ObserverTimestampOptions.fromJSON(e.observerOptions):void 0}},toJSON(e){let t={};return e.signers?.$case==="certificateIdentities"?t.certificateIdentities=LI.CertificateIdentities.toJSON(e.signers.certificateIdentities):e.signers?.$case==="publicKeys"&&(t.publicKeys=LI.PublicKeyIdentities.toJSON(e.signers.publicKeys)),e.tlogOptions!==void 0&&(t.tlogOptions=LI.ArtifactVerificationOptions_TlogOptions.toJSON(e.tlogOptions)),e.ctlogOptions!==void 0&&(t.ctlogOptions=LI.ArtifactVerificationOptions_CtlogOptions.toJSON(e.ctlogOptions)),e.tsaOptions!==void 0&&(t.tsaOptions=LI.ArtifactVerificationOptions_TimestampAuthorityOptions.toJSON(e.tsaOptions)),e.integratedTsOptions!==void 0&&(t.integratedTsOptions=LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.toJSON(e.integratedTsOptions)),e.observerOptions!==void 0&&(t.observerOptions=LI.ArtifactVerificationOptions_ObserverTimestampOptions.toJSON(e.observerOptions)),t}};LI.ArtifactVerificationOptions_TlogOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,performOnlineVerification:tE(e.performOnlineVerification)?globalThis.Boolean(e.performOnlineVerification):!1,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.performOnlineVerification!==!1&&(t.performOnlineVerification=e.performOnlineVerification),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_CtlogOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_TimestampAuthorityOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_TlogIntegratedTimestampOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.ArtifactVerificationOptions_ObserverTimestampOptions={fromJSON(e){return{threshold:tE(e.threshold)?globalThis.Number(e.threshold):0,disable:tE(e.disable)?globalThis.Boolean(e.disable):!1}},toJSON(e){let t={};return e.threshold!==0&&(t.threshold=Math.round(e.threshold)),e.disable!==!1&&(t.disable=e.disable),t}};LI.Artifact={fromJSON(e){return{data:tE(e.artifactUri)?{$case:"artifactUri",artifactUri:globalThis.String(e.artifactUri)}:tE(e.artifact)?{$case:"artifact",artifact:Buffer.from(VEl(e.artifact))}:tE(e.artifactDigest)?{$case:"artifactDigest",artifactDigest:Due.HashOutput.fromJSON(e.artifactDigest)}:void 0}},toJSON(e){let t={};return e.data?.$case==="artifactUri"?t.artifactUri=e.data.artifactUri:e.data?.$case==="artifact"?t.artifact=PEl(e.data.artifact):e.data?.$case==="artifactDigest"&&(t.artifactDigest=Due.HashOutput.toJSON(e.data.artifactDigest)),t}};LI.Input={fromJSON(e){return{artifactTrustRoot:tE(e.artifactTrustRoot)?Vps.TrustedRoot.fromJSON(e.artifactTrustRoot):void 0,artifactVerificationOptions:tE(e.artifactVerificationOptions)?LI.ArtifactVerificationOptions.fromJSON(e.artifactVerificationOptions):void 0,bundle:tE(e.bundle)?Lps.Bundle.fromJSON(e.bundle):void 0,artifact:tE(e.artifact)?LI.Artifact.fromJSON(e.artifact):void 0}},toJSON(e){let t={};return e.artifactTrustRoot!==void 0&&(t.artifactTrustRoot=Vps.TrustedRoot.toJSON(e.artifactTrustRoot)),e.artifactVerificationOptions!==void 0&&(t.artifactVerificationOptions=LI.ArtifactVerificationOptions.toJSON(e.artifactVerificationOptions)),e.bundle!==void 0&&(t.bundle=Lps.Bundle.toJSON(e.bundle)),e.artifact!==void 0&&(t.artifact=LI.Artifact.toJSON(e.artifact)),t}};function VEl(e){return Uint8Array.from(globalThis.Buffer.from(e,"base64"))}function PEl(e){return globalThis.Buffer.from(e).toString("base64")}function tE(e){return e!=null}});var y7e=H(LH=>{"use strict";var WEl=LH&&LH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),DGe=LH&&LH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&WEl(t,e,r)};Object.defineProperty(LH,"__esModule",{value:!0});DGe(GUr(),LH);DGe(ZUr(),LH);DGe(NGe(),LH);DGe(FUr(),LH);DGe(LUr(),LH);DGe(Pps(),LH)});var eFt=H(KV=>{"use strict";Object.defineProperty(KV,"__esModule",{value:!0});KV.BUNDLE_V03_MEDIA_TYPE=KV.BUNDLE_V03_LEGACY_MEDIA_TYPE=KV.BUNDLE_V02_MEDIA_TYPE=KV.BUNDLE_V01_MEDIA_TYPE=void 0;KV.isBundleWithCertificateChain=OEl;KV.isBundleWithPublicKey=MEl;KV.isBundleWithMessageSignature=HEl;KV.isBundleWithDsseEnvelope=YEl;KV.BUNDLE_V01_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.1";KV.BUNDLE_V02_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.2";KV.BUNDLE_V03_LEGACY_MEDIA_TYPE="application/vnd.dev.sigstore.bundle+json;version=0.3";KV.BUNDLE_V03_MEDIA_TYPE="application/vnd.dev.sigstore.bundle.v0.3+json";function OEl(e){return e.verificationMaterial.content.$case==="x509CertificateChain"}function MEl(e){return e.verificationMaterial.content.$case==="publicKey"}function HEl(e){return e.content.$case==="messageSignature"}function YEl(e){return e.content.$case==="dsseEnvelope"}});var Ops=H(rFt=>{"use strict";Object.defineProperty(rFt,"__esModule",{value:!0});rFt.toMessageSignatureBundle=XEl;rFt.toDSSEBundle=JEl;var QEl=y7e(),tFt=eFt();function XEl(e){return{mediaType:e.certificateChain?tFt.BUNDLE_V02_MEDIA_TYPE:tFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"messageSignature",messageSignature:{messageDigest:{algorithm:QEl.HashAlgorithm.SHA2_256,digest:e.digest},signature:e.signature}},verificationMaterial:Wps(e)}}function JEl(e){return{mediaType:e.certificateChain?tFt.BUNDLE_V02_MEDIA_TYPE:tFt.BUNDLE_V03_MEDIA_TYPE,content:{$case:"dsseEnvelope",dsseEnvelope:UEl(e)},verificationMaterial:Wps(e)}}function UEl(e){return{payloadType:e.artifactType,payload:e.artifact,signatures:[KEl(e)]}}function KEl(e){return{keyid:e.keyHint||"",sig:e.signature}}function Wps(e){return{content:jEl(e),tlogEntries:[],timestampVerificationData:{rfc3161Timestamps:[]}}}function jEl(e){return e.certificate?e.certificateChain?{$case:"x509CertificateChain",x509CertificateChain:{certificates:[{rawBytes:e.certificate}]}}:{$case:"certificate",certificate:{rawBytes:e.certificate}}:{$case:"publicKey",publicKey:{hint:e.keyHint||""}}}});var PUr=H(nFt=>{"use strict";Object.defineProperty(nFt,"__esModule",{value:!0});nFt.ValidationError=void 0;var VUr=class extends Error{constructor(t,r){super(t),this.fields=r}};nFt.ValidationError=VUr});var WUr=H(f0e=>{"use strict";Object.defineProperty(f0e,"__esModule",{value:!0});f0e.assertBundle=zEl;f0e.assertBundleV01=Mps;f0e.isBundleV01=qEl;f0e.assertBundleV02=$El;f0e.assertBundleLatest=e1l;var iFt=PUr();function zEl(e){let t=sFt(e);if(t.length>0)throw new iFt.ValidationError("invalid bundle",t)}function Mps(e){let t=[];if(t.push(...sFt(e)),t.push(...t1l(e)),t.length>0)throw new iFt.ValidationError("invalid v0.1 bundle",t)}function qEl(e){try{return Mps(e),!0}catch{return!1}}function $El(e){let t=[];if(t.push(...sFt(e)),t.push(...Hps(e)),t.length>0)throw new iFt.ValidationError("invalid v0.2 bundle",t)}function e1l(e){let t=[];if(t.push(...sFt(e)),t.push(...Hps(e)),t.push(...r1l(e)),t.length>0)throw new iFt.ValidationError("invalid bundle",t)}function sFt(e){let t=[];if((e.mediaType===void 0||!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\+json;version=\d\.\d/)&&!e.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\.v\d\.\d\+json/))&&t.push("mediaType"),e.content===void 0)t.push("content");else switch(e.content.$case){case"messageSignature":e.content.messageSignature.messageDigest===void 0?t.push("content.messageSignature.messageDigest"):e.content.messageSignature.messageDigest.digest.length===0&&t.push("content.messageSignature.messageDigest.digest"),e.content.messageSignature.signature.length===0&&t.push("content.messageSignature.signature");break;case"dsseEnvelope":e.content.dsseEnvelope.payload.length===0&&t.push("content.dsseEnvelope.payload"),e.content.dsseEnvelope.signatures.length!==1?t.push("content.dsseEnvelope.signatures"):e.content.dsseEnvelope.signatures[0].sig.length===0&&t.push("content.dsseEnvelope.signatures[0].sig");break}if(e.verificationMaterial===void 0)t.push("verificationMaterial");else{if(e.verificationMaterial.content===void 0)t.push("verificationMaterial.content");else switch(e.verificationMaterial.content.$case){case"x509CertificateChain":e.verificationMaterial.content.x509CertificateChain.certificates.length===0&&t.push("verificationMaterial.content.x509CertificateChain.certificates"),e.verificationMaterial.content.x509CertificateChain.certificates.forEach((r,n)=>{r.rawBytes.length===0&&t.push(`verificationMaterial.content.x509CertificateChain.certificates[${n}].rawBytes`)});break;case"certificate":e.verificationMaterial.content.certificate.rawBytes.length===0&&t.push("verificationMaterial.content.certificate.rawBytes");break}e.verificationMaterial.tlogEntries===void 0?t.push("verificationMaterial.tlogEntries"):e.verificationMaterial.tlogEntries.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.logId===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].logId`),r.kindVersion===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].kindVersion`)})}return t}function t1l(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionPromise===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionPromise`)}),t}function Hps(e){let t=[];return e.verificationMaterial&&e.verificationMaterial.tlogEntries?.length>0&&e.verificationMaterial.tlogEntries.forEach((r,n)=>{r.inclusionProof===void 0?t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof`):r.inclusionProof.checkpoint===void 0&&t.push(`verificationMaterial.tlogEntries[${n}].inclusionProof.checkpoint`)}),t}function r1l(e){let t=[];return e.verificationMaterial?.content?.$case==="x509CertificateChain"&&t.push("verificationMaterial.content.$case"),t}});var Qps=H(b6=>{"use strict";Object.defineProperty(b6,"__esModule",{value:!0});b6.envelopeToJSON=b6.envelopeFromJSON=b6.bundleToJSON=b6.bundleFromJSON=void 0;var oFt=y7e(),Yps=eFt(),OUr=WUr(),n1l=e=>{let t=oFt.Bundle.fromJSON(e);switch(t.mediaType){case Yps.BUNDLE_V01_MEDIA_TYPE:(0,OUr.assertBundleV01)(t);break;case Yps.BUNDLE_V02_MEDIA_TYPE:(0,OUr.assertBundleV02)(t);break;default:(0,OUr.assertBundleLatest)(t);break}return t};b6.bundleFromJSON=n1l;var i1l=e=>oFt.Bundle.toJSON(e);b6.bundleToJSON=i1l;var s1l=e=>oFt.Envelope.fromJSON(e);b6.envelopeFromJSON=s1l;var o1l=e=>oFt.Envelope.toJSON(e);b6.envelopeToJSON=o1l});var E7e=H(Ah=>{"use strict";Object.defineProperty(Ah,"__esModule",{value:!0});Ah.isBundleV01=Ah.assertBundleV02=Ah.assertBundleV01=Ah.assertBundleLatest=Ah.assertBundle=Ah.envelopeToJSON=Ah.envelopeFromJSON=Ah.bundleToJSON=Ah.bundleFromJSON=Ah.ValidationError=Ah.isBundleWithPublicKey=Ah.isBundleWithMessageSignature=Ah.isBundleWithDsseEnvelope=Ah.isBundleWithCertificateChain=Ah.BUNDLE_V03_MEDIA_TYPE=Ah.BUNDLE_V03_LEGACY_MEDIA_TYPE=Ah.BUNDLE_V02_MEDIA_TYPE=Ah.BUNDLE_V01_MEDIA_TYPE=Ah.toMessageSignatureBundle=Ah.toDSSEBundle=void 0;var Xps=Ops();Object.defineProperty(Ah,"toDSSEBundle",{enumerable:!0,get:function(){return Xps.toDSSEBundle}});Object.defineProperty(Ah,"toMessageSignatureBundle",{enumerable:!0,get:function(){return Xps.toMessageSignatureBundle}});var kue=eFt();Object.defineProperty(Ah,"BUNDLE_V01_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V01_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V02_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V02_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V03_LEGACY_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V03_LEGACY_MEDIA_TYPE}});Object.defineProperty(Ah,"BUNDLE_V03_MEDIA_TYPE",{enumerable:!0,get:function(){return kue.BUNDLE_V03_MEDIA_TYPE}});Object.defineProperty(Ah,"isBundleWithCertificateChain",{enumerable:!0,get:function(){return kue.isBundleWithCertificateChain}});Object.defineProperty(Ah,"isBundleWithDsseEnvelope",{enumerable:!0,get:function(){return kue.isBundleWithDsseEnvelope}});Object.defineProperty(Ah,"isBundleWithMessageSignature",{enumerable:!0,get:function(){return kue.isBundleWithMessageSignature}});Object.defineProperty(Ah,"isBundleWithPublicKey",{enumerable:!0,get:function(){return kue.isBundleWithPublicKey}});var a1l=PUr();Object.defineProperty(Ah,"ValidationError",{enumerable:!0,get:function(){return a1l.ValidationError}});var aFt=Qps();Object.defineProperty(Ah,"bundleFromJSON",{enumerable:!0,get:function(){return aFt.bundleFromJSON}});Object.defineProperty(Ah,"bundleToJSON",{enumerable:!0,get:function(){return aFt.bundleToJSON}});Object.defineProperty(Ah,"envelopeFromJSON",{enumerable:!0,get:function(){return aFt.envelopeFromJSON}});Object.defineProperty(Ah,"envelopeToJSON",{enumerable:!0,get:function(){return aFt.envelopeToJSON}});var b7e=WUr();Object.defineProperty(Ah,"assertBundle",{enumerable:!0,get:function(){return b7e.assertBundle}});Object.defineProperty(Ah,"assertBundleLatest",{enumerable:!0,get:function(){return b7e.assertBundleLatest}});Object.defineProperty(Ah,"assertBundleV01",{enumerable:!0,get:function(){return b7e.assertBundleV01}});Object.defineProperty(Ah,"assertBundleV02",{enumerable:!0,get:function(){return b7e.assertBundleV02}});Object.defineProperty(Ah,"isBundleV01",{enumerable:!0,get:function(){return b7e.isBundleV01}})});var S7e=H(lFt=>{"use strict";Object.defineProperty(lFt,"__esModule",{value:!0});lFt.ByteStream=void 0;var MUr=class extends Error{},cFt=class e{constructor(t){this.start=0,t?(this.buf=t,this.view=Buffer.from(t)):(this.buf=new ArrayBuffer(0),this.view=Buffer.from(this.buf))}get buffer(){return this.view.subarray(0,this.start)}get length(){return this.view.byteLength}get position(){return this.start}seek(t){this.start=t}slice(t,r){let n=t+r;if(n>this.length)throw new MUr("request past end of buffer");return this.view.subarray(t,n)}appendChar(t){this.ensureCapacity(1),this.view[this.start]=t,this.start+=1}appendUint16(t){this.ensureCapacity(2);let r=new Uint16Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[1],this.view[this.start+1]=n[0],this.start+=2}appendUint24(t){this.ensureCapacity(3);let r=new Uint32Array([t]),n=new Uint8Array(r.buffer);this.view[this.start]=n[2],this.view[this.start+1]=n[1],this.view[this.start+2]=n[0],this.start+=3}appendView(t){this.ensureCapacity(t.length),this.view.set(t,this.start),this.start+=t.length}getBlock(t){if(t<=0)return Buffer.alloc(0);if(this.start+t>this.view.length)throw new Error("request past end of buffer");let r=this.view.subarray(this.start,this.start+t);return this.start+=t,r}getUint8(){return this.getBlock(1)[0]}getUint16(){let t=this.getBlock(2);return t[0]<<8|t[1]}ensureCapacity(t){if(this.start+t>this.view.byteLength){let r=e.BLOCK_SIZE+(t>e.BLOCK_SIZE?t:0);this.realloc(this.view.byteLength+r)}}realloc(t){let r=new ArrayBuffer(t),n=Buffer.from(r);n.set(this.view),this.buf=r,this.view=n}};lFt.ByteStream=cFt;cFt.BLOCK_SIZE=1024});var uFt=H(kGe=>{"use strict";Object.defineProperty(kGe,"__esModule",{value:!0});kGe.ASN1TypeError=kGe.ASN1ParseError=void 0;var HUr=class extends Error{};kGe.ASN1ParseError=HUr;var YUr=class extends Error{};kGe.ASN1TypeError=YUr});var Ups=H(gFt=>{"use strict";Object.defineProperty(gFt,"__esModule",{value:!0});gFt.decodeLength=c1l;gFt.encodeLength=l1l;var Jps=uFt();function c1l(e){let t=e.getUint8();if(!(t&128))return t;let r=t&127;if(r>6)throw new Jps.ASN1ParseError("length exceeds 6 byte limit");let n=0;for(let a=0;a0n;)r.unshift(Number(t&255n)),t=t>>8n;return Buffer.from([128|r.length,...r])}});var jps=H(xue=>{"use strict";Object.defineProperty(xue,"__esModule",{value:!0});xue.parseInteger=A1l;xue.parseStringASCII=Kps;xue.parseTime=d1l;xue.parseOID=p1l;xue.parseBoolean=f1l;xue.parseBitString=I1l;var u1l=/^(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/,g1l=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;function A1l(e){let t=0,r=e.length,n=e[t],a=n>127,o=a?255:0;for(;n==o&&++t=50?1900:2e3,n[1]=a.toString()}return new Date(`${n[1]}-${n[2]}-${n[3]}T${n[4]}:${n[5]}:${n[6]}Z`)}function p1l(e){let t=0,r=e.length,n=e[t++],a=Math.floor(n/40),o=n%40,l=`${a}.${o}`,A=0;for(;t=A;--f)a.push(l>>f&1)}return a}});var qps=H(AFt=>{"use strict";Object.defineProperty(AFt,"__esModule",{value:!0});AFt.ASN1Tag=void 0;var zps=uFt(),I0e={BOOLEAN:1,INTEGER:2,BIT_STRING:3,OCTET_STRING:4,OBJECT_IDENTIFIER:6,SEQUENCE:16,SET:17,PRINTABLE_STRING:19,UTC_TIME:23,GENERALIZED_TIME:24},QUr={UNIVERSAL:0,APPLICATION:1,CONTEXT_SPECIFIC:2,PRIVATE:3},XUr=class{constructor(t){if(this.number=t&31,this.constructed=(t&32)===32,this.class=t>>6,this.number===31)throw new zps.ASN1ParseError("long form tags not supported");if(this.class===QUr.UNIVERSAL&&this.number===0)throw new zps.ASN1ParseError("unsupported tag 0x00")}isUniversal(){return this.class===QUr.UNIVERSAL}isContextSpecific(t){let r=this.class===QUr.CONTEXT_SPECIFIC;return t!==void 0?r&&this.number===t:r}isBoolean(){return this.isUniversal()&&this.number===I0e.BOOLEAN}isInteger(){return this.isUniversal()&&this.number===I0e.INTEGER}isBitString(){return this.isUniversal()&&this.number===I0e.BIT_STRING}isOctetString(){return this.isUniversal()&&this.number===I0e.OCTET_STRING}isOID(){return this.isUniversal()&&this.number===I0e.OBJECT_IDENTIFIER}isUTCTime(){return this.isUniversal()&&this.number===I0e.UTC_TIME}isGeneralizedTime(){return this.isUniversal()&&this.number===I0e.GENERALIZED_TIME}toDER(){return this.number|(this.constructed?32:0)|this.class<<6}};AFt.ASN1Tag=XUr});var rfs=H(pFt=>{"use strict";Object.defineProperty(pFt,"__esModule",{value:!0});pFt.ASN1Obj=void 0;var JUr=S7e(),h0e=uFt(),efs=Ups(),xGe=jps(),h1l=qps(),dFt=class{constructor(t,r,n){this.tag=t,this.value=r,this.subs=n}static parseBuffer(t){return tfs(new JUr.ByteStream(t))}toDER(){let t=new JUr.ByteStream;if(this.subs.length>0)for(let a of this.subs)t.appendView(a.toDER());else t.appendView(this.value);let r=t.buffer,n=new JUr.ByteStream;return n.appendChar(this.tag.toDER()),n.appendView((0,efs.encodeLength)(r.length)),n.appendView(r),n.buffer}toBoolean(){if(!this.tag.isBoolean())throw new h0e.ASN1TypeError("not a boolean");return(0,xGe.parseBoolean)(this.value)}toInteger(){if(!this.tag.isInteger())throw new h0e.ASN1TypeError("not an integer");return(0,xGe.parseInteger)(this.value)}toOID(){if(!this.tag.isOID())throw new h0e.ASN1TypeError("not an OID");return(0,xGe.parseOID)(this.value)}toDate(){switch(!0){case this.tag.isUTCTime():return(0,xGe.parseTime)(this.value,!0);case this.tag.isGeneralizedTime():return(0,xGe.parseTime)(this.value,!1);default:throw new h0e.ASN1TypeError("not a date")}}toBitString(){if(!this.tag.isBitString())throw new h0e.ASN1TypeError("not a bit string");return(0,xGe.parseBitString)(this.value)}};pFt.ASN1Obj=dFt;function tfs(e){let t=new h1l.ASN1Tag(e.getUint8()),r=(0,efs.decodeLength)(e),n=e.slice(e.position,r),a=e.position,o=[];if(t.constructed)o=$ps(e,r);else if(t.isOctetString())try{o=$ps(e,r)}catch{}return o.length===0&&e.seek(a+r),new dFt(t,n,o)}function $ps(e,t){let r=e.position+t;if(r>e.length)throw new h0e.ASN1ParseError("invalid length");let n=[];for(;e.position{"use strict";Object.defineProperty(fFt,"__esModule",{value:!0});fFt.ASN1Obj=void 0;var m1l=rfs();Object.defineProperty(fFt,"ASN1Obj",{enumerable:!0,get:function(){return m1l.ASN1Obj}})});var GGe=H(Gue=>{"use strict";var C1l=Gue&&Gue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Gue,"__esModule",{value:!0});Gue.createPublicKey=_1l;Gue.digest=y1l;Gue.verify=b1l;Gue.bufferEqual=E1l;var v7e=C1l(wt("crypto"));function _1l(e,t="spki"){return typeof e=="string"?v7e.default.createPublicKey(e):v7e.default.createPublicKey({key:e,format:"der",type:t})}function y1l(e,...t){let r=v7e.default.createHash(e);for(let n of t)r.update(n);return r.digest()}function b1l(e,t,r,n){try{return v7e.default.verify(n,e,t,r)}catch{return!1}}function E1l(e,t){try{return v7e.default.timingSafeEqual(e,t)}catch{return!1}}});var nfs=H(UUr=>{"use strict";Object.defineProperty(UUr,"__esModule",{value:!0});UUr.preAuthEncoding=v1l;var S1l="DSSEv1";function v1l(e,t){let r=[S1l,e.length,e,t.length,""].join(" ");return Buffer.concat([Buffer.from(r,"ascii"),t])}});var ofs=H(hFt=>{"use strict";Object.defineProperty(hFt,"__esModule",{value:!0});hFt.base64Encode=B1l;hFt.base64Decode=w1l;var ifs="base64",sfs="utf-8";function B1l(e){return Buffer.from(e,sfs).toString(ifs)}function w1l(e){return Buffer.from(e,ifs).toString(sfs)}});var afs=H(jUr=>{"use strict";Object.defineProperty(jUr,"__esModule",{value:!0});jUr.canonicalize=KUr;function KUr(e){let t="";if(e===null||typeof e!="object"||e.toJSON!=null)t+=JSON.stringify(e);else if(Array.isArray(e)){t+="[";let r=!0;e.forEach(n=>{r||(t+=","),r=!1,t+=KUr(n)}),t+="]"}else{t+="{";let r=!0;Object.keys(e).sort().forEach(n=>{r||(t+=","),r=!1,t+=JSON.stringify(n),t+=":",t+=KUr(e[n])}),t+="}"}return t}});var zUr=H(mFt=>{"use strict";Object.defineProperty(mFt,"__esModule",{value:!0});mFt.toDER=N1l;mFt.fromDER=D1l;var T1l=/-----BEGIN (.*)-----/,R1l=/-----END (.*)-----/;function N1l(e){let t="";return e.split(` -`).forEach(r=>{r.match(T1l)||r.match(R1l)||(t+=r)}),Buffer.from(t,"base64")}function D1l(e,t="CERTIFICATE"){let n=e.toString("base64").match(/.{1,64}/g)||"";return[`-----BEGIN ${t}-----`,...n,`-----END ${t}-----`].join(` -`).concat(` -`)}});var CFt=H(FGe=>{"use strict";Object.defineProperty(FGe,"__esModule",{value:!0});FGe.SHA2_HASH_ALGOS=FGe.ECDSA_SIGNATURE_ALGOS=void 0;FGe.ECDSA_SIGNATURE_ALGOS={"1.2.840.10045.4.3.1":"sha224","1.2.840.10045.4.3.2":"sha256","1.2.840.10045.4.3.3":"sha384","1.2.840.10045.4.3.4":"sha512"};FGe.SHA2_HASH_ALGOS={"2.16.840.1.101.3.4.2.1":"sha256","2.16.840.1.101.3.4.2.2":"sha384","2.16.840.1.101.3.4.2.3":"sha512"}});var $Ur=H(_Ft=>{"use strict";Object.defineProperty(_Ft,"__esModule",{value:!0});_Ft.RFC3161TimestampVerificationError=void 0;var qUr=class extends Error{};_Ft.RFC3161TimestampVerificationError=qUr});var lfs=H(E6=>{"use strict";var k1l=E6&&E6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),x1l=E6&&E6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),G1l=E6&&E6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&k1l(t,e,r);return x1l(t,e),t};Object.defineProperty(E6,"__esModule",{value:!0});E6.TSTInfo=void 0;var cfs=G1l(GGe()),F1l=CFt(),Z1l=$Ur(),eKr=class{constructor(t){this.root=t}get version(){return this.root.subs[0].toInteger()}get genTime(){return this.root.subs[4].toDate()}get messageImprintHashAlgorithm(){let t=this.messageImprintObj.subs[0].subs[0].toOID();return F1l.SHA2_HASH_ALGOS[t]}get messageImprintHashedMessage(){return this.messageImprintObj.subs[1].value}get raw(){return this.root.toDER()}verify(t){let r=cfs.digest(this.messageImprintHashAlgorithm,t);if(!cfs.bufferEqual(r,this.messageImprintHashedMessage))throw new Z1l.RFC3161TimestampVerificationError("message imprint does not match artifact")}get messageImprintObj(){return this.root.subs[2]}};E6.TSTInfo=eKr});var gfs=H(S6=>{"use strict";var L1l=S6&&S6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),V1l=S6&&S6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),P1l=S6&&S6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&L1l(t,e,r);return V1l(t,e),t};Object.defineProperty(S6,"__esModule",{value:!0});S6.RFC3161Timestamp=void 0;var W1l=IFt(),tKr=P1l(GGe()),ufs=CFt(),B7e=$Ur(),O1l=lfs(),M1l="1.2.840.113549.1.7.2",H1l="1.2.840.113549.1.9.16.1.4",Y1l="1.2.840.113549.1.9.4",rKr=class e{constructor(t){this.root=t}static parse(t){let r=W1l.ASN1Obj.parseBuffer(t);return new e(r)}get status(){return this.pkiStatusInfoObj.subs[0].toInteger()}get contentType(){return this.contentTypeObj.toOID()}get eContentType(){return this.eContentTypeObj.toOID()}get signingTime(){return this.tstInfo.genTime}get signerIssuer(){return this.signerSidObj.subs[0].value}get signerSerialNumber(){return this.signerSidObj.subs[1].value}get signerDigestAlgorithm(){let t=this.signerDigestAlgorithmObj.subs[0].toOID();return ufs.SHA2_HASH_ALGOS[t]}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return ufs.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value}get tstInfo(){return new O1l.TSTInfo(this.eContentObj.subs[0].subs[0])}verify(t,r){if(!this.timeStampTokenObj)throw new B7e.RFC3161TimestampVerificationError("timeStampToken is missing");if(this.contentType!==M1l)throw new B7e.RFC3161TimestampVerificationError(`incorrect content type: ${this.contentType}`);if(this.eContentType!==H1l)throw new B7e.RFC3161TimestampVerificationError(`incorrect encapsulated content type: ${this.eContentType}`);this.tstInfo.verify(t),this.verifyMessageDigest(),this.verifySignature(r)}verifyMessageDigest(){let t=tKr.digest(this.signerDigestAlgorithm,this.tstInfo.raw),r=this.messageDigestAttributeObj.subs[1].subs[0].value;if(!tKr.bufferEqual(t,r))throw new B7e.RFC3161TimestampVerificationError("signed data does not match tstInfo")}verifySignature(t){let r=this.signedAttrsObj.toDER();if(r[0]=49,!tKr.verify(r,t,this.signatureValue,this.signatureAlgorithm))throw new B7e.RFC3161TimestampVerificationError("signature verification failed")}get pkiStatusInfoObj(){return this.root.subs[0]}get timeStampTokenObj(){return this.root.subs[1]}get contentTypeObj(){return this.timeStampTokenObj.subs[0]}get signedDataObj(){return this.timeStampTokenObj.subs.find(r=>r.tag.isContextSpecific(0)).subs[0]}get encapContentInfoObj(){return this.signedDataObj.subs[2]}get signerInfosObj(){let t=this.signedDataObj;return t.subs[t.subs.length-1]}get signerInfoObj(){return this.signerInfosObj.subs[0]}get eContentTypeObj(){return this.encapContentInfoObj.subs[0]}get eContentObj(){return this.encapContentInfoObj.subs[1]}get signedAttrsObj(){return this.signerInfoObj.subs.find(r=>r.tag.isContextSpecific(0))}get messageDigestAttributeObj(){return this.signedAttrsObj.subs.find(r=>r.subs[0].tag.isOID()&&r.subs[0].toOID()===Y1l)}get signerSidObj(){return this.signerInfoObj.subs[1]}get signerDigestAlgorithmObj(){return this.signerInfoObj.subs[2]}get signatureAlgorithmObj(){return this.signerInfoObj.subs[4]}get signatureValueObj(){return this.signerInfoObj.subs[5]}};S6.RFC3161Timestamp=rKr});var Afs=H(yFt=>{"use strict";Object.defineProperty(yFt,"__esModule",{value:!0});yFt.RFC3161Timestamp=void 0;var Q1l=gfs();Object.defineProperty(yFt,"RFC3161Timestamp",{enumerable:!0,get:function(){return Q1l.RFC3161Timestamp}})});var pfs=H(v6=>{"use strict";var X1l=v6&&v6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),J1l=v6&&v6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),U1l=v6&&v6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&X1l(t,e,r);return J1l(t,e),t};Object.defineProperty(v6,"__esModule",{value:!0});v6.SignedCertificateTimestamp=void 0;var K1l=U1l(GGe()),dfs=S7e(),nKr=class e{constructor(t){this.version=t.version,this.logID=t.logID,this.timestamp=t.timestamp,this.extensions=t.extensions,this.hashAlgorithm=t.hashAlgorithm,this.signatureAlgorithm=t.signatureAlgorithm,this.signature=t.signature}get datetime(){return new Date(Number(this.timestamp.readBigInt64BE()))}get algorithm(){switch(this.hashAlgorithm){case 0:return"none";case 1:return"md5";case 2:return"sha1";case 3:return"sha224";case 4:return"sha256";case 5:return"sha384";case 6:return"sha512";default:return"unknown"}}verify(t,r){let n=new dfs.ByteStream;return n.appendChar(this.version),n.appendChar(0),n.appendView(this.timestamp),n.appendUint16(1),n.appendView(t),n.appendUint16(this.extensions.byteLength),this.extensions.byteLength>0&&n.appendView(this.extensions),K1l.verify(n.buffer,r,this.signature,this.algorithm)}static parse(t){let r=new dfs.ByteStream(t),n=r.getUint8(),a=r.getBlock(32),o=r.getBlock(8),l=r.getUint16(),A=r.getBlock(l),f=r.getUint8(),I=r.getUint8(),C=r.getUint16(),b=r.getBlock(C);if(r.position!==t.length)throw new Error("SCT buffer length mismatch");return new e({version:n,logID:a,timestamp:o,extensions:A,hashAlgorithm:f,signatureAlgorithm:I,signature:b})}};v6.SignedCertificateTimestamp=nKr});var uKr=H(iF=>{"use strict";Object.defineProperty(iF,"__esModule",{value:!0});iF.X509SCTExtension=iF.X509SubjectKeyIDExtension=iF.X509AuthorityKeyIDExtension=iF.X509SubjectAlternativeNameExtension=iF.X509KeyUsageExtension=iF.X509BasicConstraintsExtension=iF.X509Extension=void 0;var j1l=S7e(),z1l=pfs(),Ute=class{constructor(t){this.root=t}get oid(){return this.root.subs[0].toOID()}get critical(){return this.root.subs.length===3?this.root.subs[1].toBoolean():!1}get value(){return this.extnValueObj.value}get valueObj(){return this.extnValueObj}get extnValueObj(){return this.root.subs[this.root.subs.length-1]}};iF.X509Extension=Ute;var iKr=class extends Ute{get isCA(){return this.sequence.subs[0]?.toBoolean()??!1}get pathLenConstraint(){return this.sequence.subs.length>1?this.sequence.subs[1].toInteger():void 0}get sequence(){return this.extnValueObj.subs[0]}};iF.X509BasicConstraintsExtension=iKr;var sKr=class extends Ute{get digitalSignature(){return this.bitString[0]===1}get keyCertSign(){return this.bitString[5]===1}get crlSign(){return this.bitString[6]===1}get bitString(){return this.extnValueObj.subs[0].toBitString()}};iF.X509KeyUsageExtension=sKr;var oKr=class extends Ute{get rfc822Name(){return this.findGeneralName(1)?.value.toString("ascii")}get uri(){return this.findGeneralName(6)?.value.toString("ascii")}otherName(t){let r=this.findGeneralName(0);return r===void 0||r.subs[0].toOID()!==t?void 0:r.subs[1].subs[0].value.toString("ascii")}findGeneralName(t){return this.generalNames.find(r=>r.tag.isContextSpecific(t))}get generalNames(){return this.extnValueObj.subs[0].subs}};iF.X509SubjectAlternativeNameExtension=oKr;var aKr=class extends Ute{get keyIdentifier(){return this.findSequenceMember(0)?.value}findSequenceMember(t){return this.sequence.subs.find(r=>r.tag.isContextSpecific(t))}get sequence(){return this.extnValueObj.subs[0]}};iF.X509AuthorityKeyIDExtension=aKr;var cKr=class extends Ute{get keyIdentifier(){return this.extnValueObj.subs[0].value}};iF.X509SubjectKeyIDExtension=cKr;var lKr=class extends Ute{constructor(t){super(t)}get signedCertificateTimestamps(){let t=this.extnValueObj.subs[0].value,r=new j1l.ByteStream(t),n=r.getUint16()+2,a=[];for(;r.position{"use strict";var q1l=QO&&QO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$1l=QO&&QO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ifs=QO&&QO.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&q1l(t,e,r);return $1l(t,e),t};Object.defineProperty(QO,"__esModule",{value:!0});QO.X509Certificate=QO.EXTENSION_OID_SCT=void 0;var e2l=IFt(),ffs=Ifs(GGe()),t2l=CFt(),r2l=Ifs(zUr()),m0e=uKr(),n2l="2.5.29.14",i2l="2.5.29.15",s2l="2.5.29.17",o2l="2.5.29.19",a2l="2.5.29.35";QO.EXTENSION_OID_SCT="1.3.6.1.4.1.11129.2.4.2";var gKr=class e{constructor(t){this.root=t}static parse(t){let r=typeof t=="string"?r2l.toDER(t):t,n=e2l.ASN1Obj.parseBuffer(r);return new e(n)}get tbsCertificate(){return this.tbsCertificateObj}get version(){return`v${(this.versionObj.subs[0].toInteger()+BigInt(1)).toString()}`}get serialNumber(){return this.serialNumberObj.value}get notBefore(){return this.validityObj.subs[0].toDate()}get notAfter(){return this.validityObj.subs[1].toDate()}get issuer(){return this.issuerObj.value}get subject(){return this.subjectObj.value}get publicKey(){return this.subjectPublicKeyInfoObj.toDER()}get signatureAlgorithm(){let t=this.signatureAlgorithmObj.subs[0].toOID();return t2l.ECDSA_SIGNATURE_ALGOS[t]}get signatureValue(){return this.signatureValueObj.value.subarray(1)}get subjectAltName(){let t=this.extSubjectAltName;return t?.uri||t?.rfc822Name}get extensions(){return this.extensionsObj?.subs[0]?.subs||[]}get extKeyUsage(){let t=this.findExtension(i2l);return t?new m0e.X509KeyUsageExtension(t):void 0}get extBasicConstraints(){let t=this.findExtension(o2l);return t?new m0e.X509BasicConstraintsExtension(t):void 0}get extSubjectAltName(){let t=this.findExtension(s2l);return t?new m0e.X509SubjectAlternativeNameExtension(t):void 0}get extAuthorityKeyID(){let t=this.findExtension(a2l);return t?new m0e.X509AuthorityKeyIDExtension(t):void 0}get extSubjectKeyID(){let t=this.findExtension(n2l);return t?new m0e.X509SubjectKeyIDExtension(t):void 0}get extSCT(){let t=this.findExtension(QO.EXTENSION_OID_SCT);return t?new m0e.X509SCTExtension(t):void 0}get isCA(){let t=this.extBasicConstraints?.isCA||!1;return this.extKeyUsage?t&&this.extKeyUsage.keyCertSign:t}extension(t){let r=this.findExtension(t);return r?new m0e.X509Extension(r):void 0}verify(t){let r=t?.publicKey||this.publicKey,n=ffs.createPublicKey(r);return ffs.verify(this.tbsCertificate.toDER(),n,this.signatureValue,this.signatureAlgorithm)}validForDate(t){return this.notBefore<=t&&t<=this.notAfter}equals(t){return this.root.toDER().equals(t.root.toDER())}clone(){let t=this.root.toDER(),r=Buffer.alloc(t.length);return t.copy(r),e.parse(r)}findExtension(t){return this.extensions.find(r=>r.subs[0].toOID()===t)}get tbsCertificateObj(){return this.root.subs[0]}get signatureAlgorithmObj(){return this.root.subs[1]}get signatureValueObj(){return this.root.subs[2]}get versionObj(){return this.tbsCertificateObj.subs[0]}get serialNumberObj(){return this.tbsCertificateObj.subs[1]}get issuerObj(){return this.tbsCertificateObj.subs[3]}get validityObj(){return this.tbsCertificateObj.subs[4]}get subjectObj(){return this.tbsCertificateObj.subs[5]}get subjectPublicKeyInfoObj(){return this.tbsCertificateObj.subs[6]}get extensionsObj(){return this.tbsCertificateObj.subs.find(t=>t.tag.isContextSpecific(3))}};QO.X509Certificate=gKr});var Cfs=H(Fue=>{"use strict";Object.defineProperty(Fue,"__esModule",{value:!0});Fue.X509SCTExtension=Fue.X509Certificate=Fue.EXTENSION_OID_SCT=void 0;var mfs=hfs();Object.defineProperty(Fue,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return mfs.EXTENSION_OID_SCT}});Object.defineProperty(Fue,"X509Certificate",{enumerable:!0,get:function(){return mfs.X509Certificate}});var c2l=uKr();Object.defineProperty(Fue,"X509SCTExtension",{enumerable:!0,get:function(){return c2l.X509SCTExtension}})});var jV=H(j0=>{"use strict";var l2l=j0&&j0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),u2l=j0&&j0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),w7e=j0&&j0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&l2l(t,e,r);return u2l(t,e),t};Object.defineProperty(j0,"__esModule",{value:!0});j0.X509SCTExtension=j0.X509Certificate=j0.EXTENSION_OID_SCT=j0.ByteStream=j0.RFC3161Timestamp=j0.pem=j0.json=j0.encoding=j0.dsse=j0.crypto=j0.ASN1Obj=void 0;var g2l=IFt();Object.defineProperty(j0,"ASN1Obj",{enumerable:!0,get:function(){return g2l.ASN1Obj}});j0.crypto=w7e(GGe());j0.dsse=w7e(nfs());j0.encoding=w7e(ofs());j0.json=w7e(afs());j0.pem=w7e(zUr());var A2l=Afs();Object.defineProperty(j0,"RFC3161Timestamp",{enumerable:!0,get:function(){return A2l.RFC3161Timestamp}});var d2l=S7e();Object.defineProperty(j0,"ByteStream",{enumerable:!0,get:function(){return d2l.ByteStream}});var AKr=Cfs();Object.defineProperty(j0,"EXTENSION_OID_SCT",{enumerable:!0,get:function(){return AKr.EXTENSION_OID_SCT}});Object.defineProperty(j0,"X509Certificate",{enumerable:!0,get:function(){return AKr.X509Certificate}});Object.defineProperty(j0,"X509SCTExtension",{enumerable:!0,get:function(){return AKr.X509SCTExtension}})});var _fs=H(dKr=>{"use strict";Object.defineProperty(dKr,"__esModule",{value:!0});dKr.extractJWTSubject=f2l;var p2l=jV();function f2l(e){let t=e.split(".",3),r=JSON.parse(p2l.encoding.base64Decode(t[1]));switch(r.iss){case"https://accounts.google.com":case"https://oauth2.sigstore.dev/auth":return r.email;default:return r.sub}}});var yfs=H((Vng,I2l)=>{I2l.exports={name:"@sigstore/sign",version:"3.1.0",description:"Sigstore signing library",main:"dist/index.js",types:"dist/index.d.ts",scripts:{clean:"shx rm -rf dist *.tsbuildinfo",build:"tsc --build",test:"jest"},files:["dist"],author:"bdehamer@github.com",license:"Apache-2.0",repository:{type:"git",url:"git+https://github.com/sigstore/sigstore-js.git"},bugs:{url:"https://github.com/sigstore/sigstore-js/issues"},homepage:"https://github.com/sigstore/sigstore-js/tree/main/packages/sign#readme",publishConfig:{provenance:!0},devDependencies:{"@sigstore/jest":"^0.0.0","@sigstore/mock":"^0.10.0","@sigstore/rekor-types":"^3.0.0","@types/make-fetch-happen":"^10.0.4","@types/promise-retry":"^1.1.6"},dependencies:{"@sigstore/bundle":"^3.1.0","@sigstore/core":"^2.0.0","@sigstore/protobuf-specs":"^0.4.0","make-fetch-happen":"^14.0.2","proc-log":"^5.0.0","promise-retry":"^2.0.1"},engines:{node:"^18.17.0 || >=20.5.0"}}});var Efs=H(ZGe=>{"use strict";var h2l=ZGe&&ZGe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZGe,"__esModule",{value:!0});ZGe.getUserAgent=void 0;var bfs=h2l(wt("os")),m2l=()=>{let e=yfs().version,t=process.version,r=bfs.default.platform(),n=bfs.default.arch();return`sigstore-js/${e} (Node ${t}) (${r}/${n})`};ZGe.getUserAgent=m2l});var Zue=H(tB=>{"use strict";var C2l=tB&&tB.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_2l=tB&&tB.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Sfs=tB&&tB.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(bFt,"__esModule",{value:!0});bFt.BaseBundleBuilder=void 0;var pKr=class{constructor(t){this.signer=t.signer,this.witnesses=t.witnesses}async create(t){let r=await this.prepare(t).then(A=>this.signer.sign(A)),n=await this.package(t,r),a=await Promise.all(this.witnesses.map(A=>A.testify(n.content,y2l(r.key)))),o=[],l=[];return a.forEach(({tlogEntries:A,rfc3161Timestamps:f})=>{o.push(...A??[]),l.push(...f??[])}),n.verificationMaterial.tlogEntries=o,n.verificationMaterial.timestampVerificationData={rfc3161Timestamps:l},n}async prepare(t){return t.data}};bFt.BaseBundleBuilder=pKr;function y2l(e){switch(e.$case){case"publicKey":return e.publicKey;case"x509Certificate":return e.certificate}}});var hKr=H(B6=>{"use strict";var b2l=B6&&B6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),E2l=B6&&B6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S2l=B6&&B6.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{"use strict";Object.defineProperty(EFt,"__esModule",{value:!0});EFt.DSSEBundleBuilder=void 0;var w2l=Zue(),T2l=fKr(),R2l=hKr(),mKr=class extends T2l.BaseBundleBuilder{constructor(t){super(t),this.certificateChain=t.certificateChain??!1}async prepare(t){let r=Bfs(t);return w2l.dsse.preAuthEncoding(r.type,r.data)}async package(t,r){return(0,R2l.toDSSEBundle)(Bfs(t),r,this.certificateChain)}};EFt.DSSEBundleBuilder=mKr;function Bfs(e){return{...e,type:e.type??""}}});var Tfs=H(SFt=>{"use strict";Object.defineProperty(SFt,"__esModule",{value:!0});SFt.MessageSignatureBundleBuilder=void 0;var N2l=fKr(),D2l=hKr(),CKr=class extends N2l.BaseBundleBuilder{constructor(t){super(t)}async package(t,r){return(0,D2l.toMessageSignatureBundle)(t,r)}};SFt.MessageSignatureBundleBuilder=CKr});var Rfs=H(LGe=>{"use strict";Object.defineProperty(LGe,"__esModule",{value:!0});LGe.MessageSignatureBundleBuilder=LGe.DSSEBundleBuilder=void 0;var k2l=wfs();Object.defineProperty(LGe,"DSSEBundleBuilder",{enumerable:!0,get:function(){return k2l.DSSEBundleBuilder}});var x2l=Tfs();Object.defineProperty(LGe,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return x2l.MessageSignatureBundleBuilder}})});var BFt=H(vFt=>{"use strict";Object.defineProperty(vFt,"__esModule",{value:!0});vFt.HTTPError=void 0;var _Kr=class extends Error{constructor({status:t,message:r,location:n}){super(`(${t}) ${r}`),this.statusCode=t,this.location=n}};vFt.HTTPError=_Kr});var VGe=H(R7e=>{"use strict";Object.defineProperty(R7e,"__esModule",{value:!0});R7e.InternalError=void 0;R7e.internalError=F2l;var G2l=BFt(),wFt=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.name=this.constructor.name,this.cause=n,this.code=t}};R7e.InternalError=wFt;function F2l(e,t,r){throw e instanceof G2l.HTTPError&&(r+=` - ${e.message}`),new wFt({code:t,message:r,cause:e})}});var yKr=H(PGe=>{"use strict";var Z2l=PGe&&PGe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PGe,"__esModule",{value:!0});PGe.constants=void 0;var L2l=Z2l(wt("zlib")),V2l=L2l.default.constants||{ZLIB_VERNUM:4736};PGe.constants=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},V2l))});var kfs=H(Rm=>{"use strict";var P2l=Rm&&Rm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),W2l=Rm&&Rm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),O2l=Rm&&Rm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;ae,bKr=Dfs?.writable===!0||Dfs?.set!==void 0?e=>{C0e.Buffer.concat=e?X2l:Q2l}:e=>{},_0e=Symbol("_superWrite"),y0e=class extends Error{code;errno;constructor(t,r){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,r??this.constructor)}get name(){return"ZlibError"}};Rm.ZlibError=y0e;var EKr=Symbol("flushFlag"),N7e=class extends H2l.Minipass{#e=!1;#t=!1;#n;#r;#i;#s;#o;get sawError(){return this.#e}get handle(){return this.#s}get flushFlag(){return this.#n}constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#n=t.flush??0,this.#r=t.finishFlush??0,this.#i=t.fullFlushFlag??0,typeof Nfs[r]!="function")throw new TypeError("Compression method not supported: "+r);try{this.#s=new Nfs[r](t)}catch(n){throw new y0e(n,this.constructor)}this.#o=n=>{this.#e||(this.#e=!0,this.close(),this.emit("error",n))},this.#s?.on("error",n=>this.#o(new y0e(n))),this.once("end",()=>this.close)}close(){this.#s&&(this.#s.close(),this.#s=void 0,this.emit("close"))}reset(){if(!this.#e)return(0,SKr.default)(this.#s,"zlib binding closed"),this.#s.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#i),this.write(Object.assign(C0e.Buffer.alloc(0),{[EKr]:t})))}end(t,r,n){return typeof t=="function"&&(n=t,r=void 0,t=void 0),typeof r=="function"&&(n=r,r=void 0),t&&(r?this.write(t,r):this.write(t)),this.flush(this.#r),this.#t=!0,super.end(n)}get ended(){return this.#t}[_0e](t){return super.write(t)}write(t,r,n){if(typeof r=="function"&&(n=r,r="utf8"),typeof t=="string"&&(t=C0e.Buffer.from(t,r)),this.#e)return;(0,SKr.default)(this.#s,"zlib binding closed");let a=this.#s._handle,o=a.close;a.close=()=>{};let l=this.#s.close;this.#s.close=()=>{},bKr(!0);let A;try{let I=typeof t[EKr]=="number"?t[EKr]:this.#n;A=this.#s._processChunk(t,I),bKr(!1)}catch(I){bKr(!1),this.#o(new y0e(I,this.write))}finally{this.#s&&(this.#s._handle=a,a.close=o,this.#s.close=l,this.#s.removeAllListeners("error"))}this.#s&&this.#s.on("error",I=>this.#o(new y0e(I,this.write)));let f;if(A)if(Array.isArray(A)&&A.length>0){let I=A[0];f=this[_0e](C0e.Buffer.from(I));for(let C=1;C{typeof a=="function"&&(o=a,a=this.flushFlag),this.flush(a),o?.()};try{this.handle.params(t,r)}finally{this.handle.flush=n}this.handle&&(this.#e=t,this.#t=r)}}}};Rm.Zlib=T6;var vKr=class extends T6{constructor(t){super(t,"Deflate")}};Rm.Deflate=vKr;var BKr=class extends T6{constructor(t){super(t,"Inflate")}};Rm.Inflate=BKr;var wKr=class extends T6{#e;constructor(t){super(t,"Gzip"),this.#e=t&&!!t.portable}[_0e](t){return this.#e?(this.#e=!1,t[9]=255,super[_0e](t)):super[_0e](t)}};Rm.Gzip=wKr;var TKr=class extends T6{constructor(t){super(t,"Gunzip")}};Rm.Gunzip=TKr;var RKr=class extends T6{constructor(t){super(t,"DeflateRaw")}};Rm.DeflateRaw=RKr;var NKr=class extends T6{constructor(t){super(t,"InflateRaw")}};Rm.InflateRaw=NKr;var DKr=class extends T6{constructor(t){super(t,"Unzip")}};Rm.Unzip=DKr;var TFt=class extends N7e{constructor(t,r){t=t||{},t.flush=t.flush||w6.constants.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||w6.constants.BROTLI_OPERATION_FINISH,t.fullFlushFlag=w6.constants.BROTLI_OPERATION_FLUSH,super(t,r)}},kKr=class extends TFt{constructor(t){super(t,"BrotliCompress")}};Rm.BrotliCompress=kKr;var xKr=class extends TFt{constructor(t){super(t,"BrotliDecompress")}};Rm.BrotliDecompress=xKr;var RFt=class extends N7e{constructor(t,r){t=t||{},t.flush=t.flush||w6.constants.ZSTD_e_continue,t.finishFlush=t.finishFlush||w6.constants.ZSTD_e_end,t.fullFlushFlag=w6.constants.ZSTD_e_flush,super(t,r)}},GKr=class extends RFt{constructor(t){super(t,"ZstdCompress")}};Rm.ZstdCompress=GKr;var FKr=class extends RFt{constructor(t){super(t,"ZstdDecompress")}};Rm.ZstdDecompress=FKr});var FFt=H((jng,Ofs)=>{"use strict";var xfs=typeof process=="object"&&process?process:{stdout:null,stderr:null},J2l=wt("events"),Gfs=wt("stream"),Ffs=wt("string_decoder").StringDecoder,Kte=Symbol("EOF"),jte=Symbol("maybeEmitEnd"),Lue=Symbol("emittedEnd"),NFt=Symbol("emittingEnd"),D7e=Symbol("emittedError"),DFt=Symbol("closed"),Zfs=Symbol("read"),kFt=Symbol("flush"),Lfs=Symbol("flushChunk"),zV=Symbol("encoding"),zte=Symbol("decoder"),xFt=Symbol("flowing"),k7e=Symbol("paused"),WGe=Symbol("resume"),SD=Symbol("bufferLength"),ZKr=Symbol("bufferPush"),LKr=Symbol("bufferShift"),sF=Symbol("objectMode"),oF=Symbol("destroyed"),VKr=Symbol("emitData"),Vfs=Symbol("emitEnd"),PKr=Symbol("emitEnd2"),qte=Symbol("async"),x7e=e=>Promise.resolve().then(e),Pfs=global._MP_NO_ITERATOR_SYMBOLS_!=="1",U2l=Pfs&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),K2l=Pfs&&Symbol.iterator||Symbol("iterator not implemented"),j2l=e=>e==="end"||e==="finish"||e==="prefinish",z2l=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,q2l=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),GFt=class{constructor(t,r,n){this.src=t,this.dest=r,this.opts=n,this.ondrain=()=>t[WGe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},WKr=class extends GFt{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,n){super(t,r,n),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};Ofs.exports=class Wfs extends Gfs{constructor(t){super(),this[xFt]=!1,this[k7e]=!1,this.pipes=[],this.buffer=[],this[sF]=t&&t.objectMode||!1,this[sF]?this[zV]=null:this[zV]=t&&t.encoding||null,this[zV]==="buffer"&&(this[zV]=null),this[qte]=t&&!!t.async||!1,this[zte]=this[zV]?new Ffs(this[zV]):null,this[Kte]=!1,this[Lue]=!1,this[NFt]=!1,this[DFt]=!1,this[D7e]=null,this.writable=!0,this.readable=!0,this[SD]=0,this[oF]=!1}get bufferLength(){return this[SD]}get encoding(){return this[zV]}set encoding(t){if(this[sF])throw new Error("cannot set encoding in objectMode");if(this[zV]&&t!==this[zV]&&(this[zte]&&this[zte].lastNeed||this[SD]))throw new Error("cannot change encoding");this[zV]!==t&&(this[zte]=t?new Ffs(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[zte].write(r)))),this[zV]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[sF]}set objectMode(t){this[sF]=this[sF]||!!t}get async(){return this[qte]}set async(t){this[qte]=this[qte]||!!t}write(t,r,n){if(this[Kte])throw new Error("write after end");if(this[oF])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=this[qte]?x7e:o=>o();return!this[sF]&&!Buffer.isBuffer(t)&&(q2l(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):z2l(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[sF]?(this.flowing&&this[SD]!==0&&this[kFt](!0),this.flowing?this.emit("data",t):this[ZKr](t),this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing):t.length?(typeof t=="string"&&!(r===this[zV]&&!this[zte].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[zV]&&(t=this[zte].write(t)),this.flowing&&this[SD]!==0&&this[kFt](!0),this.flowing?this.emit("data",t):this[ZKr](t),this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing):(this[SD]!==0&&this.emit("readable"),n&&a(n),this.flowing)}read(t){if(this[oF])return null;if(this[SD]===0||t===0||t>this[SD])return this[jte](),null;this[sF]&&(t=null),this.buffer.length>1&&!this[sF]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[SD])]);let r=this[Zfs](t||null,this.buffer[0]);return this[jte](),r}[Zfs](t,r){return t===r.length||t===null?this[LKr]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[SD]-=t),this.emit("data",r),!this.buffer.length&&!this[Kte]&&this.emit("drain"),r}end(t,r,n){return typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r),n&&this.once("end",n),this[Kte]=!0,this.writable=!1,(this.flowing||!this[k7e])&&this[jte](),this}[WGe](){this[oF]||(this[k7e]=!1,this[xFt]=!0,this.emit("resume"),this.buffer.length?this[kFt]():this[Kte]?this[jte]():this.emit("drain"))}resume(){return this[WGe]()}pause(){this[xFt]=!1,this[k7e]=!0}get destroyed(){return this[oF]}get flowing(){return this[xFt]}get paused(){return this[k7e]}[ZKr](t){this[sF]?this[SD]+=1:this[SD]+=t.length,this.buffer.push(t)}[LKr](){return this.buffer.length&&(this[sF]?this[SD]-=1:this[SD]-=this.buffer[0].length),this.buffer.shift()}[kFt](t){do;while(this[Lfs](this[LKr]()));!t&&!this.buffer.length&&!this[Kte]&&this.emit("drain")}[Lfs](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[oF])return;let n=this[Lue];return r=r||{},t===xfs.stdout||t===xfs.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&t.end():(this.pipes.push(r.proxyErrors?new WKr(this,t,r):new GFt(this,t,r)),this[qte]?x7e(()=>this[WGe]()):this[WGe]()),t}unpipe(t){let r=this.pipes.find(n=>n.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let n=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[WGe]():t==="readable"&&this[SD]!==0?super.emit("readable"):j2l(t)&&this[Lue]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[D7e]&&(this[qte]?x7e(()=>r.call(this,this[D7e])):r.call(this,this[D7e])),n}get emittedEnd(){return this[Lue]}[jte](){!this[NFt]&&!this[Lue]&&!this[oF]&&this.buffer.length===0&&this[Kte]&&(this[NFt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[DFt]&&this.emit("close"),this[NFt]=!1)}emit(t,r,...n){if(t!=="error"&&t!=="close"&&t!==oF&&this[oF])return;if(t==="data")return r?this[qte]?x7e(()=>this[VKr](r)):this[VKr](r):!1;if(t==="end")return this[Vfs]();if(t==="close"){if(this[DFt]=!0,!this[Lue]&&!this[oF])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[D7e]=r;let o=super.emit("error",r);return this[jte](),o}else if(t==="resume"){let o=super.emit("resume");return this[jte](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...n);return this[jte](),a}[VKr](t){for(let n of this.pipes)n.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[jte](),r}[Vfs](){this[Lue]||(this[Lue]=!0,this.readable=!1,this[qte]?x7e(()=>this[PKr]()):this[PKr]())}[PKr](){if(this[zte]){let r=this[zte].end();if(r){for(let n of this.pipes)n.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[sF]||(t.dataLength=0);let r=this.promise();return this.on("data",n=>{t.push(n),this[sF]||(t.dataLength+=n.length)}),r.then(()=>t)}concat(){return this[sF]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[sF]?Promise.reject(new Error("cannot concat in objectMode")):this[zV]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(oF,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>t())})}[U2l](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[Kte])return Promise.resolve({done:!0});let n=null,a=null,o=I=>{this.removeListener("data",l),this.removeListener("end",A),a(I)},l=I=>{this.removeListener("error",o),this.removeListener("end",A),this.pause(),n({value:I,done:!!this[Kte]})},A=()=>{this.removeListener("error",o),this.removeListener("data",l),n({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((I,C)=>{a=C,n=I,this.once(oF,f),this.once("error",o),this.once("end",A),this.once("data",l)})}}}[K2l](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[oF]?(t?this.emit("error",t):this.emit(oF),this):(this[oF]=!0,this.buffer.length=0,this[SD]=0,typeof this.close=="function"&&!this[DFt]&&this.close(),t?this.emit("error",t):this.emit(oF),this)}static isStream(t){return!!t&&(t instanceof Wfs||t instanceof Gfs||t instanceof J2l&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var Hfs=H((zng,Mfs)=>{var $2l=FFt(),G7e=class extends Error{constructor(t,r){super(`Bad data size: expected ${r} bytes, but got ${t}`),this.expect=r,this.found=t,this.code="EBADSIZE",Error.captureStackTrace(this,this.constructor)}get name(){return"SizeError"}},ZFt=class extends $2l{constructor(t={}){if(super(t),t.objectMode)throw new TypeError(`${this.constructor.name} streams only work with string and buffer data`);if(this.found=0,this.expect=t.size,typeof this.expect!="number"||this.expect>Number.MAX_SAFE_INTEGER||isNaN(this.expect)||this.expect<0||!isFinite(this.expect)||this.expect!==Math.floor(this.expect))throw new Error("invalid expected size: "+this.expect)}write(t,r,n){let a=Buffer.isBuffer(t)?t:typeof t=="string"?Buffer.from(t,typeof r=="string"?r:"utf8"):t;return Buffer.isBuffer(a)?(this.found+=a.length,this.found>this.expect&&this.emit("error",new G7e(this.found,this.expect)),super.write(t,r,n)):(this.emit("error",new TypeError(`${this.constructor.name} streams only work with string and buffer data`)),!1)}emit(t,...r){return t==="end"&&this.found!==this.expect&&this.emit("error",new G7e(this.found,this.expect)),super.emit(t,...r)}};ZFt.SizeError=G7e;Mfs.exports=ZFt});var Qfs=H((qng,Yfs)=>{"use strict";var{Minipass:eSl}=rF(),OKr=Symbol("type"),$te=Symbol("buffer"),LFt=class e{constructor(t,r){this[OKr]="";let n=[],a=0;if(t){let l=t,A=Number(l.length);for(let f=0;f{"use strict";var MKr=class extends Error{constructor(t,r,n){super(t),this.code="FETCH_ERROR",n&&Object.assign(this,n),this.errno=this.code,this.type=this.code==="EBADSIZE"&&this.found>this.expect?"max-size":r,this.message=t,Error.captureStackTrace(this,this.constructor)}get name(){return"FetchError"}set name(t){}get[Symbol.toStringTag](){return"FetchError"}};Xfs.exports=MKr});var ere=H((eig,Jfs)=>{"use strict";var VFt=wt("buffer"),OGe=VFt.Buffer,VH={},PH;for(PH in VFt)VFt.hasOwnProperty(PH)&&(PH==="SlowBuffer"||PH==="Buffer"||(VH[PH]=VFt[PH]));var MGe=VH.Buffer={};for(PH in OGe)OGe.hasOwnProperty(PH)&&(PH==="allocUnsafe"||PH==="allocUnsafeSlow"||(MGe[PH]=OGe[PH]));VH.Buffer.prototype=OGe.prototype;(!MGe.from||MGe.from===Uint8Array.from)&&(MGe.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return OGe(e,t,r)});MGe.alloc||(MGe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=OGe(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!VH.kStringMaxLength)try{VH.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}VH.constants||(VH.constants={MAX_LENGTH:VH.kMaxLength},VH.kStringMaxLength&&(VH.constants.MAX_STRING_LENGTH=VH.kStringMaxLength));Jfs.exports=VH});var Kfs=H(XKr=>{"use strict";var Ufs="\uFEFF";XKr.PrependBOM=YKr;function YKr(e,t){this.encoder=e,this.addBOM=!0}YKr.prototype.write=function(e){return this.addBOM&&(e=Ufs+e,this.addBOM=!1),this.encoder.write(e)};YKr.prototype.end=function(){return this.encoder.end()};XKr.StripBOM=QKr;function QKr(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}QKr.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===Ufs&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};QKr.prototype.end=function(){return this.decoder.end()}});var zfs=H((rig,jfs)=>{"use strict";var b0e=ere().Buffer;jfs.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:UKr};function UKr(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=zKr:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=qKr,b0e.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=$Kr,this.defaultCharUnicode=t.defaultCharUnicode))}UKr.prototype.encoder=jKr;UKr.prototype.decoder=KKr;var JKr=wt("string_decoder").StringDecoder;JKr.prototype.end||(JKr.prototype.end=function(){});function KKr(e,t){this.decoder=new JKr(t.enc)}KKr.prototype.write=function(e){return b0e.isBuffer(e)||(e=b0e.from(e)),this.decoder.write(e)};KKr.prototype.end=function(){return this.decoder.end()};function jKr(e,t){this.enc=t.enc}jKr.prototype.write=function(e){return b0e.from(e,this.enc)};jKr.prototype.end=function(){};function zKr(e,t){this.prevStr=""}zKr.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),b0e.from(e,"base64")};zKr.prototype.end=function(){return b0e.from(this.prevStr,"base64")};function qKr(e,t){}qKr.prototype.write=function(e){for(var t=b0e.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(a&63)):(t[r++]=224+(a>>>12),t[r++]=128+(a>>>6&63),t[r++]=128+(a&63))}return t.slice(0,r)};qKr.prototype.end=function(){};function $Kr(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}$Kr.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,a="",o=0;o0&&(a+=this.defaultCharUnicode,r=0),l<128?a+=String.fromCharCode(l):l<224?(t=l&31,r=1,n=1):l<240?(t=l&15,r=2,n=1):a+=this.defaultCharUnicode):r>0?(t=t<<6|l&63,r--,n++,r===0&&(n===2&&t<128&&t>0?a+=this.defaultCharUnicode:n===3&&t<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(t))):a+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,a};$Kr.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var eIs=H(Vue=>{"use strict";var PFt=ere().Buffer;Vue._utf32=e8r;function e8r(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}Vue.utf32le={type:"_utf32",isLE:!0};Vue.utf32be={type:"_utf32",isLE:!1};Vue.ucs4le="utf32le";Vue.ucs4be="utf32be";e8r.prototype.encoder=t8r;e8r.prototype.decoder=r8r;function t8r(e,t){this.isLE=t.isLE,this.highSurrogate=0}t8r.prototype.write=function(e){for(var t=PFt.from(e,"ucs2"),r=PFt.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,o=0;o0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var a=55296|r>>10;e[t++]=a&255,e[t++]=a>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}r8r.prototype.end=function(){this.overflow.length=0};Vue.utf32=n8r;Vue.ucs4="utf32";function n8r(e,t){this.iconv=t}n8r.prototype.encoder=i8r;n8r.prototype.decoder=s8r;function i8r(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}i8r.prototype.write=function(e){return this.encoder.write(e)};i8r.prototype.end=function(){return this.encoder.end()};function s8r(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}s8r.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=$fs(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&o++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&A++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&l++,r.length=0,n++,n>=100)break e}return A-o>l-a?"utf-32be":A-o{"use strict";var tIs=ere().Buffer;g8r.utf16be=WFt;function WFt(){}WFt.prototype.encoder=o8r;WFt.prototype.decoder=a8r;WFt.prototype.bomAware=!0;function o8r(){}o8r.prototype.write=function(e){for(var t=tIs.from(e,"ucs2"),r=0;r=100)break e}return o>a?"utf-16be":o{"use strict";var R6=ere().Buffer;HFt.utf7=OFt;HFt.unicode11utf7="utf7";function OFt(e,t){this.iconv=t}OFt.prototype.encoder=d8r;OFt.prototype.decoder=p8r;OFt.prototype.bomAware=!0;var tSl=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function d8r(e,t){this.iconv=t.iconv}d8r.prototype.write=function(e){return R6.from(e.replace(tSl,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};d8r.prototype.end=function(){};function p8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var rSl=/[A-Za-z0-9\/+]/,f8r=[];for(F7e=0;F7e<256;F7e++)f8r[F7e]=rSl.test(String.fromCharCode(F7e));var F7e,nSl=43,E0e=45,A8r=38;p8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(R6.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};HFt.utf7imap=MFt;function MFt(e,t){this.iconv=t}MFt.prototype.encoder=I8r;MFt.prototype.decoder=h8r;MFt.prototype.bomAware=!0;function I8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=R6.alloc(6),this.base64AccumIdx=0}I8r.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,a=R6.alloc(e.length*5+10),o=0,l=0;l0&&(o+=a.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),o),n=0),a[o++]=E0e,t=!1),t||(a[o++]=A,A===A8r&&(a[o++]=E0e))):(t||(a[o++]=A8r,t=!0),t&&(r[n++]=A>>8,r[n++]=A&255,n==r.length&&(o+=a.write(r.toString("base64").replace(/\//g,","),o),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,a.slice(0,o)};I8r.prototype.end=function(){var e=R6.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=E0e,this.inBase64=!1),e.slice(0,t)};function h8r(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var iIs=f8r.slice();iIs[44]=!0;h8r.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,a=this.base64Accum,o=0;o0&&(e=this.iconv.decode(R6.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var aIs=H(oIs=>{"use strict";var YFt=ere().Buffer;oIs._sbcs=m8r;function m8r(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=YFt.from(e.chars,"ucs2");for(var a=YFt.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";cIs.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var gIs=H((cig,uIs)=>{"use strict";uIs.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b -\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b -\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var pIs=H(dIs=>{"use strict";var y8r=ere().Buffer;dIs._dbcs=tre;var px=-1,AIs=-2,WH=-10,pL=-1e3,HGe=new Array(256),Z7e=-1;for(QFt=0;QFt<256;QFt++)HGe[QFt]=px;var QFt;function tre(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=HGe.slice(0),this.decodeTableSeq=[];for(var n=0;npL)throw new Error("gb18030 decode tables conflict at byte 2");for(var I=this.decodeTables[pL-A[f]],C=129;C<=254;C++){if(I[C]===px)I[C]=pL-o;else{if(I[C]===pL-o)continue;if(I[C]>pL)throw new Error("gb18030 decode tables conflict at byte 3")}for(var b=this.decodeTables[pL-I[C]],E=48;E<=57;E++)b[E]===px&&(b[E]=AIs)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var N={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var a=r[t[n]];if(a==px)r[t[n]]=pL-this.decodeTables.length,this.decodeTables.push(r=HGe.slice(0));else if(a<=pL)r=this.decodeTables[pL-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};tre.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};tre.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=HGe.slice(0)),this.encodeTable[t]};tre.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=WH?this.encodeTableSeq[WH-r[n]][Z7e]=t:r[n]==px&&(r[n]=t)};tre.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),a=r&255,o;n[a]<=WH?o=this.encodeTableSeq[WH-n[a]]:(o={},n[a]!==px&&(o[Z7e]=n[a]),n[a]=WH-this.encodeTableSeq.length,this.encodeTableSeq.push(o));for(var l=1;l=0)this._setEncodeChar(A,f),a=!0;else if(A<=pL){var I=pL-A;if(!o[I]){var C=f<<8>>>0;this._fillEncodeTable(I,C,r)?a=!0:o[I]=!0}}else A<=WH&&(this._setEncodeSequence(this.decodeTableSeq[WH-A],f),a=!0)}return a};function XFt(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}XFt.prototype.write=function(e){for(var t=y8r.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,a=-1,o=0,l=0;;){if(a===-1){if(o==e.length)break;var A=e.charCodeAt(o++)}else{var A=a;a=-1}if(55296<=A&&A<57344)if(A<56320)if(r===-1){r=A;continue}else r=A,A=px;else r!==-1?(A=65536+(r-55296)*1024+(A-56320),r=-1):A=px;else r!==-1&&(a=A,A=px,r=-1);var f=px;if(n!==void 0&&A!=px){var I=n[A];if(typeof I=="object"){n=I;continue}else typeof I=="number"?f=I:I==null&&(I=n[Z7e],I!==void 0&&(f=I,a=A));n=void 0}else if(A>=0){var C=this.encodeTable[A>>8];if(C!==void 0&&(f=C[A&255]),f<=WH){n=this.encodeTableSeq[WH-f];continue}if(f==px&&this.gb18030){var b=E8r(this.gb18030.uChars,A);if(b!=-1){var f=this.gb18030.gbChars[b]+(A-this.gb18030.uChars[b]);t[l++]=129+Math.floor(f/12600),f=f%12600,t[l++]=48+Math.floor(f/1260),f=f%1260,t[l++]=129+Math.floor(f/10),f=f%10,t[l++]=48+f;continue}}}f===px&&(f=this.defaultCharSingleByte),f<256?t[l++]=f:f<65536?(t[l++]=f>>8,t[l++]=f&255):f<16777216?(t[l++]=f>>16,t[l++]=f>>8&255,t[l++]=f&255):(t[l++]=f>>>24,t[l++]=f>>>16&255,t[l++]=f>>>8&255,t[l++]=f&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,l)};XFt.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=y8r.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[Z7e];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};XFt.prototype.findIdx=E8r;function b8r(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}b8r.prototype.write=function(e){for(var t=y8r.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,a=this.prevBytes.length,o=-this.prevBytes.length,l,A=0,f=0;A=0?e[A]:n[A+a],l=this.decodeTables[r][I];if(!(l>=0))if(l===px)l=this.defaultCharUnicode.charCodeAt(0),A=o;else if(l===AIs){if(A>=3)var C=(e[A-3]-129)*12600+(e[A-2]-48)*1260+(e[A-1]-129)*10+(I-48);else var C=(n[A-3+a]-129)*12600+((A-2>=0?e[A-2]:n[A-2+a])-48)*1260+((A-1>=0?e[A-1]:n[A-1+a])-129)*10+(I-48);var b=E8r(this.gb18030.gbChars,C);l=this.gb18030.uChars[b]+C-this.gb18030.gbChars[b]}else if(l<=pL){r=pL-l;continue}else if(l<=WH){for(var E=this.decodeTableSeq[WH-l],N=0;N>8;l=E[E.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+l+" at "+r+"/"+I);if(l>=65536){l-=65536;var B=55296|l>>10;t[f++]=B&255,t[f++]=B>>8,l=56320|l&1023}t[f++]=l&255,t[f++]=l>>8,r=0,o=A+1}return this.nodeIdx=r,this.prevBytes=o>=0?Array.prototype.slice.call(e,o):n.slice(o+a).concat(Array.prototype.slice.call(e)),t.slice(0,f).toString("ucs2")};b8r.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function E8r(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[a]<=t?r=a:n=a}return r}});var fIs=H((uig,iSl)=>{iSl.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var IIs=H((gig,sSl)=>{sSl.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var JFt=H((Aig,oSl)=>{oSl.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var S8r=H((dig,aSl)=>{aSl.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var hIs=H((pig,cSl)=>{cSl.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var mIs=H((fig,lSl)=>{lSl.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var v8r=H((Iig,uSl)=>{uSl.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var CIs=H((hig,gSl)=>{gSl.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var yIs=H((mig,_Is)=>{"use strict";_Is.exports={shiftjis:{type:"_dbcs",table:function(){return fIs()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return IIs()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return JFt()}},gbk:{type:"_dbcs",table:function(){return JFt().concat(S8r())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return JFt().concat(S8r())},gb18030:function(){return hIs()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return mIs()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return v8r()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return v8r().concat(CIs())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var SIs=H((EIs,YGe)=>{"use strict";var bIs=[zfs(),eIs(),nIs(),sIs(),aIs(),lIs(),gIs(),pIs(),yIs()];for(UFt=0;UFt{"use strict";var vIs=ere().Buffer;BIs.exports=function(e){var t=e.Transform;function r(a,o){this.conv=a,o=o||{},o.decodeStrings=!1,t.call(this,o)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,o,l){if(typeof a!="string")return l(new Error("Iconv encoding stream needs strings as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A),l()}catch(f){l(f)}},r.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o),a()}catch(l){a(l)}},r.prototype.collect=function(a){var o=[];return this.on("error",a),this.on("data",function(l){o.push(l)}),this.on("end",function(){a(null,vIs.concat(o))}),this};function n(a,o){this.conv=a,o=o||{},o.encoding=this.encoding="utf8",t.call(this,o)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(a,o,l){if(!vIs.isBuffer(a)&&!(a instanceof Uint8Array))return l(new Error("Iconv decoding stream needs buffers as its input."));try{var A=this.conv.write(a);A&&A.length&&this.push(A,this.encoding),l()}catch(f){l(f)}},n.prototype._flush=function(a){try{var o=this.conv.end();o&&o.length&&this.push(o,this.encoding),a()}catch(l){a(l)}},n.prototype.collect=function(a){var o="";return this.on("error",a),this.on("data",function(l){o+=l}),this.on("end",function(){a(null,o)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var DIs=H((_ig,NIs)=>{"use strict";var TIs=ere().Buffer,RIs=Kfs(),zI=NIs.exports;zI.encodings=null;zI.defaultCharUnicode="\uFFFD";zI.defaultCharSingleByte="?";zI.encode=function(t,r,n){t=""+(t||"");var a=zI.getEncoder(r,n),o=a.write(t),l=a.end();return l&&l.length>0?TIs.concat([o,l]):o};zI.decode=function(t,r,n){typeof t=="string"&&(zI.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),zI.skipDecodeWarning=!0),t=TIs.from(""+(t||""),"binary"));var a=zI.getDecoder(r,n),o=a.write(t),l=a.end();return l?o+l:o};zI.encodingExists=function(t){try{return zI.getCodec(t),!0}catch{return!1}};zI.toEncoding=zI.encode;zI.fromEncoding=zI.decode;zI._codecDataCache={};zI.getCodec=function(t){zI.encodings||(zI.encodings=SIs());for(var r=zI._canonicalizeEncoding(t),n={};;){var a=zI._codecDataCache[r];if(a)return a;var o=zI.encodings[r];switch(typeof o){case"string":r=o;break;case"object":for(var l in o)n[l]=o[l];n.encodingName||(n.encodingName=r),r=o.type;break;case"function":return n.encodingName||(n.encodingName=r),a=new o(n,zI),zI._codecDataCache[n.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};zI._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};zI.getEncoder=function(t,r){var n=zI.getCodec(t),a=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(a=new RIs.PrependBOM(a,r)),a};zI.getDecoder=function(t,r){var n=zI.getCodec(t),a=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(a=new RIs.StripBOM(a,r)),a};zI.enableStreamingAPI=function(t){if(!zI.supportsStreams){var r=wIs()(t);zI.IconvLiteEncoderStream=r.IconvLiteEncoderStream,zI.IconvLiteDecoderStream=r.IconvLiteDecoderStream,zI.encodeStream=function(a,o){return new zI.IconvLiteEncoderStream(zI.getEncoder(a,o),o)},zI.decodeStream=function(a,o){return new zI.IconvLiteDecoderStream(zI.getDecoder(a,o),o)},zI.supportsStreams=!0}};var jFt;try{jFt=wt("stream")}catch{}jFt&&jFt.Transform?zI.enableStreamingAPI(jFt):zI.encodeStream=zI.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var GIs=H((yig,xIs)=>{"use strict";var zFt=DIs();xIs.exports.convert=ASl;function ASl(e,t,r){r=kIs(r||"UTF-8"),t=kIs(t||"UTF-8"),e=e||"";var n;if(r!=="UTF-8"&&typeof e=="string"&&(e=Buffer.from(e,"binary")),r===t)typeof e=="string"?n=Buffer.from(e):n=e;else try{n=dSl(e,t,r)}catch(a){console.error(a),n=e}return typeof n=="string"&&(n=Buffer.from(n,"utf-8")),n}function dSl(e,t,r){return t==="UTF-8"?zFt.decode(e,r):r==="UTF-8"?zFt.encode(e,t):zFt.encode(zFt.decode(e,r),t)}function kIs(e){return(e||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}});var $Ft=H((big,LIs)=>{"use strict";var{Minipass:N6}=rF(),B8r=Hfs(),ZIs=Qfs(),{BUFFER:pSl}=ZIs,L7e=HKr(),w8r;try{w8r=GIs().convert}catch{}var rre=Symbol("Body internals"),S0e=Symbol("consumeBody"),qFt=class{constructor(t,r={}){let{size:n=0,timeout:a=0}=r,o=t==null?null:FIs(t)?Buffer.from(t.toString()):V7e(t)||Buffer.isBuffer(t)?t:Object.prototype.toString.call(t)==="[object ArrayBuffer]"?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):N6.isStream(t)?t:Buffer.from(String(t));this[rre]={body:o,disturbed:!1,error:null},this.size=n,this.timeout=a,N6.isStream(o)&&o.on("error",l=>{let A=l.name==="AbortError"?l:new L7e(`Invalid response while trying to fetch ${this.url}: ${l.message}`,"system",l);this[rre].error=A})}get body(){return this[rre].body}get bodyUsed(){return this[rre].disturbed}arrayBuffer(){return this[S0e]().then(t=>t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength))}blob(){let t=this.headers&&this.headers.get("content-type")||"";return this[S0e]().then(r=>Object.assign(new ZIs([],{type:t.toLowerCase()}),{[pSl]:r}))}async json(){let t=await this[S0e]();try{return JSON.parse(t.toString())}catch(r){throw new L7e(`invalid json response body at ${this.url} reason: ${r.message}`,"invalid-json")}}text(){return this[S0e]().then(t=>t.toString())}buffer(){return this[S0e]()}textConverted(){return this[S0e]().then(t=>fSl(t,this.headers))}[S0e](){if(this[rre].disturbed)return Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[rre].disturbed=!0,this[rre].error)return Promise.reject(this[rre].error);if(this.body===null)return Promise.resolve(Buffer.alloc(0));if(Buffer.isBuffer(this.body))return Promise.resolve(this.body);let t=V7e(this.body)?this.body.stream():this.body;if(!N6.isStream(t))return Promise.resolve(Buffer.alloc(0));let r=this.size&&t instanceof B8r||!this.size&&t instanceof N6&&!(t instanceof B8r)?t:this.size?new B8r({size:this.size}):new N6,n=this.timeout&&r.writable?setTimeout(()=>{r.emit("error",new L7e(`Response timeout while trying to fetch ${this.url} (over ${this.timeout}ms)`,"body-timeout"))},this.timeout):null;return n&&n.unref&&n.unref(),new Promise(a=>{r!==t&&(t.on("error",o=>r.emit("error",o)),t.pipe(r)),a()}).then(()=>r.concat()).then(a=>(clearTimeout(n),a)).catch(a=>{throw clearTimeout(n),a.name==="AbortError"||a.name==="FetchError"?a:a.name==="RangeError"?new L7e(`Could not create Buffer from response body for ${this.url}: ${a.message}`,"system",a):new L7e(`Invalid response body while trying to fetch ${this.url}: ${a.message}`,"system",a)})}static clone(t){if(t.bodyUsed)throw new Error("cannot clone body after it is used");let r=t.body;if(N6.isStream(r)&&typeof r.getBoundary!="function"){let n=new N6,a=new N6,o=new N6;return n.on("error",l=>{a.emit("error",l),o.emit("error",l)}),r.on("error",l=>n.emit("error",l)),n.pipe(a),n.pipe(o),r.pipe(n),t[rre].body=a,o}else return t.body}static extractContentType(t){return t==null?null:typeof t=="string"?"text/plain;charset=UTF-8":FIs(t)?"application/x-www-form-urlencoded;charset=UTF-8":V7e(t)?t.type||null:Buffer.isBuffer(t)||Object.prototype.toString.call(t)==="[object ArrayBuffer]"||ArrayBuffer.isView(t)?null:typeof t.getBoundary=="function"?`multipart/form-data;boundary=${t.getBoundary()}`:N6.isStream(t)?null:"text/plain;charset=UTF-8"}static getTotalBytes(t){let{body:r}=t;return r==null?0:V7e(r)?r.size:Buffer.isBuffer(r)?r.length:r&&typeof r.getLengthSync=="function"&&(r._lengthRetrievers&&r._lengthRetrievers.length===0||r.hasKnownLength&&r.hasKnownLength())?r.getLengthSync():null}static writeToStream(t,r){let{body:n}=r;return n==null?t.end():Buffer.isBuffer(n)||typeof n=="string"?t.end(n):(V7e(n)?n.stream():n).on("error",o=>t.emit("error",o)).pipe(t),t}};Object.defineProperties(qFt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});var FIs=e=>typeof e!="object"||typeof e.append!="function"||typeof e.delete!="function"||typeof e.get!="function"||typeof e.getAll!="function"||typeof e.has!="function"||typeof e.set!="function"?!1:e.constructor.name==="URLSearchParams"||Object.prototype.toString.call(e)==="[object URLSearchParams]"||typeof e.sort=="function",V7e=e=>typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&typeof e.constructor.name=="string"&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag]),fSl=(e,t)=>{if(typeof w8r!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=t&&t.get("content-type"),n="utf-8",a;r&&(a=/charset=([^;]*)/i.exec(r));let o=e.slice(0,1024).toString();return!a&&o&&(a=/{"use strict";var PIs=/[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/,R8r=/[^\t\x20-\x7e\x80-\xff]/,P7e=e=>{if(e=`${e}`,PIs.test(e)||e==="")throw new TypeError(`${e} is not a legal HTTP header name`)},VIs=e=>{if(e=`${e}`,R8r.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)},QGe=(e,t)=>{t=t.toLowerCase();for(let r in e)if(r.toLowerCase()===t)return r},Aw=Symbol("map"),eZt=class e{constructor(t=void 0){if(this[Aw]=Object.create(null),t instanceof e){let r=t.raw(),n=Object.keys(r);for(let a of n)for(let o of r[a])this.append(a,o);return}if(t!=null)if(typeof t=="object"){let r=t[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let n=[];for(let a of t){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");let o=Array.from(a);if(o.length!==2)throw new TypeError("Each header pair must be a name/value tuple");n.push(o)}for(let a of n)this.append(a[0],a[1])}else for(let n of Object.keys(t))this.append(n,t[n])}else throw new TypeError("Provided initializer must be an object")}get(t){t=`${t}`,P7e(t);let r=QGe(this[Aw],t);return r===void 0?null:this[Aw][r].join(", ")}forEach(t,r=void 0){let n=N8r(this);for(let a=0;aObject.keys(e[Aw]).sort().map(t==="key"?r=>r.toLowerCase():t==="value"?r=>e[Aw][r].join(", "):r=>[r.toLowerCase(),e[Aw][r].join(", ")]),T8r=Symbol("internal"),v0e=class e{constructor(t,r){this[T8r]={target:t,kind:r,index:0}}get[Symbol.toStringTag](){return"HeadersIterator"}next(){if(!this||Object.getPrototypeOf(this)!==e.prototype)throw new TypeError("Value of `this` is not a HeadersIterator");let{target:t,kind:r,index:n}=this[T8r],a=N8r(t,r),o=a.length;return n>=o?{value:void 0,done:!0}:(this[T8r].index++,{value:a[n],done:!1})}};Object.setPrototypeOf(v0e.prototype,Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));WIs.exports=eZt});var YIs=H((Sig,HIs)=>{"use strict";var ISl=wt("http"),{STATUS_CODES:hSl}=ISl,OIs=tZt(),MIs=$Ft(),{clone:mSl,extractContentType:CSl}=MIs,nre=Symbol("Response internals"),rZt=class e extends MIs{constructor(t=null,r={}){super(t,r);let n=r.status||200,a=new OIs(r.headers);if(t!=null&&!a.has("Content-Type")){let o=CSl(t);o&&a.append("Content-Type",o)}this[nre]={url:r.url,status:n,statusText:r.statusText||hSl[n],headers:a,counter:r.counter,trailer:Promise.resolve(r.trailer||new OIs)}}get trailer(){return this[nre].trailer}get url(){return this[nre].url||""}get status(){return this[nre].status}get ok(){return this[nre].status>=200&&this[nre].status<300}get redirected(){return this[nre].counter>0}get statusText(){return this[nre].statusText}get headers(){return this[nre].headers}clone(){return new e(mSl(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,trailer:this.trailer})}get[Symbol.toStringTag](){return"Response"}};HIs.exports=rZt;Object.defineProperties(rZt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var QIs=H((vig,_Sl)=>{_Sl.exports={name:"minipass-fetch",version:"4.0.1",description:"An implementation of window.fetch in Node.js using Minipass streams",license:"MIT",main:"lib/index.js",scripts:{"test:tls-fixtures":"./test/fixtures/tls/setup.sh",test:"tap",snap:"tap",lint:"npm run eslint",postlint:"template-oss-check",lintfix:"npm run eslint -- --fix",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},tap:{"coverage-map":"map.js","check-coverage":!0,"nyc-arg":["--exclude","tap-snapshots/**"]},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3","@ungap/url-search-params":"^0.2.2","abort-controller":"^3.0.0","abortcontroller-polyfill":"~1.7.3",encoding:"^0.1.13","form-data":"^4.0.0",nock:"^13.2.4",parted:"^0.1.1","string-to-arraybuffer":"^1.0.2",tap:"^16.0.0"},dependencies:{minipass:"^7.0.3","minipass-sized":"^1.0.3",minizlib:"^3.0.1"},optionalDependencies:{encoding:"^0.1.13"},repository:{type:"git",url:"git+https://github.com/npm/minipass-fetch.git"},keywords:["fetch","minipass","node-fetch","window.fetch"],files:["bin/","lib/"],engines:{node:"^18.17.0 || >=20.5.0"},author:"GitHub Inc.",templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.3",publish:"true"}}});var UIs=H((Big,JIs)=>{"use strict";var{URL:D8r}=wt("url"),{Minipass:ySl}=rF(),k8r=tZt(),{exportNodeCompatibleHeaders:bSl}=k8r,XIs=$Ft(),{clone:ESl,extractContentType:SSl,getTotalBytes:vSl}=XIs,BSl=QIs().version,wSl=`minipass-fetch/${BSl} (+https://github.com/isaacs/minipass-fetch)`,eJ=Symbol("Request internals"),nZt=e=>typeof e=="object"&&typeof e[eJ]=="object",TSl=e=>{let t=e&&typeof e=="object"&&Object.getPrototypeOf(e);return!!(t&&t.constructor.name==="AbortSignal")},iZt=class e extends XIs{constructor(t,r={}){let n=nZt(t)?new D8r(t.url):t&&t.href?new D8r(t.href):new D8r(`${t}`);nZt(t)?r={...t[eJ],...r}:(!t||typeof t=="string")&&(t={});let a=(r.method||t.method||"GET").toUpperCase(),o=a==="GET"||a==="HEAD";if((r.body!==null&&r.body!==void 0||nZt(t)&&t.body!==null)&&o)throw new TypeError("Request with GET/HEAD method cannot have body");let l=r.body!==null&&r.body!==void 0?r.body:nZt(t)&&t.body!==null?ESl(t):null;super(l,{timeout:r.timeout||t.timeout||0,size:r.size||t.size||0});let A=new k8r(r.headers||t.headers||{});if(l!=null&&!A.has("Content-Type")){let De=SSl(l);De&&A.append("Content-Type",De)}let f="signal"in r?r.signal:null;if(f!=null&&!TSl(f))throw new TypeError("Expected signal must be an instanceof AbortSignal");let{ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:X,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0",secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se}=r;this[eJ]={method:a,redirect:r.redirect||t.redirect||"follow",headers:A,parsedURL:n,signal:f,ca:I,cert:C,ciphers:b,clientCertEngine:E,crl:N,dhparam:B,ecdhCurve:F,family:Q,honorCipherOrder:X,key:ae,passphrase:ne,pfx:ce,rejectUnauthorized:fe,secureOptions:ue,secureProtocol:de,servername:be,sessionIdContext:Se},this.follow=r.follow!==void 0?r.follow:t.follow!==void 0?t.follow:20,this.compress=r.compress!==void 0?r.compress:t.compress!==void 0?t.compress:!0,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent}get method(){return this[eJ].method}get url(){return this[eJ].parsedURL.toString()}get headers(){return this[eJ].headers}get redirect(){return this[eJ].redirect}get signal(){return this[eJ].signal}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}static getNodeRequestOptions(t){let r=t[eJ].parsedURL,n=new k8r(t[eJ].headers);if(n.has("Accept")||n.set("Accept","*/*"),!/^https?:$/.test(r.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&ySl.isStream(t.body)&&typeof t.body.destroy!="function")throw new Error("Cancellation of streamed requests with AbortSignal is not supported");let a=(t.body===null||t.body===void 0)&&/^(POST|PUT)$/i.test(t.method)?"0":t.body!==null&&t.body!==void 0?vSl(t):null;a&&n.set("Content-Length",a+""),n.has("User-Agent")||n.set("User-Agent",wSl),t.compress&&!n.has("Accept-Encoding")&&n.set("Accept-Encoding","gzip,deflate");let o=typeof t.agent=="function"?t.agent(r):t.agent;!n.has("Connection")&&!o&&n.set("Connection","close");let{ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:X,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue}=t[eJ];return{...{auth:r.username||r.password?`${r.username}:${r.password}`:"",host:r.host,hostname:r.hostname,path:`${r.pathname}${r.search}`,port:r.port,protocol:r.protocol},method:t.method,headers:bSl(n),agent:o,ca:l,cert:A,ciphers:f,clientCertEngine:I,crl:C,dhparam:b,ecdhCurve:E,family:N,honorCipherOrder:B,key:F,passphrase:Q,pfx:X,rejectUnauthorized:ae,secureOptions:ne,secureProtocol:ce,servername:fe,sessionIdContext:ue,timeout:t.timeout}}};JIs.exports=iZt;Object.defineProperties(iZt.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}})});var jIs=H((wig,KIs)=>{"use strict";var x8r=class extends Error{constructor(t){super(t),this.code="FETCH_ABORTED",this.type="aborted",Error.captureStackTrace(this,this.constructor)}get name(){return"AbortError"}set name(t){}};KIs.exports=x8r});var M7e=H((Tig,$Is)=>{"use strict";var{URL:W7e}=wt("url"),RSl=wt("http"),NSl=wt("https"),XGe=kfs(),{Minipass:zIs}=rF(),DSl=$Ft(),{writeToStream:kSl,getTotalBytes:xSl}=DSl,B0e=YIs(),F8r=tZt(),{createHeadersLenient:qIs}=F8r,O7e=UIs(),{getNodeRequestOptions:GSl}=O7e,Pue=HKr(),G8r=jIs(),ire=async(e,t)=>{if(/^data:/.test(e)){let r=new O7e(e,t);return Promise.resolve().then(()=>new Promise((n,a)=>{let o,l;try{let{pathname:I,search:C}=new W7e(e),b=I.split(",");if(b.length<2)throw new Error("invalid data: URI");let E=b.shift(),N=/;base64$/.test(E);o=N?E.slice(0,-1*7):E;let B=decodeURIComponent(b.join(",")+C);l=N?Buffer.from(B,"base64"):Buffer.from(B)}catch(I){return a(new Pue(`[${r.method}] ${r.url} invalid URL, ${I.message}`,"system",I))}let{signal:A}=r;if(A&&A.aborted)return a(new G8r("The user aborted a request."));let f={"Content-Length":l.length};return o&&(f["Content-Type"]=o),n(new B0e(l,{headers:f}))}))}return new Promise((r,n)=>{let a=new O7e(e,t),o;try{o=GSl(a)}catch(B){return n(B)}let l=(o.protocol==="https:"?NSl:RSl).request,{signal:A}=a,f=null,I=()=>{let B=new G8r("The user aborted a request.");n(B),zIs.isStream(a.body)&&typeof a.body.destroy=="function"&&a.body.destroy(B),f&&f.body&&f.body.emit("error",B)};if(A&&A.aborted)return I();let C=()=>{I(),b()},b=()=>{E.abort(),A&&A.removeEventListener("abort",C),clearTimeout(N)},E=l(o);A&&A.addEventListener("abort",C);let N=null;a.timeout&&E.once("socket",()=>{N=setTimeout(()=>{n(new Pue(`network timeout at: ${a.url}`,"request-timeout")),b()},a.timeout)}),E.on("error",B=>{E.res&&E.res.emit("error",B),n(new Pue(`request to ${a.url} failed, reason: ${B.message}`,"system",B)),b()}),E.on("response",B=>{clearTimeout(N);let F=qIs(B.headers);if(ire.isRedirect(B.statusCode)){let fe=F.get("Location"),ue=null;try{ue=fe===null?null:new W7e(fe,a.url).toString()}catch{if(a.redirect!=="manual"){n(new Pue(`uri requested responds with an invalid redirect URL: ${fe}`,"invalid-redirect")),b();return}}if(a.redirect==="error"){n(new Pue(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),b();return}else if(a.redirect==="manual"){if(ue!==null)try{F.set("Location",ue)}catch(de){n(de)}}else if(a.redirect==="follow"&&ue!==null){if(a.counter>=a.follow){n(new Pue(`maximum redirect reached at: ${a.url}`,"max-redirect")),b();return}if(B.statusCode!==303&&a.body&&xSl(a)===null){n(new Pue("Cannot follow redirect with body being a readable stream","unsupported-redirect")),b();return}a.headers.set("host",new W7e(ue).host);let de={headers:new F8r(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout},be=new W7e(a.url),Se=new W7e(ue);be.hostname!==Se.hostname&&(de.headers.delete("authorization"),de.headers.delete("cookie")),(B.statusCode===303||(B.statusCode===301||B.statusCode===302)&&a.method==="POST")&&(de.method="GET",de.body=void 0,de.headers.delete("content-length")),r(ire(new O7e(ue,de))),b();return}}B.once("end",()=>A&&A.removeEventListener("abort",C));let Q=new zIs;Q.on("error",b),B.on("error",fe=>Q.emit("error",fe)),B.on("data",fe=>Q.write(fe)),B.on("end",()=>Q.end());let X={url:a.url,status:B.statusCode,statusText:B.statusMessage,headers:F,size:a.size,timeout:a.timeout,counter:a.counter,trailer:new Promise(fe=>B.on("end",()=>fe(qIs(B.trailers))))},ae=F.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||ae===null||B.statusCode===204||B.statusCode===304){f=new B0e(Q,X),r(f);return}let ne={flush:XGe.constants.Z_SYNC_FLUSH,finishFlush:XGe.constants.Z_SYNC_FLUSH};if(ae==="gzip"||ae==="x-gzip"){let fe=new XGe.Gunzip(ne);f=new B0e(Q.on("error",ue=>fe.emit("error",ue)).pipe(fe),X),r(f);return}if(ae==="deflate"||ae==="x-deflate"){B.once("data",fe=>{let ue=(fe[0]&15)===8?new XGe.Inflate:new XGe.InflateRaw;Q.on("error",de=>ue.emit("error",de)).pipe(ue),f=new B0e(ue,X),r(f)});return}if(ae==="br"){try{var ce=new XGe.BrotliDecompress}catch(fe){n(fe),b();return}Q.on("error",fe=>ce.emit("error",fe)).pipe(ce),f=new B0e(ce,X),r(f);return}f=new B0e(Q,X),r(f)}),kSl(E,a)})};$Is.exports=ire;ire.isRedirect=e=>e===301||e===302||e===303||e===307||e===308;ire.Headers=F8r;ire.Request=O7e;ire.Response=B0e;ire.FetchError=Pue;ire.AbortError=G8r});var ths=H((Rig,ehs)=>{var FSl=wt("dns"),ZSl=["if-modified-since","if-none-match","if-unmodified-since","if-match","if-range"],LSl=e=>{let{strictSSL:t,...r}={...e};if(r.method=r.method?r.method.toUpperCase():"GET",t==null?r.rejectUnauthorized=process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0":r.rejectUnauthorized=t!==!1,!r.retry)r.retry={retries:0};else if(typeof r.retry=="string"){let n=parseInt(r.retry,10);isFinite(n)?r.retry={retries:n}:r.retry={retries:0}}else typeof r.retry=="number"?r.retry={retries:r.retry}:r.retry={retries:0,...r.retry};return r.dns={ttl:5*60*1e3,lookup:FSl.lookup,...r.dns},r.cache=r.cache||"default",r.cache==="default"&&Object.keys(r.headers||{}).some(a=>ZSl.includes(a.toLowerCase()))&&(r.cache="no-store"),r.cacheAdditionalHeaders=r.cacheAdditionalHeaders||[],r.cacheManager&&!r.cachePath&&(r.cachePath=r.cacheManager),r};ehs.exports=LSl});var shs=H((Nig,Z8r)=>{"use strict";Z8r.exports=ihs;Z8r.exports.preferredCharsets=ihs;var VSl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function PSl(e){for(var t=e.split(","),r=0,n=0;r0}});var lhs=H((Dig,L8r)=>{"use strict";L8r.exports=chs;L8r.exports.preferredEncodings=chs;var YSl=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function QSl(e){for(var t=e.split(","),r=!1,n=1,a=0,o=0;a0}});var phs=H((kig,V8r)=>{"use strict";V8r.exports=dhs;V8r.exports.preferredLanguages=dhs;var jSl=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function zSl(e){for(var t=e.split(","),r=0,n=0;r0}});var _hs=H((xig,P8r)=>{"use strict";P8r.exports=mhs;P8r.exports.preferredMediaTypes=mhs;var tvl=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function rvl(e){for(var t=avl(e),r=0,n=0;r0)if(o.every(function(l){return t.params[l]=="*"||(t.params[l]||"").toLowerCase()==(n.params[l]||"").toLowerCase()}))a|=1;else return null;return{i:r,o:t.i,q:t.q,s:a}}function mhs(e,t){var r=rvl(e===void 0?"*/*":e||"");if(!t)return r.filter(Ihs).sort(fhs).map(svl);var n=t.map(function(o,l){return nvl(o,r,l)});return n.filter(Ihs).sort(fhs).map(function(o){return t[n.indexOf(o)]})}function fhs(e,t){return t.q-e.q||t.s-e.s||e.o-t.o||e.i-t.i||0}function svl(e){return e.type+"/"+e.subtype}function Ihs(e){return e.q>0}function Chs(e){for(var t=0,r=0;(r=e.indexOf('"',r))!==-1;)t++,r++;return t}function ovl(e){var t=e.indexOf("="),r,n;return t===-1?r=e:(r=e.slice(0,t),n=e.slice(t+1)),[r,n]}function avl(e){for(var t=e.split(","),r=1,n=0;r{"use strict";var lvl=shs(),uvl=lhs(),gvl=phs(),Avl=_hs();W8r.exports=db;W8r.exports.Negotiator=db;function db(e){if(!(this instanceof db))return new db(e);this.request=e}db.prototype.charset=function(t){var r=this.charsets(t);return r&&r[0]};db.prototype.charsets=function(t){return lvl(this.request.headers["accept-charset"],t)};db.prototype.encoding=function(t,r){var n=this.encodings(t,r);return n&&n[0]};db.prototype.encodings=function(t,r){var n=r||{};return uvl(this.request.headers["accept-encoding"],t,n.preferred)};db.prototype.language=function(t){var r=this.languages(t);return r&&r[0]};db.prototype.languages=function(t){return gvl(this.request.headers["accept-language"],t)};db.prototype.mediaType=function(t){var r=this.mediaTypes(t);return r&&r[0]};db.prototype.mediaTypes=function(t){return Avl(this.request.headers.accept,t)};db.prototype.preferredCharset=db.prototype.charset;db.prototype.preferredCharsets=db.prototype.charsets;db.prototype.preferredEncoding=db.prototype.encoding;db.prototype.preferredEncodings=db.prototype.encodings;db.prototype.preferredLanguage=db.prototype.language;db.prototype.preferredLanguages=db.prototype.languages;db.prototype.preferredMediaType=db.prototype.mediaType;db.prototype.preferredMediaTypes=db.prototype.mediaTypes});var M8r=H((Fig,Bhs)=>{var bhs=jur(),Ehs=yhs(),dvl=Jte(),Shs={shared:!1,ignoreCargoCult:!0},pvl={status:200,headers:{}},JGe=e=>{let t={method:e.method,url:e.url,headers:{},compress:e.compress};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},vhs=e=>{let t={status:e.status,headers:{}};return e.headers.forEach((r,n)=>{t.headers[n]=r}),t},O8r=class{constructor({entry:t,request:r,response:n,options:a}){this.entry=t,this.request=JGe(r),this.response=vhs(n),this.options=a,this.policy=new bhs(this.request,this.response,Shs),this.entry&&(this.policy._responseTime=this.entry.metadata.time)}static storable(t,r){return!r.cachePath||r.cache==="no-store"||!["GET","HEAD"].includes(t.method)?!1:new bhs(JGe(t),pvl,Shs).storable()}satisfies(t){let r=JGe(t);if(this.request.headers.host!==r.headers.host||this.request.compress!==r.compress)return!1;let n=new Ehs(this.request),a=new Ehs(r);return JSON.stringify(n.mediaTypes())!==JSON.stringify(a.mediaTypes())||JSON.stringify(n.languages())!==JSON.stringify(a.languages())||JSON.stringify(n.encodings())!==JSON.stringify(a.encodings())?!1:this.options.integrity?dvl.parse(this.options.integrity).match(this.entry.integrity):!0}storable(){return this.policy.storable()}get mustRevalidate(){return!!this.policy._rescc["must-revalidate"]}needsRevalidation(t){let r=JGe(t);return r.method="GET",!this.policy.satisfiesWithoutRevalidation(r)}responseHeaders(){return this.policy.responseHeaders()}revalidationHeaders(t){let r=JGe(t);return this.policy.revalidationHeaders(r)}revalidated(t,r){let n=JGe(t),a=vhs(r);return!this.policy.revalidatedPolicy(n,a).modified}};Bhs.exports=O8r});var Ths=H((Zig,whs)=>{var H8r=class extends Error{constructor(t){super(`request to ${t} failed: cache mode is 'only-if-cached' but no cached response is available.`),this.code="ENOTCACHED"}};whs.exports={NotCachedError:H8r}});var sZt=H((Lig,khs)=>{var fvl=FFt(),Rhs=Symbol("_flush"),Nhs=Symbol("_flushed"),Dhs=Symbol("_flushing"),Y8r=class extends fvl{constructor(t={}){if(typeof t=="function"&&(t={flush:t}),super(t),typeof t.flush!="function"&&typeof this.flush!="function")throw new TypeError("must provide flush function in options");this[Rhs]=t.flush||this.flush}emit(t,...r){if(t!=="end"&&t!=="finish"||this[Nhs])return super.emit(t,...r);if(this[Dhs])return;this[Dhs]=!0;let n=o=>{this[Nhs]=!0,o?super.emit("error",o):super.emit("end")},a=this[Rhs](n);a&&a.then&&a.then(()=>n(),o=>n(o))}};khs.exports=Y8r});var U8r=H((Vig,J8r)=>{var{Minipass:xhs}=rF(),UGe=Symbol("_data"),KGe=Symbol("_length"),Q8r=class extends xhs{constructor(t){super(t),this[UGe]=[],this[KGe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[UGe].push(a),this[KGe]+=a.length,n&&n(),!0}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[UGe],this[KGe]);return super.write(a),super.end(n)}};J8r.exports=Q8r;var X8r=class extends xhs{constructor(t){super(t),this[UGe]=[],this[KGe]=0}write(t,r,n){typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let a=Buffer.isBuffer(t)?t:Buffer.from(t,r);return this[UGe].push(a),this[KGe]+=a.length,super.write(t,r,n)}end(t,r,n){typeof t=="function"&&(n=t,t=null),typeof r=="function"&&(n=r,r="utf8"),t&&this.write(t,r);let a=Buffer.concat(this[UGe],this[KGe]);return this.emit("collect",a),super.end(n)}};J8r.exports.PassThrough=X8r});var jGe=H((Pig,Lhs)=>{var Ivl=FFt(),hvl=wt("events"),mvl=e=>e&&e instanceof hvl&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"),w0e=Symbol("_head"),XO=Symbol("_tail"),K8r=Symbol("_linkStreams"),j8r=Symbol("_setHead"),z8r=Symbol("_setTail"),Ghs=Symbol("_onError"),Fhs=Symbol("_onData"),q8r=Symbol("_onEnd"),Zhs=Symbol("_onDrain"),oZt=Symbol("_streams"),$8r=class extends Ivl{constructor(t,...r){mvl(t)&&(r.unshift(t),t={}),super(t),this[oZt]=[],r.length&&this.push(...r)}[K8r](t){return t.reduce((r,n)=>(r.on("error",a=>n.emit("error",a)),r.pipe(n),n))}push(...t){this[oZt].push(...t),this[XO]&&t.unshift(this[XO]);let r=this[K8r](t);this[z8r](r),this[w0e]||this[j8r](t[0])}unshift(...t){this[oZt].unshift(...t),this[w0e]&&t.push(this[w0e]);let r=this[K8r](t);this[j8r](t[0]),this[XO]||this[z8r](r)}destroy(t){return this[oZt].forEach(r=>typeof r.destroy=="function"&&r.destroy()),super.destroy(t)}[z8r](t){this[XO]=t,t.on("error",r=>this[Ghs](t,r)),t.on("data",r=>this[Fhs](t,r)),t.on("end",()=>this[q8r](t)),t.on("finish",()=>this[q8r](t))}[Ghs](t,r){t===this[XO]&&this.emit("error",r)}[Fhs](t,r){t===this[XO]&&super.write(r)}[q8r](t){t===this[XO]&&super.end()}pause(){return super.pause(),this[XO]&&this[XO].pause&&this[XO].pause()}emit(t,...r){return t==="resume"&&this[XO]&&this[XO].resume&&this[XO].resume(),super.emit(t,...r)}[j8r](t){this[w0e]=t,t.on("drain",()=>this[Zhs](t))}[Zhs](t){t===this[w0e]&&this.emit("drain")}write(t,r,n){return this[w0e].write(t,r,n)&&(this.flowing||this.buffer.length===0)}end(t,r,n){return this[w0e].end(t,r,n),this}};Lhs.exports=$8r});var Vhs=H((Wig,ejr)=>{(function(){var e;function t(r,n){var a=this instanceof t?this:e;if(a.reset(n),typeof r=="string"&&r.length>0&&a.hash(r),a!==this)return a}t.prototype.hash=function(r){var n,a,o,l,A;switch(A=r.length,this.len+=A,a=this.k1,o=0,this.rem){case 0:a^=A>o?r.charCodeAt(o++)&65535:0;case 1:a^=A>o?(r.charCodeAt(o++)&65535)<<8:0;case 2:a^=A>o?(r.charCodeAt(o++)&65535)<<16:0;case 3:a^=A>o?(r.charCodeAt(o)&255)<<24:0,a^=A>o?(r.charCodeAt(o++)&65280)>>8:0}if(this.rem=A+this.rem&3,A-=this.rem,A>0){for(n=this.h1;a=a*11601+(a&65535)*3432906752&4294967295,a=a<<15|a>>>17,a=a*13715+(a&65535)*461832192&4294967295,n^=a,n=n<<13|n>>>19,n=n*5+3864292196&4294967295,!(o>=A);)a=r.charCodeAt(o++)&65535^(r.charCodeAt(o++)&65535)<<8^(r.charCodeAt(o++)&65535)<<16,l=r.charCodeAt(o++),a^=(l&255)<<24^(l&65280)>>8;switch(a=0,this.rem){case 3:a^=(r.charCodeAt(o+2)&65535)<<16;case 2:a^=(r.charCodeAt(o+1)&65535)<<8;case 1:a^=r.charCodeAt(o)&65535}this.h1=n}return this.k1=a,this},t.prototype.result=function(){var r,n;return r=this.k1,n=this.h1,r>0&&(r=r*11601+(r&65535)*3432906752&4294967295,r=r<<15|r>>>17,r=r*13715+(r&65535)*461832192&4294967295,n^=r),n^=this.len,n^=n>>>16,n=n*51819+(n&65535)*2246770688&4294967295,n^=n>>>13,n=n*44597+(n&65535)*3266445312&4294967295,n^=n>>>16,n>>>0},t.prototype.reset=function(r){return this.h1=typeof r=="number"?r:0,this.rem=this.k1=this.len=0,this},e=new t,typeof ejr<"u"?ejr.exports=t:this.MurmurHash3=t})()});var Whs=H((Oig,Phs)=>{"use strict";var Cvl=Vhs();Phs.exports=function(e){if(e){var t=new Cvl(e);return("00000000"+t.result().toString(16)).slice(-8)}else return(Math.random().toString(16)+"0000000").slice(2,10)}});var tjr=H((Mig,Ohs)=>{var _vl=wt("path"),yvl=Whs();Ohs.exports=function(e,t,r){return _vl.join(e,(t?t+"-":"")+yvl(r))}});var rjr=H((Hig,bvl)=>{bvl.exports={name:"cacache",version:"19.0.1","cache-version":{content:"2",index:"5"},description:"Fast, fault-tolerant, cross-platform, disk-based, data-agnostic, content-addressable cache.",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",snap:"tap",coverage:"tap","test-docker":'docker run -it --rm --name pacotest -v "$PWD":/tmp -w /tmp node:latest npm test',lint:"npm run eslint",npmclilint:"npmcli-lint",lintfix:"npm run eslint -- --fix",postsnap:"npm run lintfix --",postlint:"template-oss-check",posttest:"npm run lint","template-oss-apply":"template-oss-apply --force",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'},repository:{type:"git",url:"git+https://github.com/npm/cacache.git"},keywords:["cache","caching","content-addressable","sri","sri hash","subresource integrity","cache","storage","store","file store","filesystem","disk cache","disk storage"],license:"ISC",dependencies:{"@npmcli/fs":"^4.0.0","fs-minipass":"^3.0.0",glob:"^10.2.2","lru-cache":"^10.0.1",minipass:"^7.0.3","minipass-collect":"^2.0.1","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4","p-map":"^7.0.2",ssri:"^12.0.0",tar:"^7.4.3","unique-filename":"^4.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.3",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",windowsCI:!1,version:"4.23.3",publish:"true"},author:"GitHub Inc.",tap:{"nyc-arg":["--exclude","tap-snapshots/**"]}}});var njr=H((Yig,Mhs)=>{"use strict";Mhs.exports=Evl;function Evl(e){return[e.slice(0,2),e.slice(2,4),e.slice(4)]}});var zGe=H((Qig,ijr)=>{"use strict";var Svl=rjr()["cache-version"].content,vvl=njr(),Hhs=wt("path"),Bvl=Jte();ijr.exports=wvl;function wvl(e,t){let r=Bvl.parse(t,{single:!0});return Hhs.join(Yhs(e),r.algorithm,...vvl(r.hexDigest()))}ijr.exports.contentDir=Yhs;function Yhs(e){return Hhs.join(e,`content-v${Svl}`)}});var sjr=H((Xig,Qhs)=>{var Tvl=(e,{copy:t,wrap:r})=>{let n={};if(e&&typeof e=="object")for(let a of t)e[a]!==void 0&&(n[a]=e[a]);else n[r]=e;return n};Qhs.exports=Tvl});var Jhs=H((Jig,Xhs)=>{var Rvl=UC(),Nvl=e=>Rvl.satisfies(process.version,e,{includePrerelease:!0});Xhs.exports={satisfies:Nvl}});var Uhs=H((jig,ajr)=>{"use strict";var{inspect:Dvl}=wt("util"),ojr=class{constructor(t,r,n){let a=`${r}: ${n.syscall} returned ${n.code} (${n.message})`;n.path!==void 0&&(a+=` ${n.path}`),n.dest!==void 0&&(a+=` => ${n.dest}`),this.code=t,Object.defineProperties(this,{name:{value:"SystemError",enumerable:!1,writable:!0,configurable:!0},message:{value:a,enumerable:!1,writable:!0,configurable:!0},info:{value:n,enumerable:!0,configurable:!0,writable:!1},errno:{get(){return n.errno},set(o){n.errno=o},enumerable:!0,configurable:!0},syscall:{get(){return n.syscall},set(o){n.syscall=o},enumerable:!0,configurable:!0}}),n.path!==void 0&&Object.defineProperty(this,"path",{get(){return n.path},set(o){n.path=o},enumerable:!0,configurable:!0}),n.dest!==void 0&&Object.defineProperty(this,"dest",{get(){return n.dest},set(o){n.dest=o},enumerable:!0,configurable:!0})}toString(){return`${this.name} [${this.code}]: ${this.message}`}[Symbol.for("nodejs.util.inspect.custom")](t,r){return Dvl(this,{...r,getters:!0,customInspect:!1})}};function sre(e,t){ajr.exports[e]=class extends ojr{constructor(n){super(e,t,n)}}}sre("ERR_FS_CP_DIR_TO_NON_DIR","Cannot overwrite directory with non-directory");sre("ERR_FS_CP_EEXIST","Target already exists");sre("ERR_FS_CP_EINVAL","Invalid src or dest");sre("ERR_FS_CP_FIFO_PIPE","Cannot copy a FIFO pipe");sre("ERR_FS_CP_NON_DIR_TO_DIR","Cannot overwrite non-directory with directory");sre("ERR_FS_CP_SOCKET","Cannot copy a socket file");sre("ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY","Cannot overwrite symlink in subdirectory of self");sre("ERR_FS_CP_UNKNOWN","Cannot copy an unknown file type");sre("ERR_FS_EISDIR","Path is a directory");ajr.exports.ERR_INVALID_ARG_TYPE=class extends Error{constructor(t,r,n){super(),this.code="ERR_INVALID_ARG_TYPE",this.message=`The ${t} argument must be ${r}. Received ${typeof n}`}}});var dms=H((zig,Ams)=>{"use strict";var{ERR_FS_CP_DIR_TO_NON_DIR:kvl,ERR_FS_CP_EEXIST:xvl,ERR_FS_CP_EINVAL:aZt,ERR_FS_CP_FIFO_PIPE:Gvl,ERR_FS_CP_NON_DIR_TO_DIR:Fvl,ERR_FS_CP_SOCKET:Zvl,ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY:Lvl,ERR_FS_CP_UNKNOWN:Vvl,ERR_FS_EISDIR:Pvl,ERR_INVALID_ARG_TYPE:Wvl}=Uhs(),{constants:{errno:{EEXIST:Ovl,EISDIR:Mvl,EINVAL:ore,ENOTDIR:Hvl}}}=wt("os"),{chmod:Yvl,copyFile:Qvl,lstat:nms,mkdir:ims,readdir:Xvl,readlink:Khs,stat:qGe,symlink:cjr,unlink:sms,utimes:Jvl}=wt("fs/promises"),{dirname:H7e,isAbsolute:jhs,join:zhs,parse:Uvl,resolve:Y7e,sep:Kvl,toNamespacedPath:qhs}=wt("path"),{fileURLToPath:jvl}=wt("url"),zvl={dereference:!1,errorOnExist:!1,filter:void 0,force:!0,preserveTimestamps:!1,recursive:!1};async function qvl(e,t,r){if(r!=null&&typeof r!="object")throw new Wvl("options",["Object"],r);return $vl(qhs($hs(e)),qhs($hs(t)),{...zvl,...r})}function $hs(e){return e!=null&&e.href&&e.origin?jvl(e):e}async function $vl(e,t,r){r.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning("Using the preserveTimestamps option in 32-bit node is not recommended","TimestampPrecisionWarning");let n=await oms(e,t,r),{srcStat:a,destStat:o}=n;return await cms(e,a,t),r.filter?lms(ems,o,e,t,r):ems(o,e,t,r)}async function oms(e,t,r){let{0:n,1:a}=await eBl(e,t,r);if(a){if(ams(n,a))throw new aZt({message:"src and dest cannot be the same",path:t,syscall:"cp",errno:ore});if(n.isDirectory()&&!a.isDirectory())throw new kvl({message:`cannot overwrite directory ${e} with non-directory ${t}`,path:t,syscall:"cp",errno:Mvl});if(!n.isDirectory()&&a.isDirectory())throw new Fvl({message:`cannot overwrite non-directory ${e} with directory ${t}`,path:t,syscall:"cp",errno:Hvl})}if(n.isDirectory()&&ljr(e,t))throw new aZt({message:`cannot copy ${e} to a subdirectory of self ${t}`,path:t,syscall:"cp",errno:ore});return{srcStat:n,destStat:a}}function ams(e,t){return t.ino&&t.dev&&t.ino===e.ino&&t.dev===e.dev}function eBl(e,t,r){let n=r.dereference?a=>qGe(a,{bigint:!0}):a=>nms(a,{bigint:!0});return Promise.all([n(e),n(t).catch(a=>{if(a.code==="ENOENT")return null;throw a})])}async function ems(e,t,r,n){let a=H7e(r);return await tBl(a)||await ims(a,{recursive:!0}),cZt(e,t,r,n)}function tBl(e){return qGe(e).then(()=>!0,t=>t.code==="ENOENT"?!1:Promise.reject(t))}async function cms(e,t,r){let n=Y7e(H7e(e)),a=Y7e(H7e(r));if(a===n||a===Uvl(a).root)return;let o;try{o=await qGe(a,{bigint:!0})}catch(l){if(l.code==="ENOENT")return;throw l}if(ams(t,o))throw new aZt({message:`cannot copy ${e} to a subdirectory of self ${r}`,path:r,syscall:"cp",errno:ore});return cms(e,t,a)}var tms=e=>Y7e(e).split(Kvl).filter(Boolean);function ljr(e,t){let r=tms(e),n=tms(t);return r.every((a,o)=>n[o]===a)}async function lms(e,t,r,n,a,o){if(await a.filter(r,n))return e(t,r,n,a,o)}function rBl(e,t,r,n){return n.filter?lms(cZt,e,t,r,n):cZt(e,t,r,n)}async function cZt(e,t,r,n){let o=await(n.dereference?qGe:nms)(t);if(o.isDirectory()&&n.recursive)return lBl(o,e,t,r,n);if(o.isDirectory())throw new Pvl({message:`${t} is a directory (not copied)`,path:t,syscall:"cp",errno:ore});if(o.isFile()||o.isCharacterDevice()||o.isBlockDevice())return nBl(o,e,t,r,n);if(o.isSymbolicLink())return gBl(e,t,r);throw o.isSocket()?new Zvl({message:`cannot copy a socket file: ${r}`,path:r,syscall:"cp",errno:ore}):o.isFIFO()?new Gvl({message:`cannot copy a FIFO pipe: ${r}`,path:r,syscall:"cp",errno:ore}):new Vvl({message:`cannot copy an unknown file type: ${r}`,path:r,syscall:"cp",errno:ore})}function nBl(e,t,r,n,a){return t?iBl(e,r,n,a):ums(e,r,n,a)}async function iBl(e,t,r,n){if(n.force)return await sms(r),ums(e,t,r,n);if(n.errorOnExist)throw new xvl({message:`${r} already exists`,path:r,syscall:"cp",errno:Ovl})}async function ums(e,t,r,n){return await Qvl(t,r),n.preserveTimestamps?sBl(e.mode,t,r):lZt(r,e.mode)}async function sBl(e,t,r){return oBl(e)&&await aBl(r,e),rms(e,t,r)}function oBl(e){return(e&128)===0}function aBl(e,t){return lZt(e,t|128)}async function rms(e,t,r){return await cBl(t,r),lZt(r,e)}function lZt(e,t){return Yvl(e,t)}async function cBl(e,t){let r=await qGe(e);return Jvl(t,r.atime,r.mtime)}function lBl(e,t,r,n,a){return t?gms(r,n,a):uBl(e.mode,r,n,a)}async function uBl(e,t,r,n){return await ims(r),await gms(t,r,n),lZt(r,e)}async function gms(e,t,r){let n=await Xvl(e);for(let a=0;a{var dBl=wt("fs/promises"),pBl=sjr(),fBl=Jhs(),IBl=dms(),hBl=fBl.satisfies(">=16.7.0"),mBl=async(e,t,r)=>{let n=pBl(r,{copy:["dereference","errorOnExist","filter","force","preserveTimestamps","recursive"]});return hBl?dBl.cp(e,t,n):IBl(e,t,n)};pms.exports=mBl});var hms=H(($ig,Ims)=>{var{join:CBl,sep:_Bl}=wt("path"),yBl=sjr(),{mkdir:bBl,mkdtemp:EBl,rm:SBl}=wt("fs/promises"),vBl=async(e,t,r)=>{let n=yBl(r,{copy:["tmpPrefix"]});await bBl(e,{recursive:!0});let a=await EBl(CBl(`${e}${_Bl}`,n.tmpPrefix||"")),o,l;try{l=await t(a)}catch(A){o=A}try{await SBl(a,{force:!0,recursive:!0})}catch{}if(o)throw o;return l};Ims.exports=vBl});var yms=H((esg,_ms)=>{var{readdir:mms}=wt("fs/promises"),{join:Cms}=wt("path"),BBl=async e=>{let t=[];for(let r of await mms(e))if(r.startsWith("@"))for(let n of await mms(Cms(e,r)))t.push(Cms(r,n));else t.push(r);return t};_ms.exports=BBl});var wms=H((tsg,Bms)=>{var{dirname:bms,join:Ems,resolve:Sms,relative:wBl,isAbsolute:TBl}=wt("path"),D6=wt("fs/promises"),RBl=async e=>{try{return await D6.access(e),!0}catch(t){return t.code!=="ENOENT"}},vms=async(e,t,r={},n=!0,a=[])=>{if(!e||!t)throw new TypeError("`source` and `destination` file required");if(r={overwrite:!0,...r},!r.overwrite&&await RBl(t))throw new Error(`The destination file exists: ${t}`);await D6.mkdir(bms(t),{recursive:!0});try{await D6.rename(e,t)}catch(o){if(o.code==="EXDEV"||o.code==="EPERM"){let l=await D6.lstat(e);if(l.isDirectory()){let A=await D6.readdir(e);await Promise.all(A.map(f=>vms(Ems(e,f),Ems(t,f),r,!1,a)))}else l.isSymbolicLink()?a.push({source:e,destination:t}):await D6.copyFile(e,t)}else throw o}n&&(await Promise.all(a.map(async({source:o,destination:l})=>{let A=await D6.readlink(o);TBl(A)&&(A=Sms(l,wBl(o,A)));let f="file";try{f=await D6.stat(Sms(bms(o),A)),f.isDirectory()&&(f="junction")}catch{}await D6.symlink(A,l,f)})),await D6.rm(e,{recursive:!0,force:!0}))};Bms.exports=vms});var uZt=H((rsg,Tms)=>{"use strict";var NBl=fms(),DBl=hms(),kBl=yms(),xBl=wms();Tms.exports={cp:NBl,withTempDir:DBl,readdirScoped:kBl,moveFile:xBl}});var gZt={};sI(gZt,{default:()=>Rms,pMapIterable:()=>GBl,pMapSkip:()=>Q7e});async function Rms(e,t,{concurrency:r=Number.POSITIVE_INFINITY,stopOnError:n=!0,signal:a}={}){return new Promise((o,l)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!(Number.isSafeInteger(r)&&r>=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);let A=[],f=[],I=new Map,C=!1,b=!1,E=!1,N=0,B=0,F=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),Q=()=>{ne(a.reason)},X=()=>{a?.removeEventListener("abort",Q)},ae=fe=>{o(fe),X()},ne=fe=>{C=!0,b=!0,l(fe),X()};a&&(a.aborted&&ne(a.reason),a.addEventListener("abort",Q,{once:!0}));let ce=async()=>{if(b)return;let fe=await F.next(),ue=B;if(B++,fe.done){if(E=!0,N===0&&!b){if(!n&&f.length>0){ne(new AggregateError(f));return}if(b=!0,I.size===0){ae(A);return}let de=[];for(let[be,Se]of A.entries())I.get(be)!==Q7e&&de.push(Se);ae(de)}return}N++,(async()=>{try{let de=await fe.value;if(b)return;let be=await t(de,ue);be===Q7e&&I.set(ue,be),A[ue]=be,N--,await ce()}catch(de){if(n)ne(de);else{f.push(de),N--;try{await ce()}catch(be){ne(be)}}}})()};(async()=>{for(let fe=0;fe=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);if(!(Number.isSafeInteger(n)&&n>=r||n===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`backpressure\` to be an integer from \`concurrency\` (${r}) and up or \`Infinity\`, got \`${n}\` (${typeof n})`);return{async*[Symbol.asyncIterator](){let a=e[Symbol.asyncIterator]===void 0?e[Symbol.iterator]():e[Symbol.asyncIterator](),o=[],l=0,A=!1,f=0;function I(){if(A||!(l{let{done:b,value:E}=await a.next();if(b)return l--,{done:!0};I();try{let N=await t(await E,f++);if(l--,N===Q7e){let B=o.indexOf(C);B>0&&o.splice(B,1)}return I(),{done:!1,value:N}}catch(N){return l--,A=!0,{error:N}}})();o.push(C)}for(I();o.length>0;){let{error:C,done:b,value:E}=await o[0];if(o.shift(),C)throw C;if(b)return;I(),E!==Q7e&&(yield E)}}}}var Q7e,AZt=bc(()=>{Q7e=Symbol("skip")});var $Ge=H((isg,JO)=>{"use strict";var FBl=wt("crypto"),{appendFile:ZBl,mkdir:Ajr,readFile:LBl,readdir:VBl,rm:Nms,writeFile:PBl}=wt("fs/promises"),{Minipass:WBl}=rF(),k6=wt("path"),OBl=Jte(),MBl=tjr(),HBl=zGe(),YBl=njr(),QBl=rjr()["cache-version"].index,{moveFile:XBl}=uZt(),ujr=5;JO.exports.NotFoundError=class extends Error{constructor(t,r){super(`No cache entry for ${r} found in ${t}`),this.code="ENOENT",this.cache=t,this.key=r}};JO.exports.compact=JBl;async function JBl(e,t,r,n={}){let a=X7e(e,t),o=await dZt(a),l=[];for(let E=o.length-1;E>=0;--E){let N=o[E];if(N.integrity===null&&!n.validateEntry)break;(!n.validateEntry||n.validateEntry(N)===!0)&&(l.length===0||!l.find(B=>r(B,N)))&&l.unshift(N)}let A=` -`+l.map(E=>{let N=JSON.stringify(E);return`${pZt(N)} ${N}`}).join(` -`),f=async()=>{let E=MBl(k6.join(e,"tmp"),n.tmpPrefix);return await Ajr(k6.dirname(E),{recursive:!0}),{target:E,moved:!1}},I=async E=>{if(!E.moved)return Nms(E.target,{recursive:!0,force:!0})},C=async E=>{await PBl(E.target,A,{flag:"wx"}),await Ajr(k6.dirname(a),{recursive:!0}),await XBl(E.target,a),E.moved=!0},b=await f();try{await C(b)}finally{await I(b)}return l.reverse().map(E=>fZt(e,E,!0))}JO.exports.insert=Dms;async function Dms(e,t,r,n={}){let{metadata:a,size:o,time:l}=n,A=X7e(e,t),f={key:t,integrity:r&&OBl.stringify(r),time:l||Date.now(),size:o,metadata:a};try{await Ajr(k6.dirname(A),{recursive:!0});let I=JSON.stringify(f);await ZBl(A,` -${pZt(I)} ${I}`)}catch(I){if(I.code==="ENOENT")return;throw I}return fZt(e,f)}JO.exports.find=UBl;async function UBl(e,t){let r=X7e(e,t);try{return(await dZt(r)).reduce((a,o)=>o&&o.key===t?fZt(e,o):a,null)}catch(n){if(n.code==="ENOENT")return null;throw n}}JO.exports.delete=KBl;function KBl(e,t,r={}){if(!r.removeFully)return Dms(e,t,null,r);let n=X7e(e,t);return Nms(n,{recursive:!0,force:!0})}JO.exports.lsStream=kms;function kms(e){let t=djr(e),r=new WBl({objectMode:!0});return Promise.resolve().then(async()=>{let{default:n}=await Promise.resolve().then(()=>(AZt(),gZt)),a=await gjr(t);return await n(a,async o=>{let l=k6.join(t,o),A=await gjr(l);await n(A,async f=>{let I=k6.join(l,f),C=await gjr(I);await n(C,async b=>{let E=k6.join(I,b);try{let B=(await dZt(E)).reduce((F,Q)=>(F.set(Q.key,Q),F),new Map);for(let F of B.values()){let Q=fZt(e,F);Q&&r.write(Q)}}catch(N){if(N.code==="ENOENT")return;throw N}},{concurrency:ujr})},{concurrency:ujr})},{concurrency:ujr}),r.end(),r}).catch(n=>r.emit("error",n)),r}JO.exports.ls=jBl;async function jBl(e){return(await kms(e).collect()).reduce((r,n)=>(r[n.key]=n,r),{})}JO.exports.bucketEntries=dZt;async function dZt(e,t){let r=await LBl(e,"utf8");return zBl(r,t)}function zBl(e){let t=[];return e.split(` -`).forEach(r=>{if(!r)return;let n=r.split(" ");if(!n[1]||pZt(n[1])!==n[0])return;let a;try{a=JSON.parse(n[1])}catch{}a&&t.push(a)}),t}JO.exports.bucketDir=djr;function djr(e){return k6.join(e,`index-v${QBl}`)}JO.exports.bucketPath=X7e;function X7e(e,t){let r=xms(t);return k6.join.apply(k6,[djr(e)].concat(YBl(r)))}JO.exports.hashKey=xms;function xms(e){return Gms(e,"sha256")}JO.exports.hashEntry=pZt;function pZt(e){return Gms(e,"sha1")}function Gms(e,t){return FBl.createHash(t).update(e).digest("hex")}function fZt(e,t,r){return!t.integrity&&!r?null:{key:t.key,integrity:t.integrity,path:t.integrity?HBl(e,t.integrity):void 0,size:t.size,time:t.time,metadata:t.metadata}}function gjr(e){return VBl(e).catch(t=>{if(t.code==="ENOENT"||t.code==="ENOTDIR")return[];throw t})}});var J7e=H((ssg,eFe)=>{"use strict";var{LRUCache:qBl}=yIe(),IZt=new qBl({max:500,maxSize:50*1024*1024,ttl:3*60*1e3,sizeCalculation:(e,t)=>t.startsWith("key:")?e.data.length:e.length});eFe.exports.clearMemoized=$Bl;function $Bl(){let e={};return IZt.forEach((t,r)=>{e[r]=t}),IZt.clear(),e}eFe.exports.put=ewl;function ewl(e,t,r,n){hZt(n).set(`key:${e}:${t.key}`,{entry:t,data:r}),Fms(e,t.integrity,r,n)}eFe.exports.put.byDigest=Fms;function Fms(e,t,r,n){hZt(n).set(`digest:${e}:${t}`,r)}eFe.exports.get=twl;function twl(e,t,r){return hZt(r).get(`key:${e}:${t}`)}eFe.exports.get.byDigest=rwl;function rwl(e,t,r){return hZt(r).get(`digest:${e}:${t}`)}var pjr=class{constructor(t){this.obj=t}get(t){return this.obj[t]}set(t,r){this.obj[t]=r}};function hZt(e){return!e||!e.memoize?IZt:e.memoize.get&&e.memoize.set?e.memoize:typeof e.memoize=="object"?new pjr(e.memoize):IZt}});var vZt=H(K7e=>{"use strict";var{Minipass:nwl}=rF(),iwl=wt("events").EventEmitter,qV=wt("fs"),swl=qV.writev,sFe=Symbol("_autoClose"),tJ=Symbol("_close"),U7e=Symbol("_ended"),pb=Symbol("_fd"),Zms=Symbol("_finished"),Oue=Symbol("_flags"),fjr=Symbol("_flush"),hjr=Symbol("_handleChunk"),mjr=Symbol("_makeBuf"),bZt=Symbol("_mode"),mZt=Symbol("_needDrain"),nFe=Symbol("_onerror"),oFe=Symbol("_onopen"),Ijr=Symbol("_onread"),tFe=Symbol("_onwrite"),Mue=Symbol("_open"),are=Symbol("_path"),R0e=Symbol("_pos"),x6=Symbol("_queue"),rFe=Symbol("_read"),Lms=Symbol("_readSize"),Wue=Symbol("_reading"),CZt=Symbol("_remain"),Vms=Symbol("_size"),_Zt=Symbol("_write"),T0e=Symbol("_writing"),yZt=Symbol("_defaultFlag"),iFe=Symbol("_errored"),EZt=class extends nwl{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[iFe]=!1,this[pb]=typeof r.fd=="number"?r.fd:null,this[are]=t,this[Lms]=r.readSize||16*1024*1024,this[Wue]=!1,this[Vms]=typeof r.size=="number"?r.size:1/0,this[CZt]=this[Vms],this[sFe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[pb]=="number"?this[rFe]():this[Mue]()}get fd(){return this[pb]}get path(){return this[are]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Mue](){qV.open(this[are],"r",(t,r)=>this[oFe](t,r))}[oFe](t,r){t?this[nFe](t):(this[pb]=r,this.emit("open",r),this[rFe]())}[mjr](){return Buffer.allocUnsafe(Math.min(this[Lms],this[CZt]))}[rFe](){if(!this[Wue]){this[Wue]=!0;let t=this[mjr]();if(t.length===0)return process.nextTick(()=>this[Ijr](null,0,t));qV.read(this[pb],t,0,t.length,null,(r,n,a)=>this[Ijr](r,n,a))}}[Ijr](t,r,n){this[Wue]=!1,t?this[nFe](t):this[hjr](r,n)&&this[rFe]()}[tJ](){if(this[sFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[nFe](t){this[Wue]=!0,this[tJ](),this.emit("error",t)}[hjr](t,r){let n=!1;return this[CZt]-=t,t>0&&(n=super.write(tthis[oFe](t,r))}[oFe](t,r){this[yZt]&&this[Oue]==="r+"&&t&&t.code==="ENOENT"?(this[Oue]="w",this[Mue]()):t?this[nFe](t):(this[pb]=r,this.emit("open",r),this[T0e]||this[fjr]())}end(t,r){return t&&this.write(t,r),this[U7e]=!0,!this[T0e]&&!this[x6].length&&typeof this[pb]=="number"&&this[tFe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[U7e]?(this.emit("error",new Error("write() after end()")),!1):this[pb]===null||this[T0e]||this[x6].length?(this[x6].push(t),this[mZt]=!0,!1):(this[T0e]=!0,this[_Zt](t),!0)}[_Zt](t){qV.write(this[pb],t,0,t.length,this[R0e],(r,n)=>this[tFe](r,n))}[tFe](t,r){t?this[nFe](t):(this[R0e]!==null&&(this[R0e]+=r),this[x6].length?this[fjr]():(this[T0e]=!1,this[U7e]&&!this[Zms]?(this[Zms]=!0,this[tJ](),this.emit("finish")):this[mZt]&&(this[mZt]=!1,this.emit("drain"))))}[fjr](){if(this[x6].length===0)this[U7e]&&this[tFe](null,0);else if(this[x6].length===1)this[_Zt](this[x6].pop());else{let t=this[x6];this[x6]=[],swl(this[pb],t,this[R0e],(r,n)=>this[tFe](r,n))}}[tJ](){if(this[sFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},_jr=class extends SZt{[Mue](){let t;if(this[yZt]&&this[Oue]==="r+")try{t=qV.openSync(this[are],this[Oue],this[bZt])}catch(r){if(r.code==="ENOENT")return this[Oue]="w",this[Mue]();throw r}else t=qV.openSync(this[are],this[Oue],this[bZt]);this[oFe](null,t)}[tJ](){if(this[sFe]&&typeof this[pb]=="number"){let t=this[pb];this[pb]=null,qV.closeSync(t),this.emit("close")}}[_Zt](t){let r=!0;try{this[tFe](null,qV.writeSync(this[pb],t,0,t.length,this[R0e])),r=!1}finally{if(r)try{this[tJ]()}catch{}}}};K7e.ReadStream=EZt;K7e.ReadStreamSync=Cjr;K7e.WriteStream=SZt;K7e.WriteStreamSync=_jr});var bjr=H((asg,aFe)=>{"use strict";var j7e=wt("fs/promises"),owl=vZt(),yjr=Jte(),awl=zGe(),Pms=jGe();aFe.exports=cwl;var Wms=64*1024*1024;async function cwl(e,t,r={}){let{size:n}=r,{stat:a,cpath:o,sri:l}=await z7e(e,t,async(f,I)=>({stat:n?{size:n}:await j7e.stat(f),cpath:f,sri:I}));if(a.size>Wms)return Oms(o,a.size,l,new Pms).concat();let A=await j7e.readFile(o,{encoding:null});if(a.size!==A.length)throw gwl(a.size,A.length);if(!yjr.checkData(A,l))throw Awl(l,o);return A}var Oms=(e,t,r,n)=>(n.push(new owl.ReadStream(e,{size:t,readSize:Wms}),yjr.integrityStream({integrity:r,size:t})),n);aFe.exports.stream=Mms;aFe.exports.readStream=Mms;function Mms(e,t,r={}){let{size:n}=r,a=new Pms;return Promise.resolve().then(async()=>{let{stat:o,cpath:l,sri:A}=await z7e(e,t,async(f,I)=>({stat:n?{size:n}:await j7e.stat(f),cpath:f,sri:I}));return Oms(l,o.size,A,a)}).catch(o=>a.emit("error",o)),a}aFe.exports.copy=lwl;function lwl(e,t,r){return z7e(e,t,n=>j7e.copyFile(n,r))}aFe.exports.hasContent=uwl;async function uwl(e,t){if(!t)return!1;try{return await z7e(e,t,async(r,n)=>{let a=await j7e.stat(r);return{size:a.size,sri:n,stat:a}})}catch(r){if(r.code==="ENOENT")return!1;if(r.code==="EPERM"){if(process.platform!=="win32")throw r;return!1}}}async function z7e(e,t,r){let n=yjr.parse(t),a=n.pickAlgorithm(),o=n[a];if(o.length<=1){let l=awl(e,o[0]);return r(l,o[0])}else{let l=await Promise.all(o.map(async I=>{try{return await z7e(e,I,r)}catch(C){return C.code==="ENOENT"?Object.assign(new Error("No matching content found for "+n.toString()),{code:"ENOENT"}):C}})),A=l.find(I=>!(I instanceof Error));if(A)return A;let f=l.find(I=>I.code==="ENOENT");throw f||l.find(I=>I instanceof Error)}}function gwl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function Awl(e,t){let r=new Error(`Integrity verification failed for ${e} (${t})`);return r.code="EINTEGRITY",r.sri=e,r.path=t,r}});var Xms=H((csg,lre)=>{"use strict";var Hms=U8r(),{Minipass:Yms}=rF(),Qms=jGe(),N0e=$Ge(),cre=J7e(),D0e=bjr();async function dwl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=cre.get(e,t,r);if(l&&a!==!1)return{metadata:l.entry.metadata,data:l.data,integrity:l.entry.integrity,size:l.entry.size};let A=await N0e.find(e,t,r);if(!A)throw new N0e.NotFoundError(e,t);let f=await D0e(e,A.integrity,{integrity:n,size:o});return a&&cre.put(e,A,f,r),{data:f,metadata:A.metadata,size:A.size,integrity:A.integrity}}lre.exports=dwl;async function pwl(e,t,r={}){let{integrity:n,memoize:a,size:o}=r,l=cre.get.byDigest(e,t,r);if(l&&a!==!1)return l;let A=await D0e(e,t,{integrity:n,size:o});return a&&cre.put.byDigest(e,t,A,r),A}lre.exports.byDigest=pwl;var fwl=e=>{let t=new Yms;return t.on("newListener",function(r,n){r==="metadata"&&n(e.entry.metadata),r==="integrity"&&n(e.entry.integrity),r==="size"&&n(e.entry.size)}),t.end(e.data),t};function Iwl(e,t,r={}){let{memoize:n,size:a}=r,o=cre.get(e,t,r);if(o&&n!==!1)return fwl(o);let l=new Qms;return Promise.resolve().then(async()=>{let A=await N0e.find(e,t);if(!A)throw new N0e.NotFoundError(e,t);l.emit("metadata",A.metadata),l.emit("integrity",A.integrity),l.emit("size",A.size),l.on("newListener",function(I,C){I==="metadata"&&C(A.metadata),I==="integrity"&&C(A.integrity),I==="size"&&C(A.size)});let f=D0e.readStream(e,A.integrity,{...r,size:typeof a!="number"?A.size:a});if(n){let I=new Hms.PassThrough;I.on("collect",C=>cre.put(e,A,C,r)),l.unshift(I)}return l.unshift(f),l}).catch(A=>l.emit("error",A)),l}lre.exports.stream=Iwl;function hwl(e,t,r={}){let{memoize:n}=r,a=cre.get.byDigest(e,t,r);if(a&&n!==!1){let o=new Yms;return o.end(a),o}else{let o=D0e.readStream(e,t,r);if(!n)return o;let l=new Hms.PassThrough;return l.on("collect",A=>cre.put.byDigest(e,t,A,r)),new Qms(o,l)}}lre.exports.stream.byDigest=hwl;function mwl(e,t,r={}){let{memoize:n}=r,a=cre.get(e,t,r);return a&&n!==!1?Promise.resolve(a.entry):N0e.find(e,t)}lre.exports.info=mwl;async function Cwl(e,t,r,n={}){let a=await N0e.find(e,t,n);if(!a)throw new N0e.NotFoundError(e,t);return await D0e.copy(e,a.integrity,r,n),{metadata:a.metadata,size:a.size,integrity:a.integrity}}lre.exports.copy=Cwl;async function _wl(e,t,r,n={}){return await D0e.copy(e,t,r,n),t}lre.exports.copy.byDigest=_wl;lre.exports.hasContent=D0e.hasContent});var zms=H((lsg,Bjr)=>{"use strict";var Jms=wt("events"),ywl=zGe(),$7e=wt("fs/promises"),{moveFile:bwl}=uZt(),{Minipass:Ewl}=rF(),Ums=jGe(),Swl=sZt(),Ejr=wt("path"),Sjr=Jte(),vwl=tjr(),Bwl=vZt();Bjr.exports=wwl;var q7e=new Map;async function wwl(e,t,r={}){let{algorithms:n,size:a,integrity:o}=r;if(typeof a=="number"&&t.length!==a)throw Dwl(a,t.length);let l=Sjr.fromData(t,n?{algorithms:n}:{});if(o&&!Sjr.checkData(t,o,r))throw kwl(o,l);for(let A in l){let f=await Kms(e,r),I=l[A].toString();try{await $7e.writeFile(f.target,t,{flag:"wx"}),await jms(f,e,I,r)}finally{f.moved||await $7e.rm(f.target,{recursive:!0,force:!0})}}return{integrity:l,size:t.length}}Bjr.exports.stream=Twl;var vjr=class extends Swl{constructor(t,r){super(),this.opts=r,this.cache=t,this.inputStream=new Ewl,this.inputStream.on("error",n=>this.emit("error",n)),this.inputStream.on("drain",()=>this.emit("drain")),this.handleContentP=null}write(t,r,n){return this.handleContentP||(this.handleContentP=Rwl(this.inputStream,this.cache,this.opts),this.handleContentP.catch(a=>this.emit("error",a))),this.inputStream.write(t,r,n)}flush(t){this.inputStream.end(()=>{if(!this.handleContentP){let r=new Error("Cache input stream was empty");return r.code="ENODATA",Promise.reject(r).catch(t)}this.handleContentP.then(r=>{r.integrity&&this.emit("integrity",r.integrity),r.size!==null&&this.emit("size",r.size),t()},r=>t(r))})}};function Twl(e,t={}){return new vjr(e,t)}async function Rwl(e,t,r){let n=await Kms(t,r);try{let a=await Nwl(e,t,n.target,r);return await jms(n,t,a.integrity,r),a}finally{n.moved||await $7e.rm(n.target,{recursive:!0,force:!0})}}async function Nwl(e,t,r,n){let a=new Bwl.WriteStream(r,{flags:"wx"});if(n.integrityEmitter){let[I,C]=await Promise.all([Jms.once(n.integrityEmitter,"integrity").then(b=>b[0]),Jms.once(n.integrityEmitter,"size").then(b=>b[0]),new Ums(e,a).promise()]);return{integrity:I,size:C}}let o,l,A=Sjr.integrityStream({integrity:n.integrity,algorithms:n.algorithms,size:n.size});return A.on("integrity",I=>{o=I}),A.on("size",I=>{l=I}),await new Ums(e,A,a).promise(),{integrity:o,size:l}}async function Kms(e,t){let r=vwl(Ejr.join(e,"tmp"),t.tmpPrefix);return await $7e.mkdir(Ejr.dirname(r),{recursive:!0}),{target:r,moved:!1}}async function jms(e,t,r){let n=ywl(t,r),a=Ejr.dirname(n);return q7e.has(n)||q7e.set(n,$7e.mkdir(a,{recursive:!0}).then(async()=>(await bwl(e.target,n,{overwrite:!1}),e.moved=!0,e.moved)).catch(o=>{if(!o.message.startsWith("The destination file exists"))throw Object.assign(o,{code:"EEXIST"})}).finally(()=>{q7e.delete(n)})),q7e.get(n)}function Dwl(e,t){let r=new Error(`Bad data size: expected inserted data to be ${e} bytes, but got ${t} instead`);return r.expected=e,r.found=t,r.code="EBADSIZE",r}function kwl(e,t){let r=new Error(`Integrity check failed: - Wanted: ${e} - Found: ${t}`);return r.code="EINTEGRITY",r.expected=e,r.found=t,r}});var rCs=H((usg,wjr)=>{"use strict";var qms=$Ge(),$ms=J7e(),eCs=zms(),xwl=sZt(),{PassThrough:Gwl}=U8r(),Fwl=jGe(),tCs=e=>({algorithms:["sha512"],...e});wjr.exports=Zwl;async function Zwl(e,t,r,n={}){let{memoize:a}=n;n=tCs(n);let o=await eCs(e,r,n),l=await qms.insert(e,t,o.integrity,{...n,size:o.size});return a&&$ms.put(e,l,r,n),o.integrity}wjr.exports.stream=Lwl;function Lwl(e,t,r={}){let{memoize:n}=r;r=tCs(r);let a,o,l,A,f=new Fwl;if(n){let C=new Gwl().on("collect",b=>{A=b});f.push(C)}let I=eCs.stream(e,r).on("integrity",C=>{a=C}).on("size",C=>{o=C}).on("error",C=>{l=C});return f.push(I),f.push(new xwl({async flush(){if(!l){let C=await qms.insert(e,t,a,{...r,size:o});n&&A&&$ms.put(e,C,A,r),f.emit("integrity",a),f.emit("size",o)}}})),f}});var Tjr=H((gsg,oCs)=>{"use strict";oCs.exports=iCs;function iCs(e,t,r){e instanceof RegExp&&(e=nCs(e,r)),t instanceof RegExp&&(t=nCs(t,r));var n=sCs(e,t,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+e.length,n[1]),post:r.slice(n[1]+t.length)}}function nCs(e,t){var r=t.match(e);return r?r[0]:null}iCs.range=sCs;function sCs(e,t,r){var n,a,o,l,A,f=r.indexOf(e),I=r.indexOf(t,f+1),C=f;if(f>=0&&I>0){if(e===t)return[f,I];for(n=[],o=r.length;C>=0&&!A;)C==f?(n.push(C),f=r.indexOf(e,C+1)):n.length==1?A=[n.pop(),I]:(a=n.pop(),a=0?f:I;n.length&&(A=[o,l])}return A}});var pCs=H((Asg,dCs)=>{var aCs=Tjr();dCs.exports=Wwl;var cCs="\0SLASH"+Math.random()+"\0",lCs="\0OPEN"+Math.random()+"\0",Njr="\0CLOSE"+Math.random()+"\0",uCs="\0COMMA"+Math.random()+"\0",gCs="\0PERIOD"+Math.random()+"\0";function Rjr(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function Vwl(e){return e.split("\\\\").join(cCs).split("\\{").join(lCs).split("\\}").join(Njr).split("\\,").join(uCs).split("\\.").join(gCs)}function Pwl(e){return e.split(cCs).join("\\").split(lCs).join("{").split(Njr).join("}").split(uCs).join(",").split(gCs).join(".")}function ACs(e){if(!e)return[""];var t=[],r=aCs("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=ACs(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function Wwl(e){return e?(e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),eze(Vwl(e),!0).map(Pwl)):[]}function Owl(e){return"{"+e+"}"}function Mwl(e){return/^-?0\d/.test(e)}function Hwl(e,t){return e<=t}function Ywl(e,t){return e>=t}function eze(e,t){var r=[],n=aCs("{","}",e);if(!n)return[e];var a=n.pre,o=n.post.length?eze(n.post,!1):[""];if(/\$$/.test(n.pre))for(var l=0;l=0;if(!C&&!b)return n.post.match(/,.*\}/)?(e=n.pre+"{"+n.body+Njr+n.post,eze(e)):[e];var E;if(C)E=n.body.split(/\.\./);else if(E=ACs(n.body),E.length===1&&(E=eze(E[0],!1).map(Owl),E.length===1))return o.map(function(De){return n.pre+E[0]+De});var N;if(C){var B=Rjr(E[0]),F=Rjr(E[1]),Q=Math.max(E[0].length,E[1].length),X=E.length==3?Math.abs(Rjr(E[2])):1,ae=Hwl,ne=F0){var be=new Array(de+1).join("0");fe<0?ue="-"+be+ue.slice(1):ue=be+ue}}N.push(ue)}}else{N=[];for(var Se=0;Se{"use strict";Object.defineProperty(BZt,"__esModule",{value:!0});BZt.assertValidPattern=void 0;var Qwl=1024*64,Xwl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>Qwl)throw new TypeError("pattern is too long")};BZt.assertValidPattern=Xwl});var hCs=H(wZt=>{"use strict";Object.defineProperty(wZt,"__esModule",{value:!0});wZt.parseClass=void 0;var Jwl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},tze=e=>e.replace(/[[\]\\-]/g,"\\$&"),Uwl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ICs=e=>e.join(""),Kwl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(tze(b)+"-"+tze(F)):F===b&&n.push(tze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(tze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(tze(F)),o++}if(C{"use strict";Object.defineProperty(TZt,"__esModule",{value:!0});TZt.unescape=void 0;var jwl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");TZt.unescape=jwl});var xjr=H(kZt=>{"use strict";Object.defineProperty(kZt,"__esModule",{value:!0});kZt.AST=void 0;var zwl=hCs(),NZt=RZt(),qwl=new Set(["!","?","+","*","@"]),mCs=e=>qwl.has(e),$wl="(?!(?:^|/)\\.\\.?(?:$|/))",DZt="(?!\\.)",eTl=new Set(["[","."]),tTl=new Set(["..","."]),rTl=new Set("().*{}+?[]^$\\!"),nTl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),kjr="[^/]",CCs=kjr+"*?",_Cs=kjr+"+?",Djr=class e{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,X]=typeof N=="string"?e.#d(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||X,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&tTl.has(this.#r[0]))){let B=eTl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?$wl:Q?DZt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,NZt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#I(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString();return this.#r=[f],this.type=null,this.#t=void 0,[f,(0,NZt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!DZt?"":this.#I(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?DZt:"")+_Cs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?DZt:"")+CCs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,NZt.unescape)(o),this.#t=!!this.#t,this.#n]}#I(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#d(t,r,n=!1){let a=!1,o="",l=!1;for(let A=0;A{"use strict";Object.defineProperty(xZt,"__esModule",{value:!0});xZt.escape=void 0;var iTl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");xZt.escape=iTl});var Hue=H(cd=>{"use strict";var sTl=cd&&cd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cd,"__esModule",{value:!0});cd.unescape=cd.escape=cd.AST=cd.Minimatch=cd.match=cd.makeRe=cd.braceExpand=cd.defaults=cd.filter=cd.GLOBSTAR=cd.sep=cd.minimatch=void 0;var oTl=sTl(pCs()),GZt=fCs(),ECs=xjr(),aTl=Gjr(),cTl=RZt(),lTl=(e,t,r={})=>((0,GZt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new k0e(t,r).match(e));cd.minimatch=lTl;var uTl=/^\*+([^+@!?\*\[\(]*)$/,gTl=e=>t=>!t.startsWith(".")&&t.endsWith(e),ATl=e=>t=>t.endsWith(e),dTl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),pTl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),fTl=/^\*+\.\*+$/,ITl=e=>!e.startsWith(".")&&e.includes("."),hTl=e=>e!=="."&&e!==".."&&e.includes("."),mTl=/^\.\*+$/,CTl=e=>e!=="."&&e!==".."&&e.startsWith("."),_Tl=/^\*+$/,yTl=e=>e.length!==0&&!e.startsWith("."),bTl=e=>e.length!==0&&e!=="."&&e!=="..",ETl=/^\?+([^+@!?\*\[\(]*)?$/,STl=([e,t=""])=>{let r=SCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},vTl=([e,t=""])=>{let r=vCs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},BTl=([e,t=""])=>{let r=vCs([e]);return t?n=>r(n)&&n.endsWith(t):r},wTl=([e,t=""])=>{let r=SCs([e]);return t?n=>r(n)&&n.endsWith(t):r},SCs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},vCs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},BCs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",yCs={win32:{sep:"\\"},posix:{sep:"/"}};cd.sep=BCs==="win32"?yCs.win32.sep:yCs.posix.sep;cd.minimatch.sep=cd.sep;cd.GLOBSTAR=Symbol("globstar **");cd.minimatch.GLOBSTAR=cd.GLOBSTAR;var TTl="[^/]",RTl=TTl+"*?",NTl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",DTl="(?:(?!(?:\\/|^)\\.).)*?",kTl=(e,t={})=>r=>(0,cd.minimatch)(r,e,t);cd.filter=kTl;cd.minimatch.filter=cd.filter;var OH=(e,t={})=>Object.assign({},e,t),xTl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return cd.minimatch;let t=cd.minimatch;return Object.assign((n,a,o={})=>t(n,a,OH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,OH(e,o))}static defaults(a){return t.defaults(OH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,OH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,OH(e,o))}},unescape:(n,a={})=>t.unescape(n,OH(e,a)),escape:(n,a={})=>t.escape(n,OH(e,a)),filter:(n,a={})=>t.filter(n,OH(e,a)),defaults:n=>t.defaults(OH(e,n)),makeRe:(n,a={})=>t.makeRe(n,OH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,OH(e,a)),match:(n,a,o={})=>t.match(n,a,OH(e,o)),sep:t.sep,GLOBSTAR:cd.GLOBSTAR})};cd.defaults=xTl;cd.minimatch.defaults=cd.defaults;var GTl=(e,t={})=>((0,GZt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,oTl.default)(e));cd.braceExpand=GTl;cd.minimatch.braceExpand=cd.braceExpand;var FTl=(e,t={})=>new k0e(e,t).makeRe();cd.makeRe=FTl;cd.minimatch.makeRe=cd.makeRe;var ZTl=(e,t,r={})=>{let n=new k0e(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};cd.match=ZTl;cd.minimatch.match=cd.match;var bCs=/[?*]|[+@!]\(.*?\)|\[|\]/,LTl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),k0e=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,r={}){(0,GZt.assertValidPattern)(t),r=r||{},this.options=r,this.pattern=t,this.platform=r.platform||BCs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!bCs.test(o[2]))&&!bCs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;ane?r=r.slice(ce):ne>ce&&(t=t.slice(ne)))}}let{optimizationLevel:o=1}=this.options;o>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:r}),this.debug("matchOne",t.length,r.length);for(var l=0,A=0,f=t.length,I=r.length;l>> no match, partial?`,t,E,r,N),E===f))}let F;if(typeof C=="string"?(F=b===C,this.debug("string match",C,b,F)):(F=C.test(b),this.debug("pattern match",C,b,F)),!F)return!1}if(l===f&&A===I)return!0;if(l===f)return n;if(A===I)return l===f-1&&t[l]==="";throw new Error("wtf?")}braceExpand(){return(0,cd.braceExpand)(this.pattern,this.options)}parse(t){(0,GZt.assertValidPattern)(t);let r=this.options;if(t==="**")return cd.GLOBSTAR;if(t==="")return"";let n,a=null;(n=t.match(_Tl))?a=r.dot?bTl:yTl:(n=t.match(uTl))?a=(r.nocase?r.dot?pTl:dTl:r.dot?ATl:gTl)(n[1]):(n=t.match(ETl))?a=(r.nocase?r.dot?vTl:STl:r.dot?BTl:wTl)(n):(n=t.match(fTl))?a=r.dot?hTl:ITl:(n=t.match(mTl))&&(a=CTl);let o=ECs.AST.fromGlob(t,this.options).toMMPattern();return a&&typeof o=="object"&&Reflect.defineProperty(o,"test",{value:a}),o}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?RTl:r.dot?NTl:DTl,a=new Set(r.nocase?["i"]:[]),o=t.map(f=>{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?LTl(C):C===cd.GLOBSTAR?cd.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==cd.GLOBSTAR||N===cd.GLOBSTAR||(N===void 0?E!==void 0&&E!==cd.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==cd.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=cd.GLOBSTAR))}),I.filter(C=>C!==cd.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var OTl=z0&&z0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),MTl=z0&&z0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),HTl=z0&&z0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&OTl(t,e,r);return MTl(t,e),t};Object.defineProperty(z0,"__esModule",{value:!0});z0.PathScurry=z0.Path=z0.PathScurryDarwin=z0.PathScurryPosix=z0.PathScurryWin32=z0.PathScurryBase=z0.PathPosix=z0.PathWin32=z0.PathBase=z0.ChildrenCache=z0.ResolveCache=void 0;var kCs=yIe(),PZt=wt("node:path"),YTl=wt("node:url"),nze=wt("fs"),QTl=HTl(wt("node:fs")),XTl=nze.realpathSync.native,FZt=wt("node:fs/promises"),wCs=rF(),ize={lstatSync:nze.lstatSync,readdir:nze.readdir,readdirSync:nze.readdirSync,readlinkSync:nze.readlinkSync,realpathSync:XTl,promises:{lstat:FZt.lstat,readdir:FZt.readdir,readlink:FZt.readlink,realpath:FZt.realpath}},xCs=e=>!e||e===ize||e===QTl?ize:{...ize,...e,promises:{...ize.promises,...e.promises||{}}},GCs=/^\\\\\?\\([a-z]:)\\?$/i,JTl=e=>e.replace(/\//g,"\\").replace(GCs,"$1\\"),UTl=/[\\\/]/,HH=0,FCs=1,ZCs=2,G6=4,LCs=6,VCs=8,x0e=10,PCs=12,MH=15,rze=~MH,Fjr=16,TCs=32,sze=64,rJ=128,ZZt=256,VZt=512,RCs=sze|rJ|VZt,KTl=1023,Zjr=e=>e.isFile()?VCs:e.isDirectory()?G6:e.isSymbolicLink()?x0e:e.isCharacterDevice()?ZCs:e.isBlockDevice()?LCs:e.isSocket()?PCs:e.isFIFO()?FCs:HH,NCs=new Map,oze=e=>{let t=NCs.get(e);if(t)return t;let r=e.normalize("NFKD");return NCs.set(e,r),r},DCs=new Map,LZt=e=>{let t=DCs.get(e);if(t)return t;let r=oze(e.toLowerCase());return DCs.set(e,r),r},aze=class extends kCs.LRUCache{constructor(){super({max:256})}};z0.ResolveCache=aze;var WZt=class extends kCs.LRUCache{constructor(t=16*1024){super({maxSize:t,sizeCalculation:r=>r.length+1})}};z0.ChildrenCache=WZt;var WCs=Symbol("PathScurry setAsCwd"),fx=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#i;get uid(){return this.#i}#s;get gid(){return this.#s}#o;get rdev(){return this.#o}#g;get blksize(){return this.#g}#l;get ino(){return this.#l}#u;get size(){return this.#u}#a;get blocks(){return this.#a}#m;get atimeMs(){return this.#m}#f;get mtimeMs(){return this.#f}#I;get ctimeMs(){return this.#I}#d;get birthtimeMs(){return this.#d}#b;get atime(){return this.#b}#h;get mtime(){return this.#h}#S;get ctime(){return this.#S}#v;get birthtime(){return this.#v}#C;#E;#_;#p;#B;#w;#c;#k;#y;#N;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,r=HH,n,a,o,l,A){this.name=t,this.#C=o?LZt(t):oze(t),this.#c=r&KTl,this.nocase=o,this.roots=a,this.root=n||this,this.#k=l,this.#_=A.fullpath,this.#B=A.relative,this.#w=A.relativePosix,this.parent=A.parent,this.parent?this.#e=this.parent.#e:this.#e=xCs(A.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#k}resolve(t){if(!t)return this;let r=this.getRootString(t),a=t.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#x(a):this.#x(a)}#x(t){let r=this;for(let n of t)r=r.child(n);return r}children(){let t=this.#k.get(this);if(t)return t;let r=Object.assign([],{provisional:0});return this.#k.set(this,r),this.#c&=~Fjr,r}child(t,r){if(t===""||t===".")return this;if(t==="..")return this.parent||this;let n=this.children(),a=this.nocase?LZt(t):oze(t);for(let f of n)if(f.#C===a)return f;let o=this.parent?this.sep:"",l=this.#_?this.#_+o+t:void 0,A=this.newChild(t,HH,{...r,parent:this,fullpath:l});return this.canReaddir()||(A.#c|=rJ),n.push(A),A}relative(){if(this.isCWD)return"";if(this.#B!==void 0)return this.#B;let t=this.name,r=this.parent;if(!r)return this.#B=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+t}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#w!==void 0)return this.#w;let t=this.name,r=this.parent;if(!r)return this.#w=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+t}fullpath(){if(this.#_!==void 0)return this.#_;let t=this.name,r=this.parent;if(!r)return this.#_=this.name;let a=r.fullpath()+(r.parent?this.sep:"")+t;return this.#_=a}fullpathPosix(){if(this.#p!==void 0)return this.#p;if(this.sep==="/")return this.#p=this.fullpath();if(!this.parent){let a=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(a)?this.#p=`//?/${a}`:this.#p=a}let t=this.parent,r=t.fullpathPosix(),n=r+(!r||!t.parent?"":"/")+this.name;return this.#p=n}isUnknown(){return(this.#c&MH)===HH}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#c&MH)===VCs}isDirectory(){return(this.#c&MH)===G6}isCharacterDevice(){return(this.#c&MH)===ZCs}isBlockDevice(){return(this.#c&MH)===LCs}isFIFO(){return(this.#c&MH)===FCs}isSocket(){return(this.#c&MH)===PCs}isSymbolicLink(){return(this.#c&x0e)===x0e}lstatCached(){return this.#c&TCs?this:void 0}readlinkCached(){return this.#y}realpathCached(){return this.#N}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#y)return!0;if(!this.parent)return!1;let t=this.#c&MH;return!(t!==HH&&t!==x0e||this.#c&ZZt||this.#c&rJ)}calledReaddir(){return!!(this.#c&Fjr)}isENOENT(){return!!(this.#c&rJ)}isNamed(t){return this.nocase?this.#C===LZt(t):this.#C===oze(t)}async readlink(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}readlinkSync(){let t=this.#y;if(t)return t;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#y=n}catch(r){this.#A(r.code);return}}#G(t){this.#c|=Fjr;for(let r=t.provisional;rn(null,t))}readdirCB(t,r=!1){if(!this.canReaddir()){r?t(null,[]):queueMicrotask(()=>t(null,[]));return}let n=this.children();if(this.calledReaddir()){let o=n.slice(0,n.provisional);r?t(null,o):queueMicrotask(()=>t(null,o));return}if(this.#H.push(t),this.#Y)return;this.#Y=!0;let a=this.fullpath();this.#e.readdir(a,{withFileTypes:!0},(o,l)=>{if(o)this.#L(o.code),n.provisional=0;else{for(let A of l)this.#P(A,n);this.#G(n)}this.#X(n.slice(0,n.provisional))})}#M;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();if(this.#M)await this.#M;else{let n=()=>{};this.#M=new Promise(a=>n=a);try{for(let a of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#P(a,t);this.#G(t)}catch(a){this.#L(a.code),t.provisional=0}this.#M=void 0,n()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#P(n,t);this.#G(t)}catch(n){this.#L(n.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(this.#c&RCs)return!1;let t=MH&this.#c;return t===HH||t===G6||t===x0e}shouldWalk(t,r){return(this.#c&G6)===G6&&!(this.#c&RCs)&&!t.has(this)&&(!r||r(this))}async realpath(){if(this.#N)return this.#N;if(!((VZt|ZZt|rJ)&this.#c))try{let t=await this.#e.promises.realpath(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}realpathSync(){if(this.#N)return this.#N;if(!((VZt|ZZt|rJ)&this.#c))try{let t=this.#e.realpathSync(this.fullpath());return this.#N=this.resolve(t)}catch{this.#R()}}[WCs](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],a=this;for(;a&&a.parent;)r.add(a),a.#B=n.join(this.sep),a.#w=n.join("/"),a=a.parent,n.push("..");for(a=t;a&&a.parent&&!r.has(a);)a.#B=void 0,a.#w=void 0,a=a.parent}};z0.PathBase=fx;var cze=class e extends fx{sep="\\";splitSep=UTl;constructor(t,r=HH,n,a,o,l,A){super(t,r,n,a,o,l,A)}newChild(t,r=HH,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(t){return PZt.win32.parse(t).root}getRoot(t){if(t=JTl(t.toUpperCase()),t===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(t,r))return this.roots[t]=n;return this.roots[t]=new gze(t,this).root}sameRoot(t,r=this.root.name){return t=t.toUpperCase().replace(/\//g,"\\").replace(GCs,"$1\\"),t===r}};z0.PathWin32=cze;var lze=class e extends fx{splitSep="/";sep="/";constructor(t,r=HH,n,a,o,l,A){super(t,r,n,a,o,l,A)}getRootString(t){return t.startsWith("/")?"/":""}getRoot(t){return this.root}newChild(t,r=HH,n={}){return new e(t,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}};z0.PathPosix=lze;var uze=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(t=process.cwd(),r,n,{nocase:a,childrenCacheSize:o=16*1024,fs:l=ize}={}){this.#r=xCs(l),(t instanceof URL||t.startsWith("file://"))&&(t=(0,YTl.fileURLToPath)(t));let A=r.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(A),this.#e=new aze,this.#t=new aze,this.#n=new WZt(o);let f=A.substring(this.rootPath.length).split(n);if(f.length===1&&!f[0]&&f.pop(),a===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=a,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let I=this.root,C=f.length-1,b=r.sep,E=this.rootPath,N=!1;for(let B of f){let F=C--;I=I.child(B,{relative:new Array(F).fill("..").join(b),relativePosix:new Array(F).fill("..").join("/"),fullpath:E+=(N?"":b)+B}),N=!0}this.cwd=I}depth(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#n}resolve(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#e.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpath();return this.#e.set(r,a),a}resolvePosix(...t){let r="";for(let o=t.length-1;o>=0;o--){let l=t[o];if(!(!l||l===".")&&(r=r?`${l}/${r}`:l,this.isAbsolute(l)))break}let n=this.#t.get(r);if(n!==void 0)return n;let a=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,a),a}relative(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n}=r;if(t.canReaddir()){let a=await t.readdir();return n?a:a.map(o=>o.name)}else return[]}readdirSync(t=this.cwd,r={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0}=r;return t.canReaddir()?n?t.readdirSync():t.readdirSync().map(a=>a.name):[]}async lstat(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=await t.readlink();return r?n:n?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=t.readlinkSync();return r?n:n?.fullpath()}async realpath(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=await t.realpath();return r?n:n?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t.withFileTypes,t=this.cwd);let n=t.realpathSync();return r?n:n?.fullpath()}async walk(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set,I=(b,E)=>{f.add(b),b.readdirCB((N,B)=>{if(N)return E(N);let F=B.length;if(!F)return E();let Q=()=>{--F===0&&E()};for(let X of B)(!o||o(X))&&A.push(n?X:X.fullpath()),a&&X.isSymbolicLink()?X.realpath().then(ae=>ae?.isUnknown()?ae.lstat():ae).then(ae=>ae?.shouldWalk(f,l)?I(ae,Q):Q()):X.shouldWalk(f,l)?I(X,Q):Q()},!0)},C=t;return new Promise((b,E)=>{I(C,N=>{if(N)return E(N);b(A)})})}walkSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=[];(!o||o(t))&&A.push(n?t:t.fullpath());let f=new Set([t]);for(let I of f){let C=I.readdirSync();for(let b of C){(!o||o(b))&&A.push(n?b:b.fullpath());let E=b;if(b.isSymbolicLink()){if(!(a&&(E=b.realpathSync())))continue;E.isUnknown()&&E.lstatSync()}E.shouldWalk(f,l)&&f.add(E)}}return A}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,r={}){return typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd),this.stream(t,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r;(!o||o(t))&&(yield n?t:t.fullpath());let A=new Set([t]);for(let f of A){let I=f.readdirSync();for(let C of I){(!o||o(C))&&(yield n?C:C.fullpath());let b=C;if(C.isSymbolicLink()){if(!(a&&(b=C.realpathSync())))continue;b.isUnknown()&&b.lstatSync()}b.shouldWalk(A,l)&&A.add(b)}}}stream(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new wCs.Minipass({objectMode:!0});(!o||o(t))&&A.write(n?t:t.fullpath());let f=new Set,I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=(Q,X,ae=!1)=>{if(Q)return A.emit("error",Q);if(a&&!ae){let ne=[];for(let ce of X)ce.isSymbolicLink()&&ne.push(ce.realpath().then(fe=>fe?.isUnknown()?fe.lstat():fe));if(ne.length){Promise.all(ne).then(()=>B(null,X,!0));return}}for(let ne of X)ne&&(!o||o(ne))&&(A.write(n?ne:ne.fullpath())||(E=!0));C--;for(let ne of X){let ce=ne.realpathCached()||ne;ce.shouldWalk(f,l)&&I.push(ce)}E&&!A.flowing?A.once("drain",b):F||b()},F=!0;N.readdirCB(B,!0),F=!1}};return b(),A}streamSync(t=this.cwd,r={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof fx||(r=t,t=this.cwd);let{withFileTypes:n=!0,follow:a=!1,filter:o,walkFilter:l}=r,A=new wCs.Minipass({objectMode:!0}),f=new Set;(!o||o(t))&&A.write(n?t:t.fullpath());let I=[t],C=0,b=()=>{let E=!1;for(;!E;){let N=I.shift();if(!N){C===0&&A.end();return}C++,f.add(N);let B=N.readdirSync();for(let F of B)(!o||o(F))&&(A.write(n?F:F.fullpath())||(E=!0));C--;for(let F of B){let Q=F;if(F.isSymbolicLink()){if(!(a&&(Q=F.realpathSync())))continue;Q.isUnknown()&&Q.lstatSync()}Q.shouldWalk(f,l)&&I.push(Q)}}E&&!A.flowing&&A.once("drain",b)};return b(),A}chdir(t=this.cwd){let r=this.cwd;this.cwd=typeof t=="string"?this.cwd.resolve(t):t,this.cwd[WCs](r)}};z0.PathScurryBase=uze;var gze=class extends uze{sep="\\";constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,PZt.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let a=this.cwd;a;a=a.parent)a.nocase=this.nocase}parseRootPath(t){return PZt.win32.parse(t).root.toUpperCase()}newRoot(t){return new cze(this.rootPath,G6,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}};z0.PathScurryWin32=gze;var Aze=class extends uze{sep="/";constructor(t=process.cwd(),r={}){let{nocase:n=!1}=r;super(t,PZt.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(t){return"/"}newRoot(t){return new lze(this.rootPath,G6,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}};z0.PathScurryPosix=Aze;var OZt=class extends Aze{constructor(t=process.cwd(),r={}){let{nocase:n=!0}=r;super(t,{...r,nocase:n})}};z0.PathScurryDarwin=OZt;z0.Path=process.platform==="win32"?cze:lze;z0.PathScurry=process.platform==="win32"?gze:process.platform==="darwin"?OZt:Aze});var Vjr=H(MZt=>{"use strict";Object.defineProperty(MZt,"__esModule",{value:!0});MZt.Pattern=void 0;var jTl=Hue(),zTl=e=>e.length>=1,qTl=e=>e.length>=1,Ljr=class e{#e;#t;#n;length;#r;#i;#s;#o;#g;#l;#u=!0;constructor(t,r,n,a){if(!zTl(t))throw new TypeError("empty pattern list");if(!qTl(r))throw new TypeError("empty glob list");if(r.length!==t.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=t,this.#t=r,this.#n=n,this.#r=a,this.#n===0){if(this.isUNC()){let[o,l,A,f,...I]=this.#e,[C,b,E,N,...B]=this.#t;I[0]===""&&(I.shift(),B.shift());let F=[o,l,A,f,""].join("/"),Q=[C,b,E,N,""].join("/");this.#e=[F,...I],this.#t=[Q,...B],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[o,...l]=this.#e,[A,...f]=this.#t;l[0]===""&&(l.shift(),f.shift());let I=o+"/",C=A+"/";this.#e=[I,...l],this.#t=[C,...f],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===jTl.GLOBSTAR}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#s=this.#s||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#i!==void 0?this.#i:this.hasMore()?(this.#i=new e(this.#e,this.#t,this.#n+1,this.#r),this.#i.#l=this.#l,this.#i.#g=this.#g,this.#i.#o=this.#o,this.#i):this.#i=null}isUNC(){let t=this.#e;return this.#g!==void 0?this.#g:this.#g=this.#r==="win32"&&this.#n===0&&t[0]===""&&t[1]===""&&typeof t[2]=="string"&&!!t[2]&&typeof t[3]=="string"&&!!t[3]}isDrive(){let t=this.#e;return this.#o!==void 0?this.#o:this.#o=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0])}isAbsolute(){let t=this.#e;return this.#l!==void 0?this.#l:this.#l=t[0]===""&&t.length>1||this.isDrive()||this.isUNC()}root(){let t=this.#e[0];return typeof t=="string"&&this.isAbsolute()&&this.#n===0?t:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#u?!1:(this.#u=!1,!0)}};MZt.Pattern=Ljr});var Wjr=H(HZt=>{"use strict";Object.defineProperty(HZt,"__esModule",{value:!0});HZt.Ignore=void 0;var MCs=Hue(),$Tl=Vjr(),eRl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Pjr=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:r,nocase:n,noext:a,noglobstar:o,platform:l=eRl}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=l,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:a,noglobstar:o,optimizationLevel:2,platform:l,nocomment:!0,nonegate:!0};for(let A of t)this.add(A)}add(t){let r=new MCs.Minimatch(t,this.mmopts);for(let n=0;n{"use strict";Object.defineProperty(F6,"__esModule",{value:!0});F6.Processor=F6.SubWalks=F6.MatchRecord=F6.HasWalkedCache=void 0;var HCs=Hue(),YZt=class e{store;constructor(t=new Map){this.store=t}copy(){return new e(new Map(this.store))}hasWalked(t,r){return this.store.get(t.fullpath())?.has(r.globString())}storeWalked(t,r){let n=t.fullpath(),a=this.store.get(n);a?a.add(r.globString()):this.store.set(n,new Set([r.globString()]))}};F6.HasWalkedCache=YZt;var QZt=class{store=new Map;add(t,r,n){let a=(r?2:0)|(n?1:0),o=this.store.get(t);this.store.set(t,o===void 0?a:a&o)}entries(){return[...this.store.entries()].map(([t,r])=>[t,!!(r&2),!!(r&1)])}};F6.MatchRecord=QZt;var XZt=class{store=new Map;add(t,r){if(!t.canReaddir())return;let n=this.store.get(t);n?n.find(a=>a.globString()===r.globString())||n.push(r):this.store.set(t,[r])}get(t){let r=this.store.get(t);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}};F6.SubWalks=XZt;var Ojr=class e{hasWalkedCache;matches=new QZt;subwalks=new XZt;patterns;follow;dot;opts;constructor(t,r){this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=r?r.copy():new YZt}processPatterns(t,r){this.patterns=r;let n=r.map(a=>[t,a]);for(let[a,o]of n){this.hasWalkedCache.storeWalked(a,o);let l=o.root(),A=o.isAbsolute()&&this.opts.absolute!==!1;if(l){a=a.resolve(l==="/"&&this.opts.root!==void 0?this.opts.root:l);let b=o.rest();if(b)o=b;else{this.matches.add(a,!0,!1);continue}}if(a.isENOENT())continue;let f,I,C=!1;for(;typeof(f=o.pattern())=="string"&&(I=o.rest());)a=a.resolve(f),o=I,C=!0;if(f=o.pattern(),I=o.rest(),C){if(this.hasWalkedCache.hasWalked(a,o))continue;this.hasWalkedCache.storeWalked(a,o)}if(typeof f=="string"){let b=f===".."||f===""||f===".";this.matches.add(a.resolve(f),A,b);continue}else if(f===HCs.GLOBSTAR){(!a.isSymbolicLink()||this.follow||o.checkFollowGlobstar())&&this.subwalks.add(a,o);let b=I?.pattern(),E=I?.rest();if(!I||(b===""||b===".")&&!E)this.matches.add(a,A,b===""||b===".");else if(b===".."){let N=a.parent||a;E?this.hasWalkedCache.hasWalked(N,E)||this.subwalks.add(N,E):this.matches.add(N,A,!0)}}else f instanceof RegExp&&this.subwalks.add(a,o)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new e(this.opts,this.hasWalkedCache)}filterEntries(t,r){let n=this.subwalks.get(t),a=this.child();for(let o of r)for(let l of n){let A=l.isAbsolute(),f=l.pattern(),I=l.rest();f===HCs.GLOBSTAR?a.testGlobstar(o,l,I,A):f instanceof RegExp?a.testRegExp(o,f,I,A):a.testString(o,f,I,A)}return a}testGlobstar(t,r,n,a){if((this.dot||!t.name.startsWith("."))&&(r.hasMore()||this.matches.add(t,a,!1),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,r):t.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(t,n):r.markFollowGlobstar()&&this.subwalks.add(t,r)))),n){let o=n.pattern();if(typeof o=="string"&&o!==".."&&o!==""&&o!==".")this.testString(t,o,n.rest(),a);else if(o===".."){let l=t.parent||t;this.subwalks.add(l,n)}else o instanceof RegExp&&this.testRegExp(t,o,n.rest(),a)}}testRegExp(t,r,n,a){r.test(t.name)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}testString(t,r,n,a){t.isNamed(r)&&(n?this.subwalks.add(t,n):this.matches.add(t,a,!1))}};F6.Processor=Ojr});var JCs=H(Yue=>{"use strict";Object.defineProperty(Yue,"__esModule",{value:!0});Yue.GlobStream=Yue.GlobWalker=Yue.GlobUtil=void 0;var tRl=rF(),QCs=Wjr(),XCs=YCs(),rRl=(e,t)=>typeof e=="string"?new QCs.Ignore([e],t):Array.isArray(e)?new QCs.Ignore(e,t):e,dze=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(t,r,n){if(this.patterns=t,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=rRl(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let a="cannot ignore child matches, ignore lacks add() method.";throw new Error(a)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(t){return this.seen.has(t)||!!this.#t?.ignored?.(t)}#i(t){return!!this.#t?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let t;for(;!this.paused&&(t=this.#e.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#e.push(t):t())}async matchCheck(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||await t.realpath(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=await o.realpath();l&&(l.isUnknown()||this.opts.stat)&&await l.lstat()}return this.matchCheckTest(o,r)}matchCheckTest(t,r){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!r||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#r(t)?t:void 0}matchCheckSync(t,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=t.realpathCached()||t.realpathSync(),!n)return;t=n}let o=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&o?.isSymbolicLink()){let l=o.realpathSync();l&&(l?.isUnknown()||this.opts.stat)&&l.lstatSync()}return this.matchCheckTest(o,r)}matchFinish(t,r){if(this.#r(t))return;if(!this.includeChildMatches&&this.#t?.add){let o=`${t.relativePosix()}/**`;this.#t.add(o)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(t);let a=this.opts.mark&&t.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(n){let o=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(o+a)}else{let o=this.opts.posix?t.relativePosix():t.relative(),l=this.opts.dotRelative&&!o.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(o?l+o+a:"."+a)}}async match(t,r,n){let a=await this.matchCheck(t,n);a&&this.matchFinish(a,r)}matchSync(t,r,n){let a=this.matchCheckSync(t,n);a&&this.matchFinish(a,r)}walkCB(t,r,n){this.signal?.aborted&&n(),this.walkCB2(t,r,new XCs.Processor(this.opts),n)}walkCB2(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirCached();A.calledReaddir()?this.walkCB3(A,f,n,l):A.readdirCB((I,C)=>this.walkCB3(A,C,n,l),!0)}l()}walkCB3(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||(o++,this.match(A,f,I).then(()=>l()));for(let[A,f]of n.subwalks.entries())o++,this.walkCB2(A,f,n.child(),l);l()}walkCBSync(t,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(t,r,new XCs.Processor(this.opts),n)}walkCB2Sync(t,r,n,a){if(this.#i(t))return a();if(this.signal?.aborted&&a(),this.paused){this.onResume(()=>this.walkCB2Sync(t,r,n,a));return}n.processPatterns(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let A of n.subwalkTargets()){if(this.maxDepth!==1/0&&A.depth()>=this.maxDepth)continue;o++;let f=A.readdirSync();this.walkCB3Sync(A,f,n,l)}l()}walkCB3Sync(t,r,n,a){n=n.filterEntries(t,r);let o=1,l=()=>{--o===0&&a()};for(let[A,f,I]of n.matches.entries())this.#r(A)||this.matchSync(A,f,I);for(let[A,f]of n.subwalks.entries())o++,this.walkCB2Sync(A,f,n.child(),l);l()}};Yue.GlobUtil=dze;var Mjr=class extends dze{matches=new Set;constructor(t,r,n){super(t,r,n)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}};Yue.GlobWalker=Mjr;var Hjr=class extends dze{results;constructor(t,r,n){super(t,r,n),this.results=new tRl.Minipass({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};Yue.GlobStream=Hjr});var Qjr=H(KZt=>{"use strict";Object.defineProperty(KZt,"__esModule",{value:!0});KZt.Glob=void 0;var nRl=Hue(),iRl=wt("node:url"),JZt=OCs(),sRl=Vjr(),UZt=JCs(),oRl=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Yjr=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,iRl.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof t=="string"&&(t=[t]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(t=t.map(f=>f.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");t=t.map(f=>f.includes("/")?f:`./**/${f}`)}if(this.pattern=t,this.platform=r.platform||oRl,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let f=r.platform==="win32"?JZt.PathScurryWin32:r.platform==="darwin"?JZt.PathScurryDarwin:r.platform?JZt.PathScurryPosix:JZt.PathScurry;this.scurry=new f(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",a={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},o=this.pattern.map(f=>new nRl.Minimatch(f,a)),[l,A]=o.reduce((f,I)=>(f[0].push(...I.set),f[1].push(...I.globParts),f),[[],[]]);this.patterns=l.map((f,I)=>{let C=A[I];if(!C)throw new Error("invalid pattern object");return new sRl.Pattern(f,C,0,this.platform)})}async walk(){return[...await new UZt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new UZt.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new UZt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new UZt.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};KZt.Glob=Yjr});var Xjr=H(jZt=>{"use strict";Object.defineProperty(jZt,"__esModule",{value:!0});jZt.hasMagic=void 0;var aRl=Hue(),cRl=(e,t={})=>{Array.isArray(e)||(e=[e]);for(let r of e)if(new aRl.Minimatch(r,t).hasMagic())return!0;return!1};jZt.hasMagic=cRl});var zCs=H(lC=>{"use strict";Object.defineProperty(lC,"__esModule",{value:!0});lC.glob=lC.sync=lC.iterate=lC.iterateSync=lC.stream=lC.streamSync=lC.Ignore=lC.hasMagic=lC.Glob=lC.unescape=lC.escape=void 0;lC.globStreamSync=pze;lC.globStream=Jjr;lC.globSync=Ujr;lC.globIterateSync=fze;lC.globIterate=Kjr;var UCs=Hue(),G0e=Qjr(),lRl=Xjr(),jCs=Hue();Object.defineProperty(lC,"escape",{enumerable:!0,get:function(){return jCs.escape}});Object.defineProperty(lC,"unescape",{enumerable:!0,get:function(){return jCs.unescape}});var uRl=Qjr();Object.defineProperty(lC,"Glob",{enumerable:!0,get:function(){return uRl.Glob}});var gRl=Xjr();Object.defineProperty(lC,"hasMagic",{enumerable:!0,get:function(){return gRl.hasMagic}});var ARl=Wjr();Object.defineProperty(lC,"Ignore",{enumerable:!0,get:function(){return ARl.Ignore}});function pze(e,t={}){return new G0e.Glob(e,t).streamSync()}function Jjr(e,t={}){return new G0e.Glob(e,t).stream()}function Ujr(e,t={}){return new G0e.Glob(e,t).walkSync()}async function KCs(e,t={}){return new G0e.Glob(e,t).walk()}function fze(e,t={}){return new G0e.Glob(e,t).iterateSync()}function Kjr(e,t={}){return new G0e.Glob(e,t).iterate()}lC.streamSync=pze;lC.stream=Object.assign(Jjr,{sync:pze});lC.iterateSync=fze;lC.iterate=Object.assign(Kjr,{sync:fze});lC.sync=Object.assign(Ujr,{stream:pze,iterate:fze});lC.glob=Object.assign(KCs,{glob:KCs,globSync:Ujr,sync:lC.sync,globStream:Jjr,stream:lC.stream,globStreamSync:pze,streamSync:lC.streamSync,globIterate:Kjr,iterate:lC.iterate,globIterateSync:fze,iterateSync:lC.iterateSync,Glob:G0e.Glob,hasMagic:lRl.hasMagic,escape:UCs.escape,unescape:UCs.unescape});lC.glob.glob=lC.glob});var jjr=H((Rsg,$Cs)=>{"use strict";var{glob:dRl}=zCs(),qCs=wt("path"),pRl=e=>e.split(qCs.win32.sep).join(qCs.posix.sep);$Cs.exports=(e,t)=>dRl(pRl(e),t)});var t_s=H((Nsg,e_s)=>{"use strict";var fRl=wt("fs/promises"),IRl=zGe(),{hasContent:hRl}=bjr();e_s.exports=mRl;async function mRl(e,t){let r=await hRl(e,t);return r&&r.sri?(await fRl.rm(IRl(e,r.sri),{recursive:!0,force:!0}),!0):!1}});var n_s=H((Dsg,Ize)=>{"use strict";var{rm:CRl}=wt("fs/promises"),_Rl=jjr(),yRl=$Ge(),zjr=J7e(),bRl=wt("path"),ERl=t_s();Ize.exports=r_s;Ize.exports.entry=r_s;function r_s(e,t,r){return zjr.clearMemoized(),yRl.delete(e,t,r)}Ize.exports.content=SRl;function SRl(e,t){return zjr.clearMemoized(),ERl(e,t)}Ize.exports.all=vRl;async function vRl(e){zjr.clearMemoized();let t=await _Rl(bRl.join(e,"*(content-*|index-*)"),{silent:!0,nosort:!0});return Promise.all(t.map(r=>CRl(r,{recursive:!0,force:!0})))}});var s_s=H((ksg,t6r)=>{"use strict";var{mkdir:BRl,readFile:wRl,rm:$jr,stat:e6r,truncate:TRl,writeFile:RRl}=wt("fs/promises"),i_s=zGe(),NRl=vZt(),DRl=jjr(),cFe=$Ge(),zZt=wt("path"),qjr=Jte(),kRl=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),xRl=e=>({concurrency:20,log:{silly(){}},...e});t6r.exports=GRl;async function GRl(e,t){t=xRl(t),t.log.silly("verify","verifying cache at",e);let r=[FRl,LRl,VRl,WRl,MRl,HRl,ZRl],n={};for(let a of r){let o=a.name,l=new Date,A=await a(e,t);A&&Object.keys(A).forEach(I=>{n[I]=A[I]});let f=new Date;n.runTime||(n.runTime={}),n.runTime[o]=f-l}return n.runTime.total=n.endTime-n.startTime,t.log.silly("verify","verification finished for",e,"in",`${n.runTime.total}ms`),n}async function FRl(){return{startTime:new Date}}async function ZRl(){return{endTime:new Date}}async function LRl(e,t){return t.log.silly("verify","fixing cache permissions"),await BRl(e,{recursive:!0}),null}async function VRl(e,t){t.log.silly("verify","garbage collecting content");let{default:r}=await Promise.resolve().then(()=>(AZt(),gZt)),n=cFe.lsStream(e),a=new Set;n.on("data",f=>{if(t.filter&&!t.filter(f))return;let I=qjr.parse(f.integrity);for(let C in I)a.add(I[C].toString())}),await new Promise((f,I)=>{n.on("end",f).on("error",I)});let o=i_s.contentDir(e),l=await DRl(zZt.join(o,"**"),{follow:!1,nodir:!0,nosort:!0}),A={verifiedContent:0,reclaimedCount:0,reclaimedSize:0,badContentCount:0,keptSize:0};return await r(l,async f=>{let I=f.split(/[/\\]/),C=I.slice(I.length-3).join(""),b=I[I.length-4],E=qjr.fromHex(C,b);if(a.has(E.toString())){let N=await PRl(f,E);N.valid?(A.verifiedContent++,A.keptSize+=N.size):(A.reclaimedCount++,A.badContentCount++,A.reclaimedSize+=N.size)}else{A.reclaimedCount++;let N=await e6r(f);await $jr(f,{recursive:!0,force:!0}),A.reclaimedSize+=N.size}return A},{concurrency:t.concurrency}),A}async function PRl(e,t){let r={};try{let{size:n}=await e6r(e);r.size=n,r.valid=!0,await qjr.checkStream(new NRl.ReadStream(e),t)}catch(n){if(n.code==="ENOENT")return{size:0,valid:!1};if(n.code!=="EINTEGRITY")throw n;await $jr(e,{recursive:!0,force:!0}),r.valid=!1}return r}async function WRl(e,t){t.log.silly("verify","rebuilding index");let{default:r}=await Promise.resolve().then(()=>(AZt(),gZt)),n=await cFe.ls(e),a={missingContent:0,rejectedEntries:0,totalEntries:0},o={};for(let l in n)if(kRl(n,l)){let A=cFe.hashKey(l),f=n[l],I=t.filter&&!t.filter(f);I&&a.rejectedEntries++,o[A]&&!I?o[A].push(f):o[A]&&I||(I?(o[A]=[],o[A]._path=cFe.bucketPath(e,l)):(o[A]=[f],o[A]._path=cFe.bucketPath(e,l)))}return await r(Object.keys(o),l=>ORl(e,o[l],a,t),{concurrency:t.concurrency}),a}async function ORl(e,t,r){await TRl(t._path);for(let n of t){let a=i_s(e,n.integrity);try{await e6r(a),await cFe.insert(e,n.key,n.integrity,{metadata:n.metadata,size:n.size,time:n.time}),r.totalEntries++}catch(o){if(o.code==="ENOENT")r.rejectedEntries++,r.missingContent++;else throw o}}}function MRl(e,t){return t.log.silly("verify","cleaning tmp directory"),$jr(zZt.join(e,"tmp"),{recursive:!0,force:!0})}async function HRl(e,t){let r=zZt.join(e,"_lastverified");return t.log.silly("verify","writing verifile to "+r),RRl(r,`${Date.now()}`)}t6r.exports.lastRun=YRl;async function YRl(e){let t=await wRl(zZt.join(e,"_lastverified"),{encoding:"utf8"});return new Date(+t)}});var a_s=H((xsg,n6r)=>{"use strict";var{withTempDir:QRl}=uZt(),o_s=wt("fs/promises"),r6r=wt("path");n6r.exports.mkdir=XRl;async function XRl(e,t={}){let{tmpPrefix:r}=t,n=r6r.join(e,"tmp");await o_s.mkdir(n,{recursive:!0,owner:"inherit"});let a=`${n}${r6r.sep}${r||""}`;return o_s.mkdtemp(a,{owner:"inherit"})}n6r.exports.withTmp=JRl;function JRl(e,t,r){return r||(r=t,t={}),QRl(r6r.join(e,"tmp"),r,t)}});var g_s=H((Gsg,rE)=>{"use strict";var Que=Xms(),c_s=rCs(),i6r=n_s(),l_s=s_s(),{clearMemoized:URl}=J7e(),u_s=a_s(),qZt=$Ge();rE.exports.index={};rE.exports.index.compact=qZt.compact;rE.exports.index.insert=qZt.insert;rE.exports.ls=qZt.ls;rE.exports.ls.stream=qZt.lsStream;rE.exports.get=Que;rE.exports.get.byDigest=Que.byDigest;rE.exports.get.stream=Que.stream;rE.exports.get.stream.byDigest=Que.stream.byDigest;rE.exports.get.copy=Que.copy;rE.exports.get.copy.byDigest=Que.copy.byDigest;rE.exports.get.info=Que.info;rE.exports.get.hasContent=Que.hasContent;rE.exports.put=c_s;rE.exports.put.stream=c_s.stream;rE.exports.rm=i6r.entry;rE.exports.rm.all=i6r.all;rE.exports.rm.entry=rE.exports.rm;rE.exports.rm.content=i6r.content;rE.exports.clearMemoized=URl;rE.exports.tmp={};rE.exports.tmp.mkdir=u_s.mkdir;rE.exports.tmp.withTmp=u_s.withTmp;rE.exports.verify=l_s;rE.exports.verify.lastRun=l_s.lastRun});var o6r=H((Fsg,A_s)=>{"use strict";var KRl=jGe(),s6r=class extends KRl{#e=[];#t=new Map;constructor(t,...r){super(),this.#e=t.events,r.length&&this.push(...r)}on(t,r){return this.#e.includes(t)&&this.#t.has(t)?r(...this.#t.get(t)):super.on(t,r)}emit(t,...r){return this.#e.includes(t)&&this.#t.set(t,r),super.emit(t,...r)}};A_s.exports=s6r});var p_s=H((Zsg,d_s)=>{var{URL:jRl,format:zRl}=wt("url"),qRl={auth:!1,fragment:!1,search:!0,unicode:!1},$Rl=e=>{let t=new jRl(e.url);return`make-fetch-happen:request-cache:${zRl(t,qRl)}`};d_s.exports=$Rl});var h_s=H((Lsg,I_s)=>{"use strict";function f_s(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function eNl(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=void 0),t!=null&&(r.code=t);try{return f_s(e,r)}catch{r.message=e.message,r.stack=e.stack;let a=function(){};return a.prototype=Object.create(Object.getPrototypeOf(e)),f_s(new a,r)}}I_s.exports=eNl});var C_s=H((Vsg,m_s)=>{function YH(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}m_s.exports=YH;YH.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};YH.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};YH.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,a=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&a.unref(),!0};YH.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};YH.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};YH.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};YH.prototype.start=YH.prototype.try;YH.prototype.errors=function(){return this._errors};YH.prototype.attempts=function(){return this._attempts};YH.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=a,r=l)}return t}});var __s=H(F0e=>{var tNl=C_s();F0e.operation=function(e){var t=F0e.timeouts(e);return new tNl(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};F0e.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],a=0;a{y_s.exports=__s()});var a6r=H((Osg,S_s)=>{"use strict";var rNl=h_s(),nNl=b_s(),iNl=Object.prototype.hasOwnProperty;function E_s(e){return e&&e.code==="EPROMISERETRY"&&iNl.call(e,"retried")}function sNl(e,t){var r,n;return typeof e=="object"&&typeof t=="function"&&(r=t,t=e,e=r),n=nNl.operation(t),new Promise(function(a,o){n.attempt(function(l){Promise.resolve().then(function(){return e(function(A){throw E_s(A)&&(A=A.retried),rNl(new Error("Retrying"),"EPROMISERETRY",{retried:A})},l)}).then(a,function(A){E_s(A)&&(A=A.retried,n.retry(A||new Error))||o(A)})})})}S_s.exports=sNl});var c6r=H((Msg,v_s)=>{var oNl=Symbol("proc-log.meta");v_s.exports={META:oNl,output:{LEVELS:["standard","error","buffer","flush"],KEYS:{standard:"standard",error:"error",buffer:"buffer",flush:"flush"},standard:function(...e){return process.emit("output","standard",...e)},error:function(...e){return process.emit("output","error",...e)},buffer:function(...e){return process.emit("output","buffer",...e)},flush:function(...e){return process.emit("output","flush",...e)}},log:{LEVELS:["notice","error","warn","info","verbose","http","silly","timing","pause","resume"],KEYS:{notice:"notice",error:"error",warn:"warn",info:"info",verbose:"verbose",http:"http",silly:"silly",timing:"timing",pause:"pause",resume:"resume"},error:function(...e){return process.emit("log","error",...e)},notice:function(...e){return process.emit("log","notice",...e)},warn:function(...e){return process.emit("log","warn",...e)},info:function(...e){return process.emit("log","info",...e)},verbose:function(...e){return process.emit("log","verbose",...e)},http:function(...e){return process.emit("log","http",...e)},silly:function(...e){return process.emit("log","silly",...e)},timing:function(...e){return process.emit("log","timing",...e)},pause:function(){return process.emit("log","pause")},resume:function(){return process.emit("log","resume")}},time:{LEVELS:["start","end"],KEYS:{start:"start",end:"end"},start:function(e,t){process.emit("time","start",e);function r(){return process.emit("time","end",e)}if(typeof t=="function"){let n=t();return n&&n.finally?n.finally(r):(r(),n)}return r},end:function(e){return process.emit("time","end",e)}},input:{LEVELS:["start","end","read"],KEYS:{start:"start",end:"end",read:"read"},start:function(e){process.emit("input","start");function t(){return process.emit("input","end")}if(typeof e=="function"){let r=e();return r&&r.finally?r.finally(t):(t(),r)}return t},end:function(){return process.emit("input","end")},read:function(...e){let t,r,n=new Promise((a,o)=>{t=a,r=o});return process.emit("input","read",t,r,...e),n}}}});var l6r=H((Hsg,w_s)=>{"use strict";var{LRUCache:aNl}=yIe(),B_s=wt("dns"),$Zt=new aNl({max:50}),cNl=({family:e=0,hints:t=B_s.ADDRCONFIG,all:r=!1,verbatim:n=void 0,ttl:a=5*60*1e3,lookup:o=B_s.lookup})=>({hints:t,lookup:(l,...A)=>{let f=A.pop(),I=A[0]??{},C={family:e,hints:t,all:r,verbatim:n,...typeof I=="number"?{family:I}:I},b=JSON.stringify({hostname:l,...C});if($Zt.has(b)){let E=$Zt.get(b);return process.nextTick(f,null,...E)}o(l,C,(E,...N)=>E?f(E):($Zt.set(b,N,{ttl:a}),f(null,...N)))}});w_s.exports={cache:$Zt,getOptions:cNl}});var u6r=H((Ysg,R_s)=>{"use strict";var lNl=l6r(),uNl=e=>{let t=parseInt(e.family??"0",10),r=e.keepAlive??!0,n={keepAliveMsecs:r?1e3:void 0,maxSockets:e.maxSockets??15,maxTotalSockets:1/0,maxFreeSockets:r?256:void 0,scheduling:"fifo",...e,family:t,keepAlive:r,timeouts:{idle:e.timeout??0,connection:0,response:0,transfer:0,...e.timeouts},...lNl.getOptions({family:t,...e.dns})};return delete n.timeout,n},T_s=e=>{let t="",r=Object.entries(e).sort((n,a)=>n[0]-a[0]);for(let[n,a]of r)a==null?a="null":a instanceof URL?a=a.toString():typeof a=="object"&&(a=T_s(a)),t+=`${n}:${a}:`;return t},gNl=({secureEndpoint:e,...t})=>T_s({secureEndpoint:!!e,family:t.family,hints:t.hints,localAddress:t.localAddress,strictSsl:e?!!t.rejectUnauthorized:!1,ca:e?t.ca:null,cert:e?t.cert:null,key:e?t.key:null,keepAlive:t.keepAlive,keepAliveMsecs:t.keepAliveMsecs,maxSockets:t.maxSockets,maxTotalSockets:t.maxTotalSockets,maxFreeSockets:t.maxFreeSockets,scheduling:t.scheduling,timeouts:t.timeouts,proxy:t.proxy});R_s.exports={normalizeOptions:uNl,cacheOptions:gNl}});var k_s=H($V=>{"use strict";var ANl=$V&&$V.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),dNl=$V&&$V.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),N_s=$V&&$V.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ANl(t,e,r);return dNl(t,e),t};Object.defineProperty($V,"__esModule",{value:!0});$V.req=$V.json=$V.toBuffer=void 0;var pNl=N_s(wt("http")),fNl=N_s(wt("https"));async function D_s(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}$V.toBuffer=D_s;async function INl(e){let r=(await D_s(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let a=n;throw a.message+=` (input: ${r})`,a}}$V.json=INl;function hNl(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?fNl:pNl).request(e,t),a=new Promise((o,l)=>{n.once("response",o).once("error",l).end()});return n.then=a.then.bind(a),n}$V.req=hNl});var hze=H(UO=>{"use strict";var G_s=UO&&UO.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mNl=UO&&UO.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),F_s=UO&&UO.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&G_s(t,e,r);return mNl(t,e),t},CNl=UO&&UO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&G_s(t,e,r)};Object.defineProperty(UO,"__esModule",{value:!0});UO.Agent=void 0;var _Nl=F_s(wt("net")),x_s=F_s(wt("http")),yNl=wt("https");CNl(k_s(),UO);var Z6=Symbol("AgentBaseInternalState"),g6r=class extends x_s.Agent{constructor(t){super(t),this[Z6]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new _Nl.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],a=n.indexOf(r);a!==-1&&(n.splice(a,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return(typeof t.secureEndpoint=="boolean"?t.secureEndpoint:this.isSecureEndpoint(t))?yNl.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let a={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(a),l=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(t,a)).then(A=>{if(this.decrementSockets(o,l),A instanceof x_s.Agent)return A.addRequest(t,a);this[Z6].currentSocket=A,super.createSocket(t,r,n)},A=>{this.decrementSockets(o,l),n(A)})}createConnection(){let t=this[Z6].currentSocket;if(this[Z6].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[Z6].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[Z6]&&(this[Z6].defaultPort=t)}get protocol(){return this[Z6].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[Z6]&&(this[Z6].protocol=t)}};UO.Agent=g6r});var V_s=H(QH=>{"use strict";var bNl=QH&&QH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ENl=QH&&QH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),L_s=QH&&QH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&bNl(t,e,r);return ENl(t,e),t},SNl=QH&&QH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QH,"__esModule",{value:!0});QH.HttpProxyAgent=void 0;var vNl=L_s(wt("net")),BNl=L_s(wt("tls")),wNl=SNl(uT()),TNl=wt("events"),RNl=hze(),Z_s=wt("url"),lFe=(0,wNl.default)("http-proxy-agent"),eLt=class extends RNl.Agent{constructor(t,r){super(r),this.proxy=typeof t=="string"?new Z_s.URL(t):t,this.proxyHeaders=r?.headers??{},lFe("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?NNl(r,"headers"):null,host:n,port:a}}addRequest(t,r){t._header=null,this.setRequestProps(t,r),super.addRequest(t,r)}setRequestProps(t,r){let{proxy:n}=this,a=r.secureEndpoint?"https:":"http:",o=t.getHeader("host")||"localhost",l=`${a}//${o}`,A=new Z_s.URL(t.path,l);r.port!==80&&(A.port=String(r.port)),t.path=String(A);let f=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let I=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;f["Proxy-Authorization"]=`Basic ${Buffer.from(I).toString("base64")}`}f["Proxy-Connection"]||(f["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let I of Object.keys(f)){let C=f[I];C&&t.setHeader(I,C)}}async connect(t,r){t._header=null,t.path.includes("://")||this.setRequestProps(t,r);let n,a;lFe("Regenerating stored HTTP header string for request"),t._implicitHeader(),t.outputData&&t.outputData.length>0&&(lFe("Patching connection write() output buffer with updated header"),n=t.outputData[0].data,a=n.indexOf(`\r -\r -`)+4,t.outputData[0].data=t._header+n.substring(a),lFe("Output buffer: %o",t.outputData[0].data));let o;return this.proxy.protocol==="https:"?(lFe("Creating `tls.Socket`: %o",this.connectOpts),o=BNl.connect(this.connectOpts)):(lFe("Creating `net.Socket`: %o",this.connectOpts),o=vNl.connect(this.connectOpts)),await(0,TNl.once)(o,"connect"),o}};eLt.protocols=["http","https"];QH.HttpProxyAgent=eLt;function NNl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var P_s=H(uFe=>{"use strict";var DNl=uFe&&uFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uFe,"__esModule",{value:!0});uFe.parseProxyResponse=void 0;var kNl=DNl(uT()),tLt=(0,kNl.default)("https-proxy-agent:parse-proxy-response");function xNl(e){return new Promise((t,r)=>{let n=0,a=[];function o(){let C=e.read();C?I(C):e.once("readable",o)}function l(){e.removeListener("end",A),e.removeListener("error",f),e.removeListener("readable",o)}function A(){l(),tLt("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function f(C){l(),tLt("onerror %o",C),r(C)}function I(C){a.push(C),n+=C.length;let b=Buffer.concat(a,n),E=b.indexOf(`\r -\r -`);if(E===-1){tLt("have not received end of HTTP headers yet..."),o();return}let N=b.slice(0,E).toString("ascii").split(`\r -`),B=N.shift();if(!B)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let F=B.split(" "),Q=+F[1],X=F.slice(2).join(" "),ae={};for(let ne of N){if(!ne)continue;let ce=ne.indexOf(":");if(ce===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${ne}"`));let fe=ne.slice(0,ce).toLowerCase(),ue=ne.slice(ce+1).trimStart(),de=ae[fe];typeof de=="string"?ae[fe]=[de,ue]:Array.isArray(de)?de.push(ue):ae[fe]=ue}tLt("got proxy server response: %o %o",B,ae),l(),t({connect:{statusCode:Q,statusText:X,headers:ae},buffered:b})}e.on("error",f),e.on("end",A),o()})}uFe.parseProxyResponse=xNl});var Y_s=H(XH=>{"use strict";var GNl=XH&&XH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),FNl=XH&&XH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),M_s=XH&&XH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&GNl(t,e,r);return FNl(t,e),t},H_s=XH&&XH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XH,"__esModule",{value:!0});XH.HttpsProxyAgent=void 0;var A6r=M_s(wt("net")),W_s=M_s(wt("tls")),ZNl=H_s(wt("assert")),LNl=H_s(uT()),VNl=hze(),PNl=wt("url"),WNl=P_s(),mze=(0,LNl.default)("https-proxy-agent"),rLt=class extends VNl.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new PNl.URL(t):t,this.proxyHeaders=r?.headers??{},mze("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),a=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?O_s(r,"headers"):null,host:n,port:a}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let a;if(n.protocol==="https:"){mze("Creating `tls.Socket`: %o",this.connectOpts);let E=this.connectOpts.servername||this.connectOpts.host;a=W_s.connect({...this.connectOpts,servername:E})}else mze("Creating `net.Socket`: %o",this.connectOpts),a=A6r.connect(this.connectOpts);let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},l=A6r.isIPv6(r.host)?`[${r.host}]`:r.host,A=`CONNECT ${l}:${r.port} HTTP/1.1\r -`;if(n.username||n.password){let E=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(E).toString("base64")}`}o.Host=`${l}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let E of Object.keys(o))A+=`${E}: ${o[E]}\r -`;let f=(0,WNl.parseProxyResponse)(a);a.write(`${A}\r -`);let{connect:I,buffered:C}=await f;if(t.emit("proxyConnect",I),this.emit("proxyConnect",I,t),I.statusCode===200){if(t.once("socket",ONl),r.secureEndpoint){mze("Upgrading socket connection to TLS");let E=r.servername||r.host;return W_s.connect({...O_s(r,"host","path","port"),socket:a,servername:E})}return a}a.destroy();let b=new A6r.Socket({writable:!1});return b.readable=!0,t.once("socket",E=>{mze("Replaying proxy buffer for failed request"),(0,ZNl.default)(E.listenerCount("data")>0),E.push(C),E.push(null)}),b}};rLt.protocols=["http","https"];XH.HttpsProxyAgent=rLt;function ONl(e){e.resume()}function O_s(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var U_s=H(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});var Q_s=wt("buffer"),Z0e={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};ure.ERRORS=Z0e;function MNl(e){if(!Q_s.Buffer.isEncoding(e))throw new Error(Z0e.INVALID_ENCODING)}ure.checkEncoding=MNl;function X_s(e){return typeof e=="number"&&isFinite(e)&&XNl(e)}ure.isFiniteInteger=X_s;function J_s(e,t){if(typeof e=="number"){if(!X_s(e)||e<0)throw new Error(t?Z0e.INVALID_OFFSET:Z0e.INVALID_LENGTH)}else throw new Error(t?Z0e.INVALID_OFFSET_NON_NUMBER:Z0e.INVALID_LENGTH_NON_NUMBER)}function HNl(e){J_s(e,!1)}ure.checkLengthValue=HNl;function YNl(e){J_s(e,!0)}ure.checkOffsetValue=YNl;function QNl(e,t){if(e<0||e>t.length)throw new Error(Z0e.INVALID_TARGET_OFFSET)}ure.checkTargetOffset=QNl;function XNl(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e}function JNl(e){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof Q_s.Buffer.prototype[e]>"u")throw new Error(`Platform does not support Buffer.prototype.${e}.`)}ure.bigIntAndBufferInt64Check=JNl});var j_s=H(p6r=>{"use strict";Object.defineProperty(p6r,"__esModule",{value:!0});var Yh=U_s(),K_s=4096,UNl="utf8",d6r=class e{constructor(t){if(this.length=0,this._encoding=UNl,this._writeOffset=0,this._readOffset=0,e.isSmartBufferOptions(t))if(t.encoding&&(Yh.checkEncoding(t.encoding),this._encoding=t.encoding),t.size)if(Yh.isFiniteInteger(t.size)&&t.size>0)this._buff=Buffer.allocUnsafe(t.size);else throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(t.buff)if(Buffer.isBuffer(t.buff))this._buff=t.buff,this.length=t.buff.length;else throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(K_s);else{if(typeof t<"u")throw new Error(Yh.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(K_s)}}static fromSize(t,r){return new this({size:t,encoding:r})}static fromBuffer(t,r){return new this({buff:t,encoding:r})}static fromOptions(t){return new this(t)}static isSmartBufferOptions(t){let r=t;return r&&(r.encoding!==void 0||r.size!==void 0||r.buff!==void 0)}readInt8(t){return this._readNumberValue(Buffer.prototype.readInt8,1,t)}readInt16BE(t){return this._readNumberValue(Buffer.prototype.readInt16BE,2,t)}readInt16LE(t){return this._readNumberValue(Buffer.prototype.readInt16LE,2,t)}readInt32BE(t){return this._readNumberValue(Buffer.prototype.readInt32BE,4,t)}readInt32LE(t){return this._readNumberValue(Buffer.prototype.readInt32LE,4,t)}readBigInt64BE(t){return Yh.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,t)}readBigInt64LE(t){return Yh.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,t)}writeInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeInt8,1,t,r),this}insertInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeInt8,1,t,r)}writeInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}insertInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,t,r)}writeInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}insertInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,t,r)}writeInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}insertInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,t,r)}writeInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}insertInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,t,r)}writeBigInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}insertBigInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,t,r)}writeBigInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}insertBigInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,t,r)}readUInt8(t){return this._readNumberValue(Buffer.prototype.readUInt8,1,t)}readUInt16BE(t){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,t)}readUInt16LE(t){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,t)}readUInt32BE(t){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,t)}readUInt32LE(t){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,t)}readBigUInt64BE(t){return Yh.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,t)}readBigUInt64LE(t){return Yh.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,t)}writeUInt8(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,t,r)}insertUInt8(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,t,r)}writeUInt16BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}insertUInt16BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,t,r)}writeUInt16LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}insertUInt16LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,t,r)}writeUInt32BE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}insertUInt32BE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,t,r)}writeUInt32LE(t,r){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}insertUInt32LE(t,r){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,t,r)}writeBigUInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}insertBigUInt64BE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,t,r)}writeBigUInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}insertBigUInt64LE(t,r){return Yh.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,t,r)}readFloatBE(t){return this._readNumberValue(Buffer.prototype.readFloatBE,4,t)}readFloatLE(t){return this._readNumberValue(Buffer.prototype.readFloatLE,4,t)}writeFloatBE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}insertFloatBE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,t,r)}writeFloatLE(t,r){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}insertFloatLE(t,r){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,t,r)}readDoubleBE(t){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,t)}readDoubleLE(t){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,t)}writeDoubleBE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}insertDoubleBE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,t,r)}writeDoubleLE(t,r){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}insertDoubleLE(t,r){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,t,r)}readString(t,r){let n;typeof t=="number"?(Yh.checkLengthValue(t),n=Math.min(t,this.length-this._readOffset)):(r=t,n=this.length-this._readOffset),typeof r<"u"&&Yh.checkEncoding(r);let a=this._buff.slice(this._readOffset,this._readOffset+n).toString(r||this._encoding);return this._readOffset+=n,a}insertString(t,r,n){return Yh.checkOffsetValue(r),this._handleString(t,!0,r,n)}writeString(t,r,n){return this._handleString(t,!1,r,n)}readStringNT(t){typeof t<"u"&&Yh.checkEncoding(t);let r=this.length;for(let a=this._readOffset;athis.length)throw new Error(Yh.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(t,r){Yh.checkOffsetValue(r),this._ensureCapacity(this.length+t),rthis.length?this.length=r+t:this.length+=t}_ensureWriteable(t,r){let n=typeof r=="number"?r:this._writeOffset;this._ensureCapacity(n+t),n+t>this.length&&(this.length=n+t)}_ensureCapacity(t){let r=this._buff.length;if(t>r){let n=this._buff,a=r*3/2+1;a"u"&&(this._readOffset+=r),a}_insertNumberValue(t,r,n,a){return Yh.checkOffsetValue(a),this.ensureInsertable(r,a),t.call(this._buff,n,a),this._writeOffset+=r,this}_writeNumberValue(t,r,n,a){if(typeof a=="number"){if(a<0)throw new Error(Yh.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);Yh.checkOffsetValue(a)}let o=typeof a=="number"?a:this._writeOffset;return this._ensureWriteable(r,o),t.call(this._buff,n,o),typeof a=="number"?this._writeOffset=Math.max(this._writeOffset,o+r):this._writeOffset+=r,this}};p6r.SmartBuffer=d6r});var f6r=H(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});HE.SOCKS5_NO_ACCEPTABLE_AUTH=HE.SOCKS5_CUSTOM_AUTH_END=HE.SOCKS5_CUSTOM_AUTH_START=HE.SOCKS_INCOMING_PACKET_SIZES=HE.SocksClientState=HE.Socks5Response=HE.Socks5HostType=HE.Socks5Auth=HE.Socks4Response=HE.SocksCommand=HE.ERRORS=HE.DEFAULT_TIMEOUT=void 0;var KNl=3e4;HE.DEFAULT_TIMEOUT=KNl;var jNl={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};HE.ERRORS=jNl;var zNl={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:e=>e+7,Socks4Response:8};HE.SOCKS_INCOMING_PACKET_SIZES=zNl;var z_s;(function(e){e[e.connect=1]="connect",e[e.bind=2]="bind",e[e.associate=3]="associate"})(z_s||(HE.SocksCommand=z_s={}));var q_s;(function(e){e[e.Granted=90]="Granted",e[e.Failed=91]="Failed",e[e.Rejected=92]="Rejected",e[e.RejectedIdent=93]="RejectedIdent"})(q_s||(HE.Socks4Response=q_s={}));var $_s;(function(e){e[e.NoAuth=0]="NoAuth",e[e.GSSApi=1]="GSSApi",e[e.UserPass=2]="UserPass"})($_s||(HE.Socks5Auth=$_s={}));var qNl=128;HE.SOCKS5_CUSTOM_AUTH_START=qNl;var $Nl=254;HE.SOCKS5_CUSTOM_AUTH_END=$Nl;var eDl=255;HE.SOCKS5_NO_ACCEPTABLE_AUTH=eDl;var e0s;(function(e){e[e.Granted=0]="Granted",e[e.Failure=1]="Failure",e[e.NotAllowed=2]="NotAllowed",e[e.NetworkUnreachable=3]="NetworkUnreachable",e[e.HostUnreachable=4]="HostUnreachable",e[e.ConnectionRefused=5]="ConnectionRefused",e[e.TTLExpired=6]="TTLExpired",e[e.CommandNotSupported=7]="CommandNotSupported",e[e.AddressNotSupported=8]="AddressNotSupported"})(e0s||(HE.Socks5Response=e0s={}));var t0s;(function(e){e[e.IPv4=1]="IPv4",e[e.Hostname=3]="Hostname",e[e.IPv6=4]="IPv6"})(t0s||(HE.Socks5HostType=t0s={}));var r0s;(function(e){e[e.Created=0]="Created",e[e.Connecting=1]="Connecting",e[e.Connected=2]="Connected",e[e.SentInitialHandshake=3]="SentInitialHandshake",e[e.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",e[e.SentAuthentication=5]="SentAuthentication",e[e.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",e[e.SentFinalHandshake=7]="SentFinalHandshake",e[e.ReceivedFinalResponse=8]="ReceivedFinalResponse",e[e.BoundWaitingForConnection=9]="BoundWaitingForConnection",e[e.Established=10]="Established",e[e.Disconnected=11]="Disconnected",e[e.Error=99]="Error"})(r0s||(HE.SocksClientState=r0s={}))});var h6r=H(gFe=>{"use strict";Object.defineProperty(gFe,"__esModule",{value:!0});gFe.shuffleArray=gFe.SocksClientError=void 0;var I6r=class extends Error{constructor(t,r){super(t),this.options=r}};gFe.SocksClientError=I6r;function tDl(e){for(let t=e.length-1;t>0;t--){let r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}}gFe.shuffleArray=tDl});var m6r=H(AFe=>{"use strict";Object.defineProperty(AFe,"__esModule",{value:!0});AFe.isCorrect=AFe.isInSubnet=void 0;function rDl(e){return this.subnetMask{"use strict";Object.defineProperty(L6,"__esModule",{value:!0});L6.RE_SUBNET_STRING=L6.RE_ADDRESS=L6.GROUPS=L6.BITS=void 0;L6.BITS=32;L6.GROUPS=4;L6.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;L6.RE_SUBNET_STRING=/\/\d{1,2}$/});var iLt=H(nLt=>{"use strict";Object.defineProperty(nLt,"__esModule",{value:!0});nLt.AddressError=void 0;var _6r=class extends Error{constructor(t,r){super(t),this.name="AddressError",r!==null&&(this.parseMessage=r)}};nLt.AddressError=_6r});var y6r=H((sLt,n0s)=>{(function(){var e,t=0xdeadbeefcafe,r=(t&16777215)==15715070;function n(Er,Zt,yn){Er!=null&&(typeof Er=="number"?this.fromNumber(Er,Zt,yn):Zt==null&&typeof Er!="string"?this.fromString(Er,256):this.fromString(Er,Zt))}function a(){return new n(null)}function o(Er,Zt,yn,ls,oa,Fs){for(;--Fs>=0;){var Wa=Zt*this[Er++]+yn[ls]+oa;oa=Math.floor(Wa/67108864),yn[ls++]=Wa&67108863}return oa}function l(Er,Zt,yn,ls,oa,Fs){for(var Wa=Zt&32767,Ca=Zt>>15;--Fs>=0;){var ld=this[Er]&32767,Rp=this[Er++]>>15,np=Ca*ld+Rp*Wa;ld=Wa*ld+((np&32767)<<15)+yn[ls]+(oa&1073741823),oa=(ld>>>30)+(np>>>15)+Ca*Rp+(oa>>>30),yn[ls++]=ld&1073741823}return oa}function A(Er,Zt,yn,ls,oa,Fs){for(var Wa=Zt&16383,Ca=Zt>>14;--Fs>=0;){var ld=this[Er]&16383,Rp=this[Er++]>>14,np=Ca*ld+Rp*Wa;ld=Wa*ld+((np&16383)<<14)+yn[ls]+oa,oa=(ld>>28)+(np>>14)+Ca*Rp,yn[ls++]=ld&268435455}return oa}var f=typeof navigator<"u";f&&r&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=l,e=30):f&&r&&navigator.appName!="Netscape"?(n.prototype.am=o,e=26):(n.prototype.am=A,e=28),n.prototype.DB=e,n.prototype.DM=(1<=0;--Zt)Er[Zt]=this[Zt];Er.t=this.t,Er.s=this.s}function X(Er){this.t=1,this.s=Er<0?-1:0,Er>0?this[0]=Er:Er<-1?this[0]=Er+this.DV:this.t=0}function ae(Er){var Zt=a();return Zt.fromInt(Er),Zt}function ne(Er,Zt){var yn;if(Zt==16)yn=4;else if(Zt==8)yn=3;else if(Zt==256)yn=8;else if(Zt==2)yn=1;else if(Zt==32)yn=5;else if(Zt==4)yn=2;else{this.fromRadix(Er,Zt);return}this.t=0,this.s=0;for(var ls=Er.length,oa=!1,Fs=0;--ls>=0;){var Wa=yn==8?Er[ls]&255:F(Er,ls);if(Wa<0){Er.charAt(ls)=="-"&&(oa=!0);continue}oa=!1,Fs==0?this[this.t++]=Wa:Fs+yn>this.DB?(this[this.t-1]|=(Wa&(1<>this.DB-Fs):this[this.t-1]|=Wa<=this.DB&&(Fs-=this.DB)}yn==8&&Er[0]&128&&(this.s=-1,Fs>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==Er;)--this.t}function fe(Er){if(this.s<0)return"-"+this.negate().toString(Er);var Zt;if(Er==16)Zt=4;else if(Er==8)Zt=3;else if(Er==2)Zt=1;else if(Er==32)Zt=5;else if(Er==4)Zt=2;else return this.toRadix(Er);var yn=(1<0)for(Ca>Ca)>0&&(oa=!0,Fs=B(ls));Wa>=0;)Ca>(Ca+=this.DB-Zt)):(ls=this[Wa]>>(Ca-=Zt)&yn,Ca<=0&&(Ca+=this.DB,--Wa)),ls>0&&(oa=!0),oa&&(Fs+=B(ls));return oa?Fs:"0"}function ue(){var Er=a();return n.ZERO.subTo(this,Er),Er}function de(){return this.s<0?this.negate():this}function be(Er){var Zt=this.s-Er.s;if(Zt!=0)return Zt;var yn=this.t;if(Zt=yn-Er.t,Zt!=0)return this.s<0?-Zt:Zt;for(;--yn>=0;)if((Zt=this[yn]-Er[yn])!=0)return Zt;return 0}function Se(Er){var Zt=1,yn;return(yn=Er>>>16)!=0&&(Er=yn,Zt+=16),(yn=Er>>8)!=0&&(Er=yn,Zt+=8),(yn=Er>>4)!=0&&(Er=yn,Zt+=4),(yn=Er>>2)!=0&&(Er=yn,Zt+=2),(yn=Er>>1)!=0&&(Er=yn,Zt+=1),Zt}function De(){return this.t<=0?0:this.DB*(this.t-1)+Se(this[this.t-1]^this.s&this.DM)}function k(Er,Zt){var yn;for(yn=this.t-1;yn>=0;--yn)Zt[yn+Er]=this[yn];for(yn=Er-1;yn>=0;--yn)Zt[yn]=0;Zt.t=this.t+Er,Zt.s=this.s}function et(Er,Zt){for(var yn=Er;yn=0;--Ca)Zt[Ca+Fs+1]=this[Ca]>>ls|Wa,Wa=(this[Ca]&oa)<=0;--Ca)Zt[Ca]=0;Zt[Fs]=Wa,Zt.t=this.t+Fs+1,Zt.s=this.s,Zt.clamp()}function Me(Er,Zt){Zt.s=this.s;var yn=Math.floor(Er/this.DB);if(yn>=this.t){Zt.t=0;return}var ls=Er%this.DB,oa=this.DB-ls,Fs=(1<>ls;for(var Wa=yn+1;Wa>ls;ls>0&&(Zt[this.t-yn-1]|=(this.s&Fs)<>=this.DB;if(Er.t>=this.DB;ls+=this.s}else{for(ls+=this.s;yn>=this.DB;ls-=Er.s}Zt.s=ls<0?-1:0,ls<-1?Zt[yn++]=this.DV+ls:ls>0&&(Zt[yn++]=ls),Zt.t=yn,Zt.clamp()}function St(Er,Zt){var yn=this.abs(),ls=Er.abs(),oa=yn.t;for(Zt.t=oa+ls.t;--oa>=0;)Zt[oa]=0;for(oa=0;oa=0;)Er[yn]=0;for(yn=0;yn=Zt.DV&&(Er[yn+Zt.t]-=Zt.DV,Er[yn+Zt.t+1]=1)}Er.t>0&&(Er[Er.t-1]+=Zt.am(yn,Zt[yn],Er,2*yn,0,1)),Er.s=0,Er.clamp()}function Yt(Er,Zt,yn){var ls=Er.abs();if(!(ls.t<=0)){var oa=this.abs();if(oa.t0?(ls.lShiftTo(ld,Fs),oa.lShiftTo(ld,yn)):(ls.copyTo(Fs),oa.copyTo(yn));var Rp=Fs.t,np=Fs[Rp-1];if(np!=0){var HA=np*(1<1?Fs[Rp-2]>>this.F2:0),df=this.FV/HA,Zs=(1<=0&&(yn[yn.t++]=1,yn.subTo(Dr,yn)),n.ONE.dlShiftTo(Rp,Dr),Dr.subTo(Fs,Fs);Fs.t=0;){var Wn=yn[--Ea]==np?this.DM:Math.floor(yn[Ea]*df+(yn[Ea-1]+so)*Zs);if((yn[Ea]+=Fs.am(0,Wn,yn,Ml,0,Rp))0&&yn.rShiftTo(ld,yn),Wa<0&&n.ZERO.subTo(yn,yn)}}}function Tr(Er){var Zt=a();return this.abs().divRemTo(Er,null,Zt),this.s<0&&Zt.compareTo(n.ZERO)>0&&Er.subTo(Zt,Zt),Zt}function Nr(Er){this.m=Er}function er(Er){return Er.s<0||Er.compareTo(this.m)>=0?Er.mod(this.m):Er}function vt(Er){return Er}function xt(Er){Er.divRemTo(this.m,null,Er)}function Zr(Er,Zt,yn){Er.multiplyTo(Zt,yn),this.reduce(yn)}function qt(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}Nr.prototype.convert=er,Nr.prototype.revert=vt,Nr.prototype.reduce=xt,Nr.prototype.mulTo=Zr,Nr.prototype.sqrTo=qt;function Xt(){if(this.t<1)return 0;var Er=this[0];if(!(Er&1))return 0;var Zt=Er&3;return Zt=Zt*(2-(Er&15)*Zt)&15,Zt=Zt*(2-(Er&255)*Zt)&255,Zt=Zt*(2-((Er&65535)*Zt&65535))&65535,Zt=Zt*(2-Er*Zt%this.DV)%this.DV,Zt>0?this.DV-Zt:-Zt}function lr(Er){this.m=Er,this.mp=Er.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(Zt,Zt),Zt}function Ar(Er){var Zt=a();return Er.copyTo(Zt),this.reduce(Zt),Zt}function qr(Er){for(;Er.t<=this.mt2;)Er[Er.t++]=0;for(var Zt=0;Zt>15)*this.mpl&this.um)<<15)&Er.DM;for(yn=Zt+this.m.t,Er[yn]+=this.m.am(0,ls,Er,Zt,0,this.m.t);Er[yn]>=Er.DV;)Er[yn]-=Er.DV,Er[++yn]++}Er.clamp(),Er.drShiftTo(this.m.t,Er),Er.compareTo(this.m)>=0&&Er.subTo(this.m,Er)}function _n(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}function ke(Er,Zt,yn){Er.multiplyTo(Zt,yn),this.reduce(yn)}lr.prototype.convert=cr,lr.prototype.revert=Ar,lr.prototype.reduce=qr,lr.prototype.mulTo=ke,lr.prototype.sqrTo=_n;function jt(){return(this.t>0?this[0]&1:this.s)==0}function Fn(Er,Zt){if(Er>4294967295||Er<1)return n.ONE;var yn=a(),ls=a(),oa=Zt.convert(this),Fs=Se(Er)-1;for(oa.copyTo(yn);--Fs>=0;)if(Zt.sqrTo(yn,ls),(Er&1<0)Zt.mulTo(ls,oa,yn);else{var Wa=yn;yn=ls,ls=Wa}return Zt.revert(yn)}function Nn(Er,Zt){var yn;return Er<256||Zt.isEven()?yn=new Nr(Zt):yn=new lr(Zt),this.exp(Er,yn)}n.prototype.copyTo=Q,n.prototype.fromInt=X,n.prototype.fromString=ne,n.prototype.clamp=ce,n.prototype.dlShiftTo=k,n.prototype.drShiftTo=et,n.prototype.lShiftTo=ct,n.prototype.rShiftTo=Me,n.prototype.subTo=je,n.prototype.multiplyTo=St,n.prototype.squareTo=At,n.prototype.divRemTo=Yt,n.prototype.invDigit=Xt,n.prototype.isEven=jt,n.prototype.exp=Fn,n.prototype.toString=fe,n.prototype.negate=ue,n.prototype.abs=de,n.prototype.compareTo=be,n.prototype.bitLength=De,n.prototype.mod=Tr,n.prototype.modPowInt=Nn,n.ZERO=ae(0),n.ONE=ae(1);function Hi(){var Er=a();return this.copyTo(Er),Er}function po(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function xi(){return this.t==0?this.s:this[0]<<16>>16}function io(Er){return Math.floor(Math.LN2*this.DB/Math.log(Er))}function ga(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Ya(Er){if(Er==null&&(Er=10),this.signum()==0||Er<2||Er>36)return"0";var Zt=this.chunkSize(Er),yn=Math.pow(Er,Zt),ls=ae(yn),oa=a(),Fs=a(),Wa="";for(this.divRemTo(ls,oa,Fs);oa.signum()>0;)Wa=(yn+Fs.intValue()).toString(Er).substr(1)+Wa,oa.divRemTo(ls,oa,Fs);return Fs.intValue().toString(Er)+Wa}function Gc(Er,Zt){this.fromInt(0),Zt==null&&(Zt=10);for(var yn=this.chunkSize(Zt),ls=Math.pow(Zt,yn),oa=!1,Fs=0,Wa=0,Ca=0;Ca=yn&&(this.dMultiply(ls),this.dAddOffset(Wa,0),Fs=0,Wa=0)}Fs>0&&(this.dMultiply(Math.pow(Zt,Fs)),this.dAddOffset(Wa,0)),oa&&n.ZERO.subTo(this,this)}function cl(Er,Zt,yn){if(typeof Zt=="number")if(Er<2)this.fromInt(1);else for(this.fromNumber(Er,yn),this.testBit(Er-1)||this.bitwiseTo(n.ONE.shiftLeft(Er-1),Qi,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(Zt);)this.dAddOffset(2,0),this.bitLength()>Er&&this.subTo(n.ONE.shiftLeft(Er-1),this);else{var ls=new Array,oa=Er&7;ls.length=(Er>>3)+1,Zt.nextBytes(ls),oa>0?ls[0]&=(1<0)for(yn>yn)!=(this.s&this.DM)>>yn&&(Zt[oa++]=ls|this.s<=0;)yn<8?(ls=(this[Er]&(1<>(yn+=this.DB-8)):(ls=this[Er]>>(yn-=8)&255,yn<=0&&(yn+=this.DB,--Er)),ls&128&&(ls|=-256),oa==0&&(this.s&128)!=(ls&128)&&++oa,(oa>0||ls!=this.s)&&(Zt[oa++]=ls);return Zt}function Hr(Er){return this.compareTo(Er)==0}function Wr(Er){return this.compareTo(Er)<0?this:Er}function Ft(Er){return this.compareTo(Er)>0?this:Er}function zr(Er,Zt,yn){var ls,oa,Fs=Math.min(Er.t,this.t);for(ls=0;ls>=16,Zt+=16),Er&255||(Er>>=8,Zt+=8),Er&15||(Er>>=4,Zt+=4),Er&3||(Er>>=2,Zt+=2),Er&1||++Zt,Zt}function vu(){for(var Er=0;Er=this.t?this.s!=0:(this[Zt]&1<>=this.DB;if(Er.t>=this.DB;ls+=this.s}else{for(ls+=this.s;yn>=this.DB;ls+=Er.s}Zt.s=ls<0?-1:0,ls>0?Zt[yn++]=ls:ls<-1&&(Zt[yn++]=this.DV+ls),Zt.t=yn,Zt.clamp()}function Ul(Er){var Zt=a();return this.addTo(Er,Zt),Zt}function Xu(Er){var Zt=a();return this.subTo(Er,Zt),Zt}function Da(Er){var Zt=a();return this.multiplyTo(Er,Zt),Zt}function pu(){var Er=a();return this.squareTo(Er),Er}function _g(Er){var Zt=a();return this.divRemTo(Er,Zt,null),Zt}function mI(Er){var Zt=a();return this.divRemTo(Er,null,Zt),Zt}function Qh(Er){var Zt=a(),yn=a();return this.divRemTo(Er,Zt,yn),new Array(Zt,yn)}function Ri(Er){this[this.t]=this.am(0,Er-1,this,0,0,this.t),++this.t,this.clamp()}function Do(Er,Zt){if(Er!=0){for(;this.t<=Zt;)this[this.t++]=0;for(this[Zt]+=Er;this[Zt]>=this.DV;)this[Zt]-=this.DV,++Zt>=this.t&&(this[this.t++]=0),++this[Zt]}}function Wt(){}function Hu(Er){return Er}function Ru(Er,Zt,yn){Er.multiplyTo(Zt,yn)}function Vs(Er,Zt){Er.squareTo(Zt)}Wt.prototype.convert=Hu,Wt.prototype.revert=Hu,Wt.prototype.mulTo=Ru,Wt.prototype.sqrTo=Vs;function Ju(Er){return this.exp(Er,new Wt)}function Yn(Er,Zt,yn){var ls=Math.min(this.t+Er.t,Zt);for(yn.s=0,yn.t=ls;ls>0;)yn[--ls]=0;var oa;for(oa=yn.t-this.t;ls=0;)yn[ls]=0;for(ls=Math.max(Zt-this.t,0);ls2*this.m.t)return Er.mod(this.m);if(Er.compareTo(this.m)<0)return Er;var Zt=a();return Er.copyTo(Zt),this.reduce(Zt),Zt}function GA(Er){return Er}function $i(Er){for(Er.drShiftTo(this.m.t-1,this.r2),Er.t>this.m.t+1&&(Er.t=this.m.t+1,Er.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);Er.compareTo(this.r2)<0;)Er.dAddOffset(1,this.m.t+1);for(Er.subTo(this.r2,Er);Er.compareTo(this.m)>=0;)Er.subTo(this.m,Er)}function dl(Er,Zt){Er.squareTo(Zt),this.reduce(Zt)}function Uf(Er,Zt,yn){Er.multiplyTo(Zt,yn),this.reduce(yn)}Eg.prototype.convert=OA,Eg.prototype.revert=GA,Eg.prototype.reduce=$i,Eg.prototype.mulTo=Uf,Eg.prototype.sqrTo=dl;function Kd(Er,Zt){var yn=Er.bitLength(),ls,oa=ae(1),Fs;if(yn<=0)return oa;yn<18?ls=1:yn<48?ls=3:yn<144?ls=4:yn<768?ls=5:ls=6,yn<8?Fs=new Nr(Zt):Zt.isEven()?Fs=new Eg(Zt):Fs=new lr(Zt);var Wa=new Array,Ca=3,ld=ls-1,Rp=(1<1){var np=a();for(Fs.sqrTo(Wa[1],np);Ca<=Rp;)Wa[Ca]=a(),Fs.mulTo(np,Wa[Ca-2],Wa[Ca]),Ca+=2}var HA=Er.t-1,df,Zs=!0,so=a(),Ea;for(yn=Se(Er[HA])-1;HA>=0;){for(yn>=ld?df=Er[HA]>>yn-ld&Rp:(df=(Er[HA]&(1<0&&(df|=Er[HA-1]>>this.DB+yn-ld)),Ca=ls;!(df&1);)df>>=1,--Ca;if((yn-=Ca)<0&&(yn+=this.DB,--HA),Zs)Wa[df].copyTo(oa),Zs=!1;else{for(;Ca>1;)Fs.sqrTo(oa,so),Fs.sqrTo(so,oa),Ca-=2;Ca>0?Fs.sqrTo(oa,so):(Ea=oa,oa=so,so=Ea),Fs.mulTo(so,Wa[df],oa)}for(;HA>=0&&!(Er[HA]&1<0&&(Zt.rShiftTo(Fs,Zt),yn.rShiftTo(Fs,yn));Zt.signum()>0;)(oa=Zt.getLowestSetBit())>0&&Zt.rShiftTo(oa,Zt),(oa=yn.getLowestSetBit())>0&&yn.rShiftTo(oa,yn),Zt.compareTo(yn)>=0?(Zt.subTo(yn,Zt),Zt.rShiftTo(1,Zt)):(yn.subTo(Zt,yn),yn.rShiftTo(1,yn));return Fs>0&&yn.lShiftTo(Fs,yn),yn}function oo(Er){if(Er<=0)return 0;var Zt=this.DV%Er,yn=this.s<0?Er-1:0;if(this.t>0)if(Zt==0)yn=this[0]%Er;else for(var ls=this.t-1;ls>=0;--ls)yn=(Zt*yn+this[ls])%Er;return yn}function Ki(Er){var Zt=Er.isEven();if(this.isEven()&&Zt||Er.signum()==0)return n.ZERO;for(var yn=Er.clone(),ls=this.clone(),oa=ae(1),Fs=ae(0),Wa=ae(0),Ca=ae(1);yn.signum()!=0;){for(;yn.isEven();)yn.rShiftTo(1,yn),Zt?((!oa.isEven()||!Fs.isEven())&&(oa.addTo(this,oa),Fs.subTo(Er,Fs)),oa.rShiftTo(1,oa)):Fs.isEven()||Fs.subTo(Er,Fs),Fs.rShiftTo(1,Fs);for(;ls.isEven();)ls.rShiftTo(1,ls),Zt?((!Wa.isEven()||!Ca.isEven())&&(Wa.addTo(this,Wa),Ca.subTo(Er,Ca)),Wa.rShiftTo(1,Wa)):Ca.isEven()||Ca.subTo(Er,Ca),Ca.rShiftTo(1,Ca);yn.compareTo(ls)>=0?(yn.subTo(ls,yn),Zt&&oa.subTo(Wa,oa),Fs.subTo(Ca,Fs)):(ls.subTo(yn,ls),Zt&&Wa.subTo(oa,Wa),Ca.subTo(Fs,Ca))}if(ls.compareTo(n.ONE)!=0)return n.ZERO;if(Ca.compareTo(Er)>=0)return Ca.subtract(Er);if(Ca.signum()<0)Ca.addTo(Er,Ca);else return Ca;return Ca.signum()<0?Ca.add(Er):Ca}var cc=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Xs=(1<<26)/cc[cc.length-1];function ws(Er){var Zt,yn=this.abs();if(yn.t==1&&yn[0]<=cc[cc.length-1]){for(Zt=0;Zt>1,Er>cc.length&&(Er=cc.length);for(var oa=a(),Fs=0;Fs>8&255,Dc[As++]^=Er>>16&255,Dc[As++]^=Er>>24&255,As>=MA&&(As-=MA)}function cm(){Tf(new Date().getTime())}if(Dc==null){Dc=new Array,As=0;var Fl;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var rc=new Uint8Array(32);for(window.crypto.getRandomValues(rc),Fl=0;Fl<32;++Fl)Dc[As++]=rc[Fl]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var sd=window.crypto.random(32);for(Fl=0;Fl>>8,Dc[As++]=Fl&255;As=0,cm()}function Om(){if(Ma==null){for(cm(),Ma=Mp(),Ma.init(Dc),As=0;As{(function(){"use strict";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(l){return n(o(l),arguments)}function r(l,A){return t.apply(null,[l].concat(A||[]))}function n(l,A){var f=1,I=l.length,C,b="",E,N,B,F,Q,X,ae,ne;for(E=0;E=0),B.type){case"b":C=parseInt(C,10).toString(2);break;case"c":C=String.fromCharCode(parseInt(C,10));break;case"d":case"i":C=parseInt(C,10);break;case"j":C=JSON.stringify(C,null,B.width?parseInt(B.width):0);break;case"e":C=B.precision?parseFloat(C).toExponential(B.precision):parseFloat(C).toExponential();break;case"f":C=B.precision?parseFloat(C).toFixed(B.precision):parseFloat(C);break;case"g":C=B.precision?String(Number(C.toPrecision(B.precision))):parseFloat(C);break;case"o":C=(parseInt(C,10)>>>0).toString(8);break;case"s":C=String(C),C=B.precision?C.substring(0,B.precision):C;break;case"t":C=String(!!C),C=B.precision?C.substring(0,B.precision):C;break;case"T":C=Object.prototype.toString.call(C).slice(8,-1).toLowerCase(),C=B.precision?C.substring(0,B.precision):C;break;case"u":C=parseInt(C,10)>>>0;break;case"v":C=C.valueOf(),C=B.precision?C.substring(0,B.precision):C;break;case"x":C=(parseInt(C,10)>>>0).toString(16);break;case"X":C=(parseInt(C,10)>>>0).toString(16).toUpperCase();break}e.json.test(B.type)?b+=C:(e.number.test(B.type)&&(!ae||B.sign)?(ne=ae?"+":"-",C=C.toString().replace(e.sign,"")):ne="",Q=B.pad_char?B.pad_char==="0"?"0":B.pad_char.charAt(1):" ",X=B.width-(ne+C).length,F=B.width&&X>0?Q.repeat(X):"",b+=B.align?ne+C+F:Q==="0"?ne+F+C:F+ne+C)}return b}var a=Object.create(null);function o(l){if(a[l])return a[l];for(var A=l,f,I=[],C=0;A;){if((f=e.text.exec(A))!==null)I.push(f[0]);else if((f=e.modulo.exec(A))!==null)I.push("%");else if((f=e.placeholder.exec(A))!==null){if(f[2]){C|=1;var b=[],E=f[2],N=[];if((N=e.key.exec(E))!==null)for(b.push(N[1]);(E=E.substring(N[0].length))!=="";)if((N=e.key_access.exec(E))!==null)b.push(N[1]);else if((N=e.index_access.exec(E))!==null)b.push(N[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=b}else C|=2;if(C===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");I.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");A=A.substring(f[0].length)}return a[l]=I}typeof oLt<"u"&&(oLt.sprintf=t,oLt.vsprintf=r),typeof window<"u"&&(window.sprintf=t,window.vsprintf=r,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:r}}))})()});var E6r=H(V6=>{"use strict";var iDl=V6&&V6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),sDl=V6&&V6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o0s=V6&&V6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&iDl(t,e,r);return sDl(t,e),t};Object.defineProperty(V6,"__esModule",{value:!0});V6.Address4=void 0;var i0s=o0s(m6r()),nJ=o0s(C6r()),s0s=iLt(),_ze=y6r(),dFe=Cze(),b6r=class e{constructor(t){this.groups=nJ.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=i0s.isCorrect(nJ.BITS),this.isInSubnet=i0s.isInSubnet,this.address=t;let r=nJ.RE_SUBNET_STRING.exec(t);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>nJ.BITS)throw new s0s.AddressError("Invalid subnet mask.");t=t.replace(nJ.RE_SUBNET_STRING,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new e(t),!0}catch{return!1}}parse(t){let r=t.split(".");if(!t.match(nJ.RE_ADDRESS))throw new s0s.AddressError("Invalid IPv4 address.");return r}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let r=t.replace(/:/g,"").padStart(8,"0"),n=[],a;for(a=0;a<8;a+=2){let o=r.slice(a,a+2);n.push(parseInt(o,16))}return new e(n.join("."))}static fromInteger(t){return e.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new e(n)}toHex(){return this.parsedAddress.map(t=>(0,dFe.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],r;for(r=0;r(0,dFe.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new _ze.BigInteger(this.mask()+"0".repeat(nJ.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new _ze.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new _ze.BigInteger(this.mask()+"1".repeat(nJ.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new _ze.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return e.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}reverseForm(t){t||(t={});let r=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?r:(0,dFe.sprintf)("%s.in-addr.arpa.",r)}isMulticast(){return this.isInSubnet(new e("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(nJ.BITS,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(nJ.RE_ADDRESS,(0,dFe.sprintf)('%s.%s',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};V6.Address4=b6r});var S6r=H(rB=>{"use strict";Object.defineProperty(rB,"__esModule",{value:!0});rB.RE_URL_WITH_PORT=rB.RE_URL=rB.RE_ZONE_STRING=rB.RE_SUBNET_STRING=rB.RE_BAD_ADDRESS=rB.RE_BAD_CHARACTERS=rB.TYPES=rB.SCOPES=rB.GROUPS=rB.BITS=void 0;rB.BITS=128;rB.GROUPS=8;rB.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};rB.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};rB.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;rB.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;rB.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;rB.RE_ZONE_STRING=/%.*$/;rB.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/);rB.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)});var v6r=H(P6=>{"use strict";Object.defineProperty(P6,"__esModule",{value:!0});P6.simpleGroup=P6.spanLeadingZeroes=P6.spanAll=P6.spanAllZeroes=void 0;var a0s=Cze();function c0s(e){return e.replace(/(0+)/g,'$1')}P6.spanAllZeroes=c0s;function oDl(e,t=0){return e.split("").map((n,a)=>(0,a0s.sprintf)('%s',n,a+t,c0s(n))).join("")}P6.spanAll=oDl;function l0s(e){return e.replace(/^(0+)/,'$1')}function aDl(e){return e.split(":").map(r=>l0s(r)).join(":")}P6.spanLeadingZeroes=aDl;function cDl(e,t=0){return e.split(":").map((n,a)=>/group-v4/.test(n)?n:(0,a0s.sprintf)('%s',a+t,l0s(n)))}P6.simpleGroup=cDl});var u0s=H(vD=>{"use strict";var lDl=vD&&vD.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uDl=vD&&vD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gDl=vD&&vD.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&lDl(t,e,r);return uDl(t,e),t};Object.defineProperty(vD,"__esModule",{value:!0});vD.possibleElisions=vD.simpleRegularExpression=vD.ADDRESS_BOUNDARY=vD.padGroup=vD.groupPossibilities=void 0;var ADl=gDl(S6r()),pFe=Cze();function cLt(e){return(0,pFe.sprintf)("(%s)",e.join("|"))}vD.groupPossibilities=cLt;function aLt(e){return e.length<4?(0,pFe.sprintf)("0{0,%d}%s",4-e.length,e):e}vD.padGroup=aLt;vD.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function dDl(e){let t=[];e.forEach((n,a)=>{parseInt(n,16)===0&&t.push(a)});let r=t.map(n=>e.map((a,o)=>{if(o===n){let l=o===0||o===ADl.GROUPS-1?":":"";return cLt([aLt(a),l])}return aLt(a)}).join(":"));return r.push(e.map(aLt).join(":")),cLt(r)}vD.simpleRegularExpression=dDl;function pDl(e,t,r){let n=t?"":":",a=r?"":":",o=[];!t&&!r&&o.push("::"),t&&r&&o.push(""),(r&&!t||!r&&t)&&o.push(":"),o.push((0,pFe.sprintf)("%s(:0{1,4}){1,%d}",n,e-1)),o.push((0,pFe.sprintf)("(0{1,4}:){1,%d}%s",e-1,a)),o.push((0,pFe.sprintf)("(0{1,4}:){%d}0{1,4}",e-1));for(let l=1;l{"use strict";var fDl=W6&&W6.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),IDl=W6&&W6.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),uLt=W6&&W6.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&fDl(t,e,r);return IDl(t,e),t};Object.defineProperty(W6,"__esModule",{value:!0});W6.Address6=void 0;var g0s=uLt(m6r()),B6r=uLt(C6r()),YE=uLt(S6r()),w6r=uLt(v6r()),L0e=E6r(),V0e=u0s(),gre=iLt(),fL=y6r(),IL=Cze();function lLt(e){if(!e)throw new Error("Assertion failed.")}function hDl(e){let t=/(\d+)(\d{3})/;for(;t.test(e);)e=e.replace(t,"$1,$2");return e}function mDl(e){return e=e.replace(/^(0{1,})([1-9]+)$/,'$1$2'),e=e.replace(/^(0{1,})(0)$/,'$1$2'),e}function CDl(e,t){let r=[],n=[],a;for(a=0;at[1]&&n.push(e[a]);return r.concat(["compact"]).concat(n)}function A0s(e){return(0,IL.sprintf)("%04x",parseInt(e,16))}function d0s(e){return e&255}var T6r=class e{constructor(t,r){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=g0s.isInSubnet,this.isCorrect=g0s.isCorrect(YE.BITS),r===void 0?this.groups=YE.GROUPS:this.groups=r,this.address=t;let n=YE.RE_SUBNET_STRING.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>YE.BITS)throw new gre.AddressError("Invalid subnet mask.");t=t.replace(YE.RE_SUBNET_STRING,"")}else if(/\//.test(t))throw new gre.AddressError("Invalid subnet mask.");let a=YE.RE_ZONE_STRING.exec(t);a&&(this.zone=a[0],t=t.replace(YE.RE_ZONE_STRING,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new e(t),!0}catch{return!1}}static fromBigInteger(t){let r=t.toString(16).padStart(32,"0"),n=[],a;for(a=0;a65536)&&(n=null)):n=null,{address:new e(r),port:n}}static fromAddress4(t){let r=new L0e.Address4(t),n=YE.BITS-(B6r.BITS-r.subnetMask);return new e(`::ffff:${r.correctForm()}/${n}`)}static fromArpa(t){let r=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(r.length!==63)throw new gre.AddressError("Invalid 'ip6.arpa' form.");let a=r.split(".").reverse();for(let o=n;o>0;o--){let l=o*4;a.splice(l,0,":")}return r=a.join(""),new e(r)}microsoftTranscription(){return(0,IL.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let r=YE.BITS-this.subnetMask,n=Math.abs(t-YE.BITS),a=r-n;return a<0?"0":hDl(new fL.BigInteger("2",10).pow(a).toString(10))}_startAddress(){return new fL.BigInteger(this.mask()+"0".repeat(YE.BITS-this.subnetMask),2)}startAddress(){return e.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new fL.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new fL.BigInteger(this.mask()+"1".repeat(YE.BITS-this.subnetMask),2)}endAddress(){return e.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new fL.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=YE.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(YE.TYPES))if(this.isInSubnet(new e(t)))return YE.TYPES[t];return"Global unicast"}getBits(t,r){return new fL.BigInteger(this.getBitsBase2(t,r),2)}getBitsBase2(t,r){return this.binaryZeroPad().slice(t,r)}getBitsBase16(t,r){let n=r-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,r).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,YE.BITS)}reverseForm(t){t||(t={});let r=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,r).reverse().join(".");return r>0?t.omitSuffix?n:(0,IL.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,r=[],n=0,a=[];for(t=0;t0&&(n>1&&a.push([t-n,t-1]),n=0)}n>1&&a.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=a.map(A=>A[1]-A[0]+1);if(a.length>0){let A=o.indexOf(Math.max(...o));r=CDl(this.parsedAddress,a[A])}else r=this.parsedAddress;for(t=0;t1?"s":"",r.join("")),t.replace(YE.RE_BAD_CHARACTERS,'$1'));let n=t.match(YE.RE_BAD_ADDRESS);if(n)throw new gre.AddressError((0,IL.sprintf)("Address failed regex: %s",n.join("")),t.replace(YE.RE_BAD_ADDRESS,'$1'));let a=[],o=t.split("::");if(o.length===2){let l=o[0].split(":"),A=o[1].split(":");l.length===1&&l[0]===""&&(l=[]),A.length===1&&A[0]===""&&(A=[]);let f=this.groups-(l.length+A.length);if(!f)throw new gre.AddressError("Error parsing groups");this.elidedGroups=f,this.elisionBegin=l.length,this.elisionEnd=l.length+this.elidedGroups,a=a.concat(l);for(let I=0;I(0,IL.sprintf)("%x",parseInt(l,16))),a.length!==this.groups)throw new gre.AddressError("Incorrect number of groups found");return a}canonicalForm(){return this.parsedAddress.map(A0s).join(":")}decimal(){return this.parsedAddress.map(t=>(0,IL.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new fL.BigInteger(this.parsedAddress.map(A0s).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return L0e.Address4.fromHex(new fL.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new e(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),a="";return/:$/.test(n)||(a=":"),n+a+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),r=this.getBits(80,96).xor(new fL.BigInteger("ffff",16)).toString(),n=L0e.Address4.fromHex(this.getBitsBase16(32,64)),a=L0e.Address4.fromHex(this.getBits(96,128).xor(new fL.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),l=this.getBitsBase2(64,80),A=o.testBit(15),f=o.testBit(14),I=o.testBit(8),C=o.testBit(9),b=new fL.BigInteger(l.slice(2,6)+l.slice(8,16),2).toString(10);return{prefix:(0,IL.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:a.address,flags:l,coneNat:A,microsoft:{reserved:f,universalLocal:C,groupIndividual:I,nonce:b},udpPort:r}}inspect6to4(){let t=this.getBitsBase16(0,16),r=L0e.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,IL.sprintf)("%s",t.slice(0,4)),gateway:r.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new e(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(d0s)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(d0s))}static fromUnsignedByteArray(t){let r=new fL.BigInteger("256",10),n=new fL.BigInteger("0",10),a=new fL.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(a.multiply(new fL.BigInteger(t[o].toString(10),10))),a=a.multiply(r);return e.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new e("2001::/32"))}is6to4(){return this.isInSubnet(new e("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,IL.sprintf)(":%s",t),(0,IL.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let r=this.correctForm;return t.v4&&(r=this.to4in6),t.className?(0,IL.sprintf)('%2$s',t.prefix,r.call(this),t.className):(0,IL.sprintf)('%2$s',t.prefix,r.call(this))}group(){if(this.elidedGroups===0)return w6r.simpleGroup(this.address).join(":");lLt(typeof this.elidedGroups=="number"),lLt(typeof this.elisionBegin=="number");let t=[],[r,n]=this.address.split("::");r.length?t.push(...w6r.simpleGroup(r)):t.push("");let a=["hover-group"];for(let o=this.elisionBegin;o',a.join(" "))),n.length?t.push(...w6r.simpleGroup(n,this.elisionEnd)):t.push(""),this.is4()&&(lLt(this.address4 instanceof L0e.Address4),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let r=[],n=new e(this.correctForm());if(n.elidedGroups===0)r.push((0,V0e.simpleRegularExpression)(n.parsedAddress));else if(n.elidedGroups===YE.GROUPS)r.push((0,V0e.possibleElisions)(YE.GROUPS));else{let a=n.address.split("::");a[0].length&&r.push((0,V0e.simpleRegularExpression)(a[0].split(":"))),lLt(typeof n.elidedGroups=="number"),r.push((0,V0e.possibleElisions)(n.elidedGroups,a[0].length!==0,a[1].length!==0)),a[1].length&&r.push((0,V0e.simpleRegularExpression)(a[1].split(":"))),r=[r.join(":")]}return t||(r=["(?=^|",V0e.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...r,")(?=[^\\w\\:]|",V0e.ADDRESS_BOUNDARY,"|$)"]),r.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};W6.Address6=T6r});var R6r=H(aF=>{"use strict";var _Dl=aF&&aF.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yDl=aF&&aF.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bDl=aF&&aF.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&_Dl(t,e,r);return yDl(t,e),t};Object.defineProperty(aF,"__esModule",{value:!0});aF.v6=aF.AddressError=aF.Address6=aF.Address4=void 0;var EDl=E6r();Object.defineProperty(aF,"Address4",{enumerable:!0,get:function(){return EDl.Address4}});var SDl=p0s();Object.defineProperty(aF,"Address6",{enumerable:!0,get:function(){return SDl.Address6}});var vDl=iLt();Object.defineProperty(aF,"AddressError",{enumerable:!0,get:function(){return vDl.AddressError}});var BDl=bDl(v6r());aF.v6={helpers:BDl}});var _0s=H(JH=>{"use strict";Object.defineProperty(JH,"__esModule",{value:!0});JH.ipToBuffer=JH.int32ToIpv4=JH.ipv4ToInt32=JH.validateSocksClientChainOptions=JH.validateSocksClientOptions=void 0;var hL=h6r(),BD=f6r(),wDl=wt("stream"),N6r=R6r(),f0s=wt("net");function TDl(e,t=["connect","bind","associate"]){if(!BD.SocksCommand[e.command])throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommand,e);if(t.indexOf(e.command)===-1)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommandForOperation,e);if(!h0s(e.destination))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!m0s(e.proxy))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxy,e);if(I0s(e.proxy,e),e.timeout&&!C0s(e.timeout))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsTimeout,e);if(e.existing_socket&&!(e.existing_socket instanceof wDl.Duplex))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsExistingSocket,e)}JH.validateSocksClientOptions=TDl;function RDl(e){if(e.command!=="connect")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksCommandChain,e);if(!h0s(e.destination))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsDestination,e);if(!(e.proxies&&Array.isArray(e.proxies)&&e.proxies.length>=2))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxiesLength,e);if(e.proxies.forEach(t=>{if(!m0s(t))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsProxy,e);I0s(t,e)}),e.timeout&&!C0s(e.timeout))throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsTimeout,e)}JH.validateSocksClientChainOptions=RDl;function I0s(e,t){if(e.custom_auth_method!==void 0){if(e.custom_auth_methodBD.SOCKS5_CUSTOM_AUTH_END)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthRange,t);if(e.custom_auth_request_handler===void 0||typeof e.custom_auth_request_handler!="function")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_size===void 0)throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(e.custom_auth_response_handler===void 0||typeof e.custom_auth_response_handler!="function")throw new hL.SocksClientError(BD.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t)}}function h0s(e){return e&&typeof e.host=="string"&&typeof e.port=="number"&&e.port>=0&&e.port<=65535}function m0s(e){return e&&(typeof e.host=="string"||typeof e.ipaddress=="string")&&typeof e.port=="number"&&e.port>=0&&e.port<=65535&&(e.type===4||e.type===5)}function C0s(e){return typeof e=="number"&&e>0}function NDl(e){return new N6r.Address4(e).toArray().reduce((r,n)=>(r<<8)+n,0)}JH.ipv4ToInt32=NDl;function DDl(e){let t=e>>>24&255,r=e>>>16&255,n=e>>>8&255,a=e&255;return[t,r,n,a].join(".")}JH.int32ToIpv4=DDl;function kDl(e){if(f0s.isIPv4(e)){let t=new N6r.Address4(e);return Buffer.from(t.toArray())}else if(f0s.isIPv6(e)){let t=new N6r.Address6(e);return Buffer.from(t.canonicalForm().split(":").map(r=>r.padStart(4,"0")).join(""),"hex")}else throw new Error("Invalid IP address format")}JH.ipToBuffer=kDl});var y0s=H(gLt=>{"use strict";Object.defineProperty(gLt,"__esModule",{value:!0});gLt.ReceiveBuffer=void 0;var D6r=class{constructor(t=4096){this.buffer=Buffer.allocUnsafe(t),this.offset=0,this.originalSize=t}get length(){return this.offset}append(t){if(!Buffer.isBuffer(t))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+t.length>=this.buffer.length){let r=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+t.length)),r.copy(this.buffer)}return t.copy(this.buffer,this.offset),this.offset+=t.length}peek(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,t)}get(t){if(t>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let r=Buffer.allocUnsafe(t);return this.buffer.slice(0,t).copy(r),this.buffer.copyWithin(0,t,t+this.offset-t),this.offset-=t,r}};gLt.ReceiveBuffer=D6r});var b0s=H(Xue=>{"use strict";var fFe=Xue&&Xue.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(l){l(o)})}return new(r||(r=Promise))(function(o,l){function A(C){try{I(n.next(C))}catch(b){l(b)}}function f(C){try{I(n.throw(C))}catch(b){l(b)}}function I(C){C.done?o(C.value):a(C.value).then(A,f)}I((n=n.apply(e,t||[])).next())})};Object.defineProperty(Xue,"__esModule",{value:!0});Xue.SocksClientError=Xue.SocksClient=void 0;var xDl=wt("events"),IFe=wt("net"),eP=j_s(),lu=f6r(),KO=_0s(),GDl=y0s(),x6r=h6r();Object.defineProperty(Xue,"SocksClientError",{enumerable:!0,get:function(){return x6r.SocksClientError}});var k6r=R6r(),G6r=class e extends xDl.EventEmitter{constructor(t){super(),this.options=Object.assign({},t),(0,KO.validateSocksClientOptions)(t),this.setState(lu.SocksClientState.Created)}static createConnection(t,r){return new Promise((n,a)=>{try{(0,KO.validateSocksClientOptions)(t,["connect"])}catch(l){return typeof r=="function"?(r(l),n(l)):a(l)}let o=new e(t);o.connect(t.existing_socket),o.once("established",l=>{o.removeAllListeners(),typeof r=="function"&&r(null,l),n(l)}),o.once("error",l=>{o.removeAllListeners(),typeof r=="function"?(r(l),n(l)):a(l)})})}static createConnectionChain(t,r){return new Promise((n,a)=>fFe(this,void 0,void 0,function*(){try{(0,KO.validateSocksClientChainOptions)(t)}catch(o){return typeof r=="function"?(r(o),n(o)):a(o)}t.randomizeChain&&(0,x6r.shuffleArray)(t.proxies);try{let o;for(let l=0;lthis.onDataReceivedHandler(n),this.onClose=()=>this.onCloseHandler(),this.onError=n=>this.onErrorHandler(n),this.onConnect=()=>this.onConnectHandler();let r=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||lu.DEFAULT_TIMEOUT);r.unref&&typeof r.unref=="function"&&r.unref(),t?this.socket=t:this.socket=new IFe.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(lu.SocksClientState.Connecting),this.receiveBuffer=new GDl.ReceiveBuffer,t?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",n=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let a=this.receiveBuffer.get(this.receiveBuffer.length);n.socket.emit("data",a)}n.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==lu.SocksClientState.Established&&this.state!==lu.SocksClientState.BoundWaitingForConnection&&this.closeSocket(lu.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(lu.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(lu.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(t){this.receiveBuffer.append(t),this.processData()}processData(){for(;this.state!==lu.SocksClientState.Established&&this.state!==lu.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===lu.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===lu.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===lu.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===lu.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(lu.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(lu.ERRORS.SocketClosed)}onErrorHandler(t){this.closeSocket(t.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(t){this.state!==lu.SocksClientState.Error&&(this.setState(lu.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new x6r.SocksClientError(t,this.options)))}sendSocks4InitialHandshake(){let t=this.options.proxy.userId||"",r=new eP.SmartBuffer;r.writeUInt8(4),r.writeUInt8(lu.SocksCommand[this.options.command]),r.writeUInt16BE(this.options.destination.port),IFe.isIPv4(this.options.destination.host)?(r.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host)),r.writeStringNT(t)):(r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(0),r.writeUInt8(1),r.writeStringNT(t),r.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(r.toBuffer())}handleSocks4FinalHandshakeResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==lu.Socks4Response.Granted)this.closeSocket(`${lu.ERRORS.Socks4ProxyRejectedConnection} - (${lu.Socks4Response[t[1]]})`);else if(lu.SocksCommand[this.options.command]===lu.SocksCommand.bind){let r=eP.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,KO.int32ToIpv4)(r.readUInt32BE())};n.host==="0.0.0.0"&&(n.host=this.options.proxy.ipaddress),this.setState(lu.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:n,socket:this.socket})}else this.setState(lu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let t=this.receiveBuffer.get(8);if(t[1]!==lu.Socks4Response.Granted)this.closeSocket(`${lu.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${lu.Socks4Response[t[1]]})`);else{let r=eP.SmartBuffer.fromBuffer(t);r.readOffset=2;let n={port:r.readUInt16BE(),host:(0,KO.int32ToIpv4)(r.readUInt32BE())};this.setState(lu.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:n,socket:this.socket})}}sendSocks5InitialHandshake(){let t=new eP.SmartBuffer,r=[lu.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&r.push(lu.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&r.push(this.options.proxy.custom_auth_method),t.writeUInt8(5),t.writeUInt8(r.length);for(let n of r)t.writeUInt8(n);this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(t.toBuffer()),this.setState(lu.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let t=this.receiveBuffer.get(2);t[0]!==5?this.closeSocket(lu.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):t[1]===lu.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(lu.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):t[1]===lu.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=lu.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):t[1]===lu.Socks5Auth.UserPass?(this.socks5ChosenAuthType=lu.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):t[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(lu.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let t=this.options.proxy.userId||"",r=this.options.proxy.password||"",n=new eP.SmartBuffer;n.writeUInt8(1),n.writeUInt8(Buffer.byteLength(t)),n.writeString(t),n.writeUInt8(Buffer.byteLength(r)),n.writeString(r),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(n.toBuffer()),this.setState(lu.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return fFe(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(lu.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(t){return fFe(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(t)})}handleSocks5AuthenticationNoAuthHandshakeResponse(t){return fFe(this,void 0,void 0,function*(){return t[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(t){return fFe(this,void 0,void 0,function*(){return t[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return fFe(this,void 0,void 0,function*(){this.setState(lu.SocksClientState.ReceivedAuthenticationResponse);let t=!1;this.socks5ChosenAuthType===lu.Socks5Auth.NoAuth?t=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===lu.Socks5Auth.UserPass?t=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(t=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),t?this.sendSocks5CommandRequest():this.closeSocket(lu.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let t=new eP.SmartBuffer;t.writeUInt8(5),t.writeUInt8(lu.SocksCommand[this.options.command]),t.writeUInt8(0),IFe.isIPv4(this.options.destination.host)?(t.writeUInt8(lu.Socks5HostType.IPv4),t.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host))):IFe.isIPv6(this.options.destination.host)?(t.writeUInt8(lu.Socks5HostType.IPv6),t.writeBuffer((0,KO.ipToBuffer)(this.options.destination.host))):(t.writeUInt8(lu.Socks5HostType.Hostname),t.writeUInt8(this.options.destination.host.length),t.writeString(this.options.destination.host)),t.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(t.toBuffer()),this.setState(lu.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let t=this.receiveBuffer.peek(5);if(t[0]!==5||t[1]!==lu.Socks5Response.Granted)this.closeSocket(`${lu.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${lu.Socks5Response[t[1]]}`);else{let r=t[3],n,a;if(r===lu.Socks5HostType.IPv4){let o=lu.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var FDl=P0e&&P0e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ZDl=P0e&&P0e.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&FDl(t,e,r)};Object.defineProperty(P0e,"__esModule",{value:!0});ZDl(b0s(),P0e)});var v0s=H(UH=>{"use strict";var LDl=UH&&UH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),VDl=UH&&UH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),S0s=UH&&UH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&LDl(t,e,r);return VDl(t,e),t},PDl=UH&&UH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UH,"__esModule",{value:!0});UH.SocksProxyAgent=void 0;var WDl=E0s(),ODl=hze(),MDl=PDl(uT()),HDl=S0s(wt("dns")),YDl=S0s(wt("tls")),QDl=wt("url"),ALt=(0,MDl.default)("socks-proxy-agent");function XDl(e){let t=!1,r=5,n=e.hostname,a=parseInt(e.port,10)||1080;switch(e.protocol.replace(":","")){case"socks4":t=!0,r=4;break;case"socks4a":r=4;break;case"socks5":t=!0,r=5;break;case"socks":r=5;break;case"socks5h":r=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(e.protocol)}`)}let o={host:n,port:a,type:r};return e.username&&Object.defineProperty(o,"userId",{value:decodeURIComponent(e.username),enumerable:!1}),e.password!=null&&Object.defineProperty(o,"password",{value:decodeURIComponent(e.password),enumerable:!1}),{lookup:t,proxy:o}}var dLt=class extends ODl.Agent{constructor(t,r){super(r);let n=typeof t=="string"?new QDl.URL(t):t,{proxy:a,lookup:o}=XDl(n);this.shouldLookup=o,this.proxy=a,this.timeout=r?.timeout??null,this.socketOptions=r?.socketOptions??null}async connect(t,r){let{shouldLookup:n,proxy:a,timeout:o}=this;if(!r.host)throw new Error("No `host` defined!");let{host:l}=r,{port:A,lookup:f=HDl.lookup}=r;n&&(l=await new Promise((E,N)=>{f(l,{},(B,F)=>{B?N(B):E(F)})}));let I={proxy:a,destination:{host:l,port:typeof A=="number"?A:parseInt(A,10)},command:"connect",timeout:o??void 0,socket_options:this.socketOptions??void 0},C=E=>{t.destroy(),b.destroy(),E&&E.destroy()};ALt("Creating socks proxy connection: %o",I);let{socket:b}=await WDl.SocksClient.createConnection(I);if(ALt("Successfully created socks proxy connection"),o!==null&&(b.setTimeout(o),b.on("timeout",()=>C())),r.secureEndpoint){ALt("Upgrading socket connection to TLS");let E=r.servername||r.host,N=YDl.connect({...JDl(r,"host","path","port"),socket:b,servername:E});return N.once("error",B=>{ALt("Socket TLS error",B.message),C(N)}),N}return b}};dLt.protocols=["socks","socks4","socks4a","socks5","socks5h"];UH.SocksProxyAgent=dLt;function JDl(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var W6r=H((fog,B0s)=>{"use strict";var F6r=class extends Error{constructor(t){super(`Invalid protocol \`${t.protocol}\` connecting to proxy \`${t.host}\``),this.code="EINVALIDPROXY",this.proxy=t}},Z6r=class extends Error{constructor(t){super(`Timeout connecting to host \`${t}\``),this.code="ECONNECTIONTIMEOUT",this.host=t}},L6r=class extends Error{constructor(t){super(`Idle timeout reached for host \`${t}\``),this.code="EIDLETIMEOUT",this.host=t}},V6r=class extends Error{constructor(t,r){let n="Response timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`connecting to host \`${t.host}\``,super(n),this.code="ERESPONSETIMEOUT",this.proxy=r,this.request=t}},P6r=class extends Error{constructor(t,r){let n="Transfer timeout ";r&&(n+=`from proxy \`${r.host}\` `),n+=`for \`${t.host}\``,super(n),this.code="ETRANSFERTIMEOUT",this.proxy=r,this.request=t}};B0s.exports={InvalidProxyProtocolError:F6r,ConnectionTimeoutError:Z6r,IdleTimeoutError:L6r,ResponseTimeoutError:V6r,TransferTimeoutError:P6r}});var O6r=H((Iog,T0s)=>{"use strict";var{HttpProxyAgent:UDl}=V_s(),{HttpsProxyAgent:KDl}=Y_s(),{SocksProxyAgent:w0s}=v0s(),{LRUCache:jDl}=yIe(),{InvalidProxyProtocolError:zDl}=W6r(),qDl=new jDl({max:20}),$Dl=new Set(w0s.protocols),ekl=new Set(["https_proxy","http_proxy","proxy","no_proxy"]),yze=Object.entries(process.env).reduce((e,[t,r])=>(t=t.toLowerCase(),ekl.has(t)&&(e[t]=r),e),{}),tkl=e=>{e=new URL(e);let t=e.protocol.slice(0,-1);if($Dl.has(t))return w0s;if(t==="https"||t==="http")return[UDl,KDl];throw new zDl(e)},rkl=(e,t)=>{if(typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),!t||!t.length)return!1;let r=e.hostname.split(".").reverse();return t.some(n=>{let a=n.split(".").filter(Boolean).reverse();if(!a.length)return!1;for(let o=0;o(e=new URL(e),t||(t=e.protocol==="https:"?yze.https_proxy:yze.https_proxy||yze.http_proxy||yze.proxy),r||(r=yze.no_proxy),!t||rkl(e,r)?null:new URL(t));T0s.exports={getProxyAgent:tkl,getProxy:nkl,proxyCache:qDl}});var D0s=H((mog,N0s)=>{"use strict";var ikl=wt("net"),skl=wt("tls"),{once:R0s}=wt("events"),okl=wt("timers/promises"),{normalizeOptions:akl,cacheOptions:ckl}=u6r(),{getProxy:lkl,getProxyAgent:ukl,proxyCache:M6r}=O6r(),pLt=W6r(),{Agent:gkl}=hze();N0s.exports=class extends gkl{#e;#t;#n;#r;#i;constructor(t={}){let{timeouts:r,proxy:n,noProxy:a,...o}=akl(t);super(o),this.#e=o,this.#t=r,n&&(this.#n=new URL(n),this.#r=a,this.#i=ukl(n))}get proxy(){return this.#n?{url:this.#n}:{}}#s(t){if(!this.#n)return;let r=lkl(`${t.protocol}//${t.host}:${t.port}`,{proxy:this.#n,noProxy:this.#r});if(!r)return;let n=ckl({...t,...this.#e,timeouts:this.#t,proxy:r});if(M6r.has(n))return M6r.get(n);let a=this.#i;Array.isArray(a)&&(a=this.isSecureEndpoint(t)?a[1]:a[0]);let o=new a(r,{...this.#e,socketOptions:{family:this.#e.family}});return M6r.set(n,o),o}async#o({promises:t,options:r,timeout:n},a=new AbortController){if(n){let l=okl.setTimeout(n,null,{signal:a.signal}).then(()=>{throw new pLt.ConnectionTimeoutError(`${r.host}:${r.port}`)}).catch(A=>{if(A.name!=="AbortError")throw A});t.push(l)}let o;try{o=await Promise.race(t),a.abort()}catch(l){throw a.abort(),l}return o}async connect(t,r){r.lookup??=this.#e.lookup;let n,a=this.#t.connection,o=this.isSecureEndpoint(r),l=this.#s(r);if(l){let C=Date.now();n=await this.#o({options:r,timeout:a,promises:[l.connect(t,r)]}),a&&(a=a-(Date.now()-C))}else n=(o?skl:ikl).connect(r);n.setKeepAlive(this.keepAlive,this.keepAliveMsecs),n.setNoDelay(this.keepAlive);let A=new AbortController,{signal:f}=A,I=n[o?"secureConnecting":"connecting"]?R0s(n,o?"secureConnect":"connect",{signal:f}):Promise.resolve();return await this.#o({options:r,timeout:a,promises:[I,R0s(n,"error",{signal:f}).then(C=>{throw C[0]})]},A),this.#t.idle&&n.setTimeout(this.#t.idle,()=>{n.destroy(new pLt.IdleTimeoutError(`${r.host}:${r.port}`))}),n}addRequest(t,r){let n=this.#s(r);if(n?.setRequestProps&&n.setRequestProps(t,r),t.setHeader("connection",this.keepAlive?"keep-alive":"close"),this.#t.response){let a;t.once("finish",()=>{setTimeout(()=>{t.destroy(new pLt.ResponseTimeoutError(t,this.#n))},this.#t.response)}),t.once("response",()=>{clearTimeout(a)})}if(this.#t.transfer){let a;t.once("response",o=>{setTimeout(()=>{o.destroy(new pLt.TransferTimeoutError(t,this.#n))},this.#t.transfer),o.once("close",()=>{clearTimeout(a)})})}return super.addRequest(t,r)}}});var F0s=H((Cog,G0s)=>{"use strict";var{LRUCache:Akl}=yIe(),{normalizeOptions:dkl,cacheOptions:pkl}=u6r(),{getProxy:fkl,proxyCache:k0s}=O6r(),x0s=l6r(),fLt=D0s(),bze=new Akl({max:20}),Ikl=(e,{agent:t,proxy:r,noProxy:n,...a}={})=>{if(t!=null)return t;e=new URL(e);let o=fkl(e,{proxy:r,noProxy:n}),l={...dkl(a),proxy:o},A=pkl({...l,secureEndpoint:e.protocol==="https:"});if(bze.has(A))return bze.get(A);let f=new fLt(l);return bze.set(A,f),f};G0s.exports={getAgent:Ikl,Agent:fLt,HttpAgent:fLt,HttpsAgent:fLt,cache:{proxy:k0s,agent:bze,dns:x0s.cache,clear:()=>{k0s.clear(),bze.clear(),x0s.cache.clear()}}}});var Z0s=H((_og,hkl)=>{hkl.exports={name:"make-fetch-happen",version:"14.0.3",description:"Opinionated, caching, retrying fetch client",main:"lib/index.js",files:["bin/","lib/"],scripts:{test:"tap",posttest:"npm run lint",eslint:'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',lint:"npm run eslint",lintfix:"npm run eslint -- --fix",postlint:"template-oss-check",snap:"tap","template-oss-apply":"template-oss-apply --force"},repository:{type:"git",url:"git+https://github.com/npm/make-fetch-happen.git"},keywords:["http","request","fetch","mean girls","caching","cache","subresource integrity"],author:"GitHub Inc.",license:"ISC",dependencies:{"@npmcli/agent":"^3.0.0",cacache:"^19.0.1","http-cache-semantics":"^4.1.1",minipass:"^7.0.2","minipass-fetch":"^4.0.0","minipass-flush":"^1.0.5","minipass-pipeline":"^1.2.4",negotiator:"^1.0.0","proc-log":"^5.0.0","promise-retry":"^2.0.1",ssri:"^12.0.0"},devDependencies:{"@npmcli/eslint-config":"^5.0.0","@npmcli/template-oss":"4.23.4",nock:"^13.2.4","safe-buffer":"^5.2.1","standard-version":"^9.3.2",tap:"^16.0.0"},engines:{node:"^18.17.0 || >=20.5.0"},tap:{color:1,files:"test/*.js","check-coverage":!0,timeout:60,"nyc-arg":["--exclude","tap-snapshots/**"]},templateOSS:{"//@npmcli/template-oss":"This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",version:"4.23.4",publish:"true"}}});var hLt=H((yog,V0s)=>{var{Minipass:mkl}=rF(),ILt=M7e(),Ckl=a6r(),_kl=Jte(),{log:L0s}=c6r(),ykl=o6r(),{getAgent:bkl}=F0s(),H6r=Z0s(),Ekl=`${H6r.name}/${H6r.version} (+https://npm.im/${H6r.name})`,Skl=["ECONNRESET","ECONNREFUSED","EADDRINUSE","ETIMEDOUT","ECONNECTIONTIMEOUT","EIDLETIMEOUT","ERESPONSETIMEOUT","ETRANSFERTIMEOUT"],vkl=["request-timeout"],Bkl=(e,t)=>{let r=bkl(e.url,{...t,signal:void 0});e.headers.has("connection")||e.headers.set("connection",r?"keep-alive":"close"),e.headers.has("user-agent")||e.headers.set("user-agent",Ekl);let n={...t,agent:r,redirect:"manual"};return Ckl(async(a,o)=>{let l=new ILt.Request(e,n);try{let A=await ILt(l,n);if(n.integrity&&A.status===200){let C=_kl.integrityStream({algorithms:n.algorithms,integrity:n.integrity,size:n.size}),b=new ykl({events:["integrity","size"]},A.body,C);C.on("integrity",E=>b.emit("integrity",E)),C.on("size",E=>b.emit("size",E)),A=new ILt.Response(b,A),A.body.hasIntegrityEmitter=!0}A.headers.set("x-fetch-attempts",o);let f=mkl.isStream(l.body);return l.method!=="POST"&&!f&&([408,420,429].includes(A.status)||A.status>=500)?(typeof t.onRetry=="function"&&t.onRetry(A),L0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.status}`),a(A)):A}catch(A){let f=A.code==="EPROMISERETRY"?A.retried.code:A.code,I=A.retried instanceof ILt.Response||Skl.includes(f)&&vkl.includes(A.type);if(l.method==="POST"||I)throw A;return typeof t.onRetry=="function"&&t.onRetry(A),L0s.http("fetch",`${l.method} ${l.url} attempt ${o} failed with ${A.code}`),a(A)}},t.retry).catch(a=>{if(a.status>=400&&a.type!=="system")return a;throw a})};V0s.exports=Bkl});var Y0s=H((bog,H0s)=>{var{Request:P0s,Response:Y6r}=M7e(),{Minipass:W0s}=rF(),wkl=sZt(),W0e=g_s(),Tkl=wt("url"),Rkl=o6r(),Nkl=M8r(),Q6r=p_s(),Dkl=hLt(),Eze=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),kkl=["accept-charset","accept-encoding","accept-language","accept","cache-control"],M0s=["cache-control","content-encoding","content-language","content-type","date","etag","expires","last-modified","link","location","pragma","vary"],O0s=(e,t,r)=>{let n={time:Date.now(),url:e.url,reqHeaders:{},resHeaders:{},options:{compress:r.compress!=null?r.compress:e.compress}};t.status!==200&&t.status!==304&&(n.status=t.status);for(let l of kkl)e.headers.has(l)&&(n.reqHeaders[l]=e.headers.get(l));let a=e.headers.get("host"),o=new Tkl.URL(e.url);if(a&&o.host!==a&&(n.reqHeaders.host=a),t.headers.has("vary")){let l=t.headers.get("vary");if(l!=="*"){let A=l.trim().toLowerCase().split(/\s*,\s*/);for(let f of A)e.headers.has(f)&&(n.reqHeaders[f]=e.headers.get(f))}}for(let l of M0s)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));for(let l of r.cacheAdditionalHeaders)t.headers.has(l)&&(n.resHeaders[l]=t.headers.get(l));return n},mLt=Symbol("request"),CLt=Symbol("response"),_Lt=Symbol("policy"),X6r=class e{constructor({entry:t,request:r,response:n,options:a}){t?(this.key=t.key,this.entry=t,this.entry.metadata.time=this.entry.metadata.time||this.entry.time):this.key=Q6r(r),this.options=a,this[mLt]=r,this[CLt]=n,this[_Lt]=null}static async find(t,r){try{var n=await W0e.index.compact(r.cachePath,Q6r(t),(o,l)=>{let A=new e({entry:o,options:r}),f=new e({entry:l,options:r});return A.policy.satisfies(f.request)},{validateEntry:o=>o.metadata&&o.metadata.resHeaders&&o.metadata.resHeaders["content-encoding"]===null?!1:o.integrity===null?!!(o.metadata&&o.metadata.status):!0})}catch{return}if(r.cache==="reload")return;let a;for(let o of n){let l=new e({entry:o,options:r});if(l.policy.satisfies(t)){a=l;break}}return a}static async invalidate(t,r){let n=Q6r(t);try{await W0e.rm.entry(r.cachePath,n,{removeFully:!0})}catch{}}get request(){return this[mLt]||(this[mLt]=new P0s(this.entry.metadata.url,{method:"GET",headers:this.entry.metadata.reqHeaders,...this.entry.metadata.options})),this[mLt]}get response(){return this[CLt]||(this[CLt]=new Y6r(null,{url:this.entry.metadata.url,counter:this.options.counter,status:this.entry.metadata.status||200,headers:{...this.entry.metadata.resHeaders,"content-length":this.entry.size}})),this[CLt]}get policy(){return this[_Lt]||(this[_Lt]=new Nkl({entry:this.entry,request:this.request,response:this.response,options:this.options})),this[_Lt]}async store(t){if(this.request.method!=="GET"||![200,301,308].includes(this.response.status)||!this.policy.storable())return this.response.headers.set("x-local-cache-status","skip"),this.response;let r=this.response.headers.get("content-length"),n={algorithms:this.options.algorithms,metadata:O0s(this.request,this.response,this.options),size:r,integrity:this.options.integrity,integrityEmitter:this.response.body.hasIntegrityEmitter&&this.response.body},a=null;if(this.response.status===200){let l,A,f=new Promise((C,b)=>{l=C,A=b}).catch(C=>{a.emit("error",C)});a=new Rkl({events:["integrity","size"]},new wkl({flush(){return f}})),a.hasIntegrityEmitter=!0;let I=()=>{let C=new W0s,b=W0e.put.stream(this.options.cachePath,this.key,n);b.on("integrity",E=>a.emit("integrity",E)),b.on("size",E=>a.emit("size",E)),C.pipe(b),b.promise().then(l,A),a.unshift(C),a.unshift(this.response.body)};a.once("resume",I),a.once("end",()=>a.removeListener("resume",I))}else await W0e.index.insert(this.options.cachePath,this.key,null,n);return this.response.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),this.response.headers.set("x-local-cache-key",encodeURIComponent(this.key)),this.response.headers.set("x-local-cache-mode","stream"),this.response.headers.set("x-local-cache-status",t),this.response.headers.set("x-local-cache-time",new Date().toISOString()),new Y6r(a,{url:this.response.url,status:this.response.status,headers:this.response.headers,counter:this.options.counter})}async respond(t,r,n){let a;if(t==="HEAD"||[301,308].includes(this.response.status))a=this.response;else{let o=new W0s,l={...this.policy.responseHeaders()},A=()=>{let f=W0e.get.stream.byDigest(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize});f.on("error",async I=>{f.pause(),I.code==="EINTEGRITY"&&await W0e.rm.content(this.options.cachePath,this.entry.integrity,{memoize:this.options.memoize}),(I.code==="ENOENT"||I.code==="EINTEGRITY")&&await e.invalidate(this.request,this.options),o.emit("error",I),f.resume()}),o.emit("integrity",this.entry.integrity),o.emit("size",Number(l["content-length"])),f.pipe(o)};o.once("resume",A),o.once("end",()=>o.removeListener("resume",A)),a=new Y6r(o,{url:this.entry.metadata.url,counter:r.counter,status:200,headers:l})}return a.headers.set("x-local-cache",encodeURIComponent(this.options.cachePath)),a.headers.set("x-local-cache-hash",encodeURIComponent(this.entry.integrity)),a.headers.set("x-local-cache-key",encodeURIComponent(this.key)),a.headers.set("x-local-cache-mode","stream"),a.headers.set("x-local-cache-status",n),a.headers.set("x-local-cache-time",new Date(this.entry.metadata.time).toUTCString()),a}async revalidate(t,r){let n=new P0s(t,{headers:this.policy.revalidationHeaders(t)});try{var a=await Dkl(n,{...r,headers:void 0})}catch(l){if(!this.policy.mustRevalidate)return this.respond(t.method,r,"stale");throw l}if(this.policy.revalidated(n,a)){let l=O0s(t,a,r);for(let A of M0s)!Eze(l.resHeaders,A)&&Eze(this.entry.metadata.resHeaders,A)&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]);for(let A of r.cacheAdditionalHeaders){let f=Eze(l.resHeaders,A),I=Eze(this.entry.metadata.resHeaders,A),C=Eze(this.policy.response.headers,A);!f&&I&&(l.resHeaders[A]=this.entry.metadata.resHeaders[A]),!C&&f&&(this.policy.response.headers[A]=l.resHeaders[A])}try{await W0e.index.insert(r.cachePath,this.key,this.entry.integrity,{size:this.entry.size,metadata:l})}catch{}return this.respond(t.method,r,"revalidated")}return new e({request:t,response:a,options:r}).store("updated")}};H0s.exports=X6r});var J0s=H((Eog,X0s)=>{var{NotCachedError:xkl}=Ths(),J6r=Y0s(),Gkl=hLt(),Q0s=async(e,t)=>{let r=await J6r.find(e,t);if(!r){if(t.cache==="only-if-cached")throw new xkl(e.url);let a=await Gkl(e,t);return new J6r({request:e,response:a,options:t}).store("miss")}if(t.cache==="no-cache")return r.revalidate(e,t);let n=r.policy.needsRevalidation(e);return t.cache==="force-cache"||t.cache==="only-if-cached"||!n?r.respond(e.method,t,n?"stale":"hit"):r.revalidate(e,t)};Q0s.invalidate=async(e,t)=>{if(t.cachePath)return J6r.invalidate(e,t)};X0s.exports=Q0s});var z0s=H((Sog,j0s)=>{"use strict";var{FetchError:U6r,Request:Fkl,isRedirect:Zkl}=M7e(),K6r=wt("url"),Lkl=M8r(),U0s=J0s(),Vkl=hLt(),Pkl=(e,t,r)=>{if(!Zkl(t.status)||r.redirect==="manual")return!1;if(r.redirect==="error")throw new U6r(`redirect mode is set to error: ${e.url}`,"no-redirect",{code:"ENOREDIRECT"});if(!t.headers.has("location"))throw new U6r(`redirect location header missing for: ${e.url}`,"no-location",{code:"EINVALIDREDIRECT"});if(e.counter>=e.follow)throw new U6r(`maximum redirect reached at: ${e.url}`,"max-redirect",{code:"EMAXREDIRECT"});return!0},Wkl=(e,t,r)=>{let n={...r},a=t.headers.get("location"),o=new K6r.URL(a,/^https?:/.test(a)?void 0:e.url);return new K6r.URL(e.url).hostname!==o.hostname&&(e.headers.delete("authorization"),e.headers.delete("cookie")),(t.status===303||e.method==="POST"&&[301,302].includes(t.status))&&(n.method="GET",n.body=null,e.headers.delete("content-length")),n.headers={},e.headers.forEach((A,f)=>{n.headers[f]=A}),n.counter=++e.counter,{request:new Fkl(K6r.format(o),n),options:n}},K0s=async(e,t)=>{let r=Lkl.storable(e,t)?await U0s(e,t):await Vkl(e,t);if(!["GET","HEAD"].includes(e.method)&&r.status>=200&&r.status<=399&&await U0s.invalidate(e,t),!Pkl(e,r,t))return r;let n=Wkl(e,r,t);return K0s(n.request,n.options)};j0s.exports=K0s});var bLt=H((vog,hFe)=>{var{FetchError:Okl,Headers:Mkl,Request:q0s,Response:Hkl}=M7e(),Ykl=ths(),Qkl=z0s(),yLt=(e,t)=>{let r=Ykl(t),n=new q0s(e,r);return Qkl(n,r)};yLt.defaults=(e,t={},r=yLt)=>{typeof e=="object"&&(t=e,e=null);let n=(a,o={})=>{let l=a||e,A={...t,...o,headers:{...t.headers,...o.headers}};return r(l,A)};return n.defaults=(a,o={})=>yLt.defaults(a,o,n),n};hFe.exports=yLt;hFe.exports.FetchError=Okl;hFe.exports.Headers=Mkl;hFe.exports.Request=q0s;hFe.exports.Response=Hkl});var $0s=H(mFe=>{"use strict";var Xkl=mFe&&mFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mFe,"__esModule",{value:!0});mFe.CIContextProvider=void 0;var Jkl=Xkl(bLt()),Ukl=[Kkl,jkl],j6r=class{constructor(t="sigstore"){this.audience=t}async getToken(){return Promise.any(Ukl.map(t=>t(this.audience))).catch(()=>Promise.reject("CI: no tokens available"))}};mFe.CIContextProvider=j6r;async function Kkl(e){if(!process.env.ACTIONS_ID_TOKEN_REQUEST_URL||!process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN)return Promise.reject("no token available");let t=new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);return t.searchParams.append("audience",e),(await(0,Jkl.default)(t.href,{retry:2,headers:{Accept:"application/json",Authorization:`Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`}})).json().then(n=>n.value)}async function jkl(){return process.env.SIGSTORE_ID_TOKEN?process.env.SIGSTORE_ID_TOKEN:Promise.reject("no token available")}});var eys=H(ELt=>{"use strict";Object.defineProperty(ELt,"__esModule",{value:!0});ELt.CIContextProvider=void 0;var zkl=$0s();Object.defineProperty(ELt,"CIContextProvider",{enumerable:!0,get:function(){return zkl.CIContextProvider}})});var SLt=H(Sze=>{"use strict";var rys=Sze&&Sze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Sze,"__esModule",{value:!0});Sze.fetchWithRetry=lxl;var qkl=wt("http2"),$kl=rys(bLt()),tys=c6r(),exl=rys(a6r()),txl=Zue(),rxl=BFt(),{HTTP2_HEADER_LOCATION:nxl,HTTP2_HEADER_CONTENT_TYPE:ixl,HTTP2_HEADER_USER_AGENT:sxl,HTTP_STATUS_INTERNAL_SERVER_ERROR:oxl,HTTP_STATUS_TOO_MANY_REQUESTS:axl,HTTP_STATUS_REQUEST_TIMEOUT:cxl}=qkl.constants;async function lxl(e,t){return(0,exl.default)(async(r,n)=>{let a=t.method||"POST",o={[sxl]:txl.ua.getUserAgent(),...t.headers},l=await(0,$kl.default)(e,{method:a,headers:o,body:t.body,timeout:t.timeout,retry:!1}).catch(A=>(tys.log.http("fetch",`${a} ${e} attempt ${n} failed with ${A}`),r(A)));if(l.ok)return l;{let A=await uxl(l);if(tys.log.http("fetch",`${a} ${e} attempt ${n} failed with ${l.status}`),gxl(l.status))return r(A);throw A}},Axl(t.retry))}var uxl=async e=>{let t=e.statusText,r=e.headers.get(nxl)||void 0;if(e.headers.get(ixl)?.includes("application/json"))try{t=(await e.json()).message||t}catch{}return new rxl.HTTPError({status:e.status,message:t,location:r})},gxl=e=>[cxl,axl].includes(e)||e>=oxl,Axl=e=>typeof e=="boolean"?{retries:e?1:0}:typeof e=="number"?{retries:e}:{retries:0,...e}});var nys=H(vLt=>{"use strict";Object.defineProperty(vLt,"__esModule",{value:!0});vLt.Fulcio=void 0;var dxl=SLt(),z6r=class{constructor(t){this.options=t}async createSigningCertificate(t){let{baseURL:r,retry:n,timeout:a}=this.options,o=`${r}/api/v2/signingCert`;return(await(0,dxl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:a,retry:n})).json()}};vLt.Fulcio=z6r});var iys=H(BLt=>{"use strict";Object.defineProperty(BLt,"__esModule",{value:!0});BLt.CAClient=void 0;var pxl=VGe(),fxl=nys(),q6r=class{constructor(t){this.fulcio=new fxl.Fulcio({baseURL:t.fulcioBaseURL,retry:t.retry,timeout:t.timeout})}async createSigningCertificate(t,r,n){let a=Ixl(t,r,n);try{let o=await this.fulcio.createSigningCertificate(a);return(o.signedCertificateEmbeddedSct?o.signedCertificateEmbeddedSct:o.signedCertificateDetachedSct).chain.certificates}catch(o){(0,pxl.internalError)(o,"CA_CREATE_SIGNING_CERTIFICATE_ERROR","error creating signing certificate")}}};BLt.CAClient=q6r;function Ixl(e,t,r){return{credentials:{oidcIdentityToken:e},publicKeyRequest:{publicKey:{algorithm:"ECDSA",content:t},proofOfPossession:r.toString("base64")}}}});var oys=H(CFe=>{"use strict";var hxl=CFe&&CFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CFe,"__esModule",{value:!0});CFe.EphemeralSigner=void 0;var sys=hxl(wt("crypto")),mxl="ec",Cxl="P-256",$6r=class{constructor(){this.keypair=sys.default.generateKeyPairSync(mxl,{namedCurve:Cxl})}async sign(t){let r=sys.default.sign(null,t,this.keypair.privateKey),n=this.keypair.publicKey.export({format:"pem",type:"spki"}).toString("ascii");return{signature:r,key:{$case:"publicKey",publicKey:n}}}};CFe.EphemeralSigner=$6r});var ays=H(O0e=>{"use strict";Object.defineProperty(O0e,"__esModule",{value:!0});O0e.FulcioSigner=O0e.DEFAULT_FULCIO_URL=void 0;var e7r=VGe(),_xl=Zue(),yxl=iys(),bxl=oys();O0e.DEFAULT_FULCIO_URL="https://fulcio.sigstore.dev";var t7r=class{constructor(t){this.ca=new yxl.CAClient({...t,fulcioBaseURL:t.fulcioBaseURL||O0e.DEFAULT_FULCIO_URL}),this.identityProvider=t.identityProvider,this.keyHolder=t.keyHolder||new bxl.EphemeralSigner}async sign(t){let r=await this.getIdentityToken(),n;try{n=_xl.oidc.extractJWTSubject(r)}catch(A){throw new e7r.InternalError({code:"IDENTITY_TOKEN_PARSE_ERROR",message:`invalid identity token: ${r}`,cause:A})}let a=await this.keyHolder.sign(Buffer.from(n));if(a.key.$case!=="publicKey")throw new e7r.InternalError({code:"CA_CREATE_SIGNING_CERTIFICATE_ERROR",message:"unexpected format for signing key"});let o=await this.ca.createSigningCertificate(r,a.key.publicKey,a.signature);return{signature:(await this.keyHolder.sign(t)).signature,key:{$case:"x509Certificate",certificate:o[0]}}}async getIdentityToken(){try{return await this.identityProvider.getToken()}catch(t){throw new e7r.InternalError({code:"IDENTITY_TOKEN_READ_ERROR",message:"error retrieving identity token",cause:t})}}};O0e.FulcioSigner=t7r});var lys=H(_Fe=>{"use strict";Object.defineProperty(_Fe,"__esModule",{value:!0});_Fe.FulcioSigner=_Fe.DEFAULT_FULCIO_URL=void 0;var cys=ays();Object.defineProperty(_Fe,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return cys.DEFAULT_FULCIO_URL}});Object.defineProperty(_Fe,"FulcioSigner",{enumerable:!0,get:function(){return cys.FulcioSigner}})});var Ays=H(wLt=>{"use strict";Object.defineProperty(wLt,"__esModule",{value:!0});wLt.Rekor=void 0;var uys=SLt(),r7r=class{constructor(t){this.options=t}async createEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries`,A=await(await(0,uys.fetchWithRetry)(o,{headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).json();return gys(A)}async getEntry(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/log/entries/${t}`,A=await(await(0,uys.fetchWithRetry)(o,{method:"GET",headers:{Accept:"application/json"},timeout:n,retry:a})).json();return gys(A)}};wLt.Rekor=r7r;function gys(e){let t=Object.entries(e);if(t.length!=1)throw new Error("Received multiple entries in Rekor response");let[r,n]=t[0];return{...n,uuid:r}}});var pys=H(TLt=>{"use strict";Object.defineProperty(TLt,"__esModule",{value:!0});TLt.TLogClient=void 0;var dys=VGe(),Exl=BFt(),Sxl=Ays(),n7r=class{constructor(t){this.fetchOnConflict=t.fetchOnConflict??!1,this.rekor=new Sxl.Rekor({baseURL:t.rekorBaseURL,retry:t.retry,timeout:t.timeout})}async createEntry(t){let r;try{r=await this.rekor.createEntry(t)}catch(n){if(vxl(n)&&this.fetchOnConflict){let a=n.location.split("/").pop()||"";try{r=await this.rekor.getEntry(a)}catch(o){(0,dys.internalError)(o,"TLOG_FETCH_ENTRY_ERROR","error fetching tlog entry")}}else(0,dys.internalError)(n,"TLOG_CREATE_ENTRY_ERROR","error creating tlog entry")}return r}};TLt.TLogClient=n7r;function vxl(e){return e instanceof Exl.HTTPError&&e.statusCode===409&&e.location!==void 0}});var fys=H(i7r=>{"use strict";Object.defineProperty(i7r,"__esModule",{value:!0});i7r.toProposedEntry=wxl;var Bxl=E7e(),Jue=Zue(),vze="sha256";function wxl(e,t,r="dsse"){switch(e.$case){case"dsseEnvelope":return r==="intoto"?Nxl(e.dsseEnvelope,t):Rxl(e.dsseEnvelope,t);case"messageSignature":return Txl(e.messageSignature,t)}}function Txl(e,t){let r=e.messageDigest.digest.toString("hex"),n=e.signature.toString("base64"),a=Jue.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"hashedrekord",spec:{data:{hash:{algorithm:vze,value:r}},signature:{content:n,publicKey:{content:a}}}}}function Rxl(e,t){let r=JSON.stringify((0,Bxl.envelopeToJSON)(e)),n=Jue.encoding.base64Encode(t);return{apiVersion:"0.0.1",kind:"dsse",spec:{proposedContent:{envelope:r,verifiers:[n]}}}}function Nxl(e,t){let r=Jue.crypto.digest(vze,e.payload).toString("hex"),n=Dxl(e,t),a=Jue.encoding.base64Encode(e.payload.toString("base64")),o=Jue.encoding.base64Encode(e.signatures[0].sig.toString("base64")),l=e.signatures[0].keyid,A=Jue.encoding.base64Encode(t),f={payloadType:e.payloadType,payload:a,signatures:[{sig:o,publicKey:A}]};return l.length>0&&(f.signatures[0].keyid=l),{apiVersion:"0.0.2",kind:"intoto",spec:{content:{envelope:f,hash:{algorithm:vze,value:n},payloadHash:{algorithm:vze,value:r}}}}}function Dxl(e,t){let r={payloadType:e.payloadType,payload:e.payload.toString("base64"),signatures:[{sig:e.signatures[0].sig.toString("base64"),publicKey:t}]};return e.signatures[0].keyid.length>0&&(r.signatures[0].keyid=e.signatures[0].keyid),Jue.crypto.digest(vze,Jue.json.canonicalize(r)).toString("hex")}});var Iys=H(M0e=>{"use strict";Object.defineProperty(M0e,"__esModule",{value:!0});M0e.RekorWitness=M0e.DEFAULT_REKOR_URL=void 0;var kxl=Zue(),xxl=pys(),Gxl=fys();M0e.DEFAULT_REKOR_URL="https://rekor.sigstore.dev";var s7r=class{constructor(t){this.entryType=t.entryType,this.tlog=new xxl.TLogClient({...t,rekorBaseURL:t.rekorBaseURL||M0e.DEFAULT_REKOR_URL})}async testify(t,r){let n=(0,Gxl.toProposedEntry)(t,r,this.entryType),a=await this.tlog.createEntry(n);return Fxl(a)}};M0e.RekorWitness=s7r;function Fxl(e){let t=Buffer.from(e.logID,"hex"),r=kxl.encoding.base64Decode(e.body),n=JSON.parse(r),a=e?.verification?.signedEntryTimestamp?Zxl(e.verification.signedEntryTimestamp):void 0,o=e?.verification?.inclusionProof?Lxl(e.verification.inclusionProof):void 0;return{tlogEntries:[{logIndex:e.logIndex.toString(),logId:{keyId:t},integratedTime:e.integratedTime.toString(),kindVersion:{kind:n.kind,version:n.apiVersion},inclusionPromise:a,inclusionProof:o,canonicalizedBody:Buffer.from(e.body,"base64")}]}}function Zxl(e){return{signedEntryTimestamp:Buffer.from(e,"base64")}}function Lxl(e){return{logIndex:e.logIndex.toString(),treeSize:e.treeSize.toString(),rootHash:Buffer.from(e.rootHash,"hex"),hashes:e.hashes.map(t=>Buffer.from(t,"hex")),checkpoint:{envelope:e.checkpoint}}}});var hys=H(RLt=>{"use strict";Object.defineProperty(RLt,"__esModule",{value:!0});RLt.TimestampAuthority=void 0;var Vxl=SLt(),o7r=class{constructor(t){this.options=t}async createTimestamp(t){let{baseURL:r,timeout:n,retry:a}=this.options,o=`${r}/api/v1/timestamp`;return(await(0,Vxl.fetchWithRetry)(o,{headers:{"Content-Type":"application/json"},body:JSON.stringify(t),timeout:n,retry:a})).buffer()}};RLt.TimestampAuthority=o7r});var Cys=H(NLt=>{"use strict";Object.defineProperty(NLt,"__esModule",{value:!0});NLt.TSAClient=void 0;var Pxl=VGe(),Wxl=hys(),Oxl=Zue(),mys="sha256",a7r=class{constructor(t){this.tsa=new Wxl.TimestampAuthority({baseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async createTimestamp(t){let r={artifactHash:Oxl.crypto.digest(mys,t).toString("base64"),hashAlgorithm:mys};try{return await this.tsa.createTimestamp(r)}catch(n){(0,Pxl.internalError)(n,"TSA_CREATE_TIMESTAMP_ERROR","error creating timestamp")}}};NLt.TSAClient=a7r});var _ys=H(DLt=>{"use strict";Object.defineProperty(DLt,"__esModule",{value:!0});DLt.TSAWitness=void 0;var Mxl=Cys(),c7r=class{constructor(t){this.tsa=new Mxl.TSAClient({tsaBaseURL:t.tsaBaseURL,retry:t.retry,timeout:t.timeout})}async testify(t){let r=Hxl(t);return{rfc3161Timestamps:[{signedTimestamp:await this.tsa.createTimestamp(r)}]}}};DLt.TSAWitness=c7r;function Hxl(e){switch(e.$case){case"dsseEnvelope":return e.dsseEnvelope.signatures[0].sig;case"messageSignature":return e.messageSignature.signature}}});var bys=H(Uue=>{"use strict";Object.defineProperty(Uue,"__esModule",{value:!0});Uue.TSAWitness=Uue.RekorWitness=Uue.DEFAULT_REKOR_URL=void 0;var yys=Iys();Object.defineProperty(Uue,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return yys.DEFAULT_REKOR_URL}});Object.defineProperty(Uue,"RekorWitness",{enumerable:!0,get:function(){return yys.RekorWitness}});var Yxl=_ys();Object.defineProperty(Uue,"TSAWitness",{enumerable:!0,get:function(){return Yxl.TSAWitness}})});var u7r=H(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.TSAWitness=BT.RekorWitness=BT.DEFAULT_REKOR_URL=BT.FulcioSigner=BT.DEFAULT_FULCIO_URL=BT.CIContextProvider=BT.InternalError=BT.MessageSignatureBundleBuilder=BT.DSSEBundleBuilder=void 0;var Eys=Rfs();Object.defineProperty(BT,"DSSEBundleBuilder",{enumerable:!0,get:function(){return Eys.DSSEBundleBuilder}});Object.defineProperty(BT,"MessageSignatureBundleBuilder",{enumerable:!0,get:function(){return Eys.MessageSignatureBundleBuilder}});var Qxl=VGe();Object.defineProperty(BT,"InternalError",{enumerable:!0,get:function(){return Qxl.InternalError}});var Xxl=eys();Object.defineProperty(BT,"CIContextProvider",{enumerable:!0,get:function(){return Xxl.CIContextProvider}});var Sys=lys();Object.defineProperty(BT,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return Sys.DEFAULT_FULCIO_URL}});Object.defineProperty(BT,"FulcioSigner",{enumerable:!0,get:function(){return Sys.FulcioSigner}});var l7r=bys();Object.defineProperty(BT,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return l7r.DEFAULT_REKOR_URL}});Object.defineProperty(BT,"RekorWitness",{enumerable:!0,get:function(){return l7r.RekorWitness}});Object.defineProperty(BT,"TSAWitness",{enumerable:!0,get:function(){return l7r.TSAWitness}})});var Bys=H(Bze=>{"use strict";var vys=Bze&&Bze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bze,"__esModule",{value:!0});Bze.appDataPath=Uxl;var Jxl=vys(wt("os")),yFe=vys(wt("path"));function Uxl(e){let t=Jxl.default.homedir();switch(process.platform){case"darwin":{let r=yFe.default.join(t,"Library","Application Support");return yFe.default.join(r,e)}case"win32":{let r=process.env.LOCALAPPDATA||yFe.default.join(t,"AppData","Local");return yFe.default.join(r,e,"Data")}default:{let r=process.env.XDG_DATA_HOME||yFe.default.join(t,".local","share");return yFe.default.join(r,e)}}}});var O6=H(tP=>{"use strict";Object.defineProperty(tP,"__esModule",{value:!0});tP.UnsupportedAlgorithmError=tP.CryptoError=tP.LengthOrHashMismatchError=tP.UnsignedMetadataError=tP.RepositoryError=tP.ValueError=void 0;var g7r=class extends Error{};tP.ValueError=g7r;var wze=class extends Error{};tP.RepositoryError=wze;var A7r=class extends wze{};tP.UnsignedMetadataError=A7r;var d7r=class extends wze{};tP.LengthOrHashMismatchError=d7r;var kLt=class extends Error{};tP.CryptoError=kLt;var p7r=class extends kLt{};tP.UnsupportedAlgorithmError=p7r});var Tys=H(Kue=>{"use strict";Object.defineProperty(Kue,"__esModule",{value:!0});Kue.isDefined=Kxl;Kue.isObject=wys;Kue.isStringArray=jxl;Kue.isObjectArray=zxl;Kue.isStringRecord=qxl;Kue.isObjectRecord=$xl;function Kxl(e){return e!==void 0}function wys(e){return typeof e=="object"&&e!==null}function jxl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function zxl(e){return Array.isArray(e)&&e.every(wys)}function qxl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="string")}function $xl(e){return typeof e=="object"&&e!==null&&Object.keys(e).every(t=>typeof t=="string")&&Object.values(e).every(t=>typeof t=="object"&&t!==null)}});var I7r=H((Xog,Dys)=>{var Rys=",",eGl=":",tGl="[",rGl="]",nGl="{",iGl="}";function f7r(e){let t=[];if(typeof e=="string")t.push(Nys(e));else if(typeof e=="boolean")t.push(JSON.stringify(e));else if(Number.isInteger(e))t.push(JSON.stringify(e));else if(e===null)t.push(JSON.stringify(e));else if(Array.isArray(e)){t.push(tGl);let r=!0;e.forEach(n=>{r||t.push(Rys),r=!1,t.push(f7r(n))}),t.push(rGl)}else if(typeof e=="object"){t.push(nGl);let r=!0;Object.keys(e).sort().forEach(n=>{r||t.push(Rys),r=!1,t.push(Nys(n)),t.push(eGl),t.push(f7r(e[n]))}),t.push(iGl)}else throw new TypeError("cannot encode "+e.toString());return t.join("")}function Nys(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'}Dys.exports={canonicalize:f7r}});var kys=H(bFe=>{"use strict";var sGl=bFe&&bFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bFe,"__esModule",{value:!0});bFe.verifySignature=void 0;var oGl=I7r(),aGl=sGl(wt("crypto")),cGl=(e,t,r)=>{let n=Buffer.from((0,oGl.canonicalize)(e));return aGl.default.verify(void 0,n,t,Buffer.from(r,"hex"))};bFe.verifySignature=cGl});var iJ=H(KH=>{"use strict";var lGl=KH&&KH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uGl=KH&&KH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xys=KH&&KH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&lGl(t,e,r);return uGl(t,e),t};Object.defineProperty(KH,"__esModule",{value:!0});KH.crypto=KH.guard=void 0;KH.guard=xys(Tys());KH.crypto=xys(kys())});var H0e=H(Are=>{"use strict";var gGl=Are&&Are.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Are,"__esModule",{value:!0});Are.Signed=Are.MetadataKind=void 0;Are.isMetadataKind=dGl;var AGl=gGl(wt("util")),Tze=O6(),h7r=iJ(),Gys=["1","0","31"],m7r;(function(e){e.Root="root",e.Timestamp="timestamp",e.Snapshot="snapshot",e.Targets="targets"})(m7r||(Are.MetadataKind=m7r={}));function dGl(e){return typeof e=="string"&&Object.values(m7r).includes(e)}var C7r=class e{constructor(t){this.specVersion=t.specVersion||Gys.join(".");let r=this.specVersion.split(".");if(!(r.length===2||r.length===3)||!r.every(n=>pGl(n)))throw new Tze.ValueError("Failed to parse specVersion");if(r[0]!=Gys[0])throw new Tze.ValueError("Unsupported specVersion");this.expires=t.expires,this.version=t.version,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.specVersion===t.specVersion&&this.expires===t.expires&&this.version===t.version&&AGl.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}isExpired(t){return t||(t=new Date),t>=new Date(this.expires)}static commonFieldsFromJSON(t){let{spec_version:r,expires:n,version:a,...o}=t;if(h7r.guard.isDefined(r)){if(typeof r!="string")throw new TypeError("spec_version must be a string")}else throw new Tze.ValueError("spec_version is not defined");if(h7r.guard.isDefined(n)){if(typeof n!="string")throw new TypeError("expires must be a string")}else throw new Tze.ValueError("expires is not defined");if(h7r.guard.isDefined(a)){if(typeof a!="number")throw new TypeError("version must be a number")}else throw new Tze.ValueError("version is not defined");return{specVersion:r,expires:n,version:a,unrecognizedFields:o}}};Are.Signed=C7r;function pGl(e){return!isNaN(Number(e))}});var Rze=H(zue=>{"use strict";var Fys=zue&&zue.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zue,"__esModule",{value:!0});zue.TargetFile=zue.MetaFile=void 0;var Zys=Fys(wt("crypto")),GLt=Fys(wt("util")),jue=O6(),xLt=iJ(),_7r=class e{constructor(t){if(t.version<=0)throw new jue.ValueError("Metafile version must be at least 1");t.length!==void 0&&Lys(t.length),this.version=t.version,this.length=t.length,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}equals(t){return t instanceof e?this.version===t.version&&this.length===t.length&&GLt.default.isDeepStrictEqual(this.hashes,t.hashes)&&GLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}verify(t){if(this.length!==void 0&&t.length!==this.length)throw new jue.LengthOrHashMismatchError(`Expected length ${this.length} but got ${t.length}`);this.hashes&&Object.entries(this.hashes).forEach(([r,n])=>{let a;try{a=Zys.default.createHash(r)}catch{throw new jue.LengthOrHashMismatchError(`Hash algorithm ${r} not supported`)}let o=a.update(t).digest("hex");if(o!==n)throw new jue.LengthOrHashMismatchError(`Expected hash ${n} but got ${o}`)})}toJSON(){let t={version:this.version,...this.unrecognizedFields};return this.length!==void 0&&(t.length=this.length),this.hashes&&(t.hashes=this.hashes),t}static fromJSON(t){let{version:r,length:n,hashes:a,...o}=t;if(typeof r!="number")throw new TypeError("version must be a number");if(xLt.guard.isDefined(n)&&typeof n!="number")throw new TypeError("length must be a number");if(xLt.guard.isDefined(a)&&!xLt.guard.isStringRecord(a))throw new TypeError("hashes must be string keys and values");return new e({version:r,length:n,hashes:a,unrecognizedFields:o})}};zue.MetaFile=_7r;var y7r=class e{constructor(t){Lys(t.length),this.length=t.length,this.path=t.path,this.hashes=t.hashes,this.unrecognizedFields=t.unrecognizedFields||{}}get custom(){let t=this.unrecognizedFields.custom;return!t||Array.isArray(t)||typeof t!="object"?{}:t}equals(t){return t instanceof e?this.length===t.length&&this.path===t.path&&GLt.default.isDeepStrictEqual(this.hashes,t.hashes)&&GLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}async verify(t){let r=0,n=Object.keys(this.hashes).reduce((a,o)=>{try{a[o]=Zys.default.createHash(o)}catch{throw new jue.LengthOrHashMismatchError(`Hash algorithm ${o} not supported`)}return a},{});for await(let a of t)r+=a.length,Object.values(n).forEach(o=>{o.update(a)});if(r!==this.length)throw new jue.LengthOrHashMismatchError(`Expected length ${this.length} but got ${r}`);Object.entries(n).forEach(([a,o])=>{let l=this.hashes[a],A=o.digest("hex");if(A!==l)throw new jue.LengthOrHashMismatchError(`Expected hash ${l} but got ${A}`)})}toJSON(){return{length:this.length,hashes:this.hashes,...this.unrecognizedFields}}static fromJSON(t,r){let{length:n,hashes:a,...o}=r;if(typeof n!="number")throw new TypeError("length must be a number");if(!xLt.guard.isStringRecord(a))throw new TypeError("hashes must have string keys and values");return new e({length:n,path:t,hashes:a,unrecognizedFields:o})}};zue.TargetFile=y7r;function Lys(e){if(e<0)throw new jue.ValueError("Length must be at least 0")}});var Vys=H(b7r=>{"use strict";Object.defineProperty(b7r,"__esModule",{value:!0});b7r.encodeOIDString=IGl;var fGl=6;function IGl(e){let t=e.split("."),r=parseInt(t[0],10)*40+parseInt(t[1],10),n=[];t.slice(2).forEach(o=>{let l=hGl(parseInt(o,10));n.push(...l)});let a=Buffer.from([r,...n]);return Buffer.from([fGl,a.length,...a])}function hGl(e){let t=[],r=0;for(;e>0;)t.unshift(e&127|r),e>>=7,r=128;return t}});var Mys=H(Dze=>{"use strict";var mGl=Dze&&Dze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Dze,"__esModule",{value:!0});Dze.getPublicKey=bGl;var EFe=mGl(wt("crypto")),Nze=O6(),E7r=Vys(),FLt=48,Pys=3,Wys=0,CGl="1.3.101.112",_Gl="1.2.840.10045.2.1",yGl="1.2.840.10045.3.1.7",S7r="-----BEGIN PUBLIC KEY-----";function bGl(e){switch(e.keyType){case"rsa":return EGl(e);case"ed25519":return SGl(e);case"ecdsa":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":return vGl(e);default:throw new Nze.UnsupportedAlgorithmError(`Unsupported key type: ${e.keyType}`)}}function EGl(e){if(!e.keyVal.startsWith(S7r))throw new Nze.CryptoError("Invalid key format");let t=EFe.default.createPublicKey(e.keyVal);switch(e.scheme){case"rsassa-pss-sha256":return{key:t,padding:EFe.default.constants.RSA_PKCS1_PSS_PADDING};default:throw new Nze.UnsupportedAlgorithmError(`Unsupported RSA scheme: ${e.scheme}`)}}function SGl(e){let t;if(e.keyVal.startsWith(S7r))t=EFe.default.createPublicKey(e.keyVal);else{if(!Oys(e.keyVal))throw new Nze.CryptoError("Invalid key format");t=EFe.default.createPublicKey({key:BGl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}function vGl(e){let t;if(e.keyVal.startsWith(S7r))t=EFe.default.createPublicKey(e.keyVal);else{if(!Oys(e.keyVal))throw new Nze.CryptoError("Invalid key format");t=EFe.default.createPublicKey({key:wGl.hexToDER(e.keyVal),format:"der",type:"spki"})}return{key:t}}var BGl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=(0,E7r.encodeOIDString)(CGl),n=Buffer.concat([Buffer.concat([Buffer.from([FLt]),Buffer.from([r.length]),r]),Buffer.concat([Buffer.from([Pys]),Buffer.from([t.length+1]),Buffer.from([Wys]),t])]);return Buffer.concat([Buffer.from([FLt]),Buffer.from([n.length]),n])}},wGl={hexToDER:e=>{let t=Buffer.from(e,"hex"),r=Buffer.concat([Buffer.from([Pys]),Buffer.from([t.length+1]),Buffer.from([Wys]),t]),n=Buffer.concat([(0,E7r.encodeOIDString)(_Gl),(0,E7r.encodeOIDString)(yGl)]),a=Buffer.concat([Buffer.from([FLt]),Buffer.from([n.length]),n]);return Buffer.concat([Buffer.from([FLt]),Buffer.from([a.length+r.length]),a,r])}},Oys=e=>/^[0-9a-fA-F]+$/.test(e)});var ZLt=H(SFe=>{"use strict";var TGl=SFe&&SFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SFe,"__esModule",{value:!0});SFe.Key=void 0;var Hys=TGl(wt("util")),kze=O6(),Yys=iJ(),RGl=Mys(),v7r=class e{constructor(t){let{keyID:r,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l}=t;this.keyID=r,this.keyType=n,this.scheme=a,this.keyVal=o,this.unrecognizedFields=l||{}}verifySignature(t){let r=t.signatures[this.keyID];if(!r)throw new kze.UnsignedMetadataError("no signature for key found in metadata");if(!this.keyVal.public)throw new kze.UnsignedMetadataError("no public key found");let n=(0,RGl.getPublicKey)({keyType:this.keyType,scheme:this.scheme,keyVal:this.keyVal.public}),a=t.signed.toJSON();try{if(!Yys.crypto.verifySignature(a,n,r.sig))throw new kze.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}catch(o){throw o instanceof kze.UnsignedMetadataError?o:new kze.UnsignedMetadataError(`failed to verify ${this.keyID} signature`)}}equals(t){return t instanceof e?this.keyID===t.keyID&&this.keyType===t.keyType&&this.scheme===t.scheme&&Hys.default.isDeepStrictEqual(this.keyVal,t.keyVal)&&Hys.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keytype:this.keyType,scheme:this.scheme,keyval:this.keyVal,...this.unrecognizedFields}}static fromJSON(t,r){let{keytype:n,scheme:a,keyval:o,...l}=r;if(typeof n!="string")throw new TypeError("keytype must be a string");if(typeof a!="string")throw new TypeError("scheme must be a string");if(!Yys.guard.isStringRecord(o))throw new TypeError("keyval must be a string record");return new e({keyID:t,keyType:n,scheme:a,keyVal:o,unrecognizedFields:l})}};SFe.Key=v7r});var qys=H((eag,zys)=>{var Qys=Tjr();zys.exports=kGl;var Xys="\0SLASH"+Math.random()+"\0",Jys="\0OPEN"+Math.random()+"\0",w7r="\0CLOSE"+Math.random()+"\0",Uys="\0COMMA"+Math.random()+"\0",Kys="\0PERIOD"+Math.random()+"\0";function B7r(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function NGl(e){return e.split("\\\\").join(Xys).split("\\{").join(Jys).split("\\}").join(w7r).split("\\,").join(Uys).split("\\.").join(Kys)}function DGl(e){return e.split(Xys).join("\\").split(Jys).join("{").split(w7r).join("}").split(Uys).join(",").split(Kys).join(".")}function jys(e){if(!e)return[""];var t=[],r=Qys("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,l=n.split(",");l[l.length-1]+="{"+a+"}";var A=jys(o);return o.length&&(l[l.length-1]+=A.shift(),l.push.apply(l,A)),t.push.apply(t,l),t}function kGl(e,t){if(!e)return[];t=t||{};var r=t.max==null?1/0:t.max;return e.substr(0,2)==="{}"&&(e="\\{\\}"+e.substr(2)),xze(NGl(e),r,!0).map(DGl)}function xGl(e){return"{"+e+"}"}function GGl(e){return/^-?0\d/.test(e)}function FGl(e,t){return e<=t}function ZGl(e,t){return e>=t}function xze(e,t,r){var n=[],a=Qys("{","}",e);if(!a)return[e];var o=a.pre,l=a.post.length?xze(a.post,t,!1):[""];if(/\$$/.test(a.pre))for(var A=0;A=0;if(!b&&!E)return a.post.match(/,(?!,).*\}/)?(e=a.pre+"{"+a.body+w7r+a.post,xze(e,t,!0)):[e];var N;if(b)N=a.body.split(/\.\./);else if(N=jys(a.body),N.length===1&&(N=xze(N[0],t,!1).map(xGl),N.length===1))return l.map(function(k){return a.pre+N[0]+k});var B;if(b){var F=B7r(N[0]),Q=B7r(N[1]),X=Math.max(N[0].length,N[1].length),ae=N.length==3?Math.max(Math.abs(B7r(N[2])),1):1,ne=FGl,ce=Q0){var Se=new Array(be+1).join("0");ue<0?de="-"+Se+de.slice(1):de=Se+de}}B.push(de)}}else{B=[];for(var De=0;De{"use strict";Object.defineProperty(LLt,"__esModule",{value:!0});LLt.assertValidPattern=void 0;var LGl=1024*64,VGl=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>LGl)throw new TypeError("pattern is too long")};LLt.assertValidPattern=VGl});var tbs=H(VLt=>{"use strict";Object.defineProperty(VLt,"__esModule",{value:!0});VLt.parseClass=void 0;var PGl={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Gze=e=>e.replace(/[[\]\\-]/g,"\\$&"),WGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ebs=e=>e.join(""),OGl=(e,t)=>{let r=t;if(e.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],a=[],o=r+1,l=!1,A=!1,f=!1,I=!1,C=r,b="";e:for(;ob?n.push(Gze(b)+"-"+Gze(F)):F===b&&n.push(Gze(F)),b="",o++;continue}if(e.startsWith("-]",o+1)){n.push(Gze(F+"-")),o+=2;continue}if(e.startsWith("-",o+1)){b=F,o+=2;continue}n.push(Gze(F)),o++}if(C{"use strict";Object.defineProperty(PLt,"__esModule",{value:!0});PLt.unescape=void 0;var MGl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");PLt.unescape=MGl});var N7r=H(YLt=>{"use strict";var rP;Object.defineProperty(YLt,"__esModule",{value:!0});YLt.AST=void 0;var HGl=tbs(),OLt=WLt(),YGl=new Set(["!","?","+","*","@"]),T7r=e=>YGl.has(e),rbs=e=>T7r(e.type),QGl=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),XGl=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),JGl=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),nbs=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),UGl="(?!(?:^|/)\\.\\.?(?:$|/))",MLt="(?!\\.)",KGl=new Set(["[","."]),jGl=new Set(["..","."]),zGl=new Set("().*{}+?[]^$\\!"),qGl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),R7r="[^/]",ibs=R7r+"*?",sbs=R7r+"+?",HLt=class{type;#e;#t;#n=!1;#r=[];#i;#s;#o;#g=!1;#l;#u;#a=!1;constructor(t,r,n={}){this.type=t,t&&(this.#t=!0),this.#i=r,this.#e=this.#i?this.#i.#e:this,this.#l=this.#e===this?n:this.#e.#l,this.#o=this.#e===this?[]:this.#e.#o,t==="!"&&!this.#e.#g&&this.#o.push(this),this.#s=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#u=this.#r.map(t=>String(t)).join("")}#m(){if(this!==this.#e)throw new Error("should only call on root");if(this.#g)return this;this.toString(),this.#g=!0;let t;for(;t=this.#o.pop();){if(t.type!=="!")continue;let r=t,n=r.#i;for(;n;){for(let a=r.#s+1;!n.type&&atypeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#g&&this.#i?.type==="!")&&t.push({}),t}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#s===0)return!0;let t=this.#i;for(let r=0;r{let[B,F,Q,X]=typeof N=="string"?rP.#B(N,this.#t,f):N.toRegExpSource(t);return this.#t=this.#t||Q,this.#n=this.#n||X,B}).join(""),C="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&jGl.has(this.#r[0]))){let B=KGl,F=r&&B.has(I.charAt(0))||I.startsWith("\\.")&&B.has(I.charAt(2))||I.startsWith("\\.\\.")&&B.has(I.charAt(4)),Q=!r&&!t&&B.has(I.charAt(0));C=F?UGl:Q?MLt:""}let b="";return this.isEnd()&&this.#e.#g&&this.#i?.type==="!"&&(b="(?:$|\\/)"),[C+I+b,(0,OLt.unescape)(I),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",a=this.type==="!"?"(?:(?!(?:":"(?:",o=this.#p(r);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){let f=this.toString(),I=this;return I.#r=[f],I.type=null,I.#t=void 0,[f,(0,OLt.unescape)(this.toString()),!1,!1]}let l=!n||t||r||!MLt?"":this.#p(!0);l===o&&(l=""),l&&(o=`(?:${o})(?:${l})*?`);let A="";if(this.type==="!"&&this.#a)A=(this.isStart()&&!r?MLt:"")+sbs;else{let f=this.type==="!"?"))"+(this.isStart()&&!r&&!t?MLt:"")+ibs+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?")?":`)${this.type}`;A=a+o+f}return[A,(0,OLt.unescape)(o),this.#t=!!this.#t,this.#n]}#p(t){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,a,o,l]=r.toRegExpSource(t);return this.#n=this.#n||l,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#B(t,r,n=!1){let a=!1,o="",l=!1,A=!1;for(let f=0;f{"use strict";Object.defineProperty(QLt,"__esModule",{value:!0});QLt.escape=void 0;var $Gl=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");QLt.escape=$Gl});var Abs=H(xA=>{"use strict";var eFl=xA&&xA.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xA,"__esModule",{value:!0});xA.unescape=xA.escape=xA.AST=xA.Minimatch=xA.match=xA.makeRe=xA.braceExpand=xA.defaults=xA.filter=xA.GLOBSTAR=xA.sep=xA.minimatch=void 0;var tFl=eFl(qys()),XLt=$ys(),cbs=N7r(),rFl=D7r(),nFl=WLt(),iFl=(e,t,r={})=>((0,XLt.assertValidPattern)(t),!r.nocomment&&t.charAt(0)==="#"?!1:new Y0e(t,r).match(e));xA.minimatch=iFl;var sFl=/^\*+([^+@!?\*\[\(]*)$/,oFl=e=>t=>!t.startsWith(".")&&t.endsWith(e),aFl=e=>t=>t.endsWith(e),cFl=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),lFl=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),uFl=/^\*+\.\*+$/,gFl=e=>!e.startsWith(".")&&e.includes("."),AFl=e=>e!=="."&&e!==".."&&e.includes("."),dFl=/^\.\*+$/,pFl=e=>e!=="."&&e!==".."&&e.startsWith("."),fFl=/^\*+$/,IFl=e=>e.length!==0&&!e.startsWith("."),hFl=e=>e.length!==0&&e!=="."&&e!=="..",mFl=/^\?+([^+@!?\*\[\(]*)?$/,CFl=([e,t=""])=>{let r=lbs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},_Fl=([e,t=""])=>{let r=ubs([e]);return t?(t=t.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(t)):r},yFl=([e,t=""])=>{let r=ubs([e]);return t?n=>r(n)&&n.endsWith(t):r},bFl=([e,t=""])=>{let r=lbs([e]);return t?n=>r(n)&&n.endsWith(t):r},lbs=([e])=>{let t=e.length;return r=>r.length===t&&!r.startsWith(".")},ubs=([e])=>{let t=e.length;return r=>r.length===t&&r!=="."&&r!==".."},gbs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",obs={win32:{sep:"\\"},posix:{sep:"/"}};xA.sep=gbs==="win32"?obs.win32.sep:obs.posix.sep;xA.minimatch.sep=xA.sep;xA.GLOBSTAR=Symbol("globstar **");xA.minimatch.GLOBSTAR=xA.GLOBSTAR;var EFl="[^/]",SFl=EFl+"*?",vFl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",BFl="(?:(?!(?:\\/|^)\\.).)*?",wFl=(e,t={})=>r=>(0,xA.minimatch)(r,e,t);xA.filter=wFl;xA.minimatch.filter=xA.filter;var jH=(e,t={})=>Object.assign({},e,t),TFl=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return xA.minimatch;let t=xA.minimatch;return Object.assign((n,a,o={})=>t(n,a,jH(e,o)),{Minimatch:class extends t.Minimatch{constructor(a,o={}){super(a,jH(e,o))}static defaults(a){return t.defaults(jH(e,a)).Minimatch}},AST:class extends t.AST{constructor(a,o,l={}){super(a,o,jH(e,l))}static fromGlob(a,o={}){return t.AST.fromGlob(a,jH(e,o))}},unescape:(n,a={})=>t.unescape(n,jH(e,a)),escape:(n,a={})=>t.escape(n,jH(e,a)),filter:(n,a={})=>t.filter(n,jH(e,a)),defaults:n=>t.defaults(jH(e,n)),makeRe:(n,a={})=>t.makeRe(n,jH(e,a)),braceExpand:(n,a={})=>t.braceExpand(n,jH(e,a)),match:(n,a,o={})=>t.match(n,a,jH(e,o)),sep:t.sep,GLOBSTAR:xA.GLOBSTAR})};xA.defaults=TFl;xA.minimatch.defaults=xA.defaults;var RFl=(e,t={})=>((0,XLt.assertValidPattern)(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:(0,tFl.default)(e));xA.braceExpand=RFl;xA.minimatch.braceExpand=xA.braceExpand;var NFl=(e,t={})=>new Y0e(e,t).makeRe();xA.makeRe=NFl;xA.minimatch.makeRe=xA.makeRe;var DFl=(e,t,r={})=>{let n=new Y0e(t,r);return e=e.filter(a=>n.match(a)),n.options.nonull&&!e.length&&e.push(t),e};xA.match=DFl;xA.minimatch.match=xA.match;var abs=/[?*]|[+@!]\(.*?\)|\[|\]/,kFl=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Y0e=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(t,r={}){(0,XLt.assertValidPattern)(t),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=t,this.platform=r.platform||gbs,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let r of t)if(typeof r!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,r=this.options;if(!r.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...o)=>console.error(...o)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(o=>this.slashSplit(o));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let a=this.globParts.map((o,l,A)=>{if(this.isWindows&&this.windowsNoMagicRoot){let f=o[0]===""&&o[1]===""&&(o[2]==="?"||!abs.test(o[2]))&&!abs.test(o[3]),I=/^[a-z]:/i.test(o[0]);if(f)return[...o.slice(0,4),...o.slice(4).map(C=>this.parse(C))];if(I)return[o[0],...o.slice(1).map(C=>this.parse(C))]}return o.map(f=>this.parse(f))});if(this.debug(this.pattern,a),this.set=a.filter(o=>o.indexOf(!1)===-1),this.isWindows)for(let o=0;o=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):r>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let a=n;for(;r[a+1]==="**";)a++;a!==n&&r.splice(n,a-n)}return r})}levelOneOptimize(t){return t.map(r=>(r=r.reduce((n,a)=>{let o=n[n.length-1];return a==="**"&&o==="**"?n:a===".."&&o&&o!==".."&&o!=="."&&o!=="**"?(n.pop(),n):(n.push(a),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let a=1;aa&&n.splice(a+1,l-a);let A=n[a+1],f=n[a+2],I=n[a+3];if(A!==".."||!f||f==="."||f===".."||!I||I==="."||I==="..")continue;r=!0,n.splice(a,1);let C=n.slice(0);C[a]="**",t.push(C),a--}if(!this.preserveMultipleSlashes){for(let l=1;lr.length)}partsMatch(t,r,n=!1){let a=0,o=0,l=[],A="";for(;a=2&&(t=this.levelTwoFileOptimize(t)),r.includes(xA.GLOBSTAR)?this.#e(t,r,n,a,o):this.#n(t,r,n,a,o)}#e(t,r,n,a,o){let l=r.indexOf(xA.GLOBSTAR,o),A=r.lastIndexOf(xA.GLOBSTAR),[f,I,C]=n?[r.slice(o,l),r.slice(l+1),[]]:[r.slice(o,l),r.slice(l+1,A),r.slice(A+1)];if(f.length){let ae=t.slice(a,a+f.length);if(!this.#n(ae,f,n,0,0))return!1;a+=f.length}let b=0;if(C.length){if(C.length+a>t.length)return!1;let ae=t.length-C.length;if(this.#n(t,C,n,ae,0))b=C.length;else{if(t[t.length-1]!==""||a+C.length===t.length||(ae--,!this.#n(t,C,n,ae,0)))return!1;b=C.length+1}}if(!I.length){let ae=!!b;for(let ne=a;ne{let I=f.map(C=>{if(C instanceof RegExp)for(let b of C.flags.split(""))a.add(b);return typeof C=="string"?kFl(C):C===xA.GLOBSTAR?xA.GLOBSTAR:C._src});return I.forEach((C,b)=>{let E=I[b+1],N=I[b-1];C!==xA.GLOBSTAR||N===xA.GLOBSTAR||(N===void 0?E!==void 0&&E!==xA.GLOBSTAR?I[b+1]="(?:\\/|"+n+"\\/)?"+E:I[b]=n:E===void 0?I[b-1]=N+"(?:\\/|"+n+")?":E!==xA.GLOBSTAR&&(I[b-1]=N+"(?:\\/|\\/"+n+"\\/)"+E,I[b+1]=xA.GLOBSTAR))}),I.filter(C=>C!==xA.GLOBSTAR).join("/")}).join("|"),[l,A]=t.length>1?["(?:",")"]:["",""];o="^"+l+o+A+"$",this.negate&&(o="^(?!"+o+").+$");try{this.regexp=new RegExp(o,[...a].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,r=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&r)return!0;let n=this.options;this.isWindows&&(t=t.split("\\").join("/"));let a=this.slashSplit(t);this.debug(this.pattern,"split",a);let o=this.set;this.debug(this.pattern,"set",o);let l=a[a.length-1];if(!l)for(let A=a.length-2;!l&&A>=0;A--)l=a[A];for(let A=0;A{"use strict";var dbs=zH&&zH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zH,"__esModule",{value:!0});zH.SuccinctRoles=zH.DelegatedRole=zH.Role=zH.TOP_LEVEL_ROLE_NAMES=void 0;var pbs=dbs(wt("crypto")),ZFl=Abs(),JLt=dbs(wt("util")),ULt=O6(),Q0e=iJ();zH.TOP_LEVEL_ROLE_NAMES=["root","targets","snapshot","timestamp"];var Fze=class e{constructor(t){let{keyIDs:r,threshold:n,unrecognizedFields:a}=t;if(LFl(r))throw new ULt.ValueError("duplicate key IDs found");if(n<1)throw new ULt.ValueError("threshold must be at least 1");this.keyIDs=r,this.threshold=n,this.unrecognizedFields=a||{}}equals(t){return t instanceof e?this.threshold===t.threshold&&JLt.default.isDeepStrictEqual(this.keyIDs,t.keyIDs)&&JLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields):!1}toJSON(){return{keyids:this.keyIDs,threshold:this.threshold,...this.unrecognizedFields}}static fromJSON(t){let{keyids:r,threshold:n,...a}=t;if(!Q0e.guard.isStringArray(r))throw new TypeError("keyids must be an array");if(typeof n!="number")throw new TypeError("threshold must be a number");return new e({keyIDs:r,threshold:n,unrecognizedFields:a})}};zH.Role=Fze;function LFl(e){return new Set(e).size!==e.length}var k7r=class e extends Fze{constructor(t){super(t);let{name:r,terminating:n,paths:a,pathHashPrefixes:o}=t;if(this.name=r,this.terminating=n,t.paths&&t.pathHashPrefixes)throw new ULt.ValueError("paths and pathHashPrefixes are mutually exclusive");this.paths=a,this.pathHashPrefixes=o}equals(t){return t instanceof e?super.equals(t)&&this.name===t.name&&this.terminating===t.terminating&&JLt.default.isDeepStrictEqual(this.paths,t.paths)&&JLt.default.isDeepStrictEqual(this.pathHashPrefixes,t.pathHashPrefixes):!1}isDelegatedPath(t){if(this.paths)return this.paths.some(r=>PFl(t,r));if(this.pathHashPrefixes){let n=pbs.default.createHash("sha256").update(t).digest("hex");return this.pathHashPrefixes.some(a=>n.startsWith(a))}return!1}toJSON(){let t={...super.toJSON(),name:this.name,terminating:this.terminating};return this.paths&&(t.paths=this.paths),this.pathHashPrefixes&&(t.path_hash_prefixes=this.pathHashPrefixes),t}static fromJSON(t){let{keyids:r,threshold:n,name:a,terminating:o,paths:l,path_hash_prefixes:A,...f}=t;if(!Q0e.guard.isStringArray(r))throw new TypeError("keyids must be an array of strings");if(typeof n!="number")throw new TypeError("threshold must be a number");if(typeof a!="string")throw new TypeError("name must be a string");if(typeof o!="boolean")throw new TypeError("terminating must be a boolean");if(Q0e.guard.isDefined(l)&&!Q0e.guard.isStringArray(l))throw new TypeError("paths must be an array of strings");if(Q0e.guard.isDefined(A)&&!Q0e.guard.isStringArray(A))throw new TypeError("path_hash_prefixes must be an array of strings");return new e({keyIDs:r,threshold:n,name:a,terminating:o,paths:l,pathHashPrefixes:A,unrecognizedFields:f})}};zH.DelegatedRole=k7r;var VFl=(e,t)=>e.map((r,n)=>[r,t[n]]);function PFl(e,t){let r=e.split("/"),n=t.split("/");return n.length!=r.length?!1:VFl(r,n).every(([a,o])=>(0,ZFl.minimatch)(a,o))}var x7r=class e extends Fze{constructor(t){super(t);let{bitLength:r,namePrefix:n}=t;if(r<=0||r>32)throw new ULt.ValueError("bitLength must be between 1 and 32");this.bitLength=r,this.namePrefix=n,this.numberOfBins=Math.pow(2,r),this.suffixLen=(this.numberOfBins-1).toString(16).length}equals(t){return t instanceof e?super.equals(t)&&this.bitLength===t.bitLength&&this.namePrefix===t.namePrefix:!1}getRoleForTarget(t){let a=pbs.default.createHash("sha256").update(t).digest().subarray(0,4),o=32-this.bitLength,A=(a.readUInt32BE()>>>o).toString(16).padStart(this.suffixLen,"0");return`${this.namePrefix}-${A}`}*getRoles(){for(let t=0;t{"use strict";var WFl=vFe&&vFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vFe,"__esModule",{value:!0});vFe.Root=void 0;var fbs=WFl(wt("util")),F7r=H0e(),Ibs=O6(),OFl=ZLt(),KLt=G7r(),jLt=iJ(),Z7r=class e extends F7r.Signed{constructor(t){if(super(t),this.type=F7r.MetadataKind.Root,this.keys=t.keys||{},this.consistentSnapshot=t.consistentSnapshot??!0,!t.roles)this.roles=KLt.TOP_LEVEL_ROLE_NAMES.reduce((r,n)=>({...r,[n]:new KLt.Role({keyIDs:[],threshold:1})}),{});else{let r=new Set(Object.keys(t.roles));if(!KLt.TOP_LEVEL_ROLE_NAMES.every(n=>r.has(n)))throw new Ibs.ValueError("missing top-level role");this.roles=t.roles}}addKey(t,r){if(!this.roles[r])throw new Ibs.ValueError(`role ${r} does not exist`);this.roles[r].keyIDs.includes(t.keyID)||this.roles[r].keyIDs.push(t.keyID),this.keys[t.keyID]=t}equals(t){return t instanceof e?super.equals(t)&&this.consistentSnapshot===t.consistentSnapshot&&fbs.default.isDeepStrictEqual(this.keys,t.keys)&&fbs.default.isDeepStrictEqual(this.roles,t.roles):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,keys:MFl(this.keys),roles:HFl(this.roles),consistent_snapshot:this.consistentSnapshot,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=F7r.Signed.commonFieldsFromJSON(t),{keys:a,roles:o,consistent_snapshot:l,...A}=r;if(typeof l!="boolean")throw new TypeError("consistent_snapshot must be a boolean");return new e({...n,keys:YFl(a),roles:QFl(o),consistentSnapshot:l,unrecognizedFields:A})}};vFe.Root=Z7r;function MFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function HFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function YFl(e){let t;if(jLt.guard.isDefined(e)){if(!jLt.guard.isObjectRecord(e))throw new TypeError("keys must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:OFl.Key.fromJSON(n,a)}),{})}return t}function QFl(e){let t;if(jLt.guard.isDefined(e)){if(!jLt.guard.isObjectRecord(e))throw new TypeError("roles must be an object");t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:KLt.Role.fromJSON(a)}),{})}return t}});var P7r=H(zLt=>{"use strict";Object.defineProperty(zLt,"__esModule",{value:!0});zLt.Signature=void 0;var V7r=class e{constructor(t){let{keyID:r,sig:n}=t;this.keyID=r,this.sig=n}toJSON(){return{keyid:this.keyID,sig:this.sig}}static fromJSON(t){let{keyid:r,sig:n}=t;if(typeof r!="string")throw new TypeError("keyid must be a string");if(typeof n!="string")throw new TypeError("sig must be a string");return new e({keyID:r,sig:n})}};zLt.Signature=V7r});var M7r=H(BFe=>{"use strict";var XFl=BFe&&BFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BFe,"__esModule",{value:!0});BFe.Snapshot=void 0;var JFl=XFl(wt("util")),W7r=H0e(),mbs=Rze(),hbs=iJ(),O7r=class e extends W7r.Signed{constructor(t){super(t),this.type=W7r.MetadataKind.Snapshot,this.meta=t.meta||{"targets.json":new mbs.MetaFile({version:1})}}equals(t){return t instanceof e?super.equals(t)&&JFl.default.isDeepStrictEqual(this.meta,t.meta):!1}toJSON(){return{_type:this.type,meta:UFl(this.meta),spec_version:this.specVersion,version:this.version,expires:this.expires,...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=W7r.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,meta:KFl(a),unrecognizedFields:o})}};BFe.Snapshot=O7r;function UFl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function KFl(e){let t;if(hbs.guard.isDefined(e))if(hbs.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:mbs.MetaFile.fromJSON(a)}),{});else throw new TypeError("meta field is malformed");return t}});var Cbs=H(wFe=>{"use strict";var jFl=wFe&&wFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wFe,"__esModule",{value:!0});wFe.Delegations=void 0;var qLt=jFl(wt("util")),zFl=O6(),qFl=ZLt(),H7r=G7r(),$Lt=iJ(),Y7r=class e{constructor(t){if(this.keys=t.keys,this.unrecognizedFields=t.unrecognizedFields||{},t.roles&&Object.keys(t.roles).some(r=>H7r.TOP_LEVEL_ROLE_NAMES.includes(r)))throw new zFl.ValueError("Delegated role name conflicts with top-level role name");this.succinctRoles=t.succinctRoles,this.roles=t.roles}equals(t){return t instanceof e?qLt.default.isDeepStrictEqual(this.keys,t.keys)&&qLt.default.isDeepStrictEqual(this.roles,t.roles)&&qLt.default.isDeepStrictEqual(this.unrecognizedFields,t.unrecognizedFields)&&qLt.default.isDeepStrictEqual(this.succinctRoles,t.succinctRoles):!1}*rolesForTarget(t){if(this.roles)for(let r of Object.values(this.roles))r.isDelegatedPath(t)&&(yield{role:r.name,terminating:r.terminating});else this.succinctRoles&&(yield{role:this.succinctRoles.getRoleForTarget(t),terminating:!0})}toJSON(){let t={keys:$Fl(this.keys),...this.unrecognizedFields};return this.roles?t.roles=eZl(this.roles):this.succinctRoles&&(t.succinct_roles=this.succinctRoles.toJSON()),t}static fromJSON(t){let{keys:r,roles:n,succinct_roles:a,...o}=t,l;return $Lt.guard.isObject(a)&&(l=H7r.SuccinctRoles.fromJSON(a)),new e({keys:tZl(r),roles:rZl(n),unrecognizedFields:o,succinctRoles:l})}};wFe.Delegations=Y7r;function $Fl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function eZl(e){return Object.values(e).map(t=>t.toJSON())}function tZl(e){if(!$Lt.guard.isObjectRecord(e))throw new TypeError("keys is malformed");return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:qFl.Key.fromJSON(r,n)}),{})}function rZl(e){let t;if($Lt.guard.isDefined(e)){if(!$Lt.guard.isObjectArray(e))throw new TypeError("roles is malformed");t=e.reduce((r,n)=>{let a=H7r.DelegatedRole.fromJSON(n);return{...r,[a.name]:a}},{})}return t}});var J7r=H(TFe=>{"use strict";var nZl=TFe&&TFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TFe,"__esModule",{value:!0});TFe.Targets=void 0;var _bs=nZl(wt("util")),Q7r=H0e(),iZl=Cbs(),sZl=Rze(),e9t=iJ(),X7r=class e extends Q7r.Signed{constructor(t){super(t),this.type=Q7r.MetadataKind.Targets,this.targets=t.targets||{},this.delegations=t.delegations}addTarget(t){this.targets[t.path]=t}equals(t){return t instanceof e?super.equals(t)&&_bs.default.isDeepStrictEqual(this.targets,t.targets)&&_bs.default.isDeepStrictEqual(this.delegations,t.delegations):!1}toJSON(){let t={_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,targets:oZl(this.targets),...this.unrecognizedFields};return this.delegations&&(t.delegations=this.delegations.toJSON()),t}static fromJSON(t){let{unrecognizedFields:r,...n}=Q7r.Signed.commonFieldsFromJSON(t),{targets:a,delegations:o,...l}=r;return new e({...n,targets:aZl(a),delegations:cZl(o),unrecognizedFields:l})}};TFe.Targets=X7r;function oZl(e){return Object.entries(e).reduce((t,[r,n])=>({...t,[r]:n.toJSON()}),{})}function aZl(e){let t;if(e9t.guard.isDefined(e))if(e9t.guard.isObjectRecord(e))t=Object.entries(e).reduce((r,[n,a])=>({...r,[n]:sZl.TargetFile.fromJSON(n,a)}),{});else throw new TypeError("targets must be an object");return t}function cZl(e){let t;if(e9t.guard.isDefined(e))if(e9t.guard.isObject(e))t=iZl.Delegations.fromJSON(e);else throw new TypeError("delegations must be an object");return t}});var z7r=H(t9t=>{"use strict";Object.defineProperty(t9t,"__esModule",{value:!0});t9t.Timestamp=void 0;var U7r=H0e(),ybs=Rze(),K7r=iJ(),j7r=class e extends U7r.Signed{constructor(t){super(t),this.type=U7r.MetadataKind.Timestamp,this.snapshotMeta=t.snapshotMeta||new ybs.MetaFile({version:1})}equals(t){return t instanceof e?super.equals(t)&&this.snapshotMeta.equals(t.snapshotMeta):!1}toJSON(){return{_type:this.type,spec_version:this.specVersion,version:this.version,expires:this.expires,meta:{"snapshot.json":this.snapshotMeta.toJSON()},...this.unrecognizedFields}}static fromJSON(t){let{unrecognizedFields:r,...n}=U7r.Signed.commonFieldsFromJSON(t),{meta:a,...o}=r;return new e({...n,snapshotMeta:lZl(a),unrecognizedFields:o})}};t9t.Timestamp=j7r;function lZl(e){let t;if(K7r.guard.isDefined(e)){let r=e["snapshot.json"];if(!K7r.guard.isDefined(r)||!K7r.guard.isObject(r))throw new TypeError("missing snapshot.json in meta");t=ybs.MetaFile.fromJSON(r)}return t}});var Ebs=H(NFe=>{"use strict";var uZl=NFe&&NFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NFe,"__esModule",{value:!0});NFe.Metadata=void 0;var gZl=I7r(),bbs=uZl(wt("util")),RFe=H0e(),Zze=O6(),AZl=L7r(),dZl=P7r(),pZl=M7r(),fZl=J7r(),IZl=z7r(),q7r=iJ(),$7r=class e{constructor(t,r,n){this.signed=t,this.signatures=r||{},this.unrecognizedFields=n||{}}sign(t,r=!0){let n=Buffer.from((0,gZl.canonicalize)(this.signed.toJSON())),a=t(n);r||(this.signatures={}),this.signatures[a.keyID]=a}verifyDelegate(t,r){let n,a={};switch(this.signed.type){case RFe.MetadataKind.Root:a=this.signed.keys,n=this.signed.roles[t];break;case RFe.MetadataKind.Targets:if(!this.signed.delegations)throw new Zze.ValueError(`No delegations found for ${t}`);a=this.signed.delegations.keys,this.signed.delegations.roles?n=this.signed.delegations.roles[t]:this.signed.delegations.succinctRoles&&this.signed.delegations.succinctRoles.isDelegatedRole(t)&&(n=this.signed.delegations.succinctRoles);break;default:throw new TypeError("invalid metadata type")}if(!n)throw new Zze.ValueError(`no delegation found for ${t}`);let o=new Set;if(n.keyIDs.forEach(l=>{let A=a[l];if(A)try{A.verifySignature(r),o.add(A.keyID)}catch{}}),o.sizer.toJSON()),signed:this.signed.toJSON(),...this.unrecognizedFields}}static fromJSON(t,r){let{signed:n,signatures:a,...o}=r;if(!q7r.guard.isDefined(n)||!q7r.guard.isObject(n))throw new TypeError("signed is not defined");if(t!==n._type)throw new Zze.ValueError(`expected '${t}', got ${n._type}`);if(!q7r.guard.isObjectArray(a))throw new TypeError("signatures is not an array");let l;switch(t){case RFe.MetadataKind.Root:l=AZl.Root.fromJSON(n);break;case RFe.MetadataKind.Timestamp:l=IZl.Timestamp.fromJSON(n);break;case RFe.MetadataKind.Snapshot:l=pZl.Snapshot.fromJSON(n);break;case RFe.MetadataKind.Targets:l=fZl.Targets.fromJSON(n);break;default:throw new TypeError("invalid metadata type")}let A={};return a.forEach(f=>{let I=dZl.Signature.fromJSON(f);if(A[I.keyID])throw new Zze.ValueError(`multiple signatures found for keyid: ${I.keyID}`);A[I.keyID]=I}),new e(l,A,o)}};NFe.Metadata=$7r});var r9t=H(W2=>{"use strict";Object.defineProperty(W2,"__esModule",{value:!0});W2.Timestamp=W2.Targets=W2.Snapshot=W2.Signature=W2.Root=W2.Metadata=W2.Key=W2.TargetFile=W2.MetaFile=W2.ValueError=W2.MetadataKind=void 0;var hZl=H0e();Object.defineProperty(W2,"MetadataKind",{enumerable:!0,get:function(){return hZl.MetadataKind}});var mZl=O6();Object.defineProperty(W2,"ValueError",{enumerable:!0,get:function(){return mZl.ValueError}});var Sbs=Rze();Object.defineProperty(W2,"MetaFile",{enumerable:!0,get:function(){return Sbs.MetaFile}});Object.defineProperty(W2,"TargetFile",{enumerable:!0,get:function(){return Sbs.TargetFile}});var CZl=ZLt();Object.defineProperty(W2,"Key",{enumerable:!0,get:function(){return CZl.Key}});var _Zl=Ebs();Object.defineProperty(W2,"Metadata",{enumerable:!0,get:function(){return _Zl.Metadata}});var yZl=L7r();Object.defineProperty(W2,"Root",{enumerable:!0,get:function(){return yZl.Root}});var bZl=P7r();Object.defineProperty(W2,"Signature",{enumerable:!0,get:function(){return bZl.Signature}});var EZl=M7r();Object.defineProperty(W2,"Snapshot",{enumerable:!0,get:function(){return EZl.Snapshot}});var SZl=J7r();Object.defineProperty(W2,"Targets",{enumerable:!0,get:function(){return SZl.Targets}});var vZl=z7r();Object.defineProperty(W2,"Timestamp",{enumerable:!0,get:function(){return vZl.Timestamp}})});var ezr=H((mag,vbs)=>{function BZl(e){r.debug=r,r.default=r,r.coerce=f,r.disable=l,r.enable=a,r.enabled=A,r.humanize=X2r(),r.destroy=I,Object.keys(e).forEach(C=>{r[C]=e[C]}),r.names=[],r.skips=[],r.formatters={};function t(C){let b=0;for(let E=0;E{if(ue==="%%")return"%";ce++;let be=r.formatters[de];if(typeof be=="function"){let Se=Q[ce];ue=be.call(X,Se),Q.splice(ce,1),ce--}return ue}),r.formatArgs.call(X,Q),(X.log||r.log).apply(X,Q)}return F.namespace=C,F.useColors=r.useColors(),F.color=r.selectColor(C),F.extend=n,F.destroy=r.destroy,Object.defineProperty(F,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(N!==r.namespaces&&(N=r.namespaces,B=r.enabled(C)),B),set:Q=>{E=Q}}),typeof r.init=="function"&&r.init(F),F}function n(C,b){let E=r(this.namespace+(typeof b>"u"?":":b)+C);return E.log=this.log,E}function a(C){r.save(C),r.namespaces=C,r.names=[],r.skips=[];let b=(typeof C=="string"?C:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let E of b)E[0]==="-"?r.skips.push(E.slice(1)):r.names.push(E)}function o(C,b){let E=0,N=0,B=-1,F=0;for(;E"-"+b)].join(",");return r.enable(""),C}function A(C){for(let b of r.skips)if(o(C,b))return!1;for(let b of r.names)if(o(C,b))return!0;return!1}function f(C){return C instanceof Error?C.stack||C.message:C}function I(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}vbs.exports=BZl});var Bbs=H((nP,n9t)=>{nP.formatArgs=TZl;nP.save=RZl;nP.load=NZl;nP.useColors=wZl;nP.storage=DZl();nP.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();nP.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function wZl(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function TZl(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+n9t.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(n=r))}),e.splice(n,0,t)}nP.log=console.debug||console.log||(()=>{});function RZl(e){try{e?nP.storage.setItem("debug",e):nP.storage.removeItem("debug")}catch{}}function NZl(){let e;try{e=nP.storage.getItem("debug")||nP.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function DZl(){try{return localStorage}catch{}}n9t.exports=ezr()(nP);var{formatters:kZl}=n9t.exports;kZl.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Tbs=H((wD,s9t)=>{var xZl=wt("tty"),i9t=wt("util");wD.init=WZl;wD.log=LZl;wD.formatArgs=FZl;wD.save=VZl;wD.load=PZl;wD.useColors=GZl;wD.destroy=i9t.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");wD.colors=[6,2,3,4,5,1];try{let e=wt("supports-color");e&&(e.stderr||e).level>=2&&(wD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}wD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function GZl(){return"colors"in wD.inspectOpts?!!wD.inspectOpts.colors:xZl.isatty(process.stderr.fd)}function FZl(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,a="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` -`).join(` -`+o),e.push(a+"m+"+s9t.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=ZZl()+t+" "+e[0]}function ZZl(){return wD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function LZl(...e){return process.stderr.write(i9t.formatWithOptions(wD.inspectOpts,...e)+` -`)}function VZl(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function PZl(){return process.env.DEBUG}function WZl(e){e.inspectOpts={};let t=Object.keys(wD.inspectOpts);for(let r=0;rt.trim()).join(" ")};wbs.O=function(e){return this.inspectOpts.colors=this.useColors,i9t.inspect(e,this.inspectOpts)}});var rzr=H((Cag,tzr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?tzr.exports=Bbs():tzr.exports=Tbs()});var a9t=H(nB=>{"use strict";Object.defineProperty(nB,"__esModule",{value:!0});nB.DownloadHTTPError=nB.DownloadLengthMismatchError=nB.DownloadError=nB.ExpiredMetadataError=nB.EqualVersionError=nB.BadVersionError=nB.RepositoryError=nB.PersistError=nB.RuntimeError=nB.ValueError=void 0;var nzr=class extends Error{};nB.ValueError=nzr;var izr=class extends Error{};nB.RuntimeError=izr;var szr=class extends Error{};nB.PersistError=szr;var Lze=class extends Error{};nB.RepositoryError=Lze;var o9t=class extends Lze{};nB.BadVersionError=o9t;var ozr=class extends o9t{};nB.EqualVersionError=ozr;var azr=class extends Lze{};nB.ExpiredMetadataError=azr;var Vze=class extends Error{};nB.DownloadError=Vze;var czr=class extends Vze{};nB.DownloadLengthMismatchError=czr;var lzr=class extends Vze{statusCode;constructor(t,r){super(t),this.statusCode=r}};nB.DownloadHTTPError=lzr});var Nbs=H(DFe=>{"use strict";var gzr=DFe&&DFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DFe,"__esModule",{value:!0});DFe.withTempFile=void 0;var uzr=gzr(wt("fs/promises")),OZl=gzr(wt("os")),Rbs=gzr(wt("path")),MZl=async e=>HZl(async t=>e(Rbs.default.join(t,"tempfile")));DFe.withTempFile=MZl;var HZl=async e=>{let t=await uzr.default.realpath(OZl.default.tmpdir()),r=await uzr.default.mkdtemp(t+Rbs.default.sep);try{return await e(r)}finally{await uzr.default.rm(r,{force:!0,recursive:!0,maxRetries:3})}}});var dzr=H(que=>{"use strict";var l9t=que&&que.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(que,"__esModule",{value:!0});que.DefaultFetcher=que.BaseFetcher=void 0;var YZl=l9t(rzr()),Dbs=l9t(wt("fs")),QZl=l9t(bLt()),XZl=l9t(wt("util")),kbs=a9t(),JZl=Nbs(),UZl=(0,YZl.default)("tuf:fetch"),c9t=class{async downloadFile(t,r,n){return(0,JZl.withTempFile)(async a=>{let o=await this.fetch(t),l=0,A=Dbs.default.createWriteStream(a);try{for await(let f of o){if(l+=f.length,l>r)throw new kbs.DownloadLengthMismatchError("Max length reached");await KZl(A,f)}}finally{await XZl.default.promisify(A.close).bind(A)()}return n(a)})}async downloadBytes(t,r){return this.downloadFile(t,r,async n=>{let a=Dbs.default.createReadStream(n),o=[];for await(let l of a)o.push(l);return Buffer.concat(o)})}};que.BaseFetcher=c9t;var Azr=class extends c9t{timeout;retry;constructor(t={}){super(),this.timeout=t.timeout,this.retry=t.retry}async fetch(t){UZl("GET %s",t);let r=await(0,QZl.default)(t,{timeout:this.timeout,retry:this.retry});if(!r.ok||!r?.body)throw new kbs.DownloadHTTPError("Failed to download",r.status);return r.body}};que.DefaultFetcher=Azr;var KZl=async(e,t)=>new Promise((r,n)=>{e.write(t,a=>{a&&n(a),r(!0)})})});var xbs=H(u9t=>{"use strict";Object.defineProperty(u9t,"__esModule",{value:!0});u9t.defaultConfig=void 0;u9t.defaultConfig={maxRootRotations:256,maxDelegations:32,rootMaxLength:512e3,timestampMaxLength:16384,snapshotMaxLength:2e6,targetsMaxLength:5e6,prefixTargetsWithHash:!0,fetchTimeout:1e5,fetchRetries:void 0,fetchRetry:2}});var Gbs=H(g9t=>{"use strict";Object.defineProperty(g9t,"__esModule",{value:!0});g9t.TrustedMetadataStore=void 0;var wT=r9t(),OS=a9t(),pzr=class{trustedSet={};referenceTime;constructor(t){this.referenceTime=new Date,this.loadTrustedRoot(t)}get root(){if(!this.trustedSet.root)throw new ReferenceError("No trusted root metadata");return this.trustedSet.root}get timestamp(){return this.trustedSet.timestamp}get snapshot(){return this.trustedSet.snapshot}get targets(){return this.trustedSet.targets}getRole(t){return this.trustedSet[t]}updateRoot(t){let r=JSON.parse(t.toString("utf8")),n=wT.Metadata.fromJSON(wT.MetadataKind.Root,r);if(n.signed.type!=wT.MetadataKind.Root)throw new OS.RepositoryError(`Expected 'root', got ${n.signed.type}`);if(this.root.verifyDelegate(wT.MetadataKind.Root,n),n.signed.version!=this.root.signed.version+1)throw new OS.BadVersionError(`Expected version ${this.root.signed.version+1}, got ${n.signed.version}`);return n.verifyDelegate(wT.MetadataKind.Root,n),this.trustedSet.root=n,n}updateTimestamp(t){if(this.snapshot)throw new OS.RuntimeError("Cannot update timestamp after snapshot");if(this.root.signed.isExpired(this.referenceTime))throw new OS.ExpiredMetadataError("Final root.json is expired");let r=JSON.parse(t.toString("utf8")),n=wT.Metadata.fromJSON(wT.MetadataKind.Timestamp,r);if(n.signed.type!=wT.MetadataKind.Timestamp)throw new OS.RepositoryError(`Expected 'timestamp', got ${n.signed.type}`);if(this.root.verifyDelegate(wT.MetadataKind.Timestamp,n),this.timestamp){if(n.signed.version{let f=o.signed.meta[l];if(!f)throw new OS.RepositoryError(`Missing file ${l} in new snapshot`);if(f.version{"use strict";Object.defineProperty(fzr,"__esModule",{value:!0});fzr.join=zZl;var jZl=wt("url");function zZl(e,t){return new jZl.URL(qZl(e)+$Zl(t)).toString()}function qZl(e){return e.endsWith("/")?e:e+"/"}function $Zl(e){return e.startsWith("/")?e.slice(1):e}});var Zbs=H(qH=>{"use strict";var eLl=qH&&qH.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tLl=qH&&qH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mzr=qH&&qH.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;a{await t.verify(kFe.createReadStream(f)),Izr("WRITE %s",a),kFe.copyFileSync(f,a)}),a}async findCachedTarget(t,r){r||(r=this.generateTargetPath(t));try{if(kFe.existsSync(r))return await t.verify(kFe.createReadStream(r)),r}catch{return}}loadLocalMetadata(t){let r=A9t.join(this.dir,`${t}.json`);return Izr("READ %s",r),kFe.readFileSync(r)}async loadRoot(){let r=this.trustedSet.root.signed.version+1,n=r+this.config.maxRootRotations;for(let a=r;a0;){let{roleName:a,parentRoleName:o}=r.pop();if(n.has(a))continue;let l=(await this.loadTargets(a,o))?.signed;if(!l)continue;let A=l.targets?.[t];if(A)return A;if(n.add(a),l.delegations){let f=[],I=l.delegations.rolesForTarget(t);for(let{role:C,terminating:b}of I)if(f.push({roleName:C,parentRoleName:a}),b){r.splice(0);break}f.reverse(),r.push(...f)}}}generateTargetPath(t){if(!this.targetDir)throw new X0e.ValueError("Target directory not set");let r=encodeURIComponent(t.path);return A9t.join(this.targetDir,r)}persistMetadata(t,r){let n=encodeURIComponent(t);try{let a=A9t.join(this.dir,`${n}.json`);Izr("WRITE %s",a),kFe.writeFileSync(a,r.toString("utf8"))}catch(a){throw new X0e.PersistError(`Failed to persist metadata ${n} error: ${a}`)}}};qH.Updater=hzr});var Lbs=H($ue=>{"use strict";Object.defineProperty($ue,"__esModule",{value:!0});$ue.Updater=$ue.BaseFetcher=$ue.TargetFile=void 0;var aLl=r9t();Object.defineProperty($ue,"TargetFile",{enumerable:!0,get:function(){return aLl.TargetFile}});var cLl=dzr();Object.defineProperty($ue,"BaseFetcher",{enumerable:!0,get:function(){return cLl.BaseFetcher}});var lLl=Zbs();Object.defineProperty($ue,"Updater",{enumerable:!0,get:function(){return lLl.Updater}})});var _zr=H(d9t=>{"use strict";Object.defineProperty(d9t,"__esModule",{value:!0});d9t.TUFError=void 0;var Czr=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}};d9t.TUFError=Czr});var Vbs=H(Wze=>{"use strict";var uLl=Wze&&Wze.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Wze,"__esModule",{value:!0});Wze.readTarget=ALl;var gLl=uLl(wt("fs")),p9t=_zr();async function ALl(e,t){let r=await dLl(e,t);return new Promise((n,a)=>{gLl.default.readFile(r,"utf-8",(o,l)=>{o?a(new p9t.TUFError({code:"TUF_READ_TARGET_ERROR",message:`error reading target ${r}`,cause:o})):n(l)})})}async function dLl(e,t){let r;try{r=await e.getTargetInfo(t)}catch(a){throw new p9t.TUFError({code:"TUF_REFRESH_METADATA_ERROR",message:"error refreshing TUF metadata",cause:a})}if(!r)throw new p9t.TUFError({code:"TUF_FIND_TARGET_ERROR",message:`target ${t} not found`});let n=await e.findCachedTarget(r);if(!n)try{n=await e.downloadTarget(r)}catch(a){throw new p9t.TUFError({code:"TUF_DOWNLOAD_TARGET_ERROR",message:`error downloading target ${n}`,cause:a})}return n}});var Pbs=H((Nag,pLl)=>{pLl.exports={"https://tuf-repo-cdn.sigstore.dev":{"root.json":"ewogInNpZ25hdHVyZXMiOiBbCiAgewogICAia2V5aWQiOiAiNmYyNjAwODlkNTkyM2RhZjIwMTY2Y2E2NTdjNTQzYWY2MTgzNDZhYjk3MTg4NGE5OTk2MmIwMTk4OGJiZTBjMyIsCiAgICJzaWciOiAiIgogIH0sCiAgewogICAia2V5aWQiOiAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICJzaWciOiAiMzA0NTAyMjEwMGIwYmNmMTg5Y2UxYjkzZTdkYjk2NDlkNWJlNTEyYTE4ODBjMGUzNTg4NzBlMzkzM2U0MjZjNWFmYjhhNDA2MTAwMjIwNmQyMTRiZDc5YjA5ZjQ1OGNjYzUyMWEyOTBhYTk2MGM0MTcwMTRmYzE2ZTYwNmY4MjA5MWI1ZTMxODE0ODg2YSIKICB9LAogIHsKICAgImtleWlkIjogIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAic2lnIjogIiIKICB9LAogIHsKICAgImtleWlkIjogIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAic2lnIjogIjMwNDUwMjIxMDBhOWI5ZTI5NGVjMjFiNjJkZmNhNmExNmExOWQwODQxODJjMTI1NzJlMzNkOWM0ZGNhYjUzMTdmYTFlOGE0NTlkMDIyMDY5ZjY4ZTU1ZWExZjk1YzVhMzY3YWFjN2E2MWE2NTc1N2Y5M2RhNWEwMDZhNWY0ZDFjZjk5NWJlODEyZDc2MDIiCiAgfSwKICB7CiAgICJrZXlpZCI6ICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIiwKICAgInNpZyI6ICIzMDQ0MDIyMDc4MTE3OGVjMzkxNWNiMTZhY2E3NTdkNDBlMjg0MzVhYzUzNzhkNmI0ODdhY2IxMTFkMWVlYjMzOTM5N2Y3OWEwMjIwNzgxY2NlNDhhZTQ2ZjllNDdiOTdhODQxNGZjZjQ2NmE5ODY3MjZhNTg5NmM3MmEwZTRhYmEzMTYyY2I4MjZkZCIKICB9CiBdLAogInNpZ25lZCI6IHsKICAiX3R5cGUiOiAicm9vdCIsCiAgImNvbnNpc3RlbnRfc25hcHNob3QiOiB0cnVlLAogICJleHBpcmVzIjogIjIwMjUtMDgtMTlUMTQ6MzM6MDlaIiwKICAia2V5cyI6IHsKICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVXUmlHcjUraiszSjVTc0grWnRyNW5FMkgyd083XG5CVituTzNzOTNnTGNhMThxVE96SFkxb1d5QUdEeWtNU3NHVFVCU3Q5RCtBbjBLZktzRDJtZlNNNDJRPT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2ktb25saW5lLXVyaSI6ICJnY3BrbXM6cHJvamVjdHMvc2lnc3RvcmUtcm9vdC1zaWduaW5nL2xvY2F0aW9ucy9nbG9iYWwva2V5UmluZ3Mvcm9vdC9jcnlwdG9LZXlzL3RpbWVzdGFtcC9jcnlwdG9LZXlWZXJzaW9ucy8xIgogICB9LAogICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiI6IHsKICAgICJrZXlpZF9oYXNoX2FsZ29yaXRobXMiOiBbCiAgICAgInNoYTI1NiIsCiAgICAgInNoYTUxMiIKICAgIF0sCiAgICAia2V5dHlwZSI6ICJlY2RzYSIsCiAgICAia2V5dmFsIjogewogICAgICJwdWJsaWMiOiAiLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS1cbk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRXpCelZPbUhDUG9qTVZMU0kzNjRXaWlWOE5QckRcbjZJZ1J4Vmxpc2t6L3YreTNKRVI1bWNWR2NPTmxpRGNXTUM1SjJsZkhtalBOUGhiNEg3eG04THpmU0E9PVxuLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tXG4iCiAgICB9LAogICAgInNjaGVtZSI6ICJlY2RzYS1zaGEyLW5pc3RwMjU2IiwKICAgICJ4LXR1Zi1vbi1jaS1rZXlvd25lciI6ICJAc2FudGlhZ290b3JyZXMiCiAgIH0sCiAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaW5pa1NzQVFtWWtOZUg1ZVlxL0NuSXpMYWFjT1xueGxTYWF3UURPd3FLeS90Q3F4cTV4eFBTSmMyMUs0V0loczlHeU9rS2Z6dWVZM0dJTHpjTUpaNGNXdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBib2JjYWxsYXdheSIKICAgfSwKICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUV5OFhLc21oQllESThKYzBHd3pCeGVLYXgwY201XG5TVEtFVTY1SFBGdW5VbjQxc1Q4cGkwRmpNNElrSHovWVVtd21MVU8wV3Q3bHhoajZCa0xJSzRxWUF3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQGRsb3JlbmMiCiAgIH0sCiAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIjogewogICAgImtleWlkX2hhc2hfYWxnb3JpdGhtcyI6IFsKICAgICAic2hhMjU2IiwKICAgICAic2hhNTEyIgogICAgXSwKICAgICJrZXl0eXBlIjogImVjZHNhIiwKICAgICJrZXl2YWwiOiB7CiAgICAgInB1YmxpYyI6ICItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFMGdocmg5Mkx3MVlyM2lkR1Y1V3FDdE1EQjhDeFxuK0Q4aGRDNHcyWkxOSXBsVlJvVkdMc2tZYTNnaGVNeU9qaUo4a1BpMTVhUTIvLzdQK29qN1V2SlBHdz09XG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS1cbiIKICAgIH0sCiAgICAic2NoZW1lIjogImVjZHNhLXNoYTItbmlzdHAyNTYiLAogICAgIngtdHVmLW9uLWNpLWtleW93bmVyIjogIkBqb3NodWFnbCIKICAgfSwKICAgImU3MWE1NGQ1NDM4MzViYTg2YWRhZDk0NjAzNzljNzY0MWZiODcyNmQxNjRlYTc2NjgwMWExYzUyMmFiYTdlYTIiOiB7CiAgICAia2V5aWRfaGFzaF9hbGdvcml0aG1zIjogWwogICAgICJzaGEyNTYiLAogICAgICJzaGE1MTIiCiAgICBdLAogICAgImtleXR5cGUiOiAiZWNkc2EiLAogICAgImtleXZhbCI6IHsKICAgICAicHVibGljIjogIi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tXG5NRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVFWHN6M1NaWEZiOGpNVjQyajZwSmx5amJqUjhLXG5OM0J3b2NleHE2TE1JYjVxc1dLT1F2TE4xNk5VZWZMYzRIc3dPb3VtUnNWVmFhalNwUVM2Zm9ia1J3PT1cbi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLVxuIgogICAgfSwKICAgICJzY2hlbWUiOiAiZWNkc2Etc2hhMi1uaXN0cDI1NiIsCiAgICAieC10dWYtb24tY2kta2V5b3duZXIiOiAiQG1ubTY3OCIKICAgfQogIH0sCiAgInJvbGVzIjogewogICAicm9vdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjZmMjYwMDg5ZDU5MjNkYWYyMDE2NmNhNjU3YzU0M2FmNjE4MzQ2YWI5NzE4ODRhOTk5NjJiMDE5ODhiYmUwYzMiLAogICAgICJlNzFhNTRkNTQzODM1YmE4NmFkYWQ5NDYwMzc5Yzc2NDFmYjg3MjZkMTY0ZWE3NjY4MDFhMWM1MjJhYmE3ZWEyIiwKICAgICAiMjJmNGNhZWM2ZDhlNmY5NTU1YWY2NmIzZDRjM2NiMDZhM2JiMjNmZGM3ZTM5YzkxNmM2MWY0NjJlNmY1MmIwNiIsCiAgICAgIjYxNjQzODM4MTI1YjQ0MGI0MGRiNjk0MmY1Y2I1YTMxYzBkYzA0MzY4MzE2ZWIyYWFhNThiOTU5MDRhNTgyMjIiLAogICAgICJhNjg3ZTViZjRmYWI4MmIwZWU1OGQ0NmUwNWM5NTM1MTQ1YTJjOWFmYjQ1OGY0M2Q0MmI0NWNhMGZkY2UyYTcwIgogICAgXSwKICAgICJ0aHJlc2hvbGQiOiAzCiAgIH0sCiAgICJzbmFwc2hvdCI6IHsKICAgICJrZXlpZHMiOiBbCiAgICAgIjBjODc0MzJjM2JmMDlmZDk5MTg5ZmRjMzJmYTVlYWVkZjRlNGE1ZmFjN2JhYjczZmEwNGEyZTBmYzY0YWY2ZjUiCiAgICBdLAogICAgInRocmVzaG9sZCI6IDEsCiAgICAieC10dWYtb24tY2ktZXhwaXJ5LXBlcmlvZCI6IDM2NTAsCiAgICAieC10dWYtb24tY2ktc2lnbmluZy1wZXJpb2QiOiAzNjUKICAgfSwKICAgInRhcmdldHMiOiB7CiAgICAia2V5aWRzIjogWwogICAgICI2ZjI2MDA4OWQ1OTIzZGFmMjAxNjZjYTY1N2M1NDNhZjYxODM0NmFiOTcxODg0YTk5OTYyYjAxOTg4YmJlMGMzIiwKICAgICAiZTcxYTU0ZDU0MzgzNWJhODZhZGFkOTQ2MDM3OWM3NjQxZmI4NzI2ZDE2NGVhNzY2ODAxYTFjNTIyYWJhN2VhMiIsCiAgICAgIjIyZjRjYWVjNmQ4ZTZmOTU1NWFmNjZiM2Q0YzNjYjA2YTNiYjIzZmRjN2UzOWM5MTZjNjFmNDYyZTZmNTJiMDYiLAogICAgICI2MTY0MzgzODEyNWI0NDBiNDBkYjY5NDJmNWNiNWEzMWMwZGMwNDM2ODMxNmViMmFhYTU4Yjk1OTA0YTU4MjIyIiwKICAgICAiYTY4N2U1YmY0ZmFiODJiMGVlNThkNDZlMDVjOTUzNTE0NWEyYzlhZmI0NThmNDNkNDJiNDVjYTBmZGNlMmE3MCIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMwogICB9LAogICAidGltZXN0YW1wIjogewogICAgImtleWlkcyI6IFsKICAgICAiMGM4NzQzMmMzYmYwOWZkOTkxODlmZGMzMmZhNWVhZWRmNGU0YTVmYWM3YmFiNzNmYTA0YTJlMGZjNjRhZjZmNSIKICAgIF0sCiAgICAidGhyZXNob2xkIjogMSwKICAgICJ4LXR1Zi1vbi1jaS1leHBpcnktcGVyaW9kIjogNywKICAgICJ4LXR1Zi1vbi1jaS1zaWduaW5nLXBlcmlvZCI6IDYKICAgfQogIH0sCiAgInNwZWNfdmVyc2lvbiI6ICIxLjAiLAogICJ2ZXJzaW9uIjogMTIsCiAgIngtdHVmLW9uLWNpLWV4cGlyeS1wZXJpb2QiOiAxOTcsCiAgIngtdHVmLW9uLWNpLXNpZ25pbmctcGVyaW9kIjogNDYKIH0KfQ==",targets:{"trusted_root.json":"ewogICJtZWRpYVR5cGUiOiAiYXBwbGljYXRpb24vdm5kLmRldi5zaWdzdG9yZS50cnVzdGVkcm9vdCtqc29uO3ZlcnNpb249MC4xIiwKICAidGxvZ3MiOiBbCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vcmVrb3Iuc2lnc3RvcmUuZGV2IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUyRzJZKzJ0YWJkVFY1QmNHaUJJeDBhOWZBRndya0JibUxTR3RrczRMM3FYNnlZWTB6dWZCbmhDOFVyL2l5NTVHaFdQLzlBL2JZMkxoQzMwTTkrUll0dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDEtMTJUMTE6NTM6MjcuMDAwWiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAid05JOWF0UUdseitWV2ZPNkxSeWdINFFVZlkvOFc0UkZ3aVQ1aTVXUmdCMD0iCiAgICAgIH0KICAgIH0KICBdLAogICJjZXJ0aWZpY2F0ZUF1dGhvcml0aWVzIjogWwogICAgewogICAgICAic3ViamVjdCI6IHsKICAgICAgICAib3JnYW5pemF0aW9uIjogInNpZ3N0b3JlLmRldiIsCiAgICAgICAgImNvbW1vbk5hbWUiOiAic2lnc3RvcmUiCiAgICAgIH0sCiAgICAgICJ1cmkiOiAiaHR0cHM6Ly9mdWxjaW8uc2lnc3RvcmUuZGV2IiwKICAgICAgImNlcnRDaGFpbiI6IHsKICAgICAgICAiY2VydGlmaWNhdGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAicmF3Qnl0ZXMiOiAiTUlJQitEQ0NBWDZnQXdJQkFnSVROVmtEWm9DaW9mUERzeTdkZm02Z2VMYnVoekFLQmdncWhrak9QUVFEQXpBcU1SVXdFd1lEVlFRS0V3eHphV2R6ZEc5eVpTNWtaWFl4RVRBUEJnTlZCQU1UQ0hOcFozTjBiM0psTUI0WERUSXhNRE13TnpBek1qQXlPVm9YRFRNeE1ESXlNekF6TWpBeU9Wb3dLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQjJNQkFHQnlxR1NNNDlBZ0VHQlN1QkJBQWlBMklBQkxTeUE3SWk1aytwTk84WkVXWTB5bGVtV0Rvd09rTmEza0wrR1pFNVo1R1dlaEw5L0E5YlJOQTNSYnJzWjVpMEpjYXN0YVJMN1NwNWZwL2pENWR4cWMvVWRUVm5sdlMxNmFuKzJZZnN3ZS9RdUxvbFJVQ3JjT0UyKzJpQTUrdHpkNk5tTUdRd0RnWURWUjBQQVFIL0JBUURBZ0VHTUJJR0ExVWRFd0VCL3dRSU1BWUJBZjhDQVFFd0hRWURWUjBPQkJZRUZNakZIUUJCbWlRcE1sRWs2dzJ1U3UxS0J0UHNNQjhHQTFVZEl3UVlNQmFBRk1qRkhRQkJtaVFwTWxFazZ3MnVTdTFLQnRQc01Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01IOGxpV0pmTXVpNnZYWEJoakRnWTRNd3NsbU4vVEp4VmUvODNXckZvbXdtTmYwNTZ5MVg0OEY5YzRtM2Ezb3pYQUl4QUtqUmF5NS9hai9qc0tLR0lrbVFhdGpJOHV1cEhyLytDeEZ2YUpXbXBZcU5rTERHUlUrOW9yemg1aEkyUnJjdWFRPT0iCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMDdUMDM6MjA6MjkuMDAwWiIsCiAgICAgICAgImVuZCI6ICIyMDIyLTEyLTMxVDIzOjU5OjU5Ljk5OVoiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJzdWJqZWN0IjogewogICAgICAgICJvcmdhbml6YXRpb24iOiAic2lnc3RvcmUuZGV2IiwKICAgICAgICAiY29tbW9uTmFtZSI6ICJzaWdzdG9yZSIKICAgICAgfSwKICAgICAgInVyaSI6ICJodHRwczovL2Z1bGNpby5zaWdzdG9yZS5kZXYiLAogICAgICAiY2VydENoYWluIjogewogICAgICAgICJjZXJ0aWZpY2F0ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNSUlDR2pDQ0FhR2dBd0lCQWdJVUFMblZpVmZuVTBickphc21Sa0hybi9VbmZhUXdDZ1lJS29aSXpqMEVBd013S2pFVk1CTUdBMVVFQ2hNTWMybG5jM1J2Y21VdVpHVjJNUkV3RHdZRFZRUURFd2h6YVdkemRHOXlaVEFlRncweU1qQTBNVE15TURBMk1UVmFGdzB6TVRFd01EVXhNelUyTlRoYU1EY3hGVEFUQmdOVkJBb1RESE5wWjNOMGIzSmxMbVJsZGpFZU1Cd0dBMVVFQXhNVmMybG5jM1J2Y21VdGFXNTBaWEp0WldScFlYUmxNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRThSVlMveXNIK05PdnVEWnlQSVp0aWxnVUY5TmxhcllwQWQ5SFAxdkJCSDFVNUNWNzdMU1M3czBaaUg0bkU3SHY3cHRTNkx2dlIvU1RrNzk4TFZnTXpMbEo0SGVJZkYzdEhTYWV4TGNZcFNBU3Ixa1MwTi9SZ0JKei85aldDaVhubzNzd2VUQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0V3WURWUjBsQkF3d0NnWUlLd1lCQlFVSEF3TXdFZ1lEVlIwVEFRSC9CQWd3QmdFQi93SUJBREFkQmdOVkhRNEVGZ1FVMzlQcHoxWWtFWmI1cU5qcEtGV2l4aTRZWkQ4d0h3WURWUjBqQkJnd0ZvQVVXTUFlWDVGRnBXYXBlc3lRb1pNaTBDckZ4Zm93Q2dZSUtvWkl6ajBFQXdNRFp3QXdaQUl3UENzUUs0RFlpWllEUElhRGk1SEZLbmZ4WHg2QVNTVm1FUmZzeW5ZQmlYMlg2U0pSblpVODQvOURaZG5GdnZ4bUFqQk90NlFwQmxjNEovMER4dmtUQ3FwY2x2emlMNkJDQ1BuamRsSUIzUHUzQnhzUG15Z1VZN0lpMnpiZENkbGlpb3c9IgogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgInJhd0J5dGVzIjogIk1JSUI5ekNDQVh5Z0F3SUJBZ0lVQUxaTkFQRmR4SFB3amVEbG9Ed3lZQ2hBTy80d0NnWUlLb1pJemowRUF3TXdLakVWTUJNR0ExVUVDaE1NYzJsbmMzUnZjbVV1WkdWMk1SRXdEd1lEVlFRREV3aHphV2R6ZEc5eVpUQWVGdzB5TVRFd01EY3hNelUyTlRsYUZ3MHpNVEV3TURVeE16VTJOVGhhTUNveEZUQVRCZ05WQkFvVERITnBaM04wYjNKbExtUmxkakVSTUE4R0ExVUVBeE1JYzJsbmMzUnZjbVV3ZGpBUUJnY3Foa2pPUFFJQkJnVXJnUVFBSWdOaUFBVDdYZUZUNHJiM1BRR3dTNElhanRMazMvT2xucGdhbmdhQmNsWXBzWUJyNWkrNHluQjA3Y2ViM0xQME9JT1pkeGV4WDY5YzVpVnV5SlJRK0h6MDV5aStVRjN1QldBbEhwaVM1c2gwK0gyR0hFN1NYcmsxRUM1bTFUcjE5TDlnZzkyall6QmhNQTRHQTFVZER3RUIvd1FFQXdJQkJqQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01CMEdBMVVkRGdRV0JCUll3QjVma1VXbFpxbDZ6SkNoa3lMUUtzWEYrakFmQmdOVkhTTUVHREFXZ0JSWXdCNWZrVVdsWnFsNnpKQ2hreUxRS3NYRitqQUtCZ2dxaGtqT1BRUURBd05wQURCbUFqRUFqMW5IZVhacCsxM05XQk5hK0VEc0RQOEcxV1dnMXRDTVdQL1dIUHFwYVZvMGpoc3dlTkZaZ1NzMGVFN3dZSTRxQWpFQTJXQjlvdDk4c0lrb0YzdlpZZGQzL1Z0V0I1YjlUTk1lYTdJeC9zdEo1VGZjTExlQUJMRTRCTkpPc1E0dm5CSEoiCiAgICAgICAgICB9CiAgICAgICAgXQogICAgICB9LAogICAgICAidmFsaWRGb3IiOiB7CiAgICAgICAgInN0YXJ0IjogIjIwMjItMDQtMTNUMjA6MDY6MTUuMDAwWiIKICAgICAgfQogICAgfQogIF0sCiAgImN0bG9ncyI6IFsKICAgIHsKICAgICAgImJhc2VVcmwiOiAiaHR0cHM6Ly9jdGZlLnNpZ3N0b3JlLmRldi90ZXN0IiwKICAgICAgImhhc2hBbGdvcml0aG0iOiAiU0hBMl8yNTYiLAogICAgICAicHVibGljS2V5IjogewogICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUViZndSK1JKdWRYc2NnUkJScEtYMVhGRHkzUHl1ZER4ei9TZm5SaTFmVDhla3BmQmQyTzF1b3o3anIzWjhuS3p4QTY5RVVRK2VGQ0ZJM3pldWJQV1U3dz09IiwKICAgICAgICAia2V5RGV0YWlscyI6ICJQS0lYX0VDRFNBX1AyNTZfU0hBXzI1NiIsCiAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgInN0YXJ0IjogIjIwMjEtMDMtMTRUMDA6MDA6MDAuMDAwWiIsCiAgICAgICAgICAiZW5kIjogIjIwMjItMTAtMzFUMjM6NTk6NTkuOTk5WiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJsb2dJZCI6IHsKICAgICAgICAia2V5SWQiOiAiQ0dDUzhDaFMvMmhGMGRGcko0U2NSV2NZckJZOXd6alNiZWE4SWdZMmIzST0iCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJiYXNlVXJsIjogImh0dHBzOi8vY3RmZS5zaWdzdG9yZS5kZXYvMjAyMiIsCiAgICAgICJoYXNoQWxnb3JpdGhtIjogIlNIQTJfMjU2IiwKICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAicmF3Qnl0ZXMiOiAiTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFaVBTbEZpMENtRlRmRWpDVXFGOUh1Q0VjWVhOS0FhWWFsSUptQlo4eXllelBqVHFoeHJLQnBNbmFvY1Z0TEpCSTFlTTN1WG5RelFHQUpkSjRnczlGeXc9PSIsCiAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICJzdGFydCI6ICIyMDIyLTEwLTIwVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgfQogICAgICB9LAogICAgICAibG9nSWQiOiB7CiAgICAgICAgImtleUlkIjogIjNUMHdhc2JIRVRKakdSNGNtV2MzQXFKS1hyamVQSzMvaDRweWdDOHA3bzQ9IgogICAgICB9CiAgICB9CiAgXQp9Cg==","registry.npmjs.org%2Fkeys.json":"ewogICAgImtleXMiOiBbCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OmpsM2J3c3d1ODBQampva0NnaDBvMnc1YzJVNExoUUFFNTdnajljejFrekEiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTFPbGIzek1BRkZ4WEtIaUlrUU81Y0ozWWhsNWk2VVBwK0lodXRlQkpidUhjQTVVb2dLbzBFV3RsV3dXNktTYUtvVE5FWUw3SmxDUWlWbmtoQmt0VWdnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIxOTk5LTAxLTAxVDAwOjAwOjAwLjAwMFoiLAogICAgICAgICAgICAgICAgICAgICJlbmQiOiAiMjAyNS0wMS0yOVQwMDowMDowMC4wMDBaIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgICJrZXlJZCI6ICJTSEEyNTY6amwzYndzd3U4MFBqam9rQ2doMG8ydzVjMlU0TGhRQUU1N2dqOWN6MWt6QSIsCiAgICAgICAgICAgICJrZXlVc2FnZSI6ICJucG06YXR0ZXN0YXRpb25zIiwKICAgICAgICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUxT2xiM3pNQUZGeFhLSGlJa1FPNWNKM1lobDVpNlVQcCtJaHV0ZUJKYnVIY0E1VW9nS28wRVd0bFd3VzZLU2FLb1RORVlMN0psQ1FpVm5raEJrdFVnZz09IiwKICAgICAgICAgICAgICAgICJrZXlEZXRhaWxzIjogIlBLSVhfRUNEU0FfUDI1Nl9TSEFfMjU2IiwKICAgICAgICAgICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICAgICAgICAgICAic3RhcnQiOiAiMjAyMi0xMi0wMVQwMDowMDowMC4wMDBaIiwKICAgICAgICAgICAgICAgICAgICAiZW5kIjogIjIwMjUtMDEtMjlUMDA6MDA6MDAuMDAwWiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OkRoUTh3UjVBUEJ2RkhMRi8rVGMrQVl2UE9kVHBjSURxT2h4c0JIUndDN1UiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgImtleUlkIjogIlNIQTI1NjpEaFE4d1I1QVBCdkZITEYvK1RjK0FZdlBPZFRwY0lEcU9oeHNCSFJ3QzdVIiwKICAgICAgICAgICAgImtleVVzYWdlIjogIm5wbTphdHRlc3RhdGlvbnMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICBdCn0K"}}}});var Obs=H(xFe=>{"use strict";var Wbs=xFe&&xFe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xFe,"__esModule",{value:!0});xFe.TUFClient=void 0;var ege=Wbs(wt("fs")),Oze=Wbs(wt("path")),fLl=Lbs(),ILl=f9t(),hLl=Vbs(),bzr="targets",yzr=class{constructor(t){let r=new URL(t.mirrorURL),n=encodeURIComponent(r.host+r.pathname.replace(/\/$/,"")),a=Oze.default.join(t.cachePath,n);mLl(a),CLl({cachePath:a,mirrorURL:t.mirrorURL,tufRootPath:t.rootPath,forceInit:t.forceInit}),this.updater=_Ll({mirrorURL:t.mirrorURL,cachePath:a,forceCache:t.forceCache,retry:t.retry,timeout:t.timeout})}async refresh(){return this.updater.refresh()}getTarget(t){return(0,hLl.readTarget)(this.updater,t)}};xFe.TUFClient=yzr;function mLl(e){let t=Oze.default.join(e,bzr);ege.default.existsSync(e)||ege.default.mkdirSync(e,{recursive:!0}),ege.default.existsSync(t)||ege.default.mkdirSync(t)}function CLl({cachePath:e,mirrorURL:t,tufRootPath:r,forceInit:n}){let a=Oze.default.join(e,"root.json");if(!ege.default.existsSync(a)||n)if(r)ege.default.copyFileSync(r,a);else{let l=Pbs()[t];if(!l)throw new ILl.TUFError({code:"TUF_INIT_CACHE_ERROR",message:`No root.json found for mirror: ${t}`});ege.default.writeFileSync(a,Buffer.from(l["root.json"],"base64")),Object.entries(l.targets).forEach(([A,f])=>{ege.default.writeFileSync(Oze.default.join(e,bzr,A),Buffer.from(f,"base64"))})}}function _Ll(e){let t={fetchTimeout:e.timeout,fetchRetry:e.retry};return new fLl.Updater({metadataBaseUrl:e.mirrorURL,targetBaseUrl:`${e.mirrorURL}/targets`,metadataDir:e.cachePath,targetDir:Oze.default.join(e.cachePath,bzr),forceCache:e.forceCache,config:t})}});var f9t=H(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});dre.TUFError=dre.DEFAULT_MIRROR_URL=void 0;dre.getTrustedRoot=TLl;dre.initTUF=RLl;var yLl=y7e(),bLl=Bys(),ELl=Obs();dre.DEFAULT_MIRROR_URL="https://tuf-repo-cdn.sigstore.dev";var SLl="sigstore-js",vLl={retries:2},BLl=5e3,wLl="trusted_root.json";async function TLl(e={}){let r=await Mbs(e).getTarget(wLl);return yLl.TrustedRoot.fromJSON(JSON.parse(r))}async function RLl(e={}){let t=Mbs(e);return t.refresh().then(()=>t)}function Mbs(e){return new ELl.TUFClient({cachePath:e.cachePath||(0,bLl.appDataPath)(SLl),rootPath:e.rootPath,mirrorURL:e.mirrorURL||dre.DEFAULT_MIRROR_URL,retry:e.retry??vLl,timeout:e.timeout??BLl,forceCache:e.forceCache??!1,forceInit:e.forceInit??e.force??!1})}var NLl=_zr();Object.defineProperty(dre,"TUFError",{enumerable:!0,get:function(){return NLl.TUFError}})});var Hbs=H(I9t=>{"use strict";Object.defineProperty(I9t,"__esModule",{value:!0});I9t.DSSESignatureContent=void 0;var Mze=jV(),Ezr=class{constructor(t){this.env=t}compareDigest(t){return Mze.crypto.bufferEqual(t,Mze.crypto.digest("sha256",this.env.payload))}compareSignature(t){return Mze.crypto.bufferEqual(t,this.signature)}verifySignature(t){return Mze.crypto.verify(this.preAuthEncoding,t,this.signature)}get signature(){return this.env.signatures.length>0?this.env.signatures[0].sig:Buffer.from("")}get preAuthEncoding(){return Mze.dsse.preAuthEncoding(this.env.payloadType,this.env.payload)}};I9t.DSSESignatureContent=Ezr});var Ybs=H(h9t=>{"use strict";Object.defineProperty(h9t,"__esModule",{value:!0});h9t.MessageSignatureContent=void 0;var Szr=jV(),vzr=class{constructor(t,r){this.signature=t.signature,this.messageDigest=t.messageDigest.digest,this.artifact=r}compareSignature(t){return Szr.crypto.bufferEqual(t,this.signature)}compareDigest(t){return Szr.crypto.bufferEqual(t,this.messageDigest)}verifySignature(t){return Szr.crypto.verify(this.artifact,t,this.signature)}};h9t.MessageSignatureContent=vzr});var Xbs=H(m9t=>{"use strict";Object.defineProperty(m9t,"__esModule",{value:!0});m9t.toSignedEntity=xLl;m9t.signatureContent=Qbs;var Bzr=jV(),DLl=Hbs(),kLl=Ybs();function xLl(e,t){let{tlogEntries:r,timestampVerificationData:n}=e.verificationMaterial,a=[];for(let o of r)a.push({$case:"transparency-log",tlogEntry:o});for(let o of n?.rfc3161Timestamps??[])a.push({$case:"timestamp-authority",timestamp:Bzr.RFC3161Timestamp.parse(o.signedTimestamp)});return{signature:Qbs(e,t),key:GLl(e),tlogEntries:r,timestamps:a}}function Qbs(e,t){switch(e.content.$case){case"dsseEnvelope":return new DLl.DSSESignatureContent(e.content.dsseEnvelope);case"messageSignature":return new kLl.MessageSignatureContent(e.content.messageSignature,t)}}function GLl(e){switch(e.verificationMaterial.content.$case){case"publicKey":return{$case:"public-key",hint:e.verificationMaterial.content.publicKey.hint};case"x509CertificateChain":return{$case:"certificate",certificate:Bzr.X509Certificate.parse(e.verificationMaterial.content.x509CertificateChain.certificates[0].rawBytes)};case"certificate":return{$case:"certificate",certificate:Bzr.X509Certificate.parse(e.verificationMaterial.content.certificate.rawBytes)}}}});var Ix=H(GFe=>{"use strict";Object.defineProperty(GFe,"__esModule",{value:!0});GFe.PolicyError=GFe.VerificationError=void 0;var C9t=class extends Error{constructor({code:t,message:r,cause:n}){super(r),this.code=t,this.cause=n,this.name=this.constructor.name}},wzr=class extends C9t{};GFe.VerificationError=wzr;var Tzr=class extends C9t{};GFe.PolicyError=Tzr});var Jbs=H(_9t=>{"use strict";Object.defineProperty(_9t,"__esModule",{value:!0});_9t.filterCertAuthorities=FLl;_9t.filterTLogAuthorities=ZLl;function FLl(e,t){return e.filter(r=>r.validFor.start<=t&&r.validFor.end>=t)}function ZLl(e,t){return e.filter(r=>t.logID&&!r.logID.equals(t.logID)?!1:r.validFor.start<=t.targetDate&&t.targetDate<=r.validFor.end)}});var U0e=H(J0e=>{"use strict";Object.defineProperty(J0e,"__esModule",{value:!0});J0e.filterTLogAuthorities=J0e.filterCertAuthorities=void 0;J0e.toTrustMaterial=VLl;var Rzr=jV(),Hze=y7e(),LLl=Ix(),Nzr=new Date(0),Dzr=new Date(864e13),jbs=Jbs();Object.defineProperty(J0e,"filterCertAuthorities",{enumerable:!0,get:function(){return jbs.filterCertAuthorities}});Object.defineProperty(J0e,"filterTLogAuthorities",{enumerable:!0,get:function(){return jbs.filterTLogAuthorities}});function VLl(e,t){let r=typeof t=="function"?t:PLl(t);return{certificateAuthorities:e.certificateAuthorities.map(Kbs),timestampAuthorities:e.timestampAuthorities.map(Kbs),tlogs:e.tlogs.map(Ubs),ctlogs:e.ctlogs.map(Ubs),publicKey:r}}function Ubs(e){let t=e.publicKey.keyDetails,r=t===Hze.PublicKeyDetails.PKCS1_RSA_PKCS1V5||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V5||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256||t===Hze.PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256?"pkcs1":"spki";return{logID:e.logId.keyId,publicKey:Rzr.crypto.createPublicKey(e.publicKey.rawBytes,r),validFor:{start:e.publicKey.validFor?.start||Nzr,end:e.publicKey.validFor?.end||Dzr}}}function Kbs(e){return{certChain:e.certChain.certificates.map(t=>Rzr.X509Certificate.parse(t.rawBytes)),validFor:{start:e.validFor?.start||Nzr,end:e.validFor?.end||Dzr}}}function PLl(e){return t=>{let r=(e||{})[t];if(!r)throw new LLl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:Rzr.crypto.createPublicKey(r.rawBytes),validFor:n=>(r.validFor?.start||Nzr)<=n&&(r.validFor?.end||Dzr)>=n}}}});var kzr=H(Yze=>{"use strict";Object.defineProperty(Yze,"__esModule",{value:!0});Yze.CertificateChainVerifier=void 0;Yze.verifyCertificateChain=OLl;var tge=Ix(),WLl=U0e();function OLl(e,t,r){let n=(0,WLl.filterCertAuthorities)(r,e),a;for(let o of n)try{return new y9t({trustedCerts:o.certChain,untrustedCert:t,timestamp:e}).verify()}catch(l){a=l}throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"Failed to verify certificate chain",cause:a})}var y9t=class{constructor(t){this.untrustedCert=t.untrustedCert,this.trustedCerts=t.trustedCerts,this.localCerts=MLl([...t.trustedCerts,t.untrustedCert]),this.timestamp=t.timestamp}verify(){let t=this.sort();if(this.checkPath(t),!t.every(n=>n.validForDate(this.timestamp)))throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate is not valid or expired at the specified date"});return t}sort(){let t=this.untrustedCert,r=this.buildPaths(t);if(r=r.filter(a=>a.some(o=>this.trustedCerts.includes(o))),r.length===0)throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"no trusted certificate path found"});let n=r.reduce((a,o)=>a.length{if(n&&a.extSubjectKeyID){a.extSubjectKeyID.keyIdentifier.equals(n)&&r.push(a);return}a.subject.equals(t.issuer)&&r.push(a)}),r=r.filter(a=>{try{return t.verify(a)}catch{return!1}}),r)}checkPath(t){if(t.length<1)throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"certificate chain must contain at least one certificate"});if(!t.slice(1).every(n=>n.isCA))throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"intermediate certificate is not a CA"});for(let n=t.length-2;n>=0;n--)if(!t[n].issuer.equals(t[n+1].subject))throw new tge.VerificationError({code:"CERTIFICATE_ERROR",message:"incorrect certificate name chaining"});for(let n=0;n{"use strict";Object.defineProperty(xzr,"__esModule",{value:!0});xzr.verifySCTs=QLl;var b9t=jV(),HLl=Ix(),YLl=U0e();function QLl(e,t,r){let n,a=e.clone();for(let f=0;f{if(!(0,YLl.filterTLogAuthorities)(r,{logID:f.logID,targetDate:f.datetime}).some(b=>f.verify(o.buffer,b.publicKey)))throw new HLl.VerificationError({code:"CERTIFICATE_ERROR",message:"SCT verification failed"});return f.logID})}});var qbs=H(E9t=>{"use strict";Object.defineProperty(E9t,"__esModule",{value:!0});E9t.verifyPublicKey=qLl;E9t.verifyCertificate=$Ll;var XLl=jV(),JLl=Ix(),ULl=kzr(),KLl=zbs(),jLl="1.3.6.1.4.1.57264.1.1",zLl="1.3.6.1.4.1.57264.1.8";function qLl(e,t,r){let n=r.publicKey(e);return t.forEach(a=>{if(!n.validFor(a))throw new JLl.VerificationError({code:"PUBLIC_KEY_ERROR",message:`Public key is not valid for timestamp: ${a.toISOString()}`})}),{key:n.publicKey}}function $Ll(e,t,r){let n=[];return t.forEach(a=>{n=(0,ULl.verifyCertificateChain)(a,e,r.certificateAuthorities)}),{scts:(0,KLl.verifySCTs)(n[0],n[1],r.ctlogs),signer:e9l(n[0])}}function e9l(e){let t,r=e.extension(zLl);r?t=r.valueObj.subs?.[0]?.value.toString("ascii"):t=e.extension(jLl)?.value.toString("ascii");let n={extensions:{issuer:t},subjectAlternativeName:e.subjectAltName};return{key:XLl.crypto.createPublicKey(e.publicKey),identity:n}}});var eEs=H(S9t=>{"use strict";Object.defineProperty(S9t,"__esModule",{value:!0});S9t.verifySubjectAlternativeName=t9l;S9t.verifyExtensions=r9l;var $bs=Ix();function t9l(e,t){if(t===void 0||!t.match(e))throw new $bs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`certificate identity error - expected ${e}, got ${t}`})}function r9l(e,t={}){let r;for(r in e)if(t[r]!==e[r])throw new $bs.PolicyError({code:"UNTRUSTED_SIGNER_ERROR",message:`invalid certificate extension - expected ${r}=${e[r]}, got ${r}=${t[r]}`})}});var tEs=H(Vzr=>{"use strict";Object.defineProperty(Vzr,"__esModule",{value:!0});Vzr.verifyCheckpoint=s9l;var Fzr=jV(),FFe=Ix(),n9l=U0e(),Gzr=` - -`,i9l=/\u2014 (\S+) (\S+)\n/g;function s9l(e,t){let r=(0,n9l.filterTLogAuthorities)(t,{targetDate:new Date(Number(e.integratedTime)*1e3)}),n=e.inclusionProof,a=Zzr.fromString(n.checkpoint.envelope),o=Lzr.fromString(a.note);if(!o9l(a,r))throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid checkpoint signature"});if(!Fzr.crypto.bufferEqual(o.logHash,n.rootHash))throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"root hash mismatch"})}function o9l(e,t){let r=Buffer.from(e.note,"utf-8");return e.signatures.every(n=>{let a=t.find(o=>Fzr.crypto.bufferEqual(o.logID.subarray(0,4),n.keyHint));return a?Fzr.crypto.verify(r,a.publicKey,n.signature):!1})}var Zzr=class e{constructor(t,r){this.note=t,this.signatures=r}static fromString(t){if(!t.includes(Gzr))throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"missing checkpoint separator"});let r=t.indexOf(Gzr),n=t.slice(0,r+1),o=t.slice(r+Gzr.length).matchAll(i9l),l=Array.from(o,A=>{let[,f,I]=A,C=Buffer.from(I,"base64");if(C.length<5)throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"malformed checkpoint signature"});return{name:f,keyHint:C.subarray(0,4),signature:C.subarray(4)}});if(l.length===0)throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"no signatures found in checkpoint"});return new e(n,l)}},Lzr=class e{constructor(t,r,n,a){this.origin=t,this.logSize=r,this.logHash=n,this.rest=a}static fromString(t){let r=t.trimEnd().split(` -`);if(r.length<3)throw new FFe.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"too few lines in checkpoint header"});let n=r[0],a=BigInt(r[1]),o=Buffer.from(r[2],"base64"),l=r.slice(3);return new e(n,a,o,l)}}});var rEs=H(Mzr=>{"use strict";Object.defineProperty(Mzr,"__esModule",{value:!0});Mzr.verifyMerkleInclusion=l9l;var Ozr=jV(),Pzr=Ix(),a9l=Buffer.from([0]),c9l=Buffer.from([1]);function l9l(e){let t=e.inclusionProof,r=BigInt(t.logIndex),n=BigInt(t.treeSize);if(r<0n||r>=n)throw new Pzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:`invalid index: ${r}`});let{inner:a,border:o}=u9l(r,n);if(t.hashes.length!==a+o)throw new Pzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"invalid hash count"});let l=t.hashes.slice(0,a),A=t.hashes.slice(a),f=I9l(e.canonicalizedBody),I=A9l(g9l(f,l,r),A);if(!Ozr.crypto.bufferEqual(I,t.rootHash))throw new Pzr.VerificationError({code:"TLOG_INCLUSION_PROOF_ERROR",message:"calculated root hash does not match inclusion proof"})}function u9l(e,t){let r=d9l(e,t),n=p9l(e>>BigInt(r));return{inner:r,border:n}}function g9l(e,t,r){return t.reduce((n,a,o)=>r>>BigInt(o)&BigInt(1)?Wzr(a,n):Wzr(n,a),e)}function A9l(e,t){return t.reduce((r,n)=>Wzr(n,r),e)}function d9l(e,t){return f9l(e^t-BigInt(1))}function p9l(e){return e.toString(2).split("1").length-1}function f9l(e){return e===0n?0:e.toString(2).length}function Wzr(e,t){return Ozr.crypto.digest("sha256",c9l,e,t)}function I9l(e){return Ozr.crypto.digest("sha256",a9l,e)}});var iEs=H(Hzr=>{"use strict";Object.defineProperty(Hzr,"__esModule",{value:!0});Hzr.verifyTLogSET=C9l;var nEs=jV(),h9l=Ix(),m9l=U0e();function C9l(e,t){if(!(0,m9l.filterTLogAuthorities)(t,{logID:e.logId.keyId,targetDate:new Date(Number(e.integratedTime)*1e3)}).some(a=>{let o=_9l(e),l=Buffer.from(nEs.json.canonicalize(o),"utf8"),A=e.inclusionPromise.signedEntryTimestamp;return nEs.crypto.verify(l,a.publicKey,A)}))throw new h9l.VerificationError({code:"TLOG_INCLUSION_PROMISE_ERROR",message:"inclusion promise could not be verified"})}function _9l(e){let{integratedTime:t,logIndex:r,logId:n,canonicalizedBody:a}=e;return{body:a.toString("base64"),integratedTime:Number(t),logIndex:Number(r),logID:n.keyId.toString("hex")}}});var oEs=H(Qzr=>{"use strict";Object.defineProperty(Qzr,"__esModule",{value:!0});Qzr.verifyRFC3161Timestamp=E9l;var Yzr=jV(),sEs=Ix(),y9l=kzr(),b9l=U0e();function E9l(e,t,r){let n=e.signingTime;if(r=(0,b9l.filterCertAuthorities)(r,n),r=v9l(r,{serialNumber:e.signerSerialNumber,issuer:e.signerIssuer}),!r.some(o=>{try{return S9l(e,t,o),!0}catch{return!1}}))throw new sEs.VerificationError({code:"TIMESTAMP_ERROR",message:"timestamp could not be verified"})}function S9l(e,t,r){let[n,...a]=r.certChain,o=Yzr.crypto.createPublicKey(n.publicKey),l=e.signingTime;try{new y9l.CertificateChainVerifier({untrustedCert:n,trustedCerts:a,timestamp:l}).verify()}catch{throw new sEs.VerificationError({code:"TIMESTAMP_ERROR",message:"invalid certificate chain"})}e.verify(t,o)}function v9l(e,t){return e.filter(r=>r.certChain.length>0&&Yzr.crypto.bufferEqual(r.certChain[0].serialNumber,t.serialNumber)&&Yzr.crypto.bufferEqual(r.certChain[0].issuer,t.issuer))}});var aEs=H(v9t=>{"use strict";Object.defineProperty(v9t,"__esModule",{value:!0});v9t.verifyTSATimestamp=D9l;v9t.verifyTLogTimestamp=k9l;var B9l=Ix(),w9l=tEs(),T9l=rEs(),R9l=iEs(),N9l=oEs();function D9l(e,t,r){return(0,N9l.verifyRFC3161Timestamp)(e,t,r),{type:"timestamp-authority",logID:e.signerSerialNumber,timestamp:e.signingTime}}function k9l(e,t){let r=!1;if(x9l(e)&&((0,R9l.verifyTLogSET)(e,t),r=!0),G9l(e)&&((0,T9l.verifyMerkleInclusion)(e),(0,w9l.verifyCheckpoint)(e,t),r=!0),!r)throw new B9l.VerificationError({code:"TLOG_MISSING_INCLUSION_ERROR",message:"inclusion could not be verified"});return{type:"transparency-log",logID:e.logId.keyId,timestamp:new Date(Number(e.integratedTime)*1e3)}}function x9l(e){return e.inclusionPromise!==void 0}function G9l(e){return e.inclusionProof!==void 0}});var cEs=H(Xzr=>{"use strict";Object.defineProperty(Xzr,"__esModule",{value:!0});Xzr.verifyDSSETLogBody=F9l;var B9t=Ix();function F9l(e,t){switch(e.apiVersion){case"0.0.1":return Z9l(e,t);default:throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported dsse version: ${e.apiVersion}`})}}function Z9l(e,t){if(e.spec.signatures?.length!==1)throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=e.spec.signatures[0].signature;if(!t.compareSignature(Buffer.from(r,"base64")))throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new B9t.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}});var lEs=H(Uzr=>{"use strict";Object.defineProperty(Uzr,"__esModule",{value:!0});Uzr.verifyHashedRekordTLogBody=L9l;var Jzr=Ix();function L9l(e,t){switch(e.apiVersion){case"0.0.1":return V9l(e,t);default:throw new Jzr.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported hashedrekord version: ${e.apiVersion}`})}}function V9l(e,t){let r=e.spec.signature.content||"";if(!t.compareSignature(Buffer.from(r,"base64")))throw new Jzr.VerificationError({code:"TLOG_BODY_ERROR",message:"signature mismatch"});let n=e.spec.data.hash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new Jzr.VerificationError({code:"TLOG_BODY_ERROR",message:"digest mismatch"})}});var uEs=H(Kzr=>{"use strict";Object.defineProperty(Kzr,"__esModule",{value:!0});Kzr.verifyIntotoTLogBody=P9l;var w9t=Ix();function P9l(e,t){switch(e.apiVersion){case"0.0.2":return W9l(e,t);default:throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported intoto version: ${e.apiVersion}`})}}function W9l(e,t){if(e.spec.content.envelope.signatures?.length!==1)throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:"signature count mismatch"});let r=O9l(e.spec.content.envelope.signatures[0].sig);if(!t.compareSignature(Buffer.from(r,"base64")))throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:"tlog entry signature mismatch"});let n=e.spec.content.payloadHash?.value||"";if(!t.compareDigest(Buffer.from(n,"hex")))throw new w9t.VerificationError({code:"TLOG_BODY_ERROR",message:"DSSE payload hash mismatch"})}function O9l(e){return Buffer.from(e,"base64").toString("utf-8")}});var AEs=H(jzr=>{"use strict";Object.defineProperty(jzr,"__esModule",{value:!0});jzr.verifyTLogBody=Q9l;var gEs=Ix(),M9l=cEs(),H9l=lEs(),Y9l=uEs();function Q9l(e,t){let{kind:r,version:n}=e.kindVersion,a=JSON.parse(e.canonicalizedBody.toString("utf8"));if(r!==a.kind||n!==a.apiVersion)throw new gEs.VerificationError({code:"TLOG_BODY_ERROR",message:`kind/version mismatch - expected: ${r}/${n}, received: ${a.kind}/${a.apiVersion}`});switch(a.kind){case"dsse":return(0,M9l.verifyDSSETLogBody)(a,t);case"intoto":return(0,Y9l.verifyIntotoTLogBody)(a,t);case"hashedrekord":return(0,H9l.verifyHashedRekordTLogBody)(a,t);default:throw new gEs.VerificationError({code:"TLOG_BODY_ERROR",message:`unsupported kind: ${r}`})}}});var hEs=H(T9t=>{"use strict";Object.defineProperty(T9t,"__esModule",{value:!0});T9t.Verifier=void 0;var X9l=wt("util"),ZFe=Ix(),dEs=qbs(),pEs=eEs(),fEs=aEs(),J9l=AEs(),zzr=class{constructor(t,r={}){this.trustMaterial=t,this.options={ctlogThreshold:r.ctlogThreshold??1,tlogThreshold:r.tlogThreshold??1,tsaThreshold:r.tsaThreshold??0}}verify(t,r){let n=this.verifyTimestamps(t),a=this.verifySigningKey(t,n);return this.verifyTLogs(t),this.verifySignature(t,a),r&&this.verifyPolicy(r,a.identity||{}),a}verifyTimestamps(t){let r=0,n=0,a=t.timestamps.map(o=>{switch(o.$case){case"timestamp-authority":return n++,(0,fEs.verifyTSATimestamp)(o.timestamp,t.signature.signature,this.trustMaterial.timestampAuthorities);case"transparency-log":return r++,(0,fEs.verifyTLogTimestamp)(o.tlogEntry,this.trustMaterial.tlogs)}});if(IEs(a))throw new ZFe.VerificationError({code:"TIMESTAMP_ERROR",message:"duplicate timestamp"});if(ro.timestamp)}verifySigningKey({key:t},r){switch(t.$case){case"public-key":return(0,dEs.verifyPublicKey)(t.hint,r,this.trustMaterial);case"certificate":{let n=(0,dEs.verifyCertificate)(t.certificate,r,this.trustMaterial);if(IEs(n.scts))throw new ZFe.VerificationError({code:"CERTIFICATE_ERROR",message:"duplicate SCT"});if(n.scts.length(0,J9l.verifyTLogBody)(n,t))}verifySignature(t,r){if(!t.signature.verifySignature(r.key))throw new ZFe.VerificationError({code:"SIGNATURE_ERROR",message:"signature verification failed"})}verifyPolicy(t,r){t.subjectAlternativeName&&(0,pEs.verifySubjectAlternativeName)(t.subjectAlternativeName,r.subjectAlternativeName),t.extensions&&(0,pEs.verifyExtensions)(t.extensions,r.extensions)}};T9t.Verifier=zzr;function IEs(e){for(let t=0;t{"use strict";Object.defineProperty($H,"__esModule",{value:!0});$H.Verifier=$H.toTrustMaterial=$H.VerificationError=$H.PolicyError=$H.toSignedEntity=void 0;var U9l=Xbs();Object.defineProperty($H,"toSignedEntity",{enumerable:!0,get:function(){return U9l.toSignedEntity}});var mEs=Ix();Object.defineProperty($H,"PolicyError",{enumerable:!0,get:function(){return mEs.PolicyError}});Object.defineProperty($H,"VerificationError",{enumerable:!0,get:function(){return mEs.VerificationError}});var K9l=U0e();Object.defineProperty($H,"toTrustMaterial",{enumerable:!0,get:function(){return K9l.toTrustMaterial}});var j9l=hEs();Object.defineProperty($H,"Verifier",{enumerable:!0,get:function(){return j9l.Verifier}})});var CEs=H(mL=>{"use strict";Object.defineProperty(mL,"__esModule",{value:!0});mL.DEFAULT_TIMEOUT=mL.DEFAULT_RETRY=void 0;mL.createBundleBuilder=$9l;mL.createKeyFinder=eVl;mL.createVerificationPolicy=tVl;var z9l=jV(),LFe=u7r(),q9l=R9t();mL.DEFAULT_RETRY={retries:2};mL.DEFAULT_TIMEOUT=5e3;function $9l(e,t){let r={signer:rVl(t),witnesses:iVl(t)};switch(e){case"messageSignature":return new LFe.MessageSignatureBundleBuilder(r);case"dsseEnvelope":return new LFe.DSSEBundleBuilder({...r,certificateChain:t.legacyCompatibility})}}function eVl(e){return t=>{let r=e(t);if(!r)throw new q9l.VerificationError({code:"PUBLIC_KEY_ERROR",message:`key not found: ${t}`});return{publicKey:z9l.crypto.createPublicKey(r),validFor:()=>!0}}}function tVl(e){let t={},r=e.certificateIdentityEmail||e.certificateIdentityURI;return r&&(t.subjectAlternativeName=r),e.certificateIssuer&&(t.extensions={issuer:e.certificateIssuer}),t}function rVl(e){return new LFe.FulcioSigner({fulcioBaseURL:e.fulcioURL,identityProvider:e.identityProvider||nVl(e),retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})}function nVl(e){let t=e.identityToken;return t?{getToken:()=>Promise.resolve(t)}:new LFe.CIContextProvider("sigstore")}function iVl(e){let t=[];return sVl(e)&&t.push(new LFe.RekorWitness({rekorBaseURL:e.rekorURL,entryType:e.legacyCompatibility?"intoto":"dsse",fetchOnConflict:!1,retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})),oVl(e)&&t.push(new LFe.TSAWitness({tsaBaseURL:e.tsaServerURL,retry:e.retry??mL.DEFAULT_RETRY,timeout:e.timeout??mL.DEFAULT_TIMEOUT})),t}function sVl(e){return e.tlogUpload!==!1}function oVl(e){return e.tsaServerURL!==void 0}});var bEs=H(eY=>{"use strict";var aVl=eY&&eY.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),cVl=eY&&eY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),_Es=eY&&eY.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(n[n.length]=a);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),a=0;aa.verify(e,n))}async function yEs(e={}){let t=await lVl.getTrustedRoot({mirrorURL:e.tufMirrorURL,rootPath:e.tufRootPath,cachePath:e.tufCachePath,forceCache:e.tufForceCache,retry:e.retry??VFe.DEFAULT_RETRY,timeout:e.timeout??VFe.DEFAULT_TIMEOUT}),r=e.keySelector?VFe.createKeyFinder(e.keySelector):void 0,n=(0,qzr.toTrustMaterial)(t,r),a={ctlogThreshold:e.ctLogThreshold,tlogThreshold:e.tlogThreshold},o=new qzr.Verifier(n,a),l=VFe.createVerificationPolicy(e);return{verify:(A,f)=>{let I=(0,$zr.bundleFromJSON)(A),C=(0,qzr.toSignedEntity)(I,f);o.verify(C,l)}}}});var SEs=H(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.verify=O2.sign=O2.createVerifier=O2.attest=O2.VerificationError=O2.PolicyError=O2.TUFError=O2.InternalError=O2.DEFAULT_REKOR_URL=O2.DEFAULT_FULCIO_URL=O2.ValidationError=void 0;var dVl=E7e();Object.defineProperty(O2,"ValidationError",{enumerable:!0,get:function(){return dVl.ValidationError}});var eqr=u7r();Object.defineProperty(O2,"DEFAULT_FULCIO_URL",{enumerable:!0,get:function(){return eqr.DEFAULT_FULCIO_URL}});Object.defineProperty(O2,"DEFAULT_REKOR_URL",{enumerable:!0,get:function(){return eqr.DEFAULT_REKOR_URL}});Object.defineProperty(O2,"InternalError",{enumerable:!0,get:function(){return eqr.InternalError}});var pVl=f9t();Object.defineProperty(O2,"TUFError",{enumerable:!0,get:function(){return pVl.TUFError}});var EEs=R9t();Object.defineProperty(O2,"PolicyError",{enumerable:!0,get:function(){return EEs.PolicyError}});Object.defineProperty(O2,"VerificationError",{enumerable:!0,get:function(){return EEs.VerificationError}});var N9t=bEs();Object.defineProperty(O2,"attest",{enumerable:!0,get:function(){return N9t.attest}});Object.defineProperty(O2,"createVerifier",{enumerable:!0,get:function(){return N9t.createVerifier}});Object.defineProperty(O2,"sign",{enumerable:!0,get:function(){return N9t.sign}});Object.defineProperty(O2,"verify",{enumerable:!0,get:function(){return N9t.verify}})});var vEs=H(D9t=>{"use strict";Object.defineProperty(D9t,"__esModule",{value:!0});D9t.generateProvenance=void 0;var fVl=(Pa(),vi(Va)),PFe=Sn(),IVl=fVl.__importStar(SEs()),{env:zc}=process,hVl="application/vnd.in-toto+json",mVl="https://in-toto.io/Statement/v0.1",CVl="https://in-toto.io/Statement/v1",_Vl="https://slsa.dev/provenance/v0.2",yVl="https://slsa.dev/provenance/v1",bVl="https://github.com/actions/runner",EVl="https://slsa-framework.github.io/github-actions-buildtypes/workflow/v1",SVl="https://github.com/npm/cli/gitlab",vVl="v0alpha1",BVl=async(e,t)=>{let r;if(zc.GITHUB_ACTIONS){if(!zc.ACTIONS_ID_TOKEN_REQUEST_URL)throw new PFe.ReportError(PFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,'Provenance generation in GitHub Actions requires "write" access to the "id-token" permission');let n=(zc.GITHUB_WORKFLOW_REF||"").replace(`${zc.GITHUB_REPOSITORY}/`,""),a=n.indexOf("@"),o=n.slice(0,a),l=n.slice(a+1);r={_type:CVl,subject:e,predicateType:yVl,predicate:{buildDefinition:{buildType:EVl,externalParameters:{workflow:{ref:l,repository:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}`,path:o}},internalParameters:{github:{event_name:zc.GITHUB_EVENT_NAME,repository_id:zc.GITHUB_REPOSITORY_ID,repository_owner_id:zc.GITHUB_REPOSITORY_OWNER_ID}},resolvedDependencies:[{uri:`git+${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}@${zc.GITHUB_REF}`,digest:{gitCommit:zc.GITHUB_SHA}}]},runDetails:{builder:{id:`${bVl}/${zc.RUNNER_ENVIRONMENT}`},metadata:{invocationId:`${zc.GITHUB_SERVER_URL}/${zc.GITHUB_REPOSITORY}/actions/runs/${zc.GITHUB_RUN_ID}/attempts/${zc.GITHUB_RUN_ATTEMPT}`}}}}}else if(zc.GITLAB_CI){if(!zc.SIGSTORE_ID_TOKEN)throw new PFe.ReportError(PFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,`Provenance generation in GitLab CI requires "SIGSTORE_ID_TOKEN" with "sigstore" audience to be present in "id_tokens". For more info see: -https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html`);r={_type:mVl,subject:e,predicateType:_Vl,predicate:{buildType:`${SVl}/${vVl}`,builder:{id:`${zc.CI_PROJECT_URL}/-/runners/${zc.CI_RUNNER_ID}`},invocation:{configSource:{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA},entryPoint:zc.CI_JOB_NAME},parameters:{CI:zc.CI,CI_API_GRAPHQL_URL:zc.CI_API_GRAPHQL_URL,CI_API_V4_URL:zc.CI_API_V4_URL,CI_BUILD_BEFORE_SHA:zc.CI_BUILD_BEFORE_SHA,CI_BUILD_ID:zc.CI_BUILD_ID,CI_BUILD_NAME:zc.CI_BUILD_NAME,CI_BUILD_REF:zc.CI_BUILD_REF,CI_BUILD_REF_NAME:zc.CI_BUILD_REF_NAME,CI_BUILD_REF_SLUG:zc.CI_BUILD_REF_SLUG,CI_BUILD_STAGE:zc.CI_BUILD_STAGE,CI_COMMIT_BEFORE_SHA:zc.CI_COMMIT_BEFORE_SHA,CI_COMMIT_BRANCH:zc.CI_COMMIT_BRANCH,CI_COMMIT_REF_NAME:zc.CI_COMMIT_REF_NAME,CI_COMMIT_REF_PROTECTED:zc.CI_COMMIT_REF_PROTECTED,CI_COMMIT_REF_SLUG:zc.CI_COMMIT_REF_SLUG,CI_COMMIT_SHA:zc.CI_COMMIT_SHA,CI_COMMIT_SHORT_SHA:zc.CI_COMMIT_SHORT_SHA,CI_COMMIT_TIMESTAMP:zc.CI_COMMIT_TIMESTAMP,CI_COMMIT_TITLE:zc.CI_COMMIT_TITLE,CI_CONFIG_PATH:zc.CI_CONFIG_PATH,CI_DEFAULT_BRANCH:zc.CI_DEFAULT_BRANCH,CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX:zc.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,CI_DEPENDENCY_PROXY_SERVER:zc.CI_DEPENDENCY_PROXY_SERVER,CI_DEPENDENCY_PROXY_USER:zc.CI_DEPENDENCY_PROXY_USER,CI_JOB_ID:zc.CI_JOB_ID,CI_JOB_NAME:zc.CI_JOB_NAME,CI_JOB_NAME_SLUG:zc.CI_JOB_NAME_SLUG,CI_JOB_STAGE:zc.CI_JOB_STAGE,CI_JOB_STARTED_AT:zc.CI_JOB_STARTED_AT,CI_JOB_URL:zc.CI_JOB_URL,CI_NODE_TOTAL:zc.CI_NODE_TOTAL,CI_PAGES_DOMAIN:zc.CI_PAGES_DOMAIN,CI_PAGES_URL:zc.CI_PAGES_URL,CI_PIPELINE_CREATED_AT:zc.CI_PIPELINE_CREATED_AT,CI_PIPELINE_ID:zc.CI_PIPELINE_ID,CI_PIPELINE_IID:zc.CI_PIPELINE_IID,CI_PIPELINE_SOURCE:zc.CI_PIPELINE_SOURCE,CI_PIPELINE_URL:zc.CI_PIPELINE_URL,CI_PROJECT_CLASSIFICATION_LABEL:zc.CI_PROJECT_CLASSIFICATION_LABEL,CI_PROJECT_DESCRIPTION:zc.CI_PROJECT_DESCRIPTION,CI_PROJECT_ID:zc.CI_PROJECT_ID,CI_PROJECT_NAME:zc.CI_PROJECT_NAME,CI_PROJECT_NAMESPACE:zc.CI_PROJECT_NAMESPACE,CI_PROJECT_NAMESPACE_ID:zc.CI_PROJECT_NAMESPACE_ID,CI_PROJECT_PATH:zc.CI_PROJECT_PATH,CI_PROJECT_PATH_SLUG:zc.CI_PROJECT_PATH_SLUG,CI_PROJECT_REPOSITORY_LANGUAGES:zc.CI_PROJECT_REPOSITORY_LANGUAGES,CI_PROJECT_ROOT_NAMESPACE:zc.CI_PROJECT_ROOT_NAMESPACE,CI_PROJECT_TITLE:zc.CI_PROJECT_TITLE,CI_PROJECT_URL:zc.CI_PROJECT_URL,CI_PROJECT_VISIBILITY:zc.CI_PROJECT_VISIBILITY,CI_REGISTRY:zc.CI_REGISTRY,CI_REGISTRY_IMAGE:zc.CI_REGISTRY_IMAGE,CI_REGISTRY_USER:zc.CI_REGISTRY_USER,CI_RUNNER_DESCRIPTION:zc.CI_RUNNER_DESCRIPTION,CI_RUNNER_ID:zc.CI_RUNNER_ID,CI_RUNNER_TAGS:zc.CI_RUNNER_TAGS,CI_SERVER_HOST:zc.CI_SERVER_HOST,CI_SERVER_NAME:zc.CI_SERVER_NAME,CI_SERVER_PORT:zc.CI_SERVER_PORT,CI_SERVER_PROTOCOL:zc.CI_SERVER_PROTOCOL,CI_SERVER_REVISION:zc.CI_SERVER_REVISION,CI_SERVER_SHELL_SSH_HOST:zc.CI_SERVER_SHELL_SSH_HOST,CI_SERVER_SHELL_SSH_PORT:zc.CI_SERVER_SHELL_SSH_PORT,CI_SERVER_URL:zc.CI_SERVER_URL,CI_SERVER_VERSION:zc.CI_SERVER_VERSION,CI_SERVER_VERSION_MAJOR:zc.CI_SERVER_VERSION_MAJOR,CI_SERVER_VERSION_MINOR:zc.CI_SERVER_VERSION_MINOR,CI_SERVER_VERSION_PATCH:zc.CI_SERVER_VERSION_PATCH,CI_TEMPLATE_REGISTRY_HOST:zc.CI_TEMPLATE_REGISTRY_HOST,GITLAB_CI:zc.GITLAB_CI,GITLAB_FEATURES:zc.GITLAB_FEATURES,GITLAB_USER_ID:zc.GITLAB_USER_ID,GITLAB_USER_LOGIN:zc.GITLAB_USER_LOGIN,RUNNER_GENERATE_ARTIFACTS_METADATA:zc.RUNNER_GENERATE_ARTIFACTS_METADATA},environment:{name:zc.CI_RUNNER_DESCRIPTION,architecture:zc.CI_RUNNER_EXECUTABLE_ARCH,server:zc.CI_SERVER_URL,project:zc.CI_PROJECT_PATH,job:{id:zc.CI_JOB_ID},pipeline:{id:zc.CI_PIPELINE_ID,ref:zc.CI_CONFIG_PATH}}},metadata:{buildInvocationId:`${zc.CI_JOB_URL}`,completeness:{parameters:!0,environment:!0,materials:!1},reproducible:!1},materials:[{uri:`git+${zc.CI_PROJECT_URL}`,digest:{sha1:zc.CI_COMMIT_SHA}}]}}}else throw new PFe.ReportError(PFe.MessageName.INVALID_PROVENANCE_ENVIRONMENT,"Provenance generation is only supported in GitHub Actions and GitLab CI");return IVl.attest(Buffer.from(JSON.stringify(r)),hVl,t)};D9t.generateProvenance=BVl});var NEs=H(WFe=>{"use strict";Object.defineProperty(WFe,"__esModule",{value:!0});WFe.makePublishBody=xVl;WFe.getGitHead=GVl;WFe.getPublishAccess=TEs;WFe.getReadmeContent=REs;var wVl=(Pa(),vi(Va)),TVl=Sn(),wEs=Sn(),BEs=ro(),RVl=$he(),NVl=wVl.__importDefault(Jte()),DVl=c0e(),kVl=vEs();async function xVl(e,t,{access:r,tag:n,registry:a,gitHead:o,provenance:l}){let A=e.manifest.name,f=e.manifest.version,I=wEs.structUtils.stringifyIdent(A),C=NVl.default.fromData(t,{algorithms:["sha1","sha512"]}),b=r??TEs(e,A),E=await REs(e),N=await RVl.packUtils.genPackageManifest(e),B=`${I}-${f}.tgz`,F=new URL(`${(0,DVl.normalizeRegistry)(a)}/${I}/-/${B}`),Q={[B]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}};if(l){let X={name:`pkg:npm/${I.replace(/^@/,"%40")}@${f}`,digest:{sha512:C.sha512[0].hexDigest()}},ae=await(0,kVl.generateProvenance)([X]),ne=JSON.stringify(ae);Q[`${I}-${f}.sigstore`]={content_type:ae.mediaType,data:ne,length:ne.length}}return{_id:I,_attachments:Q,name:I,access:b,"dist-tags":{[n]:f},versions:{[f]:{...N,_id:`${I}@${f}`,name:I,version:f,gitHead:o,dist:{shasum:C.sha1[0].hexDigest(),integrity:C.sha512[0].toString(),tarball:F.toString()}}},readme:E}}async function GVl(e){try{let{stdout:t}=await TVl.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}function TEs(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}async function REs(e){let t=BEs.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${wEs.structUtils.stringifyIdent(r)} -`;try{a=await BEs.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}});var sJ=H(QR=>{"use strict";Object.defineProperty(QR,"__esModule",{value:!0});QR.NpmTagResolver=QR.NpmSemverResolver=QR.NpmSemverFetcher=QR.NpmRemapResolver=QR.NpmHttpFetcher=QR.npmPublishUtils=QR.npmHttpUtils=QR.npmConfigUtils=void 0;var rqr=(Pa(),vi(Va)),jO=Sn(),kEs=nps();Object.defineProperty(QR,"NpmHttpFetcher",{enumerable:!0,get:function(){return kEs.NpmHttpFetcher}});var xEs=ips();Object.defineProperty(QR,"NpmRemapResolver",{enumerable:!0,get:function(){return xEs.NpmRemapResolver}});var GEs=PGt();Object.defineProperty(QR,"NpmSemverFetcher",{enumerable:!0,get:function(){return GEs.NpmSemverFetcher}});var FEs=ups();Object.defineProperty(QR,"NpmSemverResolver",{enumerable:!0,get:function(){return FEs.NpmSemverResolver}});var ZEs=dps();Object.defineProperty(QR,"NpmTagResolver",{enumerable:!0,get:function(){return ZEs.NpmTagResolver}});var LEs=rqr.__importStar(c0e());QR.npmConfigUtils=LEs;var FVl=rqr.__importStar(SGe());QR.npmHttpUtils=FVl;var ZVl=rqr.__importStar(NEs());QR.npmPublishUtils=ZVl;var tqr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:jO.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:jO.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:jO.SettingsType.SECRET,default:null}},DEs={npmAuditRegistry:{description:"Registry to query for audit reports",type:jO.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:jO.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:jO.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},LVl={npmMinimalAgeGate:{description:"Minimum age of a package version according to the publish date on the npm registry to be considered for installation",type:jO.SettingsType.DURATION,unit:jO.DurationUnit.MINUTES,default:"0m"},npmPreapprovedPackages:{description:"Array of package descriptors or package name glob patterns to exclude from the minimum release age check",type:jO.SettingsType.STRING,isArray:!0,default:[]}},VVl={configuration:{...tqr,...DEs,...LVl,npmScopes:{description:"Settings per package scope",type:jO.SettingsType.MAP,valueDefinition:{description:"",type:jO.SettingsType.SHAPE,properties:{...tqr,...DEs}}},npmRegistries:{description:"Settings per registry",type:jO.SettingsType.MAP,normalizeKeys:LEs.normalizeRegistry,valueDefinition:{description:"",type:jO.SettingsType.SHAPE,properties:{...tqr}}}},fetchers:[kEs.NpmHttpFetcher,GEs.NpmSemverFetcher],resolvers:[xEs.NpmRemapResolver,FEs.NpmSemverResolver,ZEs.NpmTagResolver]};QR.default=VVl});var k9t=H(OFe=>{"use strict";Object.defineProperty(OFe,"__esModule",{value:!0});OFe.Severity=OFe.Environment=void 0;var VEs;(function(e){e.All="all",e.Production="production",e.Development="development"})(VEs||(OFe.Environment=VEs={}));var PEs;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(PEs||(OFe.Severity=PEs={}))});var nqr=H(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.allSeverities=void 0;oJ.getSeverityInclusions=WVl;oJ.getReportTree=OVl;oJ.getTopLevelDependencies=MVl;oJ.getPackages=HVl;var WEs=(Pa(),vi(Va)),QE=Sn(),PVl=WEs.__importDefault(UC()),pre=WEs.__importStar(k9t());oJ.allSeverities=[pre.Severity.Info,pre.Severity.Low,pre.Severity.Moderate,pre.Severity.High,pre.Severity.Critical];function WVl(e){if(typeof e>"u")return new Set(oJ.allSeverities);let t=oJ.allSeverities.indexOf(e),r=oJ.allSeverities.slice(t);return new Set(r)}function OVl(e){let t={},r={children:t};for(let[n,a]of QE.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of QE.miscUtils.sortMap(a,l=>`${l.id}`))t[`${n}/${o.id}`]={value:QE.formatUtils.tuple(QE.formatUtils.Type.IDENT,QE.structUtils.parseIdent(n)),children:{ID:typeof o.id<"u"&&{label:"ID",value:QE.formatUtils.tuple(QE.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:QE.formatUtils.tuple(QE.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:QE.formatUtils.tuple(QE.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:QE.formatUtils.tuple(QE.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:QE.formatUtils.tuple(QE.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort(PVl.default.compare).map(l=>({value:QE.formatUtils.tuple(QE.formatUtils.Type.REFERENCE,l)}))},Dependents:{label:"Dependents",children:QE.miscUtils.sortMap(o.dependents,l=>QE.structUtils.stringifyLocator(l)).map(l=>({value:QE.formatUtils.tuple(QE.formatUtils.Type.LOCATOR,l)}))}}};return r}function MVl(e,t,{all:r,environment:n}){let a=[],o=r?e.workspaces:[t],l=[pre.Environment.All,pre.Environment.Production].includes(n),A=[pre.Environment.All,pre.Environment.Development].includes(n);for(let f of o)for(let I of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(I.identHash)?!A:!l)||a.push({workspace:f,dependency:I});return a}function HVl(e,t,{recursive:r}){let n=new Map,a=new Set,o=[],l=e.configuration.makeResolver(),A={project:e,resolver:l},f=(I,C)=>{let b=e.storedResolutions.get(C.descriptorHash);if(typeof b>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(b))a.add(b);else return;let E=e.storedPackages.get(b);if(typeof E>"u")throw new Error("Assertion failed: The package should have been registered");let N=QE.structUtils.ensureDevirtualizedDescriptor(C);if(l.supportsDescriptor(N,A)){let F=l.getResolutionDependencies(N,A);if(Object.keys(F).length>0)for(let Q of Object.values(F))f(I,Q)}if(QE.structUtils.ensureDevirtualizedLocator(E).reference.startsWith("npm:")&&E.version!==null){let F=QE.structUtils.stringifyIdent(E),Q=QE.miscUtils.getMapWithDefault(n,F);QE.miscUtils.getArrayWithDefault(Q,E.version).push(I)}if(r)for(let F of E.dependencies.values())o.push([E,F])};for(let{workspace:I,dependency:C}of t)o.push([I.anchoredLocator,C]);for(;o.length>0;){let[I,C]=o.shift();f(I,C)}return n}});var YEs=H(iqr=>{"use strict";Object.defineProperty(iqr,"__esModule",{value:!0});var G9t=(Pa(),vi(Va)),OEs=el(),H6=Sn(),YVl=Sn(),x9t=sJ(),fre=($c(),vi(rg)),MEs=G9t.__importDefault(Ek()),HEs=G9t.__importStar((CZ(),vi(mZ))),Qze=G9t.__importStar(k9t()),Xze=G9t.__importStar(nqr()),Jze=class extends OEs.BaseCommand{constructor(){super(...arguments),this.all=fre.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=fre.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=fre.Option.String("--environment",Qze.Environment.All,{description:"Which environments to cover",validator:HEs.isEnum(Qze.Environment)}),this.json=fre.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=fre.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=fre.Option.String("--severity",Qze.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:HEs.isEnum(Qze.Severity)}),this.excludes=fre.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=fre.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await H6.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await H6.Project.find(t,this.context.cwd);if(!n)throw new OEs.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=Xze.getTopLevelDependencies(r,n,{all:this.all,environment:this.environment}),o=Xze.getPackages(r,a,{recursive:this.recursive}),l=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),A=Object.create(null);for(let[F,Q]of o)l.some(X=>MEs.default.isMatch(F,X))||(A[F]=[...Q.keys()]);let f=x9t.npmConfigUtils.getAuditRegistry({configuration:t}),I,C=await H6.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let F=x9t.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",A,{authType:x9t.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),Q=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(A),async([ae,ne])=>{let ce=await x9t.npmHttpUtils.getPackageMetadata(YVl.structUtils.parseIdent(ae),{project:r});return H6.miscUtils.mapAndFilter(ne,fe=>{let{deprecated:ue}=ce.versions[fe];return ue?[ae,fe,ue]:H6.miscUtils.mapAndFilter.skip})})),X=await F;for(let[ae,ne,ce]of Q.flat(1))Object.hasOwn(X,ae)&&X[ae].some(fe=>H6.semverUtils.satisfiesWithPrereleases(ne,fe.vulnerable_versions))||(X[ae]??=[],X[ae].push({id:`${ae} (deprecation)`,title:(typeof ce=="string"?ce:"").trim()||"This package has been deprecated.",severity:Qze.Severity.Moderate,vulnerable_versions:ne}));I=X});if(C.hasErrors())return C.exitCode();let b=Xze.getSeverityInclusions(this.severity),E=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),N=Object.create(null);for(let[F,Q]of Object.entries(I)){let X=Q.filter(ae=>!MEs.default.isMatch(`${ae.id}`,E)&&b.has(ae.severity));X.length>0&&(N[F]=X.map(ae=>{let ne=o.get(F);if(typeof ne>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ce=[...ne.keys()].filter(ue=>H6.semverUtils.satisfiesWithPrereleases(ue,ae.vulnerable_versions)),fe=new Map;for(let ue of ce)for(let de of ne.get(ue))fe.set(de.locatorHash,de);return{...ae,versions:ce,dependents:[...fe.values()]}}))}let B=Object.keys(N).length>0;return B?(H6.treeUtils.emitTree(Xze.getReportTree(N),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await H6.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async F=>{F.reportInfo(H6.MessageName.EXCEPTION,"No audit suggestions")}),B?1:0)}};Jze.paths=[["npm","audit"]];Jze.usage=fre.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` - This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). - - For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${Xze.allSeverities.map(e=>`\`${e}\``).join(", ")}. - - If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. - - If certain packages produce false positives for a particular environment, the \`--exclude\` flag can be used to exclude any number of packages from the audit. This can also be set in the configuration file with the \`npmAuditExcludePackages\` option. - - If particular advisories are needed to be ignored, the \`--ignore\` flag can be used with Advisory ID's to ignore any number of advisories in the audit report. This can also be set in the configuration file with the \`npmAuditIgnoreAdvisories\` option. - - To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why package\` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});iqr.default=Jze});var JEs=H(cqr=>{"use strict";Object.defineProperty(cqr,"__esModule",{value:!0});var QVl=(Pa(),vi(Va)),XVl=el(),aJ=Sn(),Uze=Sn(),sqr=ro(),oqr=sJ(),Kze=($c(),vi(rg)),QEs=QVl.__importDefault(UC()),XEs=wt("util"),jze=class extends XVl.BaseCommand{constructor(){super(...arguments),this.fields=Kze.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=Kze.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=Kze.Option.Rest()}async execute(){let t=await aJ.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await aJ.Project.find(t,this.context.cwd),n=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,l=await Uze.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async A=>{for(let f of this.packages){let I;if(f==="."){let ne=r.topLevelWorkspace;if(!ne.manifest.name)throw new Kze.UsageError(`Missing ${aJ.formatUtils.pretty(t,"name",aJ.formatUtils.Type.CODE)} field in ${sqr.npath.fromPortablePath(sqr.ppath.join(ne.cwd,sqr.Filename.manifest))}`);I=aJ.structUtils.makeDescriptor(ne.manifest.name,"unknown")}else I=aJ.structUtils.parseDescriptor(f);let C=oqr.npmHttpUtils.getIdentUrl(I),b=aqr(await oqr.npmHttpUtils.get(C,{configuration:t,ident:I,jsonResponse:!0,customErrorMessage:oqr.npmHttpUtils.customPackageError})),E=Object.keys(b.versions).sort(QEs.default.compareLoose),B=b["dist-tags"].latest||E[E.length-1],F=Uze.semverUtils.validRange(I.range);if(F){let ne=QEs.default.maxSatisfying(E,F);ne!==null?B=ne:(A.reportWarning(Uze.MessageName.UNNAMED,`Unmet range ${aJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(b["dist-tags"],I.range)?B=b["dist-tags"][I.range]:I.range!=="unknown"&&(A.reportWarning(Uze.MessageName.UNNAMED,`Unknown tag ${aJ.structUtils.prettyRange(t,I.range)}; falling back to the latest version`),o=!0);let Q=b.versions[B],X={...b,...Q,version:B,versions:E},ae;if(n!==null){ae={};for(let ne of n){let ce=X[ne];if(typeof ce<"u")ae[ne]=ce;else{A.reportWarning(Uze.MessageName.EXCEPTION,`The ${aJ.formatUtils.pretty(t,ne,aJ.formatUtils.Type.CODE)} field doesn't exist inside ${aJ.structUtils.prettyIdent(t,I)}'s information`),o=!0;continue}}}else this.json||(delete X.dist,delete X.readme,delete X.users),ae=X;A.reportJson(ae),this.json||a.push(ae)}});XEs.inspect.styles.name="cyan";for(let A of a)(A!==a[0]||o)&&this.context.stdout.write(` -`),this.context.stdout.write(`${(0,XEs.inspect)(A,{depth:1/0,colors:!0,compact:!1})} -`);return l.exitCode()}};jze.paths=[["npm","info"]];jze.usage=Kze.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});cqr.default=jze;function aqr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=aqr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let n=aqr(e[r]);n&&(t[r]=n)}return t}else return e||null}});var lqr=H(F9t=>{"use strict";Object.defineProperty(F9t,"__esModule",{value:!0});F9t.getRegistry=jEs;var UEs=el(),hx=Sn(),JVl=Sn(),tY=sJ(),zze=($c(),vi(rg)),KEs=Zje(),qze=class extends UEs.BaseCommand{constructor(){super(...arguments),this.scope=zze.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=zze.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=zze.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"}),this.webLogin=zze.Option.Boolean("--web-login",{description:"Enable web login"})}async execute(){let t=await hx.Configuration.find(this.context.cwd,this.context.plugins),r=await jEs({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await JVl.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await qVl({registry:r,configuration:t,report:a,webLogin:this.webLogin,stdin:this.context.stdin,stdout:this.context.stdout});return await ePl(r,o,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(hx.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};qze.paths=[["npm","login"]];qze.usage=zze.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});F9t.default=qze;async function jEs({scope:e,publish:t,configuration:r,cwd:n}){return e&&t?tY.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:tY.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?tY.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?tY.npmConfigUtils.getPublishRegistry((await(0,UEs.openWorkspace)(r,n)).manifest,{configuration:r}):tY.npmConfigUtils.getDefaultRegistry({configuration:r})}async function UVl(e,t){let r;try{r=await tY.npmHttpUtils.post("/-/v1/login",null,{configuration:t,registry:e,authType:tY.npmHttpUtils.AuthType.NO_AUTH,jsonResponse:!0,headers:{"npm-auth-type":"web"}})}catch{return null}return r}async function KVl(e,t){let r=await hx.httpUtils.request(e,null,{configuration:t,jsonResponse:!0});if(r.statusCode===202){let n=r.headers["retry-after"]??"1";return{type:"waiting",sleep:parseInt(n,10)}}return r.statusCode===200?{type:"success",token:r.body.token}:null}async function jVl({registry:e,configuration:t,report:r}){let n=await UVl(e,t);if(!n)return null;if(hx.nodeUtils.openUrl){r.reportInfo(hx.MessageName.UNNAMED,"Starting the web login process..."),r.reportSeparator();let{openNow:a}=await(0,KEs.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open your browser now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});r.reportSeparator(),(!a||!await hx.nodeUtils.openUrl(n.loginUrl))&&(r.reportWarning(hx.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice:"),r.reportWarning(hx.MessageName.UNNAMED,hx.formatUtils.pretty(t,n.loginUrl,hx.formatUtils.Type.URL)),r.reportSeparator())}for(;;){let a=await KVl(n.doneUrl,t);if(a===null)return null;if(a.type==="waiting")await new Promise(o=>setTimeout(o,a.sleep*1e3));else return a.token}}var zVl=["https://registry.yarnpkg.com","https://registry.npmjs.org"];async function qVl(e){if(e.webLogin??zVl.includes(e.registry)){let t=await jVl(e);if(t!==null)return t}return await $Vl(e)}async function $Vl({registry:e,configuration:t,report:r,stdin:n,stdout:a}){let o=await tPl({configuration:t,registry:e,report:r,stdin:n,stdout:a}),l=`/-/user/org.couchdb.user:${encodeURIComponent(o.name)}`,A={_id:`org.couchdb.user:${o.name}`,name:o.name,password:o.password,type:"user",roles:[],date:new Date().toISOString()},f={attemptedAs:o.name,configuration:t,registry:e,jsonResponse:!0,authType:tY.npmHttpUtils.AuthType.NO_AUTH};try{return(await tY.npmHttpUtils.put(l,A,f)).token}catch(N){if(!(N.originalError?.name==="HTTPError"&&N.originalError?.response.statusCode===409))throw N}let I={...f,authType:tY.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${o.name}:${o.password}`).toString("base64")}`}},C=await tY.npmHttpUtils.get(l,I);for(let[N,B]of Object.entries(C))(!A[N]||N==="roles")&&(A[N]=B);let b=`${l}/-rev/${A._rev}`;return(await tY.npmHttpUtils.put(b,A,I)).token}async function ePl(e,t,{alwaysAuth:r,scope:n}){let a=l=>A=>{let f=hx.miscUtils.isIndexableObject(A)?A:{},I=f[l],C=hx.miscUtils.isIndexableObject(I)?I:{};return{...f,[l]:{...C,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=n?{npmScopes:a(n)}:{npmRegistries:a(e)};return await hx.Configuration.updateHomeConfiguration(o)}async function tPl({configuration:e,registry:t,report:r,stdin:n,stdout:a}){r.reportInfo(hx.MessageName.UNNAMED,`Logging in to ${hx.formatUtils.pretty(e,t,hx.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(hx.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let l=await(0,KEs.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:n,stdout:a}]);return r.reportSeparator(),l}});var $Es=H(uqr=>{"use strict";Object.defineProperty(uqr,"__esModule",{value:!0});var rPl=el(),iP=Sn(),nPl=Sn(),iPl=sJ(),Z9t=($c(),vi(rg)),zEs=lqr(),MFe=new Set(["npmAuthIdent","npmAuthToken"]),$ze=class extends rPl.BaseCommand{constructor(){super(...arguments),this.scope=Z9t.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=Z9t.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=Z9t.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await iP.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,zEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await iP.Configuration.find(this.context.cwd,this.context.plugins),l=iP.structUtils.makeIdent(this.scope??null,"pkg");return!iPl.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:l}).get("npmAuthToken")};return(await nPl.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await oPl(),a.reportInfo(iP.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await qEs("npmScopes",this.scope),await r()?a.reportInfo(iP.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(iP.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,zEs.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await qEs("npmRegistries",o),await r()?a.reportInfo(iP.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(iP.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};$ze.paths=[["npm","logout"]];$ze.usage=Z9t.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});uqr.default=$ze;function sPl(e,t){let r=e[t];if(!iP.miscUtils.isIndexableObject(r))return!1;let n=new Set(Object.keys(r));if([...MFe].every(o=>!n.has(o)))return!1;for(let o of MFe)n.delete(o);if(n.size===0)return e[t]=void 0,!0;let a={...r};for(let o of MFe)delete a[o];return e[t]=a,!0}async function oPl(){let e=t=>{let r=!1,n=iP.miscUtils.isIndexableObject(t)?{...t}:{};n.npmAuthToken&&(delete n.npmAuthToken,r=!0);for(let a of Object.keys(n))sPl(n,a)&&(r=!0);if(Object.keys(n).length!==0)return r?n:t};return await iP.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function qEs(e,t){return await iP.Configuration.updateHomeConfiguration({[e]:r=>{let n=iP.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(n,t))return r;let a=n[t],o=iP.miscUtils.isIndexableObject(a)?a:{},l=new Set(Object.keys(o));if([...MFe].every(f=>!l.has(f)))return r;for(let f of MFe)l.delete(f);if(l.size===0)return Object.keys(n).length===1?void 0:{...n,[t]:void 0};let A={};for(let f of MFe)A[f]=void 0;return{...n,[t]:{...o,...A}}}})}});var t1s=H(dqr=>{"use strict";Object.defineProperty(dqr,"__esModule",{value:!0});var e1s=el(),rY=Sn(),gqr=ro(),K0e=sJ(),Aqr=$he(),Y6=($c(),vi(rg)),eqe=class extends e1s.BaseCommand{constructor(){super(...arguments),this.access=Y6.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=Y6.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=Y6.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=Y6.Option.String("--otp",{description:"The OTP token to use with the command"}),this.provenance=Y6.Option.Boolean("--provenance",!1,{description:"Generate provenance for the package. Only available in GitHub Actions and GitLab CI. Can be set globally through the `npmPublishProvenance` setting or the `YARN_NPM_CONFIG_PROVENANCE` environment variable, or per-package through the `publishConfig.provenance` field in package.json."}),this.dryRun=Y6.Option.Boolean("-n,--dry-run",!1,{description:"Show what would be published without actually publishing"}),this.json=Y6.Option.Boolean("--json",!1,{description:"Output the result in JSON format"})}async execute(){let t=await rY.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await rY.Project.find(t,this.context.cwd);if(!n)throw new e1s.WorkspaceRequiredError(r.cwd,this.context.cwd);if(n.manifest.private)throw new Y6.UsageError("Private workspaces cannot be published");if(n.manifest.name===null||n.manifest.version===null)throw new Y6.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=n.manifest.name,o=n.manifest.version,l=K0e.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t});return(await rY.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async f=>{if(f.reportInfo(rY.MessageName.UNNAMED,`Publishing to ${l} with tag ${this.tag}`),this.tolerateRepublish)try{let I=await K0e.npmHttpUtils.get(K0e.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:l,ident:a,jsonResponse:!0});if(!Object.hasOwn(I,"versions"))throw new rY.ReportError(rY.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(I.versions,o)){let C=`Registry already knows about version ${o}; skipping.`;f.reportWarning(rY.MessageName.UNNAMED,C),f.reportJson({name:rY.structUtils.stringifyIdent(a),version:o,registry:l,warning:C,skipped:!0});return}}catch(I){if(I.originalError?.response?.statusCode!==404)throw I}await rY.scriptUtils.maybeExecuteWorkspaceLifecycleScript(n,"prepublish",{report:f}),await Aqr.packUtils.prepareForPack(n,{report:f},async()=>{let I=await Aqr.packUtils.genPackList(n);for(let X of I)f.reportInfo(null,gqr.npath.fromPortablePath(X)),f.reportJson({file:gqr.npath.fromPortablePath(X)});let C=await Aqr.packUtils.genPackStream(n,I),b=await rY.miscUtils.bufferStream(C),E=await K0e.npmPublishUtils.getGitHead(n.cwd),N=!1,B="";n.manifest.publishConfig&&"provenance"in n.manifest.publishConfig?(N=!!n.manifest.publishConfig.provenance,B=N?"Generating provenance statement because `publishConfig.provenance` field is set.":"Skipping provenance statement because `publishConfig.provenance` field is set to false."):this.provenance?(N=!0,B="Generating provenance statement because `--provenance` flag is set."):t.get("npmPublishProvenance")&&(N=!0,B="Generating provenance statement because `npmPublishProvenance` setting is set."),B&&(f.reportInfo(null,B),f.reportJson({type:"provenance",enabled:N,provenanceMessage:B}));let F=await K0e.npmPublishUtils.makePublishBody(n,b,{access:this.access,tag:this.tag,registry:l,gitHead:E,provenance:N});this.dryRun||await K0e.npmHttpUtils.put(K0e.npmHttpUtils.getIdentUrl(a),F,{configuration:t,registry:l,ident:a,otp:this.otp,jsonResponse:!0,allowOidc:!!(process.env.CI&&(process.env.GITHUB_ACTIONS||process.env.GITLAB_CI))});let Q=this.dryRun?"Package archive not published (dry run)":"Package archive published";f.reportInfo(rY.MessageName.UNNAMED,Q),f.reportJson({name:rY.structUtils.stringifyIdent(a),version:o,registry:l,tag:this.tag||"latest",files:I.map(X=>gqr.npath.fromPortablePath(X)),access:this.access||null,dryRun:this.dryRun,published:!this.dryRun,message:Q,provenance:!!N})})})).exitCode()}};eqe.paths=[["npm","publish"]];eqe.usage=Y6.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});dqr.default=eqe});var P9t=H(V9t=>{"use strict";Object.defineProperty(V9t,"__esModule",{value:!0});V9t.getDistTags=n1s;var r1s=el(),Ire=Sn(),pqr=ro(),fqr=sJ(),L9t=($c(),vi(rg)),tqe=class extends r1s.BaseCommand{constructor(){super(...arguments),this.json=L9t.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=L9t.Option.String({required:!1})}async execute(){let t=await Ire.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Ire.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=Ire.structUtils.parseIdent(this.package);else{if(!n)throw new r1s.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!n.manifest.name)throw new L9t.UsageError(`Missing 'name' field in ${pqr.npath.fromPortablePath(pqr.ppath.join(n.cwd,pqr.Filename.manifest))}`);a=n.manifest.name}let o=await n1s(a,t),A={children:Ire.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,I])=>({value:Ire.formatUtils.tuple(Ire.formatUtils.Type.RESOLUTION,{descriptor:Ire.structUtils.makeDescriptor(a,f),locator:Ire.structUtils.makeLocator(a,I)})}))};return Ire.treeUtils.emitTree(A,{configuration:t,json:this.json,stdout:this.context.stdout})}};tqe.paths=[["npm","tag","list"]];tqe.usage=L9t.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` - This command will list all tags of a package from the npm registry. - - If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});V9t.default=tqe;async function n1s(e,t){let r=`/-/package${fqr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return fqr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:fqr.npmHttpUtils.customPackageError})}});var s1s=H(hqr=>{"use strict";Object.defineProperty(hqr,"__esModule",{value:!0});var aPl=(Pa(),vi(Va)),i1s=el(),sP=Sn(),Iqr=sJ(),W9t=($c(),vi(rg)),cPl=aPl.__importDefault(UC()),lPl=P9t(),rqe=class extends i1s.BaseCommand{constructor(){super(...arguments),this.package=W9t.Option.String(),this.tag=W9t.Option.String()}async execute(){let t=await sP.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sP.Project.find(t,this.context.cwd);if(!n)throw new i1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=sP.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!cPl.default.valid(o))throw new W9t.UsageError(`The range ${sP.formatUtils.pretty(t,a.range,sP.formatUtils.Type.RANGE)} must be a valid semver version`);let l=Iqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),A=sP.formatUtils.pretty(t,a,sP.formatUtils.Type.IDENT),f=sP.formatUtils.pretty(t,o,sP.formatUtils.Type.RANGE),I=sP.formatUtils.pretty(t,this.tag,sP.formatUtils.Type.CODE);return(await sP.StreamReport.start({configuration:t,stdout:this.context.stdout},async b=>{let E=await(0,lPl.getDistTags)(a,t);Object.hasOwn(E,this.tag)&&E[this.tag]===o&&b.reportWarning(sP.MessageName.UNNAMED,`Tag ${I} is already set to version ${f}`);let N=`/-/package${Iqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await Iqr.npmHttpUtils.put(N,o,{configuration:t,registry:l,ident:a,jsonRequest:!0,jsonResponse:!0}),b.reportInfo(sP.MessageName.UNNAMED,`Tag ${I} added to version ${f} of package ${A}`)})).exitCode()}};rqe.paths=[["npm","tag","add"]];rqe.usage=W9t.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` - This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});hqr.default=rqe});var a1s=H(Cqr=>{"use strict";Object.defineProperty(Cqr,"__esModule",{value:!0});var o1s=el(),hre=Sn(),mqr=sJ(),nqe=($c(),vi(rg)),uPl=P9t(),iqe=class extends o1s.BaseCommand{constructor(){super(...arguments),this.package=nqe.Option.String(),this.tag=nqe.Option.String()}async execute(){if(this.tag==="latest")throw new nqe.UsageError("The 'latest' tag cannot be removed.");let t=await hre.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hre.Project.find(t,this.context.cwd);if(!n)throw new o1s.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=hre.structUtils.parseIdent(this.package),o=mqr.npmConfigUtils.getPublishRegistry(n.manifest,{configuration:t}),l=hre.formatUtils.pretty(t,this.tag,hre.formatUtils.Type.CODE),A=hre.formatUtils.pretty(t,a,hre.formatUtils.Type.IDENT),f=await(0,uPl.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new nqe.UsageError(`${l} is not a tag of package ${A}`);return(await hre.StreamReport.start({configuration:t,stdout:this.context.stdout},async C=>{let b=`/-/package${mqr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await mqr.npmHttpUtils.del(b,{configuration:t,registry:o,ident:a,jsonResponse:!0}),C.reportInfo(hre.MessageName.UNNAMED,`Tag ${l} removed from package ${A}`)})).exitCode()}};iqe.paths=[["npm","tag","remove"]];iqe.usage=nqe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` - This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});Cqr.default=iqe});var u1s=H(bqr=>{"use strict";Object.defineProperty(bqr,"__esModule",{value:!0});var c1s=el(),_qr=Sn(),l1s=Sn(),j0e=sJ(),yqr=($c(),vi(rg)),sqe=class extends c1s.BaseCommand{constructor(){super(...arguments),this.scope=yqr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=yqr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await _qr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=j0e.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:j0e.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=j0e.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=j0e.npmConfigUtils.getPublishRegistry((await(0,c1s.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=j0e.npmConfigUtils.getDefaultRegistry({configuration:t}),(await l1s.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await j0e.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:j0e.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?l1s.structUtils.makeIdent(this.scope,""):void 0})}catch(l){if(l.response?.statusCode===401||l.response?.statusCode===403){a.reportError(_qr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}a.reportInfo(_qr.MessageName.UNNAMED,o.username)})).exitCode()}};sqe.paths=[["npm","whoami"]];sqe.usage=yqr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});bqr.default=sqe});var _1s=H(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});U1.NpmWhoamiCommand=U1.NpmTagRemoveCommand=U1.NpmTagListCommand=U1.NpmTagAddCommand=U1.NpmPublishCommand=U1.NpmLogoutCommand=U1.NpmLoginCommand=U1.NpmInfoCommand=U1.NpmAuditCommand=U1.npmAuditUtils=U1.npmAuditTypes=void 0;var cJ=(Pa(),vi(Va)),O9t=Sn(),g1s=cJ.__importDefault(YEs());U1.NpmAuditCommand=g1s.default;var A1s=cJ.__importDefault(JEs());U1.NpmInfoCommand=A1s.default;var d1s=cJ.__importDefault(lqr());U1.NpmLoginCommand=d1s.default;var p1s=cJ.__importDefault($Es());U1.NpmLogoutCommand=p1s.default;var f1s=cJ.__importDefault(t1s());U1.NpmPublishCommand=f1s.default;var I1s=cJ.__importDefault(s1s());U1.NpmTagAddCommand=I1s.default;var h1s=cJ.__importDefault(P9t());U1.NpmTagListCommand=h1s.default;var m1s=cJ.__importDefault(a1s());U1.NpmTagRemoveCommand=m1s.default;var C1s=cJ.__importDefault(u1s());U1.NpmWhoamiCommand=C1s.default;var gPl=cJ.__importStar(k9t());U1.npmAuditTypes=gPl;var APl=cJ.__importStar(nqr());U1.npmAuditUtils=APl;var dPl={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:O9t.SettingsType.STRING,default:null},npmPublishProvenance:{description:"Whether to generate provenance for the published packages",type:O9t.SettingsType.BOOLEAN,default:!1},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:O9t.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:O9t.SettingsType.STRING,default:[],isArray:!0}},commands:[g1s.default,A1s.default,d1s.default,p1s.default,f1s.default,I1s.default,h1s.default,m1s.default,C1s.default]};U1.default=dPl});var y1s=H(M9t=>{"use strict";Object.defineProperty(M9t,"__esModule",{value:!0});M9t.CACHE_VERSION=void 0;M9t.CACHE_VERSION=3});var Y9t=H(CL=>{"use strict";Object.defineProperty(CL,"__esModule",{value:!0});CL.PatchMutationType=CL.EXECUTABLE_FILE_MODE=CL.NON_EXECUTABLE_FILE_MODE=void 0;CL.getPath=z0e;CL.parseHunkHeaderLine=E1s;CL.interpretParsedPatchFile=S1s;CL.parsePatchFile=mPl;CL.verifyHunkIntegrity=v1s;var Eqr=Sn(),oqe=ro(),pPl=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function z0e(e){return oqe.ppath.relative(oqe.PortablePath.root,oqe.ppath.resolve(oqe.PortablePath.root,oqe.npath.toPortablePath(e)))}function E1s(e){let t=e.trim().match(pPl);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}CL.NON_EXECUTABLE_FILE_MODE=420;CL.EXECUTABLE_FILE_MODE=493;var nY;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(nY||(CL.PatchMutationType=nY={}));var b1s=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),fPl=e=>({header:E1s(e),parts:[]}),IPl={"@":"header","-":nY.Deletion,"+":nY.Insertion," ":nY.Context,"\\":"pragma",undefined:nY.Context};function hPl(e){let t=[],r=b1s(),n="parsing header",a=null,o=null;function l(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function A(){l(),t.push(r),r=b1s()}for(let f=0;f0?"patch":"mode change",ae=null;switch(X){case"rename":{if(!C||!b)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:n,fromPath:z0e(C),toPath:z0e(b)}),ae=b}break;case"file deletion":{let ne=a||B;if(!ne)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:n,hunk:Q&&Q[0]||null,path:z0e(ne),mode:H9t(f),hash:E})}break;case"file creation":{let ne=o||F;if(!ne)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:n,hunk:Q&&Q[0]||null,path:z0e(ne),mode:H9t(I),hash:N})}break;case"patch":case"mode change":ae=F||o;break;default:Eqr.miscUtils.assertNever(X);break}ae&&l&&A&&l!==A&&t.push({type:"mode change",semverExclusivity:n,path:z0e(ae),oldMode:H9t(l),newMode:H9t(A)}),ae&&Q&&Q.length&&t.push({type:"patch",semverExclusivity:n,path:z0e(ae),hunks:Q,beforeHash:E,afterHash:N})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}function H9t(e){let t=parseInt(e,8)&511;if(t!==CL.NON_EXECUTABLE_FILE_MODE&&t!==CL.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function mPl(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),S1s(hPl(t))}function v1s(e){let t=0,r=0;for(let{type:n,lines:a}of e.parts)switch(n){case nY.Context:r+=a.length,t+=a.length;break;case nY.Deletion:t+=a.length;break;case nY.Insertion:r+=a.length;break;default:Eqr.miscUtils.assertNever(n);break}if(t!==e.header.original.length||r!==e.header.patched.length){let n=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${n(e.header.original.length)} ${n(e.header.patched.length)} @@, got @@ ${n(t)} ${n(r)} @@)`)}}});var vqr=H(Q9t=>{"use strict";Object.defineProperty(Q9t,"__esModule",{value:!0});Q9t.UnmatchedHunkError=void 0;var Sqr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};Q9t.UnmatchedHunkError=Sqr});var N1s=H(U9t=>{"use strict";Object.defineProperty(U9t,"__esModule",{value:!0});U9t.applyPatchFile=_Pl;U9t.applyPatch=R1s;var J9t=Sn(),mre=ro(),CPl=vqr(),X9t=Y9t();async function HFe(e,t,r){let n=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,n.atime,n.mtime)}async function _Pl(e,{baseFs:t=new mre.NodeFS,dryRun:r=!1,version:n=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&n!==null&&!J9t.semverUtils.satisfiesWithPrereleases(n,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await HFe(t,mre.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await HFe(t,mre.ppath.dirname(a.fromPath),async()=>{await HFe(t,mre.ppath.dirname(a.toPath),async()=>{await HFe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` -`)+(a.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await t.mkdirpPromise(mre.ppath.dirname(a.path),{chmod:493,utimes:[mre.constants.SAFE_TIME,mre.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,mre.constants.SAFE_TIME,mre.constants.SAFE_TIME)}break;case"patch":await HFe(t,a.path,async()=>{await R1s(a,{baseFs:t,dryRun:r})});break;case"mode change":{let l=(await t.statPromise(a.path)).mode;if(B1s(a.newMode)!==B1s(l))continue;await HFe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:J9t.miscUtils.assertNever(a);break}}function B1s(e){return(e&64)>0}function w1s(e){return e.replace(/\s+$/,"")}function yPl(e,t){return w1s(e)===w1s(t)}async function R1s({hunks:e,path:t},{baseFs:r,dryRun:n=!1}){let a=await r.statSync(t).mode,l=(await r.readFileSync(t,"utf8")).split(/\n/),A=[],f=0,I=0;for(let b of e){let E=Math.max(I,b.header.patched.start+f),N=Math.max(0,E-I),B=Math.max(0,l.length-E-b.header.original.length),F=Math.max(N,B),Q=0,X=0,ae=null;for(;Q<=F;){if(Q<=N&&(X=E-Q,ae=T1s(b,l,X),ae!==null)){Q=-Q;break}if(Q<=B&&(X=E+Q,ae=T1s(b,l,X),ae!==null))break;Q+=1}if(ae===null)throw new CPl.UnmatchedHunkError(e.indexOf(b),b);A.push(ae),f+=Q,I=X+b.header.original.length}if(n)return;let C=0;for(let b of A)for(let E of b)switch(E.type){case"splice":{let N=E.index+C;l.splice(N,E.numToDelete,...E.linesToInsert),C+=E.linesToInsert.length-E.numToDelete}break;case"pop":l.pop();break;case"push":l.push(E.line);break;default:J9t.miscUtils.assertNever(E);break}await r.writeFilePromise(t,l.join(` -`),{mode:a})}function T1s(e,t,r){let n=[];for(let a of e.parts)switch(a.type){case X9t.PatchMutationType.Context:case X9t.PatchMutationType.Deletion:{for(let o of a.lines){let l=t[r];if(l==null||!yPl(l,o))return null;r+=1}a.type===X9t.PatchMutationType.Deletion&&(n.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&n.push({type:"push",line:""}))}break;case X9t.PatchMutationType.Insertion:n.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&n.push({type:"pop"});break;default:J9t.miscUtils.assertNever(a.type);break}return n}});var QFe=H(iB=>{"use strict";Object.defineProperty(iB,"__esModule",{value:!0});iB.parsePatchFile=iB.applyPatchFile=void 0;iB.isPatchDescriptor=k1s;iB.isPatchLocator=x1s;iB.parseDescriptor=vPl;iB.parseLocator=BPl;iB.unpatchDescriptor=wPl;iB.unpatchLocator=TPl;iB.ensureUnpatchedDescriptor=RPl;iB.ensureUnpatchedLocator=G1s;iB.makeDescriptor=NPl;iB.makeLocator=DPl;iB.extractPatchFlags=L1s;iB.isParentRequired=kPl;iB.loadPatchFiles=xPl;iB.extractPackageToDisk=GPl;iB.diffFolders=FPl;iB.makePatchHash=ZPl;var M2=Sn(),dw=ro(),bPl=y1s(),D1s=Y9t();Object.defineProperty(iB,"parsePatchFile",{enumerable:!0,get:function(){return D1s.parsePatchFile}});var EPl=N1s();Object.defineProperty(iB,"applyPatchFile",{enumerable:!0,get:function(){return EPl.applyPatchFile}});var SPl=/^builtin<([^>]+)>$/;function YFe(e,t){let{protocol:r,source:n,selector:a,params:o}=M2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(n===null)throw new Error("Patch locators must explicitly define their source");let l=a?a.split(/&/).map(C=>dw.npath.toPortablePath(C)):[],A=o&&typeof o.locator=="string"?M2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,I=t(n);return{parentLocator:A,sourceItem:I,patchPaths:l,sourceVersion:f}}function k1s(e){return e.range.startsWith("patch:")}function x1s(e){return e.reference.startsWith("patch:")}function vPl(e){let{sourceItem:t,...r}=YFe(e.range,M2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}function BPl(e){let{sourceItem:t,...r}=YFe(e.reference,M2.structUtils.parseLocator);return{...r,sourceLocator:t}}function wPl(e){let{sourceItem:t}=YFe(e.range,M2.structUtils.parseDescriptor);return t}function TPl(e){let{sourceItem:t}=YFe(e.reference,M2.structUtils.parseLocator);return t}function RPl(e){if(!k1s(e))return e;let{sourceItem:t}=YFe(e.range,M2.structUtils.parseDescriptor);return t}function G1s(e){if(!x1s(e))return e;let{sourceItem:t}=YFe(e.reference,M2.structUtils.parseLocator);return t}function F1s({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:n,patchHash:a},o){let l=e!==null?{locator:M2.structUtils.stringifyLocator(e)}:{},A=typeof n<"u"?{version:n}:{},f=typeof a<"u"?{hash:a}:{};return M2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...A,...f,...l}})}function NPl(e,{parentLocator:t,sourceDescriptor:r,patchPaths:n}){return M2.structUtils.makeDescriptor(e,F1s({parentLocator:t,sourceItem:r,patchPaths:n},M2.structUtils.stringifyDescriptor))}function DPl(e,{parentLocator:t,sourcePackage:r,patchPaths:n,patchHash:a}){return M2.structUtils.makeLocator(e,F1s({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:n,patchHash:a},M2.structUtils.stringifyLocator))}function Z1s({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:n},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let l=a.match(SPl);return l!==null?n(l[1]):a.startsWith("~/")?r(a.slice(2)):dw.ppath.isAbsolute(a)?e(a):t(a)}function L1s(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}function kPl(e){return Z1s({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}async function xPl(e,t,r){let n=e!==null?await r.fetcher.fetch(e,r):null,a=n&&n.localPath?{packageFs:new dw.CwdFS(dw.PortablePath.root),prefixPath:dw.ppath.relative(dw.PortablePath.root,n.localPath)}:n;n&&n!==a&&n.releaseFs&&n.releaseFs();let o=await M2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async l=>{let A=L1s(l),f=await Z1s({onAbsolute:async I=>await dw.xfs.readFilePromise(I,"utf8"),onRelative:async I=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(dw.ppath.join(a.prefixPath,I),"utf8")},onProject:async I=>await dw.xfs.readFilePromise(dw.ppath.join(r.project.cwd,I),"utf8"),onBuiltin:async I=>await r.project.configuration.firstHook(C=>C.getBuiltinPatch,r.project,I)},l);return{...A,source:f}})));for(let l of o)typeof l.source=="string"&&(l.source=l.source.replace(/\r\n?/g,` -`));return o}async function GPl(e,{cache:t,project:r}){let n=r.storedPackages.get(e.locatorHash);if(typeof n>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=G1s(e),o=r.storedChecksums,l=new M2.ThrowReport,A=await dw.xfs.mktempPromise(),f=dw.ppath.join(A,"source"),I=dw.ppath.join(A,"user"),C=dw.ppath.join(A,".yarn-patch.json"),b=r.configuration.makeFetcher(),E=[];try{let N,B;if(e.locatorHash===a.locatorHash){let F=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l});E.push(()=>F.releaseFs?.()),N=F,B=F}else N=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>N.releaseFs?.()),B=await b.fetch(e,{cache:t,project:r,fetcher:b,checksums:o,report:l}),E.push(()=>B.releaseFs?.());await Promise.all([dw.xfs.copyPromise(f,N.prefixPath,{baseFs:N.packageFs}),dw.xfs.copyPromise(I,B.prefixPath,{baseFs:B.packageFs}),dw.xfs.writeJsonPromise(C,{locator:M2.structUtils.stringifyLocator(e),version:n.version})])}finally{for(let N of E)N()}return dw.xfs.detachTemp(A),I}async function FPl(e,t){let r=dw.npath.fromPortablePath(e).replace(/\\/g,"/"),n=dw.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await M2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,n],{cwd:dw.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. -The following error was reported by 'git': -${o}`);let l=r.startsWith("/")?A=>A.slice(1):A=>A;return a.replace(new RegExp(`(a|b)(${M2.miscUtils.escapeRegExp(`/${l(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${M2.miscUtils.escapeRegExp(`/${l(n)}/`)}`,"g"),"$1/").replace(new RegExp(M2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(M2.miscUtils.escapeRegExp(`${n}/`),"g"),"")}function ZPl(e,t){let r=[];for(let{source:n}of e){if(n===null)continue;let a=(0,D1s.parsePatchFile)(n);for(let o of a){let{semverExclusivity:l,...A}=o;l!==null&&t!==null&&!M2.semverUtils.satisfiesWithPrereleases(t,l)||r.push(JSON.stringify(A))}}return M2.hashUtils.makeHash(`${bPl.CACHE_VERSION}`,...r).slice(0,6)}});var V1s=H(wqr=>{"use strict";Object.defineProperty(wqr,"__esModule",{value:!0});wqr.reportHunk=LPl;var rge=Sn(),Bqr=Y9t();function LPl(e,{configuration:t,report:r}){for(let n of e.parts)for(let a of n.lines)switch(n.type){case Bqr.PatchMutationType.Context:r.reportInfo(null,` ${rge.formatUtils.pretty(t,a,"grey")}`);break;case Bqr.PatchMutationType.Deletion:r.reportError(rge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${rge.formatUtils.pretty(t,a,rge.formatUtils.Type.REMOVED)}`);break;case Bqr.PatchMutationType.Insertion:r.reportError(rge.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${rge.formatUtils.pretty(t,a,rge.formatUtils.Type.ADDED)}`);break;default:rge.miscUtils.assertNever(n.type)}}});var P1s=H(K9t=>{"use strict";Object.defineProperty(K9t,"__esModule",{value:!0});K9t.PatchFetcher=void 0;var VPl=(Pa(),vi(Va)),Tqr=Sn(),aqe=Sn(),cqe=ro(),Rqr=zK(),lqe=VPl.__importStar(QFe()),PPl=vqr(),WPl=V1s(),Nqr=class{supports(t,r){return!!lqe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let n=r.checksums.get(t.locatorHash)||null,[a,o,l]=await r.cache.fetchPackageFromCache(t,n,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${aqe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:aqe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:l}}async patchPackage(t,r){let{parentLocator:n,sourceLocator:a,sourceVersion:o,patchPaths:l}=lqe.parseLocator(t),A=await lqe.loadPatchFiles(n,l,r),f=await cqe.xfs.mktempPromise(),I=cqe.ppath.join(f,"current.zip"),C=await r.fetcher.fetch(a,r),b=aqe.structUtils.getIdentVendorPath(t),E=new Rqr.ZipFS(I,{create:!0,level:r.project.configuration.get("compressionLevel")});await aqe.miscUtils.releaseAfterUseAsync(async()=>{await E.copyPromise(b,C.prefixPath,{baseFs:C.packageFs,stableSort:!0})},C.releaseFs),E.saveAndClose();for(let{source:N,optional:B}of A){if(N===null)continue;let F=new Rqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")}),Q=new cqe.CwdFS(cqe.ppath.resolve(cqe.PortablePath.root,b),{baseFs:F});try{await lqe.applyPatchFile(lqe.parsePatchFile(N),{baseFs:Q,version:o})}catch(X){if(!(X instanceof PPl.UnmatchedHunkError))throw X;let ae=r.project.configuration.get("enableInlineHunks"),ne=!ae&&!B?" (set enableInlineHunks for details)":"",ce=`${aqe.structUtils.prettyLocator(r.project.configuration,t)}: ${X.message}${ne}`,fe=ue=>{ae&&(0,WPl.reportHunk)(X.hunk,{configuration:r.project.configuration,report:ue})};if(F.discardAndClose(),B){r.report.reportWarningOnce(Tqr.MessageName.PATCH_HUNK_FAILED,ce,{reportExtra:fe});continue}else throw new Tqr.ReportError(Tqr.MessageName.PATCH_HUNK_FAILED,ce,fe)}F.saveAndClose()}return new Rqr.ZipFS(I,{level:r.project.configuration.get("compressionLevel")})}};K9t.PatchFetcher=Nqr});var O1s=H(j9t=>{"use strict";Object.defineProperty(j9t,"__esModule",{value:!0});j9t.PatchResolver=void 0;var OPl=(Pa(),vi(Va)),W1s=Sn(),Q6=OPl.__importStar(QFe()),Dqr=class{supportsDescriptor(t,r){return!!Q6.isPatchDescriptor(t)}supportsLocator(t,r){return!!Q6.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){let{patchPaths:a}=Q6.parseDescriptor(t);return a.every(o=>!Q6.isParentRequired(o))?t:W1s.structUtils.bindDescriptor(t,{locator:W1s.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:n}=Q6.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(n)}}async getCandidates(t,r,n){if(!n.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=Q6.parseDescriptor(t),l=await Q6.loadPatchFiles(a,o,n.fetchOptions),A=r.sourceDescriptor;if(typeof A>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=Q6.makePatchHash(l,A.version);return[Q6.makeLocator(t,{parentLocator:a,sourcePackage:A,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,n,a){let[o]=await this.getCandidates(t,r,a);return{locators:n.filter(l=>l.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:n}=Q6.parseLocator(t);return{...await r.resolver.resolve(n,r),...t}}};j9t.PatchResolver=Dqr});var H1s=H(kqr=>{"use strict";Object.defineProperty(kqr,"__esModule",{value:!0});var MPl=(Pa(),vi(Va)),M1s=el(),X6=Sn(),_L=ro(),uqe=($c(),vi(rg)),z9t=MPl.__importStar(QFe()),gqe=class extends M1s.BaseCommand{constructor(){super(...arguments),this.save=uqe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=uqe.Option.String()}async execute(){let t=await X6.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await X6.Project.find(t,this.context.cwd);if(!n)throw new M1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=_L.ppath.resolve(this.context.cwd,_L.npath.toPortablePath(this.patchFolder)),o=_L.ppath.join(a,"../source"),l=_L.ppath.join(a,"../.yarn-patch.json");if(!_L.xfs.existsSync(o))throw new uqe.UsageError("The argument folder didn't get created by 'yarn patch'");let A=await z9t.diffFolders(o,a),f=await _L.xfs.readJsonPromise(l),I=X6.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(I.locatorHash))throw new uqe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(A);return}let C=t.get("patchFolder"),b=_L.ppath.join(C,`${X6.structUtils.slugifyLocator(I)}.patch`);await _L.xfs.mkdirPromise(C,{recursive:!0}),await _L.xfs.writeFilePromise(b,A);let E=[],N=new Map;for(let B of r.storedPackages.values()){if(X6.structUtils.isVirtualLocator(B))continue;let F=B.dependencies.get(I.identHash);if(!F)continue;let Q=X6.structUtils.ensureDevirtualizedDescriptor(F),X=z9t.ensureUnpatchedDescriptor(Q),ae=r.storedResolutions.get(X.descriptorHash);if(!ae)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(ae))throw new Error("Assertion failed: Expected the package to have been registered");let ce=r.tryWorkspaceByLocator(B);if(ce)E.push(ce);else{let fe=r.originalPackages.get(B.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let ue=fe.dependencies.get(F.identHash);if(!ue)throw new Error("Assertion failed: Expected the original dependency to have been registered");N.set(ue.descriptorHash,ue)}}for(let B of E)for(let F of X6.Manifest.hardDependencies){let Q=B.manifest[F].get(I.identHash);if(!Q)continue;let X=z9t.makeDescriptor(Q,{parentLocator:null,sourceDescriptor:X6.structUtils.convertLocatorToDescriptor(I),patchPaths:[_L.ppath.join(_L.Filename.home,_L.ppath.relative(r.cwd,b))]});B.manifest[F].set(Q.identHash,X)}for(let B of N.values()){let F=z9t.makeDescriptor(B,{parentLocator:null,sourceDescriptor:X6.structUtils.convertLocatorToDescriptor(I),patchPaths:[_L.ppath.join(_L.Filename.home,_L.ppath.relative(r.cwd,b))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:X6.structUtils.stringifyIdent(F),description:B.range}},reference:F.range})}await r.persist()}};gqe.paths=[["patch-commit"]];gqe.usage=uqe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});kqr.default=gqe});var Q1s=H(Fqr=>{"use strict";Object.defineProperty(Fqr,"__esModule",{value:!0});var HPl=(Pa(),vi(Va)),Y1s=el(),TD=Sn(),xqr=ro(),q0e=($c(),vi(rg)),Gqr=HPl.__importStar(QFe()),Aqe=class extends Y1s.BaseCommand{constructor(){super(...arguments),this.update=q0e.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=q0e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=q0e.Option.String()}async execute(){let t=await TD.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await TD.Project.find(t,this.context.cwd),a=await TD.Cache.find(t);if(!n)throw new Y1s.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=TD.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let l=TD.miscUtils.mapAndFilter([...r.storedPackages.values()],A=>A.identHash!==o.identHash||TD.structUtils.isVirtualLocator(A)||Gqr.isPatchLocator(A)!==this.update?TD.miscUtils.mapAndFilter.skip:A);if(l.length===0)throw new q0e.UsageError("No package found in the project for the given locator");if(l.length>1)throw new q0e.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): -${l.map(A=>` -- ${TD.structUtils.prettyLocator(t,A)}`).join("")}`);o=l[0]}if(!r.storedPackages.has(o.locatorHash))throw new q0e.UsageError("No package found in the project for the given locator");await TD.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async l=>{let A=Gqr.ensureUnpatchedLocator(o),f=await Gqr.extractPackageToDisk(o,{cache:a,project:r});l.reportJson({locator:TD.structUtils.stringifyLocator(A),path:xqr.npath.fromPortablePath(f)});let I=this.update?" along with its current modifications":"";l.reportInfo(TD.MessageName.UNNAMED,`Package ${TD.structUtils.prettyLocator(t,A)} got extracted with success${I}!`),l.reportInfo(TD.MessageName.UNNAMED,`You can now edit the following folder: ${TD.formatUtils.pretty(t,xqr.npath.fromPortablePath(f),"magenta")}`),l.reportInfo(TD.MessageName.UNNAMED,`Once you are done run ${TD.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${xqr.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};Aqe.paths=[["patch"]];Aqe.usage=q0e.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});Fqr.default=Aqe});var z1s=H(zO=>{"use strict";Object.defineProperty(zO,"__esModule",{value:!0});zO.patchUtils=zO.PatchCommand=zO.PatchCommitCommand=zO.PatchResolver=zO.PatchFetcher=void 0;var Zqr=(Pa(),vi(Va)),X1s=Sn(),J1s=P1s();Object.defineProperty(zO,"PatchFetcher",{enumerable:!0,get:function(){return J1s.PatchFetcher}});var U1s=O1s();Object.defineProperty(zO,"PatchResolver",{enumerable:!0,get:function(){return U1s.PatchResolver}});var K1s=Zqr.__importDefault(H1s());zO.PatchCommitCommand=K1s.default;var j1s=Zqr.__importDefault(Q1s());zO.PatchCommand=j1s.default;var YPl=Zqr.__importStar(QFe());zO.patchUtils=YPl;var QPl={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:X1s.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:X1s.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[K1s.default,j1s.default],fetchers:[J1s.PatchFetcher],resolvers:[U1s.PatchResolver]};zO.default=QPl});var t2s=H(q9t=>{"use strict";Object.defineProperty(q9t,"__esModule",{value:!0});q9t.PnpmLinker=void 0;var MS=Sn(),Wm=ro(),q1s=hGe(),Lqr=($c(),vi(rg)),Vqr=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new Lqr.UsageError(`The project in ${MS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,MS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new Lqr.UsageError(`Couldn't find ${MS.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let n=this.getCustomDataKey(),a=r.project.linkersCustomData.get(n);if(!a)throw new Lqr.UsageError(`The project in ${MS.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,MS.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let l=t,A=t;do{A=l,l=Wm.ppath.dirname(A);let f=a.locatorByPath.get(A);if(f)return f}while(l!==A);return null}makeInstaller(t){return new Pqr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};q9t.PnpmLinker=Vqr;var Pqr=class{constructor(t){this.opts=t,this.asyncActions=new MS.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,Wm.setupCopyIndex)(Wm.xfs,{indexPath:Wm.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,n){switch(t.linkType){case MS.LinkType.SOFT:return this.installPackageSoft(t,r,n);case MS.LinkType.HARD:return this.installPackageHard(t,r,n)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,n){let a=Wm.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?Wm.ppath.join(a,Wm.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,n){let a=JPl(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,MS.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),n.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await Wm.xfs.mkdirPromise(o,{recursive:!0}),await Wm.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let A=MS.structUtils.isVirtualLocator(t)?MS.structUtils.devirtualizeLocator(t):t,f={manifest:await MS.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new MS.Manifest,misc:{hasBindingGyp:q1s.jsInstallUtils.hasBindingGyp(r)}},I=this.opts.project.getDependencyMeta(A,t.version),C=q1s.jsInstallUtils.extractBuildRequest(t,f,I,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:C}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!$1s(t,{project:this.opts.project}))return;let n=this.customData.pathsByLocator.get(t.locatorHash);if(typeof n>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${MS.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=n;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await Wm.xfs.mkdirPromise(a,{recursive:!0});let l=await UPl(a),A=new Map(l),f=[o],I=(b,E)=>{let N=E;$1s(E,{project:this.opts.project})||(this.opts.report.reportWarningOnce(MS.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),N=MS.structUtils.devirtualizeLocator(E));let B=this.customData.pathsByLocator.get(N.locatorHash);if(typeof B>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${MS.structUtils.stringifyLocator(E)})`);let F=MS.structUtils.stringifyIdent(b),Q=Wm.ppath.join(a,F),X=Wm.ppath.relative(Wm.ppath.dirname(Q),B.packageLocation),ae=A.get(F);A.delete(F),f.push(Promise.resolve().then(async()=>{if(ae){if(ae.isSymbolicLink()&&await Wm.xfs.readlinkPromise(Q)===X)return;await Wm.xfs.removePromise(Q)}await Wm.xfs.mkdirpPromise(Wm.ppath.dirname(Q)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===MS.WindowsLinkType.JUNCTIONS?await Wm.xfs.symlinkPromise(B.packageLocation,Q,"junction"):await Wm.xfs.symlinkPromise(X,Q)}))},C=!1;for(let[b,E]of r)b.identHash===t.identHash&&(C=!0),I(b,E);!C&&!this.opts.project.tryWorkspaceByLocator(t)&&I(MS.structUtils.convertLocatorToDescriptor(t),t),f.push(KPl(a,A)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=e2s(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await Wm.xfs.removePromise(t);else{let r;try{r=new Set(await Wm.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:n}of this.customData.pathsByLocator.values()){if(!n)continue;let a=Wm.ppath.contains(t,n);if(a===null)continue;let[o]=a.split(Wm.ppath.sep);r.delete(o)}await Promise.all([...r].map(async n=>{await Wm.xfs.removePromise(Wm.ppath.join(t,n))}))}return await this.asyncActions.wait(),await Wqr(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await Wqr(XPl(this.opts.project)),{customData:this.customData}}};function XPl(e){return Wm.ppath.join(e.cwd,Wm.Filename.nodeModules)}function e2s(e){return e.configuration.get("pnpmStoreFolder")}function JPl(e,{project:t}){let r=MS.structUtils.slugifyLocator(e),n=e2s(t),a=Wm.ppath.join(n,r,"package"),o=Wm.ppath.join(n,r,Wm.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function $1s(e,{project:t}){return!MS.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function UPl(e){let t=new Map,r=[];try{r=await Wm.xfs.readdirPromise(e,{withFileTypes:!0})}catch(n){if(n.code!=="ENOENT")throw n}try{for(let n of r)if(!n.name.startsWith("."))if(n.name.startsWith("@")){let a=await Wm.xfs.readdirPromise(Wm.ppath.join(e,n.name),{withFileTypes:!0});if(a.length===0)t.set(n.name,n);else for(let o of a)t.set(`${n.name}/${o.name}`,o)}else t.set(n.name,n)}catch(n){if(n.code!=="ENOENT")throw n}return t}async function KPl(e,t){let r=[],n=new Set;for(let a of t.keys()){r.push(Wm.xfs.removePromise(Wm.ppath.join(e,a)));let o=MS.structUtils.tryParseIdent(a)?.scope;o&&n.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...n].map(a=>Wqr(Wm.ppath.join(e,a)))))}async function Wqr(e){try{await Wm.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY"&&t.code!=="EBUSY")throw t}}});var n2s=H(dqe=>{"use strict";Object.defineProperty(dqe,"__esModule",{value:!0});dqe.PnpmLinker=void 0;var jPl=Sn(),r2s=t2s();Object.defineProperty(dqe,"PnpmLinker",{enumerable:!0,get:function(){return r2s.PnpmLinker}});var zPl={configuration:{pnpmStoreFolder:{description:"By default, the store is stored in the 'node_modules/.store' of the project. Sometimes in CI scenario's it is convenient to store this in a different location so it can be cached and reused.",type:jPl.SettingsType.ABSOLUTE_PATH,default:"./node_modules/.store"}},linkers:[r2s.PnpmLinker]};dqe.default=zPl});var Oqr=H(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.ActionType=void 0;lJ.findVcsRoot=qPl;lJ.isYarnFile=$Pl;lJ.expandDirectory=eWl;lJ.checkConsensus=$9t;lJ.findConsensus=tWl;lJ.getCommitPrefix=i2s;lJ.genCommitMessage=nWl;var nge=ro(),$0e;(function(e){e[e.CREATE=0]="CREATE",e[e.DELETE=1]="DELETE",e[e.ADD=2]="ADD",e[e.REMOVE=3]="REMOVE",e[e.MODIFY=4]="MODIFY"})($0e||(lJ.ActionType=$0e={}));async function qPl(e,{marker:t}){do if(!nge.xfs.existsSync(nge.ppath.join(e,t)))e=nge.ppath.dirname(e);else return e;while(e!=="/");return null}function $Pl(e,{roots:t,names:r}){if(r.has(nge.ppath.basename(e)))return!0;do if(!t.has(e))e=nge.ppath.dirname(e);else return!0;while(e!=="/");return!1}function eWl(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop(),a=nge.xfs.readdirSync(n);for(let o of a){let l=nge.ppath.resolve(n,o);nge.xfs.lstatSync(l).isDirectory()?r.push(l):t.push(l)}}return t}function $9t(e,t){let r=0,n=0;for(let a of e)a!=="wip"&&(t.test(a)?r+=1:n+=1);return r>=n}function tWl(e){let t=$9t(e,/^(\w\(\w+\):\s*)?\w+s/),r=$9t(e,/^(\w\(\w+\):\s*)?[A-Z]/),n=$9t(e,/^\w\(\w+\):/);return{useThirdPerson:t,useUpperCase:r,useComponent:n}}function i2s(e){return e.useComponent?"chore(yarn): ":""}var rWl=new Map([[$0e.CREATE,"create"],[$0e.DELETE,"delete"],[$0e.ADD,"add"],[$0e.REMOVE,"remove"],[$0e.MODIFY,"update"]]);function nWl(e,t){let r=i2s(e),n=[],a=t.slice().sort((o,l)=>o[0]-l[0]);for(;a.length>0;){let[o,l]=a.shift(),A=rWl.get(o);e.useUpperCase&&n.length===0&&(A=`${A[0].toUpperCase()}${A.slice(1)}`),e.useThirdPerson&&(A+="s");let f=[l];for(;a.length>0&&a[0][0]===o;){let[,C]=a.shift();f.push(C)}f.sort();let I=f.shift();f.length===1?I+=" (and one other)":f.length>1&&(I+=` (and ${f.length} others)`),n.push(`${A} ${I}`)}return`${r}${n.join(", ")}`}});var o2s=H(eVt=>{"use strict";Object.defineProperty(eVt,"__esModule",{value:!0});eVt.Driver=void 0;var iWl=(Pa(),vi(Va)),mx=Sn(),XFe=ro(),K1=iWl.__importStar(Oqr()),sWl="Commit generated via `yarn stage`",oWl=11;async function s2s(e){let{code:t,stdout:r}=await mx.execUtils.execvp("git",["log","-1","--pretty=format:%H"],{cwd:e});return t===0?r.trim():null}async function aWl(e,t){let r=[],n=t.filter(I=>XFe.ppath.basename(I.path)==="package.json");for(let{action:I,path:C}of n){let b=XFe.ppath.relative(e,C);if(I===K1.ActionType.MODIFY){let E=await s2s(e),{stdout:N}=await mx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await mx.Manifest.fromText(N),F=await mx.Manifest.fromFile(C),Q=new Map([...F.dependencies,...F.devDependencies]),X=new Map([...B.dependencies,...B.devDependencies]);for(let[ae,ne]of X){let ce=mx.structUtils.stringifyIdent(ne),fe=Q.get(ae);fe?fe.range!==ne.range&&r.push([K1.ActionType.MODIFY,`${ce} to ${fe.range}`]):r.push([K1.ActionType.REMOVE,ce])}for(let[ae,ne]of Q)X.has(ae)||r.push([K1.ActionType.ADD,mx.structUtils.stringifyIdent(ne)])}else if(I===K1.ActionType.CREATE){let E=await mx.Manifest.fromFile(C);E.name?r.push([K1.ActionType.CREATE,mx.structUtils.stringifyIdent(E.name)]):r.push([K1.ActionType.CREATE,"a package"])}else if(I===K1.ActionType.DELETE){let E=await s2s(e),{stdout:N}=await mx.execUtils.execvp("git",["show",`${E}:${b}`],{cwd:e,strict:!0}),B=await mx.Manifest.fromText(N);B.name?r.push([K1.ActionType.DELETE,mx.structUtils.stringifyIdent(B.name)]):r.push([K1.ActionType.DELETE,"a package"])}else throw new Error("Assertion failed: Unsupported action type")}let{code:a,stdout:o}=await mx.execUtils.execvp("git",["log",`-${oWl}`,"--pretty=format:%s"],{cwd:e}),l=a===0?o.split(/\n/g).filter(I=>I!==""):[],A=K1.findConsensus(l);return K1.genCommitMessage(A,r)}var cWl={[K1.ActionType.CREATE]:[" A ","?? "],[K1.ActionType.MODIFY]:[" M "],[K1.ActionType.DELETE]:[" D "]},lWl={[K1.ActionType.CREATE]:["A "],[K1.ActionType.MODIFY]:["M "],[K1.ActionType.DELETE]:["D "]};eVt.Driver={async findRoot(e){return await K1.findVcsRoot(e,{marker:".git"})},async filterChanges(e,t,r,n){let{stdout:a}=await mx.execUtils.execvp("git",["status","-s"],{cwd:e,strict:!0}),o=a.toString().split(/\n/g),l=n?.staged?lWl:cWl;return[].concat(...o.map(f=>{if(f==="")return[];let I=f.slice(0,3),C=XFe.ppath.resolve(e,f.slice(3));if(!n?.staged&&I==="?? "&&f.endsWith("/"))return K1.expandDirectory(C).map(b=>({action:K1.ActionType.CREATE,path:b}));{let E=[K1.ActionType.CREATE,K1.ActionType.MODIFY,K1.ActionType.DELETE].find(N=>l[N].includes(I));return E!==void 0?[{action:E,path:C}]:[]}})).filter(f=>K1.isYarnFile(f.path,{roots:t,names:r}))},async genCommitMessage(e,t){return await aWl(e,t)},async makeStage(e,t){let r=t.map(n=>XFe.npath.fromPortablePath(n.path));await mx.execUtils.execvp("git",["add","--",...r],{cwd:e,strict:!0})},async makeCommit(e,t,r){let n=t.map(a=>XFe.npath.fromPortablePath(a.path));await mx.execUtils.execvp("git",["add","-N","--",...n],{cwd:e,strict:!0}),await mx.execUtils.execvp("git",["commit","-m",`${r} - -${sWl} -`,"--",...n],{cwd:e,strict:!0})},async makeReset(e,t){let r=t.map(n=>XFe.npath.fromPortablePath(n.path));await mx.execUtils.execvp("git",["reset","HEAD","--",...r],{cwd:e,strict:!0})}}});var c2s=H(Mqr=>{"use strict";Object.defineProperty(Mqr,"__esModule",{value:!0});var uWl=el(),a2s=Sn(),eye=ro(),JFe=($c(),vi(rg)),gWl=o2s(),AWl=[gWl.Driver],pqe=class extends uWl.BaseCommand{constructor(){super(...arguments),this.commit=JFe.Option.Boolean("-c,--commit",!1,{description:"Commit the staged files"}),this.reset=JFe.Option.Boolean("-r,--reset",!1,{description:"Remove all files from the staging area"}),this.dryRun=JFe.Option.Boolean("-n,--dry-run",!1,{description:"Print the commit message and the list of modified files without staging / committing"}),this.update=JFe.Option.Boolean("-u,--update",!1,{hidden:!0})}async execute(){let t=await a2s.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await a2s.Project.find(t,this.context.cwd),{driver:n,root:a}=await dWl(r.cwd),o=[t.get("cacheFolder"),t.get("globalFolder"),t.get("virtualFolder"),t.get("yarnPath")];await t.triggerHook(C=>C.populateYarnPaths,r,C=>{o.push(C)});let l=new Set;for(let C of o)for(let b of pWl(a,C))l.add(b);let A=new Set([t.get("rcFilename"),eye.Filename.lockfile,eye.Filename.manifest]),f=await n.filterChanges(a,l,A),I=await n.genCommitMessage(a,f);if(this.dryRun)if(this.commit)this.context.stdout.write(`${I} -`);else for(let C of f)this.context.stdout.write(`${eye.npath.fromPortablePath(C.path)} -`);else if(this.reset){let C=await n.filterChanges(a,l,A,{staged:!0});C.length===0?this.context.stdout.write("No staged changes found!"):await n.makeReset(a,C)}else f.length===0?this.context.stdout.write("No changes found!"):this.commit?await n.makeCommit(a,f,I):(await n.makeStage(a,f),this.context.stdout.write(I))}};pqe.paths=[["stage"]];pqe.usage=JFe.Command.Usage({description:"add all yarn files to your vcs",details:"\n This command will add to your staging area the files belonging to Yarn (typically any modified `package.json` and `.yarnrc.yml` files, but also linker-generated files, cache data, etc). It will take your ignore list into account, so the cache files won't be added if the cache is ignored in a `.gitignore` file (assuming you use Git).\n\n Running `--reset` will instead remove them from the staging area (the changes will still be there, but won't be committed until you stage them back).\n\n Since the staging area is a non-existent concept in Mercurial, Yarn will always create a new commit when running this command on Mercurial repositories. You can get this behavior when using Git by using the `--commit` flag which will directly create a commit.\n ",examples:[["Adds all modified project files to the staging area","yarn stage"],["Creates a new commit containing all modified project files","yarn stage --commit"]]});Mqr.default=pqe;async function dWl(e){let t=null,r=null;for(let n of AWl)if((r=await n.findRoot(e))!==null){t=n;break}if(t===null||r===null)throw new JFe.UsageError("No stage driver has been found for your current project");return{driver:t,root:r}}function pWl(e,t){let r=[];if(t===null)return r;for(;;){(t===e||t.startsWith(`${e}/`))&&r.push(t);let n;try{n=eye.xfs.statSync(t)}catch{break}if(n.isSymbolicLink())t=eye.ppath.resolve(eye.ppath.dirname(t),eye.xfs.readlinkSync(t));else break}return r}});var g2s=H(tye=>{"use strict";Object.defineProperty(tye,"__esModule",{value:!0});tye.stageUtils=tye.StageCommand=void 0;var l2s=(Pa(),vi(Va)),u2s=l2s.__importDefault(c2s());tye.StageCommand=u2s.default;var fWl=l2s.__importStar(Oqr());tye.stageUtils=fWl;var IWl={commands:[u2s.default]};tye.default=IWl});var Yqr=Nt(el(),1),Qqr=Nt(ro(),1),Xqr=Nt(ro(),1);var hWl=Nt(el()),mWl=Nt(Sn()),CWl=Nt(ro()),_Wl=Nt(zK()),yWl=Nt(TW()),bWl=Nt(C5e());$c();var EWl=Nt(UC());CZ();var opr={};sI(opr,{BadgesCommand:()=>j5e,default:()=>aVn});var tVn=Nt(el(),1),rVn=Nt(el(),1),nVn=Nt(Sn(),1),iVn=Nt(Sn(),1),sVn=Nt(Sn(),1),K5e=Nt(Sn(),1),oVn=Nt(Sn(),1);import{readFileSync as lHo}from"node:fs";import{writeFileSync as uHo}from"node:fs";import{join as eVn}from"node:path";var q9n=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],ipr={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var $9n=Nt(Sn(),1),spr=Nt(Sn(),1),edt=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=spr.formatUtils.pretty(this.configuration,`YN${$9n.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${spr.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} -`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var j5e=class e extends tVn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await iVn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await sVn.Project.find(t,this.context.cwd);if(!n)throw new rVn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await nVn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let l=new edt(this.context.stdout,t);l.start();let A=X=>{let ae=X.anchoredLocator.locatorHash,ne=new Map,ce=[ae];for(;ce.length>0;){let fe=ce.shift();if(fe){if(ne.has(fe))continue;let ue=r.storedPackages.get(fe);if(typeof ue>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ne.set(fe,ue),K5e.structUtils.isVirtualLocator(ue)&&ce.push(K5e.structUtils.devirtualizeLocator(ue).locatorHash),fe!==ae)continue;for(let de of ue.dependencies.values()){let be=r.storedResolutions.get(de.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ce.push(be)}}}return ne.values()},I=(()=>{let X=new Map;for(let ae of r.workspaces)for(let ne of A(ae))X.set(ne.locatorHash,ne);return X.values()})(),C=oVn.miscUtils.sortMap([...I],X=>K5e.structUtils.stringifyLocator(X)),b=async X=>{let ae=K5e.structUtils.parseDescriptor(X),ne=C.filter(ce=>ce.scope===ae.scope&&ce.name===ae.name);return ne.length>0&&ne.shift()?.version||""},E=eVn(process.cwd(),"README.md"),B=lHo(E).toString("utf-8").split(e.VERSIONS_SEPARATOR),F=await Promise.all(q9n.map(async X=>({name:X,version:await b(X)}))),Q=(X,ae)=>{let ne=()=>{let ce=ue=>({labelColor:ue.labelColor.replace("#",""),color:ue.color.replace("#","")}),fe=Object.entries(ipr).find(([ue])=>ae.name.search(ue)!==-1);if(fe){let[,ue]=fe;return ce(ue)}return ce(ipr.tools)};if(ae.version){let ce=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${ae.name}`;eVn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,ae.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:ae.name,message:ae.version,...ne()}),ue=`badge`;return`${X}${((be,Se)=>`[${be}](${Se})`)(ue,ce)} `}return X};B[1]=F.reduce(Q,""),B[1]=` - -${B[1]} - -`,uHo(E,B.join("[//]: # (VERSIONS)")),l.end()})})).exitCode()}};var aVn={commands:[j5e]};var Ufr={};sI(Ufr,{default:()=>Y3n});var P3n=Nt(el(),1),W3n=Nt(el(),1),O3n=Nt(Sn(),1),M3n=Nt(Sn(),1),H3n=Nt(Sn(),1);$c();import{relative as GJo}from"node:path";import{readFile as DJo}from"node:fs/promises";import{writeFile as kJo}from"node:fs/promises";import{join as V3n}from"node:path";import{dirname as xJo}from"node:path";var S3n=Nt(AVn(),1);import{Readable as b3n,Transform as E3n}from"stream";import{execFileSync as _Jo}from"child_process";import{Readable as bHo}from"stream";import{spawn as gHo}from"child_process";function AHo(e){return new Promise(t=>{let r="",n=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{n=a}),e.on("close",()=>{r&&(n=new Error(r)),t(n)})})}async function*rdt(e,t,r){let n=gHo(e,t,r),a=AHo(n);yield*n.stdout;let o=await a;if(o)throw o}async function dIe(e,t,r){let n=rdt(e,t,r),a,o=[];for await(a of n)o.push(a);return Buffer.concat(o)}async function*dVn(e,t){let r,n,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(n=a.split(t),a=n.pop()||"",yield*n);a&&(yield a)}function tdt(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function dHo(e){let t=[],r,n,a;for(r in e)if(n=e[r],n===!0)t.push(tdt(r));else if(n===!1)t.push(tdt(`no-${r}`));else if(Array.isArray(n))for(a of n)t.push(tdt(r,a));else n&&t.push(tdt(r,n));return t}function upr(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(...upr(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...dHo(r)):t.push(String(r)));return t}var pVn="------------------------ >8 ------------------------",Vve=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=upr(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:n="",to:a="HEAD",format:o="%B",ignore:l,...A}=t,f=l?N=>!l.test(N):()=>!0,I=this.formatArgs("log",`--format=${o}%n${pVn}`,[n,a].filter(Boolean).join(".."),A,r&&["--",r]),C=rdt("git",I,{cwd:this.cwd}),b=dVn(C,`${pVn} -`),E;for await(E of b)f(E)&&(yield E)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,n=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=rdt("git",n,{cwd:this.cwd}),o,l,A;for await(o of a){l=o.toString().trim().matchAll(r);for([,A]of l)yield A}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let n=this.formatArgs("check-ignore",t,r);try{return await dIe("git",n,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let n=this.formatArgs("add",t,r);await dIe("git",n,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:n=!1,files:a=[],message:o,...l}=t,A=this.formatArgs("commit",!r&&"--no-verify",n&&"-S",a,"-m",o,l);await dIe("git",A,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:n,message:a,...o}=t;r&&(a="");let l=this.formatArgs("tag",r&&"-s",a&&"-a",n,a&&["-m",a],o);await dIe("git",l,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await dIe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let n=this.formatArgs("push","--follow-tags","origin",t,r);await dIe("git",n,{cwd:this.cwd})}};var $5e=Nt(UC(),1);function xVn(e){return e?`${e}@`:/^.+@/}var ndt=class extends Vve{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(fpr(),wVn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(mpr(),kVn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:n,...a}=t,[o,l]=await this.loadDeps();if(n){yield*l(this.getCommits(a,r));return}let A=o(r),f=this.getRawCommits(a);yield*A(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:n,clean:a,...o}=t,l=this.getTags(o),A=/.+-\w+\.\d+$/,f=a?(b,E)=>$5e.default.clean(E||b):b=>b,I,C;for await(C of l)n&&A.test(C)||(r?(typeof r=="string"?C.startsWith(r):r.test(C))&&(I=C.replace(r,""),$5e.default.valid(I)&&(C=f(C,I),C&&(yield C))):$5e.default.valid(C)&&(C=f(C),C&&(yield C)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),n=[];for await(let a of r)n.push(a);return n.length&&n.sort($5e.default.rcompare)[0]||null}};function EHo(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: -git `+r.join(" "))}),t}async function*SHo(e){let{cwd:t,debug:r,...n}=EHo(e),a=new Vve(t,r),o;typeof n.ignore=="string"&&(n.ignore=new RegExp(n.ignore));for await(o of a.getRawCommits(n))yield o}function Cpr(e){return bHo.from(SHo(e))}fpr();var ZVn=Nt(UC(),1);function GVn(e){return new Date(e).toISOString().slice(0,10)}function FVn(e){let t=[],r=[],n;function a(l){return t[0]===l?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(l)).join(".")}]`}function o(l,A){let f=A;return t.length>0?(n=t.indexOf(this),n!==-1?(t.splice(n+1),r.splice(n,1/0,l)):(t.push(this),r.push(l)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function eMe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let n="",a="";for(let o of e)n+=t[o]||"",a+=r[o]||"";return n.localeCompare(a)}:e}var vHo=7,BHo=100;function LVn(e,t,r){let{hash:n,header:a,committerDate:o}=e;return{hash:typeof n=="string"?n.substring(0,vHo):n,header:typeof a=="string"?a.substring(0,BHo):a,committerDate:o&&r.formatDate(o)}}function VVn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:LVn,generateOn:a=>!!(0,ZVn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:GVn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:eMe(r.commitGroupsSort),commitsSort:eMe(r.commitsSort),noteGroupsSort:eMe(r.noteGroupsSort),notesSort:eMe(r.notesSort)}}function PVn(e,t){let{generateOn:r}=t;return typeof r=="string"?n=>typeof n[r]<"u":typeof r!="function"?()=>!1:(n,a)=>r(n,a,e,t)}import{Transform as bXo}from"stream";var Kve=Nt(NWn(),1);mpr();var gfr=Nt(UC(),1);function mXo(e,t){let{groupBy:r,commitGroupsSort:n,commitsSort:a}=t,o=[],l=e.reduce((A,f)=>{let I=f[r]||"";return A[I]?A[I].push(f):A[I]=[f],A},{});return Object.entries(l).forEach(([A,f])=>{a&&f.sort(a),o.push({title:A,commits:f})}),n&&o.sort(n),o}function CXo(e,t){let{noteGroupsSort:r,notesSort:n}=t,a=[];return e.forEach(o=>{let{title:l}=o,A=!1;a.forEach(f=>{f.title===l&&(A=!0,f.notes.push(o))}),A||a.push({title:l,notes:[o]})}),r&&a.sort(r),n&&a.forEach(o=>{o.notes.sort(n)}),a}function _Xo(e,t,r){return{commitGroups:mXo(e,r),noteGroups:CXo(t,r)}}function DWn(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function kWn(e,t,r,n,a,o){let l={...a,...e,..._Xo(r,n,o)};return e?.committerDate&&(l.date=e.committerDate),l.version&&gfr.default.valid(l.version)&&(l.isPatch=l.isPatch||gfr.default.patch(l.version)!==0),l=await o.finalizeContext(l,o,r,e,t),o.debug(`Your final context is: -${FVn(l)}`),l}async function xWn(e={}){let t=` -{{> header}} - -{{#each commitGroups}} -{{#each commits}} -{{> commit root=@root}} -{{/each}} -{{/each}} - -{{> footer}} - - - `,r=` -## {{#if isPatch~}} - {{~/if~}} {{version}} - {{~#if title}} "{{title}}" - {{~/if~}} - {{~#if date}} ({{date}}) - {{~/if~}} - {{~#if isPatch~}} - {{~/if}} - - `,n=` -* {{header}} - -{{~!-- commit link --}} -{{~#if @root.linkReferences}} ([{{hash}}]( - {{~#if @root.repository}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~else}} - {{~@root.repoUrl}} - {{~/if}}/ - {{~@root.commit}}/{{hash}})) -{{~else if hash}} {{hash}}{{~/if}} - -{{~!-- commit references --}} -{{~#if references~}} - , closes - {{~#each references}} {{#if @root.linkReferences~}} - [ - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}}#{{this.issue}}]( - {{~#if @root.repository}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if this.repository}} - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}} - {{~else}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~/if}} - {{~else}} - {{~@root.repoUrl}} - {{~/if}}/ - {{~@root.issue}}/{{this.issue}}) - {{~else}} - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}}#{{this.issue}} - {{~/if}}{{/each}} -{{~/if}} - - `,a=` -{{#if noteGroups}} -{{#each noteGroups}} - -### {{title}} - -{{#each notes}} -* {{text}} -{{/each}} -{{/each}} -{{/if}} - `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,l,A,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:l,commitPartial:A,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a}}function yXo(e){let{mainTemplate:t,headerPartial:r,commitPartial:n,footerPartial:a,partials:o}=e;return Kve.default.registerPartial("header",r),Kve.default.registerPartial("commit",n),Kve.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([l,A])=>{typeof A=="string"&&Kve.default.registerPartial(l,A)}),Kve.default.compile(t,{noEscape:!0})}function GWn(e,t){let{ignoreReverted:r}=t,n=yXo(t);return async(a,o)=>{let l=[],A=(r?Array.from(hpr(a)):a).map(I=>({...I,notes:I.notes.map(C=>{let b={...C,commit:I};return l.push(b),b})})),f=await kWn(o,a,A,l,e,t);return n(f)}}function FWn(e){return new Proxy(e,{get(t,r){let n=t[r];return typeof n=="object"&&n!==null?FWn(n):n},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function ZWn(e,t,r,n){let a={};return typeof t=="function"&&(a=await t(FWn(e),r,n),!a)?null:{...e,...a,raw:e}}async function EXo(e={},t={}){let r=await xWn(t),n=VVn(t,r),a=DWn(e,n),o=PVn(a,n),l=GWn(a,n);return{finalContext:a,finalOptions:n,generateOn:o,renderTemplate:l}}function SXo(e={},t={},r=!1){let n=EXo(e,t),a=r?(o,l)=>({log:o,keyCommit:l}):o=>o;return async function*(l){let{finalContext:A,finalOptions:f,generateOn:I,renderTemplate:C}=await n,{transform:b,reverse:E,doFlush:N}=f,B,F,Q,X=[],ae=!0,ne,ce=null,fe=!0;for await(B of l)F=await ZWn(B,b,A,f),Q=F||B,E?(F&&X.push(F),I(Q,X)&&(ae=!1,ne=await C(X,Q),X=[],yield a(ne,Q))):(I(Q,X)&&(ae=!1,ne=await C(X,ce),X=[],(!fe||N)&&(yield a(ne,ce)),fe=!1,ce=Q),F&&X.push(F));!N&&(E||ae)||(ne=await C(X,ce),yield a(ne,ce))}}function LWn(e,t,r=!1){return bXo.from(SXo(e,t,r))}var C3n=Nt(mfr(),1),_3n=Nt(zWn(),1);import AJo from"fs/promises";import{exec as dJo}from"child_process";import{URL as pJo}from"url";function MXo(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?xVn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function qWn(e={}){let{cwd:t,...r}=MXo(e),n=new ndt(t),a=[];for await(let o of n.getSemverTags(r))a.push(o);return a}var y3n=Nt(wfr(),1);var xOn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var GOn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var FOn={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var fJo=/github|bitbucket|gitlab/i,IJo=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function hJo(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function mJo(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function CJo(e){return new Promise((t,r)=>{dJo("git config --get remote.origin.url",{cwd:e},(n,a)=>{n?r(n):t(a.trim())})})}async function Hfr(e,t,r,n,a,o){let l;e=mJo(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let A=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ne,ce){if(typeof ne.gitTags=="string"){let fe=A.exec(ne.gitTags);A.lastIndex=0,fe&&(ne.version=fe[1])}ne.committerDate&&(ne.committerDate=IJo.format(new Date(ne.committerDate))),ce(null,ne)},lernaPackage:null,...e,pkg:{transform:function(ne){return ne},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?l=Promise.resolve().then(()=>(Mfr(),g3n)).then(async({parsePackage:ne})=>{let ce=await AJo.readFile(e.pkg.path,"utf-8");return ne(ce)}):l=Promise.resolve().then(()=>(m3n(),h3n)).then(async({readPackageUp:ne})=>{let{packageJson:ce}=await ne({cwd:e.cwd});return ce}));let f=typeof e.config=="function"?e.config():e.config,[I,C,b,E]=await Promise.allSettled([f,l,qWn({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),CJo(e.cwd)]),N,B,F,Q,X,ae=[];if(e.config?I.status==="fulfilled"?N=I.value:(e.warn(I.reason.toString()),N={}):N={},t={...t,...N.context},e.pkg&&(C.status==="fulfilled"?(B=C.value||{},B=e.pkg.transform(B)):e.pkg.path&&e.warn(C.reason.toString())),(!B||!B.repository||!B.repository.url)&&E.status==="fulfilled"&&(B=B||{},B.repository=B.repository||{},B.repository.url=E.value,(0,y3n.default)(B)),B){t.version=t.version||B.version;try{let ne=typeof B.repository=="string"?B.repository:B.repository.url;ne&&(Q=C3n.default.fromUrl(ne)||(0,_3n.default)(ne))}catch{Q={}}if(Q.browse){let ne=Q.browse();if(!t.host)if(Q.domain){let ce=new pJo(ne);ce.origin.indexOf("//")!==-1?t.host=ce.protocol+"//"+Q.domain:t.host=ce.protocol+Q.domain}else t.host=null;t.owner=t.owner||Q.user||"",t.repository=t.repository||Q.project,Q.host&&Q.project&&Q.user?t.repoUrl=ne:t.repoUrl=t.host}t.packageData=B}if(t.version=t.version||"",b.status==="fulfilled"){ae=t.gitSemverTags=b.value,F=ae[e.releaseCount-1];let ne=ae[0];(ne===t.version||ne==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!n||!n.referenceActions)){let ne;if(t.host){let ce=t.host.match(fJo);ce&&(ne=ce[0])}else Q&&Q.type&&(ne=Q.type);if(ne){switch(ne){case"gitlab":X=GOn;break;case"bitbucket":X=FOn;break;default:X=xOn;break}t={issue:X.issue,commit:X.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),X={}}else X={};return t.resetChangelog&&(F=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:F,merges:!1,debug:e.debug,...N.commits,...r},e.append&&(r.reverse=r.reverse||!0),n={...N.parser,warn:e.warn,...n},X.referenceActions&&n&&(n.referenceActions=X.referenceActions),!n.issuePrefixes?.length&&X.issuePrefixes&&(n.issuePrefixes=X.issuePrefixes),a={finalizeContext:function(ne,ce,fe,ue,de){let be=de[0],Se=de[de.length-1],De=be?be.hash:null,k=Se?Se.hash:null;if((!ne.currentTag||!ne.previousTag)&&ue){let et=/tag:\s*(.+?)[,)]/gi.exec(ue.gitTags),ct=ne.currentTag;ne.currentTag=ct||et?et[1]:null;let Me=ae.indexOf(ne.currentTag);Me===-1?ne.currentTag=ct||null:(ne.previousTag=ae[Me+1])||(e.append?ne.previousTag=ne.previousTag||De:ne.previousTag=ne.previousTag||k)}else ne.previousTag=ne.previousTag||ae[0],ne.version==="Unreleased"?e.append?ne.currentTag=ne.currentTag||k:ne.currentTag=ne.currentTag||De:ne.currentTag||(e.lernaPackage?ne.currentTag=e.lernaPackage+"@"+ne.version:e.tagPrefix?ne.currentTag=e.tagPrefix+ne.version:ne.currentTag=hJo(ae[0],ne.version));return typeof ne.linkCompare!="boolean"&&ne.previousTag&&ne.currentTag&&(ne.linkCompare=!0),ne},debug:e.debug,...N.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:n,writerOpts:a,gitRawExecOpts:o}}function Yfr(e,t,r,n,a,o){let l=e?.cwd;a=a||{};let A=new b3n({objectMode:a.includeDetails});A._read=function(){};let f=!1,I=new b3n({objectMode:!0});I._read=function(){};function C(b,E){return Cpr({...r,from:b,to:E,cwd:l}).on("error",function(N){f||(setImmediate(I.emit.bind(I),"error",N),f=!0)})}return Hfr(e,t,r,n,a,o).then(function(b){e=b.options,t=b.context,r=b.gitRawCommitsOpts,n=b.parserOpts,a=b.writerOpts,o=b.gitRawExecOpts;try{_Jo("git",["rev-parse","--verify","HEAD"],{cwd:l,stdio:"ignore"});let E=t.gitSemverTags.slice(0).reverse();E.push("HEAD"),r.from&&(E.indexOf(r.from)!==-1?E=E.slice(E.indexOf(r.from)):E=[r.from,"HEAD"]);let N=E.map((B,F)=>{let Q=F>0?E[F-1]:"";return C(Q,B)});r.from&&(N=N.splice(1)),r.reverse&&N.reverse(),N.reduce((B,F)=>F.pipe((0,S3n.default)(B))).on("data",function(B){setImmediate(I.emit.bind(I),"data",B)}).on("end",function(){setImmediate(I.emit.bind(I),"end")})}catch{I=Cpr({...r,...o})}I.on("error",function(E){E.message="Error in git-raw-commits: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(ppr(n)).on("error",function(E){E.message="Error in conventional-commits-parser: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new E3n({objectMode:!0,highWaterMark:16,transform(E,N,B){try{e.transform.call(this,E,B)}catch(F){B(F)}}})).on("error",function(E){E.message="Error in options.transform: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(LWn(t,a,a.includeDetails)).on("error",function(E){E.message="Error in conventional-changelog-writer: "+E.message,setImmediate(A.emit.bind(A),"error",E)}).pipe(new E3n({objectMode:a.includeDetails,transform(E,N,B){try{A.push(E)}catch(F){setImmediate(function(){throw F})}B()},flush(E){A.push(null),E()}}))}).catch(function(b){setImmediate(A.emit.bind(A),"error",b)}),A}import yJo from"path";function bJo(e){if(yJo.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let n=`${t}${r}`;return n!==e?[n,e]:[e]}function EJo(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function SJo(e,t){let r=null;for(let n of t)try{return EJo(await e(n))}catch(a){r||(r=a)}throw r}function vJo(e){return async function(r){let n="",a=null;if(typeof r=="string")n=r;else if(typeof r=="object"&&typeof r.name=="string")n=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=bJo(n),l=null;try{l=await SJo(e,o)}catch(A){throw new Error(`Unable to load the "${n}" preset. Please make sure it's installed.`,{cause:A})}if(typeof l!="function")throw new Error(`The "${n}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await l(a):await l()}}var v3n=vJo(e=>import(e));function Qfr(e,t,r,n,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=v3n(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return Yfr(e,t,r,n,a)}function B3n(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var F3n=Nt(Xfr(),1);async function Z3n(){let e=` -{{> header}} - -{{#each commitGroups}} - -{{#if title}} -### {{title}} - -{{/if}} -{{#each commits}} -{{> commit root=@root}} -{{/each}} - -{{/each}} -{{> footer}} - -`,t=` -{{#if isPatch~}} - ## -{{~else~}} - # -{{~/if}} {{#if @root.linkCompare~}} - [{{version}}]( - {{~#if @root.repository~}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~else}} - {{~@root.repoUrl}} - {{~/if~}} - /compare/{{previousTag}}...{{currentTag}}) -{{~else}} - {{~version}} -{{~/if}} -{{~#if title}} "{{title}}" -{{~/if}} -{{~#if date}} ({{date}}) -{{/if}} -`,r=` -*{{#if scope}} **{{scope}}:** -{{~/if}} {{#if subject}} - {{~subject}} -{{~else}} - {{~header}} -{{~/if}} - -{{~!-- commit link --}} {{#if @root.linkReferences~}} - ([{{shortHash}}]( - {{~#if @root.repository}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~else}} - {{~@root.repoUrl}} - {{~/if}}/ - {{~@root.commit}}/{{hash}})) -{{~else}} - {{~shortHash}} -{{~/if}} - -{{~!-- commit references --}} -{{~#if references~}} - , closes - {{~#each references}} {{#if @root.linkReferences~}} - [ - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}}#{{this.issue}}]( - {{~#if @root.repository}} - {{~#if @root.host}} - {{~@root.host}}/ - {{~/if}} - {{~#if this.repository}} - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}} - {{~else}} - {{~#if @root.owner}} - {{~@root.owner}}/ - {{~/if}} - {{~@root.repository}} - {{~/if}} - {{~else}} - {{~@root.repoUrl}} - {{~/if}}/ - {{~@root.issue}}/{{this.issue}}) - {{~else}} - {{~#if this.owner}} - {{~this.owner}}/ - {{~/if}} - {{~this.repository}}#{{this.issue}} - {{~/if}}{{/each}} -{{~/if}} -`,n=` -{{#if noteGroups}} -{{#each noteGroups}} - -### {{title}} - -{{#each notes}} -* {{#if commit.scope}}**{{commit.scope}}:** {{/if}}{{text}} -{{/each}} -{{/each}} - -{{/if}} -`,a=NJo();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=n,a}function NJo(){return{transform:(e,t)=>{let r=!0,n=e.notes.map(C=>(r=!1,{...C,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,l=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,A=[],f=e.subject;if(typeof f=="string"){let C=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;C&&(C=`${C}/issues/`,f=f.replace(/#([0-9]+)/g,(b,E)=>(A.push(E),`[#${E}](${C}${E})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(b,E)=>E.includes("/")?`@${E}`:`[@${E}](${t.host}/${E})`))}let I=e.references.filter(C=>!A.includes(C.issue));return{notes:n,type:a,scope:o,shortHash:l,subject:f,references:I}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:F3n.default}}function L3n(e){let t=2,r=0,n=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(n+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${n} features`:`There are ${r} BREAKING CHANGES and ${n} features`}}async function Jfr(){return{parser:B3n(),writer:await Z3n(),whatBump:L3n}}var $dt=class{async generate({path:t,packageName:r,debug:n,tagPrefix:a,file:o,releaseCount:l}){let A={lernaPackage:`${r}`,tagPrefix:a,debug:n?console.debug:void 0,warn:console.warn,append:!0,releaseCount:l,pkg:{path:V3n(t,"package.json")},config:Jfr};return o?this.generateToFile(A,t):this.generateToStdOut(A)}async generateToStdOut(t){return new Promise((r,n)=>{let a=Qfr(t,void 0,{path:xJo(t.pkg?.path??"./")}),o="";a.on("data",l=>{o+=l.toString()}),a.on("end",()=>{r(o)}),a.on("error",l=>{n(l)})})}async generateToFile(t,r){let n=V3n(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await DJo(n,"utf8")}catch(A){let f=A;if(f.code!=="ENOENT")throw f}let l=o?`${a} -${o}`:a;return await kJo(n,l,"utf8"),l}catch(a){throw console.error("Error generating changelog:",a),a}}};var ept=class extends P3n.BaseCommand{static paths=[["changelog","generate"]];debug=Su.Boolean("--debug");tagPrefix=Su.String("-t,--tag-prefix");stdOut=Su.Boolean("--stdout",!1);async execute(){let t=await O3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await H3n.Project.find(t,this.context.cwd);if(!n)throw new W3n.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await M3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Generating changelog",async()=>{let A="";n.manifest.name?.scope&&(A+=`@${n.manifest.name.scope}/`),A+=`${n.manifest.name?.name}`;let f=GJo(r.cwd,this.context.cwd);a=await new $dt().generate({path:f,packageName:A,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var Y3n={commands:[ept]};var Kfr={};sI(Kfr,{CheckCommand:()=>mMe,default:()=>X3n});var Q3n=Nt(el(),1),mMe=class extends Q3n.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var X3n={commands:[mMe]};var r1r={};sI(r1r,{ChecksLintCommand:()=>uQe,ChecksTestIntegrationCommand:()=>IQe,ChecksTestUnitCommand:()=>hQe,ChecksTypeCheckCommand:()=>mQe,default:()=>Eii});var bni=Nt(el(),1),Eni=Nt(Sn(),1),TEr=Nt(Sn(),1),Sni=Nt(Sn(),1),REr=Nt(Sn(),1),NEr=Nt(ro(),1),vni=Nt(oIr(),1),Bni=Nt(Sn(),1),DEr=Nt(ro(),1),wni=Nt(ro(),1);$c();import{readFileSync as nba}from"node:fs";import{resolve as iba}from"node:path";var Bhr=Nt(Al(),1),Moe=Nt(Al(),1);var Ehr=Nt(Al(),1),Shr=Nt(Pc(),1),A8=({children:e,line:t=0,column:r=0})=>(0,Shr.jsxs)(Ehr.Text,{color:"cyan",children:[e,(0,Shr.jsxs)(Ehr.Text,{color:"yellow",children:[":",t,":",r]})]});var hYn=Nt(Al(),1),mYn=Nt(Pc(),1),J9=({offset:e=0})=>(0,mYn.jsx)(hYn.Text,{color:"gray",children:Array.from({length:process.stdout.columns-e},()=>"\u2500").join("")});var yYn=Nt(oIr(),1),bYn=Nt(Al(),1);import vhr from"node:process";import Kjo from"node:os";import CYn from"node:tty";function bM(e,t=globalThis.Deno?globalThis.Deno.args:vhr.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function qjo(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=jjo();n!==void 0&&(Opt=n);let a=r?Opt:n;if(a===0)return 0;if(r){if(bM("color=16m")||bM("color=full")||bM("color=truecolor"))return 3;if(bM("color=256"))return 2}if("TF_BUILD"in wS&&"AGENT_NAME"in wS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(wS.TERM==="dumb")return o;if(vhr.platform==="win32"){let l=Kjo.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in wS)return"GITHUB_ACTIONS"in wS||"GITEA_ACTIONS"in wS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in wS)||wS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in wS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(wS.TEAMCITY_VERSION)?1:0;if(wS.COLORTERM==="truecolor"||wS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in wS){let l=Number.parseInt((wS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(wS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(wS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(wS.TERM)||"COLORTERM"in wS?1:o}function Mpt(e,t={}){let r=qjo(e,{streamIsTTY:e&&e.isTTY,...t});return zjo(r)}var Vru={stdout:Mpt({isTTY:CYn.isatty(1)}),stderr:Mpt({isTTY:CYn.isatty(2)})};var EYn=Nt(Pc(),1),{level:$jo}=Mpt({isTTY:!0})||{level:0},_Yn=$jo>=1,e6o=(e,t,r,n)=>(0,yYn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:_Yn,forceColor:_Yn,message:n}),d8=({children:e,line:t,column:r,message:n})=>(0,EYn.jsx)(bYn.Text,{children:e6o(e,t,r,n)});var qN=Nt(Pc(),1),SYn=({filePath:e,message:t,source:r})=>(0,qN.jsxs)(Moe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,qN.jsxs)(Moe.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,qN.jsx)(Moe.Box,{flexDirection:"row",flexGrow:1,children:(0,qN.jsx)(A8,{line:t.line,column:t.column,children:e})}),(0,qN.jsx)(Moe.Box,{children:(0,qN.jsxs)(Bhr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,qN.jsx)(Moe.Box,{children:(0,qN.jsx)(J9,{offset:2})}),!!r&&(0,qN.jsxs)(qN.Fragment,{children:[(0,qN.jsx)(Moe.Box,{children:(0,qN.jsx)(d8,{line:t.line,column:t.column,children:r})}),(0,qN.jsx)(J9,{offset:2})]}),(0,qN.jsx)(Moe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,qN.jsxs)(Bhr.Text,{color:"white",children:[" ",t.message]})})]});var wYn=Nt(Al(),1);import{isAbsolute as n6o}from"node:path";import{relative as i6o}from"node:path";import{webcrypto as BYn}from"node:crypto";var vYn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var t6o=128,DIe,fBe;function r6o(e){!DIe||DIe.lengthDIe.length&&(BYn.getRandomValues(DIe),fBe=0),fBe+=e}function OW(e=21){r6o(e-=0);let t="";for(let r=fBe-e;r{let a=(0,TYn.useMemo)(()=>n6o(e)?i6o(n,e):e,[e]);return r.length===0?null:(0,whr.jsx)(wYn.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,whr.jsx)(SYn,{filePath:a,message:o,source:t},OW()))})};import P6o from"node:events";import{readFileSync as W6o}from"node:fs";import{readFile as O6o}from"node:fs/promises";import{writeFile as M6o}from"node:fs/promises";import{relative as H6o}from"node:path";import{join as AQn}from"node:path";var $Yn=Nt(Xcr(),1),AHe=Nt(nve(),1),gHe=Nt(ZYn(),1);import N6o from"node:fs";import D6o from"node:path";var Lhr=Nt(nve(),1),XYn=Nt(lHe(),1);import B6o from"node:process";import QYn from"node:fs";import hBe from"node:path";function IBe(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as S6o}from"node:url";import{Transform as v6o}from"node:stream";var uHe=e=>e instanceof URL?S6o(e):e,Ypt=class extends v6o{constructor(t){super({objectMode:!0,transform(r,n,a){a(void 0,t(r)?r:void 0)}})}},Qpt=e=>e[0]==="!";var JYn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},UYn="**/.gitignore",w6o=(e,t)=>Qpt(e)?"!"+hBe.posix.join(t,e.slice(1)):hBe.posix.join(t,e),T6o=(e,t)=>{let r=IBe(hBe.relative(t,hBe.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>w6o(n,r))},R6o=(e,t)=>{if(t=IBe(t),hBe.isAbsolute(e)){if(IBe(e).startsWith(t))return hBe.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},KYn=(e,t)=>{let r=e.flatMap(a=>T6o(a,t)),n=(0,XYn.default)().add(r);return a=>(a=uHe(a),a=R6o(a,t),a?n.ignores(IBe(a)):!1)},jYn=(e={})=>({cwd:uHe(e.cwd)||B6o.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),zYn=async(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=jYn(t),o=await(0,Lhr.default)(e,{cwd:r,suppressErrors:n,deep:a,...JYn}),l=await Promise.all(o.map(async A=>({filePath:A,content:await QYn.promises.readFile(A,"utf8")})));return KYn(l,r)},qYn=(e,t)=>{let{cwd:r,suppressErrors:n,deep:a}=jYn(t),l=Lhr.default.sync(e,{cwd:r,suppressErrors:n,deep:a,...JYn}).map(A=>({filePath:A,content:QYn.readFileSync(A,"utf8")}));return KYn(l,r)};var k6o=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},Vhr=e=>(e=[...new Set([e].flat())],k6o(e),e),x6o=e=>{if(!e.cwd)return;let t;try{t=N6o.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},eQn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:uHe(e.cwd)},x6o(e),e),tQn=e=>async(t,r)=>e(Vhr(t),eQn(r)),Xpt=e=>(t,r)=>e(Vhr(t),eQn(r)),rQn=e=>{let{ignoreFiles:t,gitignore:r}=e,n=t?Vhr(t):[];return r&&n.push(UYn),n},G6o=async e=>{let t=rQn(e);return iQn(t.length>0&&await zYn(t,e))},nQn=e=>{let t=rQn(e);return iQn(t.length>0&&qYn(t,e))},iQn=e=>{let t=new Set;return r=>{let n=r.path||r,a=D6o.normalize(n),o=t.has(a)||e&&e(n);return t.add(a),!o}},sQn=(e,t)=>e.flat().filter(r=>t(r)),F6o=(e,t)=>(0,$Yn.default)(e).pipe(new Ypt(r=>t(r))),oQn=(e,t)=>{let r=[];for(;e.length>0;){let n=e.findIndex(o=>Qpt(o));if(n===-1){r.push({patterns:e,options:t});break}let a=e[n].slice(1);for(let o of r)o.options.ignore.push(a);n!==0&&r.push({patterns:e.slice(0,n),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(n+1)}return r},aQn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),cQn=async(e,t)=>{let r=oQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=aQn(a,n),l=n?{cwd:n}:void 0;return Promise.all(r.map(async A=>{let{patterns:f,options:I}=A;return[f,I.ignore]=await Promise.all([(0,gHe.default)(f,o),(0,gHe.default)(I.ignore,l)]),{patterns:f,options:I}}))},Phr=(e,t)=>{let r=oQn(e,t),{cwd:n,expandDirectories:a}=t;if(!a)return r;let o=aQn(a,n),l=n?{cwd:n}:void 0;return r.map(A=>{let{patterns:f,options:I}=A;return f=gHe.default.sync(f,o),I.ignore=gHe.default.sync(I.ignore,l),{patterns:f,options:I}})},b$=tQn(async(e,t)=>{let[r,n]=await Promise.all([cQn(e,t),G6o(t)]),a=await Promise.all(r.map(o=>(0,AHe.default)(o.patterns,o.options)));return sQn(a,n)}),lQn=Xpt((e,t)=>{let r=Phr(e,t),n=nQn(t),a=r.map(o=>AHe.default.sync(o.patterns,o.options));return sQn(a,n)}),vnu=Xpt((e,t)=>{let r=Phr(e,t),n=nQn(t),a=r.map(o=>AHe.default.stream(o.patterns,o.options));return F6o(a,n)}),Bnu=Xpt((e,t)=>e.some(r=>AHe.default.isDynamicPattern(r,t))),wnu=tQn(cQn),Tnu=Xpt(Phr);var dQn=Nt(lHe(),1);import{join as Z6o}from"node:path";var uQn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen",".yarn",".vscode",".next","**/**/dist/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],L6o=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],V6o=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],gQn=e=>[...L6o.map(t=>Z6o(e,t)),...V6o];var Whr=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(n=>n.severity===1).length,fatalErrorCount:r.filter(n=>n.fatal).length,warningCount:r.filter(n=>n.severity===2).length});var mBe=class e extends P6o{constructor(r,n,a,o){super();this.linter=r;this.cacheLinter=n;this.config=a;this.cwd=o;this.ignore=dQn.default.default().add(uQn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,n){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:l}=await import("@atls/code-runtime/eslint"),A=new a({configType:"flat"}),f=l.map(C=>({...C,languageOptions:{...C.languageOptions||{},parserOptions:{...C.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),I=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:n,cacheLocation:AQn(r,".config/eslint/.eslintcache")});return new e(A,I,f,n)}async lintFile(r,n){let a=await O6o(r,"utf8");if(n?.fix){let{messages:o,fixed:l,output:A}=this.linter.verifyAndFix(a,this.config,{filename:r});return l&&await M6o(r,A,"utf8"),Whr(r,A,o)}return Whr(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],n){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let l=await this.lintFile(o,n);a.push(l),this.emit("lint:end",{result:l})}return this.emit("end",{results:a}),a}async lint(r,n){let o=(r&&r.length>0?r:await b$(gQn(this.cwd),{dot:!0})).filter(l=>this.ignore.filter([H6o(this.cwd,l)]).length!==0);return n?.cache?this.lintWithCache(o):this.lintFiles(o,n)}async lintWithCache(r=[]){this.emit("start",{files:r});let n=await this.cacheLinter.lintFiles(r);for(let a of n)this.emit("lint:end",{result:a});return this.emit("end",{results:n}),n}getProjectIgnorePatterns(){let r=W6o(AQn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var pQn=Nt(Al(),1);import{EventEmitter as Y6o}from"node:events";var Jpt=class extends Y6o{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},xE=e=>{let t=new Jpt,r=new Jpt,{cleanup:n}=(0,pQn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return n(),[...t.frames,...r.frames].join(` -`)};var SEr={};sI(SEr,{FilesChangedListCommand:()=>aQe,default:()=>Ini,getChangedCommmits:()=>Pmt,getChangedFiles:()=>oO,getCommitData:()=>lni,getEventCommmits:()=>cni,getGithubChangedFiles:()=>uni});var gni=Nt(el(),1),Ani=Nt(el(),1),dni=Nt(Sn(),1),pni=Nt(Sn(),1),fni=Nt(Sn(),1);$c();var sO=Nt(iTe(),1),Vmt=Nt(iTe(),1),ani=Nt(Sn(),1),Hya=100,cni=async()=>{if(sO.context.eventName==="push")return sO.context.payload.commits;if(sO.context.eventName==="pull_request"&&sO.context.payload.pull_request){let e=sO.context.payload.pull_request.commits_url;return(0,Vmt.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,sO.context.repo)}return console.log(`Unknown event "${sO.context.eventName}". Only "push" and "pull_request" supported.`),[]},lni=async e=>{let t=(0,Vmt.getOctokit)(process.env.GITHUB_TOKEN),r=[],n;for await(let a of t.paginate.iterator(t.rest.repos.getCommit,{...sO.context.repo,ref:e,per_page:Hya})){let o=a;n??=o,r.push(...o.data.files??[])}if(!n)throw new Error(`Could not resolve commit "${e}"`);return{...n,data:{...n.data,files:r}}},Pmt=async()=>{let e=await cni();return Promise.all(e.map(async t=>lni(t.id||t.sha)))},uni=async()=>{if(sO.context.eventName==="pull_request"&&sO.context.payload.pull_request){let t=(0,Vmt.getOctokit)(process.env.GITHUB_TOKEN);return(await t.paginate(t.rest.pulls.listFiles,{...sO.context.repo,pull_number:sO.context.payload.pull_request.number,per_page:100})).map(n=>n.filename).filter(Boolean)}return(await Pmt()).map(t=>t.data.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat()},oO=async(e,t)=>{let{stdout:r}=await ani.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0}),n=r.split(/\r?\n/).filter(Boolean);return n.length>0?n:!t&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?uni():[]};var aQe=class extends gni.BaseCommand{static paths=[["files","changed","list"]];json=Su.Boolean("--json",!1);async execute(){let t=await dni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await pni.Project.find(t,this.context.cwd);if(!n)throw new Ani.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await fni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await oO(r);for(let A of l)o.reportInfo(null,A),o.reportJson({location:A})})).exitCode()}};var Ini={commands:[aQe]};var _ni=Nt(Sn(),1),vEr=Nt(ro(),1),lQe=Nt(ro(),1),BEr=Nt(ro(),1);import{join as zya}from"node:path";var cQe="RAIJIN_NODE_LOADER",hni="--import",Yya="data:text/javascript,import%20%7B%20register%20%7D%20from%20%22node%3Amodule%22%3B",Qya=new Set(["--experimental-loader","--loader"]),Xya=e=>`data:text/javascript,${encodeURIComponent(['import { register } from "node:module";','import { pathToFileURL } from "node:url";',`register(${JSON.stringify(e)}, pathToFileURL("./"));`].join(" "))}`,Jya=(e,t,r)=>[e,t,r].filter(Boolean).join(" "),Uya=e=>e?.startsWith(Yya)??!1,Kya=e=>e?.includes(".pnp.loader.mjs")??!1,jya=e=>{if(!e)return;let t=e.split(/\s+/).filter(Boolean),r=[];for(let n=0;n0?r.join(" "):void 0},Wmt=e=>{let t=e[cQe];if(!t)return;let r=jya(e.NODE_OPTIONS);e.NODE_OPTIONS=Jya(r,hni,Xya(t))};var qya=process.platform==="win32"?"yarn.cmd":"yarn",$ya=process.platform==="win32"?"node.cmd":"node",eba=process.platform==="win32"?["yarn.cmd","yarnpkg.cmd"]:["yarn","yarnpkg"],mni=e=>`'${e.replaceAll("'","'\\''")}'`,Cni=(e,t)=>process.platform==="win32"?`@echo off\r -"${e}" ${t.map(r=>`"${r.replaceAll('"','""')}"`).join(" ")} %*\r -`:`#!/bin/sh -exec ${mni(e)} ${t.map(mni).join(" ")} "$@" -`,wEr=e=>{let t=e.configuration.get("yarnPath");return t?lQe.ppath.isAbsolute(t)?t:lQe.ppath.join(e.cwd,t):null},tba=async(e,t,r)=>{let n=wEr(t);if(!n)return;let a=vEr.npath.toPortablePath(e),o=Cni(process.execPath,[vEr.npath.fromPortablePath(n)]);await Promise.all([...r?[BEr.xfs.writeFilePromise(lQe.ppath.join(a,$ya),Cni(process.execPath,[]),{mode:493})]:[],...eba.map(async l=>BEr.xfs.writeFilePromise(lQe.ppath.join(a,l),o,{mode:493}))])},iC=async({binFolder:e,locator:t,project:r,env:n={},nodeLoader:a})=>{let o=await _ni.scriptUtils.makeScriptEnv({binFolder:e,locator:t,project:r,ignoreCorepack:!0}),l={...o,...n,...a?{[cQe]:a}:{}};return Wmt(l),await tba(o.BERRY_BIN_FOLDER,r,a),{executable:zya(o.BERRY_BIN_FOLDER,qya),env:l}};var yni=Nt(iTe(),1),sTe=Nt(iTe(),1);var WM=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,yni.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async update(t){return(await this.octokit.rest.checks.update(t)).data}async start(){let{payload:t}=sTe.context;return this.create({...sTe.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){return this.update({...sTe.context.repo,check_run_id:t,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t,r){let{payload:n}=sTe.context,a={...sTe.context.repo,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t};return r?this.update({...a,check_run_id:r}):this.create({...a,name:this.name,head_sha:n.after||n.pull_request?.head.sha||process.env.GITHUB_SHA})}};var Tni=Nt(Pc(),1),uQe=class extends bni.BaseCommand{static paths=[["checks","lint"]];changed=Su.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(NEr.Filename.pnpCjs)&&t.includes(NEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await TEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await REr.Project.find(t,this.context.cwd),n=await DEr.xfs.mktempPromise(),a=["checks","lint",...this.changed?["--changed"]:[]],{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Bni.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await TEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await REr.Project.find(t,this.context.cwd);return(await Eni.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new WM("Lint"),{id:l}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let A=await mBe.initialize(r.cwd,this.context.cwd),f=await this.getLintTargets(r),I=[];f===null?I=await A.lint():f.length>0&&(I=await A.lint(f)),I.filter(N=>N.messages.length>0).forEach(N=>{xE((0,Tni.jsx)(RYn,{...N})).split(` -`).forEach(F=>{a.reportInfo(Sni.MessageName.UNNAMED,F)})});let C=this.formatResults(I,r.cwd),b=C.filter(N=>N.annotation_level==="warning").length,E=C.filter(N=>N.annotation_level==="failure").length;await o.complete(l,{title:C.length>0?`Errors ${E}, Warnings ${b}`:"Successful",summary:C.length>0?`Found ${E} errors and ${b} warnings`:"All checks passed",annotations:C})}catch(A){await o.failure({title:"Lint run failed",summary:A instanceof Error?A.message:A},l)}})})).exitCode()}async getLintTargets(t){if(!this.changed)return null;let r=(await oO(t)).filter(a=>/\.(c|m)?(j|t)sx?$/.test(a)),n=await Promise.all(r.map(async a=>DEr.xfs.existsPromise(wni.npath.toPortablePath(iba(t.cwd,a)))));return r.filter((a,o)=>n[o])}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(n=>n.messages.length>0).map(n=>n.messages.map(a=>{let o=(a.line||0)+1;return{path:r?n.filePath.substring(r.length+1):n.filePath,start_line:o,end_line:o,annotation_level:this.getAnnotationLevel(a.severity),raw_details:(0,vni.codeFrameColumns)(nba(n.filePath).toString(),{start:{line:a.line||0,column:a.column||0}},{highlightCode:!1}),title:`(${a.ruleId||"unknown"}): ${a.message}`,message:a.message}})).flat()}};var Uni=Nt(el(),1),ZEr=Nt(Sn(),1),LEr=Nt(Sn(),1),VEr=Nt(ro(),1),Kni=Nt(Sn(),1),jni=Nt(ro(),1),zni=Nt(ro(),1);$c();$c();gQe();var FEr={};sI(FEr,{WorkspacesChangedForeachCommand:()=>AQe,WorkspacesChangedListCommand:()=>dQe,default:()=>Qni,getChangedWorkspaces:()=>She,getWorkspaceDependencies:()=>xEr,getWorkspaceDependents:()=>GEr});var xni=Nt(el(),1),Gni=Nt(el(),1),Fni=Nt(Sn(),1),Zni=Nt(Sn(),1),Lni=Nt(Sn(),1),Vni=Nt(Sn(),1);$c();var Dni=Nt(Sn(),1);var Nni=Nt(Sn(),1),xEr=e=>{let{project:t}=e,r=new Set,n=({manifest:a})=>{for(let o of Nni.Manifest.hardDependencies)for(let l of a.getForScope(o).values()){let A=t.tryWorkspaceByDescriptor(l);A&&!r.has(A)&&(r.add(A),n(A))}};return n(e),[...r]};var GEr=e=>{let t=new Set;for(let r of e.project.workspaces)xEr(r).some(a=>Dni.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var She=(e,t)=>{let r=new Set;for(let n of e.workspaces)if(t.some(o=>o.startsWith(n.relativeCwd))&&!r.has(n)){r.add(n);for(let o of GEr(n))r.add(o)}return[...r]};var kni=(e,t)=>{let r=["workspaces","foreach"];return e.forEach(n=>{r.push("--include"),r.push(n)}),r.push("--all"),t.exclude&&(r.push("--exclude"),r.push(t.exclude)),t.verbose&&r.push("--verbose"),t.parallel&&r.push("--parallel"),t.interlaced&&r.push("--interlaced"),t.publicOnly&&r.push("--no-private"),t.topological&&r.push("--topological"),t.topologicalDev&&r.push("--topological-dev"),t.jobs&&(r.push("--jobs"),r.push(String(t.jobs))),r};var AQe=class extends xni.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=Su.String("--exclude","");verbose=Su.Boolean("-v,--verbose",!1);parallel=Su.Boolean("-p,--parallel",!1);workTree=Su.Boolean("-W,--worktree",!0);all=Su.Boolean("-A,--all",!1);recursive=Su.Boolean("-R,--recursive",!1);since=Su.String("--since","");interlaced=Su.Boolean("-i,--interlaced",!1);publicOnly=Su.Boolean("--no-private",!1);topological=Su.Boolean("-t,--topological",!1);topologicalDev=Su.Boolean("--topological-dev",!1);jobs=Su.String("-j,--jobs");commandName=Su.String();args=Su.Proxy();async execute(){let t=await Fni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Zni.Project.find(t,this.context.cwd);if(!n)throw new Gni.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await oO(r,this.since),o=She(r,a);if(!o.length)return(await Lni.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let l=kni(o.map(A=>Vni.structUtils.stringifyIdent(A.anchoredLocator)),{exclude:this.exclude,verbose:this.verbose,parallel:this.parallel,interlaced:this.interlaced,publicOnly:this.publicOnly,topological:this.topological,topologicalDev:this.topologicalDev,jobs:this.jobs});return this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var Pni=Nt(el(),1),Wni=Nt(el(),1),Oni=Nt(Sn(),1),Mni=Nt(Sn(),1),Hni=Nt(Sn(),1),Yni=Nt(Sn(),1);$c();var dQe=class extends Pni.BaseCommand{static paths=[["workspaces","changed","list"]];json=Su.Boolean("--json",!1);async execute(){let t=await Oni.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await Mni.Project.find(t,this.context.cwd);if(!n)throw new Wni.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Hni.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let l=await oO(r),A=She(r,l);for(let f of A)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?Yni.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var Qni={commands:[AQe,dQe]};import{PassThrough as oba}from"node:stream";var pQe=class{stream=new oba;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var Omt=class{stdout;stderr;stdoutOutput=new pQe;stderrOutput=new pQe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` -`)}};var fQe={enabled:!0,privateWorkspaces:!0},Xni=e=>typeof e=="object"&&e!==null,Mmt=e=>{let t=e.topLevelWorkspace.manifest.raw.tools;if(!Xni(t?.checks))return fQe;let{release:r}=t.checks;if(r===!1)return{...fQe,enabled:!1};if(!Xni(r))return fQe;let n=r;return{enabled:n.enabled===!1?!1:fQe.enabled,privateWorkspaces:n.privateWorkspaces===!1?!1:fQe.privateWorkspaces}},Jni=(e,t)=>t.privateWorkspaces||!e.manifest.private;var aba=e=>["checks","release",...e?["--no-private"]:[]],Hmt=class extends Uni.BaseCommand{static paths=[["checks","release"]];static usage=_C.Usage({description:"run the release GitHub check for changed workspaces",details:` - By default this keeps the existing release check behavior and builds every changed workspace with a build script. - Use --no-private or top-level package.json tools.checks.release.privateWorkspaces=false - when private application workspaces should not participate in release checks. - Set top-level package.json tools.checks.release=false to disable this check from checks run. - `});noPrivate=Su.Boolean("--no-private",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(VEr.Filename.pnpCjs)&&t.includes(VEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await ZEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await LEr.Project.find(t,this.context.cwd),n=await zni.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await Kni.execUtils.pipevp(a,aba(this.noPrivate),{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let{project:t}=await LEr.Project.find(await ZEr.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=Mmt(t),n={...r,privateWorkspaces:this.noPrivate?!1:r.privateWorkspaces},a=r.enabled?She(t,await oO(t)).filter(A=>Jni(A,n)):[],o=new WM("Release"),{id:l}=await o.start();try{let A=[];for await(let f of a)if(f.manifest.scripts.get("build")){let I=new Omt,C=E=>this.context.stdout.write(E);I.stdout.on("data",C),I.stderr.on("data",C);let b=await this.cli.run(["workspace",f.manifest.raw.name,"build"],I);b>0&&A.push({annotation_level:"failure",title:`Error release workspace ${f.manifest.raw.name??f.relativeCwd}`,message:`Exit code ${b}`,raw_details:K$(I.output),path:jni.ppath.join(f.relativeCwd,"package.json"),start_line:1,end_line:1}),I.stdout.off("data",C),I.stderr.off("data",C)}await o.complete(l,{title:A.length>0?`Errors ${A.length}`:"Successful",summary:A.length>0?`Found ${A.length} errors`:"All checks passed",annotations:A})}catch(A){await o.failure({title:"Release run failed",summary:A instanceof Error?A.message:A},l)}return 0}};var qni=Nt(el(),1),$ni=Nt(Sn(),1),eii=Nt(Sn(),1),PEr=Nt(Sn(),1),tii=Nt(Sn(),1),rii=Nt(Sn(),1),nii=Nt(ro(),1);$c();$c();var Ymt=class extends qni.BaseCommand{static paths=[["checks","run"]];static usage=_C.Usage({description:"run the standard GitHub check sequence",details:` - The standard sequence is typecheck, lint, unit tests, integration tests, then release. - Use --no-release for private application pipelines that need the standard checks without the Release check. - The same release step can be disabled from top-level package.json with tools.checks.release=false. - `});changed=Su.Boolean("--changed",!1);noRelease=Su.Boolean("--no-release",!1);async execute(){let t=await eii.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await tii.Project.find(t,this.context.cwd),n=Mmt(r);return(await $ni.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await this.runCheck(r,r.cwd,["typecheck"],o)!==0||await this.runCheck(r,r.cwd,["lint"],o)!==0||(await Promise.all([this.runCheck(r,r.cwd,["test","unit"],o),this.runCheck(r,r.cwd,["test","integration"],o)])).some(A=>A!==0)||!this.noRelease&&n.enabled&&await this.runCheck(r,r.cwd,["release"],o)})).exitCode()}async runCheck(t,r,n,a){try{let l=this.changed&&(n[0]==="lint"||n[0]==="typecheck")&&!n.includes("--changed")?[...n,"--changed"]:n,A=await nii.xfs.mktempPromise(),{executable:f,env:I}=await iC({binFolder:A,project:t}),{code:C}=await rii.execUtils.pipevp(f,["checks",...l],{cwd:r,env:I,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return C!==0&&a.reportError(PEr.MessageName.UNNAMED,`Run check ${n.join(" ")} failed: ${C}`),C}catch(o){return a.reportError(PEr.MessageName.UNNAMED,`Run check ${n.join(" ")} error: ${o instanceof Error?o.message:o}`),1}}};var pii=Nt(Sn(),1),YEr=Nt(Sn(),1),QEr=Nt(Sn(),1),XEr=Nt(ro(),1),fii=Nt(Sn(),1),Iii=Nt(ro(),1);import Aba from"node:events";import{readFileSync as dba}from"node:fs";import{relative as WEr}from"node:path";import{join as pba}from"node:path";import{run as oii}from"node:test";import{tap as aii}from"node:test/reporters";var cii=Nt(lHe(),1);import{readFile as cba}from"node:fs/promises";var Qmt=class{static async load(t){return Promise.all(t.map(async r=>{let n=await cba(r,"utf8");return{file:r,source:n,tests:n.match(/test\(/gm)?.length||0}}))}};var lba="RAIJIN_TEST_EXEC_ARGV";var uba="@atls/code-runtime/runtime-exec-argv",gba=async()=>await import(uba);var iii=async e=>{let{createRuntimeExecArgv:t}=await gba();return t(e)},sii=(e=process.env[lba])=>{if(!e)return[];try{let t=JSON.parse(e);if(Array.isArray(t)&&t.every(r=>typeof r=="string"))return t}catch{return[]}return[]};var fba=1e3,oTe=(e,t)=>({type:e,data:t}),Iba=e=>!e.file,hba=e=>e.includes(` -not ok `)||/# (?:fail|cancelled) [1-9]\d*/.test(e),V8=class e extends Aba{constructor(r){super();this.cwd=r;this.ignore=cii.default.default().add(this.getProjectIgnorePatterns())}ignore;async run(r,n,a,o=!1,l){let A=sii(),f=A.length>0?A:await iii(this.cwd),I={files:r,timeout:n,concurrency:a,watch:o,...f.length>0?{execArgv:f}:{}};if(l==="tap"){let X=oii(I),ae=X.compose(aii);return ae.pipe(process.stdout),this.collectTestsStream(X,ae,o)}let C=await Qmt.load(r);this.emit("start",{tests:C});let b=oii(I),E=b.compose(aii),N=X=>{this.emit("test:pass",X)},B=X=>{this.emit("test:fail",X)},F=X=>{this.emit("test:stdout",X)},Q=X=>{this.emit("test:stderr",X)};b.on("test:pass",N),b.on("test:fail",B),b.on("test:stdout",F),b.on("test:stderr",Q);try{return await this.collectTestsStream(b,E,o)}finally{this.emit("end"),b.off("test:pass",N),b.off("test:fail",B),b.off("test:stdout",F),b.off("test:stderr",Q)}}static async initialize(r){return new e(r)}async collectTestsStream(r,n,a=!1){let o=[],l="",A=setInterval(()=>{},fba);return new Promise((f,I)=>{let C=()=>{};function b(){C(),f(o)}function E(fe){o.push(oTe("test:pass",fe))}function N(fe){o.push(oTe("test:fail",fe))}function B(fe){o.push(oTe("test:stdout",fe))}function F(fe){o.push(oTe("test:stderr",fe))}function Q(fe){o.push(oTe("test:summary",fe)),!a&&Iba(fe)&&b()}function X(fe){l+=fe.toString()}function ae(){hba(l)&&o.push(oTe("test:fail",{})),b()}function ne(){b()}function ce(fe){C(),I(fe)}C=()=>{clearInterval(A),r.off("test:pass",E),r.off("test:fail",N),r.off("test:stdout",B),r.off("test:stderr",F),r.off("test:summary",Q),r.off("end",ne),r.off("error",ce),n?.off("data",X),n?.off("end",ae),n?.off("error",ce)},r.on("test:pass",E),r.on("test:fail",N),r.on("test:stdout",B),r.on("test:stderr",F),r.on("test:summary",Q),r.once("end",ne),r.once("error",ce),n?.on("data",X),n?.once("end",ae),n?.once("error",ce)})}async unit(r,n){let o=(await this.collectTestFiles(r,"unit",n?.files)).filter(l=>this.ignore.filter([WEr(this.cwd,l)]).length!==0);return this.run(o,24e4,!0,n?.watch,n?.testReporter)}async integration(r,n){let o=(await this.collectTestFiles(r,"integration",n?.files)).filter(l=>this.ignore.filter([WEr(this.cwd,l)]).length!==0);return this.run(o,42e4,!1,n?.watch,n?.testReporter)}async general(r,n){let o=(await this.collectTestFiles(r,void 0,n?.files)).filter(l=>this.ignore.filter([WEr(this.cwd,l)]).length!==0);return this.run(o,42e4,!0,n?.watch,n?.testReporter)}async collectTestFiles(r,n,a){let o="*";return n!==void 0&&(o=n==="unit"?"!(integration)":"integration"),!a||a.length<1?b$([`**/${o}/*.test.{ts,tsx,js,jsx}`],{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):b$(a.map(l=>this.isFilename(l)?`**/${o}/*${l}*.test.{ts,tsx,js,jsx}`:this.isRootPath(l)?l:`**/${l}`),{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(r){let n=r.includes("/")||r.includes("\\"),a=/\.(js|jsx|ts|tsx)$/.test(r);return!n&&!a}isRootPath(r){return r.startsWith("/")||r.startsWith("\\")}getProjectIgnorePatterns(){let r=dba(pba(this.cwd,"package.json"),"utf-8"),{testIgnorePatterns:n=[]}=JSON.parse(r);return n}};var dii=Nt(el(),1);import{relative as mba}from"node:path";var Cba=1,_ba="failure",uii=new Set(["test failed"]),yba=["Error","AssertionError","TypeError:","SyntaxError:","ReferenceError:","RangeError:"],MEr=e=>typeof e=="object"&&e!==null,OEr=e=>typeof e=="string"&&e.length>0?e:void 0,vhe=e=>MEr(e)?OEr(e.message):OEr(e),lii=e=>{if(MEr(e))return OEr(e.stack)},Xmt=e=>{if(!MEr(e)||e.cause===void 0)return e;let t=Xmt(e.cause),r=vhe(t);return r&&!uii.has(r)?t:e},HEr=e=>e===void 0||uii.has(e),bba=e=>e.reduce((t,r)=>{if(r.type!=="test:stderr")return t;let{file:n,message:a}=r.data;return n&&a&&t.set(n,`${t.get(n)??""}${a}`),t},new Map),gii=e=>e?e.split(` -`).map(r=>r.trim()).filter(Boolean).find(r=>yba.some(n=>r.startsWith(n))):void 0,Eba=e=>e.reduce((t,r)=>(r.file&&t.set(r.file,(t.get(r.file)??0)+1),t),new Map),Sba=(e,t,r)=>{if(!t||r>1)return!1;let n=Xmt(e),a=vhe(n);return HEr(a)&&gii(t)!==void 0},vba=(e,t)=>{let r=Xmt(e),n=vhe(r),a=gii(t);return a&&HEr(n)?a:n??vhe(e)??"Test failed"},Bba=(e,t)=>{let r=Xmt(e),n=vhe(r);return t&&HEr(n)?t.trim():lii(r)??vhe(r)??lii(e)??vhe(e)??"Test failed"},Aii=(e,t,r=[])=>{let n=bba(r),a=Eba(e);return e.map(o=>{let l=o.file?n.get(o.file):void 0,A=o.file?a.get(o.file)??0:0,f=Sba(o.details.error,l,A)?l:void 0,I=vba(o.details.error,f),C=o.line??Cba;return{path:o.file?mba(t,o.file):t,start_line:C,end_line:C,annotation_level:_ba,raw_details:Bba(o.details.error,f),title:I,message:I}})};var aTe=class extends dii.BaseCommand{formatResults(t,r,n=[]){return Aii(t,r,n)}};var IQe=class extends aTe{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(XEr.Filename.pnpCjs)&&t.includes(XEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await YEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await QEr.Project.find(t,this.context.cwd),n=await Iii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await fii.execUtils.pipevp(a,["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){if(!process.env.GITHUB_TOKEN)return this.cli.run(["test","integration"]);let t=await YEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await QEr.Project.find(t,this.context.cwd);return(await pii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new WM("Test:Integration"),{id:o}=await a.start();try{let A=await(await V8.initialize(this.context.cwd)).integration(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Integration run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var hii=Nt(Sn(),1),JEr=Nt(Sn(),1),UEr=Nt(Sn(),1),KEr=Nt(ro(),1),mii=Nt(Sn(),1),Cii=Nt(ro(),1);var hQe=class extends aTe{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(KEr.Filename.pnpCjs)&&t.includes(KEr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await JEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await UEr.Project.find(t,this.context.cwd),n=await Cii.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await mii.execUtils.pipevp(a,["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){if(!process.env.GITHUB_TOKEN)return this.cli.run(["test","unit"]);let t=await JEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await UEr.Project.find(t,this.context.cwd);return(await hii.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new WM("Test:Unit"),{id:o}=await a.start();try{let A=await(await V8.initialize(this.context.cwd)).unit(r.cwd),f=this.formatResults(A.filter(I=>I.type==="test:fail").map(I=>I.data),r.cwd,A);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(l){await a.failure({title:"Test:Unit run failed",summary:l instanceof Error?l.message:l},o)}})).exitCode()}};var _ii=Nt(el(),1),zEr=Nt(Sn(),1),qEr=Nt(Sn(),1),yii=Nt(Sn(),1),Jmt=Nt(Sn(),1),$Er=Nt(ro(),1),bii=Nt(Sn(),1),cTe=Nt(ro(),1),e1r=Nt(ro(),1),t1r=Nt(ro(),1);$c();import{spawn as wba}from"node:child_process";import{resolve as Tba}from"node:path";var jEr=5*60*1e3,mQe=class extends _ii.BaseCommand{static paths=[["checks","typecheck"]];changed=Su.Boolean("--changed",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes($Er.Filename.pnpCjs)&&t.includes($Er.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await zEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qEr.Project.find(t,this.context.cwd),n=await cTe.xfs.mktempPromise(),a=["checks","typecheck",...this.changed?["--changed"]:[]],{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await bii.execUtils.pipevp(o,a,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await zEr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await qEr.Project.find(t,this.context.cwd);return(await yii.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new WM("TypeCheck");try{let{id:l}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let A=await this.getIncludes(r);if(this.changed&&A.length===0){a.reportInfo(Jmt.MessageName.UNNAMED,"No TypeScript files changed"),await o.complete(l,{title:"Successful",summary:"No TypeScript files changed",annotations:[]});return}a.reportInfo(Jmt.MessageName.UNNAMED,`TypeCheck targets: ${A.length}`);let f=await this.runTypecheck(r,A);f===0?await o.complete(l,{title:"Successful",summary:"All checks passed",annotations:[]}):(await o.failure({title:"TypeCheck run failed",summary:f===124?`TypeCheck timed out after ${jEr/1e3}s`:`TypeCheck failed with exit code ${f}`},l),a.reportError(Jmt.MessageName.UNNAMED,f===124?`TypeCheck timed out after ${jEr/1e3}s`:`TypeCheck failed with exit code ${f}`))}catch(A){await o.failure({title:"TypeCheck run failed",summary:A instanceof Error?A.message:A},l)}})}catch(l){await o.failure({title:"TypeCheck start failed",summary:l instanceof Error?l.message:l})}})).exitCode()}async getIncludes(t){if(this.changed){let r=(await oO(t)).filter(a=>/\.(cts|mts|ts|tsx)$/.test(a)),n=await Promise.all(r.map(async a=>cTe.xfs.existsPromise(e1r.npath.toPortablePath(Tba(t.cwd,a)))));return r.filter((a,o)=>n[o])}if(await cTe.xfs.existsPromise(t1r.ppath.join(t.cwd,"tsconfig.json"))){let r=await cTe.xfs.readJsonPromise(t1r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}async runTypecheck(t,r){let n=await cTe.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:t,env:{COMMAND_PROXY_EXECUTION:"true"}}),l;return new Promise((A,f)=>{let I=!1,C=wba(a,["typecheck",...r],{cwd:e1r.npath.fromPortablePath(t.cwd),env:o,stdio:["ignore","pipe","pipe"]});C.stdout.pipe(this.context.stdout,{end:!1}),C.stderr.pipe(this.context.stderr,{end:!1}),l=setTimeout(()=>{I=!0,C.kill("SIGTERM"),setTimeout(()=>{C.killed||C.kill("SIGKILL")},5e3).unref()},jEr),C.on("error",f),C.on("close",b=>{l&&clearTimeout(l),A(I?124:b??1)})})}};var Eii={commands:[IQe,hQe,mQe,uQe,Hmt,Ymt]};var i1r={};sI(i1r,{beforeWorkspacePacking:()=>n1r,default:()=>Sii});var n1r=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var Sii={hooks:{beforeWorkspacePacking:n1r}};var TBr={};sI(TBr,{default:()=>phi});var Cli=Nt(el(),1),_li=Nt(Sn(),1),yli=Nt(Sn(),1);var Msi=Nt(Tii(),1);var Mii=Nt(Wii(),1);function Oii(e){let t=[];return new Promise((r,n)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",n).on("end",()=>r(t)))}async function Hii(e,t={}){return Oii((0,Mii.default)(e,{cwd:t.cwd}))}import qba from"path";import _Qe from"node:path";import Yba from"node:process";import Qba from"node:path";import Kuu,{promises as Yii}from"node:fs";import{fileURLToPath as Xba}from"node:url";var s1r=class{value;next;constructor(t){this.value=t}},CQe=class{#e;#t;#n;constructor(){this.clear()}enqueue(t){let r=new s1r(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#n++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#n--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#n=0}get size(){return this.#n}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function Kmt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new CQe,r=0,n=()=>{r--,t.size>0&&t.dequeue()()},a=async(A,f,I)=>{r++;let C=(async()=>A(...I))();f(C);try{await C}catch{}n()},o=(A,f,I)=>{t.enqueue(a.bind(void 0,A,f,I)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},l=(A,...f)=>new Promise(I=>{o(A,I,f)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),l}var jmt=class extends Error{constructor(t){super(),this.value=t}},Mba=async(e,t)=>t(await e),Hba=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new jmt(t[0]);return!1};async function o1r(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:n=!0}={}){let a=Kmt(r),o=[...e].map(A=>[A,a(Mba,A,t)]),l=Kmt(n?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(A=>l(Hba,A)))}catch(A){if(A instanceof jmt)return A.value;throw A}}var Qii={directory:"isDirectory",file:"isFile"};function Jba(e){if(!Object.hasOwnProperty.call(Qii,e))throw new Error(`Invalid type specified: ${e}`)}var Uba=(e,t)=>t[Qii[e]](),Kba=e=>e instanceof URL?Xba(e):e;async function a1r(e,{cwd:t=Yba.cwd(),type:r="file",allowSymlinks:n=!0,concurrency:a,preserveOrder:o}={}){Jba(r),t=Kba(t);let l=n?Yii.stat:Yii.lstat;return o1r(e,async A=>{try{let f=await l(Qba.resolve(t,A));return Uba(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}Vfr();var jba=Symbol("findUpStop");async function zba(e,t={}){let r=_Qe.resolve(hMe(t.cwd)??""),{root:n}=_Qe.parse(r),a=_Qe.resolve(r,hMe(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,l=[e].flat(),A=async I=>{if(typeof e!="function")return a1r(l,I);let C=await e(I.cwd);return typeof C=="string"?a1r([C],I):C},f=[];for(;;){let I=await A({...t,cwd:r});if(I===jba||(I&&f.push(_Qe.resolve(r,I)),r===a||f.length>=o))break;r=_Qe.dirname(r)}return f}async function c1r(e,t={}){return(await zba(e,{...t,limit:1}))[0]}var Xii=$ba;async function $ba(e){let t=await eEa(e);return typeof t!="string"?t:qba.join(t,"..")}async function eEa(e){let t=await c1r(".git",{cwd:e,type:"file"}),r=await c1r(".git",{cwd:e,type:"directory"});return t||r}import tEa from"fs/promises";import zmt from"path";import Jii from"fs/promises";async function Uii(e,t){if(typeof t=="string")return zmt.resolve(e,t);let r=zmt.join(e,".git");if((await Jii.lstat(r)).isDirectory())return zmt.join(e,".git/COMMIT_EDITMSG");let o=(await Jii.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` -`,"");return zmt.resolve(e,o,"COMMIT_EDITMSG")}async function Kii(e,t){let r=await Xii(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let n=await Uii(r,t);return[`${(await tEa.readFile(n)).toString("utf-8")} -`]}var Vsi=Nt(Zct(),1);import{Buffer as I1a}from"node:buffer";import h1a from"node:path";import x1r from"node:child_process";import ACt from"node:process";function l1r(e){let t=typeof e=="string"?` -`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import $mt from"node:process";import yQe from"node:path";import{fileURLToPath as jii}from"node:url";function qmt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"}var rEa=({cwd:e=$mt.cwd(),path:t=$mt.env[qmt()],preferLocal:r=!0,execPath:n=$mt.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?jii(e):e,l=yQe.resolve(o),A=[];return r&&nEa(A,l),a&&iEa(A,n,l),[...A,t].join(yQe.delimiter)},nEa=(e,t)=>{let r;for(;r!==t;)e.push(yQe.join(t,"node_modules/.bin")),r=t,t=yQe.resolve(t,"..")},iEa=(e,t,r)=>{let n=t instanceof URL?jii(t):t;e.push(yQe.resolve(r,n,".."))},zii=({env:e=$mt.env,...t}={})=>{e={...e};let r=qmt({env:e});return t.path=e[r],e[r]=rEa(t),e};var sEa=(e,t,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!oEa(a,o)&&n||Object.defineProperty(e,r,o)},oEa=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},aEa=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},cEa=(e,t)=>`/* Wrapped ${e}*/ -${t}`,lEa=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),uEa=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),gEa=(e,t,r)=>{let n=r===""?"":`with ${r.trim()}() `,a=cEa.bind(null,n,t.toString());Object.defineProperty(a,"name",uEa),Object.defineProperty(e,"toString",{...lEa,value:a})};function u1r(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(let a of Reflect.ownKeys(t))sEa(e,t,a,r);return aEa(e,t),gEa(e,t,n),e}var eCt=new WeakMap,qii=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,n=0,a=e.displayName||e.name||"",o=function(...l){if(eCt.set(o,++n),n===1)r=e.apply(this,l),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return u1r(o,e),eCt.set(o,n),o};qii.callCount=e=>{if(!eCt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return eCt.get(e)};var $ii=qii;import yEa from"node:process";import{constants as fEa}from"node:os";var esi=()=>{let e=rsi-tsi+1;return Array.from({length:e},AEa)},AEa=(e,t)=>({name:`SIGRT${t+1}`,number:tsi+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),tsi=34,rsi=64;import{constants as dEa}from"node:os";var nsi=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var g1r=()=>{let e=esi();return[...nsi,...e].map(pEa)},pEa=({name:e,number:t,description:r,action:n,forced:a=!1,standard:o})=>{let{signals:{[e]:l}}=dEa,A=l!==void 0;return{name:e,number:A?l:t,description:r,supported:A,action:n,forced:a,standard:o}};var IEa=()=>{let e=g1r();return Object.fromEntries(e.map(hEa))},hEa=({name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l})=>[e,{name:e,number:t,description:r,supported:n,action:a,forced:o,standard:l}],isi=IEa(),mEa=()=>{let e=g1r(),t=65,r=Array.from({length:t},(n,a)=>CEa(a,e));return Object.assign({},...r)},CEa=(e,t)=>{let r=_Ea(e,t);if(r===void 0)return{};let{name:n,description:a,supported:o,action:l,forced:A,standard:f}=r;return{[e]:{name:n,number:e,description:a,supported:o,action:l,forced:A,standard:f}}},_Ea=(e,t)=>{let r=t.find(({name:n})=>fEa.signals[n]===e);return r!==void 0?r:t.find(n=>n.number===e)},Zgu=mEa();var bEa=({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:a,exitCode:o,isCanceled:l})=>e?`timed out after ${t} milliseconds`:l?"was canceled":r!==void 0?`failed with ${r}`:n!==void 0?`was killed with ${n} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",bQe=({stdout:e,stderr:t,all:r,error:n,signal:a,exitCode:o,command:l,escapedCommand:A,timedOut:f,isCanceled:I,killed:C,parsed:{options:{timeout:b,cwd:E=yEa.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let N=a===void 0?void 0:isi[a].description,B=n&&n.code,Q=`Command ${bEa({timedOut:f,timeout:b,errorCode:B,signal:a,signalDescription:N,exitCode:o,isCanceled:I})}: ${l}`,X=Object.prototype.toString.call(n)==="[object Error]",ae=X?`${Q} -${n.message}`:Q,ne=[ae,t,e].filter(Boolean).join(` -`);return X?(n.originalMessage=n.message,n.message=ne):n=new Error(ne),n.shortMessage=ae,n.command=l,n.escapedCommand=A,n.exitCode=o,n.signal=a,n.signalDescription=N,n.stdout=e,n.stderr=t,n.cwd=E,r!==void 0&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!f,n.isCanceled=I,n.killed=C&&!f,n};var tCt=["stdin","stdout","stderr"],EEa=e=>tCt.some(t=>e[t]!==void 0),ssi=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return tCt.map(n=>e[n]);if(EEa(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${tCt.map(n=>`\`${n}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,tCt.length);return Array.from({length:r},(n,a)=>t[a])};m1r();import BEa from"node:os";var wEa=1e3*5,asi=(e,t="SIGTERM",r={})=>{let n=e(t);return TEa(e,t,r,n),n},TEa=(e,t,r,n)=>{if(!REa(t,r,n))return;let a=DEa(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},REa=(e,{forceKillAfterTimeout:t},r)=>NEa(e)&&t!==!1&&r,NEa=e=>e===BEa.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",DEa=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return wEa;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},csi=(e,t)=>{e.kill()&&(t.isCanceled=!0)},kEa=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},lsi=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{if(t===0||t===void 0)return n;let a,o=new Promise((A,f)=>{a=setTimeout(()=>{kEa(e,r,f)},t)}),l=n.finally(()=>{clearTimeout(a)});return Promise.race([o,l])},usi=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},gsi=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let a=iCt(()=>{e.kill()});return n.finally(()=>{a()})};import{createWriteStream as xEa}from"node:fs";import{ChildProcess as GEa}from"node:child_process";function sCt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function C1r(e){return sCt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var FEa=e=>e instanceof GEa&&typeof e.then=="function",_1r=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(xEa(r)),e;if(C1r(r))return e[t].pipe(r),e;if(!FEa(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!C1r(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},Asi=e=>{e.stdout!==null&&(e.pipeStdout=_1r.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=_1r.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=_1r.bind(void 0,e,"all"))};import{createReadStream as e1a,readFileSync as t1a}from"node:fs";import{setTimeout as r1a}from"node:timers/promises";var EQe=async(e,{init:t,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,finalize:A},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!LEa(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let I=t();I.length=0;try{for await(let C of e){let b=VEa(C),E=r[b](C,I);fsi({convertedChunk:E,state:I,getSize:n,truncateChunk:a,addChunk:o,maxBuffer:f})}return ZEa({state:I,convertChunk:r,getSize:n,truncateChunk:a,addChunk:o,getFinalChunk:l,maxBuffer:f}),A(I)}catch(C){throw C.bufferedData=A(I),C}},ZEa=({state:e,getSize:t,truncateChunk:r,addChunk:n,getFinalChunk:a,maxBuffer:o})=>{let l=a(e);l!==void 0&&fsi({convertedChunk:l,state:e,getSize:t,truncateChunk:r,addChunk:n,maxBuffer:o})},fsi=({convertedChunk:e,state:t,getSize:r,truncateChunk:n,addChunk:a,maxBuffer:o})=>{let l=r(e),A=t.length+l;if(A<=o){dsi(e,t,a,A);return}let f=n(e,o-t.length);throw f!==void 0&&dsi(f,t,a,o),new oCt},dsi=(e,t,r,n)=>{t.contents=r(e,t,n),t.length=n},LEa=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",VEa=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=psi.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&psi.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:psi}=Object.prototype,oCt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var y1r=e=>e,b1r=()=>{},E1r=({contents:e})=>e,aCt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},cCt=e=>e.length;async function S1r(e,t){return EQe(e,JEa,t)}var PEa=()=>({contents:new ArrayBuffer(0)}),WEa=e=>OEa.encode(e),OEa=new TextEncoder,Isi=e=>new Uint8Array(e),hsi=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),MEa=(e,t)=>e.slice(0,t),HEa=(e,{contents:t,length:r},n)=>{let a=_si()?QEa(t,n):YEa(t,n);return new Uint8Array(a).set(e,r),a},YEa=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(Csi(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},QEa=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:Csi(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},Csi=e=>msi**Math.ceil(Math.log(e)/Math.log(msi)),msi=2,XEa=({contents:e,length:t})=>_si()?e:e.slice(0,t),_si=()=>"resize"in ArrayBuffer.prototype,JEa={init:PEa,convertChunk:{string:WEa,buffer:Isi,arrayBuffer:Isi,dataView:hsi,typedArray:hsi,others:aCt},getSize:cCt,truncateChunk:MEa,addChunk:HEa,getFinalChunk:b1r,finalize:XEa};async function lCt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return ysi(await S1r(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=ysi(r.bufferedData)),r}}var ysi=e=>globalThis.Buffer.from(e);async function v1r(e,t){return EQe(e,qEa,t)}var UEa=()=>({contents:"",textDecoder:new TextDecoder}),uCt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),KEa=(e,{contents:t})=>t+e,jEa=(e,t)=>e.slice(0,t),zEa=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},qEa={init:UEa,convertChunk:{string:y1r,buffer:uCt,arrayBuffer:uCt,dataView:uCt,typedArray:uCt,others:aCt},getSize:cCt,truncateChunk:jEa,addChunk:KEa,getFinalChunk:zEa,finalize:E1r};var Ssi=Nt(Esi(),1),vsi=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},n1a=({input:e,inputFile:t})=>typeof t!="string"?e:(vsi(e),t1a(t)),Bsi=e=>{let t=n1a(e);if(sCt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},i1a=({input:e,inputFile:t})=>typeof t!="string"?e:(vsi(e),e1a(t)),wsi=(e,t)=>{let r=i1a(t);r!==void 0&&(sCt(r)?r.pipe(e.stdin):e.stdin.end(r))},Tsi=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,Ssi.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},B1r=async(e,t)=>{if(!(!e||t===void 0)){await r1a(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},w1r=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?v1r(e,{maxBuffer:n}):t===null||t==="buffer"?lCt(e,{maxBuffer:n}):s1a(e,n,t)},s1a=async(e,t,r)=>(await lCt(e,{maxBuffer:t})).toString(r),Rsi=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:a,maxBuffer:o},l)=>{let A=w1r(e,{encoding:n,buffer:a,maxBuffer:o}),f=w1r(t,{encoding:n,buffer:a,maxBuffer:o}),I=w1r(r,{encoding:n,buffer:a,maxBuffer:o*2});try{return await Promise.all([l,A,f,I])}catch(C){return Promise.all([{error:C,signal:C.signal,timedOut:C.timedOut},B1r(e,A),B1r(t,f),B1r(r,I)])}};var o1a=(async()=>{})().constructor.prototype,a1a=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(o1a,e)]),T1r=(e,t)=>{for(let[r,n]of a1a){let a=typeof t=="function"?(...o)=>Reflect.apply(n.value,t(),o):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:a})}},Nsi=e=>new Promise((t,r)=>{e.on("exit",(n,a)=>{t({exitCode:n,signal:a})}),e.on("error",n=>{r(n)}),e.stdin&&e.stdin.on("error",n=>{r(n)})});import{Buffer as c1a}from"node:buffer";import{ChildProcess as l1a}from"node:child_process";var xsi=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],u1a=/^[\w.-]+$/,g1a=e=>typeof e!="string"||u1a.test(e)?e:`"${e.replaceAll('"','\\"')}"`,R1r=(e,t)=>xsi(e,t).join(" "),N1r=(e,t)=>xsi(e,t).map(r=>g1a(r)).join(" "),Gsi=/ +/g,Fsi=e=>{let t=[];for(let r of e.trim().split(Gsi)){let n=t.at(-1);n&&n.endsWith("\\")?t[t.length-1]=`${n.slice(0,-1)} ${r}`:t.push(r)}return t},Dsi=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof l1a)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(c1a.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},ksi=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],A1a=({templates:e,expressions:t,tokens:r,index:n,template:a})=>{let o=a??e.raw[n],l=o.split(Gsi).filter(Boolean),A=ksi(r,l,o.startsWith(" "));if(n===t.length)return A;let f=t[n],I=Array.isArray(f)?f.map(C=>Dsi(C)):[Dsi(f)];return ksi(A,I,o.endsWith(" "))},D1r=(e,t)=>{let r=[];for(let[n,a]of e.entries())r=A1a({templates:e,expressions:t,tokens:r,index:n,template:a});return r};import{debuglog as d1a}from"node:util";import p1a from"node:process";var Zsi=d1a("execa").enabled,gCt=(e,t)=>String(e).padStart(t,"0"),f1a=()=>{let e=new Date;return`${gCt(e.getHours(),2)}:${gCt(e.getMinutes(),2)}:${gCt(e.getSeconds(),2)}.${gCt(e.getMilliseconds(),3)}`},k1r=(e,{verbose:t})=>{t&&p1a.stderr.write(`[${f1a()}] ${e} -`)};var m1a=1e3*1e3*100,C1a=({env:e,extendEnv:t,preferLocal:r,localDir:n,execPath:a})=>{let o=t?{...ACt.env,...e}:e;return r?zii({env:o,cwd:n,execPath:a}):o},Psi=(e,t,r={})=>{let n=Vsi.default._parse(e,t,r);return e=n.command,t=n.args,r=n.options,r={maxBuffer:m1a,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||ACt.cwd(),execPath:ACt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:Zsi,...r},r.env=C1a(r),r.stdio=ssi(r),ACt.platform==="win32"&&h1a.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},SQe=(e,t,r)=>typeof t!="string"&&!I1a.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?l1r(t):t;function j$(e,t,r){let n=Psi(e,t,r),a=R1r(e,t),o=N1r(e,t);k1r(o,n.options),usi(n.options);let l;try{l=x1r.spawn(n.file,n.args,n.options)}catch(N){let B=new x1r.ChildProcess,F=Promise.reject(bQe({error:N,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return T1r(B,F),B}let A=Nsi(l),f=lsi(l,n.options,A),I=gsi(l,n.options,f),C={isCanceled:!1};l.kill=asi.bind(null,l.kill.bind(l)),l.cancel=csi.bind(null,l,C);let E=$ii(async()=>{let[{error:N,exitCode:B,signal:F,timedOut:Q},X,ae,ne]=await Rsi(l,n.options,I),ce=SQe(n.options,X),fe=SQe(n.options,ae),ue=SQe(n.options,ne);if(N||B!==0||F!==null){let de=bQe({error:N,exitCode:B,signal:F,stdout:ce,stderr:fe,all:ue,command:a,escapedCommand:o,parsed:n,timedOut:Q,isCanceled:C.isCanceled||(n.options.signal?n.options.signal.aborted:!1),killed:l.killed});if(!n.options.reject)return de;throw de}return{command:a,escapedCommand:o,exitCode:0,stdout:ce,stderr:fe,all:ue,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return wsi(l,n.options),l.all=Tsi(l,n.options),Asi(l),T1r(l,E),l}function _1a(e,t,r){let n=Psi(e,t,r),a=R1r(e,t),o=N1r(e,t);k1r(o,n.options);let l=Bsi(n.options),A;try{A=x1r.spawnSync(n.file,n.args,{...n.options,input:l})}catch(C){throw bQe({error:C,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}let f=SQe(n.options,A.stdout,A.error),I=SQe(n.options,A.stderr,A.error);if(A.error||A.status!==0||A.signal!==null){let C=bQe({stdout:f,stderr:I,error:A.error,signal:A.signal,exitCode:A.status,command:a,escapedCommand:o,parsed:n,timedOut:A.error&&A.error.code==="ETIMEDOUT",isCanceled:!1,killed:A.signal!==null});if(!n.options.reject)return C;throw C}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:I,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var y1a=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},Lsi=(e={})=>({preferLocal:!0,...y1a(e),...e});function Wsi(e){function t(r,...n){if(!Array.isArray(r))return Wsi({...e,...r});let[a,...o]=D1r(r,n);return j$(a,o,Lsi(e))}return t.sync=(r,...n)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=D1r(r,n);return _1a(a,o,Lsi(e))},t}var jAu=Wsi();function Osi(e,t){let[r,...n]=Fsi(e);return j$(r,n,t)}async function dCt(e){let{cwd:t,fromLastTag:r,to:n,last:a,edit:o,gitLogArgs:l}=e,A=e.from;if(o)return Kii(t,o);if(a){let C=(await j$("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return C[0]=='"'&&C[C.length-1]=='"'&&(C=C.slice(1,-1)),[C]}if(!A&&r){let{stdout:I}=await j$("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(I.length===40)A=I;else{let C=I.lastIndexOf("-",I.length-43);A=I.slice(0,C)}}let f={from:A,to:n};return l&&(f={...(0,Msi.default)(l.split(" ")),from:A,to:n}),Hii(f,{cwd:t})}var pCt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(pCt||(pCt={}));var Hsi;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(Hsi||(Hsi={}));var Ysi=(e=0)=>t=>`\x1B[${t+e}m`,Qsi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Xsi=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,w2={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},Adu=Object.keys(w2.modifier),b1a=Object.keys(w2.color),E1a=Object.keys(w2.bgColor),ddu=[...b1a,...E1a];function S1a(){let e=new Map;for(let[t,r]of Object.entries(w2)){for(let[n,a]of Object.entries(r))w2[n]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[n]=w2[n],e.set(a[0],a[1]);Object.defineProperty(w2,t,{value:r,enumerable:!1})}return Object.defineProperty(w2,"codes",{value:e,enumerable:!1}),w2.color.close="\x1B[39m",w2.bgColor.close="\x1B[49m",w2.color.ansi=Ysi(),w2.color.ansi256=Qsi(),w2.color.ansi16m=Xsi(),w2.bgColor.ansi=Ysi(10),w2.bgColor.ansi256=Qsi(10),w2.bgColor.ansi16m=Xsi(10),Object.defineProperties(w2,{rgbToAnsi256:{value(t,r,n){return t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(o=>o+o).join(""));let a=Number.parseInt(n,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>w2.rgbToAnsi256(...w2.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,a;if(t>=232)r=((t-232)*10+8)/255,n=r,a=r;else{t-=16;let A=t%36;r=Math.floor(t/36)/5,n=Math.floor(A/6)/5,a=A%6/5}let o=Math.max(r,n,a)*2;if(o===0)return 30;let l=30+(Math.round(a)<<2|Math.round(n)<<1|Math.round(r));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>w2.ansi256ToAnsi(w2.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>w2.ansi256ToAnsi(w2.hexToAnsi256(t)),enumerable:!1}}),w2}var v1a=S1a(),OX=v1a;import G1r from"node:process";import B1a from"node:os";import Jsi from"node:tty";function OM(e,t=globalThis.Deno?globalThis.Deno.args:G1r.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return n!==-1&&(a===-1||n=2,has16m:e>=3}}function R1a(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let n=w1a();n!==void 0&&(fCt=n);let a=r?fCt:n;if(a===0)return 0;if(r){if(OM("color=16m")||OM("color=full")||OM("color=truecolor"))return 3;if(OM("color=256"))return 2}if("TF_BUILD"in DS&&"AGENT_NAME"in DS)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(DS.TERM==="dumb")return o;if(G1r.platform==="win32"){let l=B1a.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in DS)return"GITHUB_ACTIONS"in DS||"GITEA_ACTIONS"in DS?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in DS)||DS.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in DS)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(DS.TEAMCITY_VERSION)?1:0;if(DS.COLORTERM==="truecolor"||DS.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in DS){let l=Number.parseInt((DS.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(DS.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(DS.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(DS.TERM)||"COLORTERM"in DS?1:o}function Usi(e,t={}){let r=R1a(e,{streamIsTTY:e&&e.isTTY,...t});return T1a(r)}var N1a={stdout:Usi({isTTY:Jsi.isatty(1)}),stderr:Usi({isTTY:Jsi.isatty(2)})},Ksi=N1a;function jsi(e,t,r){let n=e.indexOf(t);if(n===-1)return e;let a=t.length,o=0,l="";do l+=e.slice(o,n)+t+r,o=n+a,n=e.indexOf(t,o);while(n!==-1);return l+=e.slice(o),l}function zsi(e,t,r,n){let a=0,o="";do{let l=e[n-1]==="\r";o+=e.slice(a,l?n-1:n)+t+(l?`\r -`:` -`)+r,a=n+1,n=e.indexOf(` -`,a)}while(n!==-1);return o+=e.slice(a),o}var{stdout:qsi,stderr:$si}=Ksi,F1r=Symbol("GENERATOR"),lTe=Symbol("STYLER"),vQe=Symbol("IS_EMPTY"),eoi=["ansi","ansi","ansi256","ansi16m"],uTe=Object.create(null),D1a=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=qsi?qsi.level:0;e.level=t.level===void 0?r:t.level};var k1a=e=>{let t=(...r)=>r.join(" ");return D1a(t,e),Object.setPrototypeOf(t,BQe.prototype),t};function BQe(e){return k1a(e)}Object.setPrototypeOf(BQe.prototype,Function.prototype);for(let[e,t]of Object.entries(OX))uTe[e]={get(){let r=ICt(this,L1r(t.open,t.close,this[lTe]),this[vQe]);return Object.defineProperty(this,e,{value:r}),r}};uTe.visible={get(){let e=ICt(this,this[lTe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var Z1r=(e,t,r,...n)=>e==="rgb"?t==="ansi16m"?OX[r].ansi16m(...n):t==="ansi256"?OX[r].ansi256(OX.rgbToAnsi256(...n)):OX[r].ansi(OX.rgbToAnsi(...n)):e==="hex"?Z1r("rgb",t,r,...OX.hexToRgb(...n)):OX[r][e](...n),x1a=["rgb","hex","ansi256"];for(let e of x1a){uTe[e]={get(){let{level:r}=this;return function(...n){let a=L1r(Z1r(e,eoi[r],"color",...n),OX.color.close,this[lTe]);return ICt(this,a,this[vQe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);uTe[t]={get(){let{level:r}=this;return function(...n){let a=L1r(Z1r(e,eoi[r],"bgColor",...n),OX.bgColor.close,this[lTe]);return ICt(this,a,this[vQe])}}}}var G1a=Object.defineProperties(()=>{},{...uTe,level:{enumerable:!0,get(){return this[F1r].level},set(e){this[F1r].level=e}}}),L1r=(e,t,r)=>{let n,a;return r===void 0?(n=e,a=t):(n=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:n,closeAll:a,parent:r}},ICt=(e,t,r)=>{let n=(...a)=>F1a(n,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(n,G1a),n[F1r]=e,n[lTe]=t,n[vQe]=r,n},F1a=(e,t)=>{if(e.level<=0||!t)return e[vQe]?"":t;let r=e[lTe];if(r===void 0)return t;let{openAll:n,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=jsi(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=zsi(t,a,n,o)),n+t+a};Object.defineProperties(BQe.prototype,uTe);var Z1a=BQe(),Edu=BQe({level:$si?$si.level:0});var fp=Z1a;var L1a=[" ","\u26A0","\u2716"],V1a=["white","yellow","red"];function toi(e={},t={}){let{results:r=[]}=e,n=o=>P1a(o,t),a=o=>W1a(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...n(o),...a(o)]).reduce((o,l)=>Array.isArray(l)?[...o,...l]:[...o,l],[]).join(` -`)}function P1a(e,t={}){let{color:r=!0}=t,{errors:n=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let l="\u29D7",A=r?fp.gray(l):l,f=r?fp.bold(o):o,I=n.length>0||a.length>0;return t.verbose||I?[`${A} input: ${f}`]:[]}function W1a(e={},t={}){let{signs:r=L1a,colors:n=V1a,color:a=!0}=t,{errors:o=[],warnings:l=[]}=e,A=[...o,...l].map(X=>{let ae=r[X.level]||"",ne=n[X.level]||"white",ce=a?fp[ne](ae):ae,fe=a?fp.grey(`[${X.name}]`):`[${X.name}]`;return`${ce} ${X.message} ${fe}`}),f=O1a(e),I=M1a(e),C=a?fp[I](f):f,b=o.length,E=l.length,N=A.length>0,B=t.verbose||N?`${C} found ${b} problems, ${E} warnings`:void 0,F=a&&typeof B=="string"?fp.bold(B):B,Q=N&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...A,N?"":void 0,F,Q,N?"":void 0].filter(X=>typeof X=="string")}function O1a(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function M1a(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import ITe from"util";var roi=Nt(UC(),1),H1a=e=>{let t=e.split(` -`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return roi.default.valid(r)!==null},yae=e=>e.test.bind(e),noi=[yae(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),yae(/^(Merge tag (.*?))(?:\r?\n)*$/m),yae(/^(R|r)evert (.*)/),yae(/^(amend|fixup|squash)!/),H1a,yae(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),yae(/^Merge remote-tracking branch(\s*)(.*)/),yae(/^Automatic merge(.*)/),yae(/^Auto-merged (.*?) into (.*)/)];function hCt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let n=r.filter(o=>typeof o!="function");if(n.length>0)throw new Error(`ignores must be array of type function, received items of type: ${n.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:noi,...r].some(o=>o(e))}var Soi=Nt(doi(),1),voi=Nt(Eoi(),1);async function d2a(e,t=Soi.sync,r){let o={...(await(0,voi.default)()).parserOpts,fieldPattern:null,...r||{}},l=t(e,o);return l.raw=e,l}var Boi=d2a;var e2r=Nt(zoi(),1),Nci=Nt(_ai(),1),Dci=Nt(Hai(),1),t2r=Nt(ici(),1),kci=Nt(Rci(),1);function SCt(e,t){switch(t){case"camel-case":return(0,e2r.default)(e);case"kebab-case":return(0,Nci.default)(e);case"snake-case":return(0,Dci.default)(e);case"pascal-case":return(0,t2r.default)((0,e2r.default)(e));case"start-case":return(0,kci.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,t2r.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var MX=iwa;function iwa(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),n=SCt(r,t);return n===""||n.match(/^\d/)?!0:n===r}var wQe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var HZ=(e,t)=>typeof e=="string"&&e.length<=t;var TQe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>HZ(r,t));var aO=(e,t)=>typeof e=="string"&&e.length>=t;var HX=e=>typeof e=="string"&&e.length>0;function Jf(e=[]){return e.filter(Boolean).join(" ")}var r2r=e=>e==="never",xci=(e,t="always",r=[])=>{let{body:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return r2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[r2r(t)?!o:o,Jf(["body must",r2r(t)?"not":null,`be ${l}`])]};var Gci=(e,t="always")=>{let r=t==="never",n=HX(e.body||"");return[r?n:!n,Jf(["body",r?"may not":"must","be empty"])]};var Fci=(e,t="always",r=".")=>{let n=e.body;if(!n)return[!0];let a=t==="never",o=n[n.length-1]===r;return[a?!o:o,Jf(["body",a?"may not":"must","end with full stop"])]};function P8(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var Zci=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[n]=P8(e.raw).slice(1),a=n==="";return[r?!a:a,Jf(["body",r?"may not":"must","have leading blank line"])]};var Lci=(e,t=void 0,r=0)=>{let n=e.body;return n?[HZ(n,r),`body must not be longer than ${r} characters`]:[!0]};var Vci=(e,t=void 0,r=0)=>{let n=e.body;return n?[TQe(n,r),`body's lines must not be longer than ${r} characters`]:[!0]};var Pci=(e,t=void 0,r=0)=>e.body?[aO(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var Wci=(e,t="always")=>{let r=t==="never",n=HX(e.footer||"");return[r?n:!n,Jf(["footer",r?"may not":"must","be empty"])]};var Oci=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",n=P8(e.raw),a=P8(e.footer),o=n.indexOf(a[0]),[l]=n.slice(o-1),A=l==="";return[r?!A:A,Jf(["footer",r?"may not":"must","have leading blank line"])]};var Mci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[HZ(n,r),`footer must not be longer than ${r} characters`]:[!0]};var Hci=(e,t=void 0,r=0)=>{let n=e.footer;return n?[TQe(n,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var Yci=(e,t=void 0,r=0)=>e.footer?[aO(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var n2r=e=>e==="never",Qci=(e,t="always",r=[])=>{let{header:n}=e;if(typeof n!="string"||!n.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return n2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[n2r(t)?!o:o,Jf(["header must",n2r(t)?"not":null,`be ${l}`])]};var Xci=(e,t="always",r=".")=>{let{header:n}=e,a=t==="never",o=n?.[n.length-1]===r;return[a?!o:o,Jf(["header",a?"may not":"must","end with full stop"])]};var Jci=(e,t=void 0,r=0)=>[HZ(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var Uci=(e,t=void 0,r=0)=>[aO(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var Kci=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),n=t!==t.trimEnd();switch(!0){case(r&&n):return[!1,Jf(["header","must not be surrounded by whitespace"])];case r:return[!1,Jf(["header","must not start with whitespace"])];case n:return[!1,Jf(["header","must not end with whitespace"])];default:return[!0]}};var jci=(e,t="never")=>{let r=t==="always",n=e.references.length>0;return[r?!n:n,Jf(["references",r?"must":"may not","be empty"])]};var i2r=e=>e==="never",zci=(e,t="always",r=[])=>{let{scope:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(I=>typeof I=="string"?{when:"always",case:I}:I),o=/\/|\\|, ?/g,l=n.split(o),A=a.some(I=>{let C=l.every(b=>o.test(b)||MX(b,I.case));return i2r(I.when)?!C:C}),f=a.map(I=>I.case).join(", ");return[i2r(t)?!A:A,Jf(["scope must",i2r(t)?"not":null,`be ${f}`])]};var qci=(e,t="never")=>{let r=t==="always",n=HX(e.scope||"");return[r?!n:n,Jf(["scope",r?"must":"may not","be empty"])]};var $ci=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let n=/\/|\\|, ?/g,a=e.split(n),o=["scope must",`be one of [${r.join(", ")}]`],l=f=>wQe(f,r),A;return t==="never"?(A=!a.some(l),o.splice(1,0,"not")):A=a.every(l),[A,Jf(o)]};var eli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[HZ(n,r),`scope must not be longer than ${r} characters`]:[!0]};var tli=(e,t=void 0,r=0)=>{let n=e.scope;return n?[aO(n,r),`scope must not be shorter than ${r} characters`]:[!0]};var rli=(e,t="always",r="")=>{let n=P8(e.raw).filter(A=>!A.startsWith("#")&&!!A),a=n[n.length-1],o=t==="never",l=a?a.startsWith(r):!1;return[o?!l:l,Jf(["message",o?"must not":"must","be signed off"])]};var swa=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,s2r=e=>e==="never",nli=(e,t="always",r=[])=>{let{subject:n}=e;if(typeof n!="string"||!n.match(swa))return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return s2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[s2r(t)?!o:o,Jf(["subject must",s2r(t)?"not":null,`be ${l}`])]};var ili=(e,t="always")=>{let r=t==="never",n=HX(e.subject||"");return[r?n:!n,Jf(["subject",r?"may not":"must","be empty"])]};var sli=(e,t="always",r=".")=>{let n=e.header?.indexOf(":")||0;if(n>0&&n===e.header.length-1)return[!0];let a=e.header,o=t==="never",l=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(l=!1),[o?!l:l,Jf(["subject",o?"may not":"must","end with full stop"])]};var oli=(e,t=void 0,r=0)=>{let n=e.subject;return n?[HZ(n,r),`subject must not be longer than ${r} characters`]:[!0]};var ali=(e,t=void 0,r=0)=>{let n=e.subject;return n?[aO(n,r),`subject must not be shorter than ${r} characters`]:[!0]};var cli=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let n=t==="never",a=/!:/.test(r);return[n?!a:a,Jf(["subject",n?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as owa}from"child_process";var lli=(e,t="always",r="")=>{let n=owa("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=P8(n.toString()).filter(A=>A.startsWith(r)).length,o=t==="never",l=a>0;return[o?!l:l,Jf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var o2r=e=>e==="never",uli=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=(Array.isArray(r)?r:[r]).map(A=>typeof A=="string"?{when:"always",case:A}:A),o=a.some(A=>{let f=MX(n,A.case);return o2r(A.when)?!f:f}),l=a.map(A=>A.case).join(", ");return[o2r(t)?!o:o,Jf(["type must",o2r(t)?"not":null,`be ${l}`])]};var gli=(e,t="always")=>{let r=t==="never",n=HX(e.type||"");return[r?n:!n,Jf(["type",r?"may not":"must","be empty"])]};var Ali=(e,t="always",r=[])=>{let{type:n}=e;if(!n)return[!0];let a=t==="never",o=wQe(n,r);return[a?!o:o,Jf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var dli=(e,t=void 0,r=0)=>{let n=e.type;return n?[HZ(n,r),`type must not be longer than ${r} characters`]:[!0]};var pli=(e,t=void 0,r=0)=>{let n=e.type;return n?[aO(n,r),`type must not be shorter than ${r} characters`]:[!0]};var fli={"body-case":xci,"body-empty":Gci,"body-full-stop":Fci,"body-leading-blank":Zci,"body-max-length":Lci,"body-max-line-length":Vci,"body-min-length":Pci,"footer-empty":Wci,"footer-leading-blank":Oci,"footer-max-length":Mci,"footer-max-line-length":Hci,"footer-min-length":Yci,"header-case":Qci,"header-full-stop":Xci,"header-max-length":Jci,"header-min-length":Uci,"header-trim":Kci,"references-empty":jci,"scope-case":zci,"scope-empty":qci,"scope-enum":$ci,"scope-max-length":eli,"scope-min-length":tli,"signed-off-by":rli,"subject-case":nli,"subject-empty":ili,"subject-full-stop":sli,"subject-max-length":oli,"subject-min-length":ali,"subject-exclamation-mark":cli,"trailer-exists":lli,"type-case":uli,"type-empty":gli,"type-enum":Ali,"type-max-length":dli,"type-min-length":pli};var fTe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(fTe||(fTe={}));var Ili;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(Ili||(Ili={}));var hli=({header:e,body:t,footer:r})=>{let n=e;return n=t?`${n} - -${t}`:n,n=r?`${n} - -${r}`:n,n||""};async function a2r(e,t,r){let n=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(hCt(e,{defaults:n.defaultIgnores,ignores:n.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await Boi(e,void 0,n.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let l=new Map(Object.entries(fli));n.plugins&&Object.values(n.plugins).forEach(B=>{B.rules&&Object.keys(B.rules).forEach(F=>l.set(F,B.rules[F]))});let A=Object.keys(a).filter(B=>typeof l.get(B)!="function");if(A.length>0){let B=[...l.keys()];throw new RangeError([`Found rules without implementation: ${A.join(", ")}.`,`Supported rules are: ${B.join(", ")}.`].join(` -`))}let f=Object.entries(a).map(([B,F])=>{if(!Array.isArray(F))return new Error(`config for rule ${B} must be array, received ${ITe.inspect(F)} of type ${typeof F}`);let[Q]=F;if(Q===fTe.Disabled&&F.length===1)return null;let[,X]=F;return typeof Q!="number"||isNaN(Q)?new Error(`level for rule ${B} must be number, received ${ITe.inspect(Q)} of type ${typeof Q}`):F.length<2||F.length>3?new Error(`config for rule ${B} must be 2 or 3 items long, received ${ITe.inspect(F)} of length ${F.length}`):Q<0||Q>2?new RangeError(`level for rule ${B} must be between 0 and 2, received ${ITe.inspect(Q)}`):typeof X!="string"?new Error(`condition for rule ${B} must be string, received ${ITe.inspect(X)} of type ${typeof X}`):X!=="never"&&X!=="always"?new Error(`condition for rule ${B} must be "always" or "never", received ${ITe.inspect(X)}`):null}).filter(B=>B instanceof Error);if(f.length>0)throw new Error(f.map(B=>B.message).join(` -`));let I=Object.entries(a).filter(([,B])=>!!B&&B.length&&B[0]>0).map(async B=>{let[F,Q]=B,[X,ae,ne]=Q,ce=l.get(F);if(!ce)throw new Error(`Could not find rule implementation for ${F}`);let fe=ce,[ue,de]=await fe(o,ae,ne);return{level:X,valid:ue,name:F,message:de}}),C=(await Promise.all(I)).filter(B=>B!==null),b=C.filter(B=>B.level===fTe.Error&&!B.valid),E=C.filter(B=>B.level===fTe.Warning&&!B.valid);return{valid:b.length===0,errors:b,warnings:E,input:hli(o)}}var c2r={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},RQe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var mli={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(RQe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var awa={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},cwa={parserOpts:awa},vCt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(mli);return a2r(t,r,cwa)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return toi(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let n=["common","github",...r];return t["scope-enum"]=[pCt.Error,"always",n],t}};var BCt=class extends Cli.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await _li.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await yli.Project.find(t,this.context.cwd),n=new Set(r.map(({manifest:I})=>I.name?.name??"")),a=new Set(r.map(({manifest:I})=>I.name?.scope??"")),o=new vCt({scopes:Array.from(a),workspaceNames:Array.from(n)}),l=await dCt({edit:!0}),A=await Promise.all(l.map(async I=>o.lint(I))),f=o.format({results:A});return f!==""&&this.context.stdout.write(f),A.some(I=>!I.valid)?1:0}};var ugi=Nt(el(),1),ggi=Nt(ro(),1),Agi=Nt(wli(),1);$c();var dgi=Nt(Nli(),1),pgi=Nt(Al(),1),fgi=Nt(Ec(),1),Igi=Nt(Ec(),1),$Ct=Nt(kli(),1);var cgi=Nt(Ec(),1),Bae=Nt(Ec(),1);var BTe=Nt(Al(),1),vTe=Nt(Al(),1),Yui=Nt(Ec(),1),G2r=Nt(Wui(),1);import Oui from"node:process";function D2r(){let{env:e}=Oui,{TERM:t,TERM_PROGRAM:r}=e;return Oui.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Mui={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},Hui={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},yRa={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},bRa={...Mui,...Hui},ERa={...Mui,...yRa},SRa=D2r(),vRa=SRa?bRa:ERa,kI=vRa,Ehu=Object.entries(Hui);var k2r=Nt(Al(),1),x2r=Nt(Al(),1),ETe=Nt(Pc(),1),STe=({label:e,value:t})=>(0,ETe.jsxs)(x2r.Box,{children:[(0,ETe.jsx)(x2r.Box,{width:12,children:(0,ETe.jsx)(k2r.Text,{bold:!0,color:"#d7875f",children:t})}),(0,ETe.jsx)(k2r.Text,{children:e})]});var cO=Nt(Pc(),1),BRa=G2r.default.default||G2r.default,wRa=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],TRa=({isSelected:e=!1})=>(0,cO.jsx)(vTe.Box,{marginRight:1,children:e?(0,cO.jsx)(BTe.Text,{children:kI.circleFilled}):(0,cO.jsx)(BTe.Text,{children:" "})}),RRa=({isHighlighted:e=!1})=>(0,cO.jsx)(vTe.Box,{marginRight:1,children:e?(0,cO.jsx)(BTe.Text,{color:"cyanBright",children:kI.pointer}):(0,cO.jsx)(BTe.Text,{children:" "})}),Qui=({onSubmit:e})=>{let t=(0,Yui.useCallback)(r=>{e(r.reduce((n,a)=>({...n,[a.value]:!0}),{}))},[e]);return(0,cO.jsxs)(vTe.Box,{flexDirection:"column",children:[(0,cO.jsx)(vTe.Box,{children:(0,cO.jsx)(BTe.Text,{bold:!0,color:"cyanBright",children:"Please select additional actions:"})}),(0,cO.jsx)(vTe.Box,{children:(0,cO.jsx)(BRa,{items:wRa,indicatorComponent:RRa,itemComponent:STe,checkboxComponent:TRa,onSubmit:t})})]})};var F2r=Nt(Al(),1),wTe=Nt(Al(),1);var Sae=Nt(Ec(),1),XCt=Nt(Al(),1);function Xui({value:e,placeholder:t="",focus:r=!0,mask:n,highlightPastedText:a=!1,showCursor:o=!0,onChange:l,onSubmit:A}){let[f,I]=(0,Sae.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:C,cursorWidth:b}=f;(0,Sae.useEffect)(()=>{I(Q=>{if(!r||!o)return Q;let X=e||"";return Q.cursorOffset>X.length-1?{cursorOffset:X.length,cursorWidth:0}:Q})},[e,r,o]);let E=a?b:0,N=n?n.repeat(e.length):e,B=N,F=t?fp.grey(t):void 0;if(o&&r){F=t.length>0?fp.inverse(t[0])+fp.grey(t.slice(1)):fp.inverse(" "),B=N.length>0?"":fp.inverse(" ");let Q=0;for(let X of N)B+=Q>=C-E&&Q<=C?fp.inverse(X):X,Q++;N.length>0&&C===N.length&&(B+=fp.inverse(" "))}return(0,XCt.useInput)((Q,X)=>{if(X.upArrow||X.downArrow||X.ctrl&&Q==="c"||X.tab||X.shift&&X.tab)return;if(X.return){A&&A(e);return}let ae=C,ne=e,ce=0;X.leftArrow?o&&ae--:X.rightArrow?o&&ae++:X.backspace||X.delete?C>0&&(ne=e.slice(0,C-1)+e.slice(C,e.length),ae--):(ne=e.slice(0,C)+Q+e.slice(C,e.length),ae+=Q.length,Q.length>1&&(ce=Q.length)),C<0&&(ae=0),C>e.length&&(ae=e.length),I({cursorOffset:ae,cursorWidth:ce}),ne!==e&&l(ne)},{isActive:r}),Sae.default.createElement(XCt.Text,null,t?N.length>0?B:F:B)}var JCt=Xui;function O8({initialValue:e="",...t}){let[r,n]=(0,Sae.useState)(e);return Sae.default.createElement(Xui,{...t,value:r,onChange:n})}var M8=Nt(Pc(),1),Jui=({onSubmit:e})=>(0,M8.jsxs)(wTe.Box,{flexDirection:"column",children:[(0,M8.jsx)(wTe.Box,{children:(0,M8.jsx)(F2r.Text,{bold:!0,color:"cyanBright",children:"Please give a long description:"})}),(0,M8.jsxs)(wTe.Box,{children:[(0,M8.jsx)(wTe.Box,{marginRight:1,children:(0,M8.jsx)(F2r.Text,{color:"gray",children:"\u2192"})}),(0,M8.jsx)(wTe.Box,{children:(0,M8.jsx)(O8,{onSubmit:e})})]})]});var Z2r=Nt(Al(),1),TTe=Nt(Al(),1);var H8=Nt(Pc(),1),Uui=({onSubmit:e})=>(0,H8.jsxs)(TTe.Box,{flexDirection:"column",children:[(0,H8.jsx)(TTe.Box,{children:(0,H8.jsx)(Z2r.Text,{bold:!0,color:"cyanBright",children:"Describe the breaking changes:"})}),(0,H8.jsxs)(TTe.Box,{children:[(0,H8.jsx)(TTe.Box,{marginRight:1,children:(0,H8.jsx)(Z2r.Text,{color:"gray",children:"\u2192"})}),(0,H8.jsx)(TTe.Box,{children:(0,H8.jsx)(O8,{onSubmit:e})})]})]});var L2r=Nt(Al(),1),RTe=Nt(Al(),1);var Y8=Nt(Pc(),1),Kui=({onSubmit:e})=>(0,Y8.jsxs)(RTe.Box,{flexDirection:"column",children:[(0,Y8.jsx)(RTe.Box,{children:(0,Y8.jsx)(L2r.Text,{bold:!0,color:"cyanBright",children:'Add issue references (e.g. "fix #123, re #124".):'})}),(0,Y8.jsxs)(RTe.Box,{children:[(0,Y8.jsx)(RTe.Box,{marginRight:1,children:(0,Y8.jsx)(L2r.Text,{color:"gray",children:kI.arrowRight})}),(0,Y8.jsx)(RTe.Box,{children:(0,Y8.jsx)(O8,{onSubmit:e})})]})]});var zCt=Nt(Al(),1),$$=Nt(Al(),1);var O2r=Nt(Ec(),1),M2r=Nt(Ec(),1),tgi=Nt(Ec(),1);var UCt=Nt(Ec(),1),LQe=Nt(Al(),1);function NRa({isSelected:e=!1}){return UCt.default.createElement(LQe.Box,{marginRight:1},e?UCt.default.createElement(LQe.Text,{color:"blue"},kI.pointer):UCt.default.createElement(LQe.Text,null," "))}var V2r=NRa;var jui=Nt(Ec(),1),zui=Nt(Al(),1);function DRa({isSelected:e=!1,label:t}){return jui.createElement(zui.Text,{color:e?"blue":void 0},t)}var P2r=DRa;var oV=Nt(Ec(),1),qui=Nt(b2r(),1);function NTe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let n=(t%r+r)%r;return n===0?[...e]:[...e.slice(-n),...e.slice(0,-n)]}var VQe=Nt(Al(),1);function kRa({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:n=V2r,itemComponent:a=P2r,limit:o,onSelect:l,onHighlight:A}){let f=typeof o=="number"&&e.length>o,I=f?Math.min(o,e.length):e.length,C=I-1,[b,E]=(0,oV.useState)(r>C?C-r:0),[N,B]=(0,oV.useState)(r?r>C?C:r:0),F=(0,oV.useRef)(e);(0,oV.useEffect)(()=>{(0,qui.default)(F.current.map(X=>X.value),e.map(X=>X.value))||(E(0),B(0)),F.current=e},[e]),(0,VQe.useInput)((0,oV.useCallback)((X,ae)=>{if(X==="k"||ae.upArrow){let ne=(f?I:e.length)-1,ce=N===0,fe=f?N:ne,ue=ce?b+1:b,de=ce?fe:N-1;E(ue),B(de);let be=f?NTe(e,ue).slice(0,I):e;typeof A=="function"&&A(be[de])}if(X==="j"||ae.downArrow){let ne=N===(f?I:e.length)-1,ce=f?N:0,fe=ne?b-1:b,ue=ne?ce:N+1;E(fe),B(ue);let de=f?NTe(e,fe).slice(0,I):e;typeof A=="function"&&A(de[ue])}if(ae.return){let ne=f?NTe(e,b).slice(0,I):e;typeof l=="function"&&l(ne[N])}},[f,I,b,N,e,l,A]),{isActive:t});let Q=f?NTe(e,b).slice(0,I):e;return oV.default.createElement(VQe.Box,{flexDirection:"column"},Q.map((X,ae)=>{let ne=ae===N;return oV.default.createElement(VQe.Box,{key:X.key??X.value},oV.default.createElement(n,{isSelected:ne}),oV.default.createElement(a,{...X,isSelected:ne}))}))}var PQe=kRa;var W2r=Nt(Al(),1),$ui=Nt(Al(),1);var KCt=Nt(Pc(),1),jCt=({isSelected:e=!1})=>(0,KCt.jsx)($ui.Box,{marginRight:1,children:e?(0,KCt.jsx)(W2r.Text,{color:"cyanBright",children:kI.pointer}):(0,KCt.jsx)(W2r.Text,{children:" "})});var vG=Nt(Pc(),1),egi=Object.keys(c2r).map(e=>({label:c2r[e].description,value:e})),rgi=({onSubmit:e})=>{let[t,r]=(0,O2r.useState)(!1),[n,a]=(0,O2r.useState)(""),o=(0,M2r.useMemo)(()=>n.length>0?egi.filter(f=>f.label.toLowerCase().includes(n.toLowerCase())):egi,[n]),l=(0,M2r.useMemo)(()=>o.length>0,[o]),A=(0,tgi.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?(0,vG.jsxs)($$.Box,{flexDirection:"column",children:[(0,vG.jsx)($$.Box,{children:(0,vG.jsx)(zCt.Text,{bold:!0,color:"cyanBright",children:"Please state the scope of the change:"})}),(0,vG.jsxs)($$.Box,{children:[(0,vG.jsx)($$.Box,{marginRight:1,children:(0,vG.jsx)(zCt.Text,{color:"gray",children:"\u2192"})}),(0,vG.jsx)($$.Box,{children:(0,vG.jsx)(O8,{onSubmit:e})})]})]}):(0,vG.jsxs)($$.Box,{flexDirection:"column",children:[(0,vG.jsxs)($$.Box,{children:[(0,vG.jsx)($$.Box,{marginRight:1,children:(0,vG.jsx)(zCt.Text,{bold:!0,color:"cyanBright",children:"Type of scope:"})}),(0,vG.jsx)(JCt,{value:n,onChange:a})]}),!!l&&(0,vG.jsx)(PQe,{items:o,indicatorComponent:jCt,itemComponent:STe,onSelect:A})]})};var H2r=Nt(Al(),1),DTe=Nt(Al(),1);var Q8=Nt(Pc(),1),ngi=({onSubmit:e})=>(0,Q8.jsxs)(DTe.Box,{flexDirection:"column",children:[(0,Q8.jsx)(DTe.Box,{children:(0,Q8.jsx)(H2r.Text,{bold:!0,color:"cyanBright",children:"Write a short description (max 93) chars):"})}),(0,Q8.jsxs)(DTe.Box,{children:[(0,Q8.jsx)(DTe.Box,{marginRight:1,children:(0,Q8.jsx)(H2r.Text,{color:"gray",children:"\u2192"})}),(0,Q8.jsx)(DTe.Box,{children:(0,Q8.jsx)(O8,{onSubmit:e})})]})]});var sgi=Nt(Al(),1),qCt=Nt(Al(),1),ogi=Nt(Ec(),1),Y2r=Nt(Ec(),1);var vae=Nt(Pc(),1),igi=Object.keys(RQe).map(e=>({label:RQe[e].description,value:e})),agi=({onSubmit:e})=>{let[t,r]=(0,ogi.useState)(""),n=(0,Y2r.useMemo)(()=>t.length>0?igi.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):igi,[t]),a=(0,Y2r.useMemo)(()=>n.length>0,[n]);return(0,vae.jsxs)(qCt.Box,{flexDirection:"column",children:[(0,vae.jsxs)(qCt.Box,{children:[(0,vae.jsx)(qCt.Box,{marginRight:1,children:(0,vae.jsx)(sgi.Text,{bold:!0,color:"cyanBright",children:"Type of commit:"})}),(0,vae.jsx)(JCt,{value:t,onChange:r})]}),!!a&&(0,vae.jsx)(PQe,{items:n,indicatorComponent:jCt,itemComponent:STe,onSelect:o=>{e(o.value)}})]})};var eee=Nt(Pc(),1),xRa=({onSubmit:e,...t})=>((0,cgi.useEffect)(()=>{e(t)},[t,e]),null),lgi=({onSubmit:e})=>{let[t,r]=(0,Bae.useState)(),[n,a]=(0,Bae.useState)(),[o,l]=(0,Bae.useState)(),[A,f]=(0,Bae.useState)(),[I,C]=(0,Bae.useState)(),[b,E]=(0,Bae.useState)(),[N,B]=(0,Bae.useState)();return t?o?N?N.scope&&!n?(0,eee.jsx)(rgi,{onSubmit:a}):N.issues&&!A?(0,eee.jsx)(Kui,{onSubmit:f}):N.body&&!I?(0,eee.jsx)(Jui,{onSubmit:C}):N.breaking&&!b?(0,eee.jsx)(Uui,{onSubmit:E}):(0,eee.jsx)(xRa,{type:t,scope:n,subject:o,issues:A,body:I,breaking:b,skipci:N.skipci,onSubmit:e}):(0,eee.jsx)(Qui,{onSubmit:B}):(0,eee.jsx)(ngi,{onSubmit:l}):(0,eee.jsx)(agi,{onSubmit:r})};var Q2r=Nt(Pc(),1),GRa=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,pgi.useStdin)();return t(e),(0,fgi.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},FRa=({useSubmit:e})=>{let[t,r]=(0,Igi.useState)();return t?(0,Q2r.jsx)(GRa,{commit:t,useSubmit:e}):(0,Q2r.jsx)(lgi,{onSubmit:r})},e_t=class extends ugi.BaseCommand{static paths=[["commit","message"]];args=Su.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let n=(0,dgi.forceStdinTty)(),a=await(0,Agi.renderForm)(FRa,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await ggi.xfs.writeFilePromise(t,this.formatCommit(a)),n&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` -`,indent:"",width:100},n=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(n+=" [skip ci]");let a=t.body?(0,$Ct.default)(t.body,r):!1,o=t.breaking?(0,$Ct.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,l=t.issues?(0,$Ct.default)(t.issues,r):!1;return[n,a,o,l].filter(Boolean).join(` - -`)}};var dhi=Nt(el(),1);$c();import{execSync as Ahi}from"node:child_process";var uhi=Nt(uT(),1);var bgi=Nt(uT(),1);var rNa=(0,bgi.default)("lint-staged:execGit"),nNa=["-c","submodule.recurse=false"],iNa=[...nNa],QZ=async(e,t={})=>{rNa("Running git command",e);try{let{stdout:r}=await j$("git",iNa.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as KDa}from"node:util";var vgi=Nt(Sgi(),1);var Bgi=vgi.default;import*as o_t from"tty";var{env:wae={},argv:Tgi=[],platform:aNa=""}=typeof process>"u"?{}:process,cNa="NO_COLOR"in wae||Tgi.includes("--no-color"),lNa="FORCE_COLOR"in wae||Tgi.includes("--color"),uNa=aNa==="win32",Rgi=wae.TERM==="dumb",gNa=o_t&&o_t.isatty&&o_t.isatty(1)&&wae.TERM&&!Rgi,ANa="CI"in wae&&("GITHUB_ACTIONS"in wae||"GITLAB_CI"in wae||"CIRCLECI"in wae),dNa=!cNa&&(lNa||uNa&&!Rgi||gNa||ANa),Ngi=(e,t,r,n,a=t.substring(0,e)+n,o=t.substring(e+r.length),l=o.indexOf(r))=>a+(l<0?o:Ngi(l,o,r,n)),pNa=(e,t,r,n,a)=>e<0?r+t+n:r+Ngi(e,t,n,a)+n,fNa=(e,t,r=e,n=e.length+1)=>a=>a||!(a===""||a===void 0)?pNa((""+a).indexOf(t,n),a,e,t,r):"",Sh=(e,t,r)=>fNa(`\x1B[${e}m`,`\x1B[${t}m`,r),wgi={reset:Sh(0,0),bold:Sh(1,22,"\x1B[22m\x1B[1m"),dim:Sh(2,22,"\x1B[22m\x1B[2m"),italic:Sh(3,23),underline:Sh(4,24),inverse:Sh(7,27),hidden:Sh(8,28),strikethrough:Sh(9,29),black:Sh(30,39),red:Sh(31,39),green:Sh(32,39),yellow:Sh(33,39),blue:Sh(34,39),magenta:Sh(35,39),cyan:Sh(36,39),white:Sh(37,39),gray:Sh(90,39),bgBlack:Sh(40,49),bgRed:Sh(41,49),bgGreen:Sh(42,49),bgYellow:Sh(43,49),bgBlue:Sh(44,49),bgMagenta:Sh(45,49),bgCyan:Sh(46,49),bgWhite:Sh(47,49),blackBright:Sh(90,39),redBright:Sh(91,39),greenBright:Sh(92,39),yellowBright:Sh(93,39),blueBright:Sh(94,39),magentaBright:Sh(95,39),cyanBright:Sh(96,39),whiteBright:Sh(97,39),bgBlackBright:Sh(100,49),bgRedBright:Sh(101,49),bgGreenBright:Sh(102,49),bgYellowBright:Sh(103,49),bgBlueBright:Sh(104,49),bgMagentaBright:Sh(105,49),bgCyanBright:Sh(106,49),bgWhiteBright:Sh(107,49)},j2r=({useColor:e=dNa}={})=>e?wgi:Object.keys(wgi).reduce((t,r)=>({...t,[r]:String}),{}),{reset:Fmu,bold:Zmu,dim:Lmu,italic:Vmu,underline:Pmu,inverse:Wmu,hidden:Omu,strikethrough:Mmu,black:Hmu,red:Ymu,green:Qmu,yellow:Xmu,blue:Jmu,magenta:Umu,cyan:Kmu,white:jmu,gray:zmu,bgBlack:qmu,bgRed:$mu,bgGreen:eCu,bgYellow:tCu,bgBlue:rCu,bgMagenta:nCu,bgCyan:iCu,bgWhite:sCu,blackBright:oCu,redBright:aCu,greenBright:cCu,yellowBright:lCu,blueBright:uCu,magentaBright:gCu,cyanBright:ACu,whiteBright:dCu,bgBlackBright:pCu,bgRedBright:fCu,bgGreenBright:ICu,bgYellowBright:hCu,bgBlueBright:mCu,bgMagentaBright:CCu,bgCyanBright:_Cu,bgWhiteBright:yCu}=j2r();var WAi=Nt(kgi(),1);import{format as DDa}from"util";import{EOL as SAi}from"os";import{StringDecoder as kDa}from"string_decoder";import{EOL as m_t}from"os";import{Writable as xDa}from"stream";import{EOL as C_t}from"os";import{randomUUID as XDa}from"crypto";var wDa=Object.defineProperty,wp=(e,t)=>wDa(e,"name",{value:t,configurable:!0}),bAi="\x1B[",EAi={CURSOR_HIDE:bAi+"?25l",CURSOR_SHOW:bAi+"?25h"};var RAi=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(RAi||{}),NAi=class{static{wp(this,"EventManager")}emitter=new Bgi;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},D_u=class{static{wp(this,"BaseEventMap")}};function DAi(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}wp(DAi,"isObservable");function kAi(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}wp(kAi,"isReadable");function ySr(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}wp(ySr,"isUnicodeSupported");var TDa="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",RDa=/\u0007/;function PTe(e){return String(e).replace(new RegExp(TDa,"gmi"),"").replace(new RegExp(RDa,"gmi"),"").trim()}wp(PTe,"cleanseAnsi");var X0=j2r();function fSr(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}wp(fSr,"indent");var xAi={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},NDa={...xAi,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},sb=ySr()?xAi:NDa;function VTe(e,...t){return DDa(String(e),...t)}wp(VTe,"splat");var __t={icon:{STARTED:sb.pointer,FAILED:sb.cross,SKIPPED:sb.arrowDown,COMPLETED:sb.tick,OUTPUT:sb.pointerSmall,TITLE:sb.arrowRight,RETRY:sb.warning,ROLLBACK:sb.arrowLeft,PAUSED:sb.squareSmallFilled},color:{STARTED:X0.yellow,FAILED:X0.red,SKIPPED:X0.yellow,COMPLETED:X0.green,RETRY:X0.yellowBright,ROLLBACK:X0.redBright,PAUSED:X0.yellowBright}},GAi=["RETRY","ROLLBACK","FAILED"],WTe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new bSr}static{wp(this,"ListrLogger")}process;log(e,t,r){let n=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(n);return}this.process.toStdout(n)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:VTe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(SAi).filter(n=>!n||n.trim()!=="").map(n=>this.style(e,this.fields(n,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(SAi),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},ISr=class{constructor(e){this.options=e}static{wp(this,"ProcessOutputBuffer")}buffer=[];decoder=new kDa;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},vAi=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new ISr({stream:e})}static{wp(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},bSr=class{constructor(e,t,r){this.options=r,this.stream={stdout:new vAi(e??process.stdout),stderr:new vAi(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{wp(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(EAi.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:PTe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(m_t),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+m_t)})),this.stream.stdout.write(EAi.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+m_t),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+m_t),this.stream.stderr.write(e)}};function FAi(e){let t=new xDa;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}wp(FAi,"createWritable");var V_u=class{constructor(e,t){this.task=e,this.wrapper=t}static{wp(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new MAi("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},GDa=class{static{wp(this,"Spinner")}spinner=ySr()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var BAi={icon:{SKIPPED_WITH_COLLAPSE:sb.arrowDown,SKIPPED_WITHOUT_COLLAPSE:sb.warning,OUTPUT:sb.pointerSmall,OUTPUT_WITH_BOTTOMBAR:sb.pointerSmall,PENDING:sb.pointer,COMPLETED:sb.tick,COMPLETED_WITH_FAILED_SUBTASKS:sb.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:sb.squareSmallFilled,RETRY:sb.warning,ROLLING_BACK:sb.warning,ROLLED_BACK:sb.arrowLeft,FAILED:sb.cross,FAILED_WITH_SUBTASKS:sb.pointer,WAITING:sb.squareSmallFilled,PAUSED:sb.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:X0.yellow,SKIPPED_WITHOUT_COLLAPSE:X0.yellow,PENDING:X0.yellow,COMPLETED:X0.green,COMPLETED_WITH_FAILED_SUBTASKS:X0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:X0.red,RETRY:X0.yellowBright,ROLLING_BACK:X0.redBright,ROLLED_BACK:X0.redBright,FAILED:X0.red,FAILED_WITH_SUBTASKS:X0.red,WAITING:X0.dim,PAUSED:X0.yellowBright}};function ZAi(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),n;return t===0&&r===0&&(n=`0.${Math.floor(e/100)}s`),t>0&&(n=`${t%60}s`),r>0&&(n=`${r}m${n}`),n}wp(ZAi,"parseTimer");var ESr={condition:!0,field:ZAi,format:wp(()=>X0.dim,"format")};function FDa(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}wp(FDa,"parseTimestamp");var ZDa=class hSr{constructor(t,r,n){this.tasks=t,this.options=r,this.events=n,this.options={...hSr.rendererOptions,...this.options,icon:{...BAi.icon,...r?.icon??{}},color:{...BAi.color,...r?.color??{}}},this.spinner=this.options.spinner??new GDa,this.logger=this.options.logger??new WTe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{wp(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...ESr,format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(pAi(),dAi)),{default:r}=await Promise.resolve().then(()=>(yAi(),_Ai)),{default:n}=await Promise.resolve().then(()=>(oSr(),cAi));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=n,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],n=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&n.length>0&&r.push(...n),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(C_t)}style(t,r=!1){let n=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||n.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(n.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&n.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,n){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-n*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(C_t).map((l,A)=>this.truncate(this.indent(l,A),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(C_t).map((l,A)=>this.indent(l,A));break;default:throw new wAi("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(l=>fSr(l,n*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(n=>{if(!n.isEnabled())return[];if(this.cache.render.has(n.id))return this.cache.render.get(n.id);this.calculate(n),this.setupBuffer(n);let a=this.cache.rendererOptions.get(n.id),o=this.cache.rendererTaskOptions.get(n.id),l=[];if(n.isPrompt()){if(this.activePrompt&&this.activePrompt!==n.id)throw new wAi("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(n.on("PROMPT",A=>{let f=PTe(A);f&&(this.prompt=f)}),n.on("STATE",A=>{(A==="PROMPT_COMPLETED"||n.hasFinalized()||n.hasReset())&&(this.prompt=null,this.activePrompt=null,n.off("PROMPT"))}),this.activePrompt=n.id)}if(n.hasTitle()&&(t.some(A=>A.hasFailed())&&!n.hasFailed()&&n.options.exitOnError!==!1&&!(n.isCompleted()||n.isSkipped())?l.push(...this.format(n.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):n.hasFailed()&&a.collapseErrors?l.push(...this.format(!n.hasSubtasks()&&n.message.error&&a.showErrorMessage?n.message.error:n.title,this.style(n),r)):n.isSkipped()&&a.collapseSkips?l.push(...this.format(this.logger.suffix(n.message.skip&&a.showSkipMessage?n.message.skip:n.title,{field:"SKIPPED",condition:a.suffixSkips,format:wp(()=>X0.dim,"format")}),this.style(n),r)):n.isRetrying()?l.push(...this.format(this.logger.suffix(n.title,{field:`RETRY:${n.message.retry.count}`,format:wp(()=>X0.yellow,"format"),condition:a.suffixRetries}),this.style(n),r)):n.isCompleted()&&n.hasTitle()&&Lhe(o.timer?.condition,n.message.duration)?l.push(...this.format(this.logger.suffix(n?.title,{...o.timer,args:[n.message.duration]}),this.style(n),r)):n.isPaused()?l.push(...this.format(this.logger.suffix(n.title,{...a.pausedTimer,args:[n.message.paused-Date.now()]}),this.style(n),r)):l.push(...this.format(n.title,this.style(n),r))),(!n.hasSubtasks()||!a.showSubtasks)&&(n.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?l.push(...this.dump(n,r,"FAILED")):n.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&l.push(...this.dump(n,r,"SKIPPED"))),(n.isPending()||o.persistentOutput)&&l.push(...this.renderOutputBar(n,r)),a.showSubtasks!==!1&&n.hasSubtasks()&&(n.isPending()||n.hasFinalized()&&!n.hasTitle()||n.isCompleted()&&a.collapseSubtasks===!1&&!n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!0)||n.subtasks.some(A=>this.cache.rendererOptions.get(A.id)?.collapseSubtasks===!1)||n.subtasks.some(A=>A.hasFailed())||n.subtasks.some(A=>A.hasRolledBack()))){let A=n.hasTitle()?r+1:r,f=this.renderer(n.subtasks,A);l.push(...f)}return n.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(n.id),this.buffer.output.delete(n.id))),n.isClosed()&&(this.cache.render.set(n.id,l),this.reset(n)),l})}renderOutputBar(t,r){let n=this.buffer.output.get(t.id);return n?n.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...hSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new ISr({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",n=>{let a=this.dump(t,-1,"OUTPUT",n);this.buffer.bottom.get(t.id).write(a.join(C_t))}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new ISr({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",n=>{this.buffer.output.get(t.id).write(n)}),t.on("STATE",n=>{switch(n){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,n="OUTPUT",a){if(!a)switch(n){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&n==="FAILED"&&a===t.title||typeof a!="string"?[]:(n==="OUTPUT"&&(a=PTe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?fSr(t.trim(),this.options.indentation):t.trim()}},LDa=class{constructor(e,t){this.tasks=e,this.options=t}static{wp(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},VDa=class mSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...mSr.rendererOptions,...r,icon:{...__t.icon,...r?.icon??{}},color:{...__t.color,...r?.color??{}}},this.logger=this.options.logger??new WTe({useIcons:!0,toStderr:GAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{wp(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...ESr,field:wp(t=>`PAUSED:${t}`,"field"),format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a?.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",l=>{this.logger.process.toStderr(l,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:wp(()=>X0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:wp(()=>X0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:wp(()=>X0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:wp(()=>X0.red,"format")}});else if(o.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...mSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},PDa=class{constructor(e){this.options=e}static{wp(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let n={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let l=r[o];return typeof l=="function"?[o,l.call(r)]:[o,l]}));Object.keys(r).length>0&&(n.task=a)}return n}},WDa=class LAi{constructor(t,r){this.tasks=t,this.options=r,this.options={...LAi.rendererOptions,...this.options},this.logger=this.options.logger??new WTe({useIcons:!1}),this.serializer=new PDa(this.options)}static{wp(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(RAi),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",n=>{this.renderer(n)}),this.options.state&&r.on("STATE",n=>{this.logger.toStdout(this.serializer.serialize("STATE",n,r))}),this.options.output&&r.on("OUTPUT",n=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",n,r))}),this.options.prompt&&r.on("PROMPT",n=>{this.logger.toStdout(this.serializer.serialize("PROMPT",n,r))}),this.options.title&&r.on("TITLE",n=>{this.logger.toStdout(this.serializer.serialize("TITLE",n,r))}),r.on("MESSAGE",n=>{let a=Object.fromEntries(Object.entries(n).map(([o,l])=>{if(this.options.messages.includes(o))return[o,l]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(l=>Object.keys(a).includes(l))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},ODa=class CSr{constructor(t,r){this.tasks=t,this.options=r,this.options={...CSr.rendererOptions,...this.options,icon:{...__t.icon,...r?.icon??{}},color:{...__t.color,...r?.color??{}}},this.logger=this.options.logger??new WTe({useIcons:!1,toStderr:GAi}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{wp(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...ESr,format:wp(()=>X0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let n=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let l=a.timer;this.logger.log("COMPLETED",r.title,l&&{suffix:{...l,condition:!!r.message?.duration&&l.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let l=PTe(o);l&&this.logger.log("PROMPT",l)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let l=n?.pausedTimer;this.logger.log("PAUSED",r.title,l&&{suffix:{...l,condition:!!o?.paused&&l.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...CSr.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},pSr={default:ZDa,simple:VDa,verbose:ODa,test:WDa,silent:LDa};function VAi(e){return process.stdout.isTTY===!0||e.nonTTY===!0}wp(VAi,"isRendererSupported");function QQe(e){return typeof e=="string"?pSr[e]??pSr.default:typeof e=="function"?e:pSr.default}wp(QQe,"getRendererClass");function PAi(e){if(Lhe(e?.silentRendererCondition))return{renderer:QQe("silent"),selection:"SILENT"};let t={renderer:QQe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!VAi(t.renderer)||Lhe(e?.fallbackRendererCondition)?{renderer:QQe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}wp(PAi,"getRenderer");function Lhe(e,...t){return typeof e=="function"?e(...t):e}wp(Lhe,"assertFunctionOrSelf");var MDa=(0,WAi.default)({circles:!0});function _Sr(e){return MDa(e)}wp(_Sr,"cloneObject");var HDa=class{static{wp(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=wp(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=wp(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function OAi(e){return new Promise(t=>{setTimeout(t,e)})}wp(OAi,"delay");var YDa=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=_Sr(r),this.ctx=_Sr(r.listr.ctx)),this.stack=e?.stack}static{wp(this,"ListrError")}path;ctx},wAi=class extends Error{static{wp(this,"ListrRendererError")}},MAi=class extends Error{static{wp(this,"PromptError")}},QDa=class{constructor(e){this.task=e}static{wp(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=VTe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=VTe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new y_t(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new YDa(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?VTe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return FAi(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},JDa=class extends NAi{static{wp(this,"ListrTaskEventManager")}},UDa=class extends JDa{constructor(e,t,r,n,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=n,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=VTe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{wp(this,"Task")}id=XDa();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),PTe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await Lhe(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await OAi(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=wp(o=>(o instanceof y_t?(o.options={...this.options,...o.options},o.rendererClass=QQe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):kAi(o)?o=new Promise((l,A)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>A(f)),o.on("end",()=>l(null))}):DAi(o)&&(o=new Promise((l,A)=>{o.subscribe({next:wp(f=>{this.output$=f},"next"),error:A,complete:l})})),o),"handleResult"),n=Date.now();this.state$="STARTED";let a=await Lhe(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,l=typeof this.task.retry=="object"&&this.task.retry.delay;for(let A=1;A<=o;A++)try{await r(this.taskFn(e,t));break}catch(f){if(A!==o)this.retry={count:A,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",l&&await this.pause(l);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-n},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof MAi&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(l){throw this.state$="FAILED",t.report(l,"HAS_FAILED_TO_ROLLBACK"),this.close(),l}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await Lhe(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},TAi=class extends NAi{static{wp(this,"ListrEventManager")}},y_t=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new HDa({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof TAi?this.events=this.parentTask.listr.events:this.events=new TAi;let n=PAi({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=n.renderer,this.rendererClassOptions=n.options,this.rendererSelection=n.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{wp(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new UDa(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new QDa(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var XQe=fp.blue(sb.arrowRight),HM=fp.redBright(sb.cross),OTe=fp.yellow(sb.warning);var JQe=(e,t,r)=>`${fp.redBright(`${HM} Validation Error:`)} - - Invalid value for '${fp.bold(e)}': ${fp.bold(KDa(r))} - - ${t}`,HAi=fp.redBright(`${HM} Current directory is not a git directory!`),YAi=fp.redBright(`${HM} Failed to get staged files!`),QAi=(e,t)=>fp.yellow(`${OTe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` -`),XAi=`${HM} No valid configuration found.`,JAi=`${XQe} No staged files found.`,UAi=`${XQe} No staged files match any configured task.`,KAi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return fp.yellow(`${OTe} Skipping backup because ${r}. -`)},jAi=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return fp.yellow(`${OTe} Skipping hiding unstaged changes from partially staged files because ${r}. -`)},zAi=fp.yellow(`${OTe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. -`),SSr="Skipped because of errors from tasks.",qAi="Skipped because of previous git error.",Tae=` - ${fp.redBright(`${HM} lint-staged failed due to a git error.`)}`,vSr=(e,t,r)=>`${fp.redBright(`${HM} Validation Error:`)} - - Invalid value for option '${fp.bold(e)}': ${fp.bold(t)} - - ${r} - -See https://github.com/okonet/lint-staged#command-line-flags`,$Ai=` - ${fp.yellow(`${OTe} lint-staged prevented an empty git commit. - Use the --allow-empty option to continue, or check your task configuration`)} -`,edi=` Any lost modifications can be restored from a git stash: - - > git stash list - stash@{0}: automatic lint-staged backup - > git stash apply --index stash@{0} -`,d0u=fp.redBright(`${HM} Failed to read config from stdin.`),tdi=e=>fp.redBright(`${HM} Failed to read config from file "${e}".`),BSr=(e,t)=>`${fp.redBright(`${t} Failed to parse config from file "${e}".`)} - -${t} - -See https://github.com/okonet/lint-staged#configuration.`;var wSr=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let n of e.output)r(n)};import DXe from"node:path";var ihi=Nt(uT(),1);var rdi=Nt(uT(),1);import qDa from"node:path";import UQe from"node:path";var jDa="\\\\?\\",zDa="\\\\.\\",wG=e=>{if(e===UQe.posix.sep||e===UQe.win32.sep)return UQe.posix.sep;let t=e.split(/[/\\]+/).join(UQe.posix.sep);return(e.startsWith(jDa)||e.startsWith(zDa))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith(UQe.posix.sep)&&(t=t.slice(0,-1)),t};var TSr=(0,rdi.default)("lint-staged:chunkFiles"),$Da=(e,t)=>{if(t===1)return[e];let r=[],n=0;for(let a=0;a{let a=e.map(A=>wG(n||!t?A:qDa.resolve(t,A)));if(!r)return TSr("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;TSr(`Resolved an argument string length of ${o} characters from ${a.length} files`);let l=Math.min(Math.ceil(o/r),a.length);return TSr(`Creating ${l} chunks for maxArgLength of ${r}`),$Da(a,l)};var idi=Nt(uT(),1),sdi=Nt(Ek(),1);import NSr from"node:path";var ndi=(0,idi.default)("lint-staged:generateTasks"),odi=({config:e,cwd:t=process.cwd(),files:r,relative:n=!1})=>{ndi("Generating linter tasks");let a=r.map(o=>wG(NSr.relative(t,o)));return Object.entries(e).map(([o,l])=>{let A=o.startsWith("../"),f=a.filter(E=>A?!0:!E.startsWith("..")&&!NSr.isAbsolute(E)),C=(0,sdi.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(E=>wG(n?E:NSr.resolve(t,E))),b={pattern:o,commands:l,fileList:C};return ndi(`Generated task: -%O`,b),b})};import{EOL as eka}from"node:os";import{Writable as tka}from"node:stream";var rka=new RegExp(eka+"$"),adi=e=>new tka({write:function(t,r,n){e(t.toString().replace(rka,"")),n()}}),nka=({debug:e,quiet:t},r,n)=>t?{renderer:"silent"}:n.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new WTe({processOutput:new bSr(adi(r.log),adi(r.error))})}}:e||n.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},ika=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",cdi=(e,t,r=process.env)=>{let n=nka(e,t,r);return{...n,fallbackRenderer:ika(n,r)}};import ska from"node:path";function b_t(e,t){let r=t!==void 0?t.trim():"ACMR",n=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...n]}var KQe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var ldi=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let n=await QZ(b_t(t,r),{cwd:e});return n?KQe(n).map(a=>wG(ska.resolve(e,a))):[]}catch{return null}};var _di=Nt(uT(),1);import qQe from"node:path";var udi=Nt(uT(),1);import DSr from"node:fs/promises";var jQe=(0,udi.default)("lint-staged:file"),E_t=async(e,t=!0)=>{jQe("Reading file `%s`",e);try{return await DSr.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return jQe("File `%s` doesn't exist, ignoring...",e),null;throw r}},kSr=async(e,t=!0)=>{jQe("Removing file `%s`",e);try{await DSr.unlink(e)}catch(r){if(t&&r.code==="ENOENT")jQe("File `%s` doesn't exist, ignoring...",e);else throw r}},S_t=async(e,t)=>{jQe("Writing file `%s`",e),await DSr.writeFile(e,t)};var Rae=Symbol("ApplyEmptyCommitError"),zQe=new Error("Configuration could not be found"),gdi=new Error("Configuration should be an object or a function"),Adi=new Error("Configuration should not be empty"),v_t=Symbol("GetBackupStashError"),xSr=Symbol("GetStagedFilesError"),QX=Symbol("GitError"),ddi=Symbol("GitRepoError"),pdi=Symbol("HideUnstagedChangesError"),GSr=new Error("Invalid Options"),fdi=Symbol("RestoreMergeStatusError"),B_t=Symbol("RestoreOriginalStateError"),MTe=Symbol("RestoreUnstagedChangesError"),Vhe=Symbol("TaskError");var R2=(0,_di.default)("lint-staged:GitWorkflow"),oka="MERGE_HEAD",aka="MERGE_MODE",cka="MERGE_MSG",Idi=/\x00/,hdi=(e,t=!0)=>e.reduce((r,n)=>{if(Idi.test(n)){let[a,o]=n.split(Idi);t&&r.push(o),r.push(a)}else r.push(n);return r},[]),mdi="lint-staged automatic backup",FSr="lint-staged_unstaged.patch",lka=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],Cdi=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],Phe=(e,t,r)=>{throw t.errors.add(QX),r&&t.errors.add(r),e},w_t=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:n,matchedFileChunks:a,diff:o,diffFilter:l}){this.execGit=(A,f={})=>QZ(A,{...f,cwd:n}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=n,this.diff=o,this.diffFilter=l,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=qQe.resolve(r,oka),this.mergeModeFilename=qQe.resolve(r,aka),this.mergeMsgFilename=qQe.resolve(r,cka)}getHiddenFilepath(t){return qQe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let n=(await this.execGit(["stash","list"])).split(` -`).findIndex(a=>a.includes(mdi));if(n===-1)throw t.errors.add(v_t),new Error("lint-staged automatic backup is missing!");return String(n)}async getDeletedFiles(){R2("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` -`).filter(Boolean).map(n=>qQe.resolve(this.topLevelDir,n));return R2("Found deleted files:",r),r}async backupMergeStatus(){R2("Backing up merge state..."),await Promise.all([E_t(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),E_t(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),E_t(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),R2("Done backing up merge state!")}async restoreMergeStatus(t){R2("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&S_t(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&S_t(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&S_t(this.mergeMsgFilename,this.mergeMsgBuffer)]),R2("Done restoring merge state!")}catch(r){R2("Failed restoring merge state with error:"),R2(r),Phe(new Error("Merge state could not be restored due to an error!"),t,fdi)}}async getPartiallyStagedFiles(){R2("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(n=>{let[a,o]=n;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(n=>n.substr(3)).filter(Boolean);return R2("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if(R2("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let n=this.getHiddenFilepath(FSr),a=hdi(this.partiallyStagedFiles);await this.execGit(["diff",...lka,"--output",n,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",mdi,r]),R2("Done backing up original state!")}catch(r){Phe(r,t)}}async hideUnstagedChanges(t){try{let r=hdi(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){Phe(r,t,pdi)}}async applyModifications(t){R2("Adding task modifications to index...");for(let n of this.matchedFileChunks)await this.execGit(["add","--",...n]);R2("Done adding task modifications to index!"),!await this.execGit(b_t(this.diff,this.diffFilter))&&!this.allowEmpty&&Phe(new Error("Prevented an empty git commit!"),t,Rae)}async restoreUnstagedChanges(t){R2("Restoring unstaged changes...");let r=this.getHiddenFilepath(FSr);try{await this.execGit(["apply",...Cdi,r])}catch(n){R2("Error while restoring changes:"),R2(n),R2("Retrying with 3-way merge");try{await this.execGit(["apply",...Cdi,"--3way",r])}catch(a){R2("Error while restoring unstaged changes using 3-way merge:"),R2(a),Phe(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,MTe)}}}async restoreOriginalState(t){try{R2("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>kSr(r))),await kSr(this.getHiddenFilepath(FSr)),R2("Done restoring original state!")}catch(r){Phe(r,t,B_t)}}async cleanup(t){try{R2("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),R2("Done dropping backup stash!")}catch(r){Phe(r,t)}}};var ydi=Nt(uT(),1);import T_t from"node:path";var uka=(0,ydi.default)("lint-staged:groupFilesByConfig"),bdi=async({configs:e,files:t,singleConfigMode:r})=>{uka("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let n=new Set(t),a={};for(let[o,l]of Object.entries(e)){if(r){a[o]={config:l,files:t};break}let A=T_t.normalize(T_t.dirname(o)),f=b=>{let E=T_t.relative(A,b);return E&&!E.startsWith("..")&&!T_t.isAbsolute(E)},I=Object.keys(l).some(b=>b.startsWith("..")),C=new Set(I?n:void 0);I||n.forEach(b=>{f(b)&&C.add(b)}),C.forEach(b=>{n.delete(b)}),a[o]={config:l,files:Array.from(C)}}return a};var Udi=Nt(uT(),1);var Hdi=Nt(uT(),1);function ZSr(e,t,r){var n=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var l;do l=n.exec(a),l!==null&&o.push(gka(l[1],l[6],l[0]));while(l!==null);return o}function gka(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new Tka,output:[],quiet:e}),PSr=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,Ldi=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(QX))return Tae;if(e.errors.has(Vhe))return SSr},Vdi=e=>{if(e.errors.has(QX))return Tae;if(e.errors.has(Vhe))return SSr},Pdi=e=>e.shouldBackup&&(e.errors.has(Vhe)||e.errors.has(Rae)||e.errors.has(MTe)),Wdi=e=>{if(e.errors.has(QX)&&!e.errors.has(Rae)&&!e.errors.has(MTe))return Tae},Odi=e=>e.shouldBackup,Mdi=e=>{if(e.errors.has(QX)&&!e.errors.has(Rae)&&!e.errors.has(MTe))return Tae;if(e.errors.has(B_t))return Tae};var WSr="lint-staged:taskError",$Qe=(0,Hdi.default)("lint-staged:resolveTaskFn"),Qdi=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",Xdi=(e,t,r,n=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let A=n?fp.redBright(`${HM} ${e}:`):`${XQe} ${e}:`,f=[].concat(r.quiet?[]:["",A]).concat(a||[]).concat(o||[]);r.output.push(f.join(` -`))}else if(n){let A=Qdi(t),f=fp.redBright(` -${HM} ${e} failed without output (${A}).`);r.quiet||r.output.push(f)}},Rka=async e=>{try{let t=await(0,Ydi.default)(e.pid);for(let r of t)try{process.kill(r)}catch(n){$Qe('Failed to kill process with pid "%d": %o',r,n)}}catch(t){$Qe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},Nka=(e,t)=>{let r,n=async()=>{r=Rka(t),await r};return e.events.on(WSr,n,{once:!0}),async()=>{e.events.off(WSr,n),await r}},Dka=(e,t,r)=>{r.errors.add(Vhe),r.events.emit(WSr,Vhe),Xdi(e,t,r,!0);let n=Qdi(t);return new Error(`${fp.redBright(e)} ${fp.dim(`[${n}]`)}`)},Jdi=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:n,isFn:a,shell:o=!1,verbose:l=!1})=>{let[A,...f]=ZSr(e);$Qe("cmd:",A),$Qe("args:",f);let I={cwd:/^git(\.exe)?/i.test(A)?n:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return $Qe("execaOptions:",I),async(C=R_t())=>{let b=o?Osi(a?e:`${e} ${r.join(" ")}`,I):j$(A,a?f:f.concat(r),I),E=Nka(C,b),N=await b;if(await E(),N.failed||N.killed||N.signal!=null)throw Dka(e,N,C);l&&Xdi(e,N,C)}};var kka=(0,Udi.default)("lint-staged:makeCmdTasks"),Kdi=async({commands:e,cwd:t,files:r,topLevelDir:n,shell:a,verbose:o})=>{kka("Creating listr tasks for commands %o",e);let l=Array.isArray(e)?e:[e],A=[];for(let f of l){let I=typeof f=="function",C=I?await f([...r]):f,b=Array.isArray(C)?C:[C];for(let E of b){if(I&&typeof E!="string")throw new Error(JQe("[Function]","Function task should return a string or an array of strings",C));let N=Jdi({command:E,cwd:t,files:r,topLevelDir:n,isFn:I,shell:a,verbose:o});A.push({title:E,command:E,task:N})}}return A};var jdi=Nt(uT(),1);import OSr from"node:path";var HTe=(0,jdi.default)("lint-staged:resolveGitRepo"),xka=async(e=process.cwd())=>{let t=QZ(["rev-parse","--show-toplevel"],{cwd:e}),r=QZ(["rev-parse","--absolute-git-dir"],{cwd:e}),[n,a]=await Promise.all([t,r]);return OSr.relative(n,a)},zdi=async(e=process.cwd())=>{try{HTe("Resolving git repo from `%s`",e),HTe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,HTe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await QZ(["rev-parse","--show-cdup"],{cwd:e}),r=wG(OSr.join(e,t));HTe("Resolved git repository top-level directory to be `%s`",r);let n=await xka(e),a=wG(OSr.join(r,n));return HTe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return HTe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var rhi=Nt(uT(),1);import thi from"node:path";var QIi=Nt(uT(),1),XIi=Nt(ZIi(),1);import oLa from"node:fs/promises";import nRe from"node:path";import{pathToFileURL as rLa}from"node:url";var E0t=e=>import(rLa(e)).then(t=>t.default);import{createRequire as nLa}from"node:module";function LIi(e){try{return nLa(import.meta.url).resolve(e)}catch{return e}}var S0t="lint-staged",v0t="package.json",bBr=["package.yaml","package.yml"],B0t=[v0t,...bBr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var rRe=(0,QIi.default)("lint-staged:loadConfig"),aLa=(e,t)=>{let r=v0t.includes(nRe.basename(e));try{let n=JSON.parse(t);return r?n[S0t]:n}catch(n){if(nRe.basename(e)===v0t){rRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},vBr=(e,t)=>{let r=bBr.includes(nRe.basename(e));try{let n=XIi.default.parse(t);return r?n[S0t]:n}catch(n){if(r){rRe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw n}},JIi="noExt",UIi={".js":E0t,".json":aLa,".mjs":E0t,".cjs":E0t,".yaml":vBr,".yml":vBr,[JIi]:vBr},cLa=async e=>{let t=nRe.resolve(e);return await(await oLa.readFile(t)).toString()},lLa=async e=>{e=nRe.resolve(e);let t=nRe.extname(e)||JIi,r=UIi[t],n=r.length>1?await cLa(e):void 0;return{config:await r(e,n),filepath:e}},D0t=async({configPath:e,cwd:t},r)=>{try{let n;if(e)rRe("Loading configuration from `%s`...",e),n=await lLa(LIi(e));else{rRe("Searching for configuration from `%s`...",t);let{lilconfig:l}=await Promise.resolve().then(()=>Nt(YIi(),1));n=await l(S0t,{searchPlaces:B0t,loaders:UIi}).search(t)}if(!n)return{};let a=await n.config??null,o=n.filepath;return rRe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(n){return rRe("Failed to load configuration from `%s` with error:\n",e,n),r.error(tdi(e)),{}}};var qIi=Nt(uT(),1);import{inspect as pLa}from"node:util";var uLa=/(?{let t=`${e}`,r=null;for(;r=uLa.exec(e);){let n=r[0],a=n.replace(/{/,"").replace(/}/,"");t=t.replace(n,a)}return t},ALa=/{{[^}{]*}}/,dLa=e=>{let t=`${e}`,r=ALa.exec(e)?.[0];if(r){let n=r.replace("{{","{").replace("}}","}");t=t.replace(r,n)}return t},KIi=(e,t)=>{let r=dLa(gLa(e));return r!==e&&t.warn(QAi(e,r)),r};var BBr=(0,qIi.default)("lint-staged:validateConfig"),jIi=e=>e&&typeof e=="object"&&!Array.isArray(e),zIi=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",jIi],["linters",jIi],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),fLa=(e,t,r)=>{if(BBr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw gdi;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw Adi;let n=[],a=Object.entries(e).reduce((o,[l,A])=>{if(zIi.has(l))return zIi.get(l)(A)&&n.push(JQe(l,"Advanced configuration has been deprecated.",A)),o;(!Array.isArray(A)||A.some(I=>typeof I!="string"&&typeof I!="function"))&&typeof A!="string"&&typeof A!="function"&&n.push(JQe(l,"Should be a string, a function, or an array of strings and functions.",A));let f=KIi(l,r);return{...o,[f]:A}},{});if(n.length){let o=n.join(` - -`);throw r.error(BSr(t,o)),new Error(o)}return BBr("Validated config from `%s`:",t),BBr(pLa(e,{compact:!1})),a},NXe=(e,t,r)=>{try{return fLa(e,t,r)}catch(n){throw r.error(BSr(t,n)),n}};var nee=(0,rhi.default)("lint-staged:searchConfigs"),$Ii=["ls-files","-z","--full-name","-t"],ILa=e=>B0t.includes(thi.basename(e)),ehi=e=>e.split("/").length,hLa=(e,t)=>ehi(e)>ehi(t)?-1:1,mLa=e=>t=>t.startsWith(wG(e)),nhi=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:n=r},a)=>{if(nee("Searching for configuration files..."),e)return nee("Using single direct configuration object..."),{"":NXe(e,"config object",a)};if(t){nee("Using single configuration path...");let{config:C,filepath:b}=await D0t({configPath:t},a);return C?{[t]:NXe(C,b,a)}:{}}let[o,l]=await Promise.all([QZ($Ii,{cwd:n}).then(KQe),QZ([...$Ii,"--others","--exclude-standard"],{cwd:n}).then(KQe)]),A=[...o,...l].flatMap(C=>C.startsWith("S ")?[]:[C.replace(/^[HSMRCK?U] /,"")]).filter(ILa).map(C=>wG(thi.join(n,C))).filter(mLa(r)).sort(hLa);nee("Found possible config files:",A);let f=A.reduce((C,b)=>Object.assign(C,{[b]:null}),{});await Promise.all(Object.keys(f).map(C=>D0t({configPath:C},a).then(({config:b,filepath:E})=>{b&&(C!==E&&nee('Config file "%s" resolved to "%s"',C,E),f[C]=NXe(b,E,a))})));let I=Object.entries(f).filter(([,C])=>!!C).reduce((C,[b,E])=>({...C,[b]:E}),{});if(!Object.keys(I).length){nee('Could not find config files inside "%s"',r);let{config:C,filepath:b}=await D0t({cwd:r},a);C?(nee('Found parent configuration file from "%s"',b),I[b]=NXe(C,b,a)):nee('Could not find parent configuration files from "%s"',r)}return nee("Found %d config files",Object.keys(I).length),I};var kXe=(0,ihi.default)("lint-staged:runAll"),k0t=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),shi=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1},F=console)=>{kXe("Running all linter scripts...");let Q=!!a;a=Q?DXe.resolve(a):process.cwd(),kXe("Using working directory `%s`",a);let X=R_t({quiet:I}),{topLevelDir:ae,gitConfigDir:ne}=await zdi(a);if(!ae)throw I||X.output.push(HAi),X.errors.add(ddi),k0t(X);let ce=await QZ(["log","-1"],{cwd:ae}).then(()=>!0).catch(()=>!1);X.shouldBackup=ce&&E,!X.shouldBackup&&!I&&F.warn(KAi(ce,l)),X.shouldHidePartiallyStaged=N,!X.shouldHidePartiallyStaged&&!I&&F.warn(jAi(ce&&E,l));let fe=await ldi({cwd:ae,diff:l,diffFilter:A});if(!fe)throw I||X.output.push(YAi),X.errors.add(xSr),k0t(X,xSr);if(kXe(`Loaded list of staged files in git: -%O`,fe),fe.length===0)return I||X.output.push(JAi),X;let ue=await nhi({configObject:r,configPath:n,cwd:a,topLevelDir:ae},F),de=Object.keys(ue).length;if(de===0)throw X.errors.add(zQe),k0t(X,zQe);let be=await bdi({configs:ue,files:fe,singleConfigMode:r||n!==void 0}),Se=de>1,De=!1,k={ctx:X,exitOnError:!1,registerSignalListeners:!1,...cdi({debug:o,quiet:I},F)},et=0,ct=[],Me=new Set;for(let[Yt,{config:Tr,files:Nr}]of Object.entries(be)){let er=Yt?wG(DXe.relative(a,Yt)):"Config object",vt=RSr({baseDir:ae,files:Nr,maxArgLength:f,relative:C}),xt=Se&&!Q?DXe.dirname(Yt):a,Zr=vt.length;Zr>1&&kXe("Chunked staged files from `%s` into %d part",Yt,Zr);for(let[qt,Xt]of vt.entries()){let lr=await Promise.all(odi({config:Tr,cwd:xt,files:Xt,relative:C}).map(cr=>Kdi({commands:cr.commands,cwd:xt,files:cr.fileList,topLevelDir:ae,shell:b,verbose:B}).then(Ar=>{cr.fileList.forEach(_n=>{let ke=DXe.isAbsolute(_n)?_n:wG(DXe.join(xt,_n));Me.add(ke)}),De=De||Ar.some(_n=>_n.command==="git add");let qr=cr.fileList.length;return{title:`${cr.pattern}${fp.dim(` \u2014 ${qr} ${qr===1?"file":"files"}`)}`,task:async(_n,ke)=>ke.newListr(Ar,{concurrent:!1,exitOnError:!0}),skip:()=>qr===0?`${cr.pattern}${fp.dim(" \u2014 no files")}`:!1}})));et+=lr.length,ct.push({title:`${er}${fp.dim(` \u2014 ${Xt.length} ${Xt.length>1?"files":"file"}`)}`+(Zr>1?fp.dim(` (chunk ${qt+1}/${Zr})...`):""),task:(cr,Ar)=>Ar.newListr(lr,{concurrent:t,exitOnError:!0}),skip:()=>X.errors.has(QX)?qAi:lr.every(cr=>cr.skip())?`${er}${fp.dim(" \u2014 no tasks to run")}`:!1})}}if(De&&!I&&F.warn(zAi),ct.every(Yt=>Yt.skip()))return I||X.output.push(UAi),X;let je=RSr({baseDir:a,files:Array.from(Me),maxArgLength:f,relative:!1}),St=new w_t({allowEmpty:e,gitConfigDir:ne,topLevelDir:ae,matchedFileChunks:je,diff:l,diffFilter:A}),At=new y_t([{title:"Preparing lint-staged...",task:Yt=>St.prepare(Yt)},{title:"Hiding unstaged changes to partially staged files...",task:Yt=>St.hideUnstagedChanges(Yt),enabled:PSr},{title:`Running tasks for ${l?"changed":"staged"} files...`,task:(Yt,Tr)=>Tr.newListr(ct,{concurrent:t}),skip:()=>ct.every(Yt=>Yt.skip())},{title:"Applying modifications from tasks...",task:Yt=>St.applyModifications(Yt),skip:Ldi},{title:"Restoring unstaged changes to partially staged files...",task:Yt=>St.restoreUnstagedChanges(Yt),enabled:PSr,skip:Vdi},{title:"Reverting to original state because of errors...",task:Yt=>St.restoreOriginalState(Yt),enabled:Pdi,skip:Wdi},{title:"Cleaning up temporary files...",task:Yt=>St.cleanup(Yt),enabled:Odi,skip:Mdi}],k);if(kXe("Set max event listeners to the number of tasks: %i",et),X.events.setMaxListeners(et),await At.run(),X.errors.size>0)throw k0t(X);return X};var chi=Nt(uT(),1);import{constants as ohi}from"node:fs";import ahi from"node:fs/promises";import CLa from"node:path";var x0t=(0,chi.default)("lint-staged:validateOptions"),lhi=async(e={},t)=>{if(x0t("Validating options..."),typeof e.cwd=="string")try{let r=CLa.resolve(e.cwd);await ahi.access(r,ohi.F_OK)}catch(r){throw x0t("Failed to validate options: %o",e),t.error(vSr("cwd",e.cwd,r.message)),GSr}if(typeof e.shell=="string")try{await ahi.access(e.shell,ohi.X_OK)}catch(r){throw x0t("Failed to validate options: %o",e),t.error(vSr("shell",e.shell,r.message)),GSr}x0t("Validated options: %o",e)};var wBr=(0,uhi.default)("lint-staged"),_La=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},yLa=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:n,cwd:a,debug:o=!1,diff:l,diffFilter:A,maxArgLength:f=_La()/2,quiet:I=!1,relative:C=!1,shell:b=!1,stash:E=l===void 0,hidePartiallyStaged:N=E,verbose:B=!1}={},F=console)=>{let Q=await QZ(["version","--build-options"],{cwd:a});wBr("%s",Q);let X={allowEmpty:e,concurrent:t,configObject:r,configPath:n,cwd:a,debug:o,diff:l,diffFilter:A,maxArgLength:f,quiet:I,relative:C,shell:b,stash:E,hidePartiallyStaged:N,verbose:B};await lhi(X,F),wBr("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let ae=await shi(X,F);return wBr("Tasks were executed successfully!"),wSr(ae,F),!0}catch(ae){if(ae?.ctx?.errors){let{ctx:ne}=ae;return ne.errors.has(zQe)?F.error(XAi):ne.errors.has(Rae)?F.warn($Ai):ne.errors.has(QX)&&!ne.errors.has(v_t)&&(F.error(Tae),ne.shouldBackup&&F.error(edi)),wSr(ne,F),!1}throw ae}},ghi=yLa;var bLa=()=>{try{return Ahi("git rev-parse --show-toplevel",{encoding:"utf-8"}).trim()}catch{return process.cwd()}},ELa=e=>JSON.stringify(e),SLa=()=>process.env.npm_execpath||process.argv[1]||"yarn",vLa=(e=SLa())=>{let t=r=>`${ELa(e)} ${r}`;return{"*.{yml,yaml,json,graphql,md}":t("format"),"*.{js,mjs,cjs,jsx,ts,tsx}":[t("format"),t("lint")],"*.{ts,tsx}":t("typecheck"),"*.{test,spec}.{ts,tsx}":t("test unit")}},G0t=class extends dhi.BaseCommand{static paths=[["commit","staged"]];args=Su.Rest({required:0});async execute(){try{let t=8190;try{let n=parseInt(Ahi("getconf ARG_MAX",{encoding:"utf-8"}),10);t=Math.floor(n*.5)}catch{}return await ghi({config:vLa(),cwd:bLa(),maxArgLength:t})?0:1}catch{return 1}}};var phi={commands:[e_t,BCt,G0t]};var NBr={};sI(NBr,{SetVersionCommand:()=>xXe,default:()=>yhi});var Chi=Nt(el(),1),_hi=Nt(Sn(),1);$c();import{access as BLa}from"node:fs/promises";import{writeFile as wLa}from"node:fs/promises";import{dirname as TLa}from"node:path";import{join as Ihi}from"node:path";var RLa="package.json",NLa="yarn.lock",DLa="Package manifest was not found in current directory or its ancestors",fhi="/unc/",kLa=/^\/([A-Za-z]:)(?=\/|$)/,xLa=/^([A-Za-z]:)(?=\/|$)/,GLa=e=>{if(!e.toLowerCase().startsWith(fhi))return null;let[t,r,...n]=e.slice(fhi.length).split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},FLa=e=>{if(!e.startsWith("\\\\")&&!e.startsWith("//"))return null;let[t,r,...n]=e.slice(2).replace(/\\/g,"/").split("/");if(!t||!r)return null;let a=n.length>0?`/${n.join("/")}`:"";return[t,r,a]},F0t=(e,t=process.platform)=>{if(t!=="win32")return e;let r=GLa(e);if(r){let[n,a,o]=r;return`\\\\${n}\\${a}${o.replace(/\//g,"\\")}`}return e.replace(kLa,"$1").replace(/\//g,"\\")},ZLa=(e,t=process.platform)=>{if(t!=="win32")return e;let r=FLa(e);if(r){let[n,a,o]=r;return`/unc/${n}/${a}${o.replace(/\\/g,"/")}`}return e.replace(/\\/g,"/").replace(xLa,"/$1")},hhi=async e=>{try{return await BLa(e),!0}catch{return!1}},RBr=async e=>{let t=F0t(e);if(await hhi(Ihi(t,RLa)))return e;let r=ZLa(TLa(t));if(r===e)throw new Error(DLa);return RBr(r)},mhi=async e=>{let t=Ihi(F0t(e),NLa);await hhi(t)||await wLa(t,"")};var xXe=class extends Chi.BaseCommand{static paths=[["set","version","atls"]];static usage=_C.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=await RBr(this.context.cwd),r=process.cwd();await mhi(t);try{process.chdir(F0t(t));let n=["set","version"];n.push("https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs");let a=await this.cli.run(n,{cwd:t}),o=["up","@atls/code-runtime"],l=await this.cli.run(o,{cwd:t}),A=await _hi.Configuration.find(t,this.context.plugins);return await A.triggerHook(f=>f.afterYarnVersionSet,A,{...this.context,cwd:t}),a||l}finally{process.chdir(r)}}};var yhi={commands:[xXe]};var nTr={};sI(nTr,{WorkspaceExportCommand:()=>c4e,default:()=>Q_i});var P_i=Nt(el(),1),W_i=Nt(el(),1),O_i=Nt(Sn(),1),M_i=Nt(Sn(),1),H_i=Nt(Sn(),1),Y_i=Nt(Sn(),1);$c();var Z0t=Nt(ro(),1),GXe=Nt(ro(),1);var bhi=async(e,t,r)=>{let n=e.configuration.get("rcFilename"),a=GXe.ppath.join(e.cwd,n);await Z0t.xfs.existsPromise(a)&&(r.reportInfo(null,n),await Z0t.xfs.copyPromise(GXe.ppath.join(t,n),a,{overwrite:!0}))},Ehi=async(e,t,r)=>{let n=e.configuration.get("yarnPath");if(!n)throw new Error("`yarnPath` is not set");let a=GXe.ppath.relative(e.cwd,n),o=GXe.ppath.join(t,a);r.reportInfo(null,a),await Z0t.xfs.copyPromise(o,n,{overwrite:!0})};var ERe={};sI(ERe,{IMAGE_PACK_NODE_LINKER:()=>rTr,pack:()=>OOa,resolveSupportedArchitectures:()=>V_i});var tTr=Nt(Sn(),1),k_i=Nt(Sn(),1),x_i=Nt(Sn(),1),G_i=Nt(ro(),1),F_i=Nt(Sn(),1),Z_i=Nt(ro(),1),L_i=Nt($he(),1);import{arch as N_i}from"node:os";var lCi=Nt(Sn(),1),uCi=Nt(Sn(),1),gCi=Nt(ro(),1),ACi=Nt(ro(),1),dCi=Nt(ro(),1),hwr=Nt(Sn(),1),mwr=Nt(ro(),1),pCi=Nt(ro(),1),oyt=class e extends lCi.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let n=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:n,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:n,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=n,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(hwr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await pCi.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let n;r.isDirectory()||!(n=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(n[1],mwr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:n}){let a=new ACi.NodeFS,o=async()=>{let l=mwr.ppath.resolve(this.cwd,"../workspaces",hwr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(l)){let C=await n();await a.copyPromise(l,dCi.PortablePath.root,{baseFs:C}),C.discardAndClose()}return l})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(uCi.WorkspaceResolver.protocol)){for(let A;A=this.workspaceMutexes.get(t.locatorHash);)await A;let l=await o();return[new gCi.JailFS(l,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:n})}};var E_i=Nt(Sn(),1),S_i=Nt(Sn(),1);var v_i=Nt(Sn(),1),zwr=Nt(ro(),1),ame=Nt(ro(),1),qwr=Nt($he(),1),FOa=Nt(I_i(),1);var Uwr=Nt(Sn(),1),myt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,n){return this.getResolverByDescriptor(t,n).bindDescriptor(t,r,n)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,n){return await this.getResolverByDescriptor(t,n).getCandidates(t,r,n)}async getSatisfying(t,r,n,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,n,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));return n||null}getResolverByDescriptor(t,r){let n=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!n)throw new Error(`${Uwr.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return n}tryResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));return n||null}getResolverByLocator(t,r){let n=this.resolvers.find(a=>a.supportsLocator(t,r));if(!n)throw new Error(`${Uwr.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return n}};var m_i=Nt(Sn(),1),Cyt=Nt(Sn(),1),C_i=Nt(UC(),1),h_i=/^(?!v)[a-z0-9._-]+$/i,_yt=class{supportsDescriptor(t,r){return!!(m_i.semverUtils.validRange(t.range)||h_i.test(t.range))}supportsLocator(t,r){return!!(C_i.default.valid(t.reference)||h_i.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,n){return n.resolver.bindDescriptor(this.forwardDescriptor(t,n),r,n)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,n){return n.resolver.getCandidates(this.forwardDescriptor(t,n),r,n)}async getSatisfying(t,r,n,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,n,a)}async resolve(t,r){let n=await r.resolver.resolve(this.forwardLocator(t,r),r);return Cyt.structUtils.renamePackage(n,t)}forwardDescriptor(t,r){return Cyt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return Cyt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var yyt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,n){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,n){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,n,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var Kwr=Nt(Sn(),1),__i=Nt(Sn(),1),y_i=Nt(ro(),1);var byt=class extends __i.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,n){return super.getLocalPath(r,this.rewriteOpts(r,n))}async fetch(r,n){if(r.reference.slice(Kwr.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,n);let a=n.checksums.get(r.locatorHash)||null,[o,l]=await n.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:l,localPath:this.getLocalPath(r,n),prefixPath:y_i.PortablePath.dot}}async packWorkspace(r){let n=this.originalProject.getWorkspaceByLocator(r);return await b_i(n,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,n){return r.reference.slice(Kwr.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var jwr=Nt(Sn(),1),Eyt=Nt(Sn(),1),Syt=class extends Eyt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,n){return super.supportsDescriptor(r,this.rewriteOpts(r,n))}supportsLocator(r,n){return super.supportsLocator(r,this.rewriteOpts(r,n))}shouldPersistResolution(r,n){return super.shouldPersistResolution(r,this.rewriteOpts(r,n))}bindDescriptor(r,n,a){return super.bindDescriptor(r,n,this.rewriteOpts(r,a))}getResolutionDependencies(r,n){return super.getResolutionDependencies(r,this.rewriteOpts(r,n))}async getCandidates(r,n,a){return await super.getCandidates(r,n,this.rewriteOpts(r,a))}async getSatisfying(r,n,a){return await super.getSatisfying(r,n,this.rewriteOpts(r,a))}async resolve(r,n){let a=r.reference.slice(Eyt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,n),l=o.getWorkspaceByCwd(a);return{...r,version:l.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?jwr.LinkType.SOFT:jwr.LinkType.HARD,dependencies:l.manifest.dependencies,peerDependencies:l.manifest.peerDependencies,dependenciesMeta:l.manifest.dependenciesMeta,peerDependenciesMeta:l.manifest.peerDependenciesMeta,bin:l.manifest.bin}}rewriteOpts(r,n){return("descriptorHash"in r?r.range:r.reference).slice(Eyt.WorkspaceResolver.protocol.length)==="."?n:{...n,project:this.originalProject}}};var B_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.fetchers||[])t.push(new n);return new S_i.MultiFetcher([new E_i.VirtualFetcher,new byt(e),...t])},w_i=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let n of r.resolvers||[])t.push(new n);return new myt([new yyt,new Syt(e),new _yt,...t])};var T_i=async e=>{let t=await ame.xfs.mktempPromise(),r=await qwr.packUtils.genPackStream(e),n=zwr.ppath.join(t,"package.tgz"),a=ame.xfs.createWriteStream(n);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),ame.xfs.readFilePromise(n)},b_i=async(e,t)=>await ame.xfs.mktempPromise(async r=>{let n=await qwr.packUtils.genPackStream(e),a=zwr.ppath.join(r,"package.tgz"),o=ame.xfs.createWriteStream(a);n.pipe(o),await new Promise(A=>{o.on("finish",A)});let l=await ame.xfs.readFilePromise(a);return await v_i.tgzUtils.convertToZip(l,t)});var $wr=Nt(ro(),1),eTr=Nt(ro(),1),R_i=async e=>{let t=$wr.ppath.join(e,".yarn","releases");if(!await eTr.xfs.existsPromise(t))return;let r=(await eTr.xfs.readdirPromise(t)).sort().find(n=>n.endsWith(".cjs")||n.endsWith(".mjs"));if(r)return $wr.ppath.join(".yarn","releases",r)};var ZOa="linux",LOa="glibc",rTr="pnp",VOa={386:"ia32",amd64:"x64",mips64le:"mips64el",ppc64le:"ppc64"},POa={windows:"win32"},D_i=e=>{if(e)return VOa[e]??e},WOa=e=>POa[e]??e,V_i=e=>{let[t,r]=e?.split("/").slice(0,2)??[],n=WOa(t||ZOa);return new Map([["os",[n]],["cpu",[D_i(r)??D_i(N_i())??N_i()]],["libc",n==="linux"?[LOa]:[]]])},OOa=async(e,t,r,n,a,o={})=>{process.env.IMAGE_PACK=!0;let l=await x_i.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await L_i.packUtils.prepareForPack(r,{report:n},async()=>{r.manifest.devDependencies.clear();let A=new G_i.CwdFS(a),f=await T_i(r);await F_i.tgzUtils.extractArchiveTo(f,A,{stripComponents:1}),await bhi(t,a,n),t.configuration.get("yarnPath")&&await Ehi(t,a,n);let I=tTr.Configuration.create(a,a,e.plugins);I.values.set("compressionLevel",t.configuration.get("compressionLevel")),I.values.set("enableGlobalCache",!1),I.values.set("enableMirror",!1),I.values.set("globalFolder",e.get("globalFolder")),I.values.set("nodeLinker",rTr),I.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),o.platform&&I.values.set("supportedArchitectures",V_i(o.platform)),I.values.set("cacheFolder",Z_i.ppath.join(a,".yarn/packages")),I.values.set("preferAggregateCacheInfo",!0),await tTr.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:I.get("compressionLevel"),enableGlobalCache:I.get("enableGlobalCache"),enableNetwork:I.get("enableNetwork"),enableMirror:I.get("enableMirror"),globalFolder:".yarn/berry",nodeLinker:rTr,yarnPath:await R_i(a)}),await I.getPackageExtensions();let{project:C,workspace:b}=await k_i.Project.find(I,a);if(!b)throw new Error("Workspace not found");b.manifest.dependencies=r.manifest.dependencies,b.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,b.manifest.devDependencies.clear(),await C.install({cache:await oyt.find(I,l),fetcher:B_i(t),resolver:w_i(t),persistProject:!0,report:n})})};var MOa=Nt($he(),1);var c4e=class extends P_i.BaseCommand{static paths=[["export"]];destination=Su.String("-d,--destination",{required:!0});async execute(){let t=await O_i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await M_i.Project.find(t,this.context.cwd);if(!n)throw new W_i.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await H_i.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await ERe.pack(t,r,n,o,this.destination),o.reportInfo(null,`Workspace ${n.manifest.name?Y_i.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var Q_i={commands:[c4e]};var kkr={};sI(kkr,{FormatCommand:()=>eUe,default:()=>HNi});var PNi=Nt(el(),1),WNi=Nt(Sn(),1),ONi=Nt(Sn(),1);$c();var MNi=Nt(Al(),1);var xyt=Nt(Al(),1),s0i=Nt(Al(),1);var vyt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var X_i=Nt(Fpt(),1);var J_i=e=>{let t=e.split(` -`),r=process.cwd(),n=new X_i.default({cwd:r}),a=t.reduce((o,l)=>{let A=n.parseLine(l.trim());return A&&o.push(A),o},[]);return new vyt(a)};var i0i=Nt(Al(),1),BRe=Nt(Al(),1);var Dyt=Nt(Ec(),1);var t0i=Nt(Al(),1),Ryt=Nt(Ec(),1);import{basename as QOa}from"node:path";import{isAbsolute as XOa}from"node:path";import{relative as JOa}from"node:path";var sTr=Nt(Ec(),1),Tyt=Nt(Al(),1),lme=Nt(hTe(),1);var yy="\x1B[",l4e="\x1B]",SRe="\x07",Byt=";",U_i=process.env.TERM_PROGRAM==="Apple_Terminal",SC={};SC.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?yy+(e+1)+"G":yy+(t+1)+";"+(e+1)+"H"};SC.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=yy+-e+"D":e>0&&(r+=yy+e+"C"),t<0?r+=yy+-t+"A":t>0&&(r+=yy+t+"B"),r};SC.cursorUp=(e=1)=>yy+e+"A";SC.cursorDown=(e=1)=>yy+e+"B";SC.cursorForward=(e=1)=>yy+e+"C";SC.cursorBackward=(e=1)=>yy+e+"D";SC.cursorLeft=yy+"G";SC.cursorSavePosition=U_i?"\x1B7":yy+"s";SC.cursorRestorePosition=U_i?"\x1B8":yy+"u";SC.cursorGetPosition=yy+"6n";SC.cursorNextLine=yy+"E";SC.cursorPrevLine=yy+"F";SC.cursorHide=yy+"?25l";SC.cursorShow=yy+"?25h";SC.eraseLines=e=>{let t="";for(let r=0;r[l4e,"8",Byt,Byt,t,SRe,e,l4e,"8",Byt,Byt,SRe].join("");SC.image=(e,t={})=>{let r=`${l4e}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+SRe};SC.iTerm={setCwd:(e=process.cwd())=>`${l4e}50;CurrentDir=${e}${SRe}`,annotation:(e,t={})=>{let r=`${l4e}1337;`,n=typeof t.x<"u",a=typeof t.y<"u";if((n||a)&&!(n&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(n?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+SRe}};var K_i=SC;var wyt=Nt(q_i(),1);function cme(e,t,{target:r="stdout",...n}={}){return wyt.default[r]?K_i.link(e,t):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,t):`${e} (\u200B${t}\u200B)`}cme.isSupported=wyt.default.stdout;cme.stderr=(e,t,r={})=>cme(e,t,{target:"stderr",...r});cme.stderr.isSupported=wyt.default.stderr;var $_i=({children:e,url:t,fallback:r=!0})=>sTr.default.createElement(Tyt.Transform,{transform:n=>cme(n,t,{fallback:r})},sTr.default.createElement(Tyt.Text,null,e));$_i.propTypes={children:lme.default.oneOfType([lme.default.arrayOf(lme.default.node),lme.default.node]).isRequired,url:lme.default.string.isRequired,fallback:lme.default.bool};var e0i=$_i;var Nyt=Nt(Pc(),1),r0i=({url:e,cwd:t=process.cwd(),column:r=0,line:n=0})=>{let a=(0,Ryt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,Ryt.useMemo)(()=>XOa(a)?JOa(t,a):a,[a]),l=(0,Ryt.useMemo)(()=>o.includes("/node_modules/")?QOa(o):o,[o]);return(0,Nyt.jsx)(e0i,{url:e,children:(0,Nyt.jsxs)(t0i.Text,{color:"gray",children:[l,":",n,":",r]})})};import{readFileSync as UOa}from"node:fs";import{fileURLToPath as KOa}from"node:url";var n0i=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return UOa(e.file.startsWith("file:/")?KOa(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var ej=Nt(Pc(),1),kyt=({children:e,cwd:t})=>{let r=(0,Dyt.useMemo)(()=>J_i(e),[e]),n=(0,Dyt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,Dyt.useMemo)(()=>n?n0i(n):null,[n]);return(0,ej.jsxs)(BRe.Box,{flexDirection:"column",flexGrow:1,children:[!!a&&!!r.topFrame?.line&&(0,ej.jsx)(BRe.Box,{marginBottom:1,children:(0,ej.jsx)(d8,{line:r.topFrame.line,column:r.topFrame.column,children:a})}),r.frames.map(o=>(0,ej.jsxs)(BRe.Box,{flexDirection:"row",children:[(0,ej.jsx)(BRe.Box,{flexBasis:"30%",children:(0,ej.jsx)(i0i.Text,{children:o.function})}),(0,ej.jsx)(BRe.Box,{flexBasis:"70%",justifyContent:"flex-end",children:!!o.file&&(0,ej.jsx)(r0i,{cwd:t,url:o.file,line:o.line,column:o.column})})]},OW()))]})};var zae=Nt(Pc(),1),jOa=({children:e})=>e?(0,zae.jsx)(xyt.Box,{marginBottom:1,children:(0,zae.jsx)(s0i.Text,{bold:!0,color:"red",children:e})}):null,Fk=({error:e,cwd:t})=>(0,zae.jsxs)(xyt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,children:[(0,zae.jsx)(jOa,{children:e.message}),!!e.stack&&(0,zae.jsx)(xyt.Box,{children:(0,zae.jsx)(kyt,{cwd:t,children:e.stack})})]});var h4e=Nt(Al(),1),Q0i=Nt(Ec(),1),X0i=Nt(Ec(),1);var aTr=Nt(Al(),1),cTr=Nt(Ec(),1);var g4e=Nt(Ec(),1),v3a=Nt(oTr(),1);var l0i={info:"blue",success:"green",error:"red",warning:"yellow"},u3a={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:l0i[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:l0i[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=kI.info),e==="success"&&(t=kI.tick),e==="error"&&(t=kI.cross),e==="warning"&&(t=kI.warning),{icon:t}}},u0i=u3a;var g3a={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},g0i=g3a;var A3a={styles:{input:({isFocused:e})=>({dimColor:!e})}},A0i=A3a;var d3a={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},d0i=d3a;var p3a={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},p0i=p3a;var f3a={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:kI.square,remainingCharacter:kI.squareLightShade})},f0i=f3a;var I3a={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},I0i=I3a;var h3a={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},h0i=h3a;var m3a={success:"green",error:"red",warning:"yellow",info:"blue"},C3a={success:kI.tick,error:kI.cross,warning:kI.warning,info:kI.info},_3a={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:m3a[e]}),message:()=>({})},config:({variant:e})=>({icon:C3a[e]})},m0i=_3a;var y3a={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:kI.line})},C0i=y3a;var b3a={styles:{value:()=>({})}},_0i=b3a;var E3a={styles:{value:()=>({})}},y0i=E3a;var S3a={styles:{value:()=>({})}},b0i=S3a;var B3a={components:{Alert:u0i,Badge:g0i,ConfirmInput:A0i,MultiSelect:d0i,OrderedList:p0i,ProgressBar:f0i,Select:I0i,Spinner:h0i,StatusMessage:m0i,UnorderedList:C0i,TextInput:_0i,EmailInput:y0i,PasswordInput:b0i}},w3a=(0,g4e.createContext)(B3a);var xS=e=>(0,g4e.useContext)(w3a).components[e];function RG({children:e,color:t="magenta"}){let{styles:r}=xS("Badge"),n=e;return typeof e=="string"&&(n=e.toUpperCase()),cTr.default.createElement(aTr.Text,{...r.container({color:t})}," ",cTr.default.createElement(aTr.Text,{...r.label()},n)," ")}var T3a=Nt(Ec(),1),E0i=Nt(Al(),1);var w0i=Nt(Al(),1),cee=Nt(Ec(),1);var d4e=Nt(Al(),1),TRe=Nt(Ec(),1);var S0i=Nt(Ec(),1);var A4e=kI.line;var Gyt=(0,S0i.createContext)({marker:A4e});function v0i({children:e}){let{marker:t}=(0,TRe.useContext)(Gyt),{styles:r}=xS("UnorderedList");return TRe.default.createElement(d4e.Box,{...r.listItem()},TRe.default.createElement(d4e.Text,{...r.marker()},t),TRe.default.createElement(d4e.Box,{...r.content()},e))}var B0i=Nt(Ec(),1),lTr=(0,B0i.createContext)({depth:0});function R3a({children:e}){let{depth:t}=(0,cee.useContext)(lTr),{styles:r,config:n}=xS("UnorderedList"),a=(0,cee.useMemo)(()=>({depth:t+1}),[t]),o=(0,cee.useMemo)(()=>{let{marker:l}=n();return typeof l=="string"?{marker:l}:Array.isArray(l)?{marker:l[t]??l.at(-1)??A4e}:{marker:A4e}},[n,t]);return cee.default.createElement(lTr.Provider,{value:a},cee.default.createElement(Gyt.Provider,{value:o},cee.default.createElement(w0i.Box,{...r.list()},e)))}R3a.Item=v0i;var x3a=Nt(Ec(),1),R0i=Nt(Al(),1);var N3a=Nt(Ec(),1),T0i=Nt(Al(),1);var p4e=Nt(Ec(),1);var k3a=Nt(Al(),1);var ume=Nt(Ec(),1),gme=Nt(Al(),1);function JM({value:e}){let[t,r]=(0,ume.useState)(0),[n,a]=(0,ume.useState)(null);if(n){let C=(0,gme.measureElement)(n);C.width!==t&&r(C.width)}let o=Math.min(100,Math.max(0,e)),l=Math.round(o/100*t),A=t-l,{styles:f,config:I}=xS("ProgressBar");return ume.default.createElement(gme.Box,{ref:a,...f.container()},l>0&&ume.default.createElement(gme.Text,{...f.completed()},I().completedCharacter.repeat(l)),A>0&&ume.default.createElement(gme.Text,{...f.remaining()},I().remainingCharacter.repeat(A)))}var Z3a=Nt(Ec(),1),D0i=Nt(Al(),1);var G3a=Nt(Ec(),1),N0i=Nt(Al(),1);var f4e=Nt(Ec(),1);var F3a=Nt(Al(),1);var L3a=Nt(Ec(),1),x0i=Nt(Al(),1);var k0i=Nt(Ec(),1);var W3a=Nt(Ec(),1),O3a=Nt(Al(),1);var Fyt=Nt(Ec(),1);var V3a=Nt(Ec(),1),P3a=Nt(Al(),1);var lBu=fp.inverse(" ");var Z0i=Nt(Al(),1),jX=Nt(Ec(),1);var I4e=Nt(Al(),1),RRe=Nt(Ec(),1);var G0i=Nt(Ec(),1);var Zyt=(0,G0i.createContext)({marker:kI.line});function Lyt({children:e}){let{marker:t}=(0,RRe.useContext)(Zyt),{styles:r}=xS("OrderedList");return RRe.default.createElement(I4e.Box,{...r.listItem()},RRe.default.createElement(I4e.Text,{...r.marker()},t),RRe.default.createElement(I4e.Box,{...r.content()},e))}var F0i=Nt(Ec(),1),uTr=(0,F0i.createContext)({marker:""});function M3a({children:e}){let{marker:t}=(0,jX.useContext)(uTr),{styles:r}=xS("OrderedList"),n=0;for(let o of jX.default.Children.toArray(e))!(0,jX.isValidElement)(o)||o.type!==Lyt||n++;let a=String(n).length;return jX.default.createElement(Z0i.Box,{...r.list()},jX.default.Children.map(e,(o,l)=>{if(!(0,jX.isValidElement)(o)||o.type!==Lyt)return o;let A=`${String(l+1).padStart(a)}.`,f=`${t}${A}`;return jX.default.createElement(uTr.Provider,{value:{marker:f}},jX.default.createElement(Zyt.Provider,{value:{marker:f}},o))}))}M3a.Item=Lyt;var Q3a=Nt(Ec(),1),X3a=Nt(Al(),1);var gTr=Nt(Ec(),1);var H3a=Nt(Ec(),1),Y3a=Nt(Al(),1);var GBu=fp.inverse(" ");var J3a=Nt(Ec(),1),L0i=Nt(Al(),1);var U3a=Nt(Ec(),1),V0i=Nt(Al(),1);var z3a=Nt(Ec(),1),q3a=Nt(Al(),1);var Vyt=Nt(Ec(),1);var K3a=Nt(Ec(),1),j3a=Nt(Al(),1);var ewu=fp.inverse(" ");var P0i=Nt(Ec(),1),ATr=Nt(Ec(),1),O0i=Nt(Pc(),1),W0i=({formatter:e})=>{let[t,r]=(0,ATr.useState)(0),[n,a]=(0,ATr.useState)(0);return(0,P0i.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("format:end",l),e.on("end",A),()=>{e.off("start",o),e.off("format:end",l),e.off("end",A)}},[e,t,r,a]),(0,O0i.jsx)(JM,{value:t>0?n/t*100:0})};import{relative as M0i}from"node:path";var NRe=Nt(Al(),1),AO=Nt(Al(),1),H0i=Nt(Ec(),1),Pyt=Nt(Ec(),1);var GS=Nt(Pc(),1),$3a=({changed:e})=>e?(0,GS.jsx)(AO.Text,{color:"green",children:kI.tick}):(0,GS.jsx)(AO.Text,{color:"white",children:kI.circleDotted}),e5a=({changed:e,children:t})=>e?(0,GS.jsx)(AO.Text,{color:"white",children:t}):(0,GS.jsx)(AO.Text,{color:"gray",children:t}),Y0i=({cwd:e,formatter:t})=>{let[r,n]=(0,Pyt.useState)(void 0),[a,o]=(0,Pyt.useState)(0),[l,A]=(0,Pyt.useState)(0);return(0,H0i.useEffect)(()=>{let f=b=>{o(b.files.length)},I=b=>{n({changed:!1,file:M0i(e,b.file)})},C=b=>{n({changed:b.changed,file:M0i(e,b.file)}),b.changed&&A(E=>E+1)};return t.on("start",f),t.on("format:start",I),t.on("format:end",C),()=>{t.off("start",f),t.off("format:start",I),t.off("format:end",C)}},[t,n,o,A]),r?(0,GS.jsxs)(NRe.Box,{flexDirection:"row",width:"100%",children:[(0,GS.jsxs)(NRe.Box,{flexGrow:1,children:[(0,GS.jsx)(RG,{color:"cyan",children:"Format:"}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsx)(e5a,{changed:r.changed,children:r.file})]}),(0,GS.jsx)(NRe.Box,{flexDirection:"row",children:(0,GS.jsxs)(NRe.Box,{children:[(0,GS.jsx)($3a,{changed:r.changed}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsxs)(AO.Text,{color:"green",children:[l," Formatted"]}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsxs)(AO.Text,{color:"white",children:[a," Files"]}),(0,GS.jsx)(AO.Text,{children:" "})]})})]}):(0,GS.jsxs)(NRe.Box,{flexDirection:"row",children:[(0,GS.jsx)(RG,{color:"cyan",children:"Format:"}),(0,GS.jsx)(AO.Text,{children:" "}),(0,GS.jsx)(AO.Text,{color:"white",children:"Loading files..."})]})};var qae=Nt(Pc(),1),J0i=({cwd:e,formatter:t})=>{let[r,n]=(0,Q0i.useState)(!1);return(0,X0i.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,qae.jsx)(h4e.Box,{position:"relative",height:7,children:(0,qae.jsxs)(h4e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,qae.jsx)(h4e.Box,{children:(0,qae.jsx)(Y0i,{cwd:e,formatter:t})}),(0,qae.jsx)(h4e.Box,{marginTop:1,marginBottom:1,children:(0,qae.jsx)(W0i,{formatter:t})})]})})};import Hgc from"node:events";import{writeFile as Ygc}from"node:fs/promises";import{readFile as LNi}from"node:fs/promises";import{relative as Qgc}from"node:path";import{join as Xgc}from"node:path";var GRe={};sI(GRe,{default:()=>pMa,parsers:()=>xRe});var t5a=Object.create,mTr=Object.defineProperty,r5a=Object.getOwnPropertyDescriptor,n5a=Object.getOwnPropertyNames,i5a=Object.getPrototypeOf,s5a=Object.prototype.hasOwnProperty,o5a=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),a5a=(e,t)=>{for(var r in t)mTr(e,r,{get:t[r],enumerable:!0})},c5a=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of n5a(t))!s5a.call(e,a)&&a!==r&&mTr(e,a,{get:()=>t[a],enumerable:!(n=r5a(t,a))||n.enumerable});return e},syi=(e,t,r)=>(r=e!=null?t5a(i5a(e)):{},c5a(t||!e||!e.__esModule?mTr(r,"default",{value:e,enumerable:!0}):r,e)),oyi=o5a(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(se,O){if(se==null)return{};var K={};for(var we in se)if({}.hasOwnProperty.call(se,we)){if(O.includes(we))continue;K[we]=se[we]}return K}var r=class{constructor(se,O,K){this.line=void 0,this.column=void 0,this.index=void 0,this.line=se,this.column=O,this.index=K}},n=class{constructor(se,O){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=se,this.end=O}};function a(se,O){let{line:K,column:we,index:gt}=se;return new r(K,we+O,gt+O)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",l={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},A={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},f=se=>se.type==="UpdateExpression"?A.UpdateExpression[`${se.prefix}`]:A[se.type],I={AccessorIsGenerator:({kind:se})=>`A ${se}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:se})=>`Missing initializer in ${se} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:se})=>`\`${se}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:se})=>`'import.${se}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:se,exportName:O})=>`A string literal cannot be used as an exported binding without \`from\`. -- Did you mean \`export { '${se}' as '${O}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:se})=>`'${se==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:se})=>`Unsyntactic ${se==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:se})=>`A string literal cannot be used as an imported binding. -- Did you mean \`import { "${se}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:se})=>`Expected number in radix ${se}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:se})=>`Escape sequence in keyword ${se}.`,InvalidIdentifier:({identifierName:se})=>`Invalid identifier ${se}.`,InvalidLhs:({ancestor:se})=>`Invalid left-hand side in ${f(se)}.`,InvalidLhsBinding:({ancestor:se})=>`Binding invalid left-hand side in ${f(se)}.`,InvalidLhsOptionalChaining:({ancestor:se})=>`Invalid optional chaining in the left-hand side of ${f(se)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:se})=>`Unexpected character '${se}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:se})=>`Private name #${se} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:se})=>`Label '${se}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:se})=>`This experimental syntax requires enabling the parser plugin: ${se.map(O=>JSON.stringify(O)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:se})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${se.map(O=>JSON.stringify(O)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:se})=>`Duplicate key "${se}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:se})=>`An export name cannot include a lone surrogate, found '\\u${se.toString(16)}'.`,ModuleExportUndefined:({localName:se})=>`Export '${se}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:se})=>`Private names are only allowed in property accesses (\`obj.#${se}\`) or in \`in\` expressions (\`#${se} in obj\`).`,PrivateNameRedeclaration:({identifierName:se})=>`Duplicate private name #${se}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:se})=>`Unexpected keyword '${se}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:se})=>`Unexpected reserved word '${se}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:se,unexpected:O})=>`Unexpected token${O?` '${O}'.`:""}${se?`, expected "${se}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:se,onlyValidPropertyName:O})=>`The only valid meta property for ${se} is ${se}.${O}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:se})=>`Identifier '${se}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},C={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:se})=>`Assigning to '${se}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:se})=>`Binding '${se}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},b=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),E=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:se})=>`Invalid topic token ${se}. In order to use ${se} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${se}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:se})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:se})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),N=["message"];function B(se,O,K){Object.defineProperty(se,O,{enumerable:!1,configurable:!0,value:K})}function F({toMessage:se,code:O,reasonCode:K,syntaxPlugin:we}){let gt=K==="MissingPlugin"||K==="MissingOneOfPlugins";{let sr={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};sr[K]&&(K=sr[K])}return function sr(Yr,Lr){let fi=new SyntaxError;return fi.code=O,fi.reasonCode=K,fi.loc=Yr,fi.pos=Yr.index,fi.syntaxPlugin=we,gt&&(fi.missingPlugin=Lr.missingPlugin),B(fi,"clone",function($n={}){var ra;let{line:kc,column:Nl,index:ca}=(ra=$n.loc)!=null?ra:Yr;return sr(new r(kc,Nl,ca),Object.assign({},Lr,$n.details))}),B(fi,"details",Lr),Object.defineProperty(fi,"message",{configurable:!0,get(){let $n=`${se(Lr)} (${Yr.line}:${Yr.column})`;return this.message=$n,$n},set($n){Object.defineProperty(this,"message",{value:$n,writable:!0})}}),fi}}function Q(se,O){if(Array.isArray(se))return we=>Q(we,se[0]);let K={};for(let we of Object.keys(se)){let gt=se[we],sr=typeof gt=="string"?{message:()=>gt}:typeof gt=="function"?{message:gt}:gt,{message:Yr}=sr,Lr=t(sr,N),fi=typeof Yr=="string"?()=>Yr:Yr;K[we]=F(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:we,toMessage:fi},O?{syntaxPlugin:O}:{},Lr))}return K}var X=Object.assign({},Q(l),Q(I),Q(C),Q`pipelineOperator`(E));function ae(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ne(se){let O=ae();if(se==null)return O;if(se.annexB!=null&&se.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let K of Object.keys(O))se[K]!=null&&(O[K]=se[K]);if(O.startLine===1)se.startIndex==null&&O.startColumn>0?O.startIndex=O.startColumn:se.startColumn==null&&O.startIndex>0&&(O.startColumn=O.startIndex);else if((se.startColumn==null||se.startIndex==null)&&se.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return O}var{defineProperty:ce}=Object,fe=(se,O)=>{se&&ce(se,O,{enumerable:!1,value:se[O]})};function ue(se){return fe(se.loc.start,"index"),fe(se.loc.end,"index"),se}var de=se=>class extends se{parse(){let O=ue(super.parse());return this.optionFlags&128&&(O.tokens=O.tokens.map(ue)),O}parseRegExpLiteral({pattern:O,flags:K}){let we=null;try{we=new RegExp(O,K)}catch{}let gt=this.estreeParseLiteral(we);return gt.regex={pattern:O,flags:K},gt}parseBigIntLiteral(O){let K;try{K=BigInt(O)}catch{K=null}let we=this.estreeParseLiteral(K);return we.bigint=String(we.value||O),we}parseDecimalLiteral(O){let K=this.estreeParseLiteral(null);return K.decimal=String(K.value||O),K}estreeParseLiteral(O){return this.parseLiteral(O,"Literal")}parseStringLiteral(O){return this.estreeParseLiteral(O)}parseNumericLiteral(O){return this.estreeParseLiteral(O)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(O){return this.estreeParseLiteral(O)}directiveToStmt(O){let K=O.value;delete O.value,K.type="Literal",K.raw=K.extra.raw,K.value=K.extra.expressionValue;let we=O;return we.type="ExpressionStatement",we.expression=K,we.directive=K.extra.rawValue,delete K.extra,we}initFunction(O,K){super.initFunction(O,K),O.expression=!1}checkDeclaration(O){O!=null&&this.isObjectProperty(O)?this.checkDeclaration(O.value):super.checkDeclaration(O)}getObjectOrClassMethodParams(O){return O.value.params}isValidDirective(O){var K;return O.type==="ExpressionStatement"&&O.expression.type==="Literal"&&typeof O.expression.value=="string"&&!((K=O.expression.extra)!=null&&K.parenthesized)}parseBlockBody(O,K,we,gt,sr){super.parseBlockBody(O,K,we,gt,sr);let Yr=O.directives.map(Lr=>this.directiveToStmt(Lr));O.body=Yr.concat(O.body),delete O.directives}parsePrivateName(){let O=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(O):O}convertPrivateNameToPrivateIdentifier(O){let K=super.getPrivateNameSV(O);return O=O,delete O.id,O.name=K,O.type="PrivateIdentifier",O}isPrivateName(O){return this.getPluginOption("estree","classFeatures")?O.type==="PrivateIdentifier":super.isPrivateName(O)}getPrivateNameSV(O){return this.getPluginOption("estree","classFeatures")?O.name:super.getPrivateNameSV(O)}parseLiteral(O,K){let we=super.parseLiteral(O,K);return we.raw=we.extra.raw,delete we.extra,we}parseFunctionBody(O,K,we=!1){super.parseFunctionBody(O,K,we),O.expression=O.body.type!=="BlockStatement"}parseMethod(O,K,we,gt,sr,Yr,Lr=!1){let fi=this.startNode();fi.kind=O.kind,fi=super.parseMethod(fi,K,we,gt,sr,Yr,Lr),fi.type="FunctionExpression",delete fi.kind,O.value=fi;let{typeParameters:$n}=O;return $n&&(delete O.typeParameters,fi.typeParameters=$n,this.resetStartLocationFromNode(fi,$n)),Yr==="ClassPrivateMethod"&&(O.computed=!1),this.finishNode(O,"MethodDefinition")}nameIsConstructor(O){return O.type==="Literal"?O.value==="constructor":super.nameIsConstructor(O)}parseClassProperty(...O){let K=super.parseClassProperty(...O);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition"),K}parseClassPrivateProperty(...O){let K=super.parseClassPrivateProperty(...O);return this.getPluginOption("estree","classFeatures")&&(K.type="PropertyDefinition",K.computed=!1),K}parseObjectMethod(O,K,we,gt,sr){let Yr=super.parseObjectMethod(O,K,we,gt,sr);return Yr&&(Yr.type="Property",Yr.kind==="method"&&(Yr.kind="init"),Yr.shorthand=!1),Yr}parseObjectProperty(O,K,we,gt){let sr=super.parseObjectProperty(O,K,we,gt);return sr&&(sr.kind="init",sr.type="Property"),sr}isValidLVal(O,K,we){return O==="Property"?"value":super.isValidLVal(O,K,we)}isAssignable(O,K){return O!=null&&this.isObjectProperty(O)?this.isAssignable(O.value,K):super.isAssignable(O,K)}toAssignable(O,K=!1){if(O!=null&&this.isObjectProperty(O)){let{key:we,value:gt}=O;this.isPrivateName(we)&&this.classScope.usePrivateName(this.getPrivateNameSV(we),we.loc.start),this.toAssignable(gt,K)}else super.toAssignable(O,K)}toAssignableObjectExpressionProp(O,K,we){O.type==="Property"&&(O.kind==="get"||O.kind==="set")?this.raise(X.PatternHasAccessor,O.key):O.type==="Property"&&O.method?this.raise(X.PatternHasMethod,O.key):super.toAssignableObjectExpressionProp(O,K,we)}finishCallExpression(O,K){let we=super.finishCallExpression(O,K);if(we.callee.type==="Import"){var gt,sr;we.type="ImportExpression",we.source=we.arguments[0],we.options=(gt=we.arguments[1])!=null?gt:null,we.attributes=(sr=we.arguments[1])!=null?sr:null,delete we.arguments,delete we.callee}return we}toReferencedArguments(O){O.type!=="ImportExpression"&&super.toReferencedArguments(O)}parseExport(O,K){let we=this.state.lastTokStartLoc,gt=super.parseExport(O,K);switch(gt.type){case"ExportAllDeclaration":gt.exported=null;break;case"ExportNamedDeclaration":gt.specifiers.length===1&>.specifiers[0].type==="ExportNamespaceSpecifier"&&(gt.type="ExportAllDeclaration",gt.exported=gt.specifiers[0].exported,delete gt.specifiers);case"ExportDefaultDeclaration":{var sr;let{declaration:Yr}=gt;Yr?.type==="ClassDeclaration"&&((sr=Yr.decorators)==null?void 0:sr.length)>0&&Yr.start===gt.start&&this.resetStartLocation(gt,we)}break}return gt}parseSubscript(O,K,we,gt){let sr=super.parseSubscript(O,K,we,gt);if(gt.optionalChainMember){if((sr.type==="OptionalMemberExpression"||sr.type==="OptionalCallExpression")&&(sr.type=sr.type.substring(8)),gt.stop){let Yr=this.startNodeAtNode(sr);return Yr.expression=sr,this.finishNode(Yr,"ChainExpression")}}else(sr.type==="MemberExpression"||sr.type==="CallExpression")&&(sr.optional=!1);return sr}isOptionalMemberExpression(O){return O.type==="ChainExpression"?O.expression.type==="MemberExpression":super.isOptionalMemberExpression(O)}hasPropertyAsPrivateName(O){return O.type==="ChainExpression"&&(O=O.expression),super.hasPropertyAsPrivateName(O)}isObjectProperty(O){return O.type==="Property"&&O.kind==="init"&&!O.method}isObjectMethod(O){return O.type==="Property"&&(O.method||O.kind==="get"||O.kind==="set")}finishNodeAt(O,K,we){return ue(super.finishNodeAt(O,K,we))}resetStartLocation(O,K){super.resetStartLocation(O,K),ue(O)}resetEndLocation(O,K=this.state.lastTokEndLoc){super.resetEndLocation(O,K),ue(O)}},be=class{constructor(se,O){this.token=void 0,this.preserveSpace=void 0,this.token=se,this.preserveSpace=!!O}},Se={brace:new be("{"),j_oTag:new be("...",!0)};Se.template=new be("`",!0);var De=!0,k=!0,et=!0,ct=!0,Me=!0,je=!0,St=class{constructor(se,O={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=se,this.keyword=O.keyword,this.beforeExpr=!!O.beforeExpr,this.startsExpr=!!O.startsExpr,this.rightAssociative=!!O.rightAssociative,this.isLoop=!!O.isLoop,this.isAssign=!!O.isAssign,this.prefix=!!O.prefix,this.postfix=!!O.postfix,this.binop=O.binop!=null?O.binop:null,this.updateContext=null}},At=new Map;function Yt(se,O={}){O.keyword=se;let K=lr(se,O);return At.set(se,K),K}function Tr(se,O){return lr(se,{beforeExpr:De,binop:O})}var Nr=-1,er=[],vt=[],xt=[],Zr=[],qt=[],Xt=[];function lr(se,O={}){var K,we,gt,sr;return++Nr,vt.push(se),xt.push((K=O.binop)!=null?K:-1),Zr.push((we=O.beforeExpr)!=null?we:!1),qt.push((gt=O.startsExpr)!=null?gt:!1),Xt.push((sr=O.prefix)!=null?sr:!1),er.push(new St(se,O)),Nr}function cr(se,O={}){var K,we,gt,sr;return++Nr,At.set(se,Nr),vt.push(se),xt.push((K=O.binop)!=null?K:-1),Zr.push((we=O.beforeExpr)!=null?we:!1),qt.push((gt=O.startsExpr)!=null?gt:!1),Xt.push((sr=O.prefix)!=null?sr:!1),er.push(new St("name",O)),Nr}var Ar={bracketL:lr("[",{beforeExpr:De,startsExpr:k}),bracketHashL:lr("#[",{beforeExpr:De,startsExpr:k}),bracketBarL:lr("[|",{beforeExpr:De,startsExpr:k}),bracketR:lr("]"),bracketBarR:lr("|]"),braceL:lr("{",{beforeExpr:De,startsExpr:k}),braceBarL:lr("{|",{beforeExpr:De,startsExpr:k}),braceHashL:lr("#{",{beforeExpr:De,startsExpr:k}),braceR:lr("}"),braceBarR:lr("|}"),parenL:lr("(",{beforeExpr:De,startsExpr:k}),parenR:lr(")"),comma:lr(",",{beforeExpr:De}),semi:lr(";",{beforeExpr:De}),colon:lr(":",{beforeExpr:De}),doubleColon:lr("::",{beforeExpr:De}),dot:lr("."),question:lr("?",{beforeExpr:De}),questionDot:lr("?."),arrow:lr("=>",{beforeExpr:De}),template:lr("template"),ellipsis:lr("...",{beforeExpr:De}),backQuote:lr("`",{startsExpr:k}),dollarBraceL:lr("${",{beforeExpr:De,startsExpr:k}),templateTail:lr("...`",{startsExpr:k}),templateNonTail:lr("...${",{beforeExpr:De,startsExpr:k}),at:lr("@"),hash:lr("#",{startsExpr:k}),interpreterDirective:lr("#!..."),eq:lr("=",{beforeExpr:De,isAssign:ct}),assign:lr("_=",{beforeExpr:De,isAssign:ct}),slashAssign:lr("_=",{beforeExpr:De,isAssign:ct}),xorAssign:lr("_=",{beforeExpr:De,isAssign:ct}),moduloAssign:lr("_=",{beforeExpr:De,isAssign:ct}),incDec:lr("++/--",{prefix:Me,postfix:je,startsExpr:k}),bang:lr("!",{beforeExpr:De,prefix:Me,startsExpr:k}),tilde:lr("~",{beforeExpr:De,prefix:Me,startsExpr:k}),doubleCaret:lr("^^",{startsExpr:k}),doubleAt:lr("@@",{startsExpr:k}),pipeline:Tr("|>",0),nullishCoalescing:Tr("??",1),logicalOR:Tr("||",1),logicalAND:Tr("&&",2),bitwiseOR:Tr("|",3),bitwiseXOR:Tr("^",4),bitwiseAND:Tr("&",5),equality:Tr("==/!=/===/!==",6),lt:Tr("/<=/>=",7),gt:Tr("/<=/>=",7),relational:Tr("/<=/>=",7),bitShift:Tr("<>/>>>",8),bitShiftL:Tr("<>/>>>",8),bitShiftR:Tr("<>/>>>",8),plusMin:lr("+/-",{beforeExpr:De,binop:9,prefix:Me,startsExpr:k}),modulo:lr("%",{binop:10,startsExpr:k}),star:lr("*",{binop:10}),slash:Tr("/",10),exponent:lr("**",{beforeExpr:De,binop:11,rightAssociative:!0}),_in:Yt("in",{beforeExpr:De,binop:7}),_instanceof:Yt("instanceof",{beforeExpr:De,binop:7}),_break:Yt("break"),_case:Yt("case",{beforeExpr:De}),_catch:Yt("catch"),_continue:Yt("continue"),_debugger:Yt("debugger"),_default:Yt("default",{beforeExpr:De}),_else:Yt("else",{beforeExpr:De}),_finally:Yt("finally"),_function:Yt("function",{startsExpr:k}),_if:Yt("if"),_return:Yt("return",{beforeExpr:De}),_switch:Yt("switch"),_throw:Yt("throw",{beforeExpr:De,prefix:Me,startsExpr:k}),_try:Yt("try"),_var:Yt("var"),_const:Yt("const"),_with:Yt("with"),_new:Yt("new",{beforeExpr:De,startsExpr:k}),_this:Yt("this",{startsExpr:k}),_super:Yt("super",{startsExpr:k}),_class:Yt("class",{startsExpr:k}),_extends:Yt("extends",{beforeExpr:De}),_export:Yt("export"),_import:Yt("import",{startsExpr:k}),_null:Yt("null",{startsExpr:k}),_true:Yt("true",{startsExpr:k}),_false:Yt("false",{startsExpr:k}),_typeof:Yt("typeof",{beforeExpr:De,prefix:Me,startsExpr:k}),_void:Yt("void",{beforeExpr:De,prefix:Me,startsExpr:k}),_delete:Yt("delete",{beforeExpr:De,prefix:Me,startsExpr:k}),_do:Yt("do",{isLoop:et,beforeExpr:De}),_for:Yt("for",{isLoop:et}),_while:Yt("while",{isLoop:et}),_as:cr("as",{startsExpr:k}),_assert:cr("assert",{startsExpr:k}),_async:cr("async",{startsExpr:k}),_await:cr("await",{startsExpr:k}),_defer:cr("defer",{startsExpr:k}),_from:cr("from",{startsExpr:k}),_get:cr("get",{startsExpr:k}),_let:cr("let",{startsExpr:k}),_meta:cr("meta",{startsExpr:k}),_of:cr("of",{startsExpr:k}),_sent:cr("sent",{startsExpr:k}),_set:cr("set",{startsExpr:k}),_source:cr("source",{startsExpr:k}),_static:cr("static",{startsExpr:k}),_using:cr("using",{startsExpr:k}),_yield:cr("yield",{startsExpr:k}),_asserts:cr("asserts",{startsExpr:k}),_checks:cr("checks",{startsExpr:k}),_exports:cr("exports",{startsExpr:k}),_global:cr("global",{startsExpr:k}),_implements:cr("implements",{startsExpr:k}),_intrinsic:cr("intrinsic",{startsExpr:k}),_infer:cr("infer",{startsExpr:k}),_is:cr("is",{startsExpr:k}),_mixins:cr("mixins",{startsExpr:k}),_proto:cr("proto",{startsExpr:k}),_require:cr("require",{startsExpr:k}),_satisfies:cr("satisfies",{startsExpr:k}),_keyof:cr("keyof",{startsExpr:k}),_readonly:cr("readonly",{startsExpr:k}),_unique:cr("unique",{startsExpr:k}),_abstract:cr("abstract",{startsExpr:k}),_declare:cr("declare",{startsExpr:k}),_enum:cr("enum",{startsExpr:k}),_module:cr("module",{startsExpr:k}),_namespace:cr("namespace",{startsExpr:k}),_interface:cr("interface",{startsExpr:k}),_type:cr("type",{startsExpr:k}),_opaque:cr("opaque",{startsExpr:k}),name:lr("name",{startsExpr:k}),placeholder:lr("%%",{startsExpr:!0}),string:lr("string",{startsExpr:k}),num:lr("num",{startsExpr:k}),bigint:lr("bigint",{startsExpr:k}),decimal:lr("decimal",{startsExpr:k}),regexp:lr("regexp",{startsExpr:k}),privateName:lr("#name",{startsExpr:k}),eof:lr("eof"),jsxName:lr("jsxName"),jsxText:lr("jsxText",{beforeExpr:!0}),jsxTagStart:lr("jsxTagStart",{startsExpr:!0}),jsxTagEnd:lr("jsxTagEnd")};function qr(se){return se>=93&&se<=133}function _n(se){return se<=92}function ke(se){return se>=58&&se<=133}function jt(se){return se>=58&&se<=137}function Fn(se){return Zr[se]}function Nn(se){return qt[se]}function Hi(se){return se>=29&&se<=33}function po(se){return se>=129&&se<=131}function Vr(se){return se>=90&&se<=92}function xi(se){return se>=58&&se<=92}function io(se){return se>=39&&se<=59}function ga(se){return se===34}function Ya(se){return Xt[se]}function Gc(se){return se>=121&&se<=123}function cl(se){return se>=124&&se<=130}function Sc(se){return vt[se]}function Hr(se){return xt[se]}function Wr(se){return se===57}function Ft(se){return se>=24&&se<=25}function zr(se){return er[se]}er[8].updateContext=se=>{se.pop()},er[5].updateContext=er[7].updateContext=er[23].updateContext=se=>{se.push(Se.brace)},er[22].updateContext=se=>{se[se.length-1]===Se.template?se.pop():se.push(Se.template)},er[143].updateContext=se=>{se.push(Se.j_expr,Se.j_oTag)};var Rn="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",Or="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Qi=new RegExp("["+Rn+"]"),ps=new RegExp("["+Rn+Or+"]");Rn=Or=null;var yo=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],bo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Qa(se,O){let K=65536;for(let we=0,gt=O.length;wese)return!1;if(K+=O[we+1],K>=se)return!0}return!1}function gc(se){return se<65?se===36:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&Qi.test(String.fromCharCode(se)):Qa(se,yo)}function Cg(se){return se<48?se===36:se<58?!0:se<65?!1:se<=90?!0:se<97?se===95:se<=122?!0:se<=65535?se>=170&&ps.test(String.fromCharCode(se)):Qa(se,yo)||Qa(se,bo)}var Nc={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},iA=new Set(Nc.keyword),ma=new Set(Nc.strict),vu=new Set(Nc.strictBind);function li(se,O){return O&&se==="await"||se==="enum"}function Ei(se,O){return li(se,O)||ma.has(se)}function Ps(se){return vu.has(se)}function Xa(se,O){return Ei(se,O)||Ps(se)}function ac(se){return iA.has(se)}function Yl(se,O,K){return se===64&&O===64&&gc(K)}var Wc=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Sg(se){return Wc.has(se)}var Ul=class{constructor(se){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=se}},Xu=class{constructor(se,O){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=se,this.inModule=O}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let se=this.currentThisScopeFlags();return(se&64)>0&&(se&2)===0}get inStaticBlock(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&128)return!0;if(O&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(se){return new Ul(se)}enter(se){this.scopeStack.push(this.createScope(se))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(se){return!!(se.flags&130||!this.parser.inModule&&se.flags&1)}declareName(se,O,K){let we=this.currentScope();if(O&8||O&16){this.checkRedeclarationInScope(we,se,O,K);let gt=we.names.get(se)||0;O&16?gt=gt|4:(we.firstLexicalName||(we.firstLexicalName=se),gt=gt|2),we.names.set(se,gt),O&8&&this.maybeExportDefined(we,se)}else if(O&4)for(let gt=this.scopeStack.length-1;gt>=0&&(we=this.scopeStack[gt],this.checkRedeclarationInScope(we,se,O,K),we.names.set(se,(we.names.get(se)||0)|1),this.maybeExportDefined(we,se),!(we.flags&387));--gt);this.parser.inModule&&we.flags&1&&this.undefinedExports.delete(se)}maybeExportDefined(se,O){this.parser.inModule&&se.flags&1&&this.undefinedExports.delete(O)}checkRedeclarationInScope(se,O,K,we){this.isRedeclaredInScope(se,O,K)&&this.parser.raise(X.VarRedeclaration,we,{identifierName:O})}isRedeclaredInScope(se,O,K){if(!(K&1))return!1;if(K&8)return se.names.has(O);let we=se.names.get(O);return K&16?(we&2)>0||!this.treatFunctionsAsVarInScope(se)&&(we&1)>0:(we&2)>0&&!(se.flags&8&&se.firstLexicalName===O)||!this.treatFunctionsAsVarInScope(se)&&(we&4)>0}checkLocalExport(se){let{name:O}=se;this.scopeStack[0].names.has(O)||this.undefinedExports.set(O,se.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&387)return O}}currentThisScopeFlags(){for(let se=this.scopeStack.length-1;;se--){let{flags:O}=this.scopeStack[se];if(O&451&&!(O&4))return O}}},Da=class extends Ul{constructor(...se){super(...se),this.declareFunctions=new Set}},pu=class extends Xu{createScope(se){return new Da(se)}declareName(se,O,K){let we=this.currentScope();if(O&2048){this.checkRedeclarationInScope(we,se,O,K),this.maybeExportDefined(we,se),we.declareFunctions.add(se);return}super.declareName(se,O,K)}isRedeclaredInScope(se,O,K){if(super.isRedeclaredInScope(se,O,K))return!0;if(K&2048&&!se.declareFunctions.has(O)){let we=se.names.get(O);return(we&4)>0||(we&2)>0}return!1}checkLocalExport(se){this.scopeStack[0].declareFunctions.has(se.name)||super.checkLocalExport(se)}},_g=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(se){return se+this.startIndex}offsetToSourcePos(se){return se-this.startIndex}hasPlugin(se){if(typeof se=="string")return this.plugins.has(se);{let[O,K]=se;if(!this.hasPlugin(O))return!1;let we=this.plugins.get(O);for(let gt of Object.keys(K))if(we?.[gt]!==K[gt])return!1;return!0}}getPluginOption(se,O){var K;return(K=this.plugins.get(se))==null?void 0:K[O]}};function mI(se,O){se.trailingComments===void 0?se.trailingComments=O:se.trailingComments.unshift(...O)}function Qh(se,O){se.leadingComments===void 0?se.leadingComments=O:se.leadingComments.unshift(...O)}function Ri(se,O){se.innerComments===void 0?se.innerComments=O:se.innerComments.unshift(...O)}function Do(se,O,K){let we=null,gt=O.length;for(;we===null&>>0;)we=O[--gt];we===null||we.start>K.start?Ri(se,K.comments):mI(we,K.comments)}var Wt=class extends _g{addComment(se){this.filename&&(se.loc.filename=this.filename);let{commentsLen:O}=this.state;this.comments.length!==O&&(this.comments.length=O),this.comments.push(se),this.state.commentsLen++}processComment(se){let{commentStack:O}=this.state,K=O.length;if(K===0)return;let we=K-1,gt=O[we];gt.start===se.end&&(gt.leadingNode=se,we--);let{start:sr}=se;for(;we>=0;we--){let Yr=O[we],Lr=Yr.end;if(Lr>sr)Yr.containingNode=se,this.finalizeComment(Yr),O.splice(we,1);else{Lr===sr&&(Yr.trailingNode=se);break}}}finalizeComment(se){let{comments:O}=se;if(se.leadingNode!==null||se.trailingNode!==null)se.leadingNode!==null&&mI(se.leadingNode,O),se.trailingNode!==null&&Qh(se.trailingNode,O);else{let{containingNode:K,start:we}=se;if(this.input.charCodeAt(this.offsetToSourcePos(we)-1)===44)switch(K.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Do(K,K.properties,se);break;case"CallExpression":case"OptionalCallExpression":Do(K,K.arguments,se);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Do(K,K.params,se);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Do(K,K.elements,se);break;case"ExportNamedDeclaration":case"ImportDeclaration":Do(K,K.specifiers,se);break;case"TSEnumDeclaration":Do(K,K.members,se);break;case"TSEnumBody":Do(K,K.members,se);break;default:Ri(K,O)}else Ri(K,O)}}finalizeRemainingComments(){let{commentStack:se}=this.state;for(let O=se.length-1;O>=0;O--)this.finalizeComment(se[O]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(se){let{commentStack:O}=this.state,{length:K}=O;if(K===0)return;let we=O[K-1];we.leadingNode===se&&(we.leadingNode=null)}resetPreviousIdentifierLeadingComments(se){let{commentStack:O}=this.state,{length:K}=O;K!==0&&(O[K-1].trailingNode===se?O[K-1].trailingNode=null:K>=2&&O[K-2].trailingNode===se&&(O[K-2].trailingNode=null))}takeSurroundingComments(se,O,K){let{commentStack:we}=this.state,gt=we.length;if(gt===0)return;let sr=gt-1;for(;sr>=0;sr--){let Yr=we[sr],Lr=Yr.end;if(Yr.start===K)Yr.leadingNode=se;else if(Lr===O)Yr.trailingNode=se;else if(Lr0}set strict(O){O?this.flags|=1:this.flags&=-2}init({strictMode:O,sourceType:K,startIndex:we,startLine:gt,startColumn:sr}){this.strict=O===!1?!1:O===!0?!0:K==="module",this.startIndex=we,this.curLine=gt,this.lineStart=-sr,this.startLoc=this.endLoc=new r(gt,sr,we)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(O){O?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(O){O?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(O){O?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(O){O?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(O){O?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(O){O?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(O){O?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(O){O?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(O){O?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(O){O?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(O){O?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(O){O?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let O=new ayi;return O.flags=this.flags,O.startIndex=this.startIndex,O.curLine=this.curLine,O.lineStart=this.lineStart,O.startLoc=this.startLoc,O.endLoc=this.endLoc,O.errors=this.errors.slice(),O.potentialArrowAt=this.potentialArrowAt,O.noArrowAt=this.noArrowAt.slice(),O.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),O.topicContext=this.topicContext,O.labels=this.labels.slice(),O.commentsLen=this.commentsLen,O.commentStack=this.commentStack.slice(),O.pos=this.pos,O.type=this.type,O.value=this.value,O.start=this.start,O.end=this.end,O.lastTokEndLoc=this.lastTokEndLoc,O.lastTokStartLoc=this.lastTokStartLoc,O.context=this.context.slice(),O.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,O.strictErrors=this.strictErrors,O.tokensLength=this.tokensLength,O}},GA=function(se){return se>=48&&se<=57},$i={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},dl={bin:se=>se===48||se===49,oct:se=>se>=48&&se<=55,dec:se=>se>=48&&se<=57,hex:se=>se>=48&&se<=57||se>=65&&se<=70||se>=97&&se<=102};function Uf(se,O,K,we,gt,sr){let Yr=K,Lr=we,fi=gt,$n="",ra=null,kc=K,{length:Nl}=O;for(;;){if(K>=Nl){sr.unterminated(Yr,Lr,fi),$n+=O.slice(kc,K);break}let ca=O.charCodeAt(K);if(Kd(se,ca,O,K)){$n+=O.slice(kc,K);break}if(ca===92){$n+=O.slice(kc,K);let Bl=oA(O,K,we,gt,se==="template",sr);Bl.ch===null&&!ra?ra={pos:K,lineStart:we,curLine:gt}:$n+=Bl.ch,{pos:K,lineStart:we,curLine:gt}=Bl,kc=K}else ca===8232||ca===8233?(++K,++gt,we=K):ca===10||ca===13?se==="template"?($n+=O.slice(kc,K)+` -`,++K,ca===13&&O.charCodeAt(K)===10&&++K,++gt,kc=we=K):sr.unterminated(Yr,Lr,fi):++K}return{pos:K,str:$n,firstInvalidLoc:ra,lineStart:we,curLine:gt,containsInvalid:!!ra}}function Kd(se,O,K,we){return se==="template"?O===96||O===36&&K.charCodeAt(we+1)===123:O===(se==="double"?34:39)}function oA(se,O,K,we,gt,sr){let Yr=!gt;O++;let Lr=$n=>({pos:O,ch:$n,lineStart:K,curLine:we}),fi=se.charCodeAt(O++);switch(fi){case 110:return Lr(` -`);case 114:return Lr("\r");case 120:{let $n;return{code:$n,pos:O}=oo(se,O,K,we,2,!1,Yr,sr),Lr($n===null?null:String.fromCharCode($n))}case 117:{let $n;return{code:$n,pos:O}=cc(se,O,K,we,Yr,sr),Lr($n===null?null:String.fromCodePoint($n))}case 116:return Lr(" ");case 98:return Lr("\b");case 118:return Lr("\v");case 102:return Lr("\f");case 13:se.charCodeAt(O)===10&&++O;case 10:K=O,++we;case 8232:case 8233:return Lr("");case 56:case 57:if(gt)return Lr(null);sr.strictNumericEscape(O-1,K,we);default:if(fi>=48&&fi<=55){let $n=O-1,ra=/^[0-7]+/.exec(se.slice($n,O+2))[0],kc=parseInt(ra,8);kc>255&&(ra=ra.slice(0,-1),kc=parseInt(ra,8)),O+=ra.length-1;let Nl=se.charCodeAt(O);if(ra!=="0"||Nl===56||Nl===57){if(gt)return Lr(null);sr.strictNumericEscape($n,K,we)}return Lr(String.fromCharCode(kc))}return Lr(String.fromCharCode(fi))}}function oo(se,O,K,we,gt,sr,Yr,Lr){let fi=O,$n;return{n:$n,pos:O}=Ki(se,O,K,we,16,gt,sr,!1,Lr,!Yr),$n===null&&(Yr?Lr.invalidEscapeSequence(fi,K,we):O=fi-1),{code:$n,pos:O}}function Ki(se,O,K,we,gt,sr,Yr,Lr,fi,$n){let ra=O,kc=gt===16?$i.hex:$i.decBinOct,Nl=gt===16?dl.hex:gt===10?dl.dec:gt===8?dl.oct:dl.bin,ca=!1,Bl=0;for(let $g=0,SA=sr??1/0;$g=97?lp=lI-97+10:lI>=65?lp=lI-65+10:GA(lI)?lp=lI-48:lp=1/0,lp>=gt){if(lp<=9&&$n)return{n:null,pos:O};if(lp<=9&&fi.invalidDigit(O,K,we,gt))lp=0;else if(Yr)lp=0,ca=!0;else break}++O,Bl=Bl*gt+lp}return O===ra||sr!=null&&O-ra!==sr||ca?{n:null,pos:O}:{n:Bl,pos:O}}function cc(se,O,K,we,gt,sr){let Yr=se.charCodeAt(O),Lr;if(Yr===123){if(++O,{code:Lr,pos:O}=oo(se,O,K,we,se.indexOf("}",O)-O,!0,gt,sr),++O,Lr!==null&&Lr>1114111)if(gt)sr.invalidCodePoint(O,K,we);else return{code:null,pos:O}}else({code:Lr,pos:O}=oo(se,O,K,we,4,!1,gt,sr));return{code:Lr,pos:O}}function Xs(se,O,K){return new r(K,se-O,se)}var ws=new Set([103,109,115,105,121,117,100,118]),Gs=class{constructor(se){let O=se.startIndex||0;this.type=se.type,this.value=se.value,this.start=O+se.start,this.end=O+se.end,this.loc=new n(se.startLoc,se.endLoc)}},Ma=class extends Wt{constructor(se,O){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(K,we,gt,sr)=>this.optionFlags&1024?(this.raise(X.InvalidDigit,Xs(K,we,gt),{radix:sr}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(X.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(X.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(X.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(X.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(K,we,gt)=>{this.recordStrictModeErrors(X.StrictNumericEscape,Xs(K,we,gt))},unterminated:(K,we,gt)=>{throw this.raise(X.UnterminatedString,Xs(K-1,we,gt))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(X.StrictNumericEscape),unterminated:(K,we,gt)=>{throw this.raise(X.UnterminatedTemplate,Xs(K,we,gt))}}),this.state=new OA,this.state.init(se),this.input=O,this.length=O.length,this.comments=[],this.isLookahead=!1}pushToken(se){this.tokens.length=this.state.tokensLength,this.tokens.push(se),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new Gs(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(se){return this.match(se)?(this.next(),!0):!1}match(se){return this.state.type===se}createLookaheadState(se){return{pos:se.pos,value:null,type:se.type,start:se.start,end:se.end,context:[this.curContext()],inType:se.inType,startLoc:se.startLoc,lastTokEndLoc:se.lastTokEndLoc,curLine:se.curLine,lineStart:se.lineStart,curPosition:se.curPosition}}lookahead(){let se=this.state;this.state=this.createLookaheadState(se),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let O=this.state;return this.state=se,O}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(se){return Yn.lastIndex=se,Yn.test(this.input)?Yn.lastIndex:se}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(se){return Ko.lastIndex=se,Ko.test(this.input)?Ko.lastIndex:se}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(se){let O=this.input.charCodeAt(se);if((O&64512)===55296&&++sethis.raise(O,K)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(se){let O;this.isLookahead||(O=this.state.curPosition());let K=this.state.pos,we=this.input.indexOf(se,K+2);if(we===-1)throw this.raise(X.UnterminatedComment,this.state.curPosition());for(this.state.pos=we+se.length,Ru.lastIndex=K+2;Ru.test(this.input)&&Ru.lastIndex<=we;)++this.state.curLine,this.state.lineStart=Ru.lastIndex;if(this.isLookahead)return;let gt={type:"CommentBlock",value:this.input.slice(K+2,we),start:this.sourceToOffsetPos(K),end:this.sourceToOffsetPos(we+se.length),loc:new n(O,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(gt),gt}skipLineComment(se){let O=this.state.pos,K;this.isLookahead||(K=this.state.curPosition());let we=this.input.charCodeAt(this.state.pos+=se);if(this.state.posse)){let gt=this.skipLineComment(3);gt!==void 0&&(this.addComment(gt),O?.push(gt))}else break e}else if(K===60&&!this.inModule&&this.optionFlags&4096){let we=this.state.pos;if(this.input.charCodeAt(we+1)===33&&this.input.charCodeAt(we+2)===45&&this.input.charCodeAt(we+3)===45){let gt=this.skipLineComment(4);gt!==void 0&&(this.addComment(gt),O?.push(gt))}else break e}else break e}}if(O?.length>0){let K=this.state.pos,we={start:this.sourceToOffsetPos(se),end:this.sourceToOffsetPos(K),comments:O,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(we)}}finishToken(se,O){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let K=this.state.type;this.state.type=se,this.state.value=O,this.isLookahead||this.updateContext(K)}replaceToken(se){this.state.type=se,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let se=this.state.pos+1,O=this.codePointAtPos(se);if(O>=48&&O<=57)throw this.raise(X.UnexpectedDigitAfterHash,this.state.curPosition());if(O===123||O===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(O===123?X.RecordExpressionHashIncorrectStartSyntaxType:X.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,O===123?this.finishToken(7):this.finishToken(1)}else gc(O)?(++this.state.pos,this.finishToken(139,this.readWord1(O))):O===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let se=this.input.charCodeAt(this.state.pos+1);if(se>=48&&se<=57){this.readNumber(!0);return}se===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let se=this.input.charCodeAt(this.state.pos+1);if(se!==33)return!1;let O=this.state.pos;for(this.state.pos+=1;!Vs(se)&&++this.state.pos=48&&O<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(se){switch(se){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(X.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(X.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let O=this.input.charCodeAt(this.state.pos+1);if(O===120||O===88){this.readRadixNumber(16);return}if(O===111||O===79){this.readRadixNumber(8);return}if(O===98||O===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(se);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(se);return;case 124:case 38:this.readToken_pipe_amp(se);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(se);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(se);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(gc(se)){this.readWord(se);return}}throw this.raise(X.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(se)})}finishOp(se,O){let K=this.input.slice(this.state.pos,this.state.pos+O);this.state.pos+=O,this.finishToken(se,K)}readRegexp(){let se=this.state.startLoc,O=this.state.start+1,K,we,{pos:gt}=this.state;for(;;++gt){if(gt>=this.length)throw this.raise(X.UnterminatedRegExp,a(se,1));let fi=this.input.charCodeAt(gt);if(Vs(fi))throw this.raise(X.UnterminatedRegExp,a(se,1));if(K)K=!1;else{if(fi===91)we=!0;else if(fi===93&&we)we=!1;else if(fi===47&&!we)break;K=fi===92}}let sr=this.input.slice(O,gt);++gt;let Yr="",Lr=()=>a(se,gt+2-O);for(;gt=2&&this.input.charCodeAt(O)===48;if(Lr){let Nl=this.input.slice(O,this.state.pos);if(this.recordStrictModeErrors(X.StrictOctalLiteral,K),!this.state.strict){let ca=Nl.indexOf("_");ca>0&&this.raise(X.ZeroDigitNumericSeparator,a(K,ca))}Yr=Lr&&!/[89]/.test(Nl)}let fi=this.input.charCodeAt(this.state.pos);if(fi===46&&!Yr&&(++this.state.pos,this.readInt(10),we=!0,fi=this.input.charCodeAt(this.state.pos)),(fi===69||fi===101)&&!Yr&&(fi=this.input.charCodeAt(++this.state.pos),(fi===43||fi===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(X.InvalidOrMissingExponent,K),we=!0,sr=!0,fi=this.input.charCodeAt(this.state.pos)),fi===110&&((we||Lr)&&this.raise(X.InvalidBigIntLiteral,K),++this.state.pos,gt=!0),fi===109){this.expectPlugin("decimal",this.state.curPosition()),(sr||Lr)&&this.raise(X.InvalidDecimal,K),++this.state.pos;var $n=!0}if(gc(this.codePointAtPos(this.state.pos)))throw this.raise(X.NumberIdentifier,this.state.curPosition());let ra=this.input.slice(O,this.state.pos).replace(/[_mn]/g,"");if(gt){this.finishToken(136,ra);return}if($n){this.finishToken(137,ra);return}let kc=Yr?parseInt(ra,8):parseFloat(ra);this.finishToken(135,kc)}readCodePoint(se){let{code:O,pos:K}=cc(this.input,this.state.pos,this.state.lineStart,this.state.curLine,se,this.errorHandlers_readCodePoint);return this.state.pos=K,O}readString(se){let{str:O,pos:K,curLine:we,lineStart:gt}=Uf(se===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=K+1,this.state.lineStart=gt,this.state.curLine=we,this.finishToken(134,O)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let se=this.input[this.state.pos],{str:O,firstInvalidLoc:K,pos:we,curLine:gt,lineStart:sr}=Uf("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=we+1,this.state.lineStart=sr,this.state.curLine=gt,K&&(this.state.firstInvalidTemplateEscapePos=new r(K.curLine,K.pos-K.lineStart,this.sourceToOffsetPos(K.pos))),this.input.codePointAt(we)===96?this.finishToken(24,K?null:se+O+"`"):(this.state.pos++,this.finishToken(25,K?null:se+O+"${"))}recordStrictModeErrors(se,O){let K=O.index;this.state.strict&&!this.state.strictErrors.has(K)?this.raise(se,O):this.state.strictErrors.set(K,[se,O])}readWord1(se){this.state.containsEsc=!1;let O="",K=this.state.pos,we=this.state.pos;for(se!==void 0&&(this.state.pos+=se<=65535?1:2);this.state.pos=0;Yr--){let Lr=sr[Yr];if(Lr.loc.index===gt)return sr[Yr]=se(we,K);if(Lr.loc.indexthis.hasPlugin(O)))throw this.raise(X.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:se})}errorBuilder(se){return(O,K,we)=>{this.raise(se,Xs(O,K,we))}}},Dc=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},As=class{constructor(se){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=se}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Dc)}exit(){let se=this.stack.pop(),O=this.current();for(let[K,we]of Array.from(se.undefinedPrivateNames))O?O.undefinedPrivateNames.has(K)||O.undefinedPrivateNames.set(K,we):this.parser.raise(X.InvalidPrivateFieldResolution,we,{identifierName:K})}declarePrivateName(se,O,K){let{privateNames:we,loneAccessors:gt,undefinedPrivateNames:sr}=this.current(),Yr=we.has(se);if(O&3){let Lr=Yr&>.get(se);if(Lr){let fi=Lr&4,$n=O&4,ra=Lr&3,kc=O&3;Yr=ra===kc||fi!==$n,Yr||gt.delete(se)}else Yr||gt.set(se,O)}Yr&&this.parser.raise(X.PrivateNameRedeclaration,K,{identifierName:se}),we.add(se),sr.delete(se)}usePrivateName(se,O){let K;for(K of this.stack)if(K.privateNames.has(se))return;K?K.undefinedPrivateNames.set(se,O):this.parser.raise(X.InvalidPrivateFieldResolution,O,{identifierName:se})}},Tf=class{constructor(se=0){this.type=se}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},cm=class extends Tf{constructor(se){super(se),this.declarationErrors=new Map}recordDeclarationError(se,O){let K=O.index;this.declarationErrors.set(K,[se,O])}clearDeclarationError(se){this.declarationErrors.delete(se)}iterateErrors(se){this.declarationErrors.forEach(se)}},Fl=class{constructor(se){this.parser=void 0,this.stack=[new Tf],this.parser=se}enter(se){this.stack.push(se)}exit(){this.stack.pop()}recordParameterInitializerError(se,O){let K=O.loc.start,{stack:we}=this,gt=we.length-1,sr=we[gt];for(;!sr.isCertainlyParameterDeclaration();){if(sr.canBeArrowParameterDeclaration())sr.recordDeclarationError(se,K);else return;sr=we[--gt]}this.parser.raise(se,K)}recordArrowParameterBindingError(se,O){let{stack:K}=this,we=K[K.length-1],gt=O.loc.start;if(we.isCertainlyParameterDeclaration())this.parser.raise(se,gt);else if(we.canBeArrowParameterDeclaration())we.recordDeclarationError(se,gt);else return}recordAsyncArrowParametersError(se){let{stack:O}=this,K=O.length-1,we=O[K];for(;we.canBeArrowParameterDeclaration();)we.type===2&&we.recordDeclarationError(X.AwaitBindingIdentifier,se),we=O[--K]}validateAsPattern(){let{stack:se}=this,O=se[se.length-1];O.canBeArrowParameterDeclaration()&&O.iterateErrors(([K,we])=>{this.parser.raise(K,we);let gt=se.length-2,sr=se[gt];for(;sr.canBeArrowParameterDeclaration();)sr.clearDeclarationError(we.index),sr=se[--gt]})}};function rc(){return new Tf(3)}function sd(){return new cm(1)}function Om(){return new cm(2)}function il(){return new Tf}var FA=class{constructor(){this.stacks=[]}enter(se){this.stacks.push(se)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function ZA(se,O){return(se?2:0)|(O?1:0)}var El=class extends Ma{addExtra(se,O,K,we=!0){if(!se)return;let{extra:gt}=se;gt==null&&(gt={},se.extra=gt),we?gt[O]=K:Object.defineProperty(gt,O,{enumerable:we,value:K})}isContextual(se){return this.state.type===se&&!this.state.containsEsc}isUnparsedContextual(se,O){let K=se+O.length;if(this.input.slice(se,K)===O){let we=this.input.charCodeAt(K);return!(Cg(we)||(we&64512)===55296)}return!1}isLookaheadContextual(se){let O=this.nextTokenStart();return this.isUnparsedContextual(O,se)}eatContextual(se){return this.isContextual(se)?(this.next(),!0):!1}expectContextual(se,O){if(!this.eatContextual(se)){if(O!=null)throw this.raise(O,this.state.startLoc);this.unexpected(null,se)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ju(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Ju(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(se=!0){(se?this.isLineTerminator():this.eat(13))||this.raise(X.MissingSemicolon,this.state.lastTokEndLoc)}expect(se,O){this.eat(se)||this.unexpected(O,se)}tryParse(se,O=this.state.clone()){let K={node:null};try{let we=se((gt=null)=>{throw K.node=gt,K});if(this.state.errors.length>O.errors.length){let gt=this.state;return this.state=O,this.state.tokensLength=gt.tokensLength,{node:we,error:gt.errors[O.errors.length],thrown:!1,aborted:!1,failState:gt}}return{node:we,error:null,thrown:!1,aborted:!1,failState:null}}catch(we){let gt=this.state;if(this.state=O,we instanceof SyntaxError)return{node:null,error:we,thrown:!0,aborted:!1,failState:gt};if(we===K)return{node:K.node,error:null,thrown:!1,aborted:!0,failState:gt};throw we}}checkExpressionErrors(se,O){if(!se)return!1;let{shorthandAssignLoc:K,doubleProtoLoc:we,privateKeyLoc:gt,optionalParametersLoc:sr}=se,Yr=!!K||!!we||!!sr||!!gt;if(!O)return Yr;K!=null&&this.raise(X.InvalidCoverInitializedName,K),we!=null&&this.raise(X.DuplicateProto,we),gt!=null&&this.raise(X.UnexpectedPrivateField,gt),sr!=null&&this.unexpected(sr)}isLiteralPropertyName(){return jt(this.state.type)}isPrivateName(se){return se.type==="PrivateName"}getPrivateNameSV(se){return se.id.name}hasPropertyAsPrivateName(se){return(se.type==="MemberExpression"||se.type==="OptionalMemberExpression")&&this.isPrivateName(se.property)}isObjectProperty(se){return se.type==="ObjectProperty"}isObjectMethod(se){return se.type==="ObjectMethod"}initializeScopes(se=this.options.sourceType==="module"){let O=this.state.labels;this.state.labels=[];let K=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let we=this.inModule;this.inModule=se;let gt=this.scope,sr=this.getScopeHandler();this.scope=new sr(this,se);let Yr=this.prodParam;this.prodParam=new FA;let Lr=this.classScope;this.classScope=new As(this);let fi=this.expressionScope;return this.expressionScope=new Fl(this),()=>{this.state.labels=O,this.exportedIdentifiers=K,this.inModule=we,this.scope=gt,this.prodParam=Yr,this.classScope=Lr,this.expressionScope=fi}}enterInitialScopes(){let se=0;this.inModule&&(se|=2),this.scope.enter(1),this.prodParam.enter(se)}checkDestructuringPrivate(se){let{privateKeyLoc:O}=se;O!==null&&this.expectPlugin("destructuringPrivate",O)}},yg=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Mp=class{constructor(se,O,K){this.type="",this.start=O,this.end=0,this.loc=new n(K),se?.optionFlags&64&&(this.range=[O,0]),se!=null&&se.filename&&(this.loc.filename=se.filename)}},MA=Mp.prototype;MA.__clone=function(){let se=new Mp(void 0,this.start,this.loc.start),O=Object.keys(this);for(let K=0,we=O.length;K`Cannot overwrite reserved type ${se}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:se,enumName:O})=>`Boolean enum members need to be initialized. Use either \`${se} = true,\` or \`${se} = false,\` in enum \`${O}\`.`,EnumDuplicateMemberName:({memberName:se,enumName:O})=>`Enum member names need to be unique, but the name \`${se}\` has already been used before in enum \`${O}\`.`,EnumInconsistentMemberValues:({enumName:se})=>`Enum \`${se}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:se,enumName:O})=>`Enum type \`${se}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${O}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:se})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${se}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:se,memberName:O,explicitType:K})=>`Enum \`${se}\` has type \`${K}\`, so the initializer of \`${O}\` needs to be a ${K} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:se,memberName:O})=>`Symbol enum members cannot be initialized. Use \`${O},\` in enum \`${se}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:se,memberName:O})=>`The enum member initializer for \`${O}\` needs to be a literal (either a boolean, number, or string) in enum \`${se}\`.`,EnumInvalidMemberName:({enumName:se,memberName:O,suggestion:K})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${O}\`, consider using \`${K}\`, in enum \`${se}\`.`,EnumNumberMemberNotInitialized:({enumName:se,memberName:O})=>`Number enum members need to be initialized, e.g. \`${O} = 1\` in enum \`${se}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:se})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${se}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:se})=>`Unexpected reserved type ${se}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:se,suggestion:O})=>`\`declare export ${se}\` is not supported. Use \`${O}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Wa(se){return se.type==="DeclareExportAllDeclaration"||se.type==="DeclareExportDeclaration"&&(!se.declaration||se.declaration.type!=="TypeAlias"&&se.declaration.type!=="InterfaceDeclaration")}function Ca(se){return se.importKind==="type"||se.importKind==="typeof"}var ld={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Rp(se,O){let K=[],we=[];for(let gt=0;gtclass extends se{constructor(...O){super(...O),this.flowPragma=void 0}getScopeHandler(){return pu}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(O,K){O!==134&&O!==13&&O!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(O,K)}addComment(O){if(this.flowPragma===void 0){let K=np.exec(O.value);if(K)if(K[1]==="flow")this.flowPragma="flow";else if(K[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(O)}flowParseTypeInitialiser(O){let K=this.state.inType;this.state.inType=!0,this.expect(O||14);let we=this.flowParseType();return this.state.inType=K,we}flowParsePredicate(){let O=this.startNode(),K=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>K.index+1&&this.raise(Fs.UnexpectedSpaceBetweenModuloChecks,K),this.eat(10)?(O.value=super.parseExpression(),this.expect(11),this.finishNode(O,"DeclaredPredicate")):this.finishNode(O,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let O=this.state.inType;this.state.inType=!0,this.expect(14);let K=null,we=null;return this.match(54)?(this.state.inType=O,we=this.flowParsePredicate()):(K=this.flowParseType(),this.state.inType=O,this.match(54)&&(we=this.flowParsePredicate())),[K,we]}flowParseDeclareClass(O){return this.next(),this.flowParseInterfaceish(O,!0),this.finishNode(O,"DeclareClass")}flowParseDeclareFunction(O){this.next();let K=O.id=this.parseIdentifier(),we=this.startNode(),gt=this.startNode();this.match(47)?we.typeParameters=this.flowParseTypeParameterDeclaration():we.typeParameters=null,this.expect(10);let sr=this.flowParseFunctionTypeParams();return we.params=sr.params,we.rest=sr.rest,we.this=sr._this,this.expect(11),[we.returnType,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),gt.typeAnnotation=this.finishNode(we,"FunctionTypeAnnotation"),K.typeAnnotation=this.finishNode(gt,"TypeAnnotation"),this.resetEndLocation(K),this.semicolon(),this.scope.declareName(O.id.name,2048,O.id.loc.start),this.finishNode(O,"DeclareFunction")}flowParseDeclare(O,K){if(this.match(80))return this.flowParseDeclareClass(O);if(this.match(68))return this.flowParseDeclareFunction(O);if(this.match(74))return this.flowParseDeclareVariable(O);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(O):(K&&this.raise(Fs.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(O));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(O);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(O);if(this.isContextual(129))return this.flowParseDeclareInterface(O);if(this.match(82))return this.flowParseDeclareExportDeclaration(O,K);this.unexpected()}flowParseDeclareVariable(O){return this.next(),O.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(O.id.name,5,O.id.loc.start),this.semicolon(),this.finishNode(O,"DeclareVariable")}flowParseDeclareModule(O){this.scope.enter(0),this.match(134)?O.id=super.parseExprAtom():O.id=this.parseIdentifier();let K=O.body=this.startNode(),we=K.body=[];for(this.expect(5);!this.match(8);){let Yr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(Fs.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Yr)):(this.expectContextual(125,Fs.UnsupportedStatementInDeclareModule),Yr=this.flowParseDeclare(Yr,!0)),we.push(Yr)}this.scope.exit(),this.expect(8),this.finishNode(K,"BlockStatement");let gt=null,sr=!1;return we.forEach(Yr=>{Wa(Yr)?(gt==="CommonJS"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),gt="ES"):Yr.type==="DeclareModuleExports"&&(sr&&this.raise(Fs.DuplicateDeclareModuleExports,Yr),gt==="ES"&&this.raise(Fs.AmbiguousDeclareModuleKind,Yr),gt="CommonJS",sr=!0)}),O.kind=gt||"CommonJS",this.finishNode(O,"DeclareModule")}flowParseDeclareExportDeclaration(O,K){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?O.declaration=this.flowParseDeclare(this.startNode()):(O.declaration=this.flowParseType(),this.semicolon()),O.default=!0,this.finishNode(O,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!K){let we=this.state.value;throw this.raise(Fs.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:we,suggestion:ld[we]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return O.declaration=this.flowParseDeclare(this.startNode()),O.default=!1,this.finishNode(O,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return O=this.parseExport(O,null),O.type==="ExportNamedDeclaration"&&(O.type="ExportDeclaration",O.default=!1,delete O.exportKind),O.type="Declare"+O.type,O;this.unexpected()}flowParseDeclareModuleExports(O){return this.next(),this.expectContextual(111),O.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(O,"DeclareModuleExports")}flowParseDeclareTypeAlias(O){this.next();let K=this.flowParseTypeAlias(O);return K.type="DeclareTypeAlias",K}flowParseDeclareOpaqueType(O){this.next();let K=this.flowParseOpaqueType(O,!0);return K.type="DeclareOpaqueType",K}flowParseDeclareInterface(O){return this.next(),this.flowParseInterfaceish(O,!1),this.finishNode(O,"DeclareInterface")}flowParseInterfaceish(O,K){if(O.id=this.flowParseRestrictedIdentifier(!K,!0),this.scope.declareName(O.id.name,K?17:8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.extends=[],this.eat(81))do O.extends.push(this.flowParseInterfaceExtends());while(!K&&this.eat(12));if(K){if(O.implements=[],O.mixins=[],this.eatContextual(117))do O.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do O.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}O.body=this.flowParseObjectType({allowStatic:K,allowExact:!1,allowSpread:!1,allowProto:K,allowInexact:!1})}flowParseInterfaceExtends(){let O=this.startNode();return O.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?O.typeParameters=this.flowParseTypeParameterInstantiation():O.typeParameters=null,this.finishNode(O,"InterfaceExtends")}flowParseInterface(O){return this.flowParseInterfaceish(O,!1),this.finishNode(O,"InterfaceDeclaration")}checkNotUnderscore(O){O==="_"&&this.raise(Fs.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(O,K,we){oa.has(O)&&this.raise(we?Fs.AssignReservedType:Fs.UnexpectedReservedType,K,{reservedType:O})}flowParseRestrictedIdentifier(O,K){return this.checkReservedType(this.state.value,this.state.startLoc,K),this.parseIdentifier(O)}flowParseTypeAlias(O){return O.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(O.id.name,8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(O,"TypeAlias")}flowParseOpaqueType(O,K){return this.expectContextual(130),O.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(O.id.name,8201,O.id.loc.start),this.match(47)?O.typeParameters=this.flowParseTypeParameterDeclaration():O.typeParameters=null,O.supertype=null,this.match(14)&&(O.supertype=this.flowParseTypeInitialiser(14)),O.impltype=null,K||(O.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(O,"OpaqueType")}flowParseTypeParameter(O=!1){let K=this.state.startLoc,we=this.startNode(),gt=this.flowParseVariance(),sr=this.flowParseTypeAnnotatableIdentifier();return we.name=sr.name,we.variance=gt,we.bound=sr.typeAnnotation,this.match(29)?(this.eat(29),we.default=this.flowParseType()):O&&this.raise(Fs.MissingTypeParamDefault,K),this.finishNode(we,"TypeParameter")}flowParseTypeParameterDeclaration(){let O=this.state.inType,K=this.startNode();K.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let we=!1;do{let gt=this.flowParseTypeParameter(we);K.params.push(gt),gt.default&&(we=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=O,this.finishNode(K,"TypeParameterDeclaration")}flowInTopLevelContext(O){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return O()}finally{this.state.context=K}}else return O()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let O=this.startNode(),K=this.state.inType;return this.state.inType=!0,O.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let we=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)O.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=we}),this.state.inType=K,!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(O,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let O=this.startNode(),K=this.state.inType;for(O.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)O.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=K,this.finishNode(O,"TypeParameterInstantiation")}flowParseInterfaceType(){let O=this.startNode();if(this.expectContextual(129),O.extends=[],this.eat(81))do O.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return O.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(O,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(O,K,we){return O.static=K,this.lookahead().type===14?(O.id=this.flowParseObjectPropertyKey(),O.key=this.flowParseTypeInitialiser()):(O.id=null,O.key=this.flowParseType()),this.expect(3),O.value=this.flowParseTypeInitialiser(),O.variance=we,this.finishNode(O,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(O,K){return O.static=K,O.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(O.method=!0,O.optional=!1,O.value=this.flowParseObjectTypeMethodish(this.startNodeAt(O.loc.start))):(O.method=!1,this.eat(17)&&(O.optional=!0),O.value=this.flowParseTypeInitialiser()),this.finishNode(O,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(O){for(O.params=[],O.rest=null,O.typeParameters=null,O.this=null,this.match(47)&&(O.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(O.this=this.flowParseFunctionTypeParam(!0),O.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)O.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(O.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),O.returnType=this.flowParseTypeInitialiser(),this.finishNode(O,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(O,K){let we=this.startNode();return O.static=K,O.value=this.flowParseObjectTypeMethodish(we),this.finishNode(O,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:O,allowExact:K,allowSpread:we,allowProto:gt,allowInexact:sr}){let Yr=this.state.inType;this.state.inType=!0;let Lr=this.startNode();Lr.callProperties=[],Lr.properties=[],Lr.indexers=[],Lr.internalSlots=[];let fi,$n,ra=!1;for(K&&this.match(6)?(this.expect(6),fi=9,$n=!0):(this.expect(5),fi=8,$n=!1),Lr.exact=$n;!this.match(fi);){let Nl=!1,ca=null,Bl=null,$g=this.startNode();if(gt&&this.isContextual(118)){let lI=this.lookahead();lI.type!==14&&lI.type!==17&&(this.next(),ca=this.state.startLoc,O=!1)}if(O&&this.isContextual(106)){let lI=this.lookahead();lI.type!==14&&lI.type!==17&&(this.next(),Nl=!0)}let SA=this.flowParseVariance();if(this.eat(0))ca!=null&&this.unexpected(ca),this.eat(0)?(SA&&this.unexpected(SA.loc.start),Lr.internalSlots.push(this.flowParseObjectTypeInternalSlot($g,Nl))):Lr.indexers.push(this.flowParseObjectTypeIndexer($g,Nl,SA));else if(this.match(10)||this.match(47))ca!=null&&this.unexpected(ca),SA&&this.unexpected(SA.loc.start),Lr.callProperties.push(this.flowParseObjectTypeCallProperty($g,Nl));else{let lI="init";if(this.isContextual(99)||this.isContextual(104)){let Ib=this.lookahead();jt(Ib.type)&&(lI=this.state.value,this.next())}let lp=this.flowParseObjectTypeProperty($g,Nl,ca,SA,lI,we,sr??!$n);lp===null?(ra=!0,Bl=this.state.lastTokStartLoc):Lr.properties.push(lp)}this.flowObjectTypeSemicolon(),Bl&&!this.match(8)&&!this.match(9)&&this.raise(Fs.UnexpectedExplicitInexactInObject,Bl)}this.expect(fi),we&&(Lr.inexact=ra);let kc=this.finishNode(Lr,"ObjectTypeAnnotation");return this.state.inType=Yr,kc}flowParseObjectTypeProperty(O,K,we,gt,sr,Yr,Lr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Yr?Lr||this.raise(Fs.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Fs.InexactInsideNonObject,this.state.lastTokStartLoc),gt&&this.raise(Fs.InexactVariance,gt),null):(Yr||this.raise(Fs.UnexpectedSpreadType,this.state.lastTokStartLoc),we!=null&&this.unexpected(we),gt&&this.raise(Fs.SpreadVariance,gt),O.argument=this.flowParseType(),this.finishNode(O,"ObjectTypeSpreadProperty"));{O.key=this.flowParseObjectPropertyKey(),O.static=K,O.proto=we!=null,O.kind=sr;let fi=!1;return this.match(47)||this.match(10)?(O.method=!0,we!=null&&this.unexpected(we),gt&&this.unexpected(gt.loc.start),O.value=this.flowParseObjectTypeMethodish(this.startNodeAt(O.loc.start)),(sr==="get"||sr==="set")&&this.flowCheckGetterSetterParams(O),!Yr&&O.key.name==="constructor"&&O.value.this&&this.raise(Fs.ThisParamBannedInConstructor,O.value.this)):(sr!=="init"&&this.unexpected(),O.method=!1,this.eat(17)&&(fi=!0),O.value=this.flowParseTypeInitialiser(),O.variance=gt),O.optional=fi,this.finishNode(O,"ObjectTypeProperty")}}flowCheckGetterSetterParams(O){let K=O.kind==="get"?0:1,we=O.value.params.length+(O.value.rest?1:0);O.value.this&&this.raise(O.kind==="get"?Fs.GetterMayNotHaveThisParam:Fs.SetterMayNotHaveThisParam,O.value.this),we!==K&&this.raise(O.kind==="get"?X.BadGetterArity:X.BadSetterArity,O),O.kind==="set"&&O.value.rest&&this.raise(X.BadSetterRestParameter,O)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(O,K){var we;(we=O)!=null||(O=this.state.startLoc);let gt=K||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let sr=this.startNodeAt(O);sr.qualification=gt,sr.id=this.flowParseRestrictedIdentifier(!0),gt=this.finishNode(sr,"QualifiedTypeIdentifier")}return gt}flowParseGenericType(O,K){let we=this.startNodeAt(O);return we.typeParameters=null,we.id=this.flowParseQualifiedTypeIdentifier(O,K),this.match(47)&&(we.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(we,"GenericTypeAnnotation")}flowParseTypeofType(){let O=this.startNode();return this.expect(87),O.argument=this.flowParsePrimaryType(),this.finishNode(O,"TypeofTypeAnnotation")}flowParseTupleType(){let O=this.startNode();for(O.types=[],this.expect(0);this.state.possuper.parseFunctionBody(O,!0,we));return}super.parseFunctionBody(O,!1,we)}parseFunctionBodyAndFinish(O,K,we=!1){if(this.match(14)){let gt=this.startNode();[gt.typeAnnotation,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),O.returnType=gt.typeAnnotation?this.finishNode(gt,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(O,K,we)}parseStatementLike(O){if(this.state.strict&&this.isContextual(129)){let we=this.lookahead();if(ke(we.type)){let gt=this.startNode();return this.next(),this.flowParseInterface(gt)}}else if(this.isContextual(126)){let we=this.startNode();return this.next(),this.flowParseEnumDeclaration(we)}let K=super.parseStatementLike(O);return this.flowPragma===void 0&&!this.isValidDirective(K)&&(this.flowPragma=null),K}parseExpressionStatement(O,K,we){if(K.type==="Identifier"){if(K.name==="declare"){if(this.match(80)||qr(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(O)}else if(qr(this.state.type)){if(K.name==="interface")return this.flowParseInterface(O);if(K.name==="type")return this.flowParseTypeAlias(O);if(K.name==="opaque")return this.flowParseOpaqueType(O,!1)}}return super.parseExpressionStatement(O,K,we)}shouldParseExportDeclaration(){let{type:O}=this.state;return O===126||po(O)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:O}=this.state;return O===126||po(O)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let O=this.startNode();return this.next(),this.flowParseEnumDeclaration(O)}return super.parseExportDefaultExpression()}parseConditional(O,K,we){if(!this.match(17))return O;if(this.state.maybeInArrowParameters){let kc=this.lookaheadCharCode();if(kc===44||kc===61||kc===58||kc===41)return this.setOptionalParametersError(we),O}this.expect(17);let gt=this.state.clone(),sr=this.state.noArrowAt,Yr=this.startNodeAt(K),{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent(),[$n,ra]=this.getArrowLikeExpressions(Lr);if(fi||ra.length>0){let kc=[...sr];if(ra.length>0){this.state=gt,this.state.noArrowAt=kc;for(let Nl=0;Nl1&&this.raise(Fs.AmbiguousConditionalArrow,gt.startLoc),fi&&$n.length===1&&(this.state=gt,kc.push($n[0].start),this.state.noArrowAt=kc,{consequent:Lr,failed:fi}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(Lr,!0),this.state.noArrowAt=sr,this.expect(14),Yr.test=O,Yr.consequent=Lr,Yr.alternate=this.forwardNoArrowParamsConversionAt(Yr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Yr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let O=this.parseMaybeAssignAllowIn(),K=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:O,failed:K}}getArrowLikeExpressions(O,K){let we=[O],gt=[];for(;we.length!==0;){let sr=we.pop();sr.type==="ArrowFunctionExpression"&&sr.body.type!=="BlockStatement"?(sr.typeParameters||!sr.returnType?this.finishArrowValidation(sr):gt.push(sr),we.push(sr.body)):sr.type==="ConditionalExpression"&&(we.push(sr.consequent),we.push(sr.alternate))}return K?(gt.forEach(sr=>this.finishArrowValidation(sr)),[gt,[]]):Rp(gt,sr=>sr.params.every(Yr=>this.isAssignable(Yr,!0)))}finishArrowValidation(O){var K;this.toAssignableList(O.params,(K=O.extra)==null?void 0:K.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(O,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(O,K){let we;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),we=K(),this.state.noArrowParamsConversionAt.pop()):we=K(),we}parseParenItem(O,K){let we=super.parseParenItem(O,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(O)),this.match(14)){let gt=this.startNodeAt(K);return gt.expression=we,gt.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(gt,"TypeCastExpression")}return we}assertModuleNodeAllowed(O){O.type==="ImportDeclaration"&&(O.importKind==="type"||O.importKind==="typeof")||O.type==="ExportNamedDeclaration"&&O.exportKind==="type"||O.type==="ExportAllDeclaration"&&O.exportKind==="type"||super.assertModuleNodeAllowed(O)}parseExportDeclaration(O){if(this.isContextual(130)){O.exportKind="type";let K=this.startNode();return this.next(),this.match(5)?(O.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(O),null):this.flowParseTypeAlias(K)}else if(this.isContextual(131)){O.exportKind="type";let K=this.startNode();return this.next(),this.flowParseOpaqueType(K,!1)}else if(this.isContextual(129)){O.exportKind="type";let K=this.startNode();return this.next(),this.flowParseInterface(K)}else if(this.isContextual(126)){O.exportKind="value";let K=this.startNode();return this.next(),this.flowParseEnumDeclaration(K)}else return super.parseExportDeclaration(O)}eatExportStar(O){return super.eatExportStar(O)?!0:this.isContextual(130)&&this.lookahead().type===55?(O.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(O){let{startLoc:K}=this.state,we=super.maybeParseExportNamespaceSpecifier(O);return we&&O.exportKind==="type"&&this.unexpected(K),we}parseClassId(O,K,we){super.parseClassId(O,K,we),this.match(47)&&(O.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(O,K,we){let{startLoc:gt}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(O,K))return;K.declare=!0}super.parseClassMember(O,K,we),K.declare&&(K.type!=="ClassProperty"&&K.type!=="ClassPrivateProperty"&&K.type!=="PropertyDefinition"?this.raise(Fs.DeclareClassElement,gt):K.value&&this.raise(Fs.DeclareClassFieldInitializer,K.value))}isIterator(O){return O==="iterator"||O==="asyncIterator"}readIterator(){let O=super.readWord1(),K="@@"+O;(!this.isIterator(O)||!this.state.inType)&&this.raise(X.InvalidIdentifier,this.state.curPosition(),{identifierName:K}),this.finishToken(132,K)}getTokenFromCode(O){let K=this.input.charCodeAt(this.state.pos+1);O===123&&K===124?this.finishOp(6,2):this.state.inType&&(O===62||O===60)?this.finishOp(O===62?48:47,1):this.state.inType&&O===63?K===46?this.finishOp(18,2):this.finishOp(17,1):Yl(O,K,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(O)}isAssignable(O,K){return O.type==="TypeCastExpression"?this.isAssignable(O.expression,K):super.isAssignable(O,K)}toAssignable(O,K=!1){!K&&O.type==="AssignmentExpression"&&O.left.type==="TypeCastExpression"&&(O.left=this.typeCastToParameter(O.left)),super.toAssignable(O,K)}toAssignableList(O,K,we){for(let gt=0;gt1||!K)&&this.raise(Fs.TypeCastInPattern,sr.typeAnnotation)}return O}parseArrayLike(O,K,we,gt){let sr=super.parseArrayLike(O,K,we,gt);return K&&!this.state.maybeInArrowParameters&&this.toReferencedList(sr.elements),sr}isValidLVal(O,K,we){return O==="TypeCastExpression"||super.isValidLVal(O,K,we)}parseClassProperty(O){return this.match(14)&&(O.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(O)}parseClassPrivateProperty(O){return this.match(14)&&(O.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(O)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(O){return!this.match(14)&&super.isNonstaticConstructor(O)}pushClassMethod(O,K,we,gt,sr,Yr){if(K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(O,K,we,gt,sr,Yr),K.params&&sr){let Lr=K.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}else if(K.type==="MethodDefinition"&&sr&&K.value.params){let Lr=K.value.params;Lr.length>0&&this.isThisParam(Lr[0])&&this.raise(Fs.ThisParamBannedInConstructor,K)}}pushClassPrivateMethod(O,K,we,gt){K.variance&&this.unexpected(K.variance.loc.start),delete K.variance,this.match(47)&&(K.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(O,K,we,gt)}parseClassSuper(O){if(super.parseClassSuper(O),O.superClass&&(this.match(47)||this.match(51))&&(O.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let K=O.implements=[];do{let we=this.startNode();we.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?we.typeParameters=this.flowParseTypeParameterInstantiation():we.typeParameters=null,K.push(this.finishNode(we,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(O){super.checkGetterSetterParams(O);let K=this.getObjectOrClassMethodParams(O);if(K.length>0){let we=K[0];this.isThisParam(we)&&O.kind==="get"?this.raise(Fs.GetterMayNotHaveThisParam,we):this.isThisParam(we)&&this.raise(Fs.SetterMayNotHaveThisParam,we)}}parsePropertyNamePrefixOperator(O){O.variance=this.flowParseVariance()}parseObjPropValue(O,K,we,gt,sr,Yr,Lr){O.variance&&this.unexpected(O.variance.loc.start),delete O.variance;let fi;this.match(47)&&!Yr&&(fi=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let $n=super.parseObjPropValue(O,K,we,gt,sr,Yr,Lr);return fi&&(($n.value||$n).typeParameters=fi),$n}parseFunctionParamType(O){return this.eat(17)&&(O.type!=="Identifier"&&this.raise(Fs.PatternIsOptional,O),this.isThisParam(O)&&this.raise(Fs.ThisParamMayNotBeOptional,O),O.optional=!0),this.match(14)?O.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(O)&&this.raise(Fs.ThisParamAnnotationRequired,O),this.match(29)&&this.isThisParam(O)&&this.raise(Fs.ThisParamNoDefault,O),this.resetEndLocation(O),O}parseMaybeDefault(O,K){let we=super.parseMaybeDefault(O,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startsuper.parseMaybeAssign(O,K),gt),!sr.error)return sr.node;let{context:fi}=this.state,$n=fi[fi.length-1];($n===Se.j_oTag||$n===Se.j_expr)&&fi.pop()}if((we=sr)!=null&&we.error||this.match(47)){var Yr,Lr;gt=gt||this.state.clone();let fi,$n=this.tryParse(kc=>{var Nl;fi=this.flowParseTypeParameterDeclaration();let ca=this.forwardNoArrowParamsConversionAt(fi,()=>{let $g=super.parseMaybeAssign(O,K);return this.resetStartLocationFromNode($g,fi),$g});(Nl=ca.extra)!=null&&Nl.parenthesized&&kc();let Bl=this.maybeUnwrapTypeCastExpression(ca);return Bl.type!=="ArrowFunctionExpression"&&kc(),Bl.typeParameters=fi,this.resetStartLocationFromNode(Bl,fi),ca},gt),ra=null;if($n.node&&this.maybeUnwrapTypeCastExpression($n.node).type==="ArrowFunctionExpression"){if(!$n.error&&!$n.aborted)return $n.node.async&&this.raise(Fs.UnexpectedTypeParameterBeforeAsyncArrowFunction,fi),$n.node;ra=$n.node}if((Yr=sr)!=null&&Yr.node)return this.state=sr.failState,sr.node;if(ra)return this.state=$n.failState,ra;throw(Lr=sr)!=null&&Lr.thrown?sr.error:$n.thrown?$n.error:this.raise(Fs.UnexpectedTokenAfterTypeParameter,fi)}return super.parseMaybeAssign(O,K)}parseArrow(O){if(this.match(14)){let K=this.tryParse(()=>{let we=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let gt=this.startNode();return[gt.typeAnnotation,O.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=we,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),gt});if(K.thrown)return null;K.error&&(this.state=K.failState),O.returnType=K.node.typeAnnotation?this.finishNode(K.node,"TypeAnnotation"):null}return super.parseArrow(O)}shouldParseArrow(O){return this.match(14)||super.shouldParseArrow(O)}setArrowFunctionParameters(O,K){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start))?O.params=K:super.setArrowFunctionParameters(O,K)}checkParams(O,K,we,gt=!0){if(!(we&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(O.start)))){for(let sr=0;sr0&&this.raise(Fs.ThisParamMustBeFirst,O.params[sr]);super.checkParams(O,K,we,gt)}}parseParenAndDistinguishExpression(O){return super.parseParenAndDistinguishExpression(O&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(O,K,we){if(O.type==="Identifier"&&O.name==="async"&&this.state.noArrowAt.includes(K.index)){this.next();let gt=this.startNodeAt(K);gt.callee=O,gt.arguments=super.parseCallExpressionArguments(11),O=this.finishNode(gt,"CallExpression")}else if(O.type==="Identifier"&&O.name==="async"&&this.match(47)){let gt=this.state.clone(),sr=this.tryParse(Lr=>this.parseAsyncArrowWithTypeParameters(K)||Lr(),gt);if(!sr.error&&!sr.aborted)return sr.node;let Yr=this.tryParse(()=>super.parseSubscripts(O,K,we),gt);if(Yr.node&&!Yr.error)return Yr.node;if(sr.node)return this.state=sr.failState,sr.node;if(Yr.node)return this.state=Yr.failState,Yr.node;throw sr.error||Yr.error}return super.parseSubscripts(O,K,we)}parseSubscript(O,K,we,gt){if(this.match(18)&&this.isLookaheadToken_lt()){if(gt.optionalChainMember=!0,we)return gt.stop=!0,O;this.next();let sr=this.startNodeAt(K);return sr.callee=O,sr.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),sr.arguments=this.parseCallExpressionArguments(11),sr.optional=!0,this.finishCallExpression(sr,!0)}else if(!we&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let sr=this.startNodeAt(K);sr.callee=O;let Yr=this.tryParse(()=>(sr.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),sr.arguments=super.parseCallExpressionArguments(11),gt.optionalChainMember&&(sr.optional=!1),this.finishCallExpression(sr,gt.optionalChainMember)));if(Yr.node)return Yr.error&&(this.state=Yr.failState),Yr.node}return super.parseSubscript(O,K,we,gt)}parseNewCallee(O){super.parseNewCallee(O);let K=null;this.shouldParseTypes()&&this.match(47)&&(K=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),O.typeArguments=K}parseAsyncArrowWithTypeParameters(O){let K=this.startNodeAt(O);if(this.parseFunctionParams(K,!1),!!this.parseArrow(K))return super.parseArrowExpression(K,void 0,!0)}readToken_mult_modulo(O){let K=this.input.charCodeAt(this.state.pos+1);if(O===42&&K===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(O)}readToken_pipe_amp(O){let K=this.input.charCodeAt(this.state.pos+1);if(O===124&&K===125){this.finishOp(9,2);return}super.readToken_pipe_amp(O)}parseTopLevel(O,K){let we=super.parseTopLevel(O,K);return this.state.hasFlowComment&&this.raise(Fs.UnterminatedFlowComment,this.state.curPosition()),we}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Fs.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let O=this.skipFlowComment();O&&(this.state.pos+=O,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:O}=this.state,K=2;for(;[32,9].includes(this.input.charCodeAt(O+K));)K++;let we=this.input.charCodeAt(K+O),gt=this.input.charCodeAt(K+O+1);return we===58&>===58?K+2:this.input.slice(K+O,K+O+12)==="flow-include"?K+12:we===58&>!==58?K:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(X.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(O,{enumName:K,memberName:we}){this.raise(Fs.EnumBooleanMemberNotInitialized,O,{memberName:we,enumName:K})}flowEnumErrorInvalidMemberInitializer(O,K){return this.raise(K.explicitType?K.explicitType==="symbol"?Fs.EnumInvalidMemberInitializerSymbolType:Fs.EnumInvalidMemberInitializerPrimaryType:Fs.EnumInvalidMemberInitializerUnknownType,O,K)}flowEnumErrorNumberMemberNotInitialized(O,K){this.raise(Fs.EnumNumberMemberNotInitialized,O,K)}flowEnumErrorStringMemberInconsistentlyInitialized(O,K){this.raise(Fs.EnumStringMemberInconsistentlyInitialized,O,K)}flowEnumMemberInit(){let O=this.state.startLoc,K=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let we=this.parseNumericLiteral(this.state.value);return K()?{type:"number",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}case 134:{let we=this.parseStringLiteral(this.state.value);return K()?{type:"string",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}case 85:case 86:{let we=this.parseBooleanLiteral(this.match(85));return K()?{type:"boolean",loc:we.loc.start,value:we}:{type:"invalid",loc:O}}default:return{type:"invalid",loc:O}}}flowEnumMemberRaw(){let O=this.state.startLoc,K=this.parseIdentifier(!0),we=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:O};return{id:K,init:we}}flowEnumCheckExplicitTypeMismatch(O,K,we){let{explicitType:gt}=K;gt!==null&>!==we&&this.flowEnumErrorInvalidMemberInitializer(O,K)}flowEnumMembers({enumName:O,explicitType:K}){let we=new Set,gt={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},sr=!1;for(;!this.match(8);){if(this.eat(21)){sr=!0;break}let Yr=this.startNode(),{id:Lr,init:fi}=this.flowEnumMemberRaw(),$n=Lr.name;if($n==="")continue;/^[a-z]/.test($n)&&this.raise(Fs.EnumInvalidMemberName,Lr,{memberName:$n,suggestion:$n[0].toUpperCase()+$n.slice(1),enumName:O}),we.has($n)&&this.raise(Fs.EnumDuplicateMemberName,Lr,{memberName:$n,enumName:O}),we.add($n);let ra={enumName:O,explicitType:K,memberName:$n};switch(Yr.id=Lr,fi.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"boolean"),Yr.init=fi.value,gt.booleanMembers.push(this.finishNode(Yr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"number"),Yr.init=fi.value,gt.numberMembers.push(this.finishNode(Yr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(fi.loc,ra,"string"),Yr.init=fi.value,gt.stringMembers.push(this.finishNode(Yr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(fi.loc,ra);case"none":switch(K){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(fi.loc,ra);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(fi.loc,ra);break;default:gt.defaultedMembers.push(this.finishNode(Yr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:gt,hasUnknownMembers:sr}}flowEnumStringMembers(O,K,{enumName:we}){if(O.length===0)return K;if(K.length===0)return O;if(K.length>O.length){for(let gt of O)this.flowEnumErrorStringMemberInconsistentlyInitialized(gt,{enumName:we});return K}else{for(let gt of K)this.flowEnumErrorStringMemberInconsistentlyInitialized(gt,{enumName:we});return O}}flowEnumParseExplicitType({enumName:O}){if(!this.eatContextual(102))return null;if(!qr(this.state.type))throw this.raise(Fs.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:O});let{value:K}=this.state;return this.next(),K!=="boolean"&&K!=="number"&&K!=="string"&&K!=="symbol"&&this.raise(Fs.EnumInvalidExplicitType,this.state.startLoc,{enumName:O,invalidEnumType:K}),K}flowEnumBody(O,K){let we=K.name,gt=K.loc.start,sr=this.flowEnumParseExplicitType({enumName:we});this.expect(5);let{members:Yr,hasUnknownMembers:Lr}=this.flowEnumMembers({enumName:we,explicitType:sr});switch(O.hasUnknownMembers=Lr,sr){case"boolean":return O.explicitType=!0,O.members=Yr.booleanMembers,this.expect(8),this.finishNode(O,"EnumBooleanBody");case"number":return O.explicitType=!0,O.members=Yr.numberMembers,this.expect(8),this.finishNode(O,"EnumNumberBody");case"string":return O.explicitType=!0,O.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(O,"EnumStringBody");case"symbol":return O.members=Yr.defaultedMembers,this.expect(8),this.finishNode(O,"EnumSymbolBody");default:{let fi=()=>(O.members=[],this.expect(8),this.finishNode(O,"EnumStringBody"));O.explicitType=!1;let $n=Yr.booleanMembers.length,ra=Yr.numberMembers.length,kc=Yr.stringMembers.length,Nl=Yr.defaultedMembers.length;if(!$n&&!ra&&!kc&&!Nl)return fi();if(!$n&&!ra)return O.members=this.flowEnumStringMembers(Yr.stringMembers,Yr.defaultedMembers,{enumName:we}),this.expect(8),this.finishNode(O,"EnumStringBody");if(!ra&&!kc&&$n>=Nl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return O.members=Yr.booleanMembers,this.expect(8),this.finishNode(O,"EnumBooleanBody")}else if(!$n&&!kc&&ra>=Nl){for(let ca of Yr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(ca.loc.start,{enumName:we,memberName:ca.id.name});return O.members=Yr.numberMembers,this.expect(8),this.finishNode(O,"EnumNumberBody")}else return this.raise(Fs.EnumInconsistentMemberValues,gt,{enumName:we}),fi()}}}flowParseEnumDeclaration(O){let K=this.parseIdentifier();return O.id=K,O.body=this.flowEnumBody(this.startNode(),K),this.finishNode(O,"EnumDeclaration")}jsxParseOpeningElementAfterName(O){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(O.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(O)}isLookaheadToken_lt(){let O=this.nextTokenStart();if(this.input.charCodeAt(O)===60){let K=this.input.charCodeAt(O+1);return K!==60&&K!==61}return!1}reScan_lt_gt(){let{type:O}=this.state;O===47?(this.state.pos-=1,this.readToken_lt()):O===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:O}=this.state;return O===51?(this.state.pos-=2,this.finishOp(47,1),47):O}maybeUnwrapTypeCastExpression(O){return O.type==="TypeCastExpression"?O.expression:O}},df=Q`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:se})=>`Expected corresponding JSX closing tag for <${se}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:se,HTMLEntity:O})=>`Unexpected token \`${se}\`. Did you mean \`${O}\` or \`{'${se}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?"});function Zs(se){return se?se.type==="JSXOpeningFragment"||se.type==="JSXClosingFragment":!1}function so(se){if(se.type==="JSXIdentifier")return se.name;if(se.type==="JSXNamespacedName")return se.namespace.name+":"+se.name.name;if(se.type==="JSXMemberExpression")return so(se.object)+"."+so(se.property);throw new Error("Node had unexpected type: "+se.type)}var Ea=se=>class extends se{jsxReadToken(){let O="",K=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(df.UnterminatedJsxContent,this.state.startLoc);let we=this.input.charCodeAt(this.state.pos);switch(we){case 60:case 123:if(this.state.pos===this.state.start){we===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(we);return}O+=this.input.slice(K,this.state.pos),this.finishToken(142,O);return;case 38:O+=this.input.slice(K,this.state.pos),O+=this.jsxReadEntity(),K=this.state.pos;break;case 62:case 125:default:Vs(we)?(O+=this.input.slice(K,this.state.pos),O+=this.jsxReadNewLine(!0),K=this.state.pos):++this.state.pos}}}jsxReadNewLine(O){let K=this.input.charCodeAt(this.state.pos),we;return++this.state.pos,K===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,we=O?` -`:`\r -`):we=String.fromCharCode(K),++this.state.curLine,this.state.lineStart=this.state.pos,we}jsxReadString(O){let K="",we=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(X.UnterminatedString,this.state.startLoc);let gt=this.input.charCodeAt(this.state.pos);if(gt===O)break;gt===38?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadEntity(),we=this.state.pos):Vs(gt)?(K+=this.input.slice(we,this.state.pos),K+=this.jsxReadNewLine(!1),we=this.state.pos):++this.state.pos}K+=this.input.slice(we,this.state.pos++),this.finishToken(134,K)}jsxReadEntity(){let O=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let K=10;this.codePointAtPos(this.state.pos)===120&&(K=16,++this.state.pos);let we=this.readInt(K,void 0,!1,"bail");if(we!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(we)}else{let K=0,we=!1;for(;K++<10&&this.state.pos1){for(let we=0;we0){if(K&256){let gt=!!(K&512),sr=(we&4)>0;return gt!==sr}return!0}return K&128&&(we&8)>0?se.names.get(O)&2?!!(K&1):!1:K&2&&(we&1)>0?!0:super.isRedeclaredInScope(se,O,K)}checkLocalExport(se){let{name:O}=se;if(this.hasImport(O))return;let K=this.scopeStack.length;for(let we=K-1;we>=0;we--){let gt=this.scopeStack[we].tsNames.get(O);if((gt&1)>0||(gt&16)>0)return}super.checkLocalExport(se)}},Wn=se=>se.type==="ParenthesizedExpression"?Wn(se.expression):se,di=class extends ls{toAssignable(se,O=!1){var K,we;let gt;switch((se.type==="ParenthesizedExpression"||(K=se.extra)!=null&&K.parenthesized)&&(gt=Wn(se),O?gt.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(X.InvalidParenthesizedAssignment,se):gt.type!=="MemberExpression"&&!this.isOptionalMemberExpression(gt)&&this.raise(X.InvalidParenthesizedAssignment,se):this.raise(X.InvalidParenthesizedAssignment,se)),se.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":se.type="ObjectPattern";for(let Yr=0,Lr=se.properties.length,fi=Lr-1;Yrwe.type!=="ObjectMethod"&&(gt===K||we.type!=="SpreadElement")&&this.isAssignable(we))}case"ObjectProperty":return this.isAssignable(se.value);case"SpreadElement":return this.isAssignable(se.argument);case"ArrayExpression":return se.elements.every(K=>K===null||this.isAssignable(K));case"AssignmentExpression":return se.operator==="=";case"ParenthesizedExpression":return this.isAssignable(se.expression);case"MemberExpression":case"OptionalMemberExpression":return!O;default:return!1}}toReferencedList(se,O){return se}toReferencedListDeep(se,O){this.toReferencedList(se,O);for(let K of se)K?.type==="ArrayExpression"&&this.toReferencedListDeep(K.elements)}parseSpread(se){let O=this.startNode();return this.next(),O.argument=this.parseMaybeAssignAllowIn(se,void 0),this.finishNode(O,"SpreadElement")}parseRestBinding(){let se=this.startNode();return this.next(),se.argument=this.parseBindingAtom(),this.finishNode(se,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let se=this.startNode();return this.next(),se.elements=this.parseBindingList(3,93,1),this.finishNode(se,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(se,O,K){let we=K&1,gt=[],sr=!0;for(;!this.eat(se);)if(sr?sr=!1:this.expect(12),we&&this.match(12))gt.push(null);else{if(this.eat(se))break;if(this.match(21)){let Yr=this.parseRestBinding();if((this.hasPlugin("flow")||K&2)&&(Yr=this.parseFunctionParamType(Yr)),gt.push(Yr),!this.checkCommaAfterRest(O)){this.expect(se);break}}else{let Yr=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(X.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)Yr.push(this.parseDecorator());gt.push(this.parseAssignableListItem(K,Yr))}}return gt}parseBindingRestProperty(se){return this.next(),se.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(se,"RestElement")}parseBindingProperty(){let{type:se,startLoc:O}=this.state;if(se===21)return this.parseBindingRestProperty(this.startNode());let K=this.startNode();return se===139?(this.expectPlugin("destructuringPrivate",O),this.classScope.usePrivateName(this.state.value,O),K.key=this.parsePrivateName()):this.parsePropertyName(K),K.method=!1,this.parseObjPropValue(K,O,!1,!1,!0,!1)}parseAssignableListItem(se,O){let K=this.parseMaybeDefault();(this.hasPlugin("flow")||se&2)&&this.parseFunctionParamType(K);let we=this.parseMaybeDefault(K.loc.start,K);return O.length&&(K.decorators=O),we}parseFunctionParamType(se){return se}parseMaybeDefault(se,O){var K,we;if((K=se)!=null||(se=this.state.startLoc),O=(we=O)!=null?we:this.parseBindingAtom(),!this.eat(29))return O;let gt=this.startNodeAt(se);return gt.left=O,gt.right=this.parseMaybeAssignAllowIn(),this.finishNode(gt,"AssignmentPattern")}isValidLVal(se,O,K){switch(se){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(se){return se.type==="OptionalMemberExpression"}checkLVal(se,O,K=64,we=!1,gt=!1,sr=!1){var Yr;let Lr=se.type;if(this.isObjectMethod(se))return;let fi=this.isOptionalMemberExpression(se);if(fi||Lr==="MemberExpression"){fi&&(this.expectPlugin("optionalChainingAssign",se.loc.start),O.type!=="AssignmentExpression"&&this.raise(X.InvalidLhsOptionalChaining,se,{ancestor:O})),K!==64&&this.raise(X.InvalidPropertyBindingPattern,se);return}if(Lr==="Identifier"){this.checkIdentifier(se,K,gt);let{name:Bl}=se;we&&(we.has(Bl)?this.raise(X.ParamDupe,se):we.add(Bl));return}let $n=this.isValidLVal(Lr,!(sr||(Yr=se.extra)!=null&&Yr.parenthesized)&&O.type==="AssignmentExpression",K);if($n===!0)return;if($n===!1){let Bl=K===64?X.InvalidLhs:X.InvalidLhsBinding;this.raise(Bl,se,{ancestor:O});return}let ra,kc;typeof $n=="string"?(ra=$n,kc=Lr==="ParenthesizedExpression"):[ra,kc]=$n;let Nl=Lr==="ArrayPattern"||Lr==="ObjectPattern"?{type:Lr}:O,ca=se[ra];if(Array.isArray(ca))for(let Bl of ca)Bl&&this.checkLVal(Bl,Nl,K,we,gt,kc);else ca&&this.checkLVal(ca,Nl,K,we,gt,kc)}checkIdentifier(se,O,K=!1){this.state.strict&&(K?Xa(se.name,this.inModule):Ps(se.name))&&(O===64?this.raise(X.StrictEvalArguments,se,{referenceName:se.name}):this.raise(X.StrictEvalArgumentsBinding,se,{bindingName:se.name})),O&8192&&se.name==="let"&&this.raise(X.LetInLexicalBinding,se),O&64||this.declareNameFromIdentifier(se,O)}declareNameFromIdentifier(se,O){this.scope.declareName(se.name,O,se.loc.start)}checkToRestConversion(se,O){switch(se.type){case"ParenthesizedExpression":this.checkToRestConversion(se.expression,O);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(O)break;default:this.raise(X.InvalidRestAssignmentPattern,se)}}checkCommaAfterRest(se){return this.match(12)?(this.raise(this.lookaheadCharCode()===se?X.RestTrailingComma:X.ElementAfterRest,this.state.startLoc),!0):!1}};function aa(se){if(se==null)throw new Error(`Unexpected ${se} value.`);return se}function Bo(se){if(!se)throw new Error("Assert fail")}var us=Q`typescript`({AbstractMethodHasImplementation:({methodName:se})=>`Method '${se}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:se})=>`Property '${se}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:se})=>`'declare' is not allowed in ${se}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:se})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:se})=>`Duplicate modifier: '${se}'.`,EmptyHeritageClauseType:({token:se})=>`'${se}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:se})=>`'${se[0]}' modifier cannot be used with '${se[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:se})=>`Index signatures cannot have an accessibility modifier ('${se}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:se})=>`'${se}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:se})=>`'${se}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:se})=>`'${se}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:se})=>`'${se[0]}' modifier must precede '${se[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:se})=>`Private elements cannot have an accessibility modifier ('${se}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:se})=>`Single type parameter ${se} should have a trailing comma. Example usage: <${se},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:se})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${se}.`});function Ql(se){switch(se){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function LA(se){return se==="private"||se==="public"||se==="protected"}function pf(se){return se==="in"||se==="out"}var ef=se=>class extends se{constructor(...O){super(...O),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:us.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:us.InvalidModifierOnTypeParameter})}getScopeHandler(){return Dr}tsIsIdentifier(){return qr(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(O,K){if(!qr(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let we=this.state.value;if(O.includes(we)){if(K&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return we}}tsParseModifiers({allowedModifiers:O,disallowedModifiers:K,stopOnStartOfClassStaticBlock:we,errorTemplate:gt=us.InvalidModifierOnTypeMember},sr){let Yr=(fi,$n,ra,kc)=>{$n===ra&&sr[kc]&&this.raise(us.InvalidModifiersOrder,fi,{orderedModifiers:[ra,kc]})},Lr=(fi,$n,ra,kc)=>{(sr[ra]&&$n===kc||sr[kc]&&$n===ra)&&this.raise(us.IncompatibleModifiers,fi,{modifiers:[ra,kc]})};for(;;){let{startLoc:fi}=this.state,$n=this.tsParseModifier(O.concat(K??[]),we);if(!$n)break;LA($n)?sr.accessibility?this.raise(us.DuplicateAccessibilityModifier,fi,{modifier:$n}):(Yr(fi,$n,$n,"override"),Yr(fi,$n,$n,"static"),Yr(fi,$n,$n,"readonly"),sr.accessibility=$n):pf($n)?(sr[$n]&&this.raise(us.DuplicateModifier,fi,{modifier:$n}),sr[$n]=!0,Yr(fi,$n,"in","out")):(hasOwnProperty.call(sr,$n)?this.raise(us.DuplicateModifier,fi,{modifier:$n}):(Yr(fi,$n,"static","readonly"),Yr(fi,$n,"static","override"),Yr(fi,$n,"override","readonly"),Yr(fi,$n,"abstract","override"),Lr(fi,$n,"declare","override"),Lr(fi,$n,"static","abstract")),sr[$n]=!0),K!=null&&K.includes($n)&&this.raise(gt,fi,{modifier:$n})}}tsIsListTerminator(O){switch(O){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(O,K){let we=[];for(;!this.tsIsListTerminator(O);)we.push(K());return we}tsParseDelimitedList(O,K,we){return aa(this.tsParseDelimitedListWorker(O,K,!0,we))}tsParseDelimitedListWorker(O,K,we,gt){let sr=[],Yr=-1;for(;!this.tsIsListTerminator(O);){Yr=-1;let Lr=K();if(Lr==null)return;if(sr.push(Lr),this.eat(12)){Yr=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(O))break;we&&this.expect(12);return}return gt&&(gt.value=Yr),sr}tsParseBracketedList(O,K,we,gt,sr){gt||(we?this.expect(0):this.expect(47));let Yr=this.tsParseDelimitedList(O,K,sr);return we?this.expect(3):this.expect(48),Yr}tsParseImportType(){let O=this.startNode();return this.expect(83),this.expect(10),this.match(134)?O.argument=this.parseStringLiteral(this.state.value):(this.raise(us.UnsupportedImportTypeArgument,this.state.startLoc),O.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(O.options=super.parseMaybeAssignAllowIn(),this.eat(12)):O.options=null,this.expect(11),this.eat(16)&&(O.qualifier=this.tsParseEntityName(3)),this.match(47)&&(O.typeParameters=this.tsParseTypeArguments()),this.finishNode(O,"TSImportType")}tsParseEntityName(O){let K;if(O&1&&this.match(78))if(O&2)K=this.parseIdentifier(!0);else{let we=this.startNode();this.next(),K=this.finishNode(we,"ThisExpression")}else K=this.parseIdentifier(!!(O&1));for(;this.eat(16);){let we=this.startNodeAtNode(K);we.left=K,we.right=this.parseIdentifier(!!(O&1)),K=this.finishNode(we,"TSQualifiedName")}return K}tsParseTypeReference(){let O=this.startNode();return O.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(O.typeParameters=this.tsParseTypeArguments()),this.finishNode(O,"TSTypeReference")}tsParseThisTypePredicate(O){this.next();let K=this.startNodeAtNode(O);return K.parameterName=O,K.typeAnnotation=this.tsParseTypeAnnotation(!1),K.asserts=!1,this.finishNode(K,"TSTypePredicate")}tsParseThisTypeNode(){let O=this.startNode();return this.next(),this.finishNode(O,"TSThisType")}tsParseTypeQuery(){let O=this.startNode();return this.expect(87),this.match(83)?O.exprName=this.tsParseImportType():O.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(O.typeParameters=this.tsParseTypeArguments()),this.finishNode(O,"TSTypeQuery")}tsParseTypeParameter(O){let K=this.startNode();return O(K),K.name=this.tsParseTypeParameterName(),K.constraint=this.tsEatThenParseType(81),K.default=this.tsEatThenParseType(29),this.finishNode(K,"TSTypeParameter")}tsTryParseTypeParameters(O){if(this.match(47))return this.tsParseTypeParameters(O)}tsParseTypeParameters(O){let K=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let we={value:-1};return K.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,O),!1,!0,we),K.params.length===0&&this.raise(us.EmptyTypeParameters,K),we.value!==-1&&this.addExtra(K,"trailingComma",we.value),this.finishNode(K,"TSTypeParameterDeclaration")}tsFillSignature(O,K){let we=O===19,gt="parameters",sr="typeAnnotation";K.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),K[gt]=this.tsParseBindingListForSignature(),we?K[sr]=this.tsParseTypeOrTypePredicateAnnotation(O):this.match(O)&&(K[sr]=this.tsParseTypeOrTypePredicateAnnotation(O))}tsParseBindingListForSignature(){let O=super.parseBindingList(11,41,2);for(let K of O){let{type:we}=K;(we==="AssignmentPattern"||we==="TSParameterProperty")&&this.raise(us.UnsupportedSignatureParameterKind,K,{type:we})}return O}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(O,K){return this.tsFillSignature(14,K),this.tsParseTypeMemberSemicolon(),this.finishNode(K,O)}tsIsUnambiguouslyIndexSignature(){return this.next(),qr(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(O){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let K=this.parseIdentifier();K.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(K),this.expect(3),O.parameters=[K];let we=this.tsTryParseTypeAnnotation();return we&&(O.typeAnnotation=we),this.tsParseTypeMemberSemicolon(),this.finishNode(O,"TSIndexSignature")}tsParsePropertyOrMethodSignature(O,K){this.eat(17)&&(O.optional=!0);let we=O;if(this.match(10)||this.match(47)){K&&this.raise(us.ReadonlyForMethodSignature,O);let gt=we;gt.kind&&this.match(47)&&this.raise(us.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,gt),this.tsParseTypeMemberSemicolon();let sr="parameters",Yr="typeAnnotation";if(gt.kind==="get")gt[sr].length>0&&(this.raise(X.BadGetterArity,this.state.curPosition()),this.isThisParam(gt[sr][0])&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(gt.kind==="set"){if(gt[sr].length!==1)this.raise(X.BadSetterArity,this.state.curPosition());else{let Lr=gt[sr][0];this.isThisParam(Lr)&&this.raise(us.AccessorCannotDeclareThisParameter,this.state.curPosition()),Lr.type==="Identifier"&&Lr.optional&&this.raise(us.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),Lr.type==="RestElement"&&this.raise(us.SetAccessorCannotHaveRestParameter,this.state.curPosition())}gt[Yr]&&this.raise(us.SetAccessorCannotHaveReturnType,gt[Yr])}else gt.kind="method";return this.finishNode(gt,"TSMethodSignature")}else{let gt=we;K&&(gt.readonly=!0);let sr=this.tsTryParseTypeAnnotation();return sr&&(gt.typeAnnotation=sr),this.tsParseTypeMemberSemicolon(),this.finishNode(gt,"TSPropertySignature")}}tsParseTypeMember(){let O=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",O);if(this.match(77)){let we=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",O):(O.key=this.createIdentifier(we,"new"),this.tsParsePropertyOrMethodSignature(O,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},O),this.tsTryParseIndexSignature(O)||(super.parsePropertyName(O),!O.computed&&O.key.type==="Identifier"&&(O.key.name==="get"||O.key.name==="set")&&this.tsTokenCanFollowModifier()&&(O.kind=O.key.name,super.parsePropertyName(O)),this.tsParsePropertyOrMethodSignature(O,!!O.readonly))}tsParseTypeLiteral(){let O=this.startNode();return O.members=this.tsParseObjectTypeMembers(),this.finishNode(O,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let O=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),O}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let O=this.startNode();this.expect(5),this.match(53)?(O.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(O.readonly=!0),this.expect(0);{let K=this.startNode();K.name=this.tsParseTypeParameterName(),K.constraint=this.tsExpectThenParseType(58),O.typeParameter=this.finishNode(K,"TSTypeParameter")}return O.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(O.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(O.optional=!0),O.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(O,"TSMappedType")}tsParseTupleType(){let O=this.startNode();O.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let K=!1;return O.elementTypes.forEach(we=>{let{type:gt}=we;K&>!=="TSRestType"&>!=="TSOptionalType"&&!(gt==="TSNamedTupleMember"&&we.optional)&&this.raise(us.OptionalTypeBeforeRequired,we),K||(K=gt==="TSNamedTupleMember"&&we.optional||gt==="TSOptionalType")}),this.finishNode(O,"TSTupleType")}tsParseTupleElementType(){let O=this.state.startLoc,K=this.eat(21),{startLoc:we}=this.state,gt,sr,Yr,Lr,fi=ke(this.state.type)?this.lookaheadCharCode():null;if(fi===58)gt=!0,Yr=!1,sr=this.parseIdentifier(!0),this.expect(14),Lr=this.tsParseType();else if(fi===63){Yr=!0;let $n=this.state.value,ra=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(gt=!0,sr=this.createIdentifier(this.startNodeAt(we),$n),this.expect(17),this.expect(14),Lr=this.tsParseType()):(gt=!1,Lr=ra,this.expect(17))}else Lr=this.tsParseType(),Yr=this.eat(17),gt=this.eat(14);if(gt){let $n;sr?($n=this.startNodeAt(we),$n.optional=Yr,$n.label=sr,$n.elementType=Lr,this.eat(17)&&($n.optional=!0,this.raise(us.TupleOptionalAfterType,this.state.lastTokStartLoc))):($n=this.startNodeAt(we),$n.optional=Yr,this.raise(us.InvalidTupleMemberLabel,Lr),$n.label=Lr,$n.elementType=this.tsParseType()),Lr=this.finishNode($n,"TSNamedTupleMember")}else if(Yr){let $n=this.startNodeAt(we);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSOptionalType")}if(K){let $n=this.startNodeAt(O);$n.typeAnnotation=Lr,Lr=this.finishNode($n,"TSRestType")}return Lr}tsParseParenthesizedType(){let O=this.startNode();return this.expect(10),O.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(O,"TSParenthesizedType")}tsParseFunctionOrConstructorType(O,K){let we=this.startNode();return O==="TSConstructorType"&&(we.abstract=!!K,K&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,we)),this.finishNode(we,O)}tsParseLiteralTypeNode(){let O=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:O.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(O,"TSLiteralType")}tsParseTemplateLiteralType(){{let O=this.startNode();return O.literal=super.parseTemplate(!1),this.finishNode(O,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let O=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(O):O}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let O=this.startNode(),K=this.lookahead();return K.type!==135&&K.type!==136&&this.unexpected(),O.literal=this.parseMaybeUnary(),this.finishNode(O,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:O}=this.state;if(qr(O)||O===88||O===84){let K=O===88?"TSVoidKeyword":O===84?"TSNullKeyword":Ql(this.state.value);if(K!==void 0&&this.lookaheadCharCode()!==46){let we=this.startNode();return this.next(),this.finishNode(we,K)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:O}=this.state,K=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let we=this.startNodeAt(O);we.elementType=K,this.expect(3),K=this.finishNode(we,"TSArrayType")}else{let we=this.startNodeAt(O);we.objectType=K,we.indexType=this.tsParseType(),this.expect(3),K=this.finishNode(we,"TSIndexedAccessType")}return K}tsParseTypeOperator(){let O=this.startNode(),K=this.state.value;return this.next(),O.operator=K,O.typeAnnotation=this.tsParseTypeOperatorOrHigher(),K==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(O),this.finishNode(O,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(O){switch(O.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(us.UnexpectedReadonly,O)}}tsParseInferType(){let O=this.startNode();this.expectContextual(115);let K=this.startNode();return K.name=this.tsParseTypeParameterName(),K.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),O.typeParameter=this.finishNode(K,"TSTypeParameter"),this.finishNode(O,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let O=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return O}}tsParseTypeOperatorOrHigher(){return Gc(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(O,K,we){let gt=this.startNode(),sr=this.eat(we),Yr=[];do Yr.push(K());while(this.eat(we));return Yr.length===1&&!sr?Yr[0]:(gt.types=Yr,this.finishNode(gt,O))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(qr(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:O}=this.state,K=O.length;try{return this.parseObjectLike(8,!0),O.length===K}catch{return!1}}if(this.match(0)){this.next();let{errors:O}=this.state,K=O.length;try{return super.parseBindingList(3,93,1),O.length===K}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(O){return this.tsInType(()=>{let K=this.startNode();this.expect(O);let we=this.startNode(),gt=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(gt&&this.match(78)){let Lr=this.tsParseThisTypeOrThisTypePredicate();return Lr.type==="TSThisType"?(we.parameterName=Lr,we.asserts=!0,we.typeAnnotation=null,Lr=this.finishNode(we,"TSTypePredicate")):(this.resetStartLocationFromNode(Lr,we),Lr.asserts=!0),K.typeAnnotation=Lr,this.finishNode(K,"TSTypeAnnotation")}let sr=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!sr)return gt?(we.parameterName=this.parseIdentifier(),we.asserts=gt,we.typeAnnotation=null,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,K);let Yr=this.tsParseTypeAnnotation(!1);return we.parameterName=sr,we.typeAnnotation=Yr,we.asserts=gt,K.typeAnnotation=this.finishNode(we,"TSTypePredicate"),this.finishNode(K,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let O=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),O}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let O=this.state.containsEsc;return this.next(),!qr(this.state.type)&&!this.match(78)?!1:(O&&this.raise(X.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(O=!0,K=this.startNode()){return this.tsInType(()=>{O&&this.expect(14),K.typeAnnotation=this.tsParseType()}),this.finishNode(K,"TSTypeAnnotation")}tsParseType(){Bo(this.state.inType);let O=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return O;let K=this.startNodeAtNode(O);return K.checkType=O,K.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),K.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),K.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(K,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(us.ReservedTypeAssertion,this.state.startLoc);let O=this.startNode();return O.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),O.expression=this.parseMaybeUnary(),this.finishNode(O,"TSTypeAssertion")}tsParseHeritageClause(O){let K=this.state.startLoc,we=this.tsParseDelimitedList("HeritageClauseElement",()=>{let gt=this.startNode();return gt.expression=this.tsParseEntityName(3),this.match(47)&&(gt.typeParameters=this.tsParseTypeArguments()),this.finishNode(gt,"TSExpressionWithTypeArguments")});return we.length||this.raise(us.EmptyHeritageClauseType,K,{token:O}),we}tsParseInterfaceDeclaration(O,K={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),K.declare&&(O.declare=!0),qr(this.state.type)?(O.id=this.parseIdentifier(),this.checkIdentifier(O.id,130)):(O.id=null,this.raise(us.MissingInterfaceName,this.state.startLoc)),O.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(O.extends=this.tsParseHeritageClause("extends"));let we=this.startNode();return we.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),O.body=this.finishNode(we,"TSInterfaceBody"),this.finishNode(O,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(O){return O.id=this.parseIdentifier(),this.checkIdentifier(O.id,2),O.typeAnnotation=this.tsInType(()=>{if(O.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let K=this.startNode();return this.next(),this.finishNode(K,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(O,"TSTypeAliasDeclaration")}tsInTopLevelContext(O){if(this.curContext()!==Se.brace){let K=this.state.context;this.state.context=[K[0]];try{return O()}finally{this.state.context=K}}else return O()}tsInType(O){let K=this.state.inType;this.state.inType=!0;try{return O()}finally{this.state.inType=K}}tsInDisallowConditionalTypesContext(O){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return O()}finally{this.state.inDisallowConditionalTypesContext=K}}tsInAllowConditionalTypesContext(O){let K=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return O()}finally{this.state.inDisallowConditionalTypesContext=K}}tsEatThenParseType(O){if(this.match(O))return this.tsNextThenParseType()}tsExpectThenParseType(O){return this.tsInType(()=>(this.expect(O),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let O=this.startNode();return O.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(O.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(O,"TSEnumMember")}tsParseEnumDeclaration(O,K={}){return K.const&&(O.const=!0),K.declare&&(O.declare=!0),this.expectContextual(126),O.id=this.parseIdentifier(),this.checkIdentifier(O.id,O.const?8971:8459),this.expect(5),O.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(O,"TSEnumDeclaration")}tsParseEnumBody(){let O=this.startNode();return this.expect(5),O.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(O,"TSEnumBody")}tsParseModuleBlock(){let O=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(O.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(O,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(O,K=!1){if(O.id=this.parseIdentifier(),K||this.checkIdentifier(O.id,1024),this.eat(16)){let we=this.startNode();this.tsParseModuleOrNamespaceDeclaration(we,!0),O.body=we}else this.scope.enter(256),this.prodParam.enter(0),O.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(O,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(O){return this.isContextual(112)?(O.kind="global",O.global=!0,O.id=this.parseIdentifier()):this.match(134)?(O.kind="module",O.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),O.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(O,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(O,K,we){O.isExport=we||!1,O.id=K||this.parseIdentifier(),this.checkIdentifier(O.id,4096),this.expect(29);let gt=this.tsParseModuleReference();return O.importKind==="type"&>.type!=="TSExternalModuleReference"&&this.raise(us.ImportAliasHasImportType,gt),O.moduleReference=gt,this.semicolon(),this.finishNode(O,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let O=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),O.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(O,"TSExternalModuleReference")}tsLookAhead(O){let K=this.state.clone(),we=O();return this.state=K,we}tsTryParseAndCatch(O){let K=this.tryParse(we=>O()||we());if(!(K.aborted||!K.node))return K.error&&(this.state=K.failState),K.node}tsTryParse(O){let K=this.state.clone(),we=O();if(we!==void 0&&we!==!1)return we;this.state=K}tsTryParseDeclare(O){if(this.isLineTerminator())return;let K=this.state.type,we;return this.isContextual(100)&&(K=74,we="let"),this.tsInAmbientContext(()=>{switch(K){case 68:return O.declare=!0,super.parseFunctionStatement(O,!1,!1);case 80:return O.declare=!0,this.parseClass(O,!0,!1);case 126:return this.tsParseEnumDeclaration(O,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(O);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(O.declare=!0,this.parseVarStatement(O,we||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(O,{const:!0,declare:!0}));case 129:{let gt=this.tsParseInterfaceDeclaration(O,{declare:!0});if(gt)return gt}default:if(qr(K))return this.tsParseDeclaration(O,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(O,K,we){switch(K.name){case"declare":{let gt=this.tsTryParseDeclare(O);return gt&&(gt.declare=!0),gt}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let gt=O;return gt.kind="global",O.global=!0,gt.id=K,gt.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(gt,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(O,K.name,!1,we)}}tsParseDeclaration(O,K,we,gt){switch(K){case"abstract":if(this.tsCheckLineTerminator(we)&&(this.match(80)||qr(this.state.type)))return this.tsParseAbstractDeclaration(O,gt);break;case"module":if(this.tsCheckLineTerminator(we)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(O);if(qr(this.state.type))return O.kind="module",this.tsParseModuleOrNamespaceDeclaration(O)}break;case"namespace":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return O.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(O);break;case"type":if(this.tsCheckLineTerminator(we)&&qr(this.state.type))return this.tsParseTypeAliasDeclaration(O);break}}tsCheckLineTerminator(O){return O?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(O){if(!this.match(47))return;let K=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let we=this.tsTryParseAndCatch(()=>{let gt=this.startNodeAt(O);return gt.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(gt),gt.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),gt});if(this.state.maybeInArrowParameters=K,!!we)return super.parseArrowExpression(we,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let O=this.startNode();return O.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),O.params.length===0?this.raise(us.EmptyTypeArguments,O):!this.state.inType&&this.curContext()===Se.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(O,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return cl(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(O,K){let we=this.state.startLoc,gt={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},gt);let sr=gt.accessibility,Yr=gt.override,Lr=gt.readonly;!(O&4)&&(sr||Lr||Yr)&&this.raise(us.UnexpectedParameterModifier,we);let fi=this.parseMaybeDefault();O&2&&this.parseFunctionParamType(fi);let $n=this.parseMaybeDefault(fi.loc.start,fi);if(sr||Lr||Yr){let ra=this.startNodeAt(we);return K.length&&(ra.decorators=K),sr&&(ra.accessibility=sr),Lr&&(ra.readonly=Lr),Yr&&(ra.override=Yr),$n.type!=="Identifier"&&$n.type!=="AssignmentPattern"&&this.raise(us.UnsupportedParameterPropertyKind,ra),ra.parameter=$n,this.finishNode(ra,"TSParameterProperty")}return K.length&&(fi.decorators=K),$n}isSimpleParameter(O){return O.type==="TSParameterProperty"&&super.isSimpleParameter(O.parameter)||super.isSimpleParameter(O)}tsDisallowOptionalPattern(O){for(let K of O.params)K.type!=="Identifier"&&K.optional&&!this.state.isAmbientContext&&this.raise(us.PatternIsOptional,K)}setArrowFunctionParameters(O,K,we){super.setArrowFunctionParameters(O,K,we),this.tsDisallowOptionalPattern(O)}parseFunctionBodyAndFinish(O,K,we=!1){this.match(14)&&(O.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let gt=K==="FunctionDeclaration"?"TSDeclareFunction":K==="ClassMethod"||K==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return gt&&!this.match(5)&&this.isLineTerminator()?this.finishNode(O,gt):gt==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(us.DeclareFunctionHasImplementation,O),O.declare)?super.parseFunctionBodyAndFinish(O,gt,we):(this.tsDisallowOptionalPattern(O),super.parseFunctionBodyAndFinish(O,K,we))}registerFunctionStatementId(O){!O.body&&O.id?this.checkIdentifier(O.id,1024):super.registerFunctionStatementId(O)}tsCheckForInvalidTypeCasts(O){O.forEach(K=>{K?.type==="TSTypeCastExpression"&&this.raise(us.UnexpectedTypeAnnotation,K.typeAnnotation)})}toReferencedList(O,K){return this.tsCheckForInvalidTypeCasts(O),O}parseArrayLike(O,K,we,gt){let sr=super.parseArrayLike(O,K,we,gt);return sr.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(sr.elements),sr}parseSubscript(O,K,we,gt){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let Yr=this.startNodeAt(K);return Yr.expression=O,this.finishNode(Yr,"TSNonNullExpression")}let sr=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(we)return gt.stop=!0,O;gt.optionalChainMember=sr=!0,this.next()}if(this.match(47)||this.match(51)){let Yr,Lr=this.tsTryParseAndCatch(()=>{if(!we&&this.atPossibleAsyncArrow(O)){let kc=this.tsTryParseGenericAsyncArrowFunction(K);if(kc)return kc}let fi=this.tsParseTypeArgumentsInExpression();if(!fi)return;if(sr&&!this.match(10)){Yr=this.state.curPosition();return}if(Ft(this.state.type)){let kc=super.parseTaggedTemplateExpression(O,K,gt);return kc.typeParameters=fi,kc}if(!we&&this.eat(10)){let kc=this.startNodeAt(K);return kc.callee=O,kc.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(kc.arguments),kc.typeParameters=fi,gt.optionalChainMember&&(kc.optional=sr),this.finishCallExpression(kc,gt.optionalChainMember)}let $n=this.state.type;if($n===48||$n===52||$n!==10&&Nn($n)&&!this.hasPrecedingLineBreak())return;let ra=this.startNodeAt(K);return ra.expression=O,ra.typeParameters=fi,this.finishNode(ra,"TSInstantiationExpression")});if(Yr&&this.unexpected(Yr,10),Lr)return Lr.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(us.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),Lr}return super.parseSubscript(O,K,we,gt)}parseNewCallee(O){var K;super.parseNewCallee(O);let{callee:we}=O;we.type==="TSInstantiationExpression"&&!((K=we.extra)!=null&&K.parenthesized)&&(O.typeParameters=we.typeParameters,O.callee=we.expression)}parseExprOp(O,K,we){let gt;if(Hr(58)>we&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(gt=this.isContextual(120)))){let sr=this.startNodeAt(K);return sr.expression=O,sr.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(gt&&this.raise(X.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(sr,gt?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(sr,K,we)}return super.parseExprOp(O,K,we)}checkReservedWord(O,K,we,gt){this.state.isAmbientContext||super.checkReservedWord(O,K,we,gt)}checkImportReflection(O){super.checkImportReflection(O),O.module&&O.importKind!=="value"&&this.raise(us.ImportReflectionHasImportType,O.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(O){if(super.isPotentialImportPhase(O))return!0;if(this.isContextual(130)){let K=this.lookaheadCharCode();return O?K===123||K===42:K!==61}return!O&&this.isContextual(87)}applyImportPhase(O,K,we,gt){super.applyImportPhase(O,K,we,gt),K?O.exportKind=we==="type"?"type":"value":O.importKind=we==="type"||we==="typeof"?we:"value"}parseImport(O){if(this.match(134))return O.importKind="value",super.parseImport(O);let K;if(qr(this.state.type)&&this.lookaheadCharCode()===61)return O.importKind="value",this.tsParseImportEqualsDeclaration(O);if(this.isContextual(130)){let we=this.parseMaybeImportPhase(O,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(O,we);K=super.parseImportSpecifiersAndAfter(O,we)}else K=super.parseImport(O);return K.importKind==="type"&&K.specifiers.length>1&&K.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(us.TypeImportCannotSpecifyDefaultAndNamed,K),K}parseExport(O,K){if(this.match(83)){let we=O;this.next();let gt=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?gt=this.parseMaybeImportPhase(we,!1):we.importKind="value",this.tsParseImportEqualsDeclaration(we,gt,!0)}else if(this.eat(29)){let we=O;return we.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(we,"TSExportAssignment")}else if(this.eatContextual(93)){let we=O;return this.expectContextual(128),we.id=this.parseIdentifier(),this.semicolon(),this.finishNode(we,"TSNamespaceExportDeclaration")}else return super.parseExport(O,K)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let O=this.startNode();return this.next(),O.abstract=!0,this.parseClass(O,!0,!0)}if(this.match(129)){let O=this.tsParseInterfaceDeclaration(this.startNode());if(O)return O}return super.parseExportDefaultExpression()}parseVarStatement(O,K,we=!1){let{isAmbientContext:gt}=this.state,sr=super.parseVarStatement(O,K,we||gt);if(!gt)return sr;for(let{id:Yr,init:Lr}of sr.declarations)Lr&&(K!=="const"||Yr.typeAnnotation?this.raise(us.InitializerNotAllowedInAmbientContext,Lr):_d(Lr,this.hasPlugin("estree"))||this.raise(us.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,Lr));return sr}parseStatementContent(O,K){if(this.match(75)&&this.isLookaheadContextual("enum")){let we=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(we,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let we=this.tsParseInterfaceDeclaration(this.startNode());if(we)return we}return super.parseStatementContent(O,K)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(O,K){return K.some(we=>LA(we)?O.accessibility===we:!!O[we])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(O,K,we){let gt=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:gt,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:us.InvalidModifierOnTypeParameterPositions},K);let sr=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(K,gt)&&this.raise(us.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(O,K)):this.parseClassMemberWithIsStatic(O,K,we,!!K.static)};K.declare?this.tsInAmbientContext(sr):sr()}parseClassMemberWithIsStatic(O,K,we,gt){let sr=this.tsTryParseIndexSignature(K);if(sr){O.body.push(sr),K.abstract&&this.raise(us.IndexSignatureHasAbstract,K),K.accessibility&&this.raise(us.IndexSignatureHasAccessibility,K,{modifier:K.accessibility}),K.declare&&this.raise(us.IndexSignatureHasDeclare,K),K.override&&this.raise(us.IndexSignatureHasOverride,K);return}!this.state.inAbstractClass&&K.abstract&&this.raise(us.NonAbstractClassHasAbstractMethod,K),K.override&&(we.hadSuperClass||this.raise(us.OverrideNotInSubClass,K)),super.parseClassMemberWithIsStatic(O,K,we,gt)}parsePostMemberNameModifiers(O){this.eat(17)&&(O.optional=!0),O.readonly&&this.match(10)&&this.raise(us.ClassMethodHasReadonly,O),O.declare&&this.match(10)&&this.raise(us.ClassMethodHasDeclare,O)}parseExpressionStatement(O,K,we){return(K.type==="Identifier"?this.tsParseExpressionStatement(O,K,we):void 0)||super.parseExpressionStatement(O,K,we)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(O,K,we){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(O,K,we);let gt=this.tryParse(()=>super.parseConditional(O,K));return gt.node?(gt.error&&(this.state=gt.failState),gt.node):(gt.error&&super.setOptionalParametersError(we,gt.error),O)}parseParenItem(O,K){let we=super.parseParenItem(O,K);if(this.eat(17)&&(we.optional=!0,this.resetEndLocation(O)),this.match(14)){let gt=this.startNodeAt(K);return gt.expression=O,gt.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(gt,"TSTypeCastExpression")}return O}parseExportDeclaration(O){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(O));let K=this.state.startLoc,we=this.eatContextual(125);if(we&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(us.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let gt=qr(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(O);return gt?((gt.type==="TSInterfaceDeclaration"||gt.type==="TSTypeAliasDeclaration"||we)&&(O.exportKind="type"),we&>.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(gt,K),gt.declare=!0),gt):null}parseClassId(O,K,we,gt){if((!K||we)&&this.isContextual(113))return;super.parseClassId(O,K,we,O.declare?1024:8331);let sr=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);sr&&(O.typeParameters=sr)}parseClassPropertyAnnotation(O){O.optional||(this.eat(35)?O.definite=!0:this.eat(17)&&(O.optional=!0));let K=this.tsTryParseTypeAnnotation();K&&(O.typeAnnotation=K)}parseClassProperty(O){if(this.parseClassPropertyAnnotation(O),this.state.isAmbientContext&&!(O.readonly&&!O.typeAnnotation)&&this.match(29)&&this.raise(us.DeclareClassFieldHasInitializer,this.state.startLoc),O.abstract&&this.match(29)){let{key:K}=O;this.raise(us.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:K.type==="Identifier"&&!O.computed?K.name:`[${this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end))}]`})}return super.parseClassProperty(O)}parseClassPrivateProperty(O){return O.abstract&&this.raise(us.PrivateElementHasAbstract,O),O.accessibility&&this.raise(us.PrivateElementHasAccessibility,O,{modifier:O.accessibility}),this.parseClassPropertyAnnotation(O),super.parseClassPrivateProperty(O)}parseClassAccessorProperty(O){return this.parseClassPropertyAnnotation(O),O.optional&&this.raise(us.AccessorCannotBeOptional,O),super.parseClassAccessorProperty(O)}pushClassMethod(O,K,we,gt,sr,Yr){let Lr=this.tsTryParseTypeParameters(this.tsParseConstModifier);Lr&&sr&&this.raise(us.ConstructorHasTypeParameters,Lr);let{declare:fi=!1,kind:$n}=K;fi&&($n==="get"||$n==="set")&&this.raise(us.DeclareAccessor,K,{kind:$n}),Lr&&(K.typeParameters=Lr),super.pushClassMethod(O,K,we,gt,sr,Yr)}pushClassPrivateMethod(O,K,we,gt){let sr=this.tsTryParseTypeParameters(this.tsParseConstModifier);sr&&(K.typeParameters=sr),super.pushClassPrivateMethod(O,K,we,gt)}declareClassPrivateMethodInScope(O,K){O.type!=="TSDeclareMethod"&&(O.type==="MethodDefinition"&&!hasOwnProperty.call(O.value,"body")||super.declareClassPrivateMethodInScope(O,K))}parseClassSuper(O){super.parseClassSuper(O),O.superClass&&(this.match(47)||this.match(51))&&(O.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(O.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(O,K,we,gt,sr,Yr,Lr){let fi=this.tsTryParseTypeParameters(this.tsParseConstModifier);return fi&&(O.typeParameters=fi),super.parseObjPropValue(O,K,we,gt,sr,Yr,Lr)}parseFunctionParams(O,K){let we=this.tsTryParseTypeParameters(this.tsParseConstModifier);we&&(O.typeParameters=we),super.parseFunctionParams(O,K)}parseVarId(O,K){super.parseVarId(O,K),O.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(O.definite=!0);let we=this.tsTryParseTypeAnnotation();we&&(O.id.typeAnnotation=we,this.resetEndLocation(O.id))}parseAsyncArrowFromCallExpression(O,K){return this.match(14)&&(O.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(O,K)}parseMaybeAssign(O,K){var we,gt,sr,Yr,Lr;let fi,$n,ra;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(fi=this.state.clone(),$n=this.tryParse(()=>super.parseMaybeAssign(O,K),fi),!$n.error)return $n.node;let{context:ca}=this.state,Bl=ca[ca.length-1];(Bl===Se.j_oTag||Bl===Se.j_expr)&&ca.pop()}if(!((we=$n)!=null&&we.error)&&!this.match(47))return super.parseMaybeAssign(O,K);(!fi||fi===this.state)&&(fi=this.state.clone());let kc,Nl=this.tryParse(ca=>{var Bl,$g;kc=this.tsParseTypeParameters(this.tsParseConstModifier);let SA=super.parseMaybeAssign(O,K);return(SA.type!=="ArrowFunctionExpression"||(Bl=SA.extra)!=null&&Bl.parenthesized)&&ca(),(($g=kc)==null?void 0:$g.params.length)!==0&&this.resetStartLocationFromNode(SA,kc),SA.typeParameters=kc,SA},fi);if(!Nl.error&&!Nl.aborted)return kc&&this.reportReservedArrowTypeParam(kc),Nl.node;if(!$n&&(Bo(!this.hasPlugin("jsx")),ra=this.tryParse(()=>super.parseMaybeAssign(O,K),fi),!ra.error))return ra.node;if((gt=$n)!=null&>.node)return this.state=$n.failState,$n.node;if(Nl.node)return this.state=Nl.failState,kc&&this.reportReservedArrowTypeParam(kc),Nl.node;if((sr=ra)!=null&&sr.node)return this.state=ra.failState,ra.node;throw((Yr=$n)==null?void 0:Yr.error)||Nl.error||((Lr=ra)==null?void 0:Lr.error)}reportReservedArrowTypeParam(O){var K;O.params.length===1&&!O.params[0].constraint&&!((K=O.extra)!=null&&K.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(us.ReservedArrowTypeParam,O)}parseMaybeUnary(O,K){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(O,K)}parseArrow(O){if(this.match(14)){let K=this.tryParse(we=>{let gt=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&we(),gt});if(K.aborted)return;K.thrown||(K.error&&(this.state=K.failState),O.returnType=K.node)}return super.parseArrow(O)}parseFunctionParamType(O){this.eat(17)&&(O.optional=!0);let K=this.tsTryParseTypeAnnotation();return K&&(O.typeAnnotation=K),this.resetEndLocation(O),O}isAssignable(O,K){switch(O.type){case"TSTypeCastExpression":return this.isAssignable(O.expression,K);case"TSParameterProperty":return!0;default:return super.isAssignable(O,K)}}toAssignable(O,K=!1){switch(O.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(O,K);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":K?this.expressionScope.recordArrowParameterBindingError(us.UnexpectedTypeCastInParameter,O):this.raise(us.UnexpectedTypeCastInParameter,O),this.toAssignable(O.expression,K);break;case"AssignmentExpression":!K&&O.left.type==="TSTypeCastExpression"&&(O.left=this.typeCastToParameter(O.left));default:super.toAssignable(O,K)}}toAssignableParenthesizedExpression(O,K){switch(O.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(O.expression,K);break;default:super.toAssignable(O,K)}}checkToRestConversion(O,K){switch(O.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(O.expression,!1);break;default:super.checkToRestConversion(O,K)}}isValidLVal(O,K,we){switch(O){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(we!==64||!K)&&["expression",!0];default:return super.isValidLVal(O,K,we)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(O,K){if(this.match(47)||this.match(51)){let we=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let gt=super.parseMaybeDecoratorArguments(O,K);return gt.typeParameters=we,gt}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(O,K)}checkCommaAfterRest(O){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===O?(this.next(),!1):super.checkCommaAfterRest(O)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(O,K){let we=super.parseMaybeDefault(O,K);return we.type==="AssignmentPattern"&&we.typeAnnotation&&we.right.startthis.isAssignable(K,!0)):super.shouldParseArrow(O)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(O){if(this.match(47)||this.match(51)){let K=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());K&&(O.typeParameters=K)}return super.jsxParseOpeningElementAfterName(O)}getGetterSetterExpectedParamCount(O){let K=super.getGetterSetterExpectedParamCount(O),we=this.getObjectOrClassMethodParams(O)[0];return we&&this.isThisParam(we)?K+1:K}parseCatchClauseParam(){let O=super.parseCatchClauseParam(),K=this.tsTryParseTypeAnnotation();return K&&(O.typeAnnotation=K,this.resetEndLocation(O)),O}tsInAmbientContext(O){let{isAmbientContext:K,strict:we}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return O()}finally{this.state.isAmbientContext=K,this.state.strict=we}}parseClass(O,K,we){let gt=this.state.inAbstractClass;this.state.inAbstractClass=!!O.abstract;try{return super.parseClass(O,K,we)}finally{this.state.inAbstractClass=gt}}tsParseAbstractDeclaration(O,K){if(this.match(80))return O.abstract=!0,this.maybeTakeDecorators(K,this.parseClass(O,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return O.abstract=!0,this.raise(us.NonClassMethodPropertyHasAbstractModifer,O),this.tsParseInterfaceDeclaration(O)}else this.unexpected(null,80)}parseMethod(O,K,we,gt,sr,Yr,Lr){let fi=super.parseMethod(O,K,we,gt,sr,Yr,Lr);if(fi.abstract&&(this.hasPlugin("estree")?fi.value:fi).body){let{key:$n}=fi;this.raise(us.AbstractMethodHasImplementation,fi,{methodName:$n.type==="Identifier"&&!fi.computed?$n.name:`[${this.input.slice(this.offsetToSourcePos($n.start),this.offsetToSourcePos($n.end))}]`})}return fi}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(O,K,we,gt){return!K&>?(this.parseTypeOnlyImportExportSpecifier(O,!1,we),this.finishNode(O,"ExportSpecifier")):(O.exportKind="value",super.parseExportSpecifier(O,K,we,gt))}parseImportSpecifier(O,K,we,gt,sr){return!K&>?(this.parseTypeOnlyImportExportSpecifier(O,!0,we),this.finishNode(O,"ImportSpecifier")):(O.importKind="value",super.parseImportSpecifier(O,K,we,gt,we?4098:4096))}parseTypeOnlyImportExportSpecifier(O,K,we){let gt=K?"imported":"local",sr=K?"local":"exported",Yr=O[gt],Lr,fi=!1,$n=!0,ra=Yr.loc.start;if(this.isContextual(93)){let Nl=this.parseIdentifier();if(this.isContextual(93)){let ca=this.parseIdentifier();ke(this.state.type)?(fi=!0,Yr=Nl,Lr=K?this.parseIdentifier():this.parseModuleExportName(),$n=!1):(Lr=ca,$n=!1)}else ke(this.state.type)?($n=!1,Lr=K?this.parseIdentifier():this.parseModuleExportName()):(fi=!0,Yr=Nl)}else ke(this.state.type)&&(fi=!0,K?(Yr=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(Yr.name,Yr.loc.start,!0,!0)):Yr=this.parseModuleExportName());fi&&we&&this.raise(K?us.TypeModifierIsUsedInTypeImports:us.TypeModifierIsUsedInTypeExports,ra),O[gt]=Yr,O[sr]=Lr;let kc=K?"importKind":"exportKind";O[kc]=fi?"type":"value",$n&&this.eatContextual(93)&&(O[sr]=K?this.parseIdentifier():this.parseModuleExportName()),O[sr]||(O[sr]=Zt(O[gt])),K&&this.checkIdentifier(O[sr],fi?4098:4096)}};function ip(se){if(se.type!=="MemberExpression")return!1;let{computed:O,property:K}=se;return O&&K.type!=="StringLiteral"&&(K.type!=="TemplateLiteral"||K.expressions.length>0)?!1:YA(se.object)}function _d(se,O){var K;let{type:we}=se;if((K=se.extra)!=null&&K.parenthesized)return!1;if(O){if(we==="Literal"){let{value:gt}=se;if(typeof gt=="string"||typeof gt=="boolean")return!0}}else if(we==="StringLiteral"||we==="BooleanLiteral")return!0;return!!(j1(se,O)||pw(se,O)||we==="TemplateLiteral"&&se.expressions.length===0||ip(se))}function j1(se,O){return O?se.type==="Literal"&&(typeof se.value=="number"||"bigint"in se):se.type==="NumericLiteral"||se.type==="BigIntLiteral"}function pw(se,O){if(se.type==="UnaryExpression"){let{operator:K,argument:we}=se;if(K==="-"&&j1(we,O))return!0}return!1}function YA(se){return se.type==="Identifier"?!0:se.type!=="MemberExpression"||se.computed?!1:YA(se.object)}var Ac=Q`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Nm=se=>class extends se{parsePlaceholder(O){if(this.match(133)){let K=this.startNode();return this.next(),this.assertNoSpace(),K.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(K,O)}}finishPlaceholder(O,K){let we=O;return(!we.expectedNode||!we.type)&&(we=this.finishNode(we,"Placeholder")),we.expectedNode=K,we}getTokenFromCode(O){O===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(O)}parseExprAtom(O){return this.parsePlaceholder("Expression")||super.parseExprAtom(O)}parseIdentifier(O){return this.parsePlaceholder("Identifier")||super.parseIdentifier(O)}checkReservedWord(O,K,we,gt){O!==void 0&&super.checkReservedWord(O,K,we,gt)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(O,K,we){return O==="Placeholder"||super.isValidLVal(O,K,we)}toAssignable(O,K){O&&O.type==="Placeholder"&&O.expectedNode==="Expression"?O.expectedNode="Pattern":super.toAssignable(O,K)}chStartsBindingIdentifier(O,K){return!!(super.chStartsBindingIdentifier(O,K)||this.lookahead().type===133)}verifyBreakContinue(O,K){O.label&&O.label.type==="Placeholder"||super.verifyBreakContinue(O,K)}parseExpressionStatement(O,K){var we;if(K.type!=="Placeholder"||(we=K.extra)!=null&&we.parenthesized)return super.parseExpressionStatement(O,K);if(this.match(14)){let sr=O;return sr.label=this.finishPlaceholder(K,"Identifier"),this.next(),sr.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(sr,"LabeledStatement")}this.semicolon();let gt=O;return gt.name=K.name,this.finishPlaceholder(gt,"Statement")}parseBlock(O,K,we){return this.parsePlaceholder("BlockStatement")||super.parseBlock(O,K,we)}parseFunctionId(O){return this.parsePlaceholder("Identifier")||super.parseFunctionId(O)}parseClass(O,K,we){let gt=K?"ClassDeclaration":"ClassExpression";this.next();let sr=this.state.strict,Yr=this.parsePlaceholder("Identifier");if(Yr)if(this.match(81)||this.match(133)||this.match(5))O.id=Yr;else{if(we||!K)return O.id=null,O.body=this.finishPlaceholder(Yr,"ClassBody"),this.finishNode(O,gt);throw this.raise(Ac.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(O,K,we);return super.parseClassSuper(O),O.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!O.superClass,sr),this.finishNode(O,gt)}parseExport(O,K){let we=this.parsePlaceholder("Identifier");if(!we)return super.parseExport(O,K);let gt=O;if(!this.isContextual(98)&&!this.match(12))return gt.specifiers=[],gt.source=null,gt.declaration=this.finishPlaceholder(we,"Declaration"),this.finishNode(gt,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let sr=this.startNode();return sr.exported=we,gt.specifiers=[this.finishNode(sr,"ExportDefaultSpecifier")],super.parseExport(gt,K)}isExportDefaultSpecifier(){if(this.match(65)){let O=this.nextTokenStart();if(this.isUnparsedContextual(O,"from")&&this.input.startsWith(Sc(133),this.nextTokenStartSince(O+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(O,K){var we;return(we=O.specifiers)!=null&&we.length?!0:super.maybeParseExportDefaultSpecifier(O,K)}checkExport(O){let{specifiers:K}=O;K!=null&&K.length&&(O.specifiers=K.filter(we=>we.exported.type==="Placeholder")),super.checkExport(O),O.specifiers=K}parseImport(O){let K=this.parsePlaceholder("Identifier");if(!K)return super.parseImport(O);if(O.specifiers=[],!this.isContextual(98)&&!this.match(12))return O.source=this.finishPlaceholder(K,"StringLiteral"),this.semicolon(),this.finishNode(O,"ImportDeclaration");let we=this.startNodeAtNode(K);return we.local=K,O.specifiers.push(this.finishNode(we,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(O)||this.parseNamedImportSpecifiers(O)),this.expectContextual(98),O.source=this.parseImportSource(),this.semicolon(),this.finishNode(O,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Ac.UnexpectedSpace,this.state.lastTokEndLoc)}},HS=se=>class extends se{parseV8Intrinsic(){if(this.match(54)){let O=this.state.startLoc,K=this.startNode();if(this.next(),qr(this.state.type)){let we=this.parseIdentifierName(),gt=this.createIdentifier(K,we);if(gt.type="V8IntrinsicIdentifier",this.match(10))return gt}this.unexpected(O)}}parseExprAtom(O){return this.parseV8Intrinsic()||super.parseExprAtom(O)}},jd=["minimal","fsharp","hack","smart"],dh=["^^","@@","^","%","#"];function Hp(se){if(se.has("decorators")){if(se.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let K=se.get("decorators").decoratorsBeforeExport;if(K!=null&&typeof K!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let we=se.get("decorators").allowCallParenthesized;if(we!=null&&typeof we!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(se.has("flow")&&se.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(se.has("placeholders")&&se.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(se.has("pipelineOperator")){var O;let K=se.get("pipelineOperator").proposal;if(!jd.includes(K)){let gt=jd.map(sr=>`"${sr}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${gt}.`)}let we=((O=se.get("recordAndTuple"))==null?void 0:O.syntaxType)==="hash";if(K==="hack"){if(se.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(se.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let gt=se.get("pipelineOperator").topicToken;if(!dh.includes(gt)){let sr=dh.map(Yr=>`"${Yr}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${sr}.`)}if(gt==="#"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}else if(K==="smart"&&we)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",se.get("recordAndTuple")])}\`.`)}if(se.has("moduleAttributes")){if(se.has("deprecatedImportAssert")||se.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(se.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(se.has("importAssertions")&&se.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!se.has("deprecatedImportAssert")&&se.has("importAttributes")&&se.get("importAttributes").deprecatedAssertSyntax&&se.set("deprecatedImportAssert",{}),se.has("recordAndTuple")){let K=se.get("recordAndTuple").syntaxType;if(K!=null){let we=["hash","bar"];if(!we.includes(K))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+we.map(gt=>`'${gt}'`).join(", "))}}if(se.has("asyncDoExpressions")&&!se.has("doExpressions")){let K=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw K.missingPlugins="doExpressions",K}if(se.has("optionalChainingAssign")&&se.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var uC={estree:de,jsx:Ea,flow:HA,typescript:ef,v8intrinsic:HS,placeholders:Nm},nE=Object.keys(uC),J_=class extends di{checkProto(se,O,K,we){if(se.type==="SpreadElement"||this.isObjectMethod(se)||se.computed||se.shorthand)return;let gt=se.key;if((gt.type==="Identifier"?gt.name:gt.value)==="__proto__"){if(O){this.raise(X.RecordNoProto,gt);return}K.used&&(we?we.doubleProtoLoc===null&&(we.doubleProtoLoc=gt.loc.start):this.raise(X.DuplicateProto,gt)),K.used=!0}}shouldExitDescending(se,O){return se.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(se.start)===O}getExpression(){this.enterInitialScopes(),this.nextToken();let se=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),se.comments=this.comments,se.errors=this.state.errors,this.optionFlags&128&&(se.tokens=this.tokens),se}parseExpression(se,O){return se?this.disallowInAnd(()=>this.parseExpressionBase(O)):this.allowInAnd(()=>this.parseExpressionBase(O))}parseExpressionBase(se){let O=this.state.startLoc,K=this.parseMaybeAssign(se);if(this.match(12)){let we=this.startNodeAt(O);for(we.expressions=[K];this.eat(12);)we.expressions.push(this.parseMaybeAssign(se));return this.toReferencedList(we.expressions),this.finishNode(we,"SequenceExpression")}return K}parseMaybeAssignDisallowIn(se,O){return this.disallowInAnd(()=>this.parseMaybeAssign(se,O))}parseMaybeAssignAllowIn(se,O){return this.allowInAnd(()=>this.parseMaybeAssign(se,O))}setOptionalParametersError(se,O){var K;se.optionalParametersLoc=(K=O?.loc)!=null?K:this.state.startLoc}parseMaybeAssign(se,O){let K=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let Yr=this.parseYield();return O&&(Yr=O.call(this,Yr,K)),Yr}let we;se?we=!1:(se=new yg,we=!0);let{type:gt}=this.state;(gt===10||qr(gt))&&(this.state.potentialArrowAt=this.state.start);let sr=this.parseMaybeConditional(se);if(O&&(sr=O.call(this,sr,K)),Hi(this.state.type)){let Yr=this.startNodeAt(K),Lr=this.state.value;if(Yr.operator=Lr,this.match(29)){this.toAssignable(sr,!0),Yr.left=sr;let fi=K.index;se.doubleProtoLoc!=null&&se.doubleProtoLoc.index>=fi&&(se.doubleProtoLoc=null),se.shorthandAssignLoc!=null&&se.shorthandAssignLoc.index>=fi&&(se.shorthandAssignLoc=null),se.privateKeyLoc!=null&&se.privateKeyLoc.index>=fi&&(this.checkDestructuringPrivate(se),se.privateKeyLoc=null)}else Yr.left=sr;return this.next(),Yr.right=this.parseMaybeAssign(),this.checkLVal(sr,this.finishNode(Yr,"AssignmentExpression")),Yr}else we&&this.checkExpressionErrors(se,!0);return sr}parseMaybeConditional(se){let O=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprOps(se);return this.shouldExitDescending(we,K)?we:this.parseConditional(we,O,se)}parseConditional(se,O,K){if(this.eat(17)){let we=this.startNodeAt(O);return we.test=se,we.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),we.alternate=this.parseMaybeAssign(),this.finishNode(we,"ConditionalExpression")}return se}parseMaybeUnaryOrPrivate(se){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(se)}parseExprOps(se){let O=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseMaybeUnaryOrPrivate(se);return this.shouldExitDescending(we,K)?we:this.parseExprOp(we,O,-1)}parseExprOp(se,O,K){if(this.isPrivateName(se)){let gt=this.getPrivateNameSV(se);(K>=Hr(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(X.PrivateInExpectedIn,se,{identifierName:gt}),this.classScope.usePrivateName(gt,se.loc.start)}let we=this.state.type;if(io(we)&&(this.prodParam.hasIn||!this.match(58))){let gt=Hr(we);if(gt>K){if(we===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return se;this.checkPipelineAtInfixOperator(se,O)}let sr=this.startNodeAt(O);sr.left=se,sr.operator=this.state.value;let Yr=we===41||we===42,Lr=we===40;if(Lr&&(gt=Hr(42)),this.next(),we===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(X.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);sr.right=this.parseExprOpRightExpr(we,gt);let fi=this.finishNode(sr,Yr||Lr?"LogicalExpression":"BinaryExpression"),$n=this.state.type;if(Lr&&($n===41||$n===42)||Yr&&$n===40)throw this.raise(X.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(fi,O,K)}}return se}parseExprOpRightExpr(se,O){let K=this.state.startLoc;switch(se){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(O))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(X.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(se,O),K)});default:return this.parseExprOpBaseRightExpr(se,O)}}parseExprOpBaseRightExpr(se,O){let K=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),K,Wr(se)?O-1:O)}parseHackPipeBody(){var se;let{startLoc:O}=this.state,K=this.parseMaybeAssign();return b.has(K.type)&&!((se=K.extra)!=null&&se.parenthesized)&&this.raise(X.PipeUnparenthesizedBody,O,{type:K.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(X.PipeTopicUnused,O),K}checkExponentialAfterUnary(se){this.match(57)&&this.raise(X.UnexpectedTokenUnaryExponentiation,se.argument)}parseMaybeUnary(se,O){let K=this.state.startLoc,we=this.isContextual(96);if(we&&this.recordAwaitIfAllowed()){this.next();let Lr=this.parseAwait(K);return O||this.checkExponentialAfterUnary(Lr),Lr}let gt=this.match(34),sr=this.startNode();if(Ya(this.state.type)){sr.operator=this.state.value,sr.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let Lr=this.match(89);if(this.next(),sr.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(se,!0),this.state.strict&&Lr){let fi=sr.argument;fi.type==="Identifier"?this.raise(X.StrictDelete,sr):this.hasPropertyAsPrivateName(fi)&&this.raise(X.DeletePrivateField,sr)}if(!gt)return O||this.checkExponentialAfterUnary(sr),this.finishNode(sr,"UnaryExpression")}let Yr=this.parseUpdate(sr,gt,se);if(we){let{type:Lr}=this.state;if((this.hasPlugin("v8intrinsic")?Nn(Lr):Nn(Lr)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(X.AwaitNotInAsyncContext,K),this.parseAwait(K)}return Yr}parseUpdate(se,O,K){if(O){let sr=se;return this.checkLVal(sr.argument,this.finishNode(sr,"UpdateExpression")),se}let we=this.state.startLoc,gt=this.parseExprSubscripts(K);if(this.checkExpressionErrors(K,!1))return gt;for(;ga(this.state.type)&&!this.canInsertSemicolon();){let sr=this.startNodeAt(we);sr.operator=this.state.value,sr.prefix=!1,sr.argument=gt,this.next(),this.checkLVal(gt,gt=this.finishNode(sr,"UpdateExpression"))}return gt}parseExprSubscripts(se){let O=this.state.startLoc,K=this.state.potentialArrowAt,we=this.parseExprAtom(se);return this.shouldExitDescending(we,K)?we:this.parseSubscripts(we,O)}parseSubscripts(se,O,K){let we={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(se),stop:!1};do se=this.parseSubscript(se,O,K,we),we.maybeAsyncArrow=!1;while(!we.stop);return se}parseSubscript(se,O,K,we){let{type:gt}=this.state;if(!K&>===15)return this.parseBind(se,O,K,we);if(Ft(gt))return this.parseTaggedTemplateExpression(se,O,we);let sr=!1;if(gt===18){if(K&&(this.raise(X.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return we.stop=!0,se;we.optionalChainMember=sr=!0,this.next()}if(!K&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(se,O,we,sr);{let Yr=this.eat(0);return Yr||sr||this.eat(16)?this.parseMember(se,O,we,Yr,sr):(we.stop=!0,se)}}parseMember(se,O,K,we,gt){let sr=this.startNodeAt(O);return sr.object=se,sr.computed=we,we?(sr.property=this.parseExpression(),this.expect(3)):this.match(139)?(se.type==="Super"&&this.raise(X.SuperPrivateField,O),this.classScope.usePrivateName(this.state.value,this.state.startLoc),sr.property=this.parsePrivateName()):sr.property=this.parseIdentifier(!0),K.optionalChainMember?(sr.optional=gt,this.finishNode(sr,"OptionalMemberExpression")):this.finishNode(sr,"MemberExpression")}parseBind(se,O,K,we){let gt=this.startNodeAt(O);return gt.object=se,this.next(),gt.callee=this.parseNoCallExpr(),we.stop=!0,this.parseSubscripts(this.finishNode(gt,"BindExpression"),O,K)}parseCoverCallAndAsyncArrowHead(se,O,K,we){let gt=this.state.maybeInArrowParameters,sr=null;this.state.maybeInArrowParameters=!0,this.next();let Yr=this.startNodeAt(O);Yr.callee=se;let{maybeAsyncArrow:Lr,optionalChainMember:fi}=K;Lr&&(this.expressionScope.enter(Om()),sr=new yg),fi&&(Yr.optional=we),we?Yr.arguments=this.parseCallExpressionArguments(11):Yr.arguments=this.parseCallExpressionArguments(11,se.type!=="Super",Yr,sr);let $n=this.finishCallExpression(Yr,fi);return Lr&&this.shouldParseAsyncArrow()&&!we?(K.stop=!0,this.checkDestructuringPrivate(sr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),$n=this.parseAsyncArrowFromCallExpression(this.startNodeAt(O),$n)):(Lr&&(this.checkExpressionErrors(sr,!0),this.expressionScope.exit()),this.toReferencedArguments($n)),this.state.maybeInArrowParameters=gt,$n}toReferencedArguments(se,O){this.toReferencedListDeep(se.arguments,O)}parseTaggedTemplateExpression(se,O,K){let we=this.startNodeAt(O);return we.tag=se,we.quasi=this.parseTemplate(!0),K.optionalChainMember&&this.raise(X.OptionalChainingNoTemplate,O),this.finishNode(we,"TaggedTemplateExpression")}atPossibleAsyncArrow(se){return se.type==="Identifier"&&se.name==="async"&&this.state.lastTokEndLoc.index===se.end&&!this.canInsertSemicolon()&&se.end-se.start===5&&this.offsetToSourcePos(se.start)===this.state.potentialArrowAt}finishCallExpression(se,O){if(se.callee.type==="Import")if(se.arguments.length===0||se.arguments.length>2)this.raise(X.ImportCallArity,se);else for(let K of se.arguments)K.type==="SpreadElement"&&this.raise(X.ImportCallSpreadArgument,K);return this.finishNode(se,O?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(se,O,K,we){let gt=[],sr=!0,Yr=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(se);){if(sr)sr=!1;else if(this.expect(12),this.match(se)){K&&this.addTrailingCommaExtraToNode(K),this.next();break}gt.push(this.parseExprListItem(!1,we,O))}return this.state.inFSharpPipelineDirectBody=Yr,gt}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(se,O){var K;return this.resetPreviousNodeTrailingComments(O),this.expect(19),this.parseArrowExpression(se,O.arguments,!0,(K=O.extra)==null?void 0:K.trailingCommaLoc),O.innerComments&&Ri(se,O.innerComments),O.callee.trailingComments&&Ri(se,O.callee.trailingComments),se}parseNoCallExpr(){let se=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),se,!0)}parseExprAtom(se){let O,K=null,{type:we}=this.state;switch(we){case 79:return this.parseSuper();case 83:return O=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(O):this.match(10)?this.optionFlags&256?this.parseImportCall(O):this.finishNode(O,"Import"):(this.raise(X.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(O,"Import"));case 78:return O=this.startNode(),this.next(),this.finishNode(O,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let gt=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(gt)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,se);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,se);case 68:return this.parseFunctionOrFunctionSent();case 26:K=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(K,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{O=this.startNode(),this.next(),O.object=null;let gt=O.callee=this.parseNoCallExpr();if(gt.type==="MemberExpression")return this.finishNode(O,"BindExpression");throw this.raise(X.UnsupportedBind,gt)}case 139:return this.raise(X.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let gt=this.getPluginOption("pipelineOperator","proposal");if(gt)return this.parseTopicReference(gt);this.unexpected();break}case 47:{let gt=this.input.codePointAt(this.nextTokenStart());gc(gt)||gt===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(we===137)return this.parseDecimalLiteral(this.state.value);if(qr(we)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let gt=this.state.potentialArrowAt===this.state.start,sr=this.state.containsEsc,Yr=this.parseIdentifier();if(!sr&&Yr.name==="async"&&!this.canInsertSemicolon()){let{type:Lr}=this.state;if(Lr===68)return this.resetPreviousNodeTrailingComments(Yr),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(Yr));if(qr(Lr))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(Yr)):Yr;if(Lr===90)return this.resetPreviousNodeTrailingComments(Yr),this.parseDo(this.startNodeAtNode(Yr),!0)}return gt&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(Yr),[Yr],!1)):Yr}else this.unexpected()}}parseTopicReferenceThenEqualsSign(se,O){let K=this.getPluginOption("pipelineOperator","proposal");if(K)return this.state.type=se,this.state.value=O,this.state.pos--,this.state.end--,this.state.endLoc=a(this.state.endLoc,-1),this.parseTopicReference(K);this.unexpected()}parseTopicReference(se){let O=this.startNode(),K=this.state.startLoc,we=this.state.type;return this.next(),this.finishTopicReference(O,K,se,we)}finishTopicReference(se,O,K,we){if(this.testTopicReferenceConfiguration(K,O,we))return K==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(X.PipeTopicUnbound,O),this.registerTopicReference(),this.finishNode(se,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(X.PrimaryTopicNotAllowed,O),this.registerTopicReference(),this.finishNode(se,"PipelinePrimaryTopicReference"));throw this.raise(X.PipeTopicUnconfiguredToken,O,{token:Sc(we)})}testTopicReferenceConfiguration(se,O,K){switch(se){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Sc(K)}]);case"smart":return K===27;default:throw this.raise(X.PipeTopicRequiresHackPipes,O)}}parseAsyncArrowUnaryFunction(se){this.prodParam.enter(ZA(!0,this.prodParam.hasYield));let O=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(X.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(se,O,!0)}parseDo(se,O){this.expectPlugin("doExpressions"),O&&this.expectPlugin("asyncDoExpressions"),se.async=O,this.next();let K=this.state.labels;return this.state.labels=[],O?(this.prodParam.enter(2),se.body=this.parseBlock(),this.prodParam.exit()):se.body=this.parseBlock(),this.state.labels=K,this.finishNode(se,"DoExpression")}parseSuper(){let se=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(X.SuperNotAllowed,se):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(X.UnexpectedSuper,se),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(X.UnsupportedSuper,se),this.finishNode(se,"Super")}parsePrivateName(){let se=this.startNode(),O=this.startNodeAt(a(this.state.startLoc,1)),K=this.state.value;return this.next(),se.id=this.createIdentifier(O,K),this.finishNode(se,"PrivateName")}parseFunctionOrFunctionSent(){let se=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let O=this.createIdentifier(this.startNodeAtNode(se),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(se,O,"sent")}return this.parseFunction(se)}parseMetaProperty(se,O,K){se.meta=O;let we=this.state.containsEsc;return se.property=this.parseIdentifier(!0),(se.property.name!==K||we)&&this.raise(X.UnsupportedMetaProperty,se.property,{target:O.name,onlyValidPropertyName:K}),this.finishNode(se,"MetaProperty")}parseImportMetaProperty(se){let O=this.createIdentifier(this.startNodeAtNode(se),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(X.ImportMetaOutsideModule,O),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let K=this.isContextual(105);if(this.expectPlugin(K?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(X.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),se.phase=K?"source":"defer",this.parseImportCall(se)}return this.parseMetaProperty(se,O,"meta")}parseLiteralAtNode(se,O,K){return this.addExtra(K,"rawValue",se),this.addExtra(K,"raw",this.input.slice(this.offsetToSourcePos(K.start),this.state.end)),K.value=se,this.next(),this.finishNode(K,O)}parseLiteral(se,O){let K=this.startNode();return this.parseLiteralAtNode(se,O,K)}parseStringLiteral(se){return this.parseLiteral(se,"StringLiteral")}parseNumericLiteral(se){return this.parseLiteral(se,"NumericLiteral")}parseBigIntLiteral(se){return this.parseLiteral(se,"BigIntLiteral")}parseDecimalLiteral(se){return this.parseLiteral(se,"DecimalLiteral")}parseRegExpLiteral(se){let O=this.startNode();return this.addExtra(O,"raw",this.input.slice(this.offsetToSourcePos(O.start),this.state.end)),O.pattern=se.pattern,O.flags=se.flags,this.next(),this.finishNode(O,"RegExpLiteral")}parseBooleanLiteral(se){let O=this.startNode();return O.value=se,this.next(),this.finishNode(O,"BooleanLiteral")}parseNullLiteral(){let se=this.startNode();return this.next(),this.finishNode(se,"NullLiteral")}parseParenAndDistinguishExpression(se){let O=this.state.startLoc,K;this.next(),this.expressionScope.enter(sd());let we=this.state.maybeInArrowParameters,gt=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let sr=this.state.startLoc,Yr=[],Lr=new yg,fi=!0,$n,ra;for(;!this.match(11);){if(fi)fi=!1;else if(this.expect(12,Lr.optionalParametersLoc===null?null:Lr.optionalParametersLoc),this.match(11)){ra=this.state.startLoc;break}if(this.match(21)){let ca=this.state.startLoc;if($n=this.state.startLoc,Yr.push(this.parseParenItem(this.parseRestBinding(),ca)),!this.checkCommaAfterRest(41))break}else Yr.push(this.parseMaybeAssignAllowIn(Lr,this.parseParenItem))}let kc=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=we,this.state.inFSharpPipelineDirectBody=gt;let Nl=this.startNodeAt(O);return se&&this.shouldParseArrow(Yr)&&(Nl=this.parseArrow(Nl))?(this.checkDestructuringPrivate(Lr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(Nl,Yr,!1),Nl):(this.expressionScope.exit(),Yr.length||this.unexpected(this.state.lastTokStartLoc),ra&&this.unexpected(ra),$n&&this.unexpected($n),this.checkExpressionErrors(Lr,!0),this.toReferencedListDeep(Yr,!0),Yr.length>1?(K=this.startNodeAt(sr),K.expressions=Yr,this.finishNode(K,"SequenceExpression"),this.resetEndLocation(K,kc)):K=Yr[0],this.wrapParenthesis(O,K))}wrapParenthesis(se,O){if(!(this.optionFlags&512))return this.addExtra(O,"parenthesized",!0),this.addExtra(O,"parenStart",se.index),this.takeSurroundingComments(O,se.index,this.state.lastTokEndLoc.index),O;let K=this.startNodeAt(se);return K.expression=O,this.finishNode(K,"ParenthesizedExpression")}shouldParseArrow(se){return!this.canInsertSemicolon()}parseArrow(se){if(this.eat(19))return se}parseParenItem(se,O){return se}parseNewOrNewTarget(){let se=this.startNode();if(this.next(),this.match(16)){let O=this.createIdentifier(this.startNodeAtNode(se),"new");this.next();let K=this.parseMetaProperty(se,O,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(X.UnexpectedNewTarget,K),K}return this.parseNew(se)}parseNew(se){if(this.parseNewCallee(se),this.eat(10)){let O=this.parseExprList(11);this.toReferencedList(O),se.arguments=O}else se.arguments=[];return this.finishNode(se,"NewExpression")}parseNewCallee(se){let O=this.match(83),K=this.parseNoCallExpr();se.callee=K,O&&(K.type==="Import"||K.type==="ImportExpression")&&this.raise(X.ImportCallNotNewExpression,K)}parseTemplateElement(se){let{start:O,startLoc:K,end:we,value:gt}=this.state,sr=O+1,Yr=this.startNodeAt(a(K,1));gt===null&&(se||this.raise(X.InvalidEscapeSequenceTemplate,a(this.state.firstInvalidTemplateEscapePos,1)));let Lr=this.match(24),fi=Lr?-1:-2,$n=we+fi;Yr.value={raw:this.input.slice(sr,$n).replace(/\r\n?/g,` -`),cooked:gt===null?null:gt.slice(1,fi)},Yr.tail=Lr,this.next();let ra=this.finishNode(Yr,"TemplateElement");return this.resetEndLocation(ra,a(this.state.lastTokEndLoc,fi)),ra}parseTemplate(se){let O=this.startNode(),K=this.parseTemplateElement(se),we=[K],gt=[];for(;!K.tail;)gt.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),we.push(K=this.parseTemplateElement(se));return O.expressions=gt,O.quasis=we,this.finishNode(O,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(se,O,K,we){K&&this.expectPlugin("recordAndTuple");let gt=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=Object.create(null),Yr=!0,Lr=this.startNode();for(Lr.properties=[],this.next();!this.match(se);){if(Yr)Yr=!1;else if(this.expect(12),this.match(se)){this.addTrailingCommaExtraToNode(Lr);break}let $n;O?$n=this.parseBindingProperty():($n=this.parsePropertyDefinition(we),this.checkProto($n,K,sr,we)),K&&!this.isObjectProperty($n)&&$n.type!=="SpreadElement"&&this.raise(X.InvalidRecordProperty,$n),$n.shorthand&&this.addExtra($n,"shorthand",!0),Lr.properties.push($n)}this.next(),this.state.inFSharpPipelineDirectBody=gt;let fi="ObjectExpression";return O?fi="ObjectPattern":K&&(fi="RecordExpression"),this.finishNode(Lr,fi)}addTrailingCommaExtraToNode(se){this.addExtra(se,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(se,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(se){return!se.computed&&se.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(se){let O=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(X.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)O.push(this.parseDecorator());let K=this.startNode(),we=!1,gt=!1,sr;if(this.match(21))return O.length&&this.unexpected(),this.parseSpread();O.length&&(K.decorators=O,O=[]),K.method=!1,se&&(sr=this.state.startLoc);let Yr=this.eat(55);this.parsePropertyNamePrefixOperator(K);let Lr=this.state.containsEsc;if(this.parsePropertyName(K,se),!Yr&&!Lr&&this.maybeAsyncOrAccessorProp(K)){let{key:fi}=K,$n=fi.name;$n==="async"&&!this.hasPrecedingLineBreak()&&(we=!0,this.resetPreviousNodeTrailingComments(fi),Yr=this.eat(55),this.parsePropertyName(K)),($n==="get"||$n==="set")&&(gt=!0,this.resetPreviousNodeTrailingComments(fi),K.kind=$n,this.match(55)&&(Yr=!0,this.raise(X.AccessorIsGenerator,this.state.curPosition(),{kind:$n}),this.next()),this.parsePropertyName(K))}return this.parseObjPropValue(K,sr,Yr,we,!1,gt,se)}getGetterSetterExpectedParamCount(se){return se.kind==="get"?0:1}getObjectOrClassMethodParams(se){return se.params}checkGetterSetterParams(se){var O;let K=this.getGetterSetterExpectedParamCount(se),we=this.getObjectOrClassMethodParams(se);we.length!==K&&this.raise(se.kind==="get"?X.BadGetterArity:X.BadSetterArity,se),se.kind==="set"&&((O=we[we.length-1])==null?void 0:O.type)==="RestElement"&&this.raise(X.BadSetterRestParameter,se)}parseObjectMethod(se,O,K,we,gt){if(gt){let sr=this.parseMethod(se,O,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(sr),sr}if(K||O||this.match(10))return we&&this.unexpected(),se.kind="method",se.method=!0,this.parseMethod(se,O,K,!1,!1,"ObjectMethod")}parseObjectProperty(se,O,K,we){if(se.shorthand=!1,this.eat(14))return se.value=K?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(we),this.finishNode(se,"ObjectProperty");if(!se.computed&&se.key.type==="Identifier"){if(this.checkReservedWord(se.key.name,se.key.loc.start,!0,!1),K)se.value=this.parseMaybeDefault(O,Zt(se.key));else if(this.match(29)){let gt=this.state.startLoc;we!=null?we.shorthandAssignLoc===null&&(we.shorthandAssignLoc=gt):this.raise(X.InvalidCoverInitializedName,gt),se.value=this.parseMaybeDefault(O,Zt(se.key))}else se.value=Zt(se.key);return se.shorthand=!0,this.finishNode(se,"ObjectProperty")}}parseObjPropValue(se,O,K,we,gt,sr,Yr){let Lr=this.parseObjectMethod(se,K,we,gt,sr)||this.parseObjectProperty(se,O,gt,Yr);return Lr||this.unexpected(),Lr}parsePropertyName(se,O){if(this.eat(0))se.computed=!0,se.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:K,value:we}=this.state,gt;if(ke(K))gt=this.parseIdentifier(!0);else switch(K){case 135:gt=this.parseNumericLiteral(we);break;case 134:gt=this.parseStringLiteral(we);break;case 136:gt=this.parseBigIntLiteral(we);break;case 139:{let sr=this.state.startLoc;O!=null?O.privateKeyLoc===null&&(O.privateKeyLoc=sr):this.raise(X.UnexpectedPrivateField,sr),gt=this.parsePrivateName();break}default:if(K===137){gt=this.parseDecimalLiteral(we);break}this.unexpected()}se.key=gt,K!==139&&(se.computed=!1)}}initFunction(se,O){se.id=null,se.generator=!1,se.async=O}parseMethod(se,O,K,we,gt,sr,Yr=!1){this.initFunction(se,K),se.generator=O,this.scope.enter(18|(Yr?64:0)|(gt?32:0)),this.prodParam.enter(ZA(K,se.generator)),this.parseFunctionParams(se,we);let Lr=this.parseFunctionBodyAndFinish(se,sr,!0);return this.prodParam.exit(),this.scope.exit(),Lr}parseArrayLike(se,O,K,we){K&&this.expectPlugin("recordAndTuple");let gt=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let sr=this.startNode();return this.next(),sr.elements=this.parseExprList(se,!K,we,sr),this.state.inFSharpPipelineDirectBody=gt,this.finishNode(sr,K?"TupleExpression":"ArrayExpression")}parseArrowExpression(se,O,K,we){this.scope.enter(6);let gt=ZA(K,!1);!this.match(5)&&this.prodParam.hasIn&&(gt|=8),this.prodParam.enter(gt),this.initFunction(se,K);let sr=this.state.maybeInArrowParameters;return O&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(se,O,we)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(se,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=sr,this.finishNode(se,"ArrowFunctionExpression")}setArrowFunctionParameters(se,O,K){this.toAssignableList(O,K,!1),se.params=O}parseFunctionBodyAndFinish(se,O,K=!1){return this.parseFunctionBody(se,!1,K),this.finishNode(se,O)}parseFunctionBody(se,O,K=!1){let we=O&&!this.match(5);if(this.expressionScope.enter(il()),we)se.body=this.parseMaybeAssign(),this.checkParams(se,!1,O,!1);else{let gt=this.state.strict,sr=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),se.body=this.parseBlock(!0,!1,Yr=>{let Lr=!this.isSimpleParamList(se.params);Yr&&Lr&&this.raise(X.IllegalLanguageModeDirective,(se.kind==="method"||se.kind==="constructor")&&se.key?se.key.loc.end:se);let fi=!gt&&this.state.strict;this.checkParams(se,!this.state.strict&&!O&&!K&&!Lr,O,fi),this.state.strict&&se.id&&this.checkIdentifier(se.id,65,fi)}),this.prodParam.exit(),this.state.labels=sr}this.expressionScope.exit()}isSimpleParameter(se){return se.type==="Identifier"}isSimpleParamList(se){for(let O=0,K=se.length;O10||!Sg(se))){if(K&&ac(se)){this.raise(X.UnexpectedKeyword,O,{keyword:se});return}if((this.state.strict?we?Xa:Ei:li)(se,this.inModule)){this.raise(X.UnexpectedReservedWord,O,{reservedWord:se});return}else if(se==="yield"){if(this.prodParam.hasYield){this.raise(X.YieldBindingIdentifier,O);return}}else if(se==="await"){if(this.prodParam.hasAwait){this.raise(X.AwaitBindingIdentifier,O);return}if(this.scope.inStaticBlock){this.raise(X.AwaitBindingIdentifierInStaticBlock,O);return}this.expressionScope.recordAsyncArrowParametersError(O)}else if(se==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(X.ArgumentsInClass,O);return}}}recordAwaitIfAllowed(){let se=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return se&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),se}parseAwait(se){let O=this.startNodeAt(se);return this.expressionScope.recordParameterInitializerError(X.AwaitExpressionFormalParameter,O),this.eat(55)&&this.raise(X.ObsoleteAwaitStar,O),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(O.argument=this.parseMaybeUnary(null,!0)),this.finishNode(O,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:se}=this.state;return se===53||se===10||se===0||Ft(se)||se===102&&!this.state.containsEsc||se===138||se===56||this.hasPlugin("v8intrinsic")&&se===54}parseYield(){let se=this.startNode();this.expressionScope.recordParameterInitializerError(X.YieldInParameter,se),this.next();let O=!1,K=null;if(!this.hasPrecedingLineBreak())switch(O=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!O)break;default:K=this.parseMaybeAssign()}return se.delegate=O,se.argument=K,this.finishNode(se,"YieldExpression")}parseImportCall(se){if(this.next(),se.source=this.parseMaybeAssignAllowIn(),se.options=null,this.eat(12)&&!this.match(11)&&(se.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(X.ImportCallArity,se)}return this.expect(11),this.finishNode(se,"ImportExpression")}checkPipelineAtInfixOperator(se,O){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&se.type==="SequenceExpression"&&this.raise(X.PipelineHeadSequenceExpression,O)}parseSmartPipelineBodyInStyle(se,O){if(this.isSimpleReference(se)){let K=this.startNodeAt(O);return K.callee=se,this.finishNode(K,"PipelineBareFunction")}else{let K=this.startNodeAt(O);return this.checkSmartPipeTopicBodyEarlyErrors(O),K.expression=se,this.finishNode(K,"PipelineTopicExpression")}}isSimpleReference(se){switch(se.type){case"MemberExpression":return!se.computed&&this.isSimpleReference(se.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(se){if(this.match(19))throw this.raise(X.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(X.PipelineTopicUnused,se)}withTopicBindingContext(se){let O=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=O}}withSmartMixTopicForbiddingContext(se){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let O=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return se()}finally{this.state.topicContext=O}}else return se()}withSoloAwaitPermittingContext(se){let O=this.state.soloAwait;this.state.soloAwait=!0;try{return se()}finally{this.state.soloAwait=O}}allowInAnd(se){let O=this.prodParam.currentFlags();if(8&~O){this.prodParam.enter(O|8);try{return se()}finally{this.prodParam.exit()}}return se()}disallowInAnd(se){let O=this.prodParam.currentFlags();if(8&O){this.prodParam.enter(O&-9);try{return se()}finally{this.prodParam.exit()}}return se()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(se){let O=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let K=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let we=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),O,se);return this.state.inFSharpPipelineDirectBody=K,we}parseModuleExpression(){this.expectPlugin("moduleBlocks");let se=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let O=this.startNodeAt(this.state.endLoc);this.next();let K=this.initializeScopes(!0);this.enterInitialScopes();try{se.body=this.parseProgram(O,8,"module")}finally{K()}return this.finishNode(se,"ModuleExpression")}parsePropertyNamePrefixOperator(se){}},q0={kind:1},XE={kind:2},TC=/[\uD800-\uDFFF]/u,t_=/in(?:stanceof)?/y;function cp(se,O,K){for(let we=0;we0)for(let[gt,sr]of Array.from(this.scope.undefinedExports))this.raise(X.ModuleExportUndefined,sr,{localName:gt});this.addExtra(se,"topLevelAwait",this.state.hasTopLevelAwait)}let we;return O===140?we=this.finishNode(se,"Program"):we=this.finishNodeAt(se,"Program",a(this.state.startLoc,-1)),we}stmtToDirective(se){let O=se;O.type="Directive",O.value=O.expression,delete O.expression;let K=O.value,we=K.value,gt=this.input.slice(this.offsetToSourcePos(K.start),this.offsetToSourcePos(K.end)),sr=K.value=gt.slice(1,-1);return this.addExtra(K,"raw",gt),this.addExtra(K,"rawValue",sr),this.addExtra(K,"expressionValue",we),K.type="DirectiveLiteral",O}parseInterpreterDirective(){if(!this.match(28))return null;let se=this.startNode();return se.value=this.state.value,this.next(),this.finishNode(se,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(se,O){if(gc(se)){if(t_.lastIndex=O,t_.test(this.input)){let K=this.codePointAtPos(t_.lastIndex);if(!Cg(K)&&K!==92)return!1}return!0}else return se===92}chStartsBindingPattern(se){return se===91||se===123}hasFollowingBindingAtom(){let se=this.nextTokenStart(),O=this.codePointAtPos(se);return this.chStartsBindingPattern(O)||this.chStartsBindingIdentifier(O,se)}hasInLineFollowingBindingIdentifierOrBrace(){let se=this.nextTokenInLineStart(),O=this.codePointAtPos(se);return O===123||this.chStartsBindingIdentifier(O,se)}startsUsingForOf(){let{type:se,containsEsc:O}=this.lookahead();if(se===102&&!O)return!1;if(qr(se)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let se=this.nextTokenInLineStart();if(this.isUnparsedContextual(se,"using")){se=this.nextTokenInLineStartSince(se+5);let O=this.codePointAtPos(se);if(this.chStartsBindingIdentifier(O,se))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(se=!1){let O=0;return this.options.annexB&&!this.state.strict&&(O|=4,se&&(O|=8)),this.parseStatementLike(O)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(se){let O=null;return this.match(26)&&(O=this.parseDecorators(!0)),this.parseStatementContent(se,O)}parseStatementContent(se,O){let K=this.state.type,we=this.startNode(),gt=!!(se&2),sr=!!(se&4),Yr=se&1;switch(K){case 60:return this.parseBreakContinueStatement(we,!0);case 63:return this.parseBreakContinueStatement(we,!1);case 64:return this.parseDebuggerStatement(we);case 90:return this.parseDoWhileStatement(we);case 91:return this.parseForStatement(we);case 68:if(this.lookaheadCharCode()===46)break;return sr||this.raise(this.state.strict?X.StrictFunction:this.options.annexB?X.SloppyFunctionAnnexB:X.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(we,!1,!gt&&sr);case 80:return gt||this.unexpected(),this.parseClass(this.maybeTakeDecorators(O,we),!0);case 69:return this.parseIfStatement(we);case 70:return this.parseReturnStatement(we);case 71:return this.parseSwitchStatement(we);case 72:return this.parseThrowStatement(we);case 73:return this.parseTryStatement(we);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?gt||this.raise(X.UnexpectedLexicalDeclaration,we):this.raise(X.AwaitUsingNotInAsyncContext,we),this.next(),this.parseVarStatement(we,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(X.UnexpectedUsingDeclaration,this.state.startLoc):gt||this.raise(X.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(we,"using");case 100:{if(this.state.containsEsc)break;let $n=this.nextTokenStart(),ra=this.codePointAtPos($n);if(ra!==91&&(!gt&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(ra,$n)&&ra!==123))break}case 75:gt||this.raise(X.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let $n=this.state.value;return this.parseVarStatement(we,$n)}case 92:return this.parseWhileStatement(we);case 76:return this.parseWithStatement(we);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(we);case 83:{let $n=this.lookaheadCharCode();if($n===40||$n===46)break}case 82:{!(this.optionFlags&8)&&!Yr&&this.raise(X.UnexpectedImportExport,this.state.startLoc),this.next();let $n;return K===83?($n=this.parseImport(we),$n.type==="ImportDeclaration"&&(!$n.importKind||$n.importKind==="value")&&(this.sawUnambiguousESM=!0)):($n=this.parseExport(we,O),($n.type==="ExportNamedDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportAllDeclaration"&&(!$n.exportKind||$n.exportKind==="value")||$n.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed($n),$n}default:if(this.isAsyncFunction())return gt||this.raise(X.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(we,!0,!gt&&sr)}let Lr=this.state.value,fi=this.parseExpression();return qr(K)&&fi.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(we,Lr,fi,se):this.parseExpressionStatement(we,fi,O)}assertModuleNodeAllowed(se){!(this.optionFlags&8)&&!this.inModule&&this.raise(X.ImportOutsideModule,se)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(se,O,K){if(se){var we;(we=O.decorators)!=null&&we.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(X.DecoratorsBeforeAfterExport,O.decorators[0]),O.decorators.unshift(...se)):O.decorators=se,this.resetStartLocationFromNode(O,se[0]),K&&this.resetStartLocationFromNode(K,O)}return O}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(se){let O=[];do O.push(this.parseDecorator());while(this.match(26));if(this.match(82))se||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(X.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(X.UnexpectedLeadingDecorator,this.state.startLoc);return O}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let se=this.startNode();if(this.next(),this.hasPlugin("decorators")){let O=this.state.startLoc,K;if(this.match(10)){let we=this.state.startLoc;this.next(),K=this.parseExpression(),this.expect(11),K=this.wrapParenthesis(we,K);let gt=this.state.startLoc;se.expression=this.parseMaybeDecoratorArguments(K,we),this.getPluginOption("decorators","allowCallParenthesized")===!1&&se.expression!==K&&this.raise(X.DecoratorArgumentsOutsideParentheses,gt)}else{for(K=this.parseIdentifier(!1);this.eat(16);){let we=this.startNodeAt(O);we.object=K,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),we.property=this.parsePrivateName()):we.property=this.parseIdentifier(!0),we.computed=!1,K=this.finishNode(we,"MemberExpression")}se.expression=this.parseMaybeDecoratorArguments(K,O)}}else se.expression=this.parseExprSubscripts();return this.finishNode(se,"Decorator")}parseMaybeDecoratorArguments(se,O){if(this.eat(10)){let K=this.startNodeAt(O);return K.callee=se,K.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(K.arguments),this.finishNode(K,"CallExpression")}return se}parseBreakContinueStatement(se,O){return this.next(),this.isLineTerminator()?se.label=null:(se.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(se,O),this.finishNode(se,O?"BreakStatement":"ContinueStatement")}verifyBreakContinue(se,O){let K;for(K=0;Kthis.parseStatement()),this.state.labels.pop(),this.expect(92),se.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(se,"DoWhileStatement")}parseForStatement(se){this.next(),this.state.labels.push(q0);let O=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(O=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return O!==null&&this.unexpected(O),this.parseFor(se,null);let K=this.isContextual(100);{let Lr=this.isContextual(96)&&this.startsAwaitUsing(),fi=Lr||this.isContextual(107)&&this.startsUsingForOf(),$n=K&&this.hasFollowingBindingAtom()||fi;if(this.match(74)||this.match(75)||$n){let ra=this.startNode(),kc;Lr?(kc="await using",this.recordAwaitIfAllowed()||this.raise(X.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):kc=this.state.value,this.next(),this.parseVar(ra,!0,kc);let Nl=this.finishNode(ra,"VariableDeclaration"),ca=this.match(58);return ca&&fi&&this.raise(X.ForInUsing,Nl),(ca||this.isContextual(102))&&Nl.declarations.length===1?this.parseForIn(se,Nl,O):(O!==null&&this.unexpected(O),this.parseFor(se,Nl))}}let we=this.isContextual(95),gt=new yg,sr=this.parseExpression(!0,gt),Yr=this.isContextual(102);if(Yr&&(K&&this.raise(X.ForOfLet,sr),O===null&&we&&sr.type==="Identifier"&&this.raise(X.ForOfAsync,sr)),Yr||this.match(58)){this.checkDestructuringPrivate(gt),this.toAssignable(sr,!0);let Lr=Yr?"ForOfStatement":"ForInStatement";return this.checkLVal(sr,{type:Lr}),this.parseForIn(se,sr,O)}else this.checkExpressionErrors(gt,!0);return O!==null&&this.unexpected(O),this.parseFor(se,sr)}parseFunctionStatement(se,O,K){return this.next(),this.parseFunction(se,1|(K?2:0)|(O?8:0))}parseIfStatement(se){return this.next(),se.test=this.parseHeaderExpression(),se.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),se.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(se,"IfStatement")}parseReturnStatement(se){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(X.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?se.argument=null:(se.argument=this.parseExpression(),this.semicolon()),this.finishNode(se,"ReturnStatement")}parseSwitchStatement(se){this.next(),se.discriminant=this.parseHeaderExpression();let O=se.cases=[];this.expect(5),this.state.labels.push(XE),this.scope.enter(0);let K;for(let we;!this.match(8);)if(this.match(61)||this.match(65)){let gt=this.match(61);K&&this.finishNode(K,"SwitchCase"),O.push(K=this.startNode()),K.consequent=[],this.next(),gt?K.test=this.parseExpression():(we&&this.raise(X.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),we=!0,K.test=null),this.expect(14)}else K?K.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),K&&this.finishNode(K,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(se,"SwitchStatement")}parseThrowStatement(se){return this.next(),this.hasPrecedingLineBreak()&&this.raise(X.NewlineAfterThrow,this.state.lastTokEndLoc),se.argument=this.parseExpression(),this.semicolon(),this.finishNode(se,"ThrowStatement")}parseCatchClauseParam(){let se=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&se.type==="Identifier"?8:0),this.checkLVal(se,{type:"CatchClause"},9),se}parseTryStatement(se){if(this.next(),se.block=this.parseBlock(),se.handler=null,this.match(62)){let O=this.startNode();this.next(),this.match(10)?(this.expect(10),O.param=this.parseCatchClauseParam(),this.expect(11)):(O.param=null,this.scope.enter(0)),O.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),se.handler=this.finishNode(O,"CatchClause")}return se.finalizer=this.eat(67)?this.parseBlock():null,!se.handler&&!se.finalizer&&this.raise(X.NoCatchOrFinally,se),this.finishNode(se,"TryStatement")}parseVarStatement(se,O,K=!1){return this.next(),this.parseVar(se,!1,O,K),this.semicolon(),this.finishNode(se,"VariableDeclaration")}parseWhileStatement(se){return this.next(),se.test=this.parseHeaderExpression(),this.state.labels.push(q0),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(se,"WhileStatement")}parseWithStatement(se){return this.state.strict&&this.raise(X.StrictWith,this.state.startLoc),this.next(),se.object=this.parseHeaderExpression(),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(se,"WithStatement")}parseEmptyStatement(se){return this.next(),this.finishNode(se,"EmptyStatement")}parseLabeledStatement(se,O,K,we){for(let sr of this.state.labels)sr.name===O&&this.raise(X.LabelRedeclaration,K,{labelName:O});let gt=Vr(this.state.type)?1:this.match(71)?2:null;for(let sr=this.state.labels.length-1;sr>=0;sr--){let Yr=this.state.labels[sr];if(Yr.statementStart===se.start)Yr.statementStart=this.sourceToOffsetPos(this.state.start),Yr.kind=gt;else break}return this.state.labels.push({name:O,kind:gt,statementStart:this.sourceToOffsetPos(this.state.start)}),se.body=we&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),se.label=K,this.finishNode(se,"LabeledStatement")}parseExpressionStatement(se,O,K){return se.expression=O,this.semicolon(),this.finishNode(se,"ExpressionStatement")}parseBlock(se=!1,O=!0,K){let we=this.startNode();return se&&this.state.strictErrors.clear(),this.expect(5),O&&this.scope.enter(0),this.parseBlockBody(we,se,!1,8,K),O&&this.scope.exit(),this.finishNode(we,"BlockStatement")}isValidDirective(se){return se.type==="ExpressionStatement"&&se.expression.type==="StringLiteral"&&!se.expression.extra.parenthesized}parseBlockBody(se,O,K,we,gt){let sr=se.body=[],Yr=se.directives=[];this.parseBlockOrModuleBlockBody(sr,O?Yr:void 0,K,we,gt)}parseBlockOrModuleBlockBody(se,O,K,we,gt){let sr=this.state.strict,Yr=!1,Lr=!1;for(;!this.match(we);){let fi=K?this.parseModuleItem():this.parseStatementListItem();if(O&&!Lr){if(this.isValidDirective(fi)){let $n=this.stmtToDirective(fi);O.push($n),!Yr&&$n.value.value==="use strict"&&(Yr=!0,this.setStrict(!0));continue}Lr=!0,this.state.strictErrors.clear()}se.push(fi)}gt?.call(this,Yr),sr||this.setStrict(!1),this.next()}parseFor(se,O){return se.init=O,this.semicolon(!1),se.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),se.update=this.match(11)?null:this.parseExpression(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,"ForStatement")}parseForIn(se,O,K){let we=this.match(58);return this.next(),we?K!==null&&this.unexpected(K):se.await=K!==null,O.type==="VariableDeclaration"&&O.declarations[0].init!=null&&(!we||!this.options.annexB||this.state.strict||O.kind!=="var"||O.declarations[0].id.type!=="Identifier")&&this.raise(X.ForInOfLoopInitializer,O,{type:we?"ForInStatement":"ForOfStatement"}),O.type==="AssignmentPattern"&&this.raise(X.InvalidLhs,O,{ancestor:{type:"ForStatement"}}),se.left=O,se.right=we?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),se.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(se,we?"ForInStatement":"ForOfStatement")}parseVar(se,O,K,we=!1){let gt=se.declarations=[];for(se.kind=K;;){let sr=this.startNode();if(this.parseVarId(sr,K),sr.init=this.eat(29)?O?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,sr.init===null&&!we&&(sr.id.type!=="Identifier"&&!(O&&(this.match(58)||this.isContextual(102)))?this.raise(X.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(K==="const"||K==="using"||K==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(X.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:K})),gt.push(this.finishNode(sr,"VariableDeclarator")),!this.eat(12))break}return se}parseVarId(se,O){let K=this.parseBindingAtom();(O==="using"||O==="await using")&&(K.type==="ArrayPattern"||K.type==="ObjectPattern")&&this.raise(X.UsingDeclarationHasBindingPattern,K.loc.start),this.checkLVal(K,{type:"VariableDeclarator"},O==="var"?5:8201),se.id=K}parseAsyncFunctionExpression(se){return this.parseFunction(se,8)}parseFunction(se,O=0){let K=O&2,we=!!(O&1),gt=we&&!(O&4),sr=!!(O&8);this.initFunction(se,sr),this.match(55)&&(K&&this.raise(X.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),se.generator=!0),we&&(se.id=this.parseFunctionId(gt));let Yr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(ZA(sr,se.generator)),we||(se.id=this.parseFunctionId()),this.parseFunctionParams(se,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(se,we?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),we&&!K&&this.registerFunctionStatementId(se),this.state.maybeInArrowParameters=Yr,se}parseFunctionId(se){return se||qr(this.state.type)?this.parseIdentifier():null}parseFunctionParams(se,O){this.expect(10),this.expressionScope.enter(rc()),se.params=this.parseBindingList(11,41,2|(O?4:0)),this.expressionScope.exit()}registerFunctionStatementId(se){se.id&&this.scope.declareName(se.id.name,!this.options.annexB||this.state.strict||se.generator||se.async?this.scope.treatFunctionsAsVar?5:8201:17,se.id.loc.start)}parseClass(se,O,K){this.next();let we=this.state.strict;return this.state.strict=!0,this.parseClassId(se,O,K),this.parseClassSuper(se),se.body=this.parseClassBody(!!se.superClass,we),this.finishNode(se,O?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(se){return se.type==="Identifier"&&se.name==="constructor"||se.type==="StringLiteral"&&se.value==="constructor"}isNonstaticConstructor(se){return!se.computed&&!se.static&&this.nameIsConstructor(se.key)}parseClassBody(se,O){this.classScope.enter();let K={hadConstructor:!1,hadSuperClass:se},we=[],gt=this.startNode();if(gt.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(we.length>0)throw this.raise(X.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){we.push(this.parseDecorator());continue}let sr=this.startNode();we.length&&(sr.decorators=we,this.resetStartLocationFromNode(sr,we[0]),we=[]),this.parseClassMember(gt,sr,K),sr.kind==="constructor"&&sr.decorators&&sr.decorators.length>0&&this.raise(X.DecoratorConstructor,sr)}}),this.state.strict=O,this.next(),we.length)throw this.raise(X.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(gt,"ClassBody")}parseClassMemberFromModifier(se,O){let K=this.parseIdentifier(!0);if(this.isClassMethod()){let we=O;return we.kind="method",we.computed=!1,we.key=K,we.static=!1,this.pushClassMethod(se,we,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let we=O;return we.computed=!1,we.key=K,we.static=!1,se.body.push(this.parseClassProperty(we)),!0}return this.resetPreviousNodeTrailingComments(K),!1}parseClassMember(se,O,K){let we=this.isContextual(106);if(we){if(this.parseClassMemberFromModifier(se,O))return;if(this.eat(5)){this.parseClassStaticBlock(se,O);return}}this.parseClassMemberWithIsStatic(se,O,K,we)}parseClassMemberWithIsStatic(se,O,K,we){let gt=O,sr=O,Yr=O,Lr=O,fi=O,$n=gt,ra=gt;if(O.static=we,this.parsePropertyNamePrefixOperator(O),this.eat(55)){$n.kind="method";let SA=this.match(139);if(this.parseClassElementName($n),SA){this.pushClassPrivateMethod(se,sr,!0,!1);return}this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsGenerator,gt.key),this.pushClassMethod(se,gt,!0,!1,!1,!1);return}let kc=!this.state.containsEsc&&qr(this.state.type),Nl=this.parseClassElementName(O),ca=kc?Nl.name:null,Bl=this.isPrivateName(Nl),$g=this.state.startLoc;if(this.parsePostMemberNameModifiers(ra),this.isClassMethod()){if($n.kind="method",Bl){this.pushClassPrivateMethod(se,sr,!1,!1);return}let SA=this.isNonstaticConstructor(gt),lI=!1;SA&&(gt.kind="constructor",K.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(X.DuplicateConstructor,Nl),SA&&this.hasPlugin("typescript")&&O.override&&this.raise(X.OverrideOnConstructor,Nl),K.hadConstructor=!0,lI=K.hadSuperClass),this.pushClassMethod(se,gt,!1,!1,SA,lI)}else if(this.isClassProperty())Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr);else if(ca==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Nl);let SA=this.eat(55);ra.optional&&this.unexpected($g),$n.kind="method";let lI=this.match(139);this.parseClassElementName($n),this.parsePostMemberNameModifiers(ra),lI?this.pushClassPrivateMethod(se,sr,SA,!0):(this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsAsync,gt.key),this.pushClassMethod(se,gt,SA,!0,!1,!1))}else if((ca==="get"||ca==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Nl),$n.kind=ca;let SA=this.match(139);this.parseClassElementName(gt),SA?this.pushClassPrivateMethod(se,sr,!1,!1):(this.isNonstaticConstructor(gt)&&this.raise(X.ConstructorIsAccessor,gt.key),this.pushClassMethod(se,gt,!1,!1,!1,!1)),this.checkGetterSetterParams(gt)}else if(ca==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Nl);let SA=this.match(139);this.parseClassElementName(Yr),this.pushClassAccessorProperty(se,fi,SA)}else this.isLineTerminator()?Bl?this.pushClassPrivateProperty(se,Lr):this.pushClassProperty(se,Yr):this.unexpected()}parseClassElementName(se){let{type:O,value:K}=this.state;if((O===132||O===134)&&se.static&&K==="prototype"&&this.raise(X.StaticPrototype,this.state.startLoc),O===139){K==="constructor"&&this.raise(X.ConstructorClassPrivateField,this.state.startLoc);let we=this.parsePrivateName();return se.key=we,we}return this.parsePropertyName(se),se.key}parseClassStaticBlock(se,O){var K;this.scope.enter(208);let we=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let gt=O.body=[];this.parseBlockOrModuleBlockBody(gt,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=we,se.body.push(this.finishNode(O,"StaticBlock")),(K=O.decorators)!=null&&K.length&&this.raise(X.DecoratorStaticBlock,O)}pushClassProperty(se,O){!O.computed&&this.nameIsConstructor(O.key)&&this.raise(X.ConstructorClassField,O.key),se.body.push(this.parseClassProperty(O))}pushClassPrivateProperty(se,O){let K=this.parseClassPrivateProperty(O);se.body.push(K),this.classScope.declarePrivateName(this.getPrivateNameSV(K.key),0,K.key.loc.start)}pushClassAccessorProperty(se,O,K){!K&&!O.computed&&this.nameIsConstructor(O.key)&&this.raise(X.ConstructorClassField,O.key);let we=this.parseClassAccessorProperty(O);se.body.push(we),K&&this.classScope.declarePrivateName(this.getPrivateNameSV(we.key),0,we.key.loc.start)}pushClassMethod(se,O,K,we,gt,sr){se.body.push(this.parseMethod(O,K,we,gt,sr,"ClassMethod",!0))}pushClassPrivateMethod(se,O,K,we){let gt=this.parseMethod(O,K,we,!1,!1,"ClassPrivateMethod",!0);se.body.push(gt);let sr=gt.kind==="get"?gt.static?6:2:gt.kind==="set"?gt.static?5:1:0;this.declareClassPrivateMethodInScope(gt,sr)}declareClassPrivateMethodInScope(se,O){this.classScope.declarePrivateName(this.getPrivateNameSV(se.key),O,se.key.loc.start)}parsePostMemberNameModifiers(se){}parseClassPrivateProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassPrivateProperty")}parseClassProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassProperty")}parseClassAccessorProperty(se){return this.parseInitializer(se),this.semicolon(),this.finishNode(se,"ClassAccessorProperty")}parseInitializer(se){this.scope.enter(80),this.expressionScope.enter(il()),this.prodParam.enter(0),se.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(se,O,K,we=8331){if(qr(this.state.type))se.id=this.parseIdentifier(),O&&this.declareNameFromIdentifier(se.id,we);else if(K||!O)se.id=null;else throw this.raise(X.MissingClassName,this.state.startLoc)}parseClassSuper(se){se.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(se,O){let K=this.parseMaybeImportPhase(se,!0),we=this.maybeParseExportDefaultSpecifier(se,K),gt=!we||this.eat(12),sr=gt&&this.eatExportStar(se),Yr=sr&&this.maybeParseExportNamespaceSpecifier(se),Lr=gt&&(!Yr||this.eat(12)),fi=we||sr;if(sr&&!Yr){if(we&&this.unexpected(),O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.parseExportFrom(se,!0),this.finishNode(se,"ExportAllDeclaration")}let $n=this.maybeParseExportNamedSpecifiers(se);we&>&&!sr&&!$n&&this.unexpected(null,5),Yr&&Lr&&this.unexpected(null,98);let ra;if(fi||$n){if(ra=!1,O)throw this.raise(X.UnsupportedDecoratorExport,se);this.parseExportFrom(se,fi)}else ra=this.maybeParseExportDeclaration(se);if(fi||$n||ra){var kc;let Nl=se;if(this.checkExport(Nl,!0,!1,!!Nl.source),((kc=Nl.declaration)==null?void 0:kc.type)==="ClassDeclaration")this.maybeTakeDecorators(O,Nl.declaration,Nl);else if(O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.finishNode(Nl,"ExportNamedDeclaration")}if(this.eat(65)){let Nl=se,ca=this.parseExportDefaultExpression();if(Nl.declaration=ca,ca.type==="ClassDeclaration")this.maybeTakeDecorators(O,ca,Nl);else if(O)throw this.raise(X.UnsupportedDecoratorExport,se);return this.checkExport(Nl,!0,!0),this.finishNode(Nl,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(se){return this.eat(55)}maybeParseExportDefaultSpecifier(se,O){if(O||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",O?.loc.start);let K=O||this.parseIdentifier(!0),we=this.startNodeAtNode(K);return we.exported=K,se.specifiers=[this.finishNode(we,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(se){if(this.isContextual(93)){var O,K;(K=(O=se).specifiers)!=null||(O.specifiers=[]);let we=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),we.exported=this.parseModuleExportName(),se.specifiers.push(this.finishNode(we,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(se){if(this.match(5)){let O=se;O.specifiers||(O.specifiers=[]);let K=O.exportKind==="type";return O.specifiers.push(...this.parseExportSpecifiers(K)),O.source=null,O.declaration=null,this.hasPlugin("importAssertions")&&(O.assertions=[]),!0}return!1}maybeParseExportDeclaration(se){return this.shouldParseExportDeclaration()?(se.specifiers=[],se.source=null,this.hasPlugin("importAssertions")&&(se.assertions=[]),se.declaration=this.parseExportDeclaration(se),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let se=this.nextTokenInLineStart();return this.isUnparsedContextual(se,"function")}parseExportDefaultExpression(){let se=this.startNode();if(this.match(68))return this.next(),this.parseFunction(se,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(se,13);if(this.match(80))return this.parseClass(se,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(X.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(X.UnsupportedDefaultExport,this.state.startLoc);let O=this.parseMaybeAssignAllowIn();return this.semicolon(),O}parseExportDeclaration(se){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:se}=this.state;if(qr(se)){if(se===95&&!this.state.containsEsc||se===100)return!1;if((se===130||se===129)&&!this.state.containsEsc){let{type:we}=this.lookahead();if(qr(we)&&we!==98||we===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let O=this.nextTokenStart(),K=this.isUnparsedContextual(O,"from");if(this.input.charCodeAt(O)===44||qr(this.state.type)&&K)return!0;if(this.match(65)&&K){let we=this.input.charCodeAt(this.nextTokenStartSince(O+4));return we===34||we===39}return!1}parseExportFrom(se,O){this.eatContextual(98)?(se.source=this.parseImportSource(),this.checkExport(se),this.maybeParseImportAttributes(se),this.checkJSONModuleImport(se)):O&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:se}=this.state;return se===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(X.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(X.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(X.UsingDeclarationExport,this.state.startLoc),!0):se===74||se===75||se===68||se===80||this.isLet()||this.isAsyncFunction()}checkExport(se,O,K,we){if(O){var gt;if(K){if(this.checkDuplicateExports(se,"default"),this.hasPlugin("exportDefaultFrom")){var sr;let Yr=se.declaration;Yr.type==="Identifier"&&Yr.name==="from"&&Yr.end-Yr.start===4&&!((sr=Yr.extra)!=null&&sr.parenthesized)&&this.raise(X.ExportDefaultFromAsIdentifier,Yr)}}else if((gt=se.specifiers)!=null&>.length)for(let Yr of se.specifiers){let{exported:Lr}=Yr,fi=Lr.type==="Identifier"?Lr.name:Lr.value;if(this.checkDuplicateExports(Yr,fi),!we&&Yr.local){let{local:$n}=Yr;$n.type!=="Identifier"?this.raise(X.ExportBindingIsString,Yr,{localName:$n.value,exportName:fi}):(this.checkReservedWord($n.name,$n.loc.start,!0,!1),this.scope.checkLocalExport($n))}}else if(se.declaration){let Yr=se.declaration;if(Yr.type==="FunctionDeclaration"||Yr.type==="ClassDeclaration"){let{id:Lr}=Yr;if(!Lr)throw new Error("Assertion failure");this.checkDuplicateExports(se,Lr.name)}else if(Yr.type==="VariableDeclaration")for(let Lr of Yr.declarations)this.checkDeclaration(Lr.id)}}}checkDeclaration(se){if(se.type==="Identifier")this.checkDuplicateExports(se,se.name);else if(se.type==="ObjectPattern")for(let O of se.properties)this.checkDeclaration(O);else if(se.type==="ArrayPattern")for(let O of se.elements)O&&this.checkDeclaration(O);else se.type==="ObjectProperty"?this.checkDeclaration(se.value):se.type==="RestElement"?this.checkDeclaration(se.argument):se.type==="AssignmentPattern"&&this.checkDeclaration(se.left)}checkDuplicateExports(se,O){this.exportedIdentifiers.has(O)&&(O==="default"?this.raise(X.DuplicateDefaultExport,se):this.raise(X.DuplicateExport,se,{exportName:O})),this.exportedIdentifiers.add(O)}parseExportSpecifiers(se){let O=[],K=!0;for(this.expect(5);!this.eat(8);){if(K)K=!1;else if(this.expect(12),this.eat(8))break;let we=this.isContextual(130),gt=this.match(134),sr=this.startNode();sr.local=this.parseModuleExportName(),O.push(this.parseExportSpecifier(sr,gt,se,we))}return O}parseExportSpecifier(se,O,K,we){return this.eatContextual(93)?se.exported=this.parseModuleExportName():O?se.exported=yn(se.local):se.exported||(se.exported=Zt(se.local)),this.finishNode(se,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let se=this.parseStringLiteral(this.state.value),O=TC.exec(se.value);return O&&this.raise(X.ModuleExportNameHasLoneSurrogate,se,{surrogateCharCode:O[0].charCodeAt(0)}),se}return this.parseIdentifier(!0)}isJSONModuleImport(se){return se.assertions!=null?se.assertions.some(({key:O,value:K})=>K.value==="json"&&(O.type==="Identifier"?O.name==="type":O.value==="type")):!1}checkImportReflection(se){let{specifiers:O}=se,K=O.length===1?O[0].type:null;if(se.phase==="source")K!=="ImportDefaultSpecifier"&&this.raise(X.SourcePhaseImportRequiresDefault,O[0].loc.start);else if(se.phase==="defer")K!=="ImportNamespaceSpecifier"&&this.raise(X.DeferImportRequiresNamespace,O[0].loc.start);else if(se.module){var we;K!=="ImportDefaultSpecifier"&&this.raise(X.ImportReflectionNotBinding,O[0].loc.start),((we=se.assertions)==null?void 0:we.length)>0&&this.raise(X.ImportReflectionHasAssertion,O[0].loc.start)}}checkJSONModuleImport(se){if(this.isJSONModuleImport(se)&&se.type!=="ExportAllDeclaration"){let{specifiers:O}=se;if(O!=null){let K=O.find(we=>{let gt;if(we.type==="ExportSpecifier"?gt=we.local:we.type==="ImportSpecifier"&&(gt=we.imported),gt!==void 0)return gt.type==="Identifier"?gt.name!=="default":gt.value!=="default"});K!==void 0&&this.raise(X.ImportJSONBindingNotDefault,K.loc.start)}}}isPotentialImportPhase(se){return se?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(se,O,K,we){O||(K==="module"?(this.expectPlugin("importReflection",we),se.module=!0):this.hasPlugin("importReflection")&&(se.module=!1),K==="source"?(this.expectPlugin("sourcePhaseImports",we),se.phase="source"):K==="defer"?(this.expectPlugin("deferredImportEvaluation",we),se.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(se.phase=null))}parseMaybeImportPhase(se,O){if(!this.isPotentialImportPhase(O))return this.applyImportPhase(se,O,null),null;let K=this.parseIdentifier(!0),{type:we}=this.state;return(ke(we)?we!==98||this.lookaheadCharCode()===102:we!==12)?(this.resetPreviousIdentifierLeadingComments(K),this.applyImportPhase(se,O,K.name,K.loc.start),null):(this.applyImportPhase(se,O,null),K)}isPrecedingIdImportPhase(se){let{type:O}=this.state;return qr(O)?O!==98||this.lookaheadCharCode()===102:O!==12}parseImport(se){return this.match(134)?this.parseImportSourceAndAttributes(se):this.parseImportSpecifiersAndAfter(se,this.parseMaybeImportPhase(se,!1))}parseImportSpecifiersAndAfter(se,O){se.specifiers=[];let K=!this.maybeParseDefaultImportSpecifier(se,O)||this.eat(12),we=K&&this.maybeParseStarImportSpecifier(se);return K&&!we&&this.parseNamedImportSpecifiers(se),this.expectContextual(98),this.parseImportSourceAndAttributes(se)}parseImportSourceAndAttributes(se){var O;return(O=se.specifiers)!=null||(se.specifiers=[]),se.source=this.parseImportSource(),this.maybeParseImportAttributes(se),this.checkImportReflection(se),this.checkJSONModuleImport(se),this.semicolon(),this.finishNode(se,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(se,O,K){O.local=this.parseIdentifier(),se.specifiers.push(this.finishImportSpecifier(O,K))}finishImportSpecifier(se,O,K=8201){return this.checkLVal(se.local,{type:O},K),this.finishNode(se,O)}parseImportAttributes(){this.expect(5);let se=[],O=new Set;do{if(this.match(8))break;let K=this.startNode(),we=this.state.value;if(O.has(we)&&this.raise(X.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:we}),O.add(we),this.match(134)?K.key=this.parseStringLiteral(we):K.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(X.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return this.expect(8),se}parseModuleAttributes(){let se=[],O=new Set;do{let K=this.startNode();if(K.key=this.parseIdentifier(!0),K.key.name!=="type"&&this.raise(X.ModuleAttributeDifferentFromType,K.key),O.has(K.key.name)&&this.raise(X.ModuleAttributesWithDuplicateKeys,K.key,{key:K.key.name}),O.add(K.key.name),this.expect(14),!this.match(134))throw this.raise(X.ModuleAttributeInvalidValue,this.state.startLoc);K.value=this.parseStringLiteral(this.state.value),se.push(this.finishNode(K,"ImportAttribute"))}while(this.eat(12));return se}maybeParseImportAttributes(se){let O;var K=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?O=this.parseModuleAttributes():O=this.parseImportAttributes(),K=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(X.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(se,"deprecatedAssertSyntax",!0),this.next(),O=this.parseImportAttributes()):O=[];!K&&this.hasPlugin("importAssertions")?se.assertions=O:se.attributes=O}maybeParseDefaultImportSpecifier(se,O){if(O){let K=this.startNodeAtNode(O);return K.local=O,se.specifiers.push(this.finishImportSpecifier(K,"ImportDefaultSpecifier")),!0}else if(ke(this.state.type))return this.parseImportSpecifierLocal(se,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(se){if(this.match(55)){let O=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(se,O,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(se){let O=!0;for(this.expect(5);!this.eat(8);){if(O)O=!1;else{if(this.eat(14))throw this.raise(X.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let K=this.startNode(),we=this.match(134),gt=this.isContextual(130);K.imported=this.parseModuleExportName();let sr=this.parseImportSpecifier(K,we,se.importKind==="type"||se.importKind==="typeof",gt,void 0);se.specifiers.push(sr)}}parseImportSpecifier(se,O,K,we,gt){if(this.eatContextual(93))se.local=this.parseIdentifier();else{let{imported:sr}=se;if(O)throw this.raise(X.ImportBindingIsString,se,{importName:sr.value});this.checkReservedWord(sr.name,se.loc.start,!0,!0),se.local||(se.local=Zt(sr))}return this.finishImportSpecifier(se,"ImportSpecifier",gt)}isThisParam(se){return se.type==="Identifier"&&se.name==="this"}},fb=class extends Mm{constructor(se,O,K){se=ne(se),super(se,O),this.options=se,this.initializeScopes(),this.plugins=K,this.filename=se.sourceFilename,this.startIndex=se.startIndex;let we=0;se.allowAwaitOutsideFunction&&(we|=1),se.allowReturnOutsideFunction&&(we|=2),se.allowImportExportEverywhere&&(we|=8),se.allowSuperOutsideMethod&&(we|=16),se.allowUndeclaredExports&&(we|=32),se.allowNewTargetOutsideFunction&&(we|=4),se.ranges&&(we|=64),se.tokens&&(we|=128),se.createImportExpressions&&(we|=256),se.createParenthesizedExpressions&&(we|=512),se.errorRecovery&&(we|=1024),se.attachComment&&(we|=2048),se.annexB&&(we|=4096),this.optionFlags=we}getScopeHandler(){return Xu}parse(){this.enterInitialScopes();let se=this.startNode(),O=this.startNode();return this.nextToken(),se.errors=null,this.parseTopLevel(se,O),se.errors=this.state.errors,se.comments.length=this.state.commentsLen,se}};function pe(se,O){var K;if(((K=O)==null?void 0:K.sourceType)==="unambiguous"){O=Object.assign({},O);try{O.sourceType="module";let we=_I(O,se),gt=we.parse();if(we.sawUnambiguousESM)return gt;if(we.ambiguousScriptDifferentAst)try{return O.sourceType="script",_I(O,se).parse()}catch{}else gt.program.sourceType="script";return gt}catch(we){try{return O.sourceType="script",_I(O,se).parse()}catch{}throw we}}else return _I(O,se).parse()}function lm(se,O){let K=_I(O,se);return K.options.strictMode&&(K.state.strict=!0),K.getExpression()}function Kf(se){let O={};for(let K of Object.keys(se))O[K]=zr(se[K]);return O}var CI=Kf(Ar);function _I(se,O){let K=fb,we=new Map;if(se!=null&&se.plugins){for(let gt of se.plugins){let sr,Yr;typeof gt=="string"?sr=gt:[sr,Yr]=gt,we.has(sr)||we.set(sr,Yr||{})}Hp(we),K=iE(we)}return new K(se,O,we)}var H2=new Map;function iE(se){let O=[];for(let gt of nE)se.has(gt)&&O.push(gt);let K=O.join("|"),we=H2.get(K);if(!we){we=fb;for(let gt of O)we=uC[gt](we);H2.set(K,we)}return we}e.parse=pe,e.parseExpression=lm,e.tokTypes=CI}),cyi={};a5a(cyi,{parsers:()=>xRe});var U0i=syi(oyi(),1);function Oyt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},K0i=b5a;function E5a(e){return Array.isArray(e)&&e.length>0}var CTr=E5a;function tj(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(tj(o),a):a}function Ame(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function S5a(e){let t=new Set(e);return r=>t.has(r?.type)}var v5a=S5a,B5a=v5a(["Block","CommentBlock","MultiLine"]),fTr=B5a;function w5a(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var j0i=w5a;function T5a(e){return fTr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var R5a=T5a,m4e=null;function _4e(e){if(m4e!==null&&typeof m4e.property){let t=m4e;return m4e=_4e.prototype=null,t}return m4e=_4e.prototype=e??Object.create(null),new _4e}var N5a=10;for(let e=0;e<=N5a;e++)_4e();function D5a(e){return _4e(e)}function k5a(e,t="type"){D5a(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var x5a=k5a,G5a={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},F5a=x5a(G5a),Z5a=F5a;function ITr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some(R5a)&&a.add(tj(o))}),e=dTr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=tj(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=dTr(e,a=>{switch(a.type){case"LogicalExpression":if(uyi(a))return hTr(a);break;case"VariableDeclaration":{let o=K0i(!1,a.declarations,-1);o!=null&&o.init&&n[Ame(o)]!==";"&&(a.range=[tj(a),Ame(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=tj(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),CTr(e.comments)){let a=K0i(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Ame(l)===tj(a)&&fTr(l)&&fTr(a)&&j0i(l)&&j0i(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[tj(l),Ame(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function uyi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function hTr(e){return uyi(e)?hTr({type:"LogicalExpression",operator:e.operator,left:hTr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[tj(e.left),Ame(e.right.left)]}),right:e.right.right,range:[tj(e),Ame(e)]}):e}var V5a=L5a;function P5a(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var gyi=P5a;function W5a(e){let{message:t,loc:{line:r,column:n},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let l=` (${r}:${n})`;return t.endsWith(l)&&(t=t.slice(0,-l.length)),gyi(t,{loc:{start:{line:r,column:n+1}},cause:o})}var Ayi=W5a,O5a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Wyt=O5a,M5a=/\*\/$/,H5a=/^\/\*\*?/,Y5a=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Q5a=/(^|\s+)\/\/([^\n\r]*)/g,z0i=/^(\r?\n)+/,X5a=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,q0i=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,J5a=/(\r?\n|^) *\* ?/g,U5a=[];function K5a(e){let t=e.match(Y5a);return t?t[0].trimStart():""}function j5a(e){let t=` -`;e=Wyt(!1,e.replace(H5a,"").replace(M5a,""),J5a,"$1");let r="";for(;r!==e;)r=e,e=Wyt(!1,e,X5a,`${t}$1 $2${t}`);e=e.replace(z0i,"").trimEnd();let n=Object.create(null),a=Wyt(!1,e,q0i,"").replace(z0i,"").trimEnd(),o;for(;o=q0i.exec(e);){let l=Wyt(!1,o[2],Q5a,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...U5a,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function z5a(e){let t=lyi(e);t&&(e=e.slice(t.length+1));let r=K5a(e),{pragmas:n,comments:a}=j5a(r);return{shebang:t,text:e,pragmas:n,comments:a}}function q5a(e){let{pragmas:t}=z5a(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function $5a(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:q5a,locStart:tj,locEnd:Ame,...e}}var C4e=$5a;function eMa(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var tMa=eMa;function rMa(e,t){let{type:r="JsExpressionRoot",rootMarker:n,text:a}=t,{tokens:o,comments:l}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:l,type:r,node:e,range:[0,a.length],rootMarker:n}}var dyi=rMa,kRe=e=>C4e(aMa(e)),nMa={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},$0i="v8intrinsic",eyi=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],lee=(e,t=nMa)=>({...t,plugins:[...t.plugins,...e]}),iMa=/@(?:no)?flow\b/u;function sMa(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let n=lyi(e);n&&(e=e.slice(n.length));let a=m5a(e,0);return a!==!1&&(e=e.slice(0,a)),iMa.test(e)}function oMa(e,t,r){let n=e(t,r),a=n.errors.find(o=>!cMa.has(o.reasonCode));if(a)throw a;return n}function aMa({isExpression:e=!1,optionsCombinations:t}){return(r,n={})=>{if((n.parser==="babel"||n.parser==="__babel_estree")&&sMa(r,n))return n.parser="babel-flow",fyi.parse(r,n);let a=t;(n.__babelSourceType??tMa(n))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...eyi,$0i]:eyi).flatMap(f=>a.map(I=>lee([f],I))):o&&(a=a.map(f=>lee([$0i],f)));let l=e?U0i.parseExpression:U0i.parse,A;try{A=_5a(a.map(f=>()=>oMa(l,r,f)))}catch({errors:[f]}){throw Ayi(f)}return e&&(A=dyi(A,{text:r,rootMarker:n.rootMarker})),V5a(A,{parser:"babel",text:r})}}var cMa=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),pyi=[lee(["jsx"])],tyi=kRe({optionsCombinations:pyi}),ryi=kRe({optionsCombinations:[lee(["jsx","typescript"]),lee(["typescript"])]}),nyi=kRe({isExpression:!0,optionsCombinations:[lee(["jsx"])]}),iyi=kRe({isExpression:!0,optionsCombinations:[lee(["typescript"])]}),fyi=kRe({optionsCombinations:[lee(["jsx",["flow",{all:!0}],"flowComments"])]}),lMa=kRe({optionsCombinations:pyi.map(e=>lee(["estree"],e))}),uMa={babel:tyi,"babel-flow":fyi,"babel-ts":ryi,__js_expression:nyi,__ts_expression:iyi,__vue_expression:nyi,__vue_ts_expression:iyi,__vue_event_binding:tyi,__vue_ts_event_binding:ryi,__babel_estree:lMa},gMa=syi(oyi(),1);function Iyi(e={}){let{allowComments:t=!0}=e;return function(r){let n;try{n=(0,gMa.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw Ayi(a)}if(!t&&CTr(n.comments))throw $ae(n.comments[0],"Comment");return DRe(n),dyi(n,{type:"JsonRoot",text:r})}}function $ae(e,t){let[r,n]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return gyi(`${t} is not allowed in JSON.`,{loc:{start:r,end:n}})}function DRe(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&DRe(t);return;case"ObjectExpression":for(let t of e.properties)DRe(t);return;case"ObjectProperty":if(e.computed)throw $ae(e.key,"Computed key");if(e.shorthand)throw $ae(e.key,"Shorthand property");e.key.type!=="Identifier"&&DRe(e.key),DRe(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw $ae(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw $ae(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw $ae(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(CTr(e.expressions))throw $ae(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)DRe(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw $ae(e,`'${e.type}'`)}}var pTr=Iyi(),AMa={json:C4e({parse:pTr,hasPragma(){return!0}}),json5:C4e(pTr),jsonc:C4e(pTr),"json-stringify":C4e({parse:Iyi({allowComments:!1}),astFormat:"estree-json"})},dMa=AMa,xRe={...uMa,...dMa},pMa=cyi;var vme={};sI(vme,{default:()=>SJa,languages:()=>$Ei,options:()=>qEi,printers:()=>zRe});var fMa=Object.defineProperty,Myi=e=>{throw TypeError(e)},tbt=(e,t)=>{for(var r in t)fMa(e,r,{get:t[r],enumerable:!0})},Hyi=(e,t,r)=>t.has(e)||Myi("Cannot "+r),ece=(e,t,r)=>(Hyi(e,t,"read from private field"),r?r.call(e):t.get(e)),IMa=(e,t,r)=>t.has(e)?Myi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),hMa=(e,t,r,n)=>(Hyi(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),Yyi={};tbt(Yyi,{languages:()=>$Ei,options:()=>qEi,printers:()=>zRe});var mMa=[{linguistLanguageId:183,name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],Qyi={};tbt(Qyi,{canAttachComment:()=>SYa,embed:()=>gQa,experimentalFeatures:()=>fJa,getCommentChildNodes:()=>vYa,getVisitorKeys:()=>Kyi,handleComments:()=>Ibi,insertPragma:()=>SQa,isBlockComment:()=>zM,isGap:()=>BYa,massageAstNode:()=>EHa,print:()=>pJa,printComment:()=>MHa,willPrintOwnComments:()=>wbi});var CMa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},Zk=CMa,_Ma=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},U0=_Ma;function yMa(e){return e!==null&&typeof e=="object"}var bMa=yMa;function*EMa(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>bMa(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*SMa(e,t){let r=[e];for(let n=0;n/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function wMa(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function TMa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var RMa=e=>!(wMa(e)||TMa(e)),NMa=/[^\x20-\x7F]/u;function DMa(e){if(!e)return 0;if(!NMa.test(e))return e.length;e=e.replace(BMa()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=RMa(n)?1:2)}return t}var PRe=DMa;function rbt(e){return(t,r,n)=>{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var H_=PMa,Xyi=new Proxy(()=>{},{get:()=>Xyi}),jTr=Xyi,Myt="'",hyi='"';function WMa(e,t){let r=t===!0||t===Myt?Myt:hyi,n=r===Myt?hyi:Myt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var Jyi=WMa;function OMa(e,t,r){let n=t==='"'?"'":'"',a=Zk(!1,e,/\\(.)|(["'])/gsu,(o,l,A)=>l===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var MMa=OMa;function HMa(e,t){jTr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),n=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":Jyi(r,t.singleQuote);return e.charAt(0)===n?e:MMa(r,n,!1)}var MRe=HMa;function ZS(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(ZS(o),a):a}function BC(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function nbt(e,t){let r=ZS(e);return Number.isInteger(r)&&r===ZS(t)}function YMa(e,t){let r=BC(e);return Number.isInteger(r)&&r===BC(t)}function QMa(e,t){return nbt(e,t)&&YMa(e,t)}var y4e=null;function S4e(e){if(y4e!==null&&typeof y4e.property){let t=y4e;return y4e=S4e.prototype=null,t}return y4e=S4e.prototype=e??Object.create(null),new S4e}var XMa=10;for(let e=0;e<=XMa;e++)S4e();function JMa(e){return S4e(e)}function UMa(e,t="type"){JMa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Uyi=UMa,KMa={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},jMa=Uyi(KMa),Kyi=jMa;function zMa(e){let t=new Set(e);return r=>t.has(r?.type)}var _0=zMa,qMa=_0(["Block","CommentBlock","MultiLine"]),zM=qMa,$Ma=_0(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),jyi=$Ma;function eHa(e,t){let r=t.split(".");for(let n=r.length-1;n>=0;n--){let a=r[n];if(n===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function tHa(e,t){return t.some(r=>eHa(e,r))}var rHa=tHa;function nHa({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var zyi=nHa;function DTr(e,t){return t(e)||vMa(e,{getVisitorKeys:Kyi,predicate:t})}function zTr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||b_(e)||Yv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||nj(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function iHa(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function qyi(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var QRe=_0(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),sHa=_0(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),Vk=_0(["ArrayExpression","TupleExpression"]),e4=_0(["ObjectExpression","RecordExpression"]);function oHa(e){return e.type==="LogicalExpression"&&e.operator==="??"}function uee(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function $yi(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&uee(e.argument)}function gV(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function ebi(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var qTr=_0(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),aHa=_0(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),nce=_0(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),w4e=_0(["FunctionExpression","ArrowFunctionExpression"]);function cHa(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function _Tr(e){return b_(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var nD=_0(["JSXElement","JSXFragment"]);function ibt(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function tbi(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function lHa(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!nbt(e,e.typeAnnotation)}var gee=_0(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function ZRe(e){return Yv(e)||e.type==="BindExpression"&&!!e.object}var uHa=_0(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function $Tr(e){return zyi(e)||jyi(e)||uHa(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function gHa(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var AHa=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function dHa(e){return rHa(e,AHa)}function sbt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=qM(e);if(r.length===1){if(_Tr(e)&&sbt(t))return w4e(r[0]);if(gHa(e.callee))return _Tr(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||gV(r[0]))&&dHa(e.callee))return r[2]&&!uee(r[2])?!1:(r.length===2?w4e(r[1]):cHa(r[1])&&NG(r[1]).length<=1)||_Tr(r[1]);return!1}var rbi=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),b_=rbi(_0(["CallExpression","OptionalCallExpression"])),Yv=rbi(_0(["MemberExpression","OptionalMemberExpression"]));function myi(e,t=5){return nbi(e,t)<=t}function nbi(e,t){let r=0;for(let n in e){let a=e[n];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=nbi(a,t-r)),r>t)return r}return r}var pHa=.25;function eRr(e,t){let{printWidth:r}=t;if(ig(e))return!1;let n=r*pHa;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=n||$yi(e)&&!ig(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=n:gV(e)?MRe(UM(e),t).length<=n:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=n&&!e.quasis[0].value.raw.includes(` -`):e.type==="UnaryExpression"?eRr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=n-2:qTr(e)}function ice(e,t){return nD(t)?obt(t):ig(t,fA.Leading,r=>dO(e,BC(r)))}function Cyi(e){return e.quasis.some(t=>t.value.raw.includes(` -`))}function ibi(e,t){return(e.type==="TemplateLiteral"&&Cyi(e)||e.type==="TaggedTemplateExpression"&&Cyi(e.quasi))&&!dO(t,ZS(e),{backwards:!0})}function sbi(e){if(!ig(e))return!1;let t=U0(!1,VRe(e,fA.Dangling),-1);return t&&!zM(t)}function fHa(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(w4e(r)){if(t+=1,t>1)return!0}else if(b_(r)){for(let n of qM(r))if(w4e(n))return!0}return!1}function obi(e){let{node:t,parent:r,key:n}=e;return n==="callee"&&b_(t)&&b_(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var IHa=new Set(["!","-","+","~"]);function qX(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return qX(e.expression,t);let r=n=>qX(n,t-1);if(ebi(e))return PRe(e.pattern??e.regex.pattern)<=5;if(qTr(e)||aHa(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(n=>!n.value.raw.includes(` -`))&&e.expressions.every(r);if(e4(e))return e.properties.every(n=>!n.computed&&(n.shorthand||n.value&&r(n.value)));if(Vk(e))return e.elements.every(n=>n===null||r(n));if(HRe(e)){if(e.type==="ImportExpression"||qX(e.callee,t)){let n=qM(e);return n.length<=t&&n.every(r)}return!1}return Yv(e)?qX(e.object,t)&&qX(e.property,t):e.type==="UnaryExpression"&&IHa.has(e.operator)||e.type==="UpdateExpression"?qX(e.argument,t):!1}function UM(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function hHa(e){return e}function pee(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function JZ(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return JZ(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return JZ(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:JZ(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:JZ(e.callee,t);case"ConditionalExpression":return JZ(e.test,t);case"UpdateExpression":return!e.prefix&&JZ(e.argument,t);case"BindExpression":return e.object&&JZ(e.object,t);case"SequenceExpression":return JZ(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return JZ(e.expression,t);default:return t(e)}}var _yi={"==":!0,"!=":!0,"===":!0,"!==":!0},Hyt={"*":!0,"/":!0,"%":!0},kTr={">>":!0,">>>":!0,"<<":!0};function tRr(e,t){return!(jyt(t)!==jyt(e)||e==="**"||_yi[e]&&_yi[t]||t==="%"&&Hyt[e]||e==="%"&&Hyt[t]||t!==e&&Hyt[t]&&Hyt[e]||kTr[e]&&kTr[t])}var mHa=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function jyt(e){return mHa.get(e)}function CHa(e){return!!kTr[e]||e==="|"||e==="^"||e==="&"}function _Ha(e){var t;if(e.rest)return!0;let r=NG(e);return((t=U0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var yTr=new WeakMap;function NG(e){if(yTr.has(e))return yTr.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),yTr.set(e,t),t}function yHa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var bTr=new WeakMap;function qM(e){if(bTr.has(e))return bTr.get(e);if(e.type==="ChainExpression")return qM(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),bTr.set(e,t),t}function zyt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>zyt(e,t),"expression");r.type==="ImportExpression"?(e.call(n=>t(n,0),"source"),r.options&&e.call(n=>t(n,1),"options")):e.each(t,"arguments")}function yyi(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function qyt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function obt(e){return e?.prettierIgnore||ig(e,fA.PrettierIgnore)}var fA={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},abi=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,n,a)=>!(e&fA.Leading&&!r.leading||e&fA.Trailing&&!r.trailing||e&fA.Dangling&&(r.leading||r.trailing)||e&fA.Block&&!zM(r)||e&fA.Line&&!QRe(r)||e&fA.First&&n!==0||e&fA.Last&&n!==a.length-1||e&fA.PrettierIgnore&&!qyt(r)||t&&!t(r))};function ig(e,t,r){if(!H_(e?.comments))return!1;let n=abi(t,r);return n?e.comments.some(n):!0}function VRe(e,t,r){if(!Array.isArray(e?.comments))return[];let n=abi(t,r);return n?e.comments.filter(n):e.comments}var fee=(e,{originalText:t})=>KTr(t,BC(e));function HRe(e){return b_(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function Iee(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!ibt(e))}var nj=_0(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),sce=_0(["TSUnionType","UnionTypeAnnotation"]),rRr=_0(["TSIntersectionType","IntersectionTypeAnnotation"]),oce=_0(["TSConditionalType","ConditionalTypeAnnotation"]),bHa=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),FRe=e=>{for(let t of e.quasis)delete t.value};function cbi(e,t,r){var n,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:l}=e;gV(l)||uee(l)?t.key=String(l.value):l.type==="Identifier"&&(t.key=l.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(l=>l.type==="JSXAttribute"&&l.name.name==="jsx"))for(let{type:l,expression:A}of t.children)l==="JSXExpressionContainer"&&A.type==="TemplateLiteral"&&FRe(A);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&FRe(t.value.expression),e.type==="JSXAttribute"&&((n=e.value)==null?void 0:n.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=Zk(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let l=e.expression.arguments[0].properties;for(let[A,f]of t.expression.arguments[0].properties.entries())switch(l[A].key.name){case"styles":Vk(f.value)&&FRe(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&FRe(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&FRe(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(l=>zM(l)&&["GraphQL","HTML"].some(A=>l.value===` ${A} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&FRe(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}cbi.ignoredProperties=bHa;var EHa=cbi,Ime="string",Aee="array",XRe="cursor",hme="indent",mme="align",Cme="trim",KM="group",cce="fill",ij="if-break",_me="indent-if-break",yme="line-suffix",lce="line-suffix-boundary",dV="line",hee="label",mee="break-parent",lbi=new Set([XRe,hme,mme,Cme,KM,cce,ij,_me,yme,lce,dV,hee,mee]);function SHa(e){if(typeof e=="string")return Ime;if(Array.isArray(e))return Aee;if(!e)return;let{type:t}=e;if(lbi.has(t))return t}var uce=SHa,vHa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function BHa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(uce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=vHa([...lbi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var wHa=class extends Error{name="InvalidDocError";constructor(e){super(BHa(e)),this.doc=e}},T4e=wHa,byi={};function THa(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===byi){r(a.pop());continue}r&&a.push(o,byi);let l=uce(o);if(!l)throw new T4e(o);if(t?.(o)!==!1)switch(l){case Aee:case cce:{let A=l===Aee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case ij:a.push(o.flatContents,o.breakContents);break;case KM:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case mme:case hme:case _me:case hee:case yme:a.push(o.contents);break;case Ime:case XRe:case Cme:case lce:case dV:case mee:break;default:throw new T4e(o)}}}var nRr=THa;function JRe(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(uce(o)){case Aee:return t(o.map(n));case cce:return t({...o,parts:o.parts.map(n)});case ij:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case KM:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case mme:case hme:case _me:case hee:case yme:return t({...o,contents:n(o.contents)});case Ime:case XRe:case Cme:case lce:case dV:case mee:return t(o);default:throw new T4e(o)}}}function ubi(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return nRr(e,o),n}function RHa(e){if(e.type===KM&&e.break||e.type===dV&&e.hard||e.type===mee)return!0}function UZ(e){return ubi(e,RHa,!1)}function Eyi(e){if(e.length>0){let t=U0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function NHa(e){let t=new Set,r=[];function n(o){if(o.type===mee&&Eyi(r),o.type===KM){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===KM&&r.pop().break&&Eyi(r)}nRr(e,n,a,!0)}function DHa(e){return e.type===dV&&!e.hard?e.soft?"":" ":e.type===ij?e.flatContents:e}function xTr(e){return JRe(e,DHa)}function kHa(e){switch(uce(e)){case cce:if(e.parts.every(t=>t===""))return"";break;case KM:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===KM&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case mme:case hme:case _me:case yme:if(!e.contents)return"";break;case ij:if(!e.flatContents&&!e.breakContents)return"";break;case Aee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof U0(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case Ime:case XRe:case Cme:case lce:case dV:case hee:case mee:break;default:throw new T4e(e)}return e}function iRr(e){return JRe(e,t=>kHa(t))}function pme(e,t=fbi){return JRe(e,r=>typeof r=="string"?vC(t,r.split(` -`)):r)}function xHa(e){if(e.type===dV)return!0}function GHa(e){return ubi(e,xHa,!1)}function GTr(e,t){return e.type===hee?{...e,contents:t(e.contents)}:t(e)}function FHa(e){let t=!0;return nRr(e,r=>{switch(uce(r)){case Ime:if(r==="")break;case Cme:case lce:case dV:case mee:return t=!1,!1}}),t}var sRr=()=>{},sj=sRr,gbi=sRr,ZHa=sRr;function Pl(e){return sj(e),{type:hme,contents:e}}function oj(e,t){return sj(t),{type:mme,contents:t,n:e}}function Ia(e,t={}){return sj(e),gbi(t.expandedStates,!0),{type:KM,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function LHa(e){return oj(Number.NEGATIVE_INFINITY,e)}function Abi(e){return oj(-1,e)}function dme(e,t){return Ia(e[0],{...t,expandedStates:e})}function dbi(e){return ZHa(e),{type:cce,parts:e}}function lh(e,t="",r={}){return sj(e),t!==""&&sj(t),{type:ij,breakContents:e,flatContents:t,groupId:r.groupId}}function abt(e,t){return sj(e),{type:_me,contents:e,groupId:t.groupId,negate:t.negate}}function Syi(e){return sj(e),{type:yme,contents:e}}var dee={type:lce},aj={type:mee},pbi={type:dV,hard:!0},VHa={type:dV,hard:!0,literal:!0},zg={type:dV},bl={type:dV,soft:!0},xl=[pbi,aj],fbi=[VHa,aj],Yyt={type:XRe};function vC(e,t){sj(e),gbi(t);let r=[];for(let n=0;n0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var OHa=WHa;function MHa(e,t){let r=e.node;if(QRe(r))return t.originalText.slice(ZS(r),BC(r)).trimEnd();if(zM(r))return OHa(r)?HHa(r):["/*",pme(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function HHa(e){let t=e.value.split(` -`);return["/*",vC(xl,t.map((r,n)=>n===0?r.trimEnd():" "+(njHa,ownLine:()=>KHa,remaining:()=>zHa});function YHa(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function oRr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=YHa(e)}function Pk(e,t){t.leading=!0,t.trailing=!1,oRr(e,t)}function jM(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),oRr(e,t)}function D2(e,t){t.leading=!1,t.trailing=!0,oRr(e,t)}function QHa(e,t){let r=null,n=t;for(;n!==r;)r=n,n=WRe(e,n),n=JTr(e,n),n=UTr(e,n),n=ORe(e,n);return n}var URe=QHa;function XHa(e,t){let r=URe(e,t);return r===!1?"":e.charAt(r)}var t4=XHa;function JHa(e,t,r){for(let n=t;nt(e))}function jHa(e){return[qHa,bbi,Cbi,Sbi,aRr,cRr,mbi,_bi,Ebi,lYa,gYa,uRr,IYa,lRr,CYa,_Ya,bYa].some(t=>t(e))}function zHa(e){return[vbi,aRr,cRr,tYa,aYa,ybi,uRr,oYa,sYa,mYa,lRr,hYa].some(t=>t(e))}function bme(e,t){let r=(e.body||e.properties).find(({type:n})=>n!=="EmptyStatement");r?Pk(r,t):jM(e,t)}function FTr(e,t){e.type==="BlockStatement"?bme(e,t):Pk(e,t)}function qHa({comment:e,followingNode:t}){return t&&hbi(e)?(Pk(t,e),!0):!1}function aRr({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){if(r?.type!=="IfStatement"||!n)return!1;if(t4(a,BC(e))===")")return D2(t,e),!0;if(t===r.consequent&&n===r.alternate){let o=URe(a,BC(r.consequent));if(ZS(e)"?(jM(t,e),!0):!1}function aYa({comment:e,enclosingNode:t,text:r}){return t4(r,BC(e))!==")"?!1:t&&(Bbi(t)&&NG(t).length===0||HRe(t)&&qM(t).length===0)?(jM(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&NG(t.value).length===0?(jM(t.value,e),!0):!1}function cYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&n?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&t4(a,BC(e))===")"?(D2(t,e),!0):!1}function bbi({comment:e,precedingNode:t,enclosingNode:r,followingNode:n,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&n?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Bbi(r)&&t4(a,BC(e))===")"?(D2(t,e),!0):!zM(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&n?.type==="BlockStatement"&&r.body===n&&URe(a,BC(e))===ZS(n)?(bme(n,e),!0):!1}function Ebi({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(Pk(t,e),!0):!1}function lRr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(D2(t,e),!0):!1}function lYa({comment:e,precedingNode:t,enclosingNode:r}){return b_(r)&&t&&r.callee===t&&r.arguments.length>0?(Pk(r.arguments[0],e),!0):!1}function uYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return sce(r)?(qyt(e)&&(n.prettierIgnore=!0,e.unignore=!0),t?(D2(t,e),!0):!1):(sce(n)&&qyt(e)&&(n.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function gYa({comment:e,enclosingNode:t}){return Iee(t)?(Pk(t,e),!0):!1}function uRr({comment:e,enclosingNode:t,ast:r,isLastComment:n}){var a;return((a=r?.body)==null?void 0:a.length)===0?(n?jM(r,e):Pk(r,e),!0):t?.type==="Program"&&t.body.length===0&&!H_(t.directives)?(n?jM(t,e):Pk(t,e),!0):!1}function AYa({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(Pk(t,e),!0):!1}function Sbi({comment:e,precedingNode:t,enclosingNode:r,text:n}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return Pk(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&dO(n,BC(e))?(D2(t,e),!0):!1}function dYa({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(Pk(t,e),!0):!1}var pYa=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),fYa=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function IYa({comment:e,enclosingNode:t,followingNode:r}){return pYa.has(t?.type)&&r&&(fYa.has(r.type)||zM(e))?(Pk(r,e),!0):!1}function hYa({comment:e,enclosingNode:t,followingNode:r,text:n}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&t4(n,BC(e))===";"?(D2(t,e),!0):!1}function vbi({comment:e,enclosingNode:t,followingNode:r}){if(qyt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function mYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return r?.type!=="TSMappedType"?!1:n?.type==="TSTypeParameter"&&n.name?(Pk(n.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(D2(t.constraint,e),!0):!1}function CYa({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&QRe(e)?bme(r,e):jM(t,e),!0)}function _Ya({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){return sce(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!n||rRr(r))?(D2(U0(!1,t.types,-1),e),!0):!1}function yYa({comment:e,enclosingNode:t,precedingNode:r,followingNode:n}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&n?.type==="TSTypeAnnotation")return r?D2(r,e):jM(t,e),!0}function bYa({comment:e,precedingNode:t,enclosingNode:r,followingNode:n}){var a;if(!n&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,l=QRe(e)||e.loc.start.line===e.loc.end.line,A=e.loc.start.line===t.right.loc.start.line;if(o&&l&&A)return D2(t.right,e),!0}return!1}var Bbi=_0(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),EYa=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function SYa(e){return!EYa.has(e.type)}function vYa(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&NG(e.value).length===0&&!e.value.returnType&&!H_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function wbi(e){let{node:t,parent:r}=e;return(nD(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||sce(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!obt(t)||sce(r))}function BYa(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=Zk(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function wYa(e){switch(e){case"cr":return"\r";case"crlf":return`\r -`;default:return` -`}}var uV=Symbol("MODE_BREAK"),rj=Symbol("MODE_FLAT"),LRe=Symbol("cursor"),ZTr=Symbol("DOC_FILL_PRINTED_LENGTH");function Tbi(){return{value:"",length:0,queue:[]}}function TYa(e,t){return LTr(e,{type:"indent"},t)}function RYa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Tbi():t<0?LTr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:LTr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function LTr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function VTr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===LRe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(LRe);return t}function Qyt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=uce(C);switch(b){case Ime:f.push(C),r-=PRe(C);break;case Aee:case cce:{let E=b===Aee?C:C.parts,N=C[ZTr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case hme:case mme:case _me:case hee:A.push({mode:I,doc:C.contents});break;case Cme:r+=VTr(f);break;case KM:{if(o&&C.break)return!1;let E=C.break?uV:I,N=C.expandedStates&&E===uV?U0(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case ij:{let E=(C.groupId?a[C.groupId]||rj:I)===uV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case dV:if(I===uV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case yme:n=!0;break;case lce:if(n)return!1;break}}return!1}function Rbi(e,t){let r={},n=t.printWidth,a=wYa(t.endOfLine),o=0,l=[{ind:Tbi(),mode:uV,doc:e}],A=[],f=!1,I=[],C=0;for(NHa(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(uce(B)){case Ime:{let F=a!==` -`?Zk(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=PRe(F));break}case Aee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case XRe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(LRe),C++;break;case hme:l.push({ind:TYa(E,t),mode:N,doc:B.contents});break;case mme:l.push({ind:RYa(E,B.n,t),mode:N,doc:B.contents});break;case Cme:o-=VTr(A);break;case KM:switch(N){case rj:if(!f){l.push({ind:E,mode:B.break?uV:rj,doc:B.contents});break}case uV:{f=!1;let F={ind:E,mode:rj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&Qyt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=U0(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:uV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:uV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:rj,doc:ce};if(Qyt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:uV,doc:B.contents});break}}B.id&&(r[B.id]=U0(!1,l,-1).mode);break;case cce:{let F=n-o,Q=B[ZTr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:rj,doc:ne},ue={ind:E,mode:uV,doc:ne},de=Qyt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:rj,doc:ce},Se={ind:E,mode:uV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[ZTr]:Q+2}};Qyt({ind:E,mode:rj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case ij:case _me:{let F=B.groupId?r[B.groupId]:N;if(F===uV){let Q=B.type===ij?B.breakContents:B.negate?B.contents:Pl(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===rj){let Q=B.type===ij?B.flatContents:B.negate?Pl(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case yme:I.push({ind:E,mode:N,doc:B.contents});break;case lce:I.length>0&&l.push({ind:E,mode:N,doc:pbi});break;case dV:switch(N){case rj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case uV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=VTr(A),A.push(a+E.value),o=E.length);break}break;case hee:l.push({ind:E,mode:N,doc:B.contents});break;case mee:break;default:throw new T4e(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(LRe);if(b!==-1){let E=A.indexOf(LRe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==LRe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function NYa(e,t,r=0){let n=0;for(let a=r;a{if(o.push(t()),I.tail)return;let{tabWidth:C}=r,b=I.value.raw,E=b.includes(` -`)?xYa(b,C):A;A=E;let N=l[f],B=n[a][f],F=ace(r.originalText,BC(I),ZS(n.quasis[f+1]));if(!F){let X=Rbi(N,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;X.includes(` -`)?F=!0:N=X}F&&(ig(B)||B.type==="Identifier"||Yv(B)||B.type==="ConditionalExpression"||B.type==="SequenceExpression"||nj(B)||gee(B))&&(N=[Pl([bl,N]),bl]);let Q=E===0&&b.endsWith(` -`)?oj(Number.NEGATIVE_INFINITY,N):PHa(N,E,C);o.push(Ia(["${",Q,dee,"}"]))},"quasis"),o.push("`"),o}function GYa(e,t){let r=t("quasi");return D4e(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),dee,r])}function FYa(e,t,r){let{node:n}=e,a=n.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let l=[],A=o.map(E=>"${"+Rbi(E,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let E=1;EE.cells.length)),C=Array.from({length:I}).fill(0),b=[{cells:a},...f.filter(E=>E.cells.length>0)];for(let{cells:E}of b.filter(N=>!N.hasLineBreak))for(let[N,B]of E.entries())C[N]=Math.max(C[N],PRe(B));return l.push(dee,"`",Pl([xl,vC(xl,b.map(E=>vC(" | ",E.cells.map((N,B)=>E.hasLineBreak?N:N+" ".repeat(C[B]-PRe(N))))))]),xl,"`"),l}}function ZYa(e,t){let{node:r}=e,n=t();return ig(r)&&(n=Ia([Pl([bl,n]),bl])),["${",n,dee,"}"]}function gRr(e,t){return e.map(r=>ZYa(r,t),"expressions")}function Dbi(e,t){return JRe(e,r=>typeof r=="string"?t?Zk(!1,r,/(\\*)`/gu,"$1$1\\`"):kbi(r):r)}function kbi(e){return Zk(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function LYa({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var PTr=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function VYa(e){let t=n=>n.type==="TemplateLiteral",r=(n,a)=>Iee(n)&&!n.computed&&n.key.type==="Identifier"&&n.key.name==="styles"&&a==="value";return e.match(t,(n,a)=>Vk(n)&&a==="elements",r,...PTr)||e.match(t,r,...PTr)}function PYa(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>Iee(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...PTr)}function ETr(e,t){return ig(e,fA.Block|fA.Leading,({value:r})=>r===` ${t} `)}function xbi({node:e,parent:t},r){return ETr(e,r)||WYa(t)&&ETr(t,r)||t.type==="ExpressionStatement"&&ETr(t,r)}function WYa(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function OYa(e,t,r){let{node:n}=r,a=n.quasis.map(C=>C.value.raw),o=0,l=a.reduce((C,b,E)=>E===0?b:C+"@prettier-placeholder-"+o+++"-id"+b,""),A=await e(l,{parser:"scss"}),f=gRr(r,t),I=MYa(A,f);if(!I)throw new Error("Couldn't insert all the expressions");return["`",Pl([xl,I]),bl,"`"]}function MYa(e,t){if(!H_(t))return e;let r=0,n=JRe(iRr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,l)=>l%2===0?pme(o):(r++,t[o])));return t.length===r?n:null}function HYa({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(n=>n.type==="JSXAttribute"&&n.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function Xyt(e){return e.type==="Identifier"&&e.name==="styled"}function vyi(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function YYa({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return Xyt(t.object)||vyi(t);case"CallExpression":return Xyt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(Xyt(t.callee.object.object)||vyi(t.callee.object))||t.callee.object.type==="CallExpression"&&Xyt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function QYa({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function XYa(e){if(HYa(e)||YYa(e)||QYa(e)||VYa(e))return OYa}var JYa=XYa;async function UYa(e,t,r){let{node:n}=r,a=n.quasis.length,o=gRr(r,t),l=[];for(let A=0;A2&&E[0].trim()===""&&E[1].trim()==="",Q=N>2&&E[N-1].trim()===""&&E[N-2].trim()==="",X=E.every(ne=>/^\s*(?:#[^\n\r]*)?$/u.test(ne));if(!C&&/#[^\n\r]*$/u.test(E[N-1]))return null;let ae=null;X?ae=KYa(E):ae=await e(b,{parser:"graphql"}),ae?(ae=Dbi(ae,!1),!I&&F&&l.push(""),l.push(ae),!C&&Q&&l.push("")):!I&&!C&&F&&l.push(""),B&&l.push(B)}return["`",Pl([xl,vC(xl,l)]),xl,"`"]}function KYa(e){let t=[],r=!1,n=e.map(a=>a.trim());for(let[a,o]of n.entries())o!==""&&(n[a-1]===""&&r?t.push([xl,o]):t.push(o),r=!0);return t.length===0?null:vC(xl,t)}function jYa({node:e,parent:t}){return xbi({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function zYa(e){if(jYa(e))return UYa}var qYa=zYa,STr=0;async function Gbi(e,t,r,n,a){let{node:o}=n,l=STr;STr=STr+1>>>0;let A=X=>`PRETTIER_HTML_PLACEHOLDER_${X}_${l}_IN_JS`,f=o.quasis.map((X,ae,ne)=>ae===ne.length-1?X.value.cooked:X.value.cooked+A(ae)).join(""),I=gRr(n,r),C=new RegExp(A(String.raw`(\d+)`),"gu"),b=0,E=await t(f,{parser:e,__onHtmlRoot(X){b=X.children.length}}),N=JRe(E,X=>{if(typeof X!="string")return X;let ae=[],ne=X.split(C);for(let ce=0;ce1?Pl(Ia(N)):Ia(N),F,"`"]))}function $Ya(e){return xbi(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var eQa=Gbi.bind(void 0,"html"),tQa=Gbi.bind(void 0,"angular");function rQa(e){if($Ya(e))return eQa;if(PYa(e))return tQa}var nQa=rQa;async function iQa(e,t,r){let{node:n}=r,a=Zk(!1,n.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,I)=>"\\".repeat(I.length/2)+"`"),o=sQa(a),l=o!=="";l&&(a=Zk(!1,a,new RegExp(`^${o}`,"gmu"),""));let A=Dbi(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",l?Pl([bl,A]):[fbi,LHa(A)],bl,"`"]}function sQa(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function oQa(e){if(aQa(e))return iQa}function aQa({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var cQa=oQa;function lQa(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||uQa(t))return;let r;for(let n of[JYa,qYa,nQa,cQa])if(r=n(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&D4e({embed:!0,...o.label},o)}}function uQa({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var gQa=lQa,AQa=/\*\/$/,dQa=/^\/\*\*?/,Fbi=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,pQa=/(^|\s+)\/\/([^\n\r]*)/g,Byi=/^(\r?\n)+/,fQa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,wyi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,IQa=/(\r?\n|^) *\* ?/g,Zbi=[];function hQa(e){let t=e.match(Fbi);return t?t[0].trimStart():""}function mQa(e){let t=e.match(Fbi),r=t?.[0];return r==null?e:e.slice(r.length)}function CQa(e){let t=` -`;e=Zk(!1,e.replace(dQa,"").replace(AQa,""),IQa,"$1");let r="";for(;r!==e;)r=e,e=Zk(!1,e,fQa,`${t}$1 $2${t}`);e=e.replace(Byi,"").trimEnd();let n=Object.create(null),a=Zk(!1,e,wyi,"").replace(Byi,"").trimEnd(),o;for(;o=wyi.exec(e);){let l=Zk(!1,o[2],pQa,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...Zbi,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function _Qa({comments:e="",pragmas:t={}}){let r=` -`,n="/**",a=" *",o=" */",l=Object.keys(t),A=l.flatMap(I=>Tyi(I,t[I])).map(I=>`${a} ${I}${r}`).join("");if(!e){if(l.length===0)return"";if(l.length===1&&!Array.isArray(t[l[0]])){let I=t[l[0]];return`${n} ${Tyi(l[0],I)[0]}${o}`}}let f=e.split(r).map(I=>`${a} ${I}`).join(r)+r;return n+r+(e?f:"")+(e&&l.length>0?a+r:"")+A+o}function Tyi(e,t){return[...Zbi,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function yQa(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var bQa=yQa;function EQa(e){let t=bQa(e);t&&(e=e.slice(t.length+1));let r=hQa(e),{pragmas:n,comments:a}=CQa(r);return{shebang:t,text:e,pragmas:n,comments:a}}function SQa(e){let{shebang:t,text:r,pragmas:n,comments:a}=EQa(e),o=mQa(r),l=_Qa({pragmas:{format:"",...n},comments:a.trimStart()});return(t?`${t} -`:"")+l+(o.startsWith(` -`)?` -`:` - -`)+o}function vQa(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var BQa=vQa;function WTr(e,t){var r,n,a,o,l,A,f,I,C;if(e.isRoot)return!1;let{node:b,key:E,parent:N}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&NQa(b)&&E4e(e))return!0;if(wQa(b))return!1;if(b.type==="Identifier"){if((r=b.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(b.name)||E==="left"&&(b.name==="async"&&!N.await||b.name==="let")&&N.type==="ForOfStatement")return!0;if(b.name==="let"){let B=(n=e.findAncestor(F=>F.type==="ForOfStatement"))==null?void 0:n.left;if(B&&JZ(B,F=>F===b))return!0}if(E==="object"&&b.name==="let"&&N.type==="MemberExpression"&&N.computed&&!N.optional){let B=e.findAncestor(Q=>Q.type==="ExpressionStatement"||Q.type==="ForStatement"||Q.type==="ForInStatement"),F=B?B.type==="ExpressionStatement"?B.expression:B.type==="ForStatement"?B.init:B.left:void 0;if(F&&JZ(F,Q=>Q===b))return!0}if(E==="expression")switch(b.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let B=e.findAncestor(F=>!nj(F));if(B!==N&&B.type==="ExpressionStatement")return!0}}return!1}if(b.type==="ObjectExpression"||b.type==="FunctionExpression"||b.type==="ClassExpression"||b.type==="DoExpression"){let B=(a=e.findAncestor(F=>F.type==="ExpressionStatement"))==null?void 0:a.expression;if(B&&JZ(B,F=>F===b))return!0}if(b.type==="ObjectExpression"){let B=(o=e.findAncestor(F=>F.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(B&&B.type!=="SequenceExpression"&&B.type!=="AssignmentExpression"&&JZ(B,F=>F===b))return!0}switch(N.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(E==="superClass"&&(b.type==="ArrowFunctionExpression"||b.type==="AssignmentExpression"||b.type==="AwaitExpression"||b.type==="BinaryExpression"||b.type==="ConditionalExpression"||b.type==="LogicalExpression"||b.type==="NewExpression"||b.type==="ObjectExpression"||b.type==="SequenceExpression"||b.type==="TaggedTemplateExpression"||b.type==="UnaryExpression"||b.type==="UpdateExpression"||b.type==="YieldExpression"||b.type==="TSNonNullExpression"||b.type==="ClassExpression"&&H_(b.decorators)))return!0;break;case"ExportDefaultDeclaration":return Lbi(e,t)||b.type==="SequenceExpression";case"Decorator":if(E==="expression"&&!kQa(b))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression")&&RQa(b))return!0;break;case"BinaryExpression":if(E==="left"&&(N.operator==="in"||N.operator==="instanceof")&&b.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(E==="init"&&e.match(void 0,void 0,(B,F)=>F==="declarations"&&B.type==="VariableDeclaration",(B,F)=>F==="left"&&B.type==="ForInStatement"))return!0;break}switch(b.type){case"UpdateExpression":if(N.type==="UnaryExpression")return b.prefix&&(b.operator==="++"&&N.operator==="+"||b.operator==="--"&&N.operator==="-");case"UnaryExpression":switch(N.type){case"UnaryExpression":return b.operator===N.operator&&(b.operator==="+"||b.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"BinaryExpression":return E==="left"&&N.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(N.type==="UpdateExpression"||b.operator==="in"&&TQa(e))return!0;if(b.operator==="|>"&&(l=b.extra)!=null&&l.parenthesized){let B=e.grandparent;if(B.type==="BinaryExpression"&&B.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(N.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!nj(b);case"ConditionalExpression":return nj(b)||oHa(b);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return E==="callee";case"ClassExpression":case"ClassDeclaration":return E==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"AssignmentExpression":case"AssignmentPattern":return E==="left"&&(b.type==="TSTypeAssertion"||nj(b));case"LogicalExpression":if(b.type==="LogicalExpression")return N.operator!==b.operator;case"BinaryExpression":{let{operator:B,type:F}=b;if(!B&&F!=="TSTypeAssertion")return!0;let Q=jyt(B),X=N.operator,ae=jyt(X);return ae>Q||E==="right"&&ae===Q||ae===Q&&!tRr(X,B)?!0:ae");default:return!1}case"TSFunctionType":if(e.match(B=>B.type==="TSFunctionType",(B,F)=>F==="typeAnnotation"&&B.type==="TSTypeAnnotation",(B,F)=>F==="returnType"&&B.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(E==="extendsType"&&oce(b)&&N.type===b.type||E==="checkType"&&oce(N))return!0;if(E==="extendsType"&&N.type==="TSConditionalType"){let{typeAnnotation:B}=b.returnType||b.typeAnnotation;if(B.type==="TSTypePredicate"&&B.typeAnnotation&&(B=B.typeAnnotation.typeAnnotation),B.type==="TSInferType"&&B.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((sce(N)||rRr(N))&&N.types.length>1&&(!b.types||b.types.length>1))return!0;case"TSInferType":if(b.type==="TSInferType"){if(N.type==="TSRestType")return!1;if(E==="types"&&(N.type==="TSUnionType"||N.type==="TSIntersectionType")&&b.typeParameter.type==="TSTypeParameter"&&b.typeParameter.constraint)return!0}case"TSTypeOperator":return N.type==="TSArrayType"||N.type==="TSOptionalType"||N.type==="TSRestType"||E==="objectType"&&N.type==="TSIndexedAccessType"||N.type==="TSTypeOperator"||N.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return E==="objectType"&&N.type==="TSIndexedAccessType"||E==="elementType"&&N.type==="TSArrayType";case"TypeOperator":return N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||N.type==="TypeOperator";case"TypeofTypeAnnotation":return E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType")||E==="elementType"&&N.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return N.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return N.type==="TypeOperator"||N.type==="ArrayTypeAnnotation"||N.type==="NullableTypeAnnotation"||N.type==="IntersectionTypeAnnotation"||N.type==="UnionTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return N.type==="ArrayTypeAnnotation"||E==="objectType"&&(N.type==="IndexedAccessType"||N.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(b.type==="ComponentTypeAnnotation"&&(b.rendersType===null||b.rendersType===void 0))return!1;if(e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression")||e.match(void 0,(F,Q)=>Q==="typeAnnotation"&&F.type==="TypePredicate",(F,Q)=>Q==="typeAnnotation"&&F.type==="TypeAnnotation",(F,Q)=>Q==="returnType"&&F.type==="ArrowFunctionExpression"))return!0;let B=N.type==="NullableTypeAnnotation"?e.grandparent:N;return B.type==="UnionTypeAnnotation"||B.type==="IntersectionTypeAnnotation"||B.type==="ArrayTypeAnnotation"||E==="objectType"&&(B.type==="IndexedAccessType"||B.type==="OptionalIndexedAccessType")||E==="checkType"&&N.type==="ConditionalTypeAnnotation"||E==="extendsType"&&N.type==="ConditionalTypeAnnotation"&&((A=b.returnType)==null?void 0:A.type)==="InferTypeAnnotation"&&((f=b.returnType)==null?void 0:f.typeParameter.bound)||B.type==="NullableTypeAnnotation"||N.type==="FunctionTypeParam"&&N.name===null&&NG(b).some(F=>{var Q;return((Q=F.typeAnnotation)==null?void 0:Q.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return E==="objectType"&&N.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof b.value=="string"&&N.type==="ExpressionStatement"&&!N.directive){let B=e.grandparent;return B.type==="Program"||B.type==="BlockStatement"}return E==="object"&&N.type==="MemberExpression"&&typeof b.value=="number";case"AssignmentExpression":{let B=e.grandparent;return E==="body"&&N.type==="ArrowFunctionExpression"?!0:E==="key"&&(N.type==="ClassProperty"||N.type==="PropertyDefinition")&&N.computed||(E==="init"||E==="update")&&N.type==="ForStatement"?!1:N.type==="ExpressionStatement"?b.left.type==="ObjectPattern":!(E==="key"&&N.type==="TSPropertySignature"||N.type==="AssignmentExpression"||N.type==="SequenceExpression"&&B.type==="ForStatement"&&(B.init===N||B.update===N)||E==="value"&&N.type==="Property"&&B.type==="ObjectPattern"&&B.properties.includes(N)||N.type==="NGChainedExpression"||E==="node"&&N.type==="JsExpressionRoot")}case"ConditionalExpression":switch(N.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:E==="test";case"MemberExpression":case"OptionalMemberExpression":return E==="object";default:return!1}case"FunctionExpression":switch(N.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(N.type){case"BinaryExpression":return N.operator!=="|>"||((I=b.extra)==null?void 0:I.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return E==="callee";case"MemberExpression":case"OptionalMemberExpression":return E==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return E==="test";default:return!1}case"ClassExpression":switch(N.type){case"NewExpression":return E==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(DQa(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")){let B=b;for(;B;)switch(B.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":B=B.object;break;case"TaggedTemplateExpression":B=B.tag;break;case"TSNonNullExpression":B=B.expression;break;default:return!1}}return!1;case"BindExpression":return E==="callee"&&(N.type==="BindExpression"||N.type==="NewExpression")||E==="object"&&Yv(N);case"NGPipeExpression":return!(N.type==="NGRoot"||N.type==="NGMicrosyntaxExpression"||N.type==="ObjectProperty"&&!((C=b.extra)!=null&&C.parenthesized)||Vk(N)||E==="arguments"&&b_(N)||E==="right"&&N.type==="NGPipeExpression"||E==="property"&&N.type==="MemberExpression"||N.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return E==="callee"||E==="left"&&N.type==="BinaryExpression"&&N.operator==="<"||!Vk(N)&&N.type!=="ArrowFunctionExpression"&&N.type!=="AssignmentExpression"&&N.type!=="AssignmentPattern"&&N.type!=="BinaryExpression"&&N.type!=="NewExpression"&&N.type!=="ConditionalExpression"&&N.type!=="ExpressionStatement"&&N.type!=="JsExpressionRoot"&&N.type!=="JSXAttribute"&&N.type!=="JSXElement"&&N.type!=="JSXExpressionContainer"&&N.type!=="JSXFragment"&&N.type!=="LogicalExpression"&&!b_(N)&&!Iee(N)&&N.type!=="ReturnStatement"&&N.type!=="ThrowStatement"&&N.type!=="TypeCastExpression"&&N.type!=="VariableDeclarator"&&N.type!=="YieldExpression";case"TSInstantiationExpression":return E==="object"&&Yv(N)}return!1}var wQa=_0(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function TQa(e){let t=0,{node:r}=e;for(;r;){let n=e.getParentNode(t++);if(n?.type==="ForStatement"&&n.init===r)return!0;r=n}return!1}function RQa(e){return DTr(e,t=>t.type==="ObjectTypeAnnotation"&&DTr(t,r=>r.type==="FunctionTypeAnnotation"))}function NQa(e){return e4(e)}function E4e(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(E4e);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(E4e);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(E4e);break;case"UnaryExpression":if(t.prefix)return e.callParent(E4e);break}return!1}function Lbi(e,t){let{node:r,parent:n}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?n.type==="ExportDefaultDeclaration"||!WTr(e,t):!zTr(r)||n.type!=="ExportDefaultDeclaration"&&WTr(e,t)?!1:e.call(()=>Lbi(e,t),...qyi(r))}function DQa(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function OTr(e){return e.type==="Identifier"?!0:Yv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&OTr(e.object):!1}function kQa(e){return e.type==="ChainExpression"&&(e=e.expression),OTr(e)||b_(e)&&!e.optional&&OTr(e.callee)}var Eme=WTr;function xQa(e,t){let r=t-1;r=WRe(e,r,{backwards:!0}),r=ORe(e,r,{backwards:!0}),r=WRe(e,r,{backwards:!0});let n=ORe(e,r,{backwards:!0});return r!==n}var GQa=xQa,FQa=()=>!0;function ARr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function ZQa(e,t){var r;let n=e.node,a=[ARr(e,t)],{printer:o,originalText:l,locStart:A,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,n)){let C=dO(l,f(n))?dO(l,A(n),{backwards:!0})?xl:zg:" ";a.push(C)}else a.push(xl);let I=ORe(l,WRe(l,f(n)));return I!==!1&&dO(l,I)&&a.push(xl),a}function LQa(e,t,r){var n;let a=e.node,o=ARr(e,t),{printer:l,originalText:A,locStart:f}=t,I=(n=l.isBlockComment)==null?void 0:n.call(l,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||dO(A,f(a),{backwards:!0})){let C=GQa(A,f(a));return{doc:Syi([xl,C?xl:"",o]),isBlock:I,hasLineSuffix:!0}}return!I||r!=null&&r.hasLineSuffix?{doc:[Syi([" ",o]),aj],isBlock:I,hasLineSuffix:!0}:{doc:[" ",o],isBlock:I,hasLineSuffix:!1}}function N2(e,t,r={}){let{node:n}=e;if(!H_(n?.comments))return"";let{indent:a=!1,marker:o,filter:l=FQa}=r,A=[];if(e.each(({node:I})=>{I.leading||I.trailing||I.marker!==o||!l(I)||A.push(ARr(e,t))},"comments"),A.length===0)return"";let f=vC(xl,A);return a?Pl([xl,f]):f}function Vbi(e,t){let r=e.node;if(!r)return{};let n=t[Symbol.for("printedComments")];if((r.comments||[]).filter(A=>!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(ZQa(e,t)):I&&(l=LQa(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function $X(e,t,r){let{leading:n,trailing:a}=Vbi(e,r);return!n&&!a?t:GTr(t,o=>[n,o,a])}var VQa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},KRe=VQa;function PQa(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var zX,WQa=class{constructor(e){IMa(this,zX),hMa(this,zX,new Set(e))}getLeadingWhitespaceCount(e){let t=ece(this,zX),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return ece(this,zX).has(e.charAt(0))}hasTrailingWhitespace(e){return ece(this,zX).has(U0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${PQa([...ece(this,zX)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=ece(this,zX);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=ece(this,zX);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=ece(this,zX);return Array.prototype.every.call(e,r=>t.has(r))}};zX=new WeakMap;var OQa=WQa,Jyt=new OQa(` -\r `),vTr=e=>e===""||e===zg||e===xl||e===bl;function MQa(e,t,r){var n,a,o,l,A;let{node:f}=e;if(f.type==="JSXElement"&&nXa(f))return[r("openingElement"),r("closingElement")];let I=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),C=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[I,...e.map(r,"children"),C];f.children=f.children.map(be=>iXa(be)?{type:"JSXText",value:" ",raw:" "}:be);let b=f.children.some(nD),E=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,N=f.type==="JSXElement"&&f.openingElement.attributes.length>1,B=UZ(I)||b||N||E,F=e.parent.rootMarker==="mdx",Q=t.singleQuote?"{' '}":'{" "}',X=F?zg:lh([Q,bl]," "),ae=((a=(n=f.openingElement)==null?void 0:n.name)==null?void 0:a.name)==="fbt",ne=HQa(e,t,r,X,ae),ce=f.children.some(be=>R4e(be));for(let be=ne.length-2;be>=0;be--){let Se=ne[be]===""&&ne[be+1]==="",De=ne[be]===xl&&ne[be+1]===""&&ne[be+2]===xl,k=(ne[be]===bl||ne[be]===xl)&&ne[be+1]===""&&ne[be+2]===X,et=ne[be]===X&&ne[be+1]===""&&(ne[be+2]===bl||ne[be+2]===xl),ct=ne[be]===X&&ne[be+1]===""&&ne[be+2]===X,Me=ne[be]===bl&&ne[be+1]===""&&ne[be+2]===xl||ne[be]===xl&&ne[be+1]===""&&ne[be+2]===bl;De&&ce||Se||k||ct||Me?ne.splice(be,2):et&&ne.splice(be+1,2)}for(;ne.length>0&&vTr(U0(!1,ne,-1));)ne.pop();for(;ne.length>1&&vTr(ne[0])&&vTr(ne[1]);)ne.shift(),ne.shift();let fe=[""];for(let[be,Se]of ne.entries()){if(Se===X){if(be===1&&FHa(ne[be-1])){if(ne.length===2){fe.push([fe.pop(),Q]);continue}fe.push([Q,xl],"");continue}else if(be===ne.length-1){fe.push([fe.pop(),Q]);continue}else if(ne[be-1]===""&&ne[be-2]===xl){fe.push([fe.pop(),Q]);continue}}be%2===0?fe.push([fe.pop(),Se]):fe.push(Se,""),UZ(Se)&&(B=!0)}let ue=ce?dbi(fe):Ia(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?ue=[Yyt,ue,Yyt]:((l=t.nodeBeforeCursor)==null?void 0:l.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?ue=[Yyt,ue]:((A=t.nodeAfterCursor)==null?void 0:A.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(ue=[ue,Yyt]),F)return ue;let de=Ia([I,Pl([xl,ue]),xl,C]);return B?de:dme([Ia([I,...ne,C]),de])}function HQa(e,t,r,n,a){let o="",l=[o];function A(I){o=I,l.push([l.pop(),I])}function f(I){I!==""&&(o=I,l.push(I,""))}return e.each(({node:I,next:C})=>{if(I.type==="JSXText"){let b=UM(I);if(R4e(I)){let E=Jyt.split(b,!0);E[0]===""&&(E.shift(),/\n/u.test(E[0])?f(Nyi(a,E[1],I,C)):f(n),E.shift());let N;if(U0(!1,E,-1)===""&&(E.pop(),N=E.pop()),E.length===0)return;for(let[B,F]of E.entries())B%2===1?f(zg):A(F);N!==void 0?/\n/u.test(N)?f(Nyi(a,o,I,C)):f(n):f(Ryi(a,o,I,C))}else/\n/u.test(b)?b.match(/\n/gu).length>1&&f(xl):f(n)}else{let b=r();if(A(b),C&&R4e(C)){let E=Jyt.trim(UM(C)),[N]=Jyt.split(E);f(Ryi(a,N,I,C))}else f(xl)}},"children"),l}function Ryi(e,t,r,n){return e?"":r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?t.length===1?bl:xl:bl}function Nyi(e,t,r,n){return e?xl:t.length===1?r.type==="JSXElement"&&!r.closingElement||n?.type==="JSXElement"&&!n.closingElement?xl:bl:xl}var YQa=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function QQa(e,t,r){let{parent:n}=e;if(YQa.has(n.type))return t;let a=e.match(void 0,l=>l.type==="ArrowFunctionExpression",b_,l=>l.type==="JSXExpressionContainer"),o=Eme(e,r);return Ia([o?"":lh("("),Pl([bl,t]),bl,o?"":lh(")")],{shouldBreak:a})}function XQa(e,t,r){let{node:n}=e,a=[];if(a.push(r("name")),n.value){let o;if(gV(n.value)){let l=UM(n.value),A=Zk(!1,Zk(!1,l.slice(1,-1),"'","'"),""",'"'),f=Jyi(A,t.jsxSingleQuote);A=f==='"'?Zk(!1,A,'"',"""):Zk(!1,A,"'","'"),o=e.call(()=>$X(e,pme(f+A+f),t),"value")}else o=r("value");a.push("=",o)}return a}function JQa(e,t,r){let{node:n}=e,a=(o,l)=>o.type==="JSXEmptyExpression"||!ig(o)&&(Vk(o)||e4(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||b_(o)||o.type==="ChainExpression"&&b_(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||nD(l)&&(o.type==="ConditionalExpression"||gee(o)));return a(n.expression,e.parent)?Ia(["{",r("expression"),dee,"}"]):Ia(["{",Pl([bl,r("expression")]),bl,dee,"}"])}function UQa(e,t,r){var n,a;let{node:o}=e,l=ig(o.name)||ig(o.typeParameters)||ig(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!l)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((n=o.attributes)==null?void 0:n.length)===1&&gV(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` -`)&&!l&&!ig(o.attributes[0]))return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),o.selfClosing?" />":">"]);let A=(a=o.attributes)==null?void 0:a.some(I=>gV(I.value)&&I.value.value.includes(` -`)),f=t.singleAttributePerLine&&o.attributes.length>1?xl:zg;return Ia(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),Pl(e.map(()=>[f,r()],"attributes")),...KQa(o,t,l)],{shouldBreak:A})}function KQa(e,t,r){return e.selfClosing?[zg,"/>"]:jQa(e,t,r)?[">"]:[bl,">"]}function jQa(e,t,r){let n=e.attributes.length>0&&ig(U0(!1,e.attributes,-1),fA.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!n}function zQa(e,t,r){let{node:n}=e,a=[];a.push(""),a}function qQa(e,t){let{node:r}=e,n=ig(r),a=ig(r,fA.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function $Qa(e,t,r){let n=$X(e,MQa(e,t,r),t);return QQa(e,n,t)}function eXa(e,t){let{node:r}=e,n=ig(r,fA.Line);return[N2(e,t,{indent:n}),n?xl:""]}function tXa(e,t,r){let{node:n}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!ig(a)||!wbi(e)?o:[Pl([bl,$X(e,o,t)]),bl]},n.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function rXa(e,t,r){let{node:n}=e;if(n.type.startsWith("JSX"))switch(n.type){case"JSXAttribute":return XQa(e,t,r);case"JSXIdentifier":return n.name;case"JSXNamespacedName":return vC(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return vC(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return tXa(e,t,r);case"JSXExpressionContainer":return JQa(e,t,r);case"JSXFragment":case"JSXElement":return $Qa(e,t,r);case"JSXOpeningElement":return UQa(e,t,r);case"JSXClosingElement":return zQa(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return qQa(e,t);case"JSXEmptyExpression":return eXa(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new KRe(n,"JSX")}}function nXa(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!R4e(t)}function R4e(e){return e.type==="JSXText"&&(Jyt.hasNonWhitespaceCharacter(UM(e))||!/\n/u.test(UM(e)))}function iXa(e){return e.type==="JSXExpressionContainer"&&gV(e.expression)&&e.expression.value===" "&&!ig(e.expression)}function sXa(e){let{node:t,parent:r}=e;if(!nD(t)||!nD(r))return!1;let{index:n,siblings:a}=e,o;for(let l=n;l>0;l--){let A=a[l-1];if(!(A.type==="JSXText"&&!R4e(A))){o=A;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&obt(o.expression)}function oXa(e){return obt(e.node)||sXa(e)}var Pbi=oXa,aXa=0;function Wbi(e,t,r){var n;let{node:a,parent:o,grandparent:l,key:A}=e,f=A!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),I=a.operator==="|>"&&((n=e.root.extra)==null?void 0:n.__isUsingHackPipeline),C=MTr(e,r,t,!1,f);if(f)return C;if(I)return Ia(C);if(b_(o)&&o.callee===a||o.type==="UnaryExpression"||Yv(o)&&!o.computed)return Ia([Pl([bl,...C]),bl]);let b=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&l.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&l.type==="NGMicrosyntax"&&l.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&l.type!=="ReturnStatement"&&l.type!=="ThrowStatement"&&!b_(l)||o.type==="TemplateLiteral",E=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||Iee(o),N=gee(a.left)&&tRr(a.operator,a.left.operator);if(b||N4e(a)&&!N||!N4e(a)&&E)return Ia(C);if(C.length===0)return"";let B=nD(a.right),F=C.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===KM),Q=C.slice(0,F===-1?1:F+1),X=C.slice(Q.length,B?-1:void 0),ae=Symbol("logicalChain-"+ ++aXa),ne=Ia([...Q,Pl(X)],{id:ae});if(!B)return ne;let ce=U0(!1,C,-1);return Ia([ne,abt(ce,{groupId:ae})])}function MTr(e,t,r,n,a){var o;let{node:l}=e;if(!gee(l))return[Ia(t())];let A=[];tRr(l.operator,l.left.operator)?A=e.call(Q=>MTr(Q,t,r,!0,a),"left"):A.push(Ia(t("left")));let f=N4e(l),I=(l.operator==="|>"||l.type==="NGPipeExpression"||cXa(e,r))&&!ice(r.originalText,l.right),C=!ig(l.right,fA.Leading,hbi)&&ice(r.originalText,l.right),b=l.type==="NGPipeExpression"?"|":l.operator,E=l.type==="NGPipeExpression"&&l.arguments.length>0?Ia(Pl([bl,": ",vC([zg,": "],e.map(()=>oj(2,Ia(t())),"arguments"))])):"",N;if(f)N=[b," ",t("right"),E];else{let Q=b==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(X=>MTr(X,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let X="";if(C)switch(uce(Q)){case Aee:X=Q.splice(0,1)[0];break;case hee:X=Q.contents.splice(0,1)[0];break}N=[zg,X,b," ",Q,E]}else N=[I?zg:"",b,I?" ":zg,Q,E]}let{parent:B}=e,F=ig(l.left,fA.Trailing|fA.Line);if((F||!(a&&l.type==="LogicalExpression")&&B.type!==l.type&&l.left.type!==l.type&&l.right.type!==l.type)&&(N=Ia(N,{shouldBreak:F})),r.experimentalOperatorPosition==="start"?A.push(f||C?" ":"",N):A.push(I?"":" ",N),n&&ig(l)){let Q=iRr($X(e,A,r));return Q.type===cce?Q.parts:Array.isArray(Q)?Q:[Q]}return A}function N4e(e){return e.type!=="LogicalExpression"?!1:!!(e4(e.right)&&e.right.properties.length>0||Vk(e.right)&&e.right.elements.length>0||nD(e.right))}var Dyi=e=>e.type==="BinaryExpression"&&e.operator==="|";function cXa(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&Dyi(e.node)&&!e.hasAncestor(r=>!Dyi(r)&&r.type!=="JsExpressionRoot")}function lXa(e,t,r){let{node:n}=e;if(n.type.startsWith("NG"))switch(n.type){case"NGRoot":return[r("node"),ig(n.node)?" //"+VRe(n.node)[0].value.trimEnd():""];case"NGPipeExpression":return Wbi(e,t,r);case"NGChainedExpression":return Ia(vC([";",zg],e.map(()=>gXa(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":kyi(e)?" ":[";",zg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(n.name)?n.name:JSON.stringify(n.name);case"NGMicrosyntaxExpression":return[r("expression"),n.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,l=kyi(e)||(a===1&&(n.key.name==="then"||n.key.name==="else"||n.key.name==="as")||(a===2||a===3)&&(n.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||n.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),l?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),n.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new KRe(n,"Angular")}}function kyi({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var uXa=_0(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function gXa({node:e}){return DTr(e,uXa)}function Obi(e,t,r){let{node:n}=e;return Ia([vC(zg,e.map(r,"decorators")),Mbi(n,t)?xl:zg])}function AXa(e,t,r){return Hbi(e.node)?[vC(xl,e.map(r,"declaration","decorators")),xl]:""}function dXa(e,t,r){let{node:n,parent:a}=e,{decorators:o}=n;if(!H_(o)||Hbi(a)||Pbi(e))return"";let l=n.type==="ClassExpression"||n.type==="ClassDeclaration"||Mbi(n,t);return[e.key==="declaration"&&sHa(a)?xl:l?aj:"",vC(zg,e.map(r,"decorators")),zg]}function Mbi(e,t){return e.decorators.some(r=>dO(t.originalText,BC(r)))}function Hbi(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return H_(r)&&nbt(e,r[0])}var $yt=class extends Error{name="ArgExpansionBailout"};function pXa(e,t,r){let{node:n}=e,a=qM(n);if(a.length===0)return["(",N2(e,t),")"];let o=a.length-1;if(hXa(a)){let b=["("];return zyt(e,(E,N)=>{b.push(r()),N!==o&&b.push(", ")}),b.push(")"),b}let l=!1,A=[];zyt(e,({node:b},E)=>{let N=r();E===o||(fee(b,t)?(l=!0,N=[N,",",xl,xl]):N=[N,",",zg]),A.push(N)});let f=!t.parser.startsWith("__ng_")&&n.type!=="ImportExpression"&&pee(t,"all")?",":"";function I(){return Ia(["(",Pl([zg,...A]),f,zg,")"],{shouldBreak:!0})}if(l||e.parent.type!=="Decorator"&&fHa(a))return I();if(IXa(a)){let b=A.slice(1);if(b.some(UZ))return I();let E;try{E=r(yyi(n,0),{expandFirstArg:!0})}catch(N){if(N instanceof $yt)return I();throw N}return UZ(E)?[aj,dme([["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])]:dme([["(",E,", ",...b,")"],["(",Ia(E,{shouldBreak:!0}),", ",...b,")"],I()])}if(fXa(a,A,t)){let b=A.slice(0,-1);if(b.some(UZ))return I();let E;try{E=r(yyi(n,-1),{expandLastArg:!0})}catch(N){if(N instanceof $yt)return I();throw N}return UZ(E)?[aj,dme([["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])]:dme([["(",...b,E,")"],["(",...b,Ia(E,{shouldBreak:!0}),")"],I()])}let C=["(",Pl([bl,...A]),lh(f),bl,")"];return obi(e)?C:Ia(C,{shouldBreak:A.some(UZ)||l})}function v4e(e,t=!1){return e4(e)&&(e.properties.length>0||ig(e))||Vk(e)&&(e.elements.length>0||ig(e))||e.type==="TSTypeAssertion"&&v4e(e.expression)||nj(e)&&v4e(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||mXa(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&v4e(e.body,!0)||e4(e.body)||Vk(e.body)||!t&&(b_(e.body)||e.body.type==="ConditionalExpression")||nD(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function fXa(e,t,r){var n,a;let o=U0(!1,e,-1);if(e.length===1){let A=U0(!1,t,-1);if((n=A.label)!=null&&n.embed&&((a=A.label)==null?void 0:a.hug)!==!1)return!0}let l=U0(!1,e,-2);return!ig(o,fA.Leading)&&!ig(o,fA.Trailing)&&v4e(o)&&(!l||l.type!==o.type)&&(e.length!==2||l.type!=="ArrowFunctionExpression"||!Vk(o))&&!(e.length>1&&fEi(o,r))}function IXa(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&CXa(r)?!0:!ig(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&Ybi(r)&&!v4e(r)}function Ybi(e){if(e.type==="ParenthesizedExpression")return Ybi(e.expression);if(nj(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return $Tr(t)&&qX(e.expression,1)}return HRe(e)&&qM(e).length>1?!1:gee(e)?qX(e.left,1)&&qX(e.right,1):ebi(e)||qX(e)}function hXa(e){return e.length===2?xyi(e,0):e.length===3?e[0].type==="Identifier"&&xyi(e,1):!1}function xyi(e,t){let r=e[t],n=e[t+1];return r.type==="ArrowFunctionExpression"&&NG(r).length===0&&r.body.type==="BlockStatement"&&n.type==="ArrayExpression"&&!e.some(a=>ig(a))}function mXa(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||ig(e,fA.Dangling))}function CXa(e){return e.type==="ObjectExpression"&&e.properties.length===1&&Iee(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&gV(e.properties[0].value)&&e.properties[0].value.value==="module"}var HTr=pXa,_Xa=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),b_(e)&&qM(e).length>0);function yXa(e,t,r){var n;let a=r("object"),o=Qbi(e,t,r),{node:l}=e,A=e.findAncestor(C=>!(Yv(C)||C.type==="TSNonNullExpression")),f=e.findAncestor(C=>!(C.type==="ChainExpression"||C.type==="TSNonNullExpression")),I=A&&(A.type==="NewExpression"||A.type==="BindExpression"||A.type==="AssignmentExpression"&&A.left.type!=="Identifier")||l.computed||l.object.type==="Identifier"&&l.property.type==="Identifier"&&!Yv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(_Xa(l.object)||((n=a.label)==null?void 0:n.memberChain));return D4e(a.label,[a,I?o:Ia(Pl([bl,o]))])}function Qbi(e,t,r){let n=r("property"),{node:a}=e,o=KZ(e);return a.computed?!a.property||uee(a.property)?[o,"[",n,"]"]:Ia([o,"[",Pl([bl,n]),bl,"]"]):[o,".",n]}function Xbi(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>Xbi(e,t,r),"expression");let{parent:n}=e,a=!n||n.type==="ExpressionStatement",o=[];function l(Me){let{originalText:je}=t,St=URe(je,BC(Me));return je.charAt(St)===")"?St!==!1&&KTr(je,St+1):fee(Me,t)}function A(){let{node:Me}=e;if(Me.type==="ChainExpression")return e.call(A,"expression");if(b_(Me)&&(ZRe(Me.callee)||b_(Me.callee))){let je=l(Me);o.unshift({node:Me,hasTrailingEmptyLine:je,printed:[$X(e,[KZ(e),fme(e,t,r),HTr(e,t,r)],t),je?xl:""]}),e.call(A,"callee")}else ZRe(Me)?(o.unshift({node:Me,needsParens:Eme(e,t),printed:$X(e,Yv(Me)?Qbi(e,t,r):dEi(e,t,r),t)}),e.call(A,"object")):Me.type==="TSNonNullExpression"?(o.unshift({node:Me,printed:$X(e,"!",t)}),e.call(A,"expression")):o.unshift({node:Me,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[KZ(e),fme(e,t,r),HTr(e,t,r)]}),f.callee&&e.call(A,"callee");let I=[],C=[o[0]],b=1;for(;b0&&I.push(C);function N(Me){return/^[A-Z]|^[$_]+$/u.test(Me)}function B(Me){return Me.length<=t.tabWidth}function F(Me){var je;let St=(je=Me[1][0])==null?void 0:je.node.computed;if(Me[0].length===1){let Yt=Me[0][0].node;return Yt.type==="ThisExpression"||Yt.type==="Identifier"&&(N(Yt.name)||a&&B(Yt.name)||St)}let At=U0(!1,Me[0],-1).node;return Yv(At)&&At.property.type==="Identifier"&&(N(At.property.name)||St)}let Q=I.length>=2&&!ig(I[1][0].node)&&F(I);function X(Me){let je=Me.map(St=>St.printed);return Me.length>0&&U0(!1,Me,-1).needsParens?["(",...je,")"]:je}function ae(Me){return Me.length===0?"":Pl([xl,vC(xl,Me.map(X))])}let ne=I.map(X),ce=ne,fe=Q?3:2,ue=I.flat(),de=ue.slice(1,-1).some(Me=>ig(Me.node,fA.Leading))||ue.slice(0,-1).some(Me=>ig(Me.node,fA.Trailing))||I[fe]&&ig(I[fe][0].node,fA.Leading);if(I.length<=fe&&!de&&!I.some(Me=>U0(!1,Me,-1).hasTrailingEmptyLine))return obi(e)?ce:Ia(ce);let be=U0(!1,I[Q?1:0],-1).node,Se=!b_(be)&&l(be),De=[X(I[0]),Q?I.slice(1,2).map(X):"",Se?xl:"",ae(I.slice(Q?2:1))],k=o.map(({node:Me})=>Me).filter(b_);function et(){let Me=U0(!1,U0(!1,I,-1),-1).node,je=U0(!1,ne,-1);return b_(Me)&&UZ(je)&&k.slice(0,-1).some(St=>St.arguments.some(w4e))}let ct;return de||k.length>2&&k.some(Me=>!Me.arguments.every(je=>qX(je)))||ne.slice(0,-1).some(UZ)||et()?ct=Ia(De):ct=[UZ(ce)||Se?aj:"",dme([ce,De])],D4e({memberChain:!0},ct)}var bXa=Xbi;function Jbi(e,t,r){var n;let{node:a}=e,o=a.type==="NewExpression",l=a.type==="ImportExpression",A=KZ(e),f=qM(a),I=f.length===1&&ibi(f[0],t.originalText);if(I||EXa(e)||sbt(a,e.parent)){let b=[];if(zyt(e,()=>{b.push(r())}),!(I&&(n=b[0].label)!=null&&n.embed))return[o?"new ":"",Gyi(e,r),A,fme(e,t,r),"(",vC(", ",b),")"]}if(!l&&!o&&ZRe(a.callee)&&!e.call(b=>Eme(b,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return bXa(e,t,r);let C=[o?"new ":"",Gyi(e,r),A,fme(e,t,r),HTr(e,t,r)];return l||b_(a.callee)?Ia(C):C}function Gyi(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function EXa(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=qM(t);return t.callee.name==="require"?r.length===1&&gV(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&gV(r[0])&&r[1].type==="ArrayExpression":!1}function k4e(e,t,r,n,a,o){let l=BXa(e,t,r,n,o),A=o?r(o,{assignmentLayout:l}):"";switch(l){case"break-after-operator":return Ia([Ia(n),a,Ia(Pl([zg,A]))]);case"never-break-after-operator":return Ia([Ia(n),a," ",A]);case"fluid":{let f=Symbol("assignment");return Ia([Ia(n),a,Ia(Pl(zg),{id:f}),dee,abt(A,{groupId:f})])}case"break-lhs":return Ia([n,a," ",Ia(A)]);case"chain":return[Ia(n),a,zg,A];case"chain-tail":return[Ia(n),a,Pl([zg,A])];case"chain-tail-arrow-chain":return[Ia(n),a,A];case"only-left":return n}}function SXa(e,t,r){let{node:n}=e;return k4e(e,t,r,r("left"),[" ",n.operator],"right")}function vXa(e,t,r){return k4e(e,t,r,r("id")," =","init")}function BXa(e,t,r,n,a){let{node:o}=e,l=o[a];if(!l)return"only-left";let A=!Uyt(l);if(e.match(Uyt,Ubi,C=>!A||C.type!=="ExpressionStatement"&&C.type!=="VariableDeclaration"))return A?l.type==="ArrowFunctionExpression"&&l.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!A&&Uyt(l.right)||ice(t.originalText,l))return"break-after-operator";if(o.type==="ImportAttribute"||l.type==="CallExpression"&&l.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=GHa(n);if(TXa(o)||kXa(o)||Kbi(o)&&f)return"break-lhs";let I=GXa(o,n,t);return e.call(()=>wXa(e,t,r,I),a)?"break-after-operator":RXa(o)?"break-lhs":!f&&(I||l.type==="TemplateLiteral"||l.type==="TaggedTemplateExpression"||l.type==="BooleanLiteral"||uee(l)||l.type==="ClassExpression")?"never-break-after-operator":"fluid"}function wXa(e,t,r,n){let a=e.node;if(gee(a)&&!N4e(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!LXa(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:I}=a;return gee(I)&&!N4e(I)}let{consequent:A,alternate:f}=a;return A.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return H_(a.decorators)}if(n)return!1;let o=a,l=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,l.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,l.push("expression");else break;return!!(gV(o)||e.call(()=>jbi(e,t,r),...l))}function TXa(e){if(Ubi(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var n;return Iee(r)&&(!r.shorthand||((n=r.value)==null?void 0:n.type)==="AssignmentPattern")})}return!1}function Uyt(e){return e.type==="AssignmentExpression"}function Ubi(e){return Uyt(e)||e.type==="VariableDeclarator"}function RXa(e){let t=DXa(e);if(H_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(n=>n[r]||n.default))return!0}return!1}var NXa=_0(["TSTypeAliasDeclaration","TypeAlias"]);function DXa(e){var t;if(NXa(e))return(t=e.typeParameters)==null?void 0:t.params}function kXa(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=Fyi(t.typeAnnotation);return H_(r)&&r.length>1&&r.some(n=>H_(Fyi(n))||n.type==="TSConditionalType")}function Kbi(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var xXa=_0(["TSTypeReference","GenericTypeAnnotation"]);function Fyi(e){var t;if(xXa(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function jbi(e,t,r,n=!1){var a;let{node:o}=e,l=()=>jbi(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(l,"expression");if(b_(o)){if((a=Jbi(e,t,r).label)!=null&&a.memberChain)return!1;let A=qM(o);return!(A.length===0||A.length===1&&eRr(A[0],t))||FXa(o,r)?!1:e.call(l,"callee")}return Yv(o)?e.call(l,"object"):n&&(o.type==="Identifier"||o.type==="ThisExpression")}function GXa(e,t,r){return Iee(e)?(t=iRr(t),typeof t=="string"&&PRe(t)1)return!0;if(r.length===1){let a=r[0];if(sce(a)||rRr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let n=e.typeParameters?"typeParameters":"typeArguments";if(UZ(t(n)))return!0}return!1}function ZXa(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function LXa(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function Sme(e,t,r,n,a){let o=e.node,l=NG(o),A=a?fme(e,r,t):"";if(l.length===0)return[A,"(",N2(e,r,{filter:N=>t4(r.originalText,BC(N))===")"}),")"];let{parent:f}=e,I=sbt(f),C=zbi(o),b=[];if(yHa(e,(N,B)=>{let F=B===l.length-1;F&&o.rest&&b.push("..."),b.push(t()),!F&&(b.push(","),I||C?b.push(" "):fee(l[B],r)?b.push(xl,xl):b.push(zg))}),n&&!PXa(e)){if(UZ(A)||UZ(b))throw new $yt;return Ia([xTr(A),"(",xTr(b),")"])}let E=l.every(N=>!H_(N.decorators));return C&&E?[A,"(",...b,")"]:I?[A,"(",...b,")"]:(tbi(f)||lHa(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&l.length===1&&l[0].name===null&&o.this!==l[0]&&l[0].typeAnnotation&&o.typeParameters===null&&$Tr(l[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...b,")"]:b:[A,"(",Pl([bl,...b]),lh(!_Ha(o)&&pee(r,"all")?",":""),bl,")"]}function zbi(e){if(!e)return!1;let t=NG(e);if(t.length!==1)return!1;let[r]=t;return!ig(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&nce(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&nce(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||e4(r.right)&&r.right.properties.length===0||Vk(r.right)&&r.right.elements.length===0))}function VXa(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function jRe(e,t){var r;let n=VXa(e);if(!n)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return NG(e).length===1&&(nce(n)||UZ(t))}function PXa(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let n=t.callee.callee;return n.type==="Identifier"||n.type==="MemberExpression"&&!n.computed&&n.object.type==="Identifier"&&n.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function WXa(e){let t=NG(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var OXa=_0(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),MXa=_0(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function HXa(e){let{types:t}=e;if(t.some(n=>ig(n)))return!1;let r=t.find(n=>MXa(n));return r?t.every(n=>n===r||OXa(n)):!1}function qbi(e){return $Tr(e)||nce(e)?!0:sce(e)?HXa(e):!1}function YXa(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[AV(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(n),o}function $bi(e,t,r){let n=t.semi?";":"",{node:a}=e,o=[AV(e)];o.push("type ",r("id"),r("typeParameters"));let l=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[k4e(e,t,r,o," =",l),n]}function eEi(e,t,r){let n=!1;return Ia(e.map(({isFirst:a,previous:o,node:l,index:A})=>{let f=r();if(a)return f;let I=nce(l),C=nce(o);return C&&I?[" & ",n?Pl(f):f]:!C&&!I?t.experimentalOperatorPosition==="start"?Pl([zg,"& ",f]):Pl([" &",zg,f]):(A>1&&(n=!0),[" & ",A>1?Pl(f):f])},"types"))}function tEi(e,t,r){let{node:n}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!oce(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&ice(t.originalText,n)),l=qbi(n),A=e.map(C=>{let b=r();return l||(b=oj(2,b)),$X(C,b,t)},"types");if(l)return vC(" | ",A);let f=o&&!ice(t.originalText,n),I=[lh([f?zg:"","| "]),vC([zg,"| "],A)];return Eme(e,t)?Ia([Pl(I),bl]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?Ia([Pl([lh(["(",bl]),I]),bl,lh(")")]):Ia(o?Pl(I):I)}function QXa(e){var t;let{node:r,parent:n}=e;return r.type==="FunctionTypeAnnotation"&&(tbi(n)||!((n.type==="ObjectTypeProperty"||n.type==="ObjectTypeInternalSlot")&&!n.variance&&!n.optional&&nbt(n,r)||n.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function rEi(e,t,r){let{node:n}=e,a=[cbt(e)];(n.type==="TSConstructorType"||n.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=Sme(e,r,t,!1,!0),l=[];return n.type==="FunctionTypeAnnotation"?l.push(QXa(e)?" => ":": ",r("returnType")):l.push(Lk(e,r,n.returnType?"returnType":"typeAnnotation")),jRe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function nEi(e,t,r){return[r("objectType"),KZ(e),"[",r("indexType"),"]"]}function iEi(e,t,r){return["infer ",r("typeParameter")]}function Zyi(e,t,r){let{node:n}=e;return[n.postfix?"":r,Lk(e,t),n.postfix?r:""]}function sEi(e,t,r){let{node:n}=e;return["...",...n.type==="TupleTypeSpreadElement"&&n.label?[r("label"),": "]:[],r("typeAnnotation")]}function oEi(e,t,r){let{node:n}=e;return[n.variance?r("variance"):"",r("label"),n.optional?"?":"",": ",r("elementType")]}var XXa=new WeakSet;function Lk(e,t,r="typeAnnotation"){let{node:{[r]:n}}=e;if(!n)return"";let a=!1;if(n.type==="TSTypeAnnotation"||n.type==="TypeAnnotation"){let o=e.call(aEi,r);(o==="=>"||o===":"&&ig(n,fA.Leading))&&(a=!0),XXa.add(n)}return a?[" ",t(r)]:t(r)}var aEi=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function cEi(e,t,r){let n=aEi(e);return n?[n," ",r("typeAnnotation")]:r("typeAnnotation")}function lEi(e){return[e("elementType"),"[]"]}function uEi({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",n=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(n)]}function gEi(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",Lk(e,t)]:""]}function KZ(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":b_(t)||Yv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function AEi(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var JXa=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function AV(e){let{node:t}=e;return t.declare||JXa.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var UXa=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function cbt({node:e}){return e.abstract||UXa.has(e.type)?"abstract ":""}function fme(e,t,r){let n=e.node;return n.typeArguments?r("typeArguments"):n.typeParameters?r("typeParameters"):""}function dEi(e,t,r){return["::",r("callee")]}function tce(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:Pl([zg,t])}function pEi(e,t){return["...",t("argument"),Lk(e,t)]}function ebt(e){return e.accessibility?e.accessibility+" ":""}function KXa(e,t,r,n){let{node:a}=e,o=a.inexact?"...":"";return ig(a,fA.Dangling)?Ia([r,o,N2(e,t,{indent:!0}),bl,n]):[r,o,n]}function dRr(e,t,r){let{node:n}=e,a=[],o=n.type==="TupleExpression"?"#[":"[",l="]",A=n.type==="TupleTypeAnnotation"&&n.types?"types":n.type==="TSTupleType"||n.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=n[A];if(f.length===0)a.push(KXa(e,t,o,l));else{let I=U0(!1,f,-1),C=I?.type!=="RestElement"&&!n.inexact,b=I===null,E=Symbol("array"),N=!t.__inJestEach&&f.length>1&&f.every((Q,X,ae)=>{let ne=Q?.type;if(!Vk(Q)&&!e4(Q))return!1;let ce=ae[X+1];if(ce&&ne!==ce.type)return!1;let fe=Vk(Q)?"elements":"properties";return Q[fe]&&Q[fe].length>1}),B=fEi(n,t),F=C?b?",":pee(t)?B?lh(",","",{groupId:E}):lh(","):"":"";a.push(Ia([o,Pl([bl,B?zXa(e,t,r,F):[jXa(e,t,A,n.inexact,r),F],N2(e,t)]),bl,l],{shouldBreak:N,id:E}))}return a.push(KZ(e),Lk(e,r)),a}function fEi(e,t){return Vk(e)&&e.elements.length>1&&e.elements.every(r=>r&&(uee(r)||$yi(r)&&!ig(r.argument))&&!ig(r,fA.Trailing|fA.Line,n=>!dO(t.originalText,ZS(n),{backwards:!0})))}function IEi({node:e},{originalText:t}){let r=a=>JTr(t,UTr(t,a)),n=a=>t[a]===","?a:n(r(a+1));return KTr(t,n(BC(e)))}function jXa(e,t,r,n,a){let o=[];return e.each(({node:l,isLast:A})=>{o.push(l?Ia(a()):""),(!A||n)&&o.push([",",zg,l&&IEi(e,t)?bl:""])},r),n&&o.push("..."),o}function zXa(e,t,r,n){let a=[];return e.each(({isLast:o,next:l})=>{a.push([r(),o?n:","]),o||a.push(IEi(e,t)?[xl,xl]:ig(l,fA.Leading|fA.Line)?xl:zg)},"elements"),dbi(a)}var qXa=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/,$Xa=e=>qXa.test(e),e4a=$Xa;function t4a(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var YRe=t4a,Kyt=new WeakMap;function hEi(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function Lyi(e,t){return t.parser==="json"||t.parser==="jsonc"||!gV(e.key)||MRe(UM(e.key),t).slice(1,-1)!==e.key.value?!1:!!(e4a(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||hEi(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function r4a(e,t){let{key:r}=e.node;return(r.type==="Identifier"||uee(r)&&hEi(YRe(UM(r)))&&String(r.value)===YRe(UM(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&Kyt.get(e.parent))}function x4e(e,t,r){let{node:n}=e;if(n.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=n;if(t.quoteProps==="consistent"&&!Kyt.has(a)){let l=e.siblings.some(A=>!A.computed&&gV(A.key)&&!Lyi(A,t));Kyt.set(a,l)}if(r4a(e,t)){let l=MRe(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(A=>$X(A,l,t),"key")}return Lyi(n,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!Kyt.get(a))?e.call(l=>$X(l,/^\d/u.test(o.value)?YRe(o.value):o.value,t),"key"):r("key")}function BTr(e,t,r){let{node:n}=e;return n.shorthand?r("value"):k4e(e,t,r,x4e(e,t,r),":","value")}var n4a=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&ibt(r));function mEi(e,t,r,n){if(n4a(e))return pRr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&n!=null&&n.expandLastArg){let{parent:C}=e;b_(C)&&(qM(C).length>1||NG(a).every(b=>b.type==="Identifier"&&!b.typeAnnotation))&&(o=!0)}let l=[AV(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],A=Sme(e,t,r,o),f=lbt(e,t),I=jRe(a,f);return l.push(fme(e,r,t),Ia([I?Ia(A):A,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&l.push(";"),l}function YTr(e,t,r){let{node:n}=e,{kind:a}=n,o=n.value||n,l=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&l.push("async "):(jTr.ok(a==="get"||a==="set"),l.push(a," ")),o.generator&&l.push("*"),l.push(x4e(e,t,r),n.optional||n.key.optional?"?":"",n===o?pRr(e,t,r):r("value")),l}function pRr(e,t,r){let{node:n}=e,a=Sme(e,r,t),o=lbt(e,r),l=WXa(n),A=jRe(n,o),f=[fme(e,t,r),Ia([l?Ia(a,{shouldBreak:!0}):A?Ia(a):a,o])];return n.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function i4a(e){let t=NG(e);return t.length===1&&!e.typeParameters&&!ig(e,fA.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!ig(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function CEi(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return i4a(r)}return!1}function lbt(e,t){let{node:r}=e,n=[Lk(e,t,"returnType")];return r.predicate&&n.push(t("predicate")),n}function _Ei(e,t,r){let{node:n}=e,a=t.semi?";":"",o=[];if(n.argument){let f=r("argument");a4a(t,n.argument)?f=["(",Pl([xl,f]),xl,")"]:(gee(n.argument)||n.argument.type==="SequenceExpression"||t.experimentalTernaries&&n.argument.type==="ConditionalExpression"&&(n.argument.consequent.type==="ConditionalExpression"||n.argument.alternate.type==="ConditionalExpression"))&&(f=Ia([lh("("),Pl([bl,f]),bl,lh(")")])),o.push(" ",f)}let l=ig(n,fA.Dangling),A=a&&l&&ig(n,fA.Last|fA.Line);return A&&o.push(a),l&&o.push(" ",N2(e,t)),A||o.push(a),o}function s4a(e,t,r){return["return",_Ei(e,t,r)]}function o4a(e,t,r){return["throw",_Ei(e,t,r)]}function a4a(e,t){if(ice(e.originalText,t)||ig(t,fA.Leading,r=>ace(e.originalText,ZS(r),BC(r)))&&!nD(t))return!0;if(zTr(t)){let r=t,n;for(;n=iHa(r);)if(r=n,ice(e.originalText,r))return!0}return!1}var wTr=new WeakMap;function yEi(e){return wTr.has(e)||wTr.set(e,e.type==="ConditionalExpression"&&!JZ(e,t=>t.type==="ObjectExpression")),wTr.get(e)}var bEi=e=>e.type==="SequenceExpression";function c4a(e,t,r,n={}){let a=[],o,l=[],A=!1,f=!n.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",I;(function X(){let{node:ae}=e,ne=l4a(e,t,r,n);if(a.length===0)a.push(ne);else{let{leading:ce,trailing:fe}=Vbi(e,t);a.push([ce,ne]),l.unshift(fe)}f&&(A||(A=ae.returnType&&NG(ae).length>0||ae.typeParameters||NG(ae).some(ce=>ce.type!=="Identifier"))),!f||ae.body.type!=="ArrowFunctionExpression"?(o=r("body",n),I=ae.body):e.call(X,"body")})();let C=!ice(t.originalText,I)&&(bEi(I)||u4a(I,o,t)||!A&&yEi(I)),b=e.key==="callee"&&HRe(e.parent),E=Symbol("arrow-chain"),N=g4a(e,n,{signatureDocs:a,shouldBreak:A}),B=!1,F=!1,Q=!1;return f&&(b||n.assignmentLayout)&&(F=!0,Q=!ig(e.node,fA.Leading&fA.Line),B=n.assignmentLayout==="chain-tail-arrow-chain"||b&&!C),o=A4a(e,t,n,{bodyDoc:o,bodyComments:l,functionBody:I,shouldPutBodyOnSameLine:C}),Ia([Ia(F?Pl([Q?bl:"",N]):N,{shouldBreak:B,id:E})," =>",f?abt(o,{groupId:E}):Ia(o),f&&b?lh(bl,"",{groupId:E}):""])}function l4a(e,t,r,n){let{node:a}=e,o=[];if(a.async&&o.push("async "),CEi(e,t))o.push(r(["params",0]));else{let A=n.expandLastArg||n.expandFirstArg,f=lbt(e,r);if(A){if(UZ(f))throw new $yt;f=Ia(xTr(f))}o.push(Ia([Sme(e,r,t,A,!0),f]))}let l=N2(e,t,{filter(A){let f=URe(t.originalText,BC(A));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return l&&o.push(" ",l),o}function u4a(e,t,r){var n,a;return Vk(e)||e4(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||nD(e)||((n=t.label)==null?void 0:n.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||ibi(e,r.originalText))}function g4a(e,t,{signatureDocs:r,shouldBreak:n}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&HRe(a)||gee(a)?Ia([r[0]," =>",Pl([zg,vC([" =>",zg],r.slice(1))])],{shouldBreak:n}):o==="callee"&&HRe(a)||t.assignmentLayout?Ia(vC([" =>",zg],r),{shouldBreak:n}):Ia(Pl(vC([" =>",zg],r)),{shouldBreak:n})}function A4a(e,t,r,{bodyDoc:n,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:l}){let{node:A,parent:f}=e,I=r.expandLastArg&&pee(t,"all")?lh(","):"",C=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!ig(A)?bl:"";return l&&yEi(o)?[" ",Ia([lh("","("),Pl([bl,n]),lh("",")"),I,C]),a]:(bEi(o)&&(n=Ia(["(",Pl([bl,n]),bl,")"])),l?[" ",n,a]:[Pl([zg,n,a]),I,C])}var d4a=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},p4a=d4a;function QTr(e,t,r,n){let{node:a}=e,o=[],l=p4a(!1,a[n],A=>A.type!=="EmptyStatement");return e.each(({node:A})=>{A.type!=="EmptyStatement"&&(o.push(r()),A!==l&&(o.push(xl),fee(A,t)&&o.push(xl)))},n),o}function EEi(e,t,r){let n=f4a(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return n?[n,xl]:"";let l=[];if(a.type==="StaticBlock"&&l.push("static "),l.push("{"),n)l.push(Pl([xl,n]),xl);else{let A=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!A.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||l.push(xl)}return l.push("}"),l}function f4a(e,t,r){let{node:n}=e,a=H_(n.directives),o=n.body.some(f=>f.type!=="EmptyStatement"),l=ig(n,fA.Dangling);if(!a&&!o&&!l)return"";let A=[];return a&&(A.push(QTr(e,t,r,"directives")),(o||l)&&(A.push(xl),fee(U0(!1,n.directives,-1),t)&&A.push(xl))),o&&A.push(QTr(e,t,r,"body")),l&&A.push(N2(e,t)),A}function I4a(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var SEi=I4a;function h4a(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function m4a(e,t,r){let{node:n}=e;return Ia([n.variance?r("variance"):"","[",Pl([r("keyTparam")," in ",r("sourceType")]),"]",h4a(n.optional),": ",r("propType")])}function vEi(e,t){return e==="+"||e==="-"?e+t:t}function C4a(e,t,r){let{node:n}=e,a=t.objectWrap==="preserve"&&ace(t.originalText,ZS(n),ZS(n.typeParameter));return Ia(["{",Pl([t.bracketSpacing?zg:bl,Ia([r("typeParameter"),n.optional?vEi(n.optional,"?"):"",n.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?lh(";"):""]),N2(e,t),t.bracketSpacing?zg:bl,"}"],{shouldBreak:a})}var fRr=SEi("typeParameters");function _4a(e,t,r){let{node:n}=e;return NG(n).length===1&&n.type.startsWith("TS")&&!n[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function B4e(e,t,r,n){let{node:a}=e;if(!a[n])return"";if(!Array.isArray(a[n]))return r(n);let o=sbt(e.grandparent),l=e.match(f=>!(f[n].length===1&&nce(f[n][0])),void 0,(f,I)=>I==="typeAnnotation",f=>f.type==="Identifier",Kbi);if(a[n].length===0||!l&&(o||a[n].length===1&&(a[n][0].type==="NullableTypeAnnotation"||qbi(a[n][0]))))return["<",vC(", ",e.map(r,n)),y4a(e,t),">"];let A=a.type==="TSTypeParameterInstantiation"?"":_4a(e,t,n)?",":pee(t)?lh(","):"";return Ia(["<",Pl([bl,vC([",",zg],e.map(r,n))]),A,bl,">"],{id:fRr(a)})}function y4a(e,t){let{node:r}=e;if(!ig(r,fA.Dangling))return"";let n=!ig(r,fA.Line),a=N2(e,t,{indent:!n});return n?a:[a,xl]}function BEi(e,t,r){let{node:n,parent:a}=e,o=[n.const?"const ":""],l=n.type==="TSTypeParameter"?r("name"):n.name;if(a.type==="TSMappedType")return a.readonly&&o.push(vEi(a.readonly,"readonly")," "),o.push("[",l),n.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(n.variance&&o.push(r("variance")),n.in&&o.push("in "),n.out&&o.push("out "),o.push(l),n.bound&&(n.usesExtendsBound&&o.push(" extends "),o.push(Lk(e,r,"bound"))),n.constraint){let A=Symbol("constraint");o.push(" extends",Ia(Pl(zg),{id:A}),dee,abt(r("constraint"),{groupId:A}))}return n.default&&o.push(" = ",r("default")),Ia(o)}var wEi=_0(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function TEi(e,t,r){let{node:n}=e,a=[AV(e),cbt(e),"class"],o=ig(n.id,fA.Trailing)||ig(n.typeParameters,fA.Trailing)||ig(n.superClass)||H_(n.extends)||H_(n.mixins)||H_(n.implements),l=[],A=[];if(n.id&&l.push(" ",r("id")),l.push(r("typeParameters")),n.superClass){let C=[S4a(e,t,r),r(n.superTypeArguments?"superTypeArguments":"superTypeParameters")],b=e.call(E=>["extends ",$X(E,C,t)],"superClass");o?A.push(zg,Ia(b)):A.push(" ",b)}else A.push(TTr(e,t,r,"extends"));A.push(TTr(e,t,r,"mixins"),TTr(e,t,r,"implements"));let f;if(o){let C;NEi(n)?C=[...l,Pl(A)]:C=Pl([...l,A]),f=REi(n),a.push(Ia(C,{id:f}))}else a.push(...l,...A);let I=n.body;return o&&H_(I.body)?a.push(lh(xl," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var REi=SEi("heritageGroup");function b4a(e){return lh(xl,"",{groupId:REi(e)})}function E4a(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function NEi(e){return e.typeParameters&&!ig(e.typeParameters,fA.Trailing|fA.Line)&&!E4a(e)}function TTr(e,t,r,n){let{node:a}=e;if(!H_(a[n]))return"";let o=N2(e,t,{marker:n});return[NEi(a)?lh(" ",zg,{groupId:fRr(a.typeParameters)}):zg,o,o&&xl,n,Ia(Pl([zg,vC([",",zg],e.map(r,n))]))]}function S4a(e,t,r){let n=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?Ia(lh(["(",Pl([bl,n]),bl,")"],n)):n}function DEi(e,t,r){let{node:n}=e,a=[];return H_(n.decorators)&&a.push(Obi(e,t,r)),a.push(ebt(n)),n.static&&a.push("static "),a.push(cbt(e)),n.override&&a.push("override "),a.push(YTr(e,t,r)),a}function kEi(e,t,r){let{node:n}=e,a=[],o=t.semi?";":"";H_(n.decorators)&&a.push(Obi(e,t,r)),a.push(AV(e),ebt(n)),n.static&&a.push("static "),a.push(cbt(e)),n.override&&a.push("override "),n.readonly&&a.push("readonly "),n.variance&&a.push(r("variance")),(n.type==="ClassAccessorProperty"||n.type==="AccessorProperty"||n.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(x4e(e,t,r),KZ(e),AEi(e),Lk(e,r));let l=n.type==="TSAbstractPropertyDefinition"||n.type==="TSAbstractAccessorProperty";return[k4e(e,t,r,a," =",l?void 0:"value"),o]}function v4a(e,t,r){let{node:n}=e,a=[];return e.each(({node:o,next:l,isLast:A})=>{a.push(r()),!t.semi&&wEi(o)&&B4a(o,l)&&a.push(";"),A||(a.push(xl),fee(o,t)&&a.push(xl))},"body"),ig(n,fA.Dangling)&&a.push(N2(e,t)),["{",a.length>0?[Pl([xl,a]),xl]:"","}"]}function B4a(e,t){var r;let{type:n,name:a}=e.key;if(!e.computed&&n==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(wEi(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var w4a=_0(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function xEi(e){return w4a(e)?xEi(e.expression):e}var T4a=_0(["FunctionExpression","ArrowFunctionExpression"]);function R4a(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function N4a(e,t){if(t.semi||FEi(e,t)||ZEi(e,t))return!1;let{node:r,key:n,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(n==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||n==="consequent"&&a.type==="SwitchCase")&&e.call(()=>GEi(e,t),"expression"))}function GEi(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!CEi(e,t))return!0;break;case"UnaryExpression":{let{prefix:n,operator:a}=r;if(n&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(nD(r))return!0}return Eme(e,t)?!0:zTr(r)?e.call(()=>GEi(e,t),...qyi(r)):!1}function FEi({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&nD(e.expression)&&t.type==="Program"&&t.body.length===1}function ZEi({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function D4a(e,t,r){let n=[r("expression")];if(ZEi(e,t)){let a=xEi(e.node.expression);(T4a(a)||R4a(a))&&n.push(";")}else FEi(e,t)||t.semi&&n.push(";");return n}function k4a(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let n=e.map(r,"program","body",0,"params");if(n.length===1)return n[0];let a=vC([",",zg],n);return t.__isVueForBindingLeft?["(",Pl([bl,Ia(a)]),bl,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let n=e.map(r,"program","body",0,"typeParameters","params");return vC([",",zg],n)}}function x4a(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return Vyi(r);case"BigIntLiteral":return XTr(r.extra.raw);case"NumericLiteral":return YRe(r.extra.raw);case"StringLiteral":return pme(MRe(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return Pyi(r.extra.raw,t);case"Literal":{if(r.regex)return Vyi(r.regex);if(r.bigint)return XTr(r.raw);let{value:n}=r;return typeof n=="number"?YRe(r.raw):typeof n=="string"?G4a(e)?Pyi(r.raw,t):pme(MRe(r.raw,t)):String(n)}}}function G4a(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function XTr(e){return e.toLowerCase()}function Vyi({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function Pyi(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let n=t.singleQuote?"'":'"';return n+r+n}function F4a(e,t,r){let n=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=ZS(a);if(o>r)break;let l=BC(a);if(le.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function PEi(e,t,r){let{node:n}=e,a=[AXa(e,t,r),AV(e),"export",VEi(n)?" default":""],{declaration:o,exported:l}=n;return ig(n,fA.Dangling)&&(a.push(" ",N2(e,t)),sbi(n)&&a.push(xl)),o?a.push(" ",r("declaration")):(a.push(P4a(n)),n.type==="ExportAllDeclaration"||n.type==="DeclareExportAllDeclaration"?(a.push(" *"),l&&a.push(" as ",r("exported"))):a.push(MEi(e,t,r)),a.push(OEi(e,t,r),YEi(e,t,r))),a.push(V4a(n,t)),a}var L4a=_0(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function V4a(e,t){return t.semi&&(!e.declaration||VEi(e)&&!L4a(e.declaration))?";":""}function IRr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function WEi(e,t){return IRr(e.importKind,t)}function P4a(e){return IRr(e.exportKind)}function OEi(e,t,r){let{node:n}=e;if(!n.source)return"";let a=[];return HEi(n,t)&&a.push(" from"),a.push(" ",r("source")),a}function MEi(e,t,r){let{node:n}=e;if(!HEi(n,t))return"";let a=[" "];if(H_(n.specifiers)){let o=[],l=[];e.each(()=>{let A=e.node.type;if(A==="ExportNamespaceSpecifier"||A==="ExportDefaultSpecifier"||A==="ImportNamespaceSpecifier"||A==="ImportDefaultSpecifier")o.push(r());else if(A==="ExportSpecifier"||A==="ImportSpecifier")l.push(r());else throw new KRe(n,"specifier")},"specifiers"),a.push(vC(", ",o)),l.length>0&&(o.length>0&&a.push(", "),l.length>1||o.length>0||n.specifiers.some(A=>ig(A))?a.push(Ia(["{",Pl([t.bracketSpacing?zg:bl,vC([",",zg],l)]),lh(pee(t)?",":""),t.bracketSpacing?zg:bl,"}"])):a.push(["{",t.bracketSpacing?" ":"",...l,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function HEi(e,t){return e.type!=="ImportDeclaration"||H_(e.specifiers)||e.importKind==="type"?!0:LEi(t,ZS(e),ZS(e.source)).trimEnd().endsWith("from")}function W4a(e,t){var r,n;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=LEi(t,BC(e.source),(n=e.attributes)!=null&&n[0]?ZS(e.attributes[0]):BC(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||H_(e.attributes)?"with":void 0}function YEi(e,t,r){let{node:n}=e;if(!n.source)return"";let a=W4a(n,t);if(!a)return"";let o=[` ${a} {`];return H_(n.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(vC(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function O4a(e,t,r){let{node:n}=e,{type:a}=n,o=a.startsWith("Import"),l=o?"imported":"local",A=o?"local":"exported",f=n[l],I=n[A],C="",b="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?C="*":f&&(C=r(l)),I&&!M4a(n)&&(b=r(A)),[IRr(a==="ImportSpecifier"?n.importKind:n.exportKind,!1),C,C&&b?" as ":"",b]}function M4a(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!QMa(t,r))return!1;if(gV(t))return t.value===r.value&&UM(t)===UM(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function ubt(e,t,r){var n;let a=t.semi?";":"",{node:o}=e,l=o.type==="ObjectTypeAnnotation",A=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||A?"members":o.type==="TSInterfaceBody"?"body":"properties"];l&&f.push("indexers","callProperties","internalSlots");let I=f.flatMap(ue=>e.map(({node:de})=>({node:de,printed:r(),loc:ZS(de)}),ue));f.length>1&&I.sort((ue,de)=>ue.loc-de.loc);let{parent:C,key:b}=e,E=l&&b==="body"&&(C.type==="InterfaceDeclaration"||C.type==="DeclareInterface"||C.type==="DeclareClass"),N=o.type==="TSInterfaceBody"||A||E||o.type==="ObjectPattern"&&C.type!=="FunctionDeclaration"&&C.type!=="FunctionExpression"&&C.type!=="ArrowFunctionExpression"&&C.type!=="ObjectMethod"&&C.type!=="ClassMethod"&&C.type!=="ClassPrivateMethod"&&C.type!=="AssignmentPattern"&&C.type!=="CatchClause"&&o.properties.some(ue=>ue.value&&(ue.value.type==="ObjectPattern"||ue.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&I.length>0&&ace(t.originalText,ZS(o),I[0].loc),B=E?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?lh(a,";"):",",F=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",Q=o.exact?"|}":"}",X=[],ae=I.map(ue=>{let de=[...X,Ia(ue.printed)];return X=[B,zg],(ue.node.type==="TSPropertySignature"||ue.node.type==="TSMethodSignature"||ue.node.type==="TSConstructSignatureDeclaration"||ue.node.type==="TSCallSignatureDeclaration")&&ig(ue.node,fA.PrettierIgnore)&&X.shift(),fee(ue.node,t)&&X.push(xl),de});if(o.inexact||o.hasUnknownMembers){let ue;if(ig(o,fA.Dangling)){let de=ig(o,fA.Line);ue=[N2(e,t),de||dO(t.originalText,BC(U0(!1,VRe(o),-1)))?xl:zg,"..."]}else ue=["..."];ae.push([...X,...ue])}let ne=(n=U0(!1,I,-1))==null?void 0:n.node,ce=!(o.inexact||o.hasUnknownMembers||ne&&(ne.type==="RestElement"||(ne.type==="TSPropertySignature"||ne.type==="TSCallSignatureDeclaration"||ne.type==="TSMethodSignature"||ne.type==="TSConstructSignatureDeclaration")&&ig(ne,fA.PrettierIgnore))),fe;if(ae.length===0){if(!ig(o,fA.Dangling))return[F,Q,Lk(e,r)];fe=Ia([F,N2(e,t,{indent:!0}),bl,Q,KZ(e),Lk(e,r)])}else fe=[E&&H_(o.properties)?b4a(C):"",F,Pl([t.bracketSpacing?zg:bl,...ae]),lh(ce&&(B!==","||pee(t))?B:""),t.bracketSpacing?zg:bl,Q,KZ(e),Lk(e,r)];return e.match(ue=>ue.type==="ObjectPattern"&&!H_(ue.decorators),RTr)||nce(o)&&(e.match(void 0,(ue,de)=>de==="typeAnnotation",(ue,de)=>de==="typeAnnotation",RTr)||e.match(void 0,(ue,de)=>ue.type==="FunctionTypeParam"&&de==="typeAnnotation",RTr))||!N&&e.match(ue=>ue.type==="ObjectPattern",ue=>ue.type==="AssignmentExpression"||ue.type==="VariableDeclarator")?fe:Ia(fe,{shouldBreak:N})}function RTr(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&zbi(e)}function H4a(e){let t=[e];for(let r=0;rE[Se]===n),B=E.type===n.type&&!N,F,Q,X=0;do Q=F||n,F=e.getParentNode(X),X++;while(F&&F.type===n.type&&A.every(Se=>F[Se]!==Q));let ae=F||E,ne=Q;if(a&&(nD(n[A[0]])||nD(f)||nD(I)||H4a(ne))){b=!0,B=!0;let Se=k=>[lh("("),Pl([bl,k]),bl,lh(")")],De=k=>k.type==="NullLiteral"||k.type==="Literal"&&k.value===null||k.type==="Identifier"&&k.name==="undefined";C.push(" ? ",De(f)?r(o):Se(r(o))," : ",I.type===n.type||De(I)?r(l):Se(r(l)))}else{let Se=k=>t.useTabs?Pl(r(k)):oj(2,r(k)),De=[zg,"? ",f.type===n.type?lh("","("):"",Se(o),f.type===n.type?lh("",")"):"",zg,": ",Se(l)];C.push(E.type!==n.type||E[l]===n||N?De:t.useTabs?Abi(Pl(De)):oj(Math.max(0,t.tabWidth-2),De))}let ce=[o,l,...A].some(Se=>ig(n[Se],De=>zM(De)&&ace(t.originalText,ZS(De),BC(De)))),fe=Se=>E===ae?Ia(Se,{shouldBreak:ce}):ce?[Se,aj]:Se,ue=!b&&(Yv(E)||E.type==="NGPipeExpression"&&E.left===n)&&!E.computed,de=X4a(e),be=fe([Y4a(e,t,r),B?C:Pl(C),a&&ue&&!de?bl:""]);return N||de?Ia([Pl([bl,be]),bl]):be}function U4a(e,t){return(Yv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function K4a(e,t,r,n){return[...e.map(a=>VRe(a)),VRe(t),VRe(r)].flat().some(a=>zM(a)&&ace(n.originalText,ZS(a),BC(a)))}var j4a=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function z4a(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,n=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===n||b_(o)&&o.callee===n||Yv(o)&&o.object===n||o.type==="TSNonNullExpression"&&o.expression===n){n=o;continue}o.type==="NewExpression"&&o.callee===n||nj(o)&&o.expression===n?(r=e.getParentNode(a+1),n=o):r=o}return n===t?!1:r[j4a.get(r.type)]===n}var NTr=e=>[lh("("),Pl([bl,e]),bl,lh(")")];function hRr(e,t,r,n){if(!t.experimentalTernaries)return J4a(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",l=oce(a),A=o?"consequent":"trueType",f=o?"alternate":"falseType",I=o?["test"]:["checkType","extendsType"],C=a[A],b=a[f],E=I.map(ke=>a[ke]),{parent:N}=e,B=N.type===a.type,F=B&&I.some(ke=>N[ke]===a),Q=B&&N[f]===a,X=C.type===a.type,ae=b.type===a.type,ne=ae||Q,ce=t.tabWidth>2||t.useTabs,fe,ue,de=0;do ue=fe||a,fe=e.getParentNode(de),de++;while(fe&&fe.type===a.type&&I.every(ke=>fe[ke]!==ue));let be=fe||N,Se=n&&n.assignmentLayout&&n.assignmentLayout!=="break-after-operator"&&(N.type==="AssignmentExpression"||N.type==="VariableDeclarator"||N.type==="ClassProperty"||N.type==="PropertyDefinition"||N.type==="ClassPrivateProperty"||N.type==="ObjectProperty"||N.type==="Property"),De=(N.type==="ReturnStatement"||N.type==="ThrowStatement")&&!(X||ae),k=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",et=z4a(e),ct=U4a(a,N),Me=l&&Eme(e,t),je=ce?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",St=K4a(E,C,b,t)||X||ae,At=!ne&&!B&&!l&&(k?C.type==="NullLiteral"||C.type==="Literal"&&C.value===null:eRr(C,t)&&myi(a.test,3)),Yt=ne||Q||l&&!B||B&&o&&myi(a.test,1)||At,Tr=[];!X&&ig(C,fA.Dangling)&&e.call(ke=>{Tr.push(N2(ke,t),xl)},"consequent");let Nr=[];ig(a.test,fA.Dangling)&&e.call(ke=>{Nr.push(N2(ke,t))},"test"),!ae&&ig(b,fA.Dangling)&&e.call(ke=>{Nr.push(N2(ke,t))},"alternate"),ig(a,fA.Dangling)&&Nr.push(N2(e,t));let er=Symbol("test"),vt=Symbol("consequent"),xt=Symbol("test-and-consequent"),Zr=o?[NTr(r("test")),a.test.type==="ConditionalExpression"?aj:""]:[r("checkType")," ","extends"," ",oce(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):Ia(NTr(r("extendsType")))],qt=Ia([Zr," ?"],{id:er}),Xt=r(A),lr=Pl([X||k&&(nD(C)||B||ne)?xl:zg,Tr,Xt]),cr=Yt?Ia([qt,ne?lr:lh(lr,Ia(lr,{id:vt}),{groupId:er})],{id:xt}):[qt,lr],Ar=r(f),qr=At?lh(Ar,Abi(NTr(Ar)),{groupId:xt}):Ar,_n=[cr,Nr.length>0?[Pl([xl,Nr]),xl]:ae?xl:At?lh(zg," ",{groupId:xt}):zg,":",ae?" ":ce?Yt?lh(je,lh(ne||At?" ":je," "),{groupId:xt}):lh(je," "):" ",ae?qr:Ia([Pl(qr),k&&!At?bl:""]),ct&&!et?bl:"",St?aj:""];return Se&&!St?Ia(Pl([bl,Ia(_n)])):Se||De?Ia(Pl(_n)):et||l&&F?Ia([Pl([bl,_n]),Me?bl:""]):N===be?Ia(_n):_n}function q4a(e,t,r,n){let{node:a}=e;if(qTr(a))return x4a(e,t);let o=t.semi?";":"",l=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),xl];case"File":return k4a(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return D4a(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!ig(a.expression)&&(e4(a.expression)||Vk(a.expression))?["(",r("expression"),")"]:Ia(["(",Pl([bl,r("expression")]),bl,")"]);case"AssignmentExpression":return SXa(e,t,r);case"VariableDeclarator":return vXa(e,t,r);case"BinaryExpression":case"LogicalExpression":return Wbi(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return yXa(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&l.push(r("object")),l.push(Ia(Pl([bl,dEi(e,t,r)]))),l;case"Identifier":return[a.name,KZ(e),AEi(e),Lk(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return pEi(e,r);case"FunctionDeclaration":case"FunctionExpression":return mEi(e,r,t,n);case"ArrowFunctionExpression":return c4a(e,t,r,n);case"YieldExpression":return l.push("yield"),a.delegate&&l.push("*"),a.argument&&l.push(" ",r("argument")),l;case"AwaitExpression":if(l.push("await"),a.argument){l.push(" ",r("argument"));let{parent:A}=e;if(b_(A)&&A.callee===a||Yv(A)&&A.object===a){l=[Pl([bl,...l]),bl];let f=e.findAncestor(I=>I.type==="AwaitExpression"||I.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!JZ(f.argument,I=>I===a))return Ia(l)}}return l;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return PEi(e,t,r);case"ImportDeclaration":return Z4a(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return O4a(e,t,r);case"ImportAttribute":return BTr(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return EEi(e,t,r);case"ClassBody":return v4a(e,t,r);case"ThrowStatement":return o4a(e,t,r);case"ReturnStatement":return s4a(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return Jbi(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return ubt(e,t,r);case"Property":return ibt(a)?YTr(e,t,r):BTr(e,t,r);case"ObjectProperty":return BTr(e,t,r);case"ObjectMethod":return YTr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return dRr(e,t,r);case"SequenceExpression":{let{parent:A}=e;if(A.type==="ExpressionStatement"||A.type==="ForStatement"){let f=[];return e.each(({isFirst:I})=>{I?f.push(r()):f.push(",",Pl([zg,r()]))},"expressions"),Ia(f)}return Ia(vC([",",zg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return l.push(a.operator),/[a-z]$/u.test(a.operator)&&l.push(" "),ig(a.argument)?l.push(Ia(["(",Pl([bl,r("argument")]),bl,")"])):l.push(r("argument")),l;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return hRr(e,t,r,n);case"VariableDeclaration":{let A=e.map(r,"declarations"),f=e.parent,I=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",C=a.declarations.some(E=>E.init),b;return A.length===1&&!ig(a.declarations[0])?b=A[0]:A.length>0&&(b=Pl(A[0])),l=[AV(e),a.kind,b?[" ",b]:"",Pl(A.slice(1).map(E=>[",",C&&!I?xl:zg,E]))],I&&f.body!==a||l.push(o),Ia(l)}case"WithStatement":return Ia(["with (",r("object"),")",tce(a.body,r("body"))]);case"IfStatement":{let A=tce(a.consequent,r("consequent")),f=Ia(["if (",Ia([Pl([bl,r("test")]),bl]),")",A]);if(l.push(f),a.alternate){let I=ig(a.consequent,fA.Trailing|fA.Line)||sbi(a),C=a.consequent.type==="BlockStatement"&&!I;l.push(C?" ":xl),ig(a,fA.Dangling)&&l.push(N2(e,t),I?xl:" "),l.push("else",Ia(tce(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return l}case"ForStatement":{let A=tce(a.body,r("body")),f=N2(e,t),I=f?[f,bl]:"";return!a.init&&!a.test&&!a.update?[I,Ia(["for (;;)",A])]:[I,Ia(["for (",Ia([Pl([bl,r("init"),";",zg,r("test"),";",zg,r("update")]),bl]),")",A])]}case"WhileStatement":return Ia(["while (",Ia([Pl([bl,r("test")]),bl]),")",tce(a.body,r("body"))]);case"ForInStatement":return Ia(["for (",r("left")," in ",r("right"),")",tce(a.body,r("body"))]);case"ForOfStatement":return Ia(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",tce(a.body,r("body"))]);case"DoWhileStatement":{let A=tce(a.body,r("body"));return l=[Ia(["do",A])],a.body.type==="BlockStatement"?l.push(" "):l.push(xl),l.push("while (",Ia([Pl([bl,r("test")]),bl]),")",o),l}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return l.push(a.type==="BreakStatement"?"break":"continue"),a.label&&l.push(" ",r("label")),l.push(o),l;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let A=ig(a.param,I=>!zM(I)||I.leading&&dO(t.originalText,BC(I))||I.trailing&&dO(t.originalText,ZS(I),{backwards:!0})),f=r("param");return["catch ",A?["(",Pl([bl,f]),bl,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[Ia(["switch (",Pl([bl,r("discriminant")]),bl,")"])," {",a.cases.length>0?Pl([xl,vC(xl,e.map(({node:A,isLast:f})=>[r(),!f&&fee(A,t)?xl:""],"cases"))]):"",xl,"}"];case"SwitchCase":{a.test?l.push("case ",r("test"),":"):l.push("default:"),ig(a,fA.Dangling)&&l.push(" ",N2(e,t));let A=a.consequent.filter(f=>f.type!=="EmptyStatement");if(A.length>0){let f=QTr(e,t,r,"consequent");l.push(A.length===1&&A[0].type==="BlockStatement"?[" ",f]:Pl([xl,f]))}return l}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return TEi(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return DEi(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return kEi(e,t,r);case"TemplateElement":return pme(a.value.raw);case"TemplateLiteral":return Nbi(e,r,t);case"TaggedTemplateExpression":return GYa(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new KRe(a,"ESTree")}}function QEi(e,t,r){let{parent:n,node:a,key:o}=e,l=[r("expression")];switch(a.type){case"AsConstExpression":l.push(" as const");break;case"AsExpression":case"TSAsExpression":l.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":l.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&b_(n)||o==="object"&&Yv(n)?Ia([Pl([bl,...l]),bl]):l}function $4a(e,t,r){let{node:n}=e,a=[AV(e),"component"];n.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=eJa(e,r,t);return n.rendersType?a.push(Ia([o," ",r("rendersType")])):a.push(Ia([o])),n.body&&a.push(" ",r("body")),t.semi&&n.type==="DeclareComponent"&&a.push(";"),a}function eJa(e,t,r){let{node:n}=e,a=n.params;if(n.rest&&(a=[...a,n.rest]),a.length===0)return["(",N2(e,r,{filter:l=>t4(r.originalText,BC(l))===")"}),")"];let o=[];return rJa(e,(l,A)=>{let f=A===a.length-1;f&&n.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),fee(a[A],r)?o.push(xl,xl):o.push(zg))}),["(",Pl([bl,...o]),lh(pee(r,"all")&&!tJa(n,a)?",":""),bl,")"]}function tJa(e,t){var r;return e.rest||((r=U0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function rJa(e,t){let{node:r}=e,n=0,a=o=>t(o,n++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function nJa(e,t,r){let{node:n}=e;return n.shorthand?r("local"):[r("name")," as ",r("local")]}function iJa(e,t,r){let{node:n}=e,a=[];return n.name&&a.push(r("name"),n.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function XEi(e,t,r){return ubt(e,r,t)}function JEi(e,t){let{node:r}=e,n=t("id");r.computed&&(n=["[",n,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[n," = ",a]:n}function sJa(e,t,r){let{node:n}=e,a;if(n.type==="EnumSymbolBody"||n.explicitType)switch(n.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",XEi(e,t,r)]}function UEi(e,t,r){let{node:n}=e;return[AV(e),n.const?"const ":"","enum ",t("id")," ",n.type==="TSEnumDeclaration"?XEi(e,t,r):t("body")]}function oJa(e,t,r){let{node:n}=e,a=["hook"];n.id&&a.push(" ",r("id"));let o=Sme(e,r,t,!1,!0),l=lbt(e,r),A=jRe(n,l);return a.push(Ia([A?Ia(o):o,l]),n.body?" ":"",r("body")),a}function aJa(e,t,r){let{node:n}=e,a=[AV(e),"hook"];return n.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function Wyi(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function cJa(e,t,r){let{node:n}=e,a=[];a.push(Wyi(e)?"":"hook ");let o=Sme(e,r,t,!1,!0),l=[];return l.push(Wyi(e)?": ":" => ",r("returnType")),jRe(n,l)&&(o=Ia(o)),a.push(o,l),Ia(a)}function KEi(e,t,r){let{node:n}=e,a=[AV(e),"interface"],o=[],l=[];n.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let A=n.typeParameters&&!ig(n.typeParameters,fA.Trailing|fA.Line);return H_(n.extends)&&l.push(A?lh(" ",zg,{groupId:fRr(n.typeParameters)}):zg,"extends ",(n.extends.length===1?hHa:Pl)(vC([",",zg],e.map(r,"extends")))),ig(n.id,fA.Trailing)||H_(n.extends)?A?a.push(Ia([...o,Pl(l)])):a.push(Ia(Pl([...o,...l]))):a.push(...o,...l),a.push(" ",r("body")),Ia(a)}function lJa(e,t,r){let{node:n}=e;if(jyi(n))return n.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(n.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return $4a(e,t,r);case"ComponentParameter":return nJa(e,t,r);case"ComponentTypeParameter":return iJa(e,t,r);case"HookDeclaration":return oJa(e,t,r);case"DeclareHook":return aJa(e,t,r);case"HookTypeAnnotation":return cJa(e,t,r);case"DeclareClass":return TEi(e,t,r);case"DeclareFunction":return[AV(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",Lk(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[AV(e),n.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return PEi(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return YXa(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return $bi(e,t,r);case"IntersectionTypeAnnotation":return eEi(e,t,r);case"UnionTypeAnnotation":return tEi(e,t,r);case"ConditionalTypeAnnotation":return hRr(e,t,r);case"InferTypeAnnotation":return iEi(e,t,r);case"FunctionTypeAnnotation":return rEi(e,t,r);case"TupleTypeAnnotation":return dRr(e,t,r);case"TupleTypeLabeledElement":return oEi(e,t,r);case"TupleTypeSpreadElement":return sEi(e,t,r);case"GenericTypeAnnotation":return[r("id"),B4e(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return nEi(e,t,r);case"TypeAnnotation":return cEi(e,t,r);case"TypeParameter":return BEi(e,t,r);case"TypeofTypeAnnotation":return uEi(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return lEi(r);case"DeclareEnum":case"EnumDeclaration":return UEi(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return sJa(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return JEi(e,r);case"FunctionTypeParam":{let o=n.name?r("name"):e.parent.this===n?"this":"";return[o,KZ(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return KEi(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=n;return jTr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[n.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return m4a(e,t,r);case"ObjectTypeIndexer":return[n.static?"static ":"",n.variance?r("variance"):"","[",r("id"),n.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return n.proto?o="proto ":n.static&&(o="static "),[o,n.kind!=="init"?n.kind+" ":"",n.variance?r("variance"):"",x4e(e,t,r),KZ(e),ibt(n)?"":": ",r("value")]}case"ObjectTypeAnnotation":return ubt(e,t,r);case"ObjectTypeInternalSlot":return[n.static?"static ":"","[[",r("id"),"]]",KZ(e),n.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return pEi(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(n.value);case"StringLiteralTypeAnnotation":return pme(MRe(UM(n),t));case"NumberLiteralTypeAnnotation":return YRe(n.raw??n.extra.raw);case"BigIntLiteralTypeAnnotation":return XTr(n.raw??n.extra.raw);case"TypeCastExpression":return["(",r("expression"),Lk(e,r),")"];case"TypePredicate":return gEi(e,r);case"TypeOperator":return[n.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return B4e(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...n.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return QEi(e,t,r)}}function uJa(e,t,r){var n;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(zyi(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",l=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let A=!(Vk(a.expression)||e4(a.expression)),f=Ia(["<",Pl([bl,r("typeAnnotation")]),bl,">"]),I=[lh("("),Pl([bl,r("expression")]),bl,lh(")")];return A?dme([[f,r("expression")],[f,Ia(I,{shouldBreak:!0})],[f,r("expression")]]):Ia([f,r("expression")])}case"TSDeclareFunction":return mEi(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return EEi(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return ubt(e,t,r);case"TSTypeAliasDeclaration":return $bi(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return DEi(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return kEi(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return Nbi(e,r,t);case"TSNamedTupleMember":return oEi(e,t,r);case"TSRestType":return sEi(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return KEi(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return B4e(e,t,r,"params");case"TSTypeParameter":return BEi(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return QEi(e,t,r);case"TSArrayType":return lEi(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",x4e(e,t,r),KZ(e),Lk(e,r)];case"TSParameterProperty":return[ebt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return uEi(e,r);case"TSIndexSignature":{let A=a.parameters.length>1?lh(pee(t)?",":""):"",f=Ia([Pl([bl,vC([", ",bl],e.map(r,"parameters"))]),A,bl]),I=e.parent.type==="ClassBody"&&e.key==="body";return[I&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",Lk(e,r),I?o:""]}case"TSTypePredicate":return gEi(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",B4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return nEi(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return C4a(e,t,r);case"TSMethodSignature":{let A=a.kind&&a.kind!=="method"?`${a.kind} `:"";l.push(ebt(a),A,a.computed?"[":"",r("key"),a.computed?"]":"",KZ(e));let f=Sme(e,r,t,!1,!0),I=a.returnType?"returnType":"typeAnnotation",C=a[I],b=C?Lk(e,r,I):"",E=jRe(a,b);return l.push(E?Ia(f):f),C&&l.push(Ia(b)),Ia(l)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return UEi(e,r,t);case"TSEnumMember":return JEi(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",WEi(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:A}=e,f=A.type==="TSModuleDeclaration",I=((n=a.body)==null?void 0:n.type)==="TSModuleDeclaration";return f?l.push("."):(l.push(AV(e)),a.kind!=="global"&&l.push(a.kind," ")),l.push(r("id")),I?l.push(r("body")):a.body?l.push(" ",Ia(r("body"))):l.push(o),l}case"TSConditionalType":return hRr(e,t,r);case"TSInferType":return iEi(e,t,r);case"TSIntersectionType":return eEi(e,t,r);case"TSUnionType":return tEi(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return rEi(e,t,r);case"TSTupleType":return dRr(e,t,r);case"TSTypeReference":return[r("typeName"),B4e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return cEi(e,t,r);case"TSEmptyBodyFunctionExpression":return pRr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return Zyi(e,r,"?");case"TSJSDocNonNullableType":return Zyi(e,r,"!");case"TSParenthesizedType":default:throw new KRe(a,"TypeScript")}}function gJa(e,t,r,n){if(Pbi(e))return BQa(e,t);for(let a of[lXa,rXa,lJa,uJa,q4a]){let o=a(e,t,r,n);if(o!==void 0)return o}}var AJa=_0(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function dJa(e,t,r,n){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=gJa(e,t,r,n);if(!o)return"";let{node:l}=e;if(AJa(l))return o;let A=H_(l.decorators),f=dXa(e,t,r),I=l.type==="ClassExpression";if(A&&!I)return GTr(o,E=>Ia([f,E]));let C=Eme(e,t),b=N4a(e,t);return!f&&!C&&!b?o:GTr(o,E=>[b?";":"",C?"(":"",C&&I&&A?[Pl([zg,f,E]),zg]:[f,E],C?")":""])}var pJa=dJa,fJa={avoidAstMutation:!0},IJa=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".code-workspace",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],jEi={};tbt(jEi,{getVisitorKeys:()=>_Ja,massageAstNode:()=>zEi,print:()=>yJa});var hJa={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},mJa=hJa,CJa=Uyi(mJa),_Ja=CJa;function yJa(e,t,r){let{node:n}=e;switch(n.type){case"JsonRoot":return[r("node"),xl];case"ArrayExpression":{if(n.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",Pl([xl,vC([",",xl],a)]),xl,"]"]}case"ObjectExpression":return n.properties.length===0?"{}":["{",Pl([xl,vC([",",xl],e.map(r,"properties"))]),xl,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[n.operator==="+"?"":n.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return n.value?"true":"false";case"StringLiteral":return JSON.stringify(n.value);case"NumericLiteral":return Oyi(e)?JSON.stringify(String(n.value)):JSON.stringify(n.value);case"Identifier":return Oyi(e)?JSON.stringify(n.name):n.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(n.value.cooked);default:throw new KRe(n,"JSON")}}function Oyi(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var bJa=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function zEi(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:n}=e;n.type==="Identifier"?t.key={type:"StringLiteral",value:n.name}:n.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(n.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[n,a]of e.elements.entries())a===null&&t.elements.splice(n,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}zEi.ignoredProperties=bJa;var b4e={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},rce="JavaScript",EJa={arrowParens:{category:rce,type:"choice",default:"always",description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:b4e.bracketSameLine,objectWrap:b4e.objectWrap,bracketSpacing:b4e.bracketSpacing,jsxBracketSameLine:{category:rce,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:rce,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:rce,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:rce,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:b4e.singleQuote,jsxSingleQuote:{category:rce,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:rce,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{category:rce,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:b4e.singleAttributePerLine},qEi=EJa,zRe={estree:Qyi,"estree-json":jEi},$Ei=[...mMa,...IJa],SJa=Yyi;var P4e={};sI(P4e,{default:()=>jUa,languages:()=>I1i,options:()=>h1i,parsers:()=>SRr,printers:()=>w1i});var vJa=Object.defineProperty,i1i=(e,t)=>{for(var r in t)vJa(e,r,{get:t[r],enumerable:!0})},s1i={};i1i(s1i,{languages:()=>I1i,options:()=>h1i,parsers:()=>SRr,printers:()=>w1i});var BJa=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},mRr=BJa,wJa="indent",TJa="group",RJa="if-break",ERr="line",NJa="break-parent",o1i=()=>{},L4e=o1i,a1i=o1i;function pV(e){return L4e(e),{type:wJa,contents:e}}function $M(e,t={}){return L4e(e),a1i(t.expandedStates,!0),{type:TJa,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function lj(e,t="",r={}){return L4e(e),t!==""&&L4e(t),{type:RJa,breakContents:e,flatContents:t,groupId:r.groupId}}var DJa={type:NJa},kJa={type:ERr,hard:!0},$Re={type:ERr},Qv={type:ERr,soft:!0},AT=[kJa,DJa];function Wk(e,t){L4e(e),a1i(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var u1i=YJa,QJa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},XJa=QJa,G4e=null;function Z4e(e){if(G4e!==null&&typeof G4e.property){let t=G4e;return G4e=Z4e.prototype=null,t}return G4e=Z4e.prototype=e??Object.create(null),new Z4e}var JJa=10;for(let e=0;e<=JJa;e++)Z4e();function UJa(e){return Z4e(e)}function KJa(e,t="type"){UJa(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var jJa=KJa,zJa=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},g1i=class{constructor(e,t,r,n,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},A1i={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},vTu=new Set(Object.keys(A1i)),qRe;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(qRe||(qRe={}));var qJa=jJa(A1i,"kind"),$Ja=qJa;function d1i(e){return e.loc.start}function p1i(e){return e.loc.end}function eUa(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function tUa(e){return`# @format - -`+e}function rUa(e,t,r){let{node:n}=e;if(!n.description)return"";let a=[r("description")];return n.kind==="InputValueDefinition"&&!n.description.block?a.push($Re):a.push(AT),a}var Cee=rUa;function nUa(e,t,r){let{node:n}=e;switch(n.kind){case"Document":return[...Wk(AT,cj(e,t,r,"definitions")),AT];case"OperationDefinition":{let a=t.originalText[d1i(n)]!=="{",o=!!n.name;return[a?n.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&u1i(n.variableDefinitions)?" ":"",e1i(e,r),jZ(e,r,n),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),e1i(e,r)," on ",r("typeCondition"),jZ(e,r,n)," ",r("selectionSet")];case"SelectionSet":return["{",pV([AT,Wk(AT,cj(e,t,r,"selections"))]),AT,"}"];case"Field":return $M([n.alias?[r("alias"),": "]:"",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",jZ(e,r,n),n.selectionSet?" ":"",r("selectionSet")]);case"Name":return n.value;case"StringValue":if(n.block){let a=mRr(!1,n.value,'"""',String.raw`\"""`).split(` -`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),Wk(AT,['"""',...a,'"""'])}return['"',mRr(!1,mRr(!1,n.value,/["\\]/gu,String.raw`\$&`),` -`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return n.value;case"BooleanValue":return n.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return $M(["[",pV([Qv,Wk([lj("",", "),Qv],e.map(r,"values"))]),Qv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&n.fields.length>0?" ":"";return $M(["{",a,pV([Qv,Wk([lj("",", "),Qv],e.map(r,"fields"))]),Qv,lj("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",jZ(e,r,n)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=n,o=[];return a.endsWith("TypeDefinition")?o.push(Cee(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&n.interfaces.length>0&&o.push(" implements ",...oUa(e,t,r)),o.push(jZ(e,r,n)),n.fields.length>0&&o.push([" {",pV([AT,Wk(AT,cj(e,t,r,"fields"))]),AT,"}"]),o}case"FieldDefinition":return[Cee(e,t,r),r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",": ",r("type"),jZ(e,r,n)];case"DirectiveDefinition":return[Cee(e,t,r),"directive ","@",r("name"),n.arguments.length>0?$M(["(",pV([Qv,Wk([lj("",", "),Qv],cj(e,t,r,"arguments"))]),Qv,")"]):"",n.repeatable?" repeatable":""," on ",...Wk(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[Cee(e,t,r),n.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),jZ(e,r,n),n.values.length>0?[" {",pV([AT,Wk(AT,cj(e,t,r,"values"))]),AT,"}"]:""];case"EnumValueDefinition":return[Cee(e,t,r),r("name"),jZ(e,r,n)];case"InputValueDefinition":return[Cee(e,t,r),r("name"),": ",r("type"),n.defaultValue?[" = ",r("defaultValue")]:"",jZ(e,r,n)];case"SchemaExtension":return["extend schema",jZ(e,r,n),...n.operationTypes.length>0?[" {",pV([AT,Wk(AT,cj(e,t,r,"operationTypes"))]),AT,"}"]:[]];case"SchemaDefinition":return[Cee(e,t,r),"schema",jZ(e,r,n)," {",n.operationTypes.length>0?pV([AT,Wk(AT,cj(e,t,r,"operationTypes"))]):"",AT,"}"];case"OperationTypeDefinition":return[n.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),jZ(e,r,n)];case"InlineFragment":return["...",n.typeCondition?[" on ",r("typeCondition")]:"",jZ(e,r,n)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return $M([Cee(e,t,r),$M([n.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),jZ(e,r,n),n.types.length>0?[" =",lj(""," "),pV([lj([$Re,"| "]),Wk([$Re,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[Cee(e,t,r),n.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),jZ(e,r,n)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new XJa(n,"Graphql","kind")}}function jZ(e,t,r){if(r.directives.length===0)return"";let n=Wk($Re,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?$M([$Re,n]):[" ",$M(pV([Qv,n]))]}function cj(e,t,r,n){return e.map(({isLast:a,node:o})=>{let l=r();return!a&&HJa(t.originalText,p1i(o))?[l,AT]:l},n)}function iUa(e){return e.kind!=="Comment"}function sUa(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function oUa(e,t,r){let{node:n}=e,a=[],{interfaces:o}=n,l=e.map(r,"interfaces");for(let A=0;An.value.trim()==="prettier-ignore")}var cUa={print:nUa,massageAstNode:f1i,hasPrettierIgnore:aUa,insertPragma:tUa,printComment:sUa,canAttachComment:iUa,getVisitorKeys:$Ja},lUa=cUa,I1i=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],uUa={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},gUa={bracketSpacing:uUa.bracketSpacing},h1i=gUa,SRr={};i1i(SRr,{graphql:()=>KUa});function AUa(e){return typeof e=="object"&&e!==null}function dUa(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var pUa=/\r\n|[\n\r]/g;function yRr(e,t){let r=0,n=1;for(let a of e.body.matchAll(pUa)){if(typeof a.index=="number"||dUa(!1),a.index>=t)break;r=a.index+a[0].length,n+=1}return{line:n,column:t+1-r}}function fUa(e){return m1i(e.source,yRr(e.source,e.start))}function m1i(e,t){let r=e.locationOffset.column-1,n="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,l=t.line+o,A=t.line===1?r:0,f=t.column+A,I=`${e.name}:${l}:${f} -`,C=n.split(/\r\n|[\n\r]/g),b=C[a];if(b.length>120){let E=Math.floor(f/80),N=f%80,B=[];for(let F=0;F["|",F]),["|","^".padStart(N)],["|",B[E+1]]])}return I+t1i([[`${l-1} |`,C[a-1]],[`${l} |`,b],["|","^".padStart(f)],[`${l+1} |`,C[a+1]]])}function t1i(e){let t=e.filter(([n,a])=>a!==void 0),r=Math.max(...t.map(([n])=>n.length));return t.map(([n,a])=>n.padStart(r)+(a?" "+a:"")).join(` -`)}function IUa(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var hUa=class C1i extends Error{constructor(t,...r){var n,a,o;let{nodes:l,source:A,positions:f,path:I,originalError:C,extensions:b}=IUa(r);super(t),this.name="GraphQLError",this.path=I??void 0,this.originalError=C??void 0,this.nodes=r1i(Array.isArray(l)?l:l?[l]:void 0);let E=r1i((n=this.nodes)===null||n===void 0?void 0:n.map(B=>B.loc).filter(B=>B!=null));this.source=A??(E==null||(a=E[0])===null||a===void 0?void 0:a.source),this.positions=f??E?.map(B=>B.start),this.locations=f&&A?f.map(B=>yRr(A,B)):E?.map(B=>yRr(B.source,B.start));let N=AUa(C?.extensions)?C?.extensions:void 0;this.extensions=(o=b??N)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),C!=null&&C.stack?Object.defineProperty(this,"stack",{value:C.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,C1i):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` - -`+fUa(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` - -`+m1i(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function r1i(e){return e===void 0||e.length===0?void 0:e}function iD(e,t,r){return new hUa(`Syntax Error: ${r}`,{source:e,positions:[t]})}var bRr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(bRr||(bRr={}));var Zf;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Zf||(Zf={}));function mUa(e){return e===9||e===32}function V4e(e){return e>=48&&e<=57}function _1i(e){return e>=97&&e<=122||e>=65&&e<=90}function y1i(e){return _1i(e)||e===95}function CUa(e){return _1i(e)||V4e(e)||e===95}function _Ua(e){var t;let r=Number.MAX_SAFE_INTEGER,n=null,a=-1;for(let l=0;lA===0?l:l.slice(r)).slice((t=n)!==null&&t!==void 0?t:0,a+1)}function yUa(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function dbt(e,t){return b1i(e.charCodeAt(t))&&E1i(e.charCodeAt(t+1))}function b1i(e){return e>=55296&&e<=56319}function E1i(e){return e>=56320&&e<=57343}function Bme(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return jc.EOF;if(r>=32&&r<=126){let n=String.fromCodePoint(r);return n==='"'?`'"'`:`"${n}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function dT(e,t,r,n,a){let o=e.line,l=1+r-e.lineStart;return new g1i(t,r,n,o,l,a)}function SUa(e,t){let r=e.source.body,n=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function NUa(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` -`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw iD(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function DUa(e,t){let r=e.source.body,n=r.length,a=e.lineStart,o=t+3,l=o,A="",f=[];for(;o2?"["+LUa(e)+"]":"{ "+r.map(([n,a])=>n+": "+pbt(a,t)).join(", ")+" }"}function ZUa(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),n=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${n} more items`),"["+a.join(", ")+"]"}function LUa(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var VUa=globalThis.process&&!0,PUa=VUa?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let n=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(n===a){let o=S1i(e);throw new Error(`Cannot use ${n} "${o}" from another module or realm. - -Ensure that there is only one instance of "graphql" in the node_modules -directory. If different versions of "graphql" are the dependencies of other -relied on modules, use "resolutions" to ensure only one version is installed. - -https://yarnpkg.com/en/docs/selective-version-resolutions - -Duplicate "graphql" modules cannot be used at the same time since different -versions may have different capabilities and behavior. The data from one -version used in the function from another could produce confusing and -spurious results.`)}}return!1},v1i=class{constructor(e,t="GraphQL request",r={line:1,column:1}){typeof e=="string"||_Rr(!1,`Body must be a string. Received: ${S1i(e)}.`),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||_Rr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||_Rr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function WUa(e){return PUa(e,v1i)}function OUa(e,t){let r=new MUa(e,t),n=r.parseDocument();return Object.defineProperty(n,"tokenCount",{enumerable:!1,value:r.tokenCount}),n}var MUa=class{constructor(e,t={}){let r=WUa(e)?e:new v1i(e);this._lexer=new bUa(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(jc.NAME);return this.node(e,{kind:Zf.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Zf.DOCUMENT,definitions:this.many(jc.SOF,this.parseDefinition,jc.EOF)})}parseDefinition(){if(this.peek(jc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===jc.NAME){switch(t.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw iD(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(jc.BRACE_L))return this.node(e,{kind:Zf.OPERATION_DEFINITION,operation:qRe.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(jc.NAME)&&(r=this.parseName()),this.node(e,{kind:Zf.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(jc.NAME);switch(e.value){case"query":return qRe.QUERY;case"mutation":return qRe.MUTATION;case"subscription":return qRe.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(jc.PAREN_L,this.parseVariableDefinition,jc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Zf.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(jc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(jc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(jc.DOLLAR),this.node(e,{kind:Zf.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Zf.SELECTION_SET,selections:this.many(jc.BRACE_L,this.parseSelection,jc.BRACE_R)})}parseSelection(){return this.peek(jc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,n;return this.expectOptionalToken(jc.COLON)?(r=t,n=this.parseName()):n=t,this.node(e,{kind:Zf.FIELD,alias:r,name:n,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(jc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(jc.PAREN_L,t,jc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Zf.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(jc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(jc.NAME)?this.node(e,{kind:Zf.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Zf.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Zf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Zf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case jc.BRACKET_L:return this.parseList(e);case jc.BRACE_L:return this.parseObject(e);case jc.INT:return this.advanceLexer(),this.node(t,{kind:Zf.INT,value:t.value});case jc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Zf.FLOAT,value:t.value});case jc.STRING:case jc.BLOCK_STRING:return this.parseStringLiteral();case jc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Zf.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Zf.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Zf.NULL});default:return this.node(t,{kind:Zf.ENUM,value:t.value})}case jc.DOLLAR:if(e)if(this.expectToken(jc.DOLLAR),this._lexer.token.kind===jc.NAME){let r=this._lexer.token.value;throw iD(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Zf.STRING,value:e.value,block:e.kind===jc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Zf.LIST,values:this.any(jc.BRACKET_L,t,jc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Zf.OBJECT,fields:this.any(jc.BRACE_L,t,jc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(jc.COLON),this.node(t,{kind:Zf.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(jc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(jc.AT),this.node(t,{kind:Zf.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(jc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(jc.BRACKET_R),t=this.node(e,{kind:Zf.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(jc.BANG)?this.node(e,{kind:Zf.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Zf.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(jc.STRING)||this.peek(jc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),n=this.many(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);return this.node(e,{kind:Zf.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(jc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Zf.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),n=this.parseConstDirectives();return this.node(e,{kind:Zf.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Zf.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(jc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseFieldDefinition,jc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(jc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Zf.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(jc.PAREN_L,this.parseInputValueDef,jc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(jc.COLON);let n=this.parseTypeReference(),a;this.expectOptionalToken(jc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Zf.INPUT_VALUE_DEFINITION,description:t,name:r,type:n,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Zf.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Zf.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(jc.EQUALS)?this.delimitedMany(jc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Zf.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a})}parseEnumValuesDefinition(){return this.optionalMany(jc.BRACE_L,this.parseEnumValueDefinition,jc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),n=this.parseConstDirectives();return this.node(e,{kind:Zf.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw iD(this._lexer.source,this._lexer.token.start,`${gbt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),n=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Zf.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(jc.BRACE_L,this.parseInputValueDef,jc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===jc.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(jc.BRACE_L,this.parseOperationTypeDefinition,jc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Zf.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Zf.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Zf.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&n.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Zf.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseUnionMemberTypes();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.UNION_TYPE_EXTENSION,name:t,directives:r,types:n})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseEnumValuesDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),n=this.parseInputFieldsDefinition();if(r.length===0&&n.length===0)throw this.unexpected();return this.node(e,{kind:Zf.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(jc.AT);let r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Zf.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(jc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(bRr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new zJa(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw iD(this._lexer.source,t.start,`Expected ${B1i(e)}, found ${gbt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===jc.NAME&&t.value===e)this.advanceLexer();else throw iD(this._lexer.source,t.start,`Expected "${e}", found ${gbt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===jc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return iD(this._lexer.source,t.start,`Unexpected ${gbt(t)}.`)}any(e,t,r){this.expectToken(e);let n=[];for(;!this.expectOptionalToken(r);)n.push(t.call(this));return n}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}return[]}many(e,t,r){this.expectToken(e);let n=[];do n.push(t.call(this));while(!this.expectOptionalToken(r));return n}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==jc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw iD(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function gbt(e){let t=e.value;return B1i(e.kind)+(t!=null?` "${t}"`:"")}function B1i(e){return EUa(e)?`"${e}"`:e}function HUa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var YUa=HUa;function QUa(e){let t=[],{startToken:r,endToken:n}=e.loc;for(let a=r;a!==n;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var XUa={allowLegacyFragmentVariables:!0};function JUa(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return YUa(t,{loc:{start:r},cause:e})}return e}function UUa(e){let t;try{t=OUa(e,XUa)}catch(r){throw JUa(r)}return t.comments=QUa(t),t}var KUa={parse:UUa,astFormat:"graphql",hasPragma:eUa,locStart:d1i,locEnd:p1i},w1i={graphql:lUa},jUa=s1i;var q4e={};sI(q4e,{default:()=>F6a,languages:()=>C2i,options:()=>_2i,parsers:()=>HRr,printers:()=>B2i});var zUa=Object.create,xRr=Object.defineProperty,qUa=Object.getOwnPropertyDescriptor,$Ua=Object.getOwnPropertyNames,eKa=Object.getPrototypeOf,tKa=Object.prototype.hasOwnProperty,X1i=e=>{throw TypeError(e)},ql=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),J1i=(e,t)=>{for(var r in t)xRr(e,r,{get:t[r],enumerable:!0})},rKa=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $Ua(t))!tKa.call(e,a)&&a!==r&&xRr(e,a,{get:()=>t[a],enumerable:!(n=qUa(t,a))||n.enumerable});return e},sNe=(e,t,r)=>(r=e!=null?zUa(eKa(e)):{},rKa(t||!e||!e.__esModule?xRr(r,"default",{value:e,enumerable:!0}):r,e)),U1i=(e,t,r)=>t.has(e)||X1i("Cannot "+r),gce=(e,t,r)=>(U1i(e,t,"read from private field"),r?r.call(e):t.get(e)),nKa=(e,t,r)=>t.has(e)?X1i("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),iKa=(e,t,r,n)=>(U1i(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),GRr=ql((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\s+/g," ")}}),sKa=ql((e,t)=>{"use strict";t.exports=B;var r=9,n=10,a=32,o=33,l=58,A=91,f=92,I=93,C=94,b=96,E=4,N=1024;function B(fe){var ue=this.Parser,de=this.Compiler;F(ue)&&X(ue,fe),Q(de)&&ae(de)}function F(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function Q(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function X(fe,ue){for(var de=ue||{},be=fe.prototype,Se=be.blockTokenizers,De=be.inlineTokenizers,k=be.blockMethods,et=be.inlineMethods,ct=Se.definition,Me=De.reference,je=[],St=-1,At=k.length,Yt;++StE&&(cl=void 0,Sc=jt);else{if(cl0&&(Wr=Hr[ke-1],Wr.contentStart===Wr.contentEnd);)ke--;for(io=Xt(lr.slice(0,Wr.contentEnd));++jt{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(n){return!!(n&&n.prototype&&n.prototype.blockTokenizers)}function r(n){return!!(n&&n.prototype&&n.prototype.visitors)}}),oKa=ql((e,t)=>{var r=K1i();t.exports=b;var n=9,a=32,o=36,l=48,A=57,f=92,I=["math","math-inline"],C="math-display";function b(B){let F=this.Parser,Q=this.Compiler;r.isRemarkParser(F)&&E(F,B),r.isRemarkCompiler(Q)&&N(Q,B)}function E(B,F){let Q=B.prototype,X=Q.inlineMethods;ne.locator=ae,Q.inlineTokenizers.math=ne,X.splice(X.indexOf("text"),0,"math");function ae(ce,fe){return ce.indexOf("$",fe)}function ne(ce,fe,ue){let de=fe.length,be=!1,Se=!1,De=0,k,et,ct,Me,je,St,At;if(fe.charCodeAt(De)===f&&(Se=!0,De++),fe.charCodeAt(De)===o){if(De++,Se)return ue?!0:ce(fe.slice(0,De))({type:"text",value:"$"});if(fe.charCodeAt(De)===o&&(be=!0,De++),ct=fe.charCodeAt(De),!(ct===a||ct===n)){for(Me=De;DeA)&&(!be||ct===o)){je=De-1,De++,be&&De++,St=De;break}}else et===f&&(De++,ct=fe.charCodeAt(De+1));De++}if(St!==void 0)return ue?!0:(At=fe.slice(Me,je+1),ce(fe.slice(0,St))({type:"inlineMath",value:At,data:{hName:"span",hProperties:{className:I.concat(be&&F.inlineMathDouble?[C]:[])},hChildren:[{type:"text",value:At}]}}))}}}}function N(B){let F=B.prototype;F.visitors.inlineMath=Q;function Q(X){let ae="$";return(X.data&&X.data.hProperties&&X.data.hProperties.className||[]).includes(C)&&(ae="$$"),ae+X.value+ae}}}),aKa=ql((e,t)=>{var r=K1i();t.exports=C;var n=10,a=32,o=36,l=` -`,A="$",f=2,I=["math","math-display"];function C(){let N=this.Parser,B=this.Compiler;r.isRemarkParser(N)&&b(N),r.isRemarkCompiler(B)&&E(B)}function b(N){let B=N.prototype,F=B.blockMethods,Q=B.interruptParagraph,X=B.interruptList,ae=B.interruptBlockquote;B.blockTokenizers.math=ne,F.splice(F.indexOf("fencedCode")+1,0,"math"),Q.splice(Q.indexOf("fencedCode")+1,0,["math"]),X.splice(X.indexOf("fencedCode")+1,0,["math"]),ae.splice(ae.indexOf("fencedCode")+1,0,["math"]);function ne(ce,fe,ue){var de=fe.length,be=0;let Se,De,k,et,ct,Me,je,St,At,Yt,Tr;for(;beYt&&fe.charCodeAt(et-1)===a;)et--;for(;et>Yt&&fe.charCodeAt(et-1)===o;)At++,et--;for(Me<=At&&fe.indexOf(A,Yt)===et&&(St=!0,Tr=et);Yt<=Tr&&Yt-beYt&&fe.charCodeAt(Tr-1)===a;)Tr--;if((!St||Yt!==Tr)&&De.push(fe.slice(Yt,Tr)),St)break;be=k+1,k=fe.indexOf(l,be+1),k=k===-1?de:k}return De=De.join(` -`),ce(fe.slice(0,k))({type:"math",value:De,data:{hName:"div",hProperties:{className:I.concat()},hChildren:[{type:"text",value:De}]}})}}}}function E(N){let B=N.prototype;B.visitors.math=F;function F(Q){return`$$ -`+Q.value+` -$$`}}}),cKa=ql((e,t)=>{var r=oKa(),n=aKa();t.exports=a;function a(o){var l=o||{};n.call(this,l),r.call(this,l)}}),oNe=ql((e,t)=>{t.exports=n;var r=Object.prototype.hasOwnProperty;function n(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,n){n&&(r.super_=n,r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,n){if(n){r.super_=n;var a=function(){};a.prototype=n.prototype,r.prototype=new a,r.prototype.constructor=r}}}),uKa=ql((e,t)=>{"use strict";var r=oNe(),n=lKa();t.exports=a;function a(o){var l,A,f;n(C,o),n(I,C),l=C.prototype;for(A in l)f=l[A],f&&typeof f=="object"&&(l[A]="concat"in f?f.concat():r(f));return C;function I(b){return o.apply(this,b)}function C(){return this instanceof C?o.apply(this,arguments):new I(arguments)}}}),gKa=ql((e,t)=>{"use strict";t.exports=r;function r(n,a,o){return l;function l(){var A=o||this,f=A[n];return A[n]=!a,I;function I(){A[n]=f}}}}),AKa=ql((e,t)=>{"use strict";t.exports=r;function r(n){for(var a=String(n),o=[],l=/\r?\n|\r/g;l.exec(a);)o.push(l.lastIndex);return o.push(a.length+1),{toPoint:A,toPosition:A,toOffset:f};function A(I){var C=-1;if(I>-1&&II)return{line:C+1,column:I-(o[C-1]||0)+1,offset:I}}return{}}function f(I){var C=I&&I.line,b=I&&I.column,E;return!isNaN(C)&&!isNaN(b)&&C-1 in o&&(E=(o[C-2]||0)+b-1||0),E>-1&&E{"use strict";t.exports=n;var r="\\";function n(a,o){return l;function l(A){for(var f=0,I=A.indexOf(r),C=a[o],b=[],E;I!==-1;)b.push(A.slice(f,I)),f=I+1,E=A.charAt(f),(!E||C.indexOf(E)===-1)&&b.push(r),I=A.indexOf(r,f+1);return b.push(A.slice(f)),b.join("")}}}),pKa=ql((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}),fKa=ql((e,t)=>{t.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}),aNe=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=48&&a<=57}}),IKa=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),X4e=ql((e,t)=>{"use strict";t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=122||a>=65&&a<=90}}),hKa=ql((e,t)=>{"use strict";var r=X4e(),n=aNe();t.exports=a;function a(o){return r(o)||n(o)}}),mKa=ql((e,t)=>{t.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` -`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}),CKa=ql((e,t)=>{"use strict";var r=mKa();t.exports=a;var n={}.hasOwnProperty;function a(o){return n.call(r,o)?r[o]:!1}}),vbt=ql((e,t)=>{"use strict";var r=pKa(),n=fKa(),a=aNe(),o=IKa(),l=hKa(),A=CKa();t.exports=er;var f={}.hasOwnProperty,I=String.fromCharCode,C=Function.prototype,b={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},E=9,N=10,B=12,F=32,Q=38,X=59,ae=60,ne=61,ce=35,fe=88,ue=120,de=65533,be="named",Se="hexadecimal",De="decimal",k={};k[Se]=16,k[De]=10;var et={};et[be]=l,et[De]=a,et[Se]=o;var ct=1,Me=2,je=3,St=4,At=5,Yt=6,Tr=7,Nr={};Nr[ct]="Named character references must be terminated by a semicolon",Nr[Me]="Numeric character references must be terminated by a semicolon",Nr[je]="Named character references cannot be empty",Nr[St]="Numeric character references cannot be empty",Nr[At]="Named character references must be known",Nr[Yt]="Numeric character references cannot be disallowed",Nr[Tr]="Numeric character references cannot be outside the permissible Unicode range";function er(qt,Xt){var lr={},cr,Ar;Xt||(Xt={});for(Ar in b)cr=Xt[Ar],lr[Ar]=cr??b[Ar];return(lr.position.indent||lr.position.start)&&(lr.indent=lr.position.indent||[],lr.position=lr.position.start),vt(qt,lr)}function vt(qt,Xt){var lr=Xt.additional,cr=Xt.nonTerminated,Ar=Xt.text,qr=Xt.reference,_n=Xt.warning,ke=Xt.textContext,jt=Xt.referenceContext,Fn=Xt.warningContext,Nn=Xt.position,Hi=Xt.indent||[],po=qt.length,Vr=0,xi=-1,io=Nn.column||1,ga=Nn.line||1,Ya="",Gc=[],cl,Sc,Hr,Wr,Ft,zr,Rn,Or,Qi,ps,yo,bo,Qa,gc,Cg,Nc,iA,ma,vu;for(typeof lr=="string"&&(lr=lr.charCodeAt(0)),Nc=li(),Or=_n?Ei:C,Vr--,po++;++Vr65535&&(zr-=65536,ps+=I(zr>>>10|55296),zr=56320|zr&1023),zr=ps+I(zr))):gc!==be&&Or(St,ma)),zr?(Ps(),Nc=li(),Vr=vu-1,io+=vu-Qa+1,Gc.push(zr),iA=li(),iA.offset++,qr&&qr.call(jt,zr,{start:Nc,end:iA},qt.slice(Qa-1,vu)),Nc=iA):(Wr=qt.slice(Qa-1,vu),Ya+=Wr,io+=Wr.length,Vr=vu-1)}else Ft===10&&(ga++,xi++,io=0),Ft===Ft?(Ya+=I(Ft),io++):Ps();return Gc.join("");function li(){return{line:ga,column:io,offset:Vr+(Nn.offset||0)}}function Ei(Xa,ac){var Yl=li();Yl.column+=ac,Yl.offset+=ac,_n.call(Fn,Nr[Xa],Yl,Xa)}function Ps(){Ya&&(Gc.push(Ya),Ar&&Ar.call(ke,Ya,{start:Nc,end:li()}),Ya="")}}function xt(qt){return qt>=55296&&qt<=57343||qt>1114111}function Zr(qt){return qt>=1&&qt<=8||qt===11||qt>=13&&qt<=31||qt>=127&&qt<=159||qt>=64976&&qt<=65007||(qt&65535)===65535||(qt&65535)===65534}}),_Ka=ql((e,t)=>{"use strict";var r=oNe(),n=vbt();t.exports=a;function a(o){return A.raw=f,A;function l(C){for(var b=o.offset,E=C.line,N=[];++E&&E in b;)N.push((b[E]||0)+1);return{start:C,indent:N}}function A(C,b,E){n(C,{position:l(b),warning:I,text:E,reference:E,textContext:o,referenceContext:o})}function f(C,b,E){return n(C,r(E,{position:l(b),warning:I}))}function I(C,b,E){E!==3&&o.file.message(C,b)}}}),yKa=ql((e,t)=>{"use strict";t.exports=r;function r(l){return A;function A(f,I){var C=this,b=C.offset,E=[],N=C[l+"Methods"],B=C[l+"Tokenizers"],F=I.line,Q=I.column,X,ae,ne,ce,fe,ue;if(!f)return E;for(Me.now=Se,Me.file=C.file,de("");f;){for(X=-1,ae=N.length,fe=!1;++X{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],n=r.concat(["~","|"]),a=n.concat([` -`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=n,o.commonmark=a;function o(l){var A=l||{};return A.commonmark?a:A.gfm?n:r}}),EKa=ql((e,t)=>{"use strict";t.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}),j1i=ql((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:EKa()}}),SKa=ql((e,t)=>{"use strict";var r=oNe(),n=bKa(),a=j1i();t.exports=o;function o(l){var A=this,f=A.options,I,C;if(l==null)l={};else if(typeof l=="object")l=r(l);else throw new Error("Invalid value `"+l+"` for setting `options`");for(I in a){if(C=l[I],C==null&&(C=f[I]),I!=="blocks"&&typeof C!="boolean"||I==="blocks"&&typeof C!="object")throw new Error("Invalid value `"+C+"` for setting `options."+I+"`");l[I]=C}return A.options=l,A.escape=n(l),A}}),vKa=ql((e,t)=>{"use strict";t.exports=r;function r(A){if(A==null)return l;if(typeof A=="string")return o(A);if(typeof A=="object")return"length"in A?a(A):n(A);if(typeof A=="function")return A;throw new Error("Expected function, string, or object as test")}function n(A){return f;function f(I){var C;for(C in A)if(I[C]!==A[C])return!1;return!0}}function a(A){for(var f=[],I=-1;++I{t.exports=r;function r(n){return n}}),wKa=ql((e,t)=>{"use strict";t.exports=A;var r=vKa(),n=BKa(),a=!0,o="skip",l=!1;A.CONTINUE=a,A.SKIP=o,A.EXIT=l;function A(I,C,b,E){var N,B;typeof C=="function"&&typeof b!="function"&&(E=b,b=C,C=null),B=r(C),N=E?-1:1,F(I,null,[])();function F(Q,X,ae){var ne=typeof Q=="object"&&Q!==null?Q:{},ce;return typeof ne.type=="string"&&(ce=typeof ne.tagName=="string"?ne.tagName:typeof ne.name=="string"?ne.name:void 0,fe.displayName="node ("+n(ne.type+(ce?"<"+ce+">":""))+")"),fe;function fe(){var ue=ae.concat(Q),de=[],be,Se;if((!C||B(Q,X,ae[ae.length-1]||null))&&(de=f(b(Q,ae)),de[0]===l))return de;if(Q.children&&de[0]!==o)for(Se=(E?Q.children.length:-1)+N;Se>-1&&Se{"use strict";t.exports=l;var r=wKa(),n=r.CONTINUE,a=r.SKIP,o=r.EXIT;l.CONTINUE=n,l.SKIP=a,l.EXIT=o;function l(A,f,I,C){typeof f=="function"&&typeof I!="function"&&(C=I,I=f,f=null),r(A,f,b,C);function b(E,N){var B=N[N.length-1],F=B?B.children.indexOf(E):null;return I(E,F,B)}}}),RKa=ql((e,t)=>{"use strict";var r=TKa();t.exports=n;function n(l,A){return r(l,A?a:o),l}function a(l){delete l.position}function o(l){l.position=void 0}}),NKa=ql((e,t)=>{"use strict";var r=oNe(),n=RKa();t.exports=l;var a=` -`,o=/\r\n|\r/g;function l(){var A=this,f=String(A.file),I={line:1,column:1,offset:0},C=r(I),b;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),C.column++,C.offset++),b={type:"root",children:A.tokenizeBlock(f,C),position:{start:I,end:A.eof||r(I)}},A.options.position||n(b,!0),b}}),DKa=ql((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=n;function n(a,o,l){for(var A,f="",I=0,C=o.length;I{"use strict";var r="",n;t.exports=a;function a(o,l){if(typeof o!="string")throw new TypeError("expected a string");if(l===1)return o;if(l===2)return o+o;var A=o.length*l;if(n!==o||typeof n>"u")n=o,r="";else if(r.length>=A)return r.substr(0,A);for(;A>r.length&&l>1;)l&1&&(r+=o),l>>=1,o+=o;return r+=o,r=r.substr(0,A),r}}),z1i=ql((e,t)=>{"use strict";t.exports=r;function r(n){return String(n).replace(/\n+$/,"")}}),kKa=ql((e,t)=>{"use strict";var r=FRr(),n=z1i();t.exports=I;var a=` -`,o=" ",l=" ",A=4,f=r(l,A);function I(C,b,E){for(var N=-1,B=b.length,F="",Q="",X="",ae="",ne,ce,fe;++N{"use strict";t.exports=I;var r=` -`,n=" ",a=" ",o="~",l="`",A=3,f=4;function I(C,b,E){var N=this,B=N.options.gfm,F=b.length+1,Q=0,X="",ae,ne,ce,fe,ue,de,be,Se,De,k,et,ct,Me;if(B){for(;Q=f)){for(be="";Q{e=t.exports=r;function r(n){return n.trim?n.trim():e.right(e.left(n))}e.left=function(n){return n.trimLeft?n.trimLeft():n.replace(/^\s\s*/,"")},e.right=function(n){if(n.trimRight)return n.trimRight();for(var a=/\s/,o=n.length;a.test(n.charAt(--o)););return n.slice(0,o+1)}}),ZRr=ql((e,t)=>{"use strict";t.exports=r;function r(n,a,o,l){for(var A=n.length,f=-1,I,C;++f{"use strict";var r=cNe(),n=ZRr();t.exports=f;var a=` -`,o=" ",l=" ",A=">";function f(I,C,b){for(var E=this,N=E.offset,B=E.blockTokenizers,F=E.interruptBlockquote,Q=I.now(),X=Q.line,ae=C.length,ne=[],ce=[],fe=[],ue,de=0,be,Se,De,k,et,ct,Me,je;de{"use strict";t.exports=A;var r=` -`,n=" ",a=" ",o="#",l=6;function A(f,I,C){for(var b=this,E=b.options.pedantic,N=I.length+1,B=-1,F=f.now(),Q="",X="",ae,ne,ce;++Bl)&&!(!ce||!E&&I.charAt(B+1)===o)){for(N=I.length+1,ne="";++B{"use strict";t.exports=I;var r=" ",n=` -`,a=" ",o="*",l="-",A="_",f=3;function I(C,b,E){for(var N=-1,B=b.length+1,F="",Q,X,ae,ne;++N=f&&(!Q||Q===n)?(F+=ne,E?!0:C(F)({type:"thematicBreak"})):void 0}}),q1i=ql((e,t)=>{"use strict";t.exports=l;var r=" ",n=" ",a=1,o=4;function l(A){for(var f=0,I=0,C=A.charAt(f),b={},E,N=0;C===r||C===n;){for(E=C===r?o:a,I+=E,E>1&&(I=Math.floor(I/E)*E);N{"use strict";var r=cNe(),n=FRr(),a=q1i();t.exports=f;var o=` -`,l=" ",A="!";function f(I,C){var b=I.split(o),E=b.length+1,N=1/0,B=[],F,Q,X;for(b.unshift(n(l,C)+A);E--;)if(Q=a(b[E]),B[E]=Q.stops,r(b[E]).length!==0)if(Q.indent)Q.indent>0&&Q.indent{"use strict";var r=cNe(),n=FRr(),a=aNe(),o=q1i(),l=LKa(),A=ZRr();t.exports=be;var f="*",I="_",C="+",b="-",E=".",N=" ",B=` -`,F=" ",Q=")",X="x",ae=4,ne=/\n\n(?!\s*$)/,ce=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,ue=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,de=/^( {1,4}|\t)?/gm;function be(et,ct,Me){for(var je=this,St=je.options.commonmark,At=je.options.pedantic,Yt=je.blockTokenizers,Tr=je.interruptList,Nr=0,er=ct.length,vt=null,xt,Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt,Fn,Nn,Hi,po,Vr,xi,io,ga,Ya=!1,Gc,cl,Sc,Hr;Nr=xi.indent&&(Hr=!0),Xt=ct.charAt(Nr),_n=null,!Hr){if(Xt===f||Xt===C||Xt===b)_n=Xt,Nr++,xt++;else{for(Zr="";Nr=xi.indent||xt>ae),qr=!1,Nr=Ar;if(jt=ct.slice(Ar,cr),ke=Ar===Nr?jt:ct.slice(Nr,cr),(_n===f||_n===I||_n===b)&&Yt.thematicBreak.call(je,et,jt,!0))break;if(Fn=Nn,Nn=!qr&&!r(ke).length,Hr&&xi)xi.value=xi.value.concat(Vr,jt),po=po.concat(Vr,jt),Vr=[];else if(qr)Vr.length!==0&&(Ya=!0,xi.value.push(""),xi.trail=Vr.concat()),xi={value:[jt],indent:xt,trail:[]},Hi.push(xi),po=po.concat(Vr,jt),Vr=[];else if(Nn){if(Fn&&!St)break;Vr.push(jt)}else{if(Fn||A(Tr,Yt,je,[et,jt,!0]))break;xi.value=xi.value.concat(Vr,jt),po=po.concat(Vr,jt),Vr=[]}Nr=cr+1}for(Gc=et(po.join(B)).reset({type:"list",ordered:qt,start:vt,spread:Ya,children:[]}),io=je.enterList(),ga=je.enterBlock(),Nr=-1,er=Hi.length;++Nr{"use strict";t.exports=C;var r=` -`,n=" ",a=" ",o="=",l="-",A=3,f=1,I=2;function C(b,E,N){for(var B=this,F=b.now(),Q=E.length,X=-1,ae="",ne,ce,fe,ue,de;++X=A){X--;break}ae+=fe}for(ne="",ce="";++X{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",n="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+n+"|"+a+")",l="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",A="<[A-Za-z][A-Za-z0-9\\-]*"+l+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",I="|",C="<[?].*?[?]>",b="]*>",E="";e.openCloseTag=new RegExp("^(?:"+A+"|"+f+")"),e.tag=new RegExp("^(?:"+A+"|"+f+"|"+I+"|"+C+"|"+b+"|"+E+")")}),WKa=ql((e,t)=>{"use strict";var r=$1i().openCloseTag;t.exports=ne;var n=" ",a=" ",o=` -`,l="<",A=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,I=/^/,b=/^<\?/,E=/\?>/,N=/^/,F=/^/,X=/^$/,ae=new RegExp(r.source+"\\s*$");function ne(ce,fe,ue){for(var de=this,be=de.options.blocks.join("|"),Se=new RegExp("^|$))","i"),De=fe.length,k=0,et,ct,Me,je,St,At,Yt,Tr=[[A,f,!0],[I,C,!0],[b,E,!0],[N,B,!0],[F,Q,!0],[Se,X,!0],[ae,X,!1]];k{"use strict";t.exports=a;var r=String.fromCharCode,n=/\s/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),e2i=ql((e,t)=>{"use strict";var r=GRr();t.exports=n;function n(a){return r(a).toLowerCase()}}),OKa=ql((e,t)=>{"use strict";var r=yee(),n=e2i();t.exports=X;var a='"',o="'",l="\\",A=` -`,f=" ",I=" ",C="[",b="]",E="(",N=")",B=":",F="<",Q=">";function X(ce,fe,ue){for(var de=this,be=de.options.commonmark,Se=0,De=fe.length,k="",et,ct,Me,je,St,At,Yt,Tr;Se{"use strict";var r=yee();t.exports=F;var n=" ",a=` -`,o=" ",l="-",A=":",f="\\",I="|",C=1,b=2,E="left",N="center",B="right";function F(Q,X,ae){var ne=this,ce,fe,ue,de,be,Se,De,k,et,ct,Me,je,St,At,Yt,Tr,Nr,er,vt,xt,Zr,qt;if(ne.options.gfm){for(ce=0,Tr=0,Se=X.length+1,De=[];cext){if(Tr1&&(et?(de+=k.slice(0,-1),k=k.charAt(k.length-1)):(de+=k,k="")),At=Q.now(),Q(de)({type:"tableCell",children:ne.tokenizeInline(je,At)},be)),Q(k+et),k="",je=""):(k&&(je+=k,k=""),je+=et,et===f&&ce!==Se-2&&(je+=Nr.charAt(ce+1),ce++)),St=!1,ce++}Yt||Q(a+fe)}return vt}}}}),HKa=ql((e,t)=>{"use strict";var r=cNe(),n=z1i(),a=ZRr();t.exports=I;var o=" ",l=` -`,A=" ",f=4;function I(C,b,E){for(var N=this,B=N.options,F=B.commonmark,Q=N.blockTokenizers,X=N.interruptParagraph,ae=b.indexOf(l),ne=b.length,ce,fe,ue,de,be;ae=f&&ue!==l){ae=b.indexOf(l,ae+1);continue}}if(fe=b.slice(ae+1),a(X,Q,N,[C,fe,!0]))break;if(ce=ae,ae=b.indexOf(l,ae+1),ae!==-1&&r(b.slice(ce,ae))===""){ae=ce;break}}return fe=b.slice(0,ae),E?!0:(be=C.now(),fe=n(fe),C(fe)({type:"paragraph",children:N.tokenizeInline(fe,be)}))}}),YKa=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("\\",a)}}),QKa=ql((e,t)=>{"use strict";var r=YKa();t.exports=o,o.locator=r;var n=` -`,a="\\";function o(l,A,f){var I=this,C,b;if(A.charAt(0)===a&&(C=A.charAt(1),I.escape.indexOf(C)!==-1))return f?!0:(C===n?b={type:"break"}:b={type:"text",value:C},l(a+C)(b))}}),t2i=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){return n.indexOf("<",a)}}),XKa=ql((e,t)=>{"use strict";var r=yee(),n=vbt(),a=t2i();t.exports=b,b.locator=a,b.notInLink=!0;var o="<",l=">",A="@",f="/",I="mailto:",C=I.length;function b(E,N,B){var F=this,Q="",X=N.length,ae=0,ne="",ce=!1,fe="",ue,de,be,Se,De;if(N.charAt(0)===o){for(ae++,Q=o;ae{"use strict";t.exports=r;function r(n,a){var o=String(n),l=0,A;if(typeof a!="string")throw new Error("Expected character");for(A=o.indexOf(a);A!==-1;)l++,A=o.indexOf(a,A+a.length);return l}}),UKa=ql((e,t)=>{"use strict";t.exports=n;var r=["www.","http://","https://"];function n(a,o){var l=-1,A,f,I;if(!this.options.gfm)return l;for(f=r.length,A=-1;++A{"use strict";var r=JKa(),n=vbt(),a=aNe(),o=X4e(),l=yee(),A=UKa();t.exports=de,de.locator=A,de.notInLink=!0;var f=33,I=38,C=41,b=42,E=44,N=45,B=46,F=58,Q=59,X=63,ae=60,ne=95,ce=126,fe="(",ue=")";function de(be,Se,De){var k=this,et=k.options.gfm,ct=k.inlineTokenizers,Me=Se.length,je=-1,St=!1,At,Yt,Tr,Nr,er,vt,xt,Zr,qt,Xt,lr,cr,Ar,qr;if(et){if(Se.slice(0,4)==="www.")St=!0,Nr=4;else if(Se.slice(0,7).toLowerCase()==="http://")Nr=7;else if(Se.slice(0,8).toLowerCase()==="https://")Nr=8;else return;for(je=Nr-1,Tr=Nr,At=[];Nrqt;)Nr=er+vt.lastIndexOf(ue),vt=Se.slice(er,Nr),Xt--;if(Se.charCodeAt(Nr-1)===Q&&(Nr--,o(Se.charCodeAt(Nr-1)))){for(Zr=Nr-2;o(Se.charCodeAt(Zr));)Zr--;Se.charCodeAt(Zr)===I&&(Nr=Zr)}return lr=Se.slice(0,Nr),Ar=n(lr,{nonTerminated:!1}),St&&(Ar="http://"+Ar),qr=k.enterLink(),k.inlineTokenizers={text:ct.text},cr=k.tokenizeInline(lr,be.now()),k.inlineTokenizers=ct,qr(),be(lr)({type:"link",title:null,url:Ar,children:cr})}}}}),jKa=ql((e,t)=>{"use strict";var r=aNe(),n=X4e(),a=43,o=45,l=46,A=95;t.exports=f;function f(C,b){var E=this,N,B;if(!this.options.gfm||(N=C.indexOf("@",b),N===-1))return-1;if(B=N,B===b||!I(C.charCodeAt(B-1)))return f.call(E,C,N+1);for(;B>b&&I(C.charCodeAt(B-1));)B--;return B}function I(C){return r(C)||n(C)||C===a||C===o||C===l||C===A}}),zKa=ql((e,t)=>{"use strict";var r=vbt(),n=aNe(),a=X4e(),o=jKa();t.exports=b,b.locator=o,b.notInLink=!0;var l=43,A=45,f=46,I=64,C=95;function b(E,N,B){var F=this,Q=F.options.gfm,X=F.inlineTokenizers,ae=0,ne=N.length,ce=-1,fe,ue,de,be;if(Q){for(fe=N.charCodeAt(ae);n(fe)||a(fe)||fe===l||fe===A||fe===f||fe===C;)fe=N.charCodeAt(++ae);if(ae!==0&&fe===I){for(ae++;ae{"use strict";var r=X4e(),n=t2i(),a=$1i().tag;t.exports=b,b.locator=n;var o="<",l="?",A="!",f="/",I=/^/i;function b(E,N,B){var F=this,Q=N.length,X,ae;if(!(N.charAt(0)!==o||Q<3)&&(X=N.charAt(1),!(!r(X)&&X!==l&&X!==A&&X!==f)&&(ae=N.match(a),!!ae)))return B?!0:(ae=ae[0],!F.inLink&&I.test(ae)?F.inLink=!0:F.inLink&&C.test(ae)&&(F.inLink=!1),E(ae)({type:"html",value:ae}))}}),r2i=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("[",a),l=n.indexOf("![",a);return l===-1||o{"use strict";var r=yee(),n=r2i();t.exports=Q,Q.locator=n;var a=` -`,o="!",l='"',A="'",f="(",I=")",C="<",b=">",E="[",N="\\",B="]",F="`";function Q(X,ae,ne){var ce=this,fe="",ue=0,de=ae.charAt(0),be=ce.options.pedantic,Se=ce.options.commonmark,De=ce.options.gfm,k,et,ct,Me,je,St,At,Yt,Tr,Nr,er,vt,xt,Zr,qt,Xt,lr,cr;if(de===o&&(Yt=!0,fe=de,de=ae.charAt(++ue)),de===E&&!(!Yt&&ce.inLink)){for(fe+=de,Zr="",ue++,er=ae.length,Xt=X.now(),xt=0,Xt.column+=ue,Xt.offset+=ue;ue=ct&&(ct=0):ct=et}else if(de===N)ue++,St+=ae.charAt(ue);else if((!ct||De)&&de===E)xt++;else if((!ct||De)&&de===B)if(xt)xt--;else{if(ae.charAt(ue+1)!==f)return;St+=f,k=!0,ue++;break}Zr+=St,St="",ue++}if(k){for(Tr=Zr,fe+=Zr+St,ue++;ue{"use strict";var r=yee(),n=r2i(),a=e2i();t.exports=B,B.locator=n;var o="link",l="image",A="shortcut",f="collapsed",I="full",C="!",b="[",E="\\",N="]";function B(F,Q,X){var ae=this,ne=ae.options.commonmark,ce=Q.charAt(0),fe=0,ue=Q.length,de="",be="",Se=o,De=A,k,et,ct,Me,je,St,At,Yt;if(ce===C&&(Se=l,be=ce,ce=Q.charAt(++fe)),ce===b){for(fe++,be+=ce,St="",Yt=0;fe{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("**",a),l=n.indexOf("__",a);return l===-1?o:o===-1||l{"use strict";var r=cNe(),n=yee(),a=t8a();t.exports=f,f.locator=a;var o="\\",l="*",A="_";function f(I,C,b){var E=this,N=0,B=C.charAt(N),F,Q,X,ae,ne,ce,fe;if(!(B!==l&&B!==A||C.charAt(++N)!==B)&&(Q=E.options.pedantic,X=B,ne=X+X,ce=C.length,N++,ae="",B="",!(Q&&n(C.charAt(N)))))for(;N{"use strict";t.exports=a;var r=String.fromCharCode,n=/\w/;function a(o){return n.test(typeof o=="number"?r(o):o.charAt(0))}}),i8a=ql((e,t)=>{"use strict";t.exports=r;function r(n,a){var o=n.indexOf("*",a),l=n.indexOf("_",a);return l===-1?o:o===-1||l{"use strict";var r=cNe(),n=n8a(),a=yee(),o=i8a();t.exports=I,I.locator=o;var l="*",A="_",f="\\";function I(C,b,E){var N=this,B=0,F=b.charAt(B),Q,X,ae,ne,ce,fe,ue;if(!(F!==l&&F!==A)&&(X=N.options.pedantic,ce=F,ae=F,fe=b.length,B++,ne="",F="",!(X&&a(b.charAt(B)))))for(;B{"use strict";t.exports=r;function r(n,a){return n.indexOf("~~",a)}}),a8a=ql((e,t)=>{"use strict";var r=yee(),n=o8a();t.exports=l,l.locator=n;var a="~",o="~~";function l(A,f,I){var C=this,b="",E="",N="",B="",F,Q,X;if(!(!C.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(F=1,Q=f.length,X=A.now(),X.column+=2,X.offset+=2;++F{"use strict";t.exports=r;function r(n,a){return n.indexOf("`",a)}}),l8a=ql((e,t)=>{"use strict";var r=c8a();t.exports=l,l.locator=r;var n=10,a=32,o=96;function l(A,f,I){for(var C=f.length,b=0,E,N,B,F,Q,X;b2&&(F===a||F===n)&&(Q===a||Q===n)){for(b++,C--;b{"use strict";t.exports=r;function r(n,a){for(var o=n.indexOf(` -`,a);o>a&&n.charAt(o-1)===" ";)o--;return o}}),g8a=ql((e,t)=>{"use strict";var r=u8a();t.exports=l,l.locator=r;var n=" ",a=` -`,o=2;function l(A,f,I){for(var C=f.length,b=-1,E="",N;++b{"use strict";t.exports=r;function r(n,a,o){var l=this,A,f,I,C,b,E,N,B,F,Q;if(o)return!0;for(A=l.inlineMethods,C=A.length,f=l.inlineTokenizers,I=-1,F=a.length;++I{"use strict";var r=oNe(),n=gKa(),a=AKa(),o=dKa(),l=_Ka(),A=yKa();t.exports=f;function f(b,E){this.file=E,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(E).toOffset,this.unescape=o(this,"escape"),this.decode=l(this)}var I=f.prototype;I.setOptions=SKa(),I.parse=NKa(),I.options=j1i(),I.exitStart=n("atStart",!0),I.enterList=n("inList",!1),I.enterLink=n("inLink",!1),I.enterBlock=n("inBlock",!1),I.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],I.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],I.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],I.blockTokenizers={blankLine:DKa(),indentedCode:kKa(),fencedCode:xKa(),blockquote:GKa(),atxHeading:FKa(),thematicBreak:ZKa(),list:VKa(),setextHeading:PKa(),html:WKa(),definition:OKa(),table:MKa(),paragraph:HKa()},I.inlineTokenizers={escape:QKa(),autoLink:XKa(),url:KKa(),email:zKa(),html:qKa(),link:$Ka(),reference:e8a(),strong:r8a(),emphasis:s8a(),deletion:a8a(),code:l8a(),break:g8a(),text:A8a()},I.blockMethods=C(I.blockTokenizers),I.inlineMethods=C(I.inlineTokenizers),I.tokenizeBlock=A("block"),I.tokenizeInline=A("inline"),I.tokenizeFactory=A;function C(b){var E=[],N;for(N in b)E.push(N);return E}}),p8a=ql((e,t)=>{"use strict";var r=uKa(),n=oNe(),a=d8a();t.exports=o,o.Parser=a;function o(l){var A=this.data("settings"),f=r(a);f.prototype.options=n(f.prototype.options,A,l),this.Parser=f}}),f8a=ql((e,t)=>{"use strict";t.exports=r;function r(n){if(n)throw n}}),n2i=ql((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),I8a=ql((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,n=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,l=function(C){return typeof Array.isArray=="function"?Array.isArray(C):n.call(C)==="[object Array]"},A=function(C){if(!C||n.call(C)!=="[object Object]")return!1;var b=r.call(C,"constructor"),E=C.constructor&&C.constructor.prototype&&r.call(C.constructor.prototype,"isPrototypeOf");if(C.constructor&&!b&&!E)return!1;var N;for(N in C);return typeof N>"u"||r.call(C,N)},f=function(C,b){a&&b.name==="__proto__"?a(C,b.name,{enumerable:!0,configurable:!0,value:b.newValue,writable:!0}):C[b.name]=b.newValue},I=function(C,b){if(b==="__proto__")if(r.call(C,b)){if(o)return o(C,b).value}else return;return C[b]};t.exports=function C(){var b,E,N,B,F,Q,X=arguments[0],ae=1,ne=arguments.length,ce=!1;for(typeof X=="boolean"&&(ce=X,X=arguments[1]||{},ae=2),(X==null||typeof X!="object"&&typeof X!="function")&&(X={});ae{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let n=Object.getPrototypeOf(r);return n===null||n===Object.prototype}}),m8a=ql((e,t)=>{"use strict";var r=[].slice;t.exports=n;function n(a,o){var l;return A;function A(){var C=r.call(arguments,0),b=a.length>C.length,E;b&&C.push(f);try{E=a.apply(null,C)}catch(N){if(b&&l)throw N;return f(N)}b||(E&&typeof E.then=="function"?E.then(I,f):E instanceof Error?f(E):I(E))}function f(){l||(l=!0,o.apply(null,arguments))}function I(C){f(null,C)}}}),C8a=ql((e,t)=>{"use strict";var r=m8a();t.exports=a,a.wrap=r;var n=[].slice;function a(){var o=[],l={};return l.run=A,l.use=f,l;function A(){var I=-1,C=n.call(arguments,0,-1),b=arguments[arguments.length-1];if(typeof b!="function")throw new Error("Expected function as last argument, not "+b);E.apply(null,[null].concat(C));function E(N){var B=o[++I],F=n.call(arguments,0),Q=F.slice(1),X=C.length,ae=-1;if(N){b(N);return}for(;++ae{"use strict";var r={}.hasOwnProperty;t.exports=n;function n(A){return!A||typeof A!="object"?"":r.call(A,"position")||r.call(A,"type")?o(A.position):r.call(A,"start")||r.call(A,"end")?o(A):r.call(A,"line")||r.call(A,"column")?a(A):""}function a(A){return(!A||typeof A!="object")&&(A={}),l(A.line)+":"+l(A.column)}function o(A){return(!A||typeof A!="object")&&(A={}),a(A.start)+"-"+a(A.end)}function l(A){return A&&typeof A=="number"?A:1}}),y8a=ql((e,t)=>{"use strict";var r=_8a();t.exports=o;function n(){}n.prototype=Error.prototype,o.prototype=new n;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(A,f,I){var C,b,E;typeof f=="string"&&(I=f,f=null),C=l(I),b=r(f)||"1:1",E={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(E=f,f=f.start):E.start=f),A.stack&&(this.stack=A.stack,A=A.message),this.message=A,this.name=b,this.reason=A,this.line=f?f.line:null,this.column=f?f.column:null,this.location=E,this.source=C[0],this.ruleId=C[1]}function l(A){var f=[null,null],I;return typeof A=="string"&&(I=A.indexOf(":"),I===-1?f[1]=A:(f[0]=A.slice(0,I),f[1]=A.slice(I+1))),f}}),b8a=ql(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=n,e.join=a,e.sep="/";function t(f,I){var C=0,b=-1,E,N,B,F;if(I!==void 0&&typeof I!="string")throw new TypeError('"ext" argument must be a string');if(A(f),E=f.length,I===void 0||!I.length||I.length>f.length){for(;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else b<0&&(B=!0,b=E+1);return b<0?"":f.slice(C,b)}if(I===f)return"";for(N=-1,F=I.length-1;E--;)if(f.charCodeAt(E)===47){if(B){C=E+1;break}}else N<0&&(B=!0,N=E+1),F>-1&&(f.charCodeAt(E)===I.charCodeAt(F--)?F<0&&(b=E):(F=-1,b=N));return C===b?b=N:b<0&&(b=f.length),f.slice(C,b)}function r(f){var I,C,b;if(A(f),!f.length)return".";for(I=-1,b=f.length;--b;)if(f.charCodeAt(b)===47){if(C){I=b;break}}else C||(C=!0);return I<0?f.charCodeAt(0)===47?"/":".":I===1&&f.charCodeAt(0)===47?"//":f.slice(0,I)}function n(f){var I=-1,C=0,b=-1,E=0,N,B,F;for(A(f),F=f.length;F--;){if(B=f.charCodeAt(F),B===47){if(N){C=F+1;break}continue}b<0&&(N=!0,b=F+1),B===46?I<0?I=F:E!==1&&(E=1):I>-1&&(E=-1)}return I<0||b<0||E===0||E===1&&I===b-1&&I===C+1?"":f.slice(I,b)}function a(){for(var f=-1,I;++f2){if(Q=C.lastIndexOf("/"),Q!==C.length-1){Q<0?(C="",b=0):(C=C.slice(0,Q),b=C.length-1-C.lastIndexOf("/")),E=B,N=0;continue}}else if(C.length){C="",b=0,E=B,N=0;continue}}I&&(C=C.length?C+"/..":"..",b=2)}else C.length?C+="/"+f.slice(E+1,B):C=f.slice(E+1,B),b=B-E-1;E=B,N=0}else F===46&&N>-1?N++:N=-1}return C}function A(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),E8a=ql(e=>{"use strict";e.cwd=t;function t(){return"/"}}),S8a=ql((e,t)=>{"use strict";var r=b8a(),n=E8a(),a=n2i();t.exports=A;var o={}.hasOwnProperty,l=["history","path","basename","stem","extname","dirname"];A.prototype.toString=ae,Object.defineProperty(A.prototype,"path",{get:f,set:I}),Object.defineProperty(A.prototype,"dirname",{get:C,set:b}),Object.defineProperty(A.prototype,"basename",{get:E,set:N}),Object.defineProperty(A.prototype,"extname",{get:B,set:F}),Object.defineProperty(A.prototype,"stem",{get:Q,set:X});function A(ue){var de,be;if(!ue)ue={};else if(typeof ue=="string"||a(ue))ue={contents:ue};else if("message"in ue&&"messages"in ue)return ue;if(!(this instanceof A))return new A(ue);for(this.data={},this.messages=[],this.history=[],this.cwd=n.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(ue||""))}function Q(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function X(ue){ce(ue,"stem"),ne(ue,"stem"),this.path=r.join(this.dirname||"",ue+(this.extname||""))}function ae(ue){return(this.contents||"").toString(ue)}function ne(ue,de){if(ue&&ue.indexOf(r.sep)>-1)throw new Error("`"+de+"` cannot be a path: did not expect `"+r.sep+"`")}function ce(ue,de){if(!ue)throw new Error("`"+de+"` cannot be empty")}function fe(ue,de){if(!ue)throw new Error("Setting `"+de+"` requires `path` to be set too")}}),v8a=ql((e,t)=>{"use strict";var r=y8a(),n=S8a();t.exports=n,n.prototype.message=a,n.prototype.info=l,n.prototype.fail=o;function a(A,f,I){var C=new r(A,f,I);return this.path&&(C.name=this.path+":"+C.name,C.file=this.path),C.fatal=!1,this.messages.push(C),C}function o(){var A=this.message.apply(this,arguments);throw A.fatal=!0,A}function l(){var A=this.message.apply(this,arguments);return A.fatal=null,A}}),B8a=ql((e,t)=>{"use strict";t.exports=v8a()}),w8a=ql((e,t)=>{"use strict";var r=f8a(),n=n2i(),a=I8a(),o=h8a(),l=C8a(),A=B8a();t.exports=B().freeze();var f=[].slice,I={}.hasOwnProperty,C=l().use(b).use(E).use(N);function b(ue,de){de.tree=ue.parse(de.file)}function E(ue,de,be){ue.run(de.tree,de.file,Se);function Se(De,k,et){De?be(De):(de.tree=k,de.file=et,be())}}function N(ue,de){var be=ue.stringify(de.tree,de.file);be==null||(typeof be=="string"||n(be)?("value"in de.file&&(de.file.value=be),de.file.contents=be):de.file.result=be)}function B(){var ue=[],de=l(),be={},Se=-1,De;return k.data=ct,k.freeze=et,k.attachers=ue,k.use=Me,k.parse=St,k.stringify=Tr,k.run=At,k.runSync=Yt,k.process=Nr,k.processSync=er,k;function k(){for(var vt=B(),xt=-1;++xtC2i,options:()=>_2i,parsers:()=>HRr,printers:()=>B2i});var T8a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},DG=T8a,R8a=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},n4=R8a,N8a=sNe(GRr(),1);function Bbt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var Tme="string",dce="array",wbt="cursor",lNe="indent",uNe="align",J4e="trim",pce="group",Rme="fill",Ace="if-break",U4e="indent-if-break",K4e="line-suffix",j4e="line-suffix-boundary",bee="line",z4e="label",gNe="break-parent",s2i=new Set([wbt,lNe,uNe,J4e,pce,Rme,Ace,U4e,K4e,j4e,bee,z4e,gNe]);function D8a(e){if(typeof e=="string")return Tme;if(Array.isArray(e))return dce;if(!e)return;let{type:t}=e;if(s2i.has(t))return t}var fce=D8a,k8a=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function x8a(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(fce(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=k8a([...s2i].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var G8a=class extends Error{name="InvalidDocError";constructor(e){super(x8a(e)),this.doc=e}},Cbt=G8a,T1i={};function F8a(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===T1i){r(a.pop());continue}r&&a.push(o,T1i);let l=fce(o);if(!l)throw new Cbt(o);if(t?.(o)!==!1)switch(l){case dce:case Rme:{let A=l===dce?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case Ace:a.push(o.flatContents,o.breakContents);break;case pce:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case uNe:case lNe:case U4e:case z4e:case K4e:a.push(o.contents);break;case Tme:case wbt:case J4e:case j4e:case bee:case gNe:break;default:throw new Cbt(o)}}}var Z8a=F8a;function L8a(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(fce(o)){case dce:return t(o.map(n));case Rme:return t({...o,parts:o.parts.map(n)});case Ace:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case pce:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case uNe:case lNe:case U4e:case z4e:case K4e:return t({...o,contents:n(o.contents)});case Tme:case wbt:case J4e:case j4e:case bee:case gNe:return t(o);default:throw new Cbt(o)}}}function R1i(e){if(e.length>0){let t=n4(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function V8a(e){let t=new Set,r=[];function n(o){if(o.type===gNe&&R1i(r),o.type===pce){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===pce&&r.pop().break&&R1i(r)}Z8a(e,n,a,!0)}function tNe(e,t=TRr){return L8a(e,r=>typeof r=="string"?l2i(t,r.split(` -`)):r)}var LRr=()=>{},nNe=LRr,o2i=LRr,P8a=LRr;function wRr(e){return nNe(e),{type:lNe,contents:e}}function wme(e,t){return nNe(t),{type:uNe,contents:t,n:e}}function hbt(e,t={}){return nNe(e),o2i(t.expandedStates,!0),{type:pce,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function _bt(e){return wme({type:"root"},e)}function VRr(e){return P8a(e),{type:Rme,parts:e}}function W8a(e,t="",r={}){return nNe(e),t!==""&&nNe(t),{type:Ace,breakContents:e,flatContents:t,groupId:r.groupId}}var ybt={type:gNe},PRr={type:bee,hard:!0},O8a={type:bee,hard:!0,literal:!0},a2i={type:bee},c2i={type:bee,soft:!0},DR=[PRr,ybt],TRr=[O8a,ybt];function l2i(e,t){nNe(e),o2i(t);let r=[];for(let n=0;nMath.max(n,a.length/t.length),0)}var u2i=M8a;function H8a(e,t){let r=e.match(new RegExp(`(${Bbt(t)})+`,"gu"));if(r===null)return 0;let n=new Map,a=0;for(let o of r){let l=o.length/t.length;n.set(l,!0),l>a&&(a=l)}for(let o=1;oo?n:r}var X8a=Q8a,J8a=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},U8a=J8a,K8a=sNe(GRr(),1);function j8a(e){return e?.type==="front-matter"}var z8a=j8a,W4e=3;function q8a(e){let t=e.slice(0,W4e);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` -`,W4e);if(r===-1)return;let n=e.slice(W4e,r).trim(),a=e.indexOf(` -${t}`,r),o=n;if(o||(o=t==="+++"?"toml":"yaml"),a===-1&&t==="---"&&o==="yaml"&&(a=e.indexOf(` -...`,r)),a===-1)return;let l=a+1+W4e,A=e.charAt(l+1);if(!/\s?/u.test(A))return;let f=e.slice(0,l);return{type:"front-matter",language:o,explicitLanguage:n,value:e.slice(r+1,a),startDelimiter:t,endDelimiter:f.slice(-W4e),raw:f}}function $8a(e){let t=q8a(e);if(!t)return{content:e};let{raw:r}=t;return{frontMatter:t,content:DG(!1,r,/[^\n]/gu," ")+e.slice(r.length)}}var WRr=$8a,g2i=["format","prettier"];function A2i(e){let t=`@(${g2i.join("|")})`,r=new RegExp([``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``].join("|"),"mu"),n=e.match(r);return n?.index===0}var eja=e=>A2i(WRr(e).content.trimStart()),tja=e=>{let t=WRr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} - -${r} - -${t.content}`:`${r} - -${t.content}`},rja=new Set(["position","raw"]);function d2i(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=DG(!1,e.value,` -`," ")),e.type==="wikiLink"&&(t.value=DG(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,K8a.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let n of"<>")t.url=DG(!1,e.url,n,encodeURIComponent(n));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=DG(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||z8a(r.children[0])&&r.children[1]===e)&&e.type==="html"&&A2i(e.value))return null}d2i.ignoredProperties=rja;var nja=d2i,ija=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,M4e=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function sja(e,t){if(e.language==="yaml"){let r=e.value.trim(),n=r?await t(r,{parser:"yaml"}):"";return _bt([e.startDelimiter,e.explicitLanguage,DR,n,n?DR:"",e.endDelimiter])}}var oja=sja,aja=e=>String(e).split(/[/\\]/u).pop();function D1i(e,t){if(!t)return;let r=aja(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function cja(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function lja(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=cja(r,t.language)??D1i(r,t.physicalFile)??D1i(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var uja=lja,gja=new Proxy(()=>{},{get:()=>gja});function bbt(e){return e.position.start.offset}function Ebt(e){return e.position.end.offset}var p2i=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),f2i=new Set([...p2i,"tableCell","paragraph","heading"]),Q4e="non-cjk",_ee="cj-letter",iNe="k-letter",Sbt="cjk-punctuation",Aja=/\p{Script_Extensions=Hangul}/u;function I2i(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` -`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let l=o.split(new RegExp(`(${ija.source})`,"u"));for(let[A,f]of l.entries())if(!((A===0||A===l.length-1)&&f==="")){if(A%2===0){f!==""&&n({type:"word",value:f,kind:Q4e,isCJ:!1,hasLeadingPunctuation:M4e.test(f[0]),hasTrailingPunctuation:M4e.test(n4(!1,f,-1))});continue}if(M4e.test(f)){n({type:"word",value:f,kind:Sbt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(Aja.test(f)){n({type:"word",value:f,kind:iNe,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}n({type:"word",value:f,kind:_ee,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function n(a){let o=n4(!1,t,-1);o?.type==="word"&&!l(Q4e,Sbt)&&![o.value,a.value].some(A=>/\u3000/u.test(A))&&t.push({type:"whitespace",value:""}),t.push(a);function l(A,f){return o.kind===A&&a.kind===f||o.kind===f&&a.kind===A}}}function H4e(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:n,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(n),leadingSpaces:a}}function dja(e,t){return!e.ordered||e.children.length<2||H4e(e.children[1],t).number!==1?!1:H4e(e.children[0],t).number!==0?!0:e.children.length>2&&H4e(e.children[2],t).number===1}function h2i(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` -`)&&t.endsWith(` -`)?r.slice(0,-1):r}function ANe(e,t){return function r(n,a,o){let l={...t(n,a,o)};return l.children&&(l.children=l.children.map((A,f)=>r(A,f,[l,...o]))),l}(e,null,[])}function k1i(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return bbt(e)===bbt(t)&&Ebt(e)===Ebt(t)}function pja(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let n=uja(t,{language:r.lang});if(n)return async a=>{let o=t.__inJsTemplate?"~":"`",l=o.repeat(Math.max(3,u2i(r.value,o)+1)),A={parser:n};r.lang==="ts"||r.lang==="typescript"?A.filepath="dummy.ts":r.lang==="tsx"&&(A.filepath="dummy.tsx");let f=await a(h2i(r,t.originalText),A);return _bt([l,r.lang,r.meta?" "+r.meta:"",DR,tNe(f),DR,l])}}switch(r.type){case"front-matter":return n=>oja(r,n);case"import":case"export":return n=>n(r.value,{parser:"babel"});case"jsx":return n=>n(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var fja=pja,O4e=null;function Y4e(e){if(O4e!==null&&typeof O4e.property){let t=O4e;return O4e=Y4e.prototype=null,t}return O4e=Y4e.prototype=e??Object.create(null),new Y4e}var Ija=10;for(let e=0;e<=Ija;e++)Y4e();function hja(e){return Y4e(e)}function mja(e,t="type"){hja(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var Cja=mja,_ja={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},yja=_ja,bja=Cja(yja),Eja=bja;function Sja(e){switch(e){case"cr":return"\r";case"crlf":return`\r -`;default:return` -`}}var vja=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function Bja(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function wja(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Tja=e=>!(Bja(e)||wja(e)),Rja=/[^\x20-\x7F]/u;function Nja(e){if(!e)return 0;if(!Rja.test(e))return e.length;e=e.replace(vja()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Tja(n)?1:2)}return t}var ORr=Nja,IV=Symbol("MODE_BREAK"),uj=Symbol("MODE_FLAT"),rNe=Symbol("cursor"),RRr=Symbol("DOC_FILL_PRINTED_LENGTH");function m2i(){return{value:"",length:0,queue:[]}}function Dja(e,t){return NRr(e,{type:"indent"},t)}function kja(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||m2i():t<0?NRr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:NRr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function NRr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function DRr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===rNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(rNe);return t}function Ibt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=fce(C);switch(b){case Tme:f.push(C),r-=ORr(C);break;case dce:case Rme:{let E=b===dce?C:C.parts,N=C[RRr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case lNe:case uNe:case U4e:case z4e:A.push({mode:I,doc:C.contents});break;case J4e:r+=DRr(f);break;case pce:{if(o&&C.break)return!1;let E=C.break?IV:I,N=C.expandedStates&&E===IV?n4(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case Ace:{let E=(C.groupId?a[C.groupId]||uj:I)===IV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case bee:if(I===IV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case K4e:n=!0;break;case j4e:if(n)return!1;break}}return!1}function xja(e,t){let r={},n=t.printWidth,a=Sja(t.endOfLine),o=0,l=[{ind:m2i(),mode:IV,doc:e}],A=[],f=!1,I=[],C=0;for(V8a(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(fce(B)){case Tme:{let F=a!==` -`?DG(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=ORr(F));break}case dce:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case wbt:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(rNe),C++;break;case lNe:l.push({ind:Dja(E,t),mode:N,doc:B.contents});break;case uNe:l.push({ind:kja(E,B.n,t),mode:N,doc:B.contents});break;case J4e:o-=DRr(A);break;case pce:switch(N){case uj:if(!f){l.push({ind:E,mode:B.break?IV:uj,doc:B.contents});break}case IV:{f=!1;let F={ind:E,mode:uj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&Ibt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=n4(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:IV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:IV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:uj,doc:ce};if(Ibt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:IV,doc:B.contents});break}}B.id&&(r[B.id]=n4(!1,l,-1).mode);break;case Rme:{let F=n-o,Q=B[RRr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:uj,doc:ne},ue={ind:E,mode:IV,doc:ne},de=Ibt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:uj,doc:ce},Se={ind:E,mode:IV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[RRr]:Q+2}};Ibt({ind:E,mode:uj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case Ace:case U4e:{let F=B.groupId?r[B.groupId]:N;if(F===IV){let Q=B.type===Ace?B.breakContents:B.negate?B.contents:wRr(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===uj){let Q=B.type===Ace?B.flatContents:B.negate?wRr(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case K4e:I.push({ind:E,mode:N,doc:B.contents});break;case j4e:I.length>0&&l.push({ind:E,mode:N,doc:PRr});break;case bee:switch(N){case uj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case IV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=DRr(A),A.push(a+E.value),o=E.length);break}break;case z4e:l.push({ind:E,mode:N,doc:B.contents});break;case gNe:break;default:throw new Cbt(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(rNe);if(b!==-1){let E=A.indexOf(rNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==rNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function Gja(e,t,r){let{node:n}=e,a=[],o=e.map(()=>e.map(({index:b})=>{let E=xja(r(),t).formatted,N=ORr(E);return a[b]=Math.max(a[b]??3,N),{text:E,width:N}},"children"),"children"),l=f(!1);if(t.proseWrap!=="never")return[ybt,l];let A=f(!0);return[ybt,hbt(W8a(A,l))];function f(b){return l2i(PRr,[C(o[0],b),I(b),...o.slice(1).map(E=>C(E,b))].map(E=>`| ${E.join(" | ")} |`))}function I(b){return a.map((E,N)=>{let B=n.align[N],F=B==="center"||B==="left"?":":"-",Q=B==="center"||B==="right"?":":"-",X=b?"-":"-".repeat(E-2);return`${F}${X}${Q}`})}function C(b,E){return b.map(({text:N,width:B},F)=>{if(E)return N;let Q=a[F]-B,X=n.align[F],ae=0;X==="right"?ae=Q:X==="center"&&(ae=Math.floor(Q/2));let ne=Q-ae;return`${" ".repeat(ae)}${N}${" ".repeat(ne)}`})}}function Fja(e,t,r){let n=e.map(r,"children");return Zja(n)}function Zja(e){let t=[""];return function r(n){for(let a of n){let o=fce(a);if(o===dce){r(a);continue}let l=a,A=[];o===Rme&&([l,...A]=a.parts),t.push([t.pop(),l],...A)}}(e),VRr(t)}var r4,Lja=class{constructor(e){nKa(this,r4),iKa(this,r4,new Set(e))}getLeadingWhitespaceCount(e){let t=gce(this,r4),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return gce(this,r4).has(e.charAt(0))}hasTrailingWhitespace(e){return gce(this,r4).has(n4(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Bbt([...gce(this,r4)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=gce(this,r4);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=gce(this,r4);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=gce(this,r4);return Array.prototype.every.call(e,r=>t.has(r))}};r4=new WeakMap;var Vja=Lja,Pja=[" ",` -`,"\f","\r"," "],Wja=new Vja(Pja),x1i=Wja,Oja=/^.$/su;function Mja(e,t){return e=Hja(e,t),e=Qja(e),e=Jja(e,t),e=Uja(e,t),e=Xja(e),e}function Hja(e,t){return ANe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!Oja.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function Yja(e,t,r){return ANe(e,n=>{if(!n.children)return n;let a=n.children.reduce((o,l)=>{let A=n4(!1,o,-1);return A&&t(A,l)?o.splice(-1,1,r(A,l)):o.push(l),o},[]);return{...n,children:a}})}function Qja(e){return Yja(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function Xja(e){return ANe(e,(t,r,[n])=>{if(t.type!=="text")return t;let{value:a}=t;return n.type==="paragraph"&&(r===0&&(a=x1i.trimStart(a)),r===n.children.length-1&&(a=x1i.trimEnd(a))),{type:"sentence",position:t.position,children:I2i(a)}})}function Jja(e,t){return ANe(e,(r,n,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let l=0;l{if(a.type==="list"&&a.children.length>0){for(let A=0;A1)return!0;let A=r(o);if(A===-1)return!1;if(a.children.length===1)return A%t.tabWidth===0;let f=r(l);return A!==f?!1:A%t.tabWidth===0?!0:H4e(l,t).leadingSpaces.length>1}}var Kja=Mja;function jja(e,t){let r=[""];return e.each(()=>{let{node:n}=e,a=t();switch(n.type){case"whitespace":if(fce(a)!==Tme){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),VRr(r)}var zja=new Set(["heading","tableCell","link","wikiLink"]),G1i=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function qja({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let n=1;nt[""]}return e.usesCJSpaces}function $ja(e,t){if(t)return!0;let{previous:r,next:n}=e;if(!r||!n)return!0;let a=r.kind,o=n.kind;return F1i(a)&&F1i(o)||a===iNe&&o===_ee||o===iNe&&a===_ee?!0:a===Sbt||o===Sbt||a===_ee&&o===_ee?!1:G1i.has(n.value[0])||G1i.has(n4(!1,r.value,-1))?!0:r.hasTrailingPunctuation||n.hasLeadingPunctuation?!1:qja(e)}function F1i(e){return e===Q4e||e===iNe}function e6a(e,t,r,n){if(r!=="always"||e.hasAncestor(l=>zja.has(l.type)))return!1;if(n)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===iNe&&o.kind===_ee||o.kind===iNe&&a.kind===_ee?!0:!(a.isCJ||o.isCJ)}function Z1i(e,t,r,n){if(r==="preserve"&&t===` -`)return DR;let a=t===" "||t===` -`&&$ja(e,n);return e6a(e,t,r,n)?a?a2i:c2i:a?" ":""}var t6a=new Set(["listItem","definition"]);function r6a(e,t,r){var n,a;let{node:o}=e;if(c6a(e)){let l=[""],A=I2i(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of A){if(f.type==="word"){l.push([l.pop(),f.value]);continue}let I=Z1i(e,f.value,t.proseWrap,!0);if(fce(I)===Tme){l.push([l.pop(),I]);continue}l.push(I,"")}return VRr(l)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[s6a(e,t,r),DR];case"paragraph":return Fja(e,t,r);case"sentence":return jja(e,r);case"word":{let l=DG(!1,DG(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${M4e.source})(_+)`,`(_+)(${M4e.source}|$)`].join("|"),"gu"),(I,C,b,E,N)=>DG(!1,b?`${C}${b}`:`${E}${N}`,"_",String.raw`\_`)),A=(I,C,b)=>I.type==="sentence"&&b===0,f=(I,C,b)=>k1i(I.children[b-1]);return l!==o.value&&(e.match(void 0,A,f)||e.match(void 0,A,(I,C,b)=>I.type==="emphasis"&&b===0,f))&&(l=l.replace(/^(\\?[*_])+/u,I=>DG(!1,I,"\\",""))),l}case"whitespace":{let{next:l}=e,A=l&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(l.value)?"never":t.proseWrap;return Z1i(e,o.value,A)}case"emphasis":{let l;if(k1i(o.children[0]))l=t.originalText[o.position.start.offset];else{let{previous:A,next:f}=e;l=A?.type==="sentence"&&((n=n4(!1,A.children,-1))==null?void 0:n.type)==="word"&&!n4(!1,A.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(I=>I.type==="emphasis")?"*":"_"}return[l,fV(e,t,r),l]}case"strong":return["**",fV(e,t,r),"**"];case"delete":return["~~",fV(e,t,r),"~~"];case"inlineCode":{let l=t.proseWrap==="preserve"?o.value:DG(!1,o.value,` -`," "),A=Y8a(l,"`"),f="`".repeat(A||1),I=l.startsWith("`")||l.endsWith("`")||/^[\n ]/u.test(l)&&/[\n ]$/u.test(l)&&/[^\n ]/u.test(l)?" ":"";return[f,I,l,I,f]}case"wikiLink":{let l="";return t.proseWrap==="preserve"?l=o.value:l=DG(!1,o.value,/[\t\n]+/gu," "),["[[",l,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let l="mailto:";return["<",o.url.startsWith(l)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+l.length)!==l?o.url.slice(l.length):o.url,">"]}case"[":return["[",fV(e,t,r),"](",vRr(o.url,")"),mbt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",vRr(o.url,")"),mbt(o.title,t),")"];case"blockquote":return["> ",wme("> ",fV(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",fV(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return wme(f,[f,tNe(o.value,DR)])}let l=t.__inJsTemplate?"~":"`",A=l.repeat(Math.max(3,u2i(o.value,l)+1));return[A,o.lang||"",o.meta?" "+o.meta:"",DR,tNe(h2i(o,t.originalText),DR),DR,A]}case"html":{let{parent:l,isLast:A}=e,f=l.type==="root"&&A?o.value.trimEnd():o.value,I=/^$/su.test(f);return tNe(f,I?DR:_bt(TRr))}case"list":{let l=V1i(o,e.parent),A=dja(o,t);return fV(e,t,r,{processor(f){let I=b(),C=f.node;if(C.children.length===2&&C.children[1].type==="html"&&C.children[0].position.start.column!==C.children[1].position.start.column)return[I,L1i(f,t,r,I)];return[I,wme(" ".repeat(I.length),L1i(f,t,r,I))];function b(){let E=o.ordered?(f.isFirst?o.start:A?1:o.start+f.index)+(l%2===0?". ":") "):l%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?n6a(E,t):E}}})}case"thematicBreak":{let{ancestors:l}=e,A=l.findIndex(f=>f.type==="list");return A===-1?"---":V1i(l[A],l[A+1])%2===0?"***":"---"}case"linkReference":return["[",fV(e,t,r),"]",o.referenceType==="full"?BRr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",BRr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let l=t.proseWrap==="always"?a2i:" ";return hbt([BRr(o),":",wRr([l,vRr(o.url),o.title===null?"":[l,mbt(o.title,t,!1)]])])}case"footnote":return["[^",fV(e,t,r),"]"];case"footnoteReference":return M1i(o);case"footnoteDefinition":{let l=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[M1i(o),": ",l?fV(e,t,r):hbt([wme(" ".repeat(4),fV(e,t,r,{processor:({isFirst:A})=>A?hbt([c2i,r()]):r()}))])]}case"table":return Gja(e,t,r);case"tableCell":return fV(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",_bt(TRr)]:["\\",DR];case"liquidNode":return tNe(o.value,DR);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",DR,o.value?[tNe(o.value,DR),DR]:"","$$"];case"inlineMath":return t.originalText.slice(bbt(o),Ebt(o));case"tableRow":case"listItem":case"text":default:throw new U8a(o,"Markdown")}}function L1i(e,t,r,n){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,fV(e,t,r,{processor({node:l,isFirst:A}){if(A&&l.type!=="list")return wme(" ".repeat(o.length),r());let f=" ".repeat(u6a(t.tabWidth-n.length,0,3));return[f,wme(f,r())]}})]}function n6a(e,t){let r=n();return e+" ".repeat(r>=4?0:r);function n(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function V1i(e,t){return i6a(e,t,r=>r.ordered===e.ordered)}function i6a(e,t,r){let n=-1;for(let a of t.children)if(a.type===e.type&&r(a)?n++:n=-1,a===e)return n}function s6a(e,t,r){let n=[],a=null,{children:o}=e.node;for(let[l,A]of o.entries())switch(MRr(A)){case"start":a===null&&(a={index:l,offset:A.position.end.offset});break;case"end":a!==null&&(n.push({start:a,end:{index:l,offset:A.position.start.offset}}),a=null);break;default:break}return fV(e,t,r,{processor({index:l}){if(n.length>0){let A=n[0];if(l===A.start.index)return[P1i(o[A.start.index]),t.originalText.slice(A.start.offset,A.end.offset),P1i(o[A.end.index])];if(A.start.index{let l=a(e);l!==!1&&(o.length>0&&o6a(e)&&(o.push(DR),(a6a(e,t)||O1i(e))&&o.push(DR),O1i(e)&&o.push(DR)),o.push(l))},"children"),o}function P1i(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function MRr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function o6a({node:e,parent:t}){let r=p2i.has(e.type),n=e.type==="html"&&f2i.has(t.type);return!r&&!n}function W1i(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` -`)}function a6a({node:e,previous:t,parent:r},n){if(W1i(t,n))return!0;let a=t.type===e.type&&t6a.has(e.type),o=r.type==="listItem"&&!W1i(r,n),l=MRr(t)==="next",A=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||l||A||f)}function O1i({node:e,previous:t}){let r=t.type==="list",n=e.type==="code"&&e.isIndented;return r&&n}function c6a(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var l6a=(e,t)=>{for(let r of t)e=DG(!1,e,r,encodeURIComponent(r));return e};function vRr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(n=>Bbt(n)).join("|"),"u").test(e)?`<${l6a(e,"<>")}>`:e}function mbt(e,t,r=!0){if(!e)return"";if(r)return" "+mbt(e,t,!1);if(e=DG(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let n=X8a(e,t.singleQuote);return e=DG(!1,e,"\\","\\\\"),e=DG(!1,e,n,`\\${n}`),`${n}${e}${n}`}function u6a(e,t,r){return Math.max(t,Math.min(e,r))}function g6a(e){return e.index>0&&MRr(e.previous)==="next"}function BRr(e){return`[${(0,N8a.default)(e.label)}]`}function M1i(e){return`[^${e.label}]`}var A6a={preprocess:Kja,print:r6a,embed:fja,massageAstNode:nja,hasPrettierIgnore:g6a,insertPragma:tja,getVisitorKeys:Eja},d6a=A6a,C2i=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],H1i={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},p6a={proseWrap:H1i.proseWrap,singleQuote:H1i.singleQuote},_2i=p6a,HRr={};J1i(HRr,{markdown:()=>Q1i,mdx:()=>G6a,remark:()=>Q1i});var f6a=sNe(sKa(),1),I6a=sNe(cKa(),1),h6a=sNe(p8a(),1),m6a=sNe(w8a(),1),C6a=/^import\s/u,_6a=/^export\s/u,y6a=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,b6a=/|/u,E6a=/^\{\s*\/\*(.*)\*\/\s*\}/u,S6a=` - -`,y2i=e=>C6a.test(e),kRr=e=>_6a.test(e),b2i=(e,t)=>{let r=t.indexOf(S6a),n=t.slice(0,r);if(kRr(n)||y2i(n))return e(n)({type:kRr(n)?"export":"import",value:n})},E2i=(e,t)=>{let r=E6a.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};b2i.locator=e=>kRr(e)||y2i(e)?-1:1;E2i.locator=(e,t)=>e.indexOf("{",t);var v6a=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:n,inlineMethods:a}=e.prototype;t.esSyntax=b2i,n.esComment=E2i,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},B6a=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,n){let a=WRr(n);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},w6a=B6a;function T6a(){return e=>ANe(e,(t,r,[n])=>t.type!=="html"||b6a.test(t.value)||f2i.has(n.type)?t:{...t,type:"jsx"})}var R6a=T6a,N6a=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(n,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return n(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(n,a){return n.indexOf("{",a)}},D6a=N6a,k6a=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,n=r.inlineMethods;n.splice(n.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,l){let A=t.exec(l);if(A){let f=A.groups.linkContents.trim();return o(A[0])({type:e,value:f})}}a.locator=function(o,l){return o.indexOf("[",l)}},x6a=k6a;function S2i({isMDX:e}){return t=>{let r=(0,m6a.default)().use(h6a.default,{commonmark:!0,...e&&{blocks:[y6a]}}).use(f6a.default).use(w6a).use(I6a.default).use(e?v6a:Y1i).use(D6a).use(e?R6a:Y1i).use(x6a);return r.run(r.parse(t))}}function Y1i(){}var v2i={astFormat:"mdast",hasPragma:eja,locStart:bbt,locEnd:Ebt},Q1i={...v2i,parse:S2i({isMDX:!1})},G6a={...v2i,parse:S2i({isMDX:!0})},B2i={mdast:d6a},F6a=i2i;var Xme={};sI(Xme,{default:()=>Fnc,parsers:()=>Sce});var HSi=Object.defineProperty,YSi=e=>{throw TypeError(e)},Z6a=(e,t,r)=>t in e?HSi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,QSi=(e,t)=>{for(var r in t)HSi(e,r,{get:t[r],enumerable:!0})},$4e=(e,t,r)=>Z6a(e,typeof t!="symbol"?t+"":t,r),L6a=(e,t,r)=>t.has(e)||YSi("Cannot "+r),V6a=(e,t,r)=>t.has(e)?YSi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),fg=(e,t,r)=>(L6a(e,t,"access private method"),r),XSi={};QSi(XSi,{parsers:()=>Sce});var Sce={};QSi(Sce,{typescript:()=>Gnc});var P6a=()=>()=>{},TNr=P6a,W6a=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},bNe=W6a,O6a="5.7",x2=[],M6a=new Map;function aJe(e){return e!==void 0?e.length:0}function hO(e,t){if(e!==void 0)for(let r=0;r0;return!1}function NNr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function J6a(e,t,r=kNr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let n=0;ne?.at(t):(e,t)=>{if(e!==void 0&&(t=sNr(e,t),t>1),f=r(e[A],A);switch(n(f,t)){case-1:o=A+1;break;case 0:return A;case 1:l=A-1;break}}return~o}function t7a(e,t,r,n,a){if(e&&e.length>0){let o=e.length;if(o>0){let l=n===void 0||n<0?0:n,A=a===void 0||l+a>o-1?o-1:l+a,f;for(arguments.length<=2?(f=e[l],l++):f=r;l<=A;)f=t(f,e[l],l),l++;return f}}return r}var jSi=Object.prototype.hasOwnProperty;function fj(e,t){return jSi.call(e,t)}function r7a(e){let t=[];for(let r in e)jSi.call(e,r)&&t.push(r);return t}function n7a(){let e=new Map;return e.add=i7a,e.remove=s7a,e}function i7a(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function s7a(e,t){let r=this.get(e);r!==void 0&&(p7a(r,t),r.length||this.delete(e))}function Tee(e){return Array.isArray(e)}function QRr(e){return Tee(e)?e:[e]}function o7a(e,t){return e!==void 0&&t(e)?e:void 0}function Aj(e,t){return e!==void 0&&t(e)?e:Zo.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Zo.getFunctionName(t)}'.`)}function RNe(e){}function a7a(){return!0}function VE(e){return e}function T2i(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function eH(e){let t=new Map;return r=>{let n=`${typeof r}:${r}`,a=t.get(n);return a===void 0&&!t.has(n)&&(a=e(r),t.set(n,a)),a}}function kNr(e,t){return e===t}function xNr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function c7a(e,t){return kNr(e,t)}function l7a(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?A-r:1),C=Math.floor(t.length>r+A?r+A:t.length);a[0]=A;let b=A;for(let N=1;Nr)return;let E=n;n=a,a=E}let l=n[t.length];return l>r?void 0:l}function A7a(e,t,r){let n=e.length-t.length;return n>=0&&(r?xNr(e.slice(n),t):e.indexOf(t,n)===n)}function d7a(e,t){e[t]=e[e.length-1],e.pop()}function p7a(e,t){return f7a(e,r=>r===t)}function f7a(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ft){return e.currentLogLevel<=Ft}e.shouldLog=r;function n(Ft,zr){e.loggingHost&&r(Ft)&&e.loggingHost.log(Ft,zr)}function a(Ft){n(3,Ft)}e.log=a,(Ft=>{function zr(ps){n(1,ps)}Ft.error=zr;function Rn(ps){n(2,ps)}Ft.warn=Rn;function Or(ps){n(3,ps)}Ft.log=Or;function Qi(ps){n(4,ps)}Ft.trace=Qi})(a=e.log||(e.log={}));let o={};function l(){return t}e.getAssertionLevel=l;function A(Ft){let zr=t;if(t=Ft,Ft>zr)for(let Rn of r7a(o)){let Or=o[Rn];Or!==void 0&&e[Rn]!==Or.assertion&&Ft>=Or.level&&(e[Rn]=Or,o[Rn]=void 0)}}e.setAssertionLevel=A;function f(Ft){return t>=Ft}e.shouldAssert=f;function I(Ft,zr){return f(Ft)?!0:(o[zr]={level:Ft,assertion:e[zr]},e[zr]=RNe,!1)}function C(Ft,zr){debugger;let Rn=new Error(Ft?`Debug Failure. ${Ft}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Rn,zr||C),Rn}e.fail=C;function b(Ft,zr,Rn){return C(`${zr||"Unexpected node."}\r -Node ${Yt(Ft.kind)} was unexpected.`,Rn||b)}e.failBadSyntaxKind=b;function E(Ft,zr,Rn,Or){Ft||(zr=zr?`False expression: ${zr}`:"False expression.",Rn&&(zr+=`\r -Verbose Debug Information: `+(typeof Rn=="string"?Rn:Rn())),C(zr,Or||E))}e.assert=E;function N(Ft,zr,Rn,Or,Qi){if(Ft!==zr){let ps=Rn?Or?`${Rn} ${Or}`:Rn:"";C(`Expected ${Ft} === ${zr}. ${ps}`,Qi||N)}}e.assertEqual=N;function B(Ft,zr,Rn,Or){Ft>=zr&&C(`Expected ${Ft} < ${zr}. ${Rn||""}`,Or||B)}e.assertLessThan=B;function F(Ft,zr,Rn){Ft>zr&&C(`Expected ${Ft} <= ${zr}`,Rn||F)}e.assertLessThanOrEqual=F;function Q(Ft,zr,Rn){Ft= ${zr}`,Rn||Q)}e.assertGreaterThanOrEqual=Q;function X(Ft,zr,Rn){Ft==null&&C(zr,Rn||X)}e.assertIsDefined=X;function ae(Ft,zr,Rn){return X(Ft,zr,Rn||ae),Ft}e.checkDefined=ae;function ne(Ft,zr,Rn){for(let Or of Ft)X(Or,zr,Rn||ne)}e.assertEachIsDefined=ne;function ce(Ft,zr,Rn){return ne(Ft,zr,Rn||ce),Ft}e.checkEachDefined=ce;function fe(Ft,zr="Illegal value:",Rn){let Or=typeof Ft=="object"&&fj(Ft,"kind")&&fj(Ft,"pos")?"SyntaxKind: "+Yt(Ft.kind):JSON.stringify(Ft);return C(`${zr} ${Or}`,Rn||fe)}e.assertNever=fe;function ue(Ft,zr,Rn,Or){I(1,"assertEachNode")&&E(zr===void 0||RNr(Ft,zr),Rn||"Unexpected node.",()=>`Node array did not pass test '${ct(zr)}'.`,Or||ue)}e.assertEachNode=ue;function de(Ft,zr,Rn,Or){I(1,"assertNode")&&E(Ft!==void 0&&(zr===void 0||zr(Ft)),Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} did not pass test '${ct(zr)}'.`,Or||de)}e.assertNode=de;function be(Ft,zr,Rn,Or){I(1,"assertNotNode")&&E(Ft===void 0||zr===void 0||!zr(Ft),Rn||"Unexpected node.",()=>`Node ${Yt(Ft.kind)} should not have passed test '${ct(zr)}'.`,Or||be)}e.assertNotNode=be;function Se(Ft,zr,Rn,Or){I(1,"assertOptionalNode")&&E(zr===void 0||Ft===void 0||zr(Ft),Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} did not pass test '${ct(zr)}'.`,Or||Se)}e.assertOptionalNode=Se;function De(Ft,zr,Rn,Or){I(1,"assertOptionalToken")&&E(zr===void 0||Ft===void 0||Ft.kind===zr,Rn||"Unexpected node.",()=>`Node ${Yt(Ft?.kind)} was not a '${Yt(zr)}' token.`,Or||De)}e.assertOptionalToken=De;function k(Ft,zr,Rn){I(1,"assertMissingNode")&&E(Ft===void 0,zr||"Unexpected node.",()=>`Node ${Yt(Ft.kind)} was unexpected'.`,Rn||k)}e.assertMissingNode=k;function et(Ft){}e.type=et;function ct(Ft){if(typeof Ft!="function")return"";if(fj(Ft,"name"))return Ft.name;{let zr=Function.prototype.toString.call(Ft),Rn=/^function\s+([\w$]+)\s*\(/.exec(zr);return Rn?Rn[1]:""}}e.getFunctionName=ct;function Me(Ft){return`{ name: ${hJe(Ft.escapedName)}; flags: ${Xt(Ft.flags)}; declarations: ${iNr(Ft.declarations,zr=>Yt(zr.kind))} }`}e.formatSymbol=Me;function je(Ft=0,zr,Rn){let Or=At(zr);if(Ft===0)return Or.length>0&&Or[0][0]===0?Or[0][1]:"0";if(Rn){let Qi=[],ps=Ft;for(let[yo,bo]of Or){if(yo>Ft)break;yo!==0&&yo&Ft&&(Qi.push(bo),ps&=~yo)}if(ps===0)return Qi.join("|")}else for(let[Qi,ps]of Or)if(Qi===Ft)return ps;return Ft.toString()}e.formatEnum=je;let St=new Map;function At(Ft){let zr=St.get(Ft);if(zr)return zr;let Rn=[];for(let Qi in Ft){let ps=Ft[Qi];typeof ps=="number"&&Rn.push([ps,Qi])}let Or=j6a(Rn,(Qi,ps)=>zSi(Qi[0],ps[0]));return St.set(Ft,Or),Or}function Yt(Ft){return je(Ft,Tp,!1)}e.formatSyntaxKind=Yt;function Tr(Ft){return je(Ft,ovi,!1)}e.formatSnippetKind=Tr;function Nr(Ft){return je(Ft,Bee,!1)}e.formatScriptKind=Nr;function er(Ft){return je(Ft,IO,!0)}e.formatNodeFlags=er;function vt(Ft){return je(Ft,tvi,!0)}e.formatNodeCheckFlags=vt;function xt(Ft){return je(Ft,qSi,!0)}e.formatModifierFlags=xt;function Zr(Ft){return je(Ft,svi,!0)}e.formatTransformFlags=Zr;function qt(Ft){return je(Ft,avi,!0)}e.formatEmitFlags=qt;function Xt(Ft){return je(Ft,evi,!0)}e.formatSymbolFlags=Xt;function lr(Ft){return je(Ft,kG,!0)}e.formatTypeFlags=lr;function cr(Ft){return je(Ft,nvi,!0)}e.formatSignatureFlags=cr;function Ar(Ft){return je(Ft,rvi,!0)}e.formatObjectFlags=Ar;function qr(Ft){return je(Ft,aNr,!0)}e.formatFlowFlags=qr;function _n(Ft){return je(Ft,$Si,!0)}e.formatRelationComparisonResult=_n;function ke(Ft){return je(Ft,CheckMode,!0)}e.formatCheckMode=ke;function jt(Ft){return je(Ft,SignatureCheckMode,!0)}e.formatSignatureCheckMode=jt;function Fn(Ft){return je(Ft,TypeFacts,!0)}e.formatTypeFacts=Fn;let Nn=!1,Hi;function po(Ft){"__debugFlowFlags"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(){let zr=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Rn=this.flags&-2048;return`${zr}${Rn?` (${qr(Rn)})`:""}`}},__debugFlowFlags:{get(){return je(this.flags,aNr,!0)}},__debugToString:{value(){return Wr(this)}}})}function Vr(Ft){return Nn&&(typeof Object.setPrototypeOf=="function"?(Hi||(Hi=Object.create(Object.prototype),po(Hi)),Object.setPrototypeOf(Ft,Hi)):po(Ft)),Ft}e.attachFlowNodeDebugInfo=Vr;let xi;function io(Ft){"__tsDebuggerDisplay"in Ft||Object.defineProperties(Ft,{__tsDebuggerDisplay:{value(zr){return zr=String(zr).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${zr}`}}})}function ga(Ft){Nn&&(typeof Object.setPrototypeOf=="function"?(xi||(xi=Object.create(Array.prototype),io(xi)),Object.setPrototypeOf(Ft,xi)):io(Ft))}e.attachNodeArrayDebugInfo=ga;function Ya(){if(Nn)return;let Ft=new WeakMap,zr=new WeakMap;Object.defineProperties(k2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Or=this.flags&33554432?"TransientSymbol":"Symbol",Qi=this.flags&-33554433;return`${Or} '${uNr(this)}'${Qi?` (${Xt(Qi)})`:""}`}},__debugFlags:{get(){return Xt(this.flags)}}}),Object.defineProperties(k2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Or=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Qi=this.flags&524288?this.objectFlags&-1344:0;return`${Or}${this.symbol?` '${uNr(this.symbol)}'`:""}${Qi?` (${Ar(Qi)})`:""}`}},__debugFlags:{get(){return lr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Ar(this.objectFlags):""}},__debugTypeToString:{value(){let Or=Ft.get(this);return Or===void 0&&(Or=this.checker.typeToString(this),Ft.set(this,Or)),Or}}}),Object.defineProperties(k2.getSignatureConstructor().prototype,{__debugFlags:{get(){return cr(this.flags)}},__debugSignatureToString:{value(){var Or;return(Or=this.checker)==null?void 0:Or.signatureToString(this)}}});let Rn=[k2.getNodeConstructor(),k2.getIdentifierConstructor(),k2.getTokenConstructor(),k2.getSourceFileConstructor()];for(let Or of Rn)fj(Or.prototype,"__debugKind")||Object.defineProperties(Or.prototype,{__tsDebuggerDisplay:{value(){return`${SNe(this)?"GeneratedIdentifier":$C(this)?`Identifier '${yV(this)}'`:Yme(this)?`PrivateIdentifier '${yV(this)}'`:tEt(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:DNe(this)?`NumericLiteral ${this.text}`:D$a(this)?`BigIntLiteral ${this.text}n`:tBi(this)?"TypeParameterDeclaration":Ubt(this)?"ParameterDeclaration":rBi(this)?"ConstructorDeclaration":hNr(this)?"GetAccessorDeclaration":jbt(this)?"SetAccessorDeclaration":P$a(this)?"CallSignatureDeclaration":W$a(this)?"ConstructSignatureDeclaration":nBi(this)?"IndexSignatureDeclaration":O$a(this)?"TypePredicateNode":iBi(this)?"TypeReferenceNode":sBi(this)?"FunctionTypeNode":oBi(this)?"ConstructorTypeNode":M$a(this)?"TypeQueryNode":H$a(this)?"TypeLiteralNode":Y$a(this)?"ArrayTypeNode":Q$a(this)?"TupleTypeNode":J$a(this)?"OptionalTypeNode":U$a(this)?"RestTypeNode":K$a(this)?"UnionTypeNode":j$a(this)?"IntersectionTypeNode":z$a(this)?"ConditionalTypeNode":q$a(this)?"InferTypeNode":$$a(this)?"ParenthesizedTypeNode":eec(this)?"ThisTypeNode":tec(this)?"TypeOperatorNode":rec(this)?"IndexedAccessTypeNode":nec(this)?"MappedTypeNode":iec(this)?"LiteralTypeNode":X$a(this)?"NamedTupleMember":sec(this)?"ImportTypeNode":Yt(this.kind)}${this.flags?` (${er(this.flags)})`:""}`}},__debugKind:{get(){return Yt(this.kind)}},__debugNodeFlags:{get(){return er(this.flags)}},__debugModifierFlags:{get(){return xt(Oqa(this))}},__debugTransformFlags:{get(){return Zr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return Qbt(this)}},__debugEmitFlags:{get(){return qt(TNe(this))}},__debugGetText:{value(Qi){if(mNe(this))return"";let ps=zr.get(this);if(ps===void 0){let yo=nza(this),bo=yo&&bce(yo);ps=bo?H2i(bo,yo,Qi):"",zr.set(this,ps)}return ps}}});Nn=!0}e.enableDebugInfo=Ya;function Gc(Ft){let zr=Ft&7,Rn=zr===0?"in out":zr===3?"[bivariant]":zr===2?"in":zr===1?"out":zr===4?"[independent]":"";return Ft&8?Rn+=" (unmeasurable)":Ft&16&&(Rn+=" (unreliable)"),Rn}e.formatVariance=Gc;class cl{__debugToString(){var zr;switch(this.kind){case 3:return((zr=this.debugInfo)==null?void 0:zr.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return w2i(this.sources,this.targets||iNr(this.sources,()=>"any"),(Rn,Or)=>`${Rn.__debugTypeToString()} -> ${typeof Or=="string"?Or:Or.__debugTypeToString()}`).join(", ");case 2:return w2i(this.sources,this.targets,(Rn,Or)=>`${Rn.__debugTypeToString()} -> ${Or().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` -`).join(` - `)} -m2: ${this.mapper2.__debugToString().split(` -`).join(` - `)}`;default:return fe(this)}}}e.DebugTypeMapper=cl;function Sc(Ft){return e.isDebugging?Object.setPrototypeOf(Ft,cl.prototype):Ft}e.attachDebugPrototypeIfDebug=Sc;function Hr(Ft){return console.log(Wr(Ft))}e.printControlFlowGraph=Hr;function Wr(Ft){let zr=-1;function Rn(Wt){return Wt.id||(Wt.id=zr,zr--),Wt.id}let Or;(Wt=>{Wt.lr="\u2500",Wt.ud="\u2502",Wt.dr="\u256D",Wt.dl="\u256E",Wt.ul="\u256F",Wt.ur="\u2570",Wt.udr="\u251C",Wt.udl="\u2524",Wt.dlr="\u252C",Wt.ulr="\u2534",Wt.udlr="\u256B"})(Or||(Or={}));let Qi;(Wt=>{Wt[Wt.None=0]="None",Wt[Wt.Up=1]="Up",Wt[Wt.Down=2]="Down",Wt[Wt.Left=4]="Left",Wt[Wt.Right=8]="Right",Wt[Wt.UpDown=3]="UpDown",Wt[Wt.LeftRight=12]="LeftRight",Wt[Wt.UpLeft=5]="UpLeft",Wt[Wt.UpRight=9]="UpRight",Wt[Wt.DownLeft=6]="DownLeft",Wt[Wt.DownRight=10]="DownRight",Wt[Wt.UpDownLeft=7]="UpDownLeft",Wt[Wt.UpDownRight=11]="UpDownRight",Wt[Wt.UpLeftRight=13]="UpLeftRight",Wt[Wt.DownLeftRight=14]="DownLeftRight",Wt[Wt.UpDownLeftRight=15]="UpDownLeftRight",Wt[Wt.NoChildren=16]="NoChildren"})(Qi||(Qi={}));let ps=2032,yo=882,bo=Object.create(null),Qa=[],gc=[],Cg=ac(Ft,new Set);for(let Wt of Qa)Wt.text=_g(Wt.flowNode,Wt.circular),Wc(Wt);let Nc=Sg(Cg),iA=Ul(Nc);return Xu(Cg,0),mI();function ma(Wt){return!!(Wt.flags&128)}function vu(Wt){return!!(Wt.flags&12)&&!!Wt.antecedent}function li(Wt){return!!(Wt.flags&ps)}function Ei(Wt){return!!(Wt.flags&yo)}function Ps(Wt){let Hu=[];for(let Ru of Wt.edges)Ru.source===Wt&&Hu.push(Ru.target);return Hu}function Xa(Wt){let Hu=[];for(let Ru of Wt.edges)Ru.target===Wt&&Hu.push(Ru.source);return Hu}function ac(Wt,Hu){let Ru=Rn(Wt),Vs=bo[Ru];if(Vs&&Hu.has(Wt))return Vs.circular=!0,Vs={id:-1,flowNode:Wt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Qa.push(Vs),Vs;if(Hu.add(Wt),!Vs)if(bo[Ru]=Vs={id:Ru,flowNode:Wt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Qa.push(Vs),vu(Wt))for(let Ju of Wt.antecedent)Yl(Vs,Ju,Hu);else li(Wt)&&Yl(Vs,Wt.antecedent,Hu);return Hu.delete(Wt),Vs}function Yl(Wt,Hu,Ru){let Vs=ac(Hu,Ru),Ju={source:Wt,target:Vs};gc.push(Ju),Wt.edges.push(Ju),Vs.edges.push(Ju)}function Wc(Wt){if(Wt.level!==-1)return Wt.level;let Hu=0;for(let Ru of Xa(Wt))Hu=Math.max(Hu,Wc(Ru)+1);return Wt.level=Hu}function Sg(Wt){let Hu=0;for(let Ru of Ps(Wt))Hu=Math.max(Hu,Sg(Ru));return Hu+1}function Ul(Wt){let Hu=Ri(Array(Wt),0);for(let Ru of Qa)Hu[Ru.level]=Math.max(Hu[Ru.level],Ru.text.length);return Hu}function Xu(Wt,Hu){if(Wt.lane===-1){Wt.lane=Hu,Wt.endLane=Hu;let Ru=Ps(Wt);for(let Vs=0;Vs0&&Hu++;let Ju=Ru[Vs];Xu(Ju,Hu),Ju.endLane>Wt.endLane&&(Hu=Ju.endLane)}Wt.endLane=Hu}}function Da(Wt){if(Wt&2)return"Start";if(Wt&4)return"Branch";if(Wt&8)return"Loop";if(Wt&16)return"Assignment";if(Wt&32)return"True";if(Wt&64)return"False";if(Wt&128)return"SwitchClause";if(Wt&256)return"ArrayMutation";if(Wt&512)return"Call";if(Wt&1024)return"ReduceLabel";if(Wt&1)return"Unreachable";throw new Error}function pu(Wt){let Hu=bce(Wt);return H2i(Hu,Wt,!1)}function _g(Wt,Hu){let Ru=Da(Wt.flags);if(Hu&&(Ru=`${Ru}#${Rn(Wt)}`),ma(Wt)){let Vs=[],{switchStatement:Ju,clauseStart:Yn,clauseEnd:Ko}=Wt.node;for(let Eg=Yn;EgKo.lane)+1,Ru=Ri(Array(Hu),""),Vs=iA.map(()=>Array(Hu)),Ju=iA.map(()=>Ri(Array(Hu),0));for(let Ko of Qa){Vs[Ko.level][Ko.lane]=Ko;let Eg=Ps(Ko);for(let GA=0;GA0&&(dl|=1),GA0&&(dl|=1),GA0?Ju[Ko-1][Eg]:0,GA=Eg>0?Ju[Ko][Eg-1]:0,$i=Ju[Ko][Eg];$i||(OA&8&&($i|=12),GA&2&&($i|=3),Ju[Ko][Eg]=$i)}for(let Ko=0;Ko0?Wt.repeat(Hu):"";let Ru="";for(;Ru.length{},I7a=()=>{},Fbt,Tp=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.SourceFile=307]="SourceFile",e[e.Bundle=308]="Bundle",e[e.JSDocTypeExpression=309]="JSDocTypeExpression",e[e.JSDocNameReference=310]="JSDocNameReference",e[e.JSDocMemberName=311]="JSDocMemberName",e[e.JSDocAllType=312]="JSDocAllType",e[e.JSDocUnknownType=313]="JSDocUnknownType",e[e.JSDocNullableType=314]="JSDocNullableType",e[e.JSDocNonNullableType=315]="JSDocNonNullableType",e[e.JSDocOptionalType=316]="JSDocOptionalType",e[e.JSDocFunctionType=317]="JSDocFunctionType",e[e.JSDocVariadicType=318]="JSDocVariadicType",e[e.JSDocNamepathType=319]="JSDocNamepathType",e[e.JSDoc=320]="JSDoc",e[e.JSDocComment=320]="JSDocComment",e[e.JSDocText=321]="JSDocText",e[e.JSDocTypeLiteral=322]="JSDocTypeLiteral",e[e.JSDocSignature=323]="JSDocSignature",e[e.JSDocLink=324]="JSDocLink",e[e.JSDocLinkCode=325]="JSDocLinkCode",e[e.JSDocLinkPlain=326]="JSDocLinkPlain",e[e.JSDocTag=327]="JSDocTag",e[e.JSDocAugmentsTag=328]="JSDocAugmentsTag",e[e.JSDocImplementsTag=329]="JSDocImplementsTag",e[e.JSDocAuthorTag=330]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",e[e.JSDocClassTag=332]="JSDocClassTag",e[e.JSDocPublicTag=333]="JSDocPublicTag",e[e.JSDocPrivateTag=334]="JSDocPrivateTag",e[e.JSDocProtectedTag=335]="JSDocProtectedTag",e[e.JSDocReadonlyTag=336]="JSDocReadonlyTag",e[e.JSDocOverrideTag=337]="JSDocOverrideTag",e[e.JSDocCallbackTag=338]="JSDocCallbackTag",e[e.JSDocOverloadTag=339]="JSDocOverloadTag",e[e.JSDocEnumTag=340]="JSDocEnumTag",e[e.JSDocParameterTag=341]="JSDocParameterTag",e[e.JSDocReturnTag=342]="JSDocReturnTag",e[e.JSDocThisTag=343]="JSDocThisTag",e[e.JSDocTypeTag=344]="JSDocTypeTag",e[e.JSDocTemplateTag=345]="JSDocTemplateTag",e[e.JSDocTypedefTag=346]="JSDocTypedefTag",e[e.JSDocSeeTag=347]="JSDocSeeTag",e[e.JSDocPropertyTag=348]="JSDocPropertyTag",e[e.JSDocThrowsTag=349]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",e[e.JSDocImportTag=351]="JSDocImportTag",e[e.SyntaxList=352]="SyntaxList",e[e.NotEmittedStatement=353]="NotEmittedStatement",e[e.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=309]="FirstJSDocNode",e[e.LastJSDocNode=351]="LastJSDocNode",e[e.FirstJSDocTagNode=327]="FirstJSDocTagNode",e[e.LastJSDocTagNode=351]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(Tp||{}),IO=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(IO||{}),qSi=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(qSi||{}),$Si=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))($Si||{}),aNr=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(aNr||{}),evi=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=-1]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(evi||{}),tvi=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e[e.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(tvi||{}),kG=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.Reserved1=536870912]="Reserved1",e[e.Reserved2=1073741824]="Reserved2",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.Primitive=402784252]="Primitive",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=473694207]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.IncludesError=1073741824]="IncludesError",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(kG||{}),rvi=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.SingleSignatureType=134217728]="SingleSignatureType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(rvi||{}),nvi=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(nvi||{}),Bee=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(Bee||{}),GNr=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ES2023=10]="ES2023",e[e.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(GNr||{}),ivi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(ivi||{}),tH=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(tH||{}),svi=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(svi||{}),ovi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(ovi||{}),avi=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(avi||{}),eJe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},cvi={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},lJe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(lJe||{}),Hme="/",h7a="\\",N2i="://",m7a=/\\/g;function C7a(e){return e===47||e===92}function _7a(e,t){return e.length>t.length&&A7a(e,t)}function FNr(e){return e.length>0&&C7a(e.charCodeAt(e.length-1))}function D2i(e){return e>=97&&e<=122||e>=65&&e<=90}function y7a(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let n=e.charCodeAt(t+2);if(n===97||n===65)return t+3}return-1}function b7a(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let n=e.indexOf(t===47?Hme:h7a,2);return n<0?e.length:n+1}if(D2i(t)&&e.charCodeAt(1)===58){let n=e.charCodeAt(2);if(n===47||n===92)return 3;if(e.length===2)return 2}let r=e.indexOf(N2i);if(r!==-1){let n=r+N2i.length,a=e.indexOf(Hme,n);if(a!==-1){let o=e.slice(0,r),l=e.slice(n,a);if(o==="file"&&(l===""||l==="localhost")&&D2i(e.charCodeAt(a+1))){let A=y7a(e,a+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(a+1)}return~e.length}return 0}function Mbt(e){let t=b7a(e);return t<0?~t:t}function lvi(e,t,r){if(e=Hbt(e),Mbt(e)===e.length)return"";e=gvi(e);let n=e.slice(Math.max(Mbt(e),e.lastIndexOf(Hme)+1)),a=t!==void 0&&r!==void 0?uvi(n,t,r):void 0;return a?n.slice(0,n.length-a.length):n}function k2i(e,t,r){if(Obt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let n=e.slice(e.length-t.length);if(r(n,t))return n}}function E7a(e,t,r){if(typeof t=="string")return k2i(e,t,r)||"";for(let n of t){let a=k2i(e,n,r);if(a)return a}return""}function uvi(e,t,r){if(t)return E7a(gvi(e),t,r?xNr:c7a);let n=lvi(e),a=n.lastIndexOf(".");return a>=0?n.substring(a):""}function S7a(e,t){let r=e.substring(0,t),n=e.substring(t).split(Hme);return n.length&&!Vme(n)&&n.pop(),[r,...n]}function v7a(e,t=""){return e=T7a(t,e),S7a(e,Mbt(e))}function B7a(e,t){return e.length===0?"":(e[0]&&ZNr(e[0]))+e.slice(1,t).join(Hme)}function Hbt(e){return e.includes("\\")?e.replace(m7a,Hme):e}function w7a(e){if(!oD(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(n)}}return t}function T7a(e,...t){e&&(e=Hbt(e));for(let r of t)r&&(r=Hbt(r),!e||Mbt(r)!==0?e=r:e=ZNr(e)+r);return e}function R7a(e){if(e=Hbt(e),!x2i.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!x2i.test(e)))return e;let r=B7a(w7a(v7a(e)));return r&&FNr(e)?ZNr(r):r}function gvi(e){return FNr(e)?e.substr(0,e.length-1):e}function ZNr(e){return FNr(e)?e:e+Hme}var x2i=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function $(e,t,r,n,a,o,l){return{code:e,category:t,key:r,message:n,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:l}}var ts={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:$(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:$(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:$(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:$(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:$(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:$(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:$(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:$(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:$(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:$(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:$(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:$(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:$(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:$(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:$(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:$(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:$(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:$(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:$(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:$(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:$(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:$(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:$(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:$(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:$(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:$(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:$(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:$(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:$(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:$(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:$(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:$(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:$(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:$(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:$(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:$(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:$(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:$(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:$(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:$(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:$(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:$(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:$(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:$(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:$(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:$(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:$(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:$(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:$(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:$(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:$(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:$(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:$(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:$(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:$(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:$(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:$(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:$(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:$(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:$(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:$(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:$(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:$(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:$(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:$(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:$(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:$(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:$(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:$(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:$(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:$(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:$(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:$(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:$(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:$(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:$(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:$(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:$(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:$(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:$(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:$(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:$(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:$(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:$(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:$(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:$(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:$(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:$(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:$(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:$(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:$(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:$(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:$(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:$(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:$(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:$(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:$(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:$(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:$(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:$(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:$(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:$(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:$(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:$(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:$(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:$(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:$(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:$(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:$(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:$(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:$(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:$(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:$(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:$(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:$(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:$(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:$(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:$(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:$(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:$(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:$(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:$(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:$(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:$(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:$(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:$(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:$(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:$(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:$(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:$(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:$(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:$(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:$(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:$(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:$(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:$(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:$(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:$(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:$(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:$(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:$(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:$(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:$(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:$(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:$(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:$(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:$(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:$(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:$(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:$(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:$(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:$(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:$(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:$(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:$(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:$(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:$(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodenext_or_preserve:$(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:$(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:$(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:$(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:$(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:$(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:$(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:$(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:$(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:$(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:$(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:$(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:$(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:$(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:$(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:$(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:$(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:$(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:$(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:$(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:$(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:$(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:$(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:$(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:$(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:$(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:$(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:$(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:$(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:$(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:$(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:$(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:$(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:$(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:$(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:$(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:$(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:$(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:$(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:$(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:$(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:$(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:$(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:$(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:$(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:$(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:$(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:$(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:$(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:$(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:$(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:$(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:$(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:$(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:$(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:$(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:$(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:$(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:$(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:$(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:$(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:$(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:$(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:$(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:$(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:$(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:$(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:$(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:$(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:$(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:$(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:$(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:$(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:$(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:$(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:$(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:$(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:$(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:$(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:$(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:$(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:$(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:$(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:$(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:$(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:$(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:$(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:$(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:$(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:$(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:$(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:$(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:$(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:$(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:$(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:$(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:$(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:$(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:$(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:$(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:$(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:$(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:$(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:$(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:$(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:$(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:$(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:$(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:$(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:$(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:$(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:$(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:$(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:$(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:$(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:$(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:$(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:$(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:$(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:$(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:$(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:$(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:$(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:$(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:$(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:$(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:$(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:$(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:$(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:$(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:$(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:$(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:$(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:$(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:$(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:$(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:$(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:$(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:$(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:$(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:$(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:$(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:$(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:$(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:$(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:$(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:$(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:$(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:$(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:$(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:$(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:$(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:$(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:$(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:$(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:$(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:$(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:$(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:$(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:$(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:$(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:$(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:$(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:$(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:$(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:$(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Untyped_function_calls_may_not_accept_type_arguments:$(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:$(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:$(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:$(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:$(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:$(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:$(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:$(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:$(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:$(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:$(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:$(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:$(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:$(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:$(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:$(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:$(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:$(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:$(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:$(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:$(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:$(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:$(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:$(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:$(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:$(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:$(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:$(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:$(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:$(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:$(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:$(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:$(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:$(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:$(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:$(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:$(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:$(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:$(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:$(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:$(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:$(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:$(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:$(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:$(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:$(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:$(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:$(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:$(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:$(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:$(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:$(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:$(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:$(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:$(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:$(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:$(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:$(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:$(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:$(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:$(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:$(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:$(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:$(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:$(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:$(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:$(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:$(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:$(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:$(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:$(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:$(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:$(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:$(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:$(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:$(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:$(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:$(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:$(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:$(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:$(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:$(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:$(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:$(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:$(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:$(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:$(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:$(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:$(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:$(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:$(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:$(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:$(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:$(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:$(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:$(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:$(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:$(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:$(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:$(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:$(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:$(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:$(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:$(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:$(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:$(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:$(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:$(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:$(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:$(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:$(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:$(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:$(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:$(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:$(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:$(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:$(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:$(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:$(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:$(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:$(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:$(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:$(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:$(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:$(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:$(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:$(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:$(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:$(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:$(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:$(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:$(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:$(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:$(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:$(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:$(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:$(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:$(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:$(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:$(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:$(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:$(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:$(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:$(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:$(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:$(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:$(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:$(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:$(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:$(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:$(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:$(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:$(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:$(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:$(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:$(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:$(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:$(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:$(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:$(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:$(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:$(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:$(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:$(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:$(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:$(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:$(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:$(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:$(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:$(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:$(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:$(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:$(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:$(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:$(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:$(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:$(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:$(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:$(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:$(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:$(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:$(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:$(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:$(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:$(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:$(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:$(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:$(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:$(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:$(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:$(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:$(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:$(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:$(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:$(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:$(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:$(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:$(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:$(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:$(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:$(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:$(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:$(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:$(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:$(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:$(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:$(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:$(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:$(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:$(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:$(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:$(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:$(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:$(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:$(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:$(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:$(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:$(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:$(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:$(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:$(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:$(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:$(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:$(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:$(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:$(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:$(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:$(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:$(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:$(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:$(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:$(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:$(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:$(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:$(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:$(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:$(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:$(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:$(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:$(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:$(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:$(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:$(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:$(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:$(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:$(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:$(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:$(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:$(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:$(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:$(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:$(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:$(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:$(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:$(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:$(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:$(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:$(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:$(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:$(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:$(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:$(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:$(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:$(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:$(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:$(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:$(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:$(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:$(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:$(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:$(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:$(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:$(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:$(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:$(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:$(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:$(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:$(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:$(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:$(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:$(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:$(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:$(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:$(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:$(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:$(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:$(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:$(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:$(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:$(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:$(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:$(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:$(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:$(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:$(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:$(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:$(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:$(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:$(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:$(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:$(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:$(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:$(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:$(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:$(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:$(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:$(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:$(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:$(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:$(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:$(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:$(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:$(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:$(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:$(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:$(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:$(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:$(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:$(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:$(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:$(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:$(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:$(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:$(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:$(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:$(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:$(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:$(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:$(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:$(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:$(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:$(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:$(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:$(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:$(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:$(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:$(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:$(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:$(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:$(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:$(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:$(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:$(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:$(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:$(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:$(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:$(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:$(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:$(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:$(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:$(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:$(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:$(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:$(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:$(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:$(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:$(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:$(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:$(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:$(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:$(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:$(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:$(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:$(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:$(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:$(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:$(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:$(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:$(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:$(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:$(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:$(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:$(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:$(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:$(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:$(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:$(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:$(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:$(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:$(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:$(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:$(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:$(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:$(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:$(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:$(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:$(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:$(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:$(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:$(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:$(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:$(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:$(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:$(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:$(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:$(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:$(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:$(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:$(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:$(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:$(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:$(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:$(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:$(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:$(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:$(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:$(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:$(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:$(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:$(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:$(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:$(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:$(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:$(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:$(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:$(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:$(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:$(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:$(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:$(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:$(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:$(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:$(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:$(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:$(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:$(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:$(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:$(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:$(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:$(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:$(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:$(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:$(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:$(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:$(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:$(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:$(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:$(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:$(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:$(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:$(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:$(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:$(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:$(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:$(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:$(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:$(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:$(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:$(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:$(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:$(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:$(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:$(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:$(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected:$(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:$(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:$(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:$(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:$(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:$(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:$(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:$(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:$(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:$(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:$(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:$(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:$(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:$(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:$(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:$(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:$(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:$(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:$(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:$(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:$(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:$(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:$(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:$(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:$(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:$(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:$(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:$(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:$(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:$(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:$(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:$(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:$(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:$(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:$(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:$(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:$(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:$(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:$(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:$(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:$(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:$(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:$(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:$(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:$(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:$(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:$(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:$(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:$(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:$(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:$(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:$(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:$(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:$(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:$(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:$(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:$(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:$(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:$(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:$(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:$(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:$(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:$(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:$(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:$(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:$(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:$(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:$(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:$(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:$(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:$(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:$(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:$(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:$(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:$(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:$(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:$(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:$(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:$(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:$(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:$(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:$(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:$(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:$(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:$(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:$(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:$(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:$(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:$(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:$(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:$(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:$(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:$(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:$(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:$(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:$(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:$(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:$(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:$(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:$(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:$(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:$(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:$(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:$(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:$(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:$(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:$(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:$(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:$(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:$(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:$(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:$(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:$(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:$(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:$(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:$(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:$(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:$(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:$(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:$(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:$(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:$(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:$(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:$(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:$(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:$(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:$(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:$(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:$(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:$(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:$(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:$(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:$(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:$(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:$(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:$(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:$(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:$(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:$(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:$(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:$(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:$(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:$(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:$(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:$(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:$(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:$(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:$(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:$(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:$(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:$(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:$(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:$(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:$(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:$(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:$(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:$(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:$(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:$(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:$(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:$(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:$(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:$(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:$(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:$(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:$(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:$(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:$(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:$(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:$(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:$(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:$(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:$(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:$(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:$(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:$(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:$(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:$(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:$(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:$(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:$(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:$(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:$(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:$(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:$(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:$(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:$(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:$(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:$(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:$(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:$(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:$(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:$(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:$(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:$(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:$(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:$(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:$(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:$(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:$(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:$(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:$(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:$(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:$(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:$(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:$(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:$(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:$(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:$(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:$(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:$(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:$(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:$(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:$(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:$(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:$(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:$(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:$(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:$(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:$(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:$(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:$(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:$(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:$(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:$(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:$(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:$(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:$(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:$(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:$(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:$(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:$(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:$(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:$(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:$(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:$(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:$(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:$(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:$(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:$(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:$(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:$(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:$(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:$(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:$(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:$(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:$(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:$(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:$(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:$(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:$(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:$(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:$(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:$(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:$(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:$(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:$(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:$(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:$(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:$(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:$(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:$(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:$(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:$(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:$(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:$(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:$(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:$(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:$(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:$(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:$(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:$(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:$(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:$(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:$(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:$(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:$(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:$(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:$(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:$(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:$(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:$(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:$(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:$(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:$(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:$(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:$(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:$(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:$(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:$(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:$(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:$(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:$(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:$(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:$(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Skip_building_downstream_projects_on_error_in_upstream_project:$(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:$(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:$(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:$(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:$(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:$(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:$(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:$(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:$(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:$(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:$(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:$(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:$(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:$(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:$(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:$(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:$(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:$(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:$(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:$(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:$(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:$(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:$(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:$(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:$(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:$(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:$(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:$(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:$(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:$(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:$(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:$(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:$(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:$(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:$(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:$(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:$(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:$(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:$(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:$(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:$(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:$(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:$(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:$(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:$(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:$(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:$(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:$(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:$(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:$(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:$(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:$(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:$(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:$(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:$(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:$(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:$(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:$(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:$(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:$(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:$(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:$(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:$(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:$(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:$(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:$(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:$(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:$(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:$(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),Check_side_effect_imports:$(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:$(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:$(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:$(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:$(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:$(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:$(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:$(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:$(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:$(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:$(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:$(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:$(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:$(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:$(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:$(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:$(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:$(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:$(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:$(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:$(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:$(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:$(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:$(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:$(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:$(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:$(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation:$(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:$(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:$(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:$(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:$(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:$(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:$(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:$(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:$(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:$(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:$(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:$(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:$(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:$(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:$(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:$(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:$(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:$(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:$(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:$(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:$(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:$(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:$(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:$(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:$(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:$(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:$(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:$(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:$(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:$(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:$(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:$(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:$(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:$(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:$(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:$(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:$(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:$(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:$(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:$(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:$(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:$(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:$(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:$(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:$(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:$(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:$(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:$(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:$(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:$(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:$(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:$(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:$(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:$(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:$(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:$(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:$(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:$(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:$(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:$(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:$(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:$(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:$(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:$(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:$(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:$(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:$(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:$(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:$(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:$(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:$(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:$(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:$(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:$(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:$(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:$(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:$(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:$(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:$(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:$(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations:$(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:$(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:$(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:$(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:$(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:$(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:$(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:$(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:$(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:$(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:$(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:$(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:$(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:$(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:$(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:$(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:$(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:$(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:$(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:$(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:$(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:$(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:$(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:$(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:$(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:$(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:$(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:$(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:$(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:$(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:$(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:$(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:$(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:$(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:$(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:$(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:$(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:$(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:$(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:$(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:$(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:$(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:$(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:$(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:$(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:$(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:$(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:$(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:$(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:$(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:$(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:$(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:$(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:$(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:$(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:$(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:$(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:$(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:$(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:$(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:$(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:$(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:$(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:$(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:$(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:$(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:$(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:$(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:$(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:$(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:$(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:$(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:$(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:$(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:$(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:$(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:$(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:$(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:$(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:$(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:$(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:$(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:$(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:$(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:$(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:$(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:$(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:$(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:$(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:$(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:$(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:$(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:$(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:$(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:$(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:$(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:$(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:$(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:$(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:$(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:$(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function H1(e){return e>=80}function N7a(e){return e===32||H1(e)}var LNr={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},D7a=new Map(Object.entries(LNr)),Avi=new Map(Object.entries({...LNr,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,">":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),dvi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),k7a=new Map([[1,eJe.RegularExpressionFlagsHasIndices],[16,eJe.RegularExpressionFlagsDotAll],[32,eJe.RegularExpressionFlagsUnicode],[64,eJe.RegularExpressionFlagsUnicodeSets],[128,eJe.RegularExpressionFlagsSticky]]),x7a=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],G7a=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],F7a=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],Z7a=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],L7a=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,V7a=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,P7a=/@(?:see|link)/i;function Ybt(e,t){if(e=2?Ybt(e,F7a):Ybt(e,x7a)}function O7a(e,t){return t>=2?Ybt(e,Z7a):Ybt(e,G7a)}function pvi(e){let t=[];return e.forEach((r,n)=>{t[r]=n}),t}var M7a=pvi(Avi);function by(e){return M7a[e]}function fvi(e){return Avi.get(e)}var LTu=pvi(dvi);function G2i(e){return dvi.get(e)}function Ivi(e){let t=[],r=0,n=0;for(;r127&&CV(a)&&(t.push(n),n=r);break}}return t.push(n),t}function H7a(e,t,r,n,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:Zo.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${n!==void 0?J6a(e,Ivi(n)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof n=="string"&&o>n.length?n.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function CV(e){return e===10||e===13||e===8232||e===8233}function mce(e){return e>=48&&e<=57}function XRr(e){return mce(e)||e>=65&&e<=70||e>=97&&e<=102}function VNr(e){return e>=65&&e<=90||e>=97&&e<=122}function mvi(e){return VNr(e)||mce(e)||e===95}function JRr(e){return e>=48&&e<=55}function dj(e,t,r,n,a){if(yJe(t))return t;let o=!1;for(;;){let l=e.charCodeAt(t);switch(l){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(n)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&vNe(l)){t++;continue}break}return t}}var Zbt=7;function Gme(e,t){if(Zo.assert(t>=0),t===0||CV(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+Zbt=0&&r127&&vNe(B)){b&&CV(B)&&(C=!0),r++;continue}break e}}return b&&(N=a(A,f,I,C,o,N)),N}function X7a(e,t,r,n){return $bt(!1,e,t,!1,r,n)}function J7a(e,t,r,n){return $bt(!1,e,t,!0,r,n)}function U7a(e,t,r,n,a){return $bt(!0,e,t,!1,r,n,a)}function K7a(e,t,r,n,a){return $bt(!0,e,t,!0,r,n,a)}function yvi(e,t,r,n,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),o}function lNr(e,t){return U7a(e,t,yvi,void 0,void 0)}function j7a(e,t){return K7a(e,t,yvi,void 0,void 0)}function bvi(e){let t=PNr.exec(e);if(t)return t[0]}function i4(e,t){return VNr(e)||e===36||e===95||e>127&&W7a(e,t)}function See(e,t,r){return mvi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&O7a(e,t)}function z7a(e,t,r){let n=Fme(e,0);if(!i4(n,t))return!1;for(let a=xR(n);aC,getStartPos:()=>C,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>E,getTokenStart:()=>b,getTokenPos:()=>b,getTokenText:()=>A.substring(b,f),getTokenValue:()=>N,hasUnicodeEscape:()=>(B&1024)!==0,hasExtendedUnicodeEscape:()=>(B&8)!==0,hasPrecedingLineBreak:()=>(B&1)!==0,hasPrecedingJSDocComment:()=>(B&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(B&32768)!==0,isIdentifier:()=>E===80||E>118,isReservedWord:()=>E>=83&&E<=118,isUnterminated:()=>(B&4)!==0,getCommentDirectives:()=>F,getNumericLiteralFlags:()=>B&25584,getTokenFlags:()=>B,reScanGreaterToken:qr,reScanAsteriskEqualsToken:_n,reScanSlashToken:ke,reScanTemplateToken:po,reScanTemplateHeadOrNoSubstitutionTemplate:Vr,scanJsxIdentifier:cl,scanJsxAttributeValue:Sc,reScanJsxAttributeValue:Hr,reScanJsxToken:xi,reScanLessThanToken:io,reScanHashToken:ga,reScanQuestionToken:Ya,reScanInvalidIdentifier:cr,scanJsxToken:Gc,scanJsDocToken:Ft,scanJSDocCommentTextToken:Wr,scan:Xt,getText:ps,clearCommentDirectives:yo,setText:bo,setScriptTarget:gc,setLanguageVariant:Cg,setScriptKind:Nc,setJSDocParsingMode:iA,setOnError:Qa,resetTokenState:ma,setTextPos:ma,setSkipJsDocLeadingAsterisks:vu,tryScan:Qi,lookAhead:Or,scanRange:Rn};return Zo.isDebugging&&Object.defineProperty(ne,"__debugShowCurrentPositionInText",{get:()=>{let li=ne.getText();return li.slice(0,ne.getTokenFullStart())+"\u2551"+li.slice(ne.getTokenFullStart())}}),ne;function ce(li){return Fme(A,li)}function fe(li){return li>=0&&li=0&&li=65&&Wc<=70)Wc+=32;else if(!(Wc>=48&&Wc<=57||Wc>=97&&Wc<=102))break;Xa.push(Wc),f++,Yl=!1}return Xa.length=I){Ps+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}let ac=ue(f);if(ac===Ei){Ps+=A.substring(Xa,f),f++;break}if(ac===92&&!li){Ps+=A.substring(Xa,f),Ps+=Yt(3),Xa=f;continue}if((ac===10||ac===13)&&!li){Ps+=A.substring(Xa,f),B|=4,be(ts.Unterminated_string_literal);break}f++}return Ps}function At(li){let Ei=ue(f)===96;f++;let Ps=f,Xa="",ac;for(;;){if(f>=I){Xa+=A.substring(Ps,f),B|=4,be(ts.Unterminated_template_literal),ac=Ei?15:18;break}let Yl=ue(f);if(Yl===96){Xa+=A.substring(Ps,f),f++,ac=Ei?15:18;break}if(Yl===36&&f+1=I)return be(ts.Unexpected_end_of_text),"";let Ps=ue(f);switch(f++,Ps){case 48:if(f>=I||!mce(ue(f)))return"\0";case 49:case 50:case 51:f=55296&&Xa<=56319&&f+6=56320&&Sg<=57343)return f=Wc,ac+String.fromCharCode(Sg)}return ac;case 120:for(;f1114111&&(li&&be(ts.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Ps,f-Ps),Yl=!0),f>=I?(li&&be(ts.Unexpected_end_of_text),Yl=!0):ue(f)===125?f++:(li&&be(ts.Unterminated_Unicode_escape_sequence),Yl=!0),Yl?(B|=2048,A.substring(Ei,f)):(B|=8,F2i(ac))}function Nr(){if(f+5=0&&See(Ps,e)){li+=Tr(!0),Ei=f;continue}if(Ps=Nr(),!(Ps>=0&&See(Ps,e)))break;B|=1024,li+=A.substring(Ei,f),li+=F2i(Ps),f+=6,Ei=f}else break}return li+=A.substring(Ei,f),li}function xt(){let li=N.length;if(li>=2&&li<=12){let Ei=N.charCodeAt(0);if(Ei>=97&&Ei<=122){let Ps=D7a.get(N);if(Ps!==void 0)return E=Ps}}return E=80}function Zr(li){let Ei="",Ps=!1,Xa=!1;for(;;){let ac=ue(f);if(ac===95){B|=512,Ps?(Ps=!1,Xa=!0):be(Xa?ts.Multiple_consecutive_numeric_separators_are_not_permitted:ts.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if(Ps=!0,!mce(ac)||ac-48>=li)break;Ei+=A[f],f++,Xa=!1}return ue(f-1)===95&&be(ts.Numeric_separators_are_not_allowed_here,f-1,1),Ei}function qt(){return ue(f)===110?(N+="n",B&384&&(N=d$a(N)+"n"),f++,10):(N=""+(B&128?parseInt(N.slice(2),2):B&256?parseInt(N.slice(2),8):+N),9)}function Xt(){for(C=f,B=0;;){if(b=f,f>=I)return E=1;let li=ce(f);if(f===0&&li===35&&Cvi(A,f)){if(f=_vi(A,f),t)continue;return E=6}switch(li){case 10:case 13:if(B|=1,t){f++;continue}else return li===13&&f+1=0&&i4(Ei,e))return N=Tr(!0)+vt(),E=xt();let Ps=Nr();return Ps>=0&&i4(Ps,e)?(f+=6,B|=1024,N=String.fromCharCode(Ps)+vt(),E=xt()):(be(ts.Invalid_character),f++,E=0);case 35:if(f!==0&&A[f+1]==="!")return be(ts.can_only_be_used_at_the_start_of_a_file,f,2),f++,E=0;let Xa=ce(f+1);if(Xa===92){f++;let Wc=er();if(Wc>=0&&i4(Wc,e))return N="#"+Tr(!0)+vt(),E=81;let Sg=Nr();if(Sg>=0&&i4(Sg,e))return f+=6,B|=1024,N="#"+String.fromCharCode(Sg)+vt(),E=81;f--}return i4(Xa,e)?(f++,Ar(Xa,e)):(N="#",be(ts.Invalid_character,f++,xR(li))),E=81;case 65533:return be(ts.File_appears_to_be_binary,0,0),f=I,E=8;default:let ac=Ar(li,e);if(ac)return E=ac;if(uJe(li)){f+=xR(li);continue}else if(CV(li)){B|=1,f+=xR(li);continue}let Yl=xR(li);return be(ts.Invalid_character,f,Yl),f+=Yl,E=0}}}function lr(){switch(ae){case 0:return!0;case 1:return!1}return X!==3&&X!==4?!0:ae===3?!1:P7a.test(A.slice(C,f))}function cr(){Zo.assert(E===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=b=C,B=0;let li=ce(f),Ei=Ar(li,99);return Ei?E=Ei:(f+=xR(li),E)}function Ar(li,Ei){let Ps=li;if(i4(Ps,Ei)){for(f+=xR(Ps);f=I)return E=1;let Ei=ue(f);if(Ei===60)return ue(f+1)===47?(f+=2,E=31):(f++,E=30);if(Ei===123)return f++,E=19;let Ps=0;for(;f0)break;vNe(Ei)||(Ps=f)}f++}return N=A.substring(C,f),Ps===-1?13:12}function cl(){if(H1(E)){for(;f=I)return E=1;for(let Ei=ue(f);f=0&&uJe(ue(f-1))&&!(f+1=I)return E=1;let li=ce(f);switch(f+=xR(li),li){case 9:case 11:case 12:case 32:for(;f=0&&i4(Ei,e))return N=Tr(!0)+vt(),E=xt();let Ps=Nr();return Ps>=0&&i4(Ps,e)?(f+=6,B|=1024,N=String.fromCharCode(Ps)+vt(),E=xt()):(f++,E=0)}if(i4(li,e)){let Ei=li;for(;f=0),f=li,C=li,b=li,E=0,N=void 0,B=0}function vu(li){Q+=li?1:-1}}function Fme(e,t){return e.codePointAt(t)}function xR(e){return e>=65536?2:e===-1?0:1}function q7a(e){if(Zo.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}var $7a=String.fromCodePoint?e=>String.fromCodePoint(e):q7a;function F2i(e){return $7a(e)}var Z2i=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),L2i=new Set(["ASCII","ASCII_Hex_Digit","AHex","Alphabetic","Alpha","Any","Assigned","Bidi_Control","Bidi_C","Bidi_Mirrored","Bidi_M","Case_Ignorable","CI","Cased","Changes_When_Casefolded","CWCF","Changes_When_Casemapped","CWCM","Changes_When_Lowercased","CWL","Changes_When_NFKC_Casefolded","CWKCF","Changes_When_Titlecased","CWT","Changes_When_Uppercased","CWU","Dash","Default_Ignorable_Code_Point","DI","Deprecated","Dep","Diacritic","Dia","Emoji","Emoji_Component","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","Extender","Ext","Grapheme_Base","Gr_Base","Grapheme_Extend","Gr_Ext","Hex_Digit","Hex","IDS_Binary_Operator","IDSB","IDS_Trinary_Operator","IDST","ID_Continue","IDC","ID_Start","IDS","Ideographic","Ideo","Join_Control","Join_C","Logical_Order_Exception","LOE","Lowercase","Lower","Math","Noncharacter_Code_Point","NChar","Pattern_Syntax","Pat_Syn","Pattern_White_Space","Pat_WS","Quotation_Mark","QMark","Radical","Regional_Indicator","RI","Sentence_Terminal","STerm","Soft_Dotted","SD","Terminal_Punctuation","Term","Unified_Ideograph","UIdeo","Uppercase","Upper","Variation_Selector","VS","White_Space","space","XID_Continue","XIDC","XID_Start","XIDS"]),V2i=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),ENe={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};ENe.Script_Extensions=ENe.Script;function gj(e){return e.start+e.length}function eza(e){return e.length===0}function ONr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function tza(e,t){return ONr(e,t-e)}function tJe(e){return ONr(e.span.start,e.newLength)}function rza(e){return eza(e.span)&&e.newLength===0}function Evi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var VTu=Evi(ONr(0,0),0);function Svi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function Qbt(e){return(e.flags&16)===0}function nza(e,t){if(e===void 0||Qbt(e))return e;for(e=e.original;e;){if(Qbt(e))return!t||t(e)?e:void 0;e=e.original}}function hNe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function hJe(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function yV(e){return hJe(e.escapedText)}function vvi(e){let t=fvi(e.escapedText);return t?o7a(t,Cce):void 0}function uNr(e){return e.valueDeclaration&&Tza(e.valueDeclaration)?yV(e.valueDeclaration.name):hJe(e.escapedName)}function Bvi(e){let t=e.parent.parent;if(t){if(O2i(t))return Tbt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return Tbt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let n=r.argumentExpression;if($C(n))return n}break;case 217:return Tbt(t.expression);case 256:{if(O2i(t.statement)||Oza(t.statement))return Tbt(t.statement);break}}}}function Tbt(e){let t=wvi(e);return t&&$C(t)?t:void 0}function iza(e){return e.name||Bvi(e)}function sza(e){return!!e.name}function MNr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(JNr(r)){case 1:case 4:case 5:case 3:return UNr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return iza(e);case 340:return Bvi(e);case 277:{let{expression:r}=e;return $C(r)?r:void 0}case 212:let t=e;if(Hvi(t))return t.argumentExpression}return e.name}function wvi(e){if(e!==void 0)return MNr(e)||(lBi(e)||uBi(e)||mNr(e)?oza(e):void 0)}function oza(e){if(e.parent){if(Eec(e.parent)||oec(e.parent))return e.parent.name;if(NNe(e.parent)&&e===e.parent.right){if($C(e.parent.left))return e.parent.left;if(Kvi(e.parent.left))return UNr(e.parent.left)}else if(ABi(e.parent)&&$C(e.parent.name))return e.parent.name}else return}function aza(e){if(Fqa(e))return wee(e.modifiers,tDr)}function cza(e){if(SJe(e,98303))return wee(e.modifiers,Dza)}function Tvi(e,t){if(e.name)if($C(e.name)){let r=e.name.escapedText;return mJe(e.parent,t).filter(n=>nSi(n)&&$C(n.name)&&n.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Zo.assert(r>-1,"Parameters should always be in their parents' parameter list");let n=mJe(e.parent,t).filter(nSi);if(rVec(n)&&n.typeParameters.some(a=>a.name.escapedText===r))}function gza(e){return Rvi(e,!1)}function Aza(e){return Rvi(e,!0)}function dza(e){return vce(e,Rec)}function pza(e){return bza(e,Pec)}function fza(e){return vce(e,Nec,!0)}function Iza(e){return vce(e,Dec,!0)}function hza(e){return vce(e,kec,!0)}function mza(e){return vce(e,xec,!0)}function Cza(e){return vce(e,Gec,!0)}function _za(e){return vce(e,Zec,!0)}function yza(e){let t=vce(e,iDr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function mJe(e,t){var r;if(!KNr(e))return x2;let n=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(n===void 0||t){let a=Cqa(e,t);Zo.assert(a.length<2||a[0]!==a[1]),n=KSi(a,o=>yBi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=n)}return n}function Nvi(e){return mJe(e,!1)}function vce(e,t,r){return JSi(mJe(e,r),t)}function bza(e,t){return Nvi(e).filter(t)}function gNr(e){return e.kind===80||e.kind===81}function Eza(e){return Bce(e)&&!!(e.flags&64)}function Sza(e){return vJe(e)&&!!(e.flags&64)}function P2i(e){return cBi(e)&&!!(e.flags&64)}function HNr(e){return sDr(e,8)}function vza(e){return Vbt(e)&&!!(e.flags&64)}function YNr(e){return e>=166}function Dvi(e){return e>=0&&e<=165}function Bza(e){return Dvi(e.kind)}function _ce(e){return fj(e,"pos")&&fj(e,"end")}function wza(e){return 9<=e&&e<=15}function W2i(e){return 15<=e&&e<=18}function SNe(e){var t;return $C(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function kvi(e){var t;return Yme(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Tza(e){return(Kbt(e)||Gza(e))&&Yme(e.name)}function vee(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function Rza(e){return!!(Jvi(e)&31)}function Nza(e){return Rza(e)||e===126||e===164||e===129}function Dza(e){return vee(e.kind)}function xvi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function Gvi(e){return!!e&&xza(e.kind)}function kza(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function xza(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return kza(e)}}function BNe(e){return e&&(e.kind===263||e.kind===231)}function Gza(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function Fza(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function Zza(e){return Xqa(e.kind)}function Lza(e){if(e){let t=e.kind;return t===207||t===206}return!1}function Vza(e){let t=e.kind;return t===209||t===210}function Pza(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function wNe(e){return Fvi(HNr(e).kind)}function Fvi(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function Wza(e){return Zvi(HNr(e).kind)}function Zvi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return Fvi(e)}}function Oza(e){return Mza(HNr(e).kind)}function Mza(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return Zvi(e)}}function Hza(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function Lvi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function Vvi(e){return e===252||e===251||e===259||e===246||e===244||e===242||e===249||e===250||e===248||e===245||e===256||e===253||e===255||e===257||e===258||e===243||e===247||e===254||e===353}function O2i(e){return e.kind===168?e.parent&&e.parent.kind!==345||Qme(e):Hza(e.kind)}function Yza(e){let t=e.kind;return Vvi(t)||Lvi(t)||Qza(e)}function Qza(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!oqa(e)}function Xza(e){let t=e.kind;return Vvi(t)||Lvi(t)||t===241}function Pvi(e){return e.kind>=309&&e.kind<=351}function Jza(e){return e.kind===320||e.kind===319||e.kind===321||jza(e)||Uza(e)||Tec(e)||bBi(e)}function Uza(e){return e.kind>=327&&e.kind<=351}function Rbt(e){return e.kind===178}function Nbt(e){return e.kind===177}function Pme(e){if(!KNr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function Kza(e){return!!e.initializer}function QNr(e){return e.kind===11||e.kind===15}function jza(e){return e.kind===324||e.kind===325||e.kind===326}function M2i(e){return(e.flags&33554432)!==0}var PTu=zza();function zza(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,n)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&vNe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:RNe,decreaseIndent:RNe,clear:()=>e=""}}function qza(e,t){let r=e.entries();for(let[n,a]of r){let o=t(a,n);if(o)return o}}function $za(e){return e.end-e.pos}function Wvi(e){return eqa(e),(e.flags&1048576)!==0}function eqa(e){e.flags&2097152||((e.flags&262144||Ok(e,Wvi))&&(e.flags|=1048576),e.flags|=2097152)}function bce(e){for(;e&&e.kind!==307;)e=e.parent;return e}function Wme(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function ANr(e){return!Wme(e)}function Xbt(e,t,r){if(Wme(e))return e.pos;if(Pvi(e)||e.kind===12)return dj((t??bce(e)).text,e.pos,!1,!0);if(r&&Pme(e))return Xbt(e.jsDoc[0],t);if(e.kind===352){t??(t=bce(e));let n=DNr(EBi(e,t));if(n)return Xbt(n,t,r)}return dj((t??bce(e)).text,e.pos,!1,!1,aqa(e))}function H2i(e,t,r=!1){return gJe(e.text,t,r)}function tqa(e){return!!Svi(e,vec)}function gJe(e,t,r=!1){if(Wme(t))return"";let n=e.substring(r?t.pos:dj(e,t.pos),t.end);return tqa(t)&&(n=n.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` -`)),n}function TNe(e){let t=e.emitNode;return t&&t.flags||0}function rqa(e,t,r){Zo.assertGreaterThanOrEqual(t,0),Zo.assertGreaterThanOrEqual(r,0),Zo.assertLessThanOrEqual(t,e.length),Zo.assertLessThanOrEqual(t+r,e.length)}function Lbt(e){return e.kind===244&&e.expression.kind===11}function XNr(e){return!!(TNe(e)&2097152)}function Y2i(e){return XNr(e)&&dBi(e)}function nqa(e){return $C(e.name)&&!e.initializer}function Q2i(e){return XNr(e)&&rEt(e)&&RNr(e.declarationList.declarations,nqa)}function iqa(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?NNr(j7a(t,e.pos),lNr(t,e.pos)):lNr(t,e.pos);return wee(r,n=>n.end<=e.end&&t.charCodeAt(n.pos+1)===42&&t.charCodeAt(n.pos+2)===42&&t.charCodeAt(n.pos+3)!==47)}function sqa(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function oqa(e){return e&&e.kind===241&&Gvi(e.parent)}function X2i(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function Qme(e){return!!e&&!!(e.flags&524288)}function aqa(e){return!!e&&!!(e.flags&16777216)}function cqa(e){for(;Jbt(e,!0);)e=e.right;return e}function lqa(e){return $C(e)&&e.escapedText==="exports"}function uqa(e){return $C(e)&&e.escapedText==="module"}function Ovi(e){return(Bce(e)||Mvi(e))&&uqa(e.expression)&&_Je(e)==="exports"}function JNr(e){let t=Aqa(e);return t===5||Qme(e)?t:0}function gqa(e){return aJe(e.arguments)===3&&Bce(e.expression)&&$C(e.expression.expression)&&yV(e.expression.expression)==="Object"&&yV(e.expression.name)==="defineProperty"&&eEt(e.arguments[1])&&CJe(e.arguments[0],!0)}function Mvi(e){return vJe(e)&&eEt(e.argumentExpression)}function EJe(e,t){return Bce(e)&&(!t&&e.expression.kind===110||$C(e.name)&&CJe(e.expression,!0))||Hvi(e,t)}function Hvi(e,t){return Mvi(e)&&(!t&&e.expression.kind===110||qNr(e.expression)||EJe(e.expression,!0))}function CJe(e,t){return qNr(e)||EJe(e,t)}function Aqa(e){if(cBi(e)){if(!gqa(e))return 0;let t=e.arguments[0];return lqa(t)||Ovi(t)?8:EJe(t)&&_Je(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!Kvi(e.left)||dqa(cqa(e))?0:CJe(e.left.expression,!0)&&_Je(e.left)==="prototype"&&aBi(fqa(e))?6:pqa(e.left)}function dqa(e){return lec(e)&&DNe(e.expression)&&e.expression.text==="0"}function UNr(e){if(Bce(e))return e.name;let t=jNr(e.argumentExpression);return DNe(t)||QNr(t)?t:e}function _Je(e){let t=UNr(e);if(t){if($C(t))return t.escapedText;if(QNr(t)||DNe(t))return hNe(t.text)}}function pqa(e){if(e.expression.kind===110)return 4;if(Ovi(e))return 2;if(CJe(e.expression,!0)){if(Yqa(e.expression))return 3;let t=e;for(;!$C(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&_Je(t)==="exports")&&EJe(e))return 1;if(CJe(e,!0)||vJe(e)&&Rqa(e))return 5}return 0}function fqa(e){for(;NNe(e.right);)e=e.right;return e.right}function Iqa(e){return gBi(e)&&NNe(e.expression)&&JNr(e.expression)!==0&&NNe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function hqa(e){switch(e.kind){case 243:let t=dNr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function dNr(e){return rEt(e)?DNr(e.declarationList.declarations):void 0}function mqa(e){return bJe(e)&&e.body&&e.body.kind===267?e.body:void 0}function KNr(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 317:case 323:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Cqa(e,t){let r;sqa(e)&&Kza(e)&&Pme(e.initializer)&&(r=_V(r,J2i(e,e.initializer.jsDoc)));let n=e;for(;n&&n.parent;){if(Pme(n)&&(r=_V(r,J2i(e,n.jsDoc))),n.kind===169){r=_V(r,(t?uza:lza)(n));break}if(n.kind===168){r=_V(r,(t?Aza:gza)(n));break}n=yqa(n)}return r||x2}function J2i(e,t){let r=z6a(t);return KSi(t,n=>{if(n===r){let a=wee(n.tags,o=>_qa(e,o));return n.tags===a?[n]:a}else return wee(n.tags,Fec)})}function _qa(e,t){return!(iDr(t)||Wec(t))||!t.parent||!yBi(t.parent)||!rDr(t.parent.parent)||t.parent.parent===e}function yqa(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||mqa(t)||Jbt(e))return t;if(t.parent&&(dNr(t.parent)===e||Jbt(t)))return t.parent;if(t.parent&&t.parent.parent&&(dNr(t.parent.parent)||hqa(t.parent.parent)===e||Iqa(t.parent.parent)))return t.parent.parent}function jNr(e,t){return sDr(e,t?-2147483647:1)}function bqa(e){let t=Eqa(e);if(t&&Qme(e)){let r=dza(e);if(r)return r.class}return t}function Eqa(e){let t=zNr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function Sqa(e){if(Qme(e))return pza(e).map(t=>t.class);{let t=zNr(e.heritageClauses,119);return t?.types}}function vqa(e){return nDr(e)?Bqa(e)||x2:BNe(e)&&NNr(oNr(bqa(e)),Sqa(e))||x2}function Bqa(e){let t=zNr(e.heritageClauses,96);return t?t.types:void 0}function zNr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function Cce(e){return 83<=e&&e<=165}function wqa(e){return 19<=e&&e<=79}function URr(e){return Cce(e)||wqa(e)}function eEt(e){return QNr(e)||DNe(e)}function Tqa(e){return uec(e)&&(e.operator===40||e.operator===41)&&DNe(e.operand)}function Rqa(e){if(!(e.kind===167||e.kind===212))return!1;let t=vJe(e)?jNr(e.argumentExpression):e.expression;return!eEt(t)&&!Tqa(t)}function Nqa(e){return gNr(e)?yV(e):_Bi(e)?C$a(e):e.text}function mNe(e){return yJe(e.pos)||yJe(e.end)}function KRr(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function jRr(e){return!!((e.templateFlags||0)&2048)}function Dqa(e){return e&&!!(k$a(e)?jRr(e):jRr(e.head)||oD(e.templateSpans,t=>jRr(t.literal)))}var WTu=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),OTu=new Map(Object.entries({'"':""","'":"'"}));function kqa(e){return!!e&&e.kind===80&&xqa(e)}function xqa(e){return e.escapedText==="this"}function SJe(e,t){return!!Zqa(e,t)}function Gqa(e){return SJe(e,256)}function Fqa(e){return SJe(e,32768)}function Zqa(e,t){return Vqa(e)&t}function Lqa(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=Xvi(e)|536870912),r||t&&Qme(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=Yvi(e)|268435456),Qvi(e.modifierFlagsCache)):Pqa(e.modifierFlagsCache))}function Vqa(e){return Lqa(e,!1)}function Yvi(e){let t=0;return e.parent&&!Ubt(e)&&(Qme(e)&&(fza(e)&&(t|=8388608),Iza(e)&&(t|=16777216),hza(e)&&(t|=33554432),mza(e)&&(t|=67108864),Cza(e)&&(t|=134217728)),_za(e)&&(t|=65536)),t}function Pqa(e){return e&65535}function Qvi(e){return e&131071|(e&260046848)>>>23}function Wqa(e){return Qvi(Yvi(e))}function Oqa(e){return Xvi(e)|Wqa(e)}function Xvi(e){let t=oDr(e)?fO(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function fO(e){let t=0;if(e)for(let r of e)t|=Jvi(r.kind);return t}function Jvi(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function Mqa(e){return e===76||e===77||e===78}function Uvi(e){return e>=64&&e<=79}function Jbt(e,t){return NNe(e)&&(t?e.operatorToken.kind===64:Uvi(e.operatorToken.kind))&&wNe(e.left)}function qNr(e){return e.kind===80||Hqa(e)}function Hqa(e){return Bce(e)&&$C(e.name)&&qNr(e.expression)}function Yqa(e){return EJe(e)&&_Je(e)==="prototype"}function zRr(e){return e.flags&3899393?e.objectFlags:0}function Qqa(e){let t;return Ok(e,r=>{ANr(r)&&(t=r)},r=>{for(let n=r.length-1;n>=0;n--)if(ANr(r[n])){t=r[n];break}}),t}function Xqa(e){return e>=182&&e<=205||e===133||e===159||e===150||e===163||e===151||e===136||e===154||e===155||e===116||e===157||e===146||e===141||e===233||e===312||e===313||e===314||e===315||e===316||e===317||e===318}function Kvi(e){return e.kind===211||e.kind===212}function Jqa(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function Uqa(e,t){this.flags=t,(Zo.isDebugging||Fbt)&&(this.checker=e)}function Kqa(e,t){this.flags=t,Zo.isDebugging&&(this.checker=e)}function qRr(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function jqa(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function zqa(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function qqa(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}var k2={getNodeConstructor:()=>qRr,getTokenConstructor:()=>jqa,getIdentifierConstructor:()=>zqa,getPrivateIdentifierConstructor:()=>qRr,getSourceFileConstructor:()=>qRr,getSymbolConstructor:()=>Jqa,getTypeConstructor:()=>Uqa,getSignatureConstructor:()=>Kqa,getSourceMapSourceConstructor:()=>qqa},$qa=[];function e$a(e){Object.assign(k2,e),hO($qa,t=>t(k2))}function t$a(e,t){return e.replace(/\{(\d+)\}/g,(r,n)=>""+Zo.checkDefined(t[+n]))}var U2i;function r$a(e){return U2i&&U2i[e.key]||e.message}function dNe(e,t,r,n,a,...o){r+n>t.length&&(n=t.length-r),rqa(t,r,n);let l=r$a(a);return oD(o)&&(l=t$a(l,o)),{file:void 0,start:r,length:n,messageText:l,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function n$a(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function jvi(e,t){let r=t.fileName||"",n=t.text.length;Zo.assertEqual(e.fileName,r),Zo.assertLessThanOrEqual(e.start,n),Zo.assertLessThanOrEqual(e.start+e.length,n);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)n$a(o)&&o.fileName===r?(Zo.assertLessThanOrEqual(o.start,n),Zo.assertLessThanOrEqual(o.start+o.length,n),a.relatedInformation.push(jvi(o,t))):a.relatedInformation.push(o)}return a}function Nme(e,t){let r=[];for(let n of e)r.push(jvi(n,t));return r}function K2i(e){return e===4||e===2||e===1||e===6?1:0}var y0={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:y0.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(y0.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(y0.module.computeValue(e)===100||y0.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(y0.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:y0.esModuleInterop.computeValue(e)||y0.module.computeValue(e)===4||y0.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=y0.moduleResolution.computeValue(e);if(!j2i(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=y0.moduleResolution.computeValue(e);if(!j2i(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:y0.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||y0.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&y0.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?y0.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>Eee(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>Eee(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>Eee(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>Eee(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>Eee(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>Eee(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>Eee(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>Eee(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>Eee(e,"useUnknownInCatchVariables")}},MTu=y0.allowImportingTsExtensions.computeValue,HTu=y0.target.computeValue,YTu=y0.module.computeValue,QTu=y0.moduleResolution.computeValue,XTu=y0.moduleDetection.computeValue,JTu=y0.isolatedModules.computeValue,UTu=y0.esModuleInterop.computeValue,KTu=y0.allowSyntheticDefaultImports.computeValue,jTu=y0.resolvePackageJsonExports.computeValue,zTu=y0.resolvePackageJsonImports.computeValue,qTu=y0.resolveJsonModule.computeValue,$Tu=y0.declaration.computeValue,eRu=y0.preserveConstEnums.computeValue,tRu=y0.incremental.computeValue,rRu=y0.declarationMap.computeValue,nRu=y0.allowJs.computeValue,iRu=y0.useDefineForClassFields.computeValue;function j2i(e){return e>=3&&e<=99||e===100}function Eee(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function i$a(e){return qza(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var s$a=["node_modules","bower_components","jspm_packages"],zvi=`(?!(${s$a.join("|")})(/|$))`,o$a={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${zvi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>qvi(e,o$a.singleAsteriskRegexFragment)},a$a={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${zvi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>qvi(e,a$a.singleAsteriskRegexFragment)};function qvi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function c$a(e,t){return t||l$a(e)||3}function l$a(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var $vi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],sRu=USi($vi),oRu=[...$vi,[".json"]],u$a=[[".js",".jsx"],[".mjs"],[".cjs"]],aRu=USi(u$a),g$a=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],cRu=[...g$a,[".json"]],A$a=[".d.ts",".d.cts",".d.mts"];function yJe(e){return!(e>=0)}function Dbt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),Zo.assert(e.relatedInformation!==x2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function d$a(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:let I=e.length-1,C=0;for(;e.charCodeAt(C)===48;)C++;return e.slice(C,I)||"0"}let r=2,n=e.length-1,a=(n-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let I=n-1,C=0;I>=r;I--,C+=t){let b=C>>>4,E=e.charCodeAt(I),N=(E<=57?E-48:10+E-(E<=70?65:97))<<(C&15);o[b]|=N;let B=N>>>16;B&&(o[b+1]|=B)}let l="",A=o.length-1,f=!0;for(;f;){let I=0;f=!1;for(let C=A;C>=0;C--){let b=I<<16|o[C],E=b/10|0;o[C]=E,I=b-E*10,E&&!f&&(A=C,f=!0)}l=I+l}return l}function p$a({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function pNr(e,t){return e.pos=t,e}function f$a(e,t){return e.end=t,e}function Ece(e,t,r){return f$a(pNr(e,t),r)}function z2i(e,t,r){return Ece(e,t,t+r)}function $Nr(e,t){return e&&t&&(e.parent=t),e}function I$a(e,t){if(!e)return e;return BSi(e,Pvi(e)?r:a),e;function r(o,l){if(t&&o.parent===l)return"skip";$Nr(o,l)}function n(o){if(Pme(o))for(let l of o.jsDoc)r(l,o),BSi(l,r)}function a(o,l){return r(o,l)||n(o)}}function h$a(e){return!!(e.flags&262144&&e.isThisType)}function m$a(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function C$a(e){return`${yV(e.namespace)}:${yV(e.name)}`}var lRu=String.prototype.replace,fNr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],uRu=new Set(fNr),_$a=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),gRu=new Set([...fNr,...fNr.map(e=>`node:${e}`),..._$a]);function y$a(){let e,t,r,n,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:l,createBasePrivateIdentifierNode:A,createBaseTokenNode:f,createBaseNode:I};function o(C){return new(a||(a=k2.getSourceFileConstructor()))(C,-1,-1)}function l(C){return new(r||(r=k2.getIdentifierConstructor()))(C,-1,-1)}function A(C){return new(n||(n=k2.getPrivateIdentifierConstructor()))(C,-1,-1)}function f(C){return new(t||(t=k2.getTokenConstructor()))(C,-1,-1)}function I(C){return new(e||(e=k2.getNodeConstructor()))(C,-1,-1)}}var b$a={getParenthesizeLeftSideOfBinaryForOperator:e=>VE,getParenthesizeRightSideOfBinaryForOperator:e=>VE,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:VE,parenthesizeConditionOfConditionalExpression:VE,parenthesizeBranchOfConditionalExpression:VE,parenthesizeExpressionOfExportDefault:VE,parenthesizeExpressionOfNew:e=>Aj(e,wNe),parenthesizeLeftSideOfAccess:e=>Aj(e,wNe),parenthesizeOperandOfPostfixUnary:e=>Aj(e,wNe),parenthesizeOperandOfPrefixUnary:e=>Aj(e,Wza),parenthesizeExpressionsOfCommaDelimitedList:e=>Aj(e,_ce),parenthesizeExpressionForDisallowedComma:VE,parenthesizeExpressionOfExpressionStatement:VE,parenthesizeConciseBodyOfArrowFunction:VE,parenthesizeCheckTypeOfConditionalType:VE,parenthesizeExtendsTypeOfConditionalType:VE,parenthesizeConstituentTypesOfUnionType:e=>Aj(e,_ce),parenthesizeConstituentTypeOfUnionType:VE,parenthesizeConstituentTypesOfIntersectionType:e=>Aj(e,_ce),parenthesizeConstituentTypeOfIntersectionType:VE,parenthesizeOperandOfTypeOperator:VE,parenthesizeOperandOfReadonlyTypeOperator:VE,parenthesizeNonArrayTypeOfPostfixType:VE,parenthesizeElementTypesOfTupleType:e=>Aj(e,_ce),parenthesizeElementTypeOfTupleType:VE,parenthesizeTypeOfOptionalType:VE,parenthesizeTypeArguments:e=>e&&Aj(e,_ce),parenthesizeLeadingTypeArgument:VE},kbt=0,E$a=[];function eDr(e,t){let r=e&8?VE:T$a,n=T2i(()=>e&1?b$a:createParenthesizerRules(X)),a=T2i(()=>e&2?nullNodeConverters:createNodeConverters(X)),o=eH(z=>(ye,Ve)=>gt(ye,z,Ve)),l=eH(z=>ye=>se(z,ye)),A=eH(z=>ye=>K(ye,z)),f=eH(z=>()=>ND(z)),I=eH(z=>ye=>q_(z,ye)),C=eH(z=>(ye,Ve)=>UR(z,ye,Ve)),b=eH(z=>(ye,Ve)=>DD(z,ye,Ve)),E=eH(z=>(ye,Ve)=>kD(z,ye,Ve)),N=eH(z=>(ye,Ve)=>Mo(z,ye,Ve)),B=eH(z=>(ye,Ve,Ct)=>gp(z,ye,Ve,Ct)),F=eH(z=>(ye,Ve,Ct)=>lF(z,ye,Ve,Ct)),Q=eH(z=>(ye,Ve,Ct,wr)=>uF(z,ye,Ve,Ct,wr)),X={get parenthesizer(){return n()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:ae,createNumericLiteral:ue,createBigIntLiteral:de,createStringLiteral:Se,createStringLiteralFromNode:De,createRegularExpressionLiteral:k,createLiteralLikeNode:et,createIdentifier:je,createTempVariable:St,createLoopVariable:At,createUniqueName:Yt,getGeneratedNameForNode:Tr,createPrivateIdentifier:er,createUniquePrivateName:xt,getGeneratedPrivateNameForNode:Zr,createToken:Xt,createSuper:lr,createThis:cr,createNull:Ar,createTrue:qr,createFalse:_n,createModifier:ke,createModifiersFromModifierFlags:jt,createQualifiedName:Fn,updateQualifiedName:Nn,createComputedPropertyName:Hi,updateComputedPropertyName:po,createTypeParameterDeclaration:Vr,updateTypeParameterDeclaration:xi,createParameterDeclaration:io,updateParameterDeclaration:ga,createDecorator:Ya,updateDecorator:Gc,createPropertySignature:cl,updatePropertySignature:Sc,createPropertyDeclaration:Wr,updatePropertyDeclaration:Ft,createMethodSignature:zr,updateMethodSignature:Rn,createMethodDeclaration:Or,updateMethodDeclaration:Qi,createConstructorDeclaration:gc,updateConstructorDeclaration:Cg,createGetAccessorDeclaration:iA,updateGetAccessorDeclaration:ma,createSetAccessorDeclaration:li,updateSetAccessorDeclaration:Ei,createCallSignature:Xa,updateCallSignature:ac,createConstructSignature:Yl,updateConstructSignature:Wc,createIndexSignature:Sg,updateIndexSignature:Ul,createClassStaticBlockDeclaration:yo,updateClassStaticBlockDeclaration:bo,createTemplateLiteralTypeSpan:Xu,updateTemplateLiteralTypeSpan:Da,createKeywordTypeNode:pu,createTypePredicateNode:_g,updateTypePredicateNode:mI,createTypeReferenceNode:Qh,updateTypeReferenceNode:Ri,createFunctionTypeNode:Do,updateFunctionTypeNode:Wt,createConstructorTypeNode:Ru,updateConstructorTypeNode:Yn,createTypeQueryNode:OA,updateTypeQueryNode:GA,createTypeLiteralNode:$i,updateTypeLiteralNode:dl,createArrayTypeNode:Uf,updateArrayTypeNode:Kd,createTupleTypeNode:oA,updateTupleTypeNode:oo,createNamedTupleMember:Ki,updateNamedTupleMember:cc,createOptionalTypeNode:Xs,updateOptionalTypeNode:ws,createRestTypeNode:Gs,updateRestTypeNode:Ma,createUnionTypeNode:Tf,updateUnionTypeNode:cm,createIntersectionTypeNode:Fl,updateIntersectionTypeNode:rc,createConditionalTypeNode:sd,updateConditionalTypeNode:Om,createInferTypeNode:il,updateInferTypeNode:FA,createImportTypeNode:yg,updateImportTypeNode:Mp,createParenthesizedType:MA,updateParenthesizedType:Er,createThisTypeNode:Zt,createTypeOperatorNode:yn,updateTypeOperatorNode:ls,createIndexedAccessTypeNode:oa,updateIndexedAccessTypeNode:Fs,createMappedTypeNode:Wa,updateMappedTypeNode:Ca,createLiteralTypeNode:ld,updateLiteralTypeNode:Rp,createTemplateLiteralType:ZA,updateTemplateLiteralType:El,createObjectBindingPattern:np,updateObjectBindingPattern:HA,createArrayBindingPattern:df,updateArrayBindingPattern:Zs,createBindingElement:so,updateBindingElement:Ea,createArrayLiteralExpression:Ml,updateArrayLiteralExpression:Dr,createObjectLiteralExpression:Wn,updateObjectLiteralExpression:di,createPropertyAccessExpression:e&4?(z,ye)=>setEmitFlags(Bo(z,ye),262144):Bo,updatePropertyAccessExpression:us,createPropertyAccessChain:e&4?(z,ye,Ve)=>setEmitFlags(Ql(z,ye,Ve),262144):Ql,updatePropertyAccessChain:LA,createElementAccessExpression:ef,updateElementAccessExpression:ip,createElementAccessChain:_d,updateElementAccessChain:j1,createCallExpression:YA,updateCallExpression:Ac,createCallChain:Nm,updateCallChain:HS,createNewExpression:jd,updateNewExpression:dh,createTaggedTemplateExpression:Hp,updateTaggedTemplateExpression:uC,createTypeAssertion:nE,updateTypeAssertion:J_,createParenthesizedExpression:q0,updateParenthesizedExpression:XE,createFunctionExpression:TC,updateFunctionExpression:t_,createArrowFunction:cp,updateArrowFunction:Mm,createDeleteExpression:fb,updateDeleteExpression:pe,createTypeOfExpression:lm,updateTypeOfExpression:Kf,createVoidExpression:CI,updateVoidExpression:_I,createAwaitExpression:H2,updateAwaitExpression:iE,createPrefixUnaryExpression:se,updatePrefixUnaryExpression:O,createPostfixUnaryExpression:K,updatePostfixUnaryExpression:we,createBinaryExpression:gt,updateBinaryExpression:Yr,createConditionalExpression:Lr,updateConditionalExpression:fi,createTemplateExpression:$n,updateTemplateExpression:ra,createTemplateHead:SA,createTemplateMiddle:lI,createTemplateTail:lp,createNoSubstitutionTemplateLiteral:Ib,createTemplateLiteralLikeNode:$g,createYieldExpression:Na,updateYieldExpression:wd,createSpreadElement:z1,updateSpreadElement:T_,createClassExpression:RC,updateClassExpression:Hm,createOmittedExpression:YS,createExpressionWithTypeArguments:Fg,updateExpressionWithTypeArguments:hb,createAsExpression:gC,updateAsExpression:NC,createNonNullExpression:Y2,updateNonNullExpression:U_,createSatisfiesExpression:DC,updateSatisfiesExpression:kC,createNonNullChain:qI,updateNonNullChain:ph,createMetaProperty:vA,updateMetaProperty:Td,createTemplateSpan:Mc,updateTemplateSpan:Pf,createSemicolonClassElement:sE,createBlock:eA,updateBlock:QS,createVariableStatement:XS,updateVariableStatement:um,createEmptyStatement:gm,createExpressionStatement:cs,updateExpressionStatement:na,createIfStatement:ko,updateIfStatement:ki,createDoStatement:Kl,updateDoStatement:fd,createWhileStatement:jf,updateWhileStatement:Ld,createForStatement:AC,updateForStatement:JE,createForInStatement:Ym,updateForInStatement:vy,createForOfStatement:K_,updateForOfStatement:od,createContinueStatement:UE,updateContinueStatement:KE,createBreakStatement:Yp,updateBreakStatement:JS,createReturnStatement:By,updateReturnStatement:$0,createWithStatement:fw,updateWithStatement:Q2,createSwitchStatement:xc,updateSwitchStatement:ut,createLabeledStatement:ar,updateLabeledStatement:Jr,createThrowStatement:Gn,updateThrowStatement:Ts,createTryStatement:Qo,updateTryStatement:vg,createDebuggerStatement:Ng,createVariableDeclaration:Rf,updateVariableDeclaration:uI,createVariableDeclarationList:Th,updateVariableDeclarationList:oE,createFunctionDeclaration:TT,updateFunctionDeclaration:sB,createClassDeclaration:wy,updateClassDeclaration:jE,createInterfaceDeclaration:j_,updateInterfaceDeclaration:NT,createTypeAliasDeclaration:tf,updateTypeAliasDeclaration:Ty,createEnumDeclaration:US,updateEnumDeclaration:$I,createModuleDeclaration:BA,updateModuleDeclaration:$A,createModuleBlock:Qm,updateModuleBlock:zf,createCaseBlock:mb,updateCaseBlock:R_,createNamespaceExportDeclaration:Cb,updateNamespaceExportDeclaration:Ry,createImportEqualsDeclaration:_b,updateImportEqualsDeclaration:z_,createImportDeclaration:zE,updateImportDeclaration:oB,createImportClause:DT,updateImportClause:aB,createAssertClause:jS,updateAssertClause:XR,createAssertEntry:zS,updateAssertEntry:qE,createImportTypeAssertionContainer:X2,updateImportTypeAssertionContainer:kT,createImportAttributes:pn,updateImportAttributes:q1,createImportAttribute:J2,updateImportAttribute:ey,createNamespaceImport:up,updateNamespaceImport:Iw,createNamespaceExport:cB,updateNamespaceExport:RD,createNamedImports:Rd,updateNamedImports:JR,createImportSpecifier:ty,updateImportSpecifier:cF,createExportAssignment:$1,updateExportAssignment:$E,createExportDeclaration:N_,updateExportDeclaration:e1,createNamedExports:ry,updateNamedExports:xT,createExportSpecifier:yb,updateExportSpecifier:r_,createMissingDeclaration:Rh,createExternalModuleReference:bb,updateExternalModuleReference:lB,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return b(315)},get updateJSDocNonNullableType(){return E(315)},get createJSDocNullableType(){return b(314)},get updateJSDocNullableType(){return E(314)},get createJSDocOptionalType(){return I(316)},get updateJSDocOptionalType(){return C(316)},get createJSDocVariadicType(){return I(318)},get updateJSDocVariadicType(){return C(318)},get createJSDocNamepathType(){return I(319)},get updateJSDocNamepathType(){return C(319)},createJSDocFunctionType:lc,updateJSDocFunctionType:fh,createJSDocTypeLiteral:rf,updateJSDocTypeLiteral:yI,createJSDocTypeExpression:aE,updateJSDocTypeExpression:qS,createJSDocSignature:Qp,updateJSDocSignature:uB,createJSDocTemplateTag:r1,updateJSDocTemplateTag:gB,createJSDocTypedefTag:hw,updateJSDocTypedefTag:GT,createJSDocParameterTag:b0,updateJSDocParameterTag:ia,createJSDocPropertyTag:e2,updateJSDocPropertyTag:yd,createJSDocCallbackTag:bI,updateJSDocCallbackTag:ag,createJSDocOverloadTag:Eb,updateJSDocOverloadTag:n1,createJSDocAugmentsTag:U2,updateJSDocAugmentsTag:e0,createJSDocImplementsTag:n_,updateJSDocImplementsTag:Wf,createJSDocSeeTag:Xp,updateJSDocSeeTag:cE,createJSDocImportTag:Dp,updateJSDocImportTag:t2,createJSDocNameReference:lE,updateJSDocNameReference:Ip,createJSDocMemberName:Xh,updateJSDocMemberName:E0,createJSDocLink:aA,updateJSDocLink:fu,createJSDocLinkCode:Jp,updateJSDocLinkCode:dC,createJSDocLinkPlain:uE,updateJSDocLinkPlain:eh,get createJSDocTypeTag(){return F(344)},get updateJSDocTypeTag(){return Q(344)},get createJSDocReturnTag(){return F(342)},get updateJSDocReturnTag(){return Q(342)},get createJSDocThisTag(){return F(343)},get updateJSDocThisTag(){return Q(343)},get createJSDocAuthorTag(){return N(330)},get updateJSDocAuthorTag(){return B(330)},get createJSDocClassTag(){return N(332)},get updateJSDocClassTag(){return B(332)},get createJSDocPublicTag(){return N(333)},get updateJSDocPublicTag(){return B(333)},get createJSDocPrivateTag(){return N(334)},get updateJSDocPrivateTag(){return B(334)},get createJSDocProtectedTag(){return N(335)},get updateJSDocProtectedTag(){return B(335)},get createJSDocReadonlyTag(){return N(336)},get updateJSDocReadonlyTag(){return B(336)},get createJSDocOverrideTag(){return N(337)},get updateJSDocOverrideTag(){return B(337)},get createJSDocDeprecatedTag(){return N(331)},get updateJSDocDeprecatedTag(){return B(331)},get createJSDocThrowsTag(){return F(349)},get updateJSDocThrowsTag(){return Q(349)},get createJSDocSatisfiesTag(){return F(350)},get updateJSDocSatisfiesTag(){return Q(350)},createJSDocEnumTag:Np,updateJSDocEnumTag:Dm,createJSDocUnknownTag:gE,updateJSDocUnknownTag:FT,createJSDocText:Ro,updateJSDocText:AE,createJSDocComment:AB,updateJSDocComment:Xc,createJsxElement:iu,updateJsxElement:dE,createJsxSelfClosingElement:yL,updateJsxSelfClosingElement:KR,createJsxOpeningElement:Ou,updateJsxOpeningElement:ny,createJsxClosingElement:hp,updateJsxClosingElement:Am,createJsxFragment:K2,createJsxText:dB,updateJsxText:ZT,createJsxOpeningFragment:Cx,createJsxJsxClosingFragment:pB,updateJsxFragment:i_,createJsxAttribute:qf,updateJsxAttribute:Jh,createJsxAttributes:$S,updateJsxAttributes:Sb,createJsxSpreadAttribute:mp,updateJsxSpreadAttribute:r2,createJsxExpression:i1,updateJsxExpression:Of,createJsxNamespacedName:pE,updateJsxNamespacedName:Vd,createCaseClause:j,updateCaseClause:Z,createDefaultClause:Id,updateDefaultClause:fB,createHeritageClause:ev,updateHeritageClause:Ny,createCatchClause:vb,updateCatchClause:xD,createPropertyAssignment:IB,updatePropertyAssignment:Bb,createShorthandPropertyAssignment:gF,updateShorthandPropertyAssignment:x,createSpreadAssignment:te,updateSpreadAssignment:Re,createEnumMember:Le,updateEnumMember:ft,createSourceFile:dr,updateSourceFile:Ho,createRedirectedSourceFile:Ur,createBundle:Wg,updateBundle:cA,createSyntheticExpression:th,createSyntaxList:xn,createNotEmittedStatement:rn,createNotEmittedTypeElement:ec,createPartiallyEmittedExpression:Ci,updatePartiallyEmittedExpression:Po,createCommaListExpression:dc,updateCommaListExpression:Iu,createSyntheticReferenceExpression:Cl,updateSyntheticReferenceExpression:wl,cloneNode:tv,get createComma(){return o(28)},get createAssignment(){return o(64)},get createLogicalOr(){return o(57)},get createLogicalAnd(){return o(56)},get createBitwiseOr(){return o(52)},get createBitwiseXor(){return o(53)},get createBitwiseAnd(){return o(51)},get createStrictEquality(){return o(37)},get createStrictInequality(){return o(38)},get createEquality(){return o(35)},get createInequality(){return o(36)},get createLessThan(){return o(30)},get createLessThanEquals(){return o(33)},get createGreaterThan(){return o(32)},get createGreaterThanEquals(){return o(34)},get createLeftShift(){return o(48)},get createRightShift(){return o(49)},get createUnsignedRightShift(){return o(50)},get createAdd(){return o(40)},get createSubtract(){return o(41)},get createMultiply(){return o(42)},get createDivide(){return o(44)},get createModulo(){return o(45)},get createExponent(){return o(43)},get createPrefixPlus(){return l(40)},get createPrefixMinus(){return l(41)},get createPrefixIncrement(){return l(46)},get createPrefixDecrement(){return l(47)},get createBitwiseNot(){return l(55)},get createLogicalNot(){return l(54)},get createPostfixIncrement(){return A(46)},get createPostfixDecrement(){return A(47)},createImmediatelyInvokedFunctionExpression:Yu,createImmediatelyInvokedArrowFunction:qO,createVoidZero:hB,createExportDefault:mw,createExternalModuleExport:AF,createTypeCheck:$O,createIsNotTypeCheck:iY,createMethodCall:LT,createGlobalMethodCall:ff,createFunctionBindCall:GD,createFunctionCallCall:dF,createFunctionApplyCall:EL,createArraySliceCall:FD,createArrayConcatCall:fE,createObjectDefinePropertyCall:n2,createObjectGetOwnPropertyDescriptorCall:mB,createReflectGetCall:bd,createReflectSetCall:s1,createPropertyDescriptor:wb,createCallBinding:aY,createAssignmentTargetWrapper:tt,inlineExpressions:Jt,getInternalName:Xr,getLocalName:ui,getExportName:Is,getDeclarationName:Hs,getNamespaceMemberName:Rs,getExternalModuleOrNamespaceExportName:ja,restoreOuterExpressions:sY,restoreEnclosingLabel:oY,createUseStrictPrologue:Nd,copyPrologue:ho,copyStandardPrologue:ed,copyCustomPrologue:Og,ensureUseStrict:Nh,liftToBlock:o1,mergeLexicalEnvironment:q2,replaceModifiers:IE,replaceDecoratorsAndModifiers:zR,replacePropertyName:e3};return hO(E$a,z=>z(X)),X;function ae(z,ye){if(z===void 0||z===x2)z=[];else if(_ce(z)){if(ye===void 0||z.hasTrailingComma===ye)return z.transformFlags===void 0&&$2i(z),Zo.attachNodeArrayDebugInfo(z),z;let wr=z.slice();return wr.pos=z.pos,wr.end=z.end,wr.hasTrailingComma=ye,wr.transformFlags=z.transformFlags,Zo.attachNodeArrayDebugInfo(wr),wr}let Ve=z.length,Ct=Ve>=1&&Ve<=4?z.slice():z;return Ct.pos=-1,Ct.end=-1,Ct.hasTrailingComma=!!ye,Ct.transformFlags=0,$2i(Ct),Zo.attachNodeArrayDebugInfo(Ct),Ct}function ne(z){return t.createBaseNode(z)}function ce(z){let ye=ne(z);return ye.symbol=void 0,ye.localSymbol=void 0,ye}function fe(z,ye){return z!==ye&&(z.typeArguments=ye.typeArguments),Eo(z,ye)}function ue(z,ye=0){let Ve=typeof z=="number"?z+"":z;Zo.assert(Ve.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let Ct=ce(9);return Ct.text=Ve,Ct.numericLiteralFlags=ye,ye&384&&(Ct.transformFlags|=1024),Ct}function de(z){let ye=qt(10);return ye.text=typeof z=="string"?z:p$a(z)+"n",ye.transformFlags|=32,ye}function be(z,ye){let Ve=ce(11);return Ve.text=z,Ve.singleQuote=ye,Ve}function Se(z,ye,Ve){let Ct=be(z,ye);return Ct.hasExtendedUnicodeEscape=Ve,Ve&&(Ct.transformFlags|=1024),Ct}function De(z){let ye=be(Nqa(z),void 0);return ye.textSourceNode=z,ye}function k(z){let ye=qt(14);return ye.text=z,ye}function et(z,ye){switch(z){case 9:return ue(ye,0);case 10:return de(ye);case 11:return Se(ye,void 0);case 12:return dB(ye,!1);case 13:return dB(ye,!0);case 14:return k(ye);case 15:return $g(z,ye,void 0,0)}}function ct(z){let ye=t.createBaseIdentifierNode(80);return ye.escapedText=z,ye.jsDoc=void 0,ye.flowNode=void 0,ye.symbol=void 0,ye}function Me(z,ye,Ve,Ct){let wr=ct(hNe(z));return setIdentifierAutoGenerate(wr,{flags:ye,id:kbt,prefix:Ve,suffix:Ct}),kbt++,wr}function je(z,ye,Ve){ye===void 0&&z&&(ye=fvi(z)),ye===80&&(ye=void 0);let Ct=ct(hNe(z));return Ve&&(Ct.flags|=256),Ct.escapedText==="await"&&(Ct.transformFlags|=67108864),Ct.flags&256&&(Ct.transformFlags|=1024),Ct}function St(z,ye,Ve,Ct){let wr=1;ye&&(wr|=8);let ai=Me("",wr,Ve,Ct);return z&&z(ai),ai}function At(z){let ye=2;return z&&(ye|=8),Me("",ye,void 0,void 0)}function Yt(z,ye=0,Ve,Ct){return Zo.assert(!(ye&7),"Argument out of range: flags"),Zo.assert((ye&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Me(z,3|ye,Ve,Ct)}function Tr(z,ye=0,Ve,Ct){Zo.assert(!(ye&7),"Argument out of range: flags");let wr=z?gNr(z)?CNr(!1,Ve,z,Ct,yV):`generated@${getNodeId(z)}`:"";(Ve||Ct)&&(ye|=16);let ai=Me(wr,4|ye,Ve,Ct);return ai.original=z,ai}function Nr(z){let ye=t.createBasePrivateIdentifierNode(81);return ye.escapedText=z,ye.transformFlags|=16777216,ye}function er(z){return Obt(z,"#")||Zo.fail("First character of private identifier must be #: "+z),Nr(hNe(z))}function vt(z,ye,Ve,Ct){let wr=Nr(hNe(z));return setIdentifierAutoGenerate(wr,{flags:ye,id:kbt,prefix:Ve,suffix:Ct}),kbt++,wr}function xt(z,ye,Ve){z&&!Obt(z,"#")&&Zo.fail("First character of private identifier must be #: "+z);let Ct=8|(z?3:1);return vt(z??"",Ct,ye,Ve)}function Zr(z,ye,Ve){let Ct=gNr(z)?CNr(!0,ye,z,Ve,yV):`#generated@${getNodeId(z)}`,wr=vt(Ct,4|(ye||Ve?16:0),ye,Ve);return wr.original=z,wr}function qt(z){return t.createBaseTokenNode(z)}function Xt(z){Zo.assert(z>=0&&z<=165,"Invalid token"),Zo.assert(z<=15||z>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Zo.assert(z<=9||z>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Zo.assert(z!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let ye=qt(z),Ve=0;switch(z){case 134:Ve=384;break;case 160:Ve=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:Ve=1;break;case 108:Ve=134218752,ye.flowNode=void 0;break;case 126:Ve=1024;break;case 129:Ve=16777216;break;case 110:Ve=16384,ye.flowNode=void 0;break}return Ve&&(ye.transformFlags|=Ve),ye}function lr(){return Xt(108)}function cr(){return Xt(110)}function Ar(){return Xt(106)}function qr(){return Xt(112)}function _n(){return Xt(97)}function ke(z){return Xt(z)}function jt(z){let ye=[];return z&32&&ye.push(ke(95)),z&128&&ye.push(ke(138)),z&2048&&ye.push(ke(90)),z&4096&&ye.push(ke(87)),z&1&&ye.push(ke(125)),z&2&&ye.push(ke(123)),z&4&&ye.push(ke(124)),z&64&&ye.push(ke(128)),z&256&&ye.push(ke(126)),z&16&&ye.push(ke(164)),z&8&&ye.push(ke(148)),z&512&&ye.push(ke(129)),z&1024&&ye.push(ke(134)),z&8192&&ye.push(ke(103)),z&16384&&ye.push(ke(147)),ye.length?ye:void 0}function Fn(z,ye){let Ve=ne(166);return Ve.left=z,Ve.right=EI(ye),Ve.transformFlags|=$o(Ve.left)|CNe(Ve.right),Ve.flowNode=void 0,Ve}function Nn(z,ye,Ve){return z.left!==ye||z.right!==Ve?Eo(Fn(ye,Ve),z):z}function Hi(z){let ye=ne(167);return ye.expression=n().parenthesizeExpressionOfComputedPropertyName(z),ye.transformFlags|=$o(ye.expression)|1024|131072,ye}function po(z,ye){return z.expression!==ye?Eo(Hi(ye),z):z}function Vr(z,ye,Ve,Ct){let wr=ce(168);return wr.modifiers=IA(z),wr.name=EI(ye),wr.constraint=Ve,wr.default=Ct,wr.transformFlags=1,wr.expression=void 0,wr.jsDoc=void 0,wr}function xi(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.constraint!==Ct||z.default!==wr?Eo(Vr(ye,Ve,Ct,wr),z):z}function io(z,ye,Ve,Ct,wr,ai){let Lo=ce(169);return Lo.modifiers=IA(z),Lo.dotDotDotToken=ye,Lo.name=EI(Ve),Lo.questionToken=Ct,Lo.type=wr,Lo.initializer=wA(ai),kqa(Lo.name)?Lo.transformFlags=1:Lo.transformFlags=qA(Lo.modifiers)|$o(Lo.dotDotDotToken)|pO(Lo.name)|$o(Lo.questionToken)|$o(Lo.initializer)|(Lo.questionToken??Lo.type?1:0)|(Lo.dotDotDotToken??Lo.initializer?1024:0)|(fO(Lo.modifiers)&31?8192:0),Lo.jsDoc=void 0,Lo}function ga(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.dotDotDotToken!==Ve||z.name!==Ct||z.questionToken!==wr||z.type!==ai||z.initializer!==Lo?Eo(io(ye,Ve,Ct,wr,ai,Lo),z):z}function Ya(z){let ye=ne(170);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1|8192|33554432,ye}function Gc(z,ye){return z.expression!==ye?Eo(Ya(ye),z):z}function cl(z,ye,Ve,Ct){let wr=ce(171);return wr.modifiers=IA(z),wr.name=EI(ye),wr.type=Ct,wr.questionToken=Ve,wr.transformFlags=1,wr.initializer=void 0,wr.jsDoc=void 0,wr}function Sc(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==Ct||z.type!==wr?Hr(cl(ye,Ve,Ct,wr),z):z}function Hr(z,ye){return z!==ye&&(z.initializer=ye.initializer),Eo(z,ye)}function Wr(z,ye,Ve,Ct,wr){let ai=ce(172);ai.modifiers=IA(z),ai.name=EI(ye),ai.questionToken=Ve&&tSi(Ve)?Ve:void 0,ai.exclamationToken=Ve&&eSi(Ve)?Ve:void 0,ai.type=Ct,ai.initializer=wA(wr);let Lo=ai.flags&33554432||fO(ai.modifiers)&128;return ai.transformFlags=qA(ai.modifiers)|pO(ai.name)|$o(ai.initializer)|(Lo||ai.questionToken||ai.exclamationToken||ai.type?1:0)|(eBi(ai.name)||fO(ai.modifiers)&256&&ai.initializer?8192:0)|16777216,ai.jsDoc=void 0,ai}function Ft(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==(Ct!==void 0&&tSi(Ct)?Ct:void 0)||z.exclamationToken!==(Ct!==void 0&&eSi(Ct)?Ct:void 0)||z.type!==wr||z.initializer!==ai?Eo(Wr(ye,Ve,Ct,wr,ai),z):z}function zr(z,ye,Ve,Ct,wr,ai){let Lo=ce(173);return Lo.modifiers=IA(z),Lo.name=EI(ye),Lo.questionToken=Ve,Lo.typeParameters=IA(Ct),Lo.parameters=IA(wr),Lo.type=ai,Lo.transformFlags=1,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.typeArguments=void 0,Lo}function Rn(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.name!==Ve||z.questionToken!==Ct||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo?fe(zr(ye,Ve,Ct,wr,ai,Lo),z):z}function Or(z,ye,Ve,Ct,wr,ai,Lo,Hc){let ad=ce(174);if(ad.modifiers=IA(z),ad.asteriskToken=ye,ad.name=EI(Ve),ad.questionToken=Ct,ad.exclamationToken=void 0,ad.typeParameters=IA(wr),ad.parameters=ae(ai),ad.type=Lo,ad.body=Hc,!ad.body)ad.transformFlags=1;else{let dm=fO(ad.modifiers)&1024,rv=!!ad.asteriskToken,nv=dm&&rv;ad.transformFlags=qA(ad.modifiers)|$o(ad.asteriskToken)|pO(ad.name)|$o(ad.questionToken)|qA(ad.typeParameters)|qA(ad.parameters)|$o(ad.type)|$o(ad.body)&-67108865|(nv?128:dm?256:rv?2048:0)|(ad.questionToken||ad.typeParameters||ad.type?1:0)|1024}return ad.typeArguments=void 0,ad.jsDoc=void 0,ad.locals=void 0,ad.nextContainer=void 0,ad.flowNode=void 0,ad.endFlowNode=void 0,ad.returnFlowNode=void 0,ad}function Qi(z,ye,Ve,Ct,wr,ai,Lo,Hc,ad){return z.modifiers!==ye||z.asteriskToken!==Ve||z.name!==Ct||z.questionToken!==wr||z.typeParameters!==ai||z.parameters!==Lo||z.type!==Hc||z.body!==ad?ps(Or(ye,Ve,Ct,wr,ai,Lo,Hc,ad),z):z}function ps(z,ye){return z!==ye&&(z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function yo(z){let ye=ce(175);return ye.body=z,ye.transformFlags=$o(z)|16777216,ye.modifiers=void 0,ye.jsDoc=void 0,ye.locals=void 0,ye.nextContainer=void 0,ye.endFlowNode=void 0,ye.returnFlowNode=void 0,ye}function bo(z,ye){return z.body!==ye?Qa(yo(ye),z):z}function Qa(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function gc(z,ye,Ve){let Ct=ce(176);return Ct.modifiers=IA(z),Ct.parameters=ae(ye),Ct.body=Ve,Ct.body?Ct.transformFlags=qA(Ct.modifiers)|qA(Ct.parameters)|$o(Ct.body)&-67108865|1024:Ct.transformFlags=1,Ct.typeParameters=void 0,Ct.type=void 0,Ct.typeArguments=void 0,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.endFlowNode=void 0,Ct.returnFlowNode=void 0,Ct}function Cg(z,ye,Ve,Ct){return z.modifiers!==ye||z.parameters!==Ve||z.body!==Ct?Nc(gc(ye,Ve,Ct),z):z}function Nc(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function iA(z,ye,Ve,Ct,wr){let ai=ce(177);return ai.modifiers=IA(z),ai.name=EI(ye),ai.parameters=ae(Ve),ai.type=Ct,ai.body=wr,ai.body?ai.transformFlags=qA(ai.modifiers)|pO(ai.name)|qA(ai.parameters)|$o(ai.type)|$o(ai.body)&-67108865|(ai.type?1:0):ai.transformFlags=1,ai.typeArguments=void 0,ai.typeParameters=void 0,ai.jsDoc=void 0,ai.locals=void 0,ai.nextContainer=void 0,ai.flowNode=void 0,ai.endFlowNode=void 0,ai.returnFlowNode=void 0,ai}function ma(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.parameters!==Ct||z.type!==wr||z.body!==ai?vu(iA(ye,Ve,Ct,wr,ai),z):z}function vu(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters),fe(z,ye)}function li(z,ye,Ve,Ct){let wr=ce(178);return wr.modifiers=IA(z),wr.name=EI(ye),wr.parameters=ae(Ve),wr.body=Ct,wr.body?wr.transformFlags=qA(wr.modifiers)|pO(wr.name)|qA(wr.parameters)|$o(wr.body)&-67108865|(wr.type?1:0):wr.transformFlags=1,wr.typeArguments=void 0,wr.typeParameters=void 0,wr.type=void 0,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr.endFlowNode=void 0,wr.returnFlowNode=void 0,wr}function Ei(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.parameters!==Ct||z.body!==wr?Ps(li(ye,Ve,Ct,wr),z):z}function Ps(z,ye){return z!==ye&&(z.typeParameters=ye.typeParameters,z.type=ye.type),fe(z,ye)}function Xa(z,ye,Ve){let Ct=ce(179);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function ac(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?fe(Xa(ye,Ve,Ct),z):z}function Yl(z,ye,Ve){let Ct=ce(180);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Wc(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?fe(Yl(ye,Ve,Ct),z):z}function Sg(z,ye,Ve){let Ct=ce(181);return Ct.modifiers=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Ul(z,ye,Ve,Ct){return z.parameters!==Ve||z.type!==Ct||z.modifiers!==ye?fe(Sg(ye,Ve,Ct),z):z}function Xu(z,ye){let Ve=ne(204);return Ve.type=z,Ve.literal=ye,Ve.transformFlags=1,Ve}function Da(z,ye,Ve){return z.type!==ye||z.literal!==Ve?Eo(Xu(ye,Ve),z):z}function pu(z){return Xt(z)}function _g(z,ye,Ve){let Ct=ne(182);return Ct.assertsModifier=z,Ct.parameterName=EI(ye),Ct.type=Ve,Ct.transformFlags=1,Ct}function mI(z,ye,Ve,Ct){return z.assertsModifier!==ye||z.parameterName!==Ve||z.type!==Ct?Eo(_g(ye,Ve,Ct),z):z}function Qh(z,ye){let Ve=ne(183);return Ve.typeName=EI(z),Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ae(ye)),Ve.transformFlags=1,Ve}function Ri(z,ye,Ve){return z.typeName!==ye||z.typeArguments!==Ve?Eo(Qh(ye,Ve),z):z}function Do(z,ye,Ve){let Ct=ce(184);return Ct.typeParameters=IA(z),Ct.parameters=IA(ye),Ct.type=Ve,Ct.transformFlags=1,Ct.modifiers=void 0,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.typeArguments=void 0,Ct}function Wt(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?Hu(Do(ye,Ve,Ct),z):z}function Hu(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),fe(z,ye)}function Ru(...z){return z.length===4?Vs(...z):z.length===3?Ju(...z):Zo.fail("Incorrect number of arguments specified.")}function Vs(z,ye,Ve,Ct){let wr=ce(185);return wr.modifiers=IA(z),wr.typeParameters=IA(ye),wr.parameters=IA(Ve),wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.typeArguments=void 0,wr}function Ju(z,ye,Ve){return Vs(void 0,z,ye,Ve)}function Yn(...z){return z.length===5?Ko(...z):z.length===4?Eg(...z):Zo.fail("Incorrect number of arguments specified.")}function Ko(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.typeParameters!==Ve||z.parameters!==Ct||z.type!==wr?fe(Ru(ye,Ve,Ct,wr),z):z}function Eg(z,ye,Ve,Ct){return Ko(z,z.modifiers,ye,Ve,Ct)}function OA(z,ye){let Ve=ne(186);return Ve.exprName=z,Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ye),Ve.transformFlags=1,Ve}function GA(z,ye,Ve){return z.exprName!==ye||z.typeArguments!==Ve?Eo(OA(ye,Ve),z):z}function $i(z){let ye=ce(187);return ye.members=ae(z),ye.transformFlags=1,ye}function dl(z,ye){return z.members!==ye?Eo($i(ye),z):z}function Uf(z){let ye=ne(188);return ye.elementType=n().parenthesizeNonArrayTypeOfPostfixType(z),ye.transformFlags=1,ye}function Kd(z,ye){return z.elementType!==ye?Eo(Uf(ye),z):z}function oA(z){let ye=ne(189);return ye.elements=ae(n().parenthesizeElementTypesOfTupleType(z)),ye.transformFlags=1,ye}function oo(z,ye){return z.elements!==ye?Eo(oA(ye),z):z}function Ki(z,ye,Ve,Ct){let wr=ce(202);return wr.dotDotDotToken=z,wr.name=ye,wr.questionToken=Ve,wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr}function cc(z,ye,Ve,Ct,wr){return z.dotDotDotToken!==ye||z.name!==Ve||z.questionToken!==Ct||z.type!==wr?Eo(Ki(ye,Ve,Ct,wr),z):z}function Xs(z){let ye=ne(190);return ye.type=n().parenthesizeTypeOfOptionalType(z),ye.transformFlags=1,ye}function ws(z,ye){return z.type!==ye?Eo(Xs(ye),z):z}function Gs(z){let ye=ne(191);return ye.type=z,ye.transformFlags=1,ye}function Ma(z,ye){return z.type!==ye?Eo(Gs(ye),z):z}function Dc(z,ye,Ve){let Ct=ne(z);return Ct.types=X.createNodeArray(Ve(ye)),Ct.transformFlags=1,Ct}function As(z,ye,Ve){return z.types!==ye?Eo(Dc(z.kind,ye,Ve),z):z}function Tf(z){return Dc(192,z,n().parenthesizeConstituentTypesOfUnionType)}function cm(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfUnionType)}function Fl(z){return Dc(193,z,n().parenthesizeConstituentTypesOfIntersectionType)}function rc(z,ye){return As(z,ye,n().parenthesizeConstituentTypesOfIntersectionType)}function sd(z,ye,Ve,Ct){let wr=ne(194);return wr.checkType=n().parenthesizeCheckTypeOfConditionalType(z),wr.extendsType=n().parenthesizeExtendsTypeOfConditionalType(ye),wr.trueType=Ve,wr.falseType=Ct,wr.transformFlags=1,wr.locals=void 0,wr.nextContainer=void 0,wr}function Om(z,ye,Ve,Ct,wr){return z.checkType!==ye||z.extendsType!==Ve||z.trueType!==Ct||z.falseType!==wr?Eo(sd(ye,Ve,Ct,wr),z):z}function il(z){let ye=ne(195);return ye.typeParameter=z,ye.transformFlags=1,ye}function FA(z,ye){return z.typeParameter!==ye?Eo(il(ye),z):z}function ZA(z,ye){let Ve=ne(203);return Ve.head=z,Ve.templateSpans=ae(ye),Ve.transformFlags=1,Ve}function El(z,ye,Ve){return z.head!==ye||z.templateSpans!==Ve?Eo(ZA(ye,Ve),z):z}function yg(z,ye,Ve,Ct,wr=!1){let ai=ne(205);return ai.argument=z,ai.attributes=ye,ai.assertions&&ai.assertions.assertClause&&ai.attributes&&(ai.assertions.assertClause=ai.attributes),ai.qualifier=Ve,ai.typeArguments=Ct&&n().parenthesizeTypeArguments(Ct),ai.isTypeOf=wr,ai.transformFlags=1,ai}function Mp(z,ye,Ve,Ct,wr,ai=z.isTypeOf){return z.argument!==ye||z.attributes!==Ve||z.qualifier!==Ct||z.typeArguments!==wr||z.isTypeOf!==ai?Eo(yg(ye,Ve,Ct,wr,ai),z):z}function MA(z){let ye=ne(196);return ye.type=z,ye.transformFlags=1,ye}function Er(z,ye){return z.type!==ye?Eo(MA(ye),z):z}function Zt(){let z=ne(197);return z.transformFlags=1,z}function yn(z,ye){let Ve=ne(198);return Ve.operator=z,Ve.type=z===148?n().parenthesizeOperandOfReadonlyTypeOperator(ye):n().parenthesizeOperandOfTypeOperator(ye),Ve.transformFlags=1,Ve}function ls(z,ye){return z.type!==ye?Eo(yn(z.operator,ye),z):z}function oa(z,ye){let Ve=ne(199);return Ve.objectType=n().parenthesizeNonArrayTypeOfPostfixType(z),Ve.indexType=ye,Ve.transformFlags=1,Ve}function Fs(z,ye,Ve){return z.objectType!==ye||z.indexType!==Ve?Eo(oa(ye,Ve),z):z}function Wa(z,ye,Ve,Ct,wr,ai){let Lo=ce(200);return Lo.readonlyToken=z,Lo.typeParameter=ye,Lo.nameType=Ve,Lo.questionToken=Ct,Lo.type=wr,Lo.members=ai&&ae(ai),Lo.transformFlags=1,Lo.locals=void 0,Lo.nextContainer=void 0,Lo}function Ca(z,ye,Ve,Ct,wr,ai,Lo){return z.readonlyToken!==ye||z.typeParameter!==Ve||z.nameType!==Ct||z.questionToken!==wr||z.type!==ai||z.members!==Lo?Eo(Wa(ye,Ve,Ct,wr,ai,Lo),z):z}function ld(z){let ye=ne(201);return ye.literal=z,ye.transformFlags=1,ye}function Rp(z,ye){return z.literal!==ye?Eo(ld(ye),z):z}function np(z){let ye=ne(206);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements)|1024|524288,ye.transformFlags&32768&&(ye.transformFlags|=65664),ye}function HA(z,ye){return z.elements!==ye?Eo(np(ye),z):z}function df(z){let ye=ne(207);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements)|1024|524288,ye}function Zs(z,ye){return z.elements!==ye?Eo(df(ye),z):z}function so(z,ye,Ve,Ct){let wr=ce(208);return wr.dotDotDotToken=z,wr.propertyName=EI(ye),wr.name=EI(Ve),wr.initializer=wA(Ct),wr.transformFlags|=$o(wr.dotDotDotToken)|pO(wr.propertyName)|pO(wr.name)|$o(wr.initializer)|(wr.dotDotDotToken?32768:0)|1024,wr.flowNode=void 0,wr}function Ea(z,ye,Ve,Ct,wr){return z.propertyName!==Ve||z.dotDotDotToken!==ye||z.name!==Ct||z.initializer!==wr?Eo(so(ye,Ve,Ct,wr),z):z}function Ml(z,ye){let Ve=ne(209),Ct=z&&Vme(z),wr=ae(z,Ct&&Aec(Ct)?!0:void 0);return Ve.elements=n().parenthesizeExpressionsOfCommaDelimitedList(wr),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.elements),Ve}function Dr(z,ye){return z.elements!==ye?Eo(Ml(ye,z.multiLine),z):z}function Wn(z,ye){let Ve=ce(210);return Ve.properties=ae(z),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.properties),Ve.jsDoc=void 0,Ve}function di(z,ye){return z.properties!==ye?Eo(Wn(ye,z.multiLine),z):z}function aa(z,ye,Ve){let Ct=ce(211);return Ct.expression=z,Ct.questionDotToken=ye,Ct.name=Ve,Ct.transformFlags=$o(Ct.expression)|$o(Ct.questionDotToken)|($C(Ct.name)?CNe(Ct.name):$o(Ct.name)|536870912),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function Bo(z,ye){let Ve=aa(n().parenthesizeLeftSideOfAccess(z,!1),void 0,EI(ye));return $Rr(z)&&(Ve.transformFlags|=384),Ve}function us(z,ye,Ve){return Eza(z)?LA(z,ye,z.questionDotToken,Aj(Ve,$C)):z.expression!==ye||z.name!==Ve?Eo(Bo(ye,Ve),z):z}function Ql(z,ye,Ve){let Ct=aa(n().parenthesizeLeftSideOfAccess(z,!0),ye,EI(Ve));return Ct.flags|=64,Ct.transformFlags|=32,Ct}function LA(z,ye,Ve,Ct){return Zo.assert(!!(z.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),z.expression!==ye||z.questionDotToken!==Ve||z.name!==Ct?Eo(Ql(ye,Ve,Ct),z):z}function pf(z,ye,Ve){let Ct=ce(212);return Ct.expression=z,Ct.questionDotToken=ye,Ct.argumentExpression=Ve,Ct.transformFlags|=$o(Ct.expression)|$o(Ct.questionDotToken)|$o(Ct.argumentExpression),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function ef(z,ye){let Ve=pf(n().parenthesizeLeftSideOfAccess(z,!1),void 0,zd(ye));return $Rr(z)&&(Ve.transformFlags|=384),Ve}function ip(z,ye,Ve){return Sza(z)?j1(z,ye,z.questionDotToken,Ve):z.expression!==ye||z.argumentExpression!==Ve?Eo(ef(ye,Ve),z):z}function _d(z,ye,Ve){let Ct=pf(n().parenthesizeLeftSideOfAccess(z,!0),ye,zd(Ve));return Ct.flags|=64,Ct.transformFlags|=32,Ct}function j1(z,ye,Ve,Ct){return Zo.assert(!!(z.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),z.expression!==ye||z.questionDotToken!==Ve||z.argumentExpression!==Ct?Eo(_d(ye,Ve,Ct),z):z}function pw(z,ye,Ve,Ct){let wr=ce(213);return wr.expression=z,wr.questionDotToken=ye,wr.typeArguments=Ve,wr.arguments=Ct,wr.transformFlags|=$o(wr.expression)|$o(wr.questionDotToken)|qA(wr.typeArguments)|qA(wr.arguments),wr.typeArguments&&(wr.transformFlags|=1),X2i(wr.expression)&&(wr.transformFlags|=16384),wr}function YA(z,ye,Ve){let Ct=pw(n().parenthesizeLeftSideOfAccess(z,!1),void 0,IA(ye),n().parenthesizeExpressionsOfCommaDelimitedList(ae(Ve)));return F$a(Ct.expression)&&(Ct.transformFlags|=8388608),Ct}function Ac(z,ye,Ve,Ct){return P2i(z)?HS(z,ye,z.questionDotToken,Ve,Ct):z.expression!==ye||z.typeArguments!==Ve||z.arguments!==Ct?Eo(YA(ye,Ve,Ct),z):z}function Nm(z,ye,Ve,Ct){let wr=pw(n().parenthesizeLeftSideOfAccess(z,!0),ye,IA(Ve),n().parenthesizeExpressionsOfCommaDelimitedList(ae(Ct)));return wr.flags|=64,wr.transformFlags|=32,wr}function HS(z,ye,Ve,Ct,wr){return Zo.assert(!!(z.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),z.expression!==ye||z.questionDotToken!==Ve||z.typeArguments!==Ct||z.arguments!==wr?Eo(Nm(ye,Ve,Ct,wr),z):z}function jd(z,ye,Ve){let Ct=ce(214);return Ct.expression=n().parenthesizeExpressionOfNew(z),Ct.typeArguments=IA(ye),Ct.arguments=Ve?n().parenthesizeExpressionsOfCommaDelimitedList(Ve):void 0,Ct.transformFlags|=$o(Ct.expression)|qA(Ct.typeArguments)|qA(Ct.arguments)|32,Ct.typeArguments&&(Ct.transformFlags|=1),Ct}function dh(z,ye,Ve,Ct){return z.expression!==ye||z.typeArguments!==Ve||z.arguments!==Ct?Eo(jd(ye,Ve,Ct),z):z}function Hp(z,ye,Ve){let Ct=ne(215);return Ct.tag=n().parenthesizeLeftSideOfAccess(z,!1),Ct.typeArguments=IA(ye),Ct.template=Ve,Ct.transformFlags|=$o(Ct.tag)|qA(Ct.typeArguments)|$o(Ct.template)|1024,Ct.typeArguments&&(Ct.transformFlags|=1),Dqa(Ct.template)&&(Ct.transformFlags|=128),Ct}function uC(z,ye,Ve,Ct){return z.tag!==ye||z.typeArguments!==Ve||z.template!==Ct?Eo(Hp(ye,Ve,Ct),z):z}function nE(z,ye){let Ve=ne(216);return Ve.expression=n().parenthesizeOperandOfPrefixUnary(ye),Ve.type=z,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function J_(z,ye,Ve){return z.type!==ye||z.expression!==Ve?Eo(nE(ye,Ve),z):z}function q0(z){let ye=ne(217);return ye.expression=z,ye.transformFlags=$o(ye.expression),ye.jsDoc=void 0,ye}function XE(z,ye){return z.expression!==ye?Eo(q0(ye),z):z}function TC(z,ye,Ve,Ct,wr,ai,Lo){let Hc=ce(218);Hc.modifiers=IA(z),Hc.asteriskToken=ye,Hc.name=EI(Ve),Hc.typeParameters=IA(Ct),Hc.parameters=ae(wr),Hc.type=ai,Hc.body=Lo;let ad=fO(Hc.modifiers)&1024,dm=!!Hc.asteriskToken,rv=ad&&dm;return Hc.transformFlags=qA(Hc.modifiers)|$o(Hc.asteriskToken)|pO(Hc.name)|qA(Hc.typeParameters)|qA(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(rv?128:ad?256:dm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304,Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.flowNode=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function t_(z,ye,Ve,Ct,wr,ai,Lo,Hc){return z.name!==Ct||z.modifiers!==ye||z.asteriskToken!==Ve||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?fe(TC(ye,Ve,Ct,wr,ai,Lo,Hc),z):z}function cp(z,ye,Ve,Ct,wr,ai){let Lo=ce(219);Lo.modifiers=IA(z),Lo.typeParameters=IA(ye),Lo.parameters=ae(Ve),Lo.type=Ct,Lo.equalsGreaterThanToken=wr??Xt(39),Lo.body=n().parenthesizeConciseBodyOfArrowFunction(ai);let Hc=fO(Lo.modifiers)&1024;return Lo.transformFlags=qA(Lo.modifiers)|qA(Lo.typeParameters)|qA(Lo.parameters)|$o(Lo.type)|$o(Lo.equalsGreaterThanToken)|$o(Lo.body)&-67108865|(Lo.typeParameters||Lo.type?1:0)|(Hc?16640:0)|1024,Lo.typeArguments=void 0,Lo.jsDoc=void 0,Lo.locals=void 0,Lo.nextContainer=void 0,Lo.flowNode=void 0,Lo.endFlowNode=void 0,Lo.returnFlowNode=void 0,Lo}function Mm(z,ye,Ve,Ct,wr,ai,Lo){return z.modifiers!==ye||z.typeParameters!==Ve||z.parameters!==Ct||z.type!==wr||z.equalsGreaterThanToken!==ai||z.body!==Lo?fe(cp(ye,Ve,Ct,wr,ai,Lo),z):z}function fb(z){let ye=ne(220);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function pe(z,ye){return z.expression!==ye?Eo(fb(ye),z):z}function lm(z){let ye=ne(221);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function Kf(z,ye){return z.expression!==ye?Eo(lm(ye),z):z}function CI(z){let ye=ne(222);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression),ye}function _I(z,ye){return z.expression!==ye?Eo(CI(ye),z):z}function H2(z){let ye=ne(223);return ye.expression=n().parenthesizeOperandOfPrefixUnary(z),ye.transformFlags|=$o(ye.expression)|256|128|2097152,ye}function iE(z,ye){return z.expression!==ye?Eo(H2(ye),z):z}function se(z,ye){let Ve=ne(224);return Ve.operator=z,Ve.operand=n().parenthesizeOperandOfPrefixUnary(ye),Ve.transformFlags|=$o(Ve.operand),(z===46||z===47)&&$C(Ve.operand)&&!SNe(Ve.operand)&&!sSi(Ve.operand)&&(Ve.transformFlags|=268435456),Ve}function O(z,ye){return z.operand!==ye?Eo(se(z.operator,ye),z):z}function K(z,ye){let Ve=ne(225);return Ve.operator=ye,Ve.operand=n().parenthesizeOperandOfPostfixUnary(z),Ve.transformFlags|=$o(Ve.operand),$C(Ve.operand)&&!SNe(Ve.operand)&&!sSi(Ve.operand)&&(Ve.transformFlags|=268435456),Ve}function we(z,ye){return z.operand!==ye?Eo(K(ye,z.operator),z):z}function gt(z,ye,Ve){let Ct=ce(226),wr=qR(ye),ai=wr.kind;return Ct.left=n().parenthesizeLeftSideOfBinary(ai,z),Ct.operatorToken=wr,Ct.right=n().parenthesizeRightSideOfBinary(ai,Ct.left,Ve),Ct.transformFlags|=$o(Ct.left)|$o(Ct.operatorToken)|$o(Ct.right),ai===61?Ct.transformFlags|=32:ai===64?aBi(Ct.left)?Ct.transformFlags|=5248|sr(Ct.left):aec(Ct.left)&&(Ct.transformFlags|=5120|sr(Ct.left)):ai===43||ai===68?Ct.transformFlags|=512:Mqa(ai)&&(Ct.transformFlags|=16),ai===103&&Yme(Ct.left)&&(Ct.transformFlags|=536870912),Ct.jsDoc=void 0,Ct}function sr(z){return vBi(z)?65536:0}function Yr(z,ye,Ve,Ct){return z.left!==ye||z.operatorToken!==Ve||z.right!==Ct?Eo(gt(ye,Ve,Ct),z):z}function Lr(z,ye,Ve,Ct,wr){let ai=ne(227);return ai.condition=n().parenthesizeConditionOfConditionalExpression(z),ai.questionToken=ye??Xt(58),ai.whenTrue=n().parenthesizeBranchOfConditionalExpression(Ve),ai.colonToken=Ct??Xt(59),ai.whenFalse=n().parenthesizeBranchOfConditionalExpression(wr),ai.transformFlags|=$o(ai.condition)|$o(ai.questionToken)|$o(ai.whenTrue)|$o(ai.colonToken)|$o(ai.whenFalse),ai}function fi(z,ye,Ve,Ct,wr,ai){return z.condition!==ye||z.questionToken!==Ve||z.whenTrue!==Ct||z.colonToken!==wr||z.whenFalse!==ai?Eo(Lr(ye,Ve,Ct,wr,ai),z):z}function $n(z,ye){let Ve=ne(228);return Ve.head=z,Ve.templateSpans=ae(ye),Ve.transformFlags|=$o(Ve.head)|qA(Ve.templateSpans)|1024,Ve}function ra(z,ye,Ve){return z.head!==ye||z.templateSpans!==Ve?Eo($n(ye,Ve),z):z}function kc(z,ye,Ve,Ct=0){Zo.assert(!(Ct&-7177),"Unsupported template flags.");let wr;if(Ve!==void 0&&Ve!==ye&&(wr=S$a(z,Ve),typeof wr=="object"))return Zo.fail("Invalid raw text");if(ye===void 0){if(wr===void 0)return Zo.fail("Arguments 'text' and 'rawText' may not both be undefined.");ye=wr}else wr!==void 0&&Zo.assert(ye===wr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return ye}function Nl(z){let ye=1024;return z&&(ye|=128),ye}function ca(z,ye,Ve,Ct){let wr=qt(z);return wr.text=ye,wr.rawText=Ve,wr.templateFlags=Ct&7176,wr.transformFlags=Nl(wr.templateFlags),wr}function Bl(z,ye,Ve,Ct){let wr=ce(z);return wr.text=ye,wr.rawText=Ve,wr.templateFlags=Ct&7176,wr.transformFlags=Nl(wr.templateFlags),wr}function $g(z,ye,Ve,Ct){return z===15?Bl(z,ye,Ve,Ct):ca(z,ye,Ve,Ct)}function SA(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(16,z,ye,Ve)}function lI(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(17,z,ye,Ve)}function lp(z,ye,Ve){return z=kc(16,z,ye,Ve),$g(18,z,ye,Ve)}function Ib(z,ye,Ve){return z=kc(16,z,ye,Ve),Bl(15,z,ye,Ve)}function Na(z,ye){Zo.assert(!z||!!ye,"A `YieldExpression` with an asteriskToken must have an expression.");let Ve=ne(229);return Ve.expression=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.asteriskToken=z,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.asteriskToken)|1024|128|1048576,Ve}function wd(z,ye,Ve){return z.expression!==Ve||z.asteriskToken!==ye?Eo(Na(ye,Ve),z):z}function z1(z){let ye=ne(230);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|1024|32768,ye}function T_(z,ye){return z.expression!==ye?Eo(z1(ye),z):z}function RC(z,ye,Ve,Ct,wr){let ai=ce(231);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),ai.transformFlags|=qA(ai.modifiers)|pO(ai.name)|qA(ai.typeParameters)|qA(ai.heritageClauses)|qA(ai.members)|(ai.typeParameters?1:0)|1024,ai.jsDoc=void 0,ai}function Hm(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(RC(ye,Ve,Ct,wr,ai),z):z}function YS(){return ne(232)}function Fg(z,ye){let Ve=ne(233);return Ve.expression=n().parenthesizeLeftSideOfAccess(z,!1),Ve.typeArguments=ye&&n().parenthesizeTypeArguments(ye),Ve.transformFlags|=$o(Ve.expression)|qA(Ve.typeArguments)|1024,Ve}function hb(z,ye,Ve){return z.expression!==ye||z.typeArguments!==Ve?Eo(Fg(ye,Ve),z):z}function gC(z,ye){let Ve=ne(234);return Ve.expression=z,Ve.type=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function NC(z,ye,Ve){return z.expression!==ye||z.type!==Ve?Eo(gC(ye,Ve),z):z}function Y2(z){let ye=ne(235);return ye.expression=n().parenthesizeLeftSideOfAccess(z,!1),ye.transformFlags|=$o(ye.expression)|1,ye}function U_(z,ye){return vza(z)?ph(z,ye):z.expression!==ye?Eo(Y2(ye),z):z}function DC(z,ye){let Ve=ne(238);return Ve.expression=z,Ve.type=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.type)|1,Ve}function kC(z,ye,Ve){return z.expression!==ye||z.type!==Ve?Eo(DC(ye,Ve),z):z}function qI(z){let ye=ne(235);return ye.flags|=64,ye.expression=n().parenthesizeLeftSideOfAccess(z,!0),ye.transformFlags|=$o(ye.expression)|1,ye}function ph(z,ye){return Zo.assert(!!(z.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),z.expression!==ye?Eo(qI(ye),z):z}function vA(z,ye){let Ve=ne(236);switch(Ve.keywordToken=z,Ve.name=ye,Ve.transformFlags|=$o(Ve.name),z){case 105:Ve.transformFlags|=1024;break;case 102:Ve.transformFlags|=32;break;default:return Zo.assertNever(z)}return Ve.flowNode=void 0,Ve}function Td(z,ye){return z.name!==ye?Eo(vA(z.keywordToken,ye),z):z}function Mc(z,ye){let Ve=ne(239);return Ve.expression=z,Ve.literal=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.literal)|1024,Ve}function Pf(z,ye,Ve){return z.expression!==ye||z.literal!==Ve?Eo(Mc(ye,Ve),z):z}function sE(){let z=ne(240);return z.transformFlags|=1024,z}function eA(z,ye){let Ve=ne(241);return Ve.statements=ae(z),Ve.multiLine=ye,Ve.transformFlags|=qA(Ve.statements),Ve.jsDoc=void 0,Ve.locals=void 0,Ve.nextContainer=void 0,Ve}function QS(z,ye){return z.statements!==ye?Eo(eA(ye,z.multiLine),z):z}function XS(z,ye){let Ve=ne(243);return Ve.modifiers=IA(z),Ve.declarationList=Tee(ye)?Th(ye):ye,Ve.transformFlags|=qA(Ve.modifiers)|$o(Ve.declarationList),fO(Ve.modifiers)&128&&(Ve.transformFlags=1),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function um(z,ye,Ve){return z.modifiers!==ye||z.declarationList!==Ve?Eo(XS(ye,Ve),z):z}function gm(){let z=ne(242);return z.jsDoc=void 0,z}function cs(z){let ye=ne(244);return ye.expression=n().parenthesizeExpressionOfExpressionStatement(z),ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function na(z,ye){return z.expression!==ye?Eo(cs(ye),z):z}function ko(z,ye,Ve){let Ct=ne(245);return Ct.expression=z,Ct.thenStatement=sy(ye),Ct.elseStatement=sy(Ve),Ct.transformFlags|=$o(Ct.expression)|$o(Ct.thenStatement)|$o(Ct.elseStatement),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function ki(z,ye,Ve,Ct){return z.expression!==ye||z.thenStatement!==Ve||z.elseStatement!==Ct?Eo(ko(ye,Ve,Ct),z):z}function Kl(z,ye){let Ve=ne(246);return Ve.statement=sy(z),Ve.expression=ye,Ve.transformFlags|=$o(Ve.statement)|$o(Ve.expression),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function fd(z,ye,Ve){return z.statement!==ye||z.expression!==Ve?Eo(Kl(ye,Ve),z):z}function jf(z,ye){let Ve=ne(247);return Ve.expression=z,Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.expression)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Ld(z,ye,Ve){return z.expression!==ye||z.statement!==Ve?Eo(jf(ye,Ve),z):z}function AC(z,ye,Ve,Ct){let wr=ne(248);return wr.initializer=z,wr.condition=ye,wr.incrementor=Ve,wr.statement=sy(Ct),wr.transformFlags|=$o(wr.initializer)|$o(wr.condition)|$o(wr.incrementor)|$o(wr.statement),wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr}function JE(z,ye,Ve,Ct,wr){return z.initializer!==ye||z.condition!==Ve||z.incrementor!==Ct||z.statement!==wr?Eo(AC(ye,Ve,Ct,wr),z):z}function Ym(z,ye,Ve){let Ct=ne(249);return Ct.initializer=z,Ct.expression=ye,Ct.statement=sy(Ve),Ct.transformFlags|=$o(Ct.initializer)|$o(Ct.expression)|$o(Ct.statement),Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct.flowNode=void 0,Ct}function vy(z,ye,Ve,Ct){return z.initializer!==ye||z.expression!==Ve||z.statement!==Ct?Eo(Ym(ye,Ve,Ct),z):z}function K_(z,ye,Ve,Ct){let wr=ne(250);return wr.awaitModifier=z,wr.initializer=ye,wr.expression=n().parenthesizeExpressionForDisallowedComma(Ve),wr.statement=sy(Ct),wr.transformFlags|=$o(wr.awaitModifier)|$o(wr.initializer)|$o(wr.expression)|$o(wr.statement)|1024,z&&(wr.transformFlags|=128),wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr.flowNode=void 0,wr}function od(z,ye,Ve,Ct,wr){return z.awaitModifier!==ye||z.initializer!==Ve||z.expression!==Ct||z.statement!==wr?Eo(K_(ye,Ve,Ct,wr),z):z}function UE(z){let ye=ne(251);return ye.label=EI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function KE(z,ye){return z.label!==ye?Eo(UE(ye),z):z}function Yp(z){let ye=ne(252);return ye.label=EI(z),ye.transformFlags|=$o(ye.label)|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function JS(z,ye){return z.label!==ye?Eo(Yp(ye),z):z}function By(z){let ye=ne(253);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|128|4194304,ye.jsDoc=void 0,ye.flowNode=void 0,ye}function $0(z,ye){return z.expression!==ye?Eo(By(ye),z):z}function fw(z,ye){let Ve=ne(254);return Ve.expression=z,Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.expression)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Q2(z,ye,Ve){return z.expression!==ye||z.statement!==Ve?Eo(fw(ye,Ve),z):z}function xc(z,ye){let Ve=ne(255);return Ve.expression=n().parenthesizeExpressionForDisallowedComma(z),Ve.caseBlock=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.caseBlock),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve.possiblyExhaustive=!1,Ve}function ut(z,ye,Ve){return z.expression!==ye||z.caseBlock!==Ve?Eo(xc(ye,Ve),z):z}function ar(z,ye){let Ve=ne(256);return Ve.label=EI(z),Ve.statement=sy(ye),Ve.transformFlags|=$o(Ve.label)|$o(Ve.statement),Ve.jsDoc=void 0,Ve.flowNode=void 0,Ve}function Jr(z,ye,Ve){return z.label!==ye||z.statement!==Ve?Eo(ar(ye,Ve),z):z}function Gn(z){let ye=ne(257);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.jsDoc=void 0,ye.flowNode=void 0,ye}function Ts(z,ye){return z.expression!==ye?Eo(Gn(ye),z):z}function Qo(z,ye,Ve){let Ct=ne(258);return Ct.tryBlock=z,Ct.catchClause=ye,Ct.finallyBlock=Ve,Ct.transformFlags|=$o(Ct.tryBlock)|$o(Ct.catchClause)|$o(Ct.finallyBlock),Ct.jsDoc=void 0,Ct.flowNode=void 0,Ct}function vg(z,ye,Ve,Ct){return z.tryBlock!==ye||z.catchClause!==Ve||z.finallyBlock!==Ct?Eo(Qo(ye,Ve,Ct),z):z}function Ng(){let z=ne(259);return z.jsDoc=void 0,z.flowNode=void 0,z}function Rf(z,ye,Ve,Ct){let wr=ce(260);return wr.name=EI(z),wr.exclamationToken=ye,wr.type=Ve,wr.initializer=wA(Ct),wr.transformFlags|=pO(wr.name)|$o(wr.initializer)|(wr.exclamationToken??wr.type?1:0),wr.jsDoc=void 0,wr}function uI(z,ye,Ve,Ct,wr){return z.name!==ye||z.type!==Ct||z.exclamationToken!==Ve||z.initializer!==wr?Eo(Rf(ye,Ve,Ct,wr),z):z}function Th(z,ye=0){let Ve=ne(261);return Ve.flags|=ye&7,Ve.declarations=ae(z),Ve.transformFlags|=qA(Ve.declarations)|4194304,ye&7&&(Ve.transformFlags|=263168),ye&4&&(Ve.transformFlags|=4),Ve}function oE(z,ye){return z.declarations!==ye?Eo(Th(ye,z.flags),z):z}function TT(z,ye,Ve,Ct,wr,ai,Lo){let Hc=ce(262);if(Hc.modifiers=IA(z),Hc.asteriskToken=ye,Hc.name=EI(Ve),Hc.typeParameters=IA(Ct),Hc.parameters=ae(wr),Hc.type=ai,Hc.body=Lo,!Hc.body||fO(Hc.modifiers)&128)Hc.transformFlags=1;else{let ad=fO(Hc.modifiers)&1024,dm=!!Hc.asteriskToken,rv=ad&&dm;Hc.transformFlags=qA(Hc.modifiers)|$o(Hc.asteriskToken)|pO(Hc.name)|qA(Hc.typeParameters)|qA(Hc.parameters)|$o(Hc.type)|$o(Hc.body)&-67108865|(rv?128:ad?256:dm?2048:0)|(Hc.typeParameters||Hc.type?1:0)|4194304}return Hc.typeArguments=void 0,Hc.jsDoc=void 0,Hc.locals=void 0,Hc.nextContainer=void 0,Hc.endFlowNode=void 0,Hc.returnFlowNode=void 0,Hc}function sB(z,ye,Ve,Ct,wr,ai,Lo,Hc){return z.modifiers!==ye||z.asteriskToken!==Ve||z.name!==Ct||z.typeParameters!==wr||z.parameters!==ai||z.type!==Lo||z.body!==Hc?RT(TT(ye,Ve,Ct,wr,ai,Lo,Hc),z):z}function RT(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),fe(z,ye)}function wy(z,ye,Ve,Ct,wr){let ai=ce(263);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),fO(ai.modifiers)&128?ai.transformFlags=1:(ai.transformFlags|=qA(ai.modifiers)|pO(ai.name)|qA(ai.typeParameters)|qA(ai.heritageClauses)|qA(ai.members)|(ai.typeParameters?1:0)|1024,ai.transformFlags&8192&&(ai.transformFlags|=1)),ai.jsDoc=void 0,ai}function jE(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(wy(ye,Ve,Ct,wr,ai),z):z}function j_(z,ye,Ve,Ct,wr){let ai=ce(264);return ai.modifiers=IA(z),ai.name=EI(ye),ai.typeParameters=IA(Ve),ai.heritageClauses=IA(Ct),ai.members=ae(wr),ai.transformFlags=1,ai.jsDoc=void 0,ai}function NT(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.heritageClauses!==wr||z.members!==ai?Eo(j_(ye,Ve,Ct,wr,ai),z):z}function tf(z,ye,Ve,Ct){let wr=ce(265);return wr.modifiers=IA(z),wr.name=EI(ye),wr.typeParameters=IA(Ve),wr.type=Ct,wr.transformFlags=1,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr}function Ty(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.name!==Ve||z.typeParameters!==Ct||z.type!==wr?Eo(tf(ye,Ve,Ct,wr),z):z}function US(z,ye,Ve){let Ct=ce(266);return Ct.modifiers=IA(z),Ct.name=EI(ye),Ct.members=ae(Ve),Ct.transformFlags|=qA(Ct.modifiers)|$o(Ct.name)|qA(Ct.members)|1,Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function $I(z,ye,Ve,Ct){return z.modifiers!==ye||z.name!==Ve||z.members!==Ct?Eo(US(ye,Ve,Ct),z):z}function BA(z,ye,Ve,Ct=0){let wr=ce(267);return wr.modifiers=IA(z),wr.flags|=Ct&2088,wr.name=ye,wr.body=Ve,fO(wr.modifiers)&128?wr.transformFlags=1:wr.transformFlags|=qA(wr.modifiers)|$o(wr.name)|$o(wr.body)|1,wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr.locals=void 0,wr.nextContainer=void 0,wr}function $A(z,ye,Ve,Ct){return z.modifiers!==ye||z.name!==Ve||z.body!==Ct?Eo(BA(ye,Ve,Ct,z.flags),z):z}function Qm(z){let ye=ne(268);return ye.statements=ae(z),ye.transformFlags|=qA(ye.statements),ye.jsDoc=void 0,ye}function zf(z,ye){return z.statements!==ye?Eo(Qm(ye),z):z}function mb(z){let ye=ne(269);return ye.clauses=ae(z),ye.transformFlags|=qA(ye.clauses),ye.locals=void 0,ye.nextContainer=void 0,ye}function R_(z,ye){return z.clauses!==ye?Eo(mb(ye),z):z}function Cb(z){let ye=ce(270);return ye.name=EI(z),ye.transformFlags|=CNe(ye.name)|1,ye.modifiers=void 0,ye.jsDoc=void 0,ye}function Ry(z,ye){return z.name!==ye?KS(Cb(ye),z):z}function KS(z,ye){return z!==ye&&(z.modifiers=ye.modifiers),Eo(z,ye)}function _b(z,ye,Ve,Ct){let wr=ce(271);return wr.modifiers=IA(z),wr.name=EI(Ve),wr.isTypeOnly=ye,wr.moduleReference=Ct,wr.transformFlags|=qA(wr.modifiers)|CNe(wr.name)|$o(wr.moduleReference),CBi(wr.moduleReference)||(wr.transformFlags|=1),wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr}function z_(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.isTypeOnly!==Ve||z.name!==Ct||z.moduleReference!==wr?Eo(_b(ye,Ve,Ct,wr),z):z}function zE(z,ye,Ve,Ct){let wr=ne(272);return wr.modifiers=IA(z),wr.importClause=ye,wr.moduleSpecifier=Ve,wr.attributes=wr.assertClause=Ct,wr.transformFlags|=$o(wr.importClause)|$o(wr.moduleSpecifier),wr.transformFlags&=-67108865,wr.jsDoc=void 0,wr}function oB(z,ye,Ve,Ct,wr){return z.modifiers!==ye||z.importClause!==Ve||z.moduleSpecifier!==Ct||z.attributes!==wr?Eo(zE(ye,Ve,Ct,wr),z):z}function DT(z,ye,Ve){let Ct=ce(273);return Ct.isTypeOnly=z,Ct.name=ye,Ct.namedBindings=Ve,Ct.transformFlags|=$o(Ct.name)|$o(Ct.namedBindings),z&&(Ct.transformFlags|=1),Ct.transformFlags&=-67108865,Ct}function aB(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.name!==Ve||z.namedBindings!==Ct?Eo(DT(ye,Ve,Ct),z):z}function jS(z,ye){let Ve=ne(300);return Ve.elements=ae(z),Ve.multiLine=ye,Ve.token=132,Ve.transformFlags|=4,Ve}function XR(z,ye,Ve){return z.elements!==ye||z.multiLine!==Ve?Eo(jS(ye,Ve),z):z}function zS(z,ye){let Ve=ne(301);return Ve.name=z,Ve.value=ye,Ve.transformFlags|=4,Ve}function qE(z,ye,Ve){return z.name!==ye||z.value!==Ve?Eo(zS(ye,Ve),z):z}function X2(z,ye){let Ve=ne(302);return Ve.assertClause=z,Ve.multiLine=ye,Ve}function kT(z,ye,Ve){return z.assertClause!==ye||z.multiLine!==Ve?Eo(X2(ye,Ve),z):z}function pn(z,ye,Ve){let Ct=ne(300);return Ct.token=Ve??118,Ct.elements=ae(z),Ct.multiLine=ye,Ct.transformFlags|=4,Ct}function q1(z,ye,Ve){return z.elements!==ye||z.multiLine!==Ve?Eo(pn(ye,Ve,z.token),z):z}function J2(z,ye){let Ve=ne(301);return Ve.name=z,Ve.value=ye,Ve.transformFlags|=4,Ve}function ey(z,ye,Ve){return z.name!==ye||z.value!==Ve?Eo(J2(ye,Ve),z):z}function up(z){let ye=ce(274);return ye.name=z,ye.transformFlags|=$o(ye.name),ye.transformFlags&=-67108865,ye}function Iw(z,ye){return z.name!==ye?Eo(up(ye),z):z}function cB(z){let ye=ce(280);return ye.name=z,ye.transformFlags|=$o(ye.name)|32,ye.transformFlags&=-67108865,ye}function RD(z,ye){return z.name!==ye?Eo(cB(ye),z):z}function Rd(z){let ye=ne(275);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements),ye.transformFlags&=-67108865,ye}function JR(z,ye){return z.elements!==ye?Eo(Rd(ye),z):z}function ty(z,ye,Ve){let Ct=ce(276);return Ct.isTypeOnly=z,Ct.propertyName=ye,Ct.name=Ve,Ct.transformFlags|=$o(Ct.propertyName)|$o(Ct.name),Ct.transformFlags&=-67108865,Ct}function cF(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.propertyName!==Ve||z.name!==Ct?Eo(ty(ye,Ve,Ct),z):z}function $1(z,ye,Ve){let Ct=ce(277);return Ct.modifiers=IA(z),Ct.isExportEquals=ye,Ct.expression=ye?n().parenthesizeRightSideOfBinary(64,void 0,Ve):n().parenthesizeExpressionOfExportDefault(Ve),Ct.transformFlags|=qA(Ct.modifiers)|$o(Ct.expression),Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function $E(z,ye,Ve){return z.modifiers!==ye||z.expression!==Ve?Eo($1(ye,z.isExportEquals,Ve),z):z}function N_(z,ye,Ve,Ct,wr){let ai=ce(278);return ai.modifiers=IA(z),ai.isTypeOnly=ye,ai.exportClause=Ve,ai.moduleSpecifier=Ct,ai.attributes=ai.assertClause=wr,ai.transformFlags|=qA(ai.modifiers)|$o(ai.exportClause)|$o(ai.moduleSpecifier),ai.transformFlags&=-67108865,ai.jsDoc=void 0,ai}function e1(z,ye,Ve,Ct,wr,ai){return z.modifiers!==ye||z.isTypeOnly!==Ve||z.exportClause!==Ct||z.moduleSpecifier!==wr||z.attributes!==ai?t1(N_(ye,Ve,Ct,wr,ai),z):z}function t1(z,ye){return z!==ye&&z.modifiers===ye.modifiers&&(z.modifiers=ye.modifiers),Eo(z,ye)}function ry(z){let ye=ne(279);return ye.elements=ae(z),ye.transformFlags|=qA(ye.elements),ye.transformFlags&=-67108865,ye}function xT(z,ye){return z.elements!==ye?Eo(ry(ye),z):z}function yb(z,ye,Ve){let Ct=ne(281);return Ct.isTypeOnly=z,Ct.propertyName=EI(ye),Ct.name=EI(Ve),Ct.transformFlags|=$o(Ct.propertyName)|$o(Ct.name),Ct.transformFlags&=-67108865,Ct.jsDoc=void 0,Ct}function r_(z,ye,Ve,Ct){return z.isTypeOnly!==ye||z.propertyName!==Ve||z.name!==Ct?Eo(yb(ye,Ve,Ct),z):z}function Rh(){let z=ce(282);return z.jsDoc=void 0,z}function bb(z){let ye=ne(283);return ye.expression=z,ye.transformFlags|=$o(ye.expression),ye.transformFlags&=-67108865,ye}function lB(z,ye){return z.expression!==ye?Eo(bb(ye),z):z}function ND(z){return ne(z)}function DD(z,ye,Ve=!1){let Ct=q_(z,Ve?ye&&n().parenthesizeNonArrayTypeOfPostfixType(ye):ye);return Ct.postfix=Ve,Ct}function q_(z,ye){let Ve=ne(z);return Ve.type=ye,Ve}function kD(z,ye,Ve){return ye.type!==Ve?Eo(DD(z,Ve,ye.postfix),ye):ye}function UR(z,ye,Ve){return ye.type!==Ve?Eo(q_(z,Ve),ye):ye}function lc(z,ye){let Ve=ce(317);return Ve.parameters=IA(z),Ve.type=ye,Ve.transformFlags=qA(Ve.parameters)|(Ve.type?1:0),Ve.jsDoc=void 0,Ve.locals=void 0,Ve.nextContainer=void 0,Ve.typeArguments=void 0,Ve}function fh(z,ye,Ve){return z.parameters!==ye||z.type!==Ve?Eo(lc(ye,Ve),z):z}function rf(z,ye=!1){let Ve=ce(322);return Ve.jsDocPropertyTags=IA(z),Ve.isArrayType=ye,Ve}function yI(z,ye,Ve){return z.jsDocPropertyTags!==ye||z.isArrayType!==Ve?Eo(rf(ye,Ve),z):z}function aE(z){let ye=ne(309);return ye.type=z,ye}function qS(z,ye){return z.type!==ye?Eo(aE(ye),z):z}function Qp(z,ye,Ve){let Ct=ce(323);return Ct.typeParameters=IA(z),Ct.parameters=ae(ye),Ct.type=Ve,Ct.jsDoc=void 0,Ct.locals=void 0,Ct.nextContainer=void 0,Ct}function uB(z,ye,Ve,Ct){return z.typeParameters!==ye||z.parameters!==Ve||z.type!==Ct?Eo(Qp(ye,Ve,Ct),z):z}function Ih(z){let ye=xbt(z.kind);return z.tagName.escapedText===hNe(ye)?z.tagName:je(ye)}function xC(z,ye,Ve){let Ct=ne(z);return Ct.tagName=ye,Ct.comment=Ve,Ct}function $_(z,ye,Ve){let Ct=ce(z);return Ct.tagName=ye,Ct.comment=Ve,Ct}function r1(z,ye,Ve,Ct){let wr=xC(345,z??je("template"),Ct);return wr.constraint=ye,wr.typeParameters=ae(Ve),wr}function gB(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.constraint!==Ve||z.typeParameters!==Ct||z.comment!==wr?Eo(r1(ye,Ve,Ct,wr),z):z}function hw(z,ye,Ve,Ct){let wr=$_(346,z??je("typedef"),Ct);return wr.typeExpression=ye,wr.fullName=Ve,wr.name=oSi(Ve),wr.locals=void 0,wr.nextContainer=void 0,wr}function GT(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.typeExpression!==Ve||z.fullName!==Ct||z.comment!==wr?Eo(hw(ye,Ve,Ct,wr),z):z}function b0(z,ye,Ve,Ct,wr,ai){let Lo=$_(341,z??je("param"),ai);return Lo.typeExpression=Ct,Lo.name=ye,Lo.isNameFirst=!!wr,Lo.isBracketed=Ve,Lo}function ia(z,ye=Ih(z),Ve,Ct,wr,ai,Lo){return z.tagName!==ye||z.name!==Ve||z.isBracketed!==Ct||z.typeExpression!==wr||z.isNameFirst!==ai||z.comment!==Lo?Eo(b0(ye,Ve,Ct,wr,ai,Lo),z):z}function e2(z,ye,Ve,Ct,wr,ai){let Lo=$_(348,z??je("prop"),ai);return Lo.typeExpression=Ct,Lo.name=ye,Lo.isNameFirst=!!wr,Lo.isBracketed=Ve,Lo}function yd(z,ye=Ih(z),Ve,Ct,wr,ai,Lo){return z.tagName!==ye||z.name!==Ve||z.isBracketed!==Ct||z.typeExpression!==wr||z.isNameFirst!==ai||z.comment!==Lo?Eo(e2(ye,Ve,Ct,wr,ai,Lo),z):z}function bI(z,ye,Ve,Ct){let wr=$_(338,z??je("callback"),Ct);return wr.typeExpression=ye,wr.fullName=Ve,wr.name=oSi(Ve),wr.locals=void 0,wr.nextContainer=void 0,wr}function ag(z,ye=Ih(z),Ve,Ct,wr){return z.tagName!==ye||z.typeExpression!==Ve||z.fullName!==Ct||z.comment!==wr?Eo(bI(ye,Ve,Ct,wr),z):z}function Eb(z,ye,Ve){let Ct=xC(339,z??je("overload"),Ve);return Ct.typeExpression=ye,Ct}function n1(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.typeExpression!==Ve||z.comment!==Ct?Eo(Eb(ye,Ve,Ct),z):z}function U2(z,ye,Ve){let Ct=xC(328,z??je("augments"),Ve);return Ct.class=ye,Ct}function e0(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.class!==Ve||z.comment!==Ct?Eo(U2(ye,Ve,Ct),z):z}function n_(z,ye,Ve){let Ct=xC(329,z??je("implements"),Ve);return Ct.class=ye,Ct}function Xp(z,ye,Ve){let Ct=xC(347,z??je("see"),Ve);return Ct.name=ye,Ct}function cE(z,ye,Ve,Ct){return z.tagName!==ye||z.name!==Ve||z.comment!==Ct?Eo(Xp(ye,Ve,Ct),z):z}function lE(z){let ye=ne(310);return ye.name=z,ye}function Ip(z,ye){return z.name!==ye?Eo(lE(ye),z):z}function Xh(z,ye){let Ve=ne(311);return Ve.left=z,Ve.right=ye,Ve.transformFlags|=$o(Ve.left)|$o(Ve.right),Ve}function E0(z,ye,Ve){return z.left!==ye||z.right!==Ve?Eo(Xh(ye,Ve),z):z}function aA(z,ye){let Ve=ne(324);return Ve.name=z,Ve.text=ye,Ve}function fu(z,ye,Ve){return z.name!==ye?Eo(aA(ye,Ve),z):z}function Jp(z,ye){let Ve=ne(325);return Ve.name=z,Ve.text=ye,Ve}function dC(z,ye,Ve){return z.name!==ye?Eo(Jp(ye,Ve),z):z}function uE(z,ye){let Ve=ne(326);return Ve.name=z,Ve.text=ye,Ve}function eh(z,ye,Ve){return z.name!==ye?Eo(uE(ye,Ve),z):z}function Wf(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.class!==Ve||z.comment!==Ct?Eo(n_(ye,Ve,Ct),z):z}function Mo(z,ye,Ve){return xC(z,ye??je(xbt(z)),Ve)}function gp(z,ye,Ve=Ih(ye),Ct){return ye.tagName!==Ve||ye.comment!==Ct?Eo(Mo(z,Ve,Ct),ye):ye}function lF(z,ye,Ve,Ct){let wr=xC(z,ye??je(xbt(z)),Ct);return wr.typeExpression=Ve,wr}function uF(z,ye,Ve=Ih(ye),Ct,wr){return ye.tagName!==Ve||ye.typeExpression!==Ct||ye.comment!==wr?Eo(lF(z,Ve,Ct,wr),ye):ye}function gE(z,ye){return xC(327,z,ye)}function FT(z,ye,Ve){return z.tagName!==ye||z.comment!==Ve?Eo(gE(ye,Ve),z):z}function Np(z,ye,Ve){let Ct=$_(340,z??je(xbt(340)),Ve);return Ct.typeExpression=ye,Ct.locals=void 0,Ct.nextContainer=void 0,Ct}function Dm(z,ye=Ih(z),Ve,Ct){return z.tagName!==ye||z.typeExpression!==Ve||z.comment!==Ct?Eo(Np(ye,Ve,Ct),z):z}function Dp(z,ye,Ve,Ct,wr){let ai=xC(351,z??je("import"),wr);return ai.importClause=ye,ai.moduleSpecifier=Ve,ai.attributes=Ct,ai.comment=wr,ai}function t2(z,ye,Ve,Ct,wr,ai){return z.tagName!==ye||z.comment!==ai||z.importClause!==Ve||z.moduleSpecifier!==Ct||z.attributes!==wr?Eo(Dp(ye,Ve,Ct,wr,ai),z):z}function Ro(z){let ye=ne(321);return ye.text=z,ye}function AE(z,ye){return z.text!==ye?Eo(Ro(ye),z):z}function AB(z,ye){let Ve=ne(320);return Ve.comment=z,Ve.tags=IA(ye),Ve}function Xc(z,ye,Ve){return z.comment!==ye||z.tags!==Ve?Eo(AB(ye,Ve),z):z}function iu(z,ye,Ve){let Ct=ne(284);return Ct.openingElement=z,Ct.children=ae(ye),Ct.closingElement=Ve,Ct.transformFlags|=$o(Ct.openingElement)|qA(Ct.children)|$o(Ct.closingElement)|2,Ct}function dE(z,ye,Ve,Ct){return z.openingElement!==ye||z.children!==Ve||z.closingElement!==Ct?Eo(iu(ye,Ve,Ct),z):z}function yL(z,ye,Ve){let Ct=ne(285);return Ct.tagName=z,Ct.typeArguments=IA(ye),Ct.attributes=Ve,Ct.transformFlags|=$o(Ct.tagName)|qA(Ct.typeArguments)|$o(Ct.attributes)|2,Ct.typeArguments&&(Ct.transformFlags|=1),Ct}function KR(z,ye,Ve,Ct){return z.tagName!==ye||z.typeArguments!==Ve||z.attributes!==Ct?Eo(yL(ye,Ve,Ct),z):z}function Ou(z,ye,Ve){let Ct=ne(286);return Ct.tagName=z,Ct.typeArguments=IA(ye),Ct.attributes=Ve,Ct.transformFlags|=$o(Ct.tagName)|qA(Ct.typeArguments)|$o(Ct.attributes)|2,ye&&(Ct.transformFlags|=1),Ct}function ny(z,ye,Ve,Ct){return z.tagName!==ye||z.typeArguments!==Ve||z.attributes!==Ct?Eo(Ou(ye,Ve,Ct),z):z}function hp(z){let ye=ne(287);return ye.tagName=z,ye.transformFlags|=$o(ye.tagName)|2,ye}function Am(z,ye){return z.tagName!==ye?Eo(hp(ye),z):z}function K2(z,ye,Ve){let Ct=ne(288);return Ct.openingFragment=z,Ct.children=ae(ye),Ct.closingFragment=Ve,Ct.transformFlags|=$o(Ct.openingFragment)|qA(Ct.children)|$o(Ct.closingFragment)|2,Ct}function i_(z,ye,Ve,Ct){return z.openingFragment!==ye||z.children!==Ve||z.closingFragment!==Ct?Eo(K2(ye,Ve,Ct),z):z}function dB(z,ye){let Ve=ne(12);return Ve.text=z,Ve.containsOnlyTriviaWhiteSpaces=!!ye,Ve.transformFlags|=2,Ve}function ZT(z,ye,Ve){return z.text!==ye||z.containsOnlyTriviaWhiteSpaces!==Ve?Eo(dB(ye,Ve),z):z}function Cx(){let z=ne(289);return z.transformFlags|=2,z}function pB(){let z=ne(290);return z.transformFlags|=2,z}function qf(z,ye){let Ve=ce(291);return Ve.name=z,Ve.initializer=ye,Ve.transformFlags|=$o(Ve.name)|$o(Ve.initializer)|2,Ve}function Jh(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?Eo(qf(ye,Ve),z):z}function $S(z){let ye=ce(292);return ye.properties=ae(z),ye.transformFlags|=qA(ye.properties)|2,ye}function Sb(z,ye){return z.properties!==ye?Eo($S(ye),z):z}function mp(z){let ye=ne(293);return ye.expression=z,ye.transformFlags|=$o(ye.expression)|2,ye}function r2(z,ye){return z.expression!==ye?Eo(mp(ye),z):z}function i1(z,ye){let Ve=ne(294);return Ve.dotDotDotToken=z,Ve.expression=ye,Ve.transformFlags|=$o(Ve.dotDotDotToken)|$o(Ve.expression)|2,Ve}function Of(z,ye){return z.expression!==ye?Eo(i1(z.dotDotDotToken,ye),z):z}function pE(z,ye){let Ve=ne(295);return Ve.namespace=z,Ve.name=ye,Ve.transformFlags|=$o(Ve.namespace)|$o(Ve.name)|2,Ve}function Vd(z,ye,Ve){return z.namespace!==ye||z.name!==Ve?Eo(pE(ye,Ve),z):z}function j(z,ye){let Ve=ne(296);return Ve.expression=n().parenthesizeExpressionForDisallowedComma(z),Ve.statements=ae(ye),Ve.transformFlags|=$o(Ve.expression)|qA(Ve.statements),Ve.jsDoc=void 0,Ve}function Z(z,ye,Ve){return z.expression!==ye||z.statements!==Ve?Eo(j(ye,Ve),z):z}function Id(z){let ye=ne(297);return ye.statements=ae(z),ye.transformFlags=qA(ye.statements),ye}function fB(z,ye){return z.statements!==ye?Eo(Id(ye),z):z}function ev(z,ye){let Ve=ne(298);switch(Ve.token=z,Ve.types=ae(ye),Ve.transformFlags|=qA(Ve.types),z){case 96:Ve.transformFlags|=1024;break;case 119:Ve.transformFlags|=1;break;default:return Zo.assertNever(z)}return Ve}function Ny(z,ye){return z.types!==ye?Eo(ev(z.token,ye),z):z}function vb(z,ye){let Ve=ne(299);return Ve.variableDeclaration=$2(z),Ve.block=ye,Ve.transformFlags|=$o(Ve.variableDeclaration)|$o(Ve.block)|(z?0:64),Ve.locals=void 0,Ve.nextContainer=void 0,Ve}function xD(z,ye,Ve){return z.variableDeclaration!==ye||z.block!==Ve?Eo(vb(ye,Ve),z):z}function IB(z,ye){let Ve=ce(303);return Ve.name=EI(z),Ve.initializer=n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=pO(Ve.name)|$o(Ve.initializer),Ve.modifiers=void 0,Ve.questionToken=void 0,Ve.exclamationToken=void 0,Ve.jsDoc=void 0,Ve}function Bb(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?bL(IB(ye,Ve),z):z}function bL(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken),Eo(z,ye)}function gF(z,ye){let Ve=ce(304);return Ve.name=EI(z),Ve.objectAssignmentInitializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=CNe(Ve.name)|$o(Ve.objectAssignmentInitializer)|1024,Ve.equalsToken=void 0,Ve.modifiers=void 0,Ve.questionToken=void 0,Ve.exclamationToken=void 0,Ve.jsDoc=void 0,Ve}function x(z,ye,Ve){return z.name!==ye||z.objectAssignmentInitializer!==Ve?L(gF(ye,Ve),z):z}function L(z,ye){return z!==ye&&(z.modifiers=ye.modifiers,z.questionToken=ye.questionToken,z.exclamationToken=ye.exclamationToken,z.equalsToken=ye.equalsToken),Eo(z,ye)}function te(z){let ye=ce(305);return ye.expression=n().parenthesizeExpressionForDisallowedComma(z),ye.transformFlags|=$o(ye.expression)|128|65536,ye.jsDoc=void 0,ye}function Re(z,ye){return z.expression!==ye?Eo(te(ye),z):z}function Le(z,ye){let Ve=ce(306);return Ve.name=EI(z),Ve.initializer=ye&&n().parenthesizeExpressionForDisallowedComma(ye),Ve.transformFlags|=$o(Ve.name)|$o(Ve.initializer)|1,Ve.jsDoc=void 0,Ve}function ft(z,ye,Ve){return z.name!==ye||z.initializer!==Ve?Eo(Le(ye,Ve),z):z}function dr(z,ye,Ve){let Ct=t.createBaseSourceFileNode(307);return Ct.statements=ae(z),Ct.endOfFileToken=ye,Ct.flags|=Ve,Ct.text="",Ct.fileName="",Ct.path="",Ct.resolvedPath="",Ct.originalFileName="",Ct.languageVersion=1,Ct.languageVariant=0,Ct.scriptKind=0,Ct.isDeclarationFile=!1,Ct.hasNoDefaultLib=!1,Ct.transformFlags|=qA(Ct.statements)|$o(Ct.endOfFileToken),Ct.locals=void 0,Ct.nextContainer=void 0,Ct.endFlowNode=void 0,Ct.nodeCount=0,Ct.identifierCount=0,Ct.symbolCount=0,Ct.parseDiagnostics=void 0,Ct.bindDiagnostics=void 0,Ct.bindSuggestionDiagnostics=void 0,Ct.lineMap=void 0,Ct.externalModuleIndicator=void 0,Ct.setExternalModuleIndicator=void 0,Ct.pragmas=void 0,Ct.checkJsDirective=void 0,Ct.referencedFiles=void 0,Ct.typeReferenceDirectives=void 0,Ct.libReferenceDirectives=void 0,Ct.amdDependencies=void 0,Ct.commentDirectives=void 0,Ct.identifiers=void 0,Ct.packageJsonLocations=void 0,Ct.packageJsonScope=void 0,Ct.imports=void 0,Ct.moduleAugmentations=void 0,Ct.ambientModuleNames=void 0,Ct.classifiableNames=void 0,Ct.impliedNodeFormat=void 0,Ct}function Ur(z){let ye=Object.create(z.redirectTarget);return Object.defineProperties(ye,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Ve){this.redirectInfo.redirectTarget.id=Ve}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Ve){this.redirectInfo.redirectTarget.symbol=Ve}}}),ye.redirectInfo=z,ye}function mi(z){let ye=Ur(z.redirectInfo);return ye.flags|=z.flags&-17,ye.fileName=z.fileName,ye.path=z.path,ye.resolvedPath=z.resolvedPath,ye.originalFileName=z.originalFileName,ye.packageJsonLocations=z.packageJsonLocations,ye.packageJsonScope=z.packageJsonScope,ye.emitNode=void 0,ye}function Vi(z){let ye=t.createBaseSourceFileNode(307);ye.flags|=z.flags&-17;for(let Ve in z)if(!(fj(ye,Ve)||!fj(z,Ve))){if(Ve==="emitNode"){ye.emitNode=void 0;continue}ye[Ve]=z[Ve]}return ye}function Ta(z){let ye=z.redirectInfo?mi(z):Vi(z);return r(ye,z),ye}function Sl(z,ye,Ve,Ct,wr,ai,Lo){let Hc=Ta(z);return Hc.statements=ae(ye),Hc.isDeclarationFile=Ve,Hc.referencedFiles=Ct,Hc.typeReferenceDirectives=wr,Hc.hasNoDefaultLib=ai,Hc.libReferenceDirectives=Lo,Hc.transformFlags=qA(Hc.statements)|$o(Hc.endOfFileToken),Hc}function Ho(z,ye,Ve=z.isDeclarationFile,Ct=z.referencedFiles,wr=z.typeReferenceDirectives,ai=z.hasNoDefaultLib,Lo=z.libReferenceDirectives){return z.statements!==ye||z.isDeclarationFile!==Ve||z.referencedFiles!==Ct||z.typeReferenceDirectives!==wr||z.hasNoDefaultLib!==ai||z.libReferenceDirectives!==Lo?Eo(Sl(z,ye,Ve,Ct,wr,ai,Lo),z):z}function Wg(z){let ye=ne(308);return ye.sourceFiles=z,ye.syntheticFileReferences=void 0,ye.syntheticTypeReferences=void 0,ye.syntheticLibReferences=void 0,ye.hasNoDefaultLib=void 0,ye}function cA(z,ye){return z.sourceFiles!==ye?Eo(Wg(ye),z):z}function th(z,ye=!1,Ve){let Ct=ne(237);return Ct.type=z,Ct.isSpread=ye,Ct.tupleNameSource=Ve,Ct}function xn(z){let ye=ne(352);return ye._children=z,ye}function rn(z){let ye=ne(353);return ye.original=z,zZ(ye,z),ye}function Ci(z,ye){let Ve=ne(355);return Ve.expression=z,Ve.original=ye,Ve.transformFlags|=$o(Ve.expression)|1,zZ(Ve,ye),Ve}function Po(z,ye){return z.expression!==ye?Eo(Ci(ye,z.original),z):z}function ec(){return ne(354)}function Ra(z){if(mNe(z)&&!Qbt(z)&&!z.original&&!z.emitNode&&!z.id){if(fec(z))return z.elements;if(NNe(z)&&x$a(z.operatorToken))return[z.left,z.right]}return z}function dc(z){let ye=ne(356);return ye.elements=ae(Q6a(z,Ra)),ye.transformFlags|=qA(ye.elements),ye}function Iu(z,ye){return z.elements!==ye?Eo(dc(ye),z):z}function Cl(z,ye){let Ve=ne(357);return Ve.expression=z,Ve.thisArg=ye,Ve.transformFlags|=$o(Ve.expression)|$o(Ve.thisArg),Ve}function wl(z,ye,Ve){return z.expression!==ye||z.thisArg!==Ve?Eo(Cl(ye,Ve),z):z}function $f(z){let ye=ct(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function j2(z){let ye=ct(z.escapedText);ye.flags|=z.flags&-17,ye.jsDoc=z.jsDoc,ye.flowNode=z.flowNode,ye.symbol=z.symbol,ye.transformFlags=z.transformFlags,r(ye,z);let Ve=getIdentifierTypeArguments(z);return Ve&&setIdentifierTypeArguments(ye,Ve),ye}function _x(z){let ye=Nr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),setIdentifierAutoGenerate(ye,{...z.emitNode.autoGenerate}),ye}function z2(z){let ye=Nr(z.escapedText);return ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z),ye}function tv(z){if(z===void 0)return z;if(Sec(z))return Ta(z);if(SNe(z))return $f(z);if($C(z))return j2(z);if(kvi(z))return _x(z);if(Yme(z))return z2(z);let ye=YNr(z.kind)?t.createBaseNode(z.kind):t.createBaseTokenNode(z.kind);ye.flags|=z.flags&-17,ye.transformFlags=z.transformFlags,r(ye,z);for(let Ve in z)fj(ye,Ve)||!fj(z,Ve)||(ye[Ve]=z[Ve]);return ye}function Yu(z,ye,Ve){return YA(TC(void 0,void 0,void 0,void 0,ye?[ye]:[],void 0,eA(z,!0)),void 0,Ve?[Ve]:[])}function qO(z,ye,Ve){return YA(cp(void 0,void 0,ye?[ye]:[],void 0,void 0,eA(z,!0)),void 0,Ve?[Ve]:[])}function hB(){return CI(ue("0"))}function mw(z){return $1(void 0,!1,z)}function AF(z){return N_(void 0,!1,ry([yb(!1,void 0,z)]))}function $O(z,ye){return ye==="null"?X.createStrictEquality(z,Ar()):ye==="undefined"?X.createStrictEquality(z,hB()):X.createStrictEquality(lm(z),Se(ye))}function iY(z,ye){return ye==="null"?X.createStrictInequality(z,Ar()):ye==="undefined"?X.createStrictInequality(z,hB()):X.createStrictInequality(lm(z),Se(ye))}function LT(z,ye,Ve){return P2i(z)?Nm(Ql(z,void 0,ye),void 0,void 0,Ve):YA(Bo(z,ye),void 0,Ve)}function GD(z,ye,Ve){return LT(z,"bind",[ye,...Ve])}function dF(z,ye,Ve){return LT(z,"call",[ye,...Ve])}function EL(z,ye,Ve){return LT(z,"apply",[ye,Ve])}function ff(z,ye,Ve){return LT(je(z),ye,Ve)}function FD(z,ye){return LT(z,"slice",ye===void 0?[]:[zd(ye)])}function fE(z,ye){return LT(z,"concat",ye)}function n2(z,ye,Ve){return ff("Object","defineProperty",[z,zd(ye),Ve])}function mB(z,ye){return ff("Object","getOwnPropertyDescriptor",[z,zd(ye)])}function bd(z,ye,Ve){return ff("Reflect","get",Ve?[z,ye,Ve]:[z,ye])}function s1(z,ye,Ve,Ct){return ff("Reflect","set",Ct?[z,ye,Ve,Ct]:[z,ye,Ve])}function Uh(z,ye,Ve){return Ve?(z.push(IB(ye,Ve)),!0):!1}function wb(z,ye){let Ve=[];Uh(Ve,"enumerable",zd(z.enumerable)),Uh(Ve,"configurable",zd(z.configurable));let Ct=Uh(Ve,"writable",zd(z.writable));Ct=Uh(Ve,"value",z.value)||Ct;let wr=Uh(Ve,"get",z.get);return wr=Uh(Ve,"set",z.set)||wr,Zo.assert(!(Ct&&wr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Wn(Ve,!ye)}function Uu(z,ye){switch(z.kind){case 217:return XE(z,ye);case 216:return J_(z,z.type,ye);case 234:return NC(z,ye,z.type);case 238:return kC(z,ye,z.type);case 235:return U_(z,ye);case 233:return hb(z,ye,z.typeArguments);case 355:return Po(z,ye)}}function iy(z){return rDr(z)&&mNe(z)&&mNe(getSourceMapRange(z))&&mNe(getCommentRange(z))&&!oD(getSyntheticLeadingComments(z))&&!oD(getSyntheticTrailingComments(z))}function sY(z,ye,Ve=31){return z&&SBi(z,Ve)&&!iy(z)?Uu(z,sY(z.expression,ye)):ye}function oY(z,ye,Ve){if(!ye)return z;let Ct=Jr(ye,ye.label,Iec(ye.statement)?oY(z,ye.statement):z);return Ve&&Ve(ye),Ct}function jR(z,ye){let Ve=jNr(z);switch(Ve.kind){case 80:return ye;case 110:case 9:case 10:case 11:return!1;case 209:return Ve.elements.length!==0;case 210:return Ve.properties.length>0;default:return!0}}function aY(z,ye,Ve,Ct=!1){let wr=sDr(z,31),ai,Lo;return X2i(wr)?(ai=cr(),Lo=wr):$Rr(wr)?(ai=cr(),Lo=Ve!==void 0&&Ve<2?zZ(je("_super"),wr):wr):TNe(wr)&8192?(ai=hB(),Lo=n().parenthesizeLeftSideOfAccess(wr,!1)):Bce(wr)?jR(wr.expression,Ct)?(ai=St(ye),Lo=Bo(zZ(X.createAssignment(ai,wr.expression),wr.expression),wr.name),zZ(Lo,wr)):(ai=wr.expression,Lo=wr):vJe(wr)?jR(wr.expression,Ct)?(ai=St(ye),Lo=ef(zZ(X.createAssignment(ai,wr.expression),wr.expression),wr.argumentExpression),zZ(Lo,wr)):(ai=wr.expression,Lo=wr):(ai=hB(),Lo=n().parenthesizeLeftSideOfAccess(z,!1)),{target:Lo,thisArg:ai}}function tt(z,ye){return Bo(q0(Wn([li(void 0,"value",[io(void 0,void 0,z,void 0,void 0,void 0)],eA([cs(ye)]))])),"value")}function Jt(z){return z.length>10?dc(z):t7a(z,X.createComma)}function kr(z,ye,Ve,Ct=0,wr){let ai=wr?z&&MNr(z):wvi(z);if(ai&&$C(ai)&&!SNe(ai)){let Lo=$Nr(zZ(tv(ai),ai),ai.parent);return Ct|=TNe(ai),Ve||(Ct|=96),ye||(Ct|=3072),Ct&&setEmitFlags(Lo,Ct),Lo}return Tr(z)}function Xr(z,ye,Ve){return kr(z,ye,Ve,98304)}function ui(z,ye,Ve,Ct){return kr(z,ye,Ve,32768,Ct)}function Is(z,ye,Ve){return kr(z,ye,Ve,16384)}function Hs(z,ye,Ve){return kr(z,ye,Ve)}function Rs(z,ye,Ve,Ct){let wr=Bo(z,mNe(ye)?ye:tv(ye));zZ(wr,ye);let ai=0;return Ct||(ai|=96),Ve||(ai|=3072),ai&&setEmitFlags(wr,ai),wr}function ja(z,ye,Ve,Ct){return z&&SJe(ye,32)?Rs(z,kr(ye),Ve,Ct):Is(ye,Ve,Ct)}function ho(z,ye,Ve,Ct){let wr=ed(z,ye,0,Ve);return Og(z,ye,wr,Ct)}function sl(z){return tEt(z.expression)&&z.expression.text==="use strict"}function Nd(){return Xec(cs(Se("use strict")))}function ed(z,ye,Ve=0,Ct){Zo.assert(ye.length===0,"Prologue directives should be at the first statement in the target statements array");let wr=!1,ai=z.length;for(;VeHc&&dm.splice(wr,0,...ye.slice(Hc,ad)),Hc>Lo&&dm.splice(Ct,0,...ye.slice(Lo,Hc)),Lo>ai&&dm.splice(Ve,0,...ye.slice(ai,Lo)),ai>0)if(Ve===0)dm.splice(0,0,...ye.slice(0,ai));else{let rv=new Map;for(let nv=0;nv=0;nv--){let yx=ye[nv];rv.has(yx.expression.text)||dm.unshift(yx)}}return _ce(z)?zZ(ae(dm,z.hasTrailingComma),z):z}function IE(z,ye){let Ve;return typeof ye=="number"?Ve=jt(ye):Ve=ye,tBi(z)?xi(z,Ve,z.name,z.constraint,z.default):Ubt(z)?ga(z,Ve,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):oBi(z)?Ko(z,Ve,z.typeParameters,z.parameters,z.type):L$a(z)?Sc(z,Ve,z.name,z.questionToken,z.type):Kbt(z)?Ft(z,Ve,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):V$a(z)?Rn(z,Ve,z.name,z.questionToken,z.typeParameters,z.parameters,z.type):INr(z)?Qi(z,Ve,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):rBi(z)?Cg(z,Ve,z.parameters,z.body):hNr(z)?ma(z,Ve,z.name,z.parameters,z.type,z.body):jbt(z)?Ei(z,Ve,z.name,z.parameters,z.body):nBi(z)?Ul(z,Ve,z.parameters,z.type):lBi(z)?t_(z,Ve,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):uBi(z)?Mm(z,Ve,z.typeParameters,z.parameters,z.type,z.equalsGreaterThanToken,z.body):mNr(z)?Hm(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):rEt(z)?um(z,Ve,z.declarationList):dBi(z)?sB(z,Ve,z.asteriskToken,z.name,z.typeParameters,z.parameters,z.type,z.body):zbt(z)?jE(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):nDr(z)?NT(z,Ve,z.name,z.typeParameters,z.heritageClauses,z.members):pBi(z)?Ty(z,Ve,z.name,z.typeParameters,z.type):mec(z)?$I(z,Ve,z.name,z.members):bJe(z)?$A(z,Ve,z.name,z.body):fBi(z)?z_(z,Ve,z.isTypeOnly,z.name,z.moduleReference):IBi(z)?oB(z,Ve,z.importClause,z.moduleSpecifier,z.attributes):hBi(z)?$E(z,Ve,z.expression):mBi(z)?e1(z,Ve,z.isTypeOnly,z.exportClause,z.moduleSpecifier,z.attributes):Zo.assertNever(z)}function zR(z,ye){return Ubt(z)?ga(z,ye,z.dotDotDotToken,z.name,z.questionToken,z.type,z.initializer):Kbt(z)?Ft(z,ye,z.name,z.questionToken??z.exclamationToken,z.type,z.initializer):INr(z)?Qi(z,ye,z.asteriskToken,z.name,z.questionToken,z.typeParameters,z.parameters,z.type,z.body):hNr(z)?ma(z,ye,z.name,z.parameters,z.type,z.body):jbt(z)?Ei(z,ye,z.name,z.parameters,z.body):mNr(z)?Hm(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):zbt(z)?jE(z,ye,z.name,z.typeParameters,z.heritageClauses,z.members):Zo.assertNever(z)}function e3(z,ye){switch(z.kind){case 177:return ma(z,z.modifiers,ye,z.parameters,z.type,z.body);case 178:return Ei(z,z.modifiers,ye,z.parameters,z.body);case 174:return Qi(z,z.modifiers,z.asteriskToken,ye,z.questionToken,z.typeParameters,z.parameters,z.type,z.body);case 173:return Rn(z,z.modifiers,ye,z.questionToken,z.typeParameters,z.parameters,z.type);case 172:return Ft(z,z.modifiers,ye,z.questionToken??z.exclamationToken,z.type,z.initializer);case 171:return Sc(z,z.modifiers,ye,z.questionToken,z.type);case 303:return Bb(z,ye,z.initializer)}}function IA(z){return z?ae(z):void 0}function EI(z){return typeof z=="string"?je(z):z}function zd(z){return typeof z=="string"?Se(z):typeof z=="number"?ue(z):typeof z=="boolean"?z?qr():_n():z}function wA(z){return z&&n().parenthesizeExpressionForDisallowedComma(z)}function qR(z){return typeof z=="number"?Xt(z):z}function sy(z){return z&&_ec(z)?zZ(r(gm(),z),z):z}function $2(z){return typeof z=="string"||z&&!ABi(z)?Rf(z,void 0,void 0,void 0):z}function Eo(z,ye){return z!==ye&&(r(z,ye),zZ(z,ye)),z}}function xbt(e){switch(e){case 344:return"type";case 342:return"returns";case 343:return"this";case 340:return"enum";case 330:return"author";case 332:return"class";case 333:return"public";case 334:return"private";case 335:return"protected";case 336:return"readonly";case 337:return"override";case 345:return"template";case 346:return"typedef";case 341:return"param";case 348:return"prop";case 338:return"callback";case 339:return"overload";case 328:return"augments";case 329:return"implements";case 351:return"import";default:return Zo.fail(`Unsupported kind: ${Zo.formatSyntaxKind(e)}`)}}var hV,q2i={};function S$a(e,t){switch(hV||(hV=WNr(99,!1,0)),e){case 15:hV.setText("`"+t+"`");break;case 16:hV.setText("`"+t+"${");break;case 17:hV.setText("}"+t+"${");break;case 18:hV.setText("}"+t+"`");break}let r=hV.scan();if(r===20&&(r=hV.reScanTemplateToken(!1)),hV.isUnterminated())return hV.setText(void 0),q2i;let n;switch(r){case 15:case 16:case 17:case 18:n=hV.getTokenValue();break}return n===void 0||hV.scan()!==1?(hV.setText(void 0),q2i):(hV.setText(void 0),n)}function pO(e){return e&&$C(e)?CNe(e):$o(e)}function CNe(e){return $o(e)&-67108865}function v$a(e,t){return t|e.transformFlags&134234112}function $o(e){if(!e)return 0;let t=e.transformFlags&~B$a(e.kind);return sza(e)&&xvi(e.name)?v$a(e.name,t):t}function qA(e){return e?e.transformFlags:0}function $2i(e){let t=0;for(let r of e)t|=$o(r);e.transformFlags=t}function B$a(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var rJe=y$a();function nJe(e){return e.flags|=16,e}var w$a={createBaseSourceFileNode:e=>nJe(rJe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>nJe(rJe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>nJe(rJe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>nJe(rJe.createBaseTokenNode(e)),createBaseNode:e=>nJe(rJe.createBaseNode(e))},ARu=eDr(4,w$a);function T$a(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=R$a(r,e.emitNode))}return e}function R$a(e,t){let{flags:r,internalFlags:n,leadingComments:a,trailingComments:o,commentRange:l,sourceMapRange:A,tokenSourceMapRanges:f,constantValue:I,helpers:C,startsOnNewLine:b,snippetElement:E,classThis:N,assignedName:B}=e;if(t||(t={}),r&&(t.flags=r),n&&(t.internalFlags=n&-9),a&&(t.leadingComments=_V(a.slice(),t.leadingComments)),o&&(t.trailingComments=_V(o.slice(),t.trailingComments)),l&&(t.commentRange=l),A&&(t.sourceMapRange=A),f&&(t.tokenSourceMapRanges=N$a(f,t.tokenSourceMapRanges)),I!==void 0&&(t.constantValue=I),C)for(let F of C)t.helpers=K6a(t.helpers,F);return b!==void 0&&(t.startsOnNewLine=b),E!==void 0&&(t.snippetElement=E),N&&(t.classThis=N),B&&(t.assignedName=B),t}function N$a(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function DNe(e){return e.kind===9}function D$a(e){return e.kind===10}function tEt(e){return e.kind===11}function k$a(e){return e.kind===15}function x$a(e){return e.kind===28}function eSi(e){return e.kind===54}function tSi(e){return e.kind===58}function $C(e){return e.kind===80}function Yme(e){return e.kind===81}function G$a(e){return e.kind===95}function Gbt(e){return e.kind===134}function $Rr(e){return e.kind===108}function F$a(e){return e.kind===102}function Z$a(e){return e.kind===166}function eBi(e){return e.kind===167}function tBi(e){return e.kind===168}function Ubt(e){return e.kind===169}function tDr(e){return e.kind===170}function L$a(e){return e.kind===171}function Kbt(e){return e.kind===172}function V$a(e){return e.kind===173}function INr(e){return e.kind===174}function rBi(e){return e.kind===176}function hNr(e){return e.kind===177}function jbt(e){return e.kind===178}function P$a(e){return e.kind===179}function W$a(e){return e.kind===180}function nBi(e){return e.kind===181}function O$a(e){return e.kind===182}function iBi(e){return e.kind===183}function sBi(e){return e.kind===184}function oBi(e){return e.kind===185}function M$a(e){return e.kind===186}function H$a(e){return e.kind===187}function Y$a(e){return e.kind===188}function Q$a(e){return e.kind===189}function X$a(e){return e.kind===202}function J$a(e){return e.kind===190}function U$a(e){return e.kind===191}function K$a(e){return e.kind===192}function j$a(e){return e.kind===193}function z$a(e){return e.kind===194}function q$a(e){return e.kind===195}function $$a(e){return e.kind===196}function eec(e){return e.kind===197}function tec(e){return e.kind===198}function rec(e){return e.kind===199}function nec(e){return e.kind===200}function iec(e){return e.kind===201}function sec(e){return e.kind===205}function oec(e){return e.kind===208}function aec(e){return e.kind===209}function aBi(e){return e.kind===210}function Bce(e){return e.kind===211}function vJe(e){return e.kind===212}function cBi(e){return e.kind===213}function cec(e){return e.kind===215}function rDr(e){return e.kind===217}function lBi(e){return e.kind===218}function uBi(e){return e.kind===219}function lec(e){return e.kind===222}function uec(e){return e.kind===224}function NNe(e){return e.kind===226}function gec(e){return e.kind===230}function mNr(e){return e.kind===231}function Aec(e){return e.kind===232}function dec(e){return e.kind===233}function Vbt(e){return e.kind===235}function pec(e){return e.kind===236}function fec(e){return e.kind===356}function rEt(e){return e.kind===243}function gBi(e){return e.kind===244}function Iec(e){return e.kind===256}function ABi(e){return e.kind===260}function hec(e){return e.kind===261}function dBi(e){return e.kind===262}function zbt(e){return e.kind===263}function nDr(e){return e.kind===264}function pBi(e){return e.kind===265}function mec(e){return e.kind===266}function bJe(e){return e.kind===267}function fBi(e){return e.kind===271}function IBi(e){return e.kind===272}function hBi(e){return e.kind===277}function mBi(e){return e.kind===278}function Cec(e){return e.kind===279}function _ec(e){return e.kind===353}function CBi(e){return e.kind===283}function rSi(e){return e.kind===286}function yec(e){return e.kind===289}function _Bi(e){return e.kind===295}function bec(e){return e.kind===297}function Eec(e){return e.kind===303}function Sec(e){return e.kind===307}function vec(e){return e.kind===309}function Bec(e){return e.kind===314}function wec(e){return e.kind===317}function yBi(e){return e.kind===320}function Tec(e){return e.kind===322}function bBi(e){return e.kind===323}function Rec(e){return e.kind===328}function Nec(e){return e.kind===333}function Dec(e){return e.kind===334}function kec(e){return e.kind===335}function xec(e){return e.kind===336}function Gec(e){return e.kind===337}function Fec(e){return e.kind===339}function Zec(e){return e.kind===331}function nSi(e){return e.kind===341}function Lec(e){return e.kind===342}function iDr(e){return e.kind===344}function Vec(e){return e.kind===345}function Pec(e){return e.kind===329}function Wec(e){return e.kind===350}var Ome=new WeakMap;function EBi(e,t){var r;let n=e.kind;return YNr(n)?n===352?e._children:(r=Ome.get(t))==null?void 0:r.get(e):x2}function Oec(e,t,r){e.kind===352&&Zo.fail("Should not need to re-set the children of a SyntaxList.");let n=Ome.get(t);return n===void 0&&(n=new WeakMap,Ome.set(t,n)),n.set(e,r),r}function iSi(e,t){var r;e.kind===352&&Zo.fail("Did not expect to unset the children of a SyntaxList."),(r=Ome.get(t))==null||r.delete(e)}function Mec(e,t){let r=Ome.get(e);r!==void 0&&(Ome.delete(e),Ome.set(t,r))}function sSi(e){return(TNe(e)&32768)!==0}function Hec(e){return tEt(e.expression)&&e.expression.text==="use strict"}function Yec(e){for(let t of e)if(Lbt(t)){if(Hec(t))return t}else break}function Qec(e){return rDr(e)&&Qme(e)&&!!yza(e)}function SBi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&Qec(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function sDr(e,t=31){for(;SBi(e,t);)e=e.expression;return e}function Xec(e){return setStartsOnNewLine(e,!0)}function AJe(e){if(Pza(e))return e.name;if(Fza(e)){switch(e.kind){case 303:return AJe(e.initializer);case 304:return e.name;case 305:return AJe(e.expression)}return}return Jbt(e,!0)?AJe(e.left):gec(e)?AJe(e.expression):e}function Jec(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function oSi(e){if(e){let t=e;for(;;){if($C(t)||!t.body)return $C(t)?t:t.name;t=t.body}}}var aSi;(e=>{function t(C,b,E,N,B,F,Q){let X=b>0?B[b-1]:void 0;return Zo.assertEqual(E[b],t),B[b]=C.onEnter(N[b],X,Q),E[b]=A(C,t),b}e.enter=t;function r(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],r),Zo.assertIsDefined(C.onLeft),E[b]=A(C,r);let X=C.onLeft(N[b].left,B[b],N[b]);return X?(I(b,N,X),f(b,E,N,B,X)):b}e.left=r;function n(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],n),Zo.assertIsDefined(C.onOperator),E[b]=A(C,n),C.onOperator(N[b].operatorToken,B[b],N[b]),b}e.operator=n;function a(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],a),Zo.assertIsDefined(C.onRight),E[b]=A(C,a);let X=C.onRight(N[b].right,B[b],N[b]);return X?(I(b,N,X),f(b,E,N,B,X)):b}e.right=a;function o(C,b,E,N,B,F,Q){Zo.assertEqual(E[b],o),E[b]=A(C,o);let X=C.onExit(N[b],B[b]);if(b>0){if(b--,C.foldState){let ae=E[b]===o?"right":"left";B[b]=C.foldState(B[b],X,ae)}}else F.value=X;return b}e.exit=o;function l(C,b,E,N,B,F,Q){return Zo.assertEqual(E[b],l),b}e.done=l;function A(C,b){switch(b){case t:if(C.onLeft)return r;case r:if(C.onOperator)return n;case n:if(C.onRight)return a;case a:return o;case o:return l;case l:return l;default:Zo.fail("Invalid state")}}e.nextState=A;function f(C,b,E,N,B){return C++,b[C]=t,E[C]=B,N[C]=void 0,C}function I(C,b,E){if(Zo.shouldAssert(2))for(;C>=0;)Zo.assert(b[C]!==E,"Circular traversal detected."),C--}})(aSi||(aSi={}));function cSi(e,t){return typeof e=="object"?CNr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function Uec(e,t){return typeof e=="string"?e:Kec(e,Zo.checkDefined(t))}function Kec(e,t){return kvi(e)?t(e).slice(1):SNe(e)?t(e):Yme(e)?e.escapedText.slice(1):yV(e)}function CNr(e,t,r,n,a){return t=cSi(t,a),n=cSi(n,a),r=Uec(r,a),`${e?"#":""}${t}${r}${n}`}function vBi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of Jec(e)){let r=AJe(t);if(r&&Vza(r)&&(r.transformFlags&65536||r.transformFlags&128&&vBi(r)))return!0}return!1}function zZ(e,t){return t?Ece(e,t.pos,t.end):e}function oDr(e){let t=e.kind;return t===168||t===169||t===171||t===172||t===173||t===174||t===176||t===177||t===178||t===181||t===185||t===218||t===219||t===231||t===243||t===262||t===263||t===264||t===265||t===266||t===267||t===271||t===272||t===277||t===278}function jec(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var lSi,uSi,gSi,ASi,dSi,zec={createBaseSourceFileNode:e=>new(dSi||(dSi=k2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(gSi||(gSi=k2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(ASi||(ASi=k2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(uSi||(uSi=k2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(lSi||(lSi=k2.getNodeConstructor()))(e,-1,-1)},dRu=eDr(1,zec);function wi(e,t){return t&&e(t)}function al(e,t,r){if(r){if(t)return t(r);for(let n of r){let a=e(n);if(a)return a}}}function qec(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function $ec(e){return hO(e.statements,etc)||ttc(e)}function etc(e){return oDr(e)&&rtc(e,95)||fBi(e)&&CBi(e.moduleReference)||IBi(e)||hBi(e)||mBi(e)?e:void 0}function ttc(e){return e.flags&8388608?BBi(e):void 0}function BBi(e){return ntc(e)?e:Ok(e,BBi)}function rtc(e,t){return oD(e.modifiers,r=>r.kind===t)}function ntc(e){return pec(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var itc={166:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},168:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.constraint)||wi(t,e.default)||wi(t,e.expression)},304:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.equalsToken)||wi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return wi(t,e.expression)},169:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},172:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},171:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)||wi(t,e.initializer)},303:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||wi(t,e.initializer)},260:function(e,t,r){return wi(t,e.name)||wi(t,e.exclamationToken)||wi(t,e.type)||wi(t,e.initializer)},208:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.propertyName)||wi(t,e.name)||wi(t,e.initializer)},181:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},185:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},184:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},179:pSi,180:pSi,174:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.exclamationToken)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},173:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.questionToken)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)},176:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},177:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},178:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},262:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},218:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.asteriskToken)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.body)},219:function(e,t,r){return al(t,r,e.modifiers)||al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)||wi(t,e.equalsGreaterThanToken)||wi(t,e.body)},175:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.body)},183:function(e,t,r){return wi(t,e.typeName)||al(t,r,e.typeArguments)},182:function(e,t,r){return wi(t,e.assertsModifier)||wi(t,e.parameterName)||wi(t,e.type)},186:function(e,t,r){return wi(t,e.exprName)||al(t,r,e.typeArguments)},187:function(e,t,r){return al(t,r,e.members)},188:function(e,t,r){return wi(t,e.elementType)},189:function(e,t,r){return al(t,r,e.elements)},192:fSi,193:fSi,194:function(e,t,r){return wi(t,e.checkType)||wi(t,e.extendsType)||wi(t,e.trueType)||wi(t,e.falseType)},195:function(e,t,r){return wi(t,e.typeParameter)},205:function(e,t,r){return wi(t,e.argument)||wi(t,e.attributes)||wi(t,e.qualifier)||al(t,r,e.typeArguments)},302:function(e,t,r){return wi(t,e.assertClause)},196:ISi,198:ISi,199:function(e,t,r){return wi(t,e.objectType)||wi(t,e.indexType)},200:function(e,t,r){return wi(t,e.readonlyToken)||wi(t,e.typeParameter)||wi(t,e.nameType)||wi(t,e.questionToken)||wi(t,e.type)||al(t,r,e.members)},201:function(e,t,r){return wi(t,e.literal)},202:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.name)||wi(t,e.questionToken)||wi(t,e.type)},206:hSi,207:hSi,209:function(e,t,r){return al(t,r,e.elements)},210:function(e,t,r){return al(t,r,e.properties)},211:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.name)},212:function(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||wi(t,e.argumentExpression)},213:mSi,214:mSi,215:function(e,t,r){return wi(t,e.tag)||wi(t,e.questionDotToken)||al(t,r,e.typeArguments)||wi(t,e.template)},216:function(e,t,r){return wi(t,e.type)||wi(t,e.expression)},217:function(e,t,r){return wi(t,e.expression)},220:function(e,t,r){return wi(t,e.expression)},221:function(e,t,r){return wi(t,e.expression)},222:function(e,t,r){return wi(t,e.expression)},224:function(e,t,r){return wi(t,e.operand)},229:function(e,t,r){return wi(t,e.asteriskToken)||wi(t,e.expression)},223:function(e,t,r){return wi(t,e.expression)},225:function(e,t,r){return wi(t,e.operand)},226:function(e,t,r){return wi(t,e.left)||wi(t,e.operatorToken)||wi(t,e.right)},234:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},235:function(e,t,r){return wi(t,e.expression)},238:function(e,t,r){return wi(t,e.expression)||wi(t,e.type)},236:function(e,t,r){return wi(t,e.name)},227:function(e,t,r){return wi(t,e.condition)||wi(t,e.questionToken)||wi(t,e.whenTrue)||wi(t,e.colonToken)||wi(t,e.whenFalse)},230:function(e,t,r){return wi(t,e.expression)},241:CSi,268:CSi,307:function(e,t,r){return al(t,r,e.statements)||wi(t,e.endOfFileToken)},243:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.declarationList)},261:function(e,t,r){return al(t,r,e.declarations)},244:function(e,t,r){return wi(t,e.expression)},245:function(e,t,r){return wi(t,e.expression)||wi(t,e.thenStatement)||wi(t,e.elseStatement)},246:function(e,t,r){return wi(t,e.statement)||wi(t,e.expression)},247:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},248:function(e,t,r){return wi(t,e.initializer)||wi(t,e.condition)||wi(t,e.incrementor)||wi(t,e.statement)},249:function(e,t,r){return wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},250:function(e,t,r){return wi(t,e.awaitModifier)||wi(t,e.initializer)||wi(t,e.expression)||wi(t,e.statement)},251:_Si,252:_Si,253:function(e,t,r){return wi(t,e.expression)},254:function(e,t,r){return wi(t,e.expression)||wi(t,e.statement)},255:function(e,t,r){return wi(t,e.expression)||wi(t,e.caseBlock)},269:function(e,t,r){return al(t,r,e.clauses)},296:function(e,t,r){return wi(t,e.expression)||al(t,r,e.statements)},297:function(e,t,r){return al(t,r,e.statements)},256:function(e,t,r){return wi(t,e.label)||wi(t,e.statement)},257:function(e,t,r){return wi(t,e.expression)},258:function(e,t,r){return wi(t,e.tryBlock)||wi(t,e.catchClause)||wi(t,e.finallyBlock)},299:function(e,t,r){return wi(t,e.variableDeclaration)||wi(t,e.block)},170:function(e,t,r){return wi(t,e.expression)},263:ySi,231:ySi,264:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.heritageClauses)||al(t,r,e.members)},265:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||wi(t,e.type)},266:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.members)},306:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},267:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.body)},271:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||wi(t,e.moduleReference)},272:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},273:function(e,t,r){return wi(t,e.name)||wi(t,e.namedBindings)},300:function(e,t,r){return al(t,r,e.elements)},301:function(e,t,r){return wi(t,e.name)||wi(t,e.value)},270:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)},274:function(e,t,r){return wi(t,e.name)},280:function(e,t,r){return wi(t,e.name)},275:bSi,279:bSi,278:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.exportClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)},276:ESi,281:ESi,277:function(e,t,r){return al(t,r,e.modifiers)||wi(t,e.expression)},228:function(e,t,r){return wi(t,e.head)||al(t,r,e.templateSpans)},239:function(e,t,r){return wi(t,e.expression)||wi(t,e.literal)},203:function(e,t,r){return wi(t,e.head)||al(t,r,e.templateSpans)},204:function(e,t,r){return wi(t,e.type)||wi(t,e.literal)},167:function(e,t,r){return wi(t,e.expression)},298:function(e,t,r){return al(t,r,e.types)},233:function(e,t,r){return wi(t,e.expression)||al(t,r,e.typeArguments)},283:function(e,t,r){return wi(t,e.expression)},282:function(e,t,r){return al(t,r,e.modifiers)},356:function(e,t,r){return al(t,r,e.elements)},284:function(e,t,r){return wi(t,e.openingElement)||al(t,r,e.children)||wi(t,e.closingElement)},288:function(e,t,r){return wi(t,e.openingFragment)||al(t,r,e.children)||wi(t,e.closingFragment)},285:SSi,286:SSi,292:function(e,t,r){return al(t,r,e.properties)},291:function(e,t,r){return wi(t,e.name)||wi(t,e.initializer)},293:function(e,t,r){return wi(t,e.expression)},294:function(e,t,r){return wi(t,e.dotDotDotToken)||wi(t,e.expression)},287:function(e,t,r){return wi(t,e.tagName)},295:function(e,t,r){return wi(t,e.namespace)||wi(t,e.name)},190:Dme,191:Dme,309:Dme,315:Dme,314:Dme,316:Dme,318:Dme,317:function(e,t,r){return al(t,r,e.parameters)||wi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:al(t,r,e.comment))||al(t,r,e.tags)},347:function(e,t,r){return wi(t,e.tagName)||wi(t,e.name)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},310:function(e,t,r){return wi(t,e.name)},311:function(e,t,r){return wi(t,e.left)||wi(t,e.right)},341:vSi,348:vSi,330:function(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},329:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},328:function(e,t,r){return wi(t,e.tagName)||wi(t,e.class)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},345:function(e,t,r){return wi(t,e.tagName)||wi(t,e.constraint)||al(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},346:function(e,t,r){return wi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?wi(t,e.typeExpression)||wi(t,e.fullName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment)):wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment)))},338:function(e,t,r){return wi(t,e.tagName)||wi(t,e.fullName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))},342:kme,344:kme,343:kme,340:kme,350:kme,349:kme,339:kme,323:function(e,t,r){return hO(e.typeParameters,t)||hO(e.parameters,t)||wi(t,e.type)},324:eNr,325:eNr,326:eNr,322:function(e,t,r){return hO(e.jsDocPropertyTags,t)},327:Ice,332:Ice,333:Ice,334:Ice,335:Ice,336:Ice,331:Ice,337:Ice,351:stc,355:otc};function pSi(e,t,r){return al(t,r,e.typeParameters)||al(t,r,e.parameters)||wi(t,e.type)}function fSi(e,t,r){return al(t,r,e.types)}function ISi(e,t,r){return wi(t,e.type)}function hSi(e,t,r){return al(t,r,e.elements)}function mSi(e,t,r){return wi(t,e.expression)||wi(t,e.questionDotToken)||al(t,r,e.typeArguments)||al(t,r,e.arguments)}function CSi(e,t,r){return al(t,r,e.statements)}function _Si(e,t,r){return wi(t,e.label)}function ySi(e,t,r){return al(t,r,e.modifiers)||wi(t,e.name)||al(t,r,e.typeParameters)||al(t,r,e.heritageClauses)||al(t,r,e.members)}function bSi(e,t,r){return al(t,r,e.elements)}function ESi(e,t,r){return wi(t,e.propertyName)||wi(t,e.name)}function SSi(e,t,r){return wi(t,e.tagName)||al(t,r,e.typeArguments)||wi(t,e.attributes)}function Dme(e,t,r){return wi(t,e.type)}function vSi(e,t,r){return wi(t,e.tagName)||(e.isNameFirst?wi(t,e.name)||wi(t,e.typeExpression):wi(t,e.typeExpression)||wi(t,e.name))||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function kme(e,t,r){return wi(t,e.tagName)||wi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function eNr(e,t,r){return wi(t,e.name)}function Ice(e,t,r){return wi(t,e.tagName)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function stc(e,t,r){return wi(t,e.tagName)||wi(t,e.importClause)||wi(t,e.moduleSpecifier)||wi(t,e.attributes)||(typeof e.comment=="string"?void 0:al(t,r,e.comment))}function otc(e,t,r){return wi(t,e.expression)}function Ok(e,t,r){if(e===void 0||e.kind<=165)return;let n=itc[e.kind];return n===void 0?void 0:n(e,t,r)}function BSi(e,t,r){let n=wSi(e),a=[];for(;a.length=0;--A)n.push(o[A]),a.push(l)}else{let A=t(o,l);if(A){if(A==="skip")continue;return A}if(o.kind>=166)for(let f of wSi(o))n.push(f),a.push(o)}}}function wSi(e){let t=[];return Ok(e,r,r),t;function r(n){t.unshift(n)}}function wBi(e){e.externalModuleIndicator=$ec(e)}function atc(e,t,r,n=!1,a){var o,l;(o=Fbt)==null||o.push(Fbt.Phase.Parse,"createSourceFile",{path:e},!0),R2i("beforeParse");let A,{languageVersion:f,setExternalModuleIndicator:I,impliedNodeFormat:C,jsDocParsingMode:b}=typeof r=="object"?r:{languageVersion:r};if(f===100)A=Mme.parseSourceFile(e,t,f,void 0,n,6,RNe,b);else{let E=C===void 0?I:N=>(N.impliedNodeFormat=C,(I||wBi)(N));A=Mme.parseSourceFile(e,t,f,void 0,n,a,E,b)}return R2i("afterParse"),I7a("Parse","beforeParse","afterParse"),(l=Fbt)==null||l.pop(),A}function ctc(e){return e.externalModuleIndicator!==void 0}function ltc(e,t,r,n=!1){let a=qbt.updateSourceFile(e,t,r,n);return a.flags|=e.flags&12582912,a}var Mme;(e=>{var t=WNr(99,!0),r=40960,n,a,o,l,A;function f(tt){return _n++,tt}var I={createBaseSourceFileNode:tt=>f(new A(tt,0,0)),createBaseIdentifierNode:tt=>f(new o(tt,0,0)),createBasePrivateIdentifierNode:tt=>f(new l(tt,0,0)),createBaseTokenNode:tt=>f(new a(tt,0,0)),createBaseNode:tt=>f(new n(tt,0,0))},C=eDr(11,I),{createNodeArray:b,createNumericLiteral:E,createStringLiteral:N,createLiteralLikeNode:B,createIdentifier:F,createPrivateIdentifier:Q,createToken:X,createArrayLiteralExpression:ae,createObjectLiteralExpression:ne,createPropertyAccessExpression:ce,createPropertyAccessChain:fe,createElementAccessExpression:ue,createElementAccessChain:de,createCallExpression:be,createCallChain:Se,createNewExpression:De,createParenthesizedExpression:k,createBlock:et,createVariableStatement:ct,createExpressionStatement:Me,createIfStatement:je,createWhileStatement:St,createForStatement:At,createForOfStatement:Yt,createVariableDeclaration:Tr,createVariableDeclarationList:Nr}=C,er,vt,xt,Zr,qt,Xt,lr,cr,Ar,qr,_n,ke,jt,Fn,Nn,Hi,po=!0,Vr=!1;function xi(tt,Jt,kr,Xr,ui=!1,Is,Hs,Rs=0){var ja;if(Is=c$a(tt,Is),Is===6){let sl=ga(tt,Jt,kr,Xr,ui);return convertToJson(sl,(ja=sl.statements[0])==null?void 0:ja.expression,sl.parseDiagnostics,!1,void 0),sl.referencedFiles=x2,sl.typeReferenceDirectives=x2,sl.libReferenceDirectives=x2,sl.amdDependencies=x2,sl.hasNoDefaultLib=!1,sl.pragmas=M6a,sl}Ya(tt,Jt,kr,Xr,Is,Rs);let ho=cl(kr,ui,Is,Hs||wBi,Rs);return Gc(),ho}e.parseSourceFile=xi;function io(tt,Jt){Ya("",tt,Jt,void 0,1,0),Vs();let kr=se(!0),Xr=Wt()===1&&!lr.length;return Gc(),Xr?kr:void 0}e.parseIsolatedEntityName=io;function ga(tt,Jt,kr=2,Xr,ui=!1){Ya(tt,Jt,kr,Xr,6,0),vt=Hi,Vs();let Is=Ri(),Hs,Rs;if(Wt()===1)Hs=Er([],Is,Is),Rs=ZA();else{let sl;for(;Wt()!==1;){let Og;switch(Wt()){case 23:Og=ag();break;case 112:case 97:case 106:Og=ZA();break;case 41:oo(()=>Vs()===9&&Vs()!==59)?Og=ey():Og=n1();break;case 9:case 11:if(oo(()=>Vs()!==59)){Og=ra();break}default:Og=n1();break}sl&&Tee(sl)?sl.push(Og):sl?sl=[sl,Og]:(sl=Og,Wt()!==1&&Da(ts.Unexpected_token))}let Nd=Tee(sl)?Zt(ae(sl),Is):Zo.checkDefined(sl),ed=Me(Nd);Zt(ed,Is),Hs=Er([ed],Is),Rs=il(1,ts.Unexpected_token)}let ja=zr(tt,2,6,!1,Hs,Rs,vt,RNe);ui&&Ft(ja),ja.nodeCount=_n,ja.identifierCount=jt,ja.identifiers=ke,ja.parseDiagnostics=Nme(lr,ja),cr&&(ja.jsDocDiagnostics=Nme(cr,ja));let ho=ja;return Gc(),ho}e.parseJsonText=ga;function Ya(tt,Jt,kr,Xr,ui,Is){switch(n=k2.getNodeConstructor(),a=k2.getTokenConstructor(),o=k2.getIdentifierConstructor(),l=k2.getPrivateIdentifierConstructor(),A=k2.getSourceFileConstructor(),er=R7a(tt),xt=Jt,Zr=kr,Ar=Xr,qt=ui,Xt=K2i(ui),lr=[],Fn=0,ke=new Map,jt=0,_n=0,vt=0,po=!0,qt){case 1:case 2:Hi=524288;break;case 6:Hi=134742016;break;default:Hi=0;break}Vr=!1,t.setText(xt),t.setOnError(Qh),t.setScriptTarget(Zr),t.setLanguageVariant(Xt),t.setScriptKind(qt),t.setJSDocParsingMode(Is)}function Gc(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),xt=void 0,Zr=void 0,Ar=void 0,qt=void 0,Xt=void 0,vt=0,lr=void 0,cr=void 0,Fn=0,ke=void 0,Nn=void 0,po=!0}function cl(tt,Jt,kr,Xr,ui){let Is=Atc(er);Is&&(Hi|=33554432),vt=Hi,Vs();let Hs=jd(0,Am);Zo.assert(Wt()===1);let Rs=Do(),ja=Hr(ZA(),Rs),ho=zr(er,tt,kr,Is,Hs,ja,vt,Xr);return ftc(ho,xt),Itc(ho,sl),ho.commentDirectives=t.getCommentDirectives(),ho.nodeCount=_n,ho.identifierCount=jt,ho.identifiers=ke,ho.parseDiagnostics=Nme(lr,ho),ho.jsDocParsingMode=ui,cr&&(ho.jsDocDiagnostics=Nme(cr,ho)),Jt&&Ft(ho),ho;function sl(Nd,ed,Og){lr.push(dNe(er,xt,Nd,ed,Og))}}let Sc=!1;function Hr(tt,Jt){if(!Jt)return tt;Zo.assert(!tt.jsDoc);let kr=X6a(iqa(tt,xt),Xr=>aY.parseJSDocComment(tt,Xr.pos,Xr.end-Xr.pos));return kr.length&&(tt.jsDoc=kr),Sc&&(Sc=!1,tt.flags|=536870912),tt}function Wr(tt){let Jt=Ar,kr=qbt.createSyntaxCursor(tt);Ar={currentNode:sl};let Xr=[],ui=lr;lr=[];let Is=0,Hs=ja(tt.statements,0);for(;Hs!==-1;){let Nd=tt.statements[Is],ed=tt.statements[Hs];_V(Xr,tt.statements,Is,Hs),Is=ho(tt.statements,Hs);let Og=YRr(ui,o1=>o1.start>=Nd.pos),Nh=Og>=0?YRr(ui,o1=>o1.start>=ed.pos,Og):-1;Og>=0&&_V(lr,ui,Og,Nh>=0?Nh:void 0),oA(()=>{let o1=Hi;for(Hi|=65536,t.resetTokenState(ed.pos),Vs();Wt()!==1;){let Tb=t.getTokenFullStart(),q2=dh(0,Am);if(Xr.push(q2),Tb===t.getTokenFullStart()&&Vs(),Is>=0){let IE=tt.statements[Is];if(q2.end===IE.pos)break;q2.end>IE.pos&&(Is=ho(tt.statements,Is+1))}}Hi=o1},2),Hs=Is>=0?ja(tt.statements,Is):-1}if(Is>=0){let Nd=tt.statements[Is];_V(Xr,tt.statements,Is);let ed=YRr(ui,Og=>Og.start>=Nd.pos);ed>=0&&_V(lr,ui,ed)}return Ar=Jt,C.updateSourceFile(tt,zZ(b(Xr),tt.statements));function Rs(Nd){return!(Nd.flags&65536)&&!!(Nd.transformFlags&67108864)}function ja(Nd,ed){for(let Og=ed;Og118}function Xs(){return Wt()===80?!0:Wt()===127&&Yl()||Wt()===135&&Xu()?!1:Wt()>118}function ws(tt,Jt,kr=!0){return Wt()===tt?(kr&&Vs(),!0):(Jt?Da(Jt):Da(ts._0_expected,by(tt)),!1)}let Gs=Object.keys(LNr).filter(tt=>tt.length>2);function Ma(tt){if(cec(tt)){_g(dj(xt,tt.template.pos),tt.template.end,ts.Module_declaration_names_may_only_use_or_quoted_strings);return}let Jt=$C(tt)?yV(tt):void 0;if(!Jt||!z7a(Jt,Zr)){Da(ts._0_expected,by(27));return}let kr=dj(xt,tt.pos);switch(Jt){case"const":case"let":case"var":_g(kr,tt.end,ts.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Dc(ts.Interface_name_cannot_be_0,ts.Interface_must_be_given_a_name,19);return;case"is":_g(kr,t.getTokenStart(),ts.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Dc(ts.Namespace_name_cannot_be_0,ts.Namespace_must_be_given_a_name,19);return;case"type":Dc(ts.Type_alias_name_cannot_be_0,ts.Type_alias_must_be_given_a_name,64);return}let Xr=cJe(Jt,Gs,VE)??As(Jt);if(Xr){_g(kr,tt.end,ts.Unknown_keyword_or_identifier_Did_you_mean_0,Xr);return}Wt()!==0&&_g(kr,tt.end,ts.Unexpected_keyword_or_identifier)}function Dc(tt,Jt,kr){Wt()===kr?Da(Jt):Da(tt,t.getTokenValue())}function As(tt){for(let Jt of Gs)if(tt.length>Jt.length+2&&Obt(tt,Jt))return`${Jt} ${tt.slice(Jt.length)}`}function Tf(tt,Jt,kr){if(Wt()===60&&!t.hasPrecedingLineBreak()){Da(ts.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Wt()===21){Da(ts.Cannot_start_a_function_call_in_a_type_annotation),Vs();return}if(Jt&&!yg()){kr?Da(ts._0_expected,by(27)):Da(ts.Expected_for_property_initializer);return}if(!Mp()){if(kr){Da(ts._0_expected,by(27));return}Ma(tt)}}function cm(tt){return Wt()===tt?(Ju(),!0):(Zo.assert(URr(tt)),Da(ts._0_expected,by(tt)),!1)}function Fl(tt,Jt,kr,Xr){if(Wt()===Jt){Vs();return}let ui=Da(ts._0_expected,by(Jt));kr&&ui&&Dbt(ui,dNe(er,xt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,by(tt),by(Jt)))}function rc(tt){return Wt()===tt?(Vs(),!0):!1}function sd(tt){if(Wt()===tt)return ZA()}function Om(tt){if(Wt()===tt)return El()}function il(tt,Jt,kr){return sd(tt)||yn(tt,!1,Jt||ts._0_expected,kr||by(tt))}function FA(tt){return Om(tt)||(Zo.assert(URr(tt)),yn(tt,!1,ts._0_expected,by(tt)))}function ZA(){let tt=Ri(),Jt=Wt();return Vs(),Zt(X(Jt),tt)}function El(){let tt=Ri(),Jt=Wt();return Ju(),Zt(X(Jt),tt)}function yg(){return Wt()===27?!0:Wt()===20||Wt()===1||t.hasPrecedingLineBreak()}function Mp(){return yg()?(Wt()===27&&Vs(),!0):!1}function MA(){return Mp()||ws(27)}function Er(tt,Jt,kr,Xr){let ui=b(tt,Xr);return Ece(ui,Jt,kr??t.getTokenFullStart()),ui}function Zt(tt,Jt,kr){return Ece(tt,Jt,kr??t.getTokenFullStart()),Hi&&(tt.flags|=Hi),Vr&&(Vr=!1,tt.flags|=262144),tt}function yn(tt,Jt,kr,...Xr){Jt?pu(t.getTokenFullStart(),0,kr,...Xr):kr&&Da(kr,...Xr);let ui=Ri(),Is=tt===80?F("",void 0):W2i(tt)?C.createTemplateLiteralLikeNode(tt,"","",void 0):tt===9?E("",void 0):tt===11?N("",void 0):tt===282?C.createMissingDeclaration():X(tt);return Zt(Is,ui)}function ls(tt){let Jt=ke.get(tt);return Jt===void 0&&ke.set(tt,Jt=tt),Jt}function oa(tt,Jt,kr){if(tt){jt++;let Rs=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():Ri(),ja=Wt(),ho=ls(t.getTokenValue()),sl=t.hasExtendedUnicodeEscape();return Hu(),Zt(F(ho,ja,sl),Rs)}if(Wt()===81)return Da(kr||ts.Private_identifiers_are_not_allowed_outside_class_bodies),oa(!0);if(Wt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return oa(!0);jt++;let Xr=Wt()===1,ui=t.isReservedWord(),Is=t.getTokenText(),Hs=ui?ts.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ts.Identifier_expected;return yn(80,Xr,Jt||Hs,Is)}function Fs(tt){return oa(cc(),void 0,tt)}function Wa(tt,Jt){return oa(Xs(),tt,Jt)}function Ca(tt){return oa(H1(Wt()),tt)}function ld(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&Da(ts.Unicode_escape_sequence_cannot_appear_here),oa(H1(Wt()))}function Rp(){return H1(Wt())||Wt()===11||Wt()===9||Wt()===10}function np(){return H1(Wt())||Wt()===11}function HA(tt){if(Wt()===11||Wt()===9||Wt()===10){let Jt=ra();return Jt.text=ls(Jt.text),Jt}return tt&&Wt()===23?Zs():Wt()===81?so():Ca()}function df(){return HA(!0)}function Zs(){let tt=Ri();ws(23);let Jt=gc($A);return ws(24),Zt(C.createComputedPropertyName(Jt),tt)}function so(){let tt=Ri(),Jt=Q(ls(t.getTokenValue()));return Vs(),Zt(Jt,tt)}function Ea(tt){return Wt()===tt&&Ki(Dr)}function Ml(){return Vs(),t.hasPrecedingLineBreak()?!1:Bo()}function Dr(){switch(Wt()){case 87:return Vs()===94;case 95:return Vs(),Wt()===90?oo(Ql):Wt()===156?oo(di):Wn();case 90:return Ql();case 126:return Vs(),Bo();case 139:case 153:return Vs(),us();default:return Ml()}}function Wn(){return Wt()===60||Wt()!==42&&Wt()!==130&&Wt()!==19&&Bo()}function di(){return Vs(),Wn()}function aa(){return vee(Wt())&&Ki(Dr)}function Bo(){return Wt()===23||Wt()===19||Wt()===42||Wt()===26||Rp()}function us(){return Wt()===23||Rp()}function Ql(){return Vs(),Wt()===86||Wt()===100||Wt()===120||Wt()===60||Wt()===128&&oo(Dp)||Wt()===134&&oo(t2)}function LA(tt,Jt){if(Hp(tt))return!0;switch(tt){case 0:case 1:case 3:return!(Wt()===27&&Jt)&&Xc();case 2:return Wt()===84||Wt()===90;case 4:return oo(gm);case 5:return oo(bL)||Wt()===27&&!Jt;case 6:return Wt()===23||Rp();case 12:switch(Wt()){case 23:case 42:case 26:case 25:return!0;default:return Rp()}case 18:return Rp();case 9:return Wt()===23||Wt()===26||Rp();case 24:return np();case 7:return Wt()===19?oo(pf):Jt?Xs()&&!j1():US()&&!j1();case 8:return i1();case 10:return Wt()===28||Wt()===26||i1();case 19:return Wt()===103||Wt()===87||Xs();case 15:switch(Wt()){case 28:case 25:return!0}case 11:return Wt()===26||$I();case 16:return NC(!1);case 17:return NC(!0);case 20:case 21:return Wt()===28||ut();case 22:return rn();case 23:return Wt()===161&&oo(Cx)?!1:Wt()===11?!0:H1(Wt());case 13:return H1(Wt())||Wt()===19;case 14:return!0;case 25:return!0;case 26:return Zo.fail("ParsingContext.Count used as a context");default:Zo.assertNever(tt,"Non-exhaustive case in 'isListElement'.")}}function pf(){if(Zo.assert(Wt()===19),Vs()===20){let tt=Vs();return tt===28||tt===19||tt===96||tt===119}return!0}function ef(){return Vs(),Xs()}function ip(){return Vs(),H1(Wt())}function _d(){return Vs(),N7a(Wt())}function j1(){return Wt()===119||Wt()===96?oo(pw):!1}function pw(){return Vs(),$I()}function YA(){return Vs(),ut()}function Ac(tt){if(Wt()===1)return!0;switch(tt){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Wt()===20;case 3:return Wt()===20||Wt()===84||Wt()===90;case 7:return Wt()===19||Wt()===96||Wt()===119;case 8:return Nm();case 19:return Wt()===32||Wt()===21||Wt()===19||Wt()===96||Wt()===119;case 11:return Wt()===22||Wt()===27;case 15:case 21:case 10:return Wt()===24;case 17:case 16:case 18:return Wt()===22||Wt()===24;case 20:return Wt()!==28;case 22:return Wt()===19||Wt()===20;case 13:return Wt()===32||Wt()===44;case 14:return Wt()===30&&oo(tv);default:return!1}}function Nm(){return!!(yg()||qE(Wt())||Wt()===39)}function HS(){Zo.assert(Fn,"Missing parsing context");for(let tt=0;tt<26;tt++)if(Fn&1<=0)}function CI(tt){return tt===6?ts.An_enum_member_name_must_be_followed_by_a_or:void 0}function _I(){let tt=Er([],Ri());return tt.isMissingList=!0,tt}function H2(tt){return!!tt.isMissingList}function iE(tt,Jt,kr,Xr){if(ws(kr)){let ui=Kf(tt,Jt);return ws(Xr),ui}return _I()}function se(tt,Jt){let kr=Ri(),Xr=tt?Ca(Jt):Wa(Jt);for(;rc(25)&&Wt()!==30;)Xr=Zt(C.createQualifiedName(Xr,K(tt,!1,!0)),kr);return Xr}function O(tt,Jt){return Zt(C.createQualifiedName(tt,Jt),tt.pos)}function K(tt,Jt,kr){if(t.hasPrecedingLineBreak()&&H1(Wt())&&oo(Dm))return yn(80,!0,ts.Identifier_expected);if(Wt()===81){let Xr=so();return Jt?Xr:yn(80,!0,ts.Identifier_expected)}return tt?kr?Ca():ld():Wa()}function we(tt){let Jt=Ri(),kr=[],Xr;do Xr=$n(tt),kr.push(Xr);while(Xr.literal.kind===17);return Er(kr,Jt)}function gt(tt){let Jt=Ri();return Zt(C.createTemplateExpression(kc(tt),we(tt)),Jt)}function sr(){let tt=Ri();return Zt(C.createTemplateLiteralType(kc(!1),Yr()),tt)}function Yr(){let tt=Ri(),Jt=[],kr;do kr=Lr(),Jt.push(kr);while(kr.literal.kind===17);return Er(Jt,tt)}function Lr(){let tt=Ri();return Zt(C.createTemplateLiteralTypeSpan(tf(),fi(!1)),tt)}function fi(tt){return Wt()===20?(OA(tt),Nl()):il(18,ts._0_expected,by(20))}function $n(tt){let Jt=Ri();return Zt(C.createTemplateSpan(gc($A),fi(tt)),Jt)}function ra(){return Bl(Wt())}function kc(tt){!tt&&t.getTokenFlags()&26656&&OA(!1);let Jt=Bl(Wt());return Zo.assert(Jt.kind===16,"Template head has wrong token kind"),Jt}function Nl(){let tt=Bl(Wt());return Zo.assert(tt.kind===17||tt.kind===18,"Template fragment has wrong token kind"),tt}function ca(tt){let Jt=tt===15||tt===18,kr=t.getTokenText();return kr.substring(1,kr.length-(t.isUnterminated()?0:Jt?1:2))}function Bl(tt){let Jt=Ri(),kr=W2i(tt)?C.createTemplateLiteralLikeNode(tt,t.getTokenValue(),ca(tt),t.getTokenFlags()&7176):tt===9?E(t.getTokenValue(),t.getNumericLiteralFlags()):tt===11?N(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):wza(tt)?B(tt,t.getTokenValue()):Zo.fail();return t.hasExtendedUnicodeEscape()&&(kr.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(kr.isUnterminated=!0),Vs(),Zt(kr,Jt)}function $g(){return se(!0,ts.Type_expected)}function SA(){if(!t.hasPrecedingLineBreak()&&GA()===30)return iE(20,tf,30,32)}function lI(){let tt=Ri();return Zt(C.createTypeReferenceNode($g(),SA()),tt)}function lp(tt){switch(tt.kind){case 183:return Wme(tt.typeName);case 184:case 185:{let{parameters:Jt,type:kr}=tt;return H2(Jt)||lp(kr)}case 196:return lp(tt.type);default:return!1}}function Ib(tt){return Vs(),Zt(C.createTypePredicateNode(void 0,tt,tf()),tt.pos)}function Na(){let tt=Ri();return Vs(),Zt(C.createThisTypeNode(),tt)}function wd(){let tt=Ri();return Vs(),Zt(C.createJSDocAllType(),tt)}function z1(){let tt=Ri();return Vs(),Zt(C.createJSDocNonNullableType(xc(),!1),tt)}function T_(){let tt=Ri();return Vs(),Wt()===28||Wt()===20||Wt()===22||Wt()===32||Wt()===64||Wt()===52?Zt(C.createJSDocUnknownType(),tt):Zt(C.createJSDocNullableType(tf(),!1),tt)}function RC(){let tt=Ri(),Jt=Do();if(Ki(_x)){let kr=Mc(36),Xr=ph(59,!1);return Hr(Zt(C.createJSDocFunctionType(kr,Xr),tt),Jt)}return Zt(C.createTypeReferenceNode(Ca(),void 0),tt)}function Hm(){let tt=Ri(),Jt;return(Wt()===110||Wt()===105)&&(Jt=Ca(),ws(59)),Zt(C.createParameterDeclaration(void 0,void 0,Jt,void 0,YS(),void 0),tt)}function YS(){t.setSkipJsDocLeadingAsterisks(!0);let tt=Ri();if(rc(144)){let Xr=C.createJSDocNamepathType(void 0);e:for(;;)switch(Wt()){case 20:case 1:case 28:case 5:break e;default:Ju()}return t.setSkipJsDocLeadingAsterisks(!1),Zt(Xr,tt)}let Jt=rc(26),kr=jE();return t.setSkipJsDocLeadingAsterisks(!1),Jt&&(kr=Zt(C.createJSDocVariadicType(kr),tt)),Wt()===64?(Vs(),Zt(C.createJSDocOptionalType(kr),tt)):kr}function Fg(){let tt=Ri();ws(114);let Jt=se(!0),kr=t.hasPrecedingLineBreak()?void 0:xn();return Zt(C.createTypeQueryNode(Jt,kr),tt)}function hb(){let tt=Ri(),Jt=Le(!1,!0),kr=Wa(),Xr,ui;rc(96)&&(ut()||!$I()?Xr=tf():ui=JR());let Is=rc(64)?tf():void 0,Hs=C.createTypeParameterDeclaration(Jt,kr,Xr,Is);return Hs.expression=ui,Zt(Hs,tt)}function gC(){if(Wt()===30)return iE(19,hb,30,32)}function NC(tt){return Wt()===26||i1()||vee(Wt())||Wt()===60||ut(!tt)}function Y2(tt){let Jt=Of(ts.Private_identifiers_cannot_be_used_as_parameters);return $za(Jt)===0&&!oD(tt)&&vee(Wt())&&Vs(),Jt}function U_(){return cc()||Wt()===23||Wt()===19}function DC(tt){return qI(tt)}function kC(tt){return qI(tt,!1)}function qI(tt,Jt=!0){let kr=Ri(),Xr=Do(),ui=tt?li(()=>Le(!0)):Ei(()=>Le(!0));if(Wt()===110){let ja=C.createParameterDeclaration(ui,void 0,oa(!0),void 0,Ty(),void 0),ho=DNr(ui);return ho&&mI(ho,ts.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Hr(Zt(ja,kr),Xr)}let Is=po;po=!1;let Hs=sd(26);if(!Jt&&!U_())return;let Rs=Hr(Zt(C.createParameterDeclaration(ui,Hs,Y2(ui),sd(58),Ty(),Qm()),kr),Xr);return po=Is,Rs}function ph(tt,Jt){if(vA(tt,Jt))return Nc(jE)}function vA(tt,Jt){return tt===39?(ws(tt),!0):rc(59)?!0:Jt&&Wt()===39?(Da(ts._0_expected,by(59)),Vs(),!0):!1}function Td(tt,Jt){let kr=Yl(),Xr=Xu();Qi(!!(tt&1)),yo(!!(tt&2));let ui=tt&32?Kf(17,Hm):Kf(16,()=>Jt?DC(Xr):kC(Xr));return Qi(kr),yo(Xr),ui}function Mc(tt){if(!ws(21))return _I();let Jt=Td(tt,!0);return ws(22),Jt}function Pf(){rc(28)||MA()}function sE(tt){let Jt=Ri(),kr=Do();tt===180&&ws(105);let Xr=gC(),ui=Mc(4),Is=ph(59,!0);Pf();let Hs=tt===179?C.createCallSignature(Xr,ui,Is):C.createConstructSignature(Xr,ui,Is);return Hr(Zt(Hs,Jt),kr)}function eA(){return Wt()===23&&oo(QS)}function QS(){if(Vs(),Wt()===26||Wt()===24)return!0;if(vee(Wt())){if(Vs(),Xs())return!0}else if(Xs())Vs();else return!1;return Wt()===59||Wt()===28?!0:Wt()!==58?!1:(Vs(),Wt()===59||Wt()===28||Wt()===24)}function XS(tt,Jt,kr){let Xr=iE(16,()=>DC(!1),23,24),ui=Ty();Pf();let Is=C.createIndexSignature(kr,Xr,ui);return Hr(Zt(Is,tt),Jt)}function um(tt,Jt,kr){let Xr=df(),ui=sd(58),Is;if(Wt()===21||Wt()===30){let Hs=gC(),Rs=Mc(4),ja=ph(59,!0);Is=C.createMethodSignature(kr,Xr,ui,Hs,Rs,ja)}else{let Hs=Ty();Is=C.createPropertySignature(kr,Xr,ui,Hs),Wt()===64&&(Is.initializer=Qm())}return Pf(),Hr(Zt(Is,tt),Jt)}function gm(){if(Wt()===21||Wt()===30||Wt()===139||Wt()===153)return!0;let tt=!1;for(;vee(Wt());)tt=!0,Vs();return Wt()===23?!0:(Rp()&&(tt=!0,Vs()),tt?Wt()===21||Wt()===30||Wt()===58||Wt()===59||Wt()===28||yg():!1)}function cs(){if(Wt()===21||Wt()===30)return sE(179);if(Wt()===105&&oo(na))return sE(180);let tt=Ri(),Jt=Do(),kr=Le(!1);return Ea(139)?Bb(tt,Jt,kr,177,4):Ea(153)?Bb(tt,Jt,kr,178,4):eA()?XS(tt,Jt,kr):um(tt,Jt,kr)}function na(){return Vs(),Wt()===21||Wt()===30}function ko(){return Vs()===25}function ki(){switch(Vs()){case 21:case 30:case 25:return!0}return!1}function Kl(){let tt=Ri();return Zt(C.createTypeLiteralNode(fd()),tt)}function fd(){let tt;return ws(19)?(tt=jd(4,cs),ws(20)):tt=_I(),tt}function jf(){return Vs(),Wt()===40||Wt()===41?Vs()===148:(Wt()===148&&Vs(),Wt()===23&&ef()&&Vs()===103)}function Ld(){let tt=Ri(),Jt=Ca();ws(103);let kr=tf();return Zt(C.createTypeParameterDeclaration(void 0,Jt,kr,void 0),tt)}function AC(){let tt=Ri();ws(19);let Jt;(Wt()===148||Wt()===40||Wt()===41)&&(Jt=ZA(),Jt.kind!==148&&ws(148)),ws(23);let kr=Ld(),Xr=rc(130)?tf():void 0;ws(24);let ui;(Wt()===58||Wt()===40||Wt()===41)&&(ui=ZA(),ui.kind!==58&&ws(58));let Is=Ty();MA();let Hs=jd(4,cs);return ws(20),Zt(C.createMappedTypeNode(Jt,kr,Xr,ui,Is,Hs),tt)}function JE(){let tt=Ri();if(rc(26))return Zt(C.createRestTypeNode(tf()),tt);let Jt=tf();if(Bec(Jt)&&Jt.pos===Jt.type.pos){let kr=C.createOptionalTypeNode(Jt.type);return zZ(kr,Jt),kr.flags=Jt.flags,kr}return Jt}function Ym(){return Vs()===59||Wt()===58&&Vs()===59}function vy(){return Wt()===26?H1(Vs())&&Ym():H1(Wt())&&Ym()}function K_(){if(oo(vy)){let tt=Ri(),Jt=Do(),kr=sd(26),Xr=Ca(),ui=sd(58);ws(59);let Is=JE(),Hs=C.createNamedTupleMember(kr,Xr,ui,Is);return Hr(Zt(Hs,tt),Jt)}return JE()}function od(){let tt=Ri();return Zt(C.createTupleTypeNode(iE(21,K_,23,24)),tt)}function UE(){let tt=Ri();ws(21);let Jt=tf();return ws(22),Zt(C.createParenthesizedType(Jt),tt)}function KE(){let tt;if(Wt()===128){let Jt=Ri();Vs();let kr=Zt(X(128),Jt);tt=Er([kr],Jt)}return tt}function Yp(){let tt=Ri(),Jt=Do(),kr=KE(),Xr=rc(105);Zo.assert(!kr||Xr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let ui=gC(),Is=Mc(4),Hs=ph(39,!1),Rs=Xr?C.createConstructorTypeNode(kr,ui,Is,Hs):C.createFunctionTypeNode(ui,Is,Hs);return Hr(Zt(Rs,tt),Jt)}function JS(){let tt=ZA();return Wt()===25?void 0:tt}function By(tt){let Jt=Ri();tt&&Vs();let kr=Wt()===112||Wt()===97||Wt()===106?ZA():Bl(Wt());return tt&&(kr=Zt(C.createPrefixUnaryExpression(41,kr),Jt)),Zt(C.createLiteralTypeNode(kr),Jt)}function $0(){return Vs(),Wt()===102}function fw(){vt|=4194304;let tt=Ri(),Jt=rc(114);ws(102),ws(21);let kr=tf(),Xr;if(rc(28)){let Hs=t.getTokenStart();ws(19);let Rs=Wt();if(Rs===118||Rs===132?Vs():Da(ts._0_expected,by(118)),ws(59),Xr=$O(Rs,!0),!ws(20)){let ja=Vme(lr);ja&&ja.code===ts._0_expected.code&&Dbt(ja,dNe(er,xt,Hs,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ws(22);let ui=rc(25)?$g():void 0,Is=SA();return Zt(C.createImportTypeNode(kr,Xr,ui,Is,Jt),tt)}function Q2(){return Vs(),Wt()===9||Wt()===10}function xc(){switch(Wt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ki(JS)||lI();case 67:t.reScanAsteriskEqualsToken();case 42:return wd();case 61:t.reScanQuestionToken();case 58:return T_();case 100:return RC();case 54:return z1();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return By();case 41:return oo(Q2)?By(!0):lI();case 116:return ZA();case 110:{let tt=Na();return Wt()===142&&!t.hasPrecedingLineBreak()?Ib(tt):tt}case 114:return oo($0)?fw():Fg();case 19:return oo(jf)?AC():Kl();case 23:return od();case 21:return UE();case 102:return fw();case 131:return oo(Dm)?NT():lI();case 16:return sr();default:return lI()}}function ut(tt){switch(Wt()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!tt;case 41:return!tt&&oo(Q2);case 21:return!tt&&oo(ar);default:return Xs()}}function ar(){return Vs(),Wt()===22||NC(!1)||ut()}function Jr(){let tt=Ri(),Jt=xc();for(;!t.hasPrecedingLineBreak();)switch(Wt()){case 54:Vs(),Jt=Zt(C.createJSDocNonNullableType(Jt,!0),tt);break;case 58:if(oo(YA))return Jt;Vs(),Jt=Zt(C.createJSDocNullableType(Jt,!0),tt);break;case 23:if(ws(23),ut()){let kr=tf();ws(24),Jt=Zt(C.createIndexedAccessTypeNode(Jt,kr),tt)}else ws(24),Jt=Zt(C.createArrayTypeNode(Jt),tt);break;default:return Jt}return Jt}function Gn(tt){let Jt=Ri();return ws(tt),Zt(C.createTypeOperatorNode(tt,Ng()),Jt)}function Ts(){if(rc(96)){let tt=iA(tf);if(Sg()||Wt()!==58)return tt}}function Qo(){let tt=Ri(),Jt=Wa(),kr=Ki(Ts),Xr=C.createTypeParameterDeclaration(void 0,Jt,kr);return Zt(Xr,tt)}function vg(){let tt=Ri();return ws(140),Zt(C.createInferTypeNode(Qo()),tt)}function Ng(){let tt=Wt();switch(tt){case 143:case 158:case 148:return Gn(tt);case 140:return vg()}return Nc(Jr)}function Rf(tt){if(sB()){let Jt=Yp(),kr;return sBi(Jt)?kr=tt?ts.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:kr=tt?ts.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ts.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,mI(Jt,kr),Jt}}function uI(tt,Jt,kr){let Xr=Ri(),ui=tt===52,Is=rc(tt),Hs=Is&&Rf(ui)||Jt();if(Wt()===tt||Is){let Rs=[Hs];for(;rc(tt);)Rs.push(Rf(ui)||Jt());Hs=Zt(kr(Er(Rs,Xr)),Xr)}return Hs}function Th(){return uI(51,Ng,C.createIntersectionTypeNode)}function oE(){return uI(52,Th,C.createUnionTypeNode)}function TT(){return Vs(),Wt()===105}function sB(){return Wt()===30||Wt()===21&&oo(wy)?!0:Wt()===105||Wt()===128&&oo(TT)}function RT(){if(vee(Wt())&&Le(!1),Xs()||Wt()===110)return Vs(),!0;if(Wt()===23||Wt()===19){let tt=lr.length;return Of(),tt===lr.length}return!1}function wy(){return Vs(),!!(Wt()===22||Wt()===26||RT()&&(Wt()===59||Wt()===28||Wt()===58||Wt()===64||Wt()===22&&(Vs(),Wt()===39)))}function jE(){let tt=Ri(),Jt=Xs()&&Ki(j_),kr=tf();return Jt?Zt(C.createTypePredicateNode(void 0,Jt,kr),tt):kr}function j_(){let tt=Wa();if(Wt()===142&&!t.hasPrecedingLineBreak())return Vs(),tt}function NT(){let tt=Ri(),Jt=il(131),kr=Wt()===110?Na():Wa(),Xr=rc(142)?tf():void 0;return Zt(C.createTypePredicateNode(Jt,kr,Xr),tt)}function tf(){if(Hi&81920)return bo(81920,tf);if(sB())return Yp();let tt=Ri(),Jt=oE();if(!Sg()&&!t.hasPrecedingLineBreak()&&rc(96)){let kr=iA(tf);ws(58);let Xr=Nc(tf);ws(59);let ui=Nc(tf);return Zt(C.createConditionalTypeNode(Jt,kr,Xr,ui),tt)}return Jt}function Ty(){return rc(59)?tf():void 0}function US(){switch(Wt()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return oo(ki);default:return Xs()}}function $I(){if(US())return!0;switch(Wt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return kT()?!0:Xs()}}function BA(){return Wt()!==19&&Wt()!==100&&Wt()!==86&&Wt()!==60&&$I()}function $A(){let tt=Ul();tt&&ps(!1);let Jt=Ri(),kr=zf(!0),Xr;for(;Xr=sd(28);)kr=q1(kr,Xr,zf(!0),Jt);return tt&&ps(!0),kr}function Qm(){return rc(64)?zf(!0):void 0}function zf(tt){if(mb())return Cb();let Jt=KS(tt)||oB(tt);if(Jt)return Jt;let kr=Ri(),Xr=Do(),ui=zS(0);return ui.kind===80&&Wt()===39?Ry(kr,ui,tt,Xr,void 0):wNe(ui)&&Uvi(Ko())?q1(ui,ZA(),zf(tt),kr):XR(ui,kr,tt)}function mb(){return Wt()===127?Yl()?!0:oo(Ro):!1}function R_(){return Vs(),!t.hasPrecedingLineBreak()&&Xs()}function Cb(){let tt=Ri();return Vs(),!t.hasPrecedingLineBreak()&&(Wt()===42||$I())?Zt(C.createYieldExpression(sd(42),zf(!0)),tt):Zt(C.createYieldExpression(void 0,void 0),tt)}function Ry(tt,Jt,kr,Xr,ui){Zo.assert(Wt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Is=C.createParameterDeclaration(void 0,void 0,Jt,void 0,void 0,void 0);Zt(Is,Jt.pos);let Hs=Er([Is],Is.pos,Is.end),Rs=il(39),ja=jS(!!ui,kr),ho=C.createArrowFunction(ui,void 0,Hs,void 0,Rs,ja);return Hr(Zt(ho,tt),Xr)}function KS(tt){let Jt=_b();if(Jt!==0)return Jt===1?aB(!0,!0):Ki(()=>zE(tt))}function _b(){return Wt()===21||Wt()===30||Wt()===134?oo(z_):Wt()===39?1:0}function z_(){if(Wt()===134&&(Vs(),t.hasPrecedingLineBreak()||Wt()!==21&&Wt()!==30))return 0;let tt=Wt(),Jt=Vs();if(tt===21){if(Jt===22)switch(Vs()){case 39:case 59:case 19:return 1;default:return 0}if(Jt===23||Jt===19)return 2;if(Jt===26)return 1;if(vee(Jt)&&Jt!==134&&oo(ef))return Vs()===130?0:1;if(!Xs()&&Jt!==110)return 0;switch(Vs()){case 59:return 1;case 58:return Vs(),Wt()===59||Wt()===28||Wt()===64||Wt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return Zo.assert(tt===30),!Xs()&&Wt()!==87?0:Xt===1?oo(()=>{rc(87);let kr=Vs();if(kr===96)switch(Vs()){case 64:case 32:case 44:return!1;default:return!0}else if(kr===28||kr===64)return!0;return!1})?1:0:2}function zE(tt){let Jt=t.getTokenStart();if(Nn!=null&&Nn.has(Jt))return;let kr=aB(!1,tt);return kr||(Nn||(Nn=new Set)).add(Jt),kr}function oB(tt){if(Wt()===134&&oo(DT)===1){let Jt=Ri(),kr=Do(),Xr=ft(),ui=zS(0);return Ry(Jt,ui,tt,kr,Xr)}}function DT(){if(Wt()===134){if(Vs(),t.hasPrecedingLineBreak()||Wt()===39)return 0;let tt=zS(0);if(!t.hasPrecedingLineBreak()&&tt.kind===80&&Wt()===39)return 1}return 0}function aB(tt,Jt){let kr=Ri(),Xr=Do(),ui=ft(),Is=oD(ui,Gbt)?2:0,Hs=gC(),Rs;if(ws(21)){if(tt)Rs=Td(Is,tt);else{let Tb=Td(Is,tt);if(!Tb)return;Rs=Tb}if(!ws(22)&&!tt)return}else{if(!tt)return;Rs=_I()}let ja=Wt()===59,ho=ph(59,!1);if(ho&&!tt&&lp(ho))return;let sl=ho;for(;sl?.kind===196;)sl=sl.type;let Nd=sl&&wec(sl);if(!tt&&Wt()!==39&&(Nd||Wt()!==19))return;let ed=Wt(),Og=il(39),Nh=ed===39||ed===19?jS(oD(ui,Gbt),Jt):Wa();if(!Jt&&ja&&Wt()!==59)return;let o1=C.createArrowFunction(ui,Hs,Rs,ho,Og,Nh);return Hr(Zt(o1,kr),Xr)}function jS(tt,Jt){if(Wt()===19)return cE(tt?2:0);if(Wt()!==27&&Wt()!==100&&Wt()!==86&&Xc()&&!BA())return cE(16|(tt?2:0));let kr=po;po=!1;let Xr=tt?li(()=>zf(Jt)):Ei(()=>zf(Jt));return po=kr,Xr}function XR(tt,Jt,kr){let Xr=sd(58);if(!Xr)return tt;let ui;return Zt(C.createConditionalExpression(tt,Xr,bo(r,()=>zf(!1)),ui=il(59),ANr(ui)?zf(kr):yn(80,!1,ts._0_expected,by(59))),Jt)}function zS(tt){let Jt=Ri(),kr=JR();return X2(tt,kr,Jt)}function qE(tt){return tt===103||tt===165}function X2(tt,Jt,kr){for(;;){Ko();let Xr=KRr(Wt());if(!(Wt()===43?Xr>=tt:Xr>tt)||Wt()===103&&Wc())break;if(Wt()===130||Wt()===152){if(t.hasPrecedingLineBreak())break;{let ui=Wt();Vs(),Jt=ui===152?pn(Jt,tf()):J2(Jt,tf())}}else Jt=q1(Jt,ZA(),zS(Xr),kr)}return Jt}function kT(){return Wc()&&Wt()===103?!1:KRr(Wt())>0}function pn(tt,Jt){return Zt(C.createSatisfiesExpression(tt,Jt),tt.pos)}function q1(tt,Jt,kr,Xr){return Zt(C.createBinaryExpression(tt,Jt,kr),Xr)}function J2(tt,Jt){return Zt(C.createAsExpression(tt,Jt),tt.pos)}function ey(){let tt=Ri();return Zt(C.createPrefixUnaryExpression(Wt(),Ru(ty)),tt)}function up(){let tt=Ri();return Zt(C.createDeleteExpression(Ru(ty)),tt)}function Iw(){let tt=Ri();return Zt(C.createTypeOfExpression(Ru(ty)),tt)}function cB(){let tt=Ri();return Zt(C.createVoidExpression(Ru(ty)),tt)}function RD(){return Wt()===135?Xu()?!0:oo(Ro):!1}function Rd(){let tt=Ri();return Zt(C.createAwaitExpression(Ru(ty)),tt)}function JR(){if(cF()){let kr=Ri(),Xr=$1();return Wt()===43?X2(KRr(Wt()),Xr,kr):Xr}let tt=Wt(),Jt=ty();if(Wt()===43){let kr=dj(xt,Jt.pos),{end:Xr}=Jt;Jt.kind===216?_g(kr,Xr,ts.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(Zo.assert(URr(tt)),_g(kr,Xr,ts.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,by(tt)))}return Jt}function ty(){switch(Wt()){case 40:case 41:case 55:case 54:return ey();case 91:return up();case 114:return Iw();case 116:return cB();case 30:return Xt===1?t1(!0,void 0,void 0,!0):rf();case 135:if(RD())return Rd();default:return $1()}}function cF(){switch(Wt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Xt!==1)return!1;default:return!0}}function $1(){if(Wt()===46||Wt()===47){let Jt=Ri();return Zt(C.createPrefixUnaryExpression(Wt(),Ru($E)),Jt)}else if(Xt===1&&Wt()===30&&oo(_d))return t1(!0);let tt=$E();if(Zo.assert(wNe(tt)),(Wt()===46||Wt()===47)&&!t.hasPrecedingLineBreak()){let Jt=Wt();return Vs(),Zt(C.createPostfixUnaryExpression(tt,Jt),tt.pos)}return tt}function $E(){let tt=Ri(),Jt;return Wt()===102?oo(na)?(vt|=4194304,Jt=ZA()):oo(ko)?(Vs(),Vs(),Jt=Zt(C.createMetaProperty(102,Ca()),tt),vt|=8388608):Jt=N_():Jt=Wt()===108?e1():N_(),r1(tt,Jt)}function N_(){let tt=Ri(),Jt=b0();return Ih(tt,Jt,!0)}function e1(){let tt=Ri(),Jt=ZA();if(Wt()===30){let kr=Ri(),Xr=Ki(hw);Xr!==void 0&&(_g(kr,Ri(),ts.super_may_not_use_type_arguments),xC()||(Jt=C.createExpressionWithTypeArguments(Jt,Xr)))}return Wt()===21||Wt()===25||Wt()===23?Jt:(il(25,ts.super_must_be_followed_by_an_argument_list_or_member_access),Zt(ce(Jt,K(!0,!0,!0)),tt))}function t1(tt,Jt,kr,Xr=!1){let ui=Ri(),Is=Rh(tt),Hs;if(Is.kind===286){let Rs=yb(Is),ja,ho=Rs[Rs.length-1];if(ho?.kind===284&&!hce(ho.openingElement.tagName,ho.closingElement.tagName)&&hce(Is.tagName,ho.closingElement.tagName)){let sl=ho.children.end,Nd=Zt(C.createJsxElement(ho.openingElement,ho.children,Zt(C.createJsxClosingElement(Zt(F(""),sl,sl)),sl,sl)),ho.openingElement.pos,sl);Rs=Er([...Rs.slice(0,Rs.length-1),Nd],Rs.pos,sl),ja=ho.closingElement}else ja=lc(Is,tt),hce(Is.tagName,ja.tagName)||(kr&&rSi(kr)&&hce(ja.tagName,kr.tagName)?mI(Is.tagName,ts.JSX_element_0_has_no_corresponding_closing_tag,gJe(xt,Is.tagName)):mI(ja.tagName,ts.Expected_corresponding_JSX_closing_tag_for_0,gJe(xt,Is.tagName)));Hs=Zt(C.createJsxElement(Is,Rs,ja),ui)}else Is.kind===289?Hs=Zt(C.createJsxFragment(Is,yb(Is),fh(tt)),ui):(Zo.assert(Is.kind===285),Hs=Is);if(!Xr&&tt&&Wt()===30){let Rs=typeof Jt>"u"?Hs.pos:Jt,ja=Ki(()=>t1(!0,Rs));if(ja){let ho=yn(28,!1);return z2i(ho,ja.pos,0),_g(dj(xt,Rs),ja.end,ts.JSX_expressions_must_have_one_parent_element),Zt(C.createBinaryExpression(Hs,ho,ja),ui)}}return Hs}function ry(){let tt=Ri(),Jt=C.createJsxText(t.getTokenValue(),qr===13);return qr=t.scanJsxToken(),Zt(Jt,tt)}function xT(tt,Jt){switch(Jt){case 1:if(yec(tt))mI(tt,ts.JSX_fragment_has_no_corresponding_closing_tag);else{let kr=tt.tagName,Xr=Math.min(dj(xt,kr.pos),kr.end);_g(Xr,kr.end,ts.JSX_element_0_has_no_corresponding_closing_tag,gJe(xt,tt.tagName))}return;case 31:case 7:return;case 12:case 13:return ry();case 19:return ND(!1);case 30:return t1(!1,void 0,tt);default:return Zo.assertNever(Jt)}}function yb(tt){let Jt=[],kr=Ri(),Xr=Fn;for(Fn|=16384;;){let ui=xT(tt,qr=t.reScanJsxToken());if(!ui||(Jt.push(ui),rSi(tt)&&ui?.kind===284&&!hce(ui.openingElement.tagName,ui.closingElement.tagName)&&hce(tt.tagName,ui.closingElement.tagName)))break}return Fn=Xr,Er(Jt,kr)}function r_(){let tt=Ri();return Zt(C.createJsxAttributes(jd(13,DD)),tt)}function Rh(tt){let Jt=Ri();if(ws(30),Wt()===32)return Uf(),Zt(C.createJsxOpeningFragment(),Jt);let kr=bb(),Xr=Hi&524288?void 0:xn(),ui=r_(),Is;return Wt()===32?(Uf(),Is=C.createJsxOpeningElement(kr,Xr,ui)):(ws(44),ws(32,void 0,!1)&&(tt?Vs():Uf()),Is=C.createJsxSelfClosingElement(kr,Xr,ui)),Zt(Is,Jt)}function bb(){let tt=Ri(),Jt=lB();if(_Bi(Jt))return Jt;let kr=Jt;for(;rc(25);)kr=Zt(ce(kr,K(!0,!1,!1)),tt);return kr}function lB(){let tt=Ri();dl();let Jt=Wt()===110,kr=ld();return rc(59)?(dl(),Zt(C.createJsxNamespacedName(kr,ld()),tt)):Jt?Zt(C.createToken(110),tt):kr}function ND(tt){let Jt=Ri();if(!ws(19))return;let kr,Xr;return Wt()!==20&&(tt||(kr=sd(26)),Xr=$A()),tt?ws(20):ws(20,void 0,!1)&&Uf(),Zt(C.createJsxExpression(kr,Xr),Jt)}function DD(){if(Wt()===19)return UR();let tt=Ri();return Zt(C.createJsxAttribute(kD(),q_()),tt)}function q_(){if(Wt()===64){if(Kd()===11)return ra();if(Wt()===19)return ND(!0);if(Wt()===30)return t1(!0);Da(ts.or_JSX_element_expected)}}function kD(){let tt=Ri();dl();let Jt=ld();return rc(59)?(dl(),Zt(C.createJsxNamespacedName(Jt,ld()),tt)):Jt}function UR(){let tt=Ri();ws(19),ws(26);let Jt=$A();return ws(20),Zt(C.createJsxSpreadAttribute(Jt),tt)}function lc(tt,Jt){let kr=Ri();ws(31);let Xr=bb();return ws(32,void 0,!1)&&(Jt||!hce(tt.tagName,Xr)?Vs():Uf()),Zt(C.createJsxClosingElement(Xr),kr)}function fh(tt){let Jt=Ri();return ws(31),ws(32,ts.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(tt?Vs():Uf()),Zt(C.createJsxJsxClosingFragment(),Jt)}function rf(){Zo.assert(Xt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let tt=Ri();ws(30);let Jt=tf();ws(32);let kr=ty();return Zt(C.createTypeAssertion(Jt,kr),tt)}function yI(){return Vs(),H1(Wt())||Wt()===23||xC()}function aE(){return Wt()===29&&oo(yI)}function qS(tt){if(tt.flags&64)return!0;if(Vbt(tt)){let Jt=tt.expression;for(;Vbt(Jt)&&!(Jt.flags&64);)Jt=Jt.expression;if(Jt.flags&64){for(;Vbt(tt);)tt.flags|=64,tt=tt.expression;return!0}}return!1}function Qp(tt,Jt,kr){let Xr=K(!0,!0,!0),ui=kr||qS(Jt),Is=ui?fe(Jt,kr,Xr):ce(Jt,Xr);if(ui&&Yme(Is.name)&&mI(Is.name,ts.An_optional_chain_cannot_contain_private_identifiers),dec(Jt)&&Jt.typeArguments){let Hs=Jt.typeArguments.pos-1,Rs=dj(xt,Jt.typeArguments.end)+1;_g(Hs,Rs,ts.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Zt(Is,tt)}function uB(tt,Jt,kr){let Xr;if(Wt()===24)Xr=yn(80,!0,ts.An_element_access_expression_should_take_an_argument);else{let Is=gc($A);eEt(Is)&&(Is.text=ls(Is.text)),Xr=Is}ws(24);let ui=kr||qS(Jt)?de(Jt,kr,Xr):ue(Jt,Xr);return Zt(ui,tt)}function Ih(tt,Jt,kr){for(;;){let Xr,ui=!1;if(kr&&aE()?(Xr=il(29),ui=H1(Wt())):ui=rc(25),ui){Jt=Qp(tt,Jt,Xr);continue}if((Xr||!Ul())&&rc(23)){Jt=uB(tt,Jt,Xr);continue}if(xC()){Jt=!Xr&&Jt.kind===233?$_(tt,Jt.expression,Xr,Jt.typeArguments):$_(tt,Jt,Xr,void 0);continue}if(!Xr){if(Wt()===54&&!t.hasPrecedingLineBreak()){Vs(),Jt=Zt(C.createNonNullExpression(Jt),tt);continue}let Is=Ki(hw);if(Is){Jt=Zt(C.createExpressionWithTypeArguments(Jt,Is),tt);continue}}return Jt}}function xC(){return Wt()===15||Wt()===16}function $_(tt,Jt,kr,Xr){let ui=C.createTaggedTemplateExpression(Jt,Xr,Wt()===15?(OA(!0),ra()):gt(!0));return(kr||Jt.flags&64)&&(ui.flags|=64),ui.questionDotToken=kr,Zt(ui,tt)}function r1(tt,Jt){for(;;){Jt=Ih(tt,Jt,!0);let kr,Xr=sd(29);if(Xr&&(kr=Ki(hw),xC())){Jt=$_(tt,Jt,Xr,kr);continue}if(kr||Wt()===21){!Xr&&Jt.kind===233&&(kr=Jt.typeArguments,Jt=Jt.expression);let ui=gB(),Is=Xr||qS(Jt)?Se(Jt,Xr,kr,ui):be(Jt,kr,ui);Jt=Zt(Is,tt);continue}if(Xr){let ui=yn(80,!1,ts.Identifier_expected);Jt=Zt(fe(Jt,Xr,ui),tt)}break}return Jt}function gB(){ws(21);let tt=Kf(11,bI);return ws(22),tt}function hw(){if(Hi&524288||GA()!==30)return;Vs();let tt=Kf(20,tf);if(Ko()===32)return Vs(),tt&>()?tt:void 0}function GT(){switch(Wt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||kT()||!$I()}function b0(){switch(Wt()){case 15:t.getTokenFlags()&26656&&OA(!1);case 9:case 10:case 11:return ra();case 110:case 108:case 106:case 112:case 97:return ZA();case 21:return ia();case 23:return ag();case 19:return n1();case 134:if(!oo(t2))break;return U2();case 60:return Ur();case 86:return mi();case 100:return U2();case 105:return n_();case 44:case 69:if(Eg()===14)return ra();break;case 16:return gt(!1);case 81:return so()}return Wa(ts.Expression_expected)}function ia(){let tt=Ri(),Jt=Do();ws(21);let kr=gc($A);return ws(22),Hr(Zt(k(kr),tt),Jt)}function e2(){let tt=Ri();ws(26);let Jt=zf(!0);return Zt(C.createSpreadElement(Jt),tt)}function yd(){return Wt()===26?e2():Wt()===28?Zt(C.createOmittedExpression(),Ri()):zf(!0)}function bI(){return bo(r,yd)}function ag(){let tt=Ri(),Jt=t.getTokenStart(),kr=ws(23),Xr=t.hasPrecedingLineBreak(),ui=Kf(15,yd);return Fl(23,24,kr,Jt),Zt(ae(ui,Xr),tt)}function Eb(){let tt=Ri(),Jt=Do();if(sd(26)){let ho=zf(!0);return Hr(Zt(C.createSpreadAssignment(ho),tt),Jt)}let kr=Le(!0);if(Ea(139))return Bb(tt,Jt,kr,177,0);if(Ea(153))return Bb(tt,Jt,kr,178,0);let Xr=sd(42),ui=Xs(),Is=df(),Hs=sd(58),Rs=sd(54);if(Xr||Wt()===21||Wt()===30)return vb(tt,Jt,kr,Xr,Is,Hs,Rs);let ja;if(ui&&Wt()!==59){let ho=sd(64),sl=ho?gc(()=>zf(!0)):void 0;ja=C.createShorthandPropertyAssignment(Is,sl),ja.equalsToken=ho}else{ws(59);let ho=gc(()=>zf(!0));ja=C.createPropertyAssignment(Is,ho)}return ja.modifiers=kr,ja.questionToken=Hs,ja.exclamationToken=Rs,Hr(Zt(ja,tt),Jt)}function n1(){let tt=Ri(),Jt=t.getTokenStart(),kr=ws(19),Xr=t.hasPrecedingLineBreak(),ui=Kf(12,Eb,!0);return Fl(19,20,kr,Jt),Zt(ne(ui,Xr),tt)}function U2(){let tt=Ul();ps(!1);let Jt=Ri(),kr=Do(),Xr=Le(!1);ws(100);let ui=sd(42),Is=ui?1:0,Hs=oD(Xr,Gbt)?2:0,Rs=Is&&Hs?Ps(e0):Is?ma(e0):Hs?li(e0):e0(),ja=gC(),ho=Mc(Is|Hs),sl=ph(59,!1),Nd=cE(Is|Hs);ps(tt);let ed=C.createFunctionExpression(Xr,ui,Rs,ja,ho,sl,Nd);return Hr(Zt(ed,Jt),kr)}function e0(){return cc()?Fs():void 0}function n_(){let tt=Ri();if(ws(105),rc(25)){let Is=Ca();return Zt(C.createMetaProperty(105,Is),tt)}let Jt=Ri(),kr=Ih(Jt,b0(),!1),Xr;kr.kind===233&&(Xr=kr.typeArguments,kr=kr.expression),Wt()===29&&Da(ts.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,gJe(xt,kr));let ui=Wt()===21?gB():void 0;return Zt(De(kr,Xr,ui),tt)}function Xp(tt,Jt){let kr=Ri(),Xr=Do(),ui=t.getTokenStart(),Is=ws(19,Jt);if(Is||tt){let Hs=t.hasPrecedingLineBreak(),Rs=jd(1,Am);Fl(19,20,Is,ui);let ja=Hr(Zt(et(Rs,Hs),kr),Xr);return Wt()===64&&(Da(ts.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Vs()),ja}else{let Hs=_I();return Hr(Zt(et(Hs,void 0),kr),Xr)}}function cE(tt,Jt){let kr=Yl();Qi(!!(tt&1));let Xr=Xu();yo(!!(tt&2));let ui=po;po=!1;let Is=Ul();Is&&ps(!1);let Hs=Xp(!!(tt&16),Jt);return Is&&ps(!0),po=ui,Qi(kr),yo(Xr),Hs}function lE(){let tt=Ri(),Jt=Do();return ws(27),Hr(Zt(C.createEmptyStatement(),tt),Jt)}function Ip(){let tt=Ri(),Jt=Do();ws(101);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Am(),Hs=rc(93)?Am():void 0;return Hr(Zt(je(ui,Is,Hs),tt),Jt)}function Xh(){let tt=Ri(),Jt=Do();ws(92);let kr=Am();ws(117);let Xr=t.getTokenStart(),ui=ws(21),Is=gc($A);return Fl(21,22,ui,Xr),rc(27),Hr(Zt(C.createDoStatement(kr,Is),tt),Jt)}function E0(){let tt=Ri(),Jt=Do();ws(117);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Am();return Hr(Zt(St(ui,Is),tt),Jt)}function aA(){let tt=Ri(),Jt=Do();ws(99);let kr=sd(135);ws(21);let Xr;Wt()!==27&&(Wt()===115||Wt()===121||Wt()===87||Wt()===160&&oo(yL)||Wt()===135&&oo(ny)?Xr=j(!0):Xr=Cg($A));let ui;if(kr?ws(165):rc(165)){let Is=gc(()=>zf(!0));ws(22),ui=Yt(kr,Xr,Is,Am())}else if(rc(103)){let Is=gc($A);ws(22),ui=C.createForInStatement(Xr,Is,Am())}else{ws(27);let Is=Wt()!==27&&Wt()!==22?gc($A):void 0;ws(27);let Hs=Wt()!==22?gc($A):void 0;ws(22),ui=At(Xr,Is,Hs,Am())}return Hr(Zt(ui,tt),Jt)}function fu(tt){let Jt=Ri(),kr=Do();ws(tt===252?83:88);let Xr=yg()?void 0:Wa();MA();let ui=tt===252?C.createBreakStatement(Xr):C.createContinueStatement(Xr);return Hr(Zt(ui,Jt),kr)}function Jp(){let tt=Ri(),Jt=Do();ws(107);let kr=yg()?void 0:gc($A);return MA(),Hr(Zt(C.createReturnStatement(kr),tt),Jt)}function dC(){let tt=Ri(),Jt=Do();ws(118);let kr=t.getTokenStart(),Xr=ws(21),ui=gc($A);Fl(21,22,Xr,kr);let Is=Qa(67108864,Am);return Hr(Zt(C.createWithStatement(ui,Is),tt),Jt)}function uE(){let tt=Ri(),Jt=Do();ws(84);let kr=gc($A);ws(59);let Xr=jd(3,Am);return Hr(Zt(C.createCaseClause(kr,Xr),tt),Jt)}function eh(){let tt=Ri();ws(90),ws(59);let Jt=jd(3,Am);return Zt(C.createDefaultClause(Jt),tt)}function Wf(){return Wt()===84?uE():eh()}function Mo(){let tt=Ri();ws(19);let Jt=jd(2,Wf);return ws(20),Zt(C.createCaseBlock(Jt),tt)}function gp(){let tt=Ri(),Jt=Do();ws(109),ws(21);let kr=gc($A);ws(22);let Xr=Mo();return Hr(Zt(C.createSwitchStatement(kr,Xr),tt),Jt)}function lF(){let tt=Ri(),Jt=Do();ws(111);let kr=t.hasPrecedingLineBreak()?void 0:gc($A);return kr===void 0&&(jt++,kr=Zt(F(""),Ri())),Mp()||Ma(kr),Hr(Zt(C.createThrowStatement(kr),tt),Jt)}function uF(){let tt=Ri(),Jt=Do();ws(113);let kr=Xp(!1),Xr=Wt()===85?gE():void 0,ui;return(!Xr||Wt()===98)&&(ws(98,ts.catch_or_finally_expected),ui=Xp(!1)),Hr(Zt(C.createTryStatement(kr,Xr,ui),tt),Jt)}function gE(){let tt=Ri();ws(85);let Jt;rc(21)?(Jt=Vd(),ws(22)):Jt=void 0;let kr=Xp(!1);return Zt(C.createCatchClause(Jt,kr),tt)}function FT(){let tt=Ri(),Jt=Do();return ws(89),MA(),Hr(Zt(C.createDebuggerStatement(),tt),Jt)}function Np(){let tt=Ri(),Jt=Do(),kr,Xr=Wt()===21,ui=gc($A);return $C(ui)&&rc(59)?kr=C.createLabeledStatement(ui,Am()):(Mp()||Ma(ui),kr=Me(ui),Xr&&(Jt=!1)),Hr(Zt(kr,tt),Jt)}function Dm(){return Vs(),H1(Wt())&&!t.hasPrecedingLineBreak()}function Dp(){return Vs(),Wt()===86&&!t.hasPrecedingLineBreak()}function t2(){return Vs(),Wt()===100&&!t.hasPrecedingLineBreak()}function Ro(){return Vs(),(H1(Wt())||Wt()===9||Wt()===10||Wt()===11)&&!t.hasPrecedingLineBreak()}function AE(){for(;;)switch(Wt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return Ou();case 135:return hp();case 120:case 156:return R_();case 144:case 145:return qf();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let tt=Wt();if(Vs(),t.hasPrecedingLineBreak())return!1;if(tt===138&&Wt()===156)return!0;continue;case 162:return Vs(),Wt()===19||Wt()===80||Wt()===95;case 102:return Vs(),Wt()===11||Wt()===42||Wt()===19||H1(Wt());case 95:let Jt=Vs();if(Jt===156&&(Jt=oo(Vs)),Jt===64||Jt===42||Jt===19||Jt===90||Jt===130||Jt===60)return!0;continue;case 126:Vs();continue;default:return!1}}function AB(){return oo(AE)}function Xc(){switch(Wt()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return AB()||oo(ki);case 87:case 95:return AB();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return AB()||!oo(Dm);default:return $I()}}function iu(){return Vs(),cc()||Wt()===19||Wt()===23}function dE(){return oo(iu)}function yL(){return KR(!0)}function KR(tt){return Vs(),tt&&Wt()===165?!1:(cc()||Wt()===19)&&!t.hasPrecedingLineBreak()}function Ou(){return oo(KR)}function ny(tt){return Vs()===160?KR(tt):!1}function hp(){return oo(ny)}function Am(){switch(Wt()){case 27:return lE();case 19:return Xp(!1);case 115:return Id(Ri(),Do(),void 0);case 121:if(dE())return Id(Ri(),Do(),void 0);break;case 135:if(hp())return Id(Ri(),Do(),void 0);break;case 160:if(Ou())return Id(Ri(),Do(),void 0);break;case 100:return fB(Ri(),Do(),void 0);case 86:return Vi(Ri(),Do(),void 0);case 101:return Ip();case 92:return Xh();case 117:return E0();case 99:return aA();case 88:return fu(251);case 83:return fu(252);case 107:return Jp();case 118:return dC();case 109:return gp();case 111:return lF();case 113:case 85:case 98:return uF();case 89:return FT();case 60:return i_();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(AB())return i_();break}return Np()}function K2(tt){return tt.kind===138}function i_(){let tt=Ri(),Jt=Do(),kr=Le(!0);if(oD(kr,K2)){let Xr=dB(tt);if(Xr)return Xr;for(let ui of kr)ui.flags|=33554432;return Qa(33554432,()=>ZT(tt,Jt,kr))}else return ZT(tt,Jt,kr)}function dB(tt){return Qa(33554432,()=>{let Jt=Hp(Fn,tt);if(Jt)return uC(Jt)})}function ZT(tt,Jt,kr){switch(Wt()){case 115:case 121:case 87:case 160:case 135:return Id(tt,Jt,kr);case 100:return fB(tt,Jt,kr);case 86:return Vi(tt,Jt,kr);case 120:return Po(tt,Jt,kr);case 156:return ec(tt,Jt,kr);case 94:return dc(tt,Jt,kr);case 162:case 144:case 145:return $f(tt,Jt,kr);case 102:return qO(tt,Jt,kr);case 95:switch(Vs(),Wt()){case 90:case 64:return sY(tt,Jt,kr);case 130:return Yu(tt,Jt,kr);default:return iy(tt,Jt,kr)}default:if(kr){let Xr=yn(282,!0,ts.Declaration_expected);return pNr(Xr,tt),Xr.modifiers=kr,Xr}return}}function Cx(){return Vs()===11}function pB(){return Vs(),Wt()===161||Wt()===64}function qf(){return Vs(),!t.hasPrecedingLineBreak()&&(Xs()||Wt()===11)}function Jh(tt,Jt){if(Wt()!==19){if(tt&4){Pf();return}if(yg()){MA();return}}return cE(tt,Jt)}function $S(){let tt=Ri();if(Wt()===28)return Zt(C.createOmittedExpression(),tt);let Jt=sd(26),kr=Of(),Xr=Qm();return Zt(C.createBindingElement(Jt,void 0,kr,Xr),tt)}function Sb(){let tt=Ri(),Jt=sd(26),kr=cc(),Xr=df(),ui;kr&&Wt()!==59?(ui=Xr,Xr=void 0):(ws(59),ui=Of());let Is=Qm();return Zt(C.createBindingElement(Jt,Xr,ui,Is),tt)}function mp(){let tt=Ri();ws(19);let Jt=gc(()=>Kf(9,Sb));return ws(20),Zt(C.createObjectBindingPattern(Jt),tt)}function r2(){let tt=Ri();ws(23);let Jt=gc(()=>Kf(10,$S));return ws(24),Zt(C.createArrayBindingPattern(Jt),tt)}function i1(){return Wt()===19||Wt()===23||Wt()===81||cc()}function Of(tt){return Wt()===23?r2():Wt()===19?mp():Fs(tt)}function pE(){return Vd(!0)}function Vd(tt){let Jt=Ri(),kr=Do(),Xr=Of(ts.Private_identifiers_are_not_allowed_in_variable_declarations),ui;tt&&Xr.kind===80&&Wt()===54&&!t.hasPrecedingLineBreak()&&(ui=ZA());let Is=Ty(),Hs=qE(Wt())?void 0:Qm(),Rs=Tr(Xr,ui,Is,Hs);return Hr(Zt(Rs,Jt),kr)}function j(tt){let Jt=Ri(),kr=0;switch(Wt()){case 115:break;case 121:kr|=1;break;case 87:kr|=2;break;case 160:kr|=4;break;case 135:Zo.assert(hp()),kr|=6,Vs();break;default:Zo.fail()}Vs();let Xr;if(Wt()===165&&oo(Z))Xr=_I();else{let ui=Wc();Or(tt),Xr=Kf(8,tt?Vd:pE),Or(ui)}return Zt(Nr(Xr,kr),Jt)}function Z(){return ef()&&Vs()===22}function Id(tt,Jt,kr){let Xr=j(!1);MA();let ui=ct(kr,Xr);return Hr(Zt(ui,tt),Jt)}function fB(tt,Jt,kr){let Xr=Xu(),ui=fO(kr);ws(100);let Is=sd(42),Hs=ui&2048?e0():Fs(),Rs=Is?1:0,ja=ui&1024?2:0,ho=gC();ui&32&&yo(!0);let sl=Mc(Rs|ja),Nd=ph(59,!1),ed=Jh(Rs|ja,ts.or_expected);yo(Xr);let Og=C.createFunctionDeclaration(kr,Is,Hs,ho,sl,Nd,ed);return Hr(Zt(Og,tt),Jt)}function ev(){if(Wt()===137)return ws(137);if(Wt()===11&&oo(Vs)===21)return Ki(()=>{let tt=ra();return tt.text==="constructor"?tt:void 0})}function Ny(tt,Jt,kr){return Ki(()=>{if(ev()){let Xr=gC(),ui=Mc(0),Is=ph(59,!1),Hs=Jh(0,ts.or_expected),Rs=C.createConstructorDeclaration(kr,ui,Hs);return Rs.typeParameters=Xr,Rs.type=Is,Hr(Zt(Rs,tt),Jt)}})}function vb(tt,Jt,kr,Xr,ui,Is,Hs,Rs){let ja=Xr?1:0,ho=oD(kr,Gbt)?2:0,sl=gC(),Nd=Mc(ja|ho),ed=ph(59,!1),Og=Jh(ja|ho,Rs),Nh=C.createMethodDeclaration(kr,Xr,ui,Is,sl,Nd,ed,Og);return Nh.exclamationToken=Hs,Hr(Zt(Nh,tt),Jt)}function xD(tt,Jt,kr,Xr,ui){let Is=!ui&&!t.hasPrecedingLineBreak()?sd(54):void 0,Hs=Ty(),Rs=bo(90112,Qm);Tf(Xr,Hs,Rs);let ja=C.createPropertyDeclaration(kr,Xr,ui||Is,Hs,Rs);return Hr(Zt(ja,tt),Jt)}function IB(tt,Jt,kr){let Xr=sd(42),ui=df(),Is=sd(58);return Xr||Wt()===21||Wt()===30?vb(tt,Jt,kr,Xr,ui,Is,void 0,ts.or_expected):xD(tt,Jt,kr,ui,Is)}function Bb(tt,Jt,kr,Xr,ui){let Is=df(),Hs=gC(),Rs=Mc(0),ja=ph(59,!1),ho=Jh(ui),sl=Xr===177?C.createGetAccessorDeclaration(kr,Is,Rs,ja,ho):C.createSetAccessorDeclaration(kr,Is,Rs,ho);return sl.typeParameters=Hs,jbt(sl)&&(sl.type=ja),Hr(Zt(sl,tt),Jt)}function bL(){let tt;if(Wt()===60)return!0;for(;vee(Wt());){if(tt=Wt(),Nza(tt))return!0;Vs()}if(Wt()===42||(Rp()&&(tt=Wt(),Vs()),Wt()===23))return!0;if(tt!==void 0){if(!Cce(tt)||tt===153||tt===139)return!0;switch(Wt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return yg()}}return!1}function gF(tt,Jt,kr){il(126);let Xr=x(),ui=Hr(Zt(C.createClassStaticBlockDeclaration(Xr),tt),Jt);return ui.modifiers=kr,ui}function x(){let tt=Yl(),Jt=Xu();Qi(!1),yo(!0);let kr=Xp(!1);return Qi(tt),yo(Jt),kr}function L(){if(Xu()&&Wt()===135){let tt=Ri(),Jt=Wa(ts.Expression_expected);Vs();let kr=Ih(tt,Jt,!0);return r1(tt,kr)}return $E()}function te(){let tt=Ri();if(!rc(60))return;let Jt=vu(L);return Zt(C.createDecorator(Jt),tt)}function Re(tt,Jt,kr){let Xr=Ri(),ui=Wt();if(Wt()===87&&Jt){if(!Ki(Ml))return}else if(kr&&Wt()===126&&oo(z2)||tt&&Wt()===126||!aa())return;return Zt(X(ui),Xr)}function Le(tt,Jt,kr){let Xr=Ri(),ui,Is,Hs,Rs=!1,ja=!1,ho=!1;if(tt&&Wt()===60)for(;Is=te();)ui=mV(ui,Is);for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=mV(ui,Hs),ja=!0;if(ja&&tt&&Wt()===60)for(;Is=te();)ui=mV(ui,Is),ho=!0;if(ho)for(;Hs=Re(Rs,Jt,kr);)Hs.kind===126&&(Rs=!0),ui=mV(ui,Hs);return ui&&Er(ui,Xr)}function ft(){let tt;if(Wt()===134){let Jt=Ri();Vs();let kr=Zt(X(134),Jt);tt=Er([kr],Jt)}return tt}function dr(){let tt=Ri(),Jt=Do();if(Wt()===27)return Vs(),Hr(Zt(C.createSemicolonClassElement(),tt),Jt);let kr=Le(!0,!0,!0);if(Wt()===126&&oo(z2))return gF(tt,Jt,kr);if(Ea(139))return Bb(tt,Jt,kr,177,0);if(Ea(153))return Bb(tt,Jt,kr,178,0);if(Wt()===137||Wt()===11){let Xr=Ny(tt,Jt,kr);if(Xr)return Xr}if(eA())return XS(tt,Jt,kr);if(H1(Wt())||Wt()===11||Wt()===9||Wt()===10||Wt()===42||Wt()===23)if(oD(kr,K2)){for(let Xr of kr)Xr.flags|=33554432;return Qa(33554432,()=>IB(tt,Jt,kr))}else return IB(tt,Jt,kr);if(kr){let Xr=yn(80,!0,ts.Declaration_expected);return xD(tt,Jt,kr,Xr,void 0)}return Zo.fail("Should not have attempted to parse class member declaration.")}function Ur(){let tt=Ri(),Jt=Do(),kr=Le(!0);if(Wt()===86)return Ta(tt,Jt,kr,231);let Xr=yn(282,!0,ts.Expression_expected);return pNr(Xr,tt),Xr.modifiers=kr,Xr}function mi(){return Ta(Ri(),Do(),void 0,231)}function Vi(tt,Jt,kr){return Ta(tt,Jt,kr,263)}function Ta(tt,Jt,kr,Xr){let ui=Xu();ws(86);let Is=Sl(),Hs=gC();oD(kr,G$a)&&yo(!0);let Rs=Wg(),ja;ws(19)?(ja=Ci(),ws(20)):ja=_I(),yo(ui);let ho=Xr===263?C.createClassDeclaration(kr,Is,Hs,Rs,ja):C.createClassExpression(kr,Is,Hs,Rs,ja);return Hr(Zt(ho,tt),Jt)}function Sl(){return cc()&&!Ho()?oa(cc()):void 0}function Ho(){return Wt()===119&&oo(ip)}function Wg(){if(rn())return jd(22,cA)}function cA(){let tt=Ri(),Jt=Wt();Zo.assert(Jt===96||Jt===119),Vs();let kr=Kf(7,th);return Zt(C.createHeritageClause(Jt,kr),tt)}function th(){let tt=Ri(),Jt=$E();if(Jt.kind===233)return Jt;let kr=xn();return Zt(C.createExpressionWithTypeArguments(Jt,kr),tt)}function xn(){return Wt()===30?iE(20,tf,30,32):void 0}function rn(){return Wt()===96||Wt()===119}function Ci(){return jd(5,dr)}function Po(tt,Jt,kr){ws(120);let Xr=Wa(),ui=gC(),Is=Wg(),Hs=fd(),Rs=C.createInterfaceDeclaration(kr,Xr,ui,Is,Hs);return Hr(Zt(Rs,tt),Jt)}function ec(tt,Jt,kr){ws(156),t.hasPrecedingLineBreak()&&Da(ts.Line_break_not_permitted_here);let Xr=Wa(),ui=gC();ws(64);let Is=Wt()===141&&Ki(JS)||tf();MA();let Hs=C.createTypeAliasDeclaration(kr,Xr,ui,Is);return Hr(Zt(Hs,tt),Jt)}function Ra(){let tt=Ri(),Jt=Do(),kr=df(),Xr=gc(Qm);return Hr(Zt(C.createEnumMember(kr,Xr),tt),Jt)}function dc(tt,Jt,kr){ws(94);let Xr=Wa(),ui;ws(19)?(ui=Xa(()=>Kf(6,Ra)),ws(20)):ui=_I();let Is=C.createEnumDeclaration(kr,Xr,ui);return Hr(Zt(Is,tt),Jt)}function Iu(){let tt=Ri(),Jt;return ws(19)?(Jt=jd(1,Am),ws(20)):Jt=_I(),Zt(C.createModuleBlock(Jt),tt)}function Cl(tt,Jt,kr,Xr){let ui=Xr&32,Is=Xr&8?Ca():Wa(),Hs=rc(25)?Cl(Ri(),!1,void 0,8|ui):Iu(),Rs=C.createModuleDeclaration(kr,Is,Hs,Xr);return Hr(Zt(Rs,tt),Jt)}function wl(tt,Jt,kr){let Xr=0,ui;Wt()===162?(ui=Wa(),Xr|=2048):(ui=ra(),ui.text=ls(ui.text));let Is;Wt()===19?Is=Iu():MA();let Hs=C.createModuleDeclaration(kr,ui,Is,Xr);return Hr(Zt(Hs,tt),Jt)}function $f(tt,Jt,kr){let Xr=0;if(Wt()===162)return wl(tt,Jt,kr);if(rc(145))Xr|=32;else if(ws(144),Wt()===11)return wl(tt,Jt,kr);return Cl(tt,Jt,kr,Xr)}function j2(){return Wt()===149&&oo(_x)}function _x(){return Vs()===21}function z2(){return Vs()===19}function tv(){return Vs()===44}function Yu(tt,Jt,kr){ws(130),ws(145);let Xr=Wa();MA();let ui=C.createNamespaceExportDeclaration(Xr);return ui.modifiers=kr,Hr(Zt(ui,tt),Jt)}function qO(tt,Jt,kr){ws(102);let Xr=t.getTokenFullStart(),ui;Xs()&&(ui=Wa());let Is=!1;if(ui?.escapedText==="type"&&(Wt()!==161||Xs()&&oo(pB))&&(Xs()||iY())&&(Is=!0,ui=Xs()?Wa():void 0),ui&&!LT())return GD(tt,Jt,kr,ui,Is);let Hs=hB(ui,Xr,Is),Rs=FD(),ja=mw();MA();let ho=C.createImportDeclaration(kr,Hs,Rs,ja);return Hr(Zt(ho,tt),Jt)}function hB(tt,Jt,kr,Xr=!1){let ui;return(tt||Wt()===42||Wt()===19)&&(ui=dF(tt,Jt,kr,Xr),ws(161)),ui}function mw(){let tt=Wt();if((tt===118||tt===132)&&!t.hasPrecedingLineBreak())return $O(tt)}function AF(){let tt=Ri(),Jt=H1(Wt())?Ca():Bl(11);ws(59);let kr=zf(!0);return Zt(C.createImportAttribute(Jt,kr),tt)}function $O(tt,Jt){let kr=Ri();Jt||ws(tt);let Xr=t.getTokenStart();if(ws(19)){let ui=t.hasPrecedingLineBreak(),Is=Kf(24,AF,!0);if(!ws(20)){let Hs=Vme(lr);Hs&&Hs.code===ts._0_expected.code&&Dbt(Hs,dNe(er,xt,Xr,1,ts.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Zt(C.createImportAttributes(Is,ui,tt),kr)}else{let ui=Er([],Ri(),void 0,!1);return Zt(C.createImportAttributes(ui,!1,tt),kr)}}function iY(){return Wt()===42||Wt()===19}function LT(){return Wt()===28||Wt()===161}function GD(tt,Jt,kr,Xr,ui){ws(64);let Is=EL();MA();let Hs=C.createImportEqualsDeclaration(kr,ui,Xr,Is);return Hr(Zt(Hs,tt),Jt)}function dF(tt,Jt,kr,Xr){let ui;return(!tt||rc(28))&&(Xr&&t.setSkipJsDocLeadingAsterisks(!0),ui=Wt()===42?fE():bd(275),Xr&&t.setSkipJsDocLeadingAsterisks(!1)),Zt(C.createImportClause(kr,tt,ui),Jt)}function EL(){return j2()?ff():se(!1)}function ff(){let tt=Ri();ws(149),ws(21);let Jt=FD();return ws(22),Zt(C.createExternalModuleReference(Jt),tt)}function FD(){if(Wt()===11){let tt=ra();return tt.text=ls(tt.text),tt}else return $A()}function fE(){let tt=Ri();ws(42),ws(130);let Jt=Wa();return Zt(C.createNamespaceImport(Jt),tt)}function n2(){return H1(Wt())||Wt()===11}function mB(tt){return Wt()===11?ra():tt()}function bd(tt){let Jt=Ri(),kr=tt===275?C.createNamedImports(iE(23,Uh,19,20)):C.createNamedExports(iE(23,s1,19,20));return Zt(kr,Jt)}function s1(){let tt=Do();return Hr(wb(281),tt)}function Uh(){return wb(276)}function wb(tt){let Jt=Ri(),kr=Cce(Wt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Is=!1,Hs,Rs=!0,ja=mB(Ca);if(ja.kind===80&&ja.escapedText==="type")if(Wt()===130){let Nd=Ca();if(Wt()===130){let ed=Ca();n2()?(Is=!0,Hs=Nd,ja=mB(sl),Rs=!1):(Hs=ja,ja=ed,Rs=!1)}else n2()?(Hs=ja,Rs=!1,ja=mB(sl)):(Is=!0,ja=Nd)}else n2()&&(Is=!0,ja=mB(sl));Rs&&Wt()===130&&(Hs=ja,ws(130),ja=mB(sl)),tt===276&&(ja.kind!==80?(_g(dj(xt,ja.pos),ja.end,ts.Identifier_expected),ja=Ece(yn(80,!1),ja.pos,ja.pos)):kr&&_g(Xr,ui,ts.Identifier_expected));let ho=tt===276?C.createImportSpecifier(Is,Hs,ja):C.createExportSpecifier(Is,Hs,ja);return Zt(ho,Jt);function sl(){return kr=Cce(Wt())&&!Xs(),Xr=t.getTokenStart(),ui=t.getTokenEnd(),Ca()}}function Uu(tt){return Zt(C.createNamespaceExport(mB(Ca)),tt)}function iy(tt,Jt,kr){let Xr=Xu();yo(!0);let ui,Is,Hs,Rs=rc(156),ja=Ri();rc(42)?(rc(130)&&(ui=Uu(ja)),ws(161),Is=FD()):(ui=bd(279),(Wt()===161||Wt()===11&&!t.hasPrecedingLineBreak())&&(ws(161),Is=FD()));let ho=Wt();Is&&(ho===118||ho===132)&&!t.hasPrecedingLineBreak()&&(Hs=$O(ho)),MA(),yo(Xr);let sl=C.createExportDeclaration(kr,Rs,ui,Is,Hs);return Hr(Zt(sl,tt),Jt)}function sY(tt,Jt,kr){let Xr=Xu();yo(!0);let ui;rc(64)?ui=!0:ws(90);let Is=zf(!0);MA(),yo(Xr);let Hs=C.createExportAssignment(kr,ui,Is);return Hr(Zt(Hs,tt),Jt)}let oY;(tt=>{tt[tt.SourceElements=0]="SourceElements",tt[tt.BlockStatements=1]="BlockStatements",tt[tt.SwitchClauses=2]="SwitchClauses",tt[tt.SwitchClauseStatements=3]="SwitchClauseStatements",tt[tt.TypeMembers=4]="TypeMembers",tt[tt.ClassMembers=5]="ClassMembers",tt[tt.EnumMembers=6]="EnumMembers",tt[tt.HeritageClauseElement=7]="HeritageClauseElement",tt[tt.VariableDeclarations=8]="VariableDeclarations",tt[tt.ObjectBindingElements=9]="ObjectBindingElements",tt[tt.ArrayBindingElements=10]="ArrayBindingElements",tt[tt.ArgumentExpressions=11]="ArgumentExpressions",tt[tt.ObjectLiteralMembers=12]="ObjectLiteralMembers",tt[tt.JsxAttributes=13]="JsxAttributes",tt[tt.JsxChildren=14]="JsxChildren",tt[tt.ArrayLiteralMembers=15]="ArrayLiteralMembers",tt[tt.Parameters=16]="Parameters",tt[tt.JSDocParameters=17]="JSDocParameters",tt[tt.RestProperties=18]="RestProperties",tt[tt.TypeParameters=19]="TypeParameters",tt[tt.TypeArguments=20]="TypeArguments",tt[tt.TupleElementTypes=21]="TupleElementTypes",tt[tt.HeritageClauses=22]="HeritageClauses",tt[tt.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",tt[tt.ImportAttributes=24]="ImportAttributes",tt[tt.JSDocComment=25]="JSDocComment",tt[tt.Count=26]="Count"})(oY||(oY={}));let jR;(tt=>{tt[tt.False=0]="False",tt[tt.True=1]="True",tt[tt.Unknown=2]="Unknown"})(jR||(jR={}));let aY;(tt=>{function Jt(ho,sl,Nd){Ya("file.js",ho,99,void 0,1,0),t.setText(ho,sl,Nd),qr=t.scan();let ed=kr(),Og=zr("file.js",99,1,!1,[],X(1),0,RNe),Nh=Nme(lr,Og);return cr&&(Og.jsDocDiagnostics=Nme(cr,Og)),Gc(),ed?{jsDocTypeExpression:ed,diagnostics:Nh}:void 0}tt.parseJSDocTypeExpressionForTests=Jt;function kr(ho){let sl=Ri(),Nd=(ho?rc:ws)(19),ed=Qa(16777216,YS);(!ho||Nd)&&cm(20);let Og=C.createJSDocTypeExpression(ed);return Ft(Og),Zt(Og,sl)}tt.parseJSDocTypeExpression=kr;function Xr(){let ho=Ri(),sl=rc(19),Nd=Ri(),ed=se(!1);for(;Wt()===81;)$i(),Ju(),ed=Zt(C.createJSDocMemberName(ed,Wa()),Nd);sl&&cm(20);let Og=C.createJSDocNameReference(ed);return Ft(Og),Zt(Og,ho)}tt.parseJSDocNameReference=Xr;function ui(ho,sl,Nd){Ya("",ho,99,void 0,1,0);let ed=Qa(16777216,()=>ja(sl,Nd)),Og=Nme(lr,{languageVariant:0,text:ho});return Gc(),ed?{jsDoc:ed,diagnostics:Og}:void 0}tt.parseIsolatedJSDocComment=ui;function Is(ho,sl,Nd){let ed=qr,Og=lr.length,Nh=Vr,o1=Qa(16777216,()=>ja(sl,Nd));return $Nr(o1,ho),Hi&524288&&(cr||(cr=[]),_V(cr,lr,Og)),qr=ed,lr.length=Og,Vr=Nh,o1}tt.parseJSDocComment=Is;let Hs;(ho=>{ho[ho.BeginningOfLine=0]="BeginningOfLine",ho[ho.SawAsterisk=1]="SawAsterisk",ho[ho.SavingComments=2]="SavingComments",ho[ho.SavingBackticks=3]="SavingBackticks"})(Hs||(Hs={}));let Rs;(ho=>{ho[ho.Property=1]="Property",ho[ho.Parameter=2]="Parameter",ho[ho.CallbackParameter=4]="CallbackParameter"})(Rs||(Rs={}));function ja(ho=0,sl){let Nd=xt,ed=sl===void 0?Nd.length:ho+sl;if(sl=ed-ho,Zo.assert(ho>=0),Zo.assert(ho<=ed),Zo.assert(ed<=Nd.length),!qec(Nd,ho))return;let Og,Nh,o1,Tb,q2,IE=[],zR=[],e3=Fn;Fn|=1<<25;let IA=t.scanRange(ho+3,sl-5,EI);return Fn=e3,IA;function EI(){let Es=1,Aa,ha=ho-(Nd.lastIndexOf(` -`,ho)+1)+4;function Ua(Pd){Aa||(Aa=ha),IE.push(Pd),ha+=Pd.length}for(Ju();bx(5););bx(4)&&(Es=0,ha=0);e:for(;;){switch(Wt()){case 60:wA(IE),q2||(q2=Ri()),Hc(Eo(ha)),Es=0,Aa=void 0;break;case 4:IE.push(t.getTokenText()),Es=0,ha=0;break;case 42:let Pd=t.getTokenText();Es===1?(Es=2,Ua(Pd)):(Zo.assert(Es===0),Es=1,ha+=Pd.length);break;case 5:Zo.assert(Es!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let Kh=t.getTokenText();Aa!==void 0&&ha+Kh.length>Aa&&IE.push(Kh.slice(Aa-ha)),ha+=Kh.length;break;case 1:break e;case 82:Es=2,Ua(t.getTokenValue());break;case 19:Es=2;let i2=t.getTokenFullStart(),a1=t.getTokenEnd()-1,Nb=Ve(a1);if(Nb){Tb||zd(IE),zR.push(Zt(C.createJSDocText(IE.join("")),Tb??ho,i2)),zR.push(Nb),IE=[],Tb=t.getTokenEnd();break}default:Es=2,Ua(t.getTokenText());break}Es===2?Yn(!1):Ju()}let wc=IE.join("").trimEnd();zR.length&&wc.length&&zR.push(Zt(C.createJSDocText(wc),Tb??ho,q2)),zR.length&&Og&&Zo.assertIsDefined(q2,"having parsed tags implies that the end of the comment span should be set");let hA=Og&&Er(Og,Nh,o1);return Zt(C.createJSDocComment(zR.length?Er(zR,ho,q2):wc.length?wc:void 0,hA),ho,ed)}function zd(Es){for(;Es.length&&(Es[0]===` -`||Es[0]==="\r");)Es.shift()}function wA(Es){for(;Es.length;){let Aa=Es[Es.length-1].trimEnd();if(Aa==="")Es.pop();else if(Aa.lengthKh&&(Ua.push(sv.slice(Kh-Es)),Pd=2),Es+=sv.length;break;case 19:Pd=2;let oP=t.getTokenFullStart(),fF=t.getTokenEnd()-1,ov=Ve(fF);ov?(wc.push(Zt(C.createJSDocText(Ua.join("")),hA??ha,oP)),wc.push(ov),Ua=[],hA=t.getTokenEnd()):i2(t.getTokenText());break;case 62:Pd===3?Pd=2:Pd=3,i2(t.getTokenText());break;case 82:Pd!==3&&(Pd=2),i2(t.getTokenValue());break;case 42:if(Pd===0){Pd=1,Es+=1;break}default:Pd!==3&&(Pd=2),i2(t.getTokenText());break}Pd===2||Pd===3?a1=Yn(Pd===3):a1=Ju()}zd(Ua);let Nb=Ua.join("").trimEnd();if(wc.length)return Nb.length&&wc.push(Zt(C.createJSDocText(Nb),hA??ha)),Er(wc,ha,t.getTokenEnd());if(Nb.length)return Nb}function Ve(Es){let Aa=Ki(wr);if(!Aa)return;Ju(),sy();let ha=Ct(),Ua=[];for(;Wt()!==20&&Wt()!==4&&Wt()!==1;)Ua.push(t.getTokenText()),Ju();let wc=Aa==="link"?C.createJSDocLink:Aa==="linkcode"?C.createJSDocLinkCode:C.createJSDocLinkPlain;return Zt(wc(ha,Ua.join("")),Es,t.getTokenEnd())}function Ct(){if(H1(Wt())){let Es=Ri(),Aa=Ca();for(;rc(25);)Aa=Zt(C.createQualifiedName(Aa,Wt()===81?yn(80,!1):Ca()),Es);for(;Wt()===81;)$i(),Ju(),Aa=Zt(C.createJSDocMemberName(Aa,Wa()),Es);return Aa}}function wr(){if($2(),Wt()===19&&Ju()===60&&H1(Ju())){let Es=t.getTokenValue();if(ai(Es))return Es}}function ai(Es){return Es==="link"||Es==="linkcode"||Es==="linkplain"}function Lo(Es,Aa,ha,Ua){return Zt(C.createJSDocUnknownTag(Aa,z(Es,Ri(),ha,Ua)),Es)}function Hc(Es){Es&&(Og?Og.push(Es):(Og=[Es],Nh=Es.pos),o1=Es.end)}function ad(){return $2(),Wt()===19?kr():void 0}function dm(){let Es=bx(23);Es&&sy();let Aa=bx(62),ha=_re();return Aa&&FA(62),Es&&(sy(),sd(64)&&$A(),ws(24)),{name:ha,isBracketed:Es}}function rv(Es){switch(Es.kind){case 151:return!0;case 188:return rv(Es.elementType);default:return iBi(Es)&&$C(Es.typeName)&&Es.typeName.escapedText==="Object"&&!Es.typeArguments}}function nv(Es,Aa,ha,Ua){let wc=ad(),hA=!wc;$2();let{name:Pd,isBracketed:Kh}=dm(),i2=$2();hA&&!oo(wr)&&(wc=ad());let a1=z(Es,Ri(),Ua,i2),Nb=yx(wc,Pd,ha,Ua);Nb&&(wc=Nb,hA=!0);let sv=ha===1?C.createJSDocPropertyTag(Aa,Pd,Kh,wc,hA,a1):C.createJSDocParameterTag(Aa,Pd,Kh,wc,hA,a1);return Zt(sv,Es)}function yx(Es,Aa,ha,Ua){if(Es&&rv(Es.type)){let wc=Ri(),hA,Pd;for(;hA=Ki(()=>r3(ha,Ua,Aa));)hA.kind===341||hA.kind===348?Pd=mV(Pd,hA):hA.kind===345&&mI(hA.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Pd){let Kh=Zt(C.createJSDocTypeLiteral(Pd,Es.type.kind===188),wc);return Zt(C.createJSDocTypeExpression(Kh),wc)}}}function Dd(Es,Aa,ha,Ua){oD(Og,Lec)&&_g(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,hJe(Aa.escapedText));let wc=ad();return Zt(C.createJSDocReturnTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function ji(Es,Aa,ha,Ua){oD(Og,iDr)&&_g(Aa.pos,t.getTokenStart(),ts._0_tag_already_specified,hJe(Aa.escapedText));let wc=kr(!0),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocTypeTag(Aa,wc,hA),Es)}function SL(Es,Aa,ha,Ua){let wc=Wt()===23||oo(()=>Ju()===60&&H1(Ju())&&ai(t.getTokenValue()))?void 0:Xr(),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSeeTag(Aa,wc,hA),Es)}function $l(Es,Aa,ha,Ua){let wc=ad(),hA=z(Es,Ri(),ha,Ua);return Zt(C.createJSDocThrowsTag(Aa,wc,hA),Es)}function Ap(Es,Aa,ha,Ua){let wc=Ri(),hA=Bc(),Pd=t.getTokenFullStart(),Kh=z(Es,Pd,ha,Ua);Kh||(Pd=t.getTokenFullStart());let i2=typeof Kh!="string"?Er(NNr([Zt(hA,wc,Pd)],Kh),wc):hA.text+Kh;return Zt(C.createJSDocAuthorTag(Aa,i2),Es)}function Bc(){let Es=[],Aa=!1,ha=t.getToken();for(;ha!==1&&ha!==4;){if(ha===30)Aa=!0;else{if(ha===60&&!Aa)break;if(ha===32&&Aa){Es.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}Es.push(t.getTokenText()),ha=Ju()}return C.createJSDocText(Es.join(""))}function Vo(Es,Aa,ha,Ua){let wc=cY();return Zt(C.createJSDocImplementsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function iv(Es,Aa,ha,Ua){let wc=cY();return Zt(C.createJSDocAugmentsTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function nf(Es,Aa,ha,Ua){let wc=kr(!1),hA=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocSatisfiesTag(Aa,wc,hA),Es)}function J6(Es,Aa,ha,Ua){let wc=t.getTokenFullStart(),hA;Xs()&&(hA=Wa());let Pd=hB(hA,wc,!0,!0),Kh=FD(),i2=mw(),a1=ha!==void 0&&Ua!==void 0?z(Es,Ri(),ha,Ua):void 0;return Zt(C.createJSDocImportTag(Aa,Pd,Kh,i2,a1),Es)}function cY(){let Es=rc(19),Aa=Ri(),ha=t3();t.setSkipJsDocLeadingAsterisks(!0);let Ua=xn();t.setSkipJsDocLeadingAsterisks(!1);let wc=C.createExpressionWithTypeArguments(ha,Ua),hA=Zt(wc,Aa);return Es&&ws(20),hA}function t3(){let Es=Ri(),Aa=Ex();for(;rc(25);){let ha=Ex();Aa=Zt(ce(Aa,ha),Es)}return Aa}function pF(Es,Aa,ha,Ua,wc){return Zt(Aa(ha,z(Es,Ri(),Ua,wc)),Es)}function rh(Es,Aa,ha,Ua){let wc=kr(!0);return sy(),Zt(C.createJSDocThisTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Cw(Es,Aa,ha,Ua){let wc=kr(!0);return sy(),Zt(C.createJSDocEnumTag(Aa,wc,z(Es,Ri(),ha,Ua)),Es)}function Il(Es,Aa,ha,Ua){let wc=ad();$2();let hA=CB();sy();let Pd=ye(ha),Kh;if(!wc||rv(wc.type)){let a1,Nb,sv,oP=!1;for(;(a1=Ki(()=>lY(ha)))&&a1.kind!==345;)if(oP=!0,a1.kind===344)if(Nb){let fF=Da(ts.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);fF&&Dbt(fF,dNe(er,xt,0,0,ts.The_tag_was_first_specified_here));break}else Nb=a1;else sv=mV(sv,a1);if(oP){let fF=wc&&wc.type.kind===188,ov=C.createJSDocTypeLiteral(sv,fF);wc=Nb&&Nb.typeExpression&&!rv(Nb.typeExpression.type)?Nb.typeExpression:Zt(ov,Es),Kh=wc.end}}Kh=Kh||Pd!==void 0?Ri():(hA??wc??Aa).end,Pd||(Pd=z(Es,Kh,ha,Ua));let i2=C.createJSDocTypedefTag(Aa,wc,hA,Pd);return Zt(i2,Es,Kh)}function CB(Es){let Aa=t.getTokenStart();if(!H1(Wt()))return;let ha=Ex();if(rc(25)){let Ua=CB(!0),wc=C.createModuleDeclaration(void 0,ha,Ua,Es?8:void 0);return Zt(wc,Aa)}return Es&&(ha.flags|=4096),ha}function Rb(Es){let Aa=Ri(),ha,Ua;for(;ha=Ki(()=>r3(4,Es));){if(ha.kind===345){mI(ha.tagName,ts.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Ua=mV(Ua,ha)}return Er(Ua||[],Aa)}function $R(Es,Aa){let ha=Rb(Aa),Ua=Ki(()=>{if(bx(60)){let wc=Eo(Aa);if(wc&&wc.kind===342)return wc}});return Zt(C.createJSDocSignature(void 0,ha,Ua),Es)}function Cre(Es,Aa,ha,Ua){let wc=CB();sy();let hA=ye(ha),Pd=$R(Es,ha);hA||(hA=z(Es,Ri(),ha,Ua));let Kh=hA!==void 0?Ri():Pd.end;return Zt(C.createJSDocCallbackTag(Aa,Pd,wc,hA),Es,Kh)}function vL(Es,Aa,ha,Ua){sy();let wc=ye(ha),hA=$R(Es,ha);wc||(wc=z(Es,Ri(),ha,Ua));let Pd=wc!==void 0?Ri():hA.end;return Zt(C.createJSDocOverloadTag(Aa,hA,wc),Es,Pd)}function uJ(Es,Aa){for(;!$C(Es)||!$C(Aa);)if(!$C(Es)&&!$C(Aa)&&Es.right.escapedText===Aa.right.escapedText)Es=Es.left,Aa=Aa.left;else return!1;return Es.escapedText===Aa.escapedText}function lY(Es){return r3(1,Es)}function r3(Es,Aa,ha){let Ua=!0,wc=!1;for(;;)switch(Ju()){case 60:if(Ua){let hA=U6(Es,Aa);return hA&&(hA.kind===341||hA.kind===348)&&ha&&($C(hA.name)||!uJ(ha,hA.name.left))?!1:hA}wc=!1;break;case 4:Ua=!0,wc=!1;break;case 42:wc&&(Ua=!1),wc=!0;break;case 80:Ua=!1;break;case 1:return!1}}function U6(Es,Aa){Zo.assert(Wt()===60);let ha=t.getTokenFullStart();Ju();let Ua=Ex(),wc=$2(),hA;switch(Ua.escapedText){case"type":return Es===1&&ji(ha,Ua);case"prop":case"property":hA=1;break;case"arg":case"argument":case"param":hA=6;break;case"template":return uY(ha,Ua,Aa,wc);case"this":return rh(ha,Ua,Aa,wc);default:return!1}return Es&hA?nv(ha,Ua,Es,Aa):!1}function gJ(){let Es=Ri(),Aa=bx(23);Aa&&sy();let ha=Le(!1,!0),Ua=Ex(ts.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),wc;if(Aa&&(sy(),ws(64),wc=Qa(16777216,YS),ws(24)),!Wme(Ua))return Zt(C.createTypeParameterDeclaration(ha,Ua,void 0,wc),Es)}function K6(){let Es=Ri(),Aa=[];do{sy();let ha=gJ();ha!==void 0&&Aa.push(ha),$2()}while(bx(28));return Er(Aa,Es)}function uY(Es,Aa,ha,Ua){let wc=Wt()===19?kr():void 0,hA=K6();return Zt(C.createJSDocTemplateTag(Aa,wc,hA,z(Es,Ri(),ha,Ua)),Es)}function bx(Es){return Wt()===Es?(Ju(),!0):!1}function _re(){let Es=Ex();for(rc(23)&&ws(24);rc(25);){let Aa=Ex();rc(23)&&ws(24),Es=O(Es,Aa)}return Es}function Ex(Es){if(!H1(Wt()))return yn(80,!Es,Es||ts.Identifier_expected);jt++;let Aa=t.getTokenStart(),ha=t.getTokenEnd(),Ua=Wt(),wc=ls(t.getTokenValue()),hA=Zt(F(wc,Ua),Aa,ha);return Ju(),hA}}})(aY=e.JSDocParser||(e.JSDocParser={}))})(Mme||(Mme={}));var TSi=new WeakSet;function utc(e){TSi.has(e)&&Zo.fail("Source file has already been incrementally parsed"),TSi.add(e)}var TBi=new WeakSet;function gtc(e){return TBi.has(e)}function _Nr(e){TBi.add(e)}var qbt;(e=>{function t(N,B,F,Q){if(Q=Q||Zo.shouldAssert(2),C(N,B,F,Q),rza(F))return N;if(N.statements.length===0)return Mme.parseSourceFile(N.fileName,B,N.languageVersion,void 0,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);utc(N),Mme.fixupParentReferences(N);let X=N.text,ae=b(N),ne=f(N,F);C(N,B,ne,Q),Zo.assert(ne.span.start<=F.span.start),Zo.assert(gj(ne.span)===gj(F.span)),Zo.assert(gj(tJe(ne))===gj(tJe(F)));let ce=tJe(ne).length-ne.span.length;A(N,ne.span.start,gj(ne.span),gj(tJe(ne)),ce,X,B,Q);let fe=Mme.parseSourceFile(N.fileName,B,N.languageVersion,ae,!0,N.scriptKind,N.setExternalModuleIndicator,N.jsDocParsingMode);return fe.commentDirectives=r(N.commentDirectives,fe.commentDirectives,ne.span.start,gj(ne.span),ce,X,B,Q),fe.impliedNodeFormat=N.impliedNodeFormat,Mec(N,fe),fe}e.updateSourceFile=t;function r(N,B,F,Q,X,ae,ne,ce){if(!N)return B;let fe,ue=!1;for(let be of N){let{range:Se,type:De}=be;if(Se.endQ){de();let k={range:{pos:Se.pos+X,end:Se.end+X},type:De};fe=mV(fe,k),ce&&Zo.assert(ae.substring(Se.pos,Se.end)===ne.substring(k.range.pos,k.range.end))}}return de(),fe;function de(){ue||(ue=!0,fe?B&&fe.push(...B):fe=B)}}function n(N,B,F,Q,X,ae,ne){F?fe(N):ce(N);return;function ce(ue){let de="";if(ne&&a(ue)&&(de=X.substring(ue.pos,ue.end)),iSi(ue,B),Ece(ue,ue.pos+Q,ue.end+Q),ne&&a(ue)&&Zo.assert(de===ae.substring(ue.pos,ue.end)),Ok(ue,ce,fe),Pme(ue))for(let be of ue.jsDoc)ce(be);l(ue,ne)}function fe(ue){Ece(ue,ue.pos+Q,ue.end+Q);for(let de of ue)ce(de)}}function a(N){switch(N.kind){case 11:case 9:case 80:return!0}return!1}function o(N,B,F,Q,X){Zo.assert(N.end>=B,"Adjusting an element that was entirely before the change range"),Zo.assert(N.pos<=F,"Adjusting an element that was entirely after the change range"),Zo.assert(N.pos<=N.end);let ae=Math.min(N.pos,Q),ne=N.end>=F?N.end+X:Math.min(N.end,Q);if(Zo.assert(ae<=ne),N.parent){let ce=N.parent;Zo.assertGreaterThanOrEqual(ae,ce.pos),Zo.assertLessThanOrEqual(ne,ce.end)}Ece(N,ae,ne)}function l(N,B){if(B){let F=N.pos,Q=X=>{Zo.assert(X.pos>=F),F=X.end};if(Pme(N))for(let X of N.jsDoc)Q(X);Ok(N,Q),Zo.assert(F<=N.end)}}function A(N,B,F,Q,X,ae,ne,ce){fe(N);return;function fe(de){if(Zo.assert(de.pos<=de.end),de.pos>F){n(de,N,!1,X,ae,ne,ce);return}let be=de.end;if(be>=B){if(_Nr(de),iSi(de,N),o(de,B,F,Q,X),Ok(de,fe,ue),Pme(de))for(let Se of de.jsDoc)fe(Se);l(de,ce);return}Zo.assert(beF){n(de,N,!0,X,ae,ne,ce);return}let be=de.end;if(be>=B){_Nr(de),o(de,B,F,Q,X);for(let Se of de)fe(Se);return}Zo.assert(be0&&ae<=1;ae++){let ne=I(N,F);Zo.assert(ne.pos<=F);let ce=ne.pos;F=Math.max(0,ce-1)}let Q=tza(F,gj(B.span)),X=B.newLength+(B.span.start-F);return Evi(Q,X)}function I(N,B){let F=N,Q;if(Ok(N,ae),Q){let ne=X(Q);ne.pos>F.pos&&(F=ne)}return F;function X(ne){for(;;){let ce=Qqa(ne);if(ce)ne=ce;else return ne}}function ae(ne){if(!Wme(ne))if(ne.pos<=B){if(ne.pos>=F.pos&&(F=ne),BB),!0}}function C(N,B,F,Q){let X=N.text;if(F&&(Zo.assert(X.length-F.span.length+F.newLength===B.length),Q||Zo.shouldAssert(3))){let ae=X.substr(0,F.span.start),ne=B.substr(0,F.span.start);Zo.assert(ae===ne);let ce=X.substring(gj(F.span),X.length),fe=B.substring(gj(tJe(F)),B.length);Zo.assert(ce===fe)}}function b(N){let B=N.statements,F=0;Zo.assert(F=ue.pos&&ne=ue.pos&&ne{N[N.Value=-1]="Value"})(E||(E={}))})(qbt||(qbt={}));function Atc(e){return dtc(e)!==void 0}function dtc(e){let t=uvi(e,A$a,!1);if(t)return t;if(_7a(e,".ts")){let r=lvi(e),n=r.lastIndexOf(".d.");if(n>=0)return r.substring(n)}}function ptc(e,t,r,n){if(e){if(e==="import")return 99;if(e==="require")return 1;n(t,r-t,ts.resolution_mode_should_be_either_require_or_import)}}function ftc(e,t){let r=[];for(let n of lNr(t,0)||x2){let a=t.substring(n.pos,n.end);_tc(r,n,a)}e.pragmas=new Map;for(let n of r){if(e.pragmas.has(n.name)){let a=e.pragmas.get(n.name);a instanceof Array?a.push(n.args):e.pragmas.set(n.name,[a,n.args]);continue}e.pragmas.set(n.name,n.args)}}function Itc(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,n)=>{switch(n){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,l=e.libReferenceDirectives;hO(QRr(r),A=>{let{types:f,lib:I,path:C,["resolution-mode"]:b,preserve:E}=A.arguments,N=E==="true"?!0:void 0;if(A.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let B=ptc(b,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...B?{resolutionMode:B}:{},...N?{preserve:N}:{}})}else I?l.push({pos:I.pos,end:I.end,fileName:I.value,...N?{preserve:N}:{}}):C?a.push({pos:C.pos,end:C.end,fileName:C.value,...N?{preserve:N}:{}}):t(A.range.pos,A.range.end-A.range.pos,ts.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=iNr(QRr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,ts.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{hO(QRr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:n==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Zo.fail("Unhandled pragma kind")}})}var tNr=new Map;function htc(e){if(tNr.has(e))return tNr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return tNr.set(e,t),t}var mtc=/^\/\/\/\s*<(\S+)\s.*?\/>/m,Ctc=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function _tc(e,t,r){let n=t.kind===2&&mtc.exec(r);if(n){let o=n[1].toLowerCase(),l=cvi[o];if(!l||!(l.kind&1))return;if(l.args){let A={};for(let f of l.args){let I=htc(f.name).exec(r);if(!I&&!f.optional)return;if(I){let C=I[2]||I[3];if(f.captureSpan){let b=t.pos+I.index+I[1].length+1;A[f.name]={value:C,pos:b,end:b+C.length}}else A[f.name]=C}}e.push({name:o,args:{arguments:A,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&Ctc.exec(r);if(a)return RSi(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,l;for(;l=o.exec(r);)RSi(e,t,4,l)}}function RSi(e,t,r,n){if(!n)return;let a=n[1].toLowerCase(),o=cvi[a];if(!o||!(o.kind&r))return;let l=n[2],A=ytc(o,l);A!=="fail"&&e.push({name:a,args:{arguments:A,range:t}})}function ytc(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),n={};for(let a=0;an.kind<309||n.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=Vme(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return Ok(this,e,t)}};function btc(e,t){let r=[];if(Jza(e))return e.forEachChild(l=>{r.push(l)}),r;pJe.setText((t||e.getSourceFile()).text);let n=e.pos,a=l=>{fJe(r,n,l.pos,e),r.push(l),n=l.end},o=l=>{fJe(r,n,l.pos,e),r.push(Etc(l,e)),n=l.end};return hO(e.jsDoc,a),n=e.pos,e.forEachChild(a,o),fJe(r,n,e.end,e),pJe.setText(void 0),r}function fJe(e,t,r,n){for(pJe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function Pbt(e,t){if(!e)return x2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(xBi))){let n=new Set;for(let a of e){let o=GBi(t,a,l=>{var A;if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualJsDocTags(a,t):((A=l.declarations)==null?void 0:A.length)===1?l.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function dJe(e,t){if(!e)return x2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(xBi))){let n=new Set;for(let a of e){let o=GBi(t,a,l=>{if(!n.has(l))return n.add(l),a.kind===177||a.kind===178?l.getContextualDocumentationComment(a,t):l.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function GBi(e,t,r){var n;let a=((n=t.parent)==null?void 0:n.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=Gqa(t);return H6a(vqa(a),l=>{let A=e.getTypeAtLocation(l),f=o&&A.symbol?e.getTypeOfSymbol(A.symbol):A,I=e.getPropertyOfType(f,t.symbol.name);return I?r(I):void 0})}var wtc=class extends aDr{constructor(e,t,r){super(e,t,r)}update(e,t){return ltc(this,e,t)}getLineAndCharacterOfPosition(e){return hvi(this,e)}getLineStarts(){return cNr(this)}getPositionOfLineAndCharacter(e,t,r){return H7a(cNr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),n;t+1>=r.length&&(n=this.getEnd()),n||(n=r[t+1]-1);let a=this.getFullText();return a[n]===` -`&&a[n-1]==="\r"?n-1:n}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=n7a();return this.forEachChild(a),e;function t(o){let l=n(o);l&&e.add(l,o)}function r(o){let l=e.get(o);return l||e.set(o,l=[]),l}function n(o){let l=MNr(o);return l&&(eBi(l)&&Bce(l.expression)?l.expression.name.text:xvi(l)?getNameFromPropertyName(l):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let l=o,A=n(l);if(A){let C=r(A),b=Vme(C);b&&l.parent===b.parent&&l.symbol===b.symbol?l.body&&!b.body&&(C[C.length-1]=l):C.push(l)}Ok(o,a);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(o),Ok(o,a);break;case 169:if(!SJe(o,31))break;case 260:case 208:{let C=o;if(Lza(C.name)){Ok(C.name,a);break}C.initializer&&a(C.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(Cec(f.exportClause)?hO(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let I=o.importClause;I&&(I.name&&t(I.name),I.namedBindings&&(I.namedBindings.kind===274?t(I.namedBindings):hO(I.namedBindings.elements,a)));break;case 226:JNr(o)!==0&&t(o);default:Ok(o,a)}}}},Ttc=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(n=>n)}getLineAndCharacterOfPosition(e){return hvi(this,e)}};function Rtc(){return{getNodeConstructor:()=>aDr,getTokenConstructor:()=>NBi,getIdentifierConstructor:()=>DBi,getPrivateIdentifierConstructor:()=>kBi,getSourceFileConstructor:()=>wtc,getSymbolConstructor:()=>Stc,getTypeConstructor:()=>vtc,getSignatureConstructor:()=>Btc,getSourceMapSourceConstructor:()=>Ttc}}var Ntc=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],pRu=[...Ntc,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];e$a(Rtc());var FBi=new Proxy({},{get:()=>!0}),ZBi=FBi["4.8"];function Ij(e,t=!1){var r;if(e!=null){if(ZBi){if(t||oDr(e)){let n=cza(e);return n?[...n]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(n=>!tDr(n))}}function _Ne(e,t=!1){var r;if(e!=null){if(ZBi){if(t||jec(e)){let n=aza(e);return n?[...n]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(tDr)}}var Dtc={},LBi=new Proxy({},{get:(e,t)=>t}),ktc=LBi,xtc=LBi,hs=ktc,sD=xtc,VBi=FBi["5.0"],au=Tp,Gtc=new Set([au.AmpersandAmpersandToken,au.BarBarToken,au.QuestionQuestionToken]),Ftc=new Set([Tp.AmpersandAmpersandEqualsToken,Tp.AmpersandEqualsToken,Tp.AsteriskAsteriskEqualsToken,Tp.AsteriskEqualsToken,Tp.BarBarEqualsToken,Tp.BarEqualsToken,Tp.CaretEqualsToken,Tp.EqualsToken,Tp.GreaterThanGreaterThanEqualsToken,Tp.GreaterThanGreaterThanGreaterThanEqualsToken,Tp.LessThanLessThanEqualsToken,Tp.MinusEqualsToken,Tp.PercentEqualsToken,Tp.PlusEqualsToken,Tp.QuestionQuestionEqualsToken,Tp.SlashEqualsToken]),Ztc=new Set([au.AmpersandAmpersandToken,au.AmpersandToken,au.AsteriskAsteriskToken,au.AsteriskToken,au.BarBarToken,au.BarToken,au.CaretToken,au.EqualsEqualsEqualsToken,au.EqualsEqualsToken,au.ExclamationEqualsEqualsToken,au.ExclamationEqualsToken,au.GreaterThanEqualsToken,au.GreaterThanGreaterThanGreaterThanToken,au.GreaterThanGreaterThanToken,au.GreaterThanToken,au.InKeyword,au.InstanceOfKeyword,au.LessThanEqualsToken,au.LessThanLessThanToken,au.LessThanToken,au.MinusToken,au.PercentToken,au.PlusToken,au.SlashToken]);function Ltc(e){return Ftc.has(e.kind)}function Vtc(e){return Gtc.has(e.kind)}function Ptc(e){return Ztc.has(e.kind)}function yce(e){return by(e)}function Wtc(e){return e.kind!==au.SemicolonClassElement}function vh(e,t){let r=Ij(t);return r?.some(n=>n.kind===e)===!0}function Otc(e){let t=Ij(e);return t==null?null:t[t.length-1]??null}function Mtc(e){return e.kind===au.CommaToken}function Htc(e){return e.kind===au.SingleLineCommentTrivia||e.kind===au.MultiLineCommentTrivia}function Ytc(e){return e.kind===au.JSDocComment}function Qtc(e){if(Ltc(e))return{type:hs.AssignmentExpression,operator:yce(e.kind)};if(Vtc(e))return{type:hs.LogicalExpression,operator:yce(e.kind)};if(Ptc(e))return{type:hs.BinaryExpression,operator:yce(e.kind)};throw new Error(`Unexpected binary operator ${by(e.kind)}`)}function Wbt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function Zme(e,t){let[r,n]=e.map(a=>Wbt(a,t));return{end:n,start:r}}function Xtc(e){if(e.kind===Tp.Block)switch(e.parent.kind){case Tp.Constructor:case Tp.GetAccessor:case Tp.SetAccessor:case Tp.ArrowFunction:case Tp.FunctionExpression:case Tp.FunctionDeclaration:case Tp.MethodDeclaration:return!0;default:return!1}return!0}function iJe(e,t){return[e.getStart(t),e.getEnd()]}function Jtc(e){return e.kind>=au.FirstToken&&e.kind<=au.LastToken}function PBi(e){return e.kind>=au.JsxElement&&e.kind<=au.JsxAttribute}function yNr(e){return e.flags&IO.Let?"let":(e.flags&IO.AwaitUsing)===IO.AwaitUsing?"await using":e.flags&IO.Const?"const":e.flags&IO.Using?"using":"var"}function xme(e){let t=Ij(e);if(t!=null)for(let r of t)switch(r.kind){case au.PublicKeyword:return"public";case au.ProtectedKeyword:return"protected";case au.PrivateKeyword:return"private";default:break}}function pNe(e,t,r){return n(t);function n(a){return Bza(a)&&a.pos===e.end?a:nrc(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&rrc(o,r)?n(o):void 0)}}function Utc(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function Ktc(e){return!!Utc(e,PBi)}function NSi(e){return bNe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let n=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return n>1114111?t:String.fromCodePoint(n)}return Dtc[r]||t})}function fNe(e){return e.kind===au.ComputedPropertyName}function DSi(e){return!!e.questionToken}function WBi(e){return e.type===hs.ChainExpression}function jtc(e,t){return WBi(t)&&e.expression.kind!==Tp.ParenthesizedExpression}function ztc(e){let t;if(VBi&&e.kind===au.Identifier?t=vvi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===au.NullKeyword?sD.Null:t>=au.FirstFutureReservedWord&&t<=au.LastKeyword?sD.Identifier:sD.Keyword;if(e.kind>=au.FirstKeyword&&e.kind<=au.LastFutureReservedWord)return e.kind===au.FalseKeyword||e.kind===au.TrueKeyword?sD.Boolean:sD.Keyword;if(e.kind>=au.FirstPunctuation&&e.kind<=au.LastPunctuation)return sD.Punctuator;if(e.kind>=au.NoSubstitutionTemplateLiteral&&e.kind<=au.TemplateTail)return sD.Template;switch(e.kind){case au.NumericLiteral:return sD.Numeric;case au.JsxText:return sD.JSXText;case au.StringLiteral:return e.parent.kind===au.JsxAttribute||e.parent.kind===au.JsxElement?sD.JSXText:sD.String;case au.RegularExpressionLiteral:return sD.RegularExpression;case au.Identifier:case au.ConstructorKeyword:case au.GetKeyword:case au.SetKeyword:default:}return e.kind===au.Identifier&&(PBi(e.parent)||e.parent.kind===au.PropertyAccessExpression&&Ktc(e))?sD.JSXIdentifier:sD.Identifier}function qtc(e,t){let r=e.kind===au.JsxText?e.getFullStart():e.getStart(t),n=e.getEnd(),a=t.text.slice(r,n),o=ztc(e),l=[r,n],A=Zme(l,t);return o===sD.RegularExpression?{type:o,loc:A,range:l,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:A,range:l,value:a}}function $tc(e){let t=[];function r(n){Htc(n)||Ytc(n)||(Jtc(n)&&n.kind!==au.EndOfFileToken?t.push(qtc(n,e)):n.getChildren(e).forEach(r))}return r(e),t}var erc=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function OBi(e,t,r,n=r){let[a,o]=[r,n].map(l=>{let{character:A,line:f}=t.getLineAndCharacterOfPosition(l);return{column:A,line:f+1,offset:l}});return new erc(e,t.fileName,{end:o,start:a})}function trc(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function rrc(e,t){return e.kind===au.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function nrc(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==au.EndOfFileToken}function kSi(e){return!orc(e)}function arc(e){return Svi(e.parent,Gvi)}function crc(e){return vh(au.AbstractKeyword,e)}function lrc(e){if(e.parameters.length&&!bBi(e)){let t=e.parameters[0];if(urc(t))return t}return null}function urc(e){return MBi(e.name)}function grc(e){switch(e.kind){case au.ClassDeclaration:return!0;case au.ClassExpression:return!0;case au.PropertyDeclaration:{let{parent:t}=e;return!!(zbt(t)||BNe(t)&&!crc(e))}case au.GetAccessor:case au.SetAccessor:case au.MethodDeclaration:{let{parent:t}=e;return!!e.body&&(zbt(t)||BNe(t))}case au.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===au.Constructor||t.kind===au.MethodDeclaration||t.kind===au.SetAccessor)&&lrc(t)!==e&&!!r&&r.kind===au.ClassDeclaration}}return!1}function lDr(e){switch(e.kind){case au.Identifier:return!0;case au.PropertyAccessExpression:case au.ElementAccessExpression:return!(e.flags&IO.OptionalChain);case au.ParenthesizedExpression:case au.TypeAssertionExpression:case au.AsExpression:case au.SatisfiesExpression:case au.ExpressionWithTypeArguments:case au.NonNullExpression:return lDr(e.expression);default:return!1}}function Arc(e){let t=Ij(e),r=e;for(;(!t||t.length===0)&&bJe(r.parent);){let n=Ij(r.parent);n!=null&&n.length&&(t=n),r=r.parent}return t}var On=Tp;function drc(e){return OBi("message"in e&&e.message||e.messageText,e.file,e.start)}var sg,bNr,HBi,$p,kR,yNe,ENr,prc=class{constructor(e,t){V6a(this,sg),$4e(this,"allowPattern",!1),$4e(this,"ast"),$4e(this,"esTreeNodeToTSNodeMap",new WeakMap),$4e(this,"options"),$4e(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&fg(this,sg,kR).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==On.StringLiteral&&fg(this,sg,kR).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let n=this.convertPattern(e);return t&&(n.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(n,n.typeAnnotation.range)),n}convertBodyExpressions(e,t){let r=Xtc(t);return e.map(n=>{let a=this.convertChild(n);if(r){if(a!=null&&a.expression&&gBi(n)&&tEt(n.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(n=>n)}convertChainExpression(e,t){let{child:r,isOptional:n}=e.type===hs.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===hs.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=jtc(t,r);if(!a&&!n)return e;if(a&&WBi(r)){let o=r.expression;e.type===hs.MemberExpression?e.object=o:e.type===hs.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:hs.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===On.FunctionType||t?.kind===On.ConstructorType?2:1,n=[e.getFullStart()-r,e.end],a=Zme(n,this.ast);return{type:hs.TSTypeAnnotation,loc:a,range:n,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=pNe(e,this.ast,this.ast);return this.createNode(t,{type:hs.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(n=>this.convertChild(n))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=pNe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:hs.TSTypeParameterDeclaration,loc:Zme(r,this.ast),range:r,params:e.map(n=>this.convertChild(n))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let n=this.convertChild(t);return n.decorators=((r=_Ne(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],n}):[]}converter(e,t,r){if(!e)return null;fg(this,sg,HBi).call(this,e);let n=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=n,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:hs.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===Tp.JsxNamespacedName){let n=this.createNode(e,{type:hs.JSXNamespacedName,name:this.createNode(e.name,{type:hs.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:hs.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,n),n}let t=e.getText(),r=t.indexOf(":");if(r>0){let n=iJe(e,this.ast),a=this.createNode(e,{type:hs.JSXNamespacedName,range:n,name:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0]+r+1,n[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:hs.JSXIdentifier,range:[n[0],n[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case On.PropertyAccessExpression:e.name.kind===On.PrivateIdentifier&&fg(this,sg,$p).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:hs.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case On.ThisKeyword:case On.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:hs.TSMethodSignature,accessibility:xme(e),computed:fNe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case On.GetAccessor:return"get";case On.SetAccessor:return"set";case On.MethodSignature:return"method"}})(),optional:DSi(e),params:this.convertParameters(e.parameters),readonly:vh(On.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:vh(On.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=Wbt(e.range[1],this.ast))}convertNode(e,t){var r,n,a,o,l,A,f,I;switch(e.kind){case On.SourceFile:return this.createNode(e,{type:hs.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case On.Block:return this.createNode(e,{type:hs.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case On.Identifier:return src(e)?this.createNode(e,{type:hs.ThisExpression}):this.createNode(e,{type:hs.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case On.PrivateIdentifier:return this.createNode(e,{type:hs.PrivateIdentifier,name:e.text.slice(1)});case On.WithStatement:return this.createNode(e,{type:hs.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case On.ReturnStatement:return this.createNode(e,{type:hs.ReturnStatement,argument:this.convertChild(e.expression)});case On.LabeledStatement:return this.createNode(e,{type:hs.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case On.ContinueStatement:return this.createNode(e,{type:hs.ContinueStatement,label:this.convertChild(e.label)});case On.BreakStatement:return this.createNode(e,{type:hs.BreakStatement,label:this.convertChild(e.label)});case On.IfStatement:return this.createNode(e,{type:hs.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case On.SwitchStatement:return e.caseBlock.clauses.filter(C=>C.kind===On.DefaultClause).length>1&&fg(this,sg,$p).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:hs.SwitchStatement,cases:e.caseBlock.clauses.map(C=>this.convertChild(C)),discriminant:this.convertChild(e.expression)});case On.CaseClause:case On.DefaultClause:return this.createNode(e,{type:hs.SwitchCase,consequent:e.statements.map(C=>this.convertChild(C)),test:e.kind===On.CaseClause?this.convertChild(e.expression):null});case On.ThrowStatement:return e.expression.end===e.expression.pos&&fg(this,sg,kR).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:hs.ThrowStatement,argument:this.convertChild(e.expression)});case On.TryStatement:return this.createNode(e,{type:hs.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case On.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&fg(this,sg,$p).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:hs.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case On.WhileStatement:return this.createNode(e,{type:hs.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case On.DoStatement:return this.createNode(e,{type:hs.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case On.ForStatement:return this.createNode(e,{type:hs.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case On.ForInStatement:return fg(this,sg,bNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case On.ForOfStatement:return fg(this,sg,bNr).call(this,e.initializer,e.kind),this.createNode(e,{type:hs.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===On.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case On.FunctionDeclaration:{let C=vh(On.DeclareKeyword,e),b=vh(On.AsyncKeyword,e),E=!!e.asteriskToken;C?e.body?fg(this,sg,$p).call(this,e,"An implementation cannot be declared in ambient contexts."):b?fg(this,sg,$p).call(this,e,"'async' modifier cannot be used in an ambient context."):E&&fg(this,sg,$p).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&E&&fg(this,sg,$p).call(this,e,"A function signature cannot be declared as a generator.");let N=this.createNode(e,{type:e.body?hs.FunctionDeclaration:hs.TSDeclareFunction,async:b,body:this.convertChild(e.body)||void 0,declare:C,expression:!1,generator:E,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,N)}case On.VariableDeclaration:{let C=!!e.exclamationToken,b=this.convertChild(e.initializer),E=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return C&&(b?fg(this,sg,$p).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(E.type!==hs.Identifier||!E.typeAnnotation)&&fg(this,sg,$p).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:hs.VariableDeclarator,definite:C,id:E,init:b})}case On.VariableStatement:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarationList.declarations.map(b=>this.convertChild(b)),declare:vh(On.DeclareKeyword,e),kind:yNr(e.declarationList)});return C.declarations.length||fg(this,sg,kR).call(this,e,"A variable declaration list must have at least one variable declarator."),(C.kind==="using"||C.kind==="await using")&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init==null&&fg(this,sg,$p).call(this,b,`'${C.kind}' declarations must be initialized.`),C.declarations[E].id.type!==hs.Identifier&&fg(this,sg,$p).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),(C.declare||["await using","const","using"].includes(C.kind))&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].definite&&fg(this,sg,$p).call(this,b,"A definite assignment assertion '!' is not permitted in this context.")}),C.declare&&e.declarationList.declarations.forEach((b,E)=>{C.declarations[E].init&&(["let","var"].includes(C.kind)||C.declarations[E].id.typeAnnotation)&&fg(this,sg,$p).call(this,b,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,C)}case On.VariableDeclarationList:{let C=this.createNode(e,{type:hs.VariableDeclaration,declarations:e.declarations.map(b=>this.convertChild(b)),declare:!1,kind:yNr(e)});return(C.kind==="using"||C.kind==="await using")&&e.declarations.forEach((b,E)=>{C.declarations[E].init!=null&&fg(this,sg,$p).call(this,b,`'${C.kind}' declarations may not be initialized in for statement.`),C.declarations[E].id.type!==hs.Identifier&&fg(this,sg,$p).call(this,b.name,`'${C.kind}' declarations may not have binding patterns.`)}),C}case On.ExpressionStatement:return this.createNode(e,{type:hs.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case On.ThisKeyword:return this.createNode(e,{type:hs.ThisExpression});case On.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:hs.ArrayExpression,elements:e.elements.map(C=>this.convertChild(C))});case On.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(b=>this.convertPattern(b)),typeAnnotation:void 0});let C=[];for(let b of e.properties)(b.kind===On.GetAccessor||b.kind===On.SetAccessor||b.kind===On.MethodDeclaration)&&!b.body&&fg(this,sg,kR).call(this,b.end-1,"'{' expected."),C.push(this.convertChild(b));return this.createNode(e,{type:hs.ObjectExpression,properties:C})}case On.PropertyAssignment:{let{exclamationToken:C,questionToken:b}=e;return b&&fg(this,sg,$p).call(this,b,"A property assignment cannot have a question token."),C&&fg(this,sg,$p).call(this,C,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:hs.Property,computed:fNe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case On.ShorthandPropertyAssignment:{let{exclamationToken:C,modifiers:b,questionToken:E}=e;return b&&fg(this,sg,$p).call(this,b[0],"A shorthand property assignment cannot have modifiers."),E&&fg(this,sg,$p).call(this,E,"A shorthand property assignment cannot have a question token."),C&&fg(this,sg,$p).call(this,C,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:hs.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case On.ComputedPropertyName:return this.convertChild(e.expression);case On.PropertyDeclaration:{let C=vh(On.AbstractKeyword,e);C&&e.initializer&&fg(this,sg,$p).call(this,e.initializer,"Abstract property cannot have an initializer.");let b=vh(On.AccessorKeyword,e),E=b?C?hs.TSAbstractAccessorProperty:hs.AccessorProperty:C?hs.TSAbstractPropertyDefinition:hs.PropertyDefinition,N=this.convertChild(e.name);return this.createNode(e,{type:E,accessibility:xme(e),computed:fNe(e.name),declare:vh(On.DeclareKeyword,e),decorators:((n=_Ne(e))==null?void 0:n.map(B=>this.convertChild(B)))??[],definite:!!e.exclamationToken,key:N,optional:(N.type===hs.Literal||e.name.kind===On.Identifier||e.name.kind===On.ComputedPropertyName||e.name.kind===On.PrivateIdentifier)&&!!e.questionToken,override:vh(On.OverrideKeyword,e),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:C?null:this.convertChild(e.initializer)})}case On.GetAccessor:case On.SetAccessor:if(e.parent.kind===On.InterfaceDeclaration||e.parent.kind===On.TypeLiteral)return this.convertMethodSignature(e);case On.MethodDeclaration:{let C=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});C.typeParameters&&this.fixParentLocation(C,C.typeParameters.range);let b;if(t.kind===On.ObjectLiteralExpression)C.params=e.parameters.map(E=>this.convertChild(E)),b=this.createNode(e,{type:hs.Property,computed:fNe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===On.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:C});else{C.params=this.convertParameters(e.parameters);let E=vh(On.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition;b=this.createNode(e,{type:E,accessibility:xme(e),computed:fNe(e.name),decorators:((a=_Ne(e))==null?void 0:a.map(N=>this.convertChild(N)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:vh(On.OverrideKeyword,e),static:vh(On.StaticKeyword,e),value:C})}return e.kind===On.GetAccessor?b.kind="get":e.kind===On.SetAccessor?b.kind="set":!b.static&&e.name.kind===On.StringLiteral&&e.name.text==="constructor"&&b.type!==hs.Property&&(b.kind="constructor"),b}case On.Constructor:{let C=Otc(e),b=(C&&pNe(C,e,this.ast))??e.getFirstToken(),E=this.createNode(e,{type:e.body?hs.FunctionExpression:hs.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});E.typeParameters&&this.fixParentLocation(E,E.typeParameters.range);let N=this.createNode(e,{type:hs.Identifier,range:[b.getStart(this.ast),b.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),B=vh(On.StaticKeyword,e);return this.createNode(e,{type:vh(On.AbstractKeyword,e)?hs.TSAbstractMethodDefinition:hs.MethodDefinition,accessibility:xme(e),computed:!1,decorators:[],key:N,kind:B?"method":"constructor",optional:!1,override:!1,static:B,value:E})}case On.FunctionExpression:return this.createNode(e,{type:hs.FunctionExpression,async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.SuperKeyword:return this.createNode(e,{type:hs.Super});case On.ArrayBindingPattern:return this.createNode(e,{type:hs.ArrayPattern,decorators:[],elements:e.elements.map(C=>this.convertPattern(C)),optional:!1,typeAnnotation:void 0});case On.OmittedExpression:return null;case On.ObjectBindingPattern:return this.createNode(e,{type:hs.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(C=>this.convertPattern(C)),typeAnnotation:void 0});case On.BindingElement:{if(t.kind===On.ArrayBindingPattern){let b=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:b,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:hs.RestElement,argument:b,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):b}let C;return e.dotDotDotToken?C=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):C=this.createNode(e,{type:hs.Property,computed:!!(e.propertyName&&e.propertyName.kind===On.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(C.value=this.createNode(e,{type:hs.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),C}case On.ArrowFunction:return this.createNode(e,{type:hs.ArrowFunctionExpression,async:vh(On.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==On.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.YieldExpression:return this.createNode(e,{type:hs.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case On.AwaitExpression:return this.createNode(e,{type:hs.AwaitExpression,argument:this.convertChild(e.expression)});case On.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:hs.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case On.TemplateExpression:{let C=this.createNode(e,{type:hs.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(b=>{C.expressions.push(this.convertChild(b.expression)),C.quasis.push(this.convertChild(b.literal))}),C}case On.TaggedTemplateExpression:return this.createNode(e,{type:hs.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.TemplateHead:case On.TemplateMiddle:case On.TemplateTail:{let C=e.kind===On.TemplateTail;return this.createNode(e,{type:hs.TemplateElement,tail:C,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(C?1:2))}})}case On.SpreadAssignment:case On.SpreadElement:return this.allowPattern?this.createNode(e,{type:hs.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:hs.SpreadElement,argument:this.convertChild(e.expression)});case On.Parameter:{let C,b;return e.dotDotDotToken?C=b=this.createNode(e,{type:hs.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(C=this.convertChild(e.name),b=this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:C,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),Ij(e)&&(b.range[0]=C.range[0],b.loc=Zme(b.range,this.ast))):C=b=this.convertChild(e.name,t),e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(C,C.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>C.range[1]&&(C.range[1]=e.questionToken.end,C.loc.end=Wbt(C.range[1],this.ast)),C.optional=!0),Ij(e)?this.createNode(e,{type:hs.TSParameterProperty,accessibility:xme(e),decorators:[],override:vh(On.OverrideKeyword,e),parameter:b,readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e)}):b}case On.ClassDeclaration:!e.name&&(!vh(Tp.ExportKeyword,e)||!vh(Tp.DefaultKeyword,e))&&fg(this,sg,kR).call(this,e,"A class declaration without the 'default' modifier must have a name.");case On.ClassExpression:{let C=e.heritageClauses??[],b=e.kind===On.ClassDeclaration?hs.ClassDeclaration:hs.ClassExpression,E,N;for(let F of C){let{token:Q,types:X}=F;X.length===0&&fg(this,sg,kR).call(this,F,`'${by(Q)}' list cannot be empty.`),Q===On.ExtendsKeyword?(E&&fg(this,sg,kR).call(this,F,"'extends' clause already seen."),N&&fg(this,sg,kR).call(this,F,"'extends' clause must precede 'implements' clause."),X.length>1&&fg(this,sg,kR).call(this,X[1],"Classes can only extend a single class."),E??(E=F)):Q===On.ImplementsKeyword&&(N&&fg(this,sg,kR).call(this,F,"'implements' clause already seen."),N??(N=F))}let B=this.createNode(e,{type:b,abstract:vh(On.AbstractKeyword,e),body:this.createNode(e,{type:hs.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(Wtc).map(F=>this.convertChild(F))}),declare:vh(On.DeclareKeyword,e),decorators:((o=_Ne(e))==null?void 0:o.map(F=>this.convertChild(F)))??[],id:this.convertChild(e.name),implements:N?.types.map(F=>this.convertChild(F))??[],superClass:E!=null&&E.types[0]?this.convertChild(E.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(l=E?.types[0])!=null&&l.typeArguments&&(B.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(E.types[0].typeArguments,E.types[0])),this.fixExports(e,B)}case On.ModuleBlock:return this.createNode(e,{type:hs.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case On.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let C=this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(C.importKind="type"),e.importClause.name&&C.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case On.NamespaceImport:C.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case On.NamedImports:C.specifiers.push(...e.importClause.namedBindings.elements.map(b=>this.convertChild(b)));break}return C}case On.NamespaceImport:return this.createNode(e,{type:hs.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case On.ImportSpecifier:return this.createNode(e,{type:hs.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case On.ImportClause:{let C=this.convertChild(e.name);return this.createNode(e,{type:hs.ImportDefaultSpecifier,range:C.range,local:C})}case On.ExportDeclaration:return((A=e.exportClause)==null?void 0:A.kind)===On.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(C=>this.convertChild(C,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===On.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case On.ExportSpecifier:{let C=e.propertyName??e.name;return C.kind===On.StringLiteral&&t.kind===On.ExportDeclaration&&((I=t.moduleSpecifier)==null?void 0:I.kind)!==On.StringLiteral&&fg(this,sg,$p).call(this,C,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:hs.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(C)})}case On.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:hs.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:hs.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case On.PrefixUnaryExpression:case On.PostfixUnaryExpression:{let C=yce(e.operator);return C==="++"||C==="--"?(lDr(e.operand)||fg(this,sg,kR).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:hs.UpdateExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===On.PrefixUnaryExpression})):this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.operand),operator:C,prefix:e.kind===On.PrefixUnaryExpression})}case On.DeleteExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case On.VoidExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case On.TypeOfExpression:return this.createNode(e,{type:hs.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case On.TypeOperator:return this.createNode(e,{type:hs.TSTypeOperator,operator:yce(e.operator),typeAnnotation:this.convertChild(e.type)});case On.BinaryExpression:{if(Mtc(e.operatorToken)){let b=this.createNode(e,{type:hs.SequenceExpression,expressions:[]}),E=this.convertChild(e.left);return E.type===hs.SequenceExpression&&e.left.kind!==On.ParenthesizedExpression?b.expressions.push(...E.expressions):b.expressions.push(E),b.expressions.push(this.convertChild(e.right)),b}let C=Qtc(e.operatorToken);return this.allowPattern&&C.type===hs.AssignmentExpression?this.createNode(e,{type:hs.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...C,left:this.converter(e.left,e,C.type===hs.AssignmentExpression),right:this.convertChild(e.right)})}case On.PropertyAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.name),E=this.createNode(e,{type:hs.MemberExpression,computed:!1,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case On.ElementAccessExpression:{let C=this.convertChild(e.expression),b=this.convertChild(e.argumentExpression),E=this.createNode(e,{type:hs.MemberExpression,computed:!0,object:C,optional:e.questionDotToken!=null,property:b});return this.convertChainExpression(E,e)}case On.CallExpression:{if(e.expression.kind===On.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&fg(this,sg,kR).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let C=this.convertChild(e.expression),b=e.arguments.map(B=>this.convertChild(B)),E=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),N=this.createNode(e,{type:hs.CallExpression,arguments:b,callee:C,optional:e.questionDotToken!=null,typeArguments:E});return this.convertChainExpression(N,e)}case On.NewExpression:{let C=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:hs.NewExpression,arguments:e.arguments?e.arguments.map(b=>this.convertChild(b)):[],callee:this.convertChild(e.expression),typeArguments:C})}case On.ConditionalExpression:return this.createNode(e,{type:hs.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case On.MetaProperty:return this.createNode(e,{type:hs.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:hs.Identifier,decorators:[],name:yce(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case On.Decorator:return this.createNode(e,{type:hs.Decorator,expression:this.convertChild(e.expression)});case On.StringLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:t.kind===On.JsxAttribute?NSi(e.text):e.text});case On.NumericLiteral:return this.createNode(e,{type:hs.Literal,raw:e.getText(),value:Number(e.text)});case On.BigIntLiteral:{let C=iJe(e,this.ast),b=this.ast.text.slice(C[0],C[1]),E=bNe(!1,b.slice(0,-1),"_",""),N=typeof BigInt<"u"?BigInt(E):null;return this.createNode(e,{type:hs.Literal,range:C,bigint:N==null?E:String(N),raw:b,value:N})}case On.RegularExpressionLiteral:{let C=e.text.slice(1,e.text.lastIndexOf("/")),b=e.text.slice(e.text.lastIndexOf("/")+1),E=null;try{E=new RegExp(C,b)}catch{}return this.createNode(e,{type:hs.Literal,raw:e.text,regex:{flags:b,pattern:C},value:E})}case On.TrueKeyword:return this.createNode(e,{type:hs.Literal,raw:"true",value:!0});case On.FalseKeyword:return this.createNode(e,{type:hs.Literal,raw:"false",value:!1});case On.NullKeyword:return this.createNode(e,{type:hs.Literal,raw:"null",value:null});case On.EmptyStatement:return this.createNode(e,{type:hs.EmptyStatement});case On.DebuggerStatement:return this.createNode(e,{type:hs.DebuggerStatement});case On.JsxElement:return this.createNode(e,{type:hs.JSXElement,children:e.children.map(C=>this.convertChild(C)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case On.JsxFragment:return this.createNode(e,{type:hs.JSXFragment,children:e.children.map(C=>this.convertChild(C)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case On.JsxSelfClosingElement:return this.createNode(e,{type:hs.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:hs.JSXOpeningElement,range:iJe(e,this.ast),attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case On.JsxOpeningElement:return this.createNode(e,{type:hs.JSXOpeningElement,attributes:e.attributes.properties.map(C=>this.convertChild(C)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.JsxClosingElement:return this.createNode(e,{type:hs.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case On.JsxOpeningFragment:return this.createNode(e,{type:hs.JSXOpeningFragment});case On.JsxClosingFragment:return this.createNode(e,{type:hs.JSXClosingFragment});case On.JsxExpression:{let C=e.expression?this.convertChild(e.expression):this.createNode(e,{type:hs.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:hs.JSXSpreadChild,expression:C}):this.createNode(e,{type:hs.JSXExpressionContainer,expression:C})}case On.JsxAttribute:return this.createNode(e,{type:hs.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case On.JsxText:{let C=e.getFullStart(),b=e.getEnd(),E=this.ast.text.slice(C,b);return this.createNode(e,{type:hs.JSXText,range:[C,b],raw:E,value:NSi(E)})}case On.JsxSpreadAttribute:return this.createNode(e,{type:hs.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case On.QualifiedName:return this.createNode(e,{type:hs.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case On.TypeReference:return this.createNode(e,{type:hs.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case On.TypeParameter:return this.createNode(e,{type:hs.TSTypeParameter,const:vh(On.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:vh(On.InKeyword,e),name:this.convertChild(e.name),out:vh(On.OutKeyword,e)});case On.ThisType:return this.createNode(e,{type:hs.TSThisType});case On.AnyKeyword:case On.BigIntKeyword:case On.BooleanKeyword:case On.NeverKeyword:case On.NumberKeyword:case On.ObjectKeyword:case On.StringKeyword:case On.SymbolKeyword:case On.UnknownKeyword:case On.VoidKeyword:case On.UndefinedKeyword:case On.IntrinsicKeyword:return this.createNode(e,{type:hs[`TS${On[e.kind]}`]});case On.NonNullExpression:{let C=this.createNode(e,{type:hs.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(C,e)}case On.TypeLiteral:return this.createNode(e,{type:hs.TSTypeLiteral,members:e.members.map(C=>this.convertChild(C))});case On.ArrayType:return this.createNode(e,{type:hs.TSArrayType,elementType:this.convertChild(e.elementType)});case On.IndexedAccessType:return this.createNode(e,{type:hs.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case On.ConditionalType:return this.createNode(e,{type:hs.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case On.TypeQuery:return this.createNode(e,{type:hs.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case On.MappedType:return e.members&&e.members.length>0&&fg(this,sg,kR).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,fg(this,sg,ENr).call(this,{type:hs.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===On.QuestionToken||yce(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===On.ReadonlyKeyword||yce(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case On.ParenthesizedExpression:return this.convertChild(e.expression,t);case On.TypeAliasDeclaration:{let C=this.createNode(e,{type:hs.TSTypeAliasDeclaration,declare:vh(On.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,C)}case On.MethodSignature:return this.convertMethodSignature(e);case On.PropertySignature:{let{initializer:C}=e;return C&&fg(this,sg,$p).call(this,C,"A property signature cannot have an initializer."),this.createNode(e,{type:hs.TSPropertySignature,accessibility:xme(e),computed:fNe(e.name),key:this.convertChild(e.name),optional:DSi(e),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case On.IndexSignature:return this.createNode(e,{type:hs.TSIndexSignature,accessibility:xme(e),parameters:e.parameters.map(C=>this.convertChild(C)),readonly:vh(On.ReadonlyKeyword,e),static:vh(On.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case On.ConstructorType:return this.createNode(e,{type:hs.TSConstructorType,abstract:vh(On.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case On.FunctionType:{let{modifiers:C}=e;C&&fg(this,sg,$p).call(this,C[0],"A function type cannot have modifiers.")}case On.ConstructSignature:case On.CallSignature:{let C=e.kind===On.ConstructSignature?hs.TSConstructSignatureDeclaration:e.kind===On.CallSignature?hs.TSCallSignatureDeclaration:hs.TSFunctionType;return this.createNode(e,{type:C,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case On.ExpressionWithTypeArguments:{let C=t.kind,b=C===On.InterfaceDeclaration?hs.TSInterfaceHeritage:C===On.HeritageClause?hs.TSClassImplements:hs.TSInstantiationExpression;return this.createNode(e,{type:b,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case On.InterfaceDeclaration:{let C=e.heritageClauses??[],b=[];for(let N of C){N.token!==On.ExtendsKeyword&&fg(this,sg,$p).call(this,N,N.token===On.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let B of N.types)b.push(this.convertChild(B,e))}let E=this.createNode(e,{type:hs.TSInterfaceDeclaration,body:this.createNode(e,{type:hs.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(N=>this.convertChild(N))}),declare:vh(On.DeclareKeyword,e),extends:b,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,E)}case On.TypePredicate:{let C=this.createNode(e,{type:hs.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(C.typeAnnotation=this.convertTypeAnnotation(e.type,e),C.typeAnnotation.loc=C.typeAnnotation.typeAnnotation.loc,C.typeAnnotation.range=C.typeAnnotation.typeAnnotation.range),C}case On.ImportType:{let C=iJe(e,this.ast);if(e.isTypeOf){let E=pNe(e.getFirstToken(),e,this.ast);C[0]=E.getStart(this.ast)}let b=this.createNode(e,{type:hs.TSImportType,range:C,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:hs.TSTypeQuery,exprName:b,typeArguments:void 0}):b}case On.EnumDeclaration:{let C=e.members.map(E=>this.convertChild(E)),b=this.createNode(e,fg(this,sg,ENr).call(this,{type:hs.TSEnumDeclaration,body:this.createNode(e,{type:hs.TSEnumBody,range:[e.members.pos-1,e.end],members:C}),const:vh(On.ConstKeyword,e),declare:vh(On.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(E=>this.convertChild(E))));return this.fixExports(e,b)}case On.EnumMember:return this.createNode(e,{type:hs.TSEnumMember,computed:e.name.kind===Tp.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case On.ModuleDeclaration:{let C=vh(On.DeclareKeyword,e),b=this.createNode(e,{type:hs.TSModuleDeclaration,...(()=>{if(e.flags&IO.GlobalAugmentation){let N=this.convertChild(e.name),B=this.convertChild(e.body);return(B==null||B.type===hs.TSModuleDeclaration)&&fg(this,sg,kR).call(this,e.body??e,"Expected a valid module body"),N.type!==hs.Identifier&&fg(this,sg,kR).call(this,e.name,"global module augmentation must have an Identifier id"),{body:B,declare:!1,global:!1,id:N,kind:"global"}}if(!(e.flags&IO.Namespace)){let N=this.convertChild(e.body);return{kind:"module",...N!=null?{body:N}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&fg(this,sg,kR).call(this,e,"Expected a module body"),e.name.kind!==Tp.Identifier&&fg(this,sg,kR).call(this,e.name,"`namespace`s must have an Identifier id");let E=this.createNode(e.name,{type:hs.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&bJe(e.body)&&e.body.name;){e=e.body,C||(C=vh(On.DeclareKeyword,e));let N=e.name,B=this.createNode(N,{type:hs.Identifier,range:[N.getStart(this.ast),N.getEnd()],decorators:[],name:N.text,optional:!1,typeAnnotation:void 0});E=this.createNode(N,{type:hs.TSQualifiedName,range:[E.range[0],B.range[1]],left:E,right:B})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:E,kind:"namespace"}})()});return b.declare=C,e.flags&IO.GlobalAugmentation&&(b.global=!0),this.fixExports(e,b)}case On.ParenthesizedType:return this.convertChild(e.type);case On.UnionType:return this.createNode(e,{type:hs.TSUnionType,types:e.types.map(C=>this.convertChild(C))});case On.IntersectionType:return this.createNode(e,{type:hs.TSIntersectionType,types:e.types.map(C=>this.convertChild(C))});case On.AsExpression:return this.createNode(e,{type:hs.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case On.InferType:return this.createNode(e,{type:hs.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case On.LiteralType:return e.literal.kind===On.NullKeyword?this.createNode(e.literal,{type:hs.TSNullKeyword}):this.createNode(e,{type:hs.TSLiteralType,literal:this.convertChild(e.literal)});case On.TypeAssertionExpression:return this.createNode(e,{type:hs.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case On.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:hs.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case On.ExternalModuleReference:return e.expression.kind!==On.StringLiteral&&fg(this,sg,$p).call(this,e.expression,"String literal expected."),this.createNode(e,{type:hs.TSExternalModuleReference,expression:this.convertChild(e.expression)});case On.NamespaceExportDeclaration:return this.createNode(e,{type:hs.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case On.AbstractKeyword:return this.createNode(e,{type:hs.TSAbstractKeyword});case On.TupleType:{let C=e.elements.map(b=>this.convertChild(b));return this.createNode(e,{type:hs.TSTupleType,elementTypes:C})}case On.NamedTupleMember:{let C=this.createNode(e,{type:hs.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(C.range[0]=C.label.range[0],C.loc.start=C.label.loc.start,this.createNode(e,{type:hs.TSRestType,typeAnnotation:C})):C}case On.OptionalType:return this.createNode(e,{type:hs.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case On.RestType:return this.createNode(e,{type:hs.TSRestType,typeAnnotation:this.convertChild(e.type)});case On.TemplateLiteralType:{let C=this.createNode(e,{type:hs.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(b=>{C.types.push(this.convertChild(b.type)),C.quasis.push(this.convertChild(b.literal))}),C}case On.ClassStaticBlockDeclaration:return this.createNode(e,{type:hs.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case On.AssertEntry:case On.ImportAttribute:return this.createNode(e,{type:hs.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case On.SatisfiesExpression:return this.createNode(e,{type:hs.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=iJe(e,this.ast)),r.loc??(r.loc=Zme(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===Tp.JSDocFunctionType&&fg(this,sg,$p).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${On[e.kind]}`;if(this.options.errorOnUnknownASTType&&!hs[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&Zza(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let n=_Ne(e);n!=null&&n.length&&(r.decorators=n.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,l])=>{Array.isArray(l)?r[o]=l.map(A=>this.convertChild(A)):l&&typeof l=="object"&&l.kind?r[o]=this.convertChild(l):r[o]=l}),r}fixExports(e,t){let r=bJe(e)&&e.flags&IO.Namespace?Arc(e):Ij(e);if(r?.[0].kind===On.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let n=r[0],a=r[1],o=a?.kind===On.DefaultKeyword,l=o?pNe(a,this.ast,this.ast):pNe(n,this.ast,this.ast);if(t.range[0]=l.getStart(this.ast),t.loc=Zme(t.range,this.ast),o)return this.createNode(e,{type:hs.ExportDefaultDeclaration,range:[n.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let A=t.type===hs.TSInterfaceDeclaration||t.type===hs.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,fg(this,sg,yNe).call(this,{type:hs.ExportNamedDeclaration,range:[n.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:A||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};sg=new WeakSet,bNr=function(e,t){let r=t===Tp.ForInStatement?"for...in":"for...of";if(hec(e)){e.declarations.length!==1&&fg(this,sg,$p).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let n=e.declarations[0];n.initializer?fg(this,sg,$p).call(this,n,`The variable declaration of a '${r}' statement cannot have an initializer.`):n.type&&fg(this,sg,$p).call(this,n,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===Tp.ForInStatement&&e.flags&IO.Using&&fg(this,sg,$p).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!lDr(e)&&e.kind!==Tp.ObjectLiteralExpression&&e.kind!==Tp.ArrayLiteralExpression&&fg(this,sg,$p).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},HBi=function(e){if(!this.options.allowInvalidAST){trc(e)&&fg(this,sg,$p).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of _Ne(e,!0)??[])grc(e)||(INr(e)&&!kSi(e.body)?fg(this,sg,$p).call(this,t,"A decorator can only decorate a method implementation, not an overload."):fg(this,sg,$p).call(this,t,"Decorators are not valid here."));for(let t of Ij(e,!0)??[]){if(t.kind!==On.ReadonlyKeyword&&((e.kind===On.PropertySignature||e.kind===On.MethodSignature)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a type member`),e.kind===On.IndexSignature&&(t.kind!==On.StaticKeyword||!BNe(e.parent))&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==On.InKeyword&&t.kind!==On.OutKeyword&&t.kind!==On.ConstKeyword&&e.kind===On.TypeParameter&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===On.InKeyword||t.kind===On.OutKeyword)&&(e.kind!==On.TypeParameter||!(nDr(e.parent)||BNe(e.parent)||pBi(e.parent)))&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===On.ReadonlyKeyword&&e.kind!==On.PropertyDeclaration&&e.kind!==On.PropertySignature&&e.kind!==On.IndexSignature&&e.kind!==On.Parameter&&fg(this,sg,$p).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===On.DeclareKeyword&&BNe(e.parent)&&!Kbt(e)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===On.DeclareKeyword&&rEt(e)){let r=yNr(e.declarationList);(r==="using"||r==="await using")&&fg(this,sg,$p).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===On.AbstractKeyword&&e.kind!==On.ClassDeclaration&&e.kind!==On.ConstructorType&&e.kind!==On.MethodDeclaration&&e.kind!==On.PropertyDeclaration&&e.kind!==On.GetAccessor&&e.kind!==On.SetAccessor&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===On.StaticKeyword||t.kind===On.PublicKeyword||t.kind===On.ProtectedKeyword||t.kind===On.PrivateKeyword)&&(e.parent.kind===On.ModuleBlock||e.parent.kind===On.SourceFile)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===On.AccessorKeyword&&e.kind!==On.PropertyDeclaration&&fg(this,sg,$p).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===On.AsyncKeyword&&e.kind!==On.MethodDeclaration&&e.kind!==On.FunctionDeclaration&&e.kind!==On.FunctionExpression&&e.kind!==On.ArrowFunction&&fg(this,sg,$p).call(this,t,"'async' modifier cannot be used here."),e.kind===On.Parameter&&(t.kind===On.StaticKeyword||t.kind===On.ExportKeyword||t.kind===On.DeclareKeyword||t.kind===On.AsyncKeyword)&&fg(this,sg,$p).call(this,t,`'${by(t.kind)}' modifier cannot appear on a parameter.`),t.kind===On.PublicKeyword||t.kind===On.ProtectedKeyword||t.kind===On.PrivateKeyword)for(let r of Ij(e)??[])r!==t&&(r.kind===On.PublicKeyword||r.kind===On.ProtectedKeyword||r.kind===On.PrivateKeyword)&&fg(this,sg,$p).call(this,r,"Accessibility modifier already seen.");if(e.kind===On.Parameter&&(t.kind===On.PublicKeyword||t.kind===On.PrivateKeyword||t.kind===On.ProtectedKeyword||t.kind===On.ReadonlyKeyword||t.kind===On.OverrideKeyword)){let r=arc(e);r.kind===On.Constructor&&kSi(r.body)||fg(this,sg,$p).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},$p=function(e,t){let r,n;throw typeof e=="number"?r=n=e:(r=e.getStart(this.ast),n=e.getEnd()),OBi(t,this.ast,r,n)},kR=function(e,t){this.options.allowInvalidAST||fg(this,sg,$p).call(this,e,t)},yNe=function(e,t,r,n=!1){let a=n;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},ENr=function(e,t,r,n){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>n:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),n),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function frc(e,t,r=e.getSourceFile()){let n=[];for(;;){if(Dvi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)n.push(a[o])}if(n.length===0)break;e=n.pop()}}function Irc(e,t,r=e.getSourceFile()){let n=r.text,a=r.languageVariant!==ivi.JSX;return frc(e,l=>{if(l.pos!==l.end&&(l.kind!==Tp.JsxText&&X7a(n,l.pos===0?(bvi(n)??"").length:l.pos,o),a||hrc(l)))return J7a(n,l.end,o)},r);function o(l,A,f){t(n,{end:A,kind:f,pos:l})}}function hrc(e){switch(e.kind){case Tp.CloseBraceToken:return e.parent.kind!==Tp.JsxExpression||!rNr(e.parent.parent);case Tp.GreaterThanToken:switch(e.parent.kind){case Tp.JsxClosingElement:case Tp.JsxClosingFragment:return!rNr(e.parent.parent.parent);case Tp.JsxOpeningElement:return e.end!==e.parent.end;case Tp.JsxOpeningFragment:return!1;case Tp.JsxSelfClosingElement:return e.end!==e.parent.end||!rNr(e.parent.parent)}}return!0}function rNr(e){return e.kind===Tp.JsxElement||e.kind===Tp.JsxFragment}var[fRu,IRu]=O6a.split(".").map(e=>Number.parseInt(e,10)),hRu=kG.Intrinsic??kG.Any|kG.Unknown|kG.String|kG.Number|kG.BigInt|kG.Boolean|kG.BooleanLiteral|kG.ESSymbol|kG.Void|kG.Undefined|kG.Null|kG.Never|kG.NonPrimitive;function mrc(e,t){let r=[];return Irc(e,(n,a)=>{let o=a.kind===Tp.SingleLineCommentTrivia?sD.Line:sD.Block,l=[a.pos,a.end],A=Zme(l,e),f=l[0]+2,I=a.kind===Tp.SingleLineCommentTrivia?l[1]-f:l[1]-f-2;r.push({type:o,loc:A,range:l,value:t.slice(f,f+I)})},e),r}var Crc=()=>{};function _rc(e,t,r){let{parseDiagnostics:n}=e;if(n.length)throw drc(n[0]);let a=new prc(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&Crc(o,{enter:l=>{t.range||delete l.range,t.loc||delete l.loc}}),t.tokens&&(o.tokens=$tc(e)),t.comment&&(o.comments=mrc(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function YBi(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===Tp.SourceFile&&typeof t.getFullText=="function"}var yrc=function(e){return e&&e.__esModule?e:{default:e}},brc=yrc({extname:e=>"."+e.split(".").pop()});function Erc(e,t){switch(brc.default.extname(e).toLowerCase()){case tH.Cjs:case tH.Js:case tH.Mjs:return Bee.JS;case tH.Cts:case tH.Mts:case tH.Ts:return Bee.TS;case tH.Json:return Bee.JSON;case tH.Jsx:return Bee.JSX;case tH.Tsx:return Bee.TSX;default:return t?Bee.TSX:Bee.TS}}var Src={default:TNr},vrc=(0,Src.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function Brc(e){return vrc("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),YBi(e.code)?e.code:atc(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:GNr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,Erc(e.filePath,e.jsx))}var wrc=()=>{},Trc=e=>e,Rrc=class{},Nrc=()=>!1,Drc=()=>{},krc=function(e){return e&&e.__esModule?e:{default:e}},SNr={default:TNr},xrc=krc({extname:e=>"."+e.split(".").pop()}),Grc=(0,SNr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),xSi,GSi=null,FSi,ZSi,LSi,VSi,sJe={ParseAll:(FSi=lJe)==null?void 0:FSi.ParseAll,ParseForTypeErrors:(ZSi=lJe)==null?void 0:ZSi.ParseForTypeErrors,ParseForTypeInfo:(LSi=lJe)==null?void 0:LSi.ParseForTypeInfo,ParseNone:(VSi=lJe)==null?void 0:VSi.ParseNone};function Frc(e,t={}){var r;let n=Zrc(e),a=Nrc(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",l=typeof t.loggerFn=="function",A=Trc(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:Lrc(t.jsx),o),f=xrc.default.extname(A).toLowerCase(),I=(()=>{switch(t.jsDocParsingMode){case"all":return sJe.ParseAll;case"none":return sJe.ParseNone;case"type-info":return sJe.ParseForTypeInfo;default:return sJe.ParseAll}})(),C={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:n,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(b=>typeof b=="string")?t.extraFileExtensions:[],filePath:A,jsDocParsingMode:I,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?GSi??(GSi=wrc(t.projectService,I,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===tH.Mjs||t.sourceType==null&&f===tH.Mts?b=>{b.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:xSi??(xSi=new Rrc(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(C.debugLevel.size>0){let b=[];C.debugLevel.has("typescript-eslint")&&b.push("typescript-eslint:*"),(C.debugLevel.has("eslint")||SNr.default.enabled("eslint:*,-eslint:code-path"))&&b.push("eslint:*,-eslint:code-path"),SNr.default.enable(b.join(","))}if(Array.isArray(t.programs)){if(!t.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");Grc("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!C.programs&&!C.projectService&&(C.projects=new Map),t.jsDocParsingMode==null&&C.projects.size===0&&C.programs==null&&C.projectService==null&&(C.jsDocParsingMode=sJe.ParseNone),Drc(C,l),C}function Zrc(e){return YBi(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function Lrc(e){return e?"estree.tsx":"estree.ts"}var Vrc={default:TNr},mRu=(0,Vrc.default)("typescript-eslint:typescript-estree:parser");function Prc(e,t){let{ast:r}=Wrc(e,t,!1);return r}function Wrc(e,t,r){let n=Frc(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=Brc(n),{astMaps:o,estree:l}=_rc(a,n,r);return{ast:l,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function Orc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Mrc=Orc;function Hrc(e){let t=[];for(let r of e)try{return r()}catch(n){t.push(n)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var Yrc=Hrc,Qrc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},PSi=Qrc;function Xrc(e){return Array.isArray(e)&&e.length>0}var Jrc=Xrc;function pj(e){var t,r,n;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(n=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:n[0];return o?Math.min(pj(o),a):a}function Lme(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Urc(e){let t=new Set(e);return r=>t.has(r?.type)}var Krc=Urc,jrc=Krc(["Block","CommentBlock","MultiLine"]),vNr=jrc;function zrc(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var WSi=zrc;function qrc(e){return vNr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var $rc=qrc,oJe=null;function IJe(e){if(oJe!==null&&typeof oJe.property){let t=oJe;return oJe=IJe.prototype=null,t}return oJe=IJe.prototype=e??Object.create(null),new IJe}var enc=10;for(let e=0;e<=enc;e++)IJe();function tnc(e){return IJe(e)}function rnc(e,t="type"){tnc(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var nnc=rnc,inc={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},snc=nnc(inc),onc=snc;function BNr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let n=0;n{var l;(l=o.leadingComments)!=null&&l.some($rc)&&a.add(pj(o))}),e=nNr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:l}=o;if(l.type==="TypeCastExpression")return l.range=[...o.range],l;let A=pj(o);if(!a.has(A))return l.extra={...l.extra,parenthesized:!0},l}})}if(e=nNr(e,a=>{switch(a.type){case"LogicalExpression":if(QBi(a))return wNr(a);break;case"VariableDeclaration":{let o=PSi(!1,a.declarations,-1);o!=null&&o.init&&n[Lme(o)]!==";"&&(a.range=[pj(a),Lme(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=pj(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),Jrc(e.comments)){let a=PSi(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let l=e.comments[o];Lme(l)===pj(a)&&vNr(l)&&vNr(a)&&WSi(l)&&WSi(a)&&(e.comments.splice(o+1,1),l.value+="*//*"+a.value,l.range=[pj(l),Lme(a)]),a=l}}return e.type==="Program"&&(e.range=[0,n.length]),e}function QBi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function wNr(e){return QBi(e)?wNr({type:"LogicalExpression",operator:e.operator,left:wNr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[pj(e.left),Lme(e.right.left)]}),right:e.right.right,range:[pj(e),Lme(e)]}):e}var cnc=anc,lnc=/\*\/$/,unc=/^\/\*\*?/,gnc=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Anc=/(^|\s+)\/\/([^\n\r]*)/g,OSi=/^(\r?\n)+/,dnc=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,MSi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,pnc=/(\r?\n|^) *\* ?/g,fnc=[];function Inc(e){let t=e.match(gnc);return t?t[0].trimStart():""}function hnc(e){let t=` -`;e=bNe(!1,e.replace(unc,"").replace(lnc,""),pnc,"$1");let r="";for(;r!==e;)r=e,e=bNe(!1,e,dnc,`${t}$1 $2${t}`);e=e.replace(OSi,"").trimEnd();let n=Object.create(null),a=bNe(!1,e,MSi,"").replace(OSi,"").trimEnd(),o;for(;o=MSi.exec(e);){let l=bNe(!1,o[2],Anc,"");if(typeof n[o[1]]=="string"||Array.isArray(n[o[1]])){let A=n[o[1]];n[o[1]]=[...fnc,...Array.isArray(A)?A:[A],l]}else n[o[1]]=l}return{comments:a,pragmas:n}}function mnc(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var Cnc=mnc;function _nc(e){let t=Cnc(e);t&&(e=e.slice(t.length+1));let r=Inc(e),{pragmas:n,comments:a}=hnc(r);return{shebang:t,text:e,pragmas:n,comments:a}}function ync(e){let{pragmas:t}=_nc(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function bnc(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:ync,locStart:pj,locEnd:Lme,...e}}var Enc=bnc;function Snc(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var vnc=Snc;function Bnc(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var wnc=Bnc,Tnc={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function Rnc(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:n}}=e;return Mrc(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:n.line,column:n.column+1}},cause:e})}var Nnc=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function Dnc(e,t){let r=t?.filepath,n=[{...Tnc,filePath:r}],a=vnc(t);if(a?n=n.map(l=>({...l,sourceType:a})):n=["module","script"].flatMap(l=>n.map(A=>({...A,sourceType:l}))),r&&Nnc(r))return n;let o=xnc(e);return[o,!o].flatMap(l=>n.map(A=>({...A,jsx:l})))}function knc(e,t={}){let r=wnc(e),n=Dnc(e,t),a;try{a=Yrc(n.map(o=>()=>Prc(r,o)))}catch({errors:[o]}){throw Rnc(o)}return cnc(a,{text:e})}function xnc(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var Gnc=Enc(knc),Fnc=XSi;var xJe={};sI(xJe,{default:()=>poc,languages:()=>Pwi,options:()=>Wwi,parsers:()=>xDr,printers:()=>eTi});var Znc=Object.create,SDr=Object.defineProperty,Lnc=Object.getOwnPropertyDescriptor,Vnc=Object.getOwnPropertyNames,Pnc=Object.getPrototypeOf,Wnc=Object.prototype.hasOwnProperty,Dee=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),nwi=(e,t)=>{for(var r in t)SDr(e,r,{get:t[r],enumerable:!0})},Onc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Vnc(t))!Wnc.call(e,a)&&a!==r&&SDr(e,a,{get:()=>t[a],enumerable:!(n=Lnc(t,a))||n.enumerable});return e},iwi=(e,t,r)=>(r=e!=null?Znc(Pnc(e)):{},Onc(t||!e||!e.__esModule?SDr(r,"default",{value:e,enumerable:!0}):r,e)),Kme=Dee(e=>{"use strict";var t={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},n="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ne){let ce=[0],fe=ne.indexOf(` -`);for(;fe!==-1;)fe+=1,ce.push(fe),fe=ne.indexOf(` -`,fe);return ce}function l(ne){let ce,fe;return typeof ne=="string"?(ce=o(ne),fe=ne):(Array.isArray(ne)&&(ne=ne[0]),ne&&ne.context&&(ne.lineStarts||(ne.lineStarts=o(ne.context.src)),ce=ne.lineStarts,fe=ne.context.src)),{lineStarts:ce,src:fe}}function A(ne,ce){if(typeof ne!="number"||ne<0)return null;let{lineStarts:fe,src:ue}=l(ce);if(!fe||!ue||ne>ue.length)return null;for(let be=0;be=1)||ne>fe.length)return null;let de=fe[ne-1],be=fe[ne];for(;be&&be>de&&ue[be-1]===` -`;)--be;return ue.slice(de,be)}function I({start:ne,end:ce},fe,ue=80){let de=f(ne.line,fe);if(!de)return null;let{col:be}=ne;if(de.length>ue)if(be<=ue-10)de=de.substr(0,ue-1)+"\u2026";else{let ct=Math.round(ue/2);de.length>be+ct&&(de=de.substr(0,be+ct-1)+"\u2026"),be-=de.length-ue,de="\u2026"+de.substr(1-ue)}let Se=1,De="";ce&&(ce.line===ne.line&&be+(ce.col-ne.col)<=ue+1?Se=ce.col-ne.col:(Se=Math.min(de.length+1,ue)-be,De="\u2026"));let k=be>1?" ".repeat(be-1):"",et="^".repeat(Se);return`${de} -${k}${et}${De}`}var C=class swi{static copy(ce){return new swi(ce.start,ce.end)}constructor(ce,fe){this.start=ce,this.end=fe||ce}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ce,fe){let{start:ue,end:de}=this;if(ce.length===0||de<=ce[0])return this.origStart=ue,this.origEnd=de,fe;let be=fe;for(;beue);)++be;this.origStart=ue+be;let Se=be;for(;be=de);)++be;return this.origEnd=de+be,Se}},b=class Ree{static addStringTerminator(ce,fe,ue){if(ue[ue.length-1]===` -`)return ue;let de=Ree.endOfWhiteSpace(ce,fe);return de>=ce.length||ce[de]===` -`?ue+` -`:ue}static atDocumentBoundary(ce,fe,ue){let de=ce[fe];if(!de)return!0;let be=ce[fe-1];if(be&&be!==` -`)return!1;if(ue){if(de!==ue)return!1}else if(de!==t.DIRECTIVES_END&&de!==t.DOCUMENT_END)return!1;let Se=ce[fe+1],De=ce[fe+2];if(Se!==de||De!==de)return!1;let k=ce[fe+3];return!k||k===` -`||k===" "||k===" "}static endOfIdentifier(ce,fe){let ue=ce[fe],de=ue==="<",be=de?[` -`," "," ",">"]:[` -`," "," ","[","]","{","}",","];for(;ue&&be.indexOf(ue)===-1;)ue=ce[fe+=1];return de&&ue===">"&&(fe+=1),fe}static endOfIndent(ce,fe){let ue=ce[fe];for(;ue===" ";)ue=ce[fe+=1];return fe}static endOfLine(ce,fe){let ue=ce[fe];for(;ue&&ue!==` -`;)ue=ce[fe+=1];return fe}static endOfWhiteSpace(ce,fe){let ue=ce[fe];for(;ue===" "||ue===" ";)ue=ce[fe+=1];return fe}static startOfLine(ce,fe){let ue=ce[fe-1];if(ue===` -`)return fe;for(;ue&&ue!==` -`;)ue=ce[fe-=1];return fe+1}static endOfBlockIndent(ce,fe,ue){let de=Ree.endOfIndent(ce,ue);if(de>ue+fe)return de;{let be=Ree.endOfWhiteSpace(ce,de),Se=ce[be];if(!Se||Se===` -`)return be}return null}static atBlank(ce,fe,ue){let de=ce[fe];return de===` -`||de===" "||de===" "||ue&&!de}static nextNodeIsIndented(ce,fe,ue){return!ce||fe<0?!1:fe>0?!0:ue&&ce==="-"}static normalizeOffset(ce,fe){let ue=ce[fe];return ue?ue!==` -`&&ce[fe-1]===` -`?fe-1:Ree.endOfWhiteSpace(ce,fe):fe}static foldNewline(ce,fe,ue){let de=0,be=!1,Se="",De=ce[fe+1];for(;De===" "||De===" "||De===` -`;){switch(De){case` -`:de=0,fe+=1,Se+=` -`;break;case" ":de<=ue&&(be=!0),fe=Ree.endOfWhiteSpace(ce,fe+2)-1;break;case" ":de+=1,fe+=1;break}De=ce[fe+1]}return Se||(Se=" "),De&&de<=ue&&(be=!0),{fold:Se,offset:fe,error:be}}constructor(ce,fe,ue){Object.defineProperty(this,"context",{value:ue||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ce,this.value=null}getPropValue(ce,fe,ue){if(!this.context)return null;let{src:de}=this.context,be=this.props[ce];return be&&de[be.start]===fe?de.slice(be.start+(ue?1:0),be.end):null}get anchor(){for(let ce=0;ce0?ce.join(` -`):null}commentHasRequiredWhitespace(ce){let{src:fe}=this.context;if(this.header&&ce===this.header.end||!this.valueRange)return!1;let{end:ue}=this.valueRange;return ce!==ue||Ree.atBlank(fe,ue-1)}get hasComment(){if(this.context){let{src:ce}=this.context;for(let fe=0;feue.setOrigRange(ce,fe)),fe}toString(){let{context:{src:ce},range:fe,value:ue}=this;if(ue!=null)return ue;let de=ce.slice(fe.start,fe.end);return Ree.addStringTerminator(ce,fe.end,de)}},E=class extends Error{constructor(ne,ce,fe){if(!fe||!(ce instanceof b))throw new Error(`Invalid arguments for new ${ne}`);super(),this.name=ne,this.message=fe,this.source=ce}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ne=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new C(this.offset,this.offset+1);let ce=ne&&A(this.offset,ne);if(ce){let fe={line:ce.line,col:ce.col+1};this.linePos={start:ce,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ce,col:fe}=this.linePos.start;this.message+=` at line ${ce}, column ${fe}`;let ue=ne&&I(this.linePos,ne);ue&&(this.message+=`: - -${ue} -`)}delete this.source}},N=class extends E{constructor(ne,ce){super("YAMLReferenceError",ne,ce)}},B=class extends E{constructor(ne,ce){super("YAMLSemanticError",ne,ce)}},F=class extends E{constructor(ne,ce){super("YAMLSyntaxError",ne,ce)}},Q=class extends E{constructor(ne,ce){super("YAMLWarning",ne,ce)}};function X(ne,ce,fe){return ce in ne?Object.defineProperty(ne,ce,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ne[ce]=fe,ne}var ae=class pDr extends b{static endOfLine(ce,fe,ue){let de=ce[fe],be=fe;for(;de&&de!==` -`&&!(ue&&(de==="["||de==="]"||de==="{"||de==="}"||de===","));){let Se=ce[be+1];if(de===":"&&(!Se||Se===` -`||Se===" "||Se===" "||ue&&Se===",")||(de===" "||de===" ")&&Se==="#")break;be+=1,de=Se}return be}get strValue(){if(!this.valueRange||!this.context)return null;let{start:ce,end:fe}=this.valueRange,{src:ue}=this.context,de=ue[fe-1];for(;ceet?ue.slice(et,De+1):k)}else be+=k}let Se=ue[ce];switch(Se){case" ":{let De="Plain value cannot start with a tab character";return{errors:[new B(this,De)],str:be}}case"@":case"`":{let De=`Plain value cannot start with reserved character ${Se}`;return{errors:[new B(this,De)],str:be}}default:return be}}parseBlockValue(ce){let{indent:fe,inFlow:ue,src:de}=this.context,be=ce,Se=ce;for(let De=de[be];De===` -`&&!b.atDocumentBoundary(de,be+1);De=de[be]){let k=b.endOfBlockIndent(de,fe,be+1);if(k===null||de[k]==="#")break;de[k]===` -`?be=k:(Se=pDr.endOfLine(de,k,ue),be=Se)}return this.valueRange.isEmpty()&&(this.valueRange.start=ce),this.valueRange.end=Se,Se}parse(ce,fe){this.context=ce;let{inFlow:ue,src:de}=ce,be=fe,Se=de[be];return Se&&Se!=="#"&&Se!==` -`&&(be=pDr.endOfLine(de,fe,ue)),this.valueRange=new C(fe,be),be=b.endOfWhiteSpace(de,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=b,e.PlainValue=ae,e.Range=C,e.Type=r,e.YAMLError=E,e.YAMLReferenceError=N,e.YAMLSemanticError=B,e.YAMLSyntaxError=F,e.YAMLWarning=Q,e._defineProperty=X,e.defaultTagPrefix=n,e.defaultTags=a}),Mnc=Dee(e=>{"use strict";var t=Kme(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(ae,ne){return this.context=ae,this.range=new t.Range(ne,ne+1),ne+1}},n=class extends t.Node{constructor(ae,ne){super(ae,ne),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(ae,ne){this.context=ae;let{parseNode:ce,src:fe}=ae,{atLineStart:ue,lineStart:de}=ae;!ue&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=ue?ne-de:ae.indent,Se=t.Node.endOfWhiteSpace(fe,ne+1),De=fe[Se],k=De==="#",et=[],ct=null;for(;De===` -`||De==="#";){if(De==="#"){let je=t.Node.endOfLine(fe,Se+1);et.push(new t.Range(Se,je)),Se=je}else{ue=!0,de=Se+1;let je=t.Node.endOfWhiteSpace(fe,de);fe[je]===` -`&&et.length===0&&(ct=new r,de=ct.parse({src:fe},de)),Se=t.Node.endOfIndent(fe,de)}De=fe[Se]}if(t.Node.nextNodeIsIndented(De,Se-(de+be),this.type!==t.Type.SEQ_ITEM)?this.node=ce({atLineStart:ue,inCollection:!1,indent:be,lineStart:de,parent:this},Se):De&&de>ne+1&&(Se=de-1),this.node){if(ct){let je=ae.parent.items||ae.parent.contents;je&&je.push(ct)}et.length&&Array.prototype.push.apply(this.props,et),Se=this.node.range.end}else if(k){let je=et[0];this.props.push(je),Se=je.end}else Se=t.Node.endOfLine(fe,ne+1);let Me=this.node?this.node.valueRange.end:Se;return this.valueRange=new t.Range(ne,Me),Se}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.node?this.node.setOrigRanges(ae,ne):ne}toString(){let{context:{src:ae},node:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne?ae.slice(ce.start,ne.range.start)+String(ne):ae.slice(ce.start,ce.end);return t.Node.addStringTerminator(ae,ce.end,ue)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(ae,ne){this.context=ae;let ce=this.parseComment(ne);return this.range=new t.Range(ne,ce),ce}};function o(ae){let ne=ae;for(;ne instanceof n;)ne=ne.node;if(!(ne instanceof l))return null;let ce=ne.items.length,fe=-1;for(let be=ce-1;be>=0;--be){let Se=ne.items[be];if(Se.type===t.Type.COMMENT){let{indent:De,lineStart:k}=Se.context;if(De>0&&Se.range.start>=k+De)break;fe=be}else if(Se.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let ue=ne.items.splice(fe,ce-fe),de=ue[0].range.start;for(;ne.range.end=de,ne.valueRange&&ne.valueRange.end>de&&(ne.valueRange.end=de),ne!==ae;)ne=ne.context.parent;return ue}var l=class fDr extends t.Node{static nextContentHasIndent(ne,ce,fe){let ue=t.Node.endOfLine(ne,ce)+1;ce=t.Node.endOfWhiteSpace(ne,ue);let de=ne[ce];return de?ce>=ue+fe?!0:de!=="#"&&de!==` -`?!1:fDr.nextContentHasIndent(ne,ce,fe):!1}constructor(ne){super(ne.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ne.props.length-1;fe>=0;--fe)if(ne.props[fe].start0}parse(ne,ce){this.context=ne;let{parseNode:fe,src:ue}=ne,de=t.Node.startOfLine(ue,ce),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Se=be.range.start-be.context.lineStart,De=ce;De=t.Node.normalizeOffset(ue,De);let k=ue[De],et=t.Node.endOfWhiteSpace(ue,de)===De,ct=!1;for(;k;){for(;k===` -`||k==="#";){if(et&&k===` -`&&!ct){let St=new r;if(De=St.parse({src:ue},De),this.valueRange.end=De,De>=ue.length){k=null;break}this.items.push(St),De-=1}else if(k==="#"){if(De=ue.length){k=null;break}}if(de=De+1,De=t.Node.endOfIndent(ue,de),t.Node.atBlank(ue,De)){let St=t.Node.endOfWhiteSpace(ue,De),At=ue[St];(!At||At===` -`||At==="#")&&(De=St)}k=ue[De],et=!0}if(!k)break;if(De!==de+Se&&(et||k!==":")){if(Dece&&(De=de);break}else if(!this.error){let St="All collection items must start at the same column";this.error=new t.YAMLSyntaxError(this,St)}}if(be.type===t.Type.SEQ_ITEM){if(k!=="-"){de>ce&&(De=de);break}}else if(k==="-"&&!this.error){let St=ue[De+1];if(!St||St===` -`||St===" "||St===" "){let At="A collection cannot be both a mapping and a sequence";this.error=new t.YAMLSyntaxError(this,At)}}let Me=fe({atLineStart:et,inCollection:!0,indent:Se,lineStart:de,parent:this},De);if(!Me)return De;if(this.items.push(Me),this.valueRange.end=Me.valueRange.end,De=t.Node.normalizeOffset(ue,Me.range.end),k=ue[De],et=!1,ct=Me.includesTrailingLines,k){let St=De-1,At=ue[St];for(;At===" "||At===" ";)At=ue[--St];At===` -`&&(de=St+1,et=!0)}let je=o(Me);je&&Array.prototype.push.apply(this.items,je)}return De}setOrigRanges(ne,ce){return ce=super.setOrigRanges(ne,ce),this.items.forEach(fe=>{ce=fe.setOrigRanges(ne,ce)}),ce}toString(){let{context:{src:ne},items:ce,range:fe,value:ue}=this;if(ue!=null)return ue;let de=ne.slice(fe.start,ce[0].range.start)+String(ce[0]);for(let be=1;be0&&(this.contents=this.directives,this.directives=[]),de}return ce[de]?(this.directivesEndMarker=new t.Range(de,de+3),de+3):(ue?this.error=new t.YAMLSemanticError(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),de)}parseContents(ne){let{parseNode:ce,src:fe}=this.context;this.contents||(this.contents=[]);let ue=ne;for(;fe[ue-1]==="-";)ue-=1;let de=t.Node.endOfWhiteSpace(fe,ne),be=ue===ne;for(this.valueRange=new t.Range(de);!t.Node.atDocumentBoundary(fe,de,t.Char.DOCUMENT_END);){switch(fe[de]){case` -`:if(be){let Se=new r;de=Se.parse({src:fe},de),de{ce=fe.setOrigRanges(ne,ce)}),this.directivesEndMarker&&(ce=this.directivesEndMarker.setOrigRange(ne,ce)),this.contents.forEach(fe=>{ce=fe.setOrigRanges(ne,ce)}),this.documentEndMarker&&(ce=this.documentEndMarker.setOrigRange(ne,ce)),ce}toString(){let{contents:ne,directives:ce,value:fe}=this;if(fe!=null)return fe;let ue=ce.join("");return ne.length>0&&((ce.length>0||ne[0].type===t.Type.COMMENT)&&(ue+=`--- -`),ue+=ne.join("")),ue[ue.length-1]!==` -`&&(ue+=` -`),ue}},I=class extends t.Node{parse(ae,ne){this.context=ae;let{src:ce}=ae,fe=t.Node.endOfIdentifier(ce,ne+1);return this.valueRange=new t.Range(ne+1,fe),fe=t.Node.endOfWhiteSpace(ce,fe),fe=this.parseComment(fe),fe}},C={CLIP:"CLIP",KEEP:"KEEP",STRIP:"STRIP"},b=class extends t.Node{constructor(ae,ne){super(ae,ne),this.blockIndent=null,this.chomping=C.CLIP,this.header=null}get includesTrailingLines(){return this.chomping===C.KEEP}get strValue(){if(!this.valueRange||!this.context)return null;let{start:ae,end:ne}=this.valueRange,{indent:ce,src:fe}=this.context;if(this.valueRange.isEmpty())return"";let ue=null,de=fe[ne-1];for(;de===` -`||de===" "||de===" ";){if(ne-=1,ne<=ae){if(this.chomping===C.KEEP)break;return""}de===` -`&&(ue=ne),de=fe[ne-1]}let be=ne+1;ue&&(this.chomping===C.KEEP?(be=ue,ne=this.valueRange.end):ne=ue);let Se=ce+this.blockIndent,De=this.type===t.Type.BLOCK_FOLDED,k=!0,et="",ct="",Me=!1;for(let je=ae;jebe&&(be=et);ce[De]===` -`?ue=De:ue=de=t.Node.endOfLine(ce,De)}return this.chomping!==C.KEEP&&(ue=ce[de]?de+1:de),this.valueRange=new t.Range(ae+1,ue),ue}parse(ae,ne){this.context=ae;let{src:ce}=ae,fe=this.parseBlockHeader(ne);return fe=t.Node.endOfWhiteSpace(ce,fe),fe=this.parseComment(fe),fe=this.parseBlockValue(fe),fe}setOrigRanges(ae,ne){return ne=super.setOrigRanges(ae,ne),this.header?this.header.setOrigRange(ae,ne):ne}},E=class extends t.Node{constructor(ae,ne){super(ae,ne),this.items=null}prevNodeIsJsonLike(ae=this.items.length){let ne=this.items[ae-1];return!!ne&&(ne.jsonLike||ne.type===t.Type.COMMENT&&this.prevNodeIsJsonLike(ae-1))}parse(ae,ne){this.context=ae;let{parseNode:ce,src:fe}=ae,{indent:ue,lineStart:de}=ae,be=fe[ne];this.items=[{char:be,offset:ne}];let Se=t.Node.endOfWhiteSpace(fe,ne+1);for(be=fe[Se];be&&be!=="]"&&be!=="}";){switch(be){case` -`:{de=Se+1;let De=t.Node.endOfWhiteSpace(fe,de);if(fe[De]===` -`){let k=new r;de=k.parse({src:fe},de),this.items.push(k)}if(Se=t.Node.endOfIndent(fe,de),Se<=de+ue&&(be=fe[Se],Se{if(ce instanceof t.Node)ne=ce.setOrigRanges(ae,ne);else if(ae.length===0)ce.origOffset=ce.offset;else{let fe=ne;for(;fece.offset);)++fe;ce.origOffset=ce.offset+fe,ne=fe}}),ne}toString(){let{context:{src:ae},items:ne,range:ce,value:fe}=this;if(fe!=null)return fe;let ue=ne.filter(Se=>Se instanceof t.Node),de="",be=ce.start;return ue.forEach(Se=>{let De=ae.slice(be,Se.range.start);be=Se.range.end,de+=De+String(Se),de[de.length-1]===` -`&&ae[be-1]!==` -`&&ae[be]===` -`&&(be+=1)}),de+=ae.slice(be,ce.end),t.Node.addStringTerminator(ae,ce.end,de)}},N=class owi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe&&fe!=='"';)ce+=fe==="\\"?2:1,fe=ne[ce];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=='"'&&ne.push(new t.YAMLSyntaxError(this,'Missing closing "quote'));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parseCharCode(ne,ce,fe){let{src:ue}=this.context,de=ue.substr(ne,ce),be=de.length===ce&&/^[0-9a-fA-F]+$/.test(de)?parseInt(de,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${ue.substr(ne-2,ce+2)}`)),ue.substr(ne-2,ce+2)):String.fromCodePoint(be)}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=owi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}},B=class awi extends t.Node{static endOfQuote(ne,ce){let fe=ne[ce];for(;fe;)if(fe==="'"){if(ne[ce+1]!=="'")break;fe=ne[ce+=2]}else fe=ne[ce+=1];return ce+1}get strValue(){if(!this.valueRange||!this.context)return null;let ne=[],{start:ce,end:fe}=this.valueRange,{indent:ue,src:de}=this.context;de[fe-1]!=="'"&&ne.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Se=ce+1;Sek?de.slice(k,Se+1):De)}else be+=De}return ne.length>0?{errors:ne,str:be}:be}parse(ne,ce){this.context=ne;let{src:fe}=ne,ue=awi.endOfQuote(fe,ce+1);return this.valueRange=new t.Range(ce,ue),ue=t.Node.endOfWhiteSpace(fe,ue),ue=this.parseComment(ue),ue}};function F(ae,ne){switch(ae){case t.Type.ALIAS:return new I(ae,ne);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new b(ae,ne);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new E(ae,ne);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new n(ae,ne);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(ae,ne);case t.Type.QUOTE_DOUBLE:return new N(ae,ne);case t.Type.QUOTE_SINGLE:return new B(ae,ne);default:return null}}var Q=class iEt{static parseType(ne,ce,fe){switch(ne[ce]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ne,ce+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ne={},{atLineStart:ce,inCollection:fe,inFlow:ue,indent:de,lineStart:be,parent:Se}={}){t._defineProperty(this,"parseNode",(De,k)=>{if(t.Node.atDocumentBoundary(this.src,k))return null;let et=new iEt(this,De),{props:ct,type:Me,valueStart:je}=et.parseProps(k),St=F(Me,ct),At=St.parse(et,je);if(St.range=new t.Range(k,At),At<=k&&(St.error=new Error("Node#parse consumed no characters"),St.error.parseEnd=At,St.error.source=St,St.range.end=k+1),et.nodeStartsCollection(St)){!St.error&&!et.atLineStart&&et.parent.type===t.Type.DOCUMENT&&(St.error=new t.YAMLSyntaxError(St,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let Yt=new l(St);return At=Yt.parse(new iEt(et),At),Yt.range=new t.Range(k,At),Yt}return St}),this.atLineStart=ce??(ne.atLineStart||!1),this.inCollection=fe??(ne.inCollection||!1),this.inFlow=ue??(ne.inFlow||!1),this.indent=de??ne.indent,this.lineStart=be??ne.lineStart,this.parent=Se??(ne.parent||{}),this.root=ne.root,this.src=ne.src}nodeStartsCollection(ne){let{inCollection:ce,inFlow:fe,src:ue}=this;if(ce||fe)return!1;if(ne instanceof n)return!0;let de=ne.range.end;return ue[de]===` -`||ue[de-1]===` -`?!1:(de=t.Node.endOfWhiteSpace(ue,de),ue[de]===":")}parseProps(ne){let{inFlow:ce,parent:fe,src:ue}=this,de=[],be=!1;ne=this.atLineStart?t.Node.endOfIndent(ue,ne):t.Node.endOfWhiteSpace(ue,ne);let Se=ue[ne];for(;Se===t.Char.ANCHOR||Se===t.Char.COMMENT||Se===t.Char.TAG||Se===` -`;){if(Se===` -`){let k=ne,et;do et=k+1,k=t.Node.endOfIndent(ue,et);while(ue[k]===` -`);let ct=k-(et+this.indent),Me=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(ue[k]!=="#"&&!t.Node.nextNodeIsIndented(ue[k],ct,!Me))break;this.atLineStart=!0,this.lineStart=et,be=!1,ne=k}else if(Se===t.Char.COMMENT){let k=t.Node.endOfLine(ue,ne+1);de.push(new t.Range(ne,k)),ne=k}else{let k=t.Node.endOfIdentifier(ue,ne+1);Se===t.Char.TAG&&ue[k]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(ue.slice(ne+1,k+13))&&(k=t.Node.endOfIdentifier(ue,k+5)),de.push(new t.Range(ne,k)),be=!0,ne=t.Node.endOfWhiteSpace(ue,k)}Se=ue[ne]}be&&Se===":"&&t.Node.atBlank(ue,ne+1,!0)&&(ne-=1);let De=iEt.parseType(ue,ne,ce);return{props:de,type:De,valueStart:ne}}};function X(ae){let ne=[];ae.indexOf("\r")!==-1&&(ae=ae.replace(/\r\n?/g,(ue,de)=>(ue.length>1&&ne.push(de),` -`)));let ce=[],fe=0;do{let ue=new f,de=new Q({src:ae});fe=ue.parse(de,fe),ce.push(ue)}while(fe{if(ne.length===0)return!1;for(let de=1;dece.join(`... -`),ce}e.parse=X}),NJe=Dee(e=>{"use strict";var t=Kme();function r(Hr,Wr,Ft){return Ft?`#${Ft.replace(/[\s\S]^/gm,`$&${Wr}#`)} -${Wr}${Hr}`:Hr}function n(Hr,Wr,Ft){return Ft?Ft.indexOf(` -`)===-1?`${Hr} #${Ft}`:`${Hr} -`+Ft.replace(/^/gm,`${Wr||""}#`):Hr}var a=class{};function o(Hr,Wr,Ft){if(Array.isArray(Hr))return Hr.map((zr,Rn)=>o(zr,String(Rn),Ft));if(Hr&&typeof Hr.toJSON=="function"){let zr=Ft&&Ft.anchors&&Ft.anchors.get(Hr);zr&&(Ft.onCreate=Or=>{zr.res=Or,delete Ft.onCreate});let Rn=Hr.toJSON(Wr,Ft);return zr&&Ft.onCreate&&Ft.onCreate(Rn),Rn}return(!Ft||!Ft.keep)&&typeof Hr=="bigint"?Number(Hr):Hr}var l=class extends a{constructor(Hr){super(),this.value=Hr}toJSON(Hr,Wr){return Wr&&Wr.keep?this.value:o(this.value,Hr,Wr)}toString(){return String(this.value)}};function A(Hr,Wr,Ft){let zr=Ft;for(let Rn=Wr.length-1;Rn>=0;--Rn){let Or=Wr[Rn];if(Number.isInteger(Or)&&Or>=0){let Qi=[];Qi[Or]=zr,zr=Qi}else{let Qi={};Object.defineProperty(Qi,Or,{value:zr,writable:!0,enumerable:!0,configurable:!0}),zr=Qi}}return Hr.createNode(zr,!1)}var f=Hr=>Hr==null||typeof Hr=="object"&&Hr[Symbol.iterator]().next().done,I=class Jme extends a{constructor(Wr){super(),t._defineProperty(this,"items",[]),this.schema=Wr}addIn(Wr,Ft){if(f(Wr))this.add(Ft);else{let[zr,...Rn]=Wr,Or=this.get(zr,!0);if(Or instanceof Jme)Or.addIn(Rn,Ft);else if(Or===void 0&&this.schema)this.set(zr,A(this.schema,Rn,Ft));else throw new Error(`Expected YAML collection at ${zr}. Remaining path: ${Rn}`)}}deleteIn([Wr,...Ft]){if(Ft.length===0)return this.delete(Wr);let zr=this.get(Wr,!0);if(zr instanceof Jme)return zr.deleteIn(Ft);throw new Error(`Expected YAML collection at ${Wr}. Remaining path: ${Ft}`)}getIn([Wr,...Ft],zr){let Rn=this.get(Wr,!0);return Ft.length===0?!zr&&Rn instanceof l?Rn.value:Rn:Rn instanceof Jme?Rn.getIn(Ft,zr):void 0}hasAllNullValues(){return this.items.every(Wr=>{if(!Wr||Wr.type!=="PAIR")return!1;let Ft=Wr.value;return Ft==null||Ft instanceof l&&Ft.value==null&&!Ft.commentBefore&&!Ft.comment&&!Ft.tag})}hasIn([Wr,...Ft]){if(Ft.length===0)return this.has(Wr);let zr=this.get(Wr,!0);return zr instanceof Jme?zr.hasIn(Ft):!1}setIn([Wr,...Ft],zr){if(Ft.length===0)this.set(Wr,zr);else{let Rn=this.get(Wr,!0);if(Rn instanceof Jme)Rn.setIn(Ft,zr);else if(Rn===void 0&&this.schema)this.set(Wr,A(this.schema,Ft,zr));else throw new Error(`Expected YAML collection at ${Wr}. Remaining path: ${Ft}`)}}toJSON(){return null}toString(Wr,{blockItem:Ft,flowChars:zr,isMap:Rn,itemIndent:Or},Qi,ps){let{indent:yo,indentStep:bo,stringify:Qa}=Wr,gc=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Wr.inFlow;gc&&(Or+=bo);let Cg=Rn&&this.hasAllNullValues();Wr=Object.assign({},Wr,{allNullValues:Cg,indent:Or,inFlow:gc,type:null});let Nc=!1,iA=!1,ma=this.items.reduce((li,Ei,Ps)=>{let Xa;Ei&&(!Nc&&Ei.spaceBefore&&li.push({type:"comment",str:""}),Ei.commentBefore&&Ei.commentBefore.match(/^.*$/gm).forEach(Yl=>{li.push({type:"comment",str:`#${Yl}`})}),Ei.comment&&(Xa=Ei.comment),gc&&(!Nc&&Ei.spaceBefore||Ei.commentBefore||Ei.comment||Ei.key&&(Ei.key.commentBefore||Ei.key.comment)||Ei.value&&(Ei.value.commentBefore||Ei.value.comment))&&(iA=!0)),Nc=!1;let ac=Qa(Ei,Wr,()=>Xa=null,()=>Nc=!0);return gc&&!iA&&ac.includes(` -`)&&(iA=!0),gc&&PsXa.str);if(iA||Ps.reduce((Xa,ac)=>Xa+ac.length+2,2)>Jme.maxFlowStringSingleLineLength){vu=li;for(let Xa of Ps)vu+=Xa?` -${bo}${yo}${Xa}`:` -`;vu+=` -${yo}${Ei}`}else vu=`${li} ${Ps.join(" ")} ${Ei}`}else{let li=ma.map(Ft);vu=li.shift();for(let Ei of li)vu+=Ei?` -${yo}${Ei}`:` -`}return this.comment?(vu+=` -`+this.comment.replace(/^/gm,`${yo}#`),Qi&&Qi()):Nc&&ps&&ps(),vu}};t._defineProperty(I,"maxFlowStringSingleLineLength",60);function C(Hr){let Wr=Hr instanceof l?Hr.value:Hr;return Wr&&typeof Wr=="string"&&(Wr=Number(Wr)),Number.isInteger(Wr)&&Wr>=0?Wr:null}var b=class extends I{add(Hr){this.items.push(Hr)}delete(Hr){let Wr=C(Hr);return typeof Wr!="number"?!1:this.items.splice(Wr,1).length>0}get(Hr,Wr){let Ft=C(Hr);if(typeof Ft!="number")return;let zr=this.items[Ft];return!Wr&&zr instanceof l?zr.value:zr}has(Hr){let Wr=C(Hr);return typeof Wr=="number"&&Wrzr.type==="comment"?zr.str:`- ${zr.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(Hr.indent||"")+" "},Wr,Ft):JSON.stringify(this)}},E=(Hr,Wr,Ft)=>Wr===null?"":typeof Wr!="object"?String(Wr):Hr instanceof a&&Ft&&Ft.doc?Hr.toString({anchors:Object.create(null),doc:Ft.doc,indent:"",indentStep:Ft.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ft.stringify}):JSON.stringify(Wr),N=class cwi extends a{constructor(Wr,Ft=null){super(),this.key=Wr,this.value=Ft,this.type=cwi.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Wr){if(this.key==null&&(this.key=new l(null)),this.key instanceof a)this.key.commentBefore=Wr;else{let Ft="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ft)}}addToJSMap(Wr,Ft){let zr=o(this.key,"",Wr);if(Ft instanceof Map){let Rn=o(this.value,zr,Wr);Ft.set(zr,Rn)}else if(Ft instanceof Set)Ft.add(zr);else{let Rn=E(this.key,zr,Wr),Or=o(this.value,Rn,Wr);Rn in Ft?Object.defineProperty(Ft,Rn,{value:Or,writable:!0,enumerable:!0,configurable:!0}):Ft[Rn]=Or}return Ft}toJSON(Wr,Ft){let zr=Ft&&Ft.mapAsMap?new Map:{};return this.addToJSMap(Ft,zr)}toString(Wr,Ft,zr){if(!Wr||!Wr.doc)return JSON.stringify(this);let{indent:Rn,indentSeq:Or,simpleKeys:Qi}=Wr.doc.options,{key:ps,value:yo}=this,bo=ps instanceof a&&ps.comment;if(Qi){if(bo)throw new Error("With simple keys, key nodes cannot have comments");if(ps instanceof I){let ac="With simple keys, collection cannot be used as a key value";throw new Error(ac)}}let Qa=!Qi&&(!ps||bo||(ps instanceof a?ps instanceof I||ps.type===t.Type.BLOCK_FOLDED||ps.type===t.Type.BLOCK_LITERAL:typeof ps=="object")),{doc:gc,indent:Cg,indentStep:Nc,stringify:iA}=Wr;Wr=Object.assign({},Wr,{implicitKey:!Qa,indent:Cg+Nc});let ma=!1,vu=iA(ps,Wr,()=>bo=null,()=>ma=!0);if(vu=n(vu,Wr.indent,bo),!Qa&&vu.length>1024){if(Qi)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");Qa=!0}if(Wr.allNullValues&&!Qi)return this.comment?(vu=n(vu,Wr.indent,this.comment),Ft&&Ft()):ma&&!bo&&zr&&zr(),Wr.inFlow&&!Qa?vu:`? ${vu}`;vu=Qa?`? ${vu} -${Cg}:`:`${vu}:`,this.comment&&(vu=n(vu,Wr.indent,this.comment),Ft&&Ft());let li="",Ei=null;if(yo instanceof a){if(yo.spaceBefore&&(li=` -`),yo.commentBefore){let ac=yo.commentBefore.replace(/^/gm,`${Wr.indent}#`);li+=` -${ac}`}Ei=yo.comment}else yo&&typeof yo=="object"&&(yo=gc.schema.createNode(yo,!0));Wr.implicitKey=!1,!Qa&&!this.comment&&yo instanceof l&&(Wr.indentAtStart=vu.length+1),ma=!1,!Or&&Rn>=2&&!Wr.inFlow&&!Qa&&yo instanceof b&&yo.type!==t.Type.FLOW_SEQ&&!yo.tag&&!gc.anchors.getName(yo)&&(Wr.indent=Wr.indent.substr(2));let Ps=iA(yo,Wr,()=>Ei=null,()=>ma=!0),Xa=" ";return li||this.comment?Xa=`${li} -${Wr.indent}`:!Qa&&yo instanceof I?(!(Ps[0]==="["||Ps[0]==="{")||Ps.includes(` -`))&&(Xa=` -${Wr.indent}`):Ps[0]===` -`&&(Xa=""),ma&&!Ei&&zr&&zr(),n(vu+Xa+Ps,Wr.indent,Ei)}};t._defineProperty(N,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var B=(Hr,Wr)=>{if(Hr instanceof F){let Ft=Wr.get(Hr.source);return Ft.count*Ft.aliasCount}else if(Hr instanceof I){let Ft=0;for(let zr of Hr.items){let Rn=B(zr,Wr);Rn>Ft&&(Ft=Rn)}return Ft}else if(Hr instanceof N){let Ft=B(Hr.key,Wr),zr=B(Hr.value,Wr);return Math.max(Ft,zr)}return 1},F=class lwi extends a{static stringify({range:Wr,source:Ft},{anchors:zr,doc:Rn,implicitKey:Or,inStringifyKey:Qi}){let ps=Object.keys(zr).find(bo=>zr[bo]===Ft);if(!ps&&Qi&&(ps=Rn.anchors.getName(Ft)||Rn.anchors.newName()),ps)return`*${ps}${Or?" ":""}`;let yo=Rn.anchors.getName(Ft)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${yo} [${Wr}]`)}constructor(Wr){super(),this.source=Wr,this.type=t.Type.ALIAS}set tag(Wr){throw new Error("Alias nodes cannot have tags")}toJSON(Wr,Ft){if(!Ft)return o(this.source,Wr,Ft);let{anchors:zr,maxAliasCount:Rn}=Ft,Or=zr.get(this.source);if(!Or||Or.res===void 0){let Qi="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}if(Rn>=0&&(Or.count+=1,Or.aliasCount===0&&(Or.aliasCount=B(this.source,zr)),Or.count*Or.aliasCount>Rn)){let Qi="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Qi):new ReferenceError(Qi)}return Or.res}toString(Wr){return lwi.stringify(this,Wr)}};t._defineProperty(F,"default",!0);function Q(Hr,Wr){let Ft=Wr instanceof l?Wr.value:Wr;for(let zr of Hr)if(zr instanceof N&&(zr.key===Wr||zr.key===Ft||zr.key&&zr.key.value===Ft))return zr}var X=class extends I{add(Hr,Wr){Hr?Hr instanceof N||(Hr=new N(Hr.key||Hr,Hr.value)):Hr=new N(Hr);let Ft=Q(this.items,Hr.key),zr=this.schema&&this.schema.sortMapEntries;if(Ft)if(Wr)Ft.value=Hr.value;else throw new Error(`Key ${Hr.key} already set`);else if(zr){let Rn=this.items.findIndex(Or=>zr(Hr,Or)<0);Rn===-1?this.items.push(Hr):this.items.splice(Rn,0,Hr)}else this.items.push(Hr)}delete(Hr){let Wr=Q(this.items,Hr);return Wr?this.items.splice(this.items.indexOf(Wr),1).length>0:!1}get(Hr,Wr){let Ft=Q(this.items,Hr),zr=Ft&&Ft.value;return!Wr&&zr instanceof l?zr.value:zr}has(Hr){return!!Q(this.items,Hr)}set(Hr,Wr){this.add(new N(Hr,Wr),!0)}toJSON(Hr,Wr,Ft){let zr=Ft?new Ft:Wr&&Wr.mapAsMap?new Map:{};Wr&&Wr.onCreate&&Wr.onCreate(zr);for(let Rn of this.items)Rn.addToJSMap(Wr,zr);return zr}toString(Hr,Wr,Ft){if(!Hr)return JSON.stringify(this);for(let zr of this.items)if(!(zr instanceof N))throw new Error(`Map items must all be pairs; found ${JSON.stringify(zr)} instead`);return super.toString(Hr,{blockItem:zr=>zr.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:Hr.indent||""},Wr,Ft)}},ae="<<",ne=class extends N{constructor(Hr){if(Hr instanceof N){let Wr=Hr.value;Wr instanceof b||(Wr=new b,Wr.items.push(Hr.value),Wr.range=Hr.value.range),super(Hr.key,Wr),this.range=Hr.range}else super(new l(ae),new b);this.type=N.Type.MERGE_PAIR}addToJSMap(Hr,Wr){for(let{source:Ft}of this.value.items){if(!(Ft instanceof X))throw new Error("Merge sources must be maps");let zr=Ft.toJSON(null,Hr,Map);for(let[Rn,Or]of zr)Wr instanceof Map?Wr.has(Rn)||Wr.set(Rn,Or):Wr instanceof Set?Wr.add(Rn):Object.prototype.hasOwnProperty.call(Wr,Rn)||Object.defineProperty(Wr,Rn,{value:Or,writable:!0,enumerable:!0,configurable:!0})}return Wr}toString(Hr,Wr){let Ft=this.value;if(Ft.items.length>1)return super.toString(Hr,Wr);this.value=Ft.items[0];let zr=super.toString(Hr,Wr);return this.value=Ft,zr}},ce={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},ue={asBigInt:!1},de={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Se(Hr,Wr,Ft){for(let{format:zr,test:Rn,resolve:Or}of Wr)if(Rn){let Qi=Hr.match(Rn);if(Qi){let ps=Or.apply(null,Qi);return ps instanceof l||(ps=new l(ps)),zr&&(ps.format=zr),ps}}return Ft&&(Hr=Ft(Hr)),new l(Hr)}var De="flow",k="block",et="quoted",ct=(Hr,Wr)=>{let Ft=Hr[Wr+1];for(;Ft===" "||Ft===" ";){do Ft=Hr[Wr+=1];while(Ft&&Ft!==` -`);Ft=Hr[Wr+1]}return Wr};function Me(Hr,Wr,Ft,{indentAtStart:zr,lineWidth:Rn=80,minContentWidth:Or=20,onFold:Qi,onOverflow:ps}){if(!Rn||Rn<0)return Hr;let yo=Math.max(1+Or,1+Rn-Wr.length);if(Hr.length<=yo)return Hr;let bo=[],Qa={},gc=Rn-Wr.length;typeof zr=="number"&&(zr>Rn-Math.max(2,Or)?bo.push(0):gc=Rn-zr);let Cg,Nc,iA=!1,ma=-1,vu=-1,li=-1;Ft===k&&(ma=ct(Hr,ma),ma!==-1&&(gc=ma+yo));for(let Ps;Ps=Hr[ma+=1];){if(Ft===et&&Ps==="\\"){switch(vu=ma,Hr[ma+1]){case"x":ma+=3;break;case"u":ma+=5;break;case"U":ma+=9;break;default:ma+=1}li=ma}if(Ps===` -`)Ft===k&&(ma=ct(Hr,ma)),gc=ma+yo,Cg=void 0;else{if(Ps===" "&&Nc&&Nc!==" "&&Nc!==` -`&&Nc!==" "){let Xa=Hr[ma+1];Xa&&Xa!==" "&&Xa!==` -`&&Xa!==" "&&(Cg=ma)}if(ma>=gc)if(Cg)bo.push(Cg),gc=Cg+yo,Cg=void 0;else if(Ft===et){for(;Nc===" "||Nc===" ";)Nc=Ps,Ps=Hr[ma+=1],iA=!0;let Xa=ma>li+1?ma-2:vu-1;if(Qa[Xa])return Hr;bo.push(Xa),Qa[Xa]=!0,gc=Xa+yo,Cg=void 0}else iA=!0}Nc=Ps}if(iA&&ps&&ps(),bo.length===0)return Hr;Qi&&Qi();let Ei=Hr.slice(0,bo[0]);for(let Ps=0;PsHr?Object.assign({indentAtStart:Hr},be.fold):be.fold,St=Hr=>/^(%|---|\.\.\.)/m.test(Hr);function At(Hr,Wr,Ft){if(!Wr||Wr<0)return!1;let zr=Wr-Ft,Rn=Hr.length;if(Rn<=zr)return!1;for(let Or=0,Qi=0;Orzr)return!0;if(Qi=Or+1,Rn-Qi<=zr)return!1}return!0}function Yt(Hr,Wr){let{implicitKey:Ft}=Wr,{jsonEncoding:zr,minMultiLineLength:Rn}=be.doubleQuoted,Or=JSON.stringify(Hr);if(zr)return Or;let Qi=Wr.indent||(St(Hr)?" ":""),ps="",yo=0;for(let bo=0,Qa=Or[bo];Qa;Qa=Or[++bo])if(Qa===" "&&Or[bo+1]==="\\"&&Or[bo+2]==="n"&&(ps+=Or.slice(yo,bo)+"\\ ",bo+=1,yo=bo,Qa="\\"),Qa==="\\")switch(Or[bo+1]){case"u":{ps+=Or.slice(yo,bo);let gc=Or.substr(bo+2,4);switch(gc){case"0000":ps+="\\0";break;case"0007":ps+="\\a";break;case"000b":ps+="\\v";break;case"001b":ps+="\\e";break;case"0085":ps+="\\N";break;case"00a0":ps+="\\_";break;case"2028":ps+="\\L";break;case"2029":ps+="\\P";break;default:gc.substr(0,2)==="00"?ps+="\\x"+gc.substr(2):ps+=Or.substr(bo,6)}bo+=5,yo=bo+1}break;case"n":if(Ft||Or[bo+2]==='"'||Or.length";if(!Ft)return bo+` -`;let Qa="",gc="";if(Ft=Ft.replace(/[\n\t ]*$/,Nc=>{let iA=Nc.indexOf(` -`);return iA===-1?bo+="-":(Ft===Nc||iA!==Nc.length-1)&&(bo+="+",Or&&Or()),gc=Nc.replace(/\n$/,""),""}).replace(/^[\n ]*/,Nc=>{Nc.indexOf(" ")!==-1&&(bo+=ps);let iA=Nc.match(/ +$/);return iA?(Qa=Nc.slice(0,-iA[0].length),iA[0]):(Qa=Nc,"")}),gc&&(gc=gc.replace(/\n+(?!\n|$)/g,`$&${Qi}`)),Qa&&(Qa=Qa.replace(/\n+/g,`$&${Qi}`)),Hr&&(bo+=" #"+Hr.replace(/ ?[\r\n]+/g," "),Rn&&Rn()),!Ft)return`${bo}${ps} -${Qi}${gc}`;if(yo)return Ft=Ft.replace(/\n+/g,`$&${Qi}`),`${bo} -${Qi}${Qa}${Ft}${gc}`;Ft=Ft.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Qi}`);let Cg=Me(`${Qa}${Ft}${gc}`,Qi,k,be.fold);return`${bo} -${Qi}${Cg}`}function er(Hr,Wr,Ft,zr){let{comment:Rn,type:Or,value:Qi}=Hr,{actualString:ps,implicitKey:yo,indent:bo,inFlow:Qa}=Wr;if(yo&&/[\n[\]{},]/.test(Qi)||Qa&&/[[\]{},]/.test(Qi))return Yt(Qi,Wr);if(!Qi||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Qi))return yo||Qa||Qi.indexOf(` -`)===-1?Qi.indexOf('"')!==-1&&Qi.indexOf("'")===-1?Tr(Qi,Wr):Yt(Qi,Wr):Nr(Hr,Wr,Ft,zr);if(!yo&&!Qa&&Or!==t.Type.PLAIN&&Qi.indexOf(` -`)!==-1)return Nr(Hr,Wr,Ft,zr);if(bo===""&&St(Qi))return Wr.forceBlockIndent=!0,Nr(Hr,Wr,Ft,zr);let gc=Qi.replace(/\n+/g,`$& -${bo}`);if(ps){let{tags:Nc}=Wr.doc.schema;if(typeof Se(gc,Nc,Nc.scalarFallback).value!="string")return Yt(Qi,Wr)}let Cg=yo?gc:Me(gc,bo,De,je(Wr));return Rn&&!Qa&&(Cg.indexOf(` -`)!==-1||Rn.indexOf(` -`)!==-1)?(Ft&&Ft(),r(Cg,bo,Rn)):Cg}function vt(Hr,Wr,Ft,zr){let{defaultType:Rn}=be,{implicitKey:Or,inFlow:Qi}=Wr,{type:ps,value:yo}=Hr;typeof yo!="string"&&(yo=String(yo),Hr=Object.assign({},Hr,{value:yo}));let bo=gc=>{switch(gc){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return Nr(Hr,Wr,Ft,zr);case t.Type.QUOTE_DOUBLE:return Yt(yo,Wr);case t.Type.QUOTE_SINGLE:return Tr(yo,Wr);case t.Type.PLAIN:return er(Hr,Wr,Ft,zr);default:return null}};(ps!==t.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(yo)||(Or||Qi)&&(ps===t.Type.BLOCK_FOLDED||ps===t.Type.BLOCK_LITERAL))&&(ps=t.Type.QUOTE_DOUBLE);let Qa=bo(ps);if(Qa===null&&(Qa=bo(Rn),Qa===null))throw new Error(`Unsupported default string type ${Rn}`);return Qa}function xt({format:Hr,minFractionDigits:Wr,tag:Ft,value:zr}){if(typeof zr=="bigint")return String(zr);if(!isFinite(zr))return isNaN(zr)?".nan":zr<0?"-.inf":".inf";let Rn=JSON.stringify(zr);if(!Hr&&Wr&&(!Ft||Ft==="tag:yaml.org,2002:float")&&/^\d/.test(Rn)){let Or=Rn.indexOf(".");Or<0&&(Or=Rn.length,Rn+=".");let Qi=Wr-(Rn.length-Or-1);for(;Qi-- >0;)Rn+="0"}return Rn}function Zr(Hr,Wr){let Ft,zr;switch(Wr.type){case t.Type.FLOW_MAP:Ft="}",zr="flow map";break;case t.Type.FLOW_SEQ:Ft="]",zr="flow sequence";break;default:Hr.push(new t.YAMLSemanticError(Wr,"Not a flow collection!?"));return}let Rn;for(let Or=Wr.items.length-1;Or>=0;--Or){let Qi=Wr.items[Or];if(!Qi||Qi.type!==t.Type.COMMENT){Rn=Qi;break}}if(Rn&&Rn.char!==Ft){let Or=`Expected ${zr} to end with ${Ft}`,Qi;typeof Rn.offset=="number"?(Qi=new t.YAMLSemanticError(Wr,Or),Qi.offset=Rn.offset+1):(Qi=new t.YAMLSemanticError(Rn,Or),Rn.range&&Rn.range.end&&(Qi.offset=Rn.range.end-Rn.range.start)),Hr.push(Qi)}}function qt(Hr,Wr){let Ft=Wr.context.src[Wr.range.start-1];if(Ft!==` -`&&Ft!==" "&&Ft!==" "){let zr="Comments must be separated from other tokens by white space characters";Hr.push(new t.YAMLSemanticError(Wr,zr))}}function Xt(Hr,Wr){let Ft=String(Wr),zr=Ft.substr(0,8)+"..."+Ft.substr(-8);return new t.YAMLSemanticError(Hr,`The "${zr}" key is too long`)}function lr(Hr,Wr){for(let{afterKey:Ft,before:zr,comment:Rn}of Wr){let Or=Hr.items[zr];Or?(Ft&&Or.value&&(Or=Or.value),Rn===void 0?(Ft||!Or.commentBefore)&&(Or.spaceBefore=!0):Or.commentBefore?Or.commentBefore+=` -`+Rn:Or.commentBefore=Rn):Rn!==void 0&&(Hr.comment?Hr.comment+=` -`+Rn:Hr.comment=Rn)}}function cr(Hr,Wr){let Ft=Wr.strValue;return Ft?typeof Ft=="string"?Ft:(Ft.errors.forEach(zr=>{zr.source||(zr.source=Wr),Hr.errors.push(zr)}),Ft.str):""}function Ar(Hr,Wr){let{handle:Ft,suffix:zr}=Wr.tag,Rn=Hr.tagPrefixes.find(Or=>Or.handle===Ft);if(!Rn){let Or=Hr.getDefaults().tagPrefixes;if(Or&&(Rn=Or.find(Qi=>Qi.handle===Ft)),!Rn)throw new t.YAMLSemanticError(Wr,`The ${Ft} tag handle is non-default and was not declared.`)}if(!zr)throw new t.YAMLSemanticError(Wr,`The ${Ft} tag has no suffix.`);if(Ft==="!"&&(Hr.version||Hr.options.version)==="1.0"){if(zr[0]==="^")return Hr.warnings.push(new t.YAMLWarning(Wr,"YAML 1.0 ^ tag expansion is not supported")),zr;if(/[:/]/.test(zr)){let Or=zr.match(/^([a-z0-9-]+)\/(.*)/i);return Or?`tag:${Or[1]}.yaml.org,2002:${Or[2]}`:`tag:${zr}`}}return Rn.prefix+decodeURIComponent(zr)}function qr(Hr,Wr){let{tag:Ft,type:zr}=Wr,Rn=!1;if(Ft){let{handle:Or,suffix:Qi,verbatim:ps}=Ft;if(ps){if(ps!=="!"&&ps!=="!!")return ps;let yo=`Verbatim tags aren't resolved, so ${ps} is invalid.`;Hr.errors.push(new t.YAMLSemanticError(Wr,yo))}else if(Or==="!"&&!Qi)Rn=!0;else try{return Ar(Hr,Wr)}catch(yo){Hr.errors.push(yo)}}switch(zr){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:case t.Type.QUOTE_DOUBLE:case t.Type.QUOTE_SINGLE:return t.defaultTags.STR;case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;case t.Type.PLAIN:return Rn?t.defaultTags.STR:null;default:return null}}function _n(Hr,Wr,Ft){let{tags:zr}=Hr.schema,Rn=[];for(let Qi of zr)if(Qi.tag===Ft)if(Qi.test)Rn.push(Qi);else{let ps=Qi.resolve(Hr,Wr);return ps instanceof I?ps:new l(ps)}let Or=cr(Hr,Wr);return typeof Or=="string"&&Rn.length>0?Se(Or,Rn,zr.scalarFallback):null}function ke({type:Hr}){switch(Hr){case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;default:return t.defaultTags.STR}}function jt(Hr,Wr,Ft){try{let zr=_n(Hr,Wr,Ft);if(zr)return Ft&&Wr.tag&&(zr.tag=Ft),zr}catch(zr){return zr.source||(zr.source=Wr),Hr.errors.push(zr),null}try{let zr=ke(Wr);if(!zr)throw new Error(`The tag ${Ft} is unavailable`);let Rn=`The tag ${Ft} is unavailable, falling back to ${zr}`;Hr.warnings.push(new t.YAMLWarning(Wr,Rn));let Or=_n(Hr,Wr,zr);return Or.tag=Ft,Or}catch(zr){let Rn=new t.YAMLReferenceError(Wr,zr.message);return Rn.stack=zr.stack,Hr.errors.push(Rn),null}}var Fn=Hr=>{if(!Hr)return!1;let{type:Wr}=Hr;return Wr===t.Type.MAP_KEY||Wr===t.Type.MAP_VALUE||Wr===t.Type.SEQ_ITEM};function Nn(Hr,Wr){let Ft={before:[],after:[]},zr=!1,Rn=!1,Or=Fn(Wr.context.parent)?Wr.context.parent.props.concat(Wr.props):Wr.props;for(let{start:Qi,end:ps}of Or)switch(Wr.context.src[Qi]){case t.Char.COMMENT:{if(!Wr.commentHasRequiredWhitespace(Qi)){let Qa="Comments must be separated from other tokens by white space characters";Hr.push(new t.YAMLSemanticError(Wr,Qa))}let{header:yo,valueRange:bo}=Wr;(bo&&(Qi>bo.start||yo&&Qi>yo.start)?Ft.after:Ft.before).push(Wr.context.src.slice(Qi+1,ps));break}case t.Char.ANCHOR:if(zr){let yo="A node can have at most one anchor";Hr.push(new t.YAMLSemanticError(Wr,yo))}zr=!0;break;case t.Char.TAG:if(Rn){let yo="A node can have at most one tag";Hr.push(new t.YAMLSemanticError(Wr,yo))}Rn=!0;break}return{comments:Ft,hasAnchor:zr,hasTag:Rn}}function Hi(Hr,Wr){let{anchors:Ft,errors:zr,schema:Rn}=Hr;if(Wr.type===t.Type.ALIAS){let Qi=Wr.rawValue,ps=Ft.getNode(Qi);if(!ps){let bo=`Aliased anchor not found: ${Qi}`;return zr.push(new t.YAMLReferenceError(Wr,bo)),null}let yo=new F(ps);return Ft._cstAliases.push(yo),yo}let Or=qr(Hr,Wr);if(Or)return jt(Hr,Wr,Or);if(Wr.type!==t.Type.PLAIN){let Qi=`Failed to resolve ${Wr.type} node here`;return zr.push(new t.YAMLSyntaxError(Wr,Qi)),null}try{let Qi=cr(Hr,Wr);return Se(Qi,Rn.tags,Rn.tags.scalarFallback)}catch(Qi){return Qi.source||(Qi.source=Wr),zr.push(Qi),null}}function po(Hr,Wr){if(!Wr)return null;Wr.error&&Hr.errors.push(Wr.error);let{comments:Ft,hasAnchor:zr,hasTag:Rn}=Nn(Hr.errors,Wr);if(zr){let{anchors:Qi}=Hr,ps=Wr.anchor,yo=Qi.getNode(ps);yo&&(Qi.map[Qi.newName(ps)]=yo),Qi.map[ps]=Wr}if(Wr.type===t.Type.ALIAS&&(zr||Rn)){let Qi="An alias node must not specify any properties";Hr.errors.push(new t.YAMLSemanticError(Wr,Qi))}let Or=Hi(Hr,Wr);if(Or){Or.range=[Wr.range.start,Wr.range.end],Hr.options.keepCstNodes&&(Or.cstNode=Wr),Hr.options.keepNodeTypes&&(Or.type=Wr.type);let Qi=Ft.before.join(` -`);Qi&&(Or.commentBefore=Or.commentBefore?`${Or.commentBefore} -${Qi}`:Qi);let ps=Ft.after.join(` -`);ps&&(Or.comment=Or.comment?`${Or.comment} -${ps}`:ps)}return Wr.resolved=Or}function Vr(Hr,Wr){if(Wr.type!==t.Type.MAP&&Wr.type!==t.Type.FLOW_MAP){let Qi=`A ${Wr.type} node cannot be resolved as a mapping`;return Hr.errors.push(new t.YAMLSyntaxError(Wr,Qi)),null}let{comments:Ft,items:zr}=Wr.type===t.Type.FLOW_MAP?Ya(Hr,Wr):ga(Hr,Wr),Rn=new X;Rn.items=zr,lr(Rn,Ft);let Or=!1;for(let Qi=0;Qi{if(Qa instanceof F){let{type:gc}=Qa.source;return gc===t.Type.MAP||gc===t.Type.FLOW_MAP?!1:bo="Merge nodes aliases can only point to maps"}return bo="Merge nodes can only have Alias nodes as values"}),bo&&Hr.errors.push(new t.YAMLSemanticError(Wr,bo))}else for(let yo=Qi+1;yo{if(zr.length===0)return!1;let{start:Rn}=zr[0];if(Wr&&Rn>Wr.valueRange.start||Ft[Rn]!==t.Char.COMMENT)return!1;for(let Or=Hr;Or0){yo=new t.PlainValue(t.Type.PLAIN,[]),yo.context={parent:ps,src:ps.context.src};let Qa=ps.range.start+1;if(yo.range={start:Qa,end:Qa},yo.valueRange={start:Qa,end:Qa},typeof ps.range.origStart=="number"){let gc=ps.range.origStart+1;yo.range.origStart=yo.range.origEnd=gc,yo.valueRange.origStart=yo.valueRange.origEnd=gc}}let bo=new N(Rn,po(Hr,yo));io(ps,bo),zr.push(bo),Rn&&typeof Or=="number"&&ps.range.start>Or+1024&&Hr.errors.push(Xt(Wr,Rn)),Rn=void 0,Or=null}break;default:Rn!==void 0&&zr.push(new N(Rn)),Rn=po(Hr,ps),Or=ps.range.start,ps.error&&Hr.errors.push(ps.error);e:for(let yo=Qi+1;;++yo){let bo=Wr.items[yo];switch(bo&&bo.type){case t.Type.BLANK_LINE:case t.Type.COMMENT:continue e;case t.Type.MAP_VALUE:break e;default:{let Qa="Implicit map keys need to be followed by map values";Hr.errors.push(new t.YAMLSemanticError(ps,Qa));break e}}}if(ps.valueRangeContainsNewline){let yo="Implicit map keys need to be on a single line";Hr.errors.push(new t.YAMLSemanticError(ps,yo))}}}return Rn!==void 0&&zr.push(new N(Rn)),{comments:Ft,items:zr}}function Ya(Hr,Wr){let Ft=[],zr=[],Rn,Or=!1,Qi="{";for(let ps=0;psOr instanceof N&&Or.key instanceof I)){let Or="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";Hr.warnings.push(new t.YAMLWarning(Wr,Or))}return Wr.resolved=Rn,Rn}function cl(Hr,Wr){let Ft=[],zr=[];for(let Rn=0;RnQi+1024&&Hr.errors.push(Xt(Wr,Or));let{src:iA}=yo.context;for(let ma=Qi;ma{"use strict";var t=Kme(),r=NJe(),n={identify:Se=>Se instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Se,De)=>{let k=r.resolveString(Se,De);if(typeof Buffer=="function")return Buffer.from(k,"base64");if(typeof atob=="function"){let et=atob(k.replace(/[\n\r]/g,"")),ct=new Uint8Array(et.length);for(let Me=0;Me{let je;if(typeof Buffer=="function")je=k instanceof Buffer?k.toString("base64"):Buffer.from(k.buffer).toString("base64");else if(typeof btoa=="function"){let St="";for(let At=0;At1){let je="Each pair must have its own sequence indicator";throw new t.YAMLSemanticError(De,je)}let Me=ct.items[0]||new r.Pair;ct.commentBefore&&(Me.commentBefore=Me.commentBefore?`${ct.commentBefore} -${Me.commentBefore}`:ct.commentBefore),ct.comment&&(Me.comment=Me.comment?`${ct.comment} -${Me.comment}`:ct.comment),ct=Me}k.items[et]=ct instanceof r.Pair?ct:new r.Pair(ct)}}return k}function o(Se,De,k){let et=new r.YAMLSeq(Se);et.tag="tag:yaml.org,2002:pairs";for(let ct of De){let Me,je;if(Array.isArray(ct))if(ct.length===2)Me=ct[0],je=ct[1];else throw new TypeError(`Expected [key, value] tuple: ${ct}`);else if(ct&&ct instanceof Object){let At=Object.keys(ct);if(At.length===1)Me=At[0],je=ct[Me];else throw new TypeError(`Expected { key: value } tuple: ${ct}`)}else Me=ct;let St=Se.createPair(Me,je,k);et.items.push(St)}return et}var l={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},A=class gwi extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=gwi.tag}toJSON(De,k){let et=new Map;k&&k.onCreate&&k.onCreate(et);for(let ct of this.items){let Me,je;if(ct instanceof r.Pair?(Me=r.toJSON(ct.key,"",k),je=r.toJSON(ct.value,Me,k)):Me=r.toJSON(ct,"",k),et.has(Me))throw new Error("Ordered maps must not include duplicate keys");et.set(Me,je)}return et}};t._defineProperty(A,"tag","tag:yaml.org,2002:omap");function f(Se,De){let k=a(Se,De),et=[];for(let{key:ct}of k.items)if(ct instanceof r.Scalar)if(et.includes(ct.value)){let Me="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(De,Me)}else et.push(ct.value);return Object.assign(new A,k)}function I(Se,De,k){let et=o(Se,De,k),ct=new A;return ct.items=et.items,ct}var C={identify:Se=>Se instanceof Map,nodeClass:A,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:I},b=class Awi extends r.YAMLMap{constructor(){super(),this.tag=Awi.tag}add(De){let k=De instanceof r.Pair?De:new r.Pair(De);r.findPair(this.items,k.key)||this.items.push(k)}get(De,k){let et=r.findPair(this.items,De);return!k&&et instanceof r.Pair?et.key instanceof r.Scalar?et.key.value:et.key:et}set(De,k){if(typeof k!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof k}`);let et=r.findPair(this.items,De);et&&!k?this.items.splice(this.items.indexOf(et),1):!et&&k&&this.items.push(new r.Pair(De))}toJSON(De,k){return super.toJSON(De,k,Set)}toString(De,k,et){if(!De)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(De,k,et);throw new Error("Set items must all have null values")}};t._defineProperty(b,"tag","tag:yaml.org,2002:set");function E(Se,De){let k=r.resolveMap(Se,De);if(!k.hasAllNullValues())throw new t.YAMLSemanticError(De,"Set items must all have null values");return Object.assign(new b,k)}function N(Se,De,k){let et=new b;for(let ct of De)et.items.push(Se.createPair(ct,null,k));return et}var B={identify:Se=>Se instanceof Set,nodeClass:b,default:!1,tag:"tag:yaml.org,2002:set",resolve:E,createNode:N},F=(Se,De)=>{let k=De.split(":").reduce((et,ct)=>et*60+Number(ct),0);return Se==="-"?-k:k},Q=({value:Se})=>{if(isNaN(Se)||!isFinite(Se))return r.stringifyNumber(Se);let De="";Se<0&&(De="-",Se=Math.abs(Se));let k=[Se%60];return Se<60?k.unshift(0):(Se=Math.round((Se-k[0])/60),k.unshift(Se%60),Se>=60&&(Se=Math.round((Se-k[0])/60),k.unshift(Se))),De+k.map(et=>et<10?"0"+String(et):String(et)).join(":").replace(/000000\d*$/,"")},X={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ae={identify:Se=>typeof Se=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Se,De,k)=>F(De,k.replace(/_/g,"")),stringify:Q},ne={identify:Se=>Se instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(Se,De,k,et,ct,Me,je,St,At)=>{St&&(St=(St+"00").substr(1,3));let Yt=Date.UTC(De,k-1,et,ct||0,Me||0,je||0,St||0);if(At&&At!=="Z"){let Tr=F(At[0],At.slice(1));Math.abs(Tr)<30&&(Tr*=60),Yt-=6e4*Tr}return new Date(Yt)},stringify:({value:Se})=>Se.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ce(Se){let De={};return Se?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!De.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!De.YAML_SILENCE_WARNINGS}function fe(Se,De){ce(!1)&&console.warn(De?`${De}: ${Se}`:Se)}function ue(Se){if(ce(!0)){let De=Se.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${De}' will be removed in a future release.`,"DeprecationWarning")}}var de={};function be(Se,De){if(!de[Se]&&ce(!0)){de[Se]=!0;let k=`The option '${Se}' will be removed in a future release`;k+=De?`, use '${De}' instead.`:".",fe(k,"DeprecationWarning")}}e.binary=n,e.floatTime=ae,e.intTime=X,e.omap=C,e.pairs=l,e.set=B,e.timestamp=ne,e.warn=fe,e.warnFileDeprecation=ue,e.warnOptionDeprecation=be}),dwi=Dee(e=>{"use strict";var t=Kme(),r=NJe(),n=uwi();function a(er,vt,xt){let Zr=new r.YAMLMap(er);if(vt instanceof Map)for(let[qt,Xt]of vt)Zr.items.push(er.createPair(qt,Xt,xt));else if(vt&&typeof vt=="object")for(let qt of Object.keys(vt))Zr.items.push(er.createPair(qt,vt[qt],xt));return typeof er.sortMapEntries=="function"&&Zr.items.sort(er.sortMapEntries),Zr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function l(er,vt,xt){let Zr=new r.YAMLSeq(er);if(vt&&vt[Symbol.iterator])for(let qt of vt){let Xt=er.createNode(qt,xt.wrapScalars,null,xt);Zr.items.push(Xt)}return Zr}var A={createNode:l,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:er=>typeof er=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(er,vt,xt,Zr){return vt=Object.assign({actualString:!0},vt),r.stringifyString(er,vt,xt,Zr)},options:r.strOptions},I=[o,A,f],C=er=>typeof er=="bigint"||Number.isInteger(er),b=(er,vt,xt)=>r.intOptions.asBigInt?BigInt(er):parseInt(vt,xt);function E(er,vt,xt){let{value:Zr}=er;return C(Zr)&&Zr>=0?xt+Zr.toString(vt):r.stringifyNumber(er)}var N={identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},B={identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:er=>er[0]==="t"||er[0]==="T",options:r.boolOptions,stringify:({value:er})=>er?r.boolOptions.trueStr:r.boolOptions.falseStr},F={identify:er=>C(er)&&er>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(er,vt)=>b(er,vt,8),options:r.intOptions,stringify:er=>E(er,8,"0o")},Q={identify:C,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:er=>b(er,er,10),options:r.intOptions,stringify:r.stringifyNumber},X={identify:er=>C(er)&&er>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(er,vt)=>b(er,vt,16),options:r.intOptions,stringify:er=>E(er,16,"0x")},ae={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(er,vt)=>vt?NaN:er[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ne={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:er=>parseFloat(er),stringify:({value:er})=>Number(er).toExponential()},ce={identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(er,vt,xt){let Zr=vt||xt,qt=new r.Scalar(parseFloat(er));return Zr&&Zr[Zr.length-1]==="0"&&(qt.minFractionDigits=Zr.length),qt},stringify:r.stringifyNumber},fe=I.concat([N,B,F,Q,X,ae,ne,ce]),ue=er=>typeof er=="bigint"||Number.isInteger(er),de=({value:er})=>JSON.stringify(er),be=[o,A,{identify:er=>typeof er=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:de},{identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:de},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:er=>er==="true",stringify:de},{identify:ue,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:er=>r.intOptions.asBigInt?BigInt(er):parseInt(er,10),stringify:({value:er})=>ue(er)?er.toString():JSON.stringify(er)},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:er=>parseFloat(er),stringify:de}];be.scalarFallback=er=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(er)}`)};var Se=({value:er})=>er?r.boolOptions.trueStr:r.boolOptions.falseStr,De=er=>typeof er=="bigint"||Number.isInteger(er);function k(er,vt,xt){let Zr=vt.replace(/_/g,"");if(r.intOptions.asBigInt){switch(xt){case 2:Zr=`0b${Zr}`;break;case 8:Zr=`0o${Zr}`;break;case 16:Zr=`0x${Zr}`;break}let Xt=BigInt(Zr);return er==="-"?BigInt(-1)*Xt:Xt}let qt=parseInt(Zr,xt);return er==="-"?-1*qt:qt}function et(er,vt,xt){let{value:Zr}=er;if(De(Zr)){let qt=Zr.toString(vt);return Zr<0?"-"+xt+qt.substr(1):xt+qt}return r.stringifyNumber(er)}var ct=I.concat([{identify:er=>er==null,createNode:(er,vt,xt)=>xt.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:Se},{identify:er=>typeof er=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:Se},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,2),stringify:er=>et(er,2,"0b")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,8),stringify:er=>et(er,8,"0")},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(er,vt,xt)=>k(vt,xt,10),stringify:r.stringifyNumber},{identify:De,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(er,vt,xt)=>k(vt,xt,16),stringify:er=>et(er,16,"0x")},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(er,vt)=>vt?NaN:er[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:er=>parseFloat(er.replace(/_/g,"")),stringify:({value:er})=>Number(er).toExponential()},{identify:er=>typeof er=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(er,vt){let xt=new r.Scalar(parseFloat(er.replace(/_/g,"")));if(vt){let Zr=vt.replace(/_/g,"");Zr[Zr.length-1]==="0"&&(xt.minFractionDigits=Zr.length)}return xt},stringify:r.stringifyNumber}],n.binary,n.omap,n.pairs,n.set,n.intTime,n.floatTime,n.timestamp),Me={core:fe,failsafe:I,json:be,yaml11:ct},je={binary:n.binary,bool:B,float:ce,floatExp:ne,floatNaN:ae,floatTime:n.floatTime,int:Q,intHex:X,intOct:F,intTime:n.intTime,map:o,null:N,omap:n.omap,pairs:n.pairs,seq:A,set:n.set,timestamp:n.timestamp};function St(er,vt,xt){if(vt){let Zr=xt.filter(Xt=>Xt.tag===vt),qt=Zr.find(Xt=>!Xt.format)||Zr[0];if(!qt)throw new Error(`Tag ${vt} not found`);return qt}return xt.find(Zr=>(Zr.identify&&Zr.identify(er)||Zr.class&&er instanceof Zr.class)&&!Zr.format)}function At(er,vt,xt){if(er instanceof r.Node)return er;let{defaultPrefix:Zr,onTagObj:qt,prevObjects:Xt,schema:lr,wrapScalars:cr}=xt;vt&&vt.startsWith("!!")&&(vt=Zr+vt.slice(2));let Ar=St(er,vt,lr.tags);if(!Ar){if(typeof er.toJSON=="function"&&(er=er.toJSON()),!er||typeof er!="object")return cr?new r.Scalar(er):er;Ar=er instanceof Map?o:er[Symbol.iterator]?A:o}qt&&(qt(Ar),delete xt.onTagObj);let qr={value:void 0,node:void 0};if(er&&typeof er=="object"&&Xt){let _n=Xt.get(er);if(_n){let ke=new r.Alias(_n);return xt.aliasNodes.push(ke),ke}qr.value=er,Xt.set(er,qr)}return qr.node=Ar.createNode?Ar.createNode(xt.schema,er,xt):cr?new r.Scalar(er):er,vt&&qr.node instanceof r.Node&&(qr.node.tag=vt),qr.node}function Yt(er,vt,xt,Zr){let qt=er[Zr.replace(/\W/g,"")];if(!qt){let Xt=Object.keys(er).map(lr=>JSON.stringify(lr)).join(", ");throw new Error(`Unknown schema "${Zr}"; use one of ${Xt}`)}if(Array.isArray(xt))for(let Xt of xt)qt=qt.concat(Xt);else typeof xt=="function"&&(qt=xt(qt.slice()));for(let Xt=0;XtJSON.stringify(qr)).join(", ");throw new Error(`Unknown custom tag "${lr}"; use one of ${Ar}`)}qt[Xt]=cr}}return qt}var Tr=(er,vt)=>er.keyvt.key?1:0,Nr=class pwi{constructor({customTags:vt,merge:xt,schema:Zr,sortMapEntries:qt,tags:Xt}){this.merge=!!xt,this.name=Zr,this.sortMapEntries=qt===!0?Tr:qt||null,!vt&&Xt&&n.warnOptionDeprecation("tags","customTags"),this.tags=Yt(Me,je,vt||Xt,Zr)}createNode(vt,xt,Zr,qt){let Xt={defaultPrefix:pwi.defaultPrefix,schema:this,wrapScalars:xt},lr=qt?Object.assign(qt,Xt):Xt;return At(vt,Zr,lr)}createPair(vt,xt,Zr){Zr||(Zr={wrapScalars:!0});let qt=this.createNode(vt,Zr.wrapScalars,null,Zr),Xt=this.createNode(xt,Zr.wrapScalars,null,Zr);return new r.Pair(qt,Xt)}};t._defineProperty(Nr,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Nr,"defaultTags",t.defaultTags),e.Schema=Nr}),Hnc=Dee(e=>{"use strict";var t=Kme(),r=NJe(),n=dwi(),a={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},o={get binary(){return r.binaryOptions},set binary(ce){Object.assign(r.binaryOptions,ce)},get bool(){return r.boolOptions},set bool(ce){Object.assign(r.boolOptions,ce)},get int(){return r.intOptions},set int(ce){Object.assign(r.intOptions,ce)},get null(){return r.nullOptions},set null(ce){Object.assign(r.nullOptions,ce)},get str(){return r.strOptions},set str(ce){Object.assign(r.strOptions,ce)}},l={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function A(ce,fe){if((ce.version||ce.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Se=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Se?`!${Se[1]}/${Se[2]}`:`!${fe.replace(/^tag:/,"")}`}let ue=ce.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!ue){let be=ce.getDefaults().tagPrefixes;ue=be&&be.find(Se=>fe.indexOf(Se.prefix)===0)}if(!ue)return fe[0]==="!"?fe:`!<${fe}>`;let de=fe.substr(ue.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return ue.handle+de}function f(ce,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ce.filter(Se=>Se.tag===fe.tag);if(be.length>0)return be.find(Se=>Se.format===fe.format)||be[0]}let ue,de;if(fe instanceof r.Scalar){de=fe.value;let be=ce.filter(Se=>Se.identify&&Se.identify(de)||Se.class&&de instanceof Se.class);ue=be.find(Se=>Se.format===fe.format)||be.find(Se=>!Se.format)}else de=fe,ue=ce.find(be=>be.nodeClass&&de instanceof be.nodeClass);if(!ue){let be=de&&de.constructor?de.constructor.name:typeof de;throw new Error(`Tag not resolved for ${be} value`)}return ue}function I(ce,fe,{anchors:ue,doc:de}){let be=[],Se=de.anchors.getName(ce);return Se&&(ue[Se]=ce,be.push(`&${Se}`)),ce.tag?be.push(A(de,ce.tag)):fe.default||be.push(A(de,fe.tag)),be.join(" ")}function C(ce,fe,ue,de){let{anchors:be,schema:Se}=fe.doc,De;if(!(ce instanceof r.Node)){let ct={aliasNodes:[],onTagObj:Me=>De=Me,prevObjects:new Map};ce=Se.createNode(ce,!0,null,ct);for(let Me of ct.aliasNodes){Me.source=Me.source.node;let je=be.getName(Me.source);je||(je=be.newName(),be.map[je]=Me.source)}}if(ce instanceof r.Pair)return ce.toString(fe,ue,de);De||(De=f(Se.tags,ce));let k=I(ce,De,fe);k.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+k.length+1);let et=typeof De.stringify=="function"?De.stringify(ce,fe,ue,de):ce instanceof r.Scalar?r.stringifyString(ce,fe,ue,de):ce.toString(fe,ue,de);return k?ce instanceof r.Scalar||et[0]==="{"||et[0]==="["?`${k} ${et}`:`${k} -${fe.indent}${et}`:et}var b=class fwi{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,ue){return this.setAnchor(fe,ue),new r.Alias(fe)}createMergePair(...fe){let ue=new r.Merge;return ue.value.items=fe.map(de=>{if(de instanceof r.Alias){if(de.source instanceof r.YAMLMap)return de}else if(de instanceof r.YAMLMap)return this.createAlias(de);throw new Error("Merge sources must be Map nodes or their Aliases")}),ue}getName(fe){let{map:ue}=this;return Object.keys(ue).find(de=>ue[de]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let ue=Object.keys(this.map);for(let de=1;;++de){let be=`${fe}${de}`;if(!ue.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:ue}=this;Object.keys(fe).forEach(de=>{fe[de]=fe[de].resolved}),ue.forEach(de=>{de.source=de.source.resolved}),delete this._cstAliases}setAnchor(fe,ue){if(fe!=null&&!fwi.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(ue&&/[\x00-\x19\s,[\]{}]/.test(ue))throw new Error("Anchor names must not contain whitespace or control characters");let{map:de}=this,be=fe&&Object.keys(de).find(Se=>de[Se]===fe);if(be)if(ue)be!==ue&&(delete de[be],de[ue]=fe);else return be;else{if(!ue){if(!fe)return null;ue=this.newName()}de[ue]=fe}return ue}},E=(ce,fe)=>{if(ce&&typeof ce=="object"){let{tag:ue}=ce;ce instanceof r.Collection?(ue&&(fe[ue]=!0),ce.items.forEach(de=>E(de,fe))):ce instanceof r.Pair?(E(ce.key,fe),E(ce.value,fe)):ce instanceof r.Scalar&&ue&&(fe[ue]=!0)}return fe},N=ce=>Object.keys(E(ce,{}));function B(ce,fe){let ue={before:[],after:[]},de,be=!1;for(let Se of fe)if(Se.valueRange){if(de!==void 0){let k="Document contains trailing content not separated by a ... or --- line";ce.errors.push(new t.YAMLSyntaxError(Se,k));break}let De=r.resolveNode(ce,Se);be&&(De.spaceBefore=!0,be=!1),de=De}else Se.comment!==null?(de===void 0?ue.before:ue.after).push(Se.comment):Se.type===t.Type.BLANK_LINE&&(be=!0,de===void 0&&ue.before.length>0&&!ce.commentBefore&&(ce.commentBefore=ue.before.join(` -`),ue.before=[]));if(ce.contents=de||null,!de)ce.comment=ue.before.concat(ue.after).join(` -`)||null;else{let Se=ue.before.join(` -`);if(Se){let De=de instanceof r.Collection&&de.items[0]?de.items[0]:de;De.commentBefore=De.commentBefore?`${Se} -${De.commentBefore}`:Se}ce.comment=ue.after.join(` -`)||null}}function F({tagPrefixes:ce},fe){let[ue,de]=fe.parameters;if(!ue||!de){let be="Insufficient parameters given for %TAG directive";throw new t.YAMLSemanticError(fe,be)}if(ce.some(be=>be.handle===ue)){let be="The %TAG directive must only be given at most once per handle in the same document.";throw new t.YAMLSemanticError(fe,be)}return{handle:ue,prefix:de}}function Q(ce,fe){let[ue]=fe.parameters;if(fe.name==="YAML:1.0"&&(ue="1.0"),!ue){let de="Insufficient parameters given for %YAML directive";throw new t.YAMLSemanticError(fe,de)}if(!l[ue]){let de=`Document will be parsed as YAML ${ce.version||ce.options.version} rather than YAML ${ue}`;ce.warnings.push(new t.YAMLWarning(fe,de))}return ue}function X(ce,fe,ue){let de=[],be=!1;for(let Se of fe){let{comment:De,name:k}=Se;switch(k){case"TAG":try{ce.tagPrefixes.push(F(ce,Se))}catch(et){ce.errors.push(et)}be=!0;break;case"YAML":case"YAML:1.0":if(ce.version){let et="The %YAML directive must only be given at most once per document.";ce.errors.push(new t.YAMLSemanticError(Se,et))}try{ce.version=Q(ce,Se)}catch(et){ce.errors.push(et)}be=!0;break;default:if(k){let et=`YAML only supports %TAG and %YAML directives, and not %${k}`;ce.warnings.push(new t.YAMLWarning(Se,et))}}De&&de.push(De)}if(ue&&!be&&(ce.version||ue.version||ce.options.version)==="1.1"){let Se=({handle:De,prefix:k})=>({handle:De,prefix:k});ce.tagPrefixes=ue.tagPrefixes.map(Se),ce.version=ue.version}ce.commentBefore=de.join(` -`)||null}function ae(ce){if(ce instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ne=class hDr{constructor(fe){this.anchors=new b(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return ae(this.contents),this.contents.add(fe)}addIn(fe,ue){ae(this.contents),this.contents.addIn(fe,ue)}delete(fe){return ae(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(ae(this.contents),this.contents.deleteIn(fe))}getDefaults(){return hDr.defaults[this.version]||hDr.defaults[this.options.version]||{}}get(fe,ue){return this.contents instanceof r.Collection?this.contents.get(fe,ue):void 0}getIn(fe,ue){return r.isEmptyPath(fe)?!ue&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,ue):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,ue){ae(this.contents),this.contents.set(fe,ue)}setIn(fe,ue){r.isEmptyPath(fe)?this.contents=ue:(ae(this.contents),this.contents.setIn(fe,ue))}setSchema(fe,ue){if(!fe&&!ue&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(ue)&&(this.options.customTags=ue);let de=Object.assign({},this.getDefaults(),this.options);this.schema=new n.Schema(de)}parse(fe,ue){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:de=[],contents:be=[],directivesEndMarker:Se,error:De,valueRange:k}=fe;if(De&&(De.source||(De.source=this),this.errors.push(De)),X(this,de,ue),Se&&(this.directivesEndMarker=!0),this.range=k?[k.start,k.end]:null,this.setSchema(),this.anchors._cstAliases=[],B(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let et of this.errors)et instanceof t.YAMLError&&et.makePretty();for(let et of this.warnings)et instanceof t.YAMLError&&et.makePretty()}return this}listNonDefaultTags(){return N(this.contents).filter(fe=>fe.indexOf(n.Schema.defaultPrefix)!==0)}setTagPrefix(fe,ue){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(ue){let de=this.tagPrefixes.find(be=>be.handle===fe);de?de.prefix=ue:this.tagPrefixes.push({handle:fe,prefix:ue})}else this.tagPrefixes=this.tagPrefixes.filter(de=>de.handle!==fe)}toJSON(fe,ue){let{keepBlobsInJSON:de,mapAsMap:be,maxAliasCount:Se}=this.options,De=de&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),k={doc:this,indentStep:" ",keep:De,mapAsMap:De&&!!be,maxAliasCount:Se,stringify:C},et=Object.keys(this.anchors.map);et.length>0&&(k.anchors=new Map(et.map(Me=>[this.anchors.map[Me],{alias:[],aliasCount:0,count:1}])));let ct=r.toJSON(this.contents,fe,k);if(typeof ue=="function"&&k.anchors)for(let{count:Me,res:je}of k.anchors.values())ue(je,Me);return ct}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let et=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${et}`)}this.setSchema();let ue=[],de=!1;if(this.version){let et="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?et="%YAML:1.0":this.version==="1.1"&&(et="%YAML 1.1")),ue.push(et),de=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:et,prefix:ct})=>{be.some(Me=>Me.indexOf(ct)===0)&&(ue.push(`%TAG ${et} ${ct}`),de=!0)}),(de||this.directivesEndMarker)&&ue.push("---"),this.commentBefore&&((de||!this.directivesEndMarker)&&ue.unshift(""),ue.unshift(this.commentBefore.replace(/^/gm,"#")));let Se={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:C},De=!1,k=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(de||this.directivesEndMarker)&&ue.push(""),this.contents.commentBefore&&ue.push(this.contents.commentBefore.replace(/^/gm,"#")),Se.forceBlockIndent=!!this.comment,k=this.contents.comment);let et=k?null:()=>De=!0,ct=C(this.contents,Se,()=>k=null,et);ue.push(r.addComment(ct,"",k))}else this.contents!==void 0&&ue.push(C(this.contents,Se));return this.comment&&((!De||k)&&ue[ue.length-1]!==""&&ue.push(""),ue.push(this.comment.replace(/^/gm,"#"))),ue.join(` -`)+` -`}};t._defineProperty(ne,"defaults",l),e.Document=ne,e.defaultOptions=a,e.scalarOptions=o}),Ync=Dee(e=>{"use strict";var t=Mnc(),r=Hnc(),n=dwi(),a=Kme(),o=uwi();NJe();function l(N,B=!0,F){F===void 0&&typeof B=="string"&&(F=B,B=!0);let Q=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new n.Schema(Q).createNode(N,B,F)}var A=class extends r.Document{constructor(N){super(Object.assign({},r.defaultOptions,N))}};function f(N,B){let F=[],Q;for(let X of t.parse(N)){let ae=new A(B);ae.parse(X,Q),F.push(ae),Q=ae}return F}function I(N,B){let F=t.parse(N),Q=new A(B).parse(F[0]);if(F.length>1){let X="Source contains multiple documents; please use YAML.parseAllDocuments()";Q.errors.unshift(new a.YAMLSemanticError(F[1],X))}return Q}function C(N,B){let F=I(N,B);if(F.warnings.forEach(Q=>o.warn(Q)),F.errors.length>0)throw F.errors[0];return F.toJSON()}function b(N,B){let F=new A(B);return F.contents=N,String(F)}var E={createNode:l,defaultOptions:r.defaultOptions,Document:A,parse:C,parseAllDocuments:f,parseCST:t.parse,parseDocument:I,scalarOptions:r.scalarOptions,stringify:b};e.YAML=E}),Qnc=Dee((e,t)=>{t.exports=Ync().YAML}),Xnc=Dee(e=>{"use strict";var t=NJe(),r=Kme();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),Iwi={};nwi(Iwi,{languages:()=>Pwi,options:()=>Wwi,parsers:()=>xDr,printers:()=>eTi});var Jnc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},uDr=Jnc,hwi="string",mwi="array",Cwi="cursor",_wi="indent",vDr="align",ywi="trim",BDr="group",wDr="fill",TDr="if-break",bwi="indent-if-break",RDr="line-suffix",Ewi="line-suffix-boundary",FNe="line",Swi="label",NDr="break-parent",vwi=new Set([Cwi,_wi,vDr,ywi,BDr,wDr,TDr,bwi,RDr,Ewi,FNe,Swi,NDr]),Unc=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},nH=Unc;function Knc(e){if(typeof e=="string")return hwi;if(Array.isArray(e))return mwi;if(!e)return;let{type:t}=e;if(vwi.has(t))return t}var Bwi=Knc,jnc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function znc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Bwi(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=jnc([...vwi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var qnc=class extends Error{name="InvalidDocError";constructor(e){super(znc(e)),this.doc=e}},$nc=qnc;function eic(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(Bwi(o)){case mwi:return t(o.map(n));case wDr:return t({...o,parts:o.parts.map(n)});case TDr:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case BDr:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case vDr:case _wi:case bwi:case Swi:case RDr:return t({...o,contents:n(o.contents)});case hwi:case Cwi:case ywi:case Ewi:case FNe:case NDr:return t(o);default:throw new $nc(o)}}}function tic(e,t=CDr){return eic(e,r=>typeof r=="string"?bV(t,r.split(` -`)):r)}var DDr=()=>{},GNe=DDr,wwi=DDr,ric=DDr;function uEt(e,t){return GNe(t),{type:vDr,contents:t,n:e}}function oEt(e,t={}){return GNe(e),wwi(t.expandedStates,!0),{type:BDr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function XBi(e){return uEt(Number.NEGATIVE_INFINITY,e)}function nic(e){return uEt({type:"root"},e)}function iic(e){return uEt(-1,e)}function JBi(e,t){return oEt(e[0],{...t,expandedStates:e})}function Twi(e){return ric(e),{type:wDr,parts:e}}function mDr(e,t="",r={}){return GNe(e),t!==""&&GNe(t),{type:TDr,breakContents:e,flatContents:t,groupId:r.groupId}}function sic(e){return GNe(e),{type:RDr,contents:e}}var kDr={type:NDr},oic={type:FNe,hard:!0},aic={type:FNe,hard:!0,literal:!0},DJe={type:FNe},Rwi={type:FNe,soft:!0},Y_=[oic,kDr],CDr=[aic,kDr];function bV(e,t){GNe(e),wwi(t);let r=[];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l{let a=await n(t.originalText,{parser:"json"});return a?[a,Y_]:void 0}}Nwi.getVisitorKeys=()=>[];var dic=Nwi,BJe=null;function RJe(e){if(BJe!==null&&typeof BJe.property){let t=BJe;return BJe=RJe.prototype=null,t}return BJe=RJe.prototype=e??Object.create(null),new RJe}var pic=10;for(let e=0;e<=pic;e++)RJe();function fic(e){return RJe(e)}function Iic(e,t="type"){fic(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return r}var hic=Iic,mic=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),Cic=mic,_ic=hic(Cic),yic=_ic;function aEt(e){return e.position.start.offset}function bic(e){return e.position.end.offset}function Eic(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function Sic(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function vic(e){return`# @format - -${e}`}function Bic(e){return Array.isArray(e)&&e.length>0}var kJe=Bic;function Nee(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Dwi(e,t,r){return t("children"in e?{...e,children:e.children.map(n=>Dwi(n,t,e))}:e,r)}function wJe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function wic(e,t){let r=0,n=t.length;for(let a=e.position.end.offset-1;ao===0&&o===l.length-1?a:o!==0&&o!==l.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?n.map(a=>a.length===0?[]:[a]):n.map(a=>a.length===0?[]:Gwi(a)).reduce((a,o,l)=>l!==0&&n[l-1].length>0&&o.length>0&&!(e==="quoteDouble"&&nH(!1,nH(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...nH(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function Dic(e,{parentIndent:t,isLastDescendant:r,options:n}){let a=e.position.start.line===e.position.end.line?"":n.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let l=a.split(` -`).map(f=>f.slice(o));if(n.proseWrap==="preserve"||e.type==="blockLiteral")return A(l.map(f=>f.length===0?[]:[f]));return A(l.map(f=>f.length===0?[]:Gwi(f)).reduce((f,I,C)=>C!==0&&l[C-1].length>0&&I.length>0&&!/^\s/u.test(I[0])&&!/^\s|\s$/u.test(nH(!1,f,-1))?[...f.slice(0,-1),[...nH(!1,f,-1),...I]]:[...f,I],[]).map(f=>f.reduce((I,C)=>I.length>0&&/\s$/u.test(nH(!1,I,-1))?[...I.slice(0,-1),nH(!1,I,-1)+" "+C]:[...I,C],[])).map(f=>n.proseWrap==="never"?[f.join(" ")]:f));function A(f){if(e.chomping==="keep")return nH(!1,f,-1).length===0?f.slice(0,-1):f;let I=0;for(let C=f.length-1;C>=0&&f[C].length===0;C--)I++;return I===0?f:I>=2&&!r?f.slice(0,-(I-1)):f.slice(0,-I)}}function yDr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var gDr=new WeakMap;function Fwi(e,t){let{node:r,root:n}=e,a;return gDr.has(n)?a=gDr.get(n):(a=new Set,gDr.set(n,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),wic(r,t)&&!Zwi(e.parent))?Rwi:""}function Zwi(e){return o4(e)&&!Nee(e,["documentHead","documentBody","flowMapping","flowSequence"])}function rH(e,t){return uEt(" ".repeat(e),t)}function kic(e,t,r){let{node:n}=e,a=e.ancestors.filter(I=>I.type==="sequence"||I.type==="mapping").length,o=kwi(e),l=[n.type==="blockFolded"?">":"|"];n.indent!==null&&l.push(n.indent.toString()),n.chomping!=="clip"&&l.push(n.chomping==="keep"?"+":"-"),xwi(n)&&l.push(" ",t("indicatorComment"));let A=Dic(n,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[I,C]of A.entries())I===0&&f.push(Y_),f.push(Twi(bV(DJe,C))),I!==A.length-1?f.push(C.length===0?Y_:nic(CDr)):n.chomping==="keep"&&o&&f.push(XBi(C.length===0?Y_:CDr));return n.indent===null?l.push(iic(rH(r.tabWidth,f))):l.push(XBi(rH(n.indent-1+a,f))),l}var xic=kic;function zBi(e,t,r){let{node:n}=e,a=n.type==="flowMapping",o=a?"{":"[",l=a?"}":"]",A=Rwi;a&&n.children.length>0&&r.bracketSpacing&&(A=DJe);let f=nH(!1,n.children,-1),I=f?.type==="flowMappingItem"&&cEt(f.key)&&cEt(f.value);return[o,rH(r.tabWidth,[A,Gic(e,t,r),r.trailingComma==="none"?"":mDr(","),o4(n)?[Y_,bV(Y_,e.map(t,"endComments"))]:""]),I?"":A,l]}function Gic(e,t,r){return e.map(({isLast:n,node:a,next:o})=>[t(),n?"":[",",DJe,a.position.start.line!==o.position.start.line?Fwi(e,r.originalText):""]],"children")}function Fic(e,t,r){var n;let{node:a,parent:o}=e,{key:l,value:A}=a,f=cEt(l),I=cEt(A);if(f&&I)return": ";let C=t("key"),b=Zic(a)?" ":"";if(I)return a.type==="flowMappingItem"&&o.type==="flowMapping"?C:a.type==="mappingItem"&&ADr(l.content,r)&&!s4(l.content)&&((n=o.tag)==null?void 0:n.value)!=="tag:yaml.org,2002:set"?[C,b,":"]:["? ",rH(2,C)];let E=t("value");if(f)return[": ",rH(2,E)];if(wce(A)||!yDr(l.content))return["? ",rH(2,C),Y_,...e.map(()=>[t(),Y_],"value","leadingComments"),": ",rH(2,E)];if(Lic(l.content)&&!wce(l.content)&&!kNe(l.content)&&!s4(l.content)&&!o4(l)&&!wce(A.content)&&!kNe(A.content)&&!o4(A)&&ADr(A.content,r))return[C,b,": ",E];let N=Symbol("mappingKey"),B=oEt([mDr("? "),oEt(rH(2,C),{id:N})]),F=[Y_,": ",rH(2,E)],Q=[b,":"];wce(A.content)||o4(A)&&A.content&&!Nee(A.content,["mapping","sequence"])||o.type==="mapping"&&s4(l.content)&&yDr(A.content)||Nee(A.content,["mapping","sequence"])&&A.content.tag===null&&A.content.anchor===null?Q.push(Y_):A.content?Q.push(DJe):s4(A)&&Q.push(" "),Q.push(E);let X=rH(r.tabWidth,Q);return ADr(l.content,r)&&!wce(l.content)&&!kNe(l.content)&&!o4(l)?JBi([[C,X]]):JBi([[B,mDr(F,X,{groupId:N})]])}function ADr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` -`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function Zic(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function Lic(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var Vic=Fic;function Pic(e){return Dwi(e,Wic)}function Wic(e){switch(e.type){case"document":wJe(e,"head",()=>e.children[0]),wJe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":wJe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":wJe(e,"key",()=>e.children[0]),wJe(e,"value",()=>e.children[1]);break}return e}var Oic=Pic;function Mic(e,t,r){let{node:n}=e,a=[];n.type!=="mappingValue"&&wce(n)&&a.push([bV(Y_,e.map(r,"leadingComments")),Y_]);let{tag:o,anchor:l}=n;o&&a.push(r("tag")),o&&l&&a.push(" "),l&&a.push(r("anchor"));let A="";return Nee(n,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!kwi(e)&&(A=Fwi(e,t.originalText)),(o||l)&&(Nee(n,["sequence","mapping"])&&!kNe(n)?a.push(Y_):a.push(" ")),kNe(n)&&a.push([n.middleComments.length===1?"":Y_,bV(Y_,e.map(r,"middleComments")),Y_]),Tic(e)?a.push(tic(t.originalText.slice(n.position.start.offset,n.position.end.offset).trimEnd())):a.push(oEt(Hic(e,t,r))),s4(n)&&!Nee(n,["document","documentHead"])&&a.push(sic([n.type==="mappingValue"&&!n.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&yDr(n)?"":kDr,r("trailingComment")])),Zwi(n)&&a.push(rH(n.type==="sequenceItem"?2:0,[Y_,bV(Y_,e.map(({node:f})=>[uic(t.originalText,aEt(f))?Y_:"",r()],"endComments"))])),a.push(A),a}function Hic(e,t,r){let{node:n}=e;switch(n.type){case"root":{let a=[];e.each(({node:l,next:A,isFirst:f})=>{f||a.push(Y_),a.push(r()),Lwi(l,A)?(a.push(Y_,"..."),s4(l)&&a.push(" ",r("trailingComment"))):A&&!s4(A.head)&&a.push(Y_,"---")},"children");let o=_Dr(n);return(!Nee(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(Y_),a}case"document":{let a=[];return Qic(e,t)==="head"&&((n.head.children.length>0||n.head.endComments.length>0)&&a.push(r("head")),s4(n.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),Yic(n)&&a.push(r("body")),bV(Y_,a)}case"documentHead":return bV(Y_,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=n,l="";if(a.length>0&&o.length>0){let A=_Dr(n);Nee(A,["blockFolded","blockLiteral"])?A.chomping!=="keep"&&(l=[Y_,Y_]):l=Y_}return[bV(Y_,e.map(r,"children")),l,bV(Y_,e.map(r,"endComments"))]}case"directive":return["%",bV(" ",[n.name,...n.parameters])];case"comment":return["#",n.value];case"alias":return["*",n.value];case"tag":return t.originalText.slice(n.position.start.offset,n.position.end.offset);case"anchor":return["&",n.value];case"plain":return TJe(n.type,t.originalText.slice(n.position.start.offset,n.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',l=t.originalText.slice(n.position.start.offset+1,n.position.end.offset-1);if(n.type==="quoteSingle"&&l.includes("\\")||n.type==="quoteDouble"&&/\\[^"]/u.test(l)){let f=n.type==="quoteDouble"?o:a;return[f,TJe(n.type,l,t),f]}if(l.includes(o))return[a,TJe(n.type,n.type==="quoteDouble"?uDr(!1,uDr(!1,l,String.raw`\"`,o),"'",a.repeat(2)):l,t),a];if(l.includes(a))return[o,TJe(n.type,n.type==="quoteSingle"?uDr(!1,l,"''",a):l,t),o];let A=t.singleQuote?a:o;return[A,TJe(n.type,l,t),A]}case"blockFolded":case"blockLiteral":return xic(e,r,t);case"mapping":case"sequence":return bV(Y_,e.map(r,"children"));case"sequenceItem":return["- ",rH(2,n.content?r("content"):"")];case"mappingKey":case"mappingValue":return n.content?r("content"):"";case"mappingItem":case"flowMappingItem":return Vic(e,r,t);case"flowMapping":return zBi(e,r,t);case"flowSequence":return zBi(e,r,t);case"flowSequenceItem":return r("content");default:throw new Aic(n,"YAML")}}function Yic(e){return e.body.children.length>0||o4(e.body)}function Lwi(e,t){return s4(e)||t&&(t.head.children.length>0||o4(t.head))}function Qic(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(aEt(r),aEt(r)+4))||r.head.children.length>0||o4(r.head)||s4(r.head))return"head";let n=e.next;return Lwi(r,n)?!1:n?"root":!1}function TJe(e,t,r){let n=Nic(e,t,r);return bV(Y_,n.map(a=>Twi(bV(DJe,a))))}function Vwi(e,t){if(Nee(e))switch(e.type){case"comment":if(Eic(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}Vwi.ignoredProperties=new Set(["position"]);var Xic={preprocess:Oic,embed:dic,print:Mic,massageAstNode:Vwi,insertPragma:vic,getVisitorKeys:yic},Jic=Xic,Pwi=[{linguistLanguageId:407,name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],dDr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Uic={bracketSpacing:dDr.bracketSpacing,singleQuote:dDr.singleQuote,proseWrap:dDr.proseWrap},Wwi=Uic,xDr={};nwi(xDr,{yaml:()=>doc});var nEt=` -`,qBi="\r",Kic=function(){function e(t){this.length=t.length;for(var r=[0],n=0;nthis.length)return null;for(var r=0,n=this.offsets;n[r+1]<=t;)r++;var a=t-n[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,n=t.column;return r<0||r>=this.offsets.length||n<0||n>this.lengthOfLine(r)?null:this.offsets[r]+n},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],n=t===this.offsets.length-1?this.length:this.offsets[t+1];return n-r},e}();function mO(e,t=null){"children"in e&&e.children.forEach(r=>mO(r,e)),"anchor"in e&&e.anchor&&mO(e.anchor,e),"tag"in e&&e.tag&&mO(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>mO(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>mO(r,e)),"indicatorComment"in e&&e.indicatorComment&&mO(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&mO(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>mO(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function lEt(e){return`${e.line}:${e.column}`}function jic(e){mO(e);let t=zic(e),r=e.children.slice();e.comments.sort((n,a)=>n.position.start.offset-a.position.end.offset).filter(n=>!n._parent).forEach(n=>{for(;r.length>1&&n.position.start.line>r[0].position.end.line;)r.shift();qic(n,t,r[0])})}function zic(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return Owi(t,e),t}function Owi(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:n}=e[r.line-1];(!n||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:n}=e[r.line-1];(!n||r.column>=n.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:n}=t.position,a=[n.line].concat(r.line===n.line?[]:r.line);for(let o of a){let l=e[o-1].trailingNode;(!l||n.column>=l.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{Owi(e,r)})}}function qic(e,t,r){let n=e.position.start.line,{trailingAttachableNode:a}=t[n-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${lEt(e.position.start)}`);mO(e,a),a.trailingComment=e;return}for(let l=n;l>=r.position.start.line;l--){let{trailingNode:A}=t[l-1],f;if(A)f=A;else if(l!==n&&t[l-1].comment)f=t[l-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[I,C]=f.children;f=Mwi(I)?I:C}for(;;){if($ic(f,e)){mO(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let l=n+1;l<=r.position.end.line;l++){let{leadingAttachableNode:A}=t[l-1];if(A){mO(e,A),A.leadingComments.push(e);return}}let o=r.children[1];mO(e,o),o.endComments.push(e)}function $ic(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||Mwi(e));default:return!1}}function Mwi(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function nw(e,t){return{type:e,position:t}}function esc(e,t,r){return{...nw("root",e),children:t,comments:r}}function sEt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):sEt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):sEt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&sEt(e.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error(`Unexpected node type ${JSON.stringify(e.type)}`)}}function ZNe(){return{leadingComments:[]}}function AEt(e=null){return{trailingComment:e}}function jme(){return{...ZNe(),...AEt()}}function tsc(e,t,r){return{...nw("alias",e),...jme(),...t,value:r}}function rsc(e,t){let r=e.cstNode;return tsc(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function nsc(e){return{...e,type:"blockFolded"}}function isc(e,t,r,n,a,o){return{...nw("blockValue",e),...ZNe(),...t,chomping:r,indent:n,value:a,indicatorComment:o}}var xNe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(xNe||(xNe={}));function ssc(e,t){return{...nw("anchor",e),value:t}}function GDr(e,t){return{...nw("comment",e),value:t}}function osc(e,t,r){return{anchor:t,tag:e,middleComments:r}}function asc(e,t){return{...nw("tag",e),value:t}}function Hwi(e,t,r=()=>!1){let n=e.cstNode,a=[],o=null,l=null,A=null;for(let f of n.props){let I=t.text[f.origStart];switch(I){case xNe.Tag:o=o||f,l=asc(t.transformRange(f),e.tag);break;case xNe.Anchor:o=o||f,A=ssc(t.transformRange(f),n.anchor);break;case xNe.Comment:{let C=GDr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(C),!r(C)&&o&&o.origEnd<=f.origStart&&f.origEnd<=n.valueRange.origStart&&a.push(C);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(I)}`)}}return osc(l,A,a)}var bDr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(bDr||(bDr={}));function Ywi(e,t){let r=e.cstNode,n=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-n-a!==0,l=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),A=null,f=Hwi(e,t,I=>{if(!(l.start.offset=0;f--){let I=e.contents[f];if(I.type==="COMMENT"){let C=t.transformNode(I);r&&r.line===C.position.start.line?l.unshift(C):A?n.unshift(C):C.position.start.offset>=e.valueRange.origEnd?o.unshift(C):n.unshift(C)}else A=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${lEt(o[1].position.start)}`);if(l.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${lEt(l[1].position.start)}`);return{comments:n,endComments:a,documentTrailingComment:Tce(o)||null,documentHeadTrailingComment:Tce(l)||null}}function msc(e,t,r){let n=Qwi(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=n===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),l=n===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:l}}function Csc(e,t,r,n){return{...nw("documentHead",e),...zme(r),...AEt(n),children:t}}function _sc(e,t){let r=e.cstNode,{directives:n,comments:a,endComments:o}=ysc(r,t),{position:l,endMarkerPoint:A}=bsc(r,n,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),Csc(l,n,o,f)),documentHeadEndMarkerPoint:A}}function ysc(e,t){let r=[],n=[],a=[],o=!1;for(let l=e.directives.length-1;l>=0;l--){let A=t.transformNode(e.directives[l]);A.type==="comment"?o?n.unshift(A):a.unshift(A):(o=!0,r.unshift(A))}return{directives:r,comments:n,endComments:a}}function bsc(e,t,r){let n=Qwi(r.text.slice(0,e.valueRange.origStart),/---\s*$/);n>0&&!/[\r\n]/.test(r.text[n-1])&&(n=-1);let a=n===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:n,origEnd:n+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:n===-1?null:r.transformOffset(n)}}function Esc(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:n}=_sc(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:l,documentHeadTrailingComment:A}=Isc(e,t,n),f=r(A);return l&&t.comments.push(l),psc(Ume(f.position.start,o),f,a,l)}function Xwi(e,t,r){return{...nw("flowCollection",e),...jme(),...zme(),...t,children:r}}function Ssc(e,t,r){return{...Xwi(e,t,r),type:"flowMapping"}}function Jwi(e,t,r){return{...nw("flowMappingItem",e),...ZNe(),children:[t,r]}}function dEt(e,t){let r=[];for(let n of e)n&&"type"in n&&n.type==="COMMENT"?t.comments.push(t.transformNode(n)):r.push(n);return r}function Uwi(e){let[t,r]=["?",":"].map(n=>{let a=e.find(o=>"char"in o&&o.char===n);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function Kwi(e,t){let r=t;return n=>e.slice(r,r=n)}function jwi(e){let t=[],r=Kwi(e,1),n=!1;for(let a=1;a{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=Uwi(I);return ZDr(A,t,Jwi,C,b)}),o=r[0],l=Tce(r);return Ssc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function Bsc(e,t,r){return{...Xwi(e,t,r),type:"flowSequence"}}function wsc(e,t){return{...nw("flowSequenceItem",e),children:[t]}}function Tsc(e,t){let r=dEt(e.cstNode.items,t),n=jwi(r),a=e.items.map((A,f)=>{if(A.type!=="PAIR"){let I=t.transformNode(A);return wsc(Ume(I.position.start,I.position.end),I)}else{let I=n[f],{additionalKeyRange:C,additionalValueRange:b}=Uwi(I);return ZDr(A,t,Jwi,C,b)}}),o=r[0],l=Tce(r);return Bsc(t.transformRange({origStart:o.origOffset,origEnd:l.origOffset+1}),t.transformContent(e),a)}function Rsc(e,t,r){return{...nw("mapping",e),...ZNe(),...t,children:r}}function Nsc(e,t,r){return{...nw("mappingItem",e),...ZNe(),children:[t,r]}}function Dsc(e,t){let r=e.cstNode;r.items.filter(l=>l.type==="MAP_KEY"||l.type==="MAP_VALUE").forEach(l=>FDr(l,t));let n=dEt(r.items,t),a=ksc(n),o=e.items.map((l,A)=>{let f=a[A],[I,C]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return ZDr(l,t,Nsc,I,C)});return Rsc(Ume(o[0].position.start,Tce(o).position.end),t.transformContent(e),o)}function ksc(e){let t=[],r=Kwi(e,0),n=!1;for(let a=0;a=0;n--)if(r.test(e[n]))return n;return-1}function Fsc(e,t){let r=e.cstNode;return xsc(t.transformRange({origStart:r.valueRange.origStart,origEnd:Gsc(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function Zsc(e){return{...e,type:"quoteDouble"}}function Lsc(e,t,r){return{...nw("quoteValue",e),...t,...jme(),value:r}}function zwi(e,t){let r=e.cstNode;return Lsc(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function Vsc(e,t){return Zsc(zwi(e,t))}function Psc(e){return{...e,type:"quoteSingle"}}function Wsc(e,t){return Psc(zwi(e,t))}function Osc(e,t,r){return{...nw("sequence",e),...ZNe(),...zme(),...t,children:r}}function Msc(e,t){return{...nw("sequenceItem",e),...jme(),...zme(),children:t?[t]:[]}}function Hsc(e,t){let r=dEt(e.cstNode.items,t).map((n,a)=>{FDr(n,t);let o=t.transformNode(e.items[a]);return Msc(Ume(t.transformOffset(n.valueRange.origStart),o===null?t.transformOffset(n.valueRange.origStart+1):o.position.end),o)});return Osc(Ume(r[0].position.start,Tce(r).position.end),t.transformContent(e),r)}function Ysc(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return rsc(e,t);case"BLOCK_FOLDED":return csc(e,t);case"BLOCK_LITERAL":return usc(e,t);case"COMMENT":return gsc(e,t);case"DIRECTIVE":return dsc(e,t);case"DOCUMENT":return Esc(e,t);case"FLOW_MAP":return vsc(e,t);case"FLOW_SEQ":return Tsc(e,t);case"MAP":return Dsc(e,t);case"PLAIN":return Fsc(e,t);case"QUOTE_DOUBLE":return Vsc(e,t);case"QUOTE_SINGLE":return Wsc(e,t);case"SEQ":return Hsc(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function Qsc(e,t,r){let n=new SyntaxError(e);return n.name="YAMLSyntaxError",n.source=t,n.position=r,n}function Xsc(e,t){let r=e.source.range||e.source.valueRange;return Qsc(e.message,t.text,t.transformRange(r))}function Jsc(e,t,r){return{offset:e,line:t,column:r}}function Usc(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return Jsc(e,r.line+1,r.column+1)}function Ksc(e,t){return Ume(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function jsc(e){if(!e.setOrigRanges()){let t=r=>{if(zsc(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(qsc(r))return r.origOffset=r.offset,!0};e.forEach(r=>EDr(r,t))}}function EDr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let n=e[r];Array.isArray(n)?n.forEach(a=>EDr(a,t)):EDr(n,t)}}function zsc(e){return typeof e.start=="number"}function qsc(e){return typeof e.offset=="number"}function qwi(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(qwi)}return e}function rwi(e,t,r,n){let a=t(e);return o=>{n(a,o)&&r(e,a=o)}}function $wi(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach($wi),e.type==="document"){let[o,l]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=l.position.start:l.position.start.offset===l.position.end.offset&&(l.position.start=l.position.end=o.position.end)}let r=rwi(e.position,$sc,eoc,noc),n=rwi(e.position,toc,roc,ioc);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),n(Tce(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],l=Tce(a);r(o.position.start),n(l.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in l&&l.trailingComment&&n(l.trailingComment.position.end)}}function $sc(e){return e.start}function eoc(e,t){e.start=t}function toc(e){return e.end}function roc(e,t){e.end=t}function noc(e,t){return t.offsete.offset}var soc=iwi(Qnc(),1),iH=iwi(Xnc(),1),FRu=iH.default.findPair,ZRu=iH.default.toJSON,LRu=iH.default.parseMap,VRu=iH.default.parseSeq,PRu=iH.default.stringifyNumber,WRu=iH.default.stringifyString,ORu=iH.default.Type,MRu=iH.default.YAMLError,HRu=iH.default.YAMLReferenceError,ooc=iH.default.YAMLSemanticError,YRu=iH.default.YAMLSyntaxError,QRu=iH.default.YAMLWarning,{Document:aoc,parseCST:coc}=soc.default;function loc(e){let t=coc(e);jsc(t);let r=t.map(A=>new aoc({merge:!1,keepCstNodes:!0}).parse(A)),n=new Kic(e),a=[],o={text:e,locator:n,comments:a,transformOffset:A=>Usc(A,o),transformRange:A=>Ksc(A,o),transformNode:A=>Ysc(A,o),transformContent:A=>Hwi(A,o)};for(let A of r)for(let f of A.errors)if(!(f instanceof ooc&&f.message==='Map keys must be unique; "<<" is repeated'))throw Xsc(f,o);r.forEach(A=>sEt(A.cstNode));let l=esc(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return jic(l),$wi(l),qwi(l),l}function uoc(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var goc=uoc;function Aoc(e){try{let t=loc(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?goc(t.message,{loc:t.position,cause:t}):t}}var doc={astFormat:"yaml",parse:Aoc,hasPragma:Sic,locStart:aEt,locEnd:bic},eTi={yaml:Jic},poc=Iwi;var foc=Object.create,tkr=Object.defineProperty,Ioc=Object.getOwnPropertyDescriptor,hoc=Object.getOwnPropertyNames,moc=Object.getPrototypeOf,Coc=Object.prototype.hasOwnProperty,kTi=e=>{throw TypeError(e)},xTi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),rkr=(e,t)=>{for(var r in t)tkr(e,r,{get:t[r],enumerable:!0})},_oc=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of hoc(t))!Coc.call(e,a)&&a!==r&&tkr(e,a,{get:()=>t[a],enumerable:!(n=Ioc(t,a))||n.enumerable});return e},EEt=(e,t,r)=>(r=e!=null?foc(moc(e)):{},_oc(t||!e||!e.__esModule?tkr(r,"default",{value:e,enumerable:!0}):r,e)),yoc=(e,t,r)=>t.has(e)||kTi("Cannot "+r),boc=(e,t,r)=>t.has(e)?kTi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),GJe=(e,t,r)=>(yoc(e,t,"access private method"),r),nkr=xTi((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),Eoc=xTi(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function n(o,l,A){let f=Object.assign({column:0,line:-1},o.start),I=Object.assign({},f,o.end),{linesAbove:C=2,linesBelow:b=3}=A||{},E=f.line,N=f.column,B=I.line,F=I.column,Q=Math.max(E-(C+1),0),X=Math.min(l.length,B+b);E===-1&&(Q=0),B===-1&&(X=l.length);let ae=B-E,ne={};if(ae)for(let ce=0;ce<=ae;ce++){let fe=ce+E;if(!N)ne[fe]=!0;else if(ce===0){let ue=l[fe-1].length;ne[fe]=[N,ue-N+1]}else if(ce===ae)ne[fe]=[0,F];else{let ue=l[fe-ce].length;ne[fe]=[0,ue]}}else N===F?N?ne[E]=[N,0]:ne[E]=!0:ne[E]=[N,F-N];return{start:Q,end:X,markerLines:ne}}function a(o,l,A={}){let f=t(!1),I=o.split(r),{start:C,end:b,markerLines:E}=n(l,I,A),N=l.start&&typeof l.start.column=="number",B=String(b).length,F=o.split(r,b).slice(C,b).map((Q,X)=>{let ae=C+1+X,ne=` ${` ${ae}`.slice(-B)} |`,ce=E[ae],fe=!E[ae+1];if(ce){let ue="";if(Array.isArray(ce)){let de=Q.slice(0,Math.max(ce[0]-1,0)).replace(/[^\t]/g," "),be=ce[1]||1;ue=[` - `,f.gutter(ne.replace(/\d/g," "))," ",de,f.marker("^").repeat(be)].join(""),fe&&A.message&&(ue+=" "+f.message(A.message))}return[f.marker(">"),f.gutter(ne),Q.length>0?` ${Q}`:"",ue].join("")}else return` ${f.gutter(ne)}${Q.length>0?` ${Q}`:""}`}).join(` -`);return A.message&&!N&&(F=`${" ".repeat(B+1)}${A.message} -${F}`),F}e.codeFrameColumns=a}),Soc={};rkr(Soc,{__debug:()=>klc,check:()=>Nlc,doc:()=>fRi,format:()=>kEt,formatWithCursor:()=>hRi,getSupportInfo:()=>Dlc,util:()=>IRi,version:()=>ilc});var voc=(e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},SEt=voc;function a4(){}a4.prototype={diff:function(e,t){var r,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n.callback;typeof n=="function"&&(a=n,n={});var o=this;function l(ne){return ne=o.postProcess(ne,n),a?(setTimeout(function(){a(ne)},0),!0):ne}e=this.castInput(e,n),t=this.castInput(t,n),e=this.removeEmpty(this.tokenize(e,n)),t=this.removeEmpty(this.tokenize(t,n));var A=t.length,f=e.length,I=1,C=A+f;n.maxEditLength!=null&&(C=Math.min(C,n.maxEditLength));var b=(r=n.timeout)!==null&&r!==void 0?r:1/0,E=Date.now()+b,N=[{oldPos:-1,lastComponent:void 0}],B=this.extractCommon(N[0],t,e,0,n);if(N[0].oldPos+1>=f&&B+1>=A)return l(tTi(o,N[0].lastComponent,t,e,o.useLongestToken));var F=-1/0,Q=1/0;function X(){for(var ne=Math.max(F,-I);ne<=Math.min(Q,I);ne+=2){var ce=void 0,fe=N[ne-1],ue=N[ne+1];fe&&(N[ne-1]=void 0);var de=!1;if(ue){var be=ue.oldPos-ne;de=ue&&0<=be&&be=f&&B+1>=A)return l(tTi(o,ce.lastComponent,t,e,o.useLongestToken));N[ne]=ce,ce.oldPos+1>=f&&(Q=Math.min(Q,ne-1)),B+1>=A&&(F=Math.max(F,ne+1))}I++}if(a)(function ne(){setTimeout(function(){if(I>C||Date.now()>E)return a();X()||ne()},0)})();else for(;I<=C&&Date.now()<=E;){var ae=X();if(ae)return ae}},addToPath:function(e,t,r,n,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+n,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,n,a){for(var o=t.length,l=r.length,A=e.oldPos,f=A-n,I=0;f+1N.length?F:N}),b.value=e.join(E)}else b.value=e.join(r.slice(I,I+b.count));I+=b.count,b.added||(C+=b.count)}}return o}var ANu=new a4;function rTi(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var n=t.length;e.length0&&t[l]!=t[o];)o=a[o];t[l]==t[o]&&o++}o=0;for(var A=r;A0&&e[A]!=t[o];)o=a[o];e[A]==t[o]&&o++}return o}var _Et="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",woc=new RegExp("[".concat(_Et,"]+|\\s+|[^").concat(_Et,"]"),"ug"),vEt=new a4;vEt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};vEt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(woc)||[];var n=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?n.push(o):n.push(n.pop()+o):/\s/.test(a)?n[n.length-1]==a?n.push(n.pop()+o):n.push(a+o):n.push(o),a=o}),n};vEt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};vEt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,n=null,a=null;return e.forEach(function(o){o.added?n=o:o.removed?a=o:((n||a)&&sTi(r,a,n,o),r=o,n=null,a=null)}),(n||a)&&sTi(r,a,n,null),e};function sTi(e,t,r,n){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],l=r.value.match(/^\s*/)[0],A=r.value.match(/\s*$/)[0];if(e){var f=rTi(a,l);e.value=YDr(e.value,l,f),t.value=FJe(t.value,f),r.value=FJe(r.value,f)}if(n){var I=nTi(o,A);n.value=HDr(n.value,A,I),t.value=pEt(t.value,I),r.value=pEt(r.value,I)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),n&&(n.value=n.value.replace(/^\s*/,""));else if(e&&n){var C=n.value.match(/^\s*/)[0],b=t.value.match(/^\s*/)[0],E=t.value.match(/\s*$/)[0],N=rTi(C,b);t.value=FJe(t.value,N);var B=nTi(FJe(C,N),E);t.value=pEt(t.value,B),n.value=HDr(n.value,C,B),e.value=YDr(e.value,C,C.slice(0,C.length-B.length))}else if(n){var F=n.value.match(/^\s*/)[0],Q=t.value.match(/\s*$/)[0],X=iTi(Q,F);t.value=pEt(t.value,X)}else if(e){var ae=e.value.match(/\s*$/)[0],ne=t.value.match(/^\s*/)[0],ce=iTi(ae,ne);t.value=FJe(t.value,ce)}}var Toc=new a4;Toc.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(_Et,"]+|[^\\S\\n\\r]+|[^").concat(_Et,"]"),"ug");return e.match(t)||[]};var ikr=new a4;ikr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var r=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var a=0;a"u"?r:l}:n;return typeof e=="string"?e:JSON.stringify(XDr(e,null,null,a),a," ")};LJe.equals=function(e,t,r){return a4.prototype.equals.call(LJe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function XDr(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},aD=Goc;function Foc(e){if(typeof e=="string")return iCe;if(Array.isArray(e))return xee;if(!e)return;let{type:t}=e;if(FTi.has(t))return t}var oCe=Foc,Zoc=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Loc(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(oCe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=Zoc([...FTi].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${n}.`}var Voc=class extends Error{name="InvalidDocError";constructor(e){super(Loc(e)),this.doc=e}},MNe=Voc,oTi={};function Poc(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===oTi){r(a.pop());continue}r&&a.push(o,oTi);let l=oCe(o);if(!l)throw new MNe(o);if(t?.(o)!==!1)switch(l){case xee:case Cj:{let A=l===xee?o:o.parts;for(let f=A.length,I=f-1;I>=0;--I)a.push(A[I]);break}case CO:a.push(o.flatContents,o.breakContents);break;case SV:if(n&&o.expandedStates)for(let A=o.expandedStates.length,f=A-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Fee:case Gee:case Lee:case _j:case Vee:a.push(o.contents);break;case iCe:case sCe:case Zee:case Pee:case Mk:case sH:break;default:throw new MNe(o)}}}var okr=Poc;function BEt(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let l=a(o);return r.set(o,l),l}function a(o){switch(oCe(o)){case xee:return t(o.map(n));case Cj:return t({...o,parts:o.parts.map(n)});case CO:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case SV:{let{expandedStates:l,contents:A}=o;return l?(l=l.map(n),A=l[0]):A=n(A),t({...o,contents:A,expandedStates:l})}case Fee:case Gee:case Lee:case _j:case Vee:return t({...o,contents:n(o.contents)});case iCe:case sCe:case Zee:case Pee:case Mk:case sH:return t(o);default:throw new MNe(o)}}}function akr(e,t,r){let n=r,a=!1;function o(l){if(a)return!1;let A=t(l);A!==void 0&&(a=!0,n=A)}return okr(e,o),n}function Woc(e){if(e.type===SV&&e.break||e.type===Mk&&e.hard||e.type===sH)return!0}function Ooc(e){return akr(e,Woc,!1)}function aTi(e){if(e.length>0){let t=aD(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function Moc(e){let t=new Set,r=[];function n(o){if(o.type===sH&&aTi(r),o.type===SV){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===SV&&r.pop().break&&aTi(r)}okr(e,n,a,!0)}function Hoc(e){return e.type===Mk&&!e.hard?e.soft?"":" ":e.type===CO?e.flatContents:e}function Yoc(e){return BEt(e,Hoc)}function cTi(e){for(e=[...e];e.length>=2&&aD(!1,e,-2).type===Mk&&aD(!1,e,-1).type===sH;)e.length-=2;if(e.length>0){let t=ZJe(aD(!1,e,-1));e[e.length-1]=t}return e}function ZJe(e){switch(oCe(e)){case Gee:case Lee:case SV:case Vee:case _j:{let t=ZJe(e.contents);return{...e,contents:t}}case CO:return{...e,breakContents:ZJe(e.breakContents),flatContents:ZJe(e.flatContents)};case Cj:return{...e,parts:cTi(e.parts)};case xee:return cTi(e);case iCe:return e.replace(/[\n\r]*$/u,"");case Fee:case sCe:case Zee:case Pee:case Mk:case sH:break;default:throw new MNe(e)}return e}function ZTi(e){return ZJe(Xoc(e))}function Qoc(e){switch(oCe(e)){case Cj:if(e.parts.every(t=>t===""))return"";break;case SV:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===SV&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Fee:case Gee:case Lee:case Vee:if(!e.contents)return"";break;case CO:if(!e.flatContents&&!e.breakContents)return"";break;case xee:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof aD(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case iCe:case sCe:case Zee:case Pee:case Mk:case _j:case sH:break;default:throw new MNe(e)}return e}function Xoc(e){return BEt(e,t=>Qoc(t))}function Joc(e,t=OTi){return BEt(e,r=>typeof r=="string"?MTi(t,r.split(` -`)):r)}function Uoc(e){if(e.type===Mk)return!0}function Koc(e){return akr(e,Uoc,!1)}function hEt(e,t){return e.type===_j?{...e,contents:t(e.contents)}:t(e)}var ckr=()=>{},mj=ckr,LTi=ckr,joc=ckr;function bEt(e){return mj(e),{type:Gee,contents:e}}function HNe(e,t){return mj(t),{type:Fee,contents:t,n:e}}function VTi(e,t={}){return mj(e),LTi(t.expandedStates,!0),{type:SV,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function zoc(e){return HNe(Number.NEGATIVE_INFINITY,e)}function qoc(e){return HNe({type:"root"},e)}function $oc(e){return HNe(-1,e)}function eac(e,t){return VTi(e[0],{...t,expandedStates:e})}function tac(e){return joc(e),{type:Cj,parts:e}}function rac(e,t="",r={}){return mj(e),t!==""&&mj(t),{type:CO,breakContents:e,flatContents:t,groupId:r.groupId}}function nac(e,t){return mj(e),{type:Lee,contents:e,groupId:t.groupId,negate:t.negate}}function JDr(e){return mj(e),{type:Vee,contents:e}}var iac={type:Pee},wEt={type:sH},sac={type:Zee},lkr={type:Mk,hard:!0},PTi={type:Mk,hard:!0,literal:!0},WTi={type:Mk},oac={type:Mk,soft:!0},rCe=[lkr,wEt],OTi=[PTi,wEt],tCe={type:sCe};function MTi(e,t){mj(e),LTi(t);let r=[];for(let n=0;n0){for(let a=0;a0?`, { ${C.join(", ")} }`:"";return`indentIfBreak(${n(o.contents)}${b})`}if(o.type===SV){let C=[];o.break&&o.break!=="propagated"&&C.push("shouldBreak: true"),o.id&&C.push(`id: ${a(o.id)}`);let b=C.length>0?`, { ${C.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(E=>n(E)).join(",")}]${b})`:`group(${n(o.contents)}${b})`}if(o.type===Cj)return`fill([${o.parts.map(C=>n(C)).join(", ")}])`;if(o.type===Vee)return"lineSuffix("+n(o.contents)+")";if(o.type===Pee)return"lineSuffixBoundary";if(o.type===_j)return`label(${JSON.stringify(o.label)}, ${n(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let l=o.description||"symbol";for(let A=0;;A++){let f=l+(A>0?` #${A}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var lac=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function uac(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function gac(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Aac=e=>!(uac(e)||gac(e)),dac=/[^\x20-\x7F]/u;function pac(e){if(!e)return 0;if(!dac.test(e))return e.length;e=e.replace(lac()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=Aac(n)?1:2)}return t}var ukr=pac,EV=Symbol("MODE_BREAK"),hj=Symbol("MODE_FLAT"),LNe=Symbol("cursor"),UDr=Symbol("DOC_FILL_PRINTED_LENGTH");function YTi(){return{value:"",length:0,queue:[]}}function fac(e,t){return KDr(e,{type:"indent"},t)}function Iac(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||YTi():t<0?KDr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:KDr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function KDr(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,l=0,A=0;for(let B of n)switch(B.type){case"indent":C(),r.useTabs?f(1):I(r.tabWidth);break;case"stringAlign":C(),a+=B.n,o+=B.n.length;break;case"numberAlign":l+=1,A+=B.n;break;default:throw new Error(`Unexpected type '${B.type}'`)}return E(),{...e,value:a,length:o,queue:n};function f(B){a+=" ".repeat(B),o+=r.tabWidth*B}function I(B){a+=" ".repeat(B),o+=B}function C(){r.useTabs?b():E()}function b(){l>0&&f(l),N()}function E(){A>0&&I(A),N()}function N(){l=0,A=0}}function jDr(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===LNe){r++;continue}for(let o=a.length-1;o>=0;o--){let l=a[o];if(l===" "||l===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(LNe);return t}function fEt(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let l=t.length,A=[e],f=[];for(;r>=0;){if(A.length===0){if(l===0)return!0;A.push(t[--l]);continue}let{mode:I,doc:C}=A.pop(),b=oCe(C);switch(b){case iCe:f.push(C),r-=ukr(C);break;case xee:case Cj:{let E=b===xee?C:C.parts,N=C[UDr]??0;for(let B=E.length-1;B>=N;B--)A.push({mode:I,doc:E[B]});break}case Gee:case Fee:case Lee:case _j:A.push({mode:I,doc:C.contents});break;case Zee:r+=jDr(f);break;case SV:{if(o&&C.break)return!1;let E=C.break?EV:I,N=C.expandedStates&&E===EV?aD(!1,C.expandedStates,-1):C.contents;A.push({mode:E,doc:N});break}case CO:{let E=(C.groupId?a[C.groupId]||hj:I)===EV?C.breakContents:C.flatContents;E&&A.push({mode:I,doc:E});break}case Mk:if(I===EV||C.hard)return!0;C.soft||(f.push(" "),r--);break;case Vee:n=!0;break;case Pee:if(n)return!1;break}}return!1}function TEt(e,t){let r={},n=t.printWidth,a=skr(t.endOfLine),o=0,l=[{ind:YTi(),mode:EV,doc:e}],A=[],f=!1,I=[],C=0;for(Moc(e);l.length>0;){let{ind:E,mode:N,doc:B}=l.pop();switch(oCe(B)){case iCe:{let F=a!==` -`?SEt(!1,B,` -`,a):B;A.push(F),l.length>0&&(o+=ukr(F));break}case xee:for(let F=B.length-1;F>=0;F--)l.push({ind:E,mode:N,doc:B[F]});break;case sCe:if(C>=2)throw new Error("There are too many 'cursor' in doc.");A.push(LNe),C++;break;case Gee:l.push({ind:fac(E,t),mode:N,doc:B.contents});break;case Fee:l.push({ind:Iac(E,B.n,t),mode:N,doc:B.contents});break;case Zee:o-=jDr(A);break;case SV:switch(N){case hj:if(!f){l.push({ind:E,mode:B.break?EV:hj,doc:B.contents});break}case EV:{f=!1;let F={ind:E,mode:hj,doc:B.contents},Q=n-o,X=I.length>0;if(!B.break&&fEt(F,l,Q,X,r))l.push(F);else if(B.expandedStates){let ae=aD(!1,B.expandedStates,-1);if(B.break){l.push({ind:E,mode:EV,doc:ae});break}else for(let ne=1;ne=B.expandedStates.length){l.push({ind:E,mode:EV,doc:ae});break}else{let ce=B.expandedStates[ne],fe={ind:E,mode:hj,doc:ce};if(fEt(fe,l,Q,X,r)){l.push(fe);break}}}else l.push({ind:E,mode:EV,doc:B.contents});break}}B.id&&(r[B.id]=aD(!1,l,-1).mode);break;case Cj:{let F=n-o,Q=B[UDr]??0,{parts:X}=B,ae=X.length-Q;if(ae===0)break;let ne=X[Q+0],ce=X[Q+1],fe={ind:E,mode:hj,doc:ne},ue={ind:E,mode:EV,doc:ne},de=fEt(fe,[],F,I.length>0,r,!0);if(ae===1){de?l.push(fe):l.push(ue);break}let be={ind:E,mode:hj,doc:ce},Se={ind:E,mode:EV,doc:ce};if(ae===2){de?l.push(be,fe):l.push(Se,ue);break}let De=X[Q+2],k={ind:E,mode:N,doc:{...B,[UDr]:Q+2}};fEt({ind:E,mode:hj,doc:[ne,ce,De]},[],F,I.length>0,r,!0)?l.push(k,be,fe):de?l.push(k,Se,fe):l.push(k,Se,ue);break}case CO:case Lee:{let F=B.groupId?r[B.groupId]:N;if(F===EV){let Q=B.type===CO?B.breakContents:B.negate?B.contents:bEt(B.contents);Q&&l.push({ind:E,mode:N,doc:Q})}if(F===hj){let Q=B.type===CO?B.flatContents:B.negate?bEt(B.contents):B.contents;Q&&l.push({ind:E,mode:N,doc:Q})}break}case Vee:I.push({ind:E,mode:N,doc:B.contents});break;case Pee:I.length>0&&l.push({ind:E,mode:N,doc:lkr});break;case Mk:switch(N){case hj:if(B.hard)f=!0;else{B.soft||(A.push(" "),o+=1);break}case EV:if(I.length>0){l.push({ind:E,mode:N,doc:B},...I.reverse()),I.length=0;break}B.literal?E.root?(A.push(a,E.root.value),o=E.root.length):(A.push(a),o=0):(o-=jDr(A),A.push(a+E.value),o=E.length);break}break;case _j:l.push({ind:E,mode:N,doc:B.contents});break;case sH:break;default:throw new MNe(B)}l.length===0&&I.length>0&&(l.push(...I.reverse()),I.length=0)}let b=A.indexOf(LNe);if(b!==-1){let E=A.indexOf(LNe,b+1);if(E===-1)return{formatted:A.filter(Q=>Q!==LNe).join("")};let N=A.slice(0,b).join(""),B=A.slice(b+1,E).join(""),F=A.slice(E+1).join("");return{formatted:N+B+F,cursorNodeStart:N.length,cursorNodeText:B}}return{formatted:A.join("")}}function hac(e,t,r=0){let n=0;for(let a=r;a1?aD(!1,e,-2):null}getValue(){return aD(!1,this.stack,-1)}getNode(e=0){let t=GJe(this,qme,zDr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:n}=r,a=aD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=n}}callParent(e,t=0){let r=GJe(this,qme,zDr).call(this,t+1),n=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...n)}}each(e,...t){let{stack:r}=this,{length:n}=r,a=aD(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(n,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,n=this.stack[t--];for(let a of e){if(n===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],n=this.stack[t--]),a&&!a(n,r,o))return!1;r=this.stack[t--],n=this.stack[t--]}return!0}findAncestor(e){for(let t of GJe(this,qme,mEt).call(this))if(e(t))return t}hasAncestor(e){for(let t of GJe(this,qme,mEt).call(this))if(e(t))return!0;return!1}};qme=new WeakSet,zDr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},mEt=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var Cac=mac,QTi=new Proxy(()=>{},{get:()=>QTi}),qDr=QTi;function _ac(e){return e!==null&&typeof e=="object"}var yac=_ac;function*REt(e,t){let{getVisitorKeys:r,filter:n=()=>!0}=t,a=o=>yac(o)&&n(o);for(let o of r(e)){let l=e[o];if(Array.isArray(l))for(let A of l)a(A)&&(yield A);else a(l)&&(yield l)}}function*bac(e,t){let r=[e];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,l=r;for(;l>=0&&l0}var Tac=wac,UTi=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),Rac=e=>Object.keys(e).filter(t=>!UTi.has(t));function Nac(e){return e?t=>e(t,UTi):Rac}var NEt=Nac;function Dac(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Akr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=Dac(e)}function VNe(e,t){t.leading=!0,t.trailing=!1,Akr(e,t)}function $me(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Akr(e,t)}function PNe(e,t){t.leading=!1,t.trailing=!0,Akr(e,t)}var LDr=new WeakMap;function dkr(e,t){if(LDr.has(e))return LDr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:a},locStart:o,locEnd:l}=t;if(!n)return[];let A=(r?.(e,t)??[...REt(e,{getVisitorKeys:NEt(a)})]).flatMap(f=>n(f)?[f]:dkr(f,t));return A.sort((f,I)=>o(f)-o(I)||l(f)-l(I)),LDr.set(e,A),A}function KTi(e,t,r,n){let{locStart:a,locEnd:o}=r,l=a(t),A=o(t),f=dkr(e,r),I,C,b=0,E=f.length;for(;b>1,B=f[N],F=a(B),Q=o(B);if(F<=l&&A<=Q)return KTi(B,t,r,B);if(Q<=l){I=B,b=N+1;continue}if(A<=F){C=B,E=N;continue}throw new Error("Comment location overlaps with node location")}if(n?.type==="TemplateLiteral"){let{quasis:N}=n,B=PDr(N,t,r);I&&PDr(N,I,r)!==B&&(I=null),C&&PDr(N,C,r)!==B&&(C=null)}return{enclosingNode:n,precedingNode:I,followingNode:C}}var VDr=()=>!1;function kac(e,t){let{comments:r}=e;if(delete e.comments,!Tac(r)||!t.printer.canAttachComment)return;let n=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:l=!1}={},handleComments:A={}},originalText:f}=t,{ownLine:I=VDr,endOfLine:C=VDr,remaining:b=VDr}=A,E=r.map((N,B)=>({...KTi(e,N,t),comment:N,text:f,options:t,ast:e,isLastComment:r.length-1===B}));for(let[N,B]of E.entries()){let{comment:F,precedingNode:Q,enclosingNode:X,followingNode:ae,text:ne,options:ce,ast:fe,isLastComment:ue}=B;if(ce.parser==="json"||ce.parser==="json5"||ce.parser==="jsonc"||ce.parser==="__js_expression"||ce.parser==="__ts_expression"||ce.parser==="__vue_expression"||ce.parser==="__vue_ts_expression"){if(a(F)-a(fe)<=0){VNe(fe,F);continue}if(o(F)-o(fe)>=0){PNe(fe,F);continue}}let de;if(l?de=[B]:(F.enclosingNode=X,F.precedingNode=Q,F.followingNode=ae,de=[F,ne,ce,fe,ue]),xac(ne,ce,E,N))F.placement="ownLine",I(...de)||(ae?VNe(ae,F):Q?PNe(Q,F):$me(X||fe,F));else if(Gac(ne,ce,E,N))F.placement="endOfLine",C(...de)||(Q?PNe(Q,F):ae?VNe(ae,F):$me(X||fe,F));else if(F.placement="remaining",!b(...de))if(Q&&ae){let be=n.length;be>0&&n[be-1].followingNode!==ae&&lTi(n,ce),n.push(B)}else Q?PNe(Q,F):ae?VNe(ae,F):$me(X||fe,F)}if(lTi(n,t),!l)for(let N of r)delete N.precedingNode,delete N.enclosingNode,delete N.followingNode}var jTi=e=>!/[\S\n\u2028\u2029]/u.test(e);function xac(e,t,r,n){let{comment:a,precedingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=l(a);if(o)for(let I=n-1;I>=0;I--){let{comment:C,precedingNode:b}=r[I];if(b!==o||!jTi(e.slice(A(C),f)))break;f=l(C)}return Rce(e,f,{backwards:!0})}function Gac(e,t,r,n){let{comment:a,followingNode:o}=r[n],{locStart:l,locEnd:A}=t,f=A(a);if(o)for(let I=n+1;I0;--f){let{comment:I,precedingNode:C,followingNode:b}=e[f-1];qDr.strictEqual(C,o),qDr.strictEqual(b,l);let E=t.originalText.slice(t.locEnd(I),A);if(((n=(r=t.printer).isGap)==null?void 0:n.call(r,E,t))??/^[\s(]*$/u.test(E))A=t.locStart(I);else break}for(let[I,{comment:C}]of e.entries())I1&&I.comments.sort((C,b)=>t.locStart(C)-t.locStart(b));e.length=0}function PDr(e,t,r){let n=r.locStart(t)-1;for(let a=1;a!n.has(A)).length===0)return{leading:"",trailing:""};let a=[],o=[],l;return e.each(()=>{let A=e.node;if(n!=null&&n.has(A))return;let{leading:f,trailing:I}=A;f?a.push(Zac(e,t)):I&&(l=Lac(e,t,l),o.push(l.doc))},"comments"),{leading:a,trailing:o}}function Pac(e,t,r){let{leading:n,trailing:a}=Vac(e,r);return!n&&!a?t:hEt(t,o=>[n,o,a])}function Wac(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed}}function Oac(e){return()=>{}}var Mac=Oac,qTi=class extends Error{name="ConfigError"},uTi=class extends Error{name="UndefinedParserError"},Hac={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing -(mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>typeof e=="string"||typeof e=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>typeof e=="string"||typeof e=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive). -The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset. -The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment -in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function $Ti({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),n=[];for(let a of Qac(Object.assign({},...e.map(({options:o})=>o),Hac)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...Yac(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var l;return((l=o.defaultOptions)==null?void 0:l[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),n.push(a));return{languages:r,options:n}}function*Yac(e,t,r){let n=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!n.has(o)){n.add(o);let l=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),A=a.name;l!=null&&l.name&&(A+=` (plugin: ${l.name})`),yield{value:o,description:A}}}}function Qac(e){let t=[];for(let[r,n]of Object.entries(e)){let a={name:r,...n};Array.isArray(a.default)&&(a.default=aD(!1,a.default,-1).value),t.push(a)}return t}var Xac=e=>String(e).split(/[/\\]/u).pop();function gTi(e,t){if(!t)return;let r=Xac(t).toLowerCase();return e.find(({filenames:n})=>n?.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n?.some(a=>r.endsWith(a)))}function Jac(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Uac(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=Jac(r,t.language)??gTi(r,t.physicalFile)??gTi(r,t.file)??(t.physicalFile,void 0);return n?.parsers[0]}var Kac=Uac,WNe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>WNe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${WNe.key(r)}: ${WNe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>WNe.value({[e]:t})},ATi=EEt(nkr(),1),jac=(e,t,{descriptor:r})=>{let n=[`${ATi.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${ATi.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."},ONe=EEt(nkr(),1),eRi=Symbol.for("vnopts.VALUE_NOT_EXIST"),CEt=Symbol.for("vnopts.VALUE_UNCHANGED"),dTi=" ".repeat(2),zac=(e,t,r)=>{let{text:n,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return n&&o.push(pTi(e,t,n,r.descriptor)),a&&o.push([pTi(e,t,a.title,r.descriptor)].concat(a.values.map(l=>tRi(l,r.loggerPrintWidth))).join(` -`)),rRi(o,r.loggerPrintWidth)};function pTi(e,t,r,n){return[`Invalid ${ONe.default.red(n.key(e))} value.`,`Expected ${ONe.default.blue(r)},`,`but received ${t===eRi?ONe.default.gray("nothing"):ONe.default.red(n.value(t))}.`].join(" ")}function tRi({text:e,list:t},r){let n=[];return e&&n.push(`- ${ONe.default.blue(e)}`),t&&n.push([`- ${ONe.default.blue(t.title)}:`].concat(t.values.map(a=>tRi(a,r-dTi.length).replace(/^|\n/g,`$&${dTi}`))).join(` -`)),rRi(n,r)}function rRi(e,t){if(e.length===1)return e[0];let[r,n]=e,[a,o]=e.map(l=>l.split(` -`,1)[0].length);return a>t&&a>o?n:r}var fTi=EEt(nkr(),1),WDr=[],ITi=[];function qac(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,a=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-a);)n--,a--;let o=0;for(;oA?I>A?A+1:I:I>f?f+1:I;return A}var nRi=(e,t,{descriptor:r,logger:n,schemas:a})=>{let o=[`Ignored unknown option ${fTi.default.yellow(r.pair({key:e,value:t}))}.`],l=Object.keys(a).sort().find(A=>qac(e,A)<3);l&&o.push(`Did you mean ${fTi.default.blue(r.key(l))}?`),n.warn(o.join(" "))},$ac=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function ecc(e,t){let r=new e(t),n=Object.create(r);for(let a of $ac)a in t&&(n[a]=tcc(t[a],r,Dce.prototype[a].length));return n}var Dce=class{static create(e){return ecc(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return CEt}};function tcc(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}var rcc=class extends Dce{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},ncc=class extends Dce{expected(){return"anything"}validate(){return!0}},icc=class extends Dce{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let n of e){let a=t.normalizeValidateResult(this._valueSchema.validate(n,t),n);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let n of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(n,t),n);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let n of e){let a=t.normalizeForwardResult(this._valueSchema.forward(n,t),n);r.push(...a.map(hTi))}return r}redirect(e,t){let r=[],n=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),n.push(...o.redirect.map(hTi))}return r.length===0?{redirect:n}:{redirect:n,remain:r}}overlap(e,t){return e.concat(t)}};function hTi({from:e,to:t}){return{from:[e],to:t}}var scc=class extends Dce{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function occ(e,t){let r=Object.create(null);for(let n of e){let a=n[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=n}return r}function acc(e,t){let r=new Map;for(let n of e){let a=n[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,n)}return r}function ccc(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function lcc(e,t){let r=[],n=[];for(let a of e)t(a)?r.push(a):n.push(a);return[r,n]}function ucc(e){return e===Math.floor(e)}function gcc(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,a=["undefined","object","boolean","number","string"];return r!==n?a.indexOf(r)-a.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function Acc(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function mTi(e){return e===void 0?{}:e}function iRi(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return dcc((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(iRi)}}:{text:t}}function CTi(e,t){return e===!0?!0:e===!1?{value:t}:e}function _Ti(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function yTi(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function $Dr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>yTi(r,t)):[yTi(e,t)]}function bTi(e,t){let r=$Dr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function dcc(e,t){if(!e)throw new Error(t)}var pcc=class extends Dce{constructor(e){super(e),this._choices=acc(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(gcc).map(e.value),r=t.slice(0,-2),n=t.slice(-2);return{text:r.concat(n.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},fcc=class extends Dce{expected(){return"a number"}validate(e,t){return typeof e=="number"}},Icc=class extends fcc{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&ucc(e)}},ETi=class extends Dce{expected(){return"a string"}validate(e){return typeof e=="string"}},hcc=WNe,mcc=nRi,Ccc=zac,_cc=jac,ycc=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:n=80,descriptor:a=hcc,unknown:o=mcc,invalid:l=Ccc,deprecated:A=_cc,missing:f=()=>!1,required:I=()=>!1,preprocess:C=E=>E,postprocess:b=()=>CEt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:n,schemas:occ(e,"name"),normalizeDefaultResult:mTi,normalizeExpectedResult:iRi,normalizeDeprecatedResult:_Ti,normalizeForwardResult:$Dr,normalizeRedirectResult:bTi,normalizeValidateResult:CTi},this._unknownHandler=o,this._invalidHandler=Acc(l),this._deprecatedHandler=A,this._identifyMissing=(E,N)=>!(E in N)||f(E,N),this._identifyRequired=I,this._preprocess=C,this._postprocess=b,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=ccc()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],n=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};n();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let l=mTi(o.default(this._utils));"value"in l&&r.push({[a]:l.value})}}n();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],l=t[a],A=o.postprocess(l,this._utils);A!==CEt&&(this._applyValidation(A,a,o),t[a]=A)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:n,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of n){let l=this._utils.schemas[o],A=l.preprocess(e[o],this._utils);this._applyValidation(A,o,l);let f=({from:b,to:E})=>{r.push(typeof E=="string"?{[E]:b}:{[E.key]:E.value})},I=({value:b,redirectTo:E})=>{let N=_Ti(l.deprecated(b,this._utils),A,!0);if(N!==!1)if(N===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,E,this._utils));else for(let{value:B}of N){let F={key:o,value:B};if(!this._hasDeprecationWarned(F)){let Q=typeof E=="string"?{key:E,value:B}:E;this._utils.logger.warn(this._deprecatedHandler(F,Q,this._utils))}}};$Dr(l.forward(A,this._utils),A).forEach(f);let C=bTi(l.redirect(A,this._utils),A);if(C.redirect.forEach(f),"remain"in C){let b=C.remain;t[o]=o in t?l.overlap(t[o],b,this._utils):b,I({value:b})}for(let{from:b,to:E}of C.redirect)I({value:b,redirectTo:E})}for(let o of a){let l=e[o];this._applyUnknownHandler(o,l,t,(A,f)=>{r.push({[A]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,eRi,this._utils)}_partitionOptionKeys(e){let[t,r]=lcc(Object.keys(e).filter(n=>!this._identifyMissing(n,e)),n=>n in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let n=CTi(r.validate(e,this._utils),e);if(n!==!0)throw this._invalidHandler(t,n.value,this._utils)}_applyUnknownHandler(e,t,r,n){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let l=a[o];o in this._utils.schemas?n(o,l):r[o]=l}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==CEt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:n}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of n){let o=t.override[a];this._applyUnknownHandler(a,o,e,(l,A)=>{let f=this._utils.schemas[l];this._applyValidation(A,l,f),e[l]=A})}}}}},ODr;function bcc(e,t,{logger:r=!1,isCLI:n=!1,passThrough:a=!1,FlagSchema:o,descriptor:l}={}){if(n){if(!o)throw new Error("'FlagSchema' option is required.");if(!l)throw new Error("'descriptor' option is required.")}else l=WNe;let A=a?Array.isArray(a)?(E,N)=>a.includes(E)?{[E]:N}:void 0:(E,N)=>({[E]:N}):(E,N,B)=>{let{_:F,...Q}=B.schemas;return nRi(E,N,{...B,schemas:Q})},f=Ecc(t,{isCLI:n,FlagSchema:o}),I=new ycc(f,{logger:r,unknown:A,descriptor:l}),C=r!==!1;C&&ODr&&(I._hasDeprecationWarned=ODr);let b=I.normalize(e);return C&&(ODr=I._hasDeprecationWarned),b}function Ecc(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(ncc.create({name:"_"}));for(let a of e)n.push(Scc(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&n.push(rcc.create({name:a.alias,sourceName:a.name}));return n}function Scc(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:a}=e,o={name:a},l,A={};switch(e.type){case"int":l=Icc,t&&(o.preprocess=Number);break;case"string":l=ETi;break;case"choice":l=pcc,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":l=scc;break;case"flag":l=n,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":l=ETi;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,I,C)=>e.exception(f)||I.validate(f,C):o.validate=(f,I,C)=>f===void 0||I.validate(f,C),e.redirect&&(A.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(A.deprecated=!0),t&&!e.array){let f=o.preprocess||(I=>I);o.preprocess=(I,C,b)=>C.preprocess(f(Array.isArray(I)?aD(!1,I,-1):I),b)}return e.array?icc.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...A,valueSchema:l.create(o)}):l.create({...o,...A})}var vcc=bcc,Bcc=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},sRi=Bcc;function oRi(e,t){if(!t)throw new Error("parserName is required.");let r=sRi(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new qTi(n)}function wcc(e,t){if(!t)throw new Error("astFormat is required.");let r=sRi(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new qTi(n)}function aRi({plugins:e,parser:t}){let r=oRi(e,t);return cRi(r,t)}function cRi(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function Tcc(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var STi={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function Rcc(e,t={}){var r;let n={...e};if(!n.parser)if(n.filepath){if(n.parser=Kac(n,{physicalFile:n.filepath}),!n.parser)throw new uTi(`No parser could be inferred for file "${n.filepath}".`)}else throw new uTi("No parser and no file path given, couldn't infer a parser.");let a=$Ti({plugins:e.plugins,showDeprecated:!0}).options,o={...STi,...Object.fromEntries(a.filter(E=>E.default!==void 0).map(E=>[E.name,E.default]))},l=oRi(n.plugins,n.parser),A=await cRi(l,n.parser);n.astFormat=A.astFormat,n.locEnd=A.locEnd,n.locStart=A.locStart;let f=(r=l.printers)!=null&&r[A.astFormat]?l:wcc(n.plugins,A.astFormat),I=await Tcc(f,A.astFormat);n.printer=I;let C=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,E])=>E!==void 0)):{},b={...o,...C};for(let[E,N]of Object.entries(b))(n[E]===null||n[E]===void 0)&&(n[E]=N);return n.parser==="json"&&(n.trailingComma="none"),vcc(n,a,{passThrough:Object.keys(STi),...t})}var YNe=Rcc,Ncc=EEt(Eoc(),1);async function Dcc(e,t){let r=await aRi(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let a;try{a=await r.parse(n,t,t)}catch(o){kcc(o,e)}return{text:n,ast:a}}function kcc(e,t){let{loc:r}=e;if(r){let n=(0,Ncc.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` -`+n,e.codeFrame=n,e}throw e}var PJe=Dcc;async function xcc(e,t,r,n,a){let{embeddedLanguageFormatting:o,printer:{embed:l,hasPrettierIgnore:A=()=>!1,getVisitorKeys:f}}=r;if(!l||o!=="auto")return;if(l.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let I=NEt(l.getVisitorKeys??f),C=[];N();let b=e.stack;for(let{print:B,node:F,pathStack:Q}of C)try{e.stack=Q;let X=await B(E,t,e,r);X&&a.set(F,X)}catch(X){if(globalThis.PRETTIER_DEBUG)throw X}e.stack=b;function E(B,F){return Gcc(B,F,r,n)}function N(){let{node:B}=e;if(B===null||typeof B!="object"||A(e))return;for(let Q of I(B))Array.isArray(B[Q])?e.each(N,Q):e.call(N,Q);let F=l(e,r);if(F){if(typeof F=="function"){C.push({print:F,node:B,pathStack:[...e.stack]});return}a.set(B,F)}}}async function Gcc(e,t,r,n){let a=await YNe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await PJe(e,a),l=await n(o,a);return ZTi(l)}function Fcc(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:l}=t,{node:A}=e,f=a(A),I=o(A);for(let C of n)a(C)>=f&&o(C)<=I&&l.add(C);return r.slice(f,I)}var Zcc=Fcc;async function DEt(e,t){({ast:e}=await lRi(e,t));let r=new Map,n=new Cac(e),a=Mac(t),o=new Map;await xcc(n,A,t,DEt,o);let l=await vTi(n,t,A,void 0,o);if(Wac(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[tCe,l];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[l,tCe];return l;function A(I,C){return I===void 0||I===n?f(C):Array.isArray(I)?n.call(()=>f(C),...I):n.call(()=>f(C),I)}function f(I){a(n);let C=n.node;if(C==null)return"";let b=C&&typeof C=="object"&&I===void 0;if(b&&r.has(C))return r.get(C);let E=vTi(n,t,A,I,o);return b&&r.set(C,E),E}}function vTi(e,t,r,n,a){var o;let{node:l}=e,{printer:A}=t,f;switch((o=A.hasPrettierIgnore)!=null&&o.call(A,e)?f=Zcc(e,t):a.has(l)?f=a.get(l):f=A.print(e,t,r,n),l){case t.cursorNode:f=hEt(f,I=>[tCe,I,tCe]);break;case t.nodeBeforeCursor:f=hEt(f,I=>[I,tCe]);break;case t.nodeAfterCursor:f=hEt(f,I=>[tCe,I]);break}return A.printComment&&(!A.willPrintOwnComments||!A.willPrintOwnComments(e,t))&&(f=Pac(e,f,t)),f}async function lRi(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,kac(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function Lcc(e,t){let{cursorOffset:r,locStart:n,locEnd:a}=t,o=NEt(t.printer.getVisitorKeys),l=N=>n(N)<=r&&a(N)>=r,A=e,f=[e];for(let N of bac(e,{getVisitorKeys:o,filter:l}))f.push(N),A=N;if(Eac(A,{getVisitorKeys:o}))return{cursorNode:A};let I,C,b=-1,E=Number.POSITIVE_INFINITY;for(;f.length>0&&(I===void 0||C===void 0);){A=f.pop();let N=I!==void 0,B=C!==void 0;for(let F of REt(A,{getVisitorKeys:o})){if(!N){let Q=a(F);Q<=r&&Q>b&&(I=F,b=Q)}if(!B){let Q=n(F);Q>=r&&Ql(E,f)).filter(Boolean);let I={},C=new Set(a(A));for(let E in A)!Object.prototype.hasOwnProperty.call(A,E)||o.has(E)||(C.has(E)?I[E]=l(A[E],A):I[E]=A[E]);let b=r(A,I,f);if(b!==null)return b??I}}var Wcc=Pcc,Occ=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return n}return-1}},Mcc=Occ,Hcc=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function Ycc(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(a=>uRi.has(a.type)&&n.has(a))}function BTi(e){let t=Mcc(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function Qcc(e,t,{locStart:r,locEnd:n}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let l=r(e.node);for(let f of BTi(t.parentNodes))if(r(f)>=l)o=f;else break;let A=n(t.node);for(let f of BTi(e.parentNodes)){if(n(f)<=A)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function ekr(e,t,r,n,a=[],o){let{locStart:l,locEnd:A}=r,f=l(e),I=A(e);if(!(t>I||tn);let A=e.slice(n,a).search(/\S/u),f=A===-1;if(!f)for(n+=A;a>n&&!/\S/u.test(e[a-1]);--a);let I=ekr(r,n,t,(N,B)=>wTi(t,N,B),[],"rangeStart"),C=f?I:ekr(r,a,t,N=>wTi(t,N),[],"rangeEnd");if(!I||!C)return{rangeStart:0,rangeEnd:0};let b,E;if(Hcc(t)){let N=Ycc(I,C);b=N,E=N}else({startNode:b,endNode:E}=Qcc(I,C,t));return{rangeStart:Math.min(o(b),o(E)),rangeEnd:Math.max(l(b),l(E))}}var gRi="\uFEFF",TTi=Symbol("cursor");async function ARi(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:a}=await PJe(e,t);t.cursorOffset>=0&&(t={...t,...Vcc(n,t)});let o=await DEt(n,t,r);r>0&&(o=HTi([rCe,o],r,t.tabWidth));let l=TEt(o,t);if(r>0){let f=l.formatted.trim();l.cursorNodeStart!==void 0&&(l.cursorNodeStart-=l.formatted.indexOf(f),l.cursorNodeStart<0&&(l.cursorNodeStart=0,l.cursorNodeText=l.cursorNodeText.trimStart()),l.cursorNodeStart+l.cursorNodeText.length>f.length&&(l.cursorNodeText=l.cursorNodeText.trimEnd())),l.formatted=f+skr(t.endOfLine)}let A=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,I,C,b;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&l.cursorNodeText)if(C=l.cursorNodeStart,b=l.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),I=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let X=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;I=a.slice(f,X)}else f=0,I=a,C=0,b=l.formatted;let E=t.cursorOffset-f;if(I===b)return{formatted:l.formatted,cursorOffset:C+E,comments:A};let N=I.split("");N.splice(E,0,TTi);let B=b.split(""),F=Doc(N,B),Q=C;for(let X of F)if(X.removed){if(X.value.includes(TTi))break}else Q+=X.count;return{formatted:l.formatted,cursorOffset:Q,comments:A}}return{formatted:l.formatted,cursorOffset:-1,comments:A}}async function Kcc(e,t){let{ast:r,text:n}=await PJe(e,t),{rangeStart:a,rangeEnd:o}=Ucc(n,t,r),l=n.slice(a,o),A=Math.min(a,n.lastIndexOf(` -`,a)+1),f=n.slice(A,a).match(/^\s*/u)[0],I=gkr(f,t.tabWidth),C=await ARi(l,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},I),b=C.formatted.trimEnd(),{cursorOffset:E}=t;E>o?E+=b.length-l.length:C.cursorOffset>=0&&(E=C.cursorOffset+a);let N=n.slice(0,a)+b+n.slice(o);if(t.endOfLine!=="lf"){let B=skr(t.endOfLine);E>=0&&B===`\r -`&&(E+=GTi(N.slice(0,E),` -`)),N=SEt(!1,N,` -`,B)}return{formatted:N,cursorOffset:E,comments:C.comments}}function MDr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function RTi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a}=t;return r=MDr(e,r,-1),n=MDr(e,n,0),a=MDr(e,a,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:a}}function dRi(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o}=RTi(e,t),l=e.charAt(0)===gRi;if(l&&(e=e.slice(1),r--,n--,a--),o==="auto"&&(o=koc(e)),e.includes("\r")){let A=f=>GTi(e.slice(0,Math.max(f,0)),`\r -`);r-=A(r),n-=A(n),a-=A(a),e=xoc(e)}return{hasBOM:l,text:e,options:RTi(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o})}}async function NTi(e,t){let r=await aRi(t);return!r.hasPragma||r.hasPragma(e)}async function pRi(e,t){let{hasBOM:r,text:n,options:a}=dRi(e,await YNe(t));if(a.rangeStart>=a.rangeEnd&&n!==""||a.requirePragma&&!await NTi(n,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function jcc(e,t,r){let{text:n,options:a}=dRi(e,await YNe(t)),o=await PJe(n,a);return r&&(r.preprocessForPrint&&(o.ast=await lRi(o.ast,a)),r.massage&&(o.ast=Wcc(o.ast,a))),o}async function zcc(e,t){t=await YNe(t);let r=await DEt(e,t);return TEt(r,t)}async function qcc(e,t){let r=cac(e),{formatted:n}=await pRi(r,{...t,parser:"__js_expression"});return n}async function $cc(e,t){t=await YNe(t);let{ast:r}=await PJe(e,t);return DEt(r,t)}async function elc(e,t){return TEt(e,await YNe(t))}var fRi={};rkr(fRi,{builders:()=>tlc,printer:()=>rlc,utils:()=>nlc});var tlc={join:MTi,line:WTi,softline:oac,hardline:rCe,literalline:OTi,group:VTi,conditionalGroup:eac,fill:tac,lineSuffix:JDr,lineSuffixBoundary:iac,cursor:tCe,breakParent:wEt,ifBreak:rac,trim:sac,indent:bEt,indentIfBreak:nac,align:HNe,addAlignmentToDoc:HTi,markAsRoot:qoc,dedentToRoot:zoc,dedent:$oc,hardlineWithoutBreakParent:lkr,literallineWithoutBreakParent:PTi,label:aac,concat:e=>e},rlc={printDocToString:TEt},nlc={willBreak:Ooc,traverseDoc:okr,findInDoc:akr,mapDoc:BEt,removeLines:Yoc,stripTrailingHardline:ZTi,replaceEndOfLine:Joc,canBreak:Koc},ilc="3.5.3",IRi={};rkr(IRi,{addDanglingComment:()=>$me,addLeadingComment:()=>VNe,addTrailingComment:()=>PNe,getAlignmentSize:()=>gkr,getIndentSize:()=>ulc,getMaxContinuousCount:()=>dlc,getNextNonSpaceNonCommentCharacter:()=>flc,getNextNonSpaceNonCommentCharacterIndex:()=>vlc,getPreferredQuote:()=>hlc,getStringWidth:()=>ukr,hasNewline:()=>Rce,hasNewlineInRange:()=>Clc,hasSpaces:()=>ylc,isNextLineEmpty:()=>Rlc,isNextLineEmptyAfterIndex:()=>mkr,isPreviousLineEmpty:()=>wlc,makeString:()=>Elc,skip:()=>VJe,skipEverythingButNewLine:()=>JTi,skipInlineComment:()=>fkr,skipNewline:()=>nCe,skipSpaces:()=>Nce,skipToLineEnd:()=>XTi,skipTrailingComment:()=>Ikr,skipWhitespace:()=>Sac});function slc(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(n,a.length/t.length),0)}var dlc=Alc;function plc(e,t){let r=hkr(e,t);return r===!1?"":e.charAt(r)}var flc=plc,IEt="'",DTi='"';function Ilc(e,t){let r=t===!0||t===IEt?IEt:DTi,n=r===IEt?DTi:IEt,a=0,o=0;for(let l of e)l===r?a++:l===n&&o++;return a>o?n:r}var hlc=Ilc;function mlc(e,t,r){for(let n=t;nl===n?l:A===t?"\\"+A:A||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(l)?l:"\\"+l));return t+a+t}var Elc=blc;function Slc(e,t,r){return hkr(e,r(t))}function vlc(e,t){return arguments.length===2||typeof t=="number"?hkr(e,t):Slc(...arguments)}function Blc(e,t,r){return pkr(e,r(t))}function wlc(e,t){return arguments.length===2||typeof t=="number"?pkr(e,t):Blc(...arguments)}function Tlc(e,t,r){return mkr(e,r(t))}function Rlc(e,t){return arguments.length===2||typeof t=="number"?mkr(e,t):Tlc(...arguments)}function eCe(e,t=1){return async(...r)=>{let n=r[t]??{},a=n.plugins??[];return r[t]={...n,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var hRi=eCe(pRi);async function kEt(e,t){let{formatted:r}=await hRi(e,{...t,cursorOffset:-1});return r}async function Nlc(e,t){return await kEt(e,t)===e}var Dlc=eCe($Ti,0),klc={parse:eCe(jcc),formatAST:eCe(zcc),formatDoc:eCe(qcc),printToDoc:eCe($cc),printDocToString:eCe(elc)};var VNi=Nt(lHe(),1);var YJe=Nt(CRi(),1);var xlc=/^(?:( )+|\t+)/,WJe="space",yRi="tab";function _Ri(e,t){let r=new Map,n=0,a,o;for(let l of e.split(/\n/g)){if(!l)continue;let A,f,I,C,b,E=l.match(xlc);if(E===null)n=0,a="";else{if(A=E[0].length,f=E[1]?WJe:yRi,t&&f===WJe&&A===1)continue;f!==a&&(n=0),a=f,I=1,C=0;let N=A-n;if(n=A,N===0)I=0,C=1;else{let B=N>0?N:-N;o=Glc(f,B)}b=r.get(o),b=b===void 0?[1,0]:[b[0]+I,b[1]+C],r.set(o,b)}}return r}function Glc(e,t){return(e===WJe?"s":"t")+String(t)}function Flc(e){let r=e[0]==="s"?WJe:yRi,n=Number(e.slice(1));return{type:r,amount:n}}function Zlc(e){let t,r=0,n=0;for(let[a,[o,l]]of e)(o>r||o===r&&l>n)&&(r=o,n=l,t=a);return t}function Llc(e,t){return(e===WJe?" ":" ").repeat(t)}function Ckr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=_Ri(e,!0);t.size===0&&(t=_Ri(e,!1));let r=Zlc(t),n,a=0,o="";return r!==void 0&&({type:n,amount:a}=Flc(r),o=Llc(n,a)),{amount:a,type:n,indent:o}}function Vlc(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r -`).length,n=t.length-r;return r>n?`\r -`:` -`}function bRi(e){return typeof e=="string"&&Vlc(e)||` -`}function _kr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Ekr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),HJe=e=>(t,...r)=>e.reduce((n,a)=>a(n,...r),t),MJe=e=>t=>Array.isArray(t)?e(t):t,vRi=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,OJe=vRi(e=>[...new Set(e)]),Plc=vRi(e=>[...e].sort()),xEt=HJe([OJe,Plc]),QJe=e=>(t,...r)=>_kr(t)?e(t,...r):t,oH=(e,t)=>{let r=QJe(n=>(t&&(n=Object.fromEntries(Object.entries(n).map(([a,o])=>[a,r(o)]))),(0,YJe.default)(n,e)));return r},Vm=oH(),ykr=oH(["type","url"]),bkr=oH(["name","email","url"]),Wlc=oH(["lib","bin","man","doc","example","test"]),Wee=(e,t)=>(r,...n)=>Ekr(r,e)?{...r,[e]:t(r[e],...n)}:r,Olc=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],BRi=QJe(HJe([oH(Olc),Wee("env",Vm),Wee("globals",Vm),Wee("overrides",MJe(e=>e.map(BRi))),Wee("parserOptions",Vm),Wee("rules",oH((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),Wee("settings",Vm)])),Mlc=oH(["description","url","href"]),Hlc=QJe(HJe([e=>(0,YJe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),Wee("overrides",MJe(e=>e.map(HJe([Vm,Wee("options",Vm)]))))])),Ylc=oH(["node","npm","yarn"]),Qlc=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),Xlc=(e,t)=>Ekr(t,"devDependencies")&&Ekr(t.devDependencies,e),ERi=QJe((e,t)=>{let r=Object.keys(e),n=new Set,a=r.map(l=>{let A=l.replace(/^(?:pre|post)/,"");return Qlc.has(A)||r.includes(A)?(n.add(A),A):l});Xlc("npm-run-all",t)||a.sort();let o=a.flatMap(l=>n.has(l)?[`pre${l}`,l,`post${l}`]:[l]);return(0,YJe.default)(e,o)}),wRi=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:OJe},{key:"keywords",over:OJe},{key:"homepage"},{key:"bugs",over:oH(["url","email"])},{key:"repository",over:ykr},{key:"funding",over:ykr},{key:"license",over:ykr},{key:"qna"},{key:"author",over:bkr},{key:"maintainers",over:MJe(e=>e.map(bkr))},{key:"contributors",over:MJe(e=>e.map(bkr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:Vm},{key:"man"},{key:"directories",over:Wlc},{key:"files",over:OJe},{key:"workspaces"},{key:"binary",over:oH(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:ERi},{key:"betterScripts",over:ERi},{key:"contributes",over:Vm},{key:"activationEvents",over:OJe},{key:"pre-commit"},{key:"commitlint",over:Vm},{key:"lint-staged"},{key:"config",over:Vm},{key:"nodemonConfig",over:Vm},{key:"browserify",over:Vm},{key:"babel",over:Vm},{key:"browserslist"},{key:"xo",over:Vm},{key:"prettier",over:Hlc},{key:"eslintConfig",over:BRi},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:Vm},{key:"npmPackageJsonLintConfig",over:Vm},{key:"npmpackagejsonlint",over:Vm},{key:"release",over:Vm},{key:"remarkConfig",over:Vm},{key:"stylelint"},{key:"ava",over:Vm},{key:"jest",over:Vm},{key:"jest-junit",over:Vm},{key:"jest-stare",over:Vm},{key:"mocha",over:Vm},{key:"nyc",over:Vm},{key:"c8",over:Vm},{key:"tap",over:Vm},{key:"resolutions",over:Vm},{key:"dependencies",over:Vm},{key:"devDependencies",over:Vm},{key:"dependenciesMeta",over:oH(void 0,!0)},{key:"peerDependencies",over:Vm},{key:"peerDependenciesMeta",over:oH(void 0,!0)},{key:"optionalDependencies",over:Vm},{key:"bundledDependencies",over:xEt},{key:"bundleDependencies",over:xEt},{key:"extensionPack",over:xEt},{key:"extensionDependencies",over:xEt},{key:"flat"},{key:"packageManager"},{key:"engines",over:Vm},{key:"engineStrict",over:Vm},{key:"volta",over:Ylc},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:Vm},{key:"publishConfig",over:Vm},{key:"icon"},{key:"badges",over:MJe(e=>e.map(Mlc))},{key:"galleryBanner",over:Vm},{key:"preview"},{key:"markdown"}],SRi=wRi.map(({key:e})=>e),Jlc=HJe(wRi.map(({key:e,over:t})=>t?Wee(e,t):void 0).filter(Boolean));function Ulc(e,t){if(typeof e=="string"){let{indent:r}=Ckr(e),n=e.slice(-1)===` -`?` -`:"",a=bRi(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+n;return a===`\r -`&&(o=o.replace(/\n/g,a)),o}return t(e)}var Klc=e=>e[0]==="_",jlc=(e,t)=>e.reduce((r,n)=>(r[t(n)?0:1].push(n),r),[[],[]]);function zlc(e,t={}){return Ulc(e,QJe(r=>{let n=t.sortOrder||SRi;if(Array.isArray(n)){let a=Object.keys(r),[o,l]=jlc(a,Klc);n=[...n,...SRi,...l.sort(),...o.sort()]}return Jlc((0,YJe.default)(r,n),r)}))}var TRi=zlc;var GEt=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(n=>n.type==="ImportDeclaration").map(n=>{let a={start:n.range[0],end:n.range[1],importStart:n.range[0],importEnd:n.range[1],type:n.importKind==="type"?"import-type":"import",moduleName:n.source.value,defaultMember:n.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local.name,namespaceMember:n.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local.name,namedMembers:n.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:n.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===n.loc.start.line&&f.loc.end.line===n.loc.end.line);o&&(a.end=o.range[1]);let l=f=>{let I=this.program.comments.find(b=>b.loc.start.line===f);return I?[...l(I.loc.start.line-1),I]:[]},A=l(n.loc.start.line-1);return A.length>0&&(a.start=A.at(0).range.at(0)),a})}formatImport(t,r,n=` -`){let a=r.importStart||r.start,o=r.importEnd||r.end,l=t.substring(a,o),{namedMembers:A}=r;if(A.length===0)return t.substring(r.start,r.end);let f=l.replace(/\{[\s\S]*\}/g,I=>{let C=I.includes(n),b;C&&([b]=I.split(n)[1].match(/^\s*/));let E=I.charAt(1)===" ",N=I.replace("}","").trim().endsWith(",");return this.formatNamedMembers(A,C,E,N,b,n)});return t.substring(r.start,a)+f+t.substring(o,o+(r.end-o))}formatNamedMembers(t,r,n,a,o="",l=` -`){if(r)return"{"+l+t.map(({name:I,alias:C},b)=>{let E=b===t.length-1,N=!a&&E?"":",";return I===C?`${o}${I}${N}`+l:`${o}${I} as ${C}${N}`+l}).join("")+"}";let A=n?" ":"",f=a?",":"";return"{"+A+t.map(({name:I,alias:C})=>I===C?`${I}`:`${I} as ${C}`).join(", ")+f+A+"}"}};var SNi=Nt(CNi(),1);import{readFileSync as _Ni}from"node:fs";import{join as yNi}from"node:path";var Ngc=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(_Ni(yNi(process.cwd(),"/package.json"),"utf-8"));t&&t.length>0&&lQn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(n=>{try{let{name:a}=JSON.parse(_Ni(yNi(n,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},Dgc=Ngc(),cD=e=>Dgc.some(t=>e.moduleName.startsWith(t)),bNi=e=>e.moduleName.startsWith("node:"),c4=e=>e.type==="import-type";var ENi=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:n,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:l,isScopedModule:A,moduleName:f,naturally:I,member:C,not:b,startsWithLowerCase:E,startsWithUpperCase:N})=>{let B=[{match:e(n,o,b(cD)),sort:f(I)},{match:e(n,o,cD),sort:f(I)},{match:e(n,l),sort:f(I)}],F=[{match:e(c4,o,a),sort:f(I)},{match:e(c4,o,r,C(N)),sort:f(I)},{match:e(c4,o,r,C(E)),sort:f(I)},{match:e(c4,o,t,C(N)),sort:f(I)},{match:e(c4,o,t,C(E)),sort:f(I)}],Q=[{match:e(c4,l,a),sort:f(I)},{match:e(c4,l,r,C(N)),sort:f(I)},{match:e(c4,l,r,C(E)),sort:f(I)},{match:e(c4,l,t,C(N)),sort:f(I)},{match:e(c4,l,t,C(E)),sort:f(I)}],X=[{match:bNi,sort:f(I)}],ae=[{match:e(A,b(cD),a),sort:f(I)},{match:e(A,b(cD),r,C(N)),sort:f(I)},{match:e(A,b(cD),r,C(E)),sort:f(I)},{match:e(A,b(cD),t,C(N)),sort:f(I)},{match:e(A,b(cD),t,C(E)),sort:f(I)},{match:e(o,b(cD),b(A),a),sort:f(I)},{match:e(o,b(A),b(cD),r,C(N)),sort:f(I)},{match:e(o,b(A),b(cD),r,C(E)),sort:f(I)},{match:e(o,b(A),b(cD),t,C(N)),sort:f(I)},{match:e(o,b(A),b(cD),t,C(E)),sort:f(I)}],ne=[{match:e(cD,a),sort:f(I)},{match:e(cD,r,C(N)),sort:f(I)},{match:e(cD,r,C(E)),sort:f(I)},{match:e(cD,t,C(N)),sort:f(I)},{match:e(cD,t,C(E)),sort:f(I)}],ce=[{match:e(l,a),sort:f(I)},{match:e(l,r,C(N)),sort:f(I)},{match:e(l,r,C(E)),sort:f(I)},{match:e(l,t,C(N)),sort:f(I)},{match:e(l,t,C(E)),sort:f(I)}];return[...B,{separator:!0},...F,{separator:!0},...Q,{separator:!0},...X,{separator:!0},...ae,{separator:!0},...ne,{separator:!0},...ce,{separator:!0}]};var vNi=(e,{plugins:t})=>{let r=Sce.typescript.parse(e,{plugins:t}),n=new GEt(r),{code:a}=(0,SNi.sortImports)(e,n,ENi);return a};var kgc=(e,t)=>vNi(e,t),xgc=async(e,{plugins:t})=>{let r=Sce.typescript.parse(e,{plugins:t}),n=r.body.length;return[...r.body].reverse().forEach((o,l)=>{if(o.type==="ImportDeclaration"&&o.specifiers.length>1){let A=n-l-1;r.body.splice(A,1),o.specifiers.forEach((f,I)=>{r.body.splice(A+I,0,{...o,specifiers:o.specifiers.filter((C,b)=>I===b)})})}}),r},VEt={typescript:{...Sce.typescript,astFormat:"typescript-custom",preprocess:kgc,parse:xgc},"json-stringify":{...xRe["json-stringify"],preprocess(e,t){return xRe["json-stringify"].preprocess&&(e=xRe["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?TRi(e):e}}};var wNi=zRe.estree,BNi=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Ggc=(e,t,r)=>{let n=e.getNode(),a=wNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},Fgc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>BNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=BNi(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Zgc=(e,t,r)=>{let n=e.getNode(),a=NNi.print(e,t,r);return n?.type==="ImportDeclaration"&&(a=a.map(o=>{if(Array.isArray(o)&&o[0]===" from"&&n.alignOffset>0){let l=Array.apply(0,Array(n.alignOffset)).fill(" ").join("");o[0]=`${l} from`}return o})),a},Lgc=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>RNi(a)),n=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=RNi(a);a.alignOffset=o({"typescript-custom":{...NNi,preprocess:Lgc,print:Zgc}});var kNi=async()=>({printers:await DNi(),parsers:VEt});var Vgc={printers:TNi,parsers:VEt},xNi=Vgc;var Pgc={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5",plugins:[vme,xJe,q4e,P4e,GRe,Xme,xNi]},GNi=Pgc;import{join as Wgc}from"node:path";var FNi=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist",".yarn",".vscode",".next","**/**/dist/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],Ogc=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],Mgc=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],ZNi=e=>[...Ogc.map(t=>Wgc(e,t)),...Mgc];var PEt=class e extends Hgc{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let n=await kNi(),a=VNi.default.default().add(FNi).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>Qgc(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let l=await LNi(o,"utf8"),A=await kEt(l,{...GNi,filepath:o,plugins:[vme,xJe,q4e,P4e,GRe,Xme,n]});A!==l&&A?(await Ygc(o,A,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await b$(ZNi(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await LNi(Xgc(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:n=[]}=JSON.parse(r);return n}};var Dkr=Nt(Pc(),1),eUe=class extends PNi.BaseCommand{static paths=[["format"]];files=Su.Rest({required:0});async execute(){let t=await WNi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ONi.Project.find(t,this.context.cwd),n=await PEt.initialize(this.context.cwd),{clear:a}=(0,MNi.render)((0,Dkr.jsx)(J0i,{cwd:r.cwd,formatter:n}));try{return await n.format(this.files),0}catch(o){return o instanceof Error?xE((0,Dkr.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.log(l)}):console.error(o),1}finally{a()}}};var HNi={commands:[eUe]};var Jkr={};sI(Jkr,{ImagePackCommand:()=>nUe,default:()=>ODi});var ZDi=Nt(el(),1),LDi=Nt(Sn(),1),VDi=Nt(Sn(),1),PDi=Nt(Sn(),1),Xkr=Nt(Sn(),1),WDi=Nt(ro(),1);$c();import{readFileSync as Idc}from"node:fs";import{join as hdc}from"node:path";var xkr=Nt(iTe(),1),YNi=Nt(Sn(),1),Jgc=()=>{let e=xkr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var Ugc=()=>{let e=xkr.context.payload;return String(e.pull_request?.number)},Kgc=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return Jgc();let{stdout:e}=await YNi.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` -`);return t.replace(/"/g,"")},jgc=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Ugc():"local",QNi=async e=>{let t=await Kgc(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await jgc()}-${r}-${Date.now()}`:t};var NDi=Nt(bDi(),1),Qkr=Nt(ro(),1),DDi=Nt(ro(),1);import{readFileSync as ldc}from"node:fs";var kce=Nt(ro(),1),xce=Nt(ro(),1);import{arch as vAc}from"node:os";var BAc="0.2",EDi=".git",wAc="yarn.lock",TAc=".yarnrc.yml",RAc="linux",NAc="glibc",DAc=".pnp.cjs",kAc=".pnp.data.json",Mkr=".yarn/unplugged",xAc=/["'`]([^"'`]*)["'`]/g,GAc=/\/node_modules\/(.+)$/,FAc=/(?:^|\n)pnpUnpluggedFolder:\s*([^#\n]+)/,ZAc=/^virtual:[^#]+#(.+)$/,LAc={386:"ia32",amd64:"x64",mips64le:"mips64el",ppc64le:"ppc64"},VAc={windows:"win32"},Hkr=e=>{let t=xce.ppath.normalize(e.replace(/^['"]|['"]$/g,""));return t.endsWith("/")?t.slice(0,-1):t},PAc=e=>{let r=e.match(FAc)?.[1]?.trim();return r?Hkr(r):void 0},WAc=async e=>{let t=new Set([Hkr(Mkr)]),r=xce.ppath.join(e,TAc);if(await kce.xfs.existsPromise(r)){let n=PAc(await kce.xfs.readFilePromise(r,"utf8"));n&&t.add(n)}return Array.from(t).sort()},vDi=(e,t)=>{let r=e.replaceAll("\\","/"),n=t.find(l=>r.includes(`${l}/`));if(!n)return;let a=r.indexOf(`${n}/`),o=xce.ppath.normalize(r.slice(a));return o.endsWith("/")?o.slice(0,-1):o},OAc=(e,t=[Hkr(Mkr)])=>{let r=new Set;for(let n of e.matchAll(xAc)){let a=vDi(n[1],t);a&&r.add(a)}return Array.from(r).sort()},MAc=e=>{let t=e.match(/const RAW_RUNTIME_STATE\s*=\s*'([\s\S]*?)';/);if(t)return JSON.parse(t[1].replace(/\\\r?\n/g,""))},HAc=e=>{try{return JSON.parse(e)}catch{return MAc(e)}},YAc=e=>{let t=HAc(e);if(!t||typeof t!="object")return[];let{packageRegistryData:r}=t;return Array.isArray(r)?r:[]},QAc=e=>e.match(ZAc)?.[1]??e,XAc=(e,t)=>{let r=new Map;for(let[n,a]of YAc(e))if(!(!n||!Array.isArray(a)))for(let[o,l]of a){let A=l.packageLocation?vDi(l.packageLocation,t):void 0;A&&o&&r.set(A,{reference:A,locator:{packageName:n,packageReference:QAc(o)}})}for(let n of OAc(e,t))r.has(n)||r.set(n,{reference:n});return Array.from(r.values())},JAc=async e=>{let t=new Map,r=await WAc(e),n=await Promise.all([DAc,kAc].map(async a=>{let o=xce.ppath.join(e,a);if(!await kce.xfs.existsPromise(o))return[];let l=await kce.xfs.readFilePromise(o,"utf8");return XAc(l,r)}));for(let a of n)for(let o of a){let l=t.get(o.reference);t.set(o.reference,l?.locator?l:o)}return Array.from(t.values()).sort((a,o)=>a.reference.localeCompare(o.reference))},SDi=e=>{if(e)return LAc[e]??e},UAc=e=>VAc[e]??e,KAc=e=>{let[t,r]=e?.split("/").slice(0,2)??[],n=UAc(t||RAc);return{os:n,cpu:SDi(r)??SDi(vAc()),libc:n==="linux"?NAc:void 0}},jAc=e=>e.match(/[()&|!=]|[A-Za-z0-9_.-]+/g)??[],Okr=class{constructor(t,r){this.tokens=t;this.targetPlatform=r}parse(){let t=this.parseOr(0);return!!(t&&t.next===this.tokens.length&&t.target)}isTargetCondition(t){let r=this.tokens[t],n=this.tokens[t+1],a=this.tokens[t+2];if(!r||n!=="="||!a)return;let o=t+3;switch(r){case"os":return{next:o,target:this.targetPlatform.os===a};case"cpu":return{next:o,target:this.targetPlatform.cpu===a};case"libc":return{next:o,target:this.targetPlatform.libc===a};default:return{next:o,target:!1}}}parsePrimary(t){if(this.tokens[t]==="("){let r=this.parseOr(t+1);return!r||this.tokens[r.next]!==")"?void 0:{next:r.next+1,target:r.target}}return this.isTargetCondition(t)}parseUnary(t){if(this.tokens[t]==="!"){let r=this.parseUnary(t+1);return r?{next:r.next,target:!r.target}:void 0}return this.parsePrimary(t)}parseAnd(t){let r=this.parseUnary(t);if(r){for(;this.tokens[r.next]==="&";){let n=this.parseUnary(r.next+1);if(!n)return;r={next:n.next,target:r.target&&n.target}}return r}}parseOr(t){let r=this.parseAnd(t);if(r){for(;this.tokens[r.next]==="|";){let n=this.parseAnd(r.next+1);if(!n)return;r={next:n.next,target:r.target||n.target}}return r}}},zAc=(e,t)=>{let r=jAc(e);return new Okr(r,t).parse()},qAc=e=>{let t=e.startsWith("@")?e.indexOf("@",1):e.indexOf("@");if(t!==-1)return e.slice(0,t)},$Ac=(e,t)=>{if(e.startsWith(`${t}@`))return e.slice(t.length+1)},BDi=(e,t)=>`${e}\0${t}`,edc=(e,t)=>{let r=new Map,n=new Set;for(let a of e.split(/\n{2,}/)){let o=a.match(/\n {2}resolution: "([^"]+)"/)?.[1],l=a.match(/\n {2}conditions: (.+)/)?.[1],A=o?qAc(o):void 0,f=A?$Ac(o??"",A):void 0;if(!A||!f)continue;if(!l){n.add(A);continue}let I={packageName:A,packageReference:f,target:zAc(l,t)};r.set(BDi(A,f),I)}return{conditionalLocators:r,unconditionalPackageNames:n}},tdc=async(e,t)=>{let r=xce.ppath.join(e,wAc);return await kce.xfs.existsPromise(r)?edc(await kce.xfs.readFilePromise(r,"utf8"),t):{conditionalLocators:new Map,unconditionalPackageNames:new Set}},rdc=e=>{let t=e.match(GAc);if(t)return t[1]},ndc=(e,t)=>{if(e.locator){let a=t.conditionalLocators.get(BDi(e.locator.packageName,e.locator.packageReference));return a?!a.target:!1}let r=rdc(e.reference);if(!r||t.unconditionalPackageNames.has(r))return!1;let n=Array.from(t.conditionalLocators.values()).filter(a=>a.packageName===r);return n.length>0&&n.every(a=>!a.target)},idc=(e,t)=>{let r=xce.ppath.resolve(e,t);return r===e||r.startsWith(`${e}/`)},sdc=async(e,t,r)=>(await Promise.all(t.map(async a=>({exists:idc(e,a.reference)&&await kce.xfs.existsPromise(xce.ppath.join(e,a.reference)),referenceEntry:a})))).filter(({exists:a,referenceEntry:o})=>!a&&!ndc(o,r)).map(({referenceEntry:a})=>a.reference),odc=async(e,t)=>{let r=await JAc(e);if(r.length===0)return[EDi,Mkr];let n=KAc(t),a=await tdc(e,n),o=await sdc(e,r,a);if(o.length>0)throw new Error(["PnP manifest references unplugged packages that are missing from the image pack context:",...o.map(l=>`- ${l}`)].join(` -`));return[EDi]},wDi=async({repo:e,builder:t,envs:r,cwd:n,platform:a})=>({_:{"schema-version":BAc,id:e,name:e,version:"0.0.1"},io:{buildpacks:{exclude:await odc(n,a),builder:t,build:{env:r}}}});var Ykr=Nt(Sn(),1);import{platform as adc}from"node:os";import{arch as cdc}from"node:os";var TDi="0.40.4",JNe=async(e,t,r)=>{let{code:n}=await Ykr.execUtils.pipevp(e,t,{...r,end:Ykr.execUtils.EndStrategy.ErrorCode});if(n!==0)throw new Error(`Command "${[e,...t].join(" ")}" failed with exit code ${n}`)},RDi=async({context:e,cwd:t})=>{let r;try{await JNe("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let n=`https://github.com/buildpacks/pack/releases/download/v${TDi}/pack-v${TDi}-`,a=adc(),o=cdc();switch(a){case"linux":n+="linux.tgz";break;case"darwin":o==="arm64"?n+="macos-arm64.tgz":n+="macos.tgz";break;default:break}let l=`${t??e.cwd}/pack.tgz`;await JNe("curl",["-sSL","-o",l,n],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),await JNe("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",l],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr}),console.log("Buildpack CLI (pack) has been installed.")}};var kDi=async({workspace:e,registry:t,publish:r,tagPolicy:n,builder:a,buildpack:o,platform:l,require:A,cwd:f},I)=>{let C=f??I.cwd,b=e.replace("@","").replace(/\//g,"-"),E=`${t}${b}`,N=await QNi(n),B=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];A&&A.length>0&&B.push({name:"BP_REQUIRE",value:A.join(",")});let F=await wDi({repo:b,builder:a,envs:B,cwd:C,platform:l}),Q=DDi.ppath.join(await Qkr.xfs.mktempPromise(),"project.toml");await Qkr.xfs.writeFilePromise(Q,(0,NDi.stringify)(F)),console.debug("project.toml",ldc(Q,"utf8"));let X=["build","--trust-builder",`${E}:${N}`,"--descriptor",Q,"--buildpack",o,"--tag",`${E}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&X.push("--publish"),l&&X.push("--platform",l),console.debug("Packing with args:",X),await RDi({cwd:f,context:I}),await JNe("pack",["config","experimental","true"],{cwd:C,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),await JNe("pack",X,{cwd:C,env:process.env,stdin:I.stdin,stdout:I.stdout,stderr:I.stderr}),{images:[`${E}:${N}`,`${E}:latest`],tags:[N,"latest"],workspace:e}};import{arch as udc}from"node:os";var gdc="24",Adc="0.1.3",ddc="atlantislab/builder-base",pdc="ghcr.io/atls/buildpack-yarn-workspace-start",fdc="linux",xDi=()=>`${fdc}/${udc()}`,GDi=({buildpack:e,buildpackImage:t,buildpackVersion:r})=>e||`${t??pdc}:${r??Adc}`,FDi=({builder:e,builderImage:t,builderTag:r})=>e||`${t??ddc}:${r??gdc}`;var nUe=class extends ZDi.BaseCommand{static paths=[["image","pack"]];registry=Su.String("-r,--registry","");tagPolicy=Su.String("-t,--tag-policy","revision");publish=Su.Boolean("-p,--publish",!1);platform=Su.String("--platform");async execute(){let t=await LDi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await VDi.Project.find(t,this.context.cwd),n=r.getWorkspaceByFilePath(this.context.cwd);return(await PDi.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(n)){o.reportInfo(null,`Workspace ${n.manifest.name?Xkr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} not allowed for package.`);return}let l=await WDi.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${n.manifest.name?Xkr.structUtils.prettyIdent(t,n.manifest.name):n.relativeCwd} to ${l}`);let A=Idc(hdc(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(A),{require:I}=f;await ERe.pack(t,r,n,o,l,{platform:this.platform??xDi()}),await kDi({workspace:n.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:GDi(f),builder:FDi(f),platform:this.platform,require:I,cwd:l},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:n}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build","astro build"].some(l=>a?.includes(l))&&!!n}};var ODi={commands:[nUe]};var rxr={};sI(rxr,{LibraryBuildCommand:()=>sUe,default:()=>_ki});var dki=Nt(el(),1),pki=Nt(Sn(),1),fki=Nt(Sn(),1),txr=Nt(ro(),1),Iki=Nt(Sn(),1),hki=Nt(ro(),1);$c();var mki=Nt(Al(),1);import{rm as ydc}from"node:fs/promises";import{join as Aki}from"node:path";var $kr=Nt(Al(),1),gCe=Nt(Al(),1),exr=Nt(Ec(),1),zDi=Nt(jDi(),1);import{isAbsolute as mdc}from"node:path";import{relative as Cdc}from"node:path";var Hk=Nt(Pc(),1),KEt=({messageText:e,start:t,file:r,code:n,cwd:a=process.cwd()})=>{let o=(0,exr.useMemo)(()=>r?mdc(r.fileName)?Cdc(a,r.fileName):r.fileName:null,[r]),l=(0,exr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,Hk.jsxs)(gCe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,Hk.jsxs)(gCe.Box,{flexDirection:"row",children:[(0,Hk.jsx)(gCe.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,Hk.jsx)(A8,{line:l?l.line+1:1,column:l?.character,children:o})}),(0,Hk.jsx)(gCe.Box,{paddingX:2,children:(0,Hk.jsxs)($kr.Text,{bold:!0,color:"red",children:["TS",n]})})]}),(0,Hk.jsx)(J9,{offset:2}),!!r?.text&&!!l&&(0,Hk.jsxs)(Hk.Fragment,{children:[(0,Hk.jsx)(gCe.Box,{children:(0,Hk.jsx)(d8,{line:l.line+1,column:l.character,children:r.text})}),(0,Hk.jsx)(J9,{offset:2})]}),(0,Hk.jsx)(gCe.Box,{marginTop:1,paddingX:2,children:(0,Hk.jsx)($kr.Text,{color:"white",children:(0,zDi.flattenDiagnosticMessageText)(e,` -`)})})]})};var iUe=Nt(Al(),1),oki=Nt(Ec(),1),aki=Nt(Ec(),1);var qDi=Nt(Ec(),1),$Di=Nt(Ec(),1),eki=Nt(Ec(),1),rki=Nt(Pc(),1),tki=({typescript:e})=>{let[t,r]=(0,$Di.useState)(10),n=(0,eki.useRef)();return(0,qDi.useEffect)(()=>{n.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),n.current&&clearInterval(n.current)},600)};return e.on("end",a),()=>{e.off("end",a),n.current&&clearInterval(n.current)}},[e,n,r]),(0,rki.jsx)(JM,{value:t/100*100})};var KNe=Nt(Al(),1),Oee=Nt(Al(),1),nki=Nt(Ec(),1),iki=Nt(Ec(),1);var Yk=Nt(Pc(),1),ski=({typescript:e})=>{let[t,r]=(0,iki.useState)(0);return(0,nki.useEffect)(()=>{let n=a=>{r(a.files.length)};return e.on("start",n),()=>{e.off("start",n)}},[e,r]),t===0?(0,Yk.jsxs)(KNe.Box,{flexDirection:"row",children:[(0,Yk.jsx)(RG,{color:"cyan",children:"TypeScript:"}),(0,Yk.jsx)(Oee.Text,{children:" "}),(0,Yk.jsx)(Oee.Text,{color:"white",children:"Loading files..."})]}):(0,Yk.jsxs)(KNe.Box,{flexDirection:"row",width:"100%",children:[(0,Yk.jsxs)(KNe.Box,{flexGrow:1,children:[(0,Yk.jsx)(RG,{color:"cyan",children:"TypeScript:"}),(0,Yk.jsx)(Oee.Text,{children:" "}),(0,Yk.jsx)(Oee.Text,{color:"white",children:"Processing..."})]}),(0,Yk.jsx)(KNe.Box,{flexDirection:"row",children:(0,Yk.jsxs)(KNe.Box,{children:[(0,Yk.jsx)(Oee.Text,{color:"green",children:kI.tick}),(0,Yk.jsx)(Oee.Text,{children:" "}),(0,Yk.jsxs)(Oee.Text,{color:"white",children:[t," Files"]}),(0,Yk.jsx)(Oee.Text,{children:" "})]})})]})};var Fce=Nt(Pc(),1),jEt=({typescript:e})=>{let[t,r]=(0,oki.useState)(!1);return(0,aki.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,Fce.jsx)(iUe.Box,{position:"relative",height:7,children:(0,Fce.jsxs)(iUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Fce.jsx)(iUe.Box,{children:(0,Fce.jsx)(ski,{typescript:e})}),(0,Fce.jsx)(iUe.Box,{marginTop:1,marginBottom:1,children:(0,Fce.jsx)(tki,{typescript:e})})]})})};import _dc from"node:events";import{readFileSync as lki}from"node:fs";import{createRequire as uki}from"node:module";import{join as gki}from"node:path";var bj={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react-jsx",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var cki=e=>t=>{let r=n=>{let{moduleSpecifier:a}=n;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(n)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(n,n.modifiers,n.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause);if(e.isExportDeclaration(n))return t.factory.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,n.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),n.assertClause)}return e.visitEachChild(n,r,t)};return n=>e.visitNode(n,r)};var jNe=class e extends _dc{constructor(r,n){super();this.ts=r;this.cwd=n}static async initialize(r){let a=uki(import.meta.url).resolve("@atls/code-runtime/package.json"),l=uki(a)("typescript");return new e(l,r)}async check(r=[]){return this.run(r)}async build(r=[],n={}){return this.run(r,n,!1)}async run(r=[],n={},a=!0){let o=this.getProjectIgnorePatterns(),l=this.getLibCheckOption(),A={...bj,compilerOptions:{...bj.compilerOptions,...n,skipLibCheck:l},include:r,exclude:[...bj.exclude,...o]},{fileNames:f,options:I,errors:C}=this.ts.parseJsonConfigFileContent(A,this.ts.sys,this.cwd);if(C.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:C}),C;this.emit("start",{files:f});let b=this.ts.createProgram(f,{...I,noEmit:a}),E=Q=>X=>(this.emit("build:start",{file:X.fileName}),X),N=Q=>X=>(this.emit("build:end",{file:X.fileName}),X),B=b.emit(void 0,void 0,void 0,void 0,{before:[E],after:[N,cki(this.ts)]}),F=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(b).concat(B.diagnostics));return this.emit("end",{diagnostics:F}),F}filterDiagnostics(r){return r.filter(n=>n.code!==2209).filter(n=>!(n.code===1479&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===2834&&n.file?.fileName.includes("/.yarn/"))).filter(n=>!(n.code===7016&&n.file?.fileName.includes("/lexical/"))).filter(n=>!(n.code===6133&&n.file?.fileName.includes("/@yarnpkg/libui/"))).filter(n=>!([2315,2411,2304,7006,7016].includes(n.code)&&n.file?.fileName.includes("/@strapi/"))).filter(n=>!([2688,2307,2503].includes(n.code)&&n.file?.fileName.includes("/pkg-tests-core/"))).filter(n=>!([2307].includes(n.code)&&n.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=lki(gki(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:n=[]}=JSON.parse(r);return n}getLibCheckOption(){let r=lki(gki(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:n=!1}=JSON.parse(r);return n}};var zEt=Nt(Pc(),1),sUe=class extends dki.BaseCommand{static paths=[["library","build"]];target=Su.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(txr.Filename.pnpCjs)&&t.includes(txr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await pki.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await fki.Project.find(t,this.context.cwd),n=[];this.target&&(n.push("-t"),n.push(this.target));let a=await hki.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Iki.execUtils.pipevp(o,["library","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){await this.cleanTarget();let t=await jNe.initialize(this.context.cwd),{clear:r}=(0,mki.render)((0,zEt.jsx)(jEt,{typescript:t}));try{let n=await t.build([Aki(this.context.cwd,"./src")],{outDir:Aki(this.context.cwd,this.target),declaration:!0});return n.forEach(a=>{xE((0,zEt.jsx)(KEt,{...a})).split(` -`).forEach(l=>{console.log(l)})}),n.length===0?0:1}catch(n){return xE((0,zEt.jsx)(Fk,{error:n})).split(` -`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await ydc(this.target,{recursive:!0,force:!0})}catch{}}};var bdc=(e,t)=>{t&&(t.exports&&(e.exports=t.exports),t.main&&(e.main=t.main),t.types&&(e.types=t.types),t.typings&&(e.typings=t.typings))},Cki=(e,t)=>{let r=e.manifest.private;bdc(t,r?t.raijin?.pack:t.publishConfig),delete t.raijin};var _ki={hooks:{beforeWorkspacePacking:Cki},commands:[sUe]};var lxr={};sI(lxr,{LintCommand:()=>cUe,default:()=>Vki});var Gki=Nt(el(),1),oxr=Nt(Sn(),1),axr=Nt(Sn(),1),cxr=Nt(ro(),1),Fki=Nt(Sn(),1),Zki=Nt(ro(),1);$c();var Lki=Nt(Al(),1);var aUe=Nt(Al(),1),wki=Nt(Ec(),1),Tki=Nt(Ec(),1);var yki=Nt(Ec(),1),nxr=Nt(Ec(),1),Eki=Nt(Pc(),1),bki=({linter:e})=>{let[t,r]=(0,nxr.useState)(0),[n,a]=(0,nxr.useState)(0);return(0,yki.useEffect)(()=>{let o=({files:f})=>{r(f.length)},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("lint:end",l),e.on("end",A),()=>{e.off("start",o),e.off("lint:end",l),e.off("end",A)}},[e,t,r,a]),(0,Eki.jsx)(JM,{value:t>0?n/t*100:0})};import{relative as Ski}from"node:path";var zNe=Nt(Al(),1),Qk=Nt(Al(),1),vki=Nt(Ec(),1),oUe=Nt(Ec(),1);var jb=Nt(Pc(),1),Edc=({state:e})=>e==="warning"?(0,jb.jsx)(Qk.Text,{color:"yellow",children:kI.warning}):e==="error"?(0,jb.jsx)(Qk.Text,{color:"red",children:kI.cross}):e==="success"?(0,jb.jsx)(Qk.Text,{color:"green",children:kI.tick}):(0,jb.jsx)(Qk.Text,{color:"white",children:kI.circleDotted}),Sdc=({state:e,children:t})=>e==="in-progress"?(0,jb.jsx)(Qk.Text,{color:"gray",children:t}):(0,jb.jsx)(Qk.Text,{color:"white",children:t}),Bki=({cwd:e,linter:t})=>{let[r,n]=(0,oUe.useState)(void 0),[a,o]=(0,oUe.useState)(0),[l,A]=(0,oUe.useState)(0),[f,I]=(0,oUe.useState)(0);return(0,vki.useEffect)(()=>{let C=N=>{o(N.files.length)},b=N=>{n({state:"in-progress",file:Ski(e,N.file)})},E=({result:N})=>{let B="success";N.warningCount>0&&(I(F=>F+N.warningCount),B="warning"),N.errorCount>0&&(A(F=>F+N.errorCount),B="error"),n({state:B,file:Ski(e,N.filePath)})};return t.on("start",C),t.on("lint:start",b),t.on("lint:end",E),()=>{t.off("start",C),t.off("lint:start",b),t.off("lint:end",E)}},[t,n,o,A,I]),r?(0,jb.jsxs)(zNe.Box,{flexDirection:"row",width:"100%",children:[(0,jb.jsxs)(zNe.Box,{flexGrow:1,children:[(0,jb.jsx)(RG,{color:"cyan",children:"Lint:"}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsx)(Sdc,{state:r.state,children:r.file})]}),(0,jb.jsx)(zNe.Box,{flexDirection:"row",children:(0,jb.jsxs)(zNe.Box,{children:[(0,jb.jsx)(Edc,{state:r.state}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"yellow",children:[f," Warnings"]}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"red",children:[l," Errors"]}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsxs)(Qk.Text,{color:"white",children:[a," Files"]}),(0,jb.jsx)(Qk.Text,{children:" "})]})})]}):(0,jb.jsxs)(zNe.Box,{flexDirection:"row",children:[(0,jb.jsx)(RG,{color:"cyan",children:"Lint:"}),(0,jb.jsx)(Qk.Text,{children:" "}),(0,jb.jsx)(Qk.Text,{color:"white",children:"Loading files..."})]})};var Zce=Nt(Pc(),1),Rki=({cwd:e,linter:t})=>{let[r,n]=(0,wki.useState)(!1);return(0,Tki.useEffect)(()=>{let a=()=>{setTimeout(()=>{n(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[n]),r?null:(0,Zce.jsx)(aUe.Box,{position:"relative",height:7,children:(0,Zce.jsxs)(aUe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Zce.jsx)(aUe.Box,{children:(0,Zce.jsx)(Bki,{cwd:e,linter:t})}),(0,Zce.jsx)(aUe.Box,{marginTop:1,marginBottom:1,children:(0,Zce.jsx)(bki,{linter:t})})]})})};var ixr=Nt(Al(),1),Lce=Nt(Al(),1);var lD=Nt(Pc(),1),Nki=({filePath:e,message:t,source:r})=>(0,lD.jsxs)(Lce.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,lD.jsxs)(Lce.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,lD.jsx)(Lce.Box,{flexDirection:"row",flexGrow:1,children:(0,lD.jsx)(A8,{line:t.line,column:t.column,children:e})}),(0,lD.jsx)(Lce.Box,{children:(0,lD.jsxs)(ixr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,lD.jsx)(Lce.Box,{children:(0,lD.jsx)(J9,{offset:2})}),!!r&&(0,lD.jsxs)(lD.Fragment,{children:[(0,lD.jsx)(Lce.Box,{children:(0,lD.jsx)(d8,{line:t.line,column:t.column,children:r})}),(0,lD.jsx)(J9,{offset:2})]}),(0,lD.jsx)(Lce.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,lD.jsxs)(ixr.Text,{color:"white",children:[" ",t.message]})})]});var Dki=Nt(Al(),1);import{isAbsolute as vdc}from"node:path";import{relative as Bdc}from"node:path";var kki=Nt(Ec(),1);var sxr=Nt(Pc(),1),xki=({filePath:e,source:t,messages:r,cwd:n=process.cwd()})=>{let a=(0,kki.useMemo)(()=>vdc(e)?Bdc(n,e):e,[e]);return r.length===0?null:(0,sxr.jsx)(Dki.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,sxr.jsx)(Nki,{filePath:a,message:o,source:t},OW()))})};var qEt=Nt(Pc(),1),cUe=class extends Gki.BaseCommand{static paths=[["lint"]];fix=Su.Boolean("--fix");files=Su.Rest({required:0});cache=Su.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(cxr.Filename.pnpCjs)&&t.includes(cxr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await oxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await axr.Project.find(t,this.context.cwd),n=await Zki.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await Fki.execUtils.pipevp(o,["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await oxr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await axr.Project.find(t,this.context.cwd),n=await mBe.initialize(r.cwd,this.context.cwd),{clear:a}=(0,Lki.render)((0,qEt.jsx)(Rki,{cwd:r.cwd,linter:n}));n.on("lint:end",({result:o})=>{o.messages.length>0&&xE((0,qEt.jsx)(xki,{...o})).split(` -`).forEach(A=>{console.log(A)})});try{return(await n.lint(this.files,{fix:this.fix,cache:this.cache})).find(l=>l.messages.length>0)?1:0}catch(o){return o instanceof Error?xE((0,qEt.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var Vki={commands:[cUe]};var HGr={};sI(HGr,{default:()=>CZi});var pxi=Nt(el(),1),fxi=Nt(el(),1),Ixi=Nt(Sn(),1),hxi=Nt(Sn(),1),mxi=Nt(Sn(),1),bxr=Nt(Sn(),1);import gUe from"node:assert/strict";import{execSync as dpc}from"node:child_process";function Vce(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function $Et(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((a,o)=>$Et.bind(null,e,o,a,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,n),r)():r(n))}function Pki(e,t,r,n){let a=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(o,l)=>Promise.resolve().then(a.bind(null,l)).then(o.bind(null,l))),t==="after"&&(n=(o,l)=>{let A;return Promise.resolve().then(o.bind(null,l)).then(f=>(A=f,a(A,l))).then(()=>A)}),t==="error"&&(n=(o,l)=>Promise.resolve().then(o.bind(null,l)).catch(A=>a(A,l))),e.registry[r].push({hook:n,orig:a})}function Wki(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(a=>a.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var Oki=Function.bind,Mki=Oki.bind(Oki);function Hki(e,t,r){let n=Mki(Wki,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=Mki(Pki,null).apply(null,o)})}function wdc(){let e=Symbol("Singular"),t={registry:{}},r=$Et.bind(null,t,e);return Hki(r,t,e),r}function Tdc(){let e={registry:{}},t=$Et.bind(null,e);return Hki(t,e),t}var Yki={Singular:wdc,Collection:Tdc};var Rdc="0.0.0-development",Ndc=`octokit-endpoint.js/${Rdc} ${Vce()}`,Ddc={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":Ndc},mediaType:{format:""}};function kdc(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function xdc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function Jki(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{xdc(t[n])?n in e?r[n]=Jki(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Qki(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function gxr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=kdc(r.headers),Qki(r),Qki(r.headers);let n=Jki(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(a=>!n.mediaType.previews.includes(a)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),n}function Gdc(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var Fdc=/\{[^}]+\}/g;function Zdc(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function Ldc(e){let t=e.match(Fdc);return t?t.map(Zdc).reduce((r,n)=>r.concat(n),[]):[]}function Xki(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function Uki(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function $Ne(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function lUe(e,t,r){return t=e==="+"||e==="#"?Uki(t):$Ne(t),r?$Ne(r)+"="+t:t}function qNe(e){return e!=null}function uxr(e){return e===";"||e==="&"||e==="?"}function Vdc(e,t,r,n){var a=e[r],o=[];if(qNe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),n&&n!=="*"&&(a=a.substring(0,parseInt(n,10))),o.push(lUe(t,a,uxr(t)?r:""));else if(n==="*")Array.isArray(a)?a.filter(qNe).forEach(function(l){o.push(lUe(t,l,uxr(t)?r:""))}):Object.keys(a).forEach(function(l){qNe(a[l])&&o.push(lUe(t,a[l],l))});else{let l=[];Array.isArray(a)?a.filter(qNe).forEach(function(A){l.push(lUe(t,A))}):Object.keys(a).forEach(function(A){qNe(a[A])&&(l.push($Ne(A)),l.push(lUe(t,a[A].toString())))}),uxr(t)?o.push($Ne(r)+"="+l.join(",")):l.length!==0&&o.push(l.join(","))}else t===";"?qNe(a)&&o.push($Ne(r)):a===""&&(t==="&"||t==="?")?o.push($Ne(r)+"="):a===""&&o.push("");return o}function Pdc(e){return{expand:Wdc.bind(null,e)}}function Wdc(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,a,o){if(a){let A="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(A=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(I){var C=/([^:\*]*)(?::(\d+)|(\*))?/.exec(I);f.push(Vdc(t,A,C[1],C[2]||C[3]))}),A&&A!=="+"){var l=",";return A==="?"?l="&":A!=="#"&&(l=A),(f.length!==0?A:"")+f.join(l)}else return f.join(",")}else return Uki(o)}),e==="/"?e:e.replace(/\/$/,"")}function Kki(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a,o=Xki(e,["method","baseUrl","url","headers","request","mediaType"]),l=Ldc(r);r=Pdc(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let A=Object.keys(e).filter(C=>l.includes(C)).concat("baseUrl"),f=Xki(o,A);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(C=>C.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let C=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=C.concat(e.mediaType.previews).map(b=>{let E=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${E}`}).join(",")}return["GET","HEAD"].includes(t)?r=Gdc(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!n["content-type"]&&typeof a<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:n},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function Odc(e,t,r){return Kki(gxr(e,t,r))}function jki(e,t){let r=gxr(e,t),n=Odc.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:jki.bind(null,r),merge:gxr.bind(null,r),parse:Kki})}var zki=jki(null,Ddc);var ACe=class extends Error{name;status;request;response;constructor(t,r,n){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let a=Object.assign({},n.request);n.request.headers.authorization&&(a.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var Mdc="0.0.0-development",Hdc={headers:{"user-agent":`octokit-request.js/${Mdc} ${Vce()}`}};function Ydc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function qki(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,a=Ydc(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([b,E])=>[b,String(E)])),l;try{l=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(b){let E="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;E=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?E=b.cause.message:typeof b.cause=="string"&&(E=b.cause))}let N=new ACe(E,500,{request:e});throw N.cause=b,N}let A=l.status,f=l.url,I={};for(let[b,E]of l.headers)I[b]=E;let C={url:f,status:A,headers:I,data:""};if("deprecation"in I){let b=I.link&&I.link.match(/<([^>]+)>; rel="deprecation"/),E=b&&b.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${I.sunset}${E?`. See ${E}`:""}`)}if(A===204||A===205)return C;if(e.method==="HEAD"){if(A<400)return C;throw new ACe(l.statusText,A,{response:C,request:e})}if(A===304)throw C.data=await Axr(l),new ACe("Not modified",A,{response:C,request:e});if(A>=400)throw C.data=await Axr(l),new ACe(Qdc(C.data),A,{response:C,request:e});return C.data=n?await Axr(l):l.body,C}async function Axr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function Qdc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function dxr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let l=r.merge(a,o);if(!l.request||!l.request.hook)return qki(r.parse(l));let A=(f,I)=>qki(r.parse(r.merge(f,I)));return Object.assign(A,{endpoint:r,defaults:dxr.bind(null,r)}),l.request.hook(A,l)},{endpoint:r,defaults:dxr.bind(null,r)})}var uUe=dxr(zki,Hdc);var Xdc="0.0.0-development";function Jdc(e){return`Request failed due to following response errors: -`+e.errors.map(t=>` - ${t.message}`).join(` -`)}var Udc=class extends Error{constructor(e,t,r){super(Jdc(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Kdc=["method","baseUrl","url","headers","request","query","mediaType"],jdc=["query","method","url"],$ki=/\/api\/v3\/?$/;function zdc(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let l in r)if(jdc.includes(l))return Promise.reject(new Error(`[@octokit/graphql] "${l}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(n).reduce((l,A)=>Kdc.includes(A)?(l[A]=n[A],l):(l.variables||(l.variables={}),l.variables[A]=n[A],l),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return $ki.test(o)&&(a.url=o.replace($ki,"/api/graphql")),e(a).then(l=>{if(l.data.errors){let A={};for(let f of Object.keys(l.headers))A[f]=l.headers[f];throw new Udc(a,A,l.data)}return l.data.data})}function pxr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>zdc(r,a,o),{defaults:pxr.bind(null,r),endpoint:r.endpoint})}var bFu=pxr(uUe,{headers:{"user-agent":`octokit-graphql.js/${Xdc} ${Vce()}`},method:"POST",url:"/graphql"});function exi(e){return pxr(e,{method:"POST",url:"/graphql"})}var qdc=/^v1\./,$dc=/^ghs_/,epc=/^ghu_/;async function tpc(e){let t=e.split(/\./).length===3,r=qdc.test(e)||$dc.test(e),n=epc.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function rpc(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function npc(e,t,r,n){let a=t.endpoint.merge(r,n);return a.headers.authorization=rpc(e),t(a)}var e1t=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(tpc.bind(null,t),{hook:npc.bind(null,t)})};var fxr="6.1.2";var txi=()=>{},ipc=console.warn.bind(console),spc=console.error.bind(console),rxi=`octokit-core.js/${fxr} ${Vce()}`,t1t=class{static VERSION=fxr;static defaults(t){return class extends this{constructor(...n){let a=n[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new Yki.Collection,n={baseUrl:uUe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${rxi}`:rxi,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=uUe.defaults(n),this.graphql=exi(this.request).defaults(n),this.log=Object.assign({debug:txi,info:txi,warn:ipc,error:spc},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...l}=t,A=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:l},t.auth));r.wrap("request",A.hook),this.auth=A}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=e1t(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let n=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(l=>{let A=l.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l}).catch(l=>{let A=l.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${l.status} with id ${A} in ${Date.now()-n}ms`),l})})}Ixr.VERSION=nxi;var opc="0.0.0-development";function apc(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],l=e.data[o];return e.data=l,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=a,e}function hxr(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=n.method,l=n.headers,A=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!A)return{done:!0};try{let f=await a({method:o,url:A,headers:l}),I=apc(f);return A=((I.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:I}}catch(f){if(f.status!==409)throw f;return A="",{value:{status:200,headers:{},data:[]}}}}})}}function ixi(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),sxi(e,[],hxr(e,t,r)[Symbol.asyncIterator](),n)}function sxi(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let o=!1;function l(){o=!0}return t=t.concat(n?n(a.value,l):a.value.data),o?t:sxi(e,t,r,n)})}var PFu=Object.assign(ixi,{iterator:hxr});function mxr(e){return{paginate:Object.assign(ixi.bind(null,e),{iterator:hxr.bind(null,e)})}}mxr.VERSION=opc;var Cxr="13.2.6";var cpc={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},oxi=cpc;var dCe=new Map;for(let[e,t]of Object.entries(oxi))for(let[r,n]of Object.entries(t)){let[a,o,l]=n,[A,f]=a.split(/ /),I=Object.assign({method:A,url:f},o);dCe.has(e)||dCe.set(e,new Map),dCe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:I,decorations:l})}var lpc={has({scope:e},t){return dCe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...dCe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let a=dCe.get(t).get(n);if(!a)return;let{endpointDefaults:o,decorations:l}=a;return l?r[n]=upc(e,t,n,o,l):r[n]=e.request.defaults(o),r[n]}};function _xr(e){let t={};for(let r of dCe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},lpc);return t}function upc(e,t,r,n,a){let o=e.request.defaults(n);function l(...A){let f=o.endpoint.merge(...A);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[I,C]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${I}.${C}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let I=o.endpoint.merge(...A);for(let[C,b]of Object.entries(a.renamedParameters))C in I&&(e.log.warn(`"${C}" parameter is deprecated for "octokit.${t}.${r}()". Use "${b}" instead`),b in I||(I[b]=I[C]),delete I[C]);return o(I)}return o(...A)}return Object.assign(l,o)}function gpc(e){return{rest:_xr(e)}}gpc.VERSION=Cxr;function yxr(e){let t=_xr(e);return{...t,rest:t}}yxr.VERSION=Cxr;var axi="21.0.2";var cxi=t1t.plugin(Ixr,yxr,mxr).defaults({userAgent:`octokit-rest.js/${axi}`});var lxi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return e1t(r)};var r1t=class{client;constructor(t){this.client=new cxi({auth:t.token,authStrategy:lxi})}async create(t){let{owner:r,repo:n,tag_name:a,target_commitish:o,name:l,make_latest:A,draft:f,body:I}=t;return(await this.client.repos.createRelease({owner:r,repo:n,tag_name:a,target_commitish:o,draft:f,make_latest:A?"true":"false",name:l,body:I})).status}async generateNotes(t){let{owner:r,repo:n,tag_name:a,target_commitish:o,previous_tag_name:l}=t;return(await this.client.repos.generateReleaseNotes({owner:r,repo:n,tag_name:a,target_commitish:o,previous_tag_name:l})).data.body}};import Apc from"node:assert/strict";var uxi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);Apc.ok(t,"URL does not match pattern");let[,r,n]=t;return{organization:r,repository:n}};var ppc=422,fpc='"resource":"Release"',Ipc='"code":"already_exists"',hpc='"field":"tag_name"',mpc=e=>{let t=e;return t.status===ppc&&typeof t.message=="string"&&t.message.includes(fpc)&&t.message.includes(Ipc)&&t.message.includes(hpc)},Cxi=(e,t)=>`${e}@${t}`,Cpc=(e,t,r,n,a,o)=>{let l=Cxi(e,t);return{body:r,draft:!1,make_latest:!0,name:l,owner:n,repo:a,tag_name:l,target_commitish:o}},_pc=(e,t,r,n,a,o)=>{let l={owner:r,repo:n,tag_name:Cxi(e,t),target_commitish:a};return o&&(l.previous_tag_name=o),l},gxi=e=>e.length>0&&[...e].every(t=>t>="0"&&t<="9"),Axi=e=>{let[t]=e.split("+"),r=t.indexOf("-"),n=r===-1?t:t.slice(0,r),a=r===-1?"":t.slice(r+1),o=n.split(".");if(o.length!==3)return;let l=o.map(f=>Number(f));if(!l.every(f=>Number.isInteger(f)&&f>=0))return;let A=a.length>0?a.split("."):[];if(!A.some(f=>f.length===0))return{major:l[0],minor:l[1],patch:l[2],prerelease:A}},ypc=(e,t)=>{let r=gxi(e),n=gxi(t);return r&&n?Number(e)-Number(t):r!==n?r?-1:1:e.localeCompare(t)},dxi=(e,t)=>{let r=Axi(e),n=Axi(t);if(!r||!n)return e.localeCompare(t);for(let o of["major","minor","patch"]){let l=r[o]-n[o];if(l!==0)return l}if(r.prerelease.length===0&&n.prerelease.length>0)return 1;if(r.prerelease.length>0&&n.prerelease.length===0)return-1;let a=Math.min(r.prerelease.length,n.prerelease.length);for(let o of Array.from({length:a},(l,A)=>A)){let l=r.prerelease[o],A=n.prerelease[o],f=ypc(l,A);if(f!==0)return f}return r.prerelease.length-n.prerelease.length},bpc=(e,t)=>{let r=`${e}@`;if(t.startsWith(r))return t.slice(r.length)},Epc=(e,t,r)=>r.map(n=>({tagName:n,version:bpc(e,n)})).filter(n=>typeof n.version=="string").filter(n=>dxi(n.version,t)<0).sort((n,a)=>dxi(a.version,n.version))[0]?.tagName,Spc=async(e,t)=>{let{stdout:r}=await bxr.execUtils.execvp("git",["tag","--list",`${t}@*`],{cwd:e.cwd,strict:!0});return r.split(` -`).map(n=>n.trim()).filter(Boolean)},vpc=async e=>{let{stdout:t}=await bxr.execUtils.execvp("git",["rev-parse","HEAD"],{cwd:e.cwd,strict:!0});return t.trim()},n1t=class extends pxi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await Ixi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hxi.Project.find(t,this.context.cwd);if(!n)throw new fxi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await mxi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let l=process.env.GITHUB_TOKEN;gUe.ok(l,"GitHub Token is missing");let A="",f=n.manifest.name?.scope;f&&(A+=`@${f}/`);let I=n.manifest.name?.name;gUe.ok(I,"Missing workspace name");let{version:C}=n.manifest;gUe.ok(C,"Missing version"),A+=`${I}`;let b=new r1t({token:l}),E,N;try{({repository:N,organization:E}=uxi(dpc("git remote get-url origin",{encoding:"utf-8"})))}catch{[E,N]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}gUe.ok(E,"Could not get url of the repo"),gUe.ok(N,"Could not get url of the repo");try{let B=await Spc(r,A),F=await vpc(r),Q=Epc(A,C,B),X=_pc(A,C,E,N,F,Q),ae=await b.generateNotes(X),ne=Cpc(A,C,ae,E,N,F);await b.create(ne)}catch(B){if(mpc(B)){o.reportInfo(null,`Release ${A}@${C} already exists; skipping`);return}throw B}})})).exitCode()}};var nZi=Nt(el(),1),iZi=Nt(el(),1),sZi=Nt(Sn(),1),oZi=Nt(Sn(),1),aZi=Nt(Sn(),1),OGr=Nt(ro(),1),MGr=Nt(ro(),1);$c();$c();var uDe=Nt(Sn(),1),XFi=Nt(Sn(),1),ZGr=Nt(ro(),1),GGr=Nt(ro(),1),JFi=Nt(TW(),1),UFi=Nt(RGr(),1);var hmc="feat",mmc=": ",Cmc="(",_mc=")",WFi="!",ymc=".",bmc=["BREAKING CHANGE:","BREAKING CHANGE ","BREAKING-CHANGE:","BREAKING-CHANGE "],Emc=/^(?:[A-Za-z0-9-]+|BREAKING CHANGE)(?:: | #).+/,NGr={patch:0,minor:1,major:2},DGr=e=>Object.hasOwn(NGr,e),HFi=(e,t)=>NGr[t]>NGr[e]?t:e,xGr=(e,t)=>e===void 0?t:DGr(e)?HFi(e,t):e,G1t=(e,t)=>e===void 0?t:DGr(e)?DGr(t)?xGr(e,t):t:e,kGr=e=>e.relativeCwd===ymc,YFi=(e,t)=>e===t.relativeCwd||e.startsWith(`${t.relativeCwd}/`),Smc=(e,t)=>e.relativeCwd===t.relativeCwd,vmc=(e,t)=>Smc(e,t)?!1:kGr(e)?!kGr(t):t.relativeCwd.startsWith(`${e.relativeCwd}/`),OFi=(e,t,r)=>r.some(n=>vmc(t,n)&&YFi(e,n)),Bmc=(e,t,r)=>(kGr(t)||YFi(e,t))&&!OFi(e,t,r),wmc=e=>e.length>0&&[...e].every(t=>t>="a"&&t<="z"),MFi=e=>e.trim().length===0,Tmc=e=>Emc.test(e),Rmc=e=>{let t=e.split(` -`).map(a=>a.replace("\r",""));for(;t.length>0&&MFi(t[t.length-1]);)t.pop();let r=t.length;for(;r>0&&!MFi(t[r-1]);)r-=1;if(r===0||r===t.length)return[];let n=t.slice(r);return Tmc(n[0])?n:[]},Nmc=e=>Rmc(e).some(t=>bmc.some(r=>t.startsWith(r))),Dmc=e=>{let t=e.indexOf(mmc);if(t<1)return;let r=e.slice(0,t),n=r.endsWith(WFi);n&&(r=r.slice(0,-WFi.length));let a=r.indexOf(Cmc);if(a>=0){if(!r.endsWith(_mc))return;r=r.slice(0,a)}if(wmc(r))return{type:r,breaking:n}},kmc=e=>{let[t=""]=e.split(` -`,1),r=Dmc(t.replace("\r",""));if(r)return r.breaking||Nmc(e)?"major":r.type===hmc?"minor":"patch"},QFi=(e,t,r=e)=>{let n=new Map;for(let a of t){let o=kmc(a.message);if(o)for(let l of e){if(!a.files.some(f=>Bmc(f,l,r)))continue;let A=n.get(l.ident);n.set(l.ident,{workspace:l,strategy:A?HFi(A.strategy,o):o})}}return[...n.values()].sort((a,o)=>a.workspace.relativeCwd.localeCompare(o.workspace.relativeCwd))};var xmc="origin/HEAD",Gmc="HEAD",Fmc=`${xmc}..${Gmc}`,Zmc="ENOENT",KFi="decline",FGr=2,Lmc=e=>e==="release"||e==="decline",Vmc=(e,t)=>typeof e=="object"&&e!==null&&"code"in e&&e.code===t,jFi=e=>e.manifest.name?XFi.structUtils.stringifyIdent(e.manifest.name):void 0,zFi=e=>e.relativeCwd!=="."&&!!e.manifest.version&&!!jFi(e),LGr=e=>{let t=jFi(e);if(!(!t||!zFi(e)))return{ident:t,relativeCwd:e.relativeCwd}},Pmc=e=>({relativeCwd:e.relativeCwd}),Wmc=e=>[e.filename,e.previous_filename].filter(t=>!!t),qFi=e=>({message:e.data.commit.message,files:[...new Set((e.data.files??[]).flatMap(Wmc))]}),Omc=async()=>(await Pmt()).map(qFi),Mmc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["rev-list","--reverse",t],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)},Hmc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["show","--format=%B","--no-patch","--max-count=1",t],{cwd:e.cwd,strict:!0});return r},Ymc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["rev-list","--parents","-n","1",t],{cwd:e.cwd,strict:!0}),[,...n]=r.trim().split(" ").filter(Boolean);return n},$Fi=(e,t)=>e.find(r=>!t.has(r))??e[0],Qmc=async(e,t)=>{let{stdout:r}=await uDe.execUtils.execvp("git",["diff-tree","--no-commit-id","--name-only","-r","--root","--no-renames","-z",t],{cwd:e.cwd,strict:!0});return r.split("\0").map(n=>n.trim()).filter(Boolean)},Xmc=async(e,t,r)=>{let n=$Fi(await Ymc(e,t),r);if(!n)return Qmc(e,t);let{stdout:a}=await uDe.execUtils.execvp("git",["diff","--name-only","--no-renames","-z",n,t],{cwd:e.cwd,strict:!0});return[...new Set(a.split("\0").map(o=>o.trim()).filter(Boolean))]},Jmc=async(e,t,r)=>({message:await Hmc(e,t),files:await Xmc(e,t,r)}),Umc=async(e,t)=>{let r=await Mmc(e,t),n=new Set(r);return Promise.all(r.map(async a=>Jmc(e,a,n)))},VGr=async(e,t)=>t===void 0&&process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Omc():Umc(e,t??Fmc),eZi=e=>{let t=(0,JFi.parseSyml)(e),r=new Map;for(let n of t.declined??[])typeof n=="string"&&r.set(n,G1t(r.get(n),KFi));for(let[n,a]of Object.entries(t.releases??{}))typeof a=="string"&&r.set(n,G1t(r.get(n),a));return r},PGr=async e=>{let t=e.get("deferredVersionFolder"),r=new Map,n;try{n=await GGr.xfs.readdirPromise(t)}catch(a){if(Vmc(a,Zmc))return r;throw a}for(let a of n){if(!a.endsWith(".yml"))continue;let o=ZGr.ppath.join(t,a),l=await GGr.xfs.readFilePromise(o,"utf8"),A=eZi(l);for(let[f,I]of A)r.set(f,G1t(r.get(f),I))}return r},Kmc=async e=>{let t=await PGr(e);return new Set([...t.entries()].filter(([,r])=>r===KFi).map(([r])=>r))},jmc=(e,t)=>{let r=ZGr.ppath.resolve(e.cwd,t.workspace.relativeCwd),n=e.workspacesByCwd.get(r);if(!n)throw new Error(`Could not resolve release workspace "${t.workspace.ident}"`);return{ident:t.workspace.ident,relativeCwd:t.workspace.relativeCwd,decision:t.decision,private:n.manifest.private}},zmc=e=>{let t=LGr(e),{version:r}=e.manifest;if(!(!t||!r))return{workspace:t,decision:"decline"}},qmc=(e,t,r)=>{for(let n of e.workspaces){let a=zmc(n);!a||!r.has(a.workspace.ident)||t.has(a.workspace.ident)||t.set(a.workspace.ident,a)}},$mc=async(e,t=new Set)=>{let r=await UFi.versionUtils.resolveVersionFiles(e),n=new Map;for(let[a,o]of r){let l=LGr(a);!l||!o||n.set(l.ident,{workspace:l,decision:"release"})}return qmc(e,n,t),n},eCc=(e,t,r)=>{for(let n of t)if(!r.has(n.workspace.ident))throw new Error(`Release plan requires deferred target version for "${n.workspace.ident}". Run \`yarn release version defer\` before \`yarn release plan create\`.`);return{schemaVersion:FGr,workspaces:[...r.values()].sort((n,a)=>n.workspace.relativeCwd.localeCompare(a.workspace.relativeCwd)).map(n=>jmc(e,n))}},WGr=(e,t)=>{let r=e.workspaces.map(LGr).filter(a=>!!a),n=e.workspaces.map(Pmc);return QFi(r,t,n)},tZi=async(e,t,r)=>{let n=await VGr(e,r),a=WGr(e,n),o=await Kmc(t),l=await $mc(e,o);return eCc(e,a,l)},tCc=e=>{if(typeof e!="object"||e===null)return!1;let t=e;return typeof t.ident=="string"&&typeof t.relativeCwd=="string"&&Lmc(t.decision)&&typeof t.private=="boolean"},rZi=e=>{let t=JSON.parse(e);if(t.schemaVersion!==FGr||!Array.isArray(t.workspaces)||!t.workspaces.every(tCc))throw new Error("Invalid release plan");return{schemaVersion:FGr,workspaces:t.workspaces}};var F1t=class extends nZi.BaseCommand{static paths=[["release","plan","create"]];static usage=_C.Usage({description:"create a Raijin release workspace selection",details:` - The release selection records the fixed workspace set once, - so later publish stages can route the same workspaces without recalculating changed workspaces. - Target package versions remain owned by Yarn deferred versioning and are only validated here. - Run it after yarn release version defer and before yarn version apply --all. - `});output=Su.String("-o,--output");since=Su.String("--since");async execute(){let t=await sZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await oZi.Project.find(t,this.context.cwd);if(!n)throw new iZi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await tZi(r,t,this.since),o=`${JSON.stringify(a,null,2)} -`;if(!this.output)return this.context.stdout.write(o),0;let l=OGr.ppath.resolve(r.cwd,this.output);return(await aZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async f=>{await MGr.xfs.mkdirpPromise(OGr.ppath.dirname(l)),await MGr.xfs.writeFilePromise(l,o),f.reportInfo(null,`Release plan written to ${this.output}`)})).exitCode()}};var cZi=Nt(el(),1),lZi=Nt(el(),1),uZi=Nt(Sn(),1),gZi=Nt(Sn(),1),AZi=Nt(ro(),1),dZi=Nt(ro(),1);$c();$c();var rCc=".raijin/release-plan.json",nCc=(e,t)=>{let r=e.workspaces.filter(a=>a.decision!=="decline");if(r.length===0)return[];let n=["workspaces","foreach"];for(let a of r)n.push("--include",a.ident);return n.push("--all"),t.exclude&&n.push("--exclude",t.exclude),t.verbose&&n.push("--verbose"),t.parallel&&n.push("--parallel"),t.interlaced&&n.push("--interlaced"),t.publicOnly&&n.push("--no-private"),t.topological&&n.push("--topological"),t.topologicalDev&&n.push("--topological-dev"),t.jobs&&n.push("--jobs",t.jobs),n},Z1t=class extends cZi.BaseCommand{static paths=[["release","plan","foreach"]];static usage=_C.Usage({description:"run a command for workspaces listed in a Raijin release plan",details:` - This command routes the fixed release workspace selection through Yarn workspaces foreach. - Empty plans are no-ops, never broad workspace execution. - `});plan=Su.String("--plan",rCc);exclude=Su.String("--exclude","");verbose=Su.Boolean("-v,--verbose",!1);parallel=Su.Boolean("-p,--parallel",!1);interlaced=Su.Boolean("-i,--interlaced",!1);publicOnly=Su.Boolean("--no-private",!1);topological=Su.Boolean("-t,--topological",!1);topologicalDev=Su.Boolean("--topological-dev",!1);jobs=Su.String("-j,--jobs");commandName=Su.String();args=Su.Proxy();async execute(){let t=await uZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await gZi.Project.find(t,this.context.cwd);if(!n)throw new lZi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=AZi.ppath.resolve(r.cwd,this.plan),o=rZi(await dZi.xfs.readFilePromise(a,"utf8")),l=nCc(o,{exclude:this.exclude,verbose:this.verbose,parallel:this.parallel,interlaced:this.interlaced,publicOnly:this.publicOnly,topological:this.topological,topologicalDev:this.topologicalDev,jobs:this.jobs});return l.length===0?0:this.cli.run([...l,this.commandName,...this.args],{cwd:r.cwd})}};var pZi=Nt(el(),1),fZi=Nt(el(),1),IZi=Nt(Sn(),1),hZi=Nt(Sn(),1),mZi=Nt(Sn(),1);$c();var L1t=class extends pZi.BaseCommand{static paths=[["release","version","defer"]];since=Su.String("--since");dryRun=Su.Boolean("--dry-run",!1);async execute(){let t=await IZi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await hZi.Project.find(t,this.context.cwd);if(!n)throw new fZi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await mZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{let l=await VGr(r,this.since),A=WGr(r,l);if(!A.length){o.reportInfo(null,"No released workspaces need deferred version records");return}let f=await PGr(t);for(let{workspace:I,strategy:C}of A){let b=xGr(f.get(I.ident),C);if(o.reportInfo(null,`Deferring ${I.ident} as ${b}`),this.dryRun)continue;if(await this.cli.run(["workspace",I.ident,"version",b,"--deferred"],{cwd:r.cwd})>0)throw new Error(`Failed to defer ${I.ident} as ${b}`)}})).exitCode()}};var CZi={commands:[n1t,F1t,Z1t,L1t]};var HFr={};sI(HFr,{RendererBuildCommand:()=>qUe,RendererDevCommand:()=>aKe,default:()=>j9i});var HZi=Nt(el(),1),YZi=Nt(Sn(),1),QZi=Nt(Sn(),1),XZi=Nt(Sn(),1),zGr=Nt(Sn(),1),qGr=Nt(Sn(),1),JZi=Nt(Sn(),1),Jee=Nt(ro(),1),uH=Nt(ro(),1);import{PassThrough as MZi}from"node:stream";var YGr=Nt(Sn(),1),XGr=Nt(ro(),1),gDe=Nt(ro(),1),bCe=Nt(ro(),1);import{pathToFileURL as RZi}from"node:url";var _Zi="/dist/compiled/conf/index.js",yZi="/dist/compiled/webpack/bundle5.js",bZi="/dist/build/next-config-ts/require-hook.js",EZi="/node_modules/next/",SZi="/dist/server/dev/require-cache.js",vZi="/dist/build/webpack-config.js";var iCc="next-compiled-conf-require-cache-loader.mjs",sCc=new Set(["--experimental-loader","--loader"]),oCc="RAIJIN_NODE_LOADER",JGr="dist",UGr=".next",QGr="package.json",aCc=".pnp.loader.mjs",BZi="public",zUe="src",wZi="npm:",cCc=/(?:^|@)npm:([^#@]+)/,NZi=16,lCc=[[JGr],[zUe,UGr],[zUe,QGr]],uCc=[[JGr,QGr],[zUe,UGr,QGr]],gCc=[[zUe,UGr]],ACc=e=>e?.includes(".pnp.loader.mjs")??!1,TZi=` -const pnpLoader = {} - -const NEXT_PACKAGE_PATH = ${JSON.stringify(EZi)} -const NEXT_COMPILED_CONF_PATH = ${JSON.stringify(_Zi)} -const NEXT_CONFIG_REQUIRE_HOOK_PATH = ${JSON.stringify(bZi)} -const NEXT_REQUIRE_CACHE_PATH = ${JSON.stringify(SZi)} -const NEXT_COMPILED_WEBPACK_PATH = ${JSON.stringify(yZi)} -const NEXT_WEBPACK_CONFIG_PATH = ${JSON.stringify(vZi)} -const REQUIRE_CACHE_NEEDLE = 'delete require.cache[__filename]' -const REQUIRE_CACHE_REPLACEMENT = 'if (require.cache) delete require.cache[__filename]' -const REQUIRE_CACHE_FILE_NEEDLE = 'const mod = require.cache[filePath];' -const REQUIRE_CACHE_FILE_REPLACEMENT = 'const mod = require.cache?.[filePath];' -const REQUIRE_CACHE_VALUES_NEEDLE = 'const modules = Object.values(require.cache);' -const REQUIRE_CACHE_VALUES_REPLACEMENT = 'const modules = Object.values(require.cache || {});' -const REQUIRE_CACHE_DELETE_FILE_NEEDLE = 'delete require.cache[filePath];' -const REQUIRE_CACHE_DELETE_FILE_REPLACEMENT = 'if (require.cache) delete require.cache[filePath];' -const WEBPACK_REQUIRE_CACHE_NEEDLE = 'const $=require.cache[ct];' -const WEBPACK_REQUIRE_CACHE_REPLACEMENT = 'const $=require.cache?.[ct];' -const WEBPACK_NODE_PROTOCOL_PLUGIN_NEEDLE = - '(isClient || isEdgeServer) && new bundler.ProvidePlugin({' -const WEBPACK_NODE_PROTOCOL_PLUGIN_REPLACEMENT = [ - '(isClient || isEdgeServer) && new bundler.NormalModuleReplacementPlugin(/^node:/, function(resource) {', - " resource.request = resource.request.replace(/^node:/, '');", - ' }),', - WEBPACK_NODE_PROTOCOL_PLUGIN_NEEDLE, -].join('\\n ') -const REQUIRE_EXTENSIONS_NEEDLE = "const oldJSHook = requireExtensions['.js'];" -const REQUIRE_EXTENSIONS_REPLACEMENT = "const requireExtensions = require.extensions || _nodemodule.default._extensions;\\nconst oldJSHook = requireExtensions['.js'];" - -const isNextSource = (url, path) => - url.includes(NEXT_PACKAGE_PATH) && url.includes(path) - -const isNextCompiledConf = (url) => isNextSource(url, NEXT_COMPILED_CONF_PATH) - -const isNextConfigRequireHook = (url) => isNextSource(url, NEXT_CONFIG_REQUIRE_HOOK_PATH) - -const isNextRequireCache = (url) => isNextSource(url, NEXT_REQUIRE_CACHE_PATH) - -const isNextCompiledWebpack = (url) => isNextSource(url, NEXT_COMPILED_WEBPACK_PATH) - -const isNextWebpackConfig = (url) => isNextSource(url, NEXT_WEBPACK_CONFIG_PATH) - -const isPatchableNextSource = (url) => - isNextCompiledConf(url) || - isNextConfigRequireHook(url) || - isNextRequireCache(url) || - isNextCompiledWebpack(url) || - isNextWebpackConfig(url) - -const patchNextCompiledConfSource = (source) => - source - .split(REQUIRE_CACHE_NEEDLE) - .join(REQUIRE_CACHE_REPLACEMENT) - -const patchNextConfigRequireHookSource = (source) => - source - .split('require.extensions') - .join('requireExtensions') - .split(REQUIRE_EXTENSIONS_NEEDLE) - .join(REQUIRE_EXTENSIONS_REPLACEMENT) - -const patchNextRequireCacheSource = (source) => - source - .split(REQUIRE_CACHE_FILE_NEEDLE) - .join(REQUIRE_CACHE_FILE_REPLACEMENT) - .split(REQUIRE_CACHE_VALUES_NEEDLE) - .join(REQUIRE_CACHE_VALUES_REPLACEMENT) - .split(REQUIRE_CACHE_DELETE_FILE_NEEDLE) - .join(REQUIRE_CACHE_DELETE_FILE_REPLACEMENT) - -const patchNextCompiledWebpackSource = (source) => - source - .split(WEBPACK_REQUIRE_CACHE_NEEDLE) - .join(WEBPACK_REQUIRE_CACHE_REPLACEMENT) - -const patchNextWebpackConfigSource = (source) => - source - .split(WEBPACK_NODE_PROTOCOL_PLUGIN_NEEDLE) - .join(WEBPACK_NODE_PROTOCOL_PLUGIN_REPLACEMENT) - -const transformNextSource = (url, source) => { - if (isNextCompiledConf(url)) { - return patchNextCompiledConfSource(source) - } - - if (isNextConfigRequireHook(url)) { - return patchNextConfigRequireHookSource(source) - } - - if (isNextRequireCache(url)) { - return patchNextRequireCacheSource(source) - } - - if (isNextCompiledWebpack(url)) { - return patchNextCompiledWebpackSource(source) - } - - if (isNextWebpackConfig(url)) { - return patchNextWebpackConfigSource(source) - } - - return source -} - -export async function resolve(specifier, context, nextResolve) { - if (typeof pnpLoader.resolve === 'function') { - return pnpLoader.resolve(specifier, context, nextResolve) - } - - return nextResolve(specifier, context) -} - -export async function load(url, context, nextLoad) { - const result = typeof pnpLoader.load === 'function' - ? await pnpLoader.load(url, context, nextLoad) - : await nextLoad(url, context) - - if (!isPatchableNextSource(url)) { - return result - } - - if (typeof result.source === 'string') { - return { - ...result, - source: transformNextSource(url, result.source), - } - } - - if (result.source instanceof Uint8Array) { - return { - ...result, - source: transformNextSource(url, Buffer.from(result.source).toString('utf8')), - } - } - - return result -} -`.trimStart(),dCc=e=>e?TZi.replace("const pnpLoader = {}",`import * as pnpLoader from ${JSON.stringify(e)}`):TZi,DZi=e=>{if(!e)return null;let[t]=e.split("."),r=Number.parseInt(t,10);return Number.isNaN(r)?null:r},pCc=(e,t)=>gDe.ppath.join(e,...t),KGr=async(e,t)=>{await Promise.all(t.map(async r=>{let n=pCc(e,r);await bCe.xfs.existsPromise(n)&&await bCe.xfs.removePromise(n)}))},kZi=async e=>{await KGr(e,lCc)},xZi=async e=>{await KGr(e,uCc)},GZi=async e=>{await KGr(e,gCc)},FZi=async e=>{let t=gDe.ppath.join(e,zUe,BZi);await bCe.xfs.existsPromise(t)&&await bCe.xfs.copyPromise(gDe.ppath.join(e,JGr,BZi),t)},ZZi=(e,t)=>({...e,NEXT_TELEMETRY_DISABLED:"1",[oCc]:t}),jGr=e=>{if(!e)return{nodeOptions:e,loader:void 0};let t=e.split(/\s+/).filter(Boolean);for(let r=0;r0?I.join(" "):void 0,loader:A}}return{nodeOptions:e,loader:void 0}},LZi=async(e,t)=>{let r=gDe.ppath.join(e,aCc);return await bCe.xfs.existsPromise(r)?RZi(XGr.npath.fromPortablePath(r)).href:jGr(t).loader},fCc=e=>{let t=DZi(e);if(t!==null&&te.startsWith(wZi)?e.slice(wZi.length):decodeURIComponent(e).match(cCc)?.[1]??e,VZi=e=>{let t=YGr.structUtils.isVirtualLocator(e)?YGr.structUtils.devirtualizeLocator(e):e;return ICc(t.reference)},PZi=(e,t="next")=>{let r=DZi(e),n=["node",t,"build"];return fCc(e),r!==null&&r>=NZi&&n.push("--webpack"),n.push("src"),n},WZi=e=>{if(e!==0)throw new Error(`Renderer build failed with exit code ${e}`)},OZi=async(e,t)=>{let r=gDe.ppath.join(e,iCc);return await bCe.xfs.writeFilePromise(r,dCc(t)),RZi(XGr.npath.fromPortablePath(r)).href};var qUe=class extends HZi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await YZi.Configuration.find(this.context.cwd,this.context.plugins);await kZi(this.context.cwd);let{project:r,workspace:n}=await QZi.Project.find(t,this.context.cwd);if(!n)throw new Error("Renderer build must be executed from a workspace");let a=n.cwd;return await r.restoreInstallState(),(await XZi.StreamReport.start({stdout:this.context.stdout,configuration:t},async l=>{await l.startTimerPromise("Renderer build",async()=>{let A=new MZi,f=new MZi;A.on("data",I=>{I.toString().split(` -`).filter(Boolean).forEach(C=>{l.reportInfo(zGr.MessageName.UNNAMED,C)})}),f.on("data",I=>{I.toString().split(` -`).filter(Boolean).forEach(C=>{l.reportInfo(zGr.MessageName.UNNAMED,C)})}),await Jee.xfs.writeJsonPromise(uH.ppath.join(a,"src/package.json"),{type:"module"});try{let I=await Jee.xfs.mktempPromise(),C={binFolder:I,locator:n.anchoredLocator,project:r},b=await iC(C),{nodeOptions:E}=jGr(b.env.NODE_OPTIONS),N=await LZi(r.cwd,b.env.NODE_OPTIONS),F=(await JZi.scriptUtils.getWorkspaceAccessibleBinaries(n)).get("next");if(!F)throw new Error("Renderer build requires Next.js 16 or newer");let[Q,X]=F,ae=VZi(Q),ne=await OZi(I,N),{executable:ce,env:fe}=await iC({...C,env:{NODE_OPTIONS:E},nodeLoader:ne}),{code:ue}=await qGr.execUtils.pipevp(ce,PZi(ae,X),{end:qGr.execUtils.EndStrategy.ErrorCode,cwd:a,stdin:this.context.stdin,stdout:A,stderr:f,env:ZZi(fe,ne)});WZi(ue)}finally{await Jee.xfs.removePromise(uH.ppath.join(a,"src/package.json"))}}),await l.startTimerPromise("Copy standalone files",async()=>{await Jee.xfs.copyPromise(uH.ppath.join(a,"dist"),uH.ppath.join(a,"src/.next/standalone",a.replace(`${t.projectCwd||""}/`,""),"src"))}),await l.startTimerPromise("Clean workspace manifests",async()=>{await xZi(a)}),await l.startTimerPromise("Copy static files",async()=>{await Jee.xfs.copyPromise(uH.ppath.join(a,"dist/.next/static"),uH.ppath.join(a,"src/.next/static"))}),await l.startTimerPromise("Copy public assets",async()=>{await FZi(a)}),await l.startTimerPromise("Copy edge chunks files",async()=>{await Jee.xfs.existsPromise(uH.ppath.join(a,"src/.next/server/edge-chunks"))&&await Jee.xfs.copyPromise(uH.ppath.join(a,"dist/.next/server/edge-chunks"),uH.ppath.join(a,"src/.next/server/edge-chunks"))}),await l.startTimerPromise("Move server start files",async()=>{await Jee.xfs.movePromise(uH.ppath.join(a,"dist/server.js"),uH.ppath.join(a,"dist/index.js"))}),await l.startTimerPromise("Clean source build artifacts",async()=>{await GZi(a)})})).exitCode()}};var Q9i=Nt(el(),1),X9i=Nt(Sn(),1),J9i=Nt(Sn(),1),t2t=Nt(ro(),1),oKe=Nt(ro(),1);$c();var U9i=Nt(uLi(),1),K9i=Nt(Y9i(),1);var aKe=class extends Q9i.BaseCommand{static paths=[["renderer","dev"]];tunnel=Su.Boolean("--tunnel");https=Su.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,K9i.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",n=>{n.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await X9i.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await J9i.Project.find(t,this.context.cwd),n=["next","dev","src"];if(this.https){if(!await t2t.xfs.existsPromise(oKe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await t2t.xfs.existsPromise(oKe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");n.push("--experimental-https"),n.push("--experimental-https-key",oKe.ppath.join(r.cwd,".config/certs/local/dev.key")),n.push("--experimental-https-cert",oKe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}let a=await t2t.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r});if((0,U9i.default)(o,n,{stdio:"inherit",cwd:this.context.cwd,env:l}),this.tunnel){let A=r.getWorkspaceByCwd(this.context.cwd),{tunnel:f}=A.manifest.raw.tools||{};if(!f?.host)throw new Error("Tunnel host not configured");this.startTunnel(f.host,f.port)}}};var j9i={commands:[qUe,aKe]};var mVr={};sI(mVr,{AbstractServiceCommand:()=>qCe,ServiceBuildCommand:()=>HKe,ServiceDevCommand:()=>YKe,default:()=>aKi});var jUi=Nt(Sn(),1),zUi=Nt(Sn(),1),fVr=Nt(ro(),1),qUi=Nt(Sn(),1),$Ui=Nt(ro(),1),eKi=Nt(Al(),1);var cKe=Nt(Al(),1),iVi=Nt(Ec(),1),sVi=Nt(Ec(),1);var z9i=Nt(Ec(),1),q9i=Nt(Ec(),1),eVi=Nt(Pc(),1),$9i=({service:e})=>{let[t,r]=(0,q9i.useState)(0);return(0,z9i.useEffect)(()=>{let n=({percent:a})=>{r(a)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,eVi.jsx)(JM,{value:t})};var YFr=Nt(Al(),1),QFr=Nt(Al(),1),tVi=Nt(Ec(),1),rVi=Nt(Ec(),1),wCe=Nt(Pc(),1),nVi=({service:e})=>{let[t,r]=(0,rVi.useState)("");return(0,tVi.useEffect)(()=>{let n=a=>{r(a.message)};return e.on("build:progress",n),()=>{e.off("build:progress",n)}},[e,r]),(0,wCe.jsx)(YFr.Box,{flexDirection:"row",width:"100%",children:(0,wCe.jsxs)(YFr.Box,{flexGrow:1,children:[(0,wCe.jsx)(RG,{color:"cyan",children:"Service:"}),(0,wCe.jsx)(QFr.Text,{children:" "}),(0,wCe.jsx)(QFr.Text,{color:"white",children:t})]})})};var Pce=Nt(Pc(),1),r2t=({service:e})=>{let[t,r]=(0,iVi.useState)(!1);return(0,sVi.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",n),()=>{e.off("end",n)}},[r]),t?null:(0,Pce.jsx)(cKe.Box,{position:"relative",height:7,children:(0,Pce.jsxs)(cKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Pce.jsx)(cKe.Box,{children:(0,Pce.jsx)(nVi,{service:e})}),(0,Pce.jsx)(cKe.Box,{marginTop:1,marginBottom:1,children:(0,Pce.jsx)($9i,{service:e})})]})})};var C0c="@atls/code-runtime/runtime-exec-argv",_0c=async()=>await import(C0c);var oVi=async e=>{let{createRuntimeExecArgv:t}=await _0c();return t(e)};import{readFile as Z0c}from"node:fs/promises";import{writeFile as L0c}from"node:fs/promises";import{mkdtemp as V0c}from"node:fs/promises";import{tmpdir as P0c}from"node:os";import{join as uKe}from"node:path";import{readFile as E0c}from"node:fs/promises";import{join as S0c}from"node:path";import{readFile as y0c}from"node:fs/promises";import{join as b0c}from"node:path";var n2t=class{static async find(t){try{let{tools:r={}}=JSON.parse(await y0c(b0c(t,"package.json"),"utf-8"));return r}catch{return{}}}};var i2t=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await E0c(S0c(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await n2t.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};import{existsSync as aVi}from"node:fs";import{readFileSync as v0c}from"node:fs";import{dirname as cVi}from"node:path";import{join as lVi}from"node:path";var s2t=new Map,lKe="/node_modules/",uVi="package.json",gVi="OptionalImportIgnorePlugin",B0c=e=>e?.some(t=>t.optional===!0)??!1,w0c=e=>{let t=e.replaceAll("\\","/"),r=t.lastIndexOf(lKe);if(r===-1)return null;let n=t.slice(r+lKe.length).split("/"),[a]=n;if(!a)return null;let o=a.startsWith("@")?2:1,l=n.slice(0,o);return l.length!==o||l.some(A=>!A)?null:`${t.slice(0,r+lKe.length)}${l.join("/")}`},T0c=e=>{if(e.startsWith(".")||e.startsWith("/"))return null;let[t,r]=e.split("/");return t?t.startsWith("@")?r?`${t}/${r}`:null:t:null},R0c=e=>{let t=e.replaceAll("\\","/"),r=t.lastIndexOf(lKe);if(r===-1)return null;let n=t.slice(r+lKe.length).split("/"),[a,o]=n;return a?a.startsWith("@")?o?`${a}/${o}`:null:a:null},N0c=e=>{let t=w0c(e);if(t){let n=lVi(t,uVi);if(aVi(n))return n}let r=e;for(;r!==cVi(r);){let n=lVi(r,uVi);if(aVi(n))return n;r=cVi(r)}return null},D0c=e=>{if(s2t.has(e))return s2t.get(e)??null;try{let t=JSON.parse(v0c(e,"utf-8"));return s2t.set(e,t),t}catch{return s2t.set(e,null),null}},k0c=(e,t)=>e.peerDependenciesMeta?.[t]?.optional===!0||!!e.optionalDependencies?.[t],x0c=(e,t,r=!1)=>{let n=T0c(e);if(!n||!R0c(t))return!1;let a=N0c(t);if(!a)return!1;let o=D0c(a);return o?r||k0c(o,n):!1},G0c=async(e,t,r)=>new Promise(n=>{e.resolve({},r,t,{},(a,o)=>{n(!a&&!!o)})}),F0c=async(e,t,r,n=!1)=>x0c(e,t,n)?!await G0c(r,e,t):!1,AVi=e=>({apply:t=>{t.hooks.normalModuleFactory.tap(gVi,r=>{r.hooks.beforeResolve.tapAsync(gVi,(n,a)=>{if(n.request.endsWith(".js.map")){a(null,!1);return}let o=r.getResolver("normal",{...n.resolveOptions??{},dependencyType:n.dependencyType});F0c(n.request,n.context,o,B0c(n.dependencies)).then(l=>{a(null,l?!1:void 0)}).catch(l=>{a(l)})})})}});var o2t=class{constructor(t,r,n){this.webpack=t;this.loaders=r;this.cwd=n}async build(t="production",r=[]){let n=uKe(await V0c(uKe(P0c(),"code-service-")),"tsconfig.json");await L0c(n,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),l=["webpack/hot/poll?100",await new i2t(this.cwd).build()],A=this.createPlugins(t,r,a==="module");return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:A,entry:{index:uKe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:uKe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:l,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...bj.compilerOptions,sourceMap:!0},context:this.cwd,configFile:n}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await Z0c(uKe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r,n){let a=[AVi(t),...r];return n&&a.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' -import { fileURLToPath } from 'node:url' -const require = createRequire(import.meta.url) -const __filename = fileURLToPath(import.meta.url) -`,raw:!0})),t==="development"&&a.push(new this.webpack.HotModuleReplacementPlugin),a}};import iZc from"node:events";import{PassThrough as sZc}from"node:stream";var y4=Nt(yDe(),1);var VLr="@namespace";var NJi=Nt(yDe(),1),DJi=Nt(kKe(),1),kJi=Nt(kKe(),1),Bvt=Nt(yDe(),1);var uJi=Nt(S9r(),1),gJi=Nt(kKe(),1),Cvt=class extends gJi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));process.stdout.write(`${a} -`)}r?.({code:uJi.ExportResultCode.SUCCESS})}};var TJi=Nt(S9r(),1),RJi=Nt(kKe(),1);var T9r=Nt(_Ji(),1),R9r=Nt(BJi(),1);import{isMainThread as jFc}from"node:worker_threads";var zFc=T9r.default.default||T9r.default;function Evt(){}function qFc(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var wJi=()=>{let e=new zFc({fd:process.stdout.fd||1});e.on("error",t),jFc&&(R9r.default.register(e,qFc),e.on("close",()=>{R9r.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=Evt,e.end=Evt,e.flushSync=Evt,e.destroy=Evt;return}e.removeListener("error",t),e.emit("error",r)}return e};var $Fc=function(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},eZc=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},Svt,vvt=class extends RJi.ConsoleLogRecordExporter{constructor(){super(),Svt.set(this,void 0),$Fc(this,Svt,wJi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let n of t){let a=JSON.stringify(this._exportInfo(n));eZc(this,Svt,"f").write(`${a} -`)}r?.({code:TJi.ExportResultCode.SUCCESS})}};Svt=new WeakMap;var wvt=class e{static getLoggerProvider(){if(!e.initialized&&Bvt.logs.getLoggerProvider()instanceof NJi.NoopLoggerProvider){let t=new DJi.LoggerProvider;t.addLogRecordProcessor(new kJi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new Cvt:new vvt)),Bvt.logs.setGlobalLoggerProvider(t),e.initialized=!0}return Bvt.logs.getLoggerProvider()}};wvt.initialized=!1;var N9r=Nt(yDe(),1),VMu=Object.keys(N9r.SeverityNumber).reduce((e,t)=>({...e,[N9r.SeverityNumber[t]]:t}),{});import{fork as tZc}from"node:child_process";import{join as rZc}from"node:path";var Tvt=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var nZc=({execArgv:e},t=process.execArgv)=>({silent:!0,...e?{execArgv:[...t,...e]}:{}}),Rvt=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new Tvt(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:n}=t.compiler.options.output;n&&(this.entryFile=rZc(n,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let n=tZc(t,[],nZc(this.options));this.options.stdout&&n.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&n.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(n)},0)}};var ODe=class e extends iZc{constructor(r,n,a){super();this.webpack=r;this.config=n;this.execArgv=a}static async initialize(r){let{webpack:n,tsLoaderPath:a,nodeLoaderPath:o,protoLoaderPath:l}=await import("@atls/code-runtime/webpack"),A=new o2t(n,{nodeLoader:o,tsLoader:a,protoLoader:l},r);return new e(n,A,await oVi(r))}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((n,a)=>{this.emit("build:progress",{percent:n*100,message:a})})]));return new Promise((n,a)=>{r.run((o,l)=>{if(this.emit("end",{error:o,stats:l}),o)o.message?n([o]):a(o);else if(l){let{errors:A=[],warnings:f=[]}=l.toJson();n([...A.map(I=>({record:I,severityNumber:y4.SeverityNumber.ERROR})),...f.map(I=>({record:I,severityNumber:y4.SeverityNumber.WARN}))])}else n([])})})}async watch(r){let n=new sZc;return n.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:y4.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new Rvt({stdout:n,stderr:n,execArgv:this.execArgv}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:l=[],warnings:A=[]}=o.toJson();A.forEach(f=>{r({record:f,severityNumber:y4.SeverityNumber.WARN})}),l.forEach(f=>{r({record:f,severityNumber:y4.SeverityNumber.ERROR})})}})}};var KUi=Nt(el(),1);$c();var xJi=Nt(Al(),1),FJi=Nt(Pc(),1),GJi=({children:e})=>e?(0,FJi.jsx)(xJi.Text,{children:e}):null;var G9r=Nt(Al(),1);var F9r=Nt(Ec(),1);var oZc=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,n,a)=>n+t+a.toLowerCase()));function D9r(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let n=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,n);return r?oZc(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,n).toLowerCase()}var LJi=Nt(ZJi(),1),Z9r=Nt(Pc(),1),VJi=({children:e})=>{let t=(0,F9r.useMemo)(()=>typeof e=="string"?D9r(e,{separator:"-"}):e,[e]),r=(0,F9r.useMemo)(()=>t&&typeof t=="string"?(0,LJi.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(n=>(0,Z9r.jsx)(G9r.Text,{color:r,children:n},OW())):(0,Z9r.jsx)(G9r.Text,{color:r,children:t}):null};var XDe=Nt(Al(),1);var QUi=Nt(XJi(),1);var M9r="@mikro-orm-sql",H9r="@mikro-orm-params";var fZc;fZc=new WeakMap;var Zj=Nt(Al(),1),Vvt=Nt(Al(),1);var LUi=Nt(UJi(),1),vUi=Object.defineProperty,IZc=Object.defineProperties,hZc=Object.getOwnPropertyDescriptors,Zvt=Object.getOwnPropertySymbols,BUi=Object.prototype.hasOwnProperty,wUi=Object.prototype.propertyIsEnumerable,KJi=(e,t,r)=>t in e?vUi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,qk=(e,t)=>{for(var r in t||(t={}))BUi.call(t,r)&&KJi(e,r,t[r]);if(Zvt)for(var r of Zvt(t))wUi.call(t,r)&&KJi(e,r,t[r]);return e},tL=(e,t)=>IZc(e,hZc(t)),mZc=(e,t)=>{var r={};for(var n in e)BUi.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Zvt)for(var n of Zvt(e))t.indexOf(n)<0&&wUi.call(e,n)&&(r[n]=e[n]);return r},CZc=(e,t)=>{for(var r in t)vUi(e,r,{get:t[r],enumerable:!0})},TUi={};CZc(TUi,{bigquery:()=>LZc,db2:()=>jZc,db2i:()=>sLc,hive:()=>pLc,mariadb:()=>ELc,mysql:()=>kLc,n1ql:()=>jLc,plsql:()=>s9c,postgresql:()=>f9c,redshift:()=>S9c,singlestoredb:()=>vVc,snowflake:()=>GVc,spark:()=>x9c,sql:()=>q9c,sqlite:()=>H9c,tidb:()=>OLc,transactsql:()=>IVc,trino:()=>aVc});var oc=e=>e.flatMap(_Zc),_Zc=e=>xvt(bZc(e)).map(yZc),yZc=e=>e.replace(/ +/g," ").trim(),bZc=e=>({type:"mandatory_block",items:dVr(e,0)[0]}),dVr=(e,t,r)=>{let n=[];for(;e[t];){let[a,o]=EZc(e,t);if(n.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[n,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[n,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[n,t]},EZc=(e,t)=>{let r=[];for(;;){let[n,a]=SZc(e,t);if(n)r.push(n),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},SZc=(e,t)=>{if(e[t]==="{")return vZc(e,t+1);if(e[t]==="[")return BZc(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},vZc=(e,t)=>{let[r,n]=dVr(e,t,"}");return[{type:"mandatory_block",items:r},n]},BZc=(e,t)=>{let[r,n]=dVr(e,t,"]");return[{type:"optional_block",items:r},n]},xvt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(xvt).reduce(wZc,[""]);if(e.type==="mandatory_block")return e.items.flatMap(xvt);if(e.type==="optional_block")return["",...e.items.flatMap(xvt)];throw new Error(`Unknown node type: ${e}`)},wZc=(e,t)=>{let r=[];for(let n of e)for(let a of t)r.push(n+a);return r},RUi=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(RUi||{}),NUi=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),QDe=NUi(1/0),HDe=e=>t=>t.type===e.type&&t.text===e.text,jCe={ARRAY:HDe({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:HDe({text:"BY",type:"RESERVED_KEYWORD"}),SET:HDe({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:HDe({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:HDe({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:HDe({text:"VALUES",type:"RESERVED_CLAUSE"})},DUi=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",TZc=e=>e==="AND"||e==="OR"||e==="XOR",RZc=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],NZc=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],DZc=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],kZc=oc(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),xZc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),jJi=oc(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),Y9r=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),GZc=oc(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),FZc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),ZZc=oc(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),LZc={name:"bigquery",tokenizerOptions:{reservedSelect:kZc,reservedClauses:[...xZc,...Y9r,...jJi],reservedSetOperations:GZc,reservedJoins:FZc,reservedPhrases:ZZc,reservedKeywords:NZc,reservedDataTypes:DZc,reservedFunctionNames:RZc,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:VZc},formatOptions:{onelineClauses:[...jJi,...Y9r],tabularOnelineClauses:Y9r}};function VZc(e){return PZc(WZc(e))}function PZc(e){let t=QDe;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,tL(qk({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function WZc(e){var t;let r=[];for(let n=0;nt=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function OZc(e,t){let r=0;for(let n=t;n"?r--:a.text===">>"&&(r-=2),r===0)return n}return e.length-1}var MZc=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],HZc=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],YZc=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],QZc=oc(["SELECT [ALL | DISTINCT]"]),XZc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),qJi=oc(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),Q9r=oc(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),JZc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),UZc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),KZc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),jZc={name:"db2",tokenizerOptions:{reservedSelect:QZc,reservedClauses:[...XZc,...qJi,...Q9r],reservedSetOperations:JZc,reservedJoins:UZc,reservedPhrases:KZc,reservedKeywords:HZc,reservedDataTypes:YZc,reservedFunctionNames:MZc,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...qJi,...Q9r],tabularOnelineClauses:Q9r}},zZc=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],qZc=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],$Zc=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],eLc=oc(["SELECT [ALL | DISTINCT]"]),tLc=oc(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),$Ji=oc(["CREATE [OR REPLACE] TABLE"]),X9r=oc(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),rLc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),nLc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),iLc=oc(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),sLc={name:"db2i",tokenizerOptions:{reservedSelect:eLc,reservedClauses:[...tLc,...$Ji,...X9r],reservedSetOperations:rLc,reservedJoins:nLc,reservedPhrases:iLc,reservedKeywords:qZc,reservedDataTypes:$Zc,reservedFunctionNames:zZc,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...$Ji,...X9r],tabularOnelineClauses:X9r}},oLc=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],aLc=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],cLc=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],lLc=oc(["SELECT [ALL | DISTINCT]"]),uLc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),eUi=oc(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),J9r=oc(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),gLc=oc(["UNION [ALL | DISTINCT]"]),ALc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),dLc=oc(["{ROWS | RANGE} BETWEEN"]),pLc={name:"hive",tokenizerOptions:{reservedSelect:lLc,reservedClauses:[...uLc,...eUi,...J9r],reservedSetOperations:gLc,reservedJoins:ALc,reservedPhrases:dLc,reservedKeywords:aLc,reservedDataTypes:cLc,reservedFunctionNames:oLc,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...eUi,...J9r],tabularOnelineClauses:J9r}};function Lvt(e){return e.map((t,r)=>{let n=e[r+1]||QDe;if(jCe.SET(t)&&n.text==="(")return tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||QDe;return jCe.VALUES(t)&&a.text==="="?tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var fLc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],ILc=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],hLc=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],mLc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),CLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),tUi=oc(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),U9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),_Lc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),yLc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),bLc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ELc={name:"mariadb",tokenizerOptions:{reservedSelect:mLc,reservedClauses:[...CLc,...tUi,...U9r],reservedSetOperations:_Lc,reservedJoins:yLc,reservedPhrases:bLc,supportsXor:!0,reservedKeywords:fLc,reservedDataTypes:ILc,reservedFunctionNames:hLc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:Lvt},formatOptions:{onelineClauses:[...tUi,...U9r],tabularOnelineClauses:U9r}},SLc=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],vLc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],BLc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],wLc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),TLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),rUi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),K9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),RLc=oc(["UNION [ALL | DISTINCT]"]),NLc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),DLc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),kLc={name:"mysql",tokenizerOptions:{reservedSelect:wLc,reservedClauses:[...TLc,...rUi,...K9r],reservedSetOperations:RLc,reservedJoins:NLc,reservedPhrases:DLc,supportsXor:!0,reservedKeywords:SLc,reservedDataTypes:vLc,reservedFunctionNames:BLc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Lvt},formatOptions:{onelineClauses:[...rUi,...K9r],tabularOnelineClauses:K9r}},xLc=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],GLc=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],FLc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],ZLc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),LLc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),nUi=oc(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),j9r=oc(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),VLc=oc(["UNION [ALL | DISTINCT]"]),PLc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),WLc=oc(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),OLc={name:"tidb",tokenizerOptions:{reservedSelect:ZLc,reservedClauses:[...LLc,...nUi,...j9r],reservedSetOperations:VLc,reservedJoins:PLc,reservedPhrases:WLc,supportsXor:!0,reservedKeywords:xLc,reservedDataTypes:GLc,reservedFunctionNames:FLc,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:Lvt},formatOptions:{onelineClauses:[...nUi,...j9r],tabularOnelineClauses:j9r}},MLc=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],HLc=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],YLc=[],QLc=oc(["SELECT [ALL | DISTINCT]"]),XLc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),iUi=oc(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),JLc=oc(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),ULc=oc(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),KLc=oc(["{ROWS | RANGE | GROUPS} BETWEEN"]),jLc={name:"n1ql",tokenizerOptions:{reservedSelect:QLc,reservedClauses:[...XLc,...iUi],reservedSetOperations:JLc,reservedJoins:ULc,reservedPhrases:KLc,supportsXor:!0,reservedKeywords:HLc,reservedDataTypes:YLc,reservedFunctionNames:MLc,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:iUi}},zLc=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],qLc=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],$Lc=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],e9c=oc(["SELECT [ALL | DISTINCT | UNIQUE]"]),t9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),sUi=oc(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),z9r=oc(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),r9c=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),n9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),i9c=oc(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),s9c={name:"plsql",tokenizerOptions:{reservedSelect:e9c,reservedClauses:[...t9c,...sUi,...z9r],reservedSetOperations:r9c,reservedJoins:n9c,reservedPhrases:i9c,supportsXor:!0,reservedKeywords:zLc,reservedDataTypes:qLc,reservedFunctionNames:$Lc,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:o9c},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...sUi,...z9r],tabularOnelineClauses:z9r}};function o9c(e){let t=QDe;return e.map(r=>jCe.SET(r)&&jCe.BY(t)?tL(qk({},r),{type:"RESERVED_KEYWORD"}):(DUi(r.type)&&(t=r),r))}var a9c=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],c9c=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],l9c=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],u9c=oc(["SELECT [ALL | DISTINCT]"]),g9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),oUi=oc(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),q9r=oc(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),A9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),d9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),p9c=oc(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),f9c={name:"postgresql",tokenizerOptions:{reservedSelect:u9c,reservedClauses:[...g9c,...oUi,...q9r],reservedSetOperations:A9c,reservedJoins:d9c,reservedPhrases:p9c,reservedKeywords:c9c,reservedDataTypes:l9c,reservedFunctionNames:a9c,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...oUi,...q9r],tabularOnelineClauses:q9r}},I9c=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],h9c=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],m9c=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],C9c=oc(["SELECT [ALL | DISTINCT]"]),_9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),aUi=oc(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),$9r=oc(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),y9c=oc(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),b9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),E9c=oc(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),S9c={name:"redshift",tokenizerOptions:{reservedSelect:C9c,reservedClauses:[..._9c,...aUi,...$9r],reservedSetOperations:y9c,reservedJoins:b9c,reservedPhrases:E9c,reservedKeywords:h9c,reservedDataTypes:m9c,reservedFunctionNames:I9c,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...aUi,...$9r],tabularOnelineClauses:$9r}},v9c=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],B9c=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],w9c=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],T9c=oc(["SELECT [ALL | DISTINCT]"]),R9c=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),cUi=oc(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),eVr=oc(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),N9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),D9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),k9c=oc(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),x9c={name:"spark",tokenizerOptions:{reservedSelect:T9c,reservedClauses:[...R9c,...cUi,...eVr],reservedSetOperations:N9c,reservedJoins:D9c,reservedPhrases:k9c,supportsXor:!0,reservedKeywords:v9c,reservedDataTypes:B9c,reservedFunctionNames:w9c,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:G9c},formatOptions:{onelineClauses:[...cUi,...eVr],tabularOnelineClauses:eVr}};function G9c(e){return e.map((t,r)=>{let n=e[r-1]||QDe,a=e[r+1]||QDe;return jCe.WINDOW(t)&&a.type==="OPEN_PAREN"?tL(qk({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(n.text==="COLLECTION"&&a.text==="TERMINATED")?tL(qk({},t),{type:"IDENTIFIER",text:t.raw}):t})}var F9c=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],Z9c=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],L9c=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],V9c=oc(["SELECT [ALL | DISTINCT]"]),P9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),lUi=oc(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),tVr=oc(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),W9c=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),O9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),M9c=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),H9c={name:"sqlite",tokenizerOptions:{reservedSelect:V9c,reservedClauses:[...P9c,...lUi,...tVr],reservedSetOperations:W9c,reservedJoins:O9c,reservedPhrases:M9c,reservedKeywords:Z9c,reservedDataTypes:L9c,reservedFunctionNames:F9c,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...lUi,...tVr],tabularOnelineClauses:tVr}},Y9c=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],Q9c=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],X9c=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],J9c=oc(["SELECT [ALL | DISTINCT]"]),U9c=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),uUi=oc(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),rVr=oc(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),K9c=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),j9c=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),z9c=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),q9c={name:"sql",tokenizerOptions:{reservedSelect:J9c,reservedClauses:[...U9c,...uUi,...rVr],reservedSetOperations:K9c,reservedJoins:j9c,reservedPhrases:z9c,reservedKeywords:Q9c,reservedDataTypes:X9c,reservedFunctionNames:Y9c,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...uUi,...rVr],tabularOnelineClauses:rVr}},$9c=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],eVc=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],tVc=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],rVc=oc(["SELECT [ALL | DISTINCT]"]),nVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),gUi=oc(["CREATE TABLE [IF NOT EXISTS]"]),nVr=oc(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),iVc=oc(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),sVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),oVc=oc(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),aVc={name:"trino",tokenizerOptions:{reservedSelect:rVc,reservedClauses:[...nVc,...gUi,...nVr],reservedSetOperations:iVc,reservedJoins:sVc,reservedPhrases:oVc,reservedKeywords:eVc,reservedDataTypes:tVc,reservedFunctionNames:$9c,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...gUi,...nVr],tabularOnelineClauses:nVr}},cVc=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],lVc=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],uVc=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],gVc=oc(["SELECT [ALL | DISTINCT]"]),AVc=oc(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),AUi=oc(["CREATE TABLE"]),iVr=oc(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),dVc=oc(["UNION [ALL]","EXCEPT","INTERSECT"]),pVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),fVc=oc(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),IVc={name:"transactsql",tokenizerOptions:{reservedSelect:gVc,reservedClauses:[...AVc,...AUi,...iVr],reservedSetOperations:dVc,reservedJoins:pVc,reservedPhrases:fVc,reservedKeywords:lVc,reservedDataTypes:uVc,reservedFunctionNames:cVc,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...AUi,...iVr],tabularOnelineClauses:iVr}},hVc=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],mVc=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],CVc=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],_Vc=oc(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),yVc=oc(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),dUi=oc(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),sVr=oc(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),bVc=oc(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),EVc=oc(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),SVc=oc(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),vVc={name:"singlestoredb",tokenizerOptions:{reservedSelect:_Vc,reservedClauses:[...yVc,...dUi,...sVr],reservedSetOperations:bVc,reservedJoins:EVc,reservedPhrases:SVc,reservedKeywords:hVc,reservedDataTypes:mVc,reservedFunctionNames:CVc,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:Lvt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...dUi,...sVr],tabularOnelineClauses:sVr}},BVc=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],wVc=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],TVc=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],RVc=oc(["SELECT [ALL | DISTINCT]"]),NVc=oc(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),pUi=oc(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),oVr=oc(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),DVc=oc(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),kVc=oc(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),xVc=oc(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),GVc={name:"snowflake",tokenizerOptions:{reservedSelect:RVc,reservedClauses:[...NVc,...pUi,...oVr],reservedSetOperations:DVc,reservedJoins:kVc,reservedPhrases:xVc,reservedKeywords:wVc,reservedDataTypes:TVc,reservedFunctionNames:BVc,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...pUi,...oVr],tabularOnelineClauses:oVr}},OKe=e=>e[e.length-1],kUi=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),Gvt=e=>e.replace(/\s+/gu," "),aVr=e=>/\n/.test(e),b4=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),fUi=/\s+/uy,zCe=e=>new RegExp(`(?:${e})`,"uy"),FVc=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),ZVc=e=>e+"(?:-"+e+")*",LVc=({prefixes:e,requirePrefix:t})=>`(?:${e.map(FVc).join("|")}${t?"":"|"})`,VVc=e=>new RegExp(`(?:${e.map(b4).join("|")}).*?(?=\r -|\r| -|$)`,"uy"),IUi=(e,t=[])=>{let r=e==="open"?0:1,n=["()",...t].map(a=>a[r]);return zCe(n.map(b4).join("|"))},hUi=e=>zCe(`${kUi(e).map(b4).join("|")}`),PVc=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",$ce=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=PVc(t),n=kUi(e).map(b4).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},cVr=(e,t)=>{if(!e.length)return;let r=e.map(b4).join("|");return zCe(`(?:${r})(?:${t})`)},WVc=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([l,A])=>t.replace(/{left}/g,b4(l)).replace(/{right}/g,b4(A))),n=b4(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${n}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},mUi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":WVc()},xUi=e=>typeof e=="string"?mUi[e]:"regex"in e?e.regex:LVc(e)+mUi[e.quote],OVc=e=>zCe(e.map(t=>"regex"in t?t.regex:xUi(t)).join("|")),GUi=e=>e.map(xUi).join("|"),CUi=e=>zCe(GUi(e)),MVc=(e={})=>zCe(FUi(e)),FUi=({first:e,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",l=b4(e??""),A=b4(t??""),f=n?`[${a}${o}${l}][${a}${o}${A}]*`:`[${a}${l}][${a}${o}${A}]*`;return r?ZVc(f):f};function ZUi(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var HVc=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index0;)if(r=this.matchSection(_Ui,e))t+=r,n++;else if(r=this.matchSection(QVc,e))t+=r,n--;else if(r=this.matchSection(YVc,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},JVc=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],n=new HVc(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(n):n}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new XVc:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:VVc((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:CUi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:$ce((r=e.reservedPhrases)!=null?r:[],e.identChars),text:dD},{type:"CASE",regex:/CASE\b/iuy,text:dD},{type:"END",regex:/END\b/iuy,text:dD},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:dD},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:dD},{type:"RESERVED_CLAUSE",regex:$ce(e.reservedClauses,e.identChars),text:dD},{type:"RESERVED_SELECT",regex:$ce(e.reservedSelect,e.identChars),text:dD},{type:"RESERVED_SET_OPERATION",regex:$ce(e.reservedSetOperations,e.identChars),text:dD},{type:"WHEN",regex:/WHEN\b/iuy,text:dD},{type:"ELSE",regex:/ELSE\b/iuy,text:dD},{type:"THEN",regex:/THEN\b/iuy,text:dD},{type:"RESERVED_JOIN",regex:$ce(e.reservedJoins,e.identChars),text:dD},{type:"AND",regex:/AND\b/iuy,text:dD},{type:"OR",regex:/OR\b/iuy,text:dD},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:dD},{type:"RESERVED_FUNCTION_NAME",regex:$ce(e.reservedFunctionNames,e.identChars),text:dD},{type:"RESERVED_DATA_TYPE",regex:$ce(e.reservedDataTypes,e.identChars),text:dD},{type:"RESERVED_KEYWORD",regex:$ce(e.reservedKeywords,e.identChars),text:dD}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?OVc(e.variableTypes):void 0},{type:"STRING",regex:CUi(e.stringTypes)},{type:"IDENTIFIER",regex:MVc(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:IUi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:IUi("close",e.extraParens)},{type:"OPERATOR",regex:hUi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:hUi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,n,a,o,l;let A={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((n=e.paramTypes)==null?void 0:n.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((l=e.paramTypes)==null?void 0:l.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:cVr(A.named,FUi(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:cVr(A.quoted,GUi(e.identTypes)),key:f=>(({tokenKey:I,quoteChar:C})=>I.replace(new RegExp(b4("\\"+C),"gu"),C))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:cVr(A.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:A.positional?/[?]/y:void 0},...A.custom.map(f=>{var I;return{type:"CUSTOM_PARAMETER",regex:zCe(f.regex),key:(I=f.key)!=null?I:C=>C}})])}validRules(e){return e.filter(t=>!!t.regex)}},dD=e=>Gvt(e.toUpperCase()),yUi=new Map,UVc=e=>{let t=yUi.get(e);return t||(t=KVc(e),yUi.set(e,t)),t},KVc=e=>({tokenizer:new JVc(e.tokenizerOptions,e.name),formatOptions:jVc(e.formatOptions)}),jVc=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function zVc(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function YDe(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var qVc=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function $Vc(e){return e.map(ePc).map(tPc).map(rPc).map(nPc).map(iPc)}var ePc=(e,t,r)=>{if(DUi(e.type)){let n=sPc(r,t);if(n&&n.type==="PROPERTY_ACCESS_OPERATOR")return tL(qk({},e),{type:"IDENTIFIER",text:e.raw})}return e},tPc=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let n=MKe(r,t);if(!n||!VUi(n))return tL(qk({},e),{type:"RESERVED_KEYWORD"})}return e},rPc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=MKe(r,t);if(n&&VUi(n))return tL(qk({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},nPc=(e,t,r)=>{if(e.type==="IDENTIFIER"){let n=MKe(r,t);if(n&&PUi(n))return tL(qk({},e),{type:"ARRAY_IDENTIFIER"})}return e},iPc=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let n=MKe(r,t);if(n&&PUi(n))return tL(qk({},e),{type:"ARRAY_KEYWORD"})}return e},sPc=(e,t)=>MKe(e,t,-1),MKe=(e,t,r=1)=>{let n=1;for(;e[t+n*r]&&oPc(e[t+n*r]);)n++;return e[t+n*r]},VUi=e=>e.type==="OPEN_PAREN"&&e.text==="(",PUi=e=>e.type==="OPEN_PAREN"&&e.text==="[",oPc=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",WUi=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=ZUi(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in RUi}};function lVr(e){return e[0]}var wf=new WUi(e=>[]),KCe=([[e]])=>e,pD=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),bUi=e=>({type:"data_type",text:e.text,raw:e.raw}),fD=(e,{leading:t,trailing:r})=>(t?.length&&(e=tL(qk({},e),{leadingComments:t})),r?.length&&(e=tL(qk({},e),{trailingComments:r})),e),aPc=(e,{leading:t,trailing:r})=>{if(t?.length){let[n,...a]=e;e=[fD(n,{leading:t}),...a]}if(r?.length){let n=e.slice(0,-1),a=e[e.length-1];e=[...n,fD(a,{trailing:r})]}return e},cPc={Lexer:wf,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[wf.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[wf.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:KCe},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[wf.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:lVr},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[wf.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,n])=>{if(n){let[a,o]=n;return{type:"limit_clause",limitKw:fD(pD(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:fD(pD(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[wf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:pD(e),children:[t,...r]})},{name:"select_clause",symbols:[wf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:pD(e),children:[]})},{name:"all_columns_asterisk",symbols:[wf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[wf.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:pD(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[wf.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:pD(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:lVr},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>fD(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>fD(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>fD(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:KCe},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:KCe},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:KCe},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:KCe},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:KCe},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:KCe},{name:"array_subscript",symbols:[wf.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:fD({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[wf.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:fD(pD(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[wf.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:fD(pD(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",wf.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,n,[a]])=>({type:"property_access",object:fD(e,{trailing:t}),operator:r.text,property:fD(a,{leading:n})})},{name:"between_predicate",symbols:[wf.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",wf.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,n,a,o,l])=>({type:"between_predicate",betweenKw:pD(e),expr1:aPc(r,{leading:t,trailing:n}),andKw:pD(a),expr2:[fD(l,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:lVr},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[wf.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",wf.has("END")?{type:"END"}:END],postprocess:([e,t,r,n,a])=>({type:"case_expression",caseKw:fD(pD(e),{trailing:t}),endKw:pD(a),expr:r||[],clauses:n})},{name:"case_clause",symbols:[wf.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",wf.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,n,a,o])=>({type:"case_when",whenKw:fD(pD(e),{trailing:t}),thenKw:fD(pD(n),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[wf.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:fD(pD(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[wf.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[wf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[wf.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[wf.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[wf.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[wf.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[wf.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[wf.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[wf.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[wf.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[wf.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"data_type$subexpression$1",symbols:[wf.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>bUi(e)},{name:"data_type",symbols:[wf.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:fD(bUi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[wf.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[wf.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[wf.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"other_keyword$subexpression$1",symbols:[wf.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[wf.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[wf.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[wf.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>pD(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[wf.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[wf.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[wf.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},lPc=cPc,{Parser:uPc,Grammar:gPc}=LUi.default;function APc(e){let t={},r=new WUi(a=>[...$Vc(e.tokenize(a,t)),NUi(a.length)]),n=new uPc(gPc.fromCompiled(lPc),{lexer:r});return{parse:(a,o)=>{t=o;let{results:l}=n.feed(a);if(l.length===1)return l[0];throw l.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar -${JSON.stringify(l,void 0,2)}`)}}}var OUi=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;dPc(OKe(this.items));)this.items.pop()}trimWhitespace(){for(;pPc(OKe(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(OKe(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` -`;case 6:return this.indentation.getSingleIndent();default:return e}}},dPc=e=>e===0||e===6,pPc=e=>e===0||e===6||e===3;function EUi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function SUi(e){return TZc(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var uVr="top-level",fPc="block-level",MUi=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(uVr)}increaseBlockLevel(){this.indentTypes.push(fPc)}decreaseTopLevel(){this.indentTypes.length>0&&OKe(this.indentTypes)===uVr&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===uVr;);}},IPc=class extends OUi{constructor(e){super(new MUi("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new gVr;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new gVr;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},gVr=class extends Error{},hPc=class AVr{constructor({cfg:t,dialectCfg:r,params:n,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=n,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),YDe(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):YDe(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return YDe(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),YDe(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){aVr(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return aVr(t.text)||aVr(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(OKe(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new AVr({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new AVr({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new IPc(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof gVr){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){YDe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?YDe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return SUi(t.tokenType)?EUi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return Gvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return SUi(t.tokenType)?EUi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return Gvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return Gvt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},mPc=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new qVc(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return APc(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` -`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new hPc({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new OUi(new MUi(zVc(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},Fvt=class extends Error{};function CPc(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new Fvt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new Fvt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!_Pc(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!yPc(e.paramTypes))throw new Fvt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function _Pc(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function yPc(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var HUi={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},bPc=Object.keys(HUi),EPc={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},YUi=(e,t={})=>{if(typeof t.language=="string"&&!bPc.includes(t.language))throw new Fvt(`Unsupported SQL dialect: ${t.language}`);let r=HUi[t.language||"sql"];return SPc(e,tL(qk({},t),{dialect:TUi[r]}))},SPc=(e,t)=>{var r=t,{dialect:n}=r,a=mZc(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=CPc(qk(qk({},EPc),a));return new mPc(UVc(n),o).format(e)};var YG=Nt(Pc(),1),vPc=({children:e})=>e?(0,YG.jsxs)(Vvt.Box,{paddingLeft:4,children:[(0,YG.jsx)(Zj.Text,{children:"SQL:"}),(0,YG.jsx)(Zj.Text,{children:" "}),(0,YG.jsx)(Zj.Text,{children:new QUi.SqlHighlighter().highlight(YUi(e,{language:"postgresql"}))})]}):null,BPc=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,n,a)=>(r.push((0,YG.jsx)(Zj.Text,{color:"yellow",children:n},OW())),ae?(0,YG.jsxs)(Vvt.Box,{marginTop:1,flexDirection:"column",children:[(0,YG.jsx)(vPc,{children:e[M9r]}),(0,YG.jsx)(BPc,{children:e[H9r]})]}):null;var JUi=Nt(Al(),1);var pVr=Nt(Pc(),1),UUi=({children:e})=>e?(0,pVr.jsx)(JUi.Box,{paddingBottom:1,marginTop:1,children:(0,pVr.jsx)(kyt,{children:e})}):null;var E4=Nt(Pc(),1),Pvt=({namespace:e,body:t,stack:r,attributes:n={}})=>(0,E4.jsxs)(XDe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:[(0,E4.jsx)(XDe.Box,{flexDirection:"row",children:(0,E4.jsxs)(XDe.Box,{flexGrow:1,children:[(0,E4.jsx)(XDe.Box,{paddingRight:1,children:(0,E4.jsx)(VJi,{children:e||n[VLr]})}),(0,E4.jsx)(XDe.Box,{children:(0,E4.jsx)(GJi,{children:t})})]})}),(0,E4.jsx)(UUi,{children:r||n["@stack"]}),(0,E4.jsx)(XUi,{children:n})]});var Wvt=Nt(Pc(),1),qCe=class extends KUi.BaseCommand{showWarnings=Su.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?xE((0,Wvt.jsx)(Fk,{error:t})).split(` -`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?xE((0,Wvt.jsx)(Fk,{error:t.record})).split(` -`).forEach(r=>{t.severityNumber===y4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?xE((0,Wvt.jsx)(Pvt,{...t})).split(` -`).forEach(r=>{t.severityNumber<=y4.SeverityNumber.INFO?console.log(r):t.severityNumber<=y4.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var IVr=Nt(Pc(),1),HKe=class extends qCe{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(fVr.Filename.pnpCjs)&&t.includes(fVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await jUi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await zUi.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await $Ui.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await qUi.execUtils.pipevp(o,["service","build",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await ODe.initialize(this.context.cwd),{clear:r}=(0,eKi.render)((0,IVr.jsx)(r2t,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(n){return n instanceof Error?xE((0,IVr.jsx)(Fk,{error:n})).split(` -`).forEach(a=>{console.error(a)}):console.error(n),1}finally{r()}}};var tKi=Nt(Sn(),1),rKi=Nt(Sn(),1),hVr=Nt(ro(),1),nKi=Nt(Sn(),1),iKi=Nt(ro(),1),sKi=Nt(Al(),1);var oKi=Nt(Pc(),1),YKe=class extends qCe{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(hVr.Filename.pnpCjs)&&t.includes(hVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await tKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await rKi.Project.find(t,this.context.cwd),n=[];this.showWarnings&&n.push("-s");let a=await iKi.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await nKi.execUtils.pipevp(o,["service","dev",...n],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await ODe.initialize(this.context.cwd),{clear:r}=(0,sKi.render)((0,oKi.jsx)(r2t,{service:t}));try{return await t.watch(n=>{this.renderLogRecord(n)}),0}catch(n){return console.error(n),1}finally{r()}}};var aKi={commands:[HKe,YKe]};var BVr={};sI(BVr,{AbstractTestCommand:()=>zee,TestIntegrationCommand:()=>JKe,TestUnitCommand:()=>UKe,default:()=>TKi});var EVr=Nt(ro(),1);var bKi=Nt(el(),1),yVr=Nt(Sn(),1),bVr=Nt(Sn(),1),EKi=Nt(Sn(),1),SKi=Nt(ro(),1);$c();$c();var vKi=Nt(Al(),1);CZ();import{readFileSync as TPc}from"node:fs";import{relative as yKi}from"node:path";var cKi=Nt(Al(),1),QKe=Nt(Al(),1);var lKi=Nt(Ec(),1);var pH=Nt(Pc(),1),uKi=({file:e,messages:t=[]})=>{let r=(0,lKi.useMemo)(()=>t.map(n=>n.endsWith(` -`)?n.replace(/\n$/,""):n).filter(Boolean),[t]);return(0,pH.jsxs)(QKe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",children:[!!e&&(0,pH.jsx)(QKe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,pH.jsx)(A8,{children:e})}),r.length>0&&(0,pH.jsxs)(pH.Fragment,{children:[(0,pH.jsx)(J9,{offset:2}),(0,pH.jsx)(QKe.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2,children:r.map(n=>(0,pH.jsx)(QKe.Box,{children:(0,pH.jsx)(cKi.Text,{children:n})},OW()))})]})]})};var CVr=Nt(Al(),1),JDe=Nt(Al(),1);var BO=Nt(Pc(),1),gKi=({details:e,source:t,file:r,line:n,column:a})=>r&&t?(0,BO.jsxs)(JDe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,BO.jsx)(JDe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,BO.jsx)(A8,{line:n,column:a,children:r})}),(0,BO.jsx)(J9,{offset:2}),(0,BO.jsx)(JDe.Box,{marginBottom:1,children:(0,BO.jsx)(d8,{line:n??1,column:a??1,children:t})}),(0,BO.jsx)(J9,{offset:2}),(0,BO.jsx)(JDe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,BO.jsx)(CVr.Text,{color:"white",children:e.error.message})})]}):(0,BO.jsx)(JDe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:(0,BO.jsx)(CVr.Text,{children:e.error.message})});var XKe=Nt(Al(),1),mKi=Nt(Ec(),1),CKi=Nt(Ec(),1);var AKi=Nt(Ec(),1),_Vr=Nt(Ec(),1),pKi=Nt(Pc(),1),dKi=({tester:e})=>{let[t,r]=(0,_Vr.useState)(0),[n,a]=(0,_Vr.useState)(0);return(0,AKi.useEffect)(()=>{let o=f=>{r(f.tests.reduce((I,C)=>I+C.tests+1,0))},l=()=>{a(f=>f+1)},A=()=>{a(t)};return e.on("start",o),e.on("test:pass",l),e.on("test:fail",l),e.on("end",A),()=>{e.off("start",o),e.off("test:pass",l),e.off("test:fail",l),e.off("end",A)}},[e,t,r,a]),(0,pKi.jsx)(JM,{value:t>0&&n>0?n/t*100:0})};import{relative as fKi}from"node:path";var UDe=Nt(Al(),1),$k=Nt(Al(),1),IKi=Nt(Ec(),1),KDe=Nt(Ec(),1);var ME=Nt(Pc(),1),wPc=({state:e})=>e==="fail"?(0,ME.jsx)($k.Text,{color:"red",children:kI.cross}):e==="pass"?(0,ME.jsx)($k.Text,{color:"green",children:kI.tick}):(0,ME.jsx)($k.Text,{color:"white",children:kI.circleDotted}),hKi=({cwd:e,tester:t})=>{let[r,n]=(0,KDe.useState)(void 0),[a,o]=(0,KDe.useState)(void 0),[l,A]=(0,KDe.useState)(0),[f,I]=(0,KDe.useState)(0),[C,b]=(0,KDe.useState)(0);return(0,IKi.useEffect)(()=>{let E=F=>{A(F.tests.reduce((Q,X)=>Q+X.tests,0)),n(F.tests)},N=F=>{I(Q=>Q+1),F.file&&o({file:fKi(e,F.file),state:"pass"})},B=F=>{b(Q=>Q+1),F.file&&o({file:fKi(e,F.file),state:"fail"})};return t.on("start",E),t.on("test:pass",N),t.on("test:fail",B),()=>{t.off("start",E),t.off("test:pass",N),t.off("test:fail",B)}},[t,A,I,b,o]),r?(0,ME.jsxs)(UDe.Box,{flexDirection:"row",width:"100%",children:[(0,ME.jsxs)(UDe.Box,{flexGrow:1,children:[(0,ME.jsx)(RG,{color:"cyan",children:"Test:"}),(0,ME.jsx)($k.Text,{children:" "}),!!a&&(0,ME.jsx)($k.Text,{color:"white",children:a.file})]}),(0,ME.jsx)(UDe.Box,{flexDirection:"row",children:(0,ME.jsxs)(UDe.Box,{children:[(0,ME.jsx)(wPc,{state:a?.state}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"green",children:[f," Pass"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"red",children:[C," Fail"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"white",children:[l," Total"]}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsxs)($k.Text,{color:"gray",children:[r.length||0," Files"]}),(0,ME.jsx)($k.Text,{children:" "})]})})]}):(0,ME.jsxs)(UDe.Box,{flexDirection:"row",children:[(0,ME.jsx)(RG,{color:"cyan",children:"Test:"}),(0,ME.jsx)($k.Text,{children:" "}),(0,ME.jsx)($k.Text,{color:"white",children:"Loading..."})]})};var ele=Nt(Pc(),1),_Ki=({cwd:e,tester:t})=>{let[r,n]=(0,mKi.useState)(!1);return(0,CKi.useEffect)(()=>{let a,o=()=>{a=setTimeout(()=>{n(!0)},1e3)};return t.on("end",o),()=>{a&&clearTimeout(a),t.off("end",o)}},[n]),r?null:(0,ele.jsx)(XKe.Box,{position:"relative",height:7,children:(0,ele.jsxs)(XKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,ele.jsx)(XKe.Box,{children:(0,ele.jsx)(hKi,{cwd:e,tester:t})}),(0,ele.jsx)(XKe.Box,{marginTop:1,marginBottom:1,children:(0,ele.jsx)(dKi,{tester:t})})]})})};var jDe=Nt(Pc(),1),zee=class extends bKi.BaseCommand{static usage=_C.Usage({description:"Run tests",details:` - Run either integration or unit tests with Node.js built-in test runner. - - Integration tests are defined by placing *.test.[j|t]sx? in 'integration' folder anywhere. - - Unit tests are all *.test.[j|t]sx? except in 'integration' folder. - `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=Su.String("-t,--target");watch=Su.Boolean("-w,--watch",!1);files=Su.Rest({required:0});testReporter=Su.String("--test-reporter",{validator:ajt(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await yVr.Configuration.find(this.context.cwd,this.context.plugins),{project:n,workspace:a}=await bVr.Project.find(r,this.context.cwd),o=[];this.files.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let l=await SKi.xfs.mktempPromise(),{executable:A,env:f}=await iC({binFolder:l,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}});f.NODE_OPTIONS?.includes("--no-warnings")||(f.NODE_OPTIONS=`${f.NODE_OPTIONS??""} --no-warnings=DeprecationWarning`);let{code:I}=await EKi.execUtils.pipevp(A,["test",t??"",...o],{cwd:n.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:f});return I}async executeRegular(t){let r=await yVr.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await bVr.Project.find(r,this.context.cwd),a=C=>{this.bufferedStd(C,b=>{this.renderStdBuffer(b)})},o=C=>{this.bufferedStd(C,b=>{this.renderStdBuffer(b)})},l=C=>{let b=C.file?TPc(C.file,"utf8"):void 0;xE((0,jDe.jsx)(gKi,{details:C.details,source:b,file:C.file?yKi(n.cwd,C.file):void 0,column:C.column,line:C.line})).split(` -`).forEach(E=>{console.error(E)})},A=await V8.initialize(this.context.cwd);if(this.testReporter==="tap")return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).find(b=>b.type==="test:fail")?1:0;A.on("test:stdout",a),A.on("test:stderr",o),A.on("test:fail",l);let{clear:f,unmount:I}=(0,vKi.render)((0,jDe.jsx)(_Ki,{cwd:n.cwd,tester:A}));try{return(t==="integration"?await A.integration(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter}):await A.unit(this.target??n.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).find(b=>b.type==="test:fail")?1:0}catch(C){return C instanceof Error?xE((0,jDe.jsx)(Fk,{error:C})).split(` -`).forEach(b=>{console.error(b)}):console.error(C),1}finally{this.flushBufferedStd(),A.off("test:stdout",a),A.off("test:stderr",o),A.off("test:fail",l),I(),f()}}bufferedStd(t,r){if(this.std.keys().next().value)if(this.std.has(t.file))this.std.get(t.file)?.push(t.message),this.bufferedStdTimeout&&clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=setTimeout(()=>{let n=this.std.keys().next().value;r({file:n,messages:this.std.get(n)??[]}),this.std.delete(n)},100);else{let n=this.std.keys().next().value;r({file:n,messages:this.std.get(n)??[]}),this.std.delete(n),this.std.set(t.file,[t.message])}else this.std.set(t.file,[t.message])}renderStdBuffer({file:t,messages:r}){let n=r.map(l=>l.split(` -`).filter(Boolean)).flat(),{logRecords:a,raw:o}=n.reduce((l,A)=>{try{let f=JSON.parse(A);return{...l,logRecords:[...l.logRecords,f]}}catch{return{...l,raw:[...l.raw,A]}}},{logRecords:[],raw:[]});a.forEach(l=>{console.log(xE((0,jDe.jsx)(Pvt,{...l})))}),o.length>0&&console.log(xE((0,jDe.jsx)(uKi,{file:t?yKi(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.bufferedStdTimeout&&(clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=void 0),this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})}),this.std.clear()}};var JKe=class extends zee{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(EVr.Filename.pnpCjs)&&t.includes(EVr.Filename.pnpEsmLoader)?this.executeRegular("integration"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("integration"):this.executeProxy("integration")}};var SVr=Nt(ro(),1);var UKe=class extends zee{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(SVr.Filename.pnpCjs)&&t.includes(SVr.Filename.pnpEsmLoader)?this.executeRegular("unit"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("unit"):this.executeProxy("unit")}};var BKi=Nt(Sn(),1),wKi=Nt(Sn(),1),vVr=Nt(ro(),1);var Ovt=class extends zee{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(vVr.Filename.pnpCjs)&&t.includes(vVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await BKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await wKi.Project.find(t,this.context.cwd),n=await V8.initialize(this.context.cwd);try{return(await n.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.type==="test:fail")?1:0}catch(a){return console.error(a),1}}};var TKi={commands:[JKe,UKe,Ovt]};var FVr={};sI(FVr,{default:()=>UKi});var GKi=Nt(Sn(),1),FKi=Nt(Sn(),1),ZKi=Nt(Sn(),1),TVr=Nt(ro(),1),RVr=Nt(Sn(),1),rle=Nt(UC(),1);var RKi=Nt(el(),1),NKi=Nt(Sn(),1),DKi=Nt(Sn(),1),wVr=Nt(ro(),1),kKi=Nt(Sn(),1),xKi=Nt(ro(),1);$c();var tle=class extends RKi.BaseCommand{static usage=_C.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(wVr.Filename.pnpCjs)&&t.includes(wVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await NKi.Configuration.find(this.context.cwd,this.context.plugins),{project:n}=await DKi.Project.find(r,this.context.cwd),a=await xKi.xfs.mktempPromise(),{executable:o,env:l}=await iC({binFolder:a,project:n,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await kKi.execUtils.pipevp(o,t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){return 0}};var Mvt=class extends tle{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(TVr.Filename.pnpCjs)&&t.includes(TVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await GKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await FKi.Project.find(t,this.context.cwd),n=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await ZKi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let l=RVr.structUtils.parseIdent("typescript"),A=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===l.scope&&f.name===l.name);A||(A=RVr.structUtils.makeDescriptor(l,n.dependencies.typescript)),rle.default.valid(rle.default.coerce(A.range))&&rle.default.valid(rle.default.coerce(n.dependencies.typescript))&&(rle.default.eq(rle.default.coerce(A.range)||"",rle.default.coerce(n.dependencies.typescript)||"")||(A.range=n.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(A.identHash,A),await r.persist()}})})).exitCode()}};var LKi=Nt(Sn(),1),VKi=Nt(Sn(),1),PKi=Nt(Sn(),1),NVr=Nt(ro(),1),KKe=Nt(ro(),1),DVr=Nt(ro(),1),kVr=Nt(oTr(),1);import RPc from"node:assert";var NPc=(e,t,r)=>{let n=e.slice();return t.forEach((a,o)=>{typeof n[o]>"u"?n[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?n[o]=(0,kVr.default)(e[o],a,r):e.includes(a)||n.push(a)}),n},DPc=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,Hvt=class extends tle{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(NVr.Filename.pnpCjs)&&t.includes(NVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await LKi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await VKi.Project.find(t,this.context.cwd);return(await PKi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=DVr.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),l=await KKe.xfs.existsPromise(o)?await KKe.xfs.readJsonPromise(o):{compilerOptions:{}};await KKe.xfs.writeFilePromise(DVr.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// -`);let A=(0,kVr.default)(l,{compilerOptions:bj.compilerOptions},{arrayMerge:NPc}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(DPc),I={...A,include:Array.from(new Set(["project.types.d.ts",...A.include,...f]))};try{RPc.deepEqual(l,I)}catch{await KKe.xfs.writeJsonPromise(o,I)}})})).exitCode()}};var kPc=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],Yvt=class extends tle{static paths=[["tools","sync"]];async executeRegular(){for(let t of kPc){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var WKi=Nt(Sn(),1),xVr=Nt(Sn(),1),OKi=Nt(ro(),1);var MKi=async(e,t)=>{let{project:r}=await WKi.Project.find(e,t.cwd),n=await OKi.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r});await xVr.execUtils.pipevp(a,["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:xVr.execUtils.EndStrategy.ErrorCode,env:o})};var YKi=Nt(ro(),1),zDe=Nt(ro(),1),nle=Nt(ro(),1);import{spawnSync as xPc}from"node:child_process";var GVr=e=>`${e} -`,GPc=()=>GVr("yarn commit staged"),HKi=(e,t)=>xPc("git",e,{cwd:t,encoding:"utf-8"}),QKi=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK||HKi(["--version"]).error?.code==="ENOENT")return;let r=zDe.ppath.join(e.cwd,".config/husky"),n=zDe.ppath.join(r,"_");await nle.xfs.existsPromise(n)&&await nle.xfs.removePromise(r),await nle.xfs.existsPromise(r)||await nle.xfs.mkdirPromise(r,{recursive:!0}),await nle.xfs.writeFilePromise(zDe.ppath.join(r,"commit-msg"),GVr("yarn commit message lint"),{mode:493}),await nle.xfs.writeFilePromise(zDe.ppath.join(r,"pre-commit"),GPc(),{mode:493}),await nle.xfs.writeFilePromise(zDe.ppath.join(r,"prepare-commit-msg"),GVr("yarn commit message $@"),{mode:493});let{error:a}=HKi(["config","core.hooksPath",r],YKi.npath.fromPortablePath(e.cwd));if(a)throw a};var XKi=Nt(ro(),1);var JKi=async(e,t,r)=>{Wmt(t);let n=wEr(e);if(!n)return;let a=XKi.npath.fromPortablePath(n);await Promise.all([...t[cQe]?[r("node",process.execPath)]:[],r("run",process.execPath,[a,"run"]),r("yarn",process.execPath,[a]),r("yarnpkg",process.execPath,[a]),r("node-gyp",process.execPath,[a,"run","--top-level","node-gyp"])])};var UKi={hooks:{afterAllInstalled:QKi,afterYarnVersionSet:MKi,setupScriptEnvironment:JKi},commands:[Yvt,Mvt,Hvt]};var WVr={};sI(WVr,{TypeCheckCommand:()=>jKe,default:()=>qKi});var KKi=Nt(el(),1),ZVr=Nt(Sn(),1),LVr=Nt(Sn(),1),VVr=Nt(ro(),1),jKi=Nt(Sn(),1),PVr=Nt(ro(),1),Qvt=Nt(ro(),1);$c();var zKi=Nt(Al(),1);var Xvt=Nt(Pc(),1),jKe=class extends KKi.BaseCommand{static paths=[["typecheck"]];args=Su.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(VVr.Filename.pnpCjs)&&t.includes(VVr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await ZVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await LVr.Project.find(t,this.context.cwd),n=await Qvt.xfs.mktempPromise(),{executable:a,env:o}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:l}=await jKi.execUtils.pipevp(a,["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:o});return l}async executeRegular(){let t=await ZVr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await LVr.Project.find(t,this.context.cwd),n=await jNe.initialize(r.cwd),{clear:a}=(0,zKi.render)((0,Xvt.jsx)(jEt,{typescript:n}));try{let o=await n.check(await this.getIncludes(r));return o.forEach(l=>{xE((0,Xvt.jsx)(KEt,{...l})).split(` -`).forEach(A=>{console.log(A)})}),o.length===0?0:1}catch(o){return xE((0,Xvt.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.error(l)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await Qvt.xfs.existsPromise(PVr.ppath.join(t.cwd,"tsconfig.json"))){let r=await Qvt.xfs.readJsonPromise(PVr.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var qKi={commands:[jKe]};var nPr={};sI(nPr,{UiIconsGenerateCommand:()=>e8e,default:()=>Aji});var cji=Nt(el(),1),$Vr=Nt(Sn(),1),ePr=Nt(Sn(),1),tPr=Nt(ro(),1),lji=Nt(Sn(),1),uji=Nt(ro(),1);$c();import{join as aji}from"node:path";import{relative as iOc}from"node:path";var gji=Nt(Al(),1);var zKe=Nt(Al(),1),o8i=Nt(Ec(),1),a8i=Nt(Ec(),1);var $Ki=Nt(Ec(),1),e8i=Nt(Ec(),1),r8i=Nt(Pc(),1),t8i=({icons:e})=>{let[t,r]=(0,e8i.useState)(0);return(0,$Ki.useEffect)(()=>{let n=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",n),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",n),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),(0,r8i.jsx)(JM,{value:t})};var Jvt=Nt(Al(),1),Uvt=Nt(Al(),1),n8i=Nt(Ec(),1),i8i=Nt(Ec(),1);var qee=Nt(Pc(),1),s8i=({icons:e})=>{let[t,r]=(0,i8i.useState)("Initilization...");return(0,n8i.useEffect)(()=>{let n=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",n),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",n),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),(0,qee.jsxs)(Jvt.Box,{flexDirection:"row",width:"100%",children:[(0,qee.jsxs)(Jvt.Box,{flexGrow:1,children:[(0,qee.jsx)(RG,{color:"cyan",children:"Icons:"}),(0,qee.jsx)(Uvt.Text,{children:" "}),(0,qee.jsx)(Uvt.Text,{color:"white",children:t})]}),(0,qee.jsx)(Jvt.Box,{flexDirection:"row",children:(0,qee.jsx)(Uvt.Text,{color:"green",children:kI.tick})})]})};var ile=Nt(Pc(),1),c8i=({icons:e})=>{let[t,r]=(0,o8i.useState)(!1);return(0,a8i.useEffect)(()=>{let n=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",n),()=>{e.off("save:end",n)}},[r]),t?null:(0,ile.jsx)(zKe.Box,{position:"relative",height:7,children:(0,ile.jsxs)(zKe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,ile.jsx)(zKe.Box,{children:(0,ile.jsx)(s8i,{icons:e})}),(0,ile.jsx)(zKe.Box,{marginTop:1,marginBottom:1,children:(0,ile.jsx)(t8i,{icons:e})})]})})};import zWc from"node:events";import{access as qWc}from"node:fs/promises";import{mkdtemp as $Wc}from"node:fs/promises";import{readFile as eOc}from"node:fs/promises";import{readdir as tOc}from"node:fs/promises";import{writeFile as iji}from"node:fs/promises";import{mkdir as rOc}from"node:fs/promises";import{tmpdir as nOc}from"node:os";import{join as $ee}from"node:path";import{basename as sji}from"node:path";import{extname as oji}from"node:path";var FPc=/[\p{Lu}]/u,ZPc=/[\p{Ll}]/u,l8i=/^[\p{Lu}](?![\p{Lu}])/gu,A8i=/([\p{Alpha}\p{N}_]|$)/u,OVr=/[_.\- ]+/,LPc=new RegExp("^"+OVr.source),u8i=new RegExp(OVr.source+A8i.source,"gu"),g8i=new RegExp("\\d+"+A8i.source,"gu"),VPc=(e,t,r,n)=>{let a=!1,o=!1,l=!1,A=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&FPc.test(I)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,l=o,o=!0,f++):o&&l&&ZPc.test(I)&&(!A||n)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),l=o,o=!1,a=!0):(a=t(I)===I&&r(I)!==I,l=o,o=r(I)===I&&t(I)!==I)}return e},PPc=(e,t)=>(l8i.lastIndex=0,e.replaceAll(l8i,r=>t(r))),WPc=(e,t)=>(u8i.lastIndex=0,g8i.lastIndex=0,e.replaceAll(g8i,(r,n,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(u8i,(r,n)=>t(n)));function MVr(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),n=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?OVr.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=VPc(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(LPc,""),e=t.preserveConsecutiveUppercase?PPc(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),WPc(e,n))}var nji=Nt(rji(),1);import{writeFile as UWc}from"node:fs/promises";import{mkdtemp as KWc}from"node:fs/promises";import{tmpdir as jWc}from"node:os";import{join as aBt}from"node:path";var cBt=class{constructor(t,r,n){this.loaders=t;this.cwd=r;this.target=n}async build(){let t=new nji.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(aBt(this.cwd,"replacements")),t.entry("template").add(aBt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=aBt(await KWc(aBt(jWc(),"tools-icons-")),"tsconfig.json");await UWc(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...bj.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var lBt=class e extends zWc{constructor(r,n,a,o){super();this.svgr=r;this.webpack=n;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:n,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:l}=await import("@atls/code-runtime/webpack");return new e({transform:n,jsx:a},o,{tsLoader:l},r)}async generate(r={}){await this.save(await this.transform(await this.read($ee(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await $Wc($ee(nOc(),"tools-icons-")),n=this.webpack(await new cBt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{n.run(l=>{l&&o(l),a([])})}),{replacements:(await import($ee(r,"replacements.mjs"))).default,template:(await import($ee(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let n=await tOc(r),a=await Promise.all(n.filter(o=>o.endsWith(".svg")).map(async o=>({source:await eOc($ee(r,o),"utf8"),component:MVr(sji(o,oji(o)),{pascalCase:!0}),name:sji(o,oji(o)),path:$ee(r,o),file:o})));return this.emit("read:end"),a}async transform(r,n){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),l=await Promise.all(r.map(async A=>{let f=await this.svgr.transform(A.source,{...n,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${A.component}Icon`]??{}},{componentName:`${A.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...A,output:f}}));return this.emit("transform:end"),l}async save(r){this.emit("save:start");let n=$ee(this.cwd,"src");try{await qWc(n)}catch{await rOc(n,{recursive:!0})}await Promise.all(r.map(async a=>iji($ee(n,`${a.name}.icon.tsx`),a.output))),await iji($ee(n,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` -`)),this.emit("save:end")}};var rPr=Nt(Pc(),1),e8e=class extends cji.BaseCommand{static paths=[["ui","icons","generate"]];native=Su.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(tPr.Filename.pnpCjs)&&t.includes(tPr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await $Vr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ePr.Project.find(t,this.context.cwd),n=await uji.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{executable:o,env:l}=await iC({binFolder:n,project:r,env:{COMMAND_PROXY_EXECUTION:"true"}}),{code:A}=await lji.execUtils.pipevp(o,["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:l});return A}async executeRegular(){let t=await $Vr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await ePr.Project.find(t,this.context.cwd),n=await lBt.initialize(this.context.cwd),{clear:a}=(0,gji.render)((0,rPr.jsx)(c8i,{icons:n}));try{await n.generate({native:this.native});let o=(await b$("*.tsx",{cwd:aji(this.context.cwd,"src")})).map(l=>aji(iOc(r.cwd,this.context.cwd),"src",l));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?xE((0,rPr.jsx)(Fk,{error:o})).split(` -`).forEach(l=>{console.error(l)}):console.error(o),1}finally{a()}}};var Aji={commands:[e8e]};var IYr={};sI(IYr,{default:()=>Eis});var _is=Nt(el(),1),yis=Nt(Sn(),1),bis=Nt(Sn(),1);$c();var dji=(e,t)=>({stdout:e.context.stdout,configuration:t});var his=Nt(ro(),1),mis=Nt(ro(),1);var gis=Nt(Nxe(),1),Ais=Nt(lis(),1);var uis=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var dis=async(e,t,r)=>{let o=!0,l=new Ais.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});l.reporter.subscribe(A=>{o=!1,uis(A)});try{return await l.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(A){return A instanceof gis.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):A instanceof Error?console.debug(`An error occured: -${A.stack}`):console.debug(`Error: ${A instanceof Error?A.message:A}`),1}};var fYr=Nt(ro(),1);import{mkdir as TAl}from"node:fs/promises";var wAl="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNKc29uT2JqZWN0ID0gaXNKc29uT2JqZWN0OwogICAgZXhwb3J0czIuaXNKc29uQXJyYXkgPSBpc0pzb25BcnJheTsKICAgIGZ1bmN0aW9uIGlzSnNvbk9iamVjdCh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSnNvbkFycmF5KHZhbHVlKSB7CiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0VHlwZXNPZlNjaGVtYSA9IGdldFR5cGVzT2ZTY2hlbWE7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBhbGxUeXBlcyA9IFsic3RyaW5nIiwgImludGVnZXIiLCAibnVtYmVyIiwgIm9iamVjdCIsICJhcnJheSIsICJib29sZWFuIiwgIm51bGwiXTsKICAgIGZ1bmN0aW9uIGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hMikgewogICAgICBpZiAoIXNjaGVtYTIpIHsKICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBuZXcgU2V0KGFsbFR5cGVzKTsKICAgICAgfQogICAgICBsZXQgcG90ZW50aWFsczsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnR5cGUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFtzY2hlbWEyLnR5cGVdKTsKICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIudHlwZSkpIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChzY2hlbWEyLnR5cGUpOwogICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShzY2hlbWEyLmVudW0pKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCB2IG9mIHNjaGVtYTIuZW51bSkgewogICAgICAgICAgc3dpdGNoICh0eXBlb2YgdikgewogICAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICBjYXNlICJib29sZWFuIjoKICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCh0eXBlb2Ygdik7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHsKICAgICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAodiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm51bGwiKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGlmICgoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIubm90KSkgewogICAgICAgIGNvbnN0IG5vdFR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzY2hlbWEyLm5vdCk7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnBvdGVudGlhbHNdLmZpbHRlcigocCkgPT4gIW5vdFR5cGVzLmhhcyhwKSkpOwogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIuYWxsT2YpKSB7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbGxPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChbLi4udHlwZXNdLmZpbHRlcigodCkgPT4gcG90ZW50aWFscy5oYXModCkpKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5vbmVPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5vbmVPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMi5hbnlPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hMi5hbnlPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIucHJvcGVydGllcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJvYmplY3QiKTsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zKSB7CiAgICAgICAgcG90ZW50aWFscy5hZGQoImFycmF5Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvdGVudGlhbHM7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3RyYW5zZm9ybXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFkZFVuZGVmaW5lZERlZmF1bHRzID0gYWRkVW5kZWZpbmVkRGVmYXVsdHM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciB1dGlsaXR5XzEgPSByZXF1aXJlX3V0aWxpdHkoKTsKICAgIGZ1bmN0aW9uIGFkZFVuZGVmaW5lZERlZmF1bHRzKHZhbHVlLCBfcG9pbnRlciwgc2NoZW1hMikgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIiB8fCBzY2hlbWEyID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgdmFsdWUgPz89IHNjaGVtYTIuZGVmYXVsdDsKICAgICAgY29uc3QgdHlwZXMgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHNjaGVtYTIpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTI7CiAgICAgIGlmICh0eXBlcy5zaXplID09PSAxKSB7CiAgICAgICAgdHlwZTIgPSBBcnJheS5mcm9tKHR5cGVzKVswXTsKICAgICAgfSBlbHNlIGlmICh0eXBlcy5zaXplID09PSAyICYmIHR5cGVzLmhhcygiYXJyYXkiKSAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYTIucHJvcGVydGllcyAmJiB0eXBlcy5oYXMoIm9iamVjdCIpKSB7CiAgICAgICAgdHlwZTIgPSAib2JqZWN0IjsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEyLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUyID0gImFycmF5IjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlID09IHZvaWQgMCA/IFtdIDogdmFsdWU7CiAgICAgIH0KICAgICAgaWYgKHR5cGUyID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYTIucHJvcGVydGllcykpIHsKICAgICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbcHJvcE5hbWUsIHNjaGVtYU9iamVjdF0gb2YgT2JqZWN0LmVudHJpZXMoc2NoZW1hMi5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgaWYgKHByb3BOYW1lID09PSAiJHNjaGVtYSIgfHwgISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoc2NoZW1hT2JqZWN0KSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZhbHVlMiA9IG5ld1ZhbHVlW3Byb3BOYW1lXTsKICAgICAgICAgIGlmICh2YWx1ZTIgPT09IHZvaWQgMCkgewogICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBzY2hlbWFPYmplY3QuZGVmYXVsdDsKICAgICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5U2NoZW1hcyA9IHNjaGVtYU9iamVjdC5vbmVPZiB8fCBzY2hlbWFPYmplY3QuYW55T2Y7CiAgICAgICAgICAgIGNvbnN0IGFsbFByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyh2YWx1ZTIpOwogICAgICAgICAgICBjb25zdCBhZGp1c3RlZFNjaGVtYSA9ICgwLCB1dGlsc18xLmlzSnNvbkFycmF5KShwcm9wZXJ0eVNjaGVtYXMpICYmIHByb3BlcnR5U2NoZW1hcy5maW5kKChzKSA9PiB7CiAgICAgICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHNjaGVtYVR5cGUgPSAoMCwgdXRpbGl0eV8xLmdldFR5cGVzT2ZTY2hlbWEpKHMpOwogICAgICAgICAgICAgIGlmIChzY2hlbWFUeXBlLnNpemUgPT09IDEgJiYgc2NoZW1hVHlwZS5oYXMoIm9iamVjdCIpICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkocy5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKHMucHJvcGVydGllcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gYWxsUHJvcGVydGllcy5ldmVyeSgoa2V5KSA9PiBwcm9wZXJ0aWVzLmluY2x1ZGVzKGtleSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpZiAoYWRqdXN0ZWRTY2hlbWEgJiYgKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShhZGp1c3RlZFNjaGVtYSkpIHsKICAgICAgICAgICAgICBuZXdWYWx1ZVtwcm9wTmFtZV0gPSBhZGRVbmRlZmluZWREZWZhdWx0cyh2YWx1ZTIsIF9wb2ludGVyLCBhZGp1c3RlZFNjaGVtYSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICB9CiAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcG9pbnRlci5qcwp2YXIgcmVxdWlyZV9wb2ludGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWlsZEpzb25Qb2ludGVyID0gYnVpbGRKc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLmpvaW5Kc29uUG9pbnRlciA9IGpvaW5Kc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLnBhcnNlSnNvblBvaW50ZXIgPSBwYXJzZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gYnVpbGRKc29uUG9pbnRlcihmcmFnbWVudHMpIHsKICAgICAgcmV0dXJuICIvIiArIGZyYWdtZW50cy5tYXAoKGYpID0+IHsKICAgICAgICByZXR1cm4gZi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgICB9KS5qb2luKCIvIik7CiAgICB9CiAgICBmdW5jdGlvbiBqb2luSnNvblBvaW50ZXIocm9vdCwgLi4ub3RoZXJzKSB7CiAgICAgIGlmIChyb290ID09ICIvIikgewogICAgICAgIHJldHVybiBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvb3QgKyBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZUpzb25Qb2ludGVyKHBvaW50ZXIpIHsKICAgICAgaWYgKHBvaW50ZXIgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICAgIGlmIChwb2ludGVyLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJSZWxhdGl2ZSBwb2ludGVyOiAiICsgcG9pbnRlcik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvaW50ZXIuc3Vic3RyaW5nKDEpLnNwbGl0KC9cLy8pLm1hcCgoc3RyMikgPT4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+IikpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMKdmFyIHJlcXVpcmVfY29kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuYWRkQ29kZUFyZyA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5uaWwgPSBleHBvcnRzMi5fQ29kZSA9IGV4cG9ydHMyLk5hbWUgPSBleHBvcnRzMi5JREVOVElGSUVSID0gZXhwb3J0czIuX0NvZGVPck5hbWUgPSB2b2lkIDA7CiAgICB2YXIgX0NvZGVPck5hbWUgPSBjbGFzcyB7CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGVPck5hbWUgPSBfQ29kZU9yTmFtZTsKICAgIGV4cG9ydHMyLklERU5USUZJRVIgPSAvXlthLXokX11bYS16JF8wLTldKiQvaTsKICAgIHZhciBOYW1lID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGlmICghZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KHMpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiBuYW1lIG11c3QgYmUgYSB2YWxpZCBpZGVudGlmaWVyIik7CiAgICAgICAgdGhpcy5zdHIgPSBzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB7IFt0aGlzLnN0cl06IDEgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5hbWUgPSBOYW1lOwogICAgdmFyIF9Db2RlID0gY2xhc3MgZXh0ZW5kcyBfQ29kZU9yTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvZGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuX2l0ZW1zID0gdHlwZW9mIGNvZGUgPT09ICJzdHJpbmciID8gW2NvZGVdIDogY29kZTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdHI7CiAgICAgIH0KICAgICAgZW1wdHlTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDEpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX2l0ZW1zWzBdOwogICAgICAgIHJldHVybiBpdGVtID09PSAiIiB8fCBpdGVtID09PSAnIiInOwogICAgICB9CiAgICAgIGdldCBzdHIoKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLl9zdHIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX3N0ciA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgocywgYykgPT4gYCR7c30ke2N9YCwgIiIpOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX25hbWVzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLl9uYW1lcyA9IHRoaXMuX2l0ZW1zLnJlZHVjZSgobmFtZXMsIGMpID0+IHsKICAgICAgICAgIGlmIChjIGluc3RhbmNlb2YgTmFtZSkKICAgICAgICAgICAgbmFtZXNbYy5zdHJdID0gKG5hbWVzW2Muc3RyXSB8fCAwKSArIDE7CiAgICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgICAgfSwge30pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuX0NvZGUgPSBfQ29kZTsKICAgIGV4cG9ydHMyLm5pbCA9IG5ldyBfQ29kZSgiIik7CiAgICBmdW5jdGlvbiBfKHN0cnMsIC4uLmFyZ3MpIHsKICAgICAgY29uc3QgY29kZSA9IFtzdHJzWzBdXTsKICAgICAgbGV0IGkgPSAwOwogICAgICB3aGlsZSAoaSA8IGFyZ3MubGVuZ3RoKSB7CiAgICAgICAgYWRkQ29kZUFyZyhjb2RlLCBhcmdzW2ldKTsKICAgICAgICBjb2RlLnB1c2goc3Ryc1srK2ldKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IF9Db2RlKGNvZGUpOwogICAgfQogICAgZXhwb3J0czIuXyA9IF87CiAgICB2YXIgcGx1cyA9IG5ldyBfQ29kZSgiKyIpOwogICAgZnVuY3Rpb24gc3RyMihzdHJzLCAuLi5hcmdzKSB7CiAgICAgIGNvbnN0IGV4cHIgPSBbc2FmZVN0cmluZ2lmeShzdHJzWzBdKV07CiAgICAgIGxldCBpID0gMDsKICAgICAgd2hpbGUgKGkgPCBhcmdzLmxlbmd0aCkgewogICAgICAgIGV4cHIucHVzaChwbHVzKTsKICAgICAgICBhZGRDb2RlQXJnKGV4cHIsIGFyZ3NbaV0pOwogICAgICAgIGV4cHIucHVzaChwbHVzLCBzYWZlU3RyaW5naWZ5KHN0cnNbKytpXSkpOwogICAgICB9CiAgICAgIG9wdGltaXplKGV4cHIpOwogICAgICByZXR1cm4gbmV3IF9Db2RlKGV4cHIpOwogICAgfQogICAgZXhwb3J0czIuc3RyID0gc3RyMjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHIyYCR7YzF9JHtjMn1gOwogICAgfQogICAgZXhwb3J0czIuc3RyQ29uY2F0ID0gc3RyQ29uY2F0OwogICAgZnVuY3Rpb24gaW50ZXJwb2xhdGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gIm51bWJlciIgfHwgdHlwZW9mIHggPT0gImJvb2xlYW4iIHx8IHggPT09IG51bGwgPyB4IDogc2FmZVN0cmluZ2lmeShBcnJheS5pc0FycmF5KHgpID8geC5qb2luKCIsIikgOiB4KTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmluZ2lmeSh4KSB7CiAgICAgIHJldHVybiBuZXcgX0NvZGUoc2FmZVN0cmluZ2lmeSh4KSk7CiAgICB9CiAgICBleHBvcnRzMi5zdHJpbmdpZnkgPSBzdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBzYWZlU3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHgpLnJlcGxhY2UoL1x1MjAyOC9nLCAiXFx1MjAyOCIpLnJlcGxhY2UoL1x1MjAyOS9nLCAiXFx1MjAyOSIpOwogICAgfQogICAgZXhwb3J0czIuc2FmZVN0cmluZ2lmeSA9IHNhZmVTdHJpbmdpZnk7CiAgICBmdW5jdGlvbiBnZXRQcm9wZXJ0eShrZXkpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkgPyBuZXcgX0NvZGUoYC4ke2tleX1gKSA6IF9gWyR7a2V5fV1gOwogICAgfQogICAgZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBnZXRQcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIGdldEVzbUV4cG9ydE5hbWUoa2V5KSB7CiAgICAgIGlmICh0eXBlb2Yga2V5ID09ICJzdHJpbmciICYmIGV4cG9ydHMyLklERU5USUZJRVIudGVzdChrZXkpKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfQ29kZShgJHtrZXl9YCk7CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBpbnZhbGlkIGV4cG9ydCBuYW1lOiAke2tleX0sIHVzZSBleHBsaWNpdCAkaWQgbmFtZSBtYXBwaW5nYCk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRFc21FeHBvcnROYW1lID0gZ2V0RXNtRXhwb3J0TmFtZTsKICAgIGZ1bmN0aW9uIHJlZ2V4cENvZGUocngpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShyeC50b1N0cmluZygpKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZ2V4cENvZGUgPSByZWdleHBDb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL3Njb3BlLmpzCnZhciByZXF1aXJlX3Njb3BlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBWYWx1ZUVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgQ29kZUdlbjogImNvZGUiIGZvciAke25hbWV9IG5vdCBkZWZpbmVkYCk7CiAgICAgICAgdGhpcy52YWx1ZSA9IG5hbWUudmFsdWU7CiAgICAgIH0KICAgIH07CiAgICB2YXIgVXNlZFZhbHVlU3RhdGU7CiAgICAoZnVuY3Rpb24oVXNlZFZhbHVlU3RhdGUyKSB7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIlN0YXJ0ZWQiXSA9IDBdID0gIlN0YXJ0ZWQiOwogICAgICBVc2VkVmFsdWVTdGF0ZTJbVXNlZFZhbHVlU3RhdGUyWyJDb21wbGV0ZWQiXSA9IDFdID0gIkNvbXBsZXRlZCI7CiAgICB9KShVc2VkVmFsdWVTdGF0ZSB8fCAoZXhwb3J0czIuVXNlZFZhbHVlU3RhdGUgPSBVc2VkVmFsdWVTdGF0ZSA9IHt9KSk7CiAgICBleHBvcnRzMi52YXJLaW5kcyA9IHsKICAgICAgY29uc3Q6IG5ldyBjb2RlXzEuTmFtZSgiY29uc3QiKSwKICAgICAgbGV0OiBuZXcgY29kZV8xLk5hbWUoImxldCIpLAogICAgICB2YXI6IG5ldyBjb2RlXzEuTmFtZSgidmFyIikKICAgIH07CiAgICB2YXIgU2NvcGUgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4ZXMsIHBhcmVudCB9ID0ge30pIHsKICAgICAgICB0aGlzLl9uYW1lcyA9IHt9OwogICAgICAgIHRoaXMuX3ByZWZpeGVzID0gcHJlZml4ZXM7CiAgICAgICAgdGhpcy5fcGFyZW50ID0gcGFyZW50OwogICAgICB9CiAgICAgIHRvTmFtZShuYW1lT3JQcmVmaXgpIHsKICAgICAgICByZXR1cm4gbmFtZU9yUHJlZml4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBuYW1lT3JQcmVmaXggOiB0aGlzLm5hbWUobmFtZU9yUHJlZml4KTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgY29kZV8xLk5hbWUodGhpcy5fbmV3TmFtZShwcmVmaXgpKTsKICAgICAgfQogICAgICBfbmV3TmFtZShwcmVmaXgpIHsKICAgICAgICBjb25zdCBuZyA9IHRoaXMuX25hbWVzW3ByZWZpeF0gfHwgdGhpcy5fbmFtZUdyb3VwKHByZWZpeCk7CiAgICAgICAgcmV0dXJuIGAke3ByZWZpeH0ke25nLmluZGV4Kyt9YDsKICAgICAgfQogICAgICBfbmFtZUdyb3VwKHByZWZpeCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgaWYgKCgoX2IgPSAoX2EgPSB0aGlzLl9wYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5fcHJlZml4ZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5oYXMocHJlZml4KSkgfHwgdGhpcy5fcHJlZml4ZXMgJiYgIXRoaXMuX3ByZWZpeGVzLmhhcyhwcmVmaXgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHByZWZpeCAiJHtwcmVmaXh9IiBpcyBub3QgYWxsb3dlZCBpbiB0aGlzIHNjb3BlYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9uYW1lc1twcmVmaXhdID0geyBwcmVmaXgsIGluZGV4OiAwIH07CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZSA9IFNjb3BlOwogICAgdmFyIFZhbHVlU2NvcGVOYW1lID0gY2xhc3MgZXh0ZW5kcyBjb2RlXzEuTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHByZWZpeCwgbmFtZVN0cikgewogICAgICAgIHN1cGVyKG5hbWVTdHIpOwogICAgICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICB9CiAgICAgIHNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5LCBpdGVtSW5kZXggfSkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLnNjb3BlUGF0aCA9ICgwLCBjb2RlXzEuXylgLiR7bmV3IGNvZGVfMS5OYW1lKHByb3BlcnR5KX1bJHtpdGVtSW5kZXh9XWA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IFZhbHVlU2NvcGVOYW1lOwogICAgdmFyIGxpbmUgPSAoMCwgY29kZV8xLl8pYFxuYDsKICAgIHZhciBWYWx1ZVNjb3BlID0gY2xhc3MgZXh0ZW5kcyBTY29wZSB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMpIHsKICAgICAgICBzdXBlcihvcHRzKTsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9zY29wZSA9IG9wdHMuc2NvcGU7CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/IGxpbmUgOiBjb2RlXzEubmlsIH07CiAgICAgIH0KICAgICAgZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgVmFsdWVTY29wZU5hbWUocHJlZml4LCB0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIHZhbHVlKG5hbWVPclByZWZpeCwgdmFsdWUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHZhbHVlLnJlZiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiByZWYgbXVzdCBiZSBwYXNzZWQgaW4gdmFsdWUiKTsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBjb25zdCB7IHByZWZpeCB9ID0gbmFtZTsKICAgICAgICBjb25zdCB2YWx1ZUtleSA9IChfYSA9IHZhbHVlLmtleSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsdWUucmVmOwogICAgICAgIGxldCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICh2cykgewogICAgICAgICAgY29uc3QgX25hbWUgPSB2cy5nZXQodmFsdWVLZXkpOwogICAgICAgICAgaWYgKF9uYW1lKQogICAgICAgICAgICByZXR1cm4gX25hbWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIH0KICAgICAgICB2cy5zZXQodmFsdWVLZXksIG5hbWUpOwogICAgICAgIGNvbnN0IHMgPSB0aGlzLl9zY29wZVtwcmVmaXhdIHx8ICh0aGlzLl9zY29wZVtwcmVmaXhdID0gW10pOwogICAgICAgIGNvbnN0IGl0ZW1JbmRleCA9IHMubGVuZ3RoOwogICAgICAgIHNbaXRlbUluZGV4XSA9IHZhbHVlLnJlZjsKICAgICAgICBuYW1lLnNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5OiBwcmVmaXgsIGl0ZW1JbmRleCB9KTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XTsKICAgICAgICBpZiAoIXZzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiB2cy5nZXQoa2V5T3JSZWYpOwogICAgICB9CiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUsIHZhbHVlcyA9IHRoaXMuX3ZhbHVlcykgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUuc2NvcGVQYXRoID09PSB2b2lkIDApCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbmFtZSAiJHtuYW1lfSIgaGFzIG5vIHZhbHVlYCk7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVfMS5fKWAke3Njb3BlTmFtZX0ke25hbWUuc2NvcGVQYXRofWA7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKHZhbHVlcyA9IHRoaXMuX3ZhbHVlcywgdXNlZFZhbHVlcywgZ2V0Q29kZSkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUudmFsdWUgPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiBuYW1lLnZhbHVlLmNvZGU7CiAgICAgICAgfSwgdXNlZFZhbHVlcywgZ2V0Q29kZSk7CiAgICAgIH0KICAgICAgX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIHZhbHVlQ29kZSwgdXNlZFZhbHVlcyA9IHt9LCBnZXRDb2RlKSB7CiAgICAgICAgbGV0IGNvZGUgPSBjb2RlXzEubmlsOwogICAgICAgIGZvciAoY29uc3QgcHJlZml4IGluIHZhbHVlcykgewogICAgICAgICAgY29uc3QgdnMgPSB2YWx1ZXNbcHJlZml4XTsKICAgICAgICAgIGlmICghdnMpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgY29uc3QgbmFtZVNldCA9IHVzZWRWYWx1ZXNbcHJlZml4XSA9IHVzZWRWYWx1ZXNbcHJlZml4XSB8fCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgICAgdnMuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAobmFtZVNldC5oYXMobmFtZSkpCiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICBuYW1lU2V0LnNldChuYW1lLCBVc2VkVmFsdWVTdGF0ZS5TdGFydGVkKTsKICAgICAgICAgICAgbGV0IGMgPSB2YWx1ZUNvZGUobmFtZSk7CiAgICAgICAgICAgIGlmIChjKSB7CiAgICAgICAgICAgICAgY29uc3QgZGVmID0gdGhpcy5vcHRzLmVzNSA/IGV4cG9ydHMyLnZhcktpbmRzLnZhciA6IGV4cG9ydHMyLnZhcktpbmRzLmNvbnN0OwogICAgICAgICAgICAgIGNvZGUgPSAoMCwgY29kZV8xLl8pYCR7Y29kZX0ke2RlZn0gJHtuYW1lfSA9ICR7Y307JHt0aGlzLm9wdHMuX259YDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjID0gZ2V0Q29kZSA9PT0gbnVsbCB8fCBnZXRDb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnZXRDb2RlKG5hbWUpKSB7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7Y30ke3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRocm93IG5ldyBWYWx1ZUVycm9yKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLkNvbXBsZXRlZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlID0gVmFsdWVTY29wZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9pbmRleC5qcwp2YXIgcmVxdWlyZV9jb2RlZ2VuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9yID0gZXhwb3J0czIuYW5kID0gZXhwb3J0czIubm90ID0gZXhwb3J0czIuQ29kZUdlbiA9IGV4cG9ydHMyLm9wZXJhdG9ycyA9IGV4cG9ydHMyLnZhcktpbmRzID0gZXhwb3J0czIuVmFsdWVTY29wZU5hbWUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlID0gZXhwb3J0czIuU2NvcGUgPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLmdldFByb3BlcnR5ID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyQ29uY2F0ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBzY29wZV8xID0gcmVxdWlyZV9zY29wZSgpOwogICAgdmFyIGNvZGVfMiA9IHJlcXVpcmVfY29kZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyQ29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0ckNvbmNhdDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdldFByb3BlcnR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLmdldFByb3BlcnR5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ2lmeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHJpbmdpZnk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVnZXhwQ29kZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5yZWdleHBDb2RlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuTmFtZTsKICAgIH0gfSk7CiAgICB2YXIgc2NvcGVfMiA9IHJlcXVpcmVfc2NvcGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5TY29wZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWx1ZVNjb3BlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbHVlU2NvcGVOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi5WYWx1ZVNjb3BlTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ2YXJLaW5kcyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIudmFyS2luZHM7CiAgICB9IH0pOwogICAgZXhwb3J0czIub3BlcmF0b3JzID0gewogICAgICBHVDogbmV3IGNvZGVfMS5fQ29kZSgiPiIpLAogICAgICBHVEU6IG5ldyBjb2RlXzEuX0NvZGUoIj49IiksCiAgICAgIExUOiBuZXcgY29kZV8xLl9Db2RlKCI8IiksCiAgICAgIExURTogbmV3IGNvZGVfMS5fQ29kZSgiPD0iKSwKICAgICAgRVE6IG5ldyBjb2RlXzEuX0NvZGUoIj09PSIpLAogICAgICBORVE6IG5ldyBjb2RlXzEuX0NvZGUoIiE9PSIpLAogICAgICBOT1Q6IG5ldyBjb2RlXzEuX0NvZGUoIiEiKSwKICAgICAgT1I6IG5ldyBjb2RlXzEuX0NvZGUoInx8IiksCiAgICAgIEFORDogbmV3IGNvZGVfMS5fQ29kZSgiJiYiKSwKICAgICAgQUREOiBuZXcgY29kZV8xLl9Db2RlKCIrIikKICAgIH07CiAgICB2YXIgTm9kZSA9IGNsYXNzIHsKICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKF9uYW1lcywgX2NvbnN0YW50cykgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgdmFyIERlZiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKHZhcktpbmQsIG5hbWUsIHJocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucmhzID0gcmhzOwogICAgICB9CiAgICAgIHJlbmRlcih7IGVzNSwgX24gfSkgewogICAgICAgIGNvbnN0IHZhcktpbmQgPSBlczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHRoaXMudmFyS2luZDsKICAgICAgICBjb25zdCByaHMgPSB0aGlzLnJocyA9PT0gdm9pZCAwID8gIiIgOiBgID0gJHt0aGlzLnJoc31gOwogICAgICAgIHJldHVybiBgJHt2YXJLaW5kfSAke3RoaXMubmFtZX0ke3Joc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghbmFtZXNbdGhpcy5uYW1lLnN0cl0pCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKHRoaXMucmhzKQogICAgICAgICAgdGhpcy5yaHMgPSBvcHRpbWl6ZUV4cHIodGhpcy5yaHMsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5yaHMgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyB0aGlzLnJocy5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbiA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5saHMgPSBsaHM7CiAgICAgICAgdGhpcy5yaHMgPSByaHM7CiAgICAgICAgdGhpcy5zaWRlRWZmZWN0cyA9IHNpZGVFZmZlY3RzOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5saHN9ID0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICh0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lICYmICFuYW1lc1t0aGlzLmxocy5zdHJdICYmICF0aGlzLnNpZGVFZmZlY3RzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMucmhzID0gb3B0aW1pemVFeHByKHRoaXMucmhzLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSB0aGlzLmxocyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8ge30gOiB7IC4uLnRoaXMubGhzLm5hbWVzIH07CiAgICAgICAgcmV0dXJuIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy5yaHMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEFzc2lnbk9wID0gY2xhc3MgZXh0ZW5kcyBBc3NpZ24gewogICAgICBjb25zdHJ1Y3RvcihsaHMsIG9wLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgc3VwZXIobGhzLCByaHMsIHNpZGVFZmZlY3RzKTsKICAgICAgICB0aGlzLm9wID0gb3A7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxoc30gJHt0aGlzLm9wfT0gJHt0aGlzLnJoc307YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIExhYmVsID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGFiZWwpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGFiZWwgPSBsYWJlbDsKICAgICAgICB0aGlzLm5hbWVzID0ge307CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxhYmVsfTpgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgQnJlYWsgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsYWJlbCkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sYWJlbCA9IGxhYmVsOwogICAgICAgIHRoaXMubmFtZXMgPSB7fTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsID8gYCAke3RoaXMubGFiZWx9YCA6ICIiOwogICAgICAgIHJldHVybiBgYnJlYWske2xhYmVsfTtgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgVGhyb3cgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihlcnJvcikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYHRocm93ICR7dGhpcy5lcnJvcn07YCArIF9uOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5lcnJvci5uYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBBbnlDb2RlID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX07YCArIF9uOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMuY29kZX1gID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB0aGlzLmNvZGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5jb2RlLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY29kZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IHRoaXMuY29kZS5uYW1lcyA6IHt9OwogICAgICB9CiAgICB9OwogICAgdmFyIFBhcmVudE5vZGUgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcihub2RlcyA9IFtdKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5vZGVzID0gbm9kZXM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5ub2Rlcy5yZWR1Y2UoKGNvZGUsIG4pID0+IGNvZGUgKyBuLnJlbmRlcihvcHRzKSwgIiIpOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV0ub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobikpCiAgICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxLCAuLi5uKTsKICAgICAgICAgIGVsc2UgaWYgKG4pCiAgICAgICAgICAgIG5vZGVzW2ldID0gbjsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgY29uc3QgeyBub2RlcyB9ID0gdGhpczsKICAgICAgICBsZXQgaSA9IG5vZGVzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSB7CiAgICAgICAgICBjb25zdCBuID0gbm9kZXNbaV07CiAgICAgICAgICBpZiAobi5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIHN1YnRyYWN0TmFtZXMobmFtZXMsIG4ubmFtZXMpOwogICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZXMubGVuZ3RoID4gMCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLm5vZGVzLnJlZHVjZSgobmFtZXMsIG4pID0+IGFkZE5hbWVzKG5hbWVzLCBuLm5hbWVzKSwge30pOwogICAgICB9CiAgICB9OwogICAgdmFyIEJsb2NrTm9kZSA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJ7IiArIG9wdHMuX24gKyBzdXBlci5yZW5kZXIob3B0cykgKyAifSIgKyBvcHRzLl9uOwogICAgICB9CiAgICB9OwogICAgdmFyIFJvb3QgPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgfTsKICAgIHZhciBFbHNlID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgfTsKICAgIEVsc2Uua2luZCA9ICJlbHNlIjsKICAgIHZhciBJZiA9IGNsYXNzIF9JZiBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvbmRpdGlvbiwgbm9kZXMpIHsKICAgICAgICBzdXBlcihub2Rlcyk7CiAgICAgICAgdGhpcy5jb25kaXRpb24gPSBjb25kaXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9IGBpZigke3RoaXMuY29uZGl0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmVsc2UpCiAgICAgICAgICBjb2RlICs9ICJlbHNlICIgKyB0aGlzLmVsc2UucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgc3VwZXIub3B0aW1pemVOb2RlcygpOwogICAgICAgIGNvbnN0IGNvbmQgPSB0aGlzLmNvbmRpdGlvbjsKICAgICAgICBpZiAoY29uZCA9PT0gdHJ1ZSkKICAgICAgICAgIHJldHVybiB0aGlzLm5vZGVzOwogICAgICAgIGxldCBlID0gdGhpcy5lbHNlOwogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBjb25zdCBucyA9IGUub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgZSA9IHRoaXMuZWxzZSA9IEFycmF5LmlzQXJyYXkobnMpID8gbmV3IEVsc2UobnMpIDogbnM7CiAgICAgICAgfQogICAgICAgIGlmIChlKSB7CiAgICAgICAgICBpZiAoY29uZCA9PT0gZmFsc2UpCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgX0lmID8gZSA6IGUubm9kZXM7CiAgICAgICAgICBpZiAodGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgICAgcmV0dXJuIG5ldyBfSWYobm90KGNvbmQpLCBlIGluc3RhbmNlb2YgX0lmID8gW2VdIDogZS5ub2Rlcyk7CiAgICAgICAgfQogICAgICAgIGlmIChjb25kID09PSBmYWxzZSB8fCAhdGhpcy5ub2Rlcy5sZW5ndGgpCiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLmVsc2UgPSAoX2EgPSB0aGlzLmVsc2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIGlmICghKHN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgfHwgdGhpcy5lbHNlKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLmNvbmRpdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLmNvbmRpdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLmNvbmRpdGlvbik7CiAgICAgICAgaWYgKHRoaXMuZWxzZSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmVsc2UubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIElmLmtpbmQgPSAiaWYiOwogICAgdmFyIEZvciA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgIH07CiAgICBGb3Iua2luZCA9ICJmb3IiOwogICAgdmFyIEZvckxvb3AgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGl0ZXJhdGlvbikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5pdGVyYXRpb24gPSBpdGVyYXRpb247CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMuaXRlcmF0aW9ufSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLml0ZXJhdGlvbiA9IG9wdGltaXplRXhwcih0aGlzLml0ZXJhdGlvbiwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYXRpb24ubmFtZXMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvclJhbmdlID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3Rvcih2YXJLaW5kLCBuYW1lLCBmcm9tLCB0bykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuZnJvbSA9IGZyb207CiAgICAgICAgdGhpcy50byA9IHRvOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgY29uc3QgdmFyS2luZCA9IG9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiB0aGlzLnZhcktpbmQ7CiAgICAgICAgY29uc3QgeyBuYW1lLCBmcm9tLCB0byB9ID0gdGhpczsKICAgICAgICByZXR1cm4gYGZvcigke3ZhcktpbmR9ICR7bmFtZX09JHtmcm9tfTsgJHtuYW1lfTwke3RvfTsgJHtuYW1lfSsrKWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gYWRkRXhwck5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLmZyb20pOwogICAgICAgIHJldHVybiBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMudG8pOwogICAgICB9CiAgICB9OwogICAgdmFyIEZvckl0ZXIgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKGxvb3AsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxvb3AgPSBsb29wOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLml0ZXJhYmxlID0gaXRlcmFibGU7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGZvcigke3RoaXMudmFyS2luZH0gJHt0aGlzLm5hbWV9ICR7dGhpcy5sb29wfSAke3RoaXMuaXRlcmFibGV9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuaXRlcmFibGUgPSBvcHRpbWl6ZUV4cHIodGhpcy5pdGVyYWJsZSwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiBhZGROYW1lcyhzdXBlci5uYW1lcywgdGhpcy5pdGVyYWJsZS5uYW1lcyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRnVuYyA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgYXJncywgYXN5bmMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5hcmdzID0gYXJnczsKICAgICAgICB0aGlzLmFzeW5jID0gYXN5bmM7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBjb25zdCBfYXN5bmMgPSB0aGlzLmFzeW5jID8gImFzeW5jICIgOiAiIjsKICAgICAgICByZXR1cm4gYCR7X2FzeW5jfWZ1bmN0aW9uICR7dGhpcy5uYW1lfSgke3RoaXMuYXJnc30pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIEZ1bmMua2luZCA9ICJmdW5jIjsKICAgIHZhciBSZXR1cm4gPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAicmV0dXJuICIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBSZXR1cm4ua2luZCA9ICJyZXR1cm4iOwogICAgdmFyIFRyeSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBsZXQgY29kZSA9ICJ0cnkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmNhdGNoKQogICAgICAgICAgY29kZSArPSB0aGlzLmNhdGNoLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5maW5hbGx5KQogICAgICAgICAgY29kZSArPSB0aGlzLmZpbmFsbHkucmVuZGVyKG9wdHMpOwogICAgICAgIHJldHVybiBjb2RlOwogICAgICB9CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgKF9hID0gdGhpcy5jYXRjaCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAoX2IgPSB0aGlzLmZpbmFsbHkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYSA9IHRoaXMuY2F0Y2gpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIChfYiA9IHRoaXMuZmluYWxseSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gc3VwZXIubmFtZXM7CiAgICAgICAgaWYgKHRoaXMuY2F0Y2gpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5jYXRjaC5uYW1lcyk7CiAgICAgICAgaWYgKHRoaXMuZmluYWxseSkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmZpbmFsbHkubmFtZXMpOwogICAgICAgIHJldHVybiBuYW1lczsKICAgICAgfQogICAgfTsKICAgIHZhciBDYXRjaCA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IoZXJyb3IpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgY2F0Y2goJHt0aGlzLmVycm9yfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgQ2F0Y2gua2luZCA9ICJjYXRjaCI7CiAgICB2YXIgRmluYWxseSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gImZpbmFsbHkiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgRmluYWxseS5raW5kID0gImZpbmFsbHkiOwogICAgdmFyIENvZGVHZW4gPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGV4dFNjb3BlLCBvcHRzID0ge30pIHsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9ibG9ja1N0YXJ0cyA9IFtdOwogICAgICAgIHRoaXMuX2NvbnN0YW50cyA9IHt9OwogICAgICAgIHRoaXMub3B0cyA9IHsgLi4ub3B0cywgX246IG9wdHMubGluZXMgPyAiXG4iIDogIiIgfTsKICAgICAgICB0aGlzLl9leHRTY29wZSA9IGV4dFNjb3BlOwogICAgICAgIHRoaXMuX3Njb3BlID0gbmV3IHNjb3BlXzEuU2NvcGUoeyBwYXJlbnQ6IGV4dFNjb3BlIH0pOwogICAgICAgIHRoaXMuX25vZGVzID0gW25ldyBSb290KCldOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnJlbmRlcih0aGlzLm9wdHMpOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgdW5pcXVlIG5hbWUgaW4gdGhlIGludGVybmFsIHNjb3BlCiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Njb3BlLm5hbWUocHJlZml4KTsKICAgICAgfQogICAgICAvLyByZXNlcnZlcyB1bmlxdWUgbmFtZSBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUKICAgICAgc2NvcGVOYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5uYW1lKHByZWZpeCk7CiAgICAgIH0KICAgICAgLy8gcmVzZXJ2ZXMgdW5pcXVlIG5hbWUgaW4gdGhlIGV4dGVybmFsIHNjb3BlIGFuZCBhc3NpZ25zIHZhbHVlIHRvIGl0CiAgICAgIHNjb3BlVmFsdWUocHJlZml4T3JOYW1lLCB2YWx1ZSkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9leHRTY29wZS52YWx1ZShwcmVmaXhPck5hbWUsIHZhbHVlKTsKICAgICAgICBjb25zdCB2cyA9IHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gfHwgKHRoaXMuX3ZhbHVlc1tuYW1lLnByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKTsKICAgICAgICB2cy5hZGQobmFtZSk7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgIH0KICAgICAgZ2V0U2NvcGVWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLmdldFZhbHVlKHByZWZpeCwga2V5T3JSZWYpOwogICAgICB9CiAgICAgIC8vIHJldHVybiBjb2RlIHRoYXQgYXNzaWducyB2YWx1ZXMgaW4gdGhlIGV4dGVybmFsIHNjb3BlIHRvIHRoZSBuYW1lcyB0aGF0IGFyZSB1c2VkIGludGVybmFsbHkKICAgICAgLy8gKHNhbWUgbmFtZXMgdGhhdCB3ZXJlIHJldHVybmVkIGJ5IGdlbi5zY29wZU5hbWUgb3IgZ2VuLnNjb3BlVmFsdWUpCiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuc2NvcGVSZWZzKHNjb3BlTmFtZSwgdGhpcy5fdmFsdWVzKTsKICAgICAgfQogICAgICBzY29wZUNvZGUoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLnNjb3BlQ29kZSh0aGlzLl92YWx1ZXMpOwogICAgICB9CiAgICAgIF9kZWYodmFyS2luZCwgbmFtZU9yUHJlZml4LCByaHMsIGNvbnN0YW50KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGlmIChyaHMgIT09IHZvaWQgMCAmJiBjb25zdGFudCkKICAgICAgICAgIHRoaXMuX2NvbnN0YW50c1tuYW1lLnN0cl0gPSByaHM7CiAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IERlZih2YXJLaW5kLCBuYW1lLCByaHMpKTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICAvLyBgY29uc3RgIGRlY2xhcmF0aW9uIChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgY29uc3QobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy5jb25zdCwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYGxldGAgZGVjbGFyYXRpb24gd2l0aCBvcHRpb25hbCBhc3NpZ25tZW50IChgdmFyYCBpbiBlczUgbW9kZSkKICAgICAgbGV0KG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMubGV0LCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBgdmFyYCBkZWNsYXJhdGlvbiB3aXRoIG9wdGlvbmFsIGFzc2lnbm1lbnQKICAgICAgdmFyKG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMudmFyLCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBhc3NpZ25tZW50IGNvZGUKICAgICAgYXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQXNzaWduKGxocywgcmhzLCBzaWRlRWZmZWN0cykpOwogICAgICB9CiAgICAgIC8vIGArPWAgY29kZQogICAgICBhZGQobGhzLCByaHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEFzc2lnbk9wKGxocywgZXhwb3J0czIub3BlcmF0b3JzLkFERCwgcmhzKSk7CiAgICAgIH0KICAgICAgLy8gYXBwZW5kcyBwYXNzZWQgU2FmZUV4cHIgdG8gY29kZSBvciBleGVjdXRlcyBCbG9jawogICAgICBjb2RlKGMpIHsKICAgICAgICBpZiAodHlwZW9mIGMgPT0gImZ1bmN0aW9uIikKICAgICAgICAgIGMoKTsKICAgICAgICBlbHNlIGlmIChjICE9PSBjb2RlXzEubmlsKQogICAgICAgICAgdGhpcy5fbGVhZk5vZGUobmV3IEFueUNvZGUoYykpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIHJldHVybnMgY29kZSBmb3Igb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSBwYXNzZWQgYXJndW1lbnQgbGlzdCBvZiBrZXktdmFsdWUgcGFpcnMKICAgICAgb2JqZWN0KC4uLmtleVZhbHVlcykgewogICAgICAgIGNvbnN0IGNvZGUgPSBbInsiXTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBrZXlWYWx1ZXMpIHsKICAgICAgICAgIGlmIChjb2RlLmxlbmd0aCA+IDEpCiAgICAgICAgICAgIGNvZGUucHVzaCgiLCIpOwogICAgICAgICAgY29kZS5wdXNoKGtleSk7CiAgICAgICAgICBpZiAoa2V5ICE9PSB2YWx1ZSB8fCB0aGlzLm9wdHMuZXM1KSB7CiAgICAgICAgICAgIGNvZGUucHVzaCgiOiIpOwogICAgICAgICAgICAoMCwgY29kZV8xLmFkZENvZGVBcmcpKGNvZGUsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29kZS5wdXNoKCJ9Iik7CiAgICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuX0NvZGUoY29kZSk7CiAgICAgIH0KICAgICAgLy8gYGlmYCBjbGF1c2UgKG9yIHN0YXRlbWVudCBpZiBgdGhlbkJvZHlgIGFuZCwgb3B0aW9uYWxseSwgYGVsc2VCb2R5YCBhcmUgcGFzc2VkKQogICAgICBpZihjb25kaXRpb24sIHRoZW5Cb2R5LCBlbHNlQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShuZXcgSWYoY29uZGl0aW9uKSk7CiAgICAgICAgaWYgKHRoZW5Cb2R5ICYmIGVsc2VCb2R5KSB7CiAgICAgICAgICB0aGlzLmNvZGUodGhlbkJvZHkpLmVsc2UoKS5jb2RlKGVsc2VCb2R5KS5lbmRJZigpOwogICAgICAgIH0gZWxzZSBpZiAodGhlbkJvZHkpIHsKICAgICAgICAgIHRoaXMuY29kZSh0aGVuQm9keSkuZW5kSWYoKTsKICAgICAgICB9IGVsc2UgaWYgKGVsc2VCb2R5KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJlbHNlIiBib2R5IHdpdGhvdXQgInRoZW4iIGJvZHknKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYGVsc2UgaWZgIGNsYXVzZSAtIGludmFsaWQgd2l0aG91dCBgaWZgIG9yIGFmdGVyIGBlbHNlYCBjbGF1c2VzCiAgICAgIGVsc2VJZihjb25kaXRpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IElmKGNvbmRpdGlvbikpOwogICAgICB9CiAgICAgIC8vIGBlbHNlYCBjbGF1c2UgLSBvbmx5IHZhbGlkIGFmdGVyIGBpZmAgb3IgYGVsc2UgaWZgIGNsYXVzZXMKICAgICAgZWxzZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZWxzZU5vZGUobmV3IEVsc2UoKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBpZmAgc3RhdGVtZW50IChuZWVkZWQgaWYgZ2VuLmlmIHdhcyB1c2VkIG9ubHkgd2l0aCBjb25kaXRpb24pCiAgICAgIGVuZElmKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoSWYsIEVsc2UpOwogICAgICB9CiAgICAgIF9mb3Iobm9kZSwgZm9yQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICBpZiAoZm9yQm9keSkKICAgICAgICAgIHRoaXMuY29kZShmb3JCb2R5KS5lbmRGb3IoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBhIGdlbmVyaWMgYGZvcmAgY2xhdXNlIChvciBzdGF0ZW1lbnQgaWYgYGZvckJvZHlgIGlzIHBhc3NlZCkKICAgICAgZm9yKGl0ZXJhdGlvbiwgZm9yQm9keSkgewogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckxvb3AoaXRlcmF0aW9uKSwgZm9yQm9keSk7CiAgICAgIH0KICAgICAgLy8gYGZvcmAgc3RhdGVtZW50IGZvciBhIHJhbmdlIG9mIHZhbHVlcwogICAgICBmb3JSYW5nZShuYW1lT3JQcmVmaXgsIGZyb20sIHRvLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5sZXQpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9yUmFuZ2UodmFyS2luZCwgbmFtZSwgZnJvbSwgdG8pLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBgZm9yLW9mYCBzdGF0ZW1lbnQgKGluIGVzNSBtb2RlIHJlcGxhY2Ugd2l0aCBhIG5vcm1hbCBmb3IgbG9vcCkKICAgICAgZm9yT2YobmFtZU9yUHJlZml4LCBpdGVyYWJsZSwgZm9yQm9keSwgdmFyS2luZCA9IHNjb3BlXzEudmFyS2luZHMuY29uc3QpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgaWYgKHRoaXMub3B0cy5lczUpIHsKICAgICAgICAgIGNvbnN0IGFyciA9IGl0ZXJhYmxlIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBpdGVyYWJsZSA6IHRoaXMudmFyKCJfYXJyIiwgaXRlcmFibGUpOwogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yUmFuZ2UoIl9pIiwgMCwgKDAsIGNvZGVfMS5fKWAke2Fycn0ubGVuZ3RoYCwgKGkpID0+IHsKICAgICAgICAgICAgdGhpcy52YXIobmFtZSwgKDAsIGNvZGVfMS5fKWAke2Fycn1bJHtpfV1gKTsKICAgICAgICAgICAgZm9yQm9keShuYW1lKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JJdGVyKCJvZiIsIHZhcktpbmQsIG5hbWUsIGl0ZXJhYmxlKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gYGZvci1pbmAgc3RhdGVtZW50LgogICAgICAvLyBXaXRoIG9wdGlvbiBgb3duUHJvcGVydGllc2AgcmVwbGFjZWQgd2l0aCBhIGBmb3Itb2ZgIGxvb3AgZm9yIG9iamVjdCBrZXlzCiAgICAgIGZvckluKG5hbWVPclByZWZpeCwgb2JqLCBmb3JCb2R5LCB2YXJLaW5kID0gdGhpcy5vcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogc2NvcGVfMS52YXJLaW5kcy5jb25zdCkgewogICAgICAgIGlmICh0aGlzLm9wdHMub3duUHJvcGVydGllcykgewogICAgICAgICAgcmV0dXJuIHRoaXMuZm9yT2YobmFtZU9yUHJlZml4LCAoMCwgY29kZV8xLl8pYE9iamVjdC5rZXlzKCR7b2JqfSlgLCBmb3JCb2R5KTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckl0ZXIoImluIiwgdmFyS2luZCwgbmFtZSwgb2JqKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gZW5kIGBmb3JgIGxvb3AKICAgICAgZW5kRm9yKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRm9yKTsKICAgICAgfQogICAgICAvLyBgbGFiZWxgIHN0YXRlbWVudAogICAgICBsYWJlbChsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgTGFiZWwobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgYnJlYWtgIHN0YXRlbWVudAogICAgICBicmVhayhsYWJlbCkgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQnJlYWsobGFiZWwpKTsKICAgICAgfQogICAgICAvLyBgcmV0dXJuYCBzdGF0ZW1lbnQKICAgICAgcmV0dXJuKHZhbHVlKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBSZXR1cm4oKTsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgdGhpcy5jb2RlKHZhbHVlKTsKICAgICAgICBpZiAobm9kZS5ub2Rlcy5sZW5ndGggIT09IDEpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJyZXR1cm4iIHNob3VsZCBoYXZlIG9uZSBub2RlJyk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShSZXR1cm4pOwogICAgICB9CiAgICAgIC8vIGB0cnlgIHN0YXRlbWVudAogICAgICB0cnkodHJ5Qm9keSwgY2F0Y2hDb2RlLCBmaW5hbGx5Q29kZSkgewogICAgICAgIGlmICghY2F0Y2hDb2RlICYmICFmaW5hbGx5Q29kZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogInRyeSIgd2l0aG91dCAiY2F0Y2giIGFuZCAiZmluYWxseSInKTsKICAgICAgICBjb25zdCBub2RlID0gbmV3IFRyeSgpOwogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICB0aGlzLmNvZGUodHJ5Qm9keSk7CiAgICAgICAgaWYgKGNhdGNoQ29kZSkgewogICAgICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLm5hbWUoImUiKTsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5jYXRjaCA9IG5ldyBDYXRjaChlcnJvcik7CiAgICAgICAgICBjYXRjaENvZGUoZXJyb3IpOwogICAgICAgIH0KICAgICAgICBpZiAoZmluYWxseUNvZGUpIHsKICAgICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbm9kZS5maW5hbGx5ID0gbmV3IEZpbmFsbHkoKTsKICAgICAgICAgIHRoaXMuY29kZShmaW5hbGx5Q29kZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoQ2F0Y2gsIEZpbmFsbHkpOwogICAgICB9CiAgICAgIC8vIGB0aHJvd2Agc3RhdGVtZW50CiAgICAgIHRocm93KGVycm9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBUaHJvdyhlcnJvcikpOwogICAgICB9CiAgICAgIC8vIHN0YXJ0IHNlbGYtYmFsYW5jaW5nIGJsb2NrCiAgICAgIGJsb2NrKGJvZHksIG5vZGVDb3VudCkgewogICAgICAgIHRoaXMuX2Jsb2NrU3RhcnRzLnB1c2godGhpcy5fbm9kZXMubGVuZ3RoKTsKICAgICAgICBpZiAoYm9keSkKICAgICAgICAgIHRoaXMuY29kZShib2R5KS5lbmRCbG9jayhub2RlQ291bnQpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGVuZCB0aGUgY3VycmVudCBzZWxmLWJhbGFuY2luZyBibG9jawogICAgICBlbmRCbG9jayhub2RlQ291bnQpIHsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLl9ibG9ja1N0YXJ0cy5wb3AoKTsKICAgICAgICBpZiAobGVuID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5vdCBpbiBzZWxmLWJhbGFuY2luZyBibG9jayIpOwogICAgICAgIGNvbnN0IHRvQ2xvc2UgPSB0aGlzLl9ub2Rlcy5sZW5ndGggLSBsZW47CiAgICAgICAgaWYgKHRvQ2xvc2UgPCAwIHx8IG5vZGVDb3VudCAhPT0gdm9pZCAwICYmIHRvQ2xvc2UgIT09IG5vZGVDb3VudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiB3cm9uZyBudW1iZXIgb2Ygbm9kZXM6ICR7dG9DbG9zZX0gdnMgJHtub2RlQ291bnR9IGV4cGVjdGVkYCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX25vZGVzLmxlbmd0aCA9IGxlbjsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBgZnVuY3Rpb25gIGhlYWRpbmcgKG9yIGRlZmluaXRpb24gaWYgZnVuY0JvZHkgaXMgcGFzc2VkKQogICAgICBmdW5jKG5hbWUsIGFyZ3MgPSBjb2RlXzEubmlsLCBhc3luYywgZnVuY0JvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobmV3IEZ1bmMobmFtZSwgYXJncywgYXN5bmMpKTsKICAgICAgICBpZiAoZnVuY0JvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoZnVuY0JvZHkpLmVuZEZ1bmMoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBlbmQgZnVuY3Rpb24gZGVmaW5pdGlvbgogICAgICBlbmRGdW5jKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoRnVuYyk7CiAgICAgIH0KICAgICAgb3B0aW1pemUobiA9IDEpIHsKICAgICAgICB3aGlsZSAobi0tID4gMCkgewogICAgICAgICAgdGhpcy5fcm9vdC5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICB0aGlzLl9yb290Lm9wdGltaXplTmFtZXModGhpcy5fcm9vdC5uYW1lcywgdGhpcy5fY29uc3RhbnRzKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2xlYWZOb2RlKG5vZGUpIHsKICAgICAgICB0aGlzLl9jdXJyTm9kZS5ub2Rlcy5wdXNoKG5vZGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF9ibG9ja05vZGUobm9kZSkgewogICAgICAgIHRoaXMuX2N1cnJOb2RlLm5vZGVzLnB1c2gobm9kZSk7CiAgICAgICAgdGhpcy5fbm9kZXMucHVzaChub2RlKTsKICAgICAgfQogICAgICBfZW5kQmxvY2tOb2RlKE4xLCBOMikgewogICAgICAgIGNvbnN0IG4gPSB0aGlzLl9jdXJyTm9kZTsKICAgICAgICBpZiAobiBpbnN0YW5jZW9mIE4xIHx8IE4yICYmIG4gaW5zdGFuY2VvZiBOMikgewogICAgICAgICAgdGhpcy5fbm9kZXMucG9wKCk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBub3QgaW4gYmxvY2sgIiR7TjIgPyBgJHtOMS5raW5kfS8ke04yLmtpbmR9YCA6IE4xLmtpbmR9ImApOwogICAgICB9CiAgICAgIF9lbHNlTm9kZShub2RlKSB7CiAgICAgICAgY29uc3QgbiA9IHRoaXMuX2N1cnJOb2RlOwogICAgICAgIGlmICghKG4gaW5zdGFuY2VvZiBJZikpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogImVsc2UiIHdpdGhvdXQgImlmIicpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG4uZWxzZSA9IG5vZGU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IF9yb290KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ub2Rlc1swXTsKICAgICAgfQogICAgICBnZXQgX2N1cnJOb2RlKCkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgcmV0dXJuIG5zW25zLmxlbmd0aCAtIDFdOwogICAgICB9CiAgICAgIHNldCBfY3Vyck5vZGUobm9kZSkgewogICAgICAgIGNvbnN0IG5zID0gdGhpcy5fbm9kZXM7CiAgICAgICAgbnNbbnMubGVuZ3RoIC0gMV0gPSBub2RlOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29kZUdlbiA9IENvZGVHZW47CiAgICBmdW5jdGlvbiBhZGROYW1lcyhuYW1lcywgZnJvbSkgewogICAgICBmb3IgKGNvbnN0IG4gaW4gZnJvbSkKICAgICAgICBuYW1lc1tuXSA9IChuYW1lc1tuXSB8fCAwKSArIChmcm9tW25dIHx8IDApOwogICAgICByZXR1cm4gbmFtZXM7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFeHByTmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgcmV0dXJuIGZyb20gaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyBhZGROYW1lcyhuYW1lcywgZnJvbS5uYW1lcykgOiBuYW1lczsKICAgIH0KICAgIGZ1bmN0aW9uIG9wdGltaXplRXhwcihleHByLCBuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgIGlmIChleHByIGluc3RhbmNlb2YgY29kZV8xLk5hbWUpCiAgICAgICAgcmV0dXJuIHJlcGxhY2VOYW1lKGV4cHIpOwogICAgICBpZiAoIWNhbk9wdGltaXplKGV4cHIpKQogICAgICAgIHJldHVybiBleHByOwogICAgICByZXR1cm4gbmV3IGNvZGVfMS5fQ29kZShleHByLl9pdGVtcy5yZWR1Y2UoKGl0ZW1zLCBjKSA9PiB7CiAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSkKICAgICAgICAgIGMgPSByZXBsYWNlTmFtZShjKTsKICAgICAgICBpZiAoYyBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSkKICAgICAgICAgIGl0ZW1zLnB1c2goLi4uYy5faXRlbXMpOwogICAgICAgIGVsc2UKICAgICAgICAgIGl0ZW1zLnB1c2goYyk7CiAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICB9LCBbXSkpOwogICAgICBmdW5jdGlvbiByZXBsYWNlTmFtZShuKSB7CiAgICAgICAgY29uc3QgYyA9IGNvbnN0YW50c1tuLnN0cl07CiAgICAgICAgaWYgKGMgPT09IHZvaWQgMCB8fCBuYW1lc1tuLnN0cl0gIT09IDEpCiAgICAgICAgICByZXR1cm4gbjsKICAgICAgICBkZWxldGUgbmFtZXNbbi5zdHJdOwogICAgICAgIHJldHVybiBjOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbk9wdGltaXplKGUpIHsKICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZSAmJiBlLl9pdGVtcy5zb21lKChjKSA9PiBjIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgJiYgbmFtZXNbYy5zdHJdID09PSAxICYmIGNvbnN0YW50c1tjLnN0cl0gIT09IHZvaWQgMCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN1YnRyYWN0TmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgZm9yIChjb25zdCBuIGluIGZyb20pCiAgICAgICAgbmFtZXNbbl0gPSAobmFtZXNbbl0gfHwgMCkgLSAoZnJvbVtuXSB8fCAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIG5vdCh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgdHlwZW9mIHggPT0gIm51bWJlciIgfHwgeCA9PT0gbnVsbCA/ICF4IDogKDAsIGNvZGVfMS5fKWAhJHtwYXIoeCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLm5vdCA9IG5vdDsKICAgIHZhciBhbmRDb2RlID0gbWFwcGVuZChleHBvcnRzMi5vcGVyYXRvcnMuQU5EKTsKICAgIGZ1bmN0aW9uIGFuZCguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShhbmRDb2RlKTsKICAgIH0KICAgIGV4cG9ydHMyLmFuZCA9IGFuZDsKICAgIHZhciBvckNvZGUgPSBtYXBwZW5kKGV4cG9ydHMyLm9wZXJhdG9ycy5PUik7CiAgICBmdW5jdGlvbiBvciguLi5hcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLnJlZHVjZShvckNvZGUpOwogICAgfQogICAgZXhwb3J0czIub3IgPSBvcjsKICAgIGZ1bmN0aW9uIG1hcHBlbmQob3ApIHsKICAgICAgcmV0dXJuICh4LCB5KSA9PiB4ID09PSBjb2RlXzEubmlsID8geSA6IHkgPT09IGNvZGVfMS5uaWwgPyB4IDogKDAsIGNvZGVfMS5fKWAke3Bhcih4KX0gJHtvcH0gJHtwYXIoeSl9YDsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcih4KSB7CiAgICAgIHJldHVybiB4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyB4IDogKDAsIGNvZGVfMS5fKWAoJHt4fSlgOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdXRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZXhwb3J0czIuVHlwZSA9IGV4cG9ydHMyLnVzZUZ1bmMgPSBleHBvcnRzMi5zZXRFdmFsdWF0ZWQgPSBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gZXhwb3J0czIuZWFjaEl0ZW0gPSBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSBleHBvcnRzMi5zY2hlbWFSZWZPclZhbCA9IGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzQnV0UmVmID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXMgPSBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gZXhwb3J0czIudG9IYXNoID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgZnVuY3Rpb24gdG9IYXNoKGFycikgewogICAgICBjb25zdCBoYXNoID0ge307CiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnIpCiAgICAgICAgaGFzaFtpdGVtXSA9IHRydWU7CiAgICAgIHJldHVybiBoYXNoOwogICAgfQogICAgZXhwb3J0czIudG9IYXNoID0gdG9IYXNoOwogICAgZnVuY3Rpb24gYWx3YXlzVmFsaWRTY2hlbWEoaXQsIHNjaGVtYTIpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hMjsKICAgICAgaWYgKE9iamVjdC5rZXlzKHNjaGVtYTIpLmxlbmd0aCA9PT0gMCkKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgY2hlY2tVbmtub3duUnVsZXMoaXQsIHNjaGVtYTIpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIGl0LnNlbGYuUlVMRVMuYWxsKTsKICAgIH0KICAgIGV4cG9ydHMyLmFsd2F5c1ZhbGlkU2NoZW1hID0gYWx3YXlzVmFsaWRTY2hlbWE7CiAgICBmdW5jdGlvbiBjaGVja1Vua25vd25SdWxlcyhpdCwgc2NoZW1hMiA9IGl0LnNjaGVtYSkgewogICAgICBjb25zdCB7IG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgaWYgKCFvcHRzLnN0cmljdFNjaGVtYSkKICAgICAgICByZXR1cm47CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmICghcnVsZXNba2V5XSkKICAgICAgICAgIGNoZWNrU3RyaWN0TW9kZShpdCwgYHVua25vd24ga2V5d29yZDogIiR7a2V5fSJgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tVbmtub3duUnVsZXMgPSBjaGVja1Vua25vd25SdWxlczsKICAgIGZ1bmN0aW9uIHNjaGVtYUhhc1J1bGVzKHNjaGVtYTIsIHJ1bGVzKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWEyOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKQogICAgICAgIGlmIChydWxlc1trZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzID0gc2NoZW1hSGFzUnVsZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFIYXNSdWxlc0J1dFJlZihzY2hlbWEyLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiAhc2NoZW1hMjsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYTIsIGtleXdvcmQsICRkYXRhKSB7CiAgICAgIGlmICghJGRhdGEpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gIm51bWJlciIgfHwgdHlwZW9mIHNjaGVtYTIgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciKQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWEyfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cjIpIHsKICAgICAgcmV0dXJuIHVuZXNjYXBlSnNvblBvaW50ZXIoZGVjb2RlVVJJQ29tcG9uZW50KHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlRnJhZ21lbnQgPSB1bmVzY2FwZUZyYWdtZW50OwogICAgZnVuY3Rpb24gZXNjYXBlRnJhZ21lbnQoc3RyMikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cjIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXNjYXBlRnJhZ21lbnQ7CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUG9pbnRlcihzdHIyKSB7CiAgICAgIGlmICh0eXBlb2Ygc3RyMiA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyMn1gOwogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlSnNvblBvaW50ZXIgPSBlc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIHVuZXNjYXBlSnNvblBvaW50ZXIoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5yZXBsYWNlKC9+MS9nLCAiLyIpLnJlcGxhY2UoL34wL2csICJ+Iik7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUpzb25Qb2ludGVyID0gdW5lc2NhcGVKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIGVhY2hJdGVtKHhzLCBmKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHhzKSkgewogICAgICAgIGZvciAoY29uc3QgeCBvZiB4cykKICAgICAgICAgIGYoeCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZih4cyk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVhY2hJdGVtID0gZWFjaEl0ZW07CiAgICBmdW5jdGlvbiBtYWtlTWVyZ2VFdmFsdWF0ZWQoeyBtZXJnZU5hbWVzLCBtZXJnZVRvTmFtZSwgbWVyZ2VWYWx1ZXMsIHJlc3VsdFRvTmFtZSB9KSB7CiAgICAgIHJldHVybiAoZ2VuLCBmcm9tLCB0bywgdG9OYW1lKSA9PiB7CiAgICAgICAgY29uc3QgcmVzID0gdG8gPT09IHZvaWQgMCA/IGZyb20gOiB0byBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKGZyb20gaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IG1lcmdlTmFtZXMoZ2VuLCBmcm9tLCB0bykgOiBtZXJnZVRvTmFtZShnZW4sIGZyb20sIHRvKSwgdG8pIDogZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gKG1lcmdlVG9OYW1lKGdlbiwgdG8sIGZyb20pLCBmcm9tKSA6IG1lcmdlVmFsdWVzKGZyb20sIHRvKTsKICAgICAgICByZXR1cm4gdG9OYW1lID09PSBjb2RlZ2VuXzEuTmFtZSAmJiAhKHJlcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSA/IHJlc3VsdFRvTmFtZShnZW4sIHJlcykgOiByZXM7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUV2YWx1YXRlZCA9IHsKICAgICAgcHJvcHM6IG1ha2VNZXJnZUV2YWx1YXRlZCh7CiAgICAgICAgbWVyZ2VOYW1lczogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlICYmICR7ZnJvbX0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCB0cnVlKSwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke3RvfSB8fCB7fWApLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QuYXNzaWduKCR7dG99LCAke2Zyb219KWApKTsKICAgICAgICB9KSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gewogICAgICAgICAgaWYgKGZyb20gPT09IHRydWUpIHsKICAgICAgICAgICAgZ2VuLmFzc2lnbih0bywgdHJ1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCk7CiAgICAgICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHRvLCBmcm9tKTsKICAgICAgICAgIH0KICAgICAgICB9KSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IHsgLi4uZnJvbSwgLi4udG8gfSwKICAgICAgICByZXN1bHRUb05hbWU6IGV2YWx1YXRlZFByb3BzVG9OYW1lCiAgICAgIH0pLAogICAgICBpdGVtczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgKDAsIGNvZGVnZW5fMS5fKWAke2Zyb219ID09PSB0cnVlID8gdHJ1ZSA6ICR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVRvTmFtZTogKGdlbiwgZnJvbSwgdG8pID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7dG99ICE9PSB0cnVlYCwgKCkgPT4gZ2VuLmFzc2lnbih0bywgZnJvbSA9PT0gdHJ1ZSA/IHRydWUgOiAoMCwgY29kZWdlbl8xLl8pYCR7dG99ID4gJHtmcm9tfSA/ICR7dG99IDogJHtmcm9tfWApKSwKICAgICAgICBtZXJnZVZhbHVlczogKGZyb20sIHRvKSA9PiBmcm9tID09PSB0cnVlID8gdHJ1ZSA6IE1hdGgubWF4KGZyb20sIHRvKSwKICAgICAgICByZXN1bHRUb05hbWU6IChnZW4sIGl0ZW1zKSA9PiBnZW4udmFyKCJpdGVtcyIsIGl0ZW1zKQogICAgICB9KQogICAgfTsKICAgIGZ1bmN0aW9uIGV2YWx1YXRlZFByb3BzVG9OYW1lKGdlbiwgcHMpIHsKICAgICAgaWYgKHBzID09PSB0cnVlKQogICAgICAgIHJldHVybiBnZW4udmFyKCJwcm9wcyIsIHRydWUpOwogICAgICBjb25zdCBwcm9wcyA9IGdlbi52YXIoInByb3BzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICBpZiAocHMgIT09IHZvaWQgMCkKICAgICAgICBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpOwogICAgICByZXR1cm4gcHJvcHM7CiAgICB9CiAgICBleHBvcnRzMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSA9IGV2YWx1YXRlZFByb3BzVG9OYW1lOwogICAgZnVuY3Rpb24gc2V0RXZhbHVhdGVkKGdlbiwgcHJvcHMsIHBzKSB7CiAgICAgIE9iamVjdC5rZXlzKHBzKS5mb3JFYWNoKChwKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wc30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHApfWAsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IHNldEV2YWx1YXRlZDsKICAgIHZhciBzbmlwcGV0cyA9IHt9OwogICAgZnVuY3Rpb24gdXNlRnVuYyhnZW4sIGYpIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIHJlZjogZiwKICAgICAgICBjb2RlOiBzbmlwcGV0c1tmLmNvZGVdIHx8IChzbmlwcGV0c1tmLmNvZGVdID0gbmV3IGNvZGVfMS5fQ29kZShmLmNvZGUpKQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzZUZ1bmMgPSB1c2VGdW5jOwogICAgdmFyIFR5cGU7CiAgICAoZnVuY3Rpb24oVHlwZTIpIHsKICAgICAgVHlwZTJbVHlwZTJbIk51bSJdID0gMF0gPSAiTnVtIjsKICAgICAgVHlwZTJbVHlwZTJbIlN0ciJdID0gMV0gPSAiU3RyIjsKICAgIH0pKFR5cGUgfHwgKGV4cG9ydHMyLlR5cGUgPSBUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldEVycm9yUGF0aChkYXRhUHJvcCwgZGF0YVByb3BUeXBlLCBqc1Byb3BlcnR5U3ludGF4KSB7CiAgICAgIGlmIChkYXRhUHJvcCBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSB7CiAgICAgICAgY29uc3QgaXNOdW1iZXIgPSBkYXRhUHJvcFR5cGUgPT09IFR5cGUuTnVtOwogICAgICAgIHJldHVybiBqc1Byb3BlcnR5U3ludGF4ID8gaXNOdW1iZXIgPyAoMCwgY29kZWdlbl8xLl8pYCJbIiArICR7ZGF0YVByb3B9ICsgIl0iYCA6ICgwLCBjb2RlZ2VuXzEuXylgIlsnIiArICR7ZGF0YVByb3B9ICsgIiddImAgOiBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIi8iICsgJHtkYXRhUHJvcH1gIDogKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfS5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1xcLy9nLCAifjEiKWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyAoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCkudG9TdHJpbmcoKSA6ICIvIiArIGVzY2FwZUpzb25Qb2ludGVyKGRhdGFQcm9wKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVycm9yUGF0aCA9IGdldEVycm9yUGF0aDsKICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0TW9kZShpdCwgbXNnLCBtb2RlID0gaXQub3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgaWYgKCFtb2RlKQogICAgICAgIHJldHVybjsKICAgICAgbXNnID0gYHN0cmljdCBtb2RlOiAke21zZ31gOwogICAgICBpZiAobW9kZSA9PT0gdHJ1ZSkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTsKICAgICAgaXQuc2VsZi5sb2dnZXIud2Fybihtc2cpOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tTdHJpY3RNb2RlID0gY2hlY2tTdHJpY3RNb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcwp2YXIgcmVxdWlyZV9uYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzID0gewogICAgICAvLyB2YWxpZGF0aW9uIGZ1bmN0aW9uIGFyZ3VtZW50cwogICAgICBkYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoImRhdGEiKSwKICAgICAgLy8gZGF0YSBwYXNzZWQgdG8gdmFsaWRhdGlvbiBmdW5jdGlvbgogICAgICAvLyBhcmdzIHBhc3NlZCBmcm9tIHJlZmVyZW5jaW5nIHNjaGVtYQogICAgICB2YWxDeHQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidmFsQ3h0IiksCiAgICAgIC8vIHZhbGlkYXRpb24vZGF0YSBjb250ZXh0IC0gc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LCBpdCBpcyBkZXN0cnVjdHVyZWQgdG8gdGhlIG5hbWVzIGJlbG93CiAgICAgIGluc3RhbmNlUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJpbnN0YW5jZVBhdGgiKSwKICAgICAgcGFyZW50RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhIiksCiAgICAgIHBhcmVudERhdGFQcm9wZXJ0eTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhUHJvcGVydHkiKSwKICAgICAgcm9vdERhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicm9vdERhdGEiKSwKICAgICAgLy8gcm9vdCBkYXRhIC0gc2FtZSBhcyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGZpcnN0L3RvcCB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIGR5bmFtaWNBbmNob3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoImR5bmFtaWNBbmNob3JzIiksCiAgICAgIC8vIHVzZWQgdG8gc3VwcG9ydCByZWN1cnNpdmVSZWYgYW5kIGR5bmFtaWNSZWYKICAgICAgLy8gZnVuY3Rpb24gc2NvcGVkIHZhcmlhYmxlcwogICAgICB2RXJyb3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoInZFcnJvcnMiKSwKICAgICAgLy8gbnVsbCBvciBhcnJheSBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICBlcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZXJyb3JzIiksCiAgICAgIC8vIGNvdW50ZXIgb2YgdmFsaWRhdGlvbiBlcnJvcnMKICAgICAgdGhpczogbmV3IGNvZGVnZW5fMS5OYW1lKCJ0aGlzIiksCiAgICAgIC8vICJnbG9iYWxzIgogICAgICBzZWxmOiBuZXcgY29kZWdlbl8xLk5hbWUoInNlbGYiKSwKICAgICAgc2NvcGU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NvcGUiKSwKICAgICAgLy8gSlREIHNlcmlhbGl6ZS9wYXJzZSBuYW1lIGZvciBKU09OIHN0cmluZyBhbmQgcG9zaXRpb24KICAgICAganNvbjogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uIiksCiAgICAgIGpzb25Qb3M6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBvcyIpLAogICAgICBqc29uTGVuOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb25MZW4iKSwKICAgICAganNvblBhcnQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBhcnQiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBuYW1lczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvZXJyb3JzLmpzCnZhciByZXF1aXJlX2Vycm9ycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4cG9ydHMyLnJlc2V0RXJyb3JzQ291bnQgPSBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gZXhwb3J0czIucmVwb3J0RXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgZXhwb3J0czIua2V5d29yZEVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IHBhc3MgIiR7a2V5d29yZH0iIGtleXdvcmQgdmFsaWRhdGlvbmAKICAgIH07CiAgICBleHBvcnRzMi5rZXl3b3JkJERhdGFFcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hVHlwZSB9KSA9PiBzY2hlbWFUeXBlID8gKDAsIGNvZGVnZW5fMS5zdHIpYCIke2tleXdvcmR9IiBrZXl3b3JkIG11c3QgYmUgJHtzY2hlbWFUeXBlfSAoJGRhdGEpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAiJHtrZXl3b3JkfSIga2V5d29yZCBpcyBpbnZhbGlkICgkZGF0YSlgCiAgICB9OwogICAgZnVuY3Rpb24gcmVwb3J0RXJyb3IoY3h0LCBlcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciwgZXJyb3JQYXRocywgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBpZiAob3ZlcnJpZGVBbGxFcnJvcnMgIT09IG51bGwgJiYgb3ZlcnJpZGVBbGxFcnJvcnMgIT09IHZvaWQgMCA/IG92ZXJyaWRlQWxsRXJyb3JzIDogY29tcG9zaXRlUnVsZSB8fCBhbGxFcnJvcnMpIHsKICAgICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuRXJyb3JzKGl0LCAoMCwgY29kZWdlbl8xLl8pYFske2Vyck9ian1dYCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydEVycm9yID0gcmVwb3J0RXJyb3I7CiAgICBmdW5jdGlvbiByZXBvcnRFeHRyYUVycm9yKGN4dCwgZXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IsIGVycm9yUGF0aHMpIHsKICAgICAgY29uc3QgeyBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgYWxsRXJyb3JzIH0gPSBpdDsKICAgICAgY29uc3QgZXJyT2JqID0gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICBhZGRFcnJvcihnZW4sIGVyck9iaik7CiAgICAgIGlmICghKGNvbXBvc2l0ZVJ1bGUgfHwgYWxsRXJyb3JzKSkgewogICAgICAgIHJldHVybkVycm9ycyhpdCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRFeHRyYUVycm9yID0gcmVwb3J0RXh0cmFFcnJvcjsKICAgIGZ1bmN0aW9uIHJlc2V0RXJyb3JzQ291bnQoZ2VuLCBlcnJzQ291bnQpIHsKICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCBlcnJzQ291bnQpOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSAhPT0gbnVsbGAsICgpID0+IGdlbi5pZihlcnJzQ291bnQsICgpID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5sZW5ndGhgLCBlcnJzQ291bnQpLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCBudWxsKSkpOwogICAgfQogICAgZXhwb3J0czIucmVzZXRFcnJvcnNDb3VudCA9IHJlc2V0RXJyb3JzQ291bnQ7CiAgICBmdW5jdGlvbiBleHRlbmRFcnJvcnMoeyBnZW4sIGtleXdvcmQsIHNjaGVtYVZhbHVlLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0pIHsKICAgICAgaWYgKGVycnNDb3VudCA9PT0gdm9pZCAwKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5uYW1lKCJlcnIiKTsKICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgZXJyc0NvdW50LCBuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoaSkgPT4gewogICAgICAgIGdlbi5jb25zdChlcnIsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc31bJHtpfV1gKTsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uaW5zdGFuY2VQYXRoID09PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9Lmluc3RhbmNlUGF0aGAsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBpdC5lcnJvclBhdGgpKSk7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5zY2hlbWFQYXRoYCwgKDAsIGNvZGVnZW5fMS5zdHIpYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWApOwogICAgICAgIGlmIChpdC5vcHRzLnZlcmJvc2UpIHsKICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uc2NoZW1hYCwgc2NoZW1hVmFsdWUpOwogICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5kYXRhYCwgZGF0YSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4dGVuZEVycm9ycyA9IGV4dGVuZEVycm9yczsKICAgIGZ1bmN0aW9uIGFkZEVycm9yKGdlbiwgZXJyT2JqKSB7CiAgICAgIGNvbnN0IGVyciA9IGdlbi5jb25zdCgiZXJyIiwgZXJyT2JqKTsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGxgLCAoKSA9PiBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYFske2Vycn1dYCksICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ucHVzaCgke2Vycn0pYCk7CiAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSsrYCk7CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5FcnJvcnMoaXQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSwgc2NoZW1hRW52IH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4udGhyb3coKDAsIGNvZGVnZW5fMS5fKWBuZXcgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KCR7ZXJyc30pYCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBlcnJzKTsKICAgICAgICBnZW4ucmV0dXJuKGZhbHNlKTsKICAgICAgfQogICAgfQogICAgdmFyIEUgPSB7CiAgICAgIGtleXdvcmQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgia2V5d29yZCIpLAogICAgICBzY2hlbWFQYXRoOiBuZXcgY29kZWdlbl8xLk5hbWUoInNjaGVtYVBhdGgiKSwKICAgICAgLy8gYWxzbyB1c2VkIGluIEpURCBlcnJvcnMKICAgICAgcGFyYW1zOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmFtcyIpLAogICAgICBwcm9wZXJ0eU5hbWU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicHJvcGVydHlOYW1lIiksCiAgICAgIG1lc3NhZ2U6IG5ldyBjb2RlZ2VuXzEuTmFtZSgibWVzc2FnZSIpLAogICAgICBzY2hlbWE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NoZW1hIiksCiAgICAgIHBhcmVudFNjaGVtYTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnRTY2hlbWEiKQogICAgfTsKICAgIGZ1bmN0aW9uIGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKSB7CiAgICAgIGNvbnN0IHsgY3JlYXRlRXJyb3JzIH0gPSBjeHQuaXQ7CiAgICAgIGlmIChjcmVhdGVFcnJvcnMgPT09IGZhbHNlKQogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYHt9YDsKICAgICAgcmV0dXJuIGVycm9yT2JqZWN0KGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JPYmplY3QoY3h0LCBlcnJvciwgZXJyb3JQYXRocyA9IHt9KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBrZXlWYWx1ZXMgPSBbCiAgICAgICAgZXJyb3JJbnN0YW5jZVBhdGgoaXQsIGVycm9yUGF0aHMpLAogICAgICAgIGVycm9yU2NoZW1hUGF0aChjeHQsIGVycm9yUGF0aHMpCiAgICAgIF07CiAgICAgIGV4dHJhRXJyb3JQcm9wcyhjeHQsIGVycm9yLCBrZXlWYWx1ZXMpOwogICAgICByZXR1cm4gZ2VuLm9iamVjdCguLi5rZXlWYWx1ZXMpOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JJbnN0YW5jZVBhdGgoeyBlcnJvclBhdGggfSwgeyBpbnN0YW5jZVBhdGggfSkgewogICAgICBjb25zdCBpbnN0UGF0aCA9IGluc3RhbmNlUGF0aCA/ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShpbnN0YW5jZVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YCA6IGVycm9yUGF0aDsKICAgICAgcmV0dXJuIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgaW5zdFBhdGgpXTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9yU2NoZW1hUGF0aCh7IGtleXdvcmQsIGl0OiB7IGVyclNjaGVtYVBhdGggfSB9LCB7IHNjaGVtYVBhdGgsIHBhcmVudFNjaGVtYSB9KSB7CiAgICAgIGxldCBzY2hQYXRoID0gcGFyZW50U2NoZW1hID8gZXJyU2NoZW1hUGF0aCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2VyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gOwogICAgICBpZiAoc2NoZW1hUGF0aCkgewogICAgICAgIHNjaFBhdGggPSAoMCwgY29kZWdlbl8xLnN0cilgJHtzY2hQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKHNjaGVtYVBhdGgsIHV0aWxfMS5UeXBlLlN0cil9YDsKICAgICAgfQogICAgICByZXR1cm4gW0Uuc2NoZW1hUGF0aCwgc2NoUGF0aF07CiAgICB9CiAgICBmdW5jdGlvbiBleHRyYUVycm9yUHJvcHMoY3h0LCB7IHBhcmFtcywgbWVzc2FnZSB9LCBrZXlWYWx1ZXMpIHsKICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFWYWx1ZSwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBvcHRzLCBwcm9wZXJ0eU5hbWUsIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCB9ID0gaXQ7CiAgICAgIGtleVZhbHVlcy5wdXNoKFtFLmtleXdvcmQsIGtleXdvcmRdLCBbRS5wYXJhbXMsIHR5cGVvZiBwYXJhbXMgPT0gImZ1bmN0aW9uIiA/IHBhcmFtcyhjeHQpIDogcGFyYW1zIHx8ICgwLCBjb2RlZ2VuXzEuXylge31gXSk7CiAgICAgIGlmIChvcHRzLm1lc3NhZ2VzKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UubWVzc2FnZSwgdHlwZW9mIG1lc3NhZ2UgPT0gImZ1bmN0aW9uIiA/IG1lc3NhZ2UoY3h0KSA6IG1lc3NhZ2VdKTsKICAgICAgfQogICAgICBpZiAob3B0cy52ZXJib3NlKSB7CiAgICAgICAga2V5VmFsdWVzLnB1c2goW0Uuc2NoZW1hLCBzY2hlbWFWYWx1ZV0sIFtFLnBhcmVudFNjaGVtYSwgKDAsIGNvZGVnZW5fMS5fKWAke3RvcFNjaGVtYVJlZn0ke3NjaGVtYVBhdGh9YF0sIFtuYW1lc18xLmRlZmF1bHQuZGF0YSwgZGF0YV0pOwogICAgICB9CiAgICAgIGlmIChwcm9wZXJ0eU5hbWUpCiAgICAgICAga2V5VmFsdWVzLnB1c2goW0UucHJvcGVydHlOYW1lLCBwcm9wZXJ0eU5hbWVdKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcwp2YXIgcmVxdWlyZV9ib29sU2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2Jvb2xTY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gZXhwb3J0czIudG9wQm9vbE9yRW1wdHlTY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgYm9vbEVycm9yID0gewogICAgICBtZXNzYWdlOiAiYm9vbGVhbiBzY2hlbWEgaXMgZmFsc2UiCiAgICB9OwogICAgZnVuY3Rpb24gdG9wQm9vbE9yRW1wdHlTY2hlbWEoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgdmFsaWRhdGVOYW1lIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCwgZmFsc2UpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmIHNjaGVtYTIuJGFzeW5jID09PSB0cnVlKSB7CiAgICAgICAgZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBudWxsKTsKICAgICAgICBnZW4ucmV0dXJuKHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHRvcEJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gYm9vbE9yRW1wdHlTY2hlbWEoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICBnZW4udmFyKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgZmFsc2VTY2hlbWFFcnJvcihpdCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmJvb2xPckVtcHR5U2NoZW1hID0gYm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBmYWxzZVNjaGVtYUVycm9yKGl0LCBvdmVycmlkZUFsbEVycm9ycykgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSB9ID0gaXQ7CiAgICAgIGNvbnN0IGN4dCA9IHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogImZhbHNlIHNjaGVtYSIsCiAgICAgICAgZGF0YSwKICAgICAgICBzY2hlbWE6IGZhbHNlLAogICAgICAgIHNjaGVtYUNvZGU6IGZhbHNlLAogICAgICAgIHNjaGVtYVZhbHVlOiBmYWxzZSwKICAgICAgICBwYXJhbXM6IHt9LAogICAgICAgIGl0CiAgICAgIH07CiAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikoY3h0LCBib29sRXJyb3IsIHZvaWQgMCwgb3ZlcnJpZGVBbGxFcnJvcnMpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcwp2YXIgcmVxdWlyZV9ydWxlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0UnVsZXMgPSBleHBvcnRzMi5pc0pTT05UeXBlID0gdm9pZCAwOwogICAgdmFyIF9qc29uVHlwZXMgPSBbInN0cmluZyIsICJudW1iZXIiLCAiaW50ZWdlciIsICJib29sZWFuIiwgIm51bGwiLCAib2JqZWN0IiwgImFycmF5Il07CiAgICB2YXIganNvblR5cGVzID0gbmV3IFNldChfanNvblR5cGVzKTsKICAgIGZ1bmN0aW9uIGlzSlNPTlR5cGUoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gInN0cmluZyIgJiYganNvblR5cGVzLmhhcyh4KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSlNPTlR5cGUgPSBpc0pTT05UeXBlOwogICAgZnVuY3Rpb24gZ2V0UnVsZXMoKSB7CiAgICAgIGNvbnN0IGdyb3VwcyA9IHsKICAgICAgICBudW1iZXI6IHsgdHlwZTogIm51bWJlciIsIHJ1bGVzOiBbXSB9LAogICAgICAgIHN0cmluZzogeyB0eXBlOiAic3RyaW5nIiwgcnVsZXM6IFtdIH0sCiAgICAgICAgYXJyYXk6IHsgdHlwZTogImFycmF5IiwgcnVsZXM6IFtdIH0sCiAgICAgICAgb2JqZWN0OiB7IHR5cGU6ICJvYmplY3QiLCBydWxlczogW10gfQogICAgICB9OwogICAgICByZXR1cm4gewogICAgICAgIHR5cGVzOiB7IC4uLmdyb3VwcywgaW50ZWdlcjogdHJ1ZSwgYm9vbGVhbjogdHJ1ZSwgbnVsbDogdHJ1ZSB9LAogICAgICAgIHJ1bGVzOiBbeyBydWxlczogW10gfSwgZ3JvdXBzLm51bWJlciwgZ3JvdXBzLnN0cmluZywgZ3JvdXBzLmFycmF5LCBncm91cHMub2JqZWN0XSwKICAgICAgICBwb3N0OiB7IHJ1bGVzOiBbXSB9LAogICAgICAgIGFsbDoge30sCiAgICAgICAga2V5d29yZHM6IHt9CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5nZXRSdWxlcyA9IGdldFJ1bGVzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9hcHBsaWNhYmlsaXR5LmpzCnZhciByZXF1aXJlX2FwcGxpY2FiaWxpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNGb3JUeXBlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNGb3JUeXBlKHsgc2NoZW1hOiBzY2hlbWEyLCBzZWxmOiBzZWxmMiB9LCB0eXBlMikgewogICAgICBjb25zdCBncm91cCA9IHNlbGYyLlJVTEVTLnR5cGVzW3R5cGUyXTsKICAgICAgcmV0dXJuIGdyb3VwICYmIGdyb3VwICE9PSB0cnVlICYmIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHNjaGVtYUhhc1J1bGVzRm9yVHlwZTsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZUdyb3VwKHNjaGVtYTIsIGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cC5ydWxlcy5zb21lKChydWxlKSA9PiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gc2hvdWxkVXNlR3JvdXA7CiAgICBmdW5jdGlvbiBzaG91bGRVc2VSdWxlKHNjaGVtYTIsIHJ1bGUpIHsKICAgICAgdmFyIF9hOwogICAgICByZXR1cm4gc2NoZW1hMltydWxlLmtleXdvcmRdICE9PSB2b2lkIDAgfHwgKChfYSA9IHJ1bGUuZGVmaW5pdGlvbi5pbXBsZW1lbnRzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc29tZSgoa3dkKSA9PiBzY2hlbWEyW2t3ZF0gIT09IHZvaWQgMCkpOwogICAgfQogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IHNob3VsZFVzZVJ1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzCnZhciByZXF1aXJlX2RhdGFUeXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSBleHBvcnRzMi5jaGVja0RhdGFUeXBlcyA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5jb2VyY2VBbmRDaGVja0RhdGFUeXBlID0gZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZXhwb3J0czIuZ2V0U2NoZW1hVHlwZXMgPSBleHBvcnRzMi5EYXRhVHlwZSA9IHZvaWQgMDsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGFwcGxpY2FiaWxpdHlfMSA9IHJlcXVpcmVfYXBwbGljYWJpbGl0eSgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBEYXRhVHlwZTsKICAgIChmdW5jdGlvbihEYXRhVHlwZTIpIHsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiQ29ycmVjdCJdID0gMF0gPSAiQ29ycmVjdCI7CiAgICAgIERhdGFUeXBlMltEYXRhVHlwZTJbIldyb25nIl0gPSAxXSA9ICJXcm9uZyI7CiAgICB9KShEYXRhVHlwZSB8fCAoZXhwb3J0czIuRGF0YVR5cGUgPSBEYXRhVHlwZSA9IHt9KSk7CiAgICBmdW5jdGlvbiBnZXRTY2hlbWFUeXBlcyhzY2hlbWEyKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gZ2V0SlNPTlR5cGVzKHNjaGVtYTIudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEyLm51bGxhYmxlID09PSBmYWxzZSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZTogbnVsbCBjb250cmFkaWN0cyBudWxsYWJsZTogZmFsc2UiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoIXR5cGVzLmxlbmd0aCAmJiBzY2hlbWEyLm51bGxhYmxlICE9PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignIm51bGxhYmxlIiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0ICJ0eXBlIicpOwogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1hMi5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYTogc2NoZW1hMiB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYTJ9YCwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYVZhbHVlIH0pID0+IHR5cGVvZiBzY2hlbWEyID09ICJzdHJpbmciID8gKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWEyfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYTIsICJ0eXBlIik7CiAgICAgIHJldHVybiB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJ0eXBlIiwKICAgICAgICBkYXRhLAogICAgICAgIHNjaGVtYTogc2NoZW1hMi50eXBlLAogICAgICAgIHNjaGVtYUNvZGUsCiAgICAgICAgc2NoZW1hVmFsdWU6IHNjaGVtYUNvZGUsCiAgICAgICAgcGFyZW50U2NoZW1hOiBzY2hlbWEyLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMKdmFyIHJlcXVpcmVfZGVmYXVsdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFzc2lnbkRlZmF1bHRzID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdHMoaXQsIHR5KSB7CiAgICAgIGNvbnN0IHsgcHJvcGVydGllcywgaXRlbXMgfSA9IGl0LnNjaGVtYTsKICAgICAgaWYgKHR5ID09PSAib2JqZWN0IiAmJiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykgewogICAgICAgICAgYXNzaWduRGVmYXVsdChpdCwga2V5LCBwcm9wZXJ0aWVzW2tleV0uZGVmYXVsdCk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKHR5ID09PSAiYXJyYXkiICYmIEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgaXRlbXMuZm9yRWFjaCgoc2NoLCBpKSA9PiBhc3NpZ25EZWZhdWx0KGl0LCBpLCBzY2guZGVmYXVsdCkpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IGFzc2lnbkRlZmF1bHRzOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdChpdCwgcHJvcCwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBkYXRhLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKGRlZmF1bHRWYWx1ZSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgY2hpbGREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wKX1gOwogICAgICBpZiAoY29tcG9zaXRlUnVsZSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYGRlZmF1bHQgaXMgaWdub3JlZCBmb3I6ICR7Y2hpbGREYXRhfWApOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBsZXQgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NoaWxkRGF0YX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIGlmIChvcHRzLnVzZURlZmF1bHRzID09PSAiZW1wdHkiKSB7CiAgICAgICAgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmRpdGlvbn0gfHwgJHtjaGlsZERhdGF9ID09PSBudWxsIHx8ICR7Y2hpbGREYXRhfSA9PT0gIiJgOwogICAgICB9CiAgICAgIGdlbi5pZihjb25kaXRpb24sICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID0gJHsoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoZGVmYXVsdFZhbHVlKX1gKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IGV4cG9ydHMyLnZhbGlkYXRlQXJyYXkgPSBleHBvcnRzMi51c2VQYXR0ZXJuID0gZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IGV4cG9ydHMyLnByb3BlcnR5SW5EYXRhID0gZXhwb3J0czIuaXNPd25Qcm9wZXJ0eSA9IGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcChjeHQsIHByb3ApIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6ICgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wfWAgfSwgdHJ1ZSk7CiAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IGNoZWNrUmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBjaGVja01pc3NpbmdQcm9wKHsgZ2VuLCBkYXRhLCBpdDogeyBvcHRzIH0gfSwgcHJvcGVydGllcywgbWlzc2luZykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5vcikoLi4ucHJvcGVydGllcy5tYXAoKHByb3ApID0+ICgwLCBjb2RlZ2VuXzEuYW5kKShub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKDAsIGNvZGVnZW5fMS5fKWAke21pc3Npbmd9ID0gJHtwcm9wfWApKSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gY2hlY2tNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIHJlcG9ydE1pc3NpbmdQcm9wKGN4dCwgbWlzc2luZykgewogICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0sIHRydWUpOwogICAgICBjeHQuZXJyb3IoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydE1pc3NpbmdQcm9wID0gcmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBoYXNQcm9wRnVuYyhnZW4pIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2QKICAgICAgICByZWY6IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5YAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gaGFzUHJvcEZ1bmM7CiAgICBmdW5jdGlvbiBpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wRnVuYyhnZW4pfS5jYWxsKCR7ZGF0YX0sICR7cHJvcGVydHl9KWA7CiAgICB9CiAgICBleHBvcnRzMi5pc093blByb3BlcnR5ID0gaXNPd25Qcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIHByb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcGVydHksIG93blByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcGVydHkpfSAhPT0gdW5kZWZpbmVkYDsKICAgICAgcmV0dXJuIG93blByb3BlcnRpZXMgPyAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpfWAgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBwcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ID09PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEub3IpKGNvbmQsICgwLCBjb2RlZ2VuXzEubm90KShpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpKSkgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IG5vUHJvcGVydHlJbkRhdGE7CiAgICBmdW5jdGlvbiBhbGxTY2hlbWFQcm9wZXJ0aWVzKHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gc2NoZW1hTWFwID8gT2JqZWN0LmtleXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+IHAgIT09ICJfX3Byb3RvX18iKSA6IFtdOwogICAgfQogICAgZXhwb3J0czIuYWxsU2NoZW1hUHJvcGVydGllcyA9IGFsbFNjaGVtYVByb3BlcnRpZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFQcm9wZXJ0aWVzKGl0LCBzY2hlbWFNYXApIHsKICAgICAgcmV0dXJuIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+ICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hTWFwW3BdKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFQcm9wZXJ0aWVzID0gc2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZUNvZGUoeyBzY2hlbWFDb2RlLCBkYXRhLCBpdDogeyBnZW4sIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCwgZXJyb3JQYXRoIH0sIGl0IH0sIGZ1bmMsIGNvbnRleHQsIHBhc3NTY2hlbWEpIHsKICAgICAgY29uc3QgZGF0YUFuZFNjaGVtYSA9IHBhc3NTY2hlbWEgPyAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0sICR7ZGF0YX0sICR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gIDogZGF0YTsKICAgICAgY29uc3QgdmFsQ3h0ID0gWwogICAgICAgIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgZXJyb3JQYXRoKV0sCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCBpdC5wYXJlbnREYXRhXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgaXQucGFyZW50RGF0YVByb3BlcnR5XSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQucm9vdERhdGFdCiAgICAgIF07CiAgICAgIGlmIChpdC5vcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgdmFsQ3h0LnB1c2goW25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzXSk7CiAgICAgIGNvbnN0IGFyZ3MgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YUFuZFNjaGVtYX0sICR7Z2VuLm9iamVjdCguLi52YWxDeHQpfWA7CiAgICAgIHJldHVybiBjb250ZXh0ICE9PSBjb2RlZ2VuXzEubmlsID8gKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9LmNhbGwoJHtjb250ZXh0fSwgJHthcmdzfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9KCR7YXJnc30pYDsKICAgIH0KICAgIGV4cG9ydHMyLmNhbGxWYWxpZGF0ZUNvZGUgPSBjYWxsVmFsaWRhdGVDb2RlOwogICAgdmFyIG5ld1JlZ0V4cCA9ICgwLCBjb2RlZ2VuXzEuXylgbmV3IFJlZ0V4cGA7CiAgICBmdW5jdGlvbiB1c2VQYXR0ZXJuKHsgZ2VuLCBpdDogeyBvcHRzIH0gfSwgcGF0dGVybikgewogICAgICBjb25zdCB1ID0gb3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgIGNvbnN0IHsgcmVnRXhwIH0gPSBvcHRzLmNvZGU7CiAgICAgIGNvbnN0IHJ4ID0gcmVnRXhwKHBhdHRlcm4sIHUpOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoInBhdHRlcm4iLCB7CiAgICAgICAga2V5OiByeC50b1N0cmluZygpLAogICAgICAgIHJlZjogcngsCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWAke3JlZ0V4cC5jb2RlID09PSAibmV3IFJlZ0V4cCIgPyBuZXdSZWdFeHAgOiAoMCwgdXRpbF8yLnVzZUZ1bmMpKGdlbiwgcmVnRXhwKX0oJHtwYXR0ZXJufSwgJHt1fSlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlUGF0dGVybiA9IHVzZVBhdHRlcm47CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUFycmF5KGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgIGNvbnN0IHZhbGlkQXJyID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5hc3NpZ24odmFsaWRBcnIsIGZhbHNlKSk7CiAgICAgICAgcmV0dXJuIHZhbGlkQXJyOwogICAgICB9CiAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5icmVhaygpKTsKICAgICAgcmV0dXJuIHZhbGlkOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKG5vdFZhbGlkKSB7CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQsCiAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bQogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksIG5vdFZhbGlkKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IHZhbGlkYXRlQXJyYXk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaW9uKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgY29uc3QgYWx3YXlzVmFsaWQgPSBzY2hlbWEyLnNvbWUoKHNjaCkgPT4gKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpOwogICAgICBpZiAoYWx3YXlzVmFsaWQgJiYgIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHNjaGVtYTIuZm9yRWFjaCgoX3NjaCwgaSkgPT4gewogICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZCwKICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZH0gfHwgJHtzY2hWYWxpZH1gKTsKICAgICAgICBjb25zdCBtZXJnZWQgPSBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHNjaFZhbGlkKTsKICAgICAgICBpZiAoIW1lcmdlZCkKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpKTsKICAgICAgfSkpOwogICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlVW5pb24gPSB2YWxpZGF0ZVVuaW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9rZXl3b3JkLmpzCnZhciByZXF1aXJlX2tleXdvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpOwogICAgICBjb25zdCBzY2hlbWFSZWYgPSB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgbWFjcm9TY2hlbWEpOwogICAgICBpZiAoaXQub3B0cy52YWxpZGF0ZVNjaGVtYSAhPT0gZmFsc2UpCiAgICAgICAgaXQuc2VsZi52YWxpZGF0ZVNjaGVtYShtYWNyb1NjaGVtYSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgIHNjaGVtYTogbWFjcm9TY2hlbWEsCiAgICAgICAgc2NoZW1hUGF0aDogY29kZWdlbl8xLm5pbCwKICAgICAgICBlcnJTY2hlbWFQYXRoOiBgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YCwKICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaGVtYVJlZiwKICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgIH0sIHZhbGlkKTsKICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gbWFjcm9LZXl3b3JkQ29kZTsKICAgIGZ1bmN0aW9uIGZ1bmNLZXl3b3JkQ29kZShjeHQsIGRlZikgewogICAgICB2YXIgX2E7CiAgICAgIGNvbnN0IHsgZ2VuLCBrZXl3b3JkLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgJGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGNoZWNrQXN5bmNLZXl3b3JkKGl0LCBkZWYpOwogICAgICBjb25zdCB2YWxpZGF0ZSA9ICEkZGF0YSAmJiBkZWYuY29tcGlsZSA/IGRlZi5jb21waWxlLmNhbGwoaXQuc2VsZiwgc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCkgOiBkZWYudmFsaWRhdGU7CiAgICAgIGNvbnN0IHZhbGlkYXRlUmVmID0gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHZhbGlkYXRlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgdmFsaWRhdGVLZXl3b3JkKTsKICAgICAgY3h0Lm9rKChfYSA9IGRlZi52YWxpZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsaWQpOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUtleXdvcmQoKSB7CiAgICAgICAgaWYgKGRlZi5lcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICBhc3NpZ25WYWxpZCgpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBydWxlRXJycyA9IGRlZi5hc3luYyA/IHZhbGlkYXRlQXN5bmMoKSA6IHZhbGlkYXRlU3luYygpOwogICAgICAgICAgaWYgKGRlZi5tb2RpZnlpbmcpCiAgICAgICAgICAgIG1vZGlmeURhdGEoY3h0KTsKICAgICAgICAgIHJlcG9ydEVycnMoKCkgPT4gYWRkRXJycyhjeHQsIHJ1bGVFcnJzKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlQXN5bmMoKSB7CiAgICAgICAgY29uc3QgcnVsZUVycnMgPSBnZW4ubGV0KCJydWxlRXJycyIsIG51bGwpOwogICAgICAgIGdlbi50cnkoKCkgPT4gYXNzaWduVmFsaWQoKDAsIGNvZGVnZW5fMS5fKWBhd2FpdCBgKSwgKGUpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZX0gaW5zdGFuY2VvZiAke2l0LlZhbGlkYXRpb25FcnJvcn1gLCAoKSA9PiBnZW4uYXNzaWduKHJ1bGVFcnJzLCAoMCwgY29kZWdlbl8xLl8pYCR7ZX0uZXJyb3JzYCksICgpID0+IGdlbi50aHJvdyhlKSkpOwogICAgICAgIHJldHVybiBydWxlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZVN5bmMoKSB7CiAgICAgICAgY29uc3QgdmFsaWRhdGVFcnJzID0gKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlUmVmfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWRhdGVFcnJzLCBudWxsKTsKICAgICAgICBhc3NpZ25WYWxpZChjb2RlZ2VuXzEubmlsKTsKICAgICAgICByZXR1cm4gdmFsaWRhdGVFcnJzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFzc2lnblZhbGlkKF9hd2FpdCA9IGRlZi5hc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCA6IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBjb25zdCBwYXNzQ3h0ID0gaXQub3B0cy5wYXNzQ29udGV4dCA/IG5hbWVzXzEuZGVmYXVsdC50aGlzIDogbmFtZXNfMS5kZWZhdWx0LnNlbGY7CiAgICAgICAgY29uc3QgcGFzc1NjaGVtYSA9ICEoImNvbXBpbGUiIGluIGRlZiAmJiAhJGRhdGEgfHwgZGVmLnNjaGVtYSA9PT0gZmFsc2UpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHtfYXdhaXR9JHsoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdmFsaWRhdGVSZWYsIHBhc3NDeHQsIHBhc3NTY2hlbWEpfWAsIGRlZi5tb2RpZnlpbmcpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlcG9ydEVycnMoZXJyb3JzKSB7CiAgICAgICAgdmFyIF9hMjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKChfYTIgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hMiAhPT0gdm9pZCAwID8gX2EyIDogdmFsaWQpLCBlcnJvcnMpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBmdW5jS2V5d29yZENvZGU7CiAgICBmdW5jdGlvbiBtb2RpZnlEYXRhKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgZ2VuLmlmKGl0LnBhcmVudERhdGEsICgpID0+IGdlbi5hc3NpZ24oZGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LnBhcmVudERhdGF9WyR7aXQucGFyZW50RGF0YVByb3BlcnR5fV1gKSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRFcnJzKGN4dCwgZXJycykgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWBBcnJheS5pc0FycmF5KCR7ZXJyc30pYCwgKCkgPT4gewogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCkuYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCk7CiAgICAgICAgKDAsIGVycm9yc18xLmV4dGVuZEVycm9ycykoY3h0KTsKICAgICAgfSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY0tleXdvcmQoeyBzY2hlbWFFbnYgfSwgZGVmKSB7CiAgICAgIGlmIChkZWYuYXN5bmMgJiYgIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhc3luYyBrZXl3b3JkIGluIHN5bmMgc2NoZW1hIik7CiAgICB9CiAgICBmdW5jdGlvbiB1c2VLZXl3b3JkKGdlbiwga2V5d29yZCwgcmVzdWx0KSB7CiAgICAgIGlmIChyZXN1bHQgPT09IHZvaWQgMCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGtleXdvcmQgIiR7a2V5d29yZH0iIGZhaWxlZCB0byBjb21waWxlYCk7CiAgICAgIHJldHVybiBnZW4uc2NvcGVWYWx1ZSgia2V5d29yZCIsIHR5cGVvZiByZXN1bHQgPT0gImZ1bmN0aW9uIiA/IHsgcmVmOiByZXN1bHQgfSA6IHsgcmVmOiByZXN1bHQsIGNvZGU6ICgwLCBjb2RlZ2VuXzEuc3RyaW5naWZ5KShyZXN1bHQpIH0pOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRTY2hlbWFUeXBlKHNjaGVtYTIsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hMikgOiBzdCA9PT0gIm9iamVjdCIgPyBzY2hlbWEyICYmIHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYTIpIDogdHlwZW9mIHNjaGVtYTIgPT0gc3QgfHwgYWxsb3dVbmRlZmluZWQgJiYgdHlwZW9mIHNjaGVtYTIgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWE6IHNjaGVtYTIsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYTIsIGt3ZCkpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJlbnQgc2NoZW1hIG11c3QgaGF2ZSBkZXBlbmRlbmNpZXMgb2YgJHtrZXl3b3JkfTogJHtkZXBzLmpvaW4oIiwiKX1gKTsKICAgICAgfQogICAgICBpZiAoZGVmLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgY29uc3QgdmFsaWQgPSBkZWYudmFsaWRhdGVTY2hlbWEoc2NoZW1hMltrZXl3b3JkXSk7CiAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgY29uc3QgbXNnID0gYGtleXdvcmQgIiR7a2V5d29yZH0iIHZhbHVlIGlzIGludmFsaWQgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSI6IGAgKyBzZWxmMi5lcnJvcnNUZXh0KGRlZi52YWxpZGF0ZVNjaGVtYS5lcnJvcnMpOwogICAgICAgICAgaWYgKG9wdHMudmFsaWRhdGVTY2hlbWEgPT09ICJsb2ciKQogICAgICAgICAgICBzZWxmMi5sb2dnZXIuZXJyb3IobXNnKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUtleXdvcmRVc2FnZSA9IHZhbGlkYXRlS2V5d29yZFVzYWdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMKdmFyIHJlcXVpcmVfc3Vic2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL3N1YnNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4cG9ydHMyLmV4dGVuZFN1YnNjaGVtYURhdGEgPSBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICBmdW5jdGlvbiBnZXRTdWJzY2hlbWEoaXQsIHsga2V5d29yZCwgc2NoZW1hUHJvcCwgc2NoZW1hOiBzY2hlbWEyLCBzY2hlbWFQYXRoLCBlcnJTY2hlbWFQYXRoLCB0b3BTY2hlbWFSZWYgfSkgewogICAgICBpZiAoa2V5d29yZCAhPT0gdm9pZCAwICYmIHNjaGVtYTIgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAia2V5d29yZCIgYW5kICJzY2hlbWEiIHBhc3NlZCwgb25seSBvbmUgYWxsb3dlZCcpOwogICAgICB9CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2ggPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgcmV0dXJuIHNjaGVtYVByb3AgPT09IHZvaWQgMCA/IHsKICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX1gLAogICAgICAgICAgZXJyU2NoZW1hUGF0aDogYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWAKICAgICAgICB9IDogewogICAgICAgICAgc2NoZW1hOiBzY2hbc2NoZW1hUHJvcF0sCiAgICAgICAgICBzY2hlbWFQYXRoOiAoMCwgY29kZWdlbl8xLl8pYCR7aXQuc2NoZW1hUGF0aH0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGtleXdvcmQpfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hUHJvcCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH0vJHsoMCwgdXRpbF8xLmVzY2FwZUZyYWdtZW50KShzY2hlbWFQcm9wKX1gCiAgICAgICAgfTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hMiAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCBlcnJTY2hlbWFQYXRoID09PSB2b2lkIDAgfHwgdG9wU2NoZW1hUmVmID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignInNjaGVtYVBhdGgiLCAiZXJyU2NoZW1hUGF0aCIgYW5kICJ0b3BTY2hlbWFSZWYiIGFyZSByZXF1aXJlZCB3aXRoICJzY2hlbWEiJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzY2hlbWE6IHNjaGVtYTIsCiAgICAgICAgICBzY2hlbWFQYXRoLAogICAgICAgICAgdG9wU2NoZW1hUmVmLAogICAgICAgICAgZXJyU2NoZW1hUGF0aAogICAgICAgIH07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCdlaXRoZXIgImtleXdvcmQiIG9yICJzY2hlbWEiIG11c3QgYmUgcGFzc2VkJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSBnZXRTdWJzY2hlbWE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFEYXRhKHN1YnNjaGVtYSwgaXQsIHsgZGF0YVByb3AsIGRhdGFQcm9wVHlwZTogZHBUeXBlLCBkYXRhLCBkYXRhVHlwZXMsIHByb3BlcnR5TmFtZSB9KSB7CiAgICAgIGlmIChkYXRhICE9PSB2b2lkIDAgJiYgZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAiZGF0YSIgYW5kICJkYXRhUHJvcCIgcGFzc2VkLCBvbmx5IG9uZSBhbGxvd2VkJyk7CiAgICAgIH0KICAgICAgY29uc3QgeyBnZW4gfSA9IGl0OwogICAgICBpZiAoZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHsgZXJyb3JQYXRoLCBkYXRhUGF0aEFyciwgb3B0cyB9ID0gaXQ7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBnZW4ubGV0KCJkYXRhIiwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LmRhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCl9YCwgdHJ1ZSk7CiAgICAgICAgZGF0YUNvbnRleHRQcm9wcyhuZXh0RGF0YSk7CiAgICAgICAgc3Vic2NoZW1hLmVycm9yUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShkYXRhUHJvcCwgZHBUeXBlLCBvcHRzLmpzUHJvcGVydHlTeW50YXgpfWA7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhUHJvcH1gOwogICAgICAgIHN1YnNjaGVtYS5kYXRhUGF0aEFyciA9IFsuLi5kYXRhUGF0aEFyciwgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IG5leHREYXRhID0gZGF0YSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gZGF0YSA6IGdlbi5sZXQoImRhdGEiLCBkYXRhLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBpZiAocHJvcGVydHlOYW1lICE9PSB2b2lkIDApCiAgICAgICAgICBzdWJzY2hlbWEucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lOwogICAgICB9CiAgICAgIGlmIChkYXRhVHlwZXMpCiAgICAgICAgc3Vic2NoZW1hLmRhdGFUeXBlcyA9IGRhdGFUeXBlczsKICAgICAgZnVuY3Rpb24gZGF0YUNvbnRleHRQcm9wcyhfbmV4dERhdGEpIHsKICAgICAgICBzdWJzY2hlbWEuZGF0YSA9IF9uZXh0RGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YUxldmVsID0gaXQuZGF0YUxldmVsICsgMTsKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gW107CiAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHN1YnNjaGVtYS5wYXJlbnREYXRhID0gaXQuZGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YU5hbWVzID0gWy4uLml0LmRhdGFOYW1lcywgX25leHREYXRhXTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4dGVuZFN1YnNjaGVtYURhdGE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFNb2RlKHN1YnNjaGVtYSwgeyBqdGREaXNjcmltaW5hdG9yLCBqdGRNZXRhZGF0YSwgY29tcG9zaXRlUnVsZSwgY3JlYXRlRXJyb3JzLCBhbGxFcnJvcnMgfSkgewogICAgICBpZiAoY29tcG9zaXRlUnVsZSAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jb21wb3NpdGVSdWxlID0gY29tcG9zaXRlUnVsZTsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jcmVhdGVFcnJvcnMgPSBjcmVhdGVFcnJvcnM7CiAgICAgIGlmIChhbGxFcnJvcnMgIT09IHZvaWQgMCkKICAgICAgICBzdWJzY2hlbWEuYWxsRXJyb3JzID0gYWxsRXJyb3JzOwogICAgICBzdWJzY2hlbWEuanRkRGlzY3JpbWluYXRvciA9IGp0ZERpc2NyaW1pbmF0b3I7CiAgICAgIHN1YnNjaGVtYS5qdGRNZXRhZGF0YSA9IGp0ZE1ldGFkYXRhOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4dGVuZFN1YnNjaGVtYU1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtZGVlcC1lcXVhbC1ucG0tMy4xLjMtNzkwZWRjZmNmNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtZGVlcC1lcXVhbC9pbmRleC5qcwp2YXIgcmVxdWlyZV9mYXN0X2RlZXBfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC1kZWVwLWVxdWFsLW5wbS0zLjEuMy03OTBlZGNmY2Y1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gZXF1YWwoYSwgYikgewogICAgICBpZiAoYSA9PT0gYikgcmV0dXJuIHRydWU7CiAgICAgIGlmIChhICYmIGIgJiYgdHlwZW9mIGEgPT0gIm9iamVjdCIgJiYgdHlwZW9mIGIgPT0gIm9iamVjdCIpIHsKICAgICAgICBpZiAoYS5jb25zdHJ1Y3RvciAhPT0gYi5jb25zdHJ1Y3RvcikgcmV0dXJuIGZhbHNlOwogICAgICAgIHZhciBsZW5ndGgsIGksIGtleXM7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHsKICAgICAgICAgIGxlbmd0aCA9IGEubGVuZ3RoOwogICAgICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgICAgaWYgKCFlcXVhbChhW2ldLCBiW2ldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGlmIChhLmNvbnN0cnVjdG9yID09PSBSZWdFeHApIHJldHVybiBhLnNvdXJjZSA9PT0gYi5zb3VyY2UgJiYgYS5mbGFncyA9PT0gYi5mbGFnczsKICAgICAgICBpZiAoYS52YWx1ZU9mICE9PSBPYmplY3QucHJvdG90eXBlLnZhbHVlT2YpIHJldHVybiBhLnZhbHVlT2YoKSA9PT0gYi52YWx1ZU9mKCk7CiAgICAgICAgaWYgKGEudG9TdHJpbmcgIT09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcpIHJldHVybiBhLnRvU3RyaW5nKCkgPT09IGIudG9TdHJpbmcoKTsKICAgICAgICBrZXlzID0gT2JqZWN0LmtleXMoYSk7CiAgICAgICAgbGVuZ3RoID0ga2V5cy5sZW5ndGg7CiAgICAgICAgaWYgKGxlbmd0aCAhPT0gT2JqZWN0LmtleXMoYikubGVuZ3RoKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkKICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIGtleXNbaV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7ICkgewogICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07CiAgICAgICAgICBpZiAoIWVxdWFsKGFba2V5XSwgYltrZXldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gYSAhPT0gYSAmJiBiICE9PSBiOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbi1zY2hlbWEtdHJhdmVyc2UtbnBtLTEuMC4wLWZiMzY4NGY0ZjAtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uLXNjaGVtYS10cmF2ZXJzZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb24tc2NoZW1hLXRyYXZlcnNlL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHRyYXZlcnNlID0gbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24oc2NoZW1hMiwgb3B0cywgY2IpIHsKICAgICAgaWYgKHR5cGVvZiBvcHRzID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjYiA9IG9wdHM7CiAgICAgICAgb3B0cyA9IHt9OwogICAgICB9CiAgICAgIGNiID0gb3B0cy5jYiB8fCBjYjsKICAgICAgdmFyIHByZSA9IHR5cGVvZiBjYiA9PSAiZnVuY3Rpb24iID8gY2IgOiBjYi5wcmUgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIHZhciBwb3N0ID0gY2IucG9zdCB8fCBmdW5jdGlvbigpIHsKICAgICAgfTsKICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwgIiIsIHNjaGVtYTIpOwogICAgfTsKICAgIHRyYXZlcnNlLmtleXdvcmRzID0gewogICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBjb250YWluczogdHJ1ZSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgIHByb3BlcnR5TmFtZXM6IHRydWUsCiAgICAgIG5vdDogdHJ1ZSwKICAgICAgaWY6IHRydWUsCiAgICAgIHRoZW46IHRydWUsCiAgICAgIGVsc2U6IHRydWUKICAgIH07CiAgICB0cmF2ZXJzZS5hcnJheUtleXdvcmRzID0gewogICAgICBpdGVtczogdHJ1ZSwKICAgICAgYWxsT2Y6IHRydWUsCiAgICAgIGFueU9mOiB0cnVlLAogICAgICBvbmVPZjogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnByb3BzS2V5d29yZHMgPSB7CiAgICAgICRkZWZzOiB0cnVlLAogICAgICBkZWZpbml0aW9uczogdHJ1ZSwKICAgICAgcHJvcGVydGllczogdHJ1ZSwKICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgIGRlcGVuZGVuY2llczogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLnNraXBLZXl3b3JkcyA9IHsKICAgICAgZGVmYXVsdDogdHJ1ZSwKICAgICAgZW51bTogdHJ1ZSwKICAgICAgY29uc3Q6IHRydWUsCiAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICBtYXhpbXVtOiB0cnVlLAogICAgICBtaW5pbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNYXhpbXVtOiB0cnVlLAogICAgICBleGNsdXNpdmVNaW5pbXVtOiB0cnVlLAogICAgICBtdWx0aXBsZU9mOiB0cnVlLAogICAgICBtYXhMZW5ndGg6IHRydWUsCiAgICAgIG1pbkxlbmd0aDogdHJ1ZSwKICAgICAgcGF0dGVybjogdHJ1ZSwKICAgICAgZm9ybWF0OiB0cnVlLAogICAgICBtYXhJdGVtczogdHJ1ZSwKICAgICAgbWluSXRlbXM6IHRydWUsCiAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLAogICAgICBtYXhQcm9wZXJ0aWVzOiB0cnVlLAogICAgICBtaW5Qcm9wZXJ0aWVzOiB0cnVlCiAgICB9OwogICAgZnVuY3Rpb24gX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoZW1hMiwganNvblB0ciwgcm9vdFNjaGVtYSwgcGFyZW50SnNvblB0ciwgcGFyZW50S2V5d29yZCwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCkgewogICAgICBpZiAoc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheShzY2hlbWEyKSkgewogICAgICAgIHByZShzY2hlbWEyLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hMikgewogICAgICAgICAgdmFyIHNjaCA9IHNjaGVtYTJba2V5XTsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgaWYgKGtleSBpbiB0cmF2ZXJzZS5hcnJheUtleXdvcmRzKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspCiAgICAgICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hbaV0sIGpzb25QdHIgKyAiLyIgKyBrZXkgKyAiLyIgKyBpLCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEyLCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gdHJhdmVyc2Uua2V5d29yZHMgfHwgb3B0cy5hbGxLZXlzICYmICEoa2V5IGluIHRyYXZlcnNlLnNraXBLZXl3b3JkcykpIHsKICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoLCBqc29uUHRyICsgIi8iICsga2V5LCByb290U2NoZW1hLCBqc29uUHRyLCBrZXksIHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwb3N0KHNjaGVtYTIsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3Jlc29sdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdldFNjaGVtYVJlZnMgPSBleHBvcnRzMi5yZXNvbHZlVXJsID0gZXhwb3J0czIubm9ybWFsaXplSWQgPSBleHBvcnRzMi5fZ2V0RnVsbFBhdGggPSBleHBvcnRzMi5nZXRGdWxsUGF0aCA9IGV4cG9ydHMyLmlubGluZVJlZiA9IHZvaWQgMDsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICB2YXIgdHJhdmVyc2UgPSByZXF1aXJlX2pzb25fc2NoZW1hX3RyYXZlcnNlKCk7CiAgICB2YXIgU0lNUExFX0lOTElORUQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ0eXBlIiwKICAgICAgImZvcm1hdCIsCiAgICAgICJwYXR0ZXJuIiwKICAgICAgIm1heExlbmd0aCIsCiAgICAgICJtaW5MZW5ndGgiLAogICAgICAibWF4UHJvcGVydGllcyIsCiAgICAgICJtaW5Qcm9wZXJ0aWVzIiwKICAgICAgIm1heEl0ZW1zIiwKICAgICAgIm1pbkl0ZW1zIiwKICAgICAgIm1heGltdW0iLAogICAgICAibWluaW11bSIsCiAgICAgICJ1bmlxdWVJdGVtcyIsCiAgICAgICJtdWx0aXBsZU9mIiwKICAgICAgInJlcXVpcmVkIiwKICAgICAgImVudW0iLAogICAgICAiY29uc3QiCiAgICBdKTsKICAgIGZ1bmN0aW9uIGlubGluZVJlZihzY2hlbWEyLCBsaW1pdCA9IHRydWUpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGxpbWl0ID09PSB0cnVlKQogICAgICAgIHJldHVybiAhaGFzUmVmKHNjaGVtYTIpOwogICAgICBpZiAoIWxpbWl0KQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIGNvdW50S2V5cyhzY2hlbWEyKSA8PSBsaW1pdDsKICAgIH0KICAgIGV4cG9ydHMyLmlubGluZVJlZiA9IGlubGluZVJlZjsKICAgIHZhciBSRUZfS0VZV09SRFMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICIkcmVmIiwKICAgICAgIiRyZWN1cnNpdmVSZWYiLAogICAgICAiJHJlY3Vyc2l2ZUFuY2hvciIsCiAgICAgICIkZHluYW1pY1JlZiIsCiAgICAgICIkZHluYW1pY0FuY2hvciIKICAgIF0pOwogICAgZnVuY3Rpb24gaGFzUmVmKHNjaGVtYTIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hMikgewogICAgICAgIGlmIChSRUZfS0VZV09SRFMuaGFzKGtleSkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2tleV07CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSAmJiBzY2guc29tZShoYXNSZWYpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIgJiYgaGFzUmVmKHNjaCkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBjb3VudEtleXMoc2NoZW1hMikgewogICAgICBsZXQgY291bnQgPSAwOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIiRyZWYiKQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICAgIGNvdW50Kys7CiAgICAgICAgaWYgKFNJTVBMRV9JTkxJTkVELmhhcyhrZXkpKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgICgwLCB1dGlsXzEuZWFjaEl0ZW0pKHNjaGVtYTJba2V5XSwgKHNjaCkgPT4gY291bnQgKz0gY291bnRLZXlzKHNjaCkpOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgPT09IEluZmluaXR5KQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBjb3VudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEZ1bGxQYXRoKHJlc29sdmVyLCBpZCA9ICIiLCBub3JtYWxpemUpIHsKICAgICAgaWYgKG5vcm1hbGl6ZSAhPT0gZmFsc2UpCiAgICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIGNvbnN0IHAgPSByZXNvbHZlci5wYXJzZShpZCk7CiAgICAgIHJldHVybiBfZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIHApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBnZXRGdWxsUGF0aDsKICAgIGZ1bmN0aW9uIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCkgewogICAgICBjb25zdCBzZXJpYWxpemVkID0gcmVzb2x2ZXIuc2VyaWFsaXplKHApOwogICAgICByZXR1cm4gc2VyaWFsaXplZC5zcGxpdCgiIyIpWzBdICsgIiMiOwogICAgfQogICAgZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gX2dldEZ1bGxQYXRoOwogICAgdmFyIFRSQUlMSU5HX1NMQVNIX0hBU0ggPSAvI1wvPyQvOwogICAgZnVuY3Rpb24gbm9ybWFsaXplSWQoaWQpIHsKICAgICAgcmV0dXJuIGlkID8gaWQucmVwbGFjZShUUkFJTElOR19TTEFTSF9IQVNILCAiIikgOiAiIjsKICAgIH0KICAgIGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gbm9ybWFsaXplSWQ7CiAgICBmdW5jdGlvbiByZXNvbHZlVXJsKHJlc29sdmVyLCBiYXNlSWQsIGlkKSB7CiAgICAgIGlkID0gbm9ybWFsaXplSWQoaWQpOwogICAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZShiYXNlSWQsIGlkKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVVcmwgPSByZXNvbHZlVXJsOwogICAgdmFyIEFOQ0hPUiA9IC9eW2Etel9dWy1hLXowLTkuX10qJC9pOwogICAgZnVuY3Rpb24gZ2V0U2NoZW1hUmVmcyhzY2hlbWEyLCBiYXNlSWQpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4ge307CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQsIHVyaVJlc29sdmVyIH0gPSB0aGlzLm9wdHM7CiAgICAgIGNvbnN0IHNjaElkID0gbm9ybWFsaXplSWQoc2NoZW1hMltzY2hlbWFJZF0gfHwgYmFzZUlkKTsKICAgICAgY29uc3QgYmFzZUlkcyA9IHsgIiI6IHNjaElkIH07CiAgICAgIGNvbnN0IHBhdGhQcmVmaXggPSBnZXRGdWxsUGF0aCh1cmlSZXNvbHZlciwgc2NoSWQsIGZhbHNlKTsKICAgICAgY29uc3QgbG9jYWxSZWZzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYVJlZnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICB0cmF2ZXJzZShzY2hlbWEyLCB7IGFsbEtleXM6IHRydWUgfSwgKHNjaCwganNvblB0ciwgXywgcGFyZW50SnNvblB0cikgPT4gewogICAgICAgIGlmIChwYXJlbnRKc29uUHRyID09PSB2b2lkIDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZnVsbFBhdGggPSBwYXRoUHJlZml4ICsganNvblB0cjsKICAgICAgICBsZXQgaW5uZXJCYXNlSWQgPSBiYXNlSWRzW3BhcmVudEpzb25QdHJdOwogICAgICAgIGlmICh0eXBlb2Ygc2NoW3NjaGVtYUlkXSA9PSAic3RyaW5nIikKICAgICAgICAgIGlubmVyQmFzZUlkID0gYWRkUmVmLmNhbGwodGhpcywgc2NoW3NjaGVtYUlkXSk7CiAgICAgICAgYWRkQW5jaG9yLmNhbGwodGhpcywgc2NoLiRhbmNob3IpOwogICAgICAgIGFkZEFuY2hvci5jYWxsKHRoaXMsIHNjaC4kZHluYW1pY0FuY2hvcik7CiAgICAgICAgYmFzZUlkc1tqc29uUHRyXSA9IGlubmVyQmFzZUlkOwogICAgICAgIGZ1bmN0aW9uIGFkZFJlZihyZWYpIHsKICAgICAgICAgIGNvbnN0IF9yZXNvbHZlID0gdGhpcy5vcHRzLnVyaVJlc29sdmVyLnJlc29sdmU7CiAgICAgICAgICByZWYgPSBub3JtYWxpemVJZChpbm5lckJhc2VJZCA/IF9yZXNvbHZlKGlubmVyQmFzZUlkLCByZWYpIDogcmVmKTsKICAgICAgICAgIGlmIChzY2hlbWFSZWZzLmhhcyhyZWYpKQogICAgICAgICAgICB0aHJvdyBhbWJpZ3VvcyhyZWYpOwogICAgICAgICAgc2NoZW1hUmVmcy5hZGQocmVmKTsKICAgICAgICAgIGxldCBzY2hPclJlZiA9IHRoaXMucmVmc1tyZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAic3RyaW5nIikKICAgICAgICAgICAgc2NoT3JSZWYgPSB0aGlzLnJlZnNbc2NoT3JSZWZdOwogICAgICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAib2JqZWN0IikgewogICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgc2NoT3JSZWYuc2NoZW1hLCByZWYpOwogICAgICAgICAgfSBlbHNlIGlmIChyZWYgIT09IG5vcm1hbGl6ZUlkKGZ1bGxQYXRoKSkgewogICAgICAgICAgICBpZiAocmVmWzBdID09PSAiIyIpIHsKICAgICAgICAgICAgICBjaGVja0FtYmlndW9zUmVmKHNjaCwgbG9jYWxSZWZzW3JlZl0sIHJlZik7CiAgICAgICAgICAgICAgbG9jYWxSZWZzW3JlZl0gPSBzY2g7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdGhpcy5yZWZzW3JlZl0gPSBmdWxsUGF0aDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHJlZjsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkQW5jaG9yKGFuY2hvcikgewogICAgICAgICAgaWYgKHR5cGVvZiBhbmNob3IgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKCFBTkNIT1IudGVzdChhbmNob3IpKQogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhbmNob3IgIiR7YW5jaG9yfSJgKTsKICAgICAgICAgICAgYWRkUmVmLmNhbGwodGhpcywgYCMke2FuY2hvcn1gKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gbG9jYWxSZWZzOwogICAgICBmdW5jdGlvbiBjaGVja0FtYmlndW9zUmVmKHNjaDEsIHNjaDIsIHJlZikgewogICAgICAgIGlmIChzY2gyICE9PSB2b2lkIDAgJiYgIWVxdWFsKHNjaDEsIHNjaDIpKQogICAgICAgICAgdGhyb3cgYW1iaWd1b3MocmVmKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhbWJpZ3VvcyhyZWYpIHsKICAgICAgICByZXR1cm4gbmV3IEVycm9yKGByZWZlcmVuY2UgIiR7cmVmfSIgcmVzb2x2ZXMgdG8gbW9yZSB0aGFuIG9uZSBzY2hlbWFgKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0U2NoZW1hUmVmcyA9IGdldFNjaGVtYVJlZnM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzCnZhciByZXF1aXJlX3ZhbGlkYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXREYXRhID0gZXhwb3J0czIuS2V5d29yZEN4dCA9IGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdm9pZCAwOwogICAgdmFyIGJvb2xTY2hlbWFfMSA9IHJlcXVpcmVfYm9vbFNjaGVtYSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZGF0YVR5cGVfMiA9IHJlcXVpcmVfZGF0YVR5cGUoKTsKICAgIHZhciBkZWZhdWx0c18xID0gcmVxdWlyZV9kZWZhdWx0cygpOwogICAgdmFyIGtleXdvcmRfMSA9IHJlcXVpcmVfa2V5d29yZCgpOwogICAgdmFyIHN1YnNjaGVtYV8xID0gcmVxdWlyZV9zdWJzY2hlbWEoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlRnVuY3Rpb25Db2RlKGl0KSB7CiAgICAgIGlmIChpc1NjaGVtYU9iaihpdCkpIHsKICAgICAgICBjaGVja0tleXdvcmRzKGl0KTsKICAgICAgICBpZiAoc2NoZW1hQ3h0SGFzUnVsZXMoaXQpKSB7CiAgICAgICAgICB0b3BTY2hlbWFPYmpDb2RlKGl0KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gKDAsIGJvb2xTY2hlbWFfMS50b3BCb29sT3JFbXB0eVNjaGVtYSkoaXQpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdmFsaWRhdGVGdW5jdGlvbkNvZGU7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uKHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hRW52LCBvcHRzIH0sIGJvZHkpIHsKICAgICAgaWYgKG9wdHMuY29kZS5lczUpIHsKICAgICAgICBnZW4uZnVuYyh2YWxpZGF0ZU5hbWUsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCJ1c2Ugc3RyaWN0IjsgJHtmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpfWApOwogICAgICAgICAgZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKTsKICAgICAgICAgIGdlbi5jb2RlKGJvZHkpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5mdW5jKHZhbGlkYXRlTmFtZSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5kYXRhfSwgJHtkZXN0cnVjdHVyZVZhbEN4dChvcHRzKX1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiBnZW4uY29kZShmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpKS5jb2RlKGJvZHkpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHQob3B0cykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB7JHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofT0iIiwgJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX0sICR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfT0ke25hbWVzXzEuZGVmYXVsdC5kYXRhfSR7b3B0cy5keW5hbWljUmVmID8gKDAsIGNvZGVnZW5fMS5fKWAsICR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfT17fWAgOiBjb2RlZ2VuXzEubmlsfX09e31gOwogICAgfQogICAgZnVuY3Rpb24gZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKSB7CiAgICAgIGdlbi5pZihuYW1lc18xLmRlZmF1bHQudmFsQ3h0LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRofWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhfWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eX1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhfWApOwogICAgICAgIGlmIChvcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzfWApOwogICAgICB9LCAoKSA9PiB7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLl8pYCIiYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsIG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgICBpZiAob3B0cy5keW5hbWljUmVmKQogICAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnMsICgwLCBjb2RlZ2VuXzEuXylge31gKTsKICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiB0b3BTY2hlbWFPYmpDb2RlKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzLCBnZW4gfSA9IGl0OwogICAgICB2YWxpZGF0ZUZ1bmN0aW9uKGl0LCAoKSA9PiB7CiAgICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgJiYgc2NoZW1hMi4kY29tbWVudCkKICAgICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgICBjaGVja05vRGVmYXVsdChpdCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAwKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJlc2V0RXZhbHVhdGVkKGl0KTsKICAgICAgICB0eXBlQW5kS2V5d29yZHMoaXQpOwogICAgICAgIHJldHVyblJlc3VsdHMoaXQpOwogICAgICB9KTsKICAgICAgcmV0dXJuOwogICAgfQogICAgZnVuY3Rpb24gcmVzZXRFdmFsdWF0ZWQoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSB9ID0gaXQ7CiAgICAgIGl0LmV2YWx1YXRlZCA9IGdlbi5jb25zdCgiZXZhbHVhdGVkIiwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXZhbHVhdGVkYCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljUHJvcHNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9LnByb3BzYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljSXRlbXNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9Lml0ZW1zYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICB9CiAgICBmdW5jdGlvbiBmdW5jU291cmNlVXJsKHNjaGVtYTIsIG9wdHMpIHsKICAgICAgY29uc3Qgc2NoSWQgPSB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiBzY2hlbWEyW29wdHMuc2NoZW1hSWRdOwogICAgICByZXR1cm4gc2NoSWQgJiYgKG9wdHMuY29kZS5zb3VyY2UgfHwgb3B0cy5jb2RlLnByb2Nlc3MpID8gKDAsIGNvZGVnZW5fMS5fKWAvKiMgc291cmNlVVJMPSR7c2NoSWR9ICovYCA6IGNvZGVnZW5fMS5uaWw7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJzY2hlbWFDb2RlKGl0LCB2YWxpZCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgc3ViU2NoZW1hT2JqQ29kZShpdCwgdmFsaWQpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgfQogICAgICAoMCwgYm9vbFNjaGVtYV8xLmJvb2xPckVtcHR5U2NoZW1hKShpdCwgdmFsaWQpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hQ3h0SGFzUnVsZXMoeyBzY2hlbWE6IHNjaGVtYTIsIHNlbGY6IHNlbGYyIH0pIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gIXNjaGVtYTI7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYTIpCiAgICAgICAgaWYgKHNlbGYyLlJVTEVTLmFsbFtrZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU2NoZW1hT2JqKGl0KSB7CiAgICAgIHJldHVybiB0eXBlb2YgaXQuc2NoZW1hICE9ICJib29sZWFuIjsKICAgIH0KICAgIGZ1bmN0aW9uIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBnZW4sIG9wdHMgfSA9IGl0OwogICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEyLiRjb21tZW50KQogICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgdXBkYXRlQ29udGV4dChpdCk7CiAgICAgIGNoZWNrQXN5bmNTY2hlbWEoaXQpOwogICAgICBjb25zdCBlcnJzQ291bnQgPSBnZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KTsKICAgICAgZ2VuLnZhcih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke2VycnNDb3VudH0gPT09ICR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc31gKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZHMoaXQpIHsKICAgICAgKDAsIHV0aWxfMS5jaGVja1Vua25vd25SdWxlcykoaXQpOwogICAgICBjaGVja1JlZnNBbmRLZXl3b3JkcyhpdCk7CiAgICB9CiAgICBmdW5jdGlvbiB0eXBlQW5kS2V5d29yZHMoaXQsIGVycnNDb3VudCkgewogICAgICBpZiAoaXQub3B0cy5qdGQpCiAgICAgICAgcmV0dXJuIHNjaGVtYUtleXdvcmRzKGl0LCBbXSwgZmFsc2UsIGVycnNDb3VudCk7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIGRhdGFUeXBlXzEuZ2V0U2NoZW1hVHlwZXMpKGl0LnNjaGVtYSk7CiAgICAgIGNvbnN0IGNoZWNrZWRUeXBlcyA9ICgwLCBkYXRhVHlwZV8xLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUpKGl0LCB0eXBlcyk7CiAgICAgIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgIWNoZWNrZWRUeXBlcywgZXJyc0NvdW50KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEyLiRyZWYgJiYgb3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgJiYgKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgc2VsZjIuUlVMRVMpKSB7CiAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4oYCRyZWY6IGtleXdvcmRzIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTm9EZWZhdWx0KGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYTIuZGVmYXVsdCAhPT0gdm9pZCAwICYmIG9wdHMudXNlRGVmYXVsdHMgJiYgb3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICJkZWZhdWx0IGlzIGlnbm9yZWQgaW4gdGhlIHNjaGVtYSByb290Iik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUNvbnRleHQoaXQpIHsKICAgICAgY29uc3Qgc2NoSWQgPSBpdC5zY2hlbWFbaXQub3B0cy5zY2hlbWFJZF07CiAgICAgIGlmIChzY2hJZCkKICAgICAgICBpdC5iYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGl0LmJhc2VJZCwgc2NoSWQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY1NjaGVtYShpdCkgewogICAgICBpZiAoaXQuc2NoZW1hLiRhc3luYyAmJiAhaXQuc2NoZW1hRW52LiRhc3luYykKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIHNjaGVtYSBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gY29tbWVudEtleXdvcmQoeyBnZW4sIHNjaGVtYUVudiwgc2NoZW1hOiBzY2hlbWEyLCBlcnJTY2hlbWFQYXRoLCBvcHRzIH0pIHsKICAgICAgY29uc3QgbXNnID0gc2NoZW1hMi4kY29tbWVudDsKICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgPT09IHRydWUpIHsKICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnNlbGZ9LmxvZ2dlci5sb2coJHttc2d9KWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcHRzLiRjb21tZW50ID09ICJmdW5jdGlvbiIpIHsKICAgICAgICBjb25zdCBzY2hlbWFQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyU2NoZW1hUGF0aH0vJGNvbW1lbnRgOwogICAgICAgIGNvbnN0IHJvb3ROYW1lID0gZ2VuLnNjb3BlVmFsdWUoInJvb3QiLCB7IHJlZjogc2NoZW1hRW52LnJvb3QgfSk7CiAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5zZWxmfS5vcHRzLiRjb21tZW50KCR7bXNnfSwgJHtzY2hlbWFQYXRofSwgJHtyb290TmFtZX0uc2NoZW1hKWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiByZXR1cm5SZXN1bHRzKGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFFbnYsIHZhbGlkYXRlTmFtZSwgVmFsaWRhdGlvbkVycm9yLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYUVudi4kYXN5bmMpIHsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAwYCwgKCkgPT4gZ2VuLnJldHVybihuYW1lc18xLmRlZmF1bHQuZGF0YSksICgpID0+IGdlbi50aHJvdygoMCwgY29kZWdlbl8xLl8pYG5ldyAke1ZhbGlkYXRpb25FcnJvcn0oJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30pYCkpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXJyb3JzYCwgbmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMpOwogICAgICAgIGlmIChvcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgYXNzaWduRXZhbHVhdGVkKGl0KTsKICAgICAgICBnZW4ucmV0dXJuKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gMGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhc3NpZ25FdmFsdWF0ZWQoeyBnZW4sIGV2YWx1YXRlZCwgcHJvcHMsIGl0ZW1zIH0pIHsKICAgICAgaWYgKHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5wcm9wc2AsIHByb3BzKTsKICAgICAgaWYgKGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpCiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXZhbHVhdGVkfS5pdGVtc2AsIGl0ZW1zKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgdHlwZUVycm9ycywgZXJyc0NvdW50KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGFsbEVycm9ycywgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICBjb25zdCB7IFJVTEVTIH0gPSBzZWxmMjsKICAgICAgaWYgKHNjaGVtYTIuJHJlZiAmJiAob3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgfHwgISgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYTIsIFJVTEVTKSkpIHsKICAgICAgICBnZW4uYmxvY2soKCkgPT4ga2V5d29yZENvZGUoaXQsICIkcmVmIiwgUlVMRVMuYWxsLiRyZWYuZGVmaW5pdGlvbikpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIW9wdHMuanRkKQogICAgICAgIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIFJVTEVTLnJ1bGVzKQogICAgICAgICAgZ3JvdXBLZXl3b3Jkcyhncm91cCk7CiAgICAgICAgZ3JvdXBLZXl3b3JkcyhSVUxFUy5wb3N0KTsKICAgICAgfSk7CiAgICAgIGZ1bmN0aW9uIGdyb3VwS2V5d29yZHMoZ3JvdXApIHsKICAgICAgICBpZiAoISgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlR3JvdXApKHNjaGVtYTIsIGdyb3VwKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAoZ3JvdXAudHlwZSkgewogICAgICAgICAgZ2VuLmlmKCgwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGUpKGdyb3VwLnR5cGUsIGRhdGEsIG9wdHMuc3RyaWN0TnVtYmVycykpOwogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgICBpZiAodHlwZXMubGVuZ3RoID09PSAxICYmIHR5cGVzWzBdID09PSBncm91cC50eXBlICYmIHR5cGVFcnJvcnMpIHsKICAgICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICAgICAgKDAsIGRhdGFUeXBlXzIucmVwb3J0VHlwZUVycm9yKShpdCk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCk7CiAgICAgICAgfQogICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gJHtlcnJzQ291bnQgfHwgMH1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gaXRlcmF0ZUtleXdvcmRzKGl0LCBncm91cCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBvcHRzOiB7IHVzZURlZmF1bHRzIH0gfSA9IGl0OwogICAgICBpZiAodXNlRGVmYXVsdHMpCiAgICAgICAgKDAsIGRlZmF1bHRzXzEuYXNzaWduRGVmYXVsdHMpKGl0LCBncm91cC50eXBlKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgZ3JvdXAucnVsZXMpIHsKICAgICAgICAgIGlmICgoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKHNjaGVtYTIsIHJ1bGUpKSB7CiAgICAgICAgICAgIGtleXdvcmRDb2RlKGl0LCBydWxlLmtleXdvcmQsIHJ1bGUuZGVmaW5pdGlvbiwgZ3JvdXAudHlwZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmIChpdC5zY2hlbWFFbnYubWV0YSB8fCAhaXQub3B0cy5zdHJpY3RUeXBlcykKICAgICAgICByZXR1cm47CiAgICAgIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGlmICghaXQub3B0cy5hbGxvd1VuaW9uVHlwZXMpCiAgICAgICAgY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGNoZWNrS2V5d29yZFR5cGVzKGl0LCBpdC5kYXRhVHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tDb250ZXh0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmICghdHlwZXMubGVuZ3RoKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFpdC5kYXRhVHlwZXMubGVuZ3RoKSB7CiAgICAgICAgaXQuZGF0YVR5cGVzID0gdHlwZXM7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHR5cGVzLmZvckVhY2goKHQpID0+IHsKICAgICAgICBpZiAoIWluY2x1ZGVzVHlwZShpdC5kYXRhVHlwZXMsIHQpKSB7CiAgICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCBgdHlwZSAiJHt0fSIgbm90IGFsbG93ZWQgYnkgY29udGV4dCAiJHtpdC5kYXRhVHlwZXMuam9pbigiLCIpfSJgKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgdHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0cykgewogICAgICBpZiAodHMubGVuZ3RoID4gMSAmJiAhKHRzLmxlbmd0aCA9PT0gMiAmJiB0cy5pbmNsdWRlcygibnVsbCIpKSkgewogICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsICJ1c2UgYWxsb3dVbmlvblR5cGVzIHRvIGFsbG93IHVuaW9uIHR5cGUga2V5d29yZCIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0tleXdvcmRUeXBlcyhpdCwgdHMpIHsKICAgICAgY29uc3QgcnVsZXMgPSBpdC5zZWxmLlJVTEVTLmFsbDsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIHJ1bGVzKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHJ1bGVzW2tleXdvcmRdOwogICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiAmJiAoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKGl0LnNjaGVtYSwgcnVsZSkpIHsKICAgICAgICAgIGNvbnN0IHsgdHlwZTogdHlwZTIgfSA9IHJ1bGUuZGVmaW5pdGlvbjsKICAgICAgICAgIGlmICh0eXBlMi5sZW5ndGggJiYgIXR5cGUyLnNvbWUoKHQpID0+IGhhc0FwcGxpY2FibGVUeXBlKHRzLCB0KSkpIHsKICAgICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYG1pc3NpbmcgdHlwZSAiJHt0eXBlMi5qb2luKCIsIil9IiBmb3Iga2V5d29yZCAiJHtrZXl3b3JkfSJgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGhhc0FwcGxpY2FibGVUeXBlKHNjaFRzLCBrd2RUKSB7CiAgICAgIHJldHVybiBzY2hUcy5pbmNsdWRlcyhrd2RUKSB8fCBrd2RUID09PSAibnVtYmVyIiAmJiBzY2hUcy5pbmNsdWRlcygiaW50ZWdlciIpOwogICAgfQogICAgZnVuY3Rpb24gaW5jbHVkZXNUeXBlKHRzLCB0KSB7CiAgICAgIHJldHVybiB0cy5pbmNsdWRlcyh0KSB8fCB0ID09PSAiaW50ZWdlciIgJiYgdHMuaW5jbHVkZXMoIm51bWJlciIpOwogICAgfQogICAgZnVuY3Rpb24gbmFycm93U2NoZW1hVHlwZXMoaXQsIHdpdGhUeXBlcykgewogICAgICBjb25zdCB0cyA9IFtdOwogICAgICBmb3IgKGNvbnN0IHQgb2YgaXQuZGF0YVR5cGVzKSB7CiAgICAgICAgaWYgKGluY2x1ZGVzVHlwZSh3aXRoVHlwZXMsIHQpKQogICAgICAgICAgdHMucHVzaCh0KTsKICAgICAgICBlbHNlIGlmICh3aXRoVHlwZXMuaW5jbHVkZXMoImludGVnZXIiKSAmJiB0ID09PSAibnVtYmVyIikKICAgICAgICAgIHRzLnB1c2goImludGVnZXIiKTsKICAgICAgfQogICAgICBpdC5kYXRhVHlwZXMgPSB0czsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmljdFR5cGVzRXJyb3IoaXQsIG1zZykgewogICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgIG1zZyArPSBgIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0VHlwZXMpYDsKICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBtc2csIGl0Lm9wdHMuc3RyaWN0VHlwZXMpOwogICAgfQogICAgdmFyIEtleXdvcmRDeHQgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGl0LCBkZWYsIGtleXdvcmQpIHsKICAgICAgICAoMCwga2V5d29yZF8xLnZhbGlkYXRlS2V5d29yZFVzYWdlKShpdCwgZGVmLCBrZXl3b3JkKTsKICAgICAgICB0aGlzLmdlbiA9IGl0LmdlbjsKICAgICAgICB0aGlzLmFsbEVycm9ycyA9IGl0LmFsbEVycm9yczsKICAgICAgICB0aGlzLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgIHRoaXMuZGF0YSA9IGl0LmRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgdGhpcy4kZGF0YSA9IGRlZi4kZGF0YSAmJiBpdC5vcHRzLiRkYXRhICYmIHRoaXMuc2NoZW1hICYmIHRoaXMuc2NoZW1hLiRkYXRhOwogICAgICAgIHRoaXMuc2NoZW1hVmFsdWUgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgdGhpcy5zY2hlbWEsIGtleXdvcmQsIHRoaXMuJGRhdGEpOwogICAgICAgIHRoaXMuc2NoZW1hVHlwZSA9IGRlZi5zY2hlbWFUeXBlOwogICAgICAgIHRoaXMucGFyZW50U2NoZW1hID0gaXQuc2NoZW1hOwogICAgICAgIHRoaXMucGFyYW1zID0ge307CiAgICAgICAgdGhpcy5pdCA9IGl0OwogICAgICAgIHRoaXMuZGVmID0gZGVmOwogICAgICAgIGlmICh0aGlzLiRkYXRhKSB7CiAgICAgICAgICB0aGlzLnNjaGVtYUNvZGUgPSBpdC5nZW4uY29uc3QoInZTY2hlbWEiLCBnZXREYXRhKHRoaXMuJGRhdGEsIGl0KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IHRoaXMuc2NoZW1hVmFsdWU7CiAgICAgICAgICBpZiAoISgwLCBrZXl3b3JkXzEudmFsaWRTY2hlbWFUeXBlKSh0aGlzLnNjaGVtYSwgZGVmLnNjaGVtYVR5cGUsIGRlZi5hbGxvd1VuZGVmaW5lZCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2tleXdvcmR9IHZhbHVlIG11c3QgYmUgJHtKU09OLnN0cmluZ2lmeShkZWYuc2NoZW1hVHlwZSl9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgiY29kZSIgaW4gZGVmID8gZGVmLnRyYWNrRXJyb3JzIDogZGVmLmVycm9ycyAhPT0gZmFsc2UpIHsKICAgICAgICAgIHRoaXMuZXJyc0NvdW50ID0gaXQuZ2VuLmNvbnN0KCJfZXJycyIsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMpOwogICAgICAgIH0KICAgICAgfQogICAgICByZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsUmVzdWx0KGNvbmRpdGlvbiwgc3VjY2Vzc0FjdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgaWYgKGZhaWxBY3Rpb24pCiAgICAgICAgICBmYWlsQWN0aW9uKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmIChzdWNjZXNzQWN0aW9uKSB7CiAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgICBzdWNjZXNzQWN0aW9uKCk7CiAgICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgICBwYXNzKGNvbmRpdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZmFpbFJlc3VsdCgoMCwgY29kZWdlbl8xLm5vdCkoY29uZGl0aW9uKSwgdm9pZCAwLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsKGNvbmRpdGlvbikgewogICAgICAgIGlmIChjb25kaXRpb24gPT09IHZvaWQgMCkgewogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgICAgaWYgKCF0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uaWYoZmFsc2UpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLmdlbi5pZihjb25kaXRpb24pOwogICAgICAgIHRoaXMuZXJyb3IoKTsKICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgIGVsc2UKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBmYWlsJGRhdGEoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKCF0aGlzLiRkYXRhKQogICAgICAgICAgcmV0dXJuIHRoaXMuZmFpbChjb25kaXRpb24pOwogICAgICAgIGNvbnN0IHsgc2NoZW1hQ29kZSB9ID0gdGhpczsKICAgICAgICB0aGlzLmZhaWwoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICE9PSB1bmRlZmluZWQgJiYgKCR7KDAsIGNvZGVnZW5fMS5vcikodGhpcy5pbnZhbGlkJGRhdGEoKSwgY29uZGl0aW9uKX0pYCk7CiAgICAgIH0KICAgICAgZXJyb3IoYXBwZW5kLCBlcnJvclBhcmFtcywgZXJyb3JQYXRocykgewogICAgICAgIGlmIChlcnJvclBhcmFtcykgewogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoZXJyb3JQYXJhbXMpOwogICAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgICAgIHRoaXMuc2V0UGFyYW1zKHt9KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICBfZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKSB7CiAgICAgICAgOwogICAgICAgIChhcHBlbmQgPyBlcnJvcnNfMS5yZXBvcnRFeHRyYUVycm9yIDogZXJyb3JzXzEucmVwb3J0RXJyb3IpKHRoaXMsIHRoaXMuZGVmLmVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICAkZGF0YUVycm9yKCkgewogICAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuJGRhdGFFcnJvciB8fCBlcnJvcnNfMS5rZXl3b3JkJERhdGFFcnJvcik7CiAgICAgIH0KICAgICAgcmVzZXQoKSB7CiAgICAgICAgaWYgKHRoaXMuZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCAidHJhY2tFcnJvcnMiIHRvIGtleXdvcmQgZGVmaW5pdGlvbicpOwogICAgICAgICgwLCBlcnJvcnNfMS5yZXNldEVycm9yc0NvdW50KSh0aGlzLmdlbiwgdGhpcy5lcnJzQ291bnQpOwogICAgICB9CiAgICAgIG9rKGNvbmQpIHsKICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgdGhpcy5nZW4uaWYoY29uZCk7CiAgICAgIH0KICAgICAgc2V0UGFyYW1zKG9iaiwgYXNzaWduKSB7CiAgICAgICAgaWYgKGFzc2lnbikKICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5wYXJhbXMsIG9iaik7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5wYXJhbXMgPSBvYmo7CiAgICAgIH0KICAgICAgYmxvY2skZGF0YSh2YWxpZCwgY29kZUJsb2NrLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHRoaXMuZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICAgIHRoaXMuY2hlY2skZGF0YSh2YWxpZCwgJGRhdGFWYWxpZCk7CiAgICAgICAgICBjb2RlQmxvY2soKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBjaGVjayRkYXRhKHZhbGlkID0gY29kZWdlbl8xLm5pbCwgJGRhdGFWYWxpZCA9IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiB9ID0gdGhpczsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ID09PSB1bmRlZmluZWRgLCAkZGF0YVZhbGlkKSk7CiAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgaWYgKHNjaGVtYVR5cGUubGVuZ3RoIHx8IGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgZ2VuLmVsc2VJZih0aGlzLmludmFsaWQkZGF0YSgpKTsKICAgICAgICAgIHRoaXMuJGRhdGFFcnJvcigpOwogICAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGdlbi5lbHNlKCk7CiAgICAgIH0KICAgICAgaW52YWxpZCRkYXRhKCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFDb2RlLCBzY2hlbWFUeXBlLCBkZWYsIGl0IH0gPSB0aGlzOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSh3cm9uZyREYXRhVHlwZSgpLCBpbnZhbGlkJERhdGFTY2hlbWEoKSk7CiAgICAgICAgZnVuY3Rpb24gd3JvbmckRGF0YVR5cGUoKSB7CiAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGgpIHsKICAgICAgICAgICAgaWYgKCEoc2NoZW1hQ29kZSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgICBjb25zdCBzdCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hVHlwZSkgPyBzY2hlbWFUeXBlIDogW3NjaGVtYVR5cGVdOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGVzKShzdCwgc2NoZW1hQ29kZSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8yLkRhdGFUeXBlLldyb25nKX1gOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGludmFsaWQkRGF0YVNjaGVtYSgpIHsKICAgICAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWRhdGVTY2hlbWFSZWYgPSBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUkZGF0YSIsIHsgcmVmOiBkZWYudmFsaWRhdGVTY2hlbWEgfSk7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCEke3ZhbGlkYXRlU2NoZW1hUmVmfSgke3NjaGVtYUNvZGV9KWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3Vic2NoZW1hKGFwcGwsIHZhbGlkKSB7CiAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gKDAsIHN1YnNjaGVtYV8xLmdldFN1YnNjaGVtYSkodGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYURhdGEpKHN1YnNjaGVtYSwgdGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYU1vZGUpKHN1YnNjaGVtYSwgYXBwbCk7CiAgICAgICAgY29uc3QgbmV4dENvbnRleHQgPSB7IC4uLnRoaXMuaXQsIC4uLnN1YnNjaGVtYSwgaXRlbXM6IHZvaWQgMCwgcHJvcHM6IHZvaWQgMCB9OwogICAgICAgIHN1YnNjaGVtYUNvZGUobmV4dENvbnRleHQsIHZhbGlkKTsKICAgICAgICByZXR1cm4gbmV4dENvbnRleHQ7CiAgICAgIH0KICAgICAgbWVyZ2VFdmFsdWF0ZWQoc2NoZW1hQ3h0LCB0b05hbWUpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hlbWFDeHQucHJvcHMsIGl0LnByb3BzLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUgJiYgc2NoZW1hQ3h0Lml0ZW1zICE9PSB2b2lkIDApIHsKICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoZW1hQ3h0Lml0ZW1zLCBpdC5pdGVtcywgdG9OYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hlbWFDeHQsIHZhbGlkKSB7CiAgICAgICAgY29uc3QgeyBpdCwgZ2VuIH0gPSB0aGlzOwogICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIChpdC5wcm9wcyAhPT0gdHJ1ZSB8fCBpdC5pdGVtcyAhPT0gdHJ1ZSkpIHsKICAgICAgICAgIGdlbi5pZih2YWxpZCwgKCkgPT4gdGhpcy5tZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIGNvZGVnZW5fMS5OYW1lKSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gS2V5d29yZEN4dDsKICAgIGZ1bmN0aW9uIGtleXdvcmRDb2RlKGl0LCBrZXl3b3JkLCBkZWYsIHJ1bGVUeXBlKSB7CiAgICAgIGNvbnN0IGN4dCA9IG5ldyBLZXl3b3JkQ3h0KGl0LCBkZWYsIGtleXdvcmQpOwogICAgICBpZiAoImNvZGUiIGluIGRlZikgewogICAgICAgIGRlZi5jb2RlKGN4dCwgcnVsZVR5cGUpOwogICAgICB9IGVsc2UgaWYgKGN4dC4kZGF0YSAmJiBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9IGVsc2UgaWYgKCJtYWNybyIgaW4gZGVmKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5tYWNyb0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoZGVmLmNvbXBpbGUgfHwgZGVmLnZhbGlkYXRlKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5mdW5jS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfQogICAgfQogICAgdmFyIEpTT05fUE9JTlRFUiA9IC9eXC8oPzpbXn5dfH4wfH4xKSokLzsKICAgIHZhciBSRUxBVElWRV9KU09OX1BPSU5URVIgPSAvXihbMC05XSspKCN8XC8oPzpbXn5dfH4wfH4xKSopPyQvOwogICAgZnVuY3Rpb24gZ2V0RGF0YSgkZGF0YSwgeyBkYXRhTGV2ZWwsIGRhdGFOYW1lcywgZGF0YVBhdGhBcnIgfSkgewogICAgICBsZXQganNvblBvaW50ZXI7CiAgICAgIGxldCBkYXRhOwogICAgICBpZiAoJGRhdGEgPT09ICIiKQogICAgICAgIHJldHVybiBuYW1lc18xLmRlZmF1bHQucm9vdERhdGE7CiAgICAgIGlmICgkZGF0YVswXSA9PT0gIi8iKSB7CiAgICAgICAgaWYgKCFKU09OX1BPSU5URVIudGVzdCgkZGF0YSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSlNPTi1wb2ludGVyOiAkeyRkYXRhfWApOwogICAgICAgIGpzb25Qb2ludGVyID0gJGRhdGE7CiAgICAgICAgZGF0YSA9IG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gUkVMQVRJVkVfSlNPTl9QT0lOVEVSLmV4ZWMoJGRhdGEpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAgY29uc3QgdXAgPSArbWF0Y2hlc1sxXTsKICAgICAgICBqc29uUG9pbnRlciA9IG1hdGNoZXNbMl07CiAgICAgICAgaWYgKGpzb25Qb2ludGVyID09PSAiIyIpIHsKICAgICAgICAgIGlmICh1cCA+PSBkYXRhTGV2ZWwpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1zZygicHJvcGVydHkvaW5kZXgiLCB1cCkpOwogICAgICAgICAgcmV0dXJuIGRhdGFQYXRoQXJyW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICB9CiAgICAgICAgaWYgKHVwID4gZGF0YUxldmVsKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJkYXRhIiwgdXApKTsKICAgICAgICBkYXRhID0gZGF0YU5hbWVzW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICBpZiAoIWpzb25Qb2ludGVyKQogICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgIH0KICAgICAgbGV0IGV4cHIgPSBkYXRhOwogICAgICBjb25zdCBzZWdtZW50cyA9IGpzb25Qb2ludGVyLnNwbGl0KCIvIik7CiAgICAgIGZvciAoY29uc3Qgc2VnbWVudCBvZiBzZWdtZW50cykgewogICAgICAgIGlmIChzZWdtZW50KSB7CiAgICAgICAgICBkYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KSgoMCwgdXRpbF8xLnVuZXNjYXBlSnNvblBvaW50ZXIpKHNlZ21lbnQpKX1gOwogICAgICAgICAgZXhwciA9ICgwLCBjb2RlZ2VuXzEuXylgJHtleHByfSAmJiAke2RhdGF9YDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIGZ1bmN0aW9uIGVycm9yTXNnKHBvaW50ZXJUeXBlLCB1cCkgewogICAgICAgIHJldHVybiBgQ2Fubm90IGFjY2VzcyAke3BvaW50ZXJUeXBlfSAke3VwfSBsZXZlbHMgdXAsIGN1cnJlbnQgbGV2ZWwgaXMgJHtkYXRhTGV2ZWx9YDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGdldERhdGE7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3ZhbGlkYXRpb25fZXJyb3IuanMKdmFyIHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcwp2YXIgcmVxdWlyZV9yZWZfZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgTWlzc2luZ1JlZkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKHJlc29sdmVyLCBiYXNlSWQsIHJlZiwgbXNnKSB7CiAgICAgICAgc3VwZXIobXNnIHx8IGBjYW4ndCByZXNvbHZlIHJlZmVyZW5jZSAke3JlZn0gZnJvbSBpZCAke2Jhc2VJZH1gKTsKICAgICAgICB0aGlzLm1pc3NpbmdSZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgICAgdGhpcy5taXNzaW5nU2NoZW1hID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkocmVzb2x2ZXIsIHRoaXMubWlzc2luZ1JlZikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IE1pc3NpbmdSZWZFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGV4cG9ydHMyLnJlc29sdmVSZWYgPSBleHBvcnRzMi5jb21waWxlU2NoZW1hID0gZXhwb3J0czIuU2NoZW1hRW52ID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBTY2hlbWFFbnYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGVudikgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmR5bmFtaWNBbmNob3JzID0ge307CiAgICAgICAgbGV0IHNjaGVtYTI7CiAgICAgICAgaWYgKHR5cGVvZiBlbnYuc2NoZW1hID09ICJvYmplY3QiKQogICAgICAgICAgc2NoZW1hMiA9IGVudi5zY2hlbWE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hSWQgPSBlbnYuc2NoZW1hSWQ7CiAgICAgICAgdGhpcy5yb290ID0gZW52LnJvb3QgfHwgdGhpczsKICAgICAgICB0aGlzLmJhc2VJZCA9IChfYSA9IGVudi5iYXNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHNjaGVtYTIgPT09IG51bGwgfHwgc2NoZW1hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoZW1hMltlbnYuc2NoZW1hSWQgfHwgIiRpZCJdKTsKICAgICAgICB0aGlzLnNjaGVtYVBhdGggPSBlbnYuc2NoZW1hUGF0aDsKICAgICAgICB0aGlzLmxvY2FsUmVmcyA9IGVudi5sb2NhbFJlZnM7CiAgICAgICAgdGhpcy5tZXRhID0gZW52Lm1ldGE7CiAgICAgICAgdGhpcy4kYXN5bmMgPSBzY2hlbWEyID09PSBudWxsIHx8IHNjaGVtYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaGVtYTIuJGFzeW5jOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hRW52ID0gU2NoZW1hRW52OwogICAgZnVuY3Rpb24gY29tcGlsZVNjaGVtYShzY2gpIHsKICAgICAgY29uc3QgX3NjaCA9IGdldENvbXBpbGluZ1NjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgIGlmIChfc2NoKQogICAgICAgIHJldHVybiBfc2NoOwogICAgICBjb25zdCByb290SWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHNjaC5yb290LmJhc2VJZCk7CiAgICAgIGNvbnN0IHsgZXM1LCBsaW5lcyB9ID0gdGhpcy5vcHRzLmNvZGU7CiAgICAgIGNvbnN0IHsgb3duUHJvcGVydGllcyB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBnZW4gPSBuZXcgY29kZWdlbl8xLkNvZGVHZW4odGhpcy5zY29wZSwgeyBlczUsIGxpbmVzLCBvd25Qcm9wZXJ0aWVzIH0pOwogICAgICBsZXQgX1ZhbGlkYXRpb25FcnJvcjsKICAgICAgaWYgKHNjaC4kYXN5bmMpIHsKICAgICAgICBfVmFsaWRhdGlvbkVycm9yID0gZ2VuLnNjb3BlVmFsdWUoIkVycm9yIiwgewogICAgICAgICAgcmVmOiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdCwKICAgICAgICAgIGNvZGU6ICgwLCBjb2RlZ2VuXzEuXylgcmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yIikuZGVmYXVsdGAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZGF0ZU5hbWUgPSBnZW4uc2NvcGVOYW1lKCJ2YWxpZGF0ZSIpOwogICAgICBzY2gudmFsaWRhdGVOYW1lID0gdmFsaWRhdGVOYW1lOwogICAgICBjb25zdCBzY2hlbWFDeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGFsbEVycm9yczogdGhpcy5vcHRzLmFsbEVycm9ycywKICAgICAgICBkYXRhOiBuYW1lc18xLmRlZmF1bHQuZGF0YSwKICAgICAgICBwYXJlbnREYXRhOiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwKICAgICAgICBwYXJlbnREYXRhUHJvcGVydHk6IG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksCiAgICAgICAgZGF0YU5hbWVzOiBbbmFtZXNfMS5kZWZhdWx0LmRhdGFdLAogICAgICAgIGRhdGFQYXRoQXJyOiBbY29kZWdlbl8xLm5pbF0sCiAgICAgICAgLy8gVE9ETyBjYW4gaXRzIGxlbmd0aCBiZSB1c2VkIGFzIGRhdGFMZXZlbCBpZiBuaWwgaXMgcmVtb3ZlZD8KICAgICAgICBkYXRhTGV2ZWw6IDAsCiAgICAgICAgZGF0YVR5cGVzOiBbXSwKICAgICAgICBkZWZpbmVkUHJvcGVydGllczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSwKICAgICAgICB0b3BTY2hlbWFSZWY6IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCB0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLnNjaGVtYSwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaC5zY2hlbWEpIH0gOiB7IHJlZjogc2NoLnNjaGVtYSB9KSwKICAgICAgICB2YWxpZGF0ZU5hbWUsCiAgICAgICAgVmFsaWRhdGlvbkVycm9yOiBfVmFsaWRhdGlvbkVycm9yLAogICAgICAgIHNjaGVtYTogc2NoLnNjaGVtYSwKICAgICAgICBzY2hlbWFFbnY6IHNjaCwKICAgICAgICByb290SWQsCiAgICAgICAgYmFzZUlkOiBzY2guYmFzZUlkIHx8IHJvb3RJZCwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IHNjaC5zY2hlbWFQYXRoIHx8ICh0aGlzLm9wdHMuanRkID8gIiIgOiAiIyIpLAogICAgICAgIGVycm9yUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAiImAsCiAgICAgICAgb3B0czogdGhpcy5vcHRzLAogICAgICAgIHNlbGY6IHRoaXMKICAgICAgfTsKICAgICAgbGV0IHNvdXJjZUNvZGU7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5fY29tcGlsYXRpb25zLmFkZChzY2gpOwogICAgICAgICgwLCB2YWxpZGF0ZV8xLnZhbGlkYXRlRnVuY3Rpb25Db2RlKShzY2hlbWFDeHQpOwogICAgICAgIGdlbi5vcHRpbWl6ZSh0aGlzLm9wdHMuY29kZS5vcHRpbWl6ZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGVDb2RlID0gZ2VuLnRvU3RyaW5nKCk7CiAgICAgICAgc291cmNlQ29kZSA9IGAke2dlbi5zY29wZVJlZnMobmFtZXNfMS5kZWZhdWx0LnNjb3BlKX1yZXR1cm4gJHt2YWxpZGF0ZUNvZGV9YDsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUucHJvY2VzcykKICAgICAgICAgIHNvdXJjZUNvZGUgPSB0aGlzLm9wdHMuY29kZS5wcm9jZXNzKHNvdXJjZUNvZGUsIHNjaCk7CiAgICAgICAgY29uc3QgbWFrZVZhbGlkYXRlID0gbmV3IEZ1bmN0aW9uKGAke25hbWVzXzEuZGVmYXVsdC5zZWxmfWAsIGAke25hbWVzXzEuZGVmYXVsdC5zY29wZX1gLCBzb3VyY2VDb2RlKTsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IG1ha2VWYWxpZGF0ZSh0aGlzLCB0aGlzLnNjb3BlLmdldCgpKTsKICAgICAgICB0aGlzLnNjb3BlLnZhbHVlKHZhbGlkYXRlTmFtZSwgeyByZWY6IHZhbGlkYXRlIH0pOwogICAgICAgIHZhbGlkYXRlLmVycm9ycyA9IG51bGw7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hID0gc2NoLnNjaGVtYTsKICAgICAgICB2YWxpZGF0ZS5zY2hlbWFFbnYgPSBzY2g7CiAgICAgICAgaWYgKHNjaC4kYXN5bmMpCiAgICAgICAgICB2YWxpZGF0ZS4kYXN5bmMgPSB0cnVlOwogICAgICAgIGlmICh0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUpIHsKICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZSA9IHsgdmFsaWRhdGVOYW1lLCB2YWxpZGF0ZUNvZGUsIHNjb3BlVmFsdWVzOiBnZW4uX3ZhbHVlcyB9OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5vcHRzLnVuZXZhbHVhdGVkKSB7CiAgICAgICAgICBjb25zdCB7IHByb3BzLCBpdGVtcyB9ID0gc2NoZW1hQ3h0OwogICAgICAgICAgdmFsaWRhdGUuZXZhbHVhdGVkID0gewogICAgICAgICAgICBwcm9wczogcHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IHByb3BzLAogICAgICAgICAgICBpdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IGl0ZW1zLAogICAgICAgICAgICBkeW5hbWljUHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUsCiAgICAgICAgICAgIGR5bmFtaWNJdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0ZS5zb3VyY2UpCiAgICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZS5ldmFsdWF0ZWQgPSAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkodmFsaWRhdGUuZXZhbHVhdGVkKTsKICAgICAgICB9CiAgICAgICAgc2NoLnZhbGlkYXRlID0gdmFsaWRhdGU7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGU7CiAgICAgICAgZGVsZXRlIHNjaC52YWxpZGF0ZU5hbWU7CiAgICAgICAgaWYgKHNvdXJjZUNvZGUpCiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigiRXJyb3IgY29tcGlsaW5nIHNjaGVtYSwgZnVuY3Rpb24gY29kZToiLCBzb3VyY2VDb2RlKTsKICAgICAgICB0aHJvdyBlOwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5kZWxldGUoc2NoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY29tcGlsZVNjaGVtYSA9IGNvbXBpbGVTY2hlbWE7CiAgICBmdW5jdGlvbiByZXNvbHZlUmVmKHJvb3QsIGJhc2VJZCwgcmVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgcmVmKTsKICAgICAgY29uc3Qgc2NoT3JGdW5jID0gcm9vdC5yZWZzW3JlZl07CiAgICAgIGlmIChzY2hPckZ1bmMpCiAgICAgICAgcmV0dXJuIHNjaE9yRnVuYzsKICAgICAgbGV0IF9zY2ggPSByZXNvbHZlLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHNjaGVtYTIgPSAoX2EgPSByb290LmxvY2FsUmVmcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3JlZl07CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGlmIChzY2hlbWEyKQogICAgICAgICAgX3NjaCA9IG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkKICAgICAgICByZXR1cm47CiAgICAgIHJldHVybiByb290LnJlZnNbcmVmXSA9IGlubGluZU9yQ29tcGlsZS5jYWxsKHRoaXMsIF9zY2gpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVJlZiA9IHJlc29sdmVSZWY7CiAgICBmdW5jdGlvbiBpbmxpbmVPckNvbXBpbGUoc2NoKSB7CiAgICAgIGlmICgoMCwgcmVzb2x2ZV8xLmlubGluZVJlZikoc2NoLnNjaGVtYSwgdGhpcy5vcHRzLmlubGluZVJlZnMpKQogICAgICAgIHJldHVybiBzY2guc2NoZW1hOwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gc2NoIDogY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRDb21waWxpbmdTY2hlbWEoc2NoRW52KSB7CiAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHRoaXMuX2NvbXBpbGF0aW9ucykgewogICAgICAgIGlmIChzYW1lU2NoZW1hRW52KHNjaCwgc2NoRW52KSkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGdldENvbXBpbGluZ1NjaGVtYTsKICAgIGZ1bmN0aW9uIHNhbWVTY2hlbWFFbnYoczEsIHMyKSB7CiAgICAgIHJldHVybiBzMS5zY2hlbWEgPT09IHMyLnNjaGVtYSAmJiBzMS5yb290ID09PSBzMi5yb290ICYmIHMxLmJhc2VJZCA9PT0gczIuYmFzZUlkOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShyb290LCByZWYpIHsKICAgICAgbGV0IHNjaDsKICAgICAgd2hpbGUgKHR5cGVvZiAoc2NoID0gdGhpcy5yZWZzW3JlZl0pID09ICJzdHJpbmciKQogICAgICAgIHJlZiA9IHNjaDsKICAgICAgcmV0dXJuIHNjaCB8fCB0aGlzLnNjaGVtYXNbcmVmXSB8fCByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVTY2hlbWEocm9vdCwgcmVmKSB7CiAgICAgIGNvbnN0IHAgPSB0aGlzLm9wdHMudXJpUmVzb2x2ZXIucGFyc2UocmVmKTsKICAgICAgY29uc3QgcmVmUGF0aCA9ICgwLCByZXNvbHZlXzEuX2dldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHApOwogICAgICBsZXQgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCByb290LmJhc2VJZCwgdm9pZCAwKTsKICAgICAgaWYgKE9iamVjdC5rZXlzKHJvb3Quc2NoZW1hKS5sZW5ndGggPiAwICYmIHJlZlBhdGggPT09IGJhc2VJZCkgewogICAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHJvb3QpOwogICAgICB9CiAgICAgIGNvbnN0IGlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmUGF0aCk7CiAgICAgIGNvbnN0IHNjaE9yUmVmID0gdGhpcy5yZWZzW2lkXSB8fCB0aGlzLnNjaGVtYXNbaWRdOwogICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJzdHJpbmciKSB7CiAgICAgICAgY29uc3Qgc2NoID0gcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsIHNjaE9yUmVmKTsKICAgICAgICBpZiAodHlwZW9mIChzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2guc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoKTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIChzY2hPclJlZiA9PT0gbnVsbCB8fCBzY2hPclJlZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoT3JSZWYuc2NoZW1hKSAhPT0gIm9iamVjdCIpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoIXNjaE9yUmVmLnZhbGlkYXRlKQogICAgICAgIGNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2hPclJlZik7CiAgICAgIGlmIChpZCA9PT0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkocmVmKSkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyIH0gPSBzY2hPclJlZjsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgY29uc3Qgc2NoSWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICBpZiAoc2NoSWQpCiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgcmV0dXJuIG5ldyBTY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoT3JSZWYpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IHJlc29sdmVTY2hlbWE7CiAgICB2YXIgUFJFVkVOVF9TQ09QRV9DSEFOR0UgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJwcm9wZXJ0aWVzIiwKICAgICAgInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgImVudW0iLAogICAgICAiZGVwZW5kZW5jaWVzIiwKICAgICAgImRlZmluaXRpb25zIgogICAgXSk7CiAgICBmdW5jdGlvbiBnZXRKc29uUG9pbnRlcihwYXJzZWRSZWYsIHsgYmFzZUlkLCBzY2hlbWE6IHNjaGVtYTIsIHJvb3QgfSkgewogICAgICB2YXIgX2E7CiAgICAgIGlmICgoKF9hID0gcGFyc2VkUmVmLmZyYWdtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbMF0pICE9PSAiLyIpCiAgICAgICAgcmV0dXJuOwogICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFyc2VkUmVmLmZyYWdtZW50LnNsaWNlKDEpLnNwbGl0KCIvIikpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBwYXJ0U2NoZW1hID0gc2NoZW1hMlsoMCwgdXRpbF8xLnVuZXNjYXBlRnJhZ21lbnQpKHBhcnQpXTsKICAgICAgICBpZiAocGFydFNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHNjaGVtYTIgPSBwYXJ0U2NoZW1hOwogICAgICAgIGNvbnN0IHNjaElkID0gdHlwZW9mIHNjaGVtYTIgPT09ICJvYmplY3QiICYmIHNjaGVtYTJbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICBpZiAoIVBSRVZFTlRfU0NPUEVfQ0hBTkdFLmhhcyhwYXJ0KSAmJiBzY2hJZCkgewogICAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoSWQpOwogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgZW52OwogICAgICBpZiAodHlwZW9mIHNjaGVtYTIgIT0gImJvb2xlYW4iICYmIHNjaGVtYTIuJHJlZiAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hMiwgdGhpcy5SVUxFUykpIHsKICAgICAgICBjb25zdCAkcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoZW1hMi4kcmVmKTsKICAgICAgICBlbnYgPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgJHJlZik7CiAgICAgIH0KICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICBlbnYgPSBlbnYgfHwgbmV3IFNjaGVtYUVudih7IHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgaWYgKGVudi5zY2hlbWEgIT09IGVudi5yb290LnNjaGVtYSkKICAgICAgICByZXR1cm4gZW52OwogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24KdmFyIHJlcXVpcmVfZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9kYXRhLmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRpZDogImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9hanYtdmFsaWRhdG9yL2Fqdi9tYXN0ZXIvbGliL3JlZnMvZGF0YS5qc29uIyIsCiAgICAgIGRlc2NyaXB0aW9uOiAiTWV0YS1zY2hlbWEgZm9yICRkYXRhIHJlZmVyZW5jZSAoSlNPTiBBbnlTY2hlbWEgZXh0ZW5zaW9uIHByb3Bvc2FsKSIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICByZXF1aXJlZDogWyIkZGF0YSJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGRhdGE6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgYW55T2Y6IFt7IGZvcm1hdDogInJlbGF0aXZlLWpzb24tcG9pbnRlciIgfSwgeyBmb3JtYXQ6ICJqc29uLXBvaW50ZXIiIH1dCiAgICAgICAgfQogICAgICB9LAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzCnZhciByZXF1aXJlX3Njb3BlZENoYXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIEhFWCA9IHsKICAgICAgMDogMCwKICAgICAgMTogMSwKICAgICAgMjogMiwKICAgICAgMzogMywKICAgICAgNDogNCwKICAgICAgNTogNSwKICAgICAgNjogNiwKICAgICAgNzogNywKICAgICAgODogOCwKICAgICAgOTogOSwKICAgICAgYTogMTAsCiAgICAgIEE6IDEwLAogICAgICBiOiAxMSwKICAgICAgQjogMTEsCiAgICAgIGM6IDEyLAogICAgICBDOiAxMiwKICAgICAgZDogMTMsCiAgICAgIEQ6IDEzLAogICAgICBlOiAxNCwKICAgICAgRTogMTQsCiAgICAgIGY6IDE1LAogICAgICBGOiAxNQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgSEVYCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBIRVggfSA9IHJlcXVpcmVfc2NvcGVkQ2hhcnMoKTsKICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUlQdjQoaG9zdCkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICIuIikgPCAzKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY0OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBob3N0Lm1hdGNoKC9eKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSkkL3UpIHx8IFtdOwogICAgICBjb25zdCBbYWRkcmVzc10gPSBtYXRjaGVzOwogICAgICBpZiAoYWRkcmVzcykgewogICAgICAgIHJldHVybiB7IGhvc3Q6IHN0cmlwTGVhZGluZ1plcm9zKGFkZHJlc3MsICIuIiksIGlzSVBWNDogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGlucHV0LCBrZWVwWmVybyA9IGZhbHNlKSB7CiAgICAgIGxldCBhY2MgPSAiIjsKICAgICAgbGV0IHN0cmlwID0gdHJ1ZTsKICAgICAgZm9yIChjb25zdCBjIG9mIGlucHV0KSB7CiAgICAgICAgaWYgKEhFWFtjXSA9PT0gdm9pZCAwKSByZXR1cm4gdm9pZCAwOwogICAgICAgIGlmIChjICE9PSAiMCIgJiYgc3RyaXAgPT09IHRydWUpIHN0cmlwID0gZmFsc2U7CiAgICAgICAgaWYgKCFzdHJpcCkgYWNjICs9IGM7CiAgICAgIH0KICAgICAgaWYgKGtlZXBaZXJvICYmIGFjYy5sZW5ndGggPT09IDApIGFjYyA9ICIwIjsKICAgICAgcmV0dXJuIGFjYzsKICAgIH0KICAgIGZ1bmN0aW9uIGdldElQVjYoaW5wdXQpIHsKICAgICAgbGV0IHRva2VuQ291bnQgPSAwOwogICAgICBjb25zdCBvdXRwdXQgPSB7IGVycm9yOiBmYWxzZSwgYWRkcmVzczogIiIsIHpvbmU6ICIiIH07CiAgICAgIGNvbnN0IGFkZHJlc3MgPSBbXTsKICAgICAgY29uc3QgYnVmZmVyID0gW107CiAgICAgIGxldCBpc1pvbmUgPSBmYWxzZTsKICAgICAgbGV0IGVuZGlwdjZFbmNvdW50ZXJlZCA9IGZhbHNlOwogICAgICBsZXQgZW5kSXB2NiA9IGZhbHNlOwogICAgICBmdW5jdGlvbiBjb25zdW1lKCkgewogICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICBpZiAoaXNab25lID09PSBmYWxzZSkgewogICAgICAgICAgICBjb25zdCBoZXggPSBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQoYnVmZmVyKTsKICAgICAgICAgICAgaWYgKGhleCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgYWRkcmVzcy5wdXNoKGhleCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGJ1ZmZlci5sZW5ndGggPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3Vyc29yID0gaW5wdXRbaV07CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIlsiIHx8IGN1cnNvciA9PT0gIl0iKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIjoiKSB7CiAgICAgICAgICBpZiAoZW5kaXB2NkVuY291bnRlcmVkID09PSB0cnVlKSB7CiAgICAgICAgICAgIGVuZElwdjYgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0b2tlbkNvdW50Kys7CiAgICAgICAgICBhZGRyZXNzLnB1c2goIjoiKTsKICAgICAgICAgIGlmICh0b2tlbkNvdW50ID4gNykgewogICAgICAgICAgICBvdXRwdXQuZXJyb3IgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpIC0gMSA+PSAwICYmIGlucHV0W2kgLSAxXSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGVuZGlwdjZFbmNvdW50ZXJlZCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGN1cnNvciA9PT0gIiUiKSB7CiAgICAgICAgICBpZiAoIWNvbnN1bWUoKSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlzWm9uZSA9IHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKGN1cnNvcik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGJ1ZmZlci5sZW5ndGgpIHsKICAgICAgICBpZiAoaXNab25lKSB7CiAgICAgICAgICBvdXRwdXQuem9uZSA9IGJ1ZmZlci5qb2luKCIiKTsKICAgICAgICB9IGVsc2UgaWYgKGVuZElwdjYpIHsKICAgICAgICAgIGFkZHJlc3MucHVzaChidWZmZXIuam9pbigiIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcikpOwogICAgICAgIH0KICAgICAgfQogICAgICBvdXRwdXQuYWRkcmVzcyA9IGFkZHJlc3Muam9pbigiIik7CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY2KGhvc3QsIG9wdHMgPSB7fSkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICI6IikgPCAyKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY2OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IGlwdjYgPSBnZXRJUFY2KGhvc3QpOwogICAgICBpZiAoIWlwdjYuZXJyb3IpIHsKICAgICAgICBsZXQgbmV3SG9zdCA9IGlwdjYuYWRkcmVzczsKICAgICAgICBsZXQgZXNjYXBlZEhvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgaWYgKGlwdjYuem9uZSkgewogICAgICAgICAgbmV3SG9zdCArPSAiJSIgKyBpcHY2LnpvbmU7CiAgICAgICAgICBlc2NhcGVkSG9zdCArPSAiJTI1IiArIGlwdjYuem9uZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsgaG9zdDogbmV3SG9zdCwgZXNjYXBlZEhvc3QsIGlzSVBWNjogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaXBMZWFkaW5nWmVyb3Moc3RyMiwgdG9rZW4pIHsKICAgICAgbGV0IG91dCA9ICIiOwogICAgICBsZXQgc2tpcCA9IHRydWU7CiAgICAgIGNvbnN0IGwgPSBzdHIyLmxlbmd0aDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHsKICAgICAgICBjb25zdCBjID0gc3RyMltpXTsKICAgICAgICBpZiAoYyA9PT0gIjAiICYmIHNraXApIHsKICAgICAgICAgIGlmIChpICsgMSA8PSBsICYmIHN0cjJbaSArIDFdID09PSB0b2tlbiB8fCBpICsgMSA9PT0gbCkgewogICAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICAgICAgc2tpcCA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoYyA9PT0gdG9rZW4pIHsKICAgICAgICAgICAgc2tpcCA9IHRydWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRUb2tlbihzdHIyLCB0b2tlbikgewogICAgICBsZXQgaW5kID0gMDsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgaWYgKHN0cjJbaV0gPT09IHRva2VuKSBpbmQrKzsKICAgICAgfQogICAgICByZXR1cm4gaW5kOwogICAgfQogICAgdmFyIFJEUzEgPSAvXlwuXC4/XC8vdTsKICAgIHZhciBSRFMyID0gL15cL1wuKD86XC98JCkvdTsKICAgIHZhciBSRFMzID0gL15cL1wuXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzUgPSAvXlwvPyg/Oi58XG4pKj8oPz1cL3wkKS91OwogICAgZnVuY3Rpb24gcmVtb3ZlRG90U2VnbWVudHMoaW5wdXQpIHsKICAgICAgY29uc3Qgb3V0cHV0ID0gW107CiAgICAgIHdoaWxlIChpbnB1dC5sZW5ndGgpIHsKICAgICAgICBpZiAoaW5wdXQubWF0Y2goUkRTMSkpIHsKICAgICAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShSRFMxLCAiIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMyKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzIsICIvIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMzKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzMsICIvIik7CiAgICAgICAgICBvdXRwdXQucG9wKCk7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PT0gIi4iIHx8IGlucHV0ID09PSAiLi4iKSB7CiAgICAgICAgICBpbnB1dCA9ICIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpbSA9IGlucHV0Lm1hdGNoKFJEUzUpOwogICAgICAgICAgaWYgKGltKSB7CiAgICAgICAgICAgIGNvbnN0IHMgPSBpbVswXTsKICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShzLmxlbmd0aCk7CiAgICAgICAgICAgIG91dHB1dC5wdXNoKHMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGRvdCBzZWdtZW50IGNvbmRpdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0cHV0LmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcoY29tcG9uZW50cywgZXNjKSB7CiAgICAgIGNvbnN0IGZ1bmMgPSBlc2MgIT09IHRydWUgPyBlc2NhcGUgOiB1bmVzY2FwZTsKICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnNjaGVtZSA9IGZ1bmMoY29tcG9uZW50cy5zY2hlbWUpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnVzZXJpbmZvICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnVzZXJpbmZvID0gZnVuYyhjb21wb25lbnRzLnVzZXJpbmZvKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmhvc3QgPSBmdW5jKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZnVuYyhjb21wb25lbnRzLnBhdGgpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnF1ZXJ5ID0gZnVuYyhjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5mcmFnbWVudCA9IGZ1bmMoY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucykgewogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICAgIHVyaVRva2Vucy5wdXNoKCJAIik7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgbGV0IGhvc3QgPSB1bmVzY2FwZShjb21wb25lbnRzLmhvc3QpOwogICAgICAgIGNvbnN0IGlwVjRyZXMgPSBub3JtYWxpemVJUHY0KGhvc3QpOwogICAgICAgIGlmIChpcFY0cmVzLmlzSVBWNCkgewogICAgICAgICAgaG9zdCA9IGlwVjRyZXMuaG9zdDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgaXBWNnJlcyA9IG5vcm1hbGl6ZUlQdjYoaXBWNHJlcy5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICBpZiAoaXBWNnJlcy5pc0lQVjYgPT09IHRydWUpIHsKICAgICAgICAgICAgaG9zdCA9IGBbJHtpcFY2cmVzLmVzY2FwZWRIb3N0fV1gOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaG9zdCA9IGNvbXBvbmVudHMuaG9zdDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2goaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJudW1iZXIiIHx8IHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIjoiKTsKICAgICAgICB1cmlUb2tlbnMucHVzaChTdHJpbmcoY29tcG9uZW50cy5wb3J0KSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5sZW5ndGggPyB1cmlUb2tlbnMuam9pbigiIikgOiB2b2lkIDA7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIHJlY29tcG9zZUF1dGhvcml0eSwKICAgICAgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcsCiAgICAgIHJlbW92ZURvdFNlZ21lbnRzLAogICAgICBub3JtYWxpemVJUHY0LAogICAgICBub3JtYWxpemVJUHY2LAogICAgICBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3NjaGVtZXMuanMKdmFyIHJlcXVpcmVfc2NoZW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfdXJpID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBub3JtYWxpemVJUHY2LCBub3JtYWxpemVJUHY0LCByZW1vdmVEb3RTZWdtZW50cywgcmVjb21wb3NlQXV0aG9yaXR5LCBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyB9ID0gcmVxdWlyZV91dGlsczIoKTsKICAgIHZhciBTQ0hFTUVTID0gcmVxdWlyZV9zY2hlbWVzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemUodXJpLCBvcHRpb25zKSB7CiAgICAgIGlmICh0eXBlb2YgdXJpID09PSAic3RyaW5nIikgewogICAgICAgIHVyaSA9IHNlcmlhbGl6ZShwYXJzZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpID09PSAib2JqZWN0IikgewogICAgICAgIHVyaSA9IHBhcnNlKHNlcmlhbGl6ZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShiYXNlVVJJLCByZWxhdGl2ZVVSSSwgb3B0aW9ucykgewogICAgICBjb25zdCBzY2hlbWVsZXNzT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBzY2hlbWU6ICJudWxsIiB9LCBvcHRpb25zKTsKICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ29tcG9uZW50cyhwYXJzZShiYXNlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHBhcnNlKHJlbGF0aXZlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHNjaGVtZWxlc3NPcHRpb25zLCB0cnVlKTsKICAgICAgcmV0dXJuIHNlcmlhbGl6ZShyZXNvbHZlZCwgeyAuLi5zY2hlbWVsZXNzT3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRzKGJhc2UsIHJlbGF0aXZlLCBvcHRpb25zLCBza2lwTm9ybWFsaXphdGlvbikgewogICAgICBjb25zdCB0YXJnZXQgPSB7fTsKICAgICAgaWYgKCFza2lwTm9ybWFsaXphdGlvbikgewogICAgICAgIGJhc2UgPSBwYXJzZShzZXJpYWxpemUoYmFzZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICAgIHJlbGF0aXZlID0gcGFyc2Uoc2VyaWFsaXplKHJlbGF0aXZlLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiByZWxhdGl2ZS5zY2hlbWUpIHsKICAgICAgICB0YXJnZXQuc2NoZW1lID0gcmVsYXRpdmUuc2NoZW1lOwogICAgICAgIHRhcmdldC51c2VyaW5mbyA9IHJlbGF0aXZlLnVzZXJpbmZvOwogICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoIHx8ICIiKTsKICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocmVsYXRpdmUudXNlcmluZm8gIT09IHZvaWQgMCB8fCByZWxhdGl2ZS5ob3N0ICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUucG9ydCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICAgIHRhcmdldC5wb3J0ID0gcmVsYXRpdmUucG9ydDsKICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFyZWxhdGl2ZS5wYXRoKSB7CiAgICAgICAgICAgIHRhcmdldC5wYXRoID0gYmFzZS5wYXRoOwogICAgICAgICAgICBpZiAocmVsYXRpdmUucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IGJhc2UucXVlcnk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChyZWxhdGl2ZS5wYXRoLmNoYXJBdCgwKSA9PT0gIi8iKSB7CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBpZiAoKGJhc2UudXNlcmluZm8gIT09IHZvaWQgMCB8fCBiYXNlLmhvc3QgIT09IHZvaWQgMCB8fCBiYXNlLnBvcnQgIT09IHZvaWQgMCkgJiYgIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSAiLyIgKyByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aC5zbGljZSgwLCBiYXNlLnBhdGgubGFzdEluZGV4T2YoIi8iKSArIDEpICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyh0YXJnZXQucGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgICB9CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSBiYXNlLnVzZXJpbmZvOwogICAgICAgICAgdGFyZ2V0Lmhvc3QgPSBiYXNlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IGJhc2UucG9ydDsKICAgICAgICB9CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IGJhc2Uuc2NoZW1lOwogICAgICB9CiAgICAgIHRhcmdldC5mcmFnbWVudCA9IHJlbGF0aXZlLmZyYWdtZW50OwogICAgICByZXR1cm4gdGFyZ2V0OwogICAgfQogICAgZnVuY3Rpb24gZXF1YWwodXJpQSwgdXJpQiwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaUEgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQSA9IHVuZXNjYXBlKHVyaUEpOwogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQSwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQSA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlBLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgdXJpQiA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlCID0gdW5lc2NhcGUodXJpQik7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhwYXJzZSh1cmlCLCBvcHRpb25zKSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpQiA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmlCID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHVyaUIsIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaUEudG9Mb3dlckNhc2UoKSA9PT0gdXJpQi50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gc2VyaWFsaXplKGNtcHRzLCBvcHRzKSB7CiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7CiAgICAgICAgaG9zdDogY21wdHMuaG9zdCwKICAgICAgICBzY2hlbWU6IGNtcHRzLnNjaGVtZSwKICAgICAgICB1c2VyaW5mbzogY21wdHMudXNlcmluZm8sCiAgICAgICAgcG9ydDogY21wdHMucG9ydCwKICAgICAgICBwYXRoOiBjbXB0cy5wYXRoLAogICAgICAgIHF1ZXJ5OiBjbXB0cy5xdWVyeSwKICAgICAgICBuaWQ6IGNtcHRzLm5pZCwKICAgICAgICBuc3M6IGNtcHRzLm5zcywKICAgICAgICB1dWlkOiBjbXB0cy51dWlkLAogICAgICAgIGZyYWdtZW50OiBjbXB0cy5mcmFnbWVudCwKICAgICAgICByZWZlcmVuY2U6IGNtcHRzLnJlZmVyZW5jZSwKICAgICAgICByZXNvdXJjZU5hbWU6IGNtcHRzLnJlc291cmNlTmFtZSwKICAgICAgICBzZWN1cmU6IGNtcHRzLnNlY3VyZSwKICAgICAgICBlcnJvcjogIiIKICAgICAgfTsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IGNvbXBvbmVudHMuc2NoZW1lIHx8ICIiKS50b0xvd2VyQ2FzZSgpXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5zZXJpYWxpemUpIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKGNvbXBvbmVudHMsIG9wdGlvbnMpOwogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEVzY2FwZSkgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBjb21wb25lbnRzLnBhdGggPSBjb21wb25lbnRzLnBhdGguc3BsaXQoIiUzQSIpLmpvaW4oIjoiKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gdW5lc2NhcGUoY29tcG9uZW50cy5wYXRoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBjb21wb25lbnRzLnNjaGVtZSkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMuc2NoZW1lLCAiOiIpOwogICAgICB9CiAgICAgIGNvbnN0IGF1dGhvcml0eSA9IHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGF1dGhvcml0eSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IikgewogICAgICAgICAgdXJpVG9rZW5zLnB1c2goIi8vIik7CiAgICAgICAgfQogICAgICAgIHVyaVRva2Vucy5wdXNoKGF1dGhvcml0eSk7CiAgICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAmJiBjb21wb25lbnRzLnBhdGguY2hhckF0KDApICE9PSAiLyIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnBhdGggIT09IHZvaWQgMCkgewogICAgICAgIGxldCBzID0gY29tcG9uZW50cy5wYXRoOwogICAgICAgIGlmICghb3B0aW9ucy5hYnNvbHV0ZVBhdGggJiYgKCFzY2hlbWVIYW5kbGVyIHx8ICFzY2hlbWVIYW5kbGVyLmFic29sdXRlUGF0aCkpIHsKICAgICAgICAgIHMgPSByZW1vdmVEb3RTZWdtZW50cyhzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGF1dGhvcml0eSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBzID0gcy5yZXBsYWNlKC9eXC9cLy91LCAiLyUyRiIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChzKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5xdWVyeSAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIj8iLCBjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIiMiLCBjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmpvaW4oIiIpOwogICAgfQogICAgdmFyIGhleExvb2tVcCA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEyNyB9LCAodiwgaykgPT4gL1teISIkJicoKSorLFwtLjs9X2BhLXp7fX5dL3UudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGspKSk7CiAgICBmdW5jdGlvbiBub25TaW1wbGVEb21haW4odmFsdWUpIHsKICAgICAgbGV0IGNvZGUgPSAwOwogICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdmFsdWUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHsKICAgICAgICBjb2RlID0gdmFsdWUuY2hhckNvZGVBdChpKTsKICAgICAgICBpZiAoY29kZSA+IDEyNiB8fCBoZXhMb29rVXBbY29kZV0pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICB2YXIgVVJJX1BBUlNFID0gL14oPzooW14jLzo/XSspOik/KD86XC9cLygoPzooW14jLz9AXSopQCk/KFxbW14jLz9cXV0rXF18W14jLzo/XSopKD86OihcZCopKT8pKT8oW14jP10qKSg/Olw/KFteI10qKSk/KD86IygoPzoufFtcblxyXSkqKSk/L3U7CiAgICBmdW5jdGlvbiBwYXJzZSh1cmksIG9wdHMpIHsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCBwYXJzZWQgPSB7CiAgICAgICAgc2NoZW1lOiB2b2lkIDAsCiAgICAgICAgdXNlcmluZm86IHZvaWQgMCwKICAgICAgICBob3N0OiAiIiwKICAgICAgICBwb3J0OiB2b2lkIDAsCiAgICAgICAgcGF0aDogIiIsCiAgICAgICAgcXVlcnk6IHZvaWQgMCwKICAgICAgICBmcmFnbWVudDogdm9pZCAwCiAgICAgIH07CiAgICAgIGNvbnN0IGdvdEVuY29kaW5nID0gdXJpLmluZGV4T2YoIiUiKSAhPT0gLTE7CiAgICAgIGxldCBpc0lQID0gZmFsc2U7CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSA9PT0gInN1ZmZpeCIpIHVyaSA9IChvcHRpb25zLnNjaGVtZSA/IG9wdGlvbnMuc2NoZW1lICsgIjoiIDogIiIpICsgIi8vIiArIHVyaTsKICAgICAgY29uc3QgbWF0Y2hlcyA9IHVyaS5tYXRjaChVUklfUEFSU0UpOwogICAgICBpZiAobWF0Y2hlcykgewogICAgICAgIHBhcnNlZC5zY2hlbWUgPSBtYXRjaGVzWzFdOwogICAgICAgIHBhcnNlZC51c2VyaW5mbyA9IG1hdGNoZXNbM107CiAgICAgICAgcGFyc2VkLmhvc3QgPSBtYXRjaGVzWzRdOwogICAgICAgIHBhcnNlZC5wb3J0ID0gcGFyc2VJbnQobWF0Y2hlc1s1XSwgMTApOwogICAgICAgIHBhcnNlZC5wYXRoID0gbWF0Y2hlc1s2XSB8fCAiIjsKICAgICAgICBwYXJzZWQucXVlcnkgPSBtYXRjaGVzWzddOwogICAgICAgIHBhcnNlZC5mcmFnbWVudCA9IG1hdGNoZXNbOF07CiAgICAgICAgaWYgKGlzTmFOKHBhcnNlZC5wb3J0KSkgewogICAgICAgICAgcGFyc2VkLnBvcnQgPSBtYXRjaGVzWzVdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyc2VkLmhvc3QpIHsKICAgICAgICAgIGNvbnN0IGlwdjRyZXN1bHQgPSBub3JtYWxpemVJUHY0KHBhcnNlZC5ob3N0KTsKICAgICAgICAgIGlmIChpcHY0cmVzdWx0LmlzSVBWNCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaXB2NnJlc3VsdCA9IG5vcm1hbGl6ZUlQdjYoaXB2NHJlc3VsdC5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NnJlc3VsdC5ob3N0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgIGlzSVAgPSBpcHY2cmVzdWx0LmlzSVBWNjsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NHJlc3VsdC5ob3N0OwogICAgICAgICAgICBpc0lQID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCAmJiBwYXJzZWQudXNlcmluZm8gPT09IHZvaWQgMCAmJiBwYXJzZWQuaG9zdCA9PT0gdm9pZCAwICYmIHBhcnNlZC5wb3J0ID09PSB2b2lkIDAgJiYgIXBhcnNlZC5wYXRoICYmIHBhcnNlZC5xdWVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInNhbWUtZG9jdW1lbnQiOwogICAgICAgIH0gZWxzZSBpZiAocGFyc2VkLnNjaGVtZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInJlbGF0aXZlIjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5mcmFnbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gImFic29sdXRlIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJ1cmkiOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgJiYgb3B0aW9ucy5yZWZlcmVuY2UgIT09ICJzdWZmaXgiICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSBwYXJzZWQucmVmZXJlbmNlKSB7CiAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBpcyBub3QgYSAiICsgb3B0aW9ucy5yZWZlcmVuY2UgKyAiIHJlZmVyZW5jZS4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWVIYW5kbGVyID0gU0NIRU1FU1sob3B0aW9ucy5zY2hlbWUgfHwgcGFyc2VkLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgICAgaWYgKCFvcHRpb25zLnVuaWNvZGVTdXBwb3J0ICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci51bmljb2RlU3VwcG9ydCkpIHsKICAgICAgICAgIGlmIChwYXJzZWQuaG9zdCAmJiAob3B0aW9ucy5kb21haW5Ib3N0IHx8IHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5kb21haW5Ib3N0KSAmJiBpc0lQID09PSBmYWxzZSAmJiBub25TaW1wbGVEb21haW4ocGFyc2VkLmhvc3QpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcGFyc2VkLmhvc3QgPSBVUkwuZG9tYWluVG9BU0NJSShwYXJzZWQuaG9zdC50b0xvd2VyQ2FzZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiSG9zdCdzIGRvbWFpbiBuYW1lIGNhbiBub3QgYmUgY29udmVydGVkIHRvIEFTQ0lJOiAiICsgZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXNjaGVtZUhhbmRsZXIgfHwgc2NoZW1lSGFuZGxlciAmJiAhc2NoZW1lSGFuZGxlci5za2lwTm9ybWFsaXplKSB7CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLnNjaGVtZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5zY2hlbWUgPSB1bmVzY2FwZShwYXJzZWQuc2NoZW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChnb3RFbmNvZGluZyAmJiBwYXJzZWQuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gdW5lc2NhcGUocGFyc2VkLmhvc3QpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5wYXRoICE9PSB2b2lkIDAgJiYgcGFyc2VkLnBhdGgubGVuZ3RoKSB7CiAgICAgICAgICAgIHBhcnNlZC5wYXRoID0gZXNjYXBlKHVuZXNjYXBlKHBhcnNlZC5wYXRoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGFyc2VkLmZyYWdtZW50ICE9PSB2b2lkIDAgJiYgcGFyc2VkLmZyYWdtZW50Lmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBlbmNvZGVVUkkoZGVjb2RlVVJJQ29tcG9uZW50KHBhcnNlZC5mcmFnbWVudCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1lSGFuZGxlciAmJiBzY2hlbWVIYW5kbGVyLnBhcnNlKSB7CiAgICAgICAgICBzY2hlbWVIYW5kbGVyLnBhcnNlKHBhcnNlZCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiVVJJIGNhbiBub3QgYmUgcGFyc2VkLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhcnNlZDsKICAgIH0KICAgIHZhciBmYXN0VXJpID0gewogICAgICBTQ0hFTUVTLAogICAgICBub3JtYWxpemUsCiAgICAgIHJlc29sdmUsCiAgICAgIHJlc29sdmVDb21wb25lbnRzLAogICAgICBlcXVhbCwKICAgICAgc2VyaWFsaXplLAogICAgICBwYXJzZQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZGVmYXVsdCA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZmFzdFVyaSA9IGZhc3RVcmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdXJpLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXJpID0gcmVxdWlyZV9mYXN0X3VyaSgpOwogICAgdXJpLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91cmkiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB1cmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIyLCBmbGFncykgPT4gbmV3IFJlZ0V4cChzdHIyLCBmbGFncyk7CiAgICBkZWZhdWx0UmVnRXhwLmNvZGUgPSAibmV3IFJlZ0V4cCI7CiAgICB2YXIgTUVUQV9JR05PUkVfT1BUSU9OUyA9IFsicmVtb3ZlQWRkaXRpb25hbCIsICJ1c2VEZWZhdWx0cyIsICJjb2VyY2VUeXBlcyJdOwogICAgdmFyIEVYVF9TQ09QRV9OQU1FUyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgInZhbGlkYXRlIiwKICAgICAgInNlcmlhbGl6ZSIsCiAgICAgICJwYXJzZSIsCiAgICAgICJ3cmFwcGVyIiwKICAgICAgInJvb3QiLAogICAgICAic2NoZW1hIiwKICAgICAgImtleXdvcmQiLAogICAgICAicGF0dGVybiIsCiAgICAgICJmb3JtYXRzIiwKICAgICAgInZhbGlkYXRlJGRhdGEiLAogICAgICAiZnVuYyIsCiAgICAgICJvYmoiLAogICAgICAiRXJyb3IiCiAgICBdKTsKICAgIHZhciByZW1vdmVkT3B0aW9ucyA9IHsKICAgICAgZXJyb3JEYXRhUGF0aDogIiIsCiAgICAgIGZvcm1hdDogImB2YWxpZGF0ZUZvcm1hdHM6IGZhbHNlYCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG51bGxhYmxlOiAnIm51bGxhYmxlIiBrZXl3b3JkIGlzIHN1cHBvcnRlZCBieSBkZWZhdWx0LicsCiAgICAgIGpzb25Qb2ludGVyczogIkRlcHJlY2F0ZWQganNQcm9wZXJ0eVN5bnRheCBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIGV4dGVuZFJlZnM6ICJEZXByZWNhdGVkIGlnbm9yZUtleXdvcmRzV2l0aFJlZiBjYW4gYmUgdXNlZCBpbnN0ZWFkLiIsCiAgICAgIG1pc3NpbmdSZWZzOiAiUGFzcyBlbXB0eSBzY2hlbWEgd2l0aCAkaWQgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB0byBhanYuYWRkU2NoZW1hLiIsCiAgICAgIHByb2Nlc3NDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3Byb2Nlc3M6IChjb2RlLCBzY2hlbWFFbnY6IG9iamVjdCkgPT4gc3RyaW5nfWAiLAogICAgICBzb3VyY2VDb2RlOiAiVXNlIG9wdGlvbiBgY29kZToge3NvdXJjZTogdHJ1ZX1gIiwKICAgICAgc3RyaWN0RGVmYXVsdHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICBzdHJpY3RLZXl3b3JkczogIkl0IGlzIGRlZmF1bHQgbm93LCBzZWUgb3B0aW9uIGBzdHJpY3RgLiIsCiAgICAgIHVuaXF1ZUl0ZW1zOiAnInVuaXF1ZUl0ZW1zIiBrZXl3b3JkIGlzIGFsd2F5cyB2YWxpZGF0ZWQuJywKICAgICAgdW5rbm93bkZvcm1hdHM6ICJEaXNhYmxlIHN0cmljdCBtb2RlIG9yIHBhc3MgYHRydWVgIHRvIGBhanYuYWRkRm9ybWF0YCAob3IgYGZvcm1hdHNgIG9wdGlvbikuIiwKICAgICAgY2FjaGU6ICJNYXAgaXMgdXNlZCBhcyBjYWNoZSwgc2NoZW1hIG9iamVjdCBhcyBrZXkuIiwKICAgICAgc2VyaWFsaXplOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIGFqdkVycm9yczogIkl0IGlzIGRlZmF1bHQgbm93LiIKICAgIH07CiAgICB2YXIgZGVwcmVjYXRlZE9wdGlvbnMgPSB7CiAgICAgIGlnbm9yZUtleXdvcmRzV2l0aFJlZjogIiIsCiAgICAgIGpzUHJvcGVydHlTeW50YXg6ICIiLAogICAgICB1bmljb2RlOiAnIm1pbkxlbmd0aCIvIm1heExlbmd0aCIgYWNjb3VudCBmb3IgdW5pY29kZSBjaGFyYWN0ZXJzIGJ5IGRlZmF1bHQuJwogICAgfTsKICAgIHZhciBNQVhfRVhQUkVTU0lPTiA9IDIwMDsKICAgIGZ1bmN0aW9uIHJlcXVpcmVkT3B0aW9ucyhvKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9qLCBfaywgX2wsIF9tLCBfbywgX3AsIF9xLCBfciwgX3MsIF90LCBfdSwgX3YsIF93LCBfeCwgX3ksIF96LCBfMDsKICAgICAgY29uc3QgcyA9IG8uc3RyaWN0OwogICAgICBjb25zdCBfb3B0eiA9IChfYSA9IG8uY29kZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplOwogICAgICBjb25zdCBvcHRpbWl6ZSA9IF9vcHR6ID09PSB0cnVlIHx8IF9vcHR6ID09PSB2b2lkIDAgPyAxIDogX29wdHogfHwgMDsKICAgICAgY29uc3QgcmVnRXhwID0gKF9jID0gKF9iID0gby5jb2RlKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucmVnRXhwKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiBkZWZhdWx0UmVnRXhwOwogICAgICBjb25zdCB1cmlSZXNvbHZlciA9IChfZCA9IG8udXJpUmVzb2x2ZXIpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6IHVyaV8xLmRlZmF1bHQ7CiAgICAgIHJldHVybiB7CiAgICAgICAgc3RyaWN0U2NoZW1hOiAoX2YgPSAoX2UgPSBvLnN0cmljdFNjaGVtYSkgIT09IG51bGwgJiYgX2UgIT09IHZvaWQgMCA/IF9lIDogcykgIT09IG51bGwgJiYgX2YgIT09IHZvaWQgMCA/IF9mIDogdHJ1ZSwKICAgICAgICBzdHJpY3ROdW1iZXJzOiAoX2ggPSAoX2cgPSBvLnN0cmljdE51bWJlcnMpICE9PSBudWxsICYmIF9nICE9PSB2b2lkIDAgPyBfZyA6IHMpICE9PSBudWxsICYmIF9oICE9PSB2b2lkIDAgPyBfaCA6IHRydWUsCiAgICAgICAgc3RyaWN0VHlwZXM6IChfayA9IChfaiA9IG8uc3RyaWN0VHlwZXMpICE9PSBudWxsICYmIF9qICE9PSB2b2lkIDAgPyBfaiA6IHMpICE9PSBudWxsICYmIF9rICE9PSB2b2lkIDAgPyBfayA6ICJsb2ciLAogICAgICAgIHN0cmljdFR1cGxlczogKF9tID0gKF9sID0gby5zdHJpY3RUdXBsZXMpICE9PSBudWxsICYmIF9sICE9PSB2b2lkIDAgPyBfbCA6IHMpICE9PSBudWxsICYmIF9tICE9PSB2b2lkIDAgPyBfbSA6ICJsb2ciLAogICAgICAgIHN0cmljdFJlcXVpcmVkOiAoX3AgPSAoX28gPSBvLnN0cmljdFJlcXVpcmVkKSAhPT0gbnVsbCAmJiBfbyAhPT0gdm9pZCAwID8gX28gOiBzKSAhPT0gbnVsbCAmJiBfcCAhPT0gdm9pZCAwID8gX3AgOiBmYWxzZSwKICAgICAgICBjb2RlOiBvLmNvZGUgPyB7IC4uLm8uY29kZSwgb3B0aW1pemUsIHJlZ0V4cCB9IDogeyBvcHRpbWl6ZSwgcmVnRXhwIH0sCiAgICAgICAgbG9vcFJlcXVpcmVkOiAoX3EgPSBvLmxvb3BSZXF1aXJlZCkgIT09IG51bGwgJiYgX3EgIT09IHZvaWQgMCA/IF9xIDogTUFYX0VYUFJFU1NJT04sCiAgICAgICAgbG9vcEVudW06IChfciA9IG8ubG9vcEVudW0pICE9PSBudWxsICYmIF9yICE9PSB2b2lkIDAgPyBfciA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIG1ldGE6IChfcyA9IG8ubWV0YSkgIT09IG51bGwgJiYgX3MgIT09IHZvaWQgMCA/IF9zIDogdHJ1ZSwKICAgICAgICBtZXNzYWdlczogKF90ID0gby5tZXNzYWdlcykgIT09IG51bGwgJiYgX3QgIT09IHZvaWQgMCA/IF90IDogdHJ1ZSwKICAgICAgICBpbmxpbmVSZWZzOiAoX3UgPSBvLmlubGluZVJlZnMpICE9PSBudWxsICYmIF91ICE9PSB2b2lkIDAgPyBfdSA6IHRydWUsCiAgICAgICAgc2NoZW1hSWQ6IChfdiA9IG8uc2NoZW1hSWQpICE9PSBudWxsICYmIF92ICE9PSB2b2lkIDAgPyBfdiA6ICIkaWQiLAogICAgICAgIGFkZFVzZWRTY2hlbWE6IChfdyA9IG8uYWRkVXNlZFNjaGVtYSkgIT09IG51bGwgJiYgX3cgIT09IHZvaWQgMCA/IF93IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZVNjaGVtYTogKF94ID0gby52YWxpZGF0ZVNjaGVtYSkgIT09IG51bGwgJiYgX3ggIT09IHZvaWQgMCA/IF94IDogdHJ1ZSwKICAgICAgICB2YWxpZGF0ZUZvcm1hdHM6IChfeSA9IG8udmFsaWRhdGVGb3JtYXRzKSAhPT0gbnVsbCAmJiBfeSAhPT0gdm9pZCAwID8gX3kgOiB0cnVlLAogICAgICAgIHVuaWNvZGVSZWdFeHA6IChfeiA9IG8udW5pY29kZVJlZ0V4cCkgIT09IG51bGwgJiYgX3ogIT09IHZvaWQgMCA/IF96IDogdHJ1ZSwKICAgICAgICBpbnQzMnJhbmdlOiAoXzAgPSBvLmludDMycmFuZ2UpICE9PSBudWxsICYmIF8wICE9PSB2b2lkIDAgPyBfMCA6IHRydWUsCiAgICAgICAgdXJpUmVzb2x2ZXIKICAgICAgfTsKICAgIH0KICAgIHZhciBBanYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMgPSB7fSkgewogICAgICAgIHRoaXMuc2NoZW1hcyA9IHt9OwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICAgIHRoaXMuZm9ybWF0cyA9IHt9OwogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgdGhpcy5fbG9hZGluZyA9IHt9OwogICAgICAgIHRoaXMuX2NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBvcHRzID0gdGhpcy5vcHRzID0geyAuLi5vcHRzLCAuLi5yZXF1aXJlZE9wdGlvbnMob3B0cykgfTsKICAgICAgICBjb25zdCB7IGVzNSwgbGluZXMgfSA9IHRoaXMub3B0cy5jb2RlOwogICAgICAgIHRoaXMuc2NvcGUgPSBuZXcgY29kZWdlbl8yLlZhbHVlU2NvcGUoeyBzY29wZToge30sIHByZWZpeGVzOiBFWFRfU0NPUEVfTkFNRVMsIGVzNSwgbGluZXMgfSk7CiAgICAgICAgdGhpcy5sb2dnZXIgPSBnZXRMb2dnZXIob3B0cy5sb2dnZXIpOwogICAgICAgIGNvbnN0IGZvcm1hdE9wdCA9IG9wdHMudmFsaWRhdGVGb3JtYXRzOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZmFsc2U7CiAgICAgICAgdGhpcy5SVUxFUyA9ICgwLCBydWxlc18xLmdldFJ1bGVzKSgpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIHJlbW92ZWRPcHRpb25zLCBvcHRzLCAiTk9UIFNVUFBPUlRFRCIpOwogICAgICAgIGNoZWNrT3B0aW9ucy5jYWxsKHRoaXMsIGRlcHJlY2F0ZWRPcHRpb25zLCBvcHRzLCAiREVQUkVDQVRFRCIsICJ3YXJuIik7CiAgICAgICAgdGhpcy5fbWV0YU9wdHMgPSBnZXRNZXRhU2NoZW1hT3B0aW9ucy5jYWxsKHRoaXMpOwogICAgICAgIGlmIChvcHRzLmZvcm1hdHMpCiAgICAgICAgICBhZGRJbml0aWFsRm9ybWF0cy5jYWxsKHRoaXMpOwogICAgICAgIHRoaXMuX2FkZFZvY2FidWxhcmllcygpOwogICAgICAgIHRoaXMuX2FkZERlZmF1bHRNZXRhU2NoZW1hKCk7CiAgICAgICAgaWYgKG9wdHMua2V5d29yZHMpCiAgICAgICAgICBhZGRJbml0aWFsS2V5d29yZHMuY2FsbCh0aGlzLCBvcHRzLmtleXdvcmRzKTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMubWV0YSA9PSAib2JqZWN0IikKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShvcHRzLm1ldGEpOwogICAgICAgIGFkZEluaXRpYWxTY2hlbWFzLmNhbGwodGhpcyk7CiAgICAgICAgb3B0cy52YWxpZGF0ZUZvcm1hdHMgPSBmb3JtYXRPcHQ7CiAgICAgIH0KICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoIiRhc3luYyIpOwogICAgICB9CiAgICAgIF9hZGREZWZhdWx0TWV0YVNjaGVtYSgpIHsKICAgICAgICBjb25zdCB7ICRkYXRhLCBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGxldCBfZGF0YVJlZlNjaGVtYSA9ICRkYXRhUmVmU2NoZW1hOwogICAgICAgIGlmIChzY2hlbWFJZCA9PT0gImlkIikgewogICAgICAgICAgX2RhdGFSZWZTY2hlbWEgPSB7IC4uLiRkYXRhUmVmU2NoZW1hIH07CiAgICAgICAgICBfZGF0YVJlZlNjaGVtYS5pZCA9IF9kYXRhUmVmU2NoZW1hLiRpZDsKICAgICAgICAgIGRlbGV0ZSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgfQogICAgICAgIGlmIChtZXRhICYmICRkYXRhKQogICAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKF9kYXRhUmVmU2NoZW1hLCBfZGF0YVJlZlNjaGVtYVtzY2hlbWFJZF0sIGZhbHNlKTsKICAgICAgfQogICAgICBkZWZhdWx0TWV0YSgpIHsKICAgICAgICBjb25zdCB7IG1ldGEsIHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHR5cGVvZiBtZXRhID09ICJvYmplY3QiID8gbWV0YVtzY2hlbWFJZF0gfHwgbWV0YSA6IHZvaWQgMDsKICAgICAgfQogICAgICB2YWxpZGF0ZShzY2hlbWFLZXlSZWYsIGRhdGEpIHsKICAgICAgICBsZXQgdjsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYUtleVJlZiA9PSAic3RyaW5nIikgewogICAgICAgICAgdiA9IHRoaXMuZ2V0U2NoZW1hKHNjaGVtYUtleVJlZik7CiAgICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgbm8gc2NoZW1hIHdpdGgga2V5IG9yIHJlZiAiJHtzY2hlbWFLZXlSZWZ9ImApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB2ID0gdGhpcy5jb21waWxlKHNjaGVtYUtleVJlZik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdihkYXRhKTsKICAgICAgICBpZiAoISgiJGFzeW5jIiBpbiB2KSkKICAgICAgICAgIHRoaXMuZXJyb3JzID0gdi5lcnJvcnM7CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIGNvbXBpbGUoc2NoZW1hMiwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgfHwgdGhpcy5fY29tcGlsZVNjaGVtYUVudihzY2gpOwogICAgICB9CiAgICAgIGNvbXBpbGVBc3luYyhzY2hlbWEyLCBtZXRhKSB7CiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMubG9hZFNjaGVtYSAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIm9wdGlvbnMubG9hZFNjaGVtYSBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB7IGxvYWRTY2hlbWEgfSA9IHRoaXMub3B0czsKICAgICAgICByZXR1cm4gcnVuQ29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoZW1hMiwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hMiwga2V5LCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hMikpIHsKICAgICAgICAgIGZvciAoY29uc3Qgc2NoIG9mIHNjaGVtYTIpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgICAgaWQgPSBzY2hlbWEyW3NjaGVtYUlkXTsKICAgICAgICAgIGlmIChpZCAhPT0gdm9pZCAwICYmIHR5cGVvZiBpZCAhPSAic3RyaW5nIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSAke3NjaGVtYUlkfSBtdXN0IGJlIHN0cmluZ2ApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBrZXkgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXkgfHwgaWQpOwogICAgICAgIHRoaXMuX2NoZWNrVW5pcXVlKGtleSk7CiAgICAgICAgdGhpcy5zY2hlbWFzW2tleV0gPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hMiwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEyLCBrZXksIF92YWxpZGF0ZVNjaGVtYSA9IHRoaXMub3B0cy52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaGVtYTIsIGtleSwgdHJ1ZSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyAgVmFsaWRhdGUgc2NoZW1hIGFnYWluc3QgaXRzIG1ldGEtc2NoZW1hCiAgICAgIHZhbGlkYXRlU2NoZW1hKHNjaGVtYTIsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAiYm9vbGVhbiIpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgJHNjaGVtYTsKICAgICAgICAkc2NoZW1hID0gc2NoZW1hMi4kc2NoZW1hOwogICAgICAgIGlmICgkc2NoZW1hICE9PSB2b2lkIDAgJiYgdHlwZW9mICRzY2hlbWEgIT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiJHNjaGVtYSBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgfQogICAgICAgICRzY2hlbWEgPSAkc2NoZW1hIHx8IHRoaXMub3B0cy5kZWZhdWx0TWV0YSB8fCB0aGlzLmRlZmF1bHRNZXRhKCk7CiAgICAgICAgaWYgKCEkc2NoZW1hKSB7CiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKCJtZXRhLXNjaGVtYSBub3QgYXZhaWxhYmxlIik7CiAgICAgICAgICB0aGlzLmVycm9ycyA9IG51bGw7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmFsaWQgPSB0aGlzLnZhbGlkYXRlKCRzY2hlbWEsIHNjaGVtYTIpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYTIgPSBrZXl3b3Jkc1trZXldOwogICAgICAgICAgICBpZiAoJGRhdGEgJiYgc2NoZW1hMikKICAgICAgICAgICAgICBrZXl3b3Jkc1trZXldID0gc2NoZW1hT3JEYXRhKHNjaGVtYTIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEyLCBtZXRhLCBiYXNlSWQsIHZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hLCBhZGRTY2hlbWEgPSB0aGlzLm9wdHMuYWRkVXNlZFNjaGVtYSkgewogICAgICAgIGxldCBpZDsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiKSB7CiAgICAgICAgICBpZCA9IHNjaGVtYTJbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyICE9ICJib29sZWFuIikKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3Qgb3IgYm9vbGVhbiIpOwogICAgICAgIH0KICAgICAgICBsZXQgc2NoID0gdGhpcy5fY2FjaGUuZ2V0KHNjaGVtYTIpOwogICAgICAgIGlmIChzY2ggIT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybiBzY2g7CiAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoaWQgfHwgYmFzZUlkKTsKICAgICAgICBjb25zdCBsb2NhbFJlZnMgPSByZXNvbHZlXzEuZ2V0U2NoZW1hUmVmcy5jYWxsKHRoaXMsIHNjaGVtYTIsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hMiwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfQogICAgICBfY2hlY2tVbmlxdWUoaWQpIHsKICAgICAgICBpZiAodGhpcy5zY2hlbWFzW2lkXSB8fCB0aGlzLnJlZnNbaWRdKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNjaGVtYSB3aXRoIGtleSBvciBpZCAiJHtpZH0iIGFscmVhZHkgZXhpc3RzYCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9jb21waWxlU2NoZW1hRW52KHNjaCkgewogICAgICAgIGlmIChzY2gubWV0YSkKICAgICAgICAgIHRoaXMuX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCk7CiAgICAgICAgZWxzZQogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIGlmICghc2NoLnZhbGlkYXRlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlOwogICAgICB9CiAgICAgIF9jb21waWxlTWV0YVNjaGVtYShzY2gpIHsKICAgICAgICBjb25zdCBjdXJyZW50T3B0cyA9IHRoaXMub3B0czsKICAgICAgICB0aGlzLm9wdHMgPSB0aGlzLl9tZXRhT3B0czsKICAgICAgICB0cnkgewogICAgICAgICAgY29tcGlsZV8xLmNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLm9wdHMgPSBjdXJyZW50T3B0czsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBBanYuVmFsaWRhdGlvbkVycm9yID0gdmFsaWRhdGlvbl9lcnJvcl8xLmRlZmF1bHQ7CiAgICBBanYuTWlzc2luZ1JlZkVycm9yID0gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBBanY7CiAgICBmdW5jdGlvbiBjaGVja09wdGlvbnMoY2hlY2tPcHRzLCBvcHRpb25zLCBtc2csIGxvZyA9ICJlcnJvciIpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gY2hlY2tPcHRzKSB7CiAgICAgICAgY29uc3Qgb3B0ID0ga2V5OwogICAgICAgIGlmIChvcHQgaW4gb3B0aW9ucykKICAgICAgICAgIHRoaXMubG9nZ2VyW2xvZ10oYCR7bXNnfTogb3B0aW9uICR7a2V5fS4gJHtjaGVja09wdHNbb3B0XX1gKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0U2NoRW52KGtleVJlZikgewogICAgICBrZXlSZWYgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShrZXlSZWYpOwogICAgICByZXR1cm4gdGhpcy5zY2hlbWFzW2tleVJlZl0gfHwgdGhpcy5yZWZzW2tleVJlZl07CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsU2NoZW1hcygpIHsKICAgICAgY29uc3Qgb3B0c1NjaGVtYXMgPSB0aGlzLm9wdHMuc2NoZW1hczsKICAgICAgaWYgKCFvcHRzU2NoZW1hcykKICAgICAgICByZXR1cm47CiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHNTY2hlbWFzKSkKICAgICAgICB0aGlzLmFkZFNjaGVtYShvcHRzU2NoZW1hcyk7CiAgICAgIGVsc2UKICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvcHRzU2NoZW1hcykKICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzW2tleV0sIGtleSk7CiAgICB9CiAgICBmdW5jdGlvbiBhZGRJbml0aWFsRm9ybWF0cygpIHsKICAgICAgZm9yIChjb25zdCBuYW1lIGluIHRoaXMub3B0cy5mb3JtYXRzKSB7CiAgICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy5vcHRzLmZvcm1hdHNbbmFtZV07CiAgICAgICAgaWYgKGZvcm1hdCkKICAgICAgICAgIHRoaXMuYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxLZXl3b3JkcyhkZWZzKSB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRlZnMpKSB7CiAgICAgICAgdGhpcy5hZGRWb2NhYnVsYXJ5KGRlZnMpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLmxvZ2dlci53YXJuKCJrZXl3b3JkcyBvcHRpb24gYXMgbWFwIGlzIGRlcHJlY2F0ZWQsIHBhc3MgYXJyYXkiKTsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIGRlZnMpIHsKICAgICAgICBjb25zdCBkZWYgPSBkZWZzW2tleXdvcmRdOwogICAgICAgIGlmICghZGVmLmtleXdvcmQpCiAgICAgICAgICBkZWYua2V5d29yZCA9IGtleXdvcmQ7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGdldE1ldGFTY2hlbWFPcHRpb25zKCkgewogICAgICBjb25zdCBtZXRhT3B0cyA9IHsgLi4udGhpcy5vcHRzIH07CiAgICAgIGZvciAoY29uc3Qgb3B0IG9mIE1FVEFfSUdOT1JFX09QVElPTlMpCiAgICAgICAgZGVsZXRlIG1ldGFPcHRzW29wdF07CiAgICAgIHJldHVybiBtZXRhT3B0czsKICAgIH0KICAgIHZhciBub0xvZ3MgPSB7IGxvZygpIHsKICAgIH0sIHdhcm4oKSB7CiAgICB9LCBlcnJvcigpIHsKICAgIH0gfTsKICAgIGZ1bmN0aW9uIGdldExvZ2dlcihsb2dnZXIpIHsKICAgICAgaWYgKGxvZ2dlciA9PT0gZmFsc2UpCiAgICAgICAgcmV0dXJuIG5vTG9nczsKICAgICAgaWYgKGxvZ2dlciA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybiBjb25zb2xlOwogICAgICBpZiAobG9nZ2VyLmxvZyAmJiBsb2dnZXIud2FybiAmJiBsb2dnZXIuZXJyb3IpCiAgICAgICAgcmV0dXJuIGxvZ2dlcjsKICAgICAgdGhyb3cgbmV3IEVycm9yKCJsb2dnZXIgbXVzdCBpbXBsZW1lbnQgbG9nLCB3YXJuIGFuZCBlcnJvciBtZXRob2RzIik7CiAgICB9CiAgICB2YXIgS0VZV09SRF9OQU1FID0gL15bYS16XyRdW2EtejAtOV8kOi1dKiQvaTsKICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZChrZXl3b3JkLCBkZWYpIHsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgKDAsIHV0aWxfMS5lYWNoSXRlbSkoa2V5d29yZCwgKGt3ZCkgPT4gewogICAgICAgIGlmIChSVUxFUy5rZXl3b3Jkc1trd2RdKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXl3b3JkICR7a3dkfSBpcyBhbHJlYWR5IGRlZmluZWRgKTsKICAgICAgICBpZiAoIUtFWVdPUkRfTkFNRS50ZXN0KGt3ZCkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGhhcyBpbnZhbGlkIG5hbWVgKTsKICAgICAgfSk7CiAgICAgIGlmICghZGVmKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiAhKCJjb2RlIiBpbiBkZWYgfHwgInZhbGlkYXRlIiBpbiBkZWYpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCckZGF0YSBrZXl3b3JkIG11c3QgaGF2ZSAiY29kZSIgb3IgInZhbGlkYXRlIiBmdW5jdGlvbicpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBhZGRSdWxlKGtleXdvcmQsIGRlZmluaXRpb24sIGRhdGFUeXBlKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgcG9zdCA9IGRlZmluaXRpb24gPT09IG51bGwgfHwgZGVmaW5pdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVmaW5pdGlvbi5wb3N0OwogICAgICBpZiAoZGF0YVR5cGUgJiYgcG9zdCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2tleXdvcmQgd2l0aCAicG9zdCIgZmxhZyBjYW5ub3QgaGF2ZSAidHlwZSInKTsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gdGhpczsKICAgICAgbGV0IHJ1bGVHcm91cCA9IHBvc3QgPyBSVUxFUy5wb3N0IDogUlVMRVMucnVsZXMuZmluZCgoeyB0eXBlOiB0IH0pID0+IHQgPT09IGRhdGFUeXBlKTsKICAgICAgaWYgKCFydWxlR3JvdXApIHsKICAgICAgICBydWxlR3JvdXAgPSB7IHR5cGU6IGRhdGFUeXBlLCBydWxlczogW10gfTsKICAgICAgICBSVUxFUy5ydWxlcy5wdXNoKHJ1bGVHcm91cCk7CiAgICAgIH0KICAgICAgUlVMRVMua2V5d29yZHNba2V5d29yZF0gPSB0cnVlOwogICAgICBpZiAoIWRlZmluaXRpb24pCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBydWxlID0gewogICAgICAgIGtleXdvcmQsCiAgICAgICAgZGVmaW5pdGlvbjogewogICAgICAgICAgLi4uZGVmaW5pdGlvbiwKICAgICAgICAgIHR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmaW5pdGlvbi5zY2hlbWFUeXBlKQogICAgICAgIH0KICAgICAgfTsKICAgICAgaWYgKGRlZmluaXRpb24uYmVmb3JlKQogICAgICAgIGFkZEJlZm9yZVJ1bGUuY2FsbCh0aGlzLCBydWxlR3JvdXAsIHJ1bGUsIGRlZmluaXRpb24uYmVmb3JlKTsKICAgICAgZWxzZQogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICBSVUxFUy5hbGxba2V5d29yZF0gPSBydWxlOwogICAgICAoX2EgPSBkZWZpbml0aW9uLmltcGxlbWVudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb3JFYWNoKChrd2QpID0+IHRoaXMuYWRkS2V5d29yZChrd2QpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEJlZm9yZVJ1bGUocnVsZUdyb3VwLCBydWxlLCBiZWZvcmUpIHsKICAgICAgY29uc3QgaSA9IHJ1bGVHcm91cC5ydWxlcy5maW5kSW5kZXgoKF9ydWxlKSA9PiBfcnVsZS5rZXl3b3JkID09PSBiZWZvcmUpOwogICAgICBpZiAoaSA+PSAwKSB7CiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnNwbGljZShpLCAwLCBydWxlKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMucHVzaChydWxlKTsKICAgICAgICB0aGlzLmxvZ2dlci53YXJuKGBydWxlICR7YmVmb3JlfSBpcyBub3QgZGVmaW5lZGApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBrZXl3b3JkTWV0YXNjaGVtYShkZWYpIHsKICAgICAgbGV0IHsgbWV0YVNjaGVtYSB9ID0gZGVmOwogICAgICBpZiAobWV0YVNjaGVtYSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKGRlZi4kZGF0YSAmJiB0aGlzLm9wdHMuJGRhdGEpCiAgICAgICAgbWV0YVNjaGVtYSA9IHNjaGVtYU9yRGF0YShtZXRhU2NoZW1hKTsKICAgICAgZGVmLnZhbGlkYXRlU2NoZW1hID0gdGhpcy5jb21waWxlKG1ldGFTY2hlbWEsIHRydWUpOwogICAgfQogICAgdmFyICRkYXRhUmVmID0gewogICAgICAkcmVmOiAiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Fqdi12YWxpZGF0b3IvYWp2L21hc3Rlci9saWIvcmVmcy9kYXRhLmpzb24jIgogICAgfTsKICAgIGZ1bmN0aW9uIHNjaGVtYU9yRGF0YShzY2hlbWEyKSB7CiAgICAgIHJldHVybiB7IGFueU9mOiBbc2NoZW1hMiwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pZC5qcwp2YXIgcmVxdWlyZV9pZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvaWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZCIsCiAgICAgIGNvZGUoKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOT1QgU1VQUE9SVEVEOiBrZXl3b3JkICJpZCIsIHVzZSAiJGlkIiBmb3Igc2NoZW1hIElEJyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYWxsUmVmID0gZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSB2b2lkIDA7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIiRyZWYiLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiAkcmVmLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgYmFzZUlkLCBzY2hlbWFFbnY6IGVudiwgdmFsaWRhdGVOYW1lLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgY29uc3QgeyByb290IH0gPSBlbnY7CiAgICAgICAgaWYgKCgkcmVmID09PSAiIyIgfHwgJHJlZiA9PT0gIiMvIikgJiYgYmFzZUlkID09PSByb290LmJhc2VJZCkKICAgICAgICAgIHJldHVybiBjYWxsUm9vdFJlZigpOwogICAgICAgIGNvbnN0IHNjaE9yRW52ID0gY29tcGlsZV8xLnJlc29sdmVSZWYuY2FsbChzZWxmMiwgcm9vdCwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyByZWZfZXJyb3JfMS5kZWZhdWx0KGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgJHJlZik7CiAgICAgICAgaWYgKHNjaE9yRW52IGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgIHJldHVybiBjYWxsVmFsaWRhdGUoc2NoT3JFbnYpOwogICAgICAgIHJldHVybiBpbmxpbmVSZWZTY2hlbWEoc2NoT3JFbnYpOwogICAgICAgIGZ1bmN0aW9uIGNhbGxSb290UmVmKCkgewogICAgICAgICAgaWYgKGVudiA9PT0gcm9vdCkKICAgICAgICAgICAgcmV0dXJuIGNhbGxSZWYoY3h0LCB2YWxpZGF0ZU5hbWUsIGVudiwgZW52LiRhc3luYyk7CiAgICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHJvb3QgfSk7CiAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsICgwLCBjb2RlZ2VuXzEuXylgJHtyb290TmFtZX0udmFsaWRhdGVgLCByb290LCByb290LiRhc3luYyk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZShzY2gpIHsKICAgICAgICAgIGNvbnN0IHYgPSBnZXRWYWxpZGF0ZShjeHQsIHNjaCk7CiAgICAgICAgICBjYWxsUmVmKGN4dCwgdiwgc2NoLCBzY2guJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW5saW5lUmVmU2NoZW1hKHNjaCkgewogICAgICAgICAgY29uc3Qgc2NoTmFtZSA9IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCBvcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaCwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaCkgfSA6IHsgcmVmOiBzY2ggfSk7CiAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgICBkYXRhVHlwZXM6IFtdLAogICAgICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaE5hbWUsCiAgICAgICAgICAgIGVyclNjaGVtYVBhdGg6ICRyZWYKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQpOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBnZXRWYWxpZGF0ZShjeHQsIHNjaCkgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gZ2VuLnNjb3BlVmFsdWUoInZhbGlkYXRlIiwgeyByZWY6IHNjaC52YWxpZGF0ZSB9KSA6ICgwLCBjb2RlZ2VuXzEuXylgJHtnZW4uc2NvcGVWYWx1ZSgid3JhcHBlciIsIHsgcmVmOiBzY2ggfSl9LnZhbGlkYXRlYDsKICAgIH0KICAgIGV4cG9ydHMyLmdldFZhbGlkYXRlID0gZ2V0VmFsaWRhdGU7CiAgICBmdW5jdGlvbiBjYWxsUmVmKGN4dCwgdiwgc2NoLCAkYXN5bmMpIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBzY2hlbWFFbnY6IGVudiwgb3B0cyB9ID0gaXQ7CiAgICAgIGNvbnN0IHBhc3NDeHQgPSBvcHRzLnBhc3NDb250ZXh0ID8gbmFtZXNfMS5kZWZhdWx0LnRoaXMgOiBjb2RlZ2VuXzEubmlsOwogICAgICBpZiAoJGFzeW5jKQogICAgICAgIGNhbGxBc3luY1JlZigpOwogICAgICBlbHNlCiAgICAgICAgY2FsbFN5bmNSZWYoKTsKICAgICAgZnVuY3Rpb24gY2FsbEFzeW5jUmVmKCkgewogICAgICAgIGlmICghZW52LiRhc3luYykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIHJlZmVyZW5jZWQgYnkgc3luYyBzY2hlbWEiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIik7CiAgICAgICAgZ2VuLnRyeSgoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpfWApOwogICAgICAgICAgYWRkRXZhbHVhdGVkRnJvbSh2KTsKICAgICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICB9LCAoZSkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgISgke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KWAsICgpID0+IGdlbi50aHJvdyhlKSk7CiAgICAgICAgICBhZGRFcnJvcnNGcm9tKGUpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbGxTeW5jUmVmKCkgewogICAgICAgIGN4dC5yZXN1bHQoKDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpLCAoKSA9PiBhZGRFdmFsdWF0ZWRGcm9tKHYpLCAoKSA9PiBhZGRFcnJvcnNGcm9tKHYpKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhZGRFcnJvcnNGcm9tKHNvdXJjZSkgewogICAgICAgIGNvbnN0IGVycnMgPSAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCk7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEV2YWx1YXRlZEZyb20oc291cmNlKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICghaXQub3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hFdmFsdWF0ZWQgPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gudmFsaWRhdGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ldmFsdWF0ZWQ7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY1Byb3BzKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgc2NoRXZhbHVhdGVkLnByb3BzLCBpdC5wcm9wcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQucHJvcHNgKTsKICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBwcm9wcywgaXQucHJvcHMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGl0Lml0ZW1zICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY0l0ZW1zKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoRXZhbHVhdGVkLml0ZW1zLCBpdC5pdGVtcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZ2VuLnZhcigiaXRlbXMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQuaXRlbXNgKTsKICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBpdGVtcywgaXQuaXRlbXMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBjYWxsUmVmOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2luZGV4LmpzCnZhciByZXF1aXJlX2NvcmUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUyID0gWwogICAgICAiJHNjaGVtYSIsCiAgICAgICIkaWQiLAogICAgICAiJGRlZnMiLAogICAgICAiJHZvY2FidWxhcnkiLAogICAgICB7IGtleXdvcmQ6ICIkY29tbWVudCIgfSwKICAgICAgImRlZmluaXRpb25zIiwKICAgICAgaWRfMS5kZWZhdWx0LAogICAgICByZWZfMS5kZWZhdWx0CiAgICBdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGNvcmUyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMKdmFyIHJlcXVpcmVfbGltaXROdW1iZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TnVtYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgb3BzID0gY29kZWdlbl8xLm9wZXJhdG9yczsKICAgIHZhciBLV0RzID0gewogICAgICBtYXhpbXVtOiB7IG9rU3RyOiAiPD0iLCBvazogb3BzLkxURSwgZmFpbDogb3BzLkdUIH0sCiAgICAgIG1pbmltdW06IHsgb2tTdHI6ICI+PSIsIG9rOiBvcHMuR1RFLCBmYWlsOiBvcHMuTFQgfSwKICAgICAgZXhjbHVzaXZlTWF4aW11bTogeyBva1N0cjogIjwiLCBvazogb3BzLkxULCBmYWlsOiBvcHMuR1RFIH0sCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsgb2tTdHI6ICI+Iiwgb2s6IG9wcy5HVCwgZmFpbDogb3BzLkxURSB9CiAgICB9OwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGJlICR7S1dEc1trZXl3b3JkXS5va1N0cn0gJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtjb21wYXJpc29uOiAke0tXRHNba2V5d29yZF0ub2tTdHJ9LCBsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ICR7S1dEc1trZXl3b3JkXS5mYWlsfSAke3NjaGVtYUNvZGV9IHx8IGlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbXVsdGlwbGVPZi5qcwp2YXIgcmVxdWlyZV9tdWx0aXBsZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9tdWx0aXBsZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgbXVsdGlwbGUgb2YgJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHttdWx0aXBsZU9mOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibXVsdGlwbGVPZiIsCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHByZWMgPSBpdC5vcHRzLm11bHRpcGxlT2ZQcmVjaXNpb247CiAgICAgICAgY29uc3QgcmVzID0gZ2VuLmxldCgicmVzIik7CiAgICAgICAgY29uc3QgaW52YWxpZCA9IHByZWMgPyAoMCwgY29kZWdlbl8xLl8pYE1hdGguYWJzKE1hdGgucm91bmQoJHtyZXN9KSAtICR7cmVzfSkgPiAxZS0ke3ByZWN9YCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtyZXN9ICE9PSBwYXJzZUludCgke3Jlc30pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgKCR7c2NoZW1hQ29kZX0gPT09IDAgfHwgKCR7cmVzfSA9ICR7ZGF0YX0vJHtzY2hlbWFDb2RlfSwgJHtpbnZhbGlkfSkpYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoLmpzCnZhciByZXF1aXJlX3VjczJsZW5ndGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdWNzMmxlbmd0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZnVuY3Rpb24gdWNzMmxlbmd0aChzdHIyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0cjIubGVuZ3RoOwogICAgICBsZXQgbGVuZ3RoID0gMDsKICAgICAgbGV0IHBvcyA9IDA7CiAgICAgIGxldCB2YWx1ZTsKICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgIGxlbmd0aCsrOwogICAgICAgIHZhbHVlID0gc3RyMi5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICBpZiAodmFsdWUgPj0gNTUyOTYgJiYgdmFsdWUgPD0gNTYzMTkgJiYgcG9zIDwgbGVuKSB7CiAgICAgICAgICB2YWx1ZSA9IHN0cjIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdExlbmd0aC5qcwp2YXIgcmVxdWlyZV9saW1pdExlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRMZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1Y3MybGVuZ3RoXzEgPSByZXF1aXJlX3VjczJsZW5ndGgoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IGNoYXJhY3RlcnNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4TGVuZ3RoIiwgIm1pbkxlbmd0aCJdLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGNvbnN0IGxlbiA9IGl0Lm9wdHMudW5pY29kZSA9PT0gZmFsc2UgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgdXRpbF8xLnVzZUZ1bmMpKGN4dC5nZW4sIHVjczJsZW5ndGhfMS5kZWZhdWx0KX0oJHtkYXRhfSlgOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCBwYXR0ZXJuICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXR0ZXJuOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicGF0dGVybiIsCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB1ID0gaXQub3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgICAgY29uc3QgcmVnRXhwID0gJGRhdGEgPyAoMCwgY29kZWdlbl8xLl8pYChuZXcgUmVnRXhwKCR7c2NoZW1hQ29kZX0sICR7dX0pKWAgOiAoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgc2NoZW1hMik7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEke3JlZ0V4cH0udGVzdCgke2RhdGF9KWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9saW1pdFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSB7CiAgICAgICAgY29uc3QgY29tcCA9IGtleXdvcmQgPT09ICJtYXhQcm9wZXJ0aWVzIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IHByb3BlcnRpZXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4UHJvcGVydGllcyIsICJtaW5Qcm9wZXJ0aWVzIl0sCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gY29kZWdlbl8xLm9wZXJhdG9ycy5HVCA6IGNvZGVnZW5fMS5vcGVyYXRvcnMuTFQ7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5rZXlzKCR7ZGF0YX0pLmxlbmd0aCAke29wfSAke3NjaGVtYUNvZGV9YCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcmVxdWlyZWQuanMKdmFyIHJlcXVpcmVfcmVxdWlyZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSByZXF1aXJlZCBwcm9wZXJ0eSAnJHttaXNzaW5nUHJvcGVydHl9J2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge21pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicmVxdWlyZWQiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGRhdGEsICRkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cyB9ID0gaXQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiBzY2hlbWEyLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gb3B0cy5sb29wUmVxdWlyZWQ7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykKICAgICAgICAgIGFsbEVycm9yc01vZGUoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBleGl0T25FcnJvck1vZGUoKTsKICAgICAgICBpZiAob3B0cy5zdHJpY3RSZXF1aXJlZCkgewogICAgICAgICAgY29uc3QgcHJvcHMgPSBjeHQucGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgICBjb25zdCB7IGRlZmluZWRQcm9wZXJ0aWVzIH0gPSBjeHQuaXQ7CiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkS2V5IG9mIHNjaGVtYTIpIHsKICAgICAgICAgICAgaWYgKChwcm9wcyA9PT0gbnVsbCB8fCBwcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJvcHNbcmVxdWlyZWRLZXldKSA9PT0gdm9pZCAwICYmICFkZWZpbmVkUHJvcGVydGllcy5oYXMocmVxdWlyZWRLZXkpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9IGl0LnNjaGVtYUVudi5iYXNlSWQgKyBpdC5lcnJTY2hlbWFQYXRoOwogICAgICAgICAgICAgIGNvbnN0IG1zZyA9IGByZXF1aXJlZCBwcm9wZXJ0eSAiJHtyZXF1aXJlZEtleX0iIGlzIG5vdCBkZWZpbmVkIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0UmVxdWlyZWQpYDsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RSZXF1aXJlZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWxsRXJyb3JzTW9kZSgpIHsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKGNvZGVnZW5fMS5uaWwsIGxvb3BBbGxSZXF1aXJlZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2Ygc2NoZW1hMikgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBwcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBleGl0T25FcnJvck1vZGUoKSB7CiAgICAgICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICAgICAgaWYgKHVzZUxvb3AgfHwgJGRhdGEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgICAgICBjeHQuYmxvY2skZGF0YSh2YWxpZCwgKCkgPT4gbG9vcFVudGlsTWlzc2luZyhtaXNzaW5nLCB2YWxpZCkpOwogICAgICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBzY2hlbWEyLCBtaXNzaW5nKSk7CiAgICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BBbGxSZXF1aXJlZCgpIHsKICAgICAgICAgIGdlbi5mb3JPZigicHJvcCIsIHNjaGVtYUNvZGUsIChwcm9wKSA9PiB7CiAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IHByb3AgfSk7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLm5vUHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpIHsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSk7CiAgICAgICAgICBnZW4uZm9yT2YobWlzc2luZywgc2NoZW1hQ29kZSwgKCkgPT4gewogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIG1pc3NpbmcsIG9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIGNvZGVnZW5fMS5uaWwpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0SXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4SXRlbXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gaXRlbXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4SXRlbXMiLCAibWluSXRlbXMiXSwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjb25zdCBvcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMKdmFyIHJlcXVpcmVfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3VuaXF1ZUl0ZW1zLmpzCnZhciByZXF1aXJlX3VuaXF1ZUl0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi91bmlxdWVJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGksIGogfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBkdXBsaWNhdGUgaXRlbXMgKGl0ZW1zICMjICR7an0gYW5kICR7aX0gYXJlIGlkZW50aWNhbClgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7aTogJHtpfSwgajogJHtqfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInVuaXF1ZUl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogImJvb2xlYW4iLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmICFzY2hlbWEyKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBjb25zdCBpdGVtVHlwZXMgPSBwYXJlbnRTY2hlbWEuaXRlbXMgPyAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykocGFyZW50U2NoZW1hLml0ZW1zKSA6IFtdOwogICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCB2YWxpZGF0ZVVuaXF1ZUl0ZW1zLCAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IGZhbHNlYCk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaXF1ZUl0ZW1zKCkgewogICAgICAgICAgY29uc3QgaSA9IGdlbi5sZXQoImkiLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgICBjb25zdCBqID0gZ2VuLmxldCgiaiIpOwogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGksIGogfSk7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aX0gPiAxYCwgKCkgPT4gKGNhbk9wdGltaXplKCkgPyBsb29wTiA6IGxvb3BOMikoaSwgaikpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZSgpIHsKICAgICAgICAgIHJldHVybiBpdGVtVHlwZXMubGVuZ3RoID4gMCAmJiAhaXRlbVR5cGVzLnNvbWUoKHQpID0+IHQgPT09ICJvYmplY3QiIHx8IHQgPT09ICJhcnJheSIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTihpLCBqKSB7CiAgICAgICAgICBjb25zdCBpdGVtID0gZ2VuLm5hbWUoIml0ZW0iKTsKICAgICAgICAgIGNvbnN0IHdyb25nVHlwZSA9ICgwLCBkYXRhVHlwZV8xLmNoZWNrRGF0YVR5cGVzKShpdGVtVHlwZXMsIGl0ZW0sIGl0Lm9wdHMuc3RyaWN0TnVtYmVycywgZGF0YVR5cGVfMS5EYXRhVHlwZS5Xcm9uZyk7CiAgICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2VuLmNvbnN0KCJpbmRpY2VzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICAgICAgZ2VuLmZvcigoMCwgY29kZWdlbl8xLl8pYDske2l9LS07YCwgKCkgPT4gewogICAgICAgICAgICBnZW4ubGV0KGl0ZW0sICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfVske2l9XWApOwogICAgICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoMCwgY29kZWdlbl8xLl8pYGNvbnRpbnVlYCk7CiAgICAgICAgICAgIGlmIChpdGVtVHlwZXMubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpdGVtfSA9PSAic3RyaW5nImAsICgwLCBjb2RlZ2VuXzEuXylgJHtpdGVtfSArPSAiXyJgKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7aW5kaWNlc31bJHtpdGVtfV0gPT0gIm51bWJlciJgLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihqLCAoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV1gKTsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKTsKICAgICAgICAgICAgfSkuY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV0gPSAke2l9YCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbG9vcE4yKGksIGopIHsKICAgICAgICAgIGNvbnN0IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgICAgY29uc3Qgb3V0ZXIgPSBnZW4ubmFtZSgib3V0ZXIiKTsKICAgICAgICAgIGdlbi5sYWJlbChvdXRlcikuZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgJHtqfSA9ICR7aX07ICR7an0tLTtgLCAoKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2VxbH0oJHtkYXRhfVske2l9XSwgJHtkYXRhfVske2p9XSlgLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsob3V0ZXIpOwogICAgICAgICAgfSkpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vY29uc3QuanMKdmFyIHJlcXVpcmVfY29uc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2NvbnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gY29uc3RhbnQiLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWxsb3dlZFZhbHVlOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiY29uc3QiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWFDb2RlLCBzY2hlbWE6IHNjaGVtYTIgfSA9IGN4dDsKICAgICAgICBpZiAoJGRhdGEgfHwgc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IikgewogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEkeygwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpfSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KWApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjeHQuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hMn0gIT09ICR7ZGF0YX1gKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vZW51bS5qcwp2YXIgcmVxdWlyZV9lbnVtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9lbnVtLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgYmUgZXF1YWwgdG8gb25lIG9mIHRoZSBhbGxvd2VkIHZhbHVlcyIsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHthbGxvd2VkVmFsdWVzOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZW51bSIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgJGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmIHNjaGVtYTIubGVuZ3RoID09PSAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJlbnVtIG11c3QgaGF2ZSBub24tZW1wdHkgYXJyYXkiKTsKICAgICAgICBjb25zdCB1c2VMb29wID0gc2NoZW1hMi5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgY29uc3QgdlNjaGVtYSA9IGdlbi5jb25zdCgidlNjaGVtYSIsIHNjaGVtYUNvZGUpOwogICAgICAgICAgdmFsaWQgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5zY2hlbWEyLm1hcCgoX3gsIGkpID0+IGVxdWFsQ29kZSh2U2NoZW1hLCBpKSkpOwogICAgICAgIH0KICAgICAgICBjeHQucGFzcyh2YWxpZCk7CiAgICAgICAgZnVuY3Rpb24gbG9vcEVudW0oKSB7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICBnZW4uZm9yT2YoInYiLCBzY2hlbWFDb2RlLCAodikgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2fSlgLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKS5icmVhaygpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGVxdWFsQ29kZSh2U2NoZW1hLCBpKSB7CiAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEyW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGxpbWl0TnVtYmVyXzEgPSByZXF1aXJlX2xpbWl0TnVtYmVyKCk7CiAgICB2YXIgbXVsdGlwbGVPZl8xID0gcmVxdWlyZV9tdWx0aXBsZU9mKCk7CiAgICB2YXIgbGltaXRMZW5ndGhfMSA9IHJlcXVpcmVfbGltaXRMZW5ndGgoKTsKICAgIHZhciBwYXR0ZXJuXzEgPSByZXF1aXJlX3BhdHRlcm4oKTsKICAgIHZhciBsaW1pdFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfbGltaXRQcm9wZXJ0aWVzKCk7CiAgICB2YXIgcmVxdWlyZWRfMSA9IHJlcXVpcmVfcmVxdWlyZWQoKTsKICAgIHZhciBsaW1pdEl0ZW1zXzEgPSByZXF1aXJlX2xpbWl0SXRlbXMoKTsKICAgIHZhciB1bmlxdWVJdGVtc18xID0gcmVxdWlyZV91bmlxdWVJdGVtcygpOwogICAgdmFyIGNvbnN0XzEgPSByZXF1aXJlX2NvbnN0KCk7CiAgICB2YXIgZW51bV8xID0gcmVxdWlyZV9lbnVtKCk7CiAgICB2YXIgdmFsaWRhdGlvbiA9IFsKICAgICAgLy8gbnVtYmVyCiAgICAgIGxpbWl0TnVtYmVyXzEuZGVmYXVsdCwKICAgICAgbXVsdGlwbGVPZl8xLmRlZmF1bHQsCiAgICAgIC8vIHN0cmluZwogICAgICBsaW1pdExlbmd0aF8xLmRlZmF1bHQsCiAgICAgIHBhdHRlcm5fMS5kZWZhdWx0LAogICAgICAvLyBvYmplY3QKICAgICAgbGltaXRQcm9wZXJ0aWVzXzEuZGVmYXVsdCwKICAgICAgcmVxdWlyZWRfMS5kZWZhdWx0LAogICAgICAvLyBhcnJheQogICAgICBsaW1pdEl0ZW1zXzEuZGVmYXVsdCwKICAgICAgdW5pcXVlSXRlbXNfMS5kZWZhdWx0LAogICAgICAvLyBhbnkKICAgICAgeyBrZXl3b3JkOiAidHlwZSIsIHNjaGVtYVR5cGU6IFsic3RyaW5nIiwgImFycmF5Il0gfSwKICAgICAgeyBrZXl3b3JkOiAibnVsbGFibGUiLCBzY2hlbWFUeXBlOiAiYm9vbGVhbiIgfSwKICAgICAgY29uc3RfMS5kZWZhdWx0LAogICAgICBlbnVtXzEuZGVmYXVsdAogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB2YWxpZGF0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbEl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJib29sZWFuIiwgIm9iamVjdCJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgaXRlbXMgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICciYWRkaXRpb25hbEl0ZW1zIiBpcyBpZ25vcmVkIHdoZW4gIml0ZW1zIiBpcyBub3QgYW4gYXJyYXkgb2Ygc2NoZW1hcycpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyhjeHQsIGl0ZW1zKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgaWYgKHNjaGVtYTIgPT09IGZhbHNlKSB7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IGxlbjogaXRlbXMubGVuZ3RoIH0pOwogICAgICAgIGN4dC5wYXNzKCgwLCBjb2RlZ2VuXzEuXylgJHtsZW59IDw9ICR7aXRlbXMubGVuZ3RofWApOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi52YXIoInZhbGlkIiwgKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHZhbGlkYXRlSXRlbXModmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXModmFsaWQpIHsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCBpdGVtcy5sZW5ndGgsIGxlbiwgKGkpID0+IHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBkYXRhUHJvcDogaSwgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5OdW0gfSwgdmFsaWQpOwogICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMuanMKdmFyIHJlcXVpcmVfaXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuIHZhbGlkYXRlVHVwbGUoY3h0LCAiYWRkaXRpb25hbEl0ZW1zIiwgc2NoZW1hMik7CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJlZml4SXRlbXMuanMKdmFyIHJlcXVpcmVfcHJlZml4SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3ByZWZpeEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgaXRlbXNfMSA9IHJlcXVpcmVfaXRlbXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcmVmaXhJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsiYXJyYXkiXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlOiAoY3h0KSA9PiAoMCwgaXRlbXNfMS52YWxpZGF0ZVR1cGxlKShjeHQsICJpdGVtcyIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBtb3JlIHRoYW4gJHtsZW59IGl0ZW1zYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7bGVufX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIml0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hOiBzY2hlbWEyLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBwcmVmaXhJdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChwcmVmaXhJdGVtcykKICAgICAgICAgICgwLCBhZGRpdGlvbmFsSXRlbXNfMS52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcykoY3h0LCBwcmVmaXhJdGVtcyk7CiAgICAgICAgZWxzZQogICAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMKdmFyIHJlcXVpcmVfY29udGFpbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2NvbnRhaW5zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgY29udGFpbiBhdCBsZWFzdCAke21pbn0gdmFsaWQgaXRlbShzKWAgOiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSBhbmQgbm8gbW9yZSB0aGFuICR7bWF4fSB2YWxpZCBpdGVtKHMpYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbWluLCBtYXggfSB9KSA9PiBtYXggPT09IHZvaWQgMCA/ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn19YCA6ICgwLCBjb2RlZ2VuXzEuXylge21pbkNvbnRhaW5zOiAke21pbn0sIG1heENvbnRhaW5zOiAke21heH19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJjb250YWlucyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGxldCBtaW47CiAgICAgICAgbGV0IG1heDsKICAgICAgICBjb25zdCB7IG1pbkNvbnRhaW5zLCBtYXhDb250YWlucyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmIChpdC5vcHRzLm5leHQpIHsKICAgICAgICAgIG1pbiA9IG1pbkNvbnRhaW5zID09PSB2b2lkIDAgPyAxIDogbWluQ29udGFpbnM7CiAgICAgICAgICBtYXggPSBtYXhDb250YWluczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWluID0gMTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IG1pbiwgbWF4IH0pOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDApIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPT0gMCB3aXRob3V0ICJtYXhDb250YWlucyI6ICJjb250YWlucyIga2V5d29yZCBpZ25vcmVkYCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChtYXggIT09IHZvaWQgMCAmJiBtaW4gPiBtYXgpIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYCJtaW5Db250YWlucyIgPiAibWF4Q29udGFpbnMiIGlzIGFsd2F5cyBpbnZhbGlkYCk7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICBsZXQgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtsZW59ID49ICR7bWlufWA7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtsZW59IDw9ICR7bWF4fWA7CiAgICAgICAgICBjeHQucGFzcyhjb25kKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMSkgewogICAgICAgICAgdmFsaWRhdGVJdGVtcyh2YWxpZCwgKCkgPT4gZ2VuLmlmKHZhbGlkLCAoKSA9PiBnZW4uYnJlYWsoKSkpOwogICAgICAgIH0gZWxzZSBpZiAobWluID09PSAwKSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGlmIChtYXggIT09IHZvaWQgMCkKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggPiAwYCwgdmFsaWRhdGVJdGVtc1dpdGhDb3VudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5sZXQodmFsaWQsIGZhbHNlKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKTsKICAgICAgICB9CiAgICAgICAgY3h0LnJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQoKSB7CiAgICAgICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgICAgIGNvbnN0IGNvdW50ID0gZ2VuLmxldCgiY291bnQiLCAwKTsKICAgICAgICAgIHZhbGlkYXRlSXRlbXMoc2NoVmFsaWQsICgpID0+IGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gY2hlY2tMaW1pdHMoY291bnQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXMoX3ZhbGlkLCBibG9jaykgewogICAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICBrZXl3b3JkOiAiY29udGFpbnMiLAogICAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8xLlR5cGUuTnVtLAogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgICAgfSwgX3ZhbGlkKTsKICAgICAgICAgICAgYmxvY2soKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja0xpbWl0cyhjb3VudCkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSsrYCk7CiAgICAgICAgICBpZiAobWF4ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPj0gJHttaW59YCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+ICR7bWF4fWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhaygpKTsKICAgICAgICAgICAgaWYgKG1pbiA9PT0gMSkKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzCnZhciByZXF1aXJlX2RlcGVuZGVuY2llcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVNjaGVtYURlcHMgPSBleHBvcnRzMi52YWxpZGF0ZVByb3BlcnR5RGVwcyA9IGV4cG9ydHMyLmVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIGV4cG9ydHMyLmVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgcHJvcGVydHksIGRlcHNDb3VudCwgZGVwcyB9IH0pID0+IHsKICAgICAgICBjb25zdCBwcm9wZXJ0eV9pZXMgPSBkZXBzQ291bnQgPT09IDEgPyAicHJvcGVydHkiIDogInByb3BlcnRpZXMiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBoYXZlICR7cHJvcGVydHlfaWVzfSAke2RlcHN9IHdoZW4gcHJvcGVydHkgJHtwcm9wZXJ0eX0gaXMgcHJlc2VudGA7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IHByb3BlcnR5LCBkZXBzQ291bnQsIGRlcHMsIG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Byb3BlcnR5OiAke3Byb3BlcnR5fSwKICAgIG1pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9LAogICAgZGVwc0NvdW50OiAke2RlcHNDb3VudH0sCiAgICBkZXBzOiAke2RlcHN9fWAKICAgICAgLy8gVE9ETyBjaGFuZ2UgdG8gcmVmZXJlbmNlCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImRlcGVuZGVuY2llcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3I6IGV4cG9ydHMyLmVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IFtwcm9wRGVwcywgc2NoRGVwc10gPSBzcGxpdERlcGVuZGVuY2llcyhjeHQpOwogICAgICAgIHZhbGlkYXRlUHJvcGVydHlEZXBzKGN4dCwgcHJvcERlcHMpOwogICAgICAgIHZhbGlkYXRlU2NoZW1hRGVwcyhjeHQsIHNjaERlcHMpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gc3BsaXREZXBlbmRlbmNpZXMoeyBzY2hlbWE6IHNjaGVtYTIgfSkgewogICAgICBjb25zdCBwcm9wZXJ0eURlcHMgPSB7fTsKICAgICAgY29uc3Qgc2NoZW1hRGVwcyA9IHt9OwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEyKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIl9fcHJvdG9fXyIpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBkZXBzID0gQXJyYXkuaXNBcnJheShzY2hlbWEyW2tleV0pID8gcHJvcGVydHlEZXBzIDogc2NoZW1hRGVwczsKICAgICAgICBkZXBzW2tleV0gPSBzY2hlbWEyW2tleV07CiAgICAgIH0KICAgICAgcmV0dXJuIFtwcm9wZXJ0eURlcHMsIHNjaGVtYURlcHNdOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0eURlcHMoY3h0LCBwcm9wZXJ0eURlcHMgPSBjeHQuc2NoZW1hKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydHlEZXBzKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCBtaXNzaW5nID0gZ2VuLmxldCgibWlzc2luZyIpOwogICAgICBmb3IgKGNvbnN0IHByb3AgaW4gcHJvcGVydHlEZXBzKSB7CiAgICAgICAgY29uc3QgZGVwcyA9IHByb3BlcnR5RGVwc1twcm9wXTsKICAgICAgICBpZiAoZGVwcy5sZW5ndGggPT09IDApCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBoYXNQcm9wZXJ0eSA9ICgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsKICAgICAgICAgIHByb3BlcnR5OiBwcm9wLAogICAgICAgICAgZGVwc0NvdW50OiBkZXBzLmxlbmd0aCwKICAgICAgICAgIGRlcHM6IGRlcHMuam9pbigiLCAiKQogICAgICAgIH0pOwogICAgICAgIGlmIChpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgIGdlbi5pZihoYXNQcm9wZXJ0eSwgKCkgPT4gewogICAgICAgICAgICBmb3IgKGNvbnN0IGRlcFByb3Agb2YgZGVwcykgewogICAgICAgICAgICAgICgwLCBjb2RlXzEuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBkZXBQcm9wKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aGFzUHJvcGVydHl9ICYmICgkeygwLCBjb2RlXzEuY2hlY2tNaXNzaW5nUHJvcCkoY3h0LCBkZXBzLCBtaXNzaW5nKX0pYCk7CiAgICAgICAgICAoMCwgY29kZV8xLnJlcG9ydE1pc3NpbmdQcm9wKShjeHQsIG1pc3NpbmcpOwogICAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlUHJvcGVydHlEZXBzID0gdmFsaWRhdGVQcm9wZXJ0eURlcHM7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVNjaGVtYURlcHMoY3h0LCBzY2hlbWFEZXBzID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgZm9yIChjb25zdCBwcm9wIGluIHNjaGVtYURlcHMpIHsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYURlcHNbcHJvcF0pKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgZ2VuLmlmKAogICAgICAgICAgKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpLAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZCwgc2NoZW1hUHJvcDogcHJvcCB9LCB2YWxpZCk7CiAgICAgICAgICAgIGN4dC5tZXJnZVZhbGlkRXZhbHVhdGVkKHNjaEN4dCwgdmFsaWQpOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IGdlbi52YXIodmFsaWQsIHRydWUpCiAgICAgICAgICAvLyBUT0RPIHZhcgogICAgICAgICk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVTY2hlbWFEZXBzID0gdmFsaWRhdGVTY2hlbWFEZXBzOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnR5TmFtZXMuanMKdmFyIHJlcXVpcmVfcHJvcGVydHlOYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydHlOYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAicHJvcGVydHkgbmFtZSBtdXN0IGJlIHZhbGlkIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHlOYW1lOiAke3BhcmFtcy5wcm9wZXJ0eU5hbWV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydHlOYW1lcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEyKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IHByb3BlcnR5TmFtZToga2V5IH0pOwogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0eU5hbWVzIiwKICAgICAgICAgICAgZGF0YToga2V5LAogICAgICAgICAgICBkYXRhVHlwZXM6IFsic3RyaW5nIl0sCiAgICAgICAgICAgIHByb3BlcnR5TmFtZToga2V5LAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICBjeHQuZXJyb3IodHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsUHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHByb3BzID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShwYXJlbnRTY2hlbWEucHJvcGVydGllcyk7CiAgICAgICAgY29uc3QgcGF0UHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wYXR0ZXJuUHJvcGVydGllcyk7CiAgICAgICAgY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgICAgIGN4dC5vaygoMCwgY29kZWdlbl8xLl8pYCR7ZXJyc0NvdW50fSA9PT0gJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfWApOwogICAgICAgIGZ1bmN0aW9uIGNoZWNrQWRkaXRpb25hbFByb3BlcnRpZXMoKSB7CiAgICAgICAgICBnZW4uZm9ySW4oImtleSIsIGRhdGEsIChrZXkpID0+IHsKICAgICAgICAgICAgaWYgKCFwcm9wcy5sZW5ndGggJiYgIXBhdFByb3BzLmxlbmd0aCkKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydHlDb2RlKGtleSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoaXNBZGRpdGlvbmFsKGtleSksICgpID0+IGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgbGV0IGRlZmluZWRQcm9wOwogICAgICAgICAgaWYgKHByb3BzLmxlbmd0aCA+IDgpIHsKICAgICAgICAgICAgY29uc3QgcHJvcHNTY2hlbWEgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgcGFyZW50U2NoZW1hLnByb3BlcnRpZXMsICJwcm9wZXJ0aWVzIik7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVfMS5pc093blByb3BlcnR5KShnZW4sIHByb3BzU2NoZW1hLCBrZXkpOwogICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5sZW5ndGgpIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZWdlbl8xLm9yKSguLi5wcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl9ID09PSAke3B9YCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSBjb2RlZ2VuXzEubmlsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhdFByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKGRlZmluZWRQcm9wLCAuLi5wYXRQcm9wcy5tYXAoKHApID0+ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgcCl9LnRlc3QoJHtrZXl9KWApKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm5vdCkoZGVmaW5lZFByb3ApOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBkZWxldGVBZGRpdGlvbmFsKGtleSkgewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWBkZWxldGUgJHtkYXRhfVske2tleX1dYCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KSB7CiAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiYWxsIiB8fCBvcHRzLnJlbW92ZUFkZGl0aW9uYWwgJiYgc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJmYWlsaW5nIikgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHsKICAgICAgICAgICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgICAgICAgICAgZGVsZXRlQWRkaXRpb25hbChrZXkpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkKTsKICAgICAgICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlBZGRpdGlvbmFsU2NoZW1hKGtleSwgdmFsaWQsIGVycm9ycykgewogICAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gewogICAgICAgICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLlN0cgogICAgICAgICAgfTsKICAgICAgICAgIGlmIChlcnJvcnMgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc3Vic2NoZW1hLCB7CiAgICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZSwKICAgICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHN1YnNjaGVtYSwgdmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInByb3BlcnRpZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogIm9iamVjdCIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChpdC5vcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiICYmIHBhcmVudFNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllcyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQuY29kZShuZXcgdmFsaWRhdGVfMS5LZXl3b3JkQ3h0KGl0LCBhZGRpdGlvbmFsUHJvcGVydGllc18xLmRlZmF1bHQsICJhZGRpdGlvbmFsUHJvcGVydGllcyIpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYWxsUHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHNjaGVtYTIpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykgewogICAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgIH0KICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBhbGxQcm9wcy5sZW5ndGggJiYgaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgKDAsIHV0aWxfMS50b0hhc2gpKGFsbFByb3BzKSwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYWxsUHJvcHMuZmlsdGVyKChwKSA9PiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTJbcF0pKTsKICAgICAgICBpZiAocHJvcGVydGllcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgcHJvcGVydGllcykgewogICAgICAgICAgaWYgKGhhc0RlZmF1bHQocHJvcCkpIHsKICAgICAgICAgICAgYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgICBnZW4uZWxzZSgpLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgICAgfQogICAgICAgICAgY3h0Lml0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhc0RlZmF1bHQocHJvcCkgewogICAgICAgICAgcmV0dXJuIGl0Lm9wdHMudXNlRGVmYXVsdHMgJiYgIWl0LmNvbXBvc2l0ZVJ1bGUgJiYgc2NoZW1hMltwcm9wXS5kZWZhdWx0ICE9PSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5UHJvcGVydHlTY2hlbWEocHJvcCkgewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0aWVzIiwKICAgICAgICAgICAgc2NoZW1hUHJvcDogcHJvcCwKICAgICAgICAgICAgZGF0YVByb3A6IHByb3AKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcGF0dGVyblByb3BlcnRpZXMuanMKdmFyIHJlcXVpcmVfcGF0dGVyblByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGRhdGEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMgfSA9IGl0OwogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEyKTsKICAgICAgICBjb25zdCBhbHdheXNWYWxpZFBhdHRlcm5zID0gcGF0dGVybnMuZmlsdGVyKChwKSA9PiAoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMltwXSkpOwogICAgICAgIGlmIChwYXR0ZXJucy5sZW5ndGggPT09IDAgfHwgYWx3YXlzVmFsaWRQYXR0ZXJucy5sZW5ndGggPT09IHBhdHRlcm5zLmxlbmd0aCAmJiAoIWl0Lm9wdHMudW5ldmFsdWF0ZWQgfHwgaXQucHJvcHMgPT09IHRydWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNoZWNrUHJvcGVydGllcyA9IG9wdHMuc3RyaWN0U2NoZW1hICYmICFvcHRzLmFsbG93TWF0Y2hpbmdQcm9wZXJ0aWVzICYmIHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlICYmICEoaXQucHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkpIHsKICAgICAgICAgIGl0LnByb3BzID0gKDAsIHV0aWxfMi5ldmFsdWF0ZWRQcm9wc1RvTmFtZSkoZ2VuLCBpdC5wcm9wcyk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHsgcHJvcHMgfSA9IGl0OwogICAgICAgIHZhbGlkYXRlUGF0dGVyblByb3BlcnRpZXMoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVBhdHRlcm5Qcm9wZXJ0aWVzKCkgewogICAgICAgICAgZm9yIChjb25zdCBwYXQgb2YgcGF0dGVybnMpIHsKICAgICAgICAgICAgaWYgKGNoZWNrUHJvcGVydGllcykKICAgICAgICAgICAgICBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgICAgdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgICAgZ2VuLmlmKHZhbGlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjaGVja01hdGNoaW5nUHJvcGVydGllcyhwYXQpIHsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGVja1Byb3BlcnRpZXMpIHsKICAgICAgICAgICAgaWYgKG5ldyBSZWdFeHAocGF0KS50ZXN0KHByb3ApKSB7CiAgICAgICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgcHJvcGVydHkgJHtwcm9wfSBtYXRjaGVzIHBhdHRlcm4gJHtwYXR9ICh1c2UgYWxsb3dNYXRjaGluZ1Byb3BlcnRpZXMpYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0aWVzKHBhdCkgewogICAgICAgICAgZ2VuLmZvckluKCJrZXkiLCBkYXRhLCAoa2V5KSA9PiB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7KDAsIGNvZGVfMS51c2VQYXR0ZXJuKShjeHQsIHBhdCl9LnRlc3QoJHtrZXl9KWAsICgpID0+IHsKICAgICAgICAgICAgICBjb25zdCBhbHdheXNWYWxpZCA9IGFsd2F5c1ZhbGlkUGF0dGVybnMuaW5jbHVkZXMocGF0KTsKICAgICAgICAgICAgICBpZiAoIWFsd2F5c1ZhbGlkKSB7CiAgICAgICAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgICAgICAgICAgICAgc2NoZW1hUHJvcDogcGF0LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcDoga2V5LAogICAgICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMi5UeXBlLlN0cgogICAgICAgICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBwcm9wcyAhPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cHJvcHN9WyR7a2V5fV1gLCB0cnVlKTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFhbHdheXNWYWxpZCAmJiAhaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzCnZhciByZXF1aXJlX25vdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiBzY2hlbWEyLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hMikpIHsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkOiAibm90IiwKICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgYWxsRXJyb3JzOiBmYWxzZQogICAgICAgIH0sIHZhbGlkKTsKICAgICAgICBjeHQuZmFpbFJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCksICgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgfSwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgTk9UIGJlIHZhbGlkIiB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzCnZhciByZXF1aXJlX2FueU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbnlPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbnlPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlOiBjb2RlXzEudmFsaWRhdGVVbmlvbiwKICAgICAgZXJyb3I6IHsgbWVzc2FnZTogIm11c3QgbWF0Y2ggYSBzY2hlbWEgaW4gYW55T2YiIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivb25lT2YuanMKdmFyIHJlcXVpcmVfb25lT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGV4YWN0bHkgb25lIHNjaGVtYSBpbiBvbmVPZiIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Bhc3NpbmdTY2hlbWFzOiAke3BhcmFtcy5wYXNzaW5nfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hMikpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGlmIChpdC5vcHRzLmRpc2NyaW1pbmF0b3IgJiYgcGFyZW50U2NoZW1hLmRpc2NyaW1pbmF0b3IpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3Qgc2NoQXJyID0gc2NoZW1hMjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICAgIGNvbnN0IHBhc3NpbmcgPSBnZW4ubGV0KCJwYXNzaW5nIiwgbnVsbCk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IHBhc3NpbmcgfSk7CiAgICAgICAgZ2VuLmJsb2NrKHZhbGlkYXRlT25lT2YpOwogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlT25lT2YoKSB7CiAgICAgICAgICBzY2hBcnIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICAgIGxldCBzY2hDeHQ7CiAgICAgICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkgewogICAgICAgICAgICAgIGdlbi52YXIoc2NoVmFsaWQsIHRydWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7c2NoVmFsaWR9ICYmICR7dmFsaWR9YCkuYXNzaWduKHZhbGlkLCBmYWxzZSkuYXNzaWduKHBhc3NpbmcsICgwLCBjb2RlZ2VuXzEuXylgWyR7cGFzc2luZ30sICR7aX1dYCkuZWxzZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgKCkgPT4gewogICAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgICAgICAgIGdlbi5hc3NpZ24ocGFzc2luZywgaSk7CiAgICAgICAgICAgICAgaWYgKHNjaEN4dCkKICAgICAgICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMKdmFyIHJlcXVpcmVfYWxsT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FsbE9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWxsT2YiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6IHNjaGVtYTIsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYTIpKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIHNjaGVtYTIuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9pZi5qcwp2YXIgcmVxdWlyZV9pZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoICIke3BhcmFtcy5pZkNsYXVzZX0iIHNjaGVtYWAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2ZhaWxpbmdLZXl3b3JkOiAke3BhcmFtcy5pZkNsYXVzZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZiIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS50aGVuID09PSB2b2lkIDAgJiYgcGFyZW50U2NoZW1hLmVsc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCAnImlmIiB3aXRob3V0ICJ0aGVuIiBhbmQgImVsc2UiIGlzIGlnbm9yZWQnKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaGFzVGhlbiA9IGhhc1NjaGVtYShpdCwgInRoZW4iKTsKICAgICAgICBjb25zdCBoYXNFbHNlID0gaGFzU2NoZW1hKGl0LCAiZWxzZSIpOwogICAgICAgIGlmICghaGFzVGhlbiAmJiAhaGFzRWxzZSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgdmFsaWRhdGVJZigpOwogICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgIGlmIChoYXNUaGVuICYmIGhhc0Vsc2UpIHsKICAgICAgICAgIGNvbnN0IGlmQ2xhdXNlID0gZ2VuLmxldCgiaWZDbGF1c2UiKTsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZSB9KTsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iLCBpZkNsYXVzZSksIHZhbGlkYXRlQ2xhdXNlKCJlbHNlIiwgaWZDbGF1c2UpKTsKICAgICAgICB9IGVsc2UgaWYgKGhhc1RoZW4pIHsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkoc2NoVmFsaWQpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJZigpIHsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAiaWYiLAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVDbGF1c2Uoa2V5d29yZCwgaWZDbGF1c2UpIHsKICAgICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgc2NoVmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgICAgaWYgKGlmQ2xhdXNlKQogICAgICAgICAgICAgIGdlbi5hc3NpZ24oaWZDbGF1c2UsICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl3b3JkfWApOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGlmQ2xhdXNlOiBrZXl3b3JkIH0pOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBoYXNTY2hlbWEoaXQsIGtleXdvcmQpIHsKICAgICAgY29uc3Qgc2NoZW1hMiA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgcmV0dXJuIHNjaGVtYTIgIT09IHZvaWQgMCAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYTIpOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci90aGVuRWxzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJ0aGVuIiwgImVsc2UiXSwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBjb2RlKHsga2V5d29yZCwgcGFyZW50U2NoZW1hLCBpdCB9KSB7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS5pZiA9PT0gdm9pZCAwKQogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIiR7a2V5d29yZH0iIHdpdGhvdXQgImlmIiBpcyBpZ25vcmVkYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfYXBwbGljYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgbWF0Y2ggZm9ybWF0ICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmb3JtYXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJmb3JtYXQiLAogICAgICB0eXBlOiBbIm51bWJlciIsICJzdHJpbmciXSwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQsIHJ1bGVUeXBlKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWE6IHNjaGVtYTIsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBlcnJTY2hlbWFQYXRoLCBzY2hlbWFFbnYsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICgkZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZkRlZiA9IGdlbi5jb25zdCgiZkRlZiIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske3NjaGVtYUNvZGV9XWApOwogICAgICAgICAgY29uc3QgZlR5cGUgPSBnZW4ubGV0KCJmVHlwZSIpOwogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2VuLmxldCgiZm9ybWF0Iik7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmRGVmfSA9PSAib2JqZWN0IiAmJiAhKCR7ZkRlZn0gaW5zdGFuY2VvZiBSZWdFeHApYCwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnR5cGUgfHwgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCAoMCwgY29kZWdlbl8xLl8pYCR7ZkRlZn0udmFsaWRhdGVgKSwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAic3RyaW5nImApLmFzc2lnbihmb3JtYXQsIGZEZWYpKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikodW5rbm93bkZtdCgpLCBpbnZhbGlkRm10KCkpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25GbXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpCiAgICAgICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gJiYgISR7Zm9ybWF0fWA7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBpbnZhbGlkRm10KCkgewogICAgICAgICAgICBjb25zdCBjYWxsRm9ybWF0ID0gc2NoZW1hRW52LiRhc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgKCR7ZkRlZn0uYXN5bmMgPyBhd2FpdCAke2Zvcm1hdH0oJHtkYXRhfSkgOiAke2Zvcm1hdH0oJHtkYXRhfSkpYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmb3JtYXR9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgY29uc3QgdmFsaWREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAodHlwZW9mICR7Zm9ybWF0fSA9PSAiZnVuY3Rpb24iID8gJHtjYWxsRm9ybWF0fSA6ICR7Zm9ybWF0fS50ZXN0KCR7ZGF0YX0pKWA7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSAmJiAke2Zvcm1hdH0gIT09IHRydWUgJiYgJHtmVHlwZX0gPT09ICR7cnVsZVR5cGV9ICYmICEke3ZhbGlkRGF0YX1gOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdERlZiA9IHNlbGYyLmZvcm1hdHNbc2NoZW1hMl07CiAgICAgICAgICBpZiAoIWZvcm1hdERlZikgewogICAgICAgICAgICB1bmtub3duRm9ybWF0KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmb3JtYXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IFtmbXRUeXBlLCBmb3JtYXQsIGZtdFJlZl0gPSBnZXRGb3JtYXQoZm9ybWF0RGVmKTsKICAgICAgICAgIGlmIChmbXRUeXBlID09PSBydWxlVHlwZSkKICAgICAgICAgICAgY3h0LnBhc3ModmFsaWRDb25kaXRpb24oKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm9ybWF0KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4odW5rbm93bk1zZygpKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHVua25vd25Nc2coKSk7CiAgICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Nc2coKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGB1bmtub3duIGZvcm1hdCAiJHtzY2hlbWEyfSIgaWdub3JlZCBpbiBzY2hlbWEgYXQgcGF0aCAiJHtlcnJTY2hlbWFQYXRofSJgOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBnZXRGb3JtYXQoZm10RGVmKSB7CiAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBmbXREZWYgaW5zdGFuY2VvZiBSZWdFeHAgPyAoMCwgY29kZWdlbl8xLnJlZ2V4cENvZGUpKGZtdERlZikgOiBvcHRzLmNvZGUuZm9ybWF0cyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtvcHRzLmNvZGUuZm9ybWF0c30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHNjaGVtYTIpfWAgOiB2b2lkIDA7CiAgICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgeyBrZXk6IHNjaGVtYTIsIHJlZjogZm10RGVmLCBjb2RlIH0pOwogICAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiA9PSAib2JqZWN0IiAmJiAhKGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCkpIHsKICAgICAgICAgICAgICByZXR1cm4gW2ZtdERlZi50eXBlIHx8ICJzdHJpbmciLCBmbXREZWYudmFsaWRhdGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LnZhbGlkYXRlYF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFsic3RyaW5nIiwgZm10RGVmLCBmbXRdOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gdmFsaWRDb25kaXRpb24oKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm9ybWF0RGVmID09ICJvYmplY3QiICYmICEoZm9ybWF0RGVmIGluc3RhbmNlb2YgUmVnRXhwKSAmJiBmb3JtYXREZWYuYXN5bmMpIHsKICAgICAgICAgICAgICBpZiAoIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIGZvcm1hdCBpbiBzeW5jIHNjaGVtYSIpOwogICAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7Zm10UmVmfSgke2RhdGF9KWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmb3JtYXQgPT0gImZ1bmN0aW9uIiA/ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9KCR7ZGF0YX0pYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9LnRlc3QoJHtkYXRhfSlgOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2luZGV4LmpzCnZhciByZXF1aXJlX2Zvcm1hdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBmb3JtYXRfMSA9IHJlcXVpcmVfZm9ybWF0KCk7CiAgICB2YXIgZm9ybWF0ID0gW2Zvcm1hdF8xLmRlZmF1bHRdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL21ldGFkYXRhLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm1ldGFkYXRhVm9jYWJ1bGFyeSA9IFsKICAgICAgInRpdGxlIiwKICAgICAgImRlc2NyaXB0aW9uIiwKICAgICAgImRlZmF1bHQiLAogICAgICAiZGVwcmVjYXRlZCIsCiAgICAgICJyZWFkT25seSIsCiAgICAgICJ3cml0ZU9ubHkiLAogICAgICAiZXhhbXBsZXMiCiAgICBdOwogICAgZXhwb3J0czIuY29udGVudFZvY2FidWxhcnkgPSBbCiAgICAgICJjb250ZW50TWVkaWFUeXBlIiwKICAgICAgImNvbnRlbnRFbmNvZGluZyIsCiAgICAgICJjb250ZW50U2NoZW1hIgogICAgXTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kcmFmdDcuanMKdmFyIHJlcXVpcmVfZHJhZnQ3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMigpOwogICAgdmFyIHZhbGlkYXRpb25fMSA9IHJlcXVpcmVfdmFsaWRhdGlvbigpOwogICAgdmFyIGFwcGxpY2F0b3JfMSA9IHJlcXVpcmVfYXBwbGljYXRvcigpOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQyKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEoKTsKICAgIHZhciBkcmFmdDdWb2NhYnVsYXJpZXMgPSBbCiAgICAgIGNvcmVfMS5kZWZhdWx0LAogICAgICB2YWxpZGF0aW9uXzEuZGVmYXVsdCwKICAgICAgKDAsIGFwcGxpY2F0b3JfMS5kZWZhdWx0KSgpLAogICAgICBmb3JtYXRfMS5kZWZhdWx0LAogICAgICBtZXRhZGF0YV8xLm1ldGFkYXRhVm9jYWJ1bGFyeSwKICAgICAgbWV0YWRhdGFfMS5jb250ZW50Vm9jYWJ1bGFyeQogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkcmFmdDdWb2NhYnVsYXJpZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZGlzY3JpbWluYXRvci90eXBlcy5qcwp2YXIgcmVxdWlyZV90eXBlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvdHlwZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRpc2NyRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgRGlzY3JFcnJvcjsKICAgIChmdW5jdGlvbihEaXNjckVycm9yMikgewogICAgICBEaXNjckVycm9yMlsiVGFnIl0gPSAidGFnIjsKICAgICAgRGlzY3JFcnJvcjJbIk1hcHBpbmciXSA9ICJtYXBwaW5nIjsKICAgIH0pKERpc2NyRXJyb3IgfHwgKGV4cG9ydHMyLkRpc2NyRXJyb3IgPSBEaXNjckVycm9yID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc2NyaW1pbmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdHlwZXNfMSA9IHJlcXVpcmVfdHlwZXMoKTsKICAgIHZhciBjb21waWxlXzEgPSByZXF1aXJlX2NvbXBpbGUoKTsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWdOYW1lIH0gfSkgPT4gZGlzY3JFcnJvciA9PT0gdHlwZXNfMS5EaXNjckVycm9yLlRhZyA/IGB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgc3RyaW5nYCA6IGB2YWx1ZSBvZiB0YWcgIiR7dGFnTmFtZX0iIG11c3QgYmUgaW4gb25lT2ZgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBkaXNjckVycm9yLCB0YWcsIHRhZ05hbWUgfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtlcnJvcjogJHtkaXNjckVycm9yfSwgdGFnOiAke3RhZ05hbWV9LCB0YWdWYWx1ZTogJHt0YWd9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZGlzY3JpbWluYXRvciIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIHNjaGVtYTogc2NoZW1hMiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb25lT2YgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIWl0Lm9wdHMuZGlzY3JpbWluYXRvcikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBkaXNjcmltaW5hdG9yIG9wdGlvbiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCB0YWdOYW1lID0gc2NoZW1hMi5wcm9wZXJ0eU5hbWU7CiAgICAgICAgaWYgKHR5cGVvZiB0YWdOYW1lICE9ICJzdHJpbmciKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBwcm9wZXJ0eU5hbWUiKTsKICAgICAgICBpZiAoc2NoZW1hMi5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRzY2hlbWE6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICAkaWQ6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICB0aXRsZTogIkNvcmUgc2NoZW1hIG1ldGEtc2NoZW1hIiwKICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICBzY2hlbWFBcnJheTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG1pbkl0ZW1zOiAxLAogICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMiIH0KICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlcjogewogICAgICAgICAgdHlwZTogImludGVnZXIiLAogICAgICAgICAgbWluaW11bTogMAogICAgICAgIH0sCiAgICAgICAgbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDA6IHsKICAgICAgICAgIGFsbE9mOiBbeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sIHsgZGVmYXVsdDogMCB9XQogICAgICAgIH0sCiAgICAgICAgc2ltcGxlVHlwZXM6IHsKICAgICAgICAgIGVudW06IFsiYXJyYXkiLCAiYm9vbGVhbiIsICJpbnRlZ2VyIiwgIm51bGwiLCAibnVtYmVyIiwgIm9iamVjdCIsICJzdHJpbmciXQogICAgICAgIH0sCiAgICAgICAgc3RyaW5nQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgICAgfSwKICAgICAgdHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGlkOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkc2NoZW1hOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaSIKICAgICAgICB9LAogICAgICAgICRyZWY6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgZm9ybWF0OiAidXJpLXJlZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICRjb21tZW50OiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZXNjcmlwdGlvbjogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIGRlZmF1bHQ6IHRydWUsCiAgICAgICAgcmVhZE9ubHk6IHsKICAgICAgICAgIHR5cGU6ICJib29sZWFuIiwKICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBleGFtcGxlczogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICBtdWx0aXBsZU9mOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG1heGltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWluaW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBtYXhMZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkxlbmd0aDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICBwYXR0ZXJuOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInJlZ2V4IgogICAgICAgIH0sCiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGl0ZW1zOiB7CiAgICAgICAgICBhbnlPZjogW3sgJHJlZjogIiMiIH0sIHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2NoZW1hQXJyYXkiIH1dLAogICAgICAgICAgZGVmYXVsdDogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbWF4SXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwIiB9LAogICAgICAgIHVuaXF1ZUl0ZW1zOiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgY29udGFpbnM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgbWF4UHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sCiAgICAgICAgbWluUHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICByZXF1aXJlZDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBkZWZpbml0aW9uczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9LAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgcHJvcGVydHlOYW1lczogeyBmb3JtYXQ6ICJyZWdleCIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsKICAgICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3N0cmluZ0FycmF5IiB9XQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydHlOYW1lczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBjb25zdDogdHJ1ZSwKICAgICAgICBlbnVtOiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICB0eXBlOiB7CiAgICAgICAgICBhbnlPZjogWwogICAgICAgICAgICB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NpbXBsZVR5cGVzIiB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICBmb3JtYXQ6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICBjb250ZW50TWVkaWFUeXBlOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudEVuY29kaW5nOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgaWY6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgdGhlbjogeyAkcmVmOiAiIyIgfSwKICAgICAgICBlbHNlOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGFsbE9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIGFueU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG9uZU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG5vdDogeyAkcmVmOiAiIyIgfQogICAgICB9LAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5NaXNzaW5nUmVmRXJyb3IgPSBleHBvcnRzMi5WYWxpZGF0aW9uRXJyb3IgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gZXhwb3J0czIuQWp2ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZSgpOwogICAgdmFyIGRyYWZ0N18xID0gcmVxdWlyZV9kcmFmdDcoKTsKICAgIHZhciBkaXNjcmltaW5hdG9yXzEgPSByZXF1aXJlX2Rpc2NyaW1pbmF0b3IoKTsKICAgIHZhciBkcmFmdDdNZXRhU2NoZW1hID0gcmVxdWlyZV9qc29uX3NjaGVtYV9kcmFmdF8wNygpOwogICAgdmFyIE1FVEFfU1VQUE9SVF9EQVRBID0gWyIvcHJvcGVydGllcyJdOwogICAgdmFyIE1FVEFfU0NIRU1BX0lEID0gImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIjsKICAgIHZhciBBanYgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5kZWZhdWx0IHsKICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICBzdXBlci5fYWRkVm9jYWJ1bGFyaWVzKCk7CiAgICAgICAgZHJhZnQ3XzEuZGVmYXVsdC5mb3JFYWNoKCh2KSA9PiB0aGlzLmFkZFZvY2FidWxhcnkodikpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHRoaXMuYWRkS2V5d29yZChkaXNjcmltaW5hdG9yXzEuZGVmYXVsdCk7CiAgICAgIH0KICAgICAgX2FkZERlZmF1bHRNZXRhU2NoZW1hKCkgewogICAgICAgIHN1cGVyLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmICghdGhpcy5vcHRzLm1ldGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgbWV0YVNjaGVtYSA9IHRoaXMub3B0cy4kZGF0YSA/IHRoaXMuJGRhdGFNZXRhU2NoZW1hKGRyYWZ0N01ldGFTY2hlbWEsIE1FVEFfU1VQUE9SVF9EQVRBKSA6IGRyYWZ0N01ldGFTY2hlbWE7CiAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIE1FVEFfU0NIRU1BX0lELCBmYWxzZSk7CiAgICAgICAgdGhpcy5yZWZzWyJodHRwOi8vanNvbi1zY2hlbWEub3JnL3NjaGVtYSJdID0gTUVUQV9TQ0hFTUFfSUQ7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHN1cGVyLmRlZmF1bHRNZXRhKCkgfHwgKHRoaXMuZ2V0U2NoZW1hKE1FVEFfU0NIRU1BX0lEKSA/IE1FVEFfU0NIRU1BX0lEIDogdm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFqdiA9IEFqdjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzLkFqdiA9IEFqdjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiS2V5d29yZEN4dCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRlXzEuS2V5d29yZEN4dDsKICAgIH0gfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5OYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkNvZGVHZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuQ29kZUdlbjsKICAgIH0gfSk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWxpZGF0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTWlzc2luZ1JlZkVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9mb3JtYXRzLmpzCnZhciByZXF1aXJlX2Zvcm1hdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIyKSB7CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBEQVRFLmV4ZWMoc3RyMik7CiAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIGNvbnN0IHllYXIgPSArbWF0Y2hlc1sxXTsKICAgICAgY29uc3QgbW9udGggPSArbWF0Y2hlc1syXTsKICAgICAgY29uc3QgZGF5ID0gK21hdGNoZXNbM107CiAgICAgIHJldHVybiBtb250aCA+PSAxICYmIG1vbnRoIDw9IDEyICYmIGRheSA+PSAxICYmIGRheSA8PSAobW9udGggPT09IDIgJiYgaXNMZWFwWWVhcih5ZWFyKSA/IDI5IDogREFZU1ttb250aF0pOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZURhdGUoZDEsIGQyKSB7CiAgICAgIGlmICghKGQxICYmIGQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBpZiAoZDEgPiBkMikKICAgICAgICByZXR1cm4gMTsKICAgICAgaWYgKGQxIDwgZDIpCiAgICAgICAgcmV0dXJuIC0xOwogICAgICByZXR1cm4gMDsKICAgIH0KICAgIHZhciBUSU1FID0gL14oXGRcZCk6KFxkXGQpOihcZFxkKD86XC5cZCspPykoenwoWystXSkoXGRcZCkoPzo6PyhcZFxkKSk/KT8kL2k7CiAgICBmdW5jdGlvbiBnZXRUaW1lKHN0cmljdFRpbWVab25lKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiB0aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cjIpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBociA9ICttYXRjaGVzWzFdOwogICAgICAgIGNvbnN0IG1pbiA9ICttYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHNlYyA9ICttYXRjaGVzWzNdOwogICAgICAgIGNvbnN0IHR6ID0gbWF0Y2hlc1s0XTsKICAgICAgICBjb25zdCB0elNpZ24gPSBtYXRjaGVzWzVdID09PSAiLSIgPyAtMSA6IDE7CiAgICAgICAgY29uc3QgdHpIID0gKyhtYXRjaGVzWzZdIHx8IDApOwogICAgICAgIGNvbnN0IHR6TSA9ICsobWF0Y2hlc1s3XSB8fCAwKTsKICAgICAgICBpZiAodHpIID4gMjMgfHwgdHpNID4gNTkgfHwgc3RyaWN0VGltZVpvbmUgJiYgIXR6KQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmIChociA8PSAyMyAmJiBtaW4gPD0gNTkgJiYgc2VjIDwgNjApCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBjb25zdCB1dGNNaW4gPSBtaW4gLSB0ek0gKiB0elNpZ247CiAgICAgICAgY29uc3QgdXRjSHIgPSBociAtIHR6SCAqIHR6U2lnbiAtICh1dGNNaW4gPCAwID8gMSA6IDApOwogICAgICAgIHJldHVybiAodXRjSHIgPT09IDIzIHx8IHV0Y0hyID09PSAtMSkgJiYgKHV0Y01pbiA9PT0gNTkgfHwgdXRjTWluID09PSAtMSkgJiYgc2VjIDwgNjE7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlVGltZShzMSwgczIpIHsKICAgICAgaWYgKCEoczEgJiYgczIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIGNvbnN0IHQxID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczEpKS52YWx1ZU9mKCk7CiAgICAgIGNvbnN0IHQyID0gKC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgiMjAyMC0wMS0wMVQiICsgczIpKS52YWx1ZU9mKCk7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICByZXR1cm4gdDEgLSB0MjsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVJc29UaW1lKHQxLCB0MikgewogICAgICBpZiAoISh0MSAmJiB0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgYTEgPSBUSU1FLmV4ZWModDEpOwogICAgICBjb25zdCBhMiA9IFRJTUUuZXhlYyh0Mik7CiAgICAgIGlmICghKGExICYmIGEyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB0MSA9IGExWzFdICsgYTFbMl0gKyBhMVszXTsKICAgICAgdDIgPSBhMlsxXSArIGEyWzJdICsgYTJbM107CiAgICAgIGlmICh0MSA+IHQyKQogICAgICAgIHJldHVybiAxOwogICAgICBpZiAodDEgPCB0MikKICAgICAgICByZXR1cm4gLTE7CiAgICAgIHJldHVybiAwOwogICAgfQogICAgdmFyIERBVEVfVElNRV9TRVBBUkFUT1IgPSAvdHxccy9pOwogICAgZnVuY3Rpb24gZ2V0RGF0ZVRpbWUoc3RyaWN0VGltZVpvbmUpIHsKICAgICAgY29uc3QgdGltZSA9IGdldFRpbWUoc3RyaWN0VGltZVpvbmUpOwogICAgICByZXR1cm4gZnVuY3Rpb24gZGF0ZV90aW1lKHN0cjIpIHsKICAgICAgICBjb25zdCBkYXRlVGltZSA9IHN0cjIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIyKSB7CiAgICAgIHJldHVybiBOT1RfVVJJX0ZSQUdNRU5ULnRlc3Qoc3RyMikgJiYgVVJJLnRlc3Qoc3RyMik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIyKSB7CiAgICAgIEJZVEUubGFzdEluZGV4ID0gMDsKICAgICAgcmV0dXJuIEJZVEUudGVzdChzdHIyKTsKICAgIH0KICAgIHZhciBNSU5fSU5UMzIgPSAtKDIgKiogMzEpOwogICAgdmFyIE1BWF9JTlQzMiA9IDIgKiogMzEgLSAxOwogICAgZnVuY3Rpb24gdmFsaWRhdGVJbnQzMih2YWx1ZSkgewogICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSkgJiYgdmFsdWUgPD0gTUFYX0lOVDMyICYmIHZhbHVlID49IE1JTl9JTlQzMjsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50NjQodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpOwogICAgfQogICAgZnVuY3Rpb24gdmFsaWRhdGVOdW1iZXIoKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgdmFyIFpfQU5DSE9SID0gL1teXFxdXFxaLzsKICAgIGZ1bmN0aW9uIHJlZ2V4KHN0cjIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyMikpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAoc3RyMik7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzCnZhciByZXF1aXJlX2xpbWl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9saW1pdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gcmVxdWlyZV9hanYoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBvcHMgPSBjb2RlZ2VuXzEub3BlcmF0b3JzOwogICAgdmFyIEtXRHMgPSB7CiAgICAgIGZvcm1hdE1heGltdW06IHsgb2tTdHI6ICI8PSIsIG9rOiBvcHMuTFRFLCBmYWlsOiBvcHMuR1QgfSwKICAgICAgZm9ybWF0TWluaW11bTogeyBva1N0cjogIj49Iiwgb2s6IG9wcy5HVEUsIGZhaWw6IG9wcy5MVCB9LAogICAgICBmb3JtYXRFeGNsdXNpdmVNYXhpbXVtOiB7IG9rU3RyOiAiPCIsIG9rOiBvcHMuTFQsIGZhaWw6IG9wcy5HVEUgfSwKICAgICAgZm9ybWF0RXhjbHVzaXZlTWluaW11bTogeyBva1N0cjogIj4iLCBvazogb3BzLkdULCBmYWlsOiBvcHMuTFRFIH0KICAgIH07CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYHNob3VsZCBiZSAke0tXRHNba2V5d29yZF0ub2tTdHJ9ICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Y29tcGFyaXNvbjogJHtLV0RzW2tleXdvcmRdLm9rU3RyfSwgbGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbiA9IHsKICAgICAga2V5d29yZDogT2JqZWN0LmtleXMoS1dEcyksCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cywgc2VsZjogc2VsZjIgfSA9IGl0OwogICAgICAgIGlmICghb3B0cy52YWxpZGF0ZUZvcm1hdHMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgZkN4dCA9IG5ldyBhanZfMS5LZXl3b3JkQ3h0KGl0LCBzZWxmMi5SVUxFUy5hbGwuZm9ybWF0LmRlZmluaXRpb24sICJmb3JtYXQiKTsKICAgICAgICBpZiAoZkN4dC4kZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZm10ID0gZ2VuLmNvbnN0KCJmbXQiLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10c31bJHtmQ3h0LnNjaGVtYUNvZGV9XWApOwogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLm9yKSgoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2ZtdH0gIT0gIm9iamVjdCJgLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10fSBpbnN0YW5jZW9mIFJlZ0V4cGAsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7Zm10fS5jb21wYXJlICE9ICJmdW5jdGlvbiJgLCBjb21wYXJlQ29kZShmbXQpKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZkN4dC5zY2hlbWE7CiAgICAgICAgICBjb25zdCBmbXREZWYgPSBzZWxmMi5mb3JtYXRzW2Zvcm1hdF07CiAgICAgICAgICBpZiAoIWZtdERlZiB8fCBmbXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGlmICh0eXBlb2YgZm10RGVmICE9ICJvYmplY3QiIHx8IGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCB8fCB0eXBlb2YgZm10RGVmLmNvbXBhcmUgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCIke2tleXdvcmR9IjogZm9ybWF0ICIke2Zvcm1hdH0iIGRvZXMgbm90IGRlZmluZSAiY29tcGFyZSIgZnVuY3Rpb25gKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICBrZXk6IGZvcm1hdCwKICAgICAgICAgICAgcmVmOiBmbXREZWYsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzID8gKDAsIGNvZGVnZW5fMS5fKWAke29wdHMuY29kZS5mb3JtYXRzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoZm9ybWF0KX1gIDogdm9pZCAwCiAgICAgICAgICB9KTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoY29tcGFyZUNvZGUoZm10KSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNvbXBhcmVDb2RlKGZtdCkgewogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LmNvbXBhcmUoJHtkYXRhfSwgJHtzY2hlbWFDb2RlfSkgJHtLV0RzW2tleXdvcmRdLmZhaWx9IDBgOwogICAgICAgIH0KICAgICAgfSwKICAgICAgZGVwZW5kZW5jaWVzOiBbImZvcm1hdCJdCiAgICB9OwogICAgdmFyIGZvcm1hdExpbWl0UGx1Z2luID0gKGFqdikgPT4gewogICAgICBhanYuYWRkS2V5d29yZChleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24pOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXRMaW1pdFBsdWdpbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0c18xID0gcmVxdWlyZV9mb3JtYXRzKCk7CiAgICB2YXIgbGltaXRfMSA9IHJlcXVpcmVfbGltaXQoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBmdWxsTmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZnVsbEZvcm1hdHMiKTsKICAgIHZhciBmYXN0TmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZmFzdEZvcm1hdHMiKTsKICAgIHZhciBmb3JtYXRzUGx1Z2luID0gKGFqdiwgb3B0cyA9IHsga2V5d29yZHM6IHRydWUgfSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRzKSkgewogICAgICAgIGFkZEZvcm1hdHMoYWp2LCBvcHRzLCBmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lKTsKICAgICAgICByZXR1cm4gYWp2OwogICAgICB9CiAgICAgIGNvbnN0IFtmb3JtYXRzLCBleHBvcnROYW1lXSA9IG9wdHMubW9kZSA9PT0gImZhc3QiID8gW2Zvcm1hdHNfMS5mYXN0Rm9ybWF0cywgZmFzdE5hbWVdIDogW2Zvcm1hdHNfMS5mdWxsRm9ybWF0cywgZnVsbE5hbWVdOwogICAgICBjb25zdCBsaXN0ID0gb3B0cy5mb3JtYXRzIHx8IGZvcm1hdHNfMS5mb3JtYXROYW1lczsKICAgICAgYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZvcm1hdHMsIGV4cG9ydE5hbWUpOwogICAgICBpZiAob3B0cy5rZXl3b3JkcykKICAgICAgICAoMCwgbGltaXRfMS5kZWZhdWx0KShhanYpOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGZvcm1hdHNQbHVnaW4uZ2V0ID0gKG5hbWUsIG1vZGUgPSAiZnVsbCIpID0+IHsKICAgICAgY29uc3QgZm9ybWF0cyA9IG1vZGUgPT09ICJmYXN0IiA/IGZvcm1hdHNfMS5mYXN0Rm9ybWF0cyA6IGZvcm1hdHNfMS5mdWxsRm9ybWF0czsKICAgICAgY29uc3QgZiA9IGZvcm1hdHNbbmFtZV07CiAgICAgIGlmICghZikKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9ybWF0ICIke25hbWV9ImApOwogICAgICByZXR1cm4gZjsKICAgIH07CiAgICBmdW5jdGlvbiBhZGRGb3JtYXRzKGFqdiwgbGlzdCwgZnMsIGV4cG9ydE5hbWUpIHsKICAgICAgdmFyIF9hOwogICAgICB2YXIgX2I7CiAgICAgIChfYSA9IChfYiA9IGFqdi5vcHRzLmNvZGUpLmZvcm1hdHMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IF9iLmZvcm1hdHMgPSAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cyIpLiR7ZXhwb3J0TmFtZX1gOwogICAgICBmb3IgKGNvbnN0IGYgb2YgbGlzdCkKICAgICAgICBhanYuYWRkRm9ybWF0KGYsIGZzW2ZdKTsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gZm9ybWF0c1BsdWdpbjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdHNQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcwp2YXIgcmVxdWlyZV9pc0Z1bmN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNGdW5jdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNGdW5jdGlvbiA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gImZ1bmN0aW9uIjsKICAgIH0KICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMKdmFyIHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUVycm9yQ2xhc3MgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBjcmVhdGVFcnJvckNsYXNzKGNyZWF0ZUltcGwpIHsKICAgICAgdmFyIF9zdXBlciA9IGZ1bmN0aW9uKGluc3RhbmNlKSB7CiAgICAgICAgRXJyb3IuY2FsbChpbnN0YW5jZSk7CiAgICAgICAgaW5zdGFuY2Uuc3RhY2sgPSBuZXcgRXJyb3IoKS5zdGFjazsKICAgICAgfTsKICAgICAgdmFyIGN0b3JGdW5jID0gY3JlYXRlSW1wbChfc3VwZXIpOwogICAgICBjdG9yRnVuYy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CiAgICAgIGN0b3JGdW5jLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGN0b3JGdW5jOwogICAgICByZXR1cm4gY3RvckZ1bmM7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVFcnJvckNsYXNzID0gY3JlYXRlRXJyb3JDbGFzczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzCnZhciByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbnN1YnNjcmlwdGlvbkVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVW5zdWJzY3JpcHRpb25FcnJvckltcGwoZXJyb3JzKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9IGVycm9ycyA/IGVycm9ycy5sZW5ndGggKyAiIGVycm9ycyBvY2N1cnJlZCBkdXJpbmcgdW5zdWJzY3JpcHRpb246XG4iICsgZXJyb3JzLm1hcChmdW5jdGlvbihlcnIsIGkpIHsKICAgICAgICAgIHJldHVybiBpICsgMSArICIpICIgKyBlcnIudG9TdHJpbmcoKTsKICAgICAgICB9KS5qb2luKCJcbiAgIikgOiAiIjsKICAgICAgICB0aGlzLm5hbWUgPSAiVW5zdWJzY3JpcHRpb25FcnJvciI7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcnJSZW1vdmUuanMKdmFyIHJlcXVpcmVfYXJyUmVtb3ZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJyUmVtb3ZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBhcnJSZW1vdmUoYXJyLCBpdGVtKSB7CiAgICAgIGlmIChhcnIpIHsKICAgICAgICB2YXIgaW5kZXggPSBhcnIuaW5kZXhPZihpdGVtKTsKICAgICAgICAwIDw9IGluZGV4ICYmIGFyci5zcGxpY2UoaW5kZXgsIDEpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hcnJSZW1vdmUgPSBhcnJSZW1vdmU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcwp2YXIgcmVxdWlyZV9TdWJzY3JpcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3Vic2NyaXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1N1YnNjcmlwdGlvbiA9IGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFN1YnNjcmlwdGlvbjIoaW5pdGlhbFRlYXJkb3duKSB7CiAgICAgICAgdGhpcy5pbml0aWFsVGVhcmRvd24gPSBpbml0aWFsVGVhcmRvd247CiAgICAgICAgdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgIHRoaXMuX2ZpbmFsaXplcnMgPSBudWxsOwogICAgICB9CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgdmFyIGVycm9yczsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICAgIGlmIChfcGFyZW50YWdlKSB7CiAgICAgICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9wYXJlbnRhZ2VfMSA9IF9fdmFsdWVzKF9wYXJlbnRhZ2UpLCBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCk7ICFfcGFyZW50YWdlXzFfMS5kb25lOyBfcGFyZW50YWdlXzFfMSA9IF9wYXJlbnRhZ2VfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgICAgdmFyIHBhcmVudF8xID0gX3BhcmVudGFnZV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgICAgIHBhcmVudF8xLnJlbW92ZSh0aGlzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgaWYgKF9wYXJlbnRhZ2VfMV8xICYmICFfcGFyZW50YWdlXzFfMS5kb25lICYmIChfYSA9IF9wYXJlbnRhZ2VfMS5yZXR1cm4pKSBfYS5jYWxsKF9wYXJlbnRhZ2VfMSk7CiAgICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9wYXJlbnRhZ2UucmVtb3ZlKHRoaXMpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgaW5pdGlhbEZpbmFsaXplciA9IHRoaXMuaW5pdGlhbFRlYXJkb3duOwogICAgICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGluaXRpYWxGaW5hbGl6ZXIpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaW5pdGlhbEZpbmFsaXplcigpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgZXJyb3JzID0gZSBpbnN0YW5jZW9mIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yID8gZS5lcnJvcnMgOiBbZV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBfZmluYWxpemVycyA9IHRoaXMuX2ZpbmFsaXplcnM7CiAgICAgICAgICBpZiAoX2ZpbmFsaXplcnMpIHsKICAgICAgICAgICAgdGhpcy5fZmluYWxpemVycyA9IG51bGw7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2ZpbmFsaXplcnNfMSA9IF9fdmFsdWVzKF9maW5hbGl6ZXJzKSwgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCk7ICFfZmluYWxpemVyc18xXzEuZG9uZTsgX2ZpbmFsaXplcnNfMV8xID0gX2ZpbmFsaXplcnNfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBmaW5hbGl6ZXIgPSBfZmluYWxpemVyc18xXzEudmFsdWU7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBleGVjRmluYWxpemVyKGZpbmFsaXplcik7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgZXJyb3JzID0gZXJyb3JzICE9PSBudWxsICYmIGVycm9ycyAhPT0gdm9pZCAwID8gZXJyb3JzIDogW107CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcikgewogICAgICAgICAgICAgICAgICAgIGVycm9ycyA9IF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGVycm9ycykpLCBfX3JlYWQoZXJyLmVycm9ycykpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKGVycik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9maW5hbGl6ZXJzXzFfMSAmJiAhX2ZpbmFsaXplcnNfMV8xLmRvbmUgJiYgKF9iID0gX2ZpbmFsaXplcnNfMS5yZXR1cm4pKSBfYi5jYWxsKF9maW5hbGl6ZXJzXzEpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8yKSB0aHJvdyBlXzIuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXJyb3JzKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcihlcnJvcnMpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHRlYXJkb3duICYmIHRlYXJkb3duICE9PSB0aGlzKSB7CiAgICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgICAgZXhlY0ZpbmFsaXplcih0ZWFyZG93bik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGVhcmRvd24gaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24yKSB7CiAgICAgICAgICAgICAgaWYgKHRlYXJkb3duLmNsb3NlZCB8fCB0ZWFyZG93bi5faGFzUGFyZW50KHRoaXMpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRlYXJkb3duLl9hZGRQYXJlbnQodGhpcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgKHRoaXMuX2ZpbmFsaXplcnMgPSAoX2EgPSB0aGlzLl9maW5hbGl6ZXJzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSkucHVzaCh0ZWFyZG93bik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5faGFzUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgcmV0dXJuIF9wYXJlbnRhZ2UgPT09IHBhcmVudCB8fCBBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpICYmIF9wYXJlbnRhZ2UuaW5jbHVkZXMocGFyZW50KTsKICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX2FkZFBhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkgPyAoX3BhcmVudGFnZS5wdXNoKHBhcmVudCksIF9wYXJlbnRhZ2UpIDogX3BhcmVudGFnZSA/IFtfcGFyZW50YWdlLCBwYXJlbnRdIDogcGFyZW50OwogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5fcmVtb3ZlUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgaWYgKF9wYXJlbnRhZ2UgPT09IHBhcmVudCkgewogICAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkpIHsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShfcGFyZW50YWdlLCBwYXJlbnQpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24odGVhcmRvd24pIHsKICAgICAgICB2YXIgX2ZpbmFsaXplcnMgPSB0aGlzLl9maW5hbGl6ZXJzOwogICAgICAgIF9maW5hbGl6ZXJzICYmIGFyclJlbW92ZV8xLmFyclJlbW92ZShfZmluYWxpemVycywgdGVhcmRvd24pOwogICAgICAgIGlmICh0ZWFyZG93biBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjIpIHsKICAgICAgICAgIHRlYXJkb3duLl9yZW1vdmVQYXJlbnQodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLkVNUFRZID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGVtcHR5ID0gbmV3IFN1YnNjcmlwdGlvbjIoKTsKICAgICAgICBlbXB0eS5jbG9zZWQgPSB0cnVlOwogICAgICAgIHJldHVybiBlbXB0eTsKICAgICAgfSgpOwogICAgICByZXR1cm4gU3Vic2NyaXB0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbjsKICAgIGV4cG9ydHMyLkVNUFRZX1NVQlNDUklQVElPTiA9IFN1YnNjcmlwdGlvbi5FTVBUWTsKICAgIGZ1bmN0aW9uIGlzU3Vic2NyaXB0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbiB8fCB2YWx1ZSAmJiAiY2xvc2VkIiBpbiB2YWx1ZSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5yZW1vdmUpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmFkZCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUudW5zdWJzY3JpYmUpOwogICAgfQogICAgZXhwb3J0czIuaXNTdWJzY3JpcHRpb24gPSBpc1N1YnNjcmlwdGlvbjsKICAgIGZ1bmN0aW9uIGV4ZWNGaW5hbGl6ZXIoZmluYWxpemVyKSB7CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihmaW5hbGl6ZXIpKSB7CiAgICAgICAgZmluYWxpemVyKCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmluYWxpemVyLnVuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvY29uZmlnLmpzCnZhciByZXF1aXJlX2NvbmZpZyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9jb25maWcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHsKICAgICAgb25VbmhhbmRsZWRFcnJvcjogbnVsbCwKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uOiBudWxsLAogICAgICBQcm9taXNlOiB2b2lkIDAsCiAgICAgIHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6IGZhbHNlLAogICAgICB1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzCnZhciByZXF1aXJlX3RpbWVvdXRQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvdGltZW91dFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB2b2lkIDA7CiAgICBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIgPSB7CiAgICAgIHNldFRpbWVvdXQ6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgaWYgKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5zZXRUaW1lb3V0KSB7CiAgICAgICAgICByZXR1cm4gZGVsZWdhdGUuc2V0VGltZW91dC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0VGltZW91dC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgY2xlYXJUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGUpIHsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi50aW1lb3V0UHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFyVGltZW91dCkgfHwgY2xlYXJUaW1lb3V0KShoYW5kbGUpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzCnZhciByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcmVwb3J0VW5oYW5kbGVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvbmZpZ18xID0gcmVxdWlyZV9jb25maWcoKTsKICAgIHZhciB0aW1lb3V0UHJvdmlkZXJfMSA9IHJlcXVpcmVfdGltZW91dFByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiByZXBvcnRVbmhhbmRsZWRFcnJvcihlcnIpIHsKICAgICAgdGltZW91dFByb3ZpZGVyXzEudGltZW91dFByb3ZpZGVyLnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIG9uVW5oYW5kbGVkRXJyb3IgPSBjb25maWdfMS5jb25maWcub25VbmhhbmRsZWRFcnJvcjsKICAgICAgICBpZiAob25VbmhhbmRsZWRFcnJvcikgewogICAgICAgICAgb25VbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBlcnI7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydFVuaGFuZGxlZEVycm9yID0gcmVwb3J0VW5oYW5kbGVkRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcwp2YXIgcmVxdWlyZV9ub29wID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm9vcCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIG5vb3AoKSB7CiAgICB9CiAgICBleHBvcnRzMi5ub29wID0gbm9vcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbkZhY3RvcmllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb25GYWN0b3JpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBleHBvcnRzMi5lcnJvck5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLkNPTVBMRVRFX05PVElGSUNBVElPTiA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY3JlYXRlTm90aWZpY2F0aW9uKCJDIiwgdm9pZCAwLCB2b2lkIDApOwogICAgfSgpOwogICAgZnVuY3Rpb24gZXJyb3JOb3RpZmljYXRpb24oZXJyb3IpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiRSIsIHZvaWQgMCwgZXJyb3IpOwogICAgfQogICAgZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBlcnJvck5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG5leHROb3RpZmljYXRpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiTiIsIHZhbHVlLCB2b2lkIDApOwogICAgfQogICAgZXhwb3J0czIubmV4dE5vdGlmaWNhdGlvbiA9IG5leHROb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oa2luZCwgdmFsdWUsIGVycm9yKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAga2luZCwKICAgICAgICB2YWx1ZSwKICAgICAgICBlcnJvcgogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlTm90aWZpY2F0aW9uID0gY3JlYXRlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcwp2YXIgcmVxdWlyZV9lcnJvckNvbnRleHQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9lcnJvckNvbnRleHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhcHR1cmVFcnJvciA9IGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IHZvaWQgMDsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgY29udGV4dCA9IG51bGw7CiAgICBmdW5jdGlvbiBlcnJvckNvbnRleHQoY2IpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKSB7CiAgICAgICAgdmFyIGlzUm9vdCA9ICFjb250ZXh0OwogICAgICAgIGlmIChpc1Jvb3QpIHsKICAgICAgICAgIGNvbnRleHQgPSB7IGVycm9yVGhyb3duOiBmYWxzZSwgZXJyb3I6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgY2IoKTsKICAgICAgICBpZiAoaXNSb290KSB7CiAgICAgICAgICB2YXIgX2EgPSBjb250ZXh0LCBlcnJvclRocm93biA9IF9hLmVycm9yVGhyb3duLCBlcnJvciA9IF9hLmVycm9yOwogICAgICAgICAgY29udGV4dCA9IG51bGw7CiAgICAgICAgICBpZiAoZXJyb3JUaHJvd24pIHsKICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGNiKCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmVycm9yQ29udGV4dCA9IGVycm9yQ29udGV4dDsKICAgIGZ1bmN0aW9uIGNhcHR1cmVFcnJvcihlcnIpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nICYmIGNvbnRleHQpIHsKICAgICAgICBjb250ZXh0LmVycm9yVGhyb3duID0gdHJ1ZTsKICAgICAgICBjb250ZXh0LmVycm9yID0gZXJyOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jYXB0dXJlRXJyb3IgPSBjYXB0dXJlRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVNUFRZX09CU0VSVkVSID0gZXhwb3J0czIuU2FmZVN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgcmVwb3J0VW5oYW5kbGVkRXJyb3JfMSA9IHJlcXVpcmVfcmVwb3J0VW5oYW5kbGVkRXJyb3IoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBOb3RpZmljYXRpb25GYWN0b3JpZXNfMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3Vic2NyaWJlcjIoZGVzdGluYXRpb24pIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLmlzU3RvcHBlZCA9IGZhbHNlOwogICAgICAgIGlmIChkZXN0aW5hdGlvbikgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjsKICAgICAgICAgIGlmIChTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbihkZXN0aW5hdGlvbikpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uYWRkKF90aGlzKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFN1YnNjcmliZXIyLmNyZWF0ZSA9IGZ1bmN0aW9uKG5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHJldHVybiBuZXcgU2FmZVN1YnNjcmliZXIobmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5uZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX25leHQodmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLmVycm9yTm90aWZpY2F0aW9uKGVyciksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLkNPTVBMRVRFX05PVElGSUNBVElPTiwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2NvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbnVsbDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fbmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5uZXh0KHZhbHVlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLl9lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5TdWJzY3JpYmVyID0gU3Vic2NyaWJlcjsKICAgIHZhciBfYmluZCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kOwogICAgZnVuY3Rpb24gYmluZChmbiwgdGhpc0FyZykgewogICAgICByZXR1cm4gX2JpbmQuY2FsbChmbiwgdGhpc0FyZyk7CiAgICB9CiAgICB2YXIgQ29uc3VtZXJPYnNlcnZlciA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBDb25zdW1lck9ic2VydmVyMihwYXJ0aWFsT2JzZXJ2ZXIpIHsKICAgICAgICB0aGlzLnBhcnRpYWxPYnNlcnZlciA9IHBhcnRpYWxPYnNlcnZlcjsKICAgICAgfQogICAgICBDb25zdW1lck9ic2VydmVyMi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIubmV4dCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5lcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIENvbnN1bWVyT2JzZXJ2ZXIyOwogICAgfSgpOwogICAgdmFyIFNhZmVTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTYWZlU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFNhZmVTdWJzY3JpYmVyMihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICB2YXIgcGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgIW9ic2VydmVyT3JOZXh0KSB7CiAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSB7CiAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0ICE9PSBudWxsICYmIG9ic2VydmVyT3JOZXh0ICE9PSB2b2lkIDAgPyBvYnNlcnZlck9yTmV4dCA6IHZvaWQgMCwKICAgICAgICAgICAgZXJyb3I6IGVycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6IHZvaWQgMCwKICAgICAgICAgICAgY29tcGxldGU6IGNvbXBsZXRlICE9PSBudWxsICYmIGNvbXBsZXRlICE9PSB2b2lkIDAgPyBjb21wbGV0ZSA6IHZvaWQgMAogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIGNvbnRleHRfMTsKICAgICAgICAgIGlmIChfdGhpcyAmJiBjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZE5leHRDb250ZXh0KSB7CiAgICAgICAgICAgIGNvbnRleHRfMSA9IE9iamVjdC5jcmVhdGUob2JzZXJ2ZXJPck5leHQpOwogICAgICAgICAgICBjb250ZXh0XzEudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0Lm5leHQgJiYgYmluZChvYnNlcnZlck9yTmV4dC5uZXh0LCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGVycm9yOiBvYnNlcnZlck9yTmV4dC5lcnJvciAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmVycm9yLCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGNvbXBsZXRlOiBvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmNvbXBsZXRlLCBjb250ZXh0XzEpCiAgICAgICAgICAgIH07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSBvYnNlcnZlck9yTmV4dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBuZXcgQ29uc3VtZXJPYnNlcnZlcihwYXJ0aWFsT2JzZXJ2ZXIpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICByZXR1cm4gU2FmZVN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gU2FmZVN1YnNjcmliZXI7CiAgICBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnJvcikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICBlcnJvckNvbnRleHRfMS5jYXB0dXJlRXJyb3IoZXJyb3IpOwogICAgICB9IGVsc2UgewogICAgICAgIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0RXJyb3JIYW5kbGVyKGVycikgewogICAgICB0aHJvdyBlcnI7CiAgICB9CiAgICBmdW5jdGlvbiBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcikgewogICAgICB2YXIgb25TdG9wcGVkTm90aWZpY2F0aW9uID0gY29uZmlnXzEuY29uZmlnLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjsKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uICYmIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBvblN0b3BwZWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IHsKICAgICAgY2xvc2VkOiB0cnVlLAogICAgICBuZXh0OiBub29wXzEubm9vcCwKICAgICAgZXJyb3I6IGRlZmF1bHRFcnJvckhhbmRsZXIsCiAgICAgIGNvbXBsZXRlOiBub29wXzEubm9vcAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfb2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvb2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLm9ic2VydmFibGUgfHwgIkBAb2JzZXJ2YWJsZSI7CiAgICB9KCk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMKdmFyIHJlcXVpcmVfaWRlbnRpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pZGVudGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWRlbnRpdHkgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpZGVudGl0eSh4KSB7CiAgICAgIHJldHVybiB4OwogICAgfQogICAgZXhwb3J0czIuaWRlbnRpdHkgPSBpZGVudGl0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzCnZhciByZXF1aXJlX3BpcGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5waXBlRnJvbUFycmF5ID0gZXhwb3J0czIucGlwZSA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcGlwZSgpIHsKICAgICAgdmFyIGZucyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGZuc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBwaXBlRnJvbUFycmF5KGZucyk7CiAgICB9CiAgICBleHBvcnRzMi5waXBlID0gcGlwZTsKICAgIGZ1bmN0aW9uIHBpcGVGcm9tQXJyYXkoZm5zKSB7CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgaWYgKGZucy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZm5zWzBdOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBwaXBlZChpbnB1dCkgewogICAgICAgIHJldHVybiBmbnMucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGZuKSB7CiAgICAgICAgICByZXR1cm4gZm4ocHJldik7CiAgICAgICAgfSwgaW5wdXQpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IHBpcGVGcm9tQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9PYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIHZhciBwaXBlXzEgPSByZXF1aXJlX3BpcGUoKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXJyb3JDb250ZXh0XzEgPSByZXF1aXJlX2Vycm9yQ29udGV4dCgpOwogICAgdmFyIE9ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKSB7CiAgICAgICAgaWYgKHN1YnNjcmliZSkgewogICAgICAgICAgdGhpcy5fc3Vic2NyaWJlID0gc3Vic2NyaWJlOwogICAgICAgIH0KICAgICAgfQogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUubGlmdCA9IGZ1bmN0aW9uKG9wZXJhdG9yKSB7CiAgICAgICAgdmFyIG9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZTIoKTsKICAgICAgICBvYnNlcnZhYmxlLnNvdXJjZSA9IHRoaXM7CiAgICAgICAgb2JzZXJ2YWJsZS5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24ob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBpc1N1YnNjcmliZXIob2JzZXJ2ZXJPck5leHQpID8gb2JzZXJ2ZXJPck5leHQgOiBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYSA9IF90aGlzLCBvcGVyYXRvciA9IF9hLm9wZXJhdG9yLCBzb3VyY2UgPSBfYS5zb3VyY2U7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChvcGVyYXRvciA/IG9wZXJhdG9yLmNhbGwoc3Vic2NyaWJlciwgc291cmNlKSA6IHNvdXJjZSA/IF90aGlzLl9zdWJzY3JpYmUoc3Vic2NyaWJlcikgOiBfdGhpcy5fdHJ5U3Vic2NyaWJlKHN1YnNjcmliZXIpKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlcjsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzaW5rKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHJldHVybiB0aGlzLl9zdWJzY3JpYmUoc2luayk7CiAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICBzaW5rLmVycm9yKGVycik7CiAgICAgICAgfQogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUuZm9yRWFjaCA9IGZ1bmN0aW9uKG5leHQsIHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICAgIGNvbXBsZXRlOiByZXNvbHZlCiAgICAgICAgICB9KTsKICAgICAgICAgIF90aGlzLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHJldHVybiAoX2EgPSB0aGlzLnNvdXJjZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUucGlwZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvcGVyYXRpb25zID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIG9wZXJhdGlvbnNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBpcGVfMS5waXBlRnJvbUFycmF5KG9wZXJhdGlvbnMpKHRoaXMpOwogICAgICB9OwogICAgICBPYnNlcnZhYmxlMi5wcm90b3R5cGUudG9Qcm9taXNlID0gZnVuY3Rpb24ocHJvbWlzZUN0b3IpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHByb21pc2VDdG9yID0gZ2V0UHJvbWlzZUN0b3IocHJvbWlzZUN0b3IpOwogICAgICAgIHJldHVybiBuZXcgcHJvbWlzZUN0b3IoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoZnVuY3Rpb24oeCkgewogICAgICAgICAgICByZXR1cm4gdmFsdWUgPSB4OwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcmVzb2x2ZSh2YWx1ZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIuY3JlYXRlID0gZnVuY3Rpb24oc3Vic2NyaWJlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlMihzdWJzY3JpYmUpOwogICAgICB9OwogICAgICByZXR1cm4gT2JzZXJ2YWJsZTI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5PYnNlcnZhYmxlID0gT2JzZXJ2YWJsZTsKICAgIGZ1bmN0aW9uIGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmV0dXJuIChfYSA9IHByb21pc2VDdG9yICE9PSBudWxsICYmIHByb21pc2VDdG9yICE9PSB2b2lkIDAgPyBwcm9taXNlQ3RvciA6IGNvbmZpZ18xLmNvbmZpZy5Qcm9taXNlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBQcm9taXNlOwogICAgfQogICAgZnVuY3Rpb24gaXNPYnNlcnZlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUubmV4dCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuZXJyb3IpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmNvbXBsZXRlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU3Vic2NyaWJlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgdmFsdWUgaW5zdGFuY2VvZiBTdWJzY3JpYmVyXzEuU3Vic2NyaWJlciB8fCBpc09ic2VydmVyKHZhbHVlKSAmJiBTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbih2YWx1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcwp2YXIgcmVxdWlyZV9saWZ0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub3BlcmF0ZSA9IGV4cG9ydHMyLmhhc0xpZnQgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBoYXNMaWZ0KHNvdXJjZSkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc291cmNlID09PSBudWxsIHx8IHNvdXJjZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlLmxpZnQpOwogICAgfQogICAgZXhwb3J0czIuaGFzTGlmdCA9IGhhc0xpZnQ7CiAgICBmdW5jdGlvbiBvcGVyYXRlKGluaXQpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIGlmIChoYXNMaWZ0KHNvdXJjZSkpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UubGlmdChmdW5jdGlvbihsaWZ0ZWRTb3VyY2UpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICByZXR1cm4gaW5pdChsaWZ0ZWRTb3VyY2UsIHRoaXMpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICB0aGlzLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmFibGUgdG8gbGlmdCB1bmtub3duIE9ic2VydmFibGUgdHlwZSIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub3BlcmF0ZSA9IG9wZXJhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMKdmFyIHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpIHsKICAgICAgcmV0dXJuIG5ldyBPcGVyYXRvclN1YnNjcmliZXIoZGVzdGluYXRpb24sIG9uTmV4dCwgb25Db21wbGV0ZSwgb25FcnJvciwgb25GaW5hbGl6ZSk7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIgPSBjcmVhdGVPcGVyYXRvclN1YnNjcmliZXI7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhPcGVyYXRvclN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBPcGVyYXRvclN1YnNjcmliZXIyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUsIHNob3VsZFVuc3Vic2NyaWJlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgZGVzdGluYXRpb24pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMub25GaW5hbGl6ZSA9IG9uRmluYWxpemU7CiAgICAgICAgX3RoaXMuc2hvdWxkVW5zdWJzY3JpYmUgPSBzaG91bGRVbnN1YnNjcmliZTsKICAgICAgICBfdGhpcy5fbmV4dCA9IG9uTmV4dCA/IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBvbk5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX25leHQ7CiAgICAgICAgX3RoaXMuX2Vycm9yID0gb25FcnJvciA/IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25FcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyMikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIyKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9IDogX3N1cGVyLnByb3RvdHlwZS5fZXJyb3I7CiAgICAgICAgX3RoaXMuX2NvbXBsZXRlID0gb25Db21wbGV0ZSA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25Db21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2NvbXBsZXRlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPcGVyYXRvclN1YnNjcmliZXIyLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmUgfHwgdGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKSB7CiAgICAgICAgICB2YXIgY2xvc2VkXzEgPSB0aGlzLmNsb3NlZDsKICAgICAgICAgIF9zdXBlci5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKTsKICAgICAgICAgICFjbG9zZWRfMSAmJiAoKF9hID0gdGhpcy5vbkZpbmFsaXplKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzKSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gT3BlcmF0b3JTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIpOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVmQ291bnQuanMKdmFyIHJlcXVpcmVfcmVmQ291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZkNvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWZDb3VudCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiByZWZDb3VudCgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBzb3VyY2UuX3JlZkNvdW50Kys7CiAgICAgICAgdmFyIHJlZkNvdW50ZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIXNvdXJjZSB8fCBzb3VyY2UuX3JlZkNvdW50IDw9IDAgfHwgMCA8IC0tc291cmNlLl9yZWZDb3VudCkgewogICAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgdmFyIHNoYXJlZENvbm5lY3Rpb24gPSBzb3VyY2UuX2Nvbm5lY3Rpb247CiAgICAgICAgICB2YXIgY29ubiA9IGNvbm5lY3Rpb247CiAgICAgICAgICBjb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgIGlmIChzaGFyZWRDb25uZWN0aW9uICYmICghY29ubiB8fCBzaGFyZWRDb25uZWN0aW9uID09PSBjb25uKSkgewogICAgICAgICAgICBzaGFyZWRDb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShyZWZDb3VudGVyKTsKICAgICAgICBpZiAoIXJlZkNvdW50ZXIuY2xvc2VkKSB7CiAgICAgICAgICBjb25uZWN0aW9uID0gc291cmNlLmNvbm5lY3QoKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVmQ291bnQgPSByZWZDb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvQ29ubmVjdGFibGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhDb25uZWN0YWJsZU9ic2VydmFibGUyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBDb25uZWN0YWJsZU9ic2VydmFibGUyKHNvdXJjZSwgc3ViamVjdEZhY3RvcnkpIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICBfdGhpcy5zdWJqZWN0RmFjdG9yeSA9IHN1YmplY3RGYWN0b3J5OwogICAgICAgIF90aGlzLl9zdWJqZWN0ID0gbnVsbDsKICAgICAgICBfdGhpcy5fcmVmQ291bnQgPSAwOwogICAgICAgIF90aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBpZiAobGlmdF8xLmhhc0xpZnQoc291cmNlKSkgewogICAgICAgICAgX3RoaXMubGlmdCA9IHNvdXJjZS5saWZ0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KCkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5nZXRTdWJqZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSB0aGlzLl9zdWJqZWN0OwogICAgICAgIGlmICghc3ViamVjdCB8fCBzdWJqZWN0LmlzU3RvcHBlZCkgewogICAgICAgICAgdGhpcy5fc3ViamVjdCA9IHRoaXMuc3ViamVjdEZhY3RvcnkoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N1YmplY3Q7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLl90ZWFyZG93biA9IGZ1bmN0aW9uKCkgewogICAgICAgIHRoaXMuX3JlZkNvdW50ID0gMDsKICAgICAgICB2YXIgX2Nvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIHRoaXMuX3N1YmplY3QgPSB0aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICBfY29ubmVjdGlvbiA9PT0gbnVsbCB8fCBfY29ubmVjdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Nvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uOwogICAgICAgIGlmICghY29ubmVjdGlvbikgewogICAgICAgICAgY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgc3ViamVjdF8xID0gdGhpcy5nZXRTdWJqZWN0KCk7CiAgICAgICAgICBjb25uZWN0aW9uLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YmplY3RfMSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICAgIHN1YmplY3RfMS5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgICBzdWJqZWN0XzEuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICB9KSkpOwogICAgICAgICAgaWYgKGNvbm5lY3Rpb24uY2xvc2VkKSB7CiAgICAgICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgICAgICBjb25uZWN0aW9uID0gU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY29ubmVjdGlvbjsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUucmVmQ291bnQgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudCgpKHRoaXMpOwogICAgICB9OwogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlMjsKICAgIH0oT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpOwogICAgZXhwb3J0czIuQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuZGVsZWdhdGUgfHwgcGVyZm9ybWFuY2UpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIgPSB7CiAgICAgIHNjaGVkdWxlOiBmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgIHZhciByZXF1ZXN0ID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lOwogICAgICAgIHZhciBjYW5jZWwgPSBjYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSkgewogICAgICAgICAgcmVxdWVzdCA9IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICAgIGNhbmNlbCA9IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lOwogICAgICAgIH0KICAgICAgICB2YXIgaGFuZGxlID0gcmVxdWVzdChmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXAyKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBjYW5jZWwgPT09IG51bGwgfHwgY2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjYW5jZWwoaGFuZGxlKTsKICAgICAgICB9KTsKICAgICAgfSwKICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnJlcXVlc3RBbmltYXRpb25GcmFtZSkgfHwgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjYW5jZWxBbmltYXRpb25GcmFtZTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZSkgfHwgY2FuY2VsQW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZG9tL2FuaW1hdGlvbkZyYW1lcy5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXModGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcFByb3ZpZGVyID8gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSh0aW1lc3RhbXBQcm92aWRlcikgOiBERUZBVUxUX0FOSU1BVElPTl9GUkFNRVM7CiAgICB9CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSBhbmltYXRpb25GcmFtZXM7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcm92aWRlciA9IHRpbWVzdGFtcFByb3ZpZGVyIHx8IHBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXJfMS5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIHZhciBzdGFydCA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgIHZhciBpZCA9IDA7CiAgICAgICAgdmFyIHJ1biA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBpZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbih0aW1lc3RhbXAyKSB7CiAgICAgICAgICAgICAgaWQgPSAwOwogICAgICAgICAgICAgIHZhciBub3cgPSBwcm92aWRlci5ub3coKTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoewogICAgICAgICAgICAgICAgdGltZXN0YW1wOiB0aW1lc3RhbXBQcm92aWRlciA/IG5vdyA6IHRpbWVzdGFtcDIsCiAgICAgICAgICAgICAgICBlbGFwc2VkOiBub3cgLSBzdGFydAogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJ1bigpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJ1bigpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpZCkgewogICAgICAgICAgICBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5jYW5jZWxBbmltYXRpb25GcmFtZShpZCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICB2YXIgREVGQVVMVF9BTklNQVRJT05fRlJBTUVTID0gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE9iamVjdFVuc3Vic2NyaWJlZEVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk9iamVjdFVuc3Vic2NyaWJlZEVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAib2JqZWN0IHVuc3Vic2NyaWJlZCI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9TdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMKdmFyIHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhCZWhhdmlvclN1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBCZWhhdmlvclN1YmplY3QyKF92YWx1ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gX3ZhbHVlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUsICJ2YWx1ZSIsIHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9uID0gX3N1cGVyLnByb3RvdHlwZS5fc3Vic2NyaWJlLmNhbGwodGhpcywgc3Vic2NyaWJlcik7CiAgICAgICAgIXN1YnNjcmlwdGlvbi5jbG9zZWQgJiYgc3Vic2NyaWJlci5uZXh0KHRoaXMuX3ZhbHVlKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBCZWhhdmlvclN1YmplY3QyLnByb3RvdHlwZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGhhc0Vycm9yID0gX2EuaGFzRXJyb3IsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIF92YWx1ZSA9IF9hLl92YWx1ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHRocm93IHRocm93bkVycm9yOwogICAgICAgIH0KICAgICAgICB0aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgcmV0dXJuIF92YWx1ZTsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcywgdGhpcy5fdmFsdWUgPSB2YWx1ZSk7CiAgICAgIH07CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3QyOwogICAgfShTdWJqZWN0XzEuU3ViamVjdCk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBCZWhhdmlvclN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlci5kZWxlZ2F0ZSB8fCBEYXRlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdC5qcwp2YXIgcmVxdWlyZV9SZXBsYXlTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9Bc3luY1N1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBBc3luY1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jU3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gbnVsbDsKICAgICAgICBfdGhpcy5faGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBfdGhpcy5faXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgdGhyb3duRXJyb3IgPSBfYS50aHJvd25FcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmIChoYXNFcnJvcikgewogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcih0aHJvd25FcnJvcik7CiAgICAgICAgfSBlbHNlIGlmIChpc1N0b3BwZWQgfHwgX2lzQ29tcGxldGUpIHsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLm5leHQoX3ZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICghdGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICB0aGlzLl9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIF9oYXNWYWx1ZSA9IF9hLl9oYXNWYWx1ZSwgX3ZhbHVlID0gX2EuX3ZhbHVlLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmICghX2lzQ29tcGxldGUpIHsKICAgICAgICAgIHRoaXMuX2lzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgX2hhc1ZhbHVlICYmIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIF92YWx1ZSk7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQXN5bmNTdWJqZWN0ID0gQXN5bmNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHJldHVybiBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIHJldHVybiBBY3Rpb24yOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuQWN0aW9uID0gQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW50ZXJ2YWxQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY0FjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc3luY0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQWN0aW9uXzEgPSByZXF1aXJlX0FjdGlvbigpOwogICAgdmFyIGludGVydmFsUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBBc3luY0FjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXN5bmNBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY0FjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHZhciBpZCA9IHRoaXMuaWQ7CiAgICAgICAgdmFyIHNjaGVkdWxlciA9IHRoaXMuc2NoZWR1bGVyOwogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IHRydWU7CiAgICAgICAgdGhpcy5kZWxheSA9IGRlbGF5OwogICAgICAgIHRoaXMuaWQgPSAoX2EgPSB0aGlzLmlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlcXVlc3RBc3luY0lkKHNjaGVkdWxlciwgdGhpcy5pZCwgZGVsYXkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBfaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLnNldEludGVydmFsKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdGhpcyksIGRlbGF5KTsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKF9zY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsICYmIHRoaXMuZGVsYXkgPT09IGRlbGF5ICYmIHRoaXMucGVuZGluZyA9PT0gZmFsc2UpIHsKICAgICAgICAgIHJldHVybiBpZDsKICAgICAgICB9CiAgICAgICAgaWYgKGlkICE9IG51bGwpIHsKICAgICAgICAgIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLmNsZWFySW50ZXJ2YWwoaWQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yID0gdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgcmV0dXJuIGVycm9yOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nID09PSBmYWxzZSAmJiB0aGlzLmlkICE9IG51bGwpIHsKICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHRoaXMuc2NoZWR1bGVyLCB0aGlzLmlkLCBudWxsKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgX2RlbGF5KSB7CiAgICAgICAgdmFyIGVycm9yZWQgPSBmYWxzZTsKICAgICAgICB2YXIgZXJyb3JWYWx1ZTsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy53b3JrKHN0YXRlKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBlcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgIGVycm9yVmFsdWUgPSBlID8gZSA6IG5ldyBFcnJvcigiU2NoZWR1bGVkIGFjdGlvbiB0aHJldyBmYWxzeSBlcnJvciIpOwogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3JlZCkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmV0dXJuIGVycm9yVmFsdWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdmFyIF9hID0gdGhpcywgaWQgPSBfYS5pZCwgc2NoZWR1bGVyID0gX2Euc2NoZWR1bGVyOwogICAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICAgIHRoaXMud29yayA9IHRoaXMuc3RhdGUgPSB0aGlzLnNjaGVkdWxlciA9IG51bGw7CiAgICAgICAgICB0aGlzLnBlbmRpbmcgPSBmYWxzZTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShhY3Rpb25zLCB0aGlzKTsKICAgICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHNjaGVkdWxlciwgaWQsIG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5kZWxheSA9IG51bGw7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNBY3Rpb24yOwogICAgfShBY3Rpb25fMS5BY3Rpb24pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSBBc3luY0FjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvSW1tZWRpYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSBleHBvcnRzMi5JbW1lZGlhdGUgPSB2b2lkIDA7CiAgICB2YXIgbmV4dEhhbmRsZSA9IDE7CiAgICB2YXIgcmVzb2x2ZWQ7CiAgICB2YXIgYWN0aXZlSGFuZGxlcyA9IHt9OwogICAgZnVuY3Rpb24gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgewogICAgICBpZiAoaGFuZGxlIGluIGFjdGl2ZUhhbmRsZXMpIHsKICAgICAgICBkZWxldGUgYWN0aXZlSGFuZGxlc1toYW5kbGVdOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLkltbWVkaWF0ZSA9IHsKICAgICAgc2V0SW1tZWRpYXRlOiBmdW5jdGlvbihjYikgewogICAgICAgIHZhciBoYW5kbGUgPSBuZXh0SGFuZGxlKys7CiAgICAgICAgYWN0aXZlSGFuZGxlc1toYW5kbGVdID0gdHJ1ZTsKICAgICAgICBpZiAoIXJlc29sdmVkKSB7CiAgICAgICAgICByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIH0KICAgICAgICByZXNvbHZlZC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpICYmIGNiKCk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGhhbmRsZTsKICAgICAgfSwKICAgICAgY2xlYXJJbW1lZGlhdGU6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGVzdFRvb2xzID0gewogICAgICBwZW5kaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoYWN0aXZlSGFuZGxlcykubGVuZ3RoOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW1tZWRpYXRlUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMKdmFyIHJlcXVpcmVfQXNhcEFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgaW1tZWRpYXRlUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIoKTsKICAgIHZhciBBc2FwQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXNhcEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT09IG51bGwgJiYgZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgc2NoZWR1bGVyLmFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLl9zY2hlZHVsZWQgfHwgKHNjaGVkdWxlci5fc2NoZWR1bGVkID0gaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5zZXRJbW1lZGlhdGUoc2NoZWR1bGVyLmZsdXNoLmJpbmQoc2NoZWR1bGVyLCB2b2lkIDApKSk7CiAgICAgIH07CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsID8gZGVsYXkgPiAwIDogdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGlmIChpZCAhPSBudWxsICYmICgoX2EgPSBhY3Rpb25zW2FjdGlvbnMubGVuZ3RoIC0gMV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZCkgIT09IGlkKSB7CiAgICAgICAgICBpbW1lZGlhdGVQcm92aWRlcl8xLmltbWVkaWF0ZVByb3ZpZGVyLmNsZWFySW1tZWRpYXRlKGlkKTsKICAgICAgICAgIGlmIChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9PT0gaWQpIHsKICAgICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gQXNhcEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgU2NoZWR1bGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3Rvciwgbm93KSB7CiAgICAgICAgaWYgKG5vdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBub3cgPSBTY2hlZHVsZXIyLm5vdzsKICAgICAgICB9CiAgICAgICAgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yID0gc2NoZWR1bGVyQWN0aW9uQ3RvcjsKICAgICAgICB0aGlzLm5vdyA9IG5vdzsKICAgICAgfQogICAgICBTY2hlZHVsZXIyLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHdvcmssIGRlbGF5LCBzdGF0ZSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yKHRoaXMsIHdvcmspLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgIH07CiAgICAgIFNjaGVkdWxlcjIubm93ID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLm5vdzsKICAgICAgcmV0dXJuIFNjaGVkdWxlcjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TY2hlZHVsZXIgPSBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY1NjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc3luY1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc2FwU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcFNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFzYXBTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gQXNhcFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXNhcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXNhcEFjdGlvbl8xID0gcmVxdWlyZV9Bc2FwQWN0aW9uKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc2FwU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gbmV3IEFzYXBTY2hlZHVsZXJfMS5Bc2FwU2NoZWR1bGVyKEFzYXBBY3Rpb25fMS5Bc2FwQWN0aW9uKTsKICAgIGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXN5bmMuanMKdmFyIHJlcXVpcmVfYXN5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVBY3Rpb24uanMKdmFyIHJlcXVpcmVfUXVldWVBY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgUXVldWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7CiAgICAgICAgdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIHJldHVybiBkZWxheSA+IDAgfHwgdGhpcy5jbG9zZWQgPyBfc3VwZXIucHJvdG90eXBlLmV4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpIDogdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiBkZWxheSA+IDAgfHwgZGVsYXkgPT0gbnVsbCAmJiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5mbHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfTsKICAgICAgcmV0dXJuIFF1ZXVlQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IFF1ZXVlQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgUXVldWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICByZXR1cm4gUXVldWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gUXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9xdWV1ZS5qcwp2YXIgcmVxdWlyZV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQW5pbWF0aW9uRnJhbWVBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQW5pbWF0aW9uRnJhbWVBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbmltYXRpb25GcmFtZUFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZXIuZmx1c2godm9pZCAwKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBBbmltYXRpb25GcmFtZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc3luY1NjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc3luY1NjaGVkdWxlcigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMigpIHsKICAgICAgICByZXR1cm4gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1ZpcnR1YWxUaW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9WaXJ0dWFsVGltZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBWaXJ0dWFsVGltZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbFRpbWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsVGltZVNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3RvciwgbWF4RnJhbWVzKSB7CiAgICAgICAgaWYgKHNjaGVkdWxlckFjdGlvbkN0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc2NoZWR1bGVyQWN0aW9uQ3RvciA9IFZpcnR1YWxBY3Rpb247CiAgICAgICAgfQogICAgICAgIGlmIChtYXhGcmFtZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgbWF4RnJhbWVzID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlckFjdGlvbkN0b3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmZyYW1lOwogICAgICAgIH0pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMubWF4RnJhbWVzID0gbWF4RnJhbWVzOwogICAgICAgIF90aGlzLmZyYW1lID0gMDsKICAgICAgICBfdGhpcy5pbmRleCA9IC0xOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBWaXJ0dWFsVGltZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgYWN0aW9ucyA9IF9hLmFjdGlvbnMsIG1heEZyYW1lcyA9IF9hLm1heEZyYW1lczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdmFyIGFjdGlvbjsKICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5kZWxheSA8PSBtYXhGcmFtZXMpIHsKICAgICAgICAgIGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICAgIHRoaXMuZnJhbWUgPSBhY3Rpb24uZGVsYXk7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKGFjdGlvbiA9IGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLmZyYW1lVGltZUZhY3RvciA9IDEwOwogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB2YXIgVmlydHVhbEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFZpcnR1YWxBY3Rpb24yKHNjaGVkdWxlciwgd29yaywgaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPT09IHZvaWQgMCkgewogICAgICAgICAgaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggKz0gMTsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5pbmRleCA9IGluZGV4OwogICAgICAgIF90aGlzLmFjdGl2ZSA9IHRydWU7CiAgICAgICAgX3RoaXMuaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggPSBpbmRleDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWxheSkpIHsKICAgICAgICAgIGlmICghdGhpcy5pZCkgewogICAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgdmFyIGFjdGlvbiA9IG5ldyBWaXJ0dWFsQWN0aW9uMih0aGlzLnNjaGVkdWxlciwgdGhpcy53b3JrKTsKICAgICAgICAgIHRoaXMuYWRkKGFjdGlvbik7CiAgICAgICAgICByZXR1cm4gYWN0aW9uLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgfQogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBzY2hlZHVsZXIuZnJhbWUgKyBkZWxheTsKICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICBhY3Rpb25zLnNvcnQoVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMpOwogICAgICAgIHJldHVybiAxOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5fZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmICh0aGlzLmFjdGl2ZSA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMgPSBmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgaWYgKGEuZGVsYXkgPT09IGIuZGVsYXkpIHsKICAgICAgICAgIGlmIChhLmluZGV4ID09PSBiLmluZGV4KSB7CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgfSBlbHNlIGlmIChhLmluZGV4ID4gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGEuZGVsYXkgPiBiLmRlbGF5KSB7CiAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFZpcnR1YWxBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxBY3Rpb24gPSBWaXJ0dWFsQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuRU1QVFkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBleHBvcnRzMi5FTVBUWSA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICB9KTsKICAgIGZ1bmN0aW9uIGVtcHR5KHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVyID8gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSA6IGV4cG9ydHMyLkVNUFRZOwogICAgfQogICAgZXhwb3J0czIuZW1wdHkgPSBlbXB0eTsKICAgIGZ1bmN0aW9uIGVtcHR5U2NoZWR1bGVkKHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfaXNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzCnZhciByZXF1aXJlX2FyZ3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBleHBvcnRzMi5wb3BTY2hlZHVsZXIgPSBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgZnVuY3Rpb24gbGFzdChhcnIpIHsKICAgICAgcmV0dXJuIGFyclthcnIubGVuZ3RoIC0gMV07CiAgICB9CiAgICBmdW5jdGlvbiBwb3BSZXN1bHRTZWxlY3RvcihhcmdzKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihsYXN0KGFyZ3MpKSA/IGFyZ3MucG9wKCkgOiB2b2lkIDA7CiAgICB9CiAgICBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHBvcFJlc3VsdFNlbGVjdG9yOwogICAgZnVuY3Rpb24gcG9wU2NoZWR1bGVyKGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIobGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wU2NoZWR1bGVyID0gcG9wU2NoZWR1bGVyOwogICAgZnVuY3Rpb24gcG9wTnVtYmVyKGFyZ3MsIGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gdHlwZW9mIGxhc3QoYXJncykgPT09ICJudW1iZXIiID8gYXJncy5wb3AoKSA6IGRlZmF1bHRWYWx1ZTsKICAgIH0KICAgIGV4cG9ydHMyLnBvcE51bWJlciA9IHBvcE51bWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXJyYXlMaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0FycmF5TGlrZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4geCAmJiB0eXBlb2YgeC5sZW5ndGggPT09ICJudW1iZXIiICYmIHR5cGVvZiB4ICE9PSAiZnVuY3Rpb24iOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1Byb21pc2UuanMKdmFyIHJlcXVpcmVfaXNQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5wdXRbb2JzZXJ2YWJsZV8xLm9ic2VydmFibGVdKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSW50ZXJvcE9ic2VydmFibGUgPSBpc0ludGVyb3BPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FzeW5jSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXN5bmNJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZShvYmopIHsKICAgICAgcmV0dXJuIFN5bWJvbC5hc3luY0l0ZXJhdG9yICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ialtTeW1ib2wuYXN5bmNJdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gaXNBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dVbm9ic2VydmFibGVFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL2l0ZXJhdG9yLmpzCnZhciByZXF1aXJlX2l0ZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9pdGVyYXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXRlcmF0b3IgPSBleHBvcnRzMi5nZXRTeW1ib2xJdGVyYXRvciA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGdldFN5bWJvbEl0ZXJhdG9yKCkgewogICAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gImZ1bmN0aW9uIiB8fCAhU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgcmV0dXJuICJAQGl0ZXJhdG9yIjsKICAgICAgfQogICAgICByZXR1cm4gU3ltYm9sLml0ZXJhdG9yOwogICAgfQogICAgZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSBnZXRTeW1ib2xJdGVyYXRvcjsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3IoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc0l0ZXJhYmxlKGlucHV0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbnB1dCA9PT0gbnVsbCB8fCBpbnB1dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNJdGVyYWJsZSA9IGlzSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb20uanMKdmFyIHJlcXVpcmVfaW5uZXJGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW5uZXJGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fYXdhaXRlciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXRlciB8fCBmdW5jdGlvbih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHsKICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsKICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBzdGVwKGdlbmVyYXRvclsidGhyb3ciXSh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7CiAgICAgICAgICByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsKICAgICAgICB9CiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpOwogICAgICB9KTsKICAgIH07CiAgICB2YXIgX19nZW5lcmF0b3IgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2dlbmVyYXRvciB8fCBmdW5jdGlvbih0aGlzQXJnLCBib2R5KSB7CiAgICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOwogICAgICAgIHJldHVybiB0WzFdOwogICAgICB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnOwogICAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgInRocm93IjogdmVyYigxKSwgInJldHVybiI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0pLCBnOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIHN0ZXAoW24sIHZdKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHsKICAgICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpOwogICAgICAgIHdoaWxlIChfKSB0cnkgewogICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgc3dpdGNoIChvcFswXSkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9OwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHkgPSBvcFsxXTsKICAgICAgICAgICAgICBvcCA9IFswXTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIG9wID0gXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7CiAgICAgICAgICAgICAgICBfID0gMDsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDMgJiYgKCF0IHx8IG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gb3BbMV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsxXTsKICAgICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMl07CiAgICAgICAgICAgICAgICBfLm9wcy5wdXNoKG9wKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodFsyXSkgXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgb3AgPSBbNiwgZV07CiAgICAgICAgICB5ID0gMDsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgZiA9IHQgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsKICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgICB9CiAgICB9OwogICAgdmFyIF9fYXN5bmNWYWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2FzeW5jVmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICAgIHZhciBtID0gb1tTeW1ib2wuYXN5bmNJdGVyYXRvcl0sIGk7CiAgICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogKG8gPSB0eXBlb2YgX192YWx1ZXMgPT09ICJmdW5jdGlvbiIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoIm5leHQiKSwgdmVyYigidGhyb3ciKSwgdmVyYigicmV0dXJuIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0sIGkpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpW25dID0gb1tuXSAmJiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgIHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCBkLCB2KSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odjIpIHsKICAgICAgICAgIHJlc29sdmUoeyB2YWx1ZTogdjIsIGRvbmU6IGQgfSk7CiAgICAgICAgfSwgcmVqZWN0KTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbVJlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZXhwb3J0czIuZnJvbUl0ZXJhYmxlID0gZXhwb3J0czIuZnJvbVByb21pc2UgPSBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZXhwb3J0czIuaW5uZXJGcm9tID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXlMaWtlXzEgPSByZXF1aXJlX2lzQXJyYXlMaWtlKCk7CiAgICB2YXIgaXNQcm9taXNlXzEgPSByZXF1aXJlX2lzUHJvbWlzZSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBpbm5lckZyb20oaW5wdXQpIHsKICAgICAgaWYgKGlucHV0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpIHsKICAgICAgICByZXR1cm4gaW5wdXQ7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUludGVyb3BPYnNlcnZhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUFycmF5TGlrZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1Byb21pc2VfMS5pc1Byb21pc2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBc3luY0l0ZXJhYmxlXzEuaXNBc3luY0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Bc3luY0l0ZXJhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSXRlcmFibGVfMS5pc0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21SZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgfQogICAgICB0aHJvdyB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuaW5uZXJGcm9tID0gaW5uZXJGcm9tOwogICAgZnVuY3Rpb24gZnJvbUludGVyb3BPYnNlcnZhYmxlKG9iaikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb2JzID0gb2JqW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSgpOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnMuc3Vic2NyaWJlKSkgewogICAgICAgICAgcmV0dXJuIG9icy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZnJvbUludGVyb3BPYnNlcnZhYmxlOwogICAgZnVuY3Rpb24gZnJvbUFycmF5TGlrZShhcnJheSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aCAmJiAhc3Vic2NyaWJlci5jbG9zZWQ7IGkrKykgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFycmF5W2ldKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21BcnJheUxpa2UgPSBmcm9tQXJyYXlMaWtlOwogICAgZnVuY3Rpb24gZnJvbVByb21pc2UocHJvbWlzZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KS50aGVuKG51bGwsIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZnJvbVByb21pc2U7CiAgICBmdW5jdGlvbiBmcm9tSXRlcmFibGUoaXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGZvciAodmFyIGl0ZXJhYmxlXzEgPSBfX3ZhbHVlcyhpdGVyYWJsZSksIGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpOyAhaXRlcmFibGVfMV8xLmRvbmU7IGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpKSB7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGl0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmIChpdGVyYWJsZV8xXzEgJiYgIWl0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGl0ZXJhYmxlXzEucmV0dXJuKSkgX2EuY2FsbChpdGVyYWJsZV8xKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGZyb21JdGVyYWJsZTsKICAgIGZ1bmN0aW9uIGZyb21Bc3luY0l0ZXJhYmxlKGFzeW5jSXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikuY2F0Y2goZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZnJvbUFzeW5jSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IocmVhZGFibGVTdHJlYW0pKTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBmcm9tUmVhZGFibGVTdHJlYW1MaWtlOwogICAgZnVuY3Rpb24gcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikgewogICAgICB2YXIgYXN5bmNJdGVyYWJsZV8xLCBhc3luY0l0ZXJhYmxlXzFfMTsKICAgICAgdmFyIGVfMiwgX2E7CiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciB2YWx1ZSwgZV8yXzE7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9iKSB7CiAgICAgICAgICBzd2l0Y2ggKF9iLmxhYmVsKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfYi50cnlzLnB1c2goWzAsIDUsIDYsIDExXSk7CiAgICAgICAgICAgICAgYXN5bmNJdGVyYWJsZV8xID0gX19hc3luY1ZhbHVlcyhhc3luY0l0ZXJhYmxlKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gWzQsIGFzeW5jSXRlcmFibGVfMS5uZXh0KCldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgPSBfYi5zZW50KCksICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lKSkgcmV0dXJuIFszLCA0XTsKICAgICAgICAgICAgICB2YWx1ZSA9IGFzeW5jSXRlcmFibGVfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfYi5sYWJlbCA9IDM7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBlXzJfMSA9IF9iLnNlbnQoKTsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFs2LCAsIDksIDEwXSk7CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgJiYgIWFzeW5jSXRlcmFibGVfMV8xLmRvbmUgJiYgKF9hID0gYXN5bmNJdGVyYWJsZV8xLnJldHVybikpKSByZXR1cm4gWzMsIDhdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgX2EuY2FsbChhc3luY0l0ZXJhYmxlXzEpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDg7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDEwXTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbN107CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9leGVjdXRlU2NoZWR1bGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4ZWN1dGVTY2hlZHVsZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGV4ZWN1dGVTY2hlZHVsZShwYXJlbnRTdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgd29yaywgZGVsYXksIHJlcGVhdDIpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHJlcGVhdDIgPT09IHZvaWQgMCkgewogICAgICAgIHJlcGVhdDIgPSBmYWxzZTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVTdWJzY3JpcHRpb24gPSBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgd29yaygpOwogICAgICAgIGlmIChyZXBlYXQyKSB7CiAgICAgICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHRoaXMuc2NoZWR1bGUobnVsbCwgZGVsYXkpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgIH0KICAgICAgfSwgZGVsYXkpOwogICAgICBwYXJlbnRTdWJzY3JpcHRpb24uYWRkKHNjaGVkdWxlU3Vic2NyaXB0aW9uKTsKICAgICAgaWYgKCFyZXBlYXQyKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlU3Vic2NyaXB0aW9uOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leGVjdXRlU2NoZWR1bGUgPSBleGVjdXRlU2NoZWR1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMKdmFyIHJlcXVpcmVfb2JzZXJ2ZU9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vYnNlcnZlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVPbiA9IHZvaWQgMDsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU9uKHNjaGVkdWxlciwgZGVsYXkpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgfSwgZGVsYXkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSBvYnNlcnZlT247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcwp2YXIgcmVxdWlyZV9zdWJzY3JpYmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3Vic2NyaWJlT24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN1YnNjcmliZU9uID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3Vic2NyaWJlT24oc2NoZWR1bGVyLCBkZWxheSkgewogICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgIGRlbGF5ID0gMDsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSwgZGVsYXkpKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zdWJzY3JpYmVPbiA9IHN1YnNjcmliZU9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG9ic2VydmVPbl8xID0gcmVxdWlyZV9vYnNlcnZlT24oKTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCkucGlwZShzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uKHNjaGVkdWxlciksIG9ic2VydmVPbl8xLm9ic2VydmVPbihzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlT2JzZXJ2YWJsZSA9IHNjaGVkdWxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZVByb21pc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUHJvbWlzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZVByb21pc2UgPSBzY2hlZHVsZVByb21pc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGkgPSAwOwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaSA9PT0gaW5wdXQubGVuZ3RoKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChpbnB1dFtpKytdKTsKICAgICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXJyYXkgPSBzY2hlZHVsZUFycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUl0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpdGVyYXRvcjsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGl0ZXJhdG9yID0gaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgX2E7CiAgICAgICAgICAgIHZhciB2YWx1ZTsKICAgICAgICAgICAgdmFyIGRvbmU7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgX2EgPSBpdGVyYXRvci5uZXh0KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkb25lKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpdGVyYXRvciA9PT0gbnVsbCB8fCBpdGVyYXRvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogaXRlcmF0b3IucmV0dXJuKSAmJiBpdGVyYXRvci5yZXR1cm4oKTsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlSXRlcmFibGUgPSBzY2hlZHVsZUl0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBc3luY0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUFzeW5jSXRlcmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKCFpbnB1dCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSXRlcmFibGUgY2Fubm90IGJlIG51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBpdGVyYXRvciA9IGlucHV0W1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOwogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGl0ZXJhdG9yLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAgICAgICAgICAgIGlmIChyZXN1bHQuZG9uZSkgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQocmVzdWx0LnZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwgMCwgdHJ1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gc2NoZWR1bGVBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xLnNjaGVkdWxlQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IoaW5wdXQpLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVkID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUoKTsKICAgIHZhciBzY2hlZHVsZVByb21pc2VfMSA9IHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlKCk7CiAgICB2YXIgc2NoZWR1bGVBcnJheV8xID0gcmVxdWlyZV9zY2hlZHVsZUFycmF5KCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNJdGVyYWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICBpZiAoaW5wdXQgIT0gbnVsbCkgewogICAgICAgIGlmIChpc0ludGVyb3BPYnNlcnZhYmxlXzEuaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZU9ic2VydmFibGVfMS5zY2hlZHVsZU9ic2VydmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlQXJyYXlfMS5zY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUHJvbWlzZV8xLnNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUl0ZXJhYmxlXzEuc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEuaXNSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2VfMS5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHNjaGVkdWxlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzCnZhciByZXF1aXJlX2Zyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlZF8xID0gcmVxdWlyZV9zY2hlZHVsZWQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBmcm9tKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIHNjaGVkdWxlciA/IHNjaGVkdWxlZF8xLnNjaGVkdWxlZChpbnB1dCwgc2NoZWR1bGVyKSA6IGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tID0gZnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcwp2YXIgcmVxdWlyZV9vZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vZiA9IHZvaWQgMDsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG9mKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKGFyZ3MsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5vZiA9IG9mOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiB0aHJvd0Vycm9yMihlcnJvck9yRXJyb3JGYWN0b3J5LCBzY2hlZHVsZXIpIHsKICAgICAgdmFyIGVycm9yRmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGVycm9yT3JFcnJvckZhY3RvcnkpID8gZXJyb3JPckVycm9yRmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlcnJvck9yRXJyb3JGYWN0b3J5OwogICAgICB9OwogICAgICB2YXIgaW5pdCA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgIH07CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoaW5pdCwgMCwgc3Vic2NyaWJlcik7CiAgICAgIH0gOiBpbml0KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB0aHJvd0Vycm9yMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBOb3RpZmljYXRpb25LaW5kOwogICAgKGZ1bmN0aW9uKE5vdGlmaWNhdGlvbktpbmQyKSB7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJORVhUIl0gPSAiTiI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJFUlJPUiJdID0gIkUiOwogICAgICBOb3RpZmljYXRpb25LaW5kMlsiQ09NUExFVEUiXSA9ICJDIjsKICAgIH0pKE5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kIHx8IChleHBvcnRzMi5Ob3RpZmljYXRpb25LaW5kID0ge30pKTsKICAgIHZhciBOb3RpZmljYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gTm90aWZpY2F0aW9uMihraW5kLCB2YWx1ZSwgZXJyb3IpIHsKICAgICAgICB0aGlzLmtpbmQgPSBraW5kOwogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGtpbmQgPT09ICJOIjsKICAgICAgfQogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS5vYnNlcnZlID0gZnVuY3Rpb24ob2JzZXJ2ZXIpIHsKICAgICAgICByZXR1cm4gb2JzZXJ2ZU5vdGlmaWNhdGlvbih0aGlzLCBvYnNlcnZlcik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmRvID0gZnVuY3Rpb24obmV4dEhhbmRsZXIsIGVycm9ySGFuZGxlciwgY29tcGxldGVIYW5kbGVyKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgcmV0dXJuIGtpbmQgPT09ICJOIiA/IG5leHRIYW5kbGVyID09PSBudWxsIHx8IG5leHRIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBuZXh0SGFuZGxlcih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyBlcnJvckhhbmRsZXIgPT09IG51bGwgfHwgZXJyb3JIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlcnJvckhhbmRsZXIoZXJyb3IpIDogY29tcGxldGVIYW5kbGVyID09PSBudWxsIHx8IGNvbXBsZXRlSGFuZGxlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY29tcGxldGVIYW5kbGVyKCk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLmFjY2VwdCA9IGZ1bmN0aW9uKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKChfYSA9IG5leHRPck9ic2VydmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubmV4dCkgPyB0aGlzLm9ic2VydmUobmV4dE9yT2JzZXJ2ZXIpIDogdGhpcy5kbyhuZXh0T3JPYnNlcnZlciwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUudG9PYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywga2luZCA9IF9hLmtpbmQsIHZhbHVlID0gX2EudmFsdWUsIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgdmFyIHJlc3VsdCA9IGtpbmQgPT09ICJOIiA/IG9mXzEub2YodmFsdWUpIDoga2luZCA9PT0gIkUiID8gdGhyb3dFcnJvcl8xLnRocm93RXJyb3IoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZXJyb3I7CiAgICAgICAgfSkgOiBraW5kID09PSAiQyIgPyBlbXB0eV8xLkVNUFRZIDogMDsKICAgICAgICBpZiAoIXJlc3VsdCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCBub3RpZmljYXRpb24ga2luZCAiICsga2luZCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlTmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJOIiwgdmFsdWUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24yKCJFIiwgdm9pZCAwLCBlcnIpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLmNyZWF0ZUNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb247CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY29tcGxldGVOb3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uMigiQyIpOwogICAgICByZXR1cm4gTm90aWZpY2F0aW9uMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IE5vdGlmaWNhdGlvbjsKICAgIGZ1bmN0aW9uIG9ic2VydmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBvYnNlcnZlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIF9kID0gbm90aWZpY2F0aW9uLCBraW5kID0gX2Qua2luZCwgdmFsdWUgPSBfZC52YWx1ZSwgZXJyb3IgPSBfZC5lcnJvcjsKICAgICAgaWYgKHR5cGVvZiBraW5kICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpOwogICAgICB9CiAgICAgIGtpbmQgPT09ICJOIiA/IChfYSA9IG9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG9ic2VydmVyLCB2YWx1ZSkgOiBraW5kID09PSAiRSIgPyAoX2IgPSBvYnNlcnZlci5lcnJvcikgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwob2JzZXJ2ZXIsIGVycm9yKSA6IChfYyA9IG9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FsbChvYnNlcnZlcik7CiAgICB9CiAgICBleHBvcnRzMi5vYnNlcnZlTm90aWZpY2F0aW9uID0gb2JzZXJ2ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc09ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfaXNPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc09ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc09ic2VydmFibGUob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiAob2JqIGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUgfHwgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLmxpZnQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iai5zdWJzY3JpYmUpKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IGlzT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzCnZhciByZXF1aXJlX0VtcHR5RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9FbXB0eUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuRW1wdHlFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gRW1wdHlFcnJvckltcGwoKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJFbXB0eUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAibm8gZWxlbWVudHMgaW4gc2VxdWVuY2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfbGFzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9sYXN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgZnVuY3Rpb24gbGFzdFZhbHVlRnJvbShzb3VyY2UsIGNvbmZpZykgewogICAgICB2YXIgaGFzQ29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gIm9iamVjdCI7CiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgX2hhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIF92YWx1ZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHsKICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIF92YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICBfaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChfaGFzVmFsdWUpIHsKICAgICAgICAgICAgICByZXNvbHZlKF92YWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ29uZmlnKSB7CiAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcuZGVmYXVsdFZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZWplY3QobmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubGFzdFZhbHVlRnJvbSA9IGxhc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzCnZhciByZXF1aXJlX2ZpcnN0VmFsdWVGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpcnN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gZmlyc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IuanMKdmFyIHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJhcmd1bWVudCBvdXQgb2YgcmFuZ2UiOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcwp2YXIgcmVxdWlyZV9Ob3RGb3VuZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE5vdEZvdW5kRXJyb3JJbXBsKG1lc3NhZ2UpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk5vdEZvdW5kRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzCnZhciByZXF1aXJlX1NlcXVlbmNlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuU2VxdWVuY2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gU2VxdWVuY2VFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiU2VxdWVuY2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRGF0ZS5qcwp2YXIgcmVxdWlyZV9pc0RhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0RhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzVmFsaWREYXRlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gaXNWYWxpZERhdGUodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUpOwogICAgfQogICAgZXhwb3J0czIuaXNWYWxpZERhdGUgPSBpc1ZhbGlkRGF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXQuanMKdmFyIHJlcXVpcmVfdGltZW91dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVGltZW91dEVycm9ySW1wbChpbmZvKSB7CiAgICAgICAgaWYgKGluZm8gPT09IHZvaWQgMCkgewogICAgICAgICAgaW5mbyA9IG51bGw7CiAgICAgICAgfQogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAiVGltZW91dCBoYXMgb2NjdXJyZWQiOwogICAgICAgIHRoaXMubmFtZSA9ICJUaW1lb3V0RXJyb3IiOwogICAgICAgIHRoaXMuaW5mbyA9IGluZm87CiAgICAgIH07CiAgICB9KTsKICAgIGZ1bmN0aW9uIHRpbWVvdXQoY29uZmlnLCBzY2hlZHVsZXJBcmcpIHsKICAgICAgdmFyIF9hID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoY29uZmlnKSA/IHsgZmlyc3Q6IGNvbmZpZyB9IDogdHlwZW9mIGNvbmZpZyA9PT0gIm51bWJlciIgPyB7IGVhY2g6IGNvbmZpZyB9IDogY29uZmlnLCBmaXJzdCA9IF9hLmZpcnN0LCBlYWNoID0gX2EuZWFjaCwgX2IgPSBfYS53aXRoLCBfd2l0aCA9IF9iID09PSB2b2lkIDAgPyB0aW1lb3V0RXJyb3JGYWN0b3J5IDogX2IsIF9jID0gX2Euc2NoZWR1bGVyLCBzY2hlZHVsZXIgPSBfYyA9PT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnICE9PSBudWxsICYmIHNjaGVkdWxlckFyZyAhPT0gdm9pZCAwID8gc2NoZWR1bGVyQXJnIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlciA6IF9jLCBfZCA9IF9hLm1ldGEsIG1ldGEgPSBfZCA9PT0gdm9pZCAwID8gbnVsbCA6IF9kOwogICAgICBpZiAoZmlyc3QgPT0gbnVsbCAmJiBlYWNoID09IG51bGwpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJObyB0aW1lb3V0IHByb3ZpZGVkLiIpOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIHRpbWVyU3Vic2NyaXB0aW9uOwogICAgICAgIHZhciBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICB2YXIgc3RhcnRUaW1lciA9IGZ1bmN0aW9uKGRlbGF5KSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKF93aXRoKHsKICAgICAgICAgICAgICAgIG1ldGEsCiAgICAgICAgICAgICAgICBsYXN0VmFsdWUsCiAgICAgICAgICAgICAgICBzZWVuCiAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBkZWxheSk7CiAgICAgICAgfTsKICAgICAgICBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCB0aW1lclN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGltZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNlZW4rKzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChsYXN0VmFsdWUgPSB2YWx1ZSk7CiAgICAgICAgICBlYWNoID4gMCAmJiBzdGFydFRpbWVyKGVhY2gpOwogICAgICAgIH0sIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghKHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi5jbG9zZWQpKSB7CiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgICAgIXNlZW4gJiYgc3RhcnRUaW1lcihmaXJzdCAhPSBudWxsID8gdHlwZW9mIGZpcnN0ID09PSAibnVtYmVyIiA/IGZpcnN0IDogK2ZpcnN0IC0gc2NoZWR1bGVyLm5vdygpIDogZWFjaCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dCA9IHRpbWVvdXQ7CiAgICBmdW5jdGlvbiB0aW1lb3V0RXJyb3JGYWN0b3J5KGluZm8pIHsKICAgICAgdGhyb3cgbmV3IGV4cG9ydHMyLlRpbWVvdXRFcnJvcihpbmZvKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcwp2YXIgcmVxdWlyZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hcDIocHJvamVjdCwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKykpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXAgPSBtYXAyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcE9uZU9yTWFueUFyZ3MgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gY2FsbE9yQXBwbHkoZm4sIGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzQXJyYXkoYXJncykgPyBmbi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpIDogZm4oYXJncyk7CiAgICB9CiAgICBmdW5jdGlvbiBtYXBPbmVPck1hbnlBcmdzKGZuKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYXJncykgewogICAgICAgIHJldHVybiBjYWxsT3JBcHBseShmbiwgYXJncyk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IG1hcE9uZU9yTWFueUFyZ3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kQ2FsbGJhY2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoZmFsc2UsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSBiaW5kQ2FsbGJhY2s7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kTm9kZUNhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKHRydWUsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gYmluZE5vZGVDYWxsYmFjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzQXJnQXJyYXlPck9iamVjdC5qcwp2YXIgcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlT2JqZWN0LmpzCnZhciByZXF1aXJlX2NyZWF0ZU9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZU9iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgewogICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoZnVuY3Rpb24ocmVzdWx0LCBrZXksIGkpIHsKICAgICAgICByZXR1cm4gcmVzdWx0W2tleV0gPSB2YWx1ZXNbaV0sIHJlc3VsdDsKICAgICAgfSwge30pOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gY3JlYXRlT2JqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RJbml0ID0gZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICB2YXIgX2EgPSBhcmdzQXJnQXJyYXlPck9iamVjdF8xLmFyZ3NBcmdBcnJheU9yT2JqZWN0KGFyZ3MpLCBvYnNlcnZhYmxlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICBpZiAob2JzZXJ2YWJsZXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKFtdLCBzY2hlZHVsZXIpOwogICAgICB9CiAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwga2V5cyA/IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIHJldHVybiBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKTsKICAgICAgfSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpKTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBjb21iaW5lTGF0ZXN0OwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwgdmFsdWVUcmFuc2Zvcm0pIHsKICAgICAgaWYgKHZhbHVlVHJhbnNmb3JtID09PSB2b2lkIDApIHsKICAgICAgICB2YWx1ZVRyYW5zZm9ybSA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgbGVuZ3RoID0gb2JzZXJ2YWJsZXMubGVuZ3RoOwogICAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgICAgdmFyIGFjdGl2ZSA9IGxlbmd0aDsKICAgICAgICAgIHZhciByZW1haW5pbmdGaXJzdFZhbHVlcyA9IGxlbmd0aDsKICAgICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgICAgbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzb3VyY2UgPSBmcm9tXzEuZnJvbShvYnNlcnZhYmxlc1tpMl0sIHNjaGVkdWxlcik7CiAgICAgICAgICAgICAgdmFyIGhhc0ZpcnN0VmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICAgICAgaWYgKCFoYXNGaXJzdFZhbHVlKSB7CiAgICAgICAgICAgICAgICAgIGhhc0ZpcnN0VmFsdWUgPSB0cnVlOwogICAgICAgICAgICAgICAgICByZW1haW5pbmdGaXJzdFZhbHVlcy0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdGaXJzdFZhbHVlcykgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWVUcmFuc2Zvcm0odmFsdWVzLnNsaWNlKCkpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghLS1hY3RpdmUpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgICAgICB9OwogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgICAgfQogICAgICAgIH0sIHN1YnNjcmliZXIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBjb21iaW5lTGF0ZXN0SW5pdDsKICAgIGZ1bmN0aW9uIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBleGVjdXRlLCBzdWJzY3JpcHRpb24pIHsKICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgZXhlY3V0ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXhlY3V0ZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUludGVybmFscy5qcwp2YXIgcmVxdWlyZV9tZXJnZUludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXAuanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IoYSwgYiwgaSwgaWkpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpKTsKICAgICAgICB9LCBjb25jdXJyZW50KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIHByb2plY3QsIGNvbmN1cnJlbnQpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwID0gbWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIG1lcmdlQWxsKGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChpZGVudGl0eV8xLmlkZW50aXR5LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gbWVyZ2VBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMKdmFyIHJlcXVpcmVfY29uY2F0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsKCkoZnJvbV8xLmZyb20oYXJncywgYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZGVmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmVyID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlZmVyKG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvYnNlcnZhYmxlRmFjdG9yeSgpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmZXIgPSBkZWZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25uZWN0YWJsZS5qcwp2YXIgcmVxdWlyZV9jb25uZWN0YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcwp2YXIgcmVxdWlyZV9mb3JrSm9pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgZnVuY3Rpb24gZm9ya0pvaW4oKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIF9hID0gYXJnc0FyZ0FycmF5T3JPYmplY3RfMS5hcmdzQXJnQXJyYXlPck9iamVjdChhcmdzKSwgc291cmNlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuZ3RoID0gc291cmNlcy5sZW5ndGg7CiAgICAgICAgaWYgKCFsZW5ndGgpIHsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgIHZhciByZW1haW5pbmdDb21wbGV0aW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgcmVtYWluaW5nRW1pc3Npb25zID0gbGVuZ3RoOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgICAgICByZW1haW5pbmdFbWlzc2lvbnMtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXNbc291cmNlSW5kZXgyXSA9IHZhbHVlOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdDb21wbGV0aW9ucy0tOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdDb21wbGV0aW9ucyB8fCAhaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0VtaXNzaW9ucykgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGtleXMgPyBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKSA6IHZhbHVlcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyBzb3VyY2VJbmRleCA8IGxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmZvcmtKb2luID0gZm9ya0pvaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcyA9IFsiYWRkTGlzdGVuZXIiLCAicmVtb3ZlTGlzdGVuZXIiXTsKICAgIHZhciBldmVudFRhcmdldE1ldGhvZHMgPSBbImFkZEV2ZW50TGlzdGVuZXIiLCAicmVtb3ZlRXZlbnRMaXN0ZW5lciJdOwogICAgdmFyIGpxdWVyeU1ldGhvZHMgPSBbIm9uIiwgIm9mZiJdOwogICAgZnVuY3Rpb24gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zLCByZXN1bHRTZWxlY3RvcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob3B0aW9ucykpIHsKICAgICAgICByZXN1bHRTZWxlY3RvciA9IG9wdGlvbnM7CiAgICAgICAgb3B0aW9ucyA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAocmVzdWx0U2VsZWN0b3IpIHsKICAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zKS5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSk7CiAgICAgIH0KICAgICAgdmFyIF9hID0gX19yZWFkKGlzRXZlbnRUYXJnZXQodGFyZ2V0KSA/IGV2ZW50VGFyZ2V0TWV0aG9kcy5tYXAoZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7CiAgICAgICAgfTsKICAgICAgfSkgOiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpID8gbm9kZUV2ZW50RW1pdHRlck1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBpc0pRdWVyeVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBqcXVlcnlNZXRob2RzLm1hcCh0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkpIDogW10sIDIpLCBhZGQgPSBfYVswXSwgcmVtb3ZlID0gX2FbMV07CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UodGFyZ2V0KSkgewogICAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oc3ViVGFyZ2V0KSB7CiAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoc3ViVGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHRhcmdldCkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWFkZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgZXZlbnQgdGFyZ2V0Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KDEgPCBhcmdzLmxlbmd0aCA/IGFyZ3MgOiBhcmdzWzBdKTsKICAgICAgICB9OwogICAgICAgIGFkZChoYW5kbGVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlKGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUV2ZW50ID0gZnJvbUV2ZW50OwogICAgZnVuY3Rpb24gdG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZE5hbWUpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaGFuZGxlcikgewogICAgICAgICAgcmV0dXJuIHRhcmdldFttZXRob2ROYW1lXShldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRMaXN0ZW5lcikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LnJlbW92ZUxpc3RlbmVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQub24pICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vZmYpOwogICAgfQogICAgZnVuY3Rpb24gaXNFdmVudFRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRFdmVudExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcwp2YXIgcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcwp2YXIgcmVxdWlyZV9nZW5lcmF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGRlZmVyXzEgPSByZXF1aXJlX2RlZmVyKCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZShpbml0aWFsU3RhdGVPck9wdGlvbnMsIGNvbmRpdGlvbiwgaXRlcmF0ZSwgcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciByZXN1bHRTZWxlY3RvcjsKICAgICAgdmFyIGluaXRpYWxTdGF0ZTsKICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgICAgICBfYSA9IGluaXRpYWxTdGF0ZU9yT3B0aW9ucywgaW5pdGlhbFN0YXRlID0gX2EuaW5pdGlhbFN0YXRlLCBjb25kaXRpb24gPSBfYS5jb25kaXRpb24sIGl0ZXJhdGUgPSBfYS5pdGVyYXRlLCBfYiA9IF9hLnJlc3VsdFNlbGVjdG9yLCByZXN1bHRTZWxlY3RvciA9IF9iID09PSB2b2lkIDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogX2IsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpbml0aWFsU3RhdGUgPSBpbml0aWFsU3RhdGVPck9wdGlvbnM7CiAgICAgICAgaWYgKCFyZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyIHx8IGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgICAgIHNjaGVkdWxlciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2VuKCkgewogICAgICAgIHZhciBzdGF0ZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2EyKSB7CiAgICAgICAgICBzd2l0Y2ggKF9hMi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgc3RhdGUgPSBpbml0aWFsU3RhdGU7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGlmICghKCFjb25kaXRpb24gfHwgY29uZGl0aW9uKHN0YXRlKSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCByZXN1bHRTZWxlY3RvcihzdGF0ZSldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX2EyLnNlbnQoKTsKICAgICAgICAgICAgICBfYTIubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgc3RhdGUgPSBpdGVyYXRlKHN0YXRlKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcihzY2hlZHVsZXIgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoZ2VuKCksIHNjaGVkdWxlcik7CiAgICAgIH0gOiBnZW4pOwogICAgfQogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSBnZW5lcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaWlmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5paWYgPSB2b2lkIDA7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIGZ1bmN0aW9uIGlpZihjb25kaXRpb24sIHRydWVSZXN1bHQsIGZhbHNlUmVzdWx0KSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBjb25kaXRpb24oKSA/IHRydWVSZXN1bHQgOiBmYWxzZVJlc3VsdDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5paWYgPSBpaWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdGltZXIuanMKdmFyIHJlcXVpcmVfdGltZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gaW50ZXJ2YWwocGVyaW9kLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHBlcmlvZCA9PT0gdm9pZCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIGlmIChwZXJpb2QgPCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICByZXR1cm4gdGltZXJfMS50aW1lcihwZXJpb2QsIHBlcmlvZCwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmludGVydmFsID0gaW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlMigpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHZhciBjb25jdXJyZW50ID0gYXJnc18xLnBvcE51bWJlcihhcmdzLCBJbmZpbml0eSk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnczsKICAgICAgcmV0dXJuICFzb3VyY2VzLmxlbmd0aCA/IGVtcHR5XzEuRU1QVFkgOiBzb3VyY2VzLmxlbmd0aCA9PT0gMSA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzWzBdKSA6IG1lcmdlQWxsXzEubWVyZ2VBbGwoY29uY3VycmVudCkoZnJvbV8xLmZyb20oc291cmNlcywgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcwp2YXIgcmVxdWlyZV9uZXZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL25ldmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLk5FVkVSID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZXhwb3J0czIuTkVWRVIgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUobm9vcF8xLm5vb3ApOwogICAgZnVuY3Rpb24gbmV2ZXIoKSB7CiAgICAgIHJldHVybiBleHBvcnRzMi5ORVZFUjsKICAgIH0KICAgIGV4cG9ydHMyLm5ldmVyID0gbmV2ZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMKdmFyIHJlcXVpcmVfYXJnc09yQXJnQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzT3JBcmdBcnJheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJnc09yQXJnQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgaXNBcnJheSA9IEFycmF5LmlzQXJyYXk7CiAgICBmdW5jdGlvbiBhcmdzT3JBcmdBcnJheShhcmdzKSB7CiAgICAgIHJldHVybiBhcmdzLmxlbmd0aCA9PT0gMSAmJiBpc0FycmF5KGFyZ3NbMF0pID8gYXJnc1swXSA6IGFyZ3M7CiAgICB9CiAgICBleHBvcnRzMi5hcmdzT3JBcmdBcnJheSA9IGFyZ3NPckFyZ0FycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29uRXJyb3JSZXN1bWVOZXh0LmpzCnZhciByZXF1aXJlX29uRXJyb3JSZXN1bWVOZXh0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb25FcnJvclJlc3VtZU5leHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0KCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc291cmNlSW5kZXggPSAwOwogICAgICAgIHZhciBzdWJzY3JpYmVOZXh0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoc291cmNlSW5kZXggPCBuZXh0U291cmNlcy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIG5leHRTb3VyY2UgPSB2b2lkIDA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgbmV4dFNvdXJjZSA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShuZXh0U291cmNlc1tzb3VyY2VJbmRleCsrXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBub29wXzEubm9vcCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgICBuZXh0U291cmNlLnN1YnNjcmliZShpbm5lclN1YnNjcmliZXIpOwogICAgICAgICAgICBpbm5lclN1YnNjcmliZXIuYWRkKHN1YnNjcmliZU5leHQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlTmV4dCgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gb25FcnJvclJlc3VtZU5leHQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMKdmFyIHJlcXVpcmVfcGFpcnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYWlycy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGFpcnMgPSB2b2lkIDA7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBmdW5jdGlvbiBwYWlyczIob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9ub3QuanMKdmFyIHJlcXVpcmVfbm90MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm90ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gbm90KHByZWQsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiAhcHJlZC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMKdmFyIHJlcXVpcmVfZmlsdGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maWx0ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbHRlciA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KyspICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbHRlciA9IGZpbHRlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMKdmFyIHJlcXVpcmVfcGFydGl0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFydGl0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSB2b2lkIDA7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdDIoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gcGFydGl0aW9uKHNvdXJjZSwgcHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBbZmlsdGVyXzEuZmlsdGVyKHByZWRpY2F0ZSwgdGhpc0FyZykoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpLCBmaWx0ZXJfMS5maWx0ZXIobm90XzEubm90KHByZWRpY2F0ZSwgdGhpc0FyZykpKGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpKV07CiAgICB9CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcwp2YXIgcmVxdWlyZV9yYWNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFjZUluaXQgPSBleHBvcnRzMi5yYWNlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJhY2UoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUocmFjZUluaXQoc291cmNlcykpOwogICAgfQogICAgZXhwb3J0czIucmFjZSA9IHJhY2U7CiAgICBmdW5jdGlvbiByYWNlSW5pdChzb3VyY2VzKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbnMgPSBbXTsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKGkyKSB7CiAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IDA7IHMgPCBzdWJzY3JpcHRpb25zLmxlbmd0aDsgcysrKSB7CiAgICAgICAgICAgICAgICBzICE9PSBpMiAmJiBzdWJzY3JpcHRpb25zW3NdLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMgPSBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9KSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IHN1YnNjcmlwdGlvbnMgJiYgIXN1YnNjcmliZXIuY2xvc2VkICYmIGkgPCBzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnJhY2VJbml0ID0gcmFjZUluaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFuZ2UuanMKdmFyIHJlcXVpcmVfcmFuZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFuZ2UgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIGZ1bmN0aW9uIHJhbmdlKHN0YXJ0LCBjb3VudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb3VudCA9PSBudWxsKSB7CiAgICAgICAgY291bnQgPSBzdGFydDsKICAgICAgICBzdGFydCA9IDA7CiAgICAgIH0KICAgICAgaWYgKGNvdW50IDw9IDApIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfQogICAgICB2YXIgZW5kID0gY291bnQgKyBzdGFydDsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShzY2hlZHVsZXIgPyBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG4gPSBzdGFydDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG4gPCBlbmQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSA6IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbiA9IHN0YXJ0OwogICAgICAgIHdoaWxlIChuIDwgZW5kICYmICFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG4rKyk7CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yYW5nZSA9IHJhbmdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3VzaW5nLmpzCnZhciByZXF1aXJlX3VzaW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdXNpbmcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnVzaW5nID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgZnVuY3Rpb24gdXNpbmcocmVzb3VyY2VGYWN0b3J5LCBvYnNlcnZhYmxlRmFjdG9yeSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcmVzb3VyY2UgPSByZXNvdXJjZUZhY3RvcnkoKTsKICAgICAgICB2YXIgcmVzdWx0ID0gb2JzZXJ2YWJsZUZhY3RvcnkocmVzb3VyY2UpOwogICAgICAgIHZhciBzb3VyY2UgPSByZXN1bHQgPyBpbm5lckZyb21fMS5pbm5lckZyb20ocmVzdWx0KSA6IGVtcHR5XzEuRU1QVFk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAocmVzb3VyY2UpIHsKICAgICAgICAgICAgcmVzb3VyY2UudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnVzaW5nID0gdXNpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvemlwLmpzCnZhciByZXF1aXJlX3ppcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIHNvdXJjZXMubGVuZ3RoID8gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0pOwogICAgICAgIHZhciBjb21wbGV0ZWQgPSBzb3VyY2VzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGJ1ZmZlcnNbc291cmNlSW5kZXgyXS5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuZXZlcnkoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5sZW5ndGg7CiAgICAgICAgICAgIH0pKSB7CiAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGJ1ZmZlcnMubWFwKGZ1bmN0aW9uKGJ1ZmZlcikgewogICAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHRTZWxlY3RvciA/IHJlc3VsdFNlbGVjdG9yLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHJlc3VsdCkpKSA6IHJlc3VsdCk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuc29tZShmdW5jdGlvbihidWZmZXIsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhYnVmZmVyLmxlbmd0aCAmJiBjb21wbGV0ZWRbaV07CiAgICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjb21wbGV0ZWRbc291cmNlSW5kZXgyXSA9IHRydWU7CiAgICAgICAgICAgICFidWZmZXJzW3NvdXJjZUluZGV4Ml0ubGVuZ3RoICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZUluZGV4IDwgc291cmNlcy5sZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXJzID0gY29tcGxldGVkID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KSA6IGVtcHR5XzEuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC90eXBlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMKdmFyIHJlcXVpcmVfYXVkaXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hdWRpdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gYXVkaXQoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICB2YXIgZW5kRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwRHVyYXRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGlmICghZHVyYXRpb25TdWJzY3JpYmVyKSB7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmREdXJhdGlvbiwgY2xlYW51cER1cmF0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICghaGFzVmFsdWUgfHwgIWR1cmF0aW9uU3Vic2NyaWJlciB8fCBkdXJhdGlvblN1YnNjcmliZXIuY2xvc2VkKSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmF1ZGl0ID0gYXVkaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMKdmFyIHJlcXVpcmVfYXVkaXRUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0VGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGF1ZGl0VGltZShkdXJhdGlvbiwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gYXVkaXRUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXIgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcihjbG9zaW5nTm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBjdXJyZW50QnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBjdXJyZW50QnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGN1cnJlbnRCdWZmZXIpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ05vdGlmaWVyKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGIgPSBjdXJyZW50QnVmZmVyOwogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IFtdOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgY3VycmVudEJ1ZmZlciA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXIgPSBidWZmZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcwp2YXIgcmVxdWlyZV9idWZmZXJDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyQ291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJDb3VudChidWZmZXJTaXplLCBzdGFydEJ1ZmZlckV2ZXJ5KSB7CiAgICAgIGlmIChzdGFydEJ1ZmZlckV2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gbnVsbDsKICAgICAgfQogICAgICBzdGFydEJ1ZmZlckV2ZXJ5ID0gc3RhcnRCdWZmZXJFdmVyeSAhPT0gbnVsbCAmJiBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSB2b2lkIDAgPyBzdGFydEJ1ZmZlckV2ZXJ5IDogYnVmZmVyU2l6ZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gW107CiAgICAgICAgdmFyIGNvdW50ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2EsIGVfMiwgX2I7CiAgICAgICAgICB2YXIgdG9FbWl0ID0gbnVsbDsKICAgICAgICAgIGlmIChjb3VudCsrICUgc3RhcnRCdWZmZXJFdmVyeSA9PT0gMCkgewogICAgICAgICAgICBidWZmZXJzLnB1c2goW10pOwogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18xID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKTsgIWJ1ZmZlcnNfMV8xLmRvbmU7IGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdG9FbWl0ID0gdG9FbWl0ICE9PSBudWxsICYmIHRvRW1pdCAhPT0gdm9pZCAwID8gdG9FbWl0IDogW107CiAgICAgICAgICAgICAgICB0b0VtaXQucHVzaChidWZmZXIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9FbWl0KSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgdG9FbWl0XzEgPSBfX3ZhbHVlcyh0b0VtaXQpLCB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpOyAhdG9FbWl0XzFfMS5kb25lOyB0b0VtaXRfMV8xID0gdG9FbWl0XzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gdG9FbWl0XzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJzLCBidWZmZXIpOwogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlXzJfMSkgewogICAgICAgICAgICAgIGVfMiA9IHsgZXJyb3I6IGVfMl8xIH07CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmICh0b0VtaXRfMV8xICYmICF0b0VtaXRfMV8xLmRvbmUgJiYgKF9iID0gdG9FbWl0XzEucmV0dXJuKSkgX2IuY2FsbCh0b0VtaXRfMSk7CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzMsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18yID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKTsgIWJ1ZmZlcnNfMl8xLmRvbmU7IGJ1ZmZlcnNfMl8xID0gYnVmZmVyc18yLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzJfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8zXzEpIHsKICAgICAgICAgICAgZV8zID0geyBlcnJvcjogZV8zXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMl8xICYmICFidWZmZXJzXzJfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMi5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMik7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMykgdGhyb3cgZV8zLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJDb3VudCA9IGJ1ZmZlckNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVGltZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVGltZShidWZmZXJUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciBidWZmZXJDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4QnVmZmVyU2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkVtaXQgPSBmYWxzZTsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKHJlY29yZCkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXIsIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ICYmIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgfTsKICAgICAgICB2YXIgc3RhcnRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChidWZmZXJSZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChzdWJzKTsKICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgYnVmZmVyLAogICAgICAgICAgICAgIHN1YnMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgYnVmZmVyUmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVtaXQocmVjb3JkXzEpOwogICAgICAgICAgICB9LCBidWZmZXJUaW1lU3Bhbik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBpZiAoYnVmZmVyQ3JlYXRpb25JbnRlcnZhbCAhPT0gbnVsbCAmJiBidWZmZXJDcmVhdGlvbkludGVydmFsID49IDApIHsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIHN0YXJ0QnVmZmVyLCBidWZmZXJDcmVhdGlvbkludGVydmFsLCB0cnVlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVzdGFydE9uRW1pdCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgdmFyIGJ1ZmZlclRpbWVTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTI7CiAgICAgICAgICB2YXIgcmVjb3Jkc0NvcHkgPSBidWZmZXJSZWNvcmRzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciByZWNvcmRzQ29weV8xID0gX192YWx1ZXMocmVjb3Jkc0NvcHkpLCByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKTsgIXJlY29yZHNDb3B5XzFfMS5kb25lOyByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciByZWNvcmQgPSByZWNvcmRzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXI7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICAgIG1heEJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCAmJiBlbWl0KHJlY29yZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChyZWNvcmRzQ29weV8xXzEgJiYgIXJlY29yZHNDb3B5XzFfMS5kb25lICYmIChfYTIgPSByZWNvcmRzQ29weV8xLnJldHVybikpIF9hMi5jYWxsKHJlY29yZHNDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlclJlY29yZHMgPT09IG51bGwgfHwgYnVmZmVyUmVjb3JkcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyUmVjb3Jkcy5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlclJlY29yZHMuc2hpZnQoKS5idWZmZXIpOwogICAgICAgICAgfQogICAgICAgICAgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IG51bGwgfHwgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlclRpbWVTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXJSZWNvcmRzID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGJ1ZmZlclRpbWVTdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gYnVmZmVyVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcwp2YXIgcmVxdWlyZV9idWZmZXJUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlclRvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IFtdOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciBidWZmZXIgPSBbXTsKICAgICAgICAgIGJ1ZmZlcnMucHVzaChidWZmZXIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgZW1pdEJ1ZmZlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoYnVmZmVycywgYnVmZmVyKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW1pdEJ1ZmZlciwgbm9vcF8xLm5vb3ApKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnNfMV8xICYmICFidWZmZXJzXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcnNfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcnNfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoYnVmZmVycy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXJzLnNoaWZ0KCkpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUb2dnbGUgPSBidWZmZXJUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJXaGVuLmpzCnZhciByZXF1aXJlX2J1ZmZlcldoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlcldoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlcldoZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gbnVsbDsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXIgPSBudWxsOwogICAgICAgIHZhciBvcGVuQnVmZmVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBiID0gYnVmZmVyOwogICAgICAgICAgYnVmZmVyID0gW107CiAgICAgICAgICBiICYmIHN1YnNjcmliZXIubmV4dChiKTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3IoKSkuc3Vic2NyaWJlKGNsb3NpbmdTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIG9wZW5CdWZmZXIsIG5vb3BfMS5ub29wKSk7CiAgICAgICAgfTsKICAgICAgICBvcGVuQnVmZmVyKCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPT09IG51bGwgfHwgYnVmZmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgJiYgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXIgPSBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlcldoZW4gPSBidWZmZXJXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY2F0Y2hFcnJvci5qcwp2YXIgcmVxdWlyZV9jYXRjaEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBjYXRjaEVycm9yKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWIgPSBudWxsOwogICAgICAgIHZhciBzeW5jVW5zdWIgPSBmYWxzZTsKICAgICAgICB2YXIgaGFuZGxlZFJlc3VsdDsKICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZXJyLCBjYXRjaEVycm9yKHNlbGVjdG9yKShzb3VyY2UpKSk7CiAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2F0Y2hFcnJvciA9IGNhdGNoRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX3NjYW5JbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjYW5JbnRlcm5hbHMgPSB2b2lkIDA7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgaGFzU2VlZCwgZW1pdE9uTmV4dCwgZW1pdEJlZm9yZUNvbXBsZXRlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzU3RhdGUgPSBoYXNTZWVkOwogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGkgPSBpbmRleCsrOwogICAgICAgICAgc3RhdGUgPSBoYXNTdGF0ZSA/IGFjY3VtdWxhdG9yKHN0YXRlLCB2YWx1ZSwgaSkgOiAoaGFzU3RhdGUgPSB0cnVlLCB2YWx1ZSk7CiAgICAgICAgICBlbWl0T25OZXh0ICYmIHN1YnNjcmliZXIubmV4dChzdGF0ZSk7CiAgICAgICAgfSwgZW1pdEJlZm9yZUNvbXBsZXRlICYmIGZ1bmN0aW9uKCkgewogICAgICAgICAgaGFzU3RhdGUgJiYgc3Vic2NyaWJlci5uZXh0KHN0YXRlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5zY2FuSW50ZXJuYWxzID0gc2NhbkludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcwp2YXIgcmVxdWlyZV9yZWR1Y2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVkdWNlID0gdm9pZCAwOwogICAgdmFyIHNjYW5JbnRlcm5hbHNfMSA9IHJlcXVpcmVfc2NhbkludGVybmFscygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gcmVkdWNlKGFjY3VtdWxhdG9yLCBzZWVkKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShzY2FuSW50ZXJuYWxzXzEuc2NhbkludGVybmFscyhhY2N1bXVsYXRvciwgc2VlZCwgYXJndW1lbnRzLmxlbmd0aCA+PSAyLCBmYWxzZSwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIucmVkdWNlID0gcmVkdWNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdG9BcnJheS5qcwp2YXIgcmVxdWlyZV90b0FycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50b0FycmF5ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcnJSZWR1Y2VyID0gZnVuY3Rpb24oYXJyLCB2YWx1ZSkgewogICAgICByZXR1cm4gYXJyLnB1c2godmFsdWUpLCBhcnI7CiAgICB9OwogICAgZnVuY3Rpb24gdG9BcnJheTIoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZWR1Y2VfMS5yZWR1Y2UoYXJyUmVkdWNlciwgW10pKHNvdXJjZSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRvQXJyYXkgPSB0b0FycmF5MjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvam9pbkFsbEludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgZnVuY3Rpb24gam9pbkFsbEludGVybmFscyhqb2luRm4sIHByb2plY3QpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlKHRvQXJyYXlfMTIudG9BcnJheSgpLCBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHNvdXJjZXMpIHsKICAgICAgICByZXR1cm4gam9pbkZuKHNvdXJjZXMpOwogICAgICB9KSwgcHJvamVjdCA/IG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHByb2plY3QpIDogaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gam9pbkFsbEludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdEFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIHZhciBqb2luQWxsSW50ZXJuYWxzXzEgPSByZXF1aXJlX2pvaW5BbGxJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QsIHByb2plY3QpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBleHBvcnRzMi5jb21iaW5lQWxsID0gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHBpcGVfMS5waXBlKGNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSwgbWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0SW5pdChfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKSkpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gY29tYmluZUxhdGVzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RXaXRoLmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0MigpOwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBjb21iaW5lTGF0ZXN0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBjb25jYXRNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlc3VsdFNlbGVjdG9yKSA/IG1lcmdlTWFwXzEubWVyZ2VNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IsIDEpIDogbWVyZ2VNYXBfMS5tZXJnZU1hcChwcm9qZWN0LCAxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcCA9IGNvbmNhdE1hcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcFRvLmpzCnZhciByZXF1aXJlX2NvbmNhdE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gY29uY2F0TWFwXzEuY29uY2F0TWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gY29uY2F0TWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbmNhdEFsbF8xLmNvbmNhdEFsbCgpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXQgPSBjb25jYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzCnZhciByZXF1aXJlX2NvbmNhdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdDIoKTsKICAgIGZ1bmN0aW9uIGNvbmNhdFdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdFdpdGggPSBjb25jYXRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMKdmFyIHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21TdWJzY3JpYmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBmcm9tU3Vic2NyaWJhYmxlKHN1YnNjcmliYWJsZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJhYmxlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gZnJvbVN1YnNjcmliYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMKdmFyIHJlcXVpcmVfY29ubmVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29ubmVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29ubmVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZnJvbVN1YnNjcmliYWJsZV8xID0gcmVxdWlyZV9mcm9tU3Vic2NyaWJhYmxlKCk7CiAgICB2YXIgREVGQVVMVF9DT05GSUcgPSB7CiAgICAgIGNvbm5lY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gY29ubmVjdChzZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIGlmIChjb25maWcgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZyA9IERFRkFVTFRfQ09ORklHOwogICAgICB9CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZnJvbVN1YnNjcmliYWJsZV8xLmZyb21TdWJzY3JpYmFibGUoc3ViamVjdCkpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgc3Vic2NyaWJlci5hZGQoc291cmNlLnN1YnNjcmliZShzdWJqZWN0KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdCA9IGNvbm5lY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcwp2YXIgcmVxdWlyZV9jb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvdW50ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIGZ1bmN0aW9uIGNvdW50KHByZWRpY2F0ZSkgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGZ1bmN0aW9uKHRvdGFsLCB2YWx1ZSwgaSkgewogICAgICAgIHJldHVybiAhcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaSkgPyB0b3RhbCArIDEgOiB0b3RhbDsKICAgICAgfSwgMCk7CiAgICB9CiAgICBleHBvcnRzMi5jb3VudCA9IGNvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2UuanMKdmFyIHJlcXVpcmVfZGVib3VuY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVib3VuY2UoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGVtaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0LCBub29wXzEubm9vcCk7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IGRlYm91bmNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzCnZhciByZXF1aXJlX2RlYm91bmNlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVib3VuY2VUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWJvdW5jZVRpbWUoZHVlVGltZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgbGFzdFRpbWUgPSBudWxsOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGFjdGl2ZVRhc2sgPSBudWxsOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBlbWl0V2hlbklkbGUoKSB7CiAgICAgICAgICB2YXIgdGFyZ2V0VGltZSA9IGxhc3RUaW1lICsgZHVlVGltZTsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAobm93IDwgdGFyZ2V0VGltZSkgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gdGhpcy5zY2hlZHVsZSh2b2lkIDAsIHRhcmdldFRpbWUgLSBub3cpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgZW1pdCgpOwogICAgICAgIH0KICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgICBsYXN0VGltZSA9IHNjaGVkdWxlci5ub3coKTsKICAgICAgICAgIGlmICghYWN0aXZlVGFzaykgewogICAgICAgICAgICBhY3RpdmVUYXNrID0gc2NoZWR1bGVyLnNjaGVkdWxlKGVtaXRXaGVuSWRsZSwgZHVlVGltZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKGFjdGl2ZVRhc2spOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gZGVib3VuY2VUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMKdmFyIHJlcXVpcmVfZGVmYXVsdElmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlZmF1bHRJZkVtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZGVmYXVsdFZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBkZWZhdWx0SWZFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2UuanMKdmFyIHJlcXVpcmVfdGFrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZSA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2UoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCsrc2VlbiA8PSBjb3VudCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICBpZiAoY291bnQgPD0gc2VlbikgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlID0gdGFrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2lnbm9yZUVsZW1lbnRzLmpzCnZhciByZXF1aXJlX2lnbm9yZUVsZW1lbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pZ25vcmVFbGVtZW50cy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZnVuY3Rpb24gaWdub3JlRWxlbWVudHMoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gaWdub3JlRWxlbWVudHM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcwp2YXIgcmVxdWlyZV9tYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIG1hcFRvKHZhbHVlKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hcFRvID0gbWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMKdmFyIHJlcXVpcmVfZGVsYXlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgaWdub3JlRWxlbWVudHNfMSA9IHJlcXVpcmVfaWdub3JlRWxlbWVudHMoKTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3Rvciwgc3Vic2NyaXB0aW9uRGVsYXkpIHsKICAgICAgaWYgKHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzdWJzY3JpcHRpb25EZWxheS5waXBlKHRha2VfMS50YWtlKDEpLCBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzKCkpLCBzb3VyY2UucGlwZShkZWxheVdoZW4oZGVsYXlEdXJhdGlvblNlbGVjdG9yKSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShkZWxheUR1cmF0aW9uU2VsZWN0b3IodmFsdWUsIGluZGV4KSkucGlwZSh0YWtlXzEudGFrZSgxKSwgbWFwVG9fMS5tYXBUbyh2YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IGRlbGF5V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbGF5LmpzCnZhciByZXF1aXJlX2RlbGF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVsYXkgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGRlbGF5KGR1ZSwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uID0gdGltZXJfMS50aW1lcihkdWUsIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGR1cmF0aW9uOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5ID0gZGVsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX2RlbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRlbWF0ZXJpYWxpemUoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihub3RpZmljYXRpb24pIHsKICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5vYnNlcnZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcik7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbWF0ZXJpYWxpemUgPSBkZW1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3QuanMKdmFyIHJlcXVpcmVfZGlzdGluY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGlzdGluY3Qoa2V5U2VsZWN0b3IsIGZsdXNoZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBkaXN0aW5jdEtleXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5U2VsZWN0b3IgPyBrZXlTZWxlY3Rvcih2YWx1ZSkgOiB2YWx1ZTsKICAgICAgICAgIGlmICghZGlzdGluY3RLZXlzLmhhcyhrZXkpKSB7CiAgICAgICAgICAgIGRpc3RpbmN0S2V5cy5hZGQoa2V5KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgZmx1c2hlcyAmJiBpbm5lckZyb21fMS5pbm5lckZyb20oZmx1c2hlcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBkaXN0aW5jdEtleXMuY2xlYXIoKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0ID0gZGlzdGluY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdFVudGlsQ2hhbmdlZC5qcwp2YXIgcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbENoYW5nZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbENoYW5nZWQoY29tcGFyYXRvciwga2V5U2VsZWN0b3IpIHsKICAgICAgaWYgKGtleVNlbGVjdG9yID09PSB2b2lkIDApIHsKICAgICAgICBrZXlTZWxlY3RvciA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgY29tcGFyYXRvciA9IGNvbXBhcmF0b3IgIT09IG51bGwgJiYgY29tcGFyYXRvciAhPT0gdm9pZCAwID8gY29tcGFyYXRvciA6IGRlZmF1bHRDb21wYXJlOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXZpb3VzS2V5OwogICAgICAgIHZhciBmaXJzdCA9IHRydWU7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBjdXJyZW50S2V5ID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgaWYgKGZpcnN0IHx8ICFjb21wYXJhdG9yKHByZXZpb3VzS2V5LCBjdXJyZW50S2V5KSkgewogICAgICAgICAgICBmaXJzdCA9IGZhbHNlOwogICAgICAgICAgICBwcmV2aW91c0tleSA9IGN1cnJlbnRLZXk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZGlzdGluY3RVbnRpbENoYW5nZWQ7CiAgICBmdW5jdGlvbiBkZWZhdWx0Q29tcGFyZShhLCBiKSB7CiAgICAgIHJldHVybiBhID09PSBiOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgZnVuY3Rpb24gZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoa2V5LCBjb21wYXJlKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkKGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZSA/IGNvbXBhcmUoeFtrZXldLCB5W2tleV0pIDogeFtrZXldID09PSB5W2tleV07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcwp2YXIgcmVxdWlyZV90aHJvd0lmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRocm93SWZFbXB0eShlcnJvckZhY3RvcnkpIHsKICAgICAgaWYgKGVycm9yRmFjdG9yeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZXJyb3JGYWN0b3J5ID0gZGVmYXVsdEVycm9yRmFjdG9yeTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaGFzVmFsdWUgPyBzdWJzY3JpYmVyLmNvbXBsZXRlKCkgOiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdGhyb3dJZkVtcHR5OwogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9yRmFjdG9yeSgpIHsKICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzCnZhciByZXF1aXJlX2VsZW1lbnRBdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZWxlbWVudEF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSB2b2lkIDA7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGhyb3dJZkVtcHR5XzEgPSByZXF1aXJlX3Rocm93SWZFbXB0eSgpOwogICAgdmFyIGRlZmF1bHRJZkVtcHR5XzEgPSByZXF1aXJlX2RlZmF1bHRJZkVtcHR5KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICBmdW5jdGlvbiBlbGVtZW50QXQoaW5kZXgsIGRlZmF1bHRWYWx1ZSkgewogICAgICBpZiAoaW5kZXggPCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgfQogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gaSA9PT0gaW5kZXg7CiAgICAgICAgfSksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbGVtZW50QXQgPSBlbGVtZW50QXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzCnZhciByZXF1aXJlX2VuZFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VuZFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVuZFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIG9mXzEgPSByZXF1aXJlX29mKCk7CiAgICBmdW5jdGlvbiBlbmRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQoc291cmNlLCBvZl8xLm9mLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5lbmRXaXRoID0gZW5kV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V2ZXJ5LmpzCnZhciByZXF1aXJlX2V2ZXJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXZlcnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZXZlcnkocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0cnVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXZlcnkgPSBldmVyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMKdmFyIHJlcXVpcmVfZXhoYXVzdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKGV4aGF1c3RNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpLnBpcGUobWFwXzEubWFwKGZ1bmN0aW9uKGIsIGlpKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yKGEsIGIsIGksIGlpKTsKICAgICAgICAgICAgfSkpOwogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgdmFyIGlubmVyU3ViID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG91dGVyVmFsdWUpIHsKICAgICAgICAgIGlmICghaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgICAgaXNDb21wbGV0ZSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdChvdXRlclZhbHVlLCBpbmRleCsrKSkuc3Vic2NyaWJlKGlubmVyU3ViKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgIWlubmVyU3ViICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4aGF1c3RNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzCnZhciByZXF1aXJlX2V4aGF1c3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgZXhoYXVzdE1hcF8xID0gcmVxdWlyZV9leGhhdXN0TWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGV4aGF1c3RBbGwoKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0ID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzCnZhciByZXF1aXJlX2V4cGFuZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhwYW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHBhbmQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbWVyZ2VJbnRlcm5hbHNfMSA9IHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGV4cGFuZChwcm9qZWN0LCBjb25jdXJyZW50LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBjb25jdXJyZW50ID0gKGNvbmN1cnJlbnQgfHwgMCkgPCAxID8gSW5maW5pdHkgOiBjb25jdXJyZW50OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCB2b2lkIDAsIHRydWUsIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXhwYW5kID0gZXhwYW5kOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMKdmFyIHJlcXVpcmVfZmluYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmFsaXplLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIGZpbmFsaXplKGNhbGxiYWNrKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB0cnkgewogICAgICAgICAgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgc3Vic2NyaWJlci5hZGQoY2FsbGJhY2spOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5maW5hbGl6ZSA9IGZpbmFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZC5qcwp2YXIgcmVxdWlyZV9maW5kID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVGaW5kID0gZXhwb3J0czIuZmluZCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaW5kKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJ2YWx1ZSIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmQgPSBmaW5kOwogICAgZnVuY3Rpb24gY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsIGVtaXQpIHsKICAgICAgdmFyIGZpbmRJbmRleCA9IGVtaXQgPT09ICJpbmRleCI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBpZiAocHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGksIHNvdXJjZSkpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGZpbmRJbmRleCA/IGkgOiB2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyAtMSA6IHZvaWQgMCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGNyZWF0ZUZpbmQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMKdmFyIHJlcXVpcmVfZmluZEluZGV4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kSW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBmaW5kXzEgPSByZXF1aXJlX2ZpbmQoKTsKICAgIGZ1bmN0aW9uIGZpbmRJbmRleChwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZpbmRfMS5jcmVhdGVGaW5kKHByZWRpY2F0ZSwgdGhpc0FyZywgImluZGV4IikpOwogICAgfQogICAgZXhwb3J0czIuZmluZEluZGV4ID0gZmluZEluZGV4OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMKdmFyIHJlcXVpcmVfZmlyc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpcnN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdCA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIGZpcnN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VfMS50YWtlKDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZmlyc3QgPSBmaXJzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2dyb3VwQnkuanMKdmFyIHJlcXVpcmVfZ3JvdXBCeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZ3JvdXBCeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ3JvdXBCeSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZ3JvdXBCeShrZXlTZWxlY3RvciwgZWxlbWVudE9yT3B0aW9ucywgZHVyYXRpb24sIGNvbm5lY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVsZW1lbnQ7CiAgICAgICAgaWYgKCFlbGVtZW50T3JPcHRpb25zIHx8IHR5cGVvZiBlbGVtZW50T3JPcHRpb25zID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9uczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZHVyYXRpb24gPSBlbGVtZW50T3JPcHRpb25zLmR1cmF0aW9uLCBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9ucy5lbGVtZW50LCBjb25uZWN0b3IgPSBlbGVtZW50T3JPcHRpb25zLmNvbm5lY3RvcjsKICAgICAgICB9CiAgICAgICAgdmFyIGdyb3VwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgdmFyIG5vdGlmeSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBncm91cHMuZm9yRWFjaChjYik7CiAgICAgICAgICBjYihzdWJzY3JpYmVyKTsKICAgICAgICB9OwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgICAgdmFyIGFjdGl2ZUdyb3VwcyA9IDA7CiAgICAgICAgdmFyIHRlYXJkb3duQXR0ZW1wdGVkID0gZmFsc2U7CiAgICAgICAgdmFyIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyID0gbmV3IE9wZXJhdG9yU3Vic2NyaWJlcl8xLk9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGtleV8xID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgICB2YXIgZ3JvdXBfMSA9IGdyb3Vwcy5nZXQoa2V5XzEpOwogICAgICAgICAgICBpZiAoIWdyb3VwXzEpIHsKICAgICAgICAgICAgICBncm91cHMuc2V0KGtleV8xLCBncm91cF8xID0gY29ubmVjdG9yID8gY29ubmVjdG9yKCkgOiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgICAgICAgdmFyIGdyb3VwZWQgPSBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXlfMSwgZ3JvdXBfMSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGdyb3VwZWQpOwogICAgICAgICAgICAgIGlmIChkdXJhdGlvbikgewogICAgICAgICAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGdyb3VwXzEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBncm91cF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICByZXR1cm4gZ3JvdXBzLmRlbGV0ZShrZXlfMSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb24oZ3JvdXBlZCkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXJfMSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBncm91cF8xLm5leHQoZWxlbWVudCA/IGVsZW1lbnQodmFsdWUpIDogdmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbm90aWZ5KGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGdyb3Vwcy5jbGVhcigpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdGVhcmRvd25BdHRlbXB0ZWQgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIGFjdGl2ZUdyb3VwcyA9PT0gMDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyKTsKICAgICAgICBmdW5jdGlvbiBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXksIGdyb3VwU3ViamVjdCkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihncm91cFN1YnNjcmliZXIpIHsKICAgICAgICAgICAgYWN0aXZlR3JvdXBzKys7CiAgICAgICAgICAgIHZhciBpbm5lclN1YiA9IGdyb3VwU3ViamVjdC5zdWJzY3JpYmUoZ3JvdXBTdWJzY3JpYmVyKTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgLS1hY3RpdmVHcm91cHMgPT09IDAgJiYgdGVhcmRvd25BdHRlbXB0ZWQgJiYgZ3JvdXBCeVNvdXJjZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmVzdWx0LmtleSA9IGtleTsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmdyb3VwQnkgPSBncm91cEJ5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcwp2YXIgcmVxdWlyZV9pc0VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pc0VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGlzRW1wdHkoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodHJ1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlzRW1wdHkgPSBpc0VtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMKdmFyIHJlcXVpcmVfdGFrZUxhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2VMYXN0KGNvdW50KSB7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgIGNvdW50IDwgYnVmZmVyLmxlbmd0aCAmJiBidWZmZXIuc2hpZnQoKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyXzEgPSBfX3ZhbHVlcyhidWZmZXIpLCBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpOyAhYnVmZmVyXzFfMS5kb25lOyBidWZmZXJfMV8xID0gYnVmZmVyXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHZhbHVlID0gYnVmZmVyXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyXzFfMSAmJiAhYnVmZmVyXzFfMS5kb25lICYmIChfYSA9IGJ1ZmZlcl8xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlTGFzdCA9IHRha2VMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbGFzdC5qcwp2YXIgcmVxdWlyZV9sYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9sYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBsYXN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VMYXN0XzEudGFrZUxhc3QoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5sYXN0ID0gbGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX21hdGVyaWFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXRlcmlhbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWF0ZXJpYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgTm90aWZpY2F0aW9uXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hdGVyaWFsaXplKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlTmV4dCh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbi5jcmVhdGVDb21wbGV0ZSgpKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlRXJyb3IoZXJyKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gbWF0ZXJpYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMKdmFyIHJlcXVpcmVfbWF4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1heCA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtYXgoY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpID4gMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4ID4geSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1heCA9IG1heDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZsYXRNYXAuanMKdmFyIHJlcXVpcmVfZmxhdE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmxhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IG1lcmdlTWFwXzEubWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzCnZhciByZXF1aXJlX21lcmdlTWFwVG8gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1lcmdlTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgICAgfSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIGNvbmN1cnJlbnQpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VNYXBUbyA9IG1lcmdlTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMKdmFyIHJlcXVpcmVfbWVyZ2VTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlU2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBtZXJnZUludGVybmFsc18xID0gcmVxdWlyZV9tZXJnZUludGVybmFscygpOwogICAgZnVuY3Rpb24gbWVyZ2VTY2FuKGFjY3VtdWxhdG9yLCBzZWVkLCBjb25jdXJyZW50KSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdGF0ZSA9IHNlZWQ7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcihzdGF0ZSwgdmFsdWUsIGluZGV4KTsKICAgICAgICB9LCBjb25jdXJyZW50LCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc3RhdGUgPSB2YWx1ZTsKICAgICAgICB9LCBmYWxzZSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdGF0ZSA9IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VTY2FuID0gbWVyZ2VTY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UyKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgYXJncyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcwp2YXIgcmVxdWlyZV9tZXJnZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gdm9pZCAwOwogICAgdmFyIG1lcmdlXzEgPSByZXF1aXJlX21lcmdlMigpOwogICAgZnVuY3Rpb24gbWVyZ2VXaXRoMigpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlV2l0aCA9IG1lcmdlV2l0aDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMKdmFyIHJlcXVpcmVfbWluID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1pbiA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtaW4oY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpIDwgMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4IDwgeSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1pbiA9IG1pbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcwp2YXIgcmVxdWlyZV9tdWx0aWNhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL211bHRpY2FzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubXVsdGljYXN0ID0gdm9pZCAwOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIG11bHRpY2FzdChzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSwgc2VsZWN0b3IpIHsKICAgICAgdmFyIHN1YmplY3RGYWN0b3J5ID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc3ViamVjdE9yU3ViamVjdEZhY3RvcnkpID8gc3ViamVjdE9yU3ViamVjdEZhY3RvcnkgOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc3ViamVjdE9yU3ViamVjdEZhY3Rvcnk7CiAgICAgIH07CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Qoc2VsZWN0b3IsIHsKICAgICAgICAgIGNvbm5lY3Rvcjogc3ViamVjdEZhY3RvcnkKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGUoc291cmNlLCBzdWJqZWN0RmFjdG9yeSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tdWx0aWNhc3QgPSBtdWx0aWNhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMKdmFyIHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0V2l0aCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIG5leHRTb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShzb3VyY2VzKTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKG5leHRTb3VyY2VzKSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gb25FcnJvclJlc3VtZU5leHRXaXRoOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wYWlyd2lzZS5qcwp2YXIgcmVxdWlyZV9wYWlyd2lzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJ3aXNlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHBhaXJ3aXNlKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXY7CiAgICAgICAgdmFyIGhhc1ByZXYgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHAgPSBwcmV2OwogICAgICAgICAgcHJldiA9IHZhbHVlOwogICAgICAgICAgaGFzUHJldiAmJiBzdWJzY3JpYmVyLm5leHQoW3AsIHZhbHVlXSk7CiAgICAgICAgICBoYXNQcmV2ID0gdHJ1ZTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGFpcndpc2UgPSBwYWlyd2lzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BsdWNrLmpzCnZhciByZXF1aXJlX3BsdWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wbHVjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGx1Y2sgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgZnVuY3Rpb24gcGx1Y2soKSB7CiAgICAgIHZhciBwcm9wZXJ0aWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgcHJvcGVydGllc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBsZW5ndGggPSBwcm9wZXJ0aWVzLmxlbmd0aDsKICAgICAgaWYgKGxlbmd0aCA9PT0gMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigibGlzdCBvZiBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBlbXB0eS4iKTsKICAgICAgfQogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKHgpIHsKICAgICAgICB2YXIgY3VycmVudFByb3AgPSB4OwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHZhciBwID0gY3VycmVudFByb3AgPT09IG51bGwgfHwgY3VycmVudFByb3AgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGN1cnJlbnRQcm9wW3Byb3BlcnRpZXNbaV1dOwogICAgICAgICAgaWYgKHR5cGVvZiBwICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgICBjdXJyZW50UHJvcCA9IHA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY3VycmVudFByb3A7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGx1Y2sgPSBwbHVjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2guanMKdmFyIHJlcXVpcmVfcHVibGlzaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBzZWxlY3RvciA/IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdChzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfSA6IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBtdWx0aWNhc3RfMS5tdWx0aWNhc3QobmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpKHNvdXJjZSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoID0gcHVibGlzaDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaEJlaGF2aW9yID0gdm9pZCAwOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdF8xID0gcmVxdWlyZV9CZWhhdmlvclN1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoQmVoYXZpb3IoaW5pdGlhbFZhbHVlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3QoaW5pdGlhbFZhbHVlKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBwdWJsaXNoQmVoYXZpb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoTGFzdC5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoTGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaExhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU3ViamVjdF8xID0gcmVxdWlyZV9Bc3luY1N1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoTGFzdCgpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3ViamVjdDsKICAgICAgICB9KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hMYXN0ID0gcHVibGlzaExhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoUmVwbGF5LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hSZXBsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSB2b2lkIDA7CiAgICB2YXIgUmVwbGF5U3ViamVjdF8xID0gcmVxdWlyZV9SZXBsYXlTdWJqZWN0KCk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gcHVibGlzaFJlcGxheShidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzZWxlY3Rvck9yU2NoZWR1bGVyLCB0aW1lc3RhbXBQcm92aWRlcikgewogICAgICBpZiAoc2VsZWN0b3JPclNjaGVkdWxlciAmJiAhaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICB0aW1lc3RhbXBQcm92aWRlciA9IHNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIHNlbGVjdG9yID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3JPclNjaGVkdWxlcikgPyBzZWxlY3Rvck9yU2NoZWR1bGVyIDogdm9pZCAwOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIpLCBzZWxlY3Rvcikoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBwdWJsaXNoUmVwbGF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmFjZVdpdGguanMKdmFyIHJlcXVpcmVfcmFjZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHZvaWQgMDsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcmFjZVdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gIW90aGVyU291cmNlcy5sZW5ndGggPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmFjZV8xLnJhY2VJbml0KF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChvdGhlclNvdXJjZXMpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFjZVdpdGggPSByYWNlV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcwp2YXIgcmVxdWlyZV9yZXBlYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVwZWF0ID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gcmVwZWF0Mihjb3VudE9yQ29uZmlnKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIGNvdW50ID0gSW5maW5pdHk7CiAgICAgIHZhciBkZWxheTsKICAgICAgaWYgKGNvdW50T3JDb25maWcgIT0gbnVsbCkgewogICAgICAgIGlmICh0eXBlb2YgY291bnRPckNvbmZpZyA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIF9hID0gY291bnRPckNvbmZpZy5jb3VudCwgY291bnQgPSBfYSA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYSwgZGVsYXkgPSBjb3VudE9yQ29uZmlnLmRlbGF5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb3VudCA9IGNvdW50T3JDb25maWc7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc29GYXIgPSAwOwogICAgICAgIHZhciBzb3VyY2VTdWI7CiAgICAgICAgdmFyIHJlc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzb3VyY2VTdWIgPT09IG51bGwgfHwgc291cmNlU3ViID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2VTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNvdXJjZVN1YiA9IG51bGw7CiAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoc29GYXIpKTsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIG5vdGlmaWVyU3Vic2NyaWJlcl8xLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG5vdGlmaWVyLnN1YnNjcmliZShub3RpZmllclN1YnNjcmliZXJfMSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZVRvU291cmNlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoKytzb0ZhciA8IGNvdW50KSB7CiAgICAgICAgICAgICAgaWYgKHNvdXJjZVN1YikgewogICAgICAgICAgICAgICAgcmVzdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Vuc3ViKSB7CiAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdCA9IHJlcGVhdDI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXRXaGVuLmpzCnZhciByZXF1aXJlX3JlcGVhdFdoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmV0cnkuanMKdmFyIHJlcXVpcmVfcmV0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXRyeSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHJldHJ5KGNvbmZpZ09yQ291bnQpIHsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZ09yQ291bnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICB2YXIgY29uZmlnOwogICAgICBpZiAoY29uZmlnT3JDb3VudCAmJiB0eXBlb2YgY29uZmlnT3JDb3VudCA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25maWcgPSBjb25maWdPckNvdW50OwogICAgICB9IGVsc2UgewogICAgICAgIGNvbmZpZyA9IHsKICAgICAgICAgIGNvdW50OiBjb25maWdPckNvdW50CiAgICAgICAgfTsKICAgICAgfQogICAgICB2YXIgX2EgPSBjb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY29uZmlnLmRlbGF5LCBfYiA9IGNvbmZpZy5yZXNldE9uU3VjY2VzcywgcmVzZXRPblN1Y2Nlc3MgPSBfYiA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYjsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChyZXNldE9uU3VjY2VzcykgewogICAgICAgICAgICAgIHNvRmFyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgaWYgKHNvRmFyKysgPCBjb3VudCkgewogICAgICAgICAgICAgIHZhciByZXN1Yl8xID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGlmIChkZWxheSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoZXJyLCBzb0ZhcikpOwogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5KCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJldHJ5ID0gcmV0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJldHJ5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmV0cnlXaGVuKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN5bmNSZXN1YiA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvcnMkOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeVdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBpZiAoIWVycm9ycyQpIHsKICAgICAgICAgICAgICBlcnJvcnMkID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG5vdGlmaWVyKGVycm9ycyQpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyU3ViID8gc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCkgOiBzeW5jUmVzdWIgPSB0cnVlOwogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQubmV4dChlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Jlc3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmV0cnlXaGVuID0gcmV0cnlXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzCnZhciByZXF1aXJlX3NhbXBsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGVUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgdmFyIGludGVydmFsXzEgPSByZXF1aXJlX2ludGVydmFsKCk7CiAgICBmdW5jdGlvbiBzYW1wbGVUaW1lKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZShpbnRlcnZhbF8xLmludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gc2FtcGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBzY2FuSW50ZXJuYWxzXzEgPSByZXF1aXJlX3NjYW5JbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIHNjYW4oYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW4gPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2VxdWVuY2VFcXVhbC5qcwp2YXIgcmVxdWlyZV9zZXF1ZW5jZUVxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NoYXJlLmpzCnZhciByZXF1aXJlX3NoYXJlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc2hhcmUob3B0aW9ucykgewogICAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7CiAgICAgICAgb3B0aW9ucyA9IHt9OwogICAgICB9CiAgICAgIHZhciBfYSA9IG9wdGlvbnMuY29ubmVjdG9yLCBjb25uZWN0b3IgPSBfYSA9PT0gdm9pZCAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9IDogX2EsIF9iID0gb3B0aW9ucy5yZXNldE9uRXJyb3IsIHJlc2V0T25FcnJvciA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gb3B0aW9ucy5yZXNldE9uQ29tcGxldGUsIHJlc2V0T25Db21wbGV0ZSA9IF9jID09PSB2b2lkIDAgPyB0cnVlIDogX2MsIF9kID0gb3B0aW9ucy5yZXNldE9uUmVmQ291bnRaZXJvLCByZXNldE9uUmVmQ291bnRaZXJvID0gX2QgPT09IHZvaWQgMCA/IHRydWUgOiBfZDsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHdyYXBwZXJTb3VyY2UpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbjsKICAgICAgICB2YXIgcmVzZXRDb25uZWN0aW9uOwogICAgICAgIHZhciBzdWJqZWN0OwogICAgICAgIHZhciByZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIGhhc0NvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIHZhciBoYXNFcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGNhbmNlbFJlc2V0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPT09IG51bGwgfHwgcmVzZXRDb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZXNldENvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IHZvaWQgMDsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIGNvbm5lY3Rpb24gPSBzdWJqZWN0ID0gdm9pZCAwOwogICAgICAgICAgaGFzQ29tcGxldGVkID0gaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIH07CiAgICAgICAgdmFyIHJlc2V0QW5kVW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBjb25uID0gY29ubmVjdGlvbjsKICAgICAgICAgIHJlc2V0KCk7CiAgICAgICAgICBjb25uID09PSBudWxsIHx8IGNvbm4gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbm4udW5zdWJzY3JpYmUoKTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICAgIHJlZkNvdW50Kys7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yZWQgJiYgIWhhc0NvbXBsZXRlZCkgewogICAgICAgICAgICBjYW5jZWxSZXNldCgpOwogICAgICAgICAgfQogICAgICAgICAgdmFyIGRlc3QgPSBzdWJqZWN0ID0gc3ViamVjdCAhPT0gbnVsbCAmJiBzdWJqZWN0ICE9PSB2b2lkIDAgPyBzdWJqZWN0IDogY29ubmVjdG9yKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmVmQ291bnQtLTsKICAgICAgICAgICAgaWYgKHJlZkNvdW50ID09PSAwICYmICFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldEFuZFVuc3Vic2NyaWJlLCByZXNldE9uUmVmQ291bnRaZXJvKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBkZXN0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIGlmICghY29ubmVjdGlvbiAmJiByZWZDb3VudCA+IDApIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgICAgIGhhc0Vycm9yZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uRXJyb3IsIGVycik7CiAgICAgICAgICAgICAgICBkZXN0LmVycm9yKGVycik7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBoYXNDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uQ29tcGxldGUpOwogICAgICAgICAgICAgICAgZGVzdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpLnN1YnNjcmliZShjb25uZWN0aW9uKTsKICAgICAgICAgIH0KICAgICAgICB9KSh3cmFwcGVyU291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNoYXJlID0gc2hhcmU7CiAgICBmdW5jdGlvbiBoYW5kbGVSZXNldChyZXNldCwgb24pIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAyOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gdHJ1ZSkgewogICAgICAgIHJlc2V0KCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gZmFsc2UpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdmFyIG9uU3Vic2NyaWJlciA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldCgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20ob24uYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSkuc3Vic2NyaWJlKG9uU3Vic2NyaWJlcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmVSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlUmVwbGF5ID0gdm9pZCAwOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgdmFyIHNoYXJlXzEgPSByZXF1aXJlX3NoYXJlKCk7CiAgICBmdW5jdGlvbiBzaGFyZVJlcGxheShjb25maWdPckJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIGJ1ZmZlclNpemU7CiAgICAgIHZhciByZWZDb3VudCA9IGZhbHNlOwogICAgICBpZiAoY29uZmlnT3JCdWZmZXJTaXplICYmIHR5cGVvZiBjb25maWdPckJ1ZmZlclNpemUgPT09ICJvYmplY3QiKSB7CiAgICAgICAgX2EgPSBjb25maWdPckJ1ZmZlclNpemUuYnVmZmVyU2l6ZSwgYnVmZmVyU2l6ZSA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBfYiA9IGNvbmZpZ09yQnVmZmVyU2l6ZS53aW5kb3dUaW1lLCB3aW5kb3dUaW1lID0gX2IgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2IsIF9jID0gY29uZmlnT3JCdWZmZXJTaXplLnJlZkNvdW50LCByZWZDb3VudCA9IF9jID09PSB2b2lkIDAgPyBmYWxzZSA6IF9jLCBzY2hlZHVsZXIgPSBjb25maWdPckJ1ZmZlclNpemUuc2NoZWR1bGVyOwogICAgICB9IGVsc2UgewogICAgICAgIGJ1ZmZlclNpemUgPSBjb25maWdPckJ1ZmZlclNpemUgIT09IG51bGwgJiYgY29uZmlnT3JCdWZmZXJTaXplICE9PSB2b2lkIDAgPyBjb25maWdPckJ1ZmZlclNpemUgOiBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZSh7CiAgICAgICAgY29ubmVjdG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTsKICAgICAgICB9LAogICAgICAgIHJlc2V0T25FcnJvcjogdHJ1ZSwKICAgICAgICByZXNldE9uQ29tcGxldGU6IGZhbHNlLAogICAgICAgIHJlc2V0T25SZWZDb3VudFplcm86IHJlZkNvdW50CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBzaGFyZVJlcGxheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcwp2YXIgcmVxdWlyZV9zaW5nbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzCnZhciByZXF1aXJlX3NraXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXAgPSB2b2lkIDA7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgZnVuY3Rpb24gc2tpcChjb3VudCkgewogICAgICByZXR1cm4gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKF8sIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGNvdW50IDw9IGluZGV4OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXAgPSBza2lwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNraXBMYXN0KHNraXBDb3VudCkgewogICAgICByZXR1cm4gc2tpcENvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHJpbmcgPSBuZXcgQXJyYXkoc2tpcENvdW50KTsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciB2YWx1ZUluZGV4ID0gc2VlbisrOwogICAgICAgICAgaWYgKHZhbHVlSW5kZXggPCBza2lwQ291bnQpIHsKICAgICAgICAgICAgcmluZ1t2YWx1ZUluZGV4XSA9IHZhbHVlOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGluZGV4ID0gdmFsdWVJbmRleCAlIHNraXBDb3VudDsKICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gcmluZ1tpbmRleF07CiAgICAgICAgICAgIHJpbmdbaW5kZXhdID0gdmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChvbGRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJpbmcgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcExhc3QgPSBza2lwTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcwp2YXIgcmVxdWlyZV9za2lwVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMKdmFyIHJlcXVpcmVfc2tpcFdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBza2lwV2hpbGUocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgdGFraW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuICh0YWtpbmcgfHwgKHRha2luZyA9ICFwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspKSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcFdoaWxlID0gc2tpcFdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3RhcnRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIodmFsdWVzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIChzY2hlZHVsZXIgPyBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UsIHNjaGVkdWxlcikgOiBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3RhcnRXaXRoID0gc3RhcnRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMKdmFyIHJlcXVpcmVfc3dpdGNoQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaEFsbCgpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHN3aXRjaEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gc3dpdGNoTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IHN3aXRjaE1hcF8xLnN3aXRjaE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gc3dpdGNoTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hTY2FuLmpzCnZhciByZXF1aXJlX3N3aXRjaFNjYW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcwp2YXIgcmVxdWlyZV90YWtlVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiB0YWtlVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlVW50aWwgPSB0YWtlVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlV2hpbGUocHJlZGljYXRlLCBpbmNsdXNpdmUpIHsKICAgICAgaWYgKGluY2x1c2l2ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgaW5jbHVzaXZlID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspOwogICAgICAgICAgKHJlc3VsdCB8fCBpbmNsdXNpdmUpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAhcmVzdWx0ICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdGFrZVdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzCnZhciByZXF1aXJlX3RhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGUuanMKdmFyIHJlcXVpcmVfdGhyb3R0bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm90dGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gdGhyb3R0bGUoZHVyYXRpb25TZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSBjb25maWcgIT09IG51bGwgJiYgY29uZmlnICE9PSB2b2lkIDAgPyBjb25maWcgOiB7fSwgX2IgPSBfYS5sZWFkaW5nLCBsZWFkaW5nID0gX2IgPT09IHZvaWQgMCA/IHRydWUgOiBfYiwgX2MgPSBfYS50cmFpbGluZywgdHJhaWxpbmcgPSBfYyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYzsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgc2VuZFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmRUaHJvdHRsaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB0aHJvdHRsZWQgPT09IG51bGwgfHwgdGhyb3R0bGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aHJvdHRsZWQudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpZiAodHJhaWxpbmcpIHsKICAgICAgICAgICAgc2VuZCgpOwogICAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0VGhyb3R0bGUgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRocm90dGxlZCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmRUaHJvdHRsaW5nLCBjbGVhbnVwVGhyb3R0bGluZykpOwogICAgICAgIH07CiAgICAgICAgdmFyIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBzZW5kVmFsdWU7CiAgICAgICAgICAgIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICFpc0NvbXBsZXRlICYmIHN0YXJ0VGhyb3R0bGUodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHNlbmRWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgISh0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIChsZWFkaW5nID8gc2VuZCgpIDogc3RhcnRUaHJvdHRsZSh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaXNDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAhKHRyYWlsaW5nICYmIGhhc1ZhbHVlICYmIHRocm90dGxlZCAmJiAhdGhyb3R0bGVkLmNsb3NlZCkgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHRocm90dGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiB0aHJvdHRsZVRpbWUoZHVyYXRpb24sIHNjaGVkdWxlciwgY29uZmlnKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uJCA9IHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbiQ7CiAgICAgIH0sIGNvbmZpZyk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB0aHJvdHRsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfdGltZUludGVydmFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0V2l0aC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIHRpbWVvdXRfMSA9IHJlcXVpcmVfdGltZW91dCgpOwogICAgZnVuY3Rpb24gdGltZW91dFdpdGgoZHVlLCB3aXRoT2JzZXJ2YWJsZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBmaXJzdDsKICAgICAgdmFyIGVhY2g7CiAgICAgIHZhciBfd2l0aDsKICAgICAgc2NoZWR1bGVyID0gc2NoZWR1bGVyICE9PSBudWxsICYmIHNjaGVkdWxlciAhPT0gdm9pZCAwID8gc2NoZWR1bGVyIDogYXN5bmNfMS5hc3luYzsKICAgICAgaWYgKGlzRGF0ZV8xLmlzVmFsaWREYXRlKGR1ZSkpIHsKICAgICAgICBmaXJzdCA9IGR1ZTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZHVlID09PSAibnVtYmVyIikgewogICAgICAgIGVhY2ggPSBkdWU7CiAgICAgIH0KICAgICAgaWYgKHdpdGhPYnNlcnZhYmxlKSB7CiAgICAgICAgX3dpdGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB3aXRoT2JzZXJ2YWJsZTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9ic2VydmFibGUgcHJvdmlkZWQgdG8gc3dpdGNoIHRvIik7CiAgICAgIH0KICAgICAgaWYgKGZpcnN0ID09IG51bGwgJiYgZWFjaCA9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gdGltZW91dCBwcm92aWRlZC4iKTsKICAgICAgfQogICAgICByZXR1cm4gdGltZW91dF8xLnRpbWVvdXQoewogICAgICAgIGZpcnN0LAogICAgICAgIGVhY2gsCiAgICAgICAgc2NoZWR1bGVyLAogICAgICAgIHdpdGg6IF93aXRoCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dFdpdGggPSB0aW1lb3V0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXN0YW1wID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiB0aW1lc3RhbXAyKHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmICh0aW1lc3RhbXBQcm92aWRlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGltZXN0YW1wUHJvdmlkZXIgPSBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMS5kYXRlVGltZXN0YW1wUHJvdmlkZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHJldHVybiB7IHZhbHVlLCB0aW1lc3RhbXA6IHRpbWVzdGFtcFByb3ZpZGVyLm5vdygpIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZXN0YW1wID0gdGltZXN0YW1wMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcwp2YXIgcmVxdWlyZV93aW5kb3cgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvdy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiB3aW5kb3cyKHdpbmRvd0JvdW5kYXJpZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHZhciBlcnJvckhhbmRsZXIgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93U3ViamVjdCA9PT0gbnVsbCB8fCB3aW5kb3dTdWJqZWN0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiB3aW5kb3dTdWJqZWN0Lm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGVycm9ySGFuZGxlcikpOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbSh3aW5kb3dCb3VuZGFyaWVzKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93U3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd1N1YmplY3QgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3AsIGVycm9ySGFuZGxlcikpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93U3ViamVjdCA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3cgPSB3aW5kb3cyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMKdmFyIHJlcXVpcmVfd2luZG93Q291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd0NvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dDb3VudCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dDb3VudCh3aW5kb3dTaXplLCBzdGFydFdpbmRvd0V2ZXJ5KSB7CiAgICAgIGlmIChzdGFydFdpbmRvd0V2ZXJ5ID09PSB2b2lkIDApIHsKICAgICAgICBzdGFydFdpbmRvd0V2ZXJ5ID0gMDsKICAgICAgfQogICAgICB2YXIgc3RhcnRFdmVyeSA9IHN0YXJ0V2luZG93RXZlcnkgPiAwID8gc3RhcnRXaW5kb3dFdmVyeSA6IHdpbmRvd1NpemU7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtuZXcgU3ViamVjdF8xLlN1YmplY3QoKV07CiAgICAgICAgdmFyIHN0YXJ0cyA9IFtdOwogICAgICAgIHZhciBjb3VudCA9IDA7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd3NbMF0uYXNPYnNlcnZhYmxlKCkpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIHdpbmRvd3NfMSA9IF9fdmFsdWVzKHdpbmRvd3MpLCB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCk7ICF3aW5kb3dzXzFfMS5kb25lOyB3aW5kb3dzXzFfMSA9IHdpbmRvd3NfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NfMV8xICYmICF3aW5kb3dzXzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgYyA9IGNvdW50IC0gd2luZG93U2l6ZSArIDE7CiAgICAgICAgICBpZiAoYyA+PSAwICYmIGMgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCsrY291bnQgJSBzdGFydEV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93XzIpOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93XzIuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKHdpbmRvd3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICh3aW5kb3dzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGFydHMgPSBudWxsOwogICAgICAgICAgd2luZG93cyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpbmRvd0NvdW50ID0gd2luZG93Q291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUaW1lLmpzCnZhciByZXF1aXJlX3dpbmRvd1RpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUaW1lKHdpbmRvd1RpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhXaW5kb3dTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd1JlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uQ2xvc2UgPSBmYWxzZTsKICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gcmVjb3JkLndpbmRvdywgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd1JlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSAmJiBzdGFydFdpbmRvdygpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0V2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAod2luZG93UmVjb3JkcykgewogICAgICAgICAgICB2YXIgc3VicyA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoc3Vicyk7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgd2luZG93OiB3aW5kb3dfMSwKICAgICAgICAgICAgICBzdWJzLAogICAgICAgICAgICAgIHNlZW46IDAKICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93UmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18xLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNsb3NlV2luZG93KHJlY29yZF8xKTsKICAgICAgICAgICAgfSwgd2luZG93VGltZVNwYW4pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgaWYgKHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgIT09IG51bGwgJiYgd2luZG93Q3JlYXRpb25JbnRlcnZhbCA+PSAwKSB7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBzdGFydFdpbmRvdywgd2luZG93Q3JlYXRpb25JbnRlcnZhbCwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3RhcnRPbkNsb3NlID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRXaW5kb3coKTsKICAgICAgICB2YXIgbG9vcCA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93UmVjb3Jkcy5zbGljZSgpLmZvckVhY2goY2IpOwogICAgICAgIH07CiAgICAgICAgdmFyIHRlcm1pbmF0ZSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBsb29wKGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgICB2YXIgd2luZG93MiA9IF9hMi53aW5kb3c7CiAgICAgICAgICAgIHJldHVybiBjYih3aW5kb3cyKTsKICAgICAgICAgIH0pOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbG9vcChmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgICAgcmVjb3JkLndpbmRvdy5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgbWF4V2luZG93U2l6ZSA8PSArK3JlY29yZC5zZWVuICYmIGNsb3NlV2luZG93KHJlY29yZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93UmVjb3JkcyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gd2luZG93VGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUb2dnbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RvZ2dsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1RvZ2dsZShvcGVuaW5ncywgY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93cyA9IFtdOwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvcGVuaW5ncykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvcGVuVmFsdWUpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICB3aW5kb3dzLnB1c2god2luZG93Mik7CiAgICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBjbG9zZVdpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUod2luZG93cywgd2luZG93Mik7CiAgICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKG9wZW5WYWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24uYWRkKGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGNsb3NlV2luZG93LCBub29wXzEubm9vcCwgaGFuZGxlRXJyb3IpKSk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB2YXIgd2luZG93c0NvcHkgPSB3aW5kb3dzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciB3aW5kb3dzQ29weV8xID0gX192YWx1ZXMod2luZG93c0NvcHkpLCB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKTsgIXdpbmRvd3NDb3B5XzFfMS5kb25lOyB3aW5kb3dzQ29weV8xXzEgPSB3aW5kb3dzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IHdpbmRvd3NDb3B5XzFfMS52YWx1ZTsKICAgICAgICAgICAgICB3aW5kb3dfMS5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHdpbmRvd3NDb3B5XzFfMSAmJiAhd2luZG93c0NvcHlfMV8xLmRvbmUgJiYgKF9hID0gd2luZG93c0NvcHlfMS5yZXR1cm4pKSBfYS5jYWxsKHdpbmRvd3NDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBoYW5kbGVFcnJvciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoMCA8IHdpbmRvd3MubGVuZ3RoKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUb2dnbGUgPSB3aW5kb3dUb2dnbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzCnZhciByZXF1aXJlX3dpbmRvd1doZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1doZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1doZW4gPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHdpbmRvd1doZW4oY2xvc2luZ1NlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93MjsKICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmliZXI7CiAgICAgICAgdmFyIGhhbmRsZUVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3cyLmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICB2YXIgb3BlbldpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID09PSBudWxsIHx8IHdpbmRvdzIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHdpbmRvdzIgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3cyLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIHZhciBjbG9zaW5nTm90aWZpZXI7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjbG9zaW5nTm90aWZpZXIgPSBpbm5lckZyb21fMS5pbm5lckZyb20oY2xvc2luZ1NlbGVjdG9yKCkpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNsb3NpbmdOb3RpZmllci5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbldpbmRvdywgb3BlbldpbmRvdywgaGFuZGxlRXJyb3IpKTsKICAgICAgICB9OwogICAgICAgIG9wZW5XaW5kb3coKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvdzIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgY2xvc2luZ1N1YnNjcmliZXIgPT09IG51bGwgfHwgY2xvc2luZ1N1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsb3NpbmdTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB3aW5kb3cyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93V2hlbiA9IHdpbmRvd1doZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aXRoTGF0ZXN0RnJvbS5qcwp2YXIgcmVxdWlyZV93aXRoTGF0ZXN0RnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIGZ1bmN0aW9uIHdpdGhMYXRlc3RGcm9tKCkgewogICAgICB2YXIgaW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgaW5wdXRzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHByb2plY3QgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoaW5wdXRzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBsZW4gPSBpbnB1dHMubGVuZ3RoOwogICAgICAgIHZhciBvdGhlclZhbHVlcyA9IG5ldyBBcnJheShsZW4pOwogICAgICAgIHZhciBoYXNWYWx1ZSA9IGlucHV0cy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlYWR5ID0gZmFsc2U7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0c1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgb3RoZXJWYWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgIGlmICghcmVhZHkgJiYgIWhhc1ZhbHVlW2kyXSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlW2kyXSA9IHRydWU7CiAgICAgICAgICAgICAgKHJlYWR5ID0gaGFzVmFsdWUuZXZlcnkoaWRlbnRpdHlfMS5pZGVudGl0eSkpICYmIChoYXNWYWx1ZSA9IG51bGwpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgX2xvb3BfMShpKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmIChyZWFkeSkgewogICAgICAgICAgICB2YXIgdmFsdWVzID0gX19zcHJlYWRBcnJheShbdmFsdWVdLCBfX3JlYWQob3RoZXJWYWx1ZXMpKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QgPyBwcm9qZWN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSA6IHZhbHVlcyk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gd2l0aExhdGVzdEZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMKdmFyIHJlcXVpcmVfemlwQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcEFsbCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiB6aXBBbGwocHJvamVjdCkgewogICAgICByZXR1cm4gam9pbkFsbEludGVybmFsc18xLmpvaW5BbGxJbnRlcm5hbHMoemlwXzEuemlwLCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLnppcEFsbCA9IHppcEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnppcCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiB6aXAoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoc291cmNlcykpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuemlwID0gemlwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwV2l0aC5qcwp2YXIgcmVxdWlyZV96aXBXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBXaXRoID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAyKCk7CiAgICBmdW5jdGlvbiB6aXBXaXRoKCkgewogICAgICB2YXIgb3RoZXJJbnB1dHMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlcklucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJJbnB1dHMpKSk7CiAgICB9CiAgICBleHBvcnRzMi56aXBXaXRoID0gemlwV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW5kZXguanMKdmFyIHJlcXVpcmVfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBtW2tdOwogICAgICB9IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbCA9IGV4cG9ydHMyLmlpZiA9IGV4cG9ydHMyLmdlbmVyYXRlID0gZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IGV4cG9ydHMyLmZyb21FdmVudCA9IGV4cG9ydHMyLmZyb20gPSBleHBvcnRzMi5mb3JrSm9pbiA9IGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuZGVmZXIgPSBleHBvcnRzMi5jb25uZWN0YWJsZSA9IGV4cG9ydHMyLmNvbmNhdCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gZXhwb3J0czIuYmluZENhbGxiYWNrID0gZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGV4cG9ydHMyLlRpbWVvdXRFcnJvciA9IGV4cG9ydHMyLlNlcXVlbmNlRXJyb3IgPSBleHBvcnRzMi5PYmplY3RVbnN1YnNjcmliZWRFcnJvciA9IGV4cG9ydHMyLk5vdEZvdW5kRXJyb3IgPSBleHBvcnRzMi5FbXB0eUVycm9yID0gZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5pc09ic2VydmFibGUgPSBleHBvcnRzMi5pZGVudGl0eSA9IGV4cG9ydHMyLm5vb3AgPSBleHBvcnRzMi5waXBlID0gZXhwb3J0czIuTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLlN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSBleHBvcnRzMi5TY2hlZHVsZXIgPSBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBleHBvcnRzMi5xdWV1ZSA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gZXhwb3J0czIuYXN5bmMgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IGV4cG9ydHMyLlJlcGxheVN1YmplY3QgPSBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBleHBvcnRzMi5TdWJqZWN0ID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVzID0gZXhwb3J0czIub2JzZXJ2YWJsZSA9IGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IGV4cG9ydHMyLk9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5maWx0ZXIgPSBleHBvcnRzMi5leHBhbmQgPSBleHBvcnRzMi5leGhhdXN0TWFwID0gZXhwb3J0czIuZXhoYXVzdEFsbCA9IGV4cG9ydHMyLmV4aGF1c3QgPSBleHBvcnRzMi5ldmVyeSA9IGV4cG9ydHMyLmVuZFdpdGggPSBleHBvcnRzMi5lbGVtZW50QXQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0VW50aWxDaGFuZ2VkID0gZXhwb3J0czIuZGlzdGluY3QgPSBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gZXhwb3J0czIuZGVsYXlXaGVuID0gZXhwb3J0czIuZGVsYXkgPSBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGV4cG9ydHMyLmRlYm91bmNlID0gZXhwb3J0czIuY291bnQgPSBleHBvcnRzMi5jb25uZWN0ID0gZXhwb3J0czIuY29uY2F0V2l0aCA9IGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gZXhwb3J0czIuY29uY2F0TWFwID0gZXhwb3J0czIuY29uY2F0QWxsID0gZXhwb3J0czIuY29tYmluZUxhdGVzdFdpdGggPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0QWxsID0gZXhwb3J0czIuY29tYmluZUFsbCA9IGV4cG9ydHMyLmNhdGNoRXJyb3IgPSBleHBvcnRzMi5idWZmZXJXaGVuID0gZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gZXhwb3J0czIuYnVmZmVyVGltZSA9IGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gZXhwb3J0czIuYnVmZmVyID0gZXhwb3J0czIuYXVkaXRUaW1lID0gZXhwb3J0czIuYXVkaXQgPSBleHBvcnRzMi5jb25maWcgPSBleHBvcnRzMi5ORVZFUiA9IGV4cG9ydHMyLkVNUFRZID0gZXhwb3J0czIuc2NoZWR1bGVkID0gZXhwb3J0czIuemlwID0gZXhwb3J0czIudXNpbmcgPSBleHBvcnRzMi50aW1lciA9IGV4cG9ydHMyLnRocm93RXJyb3IgPSBleHBvcnRzMi5yYW5nZSA9IGV4cG9ydHMyLnJhY2UgPSBleHBvcnRzMi5wYXJ0aXRpb24gPSBleHBvcnRzMi5wYWlycyA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gZXhwb3J0czIub2YgPSBleHBvcnRzMi5uZXZlciA9IGV4cG9ydHMyLm1lcmdlID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3dpdGNoTWFwID0gZXhwb3J0czIuc3dpdGNoQWxsID0gZXhwb3J0czIuc3Vic2NyaWJlT24gPSBleHBvcnRzMi5zdGFydFdpdGggPSBleHBvcnRzMi5za2lwV2hpbGUgPSBleHBvcnRzMi5za2lwVW50aWwgPSBleHBvcnRzMi5za2lwTGFzdCA9IGV4cG9ydHMyLnNraXAgPSBleHBvcnRzMi5zaW5nbGUgPSBleHBvcnRzMi5zaGFyZVJlcGxheSA9IGV4cG9ydHMyLnNoYXJlID0gZXhwb3J0czIuc2VxdWVuY2VFcXVhbCA9IGV4cG9ydHMyLnNjYW4gPSBleHBvcnRzMi5zYW1wbGVUaW1lID0gZXhwb3J0czIuc2FtcGxlID0gZXhwb3J0czIucmVmQ291bnQgPSBleHBvcnRzMi5yZXRyeVdoZW4gPSBleHBvcnRzMi5yZXRyeSA9IGV4cG9ydHMyLnJlcGVhdFdoZW4gPSBleHBvcnRzMi5yZXBlYXQgPSBleHBvcnRzMi5yZWR1Y2UgPSBleHBvcnRzMi5yYWNlV2l0aCA9IGV4cG9ydHMyLnB1Ymxpc2hSZXBsYXkgPSBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IGV4cG9ydHMyLnB1Ymxpc2hCZWhhdmlvciA9IGV4cG9ydHMyLnB1Ymxpc2ggPSBleHBvcnRzMi5wbHVjayA9IGV4cG9ydHMyLnBhaXJ3aXNlID0gZXhwb3J0czIub25FcnJvclJlc3VtZU5leHRXaXRoID0gZXhwb3J0czIub2JzZXJ2ZU9uID0gZXhwb3J0czIubXVsdGljYXN0ID0gZXhwb3J0czIubWluID0gZXhwb3J0czIubWVyZ2VXaXRoID0gZXhwb3J0czIubWVyZ2VTY2FuID0gZXhwb3J0czIubWVyZ2VNYXBUbyA9IGV4cG9ydHMyLm1lcmdlTWFwID0gZXhwb3J0czIuZmxhdE1hcCA9IGV4cG9ydHMyLm1lcmdlQWxsID0gZXhwb3J0czIubWF4ID0gZXhwb3J0czIubWF0ZXJpYWxpemUgPSBleHBvcnRzMi5tYXBUbyA9IGV4cG9ydHMyLm1hcCA9IGV4cG9ydHMyLmxhc3QgPSBleHBvcnRzMi5pc0VtcHR5ID0gZXhwb3J0czIuaWdub3JlRWxlbWVudHMgPSBleHBvcnRzMi5ncm91cEJ5ID0gZXhwb3J0czIuZmlyc3QgPSBleHBvcnRzMi5maW5kSW5kZXggPSBleHBvcnRzMi5maW5kID0gZXhwb3J0czIuZmluYWxpemUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi56aXBXaXRoID0gZXhwb3J0czIuemlwQWxsID0gZXhwb3J0czIud2l0aExhdGVzdEZyb20gPSBleHBvcnRzMi53aW5kb3dXaGVuID0gZXhwb3J0czIud2luZG93VG9nZ2xlID0gZXhwb3J0czIud2luZG93VGltZSA9IGV4cG9ydHMyLndpbmRvd0NvdW50ID0gZXhwb3J0czIud2luZG93ID0gZXhwb3J0czIudG9BcnJheSA9IGV4cG9ydHMyLnRpbWVzdGFtcCA9IGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gZXhwb3J0czIudGltZW91dCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IGV4cG9ydHMyLnRocm90dGxlVGltZSA9IGV4cG9ydHMyLnRocm90dGxlID0gZXhwb3J0czIudGFwID0gZXhwb3J0czIudGFrZVdoaWxlID0gZXhwb3J0czIudGFrZVVudGlsID0gZXhwb3J0czIudGFrZUxhc3QgPSBleHBvcnRzMi50YWtlID0gZXhwb3J0czIuc3dpdGNoU2NhbiA9IGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9ic2VydmFibGVfMS5PYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb25uZWN0YWJsZU9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2YWJsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9ic2VydmFibGVfMS5vYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZXNfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZXMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZXNfMS5hbmltYXRpb25GcmFtZXM7CiAgICB9IH0pOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YmplY3RfMS5TdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBCZWhhdmlvclN1YmplY3RfMSA9IHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJCZWhhdmlvclN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiUmVwbGF5U3ViamVjdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFJlcGxheVN1YmplY3RfMS5SZXBsYXlTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBBc3luY1N1YmplY3RfMSA9IHJlcXVpcmVfQXN5bmNTdWJqZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJBc3luY1N1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBc3luY1N1YmplY3RfMS5Bc3luY1N1YmplY3Q7CiAgICB9IH0pOwogICAgdmFyIGFzYXBfMSA9IHJlcXVpcmVfYXNhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXNhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzYXBfMS5hc2FwOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXBTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcFNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzeW5jIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXN5bmNfMS5hc3luYzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luY1NjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIHF1ZXVlXzEgPSByZXF1aXJlX3F1ZXVlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJxdWV1ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHF1ZXVlXzEucXVldWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWVTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBhbmltYXRpb25GcmFtZV8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhbmltYXRpb25GcmFtZV8xLmFuaW1hdGlvbkZyYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgVmlydHVhbFRpbWVTY2hlZHVsZXJfMSA9IHJlcXVpcmVfVmlydHVhbFRpbWVTY2hlZHVsZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZpcnR1YWxUaW1lU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsVGltZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsQWN0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXJfMS5WaXJ0dWFsQWN0aW9uOwogICAgfSB9KTsKICAgIHZhciBTY2hlZHVsZXJfMSA9IHJlcXVpcmVfU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTY2hlZHVsZXJfMS5TY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YnNjcmlwdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9TdWJzY3JpYmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpYmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU3Vic2NyaWJlcl8xLlN1YnNjcmliZXI7CiAgICB9IH0pOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5vdGlmaWNhdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb25LaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uS2luZDsKICAgIH0gfSk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwaXBlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGlwZV8xLnBpcGU7CiAgICB9IH0pOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibm9vcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5vb3BfMS5ub29wOwogICAgfSB9KTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWRlbnRpdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfSB9KTsKICAgIHZhciBpc09ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNPYnNlcnZhYmxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpc09ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc09ic2VydmFibGVfMS5pc09ic2VydmFibGU7CiAgICB9IH0pOwogICAgdmFyIGxhc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfbGFzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibGFzdFZhbHVlRnJvbSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb21fMS5sYXN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBmaXJzdFZhbHVlRnJvbV8xID0gcmVxdWlyZV9maXJzdFZhbHVlRnJvbSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmlyc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbV8xLmZpcnN0VmFsdWVGcm9tOwogICAgfSB9KTsKICAgIHZhciBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xID0gcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yOwogICAgfSB9KTsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkVtcHR5RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgTm90Rm91bmRFcnJvcl8xID0gcmVxdWlyZV9Ob3RGb3VuZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RGb3VuZEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJPYmplY3RVbnN1YnNjcmliZWRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2VxdWVuY2VFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFNlcXVlbmNlRXJyb3JfMS5TZXF1ZW5jZUVycm9yOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzEgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlRpbWVvdXRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRfMS5UaW1lb3V0RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIFVuc3Vic2NyaXB0aW9uRXJyb3JfMSA9IHJlcXVpcmVfVW5zdWJzY3JpcHRpb25FcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVW5zdWJzY3JpcHRpb25FcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yOwogICAgfSB9KTsKICAgIHZhciBiaW5kQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJiaW5kQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tfMS5iaW5kQ2FsbGJhY2s7CiAgICB9IH0pOwogICAgdmFyIGJpbmROb2RlQ2FsbGJhY2tfMSA9IHJlcXVpcmVfYmluZE5vZGVDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZE5vZGVDYWxsYmFjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJpbmROb2RlQ2FsbGJhY2tfMS5iaW5kTm9kZUNhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0XzEuY29tYmluZUxhdGVzdDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0OwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0YWJsZV8xID0gcmVxdWlyZV9jb25uZWN0YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29ubmVjdGFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0YWJsZV8xLmNvbm5lY3RhYmxlOwogICAgfSB9KTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8xLmVtcHR5OwogICAgfSB9KTsKICAgIHZhciBmb3JrSm9pbl8xID0gcmVxdWlyZV9mb3JrSm9pbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZm9ya0pvaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmb3JrSm9pbl8xLmZvcmtKb2luOwogICAgfSB9KTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tXzEuZnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50XzEgPSByZXF1aXJlX2Zyb21FdmVudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZnJvbUV2ZW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50XzEuZnJvbUV2ZW50OwogICAgfSB9KTsKICAgIHZhciBmcm9tRXZlbnRQYXR0ZXJuXzEgPSByZXF1aXJlX2Zyb21FdmVudFBhdHRlcm4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudFBhdHRlcm4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmcm9tRXZlbnRQYXR0ZXJuXzEuZnJvbUV2ZW50UGF0dGVybjsKICAgIH0gfSk7CiAgICB2YXIgZ2VuZXJhdGVfMSA9IHJlcXVpcmVfZ2VuZXJhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImdlbmVyYXRlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ2VuZXJhdGVfMS5nZW5lcmF0ZTsKICAgIH0gfSk7CiAgICB2YXIgaWlmXzEgPSByZXF1aXJlX2lpZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWlmIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWlmXzEuaWlmOwogICAgfSB9KTsKICAgIHZhciBpbnRlcnZhbF8xID0gcmVxdWlyZV9pbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaW50ZXJ2YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpbnRlcnZhbF8xLmludGVydmFsOwogICAgfSB9KTsKICAgIHZhciBtZXJnZV8xID0gcmVxdWlyZV9tZXJnZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZV8xLm1lcmdlOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8xID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmV2ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8xLm5ldmVyOwogICAgfSB9KTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2YiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvZl8xLm9mOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib25FcnJvclJlc3VtZU5leHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dF8xLm9uRXJyb3JSZXN1bWVOZXh0OwogICAgfSB9KTsKICAgIHZhciBwYWlyc18xID0gcmVxdWlyZV9wYWlycygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFpcnMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYWlyc18xLnBhaXJzOwogICAgfSB9KTsKICAgIHZhciBwYXJ0aXRpb25fMSA9IHJlcXVpcmVfcGFydGl0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYXJ0aXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwYXJ0aXRpb25fMS5wYXJ0aXRpb247CiAgICB9IH0pOwogICAgdmFyIHJhY2VfMSA9IHJlcXVpcmVfcmFjZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VfMS5yYWNlOwogICAgfSB9KTsKICAgIHZhciByYW5nZV8xID0gcmVxdWlyZV9yYW5nZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFuZ2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYW5nZV8xLnJhbmdlOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0Vycm9yXzEgPSByZXF1aXJlX3Rocm93RXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXJfMS50aW1lcjsKICAgIH0gfSk7CiAgICB2YXIgdXNpbmdfMSA9IHJlcXVpcmVfdXNpbmcoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInVzaW5nIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdXNpbmdfMS51c2luZzsKICAgIH0gfSk7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwXzEuemlwOwogICAgfSB9KTsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2hlZHVsZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZWRfMS5zY2hlZHVsZWQ7CiAgICB9IH0pOwogICAgdmFyIGVtcHR5XzIgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFTVBUWSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVtcHR5XzIuRU1QVFk7CiAgICB9IH0pOwogICAgdmFyIG5ldmVyXzIgPSByZXF1aXJlX25ldmVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJORVZFUiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG5ldmVyXzIuTkVWRVI7CiAgICB9IH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHlwZXMyKCksIGV4cG9ydHMyKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25maWciLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25maWdfMS5jb25maWc7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQ7CiAgICB9IH0pOwogICAgdmFyIGF1ZGl0VGltZV8xID0gcmVxdWlyZV9hdWRpdFRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImF1ZGl0VGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGF1ZGl0VGltZV8xLmF1ZGl0VGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyXzEuYnVmZmVyOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJDb3VudF8xID0gcmVxdWlyZV9idWZmZXJDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyQ291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJDb3VudF8xLmJ1ZmZlckNvdW50OwogICAgfSB9KTsKICAgIHZhciBidWZmZXJUaW1lXzEgPSByZXF1aXJlX2J1ZmZlclRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJUaW1lXzEuYnVmZmVyVGltZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVG9nZ2xlXzEgPSByZXF1aXJlX2J1ZmZlclRvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYnVmZmVyVG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVG9nZ2xlXzEuYnVmZmVyVG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciBidWZmZXJXaGVuXzEgPSByZXF1aXJlX2J1ZmZlcldoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlcldoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBidWZmZXJXaGVuXzEuYnVmZmVyV2hlbjsKICAgIH0gfSk7CiAgICB2YXIgY2F0Y2hFcnJvcl8xID0gcmVxdWlyZV9jYXRjaEVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjYXRjaEVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY2F0Y2hFcnJvcl8xLmNhdGNoRXJyb3I7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVBbGxfMSA9IHJlcXVpcmVfY29tYmluZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29tYmluZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVBbGxfMS5jb21iaW5lQWxsOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lTGF0ZXN0QWxsXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0QWxsXzEuY29tYmluZUxhdGVzdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdFdpdGhfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVMYXRlc3RXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdFdpdGhfMS5jb21iaW5lTGF0ZXN0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBfMSA9IHJlcXVpcmVfY29uY2F0TWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBfMS5jb25jYXRNYXA7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdE1hcFRvXzEgPSByZXF1aXJlX2NvbmNhdE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25jYXRNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdE1hcFRvXzEuY29uY2F0TWFwVG87CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdFdpdGhfMSA9IHJlcXVpcmVfY29uY2F0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdFdpdGhfMS5jb25jYXRXaXRoOwogICAgfSB9KTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdDsKICAgIH0gfSk7CiAgICB2YXIgY291bnRfMSA9IHJlcXVpcmVfY291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY291bnRfMS5jb3VudDsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VfMSA9IHJlcXVpcmVfZGVib3VuY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VfMS5kZWJvdW5jZTsKICAgIH0gfSk7CiAgICB2YXIgZGVib3VuY2VUaW1lXzEgPSByZXF1aXJlX2RlYm91bmNlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVib3VuY2VUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVib3VuY2VUaW1lXzEuZGVib3VuY2VUaW1lOwogICAgfSB9KTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVmYXVsdElmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5OwogICAgfSB9KTsKICAgIHZhciBkZWxheV8xID0gcmVxdWlyZV9kZWxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheV8xLmRlbGF5OwogICAgfSB9KTsKICAgIHZhciBkZWxheVdoZW5fMSA9IHJlcXVpcmVfZGVsYXlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWxheVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZWxheVdoZW5fMS5kZWxheVdoZW47CiAgICB9IH0pOwogICAgdmFyIGRlbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfZGVtYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVtYXRlcmlhbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlbWF0ZXJpYWxpemVfMS5kZW1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdF8xID0gcmVxdWlyZV9kaXN0aW5jdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdF8xLmRpc3RpbmN0OwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsQ2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbENoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsQ2hhbmdlZF8xLmRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xID0gcmVxdWlyZV9kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGlzdGluY3RVbnRpbEtleUNoYW5nZWQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZF8xLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkOwogICAgfSB9KTsKICAgIHZhciBlbGVtZW50QXRfMSA9IHJlcXVpcmVfZWxlbWVudEF0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJlbGVtZW50QXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbGVtZW50QXRfMS5lbGVtZW50QXQ7CiAgICB9IH0pOwogICAgdmFyIGVuZFdpdGhfMSA9IHJlcXVpcmVfZW5kV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZW5kV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGVuZFdpdGhfMS5lbmRXaXRoOwogICAgfSB9KTsKICAgIHZhciBldmVyeV8xID0gcmVxdWlyZV9ldmVyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXZlcnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBldmVyeV8xLmV2ZXJ5OwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0XzEgPSByZXF1aXJlX2V4aGF1c3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0XzEuZXhoYXVzdDsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdEFsbF8xID0gcmVxdWlyZV9leGhhdXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdEFsbF8xLmV4aGF1c3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RNYXBfMSA9IHJlcXVpcmVfZXhoYXVzdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RNYXBfMS5leGhhdXN0TWFwOwogICAgfSB9KTsKICAgIHZhciBleHBhbmRfMSA9IHJlcXVpcmVfZXhwYW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleHBhbmQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleHBhbmRfMS5leHBhbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbHRlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbHRlcl8xLmZpbHRlcjsKICAgIH0gfSk7CiAgICB2YXIgZmluYWxpemVfMSA9IHJlcXVpcmVfZmluYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluYWxpemVfMS5maW5hbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmluZF8xLmZpbmQ7CiAgICB9IH0pOwogICAgdmFyIGZpbmRJbmRleF8xID0gcmVxdWlyZV9maW5kSW5kZXgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpbmRJbmRleCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRJbmRleF8xLmZpbmRJbmRleDsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RfMSA9IHJlcXVpcmVfZmlyc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RfMS5maXJzdDsKICAgIH0gfSk7CiAgICB2YXIgZ3JvdXBCeV8xID0gcmVxdWlyZV9ncm91cEJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJncm91cEJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZ3JvdXBCeV8xLmdyb3VwQnk7CiAgICB9IH0pOwogICAgdmFyIGlnbm9yZUVsZW1lbnRzXzEgPSByZXF1aXJlX2lnbm9yZUVsZW1lbnRzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJpZ25vcmVFbGVtZW50cyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlnbm9yZUVsZW1lbnRzXzEuaWdub3JlRWxlbWVudHM7CiAgICB9IH0pOwogICAgdmFyIGlzRW1wdHlfMSA9IHJlcXVpcmVfaXNFbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlzRW1wdHlfMS5pc0VtcHR5OwogICAgfSB9KTsKICAgIHZhciBsYXN0XzEgPSByZXF1aXJlX2xhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0XzEubGFzdDsKICAgIH0gfSk7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwXzEubWFwOwogICAgfSB9KTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXBUb18xLm1hcFRvOwogICAgfSB9KTsKICAgIHZhciBtYXRlcmlhbGl6ZV8xID0gcmVxdWlyZV9tYXRlcmlhbGl6ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXRlcmlhbGl6ZV8xLm1hdGVyaWFsaXplOwogICAgfSB9KTsKICAgIHZhciBtYXhfMSA9IHJlcXVpcmVfbWF4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtYXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtYXhfMS5tYXg7CiAgICB9IH0pOwogICAgdmFyIG1lcmdlQWxsXzEgPSByZXF1aXJlX21lcmdlQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZUFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlQWxsXzEubWVyZ2VBbGw7CiAgICB9IH0pOwogICAgdmFyIGZsYXRNYXBfMSA9IHJlcXVpcmVfZmxhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmxhdE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZsYXRNYXBfMS5mbGF0TWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwOwogICAgfSB9KTsKICAgIHZhciBtZXJnZU1hcFRvXzEgPSByZXF1aXJlX21lcmdlTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZU1hcFRvXzEubWVyZ2VNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VTY2FuXzEgPSByZXF1aXJlX21lcmdlU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VTY2FuXzEubWVyZ2VTY2FuOwogICAgfSB9KTsKICAgIHZhciBtZXJnZVdpdGhfMSA9IHJlcXVpcmVfbWVyZ2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZVdpdGhfMS5tZXJnZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIG1pbl8xID0gcmVxdWlyZV9taW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1pbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1pbl8xLm1pbjsKICAgIH0gfSk7CiAgICB2YXIgbXVsdGljYXN0XzEgPSByZXF1aXJlX211bHRpY2FzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibXVsdGljYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0OwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvYnNlcnZlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZlT25fMS5vYnNlcnZlT247CiAgICB9IH0pOwogICAgdmFyIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0V2l0aF8xLm9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcndpc2VfMSA9IHJlcXVpcmVfcGFpcndpc2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJ3aXNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcndpc2VfMS5wYWlyd2lzZTsKICAgIH0gfSk7CiAgICB2YXIgcGx1Y2tfMSA9IHJlcXVpcmVfcGx1Y2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBsdWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGx1Y2tfMS5wbHVjazsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaF8xID0gcmVxdWlyZV9wdWJsaXNoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaF8xLnB1Ymxpc2g7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hCZWhhdmlvcl8xID0gcmVxdWlyZV9wdWJsaXNoQmVoYXZpb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hCZWhhdmlvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hCZWhhdmlvcl8xLnB1Ymxpc2hCZWhhdmlvcjsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaExhc3RfMSA9IHJlcXVpcmVfcHVibGlzaExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInB1Ymxpc2hMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaExhc3RfMS5wdWJsaXNoTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgcHVibGlzaFJlcGxheV8xID0gcmVxdWlyZV9wdWJsaXNoUmVwbGF5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcHVibGlzaFJlcGxheV8xLnB1Ymxpc2hSZXBsYXk7CiAgICB9IH0pOwogICAgdmFyIHJhY2VXaXRoXzEgPSByZXF1aXJlX3JhY2VXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyYWNlV2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJhY2VXaXRoXzEucmFjZVdpdGg7CiAgICB9IH0pOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZHVjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZTsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0XzEyID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xMi5yZXBlYXQ7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdFdoZW5fMSA9IHJlcXVpcmVfcmVwZWF0V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVwZWF0V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdFdoZW5fMS5yZXBlYXRXaGVuOwogICAgfSB9KTsKICAgIHZhciByZXRyeV8xID0gcmVxdWlyZV9yZXRyeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmV0cnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeV8xLnJldHJ5OwogICAgfSB9KTsKICAgIHZhciByZXRyeVdoZW5fMSA9IHJlcXVpcmVfcmV0cnlXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeVdoZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZXRyeVdoZW5fMS5yZXRyeVdoZW47CiAgICB9IH0pOwogICAgdmFyIHJlZkNvdW50XzEgPSByZXF1aXJlX3JlZkNvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWZDb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlZkNvdW50XzEucmVmQ291bnQ7CiAgICB9IH0pOwogICAgdmFyIHNhbXBsZV8xID0gcmVxdWlyZV9zYW1wbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZTsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlVGltZV8xID0gcmVxdWlyZV9zYW1wbGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzYW1wbGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlVGltZV8xLnNhbXBsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHNjYW5fMSA9IHJlcXVpcmVfc2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjYW5fMS5zY2FuOwogICAgfSB9KTsKICAgIHZhciBzZXF1ZW5jZUVxdWFsXzEgPSByZXF1aXJlX3NlcXVlbmNlRXF1YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNlcXVlbmNlRXF1YWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzZXF1ZW5jZUVxdWFsXzEuc2VxdWVuY2VFcXVhbDsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVfMSA9IHJlcXVpcmVfc2hhcmUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZTsKICAgIH0gfSk7CiAgICB2YXIgc2hhcmVSZXBsYXlfMSA9IHJlcXVpcmVfc2hhcmVSZXBsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNoYXJlUmVwbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2hhcmVSZXBsYXlfMS5zaGFyZVJlcGxheTsKICAgIH0gfSk7CiAgICB2YXIgc2luZ2xlXzEgPSByZXF1aXJlX3NpbmdsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2luZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2luZ2xlXzEuc2luZ2xlOwogICAgfSB9KTsKICAgIHZhciBza2lwXzEgPSByZXF1aXJlX3NraXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwXzEuc2tpcDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcExhc3RfMSA9IHJlcXVpcmVfc2tpcExhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcExhc3RfMS5za2lwTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgc2tpcFVudGlsXzEgPSByZXF1aXJlX3NraXBVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcFVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2tpcFVudGlsXzEuc2tpcFVudGlsOwogICAgfSB9KTsKICAgIHZhciBza2lwV2hpbGVfMSA9IHJlcXVpcmVfc2tpcFdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwV2hpbGVfMS5za2lwV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHN0YXJ0V2l0aF8xID0gcmVxdWlyZV9zdGFydFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0YXJ0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN0YXJ0V2l0aF8xLnN0YXJ0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN1YnNjcmliZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbjsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoQWxsXzEgPSByZXF1aXJlX3N3aXRjaEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoQWxsXzEuc3dpdGNoQWxsOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXA7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcFRvXzEgPSByZXF1aXJlX3N3aXRjaE1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hNYXBUbyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcFRvXzEuc3dpdGNoTWFwVG87CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaFNjYW5fMSA9IHJlcXVpcmVfc3dpdGNoU2NhbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3dpdGNoU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaFNjYW5fMS5zd2l0Y2hTY2FuOwogICAgfSB9KTsKICAgIHZhciB0YWtlXzEgPSByZXF1aXJlX3Rha2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlXzEudGFrZTsKICAgIH0gfSk7CiAgICB2YXIgdGFrZUxhc3RfMSA9IHJlcXVpcmVfdGFrZUxhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VMYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZUxhc3RfMS50YWtlTGFzdDsKICAgIH0gfSk7CiAgICB2YXIgdGFrZVVudGlsXzEgPSByZXF1aXJlX3Rha2VVbnRpbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZVVudGlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFrZVVudGlsXzEudGFrZVVudGlsOwogICAgfSB9KTsKICAgIHZhciB0YWtlV2hpbGVfMSA9IHJlcXVpcmVfdGFrZVdoaWxlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlV2hpbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlV2hpbGVfMS50YWtlV2hpbGU7CiAgICB9IH0pOwogICAgdmFyIHRhcF8xID0gcmVxdWlyZV90YXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRhcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRhcF8xLnRhcDsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVfMSA9IHJlcXVpcmVfdGhyb3R0bGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm90dGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVfMS50aHJvdHRsZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3R0bGVUaW1lXzEgPSByZXF1aXJlX3Rocm90dGxlVGltZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGVUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3R0bGVUaW1lXzEudGhyb3R0bGVUaW1lOwogICAgfSB9KTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0lmRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHk7CiAgICB9IH0pOwogICAgdmFyIHRpbWVJbnRlcnZhbF8xID0gcmVxdWlyZV90aW1lSW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVJbnRlcnZhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVJbnRlcnZhbF8xLnRpbWVJbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8yID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dF8yLnRpbWVvdXQ7CiAgICB9IH0pOwogICAgdmFyIHRpbWVvdXRXaXRoXzEgPSByZXF1aXJlX3RpbWVvdXRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lb3V0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVvdXRXaXRoXzEudGltZW91dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHRpbWVzdGFtcF8xID0gcmVxdWlyZV90aW1lc3RhbXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVzdGFtcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcF8xLnRpbWVzdGFtcDsKICAgIH0gfSk7CiAgICB2YXIgdG9BcnJheV8xMiA9IHJlcXVpcmVfdG9BcnJheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidG9BcnJheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRvQXJyYXlfMTIudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdGhJc0ZpbGVFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIEJhc2VFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSA9ICIiKSB7CiAgICAgICAgc3VwZXIobWVzc2FnZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gQmFzZUV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSkgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkV4Y2VwdGlvbiA9IFVua25vd25FeGNlcHRpb247CiAgICB2YXIgRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGRpcmVjdG9yeS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbjsKICAgIHZhciBQYXRoSXNGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGZpbGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gUGF0aElzRmlsZUV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9saXRlcmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25lTGluZSA9IG9uZUxpbmU7CiAgICBleHBvcnRzMi5pbmRlbnRCeSA9IGluZGVudEJ5OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnQgPSBzdHJpcEluZGVudDsKICAgIGV4cG9ydHMyLnN0cmlwSW5kZW50cyA9IHN0cmlwSW5kZW50czsKICAgIGV4cG9ydHMyLnRyaW1OZXdsaW5lcyA9IHRyaW1OZXdsaW5lczsKICAgIGZ1bmN0aW9uIG9uZUxpbmUoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkrL2dtLCAiICIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIGluZGVudEJ5KGluZGVudGF0aW9ucykgewogICAgICBsZXQgaSA9ICIiOwogICAgICB3aGlsZSAoaW5kZW50YXRpb25zLS0pIHsKICAgICAgICBpICs9ICIgIjsKICAgICAgfQogICAgICByZXR1cm4gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgICByZXR1cm4gaSArIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpLnJlcGxhY2UoL1xuL2csICJcbiIgKyBpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgY29uc3QgZW5kUmVzdWx0ID0gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKTsKICAgICAgY29uc3QgbWF0Y2ggPSBlbmRSZXN1bHQubWF0Y2goL15bIFx0XSooPz1cUykvZ20pOwogICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gZW5kUmVzdWx0OwogICAgICB9CiAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgubWluKC4uLm1hdGNoLm1hcCgoZWwpID0+IGVsLmxlbmd0aCkpOwogICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCJeWyBcXHRdeyIgKyBpbmRlbnQgKyAifSIsICJnbSIpOwogICAgICByZXR1cm4gKGluZGVudCA+IDAgPyBlbmRSZXN1bHQucmVwbGFjZShyZWdleHAsICIiKSA6IGVuZFJlc3VsdCkudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnRzKHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgcmV0dXJuIFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykuc3BsaXQoIlxuIikubWFwKChsaW5lKSA9PiBsaW5lLnRyaW0oKSkuam9pbigiXG4iKS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiB0cmltTmV3bGluZXMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoL14oPzpccj9cbikrLywgIiIpLnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkkLywgIiIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvc3RyaW5ncy5qcwp2YXIgcmVxdWlyZV9zdHJpbmdzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX0RFQ0FNRUxJWkVfUkVHRVhQLCAiJDFfJDIiKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gZGFzaGVyaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyMikucmVwbGFjZShTVFJJTkdfREFTSEVSSVpFX1JFR0VYUCwgIi0iKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhbWVsaXplKHN0cjIpIHsKICAgICAgcmV0dXJuIHN0cjIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5zcGxpdCgiLiIpLm1hcCgocGFydCkgPT4gY2FwaXRhbGl6ZShjYW1lbGl6ZShwYXJ0KSkpLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gdW5kZXJzY29yZShzdHIyKSB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEsICIkMV8kMiIpLnJlcGxhY2UoU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzIsICJfIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyMikgewogICAgICByZXR1cm4gc3RyMi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0cjIuc2xpY2UoMSk7CiAgICB9CiAgICBmdW5jdGlvbiBsZXZlbnNodGVpbihhLCBiKSB7CiAgICAgIGlmIChhLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGIubGVuZ3RoOwogICAgICB9CiAgICAgIGlmIChiLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIGEubGVuZ3RoOwogICAgICB9CiAgICAgIGNvbnN0IG1hdHJpeCA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbWF0cml4W2ldID0gW2ldOwogICAgICB9CiAgICAgIGZvciAobGV0IGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICBtYXRyaXhbMF1bal0gPSBqOwogICAgICB9CiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBmb3IgKGxldCBqID0gMTsgaiA8PSBhLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICBpZiAoYi5jaGFyQXQoaSAtIDEpID09IGEuY2hhckF0KGogLSAxKSkgewogICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbaSAtIDFdW2ogLSAxXTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IE1hdGgubWluKAogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBzdWJzdGl0dXRpb24KICAgICAgICAgICAgICBtYXRyaXhbaV1baiAtIDFdICsgMSwKICAgICAgICAgICAgICAvLyBpbnNlcnRpb24KICAgICAgICAgICAgICBtYXRyaXhbaSAtIDFdW2pdICsgMQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbWF0cml4W2IubGVuZ3RoXVthLmxlbmd0aF07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMKdmFyIHJlcXVpcmVfb2JqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZXBDb3B5ID0gZGVlcENvcHk7CiAgICB2YXIgY29weVN5bWJvbCA9IFN5bWJvbCgpOwogICAgZnVuY3Rpb24gZGVlcENvcHkodmFsdWUpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgobykgPT4gZGVlcENvcHkobykpOwogICAgICB9IGVsc2UgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25zdCB2YWx1ZUNhc3RlZCA9IHZhbHVlOwogICAgICAgIGlmICh2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXSkgewogICAgICAgICAgcmV0dXJuIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWVDYXN0ZWRbInRvSlNPTiJdKSB7CiAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZUNhc3RlZFsidG9KU09OIl0oKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZUNhc3RlZCkpOwogICAgICAgIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdID0gY29weTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZUNhc3RlZCkpIHsKICAgICAgICAgIGNvcHlba2V5XSA9IGRlZXBDb3B5KHZhbHVlQ2FzdGVkW2tleV0pOwogICAgICAgIH0KICAgICAgICBkZWxldGUgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMKdmFyIHJlcXVpcmVfYmFzZTY0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgaW50VG9DaGFyTWFwID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLnNwbGl0KCIiKTsKICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uKG51bWJlcikgewogICAgICBpZiAoMCA8PSBudW1iZXIgJiYgbnVtYmVyIDwgaW50VG9DaGFyTWFwLmxlbmd0aCkgewogICAgICAgIHJldHVybiBpbnRUb0NoYXJNYXBbbnVtYmVyXTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJNdXN0IGJlIGJldHdlZW4gMCBhbmQgNjM6ICIgKyBudW1iZXIpOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC12bHEuanMKdmFyIHJlcXVpcmVfYmFzZTY0X3ZscSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LXZscS5qcyIoZXhwb3J0czIpIHsKICAgIHZhciBiYXNlNjQgPSByZXF1aXJlX2Jhc2U2NCgpOwogICAgdmFyIFZMUV9CQVNFX1NISUZUID0gNTsKICAgIHZhciBWTFFfQkFTRSA9IDEgPDwgVkxRX0JBU0VfU0hJRlQ7CiAgICB2YXIgVkxRX0JBU0VfTUFTSyA9IFZMUV9CQVNFIC0gMTsKICAgIHZhciBWTFFfQ09OVElOVUFUSU9OX0JJVCA9IFZMUV9CQVNFOwogICAgZnVuY3Rpb24gdG9WTFFTaWduZWQoYVZhbHVlKSB7CiAgICAgIHJldHVybiBhVmFsdWUgPCAwID8gKC1hVmFsdWUgPDwgMSkgKyAxIDogKGFWYWx1ZSA8PCAxKSArIDA7CiAgICB9CiAgICBleHBvcnRzMi5lbmNvZGUgPSBmdW5jdGlvbiBiYXNlNjRWTFFfZW5jb2RlKGFWYWx1ZSkgewogICAgICBsZXQgZW5jb2RlZCA9ICIiOwogICAgICBsZXQgZGlnaXQ7CiAgICAgIGxldCB2bHEgPSB0b1ZMUVNpZ25lZChhVmFsdWUpOwogICAgICBkbyB7CiAgICAgICAgZGlnaXQgPSB2bHEgJiBWTFFfQkFTRV9NQVNLOwogICAgICAgIHZscSA+Pj49IFZMUV9CQVNFX1NISUZUOwogICAgICAgIGlmICh2bHEgPiAwKSB7CiAgICAgICAgICBkaWdpdCB8PSBWTFFfQ09OVElOVUFUSU9OX0JJVDsKICAgICAgICB9CiAgICAgICAgZW5jb2RlZCArPSBiYXNlNjQuZW5jb2RlKGRpZ2l0KTsKICAgICAgfSB3aGlsZSAodmxxID4gMCk7CiAgICAgIHJldHVybiBlbmNvZGVkOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMKdmFyIHJlcXVpcmVfdXRpbDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMiKGV4cG9ydHMyKSB7CiAgICBmdW5jdGlvbiBnZXRBcmcoYUFyZ3MsIGFOYW1lLCBhRGVmYXVsdFZhbHVlKSB7CiAgICAgIGlmIChhTmFtZSBpbiBhQXJncykgewogICAgICAgIHJldHVybiBhQXJnc1thTmFtZV07CiAgICAgIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykgewogICAgICAgIHJldHVybiBhRGVmYXVsdFZhbHVlOwogICAgICB9CiAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhTmFtZSArICciIGlzIGEgcmVxdWlyZWQgYXJndW1lbnQuJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRBcmcgPSBnZXRBcmc7CiAgICB2YXIgdXJsUmVnZXhwID0gL14oPzooW1x3K1wtLl0rKTopP1wvXC8oPzooXHcrOlx3KylAKT8oW1x3Li1dKikoPzo6KFxkKykpPyguKikkLzsKICAgIHZhciBkYXRhVXJsUmVnZXhwID0gL15kYXRhOi4rXCwuKyQvOwogICAgZnVuY3Rpb24gdXJsUGFyc2UoYVVybCkgewogICAgICBjb25zdCBtYXRjaCA9IGFVcmwubWF0Y2godXJsUmVnZXhwKTsKICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgc2NoZW1lOiBtYXRjaFsxXSwKICAgICAgICBhdXRoOiBtYXRjaFsyXSwKICAgICAgICBob3N0OiBtYXRjaFszXSwKICAgICAgICBwb3J0OiBtYXRjaFs0XSwKICAgICAgICBwYXRoOiBtYXRjaFs1XQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIudXJsUGFyc2UgPSB1cmxQYXJzZTsKICAgIGZ1bmN0aW9uIHVybEdlbmVyYXRlKGFQYXJzZWRVcmwpIHsKICAgICAgbGV0IHVybDMgPSAiIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuc2NoZW1lKSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLnNjaGVtZSArICI6IjsKICAgICAgfQogICAgICB1cmwzICs9ICIvLyI7CiAgICAgIGlmIChhUGFyc2VkVXJsLmF1dGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuYXV0aCArICJAIjsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5ob3N0KSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLmhvc3Q7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucG9ydCkgewogICAgICAgIHVybDMgKz0gIjoiICsgYVBhcnNlZFVybC5wb3J0OwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLnBhdGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwucGF0aDsKICAgICAgfQogICAgICByZXR1cm4gdXJsMzsKICAgIH0KICAgIGV4cG9ydHMyLnVybEdlbmVyYXRlID0gdXJsR2VuZXJhdGU7CiAgICB2YXIgTUFYX0NBQ0hFRF9JTlBVVFMgPSAzMjsKICAgIGZ1bmN0aW9uIGxydU1lbW9pemUoZikgewogICAgICBjb25zdCBjYWNoZSA9IFtdOwogICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhY2hlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAoY2FjaGVbaV0uaW5wdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgIGNvbnN0IHRlbXAgPSBjYWNoZVswXTsKICAgICAgICAgICAgY2FjaGVbMF0gPSBjYWNoZVtpXTsKICAgICAgICAgICAgY2FjaGVbaV0gPSB0ZW1wOwogICAgICAgICAgICByZXR1cm4gY2FjaGVbMF0ucmVzdWx0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXN1bHQgPSBmKGlucHV0KTsKICAgICAgICBjYWNoZS51bnNoaWZ0KHsKICAgICAgICAgIGlucHV0LAogICAgICAgICAgcmVzdWx0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGNhY2hlLmxlbmd0aCA+IE1BWF9DQUNIRURfSU5QVVRTKSB7CiAgICAgICAgICBjYWNoZS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0KICAgIHZhciBub3JtYWxpemUgPSBscnVNZW1vaXplKGZ1bmN0aW9uIG5vcm1hbGl6ZTIoYVBhdGgpIHsKICAgICAgbGV0IHBhdGggPSBhUGF0aDsKICAgICAgY29uc3QgdXJsMyA9IHVybFBhcnNlKGFQYXRoKTsKICAgICAgaWYgKHVybDMpIHsKICAgICAgICBpZiAoIXVybDMucGF0aCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBwYXRoID0gdXJsMy5wYXRoOwogICAgICB9CiAgICAgIGNvbnN0IGlzQWJzb2x1dGUgPSBleHBvcnRzMi5pc0Fic29sdXRlKHBhdGgpOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgc3RhcnQgPSBpOwogICAgICAgIGkgPSBwYXRoLmluZGV4T2YoIi8iLCBzdGFydCk7CiAgICAgICAgaWYgKGkgPT09IC0xKSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQpKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQsIGkpKTsKICAgICAgICAgIHdoaWxlIChpIDwgcGF0aC5sZW5ndGggJiYgcGF0aFtpXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IHVwID0gMDsKICAgICAgZm9yIChpID0gcGFydHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBjb25zdCBwYXJ0ID0gcGFydHNbaV07CiAgICAgICAgaWYgKHBhcnQgPT09ICIuIikgewogICAgICAgICAgcGFydHMuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocGFydCA9PT0gIi4uIikgewogICAgICAgICAgdXArKzsKICAgICAgICB9IGVsc2UgaWYgKHVwID4gMCkgewogICAgICAgICAgaWYgKHBhcnQgPT09ICIiKSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpICsgMSwgdXApOwogICAgICAgICAgICB1cCA9IDA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMik7CiAgICAgICAgICAgIHVwLS07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhdGggPSBwYXJ0cy5qb2luKCIvIik7CiAgICAgIGlmIChwYXRoID09PSAiIikgewogICAgICAgIHBhdGggPSBpc0Fic29sdXRlID8gIi8iIDogIi4iOwogICAgICB9CiAgICAgIGlmICh1cmwzKSB7CiAgICAgICAgdXJsMy5wYXRoID0gcGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUodXJsMyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGg7CiAgICB9KTsKICAgIGV4cG9ydHMyLm5vcm1hbGl6ZSA9IG5vcm1hbGl6ZTsKICAgIGZ1bmN0aW9uIGpvaW4yKGFSb290LCBhUGF0aCkgewogICAgICBpZiAoYVJvb3QgPT09ICIiKSB7CiAgICAgICAgYVJvb3QgPSAiLiI7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoID09PSAiIikgewogICAgICAgIGFQYXRoID0gIi4iOwogICAgICB9CiAgICAgIGNvbnN0IGFQYXRoVXJsID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBjb25zdCBhUm9vdFVybCA9IHVybFBhcnNlKGFSb290KTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3QgPSBhUm9vdFVybC5wYXRoIHx8ICIvIjsKICAgICAgfQogICAgICBpZiAoYVBhdGhVcmwgJiYgIWFQYXRoVXJsLnNjaGVtZSkgewogICAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgICAgYVBhdGhVcmwuc2NoZW1lID0gYVJvb3RVcmwuc2NoZW1lOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVBhdGhVcmwpOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCB8fCBhUGF0aC5tYXRjaChkYXRhVXJsUmVnZXhwKSkgewogICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgfQogICAgICBpZiAoYVJvb3RVcmwgJiYgIWFSb290VXJsLmhvc3QgJiYgIWFSb290VXJsLnBhdGgpIHsKICAgICAgICBhUm9vdFVybC5ob3N0ID0gYVBhdGg7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICBjb25zdCBqb2luZWQgPSBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiA/IGFQYXRoIDogbm9ybWFsaXplKGFSb290LnJlcGxhY2UoL1wvKyQvLCAiIikgKyAiLyIgKyBhUGF0aCk7CiAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgIGFSb290VXJsLnBhdGggPSBqb2luZWQ7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICByZXR1cm4gam9pbmVkOwogICAgfQogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGZ1bmN0aW9uKGFQYXRoKSB7CiAgICAgIHJldHVybiBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiB8fCB1cmxSZWdleHAudGVzdChhUGF0aCk7CiAgICB9OwogICAgZnVuY3Rpb24gcmVsYXRpdmUoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBhUm9vdCA9IGFSb290LnJlcGxhY2UoL1wvJC8sICIiKTsKICAgICAgbGV0IGxldmVsID0gMDsKICAgICAgd2hpbGUgKGFQYXRoLmluZGV4T2YoYVJvb3QgKyAiLyIpICE9PSAwKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSBhUm9vdC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgYVJvb3QgPSBhUm9vdC5zbGljZSgwLCBpbmRleCk7CiAgICAgICAgaWYgKGFSb290Lm1hdGNoKC9eKFteXC9dKzpcLyk/XC8qJC8pKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgICsrbGV2ZWw7CiAgICAgIH0KICAgICAgcmV0dXJuIEFycmF5KGxldmVsICsgMSkuam9pbigiLi4vIikgKyBhUGF0aC5zdWJzdHIoYVJvb3QubGVuZ3RoICsgMSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgdmFyIHN1cHBvcnRzTnVsbFByb3RvID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICByZXR1cm4gISgiX19wcm90b19fIiBpbiBvYmopOwogICAgfSgpOwogICAgZnVuY3Rpb24gaWRlbnRpdHkocykgewogICAgICByZXR1cm4gczsKICAgIH0KICAgIGZ1bmN0aW9uIHRvU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gIiQiICsgYVN0cjsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLnRvU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IHRvU2V0U3RyaW5nOwogICAgZnVuY3Rpb24gZnJvbVNldFN0cmluZyhhU3RyKSB7CiAgICAgIGlmIChpc1Byb3RvU3RyaW5nKGFTdHIpKSB7CiAgICAgICAgcmV0dXJuIGFTdHIuc2xpY2UoMSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFTdHI7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IGZyb21TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBpc1Byb3RvU3RyaW5nKHMpIHsKICAgICAgaWYgKCFzKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0IGxlbmd0aCA9IHMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoIDwgOSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBpZiAocy5jaGFyQ29kZUF0KGxlbmd0aCAtIDEpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMikgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAzKSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA0KSAhPT0gMTE2IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA1KSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA2KSAhPT0gMTE0IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA3KSAhPT0gMTEyIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA4KSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDkpICE9PSA5NSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gbGVuZ3RoIC0gMTA7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHMuY2hhckNvZGVBdChpKSAhPT0gMzYpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyhtYXBwaW5nQSwgbWFwcGluZ0IsIG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgbGV0IGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZU9yaWdpbmFsKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMgPSBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9uczsKICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDAgfHwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQ7CiAgICBmdW5jdGlvbiBzdHJjbXAoYVN0cjEsIGFTdHIyKSB7CiAgICAgIGlmIChhU3RyMSA9PT0gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMDsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICBpZiAoYVN0cjIgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgaWYgKGFTdHIxID4gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICByZXR1cm4gLTE7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nQSwgbWFwcGluZ0IpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQ7CiAgICBmdW5jdGlvbiBwYXJzZVNvdXJjZU1hcElucHV0KHN0cjIpIHsKICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyMi5yZXBsYWNlKC9eXCldfSdbXlxuXSpcbi8sICIiKSk7CiAgICB9CiAgICBleHBvcnRzMi5wYXJzZVNvdXJjZU1hcElucHV0ID0gcGFyc2VTb3VyY2VNYXBJbnB1dDsKICAgIGZ1bmN0aW9uIGNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlVVJMLCBzb3VyY2VNYXBVUkwpIHsKICAgICAgc291cmNlVVJMID0gc291cmNlVVJMIHx8ICIiOwogICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgIGlmIChzb3VyY2VSb290W3NvdXJjZVJvb3QubGVuZ3RoIC0gMV0gIT09ICIvIiAmJiBzb3VyY2VVUkxbMF0gIT09ICIvIikgewogICAgICAgICAgc291cmNlUm9vdCArPSAiLyI7CiAgICAgICAgfQogICAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVJvb3QgKyBzb3VyY2VVUkw7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZU1hcFVSTCkgewogICAgICAgIGNvbnN0IHBhcnNlZCA9IHVybFBhcnNlKHNvdXJjZU1hcFVSTCk7CiAgICAgICAgaWYgKCFwYXJzZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigic291cmNlTWFwVVJMIGNvdWxkIG5vdCBiZSBwYXJzZWQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5wYXRoKSB7CiAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcnNlZC5wYXRoLmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IHBhcnNlZC5wYXRoLnN1YnN0cmluZygwLCBpbmRleCArIDEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBqb2luMih1cmxHZW5lcmF0ZShwYXJzZWQpLCBzb3VyY2VVUkwpOwogICAgICB9CiAgICAgIHJldHVybiBub3JtYWxpemUoc291cmNlVVJMKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXB1dGVTb3VyY2VVUkwgPSBjb21wdXRlU291cmNlVVJMOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzIihleHBvcnRzMikgewogICAgdmFyIEFycmF5U2V0ID0gY2xhc3MgX0FycmF5U2V0IHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fYXJyYXkgPSBbXTsKICAgICAgICB0aGlzLl9zZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTdGF0aWMgbWV0aG9kIGZvciBjcmVhdGluZyBBcnJheVNldCBpbnN0YW5jZXMgZnJvbSBhbiBleGlzdGluZyBhcnJheS4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tQXJyYXkoYUFycmF5LCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3Qgc2V0MiA9IG5ldyBfQXJyYXlTZXQoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYUFycmF5Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBzZXQyLmFkZChhQXJyYXlbaV0sIGFBbGxvd0R1cGxpY2F0ZXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0MjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIGhvdyBtYW55IHVuaXF1ZSBpdGVtcyBhcmUgaW4gdGhpcyBBcnJheVNldC4gSWYgZHVwbGljYXRlcyBoYXZlIGJlZW4KICAgICAgICogYWRkZWQsIHRoYW4gdGhvc2UgZG8gbm90IGNvdW50IHRvd2FyZHMgdGhlIHNpemUuCiAgICAgICAqCiAgICAgICAqIEByZXR1cm5zIE51bWJlcgogICAgICAgKi8KICAgICAgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LnNpemU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoaXMgc2V0LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGFkZChhU3RyLCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmhhcyhhU3RyKTsKICAgICAgICBjb25zdCBpZHggPSB0aGlzLl9hcnJheS5sZW5ndGg7CiAgICAgICAgaWYgKCFpc0R1cGxpY2F0ZSB8fCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgICB0aGlzLl9hcnJheS5wdXNoKGFTdHIpOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzRHVwbGljYXRlKSB7CiAgICAgICAgICB0aGlzLl9zZXQuc2V0KGFTdHIsIGlkeCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJcyB0aGUgZ2l2ZW4gc3RyaW5nIGEgbWVtYmVyIG9mIHRoaXMgc2V0PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGhhcyhhU3RyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NldC5oYXMoYVN0cik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGluZGV4IG9mIHRoZSBnaXZlbiBzdHJpbmcgaW4gdGhlIGFycmF5PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGluZGV4T2YoYVN0cikgewogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX3NldC5nZXQoYVN0cik7CiAgICAgICAgaWYgKGlkeCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVN0ciArICciIGlzIG5vdCBpbiB0aGUgc2V0LicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXaGF0IGlzIHRoZSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleD8KICAgICAgICoKICAgICAgICogQHBhcmFtIE51bWJlciBhSWR4CiAgICAgICAqLwogICAgICBhdChhSWR4KSB7CiAgICAgICAgaWYgKGFJZHggPj0gMCAmJiBhSWR4IDwgdGhpcy5fYXJyYXkubGVuZ3RoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXlbYUlkeF07CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBpbmRleGVkIGJ5ICIgKyBhSWR4KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgYXJyYXkgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzZXQgKHdoaWNoIGhhcyB0aGUgcHJvcGVyIGluZGljZXMKICAgICAgICogaW5kaWNhdGVkIGJ5IGluZGV4T2YpLiBOb3RlIHRoYXQgdGhpcyBpcyBhIGNvcHkgb2YgdGhlIGludGVybmFsIGFycmF5IHVzZWQKICAgICAgICogZm9yIHN0b3JpbmcgdGhlIG1lbWJlcnMgc28gdGhhdCBubyBvbmUgY2FuIG1lc3Mgd2l0aCBpbnRlcm5hbCBzdGF0ZS4KICAgICAgICovCiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FycmF5LnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BcnJheVNldCA9IEFycmF5U2V0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzCnZhciByZXF1aXJlX21hcHBpbmdfbGlzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWdlbmVyYXRvci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1nZW5lcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgTWFwcGluZ0xpc3QgPSByZXF1aXJlX21hcHBpbmdfbGlzdCgpLk1hcHBpbmdMaXN0OwogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IGNsYXNzIF9Tb3VyY2VNYXBHZW5lcmF0b3IgewogICAgICBjb25zdHJ1Y3RvcihhQXJncykgewogICAgICAgIGlmICghYUFyZ3MpIHsKICAgICAgICAgIGFBcmdzID0ge307CiAgICAgICAgfQogICAgICAgIHRoaXMuX2ZpbGUgPSB1dGlsLmdldEFyZyhhQXJncywgImZpbGUiLCBudWxsKTsKICAgICAgICB0aGlzLl9zb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc2tpcFZhbGlkYXRpb24gPSB1dGlsLmdldEFyZyhhQXJncywgInNraXBWYWxpZGF0aW9uIiwgZmFsc2UpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzID0gbmV3IE1hcHBpbmdMaXN0KCk7CiAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlcyBhIG5ldyBTb3VyY2VNYXBHZW5lcmF0b3IgYmFzZWQgb24gYSBTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBTb3VyY2VNYXAuCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwQ29uc3VtZXIpIHsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZVJvb3Q7CiAgICAgICAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IF9Tb3VyY2VNYXBHZW5lcmF0b3IoewogICAgICAgICAgZmlsZTogYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUsCiAgICAgICAgICBzb3VyY2VSb290CiAgICAgICAgfSk7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLmVhY2hNYXBwaW5nKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGNvbnN0IG5ld01hcHBpbmcgPSB7CiAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uCiAgICAgICAgICAgIH0KICAgICAgICAgIH07CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICBuZXdNYXBwaW5nLnNvdXJjZSA9IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIG5ld01hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZXdNYXBwaW5nLm9yaWdpbmFsID0gewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICBuZXdNYXBwaW5nLm5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGdlbmVyYXRvci5hZGRNYXBwaW5nKG5ld01hcHBpbmcpOwogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgbGV0IHNvdXJjZVJlbGF0aXZlID0gc291cmNlRmlsZTsKICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZVJlbGF0aXZlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZ2VuZXJhdG9yLl9zb3VyY2VzLmhhcyhzb3VyY2VSZWxhdGl2ZSkpIHsKICAgICAgICAgICAgZ2VuZXJhdG9yLl9zb3VyY2VzLmFkZChzb3VyY2VSZWxhdGl2ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBnZW5lcmF0b3I7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHNpbmdsZSBtYXBwaW5nIGZyb20gb3JpZ2luYWwgc291cmNlIGxpbmUgYW5kIGNvbHVtbiB0byB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBmb3IgdGhpcyBzb3VyY2UgbWFwIGJlaW5nIGNyZWF0ZWQuIFRoZSBtYXBwaW5nCiAgICAgICAqIG9iamVjdCBzaG91bGQgaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBnZW5lcmF0ZWQ6IEFuIG9iamVjdCB3aXRoIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIG9yaWdpbmFsOiBBbiBvYmplY3Qgd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIChyZWxhdGl2ZSB0byB0aGUgc291cmNlUm9vdCkuCiAgICAgICAqICAgLSBuYW1lOiBBbiBvcHRpb25hbCBvcmlnaW5hbCB0b2tlbiBuYW1lIGZvciB0aGlzIG1hcHBpbmcuCiAgICAgICAqLwogICAgICBhZGRNYXBwaW5nKGFBcmdzKSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJnZW5lcmF0ZWQiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAib3JpZ2luYWwiLCBudWxsKTsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibmFtZSIsIG51bGwpOwogICAgICAgIGlmICghdGhpcy5fc2tpcFZhbGlkYXRpb24pIHsKICAgICAgICAgIHRoaXMuX3ZhbGlkYXRlTWFwcGluZyhnZW5lcmF0ZWQsIG9yaWdpbmFsLCBzb3VyY2UsIG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IFN0cmluZyhzb3VyY2UpOwogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChuYW1lICE9IG51bGwpIHsKICAgICAgICAgIG5hbWUgPSBTdHJpbmcobmFtZSk7CiAgICAgICAgICBpZiAoIXRoaXMuX25hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzLmFkZCh7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbiwKICAgICAgICAgIG9yaWdpbmFsTGluZTogb3JpZ2luYWwgIT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uLAogICAgICAgICAgc291cmNlLAogICAgICAgICAgbmFtZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTZXQgdGhlIHNvdXJjZSBjb250ZW50IGZvciBhIHNvdXJjZSBmaWxlLgogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICBsZXQgc291cmNlID0gYVNvdXJjZUZpbGU7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLl9zb3VyY2VSb290LCBzb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAoYVNvdXJjZUNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzQ29udGVudHMpIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zb3VyY2VzQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhzb3VyY2UpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBkZWxldGUgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV07CiAgICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fc291cmNlc0NvbnRlbnRzKS5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFwcGxpZXMgdGhlIG1hcHBpbmdzIG9mIGEgc3ViLXNvdXJjZS1tYXAgZm9yIGEgc3BlY2lmaWMgc291cmNlIGZpbGUgdG8gdGhlCiAgICAgICAqIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkLiBFYWNoIG1hcHBpbmcgdG8gdGhlIHN1cHBsaWVkIHNvdXJjZSBmaWxlIGlzCiAgICAgICAqIHJld3JpdHRlbiB1c2luZyB0aGUgc3VwcGxpZWQgc291cmNlIG1hcC4gTm90ZTogVGhlIHJlc29sdXRpb24gZm9yIHRoZQogICAgICAgKiByZXN1bHRpbmcgbWFwcGluZ3MgaXMgdGhlIG1pbmltaXVtIG9mIHRoaXMgbWFwIGFuZCB0aGUgc3VwcGxpZWQgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlRmlsZSBPcHRpb25hbC4gVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZS4KICAgICAgICogICAgICAgIElmIG9taXR0ZWQsIFNvdXJjZU1hcENvbnN1bWVyJ3MgZmlsZSBwcm9wZXJ0eSB3aWxsIGJlIHVzZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwUGF0aCBPcHRpb25hbC4gVGhlIGRpcm5hbWUgb2YgdGhlIHBhdGggdG8gdGhlIHNvdXJjZSBtYXAKICAgICAgICogICAgICAgIHRvIGJlIGFwcGxpZWQuIElmIHJlbGF0aXZlLCBpdCBpcyByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBuZWVkZWQgd2hlbiB0aGUgdHdvIHNvdXJjZSBtYXBzIGFyZW4ndCBpbiB0aGUgc2FtZQogICAgICAgKiAgICAgICAgZGlyZWN0b3J5LCBhbmQgdGhlIHNvdXJjZSBtYXAgdG8gYmUgYXBwbGllZCBjb250YWlucyByZWxhdGl2ZSBzb3VyY2UKICAgICAgICogICAgICAgIHBhdGhzLiBJZiBzbywgdGhvc2UgcmVsYXRpdmUgc291cmNlIHBhdGhzIG5lZWQgdG8gYmUgcmV3cml0dGVuCiAgICAgICAqICAgICAgICByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKi8KICAgICAgYXBwbHlTb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyLCBhU291cmNlRmlsZSwgYVNvdXJjZU1hcFBhdGgpIHsKICAgICAgICBsZXQgc291cmNlRmlsZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmIChhU291cmNlRmlsZSA9PSBudWxsKSB7CiAgICAgICAgICBpZiAoYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUgPT0gbnVsbCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYFNvdXJjZU1hcEdlbmVyYXRvci5wcm90b3R5cGUuYXBwbHlTb3VyY2VNYXAgcmVxdWlyZXMgZWl0aGVyIGFuIGV4cGxpY2l0IHNvdXJjZSBmaWxlLCBvciB0aGUgc291cmNlIG1hcCdzICJmaWxlIiBwcm9wZXJ0eS4gQm90aCB3ZXJlIG9taXR0ZWQuYAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlRmlsZSA9IGFTb3VyY2VNYXBDb25zdW1lci5maWxlOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3U291cmNlcyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKS5sZW5ndGggPiAwID8gbmV3IEFycmF5U2V0KCkgOiB0aGlzLl9zb3VyY2VzOwogICAgICAgIGNvbnN0IG5ld05hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbWFwcGluZ3MudW5zb3J0ZWRGb3JFYWNoKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gc291cmNlRmlsZSAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSAhPSBudWxsKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gYVNvdXJjZU1hcENvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBvcmlnaW5hbC5zb3VyY2U7CiAgICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWwubGluZTsKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWwuY29sdW1uOwogICAgICAgICAgICAgIGlmIChvcmlnaW5hbC5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgIGlmIChzb3VyY2UgIT0gbnVsbCAmJiAhbmV3U291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICBuZXdTb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbmFtZSA9IG1hcHBpbmcubmFtZTsKICAgICAgICAgIGlmIChuYW1lICE9IG51bGwgJiYgIW5ld05hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICBuZXdOYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgdGhpcy5fc291cmNlcyA9IG5ld1NvdXJjZXM7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXdOYW1lczsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNyY0ZpbGUpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlQ29udGVudEZvcihzcmNGaWxlKTsKICAgICAgICAgIGlmIChjb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzcmNGaWxlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBzcmNGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zZXRTb3VyY2VDb250ZW50KHNyY0ZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBIG1hcHBpbmcgY2FuIGhhdmUgb25lIG9mIHRoZSB0aHJlZSBsZXZlbHMgb2YgZGF0YToKICAgICAgICoKICAgICAgICogICAxLiBKdXN0IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb24uCiAgICAgICAqICAgMi4gVGhlIEdlbmVyYXRlZCBwb3NpdGlvbiwgb3JpZ2luYWwgcG9zaXRpb24sIGFuZCBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgMy4gR2VuZXJhdGVkIGFuZCBvcmlnaW5hbCBwb3NpdGlvbiwgb3JpZ2luYWwgc291cmNlLCBhcyB3ZWxsIGFzIGEgbmFtZQogICAgICAgKiAgICAgIHRva2VuLgogICAgICAgKgogICAgICAgKiBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSwgd2UgdmFsaWRhdGUgdGhhdCBhbnkgbmV3IG1hcHBpbmcgYmVpbmcgYWRkZWQgZmFsbHMKICAgICAgICogaW4gdG8gb25lIG9mIHRoZXNlIGNhdGVnb3JpZXMuCiAgICAgICAqLwogICAgICBfdmFsaWRhdGVNYXBwaW5nKGFHZW5lcmF0ZWQsIGFPcmlnaW5hbCwgYVNvdXJjZSwgYU5hbWUpIHsKICAgICAgICBpZiAoYU9yaWdpbmFsICYmIHR5cGVvZiBhT3JpZ2luYWwubGluZSAhPT0gIm51bWJlciIgJiYgdHlwZW9mIGFPcmlnaW5hbC5jb2x1bW4gIT09ICJudW1iZXIiKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJvcmlnaW5hbC5saW5lIGFuZCBvcmlnaW5hbC5jb2x1bW4gYXJlIG5vdCBudW1iZXJzIC0tIHlvdSBwcm9iYWJseSBtZWFudCB0byBvbWl0IHRoZSBvcmlnaW5hbCBtYXBwaW5nIGVudGlyZWx5IGFuZCBvbmx5IG1hcCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLiBJZiBzbywgcGFzcyBudWxsIGZvciB0aGUgb3JpZ2luYWwgbWFwcGluZyBpbnN0ZWFkIG9mIGFuIG9iamVjdCB3aXRoIGVtcHR5IG9yIG51bGwgdmFsdWVzLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYUdlbmVyYXRlZC5saW5lID4gMCAmJiBhR2VuZXJhdGVkLmNvbHVtbiA+PSAwICYmICFhT3JpZ2luYWwgJiYgIWFTb3VyY2UgJiYgIWFOYW1lKSB7CiAgICAgICAgfSBlbHNlIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYU9yaWdpbmFsICYmICJsaW5lIiBpbiBhT3JpZ2luYWwgJiYgImNvbHVtbiIgaW4gYU9yaWdpbmFsICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiBhT3JpZ2luYWwubGluZSA+IDAgJiYgYU9yaWdpbmFsLmNvbHVtbiA+PSAwICYmIGFTb3VyY2UpIHsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hcHBpbmc6ICIgKyBKU09OLnN0cmluZ2lmeSh7CiAgICAgICAgICAgIGdlbmVyYXRlZDogYUdlbmVyYXRlZCwKICAgICAgICAgICAgc291cmNlOiBhU291cmNlLAogICAgICAgICAgICBvcmlnaW5hbDogYU9yaWdpbmFsLAogICAgICAgICAgICBuYW1lOiBhTmFtZQogICAgICAgICAgfSkpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogU2VyaWFsaXplIHRoZSBhY2N1bXVsYXRlZCBtYXBwaW5ncyBpbiB0byB0aGUgc3RyZWFtIG9mIGJhc2UgNjQgVkxRcwogICAgICAgKiBzcGVjaWZpZWQgYnkgdGhlIHNvdXJjZSBtYXAgZm9ybWF0LgogICAgICAgKi8KICAgICAgX3NlcmlhbGl6ZU1hcHBpbmdzKCkgewogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzR2VuZXJhdGVkTGluZSA9IDE7CiAgICAgICAgbGV0IHByZXZpb3VzT3JpZ2luYWxDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsTGluZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzTmFtZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzU291cmNlID0gMDsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgbGV0IG5hbWVJZHg7CiAgICAgICAgbGV0IHNvdXJjZUlkeDsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gbWFwcGluZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmcgPSBtYXBwaW5nc1tpXTsKICAgICAgICAgIG5leHQgPSAiIjsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIG5leHQgKz0gIjsiOwogICAgICAgICAgICAgIHByZXZpb3VzR2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgIGlmICghdXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nLCBtYXBwaW5nc1tpIC0gMV0pKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV4dCArPSAiLCI7CiAgICAgICAgICB9CiAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBwcmV2aW91c0dlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlSWR4ID0gdGhpcy5fc291cmNlcy5pbmRleE9mKG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKHNvdXJjZUlkeCAtIHByZXZpb3VzU291cmNlKTsKICAgICAgICAgICAgcHJldmlvdXNTb3VyY2UgPSBzb3VyY2VJZHg7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShtYXBwaW5nLm9yaWdpbmFsTGluZSAtIDEgLSBwcmV2aW91c09yaWdpbmFsTGluZSk7CiAgICAgICAgICAgIHByZXZpb3VzT3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmUgLSAxOwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbENvbHVtbiAtIHByZXZpb3VzT3JpZ2luYWxDb2x1bW4pOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZUlkeCA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobmFtZUlkeCAtIHByZXZpb3VzTmFtZSk7CiAgICAgICAgICAgICAgcHJldmlvdXNOYW1lID0gbmFtZUlkeDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmVzdWx0ICs9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgX2dlbmVyYXRlU291cmNlc0NvbnRlbnQoYVNvdXJjZXMsIGFTb3VyY2VSb290KSB7CiAgICAgICAgcmV0dXJuIGFTb3VyY2VzLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFTb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZShhU291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtleSA9IHV0aWwudG9TZXRTdHJpbmcoc291cmNlKTsKICAgICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5fc291cmNlc0NvbnRlbnRzLCBrZXkpID8gdGhpcy5fc291cmNlc0NvbnRlbnRzW2tleV0gOiBudWxsOwogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBFeHRlcm5hbGl6ZSB0aGUgc291cmNlIG1hcC4KICAgICAgICovCiAgICAgIHRvSlNPTigpIHsKICAgICAgICBjb25zdCBtYXAyID0gewogICAgICAgICAgdmVyc2lvbjogdGhpcy5fdmVyc2lvbiwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMuX3NvdXJjZXMudG9BcnJheSgpLAogICAgICAgICAgbmFtZXM6IHRoaXMuX25hbWVzLnRvQXJyYXkoKSwKICAgICAgICAgIG1hcHBpbmdzOiB0aGlzLl9zZXJpYWxpemVNYXBwaW5ncygpCiAgICAgICAgfTsKICAgICAgICBpZiAodGhpcy5fZmlsZSAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLmZpbGUgPSB0aGlzLl9maWxlOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZVJvb3QgPSB0aGlzLl9zb3VyY2VSb290OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBtYXAyLnNvdXJjZXNDb250ZW50ID0gdGhpcy5fZ2VuZXJhdGVTb3VyY2VzQ29udGVudChtYXAyLnNvdXJjZXMsIG1hcDIuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZW5kZXIgdGhlIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkIHRvIGEgc3RyaW5nLgogICAgICAgKi8KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwR2VuZXJhdG9yLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSBTb3VyY2VNYXBHZW5lcmF0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iaW5hcnktc2VhcmNoLmpzCnZhciByZXF1aXJlX2JpbmFyeV9zZWFyY2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMiKGV4cG9ydHMyKSB7CiAgICBleHBvcnRzMi5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBmdW5jdGlvbiByZWN1cnNpdmVTZWFyY2goYUxvdywgYUhpZ2gsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKSB7CiAgICAgIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IoKGFIaWdoIC0gYUxvdykgLyAyKSArIGFMb3c7CiAgICAgIGNvbnN0IGNtcCA9IGFDb21wYXJlKGFOZWVkbGUsIGFIYXlzdGFja1ttaWRdLCB0cnVlKTsKICAgICAgaWYgKGNtcCA9PT0gMCkgewogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0gZWxzZSBpZiAoY21wID4gMCkgewogICAgICAgIGlmIChhSGlnaCAtIG1pZCA+IDEpIHsKICAgICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2gobWlkLCBhSGlnaCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpOwogICAgICAgIH0KICAgICAgICBpZiAoYUJpYXMgPT0gZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQpIHsKICAgICAgICAgIHJldHVybiBhSGlnaCA8IGFIYXlzdGFjay5sZW5ndGggPyBhSGlnaCA6IC0xOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWlkOwogICAgICB9CiAgICAgIGlmIChtaWQgLSBhTG93ID4gMSkgewogICAgICAgIHJldHVybiByZWN1cnNpdmVTZWFyY2goYUxvdywgbWlkLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcyk7CiAgICAgIH0KICAgICAgaWYgKGFCaWFzID09IGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EKSB7CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfQogICAgICByZXR1cm4gYUxvdyA8IDAgPyAtMSA6IGFMb3c7CiAgICB9CiAgICBleHBvcnRzMi5zZWFyY2ggPSBmdW5jdGlvbiBzZWFyY2goYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpIHsKICAgICAgaWYgKGFIYXlzdGFjay5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgbGV0IGluZGV4ID0gcmVjdXJzaXZlU2VhcmNoKAogICAgICAgIC0xLAogICAgICAgIGFIYXlzdGFjay5sZW5ndGgsCiAgICAgICAgYU5lZWRsZSwKICAgICAgICBhSGF5c3RhY2ssCiAgICAgICAgYUNvbXBhcmUsCiAgICAgICAgYUJpYXMgfHwgZXhwb3J0czIuR1JFQVRFU1RfTE9XRVJfQk9VTkQKICAgICAgKTsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICB3aGlsZSAoaW5kZXggLSAxID49IDApIHsKICAgICAgICBpZiAoYUNvbXBhcmUoYUhheXN0YWNrW2luZGV4XSwgYUhheXN0YWNrW2luZGV4IC0gMV0sIHRydWUpICE9PSAwKSB7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgLS1pbmRleDsKICAgICAgfQogICAgICByZXR1cm4gaW5kZXg7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzCnZhciByZXF1aXJlX3JlYWRfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGlzQnJvd3NlckVudmlyb25tZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd2luZG93ICE9PSAidW5kZWZpbmVkIiAmJiB0aGlzID09PSB3aW5kb3c7CiAgICB9LmNhbGwoKTsKICAgIGlmIChpc0Jyb3dzZXJFbnZpcm9ubWVudCkgewogICAgICBsZXQgbWFwcGluZ3NXYXNtID0gbnVsbDsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgaWYgKHR5cGVvZiBtYXBwaW5nc1dhc20gPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gZmV0Y2gobWFwcGluZ3NXYXNtKS50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKSk7CiAgICAgICAgfQogICAgICAgIGlmIChtYXBwaW5nc1dhc20gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikgewogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYXBwaW5nc1dhc20pOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIllvdSBtdXN0IHByb3ZpZGUgdGhlIHN0cmluZyBVUkwgb3IgQXJyYXlCdWZmZXIgY29udGVudHMgb2YgbGliL21hcHBpbmdzLndhc20gYnkgY2FsbGluZyBTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplKHsgJ2xpYi9tYXBwaW5ncy53YXNtJzogLi4uIH0pIGJlZm9yZSB1c2luZyBTb3VyY2VNYXBDb25zdW1lciIpOwogICAgICB9OwogICAgICBtb2R1bGUyLmV4cG9ydHMuaW5pdGlhbGl6ZSA9IChpbnB1dCkgPT4gbWFwcGluZ3NXYXNtID0gaW5wdXQ7CiAgICB9IGVsc2UgewogICAgICBjb25zdCBmcyA9IHJlcXVpcmUoImZzIik7CiAgICAgIGNvbnN0IHBhdGggPSByZXF1aXJlKCJwYXRoIik7CiAgICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHJlYWRXYXNtKCkgewogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CiAgICAgICAgICBjb25zdCB3YXNtUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICJtYXBwaW5ncy53YXNtIik7CiAgICAgICAgICBmcy5yZWFkRmlsZSh3YXNtUGF0aCwgbnVsbCwgKGVycm9yLCBkYXRhKSA9PiB7CiAgICAgICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgIHJlamVjdChlcnJvcik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc29sdmUoZGF0YS5idWZmZXIpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKF8pID0+IHsKICAgICAgICBjb25zb2xlLmRlYnVnKCJTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplIGlzIGEgbm8tb3Agd2hlbiBydW5uaW5nIGluIG5vZGUuanMiKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3dhc20uanMKdmFyIHJlcXVpcmVfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICBmdW5jdGlvbiBNYXBwaW5nKCkgewogICAgICB0aGlzLmdlbmVyYXRlZExpbmUgPSAwOwogICAgICB0aGlzLmdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgIHRoaXMubGFzdEdlbmVyYXRlZENvbHVtbiA9IG51bGw7CiAgICAgIHRoaXMuc291cmNlID0gbnVsbDsKICAgICAgdGhpcy5vcmlnaW5hbExpbmUgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5uYW1lID0gbnVsbDsKICAgIH0KICAgIHZhciBjYWNoZWRXYXNtID0gbnVsbDsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHdhc20oKSB7CiAgICAgIGlmIChjYWNoZWRXYXNtKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICAgIH0KICAgICAgY29uc3QgY2FsbGJhY2tTdGFjayA9IFtdOwogICAgICBjYWNoZWRXYXNtID0gcmVhZFdhc20oKS50aGVuKChidWZmZXIpID0+IHsKICAgICAgICByZXR1cm4gV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoYnVmZmVyLCB7CiAgICAgICAgICBlbnY6IHsKICAgICAgICAgICAgbWFwcGluZ19jYWxsYmFjayhnZW5lcmF0ZWRMaW5lLCBnZW5lcmF0ZWRDb2x1bW4sIGhhc0xhc3RHZW5lcmF0ZWRDb2x1bW4sIGxhc3RHZW5lcmF0ZWRDb2x1bW4sIGhhc09yaWdpbmFsLCBzb3VyY2UsIG9yaWdpbmFsTGluZSwgb3JpZ2luYWxDb2x1bW4sIGhhc05hbWUsIG5hbWUpIHsKICAgICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gbmV3IE1hcHBpbmcoKTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPSBnZW5lcmF0ZWRMaW5lICsgMTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiA9IGdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAoaGFzTGFzdEdlbmVyYXRlZENvbHVtbikgewogICAgICAgICAgICAgICAgbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbGFzdEdlbmVyYXRlZENvbHVtbiAtIDE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChoYXNPcmlnaW5hbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsTGluZSArIDE7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgICAgICBpZiAoaGFzTmFtZSkgewogICAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjYWxsYmFja1N0YWNrW2NhbGxiYWNrU3RhY2subGVuZ3RoIC0gMV0obWFwcGluZyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2FsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2dlbmVyYXRlZF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJnZW5lcmF0ZWRfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X29yaWdpbmFsX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoIm9yaWdpbmFsX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KS50aGVuKChXYXNtKSA9PiB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGV4cG9ydHM6IFdhc20uaW5zdGFuY2UuZXhwb3J0cywKICAgICAgICAgIHdpdGhNYXBwaW5nQ2FsbGJhY2s6IChtYXBwaW5nQ2FsbGJhY2ssIGYpID0+IHsKICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wdXNoKG1hcHBpbmdDYWxsYmFjayk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZigpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2sucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KS50aGVuKG51bGwsIChlKSA9PiB7CiAgICAgICAgY2FjaGVkV2FzbSA9IG51bGw7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBjYWNoZWRXYXNtOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtY29uc3VtZXIuanMKdmFyIHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcyIoZXhwb3J0czIpIHsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIGJpbmFyeVNlYXJjaCA9IHJlcXVpcmVfYmluYXJ5X3NlYXJjaCgpOwogICAgdmFyIEFycmF5U2V0ID0gcmVxdWlyZV9hcnJheV9zZXQoKS5BcnJheVNldDsKICAgIHZhciBiYXNlNjRWTFEgPSByZXF1aXJlX2Jhc2U2NF92bHEoKTsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICB2YXIgd2FzbSA9IHJlcXVpcmVfd2FzbSgpOwogICAgdmFyIElOVEVSTkFMID0gU3ltYm9sKCJzbWNJbnRlcm5hbCIpOwogICAgdmFyIFNvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgX1NvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIGlmIChhU291cmNlTWFwID09IElOVEVSTkFMKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX2ZhY3RvcnkoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIH0KICAgICAgc3RhdGljIGluaXRpYWxpemUob3B0cykgewogICAgICAgIHJlYWRXYXNtLmluaXRpYWxpemUob3B0c1sibGliL21hcHBpbmdzLndhc20iXSk7CiAgICAgIH0KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBfZmFjdG9yeUJTTShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29uc3RydWN0IGEgbmV3IGBTb3VyY2VNYXBDb25zdW1lcmAgZnJvbSBgcmF3U291cmNlTWFwYCBhbmQgYHNvdXJjZU1hcFVybGAKICAgICAgICogKHNlZSB0aGUgYFNvdXJjZU1hcENvbnN1bWVyYCBjb25zdHJ1Y3RvciBmb3IgZGV0YWlscy4gVGhlbiwgaW52b2tlIHRoZSBgYXN5bmMKICAgICAgICogZnVuY3Rpb24gZihTb3VyY2VNYXBDb25zdW1lcikgLT4gVGAgd2l0aCB0aGUgbmV3bHkgY29uc3RydWN0ZWQgY29uc3VtZXIsIHdhaXQKICAgICAgICogZm9yIGBmYCB0byBjb21wbGV0ZSwgY2FsbCBgZGVzdHJveWAgb24gdGhlIGNvbnN1bWVyLCBhbmQgcmV0dXJuIGBmYCdzIHJldHVybgogICAgICAgKiB2YWx1ZS4KICAgICAgICoKICAgICAgICogWW91IG11c3Qgbm90IHVzZSB0aGUgY29uc3VtZXIgYWZ0ZXIgYGZgIGNvbXBsZXRlcyEKICAgICAgICoKICAgICAgICogQnkgdXNpbmcgYHdpdGhgLCB5b3UgZG8gbm90IGhhdmUgdG8gcmVtZW1iZXIgdG8gbWFudWFsbHkgY2FsbCBgZGVzdHJveWAgb24KICAgICAgICogdGhlIGNvbnN1bWVyLCBzaW5jZSBpdCB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IG9uY2UgYGZgIGNvbXBsZXRlcy4KICAgICAgICoKICAgICAgICogYGBganMKICAgICAgICogY29uc3QgeFNxdWFyZWQgPSBhd2FpdCBTb3VyY2VNYXBDb25zdW1lci53aXRoKAogICAgICAgKiAgIG15UmF3U291cmNlTWFwLAogICAgICAgKiAgIG51bGwsCiAgICAgICAqICAgYXN5bmMgZnVuY3Rpb24gKGNvbnN1bWVyKSB7CiAgICAgICAqICAgICAvLyBVc2UgYGNvbnN1bWVyYCBpbnNpZGUgaGVyZSBhbmQgZG9uJ3Qgd29ycnkgYWJvdXQgcmVtZW1iZXJpbmcKICAgICAgICogICAgIC8vIHRvIGNhbGwgYGRlc3Ryb3lgLgogICAgICAgKgogICAgICAgKiAgICAgY29uc3QgeCA9IGF3YWl0IHdoYXRldmVyKGNvbnN1bWVyKTsKICAgICAgICogICAgIHJldHVybiB4ICogeDsKICAgICAgICogICB9CiAgICAgICAqICk7CiAgICAgICAqCiAgICAgICAqIC8vIFlvdSBtYXkgbm90IHVzZSB0aGF0IGBjb25zdW1lcmAgYW55bW9yZSBvdXQgaGVyZTsgaXQgaGFzCiAgICAgICAqIC8vIGJlZW4gZGVzdHJveWVkLiBCdXQgeW91IGNhbiB1c2UgYHhTcXVhcmVkYC4KICAgICAgICogY29uc29sZS5sb2coeFNxdWFyZWQpOwogICAgICAgKiBgYGAKICAgICAgICovCiAgICAgIHN0YXRpYyBhc3luYyB3aXRoKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsLCBmKSB7CiAgICAgICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgX1NvdXJjZU1hcENvbnN1bWVyKHJhd1NvdXJjZU1hcCwgc291cmNlTWFwVXJsKTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGF3YWl0IGYoY29uc3VtZXIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBjb25zdW1lci5kZXN0cm95KCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgX3BhcnNlTWFwcGluZ3MiKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogSXRlcmF0ZSBvdmVyIGVhY2ggbWFwcGluZyBiZXR3ZWVuIGFuIG9yaWdpbmFsIHNvdXJjZS9saW5lL2NvbHVtbiBhbmQgYQogICAgICAgKiBnZW5lcmF0ZWQgbGluZS9jb2x1bW4gaW4gdGhpcyBzb3VyY2UgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gRnVuY3Rpb24gYUNhbGxiYWNrCiAgICAgICAqICAgICAgICBUaGUgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2l0aCBlYWNoIG1hcHBpbmcuCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYUNvbnRleHQKICAgICAgICogICAgICAgIE9wdGlvbmFsLiBJZiBzcGVjaWZpZWQsIHRoaXMgb2JqZWN0IHdpbGwgYmUgdGhlIHZhbHVlIG9mIGB0aGlzYCBldmVyeQogICAgICAgKiAgICAgICAgdGltZSB0aGF0IGBhQ2FsbGJhY2tgIGlzIGNhbGxlZC4KICAgICAgICogQHBhcmFtIGFPcmRlcgogICAgICAgKiAgICAgICAgRWl0aGVyIGBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVJgIG9yCiAgICAgICAqICAgICAgICBgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVJgLiBTcGVjaWZpZXMgd2hldGhlciB5b3Ugd2FudCB0bwogICAgICAgKiAgICAgICAgaXRlcmF0ZSBvdmVyIHRoZSBtYXBwaW5ncyBzb3J0ZWQgYnkgdGhlIGdlbmVyYXRlZCBmaWxlJ3MgbGluZS9jb2x1bW4KICAgICAgICogICAgICAgIG9yZGVyIG9yIHRoZSBvcmlnaW5hbCdzIHNvdXJjZS9saW5lL2NvbHVtbiBvcmRlciwgcmVzcGVjdGl2ZWx5LiBEZWZhdWx0cyB0bwogICAgICAgKiAgICAgICAgYFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUmAuCiAgICAgICAqLwogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZWFjaE1hcHBpbmciKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbGwgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwcm92aWRlZC4gSWYgbm8gY29sdW1uIGlzIHByb3ZpZGVkLCByZXR1cm5zIGFsbCBtYXBwaW5ncwogICAgICAgKiBjb3JyZXNwb25kaW5nIHRvIGEgZWl0aGVyIHRoZSBsaW5lIHdlIGFyZSBzZWFyY2hpbmcgZm9yIG9yIHRoZSBuZXh0CiAgICAgICAqIGNsb3Nlc3QgbGluZSB0aGF0IGhhcyBhbnkgbWFwcGluZ3MuIE90aGVyd2lzZSwgcmV0dXJucyBhbGwgbWFwcGluZ3MKICAgICAgICogY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gbGluZSBhbmQgZWl0aGVyIHRoZSBjb2x1bW4gd2UgYXJlIHNlYXJjaGluZyBmb3IKICAgICAgICogb3IgdGhlIG5leHQgY2xvc2VzdCBjb2x1bW4gdGhhdCBoYXMgYW55IG9mZnNldHMuCiAgICAgICAqCiAgICAgICAqIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBPcHRpb25hbC4gdGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIGFycmF5IG9mIG9iamVjdHMgaXMgcmV0dXJuZWQsIGVhY2ggd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yIik7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1YmNsYXNzZXMgbXVzdCBpbXBsZW1lbnQgZGVzdHJveSIpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLl92ZXJzaW9uID0gMzsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUiA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUiA9IDI7CiAgICBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCA9IDE7CiAgICBTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCA9IDI7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IFNvdXJjZU1hcENvbnN1bWVyOwogICAgdmFyIEJhc2ljU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBfQmFzaWNTb3VyY2VNYXBDb25zdW1lciBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBsZXQgc291cmNlcyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZXMiKTsKICAgICAgICAgIGNvbnN0IG5hbWVzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibmFtZXMiLCBbXSk7CiAgICAgICAgICBsZXQgc291cmNlUm9vdCA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZVJvb3QiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IHNvdXJjZXNDb250ZW50ID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlc0NvbnRlbnQiLCBudWxsKTsKICAgICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAibWFwcGluZ3MiKTsKICAgICAgICAgIGNvbnN0IGZpbGUgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJmaWxlIiwgbnVsbCk7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZVJvb3QpIHsKICAgICAgICAgICAgc291cmNlUm9vdCA9IHV0aWwubm9ybWFsaXplKHNvdXJjZVJvb3QpOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlcyA9IHNvdXJjZXMubWFwKFN0cmluZykubWFwKHV0aWwubm9ybWFsaXplKS5tYXAoZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2VSb290ICYmIHV0aWwuaXNBYnNvbHV0ZShzb3VyY2VSb290KSAmJiB1dGlsLmlzQWJzb2x1dGUoc291cmNlKSA/IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlKSA6IHNvdXJjZTsKICAgICAgICAgIH0pOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBBcnJheVNldC5mcm9tQXJyYXkobmFtZXMubWFwKFN0cmluZyksIHRydWUpOwogICAgICAgICAgdGhhdC5fc291cmNlcyA9IEFycmF5U2V0LmZyb21BcnJheShzb3VyY2VzLCB0cnVlKTsKICAgICAgICAgIHRoYXQuX2Fic29sdXRlU291cmNlcyA9IHRoYXQuX3NvdXJjZXMudG9BcnJheSgpLm1hcChmdW5jdGlvbihzKSB7CiAgICAgICAgICAgIHJldHVybiB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgcywgYVNvdXJjZU1hcFVSTCk7CiAgICAgICAgICB9KTsKICAgICAgICAgIHRoYXQuc291cmNlUm9vdCA9IHNvdXJjZVJvb3Q7CiAgICAgICAgICB0aGF0LnNvdXJjZXNDb250ZW50ID0gc291cmNlc0NvbnRlbnQ7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICAgICAgdGhhdC5fc291cmNlTWFwVVJMID0gYVNvdXJjZU1hcFVSTDsKICAgICAgICAgIHRoYXQuZmlsZSA9IGZpbGU7CiAgICAgICAgICB0aGF0Ll9jb21wdXRlZENvbHVtblNwYW5zID0gZmFsc2U7CiAgICAgICAgICB0aGF0Ll9tYXBwaW5nc1B0ciA9IDA7CiAgICAgICAgICB0aGF0Ll93YXNtID0gbnVsbDsKICAgICAgICAgIHJldHVybiB3YXNtKCkudGhlbigodykgPT4gewogICAgICAgICAgICB0aGF0Ll93YXNtID0gdzsKICAgICAgICAgICAgcmV0dXJuIHRoYXQ7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogVXRpbGl0eSBmdW5jdGlvbiB0byBmaW5kIHRoZSBpbmRleCBvZiBhIHNvdXJjZS4gIFJldHVybnMgLTEgaWYgbm90CiAgICAgICAqIGZvdW5kLgogICAgICAgKi8KICAgICAgX2ZpbmRTb3VyY2VJbmRleChhU291cmNlKSB7CiAgICAgICAgbGV0IHJlbGF0aXZlU291cmNlID0gYVNvdXJjZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHJlbGF0aXZlU291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLnNvdXJjZVJvb3QsIHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZXMuaGFzKHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZXMuaW5kZXhPZihyZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fYWJzb2x1dGVTb3VyY2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICBpZiAodGhpcy5fYWJzb2x1dGVTb3VyY2VzW2ldID09IGFTb3VyY2UpIHsKICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgQmFzaWNTb3VyY2VNYXBDb25zdW1lciBmcm9tIGEgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU291cmNlTWFwR2VuZXJhdG9yIGFTb3VyY2VNYXAKICAgICAgICogICAgICAgIFRoZSBzb3VyY2UgbWFwIHRoYXQgd2lsbCBiZSBjb25zdW1lZC4KICAgICAgICogQHBhcmFtIFN0cmluZyBhU291cmNlTWFwVVJMCiAgICAgICAqICAgICAgICBUaGUgVVJMIGF0IHdoaWNoIHRoZSBzb3VyY2UgbWFwIGNhbiBiZSBmb3VuZCAob3B0aW9uYWwpCiAgICAgICAqIEByZXR1cm5zIEJhc2ljU291cmNlTWFwQ29uc3VtZXIKICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gbmV3IF9CYXNpY1NvdXJjZU1hcENvbnN1bWVyKGFTb3VyY2VNYXAudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgICAgZ2V0IHNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Fic29sdXRlU291cmNlcy5zbGljZSgpOwogICAgICB9CiAgICAgIF9nZXRNYXBwaW5nc1B0cigpIHsKICAgICAgICBpZiAodGhpcy5fbWFwcGluZ3NQdHIgPT09IDApIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9tYXBwaW5nc1B0cjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3Qgc2l6ZSA9IGFTdHIubGVuZ3RoOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLmFsbG9jYXRlX21hcHBpbmdzKHNpemUpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzQnVmID0gbmV3IFVpbnQ4QXJyYXkodGhpcy5fd2FzbS5leHBvcnRzLm1lbW9yeS5idWZmZXIsIG1hcHBpbmdzQnVmUHRyLCBzaXplKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykgewogICAgICAgICAgbWFwcGluZ3NCdWZbaV0gPSBhU3RyLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzUHRyID0gdGhpcy5fd2FzbS5leHBvcnRzLnBhcnNlX21hcHBpbmdzKG1hcHBpbmdzQnVmUHRyKTsKICAgICAgICBpZiAoIW1hcHBpbmdzUHRyKSB7CiAgICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMuX3dhc20uZXhwb3J0cy5nZXRfbGFzdF9lcnJvcigpOwogICAgICAgICAgbGV0IG1zZyA9IGBFcnJvciBwYXJzaW5nIG1hcHBpbmdzIChjb2RlICR7ZXJyb3J9KTogYDsKICAgICAgICAgIHN3aXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG5lZ2F0aXZlIGxpbmUsIGNvbHVtbiwgc291cmNlIGluZGV4LCBvciBuYW1lIGluZGV4IjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIG1zZyArPSAidGhlIG1hcHBpbmdzIGNvbnRhaW5lZCBhIG51bWJlciBsYXJnZXIgdGhhbiAyKiozMiI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICBtc2cgKz0gInJlYWNoZWQgRU9GIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBtc2cgKz0gImludmFsaWQgYmFzZSA2NCBjaGFyYWN0ZXIgd2hpbGUgcGFyc2luZyBhIFZMUSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgbXNnICs9ICJ1bmtub3duIGVycm9yIGNvZGUiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1zZyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzUHRyID0gbWFwcGluZ3NQdHI7CiAgICAgIH0KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgY29uc3QgY29udGV4dCA9IGFDb250ZXh0IHx8IG51bGw7CiAgICAgICAgY29uc3Qgb3JkZXIgPSBhT3JkZXIgfHwgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOwogICAgICAgIGNvbnN0IHNvdXJjZVJvb3QgPSB0aGlzLnNvdXJjZVJvb3Q7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKAogICAgICAgICAgKG1hcHBpbmcpID0+IHsKICAgICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSB0aGlzLl9uYW1lcy5hdChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBhQ2FsbGJhY2suY2FsbChjb250ZXh0LCBtYXBwaW5nKTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjoKICAgICAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5ieV9nZW5lcmF0ZWRfbG9jYXRpb24odGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSOgogICAgICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmJ5X29yaWdpbmFsX2xvY2F0aW9uKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBvcmRlciBvZiBpdGVyYXRpb24uIik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICApOwogICAgICB9CiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gYUFyZ3MuY29sdW1uIHx8IDA7CiAgICAgICAgc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KHNvdXJjZSk7CiAgICAgICAgaWYgKHNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgaWYgKG9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAob3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5ncyA9IFtdOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygKICAgICAgICAgIChtKSA9PiB7CiAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbS5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgIGxpbmU6IG0uZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG0uZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKAogICAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZSAtIDEsCiAgICAgICAgICAgICAgImNvbHVtbiIgaW4gYUFyZ3MsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIHJldHVybiBtYXBwaW5nczsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIGlmICh0aGlzLl9tYXBwaW5nc1B0ciAhPT0gMCkgewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmZyZWVfbWFwcGluZ3ModGhpcy5fbWFwcGluZ3NQdHIpOwogICAgICAgICAgdGhpcy5fbWFwcGluZ3NQdHIgPSAwOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tcHV0ZSB0aGUgbGFzdCBjb2x1bW4gZm9yIGVhY2ggZ2VuZXJhdGVkIG1hcHBpbmcuIFRoZSBsYXN0IGNvbHVtbiBpcwogICAgICAgKiBpbmNsdXNpdmUuCiAgICAgICAqLwogICAgICBjb21wdXRlQ29sdW1uU3BhbnMoKSB7CiAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmNvbXB1dGVfY29sdW1uX3NwYW5zKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgIHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgPSB0cnVlOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UsIGxpbmUsIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBnZW5lcmF0ZWQKICAgICAgICogc291cmNlJ3MgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0CiAgICAgICAqIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvciBudWxsLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIG5hbWU6IFRoZSBvcmlnaW5hbCBpZGVudGlmaWVyLCBvciBudWxsLgogICAgICAgKi8KICAgICAgb3JpZ2luYWxQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIGdlbmVyYXRlZExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBpZiAobmVlZGxlLmdlbmVyYXRlZExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5vcmlnaW5hbF9sb2NhdGlvbl9mb3IoCiAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgIG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgYmlhcwogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgICBpZiAobWFwcGluZykgewogICAgICAgICAgaWYgKG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA9PT0gbmVlZGxlLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICAgICAgaWYgKHNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQoc291cmNlKTsKICAgICAgICAgICAgICBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwodGhpcy5zb3VyY2VSb290LCBzb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG5hbWUgPSB1dGlsLmdldEFyZyhtYXBwaW5nLCAibmFtZSIsIG51bGwpOwogICAgICAgICAgICBpZiAobmFtZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5hdChuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAib3JpZ2luYWxDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzb3VyY2U6IG51bGwsCiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgbmFtZTogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0cnVlIGlmIHdlIGhhdmUgdGhlIHNvdXJjZSBjb250ZW50IGZvciBldmVyeSBzb3VyY2UgaW4gdGhlIHNvdXJjZQogICAgICAgKiBtYXAsIGZhbHNlIG90aGVyd2lzZS4KICAgICAgICovCiAgICAgIGhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCkgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudC5sZW5ndGggPj0gdGhpcy5fc291cmNlcy5zaXplKCkgJiYgIXRoaXMuc291cmNlc0NvbnRlbnQuc29tZShmdW5jdGlvbihzYykgewogICAgICAgICAgcmV0dXJuIHNjID09IG51bGw7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGlmICghdGhpcy5zb3VyY2VzQ29udGVudCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KGFTb3VyY2UpOwogICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFtpbmRleF07CiAgICAgICAgfQogICAgICAgIGxldCByZWxhdGl2ZVNvdXJjZSA9IGFTb3VyY2U7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICByZWxhdGl2ZVNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5zb3VyY2VSb290LCByZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGxldCB1cmwzOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCAmJiAodXJsMyA9IHV0aWwudXJsUGFyc2UodGhpcy5zb3VyY2VSb290KSkpIHsKICAgICAgICAgIGNvbnN0IGZpbGVVcmlBYnNQYXRoID0gcmVsYXRpdmVTb3VyY2UucmVwbGFjZSgvXmZpbGU6XC9cLy8sICIiKTsKICAgICAgICAgIGlmICh1cmwzLnNjaGVtZSA9PSAiZmlsZSIgJiYgdGhpcy5fc291cmNlcy5oYXMoZmlsZVVyaUFic1BhdGgpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W3RoaXMuX3NvdXJjZXMuaW5kZXhPZihmaWxlVXJpQWJzUGF0aCldOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCghdXJsMy5wYXRoIHx8IHVybDMucGF0aCA9PSAiLyIpICYmIHRoaXMuX3NvdXJjZXMuaGFzKCIvIiArIHJlbGF0aXZlU291cmNlKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFt0aGlzLl9zb3VyY2VzLmluZGV4T2YoIi8iICsgcmVsYXRpdmVTb3VyY2UpXTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgcmVsYXRpdmVTb3VyY2UgKyAnIiBpcyBub3QgaW4gdGhlIFNvdXJjZU1hcC4nKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoCiAgICAgICAqIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gYmlhczogRWl0aGVyICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcgb3IKICAgICAgICogICAgICdTb3VyY2VNYXBDb25zdW1lci5MRUFTVF9VUFBFUl9CT1VORCcuIFNwZWNpZmllcyB3aGV0aGVyIHRvIHJldHVybiB0aGUKICAgICAgICogICAgIGNsb3Nlc3QgZWxlbWVudCB0aGF0IGlzIHNtYWxsZXIgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIG9uZSB3ZSBhcmUKICAgICAgICogICAgIHNlYXJjaGluZyBmb3IsIHJlc3BlY3RpdmVseSwgaWYgdGhlIGV4YWN0IGVsZW1lbnQgY2Fubm90IGJlIGZvdW5kLgogICAgICAgKiAgICAgRGVmYXVsdHMgdG8gJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJy4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKTsKICAgICAgICBzb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgoc291cmNlKTsKICAgICAgICBpZiAoc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICBvcmlnaW5hbExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBsZXQgYmlhcyA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiYmlhcyIsIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EKTsKICAgICAgICBpZiAoYmlhcyA9PSBudWxsKSB7CiAgICAgICAgICBiaWFzID0gU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQ7CiAgICAgICAgfQogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygobSkgPT4gbWFwcGluZyA9IG0sICgpID0+IHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5nZW5lcmF0ZWRfbG9jYXRpb25fZm9yKAogICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICBuZWVkbGUuc291cmNlLAogICAgICAgICAgICBuZWVkbGUub3JpZ2luYWxMaW5lIC0gMSwKICAgICAgICAgICAgbmVlZGxlLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICBiaWFzCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICAgIGlmIChtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgPT09IG5lZWRsZS5zb3VyY2UpIHsKICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgfTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICBsYXN0Q29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgfTsKICAgIEJhc2ljU291cmNlTWFwQ29uc3VtZXIucHJvdG90eXBlLmNvbnN1bWVyID0gU291cmNlTWFwQ29uc3VtZXI7CiAgICBleHBvcnRzMi5CYXNpY1NvdXJjZU1hcENvbnN1bWVyID0gQmFzaWNTb3VyY2VNYXBDb25zdW1lcjsKICAgIHZhciBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBleHRlbmRzIFNvdXJjZU1hcENvbnN1bWVyIHsKICAgICAgY29uc3RydWN0b3IoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBzdXBlcihJTlRFUk5BTCkudGhlbigodGhhdCkgPT4gewogICAgICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJ2ZXJzaW9uIik7CiAgICAgICAgICBjb25zdCBzZWN0aW9ucyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNlY3Rpb25zIik7CiAgICAgICAgICBpZiAodmVyc2lvbiAhPSB0aGF0Ll92ZXJzaW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgdmVyc2lvbjogIiArIHZlcnNpb24pOwogICAgICAgICAgfQogICAgICAgICAgdGhhdC5fc291cmNlcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgICAgdGhhdC5fbmFtZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICAgIHRoYXQuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5ncyA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IG51bGw7CiAgICAgICAgICB0aGF0Ll9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gbnVsbDsKICAgICAgICAgIGxldCBsYXN0T2Zmc2V0ID0gewogICAgICAgICAgICBsaW5lOiAtMSwKICAgICAgICAgICAgY29sdW1uOiAwCiAgICAgICAgICB9OwogICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHNlY3Rpb25zLm1hcCgocykgPT4gewogICAgICAgICAgICBpZiAocy51cmwpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlN1cHBvcnQgZm9yIHVybCBmaWVsZCBpbiBzZWN0aW9ucyBub3QgaW1wbGVtZW50ZWQuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdXRpbC5nZXRBcmcocywgIm9mZnNldCIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRMaW5lID0gdXRpbC5nZXRBcmcob2Zmc2V0LCAibGluZSIpOwogICAgICAgICAgICBjb25zdCBvZmZzZXRDb2x1bW4gPSB1dGlsLmdldEFyZyhvZmZzZXQsICJjb2x1bW4iKTsKICAgICAgICAgICAgaWYgKG9mZnNldExpbmUgPCBsYXN0T2Zmc2V0LmxpbmUgfHwgb2Zmc2V0TGluZSA9PT0gbGFzdE9mZnNldC5saW5lICYmIG9mZnNldENvbHVtbiA8IGxhc3RPZmZzZXQuY29sdW1uKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTZWN0aW9uIG9mZnNldHMgbXVzdCBiZSBvcmRlcmVkIGFuZCBub24tb3ZlcmxhcHBpbmcuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGFzdE9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgY29uc3QgY29ucyA9IG5ldyBTb3VyY2VNYXBDb25zdW1lcih1dGlsLmdldEFyZyhzLCAibWFwIiksIGFTb3VyY2VNYXBVUkwpOwogICAgICAgICAgICByZXR1cm4gY29ucy50aGVuKChjb25zdW1lcikgPT4gewogICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICBnZW5lcmF0ZWRPZmZzZXQ6IHsKICAgICAgICAgICAgICAgICAgLy8gVGhlIG9mZnNldCBmaWVsZHMgYXJlIDAtYmFzZWQsIGJ1dCB3ZSB1c2UgMS1iYXNlZCBpbmRpY2VzIHdoZW4KICAgICAgICAgICAgICAgICAgLy8gZW5jb2RpbmcvZGVjb2RpbmcgZnJvbSBWTFEuCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG9mZnNldExpbmUgKyAxLAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG9mZnNldENvbHVtbiArIDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjb25zdW1lcgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkpLnRoZW4oKHMpID0+IHsKICAgICAgICAgICAgdGhhdC5fc2VjdGlvbnMgPSBzOwogICAgICAgICAgICByZXR1cm4gdGhhdDsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIGBfX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQgYF9fb3JpZ2luYWxNYXBwaW5nc2AgYXJlIGFycmF5cyB0aGF0IGhvbGQgdGhlCiAgICAgIC8vIHBhcnNlZCBtYXBwaW5nIGNvb3JkaW5hdGVzIGZyb20gdGhlIHNvdXJjZSBtYXAncyAibWFwcGluZ3MiIGF0dHJpYnV0ZS4gVGhleQogICAgICAvLyBhcmUgbGF6aWx5IGluc3RhbnRpYXRlZCwgYWNjZXNzZWQgdmlhIHRoZSBgX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgLy8gYF9vcmlnaW5hbE1hcHBpbmdzYCBnZXR0ZXJzIHJlc3BlY3RpdmVseSwgYW5kIHdlIG9ubHkgcGFyc2UgdGhlIG1hcHBpbmdzCiAgICAgIC8vIGFuZCBjcmVhdGUgdGhlc2UgYXJyYXlzIG9uY2UgcXVlcmllZCBmb3IgYSBzb3VyY2UgbG9jYXRpb24uIFdlIGp1bXAgdGhyb3VnaAogICAgICAvLyB0aGVzZSBob29wcyBiZWNhdXNlIHRoZXJlIGNhbiBiZSBtYW55IHRob3VzYW5kcyBvZiBtYXBwaW5ncywgYW5kIHBhcnNpbmcKICAgICAgLy8gdGhlbSBpcyBleHBlbnNpdmUsIHNvIHdlIG9ubHkgd2FudCB0byBkbyBpdCBpZiB3ZSBtdXN0LgogICAgICAvLwogICAgICAvLyBFYWNoIG9iamVjdCBpbiB0aGUgYXJyYXlzIGlzIG9mIHRoZSBmb3JtOgogICAgICAvLwogICAgICAvLyAgICAgewogICAgICAvLyAgICAgICBnZW5lcmF0ZWRMaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBnZW5lcmF0ZWRDb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgc291cmNlOiBUaGUgcGF0aCB0byB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUgdGhhdCBnZW5lcmF0ZWQgdGhpcwogICAgICAvLyAgICAgICAgICAgICAgIGNodW5rIG9mIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsTGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGhhdAogICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG9yaWdpbmFsQ29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlIHRoYXQKICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRzIHRvIHRoaXMgY2h1bmsgb2YgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIG5hbWU6IFRoZSBuYW1lIG9mIHRoZSBvcmlnaW5hbCBzeW1ib2wgd2hpY2ggZ2VuZXJhdGVkIHRoaXMgY2h1bmsgb2YKICAgICAgLy8gICAgICAgICAgICAgY29kZS4KICAgICAgLy8gICAgIH0KICAgICAgLy8KICAgICAgLy8gQWxsIHByb3BlcnRpZXMgZXhjZXB0IGZvciBgZ2VuZXJhdGVkTGluZWAgYW5kIGBnZW5lcmF0ZWRDb2x1bW5gIGNhbiBiZQogICAgICAvLyBgbnVsbGAuCiAgICAgIC8vCiAgICAgIC8vIGBfZ2VuZXJhdGVkTWFwcGluZ3NgIGlzIG9yZGVyZWQgYnkgdGhlIGdlbmVyYXRlZCBwb3NpdGlvbnMuCiAgICAgIC8vCiAgICAgIC8vIGBfb3JpZ2luYWxNYXBwaW5nc2AgaXMgb3JkZXJlZCBieSB0aGUgb3JpZ2luYWwgcG9zaXRpb25zLgogICAgICBnZXQgX2dlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGlmICghdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzKSB7CiAgICAgICAgICB0aGlzLl9zb3J0R2VuZXJhdGVkTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nczsKICAgICAgfQogICAgICBnZXQgX29yaWdpbmFsTWFwcGluZ3MoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5ncykgewogICAgICAgICAgdGhpcy5fc29ydE9yaWdpbmFsTWFwcGluZ3MoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzOwogICAgICB9CiAgICAgIGdldCBfZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCgpIHsKICAgICAgICBpZiAoIXRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgIH0KICAgICAgZ2V0IF9vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgfQogICAgICBfc29ydEdlbmVyYXRlZE1hcHBpbmdzKCkgewogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdGhpcy5fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQpOwogICAgICAgIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICB9CiAgICAgIF9zb3J0T3JpZ2luYWxNYXBwaW5ncygpIHsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgICBtYXBwaW5ncy5zb3J0KHV0aWwuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMpOwogICAgICAgIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFRoZSBsaXN0IG9mIG9yaWdpbmFsIHNvdXJjZXMuCiAgICAgICAqLwogICAgICBnZXQgc291cmNlcygpIHsKICAgICAgICBjb25zdCBzb3VyY2VzID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIHNvdXJjZXMucHVzaCh0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5zb3VyY2VzW2pdKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNvdXJjZXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSwgbGluZSwgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3QKICAgICAgICogd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb3IgbnVsbC4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBuYW1lOiBUaGUgb3JpZ2luYWwgaWRlbnRpZmllciwgb3IgbnVsbC4KICAgICAgICovCiAgICAgIG9yaWdpbmFsUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgY29uc3Qgc2VjdGlvbkluZGV4ID0gYmluYXJ5U2VhcmNoLnNlYXJjaCgKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX3NlY3Rpb25zLAogICAgICAgICAgZnVuY3Rpb24oYU5lZWRsZSwgc2VjdGlvbjIpIHsKICAgICAgICAgICAgY29uc3QgY21wID0gYU5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gc2VjdGlvbjIuZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmU7CiAgICAgICAgICAgIGlmIChjbXApIHsKICAgICAgICAgICAgICByZXR1cm4gY21wOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhTmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIHNlY3Rpb24yLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbc2VjdGlvbkluZGV4XTsKICAgICAgICBpZiAoIXNlY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZTogbnVsbCwKICAgICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgICBuYW1lOiBudWxsCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2VjdGlvbi5jb25zdW1lci5vcmlnaW5hbFBvc2l0aW9uRm9yKHsKICAgICAgICAgIGxpbmU6IG5lZWRsZS5nZW5lcmF0ZWRMaW5lIC0gKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgIGNvbHVtbjogbmVlZGxlLmdlbmVyYXRlZENvbHVtbiAtIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBuZWVkbGUuZ2VuZXJhdGVkTGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKSwKICAgICAgICAgIGJpYXM6IGFBcmdzLmJpYXMKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIHRydWUgaWYgd2UgaGF2ZSB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGV2ZXJ5IHNvdXJjZSBpbiB0aGUgc291cmNlCiAgICAgICAqIG1hcCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgICAgKi8KICAgICAgaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NlY3Rpb25zLmV2ZXJ5KGZ1bmN0aW9uKHMpIHsKICAgICAgICAgIHJldHVybiBzLmNvbnN1bWVyLmhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50LiBUaGUgb25seSBhcmd1bWVudCBpcyB0aGUgdXJsIG9mIHRoZQogICAgICAgKiBvcmlnaW5hbCBzb3VyY2UgZmlsZS4gUmV0dXJucyBudWxsIGlmIG5vIG9yaWdpbmFsIHNvdXJjZSBjb250ZW50IGlzCiAgICAgICAqIGF2YWlsYWJsZS4KICAgICAgICovCiAgICAgIHNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgbnVsbE9uTWlzc2luZykgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBzZWN0aW9uLmNvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3IoYVNvdXJjZSwgdHJ1ZSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICByZXR1cm4gY29udGVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKG51bGxPbk1pc3NpbmcpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVNvdXJjZSArICciIGlzIG5vdCBpbiB0aGUgU291cmNlTWFwLicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGgKICAgICAgICogdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgaWYgKHNlY3Rpb24uY29uc3VtZXIuX2ZpbmRTb3VyY2VJbmRleCh1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpKSA9PT0gLTEpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBnZW5lcmF0ZWRQb3NpdGlvbiA9IHNlY3Rpb24uY29uc3VtZXIuZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpOwogICAgICAgICAgaWYgKGdlbmVyYXRlZFBvc2l0aW9uKSB7CiAgICAgICAgICAgIGNvbnN0IHJldCA9IHsKICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZFBvc2l0aW9uLmNvbHVtbiArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBnZW5lcmF0ZWRQb3NpdGlvbi5saW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkTWFwcGluZ3MgPSB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCA9IFtdOwogICAgICAgIGNvbnN0IG9yaWdpbmFsTWFwcGluZ3MgPSB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkID0gW107CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgY29uc3Qgc2VjdGlvbk1hcHBpbmdzID0gW107CiAgICAgICAgICBzZWN0aW9uLmNvbnN1bWVyLmVhY2hNYXBwaW5nKChtKSA9PiBzZWN0aW9uTWFwcGluZ3MucHVzaChtKSk7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNlY3Rpb25NYXBwaW5ncy5sZW5ndGg7IGorKykgewogICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gc2VjdGlvbk1hcHBpbmdzW2pdOwogICAgICAgICAgICBsZXQgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNlY3Rpb24uY29uc3VtZXIuc291cmNlUm9vdCwgbnVsbCwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgdGhpcy5fc291cmNlcy5hZGQoc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5pbmRleE9mKHNvdXJjZSk7CiAgICAgICAgICAgIGxldCBuYW1lID0gbnVsbDsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSkgewogICAgICAgICAgICAgIHRoaXMuX25hbWVzLmFkZChtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICAgIG5hbWUgPSB0aGlzLl9uYW1lcy5pbmRleE9mKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRNYXBwaW5nID0gewogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUgKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gbWFwcGluZy5nZW5lcmF0ZWRMaW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApLAogICAgICAgICAgICAgIG9yaWdpbmFsTGluZTogbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9OwogICAgICAgICAgICBnZW5lcmF0ZWRNYXBwaW5ncy5wdXNoKGFkanVzdGVkTWFwcGluZyk7CiAgICAgICAgICAgIGlmICh0eXBlb2YgYWRqdXN0ZWRNYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICBvcmlnaW5hbE1hcHBpbmdzLnB1c2goYWRqdXN0ZWRNYXBwaW5nKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gYUNvbnRleHQgfHwgbnVsbDsKICAgICAgICBjb25zdCBvcmRlciA9IGFPcmRlciB8fCBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI7CiAgICAgICAgbGV0IG1hcHBpbmdzOwogICAgICAgIHN3aXRjaCAob3JkZXIpIHsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOgogICAgICAgICAgICBtYXBwaW5ncyA9IHRoaXMuX2dlbmVyYXRlZE1hcHBpbmdzOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVI6CiAgICAgICAgICAgIG1hcHBpbmdzID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nczsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gb3JkZXIgb2YgaXRlcmF0aW9uLiIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5zb3VyY2VSb290OwogICAgICAgIG1hcHBpbmdzLm1hcChmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBsZXQgc291cmNlID0gbnVsbDsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogbWFwcGluZy5nZW5lcmF0ZWRMaW5lLAogICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICBvcmlnaW5hbExpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICBvcmlnaW5hbENvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgbmFtZTogbWFwcGluZy5uYW1lID09PSBudWxsID8gbnVsbCA6IHRoaXMuX25hbWVzLmF0KG1hcHBpbmcubmFtZSkKICAgICAgICAgIH07CiAgICAgICAgfSwgdGhpcykuZm9yRWFjaChhQ2FsbGJhY2ssIGNvbnRleHQpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBGaW5kIHRoZSBtYXBwaW5nIHRoYXQgYmVzdCBtYXRjaGVzIHRoZSBoeXBvdGhldGljYWwgIm5lZWRsZSIgbWFwcGluZyB0aGF0CiAgICAgICAqIHdlIGFyZSBzZWFyY2hpbmcgZm9yIGluIHRoZSBnaXZlbiAiaGF5c3RhY2siIG9mIG1hcHBpbmdzLgogICAgICAgKi8KICAgICAgX2ZpbmRNYXBwaW5nKGFOZWVkbGUsIGFNYXBwaW5ncywgYUxpbmVOYW1lLCBhQ29sdW1uTmFtZSwgYUNvbXBhcmF0b3IsIGFCaWFzKSB7CiAgICAgICAgaWYgKGFOZWVkbGVbYUxpbmVOYW1lXSA8PSAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJMaW5lIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEsIGdvdCAiICsgYU5lZWRsZVthTGluZU5hbWVdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFOZWVkbGVbYUNvbHVtbk5hbWVdIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ29sdW1uIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAsIGdvdCAiICsgYU5lZWRsZVthQ29sdW1uTmFtZV0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoLnNlYXJjaChhTmVlZGxlLCBhTWFwcGluZ3MsIGFDb21wYXJhdG9yLCBhQmlhcyk7CiAgICAgIH0KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbGluZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpOwogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIHNvdXJjZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKSwKICAgICAgICAgIG9yaWdpbmFsTGluZTogbGluZSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIsIDApCiAgICAgICAgfTsKICAgICAgICBuZWVkbGUuc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KG5lZWRsZS5zb3VyY2UpOwogICAgICAgIGlmIChuZWVkbGUuc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBbXTsKICAgICAgICBsZXQgaW5kZXggPSB0aGlzLl9maW5kTWFwcGluZygKICAgICAgICAgIG5lZWRsZSwKICAgICAgICAgIHRoaXMuX29yaWdpbmFsTWFwcGluZ3MsCiAgICAgICAgICAib3JpZ2luYWxMaW5lIiwKICAgICAgICAgICJvcmlnaW5hbENvbHVtbiIsCiAgICAgICAgICB1dGlsLmNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zLAogICAgICAgICAgYmluYXJ5U2VhcmNoLkxFQVNUX1VQUEVSX0JPVU5ECiAgICAgICAgKTsKICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgbGV0IG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzW2luZGV4XTsKICAgICAgICAgIGlmIChhQXJncy5jb2x1bW4gPT09IHZvaWQgMCkgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbExpbmUgPSBtYXBwaW5nLm9yaWdpbmFsTGluZTsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IG9yaWdpbmFsTGluZSkgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgd2hpbGUgKG1hcHBpbmcgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgPT09IGxpbmUgJiYgbWFwcGluZy5vcmlnaW5hbENvbHVtbiA9PSBvcmlnaW5hbENvbHVtbikgewogICAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgICBsaW5lOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkTGluZSIsIG51bGwpLAogICAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbKytpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcHBpbmdzOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuZGVzdHJveSgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkluZGV4ZWRTb3VyY2VNYXBDb25zdW1lciA9IEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lcjsKICAgIGZ1bmN0aW9uIF9mYWN0b3J5KGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgbGV0IHNvdXJjZU1hcCA9IGFTb3VyY2VNYXA7CiAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgIH0KICAgICAgY29uc3QgY29uc3VtZXIgPSBzb3VyY2VNYXAuc2VjdGlvbnMgIT0gbnVsbCA/IG5ldyBJbmRleGVkU291cmNlTWFwQ29uc3VtZXIoc291cmNlTWFwLCBhU291cmNlTWFwVVJMKSA6IG5ldyBCYXNpY1NvdXJjZU1hcENvbnN1bWVyKHNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoY29uc3VtZXIpOwogICAgfQogICAgZnVuY3Rpb24gX2ZhY3RvcnlCU00oYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICByZXR1cm4gQmFzaWNTb3VyY2VNYXBDb25zdW1lci5mcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMKdmFyIHJlcXVpcmVfc291cmNlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1ub2RlLmpzIihleHBvcnRzMikgewogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBSRUdFWF9ORVdMSU5FID0gLyhccj9cbikvOwogICAgdmFyIE5FV0xJTkVfQ09ERSA9IDEwOwogICAgdmFyIGlzU291cmNlTm9kZSA9ICIkJCRpc1NvdXJjZU5vZGUkJCQiOwogICAgdmFyIFNvdXJjZU5vZGUgPSBjbGFzcyBfU291cmNlTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGFMaW5lLCBhQ29sdW1uLCBhU291cmNlLCBhQ2h1bmtzLCBhTmFtZSkgewogICAgICAgIHRoaXMuY2hpbGRyZW4gPSBbXTsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzID0ge307CiAgICAgICAgdGhpcy5saW5lID0gYUxpbmUgPT0gbnVsbCA/IG51bGwgOiBhTGluZTsKICAgICAgICB0aGlzLmNvbHVtbiA9IGFDb2x1bW4gPT0gbnVsbCA/IG51bGwgOiBhQ29sdW1uOwogICAgICAgIHRoaXMuc291cmNlID0gYVNvdXJjZSA9PSBudWxsID8gbnVsbCA6IGFTb3VyY2U7CiAgICAgICAgdGhpcy5uYW1lID0gYU5hbWUgPT0gbnVsbCA/IG51bGwgOiBhTmFtZTsKICAgICAgICB0aGlzW2lzU291cmNlTm9kZV0gPSB0cnVlOwogICAgICAgIGlmIChhQ2h1bmtzICE9IG51bGwpIHRoaXMuYWRkKGFDaHVua3MpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDcmVhdGVzIGEgU291cmNlTm9kZSBmcm9tIGdlbmVyYXRlZCBjb2RlIGFuZCBhIFNvdXJjZU1hcENvbnN1bWVyLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUdlbmVyYXRlZENvZGUgVGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwQ29uc3VtZXIgVGhlIFNvdXJjZU1hcCBmb3IgdGhlIGdlbmVyYXRlZCBjb2RlCiAgICAgICAqIEBwYXJhbSBhUmVsYXRpdmVQYXRoIE9wdGlvbmFsLiBUaGUgcGF0aCB0aGF0IHJlbGF0aXZlIHNvdXJjZXMgaW4gdGhlCiAgICAgICAqICAgICAgICBTb3VyY2VNYXBDb25zdW1lciBzaG91bGQgYmUgcmVsYXRpdmUgdG8uCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVN0cmluZ1dpdGhTb3VyY2VNYXAoYUdlbmVyYXRlZENvZGUsIGFTb3VyY2VNYXBDb25zdW1lciwgYVJlbGF0aXZlUGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgX1NvdXJjZU5vZGUoKTsKICAgICAgICBjb25zdCByZW1haW5pbmdMaW5lcyA9IGFHZW5lcmF0ZWRDb2RlLnNwbGl0KFJFR0VYX05FV0xJTkUpOwogICAgICAgIGxldCByZW1haW5pbmdMaW5lc0luZGV4ID0gMDsKICAgICAgICBjb25zdCBzaGlmdE5leHRMaW5lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjb25zdCBsaW5lQ29udGVudHMgPSBnZXROZXh0TGluZSgpOwogICAgICAgICAgY29uc3QgbmV3TGluZSA9IGdldE5leHRMaW5lKCkgfHwgIiI7CiAgICAgICAgICByZXR1cm4gbGluZUNvbnRlbnRzICsgbmV3TGluZTsKICAgICAgICAgIGZ1bmN0aW9uIGdldE5leHRMaW5lKCkgewogICAgICAgICAgICByZXR1cm4gcmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCA/IHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXgrK10gOiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBsZXQgbGFzdEdlbmVyYXRlZExpbmUgPSAxLCBsYXN0R2VuZXJhdGVkQ29sdW1uID0gMDsKICAgICAgICBsZXQgbGFzdE1hcHBpbmcgPSBudWxsOwogICAgICAgIGxldCBuZXh0TGluZTsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuZWFjaE1hcHBpbmcoZnVuY3Rpb24obWFwcGluZykgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkTGluZSA8IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgICAgY29uc3QgY29kZSA9IG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiAtIGxhc3RHZW5lcmF0ZWRDb2x1bW4pOwogICAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgY29kZSk7CiAgICAgICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgIG5vZGUuYWRkKHNoaWZ0TmV4dExpbmUoKSk7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobGFzdEdlbmVyYXRlZENvbHVtbiA8IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSB7CiAgICAgICAgICAgIG5leHRMaW5lID0gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gfHwgIiI7CiAgICAgICAgICAgIG5vZGUuYWRkKG5leHRMaW5lLnN1YnN0cigwLCBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbikpOwogICAgICAgICAgICByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSA9IG5leHRMaW5lLnN1YnN0cihtYXBwaW5nLmdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNYXBwaW5nID0gbWFwcGluZzsKICAgICAgICB9LCB0aGlzKTsKICAgICAgICBpZiAocmVtYWluaW5nTGluZXNJbmRleCA8IHJlbWFpbmluZ0xpbmVzLmxlbmd0aCkgewogICAgICAgICAgaWYgKGxhc3RNYXBwaW5nKSB7CiAgICAgICAgICAgIGFkZE1hcHBpbmdXaXRoQ29kZShsYXN0TWFwcGluZywgc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgIH0KICAgICAgICAgIG5vZGUuYWRkKHJlbWFpbmluZ0xpbmVzLnNwbGljZShyZW1haW5pbmdMaW5lc0luZGV4KS5qb2luKCIiKSk7CiAgICAgICAgfQogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgY29uc3QgY29udGVudCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKHNvdXJjZUZpbGUpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgICBpZiAoYVJlbGF0aXZlUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc291cmNlRmlsZSA9IHV0aWwuam9pbihhUmVsYXRpdmVQYXRoLCBzb3VyY2VGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBub2RlLnNldFNvdXJjZUNvbnRlbnQoc291cmNlRmlsZSwgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgICAgZnVuY3Rpb24gYWRkTWFwcGluZ1dpdGhDb2RlKG1hcHBpbmcsIGNvZGUpIHsKICAgICAgICAgIGlmIChtYXBwaW5nID09PSBudWxsIHx8IG1hcHBpbmcuc291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbm9kZS5hZGQoY29kZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBzb3VyY2UgPSBhUmVsYXRpdmVQYXRoID8gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIG1hcHBpbmcuc291cmNlKSA6IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBub2RlLmFkZChuZXcgX1NvdXJjZU5vZGUoCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgY29kZSwKICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUKICAgICAgICAgICAgKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgYWRkKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGFDaHVuay5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rKSB7CiAgICAgICAgICAgIHRoaXMuYWRkKGNodW5rKTsKICAgICAgICAgIH0sIHRoaXMpOwogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIGlmIChhQ2h1bmspIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKGFDaHVuayk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgY2h1bmsgb2YgZ2VuZXJhdGVkIEpTIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBzb3VyY2Ugbm9kZS4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFDaHVuayBBIHN0cmluZyBzbmlwcGV0IG9mIGdlbmVyYXRlZCBKUyBjb2RlLCBhbm90aGVyIGluc3RhbmNlIG9mCiAgICAgICAqICAgICAgICBTb3VyY2VOb2RlLCBvciBhbiBhcnJheSB3aGVyZSBlYWNoIG1lbWJlciBpcyBvbmUgb2YgdGhvc2UgdGhpbmdzLgogICAgICAgKi8KICAgICAgcHJlcGVuZChhQ2h1bmspIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhQ2h1bmspKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gYUNodW5rLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgIHRoaXMucHJlcGVuZChhQ2h1bmtbaV0pOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoYUNodW5rW2lzU291cmNlTm9kZV0gfHwgdHlwZW9mIGFDaHVuayA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4udW5zaGlmdChhQ2h1bmspOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAiRXhwZWN0ZWQgYSBTb3VyY2VOb2RlLCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIFNvdXJjZU5vZGVzIGFuZCBzdHJpbmdzLiBHb3QgIiArIGFDaHVuawogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBKUyBzbmlwcGV0cyBpbiB0aGlzIG5vZGUgYW5kIGl0cyBjaGlsZHJlbi4gVGhlCiAgICAgICAqIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggc25pcHBldCBvZiBKUyBhbmQgaXMgcGFzc2VkIHRoYXQKICAgICAgICogc25pcHBldCBhbmQgdGhlIGl0cyBvcmlnaW5hbCBhc3NvY2lhdGVkIHNvdXJjZSdzIGxpbmUvY29sdW1uIGxvY2F0aW9uLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrKGFGbikgewogICAgICAgIGxldCBjaHVuazsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgY2h1bmsgPSB0aGlzLmNoaWxkcmVuW2ldOwogICAgICAgICAgaWYgKGNodW5rW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgY2h1bmsud2FsayhhRm4pOwogICAgICAgICAgfSBlbHNlIGlmIChjaHVuayAhPT0gIiIpIHsKICAgICAgICAgICAgYUZuKGNodW5rLCB7CiAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZSwKICAgICAgICAgICAgICBsaW5lOiB0aGlzLmxpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiB0aGlzLmNvbHVtbiwKICAgICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaWtlIGBTdHJpbmcucHJvdG90eXBlLmpvaW5gIGV4Y2VwdCBmb3IgU291cmNlTm9kZXMuIEluc2VydHMgYGFTdHJgIGJldHdlZW4KICAgICAgICogZWFjaCBvZiBgdGhpcy5jaGlsZHJlbmAuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhU2VwIFRoZSBzZXBhcmF0b3IuCiAgICAgICAqLwogICAgICBqb2luKGFTZXApIHsKICAgICAgICBsZXQgbmV3Q2hpbGRyZW47CiAgICAgICAgbGV0IGk7CiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5jaGlsZHJlbi5sZW5ndGg7CiAgICAgICAgaWYgKGxlbiA+IDApIHsKICAgICAgICAgIG5ld0NoaWxkcmVuID0gW107CiAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2goYVNlcCk7CiAgICAgICAgICB9CiAgICAgICAgICBuZXdDaGlsZHJlbi5wdXNoKHRoaXMuY2hpbGRyZW5baV0pOwogICAgICAgICAgdGhpcy5jaGlsZHJlbiA9IG5ld0NoaWxkcmVuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ2FsbCBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2Ugb24gdGhlIHZlcnkgcmlnaHQtbW9zdCBzb3VyY2Ugc25pcHBldC4gVXNlZnVsCiAgICAgICAqIGZvciB0cmltbWluZyB3aGl0ZXNwYWNlIGZyb20gdGhlIGVuZCBvZiBhIHNvdXJjZSBub2RlLCBldGMuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhUGF0dGVybiBUaGUgcGF0dGVybiB0byByZXBsYWNlLgogICAgICAgKiBAcGFyYW0gYVJlcGxhY2VtZW50IFRoZSB0aGluZyB0byByZXBsYWNlIHRoZSBwYXR0ZXJuIHdpdGguCiAgICAgICAqLwogICAgICByZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IGxhc3RDaGlsZCA9IHRoaXMuY2hpbGRyZW5bdGhpcy5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICBpZiAobGFzdENoaWxkW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgIGxhc3RDaGlsZC5yZXBsYWNlUmlnaHQoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbGFzdENoaWxkID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdID0gbGFzdENoaWxkLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY2hpbGRyZW4ucHVzaCgiIi5yZXBsYWNlKGFQYXR0ZXJuLCBhUmVwbGFjZW1lbnQpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNldCB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGEgc291cmNlIGZpbGUuIFRoaXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yCiAgICAgICAqIGluIHRoZSBzb3VyY2VzQ29udGVudCBmaWVsZC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VGaWxlIFRoZSBmaWxlbmFtZSBvZiB0aGUgc291cmNlIGZpbGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VDb250ZW50IFRoZSBjb250ZW50IG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICB0aGlzLnNvdXJjZUNvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoYVNvdXJjZUZpbGUpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXYWxrIG92ZXIgdGhlIHRyZWUgb2YgU291cmNlTm9kZXMuIFRoZSB3YWxraW5nIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaAogICAgICAgKiBzb3VyY2UgZmlsZSBjb250ZW50IGFuZCBpcyBwYXNzZWQgdGhlIGZpbGVuYW1lIGFuZCBzb3VyY2UgY29udGVudC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFGbiBUaGUgdHJhdmVyc2FsIGZ1bmN0aW9uLgogICAgICAgKi8KICAgICAgd2Fsa1NvdXJjZUNvbnRlbnRzKGFGbikgewogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBpZiAodGhpcy5jaGlsZHJlbltpXVtpc1NvdXJjZU5vZGVdKSB7CiAgICAgICAgICAgIHRoaXMuY2hpbGRyZW5baV0ud2Fsa1NvdXJjZUNvbnRlbnRzKGFGbik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNvdXJjZXMgPSBPYmplY3Qua2V5cyh0aGlzLnNvdXJjZUNvbnRlbnRzKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gc291cmNlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgYUZuKHV0aWwuZnJvbVNldFN0cmluZyhzb3VyY2VzW2ldKSwgdGhpcy5zb3VyY2VDb250ZW50c1tzb3VyY2VzW2ldXSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGlzIHNvdXJjZSBub2RlLiBXYWxrcyBvdmVyIHRoZSB0cmVlCiAgICAgICAqIGFuZCBjb25jYXRlbmF0ZXMgYWxsIHRoZSB2YXJpb3VzIHNuaXBwZXRzIHRvZ2V0aGVyIHRvIG9uZSBzdHJpbmcuCiAgICAgICAqLwogICAgICB0b1N0cmluZygpIHsKICAgICAgICBsZXQgc3RyMiA9ICIiOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaykgewogICAgICAgICAgc3RyMiArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUgYWxvbmcgd2l0aCBhIHNvdXJjZQogICAgICAgKiBtYXAuCiAgICAgICAqLwogICAgICB0b1N0cmluZ1dpdGhTb3VyY2VNYXAoYUFyZ3MpIHsKICAgICAgICBjb25zdCBnZW5lcmF0ZWQgPSB7CiAgICAgICAgICBjb2RlOiAiIiwKICAgICAgICAgIGxpbmU6IDEsCiAgICAgICAgICBjb2x1bW46IDAKICAgICAgICB9OwogICAgICAgIGNvbnN0IG1hcDIgPSBuZXcgU291cmNlTWFwR2VuZXJhdG9yKGFBcmdzKTsKICAgICAgICBsZXQgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxTb3VyY2UgPSBudWxsOwogICAgICAgIGxldCBsYXN0T3JpZ2luYWxMaW5lID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTmFtZSA9IG51bGw7CiAgICAgICAgdGhpcy53YWxrKGZ1bmN0aW9uKGNodW5rLCBvcmlnaW5hbCkgewogICAgICAgICAgZ2VuZXJhdGVkLmNvZGUgKz0gY2h1bms7CiAgICAgICAgICBpZiAob3JpZ2luYWwuc291cmNlICE9PSBudWxsICYmIG9yaWdpbmFsLmxpbmUgIT09IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uICE9PSBudWxsKSB7CiAgICAgICAgICAgIGlmIChsYXN0T3JpZ2luYWxTb3VyY2UgIT09IG9yaWdpbmFsLnNvdXJjZSB8fCBsYXN0T3JpZ2luYWxMaW5lICE9PSBvcmlnaW5hbC5saW5lIHx8IGxhc3RPcmlnaW5hbENvbHVtbiAhPT0gb3JpZ2luYWwuY29sdW1uIHx8IGxhc3RPcmlnaW5hbE5hbWUgIT09IG9yaWdpbmFsLm5hbWUpIHsKICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcDIuYWRkTWFwcGluZyh7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkOiB7CiAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIGZvciAobGV0IGlkeCA9IDAsIGxlbmd0aCA9IGNodW5rLmxlbmd0aDsgaWR4IDwgbGVuZ3RoOyBpZHgrKykgewogICAgICAgICAgICBpZiAoY2h1bmsuY2hhckNvZGVBdChpZHgpID09PSBORVdMSU5FX0NPREUpIHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQubGluZSsrOwogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4gPSAwOwogICAgICAgICAgICAgIGlmIChpZHggKyAxID09PSBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgICAgICBzb3VyY2VNYXBwaW5nQWN0aXZlID0gZmFsc2U7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgICAgICBtYXAyLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgICBzb3VyY2U6IG9yaWdpbmFsLnNvdXJjZSwKICAgICAgICAgICAgICAgICAgb3JpZ2luYWw6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogb3JpZ2luYWwuY29sdW1uCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBuYW1lOiBvcmlnaW5hbC5uYW1lCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbisrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy53YWxrU291cmNlQ29udGVudHMoZnVuY3Rpb24oc291cmNlRmlsZSwgc291cmNlQ29udGVudCkgewogICAgICAgICAgbWFwMi5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXA6IG1hcDIgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9zb3VyY2UtbWFwLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvc291cmNlLW1hcC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lcigpLlNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuU291cmNlTm9kZSA9IHJlcXVpcmVfc291cmNlX25vZGUoKS5Tb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50ZW1wbGF0ZVBhcnNlciA9IHRlbXBsYXRlUGFyc2VyOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICB2YXIgc291cmNlX21hcF8xID0gcmVxdWlyZV9zb3VyY2VfbWFwKCk7CiAgICB2YXIga0ludGVycG9sYXRlUmUgPSAvPCU9KFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0NvbW1lbnRSZSA9IC88JSMoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXNjYXBlUmUgPSAvPCUtKFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0V2YWx1YXRlUmUgPSAvPCUoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrSHRtbEVzY2FwZXMgPSB7CiAgICAgICImIjogIiZhbXA7IiwKICAgICAgIjwiOiAiJmx0OyIsCiAgICAgICI+IjogIiZndDsiLAogICAgICAnIic6ICImcXVvdDsiLAogICAgICAiJyI6ICImIzM5OyIsCiAgICAgICJgIjogIiYjOTY7IgogICAgfTsKICAgIHZhciByZVVuZXNjYXBlZEh0bWwgPSBuZXcgUmVnRXhwKGBbJHtPYmplY3Qua2V5cyhrSHRtbEVzY2FwZXMpLmpvaW4oIiIpfV1gLCAiZyIpOwogICAgZnVuY3Rpb24gX3Bvc2l0aW9uRm9yKGNvbnRlbnQsIG9mZnNldCkgewogICAgICBsZXQgbGluZSA9IDE7CiAgICAgIGxldCBjb2x1bW4gPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9mZnNldCAtIDE7IGkrKykgewogICAgICAgIGlmIChjb250ZW50W2ldID09ICJcbiIpIHsKICAgICAgICAgIGxpbmUrKzsKICAgICAgICAgIGNvbHVtbiA9IDA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbHVtbisrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGxpbmUsCiAgICAgICAgY29sdW1uCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZVBhcnNlcihzb3VyY2VUZXh0LCBmaWxlTmFtZSkgewogICAgICBjb25zdCBjaGlsZHJlbiA9IFtdOwogICAgICBjb25zdCByZUV4cHJlc3Npb25zID0gW2tFc2NhcGVSZSwga0NvbW1lbnRSZSwga0ludGVycG9sYXRlUmUsIGtFdmFsdWF0ZVJlXTsKICAgICAgY29uc3QgcmVEZWxpbWl0ZXJzID0gUmVnRXhwKHJlRXhwcmVzc2lvbnMubWFwKCh4KSA9PiB4LnNvdXJjZSkuam9pbigifCIpICsgInwkIiwgImciKTsKICAgICAgY29uc3QgcGFyc2VkID0gc291cmNlVGV4dC5zcGxpdChyZURlbGltaXRlcnMpOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHN0YXJ0ID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCk7CiAgICAgIGxldCBlbmQ7CiAgICAgIGNvbnN0IGluY3JlbWVudCA9IHJlRXhwcmVzc2lvbnMubGVuZ3RoICsgMTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJzZWQubGVuZ3RoOyBpICs9IGluY3JlbWVudCkgewogICAgICAgIGNvbnN0IFtjb250ZW50LCBlc2NhcGUyLCBjb21tZW50LCBpbnRlcnBvbGF0ZSwgZXZhbHVhdGVdID0gcGFyc2VkLnNsaWNlKGksIGkgKyBpbmNyZW1lbnQpOwogICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29udGVudC5sZW5ndGgpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJjb250ZW50IiwgY29udGVudCwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgICBpZiAoZXNjYXBlMikgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGVzY2FwZTIubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXNjYXBlMi5sZW5ndGggKyA1OwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJlc2NhcGUiLCBleHByZXNzaW9uOiBlc2NhcGUyLCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChjb21tZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29tbWVudC5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBjb21tZW50Lmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbW1lbnQiLCB0ZXh0OiBjb21tZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChpbnRlcnBvbGF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGludGVycG9sYXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGludGVycG9sYXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAga2luZDogImludGVycG9sYXRlIiwKICAgICAgICAgICAgZXhwcmVzc2lvbjogaW50ZXJwb2xhdGUsCiAgICAgICAgICAgIHN0YXJ0LAogICAgICAgICAgICBlbmQKICAgICAgICAgIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChldmFsdWF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGV2YWx1YXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGV2YWx1YXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImV2YWx1YXRlIiwgZXhwcmVzc2lvbjogZXZhbHVhdGUsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBmaWxlTmFtZSwKICAgICAgICBjb250ZW50OiBzb3VyY2VUZXh0LAogICAgICAgIGNoaWxkcmVuCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZUZhc3QoYXN0LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgcmV0dXJuIGAKICAgIHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewogICAgICBvYmogfHwgKG9iaiA9IHt9KTsKICAgICAgbGV0IF9fdDsKICAgICAgbGV0IF9fcCA9ICcnOwogICAgICBjb25zdCBfX2VzY2FwZXMgPSAke0pTT04uc3RyaW5naWZ5KGtIdG1sRXNjYXBlcyl9OwogICAgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CgogICAgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgcmV0dXJuIHMgPyBzLnJlcGxhY2UoX19lc2NhcGVzcmUsIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gX19lc2NhcGVzW2tleV07IH0pIDogJyc7CiAgICAgIH07CiAgICAgIHdpdGggKG9iaikgewogICAgICAgICR7YXN0LmNoaWxkcmVuLm1hcCgobm9kZSkgPT4gewogICAgICAgIHN3aXRjaCAobm9kZS5raW5kKSB7CiAgICAgICAgICBjYXNlICJjb250ZW50IjoKICAgICAgICAgICAgcmV0dXJuIGBfX3AgKz0gJHtKU09OLnN0cmluZ2lmeShub2RlLmNvbnRlbnQpfTtgOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAoKF9fdCA9ICgke25vZGUuZXhwcmVzc2lvbn0pKSA9PSBudWxsKSA/ICcnIDogX190O2A7CiAgICAgICAgICBjYXNlICJlc2NhcGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSBfX2UoJHtub2RlLmV4cHJlc3Npb259KTtgOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5leHByZXNzaW9uOwogICAgICAgIH0KICAgICAgfSkuam9pbigiXG4iKX0KICAgICAgfQoKICAgICAgcmV0dXJuIF9fcDsKICAgIH07CiAgYDsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc291cmNlVXJsID0gYXN0LmZpbGVOYW1lOwogICAgICBjb25zdCBtb2R1bGUzID0gb3B0aW9ucyAmJiBvcHRpb25zLm1vZHVsZSA/ICJtb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0iIDogIiI7CiAgICAgIGNvbnN0IHJlSHRtbEVzY2FwZSA9IHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UucmVwbGFjZSgvWyddL2csICJcXFxcXFwnIik7CiAgICAgIGNvbnN0IHByZWFtYmxlID0gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKDEsIDAsIHNvdXJjZVVybCwgIiIpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCBbCiAgICAgICAgYHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewpgLAogICAgICAgICIgIG9iaiB8fCAob2JqID0ge30pO1xuIiwKICAgICAgICAiICBsZXQgX190O1xuIiwKICAgICAgICAnICBsZXQgX19wID0gIiI7XG4nLAogICAgICAgIGAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CmAsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzcmUgPSBuZXcgUmVnRXhwKCcke3JlSHRtbEVzY2FwZX0nLCAnZycpOwpgLAogICAgICAgIGAKYCwKICAgICAgICBgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7IGAsCiAgICAgICAgYCAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJztgLAogICAgICAgIGAgIH07CmAsCiAgICAgICAgYCAgd2l0aCAob2JqKSB7CmAKICAgICAgXSkpOwogICAgICBjb25zdCBlbmQgPSBhc3QuY2hpbGRyZW4ubGVuZ3RoID8gYXN0LmNoaWxkcmVuW2FzdC5jaGlsZHJlbi5sZW5ndGggLSAxXS5lbmQgOiB7IGxpbmU6IDAsIGNvbHVtbjogMCB9OwogICAgICBjb25zdCBub2RlcyA9IGFzdC5jaGlsZHJlbi5yZWR1Y2UoKGNodW5rLCBub2RlKSA9PiB7CiAgICAgICAgbGV0IGNvZGUyID0gIiI7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wID0gX19wIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5jb250ZW50LnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCAiXG4gICAgKyAiICsgSlNPTi5zdHJpbmdpZnkobGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSkpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIjtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wICs9ICgoX190ID0gIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICcpID09IG51bGwgPyAiIiA6IF9fdCk7XG4nKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gX19lKCIpLAogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiKTtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIlxuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjaHVuay5hZGQobmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgY29kZTIpKTsKICAgICAgfSwgcHJlYW1ibGUpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHNvdXJjZVVybCwgWyIgIH07XG4iLCAiXG4iLCAiICByZXR1cm4gX19wO1xuIiwgIn1cbiJdKSk7CiAgICAgIGNvbnN0IGNvZGUgPSBub2Rlcy50b1N0cmluZ1dpdGhTb3VyY2VNYXAoewogICAgICAgIGZpbGU6IHNvdXJjZVVybCwKICAgICAgICBzb3VyY2VSb290OiBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlUm9vdCB8fCAiLiIKICAgICAgfSk7CiAgICAgIGNvZGUubWFwLnNldFNvdXJjZUNvbnRlbnQoc291cmNlVXJsLCBhc3QuY29udGVudCk7CiAgICAgIHJldHVybiBjb2RlLmNvZGUgKyAiXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIgKyBCdWZmZXIuZnJvbShjb2RlLm1hcC50b1N0cmluZygpKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMoY29udGVudCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlVVJMIHx8ICJlanMiOwogICAgICBjb25zdCBhc3QgPSB0ZW1wbGF0ZVBhcnNlcihjb250ZW50LCBzb3VyY2VVcmwpOwogICAgICBsZXQgc291cmNlOwogICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnNvdXJjZU1hcCkgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpOwogICAgICB9IGVsc2UgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGNvbnN0IGZuID0gRnVuY3Rpb24oIm1vZHVsZSIsIHNvdXJjZSk7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gb3B0aW9ucy5tb2R1bGUgPT09IHRydWUgPyB7IGV4cG9ydHM6IHt9IH0gOiBvcHRpb25zLm1vZHVsZSA6IG51bGw7CiAgICAgIGNvbnN0IHJlc3VsdCA9IGZuKG1vZHVsZTMpOwogICAgICByZXN1bHQuc291cmNlID0gc291cmNlOwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzCnZhciByZXF1aXJlX3BhcnRpYWxseV9vcmRlcmVkX3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanMKdmFyIHJlcXVpcmVfcHJpb3JpdHlfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gdm9pZCAwOwogICAgdmFyIFByaW9yaXR5UXVldWUgPSBjbGFzcyB7CiAgICAgIF9jb21wYXJhdG9yOwogICAgICBfaXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2NvbXBhcmF0b3IpIHsKICAgICAgICB0aGlzLl9jb21wYXJhdG9yID0gX2NvbXBhcmF0b3I7CiAgICAgIH0KICAgICAgY2xlYXIoKSB7CiAgICAgICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgfQogICAgICBwdXNoKGl0ZW0pIHsKICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2l0ZW1zLmZpbmRJbmRleCgoZXhpc3RpbmcpID0+IHRoaXMuX2NvbXBhcmF0b3IoaXRlbSwgZXhpc3RpbmcpIDw9IDApOwogICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2goaXRlbSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnNwbGljZShpbmRleCwgMCwgaXRlbSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBvcCgpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc3BsaWNlKDAsIDEpWzBdOwogICAgICB9CiAgICAgIHBlZWsoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zWzBdOwogICAgICB9CiAgICAgIGdldCBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5sZW5ndGg7CiAgICAgIH0KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaW9yaXR5UXVldWUgPSBQcmlvcml0eVF1ZXVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSBpc1Byb21pc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2Uob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqLnRoZW4gPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qcwp2YXIgcmVxdWlyZV91dGlsczMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcwp2YXIgcmVxdWlyZV92aXNpdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXNpdEpzb24gPSB2aXNpdEpzb247CiAgICBleHBvcnRzMi52aXNpdEpzb25TY2hlbWEgPSB2aXNpdEpzb25TY2hlbWE7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBwb2ludGVyXzEgPSByZXF1aXJlX3BvaW50ZXIoKTsKICAgIGZ1bmN0aW9uIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiAhPT0gIm9iamVjdCIgfHwgc2NoZW1hMiA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hMi50eXBlID09ICJvYmplY3QiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgJiYgdHlwZW9mIHNjaGVtYTIucHJvcGVydGllc1trZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hMi5wcm9wZXJ0aWVzW2tleV07CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMi5hZGRpdGlvbmFsUHJvcGVydGllcyA9PSAib2JqZWN0IikgewogICAgICAgICAgcmV0dXJuIHNjaGVtYTIuYWRkaXRpb25hbFByb3BlcnRpZXM7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiIHx8IHNjaGVtYTIudHlwZSA9PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2hlbWEyLml0ZW1zID09ICJvYmplY3QiID8gc2NoZW1hMi5pdGVtcyA6IHZvaWQgMDsKICAgICAgfQogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogICAgZnVuY3Rpb24gX3Zpc2l0SnNvblJlY3Vyc2l2ZShqc29uMiwgdmlzaXRvciwgcHRyLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCkgewogICAgICBpZiAoc2NoZW1hMiA9PT0gdHJ1ZSB8fCBzY2hlbWEyID09PSBmYWxzZSkgewogICAgICAgIHNjaGVtYTIgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYTIgJiYgc2NoZW1hMi5oYXNPd25Qcm9wZXJ0eSgiJHJlZiIpICYmIHR5cGVvZiBzY2hlbWEyWyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICBpZiAocmVmUmVzb2x2ZXIpIHsKICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVmUmVzb2x2ZXIoc2NoZW1hMlsiJHJlZiJdLCBjb250ZXh0KTsKICAgICAgICAgIHNjaGVtYTIgPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICBjb250ZXh0ID0gcmVzb2x2ZWQuY29udGV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3QgdmFsdWUgPSB2aXNpdG9yKGpzb24yLCBwdHIsIHNjaGVtYTIsIHJvb3QpOwogICAgICByZXR1cm4gKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKSh2YWx1ZSkgPyB2YWx1ZSA6ICgwLCByeGpzXzEub2YpKHZhbHVlKSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHZhbHVlMikgPT4gewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlMikpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKSh2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKGl0ZW0sIGkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoaXRlbSwgdmlzaXRvciwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKHB0ciwgIiIgKyBpKSwgX2dldE9iamVjdFN1YlNjaGVtYShzY2hlbWEyLCAiIiArIGkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB2YWx1ZTJbaV0gPSB4KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlMiA9PSAib2JqZWN0IiAmJiB2YWx1ZTIgIT09IG51bGwpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZTIpKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChrZXkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUodmFsdWUyW2tleV0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsIGtleSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hMiwga2V5KSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbHVlMiwga2V5KTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLndyaXRhYmxlICYmIHZhbHVlMltrZXldICE9PSB4KSB7CiAgICAgICAgICAgICAgICB2YWx1ZTJba2V5XSA9IHg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodmFsdWUyKTsKICAgICAgICB9CiAgICAgIH0pKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvbihqc29uMiwgdmlzaXRvciwgc2NoZW1hMiwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbjIsIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyLCByZWZSZXNvbHZlciwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiB2aXNpdEpzb25TY2hlbWEoc2NoZW1hMiwgdmlzaXRvcikgewogICAgICBpZiAoc2NoZW1hMiA9PT0gZmFsc2UgfHwgc2NoZW1hMiA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBjb25zdCBrZXl3b3JkcyA9IHsKICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IHRydWUsCiAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgY29udGFpbnM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgICBub3Q6IHRydWUKICAgICAgfTsKICAgICAgY29uc3QgYXJyYXlLZXl3b3JkcyA9IHsKICAgICAgICBpdGVtczogdHJ1ZSwKICAgICAgICBhbGxPZjogdHJ1ZSwKICAgICAgICBhbnlPZjogdHJ1ZSwKICAgICAgICBvbmVPZjogdHJ1ZQogICAgICB9OwogICAgICBjb25zdCBwcm9wc0tleXdvcmRzID0gewogICAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICAgIHByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlLAogICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgIH07CiAgICAgIGZ1bmN0aW9uIF90cmF2ZXJzZShzY2hlbWEzLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KSB7CiAgICAgICAgaWYgKHNjaGVtYTMgJiYgdHlwZW9mIHNjaGVtYTMgPT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkoc2NoZW1hMykpIHsKICAgICAgICAgIHZpc2l0b3Ioc2NoZW1hMywganNvblB0ciwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCk7CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhzY2hlbWEzKSkgewogICAgICAgICAgICBjb25zdCBzY2ggPSBzY2hlbWEzW2tleV07CiAgICAgICAgICAgIGlmIChrZXkgaW4gcHJvcHNLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIG9mIE9iamVjdC5rZXlzKHNjaCkpIHsKICAgICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtwcm9wXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgcHJvcCksIHJvb3RTY2hlbWEsIHNjaGVtYTMsIHByb3ApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4ga2V5d29yZHMpIHsKICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5KSwgcm9vdFNjaGVtYSwgc2NoZW1hMywga2V5KTsKICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbaV0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksICIiICsgaSksIHJvb3RTY2hlbWEsIHNjaCwgIiIgKyBpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX3RyYXZlcnNlKHNjaGVtYTIsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEyKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3JlZ2lzdHJ5LmpzCnZhciByZXF1aXJlX3JlZ2lzdHJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Db3JlU2NoZW1hUmVnaXN0cnkgPSBleHBvcnRzMi5TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGFqdl8xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfYWp2KCkpOwogICAgdmFyIGFqdl9mb3JtYXRzXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZV9kaXN0KCkpOwogICAgdmFyIGh0dHAgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgiaHR0cCIpKTsKICAgIHZhciBodHRwcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJodHRwcyIpKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFVybCA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJ1cmwiKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzMygpOwogICAgdmFyIHV0aWxzXzIgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgdXRpbGl0eV8xID0gcmVxdWlyZV91dGlsaXR5KCk7CiAgICB2YXIgdmlzaXRvcl8xID0gcmVxdWlyZV92aXNpdG9yKCk7CiAgICB2YXIgU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIF9TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGVycm9yczsKICAgICAgY29uc3RydWN0b3IoZXJyb3JzLCBiYXNlTWVzc2FnZSA9ICJTY2hlbWEgdmFsaWRhdGlvbiBmYWlsZWQgd2l0aCB0aGUgZm9sbG93aW5nIGVycm9yczoiKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgc3VwZXIoIlNjaGVtYSB2YWxpZGF0aW9uIGZhaWxlZC4iKTsKICAgICAgICAgIHRoaXMuZXJyb3JzID0gW107CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gX1NjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24uY3JlYXRlTWVzc2FnZXMoZXJyb3JzKTsKICAgICAgICBzdXBlcihgJHtiYXNlTWVzc2FnZX0KICAke21lc3NhZ2VzLmpvaW4oIlxuICAiKX1gKTsKICAgICAgICB0aGlzLmVycm9ycyA9IGVycm9yczsKICAgICAgfQogICAgICBzdGF0aWMgY3JlYXRlTWVzc2FnZXMoZXJyb3JzKSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGVycm9ycy5tYXAoKGVycikgPT4gewogICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgRGF0YSBwYXRoICR7SlNPTi5zdHJpbmdpZnkoZXJyLmluc3RhbmNlUGF0aCl9ICR7ZXJyLm1lc3NhZ2V9YDsKICAgICAgICAgIGlmIChlcnIucGFyYW1zKSB7CiAgICAgICAgICAgIHN3aXRjaCAoZXJyLmtleXdvcmQpIHsKICAgICAgICAgICAgICBjYXNlICJhZGRpdGlvbmFsUHJvcGVydGllcyI6CiAgICAgICAgICAgICAgICBtZXNzYWdlICs9IGAoJHtlcnIucGFyYW1zLmFkZGl0aW9uYWxQcm9wZXJ0eX0pYDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgImVudW0iOgogICAgICAgICAgICAgICAgbWVzc2FnZSArPSBgLiBBbGxvd2VkIHZhbHVlcyBhcmU6ICR7ZXJyLnBhcmFtcy5hbGxvd2VkVmFsdWVzPy5tYXAoKHYpID0+IGAiJHt2fSJgKS5qb2luKCIsICIpfWA7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIG1lc3NhZ2UgKyAiLiI7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG1lc3NhZ2VzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IFNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb247CiAgICB2YXIgQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gY2xhc3MgX0NvcmVTY2hlbWFSZWdpc3RyeSB7CiAgICAgIF9hanY7CiAgICAgIF91cmlDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF91cmlIYW5kbGVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9wcmUgPSBuZXcgdXRpbHNfMS5QYXJ0aWFsbHlPcmRlcmVkU2V0KCk7CiAgICAgIF9wb3N0ID0gbmV3IHV0aWxzXzEuUGFydGlhbGx5T3JkZXJlZFNldCgpOwogICAgICBfY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSBmYWxzZTsKICAgICAgX3Byb21wdFByb3ZpZGVyOwogICAgICBfc291cmNlTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoZm9ybWF0cyA9IFtdKSB7CiAgICAgICAgdGhpcy5fYWp2ID0gbmV3IGFqdl8xLmRlZmF1bHQoewogICAgICAgICAgc3RyaWN0OiBmYWxzZSwKICAgICAgICAgIGxvYWRTY2hlbWE6ICh1cmkpID0+IHRoaXMuX2ZldGNoKHVyaSksCiAgICAgICAgICBwYXNzQ29udGV4dDogdHJ1ZQogICAgICAgIH0pOwogICAgICAgICgwLCBhanZfZm9ybWF0c18xLmRlZmF1bHQpKHRoaXMuX2Fqdik7CiAgICAgICAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykgewogICAgICAgICAgdGhpcy5hZGRGb3JtYXQoZm9ybWF0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXN5bmMgX2ZldGNoKHVyaSkgewogICAgICAgIGNvbnN0IG1heWJlU2NoZW1hID0gdGhpcy5fdXJpQ2FjaGUuZ2V0KHVyaSk7CiAgICAgICAgaWYgKG1heWJlU2NoZW1hKSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTY2hlbWE7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgaGFuZGxlciBvZiB0aGlzLl91cmlIYW5kbGVycykgewogICAgICAgICAgbGV0IGhhbmRsZXJSZXN1bHQgPSBoYW5kbGVyKHVyaSk7CiAgICAgICAgICBpZiAoaGFuZGxlclJlc3VsdCA9PT0gbnVsbCB8fCBoYW5kbGVyUmVzdWx0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKGhhbmRsZXJSZXN1bHQpKSB7CiAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhhbmRsZXJSZXN1bHQpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCBoYW5kbGVyUmVzdWx0OwogICAgICAgICAgdGhpcy5fdXJpQ2FjaGUuc2V0KHVyaSwgdmFsdWUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewogICAgICAgICAgY29uc3QgdXJsMyA9IG5ldyBVcmwuVVJMKHVyaSk7CiAgICAgICAgICBjb25zdCBjbGllbnQgPSB1cmwzLnByb3RvY29sID09PSAiaHR0cHM6IiA/IGh0dHBzIDogaHR0cDsKICAgICAgICAgIGNsaWVudC5nZXQodXJsMywgKHJlcykgPT4gewogICAgICAgICAgICBpZiAoIXJlcy5zdGF0dXNDb2RlIHx8IHJlcy5zdGF0dXNDb2RlID49IDMwMCkgewogICAgICAgICAgICAgIHJlcy5yZXN1bWUoKTsKICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBSZXF1ZXN0IGZhaWxlZC4gU3RhdHVzIENvZGU6ICR7cmVzLnN0YXR1c0NvZGV9YCkpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcy5zZXRFbmNvZGluZygidXRmOCIpOwogICAgICAgICAgICAgIGxldCBkYXRhID0gIiI7CiAgICAgICAgICAgICAgcmVzLm9uKCJkYXRhIiwgKGNodW5rKSA9PiB7CiAgICAgICAgICAgICAgICBkYXRhICs9IGNodW5rOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJlcy5vbigiZW5kIiwgKCkgPT4gewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QganNvbjIgPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICAgICAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCBqc29uMik7CiAgICAgICAgICAgICAgICAgIHJlc29sdmUoanNvbjIpOwogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgdHJhbnNmb3JtYXRpb24gc3RlcCBiZWZvcmUgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3J9IHZpc2l0b3IgVGhlIHZpc2l0b3IgdG8gdHJhbnNmb3JtIGV2ZXJ5IHZhbHVlLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yW119IGRlcHMgQSBsaXN0IG9mIG90aGVyIHZpc2l0b3JzIHRvIHJ1biBiZWZvcmUuCiAgICAgICAqLwogICAgICBhZGRQcmVUcmFuc2Zvcm0odmlzaXRvciwgZGVwcykgewogICAgICAgIHRoaXMuX3ByZS5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHRyYW5zZm9ybWF0aW9uIHN0ZXAgYWZ0ZXIgdGhlIHZhbGlkYXRpb24gb2YgYW55IEpzb24uIFRoZSBKU09OIHdpbGwgbm90IGJlIHZhbGlkYXRlZAogICAgICAgKiBhZnRlciB0aGUgUE9TVCwgc28gaWYgdHJhbnNmb3JtYXRpb25zIGFyZSBub3QgY29tcGF0aWJsZSB3aXRoIHRoZSBTY2hlbWEgaXQgd2lsbCBub3QgcmVzdWx0CiAgICAgICAqIGluIGFuIGVycm9yLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yfSB2aXNpdG9yIFRoZSB2aXNpdG9yIHRvIHRyYW5zZm9ybSBldmVyeSB2YWx1ZS4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcltdfSBkZXBzIEEgbGlzdCBvZiBvdGhlciB2aXNpdG9ycyB0byBydW4gYmVmb3JlLgogICAgICAgKi8KICAgICAgYWRkUG9zdFRyYW5zZm9ybSh2aXNpdG9yLCBkZXBzKSB7CiAgICAgICAgdGhpcy5fcG9zdC5hZGQodmlzaXRvciwgZGVwcyk7CiAgICAgIH0KICAgICAgX3Jlc29sdmVyKHJlZiwgdmFsaWRhdGUpIHsKICAgICAgICBpZiAoIXZhbGlkYXRlIHx8ICFyZWYpIHsKICAgICAgICAgIHJldHVybiB7fTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hMiA9IHZhbGlkYXRlLnNjaGVtYUVudi5yb290LnNjaGVtYTsKICAgICAgICBjb25zdCBpZCA9IHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IiA/IHNjaGVtYTIuJGlkIDogbnVsbDsKICAgICAgICBsZXQgZnVsbFJlZmVyZW5jZSA9IHJlZjsKICAgICAgICBpZiAodHlwZW9mIGlkID09PSAic3RyaW5nIikgewogICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IFVybC5yZXNvbHZlKGlkLCByZWYpOwogICAgICAgICAgaWYgKHJlZi5zdGFydHNXaXRoKCIjIikpIHsKICAgICAgICAgICAgZnVsbFJlZmVyZW5jZSA9IGlkICsgZnVsbFJlZmVyZW5jZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgcmVzb2x2ZWRTY2hlbWEgPSB0aGlzLl9hanYuZ2V0U2NoZW1hKGZ1bGxSZWZlcmVuY2UpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjb250ZXh0OiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hRW52LnZhbGlkYXRlLAogICAgICAgICAgc2NoZW1hOiByZXNvbHZlZFNjaGVtYT8uc2NoZW1hCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRmxhdHRlbiB0aGUgU2NoZW1hLCByZXNvbHZpbmcgYW5kIHJlcGxhY2luZyBhbGwgdGhlIHJlZnMuIE1ha2VzIGl0IGludG8gYSBzeW5jaHJvbm91cyBzY2hlbWEKICAgICAgICogdGhhdCBpcyBhbHNvIGVhc2llciB0byB0cmF2ZXJzZS4gRG9lcyBub3QgY2FjaGUgdGhlIHJlc3VsdC4KICAgICAgICoKICAgICAgICogUHJvZHVjaW5nIGEgZmxhdHRlbiBzY2hlbWEgZG9jdW1lbnQgZG9lcyBub3QgaW4gYWxsIGNhc2VzIHByb2R1Y2UgYSBzY2hlbWEgd2l0aCBpZGVudGljYWwgYmVoYXZpb3IgdG8gdGhlIG9yaWdpbmFsLgogICAgICAgKiBTZWU6IGh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMTktMDkvanNvbi1zY2hlbWEtY29yZS5odG1sI3JmYy5hcHBlbmRpeC5CLjIKICAgICAgICoKICAgICAgICogQHBhcmFtIHNjaGVtYSBUaGUgc2NoZW1hIG9yIFVSSSB0byBmbGF0dGVuLgogICAgICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIG9mIHRoZSBmbGF0dGVuZWQgc2NoZW1hIG9iamVjdC4KICAgICAgICogQHByaXZhdGUgc2luY2UgMTEuMiB3aXRob3V0IHJlcGxhY2VtZW50LgogICAgICAgKi8KICAgICAgYXN5bmMgXHUwMjc1ZmxhdHRlbihzY2hlbWEyKSB7CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEyKTsKICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEyKTsKICAgICAgICBjb25zdCBzZWxmMiA9IHRoaXM7CiAgICAgICAgZnVuY3Rpb24gdmlzaXRvcihjdXJyZW50LCBwb2ludGVyLCBwYXJlbnRTY2hlbWEsIGluZGV4KSB7CiAgICAgICAgICBpZiAoY3VycmVudCAmJiBwYXJlbnRTY2hlbWEgJiYgaW5kZXggJiYgKDAsIHV0aWxzXzIuaXNKc29uT2JqZWN0KShjdXJyZW50KSAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoY3VycmVudCwgIiRyZWYiKSAmJiB0eXBlb2YgY3VycmVudFsiJHJlZiJdID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gc2VsZjIuX3Jlc29sdmVyKGN1cnJlbnRbIiRyZWYiXSwgdmFsaWRhdGUpOwogICAgICAgICAgICBpZiAocmVzb2x2ZWQuc2NoZW1hKSB7CiAgICAgICAgICAgICAgcGFyZW50U2NoZW1hW2luZGV4XSA9IHJlc29sdmVkLnNjaGVtYTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWFDb3B5ID0gKDAsIHV0aWxzXzEuZGVlcENvcHkpKHZhbGlkYXRlLnNjaGVtYSk7CiAgICAgICAgKDAsIHZpc2l0b3JfMS52aXNpdEpzb25TY2hlbWEpKHNjaGVtYUNvcHksIHZpc2l0b3IpOwogICAgICAgIHJldHVybiBzY2hlbWFDb3B5OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb21waWxlIGFuZCByZXR1cm4gYSB2YWxpZGF0aW9uIGZ1bmN0aW9uIGZvciB0aGUgU2NoZW1hLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gc2NoZW1hIFRoZSBzY2hlbWEgdG8gdmFsaWRhdGUuIElmIGEgc3RyaW5nLCB3aWxsIGZldGNoIHRoZSBzY2hlbWEgYmVmb3JlIGNvbXBpbGluZyBpdAogICAgICAgKiAodXNpbmcgc2NoZW1hIGFzIGEgVVJJKS4KICAgICAgICovCiAgICAgIGFzeW5jIGNvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fY29tcGlsZShzY2hlbWEyKTsKICAgICAgICByZXR1cm4gKHZhbHVlLCBvcHRpb25zKSA9PiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXN5bmMgX2NvbXBpbGUoc2NoZW1hMikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hMiA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEpID0+ICh7IHN1Y2Nlc3M6IHNjaGVtYTIsIGRhdGEgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUluZm8gPSB7CiAgICAgICAgICBzbWFydERlZmF1bHRSZWNvcmQ6IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCksCiAgICAgICAgICBwcm9tcHREZWZpbml0aW9uczogW10KICAgICAgICB9OwogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hMik7CiAgICAgICAgbGV0IHZhbGlkYXRvcjsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbyA9IHNjaGVtYUluZm87CiAgICAgICAgICB2YWxpZGF0b3IgPSB0aGlzLl9hanYuY29tcGlsZShzY2hlbWEyKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5NaXNzaW5nUmVmRXJyb3IpKSB7CiAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICB9CiAgICAgICAgICB2YWxpZGF0b3IgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYTIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEsIG9wdGlvbnMpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25PcHRpb25zID0gewogICAgICAgICAgICB3aXRoUHJvbXB0czogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQb3N0VHJhbnNmb3JtczogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQcmVUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICAuLi5vcHRpb25zCiAgICAgICAgICB9OwogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkNvbnRleHQgPSB7CiAgICAgICAgICAgIHByb21wdEZpZWxkc1dpdGhWYWx1ZTogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVByZVRyYW5zZm9ybXMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCB2aXNpdG9yIG9mIHRoaXMuX3ByZS52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlTbWFydERlZmF1bHRzKGRhdGEsIHNjaGVtYUluZm8uc21hcnREZWZhdWx0UmVjb3JkKTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy53aXRoUHJvbXB0cykgewogICAgICAgICAgICBjb25zdCB2aXNpdG9yID0gKHZhbHVlLCBwb2ludGVyKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5hZGQocG9pbnRlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEyID09PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYTIsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb25zID0gc2NoZW1hSW5mby5wcm9tcHREZWZpbml0aW9ucy5maWx0ZXIoKGRlZikgPT4gIXZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5oYXMoZGVmLmlkKSk7CiAgICAgICAgICAgIGlmIChkZWZpbml0aW9ucy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlQcm9tcHRzKGRhdGEsIGRlZmluaXRpb25zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHZhbGlkYXRvci5jYWxsKHZhbGlkYXRpb25Db250ZXh0LCBkYXRhKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzcywgZXJyb3JzOiB2YWxpZGF0b3IuZXJyb3JzID8/IFtdIH07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuVmFsaWRhdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogZmFsc2UsIGVycm9yczogZXJyb3IuZXJyb3JzIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMuYXBwbHlQb3N0VHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcG9zdC52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEyLCB0aGlzLl9yZXNvbHZlci5iaW5kKHRoaXMpLCB2YWxpZGF0b3IpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogdHJ1ZSB9OwogICAgICAgIH07CiAgICAgIH0KICAgICAgYWRkRm9ybWF0KGZvcm1hdCkgewogICAgICAgIHRoaXMuX2Fqdi5hZGRGb3JtYXQoZm9ybWF0Lm5hbWUsIGZvcm1hdC5mb3JtYXR0ZXIpOwogICAgICB9CiAgICAgIGFkZFNtYXJ0RGVmYXVsdFByb3ZpZGVyKHNvdXJjZSwgcHJvdmlkZXIpIHsKICAgICAgICBpZiAodGhpcy5fc291cmNlTWFwLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Ioc291cmNlKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fc291cmNlTWFwLnNldChzb3VyY2UsIHByb3ZpZGVyKTsKICAgICAgICBpZiAoIXRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQpIHsKICAgICAgICAgIHRoaXMuX3NtYXJ0RGVmYXVsdEtleXdvcmQgPSB0cnVlOwogICAgICAgICAgdGhpcy5fYWp2LmFkZEtleXdvcmQoewogICAgICAgICAgICBrZXl3b3JkOiAiJGRlZmF1bHQiLAogICAgICAgICAgICBlcnJvcnM6IGZhbHNlLAogICAgICAgICAgICB2YWxpZDogdHJ1ZSwKICAgICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIF9wYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICAgIGlmIChjb21waWxhdGlvblNjaGVtSW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGF0aEFycmF5ID0gdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCk7CiAgICAgICAgICAgICAgY29tcGlsYXRpb25TY2hlbUluZm8uc21hcnREZWZhdWx0UmVjb3JkLnNldChKU09OLnN0cmluZ2lmeShwYXRoQXJyYXkpLCBzY2hlbWEyKTsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICIkc291cmNlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICByZXF1aXJlZDogWyIkc291cmNlIl0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlZ2lzdGVyVXJpSGFuZGxlcihoYW5kbGVyKSB7CiAgICAgICAgdGhpcy5fdXJpSGFuZGxlcnMuYWRkKGhhbmRsZXIpOwogICAgICB9CiAgICAgIHVzZVByb21wdFByb3ZpZGVyKHByb3ZpZGVyKSB7CiAgICAgICAgY29uc3QgaXNTZXR1cCA9ICEhdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgdGhpcy5fcHJvbXB0UHJvdmlkZXIgPSBwcm92aWRlcjsKICAgICAgICBpZiAoaXNTZXR1cCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1wcm9tcHQiLAogICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgY29tcGlsZTogKHNjaGVtYTIsIHBhcmVudFNjaGVtYSwgaXQpID0+IHsKICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICBpZiAoIWNvbXBpbGF0aW9uU2NoZW1JbmZvKSB7CiAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgcGF0aCA9ICIvIiArIHRoaXMubm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpLmpvaW4oIi8iKTsKICAgICAgICAgICAgbGV0IHR5cGUyOwogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGxldCBtZXNzYWdlOwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hMi5tZXNzYWdlOwogICAgICAgICAgICAgIHR5cGUyID0gc2NoZW1hMi50eXBlOwogICAgICAgICAgICAgIGl0ZW1zID0gc2NoZW1hMi5pdGVtczsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShwYXJlbnRTY2hlbWEpOwogICAgICAgICAgICBpZiAoIXR5cGUyKSB7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYm9vbGVhbiIpKSB7CiAgICAgICAgICAgICAgICB0eXBlMiA9ICJjb25maXJtYXRpb24iOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZW51bSkpIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImxpc3QiOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpICYmIHBhcmVudFNjaGVtYS5pdGVtcyAmJiBBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZTIgPSAibGlzdCI7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUyID0gImlucHV0IjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IG11bHRpc2VsZWN0OwogICAgICAgICAgICBpZiAodHlwZTIgPT09ICJsaXN0IikgewogICAgICAgICAgICAgIG11bHRpc2VsZWN0ID0gc2NoZW1hMi5tdWx0aXNlbGVjdCA9PT0gdm9pZCAwID8gcHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpIDogc2NoZW1hMi5tdWx0aXNlbGVjdDsKICAgICAgICAgICAgICBjb25zdCBlbnVtVmFsdWVzID0gbXVsdGlzZWxlY3QgPyBwYXJlbnRTY2hlbWEuaXRlbXMgJiYgcGFyZW50U2NoZW1hLml0ZW1zLmVudW0gOiBwYXJlbnRTY2hlbWEuZW51bTsKICAgICAgICAgICAgICBpZiAoIWl0ZW1zICYmIEFycmF5LmlzQXJyYXkoZW51bVZhbHVlcykpIHsKICAgICAgICAgICAgICAgIGl0ZW1zID0gW107CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIGVudW1WYWx1ZXMpIHsKICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAic3RyaW5nIikgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2godmFsdWUpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goeyBsYWJlbDogdmFsdWUudG9TdHJpbmcoKSwgdmFsdWUgfSk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbiA9IHsKICAgICAgICAgICAgICBpZDogcGF0aCwKICAgICAgICAgICAgICB0eXBlOiB0eXBlMiwKICAgICAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgICAgIHJhdzogc2NoZW1hMiwKICAgICAgICAgICAgICBpdGVtcywKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCwKICAgICAgICAgICAgICBwcm9wZXJ0eVR5cGVzLAogICAgICAgICAgICAgIGRlZmF1bHQ6IHR5cGVvZiBwYXJlbnRTY2hlbWEuZGVmYXVsdCA9PSAib2JqZWN0IiAmJiBwYXJlbnRTY2hlbWEuZGVmYXVsdCAhPT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZGVmYXVsdCkgPyB2b2lkIDAgOiBwYXJlbnRTY2hlbWEuZGVmYXVsdCwKICAgICAgICAgICAgICBhc3luYyB2YWxpZGF0b3IoZGF0YSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaXQuc2VsZi52YWxpZGF0ZShwYXJlbnRTY2hlbWEsIGRhdGEpOwogICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpdC5zZWxmLmVycm9ycz8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0LnNlbGYuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkVycm9yID0gZTsKICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsaWRhdGlvbkVycm9yLmVycm9ycykgJiYgdmFsaWRhdGlvbkVycm9yLmVycm9ycy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvbkVycm9yLmVycm9yc1swXS5tZXNzYWdlOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICBjb21waWxhdGlvblNjaGVtSW5mby5wcm9tcHREZWZpbml0aW9ucy5wdXNoKGRlZmluaXRpb24pOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaWYgKHRoaXMgJiYgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUpIHsKICAgICAgICAgICAgICAgIHRoaXMucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9LAogICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICBvbmVPZjogWwogICAgICAgICAgICAgIHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgICAgICAgICAgICJtZXNzYWdlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyJtZXNzYWdlIl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBhc3luYyBfYXBwbHlQcm9tcHRzKGRhdGEsIHByb21wdHMpIHsKICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuX3Byb21wdFByb3ZpZGVyOwogICAgICAgIGlmICghcHJvdmlkZXIpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgYW5zd2VycyA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHJ4anNfMS5mcm9tKShwcm92aWRlcihwcm9tcHRzKSkpOwogICAgICAgIGZvciAoY29uc3QgcGF0aCBpbiBhbnN3ZXJzKSB7CiAgICAgICAgICBjb25zdCBwYXRoRnJhZ21lbnRzID0gcGF0aC5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIHBhdGhGcmFnbWVudHMsIGFuc3dlcnNbcGF0aF0sIG51bGwsIHZvaWQgMCwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN0YXRpYyBfc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUsIHBhcmVudCA9IG51bGwsIHBhcmVudFByb3BlcnR5LCBmb3JjZSkgewogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBmcmFnbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IGZyYWdtZW50c1tpbmRleF07CiAgICAgICAgICBpZiAoL15pXGQrJC8udGVzdChmcmFnbWVudCkpIHsKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvciAobGV0IGRhdGFJbmRleCA9IDA7IGRhdGFJbmRleCA8IGRhdGEubGVuZ3RoOyBkYXRhSW5kZXgrKykgewogICAgICAgICAgICAgIF9Db3JlU2NoZW1hUmVnaXN0cnkuX3NldChkYXRhW2RhdGFJbmRleF0sIGZyYWdtZW50cy5zbGljZShpbmRleCArIDEpLCB2YWx1ZSwgZGF0YSwgYCR7ZGF0YUluZGV4fWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGF0YSAmJiBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50UHJvcGVydHkpIHsKICAgICAgICAgICAgZGF0YSA9IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB7fTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcmVudCA9IGRhdGE7CiAgICAgICAgICBwYXJlbnRQcm9wZXJ0eSA9IGZyYWdtZW50OwogICAgICAgICAgZGF0YSA9IGRhdGFbZnJhZ21lbnRdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudFByb3BlcnR5ICYmIChmb3JjZSB8fCBwYXJlbnRbcGFyZW50UHJvcGVydHldID09PSB2b2lkIDApKSB7CiAgICAgICAgICBwYXJlbnRbcGFyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc21hcnREZWZhdWx0cykgewogICAgICAgIGZvciAoY29uc3QgW3BvaW50ZXIsIHNjaGVtYTJdIG9mIHNtYXJ0RGVmYXVsdHMuZW50cmllcygpKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSBKU09OLnBhcnNlKHBvaW50ZXIpOwogICAgICAgICAgY29uc3Qgc291cmNlID0gdGhpcy5fc291cmNlTWFwLmdldChzY2hlbWEyLiRzb3VyY2UpOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2Uoc2NoZW1hMik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSkgewogICAgICAgICAgICB2YWx1ZSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkodmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUpOwogICAgICAgIH0KICAgICAgfQogICAgICB1c2VYRGVwcmVjYXRlZFByb3ZpZGVyKG9uVXNhZ2UpIHsKICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1kZXByZWNhdGVkIiwKICAgICAgICAgIHZhbGlkYXRlOiAoc2NoZW1hMiwgX2RhdGEsIF9wYXJlbnRTY2hlbWEsIGRhdGFDeHQpID0+IHsKICAgICAgICAgICAgaWYgKHNjaGVtYTIpIHsKICAgICAgICAgICAgICBvblVzYWdlKGBPcHRpb24gIiR7ZGF0YUN4dD8ucGFyZW50RGF0YVByb3BlcnR5fSIgaXMgZGVwcmVjYXRlZCR7dHlwZW9mIHNjaGVtYTIgPT0gInN0cmluZyIgPyAiOiAiICsgc2NoZW1hMiA6ICIuIn1gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcnM6IGZhbHNlCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpIHsKICAgICAgICByZXR1cm4gaXQuZGF0YVBhdGhBcnIuc2xpY2UoMSwgaXQuZGF0YUxldmVsICsgMSkubWFwKChwKSA9PiB0eXBlb2YgcCA9PT0gIm51bWJlciIgPyBwIDogcC5zdHIucmVwbGFjZSgvIi9nLCAiIikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gQ29yZVNjaGVtYVJlZ2lzdHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzCnZhciByZXF1aXJlX3NjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0pzb25TY2hlbWEgPSBpc0pzb25TY2hlbWE7CiAgICBleHBvcnRzMi5tZXJnZVNjaGVtYXMgPSBtZXJnZVNjaGVtYXM7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIGZ1bmN0aW9uIGlzSnNvblNjaGVtYSh2YWx1ZSkgewogICAgICByZXR1cm4gKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgdmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSB0cnVlOwogICAgfQogICAgZnVuY3Rpb24gbWVyZ2VTY2hlbWFzKC4uLnNjaGVtYXMpIHsKICAgICAgcmV0dXJuIHNjaGVtYXMucmVkdWNlKChwcmV2LCBjdXJyKSA9PiB7CiAgICAgICAgaWYgKGN1cnIgPT09IHZvaWQgMCkgewogICAgICAgICAgcmV0dXJuIHByZXY7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2ID09PSBmYWxzZSB8fCBjdXJyID09PSBmYWxzZSkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSBpZiAocHJldiA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIGN1cnI7CiAgICAgICAgfSBlbHNlIGlmIChjdXJyID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocHJldi5hbGxPZikpIHsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1cnIuYWxsT2YpKSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbLi4ucHJldi5hbGxPZiwgY3Vycl0gfTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgIHJldHVybiB7IC4uLnByZXYsIGFsbE9mOiBbcHJldiwgLi4uY3Vyci5hbGxPZl0gfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCBjdXJyXSB9OwogICAgICAgIH0KICAgICAgfSwgdHJ1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcwp2YXIgcmVxdWlyZV9zY2hlbWEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHZvaWQgMDsKICAgIHZhciB0cmFuc2Zvcm1zID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtcygpKTsKICAgIGV4cG9ydHMyLnRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1zOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BvaW50ZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmVnaXN0cnkoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Zpc2l0b3IoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdXRpbGl0eSgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL2luZGV4LmpzCnZhciByZXF1aXJlX2pzb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBzY2hlbWEyID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hMigpKTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHNjaGVtYTI7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlscygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbG9nZ2VyLmpzCnZhciByZXF1aXJlX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZW50LmpzCnZhciByZXF1aXJlX2luZGVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIGluZGVudGF0aW9uTWFwID0ge307CiAgICB2YXIgSW5kZW50TG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBpbmRlbnRhdGlvbiA9ICIgICIpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSB8fCBbIiJdOwogICAgICAgIGNvbnN0IGluZGVudE1hcCA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gdGhpcy5fb2JzZXJ2YWJsZS5waXBlKCgwLCByeGpzXzEubWFwKSgoZW50cnkpID0+IHsKICAgICAgICAgIGNvbnN0IGwgPSBlbnRyeS5wYXRoLmZpbHRlcigoeCkgPT4gISF4KS5sZW5ndGg7CiAgICAgICAgICBpZiAobCA+PSBpbmRlbnRNYXAubGVuZ3RoKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50ID0gaW5kZW50TWFwW2luZGVudE1hcC5sZW5ndGggLSAxXTsKICAgICAgICAgICAgd2hpbGUgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICAgIGN1cnJlbnQgKz0gaW5kZW50YXRpb247CiAgICAgICAgICAgICAgaW5kZW50TWFwLnB1c2goY3VycmVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGVudHJ5Lm1lc3NhZ2UgPSBpbmRlbnRNYXBbbF0gKyBlbnRyeS5tZXNzYWdlLnNwbGl0KC9cbi8pLmpvaW4oIlxuIiArIGluZGVudE1hcFtsXSk7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gSW5kZW50TG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbGV2ZWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxldmVsQ2FwTG9nZ2VyID0gZXhwb3J0czIuTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSB2b2lkIDA7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIExldmVsVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgX0xldmVsVHJhbnNmb3JtTG9nZ2VyIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgbmFtZTsKICAgICAgcGFyZW50OwogICAgICBsZXZlbFRyYW5zZm9ybTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxUcmFuc2Zvcm0pIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbFRyYW5zZm9ybSA9IGxldmVsVHJhbnNmb3JtOwogICAgICB9CiAgICAgIGxvZyhsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiBzdXBlci5sb2codGhpcy5sZXZlbFRyYW5zZm9ybShsZXZlbCksIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIobmFtZSwgdGhpcywgdGhpcy5sZXZlbFRyYW5zZm9ybSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IExldmVsVHJhbnNmb3JtTG9nZ2VyOwogICAgdmFyIExldmVsQ2FwTG9nZ2VyID0gY2xhc3MgX0xldmVsQ2FwTG9nZ2VyIGV4dGVuZHMgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsQ2FwOwogICAgICBzdGF0aWMgbGV2ZWxNYXAgPSB7CiAgICAgICAgZGVidWc6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJkZWJ1ZyIsIHdhcm46ICJkZWJ1ZyIsIGVycm9yOiAiZGVidWciLCBmYXRhbDogImRlYnVnIiB9LAogICAgICAgIGluZm86IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogImluZm8iLCBlcnJvcjogImluZm8iLCBmYXRhbDogImluZm8iIH0sCiAgICAgICAgd2FybjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAid2FybiIsIGZhdGFsOiAid2FybiIgfSwKICAgICAgICBlcnJvcjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAiZXJyb3IiLCBmYXRhbDogImVycm9yIiB9LAogICAgICAgIGZhdGFsOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZmF0YWwiIH0KICAgICAgfTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxDYXApIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQsIChsZXZlbCkgPT4gewogICAgICAgICAgcmV0dXJuIF9MZXZlbENhcExvZ2dlci5sZXZlbE1hcFtsZXZlbENhcF1bbGV2ZWxdIHx8IGxldmVsOwogICAgICAgIH0pOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbENhcCA9IGxldmVsQ2FwOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBMZXZlbENhcExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9udWxsLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV9udWxsX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJhbnNmb3JtTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIHRyYW5zZm9ybSwgcGFyZW50ID0gbnVsbCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRyYW5zZm9ybSh0aGlzLl9vYnNlcnZhYmxlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IFRyYW5zZm9ybUxvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2luZGVudCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sZXZlbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbnVsbF9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanMKdmFyIHJlcXVpcmVfZGVmaW5pdGlvbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qcwp2YXIgcmVxdWlyZV9wYXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL3BhdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhdGggPSBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSBleHBvcnRzMi5QYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRQYXRoRXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3BsaXQgPSBzcGxpdDsKICAgIGV4cG9ydHMyLmV4dG5hbWUgPSBleHRuYW1lOwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSBiYXNlbmFtZTsKICAgIGV4cG9ydHMyLmRpcm5hbWUgPSBkaXJuYW1lOwogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGU7CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgZXhwb3J0czIucmVzb2x2ZSA9IHJlc29sdmU7CiAgICBleHBvcnRzMi5mcmFnbWVudCA9IGZyYWdtZW50OwogICAgZXhwb3J0czIucmVzZXROb3JtYWxpemVDYWNoZSA9IHJlc2V0Tm9ybWFsaXplQ2FjaGU7CiAgICBleHBvcnRzMi5ub3JtYWxpemUgPSBub3JtYWxpemU7CiAgICBleHBvcnRzMi5ub0NhY2hlTm9ybWFsaXplID0gbm9DYWNoZU5vcm1hbGl6ZTsKICAgIGV4cG9ydHMyLmFzV2luZG93c1BhdGggPSBhc1dpbmRvd3NQYXRoOwogICAgZXhwb3J0czIuYXNQb3NpeFBhdGggPSBhc1Bvc2l4UGF0aDsKICAgIGV4cG9ydHMyLmdldFN5c3RlbVBhdGggPSBnZXRTeXN0ZW1QYXRoOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBJbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IGlzIGludmFsaWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IEludmFsaWRQYXRoRXhjZXB0aW9uOwogICAgdmFyIFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IG11c3QgYmUgYWJzb2x1dGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb247CiAgICB2YXIgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBjYW5ub3QgYmUgbWFkZSBhIGZyYWdtZW50LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbjsKICAgIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSAiLyI7CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXA7CiAgICBmdW5jdGlvbiBzcGxpdChwYXRoMikgewogICAgICBjb25zdCBmcmFnbWVudHMgPSBwYXRoMi5zcGxpdChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKS5tYXAoKHgpID0+IGZyYWdtZW50KHgpKTsKICAgICAgaWYgKGZyYWdtZW50c1tmcmFnbWVudHMubGVuZ3RoIC0gMV0ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgZnJhZ21lbnRzLnBvcCgpOwogICAgICB9CiAgICAgIHJldHVybiBmcmFnbWVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBleHRuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGJhc2UgPSBiYXNlbmFtZShwYXRoMik7CiAgICAgIGNvbnN0IGkgPSBiYXNlLmxhc3RJbmRleE9mKCIuIik7CiAgICAgIGlmIChpIDwgMSkgewogICAgICAgIHJldHVybiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYmFzZS5zbGljZShpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYmFzZW5hbWUocGF0aDIpIHsKICAgICAgY29uc3QgaSA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaSA9PSAtMSkgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGZyYWdtZW50KHBhdGgyLnNsaWNlKHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApICsgMSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkaXJuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGluZGV4ID0gcGF0aDIubGFzdEluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgY29uc3QgZW5kSW5kZXggPSBpbmRleCA9PT0gMCA/IDEgOiBpbmRleDsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwYXRoMi5zbGljZSgwLCBlbmRJbmRleCkpOwogICAgfQogICAgZnVuY3Rpb24gam9pbjIocDEsIC4uLm90aGVycykgewogICAgICBpZiAob3RoZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICByZXR1cm4gbm9ybWFsaXplKChwMSA/IHAxICsgZXhwb3J0czIuTm9ybWFsaXplZFNlcCA6ICIiKSArIG90aGVycy5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gcDE7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGlzQWJzb2x1dGUocCkgewogICAgICByZXR1cm4gcC5zdGFydHNXaXRoKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgfQogICAgZnVuY3Rpb24gcmVsYXRpdmUoZnJvbSwgdG8pIHsKICAgICAgaWYgKCFpc0Fic29sdXRlKGZyb20pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbihmcm9tKTsKICAgICAgfQogICAgICBpZiAoIWlzQWJzb2x1dGUodG8pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbih0byk7CiAgICAgIH0KICAgICAgbGV0IHA7CiAgICAgIGlmIChmcm9tID09IHRvKSB7CiAgICAgICAgcCA9ICIiOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IHNwbGl0RnJvbSA9IHNwbGl0KGZyb20pOwogICAgICAgIGNvbnN0IHNwbGl0VG8gPSBzcGxpdCh0byk7CiAgICAgICAgd2hpbGUgKHNwbGl0RnJvbS5sZW5ndGggPiAwICYmIHNwbGl0VG8ubGVuZ3RoID4gMCAmJiBzcGxpdEZyb21bMF0gPT0gc3BsaXRUb1swXSkgewogICAgICAgICAgc3BsaXRGcm9tLnNoaWZ0KCk7CiAgICAgICAgICBzcGxpdFRvLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIGlmIChzcGxpdEZyb20ubGVuZ3RoID09IDApIHsKICAgICAgICAgIHAgPSBzcGxpdFRvLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHAgPSBzcGxpdEZyb20ubWFwKCgpID0+ICIuLiIpLmNvbmNhdChzcGxpdFRvKS5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHApOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShwMSwgcDIpIHsKICAgICAgaWYgKGlzQWJzb2x1dGUocDIpKSB7CiAgICAgICAgcmV0dXJuIHAyOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBqb2luMihwMSwgcDIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBmcmFnbWVudChwYXRoMikgewogICAgICBpZiAocGF0aDIuaW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSAhPSAtMSkgewogICAgICAgIHRocm93IG5ldyBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbihwYXRoMik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGgyOwogICAgfQogICAgdmFyIG5vcm1hbGl6ZWRDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICBmdW5jdGlvbiByZXNldE5vcm1hbGl6ZUNhY2hlKCkgewogICAgICBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGxldCBtYXliZVBhdGggPSBub3JtYWxpemVkQ2FjaGUuZ2V0KHBhdGgyKTsKICAgICAgaWYgKCFtYXliZVBhdGgpIHsKICAgICAgICBtYXliZVBhdGggPSBub0NhY2hlTm9ybWFsaXplKHBhdGgyKTsKICAgICAgICBub3JtYWxpemVkQ2FjaGUuc2V0KHBhdGgyLCBtYXliZVBhdGgpOwogICAgICB9CiAgICAgIHJldHVybiBtYXliZVBhdGg7CiAgICB9CiAgICBmdW5jdGlvbiBub0NhY2hlTm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGlmIChwYXRoMiA9PSAiIiB8fCBwYXRoMiA9PSAiLiIpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSBpZiAocGF0aDIgPT0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICByZXR1cm4gZXhwb3J0czIuTm9ybWFsaXplZFJvb3Q7CiAgICAgIH0KICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoMjsKICAgICAgaWYgKHBhdGgyLm1hdGNoKC9eW0EtWl06Wy9cXF0vaSkpIHsKICAgICAgICBwYXRoMiA9ICJcXCIgKyBwYXRoMlswXS50b1VwcGVyQ2FzZSgpICsgIlxcIiArIHBhdGgyLnNsaWNlKDMpOwogICAgICB9CiAgICAgIGNvbnN0IHAgPSBwYXRoMi5zcGxpdCgvWy9cXF0vZyk7CiAgICAgIGxldCByZWxhdGl2ZTIgPSBmYWxzZTsKICAgICAgbGV0IGkgPSAxOwogICAgICBpZiAocFswXSAhPSAiIikgewogICAgICAgIHAudW5zaGlmdCgiLiIpOwogICAgICAgIHJlbGF0aXZlMiA9IHRydWU7CiAgICAgIH0KICAgICAgd2hpbGUgKGkgPCBwLmxlbmd0aCkgewogICAgICAgIGlmIChwW2ldID09ICIuIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwW2ldID09ICIuLiIpIHsKICAgICAgICAgIGlmIChpIDwgMiAmJiAhcmVsYXRpdmUyKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEV4Y2VwdGlvbihvcmlnaW5hbCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPj0gMiAmJiBwW2kgLSAxXSAhPSAiLi4iKSB7CiAgICAgICAgICAgIHAuc3BsaWNlKGkgLSAxLCAyKTsKICAgICAgICAgICAgaS0tOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHAubGVuZ3RoID09IDEpIHsKICAgICAgICByZXR1cm4gcFswXSA9PSAiIiA/IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocFswXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc2hpZnQoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHAuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgfQogICAgfQogICAgdmFyIHBhdGggPSAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICByZXR1cm4gbm9ybWFsaXplKFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykpOwogICAgfTsKICAgIGV4cG9ydHMyLnBhdGggPSBwYXRoOwogICAgZnVuY3Rpb24gYXNXaW5kb3dzUGF0aChwYXRoMikgewogICAgICBjb25zdCBkcml2ZSA9IHBhdGgyLm1hdGNoKC9eXC8oXHcpKD86XC8oLiopKT8kLyk7CiAgICAgIGlmIChkcml2ZSkgewogICAgICAgIGNvbnN0IHN1YlBhdGggPSBkcml2ZVsyXSA/IGRyaXZlWzJdLnJlcGxhY2UoL1wvL2csICJcXCIpIDogIiI7CiAgICAgICAgcmV0dXJuIGAke2RyaXZlWzFdfTpcXCR7c3ViUGF0aH1gOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMi5yZXBsYWNlKC9cLy9nLCAiXFwiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzUG9zaXhQYXRoKHBhdGgyKSB7CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFN5c3RlbVBhdGgocGF0aDIpIHsKICAgICAgaWYgKHByb2Nlc3MucGxhdGZvcm0uc3RhcnRzV2l0aCgid2luMzIiKSkgewogICAgICAgIHJldHVybiBhc1dpbmRvd3NQYXRoKHBhdGgyKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYXNQb3NpeFBhdGgocGF0aDIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0cmluZ1RvRmlsZUJ1ZmZlciA9IHN0cmluZ1RvRmlsZUJ1ZmZlcjsKICAgIGV4cG9ydHMyLmZpbGVCdWZmZXJUb1N0cmluZyA9IGZpbGVCdWZmZXJUb1N0cmluZzsKICAgIHZhciBub2RlX3V0aWxfMSA9IHJlcXVpcmUoIm5vZGU6dXRpbCIpOwogICAgZnVuY3Rpb24gc3RyaW5nVG9GaWxlQnVmZmVyKHN0cjIpIHsKICAgICAgcmV0dXJuIG5ldyBub2RlX3V0aWxfMS5UZXh0RW5jb2RlcigpLmVuY29kZShzdHIyKS5idWZmZXI7CiAgICB9CiAgICBmdW5jdGlvbiBmaWxlQnVmZmVyVG9TdHJpbmcoZmlsZUJ1ZmZlcikgewogICAgICBpZiAoZmlsZUJ1ZmZlci50b1N0cmluZy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZmlsZUJ1ZmZlci50b1N0cmluZygidXRmLTgiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShuZXcgVWludDhBcnJheShmaWxlQnVmZmVyKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RXYXRjaEV2ZW50VHlwZSA9IHZvaWQgMDsKICAgIHZhciBIb3N0V2F0Y2hFdmVudFR5cGU7CiAgICAoZnVuY3Rpb24oSG9zdFdhdGNoRXZlbnRUeXBlMikgewogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNoYW5nZWQiXSA9IDBdID0gIkNoYW5nZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkNyZWF0ZWQiXSA9IDFdID0gIkNyZWF0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIkRlbGV0ZWQiXSA9IDJdID0gIkRlbGV0ZWQiOwogICAgICBIb3N0V2F0Y2hFdmVudFR5cGUyW0hvc3RXYXRjaEV2ZW50VHlwZTJbIlJlbmFtZWQiXSA9IDNdID0gIlJlbmFtZWQiOwogICAgfSkoSG9zdFdhdGNoRXZlbnRUeXBlIHx8IChleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSBIb3N0V2F0Y2hFdmVudFR5cGUgPSB7fSkpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcwp2YXIgcmVxdWlyZV9tZW1vcnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9tZW1vcnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNpbXBsZU1lbW9yeUhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTIoKTsKICAgIHZhciBTaW1wbGVNZW1vcnlIb3N0ID0gY2xhc3MgewogICAgICBfY2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfd2F0Y2hlcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfbmV3RGlyU3RhdHMoKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGluc3BlY3QoKSB7CiAgICAgICAgICAgIHJldHVybiAiPERpcmVjdG9yeT4iOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRmlsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBzaXplOiAwLAogICAgICAgICAgYXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY3RpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgbXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgYmlydGh0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQ6IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIF9uZXdGaWxlU3RhdHMoY29udGVudCwgb2xkU3RhdHMpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgaW5zcGVjdCgpIHsKICAgICAgICAgICAgcmV0dXJuIGA8RmlsZSBzaXplKCR7Y29udGVudC5ieXRlTGVuZ3RofSk+YDsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0ZpbGUoKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRGlyZWN0b3J5KCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9LAogICAgICAgICAgc2l6ZTogY29udGVudC5ieXRlTGVuZ3RoLAogICAgICAgICAgYXRpbWU6IG9sZFN0YXRzID8gb2xkU3RhdHMuYXRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGN0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIG10aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGJpcnRodGltZTogb2xkU3RhdHMgPyBvbGRTdGF0cy5iaXJ0aHRpbWUgOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGNvbnRlbnQKICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHRoaXMuX2NhY2hlLnNldCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKSwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgIH0KICAgICAgX3RvQWJzb2x1dGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcGF0aF8xLmlzQWJzb2x1dGUpKHBhdGgpID8gcGF0aCA6ICgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfdXBkYXRlV2F0Y2hlcnMocGF0aCwgdHlwZTIpIHsKICAgICAgICBjb25zdCB0aW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCk7CiAgICAgICAgbGV0IGN1cnJlbnRQYXRoID0gcGF0aDsKICAgICAgICBsZXQgcGFyZW50ID0gbnVsbDsKICAgICAgICBpZiAodGhpcy5fd2F0Y2hlcnMuc2l6ZSA9PSAwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlciA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgaWYgKG1heWJlV2F0Y2hlcikgewogICAgICAgICAgbWF5YmVXYXRjaGVyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZTogdHlwZTIgfSk7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5wZXJzaXN0ZW50ICYmIHR5cGUyID09IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKSB7CiAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHRoaXMuX3dhdGNoZXJzLmRlbGV0ZShjdXJyZW50UGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBkbyB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IHBhcmVudCAhPT0gbnVsbCA/IHBhcmVudCA6IGN1cnJlbnRQYXRoOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhdGhfMS5kaXJuYW1lKShjdXJyZW50UGF0aCk7CiAgICAgICAgICBjb25zdCBtYXliZVdhdGNoZXIyID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KGN1cnJlbnRQYXRoKTsKICAgICAgICAgIGlmIChtYXliZVdhdGNoZXIyKSB7CiAgICAgICAgICAgIG1heWJlV2F0Y2hlcjIuZm9yRWFjaCgod2F0Y2hlcikgPT4gewogICAgICAgICAgICAgIGNvbnN0IFtvcHRpb25zLCBzdWJqZWN0XSA9IHdhdGNoZXI7CiAgICAgICAgICAgICAgaWYgKCFvcHRpb25zLnJlY3Vyc2l2ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQoeyBwYXRoLCB0aW1lLCB0eXBlOiB0eXBlMiB9KTsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucGVyc2lzdGVudCAmJiB0eXBlMiA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKHBhcmVudCAhPSBjdXJyZW50UGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaXN0IG9mIHByb3RlY3RlZCBtZXRob2RzIHRoYXQgZ2l2ZSBkaXJlY3QgYWNjZXNzIG91dHNpZGUgdGhlIG9ic2VydmFibGVzIHRvIHRoZSBjYWNoZQogICAgICAgKiBhbmQgaW50ZXJuYWwgc3RhdGVzLgogICAgICAgKi8KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBvbGQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgaWYgKG9sZCAmJiBvbGQuaXNEaXJlY3RvcnkoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGZyIG9mIGZyYWdtZW50cykgewogICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICBpZiAobWF5YmVTdGF0cykgewogICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoY3VyciwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5fbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZCk7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHBhdGgsIHN0YXRzKTsKICAgICAgICB0aGlzLl91cGRhdGVXYXRjaGVycyhwYXRoLCBvbGQgPyBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZCA6IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkKTsKICAgICAgfQogICAgICBfcmVhZChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAobWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAoIW1heWJlU3RhdHMuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMuY29udGVudDsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtjYWNoZVBhdGhdIG9mIHRoaXMuX2NhY2hlLmVudHJpZXMoKSkgewogICAgICAgICAgICBpZiAoY2FjaGVQYXRoLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSB8fCBjYWNoZVBhdGggPT09IHBhdGgpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUocGF0aCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKTsKICAgICAgfQogICAgICBfcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgZnJvbSA9IHRoaXMuX3RvQWJzb2x1dGUoZnJvbSk7CiAgICAgICAgdG8gPSB0aGlzLl90b0Fic29sdXRlKHRvKTsKICAgICAgICBpZiAoIXRoaXMuX2NhY2hlLmhhcyhmcm9tKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oZnJvbSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZS5oYXModG8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbih0byk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pc0RpcmVjdG9yeShmcm9tKSkgewogICAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKGZyb20gKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5qb2luKSh0bywgcGF0aF8xLk5vcm1hbGl6ZWRTZXAsIHBhdGguc2xpY2UoZnJvbS5sZW5ndGgpKSwgY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KSh0byk7CiAgICAgICAgICAgIGNvbnN0IG5ld0RpcmVjdG9yaWVzID0gW107CiAgICAgICAgICAgIGxldCBjdXJyID0gKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQoZnIpOwogICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihjdXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbmV3RGlyZWN0b3JpZXMucHVzaChjdXJyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChjb25zdCBuZXdEaXJlY3Rvcnkgb2YgbmV3RGlyZWN0b3JpZXMpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQobmV3RGlyZWN0b3J5LCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoZnJvbSk7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCh0bywgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKGZyb20sIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5SZW5hbWVkKTsKICAgICAgfQogICAgICBfbGlzdChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRmlsZShwYXRoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgaWYgKHBhdGggIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgZm9yIChjb25zdCBwIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGggKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICByZXN1bHQuYWRkKCgwLCBwYXRoXzEuc3BsaXQpKHApW2ZyYWdtZW50cy5sZW5ndGhdKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aF8xLk5vcm1hbGl6ZWRTZXApICYmIHAgIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBbLi4ucmVzdWx0XTsKICAgICAgfQogICAgICBfZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gISF0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpIDogZmFsc2U7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0cyA/IG1heWJlU3RhdHMuaXNGaWxlKCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0czsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgICAgbGV0IG1heWJlV2F0Y2hlckFycmF5ID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVXYXRjaGVyQXJyYXkpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlckFycmF5ID0gW107CiAgICAgICAgICB0aGlzLl93YXRjaGVycy5zZXQocGF0aCwgbWF5YmVXYXRjaGVyQXJyYXkpOwogICAgICAgIH0KICAgICAgICBtYXliZVdhdGNoZXJBcnJheS5wdXNoKFtvcHRpb25zIHx8IHt9LCBzdWJqZWN0XSk7CiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fcmVhZChwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KGNvbnRlbnQpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX2RlbGV0ZShwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9saXN0KHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9leGlzdHMocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2lzRmlsZShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX3N0YXQocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl93YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgIHRoaXMuX3dhdGNoZXJzLmNsZWFyKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gU2ltcGxlTWVtb3J5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzCnZhciByZXF1aXJlX3N5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TeW5jRGVsZWdhdGVIb3N0ID0gZXhwb3J0czIuU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICBzdXBlcihgRXhwZWN0ZWQgYSBzeW5jaHJvbm91cyBkZWxlZ2F0ZSBidXQgZ290IGFuIGFzeW5jaHJvbm91cyBvbmUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb247CiAgICB2YXIgU3luY0RlbGVnYXRlSG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgICBpZiAoIV9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXMuc3luY2hyb25vdXMpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RvU3luY0NhbGwob2JzZXJ2YWJsZSkgewogICAgICAgIGxldCBjb21wbGV0ZWQgPSBmYWxzZTsKICAgICAgICBsZXQgcmVzdWx0ID0gdm9pZCAwOwogICAgICAgIGxldCBlcnJvclJlc3VsdCA9IHZvaWQgMDsKICAgICAgICBvYnNlcnZhYmxlLnN1YnNjcmliZSgoeCkgPT4gcmVzdWx0ID0geCwgKGVycikgPT4gZXJyb3JSZXN1bHQgPSBlcnIsICgpID0+IGNvbXBsZXRlZCA9IHRydWUpOwogICAgICAgIGlmIChlcnJvclJlc3VsdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBlcnJvclJlc3VsdDsKICAgICAgICB9CiAgICAgICAgaWYgKCFjb21wbGV0ZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBTeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgZ2V0IGRlbGVnYXRlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZTsKICAgICAgfQogICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLnJlYWQocGF0aCkpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuZGVsZXRlKHBhdGgpKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUoZnJvbSwgdG8pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmV4aXN0cyhwYXRoKSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmlzRmlsZShwYXRoKSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgc3RhdC4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbChyZXN1bHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlN5bmNEZWxlZ2F0ZUhvc3QgPSBTeW5jRGVsZWdhdGVIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMKdmFyIHJlcXVpcmVfdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIyKCk7CiAgICB2YXIgbWVtb3J5XzEgPSByZXF1aXJlX21lbW9yeSgpOwogICAgdmFyIHN5bmNfMSA9IHJlcXVpcmVfc3luYygpOwogICAgdmFyIFRlc3RIb3N0ID0gY2xhc3MgX1Rlc3RIb3N0IGV4dGVuZHMgbWVtb3J5XzEuU2ltcGxlTWVtb3J5SG9zdCB7CiAgICAgIF9yZWNvcmRzID0gW107CiAgICAgIF9zeW5jID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IobWFwMiA9IHt9KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBmb3IgKGNvbnN0IGZpbGVQYXRoIG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1hcDIpKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXAyW2ZpbGVQYXRoXSkpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgcmVjb3JkcygpIHsKICAgICAgICByZXR1cm4gWy4uLnRoaXMuX3JlY29yZHNdOwogICAgICB9CiAgICAgIGNsZWFyUmVjb3JkcygpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzID0gW107CiAgICAgIH0KICAgICAgZ2V0IGZpbGVzKCkgewogICAgICAgIGNvbnN0IHN5bmMgPSB0aGlzLnN5bmM7CiAgICAgICAgZnVuY3Rpb24gX3Zpc2l0KHApIHsKICAgICAgICAgIHJldHVybiBzeW5jLmxpc3QocCkubWFwKChmcmFnbWVudCkgPT4gKDAsIHBhdGhfMS5qb2luKShwLCBmcmFnbWVudCkpLnJlZHVjZSgoZmlsZXMsIHBhdGgpID0+IHsKICAgICAgICAgICAgaWYgKHN5bmMuaXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KF92aXNpdChwYXRoKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpbGVzLmNvbmNhdChwYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3Zpc2l0KCgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpKTsKICAgICAgfQogICAgICBnZXQgc3luYygpIHsKICAgICAgICBpZiAoIXRoaXMuX3N5bmMpIHsKICAgICAgICAgIHRoaXMuX3N5bmMgPSBuZXcgc3luY18xLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9zeW5jOwogICAgICB9CiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IG5ld0hvc3QgPSBuZXcgX1Rlc3RIb3N0KCk7CiAgICAgICAgbmV3SG9zdC5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICByZXR1cm4gbmV3SG9zdDsKICAgICAgfQogICAgICAvLyBPdmVycmlkZSBwYXJlbnRzIGZ1bmN0aW9ucyB0byBrZWVwIGEgcmVjb3JkIG9mIGFsbCBvcGVyYXRvcnMgdGhhdCB3ZXJlIGRvbmUuCiAgICAgIF93cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndyaXRlIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIF9yZWFkKHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVhZCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIF9kZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJkZWxldGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF9yZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAicmVuYW1lIiwgZnJvbSwgdG8gfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIF9saXN0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAibGlzdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9saXN0KHBhdGgpOwogICAgICB9CiAgICAgIF9leGlzdHMocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJleGlzdHMiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIF9pc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRGlyZWN0b3J5IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIF9pc0ZpbGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJpc0ZpbGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIF9zdGF0KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAic3RhdCIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIF93YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogIndhdGNoIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3dhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICAgICR3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCksICgwLCBidWZmZXJfMS5zdHJpbmdUb0ZpbGVCdWZmZXIpKGNvbnRlbnQpKTsKICAgICAgfQogICAgICAkcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBidWZmZXJfMS5maWxlQnVmZmVyVG9TdHJpbmcpKHN1cGVyLl9yZWFkKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICB9CiAgICAgICRsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgICAkZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2V4aXN0cygoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0RpcmVjdG9yeSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5faXNGaWxlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UZXN0SG9zdCA9IFRlc3RIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Jlc29sdmVyLmpzCnZhciByZXF1aXJlX3Jlc29sdmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IHZvaWQgMDsKICAgIHZhciBSZXNvbHZlckhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud3JpdGUodGhpcy5fcmVzb2x2ZShwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGVsZXRlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUodGhpcy5fcmVzb2x2ZShmcm9tKSwgdGhpcy5fcmVzb2x2ZSh0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZSh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaCh0aGlzLl9yZXNvbHZlKHBhdGgpLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IFJlc29sdmVySG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qcwp2YXIgcmVxdWlyZV9hbGlhcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBBbGlhc0hvc3QgPSBjbGFzcyBleHRlbmRzIHJlc29sdmVyXzEuUmVzb2x2ZXJIb3N0IHsKICAgICAgX2FsaWFzZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgbGV0IG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwYXRoKTsKICAgICAgICBjb25zdCBzcCA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZyA9IFtdOwogICAgICAgIHdoaWxlICghbWF5YmVBbGlhcyAmJiBzcC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBjb25zdCBwID0gKDAsIHBhdGhfMS5qb2luKShwYXRoXzEuTm9ybWFsaXplZFJvb3QsIC4uLnNwKTsKICAgICAgICAgIG1heWJlQWxpYXMgPSB0aGlzLl9hbGlhc2VzLmdldChwKTsKICAgICAgICAgIGlmIChtYXliZUFsaWFzKSB7CiAgICAgICAgICAgIG1heWJlQWxpYXMgPSAoMCwgcGF0aF8xLmpvaW4pKG1heWJlQWxpYXMsIC4uLnJlbWFpbmluZyk7CiAgICAgICAgICB9CiAgICAgICAgICByZW1haW5pbmcudW5zaGlmdChzcC5wb3AoKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUFsaWFzIHx8IHBhdGg7CiAgICAgIH0KICAgICAgZ2V0IGFsaWFzZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FsaWFzZXM7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BbGlhc0hvc3QgPSBBbGlhc0hvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzCnZhciByZXF1aXJlX2NyZWF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2NyZWF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlU3luY0hvc3QgPSBjcmVhdGVTeW5jSG9zdDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgZnVuY3Rpb24gd3JhcEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcikgPT4gewogICAgICAgIHN1YnNjcmliZXIubmV4dChhY3Rpb24oKSk7CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZWF0ZVN5bmNIb3N0KGhhbmRsZXIpIHsKICAgICAgcmV0dXJuIG5ldyBjbGFzcyB7CiAgICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICAgIHJldHVybiB7IHN5bmNocm9ub3VzOiB0cnVlIH07CiAgICAgICAgfQogICAgICAgIHJlYWQocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5yZWFkKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmxpc3QocGF0aCkpOwogICAgICAgIH0KICAgICAgICBleGlzdHMocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5leGlzdHMocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmlzRGlyZWN0b3J5KHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNGaWxlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnN0YXQocGF0aCkpOwogICAgICAgIH0KICAgICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLndyaXRlKHBhdGgsIGNvbnRlbnQpKTsKICAgICAgICB9CiAgICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuZGVsZXRlKHBhdGgpKTsKICAgICAgICB9CiAgICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlbmFtZShmcm9tLCB0bykpOwogICAgICAgIH0KICAgICAgICB3YXRjaCgpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgfSgpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBFbXB0eSA9IGNsYXNzIHsKICAgICAgY2FwYWJpbGl0aWVzID0gewogICAgICAgIHN5bmNocm9ub3VzOiB0cnVlCiAgICAgIH07CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoW10pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgIH0KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKG51bGwpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRW1wdHkgPSBFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9jb25zdGFudHMuanMKdmFyIHJlcXVpcmVfY29uc3RhbnRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvY29uc3RhbnRzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFdJTl9TTEFTSCA9ICJcXFxcLyI7CiAgICB2YXIgV0lOX05PX1NMQVNIID0gYFteJHtXSU5fU0xBU0h9XWA7CiAgICB2YXIgRE9UX0xJVEVSQUwgPSAiXFwuIjsKICAgIHZhciBQTFVTX0xJVEVSQUwgPSAiXFwrIjsKICAgIHZhciBRTUFSS19MSVRFUkFMID0gIlxcPyI7CiAgICB2YXIgU0xBU0hfTElURVJBTCA9ICJcXC8iOwogICAgdmFyIE9ORV9DSEFSID0gIig/PS4pIjsKICAgIHZhciBRTUFSSyA9ICJbXi9dIjsKICAgIHZhciBFTkRfQU5DSE9SID0gYCg/OiR7U0xBU0hfTElURVJBTH18JClgOwogICAgdmFyIFNUQVJUX0FOQ0hPUiA9IGAoPzpefCR7U0xBU0hfTElURVJBTH0pYDsKICAgIHZhciBET1RTX1NMQVNIID0gYCR7RE9UX0xJVEVSQUx9ezEsMn0ke0VORF9BTkNIT1J9YDsKICAgIHZhciBOT19ET1QgPSBgKD8hJHtET1RfTElURVJBTH0pYDsKICAgIHZhciBOT19ET1RTID0gYCg/ISR7U1RBUlRfQU5DSE9SfSR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBOT19ET1RfU0xBU0ggPSBgKD8hJHtET1RfTElURVJBTH17MCwxfSR7RU5EX0FOQ0hPUn0pYDsKICAgIHZhciBOT19ET1RTX1NMQVNIID0gYCg/ISR7RE9UU19TTEFTSH0pYDsKICAgIHZhciBRTUFSS19OT19ET1QgPSBgW14uJHtTTEFTSF9MSVRFUkFMfV1gOwogICAgdmFyIFNUQVIgPSBgJHtRTUFSS30qP2A7CiAgICB2YXIgU0VQID0gIi8iOwogICAgdmFyIFBPU0lYX0NIQVJTID0gewogICAgICBET1RfTElURVJBTCwKICAgICAgUExVU19MSVRFUkFMLAogICAgICBRTUFSS19MSVRFUkFMLAogICAgICBTTEFTSF9MSVRFUkFMLAogICAgICBPTkVfQ0hBUiwKICAgICAgUU1BUkssCiAgICAgIEVORF9BTkNIT1IsCiAgICAgIERPVFNfU0xBU0gsCiAgICAgIE5PX0RPVCwKICAgICAgTk9fRE9UUywKICAgICAgTk9fRE9UX1NMQVNILAogICAgICBOT19ET1RTX1NMQVNILAogICAgICBRTUFSS19OT19ET1QsCiAgICAgIFNUQVIsCiAgICAgIFNUQVJUX0FOQ0hPUiwKICAgICAgU0VQCiAgICB9OwogICAgdmFyIFdJTkRPV1NfQ0hBUlMgPSB7CiAgICAgIC4uLlBPU0lYX0NIQVJTLAogICAgICBTTEFTSF9MSVRFUkFMOiBgWyR7V0lOX1NMQVNIfV1gLAogICAgICBRTUFSSzogV0lOX05PX1NMQVNILAogICAgICBTVEFSOiBgJHtXSU5fTk9fU0xBU0h9Kj9gLAogICAgICBET1RTX1NMQVNIOiBgJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpYCwKICAgICAgTk9fRE9UOiBgKD8hJHtET1RfTElURVJBTH0pYCwKICAgICAgTk9fRE9UUzogYCg/ISg/Ol58WyR7V0lOX1NMQVNIfV0pJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIE5PX0RPVF9TTEFTSDogYCg/ISR7RE9UX0xJVEVSQUx9ezAsMX0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBOT19ET1RTX1NMQVNIOiBgKD8hJHtET1RfTElURVJBTH17MSwyfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIFFNQVJLX05PX0RPVDogYFteLiR7V0lOX1NMQVNIfV1gLAogICAgICBTVEFSVF9BTkNIT1I6IGAoPzpefFske1dJTl9TTEFTSH1dKWAsCiAgICAgIEVORF9BTkNIT1I6IGAoPzpbJHtXSU5fU0xBU0h9XXwkKWAsCiAgICAgIFNFUDogIlxcIgogICAgfTsKICAgIHZhciBQT1NJWF9SRUdFWF9TT1VSQ0UgPSB7CiAgICAgIGFsbnVtOiAiYS16QS1aMC05IiwKICAgICAgYWxwaGE6ICJhLXpBLVoiLAogICAgICBhc2NpaTogIlxceDAwLVxceDdGIiwKICAgICAgYmxhbms6ICIgXFx0IiwKICAgICAgY250cmw6ICJcXHgwMC1cXHgxRlxceDdGIiwKICAgICAgZGlnaXQ6ICIwLTkiLAogICAgICBncmFwaDogIlxceDIxLVxceDdFIiwKICAgICAgbG93ZXI6ICJhLXoiLAogICAgICBwcmludDogIlxceDIwLVxceDdFICIsCiAgICAgIHB1bmN0OiAiXFwtIVwiIyQlJicoKVxcKissLi86Ozw9Pj9AW1xcXV5fYHt8fX4iLAogICAgICBzcGFjZTogIiBcXHRcXHJcXG5cXHZcXGYiLAogICAgICB1cHBlcjogIkEtWiIsCiAgICAgIHdvcmQ6ICJBLVphLXowLTlfIiwKICAgICAgeGRpZ2l0OiAiQS1GYS1mMC05IgogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgTUFYX0xFTkdUSDogMTAyNCAqIDY0LAogICAgICBQT1NJWF9SRUdFWF9TT1VSQ0UsCiAgICAgIC8vIHJlZ3VsYXIgZXhwcmVzc2lvbnMKICAgICAgUkVHRVhfQkFDS1NMQVNIOiAvXFwoPyFbKis/XiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX05PTl9TUEVDSUFMX0NIQVJTOiAvXlteQCFbXF0uLCQqKz9ee30oKXxcXC9dKy8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlM6IC9bLSorPy5eJHt9KHwpW1xdXS8sCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjogLyhcXD8pKChcVykoXDMqKSkvZywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUw6IC8oWy0qKz8uXiR7fSh8KVtcXV0pL2csCiAgICAgIFJFR0VYX1JFTU9WRV9CQUNLU0xBU0g6IC8oPzpcWy4qP1teXFxdXF18XFwoPz0uKSkvZywKICAgICAgLy8gUmVwbGFjZSBnbG9icyB3aXRoIGVxdWl2YWxlbnQgcGF0dGVybnMgdG8gcmVkdWNlIHBhcnNpbmcgdGltZS4KICAgICAgUkVQTEFDRU1FTlRTOiB7CiAgICAgICAgIioqKiI6ICIqIiwKICAgICAgICAiKiovKioiOiAiKioiLAogICAgICAgICIqKi8qKi8qKiI6ICIqKiIKICAgICAgfSwKICAgICAgLy8gRGlnaXRzCiAgICAgIENIQVJfMDogNDgsCiAgICAgIC8qIDAgKi8KICAgICAgQ0hBUl85OiA1NywKICAgICAgLyogOSAqLwogICAgICAvLyBBbHBoYWJldCBjaGFycy4KICAgICAgQ0hBUl9VUFBFUkNBU0VfQTogNjUsCiAgICAgIC8qIEEgKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfQTogOTcsCiAgICAgIC8qIGEgKi8KICAgICAgQ0hBUl9VUFBFUkNBU0VfWjogOTAsCiAgICAgIC8qIFogKi8KICAgICAgQ0hBUl9MT1dFUkNBU0VfWjogMTIyLAogICAgICAvKiB6ICovCiAgICAgIENIQVJfTEVGVF9QQVJFTlRIRVNFUzogNDAsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUzogNDEsCiAgICAgIC8qICkgKi8KICAgICAgQ0hBUl9BU1RFUklTSzogNDIsCiAgICAgIC8qICogKi8KICAgICAgLy8gTm9uLWFscGhhYmV0aWMgY2hhcnMuCiAgICAgIENIQVJfQU1QRVJTQU5EOiAzOCwKICAgICAgLyogJiAqLwogICAgICBDSEFSX0FUOiA2NCwKICAgICAgLyogQCAqLwogICAgICBDSEFSX0JBQ0tXQVJEX1NMQVNIOiA5MiwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NBUlJJQUdFX1JFVFVSTjogMTMsCiAgICAgIC8qIFxyICovCiAgICAgIENIQVJfQ0lSQ1VNRkxFWF9BQ0NFTlQ6IDk0LAogICAgICAvKiBeICovCiAgICAgIENIQVJfQ09MT046IDU4LAogICAgICAvKiA6ICovCiAgICAgIENIQVJfQ09NTUE6IDQ0LAogICAgICAvKiAsICovCiAgICAgIENIQVJfRE9UOiA0NiwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0RPVUJMRV9RVU9URTogMzQsCiAgICAgIC8qICIgKi8KICAgICAgQ0hBUl9FUVVBTDogNjEsCiAgICAgIC8qID0gKi8KICAgICAgQ0hBUl9FWENMQU1BVElPTl9NQVJLOiAzMywKICAgICAgLyogISAqLwogICAgICBDSEFSX0ZPUk1fRkVFRDogMTIsCiAgICAgIC8qIFxmICovCiAgICAgIENIQVJfRk9SV0FSRF9TTEFTSDogNDcsCiAgICAgIC8qIC8gKi8KICAgICAgQ0hBUl9HUkFWRV9BQ0NFTlQ6IDk2LAogICAgICAvKiBgICovCiAgICAgIENIQVJfSEFTSDogMzUsCiAgICAgIC8qICMgKi8KICAgICAgQ0hBUl9IWVBIRU5fTUlOVVM6IDQ1LAogICAgICAvKiAtICovCiAgICAgIENIQVJfTEVGVF9BTkdMRV9CUkFDS0VUOiA2MCwKICAgICAgLyogPCAqLwogICAgICBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6IDEyMywKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQ6IDkxLAogICAgICAvKiBbICovCiAgICAgIENIQVJfTElORV9GRUVEOiAxMCwKICAgICAgLyogXG4gKi8KICAgICAgQ0hBUl9OT19CUkVBS19TUEFDRTogMTYwLAogICAgICAvKiBcdTAwQTAgKi8KICAgICAgQ0hBUl9QRVJDRU5UOiAzNywKICAgICAgLyogJSAqLwogICAgICBDSEFSX1BMVVM6IDQzLAogICAgICAvKiArICovCiAgICAgIENIQVJfUVVFU1RJT05fTUFSSzogNjMsCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9BTkdMRV9CUkFDS0VUOiA2MiwKICAgICAgLyogPiAqLwogICAgICBDSEFSX1JJR0hUX0NVUkxZX0JSQUNFOiAxMjUsCiAgICAgIC8qIH0gKi8KICAgICAgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDogOTMsCiAgICAgIC8qIF0gKi8KICAgICAgQ0hBUl9TRU1JQ09MT046IDU5LAogICAgICAvKiA7ICovCiAgICAgIENIQVJfU0lOR0xFX1FVT1RFOiAzOSwKICAgICAgLyogJyAqLwogICAgICBDSEFSX1NQQUNFOiAzMiwKICAgICAgLyogICAqLwogICAgICBDSEFSX1RBQjogOSwKICAgICAgLyogXHQgKi8KICAgICAgQ0hBUl9VTkRFUlNDT1JFOiA5NSwKICAgICAgLyogXyAqLwogICAgICBDSEFSX1ZFUlRJQ0FMX0xJTkU6IDEyNCwKICAgICAgLyogfCAqLwogICAgICBDSEFSX1pFUk9fV0lEVEhfTk9CUkVBS19TUEFDRTogNjUyNzksCiAgICAgIC8qIFx1RkVGRiAqLwogICAgICAvKioKICAgICAgICogQ3JlYXRlIEVYVEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGV4dGdsb2JDaGFycyhjaGFycykgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiISI6IHsgdHlwZTogIm5lZ2F0ZSIsIG9wZW46ICIoPzooPyEoPzoiLCBjbG9zZTogYCkpJHtjaGFycy5TVEFSfSlgIH0sCiAgICAgICAgICAiPyI6IHsgdHlwZTogInFtYXJrIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKT8iIH0sCiAgICAgICAgICAiKyI6IHsgdHlwZTogInBsdXMiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpKyIgfSwKICAgICAgICAgICIqIjogeyB0eXBlOiAic3RhciIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikqIiB9LAogICAgICAgICAgIkAiOiB7IHR5cGU6ICJhdCIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikiIH0KICAgICAgICB9OwogICAgICB9LAogICAgICAvKioKICAgICAgICogQ3JlYXRlIEdMT0JfQ0hBUlMKICAgICAgICovCiAgICAgIGdsb2JDaGFycyh3aW4zMikgewogICAgICAgIHJldHVybiB3aW4zMiA9PT0gdHJ1ZSA/IFdJTkRPV1NfQ0hBUlMgOiBQT1NJWF9DSEFSUzsKICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB7CiAgICAgIFJFR0VYX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSUywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwKICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgZXhwb3J0czIuaXNPYmplY3QgPSAodmFsKSA9PiB2YWwgIT09IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMgPSAoc3RyMikgPT4gUkVHRVhfU1BFQ0lBTF9DSEFSUy50ZXN0KHN0cjIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyMikgPT4gc3RyMi5sZW5ndGggPT09IDEgJiYgZXhwb3J0czIuaGFzUmVnZXhDaGFycyhzdHIyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTCwgIlxcJDEiKTsKICAgIGV4cG9ydHMyLnRvUG9zaXhTbGFzaGVzID0gKHN0cjIpID0+IHN0cjIucmVwbGFjZShSRUdFWF9CQUNLU0xBU0gsICIvIik7CiAgICBleHBvcnRzMi5pc1dpbmRvd3MgPSAoKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgbmF2aWdhdG9yICE9PSAidW5kZWZpbmVkIiAmJiBuYXZpZ2F0b3IucGxhdGZvcm0pIHsKICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IG5hdmlnYXRvci5wbGF0Zm9ybS50b0xvd2VyQ2FzZSgpOwogICAgICAgIHJldHVybiBwbGF0Zm9ybSA9PT0gIndpbjMyIiB8fCBwbGF0Zm9ybSA9PT0gIndpbmRvd3MiOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gInVuZGVmaW5lZCIgJiYgcHJvY2Vzcy5wbGF0Zm9ybSkgewogICAgICAgIHJldHVybiBwcm9jZXNzLnBsYXRmb3JtID09PSAid2luMzIiOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH07CiAgICBleHBvcnRzMi5yZW1vdmVCYWNrc2xhc2hlcyA9IChzdHIyKSA9PiB7CiAgICAgIHJldHVybiBzdHIyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9zY2FuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIENIQVJfQVNURVJJU0s6IENIQVJfQVNURVJJU0syLAogICAgICAvKiAqICovCiAgICAgIENIQVJfQVQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSCwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NPTU1BOiBDSEFSX0NPTU1BMiwKICAgICAgLyogLCAqLwogICAgICBDSEFSX0RPVCwKICAgICAgLyogLiAqLwogICAgICBDSEFSX0VYQ0xBTUFUSU9OX01BUkssCiAgICAgIC8qICEgKi8KICAgICAgQ0hBUl9GT1JXQVJEX1NMQVNILAogICAgICAvKiAvICovCiAgICAgIENIQVJfTEVGVF9DVVJMWV9CUkFDRSwKICAgICAgLyogeyAqLwogICAgICBDSEFSX0xFRlRfUEFSRU5USEVTRVMsCiAgICAgIC8qICggKi8KICAgICAgQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOiBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyLAogICAgICAvKiBbICovCiAgICAgIENIQVJfUExVUywKICAgICAgLyogKyAqLwogICAgICBDSEFSX1FVRVNUSU9OX01BUkssCiAgICAgIC8qID8gKi8KICAgICAgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRSwKICAgICAgLyogfSAqLwogICAgICBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTLAogICAgICAvKiApICovCiAgICAgIENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQ6IENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQyCiAgICAgIC8qIF0gKi8KICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIGlzUGF0aFNlcGFyYXRvciA9IChjb2RlKSA9PiB7CiAgICAgIHJldHVybiBjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0ggfHwgY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSDsKICAgIH07CiAgICB2YXIgZGVwdGggPSAodG9rZW4pID0+IHsKICAgICAgaWYgKHRva2VuLmlzUHJlZml4ICE9PSB0cnVlKSB7CiAgICAgICAgdG9rZW4uZGVwdGggPSB0b2tlbi5pc0dsb2JzdGFyID8gSW5maW5pdHkgOiAxOwogICAgICB9CiAgICB9OwogICAgdmFyIHNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGxlbmd0aCA9IGlucHV0Lmxlbmd0aCAtIDE7CiAgICAgIGNvbnN0IHNjYW5Ub0VuZCA9IG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy5zY2FuVG9FbmQgPT09IHRydWU7CiAgICAgIGNvbnN0IHNsYXNoZXMgPSBbXTsKICAgICAgY29uc3QgdG9rZW5zID0gW107CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdHIyID0gaW5wdXQ7CiAgICAgIGxldCBpbmRleCA9IC0xOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgbGFzdEluZGV4ID0gMDsKICAgICAgbGV0IGlzQnJhY2UgPSBmYWxzZTsKICAgICAgbGV0IGlzQnJhY2tldCA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9iID0gZmFsc2U7CiAgICAgIGxldCBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzR2xvYnN0YXIgPSBmYWxzZTsKICAgICAgbGV0IGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWQgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWRFeHRnbG9iID0gZmFsc2U7CiAgICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VzID0gMDsKICAgICAgbGV0IHByZXY7CiAgICAgIGxldCBjb2RlOwogICAgICBsZXQgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gaW5kZXggPj0gbGVuZ3RoOwogICAgICBjb25zdCBwZWVrID0gKCkgPT4gc3RyMi5jaGFyQ29kZUF0KGluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGFkdmFuY2UgPSAoKSA9PiB7CiAgICAgICAgcHJldiA9IGNvZGU7CiAgICAgICAgcmV0dXJuIHN0cjIuY2hhckNvZGVBdCgrK2luZGV4KTsKICAgICAgfTsKICAgICAgd2hpbGUgKGluZGV4IDwgbGVuZ3RoKSB7CiAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICBsZXQgbmV4dDsKICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICBicmFjZUVzY2FwZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChicmFjZUVzY2FwZWQgPT09IHRydWUgfHwgY29kZSA9PT0gQ0hBUl9MRUZUX0NVUkxZX0JSQUNFKSB7CiAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcysrOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9ET1QgJiYgKGNvZGUgPSBhZHZhbmNlKCkpID09PSBDSEFSX0RPVCkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGJyYWNlRXNjYXBlZCAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0NPTU1BMikgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMtLTsKICAgICAgICAgICAgICBpZiAoYnJhY2VzID09PSAwKSB7CiAgICAgICAgICAgICAgICBicmFjZUVzY2FwZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIKSB7CiAgICAgICAgICBzbGFzaGVzLnB1c2goaW5kZXgpOwogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgICAgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgICAgIGlmIChmaW5pc2hlZCA9PT0gdHJ1ZSkgY29udGludWU7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9ET1QgJiYgaW5kZXggPT09IHN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGFydCArPSAyOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4ICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub2V4dCAhPT0gdHJ1ZSkgewogICAgICAgICAgY29uc3QgaXNFeHRnbG9iQ2hhciA9IGNvZGUgPT09IENIQVJfUExVUyB8fCBjb2RlID09PSBDSEFSX0FUIHx8IGNvZGUgPT09IENIQVJfQVNURVJJU0syIHx8IGNvZGUgPT09IENIQVJfUVVFU1RJT05fTUFSSyB8fCBjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUks7CiAgICAgICAgICBpZiAoaXNFeHRnbG9iQ2hhciA9PT0gdHJ1ZSAmJiBwZWVrKCkgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICBpc0V4dGdsb2IgPSB0b2tlbi5pc0V4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0VYQ0xBTUFUSU9OX01BUksgJiYgaW5kZXggPT09IHN0YXJ0KSB7CiAgICAgICAgICAgICAgbmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKGNvZGUgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQVNURVJJU0syKSB7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9BU1RFUklTSzIpIGlzR2xvYnN0YXIgPSB0b2tlbi5pc0dsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUkspIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQyKSB7CiAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKG5leHQgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChuZXh0ID09PSBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUMikgewogICAgICAgICAgICAgIGlzQnJhY2tldCA9IHRva2VuLmlzQnJhY2tldCA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgbmVnYXRlZCA9IHRva2VuLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgICAgc3RhcnQrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub3BhcmVuICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChpc0dsb2IgPT09IHRydWUpIHsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMubm9leHQgPT09IHRydWUpIHsKICAgICAgICBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgICBpc0dsb2IgPSBmYWxzZTsKICAgICAgfQogICAgICBsZXQgYmFzZSA9IHN0cjI7CiAgICAgIGxldCBwcmVmaXggPSAiIjsKICAgICAgbGV0IGdsb2IgPSAiIjsKICAgICAgaWYgKHN0YXJ0ID4gMCkgewogICAgICAgIHByZWZpeCA9IHN0cjIuc2xpY2UoMCwgc3RhcnQpOwogICAgICAgIHN0cjIgPSBzdHIyLnNsaWNlKHN0YXJ0KTsKICAgICAgICBsYXN0SW5kZXggLT0gc3RhcnQ7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgaXNHbG9iID09PSB0cnVlICYmIGxhc3RJbmRleCA+IDApIHsKICAgICAgICBiYXNlID0gc3RyMi5zbGljZSgwLCBsYXN0SW5kZXgpOwogICAgICAgIGdsb2IgPSBzdHIyLnNsaWNlKGxhc3RJbmRleCk7CiAgICAgIH0gZWxzZSBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgYmFzZSA9ICIiOwogICAgICAgIGdsb2IgPSBzdHIyOwogICAgICB9IGVsc2UgewogICAgICAgIGJhc2UgPSBzdHIyOwogICAgICB9CiAgICAgIGlmIChiYXNlICYmIGJhc2UgIT09ICIiICYmIGJhc2UgIT09ICIvIiAmJiBiYXNlICE9PSBzdHIyKSB7CiAgICAgICAgaWYgKGlzUGF0aFNlcGFyYXRvcihiYXNlLmNoYXJDb2RlQXQoYmFzZS5sZW5ndGggLSAxKSkpIHsKICAgICAgICAgIGJhc2UgPSBiYXNlLnNsaWNlKDAsIC0xKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICBpZiAoZ2xvYikgZ2xvYiA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGdsb2IpOwogICAgICAgIGlmIChiYXNlICYmIGJhY2tzbGFzaGVzID09PSB0cnVlKSB7CiAgICAgICAgICBiYXNlID0gdXRpbHMucmVtb3ZlQmFja3NsYXNoZXMoYmFzZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHN0YXRlID0gewogICAgICAgIHByZWZpeCwKICAgICAgICBpbnB1dCwKICAgICAgICBzdGFydCwKICAgICAgICBiYXNlLAogICAgICAgIGdsb2IsCiAgICAgICAgaXNCcmFjZSwKICAgICAgICBpc0JyYWNrZXQsCiAgICAgICAgaXNHbG9iLAogICAgICAgIGlzRXh0Z2xvYiwKICAgICAgICBpc0dsb2JzdGFyLAogICAgICAgIG5lZ2F0ZWQsCiAgICAgICAgbmVnYXRlZEV4dGdsb2IKICAgICAgfTsKICAgICAgaWYgKG9wdHMudG9rZW5zID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUubWF4RGVwdGggPSAwOwogICAgICAgIGlmICghaXNQYXRoU2VwYXJhdG9yKGNvZGUpKSB7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnRva2VucyA9IHRva2VuczsKICAgICAgfQogICAgICBpZiAob3B0cy5wYXJ0cyA9PT0gdHJ1ZSB8fCBvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIGxldCBwcmV2SW5kZXg7CiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc2xhc2hlcy5sZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICBjb25zdCBuID0gcHJldkluZGV4ID8gcHJldkluZGV4ICsgMSA6IHN0YXJ0OwogICAgICAgICAgY29uc3QgaSA9IHNsYXNoZXNbaWR4XTsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UobiwgaSk7CiAgICAgICAgICBpZiAob3B0cy50b2tlbnMpIHsKICAgICAgICAgICAgaWYgKGlkeCA9PT0gMCAmJiBzdGFydCAhPT0gMCkgewogICAgICAgICAgICAgIHRva2Vuc1tpZHhdLmlzUHJlZml4ID0gdHJ1ZTsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHByZWZpeDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1tpZHhdKTsKICAgICAgICAgICAgc3RhdGUubWF4RGVwdGggKz0gdG9rZW5zW2lkeF0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaWR4ICE9PSAwIHx8IHZhbHVlICE9PSAiIikgewogICAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXZJbmRleCA9IGk7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2SW5kZXggJiYgcHJldkluZGV4ICsgMSA8IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC5zbGljZShwcmV2SW5kZXggKyAxKTsKICAgICAgICAgIHBhcnRzLnB1c2godmFsdWUpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgZGVwdGgodG9rZW5zW3Rva2Vucy5sZW5ndGggLSAxXSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnNsYXNoZXMgPSBzbGFzaGVzOwogICAgICAgIHN0YXRlLnBhcnRzID0gcGFydHM7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9wYXJzZS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBjb25zdGFudHMgPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIE1BWF9MRU5HVEgsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlMsCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwKICAgICAgUkVQTEFDRU1FTlRTCiAgICB9ID0gY29uc3RhbnRzOwogICAgdmFyIGV4cGFuZFJhbmdlID0gKGFyZ3MsIG9wdGlvbnMpID0+IHsKICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmV4cGFuZFJhbmdlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZXhwYW5kUmFuZ2UoLi4uYXJncywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXJncy5zb3J0KCk7CiAgICAgIGNvbnN0IHZhbHVlID0gYFske2FyZ3Muam9pbigiLSIpfV1gOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAodmFsdWUpOwogICAgICB9IGNhdGNoIChleCkgewogICAgICAgIHJldHVybiBhcmdzLm1hcCgodikgPT4gdXRpbHMuZXNjYXBlUmVnZXgodikpLmpvaW4oIi4uIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfTsKICAgIHZhciBzeW50YXhFcnJvciA9ICh0eXBlMiwgY2hhcikgPT4gewogICAgICByZXR1cm4gYE1pc3NpbmcgJHt0eXBlMn06ICIke2NoYXJ9IiAtIHVzZSAiXFxcXCR7Y2hhcn0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7CiAgICB9OwogICAgdmFyIHBhcnNlID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IG9wdHMgPSB7IC4uLm9wdGlvbnMgfTsKICAgICAgY29uc3QgbWF4ID0gdHlwZW9mIG9wdHMubWF4TGVuZ3RoID09PSAibnVtYmVyIiA/IE1hdGgubWluKE1BWF9MRU5HVEgsIG9wdHMubWF4TGVuZ3RoKSA6IE1BWF9MRU5HVEg7CiAgICAgIGxldCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGNvbnN0IGJvcyA9IHsgdHlwZTogImJvcyIsIHZhbHVlOiAiIiwgb3V0cHV0OiBvcHRzLnByZXBlbmQgfHwgIiIgfTsKICAgICAgY29uc3QgdG9rZW5zID0gW2Jvc107CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IFBMQVRGT1JNX0NIQVJTID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBFWFRHTE9CX0NIQVJTID0gY29uc3RhbnRzLmV4dGdsb2JDaGFycyhQTEFURk9STV9DSEFSUyk7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBQTFVTX0xJVEVSQUwsCiAgICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgICBPTkVfQ0hBUiwKICAgICAgICBET1RTX1NMQVNILAogICAgICAgIE5PX0RPVCwKICAgICAgICBOT19ET1RfU0xBU0gsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBRTUFSSywKICAgICAgICBRTUFSS19OT19ET1QsCiAgICAgICAgU1RBUiwKICAgICAgICBTVEFSVF9BTkNIT1IKICAgICAgfSA9IFBMQVRGT1JNX0NIQVJTOwogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gIiIgOiBOT19ET1Q7CiAgICAgIGNvbnN0IHFtYXJrTm9Eb3QgPSBvcHRzLmRvdCA/IFFNQVJLIDogUU1BUktfTk9fRE9UOwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/IGdsb2JzdGFyKG9wdHMpIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIG9wdHMubm9leHQgPT09ICJib29sZWFuIikgewogICAgICAgIG9wdHMubm9leHRnbG9iID0gb3B0cy5ub2V4dDsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBpbnB1dCwKICAgICAgICBpbmRleDogLTEsCiAgICAgICAgc3RhcnQ6IDAsCiAgICAgICAgZG90OiBvcHRzLmRvdCA9PT0gdHJ1ZSwKICAgICAgICBjb25zdW1lZDogIiIsCiAgICAgICAgb3V0cHV0OiAiIiwKICAgICAgICBwcmVmaXg6ICIiLAogICAgICAgIGJhY2t0cmFjazogZmFsc2UsCiAgICAgICAgbmVnYXRlZDogZmFsc2UsCiAgICAgICAgYnJhY2tldHM6IDAsCiAgICAgICAgYnJhY2VzOiAwLAogICAgICAgIHBhcmVuczogMCwKICAgICAgICBxdW90ZXM6IDAsCiAgICAgICAgZ2xvYnN0YXI6IGZhbHNlLAogICAgICAgIHRva2VucwogICAgICB9OwogICAgICBpbnB1dCA9IHV0aWxzLnJlbW92ZVByZWZpeChpbnB1dCwgc3RhdGUpOwogICAgICBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGNvbnN0IGV4dGdsb2JzID0gW107CiAgICAgIGNvbnN0IGJyYWNlcyA9IFtdOwogICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICBsZXQgcHJldiA9IGJvczsKICAgICAgbGV0IHZhbHVlOwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBzdGF0ZS5pbmRleCA9PT0gbGVuIC0gMTsKICAgICAgY29uc3QgcGVlayA9IHN0YXRlLnBlZWsgPSAobiA9IDEpID0+IGlucHV0W3N0YXRlLmluZGV4ICsgbl07CiAgICAgIGNvbnN0IGFkdmFuY2UgPSBzdGF0ZS5hZHZhbmNlID0gKCkgPT4gaW5wdXRbKytzdGF0ZS5pbmRleF0gfHwgIiI7CiAgICAgIGNvbnN0IHJlbWFpbmluZyA9ICgpID0+IGlucHV0LnNsaWNlKHN0YXRlLmluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGNvbnN1bWUgPSAodmFsdWUyID0gIiIsIG51bSA9IDApID0+IHsKICAgICAgICBzdGF0ZS5jb25zdW1lZCArPSB2YWx1ZTI7CiAgICAgICAgc3RhdGUuaW5kZXggKz0gbnVtOwogICAgICB9OwogICAgICBjb25zdCBhcHBlbmQgPSAodG9rZW4pID0+IHsKICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICBjb25zdW1lKHRva2VuLnZhbHVlKTsKICAgICAgfTsKICAgICAgY29uc3QgbmVnYXRlID0gKCkgPT4gewogICAgICAgIGxldCBjb3VudCA9IDE7CiAgICAgICAgd2hpbGUgKHBlZWsoKSA9PT0gIiEiICYmIChwZWVrKDIpICE9PSAiKCIgfHwgcGVlaygzKSA9PT0gIj8iKSkgewogICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCAlIDIgPT09IDApIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUubmVnYXRlZCA9IHRydWU7CiAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfTsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gKHR5cGUyKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZTJdKys7CiAgICAgICAgc3RhY2sucHVzaCh0eXBlMik7CiAgICAgIH07CiAgICAgIGNvbnN0IGRlY3JlbWVudCA9ICh0eXBlMikgPT4gewogICAgICAgIHN0YXRlW3R5cGUyXS0tOwogICAgICAgIHN0YWNrLnBvcCgpOwogICAgICB9OwogICAgICBjb25zdCBwdXNoID0gKHRvaykgPT4gewogICAgICAgIGlmIChwcmV2LnR5cGUgPT09ICJnbG9ic3RhciIpIHsKICAgICAgICAgIGNvbnN0IGlzQnJhY2UgPSBzdGF0ZS5icmFjZXMgPiAwICYmICh0b2sudHlwZSA9PT0gImNvbW1hIiB8fCB0b2sudHlwZSA9PT0gImJyYWNlIik7CiAgICAgICAgICBjb25zdCBpc0V4dGdsb2IgPSB0b2suZXh0Z2xvYiA9PT0gdHJ1ZSB8fCBleHRnbG9icy5sZW5ndGggJiYgKHRvay50eXBlID09PSAicGlwZSIgfHwgdG9rLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKHRvay50eXBlICE9PSAic2xhc2giICYmIHRvay50eXBlICE9PSAicGFyZW4iICYmICFpc0JyYWNlICYmICFpc0V4dGdsb2IpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICAgIHByZXYudmFsdWUgPSAiKiI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZXh0Z2xvYnMubGVuZ3RoICYmIHRvay50eXBlICE9PSAicGFyZW4iKSB7CiAgICAgICAgICBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXS5pbm5lciArPSB0b2sudmFsdWU7CiAgICAgICAgfQogICAgICAgIGlmICh0b2sudmFsdWUgfHwgdG9rLm91dHB1dCkgYXBwZW5kKHRvayk7CiAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAidGV4dCIgJiYgdG9rLnR5cGUgPT09ICJ0ZXh0IikgewogICAgICAgICAgcHJldi5vdXRwdXQgPSAocHJldi5vdXRwdXQgfHwgcHJldi52YWx1ZSkgKyB0b2sudmFsdWU7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHRvay52YWx1ZTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdG9rLnByZXYgPSBwcmV2OwogICAgICAgIHRva2Vucy5wdXNoKHRvayk7CiAgICAgICAgcHJldiA9IHRvazsKICAgICAgfTsKICAgICAgY29uc3QgZXh0Z2xvYk9wZW4gPSAodHlwZTIsIHZhbHVlMikgPT4gewogICAgICAgIGNvbnN0IHRva2VuID0geyAuLi5FWFRHTE9CX0NIQVJTW3ZhbHVlMl0sIGNvbmRpdGlvbnM6IDEsIGlubmVyOiAiIiB9OwogICAgICAgIHRva2VuLnByZXYgPSBwcmV2OwogICAgICAgIHRva2VuLnBhcmVucyA9IHN0YXRlLnBhcmVuczsKICAgICAgICB0b2tlbi5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQ7CiAgICAgICAgY29uc3Qgb3V0cHV0ID0gKG9wdHMuY2FwdHVyZSA/ICIoIiA6ICIiKSArIHRva2VuLm9wZW47CiAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICBwdXNoKHsgdHlwZTogdHlwZTIsIHZhbHVlOiB2YWx1ZTIsIG91dHB1dDogc3RhdGUub3V0cHV0ID8gIiIgOiBPTkVfQ0hBUiB9KTsKICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWU6IGFkdmFuY2UoKSwgb3V0cHV0IH0pOwogICAgICAgIGV4dGdsb2JzLnB1c2godG9rZW4pOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iQ2xvc2UgPSAodG9rZW4pID0+IHsKICAgICAgICBsZXQgb3V0cHV0ID0gdG9rZW4uY2xvc2UgKyAob3B0cy5jYXB0dXJlID8gIikiIDogIiIpOwogICAgICAgIGxldCByZXN0OwogICAgICAgIGlmICh0b2tlbi50eXBlID09PSAibmVnYXRlIikgewogICAgICAgICAgbGV0IGV4dGdsb2JTdGFyID0gc3RhcjsKICAgICAgICAgIGlmICh0b2tlbi5pbm5lciAmJiB0b2tlbi5pbm5lci5sZW5ndGggPiAxICYmIHRva2VuLmlubmVyLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgZXh0Z2xvYlN0YXIgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRnbG9iU3RhciAhPT0gc3RhciB8fCBlb3MoKSB8fCAvXlwpKyQvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkkKSkke2V4dGdsb2JTdGFyfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4uaW5uZXIuaW5jbHVkZXMoIioiKSAmJiAocmVzdCA9IHJlbWFpbmluZygpKSAmJiAvXlwuW15cXC8uXSskLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBwYXJzZShyZXN0LCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSkub3V0cHV0OwogICAgICAgICAgICBvdXRwdXQgPSB0b2tlbi5jbG9zZSA9IGApJHtleHByZXNzaW9ufSkke2V4dGdsb2JTdGFyfSlgOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHRva2VuLnByZXYudHlwZSA9PT0gImJvcyIpIHsKICAgICAgICAgICAgc3RhdGUubmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9OwogICAgICBpZiAob3B0cy5mYXN0cGF0aHMgIT09IGZhbHNlICYmICEvKF5bKiFdfFsvKClbXF17fSJdKS8udGVzdChpbnB1dCkpIHsKICAgICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgICBsZXQgb3V0cHV0ID0gaW5wdXQucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUYsIChtLCBlc2MsIGNoYXJzLCBmaXJzdCwgcmVzdCwgaW5kZXgpID0+IHsKICAgICAgICAgIGlmIChmaXJzdCA9PT0gIlxcIikgewogICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgIHJldHVybiBtOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZpcnN0ID09PSAiPyIpIHsKICAgICAgICAgICAgaWYgKGVzYykgewogICAgICAgICAgICAgIHJldHVybiBlc2MgKyBmaXJzdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHsKICAgICAgICAgICAgICByZXR1cm4gcW1hcmtOb0RvdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gUU1BUksucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIuIikgewogICAgICAgICAgICByZXR1cm4gRE9UX0xJVEVSQUwucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIqIikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBzdGFyIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzdGFyOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGVzYyA/IG0gOiBgXFwke219YDsKICAgICAgICB9KTsKICAgICAgICBpZiAoYmFja3NsYXNoZXMgPT09IHRydWUpIHsKICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQucmVwbGFjZSgvXFwrL2csIChtKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIG0ubGVuZ3RoICUgMiA9PT0gMCA/ICJcXFxcIiA6IG0gPyAiXFwiIDogIiI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAob3V0cHV0ID09PSBpbnB1dCAmJiBvcHRzLmNvbnRhaW5zID09PSB0cnVlKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBpbnB1dDsKICAgICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMud3JhcE91dHB1dChvdXRwdXQsIHN0YXRlLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgd2hpbGUgKCFlb3MoKSkgewogICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgIGlmICh2YWx1ZSA9PT0gIlwwIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlxcIikgewogICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgIGlmIChuZXh0ID09PSAiLyIgJiYgb3B0cy5iYXNoICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG5leHQgPT09ICIuIiB8fCBuZXh0ID09PSAiOyIpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5leHQpIHsKICAgICAgICAgICAgdmFsdWUgKz0gIlxcIjsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcKy8uZXhlYyhyZW1haW5pbmcoKSk7CiAgICAgICAgICBsZXQgc2xhc2hlcyA9IDA7CiAgICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0ubGVuZ3RoID4gMikgewogICAgICAgICAgICBzbGFzaGVzID0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBzbGFzaGVzOwogICAgICAgICAgICBpZiAoc2xhc2hlcyAlIDIgIT09IDApIHsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy51bmVzY2FwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICB2YWx1ZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHZhbHVlICs9IGFkdmFuY2UoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA+IDAgJiYgKHZhbHVlICE9PSAiXSIgfHwgcHJldi52YWx1ZSA9PT0gIlsiIHx8IHByZXYudmFsdWUgPT09ICJbXiIpKSB7CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCAhPT0gZmFsc2UgJiYgdmFsdWUgPT09ICI6IikgewogICAgICAgICAgICBjb25zdCBpbm5lciA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICAgIGlmIChpbm5lci5pbmNsdWRlcygiWyIpKSB7CiAgICAgICAgICAgICAgcHJldi5wb3NpeCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCI6IikpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IHByZXYudmFsdWUubGFzdEluZGV4T2YoIlsiKTsKICAgICAgICAgICAgICAgIGNvbnN0IHByZSA9IHByZXYudmFsdWUuc2xpY2UoMCwgaWR4KTsKICAgICAgICAgICAgICAgIGNvbnN0IHJlc3QyID0gcHJldi52YWx1ZS5zbGljZShpZHggKyAyKTsKICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l4ID0gUE9TSVhfUkVHRVhfU09VUkNFW3Jlc3QyXTsKICAgICAgICAgICAgICAgIGlmIChwb3NpeCkgewogICAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gcHJlICsgcG9zaXg7CiAgICAgICAgICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgaWYgKCFib3Mub3V0cHV0ICYmIHRva2Vucy5pbmRleE9mKHByZXYpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgYm9zLm91dHB1dCA9IE9ORV9DSEFSOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiWyIgJiYgcGVlaygpICE9PSAiOiIgfHwgdmFsdWUgPT09ICItIiAmJiBwZWVrKCkgPT09ICJdIikgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iICYmIChwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCA9PT0gdHJ1ZSAmJiB2YWx1ZSA9PT0gIiEiICYmIHByZXYudmFsdWUgPT09ICJbIikgewogICAgICAgICAgICB2YWx1ZSA9ICJeIjsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUucXVvdGVzID09PSAxICYmIHZhbHVlICE9PSAnIicpIHsKICAgICAgICAgIHZhbHVlID0gdXRpbHMuZXNjYXBlUmVnZXgodmFsdWUpOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gJyInKSB7CiAgICAgICAgICBzdGF0ZS5xdW90ZXMgPSBzdGF0ZS5xdW90ZXMgPT09IDEgPyAwIDogMTsKICAgICAgICAgIGlmIChvcHRzLmtlZXBRdW90ZXMgPT09IHRydWUpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKCIpIHsKICAgICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKSIpIHsKICAgICAgICAgIGlmIChzdGF0ZS5wYXJlbnMgPT09IDAgJiYgb3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoIm9wZW5pbmciLCAiKCIpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4dGdsb2IgPSBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChleHRnbG9iICYmIHN0YXRlLnBhcmVucyA9PT0gZXh0Z2xvYi5wYXJlbnMgKyAxKSB7CiAgICAgICAgICAgIGV4dGdsb2JDbG9zZShleHRnbG9icy5wb3AoKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwYXJlbiIsIHZhbHVlLCBvdXRwdXQ6IHN0YXRlLnBhcmVucyA/ICIpIiA6ICJcXCkiIH0pOwogICAgICAgICAgZGVjcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJbIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8ICFyZW1haW5pbmcoKS5pbmNsdWRlcygiXSIpKSB7CiAgICAgICAgICAgIGlmIChvcHRzLm5vYnJhY2tldCAhPT0gdHJ1ZSAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpbmNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImJyYWNrZXQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJdIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8IHByZXYgJiYgcHJldi50eXBlID09PSAiYnJhY2tldCIgJiYgcHJldi52YWx1ZS5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICJbIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQ6IGBcXCR7dmFsdWV9YCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSBwcmV2LnZhbHVlLnNsaWNlKDEpOwogICAgICAgICAgaWYgKHByZXYucG9zaXggIT09IHRydWUgJiYgcHJldlZhbHVlWzBdID09PSAiXiIgJiYgIXByZXZWYWx1ZS5pbmNsdWRlcygiLyIpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYC8ke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IGZhbHNlIHx8IHV0aWxzLmhhc1JlZ2V4Q2hhcnMocHJldlZhbHVlKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSB1dGlscy5lc2NhcGVSZWdleChwcmV2LnZhbHVlKTsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi52YWx1ZS5sZW5ndGgpOwogICAgICAgICAgaWYgKG9wdHMubGl0ZXJhbEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBlc2NhcGVkOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gZXNjYXBlZDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlID0gYCgke2NhcHR1cmV9JHtlc2NhcGVkfXwke3ByZXYudmFsdWV9KWA7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi52YWx1ZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ7IiAmJiBvcHRzLm5vYnJhY2UgIT09IHRydWUpIHsKICAgICAgICAgIGluY3JlbWVudCgiYnJhY2VzIik7CiAgICAgICAgICBjb25zdCBvcGVuID0gewogICAgICAgICAgICB0eXBlOiAiYnJhY2UiLAogICAgICAgICAgICB2YWx1ZSwKICAgICAgICAgICAgb3V0cHV0OiAiKCIsCiAgICAgICAgICAgIG91dHB1dEluZGV4OiBzdGF0ZS5vdXRwdXQubGVuZ3RoLAogICAgICAgICAgICB0b2tlbnNJbmRleDogc3RhdGUudG9rZW5zLmxlbmd0aAogICAgICAgICAgfTsKICAgICAgICAgIGJyYWNlcy5wdXNoKG9wZW4pOwogICAgICAgICAgcHVzaChvcGVuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ9IikgewogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKG9wdHMubm9icmFjZSA9PT0gdHJ1ZSB8fCAhYnJhY2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IG91dHB1dCA9ICIpIjsKICAgICAgICAgIGlmIChicmFjZS5kb3RzID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IGFyciA9IHRva2Vucy5zbGljZSgpOwogICAgICAgICAgICBjb25zdCByYW5nZSA9IFtdOwogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSA9PT0gImJyYWNlIikgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSAhPT0gImRvdHMiKSB7CiAgICAgICAgICAgICAgICByYW5nZS51bnNoaWZ0KGFycltpXS52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG91dHB1dCA9IGV4cGFuZFJhbmdlKHJhbmdlLCBvcHRzKTsKICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChicmFjZS5jb21tYSAhPT0gdHJ1ZSAmJiBicmFjZS5kb3RzICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IG91dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCBicmFjZS5vdXRwdXRJbmRleCk7CiAgICAgICAgICAgIGNvbnN0IHRva3MgPSBzdGF0ZS50b2tlbnMuc2xpY2UoYnJhY2UudG9rZW5zSW5kZXgpOwogICAgICAgICAgICBicmFjZS52YWx1ZSA9IGJyYWNlLm91dHB1dCA9ICJcXHsiOwogICAgICAgICAgICB2YWx1ZSA9IG91dHB1dCA9ICJcXH0iOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBvdXQ7CiAgICAgICAgICAgIGZvciAoY29uc3QgdCBvZiB0b2tzKSB7CiAgICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHQub3V0cHV0IHx8IHQudmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2UiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGJyYWNlcy5wb3AoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ8IikgewogICAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uY29uZGl0aW9ucysrOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiLCIpIHsKICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChicmFjZSAmJiBzdGFja1tzdGFjay5sZW5ndGggLSAxXSA9PT0gImJyYWNlcyIpIHsKICAgICAgICAgICAgYnJhY2UuY29tbWEgPSB0cnVlOwogICAgICAgICAgICBvdXRwdXQgPSAifCI7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImNvbW1hIiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIvIikgewogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImRvdCIgJiYgc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGF0ZS5zdGFydCA9IHN0YXRlLmluZGV4ICsgMTsKICAgICAgICAgICAgc3RhdGUuY29uc3VtZWQgPSAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gIiI7CiAgICAgICAgICAgIHRva2Vucy5wb3AoKTsKICAgICAgICAgICAgcHJldiA9IGJvczsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWUsIG91dHB1dDogU0xBU0hfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIuIikgewogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyA+IDAgJiYgcHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIi4iKSBwcmV2Lm91dHB1dCA9IERPVF9MSVRFUkFMOwogICAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJkb3RzIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIGJyYWNlLmRvdHMgPSB0cnVlOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFjZXMgKyBzdGF0ZS5wYXJlbnMgPT09IDAgJiYgcHJldi50eXBlICE9PSAiYm9zIiAmJiBwcmV2LnR5cGUgIT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogRE9UX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJkb3QiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICI/IikgewogICAgICAgICAgY29uc3QgaXNHcm91cCA9IHByZXYgJiYgcHJldi52YWx1ZSA9PT0gIigiOwogICAgICAgICAgaWYgKCFpc0dyb3VwICYmIG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicW1hcmsiLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAicGFyZW4iKSB7CiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBwZWVrKCk7CiAgICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgICAgaWYgKHByZXYudmFsdWUgPT09ICIoIiAmJiAhL1shPTw6XS8udGVzdChuZXh0KSB8fCBuZXh0ID09PSAiPCIgJiYgIS88KFshPV18XHcrPikvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgICAgb3V0cHV0ID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMuZG90ICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzbGFzaCIgfHwgcHJldi50eXBlID09PSAiYm9zIikpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJxbWFyayIsIHZhbHVlLCBvdXRwdXQ6IFFNQVJLX05PX0RPVCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUksgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiISIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIikgewogICAgICAgICAgICBpZiAocGVlaygyKSAhPT0gIj8iIHx8ICEvWyE9PDpdLy50ZXN0KHBlZWsoMykpKSB7CiAgICAgICAgICAgICAgZXh0Z2xvYk9wZW4oIm5lZ2F0ZSIsIHZhbHVlKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgc3RhdGUuaW5kZXggPT09IDApIHsKICAgICAgICAgICAgbmVnYXRlKCk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIrIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicGx1cyIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCIgfHwgb3B0cy5yZWdleCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUsIG91dHB1dDogUExVU19MSVRFUkFMIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIChwcmV2LnR5cGUgPT09ICJicmFja2V0IiB8fCBwcmV2LnR5cGUgPT09ICJwYXJlbiIgfHwgcHJldi50eXBlID09PSAiYnJhY2UiKSB8fCBzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlOiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiQCIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIiAmJiBwZWVrKDIpICE9PSAiPyIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJhdCIsIGV4dGdsb2I6IHRydWUsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSAhPT0gIioiKSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09ICIkIiB8fCB2YWx1ZSA9PT0gIl4iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGlmIChtYXRjaCkgewogICAgICAgICAgICB2YWx1ZSArPSBtYXRjaFswXTsKICAgICAgICAgICAgc3RhdGUuaW5kZXggKz0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIiB8fCBwcmV2LnN0YXIgPT09IHRydWUpKSB7CiAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICBwcmV2LnN0YXIgPSB0cnVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdCA9IHJlbWFpbmluZygpOwogICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiAvXlwoW14/XS8udGVzdChyZXN0KSkgewogICAgICAgICAgZXh0Z2xvYk9wZW4oInN0YXIiLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gInN0YXIiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2dsb2JzdGFyID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHByaW9yID0gcHJldi5wcmV2OwogICAgICAgICAgY29uc3QgYmVmb3JlID0gcHJpb3IucHJldjsKICAgICAgICAgIGNvbnN0IGlzU3RhcnQgPSBwcmlvci50eXBlID09PSAic2xhc2giIHx8IHByaW9yLnR5cGUgPT09ICJib3MiOwogICAgICAgICAgY29uc3QgYWZ0ZXJTdGFyID0gYmVmb3JlICYmIChiZWZvcmUudHlwZSA9PT0gInN0YXIiIHx8IGJlZm9yZS50eXBlID09PSAiZ2xvYnN0YXIiKTsKICAgICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUgJiYgKCFpc1N0YXJ0IHx8IHJlc3RbMF0gJiYgcmVzdFswXSAhPT0gIi8iKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAocHJpb3IudHlwZSA9PT0gImNvbW1hIiB8fCBwcmlvci50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IGV4dGdsb2JzLmxlbmd0aCAmJiAocHJpb3IudHlwZSA9PT0gInBpcGUiIHx8IHByaW9yLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKCFpc1N0YXJ0ICYmIHByaW9yLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAocmVzdC5zbGljZSgwLCAzKSA9PT0gIi8qKiIpIHsKICAgICAgICAgICAgY29uc3QgYWZ0ZXIgPSBpbnB1dFtzdGF0ZS5pbmRleCArIDRdOwogICAgICAgICAgICBpZiAoYWZ0ZXIgJiYgYWZ0ZXIgIT09ICIvIikgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3QgPSByZXN0LnNsaWNlKDMpOwogICAgICAgICAgICBjb25zdW1lKCIvKioiLCAzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiBlb3MoKSkgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJpb3IudHlwZSA9PT0gInNsYXNoIiAmJiBwcmlvci5wcmV2LnR5cGUgIT09ICJib3MiICYmICFhZnRlclN0YXIgJiYgZW9zKCkpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpICsgKG9wdHMuc3RyaWN0U2xhc2hlcyA/ICIpIiA6ICJ8JCkiKTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgcmVzdFswXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc3RbMV0gIT09IHZvaWQgMCA/ICJ8JCIgOiAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH18JHtTTEFTSF9MSVRFUkFMfSR7ZW5kfSlgOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSArIGFkdmFuY2UoKSk7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZTogIi8iLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9fCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdG9rZW4gPSB7IHR5cGU6ICJzdGFyIiwgdmFsdWUsIG91dHB1dDogc3RhciB9OwogICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUpIHsKICAgICAgICAgIHRva2VuLm91dHB1dCA9ICIuKj8iOwogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImJvcyIgfHwgcHJldi50eXBlID09PSAic2xhc2giKSB7CiAgICAgICAgICAgIHRva2VuLm91dHB1dCA9IG5vZG90ICsgdG9rZW4ub3V0cHV0OwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh0b2tlbik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIikgJiYgb3B0cy5yZWdleCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gdmFsdWU7CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0IHx8IHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gTk9fRE9UX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZG90ID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBub2RvdDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwZWVrKCkgIT09ICIqIikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE9ORV9DSEFSOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUuYnJhY2tldHMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJdIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiWyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUucGFyZW5zID4gMCkgewogICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiKSIpKTsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy5lc2NhcGVMYXN0KHN0YXRlLm91dHB1dCwgIigiKTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFjZXMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJ9IikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAieyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2VzIik7CiAgICAgIH0KICAgICAgaWYgKG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSAmJiAocHJldi50eXBlID09PSAic3RhciIgfHwgcHJldi50eXBlID09PSAiYnJhY2tldCIpKSB7CiAgICAgICAgcHVzaCh7IHR5cGU6ICJtYXliZV9zbGFzaCIsIHZhbHVlOiAiIiwgb3V0cHV0OiBgJHtTTEFTSF9MSVRFUkFMfT9gIH0pOwogICAgICB9CiAgICAgIGlmIChzdGF0ZS5iYWNrdHJhY2sgPT09IHRydWUpIHsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHN0YXRlLnRva2VucykgewogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgICBpZiAodG9rZW4uc3VmZml4KSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSB0b2tlbi5zdWZmaXg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBwYXJzZS5mYXN0cGF0aHMgPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IHsgLi4ub3B0aW9ucyB9OwogICAgICBjb25zdCBtYXggPSB0eXBlb2Ygb3B0cy5tYXhMZW5ndGggPT09ICJudW1iZXIiID8gTWF0aC5taW4oTUFYX0xFTkdUSCwgb3B0cy5tYXhMZW5ndGgpIDogTUFYX0xFTkdUSDsKICAgICAgY29uc3QgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBTTEFTSF9MSVRFUkFMLAogICAgICAgIE9ORV9DSEFSLAogICAgICAgIERPVFNfU0xBU0gsCiAgICAgICAgTk9fRE9ULAogICAgICAgIE5PX0RPVFMsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBTVEFSLAogICAgICAgIFNUQVJUX0FOQ0hPUgogICAgICB9ID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gTk9fRE9UUyA6IE5PX0RPVDsKICAgICAgY29uc3Qgc2xhc2hEb3QgPSBvcHRzLmRvdCA/IE5PX0RPVFNfU0xBU0ggOiBOT19ET1Q7CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IHN0YXRlID0geyBuZWdhdGVkOiBmYWxzZSwgcHJlZml4OiAiIiB9OwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/ICIuKj8iIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIGlmIChvcHRzMi5ub2dsb2JzdGFyID09PSB0cnVlKSByZXR1cm4gc3RhcjsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3QgY3JlYXRlID0gKHN0cjIpID0+IHsKICAgICAgICBzd2l0Y2ggKHN0cjIpIHsKICAgICAgICAgIGNhc2UgIioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIiovKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtub2RvdH0ke3N0YXJ9JHtTTEFTSF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzbGFzaERvdH0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqIjoKICAgICAgICAgICAgcmV0dXJuIG5vZG90ICsgZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBjYXNlICIqKi8qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke3N0YXJ9JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovLioiOgogICAgICAgICAgICByZXR1cm4gYCg/OiR7bm9kb3R9JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KT8ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBkZWZhdWx0OiB7CiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gL14oLio/KVwuKFx3KykkLy5leGVjKHN0cjIpOwogICAgICAgICAgICBpZiAoIW1hdGNoKSByZXR1cm47CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZTIgPSBjcmVhdGUobWF0Y2hbMV0pOwogICAgICAgICAgICBpZiAoIXNvdXJjZTIpIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTIgKyBET1RfTElURVJBTCArIG1hdGNoWzJdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgb3V0cHV0ID0gdXRpbHMucmVtb3ZlUHJlZml4KGlucHV0LCBzdGF0ZSk7CiAgICAgIGxldCBzb3VyY2UgPSBjcmVhdGUob3V0cHV0KTsKICAgICAgaWYgKHNvdXJjZSAmJiBvcHRzLnN0cmljdFNsYXNoZXMgIT09IHRydWUpIHsKICAgICAgICBzb3VyY2UgKz0gYCR7U0xBU0hfTElURVJBTH0/YDsKICAgICAgfQogICAgICByZXR1cm4gc291cmNlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBhcnNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BpY29tYXRjaC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdDIgPSAodmFsKSA9PiB2YWwgJiYgdHlwZW9mIHZhbCA9PT0gIm9iamVjdCIgJiYgIUFycmF5LmlzQXJyYXkodmFsKTsKICAgIHZhciBwaWNvbWF0Y2ggPSAoZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShnbG9iKSkgewogICAgICAgIGNvbnN0IGZucyA9IGdsb2IubWFwKChpbnB1dCkgPT4gcGljb21hdGNoKGlucHV0LCBvcHRpb25zLCByZXR1cm5TdGF0ZSkpOwogICAgICAgIGNvbnN0IGFycmF5TWF0Y2hlciA9IChzdHIyKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IGlzTWF0Y2ggb2YgZm5zKSB7CiAgICAgICAgICAgIGNvbnN0IHN0YXRlMiA9IGlzTWF0Y2goc3RyMik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdDIoZ2xvYikgJiYgZ2xvYi50b2tlbnMgJiYgZ2xvYi5pbnB1dDsKICAgICAgaWYgKGdsb2IgPT09ICIiIHx8IHR5cGVvZiBnbG9iICE9PSAic3RyaW5nIiAmJiAhaXNTdGF0ZSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHBhdHRlcm4gdG8gYmUgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHBvc2l4ID0gb3B0cy53aW5kb3dzOwogICAgICBjb25zdCByZWdleCA9IGlzU3RhdGUgPyBwaWNvbWF0Y2guY29tcGlsZVJlKGdsb2IsIG9wdGlvbnMpIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zLCBmYWxzZSwgdHJ1ZSk7CiAgICAgIGNvbnN0IHN0YXRlID0gcmVnZXguc3RhdGU7CiAgICAgIGRlbGV0ZSByZWdleC5zdGF0ZTsKICAgICAgbGV0IGlzSWdub3JlZCA9ICgpID0+IGZhbHNlOwogICAgICBpZiAob3B0cy5pZ25vcmUpIHsKICAgICAgICBjb25zdCBpZ25vcmVPcHRzID0geyAuLi5vcHRpb25zLCBpZ25vcmU6IG51bGwsIG9uTWF0Y2g6IG51bGwsIG9uUmVzdWx0OiBudWxsIH07CiAgICAgICAgaXNJZ25vcmVkID0gcGljb21hdGNoKG9wdHMuaWdub3JlLCBpZ25vcmVPcHRzLCByZXR1cm5TdGF0ZSk7CiAgICAgIH0KICAgICAgY29uc3QgbWF0Y2hlciA9IChpbnB1dCwgcmV0dXJuT2JqZWN0ID0gZmFsc2UpID0+IHsKICAgICAgICBjb25zdCB7IGlzTWF0Y2gsIG1hdGNoLCBvdXRwdXQgfSA9IHBpY29tYXRjaC50ZXN0KGlucHV0LCByZWdleCwgb3B0aW9ucywgeyBnbG9iLCBwb3NpeCB9KTsKICAgICAgICBjb25zdCByZXN1bHQgPSB7IGdsb2IsIHN0YXRlLCByZWdleCwgcG9zaXgsIGlucHV0LCBvdXRwdXQsIG1hdGNoLCBpc01hdGNoIH07CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uUmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uUmVzdWx0KHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc01hdGNoID09PSBmYWxzZSkgewogICAgICAgICAgcmVzdWx0LmlzTWF0Y2ggPSBmYWxzZTsKICAgICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSWdub3JlZChpbnB1dCkpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbklnbm9yZSA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBvcHRzLm9uSWdub3JlKHJlc3VsdCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIG9wdHMub25NYXRjaCA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgb3B0cy5vbk1hdGNoKHJlc3VsdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXR1cm5PYmplY3QgPyByZXN1bHQgOiB0cnVlOwogICAgICB9OwogICAgICBpZiAocmV0dXJuU3RhdGUpIHsKICAgICAgICBtYXRjaGVyLnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hdGNoZXI7CiAgICB9OwogICAgcGljb21hdGNoLnRlc3QgPSAoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0gPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGlucHV0IHRvIGJlIGEgc3RyaW5nIik7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ID09PSAiIikgewogICAgICAgIHJldHVybiB7IGlzTWF0Y2g6IGZhbHNlLCBvdXRwdXQ6ICIiIH07CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IChwb3NpeCA/IHV0aWxzLnRvUG9zaXhTbGFzaGVzIDogbnVsbCk7CiAgICAgIGxldCBtYXRjaCA9IGlucHV0ID09PSBnbG9iOwogICAgICBsZXQgb3V0cHV0ID0gbWF0Y2ggJiYgZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICBpZiAobWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgb3V0cHV0ID0gZm9ybWF0ID8gZm9ybWF0KGlucHV0KSA6IGlucHV0OwogICAgICAgIG1hdGNoID0gb3V0cHV0ID09PSBnbG9iOwogICAgICB9CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UgfHwgb3B0cy5jYXB0dXJlID09PSB0cnVlKSB7CiAgICAgICAgaWYgKG9wdHMubWF0Y2hCYXNlID09PSB0cnVlIHx8IG9wdHMuYmFzZW5hbWUgPT09IHRydWUpIHsKICAgICAgICAgIG1hdGNoID0gcGljb21hdGNoLm1hdGNoQmFzZShpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHBvc2l4KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgbWF0Y2ggPSByZWdleC5leGVjKG91dHB1dCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGlzTWF0Y2g6IEJvb2xlYW4obWF0Y2gpLCBtYXRjaCwgb3V0cHV0IH07CiAgICB9OwogICAgcGljb21hdGNoLm1hdGNoQmFzZSA9IChpbnB1dCwgZ2xvYiwgb3B0aW9ucykgPT4gewogICAgICBjb25zdCByZWdleCA9IGdsb2IgaW5zdGFuY2VvZiBSZWdFeHAgPyBnbG9iIDogcGljb21hdGNoLm1ha2VSZShnbG9iLCBvcHRpb25zKTsKICAgICAgcmV0dXJuIHJlZ2V4LnRlc3QodXRpbHMuYmFzZW5hbWUoaW5wdXQpKTsKICAgIH07CiAgICBwaWNvbWF0Y2guaXNNYXRjaCA9IChzdHIyLCBwYXR0ZXJucywgb3B0aW9ucykgPT4gcGljb21hdGNoKHBhdHRlcm5zLCBvcHRpb25zKShzdHIyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2gyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBwaWNvID0gcmVxdWlyZV9waWNvbWF0Y2goKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICBmdW5jdGlvbiBwaWNvbWF0Y2goZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgewogICAgICBpZiAob3B0aW9ucyAmJiAob3B0aW9ucy53aW5kb3dzID09PSBudWxsIHx8IG9wdGlvbnMud2luZG93cyA9PT0gdm9pZCAwKSkgewogICAgICAgIG9wdGlvbnMgPSB7IC4uLm9wdGlvbnMsIHdpbmRvd3M6IHV0aWxzLmlzV2luZG93cygpIH07CiAgICAgIH0KICAgICAgcmV0dXJuIHBpY28oZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUpOwogICAgfQogICAgT2JqZWN0LmFzc2lnbihwaWNvbWF0Y2gsIHBpY28pOwogICAgbW9kdWxlMi5leHBvcnRzID0gcGljb21hdGNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBpY29tYXRjaF8xID0gcmVxdWlyZV9waWNvbWF0Y2gyKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBQYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9wYXR0ZXJucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGFkZFBhdHRlcm4ocGF0dGVybiwgcmVwbGFjZW1lbnRGbikgewogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSA/IHBhdHRlcm4gOiBbcGF0dGVybl07CiAgICAgICAgZm9yIChjb25zdCBnbG9iIG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICBjb25zdCB7IG91dHB1dCB9ID0gKDAsIHBpY29tYXRjaF8xLnBhcnNlKShnbG9iKTsKICAgICAgICAgIHRoaXMuX3BhdHRlcm5zLnNldChuZXcgUmVnRXhwKGBeJHtvdXRwdXR9JGApLCByZXBsYWNlbWVudEZuKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBuZXdQYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9wYXR0ZXJucy5mb3JFYWNoKChmbiwgcmUpID0+IHsKICAgICAgICAgIGlmIChyZS50ZXN0KHBhdGgpKSB7CiAgICAgICAgICAgIG5ld1BhdGggPSBmbihuZXdQYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3UGF0aDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSBQYXR0ZXJuTWF0Y2hpbmdIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qcwp2YXIgcmVxdWlyZV9yZWNvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0MikgPT4gWy4uLnNldDJdKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gKDAsIHJ4anNfMS5vZikodHJ1ZSkgOiB0aGlzLndpbGxEZWxldGUocGF0aCkgfHwgdGhpcy53aWxsUmVuYW1lKHBhdGgpID8gKDAsIHJ4anNfMS5vZikoZmFsc2UpIDogdGhpcy5fYmFjay5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5pc0RpcmVjdG9yeShwYXRoKSA6IHRoaXMuX2JhY2suaXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNGaWxlKHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suaXNGaWxlKHBhdGgpOwogICAgICB9CiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9leGlzdHMocGF0aCkgPyBzdXBlci5zdGF0KHBhdGgpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKG51bGwpIDogdGhpcy5fYmFjay5zdGF0KHBhdGgpOwogICAgICB9CiAgICAgIHdhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICB3aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbE92ZXJ3cml0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb1JlbmFtZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZVRvKHBhdGgsIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZ2V0KHBhdGgpID09PSB0bzsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gQ29yZEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcwp2YXIgcmVxdWlyZV9zYWZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2FmZVJlYWRvbmx5SG9zdCA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIFNhZmVSZWFkb25seUhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShbXSkpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoZmFsc2UpKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNGaWxlKHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShmYWxzZSkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0cy4KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0ID0gdGhpcy5fZGVsZWdhdGUuc3RhdChwYXRoKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0ICYmIG1heWJlU3RhdC5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikobnVsbCkpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNhZmVSZWFkb25seUhvc3QgPSBTYWZlUmVhZG9ubHlIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBTY29wZWRIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihkZWxlZ2F0ZSwgX3Jvb3QgPSBwYXRoXzEuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICBzdXBlcihkZWxlZ2F0ZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IF9yb290OwogICAgICB9CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5qb2luKSh0aGlzLl9yb290LCBwYXRoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSBTY29wZWRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzCnZhciByZXF1aXJlX2hvc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGVzdCA9IHZvaWQgMDsKICAgIHZhciB0ZXN0ID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdGVzdCgpKTsKICAgIGV4cG9ydHMyLnRlc3QgPSB0ZXN0OwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYWxpYXMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYnVmZmVyMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jcmVhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW1wdHkyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbWVtb3J5KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BhdHRlcm4yKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3JlY29yZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zYWZlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Njb3BlZCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zeW5jKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Jlc29sdmVyKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMKdmFyIHJlcXVpcmVfdmlydHVhbF9mcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmlydHVhbEZzID0gdm9pZCAwOwogICAgdmFyIHZpcnR1YWxGcyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2hvc3QoKSk7CiAgICBleHBvcnRzMi52aXJ0dWFsRnMgPSB2aXJ0dWFsRnM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXRoKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IGNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVdvcmtzcGFjZUhvc3QoaG9zdCkgewogICAgICBjb25zdCB3b3Jrc3BhY2VIb3N0ID0gewogICAgICAgIGFzeW5jIHJlYWRGaWxlKHBhdGgpIHsKICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QucmVhZCgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIHJldHVybiB2aXJ0dWFsX2ZzXzEudmlydHVhbEZzLmZpbGVCdWZmZXJUb1N0cmluZyhkYXRhKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoLCBkYXRhKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LndyaXRlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSwgdmlydHVhbF9mc18xLnZpcnR1YWxGcy5zdHJpbmdUb0ZpbGVCdWZmZXIoZGF0YSkpKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNEaXJlY3RvcnkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICB9IGNhdGNoIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNGaWxlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiB3b3Jrc3BhY2VIb3N0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcwp2YXIgcmVxdWlyZV9zY2FubmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zY2FubmVyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiBjcmVhdGVTY2FubmVyKHRleHQsIGlnbm9yZVRyaXZpYSA9IGZhbHNlKSB7CiAgICAgICAgY29uc3QgbGVuID0gdGV4dC5sZW5ndGg7CiAgICAgICAgbGV0IHBvcyA9IDAsIHZhbHVlID0gIiIsIHRva2VuT2Zmc2V0ID0gMCwgdG9rZW4gPSAxNiwgbGluZU51bWJlciA9IDAsIGxpbmVTdGFydE9mZnNldCA9IDAsIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gMCwgc2NhbkVycm9yID0gMDsKICAgICAgICBmdW5jdGlvbiBzY2FuSGV4RGlnaXRzKGNvdW50LCBleGFjdCkgewogICAgICAgICAgbGV0IGRpZ2l0cyA9IDA7CiAgICAgICAgICBsZXQgdmFsdWUyID0gMDsKICAgICAgICAgIHdoaWxlIChkaWdpdHMgPCBjb3VudCB8fCAhZXhhY3QpIHsKICAgICAgICAgICAgbGV0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA+PSA0OCAmJiBjaCA8PSA1NykgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA0ODsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA2NSAmJiBjaCA8PSA3MCkgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA2NSArIDEwOwogICAgICAgICAgICB9IGVsc2UgaWYgKGNoID49IDk3ICYmIGNoIDw9IDEwMikgewogICAgICAgICAgICAgIHZhbHVlMiA9IHZhbHVlMiAqIDE2ICsgY2ggLSA5NyArIDEwOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBkaWdpdHMrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChkaWdpdHMgPCBjb3VudCkgewogICAgICAgICAgICB2YWx1ZTIgPSAtMTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB2YWx1ZTI7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNldFBvc2l0aW9uKG5ld1Bvc2l0aW9uKSB7CiAgICAgICAgICBwb3MgPSBuZXdQb3NpdGlvbjsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IDA7CiAgICAgICAgICB0b2tlbiA9IDE2OwogICAgICAgICAgc2NhbkVycm9yID0gMDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk51bWJlcigpIHsKICAgICAgICAgIGxldCBzdGFydCA9IHBvczsKICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDgpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDYpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kID0gcG9zOwogICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmICh0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNjkgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwMSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gNDMgfHwgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ1KSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHRleHQubGVuZ3RoICYmIGlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgZW5kID0gcG9zOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNjYW5FcnJvciA9IDM7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgZW5kKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2NhblN0cmluZygpIHsKICAgICAgICAgIGxldCByZXN1bHQgPSAiIiwgc3RhcnQgPSBwb3M7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAyOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIGlmIChjaCA9PT0gMzQpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNoID09PSA5MikgewogICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBjaDIgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKyspOwogICAgICAgICAgICAgIHN3aXRjaCAoY2gyKSB7CiAgICAgICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gJyInOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXFwiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiLyI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSA5ODoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcYiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMDI6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGYiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTEwOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxuIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcciI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTY6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiCSI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTc6CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoMyA9IHNjYW5IZXhEaWdpdHMoNCwgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgIGlmIChjaDMgPj0gMCkgewogICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNoMyk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN0YXJ0ID0gcG9zOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA+PSAwICYmIGNoIDw9IDMxKSB7CiAgICAgICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNoKSkgewogICAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0KCkgewogICAgICAgICAgdmFsdWUgPSAiIjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgICB0b2tlbk9mZnNldCA9IHBvczsKICAgICAgICAgIGxpbmVTdGFydE9mZnNldCA9IGxpbmVOdW1iZXI7CiAgICAgICAgICBwcmV2VG9rZW5MaW5lU3RhcnRPZmZzZXQgPSB0b2tlbkxpbmVTdGFydE9mZnNldDsKICAgICAgICAgIGlmIChwb3MgPj0gbGVuKSB7CiAgICAgICAgICAgIHRva2VuT2Zmc2V0ID0gbGVuOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNzsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpKSB7CiAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIGNvZGUgPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgfSB3aGlsZSAoaXNXaGl0ZVNwYWNlKGNvZGUpKTsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgIGlmIChjb2RlID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXG4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE0OwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIC8vIHRva2VuczogW117fTosCiAgICAgICAgICAgIGNhc2UgMTIzOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDI7CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMzsKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA0OwogICAgICAgICAgICBjYXNlIDU4OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDY7CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNTsKICAgICAgICAgICAgLy8gc3RyaW5ncwogICAgICAgICAgICBjYXNlIDM0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHZhbHVlID0gc2NhblN0cmluZygpOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEwOwogICAgICAgICAgICAvLyBjb21tZW50cwogICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gcG9zIC0gMTsKICAgICAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDIpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgY29uc3Qgc2FmZUxlbmd0aCA9IGxlbiAtIDE7CiAgICAgICAgICAgICAgICBsZXQgY29tbWVudENsb3NlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IHNhZmVMZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgY2ggPSB0ZXh0LmNoYXJDb2RlQXQocG9zKTsKICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSA0MiAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQ3KSB7CiAgICAgICAgICAgICAgICAgICAgcG9zICs9IDI7CiAgICAgICAgICAgICAgICAgICAgY29tbWVudENsb3NlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoY2ggPT09IDEzICYmIHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMCkgewogICAgICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxpbmVOdW1iZXIrKzsKICAgICAgICAgICAgICAgICAgICB0b2tlbkxpbmVTdGFydE9mZnNldCA9IHBvczsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjb21tZW50Q2xvc2VkKSB7CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDEzOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAvLyBudW1iZXJzCiAgICAgICAgICAgIGNhc2UgNDU6CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICBpZiAocG9zID09PSBsZW4gfHwgIWlzRGlnaXQodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGZvdW5kIGEgbWludXMsIGZvbGxvd2VkIGJ5IGEgbnVtYmVyIHNvCiAgICAgICAgICAgIC8vIHdlIGZhbGwgdGhyb3VnaCB0byBwcm9jZWVkIHdpdGggc2Nhbm5pbmcKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ4OgogICAgICAgICAgICBjYXNlIDQ5OgogICAgICAgICAgICBjYXNlIDUwOgogICAgICAgICAgICBjYXNlIDUxOgogICAgICAgICAgICBjYXNlIDUyOgogICAgICAgICAgICBjYXNlIDUzOgogICAgICAgICAgICBjYXNlIDU0OgogICAgICAgICAgICBjYXNlIDU1OgogICAgICAgICAgICBjYXNlIDU2OgogICAgICAgICAgICBjYXNlIDU3OgogICAgICAgICAgICAgIHZhbHVlICs9IHNjYW5OdW1iZXIoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMTsKICAgICAgICAgICAgLy8gbGl0ZXJhbHMgYW5kIHVua25vd24gc3ltYm9scwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBsZW4gJiYgaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0b2tlbk9mZnNldCAhPT0gcG9zKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHRva2VuT2Zmc2V0LCBwb3MpOwogICAgICAgICAgICAgICAgc3dpdGNoICh2YWx1ZSkgewogICAgICAgICAgICAgICAgICBjYXNlICJ0cnVlIjoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA4OwogICAgICAgICAgICAgICAgICBjYXNlICJmYWxzZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gOTsKICAgICAgICAgICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE2OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc1Vua25vd25Db250ZW50Q2hhcmFjdGVyKGNvZGUpIHsKICAgICAgICAgIGlmIChpc1doaXRlU3BhY2UoY29kZSkgfHwgaXNMaW5lQnJlYWsoY29kZSkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChjb2RlKSB7CiAgICAgICAgICAgIGNhc2UgMTI1OgogICAgICAgICAgICBjYXNlIDkzOgogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgY2FzZSA5MToKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgY2FzZSA0NDoKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHROb25Ucml2aWEoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0OwogICAgICAgICAgZG8gewogICAgICAgICAgICByZXN1bHQgPSBzY2FuTmV4dCgpOwogICAgICAgICAgfSB3aGlsZSAocmVzdWx0ID49IDEyICYmIHJlc3VsdCA8PSAxNSk7CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgc2V0UG9zaXRpb24sCiAgICAgICAgICBnZXRQb3NpdGlvbjogKCkgPT4gcG9zLAogICAgICAgICAgc2NhbjogaWdub3JlVHJpdmlhID8gc2Nhbk5leHROb25Ucml2aWEgOiBzY2FuTmV4dCwKICAgICAgICAgIGdldFRva2VuOiAoKSA9PiB0b2tlbiwKICAgICAgICAgIGdldFRva2VuVmFsdWU6ICgpID0+IHZhbHVlLAogICAgICAgICAgZ2V0VG9rZW5PZmZzZXQ6ICgpID0+IHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5MZW5ndGg6ICgpID0+IHBvcyAtIHRva2VuT2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5TdGFydExpbmU6ICgpID0+IGxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRDaGFyYWN0ZXI6ICgpID0+IHRva2VuT2Zmc2V0IC0gcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0LAogICAgICAgICAgZ2V0VG9rZW5FcnJvcjogKCkgPT4gc2NhbkVycm9yCiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gY3JlYXRlU2Nhbm5lcjsKICAgICAgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID09PSAzMiB8fCBjaCA9PT0gOTsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0xpbmVCcmVhayhjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMTAgfHwgY2ggPT09IDEzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRGlnaXQoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPj0gNDggJiYgY2ggPD0gNTc7CiAgICAgIH0KICAgICAgdmFyIENoYXJhY3RlckNvZGVzOwogICAgICAoZnVuY3Rpb24oQ2hhcmFjdGVyQ29kZXMyKSB7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibGluZUZlZWQiXSA9IDEwXSA9ICJsaW5lRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2FycmlhZ2VSZXR1cm4iXSA9IDEzXSA9ICJjYXJyaWFnZVJldHVybiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic3BhY2UiXSA9IDMyXSA9ICJzcGFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzAiXSA9IDQ4XSA9ICJfMCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzEiXSA9IDQ5XSA9ICJfMSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzIiXSA9IDUwXSA9ICJfMiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzMiXSA9IDUxXSA9ICJfMyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzQiXSA9IDUyXSA9ICJfNCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzUiXSA9IDUzXSA9ICJfNSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzYiXSA9IDU0XSA9ICJfNiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzciXSA9IDU1XSA9ICJfNyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzgiXSA9IDU2XSA9ICJfOCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiXzkiXSA9IDU3XSA9ICJfOSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYSJdID0gOTddID0gImEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImIiXSA9IDk4XSA9ICJiIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjIl0gPSA5OV0gPSAiYyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZCJdID0gMTAwXSA9ICJkIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJlIl0gPSAxMDFdID0gImUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImYiXSA9IDEwMl0gPSAiZiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZyJdID0gMTAzXSA9ICJnIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJoIl0gPSAxMDRdID0gImgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImkiXSA9IDEwNV0gPSAiaSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaiJdID0gMTA2XSA9ICJqIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJrIl0gPSAxMDddID0gImsiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImwiXSA9IDEwOF0gPSAibCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibSJdID0gMTA5XSA9ICJtIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJuIl0gPSAxMTBdID0gIm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm8iXSA9IDExMV0gPSAibyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicCJdID0gMTEyXSA9ICJwIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJxIl0gPSAxMTNdID0gInEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInIiXSA9IDExNF0gPSAiciI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicyJdID0gMTE1XSA9ICJzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ0Il0gPSAxMTZdID0gInQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInUiXSA9IDExN10gPSAidSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidiJdID0gMTE4XSA9ICJ2IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ3Il0gPSAxMTldID0gInciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIngiXSA9IDEyMF0gPSAieCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieSJdID0gMTIxXSA9ICJ5IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ6Il0gPSAxMjJdID0gInoiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkEiXSA9IDY1XSA9ICJBIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJCIl0gPSA2Nl0gPSAiQiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQyJdID0gNjddID0gIkMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkQiXSA9IDY4XSA9ICJEIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJFIl0gPSA2OV0gPSAiRSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRiJdID0gNzBdID0gIkYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkciXSA9IDcxXSA9ICJHIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJIIl0gPSA3Ml0gPSAiSCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSSJdID0gNzNdID0gIkkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkoiXSA9IDc0XSA9ICJKIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJLIl0gPSA3NV0gPSAiSyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTCJdID0gNzZdID0gIkwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk0iXSA9IDc3XSA9ICJNIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJOIl0gPSA3OF0gPSAiTiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTyJdID0gNzldID0gIk8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlAiXSA9IDgwXSA9ICJQIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJRIl0gPSA4MV0gPSAiUSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUiJdID0gODJdID0gIlIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlMiXSA9IDgzXSA9ICJTIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJUIl0gPSA4NF0gPSAiVCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVSJdID0gODVdID0gIlUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlYiXSA9IDg2XSA9ICJWIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJXIl0gPSA4N10gPSAiVyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWCJdID0gODhdID0gIlgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlkiXSA9IDg5XSA9ICJZIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJaIl0gPSA5MF0gPSAiWiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYXN0ZXJpc2siXSA9IDQyXSA9ICJhc3RlcmlzayI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYmFja3NsYXNoIl0gPSA5Ml0gPSAiYmFja3NsYXNoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNlIl0gPSAxMjVdID0gImNsb3NlQnJhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNsb3NlQnJhY2tldCJdID0gOTNdID0gImNsb3NlQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29sb24iXSA9IDU4XSA9ICJjb2xvbiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY29tbWEiXSA9IDQ0XSA9ICJjb21tYSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG90Il0gPSA0Nl0gPSAiZG90IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJkb3VibGVRdW90ZSJdID0gMzRdID0gImRvdWJsZVF1b3RlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJtaW51cyJdID0gNDVdID0gIm1pbnVzIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2UiXSA9IDEyM10gPSAib3BlbkJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvcGVuQnJhY2tldCJdID0gOTFdID0gIm9wZW5CcmFja2V0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJwbHVzIl0gPSA0M10gPSAicGx1cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsic2xhc2giXSA9IDQ3XSA9ICJzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZm9ybUZlZWQiXSA9IDEyXSA9ICJmb3JtRmVlZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidGFiIl0gPSA5XSA9ICJ0YWIiOwogICAgICB9KShDaGFyYWN0ZXJDb2RlcyB8fCAoQ2hhcmFjdGVyQ29kZXMgPSB7fSkpOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzCnZhciByZXF1aXJlX3N0cmluZ19pbnRlcm4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3N0cmluZy1pbnRlcm4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLnN1cHBvcnRlZEVvbHMgPSBleHBvcnRzMy5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlcyA9IGV4cG9ydHMzLmNhY2hlZFNwYWNlcyA9IHZvaWQgMDsKICAgICAgZXhwb3J0czMuY2FjaGVkU3BhY2VzID0gbmV3IEFycmF5KDIwKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICByZXR1cm4gIiAiLnJlcGVhdChpbmRleCk7CiAgICAgIH0pOwogICAgICBjb25zdCBtYXhDYWNoZWRWYWx1ZXMgPSAyMDA7CiAgICAgIGV4cG9ydHMzLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzID0gewogICAgICAgICIgIjogewogICAgICAgICAgIlxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcciI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyXG4iICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgIgkiOiB7CiAgICAgICAgICAiXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHIiICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcclxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHJcbiIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pCiAgICAgICAgfQogICAgICB9OwogICAgICBleHBvcnRzMy5zdXBwb3J0ZWRFb2xzID0gWyJcbiIsICJcciIsICJcclxuIl07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgc2Nhbm5lcl8xID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgc3RyaW5nX2ludGVybl8xID0gcmVxdWlyZV9zdHJpbmdfaW50ZXJuKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL3NjYW5uZXIiLCAiLi9zdHJpbmctaW50ZXJuIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNFT0wgPSBleHBvcnRzMy5mb3JtYXQgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgbGV0IGluaXRpYWxJbmRlbnRMZXZlbDsKICAgICAgICBsZXQgZm9ybWF0VGV4dDsKICAgICAgICBsZXQgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgIGxldCByYW5nZVN0YXJ0OwogICAgICAgIGxldCByYW5nZUVuZDsKICAgICAgICBpZiAocmFuZ2UpIHsKICAgICAgICAgIHJhbmdlU3RhcnQgPSByYW5nZS5vZmZzZXQ7CiAgICAgICAgICByYW5nZUVuZCA9IHJhbmdlU3RhcnQgKyByYW5nZS5sZW5ndGg7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSByYW5nZVN0YXJ0OwogICAgICAgICAgd2hpbGUgKGZvcm1hdFRleHRTdGFydCA+IDAgJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZm9ybWF0VGV4dFN0YXJ0IC0gMSkpIHsKICAgICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0LS07CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kT2Zmc2V0ID0gcmFuZ2VFbmQ7CiAgICAgICAgICB3aGlsZSAoZW5kT2Zmc2V0IDwgZG9jdW1lbnRUZXh0Lmxlbmd0aCAmJiAhaXNFT0woZG9jdW1lbnRUZXh0LCBlbmRPZmZzZXQpKSB7CiAgICAgICAgICAgIGVuZE9mZnNldCsrOwogICAgICAgICAgfQogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoZm9ybWF0VGV4dFN0YXJ0LCBlbmRPZmZzZXQpOwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gY29tcHV0ZUluZGVudExldmVsKGZvcm1hdFRleHQsIG9wdGlvbnMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3JtYXRUZXh0ID0gZG9jdW1lbnRUZXh0OwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gMDsKICAgICAgICAgIGZvcm1hdFRleHRTdGFydCA9IDA7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gMDsKICAgICAgICAgIHJhbmdlRW5kID0gZG9jdW1lbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZW9sID0gZ2V0RU9MKG9wdGlvbnMsIGRvY3VtZW50VGV4dCk7CiAgICAgICAgY29uc3QgZW9sRmFzdFBhdGhTdXBwb3J0ZWQgPSBzdHJpbmdfaW50ZXJuXzEuc3VwcG9ydGVkRW9scy5pbmNsdWRlcyhlb2wpOwogICAgICAgIGxldCBudW1iZXJMaW5lQnJlYWtzID0gMDsKICAgICAgICBsZXQgaW5kZW50TGV2ZWwgPSAwOwogICAgICAgIGxldCBpbmRlbnRWYWx1ZTsKICAgICAgICBpZiAob3B0aW9ucy5pbnNlcnRTcGFjZXMpIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tvcHRpb25zLnRhYlNpemUgfHwgNF0gPz8gcmVwZWF0MihzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdLCBvcHRpb25zLnRhYlNpemUgfHwgNCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gIgkiOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRlbnRUeXBlID0gaW5kZW50VmFsdWUgPT09ICIJIiA/ICIJIiA6ICIgIjsKICAgICAgICBsZXQgc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikoZm9ybWF0VGV4dCwgZmFsc2UpOwogICAgICAgIGxldCBoYXNFcnJvciA9IGZhbHNlOwogICAgICAgIGZ1bmN0aW9uIG5ld0xpbmVzQW5kSW5kZW50KCkgewogICAgICAgICAgaWYgKG51bWJlckxpbmVCcmVha3MgPiAxKSB7CiAgICAgICAgICAgIHJldHVybiByZXBlYXQyKGVvbCwgbnVtYmVyTGluZUJyZWFrcykgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBhbW91bnRPZlNwYWNlcyA9IGluZGVudFZhbHVlLmxlbmd0aCAqIChpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICBpZiAoIWVvbEZhc3RQYXRoU3VwcG9ydGVkIHx8IGFtb3VudE9mU3BhY2VzID4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF0ubGVuZ3RoKSB7CiAgICAgICAgICAgIHJldHVybiBlb2wgKyByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYW1vdW50T2ZTcGFjZXMgPD0gMCkgewogICAgICAgICAgICByZXR1cm4gZW9sOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdW2Ftb3VudE9mU3BhY2VzXTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICBsZXQgdG9rZW4gPSBzY2FubmVyLnNjYW4oKTsKICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAwOwogICAgICAgICAgd2hpbGUgKHRva2VuID09PSAxNSB8fCB0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgaWYgKHRva2VuID09PSAxNCAmJiBvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgKz0gMTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgICBudW1iZXJMaW5lQnJlYWtzID0gMTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgfQogICAgICAgICAgaGFzRXJyb3IgPSB0b2tlbiA9PT0gMTYgfHwgc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkgIT09IDA7CiAgICAgICAgICByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRPcGVyYXRpb25zID0gW107CiAgICAgICAgZnVuY3Rpb24gYWRkRWRpdCh0ZXh0LCBzdGFydE9mZnNldCwgZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yICYmICghcmFuZ2UgfHwgc3RhcnRPZmZzZXQgPCByYW5nZUVuZCAmJiBlbmRPZmZzZXQgPiByYW5nZVN0YXJ0KSAmJiBkb2N1bWVudFRleHQuc3Vic3RyaW5nKHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpICE9PSB0ZXh0KSB7CiAgICAgICAgICAgIGVkaXRPcGVyYXRpb25zLnB1c2goewogICAgICAgICAgICAgIG9mZnNldDogc3RhcnRPZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoOiBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBsZXQgZmlyc3RUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICBhZGRFZGl0KHJlcGVhdDIoZW9sLCBudW1iZXJMaW5lQnJlYWtzKSwgMCwgMCk7CiAgICAgICAgfQogICAgICAgIGlmIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGxldCBpbml0aWFsSW5kZW50ID0gaW5kZW50VmFsdWUubGVuZ3RoICogaW5pdGlhbEluZGVudExldmVsIDwgMjAgJiYgb3B0aW9ucy5pbnNlcnRTcGFjZXMgPyBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzW2luZGVudFZhbHVlLmxlbmd0aCAqIGluaXRpYWxJbmRlbnRMZXZlbF0gOiByZXBlYXQyKGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwpOwogICAgICAgICAgYWRkRWRpdChpbml0aWFsSW5kZW50LCBmb3JtYXRUZXh0U3RhcnQsIGZpcnN0VG9rZW5TdGFydCk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IHJlcGxhY2VDb250ZW50ID0gIiI7CiAgICAgICAgICBsZXQgbmVlZHNMaW5lQnJlYWsgPSBmYWxzZTsKICAgICAgICAgIHdoaWxlIChudW1iZXJMaW5lQnJlYWtzID09PSAwICYmIChzZWNvbmRUb2tlbiA9PT0gMTIgfHwgc2Vjb25kVG9rZW4gPT09IDEzKSkgewogICAgICAgICAgICBsZXQgY29tbWVudFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIGFkZEVkaXQoCiAgICAgICAgICAgICAgc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXSwKICAgICAgICAgICAgICBmaXJzdFRva2VuRW5kLAogICAgICAgICAgICAgIGNvbW1lbnRUb2tlblN0YXJ0CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIG5lZWRzTGluZUJyZWFrID0gc2Vjb25kVG9rZW4gPT09IDEyOwogICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5lZWRzTGluZUJyZWFrID8gbmV3TGluZXNBbmRJbmRlbnQoKSA6ICIiOwogICAgICAgICAgICBzZWNvbmRUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDIpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMSkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNCkgewogICAgICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIGluZGVudExldmVsLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcyAmJiBmaXJzdFRva2VuICE9PSAzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzd2l0Y2ggKGZpcnN0VG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgaW5kZW50TGV2ZWwrKzsKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuID09PSA2ICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlmICgoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykgJiYgIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuICE9PSA1ICYmIHNlY29uZFRva2VuICE9PSAxNykgewogICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzZWNvbmRUb2tlbiA9PT0gMTcpIHsKICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gb3B0aW9ucy5pbnNlcnRGaW5hbE5ld2xpbmUgPyBlb2wgOiAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2Vjb25kVG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGFkZEVkaXQocmVwbGFjZUNvbnRlbnQsIGZpcnN0VG9rZW5FbmQsIHNlY29uZFRva2VuU3RhcnQpOwogICAgICAgICAgZmlyc3RUb2tlbiA9IHNlY29uZFRva2VuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZWRpdE9wZXJhdGlvbnM7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiByZXBlYXQyKHMsIGNvdW50KSB7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykgewogICAgICAgICAgcmVzdWx0ICs9IHM7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY29tcHV0ZUluZGVudExldmVsKGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgbGV0IG5DaGFycyA9IDA7CiAgICAgICAgY29uc3QgdGFiU2l6ZSA9IG9wdGlvbnMudGFiU2l6ZSB8fCA0OwogICAgICAgIHdoaWxlIChpIDwgY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGxldCBjaCA9IGNvbnRlbnQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdKSB7CiAgICAgICAgICAgIG5DaGFycysrOwogICAgICAgICAgfSBlbHNlIGlmIChjaCA9PT0gIgkiKSB7CiAgICAgICAgICAgIG5DaGFycyArPSB0YWJTaXplOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBNYXRoLmZsb29yKG5DaGFycyAvIHRhYlNpemUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdldEVPTChvcHRpb25zLCB0ZXh0KSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSAiXHIiKSB7CiAgICAgICAgICAgIGlmIChpICsgMSA8IHRleHQubGVuZ3RoICYmIHRleHQuY2hhckF0KGkgKyAxKSA9PT0gIlxuIikgewogICAgICAgICAgICAgIHJldHVybiAiXHJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJcciI7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiXG4iKSB7CiAgICAgICAgICAgIHJldHVybiAiXG4iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3B0aW9ucyAmJiBvcHRpb25zLmVvbCB8fCAiXG4iOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRU9MKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNFT0wgPSBpc0VPTDsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzCnZhciByZXF1aXJlX3BhcnNlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlMikgewogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5vZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lmxlbmd0aCA9IGxlbmd0aDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QudHlwZSA9IHR5cGUyOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC5jb2xvbk9mZnNldCA9IHZvaWQgMDsKICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHByZXZpb3VzTm9kZUluc3Q7CiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICB2aXNpdCh0ZXh0LCB7CiAgICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gcG9zaXRpb24gPiBvZmZzZXQ7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgiIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZShuYW1lLCBvZmZzZXQsIGxlbmd0aCwgInByb3BlcnR5Iik7CiAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBuYW1lOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucG9wKCk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wdXNoKDApOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogKHZhbHVlLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHNldFByZXZpb3VzTm9kZSh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgsIGdldE5vZGVUeXBlKHZhbHVlKSk7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCArIGxlbmd0aCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBvblNlcGFyYXRvcjogKHNlcCwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiICYmIHByZXZpb3VzTm9kZSAmJiBwcmV2aW91c05vZGUudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlLmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBsYXN0ID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgICAgICBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXSA9IGxhc3QgKyAxOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgaXNBdFByb3BlcnR5S2V5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSAiIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlICE9PSBlYXJseVJldHVybkV4Y2VwdGlvbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgcGF0aDogc2VnbWVudHMsCiAgICAgICAgICBwcmV2aW91c05vZGUsCiAgICAgICAgICBpc0F0UHJvcGVydHlLZXksCiAgICAgICAgICBtYXRjaGVzOiAocGF0dGVybikgPT4gewogICAgICAgICAgICBsZXQgayA9IDA7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBrIDwgcGF0dGVybi5sZW5ndGggJiYgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgaWYgKHBhdHRlcm5ba10gPT09IHNlZ21lbnRzW2ldIHx8IHBhdHRlcm5ba10gPT09ICIqIikgewogICAgICAgICAgICAgICAgaysrOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocGF0dGVybltrXSAhPT0gIioqIikgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gayA9PT0gcGF0dGVybi5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IGdldExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBwYXJzZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSBbXTsKICAgICAgICBjb25zdCBwcmV2aW91c1BhcmVudHMgPSBbXTsKICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlKSB7CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyZW50UGFyZW50KSkgewogICAgICAgICAgICBjdXJyZW50UGFyZW50LnB1c2godmFsdWUpOwogICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50UHJvcGVydHkgIT09IG51bGwpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudFtjdXJyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZpc2l0b3IgPSB7CiAgICAgICAgICBvbk9iamVjdEJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IG9iamVjdCA9IHt9OwogICAgICAgICAgICBvblZhbHVlKG9iamVjdCk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb2JqZWN0OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0UHJvcGVydHk6IChuYW1lKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG5hbWU7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5QmVnaW46ICgpID0+IHsKICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBbXTsKICAgICAgICAgICAgb25WYWx1ZShhcnJheSk7CiAgICAgICAgICAgIHByZXZpb3VzUGFyZW50cy5wdXNoKGN1cnJlbnRQYXJlbnQpOwogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gYXJyYXk7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eSA9IG51bGw7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gcHJldmlvdXNQYXJlbnRzLnBvcCgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiBvblZhbHVlLAogICAgICAgICAgb25FcnJvcjogKGVycm9yLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlcnJvcnMucHVzaCh7IGVycm9yLCBvZmZzZXQsIGxlbmd0aCB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZpc2l0KHRleHQsIHZpc2l0b3IsIG9wdGlvbnMpOwogICAgICAgIHJldHVybiBjdXJyZW50UGFyZW50WzBdOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlID0gcGFyc2U7CiAgICAgIGZ1bmN0aW9uIHBhcnNlVHJlZSh0ZXh0LCBlcnJvcnMgPSBbXSwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgbGV0IGN1cnJlbnRQYXJlbnQgPSB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgb2Zmc2V0OiAtMSwKICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICBjaGlsZHJlbjogW10sCiAgICAgICAgICBwYXJlbnQ6IHZvaWQgMAogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW5zdXJlUHJvcGVydHlDb21wbGV0ZShlbmRPZmZzZXQpIHsKICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBlbmRPZmZzZXQgLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBvblZhbHVlKHZhbHVlTm9kZSkgewogICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHZhbHVlTm9kZSk7CiAgICAgICAgICByZXR1cm4gdmFsdWVOb2RlOwogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKG9mZnNldCkgPT4gewogICAgICAgICAgICBjdXJyZW50UGFyZW50ID0gb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJwcm9wZXJ0eSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgICAgICB2YWx1ZTogbmFtZSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdEVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0ICsgbGVuZ3RoKTsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aDogLTEsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkFycmF5RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5sZW5ndGggPSBvZmZzZXQgKyBsZW5ndGggLSBjdXJyZW50UGFyZW50Lm9mZnNldDsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGN1cnJlbnRQYXJlbnQucGFyZW50OwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgb25WYWx1ZSh7CiAgICAgICAgICAgICAgdHlwZTogZ2V0Tm9kZVR5cGUodmFsdWUpLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGgsCiAgICAgICAgICAgICAgcGFyZW50OiBjdXJyZW50UGFyZW50LAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGlmIChjdXJyZW50UGFyZW50LnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICBpZiAoc2VwID09PSAiOiIpIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY29sb25PZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZXAgPT09ICIsIikgewogICAgICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICBjb25zdCByZXN1bHQgPSBjdXJyZW50UGFyZW50LmNoaWxkcmVuWzBdOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIGRlbGV0ZSByZXN1bHQucGFyZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlVHJlZTsKICAgICAgZnVuY3Rpb24gZmluZE5vZGVBdExvY2F0aW9uKHJvb3QsIHBhdGgpIHsKICAgICAgICBpZiAoIXJvb3QpIHsKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIGxldCBub2RlID0gcm9vdDsKICAgICAgICBmb3IgKGxldCBzZWdtZW50IG9mIHBhdGgpIHsKICAgICAgICAgIGlmICh0eXBlb2Ygc2VnbWVudCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gIm9iamVjdCIgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5Tm9kZSBvZiBub2RlLmNoaWxkcmVuKSB7CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocHJvcGVydHlOb2RlLmNoaWxkcmVuKSAmJiBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMF0udmFsdWUgPT09IHNlZ21lbnQgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMikgewogICAgICAgICAgICAgICAgbm9kZSA9IHByb3BlcnR5Tm9kZS5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIWZvdW5kKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBzZWdtZW50OwogICAgICAgICAgICBpZiAobm9kZS50eXBlICE9PSAiYXJyYXkiIHx8IGluZGV4IDwgMCB8fCAhQXJyYXkuaXNBcnJheShub2RlLmNoaWxkcmVuKSB8fCBpbmRleCA+PSBub2RlLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbm9kZSA9IG5vZGUuY2hpbGRyZW5baW5kZXhdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBmaW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVQYXRoKG5vZGUpIHsKICAgICAgICBpZiAoIW5vZGUucGFyZW50IHx8ICFub2RlLnBhcmVudC5jaGlsZHJlbikgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoID0gZ2V0Tm9kZVBhdGgobm9kZS5wYXJlbnQpOwogICAgICAgIGlmIChub2RlLnBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICBjb25zdCBrZXkgPSBub2RlLnBhcmVudC5jaGlsZHJlblswXS52YWx1ZTsKICAgICAgICAgIHBhdGgucHVzaChrZXkpOwogICAgICAgIH0gZWxzZSBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gImFycmF5IikgewogICAgICAgICAgY29uc3QgaW5kZXggPSBub2RlLnBhcmVudC5jaGlsZHJlbi5pbmRleE9mKG5vZGUpOwogICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBwYXRoLnB1c2goaW5kZXgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcGF0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGdldE5vZGVQYXRoOwogICAgICBmdW5jdGlvbiBnZXROb2RlVmFsdWUobm9kZSkgewogICAgICAgIHN3aXRjaCAobm9kZS50eXBlKSB7CiAgICAgICAgICBjYXNlICJhcnJheSI6CiAgICAgICAgICAgIHJldHVybiBub2RlLmNoaWxkcmVuLm1hcChnZXROb2RlVmFsdWUpOwogICAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgICAgY29uc3Qgb2JqID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICAgIGZvciAobGV0IHByb3Agb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHByb3AuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgaWYgKHZhbHVlTm9kZSkgewogICAgICAgICAgICAgICAgb2JqW3Byb3AuY2hpbGRyZW5bMF0udmFsdWVdID0gZ2V0Tm9kZVZhbHVlKHZhbHVlTm9kZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBvYmo7CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiBub2RlLnZhbHVlOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVZhbHVlID0gZ2V0Tm9kZVZhbHVlOwogICAgICBmdW5jdGlvbiBjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kID0gZmFsc2UpIHsKICAgICAgICByZXR1cm4gb2Zmc2V0ID49IG5vZGUub2Zmc2V0ICYmIG9mZnNldCA8IG5vZGUub2Zmc2V0ICsgbm9kZS5sZW5ndGggfHwgaW5jbHVkZVJpZ2h0Qm91bmQgJiYgb2Zmc2V0ID09PSBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmNvbnRhaW5zID0gY29udGFpbnM7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRPZmZzZXQobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgaWYgKGNvbnRhaW5zKG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpKSB7CiAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUuY2hpbGRyZW47CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGggJiYgY2hpbGRyZW5baV0ub2Zmc2V0IDw9IG9mZnNldDsgaSsrKSB7CiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IGZpbmROb2RlQXRPZmZzZXQoY2hpbGRyZW5baV0sIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQpOwogICAgICAgICAgICAgIGlmIChpdGVtKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBub2RlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBmaW5kTm9kZUF0T2Zmc2V0OwogICAgICBmdW5jdGlvbiB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zID0gUGFyc2VPcHRpb25zLkRFRkFVTFQpIHsKICAgICAgICBjb25zdCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCwgZmFsc2UpOwogICAgICAgIGNvbnN0IF9qc29uUGF0aCA9IFtdOwogICAgICAgIGxldCBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMDsKICAgICAgICBmdW5jdGlvbiB0b05vQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoYXJnKSA9PiBzdXBwcmVzc2VkQ2FsbGJhY2tzID09PSAwICYmIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgIGFyZywKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0JlZ2luVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MrKzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBsZXQgY2JSZXR1cm4gPSB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpLAogICAgICAgICAgICAgICAgKCkgPT4gX2pzb25QYXRoLnNsaWNlKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIGlmIChjYlJldHVybiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MgPSAxOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvRW5kVmlzaXQodmlzaXRGdW5jdGlvbikgewogICAgICAgICAgcmV0dXJuIHZpc2l0RnVuY3Rpb24gPyAoKSA9PiB7CiAgICAgICAgICAgIGlmIChzdXBwcmVzc2VkQ2FsbGJhY2tzID4gMCkgewogICAgICAgICAgICAgIHN1cHByZXNzZWRDYWxsYmFja3MtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCkgewogICAgICAgICAgICAgIHZpc2l0RnVuY3Rpb24oCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5MZW5ndGgoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgb25PYmplY3RCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uT2JqZWN0QmVnaW4pLCBvbk9iamVjdFByb3BlcnR5ID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25PYmplY3RQcm9wZXJ0eSksIG9uT2JqZWN0RW5kID0gdG9FbmRWaXNpdCh2aXNpdG9yLm9uT2JqZWN0RW5kKSwgb25BcnJheUJlZ2luID0gdG9CZWdpblZpc2l0KHZpc2l0b3Iub25BcnJheUJlZ2luKSwgb25BcnJheUVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbkFycmF5RW5kKSwgb25MaXRlcmFsVmFsdWUgPSB0b09uZUFyZ1Zpc2l0V2l0aFBhdGgodmlzaXRvci5vbkxpdGVyYWxWYWx1ZSksIG9uU2VwYXJhdG9yID0gdG9PbmVBcmdWaXNpdCh2aXNpdG9yLm9uU2VwYXJhdG9yKSwgb25Db21tZW50ID0gdG9Ob0FyZ1Zpc2l0KHZpc2l0b3Iub25Db21tZW50KSwgb25FcnJvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vbkVycm9yKTsKICAgICAgICBjb25zdCBkaXNhbGxvd0NvbW1lbnRzID0gb3B0aW9ucyAmJiBvcHRpb25zLmRpc2FsbG93Q29tbWVudHM7CiAgICAgICAgY29uc3QgYWxsb3dUcmFpbGluZ0NvbW1hID0gb3B0aW9ucyAmJiBvcHRpb25zLmFsbG93VHJhaWxpbmdDb21tYTsKICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gX3NjYW5uZXIuc2NhbigpOwogICAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuRXJyb3IoKSkgewogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNAogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkVW5pY29kZSAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxNQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkRXNjYXBlQ2hhcmFjdGVyICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDEzCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZk51bWJlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgIGlmICghZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMQogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQgKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZTdHJpbmcgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTYKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZENoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN3aXRjaCAodG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICBpZiAoZGlzYWxsb3dDb21tZW50cykgewogICAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAxMAogICAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDb21tZW50VG9rZW4gKi8KICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRTeW1ib2wgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE1OgogICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBza2lwVW50aWxBZnRlciA9IFtdLCBza2lwVW50aWwgPSBbXSkgewogICAgICAgICAgb25FcnJvcihlcnJvcik7CiAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIubGVuZ3RoICsgc2tpcFVudGlsLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGV0IHRva2VuID0gX3NjYW5uZXIuZ2V0VG9rZW4oKTsKICAgICAgICAgICAgd2hpbGUgKHRva2VuICE9PSAxNykgewogICAgICAgICAgICAgIGlmIChza2lwVW50aWxBZnRlci5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNraXBVbnRpbC5pbmRleE9mKHRva2VuKSAhPT0gLTEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0b2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VTdHJpbmcoaXNWYWx1ZSkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBfc2Nhbm5lci5nZXRUb2tlblZhbHVlKCk7CiAgICAgICAgICBpZiAoaXNWYWx1ZSkgewogICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5KHZhbHVlKTsKICAgICAgICAgICAgX2pzb25QYXRoLnB1c2godmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUxpdGVyYWwoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjb25zdCB0b2tlblZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE51bWJlcih0b2tlblZhbHVlKTsKICAgICAgICAgICAgICBpZiAoaXNOYU4odmFsdWUpKSB7CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMgogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkTnVtYmVyRm9ybWF0ICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgdmFsdWUgPSAwOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZShudWxsKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKHRydWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUoZmFsc2UpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VQcm9wZXJ0eSgpIHsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxMCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAzLAogICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNvbW1hVG9rZW4gKi8KICAgICAgICAgICAgICBdCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcnNlU3RyaW5nKGZhbHNlKTsKICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA2KSB7CiAgICAgICAgICAgIG9uU2VwYXJhdG9yKCI6Iik7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNSwKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlT2JqZWN0KCkgewogICAgICAgICAgb25PYmplY3RCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMiAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAyICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VQcm9wZXJ0eSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uT2JqZWN0RW5kKCk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMikgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA3LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFjZVRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZUFycmF5KCkgewogICAgICAgICAgb25BcnJheUJlZ2luKCk7CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IGlzRmlyc3RFbGVtZW50ID0gdHJ1ZTsKICAgICAgICAgIGxldCBuZWVkc0NvbW1hID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCAmJiBfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNSkgewogICAgICAgICAgICAgIGlmICghbmVlZHNDb21tYSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25TZXBhcmF0b3IoIiwiKTsKICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSA0ICYmIGFsbG93VHJhaWxpbmdDb21tYSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKG5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICBoYW5kbGVFcnJvcig2LCBbXSwgW10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKDApOwogICAgICAgICAgICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2U7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX2pzb25QYXRoW19qc29uUGF0aC5sZW5ndGggLSAxXSsrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcGFyc2VWYWx1ZSgpKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgIDQsCiAgICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5lZWRzQ29tbWEgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgb25BcnJheUVuZCgpOwogICAgICAgICAgaWYgKCFpc0ZpcnN0RWxlbWVudCkgewogICAgICAgICAgICBfanNvblBhdGgucG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gNCkgewogICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICA4LAogICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgIDQKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ2xvc2VCcmFja2V0VG9rZW4gKi8KICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgIFtdCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlVmFsdWUoKSB7CiAgICAgICAgICBzd2l0Y2ggKF9zY2FubmVyLmdldFRva2VuKCkpIHsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUFycmF5KCk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VPYmplY3QoKTsKICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VTdHJpbmcodHJ1ZSk7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlTGl0ZXJhbCgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpID09PSAxNykgewogICAgICAgICAgaWYgKG9wdGlvbnMuYWxsb3dFbXB0eUNvbnRlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBoYW5kbGVFcnJvcig0LCBbXSwgW10pOwogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDE3KSB7CiAgICAgICAgICBoYW5kbGVFcnJvcig5LCBbXSwgW10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBleHBvcnRzMy52aXNpdCA9IHZpc2l0OwogICAgICBmdW5jdGlvbiBzdHJpcENvbW1lbnRzKHRleHQsIHJlcGxhY2VDaCkgewogICAgICAgIGxldCBfc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikodGV4dCksIHBhcnRzID0gW10sIGtpbmQsIG9mZnNldCA9IDAsIHBvczsKICAgICAgICBkbyB7CiAgICAgICAgICBwb3MgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAga2luZCA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgIHN3aXRjaCAoa2luZCkgewogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICBjYXNlIDE3OgogICAgICAgICAgICAgIGlmIChvZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgcGFydHMucHVzaCh0ZXh0LnN1YnN0cmluZyhvZmZzZXQsIHBvcykpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAocmVwbGFjZUNoICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2goX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpLnJlcGxhY2UoL1teXHJcbl0vZywgcmVwbGFjZUNoKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9mZnNldCA9IF9zY2FubmVyLmdldFBvc2l0aW9uKCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoa2luZCAhPT0gMTcpOwogICAgICAgIHJldHVybiBwYXJ0cy5qb2luKCIiKTsKICAgICAgfQogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gc3RyaXBDb21tZW50czsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVR5cGUodmFsdWUpIHsKICAgICAgICBzd2l0Y2ggKHR5cGVvZiB2YWx1ZSkgewogICAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7CiAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICByZXR1cm4gIm51bWJlciI7CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICByZXR1cm4gInN0cmluZyI7CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGlmICghdmFsdWUpIHsKICAgICAgICAgICAgICByZXR1cm4gIm51bGwiOwogICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJvYmplY3QiOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBnZXROb2RlVHlwZTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcwp2YXIgcmVxdWlyZV9lZGl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9lZGl0LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgcGFyc2VyXzEgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9mb3JtYXQiLCAiLi9wYXJzZXIiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5pc1dTID0gZXhwb3J0czMuYXBwbHlFZGl0ID0gZXhwb3J0czMuc2V0UHJvcGVydHkgPSBleHBvcnRzMy5yZW1vdmVQcm9wZXJ0eSA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gcmVtb3ZlUHJvcGVydHkodGV4dCwgcGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBzZXRQcm9wZXJ0eSh0ZXh0LCBwYXRoLCB2b2lkIDAsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLnJlbW92ZVByb3BlcnR5ID0gcmVtb3ZlUHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHNldFByb3BlcnR5KHRleHQsIG9yaWdpbmFsUGF0aCwgdmFsdWUsIG9wdGlvbnMpIHsKICAgICAgICBjb25zdCBwYXRoID0gb3JpZ2luYWxQYXRoLnNsaWNlKCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCBwYXJzZXJfMS5wYXJzZVRyZWUpKHRleHQsIGVycm9ycyk7CiAgICAgICAgbGV0IHBhcmVudCA9IHZvaWQgMDsKICAgICAgICBsZXQgbGFzdFNlZ21lbnQgPSB2b2lkIDA7CiAgICAgICAgd2hpbGUgKHBhdGgubGVuZ3RoID4gMCkgewogICAgICAgICAgbGFzdFNlZ21lbnQgPSBwYXRoLnBvcCgpOwogICAgICAgICAgcGFyZW50ID0gKDAsIHBhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocm9vdCwgcGF0aCk7CiAgICAgICAgICBpZiAocGFyZW50ID09PSB2b2lkIDAgJiYgdmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodHlwZW9mIGxhc3RTZWdtZW50ID09PSAic3RyaW5nIikgewogICAgICAgICAgICAgIHZhbHVlID0geyBbbGFzdFNlZ21lbnRdOiB2YWx1ZSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghcGFyZW50KSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNhbiBub3QgZGVsZXRlIGluIGVtcHR5IGRvY3VtZW50Iik7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBvZmZzZXQ6IHJvb3QgPyByb290Lm9mZnNldCA6IDAsCiAgICAgICAgICAgICAgbGVuZ3RoOiByb290ID8gcm9vdC5sZW5ndGggOiAwLAogICAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHZhbHVlKQogICAgICAgICAgICB9LAogICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICApOwogICAgICAgIH0gZWxzZSBpZiAocGFyZW50LnR5cGUgPT09ICJvYmplY3QiICYmIHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gInN0cmluZyIgJiYgQXJyYXkuaXNBcnJheShwYXJlbnQuY2hpbGRyZW4pKSB7CiAgICAgICAgICBjb25zdCBleGlzdGluZyA9ICgwLCBwYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHBhcmVudCwgW2xhc3RTZWdtZW50XSk7CiAgICAgICAgICBpZiAoZXhpc3RpbmcgIT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGlmICghZXhpc3RpbmcucGFyZW50KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk1hbGZvcm1lZCBBU1QiKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleCA9IHBhcmVudC5jaGlsZHJlbi5pbmRleE9mKGV4aXN0aW5nLnBhcmVudCk7CiAgICAgICAgICAgICAgbGV0IHJlbW92ZUJlZ2luOwogICAgICAgICAgICAgIGxldCByZW1vdmVFbmQgPSBleGlzdGluZy5wYXJlbnQub2Zmc2V0ICsgZXhpc3RpbmcucGFyZW50Lmxlbmd0aDsKICAgICAgICAgICAgICBpZiAocHJvcGVydHlJbmRleCA+IDApIHsKICAgICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltwcm9wZXJ0eUluZGV4IC0gMV07CiAgICAgICAgICAgICAgICByZW1vdmVCZWdpbiA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmVtb3ZlQmVnaW4gPSBwYXJlbnQub2Zmc2V0ICsgMTsKICAgICAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gMSkgewogICAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHBhcmVudC5jaGlsZHJlblsxXTsKICAgICAgICAgICAgICAgICAgcmVtb3ZlRW5kID0gbmV4dC5vZmZzZXQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG9mZnNldDogcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogcmVtb3ZlRW5kIC0gcmVtb3ZlQmVnaW4sCiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBleGlzdGluZy5vZmZzZXQsCiAgICAgICAgICAgICAgICAgIGxlbmd0aDogZXhpc3RpbmcubGVuZ3RoLAogICAgICAgICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeShsYXN0U2VnbWVudCl9OiAke0pTT04uc3RyaW5naWZ5KAogICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICl9YDsKICAgICAgICAgICAgY29uc3QgaW5kZXggPSBvcHRpb25zLmdldEluc2VydGlvbkluZGV4ID8gb3B0aW9ucy5nZXRJbnNlcnRpb25JbmRleCgKICAgICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4ubWFwKChwKSA9PiBwLmNoaWxkcmVuWzBdLnZhbHVlKQogICAgICAgICAgICApIDogcGFyZW50LmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChpbmRleCA+IDApIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5baW5kZXggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsIGxlbmd0aDogMCwgY29udGVudDogbmV3UHJvcGVydHkgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQudHlwZSA9PT0gImFycmF5IiAmJiB0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJudW1iZXIiICYmIEFycmF5LmlzQXJyYXkocGFyZW50LmNoaWxkcmVuKSkgewogICAgICAgICAgY29uc3QgaW5zZXJ0SW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgIGlmIChpbnNlcnRJbmRleCA9PT0gLTEpIHsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwgbGVuZ3RoOiAwLCBjb250ZW50OiBuZXdQcm9wZXJ0eSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3BhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gdm9pZCAwICYmIHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPj0gMCkgewogICAgICAgICAgICBjb25zdCByZW1vdmFsSW5kZXggPSBsYXN0U2VnbWVudDsKICAgICAgICAgICAgY29uc3QgdG9SZW1vdmUgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4XTsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHBhcmVudC5sZW5ndGggLSAyLAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggLSAxID09PSByZW1vdmFsSW5kZXgpIHsKICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4IC0gMV07CiAgICAgICAgICAgICAgbGV0IG9mZnNldCA9IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aDsKICAgICAgICAgICAgICBsZXQgcGFyZW50RW5kT2Zmc2V0ID0gcGFyZW50Lm9mZnNldCArIHBhcmVudC5sZW5ndGg7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0LCBsZW5ndGg6IHBhcmVudEVuZE9mZnNldCAtIDIgLSBvZmZzZXQsIGNvbnRlbnQ6ICIiIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgbGVuZ3RoOiBwYXJlbnQuY2hpbGRyZW5bcmVtb3ZhbEluZGV4ICsgMV0ub2Zmc2V0IC0gdG9SZW1vdmUub2Zmc2V0LAogICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgY29uc3QgbmV3UHJvcGVydHkgPSBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKICAgICAgICAgICAgaWYgKCFvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gJiYgcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+IGxhc3RTZWdtZW50KSB7CiAgICAgICAgICAgICAgY29uc3QgdG9Nb2RpZnkgPSBwYXJlbnQuY2hpbGRyZW5bbGFzdFNlZ21lbnRdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvTW9kaWZ5Lm9mZnNldCwKICAgICAgICAgICAgICAgIGxlbmd0aDogdG9Nb2RpZnkubGVuZ3RoLAogICAgICAgICAgICAgICAgY29udGVudDogbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgbGFzdFNlZ21lbnQgPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDAgPyBuZXdQcm9wZXJ0eSA6IG5ld1Byb3BlcnR5ICsgIiwiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGxhc3RTZWdtZW50ID4gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA/IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggOiBsYXN0U2VnbWVudDsKICAgICAgICAgICAgICBjb25zdCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltpbmRleCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYENhbiBub3QgJHt2YWx1ZSA9PT0gdm9pZCAwID8gInJlbW92ZSIgOiBvcHRpb25zLmlzQXJyYXlJbnNlcnRpb24gPyAiaW5zZXJ0IiA6ICJtb2RpZnkifSBBcnJheSBpbmRleCAke2luc2VydEluZGV4fSBhcyBsZW5ndGggaXMgbm90IHN1ZmZpY2llbnRgCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbiBub3QgYWRkICR7dHlwZW9mIGxhc3RTZWdtZW50ICE9PSAibnVtYmVyIiA/ICJpbmRleCIgOiAicHJvcGVydHkifSB0byBwYXJlbnQgb2YgdHlwZSAke3BhcmVudC50eXBlfWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLnNldFByb3BlcnR5ID0gc2V0UHJvcGVydHk7CiAgICAgIGZ1bmN0aW9uIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpIHsKICAgICAgICBpZiAoIW9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMpIHsKICAgICAgICAgIHJldHVybiBbZWRpdF07CiAgICAgICAgfQogICAgICAgIGxldCBuZXdUZXh0ID0gYXBwbHlFZGl0KHRleHQsIGVkaXQpOwogICAgICAgIGxldCBiZWdpbiA9IGVkaXQub2Zmc2V0OwogICAgICAgIGxldCBlbmQgPSBlZGl0Lm9mZnNldCArIGVkaXQuY29udGVudC5sZW5ndGg7CiAgICAgICAgaWYgKGVkaXQubGVuZ3RoID09PSAwIHx8IGVkaXQuY29udGVudC5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHdoaWxlIChiZWdpbiA+IDAgJiYgISgwLCBmb3JtYXRfMS5pc0VPTCkobmV3VGV4dCwgYmVnaW4gLSAxKSkgewogICAgICAgICAgICBiZWdpbi0tOwogICAgICAgICAgfQogICAgICAgICAgd2hpbGUgKGVuZCA8IG5ld1RleHQubGVuZ3RoICYmICEoMCwgZm9ybWF0XzEuaXNFT0wpKG5ld1RleHQsIGVuZCkpIHsKICAgICAgICAgICAgZW5kKys7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRzID0gKDAsIGZvcm1hdF8xLmZvcm1hdCkoCiAgICAgICAgICBuZXdUZXh0LAogICAgICAgICAgeyBvZmZzZXQ6IGJlZ2luLCBsZW5ndGg6IGVuZCAtIGJlZ2luIH0sCiAgICAgICAgICB7IC4uLm9wdGlvbnMuZm9ybWF0dGluZ09wdGlvbnMsIGtlZXBMaW5lczogZmFsc2UgfQogICAgICAgICk7CiAgICAgICAgZm9yIChsZXQgaSA9IGVkaXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICBjb25zdCBlZGl0MiA9IGVkaXRzW2ldOwogICAgICAgICAgbmV3VGV4dCA9IGFwcGx5RWRpdChuZXdUZXh0LCBlZGl0Mik7CiAgICAgICAgICBiZWdpbiA9IE1hdGgubWluKGJlZ2luLCBlZGl0Mi5vZmZzZXQpOwogICAgICAgICAgZW5kID0gTWF0aC5tYXgoZW5kLCBlZGl0Mi5vZmZzZXQgKyBlZGl0Mi5sZW5ndGgpOwogICAgICAgICAgZW5kICs9IGVkaXQyLmNvbnRlbnQubGVuZ3RoIC0gZWRpdDIubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0TGVuZ3RoID0gdGV4dC5sZW5ndGggLSAobmV3VGV4dC5sZW5ndGggLSBlbmQpIC0gYmVnaW47CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIHsKICAgICAgICAgICAgb2Zmc2V0OiBiZWdpbiwKICAgICAgICAgICAgbGVuZ3RoOiBlZGl0TGVuZ3RoLAogICAgICAgICAgICBjb250ZW50OiBuZXdUZXh0LnN1YnN0cmluZyhiZWdpbiwgZW5kKQogICAgICAgICAgfQogICAgICAgIF07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYXBwbHlFZGl0KHRleHQsIGVkaXQpIHsKICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgZWRpdC5vZmZzZXQpICsgZWRpdC5jb250ZW50ICsgdGV4dC5zdWJzdHJpbmcoZWRpdC5vZmZzZXQgKyBlZGl0Lmxlbmd0aCk7CiAgICAgIH0KICAgICAgZXhwb3J0czMuYXBwbHlFZGl0ID0gYXBwbHlFZGl0OwogICAgICBmdW5jdGlvbiBpc1dTKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiAJIi5pbmRleE9mKHRleHQuY2hhckF0KG9mZnNldCkpICE9PSAtMTsKICAgICAgfQogICAgICBleHBvcnRzMy5pc1dTID0gaXNXUzsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMKdmFyIHJlcXVpcmVfbWFpbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0dGVyID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgZWRpdCA9IHJlcXVpcmVfZWRpdCgpOwogICAgdmFyIHNjYW5uZXIgPSByZXF1aXJlX3NjYW5uZXIoKTsKICAgIHZhciBwYXJzZXIgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWwogICAgICAgICAgInJlcXVpcmUiLAogICAgICAgICAgImV4cG9ydHMiLAogICAgICAgICAgIi4vaW1wbC9mb3JtYXQiLAogICAgICAgICAgIi4vaW1wbC9lZGl0IiwKICAgICAgICAgICIuL2ltcGwvc2Nhbm5lciIsCiAgICAgICAgICAiLi9pbXBsL3BhcnNlciIKICAgICAgICBdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdHMgPSBleHBvcnRzMy5tb2RpZnkgPSBleHBvcnRzMy5mb3JtYXQgPSBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBleHBvcnRzMy5wYXJzZVRyZWUgPSBleHBvcnRzMy5wYXJzZSA9IGV4cG9ydHMzLmdldExvY2F0aW9uID0gZXhwb3J0czMuU3ludGF4S2luZCA9IGV4cG9ydHMzLlNjYW5FcnJvciA9IGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSBzY2FubmVyLmNyZWF0ZVNjYW5uZXI7CiAgICAgIHZhciBTY2FuRXJyb3I7CiAgICAgIChmdW5jdGlvbihTY2FuRXJyb3IyKSB7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJOb25lIl0gPSAwXSA9ICJOb25lIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mU3RyaW5nIl0gPSAyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAzXSA9ICJVbmV4cGVjdGVkRW5kT2ZOdW1iZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZFVuaWNvZGUiXSA9IDRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiXSA9IDVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZENoYXJhY3RlciJdID0gNl0gPSAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgIH0pKFNjYW5FcnJvciB8fCAoZXhwb3J0czMuU2NhbkVycm9yID0gU2NhbkVycm9yID0ge30pKTsKICAgICAgdmFyIFN5bnRheEtpbmQ7CiAgICAgIChmdW5jdGlvbihTeW50YXhLaW5kMikgewogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2VUb2tlbiJdID0gMV0gPSAiT3BlbkJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNlVG9rZW4iXSA9IDJdID0gIkNsb3NlQnJhY2VUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk9wZW5CcmFja2V0VG9rZW4iXSA9IDNdID0gIk9wZW5CcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNrZXRUb2tlbiJdID0gNF0gPSAiQ2xvc2VCcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDb21tYVRva2VuIl0gPSA1XSA9ICJDb21tYVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29sb25Ub2tlbiJdID0gNl0gPSAiQ29sb25Ub2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk51bGxLZXl3b3JkIl0gPSA3XSA9ICJOdWxsS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRydWVLZXl3b3JkIl0gPSA4XSA9ICJUcnVlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkZhbHNlS2V5d29yZCJdID0gOV0gPSAiRmFsc2VLZXl3b3JkIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiU3RyaW5nTGl0ZXJhbCJdID0gMTBdID0gIlN0cmluZ0xpdGVyYWwiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdW1lcmljTGl0ZXJhbCJdID0gMTFdID0gIk51bWVyaWNMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTGluZUNvbW1lbnRUcml2aWEiXSA9IDEyXSA9ICJMaW5lQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkJsb2NrQ29tbWVudFRyaXZpYSJdID0gMTNdID0gIkJsb2NrQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVCcmVha1RyaXZpYSJdID0gMTRdID0gIkxpbmVCcmVha1RyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRyaXZpYSJdID0gMTVdID0gIlRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlVua25vd24iXSA9IDE2XSA9ICJVbmtub3duIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiRU9GIl0gPSAxN10gPSAiRU9GIjsKICAgICAgfSkoU3ludGF4S2luZCB8fCAoZXhwb3J0czMuU3ludGF4S2luZCA9IFN5bnRheEtpbmQgPSB7fSkpOwogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IHBhcnNlci5nZXRMb2NhdGlvbjsKICAgICAgZXhwb3J0czMucGFyc2UgPSBwYXJzZXIucGFyc2U7CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlci5wYXJzZVRyZWU7CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IHBhcnNlci5maW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBwYXJzZXIuZmluZE5vZGVBdE9mZnNldDsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBwYXJzZXIuZ2V0Tm9kZVBhdGg7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IHBhcnNlci5nZXROb2RlVmFsdWU7CiAgICAgIGV4cG9ydHMzLnZpc2l0ID0gcGFyc2VyLnZpc2l0OwogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gcGFyc2VyLnN0cmlwQ29tbWVudHM7CiAgICAgIHZhciBQYXJzZUVycm9yQ29kZTsKICAgICAgKGZ1bmN0aW9uKFBhcnNlRXJyb3JDb2RlMikgewogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRTeW1ib2wiXSA9IDFdID0gIkludmFsaWRTeW1ib2wiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWROdW1iZXJGb3JtYXQiXSA9IDJdID0gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlByb3BlcnR5TmFtZUV4cGVjdGVkIl0gPSAzXSA9ICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVmFsdWVFeHBlY3RlZCJdID0gNF0gPSAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29sb25FeHBlY3RlZCJdID0gNV0gPSAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29tbWFFeHBlY3RlZCJdID0gNl0gPSAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ2xvc2VCcmFjZUV4cGVjdGVkIl0gPSA3XSA9ICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2tldEV4cGVjdGVkIl0gPSA4XSA9ICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiRW5kT2ZGaWxlRXhwZWN0ZWQiXSA9IDldID0gIkVuZE9mRmlsZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkQ29tbWVudFRva2VuIl0gPSAxMF0gPSAiSW52YWxpZENvbW1lbnRUb2tlbiI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mQ29tbWVudCJdID0gMTFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMTJdID0gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAxM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkVW5pY29kZSJdID0gMTRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSAxNV0gPSAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENoYXJhY3RlciJdID0gMTZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShQYXJzZUVycm9yQ29kZSB8fCAoZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBQYXJzZUVycm9yQ29kZSA9IHt9KSk7CiAgICAgIGZ1bmN0aW9uIHByaW50UGFyc2VFcnJvckNvZGUoY29kZSkgewogICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRTeW1ib2wiOwogICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICByZXR1cm4gIlByb3BlcnR5TmFtZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgcmV0dXJuICJWYWx1ZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgcmV0dXJuICJDb2xvbkV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgcmV0dXJuICJDb21tYUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICByZXR1cm4gIkNsb3NlQnJhY2tldEV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgcmV0dXJuICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgcmV0dXJuICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZFVuaWNvZGUiOwogICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAiPHVua25vd24gUGFyc2VFcnJvckNvZGU+IjsKICAgICAgfQogICAgICBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gcHJpbnRQYXJzZUVycm9yQ29kZTsKICAgICAgZnVuY3Rpb24gZm9ybWF0KGRvY3VtZW50VGV4dCwgcmFuZ2UsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5mb3JtYXQgPSBmb3JtYXQ7CiAgICAgIGZ1bmN0aW9uIG1vZGlmeSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBlZGl0LnNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5tb2RpZnkgPSBtb2RpZnk7CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdHModGV4dCwgZWRpdHMpIHsKICAgICAgICBsZXQgc29ydGVkRWRpdHMgPSBlZGl0cy5zbGljZSgwKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICBjb25zdCBkaWZmID0gYS5vZmZzZXQgLSBiLm9mZnNldDsKICAgICAgICAgIGlmIChkaWZmID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGRpZmY7CiAgICAgICAgfSk7CiAgICAgICAgbGV0IGxhc3RNb2RpZmllZE9mZnNldCA9IHRleHQubGVuZ3RoOwogICAgICAgIGZvciAobGV0IGkgPSBzb3J0ZWRFZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgbGV0IGUgPSBzb3J0ZWRFZGl0c1tpXTsKICAgICAgICAgIGlmIChlLm9mZnNldCArIGUubGVuZ3RoIDw9IGxhc3RNb2RpZmllZE9mZnNldCkgewogICAgICAgICAgICB0ZXh0ID0gZWRpdC5hcHBseUVkaXQodGV4dCwgZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk92ZXJsYXBwaW5nIGVkaXQiKTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNb2RpZmllZE9mZnNldCA9IGUub2Zmc2V0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gYXBwbHlFZGl0czsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMKdmFyIHJlcXVpcmVfbWV0YWRhdGEyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9tZXRhZGF0YS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IHZvaWQgMDsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZVN5bWJvbCA9IFN5bWJvbC5mb3IoIkBhbmd1bGFyL2NvcmU6d29ya3NwYWNlLWpzb24iKTsKICAgIGZ1bmN0aW9uIGVzY2FwZUtleShrZXkpIHsKICAgICAgcmV0dXJuIGtleS5yZXBsYWNlKCJ+IiwgIn4wIikucmVwbGFjZSgiLyIsICJ+MSIpOwogICAgfQogICAgdmFyIEpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGNsYXNzIHsKICAgICAgZmlsZVBhdGg7CiAgICAgIGFzdDsKICAgICAgcmF3OwogICAgICBjaGFuZ2VzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgaGFzTGVnYWN5VGFyZ2V0c05hbWUgPSB0cnVlOwogICAgICBjb25zdHJ1Y3RvcihmaWxlUGF0aCwgYXN0LCByYXcpIHsKICAgICAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7CiAgICAgICAgdGhpcy5hc3QgPSBhc3Q7CiAgICAgICAgdGhpcy5yYXcgPSByYXc7CiAgICAgIH0KICAgICAgZ2V0IGhhc0NoYW5nZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplID4gMDsKICAgICAgfQogICAgICBnZXQgY2hhbmdlQ291bnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5zaXplOwogICAgICB9CiAgICAgIGdldE5vZGVWYWx1ZUZyb21Bc3QocGF0aCkgewogICAgICAgIGNvbnN0IG5vZGUgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKSh0aGlzLmFzdCwgcGF0aCk7CiAgICAgICAgcmV0dXJuIG5vZGUgJiYgKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkobm9kZSk7CiAgICAgIH0KICAgICAgZmluZENoYW5nZXNGb3JQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VzLmdldChwYXRoKTsKICAgICAgfQogICAgICBhZGRDaGFuZ2UoanNvblBhdGgsIHZhbHVlLCB0eXBlMikgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGU6IHR5cGUyLCB2YWx1ZSB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IEpzb25Xb3Jrc3BhY2VNZXRhZGF0YTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcwp2YXIgcmVxdWlyZV91dGlsaXRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlVmlydHVhbEFzdE9iamVjdCA9IGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Q7CiAgICB2YXIganNvbl8xID0gcmVxdWlyZV9qc29uKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KHJvb3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByZXBvcnRlciA9IChwYXRoLCB0YXJnZXQsIG9sZFZhbHVlLCBuZXdWYWx1ZSkgPT4gewogICAgICAgIGlmICghb3B0aW9ucy5saXN0ZW5lcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAob2xkVmFsdWUgPT09IG5ld1ZhbHVlIHx8IEpTT04uc3RyaW5naWZ5KG9sZFZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkobmV3VmFsdWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aC5zbGljZSgwLCAtMSksIHRhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aCwgbmV3VmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIGNyZWF0ZShBcnJheS5pc0FycmF5KHJvb3QpID8gWy4uLnJvb3RdIDogeyAuLi5yb290IH0sIFtdLCByZXBvcnRlciwgbmV3IFNldChvcHRpb25zLmV4Y2x1ZGUpLCBvcHRpb25zLmluY2x1ZGU/Lmxlbmd0aCA/IG5ldyBTZXQob3B0aW9ucy5pbmNsdWRlKSA6IHZvaWQgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBjcmVhdGUob2JqLCBwYXRoLCByZXBvcnRlciwgZXhjbHVkZWQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpLCBpbmNsdWRlZCkgewogICAgICByZXR1cm4gbmV3IFByb3h5KG9iaiwgewogICAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCk7CiAgICAgICAgfSwKICAgICAgICBoYXModGFyZ2V0LCBwKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiIHx8IGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGdldCh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIGpzb25fMS5pc0pzb25PYmplY3QpKHZhbHVlKSAmJiAhKHZhbHVlIGluc3RhbmNlb2YgTWFwKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICByZXR1cm4gY3JlYXRlKHZhbHVlLCBbLi4ucGF0aCwgcF0sIHJlcG9ydGVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoZXhjbHVkZWQuaGFzKHApIHx8IGluY2x1ZGVkICYmICFpbmNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlUHJvcGVydHk/Lih0YXJnZXQsIHApID8/IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSkpIHsKICAgICAgICAgICAgcmVwb3J0ZXIoWy4uLnBhdGgsIHBdLCB0YXJnZXQsIGV4aXN0aW5nVmFsdWUsIHZhbHVlKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGdldEN1cnJlbnRWYWx1ZSh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdm9pZCAwKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9LAogICAgICAgIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykgewogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHAsIGF0dHJpYnV0ZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0sCiAgICAgICAgb3duS2V5cyh0YXJnZXQpIHsKICAgICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KS5maWx0ZXIoKHApID0+ICFleGNsdWRlZC5oYXMocCkgJiYgKCFpbmNsdWRlZCB8fCBpbmNsdWRlZC5oYXMocCkpKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcHJvcGVydHkpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSAmJiBpc0Zpbml0ZSgrcHJvcGVydHkpKSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFsrcHJvcGVydHldOwogICAgICB9CiAgICAgIGlmICh0YXJnZXQgJiYgcHJvcGVydHkgaW4gdGFyZ2V0KSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcwp2YXIgcmVxdWlyZV9yZWFkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVhZEpzb25Xb3Jrc3BhY2UgPSByZWFkSnNvbldvcmtzcGFjZTsKICAgIHZhciBqc29uY19wYXJzZXJfMSA9IHJlcXVpcmVfbWFpbigpOwogICAgdmFyIHV0aWxzXzEgPSByZXF1aXJlX3V0aWxzKCk7CiAgICB2YXIgZGVmaW5pdGlvbnNfMSA9IHJlcXVpcmVfZGVmaW5pdGlvbnMoKTsKICAgIHZhciBtZXRhZGF0YV8xID0gcmVxdWlyZV9tZXRhZGF0YTIoKTsKICAgIHZhciB1dGlsaXRpZXNfMSA9IHJlcXVpcmVfdXRpbGl0aWVzKCk7CiAgICB2YXIgQU5HVUxBUl9XT1JLU1BBQ0VfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAibmV3UHJvamVjdFJvb3QiLCAic2NoZW1hdGljcyJdKTsKICAgIHZhciBBTkdVTEFSX1BST0pFQ1RfRVhURU5TSU9OUyA9IE9iamVjdC5mcmVlemUoWyJjbGkiLCAic2NoZW1hdGljcyIsICJwcm9qZWN0VHlwZSIsICJpMThuIl0pOwogICAgYXN5bmMgZnVuY3Rpb24gcmVhZEpzb25Xb3Jrc3BhY2UocGF0aCwgaG9zdCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IHJhdyA9IGF3YWl0IGhvc3QucmVhZEZpbGUocGF0aCk7CiAgICAgIGlmIChyYXcgPT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIHJlYWQgd29ya3NwYWNlIGZpbGUuIik7CiAgICAgIH0KICAgICAgY29uc3QgYXN0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlVHJlZSkocmF3LCB2b2lkIDAsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlLCBkaXNhbGxvd0NvbW1lbnRzOiBmYWxzZSB9KTsKICAgICAgaWYgKGFzdD8udHlwZSAhPT0gIm9iamVjdCIgfHwgIWFzdC5jaGlsZHJlbikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiSW52YWxpZCB3b3Jrc3BhY2UgZmlsZSAtIGV4cGVjdGVkIEpTT04gb2JqZWN0LiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb25Ob2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikoYXN0LCBbInZlcnNpb24iXSk7CiAgICAgIGlmICghdmVyc2lvbk5vZGUpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gZm9ybWF0IC0gdmVyc2lvbiBzcGVjaWZpZXIgbm90IGZvdW5kLiIpOwogICAgICB9CiAgICAgIGNvbnN0IHZlcnNpb24gPSB2ZXJzaW9uTm9kZS52YWx1ZTsKICAgICAgaWYgKHZlcnNpb24gIT09IDEpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9ybWF0IHZlcnNpb24gZGV0ZWN0ZWQgLSBFeHBlY3RlZDpbIDEgXSBGb3VuZDogWyAke3ZlcnNpb259IF1gKTsKICAgICAgfQogICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgIGhvc3QsCiAgICAgICAgbWV0YWRhdGE6IG5ldyBtZXRhZGF0YV8xLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YShwYXRoLCBhc3QsIHJhdyksCiAgICAgICAgdHJhY2tDaGFuZ2VzOiB0cnVlLAogICAgICAgIHVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICAgICAuLi5BTkdVTEFSX1dPUktTUEFDRV9FWFRFTlNJT05TLAogICAgICAgICAgLi4ub3B0aW9ucy5hbGxvd2VkV29ya3NwYWNlRXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIHVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9uczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAgICAgLi4uQU5HVUxBUl9QUk9KRUNUX0VYVEVOU0lPTlMsCiAgICAgICAgICAuLi5vcHRpb25zLmFsbG93ZWRQcm9qZWN0RXh0ZW5zaW9ucyA/PyBbXQogICAgICAgIF0pLAogICAgICAgIGVycm9yKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7CiAgICAgICAgfSwKICAgICAgICB3YXJuKG1lc3NhZ2UsIF9ub2RlKSB7CiAgICAgICAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBjb25zdCB3b3Jrc3BhY2UgPSBwYXJzZVdvcmtzcGFjZShhc3QsIGNvbnRleHQpOwogICAgICByZXR1cm4gd29ya3NwYWNlOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VXb3Jrc3BhY2Uod29ya3NwYWNlTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgcHJvamVjdHM7CiAgICAgIGxldCBleHRlbnNpb25zOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICB9CiAgICAgIGNvbnN0IHdvcmtzcGFjZU5vZGVWYWx1ZSA9ICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHdvcmtzcGFjZU5vZGUpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMod29ya3NwYWNlTm9kZVZhbHVlKSkgewogICAgICAgIGlmIChuYW1lID09PSAiJHNjaGVtYSIgfHwgbmFtZSA9PT0gInZlcnNpb24iKSB7CiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAicHJvamVjdHMiKSB7CiAgICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHdvcmtzcGFjZU5vZGUsIFsicHJvamVjdHMiXSk7CiAgICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgICBjb250ZXh0LmVycm9yKCdJbnZhbGlkICJwcm9qZWN0cyIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC4nLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHJvamVjdHMgPSBwYXJzZVByb2plY3RzT2JqZWN0KG5vZGVzLCBjb250ZXh0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRXb3Jrc3BhY2VFeHRlbnNpb25zLmhhcyhuYW1lKSAmJiAhL15bYS16XXsxLDN9LS4qLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICAgIGNvbnRleHQud2FybihgV29ya3NwYWNlIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkgZm91bmQuYCwgbmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykgewogICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSkgPT4gewogICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgbmFtZV0sIG5ld1ZhbHVlLCAicHJvamVjdCIpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3QgcHJvamVjdENvbGxlY3Rpb24gPSBuZXcgZGVmaW5pdGlvbnNfMS5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24ocHJvamVjdHMsIGNvbGxlY3Rpb25MaXN0ZW5lcik7CiAgICAgIHJldHVybiB7CiAgICAgICAgW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF06IGpzb25NZXRhZGF0YSwKICAgICAgICBwcm9qZWN0czogcHJvamVjdENvbGxlY3Rpb24sCiAgICAgICAgLy8gSWYgbm90IHRyYWNraW5nIGNoYW5nZXMgdGhlIGBleHRlbnNpb25zYCB2YXJpYWJsZSB3aWxsIGNvbnRhaW4gdGhlIHBhcnNlZAogICAgICAgIC8vIHZhbHVlcy4gIE90aGVyd2lzZSB0aGUgZXh0ZW5zaW9ucyBhcmUgdHJhY2tlZCB2aWEgYSB2aXJ0dWFsIEFTVCBvYmplY3QuCiAgICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkod29ya3NwYWNlTm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbIiRzY2hlbWEiLCAidmVyc2lvbiIsICJwcm9qZWN0cyJdLAogICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShwYXRoLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlUHJvamVjdHNPYmplY3QocHJvamVjdHNOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcygoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKShwcm9qZWN0c05vZGUpKSkgewogICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdHNOb2RlLCBbbmFtZV0pOwogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICBjb250ZXh0Lndhcm4oIlNraXBwaW5nIGludmFsaWQgcHJvamVjdCB2YWx1ZTsgZXhwZWN0ZWQgYW4gb2JqZWN0LiIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBwcm9qZWN0c1tuYW1lXSA9IHBhcnNlUHJvamVjdChuYW1lLCBub2RlcywgY29udGV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHByb2plY3RzOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0Tm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBsZXQgdGFyZ2V0czsKICAgICAgbGV0IGhhc1RhcmdldHMgPSBmYWxzZTsKICAgICAgbGV0IGV4dGVuc2lvbnM7CiAgICAgIGxldCBwcm9wZXJ0aWVzOwogICAgICBpZiAoIWNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgZXh0ZW5zaW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIHByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgfQogICAgICBjb25zdCBwcm9qZWN0Tm9kZVZhbHVlID0gKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkocHJvamVjdE5vZGUpOwogICAgICBpZiAoISgicm9vdCIgaW4gcHJvamVjdE5vZGVWYWx1ZSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFByb2plY3QgIiR7cHJvamVjdE5hbWV9IiBpcyBtaXNzaW5nIGEgcmVxdWlyZWQgcHJvcGVydHkgInJvb3QiLmApOwogICAgICB9CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9qZWN0Tm9kZVZhbHVlKSkgewogICAgICAgIHN3aXRjaCAobmFtZSkgewogICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICBjYXNlICJhcmNoaXRlY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocHJvamVjdE5vZGUsIFtuYW1lXSk7CiAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICAgICAgY29udGV4dC5lcnJvcihgSW52YWxpZCAiJHtuYW1lfSIgZmllbGQgZm91bmQ7IGV4cGVjdGVkIGFuIG9iamVjdC5gLCB2YWx1ZSk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaGFzVGFyZ2V0cyA9IHRydWU7CiAgICAgICAgICAgIHRhcmdldHMgPSBwYXJzZVRhcmdldHNPYmplY3QocHJvamVjdE5hbWUsIG5vZGVzLCBjb250ZXh0KTsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmhhc0xlZ2FjeVRhcmdldHNOYW1lID0gbmFtZSA9PT0gImFyY2hpdGVjdCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgY2FzZSAic291cmNlUm9vdCI6CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgY29udGV4dC53YXJuKGBQcm9qZWN0IHByb3BlcnR5ICIke25hbWV9IiBzaG91bGQgYmUgYSBzdHJpbmcuYCwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwcm9wZXJ0aWVzKSB7CiAgICAgICAgICAgICAgcHJvcGVydGllc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgaWYgKCFjb250ZXh0LnVucHJlZml4ZWRQcm9qZWN0RXh0ZW5zaW9ucy5oYXMobmFtZSkgJiYgIS9eW2Etel17MSwzfS0uKi8udGVzdChuYW1lKSkgewogICAgICAgICAgICAgIGNvbnRleHQud2FybihgUHJvamVjdCAnJHtwcm9qZWN0TmFtZX0nIGNvbnRhaW5zIGV4dGVuc2lvbiB3aXRoIGludmFsaWQgbmFtZSAoJHtuYW1lfSkuYCwgbmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHsKICAgICAgICAgICAgICBleHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBjb2xsZWN0aW9uTGlzdGVuZXI7CiAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGNvbGxlY3Rpb25MaXN0ZW5lciA9IChuYW1lLCBuZXdWYWx1ZSwgY29sbGVjdGlvbikgPT4gewogICAgICAgICAgaWYgKGhhc1RhcmdldHMpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIiwgbmFtZV0sIG5ld1ZhbHVlLCAidGFyZ2V0Iik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiXSwgY29sbGVjdGlvbiwgInRhcmdldGNvbGxlY3Rpb24iKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0IGJhc2UgPSB7CiAgICAgICAgdGFyZ2V0czogbmV3IGRlZmluaXRpb25zXzEuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24odGFyZ2V0cywgY29sbGVjdGlvbkxpc3RlbmVyKSwKICAgICAgICAvLyBJZiBub3QgdHJhY2tpbmcgY2hhbmdlcyB0aGUgYGV4dGVuc2lvbnNgIHZhcmlhYmxlIHdpbGwgY29udGFpbiB0aGUgcGFyc2VkCiAgICAgICAgLy8gdmFsdWVzLiAgT3RoZXJ3aXNlIHRoZSBleHRlbnNpb25zIGFyZSB0cmFja2VkIHZpYSBhIHZpcnR1YWwgQVNUIG9iamVjdC4KICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgICBleGNsdWRlOiBbImFyY2hpdGVjdCIsICJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgInRhcmdldHMiXSwKICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAuLi5wYXRoXSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH07CiAgICAgIGNvbnN0IGJhc2VLZXlzID0gbmV3IFNldChPYmplY3Qua2V5cyhiYXNlKSk7CiAgICAgIGNvbnN0IHByb2plY3QgPSBwcm9wZXJ0aWVzID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KShwcm9qZWN0Tm9kZVZhbHVlLCB7CiAgICAgICAgaW5jbHVkZTogWyJwcmVmaXgiLCAicm9vdCIsICJzb3VyY2VSb290IiwgLi4uYmFzZUtleXNdLAogICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoIWJhc2VLZXlzLmhhcyhwYXRoWzBdKSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgLi4ucGF0aF0sIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihwcm9qZWN0LCBiYXNlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlVGFyZ2V0c09iamVjdChwcm9qZWN0TmFtZSwgdGFyZ2V0c05vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgY29uc3QgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkodGFyZ2V0c05vZGUpKSkgewogICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIGNvbnRleHQud2FybigiU2tpcHBpbmcgaW52YWxpZCB0YXJnZXQgdmFsdWU7IGV4cGVjdGVkIGFuIG9iamVjdC4iLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgICB0YXJnZXRzW25hbWVdID0gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHZhbHVlLCB7CiAgICAgICAgICAgIGluY2x1ZGU6IFsiYnVpbGRlciIsICJvcHRpb25zIiwgImNvbmZpZ3VyYXRpb25zIiwgImRlZmF1bHRDb25maWd1cmF0aW9uIl0sCiAgICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlMikgewogICAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyIsIG5hbWUsIC4uLnBhdGhdLCB2YWx1ZTIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGFyZ2V0c1tuYW1lXSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gdGFyZ2V0czsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcwp2YXIgcmVxdWlyZV93cml0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVKc29uV29ya3NwYWNlID0gd3JpdGVKc29uV29ya3NwYWNlOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgbm9kZV9vc18xID0gcmVxdWlyZSgibm9kZTpvcyIpOwogICAgdmFyIG1ldGFkYXRhXzEgPSByZXF1aXJlX21ldGFkYXRhMigpOwogICAgYXN5bmMgZnVuY3Rpb24gd3JpdGVKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IG1ldGFkYXRhID0gd29ya3NwYWNlW21ldGFkYXRhXzEuSnNvbldvcmtzcGFjZVN5bWJvbF07CiAgICAgIGlmIChtZXRhZGF0YSkgewogICAgICAgIGlmICghbWV0YWRhdGEuaGFzQ2hhbmdlcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBkYXRhID0gdXBkYXRlSnNvbldvcmtzcGFjZShtZXRhZGF0YSk7CiAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGVGaWxlKHBhdGggPz8gbWV0YWRhdGEuZmlsZVBhdGgsIGRhdGEpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghcGF0aCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJwYXRoIG9wdGlvbiBpcyByZXF1aXJlZCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBvYmogPSBjb252ZXJ0SnNvbldvcmtzcGFjZSh3b3Jrc3BhY2UsIG9wdGlvbnMuc2NoZW1hKTsKICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5zdHJpbmdpZnkob2JqLCBudWxsLCAyKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCwgZGF0YSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgc2NoZW1hMikgewogICAgICBjb25zdCBvYmogPSB7CiAgICAgICAgJHNjaGVtYTogc2NoZW1hMiB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpIHsKICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIHN3aXRjaCAodHlwZTIpIHsKICAgICAgICBjYXNlICJwcm9qZWN0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblByb2plY3QodmFsdWUpOwogICAgICAgIGNhc2UgInByb2plY3Rjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgcHJvamVjdHMgPSBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHZhbHVlKTsKICAgICAgICAgIHJldHVybiBpc0VtcHR5KHByb2plY3RzKSA/IHZvaWQgMCA6IHByb2plY3RzOwogICAgICAgIH0KICAgICAgICBjYXNlICJ0YXJnZXQiOgogICAgICAgICAgcmV0dXJuIGNvbnZlcnRKc29uVGFyZ2V0KHZhbHVlKTsKICAgICAgICBjYXNlICJ0YXJnZXRjb2xsZWN0aW9uIjogewogICAgICAgICAgY29uc3QgdGFyZ2V0cyA9IGNvbnZlcnRKc29uVGFyZ2V0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eSh0YXJnZXRzKSA/IHZvaWQgMCA6IHRhcmdldHM7CiAgICAgICAgfQogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUpzb25Xb3Jrc3BhY2UobWV0YWRhdGEpIHsKICAgICAgbGV0IHsgcmF3OiBjb250ZW50IH0gPSBtZXRhZGF0YTsKICAgICAgY29uc3QgeyBjaGFuZ2VzLCBoYXNMZWdhY3lUYXJnZXRzTmFtZSB9ID0gbWV0YWRhdGE7CiAgICAgIGZvciAoY29uc3QgeyBqc29uUGF0aCwgdmFsdWUsIHR5cGU6IHR5cGUyIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZTIpLCB7CiAgICAgICAgICBmb3JtYXR0aW5nT3B0aW9uczogewogICAgICAgICAgICBpbnNlcnRTcGFjZXM6IHRydWUsCiAgICAgICAgICAgIHRhYlNpemU6IDIsCiAgICAgICAgICAgIGVvbDogZ2V0RU9MKGNvbnRlbnQpCiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29udGVudCA9ICgwLCBqc29uY19wYXJzZXJfMS5hcHBseUVkaXRzKShjb250ZW50LCBlZGl0cyk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbnRlbnQ7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRFT0woY29udGVudCkgewogICAgICBjb25zdCBDUkxGID0gIlxyXG4iOwogICAgICBjb25zdCBMRiA9ICJcbiI7CiAgICAgIGNvbnN0IG5ld2xpbmVzID0gY29udGVudC5tYXRjaCgvKD86XHI/XG4pL2cpOwogICAgICBpZiAobmV3bGluZXM/Lmxlbmd0aCkgewogICAgICAgIGNvbnN0IGNybGYgPSBuZXdsaW5lcy5maWx0ZXIoKGwpID0+IGwgPT09IENSTEYpLmxlbmd0aDsKICAgICAgICBjb25zdCBsZiA9IG5ld2xpbmVzLmxlbmd0aCAtIGNybGY7CiAgICAgICAgcmV0dXJuIGNybGYgPiBsZiA/IENSTEYgOiBMRjsKICAgICAgfQogICAgICByZXR1cm4gbm9kZV9vc18xLkVPTDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gdm9pZCAwOwogICAgZXhwb3J0czIuX3Rlc3RfYWRkV29ya3NwYWNlRmlsZSA9IF90ZXN0X2FkZFdvcmtzcGFjZUZpbGU7CiAgICBleHBvcnRzMi5fdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSByZWFkV29ya3NwYWNlOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSB3cml0ZVdvcmtzcGFjZTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIHZhciByZWFkZXJfMSA9IHJlcXVpcmVfcmVhZGVyKCk7CiAgICB2YXIgd3JpdGVyXzEgPSByZXF1aXJlX3dyaXRlcigpOwogICAgdmFyIGZvcm1hdExvb2t1cCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgdmFyIFdvcmtzcGFjZUZvcm1hdDsKICAgIChmdW5jdGlvbihXb3Jrc3BhY2VGb3JtYXQyKSB7CiAgICAgIFdvcmtzcGFjZUZvcm1hdDJbV29ya3NwYWNlRm9ybWF0MlsiSlNPTiJdID0gMF0gPSAiSlNPTiI7CiAgICB9KShXb3Jrc3BhY2VGb3JtYXQgfHwgKGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IFdvcmtzcGFjZUZvcm1hdCA9IHt9KSk7CiAgICBmdW5jdGlvbiBfdGVzdF9hZGRXb3Jrc3BhY2VGaWxlKG5hbWUsIGZvcm1hdCkgewogICAgICB3b3Jrc3BhY2VGaWxlc1tuYW1lXSA9IGZvcm1hdDsKICAgIH0KICAgIGZ1bmN0aW9uIF90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUobmFtZSkgewogICAgICBkZWxldGUgd29ya3NwYWNlRmlsZXNbbmFtZV07CiAgICB9CiAgICB2YXIgd29ya3NwYWNlRmlsZXMgPSB7CiAgICAgICJhbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTiwKICAgICAgIi5hbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTgogICAgfTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRXb3Jrc3BhY2UocGF0aCwgaG9zdCwgZm9ybWF0KSB7CiAgICAgIGlmIChhd2FpdCBob3N0LmlzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgIGZvciAoY29uc3QgW25hbWUsIG5hbWVGb3JtYXRdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZUZpbGVzKSkgewogICAgICAgICAgaWYgKGZvcm1hdCAhPT0gdm9pZCAwICYmIGZvcm1hdCAhPT0gbmFtZUZvcm1hdCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBvdGVudGlhbCA9ICgwLCB2aXJ0dWFsX2ZzXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHZpcnR1YWxfZnNfMS5qb2luKShkaXJlY3RvcnksIG5hbWUpKTsKICAgICAgICAgIGlmIChhd2FpdCBob3N0LmlzRmlsZShwb3RlbnRpYWwpKSB7CiAgICAgICAgICAgIHBhdGggPSBwb3RlbnRpYWw7CiAgICAgICAgICAgIGZvcm1hdCA9IG5hbWVGb3JtYXQ7CiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghZm91bmQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSBhIHdvcmtzcGFjZSBmaWxlIGZvciB3b3Jrc3BhY2UgcGF0aC4gQXJlIHlvdSBtaXNzaW5nIGFuIGBhbmd1bGFyLmpzb25gIG9yIGAuYW5ndWxhci5qc29uYCBmaWxlPyIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IGZpbGVuYW1lID0gKDAsIHZpcnR1YWxfZnNfMS5iYXNlbmFtZSkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgICBpZiAoZmlsZW5hbWUgaW4gd29ya3NwYWNlRmlsZXMpIHsKICAgICAgICAgIGZvcm1hdCA9IHdvcmtzcGFjZUZpbGVzW2ZpbGVuYW1lXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gZGV0ZXJtaW5lIGZvcm1hdCBmb3Igd29ya3NwYWNlIHBhdGguIik7CiAgICAgIH0KICAgICAgbGV0IHdvcmtzcGFjZTsKICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgd29ya3NwYWNlID0gYXdhaXQgKDAsIHJlYWRlcl8xLnJlYWRKc29uV29ya3NwYWNlKShwYXRoLCBob3N0KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgICAgZm9ybWF0TG9va3VwLnNldCh3b3Jrc3BhY2UsIFdvcmtzcGFjZUZvcm1hdC5KU09OKTsKICAgICAgcmV0dXJuIHsgd29ya3NwYWNlIH07CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZVdvcmtzcGFjZSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgsIGZvcm1hdCkgewogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICBmb3JtYXQgPSBmb3JtYXRMb29rdXAuZ2V0KHdvcmtzcGFjZSk7CiAgICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkEgZm9ybWF0IGlzIHJlcXVpcmVkIGZvciBjdXN0b20gd29ya3NwYWNlIG9iamVjdHMuIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgICAgY2FzZSBXb3Jrc3BhY2VGb3JtYXQuSlNPTjoKICAgICAgICAgIHJldHVybiAoMCwgd3JpdGVyXzEud3JpdGVKc29uV29ya3NwYWNlKSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgpOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcwp2YXIgcmVxdWlyZV93b3Jrc3BhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSBleHBvcnRzMi5yZWFkV29ya3NwYWNlID0gZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IHZvaWQgMDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2RlZmluaXRpb25zKCksIGV4cG9ydHMyKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3QyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjcmVhdGVXb3Jrc3BhY2VIb3N0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaG9zdF8xLmNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZTMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIldvcmtzcGFjZUZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5Xb3Jrc3BhY2VGb3JtYXQ7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmVhZFdvcmtzcGFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS5yZWFkV29ya3NwYWNlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndyaXRlV29ya3NwYWNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLndyaXRlV29ya3NwYWNlOwogICAgfSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndvcmtzcGFjZXMgPSBleHBvcnRzMi5sb2dnaW5nID0gZXhwb3J0czIuanNvbiA9IHZvaWQgMDsKICAgIHZhciBqc29uMiA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2pzb24oKSk7CiAgICBleHBvcnRzMi5qc29uID0ganNvbjI7CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanMKdmFyIHJlcXVpcmVfaHRtbF9zZWxlY3RvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgdW5pY29kZVJhbmdlcyA9IFsKICAgICAgWzE5MiwgMjE0XSwKICAgICAgWzIxNiwgMjQ2XSwKICAgICAgWzI0OCwgODkzXSwKICAgICAgWzg5NSwgODE5MV0sCiAgICAgIFs4MjA0LCA4MjA1XSwKICAgICAgWzgyNTUsIDgyNTZdLAogICAgICBbODMwNCwgODU5MV0sCiAgICAgIFsxMTI2NCwgMTIyNzFdLAogICAgICBbMTIyODksIDU1Mjk1XSwKICAgICAgWzYzNzQ0LCA2NDk3NV0sCiAgICAgIFs2NTAwOCwgNjU1MzNdLAogICAgICBbNjU1MzYsIDk4MzAzOV0KICAgIF07CiAgICBmdW5jdGlvbiBpc1ZhbGlkRWxlbWVudE5hbWUobmFtZSkgewogICAgICBsZXQgcmVnZXggPSAiXlthLXpBLVpdWyI7CiAgICAgIHJlZ2V4ICs9ICItLjAtOV9hLXpBLVpcXHV7Qjd9IjsKICAgICAgZm9yIChjb25zdCByYW5nZSBvZiB1bmljb2RlUmFuZ2VzKSB7CiAgICAgICAgcmVnZXggKz0gYFxcdXske3JhbmdlWzBdLnRvU3RyaW5nKDE2KX19LVxcdXske3JhbmdlWzFdLnRvU3RyaW5nKDE2KX19YDsKICAgICAgfQogICAgICByZWdleCArPSAiXSokIjsKICAgICAgcmV0dXJuIG5ldyBSZWdFeHAocmVnZXgsICJ1IikudGVzdChuYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmh0bWxTZWxlY3RvckZvcm1hdCA9IHsKICAgICAgbmFtZTogImh0bWwtc2VsZWN0b3IiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChuYW1lKSA9PiB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgJiYgaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpCiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHsKICAgICAgbmFtZTogInBhdGgiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChwYXRoKSA9PiB7CiAgICAgICAgICByZXR1cm4gcGF0aCA9PT0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0czIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLlRyZWVTeW1ib2wgPSBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gZXhwb3J0czIuTWVyZ2VTdHJhdGVneSA9IHZvaWQgMDsKICAgIHZhciBNZXJnZVN0cmF0ZWd5MjsKICAgIChmdW5jdGlvbihNZXJnZVN0cmF0ZWd5MykgewogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dPdmVyd3JpdGVDb25mbGljdCJdID0gMl0gPSAiQWxsb3dPdmVyd3JpdGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiXSA9IDRdID0gIkFsbG93Q3JlYXRpb25Db25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0RlbGV0ZUNvbmZsaWN0Il0gPSA4XSA9ICJBbGxvd0RlbGV0ZUNvbmZsaWN0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkRlZmF1bHQiXSA9IDBdID0gIkRlZmF1bHQiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siRXJyb3IiXSA9IDFdID0gIkVycm9yIjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkNvbnRlbnRPbmx5Il0gPSAyXSA9ICJDb250ZW50T25seSI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJPdmVyd3JpdGUiXSA9IDE0XSA9ICJPdmVyd3JpdGUiOwogICAgfSkoTWVyZ2VTdHJhdGVneTIgfHwgKGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSBNZXJnZVN0cmF0ZWd5MiA9IHt9KSk7CiAgICBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gU3ltYm9sKCk7CiAgICBleHBvcnRzMi5UcmVlU3ltYm9sID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IGdsb2JhbFN5bWJvbCA9IHR5cGVvZiB3aW5kb3cgPT0gIm9iamVjdCIgJiYgd2luZG93LndpbmRvdyA9PT0gd2luZG93ICYmIHdpbmRvdy5TeW1ib2wgfHwgdHlwZW9mIHNlbGYgPT0gIm9iamVjdCIgJiYgc2VsZi5zZWxmID09PSBzZWxmICYmIHNlbGYuU3ltYm9sIHx8IHR5cGVvZiBnbG9iYWwgPT0gIm9iamVjdCIgJiYgZ2xvYmFsLmdsb2JhbCA9PT0gZ2xvYmFsICYmIGdsb2JhbC5TeW1ib2w7CiAgICAgIGlmICghZ2xvYmFsU3ltYm9sKSB7CiAgICAgICAgcmV0dXJuIFN5bWJvbCgic2NoZW1hdGljLXRyZWUiKTsKICAgICAgfQogICAgICBpZiAoIWdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlKSB7CiAgICAgICAgZ2xvYmFsU3ltYm9sLnNjaGVtYXRpY1RyZWUgPSBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlOwogICAgfSgpOwogICAgZXhwb3J0czIuVHJlZSA9IE9iamVjdC5mcmVlemUoewogICAgICBpc1RyZWUobWF5YmVUcmVlKSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLlRyZWVTeW1ib2wgaW4gbWF5YmVUcmVlOwogICAgICB9CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZXhjZXB0aW9uL2V4Y2VwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuU2NoZW1hdGljc0V4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFNjaGVtYXRpY3NFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIHZhciBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ29udGVudCBhdCBwYXRoICIke3BhdGh9IiBoYXMgY2hhbmdlZCBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgdGhlIGVuZCBvZiBhbiB1cGRhdGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEludmFsaWQgcmVjb3JkIGluc3RhbmNlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb247CiAgICB2YXIgTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYEEgbWVyZ2UgY29uZmxpY3RlZCBvbiBwYXRoICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24gPSBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uOwogICAgdmFyIFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJXb3JrZmxvdyBkaWQgbm90IGV4ZWN1dGUgc3VjY2Vzc2Z1bGx5LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBVbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbjsKICAgIHZhciBVbmltcGxlbWVudGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJUaGlzIGZ1bmN0aW9uIGlzIHVuaW1wbGVtZW50ZWQuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMKdmFyIHJlcXVpcmVfZGVsZWdhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcwp2YXIgcmVxdWlyZV9lbnRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBTaW1wbGVGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9wYXRoOwogICAgICBfY29udGVudDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2NvbnRlbnQgPSBfY29udGVudDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IFNpbXBsZUZpbGVFbnRyeTsKICAgIHZhciBMYXp5RmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2xvYWQ7CiAgICAgIF9jb250ZW50ID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9sb2FkKSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2xvYWQgPSBfbG9hZDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudCB8fCAodGhpcy5fY29udGVudCA9IHRoaXMuX2xvYWQodGhpcy5fcGF0aCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IExhenlGaWxlRW50cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0BqcmlkZ2V3ZWxsLXNvdXJjZW1hcC1jb2RlYy1ucG0tMS41LjAtZGZkOTEyNmQ3MS0xMC56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtMTAuemlwL25vZGVfbW9kdWxlcy9AanJpZGdld2VsbC9zb3VyY2VtYXAtY29kZWMvZGlzdC9zb3VyY2VtYXAtY29kZWMudW1kLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGdsb2JhbDIsIGZhY3RvcnkpIHsKICAgICAgdHlwZW9mIGV4cG9ydHMyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMiAhPT0gInVuZGVmaW5lZCIgPyBmYWN0b3J5KGV4cG9ydHMyKSA6IHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbImV4cG9ydHMiXSwgZmFjdG9yeSkgOiAoZ2xvYmFsMiA9IHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiA/IGdsb2JhbFRoaXMgOiBnbG9iYWwyIHx8IHNlbGYsIGZhY3RvcnkoZ2xvYmFsMi5zb3VyY2VtYXBDb2RlYyA9IHt9KSk7CiAgICB9KShleHBvcnRzMiwgZnVuY3Rpb24oZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBjb25zdCBjb21tYSA9ICIsIi5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBzZW1pY29sb24gPSAiOyIuY2hhckNvZGVBdCgwKTsKICAgICAgY29uc3QgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgICAgIGNvbnN0IGludFRvQ2hhciA9IG5ldyBVaW50OEFycmF5KDY0KTsKICAgICAgY29uc3QgY2hhclRvSW50ID0gbmV3IFVpbnQ4QXJyYXkoMTI4KTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFycy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBjaGFycy5jaGFyQ29kZUF0KGkpOwogICAgICAgIGludFRvQ2hhcltpXSA9IGM7CiAgICAgICAgY2hhclRvSW50W2NdID0gaTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgdmFsdWUgPSAwOwogICAgICAgIGxldCBzaGlmdCA9IDA7CiAgICAgICAgbGV0IGludGVnZXIgPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGMgPSByZWFkZXIubmV4dCgpOwogICAgICAgICAgaW50ZWdlciA9IGNoYXJUb0ludFtjXTsKICAgICAgICAgIHZhbHVlIHw9IChpbnRlZ2VyICYgMzEpIDw8IHNoaWZ0OwogICAgICAgICAgc2hpZnQgKz0gNTsKICAgICAgICB9IHdoaWxlIChpbnRlZ2VyICYgMzIpOwogICAgICAgIGNvbnN0IHNob3VsZE5lZ2F0ZSA9IHZhbHVlICYgMTsKICAgICAgICB2YWx1ZSA+Pj49IDE7CiAgICAgICAgaWYgKHNob3VsZE5lZ2F0ZSkgewogICAgICAgICAgdmFsdWUgPSAtMjE0NzQ4MzY0OCB8IC12YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlbGF0aXZlICsgdmFsdWU7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlSW50ZWdlcihidWlsZGVyLCBudW0sIHJlbGF0aXZlKSB7CiAgICAgICAgbGV0IGRlbHRhID0gbnVtIC0gcmVsYXRpdmU7CiAgICAgICAgZGVsdGEgPSBkZWx0YSA8IDAgPyAtZGVsdGEgPDwgMSB8IDEgOiBkZWx0YSA8PCAxOwogICAgICAgIGRvIHsKICAgICAgICAgIGxldCBjbGFtcGVkID0gZGVsdGEgJiAzMTsKICAgICAgICAgIGRlbHRhID4+Pj0gNTsKICAgICAgICAgIGlmIChkZWx0YSA+IDApCiAgICAgICAgICAgIGNsYW1wZWQgfD0gMzI7CiAgICAgICAgICBidWlsZGVyLndyaXRlKGludFRvQ2hhcltjbGFtcGVkXSk7CiAgICAgICAgfSB3aGlsZSAoZGVsdGEgPiAwKTsKICAgICAgICByZXR1cm4gbnVtOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGhhc01vcmVWbHEocmVhZGVyLCBtYXgpIHsKICAgICAgICBpZiAocmVhZGVyLnBvcyA+PSBtYXgpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHJlYWRlci5wZWVrKCkgIT09IGNvbW1hOwogICAgICB9CiAgICAgIGNvbnN0IGJ1Zkxlbmd0aCA9IDEwMjQgKiAxNjsKICAgICAgY29uc3QgdGQgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09ICJ1bmRlZmluZWQiID8gLyogQF9fUFVSRV9fICovIG5ldyBUZXh0RGVjb2RlcigpIDogdHlwZW9mIEJ1ZmZlciAhPT0gInVuZGVmaW5lZCIgPyB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgY29uc3Qgb3V0ID0gQnVmZmVyLmZyb20oYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTsKICAgICAgICAgIHJldHVybiBvdXQudG9TdHJpbmcoKTsKICAgICAgICB9CiAgICAgIH0gOiB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgbGV0IG91dCA9ICIiOwogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgb3V0ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnVmW2ldKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBvdXQ7CiAgICAgICAgfQogICAgICB9OwogICAgICBjbGFzcyBTdHJpbmdXcml0ZXIgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgdGhpcy5vdXQgPSAiIjsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnVmTGVuZ3RoKTsKICAgICAgICB9CiAgICAgICAgd3JpdGUodikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIgfSA9IHRoaXM7CiAgICAgICAgICBidWZmZXJbdGhpcy5wb3MrK10gPSB2OwogICAgICAgICAgaWYgKHRoaXMucG9zID09PSBidWZMZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy5vdXQgKz0gdGQuZGVjb2RlKGJ1ZmZlcik7CiAgICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZmx1c2goKSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciwgb3V0LCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICByZXR1cm4gcG9zID4gMCA/IG91dCArIHRkLmRlY29kZShidWZmZXIuc3ViYXJyYXkoMCwgcG9zKSkgOiBvdXQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNsYXNzIFN0cmluZ1JlYWRlciB7CiAgICAgICAgY29uc3RydWN0b3IoYnVmZmVyKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAgICB9CiAgICAgICAgbmV4dCgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlci5jaGFyQ29kZUF0KHRoaXMucG9zKyspOwogICAgICAgIH0KICAgICAgICBwZWVrKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MpOwogICAgICAgIH0KICAgICAgICBpbmRleE9mKGNoYXIpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICBjb25zdCBpZHggPSBidWZmZXIuaW5kZXhPZihjaGFyLCBwb3MpOwogICAgICAgICAgcmV0dXJuIGlkeCA9PT0gLTEgPyBidWZmZXIubGVuZ3RoIDogaWR4OwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBFTVBUWSA9IFtdOwogICAgICBmdW5jdGlvbiBkZWNvZGVPcmlnaW5hbFNjb3BlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCBzY29wZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBsaW5lID0gMDsKICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IGxlbmd0aDsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICBsaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGxpbmUpOwogICAgICAgICAgY29uc3QgY29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgIGxhc3RbMl0gPSBsaW5lOwogICAgICAgICAgICBsYXN0WzNdID0gY29sdW1uOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtpbmQgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBoYXNOYW1lID0gZmllbGRzICYgMTsKICAgICAgICAgIGNvbnN0IHNjb3BlID0gaGFzTmFtZSA/IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmQsIGRlY29kZUludGVnZXIocmVhZGVyLCAwKV0gOiBbbGluZSwgY29sdW1uLCAwLCAwLCBraW5kXTsKICAgICAgICAgIGxldCB2YXJzID0gRU1QVFk7CiAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIGxlbmd0aCkpIHsKICAgICAgICAgICAgdmFycyA9IFtdOwogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgY29uc3QgdmFyc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgIHZhcnMucHVzaCh2YXJzSW5kZXgpOwogICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzY29wZS52YXJzID0gdmFyczsKICAgICAgICAgIHNjb3Blcy5wdXNoKHNjb3BlKTsKICAgICAgICAgIHN0YWNrLnB1c2goc2NvcGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcykgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjb3Blcy5sZW5ndGg7ICkgewogICAgICAgICAgaSA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGksIHdyaXRlciwgWzBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3Qgc2NvcGUgPSBzY29wZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCA0OiBraW5kLCB2YXJzIH0gPSBzY29wZTsKICAgICAgICBpZiAoaW5kZXggPiAwKQogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydExpbmUsIHN0YXRlWzBdKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc3RhcnRDb2x1bW4sIDApOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBraW5kLCAwKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSBzY29wZS5sZW5ndGggPT09IDYgPyAxIDogMDsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAoc2NvcGUubGVuZ3RoID09PSA2KQogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNjb3BlWzVdLCAwKTsKICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFycykgewogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHYsIDApOwogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gc2NvcGVzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlci53cml0ZShjb21tYSk7CiAgICAgICAgc3RhdGVbMF0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kTGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIDApOwogICAgICAgIHJldHVybiBpbmRleDsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVHZW5lcmF0ZWRSYW5nZXMoaW5wdXQpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gaW5wdXQ7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7CiAgICAgICAgY29uc3QgcmFuZ2VzID0gW107CiAgICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgICBsZXQgZ2VuTGluZSA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBkZWZpbml0aW9uU2NvcGVJbmRleCA9IDA7CiAgICAgICAgbGV0IGNhbGxzaXRlU291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVMaW5lID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVDb2x1bW4gPSAwOwogICAgICAgIGxldCBiaW5kaW5nTGluZSA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdDb2x1bW4gPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IHNlbWk7IHJlYWRlci5wb3MrKykgewogICAgICAgICAgICBnZW5Db2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgICAgbGFzdFsyXSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgbGFzdFszXSA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgIGNvbnN0IGhhc0RlZmluaXRpb24gPSBmaWVsZHMgJiAxOwogICAgICAgICAgICBjb25zdCBoYXNDYWxsc2l0ZSA9IGZpZWxkcyAmIDI7CiAgICAgICAgICAgIGNvbnN0IGhhc1Njb3BlID0gZmllbGRzICYgNDsKICAgICAgICAgICAgbGV0IGNhbGxzaXRlID0gbnVsbDsKICAgICAgICAgICAgbGV0IGJpbmRpbmdzID0gRU1QVFk7CiAgICAgICAgICAgIGxldCByYW5nZTsKICAgICAgICAgICAgaWYgKGhhc0RlZmluaXRpb24pIHsKICAgICAgICAgICAgICBjb25zdCBkZWZTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgZGVmaW5pdGlvblNjb3BlSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9PT0gZGVmU291cmNlc0luZGV4ID8gZGVmaW5pdGlvblNjb3BlSW5kZXggOiAwKTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU291cmNlc0luZGV4ID0gZGVmU291cmNlc0luZGV4OwogICAgICAgICAgICAgIHJhbmdlID0gW2dlbkxpbmUsIGdlbkNvbHVtbiwgMCwgMCwgZGVmU291cmNlc0luZGV4LCBkZWZpbml0aW9uU2NvcGVJbmRleF07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5pc1Njb3BlID0gISFoYXNTY29wZTsKICAgICAgICAgICAgaWYgKGhhc0NhbGxzaXRlKSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldkNzaSA9IGNhbGxzaXRlU291cmNlc0luZGV4OwogICAgICAgICAgICAgIGNvbnN0IHByZXZMaW5lID0gY2FsbHNpdGVMaW5lOwogICAgICAgICAgICAgIGNhbGxzaXRlU291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGNhbGxzaXRlU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBjb25zdCBzYW1lU291cmNlID0gcHJldkNzaSA9PT0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY2FsbHNpdGVMaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgPyBjYWxsc2l0ZUxpbmUgOiAwKTsKICAgICAgICAgICAgICBjYWxsc2l0ZUNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzYW1lU291cmNlICYmIHByZXZMaW5lID09PSBjYWxsc2l0ZUxpbmUgPyBjYWxsc2l0ZUNvbHVtbiA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlID0gW2NhbGxzaXRlU291cmNlc0luZGV4LCBjYWxsc2l0ZUxpbmUsIGNhbGxzaXRlQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5jYWxsc2l0ZSA9IGNhbGxzaXRlOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgYmluZGluZ3MgPSBbXTsKICAgICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgICBiaW5kaW5nQ29sdW1uID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbnNDb3VudCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uUmFuZ2VzOwogICAgICAgICAgICAgICAgaWYgKGV4cHJlc3Npb25zQ291bnQgPCAtMSkgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCldXTsKICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IC0xOyBpID4gZXhwcmVzc2lvbnNDb3VudDsgaS0tKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJldkJsID0gYmluZGluZ0xpbmU7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0xpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUpOwogICAgICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUgPT09IHByZXZCbCA/IGJpbmRpbmdDb2x1bW4gOiAwKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMucHVzaChbZXhwcmVzc2lvbiwgYmluZGluZ0xpbmUsIGJpbmRpbmdDb2x1bW5dKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcyA9IFtbZXhwcmVzc2lvbnNDb3VudF1dOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYmluZGluZ3MucHVzaChleHByZXNzaW9uUmFuZ2VzKTsKICAgICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmJpbmRpbmdzID0gYmluZGluZ3M7CiAgICAgICAgICAgIHJhbmdlcy5wdXNoKHJhbmdlKTsKICAgICAgICAgICAgc3RhY2sucHVzaChyYW5nZSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW5MaW5lKys7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHJhbmdlczsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzKSB7CiAgICAgICAgaWYgKHJhbmdlcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGksIHdyaXRlciwgWzAsIDAsIDAsIDAsIDAsIDAsIDBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSkgewogICAgICAgIGNvbnN0IHJhbmdlID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICBjb25zdCB7IDA6IHN0YXJ0TGluZSwgMTogc3RhcnRDb2x1bW4sIDI6IGVuZExpbmUsIDM6IGVuZENvbHVtbiwgaXNTY29wZSwgY2FsbHNpdGUsIGJpbmRpbmdzIH0gPSByYW5nZTsKICAgICAgICBpZiAoc3RhdGVbMF0gPCBzdGFydExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIHN0YXJ0TGluZSk7CiAgICAgICAgICBzdGF0ZVswXSA9IHN0YXJ0TGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgcmFuZ2VbMV0sIHN0YXRlWzFdKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSAocmFuZ2UubGVuZ3RoID09PSA2ID8gMSA6IDApIHwgKGNhbGxzaXRlID8gMiA6IDApIHwgKGlzU2NvcGUgPyA0IDogMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGZpZWxkcywgMCk7CiAgICAgICAgaWYgKHJhbmdlLmxlbmd0aCA9PT0gNikgewogICAgICAgICAgY29uc3QgeyA0OiBzb3VyY2VzSW5kZXgsIDU6IHNjb3Blc0luZGV4IH0gPSByYW5nZTsKICAgICAgICAgIGlmIChzb3VyY2VzSW5kZXggIT09IHN0YXRlWzJdKSB7CiAgICAgICAgICAgIHN0YXRlWzNdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzJdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbMl0pOwogICAgICAgICAgc3RhdGVbM10gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVzSW5kZXgsIHN0YXRlWzNdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNhbGxzaXRlKSB7CiAgICAgICAgICBjb25zdCB7IDA6IHNvdXJjZXNJbmRleCwgMTogY2FsbExpbmUsIDI6IGNhbGxDb2x1bW4gfSA9IHJhbmdlLmNhbGxzaXRlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbNF0pIHsKICAgICAgICAgICAgc3RhdGVbNV0gPSAwOwogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9IGVsc2UgaWYgKGNhbGxMaW5lICE9PSBzdGF0ZVs1XSkgewogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZVs0XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzb3VyY2VzSW5kZXgsIHN0YXRlWzRdKTsKICAgICAgICAgIHN0YXRlWzVdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxMaW5lLCBzdGF0ZVs1XSk7CiAgICAgICAgICBzdGF0ZVs2XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBjYWxsQ29sdW1uLCBzdGF0ZVs2XSk7CiAgICAgICAgfQogICAgICAgIGlmIChiaW5kaW5ncykgewogICAgICAgICAgZm9yIChjb25zdCBiaW5kaW5nIG9mIGJpbmRpbmdzKSB7CiAgICAgICAgICAgIGlmIChiaW5kaW5nLmxlbmd0aCA+IDEpCiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIC1iaW5kaW5nLmxlbmd0aCwgMCk7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBiaW5kaW5nWzBdWzBdOwogICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwcmVzc2lvbiwgMCk7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRMaW5lID0gc3RhcnRMaW5lOwogICAgICAgICAgICBsZXQgYmluZGluZ1N0YXJ0Q29sdW1uID0gc3RhcnRDb2x1bW47CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgYmluZGluZy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGV4cFJhbmdlID0gYmluZGluZ1tpXTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRMaW5lID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzFdLCBiaW5kaW5nU3RhcnRMaW5lKTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRDb2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMl0sIGJpbmRpbmdTdGFydENvbHVtbik7CiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzBdLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGVbMF0gPCBlbmRMaW5lKSB7CiAgICAgICAgICBjYXRjaHVwTGluZSh3cml0ZXIsIHN0YXRlWzBdLCBlbmRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gZW5kTGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kQ29sdW1uLCBzdGF0ZVsxXSk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhdGNodXBMaW5lKHdyaXRlciwgbGFzdExpbmUsIGxpbmUpIHsKICAgICAgICBkbyB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoc2VtaWNvbG9uKTsKICAgICAgICB9IHdoaWxlICgrK2xhc3RMaW5lIDwgbGluZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZGVjb2RlKG1hcHBpbmdzKSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IG1hcHBpbmdzOwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIobWFwcGluZ3MpOwogICAgICAgIGNvbnN0IGRlY29kZWQgPSBbXTsKICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgY29uc3QgbGluZSA9IFtdOwogICAgICAgICAgbGV0IHNvcnRlZCA9IHRydWU7CiAgICAgICAgICBsZXQgbGFzdENvbCA9IDA7CiAgICAgICAgICBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgd2hpbGUgKHJlYWRlci5wb3MgPCBzZW1pKSB7CiAgICAgICAgICAgIGxldCBzZWc7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoZ2VuQ29sdW1uIDwgbGFzdENvbCkKICAgICAgICAgICAgICBzb3J0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgbGFzdENvbCA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIHNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlTGluZSk7CiAgICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgICAgbmFtZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBuYW1lc0luZGV4KTsKICAgICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW4sIHNvdXJjZXNJbmRleCwgc291cmNlTGluZSwgc291cmNlQ29sdW1uLCBuYW1lc0luZGV4XTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW5dOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lLnB1c2goc2VnKTsKICAgICAgICAgICAgcmVhZGVyLnBvcysrOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFzb3J0ZWQpCiAgICAgICAgICAgIHNvcnQobGluZSk7CiAgICAgICAgICBkZWNvZGVkLnB1c2gobGluZSk7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8PSBsZW5ndGgpOwogICAgICAgIHJldHVybiBkZWNvZGVkOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHNvcnQobGluZSkgewogICAgICAgIGxpbmUuc29ydChzb3J0Q29tcGFyYXRvcik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydENvbXBhcmF0b3IoYSwgYikgewogICAgICAgIHJldHVybiBhWzBdIC0gYlswXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGUoZGVjb2RlZCkgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGVjb2RlZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgbGluZSA9IGRlY29kZWRbaV07CiAgICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgICAgaWYgKGxpbmUubGVuZ3RoID09PSAwKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsaW5lLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBsaW5lW2pdOwogICAgICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMF0sIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gMSkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMV0sIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsyXSwgc291cmNlTGluZSk7CiAgICAgICAgICAgIHNvdXJjZUNvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzNdLCBzb3VyY2VDb2x1bW4pOwogICAgICAgICAgICBpZiAoc2VnbWVudC5sZW5ndGggPT09IDQpCiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIG5hbWVzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFs0XSwgbmFtZXNJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB3cml0ZXIuZmx1c2goKTsKICAgICAgfQogICAgICBleHBvcnRzMy5kZWNvZGUgPSBkZWNvZGU7CiAgICAgIGV4cG9ydHMzLmRlY29kZUdlbmVyYXRlZFJhbmdlcyA9IGRlY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZGVjb2RlT3JpZ2luYWxTY29wZXMgPSBkZWNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgZXhwb3J0czMuZW5jb2RlID0gZW5jb2RlOwogICAgICBleHBvcnRzMy5lbmNvZGVHZW5lcmF0ZWRSYW5nZXMgPSBlbmNvZGVHZW5lcmF0ZWRSYW5nZXM7CiAgICAgIGV4cG9ydHMzLmVuY29kZU9yaWdpbmFsU2NvcGVzID0gZW5jb2RlT3JpZ2luYWxTY29wZXM7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcwp2YXIgcmVxdWlyZV9tYWdpY19zdHJpbmdfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIyKSA9PiBnbG9iYWxUaGlzLmJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHN0cjIpKSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIEJ1ZmZlciA9PT0gImZ1bmN0aW9uIikgewogICAgICAgIHJldHVybiAoc3RyMikgPT4gQnVmZmVyLmZyb20oc3RyMiwgInV0Zi04IikudG9TdHJpbmcoImJhc2U2NCIpOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIGVudmlyb25tZW50OiBgd2luZG93LmJ0b2FgIG9yIGBCdWZmZXJgIHNob3VsZCBiZSBzdXBwb3J0ZWQuIik7CiAgICAgICAgfTsKICAgICAgfQogICAgfQogICAgdmFyIGJ0b2EgPSAvKiBAX19QVVJFX18gKi8gZ2V0QnRvYSgpOwogICAgdmFyIFNvdXJjZU1hcCA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IocHJvcGVydGllcykgewogICAgICAgIHRoaXMudmVyc2lvbiA9IDM7CiAgICAgICAgdGhpcy5maWxlID0gcHJvcGVydGllcy5maWxlOwogICAgICAgIHRoaXMuc291cmNlcyA9IHByb3BlcnRpZXMuc291cmNlczsKICAgICAgICB0aGlzLnNvdXJjZXNDb250ZW50ID0gcHJvcGVydGllcy5zb3VyY2VzQ29udGVudDsKICAgICAgICB0aGlzLm5hbWVzID0gcHJvcGVydGllcy5uYW1lczsKICAgICAgICB0aGlzLm1hcHBpbmdzID0gc291cmNlbWFwQ29kZWMuZW5jb2RlKHByb3BlcnRpZXMubWFwcGluZ3MpOwogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0ICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy54X2dvb2dsZV9pZ25vcmVMaXN0ID0gcHJvcGVydGllcy54X2dvb2dsZV9pZ25vcmVMaXN0OwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHByb3BlcnRpZXMuZGVidWdJZCAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgIHRoaXMuZGVidWdJZCA9IHByb3BlcnRpZXMuZGVidWdJZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpOwogICAgICB9CiAgICAgIHRvVXJsKCkgewogICAgICAgIHJldHVybiAiZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIgKyBidG9hKHRoaXMudG9TdHJpbmcoKSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBndWVzc0luZGVudChjb2RlKSB7CiAgICAgIGNvbnN0IGxpbmVzID0gY29kZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgdGFiYmVkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXlx0Ky8udGVzdChsaW5lKSk7CiAgICAgIGNvbnN0IHNwYWNlZCA9IGxpbmVzLmZpbHRlcigobGluZSkgPT4gL14gezIsfS8udGVzdChsaW5lKSk7CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID09PSAwICYmIHNwYWNlZC5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBpZiAodGFiYmVkLmxlbmd0aCA+PSBzcGFjZWQubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuICIJIjsKICAgICAgfQogICAgICBjb25zdCBtaW4gPSBzcGFjZWQucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4gewogICAgICAgIGNvbnN0IG51bVNwYWNlcyA9IC9eICsvLmV4ZWMoY3VycmVudClbMF0ubGVuZ3RoOwogICAgICAgIHJldHVybiBNYXRoLm1pbihudW1TcGFjZXMsIHByZXZpb3VzKTsKICAgICAgfSwgSW5maW5pdHkpOwogICAgICByZXR1cm4gbmV3IEFycmF5KG1pbiArIDEpLmpvaW4oIiAiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFJlbGF0aXZlUGF0aChmcm9tLCB0bykgewogICAgICBjb25zdCBmcm9tUGFydHMgPSBmcm9tLnNwbGl0KC9bL1xcXS8pOwogICAgICBjb25zdCB0b1BhcnRzID0gdG8uc3BsaXQoL1svXFxdLyk7CiAgICAgIGZyb21QYXJ0cy5wb3AoKTsKICAgICAgd2hpbGUgKGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXSkgewogICAgICAgIGZyb21QYXJ0cy5zaGlmdCgpOwogICAgICAgIHRvUGFydHMuc2hpZnQoKTsKICAgICAgfQogICAgICBpZiAoZnJvbVBhcnRzLmxlbmd0aCkgewogICAgICAgIGxldCBpID0gZnJvbVBhcnRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaS0tKSBmcm9tUGFydHNbaV0gPSAiLi4iOwogICAgICB9CiAgICAgIHJldHVybiBmcm9tUGFydHMuY29uY2F0KHRvUGFydHMpLmpvaW4oIi8iKTsKICAgIH0KICAgIHZhciB0b1N0cmluZzIgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwogICAgZnVuY3Rpb24gaXNPYmplY3QyKHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZzIuY2FsbCh0aGluZykgPT09ICJbb2JqZWN0IE9iamVjdF0iOwogICAgfQogICAgZnVuY3Rpb24gZ2V0TG9jYXRvcihzb3VyY2UpIHsKICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lcyA9IHNvdXJjZS5zcGxpdCgiXG4iKTsKICAgICAgY29uc3QgbGluZU9mZnNldHMgPSBbXTsKICAgICAgZm9yIChsZXQgaSA9IDAsIHBvcyA9IDA7IGkgPCBvcmlnaW5hbExpbmVzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbGluZU9mZnNldHMucHVzaChwb3MpOwogICAgICAgIHBvcyArPSBvcmlnaW5hbExpbmVzW2ldLmxlbmd0aCArIDE7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uIGxvY2F0ZShpbmRleCkgewogICAgICAgIGxldCBpID0gMDsKICAgICAgICBsZXQgaiA9IGxpbmVPZmZzZXRzLmxlbmd0aDsKICAgICAgICB3aGlsZSAoaSA8IGopIHsKICAgICAgICAgIGNvbnN0IG0gPSBpICsgaiA+PiAxOwogICAgICAgICAgaWYgKGluZGV4IDwgbGluZU9mZnNldHNbbV0pIHsKICAgICAgICAgICAgaiA9IG07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpID0gbSArIDE7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxpbmUgPSBpIC0gMTsKICAgICAgICBjb25zdCBjb2x1bW4gPSBpbmRleCAtIGxpbmVPZmZzZXRzW2xpbmVdOwogICAgICAgIHJldHVybiB7IGxpbmUsIGNvbHVtbiB9OwogICAgICB9OwogICAgfQogICAgdmFyIHdvcmRSZWdleCA9IC9cdy87CiAgICB2YXIgTWFwcGluZ3MgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGhpcmVzKSB7CiAgICAgICAgdGhpcy5oaXJlcyA9IGhpcmVzOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUxpbmUgPSAwOwogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgdGhpcy5yYXcgPSBbXTsKICAgICAgICB0aGlzLnJhd1NlZ21lbnRzID0gdGhpcy5yYXdbdGhpcy5nZW5lcmF0ZWRDb2RlTGluZV0gPSBbXTsKICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZEVkaXQoc291cmNlSW5kZXgsIGNvbnRlbnQsIGxvYywgbmFtZUluZGV4KSB7CiAgICAgICAgaWYgKGNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50TGVuZ3RoTWludXNPbmUgPSBjb250ZW50Lmxlbmd0aCAtIDE7CiAgICAgICAgICBsZXQgY29udGVudExpbmVFbmQgPSBjb250ZW50LmluZGV4T2YoIlxuIiwgMCk7CiAgICAgICAgICBsZXQgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IC0xOwogICAgICAgICAgd2hpbGUgKGNvbnRlbnRMaW5lRW5kID49IDAgJiYgY29udGVudExlbmd0aE1pbnVzT25lID4gY29udGVudExpbmVFbmQpIHsKICAgICAgICAgICAgY29uc3Qgc2VnbWVudDIgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgICBzZWdtZW50Mi5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQyKTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgcHJldmlvdXNDb250ZW50TGluZUVuZCA9IGNvbnRlbnRMaW5lRW5kOwogICAgICAgICAgICBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCBjb250ZW50TGluZUVuZCArIDEpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICBpZiAobmFtZUluZGV4ID49IDApIHsKICAgICAgICAgICAgc2VnbWVudC5wdXNoKG5hbWVJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICB0aGlzLmFkdmFuY2UoY29udGVudC5zbGljZShwcmV2aW91c0NvbnRlbnRMaW5lRW5kICsgMSkpOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nKSB7CiAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2godGhpcy5wZW5kaW5nKTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50KTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gbnVsbDsKICAgICAgfQogICAgICBhZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgb3JpZ2luYWwsIGxvYywgc291cmNlbWFwTG9jYXRpb25zKSB7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTsKICAgICAgICBsZXQgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENoYXJJbmRleCA8IGNodW5rLmVuZCkgewogICAgICAgICAgaWYgKG9yaWdpbmFsW29yaWdpbmFsQ2hhckluZGV4XSA9PT0gIlxuIikgewogICAgICAgICAgICBsb2MubGluZSArPSAxOwogICAgICAgICAgICBsb2MuY29sdW1uID0gMDsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSArPSAxOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICAgICAgZmlyc3QgPSB0cnVlOwogICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodGhpcy5oaXJlcyB8fCBmaXJzdCB8fCBzb3VyY2VtYXBMb2NhdGlvbnMuaGFzKG9yaWdpbmFsQ2hhckluZGV4KSkgewogICAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBbdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uLCBzb3VyY2VJbmRleCwgbG9jLmxpbmUsIGxvYy5jb2x1bW5dOwogICAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzID09PSAiYm91bmRhcnkiKSB7CiAgICAgICAgICAgICAgICBpZiAod29yZFJlZ2V4LnRlc3Qob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdKSkgewogICAgICAgICAgICAgICAgICBpZiAoIWNoYXJJbkhpcmVzQm91bmRhcnkpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgY2hhckluSGlyZXNCb3VuZGFyeSA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvYy5jb2x1bW4gKz0gMTsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IDE7CiAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvcmlnaW5hbENoYXJJbmRleCArPSAxOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkdmFuY2Uoc3RyMikgewogICAgICAgIGlmICghc3RyMikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyMi5zcGxpdCgiXG4iKTsKICAgICAgICBpZiAobGluZXMubGVuZ3RoID4gMSkgewogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lcy5sZW5ndGggLSAxOyBpKyspIHsKICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSsrOwogICAgICAgICAgICB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IHRoaXMucmF3U2VnbWVudHMgPSBbXTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiArPSBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXS5sZW5ndGg7CiAgICAgIH0KICAgIH07CiAgICB2YXIgbiA9ICJcbiI7CiAgICB2YXIgd2FybmVkID0gewogICAgICBpbnNlcnRMZWZ0OiBmYWxzZSwKICAgICAgaW5zZXJ0UmlnaHQ6IGZhbHNlLAogICAgICBzdG9yZU5hbWU6IGZhbHNlCiAgICB9OwogICAgdmFyIE1hZ2ljU3RyaW5nID0gY2xhc3MgX01hZ2ljU3RyaW5nIHsKICAgICAgY29uc3RydWN0b3Ioc3RyaW5nLCBvcHRpb25zID0ge30pIHsKICAgICAgICBjb25zdCBjaHVuayA9IG5ldyBDaHVuaygwLCBzdHJpbmcubGVuZ3RoLCBzdHJpbmcpOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMsIHsKICAgICAgICAgIG9yaWdpbmFsOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogc3RyaW5nIH0sCiAgICAgICAgICBvdXRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBpbnRybzogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6ICIiIH0sCiAgICAgICAgICBmaXJzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBsYXN0U2VhcmNoZWRDaHVuazogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IGNodW5rIH0sCiAgICAgICAgICBieVN0YXJ0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGJ5RW5kOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZToge30gfSwKICAgICAgICAgIGZpbGVuYW1lOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5maWxlbmFtZSB9LAogICAgICAgICAgaW5kZW50RXhjbHVzaW9uUmFuZ2VzOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pbmRlbnRFeGNsdXNpb25SYW5nZXMgfSwKICAgICAgICAgIHNvdXJjZW1hcExvY2F0aW9uczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG5ldyBCaXRTZXQoKSB9LAogICAgICAgICAgc3RvcmVkTmFtZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgaW5kZW50U3RyOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogdm9pZCAwIH0sCiAgICAgICAgICBpZ25vcmVMaXN0OiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogb3B0aW9ucy5pZ25vcmVMaXN0IH0sCiAgICAgICAgICBvZmZzZXQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLm9mZnNldCB8fCAwIH0KICAgICAgICB9KTsKICAgICAgICB0aGlzLmJ5U3RhcnRbMF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5RW5kW3N0cmluZy5sZW5ndGhdID0gY2h1bms7CiAgICAgIH0KICAgICAgYWRkU291cmNlbWFwTG9jYXRpb24oY2hhcikgewogICAgICAgIHRoaXMuc291cmNlbWFwTG9jYXRpb25zLmFkZChjaGFyKTsKICAgICAgfQogICAgICBhcHBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kTGVmdChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5pbnRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsuYXBwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gKz0gY29udGVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2xvbmVkID0gbmV3IF9NYWdpY1N0cmluZyh0aGlzLm9yaWdpbmFsLCB7IGZpbGVuYW1lOiB0aGlzLmZpbGVuYW1lLCBvZmZzZXQ6IHRoaXMub2Zmc2V0IH0pOwogICAgICAgIGxldCBvcmlnaW5hbENodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBjbG9uZWRDaHVuayA9IGNsb25lZC5maXJzdENodW5rID0gY2xvbmVkLmxhc3RTZWFyY2hlZENodW5rID0gb3JpZ2luYWxDaHVuay5jbG9uZSgpOwogICAgICAgIHdoaWxlIChvcmlnaW5hbENodW5rKSB7CiAgICAgICAgICBjbG9uZWQuYnlTdGFydFtjbG9uZWRDaHVuay5zdGFydF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNsb25lZC5ieUVuZFtjbG9uZWRDaHVuay5lbmRdID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICBjb25zdCBuZXh0T3JpZ2luYWxDaHVuayA9IG9yaWdpbmFsQ2h1bmsubmV4dDsKICAgICAgICAgIGNvbnN0IG5leHRDbG9uZWRDaHVuayA9IG5leHRPcmlnaW5hbENodW5rICYmIG5leHRPcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgICBpZiAobmV4dENsb25lZENodW5rKSB7CiAgICAgICAgICAgIGNsb25lZENodW5rLm5leHQgPSBuZXh0Q2xvbmVkQ2h1bms7CiAgICAgICAgICAgIG5leHRDbG9uZWRDaHVuay5wcmV2aW91cyA9IGNsb25lZENodW5rOwogICAgICAgICAgICBjbG9uZWRDaHVuayA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2h1bmsgPSBuZXh0T3JpZ2luYWxDaHVuazsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLmxhc3RDaHVuayA9IGNsb25lZENodW5rOwogICAgICAgIGlmICh0aGlzLmluZGVudEV4Y2x1c2lvblJhbmdlcykgewogICAgICAgICAgY2xvbmVkLmluZGVudEV4Y2x1c2lvblJhbmdlcyA9IHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzLnNsaWNlKCk7CiAgICAgICAgfQogICAgICAgIGNsb25lZC5zb3VyY2VtYXBMb2NhdGlvbnMgPSBuZXcgQml0U2V0KHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICBjbG9uZWQuaW50cm8gPSB0aGlzLmludHJvOwogICAgICAgIGNsb25lZC5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgcmV0dXJuIGNsb25lZDsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gMDsKICAgICAgICBjb25zdCBuYW1lcyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVkTmFtZXMpOwogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gbmV3IE1hcHBpbmdzKG9wdGlvbnMuaGlyZXMpOwogICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgIGNvbnN0IGxvYyA9IGxvY2F0ZShjaHVuay5zdGFydCk7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLmludHJvKTsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgbWFwcGluZ3MuYWRkRWRpdCgKICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICBjaHVuay5jb250ZW50LAogICAgICAgICAgICAgIGxvYywKICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKHNvdXJjZUluZGV4LCBjaHVuaywgdGhpcy5vcmlnaW5hbCwgbG9jLCB0aGlzLnNvdXJjZW1hcExvY2F0aW9ucyk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgZmlsZTogb3B0aW9ucy5maWxlID8gb3B0aW9ucy5maWxlLnNwbGl0KC9bL1xcXS8pLnBvcCgpIDogdm9pZCAwLAogICAgICAgICAgc291cmNlczogWwogICAgICAgICAgICBvcHRpb25zLnNvdXJjZSA/IGdldFJlbGF0aXZlUGF0aChvcHRpb25zLmZpbGUgfHwgIiIsIG9wdGlvbnMuc291cmNlKSA6IG9wdGlvbnMuZmlsZSB8fCAiIgogICAgICAgICAgXSwKICAgICAgICAgIHNvdXJjZXNDb250ZW50OiBvcHRpb25zLmluY2x1ZGVDb250ZW50ID8gW3RoaXMub3JpZ2luYWxdIDogdm9pZCAwLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdDogdGhpcy5pZ25vcmVMaXN0ID8gW3NvdXJjZUluZGV4XSA6IHZvaWQgMAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBfZW5zdXJlaW5kZW50U3RyKCkgewogICAgICAgIGlmICh0aGlzLmluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLmluZGVudFN0ciA9IGd1ZXNzSW5kZW50KHRoaXMub3JpZ2luYWwpOwogICAgICAgIH0KICAgICAgfQogICAgICBfZ2V0UmF3SW5kZW50U3RyaW5nKCkgewogICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgIHJldHVybiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyID09PSBudWxsID8gIgkiIDogdGhpcy5pbmRlbnRTdHI7CiAgICAgIH0KICAgICAgaW5kZW50KGluZGVudFN0ciwgb3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhdHRlcm4gPSAvXlteXHJcbl0vZ207CiAgICAgICAgaWYgKGlzT2JqZWN0MihpbmRlbnRTdHIpKSB7CiAgICAgICAgICBvcHRpb25zID0gaW5kZW50U3RyOwogICAgICAgICAgaW5kZW50U3RyID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuX2Vuc3VyZWluZGVudFN0cigpOwogICAgICAgICAgaW5kZW50U3RyID0gdGhpcy5pbmRlbnRTdHIgfHwgIgkiOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3QgaXNFeGNsdWRlZCA9IHt9OwogICAgICAgIGlmIChvcHRpb25zLmV4Y2x1ZGUpIHsKICAgICAgICAgIGNvbnN0IGV4Y2x1c2lvbnMgPSB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlWzBdID09PSAibnVtYmVyIiA/IFtvcHRpb25zLmV4Y2x1ZGVdIDogb3B0aW9ucy5leGNsdWRlOwogICAgICAgICAgZXhjbHVzaW9ucy5mb3JFYWNoKChleGNsdXNpb24pID0+IHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IGV4Y2x1c2lvblswXTsgaSA8IGV4Y2x1c2lvblsxXTsgaSArPSAxKSB7CiAgICAgICAgICAgICAgaXNFeGNsdWRlZFtpXSA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBsZXQgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IG9wdGlvbnMuaW5kZW50U3RhcnQgIT09IGZhbHNlOwogICAgICAgIGNvbnN0IHJlcGxhY2VyID0gKG1hdGNoKSA9PiB7CiAgICAgICAgICBpZiAoc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgcmV0dXJuIGAke2luZGVudFN0cn0ke21hdGNofWA7CiAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gdHJ1ZTsKICAgICAgICAgIHJldHVybiBtYXRjaDsKICAgICAgICB9OwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIGxldCBjaGFySW5kZXggPSAwOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGlmIChjaHVuay5lZGl0ZWQpIHsKICAgICAgICAgICAgaWYgKCFpc0V4Y2x1ZGVkW2NoYXJJbmRleF0pIHsKICAgICAgICAgICAgICBjaHVuay5jb250ZW50ID0gY2h1bmsuY29udGVudC5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICAgICAgd2hpbGUgKGNoYXJJbmRleCA8IGVuZCkgewogICAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGFyID0gdGhpcy5vcmlnaW5hbFtjaGFySW5kZXhdOwogICAgICAgICAgICAgICAgaWYgKGNoYXIgPT09ICJcbiIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICJcciIgJiYgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlcikgewogICAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIGlmIChjaGFySW5kZXggPT09IGNodW5rLnN0YXJ0KSB7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgY2hhckluZGV4KTsKICAgICAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGluZGVudFN0cik7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY2hhckluZGV4ICs9IDE7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGNoYXJJbmRleCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaW5zZXJ0KCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgcHJlcGVuZFJpZ2h0KC4uLikgb3IgYXBwZW5kTGVmdCguLi4pIgogICAgICAgICk7CiAgICAgIH0KICAgICAgaW5zZXJ0TGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydExlZnQpIHsKICAgICAgICAgIGNvbnNvbGUud2FybigKICAgICAgICAgICAgIm1hZ2ljU3RyaW5nLmluc2VydExlZnQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcuYXBwZW5kTGVmdCguLi4pIGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgICAgd2FybmVkLmluc2VydExlZnQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50KTsKICAgICAgfQogICAgICBpbnNlcnRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGlmICghd2FybmVkLmluc2VydFJpZ2h0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRSaWdodCguLi4pIGlzIGRlcHJlY2F0ZWQuIFVzZSBtYWdpY1N0cmluZy5wcmVwZW5kUmlnaHQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRSaWdodCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLnByZXBlbmRSaWdodChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgbW92ZShzdGFydCwgZW5kLCBpbmRleCkgewogICAgICAgIHN0YXJ0ID0gc3RhcnQgKyB0aGlzLm9mZnNldDsKICAgICAgICBlbmQgPSBlbmQgKyB0aGlzLm9mZnNldDsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKGluZGV4ID49IHN0YXJ0ICYmIGluZGV4IDw9IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbW92ZSBhIHNlbGVjdGlvbiBpbnNpZGUgaXRzZWxmIik7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGNvbnN0IG9sZExlZnQgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICBjb25zdCBvbGRSaWdodCA9IGxhc3QubmV4dDsKICAgICAgICBjb25zdCBuZXdSaWdodCA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKCFuZXdSaWdodCAmJiBsYXN0ID09PSB0aGlzLmxhc3RDaHVuaykgcmV0dXJuIHRoaXM7CiAgICAgICAgY29uc3QgbmV3TGVmdCA9IG5ld1JpZ2h0ID8gbmV3UmlnaHQucHJldmlvdXMgOiB0aGlzLmxhc3RDaHVuazsKICAgICAgICBpZiAob2xkTGVmdCkgb2xkTGVmdC5uZXh0ID0gb2xkUmlnaHQ7CiAgICAgICAgaWYgKG9sZFJpZ2h0KSBvbGRSaWdodC5wcmV2aW91cyA9IG9sZExlZnQ7CiAgICAgICAgaWYgKG5ld0xlZnQpIG5ld0xlZnQubmV4dCA9IGZpcnN0OwogICAgICAgIGlmIChuZXdSaWdodCkgbmV3UmlnaHQucHJldmlvdXMgPSBsYXN0OwogICAgICAgIGlmICghZmlyc3QucHJldmlvdXMpIHRoaXMuZmlyc3RDaHVuayA9IGxhc3QubmV4dDsKICAgICAgICBpZiAoIWxhc3QubmV4dCkgewogICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBmaXJzdC5wcmV2aW91czsKICAgICAgICAgIHRoaXMubGFzdENodW5rLm5leHQgPSBudWxsOwogICAgICAgIH0KICAgICAgICBmaXJzdC5wcmV2aW91cyA9IG5ld0xlZnQ7CiAgICAgICAgbGFzdC5uZXh0ID0gbmV3UmlnaHQgfHwgbnVsbDsKICAgICAgICBpZiAoIW5ld0xlZnQpIHRoaXMuZmlyc3RDaHVuayA9IGZpcnN0OwogICAgICAgIGlmICghbmV3UmlnaHQpIHRoaXMubGFzdENodW5rID0gbGFzdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvdmVyd3JpdGUoc3RhcnQsIGVuZCwgY29udGVudCwgb3B0aW9ucykgewogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCB7IC4uLm9wdGlvbnMsIG92ZXJ3cml0ZTogIW9wdGlvbnMuY29udGVudE9ubHkgfSk7CiAgICAgIH0KICAgICAgdXBkYXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigicmVwbGFjZW1lbnQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiQ2Fubm90IG92ZXJ3cml0ZSBhIHplcm8tbGVuZ3RoIHJhbmdlIFx1MjAxMyB1c2UgYXBwZW5kTGVmdCBvciBwcmVwZW5kUmlnaHQgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgdGhpcy5fc3BsaXQoc3RhcnQpOwogICAgICAgIHRoaXMuX3NwbGl0KGVuZCk7CiAgICAgICAgaWYgKG9wdGlvbnMgPT09IHRydWUpIHsKICAgICAgICAgIGlmICghd2FybmVkLnN0b3JlTmFtZSkgewogICAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICAgIlRoZSBmaW5hbCBhcmd1bWVudCB0byBtYWdpY1N0cmluZy5vdmVyd3JpdGUoLi4uKSBzaG91bGQgYmUgYW4gb3B0aW9ucyBvYmplY3QuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcmljaC1oYXJyaXMvbWFnaWMtc3RyaW5nIgogICAgICAgICAgICApOwogICAgICAgICAgICB3YXJuZWQuc3RvcmVOYW1lID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wdGlvbnMgPSB7IHN0b3JlTmFtZTogdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBjb25zdCBzdG9yZU5hbWUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLnN0b3JlTmFtZSA6IGZhbHNlOwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZSA9IG9wdGlvbnMgIT09IHZvaWQgMCA/IG9wdGlvbnMub3ZlcndyaXRlIDogZmFsc2U7CiAgICAgICAgaWYgKHN0b3JlTmFtZSkgewogICAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMuc3RvcmVkTmFtZXMsIG9yaWdpbmFsLCB7CiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgICAgICB2YWx1ZTogdHJ1ZSwKICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5ieVN0YXJ0W3N0YXJ0XTsKICAgICAgICBjb25zdCBsYXN0ID0gdGhpcy5ieUVuZFtlbmRdOwogICAgICAgIGlmIChmaXJzdCkgewogICAgICAgICAgbGV0IGNodW5rID0gZmlyc3Q7CiAgICAgICAgICB3aGlsZSAoY2h1bmsgIT09IGxhc3QpIHsKICAgICAgICAgICAgaWYgKGNodW5rLm5leHQgIT09IHRoaXMuYnlTdGFydFtjaHVuay5lbmRdKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgb3ZlcndyaXRlIGFjcm9zcyBhIHNwbGl0IHBvaW50Iik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICBjaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmaXJzdC5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSwgIW92ZXJ3cml0ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gbmV3IENodW5rKHN0YXJ0LCBlbmQsICIiKS5lZGl0KGNvbnRlbnQsIHN0b3JlTmFtZSk7CiAgICAgICAgICBsYXN0Lm5leHQgPSBuZXdDaHVuazsKICAgICAgICAgIG5ld0NodW5rLnByZXZpb3VzID0gbGFzdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5pbnRybyA9IGNvbnRlbnQgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlFbmRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZExlZnQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5wcmVwZW5kUmlnaHQoY29udGVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcmVtb3ZlKHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5pbnRybyA9ICIiOwogICAgICAgICAgY2h1bmsub3V0cm8gPSAiIjsKICAgICAgICAgIGNodW5rLmVkaXQoIiIpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlc2V0KHN0YXJ0LCBlbmQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGlmIChzdGFydCA9PT0gZW5kKSByZXR1cm4gdGhpczsKICAgICAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA+IHRoaXMub3JpZ2luYWwubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoIkNoYXJhY3RlciBpcyBvdXQgb2YgYm91bmRzIik7CiAgICAgICAgaWYgKHN0YXJ0ID4gZW5kKSB0aHJvdyBuZXcgRXJyb3IoImVuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBzdGFydCIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5yZXNldCgpOwogICAgICAgICAgY2h1bmsgPSBlbmQgPiBjaHVuay5lbmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGxhc3RDaGFyKCkgewogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMub3V0cm9bdGhpcy5vdXRyby5sZW5ndGggLSAxXTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsub3V0cm9bY2h1bmsub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuY29udGVudC5sZW5ndGgpIHJldHVybiBjaHVuay5jb250ZW50W2NodW5rLmNvbnRlbnQubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoKSByZXR1cm4gY2h1bmsuaW50cm9bY2h1bmsuaW50cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdGhpcy5pbnRyb1t0aGlzLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIHJldHVybiAiIjsKICAgICAgfQogICAgICBsYXN0TGluZSgpIHsKICAgICAgICBsZXQgbGluZUluZGV4ID0gdGhpcy5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpOwogICAgICAgIGxldCBsaW5lU3RyID0gdGhpcy5vdXRybzsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5vdXRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5vdXRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgICAgICBsaW5lU3RyID0gY2h1bmsub3V0cm8gKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsaW5lSW5kZXggPSBjaHVuay5jb250ZW50Lmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmNvbnRlbnQuc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmNvbnRlbnQgKyBsaW5lU3RyOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuaW50cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLmludHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLnByZXZpb3VzKTsKICAgICAgICBsaW5lSW5kZXggPSB0aGlzLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gdGhpcy5pbnRyby5zdWJzdHIobGluZUluZGV4ICsgMSkgKyBsaW5lU3RyOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgbGluZVN0cjsKICAgICAgfQogICAgICBzbGljZShzdGFydCA9IDAsIGVuZCA9IHRoaXMub3JpZ2luYWwubGVuZ3RoIC0gdGhpcy5vZmZzZXQpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHRoaXMub3JpZ2luYWwubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICB3aGlsZSAoc3RhcnQgPCAwKSBzdGFydCArPSB0aGlzLm9yaWdpbmFsLmxlbmd0aDsKICAgICAgICAgIHdoaWxlIChlbmQgPCAwKSBlbmQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rICYmIChjaHVuay5zdGFydCA+IHN0YXJ0IHx8IGNodW5rLmVuZCA8PSBzdGFydCkpIHsKICAgICAgICAgIGlmIChjaHVuay5zdGFydCA8IGVuZCAmJiBjaHVuay5lbmQgPj0gZW5kKSB7CiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIGlmIChjaHVuayAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuc3RhcnQgIT09IHN0YXJ0KQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgdXNlIHJlcGxhY2VkIGNoYXJhY3RlciAke3N0YXJ0fSBhcyBzbGljZSBzdGFydCBhbmNob3IuYCk7CiAgICAgICAgY29uc3Qgc3RhcnRDaHVuayA9IGNodW5rOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgaWYgKGNodW5rLmludHJvICYmIChzdGFydENodW5rICE9PSBjaHVuayB8fCBjaHVuay5zdGFydCA9PT0gc3RhcnQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5pbnRybzsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGNvbnRhaW5zRW5kID0gY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZDsKICAgICAgICAgIGlmIChjb250YWluc0VuZCAmJiBjaHVuay5lZGl0ZWQgJiYgY2h1bmsuZW5kICE9PSBlbmQpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtlbmR9IGFzIHNsaWNlIGVuZCBhbmNob3IuYCk7CiAgICAgICAgICBjb25zdCBzbGljZVN0YXJ0ID0gc3RhcnRDaHVuayA9PT0gY2h1bmsgPyBzdGFydCAtIGNodW5rLnN0YXJ0IDogMDsKICAgICAgICAgIGNvbnN0IHNsaWNlRW5kID0gY29udGFpbnNFbmQgPyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGVuZCAtIGNodW5rLmVuZCA6IGNodW5rLmNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgcmVzdWx0ICs9IGNodW5rLmNvbnRlbnQuc2xpY2Uoc2xpY2VTdGFydCwgc2xpY2VFbmQpOwogICAgICAgICAgaWYgKGNodW5rLm91dHJvICYmICghY29udGFpbnNFbmQgfHwgY2h1bmsuZW5kID09PSBlbmQpKSB7CiAgICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5vdXRybzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjb250YWluc0VuZCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICAvLyBUT0RPIGRlcHJlY2F0ZSB0aGlzPyBub3QgcmVhbGx5IHZlcnkgdXNlZnVsCiAgICAgIHNuaXAoc3RhcnQsIGVuZCkgewogICAgICAgIGNvbnN0IGNsb25lID0gdGhpcy5jbG9uZSgpOwogICAgICAgIGNsb25lLnJlbW92ZSgwLCBzdGFydCk7CiAgICAgICAgY2xvbmUucmVtb3ZlKGVuZCwgY2xvbmUub3JpZ2luYWwubGVuZ3RoKTsKICAgICAgICByZXR1cm4gY2xvbmU7CiAgICAgIH0KICAgICAgX3NwbGl0KGluZGV4KSB7CiAgICAgICAgaWYgKHRoaXMuYnlTdGFydFtpbmRleF0gfHwgdGhpcy5ieUVuZFtpbmRleF0pIHJldHVybjsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmxhc3RTZWFyY2hlZENodW5rOwogICAgICAgIGNvbnN0IHNlYXJjaEZvcndhcmQgPSBpbmRleCA+IGNodW5rLmVuZDsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5jb250YWlucyhpbmRleCkpIHJldHVybiB0aGlzLl9zcGxpdENodW5rKGNodW5rLCBpbmRleCk7CiAgICAgICAgICBjaHVuayA9IHNlYXJjaEZvcndhcmQgPyB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSA6IHRoaXMuYnlFbmRbY2h1bmsuc3RhcnRdOwogICAgICAgIH0KICAgICAgfQogICAgICBfc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpIHsKICAgICAgICBpZiAoY2h1bmsuZWRpdGVkICYmIGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICBjb25zdCBsb2MgPSBnZXRMb2NhdG9yKHRoaXMub3JpZ2luYWwpKGluZGV4KTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgYENhbm5vdCBzcGxpdCBhIGNodW5rIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBlZGl0ZWQgKCR7bG9jLmxpbmV9OiR7bG9jLmNvbHVtbn0gXHUyMDEzICIke2NodW5rLm9yaWdpbmFsfSIpYAogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3Q2h1bmsgPSBjaHVuay5zcGxpdChpbmRleCk7CiAgICAgICAgdGhpcy5ieUVuZFtpbmRleF0gPSBjaHVuazsKICAgICAgICB0aGlzLmJ5U3RhcnRbaW5kZXhdID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5ieUVuZFtuZXdDaHVuay5lbmRdID0gbmV3Q2h1bms7CiAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBuZXdDaHVuazsKICAgICAgICB0aGlzLmxhc3RTZWFyY2hlZENodW5rID0gY2h1bms7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgbGV0IHN0cjIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0cjIgKz0gY2h1bmsudG9TdHJpbmcoKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHN0cjIgKyB0aGlzLm91dHJvOwogICAgICB9CiAgICAgIGlzRW1wdHkoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggJiYgY2h1bmsuaW50cm8udHJpbSgpIHx8IGNodW5rLmNvbnRlbnQubGVuZ3RoICYmIGNodW5rLmNvbnRlbnQudHJpbSgpIHx8IGNodW5rLm91dHJvLmxlbmd0aCAmJiBjaHVuay5vdXRyby50cmltKCkpCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGxlbmd0aCA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgbGVuZ3RoICs9IGNodW5rLmludHJvLmxlbmd0aCArIGNodW5rLmNvbnRlbnQubGVuZ3RoICsgY2h1bmsub3V0cm8ubGVuZ3RoOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsubmV4dCk7CiAgICAgICAgcmV0dXJuIGxlbmd0aDsKICAgICAgfQogICAgICB0cmltTGluZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbSgiW1xcclxcbl0iKTsKICAgICAgfQogICAgICB0cmltKGNoYXJUeXBlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMudHJpbVN0YXJ0KGNoYXJUeXBlKS50cmltRW5kKGNoYXJUeXBlKTsKICAgICAgfQogICAgICB0cmltRW5kQWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1FbmQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RDaHVuayA9PT0gY2h1bmspIHsKICAgICAgICAgICAgICB0aGlzLmxhc3RDaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfSB3aGlsZSAoY2h1bmspOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltRW5kQWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgZW5kID0gY2h1bmsuZW5kOwogICAgICAgICAgY29uc3QgYWJvcnRlZCA9IGNodW5rLnRyaW1TdGFydChyeCk7CiAgICAgICAgICBpZiAoY2h1bmsuZW5kICE9PSBlbmQpIHsKICAgICAgICAgICAgaWYgKGNodW5rID09PSB0aGlzLmxhc3RDaHVuaykgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLmVuZF0gPSBjaHVuazsKICAgICAgICAgICAgdGhpcy5ieVN0YXJ0W2NodW5rLm5leHQuc3RhcnRdID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5uZXh0LmVuZF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFib3J0ZWQpIHJldHVybiB0cnVlOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgdGhpcy50cmltU3RhcnRBYm9ydGVkKGNoYXJUeXBlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBoYXNDaGFuZ2VkKCkgewogICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsICE9PSB0aGlzLnRvU3RyaW5nKCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VSZWdleHAoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgZnVuY3Rpb24gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHN0cjIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0cjIsIG1hdGNoLmdyb3Vwcyk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIG1hdGNoQWxsKHJlLCBzdHIyKSB7CiAgICAgICAgICBsZXQgbWF0Y2g7CiAgICAgICAgICBjb25zdCBtYXRjaGVzID0gW107CiAgICAgICAgICB3aGlsZSAobWF0Y2ggPSByZS5leGVjKHN0cjIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0Mihzb3VyY2UpIHx8ICFzb3VyY2UuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAiYnVuZGxlLmFkZFNvdXJjZSgpIHRha2VzIGFuIG9iamVjdCB3aXRoIGEgYGNvbnRlbnRgIHByb3BlcnR5LCB3aGljaCBzaG91bGQgYmUgYW4gaW5zdGFuY2Ugb2YgTWFnaWNTdHJpbmcsIGFuZCBhbiBvcHRpb25hbCBgZmlsZW5hbWVgIgogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgWyJmaWxlbmFtZSIsICJpZ25vcmVMaXN0IiwgImluZGVudEV4Y2x1c2lvblJhbmdlcyIsICJzZXBhcmF0b3IiXS5mb3JFYWNoKChvcHRpb24pID0+IHsKICAgICAgICAgIGlmICghaGFzT3duUHJvcC5jYWxsKHNvdXJjZSwgb3B0aW9uKSkgc291cmNlW29wdGlvbl0gPSBzb3VyY2UuY29udGVudFtvcHRpb25dOwogICAgICAgIH0pOwogICAgICAgIGlmIChzb3VyY2Uuc2VwYXJhdG9yID09PSB2b2lkIDApIHsKICAgICAgICAgIHNvdXJjZS5zZXBhcmF0b3IgPSB0aGlzLnNlcGFyYXRvcjsKICAgICAgICB9CiAgICAgICAgaWYgKHNvdXJjZS5maWxlbmFtZSkgewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwodGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUsIHNvdXJjZS5maWxlbmFtZSkpIHsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA9IHRoaXMudW5pcXVlU291cmNlcy5sZW5ndGg7CiAgICAgICAgICAgIHRoaXMudW5pcXVlU291cmNlcy5wdXNoKHsgZmlsZW5hbWU6IHNvdXJjZS5maWxlbmFtZSwgY29udGVudDogc291cmNlLmNvbnRlbnQub3JpZ2luYWwgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCB1bmlxdWVTb3VyY2UgPSB0aGlzLnVuaXF1ZVNvdXJjZXNbdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXV07CiAgICAgICAgICAgIGlmIChzb3VyY2UuY29udGVudC5vcmlnaW5hbCAhPT0gdW5pcXVlU291cmNlLmNvbnRlbnQpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYElsbGVnYWwgc291cmNlOiBzYW1lIGZpbGVuYW1lICgke3NvdXJjZS5maWxlbmFtZX0pLCBkaWZmZXJlbnQgY29udGVudHNgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLnNvdXJjZXMucHVzaChzb3VyY2UpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZChzdHIyLCBvcHRpb25zKSB7CiAgICAgICAgdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgY29udGVudDogbmV3IE1hZ2ljU3RyaW5nKHN0cjIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cjIpIHsKICAgICAgICB0aGlzLmludHJvID0gc3RyMiArIHRoaXMuaW50cm87CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuc291cmNlcy5tYXAoKHNvdXJjZSwgaSkgPT4gewogICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gc291cmNlLnNlcGFyYXRvciAhPT0gdm9pZCAwID8gc291cmNlLnNlcGFyYXRvciA6IHRoaXMuc2VwYXJhdG9yOwogICAgICAgICAgY29uc3Qgc3RyMiA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyMjsKICAgICAgICB9KS5qb2luKCIiKTsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGJvZHk7CiAgICAgIH0KICAgICAgaXNFbXB0eSgpIHsKICAgICAgICBpZiAodGhpcy5pbnRyby5sZW5ndGggJiYgdGhpcy5pbnRyby50cmltKCkpIHJldHVybiBmYWxzZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VzLnNvbWUoKHNvdXJjZSkgPT4gIXNvdXJjZS5jb250ZW50LmlzRW1wdHkoKSkpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlcy5yZWR1Y2UoCiAgICAgICAgICAobGVuZ3RoLCBzb3VyY2UpID0+IGxlbmd0aCArIHNvdXJjZS5jb250ZW50Lmxlbmd0aCgpLAogICAgICAgICAgdGhpcy5pbnRyby5sZW5ndGgKICAgICAgICApOwogICAgICB9CiAgICAgIHRyaW1MaW5lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltKCJbXFxyXFxuXSIpOwogICAgICB9CiAgICAgIHRyaW0oY2hhclR5cGUpIHsKICAgICAgICByZXR1cm4gdGhpcy50cmltU3RhcnQoY2hhclR5cGUpLnRyaW1FbmQoY2hhclR5cGUpOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgiXiIgKyAoY2hhclR5cGUgfHwgIlxccyIpICsgIisiKTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKCF0aGlzLmludHJvKSB7CiAgICAgICAgICBsZXQgc291cmNlOwogICAgICAgICAgbGV0IGkgPSAwOwogICAgICAgICAgZG8gewogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLnNvdXJjZXNbaSsrXTsKICAgICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfSB3aGlsZSAoIXNvdXJjZS5jb250ZW50LnRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIGNvbnN0IHJ4ID0gbmV3IFJlZ0V4cCgoY2hhclR5cGUgfHwgIlxccyIpICsgIiskIik7CiAgICAgICAgbGV0IHNvdXJjZTsKICAgICAgICBsZXQgaSA9IHRoaXMuc291cmNlcy5sZW5ndGggLSAxOwogICAgICAgIGRvIHsKICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpLS1dOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgfTsKICAgIE1hZ2ljU3RyaW5nLkJ1bmRsZSA9IEJ1bmRsZTsKICAgIE1hZ2ljU3RyaW5nLlNvdXJjZU1hcCA9IFNvdXJjZU1hcDsKICAgIE1hZ2ljU3RyaW5nLmRlZmF1bHQgPSBNYWdpY1N0cmluZzsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IE1hZ2ljU3RyaW5nOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcwp2YXIgcmVxdWlyZV9yZWNvcmRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBtYWdpY19zdHJpbmdfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX21hZ2ljX3N0cmluZ19janMoKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBJbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5kZXgsIG1pbiwgbWF4ID0gSW5maW5pdHkpIHsKICAgICAgICBzdXBlcihgSW5kZXggJHtpbmRleH0gb3V0c2lkZSBvZiByYW5nZSBbJHttaW59LCAke21heH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uID0gSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uOwogICAgdmFyIFVwZGF0ZVJlY29yZGVyQmFzZSA9IGNsYXNzIF9VcGRhdGVSZWNvcmRlckJhc2UgewogICAgICBkYXRhOwogICAgICBib207CiAgICAgIF9wYXRoOwogICAgICBjb250ZW50OwogICAgICBjb25zdHJ1Y3RvcihkYXRhLCBwYXRoLCBlbmNvZGluZyA9ICJ1dGYtOCIsIGJvbSA9IGZhbHNlKSB7CiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICB0aGlzLmJvbSA9IGJvbTsKICAgICAgICBsZXQgdGV4dDsKICAgICAgICB0cnkgewogICAgICAgICAgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgeyBmYXRhbDogdHJ1ZSwgaWdub3JlQk9NOiBmYWxzZSB9KS5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyAke2VuY29kaW5nfSB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fcGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5jb250ZW50ID0gbmV3IG1hZ2ljX3N0cmluZ18xLmRlZmF1bHQodGV4dCk7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZUZyb21GaWxlRW50cnkoZW50cnkpIHsKICAgICAgICBjb25zdCBjMCA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDAgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMCk7CiAgICAgICAgY29uc3QgYzEgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAxICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDEpOwogICAgICAgIGNvbnN0IGMyID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMiAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgyKTsKICAgICAgICBpZiAoYzAgPT0gMjM5ICYmIGMxID09IDE4NyAmJiBjMiA9PSAxOTEpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTgiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTUgJiYgYzEgPT0gMjU0KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmxlIiwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIGlmIChjMCA9PT0gMjU0ICYmIGMxID09IDI1NSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtMTZiZSIsIHRydWUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgX2Fzc2VydEluZGV4KGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+IHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpIHsKICAgICAgICAgIHRocm93IG5ldyBJbmRleE91dE9mQm91bmRFeGNlcHRpb24oaW5kZXgsIDAsIHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBUaGVzZSBqdXN0IHJlY29yZCBjaGFuZ2VzLgogICAgICBpbnNlcnRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRSaWdodChpbmRleCwgY29udGVudC50b1N0cmluZygpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZW1vdmUoaW5kZXgsIGxlbmd0aCkgewogICAgICAgIHRoaXMuX2Fzc2VydEluZGV4KGluZGV4KTsKICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlKGluZGV4LCBpbmRleCArIGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwbHkoY29udGVudCkgewogICAgICAgIGlmICghY29udGVudC5lcXVhbHModGhpcy5kYXRhKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHRoaXMucGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IEJ1ZmZlci5mcm9tKCh0aGlzLmJvbSA/ICJcdUZFRkYiIDogIiIpICsgdGhpcy5jb250ZW50LnRvU3RyaW5nKCksICJ1dGYtOCIpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBVcGRhdGVSZWNvcmRlckJhc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcwp2YXIgcmVxdWlyZV9zY29wZWQyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NvcGVkVHJlZSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBTY29wZWRGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9iYXNlOwogICAgICBzY29wZTsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHRoaXMuX2Jhc2UucGF0aCkpOwogICAgICB9CiAgICAgIGdldCBjb250ZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNvbnRlbnQ7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkRGlyRW50cnkgPSBjbGFzcyBfU2NvcGVkRGlyRW50cnkgewogICAgICBfYmFzZTsKICAgICAgc2NvcGU7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7CiAgICAgIH0KICAgICAgZ2V0IHBhcmVudCgpIHsKICAgICAgICBpZiAoIXRoaXMuX2Jhc2UucGFyZW50IHx8IHRoaXMuX2Jhc2UucGF0aCA9PSB0aGlzLnNjb3BlKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBfU2NvcGVkRGlyRW50cnkodGhpcy5fYmFzZS5wYXJlbnQsIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIGdldCBwYXRoKCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgdGhpcy5fYmFzZS5wYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmRpcnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZGlyczsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uuc3ViZmlsZXM7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZGlyKG5hbWUpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgX1Njb3BlZERpckVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZmlsZShuYW1lKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcigoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgcGF0aCkpLCBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgU2NvcGVkVHJlZSA9IGNsYXNzIF9TY29wZWRUcmVlIHsKICAgICAgX2Jhc2U7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHNjb3BlKTsKICAgICAgICB0aGlzLl9yb290ID0gbmV3IFNjb3BlZERpckVudHJ5KHRoaXMuX2Jhc2UuZ2V0RGlyKG5vcm1hbGl6ZWRTY29wZSksIG5vcm1hbGl6ZWRTY29wZSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3Q7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX1Njb3BlZFRyZWUodGhpcy5fYmFzZS5icmFuY2goKSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgbWVyZ2Uob3RoZXIsIHN0cmF0ZWd5KSB7CiAgICAgICAgY29uc3Qgc2VsZjIgPSB0aGlzOwogICAgICAgIGNvbnN0IGRlbGVnYXRlID0gbmV3IGNsYXNzIGV4dGVuZHMgZGVsZWdhdGVfMS5EZWxlZ2F0ZVRyZWUgewogICAgICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgICAgIHJldHVybiBvdGhlci5hY3Rpb25zLm1hcCgoYWN0aW9uKSA9PiBzZWxmMi5fZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSk7CiAgICAgICAgICB9CiAgICAgICAgfShvdGhlcik7CiAgICAgICAgdGhpcy5fYmFzZS5tZXJnZShkZWxlZ2F0ZSwgc3RyYXRlZ3kpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZFRleHQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlYWRKc29uKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkSnNvbih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5leGlzdHModGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmdldERpcih0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWREaXJFbnRyeShlbnRyeSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHJldHVybiB0aGlzLl9yb290LnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2Uub3ZlcndyaXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuYmVnaW5VcGRhdGUodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jb21taXRVcGRhdGUocmVjb3JkKTsKICAgICAgfQogICAgICAvLyBTdHJ1Y3R1cmFsIG1ldGhvZHMuCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY3JlYXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmRlbGV0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVuYW1lKHRoaXMuX2Z1bGxQYXRoKGZyb20pLCB0aGlzLl9mdWxsUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5hcHBseSh0aGlzLl9mdWxsUGF0aEFjdGlvbihhY3Rpb24pLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgY29uc3Qgc2NvcGVkQWN0aW9ucyA9IFtdOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRoaXMuX2Jhc2UuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFhY3Rpb24ucGF0aC5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFjdGlvbi5raW5kICE9PSAiciIpIHsKICAgICAgICAgICAgc2NvcGVkQWN0aW9ucy5wdXNoKHsKICAgICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi5wYXRoKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi50by5zdGFydHNXaXRoKHRoaXMuX3Jvb3Quc2NvcGUgKyAiLyIpKSB7CiAgICAgICAgICAgIHNjb3BlZEFjdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICAgIHBhdGg6ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24ucGF0aCkpLAogICAgICAgICAgICAgIHRvOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnRvKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBzY29wZWRBY3Rpb25zOwogICAgICB9CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfZnVsbFBhdGgocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKHRoaXMuX3Jvb3Quc2NvcGUsICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbikgewogICAgICAgIGxldCBmdWxsUGF0aEFjdGlvbjsKICAgICAgICBpZiAoYWN0aW9uLmtpbmQgPT09ICJyIikgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpLAogICAgICAgICAgICB0bzogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnRvKQogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZnVsbFBhdGhBY3Rpb24gPSB7CiAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgcGF0aDogdGhpcy5fZnVsbFBhdGgoYWN0aW9uLnBhdGgpCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVsbFBhdGhBY3Rpb247CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZWRUcmVlID0gU2NvcGVkVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaG9zdC10cmVlLmpzCnZhciByZXF1aXJlX2hvc3RfdHJlZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBleHBvcnRzMi5Ib3N0VHJlZSA9IGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBkZWxlZ2F0ZV8xID0gcmVxdWlyZV9kZWxlZ2F0ZSgpOwogICAgdmFyIGVudHJ5XzEgPSByZXF1aXJlX2VudHJ5KCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciByZWNvcmRlcl8xID0gcmVxdWlyZV9yZWNvcmRlcigpOwogICAgdmFyIHNjb3BlZF8xID0gcmVxdWlyZV9zY29wZWQyKCk7CiAgICB2YXIgX3VuaXF1ZUlkID0gMDsKICAgIHZhciBIb3N0RGlyRW50cnkgPSBjbGFzcyB7CiAgICAgIHBhcmVudDsKICAgICAgcGF0aDsKICAgICAgX2hvc3Q7CiAgICAgIF90cmVlOwogICAgICBjb25zdHJ1Y3RvcihwYXJlbnQsIHBhdGgsIF9ob3N0LCBfdHJlZSkgewogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIHRoaXMucGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX3RyZWUgPSBfdHJlZTsKICAgICAgfQogICAgICBnZXQgc3ViZGlycygpIHsKICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5saXN0KHRoaXMucGF0aCkuZmlsdGVyKChmcmFnbWVudCkgPT4gdGhpcy5faG9zdC5pc0RpcmVjdG9yeSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZ2V0IHN1YmZpbGVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRmlsZSgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgZnJhZ21lbnQpKSk7CiAgICAgIH0KICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXREaXIoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICBmaWxlKG5hbWUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fdHJlZS5nZXQoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpLmZvckVhY2goKGZpbGUpID0+IHZpc2l0b3IoZmlsZS5wYXRoLCBmaWxlKSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgIT09IGludGVyZmFjZV8xLkZpbGVWaXNpdG9yQ2FuY2VsVG9rZW4pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0U3ViZmlsZXNSZWN1cnNpdmVseSgpIHsKICAgICAgICBmdW5jdGlvbiBfcmVjdXJzZShlbnRyeSkgewogICAgICAgICAgcmV0dXJuIGVudHJ5LnN1YmRpcnMucmVkdWNlKChmaWxlcywgc3ViZGlyKSA9PiBbLi4uZmlsZXMsIC4uLl9yZWN1cnNlKGVudHJ5LmRpcihzdWJkaXIpKV0sIGVudHJ5LnN1YmZpbGVzLm1hcCgoc3ViZmlsZSkgPT4gZW50cnkuZmlsZShzdWJmaWxlKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gX3JlY3Vyc2UodGhpcyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0RGlyRW50cnkgPSBIb3N0RGlyRW50cnk7CiAgICB2YXIgSG9zdFRyZWUgPSBjbGFzcyBfSG9zdFRyZWUgewogICAgICBfYmFja2VuZDsKICAgICAgX2lkID0gLS1fdW5pcXVlSWQ7CiAgICAgIF9yZWNvcmQ7CiAgICAgIF9yZWNvcmRTeW5jOwogICAgICBfYW5jZXN0cnkgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZGlyQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgc3RhdGljIGlzSG9zdFRyZWUodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiB0cmVlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgdHJlZS5fYW5jZXN0cnkgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrZW5kID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuRW1wdHkoKSkgewogICAgICAgIHRoaXMuX2JhY2tlbmQgPSBfYmFja2VuZDsKICAgICAgICB0aGlzLl9yZWNvcmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5Db3JkSG9zdChuZXcgY29yZV8xLnZpcnR1YWxGcy5TYWZlUmVhZG9ubHlIb3N0KF9iYWNrZW5kKSk7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYyA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlN5bmNEZWxlZ2F0ZUhvc3QodGhpcy5fcmVjb3JkKTsKICAgICAgfQogICAgICBfbm9ybWFsaXplUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKTsKICAgICAgfQogICAgICBfd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsQ3JlYXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsT3ZlcndyaXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxPdmVyd3JpdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxEZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbERlbGV0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsUmVuYW1lKHBhdGgpOwogICAgICB9CiAgICAgIGJyYW5jaCgpIHsKICAgICAgICBjb25zdCBicmFuY2hlZFRyZWUgPSBuZXcgX0hvc3RUcmVlKHRoaXMuX2JhY2tlbmQpOwogICAgICAgIGJyYW5jaGVkVHJlZS5fcmVjb3JkID0gdGhpcy5fcmVjb3JkLmNsb25lKCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdChicmFuY2hlZFRyZWUuX3JlY29yZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9hbmNlc3RyeSA9IG5ldyBTZXQodGhpcy5fYW5jZXN0cnkpLmFkZCh0aGlzLl9pZCk7CiAgICAgICAgcmV0dXJuIGJyYW5jaGVkVHJlZTsKICAgICAgfQogICAgICBpc0FuY2VzdG9yT2YodHJlZSkgewogICAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgX0hvc3RUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdHJlZS5fYW5jZXN0cnkuaGFzKHRoaXMuX2lkKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBkZWxlZ2F0ZV8xLkRlbGVnYXRlVHJlZSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuaXNBbmNlc3Rvck9mKHRyZWUuX290aGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBzY29wZWRfMS5TY29wZWRUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fYmFzZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBtZXJnZShvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgICBpZiAob3RoZXIgPT09IHRoaXMpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuaXNBbmNlc3Rvck9mKG90aGVyKSkgewogICAgICAgICAgc3RyYXRlZ3kgfD0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNyZWF0aW9uQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3QpID09IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dDcmVhdGlvbkNvbmZsaWN0OwogICAgICAgIGNvbnN0IG92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dPdmVyd3JpdGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0OwogICAgICAgIGNvbnN0IGRlbGV0ZUNvbmZsaWN0QWxsb3dlZCA9IChzdHJhdGVneSAmIGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuQWxsb3dEZWxldGVDb25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0OwogICAgICAgIG90aGVyLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCBjb250ZW50IH0gPSBhY3Rpb247CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxDcmVhdGUocGF0aCkgfHwgdGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSB8fCB0aGlzLmV4aXN0cyhwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY3JlYXRpb25Db25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAibyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSAmJiAhb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxPdmVyd3JpdGUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nQ29udGVudCA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0NvbnRlbnQgJiYgY29udGVudC5lcXVhbHMoZXhpc3RpbmdDb250ZW50KSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIW92ZXJ3cml0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5fcmVjb3JkLndyaXRlKHBhdGgsIGNvbnRlbnQpLnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJyIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgdG8gfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsUmVuYW1lKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fcmVjb3JkLndpbGxSZW5hbWVUbyhwYXRoLCB0bykpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMucmVuYW1lKHBhdGgsIHRvKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSAiZCI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGggfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIXRoaXMuZXhpc3RzKHBhdGgpICYmICFkZWxldGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmRTeW5jLmRlbGV0ZShwYXRoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBnZXQgcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5nZXREaXIoIi8iKTsKICAgICAgfQogICAgICAvLyBSZWFkb25seS4KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICByZXR1cm4gZW50cnkgPyBlbnRyeS5jb250ZW50IDogbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMucmVhZChwYXRoKTsKICAgICAgICBpZiAoZGF0YSA9PT0gbnVsbCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoInV0Zi04IiwgeyBmYXRhbDogdHJ1ZSB9KTsKICAgICAgICB0cnkgewogICAgICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGRhdGEpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgVHlwZUVycm9yIHx8IGUuY29kZSA9PT0gIkVSUl9FTkNPRElOR19JTlZBTElEX0VOQ09ERURfREFUQSIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyBVVEYtOCB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnJlYWRUZXh0KHBhdGgpOwogICAgICAgIGNvbnN0IGVycm9ycyA9IFtdOwogICAgICAgIGNvbnN0IHJlc3VsdCA9ICgwLCBqc29uY19wYXJzZXJfMS5wYXJzZSkoY29udGVudCwgZXJyb3JzLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSB9KTsKICAgICAgICBpZiAoZXJyb3JzWzBdKSB7CiAgICAgICAgICBjb25zdCB7IGVycm9yLCBvZmZzZXQgfSA9IGVycm9yc1swXTsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHBhcnNlICIke3BhdGh9IiBhcyBKU09OLiAkeygwLCBqc29uY19wYXJzZXJfMS5wcmludFBhcnNlRXJyb3JDb2RlKShlcnJvcil9IGF0IG9mZnNldDogJHtvZmZzZXR9LmApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZFN5bmMuaXNGaWxlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGdldChwYXRoKSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX3JlY29yZFN5bmMuaXNEaXJlY3RvcnkocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBlbnRyeV8xLkxhenlGaWxlRW50cnkocCwgKCkgPT4gQnVmZmVyLmZyb20odGhpcy5fcmVjb3JkU3luYy5yZWFkKHApKSk7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBjb3JlXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgbGV0IG1heWJlQ2FjaGUgPSB0aGlzLl9kaXJDYWNoZS5nZXQocCk7CiAgICAgICAgaWYgKCFtYXliZUNhY2hlKSB7CiAgICAgICAgICBsZXQgcGFyZW50ID0gKDAsIGNvcmVfMS5kaXJuYW1lKShwKTsKICAgICAgICAgIGlmIChwID09PSBwYXJlbnQpIHsKICAgICAgICAgICAgcGFyZW50ID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIG1heWJlQ2FjaGUgPSBuZXcgSG9zdERpckVudHJ5KHBhcmVudCAmJiB0aGlzLmdldERpcihwYXJlbnQpLCBwLCB0aGlzLl9yZWNvcmRTeW5jLCB0aGlzKTsKICAgICAgICAgIHRoaXMuX2RpckNhY2hlLnNldChwLCBtYXliZUNhY2hlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1heWJlQ2FjaGU7CiAgICAgIH0KICAgICAgdmlzaXQodmlzaXRvcikgewogICAgICAgIHRoaXMucm9vdC52aXNpdCgocGF0aCwgZW50cnkpID0+IHsKICAgICAgICAgIHZpc2l0b3IocGF0aCwgZW50cnkpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgY29uc3QgcCA9IHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCk7CiAgICAgICAgaWYgKCF0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQub3ZlcndyaXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGJlZ2luVXBkYXRlKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVjb3JkZXJfMS5VcGRhdGVSZWNvcmRlckJhc2UuY3JlYXRlRnJvbUZpbGVFbnRyeShlbnRyeSk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIGlmIChyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSkgewogICAgICAgICAgY29uc3QgcGF0aCA9IHJlY29yZC5wYXRoOwogICAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLmdldChwYXRoKTsKICAgICAgICAgIGlmICghZW50cnkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgbmV3Q29udGVudCA9IHJlY29yZC5hcHBseShlbnRyeS5jb250ZW50KTsKICAgICAgICAgICAgaWYgKCFuZXdDb250ZW50LmVxdWFscyhlbnRyeS5jb250ZW50KSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKHBhdGgsIG5ld0NvbnRlbnQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5JbnZhbGlkVXBkYXRlUmVjb3JkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIFN0cnVjdHVyYWwgbWV0aG9kcy4KICAgICAgY3JlYXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBjb25zdCBjID0gdHlwZW9mIGNvbnRlbnQgPT0gInN0cmluZyIgPyBCdWZmZXIuZnJvbShjb250ZW50KSA6IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5fcmVjb3JkLmNyZWF0ZShwLCBjKS5zdWJzY3JpYmUoKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHRoaXMuX25vcm1hbGl6ZVBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZFN5bmMucmVuYW1lKHRoaXMuX25vcm1hbGl6ZVBhdGgoZnJvbSksIHRoaXMuX25vcm1hbGl6ZVBhdGgodG8pKTsKICAgICAgfQogICAgICBhcHBseShhY3Rpb24sIHN0cmF0ZWd5KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIkFwcGx5IG5vdCBpbXBsZW1lbnRlZCBvbiBob3N0IHRyZWVzLiIpOwogICAgICB9CiAgICAgICpnZW5lcmF0ZUFjdGlvbnMoKSB7CiAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgdGhpcy5fcmVjb3JkLnJlY29yZHMoKSkgewogICAgICAgICAgc3dpdGNoIChyZWNvcmQua2luZCkgewogICAgICAgICAgICBjYXNlICJjcmVhdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJjIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAibyIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IEJ1ZmZlci5mcm9tKHJlY29yZC5jb250ZW50KQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInJlbmFtZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogInIiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLmZyb20sCiAgICAgICAgICAgICAgICB0bzogcmVjb3JkLnRvCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiZCIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQucGF0aAogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZ2VuZXJhdGVBY3Rpb25zKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdFRyZWUgPSBIb3N0VHJlZTsKICAgIHZhciBIb3N0Q3JlYXRlVHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcihob3N0KSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICBjb25zdCB0ZW1wSG9zdCA9IG5ldyBIb3N0VHJlZShob3N0KTsKICAgICAgICB0ZW1wSG9zdC52aXNpdCgocGF0aCkgPT4gewogICAgICAgICAgY29uc3QgY29udGVudCA9IHRlbXBIb3N0LnJlYWQocGF0aCk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RDcmVhdGVUcmVlID0gSG9zdENyZWF0ZVRyZWU7CiAgICB2YXIgRmlsdGVySG9zdFRyZWUgPSBjbGFzcyBleHRlbmRzIEhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IodHJlZSwgZmlsdGVyID0gKCkgPT4gdHJ1ZSkgewogICAgICAgIGNvbnN0IG5ld0JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TaW1wbGVNZW1vcnlIb3N0KCk7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCYWNrZW5kID0gdHJlZS5fYmFja2VuZDsKICAgICAgICBjb25zdCBwZW5kaW5nUGF0aHMgPSBbIi8iXTsKICAgICAgICB3aGlsZSAocGVuZGluZ1BhdGhzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gcGVuZGluZ1BhdGhzLnBvcCgpOwogICAgICAgICAgaWYgKGN1cnJlbnRQYXRoID09PSB2b2lkIDApIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgaXNEaXJlY3RvcnkgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0RpcmVjdG9yeShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRGlyZWN0b3J5ID0gdmFsKTsKICAgICAgICAgIGlmIChpc0RpcmVjdG9yeSkgewogICAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQubGlzdChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IHBlbmRpbmdQYXRocy5wdXNoKC4uLnZhbC5tYXAoKHApID0+ICgwLCBjb3JlXzEuam9pbikoY3VycmVudFBhdGgsIHApKSkpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0ZpbGUgPSBmYWxzZTsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5pc0ZpbGUoY3VycmVudFBhdGgpLnN1YnNjcmliZSgodmFsKSA9PiBpc0ZpbGUgPSB2YWwpOwogICAgICAgICAgaWYgKCFpc0ZpbGUgfHwgIWZpbHRlcihjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29udGVudCA9IG51bGw7CiAgICAgICAgICBvcmlnaW5hbEJhY2tlbmQucmVhZChjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGNvbnRlbnQgPSB2YWwpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT09IG51bGwpIHsKICAgICAgICAgICAgbmV3QmFja2VuZC53cml0ZShjdXJyZW50UGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyKG5ld0JhY2tlbmQpOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRyZWUuYWN0aW9ucykgewogICAgICAgICAgaWYgKCFmaWx0ZXIoYWN0aW9uLnBhdGgpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgICB0aGlzLmNyZWF0ZShhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgICB0aGlzLmRlbGV0ZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm8iOgogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInIiOgogICAgICAgICAgICAgIHRoaXMucmVuYW1lKGFjdGlvbi5wYXRoLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbHRlckhvc3RUcmVlID0gRmlsdGVySG9zdFRyZWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3N0YXRpYy5qcwp2YXIgcmVxdWlyZV9zdGF0aWMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZXhwb3J0czIuYnJhbmNoID0gYnJhbmNoOwogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTI7CiAgICBleHBvcnRzMi5wYXJ0aXRpb24gPSBwYXJ0aXRpb247CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gbmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKCk7CiAgICB9CiAgICBmdW5jdGlvbiBicmFuY2godHJlZSkgewogICAgICByZXR1cm4gdHJlZS5icmFuY2goKTsKICAgIH0KICAgIGZ1bmN0aW9uIG1lcmdlMih0cmVlLCBvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgdHJlZS5tZXJnZShvdGhlciwgc3RyYXRlZ3kpOwogICAgICByZXR1cm4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBob3N0X3RyZWVfMS5Ib3N0VHJlZSkgewogICAgICAgIHJldHVybiBbCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKSwKICAgICAgICAgIG5ldyBob3N0X3RyZWVfMS5GaWx0ZXJIb3N0VHJlZSh0cmVlLCAocGF0aCwgZW50cnkpID0+ICFwcmVkaWNhdGUocGF0aCwgZW50cnkpKQogICAgICAgIF07CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9udWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IGV4cG9ydHMyLk51bGxUcmVlRGlyRW50cnkgPSBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYENhbm5vdCBjcmVhdGUgZmlsZSAiJHtwYXRofSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbjsKICAgIHZhciBOdWxsVHJlZURpckVudHJ5ID0gY2xhc3MgX051bGxUcmVlRGlyRW50cnkgewogICAgICBwYXRoOwogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLnBhdGggPT0gIi8iID8gbnVsbCA6IG5ldyBfTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLmRpcm5hbWUpKHRoaXMucGF0aCkpOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICB0aGlzLnBhdGggPSBwYXRoOwogICAgICB9CiAgICAgIHN1YmRpcnMgPSBbXTsKICAgICAgc3ViZmlsZXMgPSBbXTsKICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBuYW1lKSk7CiAgICAgIH0KICAgICAgZmlsZShfbmFtZSkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHZpc2l0KCkgewogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IE51bGxUcmVlRGlyRW50cnk7CiAgICB2YXIgTnVsbFRyZWUgPSBjbGFzcyBfTnVsbFRyZWUgewogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlKCk7CiAgICAgIH0KICAgICAgbWVyZ2UoX290aGVyLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICByb290ID0gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICAvLyBTaW1wbGUgcmVhZG9ubHkgZmlsZSBzeXN0ZW0gb3BlcmF0aW9ucy4KICAgICAgZXhpc3RzKF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHJlYWQoX3BhdGgpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGdldChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSA/IHJlY29yZC5wYXRoIDogIjx1bmtub3duPiIpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBzdHJ1Y3R1cmUgb2YgdGhlIGhvc3QuCiAgICAgIGNvcHkocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgYXBwbHkoX2FjdGlvbiwgX3N0cmF0ZWd5KSB7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWUgPSBOdWxsVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanMKdmFyIHJlcXVpcmVfY2FsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanMKdmFyIHJlcXVpcmVfc2NoZW1hdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvc2NoZW1hdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBjYWxsXzEgPSByZXF1aXJlX2NhbGwoKTsKICAgIHZhciBzY29wZWRfMSA9IHJlcXVpcmVfc2NvcGVkMigpOwogICAgdmFyIEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpY3MgaGFzIGludmFsaWQgbmFtZTogIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0ltcGwgPSBjbGFzcyB7CiAgICAgIF9kZXNjcmlwdGlvbjsKICAgICAgX2ZhY3Rvcnk7CiAgICAgIF9jb2xsZWN0aW9uOwogICAgICBfZW5naW5lOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9mYWN0b3J5LCBfY29sbGVjdGlvbiwgX2VuZ2luZSkgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2ZhY3RvcnkgPSBfZmFjdG9yeTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uID0gX2NvbGxlY3Rpb247CiAgICAgICAgdGhpcy5fZW5naW5lID0gX2VuZ2luZTsKICAgICAgICBpZiAoIV9kZXNjcmlwdGlvbi5uYW1lLm1hdGNoKC9eWy1AL18uYS16QS1aMC05XSskLykpIHsKICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24oX2Rlc2NyaXB0aW9uLm5hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBjb2xsZWN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uOwogICAgICB9CiAgICAgIGNhbGwob3B0aW9ucywgaG9zdCwgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29udGV4dCh0aGlzLCBwYXJlbnRDb250ZXh0LCBleGVjdXRpb25PcHRpb25zKTsKICAgICAgICByZXR1cm4gaG9zdC5waXBlKCgwLCByeGpzXzEuZmlyc3QpKCksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodHJlZSkgPT4gdGhpcy5fZW5naW5lLnRyYW5zZm9ybU9wdGlvbnModGhpcywgb3B0aW9ucywgY29udGV4dCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKG8pID0+IFt0cmVlLCBvXSkpKSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChbdHJlZSwgdHJhbnNmb3JtZWRPcHRpb25zXSkgPT4gewogICAgICAgICAgbGV0IGlucHV0OwogICAgICAgICAgbGV0IHNjb3BlZCA9IGZhbHNlOwogICAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5zY29wZSkgewogICAgICAgICAgICBzY29wZWQgPSB0cnVlOwogICAgICAgICAgICBpbnB1dCA9IG5ldyBzY29wZWRfMS5TY29wZWRUcmVlKHRyZWUsIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB0cmVlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHRoaXMuX2ZhY3RvcnkodHJhbnNmb3JtZWRPcHRpb25zKSwgaW5wdXQsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvdXRwdXQpID0+IHsKICAgICAgICAgICAgaWYgKG91dHB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY29wZWQpIHsKICAgICAgICAgICAgICB0cmVlLm1lcmdlKG91dHB1dCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0ltcGwgPSBTY2hlbWF0aWNJbXBsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBleHBvcnRzMi5Db2xsZWN0aW9uSW1wbCA9IGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gZXhwb3J0czIuQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgbnVsbF8xID0gcmVxdWlyZV9udWxsKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHNjaGVtYXRpY18xID0gcmVxdWlyZV9zY2hlbWF0aWMoKTsKICAgIHZhciBVbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodXJsMykgewogICAgICAgIHN1cGVyKGBVbmtub3duIFByb3RvY29sIG9uIHVybCAiJHt1cmwzfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBVbmtub3duVXJsU291cmNlUHJvdG9jb2w7CiAgICB2YXIgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBVbmtub3duIGNvbGxlY3Rpb24gIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDaXJjdWxhciBjb2xsZWN0aW9uIHJlZmVyZW5jZSAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb247CiAgICB2YXIgVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBjb2xsZWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpYyAiJHtuYW1lfSIgbm90IGZvdW5kIGluIGNvbGxlY3Rpb24gIiR7Y29sbGVjdGlvbi5uYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbjsKICAgIHZhciBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBBIHNjaGVtYXRpYyB3YXMgY2FsbGVkIGZyb20gYSBkaWZmZXJlbnQgZW5naW5lIGFzIGl0cyBwYXJlbnQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uOwogICAgdmFyIFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgc2NoZW1hdGljKSB7CiAgICAgICAgY29uc3QgYWRkZW5kdW0gPSBzY2hlbWF0aWMgPyBgIGluIHNjaGVtYXRpYyAiJHtzY2hlbWF0aWMubmFtZX0iYCA6ICIiOwogICAgICAgIHN1cGVyKGBVbnJlZ2lzdGVyZWQgdGFzayAiJHtuYW1lfSIke2FkZGVuZHVtfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpZCkgewogICAgICAgIHN1cGVyKGBVbmtub3duIHRhc2sgZGVwZW5kZW5jeSBbSUQ6ICR7aWQuaWR9XS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbjsKICAgIHZhciBDb2xsZWN0aW9uSW1wbCA9IGNsYXNzIHsKICAgICAgX2Rlc2NyaXB0aW9uOwogICAgICBfZW5naW5lOwogICAgICBiYXNlRGVzY3JpcHRpb25zOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9lbmdpbmUsIGJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9lbmdpbmUgPSBfZW5naW5lOwogICAgICAgIHRoaXMuYmFzZURlc2NyaXB0aW9ucyA9IGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgbmFtZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5kZXNjcmlwdGlvbi5uYW1lIHx8ICI8dW5rbm93bj4iOwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuY3JlYXRlU2NoZW1hdGljKG5hbWUsIHRoaXMsIGFsbG93UHJpdmF0ZSk7CiAgICAgIH0KICAgICAgbGlzdFNjaGVtYXRpY05hbWVzKGluY2x1ZGVIaWRkZW4pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lLmxpc3RTY2hlbWF0aWNOYW1lcyh0aGlzLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gQ29sbGVjdGlvbkltcGw7CiAgICB2YXIgVGFza1NjaGVkdWxlciA9IGNsYXNzIF9UYXNrU2NoZWR1bGVyIHsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9xdWV1ZSA9IG5ldyBjb3JlXzEuUHJpb3JpdHlRdWV1ZSgoeCwgeSkgPT4geC5wcmlvcml0eSAtIHkucHJpb3JpdHkpOwogICAgICBfdGFza0lkcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIHN0YXRpYyBfdGFza0lkQ291bnRlciA9IDE7CiAgICAgIGNvbnN0cnVjdG9yKF9jb250ZXh0KSB7CiAgICAgICAgdGhpcy5fY29udGV4dCA9IF9jb250ZXh0OwogICAgICB9CiAgICAgIF9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpIHsKICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLnNpemUgPT09IDApIHsKICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcmlvID0gWy4uLmRlcGVuZGVuY2llc10ucmVkdWNlKChwcmlvMiwgdGFzaykgPT4gcHJpbzIgKyB0YXNrLnByaW9yaXR5LCAxKTsKICAgICAgICByZXR1cm4gcHJpbzsKICAgICAgfQogICAgICBfbWFwRGVwZW5kZW5jaWVzKGRlcGVuZGVuY2llcykgewogICAgICAgIGlmICghZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza3MgPSBkZXBlbmRlbmNpZXMubWFwKChkZXApID0+IHsKICAgICAgICAgIGNvbnN0IHRhc2sgPSB0aGlzLl90YXNrSWRzLmdldChkZXApOwogICAgICAgICAgaWYgKCF0YXNrKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVGFza0RlcGVuZGVuY3lFeGNlcHRpb24oZGVwKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2V0KHRhc2tzKTsKICAgICAgfQogICAgICBzY2hlZHVsZSh0YXNrQ29uZmlndXJhdGlvbikgewogICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMuX21hcERlcGVuZGVuY2llcyh0YXNrQ29uZmlndXJhdGlvbi5kZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHByaW9yaXR5ID0gdGhpcy5fY2FsY3VsYXRlUHJpb3JpdHkoZGVwZW5kZW5jaWVzKTsKICAgICAgICBjb25zdCB0YXNrID0gewogICAgICAgICAgaWQ6IF9UYXNrU2NoZWR1bGVyLl90YXNrSWRDb3VudGVyKyssCiAgICAgICAgICBwcmlvcml0eSwKICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHRhc2tDb25maWd1cmF0aW9uLAogICAgICAgICAgY29udGV4dDogdGhpcy5fY29udGV4dAogICAgICAgIH07CiAgICAgICAgdGhpcy5fcXVldWUucHVzaCh0YXNrKTsKICAgICAgICBjb25zdCBpZCA9IHsgaWQ6IHRhc2suaWQgfTsKICAgICAgICB0aGlzLl90YXNrSWRzLnNldChpZCwgdGFzayk7CiAgICAgICAgcmV0dXJuIGlkOwogICAgICB9CiAgICAgIGZpbmFsaXplKCkgewogICAgICAgIGNvbnN0IHRhc2tzID0gdGhpcy5fcXVldWUudG9BcnJheSgpOwogICAgICAgIHRoaXMuX3F1ZXVlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fdGFza0lkcy5jbGVhcigpOwogICAgICAgIHJldHVybiB0YXNrczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBUYXNrU2NoZWR1bGVyOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZSA9IGNsYXNzIHsKICAgICAgX2hvc3Q7CiAgICAgIF93b3JrZmxvdzsKICAgICAgX2NvbGxlY3Rpb25DYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9zY2hlbWF0aWNDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgICBfdGFza1NjaGVkdWxlcnMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF93b3JrZmxvdykgewogICAgICAgIHRoaXMuX2hvc3QgPSBfaG9zdDsKICAgICAgICB0aGlzLl93b3JrZmxvdyA9IF93b3JrZmxvdzsKICAgICAgfQogICAgICBnZXQgd29ya2Zsb3coKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtmbG93IHx8IG51bGw7CiAgICAgIH0KICAgICAgZ2V0IGRlZmF1bHRNZXJnZVN0cmF0ZWd5KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0LmRlZmF1bHRNZXJnZVN0cmF0ZWd5IHx8IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdDsKICAgICAgfQogICAgICBjcmVhdGVDb2xsZWN0aW9uKG5hbWUsIHJlcXVlc3RlcikgewogICAgICAgIGxldCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvbkNhY2hlLmdldChuYW1lKTsKICAgICAgICBpZiAoY29sbGVjdGlvbikgewogICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247CiAgICAgICAgfQogICAgICAgIGNvbnN0IFtkZXNjcmlwdGlvbiwgYmFzZXNdID0gdGhpcy5fY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcj8uZGVzY3JpcHRpb24pOwogICAgICAgIGNvbGxlY3Rpb24gPSBuZXcgQ29sbGVjdGlvbkltcGwoZGVzY3JpcHRpb24sIHRoaXMsIGJhc2VzKTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuc2V0KG5hbWUsIGNvbGxlY3Rpb24pOwogICAgICAgIHRoaXMuX3NjaGVtYXRpY0NhY2hlLnNldChjb2xsZWN0aW9uLCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpKTsKICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgfQogICAgICBfY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3RlciwgcGFyZW50TmFtZXMpIHsKICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcik7CiAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50TmFtZXMgJiYgcGFyZW50TmFtZXMuaGFzKGRlc2NyaXB0aW9uLm5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBjb25zdCBiYXNlcyA9IG5ldyBBcnJheSgpOwogICAgICAgIGlmIChkZXNjcmlwdGlvbi5leHRlbmRzKSB7CiAgICAgICAgICBwYXJlbnROYW1lcyA9IChwYXJlbnROYW1lcyB8fCAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKS5hZGQoZGVzY3JpcHRpb24ubmFtZSk7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2VOYW1lIG9mIGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgICAgY29uc3QgW2Jhc2UsIGJhc2VCYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24oYmFzZU5hbWUsIGRlc2NyaXB0aW9uLCBuZXcgU2V0KHBhcmVudE5hbWVzKSk7CiAgICAgICAgICAgIGJhc2VzLnVuc2hpZnQoYmFzZSwgLi4uYmFzZUJhc2VzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtkZXNjcmlwdGlvbiwgYmFzZXNdOwogICAgICB9CiAgICAgIGNyZWF0ZUNvbnRleHQoc2NoZW1hdGljLCBwYXJlbnQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5lbmdpbmUgJiYgcGFyZW50LmVuZ2luZSAhPT0gdGhpcykgewogICAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGxldCBpbnRlcmFjdGl2ZSA9IHRydWU7CiAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudCAmJiBwYXJlbnQuaW50ZXJhY3RpdmUgIT0gdm9pZCAwKSB7CiAgICAgICAgICBpbnRlcmFjdGl2ZSA9IHBhcmVudC5pbnRlcmFjdGl2ZTsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbnRleHQgPSB7CiAgICAgICAgICBkZWJ1ZzogcGFyZW50ICYmIHBhcmVudC5kZWJ1ZyB8fCBmYWxzZSwKICAgICAgICAgIGVuZ2luZTogdGhpcywKICAgICAgICAgIGxvZ2dlcjogcGFyZW50ICYmIHBhcmVudC5sb2dnZXIgJiYgcGFyZW50LmxvZ2dlci5jcmVhdGVDaGlsZChzY2hlbWF0aWMuZGVzY3JpcHRpb24ubmFtZSkgfHwgbmV3IGNvcmVfMS5sb2dnaW5nLk51bGxMb2dnZXIoKSwKICAgICAgICAgIHNjaGVtYXRpYywKICAgICAgICAgIHN0cmF0ZWd5OiBwYXJlbnQgJiYgcGFyZW50LnN0cmF0ZWd5ICE9PSB2b2lkIDAgPyBwYXJlbnQuc3RyYXRlZ3kgOiB0aGlzLmRlZmF1bHRNZXJnZVN0cmF0ZWd5LAogICAgICAgICAgaW50ZXJhY3RpdmUsCiAgICAgICAgICBhZGRUYXNrCiAgICAgICAgfTsKICAgICAgICBjb25zdCBtYXliZU5ld0NvbnRleHQgPSB0aGlzLl9ob3N0LnRyYW5zZm9ybUNvbnRleHQoY29udGV4dCk7CiAgICAgICAgaWYgKG1heWJlTmV3Q29udGV4dCkgewogICAgICAgICAgY29udGV4dCA9IG1heWJlTmV3Q29udGV4dDsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza1NjaGVkdWxlciA9IG5ldyBUYXNrU2NoZWR1bGVyKGNvbnRleHQpOwogICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLl9ob3N0OwogICAgICAgIHRoaXMuX3Rhc2tTY2hlZHVsZXJzLnB1c2godGFza1NjaGVkdWxlcik7CiAgICAgICAgZnVuY3Rpb24gYWRkVGFzayh0YXNrLCBkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHRhc2sudG9Db25maWd1cmF0aW9uKCk7CiAgICAgICAgICBpZiAoIWhvc3QuaGFzVGFza0V4ZWN1dG9yKGNvbmZpZy5uYW1lKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbihjb25maWcubmFtZSwgc2NoZW1hdGljLmRlc2NyaXB0aW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMgPSBjb25maWcuZGVwZW5kZW5jaWVzIHx8IFtdOwogICAgICAgICAgaWYgKGRlcGVuZGVuY2llcykgewogICAgICAgICAgICBjb25maWcuZGVwZW5kZW5jaWVzLnVuc2hpZnQoLi4uZGVwZW5kZW5jaWVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrU2NoZWR1bGVyLnNjaGVkdWxlKGNvbmZpZyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb250ZXh0OwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBjb2xsZWN0aW9uLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IHNjaGVtYXRpY01hcCA9IHRoaXMuX3NjaGVtYXRpY0NhY2hlLmdldChjb2xsZWN0aW9uKTsKICAgICAgICBsZXQgc2NoZW1hdGljID0gc2NoZW1hdGljTWFwPy5nZXQobmFtZSk7CiAgICAgICAgaWYgKHNjaGVtYXRpYykgewogICAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGNvbGxlY3Rpb24uZGVzY3JpcHRpb247CiAgICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgYmFzZSBvZiBjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlU2NoZW1hdGljRGVzY3JpcHRpb24obmFtZSwgYmFzZSk7CiAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24gPSBiYXNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZGVzY3JpcHRpb24ucHJpdmF0ZSAmJiAhYWxsb3dQcml2YXRlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX2hvc3QuZ2V0U2NoZW1hdGljUnVsZUZhY3RvcnkoZGVzY3JpcHRpb24sIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7CiAgICAgICAgc2NoZW1hdGljID0gbmV3IHNjaGVtYXRpY18xLlNjaGVtYXRpY0ltcGwoZGVzY3JpcHRpb24sIGZhY3RvcnksIGNvbGxlY3Rpb24sIHRoaXMpOwogICAgICAgIHNjaGVtYXRpY01hcD8uc2V0KG5hbWUsIHNjaGVtYXRpYyk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbiwgaW5jbHVkZUhpZGRlbikgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbi5kZXNjcmlwdGlvbiwgaW5jbHVkZUhpZGRlbik7CiAgICAgICAgaWYgKGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICBuYW1lcy5wdXNoKC4uLnRoaXMuX2hvc3QubGlzdFNjaGVtYXRpY05hbWVzKGJhc2UsIGluY2x1ZGVIaWRkZW4pKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5uZXcgU2V0KG5hbWVzKV0uc29ydCgpOwogICAgICB9CiAgICAgIHRyYW5zZm9ybU9wdGlvbnMoc2NoZW1hdGljLCBvcHRpb25zLCBjb250ZXh0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QudHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMuZGVzY3JpcHRpb24sIG9wdGlvbnMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGNyZWF0ZVNvdXJjZUZyb21VcmwodXJsMywgY29udGV4dCkgewogICAgICAgIHN3aXRjaCAodXJsMy5wcm90b2NvbCkgewogICAgICAgICAgY2FzZSAibnVsbDoiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gbmV3IG51bGxfMS5OdWxsVHJlZSgpOwogICAgICAgICAgY2FzZSAiZW1wdHk6IjoKICAgICAgICAgICAgcmV0dXJuICgpID0+ICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaG9zdFNvdXJjZSA9IHRoaXMuX2hvc3QuY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KTsKICAgICAgICBpZiAoIWhvc3RTb3VyY2UpIHsKICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVXJsU291cmNlUHJvdG9jb2wodXJsMy50b1N0cmluZygpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGhvc3RTb3VyY2U7CiAgICAgIH0KICAgICAgZXhlY3V0ZVBvc3RUYXNrcygpIHsKICAgICAgICBjb25zdCBleGVjdXRvcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRhc2tPYnNlcnZhYmxlID0gKDAsIHJ4anNfMS5mcm9tKSh0aGlzLl90YXNrU2NoZWR1bGVycykucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHNjaGVkdWxlcikgPT4gc2NoZWR1bGVyLmZpbmFsaXplKCkpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRhc2spID0+IHsKICAgICAgICAgIGNvbnN0IHsgbmFtZSwgb3B0aW9ucyB9ID0gdGFzay5jb25maWd1cmF0aW9uOwogICAgICAgICAgY29uc3QgZXhlY3V0b3IgPSBleGVjdXRvcnMuZ2V0KG5hbWUpOwogICAgICAgICAgaWYgKGV4ZWN1dG9yKSB7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcihvcHRpb25zLCB0YXNrLmNvbnRleHQpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuY3JlYXRlVGFza0V4ZWN1dG9yKG5hbWUpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChleGVjdXRvcjIpID0+IHsKICAgICAgICAgICAgZXhlY3V0b3JzLnNldChuYW1lLCBleGVjdXRvcjIpOwogICAgICAgICAgICByZXR1cm4gZXhlY3V0b3IyKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9KSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiB0YXNrT2JzZXJ2YWJsZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IFNjaGVtYXRpY0VuZ2luZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzCnZhciByZXF1aXJlX2VuZ2luZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hdGljKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVDb25zb2xlTG9nZ2VyID0gY3JlYXRlQ29uc29sZUxvZ2dlcjsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNyY18xID0gcmVxdWlyZV9zcmMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZUNvbnNvbGVMb2dnZXIodmVyYm9zZSA9IGZhbHNlLCBzdGRvdXQgPSBwcm9jZXNzLnN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5zdGRlcnIsIGNvbG9ycykgewogICAgICBjb25zdCBsb2dnZXIgPSBuZXcgc3JjXzEubG9nZ2luZy5JbmRlbnRMb2dnZXIoImNsaW5nIik7CiAgICAgIGxvZ2dlci5waXBlKCgwLCByeGpzXzEuZmlsdGVyKSgoZW50cnkpID0+IGVudHJ5LmxldmVsICE9PSAiZGVidWciIHx8IHZlcmJvc2UpKS5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgY29sb3IgPSBjb2xvcnMgJiYgY29sb3JzW2VudHJ5LmxldmVsXTsKICAgICAgICBsZXQgb3V0cHV0ID0gc3Rkb3V0OwogICAgICAgIHN3aXRjaCAoZW50cnkubGV2ZWwpIHsKICAgICAgICAgIGNhc2UgIndhcm4iOgogICAgICAgICAgY2FzZSAiZmF0YWwiOgogICAgICAgICAgY2FzZSAiZXJyb3IiOgogICAgICAgICAgICBvdXRwdXQgPSBzdGRlcnI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaHVua1NpemUgPSAyZTM7CiAgICAgICAgbGV0IG1lc3NhZ2UgPSBlbnRyeS5tZXNzYWdlOwogICAgICAgIHdoaWxlIChtZXNzYWdlKSB7CiAgICAgICAgICBjb25zdCBjaHVuayA9IG1lc3NhZ2Uuc2xpY2UoMCwgY2h1bmtTaXplKTsKICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLnNsaWNlKGNodW5rU2l6ZSk7CiAgICAgICAgICBvdXRwdXQud3JpdGUoY29sb3IgPyBjb2xvcihjaHVuaykgOiBjaHVuayk7CiAgICAgICAgfQogICAgICAgIG91dHB1dC53cml0ZSgiXG4iKTsKICAgICAgfSk7CiAgICAgIHJldHVybiBsb2dnZXI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9ub2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2NsaV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDMoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2FjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uTGlzdCA9IGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5pc0NvbnRlbnRBY3Rpb24gPSBpc0NvbnRlbnRBY3Rpb247CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBVbmtub3duQWN0aW9uRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGFjdGlvbikgewogICAgICAgIHN1cGVyKGBVbmtub3duIGFjdGlvbjogIiR7YWN0aW9uLmtpbmR9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIF9pZCA9IDE7CiAgICB2YXIgQWN0aW9uTGlzdCA9IGNsYXNzIHsKICAgICAgX2FjdGlvbnMgPSBbXTsKICAgICAgX2FjdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goewogICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgaWQ6IF9pZCsrLAogICAgICAgICAgcGFyZW50OiB0aGlzLl9hY3Rpb25zW3RoaXMuX2FjdGlvbnMubGVuZ3RoIC0gMV0/LmlkID8/IDAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJjIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJvIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgdG8pIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiciIsIHBhdGgsIHRvIH0pOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImQiLCBwYXRoIH0pOwogICAgICB9CiAgICAgIG9wdGltaXplKCkgewogICAgICAgIGNvbnN0IHRvQ3JlYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9PdmVyd3JpdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9hY3Rpb25zKSB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBpZiAodG9DcmVhdGUuaGFzKGFjdGlvbi5wYXRoKSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgdG9EZWxldGUuYWRkKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6IHsKICAgICAgICAgICAgICBjb25zdCBtYXliZUNyZWF0ZSA9IHRvQ3JlYXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVPdmVyd3JpdGUgPSB0b092ZXJ3cml0ZS5nZXQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGlmIChtYXliZUNyZWF0ZSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24udG8sIG1heWJlQ3JlYXRlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlT3ZlcndyaXRlKSB7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi50bywgbWF5YmVPdmVyd3JpdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBsZXQgbWF5YmVSZW5hbWUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgZm9yIChjb25zdCBbZnJvbSwgdG9dIG9mIHRvUmVuYW1lLmVudHJpZXMoKSkgewogICAgICAgICAgICAgICAgaWYgKHRvID09IGFjdGlvbi5wYXRoKSB7CiAgICAgICAgICAgICAgICAgIG1heWJlUmVuYW1lID0gZnJvbTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KG1heWJlUmVuYW1lLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIW1heWJlQ3JlYXRlICYmICFtYXliZU92ZXJ3cml0ZSAmJiAhbWF5YmVSZW5hbWUpIHsKICAgICAgICAgICAgICAgIHRvUmVuYW1lLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fYWN0aW9ucyA9IFtdOwogICAgICAgIHRvRGVsZXRlLmZvckVhY2goKHgpID0+IHsKICAgICAgICAgIHRoaXMuZGVsZXRlKHgpOwogICAgICAgIH0pOwogICAgICAgIHRvUmVuYW1lLmZvckVhY2goKHRvLCBmcm9tKSA9PiB7CiAgICAgICAgICB0aGlzLnJlbmFtZShmcm9tLCB0byk7CiAgICAgICAgfSk7CiAgICAgICAgdG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9PdmVyd3JpdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcHVzaChhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goYWN0aW9uKTsKICAgICAgfQogICAgICBnZXQoaSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW2ldOwogICAgICB9CiAgICAgIGhhcyhhY3Rpb24pIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2FjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGEgPSB0aGlzLl9hY3Rpb25zW2ldOwogICAgICAgICAgaWYgKGEuaWQgPT0gYWN0aW9uLmlkKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGEuaWQgPiBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZmluZChwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5maW5kKHByZWRpY2F0ZSkgfHwgbnVsbDsKICAgICAgfQogICAgICBmb3JFYWNoKGZuLCB0aGlzQXJnKSB7CiAgICAgICAgdGhpcy5fYWN0aW9ucy5mb3JFYWNoKGZuLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQgbGVuZ3RoKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmxlbmd0aDsKICAgICAgfQogICAgICBbU3ltYm9sLml0ZXJhdG9yXSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1tTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gQWN0aW9uTGlzdDsKICAgIGZ1bmN0aW9uIGlzQ29udGVudEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIGFjdGlvbi5raW5kID09ICJjIiB8fCBhY3Rpb24ua2luZCA9PSAibyI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanMKdmFyIHJlcXVpcmVfc2luayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3Q0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc2lua18xID0gcmVxdWlyZV9zaW5rKCk7CiAgICB2YXIgSG9zdFNpbmsgPSBjbGFzcyBleHRlbmRzIHNpbmtfMS5TaW1wbGVTaW5rQmFzZSB7CiAgICAgIF9ob3N0OwogICAgICBfZm9yY2U7CiAgICAgIF9maWxlc1RvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9SZW5hbWUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb0NyZWF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvVXBkYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF9mb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fZm9yY2UgPSBfZm9yY2U7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9mb3JjZSA/IHJ4anNfMS5FTVBUWSA6IHN1cGVyLl92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUZpbGVFeGlzdHMocCkgewogICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhwKSB8fCB0aGlzLl9maWxlc1RvVXBkYXRlLmhhcyhwKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgW2Zyb20sIHRvXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lLnZhbHVlcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHApIHsKICAgICAgICAgICAgY2FzZSBmcm9tOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgICAgIGNhc2UgdG86CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5leGlzdHMocCk7CiAgICAgIH0KICAgICAgX292ZXJ3cml0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX2NyZWF0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX3JlbmFtZUZpbGUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmFkZChbZnJvbSwgdG9dKTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kZWxldGVGaWxlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1VwZGF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0RlbGV0ZS52YWx1ZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChwYXRoKSA9PiB0aGlzLl9ob3N0LmRlbGV0ZShwYXRoKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvUmVuYW1lLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbXywgW3BhdGgsIHRvXV0pID0+IHRoaXMuX2hvc3QucmVuYW1lKHBhdGgsIHRvKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvQ3JlYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSksICgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9VcGRhdGUuZW50cmllcygpXSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKFtwYXRoLCBidWZmZXJdKSA9PiB0aGlzLl9ob3N0LndyaXRlKHBhdGgsIGJ1ZmZlcikpKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKCkgPT4gewogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gSG9zdFNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvZHJ5cnVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EcnlSdW5TaW5rID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV8xID0gcmVxdWlyZV9ub2RlKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3Q0KCk7CiAgICB2YXIgRHJ5UnVuU2luayA9IGNsYXNzIGV4dGVuZHMgaG9zdF8xLkhvc3RTaW5rIHsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHJlcG9ydGVyID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgY29uc3RydWN0b3IoaG9zdCwgZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKHR5cGVvZiBob3N0ID09ICJzdHJpbmciID8gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU2NvcGVkSG9zdChuZXcgbm9kZV8xLk5vZGVKc1N5bmNIb3N0KCksICgwLCBjb3JlXzEubm9ybWFsaXplKShob3N0KSkgOiBob3N0LCBmb3JjZSk7CiAgICAgIH0KICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmFkZChwYXRoKTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiYWxyZWFkeUV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldC5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoewogICAgICAgICAgICBraW5kOiAiZXJyb3IiLAogICAgICAgICAgICBkZXNjcmlwdGlvbjogImRvZXNOb3RFeGlzdCIsCiAgICAgICAgICAgIHBhdGgKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbZnJvbV0gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAoZnJvbSA9PSBwYXRoKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiZGVsZXRlIiwgcGF0aCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmZvckVhY2goKFtwYXRoLCB0b10pID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJyZW5hbWUiLCBwYXRoLCB0byB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIGZvciAoY29uc3QgWywgdG9dIG9mIHRoaXMuX2ZpbGVzVG9SZW5hbWUpIHsKICAgICAgICAgICAgaWYgKHRvID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSB8fCB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiY3JlYXRlIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJ1cGRhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSBEcnlSdW5TaW5rOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qcwp2YXIgcmVxdWlyZV9iYXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2U1ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U1KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzCnZhciByZXF1aXJlX21vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1vdmUgPSBtb3ZlMzsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGZ1bmN0aW9uIG1vdmUzKGZyb20sIHRvKSB7CiAgICAgIGlmICh0byA9PT0gdm9pZCAwKSB7CiAgICAgICAgdG8gPSBmcm9tOwogICAgICAgIGZyb20gPSAiLyI7CiAgICAgIH0KICAgICAgY29uc3QgZnJvbVBhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgZnJvbSk7CiAgICAgIGNvbnN0IHRvUGF0aCA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyB0byk7CiAgICAgIGlmIChmcm9tUGF0aCA9PT0gdG9QYXRoKSB7CiAgICAgICAgcmV0dXJuIGJhc2VfMS5ub29wOwogICAgICB9CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIGlmICh0cmVlLmV4aXN0cyhmcm9tUGF0aCkpIHsKICAgICAgICAgIHRyZWUucmVuYW1lKGZyb21QYXRoLCB0b1BhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cmVlLmdldERpcihmcm9tUGF0aCkudmlzaXQoKHBhdGgpID0+IHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgKDAsIGNvcmVfMS5qb2luKSh0b1BhdGgsIHBhdGguc2xpY2UoZnJvbVBhdGgubGVuZ3RoKSkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmYXVsdF8xOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIGZ1bmN0aW9uIGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgobCkgewogICAgICByZXR1cm4gbmV3IEFycmF5KGwpLmZpbGwoMCkubWFwKChfeCkgPT4gewogICAgICAgIHJldHVybiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI2KV07CiAgICAgIH0pLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gcmFuZG9tKGZyb20sIHRvKSB7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAodG8gLSBmcm9tKSkgKyBmcm9tOwogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdF8xKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICBjb25zdCByb290ID0gInJvb3QiIGluIG9wdGlvbnMgPyBvcHRpb25zLnJvb3QgOiAiLyI7CiAgICAgICAgY29uc3QgbWFwMiA9IG5ldyBob3N0X3RyZWVfMS5Ib3N0VHJlZSgpOwogICAgICAgIGNvbnN0IG5iRmlsZXMgPSAibXVsdGlGaWxlcyIgaW4gb3B0aW9ucyA/IHR5cGVvZiBvcHRpb25zLm11bHRpRmlsZXMgPT0gIm51bWJlciIgPyBvcHRpb25zLm11bHRpRmlsZXMgOiByYW5kb20oMiwgMTIpIDogMTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5iRmlsZXM7IGkrKykgewogICAgICAgICAgY29uc3QgcGF0aCA9ICJhL2IvYy9kL2UvZiIuc2xpY2UoTWF0aC5yYW5kb20oKSAqIDEwKTsKICAgICAgICAgIGNvbnN0IGZpbGVOYW1lID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgyMCk7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aCgxMDApOwogICAgICAgICAgbWFwMi5jcmVhdGUocm9vdCArICIvIiArIHBhdGggKyAiLyIgKyBmaWxlTmFtZSwgY29udGVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXAyOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzCnZhciByZXF1aXJlX3NjaGVtYXRpYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzCnZhciByZXF1aXJlX3RlbXBsYXRlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93blBpcGVFeGNlcHRpb24gPSBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmFwcGx5Q29udGVudFRlbXBsYXRlID0gYXBwbHlDb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5jb250ZW50VGVtcGxhdGUgPSBjb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5hcHBseVBhdGhUZW1wbGF0ZSA9IGFwcGx5UGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucGF0aFRlbXBsYXRlID0gcGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucmVuYW1lVGVtcGxhdGVGaWxlcyA9IHJlbmFtZVRlbXBsYXRlRmlsZXM7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIGV4cG9ydHMyLmFwcGx5VGVtcGxhdGVzID0gYXBwbHlUZW1wbGF0ZXM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgYmFzZV8xID0gcmVxdWlyZV9iYXNlMigpOwogICAgZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSAvXC50ZW1wbGF0ZSQvOwogICAgdmFyIE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYE9wdGlvbiAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBub3QgZGVmaW5lZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gVW5rbm93blBpcGVFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBpcGVFeGNlcHRpb24gPSBJbnZhbGlkUGlwZUV4Y2VwdGlvbjsKICAgIHZhciBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIsIHsgZmF0YWw6IHRydWUgfSk7CiAgICBmdW5jdGlvbiBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGVudHJ5OwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb25zdCBkZWNvZGVkQ29udGVudCA9IGRlY29kZXIuZGVjb2RlKGNvbnRlbnQpLnJlcGxhY2UoL1xyP1xuL2csIG5vZGVfb3NfMS5FT0wpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20oKDAsIGNvcmVfMS50ZW1wbGF0ZSkoZGVjb2RlZENvbnRlbnQsIHt9KShvcHRpb25zKSkKICAgICAgICAgIH07CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5UGF0aFRlbXBsYXRlKGRhdGEsIG9wdGlvbnMgPSB7CiAgICAgIGludGVycG9sYXRpb25TdGFydDogIl9fIiwKICAgICAgaW50ZXJwb2xhdGlvbkVuZDogIl9fIiwKICAgICAgcGlwZVNlcGFyYXRvcjogIkAiCiAgICB9KSB7CiAgICAgIGNvbnN0IGlzID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uU3RhcnQ7CiAgICAgIGNvbnN0IGllID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kOwogICAgICBjb25zdCBpc0wgPSBpcy5sZW5ndGg7CiAgICAgIGNvbnN0IGllTCA9IGllLmxlbmd0aDsKICAgICAgcmV0dXJuIChlbnRyeSkgPT4gewogICAgICAgIGxldCBwYXRoID0gZW50cnkucGF0aDsKICAgICAgICBjb25zdCBjb250ZW50ID0gZW50cnkuY29udGVudDsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHBhdGg7CiAgICAgICAgbGV0IHN0YXJ0ID0gcGF0aC5pbmRleE9mKGlzKTsKICAgICAgICBsZXQgZW5kID0gcGF0aC5pbmRleE9mKGllLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIHdoaWxlIChzdGFydCAhPSAtMSAmJiBlbmQgIT0gLTEpIHsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5zdWJzdHJpbmcoc3RhcnQgKyBpc0wsIGVuZCk7CiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBkYXRhW21hdGNoXTsKICAgICAgICAgIGlmICghb3B0aW9ucy5waXBlU2VwYXJhdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG1hdGNoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgW25hbWUsIC4uLnBpcGVzXSA9IG1hdGNoLnNwbGl0KG9wdGlvbnMucGlwZVNlcGFyYXRvcik7CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gZGF0YVtuYW1lXTsKICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC5jYWxsKGRhdGEsIG9yaWdpbmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24obmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSBwaXBlcy5yZWR1Y2UoKGFjYywgcGlwZSkgPT4gewogICAgICAgICAgICAgIGlmICghcGlwZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKCEocGlwZSBpbiBkYXRhKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25QaXBlRXhjZXB0aW9uKHBpcGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwaXBlRm4gPSBkYXRhW3BpcGVdOwogICAgICAgICAgICAgIGlmICh0eXBlb2YgcGlwZUZuICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuICIiICsgcGlwZUZuKGFjYyk7CiAgICAgICAgICAgIH0sICIiICsgcmVwbGFjZW1lbnQpOwogICAgICAgICAgfQogICAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHN0YXJ0KSArIHJlcGxhY2VtZW50ICsgcGF0aC5zdWJzdHJpbmcoZW5kICsgaWVMKTsKICAgICAgICAgIHN0YXJ0ID0gcGF0aC5pbmRleE9mKG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0KTsKICAgICAgICAgIGVuZCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25FbmQsIHN0YXJ0ICsgaXNMICsgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IHBhdGg6ICgwLCBjb3JlXzEubm9ybWFsaXplKShwYXRoKSwgY29udGVudCB9OwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGF0aFRlbXBsYXRlKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoYXBwbHlQYXRoVGVtcGxhdGUob3B0aW9ucykpOwogICAgfQogICAgZnVuY3Rpb24gcmVuYW1lVGVtcGxhdGVGaWxlcygpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKGVudHJ5LnBhdGgubWF0Y2goZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUpKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBjb250ZW50OiBlbnRyeS5jb250ZW50LAogICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikpCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmNoYWluKShbCiAgICAgICAgY29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIEZvcmNlIGNhc3QgdG8gUGF0aFRlbXBsYXRlRGF0YS4gV2UgbmVlZCB0aGUgdHlwZSBmb3IgdGhlIGFjdHVhbCBwYXRoVGVtcGxhdGUoKSBjYWxsLAogICAgICAgIC8vIGJ1dCBpbiB0aGlzIGNhc2Ugd2UgY2Fubm90IGRvIGFueXRoaW5nIGFzIGNvbnRlbnRUZW1wbGF0ZSBhcmUgbW9yZSBwZXJtaXNzaXZlLgogICAgICAgIC8vIFNpbmNlIHZhbHVlcyBhcmUgY29lcmNlZCB0byBzdHJpbmdzIGluIFBhdGhUZW1wbGF0ZXMgaXQgd2lsbCBiZSBmaW5lIGluIHRoZSBlbmQuCiAgICAgICAgcGF0aFRlbXBsYXRlKG9wdGlvbnMpCiAgICAgIF0pOwogICAgfQogICAgZnVuY3Rpb24gYXBwbHlUZW1wbGF0ZXMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKSgoMCwgYmFzZV8xLndoZW4pKChwYXRoKSA9PiBwYXRoLmVuZHNXaXRoKCIudGVtcGxhdGUiKSwgKDAsIGJhc2VfMS5jb21wb3NlRmlsZU9wZXJhdG9ycykoWwogICAgICAgIGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIFNlZSBhYm92ZSBmb3IgdGhpcyB3ZWlyZCBjYXN0LgogICAgICAgIGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIChlbnRyeSkgPT4gewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICBdKSkpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi51cmwgPSB1cmwzOwogICAgdmFyIHVybF8xID0gcmVxdWlyZSgidXJsIik7CiAgICBmdW5jdGlvbiB1cmwzKHVybFN0cmluZykgewogICAgICBjb25zdCB1cmw0ID0gKDAsIHVybF8xLnBhcnNlKSh1cmxTdHJpbmcpOwogICAgICByZXR1cm4gKGNvbnRleHQpID0+IGNvbnRleHQuZW5naW5lLmNyZWF0ZVNvdXJjZUZyb21VcmwodXJsNCwgY29udGV4dCkoY29udGV4dCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UcmVlID0gZXhwb3J0czIud29ya2Zsb3cgPSBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIuZm9ybWF0cyA9IGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ3MiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuc3RyaW5nczsKICAgIH0gfSk7CiAgICB2YXIgZm9ybWF0cyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2Zvcm1hdHMyKCkpOwogICAgZXhwb3J0czIuZm9ybWF0cyA9IGZvcm1hdHM7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgd29ya2Zsb3cgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV93b3JrZmxvdygpKTsKICAgIGV4cG9ydHMyLndvcmtmbG93ID0gd29ya2Zsb3c7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjaGVtYXRpY3NFeGNlcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FjdGlvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbmdpbmUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2V4Y2VwdGlvbjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlMygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jYWxsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21vdmUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmFuZG9tKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYzIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3VybCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWxlZ2F0ZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbXB0eTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdF90cmVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kcnlydW4oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2luaygpLCBleHBvcnRzMik7CiAgICBleHBvcnRzMi5UcmVlID0gewogICAgICBlbXB0eSgpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICB9LAogICAgICBicmFuY2godHJlZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEuYnJhbmNoKSh0cmVlKTsKICAgICAgfSwKICAgICAgbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5tZXJnZSkodHJlZSwgb3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgfSwKICAgICAgcGFydGl0aW9uKHRyZWUsIHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEucGFydGl0aW9uKSh0cmVlLCBwcmVkaWNhdGUpOwogICAgICB9LAogICAgICBvcHRpbWl6ZSh0cmVlKSB7CiAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3N0cmlwLWpzb24tY29tbWVudHMtbnBtLTMuMS4xLWRjYjIzMjQ4MjMtMTAuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy0xMC56aXAvbm9kZV9tb2R1bGVzL3N0cmlwLWpzb24tY29tbWVudHMvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2luZ2xlQ29tbWVudCA9IFN5bWJvbCgic2luZ2xlQ29tbWVudCIpOwogICAgdmFyIG11bHRpQ29tbWVudCA9IFN5bWJvbCgibXVsdGlDb21tZW50Iik7CiAgICB2YXIgc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA9ICgpID0+ICIiOwogICAgdmFyIHN0cmlwV2l0aFdoaXRlc3BhY2UgPSAoc3RyaW5nLCBzdGFydCwgZW5kKSA9PiBzdHJpbmcuc2xpY2Uoc3RhcnQsIGVuZCkucmVwbGFjZSgvXFMvZywgIiAiKTsKICAgIHZhciBpc0VzY2FwZWQgPSAoanNvblN0cmluZywgcXVvdGVQb3NpdGlvbikgPT4gewogICAgICBsZXQgaW5kZXggPSBxdW90ZVBvc2l0aW9uIC0gMTsKICAgICAgbGV0IGJhY2tzbGFzaENvdW50ID0gMDsKICAgICAgd2hpbGUgKGpzb25TdHJpbmdbaW5kZXhdID09PSAiXFwiKSB7CiAgICAgICAgaW5kZXggLT0gMTsKICAgICAgICBiYWNrc2xhc2hDb3VudCArPSAxOwogICAgICB9CiAgICAgIHJldHVybiBCb29sZWFuKGJhY2tzbGFzaENvdW50ICUgMik7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gKGpzb25TdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGpzb25TdHJpbmcgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgYXJndW1lbnQgXGBqc29uU3RyaW5nXGAgdG8gYmUgYSBcYHN0cmluZ1xgLCBnb3QgXGAke3R5cGVvZiBqc29uU3RyaW5nfVxgYCk7CiAgICAgIH0KICAgICAgY29uc3Qgc3RyaXAgPSBvcHRpb25zLndoaXRlc3BhY2UgPT09IGZhbHNlID8gc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA6IHN0cmlwV2l0aFdoaXRlc3BhY2U7CiAgICAgIGxldCBpbnNpZGVTdHJpbmcgPSBmYWxzZTsKICAgICAgbGV0IGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgbGV0IG9mZnNldCA9IDA7CiAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBqc29uU3RyaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3VycmVudENoYXJhY3RlciA9IGpzb25TdHJpbmdbaV07CiAgICAgICAgY29uc3QgbmV4dENoYXJhY3RlciA9IGpzb25TdHJpbmdbaSArIDFdOwogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSBpc0VzY2FwZWQoanNvblN0cmluZywgaSk7CiAgICAgICAgICBpZiAoIWVzY2FwZWQpIHsKICAgICAgICAgICAgaW5zaWRlU3RyaW5nID0gIWluc2lkZVN0cmluZzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGluc2lkZVN0cmluZykgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIi8vIikgewogICAgICAgICAgcmVzdWx0ICs9IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gc2luZ2xlQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICJcclxuIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChpbnNpZGVDb21tZW50ID09PSBzaW5nbGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICJcbiIpIHsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgICAgIHJlc3VsdCArPSBzdHJpcChqc29uU3RyaW5nLCBvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICB9IGVsc2UgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLyoiKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBtdWx0aUNvbW1lbnQ7CiAgICAgICAgICBpKys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IG11bHRpQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIiovIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSArIDEpOwogICAgICAgICAgb2Zmc2V0ID0gaSArIDE7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdCArIChpbnNpZGVDb21tZW50ID8gc3RyaXAoanNvblN0cmluZy5zbGljZShvZmZzZXQpKSA6IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0KSk7CiAgICB9OwogIH0KfSk7CgovLyBzcmMvc2NoZW1hdGljL2luZGV4LnRzCnZhciBpbmRleF9leHBvcnRzID0ge307Cl9fZXhwb3J0KGluZGV4X2V4cG9ydHMsIHsKICBtYWluOiAoKSA9PiBtYWluCn0pOwptb2R1bGUuZXhwb3J0cyA9IF9fdG9Db21tb25KUyhpbmRleF9leHBvcnRzKTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIGltcG9ydF9zY2hlbWF0aWNzOSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9qc29uLnV0aWxzLnRzCnZhciBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cyA9IF9fdG9FU00ocmVxdWlyZV9zdHJpcF9qc29uX2NvbW1lbnRzKCksIDEpOwp2YXIgc2VyaWFsaXplSnNvbiA9IChqc29uMikgPT4gYCR7SlNPTi5zdHJpbmdpZnkoanNvbjIsIG51bGwsIDIpfQpgOwp2YXIgcmVhZEpzb25JblRyZWUgPSAoaG9zdCwgcGF0aCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgJHtwYXRofWApOwogIH0KICBjb25zdCBjb250ZW50cyA9ICgwLCBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cy5kZWZhdWx0KShob3N0LnJlYWQocGF0aCk/LnRvU3RyaW5nKCJ1dGYtOCIpIHx8ICIiKTsKICB0cnkgewogICAgcmV0dXJuIEpTT04ucGFyc2UoY29udGVudHMpOwogIH0gY2F0Y2ggKGUpIHsKICAgIGNvbnN0IGVycm9yID0gZTsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHBhcnNlICR7cGF0aH06ICR7ZXJyb3IubWVzc2FnZX1gKTsKICB9Cn07CnZhciB1cGRhdGVKc29uSW5UcmVlID0gKHBhdGgsIGNhbGxiYWNrKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIGhvc3QuY3JlYXRlKHBhdGgsIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2soe30sIGNvbnRleHQpKSk7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgaG9zdC5vdmVyd3JpdGUoCiAgICBwYXRoLAogICAgc2VyaWFsaXplSnNvbihjYWxsYmFjayhyZWFkSnNvbkluVHJlZShob3N0LCBwYXRoKSwgY29udGV4dCkpCiAgKTsKICByZXR1cm4gaG9zdDsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvdXRpbHMvdHNjb25maWcudXRpbHMudHMKdmFyIHVwZGF0ZVRzQ29uZmlnSW5UcmVlID0gKGNvbXBpbGVyT3B0aW9ucykgPT4gdXBkYXRlSnNvbkluVHJlZSgidHNjb25maWcuanNvbiIsICh0c2NvbmZpZykgPT4gKHsKICAuLi50c2NvbmZpZywKICBjb21waWxlck9wdGlvbnMKfSkpOwoKLy8gc3JjL3NjaGVtYXRpYy9ydWxlcy91cGRhdGUtdHMtY29uZmlnLnJ1bGUudHMKdmFyIHVwZGF0ZVRzQ29uZmlnUnVsZSA9IGFzeW5jICgpID0+IHsKICBjb25zdCB7IHRzQ29uZmlnIH0gPSBhd2FpdCBpbXBvcnQoIkBhdGxzL2NvZGUtcnVudGltZSIpOwogIHJldHVybiB1cGRhdGVUc0NvbmZpZ0luVHJlZSh7CiAgICAuLi50c0NvbmZpZy5jb21waWxlck9wdGlvbnMKICB9KTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1jb21tb24uc291cmNlLnRzCnZhciBpbXBvcnRfY29yZSA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljcyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MyID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczMgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgZ2VuZXJhdGVDb21tb25Tb3VyY2UgPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzLmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M0LnVybCkoIi4uL3RlbXBsYXRlcy9jb21tb24iKSwgWwogICgwLCBpbXBvcnRfc2NoZW1hdGljczIudGVtcGxhdGUpKHsKICAgIC4uLmltcG9ydF9jb3JlLnN0cmluZ3MsCiAgICAuLi5vcHRpb25zLAogICAgZG90OiAiLiIKICB9KSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MzLm1vdmUpKCIuLyIpCl0pOwoKLy8gc3JjL3NjaGVtYXRpYy9zb3VyY2VzL2dlbmVyYXRlLXByb2plY3Qtc3BlY2lmaWMuc291cmNlLnRzCnZhciBpbXBvcnRfbm9kZV9mcyA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKdmFyIGltcG9ydF9ub2RlX3BhdGggPSByZXF1aXJlKCJub2RlOnBhdGgiKTsKdmFyIGltcG9ydF9jb3JlMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M3ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczggPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlID0gKG9wdGlvbnMpID0+IHsKICBjb25zdCB7IG5hbWU6IHByb2plY3ROYW1lIH0gPSBKU09OLnBhcnNlKAogICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tc3luYwogICAgKDAsIGltcG9ydF9ub2RlX2ZzLnJlYWRGaWxlU3luYykoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikob3B0aW9ucy5jd2QsICJwYWNrYWdlLmpzb24iKSwgInV0Zi04IikKICApOwogIHJldHVybiAoMCwgaW1wb3J0X3NjaGVtYXRpY3M1LmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M2LnVybCkoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikoIi4uL3RlbXBsYXRlcyIsIG9wdGlvbnMudHlwZSkpLCBbCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3M3LnRlbXBsYXRlKSh7CiAgICAgIC4uLmltcG9ydF9jb3JlMi5zdHJpbmdzLAogICAgICAuLi5vcHRpb25zLAogICAgICBwcm9qZWN0TmFtZSwKICAgICAgZG90OiAiLiIKICAgIH0pLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzOC5tb3ZlKSgiLi8iKQogIF0pOwp9OwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9tZXJnZS1naXRpZ25vcmUtY29udGVudC51dGlscy50cwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19TVEFSVF9NQVJLRVIgPSAiIyByYWlqaW46YmVnaW4gcHJvamVjdC1zcGVjaWZpYyBnaXRpZ25vcmUiOwp2YXIgUFJPSkVDVF9TUEVDSUZJQ19FTkRfTUFSS0VSID0gIiMgcmFpamluOmVuZCBwcm9qZWN0LXNwZWNpZmljIGdpdGlnbm9yZSI7CnZhciBub3JtYWxpemVDb250ZW50ID0gKGNvbnRlbnQpID0+IGNvbnRlbnQucmVwbGFjZSgvXHJcbi9nLCAiXG4iKTsKdmFyIGdldE5vcm1hbGl6ZWRMaW5lcyA9IChjb250ZW50KSA9PiBub3JtYWxpemVDb250ZW50KGNvbnRlbnQpLnNwbGl0KCJcbiIpOwp2YXIgdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyA9IChsaW5lcykgPT4gewogIGNvbnN0IG5vcm1hbGl6ZWRMaW5lcyA9IFsuLi5saW5lc107CiAgd2hpbGUgKG5vcm1hbGl6ZWRMaW5lcy5sZW5ndGggPiAwICYmIG5vcm1hbGl6ZWRMaW5lc1tub3JtYWxpemVkTGluZXMubGVuZ3RoIC0gMV0gPT09ICIiKSB7CiAgICBub3JtYWxpemVkTGluZXMucG9wKCk7CiAgfQogIHJldHVybiBub3JtYWxpemVkTGluZXM7Cn07CnZhciBpc1Byb2plY3RTcGVjaWZpY0xpbmUgPSAobGluZSwgdGVtcGxhdGVMaW5lU2V0KSA9PiBsaW5lICE9PSAiIiAmJiAhdGVtcGxhdGVMaW5lU2V0LmhhcyhsaW5lKSAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX1NUQVJUX01BUktFUiAmJiBsaW5lICE9PSBQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVI7CnZhciBnZXRQcm9qZWN0U3BlY2lmaWNMaW5lcyA9IChleGlzdGluZ0xpbmVzLCB0ZW1wbGF0ZUxpbmVTZXQpID0+IHsKICBjb25zdCBzdGFydEluZGV4ID0gZXhpc3RpbmdMaW5lcy5pbmRleE9mKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBjb25zdCBlbmRJbmRleCA9IGV4aXN0aW5nTGluZXMuaW5kZXhPZihQUk9KRUNUX1NQRUNJRklDX0VORF9NQVJLRVIpOwogIGlmIChzdGFydEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCA+IHN0YXJ0SW5kZXgpIHsKICAgIHJldHVybiBBcnJheS5mcm9tKAogICAgICBuZXcgU2V0KGV4aXN0aW5nTGluZXMuZmlsdGVyKChsaW5lKSA9PiBpc1Byb2plY3RTcGVjaWZpY0xpbmUobGluZSwgdGVtcGxhdGVMaW5lU2V0KSkpCiAgICApOwogIH0KICByZXR1cm4gZXhpc3RpbmdMaW5lcy5maWx0ZXIoKGxpbmUpID0+IGlzUHJvamVjdFNwZWNpZmljTGluZShsaW5lLCB0ZW1wbGF0ZUxpbmVTZXQpKTsKfTsKdmFyIG1lcmdlR2l0SWdub3JlQ29udGVudCA9ICh7CiAgZXhpc3RpbmdDb250ZW50LAogIHRlbXBsYXRlQ29udGVudAp9KSA9PiB7CiAgY29uc3QgdGVtcGxhdGVMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyh0ZW1wbGF0ZUNvbnRlbnQpOwogIGNvbnN0IHRlbXBsYXRlTGluZVNldCA9IG5ldyBTZXQodGVtcGxhdGVMaW5lcyk7CiAgY29uc3QgZXhpc3RpbmdMaW5lcyA9IGdldE5vcm1hbGl6ZWRMaW5lcyhleGlzdGluZ0NvbnRlbnQpOwogIGNvbnN0IHByb2plY3RTcGVjaWZpY0xpbmVzID0gZ2V0UHJvamVjdFNwZWNpZmljTGluZXMoZXhpc3RpbmdMaW5lcywgdGVtcGxhdGVMaW5lU2V0KTsKICBpZiAocHJvamVjdFNwZWNpZmljTGluZXMubGVuZ3RoID09PSAwKSB7CiAgICByZXR1cm4gdHJpbVRyYWlsaW5nRW1wdHlMaW5lcyh0ZW1wbGF0ZUxpbmVzKS5qb2luKCJcbiIpOwogIH0KICBjb25zdCBtZXJnZWRMaW5lcyA9IHRyaW1UcmFpbGluZ0VtcHR5TGluZXModGVtcGxhdGVMaW5lcyk7CiAgaWYgKG1lcmdlZExpbmVzLmxlbmd0aCA+IDApIHsKICAgIG1lcmdlZExpbmVzLnB1c2goIiIpOwogIH0KICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfU1RBUlRfTUFSS0VSKTsKICBtZXJnZWRMaW5lcy5wdXNoKC4uLnByb2plY3RTcGVjaWZpY0xpbmVzKTsKICBtZXJnZWRMaW5lcy5wdXNoKFBST0pFQ1RfU1BFQ0lGSUNfRU5EX01BUktFUik7CiAgcmV0dXJuIG1lcmdlZExpbmVzLmpvaW4oIlxuIik7Cn07CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qcy15YW1sLW5wbS00LjEuMC0zNjA2ZjMyMzEyLTEwLnppcC9ub2RlX21vZHVsZXMvanMteWFtbC9kaXN0L2pzLXlhbWwubWpzCmZ1bmN0aW9uIGlzTm90aGluZyhzdWJqZWN0KSB7CiAgcmV0dXJuIHR5cGVvZiBzdWJqZWN0ID09PSAidW5kZWZpbmVkIiB8fCBzdWJqZWN0ID09PSBudWxsOwp9CmZ1bmN0aW9uIGlzT2JqZWN0KHN1YmplY3QpIHsKICByZXR1cm4gdHlwZW9mIHN1YmplY3QgPT09ICJvYmplY3QiICYmIHN1YmplY3QgIT09IG51bGw7Cn0KZnVuY3Rpb24gdG9BcnJheShzZXF1ZW5jZSkgewogIGlmIChBcnJheS5pc0FycmF5KHNlcXVlbmNlKSkgcmV0dXJuIHNlcXVlbmNlOwogIGVsc2UgaWYgKGlzTm90aGluZyhzZXF1ZW5jZSkpIHJldHVybiBbXTsKICByZXR1cm4gW3NlcXVlbmNlXTsKfQpmdW5jdGlvbiBleHRlbmQodGFyZ2V0LCBzb3VyY2UpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwga2V5LCBzb3VyY2VLZXlzOwogIGlmIChzb3VyY2UpIHsKICAgIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsKICAgIH0KICB9CiAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiByZXBlYXQoc3RyaW5nLCBjb3VudCkgewogIHZhciByZXN1bHQgPSAiIiwgY3ljbGU7CiAgZm9yIChjeWNsZSA9IDA7IGN5Y2xlIDwgY291bnQ7IGN5Y2xlICs9IDEpIHsKICAgIHJlc3VsdCArPSBzdHJpbmc7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gaXNOZWdhdGl2ZVplcm8obnVtYmVyKSB7CiAgcmV0dXJuIG51bWJlciA9PT0gMCAmJiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IDEgLyBudW1iZXI7Cn0KdmFyIGlzTm90aGluZ18xID0gaXNOb3RoaW5nOwp2YXIgaXNPYmplY3RfMSA9IGlzT2JqZWN0Owp2YXIgdG9BcnJheV8xID0gdG9BcnJheTsKdmFyIHJlcGVhdF8xID0gcmVwZWF0Owp2YXIgaXNOZWdhdGl2ZVplcm9fMSA9IGlzTmVnYXRpdmVaZXJvOwp2YXIgZXh0ZW5kXzEgPSBleHRlbmQ7CnZhciBjb21tb24gPSB7CiAgaXNOb3RoaW5nOiBpc05vdGhpbmdfMSwKICBpc09iamVjdDogaXNPYmplY3RfMSwKICB0b0FycmF5OiB0b0FycmF5XzEsCiAgcmVwZWF0OiByZXBlYXRfMSwKICBpc05lZ2F0aXZlWmVybzogaXNOZWdhdGl2ZVplcm9fMSwKICBleHRlbmQ6IGV4dGVuZF8xCn07CmZ1bmN0aW9uIGZvcm1hdEVycm9yKGV4Y2VwdGlvbjIsIGNvbXBhY3QpIHsKICB2YXIgd2hlcmUgPSAiIiwgbWVzc2FnZSA9IGV4Y2VwdGlvbjIucmVhc29uIHx8ICIodW5rbm93biByZWFzb24pIjsKICBpZiAoIWV4Y2VwdGlvbjIubWFyaykgcmV0dXJuIG1lc3NhZ2U7CiAgaWYgKGV4Y2VwdGlvbjIubWFyay5uYW1lKSB7CiAgICB3aGVyZSArPSAnaW4gIicgKyBleGNlcHRpb24yLm1hcmsubmFtZSArICciICc7CiAgfQogIHdoZXJlICs9ICIoIiArIChleGNlcHRpb24yLm1hcmsubGluZSArIDEpICsgIjoiICsgKGV4Y2VwdGlvbjIubWFyay5jb2x1bW4gKyAxKSArICIpIjsKICBpZiAoIWNvbXBhY3QgJiYgZXhjZXB0aW9uMi5tYXJrLnNuaXBwZXQpIHsKICAgIHdoZXJlICs9ICJcblxuIiArIGV4Y2VwdGlvbjIubWFyay5zbmlwcGV0OwogIH0KICByZXR1cm4gbWVzc2FnZSArICIgIiArIHdoZXJlOwp9CmZ1bmN0aW9uIFlBTUxFeGNlcHRpb24kMShyZWFzb24sIG1hcmspIHsKICBFcnJvci5jYWxsKHRoaXMpOwogIHRoaXMubmFtZSA9ICJZQU1MRXhjZXB0aW9uIjsKICB0aGlzLnJlYXNvbiA9IHJlYXNvbjsKICB0aGlzLm1hcmsgPSBtYXJrOwogIHRoaXMubWVzc2FnZSA9IGZvcm1hdEVycm9yKHRoaXMsIGZhbHNlKTsKICBpZiAoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpIHsKICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpOwogIH0gZWxzZSB7CiAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2sgfHwgIiI7CiAgfQp9CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBZQU1MRXhjZXB0aW9uJDE7CllBTUxFeGNlcHRpb24kMS5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZyhjb21wYWN0KSB7CiAgcmV0dXJuIHRoaXMubmFtZSArICI6ICIgKyBmb3JtYXRFcnJvcih0aGlzLCBjb21wYWN0KTsKfTsKdmFyIGV4Y2VwdGlvbiA9IFlBTUxFeGNlcHRpb24kMTsKZnVuY3Rpb24gZ2V0TGluZShidWZmZXIsIGxpbmVTdGFydCwgbGluZUVuZCwgcG9zaXRpb24sIG1heExpbmVMZW5ndGgpIHsKICB2YXIgaGVhZCA9ICIiOwogIHZhciB0YWlsID0gIiI7CiAgdmFyIG1heEhhbGZMZW5ndGggPSBNYXRoLmZsb29yKG1heExpbmVMZW5ndGggLyAyKSAtIDE7CiAgaWYgKHBvc2l0aW9uIC0gbGluZVN0YXJ0ID4gbWF4SGFsZkxlbmd0aCkgewogICAgaGVhZCA9ICIgLi4uICI7CiAgICBsaW5lU3RhcnQgPSBwb3NpdGlvbiAtIG1heEhhbGZMZW5ndGggKyBoZWFkLmxlbmd0aDsKICB9CiAgaWYgKGxpbmVFbmQgLSBwb3NpdGlvbiA+IG1heEhhbGZMZW5ndGgpIHsKICAgIHRhaWwgPSAiIC4uLiI7CiAgICBsaW5lRW5kID0gcG9zaXRpb24gKyBtYXhIYWxmTGVuZ3RoIC0gdGFpbC5sZW5ndGg7CiAgfQogIHJldHVybiB7CiAgICBzdHI6IGhlYWQgKyBidWZmZXIuc2xpY2UobGluZVN0YXJ0LCBsaW5lRW5kKS5yZXBsYWNlKC9cdC9nLCAiXHUyMTkyIikgKyB0YWlsLAogICAgcG9zOiBwb3NpdGlvbiAtIGxpbmVTdGFydCArIGhlYWQubGVuZ3RoCiAgICAvLyByZWxhdGl2ZSBwb3NpdGlvbgogIH07Cn0KZnVuY3Rpb24gcGFkU3RhcnQoc3RyaW5nLCBtYXgpIHsKICByZXR1cm4gY29tbW9uLnJlcGVhdCgiICIsIG1heCAtIHN0cmluZy5sZW5ndGgpICsgc3RyaW5nOwp9CmZ1bmN0aW9uIG1ha2VTbmlwcGV0KG1hcmssIG9wdGlvbnMpIHsKICBvcHRpb25zID0gT2JqZWN0LmNyZWF0ZShvcHRpb25zIHx8IG51bGwpOwogIGlmICghbWFyay5idWZmZXIpIHJldHVybiBudWxsOwogIGlmICghb3B0aW9ucy5tYXhMZW5ndGgpIG9wdGlvbnMubWF4TGVuZ3RoID0gNzk7CiAgaWYgKHR5cGVvZiBvcHRpb25zLmluZGVudCAhPT0gIm51bWJlciIpIG9wdGlvbnMuaW5kZW50ID0gMTsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNCZWZvcmUgIT09ICJudW1iZXIiKSBvcHRpb25zLmxpbmVzQmVmb3JlID0gMzsKICBpZiAodHlwZW9mIG9wdGlvbnMubGluZXNBZnRlciAhPT0gIm51bWJlciIpIG9wdGlvbnMubGluZXNBZnRlciA9IDI7CiAgdmFyIHJlID0gL1xyP1xufFxyfFwwL2c7CiAgdmFyIGxpbmVTdGFydHMgPSBbMF07CiAgdmFyIGxpbmVFbmRzID0gW107CiAgdmFyIG1hdGNoOwogIHZhciBmb3VuZExpbmVObyA9IC0xOwogIHdoaWxlIChtYXRjaCA9IHJlLmV4ZWMobWFyay5idWZmZXIpKSB7CiAgICBsaW5lRW5kcy5wdXNoKG1hdGNoLmluZGV4KTsKICAgIGxpbmVTdGFydHMucHVzaChtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCk7CiAgICBpZiAobWFyay5wb3NpdGlvbiA8PSBtYXRjaC5pbmRleCAmJiBmb3VuZExpbmVObyA8IDApIHsKICAgICAgZm91bmRMaW5lTm8gPSBsaW5lU3RhcnRzLmxlbmd0aCAtIDI7CiAgICB9CiAgfQogIGlmIChmb3VuZExpbmVObyA8IDApIGZvdW5kTGluZU5vID0gbGluZVN0YXJ0cy5sZW5ndGggLSAxOwogIHZhciByZXN1bHQgPSAiIiwgaSwgbGluZTsKICB2YXIgbGluZU5vTGVuZ3RoID0gTWF0aC5taW4obWFyay5saW5lICsgb3B0aW9ucy5saW5lc0FmdGVyLCBsaW5lRW5kcy5sZW5ndGgpLnRvU3RyaW5nKCkubGVuZ3RoOwogIHZhciBtYXhMaW5lTGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggLSAob3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzKTsKICBmb3IgKGkgPSAxOyBpIDw9IG9wdGlvbnMubGluZXNCZWZvcmU7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vIC0gaSA8IDApIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vIC0gaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vIC0gaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ID0gY29tbW9uLnJlcGVhdCgiICIsIG9wdGlvbnMuaW5kZW50KSArIHBhZFN0YXJ0KChtYXJrLmxpbmUgLSBpICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iICsgcmVzdWx0OwogIH0KICBsaW5lID0gZ2V0TGluZShtYXJrLmJ1ZmZlciwgbGluZVN0YXJ0c1tmb3VuZExpbmVOb10sIGxpbmVFbmRzW2ZvdW5kTGluZU5vXSwgbWFyay5wb3NpdGlvbiwgbWF4TGluZUxlbmd0aCk7CiAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgMSkudG9TdHJpbmcoKSwgbGluZU5vTGVuZ3RoKSArICIgfCAiICsgbGluZS5zdHIgKyAiXG4iOwogIHJlc3VsdCArPSBjb21tb24ucmVwZWF0KCItIiwgb3B0aW9ucy5pbmRlbnQgKyBsaW5lTm9MZW5ndGggKyAzICsgbGluZS5wb3MpICsgIl5cbiI7CiAgZm9yIChpID0gMTsgaSA8PSBvcHRpb25zLmxpbmVzQWZ0ZXI7IGkrKykgewogICAgaWYgKGZvdW5kTGluZU5vICsgaSA+PSBsaW5lRW5kcy5sZW5ndGgpIGJyZWFrOwogICAgbGluZSA9IGdldExpbmUoCiAgICAgIG1hcmsuYnVmZmVyLAogICAgICBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIGxpbmVFbmRzW2ZvdW5kTGluZU5vICsgaV0sCiAgICAgIG1hcmsucG9zaXRpb24gLSAobGluZVN0YXJ0c1tmb3VuZExpbmVOb10gLSBsaW5lU3RhcnRzW2ZvdW5kTGluZU5vICsgaV0pLAogICAgICBtYXhMaW5lTGVuZ3RoCiAgICApOwogICAgcmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIiAiLCBvcHRpb25zLmluZGVudCkgKyBwYWRTdGFydCgobWFyay5saW5lICsgaSArIDEpLnRvU3RyaW5nKCksIGxpbmVOb0xlbmd0aCkgKyAiIHwgIiArIGxpbmUuc3RyICsgIlxuIjsKICB9CiAgcmV0dXJuIHJlc3VsdC5yZXBsYWNlKC9cbiQvLCAiIik7Cn0KdmFyIHNuaXBwZXQgPSBtYWtlU25pcHBldDsKdmFyIFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUyA9IFsKICAia2luZCIsCiAgIm11bHRpIiwKICAicmVzb2x2ZSIsCiAgImNvbnN0cnVjdCIsCiAgImluc3RhbmNlT2YiLAogICJwcmVkaWNhdGUiLAogICJyZXByZXNlbnQiLAogICJyZXByZXNlbnROYW1lIiwKICAiZGVmYXVsdFN0eWxlIiwKICAic3R5bGVBbGlhc2VzIgpdOwp2YXIgWUFNTF9OT0RFX0tJTkRTID0gWwogICJzY2FsYXIiLAogICJzZXF1ZW5jZSIsCiAgIm1hcHBpbmciCl07CmZ1bmN0aW9uIGNvbXBpbGVTdHlsZUFsaWFzZXMobWFwMikgewogIHZhciByZXN1bHQgPSB7fTsKICBpZiAobWFwMiAhPT0gbnVsbCkgewogICAgT2JqZWN0LmtleXMobWFwMikuZm9yRWFjaChmdW5jdGlvbihzdHlsZSkgewogICAgICBtYXAyW3N0eWxlXS5mb3JFYWNoKGZ1bmN0aW9uKGFsaWFzKSB7CiAgICAgICAgcmVzdWx0W1N0cmluZyhhbGlhcyldID0gc3R5bGU7CiAgICAgIH0pOwogICAgfSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gVHlwZSQxKHRhZywgb3B0aW9ucykgewogIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goZnVuY3Rpb24obmFtZSkgewogICAgaWYgKFRZUEVfQ09OU1RSVUNUT1JfT1BUSU9OUy5pbmRleE9mKG5hbWUpID09PSAtMSkgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCdVbmtub3duIG9wdGlvbiAiJyArIG5hbWUgKyAnIiBpcyBtZXQgaW4gZGVmaW5pdGlvbiBvZiAiJyArIHRhZyArICciIFlBTUwgdHlwZS4nKTsKICAgIH0KICB9KTsKICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zOwogIHRoaXMudGFnID0gdGFnOwogIHRoaXMua2luZCA9IG9wdGlvbnNbImtpbmQiXSB8fCBudWxsOwogIHRoaXMucmVzb2x2ZSA9IG9wdGlvbnNbInJlc29sdmUiXSB8fCBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0cnVlOwogIH07CiAgdGhpcy5jb25zdHJ1Y3QgPSBvcHRpb25zWyJjb25zdHJ1Y3QiXSB8fCBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YTsKICB9OwogIHRoaXMuaW5zdGFuY2VPZiA9IG9wdGlvbnNbImluc3RhbmNlT2YiXSB8fCBudWxsOwogIHRoaXMucHJlZGljYXRlID0gb3B0aW9uc1sicHJlZGljYXRlIl0gfHwgbnVsbDsKICB0aGlzLnJlcHJlc2VudCA9IG9wdGlvbnNbInJlcHJlc2VudCJdIHx8IG51bGw7CiAgdGhpcy5yZXByZXNlbnROYW1lID0gb3B0aW9uc1sicmVwcmVzZW50TmFtZSJdIHx8IG51bGw7CiAgdGhpcy5kZWZhdWx0U3R5bGUgPSBvcHRpb25zWyJkZWZhdWx0U3R5bGUiXSB8fCBudWxsOwogIHRoaXMubXVsdGkgPSBvcHRpb25zWyJtdWx0aSJdIHx8IGZhbHNlOwogIHRoaXMuc3R5bGVBbGlhc2VzID0gY29tcGlsZVN0eWxlQWxpYXNlcyhvcHRpb25zWyJzdHlsZUFsaWFzZXMiXSB8fCBudWxsKTsKICBpZiAoWUFNTF9OT0RFX0tJTkRTLmluZGV4T2YodGhpcy5raW5kKSA9PT0gLTEpIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oJ1Vua25vd24ga2luZCAiJyArIHRoaXMua2luZCArICciIGlzIHNwZWNpZmllZCBmb3IgIicgKyB0YWcgKyAnIiBZQU1MIHR5cGUuJyk7CiAgfQp9CnZhciB0eXBlID0gVHlwZSQxOwpmdW5jdGlvbiBjb21waWxlTGlzdChzY2hlbWEyLCBuYW1lKSB7CiAgdmFyIHJlc3VsdCA9IFtdOwogIHNjaGVtYTJbbmFtZV0uZm9yRWFjaChmdW5jdGlvbihjdXJyZW50VHlwZSkgewogICAgdmFyIG5ld0luZGV4ID0gcmVzdWx0Lmxlbmd0aDsKICAgIHJlc3VsdC5mb3JFYWNoKGZ1bmN0aW9uKHByZXZpb3VzVHlwZSwgcHJldmlvdXNJbmRleCkgewogICAgICBpZiAocHJldmlvdXNUeXBlLnRhZyA9PT0gY3VycmVudFR5cGUudGFnICYmIHByZXZpb3VzVHlwZS5raW5kID09PSBjdXJyZW50VHlwZS5raW5kICYmIHByZXZpb3VzVHlwZS5tdWx0aSA9PT0gY3VycmVudFR5cGUubXVsdGkpIHsKICAgICAgICBuZXdJbmRleCA9IHByZXZpb3VzSW5kZXg7CiAgICAgIH0KICAgIH0pOwogICAgcmVzdWx0W25ld0luZGV4XSA9IGN1cnJlbnRUeXBlOwogIH0pOwogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gY29tcGlsZU1hcCgpIHsKICB2YXIgcmVzdWx0ID0gewogICAgc2NhbGFyOiB7fSwKICAgIHNlcXVlbmNlOiB7fSwKICAgIG1hcHBpbmc6IHt9LAogICAgZmFsbGJhY2s6IHt9LAogICAgbXVsdGk6IHsKICAgICAgc2NhbGFyOiBbXSwKICAgICAgc2VxdWVuY2U6IFtdLAogICAgICBtYXBwaW5nOiBbXSwKICAgICAgZmFsbGJhY2s6IFtdCiAgICB9CiAgfSwgaW5kZXgsIGxlbmd0aDsKICBmdW5jdGlvbiBjb2xsZWN0VHlwZSh0eXBlMikgewogICAgaWYgKHR5cGUyLm11bHRpKSB7CiAgICAgIHJlc3VsdC5tdWx0aVt0eXBlMi5raW5kXS5wdXNoKHR5cGUyKTsKICAgICAgcmVzdWx0Lm11bHRpWyJmYWxsYmFjayJdLnB1c2godHlwZTIpOwogICAgfSBlbHNlIHsKICAgICAgcmVzdWx0W3R5cGUyLmtpbmRdW3R5cGUyLnRhZ10gPSByZXN1bHRbImZhbGxiYWNrIl1bdHlwZTIudGFnXSA9IHR5cGUyOwogICAgfQogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIGFyZ3VtZW50c1tpbmRleF0uZm9yRWFjaChjb2xsZWN0VHlwZSk7CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gU2NoZW1hJDEoZGVmaW5pdGlvbikgewogIHJldHVybiB0aGlzLmV4dGVuZChkZWZpbml0aW9uKTsKfQpTY2hlbWEkMS5wcm90b3R5cGUuZXh0ZW5kID0gZnVuY3Rpb24gZXh0ZW5kMihkZWZpbml0aW9uKSB7CiAgdmFyIGltcGxpY2l0ID0gW107CiAgdmFyIGV4cGxpY2l0ID0gW107CiAgaWYgKGRlZmluaXRpb24gaW5zdGFuY2VvZiB0eXBlKSB7CiAgICBleHBsaWNpdC5wdXNoKGRlZmluaXRpb24pOwogIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkgewogICAgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbik7CiAgfSBlbHNlIGlmIChkZWZpbml0aW9uICYmIChBcnJheS5pc0FycmF5KGRlZmluaXRpb24uaW1wbGljaXQpIHx8IEFycmF5LmlzQXJyYXkoZGVmaW5pdGlvbi5leHBsaWNpdCkpKSB7CiAgICBpZiAoZGVmaW5pdGlvbi5pbXBsaWNpdCkgaW1wbGljaXQgPSBpbXBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5pbXBsaWNpdCk7CiAgICBpZiAoZGVmaW5pdGlvbi5leHBsaWNpdCkgZXhwbGljaXQgPSBleHBsaWNpdC5jb25jYXQoZGVmaW5pdGlvbi5leHBsaWNpdCk7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNjaGVtYS5leHRlbmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgVHlwZSwgWyBUeXBlIF0sIG9yIGEgc2NoZW1hIGRlZmluaXRpb24gKHsgaW1wbGljaXQ6IFsuLi5dLCBleHBsaWNpdDogWy4uLl0gfSkiKTsKICB9CiAgaW1wbGljaXQuZm9yRWFjaChmdW5jdGlvbih0eXBlJDEpIHsKICAgIGlmICghKHR5cGUkMSBpbnN0YW5jZW9mIHR5cGUpKSB7CiAgICAgIHRocm93IG5ldyBleGNlcHRpb24oIlNwZWNpZmllZCBsaXN0IG9mIFlBTUwgdHlwZXMgKG9yIGEgc2luZ2xlIFR5cGUgb2JqZWN0KSBjb250YWlucyBhIG5vbi1UeXBlIG9iamVjdC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubG9hZEtpbmQgJiYgdHlwZSQxLmxvYWRLaW5kICE9PSAic2NhbGFyIikgewogICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJUaGVyZSBpcyBhIG5vbi1zY2FsYXIgdHlwZSBpbiB0aGUgaW1wbGljaXQgbGlzdCBvZiBhIHNjaGVtYS4gSW1wbGljaXQgcmVzb2x2aW5nIG9mIHN1Y2ggdHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKICAgIH0KICAgIGlmICh0eXBlJDEubXVsdGkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiVGhlcmUgaXMgYSBtdWx0aSB0eXBlIGluIHRoZSBpbXBsaWNpdCBsaXN0IG9mIGEgc2NoZW1hLiBNdWx0aSB0YWdzIGNhbiBvbmx5IGJlIGxpc3RlZCBhcyBleHBsaWNpdC4iKTsKICAgIH0KICB9KTsKICBleHBsaWNpdC5mb3JFYWNoKGZ1bmN0aW9uKHR5cGUkMSkgewogICAgaWYgKCEodHlwZSQxIGluc3RhbmNlb2YgdHlwZSkpIHsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigiU3BlY2lmaWVkIGxpc3Qgb2YgWUFNTCB0eXBlcyAob3IgYSBzaW5nbGUgVHlwZSBvYmplY3QpIGNvbnRhaW5zIGEgbm9uLVR5cGUgb2JqZWN0LiIpOwogICAgfQogIH0pOwogIHZhciByZXN1bHQgPSBPYmplY3QuY3JlYXRlKFNjaGVtYSQxLnByb3RvdHlwZSk7CiAgcmVzdWx0LmltcGxpY2l0ID0gKHRoaXMuaW1wbGljaXQgfHwgW10pLmNvbmNhdChpbXBsaWNpdCk7CiAgcmVzdWx0LmV4cGxpY2l0ID0gKHRoaXMuZXhwbGljaXQgfHwgW10pLmNvbmNhdChleHBsaWNpdCk7CiAgcmVzdWx0LmNvbXBpbGVkSW1wbGljaXQgPSBjb21waWxlTGlzdChyZXN1bHQsICJpbXBsaWNpdCIpOwogIHJlc3VsdC5jb21waWxlZEV4cGxpY2l0ID0gY29tcGlsZUxpc3QocmVzdWx0LCAiZXhwbGljaXQiKTsKICByZXN1bHQuY29tcGlsZWRUeXBlTWFwID0gY29tcGlsZU1hcChyZXN1bHQuY29tcGlsZWRJbXBsaWNpdCwgcmVzdWx0LmNvbXBpbGVkRXhwbGljaXQpOwogIHJldHVybiByZXN1bHQ7Cn07CnZhciBzY2hlbWEgPSBTY2hlbWEkMTsKdmFyIHN0ciA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpzdHIiLCB7CiAga2luZDogInNjYWxhciIsCiAgY29uc3RydWN0OiBmdW5jdGlvbihkYXRhKSB7CiAgICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiAiIjsKICB9Cn0pOwp2YXIgc2VxID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNlcSIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107CiAgfQp9KTsKdmFyIG1hcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptYXAiLCB7CiAga2luZDogIm1hcHBpbmciLAogIGNvbnN0cnVjdDogZnVuY3Rpb24oZGF0YSkgewogICAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDoge307CiAgfQp9KTsKdmFyIGZhaWxzYWZlID0gbmV3IHNjaGVtYSh7CiAgZXhwbGljaXQ6IFsKICAgIHN0ciwKICAgIHNlcSwKICAgIG1hcAogIF0KfSk7CmZ1bmN0aW9uIHJlc29sdmVZYW1sTnVsbChkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiB0cnVlOwogIHZhciBtYXggPSBkYXRhLmxlbmd0aDsKICByZXR1cm4gbWF4ID09PSAxICYmIGRhdGEgPT09ICJ+IiB8fCBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJudWxsIiB8fCBkYXRhID09PSAiTnVsbCIgfHwgZGF0YSA9PT0gIk5VTEwiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sTnVsbCgpIHsKICByZXR1cm4gbnVsbDsKfQpmdW5jdGlvbiBpc051bGwob2JqZWN0KSB7CiAgcmV0dXJuIG9iamVjdCA9PT0gbnVsbDsKfQp2YXIgX251bGwgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6bnVsbCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE51bGwsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sTnVsbCwKICBwcmVkaWNhdGU6IGlzTnVsbCwKICByZXByZXNlbnQ6IHsKICAgIGNhbm9uaWNhbDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAifiI7CiAgICB9LAogICAgbG93ZXJjYXNlOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuICJudWxsIjsKICAgIH0sCiAgICB1cHBlcmNhc2U6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIk5VTEwiOwogICAgfSwKICAgIGNhbWVsY2FzZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiAiTnVsbCI7CiAgICB9LAogICAgZW1wdHk6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIiI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJvb2xlYW4oZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoOwogIHJldHVybiBtYXggPT09IDQgJiYgKGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiKSB8fCBtYXggPT09IDUgJiYgKGRhdGEgPT09ICJmYWxzZSIgfHwgZGF0YSA9PT0gIkZhbHNlIiB8fCBkYXRhID09PSAiRkFMU0UiKTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQm9vbGVhbihkYXRhKSB7CiAgcmV0dXJuIGRhdGEgPT09ICJ0cnVlIiB8fCBkYXRhID09PSAiVHJ1ZSIgfHwgZGF0YSA9PT0gIlRSVUUiOwp9CmZ1bmN0aW9uIGlzQm9vbGVhbihvYmplY3QpIHsKICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iamVjdCkgPT09ICJbb2JqZWN0IEJvb2xlYW5dIjsKfQp2YXIgYm9vbCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpib29sIiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQm9vbGVhbiwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxCb29sZWFuLAogIHByZWRpY2F0ZTogaXNCb29sZWFuLAogIHJlcHJlc2VudDogewogICAgbG93ZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJ0cnVlIiA6ICJmYWxzZSI7CiAgICB9LAogICAgdXBwZXJjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUUlVFIiA6ICJGQUxTRSI7CiAgICB9LAogICAgY2FtZWxjYXNlOiBmdW5jdGlvbihvYmplY3QpIHsKICAgICAgcmV0dXJuIG9iamVjdCA/ICJUcnVlIiA6ICJGYWxzZSI7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwpmdW5jdGlvbiBpc0hleENvZGUoYykgewogIHJldHVybiA0OCA8PSBjICYmIGMgPD0gNTcgfHwgNjUgPD0gYyAmJiBjIDw9IDcwIHx8IDk3IDw9IGMgJiYgYyA8PSAxMDI7Cn0KZnVuY3Rpb24gaXNPY3RDb2RlKGMpIHsKICByZXR1cm4gNDggPD0gYyAmJiBjIDw9IDU1Owp9CmZ1bmN0aW9uIGlzRGVjQ29kZShjKSB7CiAgcmV0dXJuIDQ4IDw9IGMgJiYgYyA8PSA1NzsKfQpmdW5jdGlvbiByZXNvbHZlWWFtbEludGVnZXIoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgdmFyIG1heCA9IGRhdGEubGVuZ3RoLCBpbmRleCA9IDAsIGhhc0RpZ2l0cyA9IGZhbHNlLCBjaDsKICBpZiAoIW1heCkgcmV0dXJuIGZhbHNlOwogIGNoID0gZGF0YVtpbmRleF07CiAgaWYgKGNoID09PSAiLSIgfHwgY2ggPT09ICIrIikgewogICAgY2ggPSBkYXRhWysraW5kZXhdOwogIH0KICBpZiAoY2ggPT09ICIwIikgewogICAgaWYgKGluZGV4ICsgMSA9PT0gbWF4KSByZXR1cm4gdHJ1ZTsKICAgIGNoID0gZGF0YVsrK2luZGV4XTsKICAgIGlmIChjaCA9PT0gImIiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmIChjaCAhPT0gIjAiICYmIGNoICE9PSAiMSIpIHJldHVybiBmYWxzZTsKICAgICAgICBoYXNEaWdpdHMgPSB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBoYXNEaWdpdHMgJiYgY2ggIT09ICJfIjsKICAgIH0KICAgIGlmIChjaCA9PT0gIngiKSB7CiAgICAgIGluZGV4Kys7CiAgICAgIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgICAgIGNoID0gZGF0YVtpbmRleF07CiAgICAgICAgaWYgKGNoID09PSAiXyIpIGNvbnRpbnVlOwogICAgICAgIGlmICghaXNIZXhDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgaGFzRGlnaXRzID0gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gaGFzRGlnaXRzICYmIGNoICE9PSAiXyI7CiAgICB9CiAgICBpZiAoY2ggPT09ICJvIikgewogICAgICBpbmRleCsrOwogICAgICBmb3IgKDsgaW5kZXggPCBtYXg7IGluZGV4KyspIHsKICAgICAgICBjaCA9IGRhdGFbaW5kZXhdOwogICAgICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgICAgICBpZiAoIWlzT2N0Q29kZShkYXRhLmNoYXJDb2RlQXQoaW5kZXgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGhhc0RpZ2l0cyAmJiBjaCAhPT0gIl8iOwogICAgfQogIH0KICBpZiAoY2ggPT09ICJfIikgcmV0dXJuIGZhbHNlOwogIGZvciAoOyBpbmRleCA8IG1heDsgaW5kZXgrKykgewogICAgY2ggPSBkYXRhW2luZGV4XTsKICAgIGlmIChjaCA9PT0gIl8iKSBjb250aW51ZTsKICAgIGlmICghaXNEZWNDb2RlKGRhdGEuY2hhckNvZGVBdChpbmRleCkpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGhhc0RpZ2l0cyA9IHRydWU7CiAgfQogIGlmICghaGFzRGlnaXRzIHx8IGNoID09PSAiXyIpIHJldHVybiBmYWxzZTsKICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sSW50ZWdlcihkYXRhKSB7CiAgdmFyIHZhbHVlID0gZGF0YSwgc2lnbiA9IDEsIGNoOwogIGlmICh2YWx1ZS5pbmRleE9mKCJfIikgIT09IC0xKSB7CiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL18vZywgIiIpOwogIH0KICBjaCA9IHZhbHVlWzBdOwogIGlmIChjaCA9PT0gIi0iIHx8IGNoID09PSAiKyIpIHsKICAgIGlmIChjaCA9PT0gIi0iKSBzaWduID0gLTE7CiAgICB2YWx1ZSA9IHZhbHVlLnNsaWNlKDEpOwogICAgY2ggPSB2YWx1ZVswXTsKICB9CiAgaWYgKHZhbHVlID09PSAiMCIpIHJldHVybiAwOwogIGlmIChjaCA9PT0gIjAiKSB7CiAgICBpZiAodmFsdWVbMV0gPT09ICJiIikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMik7CiAgICBpZiAodmFsdWVbMV0gPT09ICJ4IikgcmV0dXJuIHNpZ24gKiBwYXJzZUludCh2YWx1ZS5zbGljZSgyKSwgMTYpOwogICAgaWYgKHZhbHVlWzFdID09PSAibyIpIHJldHVybiBzaWduICogcGFyc2VJbnQodmFsdWUuc2xpY2UoMiksIDgpOwogIH0KICByZXR1cm4gc2lnbiAqIHBhcnNlSW50KHZhbHVlLCAxMCk7Cn0KZnVuY3Rpb24gaXNJbnRlZ2VyKG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgPT09IDAgJiYgIWNvbW1vbi5pc05lZ2F0aXZlWmVybyhvYmplY3QpKTsKfQp2YXIgaW50ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOmludCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEludGVnZXIsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sSW50ZWdlciwKICBwcmVkaWNhdGU6IGlzSW50ZWdlciwKICByZXByZXNlbnQ6IHsKICAgIGJpbmFyeTogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwYiIgKyBvYmoudG9TdHJpbmcoMikgOiAiLTBiIiArIG9iai50b1N0cmluZygyKS5zbGljZSgxKTsKICAgIH0sCiAgICBvY3RhbDogZnVuY3Rpb24ob2JqKSB7CiAgICAgIHJldHVybiBvYmogPj0gMCA/ICIwbyIgKyBvYmoudG9TdHJpbmcoOCkgOiAiLTBvIiArIG9iai50b1N0cmluZyg4KS5zbGljZSgxKTsKICAgIH0sCiAgICBkZWNpbWFsOiBmdW5jdGlvbihvYmopIHsKICAgICAgcmV0dXJuIG9iai50b1N0cmluZygxMCk7CiAgICB9LAogICAgLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqLwogICAgaGV4YWRlY2ltYWw6IGZ1bmN0aW9uKG9iaikgewogICAgICByZXR1cm4gb2JqID49IDAgPyAiMHgiICsgb2JqLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpIDogIi0weCIgKyBvYmoudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkuc2xpY2UoMSk7CiAgICB9CiAgfSwKICBkZWZhdWx0U3R5bGU6ICJkZWNpbWFsIiwKICBzdHlsZUFsaWFzZXM6IHsKICAgIGJpbmFyeTogWzIsICJiaW4iXSwKICAgIG9jdGFsOiBbOCwgIm9jdCJdLAogICAgZGVjaW1hbDogWzEwLCAiZGVjIl0sCiAgICBoZXhhZGVjaW1hbDogWzE2LCAiaGV4Il0KICB9Cn0pOwp2YXIgWUFNTF9GTE9BVF9QQVRURVJOID0gbmV3IFJlZ0V4cCgKICAvLyAyLjVlNCwgMi41IGFuZCBpbnRlZ2VycwogICJeKD86Wy0rXT8oPzpbMC05XVswLTlfXSopKD86XFwuWzAtOV9dKik/KD86W2VFXVstK10/WzAtOV0rKT98XFwuWzAtOV9dKyg/OltlRV1bLStdP1swLTldKyk/fFstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLig/Om5hbnxOYU58TkFOKSkkIgopOwpmdW5jdGlvbiByZXNvbHZlWWFtbEZsb2F0KGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmICghWUFNTF9GTE9BVF9QQVRURVJOLnRlc3QoZGF0YSkgfHwgLy8gUXVpY2sgaGFjayB0byBub3QgYWxsb3cgaW50ZWdlcnMgZW5kIHdpdGggYF9gCiAgLy8gUHJvYmFibHkgc2hvdWxkIHVwZGF0ZSByZWdleHAgJiBjaGVjayBzcGVlZAogIGRhdGFbZGF0YS5sZW5ndGggLSAxXSA9PT0gIl8iKSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxGbG9hdChkYXRhKSB7CiAgdmFyIHZhbHVlLCBzaWduOwogIHZhbHVlID0gZGF0YS5yZXBsYWNlKC9fL2csICIiKS50b0xvd2VyQ2FzZSgpOwogIHNpZ24gPSB2YWx1ZVswXSA9PT0gIi0iID8gLTEgOiAxOwogIGlmICgiKy0iLmluZGV4T2YodmFsdWVbMF0pID49IDApIHsKICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMSk7CiAgfQogIGlmICh2YWx1ZSA9PT0gIi5pbmYiKSB7CiAgICByZXR1cm4gc2lnbiA9PT0gMSA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6IE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKICB9IGVsc2UgaWYgKHZhbHVlID09PSAiLm5hbiIpIHsKICAgIHJldHVybiBOYU47CiAgfQogIHJldHVybiBzaWduICogcGFyc2VGbG9hdCh2YWx1ZSwgMTApOwp9CnZhciBTQ0lFTlRJRklDX1dJVEhPVVRfRE9UID0gL15bLStdP1swLTldK2UvOwpmdW5jdGlvbiByZXByZXNlbnRZYW1sRmxvYXQob2JqZWN0LCBzdHlsZSkgewogIHZhciByZXM7CiAgaWYgKGlzTmFOKG9iamVjdCkpIHsKICAgIHN3aXRjaCAoc3R5bGUpIHsKICAgICAgY2FzZSAibG93ZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5uYW4iOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLk5BTiI7CiAgICAgIGNhc2UgImNhbWVsY2FzZSI6CiAgICAgICAgcmV0dXJuICIuTmFOIjsKICAgIH0KICB9IGVsc2UgaWYgKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA9PT0gb2JqZWN0KSB7CiAgICBzd2l0Y2ggKHN0eWxlKSB7CiAgICAgIGNhc2UgImxvd2VyY2FzZSI6CiAgICAgICAgcmV0dXJuICIuaW5mIjsKICAgICAgY2FzZSAidXBwZXJjYXNlIjoKICAgICAgICByZXR1cm4gIi5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLkluZiI7CiAgICB9CiAgfSBlbHNlIGlmIChOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IG9iamVjdCkgewogICAgc3dpdGNoIChzdHlsZSkgewogICAgICBjYXNlICJsb3dlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5pbmYiOwogICAgICBjYXNlICJ1cHBlcmNhc2UiOgogICAgICAgIHJldHVybiAiLS5JTkYiOwogICAgICBjYXNlICJjYW1lbGNhc2UiOgogICAgICAgIHJldHVybiAiLS5JbmYiOwogICAgfQogIH0gZWxzZSBpZiAoY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpIHsKICAgIHJldHVybiAiLTAuMCI7CiAgfQogIHJlcyA9IG9iamVjdC50b1N0cmluZygxMCk7CiAgcmV0dXJuIFNDSUVOVElGSUNfV0lUSE9VVF9ET1QudGVzdChyZXMpID8gcmVzLnJlcGxhY2UoImUiLCAiLmUiKSA6IHJlczsKfQpmdW5jdGlvbiBpc0Zsb2F0KG9iamVjdCkgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0KSA9PT0gIltvYmplY3QgTnVtYmVyXSIgJiYgKG9iamVjdCAlIDEgIT09IDAgfHwgY29tbW9uLmlzTmVnYXRpdmVaZXJvKG9iamVjdCkpOwp9CnZhciBmbG9hdCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbEZsb2F0LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEZsb2F0LAogIHByZWRpY2F0ZTogaXNGbG9hdCwKICByZXByZXNlbnQ6IHJlcHJlc2VudFlhbWxGbG9hdCwKICBkZWZhdWx0U3R5bGU6ICJsb3dlcmNhc2UiCn0pOwp2YXIganNvbiA9IGZhaWxzYWZlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIF9udWxsLAogICAgYm9vbCwKICAgIGludCwKICAgIGZsb2F0CiAgXQp9KTsKdmFyIGNvcmUgPSBqc29uOwp2YXIgWUFNTF9EQVRFX1JFR0VYUCA9IG5ldyBSZWdFeHAoCiAgIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldKS0oWzAtOV1bMC05XSkkIgopOwp2YXIgWUFNTF9USU1FU1RBTVBfUkVHRVhQID0gbmV3IFJlZ0V4cCgKICAiXihbMC05XVswLTldWzAtOV1bMC05XSktKFswLTldWzAtOV0/KS0oWzAtOV1bMC05XT8pKD86W1R0XXxbIFxcdF0rKShbMC05XVswLTldPyk6KFswLTldWzAtOV0pOihbMC05XVswLTldKSg/OlxcLihbMC05XSopKT8oPzpbIFxcdF0qKFp8KFstK10pKFswLTldWzAtOV0/KSg/OjooWzAtOV1bMC05XSkpPykpPyQiCik7CmZ1bmN0aW9uIHJlc29sdmVZYW1sVGltZXN0YW1wKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogIGlmIChZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSkgIT09IG51bGwpIHJldHVybiB0cnVlOwogIGlmIChZQU1MX1RJTUVTVEFNUF9SRUdFWFAuZXhlYyhkYXRhKSAhPT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIGNvbnN0cnVjdFlhbWxUaW1lc3RhbXAoZGF0YSkgewogIHZhciBtYXRjaCwgeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uID0gMCwgZGVsdGEgPSBudWxsLCB0el9ob3VyLCB0el9taW51dGUsIGRhdGU7CiAgbWF0Y2ggPSBZQU1MX0RBVEVfUkVHRVhQLmV4ZWMoZGF0YSk7CiAgaWYgKG1hdGNoID09PSBudWxsKSBtYXRjaCA9IFlBTUxfVElNRVNUQU1QX1JFR0VYUC5leGVjKGRhdGEpOwogIGlmIChtYXRjaCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCJEYXRlIHJlc29sdmUgZXJyb3IiKTsKICB5ZWFyID0gK21hdGNoWzFdOwogIG1vbnRoID0gK21hdGNoWzJdIC0gMTsKICBkYXkgPSArbWF0Y2hbM107CiAgaWYgKCFtYXRjaFs0XSkgewogICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTsKICB9CiAgaG91ciA9ICttYXRjaFs0XTsKICBtaW51dGUgPSArbWF0Y2hbNV07CiAgc2Vjb25kID0gK21hdGNoWzZdOwogIGlmIChtYXRjaFs3XSkgewogICAgZnJhY3Rpb24gPSBtYXRjaFs3XS5zbGljZSgwLCAzKTsKICAgIHdoaWxlIChmcmFjdGlvbi5sZW5ndGggPCAzKSB7CiAgICAgIGZyYWN0aW9uICs9ICIwIjsKICAgIH0KICAgIGZyYWN0aW9uID0gK2ZyYWN0aW9uOwogIH0KICBpZiAobWF0Y2hbOV0pIHsKICAgIHR6X2hvdXIgPSArbWF0Y2hbMTBdOwogICAgdHpfbWludXRlID0gKyhtYXRjaFsxMV0gfHwgMCk7CiAgICBkZWx0YSA9ICh0el9ob3VyICogNjAgKyB0el9taW51dGUpICogNmU0OwogICAgaWYgKG1hdGNoWzldID09PSAiLSIpIGRlbHRhID0gLWRlbHRhOwogIH0KICBkYXRlID0gbmV3IERhdGUoRGF0ZS5VVEMoeWVhciwgbW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQsIGZyYWN0aW9uKSk7CiAgaWYgKGRlbHRhKSBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgLSBkZWx0YSk7CiAgcmV0dXJuIGRhdGU7Cn0KZnVuY3Rpb24gcmVwcmVzZW50WWFtbFRpbWVzdGFtcChvYmplY3QpIHsKICByZXR1cm4gb2JqZWN0LnRvSVNPU3RyaW5nKCk7Cn0KdmFyIHRpbWVzdGFtcCA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjp0aW1lc3RhbXAiLCB7CiAga2luZDogInNjYWxhciIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxUaW1lc3RhbXAsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sVGltZXN0YW1wLAogIGluc3RhbmNlT2Y6IERhdGUsCiAgcmVwcmVzZW50OiByZXByZXNlbnRZYW1sVGltZXN0YW1wCn0pOwpmdW5jdGlvbiByZXNvbHZlWWFtbE1lcmdlKGRhdGEpIHsKICByZXR1cm4gZGF0YSA9PT0gIjw8IiB8fCBkYXRhID09PSBudWxsOwp9CnZhciBtZXJnZSA9IG5ldyB0eXBlKCJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIsIHsKICBraW5kOiAic2NhbGFyIiwKICByZXNvbHZlOiByZXNvbHZlWWFtbE1lcmdlCn0pOwp2YXIgQkFTRTY0X01BUCA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPVxuXHIiOwpmdW5jdGlvbiByZXNvbHZlWWFtbEJpbmFyeShkYXRhKSB7CiAgaWYgKGRhdGEgPT09IG51bGwpIHJldHVybiBmYWxzZTsKICB2YXIgY29kZSwgaWR4LCBiaXRsZW4gPSAwLCBtYXggPSBkYXRhLmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBjb2RlID0gbWFwMi5pbmRleE9mKGRhdGEuY2hhckF0KGlkeCkpOwogICAgaWYgKGNvZGUgPiA2NCkgY29udGludWU7CiAgICBpZiAoY29kZSA8IDApIHJldHVybiBmYWxzZTsKICAgIGJpdGxlbiArPSA2OwogIH0KICByZXR1cm4gYml0bGVuICUgOCA9PT0gMDsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sQmluYXJ5KGRhdGEpIHsKICB2YXIgaWR4LCB0YWlsYml0cywgaW5wdXQgPSBkYXRhLnJlcGxhY2UoL1tcclxuPV0vZywgIiIpLCBtYXggPSBpbnB1dC5sZW5ndGgsIG1hcDIgPSBCQVNFNjRfTUFQLCBiaXRzID0gMCwgcmVzdWx0ID0gW107CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgNCA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0LnB1c2goYml0cyA+PiAxNiAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICAgIHJlc3VsdC5wdXNoKGJpdHMgJiAyNTUpOwogICAgfQogICAgYml0cyA9IGJpdHMgPDwgNiB8IG1hcDIuaW5kZXhPZihpbnB1dC5jaGFyQXQoaWR4KSk7CiAgfQogIHRhaWxiaXRzID0gbWF4ICUgNCAqIDY7CiAgaWYgKHRhaWxiaXRzID09PSAwKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDE2ICYgMjU1KTsKICAgIHJlc3VsdC5wdXNoKGJpdHMgPj4gOCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzICYgMjU1KTsKICB9IGVsc2UgaWYgKHRhaWxiaXRzID09PSAxOCkgewogICAgcmVzdWx0LnB1c2goYml0cyA+PiAxMCAmIDI1NSk7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDIgJiAyNTUpOwogIH0gZWxzZSBpZiAodGFpbGJpdHMgPT09IDEyKSB7CiAgICByZXN1bHQucHVzaChiaXRzID4+IDQgJiAyNTUpOwogIH0KICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkocmVzdWx0KTsKfQpmdW5jdGlvbiByZXByZXNlbnRZYW1sQmluYXJ5KG9iamVjdCkgewogIHZhciByZXN1bHQgPSAiIiwgYml0cyA9IDAsIGlkeCwgdGFpbCwgbWF4ID0gb2JqZWN0Lmxlbmd0aCwgbWFwMiA9IEJBU0U2NF9NQVA7CiAgZm9yIChpZHggPSAwOyBpZHggPCBtYXg7IGlkeCsrKSB7CiAgICBpZiAoaWR4ICUgMyA9PT0gMCAmJiBpZHgpIHsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxOCAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA2ICYgNjNdOwogICAgICByZXN1bHQgKz0gbWFwMltiaXRzICYgNjNdOwogICAgfQogICAgYml0cyA9IChiaXRzIDw8IDgpICsgb2JqZWN0W2lkeF07CiAgfQogIHRhaWwgPSBtYXggJSAzOwogIGlmICh0YWlsID09PSAwKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDE4ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAxMiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgPj4gNiAmIDYzXTsKICAgIHJlc3VsdCArPSBtYXAyW2JpdHMgJiA2M107CiAgfSBlbHNlIGlmICh0YWlsID09PSAyKSB7CiAgICByZXN1bHQgKz0gbWFwMltiaXRzID4+IDEwICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0gZWxzZSBpZiAodGFpbCA9PT0gMSkgewogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA+PiAyICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbYml0cyA8PCA0ICYgNjNdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogICAgcmVzdWx0ICs9IG1hcDJbNjRdOwogIH0KICByZXR1cm4gcmVzdWx0Owp9CmZ1bmN0aW9uIGlzQmluYXJ5KG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKSA9PT0gIltvYmplY3QgVWludDhBcnJheV0iOwp9CnZhciBiaW5hcnkgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5IiwgewogIGtpbmQ6ICJzY2FsYXIiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sQmluYXJ5LAogIGNvbnN0cnVjdDogY29uc3RydWN0WWFtbEJpbmFyeSwKICBwcmVkaWNhdGU6IGlzQmluYXJ5LAogIHJlcHJlc2VudDogcmVwcmVzZW50WWFtbEJpbmFyeQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQzID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIF90b1N0cmluZyQyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxPbWFwKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIG9iamVjdEtleXMgPSBbXSwgaW5kZXgsIGxlbmd0aCwgcGFpciwgcGFpcktleSwgcGFpckhhc0tleSwgb2JqZWN0ID0gZGF0YTsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHBhaXIgPSBvYmplY3RbaW5kZXhdOwogICAgcGFpckhhc0tleSA9IGZhbHNlOwogICAgaWYgKF90b1N0cmluZyQyLmNhbGwocGFpcikgIT09ICJbb2JqZWN0IE9iamVjdF0iKSByZXR1cm4gZmFsc2U7CiAgICBmb3IgKHBhaXJLZXkgaW4gcGFpcikgewogICAgICBpZiAoX2hhc093blByb3BlcnR5JDMuY2FsbChwYWlyLCBwYWlyS2V5KSkgewogICAgICAgIGlmICghcGFpckhhc0tleSkgcGFpckhhc0tleSA9IHRydWU7CiAgICAgICAgZWxzZSByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIGlmICghcGFpckhhc0tleSkgcmV0dXJuIGZhbHNlOwogICAgaWYgKG9iamVjdEtleXMuaW5kZXhPZihwYWlyS2V5KSA9PT0gLTEpIG9iamVjdEtleXMucHVzaChwYWlyS2V5KTsKICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sT21hcChkYXRhKSB7CiAgcmV0dXJuIGRhdGEgIT09IG51bGwgPyBkYXRhIDogW107Cn0KdmFyIG9tYXAgPSBuZXcgdHlwZSgidGFnOnlhbWwub3JnLDIwMDI6b21hcCIsIHsKICBraW5kOiAic2VxdWVuY2UiLAogIHJlc29sdmU6IHJlc29sdmVZYW1sT21hcCwKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxPbWFwCn0pOwp2YXIgX3RvU3RyaW5nJDEgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpmdW5jdGlvbiByZXNvbHZlWWFtbFBhaXJzKGRhdGEpIHsKICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIHRydWU7CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGlmIChfdG9TdHJpbmckMS5jYWxsKHBhaXIpICE9PSAiW29iamVjdCBPYmplY3RdIikgcmV0dXJuIGZhbHNlOwogICAga2V5cyA9IE9iamVjdC5rZXlzKHBhaXIpOwogICAgaWYgKGtleXMubGVuZ3RoICE9PSAxKSByZXR1cm4gZmFsc2U7CiAgICByZXN1bHRbaW5kZXhdID0gW2tleXNbMF0sIHBhaXJba2V5c1swXV1dOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sUGFpcnMoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gW107CiAgdmFyIGluZGV4LCBsZW5ndGgsIHBhaXIsIGtleXMsIHJlc3VsdCwgb2JqZWN0ID0gZGF0YTsKICByZXN1bHQgPSBuZXcgQXJyYXkob2JqZWN0Lmxlbmd0aCk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyID0gb2JqZWN0W2luZGV4XTsKICAgIGtleXMgPSBPYmplY3Qua2V5cyhwYWlyKTsKICAgIHJlc3VsdFtpbmRleF0gPSBba2V5c1swXSwgcGFpcltrZXlzWzBdXV07CiAgfQogIHJldHVybiByZXN1bHQ7Cn0KdmFyIHBhaXJzID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnBhaXJzIiwgewogIGtpbmQ6ICJzZXF1ZW5jZSIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxQYWlycywKICBjb25zdHJ1Y3Q6IGNvbnN0cnVjdFlhbWxQYWlycwp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQyID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKZnVuY3Rpb24gcmVzb2x2ZVlhbWxTZXQoZGF0YSkgewogIGlmIChkYXRhID09PSBudWxsKSByZXR1cm4gdHJ1ZTsKICB2YXIga2V5LCBvYmplY3QgPSBkYXRhOwogIGZvciAoa2V5IGluIG9iamVjdCkgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQyLmNhbGwob2JqZWN0LCBrZXkpKSB7CiAgICAgIGlmIChvYmplY3Rba2V5XSAhPT0gbnVsbCkgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiBjb25zdHJ1Y3RZYW1sU2V0KGRhdGEpIHsKICByZXR1cm4gZGF0YSAhPT0gbnVsbCA/IGRhdGEgOiB7fTsKfQp2YXIgc2V0ID0gbmV3IHR5cGUoInRhZzp5YW1sLm9yZywyMDAyOnNldCIsIHsKICBraW5kOiAibWFwcGluZyIsCiAgcmVzb2x2ZTogcmVzb2x2ZVlhbWxTZXQsCiAgY29uc3RydWN0OiBjb25zdHJ1Y3RZYW1sU2V0Cn0pOwp2YXIgX2RlZmF1bHQgPSBjb3JlLmV4dGVuZCh7CiAgaW1wbGljaXQ6IFsKICAgIHRpbWVzdGFtcCwKICAgIG1lcmdlCiAgXSwKICBleHBsaWNpdDogWwogICAgYmluYXJ5LAogICAgb21hcCwKICAgIHBhaXJzLAogICAgc2V0CiAgXQp9KTsKdmFyIF9oYXNPd25Qcm9wZXJ0eSQxID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENPTlRFWFRfRkxPV19JTiA9IDE7CnZhciBDT05URVhUX0ZMT1dfT1VUID0gMjsKdmFyIENPTlRFWFRfQkxPQ0tfSU4gPSAzOwp2YXIgQ09OVEVYVF9CTE9DS19PVVQgPSA0Owp2YXIgQ0hPTVBJTkdfQ0xJUCA9IDE7CnZhciBDSE9NUElOR19TVFJJUCA9IDI7CnZhciBDSE9NUElOR19LRUVQID0gMzsKdmFyIFBBVFRFUk5fTk9OX1BSSU5UQUJMRSA9IC9bXHgwMC1ceDA4XHgwQlx4MENceDBFLVx4MUZceDdGLVx4ODRceDg2LVx4OUZcdUZGRkVcdUZGRkZdfFtcdUQ4MDAtXHVEQkZGXSg/IVtcdURDMDAtXHVERkZGXSl8KD86W15cdUQ4MDAtXHVEQkZGXXxeKVtcdURDMDAtXHVERkZGXS87CnZhciBQQVRURVJOX05PTl9BU0NJSV9MSU5FX0JSRUFLUyA9IC9bXHg4NVx1MjAyOFx1MjAyOV0vOwp2YXIgUEFUVEVSTl9GTE9XX0lORElDQVRPUlMgPSAvWyxcW1xdXHtcfV0vOwp2YXIgUEFUVEVSTl9UQUdfSEFORExFID0gL14oPzohfCEhfCFbYS16XC1dKyEpJC9pOwp2YXIgUEFUVEVSTl9UQUdfVVJJID0gL14oPzohfFteLFxbXF1ce1x9XSkoPzolWzAtOWEtZl17Mn18WzAtOWEtelwtIztcL1w/OkAmPVwrXCQsX1wuIX5cKidcKFwpXFtcXV0pKiQvaTsKZnVuY3Rpb24gX2NsYXNzKG9iaikgewogIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKTsKfQpmdW5jdGlvbiBpc19FT0woYykgewogIHJldHVybiBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19XSElURV9TUEFDRShjKSB7CiAgcmV0dXJuIGMgPT09IDkgfHwgYyA9PT0gMzI7Cn0KZnVuY3Rpb24gaXNfV1NfT1JfRU9MKGMpIHsKICByZXR1cm4gYyA9PT0gOSB8fCBjID09PSAzMiB8fCBjID09PSAxMCB8fCBjID09PSAxMzsKfQpmdW5jdGlvbiBpc19GTE9XX0lORElDQVRPUihjKSB7CiAgcmV0dXJuIGMgPT09IDQ0IHx8IGMgPT09IDkxIHx8IGMgPT09IDkzIHx8IGMgPT09IDEyMyB8fCBjID09PSAxMjU7Cn0KZnVuY3Rpb24gZnJvbUhleENvZGUoYykgewogIHZhciBsYzsKICBpZiAoNDggPD0gYyAmJiBjIDw9IDU3KSB7CiAgICByZXR1cm4gYyAtIDQ4OwogIH0KICBsYyA9IGMgfCAzMjsKICBpZiAoOTcgPD0gbGMgJiYgbGMgPD0gMTAyKSB7CiAgICByZXR1cm4gbGMgLSA5NyArIDEwOwogIH0KICByZXR1cm4gLTE7Cn0KZnVuY3Rpb24gZXNjYXBlZEhleExlbihjKSB7CiAgaWYgKGMgPT09IDEyMCkgewogICAgcmV0dXJuIDI7CiAgfQogIGlmIChjID09PSAxMTcpIHsKICAgIHJldHVybiA0OwogIH0KICBpZiAoYyA9PT0gODUpIHsKICAgIHJldHVybiA4OwogIH0KICByZXR1cm4gMDsKfQpmdW5jdGlvbiBmcm9tRGVjaW1hbENvZGUoYykgewogIGlmICg0OCA8PSBjICYmIGMgPD0gNTcpIHsKICAgIHJldHVybiBjIC0gNDg7CiAgfQogIHJldHVybiAtMTsKfQpmdW5jdGlvbiBzaW1wbGVFc2NhcGVTZXF1ZW5jZShjKSB7CiAgcmV0dXJuIGMgPT09IDQ4ID8gIlwwIiA6IGMgPT09IDk3ID8gIlx4MDciIDogYyA9PT0gOTggPyAiXGIiIDogYyA9PT0gMTE2ID8gIgkiIDogYyA9PT0gOSA/ICIJIiA6IGMgPT09IDExMCA/ICJcbiIgOiBjID09PSAxMTggPyAiXHYiIDogYyA9PT0gMTAyID8gIlxmIiA6IGMgPT09IDExNCA/ICJcciIgOiBjID09PSAxMDEgPyAiXHgxQiIgOiBjID09PSAzMiA/ICIgIiA6IGMgPT09IDM0ID8gJyInIDogYyA9PT0gNDcgPyAiLyIgOiBjID09PSA5MiA/ICJcXCIgOiBjID09PSA3OCA/ICJceDg1IiA6IGMgPT09IDk1ID8gIlx4QTAiIDogYyA9PT0gNzYgPyAiXHUyMDI4IiA6IGMgPT09IDgwID8gIlx1MjAyOSIgOiAiIjsKfQpmdW5jdGlvbiBjaGFyRnJvbUNvZGVwb2ludChjKSB7CiAgaWYgKGMgPD0gNjU1MzUpIHsKICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGMpOwogIH0KICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSgKICAgIChjIC0gNjU1MzYgPj4gMTApICsgNTUyOTYsCiAgICAoYyAtIDY1NTM2ICYgMTAyMykgKyA1NjMyMAogICk7Cn0KdmFyIHNpbXBsZUVzY2FwZUNoZWNrID0gbmV3IEFycmF5KDI1Nik7CnZhciBzaW1wbGVFc2NhcGVNYXAgPSBuZXcgQXJyYXkoMjU2KTsKZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CiAgc2ltcGxlRXNjYXBlQ2hlY2tbaV0gPSBzaW1wbGVFc2NhcGVTZXF1ZW5jZShpKSA/IDEgOiAwOwogIHNpbXBsZUVzY2FwZU1hcFtpXSA9IHNpbXBsZUVzY2FwZVNlcXVlbmNlKGkpOwp9CnZhciBpOwpmdW5jdGlvbiBTdGF0ZSQxKGlucHV0LCBvcHRpb25zKSB7CiAgdGhpcy5pbnB1dCA9IGlucHV0OwogIHRoaXMuZmlsZW5hbWUgPSBvcHRpb25zWyJmaWxlbmFtZSJdIHx8IG51bGw7CiAgdGhpcy5zY2hlbWEgPSBvcHRpb25zWyJzY2hlbWEiXSB8fCBfZGVmYXVsdDsKICB0aGlzLm9uV2FybmluZyA9IG9wdGlvbnNbIm9uV2FybmluZyJdIHx8IG51bGw7CiAgdGhpcy5sZWdhY3kgPSBvcHRpb25zWyJsZWdhY3kiXSB8fCBmYWxzZTsKICB0aGlzLmpzb24gPSBvcHRpb25zWyJqc29uIl0gfHwgZmFsc2U7CiAgdGhpcy5saXN0ZW5lciA9IG9wdGlvbnNbImxpc3RlbmVyIl0gfHwgbnVsbDsKICB0aGlzLmltcGxpY2l0VHlwZXMgPSB0aGlzLnNjaGVtYS5jb21waWxlZEltcGxpY2l0OwogIHRoaXMudHlwZU1hcCA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkVHlwZU1hcDsKICB0aGlzLmxlbmd0aCA9IGlucHV0Lmxlbmd0aDsKICB0aGlzLnBvc2l0aW9uID0gMDsKICB0aGlzLmxpbmUgPSAwOwogIHRoaXMubGluZVN0YXJ0ID0gMDsKICB0aGlzLmxpbmVJbmRlbnQgPSAwOwogIHRoaXMuZmlyc3RUYWJJbkxpbmUgPSAtMTsKICB0aGlzLmRvY3VtZW50cyA9IFtdOwp9CmZ1bmN0aW9uIGdlbmVyYXRlRXJyb3Ioc3RhdGUsIG1lc3NhZ2UpIHsKICB2YXIgbWFyayA9IHsKICAgIG5hbWU6IHN0YXRlLmZpbGVuYW1lLAogICAgYnVmZmVyOiBzdGF0ZS5pbnB1dC5zbGljZSgwLCAtMSksCiAgICAvLyBvbWl0IHRyYWlsaW5nIFwwCiAgICBwb3NpdGlvbjogc3RhdGUucG9zaXRpb24sCiAgICBsaW5lOiBzdGF0ZS5saW5lLAogICAgY29sdW1uOiBzdGF0ZS5wb3NpdGlvbiAtIHN0YXRlLmxpbmVTdGFydAogIH07CiAgbWFyay5zbmlwcGV0ID0gc25pcHBldChtYXJrKTsKICByZXR1cm4gbmV3IGV4Y2VwdGlvbihtZXNzYWdlLCBtYXJrKTsKfQpmdW5jdGlvbiB0aHJvd0Vycm9yKHN0YXRlLCBtZXNzYWdlKSB7CiAgdGhyb3cgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSk7Cn0KZnVuY3Rpb24gdGhyb3dXYXJuaW5nKHN0YXRlLCBtZXNzYWdlKSB7CiAgaWYgKHN0YXRlLm9uV2FybmluZykgewogICAgc3RhdGUub25XYXJuaW5nLmNhbGwobnVsbCwgZ2VuZXJhdGVFcnJvcihzdGF0ZSwgbWVzc2FnZSkpOwogIH0KfQp2YXIgZGlyZWN0aXZlSGFuZGxlcnMgPSB7CiAgWUFNTDogZnVuY3Rpb24gaGFuZGxlWWFtbERpcmVjdGl2ZShzdGF0ZSwgbmFtZSwgYXJncykgewogICAgdmFyIG1hdGNoLCBtYWpvciwgbWlub3I7CiAgICBpZiAoc3RhdGUudmVyc2lvbiAhPT0gbnVsbCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgJVlBTUwgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoYXJncy5sZW5ndGggIT09IDEpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIllBTUwgZGlyZWN0aXZlIGFjY2VwdHMgZXhhY3RseSBvbmUgYXJndW1lbnQiKTsKICAgIH0KICAgIG1hdGNoID0gL14oWzAtOV0rKVwuKFswLTldKykkLy5leGVjKGFyZ3NbMF0pOwogICAgaWYgKG1hdGNoID09PSBudWxsKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIGFyZ3VtZW50IG9mIHRoZSBZQU1MIGRpcmVjdGl2ZSIpOwogICAgfQogICAgbWFqb3IgPSBwYXJzZUludChtYXRjaFsxXSwgMTApOwogICAgbWlub3IgPSBwYXJzZUludChtYXRjaFsyXSwgMTApOwogICAgaWYgKG1ham9yICE9PSAxKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ1bmFjY2VwdGFibGUgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogICAgc3RhdGUudmVyc2lvbiA9IGFyZ3NbMF07CiAgICBzdGF0ZS5jaGVja0xpbmVCcmVha3MgPSBtaW5vciA8IDI7CiAgICBpZiAobWlub3IgIT09IDEgJiYgbWlub3IgIT09IDIpIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAidW5zdXBwb3J0ZWQgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpOwogICAgfQogIH0sCiAgVEFHOiBmdW5jdGlvbiBoYW5kbGVUYWdEaXJlY3RpdmUoc3RhdGUsIG5hbWUsIGFyZ3MpIHsKICAgIHZhciBoYW5kbGUsIHByZWZpeDsKICAgIGlmIChhcmdzLmxlbmd0aCAhPT0gMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiVEFHIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgdHdvIGFyZ3VtZW50cyIpOwogICAgfQogICAgaGFuZGxlID0gYXJnc1swXTsKICAgIHByZWZpeCA9IGFyZ3NbMV07CiAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImlsbC1mb3JtZWQgdGFnIGhhbmRsZSAoZmlyc3QgYXJndW1lbnQpIG9mIHRoZSBUQUcgZGlyZWN0aXZlIik7CiAgICB9CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIGhhbmRsZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3RoZXJlIGlzIGEgcHJldmlvdXNseSBkZWNsYXJlZCBzdWZmaXggZm9yICInICsgaGFuZGxlICsgJyIgdGFnIGhhbmRsZScpOwogICAgfQogICAgaWYgKCFQQVRURVJOX1RBR19VUkkudGVzdChwcmVmaXgpKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJpbGwtZm9ybWVkIHRhZyBwcmVmaXggKHNlY29uZCBhcmd1bWVudCkgb2YgdGhlIFRBRyBkaXJlY3RpdmUiKTsKICAgIH0KICAgIHRyeSB7CiAgICAgIHByZWZpeCA9IGRlY29kZVVSSUNvbXBvbmVudChwcmVmaXgpOwogICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgcHJlZml4IGlzIG1hbGZvcm1lZDogIiArIHByZWZpeCk7CiAgICB9CiAgICBzdGF0ZS50YWdNYXBbaGFuZGxlXSA9IHByZWZpeDsKICB9Cn07CmZ1bmN0aW9uIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBzdGFydCwgZW5kLCBjaGVja0pzb24pIHsKICB2YXIgX3Bvc2l0aW9uLCBfbGVuZ3RoLCBfY2hhcmFjdGVyLCBfcmVzdWx0OwogIGlmIChzdGFydCA8IGVuZCkgewogICAgX3Jlc3VsdCA9IHN0YXRlLmlucHV0LnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgaWYgKGNoZWNrSnNvbikgewogICAgICBmb3IgKF9wb3NpdGlvbiA9IDAsIF9sZW5ndGggPSBfcmVzdWx0Lmxlbmd0aDsgX3Bvc2l0aW9uIDwgX2xlbmd0aDsgX3Bvc2l0aW9uICs9IDEpIHsKICAgICAgICBfY2hhcmFjdGVyID0gX3Jlc3VsdC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICAgICAgaWYgKCEoX2NoYXJhY3RlciA9PT0gOSB8fCAzMiA8PSBfY2hhcmFjdGVyICYmIF9jaGFyYWN0ZXIgPD0gMTExNDExMSkpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB2YWxpZCBKU09OIGNoYXJhY3RlciIpOwogICAgICAgIH0KICAgICAgfQogICAgfSBlbHNlIGlmIChQQVRURVJOX05PTl9QUklOVEFCTEUudGVzdChfcmVzdWx0KSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGhlIHN0cmVhbSBjb250YWlucyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMiKTsKICAgIH0KICAgIHN0YXRlLnJlc3VsdCArPSBfcmVzdWx0OwogIH0KfQpmdW5jdGlvbiBtZXJnZU1hcHBpbmdzKHN0YXRlLCBkZXN0aW5hdGlvbiwgc291cmNlLCBvdmVycmlkYWJsZUtleXMpIHsKICB2YXIgc291cmNlS2V5cywga2V5LCBpbmRleCwgcXVhbnRpdHk7CiAgaWYgKCFjb21tb24uaXNPYmplY3Qoc291cmNlKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImNhbm5vdCBtZXJnZSBtYXBwaW5nczsgdGhlIHByb3ZpZGVkIHNvdXJjZSBvYmplY3QgaXMgdW5hY2NlcHRhYmxlIik7CiAgfQogIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogIGZvciAoaW5kZXggPSAwLCBxdWFudGl0eSA9IHNvdXJjZUtleXMubGVuZ3RoOyBpbmRleCA8IHF1YW50aXR5OyBpbmRleCArPSAxKSB7CiAgICBrZXkgPSBzb3VyY2VLZXlzW2luZGV4XTsKICAgIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChkZXN0aW5hdGlvbiwga2V5KSkgewogICAgICBkZXN0aW5hdGlvbltrZXldID0gc291cmNlW2tleV07CiAgICAgIG92ZXJyaWRhYmxlS2V5c1trZXldID0gdHJ1ZTsKICAgIH0KICB9Cn0KZnVuY3Rpb24gc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgc3RhcnRMaW5lLCBzdGFydExpbmVTdGFydCwgc3RhcnRQb3MpIHsKICB2YXIgaW5kZXgsIHF1YW50aXR5OwogIGlmIChBcnJheS5pc0FycmF5KGtleU5vZGUpKSB7CiAgICBrZXlOb2RlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoa2V5Tm9kZSk7CiAgICBmb3IgKGluZGV4ID0gMCwgcXVhbnRpdHkgPSBrZXlOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlOb2RlW2luZGV4XSkpIHsKICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibmVzdGVkIGFycmF5cyBhcmUgbm90IHN1cHBvcnRlZCBpbnNpZGUga2V5cyIpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGVbaW5kZXhdKSA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgICBrZXlOb2RlW2luZGV4XSA9ICJbb2JqZWN0IE9iamVjdF0iOwogICAgICB9CiAgICB9CiAgfQogIGlmICh0eXBlb2Yga2V5Tm9kZSA9PT0gIm9iamVjdCIgJiYgX2NsYXNzKGtleU5vZGUpID09PSAiW29iamVjdCBPYmplY3RdIikgewogICAga2V5Tm9kZSA9ICJbb2JqZWN0IE9iamVjdF0iOwogIH0KICBrZXlOb2RlID0gU3RyaW5nKGtleU5vZGUpOwogIGlmIChfcmVzdWx0ID09PSBudWxsKSB7CiAgICBfcmVzdWx0ID0ge307CiAgfQogIGlmIChrZXlUYWcgPT09ICJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlTm9kZSkpIHsKICAgICAgZm9yIChpbmRleCA9IDAsIHF1YW50aXR5ID0gdmFsdWVOb2RlLmxlbmd0aDsgaW5kZXggPCBxdWFudGl0eTsgaW5kZXggKz0gMSkgewogICAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZVtpbmRleF0sIG92ZXJyaWRhYmxlS2V5cyk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG1lcmdlTWFwcGluZ3Moc3RhdGUsIF9yZXN1bHQsIHZhbHVlTm9kZSwgb3ZlcnJpZGFibGVLZXlzKTsKICAgIH0KICB9IGVsc2UgewogICAgaWYgKCFzdGF0ZS5qc29uICYmICFfaGFzT3duUHJvcGVydHkkMS5jYWxsKG92ZXJyaWRhYmxlS2V5cywga2V5Tm9kZSkgJiYgX2hhc093blByb3BlcnR5JDEuY2FsbChfcmVzdWx0LCBrZXlOb2RlKSkgewogICAgICBzdGF0ZS5saW5lID0gc3RhcnRMaW5lIHx8IHN0YXRlLmxpbmU7CiAgICAgIHN0YXRlLmxpbmVTdGFydCA9IHN0YXJ0TGluZVN0YXJ0IHx8IHN0YXRlLmxpbmVTdGFydDsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGFydFBvcyB8fCBzdGF0ZS5wb3NpdGlvbjsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0ZWQgbWFwcGluZyBrZXkiKTsKICAgIH0KICAgIGlmIChrZXlOb2RlID09PSAiX19wcm90b19fIikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoX3Jlc3VsdCwga2V5Tm9kZSwgewogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLAogICAgICAgIHdyaXRhYmxlOiB0cnVlLAogICAgICAgIHZhbHVlOiB2YWx1ZU5vZGUKICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICBfcmVzdWx0W2tleU5vZGVdID0gdmFsdWVOb2RlOwogICAgfQogICAgZGVsZXRlIG92ZXJyaWRhYmxlS2V5c1trZXlOb2RlXTsKICB9CiAgcmV0dXJuIF9yZXN1bHQ7Cn0KZnVuY3Rpb24gcmVhZExpbmVCcmVhayhzdGF0ZSkgewogIHZhciBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTApIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgfSBlbHNlIGlmIChjaCA9PT0gMTMpIHsKICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDEwKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICB9CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIGxpbmUgYnJlYWsgaXMgZXhwZWN0ZWQiKTsKICB9CiAgc3RhdGUubGluZSArPSAxOwogIHN0YXRlLmxpbmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogIHN0YXRlLmZpcnN0VGFiSW5MaW5lID0gLTE7Cn0KZnVuY3Rpb24gc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgYWxsb3dDb21tZW50cywgY2hlY2tJbmRlbnQpIHsKICB2YXIgbGluZUJyZWFrcyA9IDAsIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICB3aGlsZSAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gOSAmJiBzdGF0ZS5maXJzdFRhYkluTGluZSA9PT0gLTEpIHsKICAgICAgICBzdGF0ZS5maXJzdFRhYkluTGluZSA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB9CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmIChhbGxvd0NvbW1lbnRzICYmIGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlIChjaCAhPT0gMTAgJiYgY2ggIT09IDEzICYmIGNoICE9PSAwKTsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIHJlYWRMaW5lQnJlYWsoc3RhdGUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICBsaW5lQnJlYWtzKys7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQgPSAwOwogICAgICB3aGlsZSAoY2ggPT09IDMyKSB7CiAgICAgICAgc3RhdGUubGluZUluZGVudCsrOwogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgYnJlYWs7CiAgICB9CiAgfQogIGlmIChjaGVja0luZGVudCAhPT0gLTEgJiYgbGluZUJyZWFrcyAhPT0gMCAmJiBzdGF0ZS5saW5lSW5kZW50IDwgY2hlY2tJbmRlbnQpIHsKICAgIHRocm93V2FybmluZyhzdGF0ZSwgImRlZmljaWVudCBpbmRlbnRhdGlvbiIpOwogIH0KICByZXR1cm4gbGluZUJyZWFrczsKfQpmdW5jdGlvbiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb24sIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChfcG9zaXRpb24pOwogIGlmICgoY2ggPT09IDQ1IHx8IGNoID09PSA0NikgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMSkgJiYgY2ggPT09IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoX3Bvc2l0aW9uICsgMikpIHsKICAgIF9wb3NpdGlvbiArPSAzOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KF9wb3NpdGlvbik7CiAgICBpZiAoY2ggPT09IDAgfHwgaXNfV1NfT1JfRU9MKGNoKSkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICB9CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIGNvdW50KSB7CiAgaWYgKGNvdW50ID09PSAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gIiAiOwogIH0gZWxzZSBpZiAoY291bnQgPiAxKSB7CiAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBjb3VudCAtIDEpOwogIH0KfQpmdW5jdGlvbiByZWFkUGxhaW5TY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQsIHdpdGhpbkZsb3dDb2xsZWN0aW9uKSB7CiAgdmFyIHByZWNlZGluZywgZm9sbG93aW5nLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhhc1BlbmRpbmdDb250ZW50LCBfbGluZSwgX2xpbmVTdGFydCwgX2xpbmVJbmRlbnQsIF9raW5kID0gc3RhdGUua2luZCwgX3Jlc3VsdCA9IHN0YXRlLnJlc3VsdCwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoaXNfV1NfT1JfRU9MKGNoKSB8fCBpc19GTE9XX0lORElDQVRPUihjaCkgfHwgY2ggPT09IDM1IHx8IGNoID09PSAzOCB8fCBjaCA9PT0gNDIgfHwgY2ggPT09IDMzIHx8IGNoID09PSAxMjQgfHwgY2ggPT09IDYyIHx8IGNoID09PSAzOSB8fCBjaCA9PT0gMzQgfHwgY2ggPT09IDM3IHx8IGNoID09PSA2NCB8fCBjaCA9PT0gOTYpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgaWYgKGNoID09PSA2MyB8fCBjaCA9PT0gNDUpIHsKICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICBoYXNQZW5kaW5nQ29udGVudCA9IGZhbHNlOwogIHdoaWxlIChjaCAhPT0gMCkgewogICAgaWYgKGNoID09PSA1OCkgewogICAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgIGlmIChpc19XU19PUl9FT0woZm9sbG93aW5nKSB8fCB3aXRoaW5GbG93Q29sbGVjdGlvbiAmJiBpc19GTE9XX0lORElDQVRPUihmb2xsb3dpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoY2ggPT09IDM1KSB7CiAgICAgIHByZWNlZGluZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gLSAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChwcmVjZWRpbmcpKSB7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpIHx8IHdpdGhpbkZsb3dDb2xsZWN0aW9uICYmIGlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgICBicmVhazsKICAgIH0gZWxzZSBpZiAoaXNfRU9MKGNoKSkgewogICAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICAgIF9saW5lSW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIC0xKTsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPj0gbm9kZUluZGVudCkgewogICAgICAgIGhhc1BlbmRpbmdDb250ZW50ID0gdHJ1ZTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnBvc2l0aW9uID0gY2FwdHVyZUVuZDsKICAgICAgICBzdGF0ZS5saW5lID0gX2xpbmU7CiAgICAgICAgc3RhdGUubGluZVN0YXJ0ID0gX2xpbmVTdGFydDsKICAgICAgICBzdGF0ZS5saW5lSW5kZW50ID0gX2xpbmVJbmRlbnQ7CiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0KICAgIGlmIChoYXNQZW5kaW5nQ29udGVudCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBjYXB0dXJlRW5kLCBmYWxzZSk7CiAgICAgIHdyaXRlRm9sZGVkTGluZXMoc3RhdGUsIHN0YXRlLmxpbmUgLSBfbGluZSk7CiAgICAgIGNhcHR1cmVTdGFydCA9IGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgaGFzUGVuZGluZ0NvbnRlbnQgPSBmYWxzZTsKICAgIH0KICAgIGlmICghaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbiArIDE7CiAgICB9CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgfQogIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGZhbHNlKTsKICBpZiAoc3RhdGUucmVzdWx0KSB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CiAgc3RhdGUua2luZCA9IF9raW5kOwogIHN0YXRlLnJlc3VsdCA9IF9yZXN1bHQ7CiAgcmV0dXJuIGZhbHNlOwp9CmZ1bmN0aW9uIHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2gsIGNhcHR1cmVTdGFydCwgY2FwdHVyZUVuZDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzkpIHsKICAgIHJldHVybiBmYWxzZTsKICB9CiAgc3RhdGUua2luZCA9ICJzY2FsYXIiOwogIHN0YXRlLnJlc3VsdCA9ICIiOwogIHN0YXRlLnBvc2l0aW9uKys7CiAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogIHdoaWxlICgoY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSkgIT09IDApIHsKICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChjaCA9PT0gMzkpIHsKICAgICAgICBjYXB0dXJlU3RhcnQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICAgIGNhcHR1cmVFbmQgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZERvdWJsZVF1b3RlZFNjYWxhcihzdGF0ZSwgbm9kZUluZGVudCkgewogIHZhciBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIGhleExlbmd0aCwgaGV4UmVzdWx0LCB0bXAsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSAzNCkgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBzdGF0ZS5raW5kID0gInNjYWxhciI7CiAgc3RhdGUucmVzdWx0ID0gIiI7CiAgc3RhdGUucG9zaXRpb24rKzsKICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgd2hpbGUgKChjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pKSAhPT0gMCkgewogICAgaWYgKGNoID09PSAzNCkgewogICAgICBjYXB0dXJlU2VnbWVudChzdGF0ZSwgY2FwdHVyZVN0YXJ0LCBzdGF0ZS5wb3NpdGlvbiwgdHJ1ZSk7CiAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSBlbHNlIGlmIChjaCA9PT0gOTIpIHsKICAgICAgY2FwdHVyZVNlZ21lbnQoc3RhdGUsIGNhcHR1cmVTdGFydCwgc3RhdGUucG9zaXRpb24sIHRydWUpOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgZmFsc2UsIG5vZGVJbmRlbnQpOwogICAgICB9IGVsc2UgaWYgKGNoIDwgMjU2ICYmIHNpbXBsZUVzY2FwZUNoZWNrW2NoXSkgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBzaW1wbGVFc2NhcGVNYXBbY2hdOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSBpZiAoKHRtcCA9IGVzY2FwZWRIZXhMZW4oY2gpKSA+IDApIHsKICAgICAgICBoZXhMZW5ndGggPSB0bXA7CiAgICAgICAgaGV4UmVzdWx0ID0gMDsKICAgICAgICBmb3IgKDsgaGV4TGVuZ3RoID4gMDsgaGV4TGVuZ3RoLS0pIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICAgIGlmICgodG1wID0gZnJvbUhleENvZGUoY2gpKSA+PSAwKSB7CiAgICAgICAgICAgIGhleFJlc3VsdCA9IChoZXhSZXN1bHQgPDwgNCkgKyB0bXA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZXhwZWN0ZWQgaGV4YWRlY2ltYWwgY2hhcmFjdGVyIik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjaGFyRnJvbUNvZGVwb2ludChoZXhSZXN1bHQpOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInVua25vd24gZXNjYXBlIHNlcXVlbmNlIik7CiAgICAgIH0KICAgICAgY2FwdHVyZVN0YXJ0ID0gY2FwdHVyZUVuZCA9IHN0YXRlLnBvc2l0aW9uOwogICAgfSBlbHNlIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIGNhcHR1cmVFbmQsIHRydWUpOwogICAgICB3cml0ZUZvbGRlZExpbmVzKHN0YXRlLCBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCBmYWxzZSwgbm9kZUluZGVudCkpOwogICAgICBjYXB0dXJlU3RhcnQgPSBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9IGVsc2UgaWYgKHN0YXRlLnBvc2l0aW9uID09PSBzdGF0ZS5saW5lU3RhcnQgJiYgdGVzdERvY3VtZW50U2VwYXJhdG9yKHN0YXRlKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBjYXB0dXJlRW5kID0gc3RhdGUucG9zaXRpb247CiAgICB9CiAgfQogIHRocm93RXJyb3Ioc3RhdGUsICJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgc3RyZWFtIHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik7Cn0KZnVuY3Rpb24gcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIHJlYWROZXh0ID0gdHJ1ZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9yZXN1bHQsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIGZvbGxvd2luZywgdGVybWluYXRvciwgaXNQYWlyLCBpc0V4cGxpY2l0UGFpciwgaXNNYXBwaW5nLCBvdmVycmlkYWJsZUtleXMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKSwga2V5Tm9kZSwga2V5VGFnLCB2YWx1ZU5vZGUsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoID09PSA5MSkgewogICAgdGVybWluYXRvciA9IDkzOwogICAgaXNNYXBwaW5nID0gZmFsc2U7CiAgICBfcmVzdWx0ID0gW107CiAgfSBlbHNlIGlmIChjaCA9PT0gMTIzKSB7CiAgICB0ZXJtaW5hdG9yID0gMTI1OwogICAgaXNNYXBwaW5nID0gdHJ1ZTsKICAgIF9yZXN1bHQgPSB7fTsKICB9IGVsc2UgewogICAgcmV0dXJuIGZhbHNlOwogIH0KICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gdGVybWluYXRvcikgewogICAgICBzdGF0ZS5wb3NpdGlvbisrOwogICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgICBzdGF0ZS5raW5kID0gaXNNYXBwaW5nID8gIm1hcHBpbmciIDogInNlcXVlbmNlIjsKICAgICAgc3RhdGUucmVzdWx0ID0gX3Jlc3VsdDsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9IGVsc2UgaWYgKCFyZWFkTmV4dCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAibWlzc2VkIGNvbW1hIGJldHdlZW4gZmxvdyBjb2xsZWN0aW9uIGVudHJpZXMiKTsKICAgIH0gZWxzZSBpZiAoY2ggPT09IDQ0KSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJleHBlY3RlZCB0aGUgbm9kZSBjb250ZW50LCBidXQgZm91bmQgJywnIik7CiAgICB9CiAgICBrZXlUYWcgPSBrZXlOb2RlID0gdmFsdWVOb2RlID0gbnVsbDsKICAgIGlzUGFpciA9IGlzRXhwbGljaXRQYWlyID0gZmFsc2U7CiAgICBpZiAoY2ggPT09IDYzKSB7CiAgICAgIGZvbGxvd2luZyA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAxKTsKICAgICAgaWYgKGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgICAgaXNQYWlyID0gaXNFeHBsaWNpdFBhaXIgPSB0cnVlOwogICAgICAgIHN0YXRlLnBvc2l0aW9uKys7CiAgICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIH0KICAgIH0KICAgIF9saW5lID0gc3RhdGUubGluZTsKICAgIF9saW5lU3RhcnQgPSBzdGF0ZS5saW5lU3RhcnQ7CiAgICBfcG9zID0gc3RhdGUucG9zaXRpb247CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9GTE9XX0lOLCBmYWxzZSwgdHJ1ZSk7CiAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChpc0V4cGxpY2l0UGFpciB8fCBzdGF0ZS5saW5lID09PSBfbGluZSkgJiYgY2ggPT09IDU4KSB7CiAgICAgIGlzUGFpciA9IHRydWU7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgbm9kZUluZGVudCk7CiAgICAgIGNvbXBvc2VOb2RlKHN0YXRlLCBub2RlSW5kZW50LCBDT05URVhUX0ZMT1dfSU4sIGZhbHNlLCB0cnVlKTsKICAgICAgdmFsdWVOb2RlID0gc3RhdGUucmVzdWx0OwogICAgfQogICAgaWYgKGlzTWFwcGluZykgewogICAgICBzdG9yZU1hcHBpbmdQYWlyKHN0YXRlLCBfcmVzdWx0LCBvdmVycmlkYWJsZUtleXMsIGtleVRhZywga2V5Tm9kZSwgdmFsdWVOb2RlLCBfbGluZSwgX2xpbmVTdGFydCwgX3Bvcyk7CiAgICB9IGVsc2UgaWYgKGlzUGFpcikgewogICAgICBfcmVzdWx0LnB1c2goc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgbnVsbCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2xpbmUsIF9saW5lU3RhcnQsIF9wb3MpKTsKICAgIH0gZWxzZSB7CiAgICAgIF9yZXN1bHQucHVzaChrZXlOb2RlKTsKICAgIH0KICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIG5vZGVJbmRlbnQpOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDQpIHsKICAgICAgcmVhZE5leHQgPSB0cnVlOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICByZWFkTmV4dCA9IGZhbHNlOwogICAgfQogIH0KICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24iKTsKfQpmdW5jdGlvbiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIG5vZGVJbmRlbnQpIHsKICB2YXIgY2FwdHVyZVN0YXJ0LCBmb2xkaW5nLCBjaG9tcGluZyA9IENIT01QSU5HX0NMSVAsIGRpZFJlYWRDb250ZW50ID0gZmFsc2UsIGRldGVjdGVkSW5kZW50ID0gZmFsc2UsIHRleHRJbmRlbnQgPSBub2RlSW5kZW50LCBlbXB0eUxpbmVzID0gMCwgYXRNb3JlSW5kZW50ZWQgPSBmYWxzZSwgdG1wLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCA9PT0gMTI0KSB7CiAgICBmb2xkaW5nID0gZmFsc2U7CiAgfSBlbHNlIGlmIChjaCA9PT0gNjIpIHsKICAgIGZvbGRpbmcgPSB0cnVlOwogIH0gZWxzZSB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQogIHN0YXRlLmtpbmQgPSAic2NhbGFyIjsKICBzdGF0ZS5yZXN1bHQgPSAiIjsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIGlmIChjaCA9PT0gNDMgfHwgY2ggPT09IDQ1KSB7CiAgICAgIGlmIChDSE9NUElOR19DTElQID09PSBjaG9tcGluZykgewogICAgICAgIGNob21waW5nID0gY2ggPT09IDQzID8gQ0hPTVBJTkdfS0VFUCA6IENIT01QSU5HX1NUUklQOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYSBjaG9tcGluZyBtb2RlIGlkZW50aWZpZXIiKTsKICAgICAgfQogICAgfSBlbHNlIGlmICgodG1wID0gZnJvbURlY2ltYWxDb2RlKGNoKSkgPj0gMCkgewogICAgICBpZiAodG1wID09PSAwKSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBleHBsaWNpdCBpbmRlbnRhdGlvbiB3aWR0aCBvZiBhIGJsb2NrIHNjYWxhcjsgaXQgY2Fubm90IGJlIGxlc3MgdGhhbiBvbmUiKTsKICAgICAgfSBlbHNlIGlmICghZGV0ZWN0ZWRJbmRlbnQpIHsKICAgICAgICB0ZXh0SW5kZW50ID0gbm9kZUluZGVudCArIHRtcCAtIDE7CiAgICAgICAgZGV0ZWN0ZWRJbmRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJyZXBlYXQgb2YgYW4gaW5kZW50YXRpb24gd2lkdGggaWRlbnRpZmllciIpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgZG8gewogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpOwogICAgaWYgKGNoID09PSAzNSkgewogICAgICBkbyB7CiAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICB9IHdoaWxlICghaXNfRU9MKGNoKSAmJiBjaCAhPT0gMCk7CiAgICB9CiAgfQogIHdoaWxlIChjaCAhPT0gMCkgewogICAgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBzdGF0ZS5saW5lSW5kZW50ID0gMDsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgICB3aGlsZSAoKCFkZXRlY3RlZEluZGVudCB8fCBzdGF0ZS5saW5lSW5kZW50IDwgdGV4dEluZGVudCkgJiYgY2ggPT09IDMyKSB7CiAgICAgIHN0YXRlLmxpbmVJbmRlbnQrKzsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgaWYgKCFkZXRlY3RlZEluZGVudCAmJiBzdGF0ZS5saW5lSW5kZW50ID4gdGV4dEluZGVudCkgewogICAgICB0ZXh0SW5kZW50ID0gc3RhdGUubGluZUluZGVudDsKICAgIH0KICAgIGlmIChpc19FT0woY2gpKSB7CiAgICAgIGVtcHR5TGluZXMrKzsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUubGluZUluZGVudCA8IHRleHRJbmRlbnQpIHsKICAgICAgaWYgKGNob21waW5nID09PSBDSE9NUElOR19LRUVQKSB7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZGlkUmVhZENvbnRlbnQgPyAxICsgZW1wdHlMaW5lcyA6IGVtcHR5TGluZXMpOwogICAgICB9IGVsc2UgaWYgKGNob21waW5nID09PSBDSE9NUElOR19DTElQKSB7CiAgICAgICAgaWYgKGRpZFJlYWRDb250ZW50KSB7CiAgICAgICAgICBzdGF0ZS5yZXN1bHQgKz0gIlxuIjsKICAgICAgICB9CiAgICAgIH0KICAgICAgYnJlYWs7CiAgICB9CiAgICBpZiAoZm9sZGluZykgewogICAgICBpZiAoaXNfV0hJVEVfU1BBQ0UoY2gpKSB7CiAgICAgICAgYXRNb3JlSW5kZW50ZWQgPSB0cnVlOwogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGRpZFJlYWRDb250ZW50ID8gMSArIGVtcHR5TGluZXMgOiBlbXB0eUxpbmVzKTsKICAgICAgfSBlbHNlIGlmIChhdE1vcmVJbmRlbnRlZCkgewogICAgICAgIGF0TW9yZUluZGVudGVkID0gZmFsc2U7CiAgICAgICAgc3RhdGUucmVzdWx0ICs9IGNvbW1vbi5yZXBlYXQoIlxuIiwgZW1wdHlMaW5lcyArIDEpOwogICAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXMgPT09IDApIHsKICAgICAgICBpZiAoZGlkUmVhZENvbnRlbnQpIHsKICAgICAgICAgIHN0YXRlLnJlc3VsdCArPSAiICI7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLnJlc3VsdCArPSBjb21tb24ucmVwZWF0KCJcbiIsIGVtcHR5TGluZXMpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgKz0gY29tbW9uLnJlcGVhdCgiXG4iLCBkaWRSZWFkQ29udGVudCA/IDEgKyBlbXB0eUxpbmVzIDogZW1wdHlMaW5lcyk7CiAgICB9CiAgICBkaWRSZWFkQ29udGVudCA9IHRydWU7CiAgICBkZXRlY3RlZEluZGVudCA9IHRydWU7CiAgICBlbXB0eUxpbmVzID0gMDsKICAgIGNhcHR1cmVTdGFydCA9IHN0YXRlLnBvc2l0aW9uOwogICAgd2hpbGUgKCFpc19FT0woY2gpICYmIGNoICE9PSAwKSB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGNhcHR1cmVTZWdtZW50KHN0YXRlLCBjYXB0dXJlU3RhcnQsIHN0YXRlLnBvc2l0aW9uLCBmYWxzZSk7CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIHJlYWRCbG9ja1NlcXVlbmNlKHN0YXRlLCBub2RlSW5kZW50KSB7CiAgdmFyIF9saW5lLCBfdGFnID0gc3RhdGUudGFnLCBfYW5jaG9yID0gc3RhdGUuYW5jaG9yLCBfcmVzdWx0ID0gW10sIGZvbGxvd2luZywgZGV0ZWN0ZWQgPSBmYWxzZSwgY2g7CiAgaWYgKHN0YXRlLmZpcnN0VGFiSW5MaW5lICE9PSAtMSkgcmV0dXJuIGZhbHNlOwogIGlmIChzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgIHN0YXRlLmFuY2hvck1hcFtzdGF0ZS5hbmNob3JdID0gX3Jlc3VsdDsKICB9CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICB3aGlsZSAoY2ggIT09IDApIHsKICAgIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHsKICAgICAgc3RhdGUucG9zaXRpb24gPSBzdGF0ZS5maXJzdFRhYkluTGluZTsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhYiBjaGFyYWN0ZXJzIG11c3Qgbm90IGJlIHVzZWQgaW4gaW5kZW50YXRpb24iKTsKICAgIH0KICAgIGlmIChjaCAhPT0gNDUpIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBpZiAoIWlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGJyZWFrOwogICAgfQogICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgc3RhdGUucG9zaXRpb24rKzsKICAgIGlmIChza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSkpIHsKICAgICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPD0gbm9kZUluZGVudCkgewogICAgICAgIF9yZXN1bHQucHVzaChudWxsKTsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9CiAgICB9CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBjb21wb3NlTm9kZShzdGF0ZSwgbm9kZUluZGVudCwgQ09OVEVYVF9CTE9DS19JTiwgZmFsc2UsIHRydWUpOwogICAgX3Jlc3VsdC5wdXNoKHN0YXRlLnJlc3VsdCk7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgJiYgY2ggIT09IDApIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImJhZCBpbmRlbnRhdGlvbiBvZiBhIHNlcXVlbmNlIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoZGV0ZWN0ZWQpIHsKICAgIHN0YXRlLnRhZyA9IF90YWc7CiAgICBzdGF0ZS5hbmNob3IgPSBfYW5jaG9yOwogICAgc3RhdGUua2luZCA9ICJzZXF1ZW5jZSI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogICAgcmV0dXJuIHRydWU7CiAgfQogIHJldHVybiBmYWxzZTsKfQpmdW5jdGlvbiByZWFkQmxvY2tNYXBwaW5nKHN0YXRlLCBub2RlSW5kZW50LCBmbG93SW5kZW50KSB7CiAgdmFyIGZvbGxvd2luZywgYWxsb3dDb21wYWN0LCBfbGluZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MsIF90YWcgPSBzdGF0ZS50YWcsIF9hbmNob3IgPSBzdGF0ZS5hbmNob3IsIF9yZXN1bHQgPSB7fSwgb3ZlcnJpZGFibGVLZXlzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCksIGtleVRhZyA9IG51bGwsIGtleU5vZGUgPSBudWxsLCB2YWx1ZU5vZGUgPSBudWxsLCBhdEV4cGxpY2l0S2V5ID0gZmFsc2UsIGRldGVjdGVkID0gZmFsc2UsIGNoOwogIGlmIChzdGF0ZS5maXJzdFRhYkluTGluZSAhPT0gLTEpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IF9yZXN1bHQ7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgd2hpbGUgKGNoICE9PSAwKSB7CiAgICBpZiAoIWF0RXhwbGljaXRLZXkgJiYgc3RhdGUuZmlyc3RUYWJJbkxpbmUgIT09IC0xKSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uID0gc3RhdGUuZmlyc3RUYWJJbkxpbmU7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWIgY2hhcmFjdGVycyBtdXN0IG5vdCBiZSB1c2VkIGluIGluZGVudGF0aW9uIik7CiAgICB9CiAgICBmb2xsb3dpbmcgPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICBfbGluZSA9IHN0YXRlLmxpbmU7CiAgICBpZiAoKGNoID09PSA2MyB8fCBjaCA9PT0gNTgpICYmIGlzX1dTX09SX0VPTChmb2xsb3dpbmcpKSB7CiAgICAgIGlmIChjaCA9PT0gNjMpIHsKICAgICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgIH0KICAgICAgICBkZXRlY3RlZCA9IHRydWU7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IHRydWU7CiAgICAgICAgYWxsb3dDb21wYWN0ID0gdHJ1ZTsKICAgICAgfSBlbHNlIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgIGFsbG93Q29tcGFjdCA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImluY29tcGxldGUgZXhwbGljaXQgbWFwcGluZyBwYWlyOyBhIGtleSBub2RlIGlzIG1pc3NlZDsgb3IgZm9sbG93ZWQgYnkgYSBub24tdGFidWxhdGVkIGVtcHR5IGxpbmUiKTsKICAgICAgfQogICAgICBzdGF0ZS5wb3NpdGlvbiArPSAxOwogICAgICBjaCA9IGZvbGxvd2luZzsKICAgIH0gZWxzZSB7CiAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgX2tleUxpbmVTdGFydCA9IHN0YXRlLmxpbmVTdGFydDsKICAgICAgX2tleVBvcyA9IHN0YXRlLnBvc2l0aW9uOwogICAgICBpZiAoIWNvbXBvc2VOb2RlKHN0YXRlLCBmbG93SW5kZW50LCBDT05URVhUX0ZMT1dfT1VULCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoc3RhdGUubGluZSA9PT0gX2xpbmUpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgICAgIHdoaWxlIChpc19XSElURV9TUEFDRShjaCkpIHsKICAgICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNoID09PSA1OCkgewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgICAgaWYgKCFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJhIHdoaXRlc3BhY2UgY2hhcmFjdGVyIGlzIGV4cGVjdGVkIGFmdGVyIHRoZSBrZXktdmFsdWUgc2VwYXJhdG9yIHdpdGhpbiBhIGJsb2NrIG1hcHBpbmciKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgICAgIHN0b3JlTWFwcGluZ1BhaXIoc3RhdGUsIF9yZXN1bHQsIG92ZXJyaWRhYmxlS2V5cywga2V5VGFnLCBrZXlOb2RlLCBudWxsLCBfa2V5TGluZSwgX2tleUxpbmVTdGFydCwgX2tleVBvcyk7CiAgICAgICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgZGV0ZWN0ZWQgPSB0cnVlOwogICAgICAgICAgYXRFeHBsaWNpdEtleSA9IGZhbHNlOwogICAgICAgICAgYWxsb3dDb21wYWN0ID0gZmFsc2U7CiAgICAgICAgICBrZXlUYWcgPSBzdGF0ZS50YWc7CiAgICAgICAgICBrZXlOb2RlID0gc3RhdGUucmVzdWx0OwogICAgICAgIH0gZWxzZSBpZiAoZGV0ZWN0ZWQpIHsKICAgICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYW4gaW1wbGljaXQgbWFwcGluZyBwYWlyOyBhIGNvbG9uIGlzIG1pc3NlZCIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChkZXRlY3RlZCkgewogICAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJjYW4gbm90IHJlYWQgYSBibG9jayBtYXBwaW5nIGVudHJ5OyBhIG11bHRpbGluZSBrZXkgbWF5IG5vdCBiZSBhbiBpbXBsaWNpdCBrZXkiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgICAgIHN0YXRlLmFuY2hvciA9IF9hbmNob3I7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgIH0KICAgIGlmIChzdGF0ZS5saW5lID09PSBfbGluZSB8fCBzdGF0ZS5saW5lSW5kZW50ID4gbm9kZUluZGVudCkgewogICAgICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgICAgIF9rZXlMaW5lID0gc3RhdGUubGluZTsKICAgICAgICBfa2V5TGluZVN0YXJ0ID0gc3RhdGUubGluZVN0YXJ0OwogICAgICAgIF9rZXlQb3MgPSBzdGF0ZS5wb3NpdGlvbjsKICAgICAgfQogICAgICBpZiAoY29tcG9zZU5vZGUoc3RhdGUsIG5vZGVJbmRlbnQsIENPTlRFWFRfQkxPQ0tfT1VULCB0cnVlLCBhbGxvd0NvbXBhY3QpKSB7CiAgICAgICAgaWYgKGF0RXhwbGljaXRLZXkpIHsKICAgICAgICAgIGtleU5vZGUgPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZhbHVlTm9kZSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKCFhdEV4cGxpY2l0S2V5KSB7CiAgICAgICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIHZhbHVlTm9kZSwgX2tleUxpbmUsIF9rZXlMaW5lU3RhcnQsIF9rZXlQb3MpOwogICAgICAgIGtleVRhZyA9IGtleU5vZGUgPSB2YWx1ZU5vZGUgPSBudWxsOwogICAgICB9CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICAgIH0KICAgIGlmICgoc3RhdGUubGluZSA9PT0gX2xpbmUgfHwgc3RhdGUubGluZUluZGVudCA+IG5vZGVJbmRlbnQpICYmIGNoICE9PSAwKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICJiYWQgaW5kZW50YXRpb24gb2YgYSBtYXBwaW5nIGVudHJ5Iik7CiAgICB9IGVsc2UgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPCBub2RlSW5kZW50KSB7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBpZiAoYXRFeHBsaWNpdEtleSkgewogICAgc3RvcmVNYXBwaW5nUGFpcihzdGF0ZSwgX3Jlc3VsdCwgb3ZlcnJpZGFibGVLZXlzLCBrZXlUYWcsIGtleU5vZGUsIG51bGwsIF9rZXlMaW5lLCBfa2V5TGluZVN0YXJ0LCBfa2V5UG9zKTsKICB9CiAgaWYgKGRldGVjdGVkKSB7CiAgICBzdGF0ZS50YWcgPSBfdGFnOwogICAgc3RhdGUuYW5jaG9yID0gX2FuY2hvcjsKICAgIHN0YXRlLmtpbmQgPSAibWFwcGluZyI7CiAgICBzdGF0ZS5yZXN1bHQgPSBfcmVzdWx0OwogIH0KICByZXR1cm4gZGV0ZWN0ZWQ7Cn0KZnVuY3Rpb24gcmVhZFRhZ1Byb3BlcnR5KHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgaXNWZXJiYXRpbSA9IGZhbHNlLCBpc05hbWVkID0gZmFsc2UsIHRhZ0hhbmRsZSwgdGFnTmFtZSwgY2g7CiAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggIT09IDMzKSByZXR1cm4gZmFsc2U7CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImR1cGxpY2F0aW9uIG9mIGEgdGFnIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBpZiAoY2ggPT09IDYwKSB7CiAgICBpc1ZlcmJhdGltID0gdHJ1ZTsKICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICB9IGVsc2UgaWYgKGNoID09PSAzMykgewogICAgaXNOYW1lZCA9IHRydWU7CiAgICB0YWdIYW5kbGUgPSAiISEiOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0gZWxzZSB7CiAgICB0YWdIYW5kbGUgPSAiISI7CiAgfQogIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBkbyB7CiAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgIH0gd2hpbGUgKGNoICE9PSAwICYmIGNoICE9PSA2Mik7CiAgICBpZiAoc3RhdGUucG9zaXRpb24gPCBzdGF0ZS5sZW5ndGgpIHsKICAgICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICB9IGVsc2UgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSB2ZXJiYXRpbSB0YWciKTsKICAgIH0KICB9IGVsc2UgewogICAgd2hpbGUgKGNoICE9PSAwICYmICFpc19XU19PUl9FT0woY2gpKSB7CiAgICAgIGlmIChjaCA9PT0gMzMpIHsKICAgICAgICBpZiAoIWlzTmFtZWQpIHsKICAgICAgICAgIHRhZ0hhbmRsZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiAtIDEsIHN0YXRlLnBvc2l0aW9uICsgMSk7CiAgICAgICAgICBpZiAoIVBBVFRFUk5fVEFHX0hBTkRMRS50ZXN0KHRhZ0hhbmRsZSkpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWVkIHRhZyBoYW5kbGUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzIik7CiAgICAgICAgICB9CiAgICAgICAgICBpc05hbWVkID0gdHJ1ZTsKICAgICAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uICsgMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZXhjbGFtYXRpb24gbWFya3MiKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgdGFnTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgaWYgKFBBVFRFUk5fRkxPV19JTkRJQ0FUT1JTLnRlc3QodGFnTmFtZSkpIHsKICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZmxvdyBpbmRpY2F0b3IgY2hhcmFjdGVycyIpOwogICAgfQogIH0KICBpZiAodGFnTmFtZSAmJiAhUEFUVEVSTl9UQUdfVVJJLnRlc3QodGFnTmFtZSkpIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICJ0YWcgbmFtZSBjYW5ub3QgY29udGFpbiBzdWNoIGNoYXJhY3RlcnM6ICIgKyB0YWdOYW1lKTsKICB9CiAgdHJ5IHsKICAgIHRhZ05hbWUgPSBkZWNvZGVVUklDb21wb25lbnQodGFnTmFtZSk7CiAgfSBjYXRjaCAoZXJyKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAidGFnIG5hbWUgaXMgbWFsZm9ybWVkOiAiICsgdGFnTmFtZSk7CiAgfQogIGlmIChpc1ZlcmJhdGltKSB7CiAgICBzdGF0ZS50YWcgPSB0YWdOYW1lOwogIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS50YWdNYXAsIHRhZ0hhbmRsZSkpIHsKICAgIHN0YXRlLnRhZyA9IHN0YXRlLnRhZ01hcFt0YWdIYW5kbGVdICsgdGFnTmFtZTsKICB9IGVsc2UgaWYgKHRhZ0hhbmRsZSA9PT0gIiEiKSB7CiAgICBzdGF0ZS50YWcgPSAiISIgKyB0YWdOYW1lOwogIH0gZWxzZSBpZiAodGFnSGFuZGxlID09PSAiISEiKSB7CiAgICBzdGF0ZS50YWcgPSAidGFnOnlhbWwub3JnLDIwMDI6IiArIHRhZ05hbWU7CiAgfSBlbHNlIHsKICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmRlY2xhcmVkIHRhZyBoYW5kbGUgIicgKyB0YWdIYW5kbGUgKyAnIicpOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpmdW5jdGlvbiByZWFkQW5jaG9yUHJvcGVydHkoc3RhdGUpIHsKICB2YXIgX3Bvc2l0aW9uLCBjaDsKICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogIGlmIChjaCAhPT0gMzgpIHJldHVybiBmYWxzZTsKICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZHVwbGljYXRpb24gb2YgYW4gYW5jaG9yIHByb3BlcnR5Iik7CiAgfQogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYW5jaG9yIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKTsKICB9CiAgc3RhdGUuYW5jaG9yID0gc3RhdGUuaW5wdXQuc2xpY2UoX3Bvc2l0aW9uLCBzdGF0ZS5wb3NpdGlvbik7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gcmVhZEFsaWFzKHN0YXRlKSB7CiAgdmFyIF9wb3NpdGlvbiwgYWxpYXMsIGNoOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbik7CiAgaWYgKGNoICE9PSA0MikgcmV0dXJuIGZhbHNlOwogIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICBfcG9zaXRpb24gPSBzdGF0ZS5wb3NpdGlvbjsKICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkgJiYgIWlzX0ZMT1dfSU5ESUNBVE9SKGNoKSkgewogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogIH0KICBpZiAoc3RhdGUucG9zaXRpb24gPT09IF9wb3NpdGlvbikgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm5hbWUgb2YgYW4gYWxpYXMgbm9kZSBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIGNoYXJhY3RlciIpOwogIH0KICBhbGlhcyA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogIGlmICghX2hhc093blByb3BlcnR5JDEuY2FsbChzdGF0ZS5hbmNob3JNYXAsIGFsaWFzKSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgJ3VuaWRlbnRpZmllZCBhbGlhcyAiJyArIGFsaWFzICsgJyInKTsKICB9CiAgc3RhdGUucmVzdWx0ID0gc3RhdGUuYW5jaG9yTWFwW2FsaWFzXTsKICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgcmV0dXJuIHRydWU7Cn0KZnVuY3Rpb24gY29tcG9zZU5vZGUoc3RhdGUsIHBhcmVudEluZGVudCwgbm9kZUNvbnRleHQsIGFsbG93VG9TZWVrLCBhbGxvd0NvbXBhY3QpIHsKICB2YXIgYWxsb3dCbG9ja1N0eWxlcywgYWxsb3dCbG9ja1NjYWxhcnMsIGFsbG93QmxvY2tDb2xsZWN0aW9ucywgaW5kZW50U3RhdHVzID0gMSwgYXROZXdMaW5lID0gZmFsc2UsIGhhc0NvbnRlbnQgPSBmYWxzZSwgdHlwZUluZGV4LCB0eXBlUXVhbnRpdHksIHR5cGVMaXN0LCB0eXBlMiwgZmxvd0luZGVudCwgYmxvY2tJbmRlbnQ7CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigib3BlbiIsIHN0YXRlKTsKICB9CiAgc3RhdGUudGFnID0gbnVsbDsKICBzdGF0ZS5hbmNob3IgPSBudWxsOwogIHN0YXRlLmtpbmQgPSBudWxsOwogIHN0YXRlLnJlc3VsdCA9IG51bGw7CiAgYWxsb3dCbG9ja1N0eWxlcyA9IGFsbG93QmxvY2tTY2FsYXJzID0gYWxsb3dCbG9ja0NvbGxlY3Rpb25zID0gQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0IHx8IENPTlRFWFRfQkxPQ0tfSU4gPT09IG5vZGVDb250ZXh0OwogIGlmIChhbGxvd1RvU2VlaykgewogICAgaWYgKHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKSkgewogICAgICBhdE5ld0xpbmUgPSB0cnVlOwogICAgICBpZiAoc3RhdGUubGluZUluZGVudCA+IHBhcmVudEluZGVudCkgewogICAgICAgIGluZGVudFN0YXR1cyA9IDE7CiAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gMDsKICAgICAgfSBlbHNlIGlmIChzdGF0ZS5saW5lSW5kZW50IDwgcGFyZW50SW5kZW50KSB7CiAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgd2hpbGUgKHJlYWRUYWdQcm9wZXJ0eShzdGF0ZSkgfHwgcmVhZEFuY2hvclByb3BlcnR5KHN0YXRlKSkgewogICAgICBpZiAoc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpKSB7CiAgICAgICAgYXROZXdMaW5lID0gdHJ1ZTsKICAgICAgICBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgPSBhbGxvd0Jsb2NrU3R5bGVzOwogICAgICAgIGlmIChzdGF0ZS5saW5lSW5kZW50ID4gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAxOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA9PT0gcGFyZW50SW5kZW50KSB7CiAgICAgICAgICBpbmRlbnRTdGF0dXMgPSAwOwogICAgICAgIH0gZWxzZSBpZiAoc3RhdGUubGluZUluZGVudCA8IHBhcmVudEluZGVudCkgewogICAgICAgICAgaW5kZW50U3RhdHVzID0gLTE7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgfQogIGlmIChhbGxvd0Jsb2NrQ29sbGVjdGlvbnMpIHsKICAgIGFsbG93QmxvY2tDb2xsZWN0aW9ucyA9IGF0TmV3TGluZSB8fCBhbGxvd0NvbXBhY3Q7CiAgfQogIGlmIChpbmRlbnRTdGF0dXMgPT09IDEgfHwgQ09OVEVYVF9CTE9DS19PVVQgPT09IG5vZGVDb250ZXh0KSB7CiAgICBpZiAoQ09OVEVYVF9GTE9XX0lOID09PSBub2RlQ29udGV4dCB8fCBDT05URVhUX0ZMT1dfT1VUID09PSBub2RlQ29udGV4dCkgewogICAgICBmbG93SW5kZW50ID0gcGFyZW50SW5kZW50OwogICAgfSBlbHNlIHsKICAgICAgZmxvd0luZGVudCA9IHBhcmVudEluZGVudCArIDE7CiAgICB9CiAgICBibG9ja0luZGVudCA9IHN0YXRlLnBvc2l0aW9uIC0gc3RhdGUubGluZVN0YXJ0OwogICAgaWYgKGluZGVudFN0YXR1cyA9PT0gMSkgewogICAgICBpZiAoYWxsb3dCbG9ja0NvbGxlY3Rpb25zICYmIChyZWFkQmxvY2tTZXF1ZW5jZShzdGF0ZSwgYmxvY2tJbmRlbnQpIHx8IHJlYWRCbG9ja01hcHBpbmcoc3RhdGUsIGJsb2NrSW5kZW50LCBmbG93SW5kZW50KSkgfHwgcmVhZEZsb3dDb2xsZWN0aW9uKHN0YXRlLCBmbG93SW5kZW50KSkgewogICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChhbGxvd0Jsb2NrU2NhbGFycyAmJiByZWFkQmxvY2tTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWRTaW5nbGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpIHx8IHJlYWREb3VibGVRdW90ZWRTY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICB9IGVsc2UgaWYgKHJlYWRBbGlhcyhzdGF0ZSkpIHsKICAgICAgICAgIGhhc0NvbnRlbnQgPSB0cnVlOwogICAgICAgICAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCB8fCBzdGF0ZS5hbmNob3IgIT09IG51bGwpIHsKICAgICAgICAgICAgdGhyb3dFcnJvcihzdGF0ZSwgImFsaWFzIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGFueSBwcm9wZXJ0aWVzIik7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChyZWFkUGxhaW5TY2FsYXIoc3RhdGUsIGZsb3dJbmRlbnQsIENPTlRFWFRfRkxPV19JTiA9PT0gbm9kZUNvbnRleHQpKSB7CiAgICAgICAgICBoYXNDb250ZW50ID0gdHJ1ZTsKICAgICAgICAgIGlmIChzdGF0ZS50YWcgPT09IG51bGwpIHsKICAgICAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoaW5kZW50U3RhdHVzID09PSAwKSB7CiAgICAgIGhhc0NvbnRlbnQgPSBhbGxvd0Jsb2NrQ29sbGVjdGlvbnMgJiYgcmVhZEJsb2NrU2VxdWVuY2Uoc3RhdGUsIGJsb2NrSW5kZW50KTsKICAgIH0KICB9CiAgaWYgKHN0YXRlLnRhZyA9PT0gbnVsbCkgewogICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICBzdGF0ZS5hbmNob3JNYXBbc3RhdGUuYW5jaG9yXSA9IHN0YXRlLnJlc3VsdDsKICAgIH0KICB9IGVsc2UgaWYgKHN0YXRlLnRhZyA9PT0gIj8iKSB7CiAgICBpZiAoc3RhdGUucmVzdWx0ICE9PSBudWxsICYmIHN0YXRlLmtpbmQgIT09ICJzY2FsYXIiKSB7CiAgICAgIHRocm93RXJyb3Ioc3RhdGUsICd1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPD8+IHRhZzsgaXQgc2hvdWxkIGJlICJzY2FsYXIiLCBub3QgIicgKyBzdGF0ZS5raW5kICsgJyInKTsKICAgIH0KICAgIGZvciAodHlwZUluZGV4ID0gMCwgdHlwZVF1YW50aXR5ID0gc3RhdGUuaW1wbGljaXRUeXBlcy5sZW5ndGg7IHR5cGVJbmRleCA8IHR5cGVRdWFudGl0eTsgdHlwZUluZGV4ICs9IDEpIHsKICAgICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW3R5cGVJbmRleF07CiAgICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCkpIHsKICAgICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0KTsKICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi50YWc7CiAgICAgICAgaWYgKHN0YXRlLmFuY2hvciAhPT0gbnVsbCkgewogICAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwogICAgICB9CiAgICB9CiAgfSBlbHNlIGlmIChzdGF0ZS50YWcgIT09ICIhIikgewogICAgaWYgKF9oYXNPd25Qcm9wZXJ0eSQxLmNhbGwoc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdLCBzdGF0ZS50YWcpKSB7CiAgICAgIHR5cGUyID0gc3RhdGUudHlwZU1hcFtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdW3N0YXRlLnRhZ107CiAgICB9IGVsc2UgewogICAgICB0eXBlMiA9IG51bGw7CiAgICAgIHR5cGVMaXN0ID0gc3RhdGUudHlwZU1hcC5tdWx0aVtzdGF0ZS5raW5kIHx8ICJmYWxsYmFjayJdOwogICAgICBmb3IgKHR5cGVJbmRleCA9IDAsIHR5cGVRdWFudGl0eSA9IHR5cGVMaXN0Lmxlbmd0aDsgdHlwZUluZGV4IDwgdHlwZVF1YW50aXR5OyB0eXBlSW5kZXggKz0gMSkgewogICAgICAgIGlmIChzdGF0ZS50YWcuc2xpY2UoMCwgdHlwZUxpc3RbdHlwZUluZGV4XS50YWcubGVuZ3RoKSA9PT0gdHlwZUxpc3RbdHlwZUluZGV4XS50YWcpIHsKICAgICAgICAgIHR5cGUyID0gdHlwZUxpc3RbdHlwZUluZGV4XTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgaWYgKCF0eXBlMikgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5rbm93biB0YWcgITwiICsgc3RhdGUudGFnICsgIj4iKTsKICAgIH0KICAgIGlmIChzdGF0ZS5yZXN1bHQgIT09IG51bGwgJiYgdHlwZTIua2luZCAhPT0gc3RhdGUua2luZCkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAidW5hY2NlcHRhYmxlIG5vZGUga2luZCBmb3IgITwiICsgc3RhdGUudGFnICsgJz4gdGFnOyBpdCBzaG91bGQgYmUgIicgKyB0eXBlMi5raW5kICsgJyIsIG5vdCAiJyArIHN0YXRlLmtpbmQgKyAnIicpOwogICAgfQogICAgaWYgKCF0eXBlMi5yZXNvbHZlKHN0YXRlLnJlc3VsdCwgc3RhdGUudGFnKSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiY2Fubm90IHJlc29sdmUgYSBub2RlIHdpdGggITwiICsgc3RhdGUudGFnICsgIj4gZXhwbGljaXQgdGFnIik7CiAgICB9IGVsc2UgewogICAgICBzdGF0ZS5yZXN1bHQgPSB0eXBlMi5jb25zdHJ1Y3Qoc3RhdGUucmVzdWx0LCBzdGF0ZS50YWcpOwogICAgICBpZiAoc3RhdGUuYW5jaG9yICE9PSBudWxsKSB7CiAgICAgICAgc3RhdGUuYW5jaG9yTWFwW3N0YXRlLmFuY2hvcl0gPSBzdGF0ZS5yZXN1bHQ7CiAgICAgIH0KICAgIH0KICB9CiAgaWYgKHN0YXRlLmxpc3RlbmVyICE9PSBudWxsKSB7CiAgICBzdGF0ZS5saXN0ZW5lcigiY2xvc2UiLCBzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS50YWcgIT09IG51bGwgfHwgc3RhdGUuYW5jaG9yICE9PSBudWxsIHx8IGhhc0NvbnRlbnQ7Cn0KZnVuY3Rpb24gcmVhZERvY3VtZW50KHN0YXRlKSB7CiAgdmFyIGRvY3VtZW50U3RhcnQgPSBzdGF0ZS5wb3NpdGlvbiwgX3Bvc2l0aW9uLCBkaXJlY3RpdmVOYW1lLCBkaXJlY3RpdmVBcmdzLCBoYXNEaXJlY3RpdmVzID0gZmFsc2UsIGNoOwogIHN0YXRlLnZlcnNpb24gPSBudWxsOwogIHN0YXRlLmNoZWNrTGluZUJyZWFrcyA9IHN0YXRlLmxlZ2FjeTsKICBzdGF0ZS50YWdNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICBzdGF0ZS5hbmNob3JNYXAgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICB3aGlsZSAoKGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikpICE9PSAwKSB7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pOwogICAgaWYgKHN0YXRlLmxpbmVJbmRlbnQgPiAwIHx8IGNoICE9PSAzNykgewogICAgICBicmVhazsKICAgIH0KICAgIGhhc0RpcmVjdGl2ZXMgPSB0cnVlOwogICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgX3Bvc2l0aW9uID0gc3RhdGUucG9zaXRpb247CiAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgfQogICAgZGlyZWN0aXZlTmFtZSA9IHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pOwogICAgZGlyZWN0aXZlQXJncyA9IFtdOwogICAgaWYgKGRpcmVjdGl2ZU5hbWUubGVuZ3RoIDwgMSkgewogICAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlIG5hbWUgbXVzdCBub3QgYmUgbGVzcyB0aGFuIG9uZSBjaGFyYWN0ZXIgaW4gbGVuZ3RoIik7CiAgICB9CiAgICB3aGlsZSAoY2ggIT09IDApIHsKICAgICAgd2hpbGUgKGlzX1dISVRFX1NQQUNFKGNoKSkgewogICAgICAgIGNoID0gc3RhdGUuaW5wdXQuY2hhckNvZGVBdCgrK3N0YXRlLnBvc2l0aW9uKTsKICAgICAgfQogICAgICBpZiAoY2ggPT09IDM1KSB7CiAgICAgICAgZG8gewogICAgICAgICAgY2ggPSBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KCsrc3RhdGUucG9zaXRpb24pOwogICAgICAgIH0gd2hpbGUgKGNoICE9PSAwICYmICFpc19FT0woY2gpKTsKICAgICAgICBicmVhazsKICAgICAgfQogICAgICBpZiAoaXNfRU9MKGNoKSkgYnJlYWs7CiAgICAgIF9wb3NpdGlvbiA9IHN0YXRlLnBvc2l0aW9uOwogICAgICB3aGlsZSAoY2ggIT09IDAgJiYgIWlzX1dTX09SX0VPTChjaCkpIHsKICAgICAgICBjaCA9IHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoKytzdGF0ZS5wb3NpdGlvbik7CiAgICAgIH0KICAgICAgZGlyZWN0aXZlQXJncy5wdXNoKHN0YXRlLmlucHV0LnNsaWNlKF9wb3NpdGlvbiwgc3RhdGUucG9zaXRpb24pKTsKICAgIH0KICAgIGlmIChjaCAhPT0gMCkgcmVhZExpbmVCcmVhayhzdGF0ZSk7CiAgICBpZiAoX2hhc093blByb3BlcnR5JDEuY2FsbChkaXJlY3RpdmVIYW5kbGVycywgZGlyZWN0aXZlTmFtZSkpIHsKICAgICAgZGlyZWN0aXZlSGFuZGxlcnNbZGlyZWN0aXZlTmFtZV0oc3RhdGUsIGRpcmVjdGl2ZU5hbWUsIGRpcmVjdGl2ZUFyZ3MpOwogICAgfSBlbHNlIHsKICAgICAgdGhyb3dXYXJuaW5nKHN0YXRlLCAndW5rbm93biBkb2N1bWVudCBkaXJlY3RpdmUgIicgKyBkaXJlY3RpdmVOYW1lICsgJyInKTsKICAgIH0KICB9CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5saW5lSW5kZW50ID09PSAwICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24pID09PSA0NSAmJiBzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uICsgMSkgPT09IDQ1ICYmIHN0YXRlLmlucHV0LmNoYXJDb2RlQXQoc3RhdGUucG9zaXRpb24gKyAyKSA9PT0gNDUpIHsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICBza2lwU2VwYXJhdGlvblNwYWNlKHN0YXRlLCB0cnVlLCAtMSk7CiAgfSBlbHNlIGlmIChoYXNEaXJlY3RpdmVzKSB7CiAgICB0aHJvd0Vycm9yKHN0YXRlLCAiZGlyZWN0aXZlcyBlbmQgbWFyayBpcyBleHBlY3RlZCIpOwogIH0KICBjb21wb3NlTm9kZShzdGF0ZSwgc3RhdGUubGluZUluZGVudCAtIDEsIENPTlRFWFRfQkxPQ0tfT1VULCBmYWxzZSwgdHJ1ZSk7CiAgc2tpcFNlcGFyYXRpb25TcGFjZShzdGF0ZSwgdHJ1ZSwgLTEpOwogIGlmIChzdGF0ZS5jaGVja0xpbmVCcmVha3MgJiYgUEFUVEVSTl9OT05fQVNDSUlfTElORV9CUkVBS1MudGVzdChzdGF0ZS5pbnB1dC5zbGljZShkb2N1bWVudFN0YXJ0LCBzdGF0ZS5wb3NpdGlvbikpKSB7CiAgICB0aHJvd1dhcm5pbmcoc3RhdGUsICJub24tQVNDSUkgbGluZSBicmVha3MgYXJlIGludGVycHJldGVkIGFzIGNvbnRlbnQiKTsKICB9CiAgc3RhdGUuZG9jdW1lbnRzLnB1c2goc3RhdGUucmVzdWx0KTsKICBpZiAoc3RhdGUucG9zaXRpb24gPT09IHN0YXRlLmxpbmVTdGFydCAmJiB0ZXN0RG9jdW1lbnRTZXBhcmF0b3Ioc3RhdGUpKSB7CiAgICBpZiAoc3RhdGUuaW5wdXQuY2hhckNvZGVBdChzdGF0ZS5wb3NpdGlvbikgPT09IDQ2KSB7CiAgICAgIHN0YXRlLnBvc2l0aW9uICs9IDM7CiAgICAgIHNraXBTZXBhcmF0aW9uU3BhY2Uoc3RhdGUsIHRydWUsIC0xKTsKICAgIH0KICAgIHJldHVybjsKICB9CiAgaWYgKHN0YXRlLnBvc2l0aW9uIDwgc3RhdGUubGVuZ3RoIC0gMSkgewogICAgdGhyb3dFcnJvcihzdGF0ZSwgImVuZCBvZiB0aGUgc3RyZWFtIG9yIGEgZG9jdW1lbnQgc2VwYXJhdG9yIGlzIGV4cGVjdGVkIik7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KZnVuY3Rpb24gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucykgewogIGlucHV0ID0gU3RyaW5nKGlucHV0KTsKICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICBpZiAoaW5wdXQubGVuZ3RoICE9PSAwKSB7CiAgICBpZiAoaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTAgJiYgaW5wdXQuY2hhckNvZGVBdChpbnB1dC5sZW5ndGggLSAxKSAhPT0gMTMpIHsKICAgICAgaW5wdXQgKz0gIlxuIjsKICAgIH0KICAgIGlmIChpbnB1dC5jaGFyQ29kZUF0KDApID09PSA2NTI3OSkgewogICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKDEpOwogICAgfQogIH0KICB2YXIgc3RhdGUgPSBuZXcgU3RhdGUkMShpbnB1dCwgb3B0aW9ucyk7CiAgdmFyIG51bGxwb3MgPSBpbnB1dC5pbmRleE9mKCJcMCIpOwogIGlmIChudWxscG9zICE9PSAtMSkgewogICAgc3RhdGUucG9zaXRpb24gPSBudWxscG9zOwogICAgdGhyb3dFcnJvcihzdGF0ZSwgIm51bGwgYnl0ZSBpcyBub3QgYWxsb3dlZCBpbiBpbnB1dCIpOwogIH0KICBzdGF0ZS5pbnB1dCArPSAiXDAiOwogIHdoaWxlIChzdGF0ZS5pbnB1dC5jaGFyQ29kZUF0KHN0YXRlLnBvc2l0aW9uKSA9PT0gMzIpIHsKICAgIHN0YXRlLmxpbmVJbmRlbnQgKz0gMTsKICAgIHN0YXRlLnBvc2l0aW9uICs9IDE7CiAgfQogIHdoaWxlIChzdGF0ZS5wb3NpdGlvbiA8IHN0YXRlLmxlbmd0aCAtIDEpIHsKICAgIHJlYWREb2N1bWVudChzdGF0ZSk7CiAgfQogIHJldHVybiBzdGF0ZS5kb2N1bWVudHM7Cn0KZnVuY3Rpb24gbG9hZEFsbCQxKGlucHV0LCBpdGVyYXRvciwgb3B0aW9ucykgewogIGlmIChpdGVyYXRvciAhPT0gbnVsbCAmJiB0eXBlb2YgaXRlcmF0b3IgPT09ICJvYmplY3QiICYmIHR5cGVvZiBvcHRpb25zID09PSAidW5kZWZpbmVkIikgewogICAgb3B0aW9ucyA9IGl0ZXJhdG9yOwogICAgaXRlcmF0b3IgPSBudWxsOwogIH0KICB2YXIgZG9jdW1lbnRzID0gbG9hZERvY3VtZW50cyhpbnB1dCwgb3B0aW9ucyk7CiAgaWYgKHR5cGVvZiBpdGVyYXRvciAhPT0gImZ1bmN0aW9uIikgewogICAgcmV0dXJuIGRvY3VtZW50czsKICB9CiAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW5ndGggPSBkb2N1bWVudHMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgaXRlcmF0b3IoZG9jdW1lbnRzW2luZGV4XSk7CiAgfQp9CmZ1bmN0aW9uIGxvYWQkMShpbnB1dCwgb3B0aW9ucykgewogIHZhciBkb2N1bWVudHMgPSBsb2FkRG9jdW1lbnRzKGlucHV0LCBvcHRpb25zKTsKICBpZiAoZG9jdW1lbnRzLmxlbmd0aCA9PT0gMCkgewogICAgcmV0dXJuIHZvaWQgMDsKICB9IGVsc2UgaWYgKGRvY3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgIHJldHVybiBkb2N1bWVudHNbMF07CiAgfQogIHRocm93IG5ldyBleGNlcHRpb24oImV4cGVjdGVkIGEgc2luZ2xlIGRvY3VtZW50IGluIHRoZSBzdHJlYW0sIGJ1dCBmb3VuZCBtb3JlIik7Cn0KdmFyIGxvYWRBbGxfMSA9IGxvYWRBbGwkMTsKdmFyIGxvYWRfMSA9IGxvYWQkMTsKdmFyIGxvYWRlciA9IHsKICBsb2FkQWxsOiBsb2FkQWxsXzEsCiAgbG9hZDogbG9hZF8xCn07CnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwp2YXIgX2hhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKdmFyIENIQVJfQk9NID0gNjUyNzk7CnZhciBDSEFSX1RBQiA9IDk7CnZhciBDSEFSX0xJTkVfRkVFRCA9IDEwOwp2YXIgQ0hBUl9DQVJSSUFHRV9SRVRVUk4gPSAxMzsKdmFyIENIQVJfU1BBQ0UgPSAzMjsKdmFyIENIQVJfRVhDTEFNQVRJT04gPSAzMzsKdmFyIENIQVJfRE9VQkxFX1FVT1RFID0gMzQ7CnZhciBDSEFSX1NIQVJQID0gMzU7CnZhciBDSEFSX1BFUkNFTlQgPSAzNzsKdmFyIENIQVJfQU1QRVJTQU5EID0gMzg7CnZhciBDSEFSX1NJTkdMRV9RVU9URSA9IDM5Owp2YXIgQ0hBUl9BU1RFUklTSyA9IDQyOwp2YXIgQ0hBUl9DT01NQSA9IDQ0Owp2YXIgQ0hBUl9NSU5VUyA9IDQ1Owp2YXIgQ0hBUl9DT0xPTiA9IDU4Owp2YXIgQ0hBUl9FUVVBTFMgPSA2MTsKdmFyIENIQVJfR1JFQVRFUl9USEFOID0gNjI7CnZhciBDSEFSX1FVRVNUSU9OID0gNjM7CnZhciBDSEFSX0NPTU1FUkNJQUxfQVQgPSA2NDsKdmFyIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCA9IDkxOwp2YXIgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCA9IDkzOwp2YXIgQ0hBUl9HUkFWRV9BQ0NFTlQgPSA5NjsKdmFyIENIQVJfTEVGVF9DVVJMWV9CUkFDS0VUID0gMTIzOwp2YXIgQ0hBUl9WRVJUSUNBTF9MSU5FID0gMTI0Owp2YXIgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDS0VUID0gMTI1Owp2YXIgRVNDQVBFX1NFUVVFTkNFUyA9IHt9OwpFU0NBUEVfU0VRVUVOQ0VTWzBdID0gIlxcMCI7CkVTQ0FQRV9TRVFVRU5DRVNbN10gPSAiXFxhIjsKRVNDQVBFX1NFUVVFTkNFU1s4XSA9ICJcXGIiOwpFU0NBUEVfU0VRVUVOQ0VTWzldID0gIlxcdCI7CkVTQ0FQRV9TRVFVRU5DRVNbMTBdID0gIlxcbiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTFdID0gIlxcdiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTJdID0gIlxcZiI7CkVTQ0FQRV9TRVFVRU5DRVNbMTNdID0gIlxcciI7CkVTQ0FQRV9TRVFVRU5DRVNbMjddID0gIlxcZSI7CkVTQ0FQRV9TRVFVRU5DRVNbMzRdID0gJ1xcIic7CkVTQ0FQRV9TRVFVRU5DRVNbOTJdID0gIlxcXFwiOwpFU0NBUEVfU0VRVUVOQ0VTWzEzM10gPSAiXFxOIjsKRVNDQVBFX1NFUVVFTkNFU1sxNjBdID0gIlxcXyI7CkVTQ0FQRV9TRVFVRU5DRVNbODIzMl0gPSAiXFxMIjsKRVNDQVBFX1NFUVVFTkNFU1s4MjMzXSA9ICJcXFAiOwp2YXIgREVQUkVDQVRFRF9CT09MRUFOU19TWU5UQVggPSBbCiAgInkiLAogICJZIiwKICAieWVzIiwKICAiWWVzIiwKICAiWUVTIiwKICAib24iLAogICJPbiIsCiAgIk9OIiwKICAibiIsCiAgIk4iLAogICJubyIsCiAgIk5vIiwKICAiTk8iLAogICJvZmYiLAogICJPZmYiLAogICJPRkYiCl07CnZhciBERVBSRUNBVEVEX0JBU0U2MF9TWU5UQVggPSAvXlstK10/WzAtOV9dKyg/OjpbMC05X10rKSsoPzpcLlswLTlfXSopPyQvOwpmdW5jdGlvbiBjb21waWxlU3R5bGVNYXAoc2NoZW1hMiwgbWFwMikgewogIHZhciByZXN1bHQsIGtleXMsIGluZGV4LCBsZW5ndGgsIHRhZywgc3R5bGUsIHR5cGUyOwogIGlmIChtYXAyID09PSBudWxsKSByZXR1cm4ge307CiAgcmVzdWx0ID0ge307CiAga2V5cyA9IE9iamVjdC5rZXlzKG1hcDIpOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBrZXlzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHRhZyA9IGtleXNbaW5kZXhdOwogICAgc3R5bGUgPSBTdHJpbmcobWFwMlt0YWddKTsKICAgIGlmICh0YWcuc2xpY2UoMCwgMikgPT09ICIhISIpIHsKICAgICAgdGFnID0gInRhZzp5YW1sLm9yZywyMDAyOiIgKyB0YWcuc2xpY2UoMik7CiAgICB9CiAgICB0eXBlMiA9IHNjaGVtYTIuY29tcGlsZWRUeXBlTWFwWyJmYWxsYmFjayJdW3RhZ107CiAgICBpZiAodHlwZTIgJiYgX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIuc3R5bGVBbGlhc2VzLCBzdHlsZSkpIHsKICAgICAgc3R5bGUgPSB0eXBlMi5zdHlsZUFsaWFzZXNbc3R5bGVdOwogICAgfQogICAgcmVzdWx0W3RhZ10gPSBzdHlsZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBlbmNvZGVIZXgoY2hhcmFjdGVyKSB7CiAgdmFyIHN0cmluZywgaGFuZGxlLCBsZW5ndGg7CiAgc3RyaW5nID0gY2hhcmFjdGVyLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOwogIGlmIChjaGFyYWN0ZXIgPD0gMjU1KSB7CiAgICBoYW5kbGUgPSAieCI7CiAgICBsZW5ndGggPSAyOwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDY1NTM1KSB7CiAgICBoYW5kbGUgPSAidSI7CiAgICBsZW5ndGggPSA0OwogIH0gZWxzZSBpZiAoY2hhcmFjdGVyIDw9IDQyOTQ5NjcyOTUpIHsKICAgIGhhbmRsZSA9ICJVIjsKICAgIGxlbmd0aCA9IDg7CiAgfSBlbHNlIHsKICAgIHRocm93IG5ldyBleGNlcHRpb24oImNvZGUgcG9pbnQgd2l0aGluIGEgc3RyaW5nIG1heSBub3QgYmUgZ3JlYXRlciB0aGFuIDB4RkZGRkZGRkYiKTsKICB9CiAgcmV0dXJuICJcXCIgKyBoYW5kbGUgKyBjb21tb24ucmVwZWF0KCIwIiwgbGVuZ3RoIC0gc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7Cn0KdmFyIFFVT1RJTkdfVFlQRV9TSU5HTEUgPSAxOwp2YXIgUVVPVElOR19UWVBFX0RPVUJMRSA9IDI7CmZ1bmN0aW9uIFN0YXRlKG9wdGlvbnMpIHsKICB0aGlzLnNjaGVtYSA9IG9wdGlvbnNbInNjaGVtYSJdIHx8IF9kZWZhdWx0OwogIHRoaXMuaW5kZW50ID0gTWF0aC5tYXgoMSwgb3B0aW9uc1siaW5kZW50Il0gfHwgMik7CiAgdGhpcy5ub0FycmF5SW5kZW50ID0gb3B0aW9uc1sibm9BcnJheUluZGVudCJdIHx8IGZhbHNlOwogIHRoaXMuc2tpcEludmFsaWQgPSBvcHRpb25zWyJza2lwSW52YWxpZCJdIHx8IGZhbHNlOwogIHRoaXMuZmxvd0xldmVsID0gY29tbW9uLmlzTm90aGluZyhvcHRpb25zWyJmbG93TGV2ZWwiXSkgPyAtMSA6IG9wdGlvbnNbImZsb3dMZXZlbCJdOwogIHRoaXMuc3R5bGVNYXAgPSBjb21waWxlU3R5bGVNYXAodGhpcy5zY2hlbWEsIG9wdGlvbnNbInN0eWxlcyJdIHx8IG51bGwpOwogIHRoaXMuc29ydEtleXMgPSBvcHRpb25zWyJzb3J0S2V5cyJdIHx8IGZhbHNlOwogIHRoaXMubGluZVdpZHRoID0gb3B0aW9uc1sibGluZVdpZHRoIl0gfHwgODA7CiAgdGhpcy5ub1JlZnMgPSBvcHRpb25zWyJub1JlZnMiXSB8fCBmYWxzZTsKICB0aGlzLm5vQ29tcGF0TW9kZSA9IG9wdGlvbnNbIm5vQ29tcGF0TW9kZSJdIHx8IGZhbHNlOwogIHRoaXMuY29uZGVuc2VGbG93ID0gb3B0aW9uc1siY29uZGVuc2VGbG93Il0gfHwgZmFsc2U7CiAgdGhpcy5xdW90aW5nVHlwZSA9IG9wdGlvbnNbInF1b3RpbmdUeXBlIl0gPT09ICciJyA/IFFVT1RJTkdfVFlQRV9ET1VCTEUgOiBRVU9USU5HX1RZUEVfU0lOR0xFOwogIHRoaXMuZm9yY2VRdW90ZXMgPSBvcHRpb25zWyJmb3JjZVF1b3RlcyJdIHx8IGZhbHNlOwogIHRoaXMucmVwbGFjZXIgPSB0eXBlb2Ygb3B0aW9uc1sicmVwbGFjZXIiXSA9PT0gImZ1bmN0aW9uIiA/IG9wdGlvbnNbInJlcGxhY2VyIl0gOiBudWxsOwogIHRoaXMuaW1wbGljaXRUeXBlcyA9IHRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQ7CiAgdGhpcy5leHBsaWNpdFR5cGVzID0gdGhpcy5zY2hlbWEuY29tcGlsZWRFeHBsaWNpdDsKICB0aGlzLnRhZyA9IG51bGw7CiAgdGhpcy5yZXN1bHQgPSAiIjsKICB0aGlzLmR1cGxpY2F0ZXMgPSBbXTsKICB0aGlzLnVzZWREdXBsaWNhdGVzID0gbnVsbDsKfQpmdW5jdGlvbiBpbmRlbnRTdHJpbmcoc3RyaW5nLCBzcGFjZXMpIHsKICB2YXIgaW5kID0gY29tbW9uLnJlcGVhdCgiICIsIHNwYWNlcyksIHBvc2l0aW9uID0gMCwgbmV4dCA9IC0xLCByZXN1bHQgPSAiIiwgbGluZSwgbGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICB3aGlsZSAocG9zaXRpb24gPCBsZW5ndGgpIHsKICAgIG5leHQgPSBzdHJpbmcuaW5kZXhPZigiXG4iLCBwb3NpdGlvbik7CiAgICBpZiAobmV4dCA9PT0gLTEpIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbik7CiAgICAgIHBvc2l0aW9uID0gbGVuZ3RoOwogICAgfSBlbHNlIHsKICAgICAgbGluZSA9IHN0cmluZy5zbGljZShwb3NpdGlvbiwgbmV4dCArIDEpOwogICAgICBwb3NpdGlvbiA9IG5leHQgKyAxOwogICAgfQogICAgaWYgKGxpbmUubGVuZ3RoICYmIGxpbmUgIT09ICJcbiIpIHJlc3VsdCArPSBpbmQ7CiAgICByZXN1bHQgKz0gbGluZTsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCkgewogIHJldHVybiAiXG4iICsgY29tbW9uLnJlcGVhdCgiICIsIHN0YXRlLmluZGVudCAqIGxldmVsKTsKfQpmdW5jdGlvbiB0ZXN0SW1wbGljaXRSZXNvbHZpbmcoc3RhdGUsIHN0cjIpIHsKICB2YXIgaW5kZXgsIGxlbmd0aCwgdHlwZTI7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IHN0YXRlLmltcGxpY2l0VHlwZXMubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSBzdGF0ZS5pbXBsaWNpdFR5cGVzW2luZGV4XTsKICAgIGlmICh0eXBlMi5yZXNvbHZlKHN0cjIpKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gaXNXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gYyA9PT0gQ0hBUl9TUEFDRSB8fCBjID09PSBDSEFSX1RBQjsKfQpmdW5jdGlvbiBpc1ByaW50YWJsZShjKSB7CiAgcmV0dXJuIDMyIDw9IGMgJiYgYyA8PSAxMjYgfHwgMTYxIDw9IGMgJiYgYyA8PSA1NTI5NSAmJiBjICE9PSA4MjMyICYmIGMgIT09IDgyMzMgfHwgNTczNDQgPD0gYyAmJiBjIDw9IDY1NTMzICYmIGMgIT09IENIQVJfQk9NIHx8IDY1NTM2IDw9IGMgJiYgYyA8PSAxMTE0MTExOwp9CmZ1bmN0aW9uIGlzTnNDaGFyT3JXaGl0ZXNwYWNlKGMpIHsKICByZXR1cm4gaXNQcmludGFibGUoYykgJiYgYyAhPT0gQ0hBUl9CT00gJiYgYyAhPT0gQ0hBUl9DQVJSSUFHRV9SRVRVUk4gJiYgYyAhPT0gQ0hBUl9MSU5FX0ZFRUQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmUoYywgcHJldiwgaW5ibG9jaykgewogIHZhciBjSXNOc0NoYXJPcldoaXRlc3BhY2UgPSBpc05zQ2hhck9yV2hpdGVzcGFjZShjKTsKICB2YXIgY0lzTnNDaGFyID0gY0lzTnNDaGFyT3JXaGl0ZXNwYWNlICYmICFpc1doaXRlc3BhY2UoYyk7CiAgcmV0dXJuICgKICAgIC8vIG5zLXBsYWluLXNhZmUKICAgIChpbmJsb2NrID8gKAogICAgICAvLyBjID0gZmxvdy1pbgogICAgICBjSXNOc0NoYXJPcldoaXRlc3BhY2UKICAgICkgOiBjSXNOc0NoYXJPcldoaXRlc3BhY2UgJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQpICYmIGMgIT09IENIQVJfU0hBUlAgJiYgIShwcmV2ID09PSBDSEFSX0NPTE9OICYmICFjSXNOc0NoYXIpIHx8IGlzTnNDaGFyT3JXaGl0ZXNwYWNlKHByZXYpICYmICFpc1doaXRlc3BhY2UocHJldikgJiYgYyA9PT0gQ0hBUl9TSEFSUCB8fCBwcmV2ID09PSBDSEFSX0NPTE9OICYmIGNJc05zQ2hhcgogICk7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVGaXJzdChjKSB7CiAgcmV0dXJuIGlzUHJpbnRhYmxlKGMpICYmIGMgIT09IENIQVJfQk9NICYmICFpc1doaXRlc3BhY2UoYykgJiYgYyAhPT0gQ0hBUl9NSU5VUyAmJiBjICE9PSBDSEFSX1FVRVNUSU9OICYmIGMgIT09IENIQVJfQ09MT04gJiYgYyAhPT0gQ0hBUl9DT01NQSAmJiBjICE9PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0tFVCAmJiBjICE9PSBDSEFSX1JJR0hUX0NVUkxZX0JSQUNLRVQgJiYgYyAhPT0gQ0hBUl9TSEFSUCAmJiBjICE9PSBDSEFSX0FNUEVSU0FORCAmJiBjICE9PSBDSEFSX0FTVEVSSVNLICYmIGMgIT09IENIQVJfRVhDTEFNQVRJT04gJiYgYyAhPT0gQ0hBUl9WRVJUSUNBTF9MSU5FICYmIGMgIT09IENIQVJfRVFVQUxTICYmIGMgIT09IENIQVJfR1JFQVRFUl9USEFOICYmIGMgIT09IENIQVJfU0lOR0xFX1FVT1RFICYmIGMgIT09IENIQVJfRE9VQkxFX1FVT1RFICYmIGMgIT09IENIQVJfUEVSQ0VOVCAmJiBjICE9PSBDSEFSX0NPTU1FUkNJQUxfQVQgJiYgYyAhPT0gQ0hBUl9HUkFWRV9BQ0NFTlQ7Cn0KZnVuY3Rpb24gaXNQbGFpblNhZmVMYXN0KGMpIHsKICByZXR1cm4gIWlzV2hpdGVzcGFjZShjKSAmJiBjICE9PSBDSEFSX0NPTE9OOwp9CmZ1bmN0aW9uIGNvZGVQb2ludEF0KHN0cmluZywgcG9zKSB7CiAgdmFyIGZpcnN0ID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zKSwgc2Vjb25kOwogIGlmIChmaXJzdCA+PSA1NTI5NiAmJiBmaXJzdCA8PSA1NjMxOSAmJiBwb3MgKyAxIDwgc3RyaW5nLmxlbmd0aCkgewogICAgc2Vjb25kID0gc3RyaW5nLmNoYXJDb2RlQXQocG9zICsgMSk7CiAgICBpZiAoc2Vjb25kID49IDU2MzIwICYmIHNlY29uZCA8PSA1NzM0MykgewogICAgICByZXR1cm4gKGZpcnN0IC0gNTUyOTYpICogMTAyNCArIHNlY29uZCAtIDU2MzIwICsgNjU1MzY7CiAgICB9CiAgfQogIHJldHVybiBmaXJzdDsKfQpmdW5jdGlvbiBuZWVkSW5kZW50SW5kaWNhdG9yKHN0cmluZykgewogIHZhciBsZWFkaW5nU3BhY2VSZSA9IC9eXG4qIC87CiAgcmV0dXJuIGxlYWRpbmdTcGFjZVJlLnRlc3Qoc3RyaW5nKTsKfQp2YXIgU1RZTEVfUExBSU4gPSAxOwp2YXIgU1RZTEVfU0lOR0xFID0gMjsKdmFyIFNUWUxFX0xJVEVSQUwgPSAzOwp2YXIgU1RZTEVfRk9MREVEID0gNDsKdmFyIFNUWUxFX0RPVUJMRSA9IDU7CmZ1bmN0aW9uIGNob29zZVNjYWxhclN0eWxlKHN0cmluZywgc2luZ2xlTGluZU9ubHksIGluZGVudFBlckxldmVsLCBsaW5lV2lkdGgsIHRlc3RBbWJpZ3VvdXNUeXBlLCBxdW90aW5nVHlwZSwgZm9yY2VRdW90ZXMsIGluYmxvY2spIHsKICB2YXIgaTsKICB2YXIgY2hhciA9IDA7CiAgdmFyIHByZXZDaGFyID0gbnVsbDsKICB2YXIgaGFzTGluZUJyZWFrID0gZmFsc2U7CiAgdmFyIGhhc0ZvbGRhYmxlTGluZSA9IGZhbHNlOwogIHZhciBzaG91bGRUcmFja1dpZHRoID0gbGluZVdpZHRoICE9PSAtMTsKICB2YXIgcHJldmlvdXNMaW5lQnJlYWsgPSAtMTsKICB2YXIgcGxhaW4gPSBpc1BsYWluU2FmZUZpcnN0KGNvZGVQb2ludEF0KHN0cmluZywgMCkpICYmIGlzUGxhaW5TYWZlTGFzdChjb2RlUG9pbnRBdChzdHJpbmcsIHN0cmluZy5sZW5ndGggLSAxKSk7CiAgaWYgKHNpbmdsZUxpbmVPbmx5IHx8IGZvcmNlUXVvdGVzKSB7CiAgICBmb3IgKGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgY2hhciA+PSA2NTUzNiA/IGkgKz0gMiA6IGkrKykgewogICAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgICAgaWYgKCFpc1ByaW50YWJsZShjaGFyKSkgewogICAgICAgIHJldHVybiBTVFlMRV9ET1VCTEU7CiAgICAgIH0KICAgICAgcGxhaW4gPSBwbGFpbiAmJiBpc1BsYWluU2FmZShjaGFyLCBwcmV2Q2hhciwgaW5ibG9jayk7CiAgICAgIHByZXZDaGFyID0gY2hhcjsKICAgIH0KICB9IGVsc2UgewogICAgZm9yIChpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGNoYXIgPj0gNjU1MzYgPyBpICs9IDIgOiBpKyspIHsKICAgICAgY2hhciA9IGNvZGVQb2ludEF0KHN0cmluZywgaSk7CiAgICAgIGlmIChjaGFyID09PSBDSEFSX0xJTkVfRkVFRCkgewogICAgICAgIGhhc0xpbmVCcmVhayA9IHRydWU7CiAgICAgICAgaWYgKHNob3VsZFRyYWNrV2lkdGgpIHsKICAgICAgICAgIGhhc0ZvbGRhYmxlTGluZSA9IGhhc0ZvbGRhYmxlTGluZSB8fCAvLyBGb2xkYWJsZSBsaW5lID0gdG9vIGxvbmcsIGFuZCBub3QgbW9yZS1pbmRlbnRlZC4KICAgICAgICAgIGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIjsKICAgICAgICAgIHByZXZpb3VzTGluZUJyZWFrID0gaTsKICAgICAgICB9CiAgICAgIH0gZWxzZSBpZiAoIWlzUHJpbnRhYmxlKGNoYXIpKSB7CiAgICAgICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICAgICAgfQogICAgICBwbGFpbiA9IHBsYWluICYmIGlzUGxhaW5TYWZlKGNoYXIsIHByZXZDaGFyLCBpbmJsb2NrKTsKICAgICAgcHJldkNoYXIgPSBjaGFyOwogICAgfQogICAgaGFzRm9sZGFibGVMaW5lID0gaGFzRm9sZGFibGVMaW5lIHx8IHNob3VsZFRyYWNrV2lkdGggJiYgKGkgLSBwcmV2aW91c0xpbmVCcmVhayAtIDEgPiBsaW5lV2lkdGggJiYgc3RyaW5nW3ByZXZpb3VzTGluZUJyZWFrICsgMV0gIT09ICIgIik7CiAgfQogIGlmICghaGFzTGluZUJyZWFrICYmICFoYXNGb2xkYWJsZUxpbmUpIHsKICAgIGlmIChwbGFpbiAmJiAhZm9yY2VRdW90ZXMgJiYgIXRlc3RBbWJpZ3VvdXNUeXBlKHN0cmluZykpIHsKICAgICAgcmV0dXJuIFNUWUxFX1BMQUlOOwogICAgfQogICAgcmV0dXJuIHF1b3RpbmdUeXBlID09PSBRVU9USU5HX1RZUEVfRE9VQkxFID8gU1RZTEVfRE9VQkxFIDogU1RZTEVfU0lOR0xFOwogIH0KICBpZiAoaW5kZW50UGVyTGV2ZWwgPiA5ICYmIG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSkgewogICAgcmV0dXJuIFNUWUxFX0RPVUJMRTsKICB9CiAgaWYgKCFmb3JjZVF1b3RlcykgewogICAgcmV0dXJuIGhhc0ZvbGRhYmxlTGluZSA/IFNUWUxFX0ZPTERFRCA6IFNUWUxFX0xJVEVSQUw7CiAgfQogIHJldHVybiBxdW90aW5nVHlwZSA9PT0gUVVPVElOR19UWVBFX0RPVUJMRSA/IFNUWUxFX0RPVUJMRSA6IFNUWUxFX1NJTkdMRTsKfQpmdW5jdGlvbiB3cml0ZVNjYWxhcihzdGF0ZSwgc3RyaW5nLCBsZXZlbCwgaXNrZXksIGluYmxvY2spIHsKICBzdGF0ZS5kdW1wID0gZnVuY3Rpb24oKSB7CiAgICBpZiAoc3RyaW5nLmxlbmd0aCA9PT0gMCkgewogICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIiInIDogIicnIjsKICAgIH0KICAgIGlmICghc3RhdGUubm9Db21wYXRNb2RlKSB7CiAgICAgIGlmIChERVBSRUNBVEVEX0JPT0xFQU5TX1NZTlRBWC5pbmRleE9mKHN0cmluZykgIT09IC0xIHx8IERFUFJFQ0FURURfQkFTRTYwX1NZTlRBWC50ZXN0KHN0cmluZykpIHsKICAgICAgICByZXR1cm4gc3RhdGUucXVvdGluZ1R5cGUgPT09IFFVT1RJTkdfVFlQRV9ET1VCTEUgPyAnIicgKyBzdHJpbmcgKyAnIicgOiAiJyIgKyBzdHJpbmcgKyAiJyI7CiAgICAgIH0KICAgIH0KICAgIHZhciBpbmRlbnQgPSBzdGF0ZS5pbmRlbnQgKiBNYXRoLm1heCgxLCBsZXZlbCk7CiAgICB2YXIgbGluZVdpZHRoID0gc3RhdGUubGluZVdpZHRoID09PSAtMSA/IC0xIDogTWF0aC5tYXgoTWF0aC5taW4oc3RhdGUubGluZVdpZHRoLCA0MCksIHN0YXRlLmxpbmVXaWR0aCAtIGluZGVudCk7CiAgICB2YXIgc2luZ2xlTGluZU9ubHkgPSBpc2tleSB8fCBzdGF0ZS5mbG93TGV2ZWwgPiAtMSAmJiBsZXZlbCA+PSBzdGF0ZS5mbG93TGV2ZWw7CiAgICBmdW5jdGlvbiB0ZXN0QW1iaWd1aXR5KHN0cmluZzIpIHsKICAgICAgcmV0dXJuIHRlc3RJbXBsaWNpdFJlc29sdmluZyhzdGF0ZSwgc3RyaW5nMik7CiAgICB9CiAgICBzd2l0Y2ggKGNob29zZVNjYWxhclN0eWxlKAogICAgICBzdHJpbmcsCiAgICAgIHNpbmdsZUxpbmVPbmx5LAogICAgICBzdGF0ZS5pbmRlbnQsCiAgICAgIGxpbmVXaWR0aCwKICAgICAgdGVzdEFtYmlndWl0eSwKICAgICAgc3RhdGUucXVvdGluZ1R5cGUsCiAgICAgIHN0YXRlLmZvcmNlUXVvdGVzICYmICFpc2tleSwKICAgICAgaW5ibG9jawogICAgKSkgewogICAgICBjYXNlIFNUWUxFX1BMQUlOOgogICAgICAgIHJldHVybiBzdHJpbmc7CiAgICAgIGNhc2UgU1RZTEVfU0lOR0xFOgogICAgICAgIHJldHVybiAiJyIgKyBzdHJpbmcucmVwbGFjZSgvJy9nLCAiJyciKSArICInIjsKICAgICAgY2FzZSBTVFlMRV9MSVRFUkFMOgogICAgICAgIHJldHVybiAifCIgKyBibG9ja0hlYWRlcihzdHJpbmcsIHN0YXRlLmluZGVudCkgKyBkcm9wRW5kaW5nTmV3bGluZShpbmRlbnRTdHJpbmcoc3RyaW5nLCBpbmRlbnQpKTsKICAgICAgY2FzZSBTVFlMRV9GT0xERUQ6CiAgICAgICAgcmV0dXJuICI+IiArIGJsb2NrSGVhZGVyKHN0cmluZywgc3RhdGUuaW5kZW50KSArIGRyb3BFbmRpbmdOZXdsaW5lKGluZGVudFN0cmluZyhmb2xkU3RyaW5nKHN0cmluZywgbGluZVdpZHRoKSwgaW5kZW50KSk7CiAgICAgIGNhc2UgU1RZTEVfRE9VQkxFOgogICAgICAgIHJldHVybiAnIicgKyBlc2NhcGVTdHJpbmcoc3RyaW5nKSArICciJzsKICAgICAgZGVmYXVsdDoKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCJpbXBvc3NpYmxlIGVycm9yOiBpbnZhbGlkIHNjYWxhciBzdHlsZSIpOwogICAgfQogIH0oKTsKfQpmdW5jdGlvbiBibG9ja0hlYWRlcihzdHJpbmcsIGluZGVudFBlckxldmVsKSB7CiAgdmFyIGluZGVudEluZGljYXRvciA9IG5lZWRJbmRlbnRJbmRpY2F0b3Ioc3RyaW5nKSA/IFN0cmluZyhpbmRlbnRQZXJMZXZlbCkgOiAiIjsKICB2YXIgY2xpcCA9IHN0cmluZ1tzdHJpbmcubGVuZ3RoIC0gMV0gPT09ICJcbiI7CiAgdmFyIGtlZXAgPSBjbGlwICYmIChzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDJdID09PSAiXG4iIHx8IHN0cmluZyA9PT0gIlxuIik7CiAgdmFyIGNob21wID0ga2VlcCA/ICIrIiA6IGNsaXAgPyAiIiA6ICItIjsKICByZXR1cm4gaW5kZW50SW5kaWNhdG9yICsgY2hvbXAgKyAiXG4iOwp9CmZ1bmN0aW9uIGRyb3BFbmRpbmdOZXdsaW5lKHN0cmluZykgewogIHJldHVybiBzdHJpbmdbc3RyaW5nLmxlbmd0aCAtIDFdID09PSAiXG4iID8gc3RyaW5nLnNsaWNlKDAsIC0xKSA6IHN0cmluZzsKfQpmdW5jdGlvbiBmb2xkU3RyaW5nKHN0cmluZywgd2lkdGgpIHsKICB2YXIgbGluZVJlID0gLyhcbispKFteXG5dKikvZzsKICB2YXIgcmVzdWx0ID0gZnVuY3Rpb24oKSB7CiAgICB2YXIgbmV4dExGID0gc3RyaW5nLmluZGV4T2YoIlxuIik7CiAgICBuZXh0TEYgPSBuZXh0TEYgIT09IC0xID8gbmV4dExGIDogc3RyaW5nLmxlbmd0aDsKICAgIGxpbmVSZS5sYXN0SW5kZXggPSBuZXh0TEY7CiAgICByZXR1cm4gZm9sZExpbmUoc3RyaW5nLnNsaWNlKDAsIG5leHRMRiksIHdpZHRoKTsKICB9KCk7CiAgdmFyIHByZXZNb3JlSW5kZW50ZWQgPSBzdHJpbmdbMF0gPT09ICJcbiIgfHwgc3RyaW5nWzBdID09PSAiICI7CiAgdmFyIG1vcmVJbmRlbnRlZDsKICB2YXIgbWF0Y2g7CiAgd2hpbGUgKG1hdGNoID0gbGluZVJlLmV4ZWMoc3RyaW5nKSkgewogICAgdmFyIHByZWZpeCA9IG1hdGNoWzFdLCBsaW5lID0gbWF0Y2hbMl07CiAgICBtb3JlSW5kZW50ZWQgPSBsaW5lWzBdID09PSAiICI7CiAgICByZXN1bHQgKz0gcHJlZml4ICsgKCFwcmV2TW9yZUluZGVudGVkICYmICFtb3JlSW5kZW50ZWQgJiYgbGluZSAhPT0gIiIgPyAiXG4iIDogIiIpICsgZm9sZExpbmUobGluZSwgd2lkdGgpOwogICAgcHJldk1vcmVJbmRlbnRlZCA9IG1vcmVJbmRlbnRlZDsKICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiBmb2xkTGluZShsaW5lLCB3aWR0aCkgewogIGlmIChsaW5lID09PSAiIiB8fCBsaW5lWzBdID09PSAiICIpIHJldHVybiBsaW5lOwogIHZhciBicmVha1JlID0gLyBbXiBdL2c7CiAgdmFyIG1hdGNoOwogIHZhciBzdGFydCA9IDAsIGVuZCwgY3VyciA9IDAsIG5leHQgPSAwOwogIHZhciByZXN1bHQgPSAiIjsKICB3aGlsZSAobWF0Y2ggPSBicmVha1JlLmV4ZWMobGluZSkpIHsKICAgIG5leHQgPSBtYXRjaC5pbmRleDsKICAgIGlmIChuZXh0IC0gc3RhcnQgPiB3aWR0aCkgewogICAgICBlbmQgPSBjdXJyID4gc3RhcnQgPyBjdXJyIDogbmV4dDsKICAgICAgcmVzdWx0ICs9ICJcbiIgKyBsaW5lLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICBzdGFydCA9IGVuZCArIDE7CiAgICB9CiAgICBjdXJyID0gbmV4dDsKICB9CiAgcmVzdWx0ICs9ICJcbiI7CiAgaWYgKGxpbmUubGVuZ3RoIC0gc3RhcnQgPiB3aWR0aCAmJiBjdXJyID4gc3RhcnQpIHsKICAgIHJlc3VsdCArPSBsaW5lLnNsaWNlKHN0YXJ0LCBjdXJyKSArICJcbiIgKyBsaW5lLnNsaWNlKGN1cnIgKyAxKTsKICB9IGVsc2UgewogICAgcmVzdWx0ICs9IGxpbmUuc2xpY2Uoc3RhcnQpOwogIH0KICByZXR1cm4gcmVzdWx0LnNsaWNlKDEpOwp9CmZ1bmN0aW9uIGVzY2FwZVN0cmluZyhzdHJpbmcpIHsKICB2YXIgcmVzdWx0ID0gIiI7CiAgdmFyIGNoYXIgPSAwOwogIHZhciBlc2NhcGVTZXE7CiAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHJpbmcubGVuZ3RoOyBjaGFyID49IDY1NTM2ID8gaSArPSAyIDogaSsrKSB7CiAgICBjaGFyID0gY29kZVBvaW50QXQoc3RyaW5nLCBpKTsKICAgIGVzY2FwZVNlcSA9IEVTQ0FQRV9TRVFVRU5DRVNbY2hhcl07CiAgICBpZiAoIWVzY2FwZVNlcSAmJiBpc1ByaW50YWJsZShjaGFyKSkgewogICAgICByZXN1bHQgKz0gc3RyaW5nW2ldOwogICAgICBpZiAoY2hhciA+PSA2NTUzNikgcmVzdWx0ICs9IHN0cmluZ1tpICsgMV07CiAgICB9IGVsc2UgewogICAgICByZXN1bHQgKz0gZXNjYXBlU2VxIHx8IGVuY29kZUhleChjaGFyKTsKICAgIH0KICB9CiAgcmV0dXJuIHJlc3VsdDsKfQpmdW5jdGlvbiB3cml0ZUZsb3dTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIG9iamVjdCkgewogIHZhciBfcmVzdWx0ID0gIiIsIF90YWcgPSBzdGF0ZS50YWcsIGluZGV4LCBsZW5ndGgsIHZhbHVlOwogIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdmFsdWUgPSBvYmplY3RbaW5kZXhdOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIHZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIFN0cmluZyhpbmRleCksIHZhbHVlKTsKICAgIH0KICAgIGlmICh3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCB2YWx1ZSwgZmFsc2UsIGZhbHNlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICJ1bmRlZmluZWQiICYmIHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwsIG51bGwsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgaWYgKF9yZXN1bHQgIT09ICIiKSBfcmVzdWx0ICs9ICIsIiArICghc3RhdGUuY29uZGVuc2VGbG93ID8gIiAiIDogIiIpOwogICAgICBfcmVzdWx0ICs9IHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJbIiArIF9yZXN1bHQgKyAiXSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja1NlcXVlbmNlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBjb21wYWN0KSB7CiAgdmFyIF9yZXN1bHQgPSAiIiwgX3RhZyA9IHN0YXRlLnRhZywgaW5kZXgsIGxlbmd0aCwgdmFsdWU7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICB2YWx1ZSA9IG9iamVjdFtpbmRleF07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgdmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgU3RyaW5nKGluZGV4KSwgdmFsdWUpOwogICAgfQogICAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCB2YWx1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUpIHx8IHR5cGVvZiB2YWx1ZSA9PT0gInVuZGVmaW5lZCIgJiYgd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCArIDEsIG51bGwsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlKSkgewogICAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgICBfcmVzdWx0ICs9IGdlbmVyYXRlTmV4dExpbmUoc3RhdGUsIGxldmVsKTsKICAgICAgfQogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgX3Jlc3VsdCArPSAiLSAiOwogICAgICB9CiAgICAgIF9yZXN1bHQgKz0gc3RhdGUuZHVtcDsKICAgIH0KICB9CiAgc3RhdGUudGFnID0gX3RhZzsKICBzdGF0ZS5kdW1wID0gX3Jlc3VsdCB8fCAiW10iOwp9CmZ1bmN0aW9uIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgcGFpckJ1ZmZlcjsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoX3Jlc3VsdCAhPT0gIiIpIHBhaXJCdWZmZXIgKz0gIiwgIjsKICAgIGlmIChzdGF0ZS5jb25kZW5zZUZsb3cpIHBhaXJCdWZmZXIgKz0gJyInOwogICAgb2JqZWN0S2V5ID0gb2JqZWN0S2V5TGlzdFtpbmRleF07CiAgICBvYmplY3RWYWx1ZSA9IG9iamVjdFtvYmplY3RLZXldOwogICAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICAgIG9iamVjdFZhbHVlID0gc3RhdGUucmVwbGFjZXIuY2FsbChvYmplY3QsIG9iamVjdEtleSwgb2JqZWN0VmFsdWUpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsLCBvYmplY3RLZXksIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0KSBwYWlyQnVmZmVyICs9ICI/ICI7CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXAgKyAoc3RhdGUuY29uZGVuc2VGbG93ID8gJyInIDogIiIpICsgIjoiICsgKHN0YXRlLmNvbmRlbnNlRmxvdyA/ICIiIDogIiAiKTsKICAgIGlmICghd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0VmFsdWUsIGZhbHNlLCBmYWxzZSkpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBfcmVzdWx0ICs9IHBhaXJCdWZmZXI7CiAgfQogIHN0YXRlLnRhZyA9IF90YWc7CiAgc3RhdGUuZHVtcCA9ICJ7IiArIF9yZXN1bHQgKyAifSI7Cn0KZnVuY3Rpb24gd3JpdGVCbG9ja01hcHBpbmcoc3RhdGUsIGxldmVsLCBvYmplY3QsIGNvbXBhY3QpIHsKICB2YXIgX3Jlc3VsdCA9ICIiLCBfdGFnID0gc3RhdGUudGFnLCBvYmplY3RLZXlMaXN0ID0gT2JqZWN0LmtleXMob2JqZWN0KSwgaW5kZXgsIGxlbmd0aCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSwgZXhwbGljaXRQYWlyLCBwYWlyQnVmZmVyOwogIGlmIChzdGF0ZS5zb3J0S2V5cyA9PT0gdHJ1ZSkgewogICAgb2JqZWN0S2V5TGlzdC5zb3J0KCk7CiAgfSBlbHNlIGlmICh0eXBlb2Ygc3RhdGUuc29ydEtleXMgPT09ICJmdW5jdGlvbiIpIHsKICAgIG9iamVjdEtleUxpc3Quc29ydChzdGF0ZS5zb3J0S2V5cyk7CiAgfSBlbHNlIGlmIChzdGF0ZS5zb3J0S2V5cykgewogICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigic29ydEtleXMgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBmdW5jdGlvbiIpOwogIH0KICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gb2JqZWN0S2V5TGlzdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICBwYWlyQnVmZmVyID0gIiI7CiAgICBpZiAoIWNvbXBhY3QgfHwgX3Jlc3VsdCAhPT0gIiIpIHsKICAgICAgcGFpckJ1ZmZlciArPSBnZW5lcmF0ZU5leHRMaW5lKHN0YXRlLCBsZXZlbCk7CiAgICB9CiAgICBvYmplY3RLZXkgPSBvYmplY3RLZXlMaXN0W2luZGV4XTsKICAgIG9iamVjdFZhbHVlID0gb2JqZWN0W29iamVjdEtleV07CiAgICBpZiAoc3RhdGUucmVwbGFjZXIpIHsKICAgICAgb2JqZWN0VmFsdWUgPSBzdGF0ZS5yZXBsYWNlci5jYWxsKG9iamVjdCwgb2JqZWN0S2V5LCBvYmplY3RWYWx1ZSk7CiAgICB9CiAgICBpZiAoIXdyaXRlTm9kZShzdGF0ZSwgbGV2ZWwgKyAxLCBvYmplY3RLZXksIHRydWUsIHRydWUsIHRydWUpKSB7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgZXhwbGljaXRQYWlyID0gc3RhdGUudGFnICE9PSBudWxsICYmIHN0YXRlLnRhZyAhPT0gIj8iIHx8IHN0YXRlLmR1bXAgJiYgc3RhdGUuZHVtcC5sZW5ndGggPiAxMDI0OwogICAgaWYgKGV4cGxpY2l0UGFpcikgewogICAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcGFpckJ1ZmZlciArPSAiPyAiOwogICAgICB9CiAgICB9CiAgICBwYWlyQnVmZmVyICs9IHN0YXRlLmR1bXA7CiAgICBpZiAoZXhwbGljaXRQYWlyKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gZ2VuZXJhdGVOZXh0TGluZShzdGF0ZSwgbGV2ZWwpOwogICAgfQogICAgaWYgKCF3cml0ZU5vZGUoc3RhdGUsIGxldmVsICsgMSwgb2JqZWN0VmFsdWUsIHRydWUsIGV4cGxpY2l0UGFpcikpIHsKICAgICAgY29udGludWU7CiAgICB9CiAgICBpZiAoc3RhdGUuZHVtcCAmJiBDSEFSX0xJTkVfRkVFRCA9PT0gc3RhdGUuZHVtcC5jaGFyQ29kZUF0KDApKSB7CiAgICAgIHBhaXJCdWZmZXIgKz0gIjoiOwogICAgfSBlbHNlIHsKICAgICAgcGFpckJ1ZmZlciArPSAiOiAiOwogICAgfQogICAgcGFpckJ1ZmZlciArPSBzdGF0ZS5kdW1wOwogICAgX3Jlc3VsdCArPSBwYWlyQnVmZmVyOwogIH0KICBzdGF0ZS50YWcgPSBfdGFnOwogIHN0YXRlLmR1bXAgPSBfcmVzdWx0IHx8ICJ7fSI7Cn0KZnVuY3Rpb24gZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCBleHBsaWNpdCkgewogIHZhciBfcmVzdWx0LCB0eXBlTGlzdCwgaW5kZXgsIGxlbmd0aCwgdHlwZTIsIHN0eWxlOwogIHR5cGVMaXN0ID0gZXhwbGljaXQgPyBzdGF0ZS5leHBsaWNpdFR5cGVzIDogc3RhdGUuaW1wbGljaXRUeXBlczsKICBmb3IgKGluZGV4ID0gMCwgbGVuZ3RoID0gdHlwZUxpc3QubGVuZ3RoOyBpbmRleCA8IGxlbmd0aDsgaW5kZXggKz0gMSkgewogICAgdHlwZTIgPSB0eXBlTGlzdFtpbmRleF07CiAgICBpZiAoKHR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZTIucHJlZGljYXRlKSAmJiAoIXR5cGUyLmluc3RhbmNlT2YgfHwgdHlwZW9mIG9iamVjdCA9PT0gIm9iamVjdCIgJiYgb2JqZWN0IGluc3RhbmNlb2YgdHlwZTIuaW5zdGFuY2VPZikgJiYgKCF0eXBlMi5wcmVkaWNhdGUgfHwgdHlwZTIucHJlZGljYXRlKG9iamVjdCkpKSB7CiAgICAgIGlmIChleHBsaWNpdCkgewogICAgICAgIGlmICh0eXBlMi5tdWx0aSAmJiB0eXBlMi5yZXByZXNlbnROYW1lKSB7CiAgICAgICAgICBzdGF0ZS50YWcgPSB0eXBlMi5yZXByZXNlbnROYW1lKG9iamVjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHN0YXRlLnRhZyA9IHR5cGUyLnRhZzsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgc3RhdGUudGFnID0gIj8iOwogICAgICB9CiAgICAgIGlmICh0eXBlMi5yZXByZXNlbnQpIHsKICAgICAgICBzdHlsZSA9IHN0YXRlLnN0eWxlTWFwW3R5cGUyLnRhZ10gfHwgdHlwZTIuZGVmYXVsdFN0eWxlOwogICAgICAgIGlmIChfdG9TdHJpbmcuY2FsbCh0eXBlMi5yZXByZXNlbnQpID09PSAiW29iamVjdCBGdW5jdGlvbl0iKSB7CiAgICAgICAgICBfcmVzdWx0ID0gdHlwZTIucmVwcmVzZW50KG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSBpZiAoX2hhc093blByb3BlcnR5LmNhbGwodHlwZTIucmVwcmVzZW50LCBzdHlsZSkpIHsKICAgICAgICAgIF9yZXN1bHQgPSB0eXBlMi5yZXByZXNlbnRbc3R5bGVdKG9iamVjdCwgc3R5bGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uKCIhPCIgKyB0eXBlMi50YWcgKyAnPiB0YWcgcmVzb2x2ZXIgYWNjZXB0cyBub3QgIicgKyBzdHlsZSArICciIHN0eWxlJyk7CiAgICAgICAgfQogICAgICAgIHN0YXRlLmR1bXAgPSBfcmVzdWx0OwogICAgICB9CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogIH0KICByZXR1cm4gZmFsc2U7Cn0KZnVuY3Rpb24gd3JpdGVOb2RlKHN0YXRlLCBsZXZlbCwgb2JqZWN0LCBibG9jaywgY29tcGFjdCwgaXNrZXksIGlzYmxvY2tzZXEpIHsKICBzdGF0ZS50YWcgPSBudWxsOwogIHN0YXRlLmR1bXAgPSBvYmplY3Q7CiAgaWYgKCFkZXRlY3RUeXBlKHN0YXRlLCBvYmplY3QsIGZhbHNlKSkgewogICAgZGV0ZWN0VHlwZShzdGF0ZSwgb2JqZWN0LCB0cnVlKTsKICB9CiAgdmFyIHR5cGUyID0gX3RvU3RyaW5nLmNhbGwoc3RhdGUuZHVtcCk7CiAgdmFyIGluYmxvY2sgPSBibG9jazsKICB2YXIgdGFnU3RyOwogIGlmIChibG9jaykgewogICAgYmxvY2sgPSBzdGF0ZS5mbG93TGV2ZWwgPCAwIHx8IHN0YXRlLmZsb3dMZXZlbCA+IGxldmVsOwogIH0KICB2YXIgb2JqZWN0T3JBcnJheSA9IHR5cGUyID09PSAiW29iamVjdCBPYmplY3RdIiB8fCB0eXBlMiA9PT0gIltvYmplY3QgQXJyYXldIiwgZHVwbGljYXRlSW5kZXgsIGR1cGxpY2F0ZTsKICBpZiAob2JqZWN0T3JBcnJheSkgewogICAgZHVwbGljYXRlSW5kZXggPSBzdGF0ZS5kdXBsaWNhdGVzLmluZGV4T2Yob2JqZWN0KTsKICAgIGR1cGxpY2F0ZSA9IGR1cGxpY2F0ZUluZGV4ICE9PSAtMTsKICB9CiAgaWYgKHN0YXRlLnRhZyAhPT0gbnVsbCAmJiBzdGF0ZS50YWcgIT09ICI/IiB8fCBkdXBsaWNhdGUgfHwgc3RhdGUuaW5kZW50ICE9PSAyICYmIGxldmVsID4gMCkgewogICAgY29tcGFjdCA9IGZhbHNlOwogIH0KICBpZiAoZHVwbGljYXRlICYmIHN0YXRlLnVzZWREdXBsaWNhdGVzW2R1cGxpY2F0ZUluZGV4XSkgewogICAgc3RhdGUuZHVtcCA9ICIqcmVmXyIgKyBkdXBsaWNhdGVJbmRleDsKICB9IGVsc2UgewogICAgaWYgKG9iamVjdE9yQXJyYXkgJiYgZHVwbGljYXRlICYmICFzdGF0ZS51c2VkRHVwbGljYXRlc1tkdXBsaWNhdGVJbmRleF0pIHsKICAgICAgc3RhdGUudXNlZER1cGxpY2F0ZXNbZHVwbGljYXRlSW5kZXhdID0gdHJ1ZTsKICAgIH0KICAgIGlmICh0eXBlMiA9PT0gIltvYmplY3QgT2JqZWN0XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIE9iamVjdC5rZXlzKHN0YXRlLmR1bXApLmxlbmd0aCAhPT0gMCkgewogICAgICAgIHdyaXRlQmxvY2tNYXBwaW5nKHN0YXRlLCBsZXZlbCwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgaWYgKGR1cGxpY2F0ZSkgewogICAgICAgICAgc3RhdGUuZHVtcCA9ICImcmVmXyIgKyBkdXBsaWNhdGVJbmRleCArIHN0YXRlLmR1bXA7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHdyaXRlRmxvd01hcHBpbmcoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IEFycmF5XSIpIHsKICAgICAgaWYgKGJsb2NrICYmIHN0YXRlLmR1bXAubGVuZ3RoICE9PSAwKSB7CiAgICAgICAgaWYgKHN0YXRlLm5vQXJyYXlJbmRlbnQgJiYgIWlzYmxvY2tzZXEgJiYgbGV2ZWwgPiAwKSB7CiAgICAgICAgICB3cml0ZUJsb2NrU2VxdWVuY2Uoc3RhdGUsIGxldmVsIC0gMSwgc3RhdGUuZHVtcCwgY29tcGFjdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHdyaXRlQmxvY2tTZXF1ZW5jZShzdGF0ZSwgbGV2ZWwsIHN0YXRlLmR1bXAsIGNvbXBhY3QpOwogICAgICAgIH0KICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgd3JpdGVGbG93U2VxdWVuY2Uoc3RhdGUsIGxldmVsLCBzdGF0ZS5kdW1wKTsKICAgICAgICBpZiAoZHVwbGljYXRlKSB7CiAgICAgICAgICBzdGF0ZS5kdW1wID0gIiZyZWZfIiArIGR1cGxpY2F0ZUluZGV4ICsgIiAiICsgc3RhdGUuZHVtcDsKICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAodHlwZTIgPT09ICJbb2JqZWN0IFN0cmluZ10iKSB7CiAgICAgIGlmIChzdGF0ZS50YWcgIT09ICI/IikgewogICAgICAgIHdyaXRlU2NhbGFyKHN0YXRlLCBzdGF0ZS5kdW1wLCBsZXZlbCwgaXNrZXksIGluYmxvY2spOwogICAgICB9CiAgICB9IGVsc2UgaWYgKHR5cGUyID09PSAiW29iamVjdCBVbmRlZmluZWRdIikgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9IGVsc2UgewogICAgICBpZiAoc3RhdGUuc2tpcEludmFsaWQpIHJldHVybiBmYWxzZTsKICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbigidW5hY2NlcHRhYmxlIGtpbmQgb2YgYW4gb2JqZWN0IHRvIGR1bXAgIiArIHR5cGUyKTsKICAgIH0KICAgIGlmIChzdGF0ZS50YWcgIT09IG51bGwgJiYgc3RhdGUudGFnICE9PSAiPyIpIHsKICAgICAgdGFnU3RyID0gZW5jb2RlVVJJKAogICAgICAgIHN0YXRlLnRhZ1swXSA9PT0gIiEiID8gc3RhdGUudGFnLnNsaWNlKDEpIDogc3RhdGUudGFnCiAgICAgICkucmVwbGFjZSgvIS9nLCAiJTIxIik7CiAgICAgIGlmIChzdGF0ZS50YWdbMF0gPT09ICIhIikgewogICAgICAgIHRhZ1N0ciA9ICIhIiArIHRhZ1N0cjsKICAgICAgfSBlbHNlIGlmICh0YWdTdHIuc2xpY2UoMCwgMTgpID09PSAidGFnOnlhbWwub3JnLDIwMDI6IikgewogICAgICAgIHRhZ1N0ciA9ICIhISIgKyB0YWdTdHIuc2xpY2UoMTgpOwogICAgICB9IGVsc2UgewogICAgICAgIHRhZ1N0ciA9ICIhPCIgKyB0YWdTdHIgKyAiPiI7CiAgICAgIH0KICAgICAgc3RhdGUuZHVtcCA9IHRhZ1N0ciArICIgIiArIHN0YXRlLmR1bXA7CiAgICB9CiAgfQogIHJldHVybiB0cnVlOwp9CmZ1bmN0aW9uIGdldER1cGxpY2F0ZVJlZmVyZW5jZXMob2JqZWN0LCBzdGF0ZSkgewogIHZhciBvYmplY3RzID0gW10sIGR1cGxpY2F0ZXNJbmRleGVzID0gW10sIGluZGV4LCBsZW5ndGg7CiAgaW5zcGVjdE5vZGUob2JqZWN0LCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IGR1cGxpY2F0ZXNJbmRleGVzLmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgIHN0YXRlLmR1cGxpY2F0ZXMucHVzaChvYmplY3RzW2R1cGxpY2F0ZXNJbmRleGVzW2luZGV4XV0pOwogIH0KICBzdGF0ZS51c2VkRHVwbGljYXRlcyA9IG5ldyBBcnJheShsZW5ndGgpOwp9CmZ1bmN0aW9uIGluc3BlY3ROb2RlKG9iamVjdCwgb2JqZWN0cywgZHVwbGljYXRlc0luZGV4ZXMpIHsKICB2YXIgb2JqZWN0S2V5TGlzdCwgaW5kZXgsIGxlbmd0aDsKICBpZiAob2JqZWN0ICE9PSBudWxsICYmIHR5cGVvZiBvYmplY3QgPT09ICJvYmplY3QiKSB7CiAgICBpbmRleCA9IG9iamVjdHMuaW5kZXhPZihvYmplY3QpOwogICAgaWYgKGluZGV4ICE9PSAtMSkgewogICAgICBpZiAoZHVwbGljYXRlc0luZGV4ZXMuaW5kZXhPZihpbmRleCkgPT09IC0xKSB7CiAgICAgICAgZHVwbGljYXRlc0luZGV4ZXMucHVzaChpbmRleCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIG9iamVjdHMucHVzaChvYmplY3QpOwogICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7CiAgICAgICAgZm9yIChpbmRleCA9IDAsIGxlbmd0aCA9IG9iamVjdC5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCArPSAxKSB7CiAgICAgICAgICBpbnNwZWN0Tm9kZShvYmplY3RbaW5kZXhdLCBvYmplY3RzLCBkdXBsaWNhdGVzSW5kZXhlcyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIG9iamVjdEtleUxpc3QgPSBPYmplY3Qua2V5cyhvYmplY3QpOwogICAgICAgIGZvciAoaW5kZXggPSAwLCBsZW5ndGggPSBvYmplY3RLZXlMaXN0Lmxlbmd0aDsgaW5kZXggPCBsZW5ndGg7IGluZGV4ICs9IDEpIHsKICAgICAgICAgIGluc3BlY3ROb2RlKG9iamVjdFtvYmplY3RLZXlMaXN0W2luZGV4XV0sIG9iamVjdHMsIGR1cGxpY2F0ZXNJbmRleGVzKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0KZnVuY3Rpb24gZHVtcCQxKGlucHV0LCBvcHRpb25zKSB7CiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgdmFyIHN0YXRlID0gbmV3IFN0YXRlKG9wdGlvbnMpOwogIGlmICghc3RhdGUubm9SZWZzKSBnZXREdXBsaWNhdGVSZWZlcmVuY2VzKGlucHV0LCBzdGF0ZSk7CiAgdmFyIHZhbHVlID0gaW5wdXQ7CiAgaWYgKHN0YXRlLnJlcGxhY2VyKSB7CiAgICB2YWx1ZSA9IHN0YXRlLnJlcGxhY2VyLmNhbGwoeyAiIjogdmFsdWUgfSwgIiIsIHZhbHVlKTsKICB9CiAgaWYgKHdyaXRlTm9kZShzdGF0ZSwgMCwgdmFsdWUsIHRydWUsIHRydWUpKSByZXR1cm4gc3RhdGUuZHVtcCArICJcbiI7CiAgcmV0dXJuICIiOwp9CnZhciBkdW1wXzEgPSBkdW1wJDE7CnZhciBkdW1wZXIgPSB7CiAgZHVtcDogZHVtcF8xCn07CmZ1bmN0aW9uIHJlbmFtZWQoZnJvbSwgdG8pIHsKICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoIkZ1bmN0aW9uIHlhbWwuIiArIGZyb20gKyAiIGlzIHJlbW92ZWQgaW4ganMteWFtbCA0LiBVc2UgeWFtbC4iICsgdG8gKyAiIGluc3RlYWQsIHdoaWNoIGlzIG5vdyBzYWZlIGJ5IGRlZmF1bHQuIik7CiAgfTsKfQp2YXIgbG9hZCA9IGxvYWRlci5sb2FkOwp2YXIgbG9hZEFsbCA9IGxvYWRlci5sb2FkQWxsOwp2YXIgZHVtcCA9IGR1bXBlci5kdW1wOwp2YXIgc2FmZUxvYWQgPSByZW5hbWVkKCJzYWZlTG9hZCIsICJsb2FkIik7CnZhciBzYWZlTG9hZEFsbCA9IHJlbmFtZWQoInNhZmVMb2FkQWxsIiwgImxvYWRBbGwiKTsKdmFyIHNhZmVEdW1wID0gcmVuYW1lZCgic2FmZUR1bXAiLCAiZHVtcCIpOwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgR0lUSUdOT1JFX1BBVEggPSAiLmdpdGlnbm9yZSI7CnZhciBjYXB0dXJlR2l0SWdub3JlQ29udGVudFJ1bGUgPSAoc3RhdGUpID0+IChob3N0KSA9PiB7CiAgY29uc3QgZ2l0SWdub3JlQnVmZmVyID0gaG9zdC5yZWFkKEdJVElHTk9SRV9QQVRIKTsKICBpZiAoIWdpdElnbm9yZUJ1ZmZlcikgewogICAgcmV0dXJuIGhvc3Q7CiAgfQogIHN0YXRlLmNvbnRlbnQgPSBnaXRJZ25vcmVCdWZmZXIudG9TdHJpbmcoInV0Zi04Iik7CiAgcmV0dXJuIGhvc3Q7Cn07CnZhciBtZXJnZUdpdElnbm9yZUNvbnRlbnRSdWxlID0gKHN0YXRlKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmIChzdGF0ZS5jb250ZW50ID09PSB2b2lkIDApIHsKICAgIHJldHVybiBob3N0OwogIH0KICBjb25zdCBnaXRJZ25vcmVCdWZmZXIgPSBob3N0LnJlYWQoR0lUSUdOT1JFX1BBVEgpOwogIGlmICghZ2l0SWdub3JlQnVmZmVyKSB7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgY29uc3QgdGVtcGxhdGVDb250ZW50ID0gZ2l0SWdub3JlQnVmZmVyLnRvU3RyaW5nKCJ1dGYtOCIpOwogIGNvbnN0IG1lcmdlZENvbnRlbnQgPSBtZXJnZUdpdElnbm9yZUNvbnRlbnQoewogICAgZXhpc3RpbmdDb250ZW50OiBzdGF0ZS5jb250ZW50LAogICAgdGVtcGxhdGVDb250ZW50CiAgfSk7CiAgaWYgKG1lcmdlZENvbnRlbnQgIT09IHRlbXBsYXRlQ29udGVudCkgewogICAgY29udGV4dC5sb2dnZXIuaW5mbygiTWVyZ2luZyB0ZW1wbGF0ZSAuZ2l0aWdub3JlIHdpdGggcHJvamVjdC1zcGVjaWZpYyBlbnRyaWVzIik7CiAgICBob3N0Lm92ZXJ3cml0ZShHSVRJR05PUkVfUEFUSCwgbWVyZ2VkQ29udGVudCk7CiAgfQogIHJldHVybiBob3N0Owp9Owp2YXIgbWFpbiA9IChvcHRpb25zKSA9PiB7CiAgY29uc3Qgc3RhdGUgPSB7fTsKICByZXR1cm4gKDAsIGltcG9ydF9zY2hlbWF0aWNzMTAuY2hhaW4pKFsKICAgIGNhcHR1cmVHaXRJZ25vcmVDb250ZW50UnVsZShzdGF0ZSksCiAgICB1cGRhdGVUc0NvbmZpZ1J1bGUsCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlQ29tbW9uU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMTEubWVyZ2VXaXRoKShnZW5lcmF0ZVByb2plY3RTcGVjaWZpY1NvdXJjZShvcHRpb25zKSwgaW1wb3J0X3NjaGVtYXRpY3M5Lk1lcmdlU3RyYXRlZ3kuT3ZlcndyaXRlKSwKICAgIG1lcmdlR2l0SWdub3JlQ29udGVudFJ1bGUoc3RhdGUpCiAgXSk7Cn07Ci8vIEFubm90YXRlIHRoZSBDb21tb25KUyBleHBvcnQgbmFtZXMgZm9yIEVTTSBpbXBvcnQgaW4gbm9kZToKMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7CiAgbWFpbgp9KTsKLyohIEJ1bmRsZWQgbGljZW5zZSBpbmZvcm1hdGlvbjoKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGl0ZXJhbHMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVjb3JkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi93cml0ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvbnVsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvY2xpLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3Npbmsvc2luay5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvbW92ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCmpzLXlhbWwvZGlzdC9qcy15YW1sLm1qczoKICAoKiEganMteWFtbCA0LjEuMCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWNhL2pzLXlhbWwgQGxpY2Vuc2UgTUlUICopCiovCg==",pis=async e=>{let t=Buffer.from(wAl,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var fis=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=fYr.ppath.join(e,"project");await TAl(r,{recursive:!0}),await pis(fYr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var B_e=Nt(ro(),1),kkt=Nt(ro(),1),Iis=async e=>{let t=process.cwd();await kkt.xfs.copyFilePromise(B_e.ppath.join(t,".pnp.cjs"),B_e.ppath.join(e,".pnp.cjs")),await kkt.xfs.symlinkPromise(B_e.ppath.join(t,"package.json"),B_e.ppath.join(e,"package.json")),await kkt.xfs.symlinkPromise(B_e.ppath.join(t,"runtime"),B_e.ppath.join(e,"runtime"))};var Cis=async e=>async r=>{try{let n=await mis.xfs.mktempPromise(),a=his.ppath.join(n,"collection.json");await fis(n),await Iis(n),await dis("project",e,a)}catch(n){console.error(n)}};var xkt=class extends _is.BaseCommand{static paths=[["generate","project"]];type=Su.String("-t,--type","project");async execute(){let t=await yis.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let n={type:this.type,cwd:process.cwd()},a=dji(this,t),o=await Cis(n);return(await bis.StreamReport.start(a,o)).exitCode()}};var Eis={commands:[xkt]};var SWl=Nt($ls()),vWl=Nt(sus()),BWl=Nt(pus()),wWl=Nt(Cus()),TWl=Nt(RGr()),RWl=Nt(Axt()),NWl=Nt(Sus()),DWl=Nt(Dus()),kWl=Nt(pgs()),xWl=Nt(ygs()),GWl=Nt(Ngs()),FWl=Nt(Hgs()),ZWl=Nt(rDe()),LWl=Nt(Kgs()),VWl=Nt(rAs()),PWl=Nt(cAs()),WWl=Nt(CAs()),OWl=Nt(Xds()),MWl=Nt(sJ()),HWl=Nt(_1s()),YWl=Nt($he()),QWl=Nt(z1s()),XWl=Nt(hGe()),JWl=Nt(n2s()),UWl=Nt(g2s()),A2s=()=>({modules:new Map([["@yarnpkg/cli",hWl],["@yarnpkg/core",mWl],["@yarnpkg/fslib",CWl],["@yarnpkg/libzip",_Wl],["@yarnpkg/parsers",yWl],["@yarnpkg/shell",bWl],["clipanion",rg],["semver",EWl],["typanion",mZ],["@atls/yarn-plugin-badges",opr],["@atls/yarn-plugin-changelog",Ufr],["@atls/yarn-plugin-check",Kfr],["@atls/yarn-plugin-checks",r1r],["@atls/yarn-plugin-cli-publish",i1r],["@atls/yarn-plugin-commit",TBr],["@atls/yarn-plugin-essentials",NBr],["@atls/yarn-plugin-export",nTr],["@atls/yarn-plugin-files",SEr],["@atls/yarn-plugin-format",kkr],["@atls/yarn-plugin-image",Jkr],["@atls/yarn-plugin-library",rxr],["@atls/yarn-plugin-lint",lxr],["@atls/yarn-plugin-release",HGr],["@atls/yarn-plugin-renderer",HFr],["@atls/yarn-plugin-service",mVr],["@atls/yarn-plugin-test",BVr],["@atls/yarn-plugin-tools",FVr],["@atls/yarn-plugin-typescript",WVr],["@atls/yarn-plugin-workspaces",FEr],["@atls/yarn-plugin-ui",nPr],["@atls/yarn-plugin-schematics",IYr],["@yarnpkg/plugin-interactive-tools",SWl],["@yarnpkg/plugin-jsr",vWl],["@yarnpkg/plugin-workspace-tools",BWl],["@yarnpkg/plugin-typescript",wWl],["@yarnpkg/plugin-version",TWl],["@yarnpkg/plugin-essentials",RWl],["@yarnpkg/plugin-catalog",NWl],["@yarnpkg/plugin-compat",DWl],["@yarnpkg/plugin-constraints",kWl],["@yarnpkg/plugin-dlx",xWl],["@yarnpkg/plugin-exec",GWl],["@yarnpkg/plugin-file",FWl],["@yarnpkg/plugin-git",ZWl],["@yarnpkg/plugin-github",LWl],["@yarnpkg/plugin-http",VWl],["@yarnpkg/plugin-init",PWl],["@yarnpkg/plugin-link",WWl],["@yarnpkg/plugin-nm",OWl],["@yarnpkg/plugin-npm",MWl],["@yarnpkg/plugin-npm-cli",HWl],["@yarnpkg/plugin-pack",YWl],["@yarnpkg/plugin-patch",QWl],["@yarnpkg/plugin-pnp",XWl],["@yarnpkg/plugin-pnpm",JWl],["@yarnpkg/plugin-stage",UWl]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"])});var d2s={name:"@atls/yarn-cli",version:"1.2.22-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist","build:dist":"mv bundles dist","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.14.1","@yarnpkg/core":"4.7.0","@yarnpkg/fslib":"3.1.5","@yarnpkg/libzip":"3.2.2","@yarnpkg/parsers":"3.0.3","@yarnpkg/plugin-catalog":"1.0.2","@yarnpkg/plugin-compat":"4.0.12","@yarnpkg/plugin-constraints":"4.0.5","@yarnpkg/plugin-dlx":"4.0.2","@yarnpkg/plugin-essentials":"4.5.0","@yarnpkg/plugin-exec":"3.1.0","@yarnpkg/plugin-file":"3.0.2","@yarnpkg/plugin-git":"3.2.0","@yarnpkg/plugin-github":"3.0.2","@yarnpkg/plugin-http":"3.0.3","@yarnpkg/plugin-init":"4.1.2","@yarnpkg/plugin-interactive-tools":"4.1.0","@yarnpkg/plugin-jsr":"1.1.1","@yarnpkg/plugin-link":"3.0.2","@yarnpkg/plugin-nm":"4.0.8","@yarnpkg/plugin-npm":"3.5.0","@yarnpkg/plugin-npm-cli":"4.4.1","@yarnpkg/plugin-pack":"4.0.4","@yarnpkg/plugin-patch":"4.0.3","@yarnpkg/plugin-pnp":"4.1.5","@yarnpkg/plugin-pnpm":"2.1.2","@yarnpkg/plugin-stage":"4.0.2","@yarnpkg/plugin-typescript":"4.1.3","@yarnpkg/plugin-version":"4.2.0","@yarnpkg/plugin-workspace-tools":"4.1.7","@yarnpkg/shell":"4.1.3",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-jsr","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-catalog","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage"]}},raijin:{pack:{exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"}}};var p2s=Qqr.npath.toPortablePath(Qqr.npath.resolve(process.argv[1])),Hqr=A2s(d2s["@yarnpkg/builder"].bundles.standard);Hqr.then?Hqr.then(async e=>{(0,Yqr.runExit)(process.argv.slice(2),{cwd:Xqr.ppath.cwd(),selfPath:p2s,pluginConfiguration:e})}):(0,Yqr.runExit)(process.argv.slice(2),{cwd:Xqr.ppath.cwd(),selfPath:p2s,pluginConfiguration:Hqr}); -/*! Bundled license information: - -is-number/index.js: - (*! - * is-number - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Released under the MIT License. - *) - -to-regex-range/index.js: - (*! - * to-regex-range - * - * Copyright (c) 2015-present, Jon Schlinkert. - * Released under the MIT License. - *) - -fill-range/index.js: - (*! - * fill-range - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Licensed under the MIT License. - *) - -is-extglob/index.js: - (*! - * is-extglob - * - * Copyright (c) 2014-2016, Jon Schlinkert. - * Licensed under the MIT License. - *) - -is-glob/index.js: - (*! - * is-glob - * - * Copyright (c) 2014-2017, Jon Schlinkert. - * Released under the MIT License. - *) - -queue-microtask/index.js: - (*! queue-microtask. MIT License. Feross Aboukhadijeh *) - -run-parallel/index.js: - (*! run-parallel. MIT License. Feross Aboukhadijeh *) - -react/cjs/react.production.min.js: - (** - * @license React - * react.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -lodash/lodash.js: - (** - * @license - * Lodash - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - *) - -scheduler/cjs/scheduler.production.min.js: - (** @license React v0.20.2 - * scheduler.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -object-assign/index.js: - (* - object-assign - (c) Sindre Sorhus - @license MIT - *) - -react-reconciler/cjs/react-reconciler.production.min.js: - (** @license React v0.26.2 - * react-reconciler.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -react/cjs/react-jsx-runtime.production.min.js: - (** - * @license React - * react-jsx-runtime.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -undici/lib/fetch/body.js: - (*! formdata-polyfill. MIT License. Jimmy Wärting *) - -undici/lib/websocket/frame.js: - (*! ws. MIT License. Einar Otto Stangvik *) - -undici/lib/web/fetch/body.js: - (*! formdata-polyfill. MIT License. Jimmy Wärting *) - -undici/lib/web/websocket/frame.js: - (*! ws. MIT License. Einar Otto Stangvik *) - -word-wrap/index.js: - (*! - * word-wrap - * - * Copyright (c) 2014-2023, Jon Schlinkert. - * Released under the MIT License. - *) - -safe-buffer/index.js: - (*! safe-buffer. MIT License. Feross Aboukhadijeh *) - -typescript/lib/typescript.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the Apache License, Version 2.0 (the "License"); you may not use - this file except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 - - THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED - WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, - MERCHANTABLITY OR NON-INFRINGEMENT. - - See the Apache Version 2.0 License for specific language governing permissions - and limitations under the License. - ***************************************************************************** *) - -git-url-parse/lib/index.js: - (*! - * buildToken - * Builds OAuth token prefix (helper function) - * - * @name buildToken - * @function - * @param {GitUrl} obj The parsed Git url object. - * @return {String} token prefix - *) - -@yarnpkg/plugin-git/lib/hosted-git-info-parse.js: - (** - @license - Copyright (c) 2015, Rebecca Turner - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted, provided that the above - copyright notice and this permission notice appear in all copies. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - *) - -react/cjs/react.production.min.js: - (** @license React v17.0.2 - * react.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -react-reconciler/cjs/react-reconciler.production.min.js: - (** @license React v0.26.2 - * react-reconciler.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -uniqolor/dist/uniqolor.js: - (** - * Generate unique and beautiful colors from any texts or numbers - * @version v1.1.1 - * @link https://github.com/dastoori/uniqolor#README - * @author Rasool Dastoori - * @license MIT License, http://www.opensource.org/licenses/MIT - *) - -@angular-devkit/core/src/json/utils.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/utility.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/transforms.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/interface.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/pointer.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/exception.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/literals.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/strings.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/object.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/template.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/partially-ordered-set.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/priority-queue.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/lang.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/utils/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/visitor.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/registry.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/schema.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/schema/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/json/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/logger/logger.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/logger/indent.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/logger/level.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/logger/null-logger.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/logger/transform-logger.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/logger/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/definitions.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/path.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/buffer.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/interface.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/memory.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/sync.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/test.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/resolver.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/alias.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/create.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/empty.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/pattern.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/record.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/safe.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/scoped.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/host/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/virtual-fs/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/host.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/json/metadata.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/json/utilities.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/json/reader.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/json/writer.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/core.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/workspace/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/src/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/formats/html-selector.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/formats/path.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/formats/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/interface.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/exception/exception.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/delegate.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/entry.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/recorder.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/scoped.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/host-tree.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/static.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/null.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/call.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/engine/schematic.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/engine/engine.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/engine/interface.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/engine/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/node/cli-logger.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/node/host.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/core/node/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/action.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/sink/sink.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/sink/host.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/sink/dryrun.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/workflow/base.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/workflow/interface.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/workflow/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/base.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/move.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/random.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/schematic.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/template.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/rules/url.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/tree/empty.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/src/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/description.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/export-ref.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/file-system-utility.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/file-system-engine-host-base.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/package-manager/options.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/repo-init/options.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/run-schematic/options.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/package-manager/executor.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/repo-init/executor.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/run-schematic/executor.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tasks/node/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/node-module-engine-host.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/schema-option-transform.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/workflow/node-workflow.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/file-system-engine-host.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/node-modules-test-engine-host.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@angular-devkit/schematics/tools/index.js: - (** - * @license - * Copyright Google LLC All Rights Reserved. - * - * Use of this source code is governed by an MIT-style license that can be - * found in the LICENSE file at https://angular.dev/license - *) - -@yarnpkg/pnp/lib/index.js: - (** - @license - Copyright Node.js contributors. All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. - *) - (** - @license - The MIT License (MIT) - - Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - *) - -is-windows/index.js: - (*! - * is-windows - * - * Copyright © 2015-2018, Jon Schlinkert. - * Released under the MIT License. - *) - -negotiator/index.js: - (*! - * negotiator - * Copyright(c) 2012 Federico Romero - * Copyright(c) 2012-2014 Isaac Z. Schlueter - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *) - -imurmurhash/imurmurhash.js: - (** - * @preserve - * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013) - * - * @author Jens Taylor - * @see http://github.com/homebrewing/brauhaus-diff - * @author Gary Court - * @see http://github.com/garycourt/murmurhash-js - * @author Austin Appleby - * @see http://sites.google.com/site/murmurhash/ - *) - -make-fetch-happen/lib/fetch.js: - (** - * @license - * Copyright (c) 2010-2012 Mikeal Rogers - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an "AS - * IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either - * express or implied. See the License for the specific language - * governing permissions and limitations under the License. - *) - -lint-staged/lib/normalizePath.js: - (*! - * normalize-path - * - * Copyright (c) 2014-2018, Jon Schlinkert. - * Released under the MIT License. - *) -*/ diff --git a/yarn/cli/package.json b/yarn/cli/package.json index aadc250cb..dcf427289 100644 --- a/yarn/cli/package.json +++ b/yarn/cli/package.json @@ -15,8 +15,8 @@ "scripts": { "build": "yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version", "build:bundle": "builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs", - "build:clean": "rm -rf dist", - "build:dist": "mv bundles dist", + "build:clean": "rm -rf dist/runtime", + "build:dist": "mkdir -p dist/runtime && mv bundles/yarn.mjs dist/runtime/yarn.mjs", "build:fix": "yarn node patches/cli.patch.mjs", "build:schemaic": "yarn workspace @atls/code-schematics prepack", "build:version": "yarn node patches/version-postfix-toggle.mjs", diff --git a/yarn/pack-utils/src/pack.utils.test.ts b/yarn/pack-utils/src/pack.utils.test.ts index d4dbff14f..6fc473e83 100644 --- a/yarn/pack-utils/src/pack.utils.test.ts +++ b/yarn/pack-utils/src/pack.utils.test.ts @@ -1,8 +1,18 @@ +import type { Project } from '@yarnpkg/core' +import type { Report } from '@yarnpkg/core' + import assert from 'node:assert/strict' +import { mkdir } from 'node:fs/promises' +import { writeFile } from 'node:fs/promises' import { arch } from 'node:os' import test from 'node:test' +import { npath } from '@yarnpkg/fslib' +import { ppath } from '@yarnpkg/fslib' +import { xfs } from '@yarnpkg/fslib' + import { IMAGE_PACK_NODE_LINKER } from './pack.utils.js' +import { copyYarnRelease } from './copy.utils.js' import { resolveSupportedArchitectures } from './pack.utils.js' test('should materialize image pack runtime with PnP linker', () => { @@ -41,3 +51,67 @@ test('should normalize Docker platform aliases before Yarn install', () => { ]) ) }) + +test('should copy yarn release without runtime cache side effects', async () => { + await xfs.mktempPromise(async (source) => { + await xfs.mktempPromise(async (destination) => { + const yarnPath = ppath.join(source, '.yarn/releases/yarn.mjs') + const yarnNativePath = npath.fromPortablePath(yarnPath) + + await mkdir(npath.dirname(yarnNativePath), { recursive: true }) + await writeFile(yarnNativePath, '#!/usr/bin/env node\n', { mode: 0o755 }) + + await copyYarnRelease( + { + cwd: source, + configuration: { + get: (name: string) => (name === 'yarnPath' ? yarnPath : undefined), + }, + } as unknown as Project, + destination, + { reportInfo: () => undefined } as unknown as Report + ) + + assert.equal( + await xfs.existsPromise(ppath.join(destination, '.yarn/releases/yarn.mjs')), + true + ) + }) + }) +}) + +test('should copy yarn release from native yarn path', async (context) => { + await xfs.mktempPromise(async (source) => { + await xfs.mktempPromise(async (destination) => { + const yarnPath = ppath.join(source, '.yarn/releases/yarn.mjs') + const yarnNativePath = npath.fromPortablePath(yarnPath) + + await mkdir(npath.dirname(yarnNativePath), { recursive: true }) + await writeFile(yarnNativePath, '#!/usr/bin/env node\n', { mode: 0o755 }) + + context.mock.method(npath, 'fromPortablePath', (path: string) => { + if (path === yarnPath) { + return yarnNativePath + } + + return path + }) + + await copyYarnRelease( + { + cwd: source, + configuration: { + get: (name: string) => (name === 'yarnPath' ? yarnPath : undefined), + }, + } as unknown as Project, + destination, + { reportInfo: () => undefined } as unknown as Report + ) + + assert.equal( + await xfs.existsPromise(ppath.join(destination, '.yarn/releases/yarn.mjs')), + true + ) + }) + }) +}) diff --git a/yarn/plugin-essentials/sources/commands/set-version.command.test.ts b/yarn/plugin-essentials/sources/commands/set-version.command.test.ts index bc214a854..51514f8cb 100644 --- a/yarn/plugin-essentials/sources/commands/set-version.command.test.ts +++ b/yarn/plugin-essentials/sources/commands/set-version.command.test.ts @@ -7,6 +7,10 @@ import { tmpdir } from 'node:os' import { join } from 'node:path' import { test } from 'node:test' +import { createSha256Digest } from './set-version.runtime.js' +import { getRaijinRuntimeYarnPath } from './set-version.runtime.js' +import { parseRaijinRuntimeManifest } from './set-version.runtime.js' +import { resolveYarnPath } from './set-version.runtime.js' import { findPackageCwd } from './set-version.utils.js' import { nativeToPortablePath } from './set-version.utils.js' import { portableToNativePath } from './set-version.utils.js' @@ -90,3 +94,89 @@ test('should convert between windows native and portable paths', () => { '/unc/server/share/backend/wallet' ) }) + +test('should parse Raijin runtime manifest', () => { + assert.deepEqual( + parseRaijinRuntimeManifest({ + schemaVersion: 1, + packageName: '@atls/yarn-cli', + version: '1.2.3', + tagName: '@atls/yarn-cli@1.2.3', + assetName: 'yarn.mjs', + assetUrl: + 'https://github.com/atls/raijin/releases/download/%40atls%2Fyarn-cli%401.2.3/yarn.mjs', + sha256: 'a'.repeat(64), + }), + { + schemaVersion: 1, + packageName: '@atls/yarn-cli', + version: '1.2.3', + tagName: '@atls/yarn-cli@1.2.3', + assetName: 'yarn.mjs', + assetUrl: + 'https://github.com/atls/raijin/releases/download/%40atls%2Fyarn-cli%401.2.3/yarn.mjs', + sha256: 'a'.repeat(64), + } + ) +}) + +test('should reject runtime manifest from another package', () => { + assert.throws( + () => + parseRaijinRuntimeManifest({ + schemaVersion: 1, + packageName: '@atls/yarn-plugin-release', + version: '1.2.3', + tagName: '@atls/yarn-plugin-release@1.2.3', + assetName: 'yarn.mjs', + assetUrl: 'https://github.com/atls/raijin/releases/download/plugin/yarn.mjs', + sha256: 'a'.repeat(64), + }), + /expected @atls\/yarn-cli/ + ) +}) + +test('should reject runtime manifest with invalid digest', () => { + assert.throws( + () => + parseRaijinRuntimeManifest({ + schemaVersion: 1, + packageName: '@atls/yarn-cli', + version: '1.2.3', + tagName: '@atls/yarn-cli@1.2.3', + assetName: 'yarn.mjs', + assetUrl: 'https://github.com/atls/raijin/releases/download/yarn/yarn.mjs', + sha256: 'not-a-digest', + }), + /invalid sha256/ + ) +}) + +test('should create runtime digest', () => { + assert.equal( + createSha256Digest(Buffer.from('runtime')), + 'd92c6a81b2ff50096bcda80885427d1f59a25b5f483f7055523504925d16ab23' + ) +}) + +test('should resolve Raijin runtime yarn path to mjs file', () => { + assert.equal( + getRaijinRuntimeYarnPath({ + schemaVersion: 1, + packageName: '@atls/yarn-cli', + version: '1.2.3', + tagName: '@atls/yarn-cli@1.2.3', + assetName: 'yarn.mjs', + assetUrl: 'https://github.com/atls/raijin/releases/download/yarn/yarn.mjs', + sha256: 'a'.repeat(64), + }), + '.yarn/releases/raijin-yarn-1.2.3.mjs' + ) +}) + +test('should resolve relative yarn path from package cwd', () => { + assert.equal( + resolveYarnPath('/repo/backend/wallet', '.yarn/releases/yarn.mjs'), + '/repo/backend/wallet/.yarn/releases/yarn.mjs' + ) +}) diff --git a/yarn/plugin-essentials/sources/commands/set-version.command.ts b/yarn/plugin-essentials/sources/commands/set-version.command.ts index 60f9d1d43..b34f5fd93 100644 --- a/yarn/plugin-essentials/sources/commands/set-version.command.ts +++ b/yarn/plugin-essentials/sources/commands/set-version.command.ts @@ -2,6 +2,9 @@ import { BaseCommand } from '@yarnpkg/cli' import { Configuration } from '@yarnpkg/core' import { Command } from 'clipanion' +import { assertInstalledRaijinRuntime } from './set-version.runtime.js' +import { fetchRaijinRuntimeManifest } from './set-version.runtime.js' +import { installRaijinRuntime } from './set-version.runtime.js' import { findPackageCwd } from './set-version.utils.js' import { portableToNativePath } from './set-version.utils.js' import { preparePackageProjectBoundary } from './set-version.utils.js' @@ -25,29 +28,39 @@ export class SetVersionCommand extends BaseCommand { try { process.chdir(portableToNativePath(cwd)) - const args = ['set', 'version'] - args.push('https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs') - const exitCode = await this.cli.run(args, { cwd: cwd as typeof this.context.cwd }) + const configuration = await Configuration.find( + cwd as typeof this.context.cwd, + this.context.plugins + ) + const runtimeManifest = await fetchRaijinRuntimeManifest(configuration) + await installRaijinRuntime(configuration, cwd, runtimeManifest) + + const updatedConfiguration = await Configuration.find( + cwd as typeof this.context.cwd, + this.context.plugins + ) + + await assertInstalledRaijinRuntime(updatedConfiguration, cwd, runtimeManifest) const bumpArgs = ['up', '@atls/code-runtime'] const bumpExitCode = await this.cli.run(bumpArgs, { cwd: cwd as typeof this.context.cwd }) - const configuration = await Configuration.find( + const finalConfiguration = await Configuration.find( cwd as typeof this.context.cwd, this.context.plugins ) - await configuration.triggerHook( + await finalConfiguration.triggerHook( // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-explicit-any (hooks) => (hooks as any).afterYarnVersionSet, - configuration, + finalConfiguration, { ...this.context, cwd: cwd as typeof this.context.cwd, } ) - return exitCode || bumpExitCode + return bumpExitCode } finally { process.chdir(previousCwd) } diff --git a/yarn/plugin-essentials/sources/commands/set-version.runtime.ts b/yarn/plugin-essentials/sources/commands/set-version.runtime.ts new file mode 100644 index 000000000..3ac5edd86 --- /dev/null +++ b/yarn/plugin-essentials/sources/commands/set-version.runtime.ts @@ -0,0 +1,185 @@ +import type { Configuration } from '@yarnpkg/core' + +import { createHash } from 'node:crypto' +import { mkdir } from 'node:fs/promises' +import { readFile } from 'node:fs/promises' +import { writeFile } from 'node:fs/promises' +import { dirname } from 'node:path' +import { isAbsolute } from 'node:path' +import { join } from 'node:path' + +import { Configuration as YarnConfiguration } from '@yarnpkg/core' +import { httpUtils } from '@yarnpkg/core' + +import { portableToNativePath } from './set-version.utils.js' + +const RAIJIN_RUNTIME_MANIFEST_URL = + 'https://raw.githubusercontent.com/atls/raijin/master/.yarn/releases/raijin-runtime.json' +const RAIJIN_RUNTIME_PACKAGE_NAME = '@atls/yarn-cli' +const RAIJIN_RUNTIME_ASSET_NAME = 'yarn.mjs' +const RAIJIN_RUNTIME_MANIFEST_SCHEMA_VERSION = 1 +const SHA256_PATTERN = /^[a-f0-9]{64}$/ + +type ConfigurationUpdate = Parameters[1] +type ConfigurationUpdateCwd = Parameters[0] + +export interface RaijinRuntimeManifest { + assetName: string + assetUrl: string + packageName: string + schemaVersion: number + sha256: string + tagName: string + version: string +} + +const isRecord = (value: unknown): value is Record => + typeof value === 'object' && value !== null + +const assertManifestString = ( + manifest: Record, + key: keyof RaijinRuntimeManifest +): string => { + const value = manifest[key] + + if (typeof value !== 'string' || value.length === 0) { + throw new Error(`Invalid Raijin runtime manifest: missing ${key}`) + } + + return value +} + +export const parseRaijinRuntimeManifest = (value: unknown): RaijinRuntimeManifest => { + if (!isRecord(value)) { + throw new Error('Invalid Raijin runtime manifest: expected object') + } + + if (value.schemaVersion !== RAIJIN_RUNTIME_MANIFEST_SCHEMA_VERSION) { + throw new Error('Invalid Raijin runtime manifest: unsupported schemaVersion') + } + + const packageName = assertManifestString(value, 'packageName') + const assetName = assertManifestString(value, 'assetName') + const sha256 = assertManifestString(value, 'sha256') + + if (packageName !== RAIJIN_RUNTIME_PACKAGE_NAME) { + throw new Error(`Invalid Raijin runtime manifest: expected ${RAIJIN_RUNTIME_PACKAGE_NAME}`) + } + + if (assetName !== RAIJIN_RUNTIME_ASSET_NAME) { + throw new Error(`Invalid Raijin runtime manifest: expected ${RAIJIN_RUNTIME_ASSET_NAME}`) + } + + if (!SHA256_PATTERN.test(sha256)) { + throw new Error('Invalid Raijin runtime manifest: invalid sha256') + } + + return { + assetName, + assetUrl: assertManifestString(value, 'assetUrl'), + packageName, + schemaVersion: RAIJIN_RUNTIME_MANIFEST_SCHEMA_VERSION, + sha256, + tagName: assertManifestString(value, 'tagName'), + version: assertManifestString(value, 'version'), + } +} + +export const fetchRaijinRuntimeManifest = async ( + configuration: Configuration +): Promise => + parseRaijinRuntimeManifest( + await httpUtils.get(RAIJIN_RUNTIME_MANIFEST_URL, { + configuration, + headers: { + accept: 'application/json', + 'user-agent': 'raijin-yarn-plugin-essentials', + }, + jsonResponse: true, + }) + ) + +export const createSha256Digest = (data: Buffer): string => + createHash('sha256').update(data).digest('hex') + +export const getRaijinRuntimeYarnPath = (manifest: RaijinRuntimeManifest): string => + `.yarn/releases/raijin-yarn-${manifest.version}.mjs` + +const downloadRaijinRuntime = async ( + configuration: Configuration, + manifest: RaijinRuntimeManifest +): Promise => { + const response = await httpUtils.get(manifest.assetUrl, { + configuration, + headers: { + accept: 'application/octet-stream', + 'user-agent': 'raijin-yarn-plugin-essentials', + }, + jsonResponse: false, + }) + + if (Buffer.isBuffer(response)) { + return response + } + + if (typeof response === 'string') { + return Buffer.from(response) + } + + throw new Error('Invalid Raijin runtime asset response') +} + +export const installRaijinRuntime = async ( + configuration: Configuration, + cwd: string, + manifest: RaijinRuntimeManifest +): Promise => { + const runtime = await downloadRaijinRuntime(configuration, manifest) + const digest = createSha256Digest(runtime) + + if (digest !== manifest.sha256) { + throw new Error( + `Downloaded Raijin runtime digest mismatch: expected ${manifest.sha256}, got ${digest}` + ) + } + + const yarnPath = getRaijinRuntimeYarnPath(manifest) + const runtimePath = join(portableToNativePath(cwd), portableToNativePath(yarnPath)) + + await mkdir(dirname(runtimePath), { recursive: true }) + await writeFile(runtimePath, runtime) + await YarnConfiguration.updateConfiguration( + cwd as ConfigurationUpdateCwd, + { + yarnPath, + } as ConfigurationUpdate + ) +} + +export const resolveYarnPath = (cwd: string, yarnPath: string | null): string => { + if (!yarnPath) { + throw new Error('`yarnPath` is not set after Raijin runtime update') + } + + const nativeYarnPath = portableToNativePath(yarnPath) + + return isAbsolute(nativeYarnPath) + ? nativeYarnPath + : join(portableToNativePath(cwd), nativeYarnPath) +} + +export const assertInstalledRaijinRuntime = async ( + configuration: Configuration, + cwd: string, + manifest: RaijinRuntimeManifest +): Promise => { + const yarnPath = configuration.get('yarnPath') as string | null + const runtimePath = resolveYarnPath(cwd, yarnPath) + const digest = createSha256Digest(await readFile(runtimePath)) + + if (digest !== manifest.sha256) { + throw new Error( + `Installed Raijin runtime digest mismatch: expected ${manifest.sha256}, got ${digest}` + ) + } +} diff --git a/yarn/plugin-release/sources/release-create.command.ts b/yarn/plugin-release/sources/release-create.command.ts index f7e01cf9c..db7e53f3e 100644 --- a/yarn/plugin-release/sources/release-create.command.ts +++ b/yarn/plugin-release/sources/release-create.command.ts @@ -1,5 +1,13 @@ +import type { PortablePath } from '@yarnpkg/fslib' + import assert from 'node:assert/strict' +import { Buffer } from 'node:buffer' import { execSync } from 'node:child_process' +import { createHash } from 'node:crypto' +import { mkdir } from 'node:fs/promises' +import { readFile } from 'node:fs/promises' +import { writeFile } from 'node:fs/promises' +import { dirname } from 'node:path' import { BaseCommand } from '@yarnpkg/cli' import { WorkspaceRequiredError } from '@yarnpkg/cli' @@ -7,6 +15,9 @@ import { Configuration } from '@yarnpkg/core' import { Project } from '@yarnpkg/core' import { StreamReport } from '@yarnpkg/core' import { execUtils } from '@yarnpkg/core' +import { npath } from '@yarnpkg/fslib' +import { ppath } from '@yarnpkg/fslib' +import { xfs } from '@yarnpkg/fslib' import { Release } from '@atls/code-github' @@ -16,6 +27,11 @@ const RELEASE_ALREADY_EXISTS_STATUS = 422 const RELEASE_ALREADY_EXISTS_RESOURCE = '"resource":"Release"' const RELEASE_ALREADY_EXISTS_CODE = '"code":"already_exists"' const RELEASE_ALREADY_EXISTS_FIELD = '"field":"tag_name"' +const YARN_CLI_PACKAGE_NAME = '@atls/yarn-cli' +const YARN_RUNTIME_ASSET_NAME = 'yarn.mjs' +const YARN_RUNTIME_ASSET_CONTENT_TYPE = 'text/javascript' +const YARN_RUNTIME_MANIFEST_PATH = '.yarn/releases/raijin-runtime.json' +const YARN_RUNTIME_MANIFEST_SCHEMA_VERSION = 1 interface GitHubReleaseError { status?: number @@ -41,6 +57,35 @@ interface GitHubReleaseNotesOptions { target_commitish: string } +interface GitHubRelease { + id: number + assets: Array<{ + browser_download_url: string + name: string + }> +} + +interface GitHubReleaseAssetOptions { + content_type: string + name: string + path: string +} + +interface GitHubReleaseAsset { + browser_download_url: string + name: string +} + +interface YarnRuntimeManifest { + assetName: string + assetUrl: string + packageName: string + schemaVersion: number + sha256: string + tagName: string + version: string +} + interface SemVer { major: number minor: number @@ -107,6 +152,133 @@ export const createGitHubReleaseNotesOptions = ( return options } +export const createYarnRuntimeReleaseAssetOptions = ( + packageName: string, + projectCwd: PortablePath +): GitHubReleaseAssetOptions | undefined => { + if (packageName !== YARN_CLI_PACKAGE_NAME) { + return undefined + } + + return { + content_type: YARN_RUNTIME_ASSET_CONTENT_TYPE, + name: YARN_RUNTIME_ASSET_NAME, + path: npath.fromPortablePath( + ppath.join(projectCwd, 'yarn/cli/dist/runtime/yarn.mjs' as PortablePath) + ), + } +} + +export const createYarnRuntimeReleaseAssetDigest = (data: Buffer): string => + createHash('sha256').update(data).digest('hex') + +export const createYarnRuntimeManifestPath = (projectCwd: PortablePath): string => + npath.fromPortablePath(ppath.join(projectCwd, YARN_RUNTIME_MANIFEST_PATH as PortablePath)) + +export const createYarnRuntimeManifest = ( + packageName: string, + version: string, + asset: GitHubReleaseAsset, + data: Buffer +): YarnRuntimeManifest => ({ + assetName: asset.name, + assetUrl: asset.browser_download_url, + packageName, + schemaVersion: YARN_RUNTIME_MANIFEST_SCHEMA_VERSION, + sha256: createYarnRuntimeReleaseAssetDigest(data), + tagName: createGitHubReleaseTagName(packageName, version), + version, +}) + +export const fetchYarnRuntimeReleaseAssetData = async ( + asset: GitHubReleaseAsset +): Promise => { + const response = await fetch(asset.browser_download_url, { + headers: { + 'user-agent': 'raijin-yarn-plugin-release', + }, + }) + + if (!response.ok) { + throw new Error( + `Failed to verify existing release asset ${asset.name}: HTTP ${response.status}` + ) + } + + return Buffer.from(await response.arrayBuffer()) +} + +export const assertYarnRuntimeReleaseAssetMatches = async ( + asset: GitHubReleaseAsset, + expectedData: Buffer +): Promise => { + const actualDigest = createYarnRuntimeReleaseAssetDigest( + await fetchYarnRuntimeReleaseAssetData(asset) + ) + const expectedDigest = createYarnRuntimeReleaseAssetDigest(expectedData) + + if (actualDigest !== expectedDigest) { + throw new Error( + `Existing release asset ${asset.name} digest mismatch: expected ${expectedDigest}, got ${actualDigest}` + ) + } +} + +const writeYarnRuntimeManifest = async ( + project: Project, + manifest: YarnRuntimeManifest +): Promise => { + const manifestPath = createYarnRuntimeManifestPath(project.cwd) + + await mkdir(dirname(manifestPath), { recursive: true }) + await writeFile(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`) +} + +const ensureYarnRuntimeReleaseAsset = async ( + release: Release, + githubRelease: GitHubRelease, + packageName: string, + version: string, + project: Project, + owner: string, + repo: string, + report: StreamReport +): Promise => { + const assetOptions = createYarnRuntimeReleaseAssetOptions(packageName, project.cwd) + + if (!assetOptions) { + return + } + + if (!(await xfs.existsPromise(npath.toPortablePath(assetOptions.path)))) { + throw new Error(`Missing Raijin runtime asset source: ${assetOptions.path}`) + } + + const data = await readFile(assetOptions.path) + const existingAsset = githubRelease.assets.find((asset) => asset.name === assetOptions.name) + let asset: GitHubReleaseAsset + + if (existingAsset) { + await assertYarnRuntimeReleaseAssetMatches(existingAsset, data) + report.reportInfo(null, `Release asset ${assetOptions.name} already exists; verified`) + asset = existingAsset + } else { + asset = await release.uploadAsset({ + owner, + repo, + release_id: githubRelease.id, + data: data.toString('utf-8'), + size: data.byteLength, + ...assetOptions, + }) + } + + await writeYarnRuntimeManifest( + project, + createYarnRuntimeManifest(packageName, version, asset, data) + ) +} + const isNumericSemverIdentifier = (identifier: string): boolean => identifier.length > 0 && [...identifier].every((char) => char >= '0' && char <= '9') @@ -323,9 +495,37 @@ export class ReleaseCreateCommand extends BaseCommand { targetCommitish ) - await release.create(releaseOptions) + const githubRelease = await release.create(releaseOptions) + + await ensureYarnRuntimeReleaseAsset( + release, + githubRelease, + packageName, + version, + project, + owner, + repo, + report + ) } catch (error) { if (isReleaseAlreadyExistsError(error)) { + const tagName = createGitHubReleaseTagName(packageName, version) + const githubRelease = await release.getByTag({ + owner, + repo, + tag_name: tagName, + }) + + await ensureYarnRuntimeReleaseAsset( + release, + githubRelease, + packageName, + version, + project, + owner, + repo, + report + ) report.reportInfo(null, `Release ${packageName}@${version} already exists; skipping`) return diff --git a/yarn/plugin-release/sources/tests/release-create.command.test.ts b/yarn/plugin-release/sources/tests/release-create.command.test.ts index 6ab36d51a..4e8f8964e 100644 --- a/yarn/plugin-release/sources/tests/release-create.command.test.ts +++ b/yarn/plugin-release/sources/tests/release-create.command.test.ts @@ -1,11 +1,18 @@ -import assert from 'node:assert/strict' -import { test } from 'node:test' +import type { PortablePath } from '@yarnpkg/fslib' -import { createGitHubReleaseNotesOptions } from '../release-create.command.js' -import { createGitHubReleaseOptions } from '../release-create.command.js' -import { isReleaseAlreadyExistsError } from '../release-create.command.js' -import { parseGitHubReleaseTagVersion } from '../release-create.command.js' -import { selectPreviousGitHubReleaseTagName } from '../release-create.command.js' +import assert from 'node:assert/strict' +import { Buffer } from 'node:buffer' +import { test } from 'node:test' + +import { assertYarnRuntimeReleaseAssetMatches } from '../release-create.command.js' +import { createGitHubReleaseNotesOptions } from '../release-create.command.js' +import { createGitHubReleaseOptions } from '../release-create.command.js' +import { createYarnRuntimeManifest } from '../release-create.command.js' +import { createYarnRuntimeManifestPath } from '../release-create.command.js' +import { createYarnRuntimeReleaseAssetOptions } from '../release-create.command.js' +import { isReleaseAlreadyExistsError } from '../release-create.command.js' +import { parseGitHubReleaseTagVersion } from '../release-create.command.js' +import { selectPreviousGitHubReleaseTagName } from '../release-create.command.js' test('should create releases with GitHub generated release notes', () => { assert.deepEqual( @@ -43,6 +50,88 @@ test('should create release note options with package-specific previous tags', ( ) }) +test('should create yarn runtime release asset options only for yarn cli release', () => { + const projectCwd = '/repo' as PortablePath + + assert.deepEqual(createYarnRuntimeReleaseAssetOptions('@atls/code-github', projectCwd), undefined) + assert.deepEqual(createYarnRuntimeReleaseAssetOptions('@atls/yarn-cli', projectCwd), { + content_type: 'text/javascript', + name: 'yarn.mjs', + path: '/repo/yarn/cli/dist/runtime/yarn.mjs', + }) +}) + +test('should create yarn runtime manifest path', () => { + assert.equal( + createYarnRuntimeManifestPath('/repo' as PortablePath), + '/repo/.yarn/releases/raijin-runtime.json' + ) +}) + +test('should create yarn runtime manifest from verified release asset', () => { + assert.deepEqual( + createYarnRuntimeManifest( + '@atls/yarn-cli', + '1.2.3', + { + browser_download_url: + 'https://github.com/atls/raijin/releases/download/%40atls%2Fyarn-cli%401.2.3/yarn.mjs', + name: 'yarn.mjs', + }, + Buffer.from('runtime') + ), + { + assetName: 'yarn.mjs', + assetUrl: + 'https://github.com/atls/raijin/releases/download/%40atls%2Fyarn-cli%401.2.3/yarn.mjs', + packageName: '@atls/yarn-cli', + schemaVersion: 1, + sha256: 'd92c6a81b2ff50096bcda80885427d1f59a25b5f483f7055523504925d16ab23', + tagName: '@atls/yarn-cli@1.2.3', + version: '1.2.3', + } + ) +}) + +test('should accept existing yarn runtime release assets with matching content', async () => { + const originalFetch = globalThis.fetch + + globalThis.fetch = (async () => new Response('runtime')) as typeof fetch + + try { + await assertYarnRuntimeReleaseAssetMatches( + { + browser_download_url: 'https://github.com/atls/raijin/releases/download/yarn/yarn.mjs', + name: 'yarn.mjs', + }, + Buffer.from('runtime') + ) + } finally { + globalThis.fetch = originalFetch + } +}) + +test('should reject existing yarn runtime release assets with mismatching content', async () => { + const originalFetch = globalThis.fetch + + globalThis.fetch = (async () => new Response('stale-runtime')) as typeof fetch + + try { + await assert.rejects( + assertYarnRuntimeReleaseAssetMatches( + { + browser_download_url: 'https://github.com/atls/raijin/releases/download/yarn/yarn.mjs', + name: 'yarn.mjs', + }, + Buffer.from('runtime') + ), + /Existing release asset yarn\.mjs digest mismatch/ + ) + } finally { + globalThis.fetch = originalFetch + } +}) + test('should omit previous release tag from first package release notes', () => { assert.deepEqual( createGitHubReleaseNotesOptions('@atls/yarn-cli', '1.2.3', 'atls', 'raijin', 'main'),